diff --git a/Gopkg.lock b/Gopkg.lock index 73593a6de..4b8344a65 100644 --- a/Gopkg.lock +++ b/Gopkg.lock @@ -215,7 +215,7 @@ branch = "master" name = "google.golang.org/api" packages = ["gensupport","googleapi","googleapi/internal/uritemplates","storage/v1"] - revision = "65b0d8655182691ad23b4fac11e6f7b897d9b634" + revision = "dbbc13f71100fa6ece308335445fca6bb0dd5c2f" [[projects]] name = "google.golang.org/appengine" diff --git a/vendor/google.golang.org/api/abusiveexperiencereport/v1/abusiveexperiencereport-api.json b/vendor/google.golang.org/api/abusiveexperiencereport/v1/abusiveexperiencereport-api.json index 3dee47f8e..1a857a34f 100644 --- a/vendor/google.golang.org/api/abusiveexperiencereport/v1/abusiveexperiencereport-api.json +++ b/vendor/google.golang.org/api/abusiveexperiencereport/v1/abusiveexperiencereport-api.json @@ -1,242 +1,4 @@ { - "ownerDomain": "google.com", - "name": "abusiveexperiencereport", - "batchPath": "batch", - "fullyEncodeReservedExpansion": true, - "title": "Google Abusive Experience Report API", - "ownerName": "Google", - "resources": { - "sites": { - "methods": { - "get": { - "httpMethod": "GET", - "parameterOrder": [ - "name" - ], - "response": { - "$ref": "SiteSummaryResponse" - }, - "parameters": { - "name": { - "required": true, - "type": "string", - "pattern": "^sites/[^/]+$", - "location": "path", - "description": "The required site name. This is the site property whose abusive\nexperiences have been reviewed, and it must be URL-encoded. For example,\nsites/https%3A%2F%2Fwww.google.com. The server will return an error of\nBAD_REQUEST if this field is not filled in. Note that if the site property\nis not yet verified in Search Console, the reportUrl field\nreturned by the API will lead to the verification page, prompting the user\nto go through that process before they can gain access to the Abusive\nExperience Report." - } - }, - "scopes": [ - "https://www.googleapis.com/auth/xapi.zoo" - ], - "flatPath": "v1/sites/{sitesId}", - "id": "abusiveexperiencereport.sites.get", - "path": "v1/{+name}", - "description": "Gets a summary of the abusive experience rating of a site." - } - } - }, - "violatingSites": { - "methods": { - "list": { - "response": { - "$ref": "ViolatingSitesResponse" - }, - "parameterOrder": [], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/xapi.zoo" - ], - "parameters": {}, - "flatPath": "v1/violatingSites", - "path": "v1/violatingSites", - "id": "abusiveexperiencereport.violatingSites.list", - "description": "Lists sites with Abusive Experience Report statuses of \"Failing\"." - } - } - } - }, - "parameters": { - "upload_protocol": { - "location": "query", - "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", - "type": "string" - }, - "prettyPrint": { - "description": "Returns response with indentations and line breaks.", - "type": "boolean", - "default": "true", - "location": "query" - }, - "uploadType": { - "type": "string", - "location": "query", - "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\")." - }, - "fields": { - "location": "query", - "description": "Selector specifying which fields to include in a partial response.", - "type": "string" - }, - "callback": { - "location": "query", - "description": "JSONP", - "type": "string" - }, - "$.xgafv": { - "enumDescriptions": [ - "v1 error format", - "v2 error format" - ], - "location": "query", - "enum": [ - "1", - "2" - ], - "description": "V1 error format.", - "type": "string" - }, - "alt": { - "enum": [ - "json", - "media", - "proto" - ], - "type": "string", - "enumDescriptions": [ - "Responses with Content-Type of application/json", - "Media download with context-dependent Content-Type", - "Responses with Content-Type of application/x-protobuf" - ], - "location": "query", - "description": "Data format for response.", - "default": "json" - }, - "key": { - "location": "query", - "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.", - "type": "string" - }, - "access_token": { - "description": "OAuth access token.", - "type": "string", - "location": "query" - }, - "quotaUser": { - "location": "query", - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", - "type": "string" - }, - "pp": { - "location": "query", - "description": "Pretty-print response.", - "type": "boolean", - "default": "true" - }, - "bearer_token": { - "location": "query", - "description": "OAuth bearer token.", - "type": "string" - }, - "oauth_token": { - "description": "OAuth 2.0 token for the current user.", - "type": "string", - "location": "query" - } - }, - "version": "v1", - "baseUrl": "https://abusiveexperiencereport.googleapis.com/", - "kind": "discovery#restDescription", - "description": "View Abusive Experience Report data, and get a list of sites that have a significant number of abusive experiences.", - "servicePath": "", - "basePath": "", - "revision": "20171129", - "documentationLink": "https://developers.google.com/abusive-experience-report/", - "id": "abusiveexperiencereport:v1", - "discoveryVersion": "v1", - "version_module": true, - "schemas": { - "ViolatingSitesResponse": { - "properties": { - "violatingSites": { - "description": "A list of summaries of violating sites.", - "type": "array", - "items": { - "$ref": "SiteSummaryResponse" - } - } - }, - "id": "ViolatingSitesResponse", - "description": "Response message for ListViolatingSites.", - "type": "object" - }, - "SiteSummaryResponse": { - "type": "object", - "properties": { - "abusiveStatus": { - "enumDescriptions": [ - "Not reviewed.", - "Passing.", - "Failing." - ], - "enum": [ - "UNKNOWN", - "PASSING", - "FAILING" - ], - "description": "The status of the site reviewed for the abusive experiences.", - "type": "string" - }, - "enforcementTime": { - "description": "The date on which enforcement begins.", - "format": "google-datetime", - "type": "string" - }, - "filterStatus": { - "description": "The abusive experience enforcement status of the site.", - "type": "string", - "enumDescriptions": [ - "N/A.", - "Ad filtering is on.", - "Ad filtering is off.", - "Ad filtering is paused.", - "Ad filtering is pending." - ], - "enum": [ - "UNKNOWN", - "ON", - "OFF", - "PAUSED", - "PENDING" - ] - }, - "underReview": { - "description": "Whether the site is currently under review.", - "type": "boolean" - }, - "reportUrl": { - "description": "A link that leads to a full abusive experience report.", - "type": "string" - }, - "reviewedSite": { - "type": "string", - "description": "The name of the site reviewed." - }, - "lastChangeTime": { - "description": "The last time that the site changed status.", - "format": "google-datetime", - "type": "string" - } - }, - "id": "SiteSummaryResponse", - "description": "Response message for GetSiteSummary." - } - }, - "protocol": "rest", - "icons": { - "x16": "http://www.google.com/images/icons/product/search-16.gif", - "x32": "http://www.google.com/images/icons/product/search-32.gif" - }, - "canonicalName": "Abusive Experience Report", "auth": { "oauth2": { "scopes": { @@ -246,5 +8,243 @@ } } }, - "rootUrl": "https://abusiveexperiencereport.googleapis.com/" -} + "basePath": "", + "baseUrl": "https://abusiveexperiencereport.googleapis.com/", + "batchPath": "batch", + "canonicalName": "Abusive Experience Report", + "description": "View Abusive Experience Report data, and get a list of sites that have a significant number of abusive experiences.", + "discoveryVersion": "v1", + "documentationLink": "https://developers.google.com/abusive-experience-report/", + "fullyEncodeReservedExpansion": true, + "icons": { + "x16": "http://www.google.com/images/icons/product/search-16.gif", + "x32": "http://www.google.com/images/icons/product/search-32.gif" + }, + "id": "abusiveexperiencereport:v1", + "kind": "discovery#restDescription", + "name": "abusiveexperiencereport", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "$.xgafv": { + "description": "V1 error format.", + "enum": [ + "1", + "2" + ], + "enumDescriptions": [ + "v1 error format", + "v2 error format" + ], + "location": "query", + "type": "string" + }, + "access_token": { + "description": "OAuth access token.", + "location": "query", + "type": "string" + }, + "alt": { + "default": "json", + "description": "Data format for response.", + "enum": [ + "json", + "media", + "proto" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json", + "Media download with context-dependent Content-Type", + "Responses with Content-Type of application/x-protobuf" + ], + "location": "query", + "type": "string" + }, + "bearer_token": { + "description": "OAuth bearer token.", + "location": "query", + "type": "string" + }, + "callback": { + "description": "JSONP", + "location": "query", + "type": "string" + }, + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "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.", + "location": "query", + "type": "string" + }, + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "pp": { + "default": "true", + "description": "Pretty-print response.", + "location": "query", + "type": "boolean" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", + "location": "query", + "type": "string" + }, + "uploadType": { + "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", + "location": "query", + "type": "string" + }, + "upload_protocol": { + "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", + "location": "query", + "type": "string" + } + }, + "protocol": "rest", + "resources": { + "sites": { + "methods": { + "get": { + "description": "Gets a summary of the abusive experience rating of a site.", + "flatPath": "v1/sites/{sitesId}", + "httpMethod": "GET", + "id": "abusiveexperiencereport.sites.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The required site name. This is the site property whose abusive\nexperiences have been reviewed, and it must be URL-encoded. For example,\nsites/https%3A%2F%2Fwww.google.com. The server will return an error of\nBAD_REQUEST if this field is not filled in. Note that if the site property\nis not yet verified in Search Console, the reportUrl field\nreturned by the API will lead to the verification page, prompting the user\nto go through that process before they can gain access to the Abusive\nExperience Report.", + "location": "path", + "pattern": "^sites/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "SiteSummaryResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/xapi.zoo" + ] + } + } + }, + "violatingSites": { + "methods": { + "list": { + "description": "Lists sites with Abusive Experience Report statuses of \"Failing\".", + "flatPath": "v1/violatingSites", + "httpMethod": "GET", + "id": "abusiveexperiencereport.violatingSites.list", + "parameterOrder": [], + "parameters": {}, + "path": "v1/violatingSites", + "response": { + "$ref": "ViolatingSitesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/xapi.zoo" + ] + } + } + } + }, + "revision": "20180129", + "rootUrl": "https://abusiveexperiencereport.googleapis.com/", + "schemas": { + "SiteSummaryResponse": { + "description": "Response message for GetSiteSummary.", + "id": "SiteSummaryResponse", + "properties": { + "abusiveStatus": { + "description": "The status of the site reviewed for the abusive experiences.", + "enum": [ + "UNKNOWN", + "PASSING", + "FAILING" + ], + "enumDescriptions": [ + "Not reviewed.", + "Passing.", + "Failing." + ], + "type": "string" + }, + "enforcementTime": { + "description": "The date on which enforcement begins.", + "format": "google-datetime", + "type": "string" + }, + "filterStatus": { + "description": "The abusive experience enforcement status of the site.", + "enum": [ + "UNKNOWN", + "ON", + "OFF", + "PAUSED", + "PENDING" + ], + "enumDescriptions": [ + "N/A.", + "Ad filtering is on.", + "Ad filtering is off.", + "Ad filtering is paused.", + "Ad filtering is pending." + ], + "type": "string" + }, + "lastChangeTime": { + "description": "The last time that the site changed status.", + "format": "google-datetime", + "type": "string" + }, + "reportUrl": { + "description": "A link that leads to a full abusive experience report.", + "type": "string" + }, + "reviewedSite": { + "description": "The name of the site reviewed.", + "type": "string" + }, + "underReview": { + "description": "Whether the site is currently under review.", + "type": "boolean" + } + }, + "type": "object" + }, + "ViolatingSitesResponse": { + "description": "Response message for ListViolatingSites.", + "id": "ViolatingSitesResponse", + "properties": { + "violatingSites": { + "description": "A list of summaries of violating sites.", + "items": { + "$ref": "SiteSummaryResponse" + }, + "type": "array" + } + }, + "type": "object" + } + }, + "servicePath": "", + "title": "Google Abusive Experience Report API", + "version": "v1", + "version_module": true +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/acceleratedmobilepageurl/v1/acceleratedmobilepageurl-api.json b/vendor/google.golang.org/api/acceleratedmobilepageurl/v1/acceleratedmobilepageurl-api.json index 465279810..b0b23f040 100644 --- a/vendor/google.golang.org/api/acceleratedmobilepageurl/v1/acceleratedmobilepageurl-api.json +++ b/vendor/google.golang.org/api/acceleratedmobilepageurl/v1/acceleratedmobilepageurl-api.json @@ -1,169 +1,157 @@ { - "ownerName": "Google", + "basePath": "", + "baseUrl": "https://acceleratedmobilepageurl.googleapis.com/", + "batchPath": "batch", + "description": "Retrieves the list of AMP URLs (and equivalent AMP Cache URLs) for a given list of public URL(s).\n", "discoveryVersion": "v1", - "version_module": true, - "resources": { - "ampUrls": { - "methods": { - "batchGet": { - "httpMethod": "POST", - "parameterOrder": [], - "response": { - "$ref": "BatchGetAmpUrlsResponse" - }, - "parameters": {}, - "flatPath": "v1/ampUrls:batchGet", - "id": "acceleratedmobilepageurl.ampUrls.batchGet", - "path": "v1/ampUrls:batchGet", - "request": { - "$ref": "BatchGetAmpUrlsRequest" - }, - "description": "Returns AMP URL(s) and equivalent\n[AMP Cache URL(s)](/amp/cache/overview#amp-cache-url-format)." - } - } - } + "documentationLink": "https://developers.google.com/amp/cache/", + "icons": { + "x16": "http://www.google.com/images/icons/product/search-16.gif", + "x32": "http://www.google.com/images/icons/product/search-32.gif" }, + "id": "acceleratedmobilepageurl:v1", + "kind": "discovery#restDescription", + "name": "acceleratedmobilepageurl", + "ownerDomain": "google.com", + "ownerName": "Google", "parameters": { - "fields": { - "type": "string", - "location": "query", - "description": "Selector specifying which fields to include in a partial response." - }, - "uploadType": { - "location": "query", - "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", - "type": "string" - }, - "callback": { - "type": "string", - "location": "query", - "description": "JSONP" - }, "$.xgafv": { - "location": "query", + "description": "V1 error format.", "enum": [ "1", "2" ], - "description": "V1 error format.", - "type": "string", "enumDescriptions": [ "v1 error format", "v2 error format" - ] + ], + "location": "query", + "type": "string" + }, + "access_token": { + "description": "OAuth access token.", + "location": "query", + "type": "string" }, "alt": { - "type": "string", + "default": "json", + "description": "Data format for response.", + "enum": [ + "json", + "media", + "proto" + ], "enumDescriptions": [ "Responses with Content-Type of application/json", "Media download with context-dependent Content-Type", "Responses with Content-Type of application/x-protobuf" ], "location": "query", - "description": "Data format for response.", - "default": "json", - "enum": [ - "json", - "media", - "proto" - ] - }, - "access_token": { - "type": "string", - "location": "query", - "description": "OAuth access token." - }, - "key": { - "location": "query", - "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.", "type": "string" }, - "quotaUser": { - "location": "query", - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", - "type": "string" - }, - "pp": { - "location": "query", - "description": "Pretty-print response.", - "type": "boolean", - "default": "true" - }, "bearer_token": { - "location": "query", "description": "OAuth bearer token.", + "location": "query", + "type": "string" + }, + "callback": { + "description": "JSONP", + "location": "query", + "type": "string" + }, + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "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.", + "location": "query", "type": "string" }, "oauth_token": { - "location": "query", "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "pp": { + "default": "true", + "description": "Pretty-print response.", + "location": "query", + "type": "boolean" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", + "location": "query", + "type": "string" + }, + "uploadType": { + "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", + "location": "query", "type": "string" }, "upload_protocol": { - "location": "query", "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", - "type": "string" - }, - "prettyPrint": { "location": "query", - "description": "Returns response with indentations and line breaks.", - "type": "boolean", - "default": "true" + "type": "string" } }, - "schemas": { - "BatchGetAmpUrlsResponse": { - "type": "object", - "properties": { - "ampUrls": { - "description": "For each URL in BatchAmpUrlsRequest, the URL response. The response might\nnot be in the same order as URLs in the batch request.\nIf BatchAmpUrlsRequest contains duplicate URLs, AmpUrl is generated\nonly once.", - "type": "array", - "items": { - "$ref": "AmpUrl" - } - }, - "urlErrors": { - "type": "array", - "items": { - "$ref": "AmpUrlError" + "protocol": "rest", + "resources": { + "ampUrls": { + "methods": { + "batchGet": { + "description": "Returns AMP URL(s) and equivalent\n[AMP Cache URL(s)](/amp/cache/overview#amp-cache-url-format).", + "flatPath": "v1/ampUrls:batchGet", + "httpMethod": "POST", + "id": "acceleratedmobilepageurl.ampUrls.batchGet", + "parameterOrder": [], + "parameters": {}, + "path": "v1/ampUrls:batchGet", + "request": { + "$ref": "BatchGetAmpUrlsRequest" }, - "description": "The errors for requested URLs that have no AMP URL." + "response": { + "$ref": "BatchGetAmpUrlsResponse" + } } - }, - "id": "BatchGetAmpUrlsResponse", - "description": "Batch AMP URL response." - }, + } + } + }, + "revision": "20180203", + "rootUrl": "https://acceleratedmobilepageurl.googleapis.com/", + "schemas": { "AmpUrl": { - "type": "object", - "properties": { - "cdnAmpUrl": { - "type": "string", - "description": "The [AMP Cache URL](/amp/cache/overview#amp-cache-url-format) pointing to\nthe cached document in the Google AMP Cache." - }, - "originalUrl": { - "type": "string", - "description": "The original non-AMP URL." - }, - "ampUrl": { - "type": "string", - "description": "The AMP URL pointing to the publisher's web server." - } - }, + "description": "AMP URL response for a requested URL.", "id": "AmpUrl", - "description": "AMP URL response for a requested URL." - }, - "AmpUrlError": { - "type": "object", "properties": { + "ampUrl": { + "description": "The AMP URL pointing to the publisher's web server.", + "type": "string" + }, + "cdnAmpUrl": { + "description": "The [AMP Cache URL](/amp/cache/overview#amp-cache-url-format) pointing to\nthe cached document in the Google AMP Cache.", + "type": "string" + }, "originalUrl": { "description": "The original non-AMP URL.", "type": "string" - }, - "errorMessage": { - "type": "string", - "description": "An optional descriptive error message." - }, + } + }, + "type": "object" + }, + "AmpUrlError": { + "description": "AMP URL Error resource for a requested URL that couldn't be found.", + "id": "AmpUrlError", + "properties": { "errorCode": { + "description": "The error code of an API call.", "enum": [ "ERROR_CODE_UNSPECIFIED", "INPUT_URL_NOT_FOUND", @@ -172,8 +160,6 @@ "URL_IS_VALID_AMP", "URL_IS_INVALID_AMP" ], - "description": "The error code of an API call.", - "type": "string", "enumDescriptions": [ "Not specified error.", "Indicates the requested URL is not found in the index, possibly because\nit's unable to be found, not able to be accessed by Googlebot, or some\nother error.", @@ -181,56 +167,70 @@ "Indicates some kind of application error occurred at the server.\nClient advised to retry.", "DEPRECATED: Indicates the requested URL is a valid AMP URL. This is a\nnon-error state, should not be relied upon as a sign of success or\nfailure. It will be removed in future versions of the API.", "Indicates that an AMP URL has been found that corresponds to the request\nURL, but it is not valid AMP HTML." - ] + ], + "type": "string" + }, + "errorMessage": { + "description": "An optional descriptive error message.", + "type": "string" + }, + "originalUrl": { + "description": "The original non-AMP URL.", + "type": "string" } }, - "id": "AmpUrlError", - "description": "AMP URL Error resource for a requested URL that couldn't be found." + "type": "object" }, "BatchGetAmpUrlsRequest": { "description": "AMP URL request for a batch of URLs.", - "type": "object", + "id": "BatchGetAmpUrlsRequest", "properties": { - "urls": { - "type": "array", - "items": { - "type": "string" - }, - "description": "List of URLs to look up for the paired AMP URLs.\nThe URLs are case-sensitive. Up to 50 URLs per lookup\n(see [Usage Limits](/amp/cache/reference/limits))." - }, "lookupStrategy": { + "description": "The lookup_strategy being requested.", "enum": [ "FETCH_LIVE_DOC", "IN_INDEX_DOC" ], - "description": "The lookup_strategy being requested.", - "type": "string", "enumDescriptions": [ "FETCH_LIVE_DOC strategy involves live document fetch of URLs not found in\nthe index. Any request URL not found in the index is crawled in realtime\nto validate if there is a corresponding AMP URL. This strategy has higher\ncoverage but with extra latency introduced by realtime crawling. This is\nthe default strategy. Applications using this strategy should set higher\nHTTP timeouts of the API calls.", "IN_INDEX_DOC strategy skips fetching live documents of URL(s) not found\nin index. For applications which need low latency use of IN_INDEX_DOC\nstrategy is recommended." - ] + ], + "type": "string" + }, + "urls": { + "description": "List of URLs to look up for the paired AMP URLs.\nThe URLs are case-sensitive. Up to 50 URLs per lookup\n(see [Usage Limits](/amp/cache/reference/limits)).", + "items": { + "type": "string" + }, + "type": "array" } }, - "id": "BatchGetAmpUrlsRequest" + "type": "object" + }, + "BatchGetAmpUrlsResponse": { + "description": "Batch AMP URL response.", + "id": "BatchGetAmpUrlsResponse", + "properties": { + "ampUrls": { + "description": "For each URL in BatchAmpUrlsRequest, the URL response. The response might\nnot be in the same order as URLs in the batch request.\nIf BatchAmpUrlsRequest contains duplicate URLs, AmpUrl is generated\nonly once.", + "items": { + "$ref": "AmpUrl" + }, + "type": "array" + }, + "urlErrors": { + "description": "The errors for requested URLs that have no AMP URL.", + "items": { + "$ref": "AmpUrlError" + }, + "type": "array" + } + }, + "type": "object" } }, - "protocol": "rest", - "icons": { - "x16": "http://www.google.com/images/icons/product/search-16.gif", - "x32": "http://www.google.com/images/icons/product/search-32.gif" - }, - "version": "v1", - "baseUrl": "https://acceleratedmobilepageurl.googleapis.com/", - "kind": "discovery#restDescription", - "description": "Retrieves the list of AMP URLs (and equivalent AMP Cache URLs) for a given list of public URL(s).\n", "servicePath": "", - "rootUrl": "https://acceleratedmobilepageurl.googleapis.com/", - "basePath": "", - "ownerDomain": "google.com", - "name": "acceleratedmobilepageurl", - "batchPath": "batch", - "id": "acceleratedmobilepageurl:v1", - "documentationLink": "https://developers.google.com/amp/cache/", - "revision": "20180110", - "title": "Accelerated Mobile Pages (AMP) URL API" -} + "title": "Accelerated Mobile Pages (AMP) URL API", + "version": "v1", + "version_module": true +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/adexchangebuyer/v1.2/adexchangebuyer-api.json b/vendor/google.golang.org/api/adexchangebuyer/v1.2/adexchangebuyer-api.json index cb383ac18..4a0fec7c7 100644 --- a/vendor/google.golang.org/api/adexchangebuyer/v1.2/adexchangebuyer-api.json +++ b/vendor/google.golang.org/api/adexchangebuyer/v1.2/adexchangebuyer-api.json @@ -1,596 +1,596 @@ { - "kind": "discovery#restDescription", - "etag": "\"YWOzh2SDasdU84ArJnpYek-OMdg/-1DKqIhPUpLfO8DBj8P3gNrIPtE\"", - "discoveryVersion": "v1", - "id": "adexchangebuyer:v1.2", - "name": "adexchangebuyer", - "canonicalName": "Ad Exchange Buyer", - "version": "v1.2", - "revision": "20170810", - "title": "Ad Exchange Buyer API", - "description": "Accesses your bidding-account information, submits creatives for validation, finds available direct deals, and retrieves performance reports.", - "ownerDomain": "google.com", - "ownerName": "Google", - "icons": { - "x16": "https://www.google.com/images/icons/product/doubleclick-16.gif", - "x32": "https://www.google.com/images/icons/product/doubleclick-32.gif" - }, - "documentationLink": "https://developers.google.com/ad-exchange/buyer-rest", - "protocol": "rest", - "baseUrl": "https://www.googleapis.com/adexchangebuyer/v1.2/", - "basePath": "/adexchangebuyer/v1.2/", - "rootUrl": "https://www.googleapis.com/", - "servicePath": "adexchangebuyer/v1.2/", - "batchPath": "batch/adexchangebuyer/v1.2", - "parameters": { - "alt": { - "type": "string", - "description": "Data format for the response.", - "default": "json", - "enum": [ - "json" - ], - "enumDescriptions": [ - "Responses with Content-Type of application/json" - ], - "location": "query" - }, - "fields": { - "type": "string", - "description": "Selector specifying which fields to include in a partial response.", - "location": "query" - }, - "key": { - "type": "string", - "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" - }, - "oauth_token": { - "type": "string", - "description": "OAuth 2.0 token for the current user.", - "location": "query" - }, - "prettyPrint": { - "type": "boolean", - "description": "Returns response with indentations and line breaks.", - "default": "true", - "location": "query" - }, - "quotaUser": { - "type": "string", - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", - "location": "query" - }, - "userIp": { - "type": "string", - "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", - "location": "query" - } - }, - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/adexchange.buyer": { - "description": "Manage your Ad Exchange buyer account configuration" - } - } - } - }, - "schemas": { - "Account": { - "id": "Account", - "type": "object", - "description": "Configuration data for an Ad Exchange buyer account.", - "properties": { - "bidderLocation": { - "type": "array", - "description": "Your bidder locations that have distinct URLs.", - "items": { - "type": "object", - "properties": { - "maximumQps": { - "type": "integer", - "description": "The maximum queries per second the Ad Exchange will send.", - "format": "int32" - }, - "region": { - "type": "string", - "description": "The geographical region the Ad Exchange should send requests from. Only used by some quota systems, but always setting the value is recommended. Allowed values: \n- ASIA \n- EUROPE \n- US_EAST \n- US_WEST" - }, - "url": { - "type": "string", - "description": "The URL to which the Ad Exchange will send bid requests." - } + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/adexchange.buyer": { + "description": "Manage your Ad Exchange buyer account configuration" + } } - } - }, - "cookieMatchingNid": { - "type": "string", - "description": "The nid parameter value used in cookie match requests. Please contact your technical account manager if you need to change this." - }, - "cookieMatchingUrl": { - "type": "string", - "description": "The base URL used in cookie match requests." - }, - "id": { - "type": "integer", - "description": "Account id.", - "format": "int32" - }, - "kind": { - "type": "string", - "description": "Resource type.", - "default": "adexchangebuyer#account" - }, - "maximumActiveCreatives": { - "type": "integer", - "description": "The maximum number of active creatives that an account can have, where a creative is active if it was inserted or bid with in the last 30 days. Please contact your technical account manager if you need to change this.", - "format": "int32" - }, - "maximumTotalQps": { - "type": "integer", - "description": "The sum of all bidderLocation.maximumQps values cannot exceed this. Please contact your technical account manager if you need to change this.", - "format": "int32" - }, - "numberActiveCreatives": { - "type": "integer", - "description": "The number of creatives that this account inserted or bid with in the last 30 days.", - "format": "int32" } - } }, - "AccountsList": { - "id": "AccountsList", - "type": "object", - "description": "An account feed lists Ad Exchange buyer accounts that the user has access to. Each entry in the feed corresponds to a single buyer account.", - "properties": { - "items": { - "type": "array", - "description": "A list of accounts.", - "items": { - "$ref": "Account" - } - }, - "kind": { - "type": "string", - "description": "Resource type.", - "default": "adexchangebuyer#accountsList" - } - } + "basePath": "/adexchangebuyer/v1.2/", + "baseUrl": "https://www.googleapis.com/adexchangebuyer/v1.2/", + "batchPath": "batch/adexchangebuyer/v1.2", + "canonicalName": "Ad Exchange Buyer", + "description": "Accesses your bidding-account information, submits creatives for validation, finds available direct deals, and retrieves performance reports.", + "discoveryVersion": "v1", + "documentationLink": "https://developers.google.com/ad-exchange/buyer-rest", + "etag": "\"-iA1DTNe4s-I6JZXPt1t1Ypy8IU/-1DKqIhPUpLfO8DBj8P3gNrIPtE\"", + "icons": { + "x16": "https://www.google.com/images/icons/product/doubleclick-16.gif", + "x32": "https://www.google.com/images/icons/product/doubleclick-32.gif" }, - "Creative": { - "id": "Creative", - "type": "object", - "description": "A creative and its classification data.", - "properties": { - "HTMLSnippet": { - "type": "string", - "description": "The HTML snippet that displays the ad when inserted in the web page. If set, videoURL should not be set." - }, - "accountId": { - "type": "integer", - "description": "Account id.", - "format": "int32", - "annotations": { - "required": [ - "adexchangebuyer.creatives.insert" - ] - } - }, - "advertiserId": { - "type": "array", - "description": "Detected advertiser id, if any. Read-only. This field should not be set in requests.", - "items": { - "type": "string", - "format": "int64" - } - }, - "advertiserName": { - "type": "string", - "description": "The name of the company being advertised in the creative.", - "annotations": { - "required": [ - "adexchangebuyer.creatives.insert" - ] - } - }, - "agencyId": { - "type": "string", - "description": "The agency id for this creative.", - "format": "int64" - }, - "apiUploadTimestamp": { - "type": "string", - "description": "The last upload timestamp of this creative if it was uploaded via API. Read-only. The value of this field is generated, and will be ignored for uploads. (formatted RFC 3339 timestamp).", - "format": "date-time" - }, - "attribute": { - "type": "array", - "description": "All attributes for the ads that may be shown from this snippet.", - "items": { - "type": "integer", - "format": "int32" - } - }, - "buyerCreativeId": { - "type": "string", - "description": "A buyer-specific id identifying the creative in this ad.", - "annotations": { - "required": [ - "adexchangebuyer.creatives.insert" - ] - } - }, - "clickThroughUrl": { - "type": "array", - "description": "The set of destination urls for the snippet.", - "items": { + "id": "adexchangebuyer:v1.2", + "kind": "discovery#restDescription", + "name": "adexchangebuyer", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "alt": { + "default": "json", + "description": "Data format for the response.", + "enum": [ + "json" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json" + ], + "location": "query", "type": "string" - }, - "annotations": { - "required": [ - "adexchangebuyer.creatives.insert" - ] - } }, - "corrections": { - "type": "array", - "description": "Shows any corrections that were applied to this creative. Read-only. This field should not be set in requests.", - "items": { - "type": "object", - "properties": { - "details": { - "type": "array", - "description": "Additional details about the correction.", - "items": { - "type": "string" - } - }, - "reason": { - "type": "string", - "description": "The type of correction that was applied to the creative." - } - } - } - }, - "disapprovalReasons": { - "type": "array", - "description": "The reasons for disapproval, if any. Note that not all disapproval reasons may be categorized, so it is possible for the creative to have a status of DISAPPROVED with an empty list for disapproval_reasons. In this case, please reach out to your TAM to help debug the issue. Read-only. This field should not be set in requests.", - "items": { - "type": "object", - "properties": { - "details": { - "type": "array", - "description": "Additional details about the reason for disapproval.", - "items": { - "type": "string" - } - }, - "reason": { - "type": "string", - "description": "The categorized reason for disapproval." - } - } - } - }, - "filteringReasons": { - "type": "object", - "description": "The filtering reasons for the creative. Read-only. This field should not be set in requests.", - "properties": { - "date": { - "type": "string", - "description": "The date in ISO 8601 format for the data. The data is collected from 00:00:00 to 23:59:59 in PST." - }, - "reasons": { - "type": "array", - "description": "The filtering reasons.", - "items": { - "type": "object", - "properties": { - "filteringCount": { - "type": "string", - "description": "The number of times the creative was filtered for the status. The count is aggregated across all publishers on the exchange.", - "format": "int64" - }, - "filteringStatus": { - "type": "integer", - "description": "The filtering status code. Please refer to the creative-status-codes.txt file for different statuses.", - "format": "int32" - } - } - } - } - } - }, - "height": { - "type": "integer", - "description": "Ad height.", - "format": "int32", - "annotations": { - "required": [ - "adexchangebuyer.creatives.insert" - ] - } - }, - "impressionTrackingUrl": { - "type": "array", - "description": "The set of urls to be called to record an impression.", - "items": { + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "location": "query", "type": "string" - } }, - "kind": { - "type": "string", - "description": "Resource type.", - "default": "adexchangebuyer#creative" + "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" }, - "productCategories": { - "type": "array", - "description": "Detected product categories, if any. Read-only. This field should not be set in requests.", - "items": { - "type": "integer", - "format": "int32" - } + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" }, - "restrictedCategories": { - "type": "array", - "description": "All restricted categories for the ads that may be shown from this snippet.", - "items": { - "type": "integer", - "format": "int32" - } + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" }, - "sensitiveCategories": { - "type": "array", - "description": "Detected sensitive categories, if any. Read-only. This field should not be set in requests.", - "items": { - "type": "integer", - "format": "int32" - } + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", + "location": "query", + "type": "string" }, - "status": { - "type": "string", - "description": "Creative serving status. Read-only. This field should not be set in requests." - }, - "vendorType": { - "type": "array", - "description": "All vendor types for the ads that may be shown from this snippet.", - "items": { - "type": "integer", - "format": "int32" - } - }, - "version": { - "type": "integer", - "description": "The version for this creative. Read-only. This field should not be set in requests.", - "format": "int32" - }, - "videoURL": { - "type": "string", - "description": "The url to fetch a video ad. If set, HTMLSnippet should not be set." - }, - "width": { - "type": "integer", - "description": "Ad width.", - "format": "int32", - "annotations": { - "required": [ - "adexchangebuyer.creatives.insert" - ] - } + "userIp": { + "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", + "location": "query", + "type": "string" } - } }, - "CreativesList": { - "id": "CreativesList", - "type": "object", - "description": "The creatives feed lists the active creatives for the Ad Exchange buyer accounts that the user has access to. Each entry in the feed corresponds to a single creative.", - "properties": { - "items": { - "type": "array", - "description": "A list of creatives.", - "items": { - "$ref": "Creative" - } + "protocol": "rest", + "resources": { + "accounts": { + "methods": { + "get": { + "description": "Gets one account by ID.", + "httpMethod": "GET", + "id": "adexchangebuyer.accounts.get", + "parameterOrder": [ + "id" + ], + "parameters": { + "id": { + "description": "The account id", + "format": "int32", + "location": "path", + "required": true, + "type": "integer" + } + }, + "path": "accounts/{id}", + "response": { + "$ref": "Account" + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.buyer" + ] + }, + "list": { + "description": "Retrieves the authenticated user's list of accounts.", + "httpMethod": "GET", + "id": "adexchangebuyer.accounts.list", + "path": "accounts", + "response": { + "$ref": "AccountsList" + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.buyer" + ] + }, + "patch": { + "description": "Updates an existing account. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "adexchangebuyer.accounts.patch", + "parameterOrder": [ + "id" + ], + "parameters": { + "id": { + "description": "The account id", + "format": "int32", + "location": "path", + "required": true, + "type": "integer" + } + }, + "path": "accounts/{id}", + "request": { + "$ref": "Account" + }, + "response": { + "$ref": "Account" + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.buyer" + ] + }, + "update": { + "description": "Updates an existing account.", + "httpMethod": "PUT", + "id": "adexchangebuyer.accounts.update", + "parameterOrder": [ + "id" + ], + "parameters": { + "id": { + "description": "The account id", + "format": "int32", + "location": "path", + "required": true, + "type": "integer" + } + }, + "path": "accounts/{id}", + "request": { + "$ref": "Account" + }, + "response": { + "$ref": "Account" + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.buyer" + ] + } + } }, - "kind": { - "type": "string", - "description": "Resource type.", - "default": "adexchangebuyer#creativesList" - }, - "nextPageToken": { - "type": "string", - "description": "Continuation token used to page through creatives. To retrieve the next page of results, set the next request's \"pageToken\" value to this." + "creatives": { + "methods": { + "get": { + "description": "Gets the status for a single creative. A creative will be available 30-40 minutes after submission.", + "httpMethod": "GET", + "id": "adexchangebuyer.creatives.get", + "parameterOrder": [ + "accountId", + "buyerCreativeId" + ], + "parameters": { + "accountId": { + "description": "The id for the account that will serve this creative.", + "format": "int32", + "location": "path", + "required": true, + "type": "integer" + }, + "buyerCreativeId": { + "description": "The buyer-specific id for this creative.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "creatives/{accountId}/{buyerCreativeId}", + "response": { + "$ref": "Creative" + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.buyer" + ] + }, + "insert": { + "description": "Submit a new creative.", + "httpMethod": "POST", + "id": "adexchangebuyer.creatives.insert", + "path": "creatives", + "request": { + "$ref": "Creative" + }, + "response": { + "$ref": "Creative" + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.buyer" + ] + }, + "list": { + "description": "Retrieves a list of the authenticated user's active creatives. A creative will be available 30-40 minutes after submission.", + "httpMethod": "GET", + "id": "adexchangebuyer.creatives.list", + "parameters": { + "maxResults": { + "description": "Maximum number of entries returned on one result page. If not set, the default is 100. Optional.", + "format": "uint32", + "location": "query", + "maximum": "1000", + "minimum": "1", + "type": "integer" + }, + "pageToken": { + "description": "A continuation token, used to page through ad clients. To retrieve the next page, set this parameter to the value of \"nextPageToken\" from the previous response. Optional.", + "location": "query", + "type": "string" + }, + "statusFilter": { + "description": "When specified, only creatives having the given status are returned.", + "enum": [ + "approved", + "disapproved", + "not_checked" + ], + "enumDescriptions": [ + "Creatives which have been approved.", + "Creatives which have been disapproved.", + "Creatives whose status is not yet checked." + ], + "location": "query", + "type": "string" + } + }, + "path": "creatives", + "response": { + "$ref": "CreativesList" + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.buyer" + ] + } + } } - } - } - }, - "resources": { - "accounts": { - "methods": { - "get": { - "id": "adexchangebuyer.accounts.get", - "path": "accounts/{id}", - "httpMethod": "GET", - "description": "Gets one account by ID.", - "parameters": { - "id": { - "type": "integer", - "description": "The account id", - "required": true, - "format": "int32", - "location": "path" - } - }, - "parameterOrder": [ - "id" - ], - "response": { - "$ref": "Account" - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ] - }, - "list": { - "id": "adexchangebuyer.accounts.list", - "path": "accounts", - "httpMethod": "GET", - "description": "Retrieves the authenticated user's list of accounts.", - "response": { - "$ref": "AccountsList" - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ] - }, - "patch": { - "id": "adexchangebuyer.accounts.patch", - "path": "accounts/{id}", - "httpMethod": "PATCH", - "description": "Updates an existing account. This method supports patch semantics.", - "parameters": { - "id": { - "type": "integer", - "description": "The account id", - "required": true, - "format": "int32", - "location": "path" - } - }, - "parameterOrder": [ - "id" - ], - "request": { - "$ref": "Account" - }, - "response": { - "$ref": "Account" - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ] - }, - "update": { - "id": "adexchangebuyer.accounts.update", - "path": "accounts/{id}", - "httpMethod": "PUT", - "description": "Updates an existing account.", - "parameters": { - "id": { - "type": "integer", - "description": "The account id", - "required": true, - "format": "int32", - "location": "path" - } - }, - "parameterOrder": [ - "id" - ], - "request": { - "$ref": "Account" - }, - "response": { - "$ref": "Account" - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ] - } - } }, - "creatives": { - "methods": { - "get": { - "id": "adexchangebuyer.creatives.get", - "path": "creatives/{accountId}/{buyerCreativeId}", - "httpMethod": "GET", - "description": "Gets the status for a single creative. A creative will be available 30-40 minutes after submission.", - "parameters": { - "accountId": { - "type": "integer", - "description": "The id for the account that will serve this creative.", - "required": true, - "format": "int32", - "location": "path" + "revision": "20170810", + "rootUrl": "https://www.googleapis.com/", + "schemas": { + "Account": { + "description": "Configuration data for an Ad Exchange buyer account.", + "id": "Account", + "properties": { + "bidderLocation": { + "description": "Your bidder locations that have distinct URLs.", + "items": { + "properties": { + "maximumQps": { + "description": "The maximum queries per second the Ad Exchange will send.", + "format": "int32", + "type": "integer" + }, + "region": { + "description": "The geographical region the Ad Exchange should send requests from. Only used by some quota systems, but always setting the value is recommended. Allowed values: \n- ASIA \n- EUROPE \n- US_EAST \n- US_WEST", + "type": "string" + }, + "url": { + "description": "The URL to which the Ad Exchange will send bid requests.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "cookieMatchingNid": { + "description": "The nid parameter value used in cookie match requests. Please contact your technical account manager if you need to change this.", + "type": "string" + }, + "cookieMatchingUrl": { + "description": "The base URL used in cookie match requests.", + "type": "string" + }, + "id": { + "description": "Account id.", + "format": "int32", + "type": "integer" + }, + "kind": { + "default": "adexchangebuyer#account", + "description": "Resource type.", + "type": "string" + }, + "maximumActiveCreatives": { + "description": "The maximum number of active creatives that an account can have, where a creative is active if it was inserted or bid with in the last 30 days. Please contact your technical account manager if you need to change this.", + "format": "int32", + "type": "integer" + }, + "maximumTotalQps": { + "description": "The sum of all bidderLocation.maximumQps values cannot exceed this. Please contact your technical account manager if you need to change this.", + "format": "int32", + "type": "integer" + }, + "numberActiveCreatives": { + "description": "The number of creatives that this account inserted or bid with in the last 30 days.", + "format": "int32", + "type": "integer" + } }, - "buyerCreativeId": { - "type": "string", - "description": "The buyer-specific id for this creative.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "accountId", - "buyerCreativeId" - ], - "response": { - "$ref": "Creative" - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ] + "type": "object" }, - "insert": { - "id": "adexchangebuyer.creatives.insert", - "path": "creatives", - "httpMethod": "POST", - "description": "Submit a new creative.", - "request": { - "$ref": "Creative" - }, - "response": { - "$ref": "Creative" - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ] + "AccountsList": { + "description": "An account feed lists Ad Exchange buyer accounts that the user has access to. Each entry in the feed corresponds to a single buyer account.", + "id": "AccountsList", + "properties": { + "items": { + "description": "A list of accounts.", + "items": { + "$ref": "Account" + }, + "type": "array" + }, + "kind": { + "default": "adexchangebuyer#accountsList", + "description": "Resource type.", + "type": "string" + } + }, + "type": "object" }, - "list": { - "id": "adexchangebuyer.creatives.list", - "path": "creatives", - "httpMethod": "GET", - "description": "Retrieves a list of the authenticated user's active creatives. A creative will be available 30-40 minutes after submission.", - "parameters": { - "maxResults": { - "type": "integer", - "description": "Maximum number of entries returned on one result page. If not set, the default is 100. Optional.", - "format": "uint32", - "minimum": "1", - "maximum": "1000", - "location": "query" + "Creative": { + "description": "A creative and its classification data.", + "id": "Creative", + "properties": { + "HTMLSnippet": { + "description": "The HTML snippet that displays the ad when inserted in the web page. If set, videoURL should not be set.", + "type": "string" + }, + "accountId": { + "annotations": { + "required": [ + "adexchangebuyer.creatives.insert" + ] + }, + "description": "Account id.", + "format": "int32", + "type": "integer" + }, + "advertiserId": { + "description": "Detected advertiser id, if any. Read-only. This field should not be set in requests.", + "items": { + "format": "int64", + "type": "string" + }, + "type": "array" + }, + "advertiserName": { + "annotations": { + "required": [ + "adexchangebuyer.creatives.insert" + ] + }, + "description": "The name of the company being advertised in the creative.", + "type": "string" + }, + "agencyId": { + "description": "The agency id for this creative.", + "format": "int64", + "type": "string" + }, + "apiUploadTimestamp": { + "description": "The last upload timestamp of this creative if it was uploaded via API. Read-only. The value of this field is generated, and will be ignored for uploads. (formatted RFC 3339 timestamp).", + "format": "date-time", + "type": "string" + }, + "attribute": { + "description": "All attributes for the ads that may be shown from this snippet.", + "items": { + "format": "int32", + "type": "integer" + }, + "type": "array" + }, + "buyerCreativeId": { + "annotations": { + "required": [ + "adexchangebuyer.creatives.insert" + ] + }, + "description": "A buyer-specific id identifying the creative in this ad.", + "type": "string" + }, + "clickThroughUrl": { + "annotations": { + "required": [ + "adexchangebuyer.creatives.insert" + ] + }, + "description": "The set of destination urls for the snippet.", + "items": { + "type": "string" + }, + "type": "array" + }, + "corrections": { + "description": "Shows any corrections that were applied to this creative. Read-only. This field should not be set in requests.", + "items": { + "properties": { + "details": { + "description": "Additional details about the correction.", + "items": { + "type": "string" + }, + "type": "array" + }, + "reason": { + "description": "The type of correction that was applied to the creative.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "disapprovalReasons": { + "description": "The reasons for disapproval, if any. Note that not all disapproval reasons may be categorized, so it is possible for the creative to have a status of DISAPPROVED with an empty list for disapproval_reasons. In this case, please reach out to your TAM to help debug the issue. Read-only. This field should not be set in requests.", + "items": { + "properties": { + "details": { + "description": "Additional details about the reason for disapproval.", + "items": { + "type": "string" + }, + "type": "array" + }, + "reason": { + "description": "The categorized reason for disapproval.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "filteringReasons": { + "description": "The filtering reasons for the creative. Read-only. This field should not be set in requests.", + "properties": { + "date": { + "description": "The date in ISO 8601 format for the data. The data is collected from 00:00:00 to 23:59:59 in PST.", + "type": "string" + }, + "reasons": { + "description": "The filtering reasons.", + "items": { + "properties": { + "filteringCount": { + "description": "The number of times the creative was filtered for the status. The count is aggregated across all publishers on the exchange.", + "format": "int64", + "type": "string" + }, + "filteringStatus": { + "description": "The filtering status code. Please refer to the creative-status-codes.txt file for different statuses.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "type": "array" + } + }, + "type": "object" + }, + "height": { + "annotations": { + "required": [ + "adexchangebuyer.creatives.insert" + ] + }, + "description": "Ad height.", + "format": "int32", + "type": "integer" + }, + "impressionTrackingUrl": { + "description": "The set of urls to be called to record an impression.", + "items": { + "type": "string" + }, + "type": "array" + }, + "kind": { + "default": "adexchangebuyer#creative", + "description": "Resource type.", + "type": "string" + }, + "productCategories": { + "description": "Detected product categories, if any. Read-only. This field should not be set in requests.", + "items": { + "format": "int32", + "type": "integer" + }, + "type": "array" + }, + "restrictedCategories": { + "description": "All restricted categories for the ads that may be shown from this snippet.", + "items": { + "format": "int32", + "type": "integer" + }, + "type": "array" + }, + "sensitiveCategories": { + "description": "Detected sensitive categories, if any. Read-only. This field should not be set in requests.", + "items": { + "format": "int32", + "type": "integer" + }, + "type": "array" + }, + "status": { + "description": "Creative serving status. Read-only. This field should not be set in requests.", + "type": "string" + }, + "vendorType": { + "description": "All vendor types for the ads that may be shown from this snippet.", + "items": { + "format": "int32", + "type": "integer" + }, + "type": "array" + }, + "version": { + "description": "The version for this creative. Read-only. This field should not be set in requests.", + "format": "int32", + "type": "integer" + }, + "videoURL": { + "description": "The url to fetch a video ad. If set, HTMLSnippet should not be set.", + "type": "string" + }, + "width": { + "annotations": { + "required": [ + "adexchangebuyer.creatives.insert" + ] + }, + "description": "Ad width.", + "format": "int32", + "type": "integer" + } }, - "pageToken": { - "type": "string", - "description": "A continuation token, used to page through ad clients. To retrieve the next page, set this parameter to the value of \"nextPageToken\" from the previous response. Optional.", - "location": "query" + "type": "object" + }, + "CreativesList": { + "description": "The creatives feed lists the active creatives for the Ad Exchange buyer accounts that the user has access to. Each entry in the feed corresponds to a single creative.", + "id": "CreativesList", + "properties": { + "items": { + "description": "A list of creatives.", + "items": { + "$ref": "Creative" + }, + "type": "array" + }, + "kind": { + "default": "adexchangebuyer#creativesList", + "description": "Resource type.", + "type": "string" + }, + "nextPageToken": { + "description": "Continuation token used to page through creatives. To retrieve the next page of results, set the next request's \"pageToken\" value to this.", + "type": "string" + } }, - "statusFilter": { - "type": "string", - "description": "When specified, only creatives having the given status are returned.", - "enum": [ - "approved", - "disapproved", - "not_checked" - ], - "enumDescriptions": [ - "Creatives which have been approved.", - "Creatives which have been disapproved.", - "Creatives whose status is not yet checked." - ], - "location": "query" - } - }, - "response": { - "$ref": "CreativesList" - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ] + "type": "object" } - } - } - } -} + }, + "servicePath": "adexchangebuyer/v1.2/", + "title": "Ad Exchange Buyer API", + "version": "v1.2" +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/adexchangebuyer/v1.3/adexchangebuyer-api.json b/vendor/google.golang.org/api/adexchangebuyer/v1.3/adexchangebuyer-api.json index 1edf96a39..7efe5463c 100644 --- a/vendor/google.golang.org/api/adexchangebuyer/v1.3/adexchangebuyer-api.json +++ b/vendor/google.golang.org/api/adexchangebuyer/v1.3/adexchangebuyer-api.json @@ -1,1668 +1,1668 @@ { - "kind": "discovery#restDescription", - "etag": "\"YWOzh2SDasdU84ArJnpYek-OMdg/_RwUq281eKa7d-tJKPdh-IE_OEk\"", - "discoveryVersion": "v1", - "id": "adexchangebuyer:v1.3", - "name": "adexchangebuyer", - "canonicalName": "Ad Exchange Buyer", - "version": "v1.3", - "revision": "20170810", - "title": "Ad Exchange Buyer API", - "description": "Accesses your bidding-account information, submits creatives for validation, finds available direct deals, and retrieves performance reports.", - "ownerDomain": "google.com", - "ownerName": "Google", - "icons": { - "x16": "https://www.google.com/images/icons/product/doubleclick-16.gif", - "x32": "https://www.google.com/images/icons/product/doubleclick-32.gif" - }, - "documentationLink": "https://developers.google.com/ad-exchange/buyer-rest", - "protocol": "rest", - "baseUrl": "https://www.googleapis.com/adexchangebuyer/v1.3/", - "basePath": "/adexchangebuyer/v1.3/", - "rootUrl": "https://www.googleapis.com/", - "servicePath": "adexchangebuyer/v1.3/", - "batchPath": "batch/adexchangebuyer/v1.3", - "parameters": { - "alt": { - "type": "string", - "description": "Data format for the response.", - "default": "json", - "enum": [ - "json" - ], - "enumDescriptions": [ - "Responses with Content-Type of application/json" - ], - "location": "query" - }, - "fields": { - "type": "string", - "description": "Selector specifying which fields to include in a partial response.", - "location": "query" - }, - "key": { - "type": "string", - "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" - }, - "oauth_token": { - "type": "string", - "description": "OAuth 2.0 token for the current user.", - "location": "query" - }, - "prettyPrint": { - "type": "boolean", - "description": "Returns response with indentations and line breaks.", - "default": "true", - "location": "query" - }, - "quotaUser": { - "type": "string", - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", - "location": "query" - }, - "userIp": { - "type": "string", - "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", - "location": "query" - } - }, - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/adexchange.buyer": { - "description": "Manage your Ad Exchange buyer account configuration" - } - } - } - }, - "schemas": { - "Account": { - "id": "Account", - "type": "object", - "description": "Configuration data for an Ad Exchange buyer account.", - "properties": { - "bidderLocation": { - "type": "array", - "description": "Your bidder locations that have distinct URLs.", - "items": { - "type": "object", - "properties": { - "maximumQps": { - "type": "integer", - "description": "The maximum queries per second the Ad Exchange will send.", - "format": "int32" - }, - "region": { - "type": "string", - "description": "The geographical region the Ad Exchange should send requests from. Only used by some quota systems, but always setting the value is recommended. Allowed values: \n- ASIA \n- EUROPE \n- US_EAST \n- US_WEST" - }, - "url": { - "type": "string", - "description": "The URL to which the Ad Exchange will send bid requests." - } + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/adexchange.buyer": { + "description": "Manage your Ad Exchange buyer account configuration" + } } - } - }, - "cookieMatchingNid": { - "type": "string", - "description": "The nid parameter value used in cookie match requests. Please contact your technical account manager if you need to change this." - }, - "cookieMatchingUrl": { - "type": "string", - "description": "The base URL used in cookie match requests." - }, - "id": { - "type": "integer", - "description": "Account id.", - "format": "int32" - }, - "kind": { - "type": "string", - "description": "Resource type.", - "default": "adexchangebuyer#account" - }, - "maximumActiveCreatives": { - "type": "integer", - "description": "The maximum number of active creatives that an account can have, where a creative is active if it was inserted or bid with in the last 30 days. Please contact your technical account manager if you need to change this.", - "format": "int32" - }, - "maximumTotalQps": { - "type": "integer", - "description": "The sum of all bidderLocation.maximumQps values cannot exceed this. Please contact your technical account manager if you need to change this.", - "format": "int32" - }, - "numberActiveCreatives": { - "type": "integer", - "description": "The number of creatives that this account inserted or bid with in the last 30 days.", - "format": "int32" } - } }, - "AccountsList": { - "id": "AccountsList", - "type": "object", - "description": "An account feed lists Ad Exchange buyer accounts that the user has access to. Each entry in the feed corresponds to a single buyer account.", - "properties": { - "items": { - "type": "array", - "description": "A list of accounts.", - "items": { - "$ref": "Account" - } - }, - "kind": { - "type": "string", - "description": "Resource type.", - "default": "adexchangebuyer#accountsList" - } - } + "basePath": "/adexchangebuyer/v1.3/", + "baseUrl": "https://www.googleapis.com/adexchangebuyer/v1.3/", + "batchPath": "batch/adexchangebuyer/v1.3", + "canonicalName": "Ad Exchange Buyer", + "description": "Accesses your bidding-account information, submits creatives for validation, finds available direct deals, and retrieves performance reports.", + "discoveryVersion": "v1", + "documentationLink": "https://developers.google.com/ad-exchange/buyer-rest", + "etag": "\"-iA1DTNe4s-I6JZXPt1t1Ypy8IU/_RwUq281eKa7d-tJKPdh-IE_OEk\"", + "icons": { + "x16": "https://www.google.com/images/icons/product/doubleclick-16.gif", + "x32": "https://www.google.com/images/icons/product/doubleclick-32.gif" }, - "BillingInfo": { - "id": "BillingInfo", - "type": "object", - "description": "The configuration data for an Ad Exchange billing info.", - "properties": { - "accountId": { - "type": "integer", - "description": "Account id.", - "format": "int32" - }, - "accountName": { - "type": "string", - "description": "Account name." - }, - "billingId": { - "type": "array", - "description": "A list of adgroup IDs associated with this particular account. These IDs may show up as part of a realtime bidding BidRequest, which indicates a bid request for this account.", - "items": { + "id": "adexchangebuyer:v1.3", + "kind": "discovery#restDescription", + "name": "adexchangebuyer", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "alt": { + "default": "json", + "description": "Data format for the response.", + "enum": [ + "json" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json" + ], + "location": "query", "type": "string" - } }, - "kind": { - "type": "string", - "description": "Resource type.", - "default": "adexchangebuyer#billingInfo" - } - } - }, - "BillingInfoList": { - "id": "BillingInfoList", - "type": "object", - "description": "A billing info feed lists Billing Info the Ad Exchange buyer account has access to. Each entry in the feed corresponds to a single billing info.", - "properties": { - "items": { - "type": "array", - "description": "A list of billing info relevant for your account.", - "items": { - "$ref": "BillingInfo" - } - }, - "kind": { - "type": "string", - "description": "Resource type.", - "default": "adexchangebuyer#billingInfoList" - } - } - }, - "Budget": { - "id": "Budget", - "type": "object", - "description": "The configuration data for Ad Exchange RTB - Budget API.", - "properties": { - "accountId": { - "type": "string", - "description": "The id of the account. This is required for get and update requests.", - "format": "int64" - }, - "billingId": { - "type": "string", - "description": "The billing id to determine which adgroup to provide budget information for. This is required for get and update requests.", - "format": "int64" - }, - "budgetAmount": { - "type": "string", - "description": "The daily budget amount in unit amount of the account currency to apply for the billingId provided. This is required for update requests.", - "format": "int64" - }, - "currencyCode": { - "type": "string", - "description": "The currency code for the buyer. This cannot be altered here." - }, - "id": { - "type": "string", - "description": "The unique id that describes this item." - }, - "kind": { - "type": "string", - "description": "The kind of the resource, i.e. \"adexchangebuyer#budget\".", - "default": "adexchangebuyer#budget" - } - } - }, - "Creative": { - "id": "Creative", - "type": "object", - "description": "A creative and its classification data.", - "properties": { - "HTMLSnippet": { - "type": "string", - "description": "The HTML snippet that displays the ad when inserted in the web page. If set, videoURL should not be set." - }, - "accountId": { - "type": "integer", - "description": "Account id.", - "format": "int32", - "annotations": { - "required": [ - "adexchangebuyer.creatives.insert" - ] - } - }, - "advertiserId": { - "type": "array", - "description": "Detected advertiser id, if any. Read-only. This field should not be set in requests.", - "items": { - "type": "string", - "format": "int64" - } - }, - "advertiserName": { - "type": "string", - "description": "The name of the company being advertised in the creative.", - "annotations": { - "required": [ - "adexchangebuyer.creatives.insert" - ] - } - }, - "agencyId": { - "type": "string", - "description": "The agency id for this creative.", - "format": "int64" - }, - "apiUploadTimestamp": { - "type": "string", - "description": "The last upload timestamp of this creative if it was uploaded via API. Read-only. The value of this field is generated, and will be ignored for uploads. (formatted RFC 3339 timestamp).", - "format": "date-time" - }, - "attribute": { - "type": "array", - "description": "All attributes for the ads that may be shown from this snippet.", - "items": { - "type": "integer", - "format": "int32" - } - }, - "buyerCreativeId": { - "type": "string", - "description": "A buyer-specific id identifying the creative in this ad.", - "annotations": { - "required": [ - "adexchangebuyer.creatives.insert" - ] - } - }, - "clickThroughUrl": { - "type": "array", - "description": "The set of destination urls for the snippet.", - "items": { + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "location": "query", "type": "string" - }, - "annotations": { - "required": [ - "adexchangebuyer.creatives.insert" - ] - } }, - "corrections": { - "type": "array", - "description": "Shows any corrections that were applied to this creative. Read-only. This field should not be set in requests.", - "items": { - "type": "object", - "properties": { - "details": { - "type": "array", - "description": "Additional details about the correction.", - "items": { - "type": "string" - } - }, - "reason": { - "type": "string", - "description": "The type of correction that was applied to the creative." - } - } - } - }, - "disapprovalReasons": { - "type": "array", - "description": "The reasons for disapproval, if any. Note that not all disapproval reasons may be categorized, so it is possible for the creative to have a status of DISAPPROVED with an empty list for disapproval_reasons. In this case, please reach out to your TAM to help debug the issue. Read-only. This field should not be set in requests.", - "items": { - "type": "object", - "properties": { - "details": { - "type": "array", - "description": "Additional details about the reason for disapproval.", - "items": { - "type": "string" - } - }, - "reason": { - "type": "string", - "description": "The categorized reason for disapproval." - } - } - } - }, - "filteringReasons": { - "type": "object", - "description": "The filtering reasons for the creative. Read-only. This field should not be set in requests.", - "properties": { - "date": { - "type": "string", - "description": "The date in ISO 8601 format for the data. The data is collected from 00:00:00 to 23:59:59 in PST." - }, - "reasons": { - "type": "array", - "description": "The filtering reasons.", - "items": { - "type": "object", - "properties": { - "filteringCount": { - "type": "string", - "description": "The number of times the creative was filtered for the status. The count is aggregated across all publishers on the exchange.", - "format": "int64" - }, - "filteringStatus": { - "type": "integer", - "description": "The filtering status code. Please refer to the creative-status-codes.txt file for different statuses.", - "format": "int32" - } - } - } - } - } - }, - "height": { - "type": "integer", - "description": "Ad height.", - "format": "int32", - "annotations": { - "required": [ - "adexchangebuyer.creatives.insert" - ] - } - }, - "impressionTrackingUrl": { - "type": "array", - "description": "The set of urls to be called to record an impression.", - "items": { + "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" - } }, - "kind": { - "type": "string", - "description": "Resource type.", - "default": "adexchangebuyer#creative" + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" }, - "nativeAd": { - "type": "object", - "description": "If nativeAd is set, HTMLSnippet and videoURL should not be set.", - "properties": { - "advertiser": { - "type": "string" - }, - "appIcon": { - "type": "object", - "description": "The app icon, for app download ads.", - "properties": { - "height": { - "type": "integer", - "format": "int32" + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", + "location": "query", + "type": "string" + }, + "userIp": { + "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", + "location": "query", + "type": "string" + } + }, + "protocol": "rest", + "resources": { + "accounts": { + "methods": { + "get": { + "description": "Gets one account by ID.", + "httpMethod": "GET", + "id": "adexchangebuyer.accounts.get", + "parameterOrder": [ + "id" + ], + "parameters": { + "id": { + "description": "The account id", + "format": "int32", + "location": "path", + "required": true, + "type": "integer" + } + }, + "path": "accounts/{id}", + "response": { + "$ref": "Account" + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.buyer" + ] }, - "url": { - "type": "string" + "list": { + "description": "Retrieves the authenticated user's list of accounts.", + "httpMethod": "GET", + "id": "adexchangebuyer.accounts.list", + "path": "accounts", + "response": { + "$ref": "AccountsList" + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.buyer" + ] }, - "width": { - "type": "integer", - "format": "int32" + "patch": { + "description": "Updates an existing account. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "adexchangebuyer.accounts.patch", + "parameterOrder": [ + "id" + ], + "parameters": { + "id": { + "description": "The account id", + "format": "int32", + "location": "path", + "required": true, + "type": "integer" + } + }, + "path": "accounts/{id}", + "request": { + "$ref": "Account" + }, + "response": { + "$ref": "Account" + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.buyer" + ] + }, + "update": { + "description": "Updates an existing account.", + "httpMethod": "PUT", + "id": "adexchangebuyer.accounts.update", + "parameterOrder": [ + "id" + ], + "parameters": { + "id": { + "description": "The account id", + "format": "int32", + "location": "path", + "required": true, + "type": "integer" + } + }, + "path": "accounts/{id}", + "request": { + "$ref": "Account" + }, + "response": { + "$ref": "Account" + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.buyer" + ] } - } - }, - "body": { - "type": "string", - "description": "A long description of the ad." - }, - "callToAction": { - "type": "string", - "description": "A label for the button that the user is supposed to click." - }, - "clickTrackingUrl": { - "type": "string", - "description": "The URL to use for click tracking." - }, - "headline": { - "type": "string", - "description": "A short title for the ad." - }, - "image": { - "type": "object", - "description": "A large image.", - "properties": { - "height": { - "type": "integer", - "format": "int32" - }, - "url": { - "type": "string" - }, - "width": { - "type": "integer", - "format": "int32" - } - } - }, - "impressionTrackingUrl": { - "type": "array", - "description": "The URLs are called when the impression is rendered.", - "items": { - "type": "string" - } - }, - "logo": { - "type": "object", - "description": "A smaller image, for the advertiser logo.", - "properties": { - "height": { - "type": "integer", - "format": "int32" - }, - "url": { - "type": "string" - }, - "width": { - "type": "integer", - "format": "int32" - } - } - }, - "price": { - "type": "string", - "description": "The price of the promoted app including the currency info." - }, - "starRating": { - "type": "number", - "description": "The app rating in the app store. Must be in the range [0-5].", - "format": "double" - }, - "store": { - "type": "string", - "description": "The URL to the app store to purchase/download the promoted app." } - } }, - "productCategories": { - "type": "array", - "description": "Detected product categories, if any. Read-only. This field should not be set in requests.", - "items": { - "type": "integer", - "format": "int32" - } + "billingInfo": { + "methods": { + "get": { + "description": "Returns the billing information for one account specified by account ID.", + "httpMethod": "GET", + "id": "adexchangebuyer.billingInfo.get", + "parameterOrder": [ + "accountId" + ], + "parameters": { + "accountId": { + "description": "The account id.", + "format": "int32", + "location": "path", + "required": true, + "type": "integer" + } + }, + "path": "billinginfo/{accountId}", + "response": { + "$ref": "BillingInfo" + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.buyer" + ] + }, + "list": { + "description": "Retrieves a list of billing information for all accounts of the authenticated user.", + "httpMethod": "GET", + "id": "adexchangebuyer.billingInfo.list", + "path": "billinginfo", + "response": { + "$ref": "BillingInfoList" + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.buyer" + ] + } + } }, - "restrictedCategories": { - "type": "array", - "description": "All restricted categories for the ads that may be shown from this snippet.", - "items": { - "type": "integer", - "format": "int32" - } + "budget": { + "methods": { + "get": { + "description": "Returns the budget information for the adgroup specified by the accountId and billingId.", + "httpMethod": "GET", + "id": "adexchangebuyer.budget.get", + "parameterOrder": [ + "accountId", + "billingId" + ], + "parameters": { + "accountId": { + "description": "The account id to get the budget information for.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "billingId": { + "description": "The billing id to get the budget information for.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "billinginfo/{accountId}/{billingId}", + "response": { + "$ref": "Budget" + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.buyer" + ] + }, + "patch": { + "description": "Updates the budget amount for the budget of the adgroup specified by the accountId and billingId, with the budget amount in the request. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "adexchangebuyer.budget.patch", + "parameterOrder": [ + "accountId", + "billingId" + ], + "parameters": { + "accountId": { + "description": "The account id associated with the budget being updated.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "billingId": { + "description": "The billing id associated with the budget being updated.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "billinginfo/{accountId}/{billingId}", + "request": { + "$ref": "Budget" + }, + "response": { + "$ref": "Budget" + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.buyer" + ] + }, + "update": { + "description": "Updates the budget amount for the budget of the adgroup specified by the accountId and billingId, with the budget amount in the request.", + "httpMethod": "PUT", + "id": "adexchangebuyer.budget.update", + "parameterOrder": [ + "accountId", + "billingId" + ], + "parameters": { + "accountId": { + "description": "The account id associated with the budget being updated.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "billingId": { + "description": "The billing id associated with the budget being updated.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "billinginfo/{accountId}/{billingId}", + "request": { + "$ref": "Budget" + }, + "response": { + "$ref": "Budget" + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.buyer" + ] + } + } }, - "sensitiveCategories": { - "type": "array", - "description": "Detected sensitive categories, if any. Read-only. This field should not be set in requests.", - "items": { - "type": "integer", - "format": "int32" - } + "creatives": { + "methods": { + "get": { + "description": "Gets the status for a single creative. A creative will be available 30-40 minutes after submission.", + "httpMethod": "GET", + "id": "adexchangebuyer.creatives.get", + "parameterOrder": [ + "accountId", + "buyerCreativeId" + ], + "parameters": { + "accountId": { + "description": "The id for the account that will serve this creative.", + "format": "int32", + "location": "path", + "required": true, + "type": "integer" + }, + "buyerCreativeId": { + "description": "The buyer-specific id for this creative.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "creatives/{accountId}/{buyerCreativeId}", + "response": { + "$ref": "Creative" + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.buyer" + ] + }, + "insert": { + "description": "Submit a new creative.", + "httpMethod": "POST", + "id": "adexchangebuyer.creatives.insert", + "path": "creatives", + "request": { + "$ref": "Creative" + }, + "response": { + "$ref": "Creative" + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.buyer" + ] + }, + "list": { + "description": "Retrieves a list of the authenticated user's active creatives. A creative will be available 30-40 minutes after submission.", + "httpMethod": "GET", + "id": "adexchangebuyer.creatives.list", + "parameters": { + "accountId": { + "description": "When specified, only creatives for the given account ids are returned.", + "format": "int32", + "location": "query", + "repeated": true, + "type": "integer" + }, + "buyerCreativeId": { + "description": "When specified, only creatives for the given buyer creative ids are returned.", + "location": "query", + "repeated": true, + "type": "string" + }, + "maxResults": { + "description": "Maximum number of entries returned on one result page. If not set, the default is 100. Optional.", + "format": "uint32", + "location": "query", + "maximum": "1000", + "minimum": "1", + "type": "integer" + }, + "pageToken": { + "description": "A continuation token, used to page through ad clients. To retrieve the next page, set this parameter to the value of \"nextPageToken\" from the previous response. Optional.", + "location": "query", + "type": "string" + }, + "statusFilter": { + "description": "When specified, only creatives having the given status are returned.", + "enum": [ + "approved", + "disapproved", + "not_checked" + ], + "enumDescriptions": [ + "Creatives which have been approved.", + "Creatives which have been disapproved.", + "Creatives whose status is not yet checked." + ], + "location": "query", + "type": "string" + } + }, + "path": "creatives", + "response": { + "$ref": "CreativesList" + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.buyer" + ] + } + } }, - "status": { - "type": "string", - "description": "Creative serving status. Read-only. This field should not be set in requests." - }, - "vendorType": { - "type": "array", - "description": "All vendor types for the ads that may be shown from this snippet.", - "items": { - "type": "integer", - "format": "int32" - } - }, - "version": { - "type": "integer", - "description": "The version for this creative. Read-only. This field should not be set in requests.", - "format": "int32" - }, - "videoURL": { - "type": "string", - "description": "The URL to fetch a video ad. If set, HTMLSnippet and the nativeAd should not be set." - }, - "width": { - "type": "integer", - "description": "Ad width.", - "format": "int32", - "annotations": { - "required": [ - "adexchangebuyer.creatives.insert" - ] - } - } - } - }, - "CreativesList": { - "id": "CreativesList", - "type": "object", - "description": "The creatives feed lists the active creatives for the Ad Exchange buyer accounts that the user has access to. Each entry in the feed corresponds to a single creative.", - "properties": { - "items": { - "type": "array", - "description": "A list of creatives.", - "items": { - "$ref": "Creative" - } - }, - "kind": { - "type": "string", - "description": "Resource type.", - "default": "adexchangebuyer#creativesList" - }, - "nextPageToken": { - "type": "string", - "description": "Continuation token used to page through creatives. To retrieve the next page of results, set the next request's \"pageToken\" value to this." - } - } - }, - "DirectDeal": { - "id": "DirectDeal", - "type": "object", - "description": "The configuration data for an Ad Exchange direct deal.", - "properties": { - "accountId": { - "type": "integer", - "description": "The account id of the buyer this deal is for.", - "format": "int32" - }, - "advertiser": { - "type": "string", - "description": "The name of the advertiser this deal is for." - }, - "allowsAlcohol": { - "type": "boolean", - "description": "Whether the publisher for this deal is eligible for alcohol ads." - }, - "buyerAccountId": { - "type": "string", - "description": "The account id that this deal was negotiated for. It is either the buyer or the client that this deal was negotiated on behalf of.", - "format": "int64" - }, - "currencyCode": { - "type": "string", - "description": "The currency code that applies to the fixed_cpm value. If not set then assumed to be USD." - }, - "dealTier": { - "type": "string", - "description": "The deal type such as programmatic reservation or fixed price and so on." - }, - "endTime": { - "type": "string", - "description": "End time for when this deal stops being active. If not set then this deal is valid until manually disabled by the publisher. In seconds since the epoch.", - "format": "int64" - }, - "fixedCpm": { - "type": "string", - "description": "The fixed price for this direct deal. In cpm micros of currency according to currency_code. If set, then this deal is eligible for the fixed price tier of buying (highest priority, pay exactly the configured fixed price).", - "format": "int64" - }, - "id": { - "type": "string", - "description": "Deal id.", - "format": "int64" - }, - "kind": { - "type": "string", - "description": "Resource type.", - "default": "adexchangebuyer#directDeal" - }, - "name": { - "type": "string", - "description": "Deal name." - }, - "privateExchangeMinCpm": { - "type": "string", - "description": "The minimum price for this direct deal. In cpm micros of currency according to currency_code. If set, then this deal is eligible for the private exchange tier of buying (below fixed price priority, run as a second price auction).", - "format": "int64" - }, - "publisherBlocksOverriden": { - "type": "boolean", - "description": "If true, the publisher has opted to have their blocks ignored when a creative is bid with for this deal." - }, - "sellerNetwork": { - "type": "string", - "description": "The name of the publisher offering this direct deal." - }, - "startTime": { - "type": "string", - "description": "Start time for when this deal becomes active. If not set then this deal is active immediately upon creation. In seconds since the epoch.", - "format": "int64" - } - } - }, - "DirectDealsList": { - "id": "DirectDealsList", - "type": "object", - "description": "A direct deals feed lists Direct Deals the Ad Exchange buyer account has access to. This includes direct deals set up for the buyer account as well as its merged stream seats.", - "properties": { "directDeals": { - "type": "array", - "description": "A list of direct deals relevant for your account.", - "items": { - "$ref": "DirectDeal" - } - }, - "kind": { - "type": "string", - "description": "Resource type.", - "default": "adexchangebuyer#directDealsList" - } - } - }, - "PerformanceReport": { - "id": "PerformanceReport", - "type": "object", - "description": "The configuration data for an Ad Exchange performance report list.", - "properties": { - "bidRate": { - "type": "number", - "description": "The number of bid responses with an ad.", - "format": "double" - }, - "bidRequestRate": { - "type": "number", - "description": "The number of bid requests sent to your bidder.", - "format": "double" - }, - "calloutStatusRate": { - "type": "array", - "description": "Rate of various prefiltering statuses per match. Please refer to the callout-status-codes.txt file for different statuses.", - "items": { - "type": "any" - } - }, - "cookieMatcherStatusRate": { - "type": "array", - "description": "Average QPS for cookie matcher operations.", - "items": { - "type": "any" - } - }, - "creativeStatusRate": { - "type": "array", - "description": "Rate of ads with a given status. Please refer to the creative-status-codes.txt file for different statuses.", - "items": { - "type": "any" - } - }, - "filteredBidRate": { - "type": "number", - "description": "The number of bid responses that were filtered due to a policy violation or other errors.", - "format": "double" - }, - "hostedMatchStatusRate": { - "type": "array", - "description": "Average QPS for hosted match operations.", - "items": { - "type": "any" - } - }, - "inventoryMatchRate": { - "type": "number", - "description": "The number of potential queries based on your pretargeting settings.", - "format": "double" - }, - "kind": { - "type": "string", - "description": "Resource type.", - "default": "adexchangebuyer#performanceReport" - }, - "latency50thPercentile": { - "type": "number", - "description": "The 50th percentile round trip latency(ms) as perceived from Google servers for the duration period covered by the report.", - "format": "double" - }, - "latency85thPercentile": { - "type": "number", - "description": "The 85th percentile round trip latency(ms) as perceived from Google servers for the duration period covered by the report.", - "format": "double" - }, - "latency95thPercentile": { - "type": "number", - "description": "The 95th percentile round trip latency(ms) as perceived from Google servers for the duration period covered by the report.", - "format": "double" - }, - "noQuotaInRegion": { - "type": "number", - "description": "Rate of various quota account statuses per quota check.", - "format": "double" - }, - "outOfQuota": { - "type": "number", - "description": "Rate of various quota account statuses per quota check.", - "format": "double" - }, - "pixelMatchRequests": { - "type": "number", - "description": "Average QPS for pixel match requests from clients.", - "format": "double" - }, - "pixelMatchResponses": { - "type": "number", - "description": "Average QPS for pixel match responses from clients.", - "format": "double" - }, - "quotaConfiguredLimit": { - "type": "number", - "description": "The configured quota limits for this account.", - "format": "double" - }, - "quotaThrottledLimit": { - "type": "number", - "description": "The throttled quota limits for this account.", - "format": "double" - }, - "region": { - "type": "string", - "description": "The trading location of this data." - }, - "successfulRequestRate": { - "type": "number", - "description": "The number of properly formed bid responses received by our servers within the deadline.", - "format": "double" - }, - "timestamp": { - "type": "string", - "description": "The unix timestamp of the starting time of this performance data.", - "format": "int64" - }, - "unsuccessfulRequestRate": { - "type": "number", - "description": "The number of bid responses that were unsuccessful due to timeouts, incorrect formatting, etc.", - "format": "double" - } - } - }, - "PerformanceReportList": { - "id": "PerformanceReportList", - "type": "object", - "description": "The configuration data for an Ad Exchange performance report list.", - "properties": { - "kind": { - "type": "string", - "description": "Resource type.", - "default": "adexchangebuyer#performanceReportList" + "methods": { + "get": { + "description": "Gets one direct deal by ID.", + "httpMethod": "GET", + "id": "adexchangebuyer.directDeals.get", + "parameterOrder": [ + "id" + ], + "parameters": { + "id": { + "description": "The direct deal id", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "directdeals/{id}", + "response": { + "$ref": "DirectDeal" + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.buyer" + ] + }, + "list": { + "description": "Retrieves the authenticated user's list of direct deals.", + "httpMethod": "GET", + "id": "adexchangebuyer.directDeals.list", + "path": "directdeals", + "response": { + "$ref": "DirectDealsList" + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.buyer" + ] + } + } }, "performanceReport": { - "type": "array", - "description": "A list of performance reports relevant for the account.", - "items": { - "$ref": "PerformanceReport" - } + "methods": { + "list": { + "description": "Retrieves the authenticated user's list of performance metrics.", + "httpMethod": "GET", + "id": "adexchangebuyer.performanceReport.list", + "parameterOrder": [ + "accountId", + "endDateTime", + "startDateTime" + ], + "parameters": { + "accountId": { + "description": "The account id to get the reports.", + "format": "int64", + "location": "query", + "required": true, + "type": "string" + }, + "endDateTime": { + "description": "The end time of the report in ISO 8601 timestamp format using UTC.", + "location": "query", + "required": true, + "type": "string" + }, + "maxResults": { + "description": "Maximum number of entries returned on one result page. If not set, the default is 100. Optional.", + "format": "uint32", + "location": "query", + "maximum": "1000", + "minimum": "1", + "type": "integer" + }, + "pageToken": { + "description": "A continuation token, used to page through performance reports. To retrieve the next page, set this parameter to the value of \"nextPageToken\" from the previous response. Optional.", + "location": "query", + "type": "string" + }, + "startDateTime": { + "description": "The start time of the report in ISO 8601 timestamp format using UTC.", + "location": "query", + "required": true, + "type": "string" + } + }, + "path": "performancereport", + "response": { + "$ref": "PerformanceReportList" + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.buyer" + ] + } + } + }, + "pretargetingConfig": { + "methods": { + "delete": { + "description": "Deletes an existing pretargeting config.", + "httpMethod": "DELETE", + "id": "adexchangebuyer.pretargetingConfig.delete", + "parameterOrder": [ + "accountId", + "configId" + ], + "parameters": { + "accountId": { + "description": "The account id to delete the pretargeting config for.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "configId": { + "description": "The specific id of the configuration to delete.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "pretargetingconfigs/{accountId}/{configId}", + "scopes": [ + "https://www.googleapis.com/auth/adexchange.buyer" + ] + }, + "get": { + "description": "Gets a specific pretargeting configuration", + "httpMethod": "GET", + "id": "adexchangebuyer.pretargetingConfig.get", + "parameterOrder": [ + "accountId", + "configId" + ], + "parameters": { + "accountId": { + "description": "The account id to get the pretargeting config for.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "configId": { + "description": "The specific id of the configuration to retrieve.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "pretargetingconfigs/{accountId}/{configId}", + "response": { + "$ref": "PretargetingConfig" + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.buyer" + ] + }, + "insert": { + "description": "Inserts a new pretargeting configuration.", + "httpMethod": "POST", + "id": "adexchangebuyer.pretargetingConfig.insert", + "parameterOrder": [ + "accountId" + ], + "parameters": { + "accountId": { + "description": "The account id to insert the pretargeting config for.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "pretargetingconfigs/{accountId}", + "request": { + "$ref": "PretargetingConfig" + }, + "response": { + "$ref": "PretargetingConfig" + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.buyer" + ] + }, + "list": { + "description": "Retrieves a list of the authenticated user's pretargeting configurations.", + "httpMethod": "GET", + "id": "adexchangebuyer.pretargetingConfig.list", + "parameterOrder": [ + "accountId" + ], + "parameters": { + "accountId": { + "description": "The account id to get the pretargeting configs for.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "pretargetingconfigs/{accountId}", + "response": { + "$ref": "PretargetingConfigList" + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.buyer" + ] + }, + "patch": { + "description": "Updates an existing pretargeting config. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "adexchangebuyer.pretargetingConfig.patch", + "parameterOrder": [ + "accountId", + "configId" + ], + "parameters": { + "accountId": { + "description": "The account id to update the pretargeting config for.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "configId": { + "description": "The specific id of the configuration to update.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "pretargetingconfigs/{accountId}/{configId}", + "request": { + "$ref": "PretargetingConfig" + }, + "response": { + "$ref": "PretargetingConfig" + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.buyer" + ] + }, + "update": { + "description": "Updates an existing pretargeting config.", + "httpMethod": "PUT", + "id": "adexchangebuyer.pretargetingConfig.update", + "parameterOrder": [ + "accountId", + "configId" + ], + "parameters": { + "accountId": { + "description": "The account id to update the pretargeting config for.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "configId": { + "description": "The specific id of the configuration to update.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "pretargetingconfigs/{accountId}/{configId}", + "request": { + "$ref": "PretargetingConfig" + }, + "response": { + "$ref": "PretargetingConfig" + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.buyer" + ] + } + } } - } }, - "PretargetingConfig": { - "id": "PretargetingConfig", - "type": "object", - "properties": { - "billingId": { - "type": "string", - "description": "The id for billing purposes, provided for reference. Leave this field blank for insert requests; the id will be generated automatically.", - "format": "int64" - }, - "configId": { - "type": "string", - "description": "The config id; generated automatically. Leave this field blank for insert requests.", - "format": "int64" - }, - "configName": { - "type": "string", - "description": "The name of the config. Must be unique. Required for all requests." - }, - "creativeType": { - "type": "array", - "description": "List must contain exactly one of PRETARGETING_CREATIVE_TYPE_HTML or PRETARGETING_CREATIVE_TYPE_VIDEO.", - "items": { - "type": "string" - } - }, - "dimensions": { - "type": "array", - "description": "Requests which allow one of these (width, height) pairs will match. All pairs must be supported ad dimensions.", - "items": { - "type": "object", + "revision": "20170810", + "rootUrl": "https://www.googleapis.com/", + "schemas": { + "Account": { + "description": "Configuration data for an Ad Exchange buyer account.", + "id": "Account", "properties": { - "height": { - "type": "string", - "description": "Height in pixels.", - "format": "int64" - }, - "width": { - "type": "string", - "description": "Width in pixels.", - "format": "int64" - } - } - } + "bidderLocation": { + "description": "Your bidder locations that have distinct URLs.", + "items": { + "properties": { + "maximumQps": { + "description": "The maximum queries per second the Ad Exchange will send.", + "format": "int32", + "type": "integer" + }, + "region": { + "description": "The geographical region the Ad Exchange should send requests from. Only used by some quota systems, but always setting the value is recommended. Allowed values: \n- ASIA \n- EUROPE \n- US_EAST \n- US_WEST", + "type": "string" + }, + "url": { + "description": "The URL to which the Ad Exchange will send bid requests.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "cookieMatchingNid": { + "description": "The nid parameter value used in cookie match requests. Please contact your technical account manager if you need to change this.", + "type": "string" + }, + "cookieMatchingUrl": { + "description": "The base URL used in cookie match requests.", + "type": "string" + }, + "id": { + "description": "Account id.", + "format": "int32", + "type": "integer" + }, + "kind": { + "default": "adexchangebuyer#account", + "description": "Resource type.", + "type": "string" + }, + "maximumActiveCreatives": { + "description": "The maximum number of active creatives that an account can have, where a creative is active if it was inserted or bid with in the last 30 days. Please contact your technical account manager if you need to change this.", + "format": "int32", + "type": "integer" + }, + "maximumTotalQps": { + "description": "The sum of all bidderLocation.maximumQps values cannot exceed this. Please contact your technical account manager if you need to change this.", + "format": "int32", + "type": "integer" + }, + "numberActiveCreatives": { + "description": "The number of creatives that this account inserted or bid with in the last 30 days.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" }, - "excludedContentLabels": { - "type": "array", - "description": "Requests with any of these content labels will not match. Values are from content-labels.txt in the downloadable files section.", - "items": { - "type": "string", - "format": "int64" - } - }, - "excludedGeoCriteriaIds": { - "type": "array", - "description": "Requests containing any of these geo criteria ids will not match.", - "items": { - "type": "string", - "format": "int64" - } - }, - "excludedPlacements": { - "type": "array", - "description": "Requests containing any of these placements will not match.", - "items": { - "type": "object", + "AccountsList": { + "description": "An account feed lists Ad Exchange buyer accounts that the user has access to. Each entry in the feed corresponds to a single buyer account.", + "id": "AccountsList", "properties": { - "token": { - "type": "string", - "description": "The value of the placement. Interpretation depends on the placement type, e.g. URL for a site placement, channel name for a channel placement, app id for a mobile app placement." - }, - "type": { - "type": "string", - "description": "The type of the placement." - } - } - } + "items": { + "description": "A list of accounts.", + "items": { + "$ref": "Account" + }, + "type": "array" + }, + "kind": { + "default": "adexchangebuyer#accountsList", + "description": "Resource type.", + "type": "string" + } + }, + "type": "object" }, - "excludedUserLists": { - "type": "array", - "description": "Requests containing any of these users list ids will not match.", - "items": { - "type": "string", - "format": "int64" - } - }, - "excludedVerticals": { - "type": "array", - "description": "Requests containing any of these vertical ids will not match. Values are from the publisher-verticals.txt file in the downloadable files section.", - "items": { - "type": "string", - "format": "int64" - } - }, - "geoCriteriaIds": { - "type": "array", - "description": "Requests containing any of these geo criteria ids will match.", - "items": { - "type": "string", - "format": "int64" - } - }, - "isActive": { - "type": "boolean", - "description": "Whether this config is active. Required for all requests." - }, - "kind": { - "type": "string", - "description": "The kind of the resource, i.e. \"adexchangebuyer#pretargetingConfig\".", - "default": "adexchangebuyer#pretargetingConfig" - }, - "languages": { - "type": "array", - "description": "Request containing any of these language codes will match.", - "items": { - "type": "string" - } - }, - "mobileCarriers": { - "type": "array", - "description": "Requests containing any of these mobile carrier ids will match. Values are from mobile-carriers.csv in the downloadable files section.", - "items": { - "type": "string", - "format": "int64" - } - }, - "mobileDevices": { - "type": "array", - "description": "Requests containing any of these mobile device ids will match. Values are from mobile-devices.csv in the downloadable files section.", - "items": { - "type": "string", - "format": "int64" - } - }, - "mobileOperatingSystemVersions": { - "type": "array", - "description": "Requests containing any of these mobile operating system version ids will match. Values are from mobile-os.csv in the downloadable files section.", - "items": { - "type": "string", - "format": "int64" - } - }, - "placements": { - "type": "array", - "description": "Requests containing any of these placements will match.", - "items": { - "type": "object", + "BillingInfo": { + "description": "The configuration data for an Ad Exchange billing info.", + "id": "BillingInfo", "properties": { - "token": { - "type": "string", - "description": "The value of the placement. Interpretation depends on the placement type, e.g. URL for a site placement, channel name for a channel placement, app id for a mobile app placement." - }, - "type": { - "type": "string", - "description": "The type of the placement." - } - } - } + "accountId": { + "description": "Account id.", + "format": "int32", + "type": "integer" + }, + "accountName": { + "description": "Account name.", + "type": "string" + }, + "billingId": { + "description": "A list of adgroup IDs associated with this particular account. These IDs may show up as part of a realtime bidding BidRequest, which indicates a bid request for this account.", + "items": { + "type": "string" + }, + "type": "array" + }, + "kind": { + "default": "adexchangebuyer#billingInfo", + "description": "Resource type.", + "type": "string" + } + }, + "type": "object" }, - "platforms": { - "type": "array", - "description": "Requests matching any of these platforms will match. Possible values are PRETARGETING_PLATFORM_MOBILE, PRETARGETING_PLATFORM_DESKTOP, and PRETARGETING_PLATFORM_TABLET.", - "items": { - "type": "string" - } + "BillingInfoList": { + "description": "A billing info feed lists Billing Info the Ad Exchange buyer account has access to. Each entry in the feed corresponds to a single billing info.", + "id": "BillingInfoList", + "properties": { + "items": { + "description": "A list of billing info relevant for your account.", + "items": { + "$ref": "BillingInfo" + }, + "type": "array" + }, + "kind": { + "default": "adexchangebuyer#billingInfoList", + "description": "Resource type.", + "type": "string" + } + }, + "type": "object" }, - "supportedCreativeAttributes": { - "type": "array", - "description": "Creative attributes should be declared here if all creatives corresponding to this pretargeting configuration have that creative attribute. Values are from pretargetable-creative-attributes.txt in the downloadable files section.", - "items": { - "type": "string", - "format": "int64" - } + "Budget": { + "description": "The configuration data for Ad Exchange RTB - Budget API.", + "id": "Budget", + "properties": { + "accountId": { + "description": "The id of the account. This is required for get and update requests.", + "format": "int64", + "type": "string" + }, + "billingId": { + "description": "The billing id to determine which adgroup to provide budget information for. This is required for get and update requests.", + "format": "int64", + "type": "string" + }, + "budgetAmount": { + "description": "The daily budget amount in unit amount of the account currency to apply for the billingId provided. This is required for update requests.", + "format": "int64", + "type": "string" + }, + "currencyCode": { + "description": "The currency code for the buyer. This cannot be altered here.", + "type": "string" + }, + "id": { + "description": "The unique id that describes this item.", + "type": "string" + }, + "kind": { + "default": "adexchangebuyer#budget", + "description": "The kind of the resource, i.e. \"adexchangebuyer#budget\".", + "type": "string" + } + }, + "type": "object" }, - "userLists": { - "type": "array", - "description": "Requests containing any of these user list ids will match.", - "items": { - "type": "string", - "format": "int64" - } + "Creative": { + "description": "A creative and its classification data.", + "id": "Creative", + "properties": { + "HTMLSnippet": { + "description": "The HTML snippet that displays the ad when inserted in the web page. If set, videoURL should not be set.", + "type": "string" + }, + "accountId": { + "annotations": { + "required": [ + "adexchangebuyer.creatives.insert" + ] + }, + "description": "Account id.", + "format": "int32", + "type": "integer" + }, + "advertiserId": { + "description": "Detected advertiser id, if any. Read-only. This field should not be set in requests.", + "items": { + "format": "int64", + "type": "string" + }, + "type": "array" + }, + "advertiserName": { + "annotations": { + "required": [ + "adexchangebuyer.creatives.insert" + ] + }, + "description": "The name of the company being advertised in the creative.", + "type": "string" + }, + "agencyId": { + "description": "The agency id for this creative.", + "format": "int64", + "type": "string" + }, + "apiUploadTimestamp": { + "description": "The last upload timestamp of this creative if it was uploaded via API. Read-only. The value of this field is generated, and will be ignored for uploads. (formatted RFC 3339 timestamp).", + "format": "date-time", + "type": "string" + }, + "attribute": { + "description": "All attributes for the ads that may be shown from this snippet.", + "items": { + "format": "int32", + "type": "integer" + }, + "type": "array" + }, + "buyerCreativeId": { + "annotations": { + "required": [ + "adexchangebuyer.creatives.insert" + ] + }, + "description": "A buyer-specific id identifying the creative in this ad.", + "type": "string" + }, + "clickThroughUrl": { + "annotations": { + "required": [ + "adexchangebuyer.creatives.insert" + ] + }, + "description": "The set of destination urls for the snippet.", + "items": { + "type": "string" + }, + "type": "array" + }, + "corrections": { + "description": "Shows any corrections that were applied to this creative. Read-only. This field should not be set in requests.", + "items": { + "properties": { + "details": { + "description": "Additional details about the correction.", + "items": { + "type": "string" + }, + "type": "array" + }, + "reason": { + "description": "The type of correction that was applied to the creative.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "disapprovalReasons": { + "description": "The reasons for disapproval, if any. Note that not all disapproval reasons may be categorized, so it is possible for the creative to have a status of DISAPPROVED with an empty list for disapproval_reasons. In this case, please reach out to your TAM to help debug the issue. Read-only. This field should not be set in requests.", + "items": { + "properties": { + "details": { + "description": "Additional details about the reason for disapproval.", + "items": { + "type": "string" + }, + "type": "array" + }, + "reason": { + "description": "The categorized reason for disapproval.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "filteringReasons": { + "description": "The filtering reasons for the creative. Read-only. This field should not be set in requests.", + "properties": { + "date": { + "description": "The date in ISO 8601 format for the data. The data is collected from 00:00:00 to 23:59:59 in PST.", + "type": "string" + }, + "reasons": { + "description": "The filtering reasons.", + "items": { + "properties": { + "filteringCount": { + "description": "The number of times the creative was filtered for the status. The count is aggregated across all publishers on the exchange.", + "format": "int64", + "type": "string" + }, + "filteringStatus": { + "description": "The filtering status code. Please refer to the creative-status-codes.txt file for different statuses.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "type": "array" + } + }, + "type": "object" + }, + "height": { + "annotations": { + "required": [ + "adexchangebuyer.creatives.insert" + ] + }, + "description": "Ad height.", + "format": "int32", + "type": "integer" + }, + "impressionTrackingUrl": { + "description": "The set of urls to be called to record an impression.", + "items": { + "type": "string" + }, + "type": "array" + }, + "kind": { + "default": "adexchangebuyer#creative", + "description": "Resource type.", + "type": "string" + }, + "nativeAd": { + "description": "If nativeAd is set, HTMLSnippet and videoURL should not be set.", + "properties": { + "advertiser": { + "type": "string" + }, + "appIcon": { + "description": "The app icon, for app download ads.", + "properties": { + "height": { + "format": "int32", + "type": "integer" + }, + "url": { + "type": "string" + }, + "width": { + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "body": { + "description": "A long description of the ad.", + "type": "string" + }, + "callToAction": { + "description": "A label for the button that the user is supposed to click.", + "type": "string" + }, + "clickTrackingUrl": { + "description": "The URL to use for click tracking.", + "type": "string" + }, + "headline": { + "description": "A short title for the ad.", + "type": "string" + }, + "image": { + "description": "A large image.", + "properties": { + "height": { + "format": "int32", + "type": "integer" + }, + "url": { + "type": "string" + }, + "width": { + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "impressionTrackingUrl": { + "description": "The URLs are called when the impression is rendered.", + "items": { + "type": "string" + }, + "type": "array" + }, + "logo": { + "description": "A smaller image, for the advertiser logo.", + "properties": { + "height": { + "format": "int32", + "type": "integer" + }, + "url": { + "type": "string" + }, + "width": { + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "price": { + "description": "The price of the promoted app including the currency info.", + "type": "string" + }, + "starRating": { + "description": "The app rating in the app store. Must be in the range [0-5].", + "format": "double", + "type": "number" + }, + "store": { + "description": "The URL to the app store to purchase/download the promoted app.", + "type": "string" + } + }, + "type": "object" + }, + "productCategories": { + "description": "Detected product categories, if any. Read-only. This field should not be set in requests.", + "items": { + "format": "int32", + "type": "integer" + }, + "type": "array" + }, + "restrictedCategories": { + "description": "All restricted categories for the ads that may be shown from this snippet.", + "items": { + "format": "int32", + "type": "integer" + }, + "type": "array" + }, + "sensitiveCategories": { + "description": "Detected sensitive categories, if any. Read-only. This field should not be set in requests.", + "items": { + "format": "int32", + "type": "integer" + }, + "type": "array" + }, + "status": { + "description": "Creative serving status. Read-only. This field should not be set in requests.", + "type": "string" + }, + "vendorType": { + "description": "All vendor types for the ads that may be shown from this snippet.", + "items": { + "format": "int32", + "type": "integer" + }, + "type": "array" + }, + "version": { + "description": "The version for this creative. Read-only. This field should not be set in requests.", + "format": "int32", + "type": "integer" + }, + "videoURL": { + "description": "The URL to fetch a video ad. If set, HTMLSnippet and the nativeAd should not be set.", + "type": "string" + }, + "width": { + "annotations": { + "required": [ + "adexchangebuyer.creatives.insert" + ] + }, + "description": "Ad width.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" }, - "vendorTypes": { - "type": "array", - "description": "Requests that allow any of these vendor ids will match. Values are from vendors.txt in the downloadable files section.", - "items": { - "type": "string", - "format": "int64" - } + "CreativesList": { + "description": "The creatives feed lists the active creatives for the Ad Exchange buyer accounts that the user has access to. Each entry in the feed corresponds to a single creative.", + "id": "CreativesList", + "properties": { + "items": { + "description": "A list of creatives.", + "items": { + "$ref": "Creative" + }, + "type": "array" + }, + "kind": { + "default": "adexchangebuyer#creativesList", + "description": "Resource type.", + "type": "string" + }, + "nextPageToken": { + "description": "Continuation token used to page through creatives. To retrieve the next page of results, set the next request's \"pageToken\" value to this.", + "type": "string" + } + }, + "type": "object" }, - "verticals": { - "type": "array", - "description": "Requests containing any of these vertical ids will match.", - "items": { - "type": "string", - "format": "int64" - } + "DirectDeal": { + "description": "The configuration data for an Ad Exchange direct deal.", + "id": "DirectDeal", + "properties": { + "accountId": { + "description": "The account id of the buyer this deal is for.", + "format": "int32", + "type": "integer" + }, + "advertiser": { + "description": "The name of the advertiser this deal is for.", + "type": "string" + }, + "allowsAlcohol": { + "description": "Whether the publisher for this deal is eligible for alcohol ads.", + "type": "boolean" + }, + "buyerAccountId": { + "description": "The account id that this deal was negotiated for. It is either the buyer or the client that this deal was negotiated on behalf of.", + "format": "int64", + "type": "string" + }, + "currencyCode": { + "description": "The currency code that applies to the fixed_cpm value. If not set then assumed to be USD.", + "type": "string" + }, + "dealTier": { + "description": "The deal type such as programmatic reservation or fixed price and so on.", + "type": "string" + }, + "endTime": { + "description": "End time for when this deal stops being active. If not set then this deal is valid until manually disabled by the publisher. In seconds since the epoch.", + "format": "int64", + "type": "string" + }, + "fixedCpm": { + "description": "The fixed price for this direct deal. In cpm micros of currency according to currency_code. If set, then this deal is eligible for the fixed price tier of buying (highest priority, pay exactly the configured fixed price).", + "format": "int64", + "type": "string" + }, + "id": { + "description": "Deal id.", + "format": "int64", + "type": "string" + }, + "kind": { + "default": "adexchangebuyer#directDeal", + "description": "Resource type.", + "type": "string" + }, + "name": { + "description": "Deal name.", + "type": "string" + }, + "privateExchangeMinCpm": { + "description": "The minimum price for this direct deal. In cpm micros of currency according to currency_code. If set, then this deal is eligible for the private exchange tier of buying (below fixed price priority, run as a second price auction).", + "format": "int64", + "type": "string" + }, + "publisherBlocksOverriden": { + "description": "If true, the publisher has opted to have their blocks ignored when a creative is bid with for this deal.", + "type": "boolean" + }, + "sellerNetwork": { + "description": "The name of the publisher offering this direct deal.", + "type": "string" + }, + "startTime": { + "description": "Start time for when this deal becomes active. If not set then this deal is active immediately upon creation. In seconds since the epoch.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "DirectDealsList": { + "description": "A direct deals feed lists Direct Deals the Ad Exchange buyer account has access to. This includes direct deals set up for the buyer account as well as its merged stream seats.", + "id": "DirectDealsList", + "properties": { + "directDeals": { + "description": "A list of direct deals relevant for your account.", + "items": { + "$ref": "DirectDeal" + }, + "type": "array" + }, + "kind": { + "default": "adexchangebuyer#directDealsList", + "description": "Resource type.", + "type": "string" + } + }, + "type": "object" + }, + "PerformanceReport": { + "description": "The configuration data for an Ad Exchange performance report list.", + "id": "PerformanceReport", + "properties": { + "bidRate": { + "description": "The number of bid responses with an ad.", + "format": "double", + "type": "number" + }, + "bidRequestRate": { + "description": "The number of bid requests sent to your bidder.", + "format": "double", + "type": "number" + }, + "calloutStatusRate": { + "description": "Rate of various prefiltering statuses per match. Please refer to the callout-status-codes.txt file for different statuses.", + "items": { + "type": "any" + }, + "type": "array" + }, + "cookieMatcherStatusRate": { + "description": "Average QPS for cookie matcher operations.", + "items": { + "type": "any" + }, + "type": "array" + }, + "creativeStatusRate": { + "description": "Rate of ads with a given status. Please refer to the creative-status-codes.txt file for different statuses.", + "items": { + "type": "any" + }, + "type": "array" + }, + "filteredBidRate": { + "description": "The number of bid responses that were filtered due to a policy violation or other errors.", + "format": "double", + "type": "number" + }, + "hostedMatchStatusRate": { + "description": "Average QPS for hosted match operations.", + "items": { + "type": "any" + }, + "type": "array" + }, + "inventoryMatchRate": { + "description": "The number of potential queries based on your pretargeting settings.", + "format": "double", + "type": "number" + }, + "kind": { + "default": "adexchangebuyer#performanceReport", + "description": "Resource type.", + "type": "string" + }, + "latency50thPercentile": { + "description": "The 50th percentile round trip latency(ms) as perceived from Google servers for the duration period covered by the report.", + "format": "double", + "type": "number" + }, + "latency85thPercentile": { + "description": "The 85th percentile round trip latency(ms) as perceived from Google servers for the duration period covered by the report.", + "format": "double", + "type": "number" + }, + "latency95thPercentile": { + "description": "The 95th percentile round trip latency(ms) as perceived from Google servers for the duration period covered by the report.", + "format": "double", + "type": "number" + }, + "noQuotaInRegion": { + "description": "Rate of various quota account statuses per quota check.", + "format": "double", + "type": "number" + }, + "outOfQuota": { + "description": "Rate of various quota account statuses per quota check.", + "format": "double", + "type": "number" + }, + "pixelMatchRequests": { + "description": "Average QPS for pixel match requests from clients.", + "format": "double", + "type": "number" + }, + "pixelMatchResponses": { + "description": "Average QPS for pixel match responses from clients.", + "format": "double", + "type": "number" + }, + "quotaConfiguredLimit": { + "description": "The configured quota limits for this account.", + "format": "double", + "type": "number" + }, + "quotaThrottledLimit": { + "description": "The throttled quota limits for this account.", + "format": "double", + "type": "number" + }, + "region": { + "description": "The trading location of this data.", + "type": "string" + }, + "successfulRequestRate": { + "description": "The number of properly formed bid responses received by our servers within the deadline.", + "format": "double", + "type": "number" + }, + "timestamp": { + "description": "The unix timestamp of the starting time of this performance data.", + "format": "int64", + "type": "string" + }, + "unsuccessfulRequestRate": { + "description": "The number of bid responses that were unsuccessful due to timeouts, incorrect formatting, etc.", + "format": "double", + "type": "number" + } + }, + "type": "object" + }, + "PerformanceReportList": { + "description": "The configuration data for an Ad Exchange performance report list.", + "id": "PerformanceReportList", + "properties": { + "kind": { + "default": "adexchangebuyer#performanceReportList", + "description": "Resource type.", + "type": "string" + }, + "performanceReport": { + "description": "A list of performance reports relevant for the account.", + "items": { + "$ref": "PerformanceReport" + }, + "type": "array" + } + }, + "type": "object" + }, + "PretargetingConfig": { + "id": "PretargetingConfig", + "properties": { + "billingId": { + "description": "The id for billing purposes, provided for reference. Leave this field blank for insert requests; the id will be generated automatically.", + "format": "int64", + "type": "string" + }, + "configId": { + "description": "The config id; generated automatically. Leave this field blank for insert requests.", + "format": "int64", + "type": "string" + }, + "configName": { + "description": "The name of the config. Must be unique. Required for all requests.", + "type": "string" + }, + "creativeType": { + "description": "List must contain exactly one of PRETARGETING_CREATIVE_TYPE_HTML or PRETARGETING_CREATIVE_TYPE_VIDEO.", + "items": { + "type": "string" + }, + "type": "array" + }, + "dimensions": { + "description": "Requests which allow one of these (width, height) pairs will match. All pairs must be supported ad dimensions.", + "items": { + "properties": { + "height": { + "description": "Height in pixels.", + "format": "int64", + "type": "string" + }, + "width": { + "description": "Width in pixels.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "excludedContentLabels": { + "description": "Requests with any of these content labels will not match. Values are from content-labels.txt in the downloadable files section.", + "items": { + "format": "int64", + "type": "string" + }, + "type": "array" + }, + "excludedGeoCriteriaIds": { + "description": "Requests containing any of these geo criteria ids will not match.", + "items": { + "format": "int64", + "type": "string" + }, + "type": "array" + }, + "excludedPlacements": { + "description": "Requests containing any of these placements will not match.", + "items": { + "properties": { + "token": { + "description": "The value of the placement. Interpretation depends on the placement type, e.g. URL for a site placement, channel name for a channel placement, app id for a mobile app placement.", + "type": "string" + }, + "type": { + "description": "The type of the placement.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "excludedUserLists": { + "description": "Requests containing any of these users list ids will not match.", + "items": { + "format": "int64", + "type": "string" + }, + "type": "array" + }, + "excludedVerticals": { + "description": "Requests containing any of these vertical ids will not match. Values are from the publisher-verticals.txt file in the downloadable files section.", + "items": { + "format": "int64", + "type": "string" + }, + "type": "array" + }, + "geoCriteriaIds": { + "description": "Requests containing any of these geo criteria ids will match.", + "items": { + "format": "int64", + "type": "string" + }, + "type": "array" + }, + "isActive": { + "description": "Whether this config is active. Required for all requests.", + "type": "boolean" + }, + "kind": { + "default": "adexchangebuyer#pretargetingConfig", + "description": "The kind of the resource, i.e. \"adexchangebuyer#pretargetingConfig\".", + "type": "string" + }, + "languages": { + "description": "Request containing any of these language codes will match.", + "items": { + "type": "string" + }, + "type": "array" + }, + "mobileCarriers": { + "description": "Requests containing any of these mobile carrier ids will match. Values are from mobile-carriers.csv in the downloadable files section.", + "items": { + "format": "int64", + "type": "string" + }, + "type": "array" + }, + "mobileDevices": { + "description": "Requests containing any of these mobile device ids will match. Values are from mobile-devices.csv in the downloadable files section.", + "items": { + "format": "int64", + "type": "string" + }, + "type": "array" + }, + "mobileOperatingSystemVersions": { + "description": "Requests containing any of these mobile operating system version ids will match. Values are from mobile-os.csv in the downloadable files section.", + "items": { + "format": "int64", + "type": "string" + }, + "type": "array" + }, + "placements": { + "description": "Requests containing any of these placements will match.", + "items": { + "properties": { + "token": { + "description": "The value of the placement. Interpretation depends on the placement type, e.g. URL for a site placement, channel name for a channel placement, app id for a mobile app placement.", + "type": "string" + }, + "type": { + "description": "The type of the placement.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "platforms": { + "description": "Requests matching any of these platforms will match. Possible values are PRETARGETING_PLATFORM_MOBILE, PRETARGETING_PLATFORM_DESKTOP, and PRETARGETING_PLATFORM_TABLET.", + "items": { + "type": "string" + }, + "type": "array" + }, + "supportedCreativeAttributes": { + "description": "Creative attributes should be declared here if all creatives corresponding to this pretargeting configuration have that creative attribute. Values are from pretargetable-creative-attributes.txt in the downloadable files section.", + "items": { + "format": "int64", + "type": "string" + }, + "type": "array" + }, + "userLists": { + "description": "Requests containing any of these user list ids will match.", + "items": { + "format": "int64", + "type": "string" + }, + "type": "array" + }, + "vendorTypes": { + "description": "Requests that allow any of these vendor ids will match. Values are from vendors.txt in the downloadable files section.", + "items": { + "format": "int64", + "type": "string" + }, + "type": "array" + }, + "verticals": { + "description": "Requests containing any of these vertical ids will match.", + "items": { + "format": "int64", + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "PretargetingConfigList": { + "id": "PretargetingConfigList", + "properties": { + "items": { + "description": "A list of pretargeting configs", + "items": { + "$ref": "PretargetingConfig" + }, + "type": "array" + }, + "kind": { + "default": "adexchangebuyer#pretargetingConfigList", + "description": "Resource type.", + "type": "string" + } + }, + "type": "object" } - } }, - "PretargetingConfigList": { - "id": "PretargetingConfigList", - "type": "object", - "properties": { - "items": { - "type": "array", - "description": "A list of pretargeting configs", - "items": { - "$ref": "PretargetingConfig" - } - }, - "kind": { - "type": "string", - "description": "Resource type.", - "default": "adexchangebuyer#pretargetingConfigList" - } - } - } - }, - "resources": { - "accounts": { - "methods": { - "get": { - "id": "adexchangebuyer.accounts.get", - "path": "accounts/{id}", - "httpMethod": "GET", - "description": "Gets one account by ID.", - "parameters": { - "id": { - "type": "integer", - "description": "The account id", - "required": true, - "format": "int32", - "location": "path" - } - }, - "parameterOrder": [ - "id" - ], - "response": { - "$ref": "Account" - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ] - }, - "list": { - "id": "adexchangebuyer.accounts.list", - "path": "accounts", - "httpMethod": "GET", - "description": "Retrieves the authenticated user's list of accounts.", - "response": { - "$ref": "AccountsList" - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ] - }, - "patch": { - "id": "adexchangebuyer.accounts.patch", - "path": "accounts/{id}", - "httpMethod": "PATCH", - "description": "Updates an existing account. This method supports patch semantics.", - "parameters": { - "id": { - "type": "integer", - "description": "The account id", - "required": true, - "format": "int32", - "location": "path" - } - }, - "parameterOrder": [ - "id" - ], - "request": { - "$ref": "Account" - }, - "response": { - "$ref": "Account" - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ] - }, - "update": { - "id": "adexchangebuyer.accounts.update", - "path": "accounts/{id}", - "httpMethod": "PUT", - "description": "Updates an existing account.", - "parameters": { - "id": { - "type": "integer", - "description": "The account id", - "required": true, - "format": "int32", - "location": "path" - } - }, - "parameterOrder": [ - "id" - ], - "request": { - "$ref": "Account" - }, - "response": { - "$ref": "Account" - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ] - } - } - }, - "billingInfo": { - "methods": { - "get": { - "id": "adexchangebuyer.billingInfo.get", - "path": "billinginfo/{accountId}", - "httpMethod": "GET", - "description": "Returns the billing information for one account specified by account ID.", - "parameters": { - "accountId": { - "type": "integer", - "description": "The account id.", - "required": true, - "format": "int32", - "location": "path" - } - }, - "parameterOrder": [ - "accountId" - ], - "response": { - "$ref": "BillingInfo" - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ] - }, - "list": { - "id": "adexchangebuyer.billingInfo.list", - "path": "billinginfo", - "httpMethod": "GET", - "description": "Retrieves a list of billing information for all accounts of the authenticated user.", - "response": { - "$ref": "BillingInfoList" - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ] - } - } - }, - "budget": { - "methods": { - "get": { - "id": "adexchangebuyer.budget.get", - "path": "billinginfo/{accountId}/{billingId}", - "httpMethod": "GET", - "description": "Returns the budget information for the adgroup specified by the accountId and billingId.", - "parameters": { - "accountId": { - "type": "string", - "description": "The account id to get the budget information for.", - "required": true, - "format": "int64", - "location": "path" - }, - "billingId": { - "type": "string", - "description": "The billing id to get the budget information for.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "accountId", - "billingId" - ], - "response": { - "$ref": "Budget" - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ] - }, - "patch": { - "id": "adexchangebuyer.budget.patch", - "path": "billinginfo/{accountId}/{billingId}", - "httpMethod": "PATCH", - "description": "Updates the budget amount for the budget of the adgroup specified by the accountId and billingId, with the budget amount in the request. This method supports patch semantics.", - "parameters": { - "accountId": { - "type": "string", - "description": "The account id associated with the budget being updated.", - "required": true, - "format": "int64", - "location": "path" - }, - "billingId": { - "type": "string", - "description": "The billing id associated with the budget being updated.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "accountId", - "billingId" - ], - "request": { - "$ref": "Budget" - }, - "response": { - "$ref": "Budget" - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ] - }, - "update": { - "id": "adexchangebuyer.budget.update", - "path": "billinginfo/{accountId}/{billingId}", - "httpMethod": "PUT", - "description": "Updates the budget amount for the budget of the adgroup specified by the accountId and billingId, with the budget amount in the request.", - "parameters": { - "accountId": { - "type": "string", - "description": "The account id associated with the budget being updated.", - "required": true, - "format": "int64", - "location": "path" - }, - "billingId": { - "type": "string", - "description": "The billing id associated with the budget being updated.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "accountId", - "billingId" - ], - "request": { - "$ref": "Budget" - }, - "response": { - "$ref": "Budget" - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ] - } - } - }, - "creatives": { - "methods": { - "get": { - "id": "adexchangebuyer.creatives.get", - "path": "creatives/{accountId}/{buyerCreativeId}", - "httpMethod": "GET", - "description": "Gets the status for a single creative. A creative will be available 30-40 minutes after submission.", - "parameters": { - "accountId": { - "type": "integer", - "description": "The id for the account that will serve this creative.", - "required": true, - "format": "int32", - "location": "path" - }, - "buyerCreativeId": { - "type": "string", - "description": "The buyer-specific id for this creative.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "accountId", - "buyerCreativeId" - ], - "response": { - "$ref": "Creative" - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ] - }, - "insert": { - "id": "adexchangebuyer.creatives.insert", - "path": "creatives", - "httpMethod": "POST", - "description": "Submit a new creative.", - "request": { - "$ref": "Creative" - }, - "response": { - "$ref": "Creative" - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ] - }, - "list": { - "id": "adexchangebuyer.creatives.list", - "path": "creatives", - "httpMethod": "GET", - "description": "Retrieves a list of the authenticated user's active creatives. A creative will be available 30-40 minutes after submission.", - "parameters": { - "accountId": { - "type": "integer", - "description": "When specified, only creatives for the given account ids are returned.", - "format": "int32", - "repeated": true, - "location": "query" - }, - "buyerCreativeId": { - "type": "string", - "description": "When specified, only creatives for the given buyer creative ids are returned.", - "repeated": true, - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "Maximum number of entries returned on one result page. If not set, the default is 100. Optional.", - "format": "uint32", - "minimum": "1", - "maximum": "1000", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "A continuation token, used to page through ad clients. To retrieve the next page, set this parameter to the value of \"nextPageToken\" from the previous response. Optional.", - "location": "query" - }, - "statusFilter": { - "type": "string", - "description": "When specified, only creatives having the given status are returned.", - "enum": [ - "approved", - "disapproved", - "not_checked" - ], - "enumDescriptions": [ - "Creatives which have been approved.", - "Creatives which have been disapproved.", - "Creatives whose status is not yet checked." - ], - "location": "query" - } - }, - "response": { - "$ref": "CreativesList" - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ] - } - } - }, - "directDeals": { - "methods": { - "get": { - "id": "adexchangebuyer.directDeals.get", - "path": "directdeals/{id}", - "httpMethod": "GET", - "description": "Gets one direct deal by ID.", - "parameters": { - "id": { - "type": "string", - "description": "The direct deal id", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "id" - ], - "response": { - "$ref": "DirectDeal" - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ] - }, - "list": { - "id": "adexchangebuyer.directDeals.list", - "path": "directdeals", - "httpMethod": "GET", - "description": "Retrieves the authenticated user's list of direct deals.", - "response": { - "$ref": "DirectDealsList" - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ] - } - } - }, - "performanceReport": { - "methods": { - "list": { - "id": "adexchangebuyer.performanceReport.list", - "path": "performancereport", - "httpMethod": "GET", - "description": "Retrieves the authenticated user's list of performance metrics.", - "parameters": { - "accountId": { - "type": "string", - "description": "The account id to get the reports.", - "required": true, - "format": "int64", - "location": "query" - }, - "endDateTime": { - "type": "string", - "description": "The end time of the report in ISO 8601 timestamp format using UTC.", - "required": true, - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "Maximum number of entries returned on one result page. If not set, the default is 100. Optional.", - "format": "uint32", - "minimum": "1", - "maximum": "1000", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "A continuation token, used to page through performance reports. To retrieve the next page, set this parameter to the value of \"nextPageToken\" from the previous response. Optional.", - "location": "query" - }, - "startDateTime": { - "type": "string", - "description": "The start time of the report in ISO 8601 timestamp format using UTC.", - "required": true, - "location": "query" - } - }, - "parameterOrder": [ - "accountId", - "endDateTime", - "startDateTime" - ], - "response": { - "$ref": "PerformanceReportList" - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ] - } - } - }, - "pretargetingConfig": { - "methods": { - "delete": { - "id": "adexchangebuyer.pretargetingConfig.delete", - "path": "pretargetingconfigs/{accountId}/{configId}", - "httpMethod": "DELETE", - "description": "Deletes an existing pretargeting config.", - "parameters": { - "accountId": { - "type": "string", - "description": "The account id to delete the pretargeting config for.", - "required": true, - "format": "int64", - "location": "path" - }, - "configId": { - "type": "string", - "description": "The specific id of the configuration to delete.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "accountId", - "configId" - ], - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ] - }, - "get": { - "id": "adexchangebuyer.pretargetingConfig.get", - "path": "pretargetingconfigs/{accountId}/{configId}", - "httpMethod": "GET", - "description": "Gets a specific pretargeting configuration", - "parameters": { - "accountId": { - "type": "string", - "description": "The account id to get the pretargeting config for.", - "required": true, - "format": "int64", - "location": "path" - }, - "configId": { - "type": "string", - "description": "The specific id of the configuration to retrieve.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "accountId", - "configId" - ], - "response": { - "$ref": "PretargetingConfig" - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ] - }, - "insert": { - "id": "adexchangebuyer.pretargetingConfig.insert", - "path": "pretargetingconfigs/{accountId}", - "httpMethod": "POST", - "description": "Inserts a new pretargeting configuration.", - "parameters": { - "accountId": { - "type": "string", - "description": "The account id to insert the pretargeting config for.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "accountId" - ], - "request": { - "$ref": "PretargetingConfig" - }, - "response": { - "$ref": "PretargetingConfig" - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ] - }, - "list": { - "id": "adexchangebuyer.pretargetingConfig.list", - "path": "pretargetingconfigs/{accountId}", - "httpMethod": "GET", - "description": "Retrieves a list of the authenticated user's pretargeting configurations.", - "parameters": { - "accountId": { - "type": "string", - "description": "The account id to get the pretargeting configs for.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "accountId" - ], - "response": { - "$ref": "PretargetingConfigList" - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ] - }, - "patch": { - "id": "adexchangebuyer.pretargetingConfig.patch", - "path": "pretargetingconfigs/{accountId}/{configId}", - "httpMethod": "PATCH", - "description": "Updates an existing pretargeting config. This method supports patch semantics.", - "parameters": { - "accountId": { - "type": "string", - "description": "The account id to update the pretargeting config for.", - "required": true, - "format": "int64", - "location": "path" - }, - "configId": { - "type": "string", - "description": "The specific id of the configuration to update.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "accountId", - "configId" - ], - "request": { - "$ref": "PretargetingConfig" - }, - "response": { - "$ref": "PretargetingConfig" - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ] - }, - "update": { - "id": "adexchangebuyer.pretargetingConfig.update", - "path": "pretargetingconfigs/{accountId}/{configId}", - "httpMethod": "PUT", - "description": "Updates an existing pretargeting config.", - "parameters": { - "accountId": { - "type": "string", - "description": "The account id to update the pretargeting config for.", - "required": true, - "format": "int64", - "location": "path" - }, - "configId": { - "type": "string", - "description": "The specific id of the configuration to update.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "accountId", - "configId" - ], - "request": { - "$ref": "PretargetingConfig" - }, - "response": { - "$ref": "PretargetingConfig" - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ] - } - } - } - } -} + "servicePath": "adexchangebuyer/v1.3/", + "title": "Ad Exchange Buyer API", + "version": "v1.3" +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/adexchangebuyer/v1.4/adexchangebuyer-api.json b/vendor/google.golang.org/api/adexchangebuyer/v1.4/adexchangebuyer-api.json index 239a0bb7d..c656b5664 100644 --- a/vendor/google.golang.org/api/adexchangebuyer/v1.4/adexchangebuyer-api.json +++ b/vendor/google.golang.org/api/adexchangebuyer/v1.4/adexchangebuyer-api.json @@ -1,3640 +1,3686 @@ { - "kind": "discovery#restDescription", - "etag": "\"YWOzh2SDasdU84ArJnpYek-OMdg/nD15-sVgx0hSdEaD_RN4E40IFV8\"", - "discoveryVersion": "v1", - "id": "adexchangebuyer:v1.4", - "name": "adexchangebuyer", - "canonicalName": "Ad Exchange Buyer", - "version": "v1.4", - "revision": "20170810", - "title": "Ad Exchange Buyer API", - "description": "Accesses your bidding-account information, submits creatives for validation, finds available direct deals, and retrieves performance reports.", - "ownerDomain": "google.com", - "ownerName": "Google", - "icons": { - "x16": "https://www.google.com/images/icons/product/doubleclick-16.gif", - "x32": "https://www.google.com/images/icons/product/doubleclick-32.gif" - }, - "documentationLink": "https://developers.google.com/ad-exchange/buyer-rest", - "protocol": "rest", - "baseUrl": "https://www.googleapis.com/adexchangebuyer/v1.4/", - "basePath": "/adexchangebuyer/v1.4/", - "rootUrl": "https://www.googleapis.com/", - "servicePath": "adexchangebuyer/v1.4/", - "batchPath": "batch/adexchangebuyer/v1.4", - "parameters": { - "alt": { - "type": "string", - "description": "Data format for the response.", - "default": "json", - "enum": [ - "json" - ], - "enumDescriptions": [ - "Responses with Content-Type of application/json" - ], - "location": "query" - }, - "fields": { - "type": "string", - "description": "Selector specifying which fields to include in a partial response.", - "location": "query" - }, - "key": { - "type": "string", - "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" - }, - "oauth_token": { - "type": "string", - "description": "OAuth 2.0 token for the current user.", - "location": "query" - }, - "prettyPrint": { - "type": "boolean", - "description": "Returns response with indentations and line breaks.", - "default": "true", - "location": "query" - }, - "quotaUser": { - "type": "string", - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", - "location": "query" - }, - "userIp": { - "type": "string", - "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", - "location": "query" - } - }, - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/adexchange.buyer": { - "description": "Manage your Ad Exchange buyer account configuration" - } - } - } - }, - "schemas": { - "Account": { - "id": "Account", - "type": "object", - "description": "Configuration data for an Ad Exchange buyer account.", - "properties": { - "bidderLocation": { - "type": "array", - "description": "Your bidder locations that have distinct URLs.", - "items": { - "type": "object", - "properties": { - "bidProtocol": { - "type": "string", - "description": "The protocol that the bidder endpoint is using. OpenRTB protocols with prefix PROTOCOL_OPENRTB_PROTOBUF use proto buffer, otherwise use JSON. Allowed values: \n- PROTOCOL_ADX \n- PROTOCOL_OPENRTB_2_2 \n- PROTOCOL_OPENRTB_2_3 \n- PROTOCOL_OPENRTB_2_4 \n- PROTOCOL_OPENRTB_2_5 \n- PROTOCOL_OPENRTB_PROTOBUF_2_3 \n- PROTOCOL_OPENRTB_PROTOBUF_2_4 \n- PROTOCOL_OPENRTB_PROTOBUF_2_5" - }, - "maximumQps": { - "type": "integer", - "description": "The maximum queries per second the Ad Exchange will send.", - "format": "int32" - }, - "region": { - "type": "string", - "description": "The geographical region the Ad Exchange should send requests from. Only used by some quota systems, but always setting the value is recommended. Allowed values: \n- ASIA \n- EUROPE \n- US_EAST \n- US_WEST" - }, - "url": { - "type": "string", - "description": "The URL to which the Ad Exchange will send bid requests." - } - } - } - }, - "cookieMatchingNid": { - "type": "string", - "description": "The nid parameter value used in cookie match requests. Please contact your technical account manager if you need to change this." - }, - "cookieMatchingUrl": { - "type": "string", - "description": "The base URL used in cookie match requests." - }, - "id": { - "type": "integer", - "description": "Account id.", - "format": "int32" - }, - "kind": { - "type": "string", - "description": "Resource type.", - "default": "adexchangebuyer#account" - }, - "maximumActiveCreatives": { - "type": "integer", - "description": "The maximum number of active creatives that an account can have, where a creative is active if it was inserted or bid with in the last 30 days. Please contact your technical account manager if you need to change this.", - "format": "int32" - }, - "maximumTotalQps": { - "type": "integer", - "description": "The sum of all bidderLocation.maximumQps values cannot exceed this. Please contact your technical account manager if you need to change this.", - "format": "int32" - }, - "numberActiveCreatives": { - "type": "integer", - "description": "The number of creatives that this account inserted or bid with in the last 30 days.", - "format": "int32" - } - } - }, - "AccountsList": { - "id": "AccountsList", - "type": "object", - "description": "An account feed lists Ad Exchange buyer accounts that the user has access to. Each entry in the feed corresponds to a single buyer account.", - "properties": { - "items": { - "type": "array", - "description": "A list of accounts.", - "items": { - "$ref": "Account" - } - }, - "kind": { - "type": "string", - "description": "Resource type.", - "default": "adexchangebuyer#accountsList" - } - } - }, - "AddOrderDealsRequest": { - "id": "AddOrderDealsRequest", - "type": "object", - "properties": { - "deals": { - "type": "array", - "description": "The list of deals to add", - "items": { - "$ref": "MarketplaceDeal" - } - }, - "proposalRevisionNumber": { - "type": "string", - "description": "The last known proposal revision number.", - "format": "int64" - }, - "updateAction": { - "type": "string", - "description": "Indicates an optional action to take on the proposal" - } - } - }, - "AddOrderDealsResponse": { - "id": "AddOrderDealsResponse", - "type": "object", - "properties": { - "deals": { - "type": "array", - "description": "List of deals added (in the same proposal as passed in the request)", - "items": { - "$ref": "MarketplaceDeal" - } - }, - "proposalRevisionNumber": { - "type": "string", - "description": "The updated revision number for the proposal.", - "format": "int64" - } - } - }, - "AddOrderNotesRequest": { - "id": "AddOrderNotesRequest", - "type": "object", - "properties": { - "notes": { - "type": "array", - "description": "The list of notes to add.", - "items": { - "$ref": "MarketplaceNote" - } - } - } - }, - "AddOrderNotesResponse": { - "id": "AddOrderNotesResponse", - "type": "object", - "properties": { - "notes": { - "type": "array", - "items": { - "$ref": "MarketplaceNote" - } - } - } - }, - "BillingInfo": { - "id": "BillingInfo", - "type": "object", - "description": "The configuration data for an Ad Exchange billing info.", - "properties": { - "accountId": { - "type": "integer", - "description": "Account id.", - "format": "int32" - }, - "accountName": { - "type": "string", - "description": "Account name." - }, - "billingId": { - "type": "array", - "description": "A list of adgroup IDs associated with this particular account. These IDs may show up as part of a realtime bidding BidRequest, which indicates a bid request for this account.", - "items": { - "type": "string" - } - }, - "kind": { - "type": "string", - "description": "Resource type.", - "default": "adexchangebuyer#billingInfo" - } - } - }, - "BillingInfoList": { - "id": "BillingInfoList", - "type": "object", - "description": "A billing info feed lists Billing Info the Ad Exchange buyer account has access to. Each entry in the feed corresponds to a single billing info.", - "properties": { - "items": { - "type": "array", - "description": "A list of billing info relevant for your account.", - "items": { - "$ref": "BillingInfo" - } - }, - "kind": { - "type": "string", - "description": "Resource type.", - "default": "adexchangebuyer#billingInfoList" - } - } - }, - "Budget": { - "id": "Budget", - "type": "object", - "description": "The configuration data for Ad Exchange RTB - Budget API.", - "properties": { - "accountId": { - "type": "string", - "description": "The id of the account. This is required for get and update requests.", - "format": "int64" - }, - "billingId": { - "type": "string", - "description": "The billing id to determine which adgroup to provide budget information for. This is required for get and update requests.", - "format": "int64" - }, - "budgetAmount": { - "type": "string", - "description": "The daily budget amount in unit amount of the account currency to apply for the billingId provided. This is required for update requests.", - "format": "int64" - }, - "currencyCode": { - "type": "string", - "description": "The currency code for the buyer. This cannot be altered here." - }, - "id": { - "type": "string", - "description": "The unique id that describes this item." - }, - "kind": { - "type": "string", - "description": "The kind of the resource, i.e. \"adexchangebuyer#budget\".", - "default": "adexchangebuyer#budget" - } - } - }, - "Buyer": { - "id": "Buyer", - "type": "object", - "properties": { - "accountId": { - "type": "string", - "description": "Adx account id of the buyer." - } - } - }, - "ContactInformation": { - "id": "ContactInformation", - "type": "object", - "properties": { - "email": { - "type": "string", - "description": "Email address of the contact." - }, - "name": { - "type": "string", - "description": "The name of the contact." - } - } - }, - "CreateOrdersRequest": { - "id": "CreateOrdersRequest", - "type": "object", - "properties": { - "proposals": { - "type": "array", - "description": "The list of proposals to create.", - "items": { - "$ref": "Proposal" - } - }, - "webPropertyCode": { - "type": "string", - "description": "Web property id of the seller creating these orders" - } - } - }, - "CreateOrdersResponse": { - "id": "CreateOrdersResponse", - "type": "object", - "properties": { - "proposals": { - "type": "array", - "description": "The list of proposals successfully created.", - "items": { - "$ref": "Proposal" - } - } - } - }, - "Creative": { - "id": "Creative", - "type": "object", - "description": "A creative and its classification data.", - "properties": { - "HTMLSnippet": { - "type": "string", - "description": "The HTML snippet that displays the ad when inserted in the web page. If set, videoURL should not be set." - }, - "accountId": { - "type": "integer", - "description": "Account id.", - "format": "int32", - "annotations": { - "required": [ - "adexchangebuyer.creatives.insert" - ] - } - }, - "adChoicesDestinationUrl": { - "type": "string", - "description": "The link to the Ad Preferences page. This is only supported for native ads." - }, - "advertiserId": { - "type": "array", - "description": "Detected advertiser id, if any. Read-only. This field should not be set in requests.", - "items": { - "type": "string", - "format": "int64" - } - }, - "advertiserName": { - "type": "string", - "description": "The name of the company being advertised in the creative. The value provided must exist in the advertisers.txt file.", - "annotations": { - "required": [ - "adexchangebuyer.creatives.insert" - ] - } - }, - "agencyId": { - "type": "string", - "description": "The agency id for this creative.", - "format": "int64" - }, - "apiUploadTimestamp": { - "type": "string", - "description": "The last upload timestamp of this creative if it was uploaded via API. Read-only. The value of this field is generated, and will be ignored for uploads. (formatted RFC 3339 timestamp).", - "format": "date-time" - }, - "attribute": { - "type": "array", - "description": "List of buyer selectable attributes for the ads that may be shown from this snippet. Each attribute is represented by an integer as defined in buyer-declarable-creative-attributes.txt.", - "items": { - "type": "integer", - "format": "int32" - } - }, - "buyerCreativeId": { - "type": "string", - "description": "A buyer-specific id identifying the creative in this ad.", - "annotations": { - "required": [ - "adexchangebuyer.creatives.insert" - ] - } - }, - "clickThroughUrl": { - "type": "array", - "description": "The set of destination urls for the snippet.", - "items": { - "type": "string" - }, - "annotations": { - "required": [ - "adexchangebuyer.creatives.insert" - ] - } - }, - "corrections": { - "type": "array", - "description": "Shows any corrections that were applied to this creative. Read-only. This field should not be set in requests.", - "items": { - "type": "object", - "properties": { - "contexts": { - "type": "array", - "description": "All known serving contexts containing serving status information.", - "items": { - "type": "object", - "properties": { - "auctionType": { - "type": "array", - "description": "Only set when contextType=AUCTION_TYPE. Represents the auction types this correction applies to.", - "items": { - "type": "string" - } - }, - "contextType": { - "type": "string", - "description": "The type of context (e.g., location, platform, auction type, SSL-ness)." - }, - "geoCriteriaId": { - "type": "array", - "description": "Only set when contextType=LOCATION. Represents the geo criterias this correction applies to.", - "items": { - "type": "integer", - "format": "int32" - } - }, - "platform": { - "type": "array", - "description": "Only set when contextType=PLATFORM. Represents the platforms this correction applies to.", - "items": { - "type": "string" - } - } - } + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/adexchange.buyer": { + "description": "Manage your Ad Exchange buyer account configuration" } - }, - "details": { - "type": "array", - "description": "Additional details about the correction.", - "items": { - "type": "string" - } - }, - "reason": { - "type": "string", - "description": "The type of correction that was applied to the creative." - } } - } - }, - "dealsStatus": { - "type": "string", - "description": "Top-level deals status. Read-only. This field should not be set in requests. If disapproved, an entry for auctionType=DIRECT_DEALS (or ALL) in servingRestrictions will also exist. Note that this may be nuanced with other contextual restrictions, in which case it may be preferable to read from servingRestrictions directly." - }, - "detectedDomains": { - "type": "array", - "description": "Detected domains for this creative. Read-only. This field should not be set in requests.", - "items": { + } + }, + "basePath": "/adexchangebuyer/v1.4/", + "baseUrl": "https://www.googleapis.com/adexchangebuyer/v1.4/", + "batchPath": "batch/adexchangebuyer/v1.4", + "canonicalName": "Ad Exchange Buyer", + "description": "Accesses your bidding-account information, submits creatives for validation, finds available direct deals, and retrieves performance reports.", + "discoveryVersion": "v1", + "documentationLink": "https://developers.google.com/ad-exchange/buyer-rest", + "etag": "\"-iA1DTNe4s-I6JZXPt1t1Ypy8IU/X7x239uWJ65N2aEP-IhQZbTrqjc\"", + "icons": { + "x16": "https://www.google.com/images/icons/product/doubleclick-16.gif", + "x32": "https://www.google.com/images/icons/product/doubleclick-32.gif" + }, + "id": "adexchangebuyer:v1.4", + "kind": "discovery#restDescription", + "name": "adexchangebuyer", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "alt": { + "default": "json", + "description": "Data format for the response.", + "enum": [ + "json" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json" + ], + "location": "query", "type": "string" - } }, - "filteringReasons": { - "type": "object", - "description": "The filtering reasons for the creative. Read-only. This field should not be set in requests.", - "properties": { - "date": { - "type": "string", - "description": "The date in ISO 8601 format for the data. The data is collected from 00:00:00 to 23:59:59 in PST." - }, - "reasons": { - "type": "array", - "description": "The filtering reasons.", - "items": { - "type": "object", - "properties": { - "filteringCount": { - "type": "string", - "description": "The number of times the creative was filtered for the status. The count is aggregated across all publishers on the exchange.", - "format": "int64" - }, - "filteringStatus": { - "type": "integer", - "description": "The filtering status code as defined in creative-status-codes.txt.", - "format": "int32" - } - } - } - } - } - }, - "height": { - "type": "integer", - "description": "Ad height.", - "format": "int32", - "annotations": { - "required": [ - "adexchangebuyer.creatives.insert" - ] - } - }, - "impressionTrackingUrl": { - "type": "array", - "description": "The set of urls to be called to record an impression.", - "items": { + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "location": "query", "type": "string" - } - }, - "kind": { - "type": "string", - "description": "Resource type.", - "default": "adexchangebuyer#creative" - }, - "languages": { - "type": "array", - "description": "Detected languages for this creative. Read-only. This field should not be set in requests.", - "items": { - "type": "string" - } - }, - "nativeAd": { - "type": "object", - "description": "If nativeAd is set, HTMLSnippet and the videoURL outside of nativeAd should not be set. (The videoURL inside nativeAd can be set.)", - "properties": { - "advertiser": { - "type": "string" - }, - "appIcon": { - "type": "object", - "description": "The app icon, for app download ads.", - "properties": { - "height": { - "type": "integer", - "format": "int32" - }, - "url": { - "type": "string" - }, - "width": { - "type": "integer", - "format": "int32" - } - } - }, - "body": { - "type": "string", - "description": "A long description of the ad." - }, - "callToAction": { - "type": "string", - "description": "A label for the button that the user is supposed to click." - }, - "clickLinkUrl": { - "type": "string", - "description": "The URL that the browser/SDK will load when the user clicks the ad." - }, - "clickTrackingUrl": { - "type": "string", - "description": "The URL to use for click tracking." - }, - "headline": { - "type": "string", - "description": "A short title for the ad." - }, - "image": { - "type": "object", - "description": "A large image.", - "properties": { - "height": { - "type": "integer", - "format": "int32" - }, - "url": { - "type": "string" - }, - "width": { - "type": "integer", - "format": "int32" - } - } - }, - "impressionTrackingUrl": { - "type": "array", - "description": "The URLs are called when the impression is rendered.", - "items": { - "type": "string" - } - }, - "logo": { - "type": "object", - "description": "A smaller image, for the advertiser logo.", - "properties": { - "height": { - "type": "integer", - "format": "int32" - }, - "url": { - "type": "string" - }, - "width": { - "type": "integer", - "format": "int32" - } - } - }, - "price": { - "type": "string", - "description": "The price of the promoted app including the currency info." - }, - "starRating": { - "type": "number", - "description": "The app rating in the app store. Must be in the range [0-5].", - "format": "double" - }, - "store": { - "type": "string", - "description": "The URL to the app store to purchase/download the promoted app." - }, - "videoURL": { - "type": "string", - "description": "The URL of the XML VAST for a native ad. Note this is a separate field from resource.video_url." - } - } - }, - "openAuctionStatus": { - "type": "string", - "description": "Top-level open auction status. Read-only. This field should not be set in requests. If disapproved, an entry for auctionType=OPEN_AUCTION (or ALL) in servingRestrictions will also exist. Note that this may be nuanced with other contextual restrictions, in which case it may be preferable to read from ServingRestrictions directly." - }, - "productCategories": { - "type": "array", - "description": "Detected product categories, if any. Each category is represented by an integer as defined in ad-product-categories.txt. Read-only. This field should not be set in requests.", - "items": { - "type": "integer", - "format": "int32" - } - }, - "restrictedCategories": { - "type": "array", - "description": "All restricted categories for the ads that may be shown from this snippet. Each category is represented by an integer as defined in the ad-restricted-categories.txt.", - "items": { - "type": "integer", - "format": "int32" - } - }, - "sensitiveCategories": { - "type": "array", - "description": "Detected sensitive categories, if any. Each category is represented by an integer as defined in ad-sensitive-categories.txt. Read-only. This field should not be set in requests.", - "items": { - "type": "integer", - "format": "int32" - } - }, - "servingRestrictions": { - "type": "array", - "description": "The granular status of this ad in specific contexts. A context here relates to where something ultimately serves (for example, a physical location, a platform, an HTTPS vs HTTP request, or the type of auction). Read-only. This field should not be set in requests. See the examples in the Creatives guide for more details.", - "items": { - "type": "object", - "properties": { - "contexts": { - "type": "array", - "description": "All known contexts/restrictions.", - "items": { - "type": "object", - "properties": { - "auctionType": { - "type": "array", - "description": "Only set when contextType=AUCTION_TYPE. Represents the auction types this restriction applies to.", - "items": { - "type": "string" - } - }, - "contextType": { - "type": "string", - "description": "The type of context (e.g., location, platform, auction type, SSL-ness)." - }, - "geoCriteriaId": { - "type": "array", - "description": "Only set when contextType=LOCATION. Represents the geo criterias this restriction applies to. Impressions are considered to match a context if either the user location or publisher location matches a given geoCriteriaId.", - "items": { - "type": "integer", - "format": "int32" - } - }, - "platform": { - "type": "array", - "description": "Only set when contextType=PLATFORM. Represents the platforms this restriction applies to.", - "items": { - "type": "string" - } - } - } - } - }, - "disapprovalReasons": { - "type": "array", - "description": "The reasons for disapproval within this restriction, if any. Note that not all disapproval reasons may be categorized, so it is possible for the creative to have a status of DISAPPROVED or CONDITIONALLY_APPROVED with an empty list for disapproval_reasons. In this case, please reach out to your TAM to help debug the issue.", - "items": { - "type": "object", - "properties": { - "details": { - "type": "array", - "description": "Additional details about the reason for disapproval.", - "items": { - "type": "string" - } - }, - "reason": { - "type": "string", - "description": "The categorized reason for disapproval." - } - } - } - }, - "reason": { - "type": "string", - "description": "Why the creative is ineligible to serve in this context (e.g., it has been explicitly disapproved or is pending review)." - } - } - } - }, - "vendorType": { - "type": "array", - "description": "List of vendor types for the ads that may be shown from this snippet. Each vendor type is represented by an integer as defined in vendors.txt.", - "items": { - "type": "integer", - "format": "int32" - } - }, - "version": { - "type": "integer", - "description": "The version for this creative. Read-only. This field should not be set in requests.", - "format": "int32" - }, - "videoURL": { - "type": "string", - "description": "The URL to fetch a video ad. If set, HTMLSnippet and the nativeAd should not be set. Note, this is different from resource.native_ad.video_url above." - }, - "width": { - "type": "integer", - "description": "Ad width.", - "format": "int32", - "annotations": { - "required": [ - "adexchangebuyer.creatives.insert" - ] - } - } - } - }, - "CreativeDealIds": { - "id": "CreativeDealIds", - "type": "object", - "description": "The external deal ids associated with a creative.", - "properties": { - "dealStatuses": { - "type": "array", - "description": "A list of external deal ids and ARC approval status.", - "items": { - "type": "object", - "properties": { - "arcStatus": { - "type": "string", - "description": "ARC approval status." - }, - "dealId": { - "type": "string", - "description": "External deal ID.", - "format": "int64" - }, - "webPropertyId": { - "type": "integer", - "description": "Publisher ID.", - "format": "int32" - } - } - } - }, - "kind": { - "type": "string", - "description": "Resource type.", - "default": "adexchangebuyer#creativeDealIds" - } - } - }, - "CreativesList": { - "id": "CreativesList", - "type": "object", - "description": "The creatives feed lists the active creatives for the Ad Exchange buyer accounts that the user has access to. Each entry in the feed corresponds to a single creative.", - "properties": { - "items": { - "type": "array", - "description": "A list of creatives.", - "items": { - "$ref": "Creative" - } - }, - "kind": { - "type": "string", - "description": "Resource type.", - "default": "adexchangebuyer#creativesList" - }, - "nextPageToken": { - "type": "string", - "description": "Continuation token used to page through creatives. To retrieve the next page of results, set the next request's \"pageToken\" value to this." - } - } - }, - "DealServingMetadata": { - "id": "DealServingMetadata", - "type": "object", - "properties": { - "alcoholAdsAllowed": { - "type": "boolean", - "description": "True if alcohol ads are allowed for this deal (read-only). This field is only populated when querying for finalized orders using the method GetFinalizedOrderDeals" - }, - "dealPauseStatus": { - "$ref": "DealServingMetadataDealPauseStatus", - "description": "Tracks which parties (if any) have paused a deal. (readonly, except via PauseResumeOrderDeals action)" - } - } - }, - "DealServingMetadataDealPauseStatus": { - "id": "DealServingMetadataDealPauseStatus", - "type": "object", - "description": "Tracks which parties (if any) have paused a deal. The deal is considered paused if has_buyer_paused || has_seller_paused. Each of the has_buyer_paused or the has_seller_paused bits can be set independently.", - "properties": { - "buyerPauseReason": { - "type": "string" - }, - "firstPausedBy": { - "type": "string", - "description": "If the deal is paused, records which party paused the deal first." - }, - "hasBuyerPaused": { - "type": "boolean" - }, - "hasSellerPaused": { - "type": "boolean" - }, - "sellerPauseReason": { - "type": "string" - } - } - }, - "DealTerms": { - "id": "DealTerms", - "type": "object", - "properties": { - "brandingType": { - "type": "string", - "description": "Visibilty of the URL in bid requests." - }, - "crossListedExternalDealIdType": { - "type": "string", - "description": "Indicates that this ExternalDealId exists under at least two different AdxInventoryDeals. Currently, the only case that the same ExternalDealId will exist is programmatic cross sell case." - }, - "description": { - "type": "string", - "description": "Description for the proposed terms of the deal." - }, - "estimatedGrossSpend": { - "$ref": "Price", - "description": "Non-binding estimate of the estimated gross spend for this deal Can be set by buyer or seller." - }, - "estimatedImpressionsPerDay": { - "type": "string", - "description": "Non-binding estimate of the impressions served per day Can be set by buyer or seller.", - "format": "int64" - }, - "guaranteedFixedPriceTerms": { - "$ref": "DealTermsGuaranteedFixedPriceTerms", - "description": "The terms for guaranteed fixed price deals." - }, - "nonGuaranteedAuctionTerms": { - "$ref": "DealTermsNonGuaranteedAuctionTerms", - "description": "The terms for non-guaranteed auction deals." - }, - "nonGuaranteedFixedPriceTerms": { - "$ref": "DealTermsNonGuaranteedFixedPriceTerms", - "description": "The terms for non-guaranteed fixed price deals." - }, - "rubiconNonGuaranteedTerms": { - "$ref": "DealTermsRubiconNonGuaranteedTerms", - "description": "The terms for rubicon non-guaranteed deals." - }, - "sellerTimeZone": { - "type": "string", - "description": "For deals with Cost Per Day billing, defines the timezone used to mark the boundaries of a day (buyer-readonly)" - } - } - }, - "DealTermsGuaranteedFixedPriceTerms": { - "id": "DealTermsGuaranteedFixedPriceTerms", - "type": "object", - "properties": { - "billingInfo": { - "$ref": "DealTermsGuaranteedFixedPriceTermsBillingInfo", - "description": "External billing info for this Deal. This field is relevant when external billing info such as price has a different currency code than DFP/AdX." - }, - "fixedPrices": { - "type": "array", - "description": "Fixed price for the specified buyer.", - "items": { - "$ref": "PricePerBuyer" - } - }, - "guaranteedImpressions": { - "type": "string", - "description": "Guaranteed impressions as a percentage. This is the percentage of guaranteed looks that the buyer is guaranteeing to buy.", - "format": "int64" - }, - "guaranteedLooks": { - "type": "string", - "description": "Count of guaranteed looks. Required for deal, optional for product. For CPD deals, buyer changes to guaranteed_looks will be ignored.", - "format": "int64" - }, - "minimumDailyLooks": { - "type": "string", - "description": "Count of minimum daily looks for a CPD deal. For CPD deals, buyer should negotiate on this field instead of guaranteed_looks.", - "format": "int64" - } - } - }, - "DealTermsGuaranteedFixedPriceTermsBillingInfo": { - "id": "DealTermsGuaranteedFixedPriceTermsBillingInfo", - "type": "object", - "properties": { - "currencyConversionTimeMs": { - "type": "string", - "description": "The timestamp (in ms since epoch) when the original reservation price for the deal was first converted to DFP currency. This is used to convert the contracted price into buyer's currency without discrepancy.", - "format": "int64" - }, - "dfpLineItemId": { - "type": "string", - "description": "The DFP line item id associated with this deal. For features like CPD, buyers can retrieve the DFP line item for billing reconciliation.", - "format": "int64" - }, - "originalContractedQuantity": { - "type": "string", - "description": "The original contracted quantity (# impressions) for this deal. To ensure delivery, sometimes the publisher will book the deal with a impression buffer, such that guaranteed_looks is greater than the contracted quantity. However clients are billed using the original contracted quantity.", - "format": "int64" - }, - "price": { - "$ref": "Price", - "description": "The original reservation price for the deal, if the currency code is different from the one used in negotiation." - } - } - }, - "DealTermsNonGuaranteedAuctionTerms": { - "id": "DealTermsNonGuaranteedAuctionTerms", - "type": "object", - "properties": { - "autoOptimizePrivateAuction": { - "type": "boolean", - "description": "True if open auction buyers are allowed to compete with invited buyers in this private auction (buyer-readonly)." - }, - "reservePricePerBuyers": { - "type": "array", - "description": "Reserve price for the specified buyer.", - "items": { - "$ref": "PricePerBuyer" - } - } - } - }, - "DealTermsNonGuaranteedFixedPriceTerms": { - "id": "DealTermsNonGuaranteedFixedPriceTerms", - "type": "object", - "properties": { - "fixedPrices": { - "type": "array", - "description": "Fixed price for the specified buyer.", - "items": { - "$ref": "PricePerBuyer" - } - } - } - }, - "DealTermsRubiconNonGuaranteedTerms": { - "id": "DealTermsRubiconNonGuaranteedTerms", - "type": "object", - "properties": { - "priorityPrice": { - "$ref": "Price", - "description": "Optional price for Rubicon priority access in the auction." - }, - "standardPrice": { - "$ref": "Price", - "description": "Optional price for Rubicon standard access in the auction." - } - } - }, - "DeleteOrderDealsRequest": { - "id": "DeleteOrderDealsRequest", - "type": "object", - "properties": { - "dealIds": { - "type": "array", - "description": "List of deals to delete for a given proposal", - "items": { - "type": "string" - } - }, - "proposalRevisionNumber": { - "type": "string", - "description": "The last known proposal revision number.", - "format": "int64" - }, - "updateAction": { - "type": "string", - "description": "Indicates an optional action to take on the proposal" - } - } - }, - "DeleteOrderDealsResponse": { - "id": "DeleteOrderDealsResponse", - "type": "object", - "properties": { - "deals": { - "type": "array", - "description": "List of deals deleted (in the same proposal as passed in the request)", - "items": { - "$ref": "MarketplaceDeal" - } - }, - "proposalRevisionNumber": { - "type": "string", - "description": "The updated revision number for the proposal.", - "format": "int64" - } - } - }, - "DeliveryControl": { - "id": "DeliveryControl", - "type": "object", - "properties": { - "creativeBlockingLevel": { - "type": "string" - }, - "deliveryRateType": { - "type": "string" - }, - "frequencyCaps": { - "type": "array", - "items": { - "$ref": "DeliveryControlFrequencyCap" - } - } - } - }, - "DeliveryControlFrequencyCap": { - "id": "DeliveryControlFrequencyCap", - "type": "object", - "properties": { - "maxImpressions": { - "type": "integer", - "format": "int32" - }, - "numTimeUnits": { - "type": "integer", - "format": "int32" - }, - "timeUnitType": { - "type": "string" - } - } - }, - "Dimension": { - "id": "Dimension", - "type": "object", - "description": "This message carries publisher provided breakdown. E.g. {dimension_type: 'COUNTRY', [{dimension_value: {id: 1, name: 'US'}}, {dimension_value: {id: 2, name: 'UK'}}]}", - "properties": { - "dimensionType": { - "type": "string" - }, - "dimensionValues": { - "type": "array", - "items": { - "$ref": "DimensionDimensionValue" - } - } - } - }, - "DimensionDimensionValue": { - "id": "DimensionDimensionValue", - "type": "object", - "description": "Value of the dimension.", - "properties": { - "id": { - "type": "integer", - "description": "Id of the dimension.", - "format": "int32" - }, - "name": { - "type": "string", - "description": "Name of the dimension mainly for debugging purposes, except for the case of CREATIVE_SIZE. For CREATIVE_SIZE, strings are used instead of ids." - }, - "percentage": { - "type": "integer", - "description": "Percent of total impressions for a dimension type. e.g. {dimension_type: 'GENDER', [{dimension_value: {id: 1, name: 'MALE', percentage: 60}}]} Gender MALE is 60% of all impressions which have gender.", - "format": "int32" - } - } - }, - "EditAllOrderDealsRequest": { - "id": "EditAllOrderDealsRequest", - "type": "object", - "properties": { - "deals": { - "type": "array", - "description": "List of deals to edit. Service may perform 3 different operations based on comparison of deals in this list vs deals already persisted in database: 1. Add new deal to proposal If a deal in this list does not exist in the proposal, the service will create a new deal and add it to the proposal. Validation will follow AddOrderDealsRequest. 2. Update existing deal in the proposal If a deal in this list already exist in the proposal, the service will update that existing deal to this new deal in the request. Validation will follow UpdateOrderDealsRequest. 3. Delete deals from the proposal (just need the id) If a existing deal in the proposal is not present in this list, the service will delete that deal from the proposal. Validation will follow DeleteOrderDealsRequest.", - "items": { - "$ref": "MarketplaceDeal" - } - }, - "proposal": { - "$ref": "Proposal", - "description": "If specified, also updates the proposal in the batch transaction. This is useful when the proposal and the deals need to be updated in one transaction." - }, - "proposalRevisionNumber": { - "type": "string", - "description": "The last known revision number for the proposal.", - "format": "int64" - }, - "updateAction": { - "type": "string", - "description": "Indicates an optional action to take on the proposal" - } - } - }, - "EditAllOrderDealsResponse": { - "id": "EditAllOrderDealsResponse", - "type": "object", - "properties": { - "deals": { - "type": "array", - "description": "List of all deals in the proposal after edit.", - "items": { - "$ref": "MarketplaceDeal" - } - }, - "orderRevisionNumber": { - "type": "string", - "description": "The latest revision number after the update has been applied.", - "format": "int64" - } - } - }, - "GetOffersResponse": { - "id": "GetOffersResponse", - "type": "object", - "properties": { - "products": { - "type": "array", - "description": "The returned list of products.", - "items": { - "$ref": "Product" - } - } - } - }, - "GetOrderDealsResponse": { - "id": "GetOrderDealsResponse", - "type": "object", - "properties": { - "deals": { - "type": "array", - "description": "List of deals for the proposal", - "items": { - "$ref": "MarketplaceDeal" - } - } - } - }, - "GetOrderNotesResponse": { - "id": "GetOrderNotesResponse", - "type": "object", - "properties": { - "notes": { - "type": "array", - "description": "The list of matching notes. The notes for a proposal are ordered from oldest to newest. If the notes span multiple proposals, they will be grouped by proposal, with the notes for the most recently modified proposal appearing first.", - "items": { - "$ref": "MarketplaceNote" - } - } - } - }, - "GetOrdersResponse": { - "id": "GetOrdersResponse", - "type": "object", - "properties": { - "proposals": { - "type": "array", - "description": "The list of matching proposals.", - "items": { - "$ref": "Proposal" - } - } - } - }, - "GetPublisherProfilesByAccountIdResponse": { - "id": "GetPublisherProfilesByAccountIdResponse", - "type": "object", - "properties": { - "profiles": { - "type": "array", - "description": "Profiles for the requested publisher", - "items": { - "$ref": "PublisherProfileApiProto" - } - } - } - }, - "MarketplaceDeal": { - "id": "MarketplaceDeal", - "type": "object", - "description": "A proposal can contain multiple deals. A deal contains the terms and targeting information that is used for serving.", - "properties": { - "buyerPrivateData": { - "$ref": "PrivateData", - "description": "Buyer private data (hidden from seller)." - }, - "creationTimeMs": { - "type": "string", - "description": "The time (ms since epoch) of the deal creation. (readonly)", - "format": "int64" - }, - "creativePreApprovalPolicy": { - "type": "string", - "description": "Specifies the creative pre-approval policy (buyer-readonly)" - }, - "creativeSafeFrameCompatibility": { - "type": "string", - "description": "Specifies whether the creative is safeFrame compatible (buyer-readonly)" - }, - "dealId": { - "type": "string", - "description": "A unique deal-id for the deal (readonly)." - }, - "dealServingMetadata": { - "$ref": "DealServingMetadata", - "description": "Metadata about the serving status of this deal (readonly, writes via custom actions)" - }, - "deliveryControl": { - "$ref": "DeliveryControl", - "description": "The set of fields around delivery control that are interesting for a buyer to see but are non-negotiable. These are set by the publisher. This message is assigned an id of 100 since some day we would want to model this as a protobuf extension." - }, - "externalDealId": { - "type": "string", - "description": "The external deal id assigned to this deal once the deal is finalized. This is the deal-id that shows up in serving/reporting etc. (readonly)" - }, - "flightEndTimeMs": { - "type": "string", - "description": "Proposed flight end time of the deal (ms since epoch) This will generally be stored in a granularity of a second. (updatable)", - "format": "int64" - }, - "flightStartTimeMs": { - "type": "string", - "description": "Proposed flight start time of the deal (ms since epoch) This will generally be stored in a granularity of a second. (updatable)", - "format": "int64" - }, - "inventoryDescription": { - "type": "string", - "description": "Description for the deal terms. (buyer-readonly)" - }, - "isRfpTemplate": { - "type": "boolean", - "description": "Indicates whether the current deal is a RFP template. RFP template is created by buyer and not based on seller created products." - }, - "isSetupComplete": { - "type": "boolean", - "description": "True, if the buyside inventory setup is complete for this deal. (readonly, except via OrderSetupCompleted action)" - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"adexchangebuyer#marketplaceDeal\".", - "default": "adexchangebuyer#marketplaceDeal" - }, - "lastUpdateTimeMs": { - "type": "string", - "description": "The time (ms since epoch) when the deal was last updated. (readonly)", - "format": "int64" - }, - "name": { - "type": "string", - "description": "The name of the deal. (updatable)" - }, - "productId": { - "type": "string", - "description": "The product-id from which this deal was created. (readonly, except on create)" - }, - "productRevisionNumber": { - "type": "string", - "description": "The revision number of the product that the deal was created from (readonly, except on create)", - "format": "int64" - }, - "programmaticCreativeSource": { - "type": "string", - "description": "Specifies the creative source for programmatic deals, PUBLISHER means creative is provided by seller and ADVERTISR means creative is provided by buyer. (buyer-readonly)" - }, - "proposalId": { - "type": "string" - }, - "sellerContacts": { - "type": "array", - "description": "Optional Seller contact information for the deal (buyer-readonly)", - "items": { - "$ref": "ContactInformation" - } - }, - "sharedTargetings": { - "type": "array", - "description": "The shared targeting visible to buyers and sellers. Each shared targeting entity is AND'd together. (updatable)", - "items": { - "$ref": "SharedTargeting" - } - }, - "syndicationProduct": { - "type": "string", - "description": "The syndication product associated with the deal. (readonly, except on create)" - }, - "terms": { - "$ref": "DealTerms", - "description": "The negotiable terms of the deal. (updatable)" - }, - "webPropertyCode": { - "type": "string" - } - } - }, - "MarketplaceDealParty": { - "id": "MarketplaceDealParty", - "type": "object", - "properties": { - "buyer": { - "$ref": "Buyer", - "description": "The buyer/seller associated with the deal. One of buyer/seller is specified for a deal-party." - }, - "seller": { - "$ref": "Seller", - "description": "The buyer/seller associated with the deal. One of buyer/seller is specified for a deal party." - } - } - }, - "MarketplaceLabel": { - "id": "MarketplaceLabel", - "type": "object", - "properties": { - "accountId": { - "type": "string", - "description": "The accountId of the party that created the label." - }, - "createTimeMs": { - "type": "string", - "description": "The creation time (in ms since epoch) for the label.", - "format": "int64" - }, - "deprecatedMarketplaceDealParty": { - "$ref": "MarketplaceDealParty", - "description": "Information about the party that created the label." - }, - "label": { - "type": "string", - "description": "The label to use." - } - } - }, - "MarketplaceNote": { - "id": "MarketplaceNote", - "type": "object", - "description": "A proposal is associated with a bunch of notes which may optionally be associated with a deal and/or revision number.", - "properties": { - "creatorRole": { - "type": "string", - "description": "The role of the person (buyer/seller) creating the note. (readonly)" - }, - "dealId": { - "type": "string", - "description": "Notes can optionally be associated with a deal. (readonly, except on create)" - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"adexchangebuyer#marketplaceNote\".", - "default": "adexchangebuyer#marketplaceNote" - }, - "note": { - "type": "string", - "description": "The actual note to attach. (readonly, except on create)" - }, - "noteId": { - "type": "string", - "description": "The unique id for the note. (readonly)" - }, - "proposalId": { - "type": "string", - "description": "The proposalId that a note is attached to. (readonly)" - }, - "proposalRevisionNumber": { - "type": "string", - "description": "If the note is associated with a proposal revision number, then store that here. (readonly, except on create)", - "format": "int64" - }, - "timestampMs": { - "type": "string", - "description": "The timestamp (ms since epoch) that this note was created. (readonly)", - "format": "int64" - } - } - }, - "PerformanceReport": { - "id": "PerformanceReport", - "type": "object", - "description": "The configuration data for an Ad Exchange performance report list.", - "properties": { - "bidRate": { - "type": "number", - "description": "The number of bid responses with an ad.", - "format": "double" - }, - "bidRequestRate": { - "type": "number", - "description": "The number of bid requests sent to your bidder.", - "format": "double" - }, - "calloutStatusRate": { - "type": "array", - "description": "Rate of various prefiltering statuses per match. Please refer to the callout-status-codes.txt file for different statuses.", - "items": { - "type": "any" - } - }, - "cookieMatcherStatusRate": { - "type": "array", - "description": "Average QPS for cookie matcher operations.", - "items": { - "type": "any" - } - }, - "creativeStatusRate": { - "type": "array", - "description": "Rate of ads with a given status. Please refer to the creative-status-codes.txt file for different statuses.", - "items": { - "type": "any" - } - }, - "filteredBidRate": { - "type": "number", - "description": "The number of bid responses that were filtered due to a policy violation or other errors.", - "format": "double" - }, - "hostedMatchStatusRate": { - "type": "array", - "description": "Average QPS for hosted match operations.", - "items": { - "type": "any" - } - }, - "inventoryMatchRate": { - "type": "number", - "description": "The number of potential queries based on your pretargeting settings.", - "format": "double" - }, - "kind": { - "type": "string", - "description": "Resource type.", - "default": "adexchangebuyer#performanceReport" - }, - "latency50thPercentile": { - "type": "number", - "description": "The 50th percentile round trip latency(ms) as perceived from Google servers for the duration period covered by the report.", - "format": "double" - }, - "latency85thPercentile": { - "type": "number", - "description": "The 85th percentile round trip latency(ms) as perceived from Google servers for the duration period covered by the report.", - "format": "double" - }, - "latency95thPercentile": { - "type": "number", - "description": "The 95th percentile round trip latency(ms) as perceived from Google servers for the duration period covered by the report.", - "format": "double" - }, - "noQuotaInRegion": { - "type": "number", - "description": "Rate of various quota account statuses per quota check.", - "format": "double" - }, - "outOfQuota": { - "type": "number", - "description": "Rate of various quota account statuses per quota check.", - "format": "double" - }, - "pixelMatchRequests": { - "type": "number", - "description": "Average QPS for pixel match requests from clients.", - "format": "double" - }, - "pixelMatchResponses": { - "type": "number", - "description": "Average QPS for pixel match responses from clients.", - "format": "double" - }, - "quotaConfiguredLimit": { - "type": "number", - "description": "The configured quota limits for this account.", - "format": "double" - }, - "quotaThrottledLimit": { - "type": "number", - "description": "The throttled quota limits for this account.", - "format": "double" - }, - "region": { - "type": "string", - "description": "The trading location of this data." - }, - "successfulRequestRate": { - "type": "number", - "description": "The number of properly formed bid responses received by our servers within the deadline.", - "format": "double" - }, - "timestamp": { - "type": "string", - "description": "The unix timestamp of the starting time of this performance data.", - "format": "int64" - }, - "unsuccessfulRequestRate": { - "type": "number", - "description": "The number of bid responses that were unsuccessful due to timeouts, incorrect formatting, etc.", - "format": "double" - } - } - }, - "PerformanceReportList": { - "id": "PerformanceReportList", - "type": "object", - "description": "The configuration data for an Ad Exchange performance report list.", - "properties": { - "kind": { - "type": "string", - "description": "Resource type.", - "default": "adexchangebuyer#performanceReportList" - }, - "performanceReport": { - "type": "array", - "description": "A list of performance reports relevant for the account.", - "items": { - "$ref": "PerformanceReport" - } - } - } - }, - "PretargetingConfig": { - "id": "PretargetingConfig", - "type": "object", - "properties": { - "billingId": { - "type": "string", - "description": "The id for billing purposes, provided for reference. Leave this field blank for insert requests; the id will be generated automatically.", - "format": "int64" - }, - "configId": { - "type": "string", - "description": "The config id; generated automatically. Leave this field blank for insert requests.", - "format": "int64" - }, - "configName": { - "type": "string", - "description": "The name of the config. Must be unique. Required for all requests." - }, - "creativeType": { - "type": "array", - "description": "List must contain exactly one of PRETARGETING_CREATIVE_TYPE_HTML or PRETARGETING_CREATIVE_TYPE_VIDEO.", - "items": { - "type": "string" - } - }, - "dimensions": { - "type": "array", - "description": "Requests which allow one of these (width, height) pairs will match. All pairs must be supported ad dimensions.", - "items": { - "type": "object", - "properties": { - "height": { - "type": "string", - "description": "Height in pixels.", - "format": "int64" - }, - "width": { - "type": "string", - "description": "Width in pixels.", - "format": "int64" - } - } - } - }, - "excludedContentLabels": { - "type": "array", - "description": "Requests with any of these content labels will not match. Values are from content-labels.txt in the downloadable files section.", - "items": { - "type": "string", - "format": "int64" - } - }, - "excludedGeoCriteriaIds": { - "type": "array", - "description": "Requests containing any of these geo criteria ids will not match.", - "items": { - "type": "string", - "format": "int64" - } - }, - "excludedPlacements": { - "type": "array", - "description": "Requests containing any of these placements will not match.", - "items": { - "type": "object", - "properties": { - "token": { - "type": "string", - "description": "The value of the placement. Interpretation depends on the placement type, e.g. URL for a site placement, channel name for a channel placement, app id for a mobile app placement." - }, - "type": { - "type": "string", - "description": "The type of the placement." - } - } - } - }, - "excludedUserLists": { - "type": "array", - "description": "Requests containing any of these users list ids will not match.", - "items": { - "type": "string", - "format": "int64" - } - }, - "excludedVerticals": { - "type": "array", - "description": "Requests containing any of these vertical ids will not match. Values are from the publisher-verticals.txt file in the downloadable files section.", - "items": { - "type": "string", - "format": "int64" - } - }, - "geoCriteriaIds": { - "type": "array", - "description": "Requests containing any of these geo criteria ids will match.", - "items": { - "type": "string", - "format": "int64" - } - }, - "isActive": { - "type": "boolean", - "description": "Whether this config is active. Required for all requests." - }, - "kind": { - "type": "string", - "description": "The kind of the resource, i.e. \"adexchangebuyer#pretargetingConfig\".", - "default": "adexchangebuyer#pretargetingConfig" - }, - "languages": { - "type": "array", - "description": "Request containing any of these language codes will match.", - "items": { - "type": "string" - } - }, - "minimumViewabilityDecile": { - "type": "integer", - "description": "Requests where the predicted viewability is below the specified decile will not match. E.g. if the buyer sets this value to 5, requests from slots where the predicted viewability is below 50% will not match. If the predicted viewability is unknown this field will be ignored.", - "format": "int32" - }, - "mobileCarriers": { - "type": "array", - "description": "Requests containing any of these mobile carrier ids will match. Values are from mobile-carriers.csv in the downloadable files section.", - "items": { - "type": "string", - "format": "int64" - } - }, - "mobileDevices": { - "type": "array", - "description": "Requests containing any of these mobile device ids will match. Values are from mobile-devices.csv in the downloadable files section.", - "items": { - "type": "string", - "format": "int64" - } - }, - "mobileOperatingSystemVersions": { - "type": "array", - "description": "Requests containing any of these mobile operating system version ids will match. Values are from mobile-os.csv in the downloadable files section.", - "items": { - "type": "string", - "format": "int64" - } - }, - "placements": { - "type": "array", - "description": "Requests containing any of these placements will match.", - "items": { - "type": "object", - "properties": { - "token": { - "type": "string", - "description": "The value of the placement. Interpretation depends on the placement type, e.g. URL for a site placement, channel name for a channel placement, app id for a mobile app placement." - }, - "type": { - "type": "string", - "description": "The type of the placement." - } - } - } - }, - "platforms": { - "type": "array", - "description": "Requests matching any of these platforms will match. Possible values are PRETARGETING_PLATFORM_MOBILE, PRETARGETING_PLATFORM_DESKTOP, and PRETARGETING_PLATFORM_TABLET.", - "items": { - "type": "string" - } - }, - "supportedCreativeAttributes": { - "type": "array", - "description": "Creative attributes should be declared here if all creatives corresponding to this pretargeting configuration have that creative attribute. Values are from pretargetable-creative-attributes.txt in the downloadable files section.", - "items": { - "type": "string", - "format": "int64" - } - }, - "userIdentifierDataRequired": { - "type": "array", - "description": "Requests containing the specified type of user data will match. Possible values are HOSTED_MATCH_DATA, which means the request is cookie-targetable and has a match in the buyer's hosted match table, and COOKIE_OR_IDFA, which means the request has either a targetable cookie or an iOS IDFA.", - "items": { - "type": "string" - } - }, - "userLists": { - "type": "array", - "description": "Requests containing any of these user list ids will match.", - "items": { - "type": "string", - "format": "int64" - } - }, - "vendorTypes": { - "type": "array", - "description": "Requests that allow any of these vendor ids will match. Values are from vendors.txt in the downloadable files section.", - "items": { - "type": "string", - "format": "int64" - } - }, - "verticals": { - "type": "array", - "description": "Requests containing any of these vertical ids will match.", - "items": { - "type": "string", - "format": "int64" - } - }, - "videoPlayerSizes": { - "type": "array", - "description": "Video requests satisfying any of these player size constraints will match.", - "items": { - "type": "object", - "properties": { - "aspectRatio": { - "type": "string", - "description": "The type of aspect ratio. Leave this field blank to match all aspect ratios." - }, - "minHeight": { - "type": "string", - "description": "The minimum player height in pixels. Leave this field blank to match any player height.", - "format": "int64" - }, - "minWidth": { - "type": "string", - "description": "The minimum player width in pixels. Leave this field blank to match any player width.", - "format": "int64" - } - } - } - } - } - }, - "PretargetingConfigList": { - "id": "PretargetingConfigList", - "type": "object", - "properties": { - "items": { - "type": "array", - "description": "A list of pretargeting configs", - "items": { - "$ref": "PretargetingConfig" - } - }, - "kind": { - "type": "string", - "description": "Resource type.", - "default": "adexchangebuyer#pretargetingConfigList" - } - } - }, - "Price": { - "id": "Price", - "type": "object", - "properties": { - "amountMicros": { - "type": "number", - "description": "The price value in micros.", - "format": "double" - }, - "currencyCode": { - "type": "string", - "description": "The currency code for the price." - }, - "expectedCpmMicros": { - "type": "number", - "description": "In case of CPD deals, the expected CPM in micros.", - "format": "double" - }, - "pricingType": { - "type": "string", - "description": "The pricing type for the deal/product." - } - } - }, - "PricePerBuyer": { - "id": "PricePerBuyer", - "type": "object", - "description": "Used to specify pricing rules for buyers. Each PricePerBuyer in a product can become [0,1] deals. To check if there is a PricePerBuyer for a particular buyer we look for the most specific matching rule - we first look for a rule matching the buyer and otherwise look for a matching rule where no buyer is set.", - "properties": { - "auctionTier": { - "type": "string", - "description": "Optional access type for this buyer." - }, - "billedBuyer": { - "$ref": "Buyer", - "description": "Reference to the buyer that will get billed." - }, - "buyer": { - "$ref": "Buyer", - "description": "The buyer who will pay this price. If unset, all buyers can pay this price (if the advertisers match, and there's no more specific rule matching the buyer)." - }, - "price": { - "$ref": "Price", - "description": "The specified price" - } - } - }, - "PrivateData": { - "id": "PrivateData", - "type": "object", - "properties": { - "referenceId": { - "type": "string" - }, - "referencePayload": { - "type": "string", - "format": "byte" - } - } - }, - "Product": { - "id": "Product", - "type": "object", - "description": "A product is segment of inventory that a seller wishes to sell. It is associated with certain terms and targeting information which helps buyer know more about the inventory. Each field in a product can have one of the following setting:\n\n(readonly) - It is an error to try and set this field. (buyer-readonly) - Only the seller can set this field. (seller-readonly) - Only the buyer can set this field. (updatable) - The field is updatable at all times by either buyer or the seller.", - "properties": { - "billedBuyer": { - "$ref": "Buyer", - "description": "The billed buyer corresponding to the buyer that created the offer. (readonly, except on create)" - }, - "buyer": { - "$ref": "Buyer", - "description": "The buyer that created the offer if this is a buyer initiated offer (readonly, except on create)" - }, - "creationTimeMs": { - "type": "string", - "description": "Creation time in ms. since epoch (readonly)", - "format": "int64" - }, - "creatorContacts": { - "type": "array", - "description": "Optional contact information for the creator of this product. (buyer-readonly)", - "items": { - "$ref": "ContactInformation" - } - }, - "creatorRole": { - "type": "string", - "description": "The role that created the offer. Set to BUYER for buyer initiated offers." - }, - "deliveryControl": { - "$ref": "DeliveryControl", - "description": "The set of fields around delivery control that are interesting for a buyer to see but are non-negotiable. These are set by the publisher. This message is assigned an id of 100 since some day we would want to model this as a protobuf extension." - }, - "flightEndTimeMs": { - "type": "string", - "description": "The proposed end time for the deal (ms since epoch) (buyer-readonly)", - "format": "int64" - }, - "flightStartTimeMs": { - "type": "string", - "description": "Inventory availability dates. (times are in ms since epoch) The granularity is generally in the order of seconds. (buyer-readonly)", - "format": "int64" - }, - "hasCreatorSignedOff": { - "type": "boolean", - "description": "If the creator has already signed off on the product, then the buyer can finalize the deal by accepting the product as is. When copying to a proposal, if any of the terms are changed, then auto_finalize is automatically set to false." - }, - "inventorySource": { - "type": "string", - "description": "What exchange will provide this inventory (readonly, except on create)." - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"adexchangebuyer#product\".", - "default": "adexchangebuyer#product" - }, - "labels": { - "type": "array", - "description": "Optional List of labels for the product (optional, buyer-readonly).", - "items": { - "$ref": "MarketplaceLabel" - } - }, - "lastUpdateTimeMs": { - "type": "string", - "description": "Time of last update in ms. since epoch (readonly)", - "format": "int64" - }, - "legacyOfferId": { - "type": "string", - "description": "Optional legacy offer id if this offer is a preferred deal offer." - }, - "marketplacePublisherProfileId": { - "type": "string", - "description": "Marketplace publisher profile Id. This Id differs from the regular publisher_profile_id in that 1. This is a new id, the old Id will be deprecated in 2017. 2. This id uniquely identifies a publisher profile by itself." - }, - "name": { - "type": "string", - "description": "The name for this product as set by the seller. (buyer-readonly)" - }, - "privateAuctionId": { - "type": "string", - "description": "Optional private auction id if this offer is a private auction offer." - }, - "productId": { - "type": "string", - "description": "The unique id for the product (readonly)" - }, - "publisherProfileId": { - "type": "string", - "description": "Id of the publisher profile for a given seller. A (seller.account_id, publisher_profile_id) pair uniquely identifies a publisher profile. Buyers can call the PublisherProfiles::List endpoint to get a list of publisher profiles for a given seller." - }, - "publisherProvidedForecast": { - "$ref": "PublisherProvidedForecast", - "description": "Publisher self-provided forecast information." - }, - "revisionNumber": { - "type": "string", - "description": "The revision number of the product. (readonly)", - "format": "int64" - }, - "seller": { - "$ref": "Seller", - "description": "Information about the seller that created this product (readonly, except on create)" - }, - "sharedTargetings": { - "type": "array", - "description": "Targeting that is shared between the buyer and the seller. Each targeting criteria has a specified key and for each key there is a list of inclusion value or exclusion values. (buyer-readonly)", - "items": { - "$ref": "SharedTargeting" - } - }, - "state": { - "type": "string", - "description": "The state of the product. (buyer-readonly)" - }, - "syndicationProduct": { - "type": "string", - "description": "The syndication product associated with the deal. (readonly, except on create)" - }, - "terms": { - "$ref": "DealTerms", - "description": "The negotiable terms of the deal (buyer-readonly)" - }, - "webPropertyCode": { - "type": "string", - "description": "The web property code for the seller. This field is meant to be copied over as is when creating deals." - } - } - }, - "Proposal": { - "id": "Proposal", - "type": "object", - "description": "Represents a proposal in the marketplace. A proposal is the unit of negotiation between a seller and a buyer and contains deals which are served. Each field in a proposal can have one of the following setting:\n\n(readonly) - It is an error to try and set this field. (buyer-readonly) - Only the seller can set this field. (seller-readonly) - Only the buyer can set this field. (updatable) - The field is updatable at all times by either buyer or the seller.", - "properties": { - "billedBuyer": { - "$ref": "Buyer", - "description": "Reference to the buyer that will get billed for this proposal. (readonly)" - }, - "buyer": { - "$ref": "Buyer", - "description": "Reference to the buyer on the proposal. (readonly, except on create)" - }, - "buyerContacts": { - "type": "array", - "description": "Optional contact information of the buyer. (seller-readonly)", - "items": { - "$ref": "ContactInformation" - } - }, - "buyerPrivateData": { - "$ref": "PrivateData", - "description": "Private data for buyer. (hidden from seller)." - }, - "dbmAdvertiserIds": { - "type": "array", - "description": "IDs of DBM advertisers permission to this proposal.", - "items": { - "type": "string" - } - }, - "hasBuyerSignedOff": { - "type": "boolean", - "description": "When an proposal is in an accepted state, indicates whether the buyer has signed off. Once both sides have signed off on a deal, the proposal can be finalized by the seller. (seller-readonly)" - }, - "hasSellerSignedOff": { - "type": "boolean", - "description": "When an proposal is in an accepted state, indicates whether the buyer has signed off Once both sides have signed off on a deal, the proposal can be finalized by the seller. (buyer-readonly)" - }, - "inventorySource": { - "type": "string", - "description": "What exchange will provide this inventory (readonly, except on create)." - }, - "isRenegotiating": { - "type": "boolean", - "description": "True if the proposal is being renegotiated (readonly)." - }, - "isSetupComplete": { - "type": "boolean", - "description": "True, if the buyside inventory setup is complete for this proposal. (readonly, except via OrderSetupCompleted action) Deprecated in favor of deal level setup complete flag." - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"adexchangebuyer#proposal\".", - "default": "adexchangebuyer#proposal" - }, - "labels": { - "type": "array", - "description": "List of labels associated with the proposal. (readonly)", - "items": { - "$ref": "MarketplaceLabel" - } - }, - "lastUpdaterOrCommentorRole": { - "type": "string", - "description": "The role of the last user that either updated the proposal or left a comment. (readonly)" - }, - "name": { - "type": "string", - "description": "The name for the proposal (updatable)" - }, - "negotiationId": { - "type": "string", - "description": "Optional negotiation id if this proposal is a preferred deal proposal." - }, - "originatorRole": { - "type": "string", - "description": "Indicates whether the buyer/seller created the proposal.(readonly)" - }, - "privateAuctionId": { - "type": "string", - "description": "Optional private auction id if this proposal is a private auction proposal." - }, - "proposalId": { - "type": "string", - "description": "The unique id of the proposal. (readonly)." - }, - "proposalState": { - "type": "string", - "description": "The current state of the proposal. (readonly)" - }, - "revisionNumber": { - "type": "string", - "description": "The revision number for the proposal (readonly).", - "format": "int64" - }, - "revisionTimeMs": { - "type": "string", - "description": "The time (ms since epoch) when the proposal was last revised (readonly).", - "format": "int64" - }, - "seller": { - "$ref": "Seller", - "description": "Reference to the seller on the proposal. (readonly, except on create)" - }, - "sellerContacts": { - "type": "array", - "description": "Optional contact information of the seller (buyer-readonly).", - "items": { - "$ref": "ContactInformation" - } - } - } - }, - "PublisherProfileApiProto": { - "id": "PublisherProfileApiProto", - "type": "object", - "properties": { - "accountId": { - "type": "string", - "description": "Deprecated: use the seller.account_id. The account id of the seller." - }, - "audience": { - "type": "string", - "description": "Publisher provided info on its audience." - }, - "buyerPitchStatement": { - "type": "string", - "description": "A pitch statement for the buyer" - }, - "directContact": { - "type": "string", - "description": "Direct contact for the publisher profile." - }, - "exchange": { - "type": "string", - "description": "Exchange where this publisher profile is from. E.g. AdX, Rubicon etc..." - }, - "googlePlusLink": { - "type": "string", - "description": "Link to publisher's Google+ page." - }, - "isParent": { - "type": "boolean", - "description": "True, if this is the parent profile, which represents all domains owned by the publisher." - }, - "isPublished": { - "type": "boolean", - "description": "True, if this profile is published. Deprecated for state." - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"adexchangebuyer#publisherProfileApiProto\".", - "default": "adexchangebuyer#publisherProfileApiProto" - }, - "logoUrl": { - "type": "string", - "description": "The url to the logo for the publisher." - }, - "mediaKitLink": { - "type": "string", - "description": "The url for additional marketing and sales materials." - }, - "name": { - "type": "string" - }, - "overview": { - "type": "string", - "description": "Publisher provided overview." - }, - "profileId": { - "type": "integer", - "description": "The pair of (seller.account_id, profile_id) uniquely identifies a publisher profile for a given publisher.", - "format": "int32" - }, - "programmaticContact": { - "type": "string", - "description": "Programmatic contact for the publisher profile." - }, - "publisherDomains": { - "type": "array", - "description": "The list of domains represented in this publisher profile. Empty if this is a parent profile.", - "items": { - "type": "string" - } - }, - "publisherProfileId": { - "type": "string", - "description": "Unique Id for publisher profile." - }, - "publisherProvidedForecast": { - "$ref": "PublisherProvidedForecast", - "description": "Publisher provided forecasting information." - }, - "rateCardInfoLink": { - "type": "string", - "description": "Link to publisher rate card" - }, - "samplePageLink": { - "type": "string", - "description": "Link for a sample content page." - }, - "seller": { - "$ref": "Seller", - "description": "Seller of the publisher profile." - }, - "state": { - "type": "string", - "description": "State of the publisher profile." - }, - "topHeadlines": { - "type": "array", - "description": "Publisher provided key metrics and rankings.", - "items": { - "type": "string" - } - } - } - }, - "PublisherProvidedForecast": { - "id": "PublisherProvidedForecast", - "type": "object", - "description": "This message carries publisher provided forecasting information.", - "properties": { - "dimensions": { - "type": "array", - "description": "Publisher provided dimensions. E.g. geo, sizes etc...", - "items": { - "$ref": "Dimension" - } - }, - "weeklyImpressions": { - "type": "string", - "description": "Publisher provided weekly impressions.", - "format": "int64" - }, - "weeklyUniques": { - "type": "string", - "description": "Publisher provided weekly uniques.", - "format": "int64" - } - } - }, - "Seller": { - "id": "Seller", - "type": "object", - "properties": { - "accountId": { - "type": "string", - "description": "The unique id for the seller. The seller fills in this field. The seller account id is then available to buyer in the product." - }, - "subAccountId": { - "type": "string", - "description": "Optional sub-account id for the seller." - } - } - }, - "SharedTargeting": { - "id": "SharedTargeting", - "type": "object", - "properties": { - "exclusions": { - "type": "array", - "description": "The list of values to exclude from targeting. Each value is AND'd together.", - "items": { - "$ref": "TargetingValue" - } - }, - "inclusions": { - "type": "array", - "description": "The list of value to include as part of the targeting. Each value is OR'd together.", - "items": { - "$ref": "TargetingValue" - } }, "key": { - "type": "string", - "description": "The key representing the shared targeting criterion." + "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" + }, + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", + "location": "query", + "type": "string" + }, + "userIp": { + "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", + "location": "query", + "type": "string" } - } }, - "TargetingValue": { - "id": "TargetingValue", - "type": "object", - "properties": { - "creativeSizeValue": { - "$ref": "TargetingValueCreativeSize", - "description": "The creative size value to exclude/include." + "protocol": "rest", + "resources": { + "accounts": { + "methods": { + "get": { + "description": "Gets one account by ID.", + "httpMethod": "GET", + "id": "adexchangebuyer.accounts.get", + "parameterOrder": [ + "id" + ], + "parameters": { + "id": { + "description": "The account id", + "format": "int32", + "location": "path", + "required": true, + "type": "integer" + } + }, + "path": "accounts/{id}", + "response": { + "$ref": "Account" + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.buyer" + ] + }, + "list": { + "description": "Retrieves the authenticated user's list of accounts.", + "httpMethod": "GET", + "id": "adexchangebuyer.accounts.list", + "path": "accounts", + "response": { + "$ref": "AccountsList" + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.buyer" + ] + }, + "patch": { + "description": "Updates an existing account. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "adexchangebuyer.accounts.patch", + "parameterOrder": [ + "id" + ], + "parameters": { + "confirmUnsafeAccountChange": { + "description": "Confirmation for erasing bidder and cookie matching urls.", + "location": "query", + "type": "boolean" + }, + "id": { + "description": "The account id", + "format": "int32", + "location": "path", + "required": true, + "type": "integer" + } + }, + "path": "accounts/{id}", + "request": { + "$ref": "Account" + }, + "response": { + "$ref": "Account" + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.buyer" + ] + }, + "update": { + "description": "Updates an existing account.", + "httpMethod": "PUT", + "id": "adexchangebuyer.accounts.update", + "parameterOrder": [ + "id" + ], + "parameters": { + "confirmUnsafeAccountChange": { + "description": "Confirmation for erasing bidder and cookie matching urls.", + "location": "query", + "type": "boolean" + }, + "id": { + "description": "The account id", + "format": "int32", + "location": "path", + "required": true, + "type": "integer" + } + }, + "path": "accounts/{id}", + "request": { + "$ref": "Account" + }, + "response": { + "$ref": "Account" + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.buyer" + ] + } + } }, - "dayPartTargetingValue": { - "$ref": "TargetingValueDayPartTargeting", - "description": "The daypart targeting to include / exclude. Filled in when the key is GOOG_DAYPART_TARGETING." + "billingInfo": { + "methods": { + "get": { + "description": "Returns the billing information for one account specified by account ID.", + "httpMethod": "GET", + "id": "adexchangebuyer.billingInfo.get", + "parameterOrder": [ + "accountId" + ], + "parameters": { + "accountId": { + "description": "The account id.", + "format": "int32", + "location": "path", + "required": true, + "type": "integer" + } + }, + "path": "billinginfo/{accountId}", + "response": { + "$ref": "BillingInfo" + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.buyer" + ] + }, + "list": { + "description": "Retrieves a list of billing information for all accounts of the authenticated user.", + "httpMethod": "GET", + "id": "adexchangebuyer.billingInfo.list", + "path": "billinginfo", + "response": { + "$ref": "BillingInfoList" + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.buyer" + ] + } + } }, - "longValue": { - "type": "string", - "description": "The long value to exclude/include.", - "format": "int64" + "budget": { + "methods": { + "get": { + "description": "Returns the budget information for the adgroup specified by the accountId and billingId.", + "httpMethod": "GET", + "id": "adexchangebuyer.budget.get", + "parameterOrder": [ + "accountId", + "billingId" + ], + "parameters": { + "accountId": { + "description": "The account id to get the budget information for.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "billingId": { + "description": "The billing id to get the budget information for.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "billinginfo/{accountId}/{billingId}", + "response": { + "$ref": "Budget" + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.buyer" + ] + }, + "patch": { + "description": "Updates the budget amount for the budget of the adgroup specified by the accountId and billingId, with the budget amount in the request. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "adexchangebuyer.budget.patch", + "parameterOrder": [ + "accountId", + "billingId" + ], + "parameters": { + "accountId": { + "description": "The account id associated with the budget being updated.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "billingId": { + "description": "The billing id associated with the budget being updated.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "billinginfo/{accountId}/{billingId}", + "request": { + "$ref": "Budget" + }, + "response": { + "$ref": "Budget" + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.buyer" + ] + }, + "update": { + "description": "Updates the budget amount for the budget of the adgroup specified by the accountId and billingId, with the budget amount in the request.", + "httpMethod": "PUT", + "id": "adexchangebuyer.budget.update", + "parameterOrder": [ + "accountId", + "billingId" + ], + "parameters": { + "accountId": { + "description": "The account id associated with the budget being updated.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "billingId": { + "description": "The billing id associated with the budget being updated.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "billinginfo/{accountId}/{billingId}", + "request": { + "$ref": "Budget" + }, + "response": { + "$ref": "Budget" + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.buyer" + ] + } + } }, - "stringValue": { - "type": "string", - "description": "The string value to exclude/include." + "creatives": { + "methods": { + "addDeal": { + "description": "Add a deal id association for the creative.", + "httpMethod": "POST", + "id": "adexchangebuyer.creatives.addDeal", + "parameterOrder": [ + "accountId", + "buyerCreativeId", + "dealId" + ], + "parameters": { + "accountId": { + "description": "The id for the account that will serve this creative.", + "format": "int32", + "location": "path", + "required": true, + "type": "integer" + }, + "buyerCreativeId": { + "description": "The buyer-specific id for this creative.", + "location": "path", + "required": true, + "type": "string" + }, + "dealId": { + "description": "The id of the deal id to associate with this creative.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "creatives/{accountId}/{buyerCreativeId}/addDeal/{dealId}", + "scopes": [ + "https://www.googleapis.com/auth/adexchange.buyer" + ] + }, + "get": { + "description": "Gets the status for a single creative. A creative will be available 30-40 minutes after submission.", + "httpMethod": "GET", + "id": "adexchangebuyer.creatives.get", + "parameterOrder": [ + "accountId", + "buyerCreativeId" + ], + "parameters": { + "accountId": { + "description": "The id for the account that will serve this creative.", + "format": "int32", + "location": "path", + "required": true, + "type": "integer" + }, + "buyerCreativeId": { + "description": "The buyer-specific id for this creative.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "creatives/{accountId}/{buyerCreativeId}", + "response": { + "$ref": "Creative" + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.buyer" + ] + }, + "insert": { + "description": "Submit a new creative.", + "httpMethod": "POST", + "id": "adexchangebuyer.creatives.insert", + "path": "creatives", + "request": { + "$ref": "Creative" + }, + "response": { + "$ref": "Creative" + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.buyer" + ] + }, + "list": { + "description": "Retrieves a list of the authenticated user's active creatives. A creative will be available 30-40 minutes after submission.", + "httpMethod": "GET", + "id": "adexchangebuyer.creatives.list", + "parameters": { + "accountId": { + "description": "When specified, only creatives for the given account ids are returned.", + "format": "int32", + "location": "query", + "repeated": true, + "type": "integer" + }, + "buyerCreativeId": { + "description": "When specified, only creatives for the given buyer creative ids are returned.", + "location": "query", + "repeated": true, + "type": "string" + }, + "dealsStatusFilter": { + "description": "When specified, only creatives having the given deals status are returned.", + "enum": [ + "approved", + "conditionally_approved", + "disapproved", + "not_checked" + ], + "enumDescriptions": [ + "Creatives which have been approved for serving on deals.", + "Creatives which have been conditionally approved for serving on deals.", + "Creatives which have been disapproved for serving on deals.", + "Creatives whose deals status is not yet checked." + ], + "location": "query", + "type": "string" + }, + "maxResults": { + "description": "Maximum number of entries returned on one result page. If not set, the default is 100. Optional.", + "format": "uint32", + "location": "query", + "maximum": "1000", + "minimum": "1", + "type": "integer" + }, + "openAuctionStatusFilter": { + "description": "When specified, only creatives having the given open auction status are returned.", + "enum": [ + "approved", + "conditionally_approved", + "disapproved", + "not_checked" + ], + "enumDescriptions": [ + "Creatives which have been approved for serving on the open auction.", + "Creatives which have been conditionally approved for serving on the open auction.", + "Creatives which have been disapproved for serving on the open auction.", + "Creatives whose open auction status is not yet checked." + ], + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "A continuation token, used to page through ad clients. To retrieve the next page, set this parameter to the value of \"nextPageToken\" from the previous response. Optional.", + "location": "query", + "type": "string" + } + }, + "path": "creatives", + "response": { + "$ref": "CreativesList" + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.buyer" + ] + }, + "listDeals": { + "description": "Lists the external deal ids associated with the creative.", + "httpMethod": "GET", + "id": "adexchangebuyer.creatives.listDeals", + "parameterOrder": [ + "accountId", + "buyerCreativeId" + ], + "parameters": { + "accountId": { + "description": "The id for the account that will serve this creative.", + "format": "int32", + "location": "path", + "required": true, + "type": "integer" + }, + "buyerCreativeId": { + "description": "The buyer-specific id for this creative.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "creatives/{accountId}/{buyerCreativeId}/listDeals", + "response": { + "$ref": "CreativeDealIds" + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.buyer" + ] + }, + "removeDeal": { + "description": "Remove a deal id associated with the creative.", + "httpMethod": "POST", + "id": "adexchangebuyer.creatives.removeDeal", + "parameterOrder": [ + "accountId", + "buyerCreativeId", + "dealId" + ], + "parameters": { + "accountId": { + "description": "The id for the account that will serve this creative.", + "format": "int32", + "location": "path", + "required": true, + "type": "integer" + }, + "buyerCreativeId": { + "description": "The buyer-specific id for this creative.", + "location": "path", + "required": true, + "type": "string" + }, + "dealId": { + "description": "The id of the deal id to disassociate with this creative.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "creatives/{accountId}/{buyerCreativeId}/removeDeal/{dealId}", + "scopes": [ + "https://www.googleapis.com/auth/adexchange.buyer" + ] + } + } + }, + "marketplacedeals": { + "methods": { + "delete": { + "description": "Delete the specified deals from the proposal", + "httpMethod": "POST", + "id": "adexchangebuyer.marketplacedeals.delete", + "parameterOrder": [ + "proposalId" + ], + "parameters": { + "proposalId": { + "description": "The proposalId to delete deals from.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "proposals/{proposalId}/deals/delete", + "request": { + "$ref": "DeleteOrderDealsRequest" + }, + "response": { + "$ref": "DeleteOrderDealsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.buyer" + ] + }, + "insert": { + "description": "Add new deals for the specified proposal", + "httpMethod": "POST", + "id": "adexchangebuyer.marketplacedeals.insert", + "parameterOrder": [ + "proposalId" + ], + "parameters": { + "proposalId": { + "description": "proposalId for which deals need to be added.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "proposals/{proposalId}/deals/insert", + "request": { + "$ref": "AddOrderDealsRequest" + }, + "response": { + "$ref": "AddOrderDealsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.buyer" + ] + }, + "list": { + "description": "List all the deals for a given proposal", + "httpMethod": "GET", + "id": "adexchangebuyer.marketplacedeals.list", + "parameterOrder": [ + "proposalId" + ], + "parameters": { + "pqlQuery": { + "description": "Query string to retrieve specific deals.", + "location": "query", + "type": "string" + }, + "proposalId": { + "description": "The proposalId to get deals for. To search across all proposals specify order_id = '-' as part of the URL.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "proposals/{proposalId}/deals", + "response": { + "$ref": "GetOrderDealsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.buyer" + ] + }, + "update": { + "description": "Replaces all the deals in the proposal with the passed in deals", + "httpMethod": "POST", + "id": "adexchangebuyer.marketplacedeals.update", + "parameterOrder": [ + "proposalId" + ], + "parameters": { + "proposalId": { + "description": "The proposalId to edit deals on.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "proposals/{proposalId}/deals/update", + "request": { + "$ref": "EditAllOrderDealsRequest" + }, + "response": { + "$ref": "EditAllOrderDealsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.buyer" + ] + } + } + }, + "marketplacenotes": { + "methods": { + "insert": { + "description": "Add notes to the proposal", + "httpMethod": "POST", + "id": "adexchangebuyer.marketplacenotes.insert", + "parameterOrder": [ + "proposalId" + ], + "parameters": { + "proposalId": { + "description": "The proposalId to add notes for.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "proposals/{proposalId}/notes/insert", + "request": { + "$ref": "AddOrderNotesRequest" + }, + "response": { + "$ref": "AddOrderNotesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.buyer" + ] + }, + "list": { + "description": "Get all the notes associated with a proposal", + "httpMethod": "GET", + "id": "adexchangebuyer.marketplacenotes.list", + "parameterOrder": [ + "proposalId" + ], + "parameters": { + "pqlQuery": { + "description": "Query string to retrieve specific notes. To search the text contents of notes, please use syntax like \"WHERE note.note = \"foo\" or \"WHERE note.note LIKE \"%bar%\"", + "location": "query", + "type": "string" + }, + "proposalId": { + "description": "The proposalId to get notes for. To search across all proposals specify order_id = '-' as part of the URL.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "proposals/{proposalId}/notes", + "response": { + "$ref": "GetOrderNotesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.buyer" + ] + } + } + }, + "marketplaceprivateauction": { + "methods": { + "updateproposal": { + "description": "Update a given private auction proposal", + "httpMethod": "POST", + "id": "adexchangebuyer.marketplaceprivateauction.updateproposal", + "parameterOrder": [ + "privateAuctionId" + ], + "parameters": { + "privateAuctionId": { + "description": "The private auction id to be updated.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "privateauction/{privateAuctionId}/updateproposal", + "request": { + "$ref": "UpdatePrivateAuctionProposalRequest" + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.buyer" + ] + } + } + }, + "performanceReport": { + "methods": { + "list": { + "description": "Retrieves the authenticated user's list of performance metrics.", + "httpMethod": "GET", + "id": "adexchangebuyer.performanceReport.list", + "parameterOrder": [ + "accountId", + "endDateTime", + "startDateTime" + ], + "parameters": { + "accountId": { + "description": "The account id to get the reports.", + "format": "int64", + "location": "query", + "required": true, + "type": "string" + }, + "endDateTime": { + "description": "The end time of the report in ISO 8601 timestamp format using UTC.", + "location": "query", + "required": true, + "type": "string" + }, + "maxResults": { + "description": "Maximum number of entries returned on one result page. If not set, the default is 100. Optional.", + "format": "uint32", + "location": "query", + "maximum": "1000", + "minimum": "1", + "type": "integer" + }, + "pageToken": { + "description": "A continuation token, used to page through performance reports. To retrieve the next page, set this parameter to the value of \"nextPageToken\" from the previous response. Optional.", + "location": "query", + "type": "string" + }, + "startDateTime": { + "description": "The start time of the report in ISO 8601 timestamp format using UTC.", + "location": "query", + "required": true, + "type": "string" + } + }, + "path": "performancereport", + "response": { + "$ref": "PerformanceReportList" + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.buyer" + ] + } + } + }, + "pretargetingConfig": { + "methods": { + "delete": { + "description": "Deletes an existing pretargeting config.", + "httpMethod": "DELETE", + "id": "adexchangebuyer.pretargetingConfig.delete", + "parameterOrder": [ + "accountId", + "configId" + ], + "parameters": { + "accountId": { + "description": "The account id to delete the pretargeting config for.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "configId": { + "description": "The specific id of the configuration to delete.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "pretargetingconfigs/{accountId}/{configId}", + "scopes": [ + "https://www.googleapis.com/auth/adexchange.buyer" + ] + }, + "get": { + "description": "Gets a specific pretargeting configuration", + "httpMethod": "GET", + "id": "adexchangebuyer.pretargetingConfig.get", + "parameterOrder": [ + "accountId", + "configId" + ], + "parameters": { + "accountId": { + "description": "The account id to get the pretargeting config for.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "configId": { + "description": "The specific id of the configuration to retrieve.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "pretargetingconfigs/{accountId}/{configId}", + "response": { + "$ref": "PretargetingConfig" + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.buyer" + ] + }, + "insert": { + "description": "Inserts a new pretargeting configuration.", + "httpMethod": "POST", + "id": "adexchangebuyer.pretargetingConfig.insert", + "parameterOrder": [ + "accountId" + ], + "parameters": { + "accountId": { + "description": "The account id to insert the pretargeting config for.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "pretargetingconfigs/{accountId}", + "request": { + "$ref": "PretargetingConfig" + }, + "response": { + "$ref": "PretargetingConfig" + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.buyer" + ] + }, + "list": { + "description": "Retrieves a list of the authenticated user's pretargeting configurations.", + "httpMethod": "GET", + "id": "adexchangebuyer.pretargetingConfig.list", + "parameterOrder": [ + "accountId" + ], + "parameters": { + "accountId": { + "description": "The account id to get the pretargeting configs for.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "pretargetingconfigs/{accountId}", + "response": { + "$ref": "PretargetingConfigList" + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.buyer" + ] + }, + "patch": { + "description": "Updates an existing pretargeting config. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "adexchangebuyer.pretargetingConfig.patch", + "parameterOrder": [ + "accountId", + "configId" + ], + "parameters": { + "accountId": { + "description": "The account id to update the pretargeting config for.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "configId": { + "description": "The specific id of the configuration to update.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "pretargetingconfigs/{accountId}/{configId}", + "request": { + "$ref": "PretargetingConfig" + }, + "response": { + "$ref": "PretargetingConfig" + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.buyer" + ] + }, + "update": { + "description": "Updates an existing pretargeting config.", + "httpMethod": "PUT", + "id": "adexchangebuyer.pretargetingConfig.update", + "parameterOrder": [ + "accountId", + "configId" + ], + "parameters": { + "accountId": { + "description": "The account id to update the pretargeting config for.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "configId": { + "description": "The specific id of the configuration to update.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "pretargetingconfigs/{accountId}/{configId}", + "request": { + "$ref": "PretargetingConfig" + }, + "response": { + "$ref": "PretargetingConfig" + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.buyer" + ] + } + } + }, + "products": { + "methods": { + "get": { + "description": "Gets the requested product by id.", + "httpMethod": "GET", + "id": "adexchangebuyer.products.get", + "parameterOrder": [ + "productId" + ], + "parameters": { + "productId": { + "description": "The id for the product to get the head revision for.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "products/{productId}", + "response": { + "$ref": "Product" + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.buyer" + ] + }, + "search": { + "description": "Gets the requested product.", + "httpMethod": "GET", + "id": "adexchangebuyer.products.search", + "parameters": { + "pqlQuery": { + "description": "The pql query used to query for products.", + "location": "query", + "type": "string" + } + }, + "path": "products/search", + "response": { + "$ref": "GetOffersResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.buyer" + ] + } + } + }, + "proposals": { + "methods": { + "get": { + "description": "Get a proposal given its id", + "httpMethod": "GET", + "id": "adexchangebuyer.proposals.get", + "parameterOrder": [ + "proposalId" + ], + "parameters": { + "proposalId": { + "description": "Id of the proposal to retrieve.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "proposals/{proposalId}", + "response": { + "$ref": "Proposal" + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.buyer" + ] + }, + "insert": { + "description": "Create the given list of proposals", + "httpMethod": "POST", + "id": "adexchangebuyer.proposals.insert", + "path": "proposals/insert", + "request": { + "$ref": "CreateOrdersRequest" + }, + "response": { + "$ref": "CreateOrdersResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.buyer" + ] + }, + "patch": { + "description": "Update the given proposal. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "adexchangebuyer.proposals.patch", + "parameterOrder": [ + "proposalId", + "revisionNumber", + "updateAction" + ], + "parameters": { + "proposalId": { + "description": "The proposal id to update.", + "location": "path", + "required": true, + "type": "string" + }, + "revisionNumber": { + "description": "The last known revision number to update. If the head revision in the marketplace database has since changed, an error will be thrown. The caller should then fetch the latest proposal at head revision and retry the update at that revision.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "updateAction": { + "description": "The proposed action to take on the proposal. This field is required and it must be set when updating a proposal.", + "enum": [ + "accept", + "cancel", + "propose", + "proposeAndAccept", + "unknownAction", + "updateNonTerms" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "" + ], + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "proposals/{proposalId}/{revisionNumber}/{updateAction}", + "request": { + "$ref": "Proposal" + }, + "response": { + "$ref": "Proposal" + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.buyer" + ] + }, + "search": { + "description": "Search for proposals using pql query", + "httpMethod": "GET", + "id": "adexchangebuyer.proposals.search", + "parameters": { + "pqlQuery": { + "description": "Query string to retrieve specific proposals.", + "location": "query", + "type": "string" + } + }, + "path": "proposals/search", + "response": { + "$ref": "GetOrdersResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.buyer" + ] + }, + "setupcomplete": { + "description": "Update the given proposal to indicate that setup has been completed.", + "httpMethod": "POST", + "id": "adexchangebuyer.proposals.setupcomplete", + "parameterOrder": [ + "proposalId" + ], + "parameters": { + "proposalId": { + "description": "The proposal id for which the setup is complete", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "proposals/{proposalId}/setupcomplete", + "scopes": [ + "https://www.googleapis.com/auth/adexchange.buyer" + ] + }, + "update": { + "description": "Update the given proposal", + "httpMethod": "PUT", + "id": "adexchangebuyer.proposals.update", + "parameterOrder": [ + "proposalId", + "revisionNumber", + "updateAction" + ], + "parameters": { + "proposalId": { + "description": "The proposal id to update.", + "location": "path", + "required": true, + "type": "string" + }, + "revisionNumber": { + "description": "The last known revision number to update. If the head revision in the marketplace database has since changed, an error will be thrown. The caller should then fetch the latest proposal at head revision and retry the update at that revision.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "updateAction": { + "description": "The proposed action to take on the proposal. This field is required and it must be set when updating a proposal.", + "enum": [ + "accept", + "cancel", + "propose", + "proposeAndAccept", + "unknownAction", + "updateNonTerms" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "" + ], + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "proposals/{proposalId}/{revisionNumber}/{updateAction}", + "request": { + "$ref": "Proposal" + }, + "response": { + "$ref": "Proposal" + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.buyer" + ] + } + } + }, + "pubprofiles": { + "methods": { + "list": { + "description": "Gets the requested publisher profile(s) by publisher accountId.", + "httpMethod": "GET", + "id": "adexchangebuyer.pubprofiles.list", + "parameterOrder": [ + "accountId" + ], + "parameters": { + "accountId": { + "description": "The accountId of the publisher to get profiles for.", + "format": "int32", + "location": "path", + "required": true, + "type": "integer" + } + }, + "path": "publisher/{accountId}/profiles", + "response": { + "$ref": "GetPublisherProfilesByAccountIdResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.buyer" + ] + } + } } - } }, - "TargetingValueCreativeSize": { - "id": "TargetingValueCreativeSize", - "type": "object", - "properties": { - "companionSizes": { - "type": "array", - "description": "For video size type, the list of companion sizes.", - "items": { - "$ref": "TargetingValueSize" - } + "revision": "20180222", + "rootUrl": "https://www.googleapis.com/", + "schemas": { + "Account": { + "description": "Configuration data for an Ad Exchange buyer account.", + "id": "Account", + "properties": { + "applyPretargetingToNonGuaranteedDeals": { + "description": "When this is false, bid requests that include a deal ID for a private auction or preferred deal are always sent to your bidder. When true, all active pretargeting configs will be applied to private auctions and preferred deals. Programmatic Guaranteed deals (when enabled) are always sent to your bidder.", + "type": "boolean" + }, + "bidderLocation": { + "description": "Your bidder locations that have distinct URLs.", + "items": { + "properties": { + "bidProtocol": { + "description": "The protocol that the bidder endpoint is using. OpenRTB protocols with prefix PROTOCOL_OPENRTB_PROTOBUF use proto buffer, otherwise use JSON. Allowed values: \n- PROTOCOL_ADX \n- PROTOCOL_OPENRTB_2_2 \n- PROTOCOL_OPENRTB_2_3 \n- PROTOCOL_OPENRTB_2_4 \n- PROTOCOL_OPENRTB_2_5 \n- PROTOCOL_OPENRTB_PROTOBUF_2_3 \n- PROTOCOL_OPENRTB_PROTOBUF_2_4 \n- PROTOCOL_OPENRTB_PROTOBUF_2_5", + "type": "string" + }, + "maximumQps": { + "description": "The maximum queries per second the Ad Exchange will send.", + "format": "int32", + "type": "integer" + }, + "region": { + "description": "The geographical region the Ad Exchange should send requests from. Only used by some quota systems, but always setting the value is recommended. Allowed values: \n- ASIA \n- EUROPE \n- US_EAST \n- US_WEST", + "type": "string" + }, + "url": { + "description": "The URL to which the Ad Exchange will send bid requests.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "cookieMatchingNid": { + "description": "The nid parameter value used in cookie match requests. Please contact your technical account manager if you need to change this.", + "type": "string" + }, + "cookieMatchingUrl": { + "description": "The base URL used in cookie match requests.", + "type": "string" + }, + "id": { + "description": "Account id.", + "format": "int32", + "type": "integer" + }, + "kind": { + "default": "adexchangebuyer#account", + "description": "Resource type.", + "type": "string" + }, + "maximumActiveCreatives": { + "description": "The maximum number of active creatives that an account can have, where a creative is active if it was inserted or bid with in the last 30 days. Please contact your technical account manager if you need to change this.", + "format": "int32", + "type": "integer" + }, + "maximumTotalQps": { + "description": "The sum of all bidderLocation.maximumQps values cannot exceed this. Please contact your technical account manager if you need to change this.", + "format": "int32", + "type": "integer" + }, + "numberActiveCreatives": { + "description": "The number of creatives that this account inserted or bid with in the last 30 days.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" }, - "creativeSizeType": { - "type": "string", - "description": "The Creative size type." + "AccountsList": { + "description": "An account feed lists Ad Exchange buyer accounts that the user has access to. Each entry in the feed corresponds to a single buyer account.", + "id": "AccountsList", + "properties": { + "items": { + "description": "A list of accounts.", + "items": { + "$ref": "Account" + }, + "type": "array" + }, + "kind": { + "default": "adexchangebuyer#accountsList", + "description": "Resource type.", + "type": "string" + } + }, + "type": "object" }, - "nativeTemplate": { - "type": "string", - "description": "The native template for native ad." + "AddOrderDealsRequest": { + "id": "AddOrderDealsRequest", + "properties": { + "deals": { + "description": "The list of deals to add", + "items": { + "$ref": "MarketplaceDeal" + }, + "type": "array" + }, + "proposalRevisionNumber": { + "description": "The last known proposal revision number.", + "format": "int64", + "type": "string" + }, + "updateAction": { + "description": "Indicates an optional action to take on the proposal", + "type": "string" + } + }, + "type": "object" }, - "size": { - "$ref": "TargetingValueSize", - "description": "For regular or video creative size type, specifies the size of the creative." + "AddOrderDealsResponse": { + "id": "AddOrderDealsResponse", + "properties": { + "deals": { + "description": "List of deals added (in the same proposal as passed in the request)", + "items": { + "$ref": "MarketplaceDeal" + }, + "type": "array" + }, + "proposalRevisionNumber": { + "description": "The updated revision number for the proposal.", + "format": "int64", + "type": "string" + } + }, + "type": "object" }, - "skippableAdType": { - "type": "string", - "description": "The skippable ad type for video size." + "AddOrderNotesRequest": { + "id": "AddOrderNotesRequest", + "properties": { + "notes": { + "description": "The list of notes to add.", + "items": { + "$ref": "MarketplaceNote" + }, + "type": "array" + } + }, + "type": "object" + }, + "AddOrderNotesResponse": { + "id": "AddOrderNotesResponse", + "properties": { + "notes": { + "items": { + "$ref": "MarketplaceNote" + }, + "type": "array" + } + }, + "type": "object" + }, + "BillingInfo": { + "description": "The configuration data for an Ad Exchange billing info.", + "id": "BillingInfo", + "properties": { + "accountId": { + "description": "Account id.", + "format": "int32", + "type": "integer" + }, + "accountName": { + "description": "Account name.", + "type": "string" + }, + "billingId": { + "description": "A list of adgroup IDs associated with this particular account. These IDs may show up as part of a realtime bidding BidRequest, which indicates a bid request for this account.", + "items": { + "type": "string" + }, + "type": "array" + }, + "kind": { + "default": "adexchangebuyer#billingInfo", + "description": "Resource type.", + "type": "string" + } + }, + "type": "object" + }, + "BillingInfoList": { + "description": "A billing info feed lists Billing Info the Ad Exchange buyer account has access to. Each entry in the feed corresponds to a single billing info.", + "id": "BillingInfoList", + "properties": { + "items": { + "description": "A list of billing info relevant for your account.", + "items": { + "$ref": "BillingInfo" + }, + "type": "array" + }, + "kind": { + "default": "adexchangebuyer#billingInfoList", + "description": "Resource type.", + "type": "string" + } + }, + "type": "object" + }, + "Budget": { + "description": "The configuration data for Ad Exchange RTB - Budget API.", + "id": "Budget", + "properties": { + "accountId": { + "description": "The id of the account. This is required for get and update requests.", + "format": "int64", + "type": "string" + }, + "billingId": { + "description": "The billing id to determine which adgroup to provide budget information for. This is required for get and update requests.", + "format": "int64", + "type": "string" + }, + "budgetAmount": { + "description": "The daily budget amount in unit amount of the account currency to apply for the billingId provided. This is required for update requests.", + "format": "int64", + "type": "string" + }, + "currencyCode": { + "description": "The currency code for the buyer. This cannot be altered here.", + "type": "string" + }, + "id": { + "description": "The unique id that describes this item.", + "type": "string" + }, + "kind": { + "default": "adexchangebuyer#budget", + "description": "The kind of the resource, i.e. \"adexchangebuyer#budget\".", + "type": "string" + } + }, + "type": "object" + }, + "Buyer": { + "id": "Buyer", + "properties": { + "accountId": { + "description": "Adx account id of the buyer.", + "type": "string" + } + }, + "type": "object" + }, + "ContactInformation": { + "id": "ContactInformation", + "properties": { + "email": { + "description": "Email address of the contact.", + "type": "string" + }, + "name": { + "description": "The name of the contact.", + "type": "string" + } + }, + "type": "object" + }, + "CreateOrdersRequest": { + "id": "CreateOrdersRequest", + "properties": { + "proposals": { + "description": "The list of proposals to create.", + "items": { + "$ref": "Proposal" + }, + "type": "array" + }, + "webPropertyCode": { + "description": "Web property id of the seller creating these orders", + "type": "string" + } + }, + "type": "object" + }, + "CreateOrdersResponse": { + "id": "CreateOrdersResponse", + "properties": { + "proposals": { + "description": "The list of proposals successfully created.", + "items": { + "$ref": "Proposal" + }, + "type": "array" + } + }, + "type": "object" + }, + "Creative": { + "description": "A creative and its classification data.", + "id": "Creative", + "properties": { + "HTMLSnippet": { + "description": "The HTML snippet that displays the ad when inserted in the web page. If set, videoURL, videoVastXML, and nativeAd should not be set.", + "type": "string" + }, + "accountId": { + "annotations": { + "required": [ + "adexchangebuyer.creatives.insert" + ] + }, + "description": "Account id.", + "format": "int32", + "type": "integer" + }, + "adChoicesDestinationUrl": { + "description": "The link to the Ad Preferences page. This is only supported for native ads.", + "type": "string" + }, + "advertiserId": { + "description": "Detected advertiser id, if any. Read-only. This field should not be set in requests.", + "items": { + "format": "int64", + "type": "string" + }, + "type": "array" + }, + "advertiserName": { + "annotations": { + "required": [ + "adexchangebuyer.creatives.insert" + ] + }, + "description": "The name of the company being advertised in the creative. The value provided must exist in the advertisers.txt file.", + "type": "string" + }, + "agencyId": { + "description": "The agency id for this creative.", + "format": "int64", + "type": "string" + }, + "apiUploadTimestamp": { + "description": "The last upload timestamp of this creative if it was uploaded via API. Read-only. The value of this field is generated, and will be ignored for uploads. (formatted RFC 3339 timestamp).", + "format": "date-time", + "type": "string" + }, + "attribute": { + "description": "List of buyer selectable attributes for the ads that may be shown from this snippet. Each attribute is represented by an integer as defined in buyer-declarable-creative-attributes.txt.", + "items": { + "format": "int32", + "type": "integer" + }, + "type": "array" + }, + "buyerCreativeId": { + "annotations": { + "required": [ + "adexchangebuyer.creatives.insert" + ] + }, + "description": "A buyer-specific id identifying the creative in this ad.", + "type": "string" + }, + "clickThroughUrl": { + "annotations": { + "required": [ + "adexchangebuyer.creatives.insert" + ] + }, + "description": "The set of destination urls for the snippet.", + "items": { + "type": "string" + }, + "type": "array" + }, + "corrections": { + "description": "Shows any corrections that were applied to this creative. Read-only. This field should not be set in requests.", + "items": { + "properties": { + "contexts": { + "description": "All known serving contexts containing serving status information.", + "items": { + "properties": { + "auctionType": { + "description": "Only set when contextType=AUCTION_TYPE. Represents the auction types this correction applies to.", + "items": { + "type": "string" + }, + "type": "array" + }, + "contextType": { + "description": "The type of context (e.g., location, platform, auction type, SSL-ness).", + "type": "string" + }, + "geoCriteriaId": { + "description": "Only set when contextType=LOCATION. Represents the geo criterias this correction applies to.", + "items": { + "format": "int32", + "type": "integer" + }, + "type": "array" + }, + "platform": { + "description": "Only set when contextType=PLATFORM. Represents the platforms this correction applies to.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "type": "array" + }, + "details": { + "description": "Additional details about the correction.", + "items": { + "type": "string" + }, + "type": "array" + }, + "reason": { + "description": "The type of correction that was applied to the creative.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "dealsStatus": { + "description": "Top-level deals status. Read-only. This field should not be set in requests. If disapproved, an entry for auctionType=DIRECT_DEALS (or ALL) in servingRestrictions will also exist. Note that this may be nuanced with other contextual restrictions, in which case it may be preferable to read from servingRestrictions directly.", + "type": "string" + }, + "detectedDomains": { + "description": "Detected domains for this creative. Read-only. This field should not be set in requests.", + "items": { + "type": "string" + }, + "type": "array" + }, + "filteringReasons": { + "description": "The filtering reasons for the creative. Read-only. This field should not be set in requests.", + "properties": { + "date": { + "description": "The date in ISO 8601 format for the data. The data is collected from 00:00:00 to 23:59:59 in PST.", + "type": "string" + }, + "reasons": { + "description": "The filtering reasons.", + "items": { + "properties": { + "filteringCount": { + "description": "The number of times the creative was filtered for the status. The count is aggregated across all publishers on the exchange.", + "format": "int64", + "type": "string" + }, + "filteringStatus": { + "description": "The filtering status code as defined in creative-status-codes.txt.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "type": "array" + } + }, + "type": "object" + }, + "height": { + "annotations": { + "required": [ + "adexchangebuyer.creatives.insert" + ] + }, + "description": "Ad height.", + "format": "int32", + "type": "integer" + }, + "impressionTrackingUrl": { + "description": "The set of urls to be called to record an impression.", + "items": { + "type": "string" + }, + "type": "array" + }, + "kind": { + "default": "adexchangebuyer#creative", + "description": "Resource type.", + "type": "string" + }, + "languages": { + "description": "Detected languages for this creative. Read-only. This field should not be set in requests.", + "items": { + "type": "string" + }, + "type": "array" + }, + "nativeAd": { + "description": "If nativeAd is set, HTMLSnippet, videoVastXML, and the videoURL outside of nativeAd should not be set. (The videoURL inside nativeAd can be set.)", + "properties": { + "advertiser": { + "type": "string" + }, + "appIcon": { + "description": "The app icon, for app download ads.", + "properties": { + "height": { + "format": "int32", + "type": "integer" + }, + "url": { + "type": "string" + }, + "width": { + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "body": { + "description": "A long description of the ad.", + "type": "string" + }, + "callToAction": { + "description": "A label for the button that the user is supposed to click.", + "type": "string" + }, + "clickLinkUrl": { + "description": "The URL that the browser/SDK will load when the user clicks the ad.", + "type": "string" + }, + "clickTrackingUrl": { + "description": "The URL to use for click tracking.", + "type": "string" + }, + "headline": { + "description": "A short title for the ad.", + "type": "string" + }, + "image": { + "description": "A large image.", + "properties": { + "height": { + "format": "int32", + "type": "integer" + }, + "url": { + "type": "string" + }, + "width": { + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "impressionTrackingUrl": { + "description": "The URLs are called when the impression is rendered.", + "items": { + "type": "string" + }, + "type": "array" + }, + "logo": { + "description": "A smaller image, for the advertiser logo.", + "properties": { + "height": { + "format": "int32", + "type": "integer" + }, + "url": { + "type": "string" + }, + "width": { + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "price": { + "description": "The price of the promoted app including the currency info.", + "type": "string" + }, + "starRating": { + "description": "The app rating in the app store. Must be in the range [0-5].", + "format": "double", + "type": "number" + }, + "store": { + "description": "The URL to the app store to purchase/download the promoted app.", + "type": "string" + }, + "videoURL": { + "description": "The URL of the XML VAST for a native ad. Note this is a separate field from resource.video_url.", + "type": "string" + } + }, + "type": "object" + }, + "openAuctionStatus": { + "description": "Top-level open auction status. Read-only. This field should not be set in requests. If disapproved, an entry for auctionType=OPEN_AUCTION (or ALL) in servingRestrictions will also exist. Note that this may be nuanced with other contextual restrictions, in which case it may be preferable to read from ServingRestrictions directly.", + "type": "string" + }, + "productCategories": { + "description": "Detected product categories, if any. Each category is represented by an integer as defined in ad-product-categories.txt. Read-only. This field should not be set in requests.", + "items": { + "format": "int32", + "type": "integer" + }, + "type": "array" + }, + "restrictedCategories": { + "description": "All restricted categories for the ads that may be shown from this snippet. Each category is represented by an integer as defined in the ad-restricted-categories.txt.", + "items": { + "format": "int32", + "type": "integer" + }, + "type": "array" + }, + "sensitiveCategories": { + "description": "Detected sensitive categories, if any. Each category is represented by an integer as defined in ad-sensitive-categories.txt. Read-only. This field should not be set in requests.", + "items": { + "format": "int32", + "type": "integer" + }, + "type": "array" + }, + "servingRestrictions": { + "description": "The granular status of this ad in specific contexts. A context here relates to where something ultimately serves (for example, a physical location, a platform, an HTTPS vs HTTP request, or the type of auction). Read-only. This field should not be set in requests. See the examples in the Creatives guide for more details.", + "items": { + "properties": { + "contexts": { + "description": "All known contexts/restrictions.", + "items": { + "properties": { + "auctionType": { + "description": "Only set when contextType=AUCTION_TYPE. Represents the auction types this restriction applies to.", + "items": { + "type": "string" + }, + "type": "array" + }, + "contextType": { + "description": "The type of context (e.g., location, platform, auction type, SSL-ness).", + "type": "string" + }, + "geoCriteriaId": { + "description": "Only set when contextType=LOCATION. Represents the geo criterias this restriction applies to. Impressions are considered to match a context if either the user location or publisher location matches a given geoCriteriaId.", + "items": { + "format": "int32", + "type": "integer" + }, + "type": "array" + }, + "platform": { + "description": "Only set when contextType=PLATFORM. Represents the platforms this restriction applies to.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "type": "array" + }, + "disapprovalReasons": { + "description": "The reasons for disapproval within this restriction, if any. Note that not all disapproval reasons may be categorized, so it is possible for the creative to have a status of DISAPPROVED or CONDITIONALLY_APPROVED with an empty list for disapproval_reasons. In this case, please reach out to your TAM to help debug the issue.", + "items": { + "properties": { + "details": { + "description": "Additional details about the reason for disapproval.", + "items": { + "type": "string" + }, + "type": "array" + }, + "reason": { + "description": "The categorized reason for disapproval.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "reason": { + "description": "Why the creative is ineligible to serve in this context (e.g., it has been explicitly disapproved or is pending review).", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "vendorType": { + "description": "List of vendor types for the ads that may be shown from this snippet. Each vendor type is represented by an integer as defined in vendors.txt.", + "items": { + "format": "int32", + "type": "integer" + }, + "type": "array" + }, + "version": { + "description": "The version for this creative. Read-only. This field should not be set in requests.", + "format": "int32", + "type": "integer" + }, + "videoURL": { + "description": "The URL to fetch a video ad. If set, HTMLSnippet, videoVastXML, and nativeAd should not be set. Note, this is different from resource.native_ad.video_url above.", + "type": "string" + }, + "videoVastXML": { + "description": "The contents of a VAST document for a video ad. This document should conform to the VAST 2.0 or 3.0 standard. If set, HTMLSnippet, videoURL, and nativeAd and should not be set.", + "type": "string" + }, + "width": { + "annotations": { + "required": [ + "adexchangebuyer.creatives.insert" + ] + }, + "description": "Ad width.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "CreativeDealIds": { + "description": "The external deal ids associated with a creative.", + "id": "CreativeDealIds", + "properties": { + "dealStatuses": { + "description": "A list of external deal ids and ARC approval status.", + "items": { + "properties": { + "arcStatus": { + "description": "ARC approval status.", + "type": "string" + }, + "dealId": { + "description": "External deal ID.", + "format": "int64", + "type": "string" + }, + "webPropertyId": { + "description": "Publisher ID.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "type": "array" + }, + "kind": { + "default": "adexchangebuyer#creativeDealIds", + "description": "Resource type.", + "type": "string" + } + }, + "type": "object" + }, + "CreativesList": { + "description": "The creatives feed lists the active creatives for the Ad Exchange buyer accounts that the user has access to. Each entry in the feed corresponds to a single creative.", + "id": "CreativesList", + "properties": { + "items": { + "description": "A list of creatives.", + "items": { + "$ref": "Creative" + }, + "type": "array" + }, + "kind": { + "default": "adexchangebuyer#creativesList", + "description": "Resource type.", + "type": "string" + }, + "nextPageToken": { + "description": "Continuation token used to page through creatives. To retrieve the next page of results, set the next request's \"pageToken\" value to this.", + "type": "string" + } + }, + "type": "object" + }, + "DealServingMetadata": { + "id": "DealServingMetadata", + "properties": { + "alcoholAdsAllowed": { + "description": "True if alcohol ads are allowed for this deal (read-only). This field is only populated when querying for finalized orders using the method GetFinalizedOrderDeals", + "type": "boolean" + }, + "dealPauseStatus": { + "$ref": "DealServingMetadataDealPauseStatus", + "description": "Tracks which parties (if any) have paused a deal. (readonly, except via PauseResumeOrderDeals action)" + } + }, + "type": "object" + }, + "DealServingMetadataDealPauseStatus": { + "description": "Tracks which parties (if any) have paused a deal. The deal is considered paused if has_buyer_paused || has_seller_paused. Each of the has_buyer_paused or the has_seller_paused bits can be set independently.", + "id": "DealServingMetadataDealPauseStatus", + "properties": { + "buyerPauseReason": { + "type": "string" + }, + "firstPausedBy": { + "description": "If the deal is paused, records which party paused the deal first.", + "type": "string" + }, + "hasBuyerPaused": { + "type": "boolean" + }, + "hasSellerPaused": { + "type": "boolean" + }, + "sellerPauseReason": { + "type": "string" + } + }, + "type": "object" + }, + "DealTerms": { + "id": "DealTerms", + "properties": { + "brandingType": { + "description": "Visibilty of the URL in bid requests.", + "type": "string" + }, + "crossListedExternalDealIdType": { + "description": "Indicates that this ExternalDealId exists under at least two different AdxInventoryDeals. Currently, the only case that the same ExternalDealId will exist is programmatic cross sell case.", + "type": "string" + }, + "description": { + "description": "Description for the proposed terms of the deal.", + "type": "string" + }, + "estimatedGrossSpend": { + "$ref": "Price", + "description": "Non-binding estimate of the estimated gross spend for this deal Can be set by buyer or seller." + }, + "estimatedImpressionsPerDay": { + "description": "Non-binding estimate of the impressions served per day Can be set by buyer or seller.", + "format": "int64", + "type": "string" + }, + "guaranteedFixedPriceTerms": { + "$ref": "DealTermsGuaranteedFixedPriceTerms", + "description": "The terms for guaranteed fixed price deals." + }, + "nonGuaranteedAuctionTerms": { + "$ref": "DealTermsNonGuaranteedAuctionTerms", + "description": "The terms for non-guaranteed auction deals." + }, + "nonGuaranteedFixedPriceTerms": { + "$ref": "DealTermsNonGuaranteedFixedPriceTerms", + "description": "The terms for non-guaranteed fixed price deals." + }, + "rubiconNonGuaranteedTerms": { + "$ref": "DealTermsRubiconNonGuaranteedTerms", + "description": "The terms for rubicon non-guaranteed deals." + }, + "sellerTimeZone": { + "description": "For deals with Cost Per Day billing, defines the timezone used to mark the boundaries of a day (buyer-readonly)", + "type": "string" + } + }, + "type": "object" + }, + "DealTermsGuaranteedFixedPriceTerms": { + "id": "DealTermsGuaranteedFixedPriceTerms", + "properties": { + "billingInfo": { + "$ref": "DealTermsGuaranteedFixedPriceTermsBillingInfo", + "description": "External billing info for this Deal. This field is relevant when external billing info such as price has a different currency code than DFP/AdX." + }, + "fixedPrices": { + "description": "Fixed price for the specified buyer.", + "items": { + "$ref": "PricePerBuyer" + }, + "type": "array" + }, + "guaranteedImpressions": { + "description": "Guaranteed impressions as a percentage. This is the percentage of guaranteed looks that the buyer is guaranteeing to buy.", + "format": "int64", + "type": "string" + }, + "guaranteedLooks": { + "description": "Count of guaranteed looks. Required for deal, optional for product. For CPD deals, buyer changes to guaranteed_looks will be ignored.", + "format": "int64", + "type": "string" + }, + "minimumDailyLooks": { + "description": "Count of minimum daily looks for a CPD deal. For CPD deals, buyer should negotiate on this field instead of guaranteed_looks.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "DealTermsGuaranteedFixedPriceTermsBillingInfo": { + "id": "DealTermsGuaranteedFixedPriceTermsBillingInfo", + "properties": { + "currencyConversionTimeMs": { + "description": "The timestamp (in ms since epoch) when the original reservation price for the deal was first converted to DFP currency. This is used to convert the contracted price into buyer's currency without discrepancy.", + "format": "int64", + "type": "string" + }, + "dfpLineItemId": { + "description": "The DFP line item id associated with this deal. For features like CPD, buyers can retrieve the DFP line item for billing reconciliation.", + "format": "int64", + "type": "string" + }, + "originalContractedQuantity": { + "description": "The original contracted quantity (# impressions) for this deal. To ensure delivery, sometimes the publisher will book the deal with a impression buffer, such that guaranteed_looks is greater than the contracted quantity. However clients are billed using the original contracted quantity.", + "format": "int64", + "type": "string" + }, + "price": { + "$ref": "Price", + "description": "The original reservation price for the deal, if the currency code is different from the one used in negotiation." + } + }, + "type": "object" + }, + "DealTermsNonGuaranteedAuctionTerms": { + "id": "DealTermsNonGuaranteedAuctionTerms", + "properties": { + "autoOptimizePrivateAuction": { + "description": "True if open auction buyers are allowed to compete with invited buyers in this private auction (buyer-readonly).", + "type": "boolean" + }, + "reservePricePerBuyers": { + "description": "Reserve price for the specified buyer.", + "items": { + "$ref": "PricePerBuyer" + }, + "type": "array" + } + }, + "type": "object" + }, + "DealTermsNonGuaranteedFixedPriceTerms": { + "id": "DealTermsNonGuaranteedFixedPriceTerms", + "properties": { + "fixedPrices": { + "description": "Fixed price for the specified buyer.", + "items": { + "$ref": "PricePerBuyer" + }, + "type": "array" + } + }, + "type": "object" + }, + "DealTermsRubiconNonGuaranteedTerms": { + "id": "DealTermsRubiconNonGuaranteedTerms", + "properties": { + "priorityPrice": { + "$ref": "Price", + "description": "Optional price for Rubicon priority access in the auction." + }, + "standardPrice": { + "$ref": "Price", + "description": "Optional price for Rubicon standard access in the auction." + } + }, + "type": "object" + }, + "DeleteOrderDealsRequest": { + "id": "DeleteOrderDealsRequest", + "properties": { + "dealIds": { + "description": "List of deals to delete for a given proposal", + "items": { + "type": "string" + }, + "type": "array" + }, + "proposalRevisionNumber": { + "description": "The last known proposal revision number.", + "format": "int64", + "type": "string" + }, + "updateAction": { + "description": "Indicates an optional action to take on the proposal", + "type": "string" + } + }, + "type": "object" + }, + "DeleteOrderDealsResponse": { + "id": "DeleteOrderDealsResponse", + "properties": { + "deals": { + "description": "List of deals deleted (in the same proposal as passed in the request)", + "items": { + "$ref": "MarketplaceDeal" + }, + "type": "array" + }, + "proposalRevisionNumber": { + "description": "The updated revision number for the proposal.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "DeliveryControl": { + "id": "DeliveryControl", + "properties": { + "creativeBlockingLevel": { + "type": "string" + }, + "deliveryRateType": { + "type": "string" + }, + "frequencyCaps": { + "items": { + "$ref": "DeliveryControlFrequencyCap" + }, + "type": "array" + } + }, + "type": "object" + }, + "DeliveryControlFrequencyCap": { + "id": "DeliveryControlFrequencyCap", + "properties": { + "maxImpressions": { + "format": "int32", + "type": "integer" + }, + "numTimeUnits": { + "format": "int32", + "type": "integer" + }, + "timeUnitType": { + "type": "string" + } + }, + "type": "object" + }, + "Dimension": { + "description": "This message carries publisher provided breakdown. E.g. {dimension_type: 'COUNTRY', [{dimension_value: {id: 1, name: 'US'}}, {dimension_value: {id: 2, name: 'UK'}}]}", + "id": "Dimension", + "properties": { + "dimensionType": { + "type": "string" + }, + "dimensionValues": { + "items": { + "$ref": "DimensionDimensionValue" + }, + "type": "array" + } + }, + "type": "object" + }, + "DimensionDimensionValue": { + "description": "Value of the dimension.", + "id": "DimensionDimensionValue", + "properties": { + "id": { + "description": "Id of the dimension.", + "format": "int32", + "type": "integer" + }, + "name": { + "description": "Name of the dimension mainly for debugging purposes, except for the case of CREATIVE_SIZE. For CREATIVE_SIZE, strings are used instead of ids.", + "type": "string" + }, + "percentage": { + "description": "Percent of total impressions for a dimension type. e.g. {dimension_type: 'GENDER', [{dimension_value: {id: 1, name: 'MALE', percentage: 60}}]} Gender MALE is 60% of all impressions which have gender.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "EditAllOrderDealsRequest": { + "id": "EditAllOrderDealsRequest", + "properties": { + "deals": { + "description": "List of deals to edit. Service may perform 3 different operations based on comparison of deals in this list vs deals already persisted in database: 1. Add new deal to proposal If a deal in this list does not exist in the proposal, the service will create a new deal and add it to the proposal. Validation will follow AddOrderDealsRequest. 2. Update existing deal in the proposal If a deal in this list already exist in the proposal, the service will update that existing deal to this new deal in the request. Validation will follow UpdateOrderDealsRequest. 3. Delete deals from the proposal (just need the id) If a existing deal in the proposal is not present in this list, the service will delete that deal from the proposal. Validation will follow DeleteOrderDealsRequest.", + "items": { + "$ref": "MarketplaceDeal" + }, + "type": "array" + }, + "proposal": { + "$ref": "Proposal", + "description": "If specified, also updates the proposal in the batch transaction. This is useful when the proposal and the deals need to be updated in one transaction." + }, + "proposalRevisionNumber": { + "description": "The last known revision number for the proposal.", + "format": "int64", + "type": "string" + }, + "updateAction": { + "description": "Indicates an optional action to take on the proposal", + "type": "string" + } + }, + "type": "object" + }, + "EditAllOrderDealsResponse": { + "id": "EditAllOrderDealsResponse", + "properties": { + "deals": { + "description": "List of all deals in the proposal after edit.", + "items": { + "$ref": "MarketplaceDeal" + }, + "type": "array" + }, + "orderRevisionNumber": { + "description": "The latest revision number after the update has been applied.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "GetOffersResponse": { + "id": "GetOffersResponse", + "properties": { + "products": { + "description": "The returned list of products.", + "items": { + "$ref": "Product" + }, + "type": "array" + } + }, + "type": "object" + }, + "GetOrderDealsResponse": { + "id": "GetOrderDealsResponse", + "properties": { + "deals": { + "description": "List of deals for the proposal", + "items": { + "$ref": "MarketplaceDeal" + }, + "type": "array" + } + }, + "type": "object" + }, + "GetOrderNotesResponse": { + "id": "GetOrderNotesResponse", + "properties": { + "notes": { + "description": "The list of matching notes. The notes for a proposal are ordered from oldest to newest. If the notes span multiple proposals, they will be grouped by proposal, with the notes for the most recently modified proposal appearing first.", + "items": { + "$ref": "MarketplaceNote" + }, + "type": "array" + } + }, + "type": "object" + }, + "GetOrdersResponse": { + "id": "GetOrdersResponse", + "properties": { + "proposals": { + "description": "The list of matching proposals.", + "items": { + "$ref": "Proposal" + }, + "type": "array" + } + }, + "type": "object" + }, + "GetPublisherProfilesByAccountIdResponse": { + "id": "GetPublisherProfilesByAccountIdResponse", + "properties": { + "profiles": { + "description": "Profiles for the requested publisher", + "items": { + "$ref": "PublisherProfileApiProto" + }, + "type": "array" + } + }, + "type": "object" + }, + "MarketplaceDeal": { + "description": "A proposal can contain multiple deals. A deal contains the terms and targeting information that is used for serving.", + "id": "MarketplaceDeal", + "properties": { + "buyerPrivateData": { + "$ref": "PrivateData", + "description": "Buyer private data (hidden from seller)." + }, + "creationTimeMs": { + "description": "The time (ms since epoch) of the deal creation. (readonly)", + "format": "int64", + "type": "string" + }, + "creativePreApprovalPolicy": { + "description": "Specifies the creative pre-approval policy (buyer-readonly)", + "type": "string" + }, + "creativeSafeFrameCompatibility": { + "description": "Specifies whether the creative is safeFrame compatible (buyer-readonly)", + "type": "string" + }, + "dealId": { + "description": "A unique deal-id for the deal (readonly).", + "type": "string" + }, + "dealServingMetadata": { + "$ref": "DealServingMetadata", + "description": "Metadata about the serving status of this deal (readonly, writes via custom actions)" + }, + "deliveryControl": { + "$ref": "DeliveryControl", + "description": "The set of fields around delivery control that are interesting for a buyer to see but are non-negotiable. These are set by the publisher. This message is assigned an id of 100 since some day we would want to model this as a protobuf extension." + }, + "externalDealId": { + "description": "The external deal id assigned to this deal once the deal is finalized. This is the deal-id that shows up in serving/reporting etc. (readonly)", + "type": "string" + }, + "flightEndTimeMs": { + "description": "Proposed flight end time of the deal (ms since epoch) This will generally be stored in a granularity of a second. (updatable)", + "format": "int64", + "type": "string" + }, + "flightStartTimeMs": { + "description": "Proposed flight start time of the deal (ms since epoch) This will generally be stored in a granularity of a second. (updatable)", + "format": "int64", + "type": "string" + }, + "inventoryDescription": { + "description": "Description for the deal terms. (buyer-readonly)", + "type": "string" + }, + "isRfpTemplate": { + "description": "Indicates whether the current deal is a RFP template. RFP template is created by buyer and not based on seller created products.", + "type": "boolean" + }, + "isSetupComplete": { + "description": "True, if the buyside inventory setup is complete for this deal. (readonly, except via OrderSetupCompleted action)", + "type": "boolean" + }, + "kind": { + "default": "adexchangebuyer#marketplaceDeal", + "description": "Identifies what kind of resource this is. Value: the fixed string \"adexchangebuyer#marketplaceDeal\".", + "type": "string" + }, + "lastUpdateTimeMs": { + "description": "The time (ms since epoch) when the deal was last updated. (readonly)", + "format": "int64", + "type": "string" + }, + "name": { + "description": "The name of the deal. (updatable)", + "type": "string" + }, + "productId": { + "description": "The product-id from which this deal was created. (readonly, except on create)", + "type": "string" + }, + "productRevisionNumber": { + "description": "The revision number of the product that the deal was created from (readonly, except on create)", + "format": "int64", + "type": "string" + }, + "programmaticCreativeSource": { + "description": "Specifies the creative source for programmatic deals, PUBLISHER means creative is provided by seller and ADVERTISR means creative is provided by buyer. (buyer-readonly)", + "type": "string" + }, + "proposalId": { + "type": "string" + }, + "sellerContacts": { + "description": "Optional Seller contact information for the deal (buyer-readonly)", + "items": { + "$ref": "ContactInformation" + }, + "type": "array" + }, + "sharedTargetings": { + "description": "The shared targeting visible to buyers and sellers. Each shared targeting entity is AND'd together. (updatable)", + "items": { + "$ref": "SharedTargeting" + }, + "type": "array" + }, + "syndicationProduct": { + "description": "The syndication product associated with the deal. (readonly, except on create)", + "type": "string" + }, + "terms": { + "$ref": "DealTerms", + "description": "The negotiable terms of the deal. (updatable)" + }, + "webPropertyCode": { + "type": "string" + } + }, + "type": "object" + }, + "MarketplaceDealParty": { + "id": "MarketplaceDealParty", + "properties": { + "buyer": { + "$ref": "Buyer", + "description": "The buyer/seller associated with the deal. One of buyer/seller is specified for a deal-party." + }, + "seller": { + "$ref": "Seller", + "description": "The buyer/seller associated with the deal. One of buyer/seller is specified for a deal party." + } + }, + "type": "object" + }, + "MarketplaceLabel": { + "id": "MarketplaceLabel", + "properties": { + "accountId": { + "description": "The accountId of the party that created the label.", + "type": "string" + }, + "createTimeMs": { + "description": "The creation time (in ms since epoch) for the label.", + "format": "int64", + "type": "string" + }, + "deprecatedMarketplaceDealParty": { + "$ref": "MarketplaceDealParty", + "description": "Information about the party that created the label." + }, + "label": { + "description": "The label to use.", + "type": "string" + } + }, + "type": "object" + }, + "MarketplaceNote": { + "description": "A proposal is associated with a bunch of notes which may optionally be associated with a deal and/or revision number.", + "id": "MarketplaceNote", + "properties": { + "creatorRole": { + "description": "The role of the person (buyer/seller) creating the note. (readonly)", + "type": "string" + }, + "dealId": { + "description": "Notes can optionally be associated with a deal. (readonly, except on create)", + "type": "string" + }, + "kind": { + "default": "adexchangebuyer#marketplaceNote", + "description": "Identifies what kind of resource this is. Value: the fixed string \"adexchangebuyer#marketplaceNote\".", + "type": "string" + }, + "note": { + "description": "The actual note to attach. (readonly, except on create)", + "type": "string" + }, + "noteId": { + "description": "The unique id for the note. (readonly)", + "type": "string" + }, + "proposalId": { + "description": "The proposalId that a note is attached to. (readonly)", + "type": "string" + }, + "proposalRevisionNumber": { + "description": "If the note is associated with a proposal revision number, then store that here. (readonly, except on create)", + "format": "int64", + "type": "string" + }, + "timestampMs": { + "description": "The timestamp (ms since epoch) that this note was created. (readonly)", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "PerformanceReport": { + "description": "The configuration data for an Ad Exchange performance report list.", + "id": "PerformanceReport", + "properties": { + "bidRate": { + "description": "The number of bid responses with an ad.", + "format": "double", + "type": "number" + }, + "bidRequestRate": { + "description": "The number of bid requests sent to your bidder.", + "format": "double", + "type": "number" + }, + "calloutStatusRate": { + "description": "Rate of various prefiltering statuses per match. Please refer to the callout-status-codes.txt file for different statuses.", + "items": { + "type": "any" + }, + "type": "array" + }, + "cookieMatcherStatusRate": { + "description": "Average QPS for cookie matcher operations.", + "items": { + "type": "any" + }, + "type": "array" + }, + "creativeStatusRate": { + "description": "Rate of ads with a given status. Please refer to the creative-status-codes.txt file for different statuses.", + "items": { + "type": "any" + }, + "type": "array" + }, + "filteredBidRate": { + "description": "The number of bid responses that were filtered due to a policy violation or other errors.", + "format": "double", + "type": "number" + }, + "hostedMatchStatusRate": { + "description": "Average QPS for hosted match operations.", + "items": { + "type": "any" + }, + "type": "array" + }, + "inventoryMatchRate": { + "description": "The number of potential queries based on your pretargeting settings.", + "format": "double", + "type": "number" + }, + "kind": { + "default": "adexchangebuyer#performanceReport", + "description": "Resource type.", + "type": "string" + }, + "latency50thPercentile": { + "description": "The 50th percentile round trip latency(ms) as perceived from Google servers for the duration period covered by the report.", + "format": "double", + "type": "number" + }, + "latency85thPercentile": { + "description": "The 85th percentile round trip latency(ms) as perceived from Google servers for the duration period covered by the report.", + "format": "double", + "type": "number" + }, + "latency95thPercentile": { + "description": "The 95th percentile round trip latency(ms) as perceived from Google servers for the duration period covered by the report.", + "format": "double", + "type": "number" + }, + "noQuotaInRegion": { + "description": "Rate of various quota account statuses per quota check.", + "format": "double", + "type": "number" + }, + "outOfQuota": { + "description": "Rate of various quota account statuses per quota check.", + "format": "double", + "type": "number" + }, + "pixelMatchRequests": { + "description": "Average QPS for pixel match requests from clients.", + "format": "double", + "type": "number" + }, + "pixelMatchResponses": { + "description": "Average QPS for pixel match responses from clients.", + "format": "double", + "type": "number" + }, + "quotaConfiguredLimit": { + "description": "The configured quota limits for this account.", + "format": "double", + "type": "number" + }, + "quotaThrottledLimit": { + "description": "The throttled quota limits for this account.", + "format": "double", + "type": "number" + }, + "region": { + "description": "The trading location of this data.", + "type": "string" + }, + "successfulRequestRate": { + "description": "The number of properly formed bid responses received by our servers within the deadline.", + "format": "double", + "type": "number" + }, + "timestamp": { + "description": "The unix timestamp of the starting time of this performance data.", + "format": "int64", + "type": "string" + }, + "unsuccessfulRequestRate": { + "description": "The number of bid responses that were unsuccessful due to timeouts, incorrect formatting, etc.", + "format": "double", + "type": "number" + } + }, + "type": "object" + }, + "PerformanceReportList": { + "description": "The configuration data for an Ad Exchange performance report list.", + "id": "PerformanceReportList", + "properties": { + "kind": { + "default": "adexchangebuyer#performanceReportList", + "description": "Resource type.", + "type": "string" + }, + "performanceReport": { + "description": "A list of performance reports relevant for the account.", + "items": { + "$ref": "PerformanceReport" + }, + "type": "array" + } + }, + "type": "object" + }, + "PretargetingConfig": { + "id": "PretargetingConfig", + "properties": { + "billingId": { + "description": "The id for billing purposes, provided for reference. Leave this field blank for insert requests; the id will be generated automatically.", + "format": "int64", + "type": "string" + }, + "configId": { + "description": "The config id; generated automatically. Leave this field blank for insert requests.", + "format": "int64", + "type": "string" + }, + "configName": { + "description": "The name of the config. Must be unique. Required for all requests.", + "type": "string" + }, + "creativeType": { + "description": "List must contain exactly one of PRETARGETING_CREATIVE_TYPE_HTML or PRETARGETING_CREATIVE_TYPE_VIDEO.", + "items": { + "type": "string" + }, + "type": "array" + }, + "dimensions": { + "description": "Requests which allow one of these (width, height) pairs will match. All pairs must be supported ad dimensions.", + "items": { + "properties": { + "height": { + "description": "Height in pixels.", + "format": "int64", + "type": "string" + }, + "width": { + "description": "Width in pixels.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "excludedContentLabels": { + "description": "Requests with any of these content labels will not match. Values are from content-labels.txt in the downloadable files section.", + "items": { + "format": "int64", + "type": "string" + }, + "type": "array" + }, + "excludedGeoCriteriaIds": { + "description": "Requests containing any of these geo criteria ids will not match.", + "items": { + "format": "int64", + "type": "string" + }, + "type": "array" + }, + "excludedPlacements": { + "description": "Requests containing any of these placements will not match.", + "items": { + "properties": { + "token": { + "description": "The value of the placement. Interpretation depends on the placement type, e.g. URL for a site placement, channel name for a channel placement, app id for a mobile app placement.", + "type": "string" + }, + "type": { + "description": "The type of the placement.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "excludedUserLists": { + "description": "Requests containing any of these users list ids will not match.", + "items": { + "format": "int64", + "type": "string" + }, + "type": "array" + }, + "excludedVerticals": { + "description": "Requests containing any of these vertical ids will not match. Values are from the publisher-verticals.txt file in the downloadable files section.", + "items": { + "format": "int64", + "type": "string" + }, + "type": "array" + }, + "geoCriteriaIds": { + "description": "Requests containing any of these geo criteria ids will match.", + "items": { + "format": "int64", + "type": "string" + }, + "type": "array" + }, + "isActive": { + "description": "Whether this config is active. Required for all requests.", + "type": "boolean" + }, + "kind": { + "default": "adexchangebuyer#pretargetingConfig", + "description": "The kind of the resource, i.e. \"adexchangebuyer#pretargetingConfig\".", + "type": "string" + }, + "languages": { + "description": "Request containing any of these language codes will match.", + "items": { + "type": "string" + }, + "type": "array" + }, + "minimumViewabilityDecile": { + "description": "Requests where the predicted viewability is below the specified decile will not match. E.g. if the buyer sets this value to 5, requests from slots where the predicted viewability is below 50% will not match. If the predicted viewability is unknown this field will be ignored.", + "format": "int32", + "type": "integer" + }, + "mobileCarriers": { + "description": "Requests containing any of these mobile carrier ids will match. Values are from mobile-carriers.csv in the downloadable files section.", + "items": { + "format": "int64", + "type": "string" + }, + "type": "array" + }, + "mobileDevices": { + "description": "Requests containing any of these mobile device ids will match. Values are from mobile-devices.csv in the downloadable files section.", + "items": { + "format": "int64", + "type": "string" + }, + "type": "array" + }, + "mobileOperatingSystemVersions": { + "description": "Requests containing any of these mobile operating system version ids will match. Values are from mobile-os.csv in the downloadable files section.", + "items": { + "format": "int64", + "type": "string" + }, + "type": "array" + }, + "placements": { + "description": "Requests containing any of these placements will match.", + "items": { + "properties": { + "token": { + "description": "The value of the placement. Interpretation depends on the placement type, e.g. URL for a site placement, channel name for a channel placement, app id for a mobile app placement.", + "type": "string" + }, + "type": { + "description": "The type of the placement.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "platforms": { + "description": "Requests matching any of these platforms will match. Possible values are PRETARGETING_PLATFORM_MOBILE, PRETARGETING_PLATFORM_DESKTOP, and PRETARGETING_PLATFORM_TABLET.", + "items": { + "type": "string" + }, + "type": "array" + }, + "supportedCreativeAttributes": { + "description": "Creative attributes should be declared here if all creatives corresponding to this pretargeting configuration have that creative attribute. Values are from pretargetable-creative-attributes.txt in the downloadable files section.", + "items": { + "format": "int64", + "type": "string" + }, + "type": "array" + }, + "userIdentifierDataRequired": { + "description": "Requests containing the specified type of user data will match. Possible values are HOSTED_MATCH_DATA, which means the request is cookie-targetable and has a match in the buyer's hosted match table, and COOKIE_OR_IDFA, which means the request has either a targetable cookie or an iOS IDFA.", + "items": { + "type": "string" + }, + "type": "array" + }, + "userLists": { + "description": "Requests containing any of these user list ids will match.", + "items": { + "format": "int64", + "type": "string" + }, + "type": "array" + }, + "vendorTypes": { + "description": "Requests that allow any of these vendor ids will match. Values are from vendors.txt in the downloadable files section.", + "items": { + "format": "int64", + "type": "string" + }, + "type": "array" + }, + "verticals": { + "description": "Requests containing any of these vertical ids will match.", + "items": { + "format": "int64", + "type": "string" + }, + "type": "array" + }, + "videoPlayerSizes": { + "description": "Video requests satisfying any of these player size constraints will match.", + "items": { + "properties": { + "aspectRatio": { + "description": "The type of aspect ratio. Leave this field blank to match all aspect ratios.", + "type": "string" + }, + "minHeight": { + "description": "The minimum player height in pixels. Leave this field blank to match any player height.", + "format": "int64", + "type": "string" + }, + "minWidth": { + "description": "The minimum player width in pixels. Leave this field blank to match any player width.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + } + }, + "type": "object" + }, + "PretargetingConfigList": { + "id": "PretargetingConfigList", + "properties": { + "items": { + "description": "A list of pretargeting configs", + "items": { + "$ref": "PretargetingConfig" + }, + "type": "array" + }, + "kind": { + "default": "adexchangebuyer#pretargetingConfigList", + "description": "Resource type.", + "type": "string" + } + }, + "type": "object" + }, + "Price": { + "id": "Price", + "properties": { + "amountMicros": { + "description": "The price value in micros.", + "format": "double", + "type": "number" + }, + "currencyCode": { + "description": "The currency code for the price.", + "type": "string" + }, + "expectedCpmMicros": { + "description": "In case of CPD deals, the expected CPM in micros.", + "format": "double", + "type": "number" + }, + "pricingType": { + "description": "The pricing type for the deal/product.", + "type": "string" + } + }, + "type": "object" + }, + "PricePerBuyer": { + "description": "Used to specify pricing rules for buyers. Each PricePerBuyer in a product can become [0,1] deals. To check if there is a PricePerBuyer for a particular buyer we look for the most specific matching rule - we first look for a rule matching the buyer and otherwise look for a matching rule where no buyer is set.", + "id": "PricePerBuyer", + "properties": { + "auctionTier": { + "description": "Optional access type for this buyer.", + "type": "string" + }, + "billedBuyer": { + "$ref": "Buyer", + "description": "Reference to the buyer that will get billed." + }, + "buyer": { + "$ref": "Buyer", + "description": "The buyer who will pay this price. If unset, all buyers can pay this price (if the advertisers match, and there's no more specific rule matching the buyer)." + }, + "price": { + "$ref": "Price", + "description": "The specified price" + } + }, + "type": "object" + }, + "PrivateData": { + "id": "PrivateData", + "properties": { + "referenceId": { + "type": "string" + }, + "referencePayload": { + "format": "byte", + "type": "string" + } + }, + "type": "object" + }, + "Product": { + "description": "A product is segment of inventory that a seller wishes to sell. It is associated with certain terms and targeting information which helps buyer know more about the inventory. Each field in a product can have one of the following setting:\n\n(readonly) - It is an error to try and set this field. (buyer-readonly) - Only the seller can set this field. (seller-readonly) - Only the buyer can set this field. (updatable) - The field is updatable at all times by either buyer or the seller.", + "id": "Product", + "properties": { + "billedBuyer": { + "$ref": "Buyer", + "description": "The billed buyer corresponding to the buyer that created the offer. (readonly, except on create)" + }, + "buyer": { + "$ref": "Buyer", + "description": "The buyer that created the offer if this is a buyer initiated offer (readonly, except on create)" + }, + "creationTimeMs": { + "description": "Creation time in ms. since epoch (readonly)", + "format": "int64", + "type": "string" + }, + "creatorContacts": { + "description": "Optional contact information for the creator of this product. (buyer-readonly)", + "items": { + "$ref": "ContactInformation" + }, + "type": "array" + }, + "creatorRole": { + "description": "The role that created the offer. Set to BUYER for buyer initiated offers.", + "type": "string" + }, + "deliveryControl": { + "$ref": "DeliveryControl", + "description": "The set of fields around delivery control that are interesting for a buyer to see but are non-negotiable. These are set by the publisher. This message is assigned an id of 100 since some day we would want to model this as a protobuf extension." + }, + "flightEndTimeMs": { + "description": "The proposed end time for the deal (ms since epoch) (buyer-readonly)", + "format": "int64", + "type": "string" + }, + "flightStartTimeMs": { + "description": "Inventory availability dates. (times are in ms since epoch) The granularity is generally in the order of seconds. (buyer-readonly)", + "format": "int64", + "type": "string" + }, + "hasCreatorSignedOff": { + "description": "If the creator has already signed off on the product, then the buyer can finalize the deal by accepting the product as is. When copying to a proposal, if any of the terms are changed, then auto_finalize is automatically set to false.", + "type": "boolean" + }, + "inventorySource": { + "description": "What exchange will provide this inventory (readonly, except on create).", + "type": "string" + }, + "kind": { + "default": "adexchangebuyer#product", + "description": "Identifies what kind of resource this is. Value: the fixed string \"adexchangebuyer#product\".", + "type": "string" + }, + "labels": { + "description": "Optional List of labels for the product (optional, buyer-readonly).", + "items": { + "$ref": "MarketplaceLabel" + }, + "type": "array" + }, + "lastUpdateTimeMs": { + "description": "Time of last update in ms. since epoch (readonly)", + "format": "int64", + "type": "string" + }, + "legacyOfferId": { + "description": "Optional legacy offer id if this offer is a preferred deal offer.", + "type": "string" + }, + "marketplacePublisherProfileId": { + "description": "Marketplace publisher profile Id. This Id differs from the regular publisher_profile_id in that 1. This is a new id, the old Id will be deprecated in 2017. 2. This id uniquely identifies a publisher profile by itself.", + "type": "string" + }, + "name": { + "description": "The name for this product as set by the seller. (buyer-readonly)", + "type": "string" + }, + "privateAuctionId": { + "description": "Optional private auction id if this offer is a private auction offer.", + "type": "string" + }, + "productId": { + "description": "The unique id for the product (readonly)", + "type": "string" + }, + "publisherProfileId": { + "description": "Id of the publisher profile for a given seller. A (seller.account_id, publisher_profile_id) pair uniquely identifies a publisher profile. Buyers can call the PublisherProfiles::List endpoint to get a list of publisher profiles for a given seller.", + "type": "string" + }, + "publisherProvidedForecast": { + "$ref": "PublisherProvidedForecast", + "description": "Publisher self-provided forecast information." + }, + "revisionNumber": { + "description": "The revision number of the product. (readonly)", + "format": "int64", + "type": "string" + }, + "seller": { + "$ref": "Seller", + "description": "Information about the seller that created this product (readonly, except on create)" + }, + "sharedTargetings": { + "description": "Targeting that is shared between the buyer and the seller. Each targeting criteria has a specified key and for each key there is a list of inclusion value or exclusion values. (buyer-readonly)", + "items": { + "$ref": "SharedTargeting" + }, + "type": "array" + }, + "state": { + "description": "The state of the product. (buyer-readonly)", + "type": "string" + }, + "syndicationProduct": { + "description": "The syndication product associated with the deal. (readonly, except on create)", + "type": "string" + }, + "terms": { + "$ref": "DealTerms", + "description": "The negotiable terms of the deal (buyer-readonly)" + }, + "webPropertyCode": { + "description": "The web property code for the seller. This field is meant to be copied over as is when creating deals.", + "type": "string" + } + }, + "type": "object" + }, + "Proposal": { + "description": "Represents a proposal in the marketplace. A proposal is the unit of negotiation between a seller and a buyer and contains deals which are served. Each field in a proposal can have one of the following setting:\n\n(readonly) - It is an error to try and set this field. (buyer-readonly) - Only the seller can set this field. (seller-readonly) - Only the buyer can set this field. (updatable) - The field is updatable at all times by either buyer or the seller.", + "id": "Proposal", + "properties": { + "billedBuyer": { + "$ref": "Buyer", + "description": "Reference to the buyer that will get billed for this proposal. (readonly)" + }, + "buyer": { + "$ref": "Buyer", + "description": "Reference to the buyer on the proposal. (readonly, except on create)" + }, + "buyerContacts": { + "description": "Optional contact information of the buyer. (seller-readonly)", + "items": { + "$ref": "ContactInformation" + }, + "type": "array" + }, + "buyerPrivateData": { + "$ref": "PrivateData", + "description": "Private data for buyer. (hidden from seller)." + }, + "dbmAdvertiserIds": { + "description": "IDs of DBM advertisers permission to this proposal.", + "items": { + "type": "string" + }, + "type": "array" + }, + "hasBuyerSignedOff": { + "description": "When an proposal is in an accepted state, indicates whether the buyer has signed off. Once both sides have signed off on a deal, the proposal can be finalized by the seller. (seller-readonly)", + "type": "boolean" + }, + "hasSellerSignedOff": { + "description": "When an proposal is in an accepted state, indicates whether the buyer has signed off Once both sides have signed off on a deal, the proposal can be finalized by the seller. (buyer-readonly)", + "type": "boolean" + }, + "inventorySource": { + "description": "What exchange will provide this inventory (readonly, except on create).", + "type": "string" + }, + "isRenegotiating": { + "description": "True if the proposal is being renegotiated (readonly).", + "type": "boolean" + }, + "isSetupComplete": { + "description": "True, if the buyside inventory setup is complete for this proposal. (readonly, except via OrderSetupCompleted action) Deprecated in favor of deal level setup complete flag.", + "type": "boolean" + }, + "kind": { + "default": "adexchangebuyer#proposal", + "description": "Identifies what kind of resource this is. Value: the fixed string \"adexchangebuyer#proposal\".", + "type": "string" + }, + "labels": { + "description": "List of labels associated with the proposal. (readonly)", + "items": { + "$ref": "MarketplaceLabel" + }, + "type": "array" + }, + "lastUpdaterOrCommentorRole": { + "description": "The role of the last user that either updated the proposal or left a comment. (readonly)", + "type": "string" + }, + "name": { + "description": "The name for the proposal (updatable)", + "type": "string" + }, + "negotiationId": { + "description": "Optional negotiation id if this proposal is a preferred deal proposal.", + "type": "string" + }, + "originatorRole": { + "description": "Indicates whether the buyer/seller created the proposal.(readonly)", + "type": "string" + }, + "privateAuctionId": { + "description": "Optional private auction id if this proposal is a private auction proposal.", + "type": "string" + }, + "proposalId": { + "description": "The unique id of the proposal. (readonly).", + "type": "string" + }, + "proposalState": { + "description": "The current state of the proposal. (readonly)", + "type": "string" + }, + "revisionNumber": { + "description": "The revision number for the proposal (readonly).", + "format": "int64", + "type": "string" + }, + "revisionTimeMs": { + "description": "The time (ms since epoch) when the proposal was last revised (readonly).", + "format": "int64", + "type": "string" + }, + "seller": { + "$ref": "Seller", + "description": "Reference to the seller on the proposal. (readonly, except on create)" + }, + "sellerContacts": { + "description": "Optional contact information of the seller (buyer-readonly).", + "items": { + "$ref": "ContactInformation" + }, + "type": "array" + } + }, + "type": "object" + }, + "PublisherProfileApiProto": { + "id": "PublisherProfileApiProto", + "properties": { + "accountId": { + "description": "Deprecated: use the seller.account_id. The account id of the seller.", + "type": "string" + }, + "audience": { + "description": "Publisher provided info on its audience.", + "type": "string" + }, + "buyerPitchStatement": { + "description": "A pitch statement for the buyer", + "type": "string" + }, + "directContact": { + "description": "Direct contact for the publisher profile.", + "type": "string" + }, + "exchange": { + "description": "Exchange where this publisher profile is from. E.g. AdX, Rubicon etc...", + "type": "string" + }, + "googlePlusLink": { + "description": "Link to publisher's Google+ page.", + "type": "string" + }, + "isParent": { + "description": "True, if this is the parent profile, which represents all domains owned by the publisher.", + "type": "boolean" + }, + "isPublished": { + "description": "True, if this profile is published. Deprecated for state.", + "type": "boolean" + }, + "kind": { + "default": "adexchangebuyer#publisherProfileApiProto", + "description": "Identifies what kind of resource this is. Value: the fixed string \"adexchangebuyer#publisherProfileApiProto\".", + "type": "string" + }, + "logoUrl": { + "description": "The url to the logo for the publisher.", + "type": "string" + }, + "mediaKitLink": { + "description": "The url for additional marketing and sales materials.", + "type": "string" + }, + "name": { + "type": "string" + }, + "overview": { + "description": "Publisher provided overview.", + "type": "string" + }, + "profileId": { + "description": "The pair of (seller.account_id, profile_id) uniquely identifies a publisher profile for a given publisher.", + "format": "int32", + "type": "integer" + }, + "programmaticContact": { + "description": "Programmatic contact for the publisher profile.", + "type": "string" + }, + "publisherDomains": { + "description": "The list of domains represented in this publisher profile. Empty if this is a parent profile.", + "items": { + "type": "string" + }, + "type": "array" + }, + "publisherProfileId": { + "description": "Unique Id for publisher profile.", + "type": "string" + }, + "publisherProvidedForecast": { + "$ref": "PublisherProvidedForecast", + "description": "Publisher provided forecasting information." + }, + "rateCardInfoLink": { + "description": "Link to publisher rate card", + "type": "string" + }, + "samplePageLink": { + "description": "Link for a sample content page.", + "type": "string" + }, + "seller": { + "$ref": "Seller", + "description": "Seller of the publisher profile." + }, + "state": { + "description": "State of the publisher profile.", + "type": "string" + }, + "topHeadlines": { + "description": "Publisher provided key metrics and rankings.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "PublisherProvidedForecast": { + "description": "This message carries publisher provided forecasting information.", + "id": "PublisherProvidedForecast", + "properties": { + "dimensions": { + "description": "Publisher provided dimensions. E.g. geo, sizes etc...", + "items": { + "$ref": "Dimension" + }, + "type": "array" + }, + "weeklyImpressions": { + "description": "Publisher provided weekly impressions.", + "format": "int64", + "type": "string" + }, + "weeklyUniques": { + "description": "Publisher provided weekly uniques.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "Seller": { + "id": "Seller", + "properties": { + "accountId": { + "description": "The unique id for the seller. The seller fills in this field. The seller account id is then available to buyer in the product.", + "type": "string" + }, + "subAccountId": { + "description": "Optional sub-account id for the seller.", + "type": "string" + } + }, + "type": "object" + }, + "SharedTargeting": { + "id": "SharedTargeting", + "properties": { + "exclusions": { + "description": "The list of values to exclude from targeting. Each value is AND'd together.", + "items": { + "$ref": "TargetingValue" + }, + "type": "array" + }, + "inclusions": { + "description": "The list of value to include as part of the targeting. Each value is OR'd together.", + "items": { + "$ref": "TargetingValue" + }, + "type": "array" + }, + "key": { + "description": "The key representing the shared targeting criterion.", + "type": "string" + } + }, + "type": "object" + }, + "TargetingValue": { + "id": "TargetingValue", + "properties": { + "creativeSizeValue": { + "$ref": "TargetingValueCreativeSize", + "description": "The creative size value to exclude/include." + }, + "dayPartTargetingValue": { + "$ref": "TargetingValueDayPartTargeting", + "description": "The daypart targeting to include / exclude. Filled in when the key is GOOG_DAYPART_TARGETING." + }, + "demogAgeCriteriaValue": { + "$ref": "TargetingValueDemogAgeCriteria" + }, + "demogGenderCriteriaValue": { + "$ref": "TargetingValueDemogGenderCriteria" + }, + "longValue": { + "description": "The long value to exclude/include.", + "format": "int64", + "type": "string" + }, + "stringValue": { + "description": "The string value to exclude/include.", + "type": "string" + } + }, + "type": "object" + }, + "TargetingValueCreativeSize": { + "description": "Next Id: 7", + "id": "TargetingValueCreativeSize", + "properties": { + "allowedFormats": { + "description": "The formats allowed by the publisher.", + "items": { + "type": "string" + }, + "type": "array" + }, + "companionSizes": { + "description": "For video size type, the list of companion sizes.", + "items": { + "$ref": "TargetingValueSize" + }, + "type": "array" + }, + "creativeSizeType": { + "description": "The Creative size type.", + "type": "string" + }, + "nativeTemplate": { + "description": "The native template for native ad.", + "type": "string" + }, + "size": { + "$ref": "TargetingValueSize", + "description": "For regular or video creative size type, specifies the size of the creative." + }, + "skippableAdType": { + "description": "The skippable ad type for video size.", + "type": "string" + } + }, + "type": "object" + }, + "TargetingValueDayPartTargeting": { + "id": "TargetingValueDayPartTargeting", + "properties": { + "dayParts": { + "items": { + "$ref": "TargetingValueDayPartTargetingDayPart" + }, + "type": "array" + }, + "timeZoneType": { + "type": "string" + } + }, + "type": "object" + }, + "TargetingValueDayPartTargetingDayPart": { + "id": "TargetingValueDayPartTargetingDayPart", + "properties": { + "dayOfWeek": { + "type": "string" + }, + "endHour": { + "format": "int32", + "type": "integer" + }, + "endMinute": { + "format": "int32", + "type": "integer" + }, + "startHour": { + "format": "int32", + "type": "integer" + }, + "startMinute": { + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "TargetingValueDemogAgeCriteria": { + "id": "TargetingValueDemogAgeCriteria", + "properties": { + "demogAgeCriteriaIds": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "TargetingValueDemogGenderCriteria": { + "id": "TargetingValueDemogGenderCriteria", + "properties": { + "demogGenderCriteriaIds": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "TargetingValueSize": { + "id": "TargetingValueSize", + "properties": { + "height": { + "description": "The height of the creative.", + "format": "int32", + "type": "integer" + }, + "width": { + "description": "The width of the creative.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "UpdatePrivateAuctionProposalRequest": { + "id": "UpdatePrivateAuctionProposalRequest", + "properties": { + "externalDealId": { + "description": "The externalDealId of the deal to be updated.", + "type": "string" + }, + "note": { + "$ref": "MarketplaceNote", + "description": "Optional note to be added." + }, + "proposalRevisionNumber": { + "description": "The current revision number of the proposal to be updated.", + "format": "int64", + "type": "string" + }, + "updateAction": { + "description": "The proposed action on the private auction proposal.", + "type": "string" + } + }, + "type": "object" } - } }, - "TargetingValueDayPartTargeting": { - "id": "TargetingValueDayPartTargeting", - "type": "object", - "properties": { - "dayParts": { - "type": "array", - "items": { - "$ref": "TargetingValueDayPartTargetingDayPart" - } - }, - "timeZoneType": { - "type": "string" - } - } - }, - "TargetingValueDayPartTargetingDayPart": { - "id": "TargetingValueDayPartTargetingDayPart", - "type": "object", - "properties": { - "dayOfWeek": { - "type": "string" - }, - "endHour": { - "type": "integer", - "format": "int32" - }, - "endMinute": { - "type": "integer", - "format": "int32" - }, - "startHour": { - "type": "integer", - "format": "int32" - }, - "startMinute": { - "type": "integer", - "format": "int32" - } - } - }, - "TargetingValueSize": { - "id": "TargetingValueSize", - "type": "object", - "properties": { - "height": { - "type": "integer", - "description": "The height of the creative.", - "format": "int32" - }, - "width": { - "type": "integer", - "description": "The width of the creative.", - "format": "int32" - } - } - }, - "UpdatePrivateAuctionProposalRequest": { - "id": "UpdatePrivateAuctionProposalRequest", - "type": "object", - "properties": { - "externalDealId": { - "type": "string", - "description": "The externalDealId of the deal to be updated." - }, - "note": { - "$ref": "MarketplaceNote", - "description": "Optional note to be added." - }, - "proposalRevisionNumber": { - "type": "string", - "description": "The current revision number of the proposal to be updated.", - "format": "int64" - }, - "updateAction": { - "type": "string", - "description": "The proposed action on the private auction proposal." - } - } - } - }, - "resources": { - "accounts": { - "methods": { - "get": { - "id": "adexchangebuyer.accounts.get", - "path": "accounts/{id}", - "httpMethod": "GET", - "description": "Gets one account by ID.", - "parameters": { - "id": { - "type": "integer", - "description": "The account id", - "required": true, - "format": "int32", - "location": "path" - } - }, - "parameterOrder": [ - "id" - ], - "response": { - "$ref": "Account" - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ] - }, - "list": { - "id": "adexchangebuyer.accounts.list", - "path": "accounts", - "httpMethod": "GET", - "description": "Retrieves the authenticated user's list of accounts.", - "response": { - "$ref": "AccountsList" - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ] - }, - "patch": { - "id": "adexchangebuyer.accounts.patch", - "path": "accounts/{id}", - "httpMethod": "PATCH", - "description": "Updates an existing account. This method supports patch semantics.", - "parameters": { - "confirmUnsafeAccountChange": { - "type": "boolean", - "description": "Confirmation for erasing bidder and cookie matching urls.", - "location": "query" - }, - "id": { - "type": "integer", - "description": "The account id", - "required": true, - "format": "int32", - "location": "path" - } - }, - "parameterOrder": [ - "id" - ], - "request": { - "$ref": "Account" - }, - "response": { - "$ref": "Account" - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ] - }, - "update": { - "id": "adexchangebuyer.accounts.update", - "path": "accounts/{id}", - "httpMethod": "PUT", - "description": "Updates an existing account.", - "parameters": { - "confirmUnsafeAccountChange": { - "type": "boolean", - "description": "Confirmation for erasing bidder and cookie matching urls.", - "location": "query" - }, - "id": { - "type": "integer", - "description": "The account id", - "required": true, - "format": "int32", - "location": "path" - } - }, - "parameterOrder": [ - "id" - ], - "request": { - "$ref": "Account" - }, - "response": { - "$ref": "Account" - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ] - } - } - }, - "billingInfo": { - "methods": { - "get": { - "id": "adexchangebuyer.billingInfo.get", - "path": "billinginfo/{accountId}", - "httpMethod": "GET", - "description": "Returns the billing information for one account specified by account ID.", - "parameters": { - "accountId": { - "type": "integer", - "description": "The account id.", - "required": true, - "format": "int32", - "location": "path" - } - }, - "parameterOrder": [ - "accountId" - ], - "response": { - "$ref": "BillingInfo" - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ] - }, - "list": { - "id": "adexchangebuyer.billingInfo.list", - "path": "billinginfo", - "httpMethod": "GET", - "description": "Retrieves a list of billing information for all accounts of the authenticated user.", - "response": { - "$ref": "BillingInfoList" - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ] - } - } - }, - "budget": { - "methods": { - "get": { - "id": "adexchangebuyer.budget.get", - "path": "billinginfo/{accountId}/{billingId}", - "httpMethod": "GET", - "description": "Returns the budget information for the adgroup specified by the accountId and billingId.", - "parameters": { - "accountId": { - "type": "string", - "description": "The account id to get the budget information for.", - "required": true, - "format": "int64", - "location": "path" - }, - "billingId": { - "type": "string", - "description": "The billing id to get the budget information for.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "accountId", - "billingId" - ], - "response": { - "$ref": "Budget" - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ] - }, - "patch": { - "id": "adexchangebuyer.budget.patch", - "path": "billinginfo/{accountId}/{billingId}", - "httpMethod": "PATCH", - "description": "Updates the budget amount for the budget of the adgroup specified by the accountId and billingId, with the budget amount in the request. This method supports patch semantics.", - "parameters": { - "accountId": { - "type": "string", - "description": "The account id associated with the budget being updated.", - "required": true, - "format": "int64", - "location": "path" - }, - "billingId": { - "type": "string", - "description": "The billing id associated with the budget being updated.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "accountId", - "billingId" - ], - "request": { - "$ref": "Budget" - }, - "response": { - "$ref": "Budget" - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ] - }, - "update": { - "id": "adexchangebuyer.budget.update", - "path": "billinginfo/{accountId}/{billingId}", - "httpMethod": "PUT", - "description": "Updates the budget amount for the budget of the adgroup specified by the accountId and billingId, with the budget amount in the request.", - "parameters": { - "accountId": { - "type": "string", - "description": "The account id associated with the budget being updated.", - "required": true, - "format": "int64", - "location": "path" - }, - "billingId": { - "type": "string", - "description": "The billing id associated with the budget being updated.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "accountId", - "billingId" - ], - "request": { - "$ref": "Budget" - }, - "response": { - "$ref": "Budget" - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ] - } - } - }, - "creatives": { - "methods": { - "addDeal": { - "id": "adexchangebuyer.creatives.addDeal", - "path": "creatives/{accountId}/{buyerCreativeId}/addDeal/{dealId}", - "httpMethod": "POST", - "description": "Add a deal id association for the creative.", - "parameters": { - "accountId": { - "type": "integer", - "description": "The id for the account that will serve this creative.", - "required": true, - "format": "int32", - "location": "path" - }, - "buyerCreativeId": { - "type": "string", - "description": "The buyer-specific id for this creative.", - "required": true, - "location": "path" - }, - "dealId": { - "type": "string", - "description": "The id of the deal id to associate with this creative.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "accountId", - "buyerCreativeId", - "dealId" - ], - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ] - }, - "get": { - "id": "adexchangebuyer.creatives.get", - "path": "creatives/{accountId}/{buyerCreativeId}", - "httpMethod": "GET", - "description": "Gets the status for a single creative. A creative will be available 30-40 minutes after submission.", - "parameters": { - "accountId": { - "type": "integer", - "description": "The id for the account that will serve this creative.", - "required": true, - "format": "int32", - "location": "path" - }, - "buyerCreativeId": { - "type": "string", - "description": "The buyer-specific id for this creative.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "accountId", - "buyerCreativeId" - ], - "response": { - "$ref": "Creative" - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ] - }, - "insert": { - "id": "adexchangebuyer.creatives.insert", - "path": "creatives", - "httpMethod": "POST", - "description": "Submit a new creative.", - "request": { - "$ref": "Creative" - }, - "response": { - "$ref": "Creative" - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ] - }, - "list": { - "id": "adexchangebuyer.creatives.list", - "path": "creatives", - "httpMethod": "GET", - "description": "Retrieves a list of the authenticated user's active creatives. A creative will be available 30-40 minutes after submission.", - "parameters": { - "accountId": { - "type": "integer", - "description": "When specified, only creatives for the given account ids are returned.", - "format": "int32", - "repeated": true, - "location": "query" - }, - "buyerCreativeId": { - "type": "string", - "description": "When specified, only creatives for the given buyer creative ids are returned.", - "repeated": true, - "location": "query" - }, - "dealsStatusFilter": { - "type": "string", - "description": "When specified, only creatives having the given deals status are returned.", - "enum": [ - "approved", - "conditionally_approved", - "disapproved", - "not_checked" - ], - "enumDescriptions": [ - "Creatives which have been approved for serving on deals.", - "Creatives which have been conditionally approved for serving on deals.", - "Creatives which have been disapproved for serving on deals.", - "Creatives whose deals status is not yet checked." - ], - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "Maximum number of entries returned on one result page. If not set, the default is 100. Optional.", - "format": "uint32", - "minimum": "1", - "maximum": "1000", - "location": "query" - }, - "openAuctionStatusFilter": { - "type": "string", - "description": "When specified, only creatives having the given open auction status are returned.", - "enum": [ - "approved", - "conditionally_approved", - "disapproved", - "not_checked" - ], - "enumDescriptions": [ - "Creatives which have been approved for serving on the open auction.", - "Creatives which have been conditionally approved for serving on the open auction.", - "Creatives which have been disapproved for serving on the open auction.", - "Creatives whose open auction status is not yet checked." - ], - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "A continuation token, used to page through ad clients. To retrieve the next page, set this parameter to the value of \"nextPageToken\" from the previous response. Optional.", - "location": "query" - } - }, - "response": { - "$ref": "CreativesList" - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ] - }, - "listDeals": { - "id": "adexchangebuyer.creatives.listDeals", - "path": "creatives/{accountId}/{buyerCreativeId}/listDeals", - "httpMethod": "GET", - "description": "Lists the external deal ids associated with the creative.", - "parameters": { - "accountId": { - "type": "integer", - "description": "The id for the account that will serve this creative.", - "required": true, - "format": "int32", - "location": "path" - }, - "buyerCreativeId": { - "type": "string", - "description": "The buyer-specific id for this creative.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "accountId", - "buyerCreativeId" - ], - "response": { - "$ref": "CreativeDealIds" - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ] - }, - "removeDeal": { - "id": "adexchangebuyer.creatives.removeDeal", - "path": "creatives/{accountId}/{buyerCreativeId}/removeDeal/{dealId}", - "httpMethod": "POST", - "description": "Remove a deal id associated with the creative.", - "parameters": { - "accountId": { - "type": "integer", - "description": "The id for the account that will serve this creative.", - "required": true, - "format": "int32", - "location": "path" - }, - "buyerCreativeId": { - "type": "string", - "description": "The buyer-specific id for this creative.", - "required": true, - "location": "path" - }, - "dealId": { - "type": "string", - "description": "The id of the deal id to disassociate with this creative.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "accountId", - "buyerCreativeId", - "dealId" - ], - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ] - } - } - }, - "marketplacedeals": { - "methods": { - "delete": { - "id": "adexchangebuyer.marketplacedeals.delete", - "path": "proposals/{proposalId}/deals/delete", - "httpMethod": "POST", - "description": "Delete the specified deals from the proposal", - "parameters": { - "proposalId": { - "type": "string", - "description": "The proposalId to delete deals from.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "proposalId" - ], - "request": { - "$ref": "DeleteOrderDealsRequest" - }, - "response": { - "$ref": "DeleteOrderDealsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ] - }, - "insert": { - "id": "adexchangebuyer.marketplacedeals.insert", - "path": "proposals/{proposalId}/deals/insert", - "httpMethod": "POST", - "description": "Add new deals for the specified proposal", - "parameters": { - "proposalId": { - "type": "string", - "description": "proposalId for which deals need to be added.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "proposalId" - ], - "request": { - "$ref": "AddOrderDealsRequest" - }, - "response": { - "$ref": "AddOrderDealsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ] - }, - "list": { - "id": "adexchangebuyer.marketplacedeals.list", - "path": "proposals/{proposalId}/deals", - "httpMethod": "GET", - "description": "List all the deals for a given proposal", - "parameters": { - "pqlQuery": { - "type": "string", - "description": "Query string to retrieve specific deals.", - "location": "query" - }, - "proposalId": { - "type": "string", - "description": "The proposalId to get deals for. To search across all proposals specify order_id = '-' as part of the URL.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "proposalId" - ], - "response": { - "$ref": "GetOrderDealsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ] - }, - "update": { - "id": "adexchangebuyer.marketplacedeals.update", - "path": "proposals/{proposalId}/deals/update", - "httpMethod": "POST", - "description": "Replaces all the deals in the proposal with the passed in deals", - "parameters": { - "proposalId": { - "type": "string", - "description": "The proposalId to edit deals on.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "proposalId" - ], - "request": { - "$ref": "EditAllOrderDealsRequest" - }, - "response": { - "$ref": "EditAllOrderDealsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ] - } - } - }, - "marketplacenotes": { - "methods": { - "insert": { - "id": "adexchangebuyer.marketplacenotes.insert", - "path": "proposals/{proposalId}/notes/insert", - "httpMethod": "POST", - "description": "Add notes to the proposal", - "parameters": { - "proposalId": { - "type": "string", - "description": "The proposalId to add notes for.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "proposalId" - ], - "request": { - "$ref": "AddOrderNotesRequest" - }, - "response": { - "$ref": "AddOrderNotesResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ] - }, - "list": { - "id": "adexchangebuyer.marketplacenotes.list", - "path": "proposals/{proposalId}/notes", - "httpMethod": "GET", - "description": "Get all the notes associated with a proposal", - "parameters": { - "pqlQuery": { - "type": "string", - "description": "Query string to retrieve specific notes. To search the text contents of notes, please use syntax like \"WHERE note.note = \"foo\" or \"WHERE note.note LIKE \"%bar%\"", - "location": "query" - }, - "proposalId": { - "type": "string", - "description": "The proposalId to get notes for. To search across all proposals specify order_id = '-' as part of the URL.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "proposalId" - ], - "response": { - "$ref": "GetOrderNotesResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ] - } - } - }, - "marketplaceprivateauction": { - "methods": { - "updateproposal": { - "id": "adexchangebuyer.marketplaceprivateauction.updateproposal", - "path": "privateauction/{privateAuctionId}/updateproposal", - "httpMethod": "POST", - "description": "Update a given private auction proposal", - "parameters": { - "privateAuctionId": { - "type": "string", - "description": "The private auction id to be updated.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "privateAuctionId" - ], - "request": { - "$ref": "UpdatePrivateAuctionProposalRequest" - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ] - } - } - }, - "performanceReport": { - "methods": { - "list": { - "id": "adexchangebuyer.performanceReport.list", - "path": "performancereport", - "httpMethod": "GET", - "description": "Retrieves the authenticated user's list of performance metrics.", - "parameters": { - "accountId": { - "type": "string", - "description": "The account id to get the reports.", - "required": true, - "format": "int64", - "location": "query" - }, - "endDateTime": { - "type": "string", - "description": "The end time of the report in ISO 8601 timestamp format using UTC.", - "required": true, - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "Maximum number of entries returned on one result page. If not set, the default is 100. Optional.", - "format": "uint32", - "minimum": "1", - "maximum": "1000", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "A continuation token, used to page through performance reports. To retrieve the next page, set this parameter to the value of \"nextPageToken\" from the previous response. Optional.", - "location": "query" - }, - "startDateTime": { - "type": "string", - "description": "The start time of the report in ISO 8601 timestamp format using UTC.", - "required": true, - "location": "query" - } - }, - "parameterOrder": [ - "accountId", - "endDateTime", - "startDateTime" - ], - "response": { - "$ref": "PerformanceReportList" - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ] - } - } - }, - "pretargetingConfig": { - "methods": { - "delete": { - "id": "adexchangebuyer.pretargetingConfig.delete", - "path": "pretargetingconfigs/{accountId}/{configId}", - "httpMethod": "DELETE", - "description": "Deletes an existing pretargeting config.", - "parameters": { - "accountId": { - "type": "string", - "description": "The account id to delete the pretargeting config for.", - "required": true, - "format": "int64", - "location": "path" - }, - "configId": { - "type": "string", - "description": "The specific id of the configuration to delete.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "accountId", - "configId" - ], - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ] - }, - "get": { - "id": "adexchangebuyer.pretargetingConfig.get", - "path": "pretargetingconfigs/{accountId}/{configId}", - "httpMethod": "GET", - "description": "Gets a specific pretargeting configuration", - "parameters": { - "accountId": { - "type": "string", - "description": "The account id to get the pretargeting config for.", - "required": true, - "format": "int64", - "location": "path" - }, - "configId": { - "type": "string", - "description": "The specific id of the configuration to retrieve.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "accountId", - "configId" - ], - "response": { - "$ref": "PretargetingConfig" - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ] - }, - "insert": { - "id": "adexchangebuyer.pretargetingConfig.insert", - "path": "pretargetingconfigs/{accountId}", - "httpMethod": "POST", - "description": "Inserts a new pretargeting configuration.", - "parameters": { - "accountId": { - "type": "string", - "description": "The account id to insert the pretargeting config for.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "accountId" - ], - "request": { - "$ref": "PretargetingConfig" - }, - "response": { - "$ref": "PretargetingConfig" - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ] - }, - "list": { - "id": "adexchangebuyer.pretargetingConfig.list", - "path": "pretargetingconfigs/{accountId}", - "httpMethod": "GET", - "description": "Retrieves a list of the authenticated user's pretargeting configurations.", - "parameters": { - "accountId": { - "type": "string", - "description": "The account id to get the pretargeting configs for.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "accountId" - ], - "response": { - "$ref": "PretargetingConfigList" - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ] - }, - "patch": { - "id": "adexchangebuyer.pretargetingConfig.patch", - "path": "pretargetingconfigs/{accountId}/{configId}", - "httpMethod": "PATCH", - "description": "Updates an existing pretargeting config. This method supports patch semantics.", - "parameters": { - "accountId": { - "type": "string", - "description": "The account id to update the pretargeting config for.", - "required": true, - "format": "int64", - "location": "path" - }, - "configId": { - "type": "string", - "description": "The specific id of the configuration to update.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "accountId", - "configId" - ], - "request": { - "$ref": "PretargetingConfig" - }, - "response": { - "$ref": "PretargetingConfig" - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ] - }, - "update": { - "id": "adexchangebuyer.pretargetingConfig.update", - "path": "pretargetingconfigs/{accountId}/{configId}", - "httpMethod": "PUT", - "description": "Updates an existing pretargeting config.", - "parameters": { - "accountId": { - "type": "string", - "description": "The account id to update the pretargeting config for.", - "required": true, - "format": "int64", - "location": "path" - }, - "configId": { - "type": "string", - "description": "The specific id of the configuration to update.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "accountId", - "configId" - ], - "request": { - "$ref": "PretargetingConfig" - }, - "response": { - "$ref": "PretargetingConfig" - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ] - } - } - }, - "products": { - "methods": { - "get": { - "id": "adexchangebuyer.products.get", - "path": "products/{productId}", - "httpMethod": "GET", - "description": "Gets the requested product by id.", - "parameters": { - "productId": { - "type": "string", - "description": "The id for the product to get the head revision for.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "productId" - ], - "response": { - "$ref": "Product" - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ] - }, - "search": { - "id": "adexchangebuyer.products.search", - "path": "products/search", - "httpMethod": "GET", - "description": "Gets the requested product.", - "parameters": { - "pqlQuery": { - "type": "string", - "description": "The pql query used to query for products.", - "location": "query" - } - }, - "response": { - "$ref": "GetOffersResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ] - } - } - }, - "proposals": { - "methods": { - "get": { - "id": "adexchangebuyer.proposals.get", - "path": "proposals/{proposalId}", - "httpMethod": "GET", - "description": "Get a proposal given its id", - "parameters": { - "proposalId": { - "type": "string", - "description": "Id of the proposal to retrieve.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "proposalId" - ], - "response": { - "$ref": "Proposal" - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ] - }, - "insert": { - "id": "adexchangebuyer.proposals.insert", - "path": "proposals/insert", - "httpMethod": "POST", - "description": "Create the given list of proposals", - "request": { - "$ref": "CreateOrdersRequest" - }, - "response": { - "$ref": "CreateOrdersResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ] - }, - "patch": { - "id": "adexchangebuyer.proposals.patch", - "path": "proposals/{proposalId}/{revisionNumber}/{updateAction}", - "httpMethod": "PATCH", - "description": "Update the given proposal. This method supports patch semantics.", - "parameters": { - "proposalId": { - "type": "string", - "description": "The proposal id to update.", - "required": true, - "location": "path" - }, - "revisionNumber": { - "type": "string", - "description": "The last known revision number to update. If the head revision in the marketplace database has since changed, an error will be thrown. The caller should then fetch the latest proposal at head revision and retry the update at that revision.", - "required": true, - "format": "int64", - "location": "path" - }, - "updateAction": { - "type": "string", - "description": "The proposed action to take on the proposal. This field is required and it must be set when updating a proposal.", - "required": true, - "enum": [ - "accept", - "cancel", - "propose", - "proposeAndAccept", - "unknownAction", - "updateNonTerms" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "" - ], - "location": "path" - } - }, - "parameterOrder": [ - "proposalId", - "revisionNumber", - "updateAction" - ], - "request": { - "$ref": "Proposal" - }, - "response": { - "$ref": "Proposal" - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ] - }, - "search": { - "id": "adexchangebuyer.proposals.search", - "path": "proposals/search", - "httpMethod": "GET", - "description": "Search for proposals using pql query", - "parameters": { - "pqlQuery": { - "type": "string", - "description": "Query string to retrieve specific proposals.", - "location": "query" - } - }, - "response": { - "$ref": "GetOrdersResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ] - }, - "setupcomplete": { - "id": "adexchangebuyer.proposals.setupcomplete", - "path": "proposals/{proposalId}/setupcomplete", - "httpMethod": "POST", - "description": "Update the given proposal to indicate that setup has been completed.", - "parameters": { - "proposalId": { - "type": "string", - "description": "The proposal id for which the setup is complete", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "proposalId" - ], - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ] - }, - "update": { - "id": "adexchangebuyer.proposals.update", - "path": "proposals/{proposalId}/{revisionNumber}/{updateAction}", - "httpMethod": "PUT", - "description": "Update the given proposal", - "parameters": { - "proposalId": { - "type": "string", - "description": "The proposal id to update.", - "required": true, - "location": "path" - }, - "revisionNumber": { - "type": "string", - "description": "The last known revision number to update. If the head revision in the marketplace database has since changed, an error will be thrown. The caller should then fetch the latest proposal at head revision and retry the update at that revision.", - "required": true, - "format": "int64", - "location": "path" - }, - "updateAction": { - "type": "string", - "description": "The proposed action to take on the proposal. This field is required and it must be set when updating a proposal.", - "required": true, - "enum": [ - "accept", - "cancel", - "propose", - "proposeAndAccept", - "unknownAction", - "updateNonTerms" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "" - ], - "location": "path" - } - }, - "parameterOrder": [ - "proposalId", - "revisionNumber", - "updateAction" - ], - "request": { - "$ref": "Proposal" - }, - "response": { - "$ref": "Proposal" - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ] - } - } - }, - "pubprofiles": { - "methods": { - "list": { - "id": "adexchangebuyer.pubprofiles.list", - "path": "publisher/{accountId}/profiles", - "httpMethod": "GET", - "description": "Gets the requested publisher profile(s) by publisher accountId.", - "parameters": { - "accountId": { - "type": "integer", - "description": "The accountId of the publisher to get profiles for.", - "required": true, - "format": "int32", - "location": "path" - } - }, - "parameterOrder": [ - "accountId" - ], - "response": { - "$ref": "GetPublisherProfilesByAccountIdResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ] - } - } - } - } -} + "servicePath": "adexchangebuyer/v1.4/", + "title": "Ad Exchange Buyer API", + "version": "v1.4" +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/adexchangebuyer/v1.4/adexchangebuyer-gen.go b/vendor/google.golang.org/api/adexchangebuyer/v1.4/adexchangebuyer-gen.go index a48b43e04..e56f9e45f 100644 --- a/vendor/google.golang.org/api/adexchangebuyer/v1.4/adexchangebuyer-gen.go +++ b/vendor/google.golang.org/api/adexchangebuyer/v1.4/adexchangebuyer-gen.go @@ -218,6 +218,14 @@ type PubprofilesService struct { // Account: Configuration data for an Ad Exchange buyer account. type Account struct { + // ApplyPretargetingToNonGuaranteedDeals: When this is false, bid + // requests that include a deal ID for a private auction or preferred + // deal are always sent to your bidder. When true, all active + // pretargeting configs will be applied to private auctions and + // preferred deals. Programmatic Guaranteed deals (when enabled) are + // always sent to your bidder. + ApplyPretargetingToNonGuaranteedDeals bool `json:"applyPretargetingToNonGuaranteedDeals,omitempty"` + // BidderLocation: Your bidder locations that have distinct URLs. BidderLocation []*AccountBidderLocation `json:"bidderLocation,omitempty"` @@ -254,21 +262,22 @@ type Account struct { // server. googleapi.ServerResponse `json:"-"` - // ForceSendFields is a list of field names (e.g. "BidderLocation") to - // unconditionally include in API requests. By default, fields with - // empty values are omitted from API requests. However, any non-pointer, - // non-interface field appearing in ForceSendFields will be sent to the - // server regardless of whether the field is empty or not. This may be - // used to include empty fields in Patch requests. + // ForceSendFields is a list of field names (e.g. + // "ApplyPretargetingToNonGuaranteedDeals") to unconditionally include + // in API requests. By default, fields with empty values are omitted + // from API requests. However, any non-pointer, non-interface field + // appearing in ForceSendFields will be sent to the server regardless of + // whether the field is empty or not. This may be used to include empty + // fields in Patch requests. ForceSendFields []string `json:"-"` - // NullFields is a list of field names (e.g. "BidderLocation") to - // include in API requests with the JSON null value. By default, fields - // with empty values are omitted from API requests. However, any field - // with an empty value appearing in NullFields will be sent to the - // server as null. It is an error if a field in this list has a - // non-empty value. This may be used to include null fields in Patch - // requests. + // NullFields is a list of field names (e.g. + // "ApplyPretargetingToNonGuaranteedDeals") to include in API requests + // with the JSON null value. By default, fields with empty values are + // omitted from API requests. However, any field with an empty value + // appearing in NullFields will be sent to the server as null. It is an + // error if a field in this list has a non-empty value. This may be used + // to include null fields in Patch requests. NullFields []string `json:"-"` } @@ -745,7 +754,8 @@ func (s *CreateOrdersResponse) MarshalJSON() ([]byte, error) { // Creative: A creative and its classification data. type Creative struct { // HTMLSnippet: The HTML snippet that displays the ad when inserted in - // the web page. If set, videoURL should not be set. + // the web page. If set, videoURL, videoVastXML, and nativeAd should not + // be set. HTMLSnippet string `json:"HTMLSnippet,omitempty"` // AccountId: Account id. @@ -818,9 +828,9 @@ type Creative struct { // field should not be set in requests. Languages []string `json:"languages,omitempty"` - // NativeAd: If nativeAd is set, HTMLSnippet and the videoURL outside of - // nativeAd should not be set. (The videoURL inside nativeAd can be - // set.) + // NativeAd: If nativeAd is set, HTMLSnippet, videoVastXML, and the + // videoURL outside of nativeAd should not be set. (The videoURL inside + // nativeAd can be set.) NativeAd *CreativeNativeAd `json:"nativeAd,omitempty"` // OpenAuctionStatus: Top-level open auction status. Read-only. This @@ -865,11 +875,16 @@ type Creative struct { // not be set in requests. Version int64 `json:"version,omitempty"` - // VideoURL: The URL to fetch a video ad. If set, HTMLSnippet and the - // nativeAd should not be set. Note, this is different from - // resource.native_ad.video_url above. + // VideoURL: The URL to fetch a video ad. If set, HTMLSnippet, + // videoVastXML, and nativeAd should not be set. Note, this is different + // from resource.native_ad.video_url above. VideoURL string `json:"videoURL,omitempty"` + // VideoVastXML: The contents of a VAST document for a video ad. This + // document should conform to the VAST 2.0 or 3.0 standard. If set, + // HTMLSnippet, videoURL, and nativeAd and should not be set. + VideoVastXML string `json:"videoVastXML,omitempty"` + // Width: Ad width. Width int64 `json:"width,omitempty"` @@ -1041,9 +1056,9 @@ func (s *CreativeFilteringReasonsReasons) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -// CreativeNativeAd: If nativeAd is set, HTMLSnippet and the videoURL -// outside of nativeAd should not be set. (The videoURL inside nativeAd -// can be set.) +// CreativeNativeAd: If nativeAd is set, HTMLSnippet, videoVastXML, and +// the videoURL outside of nativeAd should not be set. (The videoURL +// inside nativeAd can be set.) type CreativeNativeAd struct { Advertiser string `json:"advertiser,omitempty"` @@ -3570,6 +3585,10 @@ type TargetingValue struct { // Filled in when the key is GOOG_DAYPART_TARGETING. DayPartTargetingValue *TargetingValueDayPartTargeting `json:"dayPartTargetingValue,omitempty"` + DemogAgeCriteriaValue *TargetingValueDemogAgeCriteria `json:"demogAgeCriteriaValue,omitempty"` + + DemogGenderCriteriaValue *TargetingValueDemogGenderCriteria `json:"demogGenderCriteriaValue,omitempty"` + // LongValue: The long value to exclude/include. LongValue int64 `json:"longValue,omitempty,string"` @@ -3600,7 +3619,11 @@ func (s *TargetingValue) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// TargetingValueCreativeSize: Next Id: 7 type TargetingValueCreativeSize struct { + // AllowedFormats: The formats allowed by the publisher. + AllowedFormats []string `json:"allowedFormats,omitempty"` + // CompanionSizes: For video size type, the list of companion sizes. CompanionSizes []*TargetingValueSize `json:"companionSizes,omitempty"` @@ -3617,7 +3640,7 @@ type TargetingValueCreativeSize struct { // SkippableAdType: The skippable ad type for video size. SkippableAdType string `json:"skippableAdType,omitempty"` - // ForceSendFields is a list of field names (e.g. "CompanionSizes") to + // ForceSendFields is a list of field names (e.g. "AllowedFormats") to // unconditionally include in API requests. By default, fields with // empty values are omitted from API requests. However, any non-pointer, // non-interface field appearing in ForceSendFields will be sent to the @@ -3625,7 +3648,7 @@ type TargetingValueCreativeSize struct { // used to include empty fields in Patch requests. ForceSendFields []string `json:"-"` - // NullFields is a list of field names (e.g. "CompanionSizes") to + // NullFields is a list of field names (e.g. "AllowedFormats") to // include in API requests with the JSON null value. By default, fields // with empty values are omitted from API requests. However, any field // with an empty value appearing in NullFields will be sent to the @@ -3703,6 +3726,61 @@ func (s *TargetingValueDayPartTargetingDayPart) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +type TargetingValueDemogAgeCriteria struct { + DemogAgeCriteriaIds []string `json:"demogAgeCriteriaIds,omitempty"` + + // ForceSendFields is a list of field names (e.g. "DemogAgeCriteriaIds") + // to unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "DemogAgeCriteriaIds") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *TargetingValueDemogAgeCriteria) MarshalJSON() ([]byte, error) { + type NoMethod TargetingValueDemogAgeCriteria + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +type TargetingValueDemogGenderCriteria struct { + DemogGenderCriteriaIds []string `json:"demogGenderCriteriaIds,omitempty"` + + // ForceSendFields is a list of field names (e.g. + // "DemogGenderCriteriaIds") to unconditionally include in API requests. + // By default, fields with empty values are omitted from API requests. + // However, any non-pointer, non-interface field appearing in + // ForceSendFields will be sent to the server regardless of whether the + // field is empty or not. This may be used to include empty fields in + // Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "DemogGenderCriteriaIds") + // to include in API requests with the JSON null value. By default, + // fields with empty values are omitted from API requests. However, any + // field with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *TargetingValueDemogGenderCriteria) MarshalJSON() ([]byte, error) { + type NoMethod TargetingValueDemogGenderCriteria + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + type TargetingValueSize struct { // Height: The height of the creative. Height int64 `json:"height,omitempty"` diff --git a/vendor/google.golang.org/api/adexchangebuyer2/v2beta1/adexchangebuyer2-api.json b/vendor/google.golang.org/api/adexchangebuyer2/v2beta1/adexchangebuyer2-api.json index 3cc6c711f..43df8476f 100644 --- a/vendor/google.golang.org/api/adexchangebuyer2/v2beta1/adexchangebuyer2-api.json +++ b/vendor/google.golang.org/api/adexchangebuyer2/v2beta1/adexchangebuyer2-api.json @@ -1,20 +1,2233 @@ { - "baseUrl": "https://adexchangebuyer.googleapis.com/", - "servicePath": "", - "kind": "discovery#restDescription", - "description": "Accesses the latest features for managing Ad Exchange accounts, Real-Time Bidding configurations and auction metrics, and Marketplace programmatic deals.", + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/adexchange.buyer": { + "description": "Manage your Ad Exchange buyer account configuration" + } + } + } + }, "basePath": "", - "revision": "20180119", - "documentationLink": "https://developers.google.com/ad-exchange/buyer-rest/reference/rest/", - "id": "adexchangebuyer2:v2beta1", + "baseUrl": "https://adexchangebuyer.googleapis.com/", + "batchPath": "batch", + "canonicalName": "AdExchangeBuyerII", + "description": "Accesses the latest features for managing Ad Exchange accounts, Real-Time Bidding configurations and auction metrics, and Marketplace programmatic deals.", "discoveryVersion": "v1", - "version_module": true, + "documentationLink": "https://developers.google.com/ad-exchange/buyer-rest/reference/rest/", + "icons": { + "x16": "http://www.google.com/images/icons/product/search-16.gif", + "x32": "http://www.google.com/images/icons/product/search-32.gif" + }, + "id": "adexchangebuyer2:v2beta1", + "kind": "discovery#restDescription", + "name": "adexchangebuyer2", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "$.xgafv": { + "description": "V1 error format.", + "enum": [ + "1", + "2" + ], + "enumDescriptions": [ + "v1 error format", + "v2 error format" + ], + "location": "query", + "type": "string" + }, + "access_token": { + "description": "OAuth access token.", + "location": "query", + "type": "string" + }, + "alt": { + "default": "json", + "description": "Data format for response.", + "enum": [ + "json", + "media", + "proto" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json", + "Media download with context-dependent Content-Type", + "Responses with Content-Type of application/x-protobuf" + ], + "location": "query", + "type": "string" + }, + "bearer_token": { + "description": "OAuth bearer token.", + "location": "query", + "type": "string" + }, + "callback": { + "description": "JSONP", + "location": "query", + "type": "string" + }, + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "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.", + "location": "query", + "type": "string" + }, + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "pp": { + "default": "true", + "description": "Pretty-print response.", + "location": "query", + "type": "boolean" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", + "location": "query", + "type": "string" + }, + "uploadType": { + "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", + "location": "query", + "type": "string" + }, + "upload_protocol": { + "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", + "location": "query", + "type": "string" + } + }, + "protocol": "rest", + "resources": { + "accounts": { + "resources": { + "clients": { + "methods": { + "create": { + "description": "Creates a new client buyer.", + "flatPath": "v2beta1/accounts/{accountId}/clients", + "httpMethod": "POST", + "id": "adexchangebuyer2.accounts.clients.create", + "parameterOrder": [ + "accountId" + ], + "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)", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v2beta1/accounts/{accountId}/clients", + "request": { + "$ref": "Client" + }, + "response": { + "$ref": "Client" + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.buyer" + ] + }, + "get": { + "description": "Gets a client buyer with a given client account ID.", + "flatPath": "v2beta1/accounts/{accountId}/clients/{clientAccountId}", + "httpMethod": "GET", + "id": "adexchangebuyer2.accounts.clients.get", + "parameterOrder": [ + "accountId", + "clientAccountId" + ], + "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 to retrieve. (required)", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v2beta1/accounts/{accountId}/clients/{clientAccountId}", + "response": { + "$ref": "Client" + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.buyer" + ] + }, + "list": { + "description": "Lists all the clients for the current sponsor buyer.", + "flatPath": "v2beta1/accounts/{accountId}/clients", + "httpMethod": "GET", + "id": "adexchangebuyer2.accounts.clients.list", + "parameterOrder": [ + "accountId" + ], + "parameters": { + "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" + }, + "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" + }, + "partnerClientId": { + "description": "Optional unique identifier (from the standpoint of an Ad Exchange sponsor\nbuyer partner) of the client to return.\nIf specified, at most one client will be returned in the response.", + "location": "query", + "type": "string" + } + }, + "path": "v2beta1/accounts/{accountId}/clients", + "response": { + "$ref": "ListClientsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.buyer" + ] + }, + "update": { + "description": "Updates an existing client buyer.", + "flatPath": "v2beta1/accounts/{accountId}/clients/{clientAccountId}", + "httpMethod": "PUT", + "id": "adexchangebuyer2.accounts.clients.update", + "parameterOrder": [ + "accountId", + "clientAccountId" + ], + "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)", + "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" + } + }, + "path": "v2beta1/accounts/{accountId}/clients/{clientAccountId}", + "request": { + "$ref": "Client" + }, + "response": { + "$ref": "Client" + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.buyer" + ] + } + }, + "resources": { + "invitations": { + "methods": { + "create": { + "description": "Creates and sends out an email invitation to access\nan Ad Exchange client buyer account.", + "flatPath": "v2beta1/accounts/{accountId}/clients/{clientAccountId}/invitations", + "httpMethod": "POST", + "id": "adexchangebuyer2.accounts.clients.invitations.create", + "parameterOrder": [ + "accountId", + "clientAccountId" + ], + "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\nshould be associated with. (required)", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v2beta1/accounts/{accountId}/clients/{clientAccountId}/invitations", + "request": { + "$ref": "ClientUserInvitation" + }, + "response": { + "$ref": "ClientUserInvitation" + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.buyer" + ] + }, + "get": { + "description": "Retrieves an existing client user invitation.", + "flatPath": "v2beta1/accounts/{accountId}/clients/{clientAccountId}/invitations/{invitationId}", + "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": "Lists all the client users invitations for a client\nwith a given account ID.", + "flatPath": "v2beta1/accounts/{accountId}/clients/{clientAccountId}/invitations", + "httpMethod": "GET", + "id": "adexchangebuyer2.accounts.clients.invitations.list", + "parameterOrder": [ + "accountId", + "clientAccountId" + ], + "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 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" + }, + "pageSize": { + "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" + }, + "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.", + "location": "query", + "type": "string" + } + }, + "path": "v2beta1/accounts/{accountId}/clients/{clientAccountId}/invitations", + "response": { + "$ref": "ListClientUserInvitationsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.buyer" + ] + } + } + }, + "users": { + "methods": { + "get": { + "description": "Retrieves an existing client user.", + "flatPath": "v2beta1/accounts/{accountId}/clients/{clientAccountId}/users/{userId}", + "httpMethod": "GET", + "id": "adexchangebuyer2.accounts.clients.users.get", + "parameterOrder": [ + "accountId", + "clientAccountId", + "userId" + ], + "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\nthat the user to be retrieved is associated with. (required)", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "userId": { + "description": "Numerical identifier of the user to retrieve. (required)", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v2beta1/accounts/{accountId}/clients/{clientAccountId}/users/{userId}", + "response": { + "$ref": "ClientUser" + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.buyer" + ] + }, + "list": { + "description": "Lists all the known client users for a specified\nsponsor buyer account ID.", + "flatPath": "v2beta1/accounts/{accountId}/clients/{clientAccountId}/users", + "httpMethod": "GET", + "id": "adexchangebuyer2.accounts.clients.users.list", + "parameterOrder": [ + "accountId", + "clientAccountId" + ], + "parameters": { + "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" + }, + "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" + }, + "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" + }, + "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" + } + }, + "path": "v2beta1/accounts/{accountId}/clients/{clientAccountId}/users", + "response": { + "$ref": "ListClientUsersResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.buyer" + ] + }, + "update": { + "description": "Updates an existing client user.\nOnly the user status can be changed on update.", + "flatPath": "v2beta1/accounts/{accountId}/clients/{clientAccountId}/users/{userId}", + "httpMethod": "PUT", + "id": "adexchangebuyer2.accounts.clients.users.update", + "parameterOrder": [ + "accountId", + "clientAccountId", + "userId" + ], + "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 to be retrieved\nis associated with. (required)", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "userId": { + "description": "Numerical identifier of the user to retrieve. (required)", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v2beta1/accounts/{accountId}/clients/{clientAccountId}/users/{userId}", + "request": { + "$ref": "ClientUser" + }, + "response": { + "$ref": "ClientUser" + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.buyer" + ] + } + } + } + } + }, + "creatives": { + "methods": { + "create": { + "description": "Creates a creative.", + "flatPath": "v2beta1/accounts/{accountId}/creatives", + "httpMethod": "POST", + "id": "adexchangebuyer2.accounts.creatives.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.", + "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", + "request": { + "$ref": "Creative" + }, + "response": { + "$ref": "Creative" + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.buyer" + ] + }, + "get": { + "description": "Gets a creative.", + "flatPath": "v2beta1/accounts/{accountId}/creatives/{creativeId}", + "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" + ] + }, + "list": { + "description": "Lists creatives.", + "flatPath": "v2beta1/accounts/{accountId}/creatives", + "httpMethod": "GET", + "id": "adexchangebuyer2.accounts.creatives.list", + "parameterOrder": [ + "accountId" + ], + "parameters": { + "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" + }, + "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" + }, + "query": { + "description": "An optional query string to filter creatives. If no filter is specified,\nall active creatives will be returned.\nSupported queries are:\n\u003cul\u003e\n\u003cli\u003eaccountId=\u003ci\u003eaccount_id_string\u003c/i\u003e\n\u003cli\u003ecreativeId=\u003ci\u003ecreative_id_string\u003c/i\u003e\n\u003cli\u003edealsStatus: {approved, conditionally_approved, disapproved,\n not_checked}\n\u003cli\u003eopenAuctionStatus: {approved, conditionally_approved, disapproved,\n not_checked}\n\u003cli\u003eattribute: {a numeric attribute from the list of attributes}\n\u003cli\u003edisapprovalReason: {a reason from\nDisapprovalReason}\n\u003c/ul\u003e\nExample: 'accountId=12345 AND (dealsStatus:disapproved AND\ndisapprovalReason: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" + ] + }, + "stopWatching": { + "description": "Stops watching a creative. Will stop push notifications being sent to the\ntopics when the creative changes status.", + "flatPath": "v2beta1/accounts/{accountId}/creatives/{creativeId}:stopWatching", + "httpMethod": "POST", + "id": "adexchangebuyer2.accounts.creatives.stopWatching", + "parameterOrder": [ + "accountId", + "creativeId" + ], + "parameters": { + "accountId": { + "description": "The account of the creative to stop notifications for.", + "location": "path", + "required": true, + "type": "string" + }, + "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" + } + }, + "path": "v2beta1/accounts/{accountId}/creatives/{creativeId}:stopWatching", + "request": { + "$ref": "StopWatchingCreativeRequest" + }, + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.buyer" + ] + }, + "update": { + "description": "Updates a creative.", + "flatPath": "v2beta1/accounts/{accountId}/creatives/{creativeId}", + "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" + ] + }, + "watch": { + "description": "Watches a creative. Will result in push notifications being sent to the\ntopic when the creative changes status.", + "flatPath": "v2beta1/accounts/{accountId}/creatives/{creativeId}:watch", + "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" + ] + } + }, + "resources": { + "dealAssociations": { + "methods": { + "add": { + "description": "Associate an existing deal with a creative.", + "flatPath": "v2beta1/accounts/{accountId}/creatives/{creativeId}/dealAssociations:add", + "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" + ] + }, + "list": { + "description": "List all creative-deal associations.", + "flatPath": "v2beta1/accounts/{accountId}/creatives/{creativeId}/dealAssociations", + "httpMethod": "GET", + "id": "adexchangebuyer2.accounts.creatives.dealAssociations.list", + "parameterOrder": [ + "accountId", + "creativeId" + ], + "parameters": { + "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" + }, + "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" + }, + "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" + }, + "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" + }, + "query": { + "description": "An optional query string to filter deal associations. If no filter is\nspecified, all associations will be returned.\nSupported queries are:\n\u003cul\u003e\n\u003cli\u003eaccountId=\u003ci\u003eaccount_id_string\u003c/i\u003e\n\u003cli\u003ecreativeId=\u003ci\u003ecreative_id_string\u003c/i\u003e\n\u003cli\u003edealsId=\u003ci\u003edeals_id_string\u003c/i\u003e\n\u003cli\u003edealsStatus:{approved, conditionally_approved, disapproved,\n not_checked}\n\u003cli\u003eopenAuctionStatus:{approved, conditionally_approved, disapproved,\n not_checked}\n\u003c/ul\u003e\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" + ] + }, + "remove": { + "description": "Remove the association between a deal and a creative.", + "flatPath": "v2beta1/accounts/{accountId}/creatives/{creativeId}/dealAssociations:remove", + "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" + ] + } + } + } + } + } + } + }, + "bidders": { + "resources": { + "accounts": { + "resources": { + "filterSets": { + "methods": { + "create": { + "description": "Creates the specified filter set for the account with the given account ID.", + "flatPath": "v2beta1/bidders/{biddersId}/accounts/{accountsId}/filterSets", + "httpMethod": "POST", + "id": "adexchangebuyer2.bidders.accounts.filterSets.create", + "parameterOrder": [ + "ownerName" + ], + "parameters": { + "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" + }, + "ownerName": { + "description": "Name of the owner (bidder or account) of the filter set to be created.\nFor example:\n\n- For a bidder-level filter set for bidder 123: `bidders/123`\n\n- For an account-level filter set for the buyer account representing bidder\n 123: `bidders/123/accounts/123`\n\n- For an account-level filter set for the child seat buyer account 456\n whose bidder is 123: `bidders/123/accounts/456`", + "location": "path", + "pattern": "^bidders/[^/]+/accounts/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2beta1/{+ownerName}/filterSets", + "request": { + "$ref": "FilterSet" + }, + "response": { + "$ref": "FilterSet" + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.buyer" + ] + }, + "delete": { + "description": "Deletes the requested filter set from the account with the given account\nID.", + "flatPath": "v2beta1/bidders/{biddersId}/accounts/{accountsId}/filterSets/{filterSetsId}", + "httpMethod": "DELETE", + "id": "adexchangebuyer2.bidders.accounts.filterSets.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Full name of the resource to delete.\nFor example:\n\n- For a bidder-level filter set for bidder 123:\n `bidders/123/filterSets/abc`\n\n- For an account-level filter set for the buyer account representing bidder\n 123: `bidders/123/accounts/123/filterSets/abc`\n\n- For an account-level filter set for the child seat buyer account 456\n whose bidder is 123: `bidders/123/accounts/456/filterSets/abc`", + "location": "path", + "pattern": "^bidders/[^/]+/accounts/[^/]+/filterSets/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2beta1/{+name}", + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.buyer" + ] + }, + "get": { + "description": "Retrieves the requested filter set for the account with the given account\nID.", + "flatPath": "v2beta1/bidders/{biddersId}/accounts/{accountsId}/filterSets/{filterSetsId}", + "httpMethod": "GET", + "id": "adexchangebuyer2.bidders.accounts.filterSets.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Full name of the resource being requested.\nFor example:\n\n- For a bidder-level filter set for bidder 123:\n `bidders/123/filterSets/abc`\n\n- For an account-level filter set for the buyer account representing bidder\n 123: `bidders/123/accounts/123/filterSets/abc`\n\n- For an account-level filter set for the child seat buyer account 456\n whose bidder is 123: `bidders/123/accounts/456/filterSets/abc`", + "location": "path", + "pattern": "^bidders/[^/]+/accounts/[^/]+/filterSets/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2beta1/{+name}", + "response": { + "$ref": "FilterSet" + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.buyer" + ] + }, + "list": { + "description": "Lists all filter sets for the account with the given account ID.", + "flatPath": "v2beta1/bidders/{biddersId}/accounts/{accountsId}/filterSets", + "httpMethod": "GET", + "id": "adexchangebuyer2.bidders.accounts.filterSets.list", + "parameterOrder": [ + "ownerName" + ], + "parameters": { + "ownerName": { + "description": "Name of the owner (bidder or account) of the filter sets to be listed.\nFor example:\n\n- For a bidder-level filter set for bidder 123: `bidders/123`\n\n- For an account-level filter set for the buyer account representing bidder\n 123: `bidders/123/accounts/123`\n\n- For an account-level filter set for the child seat buyer account 456\n whose bidder is 123: `bidders/123/accounts/456`", + "location": "path", + "pattern": "^bidders/[^/]+/accounts/[^/]+$", + "required": true, + "type": "string" + }, + "pageSize": { + "description": "Requested page size. The server may return fewer results than requested.\nIf unspecified, the server will pick an appropriate default.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "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.filterSets.list\nmethod.", + "location": "query", + "type": "string" + } + }, + "path": "v2beta1/{+ownerName}/filterSets", + "response": { + "$ref": "ListFilterSetsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.buyer" + ] + } + }, + "resources": { + "bidMetrics": { + "methods": { + "list": { + "description": "Lists all metrics that are measured in terms of number of bids.", + "flatPath": "v2beta1/bidders/{biddersId}/accounts/{accountsId}/filterSets/{filterSetsId}/bidMetrics", + "httpMethod": "GET", + "id": "adexchangebuyer2.bidders.accounts.filterSets.bidMetrics.list", + "parameterOrder": [ + "filterSetName" + ], + "parameters": { + "filterSetName": { + "description": "Name of the filter set that should be applied to the requested metrics.\nFor example:\n\n- For a bidder-level filter set for bidder 123:\n `bidders/123/filterSets/abc`\n\n- For an account-level filter set for the buyer account representing bidder\n 123: `bidders/123/accounts/123/filterSets/abc`\n\n- For an account-level filter set for the child seat buyer account 456\n whose bidder is 123: `bidders/123/accounts/456/filterSets/abc`", + "location": "path", + "pattern": "^bidders/[^/]+/accounts/[^/]+/filterSets/[^/]+$", + "required": true, + "type": "string" + }, + "pageSize": { + "description": "Requested page size. The server may return fewer results than requested.\nIf unspecified, the server will pick an appropriate default.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "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 bidMetrics.list\nmethod.", + "location": "query", + "type": "string" + } + }, + "path": "v2beta1/{+filterSetName}/bidMetrics", + "response": { + "$ref": "ListBidMetricsResponse" + }, + "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.", + "flatPath": "v2beta1/bidders/{biddersId}/accounts/{accountsId}/filterSets/{filterSetsId}/bidResponseErrors", + "httpMethod": "GET", + "id": "adexchangebuyer2.bidders.accounts.filterSets.bidResponseErrors.list", + "parameterOrder": [ + "filterSetName" + ], + "parameters": { + "filterSetName": { + "description": "Name of the filter set that should be applied to the requested metrics.\nFor example:\n\n- For a bidder-level filter set for bidder 123:\n `bidders/123/filterSets/abc`\n\n- For an account-level filter set for the buyer account representing bidder\n 123: `bidders/123/accounts/123/filterSets/abc`\n\n- For an account-level filter set for the child seat buyer account 456\n whose bidder is 123: `bidders/123/accounts/456/filterSets/abc`", + "location": "path", + "pattern": "^bidders/[^/]+/accounts/[^/]+/filterSets/[^/]+$", + "required": true, + "type": "string" + }, + "pageSize": { + "description": "Requested page size. The server may return fewer results than requested.\nIf unspecified, the server will pick an appropriate default.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "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 bidResponseErrors.list\nmethod.", + "location": "query", + "type": "string" + } + }, + "path": "v2beta1/{+filterSetName}/bidResponseErrors", + "response": { + "$ref": "ListBidResponseErrorsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.buyer" + ] + } + } + }, + "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.", + "flatPath": "v2beta1/bidders/{biddersId}/accounts/{accountsId}/filterSets/{filterSetsId}/bidResponsesWithoutBids", + "httpMethod": "GET", + "id": "adexchangebuyer2.bidders.accounts.filterSets.bidResponsesWithoutBids.list", + "parameterOrder": [ + "filterSetName" + ], + "parameters": { + "filterSetName": { + "description": "Name of the filter set that should be applied to the requested metrics.\nFor example:\n\n- For a bidder-level filter set for bidder 123:\n `bidders/123/filterSets/abc`\n\n- For an account-level filter set for the buyer account representing bidder\n 123: `bidders/123/accounts/123/filterSets/abc`\n\n- For an account-level filter set for the child seat buyer account 456\n whose bidder is 123: `bidders/123/accounts/456/filterSets/abc`", + "location": "path", + "pattern": "^bidders/[^/]+/accounts/[^/]+/filterSets/[^/]+$", + "required": true, + "type": "string" + }, + "pageSize": { + "description": "Requested page size. The server may return fewer results than requested.\nIf unspecified, the server will pick an appropriate default.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "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 bidResponsesWithoutBids.list\nmethod.", + "location": "query", + "type": "string" + } + }, + "path": "v2beta1/{+filterSetName}/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.", + "flatPath": "v2beta1/bidders/{biddersId}/accounts/{accountsId}/filterSets/{filterSetsId}/filteredBidRequests", + "httpMethod": "GET", + "id": "adexchangebuyer2.bidders.accounts.filterSets.filteredBidRequests.list", + "parameterOrder": [ + "filterSetName" + ], + "parameters": { + "filterSetName": { + "description": "Name of the filter set that should be applied to the requested metrics.\nFor example:\n\n- For a bidder-level filter set for bidder 123:\n `bidders/123/filterSets/abc`\n\n- For an account-level filter set for the buyer account representing bidder\n 123: `bidders/123/accounts/123/filterSets/abc`\n\n- For an account-level filter set for the child seat buyer account 456\n whose bidder is 123: `bidders/123/accounts/456/filterSets/abc`", + "location": "path", + "pattern": "^bidders/[^/]+/accounts/[^/]+/filterSets/[^/]+$", + "required": true, + "type": "string" + }, + "pageSize": { + "description": "Requested page size. The server may return fewer results than requested.\nIf unspecified, the server will pick an appropriate default.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "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 filteredBidRequests.list\nmethod.", + "location": "query", + "type": "string" + } + }, + "path": "v2beta1/{+filterSetName}/filteredBidRequests", + "response": { + "$ref": "ListFilteredBidRequestsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.buyer" + ] + } + } + }, + "filteredBids": { + "methods": { + "list": { + "description": "List all reasons for which bids were filtered, with the number of bids\nfiltered for each reason.", + "flatPath": "v2beta1/bidders/{biddersId}/accounts/{accountsId}/filterSets/{filterSetsId}/filteredBids", + "httpMethod": "GET", + "id": "adexchangebuyer2.bidders.accounts.filterSets.filteredBids.list", + "parameterOrder": [ + "filterSetName" + ], + "parameters": { + "filterSetName": { + "description": "Name of the filter set that should be applied to the requested metrics.\nFor example:\n\n- For a bidder-level filter set for bidder 123:\n `bidders/123/filterSets/abc`\n\n- For an account-level filter set for the buyer account representing bidder\n 123: `bidders/123/accounts/123/filterSets/abc`\n\n- For an account-level filter set for the child seat buyer account 456\n whose bidder is 123: `bidders/123/accounts/456/filterSets/abc`", + "location": "path", + "pattern": "^bidders/[^/]+/accounts/[^/]+/filterSets/[^/]+$", + "required": true, + "type": "string" + }, + "pageSize": { + "description": "Requested page size. The server may return fewer results than requested.\nIf unspecified, the server will pick an appropriate default.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "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 filteredBids.list\nmethod.", + "location": "query", + "type": "string" + } + }, + "path": "v2beta1/{+filterSetName}/filteredBids", + "response": { + "$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.", + "flatPath": "v2beta1/bidders/{biddersId}/accounts/{accountsId}/filterSets/{filterSetsId}/filteredBids/{creativeStatusId}/creatives", + "httpMethod": "GET", + "id": "adexchangebuyer2.bidders.accounts.filterSets.filteredBids.creatives.list", + "parameterOrder": [ + "filterSetName", + "creativeStatusId" + ], + "parameters": { + "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" + }, + "filterSetName": { + "description": "Name of the filter set that should be applied to the requested metrics.\nFor example:\n\n- For a bidder-level filter set for bidder 123:\n `bidders/123/filterSets/abc`\n\n- For an account-level filter set for the buyer account representing bidder\n 123: `bidders/123/accounts/123/filterSets/abc`\n\n- For an account-level filter set for the child seat buyer account 456\n whose bidder is 123: `bidders/123/accounts/456/filterSets/abc`", + "location": "path", + "pattern": "^bidders/[^/]+/accounts/[^/]+/filterSets/[^/]+$", + "required": true, + "type": "string" + }, + "pageSize": { + "description": "Requested page size. The server may return fewer results than requested.\nIf unspecified, the server will pick an appropriate default.", + "format": "int32", + "location": "query", + "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 filteredBids.creatives.list\nmethod.", + "location": "query", + "type": "string" + } + }, + "path": "v2beta1/{+filterSetName}/filteredBids/{creativeStatusId}/creatives", + "response": { + "$ref": "ListCreativeStatusBreakdownByCreativeResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.buyer" + ] + } + } + }, + "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.", + "flatPath": "v2beta1/bidders/{biddersId}/accounts/{accountsId}/filterSets/{filterSetsId}/filteredBids/{creativeStatusId}/details", + "httpMethod": "GET", + "id": "adexchangebuyer2.bidders.accounts.filterSets.filteredBids.details.list", + "parameterOrder": [ + "filterSetName", + "creativeStatusId" + ], + "parameters": { + "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).\nDetails are only available for statuses 10, 14, 15, 17, 18, 19, 86, and 87.", + "format": "int32", + "location": "path", + "required": true, + "type": "integer" + }, + "filterSetName": { + "description": "Name of the filter set that should be applied to the requested metrics.\nFor example:\n\n- For a bidder-level filter set for bidder 123:\n `bidders/123/filterSets/abc`\n\n- For an account-level filter set for the buyer account representing bidder\n 123: `bidders/123/accounts/123/filterSets/abc`\n\n- For an account-level filter set for the child seat buyer account 456\n whose bidder is 123: `bidders/123/accounts/456/filterSets/abc`", + "location": "path", + "pattern": "^bidders/[^/]+/accounts/[^/]+/filterSets/[^/]+$", + "required": true, + "type": "string" + }, + "pageSize": { + "description": "Requested page size. The server may return fewer results than requested.\nIf unspecified, the server will pick an appropriate default.", + "format": "int32", + "location": "query", + "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 filteredBids.details.list\nmethod.", + "location": "query", + "type": "string" + } + }, + "path": "v2beta1/{+filterSetName}/filteredBids/{creativeStatusId}/details", + "response": { + "$ref": "ListCreativeStatusBreakdownByDetailResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.buyer" + ] + } + } + } + } + }, + "impressionMetrics": { + "methods": { + "list": { + "description": "Lists all metrics that are measured in terms of number of impressions.", + "flatPath": "v2beta1/bidders/{biddersId}/accounts/{accountsId}/filterSets/{filterSetsId}/impressionMetrics", + "httpMethod": "GET", + "id": "adexchangebuyer2.bidders.accounts.filterSets.impressionMetrics.list", + "parameterOrder": [ + "filterSetName" + ], + "parameters": { + "filterSetName": { + "description": "Name of the filter set that should be applied to the requested metrics.\nFor example:\n\n- For a bidder-level filter set for bidder 123:\n `bidders/123/filterSets/abc`\n\n- For an account-level filter set for the buyer account representing bidder\n 123: `bidders/123/accounts/123/filterSets/abc`\n\n- For an account-level filter set for the child seat buyer account 456\n whose bidder is 123: `bidders/123/accounts/456/filterSets/abc`", + "location": "path", + "pattern": "^bidders/[^/]+/accounts/[^/]+/filterSets/[^/]+$", + "required": true, + "type": "string" + }, + "pageSize": { + "description": "Requested page size. The server may return fewer results than requested.\nIf unspecified, the server will pick an appropriate default.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "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 impressionMetrics.list\nmethod.", + "location": "query", + "type": "string" + } + }, + "path": "v2beta1/{+filterSetName}/impressionMetrics", + "response": { + "$ref": "ListImpressionMetricsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.buyer" + ] + } + } + }, + "losingBids": { + "methods": { + "list": { + "description": "List all reasons for which bids lost in the auction, with the number of\nbids that lost for each reason.", + "flatPath": "v2beta1/bidders/{biddersId}/accounts/{accountsId}/filterSets/{filterSetsId}/losingBids", + "httpMethod": "GET", + "id": "adexchangebuyer2.bidders.accounts.filterSets.losingBids.list", + "parameterOrder": [ + "filterSetName" + ], + "parameters": { + "filterSetName": { + "description": "Name of the filter set that should be applied to the requested metrics.\nFor example:\n\n- For a bidder-level filter set for bidder 123:\n `bidders/123/filterSets/abc`\n\n- For an account-level filter set for the buyer account representing bidder\n 123: `bidders/123/accounts/123/filterSets/abc`\n\n- For an account-level filter set for the child seat buyer account 456\n whose bidder is 123: `bidders/123/accounts/456/filterSets/abc`", + "location": "path", + "pattern": "^bidders/[^/]+/accounts/[^/]+/filterSets/[^/]+$", + "required": true, + "type": "string" + }, + "pageSize": { + "description": "Requested page size. The server may return fewer results than requested.\nIf unspecified, the server will pick an appropriate default.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "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 losingBids.list\nmethod.", + "location": "query", + "type": "string" + } + }, + "path": "v2beta1/{+filterSetName}/losingBids", + "response": { + "$ref": "ListLosingBidsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.buyer" + ] + } + } + }, + "nonBillableWinningBids": { + "methods": { + "list": { + "description": "List all reasons for which winning bids were not billable, with the number\nof bids not billed for each reason.", + "flatPath": "v2beta1/bidders/{biddersId}/accounts/{accountsId}/filterSets/{filterSetsId}/nonBillableWinningBids", + "httpMethod": "GET", + "id": "adexchangebuyer2.bidders.accounts.filterSets.nonBillableWinningBids.list", + "parameterOrder": [ + "filterSetName" + ], + "parameters": { + "filterSetName": { + "description": "Name of the filter set that should be applied to the requested metrics.\nFor example:\n\n- For a bidder-level filter set for bidder 123:\n `bidders/123/filterSets/abc`\n\n- For an account-level filter set for the buyer account representing bidder\n 123: `bidders/123/accounts/123/filterSets/abc`\n\n- For an account-level filter set for the child seat buyer account 456\n whose bidder is 123: `bidders/123/accounts/456/filterSets/abc`", + "location": "path", + "pattern": "^bidders/[^/]+/accounts/[^/]+/filterSets/[^/]+$", + "required": true, + "type": "string" + }, + "pageSize": { + "description": "Requested page size. The server may return fewer results than requested.\nIf unspecified, the server will pick an appropriate default.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "A token identifying a page of results the server should return.\nTypically, this is the value of\nListNonBillableWinningBidsResponse.nextPageToken\nreturned from the previous call to the nonBillableWinningBids.list\nmethod.", + "location": "query", + "type": "string" + } + }, + "path": "v2beta1/{+filterSetName}/nonBillableWinningBids", + "response": { + "$ref": "ListNonBillableWinningBidsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.buyer" + ] + } + } + } + } + } + } + }, + "filterSets": { + "methods": { + "create": { + "description": "Creates the specified filter set for the account with the given account ID.", + "flatPath": "v2beta1/bidders/{biddersId}/filterSets", + "httpMethod": "POST", + "id": "adexchangebuyer2.bidders.filterSets.create", + "parameterOrder": [ + "ownerName" + ], + "parameters": { + "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" + }, + "ownerName": { + "description": "Name of the owner (bidder or account) of the filter set to be created.\nFor example:\n\n- For a bidder-level filter set for bidder 123: `bidders/123`\n\n- For an account-level filter set for the buyer account representing bidder\n 123: `bidders/123/accounts/123`\n\n- For an account-level filter set for the child seat buyer account 456\n whose bidder is 123: `bidders/123/accounts/456`", + "location": "path", + "pattern": "^bidders/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2beta1/{+ownerName}/filterSets", + "request": { + "$ref": "FilterSet" + }, + "response": { + "$ref": "FilterSet" + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.buyer" + ] + }, + "delete": { + "description": "Deletes the requested filter set from the account with the given account\nID.", + "flatPath": "v2beta1/bidders/{biddersId}/filterSets/{filterSetsId}", + "httpMethod": "DELETE", + "id": "adexchangebuyer2.bidders.filterSets.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Full name of the resource to delete.\nFor example:\n\n- For a bidder-level filter set for bidder 123:\n `bidders/123/filterSets/abc`\n\n- For an account-level filter set for the buyer account representing bidder\n 123: `bidders/123/accounts/123/filterSets/abc`\n\n- For an account-level filter set for the child seat buyer account 456\n whose bidder is 123: `bidders/123/accounts/456/filterSets/abc`", + "location": "path", + "pattern": "^bidders/[^/]+/filterSets/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2beta1/{+name}", + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.buyer" + ] + }, + "get": { + "description": "Retrieves the requested filter set for the account with the given account\nID.", + "flatPath": "v2beta1/bidders/{biddersId}/filterSets/{filterSetsId}", + "httpMethod": "GET", + "id": "adexchangebuyer2.bidders.filterSets.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Full name of the resource being requested.\nFor example:\n\n- For a bidder-level filter set for bidder 123:\n `bidders/123/filterSets/abc`\n\n- For an account-level filter set for the buyer account representing bidder\n 123: `bidders/123/accounts/123/filterSets/abc`\n\n- For an account-level filter set for the child seat buyer account 456\n whose bidder is 123: `bidders/123/accounts/456/filterSets/abc`", + "location": "path", + "pattern": "^bidders/[^/]+/filterSets/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2beta1/{+name}", + "response": { + "$ref": "FilterSet" + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.buyer" + ] + }, + "list": { + "description": "Lists all filter sets for the account with the given account ID.", + "flatPath": "v2beta1/bidders/{biddersId}/filterSets", + "httpMethod": "GET", + "id": "adexchangebuyer2.bidders.filterSets.list", + "parameterOrder": [ + "ownerName" + ], + "parameters": { + "ownerName": { + "description": "Name of the owner (bidder or account) of the filter sets to be listed.\nFor example:\n\n- For a bidder-level filter set for bidder 123: `bidders/123`\n\n- For an account-level filter set for the buyer account representing bidder\n 123: `bidders/123/accounts/123`\n\n- For an account-level filter set for the child seat buyer account 456\n whose bidder is 123: `bidders/123/accounts/456`", + "location": "path", + "pattern": "^bidders/[^/]+$", + "required": true, + "type": "string" + }, + "pageSize": { + "description": "Requested page size. The server may return fewer results than requested.\nIf unspecified, the server will pick an appropriate default.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "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.filterSets.list\nmethod.", + "location": "query", + "type": "string" + } + }, + "path": "v2beta1/{+ownerName}/filterSets", + "response": { + "$ref": "ListFilterSetsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.buyer" + ] + } + }, + "resources": { + "bidMetrics": { + "methods": { + "list": { + "description": "Lists all metrics that are measured in terms of number of bids.", + "flatPath": "v2beta1/bidders/{biddersId}/filterSets/{filterSetsId}/bidMetrics", + "httpMethod": "GET", + "id": "adexchangebuyer2.bidders.filterSets.bidMetrics.list", + "parameterOrder": [ + "filterSetName" + ], + "parameters": { + "filterSetName": { + "description": "Name of the filter set that should be applied to the requested metrics.\nFor example:\n\n- For a bidder-level filter set for bidder 123:\n `bidders/123/filterSets/abc`\n\n- For an account-level filter set for the buyer account representing bidder\n 123: `bidders/123/accounts/123/filterSets/abc`\n\n- For an account-level filter set for the child seat buyer account 456\n whose bidder is 123: `bidders/123/accounts/456/filterSets/abc`", + "location": "path", + "pattern": "^bidders/[^/]+/filterSets/[^/]+$", + "required": true, + "type": "string" + }, + "pageSize": { + "description": "Requested page size. The server may return fewer results than requested.\nIf unspecified, the server will pick an appropriate default.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "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 bidMetrics.list\nmethod.", + "location": "query", + "type": "string" + } + }, + "path": "v2beta1/{+filterSetName}/bidMetrics", + "response": { + "$ref": "ListBidMetricsResponse" + }, + "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.", + "flatPath": "v2beta1/bidders/{biddersId}/filterSets/{filterSetsId}/bidResponseErrors", + "httpMethod": "GET", + "id": "adexchangebuyer2.bidders.filterSets.bidResponseErrors.list", + "parameterOrder": [ + "filterSetName" + ], + "parameters": { + "filterSetName": { + "description": "Name of the filter set that should be applied to the requested metrics.\nFor example:\n\n- For a bidder-level filter set for bidder 123:\n `bidders/123/filterSets/abc`\n\n- For an account-level filter set for the buyer account representing bidder\n 123: `bidders/123/accounts/123/filterSets/abc`\n\n- For an account-level filter set for the child seat buyer account 456\n whose bidder is 123: `bidders/123/accounts/456/filterSets/abc`", + "location": "path", + "pattern": "^bidders/[^/]+/filterSets/[^/]+$", + "required": true, + "type": "string" + }, + "pageSize": { + "description": "Requested page size. The server may return fewer results than requested.\nIf unspecified, the server will pick an appropriate default.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "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 bidResponseErrors.list\nmethod.", + "location": "query", + "type": "string" + } + }, + "path": "v2beta1/{+filterSetName}/bidResponseErrors", + "response": { + "$ref": "ListBidResponseErrorsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.buyer" + ] + } + } + }, + "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.", + "flatPath": "v2beta1/bidders/{biddersId}/filterSets/{filterSetsId}/bidResponsesWithoutBids", + "httpMethod": "GET", + "id": "adexchangebuyer2.bidders.filterSets.bidResponsesWithoutBids.list", + "parameterOrder": [ + "filterSetName" + ], + "parameters": { + "filterSetName": { + "description": "Name of the filter set that should be applied to the requested metrics.\nFor example:\n\n- For a bidder-level filter set for bidder 123:\n `bidders/123/filterSets/abc`\n\n- For an account-level filter set for the buyer account representing bidder\n 123: `bidders/123/accounts/123/filterSets/abc`\n\n- For an account-level filter set for the child seat buyer account 456\n whose bidder is 123: `bidders/123/accounts/456/filterSets/abc`", + "location": "path", + "pattern": "^bidders/[^/]+/filterSets/[^/]+$", + "required": true, + "type": "string" + }, + "pageSize": { + "description": "Requested page size. The server may return fewer results than requested.\nIf unspecified, the server will pick an appropriate default.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "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 bidResponsesWithoutBids.list\nmethod.", + "location": "query", + "type": "string" + } + }, + "path": "v2beta1/{+filterSetName}/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.", + "flatPath": "v2beta1/bidders/{biddersId}/filterSets/{filterSetsId}/filteredBidRequests", + "httpMethod": "GET", + "id": "adexchangebuyer2.bidders.filterSets.filteredBidRequests.list", + "parameterOrder": [ + "filterSetName" + ], + "parameters": { + "filterSetName": { + "description": "Name of the filter set that should be applied to the requested metrics.\nFor example:\n\n- For a bidder-level filter set for bidder 123:\n `bidders/123/filterSets/abc`\n\n- For an account-level filter set for the buyer account representing bidder\n 123: `bidders/123/accounts/123/filterSets/abc`\n\n- For an account-level filter set for the child seat buyer account 456\n whose bidder is 123: `bidders/123/accounts/456/filterSets/abc`", + "location": "path", + "pattern": "^bidders/[^/]+/filterSets/[^/]+$", + "required": true, + "type": "string" + }, + "pageSize": { + "description": "Requested page size. The server may return fewer results than requested.\nIf unspecified, the server will pick an appropriate default.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "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 filteredBidRequests.list\nmethod.", + "location": "query", + "type": "string" + } + }, + "path": "v2beta1/{+filterSetName}/filteredBidRequests", + "response": { + "$ref": "ListFilteredBidRequestsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.buyer" + ] + } + } + }, + "filteredBids": { + "methods": { + "list": { + "description": "List all reasons for which bids were filtered, with the number of bids\nfiltered for each reason.", + "flatPath": "v2beta1/bidders/{biddersId}/filterSets/{filterSetsId}/filteredBids", + "httpMethod": "GET", + "id": "adexchangebuyer2.bidders.filterSets.filteredBids.list", + "parameterOrder": [ + "filterSetName" + ], + "parameters": { + "filterSetName": { + "description": "Name of the filter set that should be applied to the requested metrics.\nFor example:\n\n- For a bidder-level filter set for bidder 123:\n `bidders/123/filterSets/abc`\n\n- For an account-level filter set for the buyer account representing bidder\n 123: `bidders/123/accounts/123/filterSets/abc`\n\n- For an account-level filter set for the child seat buyer account 456\n whose bidder is 123: `bidders/123/accounts/456/filterSets/abc`", + "location": "path", + "pattern": "^bidders/[^/]+/filterSets/[^/]+$", + "required": true, + "type": "string" + }, + "pageSize": { + "description": "Requested page size. The server may return fewer results than requested.\nIf unspecified, the server will pick an appropriate default.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "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 filteredBids.list\nmethod.", + "location": "query", + "type": "string" + } + }, + "path": "v2beta1/{+filterSetName}/filteredBids", + "response": { + "$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.", + "flatPath": "v2beta1/bidders/{biddersId}/filterSets/{filterSetsId}/filteredBids/{creativeStatusId}/creatives", + "httpMethod": "GET", + "id": "adexchangebuyer2.bidders.filterSets.filteredBids.creatives.list", + "parameterOrder": [ + "filterSetName", + "creativeStatusId" + ], + "parameters": { + "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" + }, + "filterSetName": { + "description": "Name of the filter set that should be applied to the requested metrics.\nFor example:\n\n- For a bidder-level filter set for bidder 123:\n `bidders/123/filterSets/abc`\n\n- For an account-level filter set for the buyer account representing bidder\n 123: `bidders/123/accounts/123/filterSets/abc`\n\n- For an account-level filter set for the child seat buyer account 456\n whose bidder is 123: `bidders/123/accounts/456/filterSets/abc`", + "location": "path", + "pattern": "^bidders/[^/]+/filterSets/[^/]+$", + "required": true, + "type": "string" + }, + "pageSize": { + "description": "Requested page size. The server may return fewer results than requested.\nIf unspecified, the server will pick an appropriate default.", + "format": "int32", + "location": "query", + "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 filteredBids.creatives.list\nmethod.", + "location": "query", + "type": "string" + } + }, + "path": "v2beta1/{+filterSetName}/filteredBids/{creativeStatusId}/creatives", + "response": { + "$ref": "ListCreativeStatusBreakdownByCreativeResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.buyer" + ] + } + } + }, + "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.", + "flatPath": "v2beta1/bidders/{biddersId}/filterSets/{filterSetsId}/filteredBids/{creativeStatusId}/details", + "httpMethod": "GET", + "id": "adexchangebuyer2.bidders.filterSets.filteredBids.details.list", + "parameterOrder": [ + "filterSetName", + "creativeStatusId" + ], + "parameters": { + "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).\nDetails are only available for statuses 10, 14, 15, 17, 18, 19, 86, and 87.", + "format": "int32", + "location": "path", + "required": true, + "type": "integer" + }, + "filterSetName": { + "description": "Name of the filter set that should be applied to the requested metrics.\nFor example:\n\n- For a bidder-level filter set for bidder 123:\n `bidders/123/filterSets/abc`\n\n- For an account-level filter set for the buyer account representing bidder\n 123: `bidders/123/accounts/123/filterSets/abc`\n\n- For an account-level filter set for the child seat buyer account 456\n whose bidder is 123: `bidders/123/accounts/456/filterSets/abc`", + "location": "path", + "pattern": "^bidders/[^/]+/filterSets/[^/]+$", + "required": true, + "type": "string" + }, + "pageSize": { + "description": "Requested page size. The server may return fewer results than requested.\nIf unspecified, the server will pick an appropriate default.", + "format": "int32", + "location": "query", + "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 filteredBids.details.list\nmethod.", + "location": "query", + "type": "string" + } + }, + "path": "v2beta1/{+filterSetName}/filteredBids/{creativeStatusId}/details", + "response": { + "$ref": "ListCreativeStatusBreakdownByDetailResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.buyer" + ] + } + } + } + } + }, + "impressionMetrics": { + "methods": { + "list": { + "description": "Lists all metrics that are measured in terms of number of impressions.", + "flatPath": "v2beta1/bidders/{biddersId}/filterSets/{filterSetsId}/impressionMetrics", + "httpMethod": "GET", + "id": "adexchangebuyer2.bidders.filterSets.impressionMetrics.list", + "parameterOrder": [ + "filterSetName" + ], + "parameters": { + "filterSetName": { + "description": "Name of the filter set that should be applied to the requested metrics.\nFor example:\n\n- For a bidder-level filter set for bidder 123:\n `bidders/123/filterSets/abc`\n\n- For an account-level filter set for the buyer account representing bidder\n 123: `bidders/123/accounts/123/filterSets/abc`\n\n- For an account-level filter set for the child seat buyer account 456\n whose bidder is 123: `bidders/123/accounts/456/filterSets/abc`", + "location": "path", + "pattern": "^bidders/[^/]+/filterSets/[^/]+$", + "required": true, + "type": "string" + }, + "pageSize": { + "description": "Requested page size. The server may return fewer results than requested.\nIf unspecified, the server will pick an appropriate default.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "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 impressionMetrics.list\nmethod.", + "location": "query", + "type": "string" + } + }, + "path": "v2beta1/{+filterSetName}/impressionMetrics", + "response": { + "$ref": "ListImpressionMetricsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.buyer" + ] + } + } + }, + "losingBids": { + "methods": { + "list": { + "description": "List all reasons for which bids lost in the auction, with the number of\nbids that lost for each reason.", + "flatPath": "v2beta1/bidders/{biddersId}/filterSets/{filterSetsId}/losingBids", + "httpMethod": "GET", + "id": "adexchangebuyer2.bidders.filterSets.losingBids.list", + "parameterOrder": [ + "filterSetName" + ], + "parameters": { + "filterSetName": { + "description": "Name of the filter set that should be applied to the requested metrics.\nFor example:\n\n- For a bidder-level filter set for bidder 123:\n `bidders/123/filterSets/abc`\n\n- For an account-level filter set for the buyer account representing bidder\n 123: `bidders/123/accounts/123/filterSets/abc`\n\n- For an account-level filter set for the child seat buyer account 456\n whose bidder is 123: `bidders/123/accounts/456/filterSets/abc`", + "location": "path", + "pattern": "^bidders/[^/]+/filterSets/[^/]+$", + "required": true, + "type": "string" + }, + "pageSize": { + "description": "Requested page size. The server may return fewer results than requested.\nIf unspecified, the server will pick an appropriate default.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "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 losingBids.list\nmethod.", + "location": "query", + "type": "string" + } + }, + "path": "v2beta1/{+filterSetName}/losingBids", + "response": { + "$ref": "ListLosingBidsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.buyer" + ] + } + } + }, + "nonBillableWinningBids": { + "methods": { + "list": { + "description": "List all reasons for which winning bids were not billable, with the number\nof bids not billed for each reason.", + "flatPath": "v2beta1/bidders/{biddersId}/filterSets/{filterSetsId}/nonBillableWinningBids", + "httpMethod": "GET", + "id": "adexchangebuyer2.bidders.filterSets.nonBillableWinningBids.list", + "parameterOrder": [ + "filterSetName" + ], + "parameters": { + "filterSetName": { + "description": "Name of the filter set that should be applied to the requested metrics.\nFor example:\n\n- For a bidder-level filter set for bidder 123:\n `bidders/123/filterSets/abc`\n\n- For an account-level filter set for the buyer account representing bidder\n 123: `bidders/123/accounts/123/filterSets/abc`\n\n- For an account-level filter set for the child seat buyer account 456\n whose bidder is 123: `bidders/123/accounts/456/filterSets/abc`", + "location": "path", + "pattern": "^bidders/[^/]+/filterSets/[^/]+$", + "required": true, + "type": "string" + }, + "pageSize": { + "description": "Requested page size. The server may return fewer results than requested.\nIf unspecified, the server will pick an appropriate default.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "A token identifying a page of results the server should return.\nTypically, this is the value of\nListNonBillableWinningBidsResponse.nextPageToken\nreturned from the previous call to the nonBillableWinningBids.list\nmethod.", + "location": "query", + "type": "string" + } + }, + "path": "v2beta1/{+filterSetName}/nonBillableWinningBids", + "response": { + "$ref": "ListNonBillableWinningBidsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.buyer" + ] + } + } + } + } + } + } + } + }, + "revision": "20180326", + "rootUrl": "https://adexchangebuyer.googleapis.com/", "schemas": { - "ClientUserInvitation": { - "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": { - "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.", + "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." + }, + "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." + } + }, + "type": "object" + }, + "AddDealAssociationRequest": { + "description": "A request for associating a deal and a creative.", + "id": "AddDealAssociationRequest", + "properties": { + "association": { + "$ref": "CreativeDealAssociation", + "description": "The association between a creative and a deal that should be added." + } + }, + "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" + } + }, + "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": [ + "The restriction applies to open auction.", + "The restriction applies to direct deals." + ], + "items": { + "enum": [ + "OPEN_AUCTION", + "DIRECT_DEALS" + ], + "type": "string" + }, + "type": "array" + } + }, + "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": { + "bids": { + "$ref": "MetricValue", + "description": "The number of bids that Ad Exchange received from the buyer." + }, + "bidsInAuction": { + "$ref": "MetricValue", + "description": "The number of bids that were permitted to compete in the auction." + }, + "billedImpressions": { + "$ref": "MetricValue", + "description": "The number of bids for which the buyer was billed." + }, + "impressionsWon": { + "$ref": "MetricValue", + "description": "The number of bids that won an impression." + }, + "measurableImpressions": { + "$ref": "MetricValue", + "description": "The number of bids for which the corresponding impression was measurable\nfor viewability (as defined by Active View)." + }, + "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)." + } + }, + "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." + }, + "rowDimensions": { + "$ref": "RowDimensions", + "description": "The values of all dimensions associated with metric values in this row." + }, + "status": { + "description": "The status specifying why the bid responses were considered to have no\napplicable bids.", + "enum": [ + "STATUS_UNSPECIFIED", + "RESPONSES_WITHOUT_BIDS", + "RESPONSES_WITHOUT_BIDS_FOR_ACCOUNT", + "RESPONSES_WITHOUT_BIDS_FOR_DEAL" + ], + "enumDescriptions": [ + "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" + } + }, + "type": "object" + }, + "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": { + "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." + }, + "rowDimensions": { + "$ref": "RowDimensions", + "description": "The values of all dimensions associated with metric values in this row." + } + }, + "type": "object" + }, + "Client": { + "description": "A client resource represents a client buyer\u0026mdash;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": { + "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" + }, + "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" + }, + "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" + }, + "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" + }, + "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" + }, + "partnerClientId": { + "description": "Optional arbitrary unique identifier of this client buyer from the\nstandpoint of its Ad Exchange sponsor buyer.\n\nThis field can be used to associate a client buyer with the identifier\nin the namespace of its sponsor buyer, lookup client buyers by that\nidentifier and verify whether an Ad Exchange counterpart of a given client\nbuyer already exists.\n\nIf present, must be unique among all the client buyers for its\nAd Exchange sponsor buyer.", + "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" + }, + "status": { + "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" + }, + "visibleToSeller": { + "description": "Whether the client buyer will be visible to sellers.", + "type": "boolean" + } + }, + "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", + "properties": { + "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" + }, + "email": { + "description": "User's email address. The value of this field\nis ignored in an update operation.", + "type": "string" + }, + "status": { + "description": "The status of the client user.", + "enum": [ + "USER_STATUS_UNSPECIFIED", + "PENDING", + "ACTIVE", + "DISABLED" + ], + "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." + ], + "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" + } + }, + "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": { + "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" }, @@ -22,297 +2235,121 @@ "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.", + "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" } }, - "id": "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." - }, - "ListClientUserInvitationsResponse": { - "type": "object", - "properties": { - "invitations": { - "description": "The returned list of client users.", - "type": "array", - "items": { - "$ref": "ClientUserInvitation" - } - }, - "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" - } - }, - "id": "ListClientUserInvitationsResponse" - }, - "ListClientUsersResponse": { - "type": "object", - "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.", - "type": "array", - "items": { - "$ref": "ClientUser" - } - } - }, - "id": "ListClientUsersResponse" - }, - "ListCreativeStatusBreakdownByDetailResponse": { - "type": "object", - "properties": { - "filteredBidDetailRows": { - "description": "List of rows, with counts of bids with a given creative status aggregated\nby detail.", - "type": "array", - "items": { - "$ref": "FilteredBidDetailRow" - } - }, - "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 filteredBids.details.list\nmethod to retrieve the next page of results.", - "type": "string" - }, - "detailType": { - "type": "string", - "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).", - "Indicates that the detail ID refers to a disapproval reason; see\nDisapprovalReason enum in [snippet-status-report-proto](https://developers.google.com/ad-exchange/rtb/downloads/snippet-status-report-proto)." - ], - "enum": [ - "DETAIL_TYPE_UNSPECIFIED", - "CREATIVE_ATTRIBUTE", - "VENDOR", - "SENSITIVE_CATEGORY", - "PRODUCT_CATEGORY", - "DISAPPROVAL_REASON" - ], - "description": "The type of detail that the detail IDs represent." - } - }, - "id": "ListCreativeStatusBreakdownByDetailResponse", - "description": "Response message for listing all details associated with a given filtered bid\nreason." - }, - "LocationContext": { - "description": "@OutputOnly The Geo criteria the restriction applies to.", - "type": "object", - "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.", - "type": "array", - "items": { - "format": "int32", - "type": "integer" - } - } - }, - "id": "LocationContext" - }, - "PlatformContext": { - "description": "@OutputOnly The type of platform the restriction applies to.", - "type": "object", - "properties": { - "platforms": { - "description": "The platforms this restriction applies to.", - "type": "array", - "items": { - "enum": [ - "DESKTOP", - "ANDROID", - "IOS" - ], - "type": "string" - }, - "enumDescriptions": [ - "Desktop platform.", - "Android platform.", - "iOS platform." - ] - } - }, - "id": "PlatformContext" - }, - "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).", - "type": "object", - "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" - }, - "value": { - "description": "The expected value of the metric.", - "format": "int64", - "type": "string" - } - }, - "id": "MetricValue" - }, - "ClientUser": { - "properties": { - "status": { - "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." - ], - "enum": [ - "USER_STATUS_UNSPECIFIED", - "PENDING", - "ACTIVE", - "DISABLED" - ], - "description": "The status of the client user.", - "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": { - "type": "string", - "description": "User's email address. The value of this field\nis ignored in an update operation." - }, - "clientAccountId": { - "type": "string", - "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" - } - }, - "id": "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.", "type": "object" }, - "CreativeDealAssociation": { + "Correction": { + "description": "@OutputOnly Shows any corrections that were applied to this creative.", + "id": "Correction", "properties": { - "creativeId": { - "description": "The ID of the creative associated with the deal.", - "type": "string" + "contexts": { + "description": "The contexts for the correction.", + "items": { + "$ref": "ServingContext" + }, + "type": "array" }, - "dealsId": { - "description": "The externalDealId for the deal associated with the creative.", - "type": "string" + "details": { + "description": "Additional details about what was corrected.", + "items": { + "type": "string" + }, + "type": "array" }, - "accountId": { - "description": "The account the creative belongs to.", + "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" } }, - "id": "CreativeDealAssociation", - "description": "The association between a creative and a deal.", "type": "object" }, "Creative": { - "description": "A creative and its classification data.", - "type": "object", + "description": "A creative and its classification data.\n\nNext ID: 31", + "id": "Creative", "properties": { - "version": { - "description": "@OutputOnly The version of this creative.", - "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.", - "type": "array", - "items": { - "format": "int32", - "type": "integer" - } - }, - "impressionTrackingUrls": { - "description": "The set of URLs to be called to record an impression.", - "type": "array", - "items": { - "type": "string" - } - }, - "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": "array", - "items": { - "format": "int32", - "type": "integer" - } - }, - "dealsStatus": { - "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." - ], - "enum": [ - "STATUS_UNSPECIFIED", - "NOT_CHECKED", - "CONDITIONALLY_APPROVED", - "APPROVED", - "DISAPPROVED" - ], - "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.", + "accountId": { + "description": "The account that this creative belongs to.\nCan be used to filter the response of the\ncreatives.list\nmethod.", "type": "string" }, - "openAuctionStatus": { - "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." - ], - "enum": [ - "STATUS_UNSPECIFIED", - "NOT_CHECKED", - "CONDITIONALLY_APPROVED", - "APPROVED", - "DISAPPROVED" - ], - "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.", + "adChoicesDestinationUrl": { + "description": "The link to AdChoices destination page.", "type": "string" }, "advertiserName": { "description": "The name of the company being advertised in the creative.", "type": "string" }, - "detectedAdvertiserIds": { - "description": "@OutputOnly Detected advertiser IDs, if any.", - "type": "array", - "items": { - "format": "int64", - "type": "string" - } + "agencyId": { + "description": "The agency ID for this creative.", + "format": "int64", + "type": "string" }, - "detectedDomains": { - "description": "@OutputOnly\nThe detected domains for this creative.", - "type": "array", - "items": { - "type": "string" - } - }, - "filteringStats": { - "$ref": "FilteringStats", - "description": "@OutputOnly The filtering stats for this creative." + "apiUpdateTime": { + "description": "@OutputOnly The last update timestamp of the creative via API.", + "format": "google-datetime", + "type": "string" }, "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.", - "type": "array", + "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", @@ -342,470 +2379,235 @@ ], "type": "string" }, - "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." - ] + "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.", - "type": "array", + "clickThroughUrls": { + "description": "The set of destination URLs for the creative.", "items": { "type": "string" - } + }, + "type": "array" + }, + "corrections": { + "description": "@OutputOnly Shows any corrections that were applied to this creative.", + "items": { + "$ref": "Correction" + }, + "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.", + "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" }, - "native": { - "description": "A native creative.", - "$ref": "NativeContent" - }, - "video": { - "$ref": "VideoContent", - "description": "A video creative." - }, - "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).", - "type": "array", + "detectedAdvertiserIds": { + "description": "@OutputOnly Detected advertiser IDs, if any.", "items": { - "$ref": "ServingRestriction" - } + "format": "int64", + "type": "string" + }, + "type": "array" }, - "agencyId": { - "description": "The agency ID for this creative.", - "format": "int64", - "type": "string" - }, - "clickThroughUrls": { - "description": "The set of destination URLs for the creative.", - "type": "array", + "detectedDomains": { + "description": "@OutputOnly\nThe detected domains for this creative.", "items": { "type": "string" - } + }, + "type": "array" }, - "adChoicesDestinationUrl": { - "type": "string", - "description": "The link to AdChoices destination page." + "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" }, - "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": "array", + "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" + }, + "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": { + "format": "int32", + "type": "integer" + }, + "type": "array" + }, + "filteringStats": { + "$ref": "FilteringStats", + "description": "@OutputOnly The filtering stats for this creative." + }, + "html": { + "$ref": "HtmlContent", + "description": "An HTML creative." + }, + "impressionTrackingUrls": { + "description": "The set of URLs to be called to record an impression.", + "items": { + "type": "string" + }, + "type": "array" + }, + "native": { + "$ref": "NativeContent", + "description": "A native creative." + }, + "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" }, "restrictedCategories": { + "description": "All restricted categories for the ads that may be shown from this creative.", "enumDescriptions": [ "The ad has no restricted categories", "The alcohol restricted category." ], - "description": "All restricted categories for the ads that may be shown from this creative.", - "type": "array", "items": { "enum": [ "NO_RESTRICTED_CATEGORIES", "ALCOHOL" ], "type": "string" - } - }, - "corrections": { - "description": "@OutputOnly Shows any corrections that were applied to this creative.", - "type": "array", - "items": { - "$ref": "Correction" - } - } - }, - "id": "Creative" - }, - "FilteringStats": { - "type": "object", - "properties": { - "reasons": { - "description": "The set of filtering reasons for this date.", - "type": "array", - "items": { - "$ref": "Reason" - } - }, - "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." - } - }, - "id": "FilteringStats", - "description": "@OutputOnly Filtering reasons for this creative during a period of a single\nday (from midnight to midnight Pacific)." - }, - "RemoveDealAssociationRequest": { - "description": "A request for removing the association between a deal and a creative.", - "type": "object", - "properties": { - "association": { - "$ref": "CreativeDealAssociation", - "description": "The association between a creative and a deal that should be removed." - } - }, - "id": "RemoveDealAssociationRequest" - }, - "Client": { - "type": "object", - "properties": { - "entityType": { - "enumDescriptions": [ - "A placeholder for an undefined client entity type. Should not be used.", - "An advertiser.", - "A brand.", - "An advertising agency." - ], - "enum": [ - "ENTITY_TYPE_UNSPECIFIED", - "ADVERTISER", - "BRAND", - "AGENCY" - ], - "description": "The type of the client entity: `ADVERTISER`, `BRAND`, or `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": { - "enum": [ - "CLIENT_ROLE_UNSPECIFIED", - "CLIENT_DEAL_VIEWER", - "CLIENT_DEAL_NEGOTIATOR", - "CLIENT_DEAL_APPROVER" - ], - "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`.", - "type": "string", - "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." - ] - }, - "visibleToSeller": { - "description": "Whether the client buyer will be visible to sellers.", - "type": "boolean" - }, - "entityId": { - "type": "string", - "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" - }, - "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" - }, - "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" - }, - "status": { - "enumDescriptions": [ - "A placeholder for an undefined client status.", - "A client that is currently disabled.", - "A client that is currently active." - ], - "enum": [ - "CLIENT_STATUS_UNSPECIFIED", - "DISABLED", - "ACTIVE" - ], - "description": "The status of the client buyer.", - "type": "string" - }, - "partnerClientId": { - "description": "Optional arbitrary unique identifier of this client buyer from the\nstandpoint of its Ad Exchange sponsor buyer.\n\nThis field can be used to associate a client buyer with the identifier\nin the namespace of its sponsor buyer, lookup client buyers by that\nidentifier and verify whether an Ad Exchange counterpart of a given client\nbuyer already exists.\n\nIf present, must be unique among all the client buyers for its\nAd Exchange sponsor buyer.", - "type": "string" - } - }, - "id": "Client", - "description": "A client resource represents a client buyer—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." - }, - "ListCreativeStatusBreakdownByCreativeResponse": { - "description": "Response message for listing all creatives associated with a given filtered\nbid reason.", - "type": "object", - "properties": { - "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 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.", - "type": "array", - "items": { - "$ref": "FilteredBidCreativeRow" - } - } - }, - "id": "ListCreativeStatusBreakdownByCreativeResponse" - }, - "Correction": { - "description": "@OutputOnly Shows any corrections that were applied to this creative.", - "type": "object", - "properties": { - "details": { - "description": "Additional details about what was corrected.", - "type": "array", - "items": { - "type": "string" - } - }, - "type": { - "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." - ], - "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" - ], - "description": "The type of correction that was applied to the creative.", - "type": "string" - }, - "contexts": { - "description": "The contexts for the correction.", - "type": "array", - "items": { - "$ref": "ServingContext" - } - } - }, - "id": "Correction" - }, - "FilterSet": { - "properties": { - "absoluteDateRange": { - "$ref": "AbsoluteDateRange", - "description": "An absolute date range, defined by a start date and an end date.\nInterpreted relative to Pacific time zone." - }, - "environment": { - "enum": [ - "ENVIRONMENT_UNSPECIFIED", - "WEB", - "APP" - ], - "description": "The environment on which to filter; optional.", - "type": "string", - "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." - ] - }, - "format": { - "enum": [ - "FORMAT_UNSPECIFIED", - "DISPLAY", - "VIDEO" - ], - "description": "DEPRECATED: use repeated formats field instead.\nThe format on which to filter; optional.", - "type": "string", - "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." - ] - }, - "dealId": { - "description": "The ID of the deal on which to filter; optional. This field may be set\nonly for a filter set that accesses account-level troubleshooting data,\ni.e. one whose name matches the `bidders/*/accounts/*/filterSets/*`\npattern.", - "format": "int64", - "type": "string" - }, - "timeSeriesGranularity": { - "enum": [ - "TIME_SERIES_GRANULARITY_UNSPECIFIED", - "HOURLY", - "DAILY" - ], - "description": "The granularity of time intervals if a time series breakdown is desired;\noptional.", - "type": "string", - "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." - ] - }, - "realtimeTimeRange": { - "$ref": "RealtimeTimeRange", - "description": "An open-ended realtime time range, defined by the aggregation start\ntimestamp." - }, - "formats": { - "description": "The list of formats on which to filter; may be empty. The filters\nrepresented by multiple formats are ORed together (i.e. if non-empty,\nresults must match any one of the formats).", - "type": "array", - "items": { - "enum": [ - "FORMAT_UNSPECIFIED", - "DISPLAY", - "VIDEO" - ], - "type": "string" }, - "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": "array" }, - "creativeId": { - "description": "The ID of the creative on which to filter; optional. This field may be set\nonly for a filter set that accesses account-level troubleshooting data,\ni.e. one whose name matches the `bidders/*/accounts/*/filterSets/*`\npattern.", - "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": { - "type": "array", + "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": { - "enum": [ - "PLATFORM_UNSPECIFIED", - "DESKTOP", - "TABLET", - "MOBILE" - ], - "type": "string" + "$ref": "ServingRestriction" }, - "enumDescriptions": [ - "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." - ], - "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)." + "type": "array" }, - "name": { - "description": "A user-defined name of the filter set. Filter set names must be unique\nglobally and match one of the patterns:\n\n- `bidders/*/filterSets/*` (for accessing bidder-level troubleshooting\ndata)\n- `bidders/*/accounts/*/filterSets/*` (for accessing account-level\ntroubleshooting data)\n\nThis field is required in create operations.", - "type": "string" - }, - "sellerNetworkIds": { - "type": "array", + "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": { - "type": "integer", - "format": "int32" + "format": "int32", + "type": "integer" }, - "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." - } - }, - "id": "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)\"", - "type": "object" - }, - "CalloutStatusRow": { - "properties": { - "rowDimensions": { - "description": "The values of all dimensions associated with metric values in this row.", - "$ref": "RowDimensions" + "type": "array" }, - "calloutStatusId": { - "description": "The ID of the callout status.\nSee [callout-status-codes](https://developers.google.com/ad-exchange/rtb/downloads/callout-status-codes).", + "version": { + "description": "@OutputOnly The version of this creative.", "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." + "video": { + "$ref": "VideoContent", + "description": "A video creative." } }, - "id": "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.", "type": "object" }, - "ListDealAssociationsResponse": { - "description": "A response for listing creative and deal associations", - "type": "object", + "CreativeDealAssociation": { + "description": "The association between a creative and a deal.", + "id": "CreativeDealAssociation", "properties": { - "associations": { - "description": "The list of associations.", - "type": "array", - "items": { - "$ref": "CreativeDealAssociation" - } + "accountId": { + "description": "The account the creative belongs to.", + "type": "string" }, - "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.", + "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" } }, - "id": "ListDealAssociationsResponse" + "type": "object" }, - "StopWatchingCreativeRequest": { - "description": "A request for stopping notifications for changes to creative Status.", - "type": "object", - "properties": {}, - "id": "StopWatchingCreativeRequest" + "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": { + "bidCount": { + "$ref": "MetricValue", + "description": "The number of bids with the specified status." + }, + "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" + }, + "rowDimensions": { + "$ref": "RowDimensions", + "description": "The values of all dimensions associated with metric values in this row." + } + }, + "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": { + "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" + }, + "month": { + "description": "Month of year. Must be from 1 to 12.", + "format": "int32", + "type": "integer" + }, + "year": { + "description": "Year of date. Must be from 1 to 9999, or 0 if specifying a date without\na year.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" }, "Disapproval": { "description": "@OutputOnly The reason and details for a disapproval.", - "type": "object", + "id": "Disapproval", "properties": { "details": { "description": "Additional details about the reason for disapproval.", - "type": "array", "items": { "type": "string" - } + }, + "type": "array" }, "reason": { + "description": "The categorized reason for disapproval.", "enum": [ "LENGTH_OF_IMAGE_ANIMATION", "BROKEN_URL", @@ -902,8 +2704,6 @@ "PERSONAL_LOANS", "UNSUPPORTED_FLASH_CONTENT" ], - "description": "The categorized reason for disapproval.", - "type": "string", "enumDescriptions": [ "The length of the image animation is longer than allowed.", "The click through URL doesn't work properly.", @@ -966,9 +2766,9 @@ "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 guns \u0026 parts.", + "The ad promotes recreational drugs/services \u0026 related equipment.", + "The ad promotes tobacco products/services \u0026 related equipment.", "The ad promotes weapons.", "The ad is unclear or irrelevant to the destination site.", "The ad does not meet professional standards.", @@ -981,7 +2781,7 @@ "Offensive or inappropriate content.", "Capitalizing on sensitive events.", "Shocking content.", - "Products & Services that enable dishonest behavior.", + "Products \u0026 Services that enable dishonest behavior.", "The ad does not meet technical requirements.", "Restricted political content.", "Unsupported content.", @@ -999,480 +2799,149 @@ "Maximum number of cookies exceeded.", "Financial service ad does not adhere to specifications.", "Flash content was found in an unsupported context." - ] - } - }, - "id": "Disapproval" - }, - "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).", - "type": "object", - "properties": { - "contexts": { - "description": "The contexts for the restriction.", - "type": "array", - "items": { - "$ref": "ServingContext" - } - }, - "status": { - "enumDescriptions": [ - "The status is not known.", - "The ad was disapproved in this context.", - "The ad is pending review in this context." ], - "enum": [ - "STATUS_UNSPECIFIED", - "DISAPPROVAL", - "PENDING_REVIEW" - ], - "description": "The status of the creative in this context (for example, it has been\nexplicitly disapproved or is pending review).", "type": "string" - }, - "disapprovalReasons": { - "type": "array", - "items": { - "$ref": "Disapproval" - }, - "description": "Any disapprovals bound to this restriction.\nOnly present if status=DISAPPROVED.\nCan be used to filter the response of the\ncreatives.list\nmethod." } }, - "id": "ServingRestriction" - }, - "Date": { - "id": "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`.", - "type": "object", - "properties": { - "year": { - "description": "Year of date. Must be from 1 to 9999, or 0 if specifying a date without\na year.", - "format": "int32", - "type": "integer" - }, - "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" - }, - "month": { - "description": "Month of year. Must be from 1 to 12.", - "format": "int32", - "type": "integer" - } - } - }, - "RowDimensions": { - "description": "A response may include multiple rows, breaking down along various dimensions.\nEncapsulates the values of all dimensions for a given row.", - "type": "object", - "properties": { - "timeInterval": { - "description": "The time interval that this row represents.", - "$ref": "TimeInterval" - } - }, - "id": "RowDimensions" + "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 `{}`.", - "type": "object", + "id": "Empty", "properties": {}, - "id": "Empty" - }, - "AppContext": { - "description": "@OutputOnly The app type the restriction applies to for mobile device.", - "type": "object", - "properties": { - "appTypes": { - "type": "array", - "items": { - "type": "string", - "enum": [ - "NATIVE", - "WEB" - ] - }, - "enumDescriptions": [ - "Native app context.", - "Mobile web app context." - ], - "description": "The app types this restriction applies to." - } - }, - "id": "AppContext" - }, - "ListFilteredBidsResponse": { - "properties": { - "creativeStatusRows": { - "description": "List of rows, with counts of filtered bids aggregated by filtering reason\n(i.e. creative status).", - "type": "array", - "items": { - "$ref": "CreativeStatusRow" - } - }, - "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 filteredBids.list\nmethod to retrieve the next page of results.", - "type": "string" - } - }, - "id": "ListFilteredBidsResponse", - "description": "Response message for listing all reasons that bids were filtered from the\nauction.", "type": "object" }, - "SecurityContext": { - "id": "SecurityContext", - "description": "@OutputOnly A security context.", - "type": "object", + "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": { - "securities": { - "description": "The security types in this context.", - "type": "array", - "items": { - "enum": [ - "INSECURE", - "SSL" - ], - "type": "string" - }, - "enumDescriptions": [ - "Matches impressions that require insecure compatibility.", - "Matches impressions that require SSL compatibility." - ] - } - } - }, - "HtmlContent": { - "description": "HTML content for a creative.", - "type": "object", - "properties": { - "width": { - "description": "The width of the HTML snippet in pixels.", - "format": "int32", - "type": "integer" + "absoluteDateRange": { + "$ref": "AbsoluteDateRange", + "description": "An absolute date range, defined by a start date and an end date.\nInterpreted relative to Pacific time zone." }, - "snippet": { - "description": "The HTML snippet that displays the ad when inserted in the web page.", + "creativeId": { + "description": "The ID of the creative on which to filter; optional. This field may be set\nonly for a filter set that accesses account-level troubleshooting data,\ni.e. one whose name matches the `bidders/*/accounts/*/filterSets/*`\npattern.", "type": "string" }, - "height": { - "description": "The height of the HTML snippet in pixels.", - "format": "int32", - "type": "integer" - } - }, - "id": "HtmlContent" - }, - "ListCreativesResponse": { - "description": "A response for listing creatives.", - "type": "object", - "properties": { - "creatives": { - "description": "The list of creatives.", - "type": "array", - "items": { - "$ref": "Creative" - } - }, - "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" - } - }, - "id": "ListCreativesResponse" - }, - "ListFilteredBidRequestsResponse": { - "description": "Response message for listing all reasons that bid requests were filtered and\nnot sent to the buyer.", - "type": "object", - "properties": { - "calloutStatusRows": { - "description": "List of rows, with counts of filtered bid requests aggregated by callout\nstatus.", - "type": "array", - "items": { - "$ref": "CalloutStatusRow" - } - }, - "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 filteredBidRequests.list\nmethod to retrieve the next page of results.", - "type": "string" - } - }, - "id": "ListFilteredBidRequestsResponse" - }, - "ListBidMetricsResponse": { - "description": "Response message for listing the metrics that are measured in number of bids.", - "type": "object", - "properties": { - "bidMetricsRows": { - "description": "List of rows, each containing a set of bid metrics.", - "type": "array", - "items": { - "$ref": "BidMetricsRow" - } - }, - "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 bidMetrics.list\nmethod to retrieve the next page of results.", - "type": "string" - } - }, - "id": "ListBidMetricsResponse" - }, - "Reason": { - "description": "A specific filtering status and how many times it occurred.", - "type": "object", - "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" - }, - "count": { - "description": "The number of times the creative was filtered for the status. The\ncount is aggregated across all publishers on the exchange.", + "dealId": { + "description": "The ID of the deal on which to filter; optional. This field may be set\nonly for a filter set that accesses account-level troubleshooting data,\ni.e. one whose name matches the `bidders/*/accounts/*/filterSets/*`\npattern.", "format": "int64", "type": "string" - } - }, - "id": "Reason" - }, - "ListNonBillableWinningBidsResponse": { - "description": "Response message for listing all reasons for which a buyer was not billed for\na winning bid.", - "type": "object", - "properties": { - "nonBillableWinningBidStatusRows": { - "description": "List of rows, with counts of bids not billed aggregated by reason.", - "type": "array", - "items": { - "$ref": "NonBillableWinningBidStatusRow" - } }, - "nextPageToken": { - "type": "string", - "description": "A token to retrieve the next page of results.\nPass this value in the\nListNonBillableWinningBidsRequest.pageToken\nfield in the subsequent call to the nonBillableWinningBids.list\nmethod to retrieve the next page of results." - } - }, - "id": "ListNonBillableWinningBidsResponse" - }, - "ListLosingBidsResponse": { - "description": "Response message for listing all reasons that bids lost in the auction.", - "type": "object", - "properties": { - "creativeStatusRows": { - "description": "List of rows, with counts of losing bids aggregated by loss reason (i.e.\ncreative status).", - "type": "array", - "items": { - "$ref": "CreativeStatusRow" - } - }, - "nextPageToken": { - "type": "string", - "description": "A token to retrieve the next page of results.\nPass this value in the\nListLosingBidsRequest.pageToken\nfield in the subsequent call to the losingBids.list\nmethod to retrieve the next page of results." - } - }, - "id": "ListLosingBidsResponse" - }, - "VideoContent": { - "properties": { - "videoUrl": { - "description": "The URL to fetch a video ad.", + "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" - } - }, - "id": "VideoContent", - "description": "Video content for a creative.", - "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.", - "type": "object", - "properties": { - "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." }, - "successfulResponses": { - "$ref": "MetricValue", - "description": "The number of impressions for which the buyer successfully sent a response\nto Ad Exchange." - }, - "rowDimensions": { - "$ref": "RowDimensions", - "description": "The values of all dimensions associated with metric values in this row." - }, - "availableImpressions": { - "$ref": "MetricValue", - "description": "The number of impressions available to the buyer on Ad Exchange.\nIn some cases this value may be unavailable." - }, - "inventoryMatches": { - "$ref": "MetricValue", - "description": "The number of impressions that match the buyer's inventory pretargeting." - }, - "bidRequests": { - "$ref": "MetricValue", - "description": "The number of impressions for which Ad Exchange sent the buyer a bid\nrequest." - } - }, - "id": "ImpressionMetricsRow" - }, - "AuctionContext": { - "properties": { - "auctionTypes": { - "description": "The auction types this restriction applies to.", - "type": "array", + "formats": { + "description": "The list of formats on which to filter; may be empty. The filters\nrepresented by multiple formats are ORed together (i.e. if non-empty,\nresults must match any one of the formats).", + "enumDescriptions": [ + "A placeholder for an undefined format; indicates that no format filter\nwill be applied.", + "The ad impression is a native ad, and display (i.e. image) format.", + "The ad impression is a native ad, and video format.", + "The ad impression is not a native ad, and display (i.e. image) format.", + "The ad impression is not a native ad, and video format." + ], "items": { "enum": [ - "OPEN_AUCTION", - "DIRECT_DEALS" + "FORMAT_UNSPECIFIED", + "NATIVE_DISPLAY", + "NATIVE_VIDEO", + "NON_NATIVE_DISPLAY", + "NON_NATIVE_VIDEO" ], "type": "string" }, + "type": "array" + }, + "name": { + "description": "A user-defined name of the filter set. Filter set names must be unique\nglobally and match one of the patterns:\n\n- `bidders/*/filterSets/*` (for accessing bidder-level troubleshooting\ndata)\n- `bidders/*/accounts/*/filterSets/*` (for accessing account-level\ntroubleshooting data)\n\nThis field is required in create operations.", + "type": "string" + }, + "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": [ + "PLATFORM_UNSPECIFIED", + "DESKTOP", + "TABLET", + "MOBILE" + ], + "type": "string" + }, + "type": "array" + }, + "realtimeTimeRange": { + "$ref": "RealtimeTimeRange", + "description": "An open-ended realtime time range, defined by the aggregation start\ntimestamp." + }, + "relativeDateRange": { + "$ref": "RelativeDateRange", + "description": "A relative date range, defined by an offset from today and a duration.\nInterpreted relative to Pacific time zone." + }, + "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": { + "format": "int32", + "type": "integer" + }, + "type": "array" + }, + "timeSeriesGranularity": { + "description": "The granularity of time intervals if a time series breakdown is desired;\noptional.", + "enum": [ + "TIME_SERIES_GRANULARITY_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" } }, - "id": "AuctionContext", - "description": "@OutputOnly The auction type the restriction applies to.", "type": "object" }, - "ListImpressionMetricsResponse": { - "description": "Response message for listing the metrics that are measured in number of\nimpressions.", - "type": "object", + "FilteredBidCreativeRow": { + "description": "The number of filtered bids with the specified dimension values that have the\nspecified creative.", + "id": "FilteredBidCreativeRow", "properties": { - "impressionMetricsRows": { - "type": "array", - "items": { - "$ref": "ImpressionMetricsRow" - }, - "description": "List of rows, each containing a set of impression metrics." - }, - "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 impressionMetrics.list\nmethod to retrieve the next page of results.", - "type": "string" - } - }, - "id": "ListImpressionMetricsResponse" - }, - "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;", - "type": "object", - "properties": { - "rowDimensions": { - "description": "The values of all dimensions associated with metric values in this row.", - "$ref": "RowDimensions" - }, - "impressionsWon": { - "$ref": "MetricValue", - "description": "The number of bids that won an impression." - }, - "viewableImpressions": { - "description": "The number of bids for which the corresponding impression was viewable (as\ndefined by Active View).", - "$ref": "MetricValue" - }, - "measurableImpressions": { - "$ref": "MetricValue", - "description": "The number of bids for which the corresponding impression was measurable\nfor viewability (as defined by Active View)." - }, - "bids": { - "$ref": "MetricValue", - "description": "The number of bids that Ad Exchange received from the buyer." - }, - "billedImpressions": { - "description": "The number of bids for which the buyer was billed.", - "$ref": "MetricValue" - }, - "bidsInAuction": { - "$ref": "MetricValue", - "description": "The number of bids that were permitted to compete in the auction." - } - }, - "id": "BidMetricsRow" - }, - "ListBidResponseErrorsResponse": { - "description": "Response message for listing all reasons that bid responses resulted in an\nerror.", - "type": "object", - "properties": { - "calloutStatusRows": { - "description": "List of rows, with counts of bid responses aggregated by callout status.", - "type": "array", - "items": { - "$ref": "CalloutStatusRow" - } - }, - "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 bidResponseErrors.list\nmethod to retrieve the next page of results.", - "type": "string" - } - }, - "id": "ListBidResponseErrorsResponse" - }, - "CreativeStatusRow": { - "id": "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.", - "type": "object", - "properties": { - "rowDimensions": { - "description": "The values of all dimensions associated with metric values in this row.", - "$ref": "RowDimensions" - }, - "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." - } - } - }, - "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.", - "type": "object", - "properties": { - "startTimestamp": { - "description": "The start timestamp of the real-time RTB metrics aggregation.", - "format": "google-datetime", + "description": "The number of bids with the specified creative." + }, + "creativeId": { + "description": "The ID of the creative.", "type": "string" - } - }, - "id": "RealtimeTimeRange" - }, - "NonBillableWinningBidStatusRow": { - "id": "NonBillableWinningBidStatusRow", - "description": "The number of winning bids with the specified dimension values for which the\nbuyer was not billed, as described by the specified status.", - "type": "object", - "properties": { - "status": { - "description": "The status specifying why the winning bids were not billed.", - "type": "string", - "enumDescriptions": [ - "A placeholder for an undefined status.\nThis value will never be returned in responses.", - "The buyer was not billed because the ad was not rendered by the\npublisher.", - "The buyer was not billed because the impression won by the bid was\ndetermined to be invalid." - ], - "enum": [ - "STATUS_UNSPECIFIED", - "AD_NOT_RENDERED", - "INVALID_IMPRESSION" - ] }, "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 status." } - } + }, + "type": "object" }, "FilteredBidDetailRow": { - "id": "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.", - "type": "object", + "id": "FilteredBidDetailRow", "properties": { - "rowDimensions": { - "description": "The values of all dimensions associated with metric values in this row.", - "$ref": "RowDimensions" - }, "bidCount": { "$ref": "MetricValue", "description": "The number of bids with the specified detail." @@ -1481,85 +2950,587 @@ "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" - } - } - }, - "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.", - "type": "object", - "properties": { - "startDate": { - "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.", - "$ref": "Date" }, - "endDate": { - "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.", - "$ref": "Date" + "rowDimensions": { + "$ref": "RowDimensions", + "description": "The values of all dimensions associated with metric values in this row." } }, - "id": "AbsoluteDateRange" + "type": "object" }, - "AddDealAssociationRequest": { - "id": "AddDealAssociationRequest", - "description": "A request for associating a deal and a creative.", - "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": { - "association": { - "$ref": "CreativeDealAssociation", - "description": "The association between a creative and a deal that should be added." - } - } - }, - "WatchCreativeRequest": { - "type": "object", - "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" + "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." + }, + "reasons": { + "description": "The set of filtering reasons for this date.", + "items": { + "$ref": "Reason" + }, + "type": "array" } }, - "id": "WatchCreativeRequest", - "description": "A request for watching changes to creative Status." + "type": "object" }, - "TimeInterval": { - "description": "An interval of time, with an absolute start and end.", - "type": "object", + "HtmlContent": { + "description": "HTML content for a creative.", + "id": "HtmlContent", "properties": { - "endTime": { - "description": "The timestamp marking the end of the range (exclusive) for which data is\nincluded.", - "format": "google-datetime", + "height": { + "description": "The height of the HTML snippet in pixels.", + "format": "int32", + "type": "integer" + }, + "snippet": { + "description": "The HTML snippet that displays the ad when inserted in the web page.", "type": "string" }, - "startTime": { - "description": "The timestamp marking the start of the range (inclusive) for which data is\nincluded.", - "format": "google-datetime", - "type": "string" + "width": { + "description": "The width of the HTML snippet in pixels.", + "format": "int32", + "type": "integer" } }, - "id": "TimeInterval" + "type": "object" }, - "FilteredBidCreativeRow": { + "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" + }, + "url": { + "description": "The URL of the image.", + "type": "string" + }, + "width": { + "description": "Image width in pixels.", + "format": "int32", + "type": "integer" + } + }, + "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": { + "availableImpressions": { + "$ref": "MetricValue", + "description": "The number of impressions available to the buyer on Ad Exchange.\nIn some cases this value may be unavailable." + }, + "bidRequests": { + "$ref": "MetricValue", + "description": "The number of impressions for which Ad Exchange sent the buyer a bid\nrequest." + }, + "inventoryMatches": { + "$ref": "MetricValue", + "description": "The number of impressions that match the buyer's inventory pretargeting." + }, + "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." + }, "rowDimensions": { "$ref": "RowDimensions", "description": "The values of all dimensions associated with metric values in this row." }, - "bidCount": { + "successfulResponses": { "$ref": "MetricValue", - "description": "The number of bids with the specified creative." + "description": "The number of impressions for which the buyer successfully sent a response\nto Ad Exchange." + } + }, + "type": "object" + }, + "ListBidMetricsResponse": { + "description": "Response message for listing the metrics that are measured in number of bids.", + "id": "ListBidMetricsResponse", + "properties": { + "bidMetricsRows": { + "description": "List of rows, each containing a set of bid metrics.", + "items": { + "$ref": "BidMetricsRow" + }, + "type": "array" }, - "creativeId": { - "description": "The ID of the creative.", + "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 bidMetrics.list\nmethod to retrieve the next page of results.", "type": "string" } }, - "id": "FilteredBidCreativeRow", - "description": "The number of filtered bids with the specified dimension values that have the\nspecified creative.", + "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": "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 bidResponseErrors.list\nmethod to retrieve the next page of results.", + "type": "string" + } + }, + "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 bidResponsesWithoutBids.list\nmethod to retrieve the next page of results.", + "type": "string" + } + }, + "type": "object" + }, + "ListClientUserInvitationsResponse": { + "id": "ListClientUserInvitationsResponse", + "properties": { + "invitations": { + "description": "The returned list of client users.", + "items": { + "$ref": "ClientUserInvitation" + }, + "type": "array" + }, + "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" + } + }, + "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": "ClientUser" + }, + "type": "array" + } + }, + "type": "object" + }, + "ListClientsResponse": { + "id": "ListClientsResponse", + "properties": { + "clients": { + "description": "The returned list of clients.", + "items": { + "$ref": "Client" + }, + "type": "array" + }, + "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" + } + }, + "type": "object" + }, + "ListCreativeStatusBreakdownByCreativeResponse": { + "description": "Response message for listing all creatives associated with a given filtered\nbid reason.", + "id": "ListCreativeStatusBreakdownByCreativeResponse", + "properties": { + "filteredBidCreativeRows": { + "description": "List of rows, with counts of bids with a given creative status aggregated\nby creative.", + "items": { + "$ref": "FilteredBidCreativeRow" + }, + "type": "array" + }, + "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 filteredBids.creatives.list\nmethod to retrieve the next page of results.", + "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": [ + "DETAIL_TYPE_UNSPECIFIED", + "CREATIVE_ATTRIBUTE", + "VENDOR", + "SENSITIVE_CATEGORY", + "PRODUCT_CATEGORY", + "DISAPPROVAL_REASON" + ], + "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).", + "Indicates that the detail ID refers to a disapproval reason; see\nDisapprovalReason enum in [snippet-status-report-proto](https://developers.google.com/ad-exchange/rtb/downloads/snippet-status-report-proto)." + ], + "type": "string" + }, + "filteredBidDetailRows": { + "description": "List of rows, with counts of bids with a given creative status aggregated\nby detail.", + "items": { + "$ref": "FilteredBidDetailRow" + }, + "type": "array" + }, + "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 filteredBids.details.list\nmethod to retrieve the next page of results.", + "type": "string" + } + }, + "type": "object" + }, + "ListCreativesResponse": { + "description": "A response for listing creatives.", + "id": "ListCreativesResponse", + "properties": { + "creatives": { + "description": "The list of creatives.", + "items": { + "$ref": "Creative" + }, + "type": "array" + }, + "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" + } + }, + "type": "object" + }, + "ListDealAssociationsResponse": { + "description": "A response for listing creative and deal associations", + "id": "ListDealAssociationsResponse", + "properties": { + "associations": { + "description": "The list of associations.", + "items": { + "$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" + }, + "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" + }, + "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": { + "$ref": "CalloutStatusRow" + }, + "type": "array" + }, + "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 filteredBidRequests.list\nmethod to retrieve the next page of results.", + "type": "string" + } + }, + "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": { + "$ref": "CreativeStatusRow" + }, + "type": "array" + }, + "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 filteredBids.list\nmethod to retrieve the next page of results.", + "type": "string" + } + }, + "type": "object" + }, + "ListImpressionMetricsResponse": { + "description": "Response message for listing the metrics that are measured in number of\nimpressions.", + "id": "ListImpressionMetricsResponse", + "properties": { + "impressionMetricsRows": { + "description": "List of rows, each containing a set of impression metrics.", + "items": { + "$ref": "ImpressionMetricsRow" + }, + "type": "array" + }, + "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 impressionMetrics.list\nmethod to retrieve the next page of results.", + "type": "string" + } + }, + "type": "object" + }, + "ListLosingBidsResponse": { + "description": "Response message for listing all reasons that bids lost in the auction.", + "id": "ListLosingBidsResponse", + "properties": { + "creativeStatusRows": { + "description": "List of rows, with counts of losing bids aggregated by loss reason (i.e.\ncreative status).", + "items": { + "$ref": "CreativeStatusRow" + }, + "type": "array" + }, + "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 losingBids.list\nmethod to retrieve the next page of results.", + "type": "string" + } + }, + "type": "object" + }, + "ListNonBillableWinningBidsResponse": { + "description": "Response message for listing all reasons for which a buyer was not billed for\na winning bid.", + "id": "ListNonBillableWinningBidsResponse", + "properties": { + "nextPageToken": { + "description": "A token to retrieve the next page of results.\nPass this value in the\nListNonBillableWinningBidsRequest.pageToken\nfield in the subsequent call to the nonBillableWinningBids.list\nmethod to retrieve the next page of results.", + "type": "string" + }, + "nonBillableWinningBidStatusRows": { + "description": "List of rows, with counts of bids not billed aggregated by reason.", + "items": { + "$ref": "NonBillableWinningBidStatusRow" + }, + "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" + }, + "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": { + "value": { + "description": "The expected value of the metric.", + "format": "int64", + "type": "string" + }, + "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" + } + }, + "type": "object" + }, + "NativeContent": { + "description": "Native content for a creative.", + "id": "NativeContent", + "properties": { + "advertiserName": { + "description": "The name of the advertiser or sponsor, to be displayed in the ad creative.", + "type": "string" + }, + "appIcon": { + "$ref": "Image", + "description": "The app icon, for app download ads." + }, + "body": { + "description": "A long description of the ad.", + "type": "string" + }, + "callToAction": { + "description": "A label for the button that the user is supposed to click.", + "type": "string" + }, + "clickLinkUrl": { + "description": "The URL that the browser/SDK will load when the user clicks the ad.", + "type": "string" + }, + "clickTrackingUrl": { + "description": "The URL to use for click tracking.", + "type": "string" + }, + "headline": { + "description": "A short title for the ad.", + "type": "string" + }, + "image": { + "$ref": "Image", + "description": "A large image." + }, + "logo": { + "$ref": "Image", + "description": "A smaller image, for the advertiser's logo." + }, + "priceDisplayText": { + "description": "The price of the promoted app including currency info.", + "type": "string" + }, + "starRating": { + "description": "The app rating in the app store. Must be in the range [0-5].", + "format": "double", + "type": "number" + }, + "storeUrl": { + "description": "The URL to the app store to purchase/download the promoted app.", + "type": "string" + }, + "videoUrl": { + "description": "The URL to fetch a native video ad.", + "type": "string" + } + }, + "type": "object" + }, + "NonBillableWinningBidStatusRow": { + "description": "The number of winning bids with the specified dimension values for which the\nbuyer was not billed, as described by the specified status.", + "id": "NonBillableWinningBidStatusRow", + "properties": { + "bidCount": { + "$ref": "MetricValue", + "description": "The number of bids with the specified status." + }, + "rowDimensions": { + "$ref": "RowDimensions", + "description": "The values of all dimensions associated with metric values in this row." + }, + "status": { + "description": "The status specifying why the winning bids were not billed.", + "enum": [ + "STATUS_UNSPECIFIED", + "AD_NOT_RENDERED", + "INVALID_IMPRESSION" + ], + "enumDescriptions": [ + "A placeholder for an undefined status.\nThis value will never be returned in responses.", + "The buyer was not billed because the ad was not rendered by the\npublisher.", + "The buyer was not billed because the impression won by the bid was\ndetermined to be invalid." + ], + "type": "string" + } + }, + "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" + }, + "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" + }, + "Reason": { + "description": "A specific filtering status and how many times it occurred.", + "id": "Reason", + "properties": { + "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" }, "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 \u003e= 0\nduration_days \u003e= 1\noffset_days + duration_days \u003c= 30", - "type": "object", + "id": "RelativeDateRange", "properties": { "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.", @@ -1572,2163 +3543,176 @@ "type": "integer" } }, - "id": "RelativeDateRange" + "type": "object" }, - "NativeContent": { - "description": "Native content for a creative.", - "type": "object", + "RemoveDealAssociationRequest": { + "description": "A request for removing the association between a deal and a creative.", + "id": "RemoveDealAssociationRequest", "properties": { - "videoUrl": { - "description": "The URL to fetch a native video ad.", - "type": "string" - }, - "clickLinkUrl": { - "description": "The URL that the browser/SDK will load when the user clicks the ad.", - "type": "string" - }, - "logo": { - "$ref": "Image", - "description": "A smaller image, for the advertiser's logo." - }, - "priceDisplayText": { - "description": "The price of the promoted app including currency info.", - "type": "string" - }, - "image": { - "$ref": "Image", - "description": "A large image." - }, - "clickTrackingUrl": { - "description": "The URL to use for click tracking.", - "type": "string" - }, - "advertiserName": { - "description": "The name of the advertiser or sponsor, to be displayed in the ad creative.", - "type": "string" - }, - "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" + "association": { + "$ref": "CreativeDealAssociation", + "description": "The association between a creative and a deal that should be removed." } }, - "id": "NativeContent" + "type": "object" }, - "ListClientsResponse": { - "id": "ListClientsResponse", - "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": { - "clients": { - "description": "The returned list of clients.", - "type": "array", - "items": { - "$ref": "Client" - } - }, - "nextPageToken": { - "type": "string", - "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." - } - } - }, - "ListBidResponsesWithoutBidsResponse": { - "description": "Response message for listing all reasons that bid responses were considered\nto have no applicable bids.", - "type": "object", - "properties": { - "bidResponseWithoutBidsStatusRows": { - "description": "List of rows, with counts of bid responses without bids aggregated by\nstatus.", - "type": "array", - "items": { - "$ref": "BidResponseWithoutBidsStatusRow" - } - }, - "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 bidResponsesWithoutBids.list\nmethod to retrieve the next page of results.", - "type": "string" + "timeInterval": { + "$ref": "TimeInterval", + "description": "The time interval that this row represents." } }, - "id": "ListBidResponsesWithoutBidsResponse" + "type": "object" + }, + "SecurityContext": { + "description": "@OutputOnly A security context.", + "id": "SecurityContext", + "properties": { + "securities": { + "description": "The security types in this context.", + "enumDescriptions": [ + "Matches impressions that require insecure compatibility.", + "Matches impressions that require SSL compatibility." + ], + "items": { + "enum": [ + "INSECURE", + "SSL" + ], + "type": "string" + }, + "type": "array" + } + }, + "type": "object" }, "ServingContext": { + "description": "The serving context for this restriction.", + "id": "ServingContext", "properties": { "all": { - "enumDescriptions": [ - "A simple context." - ], + "description": "Matches all contexts.", "enum": [ "SIMPLE_CONTEXT" ], - "description": "Matches all contexts.", + "enumDescriptions": [ + "A simple context." + ], "type": "string" }, "appType": { - "description": "Matches impressions for a particular app type.", - "$ref": "AppContext" + "$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." + "auctionType": { + "$ref": "AuctionContext", + "description": "Matches impressions for a particular auction type." }, "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." + "platform": { + "$ref": "PlatformContext", + "description": "Matches impressions coming from a particular platform." + }, + "securityType": { + "$ref": "SecurityContext", + "description": "Matches impressions for a particular security type." } }, - "id": "ServingContext", - "description": "The serving context for this restriction.", "type": "object" }, - "Image": { - "description": "An image resource. You may provide a larger image than was requested,\nso long as the aspect ratio is preserved.", - "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": { - "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" - } - }, - "id": "Image" - }, - "ListFilterSetsResponse": { - "description": "Response message for listing filter sets.", - "type": "object", - "properties": { - "filterSets": { - "description": "The filter sets belonging to the buyer.", - "type": "array", + "contexts": { + "description": "The contexts for the restriction.", "items": { - "$ref": "FilterSet" - } + "$ref": "ServingContext" + }, + "type": "array" }, - "nextPageToken": { - "type": "string", - "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." - } - }, - "id": "ListFilterSetsResponse" - }, - "BidResponseWithoutBidsStatusRow": { - "properties": { - "rowDimensions": { - "$ref": "RowDimensions", - "description": "The values of all dimensions associated with metric values in this row." - }, - "impressionCount": { - "description": "The number of impressions for which there was a bid response with the\nspecified status.", - "$ref": "MetricValue" + "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" }, "status": { - "enumDescriptions": [ - "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." - ], + "description": "The status of the creative in this context (for example, it has been\nexplicitly disapproved or is pending review).", "enum": [ "STATUS_UNSPECIFIED", - "RESPONSES_WITHOUT_BIDS", - "RESPONSES_WITHOUT_BIDS_FOR_ACCOUNT", - "RESPONSES_WITHOUT_BIDS_FOR_DEAL" + "DISAPPROVAL", + "PENDING_REVIEW" + ], + "enumDescriptions": [ + "The status is not known.", + "The ad was disapproved in this context.", + "The ad is pending review in this context." ], - "description": "The status specifying why the bid responses were considered to have no\napplicable bids.", "type": "string" } }, - "id": "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.", + "type": "object" + }, + "StopWatchingCreativeRequest": { + "description": "A request for stopping notifications for changes to creative Status.", + "id": "StopWatchingCreativeRequest", + "properties": {}, + "type": "object" + }, + "TimeInterval": { + "description": "An interval of time, with an absolute start and end.", + "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" + }, + "VideoContent": { + "description": "Video content for a creative.", + "id": "VideoContent", + "properties": { + "videoUrl": { + "description": "The URL to fetch a video ad.", + "type": "string" + }, + "videoVastXml": { + "description": "The contents of a VAST document for a video ad.\nThis document should conform to the VAST 2.0 or 3.0 standard.", + "type": "string" + } + }, + "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" } }, - "protocol": "rest", - "icons": { - "x16": "http://www.google.com/images/icons/product/search-16.gif", - "x32": "http://www.google.com/images/icons/product/search-32.gif" - }, - "canonicalName": "AdExchangeBuyerII", - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/adexchange.buyer": { - "description": "Manage your Ad Exchange buyer account configuration" - } - } - } - }, - "rootUrl": "https://adexchangebuyer.googleapis.com/", - "ownerDomain": "google.com", - "name": "adexchangebuyer2", - "batchPath": "batch", + "servicePath": "", "title": "Ad Exchange Buyer API II", - "ownerName": "Google", - "resources": { - "bidders": { - "resources": { - "filterSets": { - "methods": { - "delete": { - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "DELETE", - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ], - "parameters": { - "name": { - "required": true, - "type": "string", - "pattern": "^bidders/[^/]+/filterSets/[^/]+$", - "location": "path", - "description": "Full name of the resource to delete.\nFor example:\n\n- For a bidder-level filter set for bidder 123:\n `bidders/123/filterSets/abc`\n\n- For an account-level filter set for the buyer account representing bidder\n 123: `bidders/123/accounts/123/filterSets/abc`\n\n- For an account-level filter set for the child seat buyer account 456\n whose bidder is 123: `bidders/123/accounts/456/filterSets/abc`" - } - }, - "flatPath": "v2beta1/bidders/{biddersId}/filterSets/{filterSetsId}", - "path": "v2beta1/{+name}", - "id": "adexchangebuyer2.bidders.filterSets.delete", - "description": "Deletes the requested filter set from the account with the given account\nID." - }, - "get": { - "description": "Retrieves the requested filter set for the account with the given account\nID.", - "response": { - "$ref": "FilterSet" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ], - "parameters": { - "name": { - "required": true, - "type": "string", - "pattern": "^bidders/[^/]+/filterSets/[^/]+$", - "location": "path", - "description": "Full name of the resource being requested.\nFor example:\n\n- For a bidder-level filter set for bidder 123:\n `bidders/123/filterSets/abc`\n\n- For an account-level filter set for the buyer account representing bidder\n 123: `bidders/123/accounts/123/filterSets/abc`\n\n- For an account-level filter set for the child seat buyer account 456\n whose bidder is 123: `bidders/123/accounts/456/filterSets/abc`" - } - }, - "flatPath": "v2beta1/bidders/{biddersId}/filterSets/{filterSetsId}", - "path": "v2beta1/{+name}", - "id": "adexchangebuyer2.bidders.filterSets.get" - }, - "list": { - "flatPath": "v2beta1/bidders/{biddersId}/filterSets", - "id": "adexchangebuyer2.bidders.filterSets.list", - "path": "v2beta1/{+ownerName}/filterSets", - "description": "Lists all filter sets for the account with the given account ID.", - "httpMethod": "GET", - "parameterOrder": [ - "ownerName" - ], - "response": { - "$ref": "ListFilterSetsResponse" - }, - "parameters": { - "pageToken": { - "location": "query", - "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.filterSets.list\nmethod.", - "type": "string" - }, - "pageSize": { - "description": "Requested page size. The server may return fewer results than requested.\nIf unspecified, the server will pick an appropriate default.", - "format": "int32", - "type": "integer", - "location": "query" - }, - "ownerName": { - "pattern": "^bidders/[^/]+$", - "location": "path", - "description": "Name of the owner (bidder or account) of the filter sets to be listed.\nFor example:\n\n- For a bidder-level filter set for bidder 123: `bidders/123`\n\n- For an account-level filter set for the buyer account representing bidder\n 123: `bidders/123/accounts/123`\n\n- For an account-level filter set for the child seat buyer account 456\n whose bidder is 123: `bidders/123/accounts/456`", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ] - }, - "create": { - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ], - "parameters": { - "isTransient": { - "location": "query", - "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.", - "type": "boolean" - }, - "ownerName": { - "pattern": "^bidders/[^/]+$", - "location": "path", - "description": "Name of the owner (bidder or account) of the filter set to be created.\nFor example:\n\n- For a bidder-level filter set for bidder 123: `bidders/123`\n\n- For an account-level filter set for the buyer account representing bidder\n 123: `bidders/123/accounts/123`\n\n- For an account-level filter set for the child seat buyer account 456\n whose bidder is 123: `bidders/123/accounts/456`", - "required": true, - "type": "string" - } - }, - "flatPath": "v2beta1/bidders/{biddersId}/filterSets", - "path": "v2beta1/{+ownerName}/filterSets", - "id": "adexchangebuyer2.bidders.filterSets.create", - "description": "Creates the specified filter set for the account with the given account ID.", - "request": { - "$ref": "FilterSet" - }, - "response": { - "$ref": "FilterSet" - }, - "parameterOrder": [ - "ownerName" - ], - "httpMethod": "POST" - } - }, - "resources": { - "nonBillableWinningBids": { - "methods": { - "list": { - "response": { - "$ref": "ListNonBillableWinningBidsResponse" - }, - "parameterOrder": [ - "filterSetName" - ], - "httpMethod": "GET", - "parameters": { - "filterSetName": { - "required": true, - "type": "string", - "pattern": "^bidders/[^/]+/filterSets/[^/]+$", - "location": "path", - "description": "Name of the filter set that should be applied to the requested metrics.\nFor example:\n\n- For a bidder-level filter set for bidder 123:\n `bidders/123/filterSets/abc`\n\n- For an account-level filter set for the buyer account representing bidder\n 123: `bidders/123/accounts/123/filterSets/abc`\n\n- For an account-level filter set for the child seat buyer account 456\n whose bidder is 123: `bidders/123/accounts/456/filterSets/abc`" - }, - "pageToken": { - "location": "query", - "description": "A token identifying a page of results the server should return.\nTypically, this is the value of\nListNonBillableWinningBidsResponse.nextPageToken\nreturned from the previous call to the nonBillableWinningBids.list\nmethod.", - "type": "string" - }, - "pageSize": { - "location": "query", - "description": "Requested page size. The server may return fewer results than requested.\nIf unspecified, the server will pick an appropriate default.", - "format": "int32", - "type": "integer" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ], - "flatPath": "v2beta1/bidders/{biddersId}/filterSets/{filterSetsId}/nonBillableWinningBids", - "path": "v2beta1/{+filterSetName}/nonBillableWinningBids", - "id": "adexchangebuyer2.bidders.filterSets.nonBillableWinningBids.list", - "description": "List all reasons for which winning bids were not billable, with the number\nof bids not billed for each reason." - } - } - }, - "filteredBids": { - "methods": { - "list": { - "response": { - "$ref": "ListFilteredBidsResponse" - }, - "parameterOrder": [ - "filterSetName" - ], - "httpMethod": "GET", - "parameters": { - "filterSetName": { - "description": "Name of the filter set that should be applied to the requested metrics.\nFor example:\n\n- For a bidder-level filter set for bidder 123:\n `bidders/123/filterSets/abc`\n\n- For an account-level filter set for the buyer account representing bidder\n 123: `bidders/123/accounts/123/filterSets/abc`\n\n- For an account-level filter set for the child seat buyer account 456\n whose bidder is 123: `bidders/123/accounts/456/filterSets/abc`", - "required": true, - "type": "string", - "pattern": "^bidders/[^/]+/filterSets/[^/]+$", - "location": "path" - }, - "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 filteredBids.list\nmethod.", - "type": "string", - "location": "query" - }, - "pageSize": { - "location": "query", - "description": "Requested page size. The server may return fewer results than requested.\nIf unspecified, the server will pick an appropriate default.", - "format": "int32", - "type": "integer" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ], - "flatPath": "v2beta1/bidders/{biddersId}/filterSets/{filterSetsId}/filteredBids", - "path": "v2beta1/{+filterSetName}/filteredBids", - "id": "adexchangebuyer2.bidders.filterSets.filteredBids.list", - "description": "List all reasons for which bids were filtered, with the number of bids\nfiltered for each reason." - } - }, - "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", - "response": { - "$ref": "ListCreativeStatusBreakdownByCreativeResponse" - }, - "parameterOrder": [ - "filterSetName", - "creativeStatusId" - ], - "parameters": { - "filterSetName": { - "description": "Name of the filter set that should be applied to the requested metrics.\nFor example:\n\n- For a bidder-level filter set for bidder 123:\n `bidders/123/filterSets/abc`\n\n- For an account-level filter set for the buyer account representing bidder\n 123: `bidders/123/accounts/123/filterSets/abc`\n\n- For an account-level filter set for the child seat buyer account 456\n whose bidder is 123: `bidders/123/accounts/456/filterSets/abc`", - "required": true, - "type": "string", - "pattern": "^bidders/[^/]+/filterSets/[^/]+$", - "location": "path" - }, - "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", - "required": true, - "type": "integer", - "location": "path" - }, - "pageToken": { - "type": "string", - "location": "query", - "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 filteredBids.creatives.list\nmethod." - }, - "pageSize": { - "location": "query", - "description": "Requested page size. The server may return fewer results than requested.\nIf unspecified, the server will pick an appropriate default.", - "format": "int32", - "type": "integer" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ], - "flatPath": "v2beta1/bidders/{biddersId}/filterSets/{filterSetsId}/filteredBids/{creativeStatusId}/creatives", - "id": "adexchangebuyer2.bidders.filterSets.filteredBids.creatives.list", - "path": "v2beta1/{+filterSetName}/filteredBids/{creativeStatusId}/creatives" - } - } - }, - "details": { - "methods": { - "list": { - "response": { - "$ref": "ListCreativeStatusBreakdownByDetailResponse" - }, - "parameterOrder": [ - "filterSetName", - "creativeStatusId" - ], - "httpMethod": "GET", - "parameters": { - "filterSetName": { - "description": "Name of the filter set that should be applied to the requested metrics.\nFor example:\n\n- For a bidder-level filter set for bidder 123:\n `bidders/123/filterSets/abc`\n\n- For an account-level filter set for the buyer account representing bidder\n 123: `bidders/123/accounts/123/filterSets/abc`\n\n- For an account-level filter set for the child seat buyer account 456\n whose bidder is 123: `bidders/123/accounts/456/filterSets/abc`", - "required": true, - "type": "string", - "pattern": "^bidders/[^/]+/filterSets/[^/]+$", - "location": "path" - }, - "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).\nDetails are only available for statuses 10, 14, 15, 17, 18, 19, 86, and 87.", - "format": "int32", - "required": true, - "type": "integer", - "location": "path" - }, - "pageToken": { - "location": "query", - "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 filteredBids.details.list\nmethod.", - "type": "string" - }, - "pageSize": { - "location": "query", - "description": "Requested page size. The server may return fewer results than requested.\nIf unspecified, the server will pick an appropriate default.", - "format": "int32", - "type": "integer" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ], - "flatPath": "v2beta1/bidders/{biddersId}/filterSets/{filterSetsId}/filteredBids/{creativeStatusId}/details", - "path": "v2beta1/{+filterSetName}/filteredBids/{creativeStatusId}/details", - "id": "adexchangebuyer2.bidders.filterSets.filteredBids.details.list", - "description": "List all details associated with a specific reason for which bids were\nfiltered, with the number of bids filtered for each detail." - } - } - } - } - }, - "losingBids": { - "methods": { - "list": { - "flatPath": "v2beta1/bidders/{biddersId}/filterSets/{filterSetsId}/losingBids", - "path": "v2beta1/{+filterSetName}/losingBids", - "id": "adexchangebuyer2.bidders.filterSets.losingBids.list", - "description": "List all reasons for which bids lost in the auction, with the number of\nbids that lost for each reason.", - "response": { - "$ref": "ListLosingBidsResponse" - }, - "parameterOrder": [ - "filterSetName" - ], - "httpMethod": "GET", - "parameters": { - "pageSize": { - "description": "Requested page size. The server may return fewer results than requested.\nIf unspecified, the server will pick an appropriate default.", - "format": "int32", - "type": "integer", - "location": "query" - }, - "filterSetName": { - "required": true, - "type": "string", - "pattern": "^bidders/[^/]+/filterSets/[^/]+$", - "location": "path", - "description": "Name of the filter set that should be applied to the requested metrics.\nFor example:\n\n- For a bidder-level filter set for bidder 123:\n `bidders/123/filterSets/abc`\n\n- For an account-level filter set for the buyer account representing bidder\n 123: `bidders/123/accounts/123/filterSets/abc`\n\n- For an account-level filter set for the child seat buyer account 456\n whose bidder is 123: `bidders/123/accounts/456/filterSets/abc`" - }, - "pageToken": { - "type": "string", - "location": "query", - "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 losingBids.list\nmethod." - } - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ] - } - } - }, - "impressionMetrics": { - "methods": { - "list": { - "response": { - "$ref": "ListImpressionMetricsResponse" - }, - "parameterOrder": [ - "filterSetName" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ], - "parameters": { - "filterSetName": { - "description": "Name of the filter set that should be applied to the requested metrics.\nFor example:\n\n- For a bidder-level filter set for bidder 123:\n `bidders/123/filterSets/abc`\n\n- For an account-level filter set for the buyer account representing bidder\n 123: `bidders/123/accounts/123/filterSets/abc`\n\n- For an account-level filter set for the child seat buyer account 456\n whose bidder is 123: `bidders/123/accounts/456/filterSets/abc`", - "required": true, - "type": "string", - "pattern": "^bidders/[^/]+/filterSets/[^/]+$", - "location": "path" - }, - "pageToken": { - "location": "query", - "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 impressionMetrics.list\nmethod.", - "type": "string" - }, - "pageSize": { - "type": "integer", - "location": "query", - "description": "Requested page size. The server may return fewer results than requested.\nIf unspecified, the server will pick an appropriate default.", - "format": "int32" - } - }, - "flatPath": "v2beta1/bidders/{biddersId}/filterSets/{filterSetsId}/impressionMetrics", - "path": "v2beta1/{+filterSetName}/impressionMetrics", - "id": "adexchangebuyer2.bidders.filterSets.impressionMetrics.list", - "description": "Lists all metrics that are measured in terms of number of impressions." - } - } - }, - "bidMetrics": { - "methods": { - "list": { - "response": { - "$ref": "ListBidMetricsResponse" - }, - "parameterOrder": [ - "filterSetName" - ], - "httpMethod": "GET", - "parameters": { - "pageSize": { - "location": "query", - "description": "Requested page size. The server may return fewer results than requested.\nIf unspecified, the server will pick an appropriate default.", - "format": "int32", - "type": "integer" - }, - "filterSetName": { - "description": "Name of the filter set that should be applied to the requested metrics.\nFor example:\n\n- For a bidder-level filter set for bidder 123:\n `bidders/123/filterSets/abc`\n\n- For an account-level filter set for the buyer account representing bidder\n 123: `bidders/123/accounts/123/filterSets/abc`\n\n- For an account-level filter set for the child seat buyer account 456\n whose bidder is 123: `bidders/123/accounts/456/filterSets/abc`", - "required": true, - "type": "string", - "pattern": "^bidders/[^/]+/filterSets/[^/]+$", - "location": "path" - }, - "pageToken": { - "type": "string", - "location": "query", - "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 bidMetrics.list\nmethod." - } - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ], - "flatPath": "v2beta1/bidders/{biddersId}/filterSets/{filterSetsId}/bidMetrics", - "path": "v2beta1/{+filterSetName}/bidMetrics", - "id": "adexchangebuyer2.bidders.filterSets.bidMetrics.list", - "description": "Lists all metrics that are measured in terms of number of bids." - } - } - }, - "bidResponseErrors": { - "methods": { - "list": { - "response": { - "$ref": "ListBidResponseErrorsResponse" - }, - "parameterOrder": [ - "filterSetName" - ], - "httpMethod": "GET", - "parameters": { - "filterSetName": { - "pattern": "^bidders/[^/]+/filterSets/[^/]+$", - "location": "path", - "description": "Name of the filter set that should be applied to the requested metrics.\nFor example:\n\n- For a bidder-level filter set for bidder 123:\n `bidders/123/filterSets/abc`\n\n- For an account-level filter set for the buyer account representing bidder\n 123: `bidders/123/accounts/123/filterSets/abc`\n\n- For an account-level filter set for the child seat buyer account 456\n whose bidder is 123: `bidders/123/accounts/456/filterSets/abc`", - "required": true, - "type": "string" - }, - "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 bidResponseErrors.list\nmethod.", - "type": "string", - "location": "query" - }, - "pageSize": { - "location": "query", - "description": "Requested page size. The server may return fewer results than requested.\nIf unspecified, the server will pick an appropriate default.", - "format": "int32", - "type": "integer" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ], - "flatPath": "v2beta1/bidders/{biddersId}/filterSets/{filterSetsId}/bidResponseErrors", - "path": "v2beta1/{+filterSetName}/bidResponseErrors", - "id": "adexchangebuyer2.bidders.filterSets.bidResponseErrors.list", - "description": "List all errors that occurred in bid responses, with the number of bid\nresponses affected for each reason." - } - } - }, - "bidResponsesWithoutBids": { - "methods": { - "list": { - "response": { - "$ref": "ListBidResponsesWithoutBidsResponse" - }, - "parameterOrder": [ - "filterSetName" - ], - "httpMethod": "GET", - "parameters": { - "filterSetName": { - "pattern": "^bidders/[^/]+/filterSets/[^/]+$", - "location": "path", - "description": "Name of the filter set that should be applied to the requested metrics.\nFor example:\n\n- For a bidder-level filter set for bidder 123:\n `bidders/123/filterSets/abc`\n\n- For an account-level filter set for the buyer account representing bidder\n 123: `bidders/123/accounts/123/filterSets/abc`\n\n- For an account-level filter set for the child seat buyer account 456\n whose bidder is 123: `bidders/123/accounts/456/filterSets/abc`", - "required": true, - "type": "string" - }, - "pageToken": { - "location": "query", - "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 bidResponsesWithoutBids.list\nmethod.", - "type": "string" - }, - "pageSize": { - "description": "Requested page size. The server may return fewer results than requested.\nIf unspecified, the server will pick an appropriate default.", - "format": "int32", - "type": "integer", - "location": "query" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ], - "flatPath": "v2beta1/bidders/{biddersId}/filterSets/{filterSetsId}/bidResponsesWithoutBids", - "path": "v2beta1/{+filterSetName}/bidResponsesWithoutBids", - "id": "adexchangebuyer2.bidders.filterSets.bidResponsesWithoutBids.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." - } - } - }, - "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", - "response": { - "$ref": "ListFilteredBidRequestsResponse" - }, - "parameterOrder": [ - "filterSetName" - ], - "parameters": { - "filterSetName": { - "description": "Name of the filter set that should be applied to the requested metrics.\nFor example:\n\n- For a bidder-level filter set for bidder 123:\n `bidders/123/filterSets/abc`\n\n- For an account-level filter set for the buyer account representing bidder\n 123: `bidders/123/accounts/123/filterSets/abc`\n\n- For an account-level filter set for the child seat buyer account 456\n whose bidder is 123: `bidders/123/accounts/456/filterSets/abc`", - "required": true, - "type": "string", - "pattern": "^bidders/[^/]+/filterSets/[^/]+$", - "location": "path" - }, - "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 filteredBidRequests.list\nmethod.", - "type": "string", - "location": "query" - }, - "pageSize": { - "location": "query", - "description": "Requested page size. The server may return fewer results than requested.\nIf unspecified, the server will pick an appropriate default.", - "format": "int32", - "type": "integer" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ], - "flatPath": "v2beta1/bidders/{biddersId}/filterSets/{filterSetsId}/filteredBidRequests", - "id": "adexchangebuyer2.bidders.filterSets.filteredBidRequests.list", - "path": "v2beta1/{+filterSetName}/filteredBidRequests" - } - } - } - } - }, - "accounts": { - "resources": { - "filterSets": { - "methods": { - "create": { - "request": { - "$ref": "FilterSet" - }, - "description": "Creates the specified filter set for the account with the given account ID.", - "response": { - "$ref": "FilterSet" - }, - "parameterOrder": [ - "ownerName" - ], - "httpMethod": "POST", - "parameters": { - "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.", - "type": "boolean", - "location": "query" - }, - "ownerName": { - "description": "Name of the owner (bidder or account) of the filter set to be created.\nFor example:\n\n- For a bidder-level filter set for bidder 123: `bidders/123`\n\n- For an account-level filter set for the buyer account representing bidder\n 123: `bidders/123/accounts/123`\n\n- For an account-level filter set for the child seat buyer account 456\n whose bidder is 123: `bidders/123/accounts/456`", - "required": true, - "type": "string", - "pattern": "^bidders/[^/]+/accounts/[^/]+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ], - "flatPath": "v2beta1/bidders/{biddersId}/accounts/{accountsId}/filterSets", - "path": "v2beta1/{+ownerName}/filterSets", - "id": "adexchangebuyer2.bidders.accounts.filterSets.create" - }, - "delete": { - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "DELETE", - "parameters": { - "name": { - "pattern": "^bidders/[^/]+/accounts/[^/]+/filterSets/[^/]+$", - "location": "path", - "description": "Full name of the resource to delete.\nFor example:\n\n- For a bidder-level filter set for bidder 123:\n `bidders/123/filterSets/abc`\n\n- For an account-level filter set for the buyer account representing bidder\n 123: `bidders/123/accounts/123/filterSets/abc`\n\n- For an account-level filter set for the child seat buyer account 456\n whose bidder is 123: `bidders/123/accounts/456/filterSets/abc`", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ], - "flatPath": "v2beta1/bidders/{biddersId}/accounts/{accountsId}/filterSets/{filterSetsId}", - "path": "v2beta1/{+name}", - "id": "adexchangebuyer2.bidders.accounts.filterSets.delete", - "description": "Deletes the requested filter set from the account with the given account\nID." - }, - "get": { - "id": "adexchangebuyer2.bidders.accounts.filterSets.get", - "path": "v2beta1/{+name}", - "description": "Retrieves the requested filter set for the account with the given account\nID.", - "httpMethod": "GET", - "parameterOrder": [ - "name" - ], - "response": { - "$ref": "FilterSet" - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ], - "parameters": { - "name": { - "description": "Full name of the resource being requested.\nFor example:\n\n- For a bidder-level filter set for bidder 123:\n `bidders/123/filterSets/abc`\n\n- For an account-level filter set for the buyer account representing bidder\n 123: `bidders/123/accounts/123/filterSets/abc`\n\n- For an account-level filter set for the child seat buyer account 456\n whose bidder is 123: `bidders/123/accounts/456/filterSets/abc`", - "required": true, - "type": "string", - "pattern": "^bidders/[^/]+/accounts/[^/]+/filterSets/[^/]+$", - "location": "path" - } - }, - "flatPath": "v2beta1/bidders/{biddersId}/accounts/{accountsId}/filterSets/{filterSetsId}" - }, - "list": { - "description": "Lists all filter sets for the account with the given account ID.", - "httpMethod": "GET", - "response": { - "$ref": "ListFilterSetsResponse" - }, - "parameterOrder": [ - "ownerName" - ], - "parameters": { - "ownerName": { - "location": "path", - "description": "Name of the owner (bidder or account) of the filter sets to be listed.\nFor example:\n\n- For a bidder-level filter set for bidder 123: `bidders/123`\n\n- For an account-level filter set for the buyer account representing bidder\n 123: `bidders/123/accounts/123`\n\n- For an account-level filter set for the child seat buyer account 456\n whose bidder is 123: `bidders/123/accounts/456`", - "required": true, - "type": "string", - "pattern": "^bidders/[^/]+/accounts/[^/]+$" - }, - "pageToken": { - "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.filterSets.list\nmethod.", - "type": "string", - "location": "query" - }, - "pageSize": { - "description": "Requested page size. The server may return fewer results than requested.\nIf unspecified, the server will pick an appropriate default.", - "format": "int32", - "type": "integer", - "location": "query" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ], - "flatPath": "v2beta1/bidders/{biddersId}/accounts/{accountsId}/filterSets", - "id": "adexchangebuyer2.bidders.accounts.filterSets.list", - "path": "v2beta1/{+ownerName}/filterSets" - } - }, - "resources": { - "bidResponsesWithoutBids": { - "methods": { - "list": { - "path": "v2beta1/{+filterSetName}/bidResponsesWithoutBids", - "id": "adexchangebuyer2.bidders.accounts.filterSets.bidResponsesWithoutBids.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.", - "response": { - "$ref": "ListBidResponsesWithoutBidsResponse" - }, - "parameterOrder": [ - "filterSetName" - ], - "httpMethod": "GET", - "parameters": { - "filterSetName": { - "required": true, - "type": "string", - "pattern": "^bidders/[^/]+/accounts/[^/]+/filterSets/[^/]+$", - "location": "path", - "description": "Name of the filter set that should be applied to the requested metrics.\nFor example:\n\n- For a bidder-level filter set for bidder 123:\n `bidders/123/filterSets/abc`\n\n- For an account-level filter set for the buyer account representing bidder\n 123: `bidders/123/accounts/123/filterSets/abc`\n\n- For an account-level filter set for the child seat buyer account 456\n whose bidder is 123: `bidders/123/accounts/456/filterSets/abc`" - }, - "pageToken": { - "location": "query", - "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 bidResponsesWithoutBids.list\nmethod.", - "type": "string" - }, - "pageSize": { - "location": "query", - "description": "Requested page size. The server may return fewer results than requested.\nIf unspecified, the server will pick an appropriate default.", - "format": "int32", - "type": "integer" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ], - "flatPath": "v2beta1/bidders/{biddersId}/accounts/{accountsId}/filterSets/{filterSetsId}/bidResponsesWithoutBids" - } - } - }, - "filteredBidRequests": { - "methods": { - "list": { - "response": { - "$ref": "ListFilteredBidRequestsResponse" - }, - "parameterOrder": [ - "filterSetName" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ], - "parameters": { - "filterSetName": { - "description": "Name of the filter set that should be applied to the requested metrics.\nFor example:\n\n- For a bidder-level filter set for bidder 123:\n `bidders/123/filterSets/abc`\n\n- For an account-level filter set for the buyer account representing bidder\n 123: `bidders/123/accounts/123/filterSets/abc`\n\n- For an account-level filter set for the child seat buyer account 456\n whose bidder is 123: `bidders/123/accounts/456/filterSets/abc`", - "required": true, - "type": "string", - "pattern": "^bidders/[^/]+/accounts/[^/]+/filterSets/[^/]+$", - "location": "path" - }, - "pageToken": { - "type": "string", - "location": "query", - "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 filteredBidRequests.list\nmethod." - }, - "pageSize": { - "type": "integer", - "location": "query", - "description": "Requested page size. The server may return fewer results than requested.\nIf unspecified, the server will pick an appropriate default.", - "format": "int32" - } - }, - "flatPath": "v2beta1/bidders/{biddersId}/accounts/{accountsId}/filterSets/{filterSetsId}/filteredBidRequests", - "path": "v2beta1/{+filterSetName}/filteredBidRequests", - "id": "adexchangebuyer2.bidders.accounts.filterSets.filteredBidRequests.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." - } - } - }, - "filteredBids": { - "methods": { - "list": { - "flatPath": "v2beta1/bidders/{biddersId}/accounts/{accountsId}/filterSets/{filterSetsId}/filteredBids", - "path": "v2beta1/{+filterSetName}/filteredBids", - "id": "adexchangebuyer2.bidders.accounts.filterSets.filteredBids.list", - "description": "List all reasons for which bids were filtered, with the number of bids\nfiltered for each reason.", - "response": { - "$ref": "ListFilteredBidsResponse" - }, - "parameterOrder": [ - "filterSetName" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ], - "parameters": { - "filterSetName": { - "description": "Name of the filter set that should be applied to the requested metrics.\nFor example:\n\n- For a bidder-level filter set for bidder 123:\n `bidders/123/filterSets/abc`\n\n- For an account-level filter set for the buyer account representing bidder\n 123: `bidders/123/accounts/123/filterSets/abc`\n\n- For an account-level filter set for the child seat buyer account 456\n whose bidder is 123: `bidders/123/accounts/456/filterSets/abc`", - "required": true, - "type": "string", - "pattern": "^bidders/[^/]+/accounts/[^/]+/filterSets/[^/]+$", - "location": "path" - }, - "pageToken": { - "type": "string", - "location": "query", - "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 filteredBids.list\nmethod." - }, - "pageSize": { - "description": "Requested page size. The server may return fewer results than requested.\nIf unspecified, the server will pick an appropriate default.", - "format": "int32", - "type": "integer", - "location": "query" - } - } - } - }, - "resources": { - "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.", - "response": { - "$ref": "ListCreativeStatusBreakdownByDetailResponse" - }, - "parameterOrder": [ - "filterSetName", - "creativeStatusId" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ], - "parameters": { - "filterSetName": { - "location": "path", - "description": "Name of the filter set that should be applied to the requested metrics.\nFor example:\n\n- For a bidder-level filter set for bidder 123:\n `bidders/123/filterSets/abc`\n\n- For an account-level filter set for the buyer account representing bidder\n 123: `bidders/123/accounts/123/filterSets/abc`\n\n- For an account-level filter set for the child seat buyer account 456\n whose bidder is 123: `bidders/123/accounts/456/filterSets/abc`", - "required": true, - "type": "string", - "pattern": "^bidders/[^/]+/accounts/[^/]+/filterSets/[^/]+$" - }, - "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).\nDetails are only available for statuses 10, 14, 15, 17, 18, 19, 86, and 87.", - "format": "int32", - "required": true, - "type": "integer", - "location": "path" - }, - "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 filteredBids.details.list\nmethod.", - "type": "string", - "location": "query" - }, - "pageSize": { - "location": "query", - "description": "Requested page size. The server may return fewer results than requested.\nIf unspecified, the server will pick an appropriate default.", - "format": "int32", - "type": "integer" - } - }, - "flatPath": "v2beta1/bidders/{biddersId}/accounts/{accountsId}/filterSets/{filterSetsId}/filteredBids/{creativeStatusId}/details", - "path": "v2beta1/{+filterSetName}/filteredBids/{creativeStatusId}/details", - "id": "adexchangebuyer2.bidders.accounts.filterSets.filteredBids.details.list" - } - } - }, - "creatives": { - "methods": { - "list": { - "flatPath": "v2beta1/bidders/{biddersId}/accounts/{accountsId}/filterSets/{filterSetsId}/filteredBids/{creativeStatusId}/creatives", - "path": "v2beta1/{+filterSetName}/filteredBids/{creativeStatusId}/creatives", - "id": "adexchangebuyer2.bidders.accounts.filterSets.filteredBids.creatives.list", - "description": "List all creatives associated with a specific reason for which bids were\nfiltered, with the number of bids filtered for each creative.", - "response": { - "$ref": "ListCreativeStatusBreakdownByCreativeResponse" - }, - "parameterOrder": [ - "filterSetName", - "creativeStatusId" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ], - "parameters": { - "filterSetName": { - "description": "Name of the filter set that should be applied to the requested metrics.\nFor example:\n\n- For a bidder-level filter set for bidder 123:\n `bidders/123/filterSets/abc`\n\n- For an account-level filter set for the buyer account representing bidder\n 123: `bidders/123/accounts/123/filterSets/abc`\n\n- For an account-level filter set for the child seat buyer account 456\n whose bidder is 123: `bidders/123/accounts/456/filterSets/abc`", - "required": true, - "type": "string", - "pattern": "^bidders/[^/]+/accounts/[^/]+/filterSets/[^/]+$", - "location": "path" - }, - "creativeStatusId": { - "location": "path", - "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", - "required": true, - "type": "integer" - }, - "pageToken": { - "location": "query", - "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 filteredBids.creatives.list\nmethod.", - "type": "string" - }, - "pageSize": { - "location": "query", - "description": "Requested page size. The server may return fewer results than requested.\nIf unspecified, the server will pick an appropriate default.", - "format": "int32", - "type": "integer" - } - } - } - } - } - } - }, - "nonBillableWinningBids": { - "methods": { - "list": { - "response": { - "$ref": "ListNonBillableWinningBidsResponse" - }, - "parameterOrder": [ - "filterSetName" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ], - "parameters": { - "filterSetName": { - "location": "path", - "description": "Name of the filter set that should be applied to the requested metrics.\nFor example:\n\n- For a bidder-level filter set for bidder 123:\n `bidders/123/filterSets/abc`\n\n- For an account-level filter set for the buyer account representing bidder\n 123: `bidders/123/accounts/123/filterSets/abc`\n\n- For an account-level filter set for the child seat buyer account 456\n whose bidder is 123: `bidders/123/accounts/456/filterSets/abc`", - "required": true, - "type": "string", - "pattern": "^bidders/[^/]+/accounts/[^/]+/filterSets/[^/]+$" - }, - "pageToken": { - "location": "query", - "description": "A token identifying a page of results the server should return.\nTypically, this is the value of\nListNonBillableWinningBidsResponse.nextPageToken\nreturned from the previous call to the nonBillableWinningBids.list\nmethod.", - "type": "string" - }, - "pageSize": { - "location": "query", - "description": "Requested page size. The server may return fewer results than requested.\nIf unspecified, the server will pick an appropriate default.", - "format": "int32", - "type": "integer" - } - }, - "flatPath": "v2beta1/bidders/{biddersId}/accounts/{accountsId}/filterSets/{filterSetsId}/nonBillableWinningBids", - "path": "v2beta1/{+filterSetName}/nonBillableWinningBids", - "id": "adexchangebuyer2.bidders.accounts.filterSets.nonBillableWinningBids.list", - "description": "List all reasons for which winning bids were not billable, with the number\nof bids not billed for each reason." - } - } - }, - "losingBids": { - "methods": { - "list": { - "flatPath": "v2beta1/bidders/{biddersId}/accounts/{accountsId}/filterSets/{filterSetsId}/losingBids", - "id": "adexchangebuyer2.bidders.accounts.filterSets.losingBids.list", - "path": "v2beta1/{+filterSetName}/losingBids", - "description": "List all reasons for which bids lost in the auction, with the number of\nbids that lost for each reason.", - "httpMethod": "GET", - "parameterOrder": [ - "filterSetName" - ], - "response": { - "$ref": "ListLosingBidsResponse" - }, - "parameters": { - "filterSetName": { - "location": "path", - "description": "Name of the filter set that should be applied to the requested metrics.\nFor example:\n\n- For a bidder-level filter set for bidder 123:\n `bidders/123/filterSets/abc`\n\n- For an account-level filter set for the buyer account representing bidder\n 123: `bidders/123/accounts/123/filterSets/abc`\n\n- For an account-level filter set for the child seat buyer account 456\n whose bidder is 123: `bidders/123/accounts/456/filterSets/abc`", - "required": true, - "type": "string", - "pattern": "^bidders/[^/]+/accounts/[^/]+/filterSets/[^/]+$" - }, - "pageToken": { - "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 losingBids.list\nmethod.", - "type": "string", - "location": "query" - }, - "pageSize": { - "description": "Requested page size. The server may return fewer results than requested.\nIf unspecified, the server will pick an appropriate default.", - "format": "int32", - "type": "integer", - "location": "query" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ] - } - } - }, - "impressionMetrics": { - "methods": { - "list": { - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ], - "parameters": { - "filterSetName": { - "location": "path", - "description": "Name of the filter set that should be applied to the requested metrics.\nFor example:\n\n- For a bidder-level filter set for bidder 123:\n `bidders/123/filterSets/abc`\n\n- For an account-level filter set for the buyer account representing bidder\n 123: `bidders/123/accounts/123/filterSets/abc`\n\n- For an account-level filter set for the child seat buyer account 456\n whose bidder is 123: `bidders/123/accounts/456/filterSets/abc`", - "required": true, - "type": "string", - "pattern": "^bidders/[^/]+/accounts/[^/]+/filterSets/[^/]+$" - }, - "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 impressionMetrics.list\nmethod.", - "type": "string", - "location": "query" - }, - "pageSize": { - "location": "query", - "description": "Requested page size. The server may return fewer results than requested.\nIf unspecified, the server will pick an appropriate default.", - "format": "int32", - "type": "integer" - } - }, - "flatPath": "v2beta1/bidders/{biddersId}/accounts/{accountsId}/filterSets/{filterSetsId}/impressionMetrics", - "path": "v2beta1/{+filterSetName}/impressionMetrics", - "id": "adexchangebuyer2.bidders.accounts.filterSets.impressionMetrics.list", - "description": "Lists all metrics that are measured in terms of number of impressions.", - "response": { - "$ref": "ListImpressionMetricsResponse" - }, - "parameterOrder": [ - "filterSetName" - ], - "httpMethod": "GET" - } - } - }, - "bidMetrics": { - "methods": { - "list": { - "id": "adexchangebuyer2.bidders.accounts.filterSets.bidMetrics.list", - "path": "v2beta1/{+filterSetName}/bidMetrics", - "description": "Lists all metrics that are measured in terms of number of bids.", - "httpMethod": "GET", - "parameterOrder": [ - "filterSetName" - ], - "response": { - "$ref": "ListBidMetricsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ], - "parameters": { - "pageSize": { - "description": "Requested page size. The server may return fewer results than requested.\nIf unspecified, the server will pick an appropriate default.", - "format": "int32", - "type": "integer", - "location": "query" - }, - "filterSetName": { - "required": true, - "type": "string", - "pattern": "^bidders/[^/]+/accounts/[^/]+/filterSets/[^/]+$", - "location": "path", - "description": "Name of the filter set that should be applied to the requested metrics.\nFor example:\n\n- For a bidder-level filter set for bidder 123:\n `bidders/123/filterSets/abc`\n\n- For an account-level filter set for the buyer account representing bidder\n 123: `bidders/123/accounts/123/filterSets/abc`\n\n- For an account-level filter set for the child seat buyer account 456\n whose bidder is 123: `bidders/123/accounts/456/filterSets/abc`" - }, - "pageToken": { - "location": "query", - "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 bidMetrics.list\nmethod.", - "type": "string" - } - }, - "flatPath": "v2beta1/bidders/{biddersId}/accounts/{accountsId}/filterSets/{filterSetsId}/bidMetrics" - } - } - }, - "bidResponseErrors": { - "methods": { - "list": { - "description": "List all errors that occurred in bid responses, with the number of bid\nresponses affected for each reason.", - "response": { - "$ref": "ListBidResponseErrorsResponse" - }, - "parameterOrder": [ - "filterSetName" - ], - "httpMethod": "GET", - "parameters": { - "pageSize": { - "type": "integer", - "location": "query", - "description": "Requested page size. The server may return fewer results than requested.\nIf unspecified, the server will pick an appropriate default.", - "format": "int32" - }, - "filterSetName": { - "location": "path", - "description": "Name of the filter set that should be applied to the requested metrics.\nFor example:\n\n- For a bidder-level filter set for bidder 123:\n `bidders/123/filterSets/abc`\n\n- For an account-level filter set for the buyer account representing bidder\n 123: `bidders/123/accounts/123/filterSets/abc`\n\n- For an account-level filter set for the child seat buyer account 456\n whose bidder is 123: `bidders/123/accounts/456/filterSets/abc`", - "required": true, - "type": "string", - "pattern": "^bidders/[^/]+/accounts/[^/]+/filterSets/[^/]+$" - }, - "pageToken": { - "location": "query", - "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 bidResponseErrors.list\nmethod.", - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ], - "flatPath": "v2beta1/bidders/{biddersId}/accounts/{accountsId}/filterSets/{filterSetsId}/bidResponseErrors", - "path": "v2beta1/{+filterSetName}/bidResponseErrors", - "id": "adexchangebuyer2.bidders.accounts.filterSets.bidResponseErrors.list" - } - } - } - } - } - } - } - } - }, - "accounts": { - "resources": { - "clients": { - "methods": { - "get": { - "response": { - "$ref": "Client" - }, - "parameterOrder": [ - "accountId", - "clientAccountId" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ], - "parameters": { - "clientAccountId": { - "description": "Numerical account ID of the client buyer to retrieve. (required)", - "format": "int64", - "required": true, - "type": "string", - "location": "path" - }, - "accountId": { - "description": "Numerical account ID of the client's sponsor buyer. (required)", - "format": "int64", - "required": true, - "type": "string", - "location": "path" - } - }, - "flatPath": "v2beta1/accounts/{accountId}/clients/{clientAccountId}", - "path": "v2beta1/accounts/{accountId}/clients/{clientAccountId}", - "id": "adexchangebuyer2.accounts.clients.get", - "description": "Gets a client buyer with a given client account ID." - }, - "list": { - "response": { - "$ref": "ListClientsResponse" - }, - "parameterOrder": [ - "accountId" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ], - "parameters": { - "accountId": { - "description": "Unique numerical account ID of the sponsor buyer to list the clients for.", - "format": "int64", - "required": true, - "type": "string", - "location": "path" - }, - "pageSize": { - "location": "query", - "description": "Requested page size. The server may return fewer clients than requested.\nIf unspecified, the server will pick an appropriate default.", - "format": "int32", - "type": "integer" - }, - "pageToken": { - "location": "query", - "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.", - "type": "string" - }, - "partnerClientId": { - "location": "query", - "description": "Optional unique identifier (from the standpoint of an Ad Exchange sponsor\nbuyer partner) of the client to return.\nIf specified, at most one client will be returned in the response.", - "type": "string" - } - }, - "flatPath": "v2beta1/accounts/{accountId}/clients", - "path": "v2beta1/accounts/{accountId}/clients", - "id": "adexchangebuyer2.accounts.clients.list", - "description": "Lists all the clients for the current sponsor buyer." - }, - "update": { - "request": { - "$ref": "Client" - }, - "description": "Updates an existing client buyer.", - "httpMethod": "PUT", - "parameterOrder": [ - "accountId", - "clientAccountId" - ], - "response": { - "$ref": "Client" - }, - "parameters": { - "accountId": { - "required": true, - "type": "string", - "location": "path", - "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" - }, - "clientAccountId": { - "required": true, - "type": "string", - "location": "path", - "description": "Unique numerical account ID of the client to update. (required)", - "format": "int64" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ], - "flatPath": "v2beta1/accounts/{accountId}/clients/{clientAccountId}", - "id": "adexchangebuyer2.accounts.clients.update", - "path": "v2beta1/accounts/{accountId}/clients/{clientAccountId}" - }, - "create": { - "flatPath": "v2beta1/accounts/{accountId}/clients", - "path": "v2beta1/accounts/{accountId}/clients", - "id": "adexchangebuyer2.accounts.clients.create", - "request": { - "$ref": "Client" - }, - "description": "Creates a new client buyer.", - "response": { - "$ref": "Client" - }, - "parameterOrder": [ - "accountId" - ], - "httpMethod": "POST", - "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)", - "format": "int64", - "required": true, - "type": "string", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ] - } - }, - "resources": { - "invitations": { - "methods": { - "get": { - "path": "v2beta1/accounts/{accountId}/clients/{clientAccountId}/invitations/{invitationId}", - "id": "adexchangebuyer2.accounts.clients.invitations.get", - "description": "Retrieves an existing client user invitation.", - "response": { - "$ref": "ClientUserInvitation" - }, - "parameterOrder": [ - "accountId", - "clientAccountId", - "invitationId" - ], - "httpMethod": "GET", - "parameters": { - "invitationId": { - "location": "path", - "description": "Numerical identifier of the user invitation to retrieve. (required)", - "format": "int64", - "required": true, - "type": "string" - }, - "accountId": { - "location": "path", - "description": "Numerical account ID of the client's sponsor buyer. (required)", - "format": "int64", - "required": true, - "type": "string" - }, - "clientAccountId": { - "location": "path", - "description": "Numerical account ID of the client buyer that the user invitation\nto be retrieved is associated with. (required)", - "format": "int64", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ], - "flatPath": "v2beta1/accounts/{accountId}/clients/{clientAccountId}/invitations/{invitationId}" - }, - "list": { - "response": { - "$ref": "ListClientUserInvitationsResponse" - }, - "parameterOrder": [ - "accountId", - "clientAccountId" - ], - "httpMethod": "GET", - "parameters": { - "pageToken": { - "location": "query", - "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.", - "type": "string" - }, - "accountId": { - "description": "Numerical account ID of the client's sponsor buyer. (required)", - "format": "int64", - "required": true, - "type": "string", - "location": "path" - }, - "pageSize": { - "location": "query", - "description": "Requested page size. Server may return fewer clients than requested.\nIf unspecified, server will pick an appropriate default.", - "format": "int32", - "type": "integer" - }, - "clientAccountId": { - "location": "path", - "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.", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ], - "flatPath": "v2beta1/accounts/{accountId}/clients/{clientAccountId}/invitations", - "path": "v2beta1/accounts/{accountId}/clients/{clientAccountId}/invitations", - "id": "adexchangebuyer2.accounts.clients.invitations.list", - "description": "Lists all the client users invitations for a client\nwith a given account ID." - }, - "create": { - "description": "Creates and sends out an email invitation to access\nan Ad Exchange client buyer account.", - "request": { - "$ref": "ClientUserInvitation" - }, - "response": { - "$ref": "ClientUserInvitation" - }, - "parameterOrder": [ - "accountId", - "clientAccountId" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ], - "parameters": { - "accountId": { - "description": "Numerical account ID of the client's sponsor buyer. (required)", - "format": "int64", - "required": true, - "type": "string", - "location": "path" - }, - "clientAccountId": { - "location": "path", - "description": "Numerical account ID of the client buyer that the user\nshould be associated with. (required)", - "format": "int64", - "required": true, - "type": "string" - } - }, - "flatPath": "v2beta1/accounts/{accountId}/clients/{clientAccountId}/invitations", - "path": "v2beta1/accounts/{accountId}/clients/{clientAccountId}/invitations", - "id": "adexchangebuyer2.accounts.clients.invitations.create" - } - } - }, - "users": { - "methods": { - "list": { - "response": { - "$ref": "ListClientUsersResponse" - }, - "parameterOrder": [ - "accountId", - "clientAccountId" - ], - "httpMethod": "GET", - "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.", - "required": true, - "type": "string", - "location": "path" - }, - "pageToken": { - "location": "query", - "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.", - "type": "string" - }, - "accountId": { - "description": "Numerical account ID of the sponsor buyer of the client to list users for.\n(required)", - "format": "int64", - "required": true, - "type": "string", - "location": "path" - }, - "pageSize": { - "description": "Requested page size. The server may return fewer clients than requested.\nIf unspecified, the server will pick an appropriate default.", - "format": "int32", - "type": "integer", - "location": "query" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ], - "flatPath": "v2beta1/accounts/{accountId}/clients/{clientAccountId}/users", - "path": "v2beta1/accounts/{accountId}/clients/{clientAccountId}/users", - "id": "adexchangebuyer2.accounts.clients.users.list", - "description": "Lists all the known client users for a specified\nsponsor buyer account ID." - }, - "get": { - "httpMethod": "GET", - "parameterOrder": [ - "accountId", - "clientAccountId", - "userId" - ], - "response": { - "$ref": "ClientUser" - }, - "parameters": { - "clientAccountId": { - "required": true, - "type": "string", - "location": "path", - "description": "Numerical account ID of the client buyer\nthat the user to be retrieved is associated with. (required)", - "format": "int64" - }, - "userId": { - "required": true, - "type": "string", - "location": "path", - "description": "Numerical identifier of the user to retrieve. (required)", - "format": "int64" - }, - "accountId": { - "required": true, - "type": "string", - "location": "path", - "description": "Numerical account ID of the client's sponsor buyer. (required)", - "format": "int64" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ], - "flatPath": "v2beta1/accounts/{accountId}/clients/{clientAccountId}/users/{userId}", - "id": "adexchangebuyer2.accounts.clients.users.get", - "path": "v2beta1/accounts/{accountId}/clients/{clientAccountId}/users/{userId}", - "description": "Retrieves an existing client user." - }, - "update": { - "response": { - "$ref": "ClientUser" - }, - "parameterOrder": [ - "accountId", - "clientAccountId", - "userId" - ], - "httpMethod": "PUT", - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ], - "parameters": { - "userId": { - "location": "path", - "description": "Numerical identifier of the user to retrieve. (required)", - "format": "int64", - "required": true, - "type": "string" - }, - "accountId": { - "location": "path", - "description": "Numerical account ID of the client's sponsor buyer. (required)", - "format": "int64", - "required": true, - "type": "string" - }, - "clientAccountId": { - "required": true, - "type": "string", - "location": "path", - "description": "Numerical account ID of the client buyer that the user to be retrieved\nis associated with. (required)", - "format": "int64" - } - }, - "flatPath": "v2beta1/accounts/{accountId}/clients/{clientAccountId}/users/{userId}", - "path": "v2beta1/accounts/{accountId}/clients/{clientAccountId}/users/{userId}", - "id": "adexchangebuyer2.accounts.clients.users.update", - "description": "Updates an existing client user.\nOnly the user status can be changed on update.", - "request": { - "$ref": "ClientUser" - } - } - } - } - } - }, - "creatives": { - "methods": { - "get": { - "response": { - "$ref": "Creative" - }, - "parameterOrder": [ - "accountId", - "creativeId" - ], - "httpMethod": "GET", - "parameters": { - "accountId": { - "required": true, - "type": "string", - "location": "path", - "description": "The account the creative belongs to." - }, - "creativeId": { - "description": "The ID of the creative to retrieve.", - "required": true, - "type": "string", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ], - "flatPath": "v2beta1/accounts/{accountId}/creatives/{creativeId}", - "path": "v2beta1/accounts/{accountId}/creatives/{creativeId}", - "id": "adexchangebuyer2.accounts.creatives.get", - "description": "Gets a creative." - }, - "watch": { - "request": { - "$ref": "WatchCreativeRequest" - }, - "description": "Watches a creative. Will result in push notifications being sent to the\ntopic when the creative changes status.", - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "accountId", - "creativeId" - ], - "httpMethod": "POST", - "parameters": { - "accountId": { - "location": "path", - "description": "The account of the creative to watch.", - "required": true, - "type": "string" - }, - "creativeId": { - "location": "path", - "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.", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ], - "flatPath": "v2beta1/accounts/{accountId}/creatives/{creativeId}:watch", - "path": "v2beta1/accounts/{accountId}/creatives/{creativeId}:watch", - "id": "adexchangebuyer2.accounts.creatives.watch" - }, - "update": { - "description": "Updates a creative.", - "request": { - "$ref": "Creative" - }, - "response": { - "$ref": "Creative" - }, - "parameterOrder": [ - "accountId", - "creativeId" - ], - "httpMethod": "PUT", - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ], - "parameters": { - "accountId": { - "location": "path", - "description": "The account that this creative belongs to.\nCan be used to filter the response of the\ncreatives.list\nmethod.", - "required": true, - "type": "string" - }, - "creativeId": { - "location": "path", - "description": "The buyer-defined creative ID of this creative.\nCan be used to filter the response of the\ncreatives.list\nmethod.", - "required": true, - "type": "string" - }, - "accountId1": { - "description": "The account the creative belongs to.", - "type": "string", - "location": "query" - } - }, - "flatPath": "v2beta1/accounts/{accountId}/creatives/{creativeId}", - "path": "v2beta1/accounts/{accountId}/creatives/{creativeId}", - "id": "adexchangebuyer2.accounts.creatives.update" - }, - "list": { - "response": { - "$ref": "ListCreativesResponse" - }, - "parameterOrder": [ - "accountId" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ], - "parameters": { - "query": { - "location": "query", - "description": "An optional query string to filter creatives. If no filter is specified,\nall active creatives will be returned.\nSupported queries are:\n\u003cul\u003e\n\u003cli\u003eaccountId=\u003ci\u003eaccount_id_string\u003c/i\u003e\n\u003cli\u003ecreativeId=\u003ci\u003ecreative_id_string\u003c/i\u003e\n\u003cli\u003edealsStatus: {approved, conditionally_approved, disapproved,\n not_checked}\n\u003cli\u003eopenAuctionStatus: {approved, conditionally_approved, disapproved,\n not_checked}\n\u003cli\u003eattribute: {a numeric attribute from the list of attributes}\n\u003cli\u003edisapprovalReason: {a reason from\nDisapprovalReason}\n\u003c/ul\u003e\nExample: 'accountId=12345 AND (dealsStatus:disapproved AND\ndisapprovalReason:unacceptable_content) OR attribute:47'", - "type": "string" - }, - "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.", - "type": "string", - "location": "query" - }, - "accountId": { - "description": "The account to list the creatives from.\nSpecify \"-\" to list all creatives the current user has access to.", - "required": true, - "type": "string", - "location": "path" - }, - "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", - "type": "integer", - "location": "query" - } - }, - "flatPath": "v2beta1/accounts/{accountId}/creatives", - "path": "v2beta1/accounts/{accountId}/creatives", - "id": "adexchangebuyer2.accounts.creatives.list", - "description": "Lists creatives." - }, - "create": { - "path": "v2beta1/accounts/{accountId}/creatives", - "id": "adexchangebuyer2.accounts.creatives.create", - "description": "Creates a creative.", - "request": { - "$ref": "Creative" - }, - "response": { - "$ref": "Creative" - }, - "parameterOrder": [ - "accountId" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ], - "parameters": { - "accountId": { - "description": "The account that this creative belongs to.\nCan be used to filter the response of the\ncreatives.list\nmethod.", - "required": true, - "type": "string", - "location": "path" - }, - "accountId1": { - "location": "query", - "description": "The account the creative belongs to.", - "type": "string" - }, - "duplicateIdMode": { - "description": "Indicates if multiple creatives can share an ID or not. Default is\nNO_DUPLICATES (one ID per creative).", - "type": "string", - "location": "query", - "enum": [ - "NO_DUPLICATES", - "FORCE_ENABLE_DUPLICATE_IDS" - ] - } - }, - "flatPath": "v2beta1/accounts/{accountId}/creatives" - }, - "stopWatching": { - "httpMethod": "POST", - "parameterOrder": [ - "accountId", - "creativeId" - ], - "response": { - "$ref": "Empty" - }, - "parameters": { - "accountId": { - "location": "path", - "description": "The account of the creative to stop notifications for.", - "required": true, - "type": "string" - }, - "creativeId": { - "location": "path", - "description": "The creative ID of the creative to stop notifications for.\nSpecify \"-\" to specify stopping account level notifications.", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ], - "flatPath": "v2beta1/accounts/{accountId}/creatives/{creativeId}:stopWatching", - "id": "adexchangebuyer2.accounts.creatives.stopWatching", - "path": "v2beta1/accounts/{accountId}/creatives/{creativeId}:stopWatching", - "request": { - "$ref": "StopWatchingCreativeRequest" - }, - "description": "Stops watching a creative. Will stop push notifications being sent to the\ntopics when the creative changes status." - } - }, - "resources": { - "dealAssociations": { - "methods": { - "list": { - "description": "List all creative-deal associations.", - "response": { - "$ref": "ListDealAssociationsResponse" - }, - "parameterOrder": [ - "accountId", - "creativeId" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ], - "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.", - "type": "string", - "location": "query" - }, - "accountId": { - "location": "path", - "description": "The account to list the associations from.\nSpecify \"-\" to list all creatives the current user has access to.", - "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", - "type": "integer", - "location": "query" - }, - "query": { - "location": "query", - "description": "An optional query string to filter deal associations. If no filter is\nspecified, all associations will be returned.\nSupported queries are:\n\u003cul\u003e\n\u003cli\u003eaccountId=\u003ci\u003eaccount_id_string\u003c/i\u003e\n\u003cli\u003ecreativeId=\u003ci\u003ecreative_id_string\u003c/i\u003e\n\u003cli\u003edealsId=\u003ci\u003edeals_id_string\u003c/i\u003e\n\u003cli\u003edealsStatus:{approved, conditionally_approved, disapproved,\n not_checked}\n\u003cli\u003eopenAuctionStatus:{approved, conditionally_approved, disapproved,\n not_checked}\n\u003c/ul\u003e\nExample: 'dealsId=12345 AND dealsStatus:disapproved'", - "type": "string" - }, - "creativeId": { - "description": "The creative ID to list the associations from.\nSpecify \"-\" to list all creatives under the above account.", - "required": true, - "type": "string", - "location": "path" - } - }, - "flatPath": "v2beta1/accounts/{accountId}/creatives/{creativeId}/dealAssociations", - "path": "v2beta1/accounts/{accountId}/creatives/{creativeId}/dealAssociations", - "id": "adexchangebuyer2.accounts.creatives.dealAssociations.list" - }, - "add": { - "request": { - "$ref": "AddDealAssociationRequest" - }, - "description": "Associate an existing deal with a creative.", - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "accountId", - "creativeId" - ], - "httpMethod": "POST", - "parameters": { - "accountId": { - "description": "The account the creative belongs to.", - "required": true, - "type": "string", - "location": "path" - }, - "creativeId": { - "description": "The ID of the creative associated with the deal.", - "required": true, - "type": "string", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ], - "flatPath": "v2beta1/accounts/{accountId}/creatives/{creativeId}/dealAssociations:add", - "path": "v2beta1/accounts/{accountId}/creatives/{creativeId}/dealAssociations:add", - "id": "adexchangebuyer2.accounts.creatives.dealAssociations.add" - }, - "remove": { - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "accountId", - "creativeId" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ], - "parameters": { - "accountId": { - "location": "path", - "description": "The account the creative belongs to.", - "required": true, - "type": "string" - }, - "creativeId": { - "description": "The ID of the creative associated with the deal.", - "required": true, - "type": "string", - "location": "path" - } - }, - "flatPath": "v2beta1/accounts/{accountId}/creatives/{creativeId}/dealAssociations:remove", - "path": "v2beta1/accounts/{accountId}/creatives/{creativeId}/dealAssociations:remove", - "id": "adexchangebuyer2.accounts.creatives.dealAssociations.remove", - "description": "Remove the association between a deal and a creative.", - "request": { - "$ref": "RemoveDealAssociationRequest" - } - } - } - } - } - } - } - } - }, - "parameters": { - "quotaUser": { - "type": "string", - "location": "query", - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters." - }, - "pp": { - "location": "query", - "description": "Pretty-print response.", - "type": "boolean", - "default": "true" - }, - "bearer_token": { - "description": "OAuth bearer token.", - "type": "string", - "location": "query" - }, - "oauth_token": { - "location": "query", - "description": "OAuth 2.0 token for the current user.", - "type": "string" - }, - "upload_protocol": { - "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", - "type": "string", - "location": "query" - }, - "prettyPrint": { - "type": "boolean", - "default": "true", - "location": "query", - "description": "Returns response with indentations and line breaks." - }, - "uploadType": { - "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", - "type": "string", - "location": "query" - }, - "fields": { - "description": "Selector specifying which fields to include in a partial response.", - "type": "string", - "location": "query" - }, - "callback": { - "type": "string", - "location": "query", - "description": "JSONP" - }, - "$.xgafv": { - "description": "V1 error format.", - "type": "string", - "enumDescriptions": [ - "v1 error format", - "v2 error format" - ], - "location": "query", - "enum": [ - "1", - "2" - ] - }, - "alt": { - "enum": [ - "json", - "media", - "proto" - ], - "type": "string", - "enumDescriptions": [ - "Responses with Content-Type of application/json", - "Media download with context-dependent Content-Type", - "Responses with Content-Type of application/x-protobuf" - ], - "location": "query", - "description": "Data format for response.", - "default": "json" - }, - "key": { - "location": "query", - "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.", - "type": "string" - }, - "access_token": { - "description": "OAuth access token.", - "type": "string", - "location": "query" - } - }, - "version": "v2beta1" -} + "version": "v2beta1", + "version_module": true +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/adexchangebuyer2/v2beta1/adexchangebuyer2-gen.go b/vendor/google.golang.org/api/adexchangebuyer2/v2beta1/adexchangebuyer2-gen.go index 04905e508..5194c6554 100644 --- a/vendor/google.golang.org/api/adexchangebuyer2/v2beta1/adexchangebuyer2-gen.go +++ b/vendor/google.golang.org/api/adexchangebuyer2/v2beta1/adexchangebuyer2-gen.go @@ -1065,6 +1065,8 @@ func (s *Correction) MarshalJSON() ([]byte, error) { } // Creative: A creative and its classification data. +// +// Next ID: 31 type Creative struct { // AccountId: The account that this creative belongs to. // Can be used to filter the response of the @@ -1673,17 +1675,6 @@ type FilterSet struct { // "APP" - The ad impression appears in an app. Environment string `json:"environment,omitempty"` - // Format: DEPRECATED: use repeated formats field instead. - // The format on which to filter; optional. - // - // Possible values: - // "FORMAT_UNSPECIFIED" - A placeholder for an undefined format; - // indicates that no format filter - // will be applied. - // "DISPLAY" - The ad impression is display format (i.e. an image). - // "VIDEO" - The ad impression is video format. - Format string `json:"format,omitempty"` - // Formats: The list of formats on which to filter; may be empty. The // filters // represented by multiple formats are ORed together (i.e. if @@ -1694,8 +1685,14 @@ type FilterSet struct { // "FORMAT_UNSPECIFIED" - A placeholder for an undefined format; // indicates that no format filter // will be applied. - // "DISPLAY" - The ad impression is display format (i.e. an image). - // "VIDEO" - The ad impression is video format. + // "NATIVE_DISPLAY" - The ad impression is a native ad, and display + // (i.e. image) format. + // "NATIVE_VIDEO" - The ad impression is a native ad, and video + // format. + // "NON_NATIVE_DISPLAY" - The ad impression is not a native ad, and + // display (i.e. image) format. + // "NON_NATIVE_VIDEO" - The ad impression is not a native ad, and + // video format. Formats []string `json:"formats,omitempty"` // Name: A user-defined name of the filter set. Filter set names must be @@ -3347,6 +3344,10 @@ type VideoContent struct { // VideoUrl: The URL to fetch a video ad. VideoUrl string `json:"videoUrl,omitempty"` + // VideoVastXml: The contents of a VAST document for a video ad. + // This document should conform to the VAST 2.0 or 3.0 standard. + VideoVastXml string `json:"videoVastXml,omitempty"` + // ForceSendFields is a list of field names (e.g. "VideoUrl") to // unconditionally include in API requests. By default, fields with // empty values are omitted from API requests. However, any non-pointer, @@ -5095,13 +5096,6 @@ func (r *AccountsCreativesService) Create(accountId string, creative *Creative) return c } -// AccountId1 sets the optional parameter "accountId1": The account the -// creative belongs to. -func (c *AccountsCreativesCreateCall) AccountId1(accountId1 string) *AccountsCreativesCreateCall { - c.urlParams_.Set("accountId1", accountId1) - return c -} - // DuplicateIdMode sets the optional parameter "duplicateIdMode": // Indicates if multiple creatives can share an ID or not. Default // is @@ -5215,11 +5209,6 @@ func (c *AccountsCreativesCreateCall) Do(opts ...googleapi.CallOption) (*Creativ // "required": true, // "type": "string" // }, - // "accountId1": { - // "description": "The account the creative belongs to.", - // "location": "query", - // "type": "string" - // }, // "duplicateIdMode": { // "description": "Indicates if multiple creatives can share an ID or not. Default is\nNO_DUPLICATES (one ID per creative).", // "enum": [ @@ -5784,13 +5773,6 @@ func (r *AccountsCreativesService) Update(accountId string, creativeId string, c return c } -// AccountId1 sets the optional parameter "accountId1": The account the -// creative belongs to. -func (c *AccountsCreativesUpdateCall) AccountId1(accountId1 string) *AccountsCreativesUpdateCall { - c.urlParams_.Set("accountId1", accountId1) - return c -} - // Fields allows partial responses to be retrieved. See // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse // for more information. @@ -5893,11 +5875,6 @@ func (c *AccountsCreativesUpdateCall) Do(opts ...googleapi.CallOption) (*Creativ // "required": true, // "type": "string" // }, - // "accountId1": { - // "description": "The account the creative belongs to.", - // "location": "query", - // "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", diff --git a/vendor/google.golang.org/api/adexchangeseller/v1.1/adexchangeseller-api.json b/vendor/google.golang.org/api/adexchangeseller/v1.1/adexchangeseller-api.json index 9dae67df8..2126e85af 100644 --- a/vendor/google.golang.org/api/adexchangeseller/v1.1/adexchangeseller-api.json +++ b/vendor/google.golang.org/api/adexchangeseller/v1.1/adexchangeseller-api.json @@ -1,1241 +1,1241 @@ { - "kind": "discovery#restDescription", - "etag": "\"YWOzh2SDasdU84ArJnpYek-OMdg/Dz_LMqDcbtnyBd4CwnrsbswCFU4\"", - "discoveryVersion": "v1", - "id": "adexchangeseller:v1.1", - "name": "adexchangeseller", - "canonicalName": "Ad Exchange Seller", - "version": "v1.1", - "revision": "20160805", - "title": "Ad Exchange Seller API", - "description": "Accesses the inventory of Ad Exchange seller users and generates reports.", - "ownerDomain": "google.com", - "ownerName": "Google", - "icons": { - "x16": "https://www.google.com/images/icons/product/doubleclick-16.gif", - "x32": "https://www.google.com/images/icons/product/doubleclick-32.gif" - }, - "documentationLink": "https://developers.google.com/ad-exchange/seller-rest/", - "protocol": "rest", - "baseUrl": "https://www.googleapis.com/adexchangeseller/v1.1/", - "basePath": "/adexchangeseller/v1.1/", - "rootUrl": "https://www.googleapis.com/", - "servicePath": "adexchangeseller/v1.1/", - "batchPath": "batch/adexchangeseller/v1.1", - "parameters": { - "alt": { - "type": "string", - "description": "Data format for the response.", - "default": "json", - "enum": [ - "csv", - "json" - ], - "enumDescriptions": [ - "Responses with Content-Type of text/csv", - "Responses with Content-Type of application/json" - ], - "location": "query" - }, - "fields": { - "type": "string", - "description": "Selector specifying which fields to include in a partial response.", - "location": "query" - }, - "key": { - "type": "string", - "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" - }, - "oauth_token": { - "type": "string", - "description": "OAuth 2.0 token for the current user.", - "location": "query" - }, - "prettyPrint": { - "type": "boolean", - "description": "Returns response with indentations and line breaks.", - "default": "true", - "location": "query" - }, - "quotaUser": { - "type": "string", - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", - "location": "query" - }, - "userIp": { - "type": "string", - "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", - "location": "query" - } - }, - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/adexchange.seller": { - "description": "View and manage your Ad Exchange data" - }, - "https://www.googleapis.com/auth/adexchange.seller.readonly": { - "description": "View your Ad Exchange data" - } - } - } - }, - "schemas": { - "Account": { - "id": "Account", - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Unique identifier of this account." - }, - "kind": { - "type": "string", - "description": "Kind of resource this is, in this case adexchangeseller#account.", - "default": "adexchangeseller#account" - }, - "name": { - "type": "string", - "description": "Name of this account." - } - } - }, - "AdClient": { - "id": "AdClient", - "type": "object", - "properties": { - "arcOptIn": { - "type": "boolean", - "description": "Whether this ad client is opted in to ARC." - }, - "id": { - "type": "string", - "description": "Unique identifier of this ad client." - }, - "kind": { - "type": "string", - "description": "Kind of resource this is, in this case adexchangeseller#adClient.", - "default": "adexchangeseller#adClient" - }, - "productCode": { - "type": "string", - "description": "This ad client's product code, which corresponds to the PRODUCT_CODE report dimension." - }, - "supportsReporting": { - "type": "boolean", - "description": "Whether this ad client supports being reported on." - } - } - }, - "AdClients": { - "id": "AdClients", - "type": "object", - "properties": { - "etag": { - "type": "string", - "description": "ETag of this response for caching purposes." - }, - "items": { - "type": "array", - "description": "The ad clients returned in this list response.", - "items": { - "$ref": "AdClient" - } - }, - "kind": { - "type": "string", - "description": "Kind of list this is, in this case adexchangeseller#adClients.", - "default": "adexchangeseller#adClients" - }, - "nextPageToken": { - "type": "string", - "description": "Continuation token used to page through ad clients. To retrieve the next page of results, set the next request's \"pageToken\" value to this." - } - } - }, - "AdUnit": { - "id": "AdUnit", - "type": "object", - "properties": { - "code": { - "type": "string", - "description": "Identity code of this ad unit, not necessarily unique across ad clients." - }, - "id": { - "type": "string", - "description": "Unique identifier of this ad unit. This should be considered an opaque identifier; it is not safe to rely on it being in any particular format." - }, - "kind": { - "type": "string", - "description": "Kind of resource this is, in this case adexchangeseller#adUnit.", - "default": "adexchangeseller#adUnit" - }, - "name": { - "type": "string", - "description": "Name of this ad unit." - }, - "status": { - "type": "string", - "description": "Status of this ad unit. Possible values are:\nNEW: Indicates that the ad unit was created within the last seven days and does not yet have any activity associated with it.\n\nACTIVE: Indicates that there has been activity on this ad unit in the last seven days.\n\nINACTIVE: Indicates that there has been no activity on this ad unit in the last seven days." - } - } - }, - "AdUnits": { - "id": "AdUnits", - "type": "object", - "properties": { - "etag": { - "type": "string", - "description": "ETag of this response for caching purposes." - }, - "items": { - "type": "array", - "description": "The ad units returned in this list response.", - "items": { - "$ref": "AdUnit" - } - }, - "kind": { - "type": "string", - "description": "Kind of list this is, in this case adexchangeseller#adUnits.", - "default": "adexchangeseller#adUnits" - }, - "nextPageToken": { - "type": "string", - "description": "Continuation token used to page through ad units. To retrieve the next page of results, set the next request's \"pageToken\" value to this." - } - } - }, - "Alert": { - "id": "Alert", - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Unique identifier of this alert. This should be considered an opaque identifier; it is not safe to rely on it being in any particular format." - }, - "kind": { - "type": "string", - "description": "Kind of resource this is, in this case adexchangeseller#alert.", - "default": "adexchangeseller#alert" - }, - "message": { - "type": "string", - "description": "The localized alert message." - }, - "severity": { - "type": "string", - "description": "Severity of this alert. Possible values: INFO, WARNING, SEVERE." - }, - "type": { - "type": "string", - "description": "Type of this alert. Possible values: SELF_HOLD, MIGRATED_TO_BILLING3, ADDRESS_PIN_VERIFICATION, PHONE_PIN_VERIFICATION, CORPORATE_ENTITY, GRAYLISTED_PUBLISHER, API_HOLD." - } - } - }, - "Alerts": { - "id": "Alerts", - "type": "object", - "properties": { - "items": { - "type": "array", - "description": "The alerts returned in this list response.", - "items": { - "$ref": "Alert" - } - }, - "kind": { - "type": "string", - "description": "Kind of list this is, in this case adexchangeseller#alerts.", - "default": "adexchangeseller#alerts" - } - } - }, - "CustomChannel": { - "id": "CustomChannel", - "type": "object", - "properties": { - "code": { - "type": "string", - "description": "Code of this custom channel, not necessarily unique across ad clients." - }, - "id": { - "type": "string", - "description": "Unique identifier of this custom channel. This should be considered an opaque identifier; it is not safe to rely on it being in any particular format." - }, - "kind": { - "type": "string", - "description": "Kind of resource this is, in this case adexchangeseller#customChannel.", - "default": "adexchangeseller#customChannel" - }, - "name": { - "type": "string", - "description": "Name of this custom channel." - }, - "targetingInfo": { - "type": "object", - "description": "The targeting information of this custom channel, if activated.", - "properties": { - "adsAppearOn": { - "type": "string", - "description": "The name used to describe this channel externally." - }, - "description": { - "type": "string", - "description": "The external description of the channel." - }, - "location": { - "type": "string", - "description": "The locations in which ads appear. (Only valid for content and mobile content ads). Acceptable values for content ads are: TOP_LEFT, TOP_CENTER, TOP_RIGHT, MIDDLE_LEFT, MIDDLE_CENTER, MIDDLE_RIGHT, BOTTOM_LEFT, BOTTOM_CENTER, BOTTOM_RIGHT, MULTIPLE_LOCATIONS. Acceptable values for mobile content ads are: TOP, MIDDLE, BOTTOM, MULTIPLE_LOCATIONS." - }, - "siteLanguage": { - "type": "string", - "description": "The language of the sites ads will be displayed on." - } - } - } - } - }, - "CustomChannels": { - "id": "CustomChannels", - "type": "object", - "properties": { - "etag": { - "type": "string", - "description": "ETag of this response for caching purposes." - }, - "items": { - "type": "array", - "description": "The custom channels returned in this list response.", - "items": { - "$ref": "CustomChannel" - } - }, - "kind": { - "type": "string", - "description": "Kind of list this is, in this case adexchangeseller#customChannels.", - "default": "adexchangeseller#customChannels" - }, - "nextPageToken": { - "type": "string", - "description": "Continuation token used to page through custom channels. To retrieve the next page of results, set the next request's \"pageToken\" value to this." - } - } - }, - "Metadata": { - "id": "Metadata", - "type": "object", - "properties": { - "items": { - "type": "array", - "items": { - "$ref": "ReportingMetadataEntry" - } - }, - "kind": { - "type": "string", - "description": "Kind of list this is, in this case adexchangeseller#metadata.", - "default": "adexchangeseller#metadata" - } - } - }, - "PreferredDeal": { - "id": "PreferredDeal", - "type": "object", - "properties": { - "advertiserName": { - "type": "string", - "description": "The name of the advertiser this deal is for." - }, - "buyerNetworkName": { - "type": "string", - "description": "The name of the buyer network this deal is for." - }, - "currencyCode": { - "type": "string", - "description": "The currency code that applies to the fixed_cpm value. If not set then assumed to be USD." - }, - "endTime": { - "type": "string", - "description": "Time when this deal stops being active in seconds since the epoch (GMT). If not set then this deal is valid until manually disabled by the publisher.", - "format": "uint64" - }, - "fixedCpm": { - "type": "string", - "description": "The fixed price for this preferred deal. In cpm micros of currency according to currencyCode. If set, then this preferred deal is eligible for the fixed price tier of buying (highest priority, pay exactly the configured fixed price).", - "format": "int64" - }, - "id": { - "type": "string", - "description": "Unique identifier of this preferred deal.", - "format": "int64" - }, - "kind": { - "type": "string", - "description": "Kind of resource this is, in this case adexchangeseller#preferredDeal.", - "default": "adexchangeseller#preferredDeal" - }, - "startTime": { - "type": "string", - "description": "Time when this deal becomes active in seconds since the epoch (GMT). If not set then this deal is active immediately upon creation.", - "format": "uint64" - } - } - }, - "PreferredDeals": { - "id": "PreferredDeals", - "type": "object", - "properties": { - "items": { - "type": "array", - "description": "The preferred deals returned in this list response.", - "items": { - "$ref": "PreferredDeal" - } - }, - "kind": { - "type": "string", - "description": "Kind of list this is, in this case adexchangeseller#preferredDeals.", - "default": "adexchangeseller#preferredDeals" - } - } - }, - "Report": { - "id": "Report", - "type": "object", - "properties": { - "averages": { - "type": "array", - "description": "The averages of the report. This is the same length as any other row in the report; cells corresponding to dimension columns are empty.", - "items": { - "type": "string" - } - }, - "headers": { - "type": "array", - "description": "The header information of the columns requested in the report. This is a list of headers; one for each dimension in the request, followed by one for each metric in the request.", - "items": { - "type": "object", - "properties": { - "currency": { - "type": "string", - "description": "The currency of this column. Only present if the header type is METRIC_CURRENCY." - }, - "name": { - "type": "string", - "description": "The name of the header." - }, - "type": { - "type": "string", - "description": "The type of the header; one of DIMENSION, METRIC_TALLY, METRIC_RATIO, or METRIC_CURRENCY." - } - } - } - }, - "kind": { - "type": "string", - "description": "Kind this is, in this case adexchangeseller#report.", - "default": "adexchangeseller#report" - }, - "rows": { - "type": "array", - "description": "The output rows of the report. Each row is a list of cells; one for each dimension in the request, followed by one for each metric in the request. The dimension cells contain strings, and the metric cells contain numbers.", - "items": { - "type": "array", - "items": { - "type": "string" - } - } - }, - "totalMatchedRows": { - "type": "string", - "description": "The total number of rows matched by the report request. Fewer rows may be returned in the response due to being limited by the row count requested or the report row limit.", - "format": "int64" - }, - "totals": { - "type": "array", - "description": "The totals of the report. This is the same length as any other row in the report; cells corresponding to dimension columns are empty.", - "items": { - "type": "string" - } - }, - "warnings": { - "type": "array", - "description": "Any warnings associated with generation of the report.", - "items": { - "type": "string" - } - } - } - }, - "ReportingMetadataEntry": { - "id": "ReportingMetadataEntry", - "type": "object", - "properties": { - "compatibleDimensions": { - "type": "array", - "description": "For metrics this is a list of dimension IDs which the metric is compatible with, for dimensions it is a list of compatibility groups the dimension belongs to.", - "items": { - "type": "string" - } - }, - "compatibleMetrics": { - "type": "array", - "description": "The names of the metrics the dimension or metric this reporting metadata entry describes is compatible with.", - "items": { - "type": "string" - } - }, - "id": { - "type": "string", - "description": "Unique identifier of this reporting metadata entry, corresponding to the name of the appropriate dimension or metric." - }, - "kind": { - "type": "string", - "description": "Kind of resource this is, in this case adexchangeseller#reportingMetadataEntry.", - "default": "adexchangeseller#reportingMetadataEntry" - }, - "requiredDimensions": { - "type": "array", - "description": "The names of the dimensions which the dimension or metric this reporting metadata entry describes requires to also be present in order for the report to be valid. Omitting these will not cause an error or warning, but may result in data which cannot be correctly interpreted.", - "items": { - "type": "string" - } - }, - "requiredMetrics": { - "type": "array", - "description": "The names of the metrics which the dimension or metric this reporting metadata entry describes requires to also be present in order for the report to be valid. Omitting these will not cause an error or warning, but may result in data which cannot be correctly interpreted.", - "items": { - "type": "string" - } - }, - "supportedProducts": { - "type": "array", - "description": "The codes of the projects supported by the dimension or metric this reporting metadata entry describes.", - "items": { - "type": "string" - } - } - } - }, - "SavedReport": { - "id": "SavedReport", - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Unique identifier of this saved report." - }, - "kind": { - "type": "string", - "description": "Kind of resource this is, in this case adexchangeseller#savedReport.", - "default": "adexchangeseller#savedReport" - }, - "name": { - "type": "string", - "description": "This saved report's name." - } - } - }, - "SavedReports": { - "id": "SavedReports", - "type": "object", - "properties": { - "etag": { - "type": "string", - "description": "ETag of this response for caching purposes." - }, - "items": { - "type": "array", - "description": "The saved reports returned in this list response.", - "items": { - "$ref": "SavedReport" - } - }, - "kind": { - "type": "string", - "description": "Kind of list this is, in this case adexchangeseller#savedReports.", - "default": "adexchangeseller#savedReports" - }, - "nextPageToken": { - "type": "string", - "description": "Continuation token used to page through saved reports. To retrieve the next page of results, set the next request's \"pageToken\" value to this." - } - } - }, - "UrlChannel": { - "id": "UrlChannel", - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Unique identifier of this URL channel. This should be considered an opaque identifier; it is not safe to rely on it being in any particular format." - }, - "kind": { - "type": "string", - "description": "Kind of resource this is, in this case adexchangeseller#urlChannel.", - "default": "adexchangeseller#urlChannel" - }, - "urlPattern": { - "type": "string", - "description": "URL Pattern of this URL channel. Does not include \"http://\" or \"https://\". Example: www.example.com/home" - } - } - }, - "UrlChannels": { - "id": "UrlChannels", - "type": "object", - "properties": { - "etag": { - "type": "string", - "description": "ETag of this response for caching purposes." - }, - "items": { - "type": "array", - "description": "The URL channels returned in this list response.", - "items": { - "$ref": "UrlChannel" - } - }, - "kind": { - "type": "string", - "description": "Kind of list this is, in this case adexchangeseller#urlChannels.", - "default": "adexchangeseller#urlChannels" - }, - "nextPageToken": { - "type": "string", - "description": "Continuation token used to page through URL channels. To retrieve the next page of results, set the next request's \"pageToken\" value to this." - } - } - } - }, - "resources": { - "accounts": { - "methods": { - "get": { - "id": "adexchangeseller.accounts.get", - "path": "accounts/{accountId}", - "httpMethod": "GET", - "description": "Get information about the selected Ad Exchange account.", - "parameters": { - "accountId": { - "type": "string", - "description": "Account to get information about. Tip: 'myaccount' is a valid ID.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "accountId" - ], - "response": { - "$ref": "Account" - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.seller", - "https://www.googleapis.com/auth/adexchange.seller.readonly" - ] - } - } - }, - "adclients": { - "methods": { - "list": { - "id": "adexchangeseller.adclients.list", - "path": "adclients", - "httpMethod": "GET", - "description": "List all ad clients in this Ad Exchange account.", - "parameters": { - "maxResults": { - "type": "integer", - "description": "The maximum number of ad clients to include in the response, used for paging.", - "format": "uint32", - "minimum": "0", - "maximum": "10000", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "A continuation token, used to page through ad clients. To retrieve the next page, set this parameter to the value of \"nextPageToken\" from the previous response.", - "location": "query" - } - }, - "response": { - "$ref": "AdClients" - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.seller", - "https://www.googleapis.com/auth/adexchange.seller.readonly" - ] - } - } - }, - "adunits": { - "methods": { - "get": { - "id": "adexchangeseller.adunits.get", - "path": "adclients/{adClientId}/adunits/{adUnitId}", - "httpMethod": "GET", - "description": "Gets the specified ad unit in the specified ad client.", - "parameters": { - "adClientId": { - "type": "string", - "description": "Ad client for which to get the ad unit.", - "required": true, - "location": "path" - }, - "adUnitId": { - "type": "string", - "description": "Ad unit to retrieve.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "adClientId", - "adUnitId" - ], - "response": { - "$ref": "AdUnit" - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.seller", - "https://www.googleapis.com/auth/adexchange.seller.readonly" - ] - }, - "list": { - "id": "adexchangeseller.adunits.list", - "path": "adclients/{adClientId}/adunits", - "httpMethod": "GET", - "description": "List all ad units in the specified ad client for this Ad Exchange account.", - "parameters": { - "adClientId": { - "type": "string", - "description": "Ad client for which to list ad units.", - "required": true, - "location": "path" - }, - "includeInactive": { - "type": "boolean", - "description": "Whether to include inactive ad units. Default: true.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of ad units to include in the response, used for paging.", - "format": "uint32", - "minimum": "0", - "maximum": "10000", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "A continuation token, used to page through ad units. To retrieve the next page, set this parameter to the value of \"nextPageToken\" from the previous response.", - "location": "query" - } - }, - "parameterOrder": [ - "adClientId" - ], - "response": { - "$ref": "AdUnits" - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.seller", - "https://www.googleapis.com/auth/adexchange.seller.readonly" - ] - } - }, - "resources": { - "customchannels": { - "methods": { - "list": { - "id": "adexchangeseller.adunits.customchannels.list", - "path": "adclients/{adClientId}/adunits/{adUnitId}/customchannels", - "httpMethod": "GET", - "description": "List all custom channels which the specified ad unit belongs to.", - "parameters": { - "adClientId": { - "type": "string", - "description": "Ad client which contains the ad unit.", - "required": true, - "location": "path" + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/adexchange.seller": { + "description": "View and manage your Ad Exchange data" }, - "adUnitId": { - "type": "string", - "description": "Ad unit for which to list custom channels.", - "required": true, - "location": "path" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of custom channels to include in the response, used for paging.", - "format": "uint32", - "minimum": "0", - "maximum": "10000", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "A continuation token, used to page through custom channels. To retrieve the next page, set this parameter to the value of \"nextPageToken\" from the previous response.", - "location": "query" + "https://www.googleapis.com/auth/adexchange.seller.readonly": { + "description": "View your Ad Exchange data" } - }, - "parameterOrder": [ - "adClientId", - "adUnitId" - ], - "response": { - "$ref": "CustomChannels" - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.seller", - "https://www.googleapis.com/auth/adexchange.seller.readonly" - ] } - } } - } }, - "alerts": { - "methods": { - "list": { - "id": "adexchangeseller.alerts.list", - "path": "alerts", - "httpMethod": "GET", - "description": "List the alerts for this Ad Exchange account.", - "parameters": { - "locale": { - "type": "string", - "description": "The locale to use for translating alert messages. The account locale will be used if this is not supplied. The AdSense default (English) will be used if the supplied locale is invalid or unsupported.", - "location": "query" - } - }, - "response": { - "$ref": "Alerts" - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.seller", - "https://www.googleapis.com/auth/adexchange.seller.readonly" - ] - } - } + "basePath": "/adexchangeseller/v1.1/", + "baseUrl": "https://www.googleapis.com/adexchangeseller/v1.1/", + "batchPath": "batch/adexchangeseller/v1.1", + "canonicalName": "Ad Exchange Seller", + "description": "Accesses the inventory of Ad Exchange seller users and generates reports.", + "discoveryVersion": "v1", + "documentationLink": "https://developers.google.com/ad-exchange/seller-rest/", + "etag": "\"-iA1DTNe4s-I6JZXPt1t1Ypy8IU/ptWrH6xTfYx9JmkFvi4WlT7efFk\"", + "icons": { + "x16": "https://www.google.com/images/icons/product/doubleclick-16.gif", + "x32": "https://www.google.com/images/icons/product/doubleclick-32.gif" }, - "customchannels": { - "methods": { - "get": { - "id": "adexchangeseller.customchannels.get", - "path": "adclients/{adClientId}/customchannels/{customChannelId}", - "httpMethod": "GET", - "description": "Get the specified custom channel from the specified ad client.", - "parameters": { - "adClientId": { - "type": "string", - "description": "Ad client which contains the custom channel.", - "required": true, - "location": "path" - }, - "customChannelId": { - "type": "string", - "description": "Custom channel to retrieve.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "adClientId", - "customChannelId" - ], - "response": { - "$ref": "CustomChannel" - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.seller", - "https://www.googleapis.com/auth/adexchange.seller.readonly" - ] + "id": "adexchangeseller:v1.1", + "kind": "discovery#restDescription", + "name": "adexchangeseller", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "alt": { + "default": "json", + "description": "Data format for the response.", + "enum": [ + "csv", + "json" + ], + "enumDescriptions": [ + "Responses with Content-Type of text/csv", + "Responses with Content-Type of application/json" + ], + "location": "query", + "type": "string" }, - "list": { - "id": "adexchangeseller.customchannels.list", - "path": "adclients/{adClientId}/customchannels", - "httpMethod": "GET", - "description": "List all custom channels in the specified ad client for this Ad Exchange account.", - "parameters": { - "adClientId": { - "type": "string", - "description": "Ad client for which to list custom channels.", - "required": true, - "location": "path" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of custom channels to include in the response, used for paging.", - "format": "uint32", - "minimum": "0", - "maximum": "10000", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "A continuation token, used to page through custom channels. To retrieve the next page, set this parameter to the value of \"nextPageToken\" from the previous response.", - "location": "query" - } - }, - "parameterOrder": [ - "adClientId" - ], - "response": { - "$ref": "CustomChannels" - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.seller", - "https://www.googleapis.com/auth/adexchange.seller.readonly" - ] + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "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.", + "location": "query", + "type": "string" + }, + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", + "location": "query", + "type": "string" + }, + "userIp": { + "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", + "location": "query", + "type": "string" } - }, - "resources": { + }, + "protocol": "rest", + "resources": { + "accounts": { + "methods": { + "get": { + "description": "Get information about the selected Ad Exchange account.", + "httpMethod": "GET", + "id": "adexchangeseller.accounts.get", + "parameterOrder": [ + "accountId" + ], + "parameters": { + "accountId": { + "description": "Account to get information about. Tip: 'myaccount' is a valid ID.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "accounts/{accountId}", + "response": { + "$ref": "Account" + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.seller", + "https://www.googleapis.com/auth/adexchange.seller.readonly" + ] + } + } + }, + "adclients": { + "methods": { + "list": { + "description": "List all ad clients in this Ad Exchange account.", + "httpMethod": "GET", + "id": "adexchangeseller.adclients.list", + "parameters": { + "maxResults": { + "description": "The maximum number of ad clients to include in the response, used for paging.", + "format": "uint32", + "location": "query", + "maximum": "10000", + "minimum": "0", + "type": "integer" + }, + "pageToken": { + "description": "A continuation token, used to page through ad clients. To retrieve the next page, set this parameter to the value of \"nextPageToken\" from the previous response.", + "location": "query", + "type": "string" + } + }, + "path": "adclients", + "response": { + "$ref": "AdClients" + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.seller", + "https://www.googleapis.com/auth/adexchange.seller.readonly" + ] + } + } + }, "adunits": { - "methods": { - "list": { - "id": "adexchangeseller.customchannels.adunits.list", - "path": "adclients/{adClientId}/customchannels/{customChannelId}/adunits", - "httpMethod": "GET", - "description": "List all ad units in the specified custom channel.", - "parameters": { - "adClientId": { - "type": "string", - "description": "Ad client which contains the custom channel.", - "required": true, - "location": "path" + "methods": { + "get": { + "description": "Gets the specified ad unit in the specified ad client.", + "httpMethod": "GET", + "id": "adexchangeseller.adunits.get", + "parameterOrder": [ + "adClientId", + "adUnitId" + ], + "parameters": { + "adClientId": { + "description": "Ad client for which to get the ad unit.", + "location": "path", + "required": true, + "type": "string" + }, + "adUnitId": { + "description": "Ad unit to retrieve.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "adclients/{adClientId}/adunits/{adUnitId}", + "response": { + "$ref": "AdUnit" + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.seller", + "https://www.googleapis.com/auth/adexchange.seller.readonly" + ] }, - "customChannelId": { - "type": "string", - "description": "Custom channel for which to list ad units.", - "required": true, - "location": "path" - }, - "includeInactive": { - "type": "boolean", - "description": "Whether to include inactive ad units. Default: true.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of ad units to include in the response, used for paging.", - "format": "uint32", - "minimum": "0", - "maximum": "10000", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "A continuation token, used to page through ad units. To retrieve the next page, set this parameter to the value of \"nextPageToken\" from the previous response.", - "location": "query" + "list": { + "description": "List all ad units in the specified ad client for this Ad Exchange account.", + "httpMethod": "GET", + "id": "adexchangeseller.adunits.list", + "parameterOrder": [ + "adClientId" + ], + "parameters": { + "adClientId": { + "description": "Ad client for which to list ad units.", + "location": "path", + "required": true, + "type": "string" + }, + "includeInactive": { + "description": "Whether to include inactive ad units. Default: true.", + "location": "query", + "type": "boolean" + }, + "maxResults": { + "description": "The maximum number of ad units to include in the response, used for paging.", + "format": "uint32", + "location": "query", + "maximum": "10000", + "minimum": "0", + "type": "integer" + }, + "pageToken": { + "description": "A continuation token, used to page through ad units. To retrieve the next page, set this parameter to the value of \"nextPageToken\" from the previous response.", + "location": "query", + "type": "string" + } + }, + "path": "adclients/{adClientId}/adunits", + "response": { + "$ref": "AdUnits" + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.seller", + "https://www.googleapis.com/auth/adexchange.seller.readonly" + ] + } + }, + "resources": { + "customchannels": { + "methods": { + "list": { + "description": "List all custom channels which the specified ad unit belongs to.", + "httpMethod": "GET", + "id": "adexchangeseller.adunits.customchannels.list", + "parameterOrder": [ + "adClientId", + "adUnitId" + ], + "parameters": { + "adClientId": { + "description": "Ad client which contains the ad unit.", + "location": "path", + "required": true, + "type": "string" + }, + "adUnitId": { + "description": "Ad unit for which to list custom channels.", + "location": "path", + "required": true, + "type": "string" + }, + "maxResults": { + "description": "The maximum number of custom channels to include in the response, used for paging.", + "format": "uint32", + "location": "query", + "maximum": "10000", + "minimum": "0", + "type": "integer" + }, + "pageToken": { + "description": "A continuation token, used to page through custom channels. To retrieve the next page, set this parameter to the value of \"nextPageToken\" from the previous response.", + "location": "query", + "type": "string" + } + }, + "path": "adclients/{adClientId}/adunits/{adUnitId}/customchannels", + "response": { + "$ref": "CustomChannels" + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.seller", + "https://www.googleapis.com/auth/adexchange.seller.readonly" + ] + } + } } - }, - "parameterOrder": [ - "adClientId", - "customChannelId" - ], - "response": { - "$ref": "AdUnits" - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.seller", - "https://www.googleapis.com/auth/adexchange.seller.readonly" - ] } - } - } - } - }, - "metadata": { - "resources": { - "dimensions": { - "methods": { - "list": { - "id": "adexchangeseller.metadata.dimensions.list", - "path": "metadata/dimensions", - "httpMethod": "GET", - "description": "List the metadata for the dimensions available to this AdExchange account.", - "response": { - "$ref": "Metadata" - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.seller", - "https://www.googleapis.com/auth/adexchange.seller.readonly" - ] - } - } }, - "metrics": { - "methods": { - "list": { - "id": "adexchangeseller.metadata.metrics.list", - "path": "metadata/metrics", - "httpMethod": "GET", - "description": "List the metadata for the metrics available to this AdExchange account.", - "response": { - "$ref": "Metadata" - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.seller", - "https://www.googleapis.com/auth/adexchange.seller.readonly" - ] + "alerts": { + "methods": { + "list": { + "description": "List the alerts for this Ad Exchange account.", + "httpMethod": "GET", + "id": "adexchangeseller.alerts.list", + "parameters": { + "locale": { + "description": "The locale to use for translating alert messages. The account locale will be used if this is not supplied. The AdSense default (English) will be used if the supplied locale is invalid or unsupported.", + "location": "query", + "type": "string" + } + }, + "path": "alerts", + "response": { + "$ref": "Alerts" + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.seller", + "https://www.googleapis.com/auth/adexchange.seller.readonly" + ] + } } - } - } - } - }, - "preferreddeals": { - "methods": { - "get": { - "id": "adexchangeseller.preferreddeals.get", - "path": "preferreddeals/{dealId}", - "httpMethod": "GET", - "description": "Get information about the selected Ad Exchange Preferred Deal.", - "parameters": { - "dealId": { - "type": "string", - "description": "Preferred deal to get information about.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "dealId" - ], - "response": { - "$ref": "PreferredDeal" - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.seller", - "https://www.googleapis.com/auth/adexchange.seller.readonly" - ] }, - "list": { - "id": "adexchangeseller.preferreddeals.list", - "path": "preferreddeals", - "httpMethod": "GET", - "description": "List the preferred deals for this Ad Exchange account.", - "response": { - "$ref": "PreferredDeals" - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.seller", - "https://www.googleapis.com/auth/adexchange.seller.readonly" - ] - } - } - }, - "reports": { - "methods": { - "generate": { - "id": "adexchangeseller.reports.generate", - "path": "reports", - "httpMethod": "GET", - "description": "Generate an Ad Exchange report based on the report request sent in the query parameters. Returns the result as JSON; to retrieve output in CSV format specify \"alt=csv\" as a query parameter.", - "parameters": { - "dimension": { - "type": "string", - "description": "Dimensions to base the report on.", - "pattern": "[a-zA-Z_]+", - "repeated": true, - "location": "query" - }, - "endDate": { - "type": "string", - "description": "End of the date range to report on in \"YYYY-MM-DD\" format, inclusive.", - "required": true, - "pattern": "\\d{4}-\\d{2}-\\d{2}|(today|startOfMonth|startOfYear)(([\\-\\+]\\d+[dwmy]){0,3}?)", - "location": "query" - }, - "filter": { - "type": "string", - "description": "Filters to be run on the report.", - "pattern": "[a-zA-Z_]+(==|=@).+", - "repeated": true, - "location": "query" - }, - "locale": { - "type": "string", - "description": "Optional locale to use for translating report output to a local language. Defaults to \"en_US\" if not specified.", - "pattern": "[a-zA-Z_]+", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of rows of report data to return.", - "format": "uint32", - "minimum": "0", - "maximum": "50000", - "location": "query" - }, - "metric": { - "type": "string", - "description": "Numeric columns to include in the report.", - "pattern": "[a-zA-Z_]+", - "repeated": true, - "location": "query" - }, - "sort": { - "type": "string", - "description": "The name of a dimension or metric to sort the resulting report on, optionally prefixed with \"+\" to sort ascending or \"-\" to sort descending. If no prefix is specified, the column is sorted ascending.", - "pattern": "(\\+|-)?[a-zA-Z_]+", - "repeated": true, - "location": "query" - }, - "startDate": { - "type": "string", - "description": "Start of the date range to report on in \"YYYY-MM-DD\" format, inclusive.", - "required": true, - "pattern": "\\d{4}-\\d{2}-\\d{2}|(today|startOfMonth|startOfYear)(([\\-\\+]\\d+[dwmy]){0,3}?)", - "location": "query" - }, - "startIndex": { - "type": "integer", - "description": "Index of the first row of report data to return.", - "format": "uint32", - "minimum": "0", - "maximum": "5000", - "location": "query" - } - }, - "parameterOrder": [ - "startDate", - "endDate" - ], - "response": { - "$ref": "Report" - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.seller", - "https://www.googleapis.com/auth/adexchange.seller.readonly" - ], - "supportsMediaDownload": true - } - }, - "resources": { - "saved": { - "methods": { - "generate": { - "id": "adexchangeseller.reports.saved.generate", - "path": "reports/{savedReportId}", - "httpMethod": "GET", - "description": "Generate an Ad Exchange report based on the saved report ID sent in the query parameters.", - "parameters": { - "locale": { - "type": "string", - "description": "Optional locale to use for translating report output to a local language. Defaults to \"en_US\" if not specified.", - "pattern": "[a-zA-Z_]+", - "location": "query" + "customchannels": { + "methods": { + "get": { + "description": "Get the specified custom channel from the specified ad client.", + "httpMethod": "GET", + "id": "adexchangeseller.customchannels.get", + "parameterOrder": [ + "adClientId", + "customChannelId" + ], + "parameters": { + "adClientId": { + "description": "Ad client which contains the custom channel.", + "location": "path", + "required": true, + "type": "string" + }, + "customChannelId": { + "description": "Custom channel to retrieve.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "adclients/{adClientId}/customchannels/{customChannelId}", + "response": { + "$ref": "CustomChannel" + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.seller", + "https://www.googleapis.com/auth/adexchange.seller.readonly" + ] }, - "maxResults": { - "type": "integer", - "description": "The maximum number of rows of report data to return.", - "format": "int32", - "minimum": "0", - "maximum": "50000", - "location": "query" - }, - "savedReportId": { - "type": "string", - "description": "The saved report to retrieve.", - "required": true, - "location": "path" - }, - "startIndex": { - "type": "integer", - "description": "Index of the first row of report data to return.", - "format": "int32", - "minimum": "0", - "maximum": "5000", - "location": "query" + "list": { + "description": "List all custom channels in the specified ad client for this Ad Exchange account.", + "httpMethod": "GET", + "id": "adexchangeseller.customchannels.list", + "parameterOrder": [ + "adClientId" + ], + "parameters": { + "adClientId": { + "description": "Ad client for which to list custom channels.", + "location": "path", + "required": true, + "type": "string" + }, + "maxResults": { + "description": "The maximum number of custom channels to include in the response, used for paging.", + "format": "uint32", + "location": "query", + "maximum": "10000", + "minimum": "0", + "type": "integer" + }, + "pageToken": { + "description": "A continuation token, used to page through custom channels. To retrieve the next page, set this parameter to the value of \"nextPageToken\" from the previous response.", + "location": "query", + "type": "string" + } + }, + "path": "adclients/{adClientId}/customchannels", + "response": { + "$ref": "CustomChannels" + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.seller", + "https://www.googleapis.com/auth/adexchange.seller.readonly" + ] } - }, - "parameterOrder": [ - "savedReportId" - ], - "response": { - "$ref": "Report" - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.seller", - "https://www.googleapis.com/auth/adexchange.seller.readonly" - ] }, - "list": { - "id": "adexchangeseller.reports.saved.list", - "path": "reports/saved", - "httpMethod": "GET", - "description": "List all saved reports in this Ad Exchange account.", - "parameters": { - "maxResults": { - "type": "integer", - "description": "The maximum number of saved reports to include in the response, used for paging.", - "format": "int32", - "minimum": "0", - "maximum": "100", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "A continuation token, used to page through saved reports. To retrieve the next page, set this parameter to the value of \"nextPageToken\" from the previous response.", - "location": "query" + "resources": { + "adunits": { + "methods": { + "list": { + "description": "List all ad units in the specified custom channel.", + "httpMethod": "GET", + "id": "adexchangeseller.customchannels.adunits.list", + "parameterOrder": [ + "adClientId", + "customChannelId" + ], + "parameters": { + "adClientId": { + "description": "Ad client which contains the custom channel.", + "location": "path", + "required": true, + "type": "string" + }, + "customChannelId": { + "description": "Custom channel for which to list ad units.", + "location": "path", + "required": true, + "type": "string" + }, + "includeInactive": { + "description": "Whether to include inactive ad units. Default: true.", + "location": "query", + "type": "boolean" + }, + "maxResults": { + "description": "The maximum number of ad units to include in the response, used for paging.", + "format": "uint32", + "location": "query", + "maximum": "10000", + "minimum": "0", + "type": "integer" + }, + "pageToken": { + "description": "A continuation token, used to page through ad units. To retrieve the next page, set this parameter to the value of \"nextPageToken\" from the previous response.", + "location": "query", + "type": "string" + } + }, + "path": "adclients/{adClientId}/customchannels/{customChannelId}/adunits", + "response": { + "$ref": "AdUnits" + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.seller", + "https://www.googleapis.com/auth/adexchange.seller.readonly" + ] + } + } + } + } + }, + "metadata": { + "resources": { + "dimensions": { + "methods": { + "list": { + "description": "List the metadata for the dimensions available to this AdExchange account.", + "httpMethod": "GET", + "id": "adexchangeseller.metadata.dimensions.list", + "path": "metadata/dimensions", + "response": { + "$ref": "Metadata" + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.seller", + "https://www.googleapis.com/auth/adexchange.seller.readonly" + ] + } + } + }, + "metrics": { + "methods": { + "list": { + "description": "List the metadata for the metrics available to this AdExchange account.", + "httpMethod": "GET", + "id": "adexchangeseller.metadata.metrics.list", + "path": "metadata/metrics", + "response": { + "$ref": "Metadata" + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.seller", + "https://www.googleapis.com/auth/adexchange.seller.readonly" + ] + } + } + } + } + }, + "preferreddeals": { + "methods": { + "get": { + "description": "Get information about the selected Ad Exchange Preferred Deal.", + "httpMethod": "GET", + "id": "adexchangeseller.preferreddeals.get", + "parameterOrder": [ + "dealId" + ], + "parameters": { + "dealId": { + "description": "Preferred deal to get information about.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "preferreddeals/{dealId}", + "response": { + "$ref": "PreferredDeal" + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.seller", + "https://www.googleapis.com/auth/adexchange.seller.readonly" + ] + }, + "list": { + "description": "List the preferred deals for this Ad Exchange account.", + "httpMethod": "GET", + "id": "adexchangeseller.preferreddeals.list", + "path": "preferreddeals", + "response": { + "$ref": "PreferredDeals" + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.seller", + "https://www.googleapis.com/auth/adexchange.seller.readonly" + ] + } + } + }, + "reports": { + "methods": { + "generate": { + "description": "Generate an Ad Exchange report based on the report request sent in the query parameters. Returns the result as JSON; to retrieve output in CSV format specify \"alt=csv\" as a query parameter.", + "httpMethod": "GET", + "id": "adexchangeseller.reports.generate", + "parameterOrder": [ + "startDate", + "endDate" + ], + "parameters": { + "dimension": { + "description": "Dimensions to base the report on.", + "location": "query", + "pattern": "[a-zA-Z_]+", + "repeated": true, + "type": "string" + }, + "endDate": { + "description": "End of the date range to report on in \"YYYY-MM-DD\" format, inclusive.", + "location": "query", + "pattern": "\\d{4}-\\d{2}-\\d{2}|(today|startOfMonth|startOfYear)(([\\-\\+]\\d+[dwmy]){0,3}?)", + "required": true, + "type": "string" + }, + "filter": { + "description": "Filters to be run on the report.", + "location": "query", + "pattern": "[a-zA-Z_]+(==|=@).+", + "repeated": true, + "type": "string" + }, + "locale": { + "description": "Optional locale to use for translating report output to a local language. Defaults to \"en_US\" if not specified.", + "location": "query", + "pattern": "[a-zA-Z_]+", + "type": "string" + }, + "maxResults": { + "description": "The maximum number of rows of report data to return.", + "format": "uint32", + "location": "query", + "maximum": "50000", + "minimum": "0", + "type": "integer" + }, + "metric": { + "description": "Numeric columns to include in the report.", + "location": "query", + "pattern": "[a-zA-Z_]+", + "repeated": true, + "type": "string" + }, + "sort": { + "description": "The name of a dimension or metric to sort the resulting report on, optionally prefixed with \"+\" to sort ascending or \"-\" to sort descending. If no prefix is specified, the column is sorted ascending.", + "location": "query", + "pattern": "(\\+|-)?[a-zA-Z_]+", + "repeated": true, + "type": "string" + }, + "startDate": { + "description": "Start of the date range to report on in \"YYYY-MM-DD\" format, inclusive.", + "location": "query", + "pattern": "\\d{4}-\\d{2}-\\d{2}|(today|startOfMonth|startOfYear)(([\\-\\+]\\d+[dwmy]){0,3}?)", + "required": true, + "type": "string" + }, + "startIndex": { + "description": "Index of the first row of report data to return.", + "format": "uint32", + "location": "query", + "maximum": "5000", + "minimum": "0", + "type": "integer" + } + }, + "path": "reports", + "response": { + "$ref": "Report" + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.seller", + "https://www.googleapis.com/auth/adexchange.seller.readonly" + ], + "supportsMediaDownload": true + } + }, + "resources": { + "saved": { + "methods": { + "generate": { + "description": "Generate an Ad Exchange report based on the saved report ID sent in the query parameters.", + "httpMethod": "GET", + "id": "adexchangeseller.reports.saved.generate", + "parameterOrder": [ + "savedReportId" + ], + "parameters": { + "locale": { + "description": "Optional locale to use for translating report output to a local language. Defaults to \"en_US\" if not specified.", + "location": "query", + "pattern": "[a-zA-Z_]+", + "type": "string" + }, + "maxResults": { + "description": "The maximum number of rows of report data to return.", + "format": "int32", + "location": "query", + "maximum": "50000", + "minimum": "0", + "type": "integer" + }, + "savedReportId": { + "description": "The saved report to retrieve.", + "location": "path", + "required": true, + "type": "string" + }, + "startIndex": { + "description": "Index of the first row of report data to return.", + "format": "int32", + "location": "query", + "maximum": "5000", + "minimum": "0", + "type": "integer" + } + }, + "path": "reports/{savedReportId}", + "response": { + "$ref": "Report" + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.seller", + "https://www.googleapis.com/auth/adexchange.seller.readonly" + ] + }, + "list": { + "description": "List all saved reports in this Ad Exchange account.", + "httpMethod": "GET", + "id": "adexchangeseller.reports.saved.list", + "parameters": { + "maxResults": { + "description": "The maximum number of saved reports to include in the response, used for paging.", + "format": "int32", + "location": "query", + "maximum": "100", + "minimum": "0", + "type": "integer" + }, + "pageToken": { + "description": "A continuation token, used to page through saved reports. To retrieve the next page, set this parameter to the value of \"nextPageToken\" from the previous response.", + "location": "query", + "type": "string" + } + }, + "path": "reports/saved", + "response": { + "$ref": "SavedReports" + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.seller", + "https://www.googleapis.com/auth/adexchange.seller.readonly" + ] + } + } + } + } + }, + "urlchannels": { + "methods": { + "list": { + "description": "List all URL channels in the specified ad client for this Ad Exchange account.", + "httpMethod": "GET", + "id": "adexchangeseller.urlchannels.list", + "parameterOrder": [ + "adClientId" + ], + "parameters": { + "adClientId": { + "description": "Ad client for which to list URL channels.", + "location": "path", + "required": true, + "type": "string" + }, + "maxResults": { + "description": "The maximum number of URL channels to include in the response, used for paging.", + "format": "uint32", + "location": "query", + "maximum": "10000", + "minimum": "0", + "type": "integer" + }, + "pageToken": { + "description": "A continuation token, used to page through URL channels. To retrieve the next page, set this parameter to the value of \"nextPageToken\" from the previous response.", + "location": "query", + "type": "string" + } + }, + "path": "adclients/{adClientId}/urlchannels", + "response": { + "$ref": "UrlChannels" + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.seller", + "https://www.googleapis.com/auth/adexchange.seller.readonly" + ] } - }, - "response": { - "$ref": "SavedReports" - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.seller", - "https://www.googleapis.com/auth/adexchange.seller.readonly" - ] } - } } - } }, - "urlchannels": { - "methods": { - "list": { - "id": "adexchangeseller.urlchannels.list", - "path": "adclients/{adClientId}/urlchannels", - "httpMethod": "GET", - "description": "List all URL channels in the specified ad client for this Ad Exchange account.", - "parameters": { - "adClientId": { - "type": "string", - "description": "Ad client for which to list URL channels.", - "required": true, - "location": "path" + "revision": "20171101", + "rootUrl": "https://www.googleapis.com/", + "schemas": { + "Account": { + "id": "Account", + "properties": { + "id": { + "description": "Unique identifier of this account.", + "type": "string" + }, + "kind": { + "default": "adexchangeseller#account", + "description": "Kind of resource this is, in this case adexchangeseller#account.", + "type": "string" + }, + "name": { + "description": "Name of this account.", + "type": "string" + } }, - "maxResults": { - "type": "integer", - "description": "The maximum number of URL channels to include in the response, used for paging.", - "format": "uint32", - "minimum": "0", - "maximum": "10000", - "location": "query" + "type": "object" + }, + "AdClient": { + "id": "AdClient", + "properties": { + "arcOptIn": { + "description": "Whether this ad client is opted in to ARC.", + "type": "boolean" + }, + "id": { + "description": "Unique identifier of this ad client.", + "type": "string" + }, + "kind": { + "default": "adexchangeseller#adClient", + "description": "Kind of resource this is, in this case adexchangeseller#adClient.", + "type": "string" + }, + "productCode": { + "description": "This ad client's product code, which corresponds to the PRODUCT_CODE report dimension.", + "type": "string" + }, + "supportsReporting": { + "description": "Whether this ad client supports being reported on.", + "type": "boolean" + } }, - "pageToken": { - "type": "string", - "description": "A continuation token, used to page through URL channels. To retrieve the next page, set this parameter to the value of \"nextPageToken\" from the previous response.", - "location": "query" - } - }, - "parameterOrder": [ - "adClientId" - ], - "response": { - "$ref": "UrlChannels" - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.seller", - "https://www.googleapis.com/auth/adexchange.seller.readonly" - ] + "type": "object" + }, + "AdClients": { + "id": "AdClients", + "properties": { + "etag": { + "description": "ETag of this response for caching purposes.", + "type": "string" + }, + "items": { + "description": "The ad clients returned in this list response.", + "items": { + "$ref": "AdClient" + }, + "type": "array" + }, + "kind": { + "default": "adexchangeseller#adClients", + "description": "Kind of list this is, in this case adexchangeseller#adClients.", + "type": "string" + }, + "nextPageToken": { + "description": "Continuation token used to page through ad clients. To retrieve the next page of results, set the next request's \"pageToken\" value to this.", + "type": "string" + } + }, + "type": "object" + }, + "AdUnit": { + "id": "AdUnit", + "properties": { + "code": { + "description": "Identity code of this ad unit, not necessarily unique across ad clients.", + "type": "string" + }, + "id": { + "description": "Unique identifier of this ad unit. This should be considered an opaque identifier; it is not safe to rely on it being in any particular format.", + "type": "string" + }, + "kind": { + "default": "adexchangeseller#adUnit", + "description": "Kind of resource this is, in this case adexchangeseller#adUnit.", + "type": "string" + }, + "name": { + "description": "Name of this ad unit.", + "type": "string" + }, + "status": { + "description": "Status of this ad unit. Possible values are:\nNEW: Indicates that the ad unit was created within the last seven days and does not yet have any activity associated with it.\n\nACTIVE: Indicates that there has been activity on this ad unit in the last seven days.\n\nINACTIVE: Indicates that there has been no activity on this ad unit in the last seven days.", + "type": "string" + } + }, + "type": "object" + }, + "AdUnits": { + "id": "AdUnits", + "properties": { + "etag": { + "description": "ETag of this response for caching purposes.", + "type": "string" + }, + "items": { + "description": "The ad units returned in this list response.", + "items": { + "$ref": "AdUnit" + }, + "type": "array" + }, + "kind": { + "default": "adexchangeseller#adUnits", + "description": "Kind of list this is, in this case adexchangeseller#adUnits.", + "type": "string" + }, + "nextPageToken": { + "description": "Continuation token used to page through ad units. To retrieve the next page of results, set the next request's \"pageToken\" value to this.", + "type": "string" + } + }, + "type": "object" + }, + "Alert": { + "id": "Alert", + "properties": { + "id": { + "description": "Unique identifier of this alert. This should be considered an opaque identifier; it is not safe to rely on it being in any particular format.", + "type": "string" + }, + "kind": { + "default": "adexchangeseller#alert", + "description": "Kind of resource this is, in this case adexchangeseller#alert.", + "type": "string" + }, + "message": { + "description": "The localized alert message.", + "type": "string" + }, + "severity": { + "description": "Severity of this alert. Possible values: INFO, WARNING, SEVERE.", + "type": "string" + }, + "type": { + "description": "Type of this alert. Possible values: SELF_HOLD, MIGRATED_TO_BILLING3, ADDRESS_PIN_VERIFICATION, PHONE_PIN_VERIFICATION, CORPORATE_ENTITY, GRAYLISTED_PUBLISHER, API_HOLD.", + "type": "string" + } + }, + "type": "object" + }, + "Alerts": { + "id": "Alerts", + "properties": { + "items": { + "description": "The alerts returned in this list response.", + "items": { + "$ref": "Alert" + }, + "type": "array" + }, + "kind": { + "default": "adexchangeseller#alerts", + "description": "Kind of list this is, in this case adexchangeseller#alerts.", + "type": "string" + } + }, + "type": "object" + }, + "CustomChannel": { + "id": "CustomChannel", + "properties": { + "code": { + "description": "Code of this custom channel, not necessarily unique across ad clients.", + "type": "string" + }, + "id": { + "description": "Unique identifier of this custom channel. This should be considered an opaque identifier; it is not safe to rely on it being in any particular format.", + "type": "string" + }, + "kind": { + "default": "adexchangeseller#customChannel", + "description": "Kind of resource this is, in this case adexchangeseller#customChannel.", + "type": "string" + }, + "name": { + "description": "Name of this custom channel.", + "type": "string" + }, + "targetingInfo": { + "description": "The targeting information of this custom channel, if activated.", + "properties": { + "adsAppearOn": { + "description": "The name used to describe this channel externally.", + "type": "string" + }, + "description": { + "description": "The external description of the channel.", + "type": "string" + }, + "location": { + "description": "The locations in which ads appear. (Only valid for content and mobile content ads). Acceptable values for content ads are: TOP_LEFT, TOP_CENTER, TOP_RIGHT, MIDDLE_LEFT, MIDDLE_CENTER, MIDDLE_RIGHT, BOTTOM_LEFT, BOTTOM_CENTER, BOTTOM_RIGHT, MULTIPLE_LOCATIONS. Acceptable values for mobile content ads are: TOP, MIDDLE, BOTTOM, MULTIPLE_LOCATIONS.", + "type": "string" + }, + "siteLanguage": { + "description": "The language of the sites ads will be displayed on.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "CustomChannels": { + "id": "CustomChannels", + "properties": { + "etag": { + "description": "ETag of this response for caching purposes.", + "type": "string" + }, + "items": { + "description": "The custom channels returned in this list response.", + "items": { + "$ref": "CustomChannel" + }, + "type": "array" + }, + "kind": { + "default": "adexchangeseller#customChannels", + "description": "Kind of list this is, in this case adexchangeseller#customChannels.", + "type": "string" + }, + "nextPageToken": { + "description": "Continuation token used to page through custom channels. To retrieve the next page of results, set the next request's \"pageToken\" value to this.", + "type": "string" + } + }, + "type": "object" + }, + "Metadata": { + "id": "Metadata", + "properties": { + "items": { + "items": { + "$ref": "ReportingMetadataEntry" + }, + "type": "array" + }, + "kind": { + "default": "adexchangeseller#metadata", + "description": "Kind of list this is, in this case adexchangeseller#metadata.", + "type": "string" + } + }, + "type": "object" + }, + "PreferredDeal": { + "id": "PreferredDeal", + "properties": { + "advertiserName": { + "description": "The name of the advertiser this deal is for.", + "type": "string" + }, + "buyerNetworkName": { + "description": "The name of the buyer network this deal is for.", + "type": "string" + }, + "currencyCode": { + "description": "The currency code that applies to the fixed_cpm value. If not set then assumed to be USD.", + "type": "string" + }, + "endTime": { + "description": "Time when this deal stops being active in seconds since the epoch (GMT). If not set then this deal is valid until manually disabled by the publisher.", + "format": "uint64", + "type": "string" + }, + "fixedCpm": { + "description": "The fixed price for this preferred deal. In cpm micros of currency according to currencyCode. If set, then this preferred deal is eligible for the fixed price tier of buying (highest priority, pay exactly the configured fixed price).", + "format": "int64", + "type": "string" + }, + "id": { + "description": "Unique identifier of this preferred deal.", + "format": "int64", + "type": "string" + }, + "kind": { + "default": "adexchangeseller#preferredDeal", + "description": "Kind of resource this is, in this case adexchangeseller#preferredDeal.", + "type": "string" + }, + "startTime": { + "description": "Time when this deal becomes active in seconds since the epoch (GMT). If not set then this deal is active immediately upon creation.", + "format": "uint64", + "type": "string" + } + }, + "type": "object" + }, + "PreferredDeals": { + "id": "PreferredDeals", + "properties": { + "items": { + "description": "The preferred deals returned in this list response.", + "items": { + "$ref": "PreferredDeal" + }, + "type": "array" + }, + "kind": { + "default": "adexchangeseller#preferredDeals", + "description": "Kind of list this is, in this case adexchangeseller#preferredDeals.", + "type": "string" + } + }, + "type": "object" + }, + "Report": { + "id": "Report", + "properties": { + "averages": { + "description": "The averages of the report. This is the same length as any other row in the report; cells corresponding to dimension columns are empty.", + "items": { + "type": "string" + }, + "type": "array" + }, + "headers": { + "description": "The header information of the columns requested in the report. This is a list of headers; one for each dimension in the request, followed by one for each metric in the request.", + "items": { + "properties": { + "currency": { + "description": "The currency of this column. Only present if the header type is METRIC_CURRENCY.", + "type": "string" + }, + "name": { + "description": "The name of the header.", + "type": "string" + }, + "type": { + "description": "The type of the header; one of DIMENSION, METRIC_TALLY, METRIC_RATIO, or METRIC_CURRENCY.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "kind": { + "default": "adexchangeseller#report", + "description": "Kind this is, in this case adexchangeseller#report.", + "type": "string" + }, + "rows": { + "description": "The output rows of the report. Each row is a list of cells; one for each dimension in the request, followed by one for each metric in the request. The dimension cells contain strings, and the metric cells contain numbers.", + "items": { + "items": { + "type": "string" + }, + "type": "array" + }, + "type": "array" + }, + "totalMatchedRows": { + "description": "The total number of rows matched by the report request. Fewer rows may be returned in the response due to being limited by the row count requested or the report row limit.", + "format": "int64", + "type": "string" + }, + "totals": { + "description": "The totals of the report. This is the same length as any other row in the report; cells corresponding to dimension columns are empty.", + "items": { + "type": "string" + }, + "type": "array" + }, + "warnings": { + "description": "Any warnings associated with generation of the report.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "ReportingMetadataEntry": { + "id": "ReportingMetadataEntry", + "properties": { + "compatibleDimensions": { + "description": "For metrics this is a list of dimension IDs which the metric is compatible with, for dimensions it is a list of compatibility groups the dimension belongs to.", + "items": { + "type": "string" + }, + "type": "array" + }, + "compatibleMetrics": { + "description": "The names of the metrics the dimension or metric this reporting metadata entry describes is compatible with.", + "items": { + "type": "string" + }, + "type": "array" + }, + "id": { + "description": "Unique identifier of this reporting metadata entry, corresponding to the name of the appropriate dimension or metric.", + "type": "string" + }, + "kind": { + "default": "adexchangeseller#reportingMetadataEntry", + "description": "Kind of resource this is, in this case adexchangeseller#reportingMetadataEntry.", + "type": "string" + }, + "requiredDimensions": { + "description": "The names of the dimensions which the dimension or metric this reporting metadata entry describes requires to also be present in order for the report to be valid. Omitting these will not cause an error or warning, but may result in data which cannot be correctly interpreted.", + "items": { + "type": "string" + }, + "type": "array" + }, + "requiredMetrics": { + "description": "The names of the metrics which the dimension or metric this reporting metadata entry describes requires to also be present in order for the report to be valid. Omitting these will not cause an error or warning, but may result in data which cannot be correctly interpreted.", + "items": { + "type": "string" + }, + "type": "array" + }, + "supportedProducts": { + "description": "The codes of the projects supported by the dimension or metric this reporting metadata entry describes.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "SavedReport": { + "id": "SavedReport", + "properties": { + "id": { + "description": "Unique identifier of this saved report.", + "type": "string" + }, + "kind": { + "default": "adexchangeseller#savedReport", + "description": "Kind of resource this is, in this case adexchangeseller#savedReport.", + "type": "string" + }, + "name": { + "description": "This saved report's name.", + "type": "string" + } + }, + "type": "object" + }, + "SavedReports": { + "id": "SavedReports", + "properties": { + "etag": { + "description": "ETag of this response for caching purposes.", + "type": "string" + }, + "items": { + "description": "The saved reports returned in this list response.", + "items": { + "$ref": "SavedReport" + }, + "type": "array" + }, + "kind": { + "default": "adexchangeseller#savedReports", + "description": "Kind of list this is, in this case adexchangeseller#savedReports.", + "type": "string" + }, + "nextPageToken": { + "description": "Continuation token used to page through saved reports. To retrieve the next page of results, set the next request's \"pageToken\" value to this.", + "type": "string" + } + }, + "type": "object" + }, + "UrlChannel": { + "id": "UrlChannel", + "properties": { + "id": { + "description": "Unique identifier of this URL channel. This should be considered an opaque identifier; it is not safe to rely on it being in any particular format.", + "type": "string" + }, + "kind": { + "default": "adexchangeseller#urlChannel", + "description": "Kind of resource this is, in this case adexchangeseller#urlChannel.", + "type": "string" + }, + "urlPattern": { + "description": "URL Pattern of this URL channel. Does not include \"http://\" or \"https://\". Example: www.example.com/home", + "type": "string" + } + }, + "type": "object" + }, + "UrlChannels": { + "id": "UrlChannels", + "properties": { + "etag": { + "description": "ETag of this response for caching purposes.", + "type": "string" + }, + "items": { + "description": "The URL channels returned in this list response.", + "items": { + "$ref": "UrlChannel" + }, + "type": "array" + }, + "kind": { + "default": "adexchangeseller#urlChannels", + "description": "Kind of list this is, in this case adexchangeseller#urlChannels.", + "type": "string" + }, + "nextPageToken": { + "description": "Continuation token used to page through URL channels. To retrieve the next page of results, set the next request's \"pageToken\" value to this.", + "type": "string" + } + }, + "type": "object" } - } - } - } -} + }, + "servicePath": "adexchangeseller/v1.1/", + "title": "Ad Exchange Seller API", + "version": "v1.1" +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/adexchangeseller/v1/adexchangeseller-api.json b/vendor/google.golang.org/api/adexchangeseller/v1/adexchangeseller-api.json index 19545cba9..30fc0e9bf 100644 --- a/vendor/google.golang.org/api/adexchangeseller/v1/adexchangeseller-api.json +++ b/vendor/google.golang.org/api/adexchangeseller/v1/adexchangeseller-api.json @@ -1,918 +1,918 @@ { - "kind": "discovery#restDescription", - "etag": "\"YWOzh2SDasdU84ArJnpYek-OMdg/EberIAMM9RntL16aqUh0FmyQxWY\"", - "discoveryVersion": "v1", - "id": "adexchangeseller:v1", - "name": "adexchangeseller", - "canonicalName": "Ad Exchange Seller", - "version": "v1", - "revision": "20160805", - "title": "Ad Exchange Seller API", - "description": "Accesses the inventory of Ad Exchange seller users and generates reports.", - "ownerDomain": "google.com", - "ownerName": "Google", - "icons": { - "x16": "https://www.google.com/images/icons/product/doubleclick-16.gif", - "x32": "https://www.google.com/images/icons/product/doubleclick-32.gif" - }, - "documentationLink": "https://developers.google.com/ad-exchange/seller-rest/", - "protocol": "rest", - "baseUrl": "https://www.googleapis.com/adexchangeseller/v1/", - "basePath": "/adexchangeseller/v1/", - "rootUrl": "https://www.googleapis.com/", - "servicePath": "adexchangeseller/v1/", - "batchPath": "batch/adexchangeseller/v1", - "parameters": { - "alt": { - "type": "string", - "description": "Data format for the response.", - "default": "json", - "enum": [ - "csv", - "json" - ], - "enumDescriptions": [ - "Responses with Content-Type of text/csv", - "Responses with Content-Type of application/json" - ], - "location": "query" - }, - "fields": { - "type": "string", - "description": "Selector specifying which fields to include in a partial response.", - "location": "query" - }, - "key": { - "type": "string", - "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" - }, - "oauth_token": { - "type": "string", - "description": "OAuth 2.0 token for the current user.", - "location": "query" - }, - "prettyPrint": { - "type": "boolean", - "description": "Returns response with indentations and line breaks.", - "default": "true", - "location": "query" - }, - "quotaUser": { - "type": "string", - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", - "location": "query" - }, - "userIp": { - "type": "string", - "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", - "location": "query" - } - }, - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/adexchange.seller": { - "description": "View and manage your Ad Exchange data" - }, - "https://www.googleapis.com/auth/adexchange.seller.readonly": { - "description": "View your Ad Exchange data" - } - } - } - }, - "schemas": { - "AdClient": { - "id": "AdClient", - "type": "object", - "properties": { - "arcOptIn": { - "type": "boolean", - "description": "Whether this ad client is opted in to ARC." - }, - "id": { - "type": "string", - "description": "Unique identifier of this ad client." - }, - "kind": { - "type": "string", - "description": "Kind of resource this is, in this case adexchangeseller#adClient.", - "default": "adexchangeseller#adClient" - }, - "productCode": { - "type": "string", - "description": "This ad client's product code, which corresponds to the PRODUCT_CODE report dimension." - }, - "supportsReporting": { - "type": "boolean", - "description": "Whether this ad client supports being reported on." - } - } - }, - "AdClients": { - "id": "AdClients", - "type": "object", - "properties": { - "etag": { - "type": "string", - "description": "ETag of this response for caching purposes." - }, - "items": { - "type": "array", - "description": "The ad clients returned in this list response.", - "items": { - "$ref": "AdClient" - } - }, - "kind": { - "type": "string", - "description": "Kind of list this is, in this case adexchangeseller#adClients.", - "default": "adexchangeseller#adClients" - }, - "nextPageToken": { - "type": "string", - "description": "Continuation token used to page through ad clients. To retrieve the next page of results, set the next request's \"pageToken\" value to this." - } - } - }, - "AdUnit": { - "id": "AdUnit", - "type": "object", - "properties": { - "code": { - "type": "string", - "description": "Identity code of this ad unit, not necessarily unique across ad clients." - }, - "id": { - "type": "string", - "description": "Unique identifier of this ad unit. This should be considered an opaque identifier; it is not safe to rely on it being in any particular format." - }, - "kind": { - "type": "string", - "description": "Kind of resource this is, in this case adexchangeseller#adUnit.", - "default": "adexchangeseller#adUnit" - }, - "name": { - "type": "string", - "description": "Name of this ad unit." - }, - "status": { - "type": "string", - "description": "Status of this ad unit. Possible values are:\nNEW: Indicates that the ad unit was created within the last seven days and does not yet have any activity associated with it.\n\nACTIVE: Indicates that there has been activity on this ad unit in the last seven days.\n\nINACTIVE: Indicates that there has been no activity on this ad unit in the last seven days." - } - } - }, - "AdUnits": { - "id": "AdUnits", - "type": "object", - "properties": { - "etag": { - "type": "string", - "description": "ETag of this response for caching purposes." - }, - "items": { - "type": "array", - "description": "The ad units returned in this list response.", - "items": { - "$ref": "AdUnit" - } - }, - "kind": { - "type": "string", - "description": "Kind of list this is, in this case adexchangeseller#adUnits.", - "default": "adexchangeseller#adUnits" - }, - "nextPageToken": { - "type": "string", - "description": "Continuation token used to page through ad units. To retrieve the next page of results, set the next request's \"pageToken\" value to this." - } - } - }, - "CustomChannel": { - "id": "CustomChannel", - "type": "object", - "properties": { - "code": { - "type": "string", - "description": "Code of this custom channel, not necessarily unique across ad clients." - }, - "id": { - "type": "string", - "description": "Unique identifier of this custom channel. This should be considered an opaque identifier; it is not safe to rely on it being in any particular format." - }, - "kind": { - "type": "string", - "description": "Kind of resource this is, in this case adexchangeseller#customChannel.", - "default": "adexchangeseller#customChannel" - }, - "name": { - "type": "string", - "description": "Name of this custom channel." - }, - "targetingInfo": { - "type": "object", - "description": "The targeting information of this custom channel, if activated.", - "properties": { - "adsAppearOn": { - "type": "string", - "description": "The name used to describe this channel externally." - }, - "description": { - "type": "string", - "description": "The external description of the channel." - }, - "location": { - "type": "string", - "description": "The locations in which ads appear. (Only valid for content and mobile content ads). Acceptable values for content ads are: TOP_LEFT, TOP_CENTER, TOP_RIGHT, MIDDLE_LEFT, MIDDLE_CENTER, MIDDLE_RIGHT, BOTTOM_LEFT, BOTTOM_CENTER, BOTTOM_RIGHT, MULTIPLE_LOCATIONS. Acceptable values for mobile content ads are: TOP, MIDDLE, BOTTOM, MULTIPLE_LOCATIONS." - }, - "siteLanguage": { - "type": "string", - "description": "The language of the sites ads will be displayed on." - } - } - } - } - }, - "CustomChannels": { - "id": "CustomChannels", - "type": "object", - "properties": { - "etag": { - "type": "string", - "description": "ETag of this response for caching purposes." - }, - "items": { - "type": "array", - "description": "The custom channels returned in this list response.", - "items": { - "$ref": "CustomChannel" - } - }, - "kind": { - "type": "string", - "description": "Kind of list this is, in this case adexchangeseller#customChannels.", - "default": "adexchangeseller#customChannels" - }, - "nextPageToken": { - "type": "string", - "description": "Continuation token used to page through custom channels. To retrieve the next page of results, set the next request's \"pageToken\" value to this." - } - } - }, - "Report": { - "id": "Report", - "type": "object", - "properties": { - "averages": { - "type": "array", - "description": "The averages of the report. This is the same length as any other row in the report; cells corresponding to dimension columns are empty.", - "items": { - "type": "string" - } - }, - "headers": { - "type": "array", - "description": "The header information of the columns requested in the report. This is a list of headers; one for each dimension in the request, followed by one for each metric in the request.", - "items": { - "type": "object", - "properties": { - "currency": { - "type": "string", - "description": "The currency of this column. Only present if the header type is METRIC_CURRENCY." - }, - "name": { - "type": "string", - "description": "The name of the header." - }, - "type": { - "type": "string", - "description": "The type of the header; one of DIMENSION, METRIC_TALLY, METRIC_RATIO, or METRIC_CURRENCY." - } - } - } - }, - "kind": { - "type": "string", - "description": "Kind this is, in this case adexchangeseller#report.", - "default": "adexchangeseller#report" - }, - "rows": { - "type": "array", - "description": "The output rows of the report. Each row is a list of cells; one for each dimension in the request, followed by one for each metric in the request. The dimension cells contain strings, and the metric cells contain numbers.", - "items": { - "type": "array", - "items": { - "type": "string" - } - } - }, - "totalMatchedRows": { - "type": "string", - "description": "The total number of rows matched by the report request. Fewer rows may be returned in the response due to being limited by the row count requested or the report row limit.", - "format": "int64" - }, - "totals": { - "type": "array", - "description": "The totals of the report. This is the same length as any other row in the report; cells corresponding to dimension columns are empty.", - "items": { - "type": "string" - } - }, - "warnings": { - "type": "array", - "description": "Any warnings associated with generation of the report.", - "items": { - "type": "string" - } - } - } - }, - "SavedReport": { - "id": "SavedReport", - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Unique identifier of this saved report." - }, - "kind": { - "type": "string", - "description": "Kind of resource this is, in this case adexchangeseller#savedReport.", - "default": "adexchangeseller#savedReport" - }, - "name": { - "type": "string", - "description": "This saved report's name." - } - } - }, - "SavedReports": { - "id": "SavedReports", - "type": "object", - "properties": { - "etag": { - "type": "string", - "description": "ETag of this response for caching purposes." - }, - "items": { - "type": "array", - "description": "The saved reports returned in this list response.", - "items": { - "$ref": "SavedReport" - } - }, - "kind": { - "type": "string", - "description": "Kind of list this is, in this case adexchangeseller#savedReports.", - "default": "adexchangeseller#savedReports" - }, - "nextPageToken": { - "type": "string", - "description": "Continuation token used to page through saved reports. To retrieve the next page of results, set the next request's \"pageToken\" value to this." - } - } - }, - "UrlChannel": { - "id": "UrlChannel", - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Unique identifier of this URL channel. This should be considered an opaque identifier; it is not safe to rely on it being in any particular format." - }, - "kind": { - "type": "string", - "description": "Kind of resource this is, in this case adexchangeseller#urlChannel.", - "default": "adexchangeseller#urlChannel" - }, - "urlPattern": { - "type": "string", - "description": "URL Pattern of this URL channel. Does not include \"http://\" or \"https://\". Example: www.example.com/home" - } - } - }, - "UrlChannels": { - "id": "UrlChannels", - "type": "object", - "properties": { - "etag": { - "type": "string", - "description": "ETag of this response for caching purposes." - }, - "items": { - "type": "array", - "description": "The URL channels returned in this list response.", - "items": { - "$ref": "UrlChannel" - } - }, - "kind": { - "type": "string", - "description": "Kind of list this is, in this case adexchangeseller#urlChannels.", - "default": "adexchangeseller#urlChannels" - }, - "nextPageToken": { - "type": "string", - "description": "Continuation token used to page through URL channels. To retrieve the next page of results, set the next request's \"pageToken\" value to this." - } - } - } - }, - "resources": { - "adclients": { - "methods": { - "list": { - "id": "adexchangeseller.adclients.list", - "path": "adclients", - "httpMethod": "GET", - "description": "List all ad clients in this Ad Exchange account.", - "parameters": { - "maxResults": { - "type": "integer", - "description": "The maximum number of ad clients to include in the response, used for paging.", - "format": "uint32", - "minimum": "0", - "maximum": "10000", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "A continuation token, used to page through ad clients. To retrieve the next page, set this parameter to the value of \"nextPageToken\" from the previous response.", - "location": "query" - } - }, - "response": { - "$ref": "AdClients" - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.seller", - "https://www.googleapis.com/auth/adexchange.seller.readonly" - ] - } - } - }, - "adunits": { - "methods": { - "get": { - "id": "adexchangeseller.adunits.get", - "path": "adclients/{adClientId}/adunits/{adUnitId}", - "httpMethod": "GET", - "description": "Gets the specified ad unit in the specified ad client.", - "parameters": { - "adClientId": { - "type": "string", - "description": "Ad client for which to get the ad unit.", - "required": true, - "location": "path" - }, - "adUnitId": { - "type": "string", - "description": "Ad unit to retrieve.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "adClientId", - "adUnitId" - ], - "response": { - "$ref": "AdUnit" - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.seller", - "https://www.googleapis.com/auth/adexchange.seller.readonly" - ] - }, - "list": { - "id": "adexchangeseller.adunits.list", - "path": "adclients/{adClientId}/adunits", - "httpMethod": "GET", - "description": "List all ad units in the specified ad client for this Ad Exchange account.", - "parameters": { - "adClientId": { - "type": "string", - "description": "Ad client for which to list ad units.", - "required": true, - "location": "path" - }, - "includeInactive": { - "type": "boolean", - "description": "Whether to include inactive ad units. Default: true.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of ad units to include in the response, used for paging.", - "format": "uint32", - "minimum": "0", - "maximum": "10000", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "A continuation token, used to page through ad units. To retrieve the next page, set this parameter to the value of \"nextPageToken\" from the previous response.", - "location": "query" - } - }, - "parameterOrder": [ - "adClientId" - ], - "response": { - "$ref": "AdUnits" - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.seller", - "https://www.googleapis.com/auth/adexchange.seller.readonly" - ] - } - }, - "resources": { - "customchannels": { - "methods": { - "list": { - "id": "adexchangeseller.adunits.customchannels.list", - "path": "adclients/{adClientId}/adunits/{adUnitId}/customchannels", - "httpMethod": "GET", - "description": "List all custom channels which the specified ad unit belongs to.", - "parameters": { - "adClientId": { - "type": "string", - "description": "Ad client which contains the ad unit.", - "required": true, - "location": "path" + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/adexchange.seller": { + "description": "View and manage your Ad Exchange data" }, - "adUnitId": { - "type": "string", - "description": "Ad unit for which to list custom channels.", - "required": true, - "location": "path" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of custom channels to include in the response, used for paging.", - "format": "uint32", - "minimum": "0", - "maximum": "10000", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "A continuation token, used to page through custom channels. To retrieve the next page, set this parameter to the value of \"nextPageToken\" from the previous response.", - "location": "query" + "https://www.googleapis.com/auth/adexchange.seller.readonly": { + "description": "View your Ad Exchange data" } - }, - "parameterOrder": [ - "adClientId", - "adUnitId" - ], - "response": { - "$ref": "CustomChannels" - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.seller", - "https://www.googleapis.com/auth/adexchange.seller.readonly" - ] } - } } - } }, - "customchannels": { - "methods": { - "get": { - "id": "adexchangeseller.customchannels.get", - "path": "adclients/{adClientId}/customchannels/{customChannelId}", - "httpMethod": "GET", - "description": "Get the specified custom channel from the specified ad client.", - "parameters": { - "adClientId": { - "type": "string", - "description": "Ad client which contains the custom channel.", - "required": true, - "location": "path" - }, - "customChannelId": { - "type": "string", - "description": "Custom channel to retrieve.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "adClientId", - "customChannelId" - ], - "response": { - "$ref": "CustomChannel" - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.seller", - "https://www.googleapis.com/auth/adexchange.seller.readonly" - ] + "basePath": "/adexchangeseller/v1/", + "baseUrl": "https://www.googleapis.com/adexchangeseller/v1/", + "batchPath": "batch/adexchangeseller/v1", + "canonicalName": "Ad Exchange Seller", + "description": "Accesses the inventory of Ad Exchange seller users and generates reports.", + "discoveryVersion": "v1", + "documentationLink": "https://developers.google.com/ad-exchange/seller-rest/", + "etag": "\"-iA1DTNe4s-I6JZXPt1t1Ypy8IU/LZjbJqGI4YbMK1jq7CAP1O0QwyE\"", + "icons": { + "x16": "https://www.google.com/images/icons/product/doubleclick-16.gif", + "x32": "https://www.google.com/images/icons/product/doubleclick-32.gif" + }, + "id": "adexchangeseller:v1", + "kind": "discovery#restDescription", + "name": "adexchangeseller", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "alt": { + "default": "json", + "description": "Data format for the response.", + "enum": [ + "csv", + "json" + ], + "enumDescriptions": [ + "Responses with Content-Type of text/csv", + "Responses with Content-Type of application/json" + ], + "location": "query", + "type": "string" }, - "list": { - "id": "adexchangeseller.customchannels.list", - "path": "adclients/{adClientId}/customchannels", - "httpMethod": "GET", - "description": "List all custom channels in the specified ad client for this Ad Exchange account.", - "parameters": { - "adClientId": { - "type": "string", - "description": "Ad client for which to list custom channels.", - "required": true, - "location": "path" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of custom channels to include in the response, used for paging.", - "format": "uint32", - "minimum": "0", - "maximum": "10000", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "A continuation token, used to page through custom channels. To retrieve the next page, set this parameter to the value of \"nextPageToken\" from the previous response.", - "location": "query" - } - }, - "parameterOrder": [ - "adClientId" - ], - "response": { - "$ref": "CustomChannels" - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.seller", - "https://www.googleapis.com/auth/adexchange.seller.readonly" - ] + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "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.", + "location": "query", + "type": "string" + }, + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", + "location": "query", + "type": "string" + }, + "userIp": { + "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", + "location": "query", + "type": "string" } - }, - "resources": { + }, + "protocol": "rest", + "resources": { + "adclients": { + "methods": { + "list": { + "description": "List all ad clients in this Ad Exchange account.", + "httpMethod": "GET", + "id": "adexchangeseller.adclients.list", + "parameters": { + "maxResults": { + "description": "The maximum number of ad clients to include in the response, used for paging.", + "format": "uint32", + "location": "query", + "maximum": "10000", + "minimum": "0", + "type": "integer" + }, + "pageToken": { + "description": "A continuation token, used to page through ad clients. To retrieve the next page, set this parameter to the value of \"nextPageToken\" from the previous response.", + "location": "query", + "type": "string" + } + }, + "path": "adclients", + "response": { + "$ref": "AdClients" + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.seller", + "https://www.googleapis.com/auth/adexchange.seller.readonly" + ] + } + } + }, "adunits": { - "methods": { - "list": { - "id": "adexchangeseller.customchannels.adunits.list", - "path": "adclients/{adClientId}/customchannels/{customChannelId}/adunits", - "httpMethod": "GET", - "description": "List all ad units in the specified custom channel.", - "parameters": { - "adClientId": { - "type": "string", - "description": "Ad client which contains the custom channel.", - "required": true, - "location": "path" + "methods": { + "get": { + "description": "Gets the specified ad unit in the specified ad client.", + "httpMethod": "GET", + "id": "adexchangeseller.adunits.get", + "parameterOrder": [ + "adClientId", + "adUnitId" + ], + "parameters": { + "adClientId": { + "description": "Ad client for which to get the ad unit.", + "location": "path", + "required": true, + "type": "string" + }, + "adUnitId": { + "description": "Ad unit to retrieve.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "adclients/{adClientId}/adunits/{adUnitId}", + "response": { + "$ref": "AdUnit" + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.seller", + "https://www.googleapis.com/auth/adexchange.seller.readonly" + ] }, - "customChannelId": { - "type": "string", - "description": "Custom channel for which to list ad units.", - "required": true, - "location": "path" - }, - "includeInactive": { - "type": "boolean", - "description": "Whether to include inactive ad units. Default: true.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of ad units to include in the response, used for paging.", - "format": "uint32", - "minimum": "0", - "maximum": "10000", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "A continuation token, used to page through ad units. To retrieve the next page, set this parameter to the value of \"nextPageToken\" from the previous response.", - "location": "query" + "list": { + "description": "List all ad units in the specified ad client for this Ad Exchange account.", + "httpMethod": "GET", + "id": "adexchangeseller.adunits.list", + "parameterOrder": [ + "adClientId" + ], + "parameters": { + "adClientId": { + "description": "Ad client for which to list ad units.", + "location": "path", + "required": true, + "type": "string" + }, + "includeInactive": { + "description": "Whether to include inactive ad units. Default: true.", + "location": "query", + "type": "boolean" + }, + "maxResults": { + "description": "The maximum number of ad units to include in the response, used for paging.", + "format": "uint32", + "location": "query", + "maximum": "10000", + "minimum": "0", + "type": "integer" + }, + "pageToken": { + "description": "A continuation token, used to page through ad units. To retrieve the next page, set this parameter to the value of \"nextPageToken\" from the previous response.", + "location": "query", + "type": "string" + } + }, + "path": "adclients/{adClientId}/adunits", + "response": { + "$ref": "AdUnits" + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.seller", + "https://www.googleapis.com/auth/adexchange.seller.readonly" + ] + } + }, + "resources": { + "customchannels": { + "methods": { + "list": { + "description": "List all custom channels which the specified ad unit belongs to.", + "httpMethod": "GET", + "id": "adexchangeseller.adunits.customchannels.list", + "parameterOrder": [ + "adClientId", + "adUnitId" + ], + "parameters": { + "adClientId": { + "description": "Ad client which contains the ad unit.", + "location": "path", + "required": true, + "type": "string" + }, + "adUnitId": { + "description": "Ad unit for which to list custom channels.", + "location": "path", + "required": true, + "type": "string" + }, + "maxResults": { + "description": "The maximum number of custom channels to include in the response, used for paging.", + "format": "uint32", + "location": "query", + "maximum": "10000", + "minimum": "0", + "type": "integer" + }, + "pageToken": { + "description": "A continuation token, used to page through custom channels. To retrieve the next page, set this parameter to the value of \"nextPageToken\" from the previous response.", + "location": "query", + "type": "string" + } + }, + "path": "adclients/{adClientId}/adunits/{adUnitId}/customchannels", + "response": { + "$ref": "CustomChannels" + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.seller", + "https://www.googleapis.com/auth/adexchange.seller.readonly" + ] + } + } + } + } + }, + "customchannels": { + "methods": { + "get": { + "description": "Get the specified custom channel from the specified ad client.", + "httpMethod": "GET", + "id": "adexchangeseller.customchannels.get", + "parameterOrder": [ + "adClientId", + "customChannelId" + ], + "parameters": { + "adClientId": { + "description": "Ad client which contains the custom channel.", + "location": "path", + "required": true, + "type": "string" + }, + "customChannelId": { + "description": "Custom channel to retrieve.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "adclients/{adClientId}/customchannels/{customChannelId}", + "response": { + "$ref": "CustomChannel" + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.seller", + "https://www.googleapis.com/auth/adexchange.seller.readonly" + ] + }, + "list": { + "description": "List all custom channels in the specified ad client for this Ad Exchange account.", + "httpMethod": "GET", + "id": "adexchangeseller.customchannels.list", + "parameterOrder": [ + "adClientId" + ], + "parameters": { + "adClientId": { + "description": "Ad client for which to list custom channels.", + "location": "path", + "required": true, + "type": "string" + }, + "maxResults": { + "description": "The maximum number of custom channels to include in the response, used for paging.", + "format": "uint32", + "location": "query", + "maximum": "10000", + "minimum": "0", + "type": "integer" + }, + "pageToken": { + "description": "A continuation token, used to page through custom channels. To retrieve the next page, set this parameter to the value of \"nextPageToken\" from the previous response.", + "location": "query", + "type": "string" + } + }, + "path": "adclients/{adClientId}/customchannels", + "response": { + "$ref": "CustomChannels" + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.seller", + "https://www.googleapis.com/auth/adexchange.seller.readonly" + ] + } + }, + "resources": { + "adunits": { + "methods": { + "list": { + "description": "List all ad units in the specified custom channel.", + "httpMethod": "GET", + "id": "adexchangeseller.customchannels.adunits.list", + "parameterOrder": [ + "adClientId", + "customChannelId" + ], + "parameters": { + "adClientId": { + "description": "Ad client which contains the custom channel.", + "location": "path", + "required": true, + "type": "string" + }, + "customChannelId": { + "description": "Custom channel for which to list ad units.", + "location": "path", + "required": true, + "type": "string" + }, + "includeInactive": { + "description": "Whether to include inactive ad units. Default: true.", + "location": "query", + "type": "boolean" + }, + "maxResults": { + "description": "The maximum number of ad units to include in the response, used for paging.", + "format": "uint32", + "location": "query", + "maximum": "10000", + "minimum": "0", + "type": "integer" + }, + "pageToken": { + "description": "A continuation token, used to page through ad units. To retrieve the next page, set this parameter to the value of \"nextPageToken\" from the previous response.", + "location": "query", + "type": "string" + } + }, + "path": "adclients/{adClientId}/customchannels/{customChannelId}/adunits", + "response": { + "$ref": "AdUnits" + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.seller", + "https://www.googleapis.com/auth/adexchange.seller.readonly" + ] + } + } + } + } + }, + "reports": { + "methods": { + "generate": { + "description": "Generate an Ad Exchange report based on the report request sent in the query parameters. Returns the result as JSON; to retrieve output in CSV format specify \"alt=csv\" as a query parameter.", + "httpMethod": "GET", + "id": "adexchangeseller.reports.generate", + "parameterOrder": [ + "startDate", + "endDate" + ], + "parameters": { + "dimension": { + "description": "Dimensions to base the report on.", + "location": "query", + "pattern": "[a-zA-Z_]+", + "repeated": true, + "type": "string" + }, + "endDate": { + "description": "End of the date range to report on in \"YYYY-MM-DD\" format, inclusive.", + "location": "query", + "pattern": "\\d{4}-\\d{2}-\\d{2}|(today|startOfMonth|startOfYear)(([\\-\\+]\\d+[dwmy]){0,3}?)", + "required": true, + "type": "string" + }, + "filter": { + "description": "Filters to be run on the report.", + "location": "query", + "pattern": "[a-zA-Z_]+(==|=@).+", + "repeated": true, + "type": "string" + }, + "locale": { + "description": "Optional locale to use for translating report output to a local language. Defaults to \"en_US\" if not specified.", + "location": "query", + "pattern": "[a-zA-Z_]+", + "type": "string" + }, + "maxResults": { + "description": "The maximum number of rows of report data to return.", + "format": "uint32", + "location": "query", + "maximum": "50000", + "minimum": "0", + "type": "integer" + }, + "metric": { + "description": "Numeric columns to include in the report.", + "location": "query", + "pattern": "[a-zA-Z_]+", + "repeated": true, + "type": "string" + }, + "sort": { + "description": "The name of a dimension or metric to sort the resulting report on, optionally prefixed with \"+\" to sort ascending or \"-\" to sort descending. If no prefix is specified, the column is sorted ascending.", + "location": "query", + "pattern": "(\\+|-)?[a-zA-Z_]+", + "repeated": true, + "type": "string" + }, + "startDate": { + "description": "Start of the date range to report on in \"YYYY-MM-DD\" format, inclusive.", + "location": "query", + "pattern": "\\d{4}-\\d{2}-\\d{2}|(today|startOfMonth|startOfYear)(([\\-\\+]\\d+[dwmy]){0,3}?)", + "required": true, + "type": "string" + }, + "startIndex": { + "description": "Index of the first row of report data to return.", + "format": "uint32", + "location": "query", + "maximum": "5000", + "minimum": "0", + "type": "integer" + } + }, + "path": "reports", + "response": { + "$ref": "Report" + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.seller", + "https://www.googleapis.com/auth/adexchange.seller.readonly" + ], + "supportsMediaDownload": true + } + }, + "resources": { + "saved": { + "methods": { + "generate": { + "description": "Generate an Ad Exchange report based on the saved report ID sent in the query parameters.", + "httpMethod": "GET", + "id": "adexchangeseller.reports.saved.generate", + "parameterOrder": [ + "savedReportId" + ], + "parameters": { + "locale": { + "description": "Optional locale to use for translating report output to a local language. Defaults to \"en_US\" if not specified.", + "location": "query", + "pattern": "[a-zA-Z_]+", + "type": "string" + }, + "maxResults": { + "description": "The maximum number of rows of report data to return.", + "format": "int32", + "location": "query", + "maximum": "50000", + "minimum": "0", + "type": "integer" + }, + "savedReportId": { + "description": "The saved report to retrieve.", + "location": "path", + "required": true, + "type": "string" + }, + "startIndex": { + "description": "Index of the first row of report data to return.", + "format": "int32", + "location": "query", + "maximum": "5000", + "minimum": "0", + "type": "integer" + } + }, + "path": "reports/{savedReportId}", + "response": { + "$ref": "Report" + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.seller", + "https://www.googleapis.com/auth/adexchange.seller.readonly" + ] + }, + "list": { + "description": "List all saved reports in this Ad Exchange account.", + "httpMethod": "GET", + "id": "adexchangeseller.reports.saved.list", + "parameters": { + "maxResults": { + "description": "The maximum number of saved reports to include in the response, used for paging.", + "format": "int32", + "location": "query", + "maximum": "100", + "minimum": "0", + "type": "integer" + }, + "pageToken": { + "description": "A continuation token, used to page through saved reports. To retrieve the next page, set this parameter to the value of \"nextPageToken\" from the previous response.", + "location": "query", + "type": "string" + } + }, + "path": "reports/saved", + "response": { + "$ref": "SavedReports" + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.seller", + "https://www.googleapis.com/auth/adexchange.seller.readonly" + ] + } + } + } + } + }, + "urlchannels": { + "methods": { + "list": { + "description": "List all URL channels in the specified ad client for this Ad Exchange account.", + "httpMethod": "GET", + "id": "adexchangeseller.urlchannels.list", + "parameterOrder": [ + "adClientId" + ], + "parameters": { + "adClientId": { + "description": "Ad client for which to list URL channels.", + "location": "path", + "required": true, + "type": "string" + }, + "maxResults": { + "description": "The maximum number of URL channels to include in the response, used for paging.", + "format": "uint32", + "location": "query", + "maximum": "10000", + "minimum": "0", + "type": "integer" + }, + "pageToken": { + "description": "A continuation token, used to page through URL channels. To retrieve the next page, set this parameter to the value of \"nextPageToken\" from the previous response.", + "location": "query", + "type": "string" + } + }, + "path": "adclients/{adClientId}/urlchannels", + "response": { + "$ref": "UrlChannels" + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.seller", + "https://www.googleapis.com/auth/adexchange.seller.readonly" + ] } - }, - "parameterOrder": [ - "adClientId", - "customChannelId" - ], - "response": { - "$ref": "AdUnits" - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.seller", - "https://www.googleapis.com/auth/adexchange.seller.readonly" - ] } - } } - } }, - "reports": { - "methods": { - "generate": { - "id": "adexchangeseller.reports.generate", - "path": "reports", - "httpMethod": "GET", - "description": "Generate an Ad Exchange report based on the report request sent in the query parameters. Returns the result as JSON; to retrieve output in CSV format specify \"alt=csv\" as a query parameter.", - "parameters": { - "dimension": { - "type": "string", - "description": "Dimensions to base the report on.", - "pattern": "[a-zA-Z_]+", - "repeated": true, - "location": "query" - }, - "endDate": { - "type": "string", - "description": "End of the date range to report on in \"YYYY-MM-DD\" format, inclusive.", - "required": true, - "pattern": "\\d{4}-\\d{2}-\\d{2}|(today|startOfMonth|startOfYear)(([\\-\\+]\\d+[dwmy]){0,3}?)", - "location": "query" - }, - "filter": { - "type": "string", - "description": "Filters to be run on the report.", - "pattern": "[a-zA-Z_]+(==|=@).+", - "repeated": true, - "location": "query" - }, - "locale": { - "type": "string", - "description": "Optional locale to use for translating report output to a local language. Defaults to \"en_US\" if not specified.", - "pattern": "[a-zA-Z_]+", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of rows of report data to return.", - "format": "uint32", - "minimum": "0", - "maximum": "50000", - "location": "query" - }, - "metric": { - "type": "string", - "description": "Numeric columns to include in the report.", - "pattern": "[a-zA-Z_]+", - "repeated": true, - "location": "query" - }, - "sort": { - "type": "string", - "description": "The name of a dimension or metric to sort the resulting report on, optionally prefixed with \"+\" to sort ascending or \"-\" to sort descending. If no prefix is specified, the column is sorted ascending.", - "pattern": "(\\+|-)?[a-zA-Z_]+", - "repeated": true, - "location": "query" - }, - "startDate": { - "type": "string", - "description": "Start of the date range to report on in \"YYYY-MM-DD\" format, inclusive.", - "required": true, - "pattern": "\\d{4}-\\d{2}-\\d{2}|(today|startOfMonth|startOfYear)(([\\-\\+]\\d+[dwmy]){0,3}?)", - "location": "query" - }, - "startIndex": { - "type": "integer", - "description": "Index of the first row of report data to return.", - "format": "uint32", - "minimum": "0", - "maximum": "5000", - "location": "query" - } - }, - "parameterOrder": [ - "startDate", - "endDate" - ], - "response": { - "$ref": "Report" - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.seller", - "https://www.googleapis.com/auth/adexchange.seller.readonly" - ], - "supportsMediaDownload": true - } - }, - "resources": { - "saved": { - "methods": { - "generate": { - "id": "adexchangeseller.reports.saved.generate", - "path": "reports/{savedReportId}", - "httpMethod": "GET", - "description": "Generate an Ad Exchange report based on the saved report ID sent in the query parameters.", - "parameters": { - "locale": { - "type": "string", - "description": "Optional locale to use for translating report output to a local language. Defaults to \"en_US\" if not specified.", - "pattern": "[a-zA-Z_]+", - "location": "query" + "revision": "20171101", + "rootUrl": "https://www.googleapis.com/", + "schemas": { + "AdClient": { + "id": "AdClient", + "properties": { + "arcOptIn": { + "description": "Whether this ad client is opted in to ARC.", + "type": "boolean" }, - "maxResults": { - "type": "integer", - "description": "The maximum number of rows of report data to return.", - "format": "int32", - "minimum": "0", - "maximum": "50000", - "location": "query" + "id": { + "description": "Unique identifier of this ad client.", + "type": "string" }, - "savedReportId": { - "type": "string", - "description": "The saved report to retrieve.", - "required": true, - "location": "path" + "kind": { + "default": "adexchangeseller#adClient", + "description": "Kind of resource this is, in this case adexchangeseller#adClient.", + "type": "string" }, - "startIndex": { - "type": "integer", - "description": "Index of the first row of report data to return.", - "format": "int32", - "minimum": "0", - "maximum": "5000", - "location": "query" + "productCode": { + "description": "This ad client's product code, which corresponds to the PRODUCT_CODE report dimension.", + "type": "string" + }, + "supportsReporting": { + "description": "Whether this ad client supports being reported on.", + "type": "boolean" } - }, - "parameterOrder": [ - "savedReportId" - ], - "response": { - "$ref": "Report" - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.seller", - "https://www.googleapis.com/auth/adexchange.seller.readonly" - ] }, - "list": { - "id": "adexchangeseller.reports.saved.list", - "path": "reports/saved", - "httpMethod": "GET", - "description": "List all saved reports in this Ad Exchange account.", - "parameters": { - "maxResults": { - "type": "integer", - "description": "The maximum number of saved reports to include in the response, used for paging.", - "format": "int32", - "minimum": "0", - "maximum": "100", - "location": "query" + "type": "object" + }, + "AdClients": { + "id": "AdClients", + "properties": { + "etag": { + "description": "ETag of this response for caching purposes.", + "type": "string" }, - "pageToken": { - "type": "string", - "description": "A continuation token, used to page through saved reports. To retrieve the next page, set this parameter to the value of \"nextPageToken\" from the previous response.", - "location": "query" + "items": { + "description": "The ad clients returned in this list response.", + "items": { + "$ref": "AdClient" + }, + "type": "array" + }, + "kind": { + "default": "adexchangeseller#adClients", + "description": "Kind of list this is, in this case adexchangeseller#adClients.", + "type": "string" + }, + "nextPageToken": { + "description": "Continuation token used to page through ad clients. To retrieve the next page of results, set the next request's \"pageToken\" value to this.", + "type": "string" } - }, - "response": { - "$ref": "SavedReports" - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.seller", - "https://www.googleapis.com/auth/adexchange.seller.readonly" - ] - } - } + }, + "type": "object" + }, + "AdUnit": { + "id": "AdUnit", + "properties": { + "code": { + "description": "Identity code of this ad unit, not necessarily unique across ad clients.", + "type": "string" + }, + "id": { + "description": "Unique identifier of this ad unit. This should be considered an opaque identifier; it is not safe to rely on it being in any particular format.", + "type": "string" + }, + "kind": { + "default": "adexchangeseller#adUnit", + "description": "Kind of resource this is, in this case adexchangeseller#adUnit.", + "type": "string" + }, + "name": { + "description": "Name of this ad unit.", + "type": "string" + }, + "status": { + "description": "Status of this ad unit. Possible values are:\nNEW: Indicates that the ad unit was created within the last seven days and does not yet have any activity associated with it.\n\nACTIVE: Indicates that there has been activity on this ad unit in the last seven days.\n\nINACTIVE: Indicates that there has been no activity on this ad unit in the last seven days.", + "type": "string" + } + }, + "type": "object" + }, + "AdUnits": { + "id": "AdUnits", + "properties": { + "etag": { + "description": "ETag of this response for caching purposes.", + "type": "string" + }, + "items": { + "description": "The ad units returned in this list response.", + "items": { + "$ref": "AdUnit" + }, + "type": "array" + }, + "kind": { + "default": "adexchangeseller#adUnits", + "description": "Kind of list this is, in this case adexchangeseller#adUnits.", + "type": "string" + }, + "nextPageToken": { + "description": "Continuation token used to page through ad units. To retrieve the next page of results, set the next request's \"pageToken\" value to this.", + "type": "string" + } + }, + "type": "object" + }, + "CustomChannel": { + "id": "CustomChannel", + "properties": { + "code": { + "description": "Code of this custom channel, not necessarily unique across ad clients.", + "type": "string" + }, + "id": { + "description": "Unique identifier of this custom channel. This should be considered an opaque identifier; it is not safe to rely on it being in any particular format.", + "type": "string" + }, + "kind": { + "default": "adexchangeseller#customChannel", + "description": "Kind of resource this is, in this case adexchangeseller#customChannel.", + "type": "string" + }, + "name": { + "description": "Name of this custom channel.", + "type": "string" + }, + "targetingInfo": { + "description": "The targeting information of this custom channel, if activated.", + "properties": { + "adsAppearOn": { + "description": "The name used to describe this channel externally.", + "type": "string" + }, + "description": { + "description": "The external description of the channel.", + "type": "string" + }, + "location": { + "description": "The locations in which ads appear. (Only valid for content and mobile content ads). Acceptable values for content ads are: TOP_LEFT, TOP_CENTER, TOP_RIGHT, MIDDLE_LEFT, MIDDLE_CENTER, MIDDLE_RIGHT, BOTTOM_LEFT, BOTTOM_CENTER, BOTTOM_RIGHT, MULTIPLE_LOCATIONS. Acceptable values for mobile content ads are: TOP, MIDDLE, BOTTOM, MULTIPLE_LOCATIONS.", + "type": "string" + }, + "siteLanguage": { + "description": "The language of the sites ads will be displayed on.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "CustomChannels": { + "id": "CustomChannels", + "properties": { + "etag": { + "description": "ETag of this response for caching purposes.", + "type": "string" + }, + "items": { + "description": "The custom channels returned in this list response.", + "items": { + "$ref": "CustomChannel" + }, + "type": "array" + }, + "kind": { + "default": "adexchangeseller#customChannels", + "description": "Kind of list this is, in this case adexchangeseller#customChannels.", + "type": "string" + }, + "nextPageToken": { + "description": "Continuation token used to page through custom channels. To retrieve the next page of results, set the next request's \"pageToken\" value to this.", + "type": "string" + } + }, + "type": "object" + }, + "Report": { + "id": "Report", + "properties": { + "averages": { + "description": "The averages of the report. This is the same length as any other row in the report; cells corresponding to dimension columns are empty.", + "items": { + "type": "string" + }, + "type": "array" + }, + "headers": { + "description": "The header information of the columns requested in the report. This is a list of headers; one for each dimension in the request, followed by one for each metric in the request.", + "items": { + "properties": { + "currency": { + "description": "The currency of this column. Only present if the header type is METRIC_CURRENCY.", + "type": "string" + }, + "name": { + "description": "The name of the header.", + "type": "string" + }, + "type": { + "description": "The type of the header; one of DIMENSION, METRIC_TALLY, METRIC_RATIO, or METRIC_CURRENCY.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "kind": { + "default": "adexchangeseller#report", + "description": "Kind this is, in this case adexchangeseller#report.", + "type": "string" + }, + "rows": { + "description": "The output rows of the report. Each row is a list of cells; one for each dimension in the request, followed by one for each metric in the request. The dimension cells contain strings, and the metric cells contain numbers.", + "items": { + "items": { + "type": "string" + }, + "type": "array" + }, + "type": "array" + }, + "totalMatchedRows": { + "description": "The total number of rows matched by the report request. Fewer rows may be returned in the response due to being limited by the row count requested or the report row limit.", + "format": "int64", + "type": "string" + }, + "totals": { + "description": "The totals of the report. This is the same length as any other row in the report; cells corresponding to dimension columns are empty.", + "items": { + "type": "string" + }, + "type": "array" + }, + "warnings": { + "description": "Any warnings associated with generation of the report.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "SavedReport": { + "id": "SavedReport", + "properties": { + "id": { + "description": "Unique identifier of this saved report.", + "type": "string" + }, + "kind": { + "default": "adexchangeseller#savedReport", + "description": "Kind of resource this is, in this case adexchangeseller#savedReport.", + "type": "string" + }, + "name": { + "description": "This saved report's name.", + "type": "string" + } + }, + "type": "object" + }, + "SavedReports": { + "id": "SavedReports", + "properties": { + "etag": { + "description": "ETag of this response for caching purposes.", + "type": "string" + }, + "items": { + "description": "The saved reports returned in this list response.", + "items": { + "$ref": "SavedReport" + }, + "type": "array" + }, + "kind": { + "default": "adexchangeseller#savedReports", + "description": "Kind of list this is, in this case adexchangeseller#savedReports.", + "type": "string" + }, + "nextPageToken": { + "description": "Continuation token used to page through saved reports. To retrieve the next page of results, set the next request's \"pageToken\" value to this.", + "type": "string" + } + }, + "type": "object" + }, + "UrlChannel": { + "id": "UrlChannel", + "properties": { + "id": { + "description": "Unique identifier of this URL channel. This should be considered an opaque identifier; it is not safe to rely on it being in any particular format.", + "type": "string" + }, + "kind": { + "default": "adexchangeseller#urlChannel", + "description": "Kind of resource this is, in this case adexchangeseller#urlChannel.", + "type": "string" + }, + "urlPattern": { + "description": "URL Pattern of this URL channel. Does not include \"http://\" or \"https://\". Example: www.example.com/home", + "type": "string" + } + }, + "type": "object" + }, + "UrlChannels": { + "id": "UrlChannels", + "properties": { + "etag": { + "description": "ETag of this response for caching purposes.", + "type": "string" + }, + "items": { + "description": "The URL channels returned in this list response.", + "items": { + "$ref": "UrlChannel" + }, + "type": "array" + }, + "kind": { + "default": "adexchangeseller#urlChannels", + "description": "Kind of list this is, in this case adexchangeseller#urlChannels.", + "type": "string" + }, + "nextPageToken": { + "description": "Continuation token used to page through URL channels. To retrieve the next page of results, set the next request's \"pageToken\" value to this.", + "type": "string" + } + }, + "type": "object" } - } }, - "urlchannels": { - "methods": { - "list": { - "id": "adexchangeseller.urlchannels.list", - "path": "adclients/{adClientId}/urlchannels", - "httpMethod": "GET", - "description": "List all URL channels in the specified ad client for this Ad Exchange account.", - "parameters": { - "adClientId": { - "type": "string", - "description": "Ad client for which to list URL channels.", - "required": true, - "location": "path" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of URL channels to include in the response, used for paging.", - "format": "uint32", - "minimum": "0", - "maximum": "10000", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "A continuation token, used to page through URL channels. To retrieve the next page, set this parameter to the value of \"nextPageToken\" from the previous response.", - "location": "query" - } - }, - "parameterOrder": [ - "adClientId" - ], - "response": { - "$ref": "UrlChannels" - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.seller", - "https://www.googleapis.com/auth/adexchange.seller.readonly" - ] - } - } - } - } -} + "servicePath": "adexchangeseller/v1/", + "title": "Ad Exchange Seller API", + "version": "v1" +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/adexchangeseller/v2.0/adexchangeseller-api.json b/vendor/google.golang.org/api/adexchangeseller/v2.0/adexchangeseller-api.json index 99d812aed..51d5ea80d 100644 --- a/vendor/google.golang.org/api/adexchangeseller/v2.0/adexchangeseller-api.json +++ b/vendor/google.golang.org/api/adexchangeseller/v2.0/adexchangeseller-api.json @@ -1,1164 +1,1164 @@ { - "kind": "discovery#restDescription", - "etag": "\"YWOzh2SDasdU84ArJnpYek-OMdg/1XDufO4826VKTkrV2WU9EmKApiQ\"", - "discoveryVersion": "v1", - "id": "adexchangeseller:v2.0", - "name": "adexchangeseller", - "canonicalName": "Ad Exchange Seller", - "version": "v2.0", - "revision": "20160805", - "title": "Ad Exchange Seller API", - "description": "Accesses the inventory of Ad Exchange seller users and generates reports.", - "ownerDomain": "google.com", - "ownerName": "Google", - "icons": { - "x16": "https://www.google.com/images/icons/product/doubleclick-16.gif", - "x32": "https://www.google.com/images/icons/product/doubleclick-32.gif" - }, - "documentationLink": "https://developers.google.com/ad-exchange/seller-rest/", - "protocol": "rest", - "baseUrl": "https://www.googleapis.com/adexchangeseller/v2.0/", - "basePath": "/adexchangeseller/v2.0/", - "rootUrl": "https://www.googleapis.com/", - "servicePath": "adexchangeseller/v2.0/", - "batchPath": "batch/adexchangeseller/v2.0", - "parameters": { - "alt": { - "type": "string", - "description": "Data format for the response.", - "default": "json", - "enum": [ - "csv", - "json" - ], - "enumDescriptions": [ - "Responses with Content-Type of text/csv", - "Responses with Content-Type of application/json" - ], - "location": "query" - }, - "fields": { - "type": "string", - "description": "Selector specifying which fields to include in a partial response.", - "location": "query" - }, - "key": { - "type": "string", - "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" - }, - "oauth_token": { - "type": "string", - "description": "OAuth 2.0 token for the current user.", - "location": "query" - }, - "prettyPrint": { - "type": "boolean", - "description": "Returns response with indentations and line breaks.", - "default": "true", - "location": "query" - }, - "quotaUser": { - "type": "string", - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", - "location": "query" - }, - "userIp": { - "type": "string", - "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", - "location": "query" - } - }, - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/adexchange.seller": { - "description": "View and manage your Ad Exchange data" - }, - "https://www.googleapis.com/auth/adexchange.seller.readonly": { - "description": "View your Ad Exchange data" - } - } - } - }, - "schemas": { - "Account": { - "id": "Account", - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Unique identifier of this account." - }, - "kind": { - "type": "string", - "description": "Kind of resource this is, in this case adexchangeseller#account.", - "default": "adexchangeseller#account" - }, - "name": { - "type": "string", - "description": "Name of this account." - } - } - }, - "Accounts": { - "id": "Accounts", - "type": "object", - "properties": { - "etag": { - "type": "string", - "description": "ETag of this response for caching purposes." - }, - "items": { - "type": "array", - "description": "The accounts returned in this list response.", - "items": { - "$ref": "Account" - } - }, - "kind": { - "type": "string", - "description": "Kind of list this is, in this case adexchangeseller#accounts.", - "default": "adexchangeseller#accounts" - }, - "nextPageToken": { - "type": "string", - "description": "Continuation token used to page through accounts. To retrieve the next page of results, set the next request's \"pageToken\" value to this." - } - } - }, - "AdClient": { - "id": "AdClient", - "type": "object", - "properties": { - "arcOptIn": { - "type": "boolean", - "description": "Whether this ad client is opted in to ARC." - }, - "id": { - "type": "string", - "description": "Unique identifier of this ad client." - }, - "kind": { - "type": "string", - "description": "Kind of resource this is, in this case adexchangeseller#adClient.", - "default": "adexchangeseller#adClient" - }, - "productCode": { - "type": "string", - "description": "This ad client's product code, which corresponds to the PRODUCT_CODE report dimension." - }, - "supportsReporting": { - "type": "boolean", - "description": "Whether this ad client supports being reported on." - } - } - }, - "AdClients": { - "id": "AdClients", - "type": "object", - "properties": { - "etag": { - "type": "string", - "description": "ETag of this response for caching purposes." - }, - "items": { - "type": "array", - "description": "The ad clients returned in this list response.", - "items": { - "$ref": "AdClient" - } - }, - "kind": { - "type": "string", - "description": "Kind of list this is, in this case adexchangeseller#adClients.", - "default": "adexchangeseller#adClients" - }, - "nextPageToken": { - "type": "string", - "description": "Continuation token used to page through ad clients. To retrieve the next page of results, set the next request's \"pageToken\" value to this." - } - } - }, - "Alert": { - "id": "Alert", - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Unique identifier of this alert. This should be considered an opaque identifier; it is not safe to rely on it being in any particular format." - }, - "kind": { - "type": "string", - "description": "Kind of resource this is, in this case adexchangeseller#alert.", - "default": "adexchangeseller#alert" - }, - "message": { - "type": "string", - "description": "The localized alert message." - }, - "severity": { - "type": "string", - "description": "Severity of this alert. Possible values: INFO, WARNING, SEVERE." - }, - "type": { - "type": "string", - "description": "Type of this alert. Possible values: SELF_HOLD, MIGRATED_TO_BILLING3, ADDRESS_PIN_VERIFICATION, PHONE_PIN_VERIFICATION, CORPORATE_ENTITY, GRAYLISTED_PUBLISHER, API_HOLD." - } - } - }, - "Alerts": { - "id": "Alerts", - "type": "object", - "properties": { - "items": { - "type": "array", - "description": "The alerts returned in this list response.", - "items": { - "$ref": "Alert" - } - }, - "kind": { - "type": "string", - "description": "Kind of list this is, in this case adexchangeseller#alerts.", - "default": "adexchangeseller#alerts" - } - } - }, - "CustomChannel": { - "id": "CustomChannel", - "type": "object", - "properties": { - "code": { - "type": "string", - "description": "Code of this custom channel, not necessarily unique across ad clients." - }, - "id": { - "type": "string", - "description": "Unique identifier of this custom channel. This should be considered an opaque identifier; it is not safe to rely on it being in any particular format." - }, - "kind": { - "type": "string", - "description": "Kind of resource this is, in this case adexchangeseller#customChannel.", - "default": "adexchangeseller#customChannel" - }, - "name": { - "type": "string", - "description": "Name of this custom channel." - }, - "targetingInfo": { - "type": "object", - "description": "The targeting information of this custom channel, if activated.", - "properties": { - "adsAppearOn": { - "type": "string", - "description": "The name used to describe this channel externally." - }, - "description": { - "type": "string", - "description": "The external description of the channel." - }, - "location": { - "type": "string", - "description": "The locations in which ads appear. (Only valid for content and mobile content ads). Acceptable values for content ads are: TOP_LEFT, TOP_CENTER, TOP_RIGHT, MIDDLE_LEFT, MIDDLE_CENTER, MIDDLE_RIGHT, BOTTOM_LEFT, BOTTOM_CENTER, BOTTOM_RIGHT, MULTIPLE_LOCATIONS. Acceptable values for mobile content ads are: TOP, MIDDLE, BOTTOM, MULTIPLE_LOCATIONS." - }, - "siteLanguage": { - "type": "string", - "description": "The language of the sites ads will be displayed on." + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/adexchange.seller": { + "description": "View and manage your Ad Exchange data" + }, + "https://www.googleapis.com/auth/adexchange.seller.readonly": { + "description": "View your Ad Exchange data" + } } - } } - } }, - "CustomChannels": { - "id": "CustomChannels", - "type": "object", - "properties": { - "etag": { - "type": "string", - "description": "ETag of this response for caching purposes." - }, - "items": { - "type": "array", - "description": "The custom channels returned in this list response.", - "items": { - "$ref": "CustomChannel" - } - }, - "kind": { - "type": "string", - "description": "Kind of list this is, in this case adexchangeseller#customChannels.", - "default": "adexchangeseller#customChannels" - }, - "nextPageToken": { - "type": "string", - "description": "Continuation token used to page through custom channels. To retrieve the next page of results, set the next request's \"pageToken\" value to this." - } - } + "basePath": "/adexchangeseller/v2.0/", + "baseUrl": "https://www.googleapis.com/adexchangeseller/v2.0/", + "batchPath": "batch/adexchangeseller/v2.0", + "canonicalName": "Ad Exchange Seller", + "description": "Accesses the inventory of Ad Exchange seller users and generates reports.", + "discoveryVersion": "v1", + "documentationLink": "https://developers.google.com/ad-exchange/seller-rest/", + "etag": "\"-iA1DTNe4s-I6JZXPt1t1Ypy8IU/yPQ_FKbZQkgdh3799oQXrXWTC8I\"", + "icons": { + "x16": "https://www.google.com/images/icons/product/doubleclick-16.gif", + "x32": "https://www.google.com/images/icons/product/doubleclick-32.gif" }, - "Metadata": { - "id": "Metadata", - "type": "object", - "properties": { - "items": { - "type": "array", - "items": { - "$ref": "ReportingMetadataEntry" - } - }, - "kind": { - "type": "string", - "description": "Kind of list this is, in this case adexchangeseller#metadata.", - "default": "adexchangeseller#metadata" - } - } - }, - "PreferredDeal": { - "id": "PreferredDeal", - "type": "object", - "properties": { - "advertiserName": { - "type": "string", - "description": "The name of the advertiser this deal is for." - }, - "buyerNetworkName": { - "type": "string", - "description": "The name of the buyer network this deal is for." - }, - "currencyCode": { - "type": "string", - "description": "The currency code that applies to the fixed_cpm value. If not set then assumed to be USD." - }, - "endTime": { - "type": "string", - "description": "Time when this deal stops being active in seconds since the epoch (GMT). If not set then this deal is valid until manually disabled by the publisher.", - "format": "uint64" - }, - "fixedCpm": { - "type": "string", - "description": "The fixed price for this preferred deal. In cpm micros of currency according to currencyCode. If set, then this preferred deal is eligible for the fixed price tier of buying (highest priority, pay exactly the configured fixed price).", - "format": "int64" - }, - "id": { - "type": "string", - "description": "Unique identifier of this preferred deal.", - "format": "int64" - }, - "kind": { - "type": "string", - "description": "Kind of resource this is, in this case adexchangeseller#preferredDeal.", - "default": "adexchangeseller#preferredDeal" - }, - "startTime": { - "type": "string", - "description": "Time when this deal becomes active in seconds since the epoch (GMT). If not set then this deal is active immediately upon creation.", - "format": "uint64" - } - } - }, - "PreferredDeals": { - "id": "PreferredDeals", - "type": "object", - "properties": { - "items": { - "type": "array", - "description": "The preferred deals returned in this list response.", - "items": { - "$ref": "PreferredDeal" - } - }, - "kind": { - "type": "string", - "description": "Kind of list this is, in this case adexchangeseller#preferredDeals.", - "default": "adexchangeseller#preferredDeals" - } - } - }, - "Report": { - "id": "Report", - "type": "object", - "properties": { - "averages": { - "type": "array", - "description": "The averages of the report. This is the same length as any other row in the report; cells corresponding to dimension columns are empty.", - "items": { + "id": "adexchangeseller:v2.0", + "kind": "discovery#restDescription", + "name": "adexchangeseller", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "alt": { + "default": "json", + "description": "Data format for the response.", + "enum": [ + "csv", + "json" + ], + "enumDescriptions": [ + "Responses with Content-Type of text/csv", + "Responses with Content-Type of application/json" + ], + "location": "query", "type": "string" - } }, - "headers": { - "type": "array", - "description": "The header information of the columns requested in the report. This is a list of headers; one for each dimension in the request, followed by one for each metric in the request.", - "items": { - "type": "object", + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "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.", + "location": "query", + "type": "string" + }, + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", + "location": "query", + "type": "string" + }, + "userIp": { + "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", + "location": "query", + "type": "string" + } + }, + "protocol": "rest", + "resources": { + "accounts": { + "methods": { + "get": { + "description": "Get information about the selected Ad Exchange account.", + "httpMethod": "GET", + "id": "adexchangeseller.accounts.get", + "parameterOrder": [ + "accountId" + ], + "parameters": { + "accountId": { + "description": "Account to get information about. Tip: 'myaccount' is a valid ID.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "accounts/{accountId}", + "response": { + "$ref": "Account" + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.seller", + "https://www.googleapis.com/auth/adexchange.seller.readonly" + ] + }, + "list": { + "description": "List all accounts available to this Ad Exchange account.", + "httpMethod": "GET", + "id": "adexchangeseller.accounts.list", + "parameters": { + "maxResults": { + "description": "The maximum number of accounts to include in the response, used for paging.", + "format": "int32", + "location": "query", + "maximum": "10000", + "minimum": "0", + "type": "integer" + }, + "pageToken": { + "description": "A continuation token, used to page through accounts. To retrieve the next page, set this parameter to the value of \"nextPageToken\" from the previous response.", + "location": "query", + "type": "string" + } + }, + "path": "accounts", + "response": { + "$ref": "Accounts" + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.seller", + "https://www.googleapis.com/auth/adexchange.seller.readonly" + ] + } + }, + "resources": { + "adclients": { + "methods": { + "list": { + "description": "List all ad clients in this Ad Exchange account.", + "httpMethod": "GET", + "id": "adexchangeseller.accounts.adclients.list", + "parameterOrder": [ + "accountId" + ], + "parameters": { + "accountId": { + "description": "Account to which the ad client belongs.", + "location": "path", + "required": true, + "type": "string" + }, + "maxResults": { + "description": "The maximum number of ad clients to include in the response, used for paging.", + "format": "uint32", + "location": "query", + "maximum": "10000", + "minimum": "0", + "type": "integer" + }, + "pageToken": { + "description": "A continuation token, used to page through ad clients. To retrieve the next page, set this parameter to the value of \"nextPageToken\" from the previous response.", + "location": "query", + "type": "string" + } + }, + "path": "accounts/{accountId}/adclients", + "response": { + "$ref": "AdClients" + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.seller", + "https://www.googleapis.com/auth/adexchange.seller.readonly" + ] + } + } + }, + "alerts": { + "methods": { + "list": { + "description": "List the alerts for this Ad Exchange account.", + "httpMethod": "GET", + "id": "adexchangeseller.accounts.alerts.list", + "parameterOrder": [ + "accountId" + ], + "parameters": { + "accountId": { + "description": "Account owning the alerts.", + "location": "path", + "required": true, + "type": "string" + }, + "locale": { + "description": "The locale to use for translating alert messages. The account locale will be used if this is not supplied. The AdSense default (English) will be used if the supplied locale is invalid or unsupported.", + "location": "query", + "type": "string" + } + }, + "path": "accounts/{accountId}/alerts", + "response": { + "$ref": "Alerts" + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.seller", + "https://www.googleapis.com/auth/adexchange.seller.readonly" + ] + } + } + }, + "customchannels": { + "methods": { + "get": { + "description": "Get the specified custom channel from the specified ad client.", + "httpMethod": "GET", + "id": "adexchangeseller.accounts.customchannels.get", + "parameterOrder": [ + "accountId", + "adClientId", + "customChannelId" + ], + "parameters": { + "accountId": { + "description": "Account to which the ad client belongs.", + "location": "path", + "required": true, + "type": "string" + }, + "adClientId": { + "description": "Ad client which contains the custom channel.", + "location": "path", + "required": true, + "type": "string" + }, + "customChannelId": { + "description": "Custom channel to retrieve.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "accounts/{accountId}/adclients/{adClientId}/customchannels/{customChannelId}", + "response": { + "$ref": "CustomChannel" + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.seller", + "https://www.googleapis.com/auth/adexchange.seller.readonly" + ] + }, + "list": { + "description": "List all custom channels in the specified ad client for this Ad Exchange account.", + "httpMethod": "GET", + "id": "adexchangeseller.accounts.customchannels.list", + "parameterOrder": [ + "accountId", + "adClientId" + ], + "parameters": { + "accountId": { + "description": "Account to which the ad client belongs.", + "location": "path", + "required": true, + "type": "string" + }, + "adClientId": { + "description": "Ad client for which to list custom channels.", + "location": "path", + "required": true, + "type": "string" + }, + "maxResults": { + "description": "The maximum number of custom channels to include in the response, used for paging.", + "format": "uint32", + "location": "query", + "maximum": "10000", + "minimum": "0", + "type": "integer" + }, + "pageToken": { + "description": "A continuation token, used to page through custom channels. To retrieve the next page, set this parameter to the value of \"nextPageToken\" from the previous response.", + "location": "query", + "type": "string" + } + }, + "path": "accounts/{accountId}/adclients/{adClientId}/customchannels", + "response": { + "$ref": "CustomChannels" + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.seller", + "https://www.googleapis.com/auth/adexchange.seller.readonly" + ] + } + } + }, + "metadata": { + "resources": { + "dimensions": { + "methods": { + "list": { + "description": "List the metadata for the dimensions available to this AdExchange account.", + "httpMethod": "GET", + "id": "adexchangeseller.accounts.metadata.dimensions.list", + "parameterOrder": [ + "accountId" + ], + "parameters": { + "accountId": { + "description": "Account with visibility to the dimensions.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "accounts/{accountId}/metadata/dimensions", + "response": { + "$ref": "Metadata" + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.seller", + "https://www.googleapis.com/auth/adexchange.seller.readonly" + ] + } + } + }, + "metrics": { + "methods": { + "list": { + "description": "List the metadata for the metrics available to this AdExchange account.", + "httpMethod": "GET", + "id": "adexchangeseller.accounts.metadata.metrics.list", + "parameterOrder": [ + "accountId" + ], + "parameters": { + "accountId": { + "description": "Account with visibility to the metrics.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "accounts/{accountId}/metadata/metrics", + "response": { + "$ref": "Metadata" + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.seller", + "https://www.googleapis.com/auth/adexchange.seller.readonly" + ] + } + } + } + } + }, + "preferreddeals": { + "methods": { + "get": { + "description": "Get information about the selected Ad Exchange Preferred Deal.", + "httpMethod": "GET", + "id": "adexchangeseller.accounts.preferreddeals.get", + "parameterOrder": [ + "accountId", + "dealId" + ], + "parameters": { + "accountId": { + "description": "Account owning the deal.", + "location": "path", + "required": true, + "type": "string" + }, + "dealId": { + "description": "Preferred deal to get information about.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "accounts/{accountId}/preferreddeals/{dealId}", + "response": { + "$ref": "PreferredDeal" + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.seller", + "https://www.googleapis.com/auth/adexchange.seller.readonly" + ] + }, + "list": { + "description": "List the preferred deals for this Ad Exchange account.", + "httpMethod": "GET", + "id": "adexchangeseller.accounts.preferreddeals.list", + "parameterOrder": [ + "accountId" + ], + "parameters": { + "accountId": { + "description": "Account owning the deals.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "accounts/{accountId}/preferreddeals", + "response": { + "$ref": "PreferredDeals" + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.seller", + "https://www.googleapis.com/auth/adexchange.seller.readonly" + ] + } + } + }, + "reports": { + "methods": { + "generate": { + "description": "Generate an Ad Exchange report based on the report request sent in the query parameters. Returns the result as JSON; to retrieve output in CSV format specify \"alt=csv\" as a query parameter.", + "httpMethod": "GET", + "id": "adexchangeseller.accounts.reports.generate", + "parameterOrder": [ + "accountId", + "startDate", + "endDate" + ], + "parameters": { + "accountId": { + "description": "Account which owns the generated report.", + "location": "path", + "required": true, + "type": "string" + }, + "dimension": { + "description": "Dimensions to base the report on.", + "location": "query", + "pattern": "[a-zA-Z_]+", + "repeated": true, + "type": "string" + }, + "endDate": { + "description": "End of the date range to report on in \"YYYY-MM-DD\" format, inclusive.", + "location": "query", + "pattern": "\\d{4}-\\d{2}-\\d{2}|(today|startOfMonth|startOfYear)(([\\-\\+]\\d+[dwmy]){0,3}?)", + "required": true, + "type": "string" + }, + "filter": { + "description": "Filters to be run on the report.", + "location": "query", + "pattern": "[a-zA-Z_]+(==|=@).+", + "repeated": true, + "type": "string" + }, + "locale": { + "description": "Optional locale to use for translating report output to a local language. Defaults to \"en_US\" if not specified.", + "location": "query", + "pattern": "[a-zA-Z_]+", + "type": "string" + }, + "maxResults": { + "description": "The maximum number of rows of report data to return.", + "format": "uint32", + "location": "query", + "maximum": "50000", + "minimum": "0", + "type": "integer" + }, + "metric": { + "description": "Numeric columns to include in the report.", + "location": "query", + "pattern": "[a-zA-Z_]+", + "repeated": true, + "type": "string" + }, + "sort": { + "description": "The name of a dimension or metric to sort the resulting report on, optionally prefixed with \"+\" to sort ascending or \"-\" to sort descending. If no prefix is specified, the column is sorted ascending.", + "location": "query", + "pattern": "(\\+|-)?[a-zA-Z_]+", + "repeated": true, + "type": "string" + }, + "startDate": { + "description": "Start of the date range to report on in \"YYYY-MM-DD\" format, inclusive.", + "location": "query", + "pattern": "\\d{4}-\\d{2}-\\d{2}|(today|startOfMonth|startOfYear)(([\\-\\+]\\d+[dwmy]){0,3}?)", + "required": true, + "type": "string" + }, + "startIndex": { + "description": "Index of the first row of report data to return.", + "format": "uint32", + "location": "query", + "maximum": "5000", + "minimum": "0", + "type": "integer" + } + }, + "path": "accounts/{accountId}/reports", + "response": { + "$ref": "Report" + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.seller", + "https://www.googleapis.com/auth/adexchange.seller.readonly" + ], + "supportsMediaDownload": true + } + }, + "resources": { + "saved": { + "methods": { + "generate": { + "description": "Generate an Ad Exchange report based on the saved report ID sent in the query parameters.", + "httpMethod": "GET", + "id": "adexchangeseller.accounts.reports.saved.generate", + "parameterOrder": [ + "accountId", + "savedReportId" + ], + "parameters": { + "accountId": { + "description": "Account owning the saved report.", + "location": "path", + "required": true, + "type": "string" + }, + "locale": { + "description": "Optional locale to use for translating report output to a local language. Defaults to \"en_US\" if not specified.", + "location": "query", + "pattern": "[a-zA-Z_]+", + "type": "string" + }, + "maxResults": { + "description": "The maximum number of rows of report data to return.", + "format": "int32", + "location": "query", + "maximum": "50000", + "minimum": "0", + "type": "integer" + }, + "savedReportId": { + "description": "The saved report to retrieve.", + "location": "path", + "required": true, + "type": "string" + }, + "startIndex": { + "description": "Index of the first row of report data to return.", + "format": "int32", + "location": "query", + "maximum": "5000", + "minimum": "0", + "type": "integer" + } + }, + "path": "accounts/{accountId}/reports/{savedReportId}", + "response": { + "$ref": "Report" + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.seller", + "https://www.googleapis.com/auth/adexchange.seller.readonly" + ] + }, + "list": { + "description": "List all saved reports in this Ad Exchange account.", + "httpMethod": "GET", + "id": "adexchangeseller.accounts.reports.saved.list", + "parameterOrder": [ + "accountId" + ], + "parameters": { + "accountId": { + "description": "Account owning the saved reports.", + "location": "path", + "required": true, + "type": "string" + }, + "maxResults": { + "description": "The maximum number of saved reports to include in the response, used for paging.", + "format": "int32", + "location": "query", + "maximum": "100", + "minimum": "0", + "type": "integer" + }, + "pageToken": { + "description": "A continuation token, used to page through saved reports. To retrieve the next page, set this parameter to the value of \"nextPageToken\" from the previous response.", + "location": "query", + "type": "string" + } + }, + "path": "accounts/{accountId}/reports/saved", + "response": { + "$ref": "SavedReports" + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.seller", + "https://www.googleapis.com/auth/adexchange.seller.readonly" + ] + } + } + } + } + }, + "urlchannels": { + "methods": { + "list": { + "description": "List all URL channels in the specified ad client for this Ad Exchange account.", + "httpMethod": "GET", + "id": "adexchangeseller.accounts.urlchannels.list", + "parameterOrder": [ + "accountId", + "adClientId" + ], + "parameters": { + "accountId": { + "description": "Account to which the ad client belongs.", + "location": "path", + "required": true, + "type": "string" + }, + "adClientId": { + "description": "Ad client for which to list URL channels.", + "location": "path", + "required": true, + "type": "string" + }, + "maxResults": { + "description": "The maximum number of URL channels to include in the response, used for paging.", + "format": "uint32", + "location": "query", + "maximum": "10000", + "minimum": "0", + "type": "integer" + }, + "pageToken": { + "description": "A continuation token, used to page through URL channels. To retrieve the next page, set this parameter to the value of \"nextPageToken\" from the previous response.", + "location": "query", + "type": "string" + } + }, + "path": "accounts/{accountId}/adclients/{adClientId}/urlchannels", + "response": { + "$ref": "UrlChannels" + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.seller", + "https://www.googleapis.com/auth/adexchange.seller.readonly" + ] + } + } + } + } + } + }, + "revision": "20171101", + "rootUrl": "https://www.googleapis.com/", + "schemas": { + "Account": { + "id": "Account", "properties": { - "currency": { - "type": "string", - "description": "The currency of this column. Only present if the header type is METRIC_CURRENCY." - }, - "name": { - "type": "string", - "description": "The name of the header." - }, - "type": { - "type": "string", - "description": "The type of the header; one of DIMENSION, METRIC_TALLY, METRIC_RATIO, or METRIC_CURRENCY." - } - } - } - }, - "kind": { - "type": "string", - "description": "Kind this is, in this case adexchangeseller#report.", - "default": "adexchangeseller#report" - }, - "rows": { - "type": "array", - "description": "The output rows of the report. Each row is a list of cells; one for each dimension in the request, followed by one for each metric in the request. The dimension cells contain strings, and the metric cells contain numbers.", - "items": { - "type": "array", - "items": { - "type": "string" - } - } - }, - "totalMatchedRows": { - "type": "string", - "description": "The total number of rows matched by the report request. Fewer rows may be returned in the response due to being limited by the row count requested or the report row limit.", - "format": "int64" - }, - "totals": { - "type": "array", - "description": "The totals of the report. This is the same length as any other row in the report; cells corresponding to dimension columns are empty.", - "items": { - "type": "string" - } - }, - "warnings": { - "type": "array", - "description": "Any warnings associated with generation of the report.", - "items": { - "type": "string" - } - } - } - }, - "ReportingMetadataEntry": { - "id": "ReportingMetadataEntry", - "type": "object", - "properties": { - "compatibleDimensions": { - "type": "array", - "description": "For metrics this is a list of dimension IDs which the metric is compatible with, for dimensions it is a list of compatibility groups the dimension belongs to.", - "items": { - "type": "string" - } - }, - "compatibleMetrics": { - "type": "array", - "description": "The names of the metrics the dimension or metric this reporting metadata entry describes is compatible with.", - "items": { - "type": "string" - } - }, - "id": { - "type": "string", - "description": "Unique identifier of this reporting metadata entry, corresponding to the name of the appropriate dimension or metric." - }, - "kind": { - "type": "string", - "description": "Kind of resource this is, in this case adexchangeseller#reportingMetadataEntry.", - "default": "adexchangeseller#reportingMetadataEntry" - }, - "requiredDimensions": { - "type": "array", - "description": "The names of the dimensions which the dimension or metric this reporting metadata entry describes requires to also be present in order for the report to be valid. Omitting these will not cause an error or warning, but may result in data which cannot be correctly interpreted.", - "items": { - "type": "string" - } - }, - "requiredMetrics": { - "type": "array", - "description": "The names of the metrics which the dimension or metric this reporting metadata entry describes requires to also be present in order for the report to be valid. Omitting these will not cause an error or warning, but may result in data which cannot be correctly interpreted.", - "items": { - "type": "string" - } - }, - "supportedProducts": { - "type": "array", - "description": "The codes of the projects supported by the dimension or metric this reporting metadata entry describes.", - "items": { - "type": "string" - } - } - } - }, - "SavedReport": { - "id": "SavedReport", - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Unique identifier of this saved report." - }, - "kind": { - "type": "string", - "description": "Kind of resource this is, in this case adexchangeseller#savedReport.", - "default": "adexchangeseller#savedReport" - }, - "name": { - "type": "string", - "description": "This saved report's name." - } - } - }, - "SavedReports": { - "id": "SavedReports", - "type": "object", - "properties": { - "etag": { - "type": "string", - "description": "ETag of this response for caching purposes." - }, - "items": { - "type": "array", - "description": "The saved reports returned in this list response.", - "items": { - "$ref": "SavedReport" - } - }, - "kind": { - "type": "string", - "description": "Kind of list this is, in this case adexchangeseller#savedReports.", - "default": "adexchangeseller#savedReports" - }, - "nextPageToken": { - "type": "string", - "description": "Continuation token used to page through saved reports. To retrieve the next page of results, set the next request's \"pageToken\" value to this." - } - } - }, - "UrlChannel": { - "id": "UrlChannel", - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Unique identifier of this URL channel. This should be considered an opaque identifier; it is not safe to rely on it being in any particular format." - }, - "kind": { - "type": "string", - "description": "Kind of resource this is, in this case adexchangeseller#urlChannel.", - "default": "adexchangeseller#urlChannel" - }, - "urlPattern": { - "type": "string", - "description": "URL Pattern of this URL channel. Does not include \"http://\" or \"https://\". Example: www.example.com/home" - } - } - }, - "UrlChannels": { - "id": "UrlChannels", - "type": "object", - "properties": { - "etag": { - "type": "string", - "description": "ETag of this response for caching purposes." - }, - "items": { - "type": "array", - "description": "The URL channels returned in this list response.", - "items": { - "$ref": "UrlChannel" - } - }, - "kind": { - "type": "string", - "description": "Kind of list this is, in this case adexchangeseller#urlChannels.", - "default": "adexchangeseller#urlChannels" - }, - "nextPageToken": { - "type": "string", - "description": "Continuation token used to page through URL channels. To retrieve the next page of results, set the next request's \"pageToken\" value to this." - } - } - } - }, - "resources": { - "accounts": { - "methods": { - "get": { - "id": "adexchangeseller.accounts.get", - "path": "accounts/{accountId}", - "httpMethod": "GET", - "description": "Get information about the selected Ad Exchange account.", - "parameters": { - "accountId": { - "type": "string", - "description": "Account to get information about. Tip: 'myaccount' is a valid ID.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "accountId" - ], - "response": { - "$ref": "Account" - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.seller", - "https://www.googleapis.com/auth/adexchange.seller.readonly" - ] - }, - "list": { - "id": "adexchangeseller.accounts.list", - "path": "accounts", - "httpMethod": "GET", - "description": "List all accounts available to this Ad Exchange account.", - "parameters": { - "maxResults": { - "type": "integer", - "description": "The maximum number of accounts to include in the response, used for paging.", - "format": "int32", - "minimum": "0", - "maximum": "10000", - "location": "query" + "id": { + "description": "Unique identifier of this account.", + "type": "string" + }, + "kind": { + "default": "adexchangeseller#account", + "description": "Kind of resource this is, in this case adexchangeseller#account.", + "type": "string" + }, + "name": { + "description": "Name of this account.", + "type": "string" + } }, - "pageToken": { - "type": "string", - "description": "A continuation token, used to page through accounts. To retrieve the next page, set this parameter to the value of \"nextPageToken\" from the previous response.", - "location": "query" - } - }, - "response": { - "$ref": "Accounts" - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.seller", - "https://www.googleapis.com/auth/adexchange.seller.readonly" - ] + "type": "object" + }, + "Accounts": { + "id": "Accounts", + "properties": { + "etag": { + "description": "ETag of this response for caching purposes.", + "type": "string" + }, + "items": { + "description": "The accounts returned in this list response.", + "items": { + "$ref": "Account" + }, + "type": "array" + }, + "kind": { + "default": "adexchangeseller#accounts", + "description": "Kind of list this is, in this case adexchangeseller#accounts.", + "type": "string" + }, + "nextPageToken": { + "description": "Continuation token used to page through accounts. To retrieve the next page of results, set the next request's \"pageToken\" value to this.", + "type": "string" + } + }, + "type": "object" + }, + "AdClient": { + "id": "AdClient", + "properties": { + "arcOptIn": { + "description": "Whether this ad client is opted in to ARC.", + "type": "boolean" + }, + "id": { + "description": "Unique identifier of this ad client.", + "type": "string" + }, + "kind": { + "default": "adexchangeseller#adClient", + "description": "Kind of resource this is, in this case adexchangeseller#adClient.", + "type": "string" + }, + "productCode": { + "description": "This ad client's product code, which corresponds to the PRODUCT_CODE report dimension.", + "type": "string" + }, + "supportsReporting": { + "description": "Whether this ad client supports being reported on.", + "type": "boolean" + } + }, + "type": "object" + }, + "AdClients": { + "id": "AdClients", + "properties": { + "etag": { + "description": "ETag of this response for caching purposes.", + "type": "string" + }, + "items": { + "description": "The ad clients returned in this list response.", + "items": { + "$ref": "AdClient" + }, + "type": "array" + }, + "kind": { + "default": "adexchangeseller#adClients", + "description": "Kind of list this is, in this case adexchangeseller#adClients.", + "type": "string" + }, + "nextPageToken": { + "description": "Continuation token used to page through ad clients. To retrieve the next page of results, set the next request's \"pageToken\" value to this.", + "type": "string" + } + }, + "type": "object" + }, + "Alert": { + "id": "Alert", + "properties": { + "id": { + "description": "Unique identifier of this alert. This should be considered an opaque identifier; it is not safe to rely on it being in any particular format.", + "type": "string" + }, + "kind": { + "default": "adexchangeseller#alert", + "description": "Kind of resource this is, in this case adexchangeseller#alert.", + "type": "string" + }, + "message": { + "description": "The localized alert message.", + "type": "string" + }, + "severity": { + "description": "Severity of this alert. Possible values: INFO, WARNING, SEVERE.", + "type": "string" + }, + "type": { + "description": "Type of this alert. Possible values: SELF_HOLD, MIGRATED_TO_BILLING3, ADDRESS_PIN_VERIFICATION, PHONE_PIN_VERIFICATION, CORPORATE_ENTITY, GRAYLISTED_PUBLISHER, API_HOLD.", + "type": "string" + } + }, + "type": "object" + }, + "Alerts": { + "id": "Alerts", + "properties": { + "items": { + "description": "The alerts returned in this list response.", + "items": { + "$ref": "Alert" + }, + "type": "array" + }, + "kind": { + "default": "adexchangeseller#alerts", + "description": "Kind of list this is, in this case adexchangeseller#alerts.", + "type": "string" + } + }, + "type": "object" + }, + "CustomChannel": { + "id": "CustomChannel", + "properties": { + "code": { + "description": "Code of this custom channel, not necessarily unique across ad clients.", + "type": "string" + }, + "id": { + "description": "Unique identifier of this custom channel. This should be considered an opaque identifier; it is not safe to rely on it being in any particular format.", + "type": "string" + }, + "kind": { + "default": "adexchangeseller#customChannel", + "description": "Kind of resource this is, in this case adexchangeseller#customChannel.", + "type": "string" + }, + "name": { + "description": "Name of this custom channel.", + "type": "string" + }, + "targetingInfo": { + "description": "The targeting information of this custom channel, if activated.", + "properties": { + "adsAppearOn": { + "description": "The name used to describe this channel externally.", + "type": "string" + }, + "description": { + "description": "The external description of the channel.", + "type": "string" + }, + "location": { + "description": "The locations in which ads appear. (Only valid for content and mobile content ads). Acceptable values for content ads are: TOP_LEFT, TOP_CENTER, TOP_RIGHT, MIDDLE_LEFT, MIDDLE_CENTER, MIDDLE_RIGHT, BOTTOM_LEFT, BOTTOM_CENTER, BOTTOM_RIGHT, MULTIPLE_LOCATIONS. Acceptable values for mobile content ads are: TOP, MIDDLE, BOTTOM, MULTIPLE_LOCATIONS.", + "type": "string" + }, + "siteLanguage": { + "description": "The language of the sites ads will be displayed on.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "CustomChannels": { + "id": "CustomChannels", + "properties": { + "etag": { + "description": "ETag of this response for caching purposes.", + "type": "string" + }, + "items": { + "description": "The custom channels returned in this list response.", + "items": { + "$ref": "CustomChannel" + }, + "type": "array" + }, + "kind": { + "default": "adexchangeseller#customChannels", + "description": "Kind of list this is, in this case adexchangeseller#customChannels.", + "type": "string" + }, + "nextPageToken": { + "description": "Continuation token used to page through custom channels. To retrieve the next page of results, set the next request's \"pageToken\" value to this.", + "type": "string" + } + }, + "type": "object" + }, + "Metadata": { + "id": "Metadata", + "properties": { + "items": { + "items": { + "$ref": "ReportingMetadataEntry" + }, + "type": "array" + }, + "kind": { + "default": "adexchangeseller#metadata", + "description": "Kind of list this is, in this case adexchangeseller#metadata.", + "type": "string" + } + }, + "type": "object" + }, + "PreferredDeal": { + "id": "PreferredDeal", + "properties": { + "advertiserName": { + "description": "The name of the advertiser this deal is for.", + "type": "string" + }, + "buyerNetworkName": { + "description": "The name of the buyer network this deal is for.", + "type": "string" + }, + "currencyCode": { + "description": "The currency code that applies to the fixed_cpm value. If not set then assumed to be USD.", + "type": "string" + }, + "endTime": { + "description": "Time when this deal stops being active in seconds since the epoch (GMT). If not set then this deal is valid until manually disabled by the publisher.", + "format": "uint64", + "type": "string" + }, + "fixedCpm": { + "description": "The fixed price for this preferred deal. In cpm micros of currency according to currencyCode. If set, then this preferred deal is eligible for the fixed price tier of buying (highest priority, pay exactly the configured fixed price).", + "format": "int64", + "type": "string" + }, + "id": { + "description": "Unique identifier of this preferred deal.", + "format": "int64", + "type": "string" + }, + "kind": { + "default": "adexchangeseller#preferredDeal", + "description": "Kind of resource this is, in this case adexchangeseller#preferredDeal.", + "type": "string" + }, + "startTime": { + "description": "Time when this deal becomes active in seconds since the epoch (GMT). If not set then this deal is active immediately upon creation.", + "format": "uint64", + "type": "string" + } + }, + "type": "object" + }, + "PreferredDeals": { + "id": "PreferredDeals", + "properties": { + "items": { + "description": "The preferred deals returned in this list response.", + "items": { + "$ref": "PreferredDeal" + }, + "type": "array" + }, + "kind": { + "default": "adexchangeseller#preferredDeals", + "description": "Kind of list this is, in this case adexchangeseller#preferredDeals.", + "type": "string" + } + }, + "type": "object" + }, + "Report": { + "id": "Report", + "properties": { + "averages": { + "description": "The averages of the report. This is the same length as any other row in the report; cells corresponding to dimension columns are empty.", + "items": { + "type": "string" + }, + "type": "array" + }, + "headers": { + "description": "The header information of the columns requested in the report. This is a list of headers; one for each dimension in the request, followed by one for each metric in the request.", + "items": { + "properties": { + "currency": { + "description": "The currency of this column. Only present if the header type is METRIC_CURRENCY.", + "type": "string" + }, + "name": { + "description": "The name of the header.", + "type": "string" + }, + "type": { + "description": "The type of the header; one of DIMENSION, METRIC_TALLY, METRIC_RATIO, or METRIC_CURRENCY.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "kind": { + "default": "adexchangeseller#report", + "description": "Kind this is, in this case adexchangeseller#report.", + "type": "string" + }, + "rows": { + "description": "The output rows of the report. Each row is a list of cells; one for each dimension in the request, followed by one for each metric in the request. The dimension cells contain strings, and the metric cells contain numbers.", + "items": { + "items": { + "type": "string" + }, + "type": "array" + }, + "type": "array" + }, + "totalMatchedRows": { + "description": "The total number of rows matched by the report request. Fewer rows may be returned in the response due to being limited by the row count requested or the report row limit.", + "format": "int64", + "type": "string" + }, + "totals": { + "description": "The totals of the report. This is the same length as any other row in the report; cells corresponding to dimension columns are empty.", + "items": { + "type": "string" + }, + "type": "array" + }, + "warnings": { + "description": "Any warnings associated with generation of the report.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "ReportingMetadataEntry": { + "id": "ReportingMetadataEntry", + "properties": { + "compatibleDimensions": { + "description": "For metrics this is a list of dimension IDs which the metric is compatible with, for dimensions it is a list of compatibility groups the dimension belongs to.", + "items": { + "type": "string" + }, + "type": "array" + }, + "compatibleMetrics": { + "description": "The names of the metrics the dimension or metric this reporting metadata entry describes is compatible with.", + "items": { + "type": "string" + }, + "type": "array" + }, + "id": { + "description": "Unique identifier of this reporting metadata entry, corresponding to the name of the appropriate dimension or metric.", + "type": "string" + }, + "kind": { + "default": "adexchangeseller#reportingMetadataEntry", + "description": "Kind of resource this is, in this case adexchangeseller#reportingMetadataEntry.", + "type": "string" + }, + "requiredDimensions": { + "description": "The names of the dimensions which the dimension or metric this reporting metadata entry describes requires to also be present in order for the report to be valid. Omitting these will not cause an error or warning, but may result in data which cannot be correctly interpreted.", + "items": { + "type": "string" + }, + "type": "array" + }, + "requiredMetrics": { + "description": "The names of the metrics which the dimension or metric this reporting metadata entry describes requires to also be present in order for the report to be valid. Omitting these will not cause an error or warning, but may result in data which cannot be correctly interpreted.", + "items": { + "type": "string" + }, + "type": "array" + }, + "supportedProducts": { + "description": "The codes of the projects supported by the dimension or metric this reporting metadata entry describes.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "SavedReport": { + "id": "SavedReport", + "properties": { + "id": { + "description": "Unique identifier of this saved report.", + "type": "string" + }, + "kind": { + "default": "adexchangeseller#savedReport", + "description": "Kind of resource this is, in this case adexchangeseller#savedReport.", + "type": "string" + }, + "name": { + "description": "This saved report's name.", + "type": "string" + } + }, + "type": "object" + }, + "SavedReports": { + "id": "SavedReports", + "properties": { + "etag": { + "description": "ETag of this response for caching purposes.", + "type": "string" + }, + "items": { + "description": "The saved reports returned in this list response.", + "items": { + "$ref": "SavedReport" + }, + "type": "array" + }, + "kind": { + "default": "adexchangeseller#savedReports", + "description": "Kind of list this is, in this case adexchangeseller#savedReports.", + "type": "string" + }, + "nextPageToken": { + "description": "Continuation token used to page through saved reports. To retrieve the next page of results, set the next request's \"pageToken\" value to this.", + "type": "string" + } + }, + "type": "object" + }, + "UrlChannel": { + "id": "UrlChannel", + "properties": { + "id": { + "description": "Unique identifier of this URL channel. This should be considered an opaque identifier; it is not safe to rely on it being in any particular format.", + "type": "string" + }, + "kind": { + "default": "adexchangeseller#urlChannel", + "description": "Kind of resource this is, in this case adexchangeseller#urlChannel.", + "type": "string" + }, + "urlPattern": { + "description": "URL Pattern of this URL channel. Does not include \"http://\" or \"https://\". Example: www.example.com/home", + "type": "string" + } + }, + "type": "object" + }, + "UrlChannels": { + "id": "UrlChannels", + "properties": { + "etag": { + "description": "ETag of this response for caching purposes.", + "type": "string" + }, + "items": { + "description": "The URL channels returned in this list response.", + "items": { + "$ref": "UrlChannel" + }, + "type": "array" + }, + "kind": { + "default": "adexchangeseller#urlChannels", + "description": "Kind of list this is, in this case adexchangeseller#urlChannels.", + "type": "string" + }, + "nextPageToken": { + "description": "Continuation token used to page through URL channels. To retrieve the next page of results, set the next request's \"pageToken\" value to this.", + "type": "string" + } + }, + "type": "object" } - }, - "resources": { - "adclients": { - "methods": { - "list": { - "id": "adexchangeseller.accounts.adclients.list", - "path": "accounts/{accountId}/adclients", - "httpMethod": "GET", - "description": "List all ad clients in this Ad Exchange account.", - "parameters": { - "accountId": { - "type": "string", - "description": "Account to which the ad client belongs.", - "required": true, - "location": "path" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of ad clients to include in the response, used for paging.", - "format": "uint32", - "minimum": "0", - "maximum": "10000", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "A continuation token, used to page through ad clients. To retrieve the next page, set this parameter to the value of \"nextPageToken\" from the previous response.", - "location": "query" - } - }, - "parameterOrder": [ - "accountId" - ], - "response": { - "$ref": "AdClients" - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.seller", - "https://www.googleapis.com/auth/adexchange.seller.readonly" - ] - } - } - }, - "alerts": { - "methods": { - "list": { - "id": "adexchangeseller.accounts.alerts.list", - "path": "accounts/{accountId}/alerts", - "httpMethod": "GET", - "description": "List the alerts for this Ad Exchange account.", - "parameters": { - "accountId": { - "type": "string", - "description": "Account owning the alerts.", - "required": true, - "location": "path" - }, - "locale": { - "type": "string", - "description": "The locale to use for translating alert messages. The account locale will be used if this is not supplied. The AdSense default (English) will be used if the supplied locale is invalid or unsupported.", - "location": "query" - } - }, - "parameterOrder": [ - "accountId" - ], - "response": { - "$ref": "Alerts" - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.seller", - "https://www.googleapis.com/auth/adexchange.seller.readonly" - ] - } - } - }, - "customchannels": { - "methods": { - "get": { - "id": "adexchangeseller.accounts.customchannels.get", - "path": "accounts/{accountId}/adclients/{adClientId}/customchannels/{customChannelId}", - "httpMethod": "GET", - "description": "Get the specified custom channel from the specified ad client.", - "parameters": { - "accountId": { - "type": "string", - "description": "Account to which the ad client belongs.", - "required": true, - "location": "path" - }, - "adClientId": { - "type": "string", - "description": "Ad client which contains the custom channel.", - "required": true, - "location": "path" - }, - "customChannelId": { - "type": "string", - "description": "Custom channel to retrieve.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "accountId", - "adClientId", - "customChannelId" - ], - "response": { - "$ref": "CustomChannel" - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.seller", - "https://www.googleapis.com/auth/adexchange.seller.readonly" - ] - }, - "list": { - "id": "adexchangeseller.accounts.customchannels.list", - "path": "accounts/{accountId}/adclients/{adClientId}/customchannels", - "httpMethod": "GET", - "description": "List all custom channels in the specified ad client for this Ad Exchange account.", - "parameters": { - "accountId": { - "type": "string", - "description": "Account to which the ad client belongs.", - "required": true, - "location": "path" - }, - "adClientId": { - "type": "string", - "description": "Ad client for which to list custom channels.", - "required": true, - "location": "path" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of custom channels to include in the response, used for paging.", - "format": "uint32", - "minimum": "0", - "maximum": "10000", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "A continuation token, used to page through custom channels. To retrieve the next page, set this parameter to the value of \"nextPageToken\" from the previous response.", - "location": "query" - } - }, - "parameterOrder": [ - "accountId", - "adClientId" - ], - "response": { - "$ref": "CustomChannels" - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.seller", - "https://www.googleapis.com/auth/adexchange.seller.readonly" - ] - } - } - }, - "metadata": { - "resources": { - "dimensions": { - "methods": { - "list": { - "id": "adexchangeseller.accounts.metadata.dimensions.list", - "path": "accounts/{accountId}/metadata/dimensions", - "httpMethod": "GET", - "description": "List the metadata for the dimensions available to this AdExchange account.", - "parameters": { - "accountId": { - "type": "string", - "description": "Account with visibility to the dimensions.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "accountId" - ], - "response": { - "$ref": "Metadata" - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.seller", - "https://www.googleapis.com/auth/adexchange.seller.readonly" - ] - } - } - }, - "metrics": { - "methods": { - "list": { - "id": "adexchangeseller.accounts.metadata.metrics.list", - "path": "accounts/{accountId}/metadata/metrics", - "httpMethod": "GET", - "description": "List the metadata for the metrics available to this AdExchange account.", - "parameters": { - "accountId": { - "type": "string", - "description": "Account with visibility to the metrics.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "accountId" - ], - "response": { - "$ref": "Metadata" - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.seller", - "https://www.googleapis.com/auth/adexchange.seller.readonly" - ] - } - } - } - } - }, - "preferreddeals": { - "methods": { - "get": { - "id": "adexchangeseller.accounts.preferreddeals.get", - "path": "accounts/{accountId}/preferreddeals/{dealId}", - "httpMethod": "GET", - "description": "Get information about the selected Ad Exchange Preferred Deal.", - "parameters": { - "accountId": { - "type": "string", - "description": "Account owning the deal.", - "required": true, - "location": "path" - }, - "dealId": { - "type": "string", - "description": "Preferred deal to get information about.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "accountId", - "dealId" - ], - "response": { - "$ref": "PreferredDeal" - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.seller", - "https://www.googleapis.com/auth/adexchange.seller.readonly" - ] - }, - "list": { - "id": "adexchangeseller.accounts.preferreddeals.list", - "path": "accounts/{accountId}/preferreddeals", - "httpMethod": "GET", - "description": "List the preferred deals for this Ad Exchange account.", - "parameters": { - "accountId": { - "type": "string", - "description": "Account owning the deals.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "accountId" - ], - "response": { - "$ref": "PreferredDeals" - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.seller", - "https://www.googleapis.com/auth/adexchange.seller.readonly" - ] - } - } - }, - "reports": { - "methods": { - "generate": { - "id": "adexchangeseller.accounts.reports.generate", - "path": "accounts/{accountId}/reports", - "httpMethod": "GET", - "description": "Generate an Ad Exchange report based on the report request sent in the query parameters. Returns the result as JSON; to retrieve output in CSV format specify \"alt=csv\" as a query parameter.", - "parameters": { - "accountId": { - "type": "string", - "description": "Account which owns the generated report.", - "required": true, - "location": "path" - }, - "dimension": { - "type": "string", - "description": "Dimensions to base the report on.", - "pattern": "[a-zA-Z_]+", - "repeated": true, - "location": "query" - }, - "endDate": { - "type": "string", - "description": "End of the date range to report on in \"YYYY-MM-DD\" format, inclusive.", - "required": true, - "pattern": "\\d{4}-\\d{2}-\\d{2}|(today|startOfMonth|startOfYear)(([\\-\\+]\\d+[dwmy]){0,3}?)", - "location": "query" - }, - "filter": { - "type": "string", - "description": "Filters to be run on the report.", - "pattern": "[a-zA-Z_]+(==|=@).+", - "repeated": true, - "location": "query" - }, - "locale": { - "type": "string", - "description": "Optional locale to use for translating report output to a local language. Defaults to \"en_US\" if not specified.", - "pattern": "[a-zA-Z_]+", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of rows of report data to return.", - "format": "uint32", - "minimum": "0", - "maximum": "50000", - "location": "query" - }, - "metric": { - "type": "string", - "description": "Numeric columns to include in the report.", - "pattern": "[a-zA-Z_]+", - "repeated": true, - "location": "query" - }, - "sort": { - "type": "string", - "description": "The name of a dimension or metric to sort the resulting report on, optionally prefixed with \"+\" to sort ascending or \"-\" to sort descending. If no prefix is specified, the column is sorted ascending.", - "pattern": "(\\+|-)?[a-zA-Z_]+", - "repeated": true, - "location": "query" - }, - "startDate": { - "type": "string", - "description": "Start of the date range to report on in \"YYYY-MM-DD\" format, inclusive.", - "required": true, - "pattern": "\\d{4}-\\d{2}-\\d{2}|(today|startOfMonth|startOfYear)(([\\-\\+]\\d+[dwmy]){0,3}?)", - "location": "query" - }, - "startIndex": { - "type": "integer", - "description": "Index of the first row of report data to return.", - "format": "uint32", - "minimum": "0", - "maximum": "5000", - "location": "query" - } - }, - "parameterOrder": [ - "accountId", - "startDate", - "endDate" - ], - "response": { - "$ref": "Report" - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.seller", - "https://www.googleapis.com/auth/adexchange.seller.readonly" - ], - "supportsMediaDownload": true - } - }, - "resources": { - "saved": { - "methods": { - "generate": { - "id": "adexchangeseller.accounts.reports.saved.generate", - "path": "accounts/{accountId}/reports/{savedReportId}", - "httpMethod": "GET", - "description": "Generate an Ad Exchange report based on the saved report ID sent in the query parameters.", - "parameters": { - "accountId": { - "type": "string", - "description": "Account owning the saved report.", - "required": true, - "location": "path" - }, - "locale": { - "type": "string", - "description": "Optional locale to use for translating report output to a local language. Defaults to \"en_US\" if not specified.", - "pattern": "[a-zA-Z_]+", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of rows of report data to return.", - "format": "int32", - "minimum": "0", - "maximum": "50000", - "location": "query" - }, - "savedReportId": { - "type": "string", - "description": "The saved report to retrieve.", - "required": true, - "location": "path" - }, - "startIndex": { - "type": "integer", - "description": "Index of the first row of report data to return.", - "format": "int32", - "minimum": "0", - "maximum": "5000", - "location": "query" - } - }, - "parameterOrder": [ - "accountId", - "savedReportId" - ], - "response": { - "$ref": "Report" - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.seller", - "https://www.googleapis.com/auth/adexchange.seller.readonly" - ] - }, - "list": { - "id": "adexchangeseller.accounts.reports.saved.list", - "path": "accounts/{accountId}/reports/saved", - "httpMethod": "GET", - "description": "List all saved reports in this Ad Exchange account.", - "parameters": { - "accountId": { - "type": "string", - "description": "Account owning the saved reports.", - "required": true, - "location": "path" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of saved reports to include in the response, used for paging.", - "format": "int32", - "minimum": "0", - "maximum": "100", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "A continuation token, used to page through saved reports. To retrieve the next page, set this parameter to the value of \"nextPageToken\" from the previous response.", - "location": "query" - } - }, - "parameterOrder": [ - "accountId" - ], - "response": { - "$ref": "SavedReports" - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.seller", - "https://www.googleapis.com/auth/adexchange.seller.readonly" - ] - } - } - } - } - }, - "urlchannels": { - "methods": { - "list": { - "id": "adexchangeseller.accounts.urlchannels.list", - "path": "accounts/{accountId}/adclients/{adClientId}/urlchannels", - "httpMethod": "GET", - "description": "List all URL channels in the specified ad client for this Ad Exchange account.", - "parameters": { - "accountId": { - "type": "string", - "description": "Account to which the ad client belongs.", - "required": true, - "location": "path" - }, - "adClientId": { - "type": "string", - "description": "Ad client for which to list URL channels.", - "required": true, - "location": "path" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of URL channels to include in the response, used for paging.", - "format": "uint32", - "minimum": "0", - "maximum": "10000", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "A continuation token, used to page through URL channels. To retrieve the next page, set this parameter to the value of \"nextPageToken\" from the previous response.", - "location": "query" - } - }, - "parameterOrder": [ - "accountId", - "adClientId" - ], - "response": { - "$ref": "UrlChannels" - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.seller", - "https://www.googleapis.com/auth/adexchange.seller.readonly" - ] - } - } - } - } - } - } -} + }, + "servicePath": "adexchangeseller/v2.0/", + "title": "Ad Exchange Seller API", + "version": "v2.0" +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/adexperiencereport/v1/adexperiencereport-api.json b/vendor/google.golang.org/api/adexperiencereport/v1/adexperiencereport-api.json index 12852c531..061bd4f09 100644 --- a/vendor/google.golang.org/api/adexperiencereport/v1/adexperiencereport-api.json +++ b/vendor/google.golang.org/api/adexperiencereport/v1/adexperiencereport-api.json @@ -1,273 +1,4 @@ { - "batchPath": "batch", - "title": "Google Ad Experience Report API", - "ownerName": "Google", - "resources": { - "sites": { - "methods": { - "get": { - "description": "Gets a summary of the ad experience rating of a site.", - "response": { - "$ref": "SiteSummaryResponse" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "GET", - "parameters": { - "name": { - "location": "path", - "description": "The required site name. It should be the site property whose ad experiences\nmay have been reviewed, and it should be URL-encoded. For example,\nsites/https%3A%2F%2Fwww.google.com. The server will return an error of\nBAD_REQUEST if this field is not filled in. Note that if the site property\nis not yet verified in Search Console, the reportUrl field returned by the\nAPI will lead to the verification page, prompting the user to go through\nthat process before they can gain access to the Ad Experience Report.", - "required": true, - "type": "string", - "pattern": "^sites/[^/]+$" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/xapi.zoo" - ], - "flatPath": "v1/sites/{sitesId}", - "path": "v1/{+name}", - "id": "adexperiencereport.sites.get" - } - } - }, - "violatingSites": { - "methods": { - "list": { - "description": "Lists sites with Ad Experience Report statuses of \"Failing\" or \"Warning\".", - "response": { - "$ref": "ViolatingSitesResponse" - }, - "parameterOrder": [], - "httpMethod": "GET", - "parameters": {}, - "scopes": [ - "https://www.googleapis.com/auth/xapi.zoo" - ], - "flatPath": "v1/violatingSites", - "path": "v1/violatingSites", - "id": "adexperiencereport.violatingSites.list" - } - } - } - }, - "parameters": { - "key": { - "location": "query", - "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.", - "type": "string" - }, - "access_token": { - "location": "query", - "description": "OAuth access token.", - "type": "string" - }, - "quotaUser": { - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", - "type": "string", - "location": "query" - }, - "pp": { - "location": "query", - "description": "Pretty-print response.", - "type": "boolean", - "default": "true" - }, - "bearer_token": { - "description": "OAuth bearer token.", - "type": "string", - "location": "query" - }, - "oauth_token": { - "location": "query", - "description": "OAuth 2.0 token for the current user.", - "type": "string" - }, - "upload_protocol": { - "location": "query", - "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", - "type": "string" - }, - "prettyPrint": { - "description": "Returns response with indentations and line breaks.", - "type": "boolean", - "default": "true", - "location": "query" - }, - "uploadType": { - "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", - "type": "string", - "location": "query" - }, - "fields": { - "location": "query", - "description": "Selector specifying which fields to include in a partial response.", - "type": "string" - }, - "callback": { - "description": "JSONP", - "type": "string", - "location": "query" - }, - "$.xgafv": { - "enumDescriptions": [ - "v1 error format", - "v2 error format" - ], - "location": "query", - "enum": [ - "1", - "2" - ], - "description": "V1 error format.", - "type": "string" - }, - "alt": { - "enum": [ - "json", - "media", - "proto" - ], - "type": "string", - "enumDescriptions": [ - "Responses with Content-Type of application/json", - "Media download with context-dependent Content-Type", - "Responses with Content-Type of application/x-protobuf" - ], - "location": "query", - "description": "Data format for response.", - "default": "json" - } - }, - "version": "v1", - "baseUrl": "https://adexperiencereport.googleapis.com/", - "kind": "discovery#restDescription", - "description": "View Ad Experience Report data, and get a list of sites that have a significant number of annoying ads.", - "servicePath": "", - "basePath": "", - "id": "adexperiencereport:v1", - "documentationLink": "https://developers.google.com/ad-experience-report/", - "revision": "20171129", - "discoveryVersion": "v1", - "version_module": true, - "schemas": { - "ViolatingSitesResponse": { - "description": "Response message for ListViolatingSites.", - "type": "object", - "properties": { - "violatingSites": { - "description": "A list of summaries of violating sites.", - "type": "array", - "items": { - "$ref": "SiteSummaryResponse" - } - } - }, - "id": "ViolatingSitesResponse" - }, - "SiteSummaryResponse": { - "description": "Response message for GetSiteSummary.", - "type": "object", - "properties": { - "mobileSummary": { - "description": "Summary for the mobile review of the site.", - "$ref": "PlatformSummary" - }, - "reviewedSite": { - "description": "The name of the site reviewed.", - "type": "string" - }, - "desktopSummary": { - "$ref": "PlatformSummary", - "description": "Summary for the desktop review of the site." - } - }, - "id": "SiteSummaryResponse" - }, - "PlatformSummary": { - "description": "Summary of the ad experience rating of a site for a specific platform.", - "type": "object", - "properties": { - "enforcementTime": { - "description": "The date on which ad filtering begins.", - "format": "google-datetime", - "type": "string" - }, - "region": { - "enumDescriptions": [ - "Ad standard not yet defined for your region.", - "Region A.", - "Region B." - ], - "description": "The assigned regions for the site and platform.", - "type": "array", - "items": { - "enum": [ - "REGION_UNKNOWN", - "REGION_A", - "REGION_B" - ], - "type": "string" - } - }, - "filterStatus": { - "description": "The ad filtering status of the site.", - "type": "string", - "enumDescriptions": [ - "N/A.", - "Ad filtering is on.", - "Ad filtering is off.", - "Ad filtering is paused.", - "Ad filtering is pending." - ], - "enum": [ - "UNKNOWN", - "ON", - "OFF", - "PAUSED", - "PENDING" - ] - }, - "underReview": { - "description": "Whether the site is currently under review.", - "type": "boolean" - }, - "reportUrl": { - "description": "A link that leads to a full ad experience report.", - "type": "string" - }, - "lastChangeTime": { - "description": "The last time that the site changed status.", - "format": "google-datetime", - "type": "string" - }, - "betterAdsStatus": { - "description": "The status of the site reviewed for the Better Ads Standards.", - "type": "string", - "enumDescriptions": [ - "Not reviewed.", - "Passing.", - "Warning.", - "Failing." - ], - "enum": [ - "UNKNOWN", - "PASSING", - "WARNING", - "FAILING" - ] - } - }, - "id": "PlatformSummary" - } - }, - "icons": { - "x32": "http://www.google.com/images/icons/product/search-32.gif", - "x16": "http://www.google.com/images/icons/product/search-16.gif" - }, - "protocol": "rest", - "canonicalName": "Ad Experience Report", "auth": { "oauth2": { "scopes": { @@ -277,7 +8,276 @@ } } }, - "rootUrl": "https://adexperiencereport.googleapis.com/", + "basePath": "", + "baseUrl": "https://adexperiencereport.googleapis.com/", + "batchPath": "batch", + "canonicalName": "Ad Experience Report", + "description": "View Ad Experience Report data, and get a list of sites that have a significant number of annoying ads.", + "discoveryVersion": "v1", + "documentationLink": "https://developers.google.com/ad-experience-report/", + "icons": { + "x16": "http://www.google.com/images/icons/product/search-16.gif", + "x32": "http://www.google.com/images/icons/product/search-32.gif" + }, + "id": "adexperiencereport:v1", + "kind": "discovery#restDescription", + "name": "adexperiencereport", "ownerDomain": "google.com", - "name": "adexperiencereport" -} + "ownerName": "Google", + "parameters": { + "$.xgafv": { + "description": "V1 error format.", + "enum": [ + "1", + "2" + ], + "enumDescriptions": [ + "v1 error format", + "v2 error format" + ], + "location": "query", + "type": "string" + }, + "access_token": { + "description": "OAuth access token.", + "location": "query", + "type": "string" + }, + "alt": { + "default": "json", + "description": "Data format for response.", + "enum": [ + "json", + "media", + "proto" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json", + "Media download with context-dependent Content-Type", + "Responses with Content-Type of application/x-protobuf" + ], + "location": "query", + "type": "string" + }, + "bearer_token": { + "description": "OAuth bearer token.", + "location": "query", + "type": "string" + }, + "callback": { + "description": "JSONP", + "location": "query", + "type": "string" + }, + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "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.", + "location": "query", + "type": "string" + }, + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "pp": { + "default": "true", + "description": "Pretty-print response.", + "location": "query", + "type": "boolean" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", + "location": "query", + "type": "string" + }, + "uploadType": { + "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", + "location": "query", + "type": "string" + }, + "upload_protocol": { + "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", + "location": "query", + "type": "string" + } + }, + "protocol": "rest", + "resources": { + "sites": { + "methods": { + "get": { + "description": "Gets a summary of the ad experience rating of a site.", + "flatPath": "v1/sites/{sitesId}", + "httpMethod": "GET", + "id": "adexperiencereport.sites.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The required site name. It should be the site property whose ad experiences\nmay have been reviewed, and it should be URL-encoded. For example,\nsites/https%3A%2F%2Fwww.google.com. The server will return an error of\nBAD_REQUEST if this field is not filled in. Note that if the site property\nis not yet verified in Search Console, the reportUrl field returned by the\nAPI will lead to the verification page, prompting the user to go through\nthat process before they can gain access to the Ad Experience Report.", + "location": "path", + "pattern": "^sites/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "SiteSummaryResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/xapi.zoo" + ] + } + } + }, + "violatingSites": { + "methods": { + "list": { + "description": "Lists sites with Ad Experience Report statuses of \"Failing\" or \"Warning\".", + "flatPath": "v1/violatingSites", + "httpMethod": "GET", + "id": "adexperiencereport.violatingSites.list", + "parameterOrder": [], + "parameters": {}, + "path": "v1/violatingSites", + "response": { + "$ref": "ViolatingSitesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/xapi.zoo" + ] + } + } + } + }, + "revision": "20180129", + "rootUrl": "https://adexperiencereport.googleapis.com/", + "schemas": { + "PlatformSummary": { + "description": "Summary of the ad experience rating of a site for a specific platform.", + "id": "PlatformSummary", + "properties": { + "betterAdsStatus": { + "description": "The status of the site reviewed for the Better Ads Standards.", + "enum": [ + "UNKNOWN", + "PASSING", + "WARNING", + "FAILING" + ], + "enumDescriptions": [ + "Not reviewed.", + "Passing.", + "Warning.", + "Failing." + ], + "type": "string" + }, + "enforcementTime": { + "description": "The date on which ad filtering begins.", + "format": "google-datetime", + "type": "string" + }, + "filterStatus": { + "description": "The ad filtering status of the site.", + "enum": [ + "UNKNOWN", + "ON", + "OFF", + "PAUSED", + "PENDING" + ], + "enumDescriptions": [ + "N/A.", + "Ad filtering is on.", + "Ad filtering is off.", + "Ad filtering is paused.", + "Ad filtering is pending." + ], + "type": "string" + }, + "lastChangeTime": { + "description": "The last time that the site changed status.", + "format": "google-datetime", + "type": "string" + }, + "region": { + "description": "The assigned regions for the site and platform.", + "enumDescriptions": [ + "Ad standard not yet defined for your region.", + "Region A.", + "Region B." + ], + "items": { + "enum": [ + "REGION_UNKNOWN", + "REGION_A", + "REGION_B" + ], + "type": "string" + }, + "type": "array" + }, + "reportUrl": { + "description": "A link that leads to a full ad experience report.", + "type": "string" + }, + "underReview": { + "description": "Whether the site is currently under review.", + "type": "boolean" + } + }, + "type": "object" + }, + "SiteSummaryResponse": { + "description": "Response message for GetSiteSummary.", + "id": "SiteSummaryResponse", + "properties": { + "desktopSummary": { + "$ref": "PlatformSummary", + "description": "Summary for the desktop review of the site." + }, + "mobileSummary": { + "$ref": "PlatformSummary", + "description": "Summary for the mobile review of the site." + }, + "reviewedSite": { + "description": "The name of the site reviewed.", + "type": "string" + } + }, + "type": "object" + }, + "ViolatingSitesResponse": { + "description": "Response message for ListViolatingSites.", + "id": "ViolatingSitesResponse", + "properties": { + "violatingSites": { + "description": "A list of summaries of violating sites.", + "items": { + "$ref": "SiteSummaryResponse" + }, + "type": "array" + } + }, + "type": "object" + } + }, + "servicePath": "", + "title": "Google Ad Experience Report API", + "version": "v1", + "version_module": true +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/admin/datatransfer/v1/admin-api.json b/vendor/google.golang.org/api/admin/datatransfer/v1/admin-api.json index 0f43659eb..496e2a326 100644 --- a/vendor/google.golang.org/api/admin/datatransfer/v1/admin-api.json +++ b/vendor/google.golang.org/api/admin/datatransfer/v1/admin-api.json @@ -1,411 +1,411 @@ { - "kind": "discovery#restDescription", - "etag": "\"YWOzh2SDasdU84ArJnpYek-OMdg/69RNEuIs-2cMvhRHgpkaoTAmcFU\"", - "discoveryVersion": "v1", - "id": "admin:datatransfer_v1", - "name": "admin", - "canonicalName": "DataTransfer", - "version": "datatransfer_v1", - "revision": "20160223", - "title": "Admin Data Transfer API", - "description": "Transfers user data from one user to another.", - "ownerDomain": "google.com", - "ownerName": "Google", - "packagePath": "admin", - "icons": { - "x16": "https://www.gstatic.com/images/branding/product/1x/googleg_16dp.png", - "x32": "https://www.gstatic.com/images/branding/product/1x/googleg_32dp.png" - }, - "documentationLink": "https://developers.google.com/admin-sdk/data-transfer/", - "protocol": "rest", - "baseUrl": "https://www.googleapis.com/admin/datatransfer/v1/", - "basePath": "/admin/datatransfer/v1/", - "rootUrl": "https://www.googleapis.com/", - "servicePath": "admin/datatransfer/v1/", - "batchPath": "batch/admin/datatransfer_v1", - "parameters": { - "alt": { - "type": "string", - "description": "Data format for the response.", - "default": "json", - "enum": [ - "json" - ], - "enumDescriptions": [ - "Responses with Content-Type of application/json" - ], - "location": "query" - }, - "fields": { - "type": "string", - "description": "Selector specifying which fields to include in a partial response.", - "location": "query" - }, - "key": { - "type": "string", - "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" - }, - "oauth_token": { - "type": "string", - "description": "OAuth 2.0 token for the current user.", - "location": "query" - }, - "prettyPrint": { - "type": "boolean", - "description": "Returns response with indentations and line breaks.", - "default": "true", - "location": "query" - }, - "quotaUser": { - "type": "string", - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", - "location": "query" - }, - "userIp": { - "type": "string", - "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", - "location": "query" - } - }, - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/admin.datatransfer": { - "description": "View and manage data transfers between users in your organization" - }, - "https://www.googleapis.com/auth/admin.datatransfer.readonly": { - "description": "View data transfers between users in your organization" + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/admin.datatransfer": { + "description": "View and manage data transfers between users in your organization" + }, + "https://www.googleapis.com/auth/admin.datatransfer.readonly": { + "description": "View data transfers between users in your organization" + } + } } - } - } - }, - "schemas": { - "Application": { - "id": "Application", - "type": "object", - "description": "The JSON template for an Application resource.", - "properties": { - "etag": { - "type": "string", - "description": "Etag of the resource." - }, - "id": { - "type": "string", - "description": "The application's ID.", - "format": "int64" - }, - "kind": { - "type": "string", - "description": "Identifies the resource as a DataTransfer Application Resource.", - "default": "admin#datatransfer#ApplicationResource" - }, - "name": { - "type": "string", - "description": "The application's name." - }, - "transferParams": { - "type": "array", - "description": "The list of all possible transfer parameters for this application. These parameters can be used to select the data of the user in this application to be transfered.", - "items": { - "$ref": "ApplicationTransferParam" - } - } - } }, - "ApplicationDataTransfer": { - "id": "ApplicationDataTransfer", - "type": "object", - "description": "Template to map fields of ApplicationDataTransfer resource.", - "properties": { - "applicationId": { - "type": "string", - "description": "The application's ID.", - "format": "int64" - }, - "applicationTransferParams": { - "type": "array", - "description": "The transfer parameters for the application. These parameters are used to select the data which will get transfered in context of this application.", - "items": { - "$ref": "ApplicationTransferParam" - } - }, - "applicationTransferStatus": { - "type": "string", - "description": "Current status of transfer for this application. (Read-only)" - } - } + "basePath": "/admin/datatransfer/v1/", + "baseUrl": "https://www.googleapis.com/admin/datatransfer/v1/", + "batchPath": "batch/admin/datatransfer_v1", + "canonicalName": "DataTransfer", + "description": "Transfers user data from one user to another.", + "discoveryVersion": "v1", + "documentationLink": "https://developers.google.com/admin-sdk/data-transfer/", + "etag": "\"-iA1DTNe4s-I6JZXPt1t1Ypy8IU/69RNEuIs-2cMvhRHgpkaoTAmcFU\"", + "icons": { + "x16": "https://www.gstatic.com/images/branding/product/1x/googleg_16dp.png", + "x32": "https://www.gstatic.com/images/branding/product/1x/googleg_32dp.png" }, - "ApplicationTransferParam": { - "id": "ApplicationTransferParam", - "type": "object", - "description": "Template for application transfer parameters.", - "properties": { - "key": { - "type": "string", - "description": "The type of the transfer parameter. eg: 'PRIVACY_LEVEL'" - }, - "value": { - "type": "array", - "description": "The value of the coressponding transfer parameter. eg: 'PRIVATE' or 'SHARED'", - "items": { + "id": "admin:datatransfer_v1", + "kind": "discovery#restDescription", + "name": "admin", + "ownerDomain": "google.com", + "ownerName": "Google", + "packagePath": "admin", + "parameters": { + "alt": { + "default": "json", + "description": "Data format for the response.", + "enum": [ + "json" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json" + ], + "location": "query", + "type": "string" + }, + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "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.", + "location": "query", + "type": "string" + }, + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", + "location": "query", + "type": "string" + }, + "userIp": { + "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", + "location": "query", "type": "string" - } } - } }, - "ApplicationsListResponse": { - "id": "ApplicationsListResponse", - "type": "object", - "description": "Template for a collection of Applications.", - "properties": { + "protocol": "rest", + "resources": { "applications": { - "type": "array", - "description": "List of applications that support data transfer and are also installed for the customer.", - "items": { - "$ref": "Application" - } + "methods": { + "get": { + "description": "Retrieves information about an application for the given application ID.", + "httpMethod": "GET", + "id": "datatransfer.applications.get", + "parameterOrder": [ + "applicationId" + ], + "parameters": { + "applicationId": { + "description": "ID of the application resource to be retrieved.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "applications/{applicationId}", + "response": { + "$ref": "Application" + }, + "scopes": [ + "https://www.googleapis.com/auth/admin.datatransfer", + "https://www.googleapis.com/auth/admin.datatransfer.readonly" + ] + }, + "list": { + "description": "Lists the applications available for data transfer for a customer.", + "httpMethod": "GET", + "id": "datatransfer.applications.list", + "parameters": { + "customerId": { + "description": "Immutable ID of the Google Apps account.", + "location": "query", + "type": "string" + }, + "maxResults": { + "description": "Maximum number of results to return. Default is 100.", + "format": "int32", + "location": "query", + "maximum": "500", + "minimum": "1", + "type": "integer" + }, + "pageToken": { + "description": "Token to specify next page in the list.", + "location": "query", + "type": "string" + } + }, + "path": "applications", + "response": { + "$ref": "ApplicationsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/admin.datatransfer", + "https://www.googleapis.com/auth/admin.datatransfer.readonly" + ] + } + } }, - "etag": { - "type": "string", - "description": "ETag of the resource." - }, - "kind": { - "type": "string", - "description": "Identifies the resource as a collection of Applications.", - "default": "admin#datatransfer#applicationsList" - }, - "nextPageToken": { - "type": "string", - "description": "Continuation token which will be used to specify next page in list API." + "transfers": { + "methods": { + "get": { + "description": "Retrieves a data transfer request by its resource ID.", + "httpMethod": "GET", + "id": "datatransfer.transfers.get", + "parameterOrder": [ + "dataTransferId" + ], + "parameters": { + "dataTransferId": { + "description": "ID of the resource to be retrieved. This is returned in the response from the insert method.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "transfers/{dataTransferId}", + "response": { + "$ref": "DataTransfer" + }, + "scopes": [ + "https://www.googleapis.com/auth/admin.datatransfer", + "https://www.googleapis.com/auth/admin.datatransfer.readonly" + ] + }, + "insert": { + "description": "Inserts a data transfer request.", + "httpMethod": "POST", + "id": "datatransfer.transfers.insert", + "path": "transfers", + "request": { + "$ref": "DataTransfer" + }, + "response": { + "$ref": "DataTransfer" + }, + "scopes": [ + "https://www.googleapis.com/auth/admin.datatransfer" + ] + }, + "list": { + "description": "Lists the transfers for a customer by source user, destination user, or status.", + "httpMethod": "GET", + "id": "datatransfer.transfers.list", + "parameters": { + "customerId": { + "description": "Immutable ID of the Google Apps account.", + "location": "query", + "type": "string" + }, + "maxResults": { + "description": "Maximum number of results to return. Default is 100.", + "format": "int32", + "location": "query", + "maximum": "500", + "minimum": "1", + "type": "integer" + }, + "newOwnerUserId": { + "description": "Destination user's profile ID.", + "location": "query", + "type": "string" + }, + "oldOwnerUserId": { + "description": "Source user's profile ID.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Token to specify the next page in the list.", + "location": "query", + "type": "string" + }, + "status": { + "description": "Status of the transfer.", + "location": "query", + "type": "string" + } + }, + "path": "transfers", + "response": { + "$ref": "DataTransfersListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/admin.datatransfer", + "https://www.googleapis.com/auth/admin.datatransfer.readonly" + ] + } + } } - } }, - "DataTransfer": { - "id": "DataTransfer", - "type": "object", - "description": "The JSON template for a DataTransfer resource.", - "properties": { - "applicationDataTransfers": { - "type": "array", - "description": "List of per application data transfer resources. It contains data transfer details of the applications associated with this transfer resource. Note that this list is also used to specify the applications for which data transfer has to be done at the time of the transfer resource creation.", - "items": { - "$ref": "ApplicationDataTransfer" - } + "revision": "20160223", + "rootUrl": "https://www.googleapis.com/", + "schemas": { + "Application": { + "description": "The JSON template for an Application resource.", + "id": "Application", + "properties": { + "etag": { + "description": "Etag of the resource.", + "type": "string" + }, + "id": { + "description": "The application's ID.", + "format": "int64", + "type": "string" + }, + "kind": { + "default": "admin#datatransfer#ApplicationResource", + "description": "Identifies the resource as a DataTransfer Application Resource.", + "type": "string" + }, + "name": { + "description": "The application's name.", + "type": "string" + }, + "transferParams": { + "description": "The list of all possible transfer parameters for this application. These parameters can be used to select the data of the user in this application to be transfered.", + "items": { + "$ref": "ApplicationTransferParam" + }, + "type": "array" + } + }, + "type": "object" }, - "etag": { - "type": "string", - "description": "ETag of the resource." + "ApplicationDataTransfer": { + "description": "Template to map fields of ApplicationDataTransfer resource.", + "id": "ApplicationDataTransfer", + "properties": { + "applicationId": { + "description": "The application's ID.", + "format": "int64", + "type": "string" + }, + "applicationTransferParams": { + "description": "The transfer parameters for the application. These parameters are used to select the data which will get transfered in context of this application.", + "items": { + "$ref": "ApplicationTransferParam" + }, + "type": "array" + }, + "applicationTransferStatus": { + "description": "Current status of transfer for this application. (Read-only)", + "type": "string" + } + }, + "type": "object" }, - "id": { - "type": "string", - "description": "The transfer's ID (Read-only)." + "ApplicationTransferParam": { + "description": "Template for application transfer parameters.", + "id": "ApplicationTransferParam", + "properties": { + "key": { + "description": "The type of the transfer parameter. eg: 'PRIVACY_LEVEL'", + "type": "string" + }, + "value": { + "description": "The value of the coressponding transfer parameter. eg: 'PRIVATE' or 'SHARED'", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" }, - "kind": { - "type": "string", - "description": "Identifies the resource as a DataTransfer request.", - "default": "admin#datatransfer#DataTransfer" + "ApplicationsListResponse": { + "description": "Template for a collection of Applications.", + "id": "ApplicationsListResponse", + "properties": { + "applications": { + "description": "List of applications that support data transfer and are also installed for the customer.", + "items": { + "$ref": "Application" + }, + "type": "array" + }, + "etag": { + "description": "ETag of the resource.", + "type": "string" + }, + "kind": { + "default": "admin#datatransfer#applicationsList", + "description": "Identifies the resource as a collection of Applications.", + "type": "string" + }, + "nextPageToken": { + "description": "Continuation token which will be used to specify next page in list API.", + "type": "string" + } + }, + "type": "object" }, - "newOwnerUserId": { - "type": "string", - "description": "ID of the user to whom the data is being transfered." + "DataTransfer": { + "description": "The JSON template for a DataTransfer resource.", + "id": "DataTransfer", + "properties": { + "applicationDataTransfers": { + "description": "List of per application data transfer resources. It contains data transfer details of the applications associated with this transfer resource. Note that this list is also used to specify the applications for which data transfer has to be done at the time of the transfer resource creation.", + "items": { + "$ref": "ApplicationDataTransfer" + }, + "type": "array" + }, + "etag": { + "description": "ETag of the resource.", + "type": "string" + }, + "id": { + "description": "The transfer's ID (Read-only).", + "type": "string" + }, + "kind": { + "default": "admin#datatransfer#DataTransfer", + "description": "Identifies the resource as a DataTransfer request.", + "type": "string" + }, + "newOwnerUserId": { + "description": "ID of the user to whom the data is being transfered.", + "type": "string" + }, + "oldOwnerUserId": { + "description": "ID of the user whose data is being transfered.", + "type": "string" + }, + "overallTransferStatusCode": { + "description": "Overall transfer status (Read-only).", + "type": "string" + }, + "requestTime": { + "description": "The time at which the data transfer was requested (Read-only).", + "format": "date-time", + "type": "string" + } + }, + "type": "object" }, - "oldOwnerUserId": { - "type": "string", - "description": "ID of the user whose data is being transfered." - }, - "overallTransferStatusCode": { - "type": "string", - "description": "Overall transfer status (Read-only)." - }, - "requestTime": { - "type": "string", - "description": "The time at which the data transfer was requested (Read-only).", - "format": "date-time" + "DataTransfersListResponse": { + "description": "Template for a collection of DataTransfer resources.", + "id": "DataTransfersListResponse", + "properties": { + "dataTransfers": { + "description": "List of data transfer requests.", + "items": { + "$ref": "DataTransfer" + }, + "type": "array" + }, + "etag": { + "description": "ETag of the resource.", + "type": "string" + }, + "kind": { + "default": "admin#datatransfer#dataTransfersList", + "description": "Identifies the resource as a collection of data transfer requests.", + "type": "string" + }, + "nextPageToken": { + "description": "Continuation token which will be used to specify next page in list API.", + "type": "string" + } + }, + "type": "object" } - } }, - "DataTransfersListResponse": { - "id": "DataTransfersListResponse", - "type": "object", - "description": "Template for a collection of DataTransfer resources.", - "properties": { - "dataTransfers": { - "type": "array", - "description": "List of data transfer requests.", - "items": { - "$ref": "DataTransfer" - } - }, - "etag": { - "type": "string", - "description": "ETag of the resource." - }, - "kind": { - "type": "string", - "description": "Identifies the resource as a collection of data transfer requests.", - "default": "admin#datatransfer#dataTransfersList" - }, - "nextPageToken": { - "type": "string", - "description": "Continuation token which will be used to specify next page in list API." - } - } - } - }, - "resources": { - "applications": { - "methods": { - "get": { - "id": "datatransfer.applications.get", - "path": "applications/{applicationId}", - "httpMethod": "GET", - "description": "Retrieves information about an application for the given application ID.", - "parameters": { - "applicationId": { - "type": "string", - "description": "ID of the application resource to be retrieved.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "applicationId" - ], - "response": { - "$ref": "Application" - }, - "scopes": [ - "https://www.googleapis.com/auth/admin.datatransfer", - "https://www.googleapis.com/auth/admin.datatransfer.readonly" - ] - }, - "list": { - "id": "datatransfer.applications.list", - "path": "applications", - "httpMethod": "GET", - "description": "Lists the applications available for data transfer for a customer.", - "parameters": { - "customerId": { - "type": "string", - "description": "Immutable ID of the Google Apps account.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "Maximum number of results to return. Default is 100.", - "format": "int32", - "minimum": "1", - "maximum": "500", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Token to specify next page in the list.", - "location": "query" - } - }, - "response": { - "$ref": "ApplicationsListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/admin.datatransfer", - "https://www.googleapis.com/auth/admin.datatransfer.readonly" - ] - } - } - }, - "transfers": { - "methods": { - "get": { - "id": "datatransfer.transfers.get", - "path": "transfers/{dataTransferId}", - "httpMethod": "GET", - "description": "Retrieves a data transfer request by its resource ID.", - "parameters": { - "dataTransferId": { - "type": "string", - "description": "ID of the resource to be retrieved. This is returned in the response from the insert method.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "dataTransferId" - ], - "response": { - "$ref": "DataTransfer" - }, - "scopes": [ - "https://www.googleapis.com/auth/admin.datatransfer", - "https://www.googleapis.com/auth/admin.datatransfer.readonly" - ] - }, - "insert": { - "id": "datatransfer.transfers.insert", - "path": "transfers", - "httpMethod": "POST", - "description": "Inserts a data transfer request.", - "request": { - "$ref": "DataTransfer" - }, - "response": { - "$ref": "DataTransfer" - }, - "scopes": [ - "https://www.googleapis.com/auth/admin.datatransfer" - ] - }, - "list": { - "id": "datatransfer.transfers.list", - "path": "transfers", - "httpMethod": "GET", - "description": "Lists the transfers for a customer by source user, destination user, or status.", - "parameters": { - "customerId": { - "type": "string", - "description": "Immutable ID of the Google Apps account.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "Maximum number of results to return. Default is 100.", - "format": "int32", - "minimum": "1", - "maximum": "500", - "location": "query" - }, - "newOwnerUserId": { - "type": "string", - "description": "Destination user's profile ID.", - "location": "query" - }, - "oldOwnerUserId": { - "type": "string", - "description": "Source user's profile ID.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Token to specify the next page in the list.", - "location": "query" - }, - "status": { - "type": "string", - "description": "Status of the transfer.", - "location": "query" - } - }, - "response": { - "$ref": "DataTransfersListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/admin.datatransfer", - "https://www.googleapis.com/auth/admin.datatransfer.readonly" - ] - } - } - } - } -} + "servicePath": "admin/datatransfer/v1/", + "title": "Admin Data Transfer API", + "version": "datatransfer_v1" +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/admin/directory/v1/admin-api.json b/vendor/google.golang.org/api/admin/directory/v1/admin-api.json index 30ce72f34..85a4c746b 100644 --- a/vendor/google.golang.org/api/admin/directory/v1/admin-api.json +++ b/vendor/google.golang.org/api/admin/directory/v1/admin-api.json @@ -1,6713 +1,6742 @@ { - "kind": "discovery#restDescription", - "etag": "\"YWOzh2SDasdU84ArJnpYek-OMdg/FEIM1JSTcD4HhoBpMoEeP9vkMCQ\"", - "discoveryVersion": "v1", - "id": "admin:directory_v1", - "name": "admin", - "canonicalName": "directory", - "version": "directory_v1", - "revision": "20171212", - "title": "Admin Directory API", - "description": "The Admin SDK Directory API lets you view and manage enterprise resources such as users and groups, administrative notifications, security features, and more.", - "ownerDomain": "google.com", - "ownerName": "Google", - "packagePath": "admin", - "icons": { - "x16": "https://www.gstatic.com/images/branding/product/1x/googleg_16dp.png", - "x32": "https://www.gstatic.com/images/branding/product/1x/googleg_32dp.png" - }, - "documentationLink": "https://developers.google.com/admin-sdk/directory/", - "protocol": "rest", - "baseUrl": "https://www.googleapis.com/admin/directory/v1/", - "basePath": "/admin/directory/v1/", - "rootUrl": "https://www.googleapis.com/", - "servicePath": "admin/directory/v1/", - "batchPath": "batch/admin/directory_v1", - "parameters": { - "alt": { - "type": "string", - "description": "Data format for the response.", - "default": "json", - "enum": [ - "json" - ], - "enumDescriptions": [ - "Responses with Content-Type of application/json" - ], - "location": "query" - }, - "fields": { - "type": "string", - "description": "Selector specifying which fields to include in a partial response.", - "location": "query" - }, - "key": { - "type": "string", - "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" - }, - "oauth_token": { - "type": "string", - "description": "OAuth 2.0 token for the current user.", - "location": "query" - }, - "prettyPrint": { - "type": "boolean", - "description": "Returns response with indentations and line breaks.", - "default": "true", - "location": "query" - }, - "quotaUser": { - "type": "string", - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", - "location": "query" - }, - "userIp": { - "type": "string", - "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", - "location": "query" - } - }, - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/admin.directory.customer": { - "description": "View and manage customer related information" - }, - "https://www.googleapis.com/auth/admin.directory.customer.readonly": { - "description": "View customer related information" - }, - "https://www.googleapis.com/auth/admin.directory.device.chromeos": { - "description": "View and manage your Chrome OS devices' metadata" - }, - "https://www.googleapis.com/auth/admin.directory.device.chromeos.readonly": { - "description": "View your Chrome OS devices' metadata" - }, - "https://www.googleapis.com/auth/admin.directory.device.mobile": { - "description": "View and manage your mobile devices' metadata" - }, - "https://www.googleapis.com/auth/admin.directory.device.mobile.action": { - "description": "Manage your mobile devices by performing administrative tasks" - }, - "https://www.googleapis.com/auth/admin.directory.device.mobile.readonly": { - "description": "View your mobile devices' metadata" - }, - "https://www.googleapis.com/auth/admin.directory.domain": { - "description": "View and manage the provisioning of domains for your customers" - }, - "https://www.googleapis.com/auth/admin.directory.domain.readonly": { - "description": "View domains related to your customers" - }, - "https://www.googleapis.com/auth/admin.directory.group": { - "description": "View and manage the provisioning of groups on your domain" - }, - "https://www.googleapis.com/auth/admin.directory.group.member": { - "description": "View and manage group subscriptions on your domain" - }, - "https://www.googleapis.com/auth/admin.directory.group.member.readonly": { - "description": "View group subscriptions on your domain" - }, - "https://www.googleapis.com/auth/admin.directory.group.readonly": { - "description": "View groups on your domain" - }, - "https://www.googleapis.com/auth/admin.directory.notifications": { - "description": "View and manage notifications received on your domain" - }, - "https://www.googleapis.com/auth/admin.directory.orgunit": { - "description": "View and manage organization units on your domain" - }, - "https://www.googleapis.com/auth/admin.directory.orgunit.readonly": { - "description": "View organization units on your domain" - }, - "https://www.googleapis.com/auth/admin.directory.resource.calendar": { - "description": "View and manage the provisioning of calendar resources on your domain" - }, - "https://www.googleapis.com/auth/admin.directory.resource.calendar.readonly": { - "description": "View calendar resources on your domain" - }, - "https://www.googleapis.com/auth/admin.directory.rolemanagement": { - "description": "Manage delegated admin roles for your domain" - }, - "https://www.googleapis.com/auth/admin.directory.rolemanagement.readonly": { - "description": "View delegated admin roles for your domain" - }, - "https://www.googleapis.com/auth/admin.directory.user": { - "description": "View and manage the provisioning of users on your domain" - }, - "https://www.googleapis.com/auth/admin.directory.user.alias": { - "description": "View and manage user aliases on your domain" - }, - "https://www.googleapis.com/auth/admin.directory.user.alias.readonly": { - "description": "View user aliases on your domain" - }, - "https://www.googleapis.com/auth/admin.directory.user.readonly": { - "description": "View users on your domain" - }, - "https://www.googleapis.com/auth/admin.directory.user.security": { - "description": "Manage data access permissions for users on your domain" - }, - "https://www.googleapis.com/auth/admin.directory.userschema": { - "description": "View and manage the provisioning of user schemas on your domain" - }, - "https://www.googleapis.com/auth/admin.directory.userschema.readonly": { - "description": "View user schemas on your domain" - } - } - } - }, - "schemas": { - "Alias": { - "id": "Alias", - "type": "object", - "description": "JSON template for Alias object in Directory API.", - "properties": { - "alias": { - "type": "string", - "description": "A alias email" - }, - "etag": { - "type": "string", - "description": "ETag of the resource." - }, - "id": { - "type": "string", - "description": "Unique id of the group (Read-only) Unique id of the user (Read-only)" - }, - "kind": { - "type": "string", - "description": "Kind of resource this is.", - "default": "admin#directory#alias" - }, - "primaryEmail": { - "type": "string", - "description": "Group's primary email (Read-only) User's primary email (Read-only)" - } - } - }, - "Aliases": { - "id": "Aliases", - "type": "object", - "description": "JSON response template to list aliases in Directory API.", - "properties": { - "aliases": { - "type": "array", - "description": "List of alias objects.", - "items": { - "type": "any" - } - }, - "etag": { - "type": "string", - "description": "ETag of the resource." - }, - "kind": { - "type": "string", - "description": "Kind of resource this is.", - "default": "admin#directory#aliases" - } - } - }, - "AppAccessCollections": { - "id": "AppAccessCollections", - "type": "object", - "description": "JSON template for App Access Collections Resource object in Directory API.", - "properties": { - "blockedApiAccessBuckets": { - "type": "array", - "description": "List of blocked api access buckets.", - "items": { - "type": "string" - } - }, - "enforceSettingsForAndroidDrive": { - "type": "boolean", - "description": "Boolean to indicate whether to enforce app access settings on Android Drive or not." - }, - "errorMessage": { - "type": "string", - "description": "Error message provided by the Admin that will be shown to the user when an app is blocked." - }, - "etag": { - "type": "string", - "description": "ETag of the resource." - }, - "kind": { - "type": "string", - "description": "Identifies the resource as an app access collection. Value: admin#directory#appaccesscollection", - "default": "admin#directory#appaccesscollection" - }, - "resourceId": { - "type": "string", - "description": "Unique ID of app access collection. (Readonly)", - "format": "int64" - }, - "resourceName": { - "type": "string", - "description": "Resource name given by the customer while creating/updating. Should be unique under given customer." - }, - "trustDomainOwnedApps": { - "type": "boolean", - "description": "Boolean that indicates whether to trust domain owned apps." - } - } - }, - "Asp": { - "id": "Asp", - "type": "object", - "description": "The template that returns individual ASP (Access Code) data.", - "properties": { - "codeId": { - "type": "integer", - "description": "The unique ID of the ASP.", - "format": "int32" - }, - "creationTime": { - "type": "string", - "description": "The time when the ASP was created. Expressed in Unix time format.", - "format": "int64" - }, - "etag": { - "type": "string", - "description": "ETag of the ASP." - }, - "kind": { - "type": "string", - "description": "The type of the API resource. This is always admin#directory#asp.", - "default": "admin#directory#asp" - }, - "lastTimeUsed": { - "type": "string", - "description": "The time when the ASP was last used. Expressed in Unix time format.", - "format": "int64" - }, - "name": { - "type": "string", - "description": "The name of the application that the user, represented by their userId, entered when the ASP was created." - }, - "userKey": { - "type": "string", - "description": "The unique ID of the user who issued the ASP." - } - } - }, - "Asps": { - "id": "Asps", - "type": "object", - "properties": { - "etag": { - "type": "string", - "description": "ETag of the resource." - }, - "items": { - "type": "array", - "description": "A list of ASP resources.", - "items": { - "$ref": "Asp" - } - }, - "kind": { - "type": "string", - "description": "The type of the API resource. This is always admin#directory#aspList.", - "default": "admin#directory#aspList" - } - } - }, - "Building": { - "id": "Building", - "type": "object", - "description": "JSON template for Building object in Directory API.", - "properties": { - "buildingId": { - "type": "string", - "description": "Unique identifier for the building. The maximum length is 100 characters." - }, - "buildingName": { - "type": "string", - "description": "The building name as seen by users in Calendar. Must be unique for the customer. For example, \"NYC-CHEL\". The maximum length is 100 characters." - }, - "coordinates": { - "$ref": "BuildingCoordinates", - "description": "The geographic coordinates of the center of the building, expressed as latitude and longitude in decimal degrees." - }, - "description": { - "type": "string", - "description": "A brief description of the building. For example, \"Chelsea Market\"." - }, - "etags": { - "type": "string", - "description": "ETag of the resource." - }, - "floorNames": { - "type": "array", - "description": "The display names for all floors in this building. The floors are expected to be sorted in ascending order, from lowest floor to highest floor. For example, [\"B2\", \"B1\", \"L\", \"1\", \"2\", \"2M\", \"3\", \"PH\"] Must contain at least one entry.", - "items": { - "type": "string" - } - }, - "kind": { - "type": "string", - "description": "Kind of resource this is.", - "default": "admin#directory#resources#buildings#Building" - } - } - }, - "BuildingCoordinates": { - "id": "BuildingCoordinates", - "type": "object", - "description": "JSON template for coordinates of a building in Directory API.", - "properties": { - "latitude": { - "type": "number", - "description": "Latitude in decimal degrees.", - "format": "double" - }, - "longitude": { - "type": "number", - "description": "Longitude in decimal degrees.", - "format": "double" - } - } - }, - "Buildings": { - "id": "Buildings", - "type": "object", - "description": "JSON template for Building List Response object in Directory API.", - "properties": { - "buildings": { - "type": "array", - "description": "The Buildings in this page of results.", - "items": { - "$ref": "Building" - } - }, - "etag": { - "type": "string", - "description": "ETag of the resource." - }, - "kind": { - "type": "string", - "description": "Kind of resource this is.", - "default": "admin#directory#resources#buildings#buildingsList" - }, - "nextPageToken": { - "type": "string", - "description": "The continuation token, used to page through large result sets. Provide this value in a subsequent request to return the next page of results." - } - } - }, - "CalendarResource": { - "id": "CalendarResource", - "type": "object", - "description": "JSON template for Calendar Resource object in Directory API.", - "properties": { - "buildingId": { - "type": "string", - "description": "Unique ID for the building a resource is located in." - }, - "capacity": { - "type": "integer", - "description": "Capacity of a resource, number of seats in a room.", - "format": "int32" - }, - "etags": { - "type": "string", - "description": "ETag of the resource." - }, - "featureInstances": { - "type": "any" - }, - "floorName": { - "type": "string", - "description": "Name of the floor a resource is located on." - }, - "floorSection": { - "type": "string", - "description": "Name of the section within a floor a resource is located in." - }, - "generatedResourceName": { - "type": "string", - "description": "The read-only auto-generated name of the calendar resource which includes metadata about the resource such as building name, floor, capacity, etc. For example, \"NYC-2-Training Room 1A (16)\"." - }, - "kind": { - "type": "string", - "description": "The type of the resource. For calendar resources, the value is admin#directory#resources#calendars#CalendarResource.", - "default": "admin#directory#resources#calendars#CalendarResource" - }, - "resourceCategory": { - "type": "string", - "description": "The category of the calendar resource. Either CONFERENCE_ROOM or OTHER. Legacy data is set to CATEGORY_UNKNOWN." - }, - "resourceDescription": { - "type": "string", - "description": "Description of the resource, visible only to admins." - }, - "resourceEmail": { - "type": "string", - "description": "The read-only email for the calendar resource. Generated as part of creating a new calendar resource." - }, - "resourceId": { - "type": "string", - "description": "The unique ID for the calendar resource." - }, - "resourceName": { - "type": "string", - "description": "The name of the calendar resource. For example, \"Training Room 1A\"." - }, - "resourceType": { - "type": "string", - "description": "The type of the calendar resource, intended for non-room resources." - }, - "userVisibleDescription": { - "type": "string", - "description": "Description of the resource, visible to users and admins." - } - } - }, - "CalendarResources": { - "id": "CalendarResources", - "type": "object", - "description": "JSON template for Calendar Resource List Response object in Directory API.", - "properties": { - "etag": { - "type": "string", - "description": "ETag of the resource." - }, - "items": { - "type": "array", - "description": "The CalendarResources in this page of results.", - "items": { - "$ref": "CalendarResource" - } - }, - "kind": { - "type": "string", - "description": "Identifies this as a collection of CalendarResources. This is always admin#directory#resources#calendars#calendarResourcesList.", - "default": "admin#directory#resources#calendars#calendarResourcesList" - }, - "nextPageToken": { - "type": "string", - "description": "The continuation token, used to page through large result sets. Provide this value in a subsequent request to return the next page of results." - } - } - }, - "Channel": { - "id": "Channel", - "type": "object", - "description": "An notification channel used to watch for resource changes.", - "properties": { - "address": { - "type": "string", - "description": "The address where notifications are delivered for this channel." - }, - "expiration": { - "type": "string", - "description": "Date and time of notification channel expiration, expressed as a Unix timestamp, in milliseconds. Optional.", - "format": "int64" - }, - "id": { - "type": "string", - "description": "A UUID or similar unique string that identifies this channel." - }, - "kind": { - "type": "string", - "description": "Identifies this as a notification channel used to watch for changes to a resource. Value: the fixed string \"api#channel\".", - "default": "api#channel" - }, - "params": { - "type": "object", - "description": "Additional parameters controlling delivery channel behavior. Optional.", - "additionalProperties": { - "type": "string", - "description": "Declares a new parameter by name." - } - }, - "payload": { - "type": "boolean", - "description": "A Boolean value to indicate whether payload is wanted. Optional." - }, - "resourceId": { - "type": "string", - "description": "An opaque ID that identifies the resource being watched on this channel. Stable across different API versions." - }, - "resourceUri": { - "type": "string", - "description": "A version-specific identifier for the watched resource." - }, - "token": { - "type": "string", - "description": "An arbitrary string delivered to the target address with each notification delivered over this channel. Optional." - }, - "type": { - "type": "string", - "description": "The type of delivery mechanism used for this channel." - } - } - }, - "ChromeOsDevice": { - "id": "ChromeOsDevice", - "type": "object", - "description": "JSON template for Chrome Os Device resource in Directory API.", - "properties": { - "activeTimeRanges": { - "type": "array", - "description": "List of active time ranges (Read-only)", - "items": { - "type": "object", - "properties": { - "activeTime": { - "type": "integer", - "description": "Duration in milliseconds", - "format": "int32" - }, - "date": { - "type": "string", - "description": "Date of usage", - "format": "date" - } - } - } - }, - "annotatedAssetId": { - "type": "string", - "description": "AssetId specified during enrollment or through later annotation" - }, - "annotatedLocation": { - "type": "string", - "description": "Address or location of the device as noted by the administrator" - }, - "annotatedUser": { - "type": "string", - "description": "User of the device" - }, - "bootMode": { - "type": "string", - "description": "Chromebook boot mode (Read-only)" - }, - "deviceFiles": { - "type": "array", - "description": "List of device files to download (Read-only)", - "items": { - "type": "object", - "properties": { - "createTime": { - "type": "string", - "description": "Date and time the file was created", - "format": "date-time" - }, - "downloadUrl": { - "type": "string", - "description": "File downlod URL" - }, - "name": { - "type": "string", - "description": "File name" - }, - "type": { - "type": "string", - "description": "File type" - } - } - } - }, - "deviceId": { - "type": "string", - "description": "Unique identifier of Chrome OS Device (Read-only)" - }, - "etag": { - "type": "string", - "description": "ETag of the resource." - }, - "ethernetMacAddress": { - "type": "string", - "description": "Chromebook Mac Address on ethernet network interface (Read-only)" - }, - "firmwareVersion": { - "type": "string", - "description": "Chromebook firmware version (Read-only)" - }, - "kind": { - "type": "string", - "description": "Kind of resource this is.", - "default": "admin#directory#chromeosdevice" - }, - "lastEnrollmentTime": { - "type": "string", - "description": "Date and time the device was last enrolled (Read-only)", - "format": "date-time" - }, - "lastSync": { - "type": "string", - "description": "Date and time the device was last synchronized with the policy settings in the G Suite administrator control panel (Read-only)", - "format": "date-time" - }, - "macAddress": { - "type": "string", - "description": "Chromebook Mac Address on wifi network interface (Read-only)" - }, - "meid": { - "type": "string", - "description": "Mobile Equipment identifier for the 3G mobile card in the Chromebook (Read-only)" - }, - "model": { - "type": "string", - "description": "Chromebook Model (Read-only)" - }, - "notes": { - "type": "string", - "description": "Notes added by the administrator" - }, - "orderNumber": { - "type": "string", - "description": "Chromebook order number (Read-only)" - }, - "orgUnitPath": { - "type": "string", - "description": "OrgUnit of the device" - }, - "osVersion": { - "type": "string", - "description": "Chromebook Os Version (Read-only)" - }, - "platformVersion": { - "type": "string", - "description": "Chromebook platform version (Read-only)" - }, - "recentUsers": { - "type": "array", - "description": "List of recent device users, in descending order by last login time (Read-only)", - "items": { - "type": "object", - "properties": { - "email": { - "type": "string", - "description": "Email address of the user. Present only if the user type is managed" - }, - "type": { - "type": "string", - "description": "The type of the user" - } - } - } - }, - "serialNumber": { - "type": "string", - "description": "Chromebook serial number (Read-only)" - }, - "status": { - "type": "string", - "description": "status of the device (Read-only)" - }, - "supportEndDate": { - "type": "string", - "description": "Final date the device will be supported (Read-only)", - "format": "date-time" - }, - "tpmVersionInfo": { - "type": "object", - "properties": { - "family": { - "type": "string" - }, - "firmwareVersion": { - "type": "string" - }, - "manufacturer": { - "type": "string" - }, - "specLevel": { - "type": "string" - }, - "tpmModel": { - "type": "string" - }, - "vendorSpecific": { - "type": "string" - } - } - }, - "willAutoRenew": { - "type": "boolean", - "description": "Will Chromebook auto renew after support end date (Read-only)" - } - } - }, - "ChromeOsDeviceAction": { - "id": "ChromeOsDeviceAction", - "type": "object", - "description": "JSON request template for firing actions on ChromeOs Device in Directory Devices API.", - "properties": { - "action": { - "type": "string", - "description": "Action to be taken on the ChromeOs Device", - "annotations": { - "required": [ - "directory.chromeosdevices.action" - ] - } - }, - "deprovisionReason": { - "type": "string" - } - } - }, - "ChromeOsDevices": { - "id": "ChromeOsDevices", - "type": "object", - "description": "JSON response template for List Chrome OS Devices operation in Directory API.", - "properties": { - "chromeosdevices": { - "type": "array", - "description": "List of Chrome OS Device objects.", - "items": { - "$ref": "ChromeOsDevice" - } - }, - "etag": { - "type": "string", - "description": "ETag of the resource." - }, - "kind": { - "type": "string", - "description": "Kind of resource this is.", - "default": "admin#directory#chromeosdevices" - }, - "nextPageToken": { - "type": "string", - "description": "Token used to access next page of this result." - } - } - }, - "ChromeOsMoveDevicesToOu": { - "id": "ChromeOsMoveDevicesToOu", - "type": "object", - "description": "JSON request template for moving ChromeOs Device to given OU in Directory Devices API.", - "properties": { - "deviceIds": { - "type": "array", - "description": "ChromeOs Devices to be moved to OU", - "items": { - "type": "string" - }, - "annotations": { - "required": [ - "directory.chromeosdevices.moveDevicesToOu" - ] - } - } - } - }, - "Customer": { - "id": "Customer", - "type": "object", - "description": "JSON template for Customer Resource object in Directory API.", - "properties": { - "alternateEmail": { - "type": "string", - "description": "The customer's secondary contact email address. This email address cannot be on the same domain as the customerDomain" - }, - "customerCreationTime": { - "type": "string", - "description": "The customer's creation time (Readonly)", - "format": "date-time" - }, - "customerDomain": { - "type": "string", - "description": "The customer's primary domain name string. Do not include the www prefix when creating a new customer." - }, - "etag": { - "type": "string", - "description": "ETag of the resource." - }, - "id": { - "type": "string", - "description": "The unique ID for the customer's G Suite account. (Readonly)" - }, - "kind": { - "type": "string", - "description": "Identifies the resource as a customer. Value: admin#directory#customer", - "default": "admin#directory#customer" - }, - "language": { - "type": "string", - "description": "The customer's ISO 639-2 language code. The default value is en-US" - }, - "phoneNumber": { - "type": "string", - "description": "The customer's contact phone number in E.164 format." - }, - "postalAddress": { - "$ref": "CustomerPostalAddress", - "description": "The customer's postal address information." - } - } - }, - "CustomerPostalAddress": { - "id": "CustomerPostalAddress", - "type": "object", - "description": "JSON template for postal address of a customer.", - "properties": { - "addressLine1": { - "type": "string", - "description": "A customer's physical address. The address can be composed of one to three lines." - }, - "addressLine2": { - "type": "string", - "description": "Address line 2 of the address." - }, - "addressLine3": { - "type": "string", - "description": "Address line 3 of the address." - }, - "contactName": { - "type": "string", - "description": "The customer contact's name." - }, - "countryCode": { - "type": "string", - "description": "This is a required property. For countryCode information see the ISO 3166 country code elements." - }, - "locality": { - "type": "string", - "description": "Name of the locality. An example of a locality value is the city of San Francisco." - }, - "organizationName": { - "type": "string", - "description": "The company or company division name." - }, - "postalCode": { - "type": "string", - "description": "The postal code. A postalCode example is a postal zip code such as 10009. This is in accordance with - http://portablecontacts.net/draft-spec.html#address_element." - }, - "region": { - "type": "string", - "description": "Name of the region. An example of a region value is NY for the state of New York." - } - } - }, - "DomainAlias": { - "id": "DomainAlias", - "type": "object", - "description": "JSON template for Domain Alias object in Directory API.", - "properties": { - "creationTime": { - "type": "string", - "description": "The creation time of the domain alias. (Read-only).", - "format": "int64" - }, - "domainAliasName": { - "type": "string", - "description": "The domain alias name." - }, - "etag": { - "type": "string", - "description": "ETag of the resource." - }, - "kind": { - "type": "string", - "description": "Kind of resource this is.", - "default": "admin#directory#domainAlias" - }, - "parentDomainName": { - "type": "string", - "description": "The parent domain name that the domain alias is associated with. This can either be a primary or secondary domain name within a customer.", - "annotations": { - "required": [ - "directory.domains.insert" - ] - } - }, - "verified": { - "type": "boolean", - "description": "Indicates the verification state of a domain alias. (Read-only)" - } - } - }, - "DomainAliases": { - "id": "DomainAliases", - "type": "object", - "description": "JSON response template to list domain aliases in Directory API.", - "properties": { - "domainAliases": { - "type": "array", - "description": "List of domain alias objects.", - "items": { - "$ref": "DomainAlias" - } - }, - "etag": { - "type": "string", - "description": "ETag of the resource." - }, - "kind": { - "type": "string", - "description": "Kind of resource this is.", - "default": "admin#directory#domainAliases" - } - } - }, - "Domains": { - "id": "Domains", - "type": "object", - "description": "JSON template for Domain object in Directory API.", - "properties": { - "creationTime": { - "type": "string", - "description": "Creation time of the domain. (Read-only).", - "format": "int64" - }, - "domainAliases": { - "type": "array", - "description": "List of domain alias objects. (Read-only)", - "items": { - "$ref": "DomainAlias" - } - }, - "domainName": { - "type": "string", - "description": "The domain name of the customer.", - "annotations": { - "required": [ - "directory.domains.insert" - ] - } - }, - "etag": { - "type": "string", - "description": "ETag of the resource." - }, - "isPrimary": { - "type": "boolean", - "description": "Indicates if the domain is a primary domain (Read-only)." - }, - "kind": { - "type": "string", - "description": "Kind of resource this is.", - "default": "admin#directory#domain" - }, - "verified": { - "type": "boolean", - "description": "Indicates the verification state of a domain. (Read-only)." - } - } - }, - "Domains2": { - "id": "Domains2", - "type": "object", - "description": "JSON response template to list Domains in Directory API.", - "properties": { - "domains": { - "type": "array", - "description": "List of domain objects.", - "items": { - "$ref": "Domains" - } - }, - "etag": { - "type": "string", - "description": "ETag of the resource." - }, - "kind": { - "type": "string", - "description": "Kind of resource this is.", - "default": "admin#directory#domains" - } - } - }, - "Feature": { - "id": "Feature", - "type": "object", - "description": "JSON template for Feature object in Directory API.", - "properties": { - "etags": { - "type": "string", - "description": "ETag of the resource." - }, - "kind": { - "type": "string", - "description": "Kind of resource this is.", - "default": "admin#directory#resources#features#Feature" - }, - "name": { - "type": "string", - "description": "The name of the feature.", - "annotations": { - "required": [ - "directory.resources.features.insert" - ] - } - } - } - }, - "FeatureInstance": { - "id": "FeatureInstance", - "type": "object", - "description": "JSON template for a \"feature instance\".", - "properties": { - "feature": { - "$ref": "Feature" - } - } - }, - "FeatureRename": { - "id": "FeatureRename", - "type": "object", - "description": "JSON request template for renaming a feature.", - "properties": { - "newName": { - "type": "string", - "description": "New name of the feature.", - "annotations": { - "required": [ - "directory.resources.features.rename" - ] - } - } - } - }, - "Features": { - "id": "Features", - "type": "object", - "description": "JSON template for Feature List Response object in Directory API.", - "properties": { - "etag": { - "type": "string", - "description": "ETag of the resource." - }, - "features": { - "type": "array", - "description": "The Features in this page of results.", - "items": { - "$ref": "Feature" - } - }, - "kind": { - "type": "string", - "description": "Kind of resource this is.", - "default": "admin#directory#resources#features#featuresList" - }, - "nextPageToken": { - "type": "string", - "description": "The continuation token, used to page through large result sets. Provide this value in a subsequent request to return the next page of results." - } - } - }, - "Group": { - "id": "Group", - "type": "object", - "description": "JSON template for Group resource in Directory API.", - "properties": { - "adminCreated": { - "type": "boolean", - "description": "Is the group created by admin (Read-only) *" - }, - "aliases": { - "type": "array", - "description": "List of aliases (Read-only)", - "items": { - "type": "string" - } - }, - "description": { - "type": "string", - "description": "Description of the group" - }, - "directMembersCount": { - "type": "string", - "description": "Group direct members count", - "format": "int64" - }, - "email": { - "type": "string", - "description": "Email of Group", - "annotations": { - "required": [ - "directory.groups.insert" - ] - } - }, - "etag": { - "type": "string", - "description": "ETag of the resource." - }, - "id": { - "type": "string", - "description": "Unique identifier of Group (Read-only)" - }, - "kind": { - "type": "string", - "description": "Kind of resource this is.", - "default": "admin#directory#group" - }, - "name": { - "type": "string", - "description": "Group name" - }, - "nonEditableAliases": { - "type": "array", - "description": "List of non editable aliases (Read-only)", - "items": { - "type": "string" - } - } - } - }, - "Groups": { - "id": "Groups", - "type": "object", - "description": "JSON response template for List Groups operation in Directory API.", - "properties": { - "etag": { - "type": "string", - "description": "ETag of the resource." - }, - "groups": { - "type": "array", - "description": "List of group objects.", - "items": { - "$ref": "Group" - } - }, - "kind": { - "type": "string", - "description": "Kind of resource this is.", - "default": "admin#directory#groups" - }, - "nextPageToken": { - "type": "string", - "description": "Token used to access next page of this result." - } - } - }, - "Member": { - "id": "Member", - "type": "object", - "description": "JSON template for Member resource in Directory API.", - "properties": { - "email": { - "type": "string", - "description": "Email of member (Read-only)" - }, - "etag": { - "type": "string", - "description": "ETag of the resource." - }, - "id": { - "type": "string", - "description": "Unique identifier of customer member (Read-only) Unique identifier of group (Read-only) Unique identifier of member (Read-only)" - }, - "kind": { - "type": "string", - "description": "Kind of resource this is.", - "default": "admin#directory#member" - }, - "role": { - "type": "string", - "description": "Role of member" - }, - "status": { - "type": "string", - "description": "Status of member (Immutable)" - }, - "type": { - "type": "string", - "description": "Type of member (Immutable)" - } - } - }, - "Members": { - "id": "Members", - "type": "object", - "description": "JSON response template for List Members operation in Directory API.", - "properties": { - "etag": { - "type": "string", - "description": "ETag of the resource." - }, - "kind": { - "type": "string", - "description": "Kind of resource this is.", - "default": "admin#directory#members" - }, - "members": { - "type": "array", - "description": "List of member objects.", - "items": { - "$ref": "Member" - } - }, - "nextPageToken": { - "type": "string", - "description": "Token used to access next page of this result." - } - } - }, - "MembersHasMember": { - "id": "MembersHasMember", - "type": "object", - "description": "JSON template for Has Member response in Directory API.", - "properties": { - "isMember": { - "type": "boolean", - "description": "Identifies whether given user is a member or not.", - "readOnly": true - } - } - }, - "MobileDevice": { - "id": "MobileDevice", - "type": "object", - "description": "JSON template for Mobile Device resource in Directory API.", - "properties": { - "adbStatus": { - "type": "boolean", - "description": "Adb (USB debugging) enabled or disabled on device (Read-only)" - }, - "applications": { - "type": "array", - "description": "List of applications installed on Mobile Device", - "items": { - "type": "object", - "properties": { - "displayName": { - "type": "string", - "description": "Display name of application" - }, - "packageName": { - "type": "string", - "description": "Package name of application" - }, - "permission": { - "type": "array", - "description": "List of Permissions for application", - "items": { - "type": "string" + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/admin.directory.customer": { + "description": "View and manage customer related information" + }, + "https://www.googleapis.com/auth/admin.directory.customer.readonly": { + "description": "View customer related information" + }, + "https://www.googleapis.com/auth/admin.directory.device.chromeos": { + "description": "View and manage your Chrome OS devices' metadata" + }, + "https://www.googleapis.com/auth/admin.directory.device.chromeos.readonly": { + "description": "View your Chrome OS devices' metadata" + }, + "https://www.googleapis.com/auth/admin.directory.device.mobile": { + "description": "View and manage your mobile devices' metadata" + }, + "https://www.googleapis.com/auth/admin.directory.device.mobile.action": { + "description": "Manage your mobile devices by performing administrative tasks" + }, + "https://www.googleapis.com/auth/admin.directory.device.mobile.readonly": { + "description": "View your mobile devices' metadata" + }, + "https://www.googleapis.com/auth/admin.directory.domain": { + "description": "View and manage the provisioning of domains for your customers" + }, + "https://www.googleapis.com/auth/admin.directory.domain.readonly": { + "description": "View domains related to your customers" + }, + "https://www.googleapis.com/auth/admin.directory.group": { + "description": "View and manage the provisioning of groups on your domain" + }, + "https://www.googleapis.com/auth/admin.directory.group.member": { + "description": "View and manage group subscriptions on your domain" + }, + "https://www.googleapis.com/auth/admin.directory.group.member.readonly": { + "description": "View group subscriptions on your domain" + }, + "https://www.googleapis.com/auth/admin.directory.group.readonly": { + "description": "View groups on your domain" + }, + "https://www.googleapis.com/auth/admin.directory.notifications": { + "description": "View and manage notifications received on your domain" + }, + "https://www.googleapis.com/auth/admin.directory.orgunit": { + "description": "View and manage organization units on your domain" + }, + "https://www.googleapis.com/auth/admin.directory.orgunit.readonly": { + "description": "View organization units on your domain" + }, + "https://www.googleapis.com/auth/admin.directory.resource.calendar": { + "description": "View and manage the provisioning of calendar resources on your domain" + }, + "https://www.googleapis.com/auth/admin.directory.resource.calendar.readonly": { + "description": "View calendar resources on your domain" + }, + "https://www.googleapis.com/auth/admin.directory.rolemanagement": { + "description": "Manage delegated admin roles for your domain" + }, + "https://www.googleapis.com/auth/admin.directory.rolemanagement.readonly": { + "description": "View delegated admin roles for your domain" + }, + "https://www.googleapis.com/auth/admin.directory.user": { + "description": "View and manage the provisioning of users on your domain" + }, + "https://www.googleapis.com/auth/admin.directory.user.alias": { + "description": "View and manage user aliases on your domain" + }, + "https://www.googleapis.com/auth/admin.directory.user.alias.readonly": { + "description": "View user aliases on your domain" + }, + "https://www.googleapis.com/auth/admin.directory.user.readonly": { + "description": "View users on your domain" + }, + "https://www.googleapis.com/auth/admin.directory.user.security": { + "description": "Manage data access permissions for users on your domain" + }, + "https://www.googleapis.com/auth/admin.directory.userschema": { + "description": "View and manage the provisioning of user schemas on your domain" + }, + "https://www.googleapis.com/auth/admin.directory.userschema.readonly": { + "description": "View user schemas on your domain" } - }, - "versionCode": { - "type": "integer", - "description": "Version code of application", - "format": "int32" - }, - "versionName": { - "type": "string", - "description": "Version name of application" - } } - } - }, - "basebandVersion": { - "type": "string", - "description": "Mobile Device Baseband version (Read-only)" - }, - "bootloaderVersion": { - "type": "string", - "description": "Mobile Device Bootloader version (Read-only)" - }, - "brand": { - "type": "string", - "description": "Mobile Device Brand (Read-only)" - }, - "buildNumber": { - "type": "string", - "description": "Mobile Device Build number (Read-only)" - }, - "defaultLanguage": { - "type": "string", - "description": "The default locale used on the Mobile Device (Read-only)" - }, - "developerOptionsStatus": { - "type": "boolean", - "description": "Developer options enabled or disabled on device (Read-only)" - }, - "deviceCompromisedStatus": { - "type": "string", - "description": "Mobile Device compromised status (Read-only)" - }, - "deviceId": { - "type": "string", - "description": "Mobile Device serial number (Read-only)" - }, - "devicePasswordStatus": { - "type": "string", - "description": "DevicePasswordStatus (Read-only)" - }, - "email": { - "type": "array", - "description": "List of owner user's email addresses (Read-only)", - "items": { + } + }, + "basePath": "/admin/directory/v1/", + "baseUrl": "https://www.googleapis.com/admin/directory/v1/", + "batchPath": "batch/admin/directory_v1", + "canonicalName": "directory", + "description": "The Admin SDK Directory API lets you view and manage enterprise resources such as users and groups, administrative notifications, security features, and more.", + "discoveryVersion": "v1", + "documentationLink": "https://developers.google.com/admin-sdk/directory/", + "etag": "\"-iA1DTNe4s-I6JZXPt1t1Ypy8IU/ny7NvsE3PzK3etgzPNk9J8KeI7k\"", + "icons": { + "x16": "https://www.gstatic.com/images/branding/product/1x/googleg_16dp.png", + "x32": "https://www.gstatic.com/images/branding/product/1x/googleg_32dp.png" + }, + "id": "admin:directory_v1", + "kind": "discovery#restDescription", + "name": "admin", + "ownerDomain": "google.com", + "ownerName": "Google", + "packagePath": "admin", + "parameters": { + "alt": { + "default": "json", + "description": "Data format for the response.", + "enum": [ + "json" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json" + ], + "location": "query", "type": "string" - } - }, - "encryptionStatus": { - "type": "string", - "description": "Mobile Device Encryption Status (Read-only)" - }, - "etag": { - "type": "string", - "description": "ETag of the resource." - }, - "firstSync": { - "type": "string", - "description": "Date and time the device was first synchronized with the policy settings in the G Suite administrator control panel (Read-only)", - "format": "date-time" - }, - "hardware": { - "type": "string", - "description": "Mobile Device Hardware (Read-only)" - }, - "hardwareId": { - "type": "string", - "description": "Mobile Device Hardware Id (Read-only)" - }, - "imei": { - "type": "string", - "description": "Mobile Device IMEI number (Read-only)" - }, - "kernelVersion": { - "type": "string", - "description": "Mobile Device Kernel version (Read-only)" - }, - "kind": { - "type": "string", - "description": "Kind of resource this is.", - "default": "admin#directory#mobiledevice" - }, - "lastSync": { - "type": "string", - "description": "Date and time the device was last synchronized with the policy settings in the G Suite administrator control panel (Read-only)", - "format": "date-time" - }, - "managedAccountIsOnOwnerProfile": { - "type": "boolean", - "description": "Boolean indicating if this account is on owner/primary profile or not (Read-only)" - }, - "manufacturer": { - "type": "string", - "description": "Mobile Device manufacturer (Read-only)" - }, - "meid": { - "type": "string", - "description": "Mobile Device MEID number (Read-only)" - }, - "model": { - "type": "string", - "description": "Name of the model of the device" - }, - "name": { - "type": "array", - "description": "List of owner user's names (Read-only)", - "items": { - "type": "string" - } - }, - "networkOperator": { - "type": "string", - "description": "Mobile Device mobile or network operator (if available) (Read-only)" - }, - "os": { - "type": "string", - "description": "Name of the mobile operating system" - }, - "otherAccountsInfo": { - "type": "array", - "description": "List of accounts added on device (Read-only)", - "items": { - "type": "string" - } - }, - "privilege": { - "type": "string", - "description": "DMAgentPermission (Read-only)" - }, - "releaseVersion": { - "type": "string", - "description": "Mobile Device release version version (Read-only)" - }, - "resourceId": { - "type": "string", - "description": "Unique identifier of Mobile Device (Read-only)" - }, - "securityPatchLevel": { - "type": "string", - "description": "Mobile Device Security patch level (Read-only)", - "format": "int64" - }, - "serialNumber": { - "type": "string", - "description": "Mobile Device SSN or Serial Number (Read-only)" - }, - "status": { - "type": "string", - "description": "Status of the device (Read-only)" - }, - "supportsWorkProfile": { - "type": "boolean", - "description": "Work profile supported on device (Read-only)" - }, - "type": { - "type": "string", - "description": "The type of device (Read-only)" - }, - "unknownSourcesStatus": { - "type": "boolean", - "description": "Unknown sources enabled or disabled on device (Read-only)" - }, - "userAgent": { - "type": "string", - "description": "Mobile Device user agent" - }, - "wifiMacAddress": { - "type": "string", - "description": "Mobile Device WiFi MAC address (Read-only)" - } - } - }, - "MobileDeviceAction": { - "id": "MobileDeviceAction", - "type": "object", - "description": "JSON request template for firing commands on Mobile Device in Directory Devices API.", - "properties": { - "action": { - "type": "string", - "description": "Action to be taken on the Mobile Device", - "annotations": { - "required": [ - "directory.mobiledevices.action" - ] - } - } - } - }, - "MobileDevices": { - "id": "MobileDevices", - "type": "object", - "description": "JSON response template for List Mobile Devices operation in Directory API.", - "properties": { - "etag": { - "type": "string", - "description": "ETag of the resource." - }, - "kind": { - "type": "string", - "description": "Kind of resource this is.", - "default": "admin#directory#mobiledevices" - }, - "mobiledevices": { - "type": "array", - "description": "List of Mobile Device objects.", - "items": { - "$ref": "MobileDevice" - } - }, - "nextPageToken": { - "type": "string", - "description": "Token used to access next page of this result." - } - } - }, - "Notification": { - "id": "Notification", - "type": "object", - "description": "Template for a notification resource.", - "properties": { - "body": { - "type": "string", - "description": "Body of the notification (Read-only)" - }, - "etag": { - "type": "string", - "description": "ETag of the resource." - }, - "fromAddress": { - "type": "string", - "description": "Address from which the notification is received (Read-only)" - }, - "isUnread": { - "type": "boolean", - "description": "Boolean indicating whether the notification is unread or not.", - "annotations": { - "required": [ - "directory.notifications.patch", - "directory.notifications.update" - ] - } - }, - "kind": { - "type": "string", - "description": "The type of the resource.", - "default": "admin#directory#notification" - }, - "notificationId": { - "type": "string" - }, - "sendTime": { - "type": "string", - "description": "Time at which notification was sent (Read-only)", - "format": "date-time" - }, - "subject": { - "type": "string", - "description": "Subject of the notification (Read-only)" - } - } - }, - "Notifications": { - "id": "Notifications", - "type": "object", - "description": "Template for notifications list response.", - "properties": { - "etag": { - "type": "string", - "description": "ETag of the resource." - }, - "items": { - "type": "array", - "description": "List of notifications in this page.", - "items": { - "$ref": "Notification" - } - }, - "kind": { - "type": "string", - "description": "The type of the resource.", - "default": "admin#directory#notifications" - }, - "nextPageToken": { - "type": "string", - "description": "Token for fetching the next page of notifications." - }, - "unreadNotificationsCount": { - "type": "integer", - "description": "Number of unread notification for the domain.", - "format": "int32" - } - } - }, - "OrgUnit": { - "id": "OrgUnit", - "type": "object", - "description": "JSON template for Org Unit resource in Directory API.", - "properties": { - "blockInheritance": { - "type": "boolean", - "description": "Should block inheritance" - }, - "description": { - "type": "string", - "description": "Description of OrgUnit" - }, - "etag": { - "type": "string", - "description": "ETag of the resource." - }, - "kind": { - "type": "string", - "description": "Kind of resource this is.", - "default": "admin#directory#orgUnit" - }, - "name": { - "type": "string", - "description": "Name of OrgUnit", - "annotations": { - "required": [ - "directory.orgunits.insert" - ] - } - }, - "orgUnitId": { - "type": "string", - "description": "Id of OrgUnit" - }, - "orgUnitPath": { - "type": "string", - "description": "Path of OrgUnit" - }, - "parentOrgUnitId": { - "type": "string", - "description": "Id of parent OrgUnit" - }, - "parentOrgUnitPath": { - "type": "string", - "description": "Path of parent OrgUnit" - } - } - }, - "OrgUnits": { - "id": "OrgUnits", - "type": "object", - "description": "JSON response template for List Organization Units operation in Directory API.", - "properties": { - "etag": { - "type": "string", - "description": "ETag of the resource." - }, - "kind": { - "type": "string", - "description": "Kind of resource this is.", - "default": "admin#directory#orgUnits" - }, - "organizationUnits": { - "type": "array", - "description": "List of user objects.", - "items": { - "$ref": "OrgUnit" - } - } - } - }, - "Privilege": { - "id": "Privilege", - "type": "object", - "description": "JSON template for privilege resource in Directory API.", - "properties": { - "childPrivileges": { - "type": "array", - "description": "A list of child privileges. Privileges for a service form a tree. Each privilege can have a list of child privileges; this list is empty for a leaf privilege.", - "items": { - "$ref": "Privilege" - } - }, - "etag": { - "type": "string", - "description": "ETag of the resource." - }, - "isOuScopable": { - "type": "boolean", - "description": "If the privilege can be restricted to an organization unit." - }, - "kind": { - "type": "string", - "description": "The type of the API resource. This is always admin#directory#privilege.", - "default": "admin#directory#privilege" - }, - "privilegeName": { - "type": "string", - "description": "The name of the privilege." - }, - "serviceId": { - "type": "string", - "description": "The obfuscated ID of the service this privilege is for." - }, - "serviceName": { - "type": "string", - "description": "The name of the service this privilege is for." - } - } - }, - "Privileges": { - "id": "Privileges", - "type": "object", - "description": "JSON response template for List privileges operation in Directory API.", - "properties": { - "etag": { - "type": "string", - "description": "ETag of the resource." - }, - "items": { - "type": "array", - "description": "A list of Privilege resources.", - "items": { - "$ref": "Privilege" - } - }, - "kind": { - "type": "string", - "description": "The type of the API resource. This is always admin#directory#privileges.", - "default": "admin#directory#privileges" - } - } - }, - "Role": { - "id": "Role", - "type": "object", - "description": "JSON template for role resource in Directory API.", - "properties": { - "etag": { - "type": "string", - "description": "ETag of the resource." - }, - "isSuperAdminRole": { - "type": "boolean", - "description": "Returns true if the role is a super admin role." - }, - "isSystemRole": { - "type": "boolean", - "description": "Returns true if this is a pre-defined system role." - }, - "kind": { - "type": "string", - "description": "The type of the API resource. This is always admin#directory#role.", - "default": "admin#directory#role" - }, - "roleDescription": { - "type": "string", - "description": "A short description of the role." - }, - "roleId": { - "type": "string", - "description": "ID of the role.", - "format": "int64" - }, - "roleName": { - "type": "string", - "description": "Name of the role.", - "annotations": { - "required": [ - "directory.roles.insert" - ] - } - }, - "rolePrivileges": { - "type": "array", - "description": "The set of privileges that are granted to this role.", - "items": { - "type": "object", - "properties": { - "privilegeName": { - "type": "string", - "description": "The name of the privilege." - }, - "serviceId": { - "type": "string", - "description": "The obfuscated ID of the service this privilege is for." - } - } - }, - "annotations": { - "required": [ - "directory.roles.insert" - ] - } - } - } - }, - "RoleAssignment": { - "id": "RoleAssignment", - "type": "object", - "description": "JSON template for roleAssignment resource in Directory API.", - "properties": { - "assignedTo": { - "type": "string", - "description": "The unique ID of the user this role is assigned to." - }, - "etag": { - "type": "string", - "description": "ETag of the resource." - }, - "kind": { - "type": "string", - "description": "The type of the API resource. This is always admin#directory#roleAssignment.", - "default": "admin#directory#roleAssignment" - }, - "orgUnitId": { - "type": "string", - "description": "If the role is restricted to an organization unit, this contains the ID for the organization unit the exercise of this role is restricted to." - }, - "roleAssignmentId": { - "type": "string", - "description": "ID of this roleAssignment.", - "format": "int64" - }, - "roleId": { - "type": "string", - "description": "The ID of the role that is assigned.", - "format": "int64" - }, - "scopeType": { - "type": "string", - "description": "The scope in which this role is assigned. Possible values are: \n- CUSTOMER\n- ORG_UNIT" - } - } - }, - "RoleAssignments": { - "id": "RoleAssignments", - "type": "object", - "description": "JSON response template for List roleAssignments operation in Directory API.", - "properties": { - "etag": { - "type": "string", - "description": "ETag of the resource." - }, - "items": { - "type": "array", - "description": "A list of RoleAssignment resources.", - "items": { - "$ref": "RoleAssignment" - } - }, - "kind": { - "type": "string", - "description": "The type of the API resource. This is always admin#directory#roleAssignments.", - "default": "admin#directory#roleAssignments" - }, - "nextPageToken": { - "type": "string" - } - } - }, - "Roles": { - "id": "Roles", - "type": "object", - "description": "JSON response template for List roles operation in Directory API.", - "properties": { - "etag": { - "type": "string", - "description": "ETag of the resource." - }, - "items": { - "type": "array", - "description": "A list of Role resources.", - "items": { - "$ref": "Role" - } - }, - "kind": { - "type": "string", - "description": "The type of the API resource. This is always admin#directory#roles.", - "default": "admin#directory#roles" - }, - "nextPageToken": { - "type": "string" - } - } - }, - "Schema": { - "id": "Schema", - "type": "object", - "description": "JSON template for Schema resource in Directory API.", - "properties": { - "etag": { - "type": "string", - "description": "ETag of the resource." }, "fields": { - "type": "array", - "description": "Fields of Schema", - "items": { - "$ref": "SchemaFieldSpec" - }, - "annotations": { - "required": [ - "directory.schemas.insert", - "directory.schemas.update" - ] - } - }, - "kind": { - "type": "string", - "description": "Kind of resource this is.", - "default": "admin#directory#schema" - }, - "schemaId": { - "type": "string", - "description": "Unique identifier of Schema (Read-only)" - }, - "schemaName": { - "type": "string", - "description": "Schema name", - "annotations": { - "required": [ - "directory.schemas.insert" - ] - } - } - } - }, - "SchemaFieldSpec": { - "id": "SchemaFieldSpec", - "type": "object", - "description": "JSON template for FieldSpec resource for Schemas in Directory API.", - "properties": { - "etag": { - "type": "string", - "description": "ETag of the resource." - }, - "fieldId": { - "type": "string", - "description": "Unique identifier of Field (Read-only)" - }, - "fieldName": { - "type": "string", - "description": "Name of the field.", - "annotations": { - "required": [ - "directory.schemas.insert", - "directory.schemas.update" - ] - } - }, - "fieldType": { - "type": "string", - "description": "Type of the field.", - "annotations": { - "required": [ - "directory.schemas.insert", - "directory.schemas.update" - ] - } - }, - "indexed": { - "type": "boolean", - "description": "Boolean specifying whether the field is indexed or not.", - "default": "true" - }, - "kind": { - "type": "string", - "description": "Kind of resource this is.", - "default": "admin#directory#schema#fieldspec" - }, - "multiValued": { - "type": "boolean", - "description": "Boolean specifying whether this is a multi-valued field or not." - }, - "numericIndexingSpec": { - "type": "object", - "description": "Indexing spec for a numeric field. By default, only exact match queries will be supported for numeric fields. Setting the numericIndexingSpec allows range queries to be supported.", - "properties": { - "maxValue": { - "type": "number", - "description": "Maximum value of this field. This is meant to be indicative rather than enforced. Values outside this range will still be indexed, but search may not be as performant.", - "format": "double" - }, - "minValue": { - "type": "number", - "description": "Minimum value of this field. This is meant to be indicative rather than enforced. Values outside this range will still be indexed, but search may not be as performant.", - "format": "double" - } - } - }, - "readAccessType": { - "type": "string", - "description": "Read ACLs on the field specifying who can view values of this field. Valid values are \"ALL_DOMAIN_USERS\" and \"ADMINS_AND_SELF\".", - "default": "ALL_DOMAIN_USERS" - } - } - }, - "Schemas": { - "id": "Schemas", - "type": "object", - "description": "JSON response template for List Schema operation in Directory API.", - "properties": { - "etag": { - "type": "string", - "description": "ETag of the resource." - }, - "kind": { - "type": "string", - "description": "Kind of resource this is.", - "default": "admin#directory#schemas" - }, - "schemas": { - "type": "array", - "description": "List of UserSchema objects.", - "items": { - "$ref": "Schema" - } - } - } - }, - "Token": { - "id": "Token", - "type": "object", - "description": "JSON template for token resource in Directory API.", - "properties": { - "anonymous": { - "type": "boolean", - "description": "Whether the application is registered with Google. The value is true if the application has an anonymous Client ID." - }, - "clientId": { - "type": "string", - "description": "The Client ID of the application the token is issued to." - }, - "displayText": { - "type": "string", - "description": "The displayable name of the application the token is issued to." - }, - "etag": { - "type": "string", - "description": "ETag of the resource." - }, - "kind": { - "type": "string", - "description": "The type of the API resource. This is always admin#directory#token.", - "default": "admin#directory#token" - }, - "nativeApp": { - "type": "boolean", - "description": "Whether the token is issued to an installed application. The value is true if the application is installed to a desktop or mobile device." - }, - "scopes": { - "type": "array", - "description": "A list of authorization scopes the application is granted.", - "items": { + "description": "Selector specifying which fields to include in a partial response.", + "location": "query", "type": "string" - } - }, - "userKey": { - "type": "string", - "description": "The unique ID of the user that issued the token." - } - } - }, - "Tokens": { - "id": "Tokens", - "type": "object", - "description": "JSON response template for List tokens operation in Directory API.", - "properties": { - "etag": { - "type": "string", - "description": "ETag of the resource." - }, - "items": { - "type": "array", - "description": "A list of Token resources.", - "items": { - "$ref": "Token" - } - }, - "kind": { - "type": "string", - "description": "The type of the API resource. This is always admin#directory#tokenList.", - "default": "admin#directory#tokenList" - } - } - }, - "TrustedAppId": { - "id": "TrustedAppId", - "type": "object", - "description": "JSON template for Trusted App Ids Resource object in Directory API.", - "properties": { - "androidPackageName": { - "type": "string", - "description": "Android package name." - }, - "certificateHashSHA1": { - "type": "string", - "description": "SHA1 signature of the app certificate." - }, - "certificateHashSHA256": { - "type": "string", - "description": "SHA256 signature of the app certificate." - }, - "etag": { - "type": "string" - }, - "kind": { - "type": "string", - "description": "Identifies the resource as a trusted AppId.", - "default": "admin#directory#trustedappid" - } - } - }, - "TrustedApps": { - "id": "TrustedApps", - "type": "object", - "description": "JSON template for Trusted Apps response object of a user in Directory API.", - "properties": { - "etag": { - "type": "string", - "description": "ETag of the resource." - }, - "kind": { - "type": "string", - "description": "Identifies the resource as trusted apps response.", - "default": "admin#directory#trustedapplist" - }, - "nextPageToken": { - "type": "string" - }, - "trustedApps": { - "type": "array", - "description": "Trusted Apps list.", - "items": { - "$ref": "TrustedAppId" - } - } - } - }, - "User": { - "id": "User", - "type": "object", - "description": "JSON template for User object in Directory API.", - "properties": { - "addresses": { - "type": "any" - }, - "agreedToTerms": { - "type": "boolean", - "description": "Indicates if user has agreed to terms (Read-only)", - "readOnly": true - }, - "aliases": { - "type": "array", - "description": "List of aliases (Read-only)", - "readOnly": true, - "items": { - "type": "string" - } - }, - "changePasswordAtNextLogin": { - "type": "boolean", - "description": "Boolean indicating if the user should change password in next login" - }, - "creationTime": { - "type": "string", - "description": "User's G Suite account creation time. (Read-only)", - "format": "date-time", - "readOnly": true - }, - "customSchemas": { - "type": "object", - "description": "Custom fields of the user.", - "additionalProperties": { - "$ref": "UserCustomProperties" - } - }, - "customerId": { - "type": "string", - "description": "CustomerId of User (Read-only)", - "readOnly": true - }, - "deletionTime": { - "type": "string", - "format": "date-time", - "readOnly": true - }, - "emails": { - "type": "any" - }, - "etag": { - "type": "string", - "description": "ETag of the resource.", - "readOnly": true - }, - "externalIds": { - "type": "any" - }, - "gender": { - "type": "any" - }, - "hashFunction": { - "type": "string", - "description": "Hash function name for password. Supported are MD5, SHA-1 and crypt" - }, - "id": { - "type": "string", - "description": "Unique identifier of User (Read-only)" - }, - "ims": { - "type": "any" - }, - "includeInGlobalAddressList": { - "type": "boolean", - "description": "Boolean indicating if user is included in Global Address List" - }, - "ipWhitelisted": { - "type": "boolean", - "description": "Boolean indicating if ip is whitelisted" - }, - "isAdmin": { - "type": "boolean", - "description": "Boolean indicating if the user is admin (Read-only)", - "readOnly": true - }, - "isDelegatedAdmin": { - "type": "boolean", - "description": "Boolean indicating if the user is delegated admin (Read-only)", - "readOnly": true - }, - "isEnforcedIn2Sv": { - "type": "boolean", - "description": "Is 2-step verification enforced (Read-only)", - "readOnly": true - }, - "isEnrolledIn2Sv": { - "type": "boolean", - "description": "Is enrolled in 2-step verification (Read-only)", - "readOnly": true - }, - "isMailboxSetup": { - "type": "boolean", - "description": "Is mailbox setup (Read-only)", - "readOnly": true - }, - "keywords": { - "type": "any" - }, - "kind": { - "type": "string", - "description": "Kind of resource this is.", - "default": "admin#directory#user", - "readOnly": true - }, - "languages": { - "type": "any" - }, - "lastLoginTime": { - "type": "string", - "description": "User's last login time. (Read-only)", - "format": "date-time", - "readOnly": true - }, - "locations": { - "type": "any" - }, - "name": { - "$ref": "UserName", - "description": "User's name", - "annotations": { - "required": [ - "directory.users.insert" - ] - } - }, - "nonEditableAliases": { - "type": "array", - "description": "List of non editable aliases (Read-only)", - "readOnly": true, - "items": { - "type": "string" - } - }, - "notes": { - "type": "any" - }, - "orgUnitPath": { - "type": "string", - "description": "OrgUnit of User" - }, - "organizations": { - "type": "any" - }, - "password": { - "type": "string", - "description": "User's password", - "annotations": { - "required": [ - "directory.users.insert" - ] - } - }, - "phones": { - "type": "any" - }, - "posixAccounts": { - "type": "any" - }, - "primaryEmail": { - "type": "string", - "description": "username of User", - "annotations": { - "required": [ - "directory.users.insert" - ] - } - }, - "relations": { - "type": "any" - }, - "sshPublicKeys": { - "type": "any" - }, - "suspended": { - "type": "boolean", - "description": "Indicates if user is suspended" - }, - "suspensionReason": { - "type": "string", - "description": "Suspension reason if user is suspended (Read-only)", - "readOnly": true - }, - "thumbnailPhotoEtag": { - "type": "string", - "description": "ETag of the user's photo (Read-only)", - "readOnly": true - }, - "thumbnailPhotoUrl": { - "type": "string", - "description": "Photo Url of the user (Read-only)", - "readOnly": true - }, - "websites": { - "type": "any" - } - } - }, - "UserAbout": { - "id": "UserAbout", - "type": "object", - "description": "JSON template for About (notes) of a user in Directory API.", - "properties": { - "contentType": { - "type": "string", - "description": "About entry can have a type which indicates the content type. It can either be plain or html. By default, notes contents are assumed to contain plain text." - }, - "value": { - "type": "string", - "description": "Actual value of notes." - } - } - }, - "UserAddress": { - "id": "UserAddress", - "type": "object", - "description": "JSON template for address.", - "properties": { - "country": { - "type": "string", - "description": "Country." - }, - "countryCode": { - "type": "string", - "description": "Country code." - }, - "customType": { - "type": "string", - "description": "Custom type." - }, - "extendedAddress": { - "type": "string", - "description": "Extended Address." - }, - "formatted": { - "type": "string", - "description": "Formatted address." - }, - "locality": { - "type": "string", - "description": "Locality." - }, - "poBox": { - "type": "string", - "description": "Other parts of address." - }, - "postalCode": { - "type": "string", - "description": "Postal code." - }, - "primary": { - "type": "boolean", - "description": "If this is user's primary address. Only one entry could be marked as primary." - }, - "region": { - "type": "string", - "description": "Region." - }, - "sourceIsStructured": { - "type": "boolean", - "description": "User supplied address was structured. Structured addresses are NOT supported at this time. You might be able to write structured addresses, but any values will eventually be clobbered." - }, - "streetAddress": { - "type": "string", - "description": "Street." - }, - "type": { - "type": "string", - "description": "Each entry can have a type which indicates standard values of that entry. For example address could be of home, work etc. In addition to the standard type, an entry can have a custom type and can take any value. Such type should have the CUSTOM value as type and also have a customType value." - } - } - }, - "UserCustomProperties": { - "id": "UserCustomProperties", - "type": "object", - "description": "JSON template for a set of custom properties (i.e. all fields in a particular schema)", - "additionalProperties": { - "type": "any" - } - }, - "UserEmail": { - "id": "UserEmail", - "type": "object", - "description": "JSON template for an email.", - "properties": { - "address": { - "type": "string", - "description": "Email id of the user." - }, - "customType": { - "type": "string", - "description": "Custom Type." - }, - "primary": { - "type": "boolean", - "description": "If this is user's primary email. Only one entry could be marked as primary." - }, - "type": { - "type": "string", - "description": "Each entry can have a type which indicates standard types of that entry. For example email could be of home, work etc. In addition to the standard type, an entry can have a custom type and can take any value Such types should have the CUSTOM value as type and also have a customType value." - } - } - }, - "UserExternalId": { - "id": "UserExternalId", - "type": "object", - "description": "JSON template for an externalId entry.", - "properties": { - "customType": { - "type": "string", - "description": "Custom type." - }, - "type": { - "type": "string", - "description": "The type of the Id." - }, - "value": { - "type": "string", - "description": "The value of the id." - } - } - }, - "UserGender": { - "id": "UserGender", - "type": "object", - "properties": { - "addressMeAs": { - "type": "string", - "description": "AddressMeAs. A human-readable string containing the proper way to refer to the profile owner by humans, for example \"he/him/his\" or \"they/them/their\"." - }, - "customGender": { - "type": "string", - "description": "Custom gender." - }, - "type": { - "type": "string", - "description": "Gender." - } - } - }, - "UserIm": { - "id": "UserIm", - "type": "object", - "description": "JSON template for instant messenger of an user.", - "properties": { - "customProtocol": { - "type": "string", - "description": "Custom protocol." - }, - "customType": { - "type": "string", - "description": "Custom type." - }, - "im": { - "type": "string", - "description": "Instant messenger id." - }, - "primary": { - "type": "boolean", - "description": "If this is user's primary im. Only one entry could be marked as primary." - }, - "protocol": { - "type": "string", - "description": "Protocol used in the instant messenger. It should be one of the values from ImProtocolTypes map. Similar to type, it can take a CUSTOM value and specify the custom name in customProtocol field." - }, - "type": { - "type": "string", - "description": "Each entry can have a type which indicates standard types of that entry. For example instant messengers could be of home, work etc. In addition to the standard type, an entry can have a custom type and can take any value. Such types should have the CUSTOM value as type and also have a customType value." - } - } - }, - "UserKeyword": { - "id": "UserKeyword", - "type": "object", - "description": "JSON template for a keyword entry.", - "properties": { - "customType": { - "type": "string", - "description": "Custom Type." - }, - "type": { - "type": "string", - "description": "Each entry can have a type which indicates standard type of that entry. For example, keyword could be of type occupation or outlook. In addition to the standard type, an entry can have a custom type and can give it any name. Such types should have the CUSTOM value as type and also have a customType value." - }, - "value": { - "type": "string", - "description": "Keyword." - } - } - }, - "UserLanguage": { - "id": "UserLanguage", - "type": "object", - "description": "JSON template for a language entry.", - "properties": { - "customLanguage": { - "type": "string", - "description": "Other language. User can provide own language name if there is no corresponding Google III language code. If this is set LanguageCode can't be set" - }, - "languageCode": { - "type": "string", - "description": "Language Code. Should be used for storing Google III LanguageCode string representation for language. Illegal values cause SchemaException." - } - } - }, - "UserLocation": { - "id": "UserLocation", - "type": "object", - "description": "JSON template for a location entry.", - "properties": { - "area": { - "type": "string", - "description": "Textual location. This is most useful for display purposes to concisely describe the location. For example, \"Mountain View, CA\", \"Near Seattle\", \"US-NYC-9TH 9A209A\"." - }, - "buildingId": { - "type": "string", - "description": "Building Identifier." - }, - "customType": { - "type": "string", - "description": "Custom Type." - }, - "deskCode": { - "type": "string", - "description": "Most specific textual code of individual desk location." - }, - "floorName": { - "type": "string", - "description": "Floor name/number." - }, - "floorSection": { - "type": "string", - "description": "Floor section. More specific location within the floor. For example, if a floor is divided into sections \"A\", \"B\", and \"C\", this field would identify one of those values." - }, - "type": { - "type": "string", - "description": "Each entry can have a type which indicates standard types of that entry. For example location could be of types default and desk. In addition to standard type, an entry can have a custom type and can give it any name. Such types should have \"custom\" as type and also have a customType value." - } - } - }, - "UserMakeAdmin": { - "id": "UserMakeAdmin", - "type": "object", - "description": "JSON request template for setting/revoking admin status of a user in Directory API.", - "properties": { - "status": { - "type": "boolean", - "description": "Boolean indicating new admin status of the user", - "annotations": { - "required": [ - "directory.users.makeAdmin" - ] - } - } - } - }, - "UserName": { - "id": "UserName", - "type": "object", - "description": "JSON template for name of a user in Directory API.", - "properties": { - "familyName": { - "type": "string", - "description": "Last Name", - "annotations": { - "required": [ - "directory.users.insert" - ] - } - }, - "fullName": { - "type": "string", - "description": "Full Name" - }, - "givenName": { - "type": "string", - "description": "First Name", - "annotations": { - "required": [ - "directory.users.insert" - ] - } - } - } - }, - "UserOrganization": { - "id": "UserOrganization", - "type": "object", - "description": "JSON template for an organization entry.", - "properties": { - "costCenter": { - "type": "string", - "description": "The cost center of the users department." - }, - "customType": { - "type": "string", - "description": "Custom type." - }, - "department": { - "type": "string", - "description": "Department within the organization." - }, - "description": { - "type": "string", - "description": "Description of the organization." - }, - "domain": { - "type": "string", - "description": "The domain to which the organization belongs to." - }, - "fullTimeEquivalent": { - "type": "integer", - "description": "The full-time equivalent percent within the organization (100000 = 100%).", - "format": "int32" - }, - "location": { - "type": "string", - "description": "Location of the organization. This need not be fully qualified address." - }, - "name": { - "type": "string", - "description": "Name of the organization" - }, - "primary": { - "type": "boolean", - "description": "If it user's primary organization." - }, - "symbol": { - "type": "string", - "description": "Symbol of the organization." - }, - "title": { - "type": "string", - "description": "Title (designation) of the user in the organization." - }, - "type": { - "type": "string", - "description": "Each entry can have a type which indicates standard types of that entry. For example organization could be of school, work etc. In addition to the standard type, an entry can have a custom type and can give it any name. Such types should have the CUSTOM value as type and also have a CustomType value." - } - } - }, - "UserPhone": { - "id": "UserPhone", - "type": "object", - "description": "JSON template for a phone entry.", - "properties": { - "customType": { - "type": "string", - "description": "Custom Type." - }, - "primary": { - "type": "boolean", - "description": "If this is user's primary phone or not." - }, - "type": { - "type": "string", - "description": "Each entry can have a type which indicates standard types of that entry. For example phone could be of home_fax, work, mobile etc. In addition to the standard type, an entry can have a custom type and can give it any name. Such types should have the CUSTOM value as type and also have a customType value." - }, - "value": { - "type": "string", - "description": "Phone number." - } - } - }, - "UserPhoto": { - "id": "UserPhoto", - "type": "object", - "description": "JSON template for Photo object in Directory API.", - "properties": { - "etag": { - "type": "string", - "description": "ETag of the resource." - }, - "height": { - "type": "integer", - "description": "Height in pixels of the photo", - "format": "int32" - }, - "id": { - "type": "string", - "description": "Unique identifier of User (Read-only)" - }, - "kind": { - "type": "string", - "description": "Kind of resource this is.", - "default": "admin#directory#user#photo" - }, - "mimeType": { - "type": "string", - "description": "Mime Type of the photo" - }, - "photoData": { - "type": "string", - "description": "Base64 encoded photo data", - "format": "byte", - "annotations": { - "required": [ - "directory.users.photos.update" - ] - } - }, - "primaryEmail": { - "type": "string", - "description": "Primary email of User (Read-only)" - }, - "width": { - "type": "integer", - "description": "Width in pixels of the photo", - "format": "int32" - } - } - }, - "UserPosixAccount": { - "id": "UserPosixAccount", - "type": "object", - "description": "JSON template for a POSIX account entry. Description of the field family: go/fbs-posix.", - "properties": { - "accountId": { - "type": "string", - "description": "A POSIX account field identifier. (Read-only)", - "readOnly": true - }, - "gecos": { - "type": "string", - "description": "The GECOS (user information) for this account." - }, - "gid": { - "type": "string", - "description": "The default group ID.", - "format": "uint64" - }, - "homeDirectory": { - "type": "string", - "description": "The path to the home directory for this account." - }, - "primary": { - "type": "boolean", - "description": "If this is user's primary account within the SystemId." - }, - "shell": { - "type": "string", - "description": "The path to the login shell for this account." - }, - "systemId": { - "type": "string", - "description": "System identifier for which account Username or Uid apply to." - }, - "uid": { - "type": "string", - "description": "The POSIX compliant user ID.", - "format": "uint64" - }, - "username": { - "type": "string", - "description": "The username of the account." - } - } - }, - "UserRelation": { - "id": "UserRelation", - "type": "object", - "description": "JSON template for a relation entry.", - "properties": { - "customType": { - "type": "string", - "description": "Custom Type." - }, - "type": { - "type": "string", - "description": "The relation of the user. Some of the possible values are mother, father, sister, brother, manager, assistant, partner." - }, - "value": { - "type": "string", - "description": "The name of the relation." - } - } - }, - "UserSshPublicKey": { - "id": "UserSshPublicKey", - "type": "object", - "description": "JSON template for a POSIX account entry.", - "properties": { - "expirationTimeUsec": { - "type": "string", - "description": "An expiration time in microseconds since epoch.", - "format": "int64" - }, - "fingerprint": { - "type": "string", - "description": "A SHA-256 fingerprint of the SSH public key. (Read-only)", - "readOnly": true }, "key": { - "type": "string", - "description": "An SSH public 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" + }, + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", + "location": "query", + "type": "string" + }, + "userIp": { + "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", + "location": "query", + "type": "string" } - } }, - "UserUndelete": { - "id": "UserUndelete", - "type": "object", - "description": "JSON request template to undelete a user in Directory API.", - "properties": { - "orgUnitPath": { - "type": "string", - "description": "OrgUnit of User" - } - } - }, - "UserWebsite": { - "id": "UserWebsite", - "type": "object", - "description": "JSON template for a website entry.", - "properties": { - "customType": { - "type": "string", - "description": "Custom Type." + "protocol": "rest", + "resources": { + "asps": { + "methods": { + "delete": { + "description": "Delete an ASP issued by a user.", + "httpMethod": "DELETE", + "id": "directory.asps.delete", + "parameterOrder": [ + "userKey", + "codeId" + ], + "parameters": { + "codeId": { + "description": "The unique ID of the ASP to be deleted.", + "format": "int32", + "location": "path", + "required": true, + "type": "integer" + }, + "userKey": { + "description": "Identifies the user in the API request. The value can be the user's primary email address, alias email address, or unique user ID.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "users/{userKey}/asps/{codeId}", + "scopes": [ + "https://www.googleapis.com/auth/admin.directory.user.security" + ] + }, + "get": { + "description": "Get information about an ASP issued by a user.", + "httpMethod": "GET", + "id": "directory.asps.get", + "parameterOrder": [ + "userKey", + "codeId" + ], + "parameters": { + "codeId": { + "description": "The unique ID of the ASP.", + "format": "int32", + "location": "path", + "required": true, + "type": "integer" + }, + "userKey": { + "description": "Identifies the user in the API request. The value can be the user's primary email address, alias email address, or unique user ID.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "users/{userKey}/asps/{codeId}", + "response": { + "$ref": "Asp" + }, + "scopes": [ + "https://www.googleapis.com/auth/admin.directory.user.security" + ] + }, + "list": { + "description": "List the ASPs issued by a user.", + "httpMethod": "GET", + "id": "directory.asps.list", + "parameterOrder": [ + "userKey" + ], + "parameters": { + "userKey": { + "description": "Identifies the user in the API request. The value can be the user's primary email address, alias email address, or unique user ID.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "users/{userKey}/asps", + "response": { + "$ref": "Asps" + }, + "scopes": [ + "https://www.googleapis.com/auth/admin.directory.user.security" + ] + } + } }, - "primary": { - "type": "boolean", - "description": "If this is user's primary website or not." + "channels": { + "methods": { + "stop": { + "description": "Stop watching resources through this channel", + "httpMethod": "POST", + "id": "admin.channels.stop", + "path": "/admin/directory_v1/channels/stop", + "request": { + "$ref": "Channel", + "parameterName": "resource" + }, + "scopes": [ + "https://www.googleapis.com/auth/admin.directory.user", + "https://www.googleapis.com/auth/admin.directory.user.alias", + "https://www.googleapis.com/auth/admin.directory.user.alias.readonly", + "https://www.googleapis.com/auth/admin.directory.user.readonly" + ] + } + } }, - "type": { - "type": "string", - "description": "Each entry can have a type which indicates standard types of that entry. For example website could be of home, work, blog etc. In addition to the standard type, an entry can have a custom type and can give it any name. Such types should have the CUSTOM value as type and also have a customType value." + "chromeosdevices": { + "methods": { + "action": { + "description": "Take action on Chrome OS Device", + "httpMethod": "POST", + "id": "directory.chromeosdevices.action", + "parameterOrder": [ + "customerId", + "resourceId" + ], + "parameters": { + "customerId": { + "description": "Immutable ID of the G Suite account", + "location": "path", + "required": true, + "type": "string" + }, + "resourceId": { + "description": "Immutable ID of Chrome OS Device", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "customer/{customerId}/devices/chromeos/{resourceId}/action", + "request": { + "$ref": "ChromeOsDeviceAction" + }, + "scopes": [ + "https://www.googleapis.com/auth/admin.directory.device.chromeos" + ] + }, + "get": { + "description": "Retrieve Chrome OS Device", + "httpMethod": "GET", + "id": "directory.chromeosdevices.get", + "parameterOrder": [ + "customerId", + "deviceId" + ], + "parameters": { + "customerId": { + "description": "Immutable ID of the G Suite account", + "location": "path", + "required": true, + "type": "string" + }, + "deviceId": { + "description": "Immutable ID of Chrome OS Device", + "location": "path", + "required": true, + "type": "string" + }, + "projection": { + "description": "Restrict information returned to a set of selected fields.", + "enum": [ + "BASIC", + "FULL" + ], + "enumDescriptions": [ + "Includes only the basic metadata fields (e.g., deviceId, serialNumber, status, and user)", + "Includes all metadata fields" + ], + "location": "query", + "type": "string" + } + }, + "path": "customer/{customerId}/devices/chromeos/{deviceId}", + "response": { + "$ref": "ChromeOsDevice" + }, + "scopes": [ + "https://www.googleapis.com/auth/admin.directory.device.chromeos", + "https://www.googleapis.com/auth/admin.directory.device.chromeos.readonly" + ] + }, + "list": { + "description": "Retrieve all Chrome OS Devices of a customer (paginated)", + "httpMethod": "GET", + "id": "directory.chromeosdevices.list", + "parameterOrder": [ + "customerId" + ], + "parameters": { + "customerId": { + "description": "Immutable ID of the G Suite account", + "location": "path", + "required": true, + "type": "string" + }, + "maxResults": { + "description": "Maximum number of results to return. Default is 100", + "format": "int32", + "location": "query", + "minimum": "1", + "type": "integer" + }, + "orderBy": { + "description": "Column to use for sorting results", + "enum": [ + "annotatedLocation", + "annotatedUser", + "lastSync", + "notes", + "serialNumber", + "status", + "supportEndDate" + ], + "enumDescriptions": [ + "Chromebook location as annotated by the administrator.", + "Chromebook user as annotated by administrator.", + "Chromebook last sync.", + "Chromebook notes as annotated by the administrator.", + "Chromebook Serial Number.", + "Chromebook status.", + "Chromebook support end date." + ], + "location": "query", + "type": "string" + }, + "orgUnitPath": { + "description": "Full path of the organizational unit or its ID", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Token to specify next page in the list", + "location": "query", + "type": "string" + }, + "projection": { + "description": "Restrict information returned to a set of selected fields.", + "enum": [ + "BASIC", + "FULL" + ], + "enumDescriptions": [ + "Includes only the basic metadata fields (e.g., deviceId, serialNumber, status, and user)", + "Includes all metadata fields" + ], + "location": "query", + "type": "string" + }, + "query": { + "description": "Search string in the format given at http://support.google.com/chromeos/a/bin/answer.py?hl=en\u0026answer=1698333", + "location": "query", + "type": "string" + }, + "sortOrder": { + "description": "Whether to return results in ascending or descending order. Only of use when orderBy is also used", + "enum": [ + "ASCENDING", + "DESCENDING" + ], + "enumDescriptions": [ + "Ascending order.", + "Descending order." + ], + "location": "query", + "type": "string" + } + }, + "path": "customer/{customerId}/devices/chromeos", + "response": { + "$ref": "ChromeOsDevices" + }, + "scopes": [ + "https://www.googleapis.com/auth/admin.directory.device.chromeos", + "https://www.googleapis.com/auth/admin.directory.device.chromeos.readonly" + ] + }, + "moveDevicesToOu": { + "description": "Move or insert multiple Chrome OS Devices to organizational unit", + "httpMethod": "POST", + "id": "directory.chromeosdevices.moveDevicesToOu", + "parameterOrder": [ + "customerId", + "orgUnitPath" + ], + "parameters": { + "customerId": { + "description": "Immutable ID of the G Suite account", + "location": "path", + "required": true, + "type": "string" + }, + "orgUnitPath": { + "description": "Full path of the target organizational unit or its ID", + "location": "query", + "required": true, + "type": "string" + } + }, + "path": "customer/{customerId}/devices/chromeos/moveDevicesToOu", + "request": { + "$ref": "ChromeOsMoveDevicesToOu" + }, + "scopes": [ + "https://www.googleapis.com/auth/admin.directory.device.chromeos" + ] + }, + "patch": { + "description": "Update Chrome OS Device. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "directory.chromeosdevices.patch", + "parameterOrder": [ + "customerId", + "deviceId" + ], + "parameters": { + "customerId": { + "description": "Immutable ID of the G Suite account", + "location": "path", + "required": true, + "type": "string" + }, + "deviceId": { + "description": "Immutable ID of Chrome OS Device", + "location": "path", + "required": true, + "type": "string" + }, + "projection": { + "description": "Restrict information returned to a set of selected fields.", + "enum": [ + "BASIC", + "FULL" + ], + "enumDescriptions": [ + "Includes only the basic metadata fields (e.g., deviceId, serialNumber, status, and user)", + "Includes all metadata fields" + ], + "location": "query", + "type": "string" + } + }, + "path": "customer/{customerId}/devices/chromeos/{deviceId}", + "request": { + "$ref": "ChromeOsDevice" + }, + "response": { + "$ref": "ChromeOsDevice" + }, + "scopes": [ + "https://www.googleapis.com/auth/admin.directory.device.chromeos" + ] + }, + "update": { + "description": "Update Chrome OS Device", + "httpMethod": "PUT", + "id": "directory.chromeosdevices.update", + "parameterOrder": [ + "customerId", + "deviceId" + ], + "parameters": { + "customerId": { + "description": "Immutable ID of the G Suite account", + "location": "path", + "required": true, + "type": "string" + }, + "deviceId": { + "description": "Immutable ID of Chrome OS Device", + "location": "path", + "required": true, + "type": "string" + }, + "projection": { + "description": "Restrict information returned to a set of selected fields.", + "enum": [ + "BASIC", + "FULL" + ], + "enumDescriptions": [ + "Includes only the basic metadata fields (e.g., deviceId, serialNumber, status, and user)", + "Includes all metadata fields" + ], + "location": "query", + "type": "string" + } + }, + "path": "customer/{customerId}/devices/chromeos/{deviceId}", + "request": { + "$ref": "ChromeOsDevice" + }, + "response": { + "$ref": "ChromeOsDevice" + }, + "scopes": [ + "https://www.googleapis.com/auth/admin.directory.device.chromeos" + ] + } + } }, - "value": { - "type": "string", - "description": "Website." - } - } - }, - "Users": { - "id": "Users", - "type": "object", - "description": "JSON response template for List Users operation in Apps Directory API.", - "properties": { - "etag": { - "type": "string", - "description": "ETag of the resource." + "customers": { + "methods": { + "get": { + "description": "Retrieves a customer.", + "httpMethod": "GET", + "id": "directory.customers.get", + "parameterOrder": [ + "customerKey" + ], + "parameters": { + "customerKey": { + "description": "Id of the customer to be retrieved", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "customers/{customerKey}", + "response": { + "$ref": "Customer" + }, + "scopes": [ + "https://www.googleapis.com/auth/admin.directory.customer", + "https://www.googleapis.com/auth/admin.directory.customer.readonly" + ] + }, + "patch": { + "description": "Updates a customer. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "directory.customers.patch", + "parameterOrder": [ + "customerKey" + ], + "parameters": { + "customerKey": { + "description": "Id of the customer to be updated", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "customers/{customerKey}", + "request": { + "$ref": "Customer" + }, + "response": { + "$ref": "Customer" + }, + "scopes": [ + "https://www.googleapis.com/auth/admin.directory.customer" + ] + }, + "update": { + "description": "Updates a customer.", + "httpMethod": "PUT", + "id": "directory.customers.update", + "parameterOrder": [ + "customerKey" + ], + "parameters": { + "customerKey": { + "description": "Id of the customer to be updated", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "customers/{customerKey}", + "request": { + "$ref": "Customer" + }, + "response": { + "$ref": "Customer" + }, + "scopes": [ + "https://www.googleapis.com/auth/admin.directory.customer" + ] + } + } }, - "kind": { - "type": "string", - "description": "Kind of resource this is.", - "default": "admin#directory#users" + "domainAliases": { + "methods": { + "delete": { + "description": "Deletes a Domain Alias of the customer.", + "httpMethod": "DELETE", + "id": "directory.domainAliases.delete", + "parameterOrder": [ + "customer", + "domainAliasName" + ], + "parameters": { + "customer": { + "description": "Immutable ID of the G Suite account.", + "location": "path", + "required": true, + "type": "string" + }, + "domainAliasName": { + "description": "Name of domain alias to be retrieved.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "customer/{customer}/domainaliases/{domainAliasName}", + "scopes": [ + "https://www.googleapis.com/auth/admin.directory.domain" + ] + }, + "get": { + "description": "Retrieves a domain alias of the customer.", + "httpMethod": "GET", + "id": "directory.domainAliases.get", + "parameterOrder": [ + "customer", + "domainAliasName" + ], + "parameters": { + "customer": { + "description": "Immutable ID of the G Suite account.", + "location": "path", + "required": true, + "type": "string" + }, + "domainAliasName": { + "description": "Name of domain alias to be retrieved.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "customer/{customer}/domainaliases/{domainAliasName}", + "response": { + "$ref": "DomainAlias" + }, + "scopes": [ + "https://www.googleapis.com/auth/admin.directory.domain", + "https://www.googleapis.com/auth/admin.directory.domain.readonly" + ] + }, + "insert": { + "description": "Inserts a Domain alias of the customer.", + "httpMethod": "POST", + "id": "directory.domainAliases.insert", + "parameterOrder": [ + "customer" + ], + "parameters": { + "customer": { + "description": "Immutable ID of the G Suite account.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "customer/{customer}/domainaliases", + "request": { + "$ref": "DomainAlias" + }, + "response": { + "$ref": "DomainAlias" + }, + "scopes": [ + "https://www.googleapis.com/auth/admin.directory.domain" + ] + }, + "list": { + "description": "Lists the domain aliases of the customer.", + "httpMethod": "GET", + "id": "directory.domainAliases.list", + "parameterOrder": [ + "customer" + ], + "parameters": { + "customer": { + "description": "Immutable ID of the G Suite account.", + "location": "path", + "required": true, + "type": "string" + }, + "parentDomainName": { + "description": "Name of the parent domain for which domain aliases are to be fetched.", + "location": "query", + "type": "string" + } + }, + "path": "customer/{customer}/domainaliases", + "response": { + "$ref": "DomainAliases" + }, + "scopes": [ + "https://www.googleapis.com/auth/admin.directory.domain", + "https://www.googleapis.com/auth/admin.directory.domain.readonly" + ] + } + } }, - "nextPageToken": { - "type": "string", - "description": "Token used to access next page of this result." + "domains": { + "methods": { + "delete": { + "description": "Deletes a domain of the customer.", + "httpMethod": "DELETE", + "id": "directory.domains.delete", + "parameterOrder": [ + "customer", + "domainName" + ], + "parameters": { + "customer": { + "description": "Immutable ID of the G Suite account.", + "location": "path", + "required": true, + "type": "string" + }, + "domainName": { + "description": "Name of domain to be deleted", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "customer/{customer}/domains/{domainName}", + "scopes": [ + "https://www.googleapis.com/auth/admin.directory.domain" + ] + }, + "get": { + "description": "Retrieves a domain of the customer.", + "httpMethod": "GET", + "id": "directory.domains.get", + "parameterOrder": [ + "customer", + "domainName" + ], + "parameters": { + "customer": { + "description": "Immutable ID of the G Suite account.", + "location": "path", + "required": true, + "type": "string" + }, + "domainName": { + "description": "Name of domain to be retrieved", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "customer/{customer}/domains/{domainName}", + "response": { + "$ref": "Domains" + }, + "scopes": [ + "https://www.googleapis.com/auth/admin.directory.domain", + "https://www.googleapis.com/auth/admin.directory.domain.readonly" + ] + }, + "insert": { + "description": "Inserts a domain of the customer.", + "httpMethod": "POST", + "id": "directory.domains.insert", + "parameterOrder": [ + "customer" + ], + "parameters": { + "customer": { + "description": "Immutable ID of the G Suite account.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "customer/{customer}/domains", + "request": { + "$ref": "Domains" + }, + "response": { + "$ref": "Domains" + }, + "scopes": [ + "https://www.googleapis.com/auth/admin.directory.domain" + ] + }, + "list": { + "description": "Lists the domains of the customer.", + "httpMethod": "GET", + "id": "directory.domains.list", + "parameterOrder": [ + "customer" + ], + "parameters": { + "customer": { + "description": "Immutable ID of the G Suite account.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "customer/{customer}/domains", + "response": { + "$ref": "Domains2" + }, + "scopes": [ + "https://www.googleapis.com/auth/admin.directory.domain", + "https://www.googleapis.com/auth/admin.directory.domain.readonly" + ] + } + } }, - "trigger_event": { - "type": "string", - "description": "Event that triggered this response (only used in case of Push Response)" + "groups": { + "methods": { + "delete": { + "description": "Delete Group", + "httpMethod": "DELETE", + "id": "directory.groups.delete", + "parameterOrder": [ + "groupKey" + ], + "parameters": { + "groupKey": { + "description": "Email or immutable ID of the group", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "groups/{groupKey}", + "scopes": [ + "https://www.googleapis.com/auth/admin.directory.group" + ] + }, + "get": { + "description": "Retrieve Group", + "httpMethod": "GET", + "id": "directory.groups.get", + "parameterOrder": [ + "groupKey" + ], + "parameters": { + "groupKey": { + "description": "Email or immutable ID of the group", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "groups/{groupKey}", + "response": { + "$ref": "Group" + }, + "scopes": [ + "https://www.googleapis.com/auth/admin.directory.group", + "https://www.googleapis.com/auth/admin.directory.group.readonly" + ] + }, + "insert": { + "description": "Create Group", + "httpMethod": "POST", + "id": "directory.groups.insert", + "path": "groups", + "request": { + "$ref": "Group" + }, + "response": { + "$ref": "Group" + }, + "scopes": [ + "https://www.googleapis.com/auth/admin.directory.group" + ] + }, + "list": { + "description": "Retrieve all groups in a domain (paginated)", + "httpMethod": "GET", + "id": "directory.groups.list", + "parameters": { + "customer": { + "description": "Immutable ID of the G Suite account. In case of multi-domain, to fetch all groups for a customer, fill this field instead of domain.", + "location": "query", + "type": "string" + }, + "domain": { + "description": "Name of the domain. Fill this field to get groups from only this domain. To return all groups in a multi-domain fill customer field instead.", + "location": "query", + "type": "string" + }, + "maxResults": { + "description": "Maximum number of results to return. Default is 200", + "format": "int32", + "location": "query", + "minimum": "1", + "type": "integer" + }, + "pageToken": { + "description": "Token to specify next page in the list", + "location": "query", + "type": "string" + }, + "userKey": { + "description": "Email or immutable ID of the user if only those groups are to be listed, the given user is a member of. If ID, it should match with id of user object", + "location": "query", + "type": "string" + } + }, + "path": "groups", + "response": { + "$ref": "Groups" + }, + "scopes": [ + "https://www.googleapis.com/auth/admin.directory.group", + "https://www.googleapis.com/auth/admin.directory.group.readonly" + ] + }, + "patch": { + "description": "Update Group. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "directory.groups.patch", + "parameterOrder": [ + "groupKey" + ], + "parameters": { + "groupKey": { + "description": "Email or immutable ID of the group. If ID, it should match with id of group object", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "groups/{groupKey}", + "request": { + "$ref": "Group" + }, + "response": { + "$ref": "Group" + }, + "scopes": [ + "https://www.googleapis.com/auth/admin.directory.group" + ] + }, + "update": { + "description": "Update Group", + "httpMethod": "PUT", + "id": "directory.groups.update", + "parameterOrder": [ + "groupKey" + ], + "parameters": { + "groupKey": { + "description": "Email or immutable ID of the group. If ID, it should match with id of group object", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "groups/{groupKey}", + "request": { + "$ref": "Group" + }, + "response": { + "$ref": "Group" + }, + "scopes": [ + "https://www.googleapis.com/auth/admin.directory.group" + ] + } + }, + "resources": { + "aliases": { + "methods": { + "delete": { + "description": "Remove a alias for the group", + "httpMethod": "DELETE", + "id": "directory.groups.aliases.delete", + "parameterOrder": [ + "groupKey", + "alias" + ], + "parameters": { + "alias": { + "description": "The alias to be removed", + "location": "path", + "required": true, + "type": "string" + }, + "groupKey": { + "description": "Email or immutable ID of the group", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "groups/{groupKey}/aliases/{alias}", + "scopes": [ + "https://www.googleapis.com/auth/admin.directory.group" + ] + }, + "insert": { + "description": "Add a alias for the group", + "httpMethod": "POST", + "id": "directory.groups.aliases.insert", + "parameterOrder": [ + "groupKey" + ], + "parameters": { + "groupKey": { + "description": "Email or immutable ID of the group", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "groups/{groupKey}/aliases", + "request": { + "$ref": "Alias" + }, + "response": { + "$ref": "Alias" + }, + "scopes": [ + "https://www.googleapis.com/auth/admin.directory.group" + ] + }, + "list": { + "description": "List all aliases for a group", + "httpMethod": "GET", + "id": "directory.groups.aliases.list", + "parameterOrder": [ + "groupKey" + ], + "parameters": { + "groupKey": { + "description": "Email or immutable ID of the group", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "groups/{groupKey}/aliases", + "response": { + "$ref": "Aliases" + }, + "scopes": [ + "https://www.googleapis.com/auth/admin.directory.group", + "https://www.googleapis.com/auth/admin.directory.group.readonly" + ], + "supportsSubscription": true + } + } + } + } + }, + "members": { + "methods": { + "delete": { + "description": "Remove membership.", + "httpMethod": "DELETE", + "id": "directory.members.delete", + "parameterOrder": [ + "groupKey", + "memberKey" + ], + "parameters": { + "groupKey": { + "description": "Email or immutable ID of the group", + "location": "path", + "required": true, + "type": "string" + }, + "memberKey": { + "description": "Email or immutable ID of the member", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "groups/{groupKey}/members/{memberKey}", + "scopes": [ + "https://www.googleapis.com/auth/admin.directory.group", + "https://www.googleapis.com/auth/admin.directory.group.member" + ] + }, + "get": { + "description": "Retrieve Group Member", + "httpMethod": "GET", + "id": "directory.members.get", + "parameterOrder": [ + "groupKey", + "memberKey" + ], + "parameters": { + "groupKey": { + "description": "Email or immutable ID of the group", + "location": "path", + "required": true, + "type": "string" + }, + "memberKey": { + "description": "Email or immutable ID of the member", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "groups/{groupKey}/members/{memberKey}", + "response": { + "$ref": "Member" + }, + "scopes": [ + "https://www.googleapis.com/auth/admin.directory.group", + "https://www.googleapis.com/auth/admin.directory.group.member", + "https://www.googleapis.com/auth/admin.directory.group.member.readonly", + "https://www.googleapis.com/auth/admin.directory.group.readonly" + ] + }, + "hasMember": { + "description": "Checks whether the given user is a member of the group. Membership can be direct or nested.", + "httpMethod": "GET", + "id": "directory.members.hasMember", + "parameterOrder": [ + "groupKey", + "memberKey" + ], + "parameters": { + "groupKey": { + "description": "Identifies the group in the API request. The value can be the group's email address, group alias, or the unique group ID.", + "location": "path", + "required": true, + "type": "string" + }, + "memberKey": { + "description": "Identifies the user member in the API request. The value can be the user's primary email address, alias, or unique ID.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "groups/{groupKey}/hasMember/{memberKey}", + "response": { + "$ref": "MembersHasMember" + }, + "scopes": [ + "https://www.googleapis.com/auth/admin.directory.group", + "https://www.googleapis.com/auth/admin.directory.group.member", + "https://www.googleapis.com/auth/admin.directory.group.member.readonly", + "https://www.googleapis.com/auth/admin.directory.group.readonly" + ] + }, + "insert": { + "description": "Add user to the specified group.", + "httpMethod": "POST", + "id": "directory.members.insert", + "parameterOrder": [ + "groupKey" + ], + "parameters": { + "groupKey": { + "description": "Email or immutable ID of the group", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "groups/{groupKey}/members", + "request": { + "$ref": "Member" + }, + "response": { + "$ref": "Member" + }, + "scopes": [ + "https://www.googleapis.com/auth/admin.directory.group", + "https://www.googleapis.com/auth/admin.directory.group.member" + ] + }, + "list": { + "description": "Retrieve all members in a group (paginated)", + "httpMethod": "GET", + "id": "directory.members.list", + "parameterOrder": [ + "groupKey" + ], + "parameters": { + "groupKey": { + "description": "Email or immutable ID of the group", + "location": "path", + "required": true, + "type": "string" + }, + "maxResults": { + "description": "Maximum number of results to return. Default is 200", + "format": "int32", + "location": "query", + "minimum": "1", + "type": "integer" + }, + "pageToken": { + "description": "Token to specify next page in the list", + "location": "query", + "type": "string" + }, + "roles": { + "description": "Comma separated role values to filter list results on.", + "location": "query", + "type": "string" + } + }, + "path": "groups/{groupKey}/members", + "response": { + "$ref": "Members" + }, + "scopes": [ + "https://www.googleapis.com/auth/admin.directory.group", + "https://www.googleapis.com/auth/admin.directory.group.member", + "https://www.googleapis.com/auth/admin.directory.group.member.readonly", + "https://www.googleapis.com/auth/admin.directory.group.readonly" + ] + }, + "patch": { + "description": "Update membership of a user in the specified group. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "directory.members.patch", + "parameterOrder": [ + "groupKey", + "memberKey" + ], + "parameters": { + "groupKey": { + "description": "Email or immutable ID of the group. If ID, it should match with id of group object", + "location": "path", + "required": true, + "type": "string" + }, + "memberKey": { + "description": "Email or immutable ID of the user. If ID, it should match with id of member object", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "groups/{groupKey}/members/{memberKey}", + "request": { + "$ref": "Member" + }, + "response": { + "$ref": "Member" + }, + "scopes": [ + "https://www.googleapis.com/auth/admin.directory.group", + "https://www.googleapis.com/auth/admin.directory.group.member" + ] + }, + "update": { + "description": "Update membership of a user in the specified group.", + "httpMethod": "PUT", + "id": "directory.members.update", + "parameterOrder": [ + "groupKey", + "memberKey" + ], + "parameters": { + "groupKey": { + "description": "Email or immutable ID of the group. If ID, it should match with id of group object", + "location": "path", + "required": true, + "type": "string" + }, + "memberKey": { + "description": "Email or immutable ID of the user. If ID, it should match with id of member object", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "groups/{groupKey}/members/{memberKey}", + "request": { + "$ref": "Member" + }, + "response": { + "$ref": "Member" + }, + "scopes": [ + "https://www.googleapis.com/auth/admin.directory.group", + "https://www.googleapis.com/auth/admin.directory.group.member" + ] + } + } + }, + "mobiledevices": { + "methods": { + "action": { + "description": "Take action on Mobile Device", + "httpMethod": "POST", + "id": "directory.mobiledevices.action", + "parameterOrder": [ + "customerId", + "resourceId" + ], + "parameters": { + "customerId": { + "description": "Immutable ID of the G Suite account", + "location": "path", + "required": true, + "type": "string" + }, + "resourceId": { + "description": "Immutable ID of Mobile Device", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "customer/{customerId}/devices/mobile/{resourceId}/action", + "request": { + "$ref": "MobileDeviceAction" + }, + "scopes": [ + "https://www.googleapis.com/auth/admin.directory.device.mobile", + "https://www.googleapis.com/auth/admin.directory.device.mobile.action" + ] + }, + "delete": { + "description": "Delete Mobile Device", + "httpMethod": "DELETE", + "id": "directory.mobiledevices.delete", + "parameterOrder": [ + "customerId", + "resourceId" + ], + "parameters": { + "customerId": { + "description": "Immutable ID of the G Suite account", + "location": "path", + "required": true, + "type": "string" + }, + "resourceId": { + "description": "Immutable ID of Mobile Device", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "customer/{customerId}/devices/mobile/{resourceId}", + "scopes": [ + "https://www.googleapis.com/auth/admin.directory.device.mobile" + ] + }, + "get": { + "description": "Retrieve Mobile Device", + "httpMethod": "GET", + "id": "directory.mobiledevices.get", + "parameterOrder": [ + "customerId", + "resourceId" + ], + "parameters": { + "customerId": { + "description": "Immutable ID of the G Suite account", + "location": "path", + "required": true, + "type": "string" + }, + "projection": { + "description": "Restrict information returned to a set of selected fields.", + "enum": [ + "BASIC", + "FULL" + ], + "enumDescriptions": [ + "Includes only the basic metadata fields (e.g., deviceId, model, status, type, and status)", + "Includes all metadata fields" + ], + "location": "query", + "type": "string" + }, + "resourceId": { + "description": "Immutable ID of Mobile Device", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "customer/{customerId}/devices/mobile/{resourceId}", + "response": { + "$ref": "MobileDevice" + }, + "scopes": [ + "https://www.googleapis.com/auth/admin.directory.device.mobile", + "https://www.googleapis.com/auth/admin.directory.device.mobile.action", + "https://www.googleapis.com/auth/admin.directory.device.mobile.readonly" + ] + }, + "list": { + "description": "Retrieve all Mobile Devices of a customer (paginated)", + "httpMethod": "GET", + "id": "directory.mobiledevices.list", + "parameterOrder": [ + "customerId" + ], + "parameters": { + "customerId": { + "description": "Immutable ID of the G Suite account", + "location": "path", + "required": true, + "type": "string" + }, + "maxResults": { + "description": "Maximum number of results to return. Default is 100", + "format": "int32", + "location": "query", + "minimum": "1", + "type": "integer" + }, + "orderBy": { + "description": "Column to use for sorting results", + "enum": [ + "deviceId", + "email", + "lastSync", + "model", + "name", + "os", + "status", + "type" + ], + "enumDescriptions": [ + "Mobile Device serial number.", + "Owner user email.", + "Last policy settings sync date time of the device.", + "Mobile Device model.", + "Owner user name.", + "Mobile operating system.", + "Status of the device.", + "Type of the device." + ], + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Token to specify next page in the list", + "location": "query", + "type": "string" + }, + "projection": { + "description": "Restrict information returned to a set of selected fields.", + "enum": [ + "BASIC", + "FULL" + ], + "enumDescriptions": [ + "Includes only the basic metadata fields (e.g., deviceId, model, status, type, and status)", + "Includes all metadata fields" + ], + "location": "query", + "type": "string" + }, + "query": { + "description": "Search string in the format given at http://support.google.com/a/bin/answer.py?hl=en\u0026answer=1408863#search", + "location": "query", + "type": "string" + }, + "sortOrder": { + "description": "Whether to return results in ascending or descending order. Only of use when orderBy is also used", + "enum": [ + "ASCENDING", + "DESCENDING" + ], + "enumDescriptions": [ + "Ascending order.", + "Descending order." + ], + "location": "query", + "type": "string" + } + }, + "path": "customer/{customerId}/devices/mobile", + "response": { + "$ref": "MobileDevices" + }, + "scopes": [ + "https://www.googleapis.com/auth/admin.directory.device.mobile", + "https://www.googleapis.com/auth/admin.directory.device.mobile.action", + "https://www.googleapis.com/auth/admin.directory.device.mobile.readonly" + ] + } + } + }, + "notifications": { + "methods": { + "delete": { + "description": "Deletes a notification", + "httpMethod": "DELETE", + "id": "directory.notifications.delete", + "parameterOrder": [ + "customer", + "notificationId" + ], + "parameters": { + "customer": { + "description": "The unique ID for the customer's G Suite account. The customerId is also returned as part of the Users resource.", + "location": "path", + "required": true, + "type": "string" + }, + "notificationId": { + "description": "The unique ID of the notification.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "customer/{customer}/notifications/{notificationId}", + "scopes": [ + "https://www.googleapis.com/auth/admin.directory.notifications" + ] + }, + "get": { + "description": "Retrieves a notification.", + "httpMethod": "GET", + "id": "directory.notifications.get", + "parameterOrder": [ + "customer", + "notificationId" + ], + "parameters": { + "customer": { + "description": "The unique ID for the customer's G Suite account. The customerId is also returned as part of the Users resource.", + "location": "path", + "required": true, + "type": "string" + }, + "notificationId": { + "description": "The unique ID of the notification.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "customer/{customer}/notifications/{notificationId}", + "response": { + "$ref": "Notification" + }, + "scopes": [ + "https://www.googleapis.com/auth/admin.directory.notifications" + ] + }, + "list": { + "description": "Retrieves a list of notifications.", + "httpMethod": "GET", + "id": "directory.notifications.list", + "parameterOrder": [ + "customer" + ], + "parameters": { + "customer": { + "description": "The unique ID for the customer's G Suite account.", + "location": "path", + "required": true, + "type": "string" + }, + "language": { + "description": "The ISO 639-1 code of the language notifications are returned in. The default is English (en).", + "location": "query", + "type": "string" + }, + "maxResults": { + "description": "Maximum number of notifications to return per page. The default is 100.", + "format": "uint32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "The token to specify the page of results to retrieve.", + "location": "query", + "type": "string" + } + }, + "path": "customer/{customer}/notifications", + "response": { + "$ref": "Notifications" + }, + "scopes": [ + "https://www.googleapis.com/auth/admin.directory.notifications" + ] + }, + "patch": { + "description": "Updates a notification. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "directory.notifications.patch", + "parameterOrder": [ + "customer", + "notificationId" + ], + "parameters": { + "customer": { + "description": "The unique ID for the customer's G Suite account.", + "location": "path", + "required": true, + "type": "string" + }, + "notificationId": { + "description": "The unique ID of the notification.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "customer/{customer}/notifications/{notificationId}", + "request": { + "$ref": "Notification" + }, + "response": { + "$ref": "Notification" + }, + "scopes": [ + "https://www.googleapis.com/auth/admin.directory.notifications" + ] + }, + "update": { + "description": "Updates a notification.", + "httpMethod": "PUT", + "id": "directory.notifications.update", + "parameterOrder": [ + "customer", + "notificationId" + ], + "parameters": { + "customer": { + "description": "The unique ID for the customer's G Suite account.", + "location": "path", + "required": true, + "type": "string" + }, + "notificationId": { + "description": "The unique ID of the notification.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "customer/{customer}/notifications/{notificationId}", + "request": { + "$ref": "Notification" + }, + "response": { + "$ref": "Notification" + }, + "scopes": [ + "https://www.googleapis.com/auth/admin.directory.notifications" + ] + } + } + }, + "orgunits": { + "methods": { + "delete": { + "description": "Remove organizational unit", + "httpMethod": "DELETE", + "id": "directory.orgunits.delete", + "parameterOrder": [ + "customerId", + "orgUnitPath" + ], + "parameters": { + "customerId": { + "description": "Immutable ID of the G Suite account", + "location": "path", + "required": true, + "type": "string" + }, + "orgUnitPath": { + "description": "Full path of the organizational unit or its ID", + "location": "path", + "repeated": true, + "required": true, + "type": "string" + } + }, + "path": "customer/{customerId}/orgunits{/orgUnitPath*}", + "scopes": [ + "https://www.googleapis.com/auth/admin.directory.orgunit" + ] + }, + "get": { + "description": "Retrieve organizational unit", + "httpMethod": "GET", + "id": "directory.orgunits.get", + "parameterOrder": [ + "customerId", + "orgUnitPath" + ], + "parameters": { + "customerId": { + "description": "Immutable ID of the G Suite account", + "location": "path", + "required": true, + "type": "string" + }, + "orgUnitPath": { + "description": "Full path of the organizational unit or its ID", + "location": "path", + "repeated": true, + "required": true, + "type": "string" + } + }, + "path": "customer/{customerId}/orgunits{/orgUnitPath*}", + "response": { + "$ref": "OrgUnit" + }, + "scopes": [ + "https://www.googleapis.com/auth/admin.directory.orgunit", + "https://www.googleapis.com/auth/admin.directory.orgunit.readonly" + ] + }, + "insert": { + "description": "Add organizational unit", + "httpMethod": "POST", + "id": "directory.orgunits.insert", + "parameterOrder": [ + "customerId" + ], + "parameters": { + "customerId": { + "description": "Immutable ID of the G Suite account", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "customer/{customerId}/orgunits", + "request": { + "$ref": "OrgUnit" + }, + "response": { + "$ref": "OrgUnit" + }, + "scopes": [ + "https://www.googleapis.com/auth/admin.directory.orgunit" + ] + }, + "list": { + "description": "Retrieve all organizational units", + "httpMethod": "GET", + "id": "directory.orgunits.list", + "parameterOrder": [ + "customerId" + ], + "parameters": { + "customerId": { + "description": "Immutable ID of the G Suite account", + "location": "path", + "required": true, + "type": "string" + }, + "orgUnitPath": { + "default": "", + "description": "the URL-encoded organizational unit's path or its ID", + "location": "query", + "type": "string" + }, + "type": { + "description": "Whether to return all sub-organizations or just immediate children", + "enum": [ + "all", + "children" + ], + "enumDescriptions": [ + "All sub-organizational units.", + "Immediate children only (default)." + ], + "location": "query", + "type": "string" + } + }, + "path": "customer/{customerId}/orgunits", + "response": { + "$ref": "OrgUnits" + }, + "scopes": [ + "https://www.googleapis.com/auth/admin.directory.orgunit", + "https://www.googleapis.com/auth/admin.directory.orgunit.readonly" + ] + }, + "patch": { + "description": "Update organizational unit. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "directory.orgunits.patch", + "parameterOrder": [ + "customerId", + "orgUnitPath" + ], + "parameters": { + "customerId": { + "description": "Immutable ID of the G Suite account", + "location": "path", + "required": true, + "type": "string" + }, + "orgUnitPath": { + "description": "Full path of the organizational unit or its ID", + "location": "path", + "repeated": true, + "required": true, + "type": "string" + } + }, + "path": "customer/{customerId}/orgunits{/orgUnitPath*}", + "request": { + "$ref": "OrgUnit" + }, + "response": { + "$ref": "OrgUnit" + }, + "scopes": [ + "https://www.googleapis.com/auth/admin.directory.orgunit" + ] + }, + "update": { + "description": "Update organizational unit", + "httpMethod": "PUT", + "id": "directory.orgunits.update", + "parameterOrder": [ + "customerId", + "orgUnitPath" + ], + "parameters": { + "customerId": { + "description": "Immutable ID of the G Suite account", + "location": "path", + "required": true, + "type": "string" + }, + "orgUnitPath": { + "description": "Full path of the organizational unit or its ID", + "location": "path", + "repeated": true, + "required": true, + "type": "string" + } + }, + "path": "customer/{customerId}/orgunits{/orgUnitPath*}", + "request": { + "$ref": "OrgUnit" + }, + "response": { + "$ref": "OrgUnit" + }, + "scopes": [ + "https://www.googleapis.com/auth/admin.directory.orgunit" + ] + } + } + }, + "privileges": { + "methods": { + "list": { + "description": "Retrieves a paginated list of all privileges for a customer.", + "httpMethod": "GET", + "id": "directory.privileges.list", + "parameterOrder": [ + "customer" + ], + "parameters": { + "customer": { + "description": "Immutable ID of the G Suite account.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "customer/{customer}/roles/ALL/privileges", + "response": { + "$ref": "Privileges" + }, + "scopes": [ + "https://www.googleapis.com/auth/admin.directory.rolemanagement", + "https://www.googleapis.com/auth/admin.directory.rolemanagement.readonly" + ] + } + } + }, + "resolvedAppAccessSettings": { + "methods": { + "GetSettings": { + "description": "Retrieves resolved app access settings of the logged in user.", + "httpMethod": "GET", + "id": "directory.resolvedAppAccessSettings.GetSettings", + "path": "resolvedappaccesssettings", + "response": { + "$ref": "AppAccessCollections" + } + }, + "ListTrustedApps": { + "description": "Retrieves the list of apps trusted by the admin of the logged in user.", + "httpMethod": "GET", + "id": "directory.resolvedAppAccessSettings.ListTrustedApps", + "path": "trustedapps", + "response": { + "$ref": "TrustedApps" + } + } + } + }, + "resources": { + "resources": { + "buildings": { + "methods": { + "delete": { + "description": "Deletes a building.", + "httpMethod": "DELETE", + "id": "directory.resources.buildings.delete", + "parameterOrder": [ + "customer", + "buildingId" + ], + "parameters": { + "buildingId": { + "description": "The ID of the building to delete.", + "location": "path", + "required": true, + "type": "string" + }, + "customer": { + "description": "The unique ID for the customer's G Suite account. As an account administrator, you can also use the my_customer alias to represent your account's customer ID.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "customer/{customer}/resources/buildings/{buildingId}", + "scopes": [ + "https://www.googleapis.com/auth/admin.directory.resource.calendar" + ] + }, + "get": { + "description": "Retrieves a building.", + "httpMethod": "GET", + "id": "directory.resources.buildings.get", + "parameterOrder": [ + "customer", + "buildingId" + ], + "parameters": { + "buildingId": { + "description": "The unique ID of the building to retrieve.", + "location": "path", + "required": true, + "type": "string" + }, + "customer": { + "description": "The unique ID for the customer's G Suite account. As an account administrator, you can also use the my_customer alias to represent your account's customer ID.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "customer/{customer}/resources/buildings/{buildingId}", + "response": { + "$ref": "Building" + }, + "scopes": [ + "https://www.googleapis.com/auth/admin.directory.resource.calendar", + "https://www.googleapis.com/auth/admin.directory.resource.calendar.readonly" + ] + }, + "insert": { + "description": "Inserts a building.", + "httpMethod": "POST", + "id": "directory.resources.buildings.insert", + "parameterOrder": [ + "customer" + ], + "parameters": { + "customer": { + "description": "The unique ID for the customer's G Suite account. As an account administrator, you can also use the my_customer alias to represent your account's customer ID.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "customer/{customer}/resources/buildings", + "request": { + "$ref": "Building" + }, + "response": { + "$ref": "Building" + }, + "scopes": [ + "https://www.googleapis.com/auth/admin.directory.resource.calendar" + ] + }, + "list": { + "description": "Retrieves a list of buildings for an account.", + "httpMethod": "GET", + "id": "directory.resources.buildings.list", + "parameterOrder": [ + "customer" + ], + "parameters": { + "customer": { + "description": "The unique ID for the customer's G Suite account. As an account administrator, you can also use the my_customer alias to represent your account's customer ID.", + "location": "path", + "required": true, + "type": "string" + }, + "maxResults": { + "description": "Maximum number of results to return.", + "format": "int32", + "location": "query", + "maximum": "500", + "minimum": "1", + "type": "integer" + }, + "pageToken": { + "description": "Token to specify the next page in the list.", + "location": "query", + "type": "string" + } + }, + "path": "customer/{customer}/resources/buildings", + "response": { + "$ref": "Buildings" + }, + "scopes": [ + "https://www.googleapis.com/auth/admin.directory.resource.calendar", + "https://www.googleapis.com/auth/admin.directory.resource.calendar.readonly" + ] + }, + "patch": { + "description": "Updates a building. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "directory.resources.buildings.patch", + "parameterOrder": [ + "customer", + "buildingId" + ], + "parameters": { + "buildingId": { + "description": "The ID of the building to update.", + "location": "path", + "required": true, + "type": "string" + }, + "customer": { + "description": "The unique ID for the customer's G Suite account. As an account administrator, you can also use the my_customer alias to represent your account's customer ID.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "customer/{customer}/resources/buildings/{buildingId}", + "request": { + "$ref": "Building" + }, + "response": { + "$ref": "Building" + }, + "scopes": [ + "https://www.googleapis.com/auth/admin.directory.resource.calendar" + ] + }, + "update": { + "description": "Updates a building.", + "httpMethod": "PUT", + "id": "directory.resources.buildings.update", + "parameterOrder": [ + "customer", + "buildingId" + ], + "parameters": { + "buildingId": { + "description": "The ID of the building to update.", + "location": "path", + "required": true, + "type": "string" + }, + "customer": { + "description": "The unique ID for the customer's G Suite account. As an account administrator, you can also use the my_customer alias to represent your account's customer ID.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "customer/{customer}/resources/buildings/{buildingId}", + "request": { + "$ref": "Building" + }, + "response": { + "$ref": "Building" + }, + "scopes": [ + "https://www.googleapis.com/auth/admin.directory.resource.calendar" + ] + } + } + }, + "calendars": { + "methods": { + "delete": { + "description": "Deletes a calendar resource.", + "httpMethod": "DELETE", + "id": "directory.resources.calendars.delete", + "parameterOrder": [ + "customer", + "calendarResourceId" + ], + "parameters": { + "calendarResourceId": { + "description": "The unique ID of the calendar resource to delete.", + "location": "path", + "required": true, + "type": "string" + }, + "customer": { + "description": "The unique ID for the customer's G Suite account. As an account administrator, you can also use the my_customer alias to represent your account's customer ID.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "customer/{customer}/resources/calendars/{calendarResourceId}", + "scopes": [ + "https://www.googleapis.com/auth/admin.directory.resource.calendar" + ] + }, + "get": { + "description": "Retrieves a calendar resource.", + "httpMethod": "GET", + "id": "directory.resources.calendars.get", + "parameterOrder": [ + "customer", + "calendarResourceId" + ], + "parameters": { + "calendarResourceId": { + "description": "The unique ID of the calendar resource to retrieve.", + "location": "path", + "required": true, + "type": "string" + }, + "customer": { + "description": "The unique ID for the customer's G Suite account. As an account administrator, you can also use the my_customer alias to represent your account's customer ID.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "customer/{customer}/resources/calendars/{calendarResourceId}", + "response": { + "$ref": "CalendarResource" + }, + "scopes": [ + "https://www.googleapis.com/auth/admin.directory.resource.calendar", + "https://www.googleapis.com/auth/admin.directory.resource.calendar.readonly" + ] + }, + "insert": { + "description": "Inserts a calendar resource.", + "httpMethod": "POST", + "id": "directory.resources.calendars.insert", + "parameterOrder": [ + "customer" + ], + "parameters": { + "customer": { + "description": "The unique ID for the customer's G Suite account. As an account administrator, you can also use the my_customer alias to represent your account's customer ID.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "customer/{customer}/resources/calendars", + "request": { + "$ref": "CalendarResource" + }, + "response": { + "$ref": "CalendarResource" + }, + "scopes": [ + "https://www.googleapis.com/auth/admin.directory.resource.calendar" + ] + }, + "list": { + "description": "Retrieves a list of calendar resources for an account.", + "httpMethod": "GET", + "id": "directory.resources.calendars.list", + "parameterOrder": [ + "customer" + ], + "parameters": { + "customer": { + "description": "The unique ID for the customer's G Suite account. As an account administrator, you can also use the my_customer alias to represent your account's customer ID.", + "location": "path", + "required": true, + "type": "string" + }, + "maxResults": { + "description": "Maximum number of results to return.", + "format": "int32", + "location": "query", + "maximum": "500", + "minimum": "1", + "type": "integer" + }, + "orderBy": { + "description": "Field(s) to sort results by in either ascending or descending order. Supported fields include resourceId, resourceName, capacity, buildingId, and floorName. If no order is specified, defaults to ascending. Should be of the form \"field [asc|desc], field [asc|desc], ...\". For example buildingId, capacity desc would return results sorted first by buildingId in ascending order then by capacity in descending order.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Token to specify the next page in the list.", + "location": "query", + "type": "string" + }, + "query": { + "description": "String query used to filter results. Should be of the form \"field operator value\" where field can be any of supported fields and operators can be any of supported operations. Operators include '=' for exact match and ':' for prefix match or HAS match where applicable. For prefix match, the value should always be followed by a *. Supported fields include generatedResourceName, name, buildingId, featureInstances.feature.name. For example buildingId=US-NYC-9TH AND featureInstances.feature.name:Phone.", + "location": "query", + "type": "string" + } + }, + "path": "customer/{customer}/resources/calendars", + "response": { + "$ref": "CalendarResources" + }, + "scopes": [ + "https://www.googleapis.com/auth/admin.directory.resource.calendar", + "https://www.googleapis.com/auth/admin.directory.resource.calendar.readonly" + ] + }, + "patch": { + "description": "Updates a calendar resource.\n\nThis method supports patch semantics, meaning you only need to include the fields you wish to update. Fields that are not present in the request will be preserved. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "directory.resources.calendars.patch", + "parameterOrder": [ + "customer", + "calendarResourceId" + ], + "parameters": { + "calendarResourceId": { + "description": "The unique ID of the calendar resource to update.", + "location": "path", + "required": true, + "type": "string" + }, + "customer": { + "description": "The unique ID for the customer's G Suite account. As an account administrator, you can also use the my_customer alias to represent your account's customer ID.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "customer/{customer}/resources/calendars/{calendarResourceId}", + "request": { + "$ref": "CalendarResource" + }, + "response": { + "$ref": "CalendarResource" + }, + "scopes": [ + "https://www.googleapis.com/auth/admin.directory.resource.calendar" + ] + }, + "update": { + "description": "Updates a calendar resource.\n\nThis method supports patch semantics, meaning you only need to include the fields you wish to update. Fields that are not present in the request will be preserved.", + "httpMethod": "PUT", + "id": "directory.resources.calendars.update", + "parameterOrder": [ + "customer", + "calendarResourceId" + ], + "parameters": { + "calendarResourceId": { + "description": "The unique ID of the calendar resource to update.", + "location": "path", + "required": true, + "type": "string" + }, + "customer": { + "description": "The unique ID for the customer's G Suite account. As an account administrator, you can also use the my_customer alias to represent your account's customer ID.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "customer/{customer}/resources/calendars/{calendarResourceId}", + "request": { + "$ref": "CalendarResource" + }, + "response": { + "$ref": "CalendarResource" + }, + "scopes": [ + "https://www.googleapis.com/auth/admin.directory.resource.calendar" + ] + } + } + }, + "features": { + "methods": { + "delete": { + "description": "Deletes a feature.", + "httpMethod": "DELETE", + "id": "directory.resources.features.delete", + "parameterOrder": [ + "customer", + "featureKey" + ], + "parameters": { + "customer": { + "description": "The unique ID for the customer's G Suite account. As an account administrator, you can also use the my_customer alias to represent your account's customer ID.", + "location": "path", + "required": true, + "type": "string" + }, + "featureKey": { + "description": "The unique ID of the feature to delete.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "customer/{customer}/resources/features/{featureKey}", + "scopes": [ + "https://www.googleapis.com/auth/admin.directory.resource.calendar" + ] + }, + "get": { + "description": "Retrieves a feature.", + "httpMethod": "GET", + "id": "directory.resources.features.get", + "parameterOrder": [ + "customer", + "featureKey" + ], + "parameters": { + "customer": { + "description": "The unique ID for the customer's G Suite account. As an account administrator, you can also use the my_customer alias to represent your account's customer ID.", + "location": "path", + "required": true, + "type": "string" + }, + "featureKey": { + "description": "The unique ID of the feature to retrieve.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "customer/{customer}/resources/features/{featureKey}", + "response": { + "$ref": "Feature" + }, + "scopes": [ + "https://www.googleapis.com/auth/admin.directory.resource.calendar", + "https://www.googleapis.com/auth/admin.directory.resource.calendar.readonly" + ] + }, + "insert": { + "description": "Inserts a feature.", + "httpMethod": "POST", + "id": "directory.resources.features.insert", + "parameterOrder": [ + "customer" + ], + "parameters": { + "customer": { + "description": "The unique ID for the customer's G Suite account. As an account administrator, you can also use the my_customer alias to represent your account's customer ID.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "customer/{customer}/resources/features", + "request": { + "$ref": "Feature" + }, + "response": { + "$ref": "Feature" + }, + "scopes": [ + "https://www.googleapis.com/auth/admin.directory.resource.calendar" + ] + }, + "list": { + "description": "Retrieves a list of features for an account.", + "httpMethod": "GET", + "id": "directory.resources.features.list", + "parameterOrder": [ + "customer" + ], + "parameters": { + "customer": { + "description": "The unique ID for the customer's G Suite account. As an account administrator, you can also use the my_customer alias to represent your account's customer ID.", + "location": "path", + "required": true, + "type": "string" + }, + "maxResults": { + "description": "Maximum number of results to return.", + "format": "int32", + "location": "query", + "maximum": "500", + "minimum": "1", + "type": "integer" + }, + "pageToken": { + "description": "Token to specify the next page in the list.", + "location": "query", + "type": "string" + } + }, + "path": "customer/{customer}/resources/features", + "response": { + "$ref": "Features" + }, + "scopes": [ + "https://www.googleapis.com/auth/admin.directory.resource.calendar", + "https://www.googleapis.com/auth/admin.directory.resource.calendar.readonly" + ] + }, + "patch": { + "description": "Updates a feature. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "directory.resources.features.patch", + "parameterOrder": [ + "customer", + "featureKey" + ], + "parameters": { + "customer": { + "description": "The unique ID for the customer's G Suite account. As an account administrator, you can also use the my_customer alias to represent your account's customer ID.", + "location": "path", + "required": true, + "type": "string" + }, + "featureKey": { + "description": "The unique ID of the feature to update.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "customer/{customer}/resources/features/{featureKey}", + "request": { + "$ref": "Feature" + }, + "response": { + "$ref": "Feature" + }, + "scopes": [ + "https://www.googleapis.com/auth/admin.directory.resource.calendar" + ] + }, + "rename": { + "description": "Renames a feature.", + "httpMethod": "POST", + "id": "directory.resources.features.rename", + "parameterOrder": [ + "customer", + "oldName" + ], + "parameters": { + "customer": { + "description": "The unique ID for the customer's G Suite account. As an account administrator, you can also use the my_customer alias to represent your account's customer ID.", + "location": "path", + "required": true, + "type": "string" + }, + "oldName": { + "description": "The unique ID of the feature to rename.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "customer/{customer}/resources/features/{oldName}/rename", + "request": { + "$ref": "FeatureRename" + }, + "scopes": [ + "https://www.googleapis.com/auth/admin.directory.resource.calendar" + ] + }, + "update": { + "description": "Updates a feature.", + "httpMethod": "PUT", + "id": "directory.resources.features.update", + "parameterOrder": [ + "customer", + "featureKey" + ], + "parameters": { + "customer": { + "description": "The unique ID for the customer's G Suite account. As an account administrator, you can also use the my_customer alias to represent your account's customer ID.", + "location": "path", + "required": true, + "type": "string" + }, + "featureKey": { + "description": "The unique ID of the feature to update.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "customer/{customer}/resources/features/{featureKey}", + "request": { + "$ref": "Feature" + }, + "response": { + "$ref": "Feature" + }, + "scopes": [ + "https://www.googleapis.com/auth/admin.directory.resource.calendar" + ] + } + } + } + } + }, + "roleAssignments": { + "methods": { + "delete": { + "description": "Deletes a role assignment.", + "httpMethod": "DELETE", + "id": "directory.roleAssignments.delete", + "parameterOrder": [ + "customer", + "roleAssignmentId" + ], + "parameters": { + "customer": { + "description": "Immutable ID of the G Suite account.", + "location": "path", + "required": true, + "type": "string" + }, + "roleAssignmentId": { + "description": "Immutable ID of the role assignment.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "customer/{customer}/roleassignments/{roleAssignmentId}", + "scopes": [ + "https://www.googleapis.com/auth/admin.directory.rolemanagement" + ] + }, + "get": { + "description": "Retrieve a role assignment.", + "httpMethod": "GET", + "id": "directory.roleAssignments.get", + "parameterOrder": [ + "customer", + "roleAssignmentId" + ], + "parameters": { + "customer": { + "description": "Immutable ID of the G Suite account.", + "location": "path", + "required": true, + "type": "string" + }, + "roleAssignmentId": { + "description": "Immutable ID of the role assignment.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "customer/{customer}/roleassignments/{roleAssignmentId}", + "response": { + "$ref": "RoleAssignment" + }, + "scopes": [ + "https://www.googleapis.com/auth/admin.directory.rolemanagement", + "https://www.googleapis.com/auth/admin.directory.rolemanagement.readonly" + ] + }, + "insert": { + "description": "Creates a role assignment.", + "httpMethod": "POST", + "id": "directory.roleAssignments.insert", + "parameterOrder": [ + "customer" + ], + "parameters": { + "customer": { + "description": "Immutable ID of the G Suite account.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "customer/{customer}/roleassignments", + "request": { + "$ref": "RoleAssignment" + }, + "response": { + "$ref": "RoleAssignment" + }, + "scopes": [ + "https://www.googleapis.com/auth/admin.directory.rolemanagement" + ] + }, + "list": { + "description": "Retrieves a paginated list of all roleAssignments.", + "httpMethod": "GET", + "id": "directory.roleAssignments.list", + "parameterOrder": [ + "customer" + ], + "parameters": { + "customer": { + "description": "Immutable ID of the G Suite account.", + "location": "path", + "required": true, + "type": "string" + }, + "maxResults": { + "description": "Maximum number of results to return.", + "format": "int32", + "location": "query", + "maximum": "200", + "minimum": "1", + "type": "integer" + }, + "pageToken": { + "description": "Token to specify the next page in the list.", + "location": "query", + "type": "string" + }, + "roleId": { + "description": "Immutable ID of a role. If included in the request, returns only role assignments containing this role ID.", + "location": "query", + "type": "string" + }, + "userKey": { + "description": "The user's primary email address, alias email address, or unique user ID. If included in the request, returns role assignments only for this user.", + "location": "query", + "type": "string" + } + }, + "path": "customer/{customer}/roleassignments", + "response": { + "$ref": "RoleAssignments" + }, + "scopes": [ + "https://www.googleapis.com/auth/admin.directory.rolemanagement", + "https://www.googleapis.com/auth/admin.directory.rolemanagement.readonly" + ] + } + } + }, + "roles": { + "methods": { + "delete": { + "description": "Deletes a role.", + "httpMethod": "DELETE", + "id": "directory.roles.delete", + "parameterOrder": [ + "customer", + "roleId" + ], + "parameters": { + "customer": { + "description": "Immutable ID of the G Suite account.", + "location": "path", + "required": true, + "type": "string" + }, + "roleId": { + "description": "Immutable ID of the role.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "customer/{customer}/roles/{roleId}", + "scopes": [ + "https://www.googleapis.com/auth/admin.directory.rolemanagement" + ] + }, + "get": { + "description": "Retrieves a role.", + "httpMethod": "GET", + "id": "directory.roles.get", + "parameterOrder": [ + "customer", + "roleId" + ], + "parameters": { + "customer": { + "description": "Immutable ID of the G Suite account.", + "location": "path", + "required": true, + "type": "string" + }, + "roleId": { + "description": "Immutable ID of the role.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "customer/{customer}/roles/{roleId}", + "response": { + "$ref": "Role" + }, + "scopes": [ + "https://www.googleapis.com/auth/admin.directory.rolemanagement", + "https://www.googleapis.com/auth/admin.directory.rolemanagement.readonly" + ] + }, + "insert": { + "description": "Creates a role.", + "httpMethod": "POST", + "id": "directory.roles.insert", + "parameterOrder": [ + "customer" + ], + "parameters": { + "customer": { + "description": "Immutable ID of the G Suite account.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "customer/{customer}/roles", + "request": { + "$ref": "Role" + }, + "response": { + "$ref": "Role" + }, + "scopes": [ + "https://www.googleapis.com/auth/admin.directory.rolemanagement" + ] + }, + "list": { + "description": "Retrieves a paginated list of all the roles in a domain.", + "httpMethod": "GET", + "id": "directory.roles.list", + "parameterOrder": [ + "customer" + ], + "parameters": { + "customer": { + "description": "Immutable ID of the G Suite account.", + "location": "path", + "required": true, + "type": "string" + }, + "maxResults": { + "description": "Maximum number of results to return.", + "format": "int32", + "location": "query", + "maximum": "100", + "minimum": "1", + "type": "integer" + }, + "pageToken": { + "description": "Token to specify the next page in the list.", + "location": "query", + "type": "string" + } + }, + "path": "customer/{customer}/roles", + "response": { + "$ref": "Roles" + }, + "scopes": [ + "https://www.googleapis.com/auth/admin.directory.rolemanagement", + "https://www.googleapis.com/auth/admin.directory.rolemanagement.readonly" + ] + }, + "patch": { + "description": "Updates a role. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "directory.roles.patch", + "parameterOrder": [ + "customer", + "roleId" + ], + "parameters": { + "customer": { + "description": "Immutable ID of the G Suite account.", + "location": "path", + "required": true, + "type": "string" + }, + "roleId": { + "description": "Immutable ID of the role.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "customer/{customer}/roles/{roleId}", + "request": { + "$ref": "Role" + }, + "response": { + "$ref": "Role" + }, + "scopes": [ + "https://www.googleapis.com/auth/admin.directory.rolemanagement" + ] + }, + "update": { + "description": "Updates a role.", + "httpMethod": "PUT", + "id": "directory.roles.update", + "parameterOrder": [ + "customer", + "roleId" + ], + "parameters": { + "customer": { + "description": "Immutable ID of the G Suite account.", + "location": "path", + "required": true, + "type": "string" + }, + "roleId": { + "description": "Immutable ID of the role.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "customer/{customer}/roles/{roleId}", + "request": { + "$ref": "Role" + }, + "response": { + "$ref": "Role" + }, + "scopes": [ + "https://www.googleapis.com/auth/admin.directory.rolemanagement" + ] + } + } + }, + "schemas": { + "methods": { + "delete": { + "description": "Delete schema", + "httpMethod": "DELETE", + "id": "directory.schemas.delete", + "parameterOrder": [ + "customerId", + "schemaKey" + ], + "parameters": { + "customerId": { + "description": "Immutable ID of the G Suite account", + "location": "path", + "required": true, + "type": "string" + }, + "schemaKey": { + "description": "Name or immutable ID of the schema", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "customer/{customerId}/schemas/{schemaKey}", + "scopes": [ + "https://www.googleapis.com/auth/admin.directory.userschema" + ] + }, + "get": { + "description": "Retrieve schema", + "httpMethod": "GET", + "id": "directory.schemas.get", + "parameterOrder": [ + "customerId", + "schemaKey" + ], + "parameters": { + "customerId": { + "description": "Immutable ID of the G Suite account", + "location": "path", + "required": true, + "type": "string" + }, + "schemaKey": { + "description": "Name or immutable ID of the schema", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "customer/{customerId}/schemas/{schemaKey}", + "response": { + "$ref": "Schema" + }, + "scopes": [ + "https://www.googleapis.com/auth/admin.directory.userschema", + "https://www.googleapis.com/auth/admin.directory.userschema.readonly" + ] + }, + "insert": { + "description": "Create schema.", + "httpMethod": "POST", + "id": "directory.schemas.insert", + "parameterOrder": [ + "customerId" + ], + "parameters": { + "customerId": { + "description": "Immutable ID of the G Suite account", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "customer/{customerId}/schemas", + "request": { + "$ref": "Schema" + }, + "response": { + "$ref": "Schema" + }, + "scopes": [ + "https://www.googleapis.com/auth/admin.directory.userschema" + ] + }, + "list": { + "description": "Retrieve all schemas for a customer", + "httpMethod": "GET", + "id": "directory.schemas.list", + "parameterOrder": [ + "customerId" + ], + "parameters": { + "customerId": { + "description": "Immutable ID of the G Suite account", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "customer/{customerId}/schemas", + "response": { + "$ref": "Schemas" + }, + "scopes": [ + "https://www.googleapis.com/auth/admin.directory.userschema", + "https://www.googleapis.com/auth/admin.directory.userschema.readonly" + ] + }, + "patch": { + "description": "Update schema. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "directory.schemas.patch", + "parameterOrder": [ + "customerId", + "schemaKey" + ], + "parameters": { + "customerId": { + "description": "Immutable ID of the G Suite account", + "location": "path", + "required": true, + "type": "string" + }, + "schemaKey": { + "description": "Name or immutable ID of the schema.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "customer/{customerId}/schemas/{schemaKey}", + "request": { + "$ref": "Schema" + }, + "response": { + "$ref": "Schema" + }, + "scopes": [ + "https://www.googleapis.com/auth/admin.directory.userschema" + ] + }, + "update": { + "description": "Update schema", + "httpMethod": "PUT", + "id": "directory.schemas.update", + "parameterOrder": [ + "customerId", + "schemaKey" + ], + "parameters": { + "customerId": { + "description": "Immutable ID of the G Suite account", + "location": "path", + "required": true, + "type": "string" + }, + "schemaKey": { + "description": "Name or immutable ID of the schema.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "customer/{customerId}/schemas/{schemaKey}", + "request": { + "$ref": "Schema" + }, + "response": { + "$ref": "Schema" + }, + "scopes": [ + "https://www.googleapis.com/auth/admin.directory.userschema" + ] + } + } + }, + "tokens": { + "methods": { + "delete": { + "description": "Delete all access tokens issued by a user for an application.", + "httpMethod": "DELETE", + "id": "directory.tokens.delete", + "parameterOrder": [ + "userKey", + "clientId" + ], + "parameters": { + "clientId": { + "description": "The Client ID of the application the token is issued to.", + "location": "path", + "required": true, + "type": "string" + }, + "userKey": { + "description": "Identifies the user in the API request. The value can be the user's primary email address, alias email address, or unique user ID.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "users/{userKey}/tokens/{clientId}", + "scopes": [ + "https://www.googleapis.com/auth/admin.directory.user.security" + ] + }, + "get": { + "description": "Get information about an access token issued by a user.", + "httpMethod": "GET", + "id": "directory.tokens.get", + "parameterOrder": [ + "userKey", + "clientId" + ], + "parameters": { + "clientId": { + "description": "The Client ID of the application the token is issued to.", + "location": "path", + "required": true, + "type": "string" + }, + "userKey": { + "description": "Identifies the user in the API request. The value can be the user's primary email address, alias email address, or unique user ID.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "users/{userKey}/tokens/{clientId}", + "response": { + "$ref": "Token" + }, + "scopes": [ + "https://www.googleapis.com/auth/admin.directory.user.security" + ] + }, + "list": { + "description": "Returns the set of tokens specified user has issued to 3rd party applications.", + "httpMethod": "GET", + "id": "directory.tokens.list", + "parameterOrder": [ + "userKey" + ], + "parameters": { + "userKey": { + "description": "Identifies the user in the API request. The value can be the user's primary email address, alias email address, or unique user ID.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "users/{userKey}/tokens", + "response": { + "$ref": "Tokens" + }, + "scopes": [ + "https://www.googleapis.com/auth/admin.directory.user.security" + ] + } + } }, "users": { - "type": "array", - "description": "List of user objects.", - "items": { - "$ref": "User" - } + "methods": { + "delete": { + "description": "Delete user", + "httpMethod": "DELETE", + "id": "directory.users.delete", + "parameterOrder": [ + "userKey" + ], + "parameters": { + "userKey": { + "description": "Email or immutable ID of the user", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "users/{userKey}", + "scopes": [ + "https://www.googleapis.com/auth/admin.directory.user" + ] + }, + "get": { + "description": "retrieve user", + "httpMethod": "GET", + "id": "directory.users.get", + "parameterOrder": [ + "userKey" + ], + "parameters": { + "customFieldMask": { + "description": "Comma-separated list of schema names. All fields from these schemas are fetched. This should only be set when projection=custom.", + "location": "query", + "type": "string" + }, + "projection": { + "default": "basic", + "description": "What subset of fields to fetch for this user.", + "enum": [ + "basic", + "custom", + "full" + ], + "enumDescriptions": [ + "Do not include any custom fields for the user.", + "Include custom fields from schemas mentioned in customFieldMask.", + "Include all fields associated with this user." + ], + "location": "query", + "type": "string" + }, + "userKey": { + "description": "Email or immutable ID of the user", + "location": "path", + "required": true, + "type": "string" + }, + "viewType": { + "default": "admin_view", + "description": "Whether to fetch the ADMIN_VIEW or DOMAIN_PUBLIC view of the user.", + "enum": [ + "admin_view", + "domain_public" + ], + "enumDescriptions": [ + "Fetches the ADMIN_VIEW of the user.", + "Fetches the DOMAIN_PUBLIC view of the user." + ], + "location": "query", + "type": "string" + } + }, + "path": "users/{userKey}", + "response": { + "$ref": "User" + }, + "scopes": [ + "https://www.googleapis.com/auth/admin.directory.user", + "https://www.googleapis.com/auth/admin.directory.user.readonly" + ] + }, + "insert": { + "description": "create user.", + "httpMethod": "POST", + "id": "directory.users.insert", + "path": "users", + "request": { + "$ref": "User" + }, + "response": { + "$ref": "User" + }, + "scopes": [ + "https://www.googleapis.com/auth/admin.directory.user" + ] + }, + "list": { + "description": "Retrieve either deleted users or all users in a domain (paginated)", + "httpMethod": "GET", + "id": "directory.users.list", + "parameters": { + "customFieldMask": { + "description": "Comma-separated list of schema names. All fields from these schemas are fetched. This should only be set when projection=custom.", + "location": "query", + "type": "string" + }, + "customer": { + "description": "Immutable ID of the G Suite account. In case of multi-domain, to fetch all users for a customer, fill this field instead of domain.", + "location": "query", + "type": "string" + }, + "domain": { + "description": "Name of the domain. Fill this field to get users from only this domain. To return all users in a multi-domain fill customer field instead.", + "location": "query", + "type": "string" + }, + "event": { + "description": "Event on which subscription is intended (if subscribing)", + "enum": [ + "add", + "delete", + "makeAdmin", + "undelete", + "update" + ], + "enumDescriptions": [ + "User Created Event", + "User Deleted Event", + "User Admin Status Change Event", + "User Undeleted Event", + "User Updated Event" + ], + "location": "query", + "type": "string" + }, + "maxResults": { + "description": "Maximum number of results to return. Default is 100. Max allowed is 500", + "format": "int32", + "location": "query", + "maximum": "500", + "minimum": "1", + "type": "integer" + }, + "orderBy": { + "description": "Column to use for sorting results", + "enum": [ + "email", + "familyName", + "givenName" + ], + "enumDescriptions": [ + "Primary email of the user.", + "User's family name.", + "User's given name." + ], + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Token to specify next page in the list", + "location": "query", + "type": "string" + }, + "projection": { + "default": "basic", + "description": "What subset of fields to fetch for this user.", + "enum": [ + "basic", + "custom", + "full" + ], + "enumDescriptions": [ + "Do not include any custom fields for the user.", + "Include custom fields from schemas mentioned in customFieldMask.", + "Include all fields associated with this user." + ], + "location": "query", + "type": "string" + }, + "query": { + "description": "Query string search. Should be of the form \"\". Complete documentation is at https://developers.google.com/admin-sdk/directory/v1/guides/search-users", + "location": "query", + "type": "string" + }, + "showDeleted": { + "description": "If set to true retrieves the list of deleted users. Default is false", + "location": "query", + "type": "string" + }, + "sortOrder": { + "description": "Whether to return results in ascending or descending order.", + "enum": [ + "ASCENDING", + "DESCENDING" + ], + "enumDescriptions": [ + "Ascending order.", + "Descending order." + ], + "location": "query", + "type": "string" + }, + "viewType": { + "default": "admin_view", + "description": "Whether to fetch the ADMIN_VIEW or DOMAIN_PUBLIC view of the user.", + "enum": [ + "admin_view", + "domain_public" + ], + "enumDescriptions": [ + "Fetches the ADMIN_VIEW of the user.", + "Fetches the DOMAIN_PUBLIC view of the user." + ], + "location": "query", + "type": "string" + } + }, + "path": "users", + "response": { + "$ref": "Users" + }, + "scopes": [ + "https://www.googleapis.com/auth/admin.directory.user", + "https://www.googleapis.com/auth/admin.directory.user.readonly" + ], + "supportsSubscription": true + }, + "makeAdmin": { + "description": "change admin status of a user", + "httpMethod": "POST", + "id": "directory.users.makeAdmin", + "parameterOrder": [ + "userKey" + ], + "parameters": { + "userKey": { + "description": "Email or immutable ID of the user as admin", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "users/{userKey}/makeAdmin", + "request": { + "$ref": "UserMakeAdmin" + }, + "scopes": [ + "https://www.googleapis.com/auth/admin.directory.user" + ] + }, + "patch": { + "description": "update user. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "directory.users.patch", + "parameterOrder": [ + "userKey" + ], + "parameters": { + "userKey": { + "description": "Email or immutable ID of the user. If ID, it should match with id of user object", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "users/{userKey}", + "request": { + "$ref": "User" + }, + "response": { + "$ref": "User" + }, + "scopes": [ + "https://www.googleapis.com/auth/admin.directory.user" + ] + }, + "undelete": { + "description": "Undelete a deleted user", + "httpMethod": "POST", + "id": "directory.users.undelete", + "parameterOrder": [ + "userKey" + ], + "parameters": { + "userKey": { + "description": "The immutable id of the user", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "users/{userKey}/undelete", + "request": { + "$ref": "UserUndelete" + }, + "scopes": [ + "https://www.googleapis.com/auth/admin.directory.user" + ] + }, + "update": { + "description": "update user", + "httpMethod": "PUT", + "id": "directory.users.update", + "parameterOrder": [ + "userKey" + ], + "parameters": { + "userKey": { + "description": "Email or immutable ID of the user. If ID, it should match with id of user object", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "users/{userKey}", + "request": { + "$ref": "User" + }, + "response": { + "$ref": "User" + }, + "scopes": [ + "https://www.googleapis.com/auth/admin.directory.user" + ] + }, + "watch": { + "description": "Watch for changes in users list", + "httpMethod": "POST", + "id": "directory.users.watch", + "parameters": { + "customFieldMask": { + "description": "Comma-separated list of schema names. All fields from these schemas are fetched. This should only be set when projection=custom.", + "location": "query", + "type": "string" + }, + "customer": { + "description": "Immutable ID of the G Suite account. In case of multi-domain, to fetch all users for a customer, fill this field instead of domain.", + "location": "query", + "type": "string" + }, + "domain": { + "description": "Name of the domain. Fill this field to get users from only this domain. To return all users in a multi-domain fill customer field instead.", + "location": "query", + "type": "string" + }, + "event": { + "description": "Event on which subscription is intended (if subscribing)", + "enum": [ + "add", + "delete", + "makeAdmin", + "undelete", + "update" + ], + "enumDescriptions": [ + "User Created Event", + "User Deleted Event", + "User Admin Status Change Event", + "User Undeleted Event", + "User Updated Event" + ], + "location": "query", + "type": "string" + }, + "maxResults": { + "description": "Maximum number of results to return. Default is 100. Max allowed is 500", + "format": "int32", + "location": "query", + "maximum": "500", + "minimum": "1", + "type": "integer" + }, + "orderBy": { + "description": "Column to use for sorting results", + "enum": [ + "email", + "familyName", + "givenName" + ], + "enumDescriptions": [ + "Primary email of the user.", + "User's family name.", + "User's given name." + ], + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Token to specify next page in the list", + "location": "query", + "type": "string" + }, + "projection": { + "default": "basic", + "description": "What subset of fields to fetch for this user.", + "enum": [ + "basic", + "custom", + "full" + ], + "enumDescriptions": [ + "Do not include any custom fields for the user.", + "Include custom fields from schemas mentioned in customFieldMask.", + "Include all fields associated with this user." + ], + "location": "query", + "type": "string" + }, + "query": { + "description": "Query string search. Should be of the form \"\". Complete documentation is at https://developers.google.com/admin-sdk/directory/v1/guides/search-users", + "location": "query", + "type": "string" + }, + "showDeleted": { + "description": "If set to true retrieves the list of deleted users. Default is false", + "location": "query", + "type": "string" + }, + "sortOrder": { + "description": "Whether to return results in ascending or descending order.", + "enum": [ + "ASCENDING", + "DESCENDING" + ], + "enumDescriptions": [ + "Ascending order.", + "Descending order." + ], + "location": "query", + "type": "string" + }, + "viewType": { + "default": "admin_view", + "description": "Whether to fetch the ADMIN_VIEW or DOMAIN_PUBLIC view of the user.", + "enum": [ + "admin_view", + "domain_public" + ], + "enumDescriptions": [ + "Fetches the ADMIN_VIEW of the user.", + "Fetches the DOMAIN_PUBLIC view of the user." + ], + "location": "query", + "type": "string" + } + }, + "path": "users/watch", + "request": { + "$ref": "Channel", + "parameterName": "resource" + }, + "response": { + "$ref": "Channel" + }, + "scopes": [ + "https://www.googleapis.com/auth/admin.directory.user", + "https://www.googleapis.com/auth/admin.directory.user.readonly" + ], + "supportsSubscription": true + } + }, + "resources": { + "aliases": { + "methods": { + "delete": { + "description": "Remove a alias for the user", + "httpMethod": "DELETE", + "id": "directory.users.aliases.delete", + "parameterOrder": [ + "userKey", + "alias" + ], + "parameters": { + "alias": { + "description": "The alias to be removed", + "location": "path", + "required": true, + "type": "string" + }, + "userKey": { + "description": "Email or immutable ID of the user", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "users/{userKey}/aliases/{alias}", + "scopes": [ + "https://www.googleapis.com/auth/admin.directory.user", + "https://www.googleapis.com/auth/admin.directory.user.alias" + ] + }, + "insert": { + "description": "Add a alias for the user", + "httpMethod": "POST", + "id": "directory.users.aliases.insert", + "parameterOrder": [ + "userKey" + ], + "parameters": { + "userKey": { + "description": "Email or immutable ID of the user", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "users/{userKey}/aliases", + "request": { + "$ref": "Alias" + }, + "response": { + "$ref": "Alias" + }, + "scopes": [ + "https://www.googleapis.com/auth/admin.directory.user", + "https://www.googleapis.com/auth/admin.directory.user.alias" + ] + }, + "list": { + "description": "List all aliases for a user", + "httpMethod": "GET", + "id": "directory.users.aliases.list", + "parameterOrder": [ + "userKey" + ], + "parameters": { + "event": { + "description": "Event on which subscription is intended (if subscribing)", + "enum": [ + "add", + "delete" + ], + "enumDescriptions": [ + "Alias Created Event", + "Alias Deleted Event" + ], + "location": "query", + "type": "string" + }, + "userKey": { + "description": "Email or immutable ID of the user", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "users/{userKey}/aliases", + "response": { + "$ref": "Aliases" + }, + "scopes": [ + "https://www.googleapis.com/auth/admin.directory.user", + "https://www.googleapis.com/auth/admin.directory.user.alias", + "https://www.googleapis.com/auth/admin.directory.user.alias.readonly", + "https://www.googleapis.com/auth/admin.directory.user.readonly" + ], + "supportsSubscription": true + }, + "watch": { + "description": "Watch for changes in user aliases list", + "httpMethod": "POST", + "id": "directory.users.aliases.watch", + "parameterOrder": [ + "userKey" + ], + "parameters": { + "event": { + "description": "Event on which subscription is intended (if subscribing)", + "enum": [ + "add", + "delete" + ], + "enumDescriptions": [ + "Alias Created Event", + "Alias Deleted Event" + ], + "location": "query", + "type": "string" + }, + "userKey": { + "description": "Email or immutable ID of the user", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "users/{userKey}/aliases/watch", + "request": { + "$ref": "Channel", + "parameterName": "resource" + }, + "response": { + "$ref": "Channel" + }, + "scopes": [ + "https://www.googleapis.com/auth/admin.directory.user", + "https://www.googleapis.com/auth/admin.directory.user.alias", + "https://www.googleapis.com/auth/admin.directory.user.alias.readonly", + "https://www.googleapis.com/auth/admin.directory.user.readonly" + ], + "supportsSubscription": true + } + } + }, + "photos": { + "methods": { + "delete": { + "description": "Remove photos for the user", + "httpMethod": "DELETE", + "id": "directory.users.photos.delete", + "parameterOrder": [ + "userKey" + ], + "parameters": { + "userKey": { + "description": "Email or immutable ID of the user", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "users/{userKey}/photos/thumbnail", + "scopes": [ + "https://www.googleapis.com/auth/admin.directory.user" + ] + }, + "get": { + "description": "Retrieve photo of a user", + "httpMethod": "GET", + "id": "directory.users.photos.get", + "parameterOrder": [ + "userKey" + ], + "parameters": { + "userKey": { + "description": "Email or immutable ID of the user", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "users/{userKey}/photos/thumbnail", + "response": { + "$ref": "UserPhoto" + }, + "scopes": [ + "https://www.googleapis.com/auth/admin.directory.user", + "https://www.googleapis.com/auth/admin.directory.user.readonly" + ] + }, + "patch": { + "description": "Add a photo for the user. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "directory.users.photos.patch", + "parameterOrder": [ + "userKey" + ], + "parameters": { + "userKey": { + "description": "Email or immutable ID of the user", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "users/{userKey}/photos/thumbnail", + "request": { + "$ref": "UserPhoto" + }, + "response": { + "$ref": "UserPhoto" + }, + "scopes": [ + "https://www.googleapis.com/auth/admin.directory.user" + ] + }, + "update": { + "description": "Add a photo for the user", + "httpMethod": "PUT", + "id": "directory.users.photos.update", + "parameterOrder": [ + "userKey" + ], + "parameters": { + "userKey": { + "description": "Email or immutable ID of the user", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "users/{userKey}/photos/thumbnail", + "request": { + "$ref": "UserPhoto" + }, + "response": { + "$ref": "UserPhoto" + }, + "scopes": [ + "https://www.googleapis.com/auth/admin.directory.user" + ] + } + } + } + } + }, + "verificationCodes": { + "methods": { + "generate": { + "description": "Generate new backup verification codes for the user.", + "httpMethod": "POST", + "id": "directory.verificationCodes.generate", + "parameterOrder": [ + "userKey" + ], + "parameters": { + "userKey": { + "description": "Email or immutable ID of the user", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "users/{userKey}/verificationCodes/generate", + "scopes": [ + "https://www.googleapis.com/auth/admin.directory.user.security" + ] + }, + "invalidate": { + "description": "Invalidate the current backup verification codes for the user.", + "httpMethod": "POST", + "id": "directory.verificationCodes.invalidate", + "parameterOrder": [ + "userKey" + ], + "parameters": { + "userKey": { + "description": "Email or immutable ID of the user", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "users/{userKey}/verificationCodes/invalidate", + "scopes": [ + "https://www.googleapis.com/auth/admin.directory.user.security" + ] + }, + "list": { + "description": "Returns the current set of valid backup verification codes for the specified user.", + "httpMethod": "GET", + "id": "directory.verificationCodes.list", + "parameterOrder": [ + "userKey" + ], + "parameters": { + "userKey": { + "description": "Identifies the user in the API request. The value can be the user's primary email address, alias email address, or unique user ID.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "users/{userKey}/verificationCodes", + "response": { + "$ref": "VerificationCodes" + }, + "scopes": [ + "https://www.googleapis.com/auth/admin.directory.user.security" + ] + } + } } - } - }, - "VerificationCode": { - "id": "VerificationCode", - "type": "object", - "description": "JSON template for verification codes in Directory API.", - "properties": { - "etag": { - "type": "string", - "description": "ETag of the resource." - }, - "kind": { - "type": "string", - "description": "The type of the resource. This is always admin#directory#verificationCode.", - "default": "admin#directory#verificationCode" - }, - "userId": { - "type": "string", - "description": "The obfuscated unique ID of the user." - }, - "verificationCode": { - "type": "string", - "description": "A current verification code for the user. Invalidated or used verification codes are not returned as part of the result." - } - } - }, - "VerificationCodes": { - "id": "VerificationCodes", - "type": "object", - "description": "JSON response template for List verification codes operation in Directory API.", - "properties": { - "etag": { - "type": "string", - "description": "ETag of the resource." - }, - "items": { - "type": "array", - "description": "A list of verification code resources.", - "items": { - "$ref": "VerificationCode" - } - }, - "kind": { - "type": "string", - "description": "The type of the resource. This is always admin#directory#verificationCodesList.", - "default": "admin#directory#verificationCodesList" - } - } - } - }, - "resources": { - "asps": { - "methods": { - "delete": { - "id": "directory.asps.delete", - "path": "users/{userKey}/asps/{codeId}", - "httpMethod": "DELETE", - "description": "Delete an ASP issued by a user.", - "parameters": { - "codeId": { - "type": "integer", - "description": "The unique ID of the ASP to be deleted.", - "required": true, - "format": "int32", - "location": "path" - }, - "userKey": { - "type": "string", - "description": "Identifies the user in the API request. The value can be the user's primary email address, alias email address, or unique user ID.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "userKey", - "codeId" - ], - "scopes": [ - "https://www.googleapis.com/auth/admin.directory.user.security" - ] - }, - "get": { - "id": "directory.asps.get", - "path": "users/{userKey}/asps/{codeId}", - "httpMethod": "GET", - "description": "Get information about an ASP issued by a user.", - "parameters": { - "codeId": { - "type": "integer", - "description": "The unique ID of the ASP.", - "required": true, - "format": "int32", - "location": "path" - }, - "userKey": { - "type": "string", - "description": "Identifies the user in the API request. The value can be the user's primary email address, alias email address, or unique user ID.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "userKey", - "codeId" - ], - "response": { - "$ref": "Asp" - }, - "scopes": [ - "https://www.googleapis.com/auth/admin.directory.user.security" - ] - }, - "list": { - "id": "directory.asps.list", - "path": "users/{userKey}/asps", - "httpMethod": "GET", - "description": "List the ASPs issued by a user.", - "parameters": { - "userKey": { - "type": "string", - "description": "Identifies the user in the API request. The value can be the user's primary email address, alias email address, or unique user ID.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "userKey" - ], - "response": { - "$ref": "Asps" - }, - "scopes": [ - "https://www.googleapis.com/auth/admin.directory.user.security" - ] - } - } - }, - "channels": { - "methods": { - "stop": { - "id": "admin.channels.stop", - "path": "/admin/directory_v1/channels/stop", - "httpMethod": "POST", - "description": "Stop watching resources through this channel", - "request": { - "$ref": "Channel", - "parameterName": "resource" - }, - "scopes": [ - "https://www.googleapis.com/auth/admin.directory.user", - "https://www.googleapis.com/auth/admin.directory.user.alias", - "https://www.googleapis.com/auth/admin.directory.user.alias.readonly", - "https://www.googleapis.com/auth/admin.directory.user.readonly" - ] - } - } - }, - "chromeosdevices": { - "methods": { - "action": { - "id": "directory.chromeosdevices.action", - "path": "customer/{customerId}/devices/chromeos/{resourceId}/action", - "httpMethod": "POST", - "description": "Take action on Chrome OS Device", - "parameters": { - "customerId": { - "type": "string", - "description": "Immutable ID of the G Suite account", - "required": true, - "location": "path" - }, - "resourceId": { - "type": "string", - "description": "Immutable ID of Chrome OS Device", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "customerId", - "resourceId" - ], - "request": { - "$ref": "ChromeOsDeviceAction" - }, - "scopes": [ - "https://www.googleapis.com/auth/admin.directory.device.chromeos" - ] - }, - "get": { - "id": "directory.chromeosdevices.get", - "path": "customer/{customerId}/devices/chromeos/{deviceId}", - "httpMethod": "GET", - "description": "Retrieve Chrome OS Device", - "parameters": { - "customerId": { - "type": "string", - "description": "Immutable ID of the G Suite account", - "required": true, - "location": "path" - }, - "deviceId": { - "type": "string", - "description": "Immutable ID of Chrome OS Device", - "required": true, - "location": "path" - }, - "projection": { - "type": "string", - "description": "Restrict information returned to a set of selected fields.", - "enum": [ - "BASIC", - "FULL" - ], - "enumDescriptions": [ - "Includes only the basic metadata fields (e.g., deviceId, serialNumber, status, and user)", - "Includes all metadata fields" - ], - "location": "query" - } - }, - "parameterOrder": [ - "customerId", - "deviceId" - ], - "response": { - "$ref": "ChromeOsDevice" - }, - "scopes": [ - "https://www.googleapis.com/auth/admin.directory.device.chromeos", - "https://www.googleapis.com/auth/admin.directory.device.chromeos.readonly" - ] - }, - "list": { - "id": "directory.chromeosdevices.list", - "path": "customer/{customerId}/devices/chromeos", - "httpMethod": "GET", - "description": "Retrieve all Chrome OS Devices of a customer (paginated)", - "parameters": { - "customerId": { - "type": "string", - "description": "Immutable ID of the G Suite account", - "required": true, - "location": "path" - }, - "maxResults": { - "type": "integer", - "description": "Maximum number of results to return. Default is 100", - "format": "int32", - "minimum": "1", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Column to use for sorting results", - "enum": [ - "annotatedLocation", - "annotatedUser", - "lastSync", - "notes", - "serialNumber", - "status", - "supportEndDate" - ], - "enumDescriptions": [ - "Chromebook location as annotated by the administrator.", - "Chromebook user as annotated by administrator.", - "Chromebook last sync.", - "Chromebook notes as annotated by the administrator.", - "Chromebook Serial Number.", - "Chromebook status.", - "Chromebook support end date." - ], - "location": "query" - }, - "orgUnitPath": { - "type": "string", - "description": "Full path of the organizational unit or its ID", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Token to specify next page in the list", - "location": "query" - }, - "projection": { - "type": "string", - "description": "Restrict information returned to a set of selected fields.", - "enum": [ - "BASIC", - "FULL" - ], - "enumDescriptions": [ - "Includes only the basic metadata fields (e.g., deviceId, serialNumber, status, and user)", - "Includes all metadata fields" - ], - "location": "query" - }, - "query": { - "type": "string", - "description": "Search string in the format given at http://support.google.com/chromeos/a/bin/answer.py?hl=en&answer=1698333", - "location": "query" - }, - "sortOrder": { - "type": "string", - "description": "Whether to return results in ascending or descending order. Only of use when orderBy is also used", - "enum": [ - "ASCENDING", - "DESCENDING" - ], - "enumDescriptions": [ - "Ascending order.", - "Descending order." - ], - "location": "query" - } - }, - "parameterOrder": [ - "customerId" - ], - "response": { - "$ref": "ChromeOsDevices" - }, - "scopes": [ - "https://www.googleapis.com/auth/admin.directory.device.chromeos", - "https://www.googleapis.com/auth/admin.directory.device.chromeos.readonly" - ] - }, - "moveDevicesToOu": { - "id": "directory.chromeosdevices.moveDevicesToOu", - "path": "customer/{customerId}/devices/chromeos/moveDevicesToOu", - "httpMethod": "POST", - "description": "Move or insert multiple Chrome OS Devices to organizational unit", - "parameters": { - "customerId": { - "type": "string", - "description": "Immutable ID of the G Suite account", - "required": true, - "location": "path" - }, - "orgUnitPath": { - "type": "string", - "description": "Full path of the target organizational unit or its ID", - "required": true, - "location": "query" - } - }, - "parameterOrder": [ - "customerId", - "orgUnitPath" - ], - "request": { - "$ref": "ChromeOsMoveDevicesToOu" - }, - "scopes": [ - "https://www.googleapis.com/auth/admin.directory.device.chromeos" - ] - }, - "patch": { - "id": "directory.chromeosdevices.patch", - "path": "customer/{customerId}/devices/chromeos/{deviceId}", - "httpMethod": "PATCH", - "description": "Update Chrome OS Device. This method supports patch semantics.", - "parameters": { - "customerId": { - "type": "string", - "description": "Immutable ID of the G Suite account", - "required": true, - "location": "path" - }, - "deviceId": { - "type": "string", - "description": "Immutable ID of Chrome OS Device", - "required": true, - "location": "path" - }, - "projection": { - "type": "string", - "description": "Restrict information returned to a set of selected fields.", - "enum": [ - "BASIC", - "FULL" - ], - "enumDescriptions": [ - "Includes only the basic metadata fields (e.g., deviceId, serialNumber, status, and user)", - "Includes all metadata fields" - ], - "location": "query" - } - }, - "parameterOrder": [ - "customerId", - "deviceId" - ], - "request": { - "$ref": "ChromeOsDevice" - }, - "response": { - "$ref": "ChromeOsDevice" - }, - "scopes": [ - "https://www.googleapis.com/auth/admin.directory.device.chromeos" - ] - }, - "update": { - "id": "directory.chromeosdevices.update", - "path": "customer/{customerId}/devices/chromeos/{deviceId}", - "httpMethod": "PUT", - "description": "Update Chrome OS Device", - "parameters": { - "customerId": { - "type": "string", - "description": "Immutable ID of the G Suite account", - "required": true, - "location": "path" - }, - "deviceId": { - "type": "string", - "description": "Immutable ID of Chrome OS Device", - "required": true, - "location": "path" - }, - "projection": { - "type": "string", - "description": "Restrict information returned to a set of selected fields.", - "enum": [ - "BASIC", - "FULL" - ], - "enumDescriptions": [ - "Includes only the basic metadata fields (e.g., deviceId, serialNumber, status, and user)", - "Includes all metadata fields" - ], - "location": "query" - } - }, - "parameterOrder": [ - "customerId", - "deviceId" - ], - "request": { - "$ref": "ChromeOsDevice" - }, - "response": { - "$ref": "ChromeOsDevice" - }, - "scopes": [ - "https://www.googleapis.com/auth/admin.directory.device.chromeos" - ] - } - } - }, - "customers": { - "methods": { - "get": { - "id": "directory.customers.get", - "path": "customers/{customerKey}", - "httpMethod": "GET", - "description": "Retrieves a customer.", - "parameters": { - "customerKey": { - "type": "string", - "description": "Id of the customer to be retrieved", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "customerKey" - ], - "response": { - "$ref": "Customer" - }, - "scopes": [ - "https://www.googleapis.com/auth/admin.directory.customer", - "https://www.googleapis.com/auth/admin.directory.customer.readonly" - ] - }, - "patch": { - "id": "directory.customers.patch", - "path": "customers/{customerKey}", - "httpMethod": "PATCH", - "description": "Updates a customer. This method supports patch semantics.", - "parameters": { - "customerKey": { - "type": "string", - "description": "Id of the customer to be updated", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "customerKey" - ], - "request": { - "$ref": "Customer" - }, - "response": { - "$ref": "Customer" - }, - "scopes": [ - "https://www.googleapis.com/auth/admin.directory.customer" - ] - }, - "update": { - "id": "directory.customers.update", - "path": "customers/{customerKey}", - "httpMethod": "PUT", - "description": "Updates a customer.", - "parameters": { - "customerKey": { - "type": "string", - "description": "Id of the customer to be updated", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "customerKey" - ], - "request": { - "$ref": "Customer" - }, - "response": { - "$ref": "Customer" - }, - "scopes": [ - "https://www.googleapis.com/auth/admin.directory.customer" - ] - } - } - }, - "domainAliases": { - "methods": { - "delete": { - "id": "directory.domainAliases.delete", - "path": "customer/{customer}/domainaliases/{domainAliasName}", - "httpMethod": "DELETE", - "description": "Deletes a Domain Alias of the customer.", - "parameters": { - "customer": { - "type": "string", - "description": "Immutable ID of the G Suite account.", - "required": true, - "location": "path" - }, - "domainAliasName": { - "type": "string", - "description": "Name of domain alias to be retrieved.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "customer", - "domainAliasName" - ], - "scopes": [ - "https://www.googleapis.com/auth/admin.directory.domain" - ] - }, - "get": { - "id": "directory.domainAliases.get", - "path": "customer/{customer}/domainaliases/{domainAliasName}", - "httpMethod": "GET", - "description": "Retrieves a domain alias of the customer.", - "parameters": { - "customer": { - "type": "string", - "description": "Immutable ID of the G Suite account.", - "required": true, - "location": "path" - }, - "domainAliasName": { - "type": "string", - "description": "Name of domain alias to be retrieved.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "customer", - "domainAliasName" - ], - "response": { - "$ref": "DomainAlias" - }, - "scopes": [ - "https://www.googleapis.com/auth/admin.directory.domain", - "https://www.googleapis.com/auth/admin.directory.domain.readonly" - ] - }, - "insert": { - "id": "directory.domainAliases.insert", - "path": "customer/{customer}/domainaliases", - "httpMethod": "POST", - "description": "Inserts a Domain alias of the customer.", - "parameters": { - "customer": { - "type": "string", - "description": "Immutable ID of the G Suite account.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "customer" - ], - "request": { - "$ref": "DomainAlias" - }, - "response": { - "$ref": "DomainAlias" - }, - "scopes": [ - "https://www.googleapis.com/auth/admin.directory.domain" - ] - }, - "list": { - "id": "directory.domainAliases.list", - "path": "customer/{customer}/domainaliases", - "httpMethod": "GET", - "description": "Lists the domain aliases of the customer.", - "parameters": { - "customer": { - "type": "string", - "description": "Immutable ID of the G Suite account.", - "required": true, - "location": "path" - }, - "parentDomainName": { - "type": "string", - "description": "Name of the parent domain for which domain aliases are to be fetched.", - "location": "query" - } - }, - "parameterOrder": [ - "customer" - ], - "response": { - "$ref": "DomainAliases" - }, - "scopes": [ - "https://www.googleapis.com/auth/admin.directory.domain", - "https://www.googleapis.com/auth/admin.directory.domain.readonly" - ] - } - } - }, - "domains": { - "methods": { - "delete": { - "id": "directory.domains.delete", - "path": "customer/{customer}/domains/{domainName}", - "httpMethod": "DELETE", - "description": "Deletes a domain of the customer.", - "parameters": { - "customer": { - "type": "string", - "description": "Immutable ID of the G Suite account.", - "required": true, - "location": "path" - }, - "domainName": { - "type": "string", - "description": "Name of domain to be deleted", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "customer", - "domainName" - ], - "scopes": [ - "https://www.googleapis.com/auth/admin.directory.domain" - ] - }, - "get": { - "id": "directory.domains.get", - "path": "customer/{customer}/domains/{domainName}", - "httpMethod": "GET", - "description": "Retrieves a domain of the customer.", - "parameters": { - "customer": { - "type": "string", - "description": "Immutable ID of the G Suite account.", - "required": true, - "location": "path" - }, - "domainName": { - "type": "string", - "description": "Name of domain to be retrieved", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "customer", - "domainName" - ], - "response": { - "$ref": "Domains" - }, - "scopes": [ - "https://www.googleapis.com/auth/admin.directory.domain", - "https://www.googleapis.com/auth/admin.directory.domain.readonly" - ] - }, - "insert": { - "id": "directory.domains.insert", - "path": "customer/{customer}/domains", - "httpMethod": "POST", - "description": "Inserts a domain of the customer.", - "parameters": { - "customer": { - "type": "string", - "description": "Immutable ID of the G Suite account.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "customer" - ], - "request": { - "$ref": "Domains" - }, - "response": { - "$ref": "Domains" - }, - "scopes": [ - "https://www.googleapis.com/auth/admin.directory.domain" - ] - }, - "list": { - "id": "directory.domains.list", - "path": "customer/{customer}/domains", - "httpMethod": "GET", - "description": "Lists the domains of the customer.", - "parameters": { - "customer": { - "type": "string", - "description": "Immutable ID of the G Suite account.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "customer" - ], - "response": { - "$ref": "Domains2" - }, - "scopes": [ - "https://www.googleapis.com/auth/admin.directory.domain", - "https://www.googleapis.com/auth/admin.directory.domain.readonly" - ] - } - } - }, - "groups": { - "methods": { - "delete": { - "id": "directory.groups.delete", - "path": "groups/{groupKey}", - "httpMethod": "DELETE", - "description": "Delete Group", - "parameters": { - "groupKey": { - "type": "string", - "description": "Email or immutable ID of the group", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "groupKey" - ], - "scopes": [ - "https://www.googleapis.com/auth/admin.directory.group" - ] - }, - "get": { - "id": "directory.groups.get", - "path": "groups/{groupKey}", - "httpMethod": "GET", - "description": "Retrieve Group", - "parameters": { - "groupKey": { - "type": "string", - "description": "Email or immutable ID of the group", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "groupKey" - ], - "response": { - "$ref": "Group" - }, - "scopes": [ - "https://www.googleapis.com/auth/admin.directory.group", - "https://www.googleapis.com/auth/admin.directory.group.readonly" - ] - }, - "insert": { - "id": "directory.groups.insert", - "path": "groups", - "httpMethod": "POST", - "description": "Create Group", - "request": { - "$ref": "Group" - }, - "response": { - "$ref": "Group" - }, - "scopes": [ - "https://www.googleapis.com/auth/admin.directory.group" - ] - }, - "list": { - "id": "directory.groups.list", - "path": "groups", - "httpMethod": "GET", - "description": "Retrieve all groups in a domain (paginated)", - "parameters": { - "customer": { - "type": "string", - "description": "Immutable ID of the G Suite account. In case of multi-domain, to fetch all groups for a customer, fill this field instead of domain.", - "location": "query" - }, - "domain": { - "type": "string", - "description": "Name of the domain. Fill this field to get groups from only this domain. To return all groups in a multi-domain fill customer field instead.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "Maximum number of results to return. Default is 200", - "format": "int32", - "minimum": "1", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Token to specify next page in the list", - "location": "query" - }, - "userKey": { - "type": "string", - "description": "Email or immutable ID of the user if only those groups are to be listed, the given user is a member of. If ID, it should match with id of user object", - "location": "query" - } - }, - "response": { - "$ref": "Groups" - }, - "scopes": [ - "https://www.googleapis.com/auth/admin.directory.group", - "https://www.googleapis.com/auth/admin.directory.group.readonly" - ] - }, - "patch": { - "id": "directory.groups.patch", - "path": "groups/{groupKey}", - "httpMethod": "PATCH", - "description": "Update Group. This method supports patch semantics.", - "parameters": { - "groupKey": { - "type": "string", - "description": "Email or immutable ID of the group. If ID, it should match with id of group object", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "groupKey" - ], - "request": { - "$ref": "Group" - }, - "response": { - "$ref": "Group" - }, - "scopes": [ - "https://www.googleapis.com/auth/admin.directory.group" - ] - }, - "update": { - "id": "directory.groups.update", - "path": "groups/{groupKey}", - "httpMethod": "PUT", - "description": "Update Group", - "parameters": { - "groupKey": { - "type": "string", - "description": "Email or immutable ID of the group. If ID, it should match with id of group object", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "groupKey" - ], - "request": { - "$ref": "Group" - }, - "response": { - "$ref": "Group" - }, - "scopes": [ - "https://www.googleapis.com/auth/admin.directory.group" - ] - } - }, - "resources": { - "aliases": { - "methods": { - "delete": { - "id": "directory.groups.aliases.delete", - "path": "groups/{groupKey}/aliases/{alias}", - "httpMethod": "DELETE", - "description": "Remove a alias for the group", - "parameters": { - "alias": { - "type": "string", - "description": "The alias to be removed", - "required": true, - "location": "path" - }, - "groupKey": { - "type": "string", - "description": "Email or immutable ID of the group", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "groupKey", - "alias" - ], - "scopes": [ - "https://www.googleapis.com/auth/admin.directory.group" - ] - }, - "insert": { - "id": "directory.groups.aliases.insert", - "path": "groups/{groupKey}/aliases", - "httpMethod": "POST", - "description": "Add a alias for the group", - "parameters": { - "groupKey": { - "type": "string", - "description": "Email or immutable ID of the group", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "groupKey" - ], - "request": { - "$ref": "Alias" - }, - "response": { - "$ref": "Alias" - }, - "scopes": [ - "https://www.googleapis.com/auth/admin.directory.group" - ] - }, - "list": { - "id": "directory.groups.aliases.list", - "path": "groups/{groupKey}/aliases", - "httpMethod": "GET", - "description": "List all aliases for a group", - "parameters": { - "groupKey": { - "type": "string", - "description": "Email or immutable ID of the group", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "groupKey" - ], - "response": { - "$ref": "Aliases" - }, - "scopes": [ - "https://www.googleapis.com/auth/admin.directory.group", - "https://www.googleapis.com/auth/admin.directory.group.readonly" - ], - "supportsSubscription": true - } - } - } - } - }, - "members": { - "methods": { - "delete": { - "id": "directory.members.delete", - "path": "groups/{groupKey}/members/{memberKey}", - "httpMethod": "DELETE", - "description": "Remove membership.", - "parameters": { - "groupKey": { - "type": "string", - "description": "Email or immutable ID of the group", - "required": true, - "location": "path" - }, - "memberKey": { - "type": "string", - "description": "Email or immutable ID of the member", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "groupKey", - "memberKey" - ], - "scopes": [ - "https://www.googleapis.com/auth/admin.directory.group", - "https://www.googleapis.com/auth/admin.directory.group.member" - ] - }, - "get": { - "id": "directory.members.get", - "path": "groups/{groupKey}/members/{memberKey}", - "httpMethod": "GET", - "description": "Retrieve Group Member", - "parameters": { - "groupKey": { - "type": "string", - "description": "Email or immutable ID of the group", - "required": true, - "location": "path" - }, - "memberKey": { - "type": "string", - "description": "Email or immutable ID of the member", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "groupKey", - "memberKey" - ], - "response": { - "$ref": "Member" - }, - "scopes": [ - "https://www.googleapis.com/auth/admin.directory.group", - "https://www.googleapis.com/auth/admin.directory.group.member", - "https://www.googleapis.com/auth/admin.directory.group.member.readonly", - "https://www.googleapis.com/auth/admin.directory.group.readonly" - ] - }, - "hasMember": { - "id": "directory.members.hasMember", - "path": "groups/{groupKey}/hasMember/{memberKey}", - "httpMethod": "GET", - "description": "Checks Membership of an user within a Group", - "parameters": { - "groupKey": { - "type": "string", - "description": "Email or immutable Id of the group", - "required": true, - "location": "path" - }, - "memberKey": { - "type": "string", - "description": "Email or immutable Id of the member", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "groupKey", - "memberKey" - ], - "response": { - "$ref": "MembersHasMember" - }, - "scopes": [ - "https://www.googleapis.com/auth/admin.directory.group", - "https://www.googleapis.com/auth/admin.directory.group.member", - "https://www.googleapis.com/auth/admin.directory.group.member.readonly", - "https://www.googleapis.com/auth/admin.directory.group.readonly" - ] - }, - "insert": { - "id": "directory.members.insert", - "path": "groups/{groupKey}/members", - "httpMethod": "POST", - "description": "Add user to the specified group.", - "parameters": { - "groupKey": { - "type": "string", - "description": "Email or immutable ID of the group", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "groupKey" - ], - "request": { - "$ref": "Member" - }, - "response": { - "$ref": "Member" - }, - "scopes": [ - "https://www.googleapis.com/auth/admin.directory.group", - "https://www.googleapis.com/auth/admin.directory.group.member" - ] - }, - "list": { - "id": "directory.members.list", - "path": "groups/{groupKey}/members", - "httpMethod": "GET", - "description": "Retrieve all members in a group (paginated)", - "parameters": { - "groupKey": { - "type": "string", - "description": "Email or immutable ID of the group", - "required": true, - "location": "path" - }, - "maxResults": { - "type": "integer", - "description": "Maximum number of results to return. Default is 200", - "format": "int32", - "minimum": "1", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Token to specify next page in the list", - "location": "query" - }, - "roles": { - "type": "string", - "description": "Comma separated role values to filter list results on.", - "location": "query" - } - }, - "parameterOrder": [ - "groupKey" - ], - "response": { - "$ref": "Members" - }, - "scopes": [ - "https://www.googleapis.com/auth/admin.directory.group", - "https://www.googleapis.com/auth/admin.directory.group.member", - "https://www.googleapis.com/auth/admin.directory.group.member.readonly", - "https://www.googleapis.com/auth/admin.directory.group.readonly" - ] - }, - "patch": { - "id": "directory.members.patch", - "path": "groups/{groupKey}/members/{memberKey}", - "httpMethod": "PATCH", - "description": "Update membership of a user in the specified group. This method supports patch semantics.", - "parameters": { - "groupKey": { - "type": "string", - "description": "Email or immutable ID of the group. If ID, it should match with id of group object", - "required": true, - "location": "path" - }, - "memberKey": { - "type": "string", - "description": "Email or immutable ID of the user. If ID, it should match with id of member object", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "groupKey", - "memberKey" - ], - "request": { - "$ref": "Member" - }, - "response": { - "$ref": "Member" - }, - "scopes": [ - "https://www.googleapis.com/auth/admin.directory.group", - "https://www.googleapis.com/auth/admin.directory.group.member" - ] - }, - "update": { - "id": "directory.members.update", - "path": "groups/{groupKey}/members/{memberKey}", - "httpMethod": "PUT", - "description": "Update membership of a user in the specified group.", - "parameters": { - "groupKey": { - "type": "string", - "description": "Email or immutable ID of the group. If ID, it should match with id of group object", - "required": true, - "location": "path" - }, - "memberKey": { - "type": "string", - "description": "Email or immutable ID of the user. If ID, it should match with id of member object", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "groupKey", - "memberKey" - ], - "request": { - "$ref": "Member" - }, - "response": { - "$ref": "Member" - }, - "scopes": [ - "https://www.googleapis.com/auth/admin.directory.group", - "https://www.googleapis.com/auth/admin.directory.group.member" - ] - } - } - }, - "mobiledevices": { - "methods": { - "action": { - "id": "directory.mobiledevices.action", - "path": "customer/{customerId}/devices/mobile/{resourceId}/action", - "httpMethod": "POST", - "description": "Take action on Mobile Device", - "parameters": { - "customerId": { - "type": "string", - "description": "Immutable ID of the G Suite account", - "required": true, - "location": "path" - }, - "resourceId": { - "type": "string", - "description": "Immutable ID of Mobile Device", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "customerId", - "resourceId" - ], - "request": { - "$ref": "MobileDeviceAction" - }, - "scopes": [ - "https://www.googleapis.com/auth/admin.directory.device.mobile", - "https://www.googleapis.com/auth/admin.directory.device.mobile.action" - ] - }, - "delete": { - "id": "directory.mobiledevices.delete", - "path": "customer/{customerId}/devices/mobile/{resourceId}", - "httpMethod": "DELETE", - "description": "Delete Mobile Device", - "parameters": { - "customerId": { - "type": "string", - "description": "Immutable ID of the G Suite account", - "required": true, - "location": "path" - }, - "resourceId": { - "type": "string", - "description": "Immutable ID of Mobile Device", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "customerId", - "resourceId" - ], - "scopes": [ - "https://www.googleapis.com/auth/admin.directory.device.mobile" - ] - }, - "get": { - "id": "directory.mobiledevices.get", - "path": "customer/{customerId}/devices/mobile/{resourceId}", - "httpMethod": "GET", - "description": "Retrieve Mobile Device", - "parameters": { - "customerId": { - "type": "string", - "description": "Immutable ID of the G Suite account", - "required": true, - "location": "path" - }, - "projection": { - "type": "string", - "description": "Restrict information returned to a set of selected fields.", - "enum": [ - "BASIC", - "FULL" - ], - "enumDescriptions": [ - "Includes only the basic metadata fields (e.g., deviceId, model, status, type, and status)", - "Includes all metadata fields" - ], - "location": "query" - }, - "resourceId": { - "type": "string", - "description": "Immutable ID of Mobile Device", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "customerId", - "resourceId" - ], - "response": { - "$ref": "MobileDevice" - }, - "scopes": [ - "https://www.googleapis.com/auth/admin.directory.device.mobile", - "https://www.googleapis.com/auth/admin.directory.device.mobile.action", - "https://www.googleapis.com/auth/admin.directory.device.mobile.readonly" - ] - }, - "list": { - "id": "directory.mobiledevices.list", - "path": "customer/{customerId}/devices/mobile", - "httpMethod": "GET", - "description": "Retrieve all Mobile Devices of a customer (paginated)", - "parameters": { - "customerId": { - "type": "string", - "description": "Immutable ID of the G Suite account", - "required": true, - "location": "path" - }, - "maxResults": { - "type": "integer", - "description": "Maximum number of results to return. Default is 100", - "format": "int32", - "minimum": "1", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Column to use for sorting results", - "enum": [ - "deviceId", - "email", - "lastSync", - "model", - "name", - "os", - "status", - "type" - ], - "enumDescriptions": [ - "Mobile Device serial number.", - "Owner user email.", - "Last policy settings sync date time of the device.", - "Mobile Device model.", - "Owner user name.", - "Mobile operating system.", - "Status of the device.", - "Type of the device." - ], - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Token to specify next page in the list", - "location": "query" - }, - "projection": { - "type": "string", - "description": "Restrict information returned to a set of selected fields.", - "enum": [ - "BASIC", - "FULL" - ], - "enumDescriptions": [ - "Includes only the basic metadata fields (e.g., deviceId, model, status, type, and status)", - "Includes all metadata fields" - ], - "location": "query" - }, - "query": { - "type": "string", - "description": "Search string in the format given at http://support.google.com/a/bin/answer.py?hl=en&answer=1408863#search", - "location": "query" - }, - "sortOrder": { - "type": "string", - "description": "Whether to return results in ascending or descending order. Only of use when orderBy is also used", - "enum": [ - "ASCENDING", - "DESCENDING" - ], - "enumDescriptions": [ - "Ascending order.", - "Descending order." - ], - "location": "query" - } - }, - "parameterOrder": [ - "customerId" - ], - "response": { - "$ref": "MobileDevices" - }, - "scopes": [ - "https://www.googleapis.com/auth/admin.directory.device.mobile", - "https://www.googleapis.com/auth/admin.directory.device.mobile.action", - "https://www.googleapis.com/auth/admin.directory.device.mobile.readonly" - ] - } - } - }, - "notifications": { - "methods": { - "delete": { - "id": "directory.notifications.delete", - "path": "customer/{customer}/notifications/{notificationId}", - "httpMethod": "DELETE", - "description": "Deletes a notification", - "parameters": { - "customer": { - "type": "string", - "description": "The unique ID for the customer's G Suite account. The customerId is also returned as part of the Users resource.", - "required": true, - "location": "path" - }, - "notificationId": { - "type": "string", - "description": "The unique ID of the notification.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "customer", - "notificationId" - ], - "scopes": [ - "https://www.googleapis.com/auth/admin.directory.notifications" - ] - }, - "get": { - "id": "directory.notifications.get", - "path": "customer/{customer}/notifications/{notificationId}", - "httpMethod": "GET", - "description": "Retrieves a notification.", - "parameters": { - "customer": { - "type": "string", - "description": "The unique ID for the customer's G Suite account. The customerId is also returned as part of the Users resource.", - "required": true, - "location": "path" - }, - "notificationId": { - "type": "string", - "description": "The unique ID of the notification.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "customer", - "notificationId" - ], - "response": { - "$ref": "Notification" - }, - "scopes": [ - "https://www.googleapis.com/auth/admin.directory.notifications" - ] - }, - "list": { - "id": "directory.notifications.list", - "path": "customer/{customer}/notifications", - "httpMethod": "GET", - "description": "Retrieves a list of notifications.", - "parameters": { - "customer": { - "type": "string", - "description": "The unique ID for the customer's G Suite account.", - "required": true, - "location": "path" - }, - "language": { - "type": "string", - "description": "The ISO 639-1 code of the language notifications are returned in. The default is English (en).", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "Maximum number of notifications to return per page. The default is 100.", - "format": "uint32", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "The token to specify the page of results to retrieve.", - "location": "query" - } - }, - "parameterOrder": [ - "customer" - ], - "response": { - "$ref": "Notifications" - }, - "scopes": [ - "https://www.googleapis.com/auth/admin.directory.notifications" - ] - }, - "patch": { - "id": "directory.notifications.patch", - "path": "customer/{customer}/notifications/{notificationId}", - "httpMethod": "PATCH", - "description": "Updates a notification. This method supports patch semantics.", - "parameters": { - "customer": { - "type": "string", - "description": "The unique ID for the customer's G Suite account.", - "required": true, - "location": "path" - }, - "notificationId": { - "type": "string", - "description": "The unique ID of the notification.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "customer", - "notificationId" - ], - "request": { - "$ref": "Notification" - }, - "response": { - "$ref": "Notification" - }, - "scopes": [ - "https://www.googleapis.com/auth/admin.directory.notifications" - ] - }, - "update": { - "id": "directory.notifications.update", - "path": "customer/{customer}/notifications/{notificationId}", - "httpMethod": "PUT", - "description": "Updates a notification.", - "parameters": { - "customer": { - "type": "string", - "description": "The unique ID for the customer's G Suite account.", - "required": true, - "location": "path" - }, - "notificationId": { - "type": "string", - "description": "The unique ID of the notification.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "customer", - "notificationId" - ], - "request": { - "$ref": "Notification" - }, - "response": { - "$ref": "Notification" - }, - "scopes": [ - "https://www.googleapis.com/auth/admin.directory.notifications" - ] - } - } - }, - "orgunits": { - "methods": { - "delete": { - "id": "directory.orgunits.delete", - "path": "customer/{customerId}/orgunits{/orgUnitPath*}", - "httpMethod": "DELETE", - "description": "Remove organizational unit", - "parameters": { - "customerId": { - "type": "string", - "description": "Immutable ID of the G Suite account", - "required": true, - "location": "path" - }, - "orgUnitPath": { - "type": "string", - "description": "Full path of the organizational unit or its ID", - "required": true, - "repeated": true, - "location": "path" - } - }, - "parameterOrder": [ - "customerId", - "orgUnitPath" - ], - "scopes": [ - "https://www.googleapis.com/auth/admin.directory.orgunit" - ] - }, - "get": { - "id": "directory.orgunits.get", - "path": "customer/{customerId}/orgunits{/orgUnitPath*}", - "httpMethod": "GET", - "description": "Retrieve organizational unit", - "parameters": { - "customerId": { - "type": "string", - "description": "Immutable ID of the G Suite account", - "required": true, - "location": "path" - }, - "orgUnitPath": { - "type": "string", - "description": "Full path of the organizational unit or its ID", - "required": true, - "repeated": true, - "location": "path" - } - }, - "parameterOrder": [ - "customerId", - "orgUnitPath" - ], - "response": { - "$ref": "OrgUnit" - }, - "scopes": [ - "https://www.googleapis.com/auth/admin.directory.orgunit", - "https://www.googleapis.com/auth/admin.directory.orgunit.readonly" - ] - }, - "insert": { - "id": "directory.orgunits.insert", - "path": "customer/{customerId}/orgunits", - "httpMethod": "POST", - "description": "Add organizational unit", - "parameters": { - "customerId": { - "type": "string", - "description": "Immutable ID of the G Suite account", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "customerId" - ], - "request": { - "$ref": "OrgUnit" - }, - "response": { - "$ref": "OrgUnit" - }, - "scopes": [ - "https://www.googleapis.com/auth/admin.directory.orgunit" - ] - }, - "list": { - "id": "directory.orgunits.list", - "path": "customer/{customerId}/orgunits", - "httpMethod": "GET", - "description": "Retrieve all organizational units", - "parameters": { - "customerId": { - "type": "string", - "description": "Immutable ID of the G Suite account", - "required": true, - "location": "path" - }, - "orgUnitPath": { - "type": "string", - "description": "the URL-encoded organizational unit's path or its ID", - "default": "", - "location": "query" - }, - "type": { - "type": "string", - "description": "Whether to return all sub-organizations or just immediate children", - "enum": [ - "all", - "children" - ], - "enumDescriptions": [ - "All sub-organizational units.", - "Immediate children only (default)." - ], - "location": "query" - } - }, - "parameterOrder": [ - "customerId" - ], - "response": { - "$ref": "OrgUnits" - }, - "scopes": [ - "https://www.googleapis.com/auth/admin.directory.orgunit", - "https://www.googleapis.com/auth/admin.directory.orgunit.readonly" - ] - }, - "patch": { - "id": "directory.orgunits.patch", - "path": "customer/{customerId}/orgunits{/orgUnitPath*}", - "httpMethod": "PATCH", - "description": "Update organizational unit. This method supports patch semantics.", - "parameters": { - "customerId": { - "type": "string", - "description": "Immutable ID of the G Suite account", - "required": true, - "location": "path" - }, - "orgUnitPath": { - "type": "string", - "description": "Full path of the organizational unit or its ID", - "required": true, - "repeated": true, - "location": "path" - } - }, - "parameterOrder": [ - "customerId", - "orgUnitPath" - ], - "request": { - "$ref": "OrgUnit" - }, - "response": { - "$ref": "OrgUnit" - }, - "scopes": [ - "https://www.googleapis.com/auth/admin.directory.orgunit" - ] - }, - "update": { - "id": "directory.orgunits.update", - "path": "customer/{customerId}/orgunits{/orgUnitPath*}", - "httpMethod": "PUT", - "description": "Update organizational unit", - "parameters": { - "customerId": { - "type": "string", - "description": "Immutable ID of the G Suite account", - "required": true, - "location": "path" - }, - "orgUnitPath": { - "type": "string", - "description": "Full path of the organizational unit or its ID", - "required": true, - "repeated": true, - "location": "path" - } - }, - "parameterOrder": [ - "customerId", - "orgUnitPath" - ], - "request": { - "$ref": "OrgUnit" - }, - "response": { - "$ref": "OrgUnit" - }, - "scopes": [ - "https://www.googleapis.com/auth/admin.directory.orgunit" - ] - } - } - }, - "privileges": { - "methods": { - "list": { - "id": "directory.privileges.list", - "path": "customer/{customer}/roles/ALL/privileges", - "httpMethod": "GET", - "description": "Retrieves a paginated list of all privileges for a customer.", - "parameters": { - "customer": { - "type": "string", - "description": "Immutable ID of the G Suite account.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "customer" - ], - "response": { - "$ref": "Privileges" - }, - "scopes": [ - "https://www.googleapis.com/auth/admin.directory.rolemanagement", - "https://www.googleapis.com/auth/admin.directory.rolemanagement.readonly" - ] - } - } - }, - "resolvedAppAccessSettings": { - "methods": { - "GetSettings": { - "id": "directory.resolvedAppAccessSettings.GetSettings", - "path": "resolvedappaccesssettings", - "httpMethod": "GET", - "description": "Retrieves resolved app access settings of the logged in user.", - "response": { - "$ref": "AppAccessCollections" - } - }, - "ListTrustedApps": { - "id": "directory.resolvedAppAccessSettings.ListTrustedApps", - "path": "trustedapps", - "httpMethod": "GET", - "description": "Retrieves the list of apps trusted by the admin of the logged in user.", - "response": { - "$ref": "TrustedApps" - } - } - } - }, - "resources": { - "resources": { - "buildings": { - "methods": { - "delete": { - "id": "directory.resources.buildings.delete", - "path": "customer/{customer}/resources/buildings/{buildingId}", - "httpMethod": "DELETE", - "description": "Deletes a building.", - "parameters": { - "buildingId": { - "type": "string", - "description": "The ID of the building to delete.", - "required": true, - "location": "path" - }, - "customer": { - "type": "string", - "description": "The unique ID for the customer's G Suite account. As an account administrator, you can also use the my_customer alias to represent your account's customer ID.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "customer", - "buildingId" - ], - "scopes": [ - "https://www.googleapis.com/auth/admin.directory.resource.calendar" - ] - }, - "get": { - "id": "directory.resources.buildings.get", - "path": "customer/{customer}/resources/buildings/{buildingId}", - "httpMethod": "GET", - "description": "Retrieves a building.", - "parameters": { - "buildingId": { - "type": "string", - "description": "The unique ID of the building to retrieve.", - "required": true, - "location": "path" - }, - "customer": { - "type": "string", - "description": "The unique ID for the customer's G Suite account. As an account administrator, you can also use the my_customer alias to represent your account's customer ID.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "customer", - "buildingId" - ], - "response": { - "$ref": "Building" - }, - "scopes": [ - "https://www.googleapis.com/auth/admin.directory.resource.calendar", - "https://www.googleapis.com/auth/admin.directory.resource.calendar.readonly" - ] - }, - "insert": { - "id": "directory.resources.buildings.insert", - "path": "customer/{customer}/resources/buildings", - "httpMethod": "POST", - "description": "Inserts a building.", - "parameters": { - "customer": { - "type": "string", - "description": "The unique ID for the customer's G Suite account. As an account administrator, you can also use the my_customer alias to represent your account's customer ID.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "customer" - ], - "request": { - "$ref": "Building" - }, - "response": { - "$ref": "Building" - }, - "scopes": [ - "https://www.googleapis.com/auth/admin.directory.resource.calendar" - ] - }, - "list": { - "id": "directory.resources.buildings.list", - "path": "customer/{customer}/resources/buildings", - "httpMethod": "GET", - "description": "Retrieves a list of buildings for an account.", - "parameters": { - "customer": { - "type": "string", - "description": "The unique ID for the customer's G Suite account. As an account administrator, you can also use the my_customer alias to represent your account's customer ID.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "customer" - ], - "response": { - "$ref": "Buildings" - }, - "scopes": [ - "https://www.googleapis.com/auth/admin.directory.resource.calendar", - "https://www.googleapis.com/auth/admin.directory.resource.calendar.readonly" - ] - }, - "patch": { - "id": "directory.resources.buildings.patch", - "path": "customer/{customer}/resources/buildings/{buildingId}", - "httpMethod": "PATCH", - "description": "Updates a building. This method supports patch semantics.", - "parameters": { - "buildingId": { - "type": "string", - "description": "The ID of the building to update.", - "required": true, - "location": "path" - }, - "customer": { - "type": "string", - "description": "The unique ID for the customer's G Suite account. As an account administrator, you can also use the my_customer alias to represent your account's customer ID.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "customer", - "buildingId" - ], - "request": { - "$ref": "Building" - }, - "response": { - "$ref": "Building" - }, - "scopes": [ - "https://www.googleapis.com/auth/admin.directory.resource.calendar" - ] - }, - "update": { - "id": "directory.resources.buildings.update", - "path": "customer/{customer}/resources/buildings/{buildingId}", - "httpMethod": "PUT", - "description": "Updates a building.", - "parameters": { - "buildingId": { - "type": "string", - "description": "The ID of the building to update.", - "required": true, - "location": "path" - }, - "customer": { - "type": "string", - "description": "The unique ID for the customer's G Suite account. As an account administrator, you can also use the my_customer alias to represent your account's customer ID.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "customer", - "buildingId" - ], - "request": { - "$ref": "Building" - }, - "response": { - "$ref": "Building" - }, - "scopes": [ - "https://www.googleapis.com/auth/admin.directory.resource.calendar" - ] - } - } - }, - "calendars": { - "methods": { - "delete": { - "id": "directory.resources.calendars.delete", - "path": "customer/{customer}/resources/calendars/{calendarResourceId}", - "httpMethod": "DELETE", - "description": "Deletes a calendar resource.", - "parameters": { - "calendarResourceId": { - "type": "string", - "description": "The unique ID of the calendar resource to delete.", - "required": true, - "location": "path" - }, - "customer": { - "type": "string", - "description": "The unique ID for the customer's G Suite account. As an account administrator, you can also use the my_customer alias to represent your account's customer ID.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "customer", - "calendarResourceId" - ], - "scopes": [ - "https://www.googleapis.com/auth/admin.directory.resource.calendar" - ] - }, - "get": { - "id": "directory.resources.calendars.get", - "path": "customer/{customer}/resources/calendars/{calendarResourceId}", - "httpMethod": "GET", - "description": "Retrieves a calendar resource.", - "parameters": { - "calendarResourceId": { - "type": "string", - "description": "The unique ID of the calendar resource to retrieve.", - "required": true, - "location": "path" - }, - "customer": { - "type": "string", - "description": "The unique ID for the customer's G Suite account. As an account administrator, you can also use the my_customer alias to represent your account's customer ID.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "customer", - "calendarResourceId" - ], - "response": { - "$ref": "CalendarResource" - }, - "scopes": [ - "https://www.googleapis.com/auth/admin.directory.resource.calendar", - "https://www.googleapis.com/auth/admin.directory.resource.calendar.readonly" - ] - }, - "insert": { - "id": "directory.resources.calendars.insert", - "path": "customer/{customer}/resources/calendars", - "httpMethod": "POST", - "description": "Inserts a calendar resource.", - "parameters": { - "customer": { - "type": "string", - "description": "The unique ID for the customer's G Suite account. As an account administrator, you can also use the my_customer alias to represent your account's customer ID.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "customer" - ], - "request": { - "$ref": "CalendarResource" - }, - "response": { - "$ref": "CalendarResource" - }, - "scopes": [ - "https://www.googleapis.com/auth/admin.directory.resource.calendar" - ] - }, - "list": { - "id": "directory.resources.calendars.list", - "path": "customer/{customer}/resources/calendars", - "httpMethod": "GET", - "description": "Retrieves a list of calendar resources for an account.", - "parameters": { - "customer": { - "type": "string", - "description": "The unique ID for the customer's G Suite account. As an account administrator, you can also use the my_customer alias to represent your account's customer ID.", - "required": true, - "location": "path" - }, - "maxResults": { - "type": "integer", - "description": "Maximum number of results to return.", - "format": "int32", - "minimum": "1", - "maximum": "500", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Field(s) to sort results by in either ascending or descending order. Supported fields include resourceId, resourceName, capacity, buildingId, and floorName. If no order is specified, defaults to ascending. Should be of the form \"field [asc|desc], field [asc|desc], ...\". For example buildingId, capacity desc would return results sorted first by buildingId in ascending order then by capacity in descending order.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Token to specify the next page in the list.", - "location": "query" - }, - "query": { - "type": "string", - "description": "String query used to filter results. Should be of the form \"field operator value\" where field can be any of supported fields and operators can be any of supported operations. Operators include '=' for exact match and ':' for prefix match where applicable. For prefix match, the value should always be followed by a *.", - "location": "query" - } - }, - "parameterOrder": [ - "customer" - ], - "response": { - "$ref": "CalendarResources" - }, - "scopes": [ - "https://www.googleapis.com/auth/admin.directory.resource.calendar", - "https://www.googleapis.com/auth/admin.directory.resource.calendar.readonly" - ] - }, - "patch": { - "id": "directory.resources.calendars.patch", - "path": "customer/{customer}/resources/calendars/{calendarResourceId}", - "httpMethod": "PATCH", - "description": "Updates a calendar resource.\n\nThis method supports patch semantics, meaning you only need to include the fields you wish to update. Fields that are not present in the request will be preserved. This method supports patch semantics.", - "parameters": { - "calendarResourceId": { - "type": "string", - "description": "The unique ID of the calendar resource to update.", - "required": true, - "location": "path" - }, - "customer": { - "type": "string", - "description": "The unique ID for the customer's G Suite account. As an account administrator, you can also use the my_customer alias to represent your account's customer ID.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "customer", - "calendarResourceId" - ], - "request": { - "$ref": "CalendarResource" - }, - "response": { - "$ref": "CalendarResource" - }, - "scopes": [ - "https://www.googleapis.com/auth/admin.directory.resource.calendar" - ] - }, - "update": { - "id": "directory.resources.calendars.update", - "path": "customer/{customer}/resources/calendars/{calendarResourceId}", - "httpMethod": "PUT", - "description": "Updates a calendar resource.\n\nThis method supports patch semantics, meaning you only need to include the fields you wish to update. Fields that are not present in the request will be preserved.", - "parameters": { - "calendarResourceId": { - "type": "string", - "description": "The unique ID of the calendar resource to update.", - "required": true, - "location": "path" - }, - "customer": { - "type": "string", - "description": "The unique ID for the customer's G Suite account. As an account administrator, you can also use the my_customer alias to represent your account's customer ID.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "customer", - "calendarResourceId" - ], - "request": { - "$ref": "CalendarResource" - }, - "response": { - "$ref": "CalendarResource" - }, - "scopes": [ - "https://www.googleapis.com/auth/admin.directory.resource.calendar" - ] - } - } - }, - "features": { - "methods": { - "delete": { - "id": "directory.resources.features.delete", - "path": "customer/{customer}/resources/features/{featureKey}", - "httpMethod": "DELETE", - "description": "Deletes a feature.", - "parameters": { - "customer": { - "type": "string", - "description": "The unique ID for the customer's G Suite account. As an account administrator, you can also use the my_customer alias to represent your account's customer ID.", - "required": true, - "location": "path" - }, - "featureKey": { - "type": "string", - "description": "The unique ID of the feature to delete.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "customer", - "featureKey" - ], - "scopes": [ - "https://www.googleapis.com/auth/admin.directory.resource.calendar" - ] - }, - "get": { - "id": "directory.resources.features.get", - "path": "customer/{customer}/resources/features/{featureKey}", - "httpMethod": "GET", - "description": "Retrieves a feature.", - "parameters": { - "customer": { - "type": "string", - "description": "The unique ID for the customer's G Suite account. As an account administrator, you can also use the my_customer alias to represent your account's customer ID.", - "required": true, - "location": "path" - }, - "featureKey": { - "type": "string", - "description": "The unique ID of the feature to retrieve.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "customer", - "featureKey" - ], - "response": { - "$ref": "Feature" - }, - "scopes": [ - "https://www.googleapis.com/auth/admin.directory.resource.calendar", - "https://www.googleapis.com/auth/admin.directory.resource.calendar.readonly" - ] - }, - "insert": { - "id": "directory.resources.features.insert", - "path": "customer/{customer}/resources/features", - "httpMethod": "POST", - "description": "Inserts a feature.", - "parameters": { - "customer": { - "type": "string", - "description": "The unique ID for the customer's G Suite account. As an account administrator, you can also use the my_customer alias to represent your account's customer ID.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "customer" - ], - "request": { - "$ref": "Feature" - }, - "response": { - "$ref": "Feature" - }, - "scopes": [ - "https://www.googleapis.com/auth/admin.directory.resource.calendar" - ] - }, - "list": { - "id": "directory.resources.features.list", - "path": "customer/{customer}/resources/features", - "httpMethod": "GET", - "description": "Retrieves a list of features for an account.", - "parameters": { - "customer": { - "type": "string", - "description": "The unique ID for the customer's G Suite account. As an account administrator, you can also use the my_customer alias to represent your account's customer ID.", - "required": true, - "location": "path" - }, - "pageToken": { - "type": "string", - "description": "Token to specify the next page in the list.", - "location": "query" - } - }, - "parameterOrder": [ - "customer" - ], - "response": { - "$ref": "Features" - }, - "scopes": [ - "https://www.googleapis.com/auth/admin.directory.resource.calendar", - "https://www.googleapis.com/auth/admin.directory.resource.calendar.readonly" - ] - }, - "patch": { - "id": "directory.resources.features.patch", - "path": "customer/{customer}/resources/features/{featureKey}", - "httpMethod": "PATCH", - "description": "Updates a feature. This method supports patch semantics.", - "parameters": { - "customer": { - "type": "string", - "description": "The unique ID for the customer's G Suite account. As an account administrator, you can also use the my_customer alias to represent your account's customer ID.", - "required": true, - "location": "path" - }, - "featureKey": { - "type": "string", - "description": "The unique ID of the feature to update.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "customer", - "featureKey" - ], - "request": { - "$ref": "Feature" - }, - "response": { - "$ref": "Feature" - }, - "scopes": [ - "https://www.googleapis.com/auth/admin.directory.resource.calendar" - ] - }, - "rename": { - "id": "directory.resources.features.rename", - "path": "customer/{customer}/resources/features/{oldName}/rename", - "httpMethod": "POST", - "description": "Renames a feature.", - "parameters": { - "customer": { - "type": "string", - "description": "The unique ID for the customer's G Suite account. As an account administrator, you can also use the my_customer alias to represent your account's customer ID.", - "required": true, - "location": "path" - }, - "oldName": { - "type": "string", - "description": "The unique ID of the feature to rename.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "customer", - "oldName" - ], - "request": { - "$ref": "FeatureRename" - }, - "scopes": [ - "https://www.googleapis.com/auth/admin.directory.resource.calendar" - ] - }, - "update": { - "id": "directory.resources.features.update", - "path": "customer/{customer}/resources/features/{featureKey}", - "httpMethod": "PUT", - "description": "Updates a feature.", - "parameters": { - "customer": { - "type": "string", - "description": "The unique ID for the customer's G Suite account. As an account administrator, you can also use the my_customer alias to represent your account's customer ID.", - "required": true, - "location": "path" - }, - "featureKey": { - "type": "string", - "description": "The unique ID of the feature to update.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "customer", - "featureKey" - ], - "request": { - "$ref": "Feature" - }, - "response": { - "$ref": "Feature" - }, - "scopes": [ - "https://www.googleapis.com/auth/admin.directory.resource.calendar" - ] - } - } - } - } - }, - "roleAssignments": { - "methods": { - "delete": { - "id": "directory.roleAssignments.delete", - "path": "customer/{customer}/roleassignments/{roleAssignmentId}", - "httpMethod": "DELETE", - "description": "Deletes a role assignment.", - "parameters": { - "customer": { - "type": "string", - "description": "Immutable ID of the G Suite account.", - "required": true, - "location": "path" - }, - "roleAssignmentId": { - "type": "string", - "description": "Immutable ID of the role assignment.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "customer", - "roleAssignmentId" - ], - "scopes": [ - "https://www.googleapis.com/auth/admin.directory.rolemanagement" - ] - }, - "get": { - "id": "directory.roleAssignments.get", - "path": "customer/{customer}/roleassignments/{roleAssignmentId}", - "httpMethod": "GET", - "description": "Retrieve a role assignment.", - "parameters": { - "customer": { - "type": "string", - "description": "Immutable ID of the G Suite account.", - "required": true, - "location": "path" - }, - "roleAssignmentId": { - "type": "string", - "description": "Immutable ID of the role assignment.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "customer", - "roleAssignmentId" - ], - "response": { - "$ref": "RoleAssignment" - }, - "scopes": [ - "https://www.googleapis.com/auth/admin.directory.rolemanagement", - "https://www.googleapis.com/auth/admin.directory.rolemanagement.readonly" - ] - }, - "insert": { - "id": "directory.roleAssignments.insert", - "path": "customer/{customer}/roleassignments", - "httpMethod": "POST", - "description": "Creates a role assignment.", - "parameters": { - "customer": { - "type": "string", - "description": "Immutable ID of the G Suite account.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "customer" - ], - "request": { - "$ref": "RoleAssignment" - }, - "response": { - "$ref": "RoleAssignment" - }, - "scopes": [ - "https://www.googleapis.com/auth/admin.directory.rolemanagement" - ] - }, - "list": { - "id": "directory.roleAssignments.list", - "path": "customer/{customer}/roleassignments", - "httpMethod": "GET", - "description": "Retrieves a paginated list of all roleAssignments.", - "parameters": { - "customer": { - "type": "string", - "description": "Immutable ID of the G Suite account.", - "required": true, - "location": "path" - }, - "maxResults": { - "type": "integer", - "description": "Maximum number of results to return.", - "format": "int32", - "minimum": "1", - "maximum": "200", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Token to specify the next page in the list.", - "location": "query" - }, - "roleId": { - "type": "string", - "description": "Immutable ID of a role. If included in the request, returns only role assignments containing this role ID.", - "location": "query" - }, - "userKey": { - "type": "string", - "description": "The user's primary email address, alias email address, or unique user ID. If included in the request, returns role assignments only for this user.", - "location": "query" - } - }, - "parameterOrder": [ - "customer" - ], - "response": { - "$ref": "RoleAssignments" - }, - "scopes": [ - "https://www.googleapis.com/auth/admin.directory.rolemanagement", - "https://www.googleapis.com/auth/admin.directory.rolemanagement.readonly" - ] - } - } - }, - "roles": { - "methods": { - "delete": { - "id": "directory.roles.delete", - "path": "customer/{customer}/roles/{roleId}", - "httpMethod": "DELETE", - "description": "Deletes a role.", - "parameters": { - "customer": { - "type": "string", - "description": "Immutable ID of the G Suite account.", - "required": true, - "location": "path" - }, - "roleId": { - "type": "string", - "description": "Immutable ID of the role.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "customer", - "roleId" - ], - "scopes": [ - "https://www.googleapis.com/auth/admin.directory.rolemanagement" - ] - }, - "get": { - "id": "directory.roles.get", - "path": "customer/{customer}/roles/{roleId}", - "httpMethod": "GET", - "description": "Retrieves a role.", - "parameters": { - "customer": { - "type": "string", - "description": "Immutable ID of the G Suite account.", - "required": true, - "location": "path" - }, - "roleId": { - "type": "string", - "description": "Immutable ID of the role.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "customer", - "roleId" - ], - "response": { - "$ref": "Role" - }, - "scopes": [ - "https://www.googleapis.com/auth/admin.directory.rolemanagement", - "https://www.googleapis.com/auth/admin.directory.rolemanagement.readonly" - ] - }, - "insert": { - "id": "directory.roles.insert", - "path": "customer/{customer}/roles", - "httpMethod": "POST", - "description": "Creates a role.", - "parameters": { - "customer": { - "type": "string", - "description": "Immutable ID of the G Suite account.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "customer" - ], - "request": { - "$ref": "Role" - }, - "response": { - "$ref": "Role" - }, - "scopes": [ - "https://www.googleapis.com/auth/admin.directory.rolemanagement" - ] - }, - "list": { - "id": "directory.roles.list", - "path": "customer/{customer}/roles", - "httpMethod": "GET", - "description": "Retrieves a paginated list of all the roles in a domain.", - "parameters": { - "customer": { - "type": "string", - "description": "Immutable ID of the G Suite account.", - "required": true, - "location": "path" - }, - "maxResults": { - "type": "integer", - "description": "Maximum number of results to return.", - "format": "int32", - "minimum": "1", - "maximum": "100", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Token to specify the next page in the list.", - "location": "query" - } - }, - "parameterOrder": [ - "customer" - ], - "response": { - "$ref": "Roles" - }, - "scopes": [ - "https://www.googleapis.com/auth/admin.directory.rolemanagement", - "https://www.googleapis.com/auth/admin.directory.rolemanagement.readonly" - ] - }, - "patch": { - "id": "directory.roles.patch", - "path": "customer/{customer}/roles/{roleId}", - "httpMethod": "PATCH", - "description": "Updates a role. This method supports patch semantics.", - "parameters": { - "customer": { - "type": "string", - "description": "Immutable ID of the G Suite account.", - "required": true, - "location": "path" - }, - "roleId": { - "type": "string", - "description": "Immutable ID of the role.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "customer", - "roleId" - ], - "request": { - "$ref": "Role" - }, - "response": { - "$ref": "Role" - }, - "scopes": [ - "https://www.googleapis.com/auth/admin.directory.rolemanagement" - ] - }, - "update": { - "id": "directory.roles.update", - "path": "customer/{customer}/roles/{roleId}", - "httpMethod": "PUT", - "description": "Updates a role.", - "parameters": { - "customer": { - "type": "string", - "description": "Immutable ID of the G Suite account.", - "required": true, - "location": "path" - }, - "roleId": { - "type": "string", - "description": "Immutable ID of the role.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "customer", - "roleId" - ], - "request": { - "$ref": "Role" - }, - "response": { - "$ref": "Role" - }, - "scopes": [ - "https://www.googleapis.com/auth/admin.directory.rolemanagement" - ] - } - } }, + "revision": "20180316", + "rootUrl": "https://www.googleapis.com/", "schemas": { - "methods": { - "delete": { - "id": "directory.schemas.delete", - "path": "customer/{customerId}/schemas/{schemaKey}", - "httpMethod": "DELETE", - "description": "Delete schema", - "parameters": { - "customerId": { - "type": "string", - "description": "Immutable ID of the G Suite account", - "required": true, - "location": "path" - }, - "schemaKey": { - "type": "string", - "description": "Name or immutable ID of the schema", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "customerId", - "schemaKey" - ], - "scopes": [ - "https://www.googleapis.com/auth/admin.directory.userschema" - ] - }, - "get": { - "id": "directory.schemas.get", - "path": "customer/{customerId}/schemas/{schemaKey}", - "httpMethod": "GET", - "description": "Retrieve schema", - "parameters": { - "customerId": { - "type": "string", - "description": "Immutable ID of the G Suite account", - "required": true, - "location": "path" - }, - "schemaKey": { - "type": "string", - "description": "Name or immutable ID of the schema", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "customerId", - "schemaKey" - ], - "response": { - "$ref": "Schema" - }, - "scopes": [ - "https://www.googleapis.com/auth/admin.directory.userschema", - "https://www.googleapis.com/auth/admin.directory.userschema.readonly" - ] - }, - "insert": { - "id": "directory.schemas.insert", - "path": "customer/{customerId}/schemas", - "httpMethod": "POST", - "description": "Create schema.", - "parameters": { - "customerId": { - "type": "string", - "description": "Immutable ID of the G Suite account", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "customerId" - ], - "request": { - "$ref": "Schema" - }, - "response": { - "$ref": "Schema" - }, - "scopes": [ - "https://www.googleapis.com/auth/admin.directory.userschema" - ] - }, - "list": { - "id": "directory.schemas.list", - "path": "customer/{customerId}/schemas", - "httpMethod": "GET", - "description": "Retrieve all schemas for a customer", - "parameters": { - "customerId": { - "type": "string", - "description": "Immutable ID of the G Suite account", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "customerId" - ], - "response": { - "$ref": "Schemas" - }, - "scopes": [ - "https://www.googleapis.com/auth/admin.directory.userschema", - "https://www.googleapis.com/auth/admin.directory.userschema.readonly" - ] - }, - "patch": { - "id": "directory.schemas.patch", - "path": "customer/{customerId}/schemas/{schemaKey}", - "httpMethod": "PATCH", - "description": "Update schema. This method supports patch semantics.", - "parameters": { - "customerId": { - "type": "string", - "description": "Immutable ID of the G Suite account", - "required": true, - "location": "path" - }, - "schemaKey": { - "type": "string", - "description": "Name or immutable ID of the schema.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "customerId", - "schemaKey" - ], - "request": { - "$ref": "Schema" - }, - "response": { - "$ref": "Schema" - }, - "scopes": [ - "https://www.googleapis.com/auth/admin.directory.userschema" - ] - }, - "update": { - "id": "directory.schemas.update", - "path": "customer/{customerId}/schemas/{schemaKey}", - "httpMethod": "PUT", - "description": "Update schema", - "parameters": { - "customerId": { - "type": "string", - "description": "Immutable ID of the G Suite account", - "required": true, - "location": "path" - }, - "schemaKey": { - "type": "string", - "description": "Name or immutable ID of the schema.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "customerId", - "schemaKey" - ], - "request": { - "$ref": "Schema" - }, - "response": { - "$ref": "Schema" - }, - "scopes": [ - "https://www.googleapis.com/auth/admin.directory.userschema" - ] - } - } - }, - "tokens": { - "methods": { - "delete": { - "id": "directory.tokens.delete", - "path": "users/{userKey}/tokens/{clientId}", - "httpMethod": "DELETE", - "description": "Delete all access tokens issued by a user for an application.", - "parameters": { - "clientId": { - "type": "string", - "description": "The Client ID of the application the token is issued to.", - "required": true, - "location": "path" - }, - "userKey": { - "type": "string", - "description": "Identifies the user in the API request. The value can be the user's primary email address, alias email address, or unique user ID.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "userKey", - "clientId" - ], - "scopes": [ - "https://www.googleapis.com/auth/admin.directory.user.security" - ] - }, - "get": { - "id": "directory.tokens.get", - "path": "users/{userKey}/tokens/{clientId}", - "httpMethod": "GET", - "description": "Get information about an access token issued by a user.", - "parameters": { - "clientId": { - "type": "string", - "description": "The Client ID of the application the token is issued to.", - "required": true, - "location": "path" - }, - "userKey": { - "type": "string", - "description": "Identifies the user in the API request. The value can be the user's primary email address, alias email address, or unique user ID.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "userKey", - "clientId" - ], - "response": { - "$ref": "Token" - }, - "scopes": [ - "https://www.googleapis.com/auth/admin.directory.user.security" - ] - }, - "list": { - "id": "directory.tokens.list", - "path": "users/{userKey}/tokens", - "httpMethod": "GET", - "description": "Returns the set of tokens specified user has issued to 3rd party applications.", - "parameters": { - "userKey": { - "type": "string", - "description": "Identifies the user in the API request. The value can be the user's primary email address, alias email address, or unique user ID.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "userKey" - ], - "response": { - "$ref": "Tokens" - }, - "scopes": [ - "https://www.googleapis.com/auth/admin.directory.user.security" - ] - } - } - }, - "users": { - "methods": { - "delete": { - "id": "directory.users.delete", - "path": "users/{userKey}", - "httpMethod": "DELETE", - "description": "Delete user", - "parameters": { - "userKey": { - "type": "string", - "description": "Email or immutable ID of the user", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "userKey" - ], - "scopes": [ - "https://www.googleapis.com/auth/admin.directory.user" - ] - }, - "get": { - "id": "directory.users.get", - "path": "users/{userKey}", - "httpMethod": "GET", - "description": "retrieve user", - "parameters": { - "customFieldMask": { - "type": "string", - "description": "Comma-separated list of schema names. All fields from these schemas are fetched. This should only be set when projection=custom.", - "location": "query" - }, - "projection": { - "type": "string", - "description": "What subset of fields to fetch for this user.", - "default": "basic", - "enum": [ - "basic", - "custom", - "full" - ], - "enumDescriptions": [ - "Do not include any custom fields for the user.", - "Include custom fields from schemas mentioned in customFieldMask.", - "Include all fields associated with this user." - ], - "location": "query" - }, - "userKey": { - "type": "string", - "description": "Email or immutable ID of the user", - "required": true, - "location": "path" - }, - "viewType": { - "type": "string", - "description": "Whether to fetch the ADMIN_VIEW or DOMAIN_PUBLIC view of the user.", - "default": "admin_view", - "enum": [ - "admin_view", - "domain_public" - ], - "enumDescriptions": [ - "Fetches the ADMIN_VIEW of the user.", - "Fetches the DOMAIN_PUBLIC view of the user." - ], - "location": "query" - } - }, - "parameterOrder": [ - "userKey" - ], - "response": { - "$ref": "User" - }, - "scopes": [ - "https://www.googleapis.com/auth/admin.directory.user", - "https://www.googleapis.com/auth/admin.directory.user.readonly" - ] - }, - "insert": { - "id": "directory.users.insert", - "path": "users", - "httpMethod": "POST", - "description": "create user.", - "request": { - "$ref": "User" - }, - "response": { - "$ref": "User" - }, - "scopes": [ - "https://www.googleapis.com/auth/admin.directory.user" - ] - }, - "list": { - "id": "directory.users.list", - "path": "users", - "httpMethod": "GET", - "description": "Retrieve either deleted users or all users in a domain (paginated)", - "parameters": { - "customFieldMask": { - "type": "string", - "description": "Comma-separated list of schema names. All fields from these schemas are fetched. This should only be set when projection=custom.", - "location": "query" - }, - "customer": { - "type": "string", - "description": "Immutable ID of the G Suite account. In case of multi-domain, to fetch all users for a customer, fill this field instead of domain.", - "location": "query" - }, - "domain": { - "type": "string", - "description": "Name of the domain. Fill this field to get users from only this domain. To return all users in a multi-domain fill customer field instead.", - "location": "query" - }, - "event": { - "type": "string", - "description": "Event on which subscription is intended (if subscribing)", - "enum": [ - "add", - "delete", - "makeAdmin", - "undelete", - "update" - ], - "enumDescriptions": [ - "User Created Event", - "User Deleted Event", - "User Admin Status Change Event", - "User Undeleted Event", - "User Updated Event" - ], - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "Maximum number of results to return. Default is 100. Max allowed is 500", - "format": "int32", - "minimum": "1", - "maximum": "500", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Column to use for sorting results", - "enum": [ - "email", - "familyName", - "givenName" - ], - "enumDescriptions": [ - "Primary email of the user.", - "User's family name.", - "User's given name." - ], - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Token to specify next page in the list", - "location": "query" - }, - "projection": { - "type": "string", - "description": "What subset of fields to fetch for this user.", - "default": "basic", - "enum": [ - "basic", - "custom", - "full" - ], - "enumDescriptions": [ - "Do not include any custom fields for the user.", - "Include custom fields from schemas mentioned in customFieldMask.", - "Include all fields associated with this user." - ], - "location": "query" - }, - "query": { - "type": "string", - "description": "Query string search. Should be of the form \"\". Complete documentation is at https://developers.google.com/admin-sdk/directory/v1/guides/search-users", - "location": "query" - }, - "showDeleted": { - "type": "string", - "description": "If set to true retrieves the list of deleted users. Default is false", - "location": "query" - }, - "sortOrder": { - "type": "string", - "description": "Whether to return results in ascending or descending order.", - "enum": [ - "ASCENDING", - "DESCENDING" - ], - "enumDescriptions": [ - "Ascending order.", - "Descending order." - ], - "location": "query" - }, - "viewType": { - "type": "string", - "description": "Whether to fetch the ADMIN_VIEW or DOMAIN_PUBLIC view of the user.", - "default": "admin_view", - "enum": [ - "admin_view", - "domain_public" - ], - "enumDescriptions": [ - "Fetches the ADMIN_VIEW of the user.", - "Fetches the DOMAIN_PUBLIC view of the user." - ], - "location": "query" - } - }, - "response": { - "$ref": "Users" - }, - "scopes": [ - "https://www.googleapis.com/auth/admin.directory.user", - "https://www.googleapis.com/auth/admin.directory.user.readonly" - ], - "supportsSubscription": true - }, - "makeAdmin": { - "id": "directory.users.makeAdmin", - "path": "users/{userKey}/makeAdmin", - "httpMethod": "POST", - "description": "change admin status of a user", - "parameters": { - "userKey": { - "type": "string", - "description": "Email or immutable ID of the user as admin", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "userKey" - ], - "request": { - "$ref": "UserMakeAdmin" - }, - "scopes": [ - "https://www.googleapis.com/auth/admin.directory.user" - ] - }, - "patch": { - "id": "directory.users.patch", - "path": "users/{userKey}", - "httpMethod": "PATCH", - "description": "update user. This method supports patch semantics.", - "parameters": { - "userKey": { - "type": "string", - "description": "Email or immutable ID of the user. If ID, it should match with id of user object", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "userKey" - ], - "request": { - "$ref": "User" - }, - "response": { - "$ref": "User" - }, - "scopes": [ - "https://www.googleapis.com/auth/admin.directory.user" - ] - }, - "undelete": { - "id": "directory.users.undelete", - "path": "users/{userKey}/undelete", - "httpMethod": "POST", - "description": "Undelete a deleted user", - "parameters": { - "userKey": { - "type": "string", - "description": "The immutable id of the user", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "userKey" - ], - "request": { - "$ref": "UserUndelete" - }, - "scopes": [ - "https://www.googleapis.com/auth/admin.directory.user" - ] - }, - "update": { - "id": "directory.users.update", - "path": "users/{userKey}", - "httpMethod": "PUT", - "description": "update user", - "parameters": { - "userKey": { - "type": "string", - "description": "Email or immutable ID of the user. If ID, it should match with id of user object", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "userKey" - ], - "request": { - "$ref": "User" - }, - "response": { - "$ref": "User" - }, - "scopes": [ - "https://www.googleapis.com/auth/admin.directory.user" - ] - }, - "watch": { - "id": "directory.users.watch", - "path": "users/watch", - "httpMethod": "POST", - "description": "Watch for changes in users list", - "parameters": { - "customFieldMask": { - "type": "string", - "description": "Comma-separated list of schema names. All fields from these schemas are fetched. This should only be set when projection=custom.", - "location": "query" - }, - "customer": { - "type": "string", - "description": "Immutable ID of the G Suite account. In case of multi-domain, to fetch all users for a customer, fill this field instead of domain.", - "location": "query" - }, - "domain": { - "type": "string", - "description": "Name of the domain. Fill this field to get users from only this domain. To return all users in a multi-domain fill customer field instead.", - "location": "query" - }, - "event": { - "type": "string", - "description": "Event on which subscription is intended (if subscribing)", - "enum": [ - "add", - "delete", - "makeAdmin", - "undelete", - "update" - ], - "enumDescriptions": [ - "User Created Event", - "User Deleted Event", - "User Admin Status Change Event", - "User Undeleted Event", - "User Updated Event" - ], - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "Maximum number of results to return. Default is 100. Max allowed is 500", - "format": "int32", - "minimum": "1", - "maximum": "500", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Column to use for sorting results", - "enum": [ - "email", - "familyName", - "givenName" - ], - "enumDescriptions": [ - "Primary email of the user.", - "User's family name.", - "User's given name." - ], - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Token to specify next page in the list", - "location": "query" - }, - "projection": { - "type": "string", - "description": "What subset of fields to fetch for this user.", - "default": "basic", - "enum": [ - "basic", - "custom", - "full" - ], - "enumDescriptions": [ - "Do not include any custom fields for the user.", - "Include custom fields from schemas mentioned in customFieldMask.", - "Include all fields associated with this user." - ], - "location": "query" - }, - "query": { - "type": "string", - "description": "Query string search. Should be of the form \"\". Complete documentation is at https://developers.google.com/admin-sdk/directory/v1/guides/search-users", - "location": "query" - }, - "showDeleted": { - "type": "string", - "description": "If set to true retrieves the list of deleted users. Default is false", - "location": "query" - }, - "sortOrder": { - "type": "string", - "description": "Whether to return results in ascending or descending order.", - "enum": [ - "ASCENDING", - "DESCENDING" - ], - "enumDescriptions": [ - "Ascending order.", - "Descending order." - ], - "location": "query" - }, - "viewType": { - "type": "string", - "description": "Whether to fetch the ADMIN_VIEW or DOMAIN_PUBLIC view of the user.", - "default": "admin_view", - "enum": [ - "admin_view", - "domain_public" - ], - "enumDescriptions": [ - "Fetches the ADMIN_VIEW of the user.", - "Fetches the DOMAIN_PUBLIC view of the user." - ], - "location": "query" - } - }, - "request": { - "$ref": "Channel", - "parameterName": "resource" - }, - "response": { - "$ref": "Channel" - }, - "scopes": [ - "https://www.googleapis.com/auth/admin.directory.user", - "https://www.googleapis.com/auth/admin.directory.user.readonly" - ], - "supportsSubscription": true - } - }, - "resources": { - "aliases": { - "methods": { - "delete": { - "id": "directory.users.aliases.delete", - "path": "users/{userKey}/aliases/{alias}", - "httpMethod": "DELETE", - "description": "Remove a alias for the user", - "parameters": { + "Alias": { + "description": "JSON template for Alias object in Directory API.", + "id": "Alias", + "properties": { "alias": { - "type": "string", - "description": "The alias to be removed", - "required": true, - "location": "path" + "description": "A alias email", + "type": "string" }, - "userKey": { - "type": "string", - "description": "Email or immutable ID of the user", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "userKey", - "alias" - ], - "scopes": [ - "https://www.googleapis.com/auth/admin.directory.user", - "https://www.googleapis.com/auth/admin.directory.user.alias" - ] - }, - "insert": { - "id": "directory.users.aliases.insert", - "path": "users/{userKey}/aliases", - "httpMethod": "POST", - "description": "Add a alias for the user", - "parameters": { - "userKey": { - "type": "string", - "description": "Email or immutable ID of the user", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "userKey" - ], - "request": { - "$ref": "Alias" - }, - "response": { - "$ref": "Alias" - }, - "scopes": [ - "https://www.googleapis.com/auth/admin.directory.user", - "https://www.googleapis.com/auth/admin.directory.user.alias" - ] - }, - "list": { - "id": "directory.users.aliases.list", - "path": "users/{userKey}/aliases", - "httpMethod": "GET", - "description": "List all aliases for a user", - "parameters": { - "event": { - "type": "string", - "description": "Event on which subscription is intended (if subscribing)", - "enum": [ - "add", - "delete" - ], - "enumDescriptions": [ - "Alias Created Event", - "Alias Deleted Event" - ], - "location": "query" + "etag": { + "description": "ETag of the resource.", + "type": "string" }, - "userKey": { - "type": "string", - "description": "Email or immutable ID of the user", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "userKey" - ], - "response": { - "$ref": "Aliases" - }, - "scopes": [ - "https://www.googleapis.com/auth/admin.directory.user", - "https://www.googleapis.com/auth/admin.directory.user.alias", - "https://www.googleapis.com/auth/admin.directory.user.alias.readonly", - "https://www.googleapis.com/auth/admin.directory.user.readonly" - ], - "supportsSubscription": true - }, - "watch": { - "id": "directory.users.aliases.watch", - "path": "users/{userKey}/aliases/watch", - "httpMethod": "POST", - "description": "Watch for changes in user aliases list", - "parameters": { - "event": { - "type": "string", - "description": "Event on which subscription is intended (if subscribing)", - "enum": [ - "add", - "delete" - ], - "enumDescriptions": [ - "Alias Created Event", - "Alias Deleted Event" - ], - "location": "query" + "id": { + "description": "Unique id of the group (Read-only) Unique id of the user (Read-only)", + "type": "string" }, - "userKey": { - "type": "string", - "description": "Email or immutable ID of the user", - "required": true, - "location": "path" + "kind": { + "default": "admin#directory#alias", + "description": "Kind of resource this is.", + "type": "string" + }, + "primaryEmail": { + "description": "Group's primary email (Read-only) User's primary email (Read-only)", + "type": "string" } - }, - "parameterOrder": [ - "userKey" - ], - "request": { - "$ref": "Channel", - "parameterName": "resource" - }, - "response": { - "$ref": "Channel" - }, - "scopes": [ - "https://www.googleapis.com/auth/admin.directory.user", - "https://www.googleapis.com/auth/admin.directory.user.alias", - "https://www.googleapis.com/auth/admin.directory.user.alias.readonly", - "https://www.googleapis.com/auth/admin.directory.user.readonly" - ], - "supportsSubscription": true - } - } + }, + "type": "object" }, - "photos": { - "methods": { - "delete": { - "id": "directory.users.photos.delete", - "path": "users/{userKey}/photos/thumbnail", - "httpMethod": "DELETE", - "description": "Remove photos for the user", - "parameters": { - "userKey": { - "type": "string", - "description": "Email or immutable ID of the user", - "required": true, - "location": "path" + "Aliases": { + "description": "JSON response template to list aliases in Directory API.", + "id": "Aliases", + "properties": { + "aliases": { + "description": "List of alias objects.", + "items": { + "type": "any" + }, + "type": "array" + }, + "etag": { + "description": "ETag of the resource.", + "type": "string" + }, + "kind": { + "default": "admin#directory#aliases", + "description": "Kind of resource this is.", + "type": "string" } - }, - "parameterOrder": [ - "userKey" - ], - "scopes": [ - "https://www.googleapis.com/auth/admin.directory.user" - ] }, - "get": { - "id": "directory.users.photos.get", - "path": "users/{userKey}/photos/thumbnail", - "httpMethod": "GET", - "description": "Retrieve photo of a user", - "parameters": { - "userKey": { - "type": "string", - "description": "Email or immutable ID of the user", - "required": true, - "location": "path" + "type": "object" + }, + "AppAccessCollections": { + "description": "JSON template for App Access Collections Resource object in Directory API.", + "id": "AppAccessCollections", + "properties": { + "blockedApiAccessBuckets": { + "description": "List of blocked api access buckets.", + "items": { + "type": "string" + }, + "type": "array" + }, + "enforceSettingsForAndroidDrive": { + "description": "Boolean to indicate whether to enforce app access settings on Android Drive or not.", + "type": "boolean" + }, + "errorMessage": { + "description": "Error message provided by the Admin that will be shown to the user when an app is blocked.", + "type": "string" + }, + "etag": { + "description": "ETag of the resource.", + "type": "string" + }, + "kind": { + "default": "admin#directory#appaccesscollection", + "description": "Identifies the resource as an app access collection. Value: admin#directory#appaccesscollection", + "type": "string" + }, + "resourceId": { + "description": "Unique ID of app access collection. (Readonly)", + "format": "int64", + "type": "string" + }, + "resourceName": { + "description": "Resource name given by the customer while creating/updating. Should be unique under given customer.", + "type": "string" + }, + "trustDomainOwnedApps": { + "description": "Boolean that indicates whether to trust domain owned apps.", + "type": "boolean" } - }, - "parameterOrder": [ - "userKey" - ], - "response": { - "$ref": "UserPhoto" - }, - "scopes": [ - "https://www.googleapis.com/auth/admin.directory.user", - "https://www.googleapis.com/auth/admin.directory.user.readonly" - ] }, - "patch": { - "id": "directory.users.photos.patch", - "path": "users/{userKey}/photos/thumbnail", - "httpMethod": "PATCH", - "description": "Add a photo for the user. This method supports patch semantics.", - "parameters": { + "type": "object" + }, + "Asp": { + "description": "The template that returns individual ASP (Access Code) data.", + "id": "Asp", + "properties": { + "codeId": { + "description": "The unique ID of the ASP.", + "format": "int32", + "type": "integer" + }, + "creationTime": { + "description": "The time when the ASP was created. Expressed in Unix time format.", + "format": "int64", + "type": "string" + }, + "etag": { + "description": "ETag of the ASP.", + "type": "string" + }, + "kind": { + "default": "admin#directory#asp", + "description": "The type of the API resource. This is always admin#directory#asp.", + "type": "string" + }, + "lastTimeUsed": { + "description": "The time when the ASP was last used. Expressed in Unix time format.", + "format": "int64", + "type": "string" + }, + "name": { + "description": "The name of the application that the user, represented by their userId, entered when the ASP was created.", + "type": "string" + }, "userKey": { - "type": "string", - "description": "Email or immutable ID of the user", - "required": true, - "location": "path" + "description": "The unique ID of the user who issued the ASP.", + "type": "string" } - }, - "parameterOrder": [ - "userKey" - ], - "request": { - "$ref": "UserPhoto" - }, - "response": { - "$ref": "UserPhoto" - }, - "scopes": [ - "https://www.googleapis.com/auth/admin.directory.user" - ] }, - "update": { - "id": "directory.users.photos.update", - "path": "users/{userKey}/photos/thumbnail", - "httpMethod": "PUT", - "description": "Add a photo for the user", - "parameters": { - "userKey": { - "type": "string", - "description": "Email or immutable ID of the user", - "required": true, - "location": "path" + "type": "object" + }, + "Asps": { + "id": "Asps", + "properties": { + "etag": { + "description": "ETag of the resource.", + "type": "string" + }, + "items": { + "description": "A list of ASP resources.", + "items": { + "$ref": "Asp" + }, + "type": "array" + }, + "kind": { + "default": "admin#directory#aspList", + "description": "The type of the API resource. This is always admin#directory#aspList.", + "type": "string" } - }, - "parameterOrder": [ - "userKey" - ], - "request": { - "$ref": "UserPhoto" - }, - "response": { - "$ref": "UserPhoto" - }, - "scopes": [ - "https://www.googleapis.com/auth/admin.directory.user" - ] - } - } + }, + "type": "object" + }, + "Building": { + "description": "JSON template for Building object in Directory API.", + "id": "Building", + "properties": { + "buildingId": { + "description": "Unique identifier for the building. The maximum length is 100 characters.", + "type": "string" + }, + "buildingName": { + "description": "The building name as seen by users in Calendar. Must be unique for the customer. For example, \"NYC-CHEL\". The maximum length is 100 characters.", + "type": "string" + }, + "coordinates": { + "$ref": "BuildingCoordinates", + "description": "The geographic coordinates of the center of the building, expressed as latitude and longitude in decimal degrees." + }, + "description": { + "description": "A brief description of the building. For example, \"Chelsea Market\".", + "type": "string" + }, + "etags": { + "description": "ETag of the resource.", + "type": "string" + }, + "floorNames": { + "description": "The display names for all floors in this building. The floors are expected to be sorted in ascending order, from lowest floor to highest floor. For example, [\"B2\", \"B1\", \"L\", \"1\", \"2\", \"2M\", \"3\", \"PH\"] Must contain at least one entry.", + "items": { + "type": "string" + }, + "type": "array" + }, + "kind": { + "default": "admin#directory#resources#buildings#Building", + "description": "Kind of resource this is.", + "type": "string" + } + }, + "type": "object" + }, + "BuildingCoordinates": { + "description": "JSON template for coordinates of a building in Directory API.", + "id": "BuildingCoordinates", + "properties": { + "latitude": { + "description": "Latitude in decimal degrees.", + "format": "double", + "type": "number" + }, + "longitude": { + "description": "Longitude in decimal degrees.", + "format": "double", + "type": "number" + } + }, + "type": "object" + }, + "Buildings": { + "description": "JSON template for Building List Response object in Directory API.", + "id": "Buildings", + "properties": { + "buildings": { + "description": "The Buildings in this page of results.", + "items": { + "$ref": "Building" + }, + "type": "array" + }, + "etag": { + "description": "ETag of the resource.", + "type": "string" + }, + "kind": { + "default": "admin#directory#resources#buildings#buildingsList", + "description": "Kind of resource this is.", + "type": "string" + }, + "nextPageToken": { + "description": "The continuation token, used to page through large result sets. Provide this value in a subsequent request to return the next page of results.", + "type": "string" + } + }, + "type": "object" + }, + "CalendarResource": { + "description": "JSON template for Calendar Resource object in Directory API.", + "id": "CalendarResource", + "properties": { + "buildingId": { + "description": "Unique ID for the building a resource is located in.", + "type": "string" + }, + "capacity": { + "description": "Capacity of a resource, number of seats in a room.", + "format": "int32", + "type": "integer" + }, + "etags": { + "description": "ETag of the resource.", + "type": "string" + }, + "featureInstances": { + "type": "any" + }, + "floorName": { + "description": "Name of the floor a resource is located on.", + "type": "string" + }, + "floorSection": { + "description": "Name of the section within a floor a resource is located in.", + "type": "string" + }, + "generatedResourceName": { + "description": "The read-only auto-generated name of the calendar resource which includes metadata about the resource such as building name, floor, capacity, etc. For example, \"NYC-2-Training Room 1A (16)\".", + "type": "string" + }, + "kind": { + "default": "admin#directory#resources#calendars#CalendarResource", + "description": "The type of the resource. For calendar resources, the value is admin#directory#resources#calendars#CalendarResource.", + "type": "string" + }, + "resourceCategory": { + "description": "The category of the calendar resource. Either CONFERENCE_ROOM or OTHER. Legacy data is set to CATEGORY_UNKNOWN.", + "type": "string" + }, + "resourceDescription": { + "description": "Description of the resource, visible only to admins.", + "type": "string" + }, + "resourceEmail": { + "description": "The read-only email for the calendar resource. Generated as part of creating a new calendar resource.", + "type": "string" + }, + "resourceId": { + "description": "The unique ID for the calendar resource.", + "type": "string" + }, + "resourceName": { + "description": "The name of the calendar resource. For example, \"Training Room 1A\".", + "type": "string" + }, + "resourceType": { + "description": "The type of the calendar resource, intended for non-room resources.", + "type": "string" + }, + "userVisibleDescription": { + "description": "Description of the resource, visible to users and admins.", + "type": "string" + } + }, + "type": "object" + }, + "CalendarResources": { + "description": "JSON template for Calendar Resource List Response object in Directory API.", + "id": "CalendarResources", + "properties": { + "etag": { + "description": "ETag of the resource.", + "type": "string" + }, + "items": { + "description": "The CalendarResources in this page of results.", + "items": { + "$ref": "CalendarResource" + }, + "type": "array" + }, + "kind": { + "default": "admin#directory#resources#calendars#calendarResourcesList", + "description": "Identifies this as a collection of CalendarResources. This is always admin#directory#resources#calendars#calendarResourcesList.", + "type": "string" + }, + "nextPageToken": { + "description": "The continuation token, used to page through large result sets. Provide this value in a subsequent request to return the next page of results.", + "type": "string" + } + }, + "type": "object" + }, + "Channel": { + "description": "An notification channel used to watch for resource changes.", + "id": "Channel", + "properties": { + "address": { + "description": "The address where notifications are delivered for this channel.", + "type": "string" + }, + "expiration": { + "description": "Date and time of notification channel expiration, expressed as a Unix timestamp, in milliseconds. Optional.", + "format": "int64", + "type": "string" + }, + "id": { + "description": "A UUID or similar unique string that identifies this channel.", + "type": "string" + }, + "kind": { + "default": "api#channel", + "description": "Identifies this as a notification channel used to watch for changes to a resource. Value: the fixed string \"api#channel\".", + "type": "string" + }, + "params": { + "additionalProperties": { + "description": "Declares a new parameter by name.", + "type": "string" + }, + "description": "Additional parameters controlling delivery channel behavior. Optional.", + "type": "object" + }, + "payload": { + "description": "A Boolean value to indicate whether payload is wanted. Optional.", + "type": "boolean" + }, + "resourceId": { + "description": "An opaque ID that identifies the resource being watched on this channel. Stable across different API versions.", + "type": "string" + }, + "resourceUri": { + "description": "A version-specific identifier for the watched resource.", + "type": "string" + }, + "token": { + "description": "An arbitrary string delivered to the target address with each notification delivered over this channel. Optional.", + "type": "string" + }, + "type": { + "description": "The type of delivery mechanism used for this channel.", + "type": "string" + } + }, + "type": "object" + }, + "ChromeOsDevice": { + "description": "JSON template for Chrome Os Device resource in Directory API.", + "id": "ChromeOsDevice", + "properties": { + "activeTimeRanges": { + "description": "List of active time ranges (Read-only)", + "items": { + "properties": { + "activeTime": { + "description": "Duration in milliseconds", + "format": "int32", + "type": "integer" + }, + "date": { + "description": "Date of usage", + "format": "date", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "annotatedAssetId": { + "description": "AssetId specified during enrollment or through later annotation", + "type": "string" + }, + "annotatedLocation": { + "description": "Address or location of the device as noted by the administrator", + "type": "string" + }, + "annotatedUser": { + "description": "User of the device", + "type": "string" + }, + "bootMode": { + "description": "Chromebook boot mode (Read-only)", + "type": "string" + }, + "deviceFiles": { + "description": "List of device files to download (Read-only)", + "items": { + "properties": { + "createTime": { + "description": "Date and time the file was created", + "format": "date-time", + "type": "string" + }, + "downloadUrl": { + "description": "File download URL", + "type": "string" + }, + "name": { + "description": "File name", + "type": "string" + }, + "type": { + "description": "File type", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "deviceId": { + "description": "Unique identifier of Chrome OS Device (Read-only)", + "type": "string" + }, + "etag": { + "description": "ETag of the resource.", + "type": "string" + }, + "ethernetMacAddress": { + "description": "Chromebook Mac Address on ethernet network interface (Read-only)", + "type": "string" + }, + "firmwareVersion": { + "description": "Chromebook firmware version (Read-only)", + "type": "string" + }, + "kind": { + "default": "admin#directory#chromeosdevice", + "description": "Kind of resource this is.", + "type": "string" + }, + "lastEnrollmentTime": { + "description": "Date and time the device was last enrolled (Read-only)", + "format": "date-time", + "type": "string" + }, + "lastSync": { + "description": "Date and time the device was last synchronized with the policy settings in the G Suite administrator control panel (Read-only)", + "format": "date-time", + "type": "string" + }, + "macAddress": { + "description": "Chromebook Mac Address on wifi network interface (Read-only)", + "type": "string" + }, + "meid": { + "description": "Mobile Equipment identifier for the 3G mobile card in the Chromebook (Read-only)", + "type": "string" + }, + "model": { + "description": "Chromebook Model (Read-only)", + "type": "string" + }, + "notes": { + "description": "Notes added by the administrator", + "type": "string" + }, + "orderNumber": { + "description": "Chromebook order number (Read-only)", + "type": "string" + }, + "orgUnitPath": { + "description": "OrgUnit of the device", + "type": "string" + }, + "osVersion": { + "description": "Chromebook Os Version (Read-only)", + "type": "string" + }, + "platformVersion": { + "description": "Chromebook platform version (Read-only)", + "type": "string" + }, + "recentUsers": { + "description": "List of recent device users, in descending order by last login time (Read-only)", + "items": { + "properties": { + "email": { + "description": "Email address of the user. Present only if the user type is managed", + "type": "string" + }, + "type": { + "description": "The type of the user", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "serialNumber": { + "description": "Chromebook serial number (Read-only)", + "type": "string" + }, + "status": { + "description": "status of the device (Read-only)", + "type": "string" + }, + "supportEndDate": { + "description": "Final date the device will be supported (Read-only)", + "format": "date-time", + "type": "string" + }, + "tpmVersionInfo": { + "description": "Trusted Platform Module (TPM) (Read-only)", + "properties": { + "family": { + "description": "TPM family.", + "type": "string" + }, + "firmwareVersion": { + "description": "TPM firmware version.", + "type": "string" + }, + "manufacturer": { + "description": "TPM manufacturer code.", + "type": "string" + }, + "specLevel": { + "description": "TPM specification level.", + "type": "string" + }, + "tpmModel": { + "description": "TPM model number.", + "type": "string" + }, + "vendorSpecific": { + "description": "Vendor-specific information such as Vendor ID.", + "type": "string" + } + }, + "type": "object" + }, + "willAutoRenew": { + "description": "Will Chromebook auto renew after support end date (Read-only)", + "type": "boolean" + } + }, + "type": "object" + }, + "ChromeOsDeviceAction": { + "description": "JSON request template for firing actions on ChromeOs Device in Directory Devices API.", + "id": "ChromeOsDeviceAction", + "properties": { + "action": { + "annotations": { + "required": [ + "directory.chromeosdevices.action" + ] + }, + "description": "Action to be taken on the ChromeOs Device", + "type": "string" + }, + "deprovisionReason": { + "type": "string" + } + }, + "type": "object" + }, + "ChromeOsDevices": { + "description": "JSON response template for List Chrome OS Devices operation in Directory API.", + "id": "ChromeOsDevices", + "properties": { + "chromeosdevices": { + "description": "List of Chrome OS Device objects.", + "items": { + "$ref": "ChromeOsDevice" + }, + "type": "array" + }, + "etag": { + "description": "ETag of the resource.", + "type": "string" + }, + "kind": { + "default": "admin#directory#chromeosdevices", + "description": "Kind of resource this is.", + "type": "string" + }, + "nextPageToken": { + "description": "Token used to access next page of this result.", + "type": "string" + } + }, + "type": "object" + }, + "ChromeOsMoveDevicesToOu": { + "description": "JSON request template for moving ChromeOs Device to given OU in Directory Devices API.", + "id": "ChromeOsMoveDevicesToOu", + "properties": { + "deviceIds": { + "annotations": { + "required": [ + "directory.chromeosdevices.moveDevicesToOu" + ] + }, + "description": "ChromeOs Devices to be moved to OU", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "Customer": { + "description": "JSON template for Customer Resource object in Directory API.", + "id": "Customer", + "properties": { + "alternateEmail": { + "description": "The customer's secondary contact email address. This email address cannot be on the same domain as the customerDomain", + "type": "string" + }, + "customerCreationTime": { + "description": "The customer's creation time (Readonly)", + "format": "date-time", + "type": "string" + }, + "customerDomain": { + "description": "The customer's primary domain name string. Do not include the www prefix when creating a new customer.", + "type": "string" + }, + "etag": { + "description": "ETag of the resource.", + "type": "string" + }, + "id": { + "description": "The unique ID for the customer's G Suite account. (Readonly)", + "type": "string" + }, + "kind": { + "default": "admin#directory#customer", + "description": "Identifies the resource as a customer. Value: admin#directory#customer", + "type": "string" + }, + "language": { + "description": "The customer's ISO 639-2 language code. The default value is en-US", + "type": "string" + }, + "phoneNumber": { + "description": "The customer's contact phone number in E.164 format.", + "type": "string" + }, + "postalAddress": { + "$ref": "CustomerPostalAddress", + "description": "The customer's postal address information." + } + }, + "type": "object" + }, + "CustomerPostalAddress": { + "description": "JSON template for postal address of a customer.", + "id": "CustomerPostalAddress", + "properties": { + "addressLine1": { + "description": "A customer's physical address. The address can be composed of one to three lines.", + "type": "string" + }, + "addressLine2": { + "description": "Address line 2 of the address.", + "type": "string" + }, + "addressLine3": { + "description": "Address line 3 of the address.", + "type": "string" + }, + "contactName": { + "description": "The customer contact's name.", + "type": "string" + }, + "countryCode": { + "description": "This is a required property. For countryCode information see the ISO 3166 country code elements.", + "type": "string" + }, + "locality": { + "description": "Name of the locality. An example of a locality value is the city of San Francisco.", + "type": "string" + }, + "organizationName": { + "description": "The company or company division name.", + "type": "string" + }, + "postalCode": { + "description": "The postal code. A postalCode example is a postal zip code such as 10009. This is in accordance with - http://portablecontacts.net/draft-spec.html#address_element.", + "type": "string" + }, + "region": { + "description": "Name of the region. An example of a region value is NY for the state of New York.", + "type": "string" + } + }, + "type": "object" + }, + "DomainAlias": { + "description": "JSON template for Domain Alias object in Directory API.", + "id": "DomainAlias", + "properties": { + "creationTime": { + "description": "The creation time of the domain alias. (Read-only).", + "format": "int64", + "type": "string" + }, + "domainAliasName": { + "description": "The domain alias name.", + "type": "string" + }, + "etag": { + "description": "ETag of the resource.", + "type": "string" + }, + "kind": { + "default": "admin#directory#domainAlias", + "description": "Kind of resource this is.", + "type": "string" + }, + "parentDomainName": { + "annotations": { + "required": [ + "directory.domains.insert" + ] + }, + "description": "The parent domain name that the domain alias is associated with. This can either be a primary or secondary domain name within a customer.", + "type": "string" + }, + "verified": { + "description": "Indicates the verification state of a domain alias. (Read-only)", + "type": "boolean" + } + }, + "type": "object" + }, + "DomainAliases": { + "description": "JSON response template to list domain aliases in Directory API.", + "id": "DomainAliases", + "properties": { + "domainAliases": { + "description": "List of domain alias objects.", + "items": { + "$ref": "DomainAlias" + }, + "type": "array" + }, + "etag": { + "description": "ETag of the resource.", + "type": "string" + }, + "kind": { + "default": "admin#directory#domainAliases", + "description": "Kind of resource this is.", + "type": "string" + } + }, + "type": "object" + }, + "Domains": { + "description": "JSON template for Domain object in Directory API.", + "id": "Domains", + "properties": { + "creationTime": { + "description": "Creation time of the domain. (Read-only).", + "format": "int64", + "type": "string" + }, + "domainAliases": { + "description": "List of domain alias objects. (Read-only)", + "items": { + "$ref": "DomainAlias" + }, + "type": "array" + }, + "domainName": { + "annotations": { + "required": [ + "directory.domains.insert" + ] + }, + "description": "The domain name of the customer.", + "type": "string" + }, + "etag": { + "description": "ETag of the resource.", + "type": "string" + }, + "isPrimary": { + "description": "Indicates if the domain is a primary domain (Read-only).", + "type": "boolean" + }, + "kind": { + "default": "admin#directory#domain", + "description": "Kind of resource this is.", + "type": "string" + }, + "verified": { + "description": "Indicates the verification state of a domain. (Read-only).", + "type": "boolean" + } + }, + "type": "object" + }, + "Domains2": { + "description": "JSON response template to list Domains in Directory API.", + "id": "Domains2", + "properties": { + "domains": { + "description": "List of domain objects.", + "items": { + "$ref": "Domains" + }, + "type": "array" + }, + "etag": { + "description": "ETag of the resource.", + "type": "string" + }, + "kind": { + "default": "admin#directory#domains", + "description": "Kind of resource this is.", + "type": "string" + } + }, + "type": "object" + }, + "Feature": { + "description": "JSON template for Feature object in Directory API.", + "id": "Feature", + "properties": { + "etags": { + "description": "ETag of the resource.", + "type": "string" + }, + "kind": { + "default": "admin#directory#resources#features#Feature", + "description": "Kind of resource this is.", + "type": "string" + }, + "name": { + "annotations": { + "required": [ + "directory.resources.features.insert" + ] + }, + "description": "The name of the feature.", + "type": "string" + } + }, + "type": "object" + }, + "FeatureInstance": { + "description": "JSON template for a \"feature instance\".", + "id": "FeatureInstance", + "properties": { + "feature": { + "$ref": "Feature", + "description": "The feature that this is an instance of. A calendar resource may have multiple instances of a feature." + } + }, + "type": "object" + }, + "FeatureRename": { + "description": "JSON request template for renaming a feature.", + "id": "FeatureRename", + "properties": { + "newName": { + "annotations": { + "required": [ + "directory.resources.features.rename" + ] + }, + "description": "New name of the feature.", + "type": "string" + } + }, + "type": "object" + }, + "Features": { + "description": "JSON template for Feature List Response object in Directory API.", + "id": "Features", + "properties": { + "etag": { + "description": "ETag of the resource.", + "type": "string" + }, + "features": { + "description": "The Features in this page of results.", + "items": { + "$ref": "Feature" + }, + "type": "array" + }, + "kind": { + "default": "admin#directory#resources#features#featuresList", + "description": "Kind of resource this is.", + "type": "string" + }, + "nextPageToken": { + "description": "The continuation token, used to page through large result sets. Provide this value in a subsequent request to return the next page of results.", + "type": "string" + } + }, + "type": "object" + }, + "Group": { + "description": "JSON template for Group resource in Directory API.", + "id": "Group", + "properties": { + "adminCreated": { + "description": "Is the group created by admin (Read-only) *", + "type": "boolean" + }, + "aliases": { + "description": "List of aliases (Read-only)", + "items": { + "type": "string" + }, + "type": "array" + }, + "description": { + "description": "Description of the group", + "type": "string" + }, + "directMembersCount": { + "description": "Group direct members count", + "format": "int64", + "type": "string" + }, + "email": { + "annotations": { + "required": [ + "directory.groups.insert" + ] + }, + "description": "Email of Group", + "type": "string" + }, + "etag": { + "description": "ETag of the resource.", + "type": "string" + }, + "id": { + "description": "Unique identifier of Group (Read-only)", + "type": "string" + }, + "kind": { + "default": "admin#directory#group", + "description": "Kind of resource this is.", + "type": "string" + }, + "name": { + "description": "Group name", + "type": "string" + }, + "nonEditableAliases": { + "description": "List of non editable aliases (Read-only)", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "Groups": { + "description": "JSON response template for List Groups operation in Directory API.", + "id": "Groups", + "properties": { + "etag": { + "description": "ETag of the resource.", + "type": "string" + }, + "groups": { + "description": "List of group objects.", + "items": { + "$ref": "Group" + }, + "type": "array" + }, + "kind": { + "default": "admin#directory#groups", + "description": "Kind of resource this is.", + "type": "string" + }, + "nextPageToken": { + "description": "Token used to access next page of this result.", + "type": "string" + } + }, + "type": "object" + }, + "Member": { + "description": "JSON template for Member resource in Directory API.", + "id": "Member", + "properties": { + "email": { + "description": "Email of member (Read-only)", + "type": "string" + }, + "etag": { + "description": "ETag of the resource.", + "type": "string" + }, + "id": { + "description": "Unique identifier of customer member (Read-only) Unique identifier of group (Read-only) Unique identifier of member (Read-only)", + "type": "string" + }, + "kind": { + "default": "admin#directory#member", + "description": "Kind of resource this is.", + "type": "string" + }, + "role": { + "description": "Role of member", + "type": "string" + }, + "status": { + "description": "Status of member (Immutable)", + "type": "string" + }, + "type": { + "description": "Type of member (Immutable)", + "type": "string" + } + }, + "type": "object" + }, + "Members": { + "description": "JSON response template for List Members operation in Directory API.", + "id": "Members", + "properties": { + "etag": { + "description": "ETag of the resource.", + "type": "string" + }, + "kind": { + "default": "admin#directory#members", + "description": "Kind of resource this is.", + "type": "string" + }, + "members": { + "description": "List of member objects.", + "items": { + "$ref": "Member" + }, + "type": "array" + }, + "nextPageToken": { + "description": "Token used to access next page of this result.", + "type": "string" + } + }, + "type": "object" + }, + "MembersHasMember": { + "description": "JSON template for Has Member response in Directory API.", + "id": "MembersHasMember", + "properties": { + "isMember": { + "description": "Identifies whether the given user is a member of the group. Membership can be direct or nested.", + "readOnly": true, + "type": "boolean" + } + }, + "type": "object" + }, + "MobileDevice": { + "description": "JSON template for Mobile Device resource in Directory API.", + "id": "MobileDevice", + "properties": { + "adbStatus": { + "description": "Adb (USB debugging) enabled or disabled on device (Read-only)", + "type": "boolean" + }, + "applications": { + "description": "List of applications installed on Mobile Device", + "items": { + "properties": { + "displayName": { + "description": "Display name of application", + "type": "string" + }, + "packageName": { + "description": "Package name of application", + "type": "string" + }, + "permission": { + "description": "List of Permissions for application", + "items": { + "type": "string" + }, + "type": "array" + }, + "versionCode": { + "description": "Version code of application", + "format": "int32", + "type": "integer" + }, + "versionName": { + "description": "Version name of application", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "basebandVersion": { + "description": "Mobile Device Baseband version (Read-only)", + "type": "string" + }, + "bootloaderVersion": { + "description": "Mobile Device Bootloader version (Read-only)", + "type": "string" + }, + "brand": { + "description": "Mobile Device Brand (Read-only)", + "type": "string" + }, + "buildNumber": { + "description": "Mobile Device Build number (Read-only)", + "type": "string" + }, + "defaultLanguage": { + "description": "The default locale used on the Mobile Device (Read-only)", + "type": "string" + }, + "developerOptionsStatus": { + "description": "Developer options enabled or disabled on device (Read-only)", + "type": "boolean" + }, + "deviceCompromisedStatus": { + "description": "Mobile Device compromised status (Read-only)", + "type": "string" + }, + "deviceId": { + "description": "Mobile Device serial number (Read-only)", + "type": "string" + }, + "devicePasswordStatus": { + "description": "DevicePasswordStatus (Read-only)", + "type": "string" + }, + "email": { + "description": "List of owner user's email addresses (Read-only)", + "items": { + "type": "string" + }, + "type": "array" + }, + "encryptionStatus": { + "description": "Mobile Device Encryption Status (Read-only)", + "type": "string" + }, + "etag": { + "description": "ETag of the resource.", + "type": "string" + }, + "firstSync": { + "description": "Date and time the device was first synchronized with the policy settings in the G Suite administrator control panel (Read-only)", + "format": "date-time", + "type": "string" + }, + "hardware": { + "description": "Mobile Device Hardware (Read-only)", + "type": "string" + }, + "hardwareId": { + "description": "Mobile Device Hardware Id (Read-only)", + "type": "string" + }, + "imei": { + "description": "Mobile Device IMEI number (Read-only)", + "type": "string" + }, + "kernelVersion": { + "description": "Mobile Device Kernel version (Read-only)", + "type": "string" + }, + "kind": { + "default": "admin#directory#mobiledevice", + "description": "Kind of resource this is.", + "type": "string" + }, + "lastSync": { + "description": "Date and time the device was last synchronized with the policy settings in the G Suite administrator control panel (Read-only)", + "format": "date-time", + "type": "string" + }, + "managedAccountIsOnOwnerProfile": { + "description": "Boolean indicating if this account is on owner/primary profile or not (Read-only)", + "type": "boolean" + }, + "manufacturer": { + "description": "Mobile Device manufacturer (Read-only)", + "type": "string" + }, + "meid": { + "description": "Mobile Device MEID number (Read-only)", + "type": "string" + }, + "model": { + "description": "Name of the model of the device", + "type": "string" + }, + "name": { + "description": "List of owner user's names (Read-only)", + "items": { + "type": "string" + }, + "type": "array" + }, + "networkOperator": { + "description": "Mobile Device mobile or network operator (if available) (Read-only)", + "type": "string" + }, + "os": { + "description": "Name of the mobile operating system", + "type": "string" + }, + "otherAccountsInfo": { + "description": "List of accounts added on device (Read-only)", + "items": { + "type": "string" + }, + "type": "array" + }, + "privilege": { + "description": "DMAgentPermission (Read-only)", + "type": "string" + }, + "releaseVersion": { + "description": "Mobile Device release version version (Read-only)", + "type": "string" + }, + "resourceId": { + "description": "Unique identifier of Mobile Device (Read-only)", + "type": "string" + }, + "securityPatchLevel": { + "description": "Mobile Device Security patch level (Read-only)", + "format": "int64", + "type": "string" + }, + "serialNumber": { + "description": "Mobile Device SSN or Serial Number (Read-only)", + "type": "string" + }, + "status": { + "description": "Status of the device (Read-only)", + "type": "string" + }, + "supportsWorkProfile": { + "description": "Work profile supported on device (Read-only)", + "type": "boolean" + }, + "type": { + "description": "The type of device (Read-only)", + "type": "string" + }, + "unknownSourcesStatus": { + "description": "Unknown sources enabled or disabled on device (Read-only)", + "type": "boolean" + }, + "userAgent": { + "description": "Mobile Device user agent", + "type": "string" + }, + "wifiMacAddress": { + "description": "Mobile Device WiFi MAC address (Read-only)", + "type": "string" + } + }, + "type": "object" + }, + "MobileDeviceAction": { + "description": "JSON request template for firing commands on Mobile Device in Directory Devices API.", + "id": "MobileDeviceAction", + "properties": { + "action": { + "annotations": { + "required": [ + "directory.mobiledevices.action" + ] + }, + "description": "Action to be taken on the Mobile Device", + "type": "string" + } + }, + "type": "object" + }, + "MobileDevices": { + "description": "JSON response template for List Mobile Devices operation in Directory API.", + "id": "MobileDevices", + "properties": { + "etag": { + "description": "ETag of the resource.", + "type": "string" + }, + "kind": { + "default": "admin#directory#mobiledevices", + "description": "Kind of resource this is.", + "type": "string" + }, + "mobiledevices": { + "description": "List of Mobile Device objects.", + "items": { + "$ref": "MobileDevice" + }, + "type": "array" + }, + "nextPageToken": { + "description": "Token used to access next page of this result.", + "type": "string" + } + }, + "type": "object" + }, + "Notification": { + "description": "Template for a notification resource.", + "id": "Notification", + "properties": { + "body": { + "description": "Body of the notification (Read-only)", + "type": "string" + }, + "etag": { + "description": "ETag of the resource.", + "type": "string" + }, + "fromAddress": { + "description": "Address from which the notification is received (Read-only)", + "type": "string" + }, + "isUnread": { + "annotations": { + "required": [ + "directory.notifications.patch", + "directory.notifications.update" + ] + }, + "description": "Boolean indicating whether the notification is unread or not.", + "type": "boolean" + }, + "kind": { + "default": "admin#directory#notification", + "description": "The type of the resource.", + "type": "string" + }, + "notificationId": { + "type": "string" + }, + "sendTime": { + "description": "Time at which notification was sent (Read-only)", + "format": "date-time", + "type": "string" + }, + "subject": { + "description": "Subject of the notification (Read-only)", + "type": "string" + } + }, + "type": "object" + }, + "Notifications": { + "description": "Template for notifications list response.", + "id": "Notifications", + "properties": { + "etag": { + "description": "ETag of the resource.", + "type": "string" + }, + "items": { + "description": "List of notifications in this page.", + "items": { + "$ref": "Notification" + }, + "type": "array" + }, + "kind": { + "default": "admin#directory#notifications", + "description": "The type of the resource.", + "type": "string" + }, + "nextPageToken": { + "description": "Token for fetching the next page of notifications.", + "type": "string" + }, + "unreadNotificationsCount": { + "description": "Number of unread notification for the domain.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "OrgUnit": { + "description": "JSON template for Org Unit resource in Directory API.", + "id": "OrgUnit", + "properties": { + "blockInheritance": { + "description": "Should block inheritance", + "type": "boolean" + }, + "description": { + "description": "Description of OrgUnit", + "type": "string" + }, + "etag": { + "description": "ETag of the resource.", + "type": "string" + }, + "kind": { + "default": "admin#directory#orgUnit", + "description": "Kind of resource this is.", + "type": "string" + }, + "name": { + "annotations": { + "required": [ + "directory.orgunits.insert" + ] + }, + "description": "Name of OrgUnit", + "type": "string" + }, + "orgUnitId": { + "description": "Id of OrgUnit", + "type": "string" + }, + "orgUnitPath": { + "description": "Path of OrgUnit", + "type": "string" + }, + "parentOrgUnitId": { + "description": "Id of parent OrgUnit", + "type": "string" + }, + "parentOrgUnitPath": { + "description": "Path of parent OrgUnit", + "type": "string" + } + }, + "type": "object" + }, + "OrgUnits": { + "description": "JSON response template for List Organization Units operation in Directory API.", + "id": "OrgUnits", + "properties": { + "etag": { + "description": "ETag of the resource.", + "type": "string" + }, + "kind": { + "default": "admin#directory#orgUnits", + "description": "Kind of resource this is.", + "type": "string" + }, + "organizationUnits": { + "description": "List of user objects.", + "items": { + "$ref": "OrgUnit" + }, + "type": "array" + } + }, + "type": "object" + }, + "Privilege": { + "description": "JSON template for privilege resource in Directory API.", + "id": "Privilege", + "properties": { + "childPrivileges": { + "description": "A list of child privileges. Privileges for a service form a tree. Each privilege can have a list of child privileges; this list is empty for a leaf privilege.", + "items": { + "$ref": "Privilege" + }, + "type": "array" + }, + "etag": { + "description": "ETag of the resource.", + "type": "string" + }, + "isOuScopable": { + "description": "If the privilege can be restricted to an organization unit.", + "type": "boolean" + }, + "kind": { + "default": "admin#directory#privilege", + "description": "The type of the API resource. This is always admin#directory#privilege.", + "type": "string" + }, + "privilegeName": { + "description": "The name of the privilege.", + "type": "string" + }, + "serviceId": { + "description": "The obfuscated ID of the service this privilege is for.", + "type": "string" + }, + "serviceName": { + "description": "The name of the service this privilege is for.", + "type": "string" + } + }, + "type": "object" + }, + "Privileges": { + "description": "JSON response template for List privileges operation in Directory API.", + "id": "Privileges", + "properties": { + "etag": { + "description": "ETag of the resource.", + "type": "string" + }, + "items": { + "description": "A list of Privilege resources.", + "items": { + "$ref": "Privilege" + }, + "type": "array" + }, + "kind": { + "default": "admin#directory#privileges", + "description": "The type of the API resource. This is always admin#directory#privileges.", + "type": "string" + } + }, + "type": "object" + }, + "Role": { + "description": "JSON template for role resource in Directory API.", + "id": "Role", + "properties": { + "etag": { + "description": "ETag of the resource.", + "type": "string" + }, + "isSuperAdminRole": { + "description": "Returns true if the role is a super admin role.", + "type": "boolean" + }, + "isSystemRole": { + "description": "Returns true if this is a pre-defined system role.", + "type": "boolean" + }, + "kind": { + "default": "admin#directory#role", + "description": "The type of the API resource. This is always admin#directory#role.", + "type": "string" + }, + "roleDescription": { + "description": "A short description of the role.", + "type": "string" + }, + "roleId": { + "description": "ID of the role.", + "format": "int64", + "type": "string" + }, + "roleName": { + "annotations": { + "required": [ + "directory.roles.insert" + ] + }, + "description": "Name of the role.", + "type": "string" + }, + "rolePrivileges": { + "annotations": { + "required": [ + "directory.roles.insert" + ] + }, + "description": "The set of privileges that are granted to this role.", + "items": { + "properties": { + "privilegeName": { + "description": "The name of the privilege.", + "type": "string" + }, + "serviceId": { + "description": "The obfuscated ID of the service this privilege is for.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + } + }, + "type": "object" + }, + "RoleAssignment": { + "description": "JSON template for roleAssignment resource in Directory API.", + "id": "RoleAssignment", + "properties": { + "assignedTo": { + "description": "The unique ID of the user this role is assigned to.", + "type": "string" + }, + "etag": { + "description": "ETag of the resource.", + "type": "string" + }, + "kind": { + "default": "admin#directory#roleAssignment", + "description": "The type of the API resource. This is always admin#directory#roleAssignment.", + "type": "string" + }, + "orgUnitId": { + "description": "If the role is restricted to an organization unit, this contains the ID for the organization unit the exercise of this role is restricted to.", + "type": "string" + }, + "roleAssignmentId": { + "description": "ID of this roleAssignment.", + "format": "int64", + "type": "string" + }, + "roleId": { + "description": "The ID of the role that is assigned.", + "format": "int64", + "type": "string" + }, + "scopeType": { + "description": "The scope in which this role is assigned. Possible values are: \n- CUSTOMER\n- ORG_UNIT", + "type": "string" + } + }, + "type": "object" + }, + "RoleAssignments": { + "description": "JSON response template for List roleAssignments operation in Directory API.", + "id": "RoleAssignments", + "properties": { + "etag": { + "description": "ETag of the resource.", + "type": "string" + }, + "items": { + "description": "A list of RoleAssignment resources.", + "items": { + "$ref": "RoleAssignment" + }, + "type": "array" + }, + "kind": { + "default": "admin#directory#roleAssignments", + "description": "The type of the API resource. This is always admin#directory#roleAssignments.", + "type": "string" + }, + "nextPageToken": { + "type": "string" + } + }, + "type": "object" + }, + "Roles": { + "description": "JSON response template for List roles operation in Directory API.", + "id": "Roles", + "properties": { + "etag": { + "description": "ETag of the resource.", + "type": "string" + }, + "items": { + "description": "A list of Role resources.", + "items": { + "$ref": "Role" + }, + "type": "array" + }, + "kind": { + "default": "admin#directory#roles", + "description": "The type of the API resource. This is always admin#directory#roles.", + "type": "string" + }, + "nextPageToken": { + "type": "string" + } + }, + "type": "object" + }, + "Schema": { + "description": "JSON template for Schema resource in Directory API.", + "id": "Schema", + "properties": { + "etag": { + "description": "ETag of the resource.", + "type": "string" + }, + "fields": { + "annotations": { + "required": [ + "directory.schemas.insert", + "directory.schemas.update" + ] + }, + "description": "Fields of Schema", + "items": { + "$ref": "SchemaFieldSpec" + }, + "type": "array" + }, + "kind": { + "default": "admin#directory#schema", + "description": "Kind of resource this is.", + "type": "string" + }, + "schemaId": { + "description": "Unique identifier of Schema (Read-only)", + "type": "string" + }, + "schemaName": { + "annotations": { + "required": [ + "directory.schemas.insert" + ] + }, + "description": "Schema name", + "type": "string" + } + }, + "type": "object" + }, + "SchemaFieldSpec": { + "description": "JSON template for FieldSpec resource for Schemas in Directory API.", + "id": "SchemaFieldSpec", + "properties": { + "etag": { + "description": "ETag of the resource.", + "type": "string" + }, + "fieldId": { + "description": "Unique identifier of Field (Read-only)", + "type": "string" + }, + "fieldName": { + "annotations": { + "required": [ + "directory.schemas.insert", + "directory.schemas.update" + ] + }, + "description": "Name of the field.", + "type": "string" + }, + "fieldType": { + "annotations": { + "required": [ + "directory.schemas.insert", + "directory.schemas.update" + ] + }, + "description": "Type of the field.", + "type": "string" + }, + "indexed": { + "default": "true", + "description": "Boolean specifying whether the field is indexed or not.", + "type": "boolean" + }, + "kind": { + "default": "admin#directory#schema#fieldspec", + "description": "Kind of resource this is.", + "type": "string" + }, + "multiValued": { + "description": "Boolean specifying whether this is a multi-valued field or not.", + "type": "boolean" + }, + "numericIndexingSpec": { + "description": "Indexing spec for a numeric field. By default, only exact match queries will be supported for numeric fields. Setting the numericIndexingSpec allows range queries to be supported.", + "properties": { + "maxValue": { + "description": "Maximum value of this field. This is meant to be indicative rather than enforced. Values outside this range will still be indexed, but search may not be as performant.", + "format": "double", + "type": "number" + }, + "minValue": { + "description": "Minimum value of this field. This is meant to be indicative rather than enforced. Values outside this range will still be indexed, but search may not be as performant.", + "format": "double", + "type": "number" + } + }, + "type": "object" + }, + "readAccessType": { + "default": "ALL_DOMAIN_USERS", + "description": "Read ACLs on the field specifying who can view values of this field. Valid values are \"ALL_DOMAIN_USERS\" and \"ADMINS_AND_SELF\".", + "type": "string" + } + }, + "type": "object" + }, + "Schemas": { + "description": "JSON response template for List Schema operation in Directory API.", + "id": "Schemas", + "properties": { + "etag": { + "description": "ETag of the resource.", + "type": "string" + }, + "kind": { + "default": "admin#directory#schemas", + "description": "Kind of resource this is.", + "type": "string" + }, + "schemas": { + "description": "List of UserSchema objects.", + "items": { + "$ref": "Schema" + }, + "type": "array" + } + }, + "type": "object" + }, + "Token": { + "description": "JSON template for token resource in Directory API.", + "id": "Token", + "properties": { + "anonymous": { + "description": "Whether the application is registered with Google. The value is true if the application has an anonymous Client ID.", + "type": "boolean" + }, + "clientId": { + "description": "The Client ID of the application the token is issued to.", + "type": "string" + }, + "displayText": { + "description": "The displayable name of the application the token is issued to.", + "type": "string" + }, + "etag": { + "description": "ETag of the resource.", + "type": "string" + }, + "kind": { + "default": "admin#directory#token", + "description": "The type of the API resource. This is always admin#directory#token.", + "type": "string" + }, + "nativeApp": { + "description": "Whether the token is issued to an installed application. The value is true if the application is installed to a desktop or mobile device.", + "type": "boolean" + }, + "scopes": { + "description": "A list of authorization scopes the application is granted.", + "items": { + "type": "string" + }, + "type": "array" + }, + "userKey": { + "description": "The unique ID of the user that issued the token.", + "type": "string" + } + }, + "type": "object" + }, + "Tokens": { + "description": "JSON response template for List tokens operation in Directory API.", + "id": "Tokens", + "properties": { + "etag": { + "description": "ETag of the resource.", + "type": "string" + }, + "items": { + "description": "A list of Token resources.", + "items": { + "$ref": "Token" + }, + "type": "array" + }, + "kind": { + "default": "admin#directory#tokenList", + "description": "The type of the API resource. This is always admin#directory#tokenList.", + "type": "string" + } + }, + "type": "object" + }, + "TrustedAppId": { + "description": "JSON template for Trusted App Ids Resource object in Directory API.", + "id": "TrustedAppId", + "properties": { + "androidPackageName": { + "description": "Android package name.", + "type": "string" + }, + "certificateHashSHA1": { + "description": "SHA1 signature of the app certificate.", + "type": "string" + }, + "certificateHashSHA256": { + "description": "SHA256 signature of the app certificate.", + "type": "string" + }, + "etag": { + "type": "string" + }, + "kind": { + "default": "admin#directory#trustedappid", + "description": "Identifies the resource as a trusted AppId.", + "type": "string" + } + }, + "type": "object" + }, + "TrustedApps": { + "description": "JSON template for Trusted Apps response object of a user in Directory API.", + "id": "TrustedApps", + "properties": { + "etag": { + "description": "ETag of the resource.", + "type": "string" + }, + "kind": { + "default": "admin#directory#trustedapplist", + "description": "Identifies the resource as trusted apps response.", + "type": "string" + }, + "nextPageToken": { + "type": "string" + }, + "trustedApps": { + "description": "Trusted Apps list.", + "items": { + "$ref": "TrustedAppId" + }, + "type": "array" + } + }, + "type": "object" + }, + "User": { + "description": "JSON template for User object in Directory API.", + "id": "User", + "properties": { + "addresses": { + "type": "any" + }, + "agreedToTerms": { + "description": "Indicates if user has agreed to terms (Read-only)", + "readOnly": true, + "type": "boolean" + }, + "aliases": { + "description": "List of aliases (Read-only)", + "items": { + "type": "string" + }, + "readOnly": true, + "type": "array" + }, + "changePasswordAtNextLogin": { + "description": "Boolean indicating if the user should change password in next login", + "type": "boolean" + }, + "creationTime": { + "description": "User's G Suite account creation time. (Read-only)", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "customSchemas": { + "additionalProperties": { + "$ref": "UserCustomProperties" + }, + "description": "Custom fields of the user.", + "type": "object" + }, + "customerId": { + "description": "CustomerId of User (Read-only)", + "readOnly": true, + "type": "string" + }, + "deletionTime": { + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "emails": { + "type": "any" + }, + "etag": { + "description": "ETag of the resource.", + "readOnly": true, + "type": "string" + }, + "externalIds": { + "type": "any" + }, + "gender": { + "type": "any" + }, + "hashFunction": { + "description": "Hash function name for password. Supported are MD5, SHA-1 and crypt", + "type": "string" + }, + "id": { + "description": "Unique identifier of User (Read-only)", + "type": "string" + }, + "ims": { + "type": "any" + }, + "includeInGlobalAddressList": { + "description": "Boolean indicating if user is included in Global Address List", + "type": "boolean" + }, + "ipWhitelisted": { + "description": "Boolean indicating if ip is whitelisted", + "type": "boolean" + }, + "isAdmin": { + "description": "Boolean indicating if the user is admin (Read-only)", + "readOnly": true, + "type": "boolean" + }, + "isDelegatedAdmin": { + "description": "Boolean indicating if the user is delegated admin (Read-only)", + "readOnly": true, + "type": "boolean" + }, + "isEnforcedIn2Sv": { + "description": "Is 2-step verification enforced (Read-only)", + "readOnly": true, + "type": "boolean" + }, + "isEnrolledIn2Sv": { + "description": "Is enrolled in 2-step verification (Read-only)", + "readOnly": true, + "type": "boolean" + }, + "isMailboxSetup": { + "description": "Is mailbox setup (Read-only)", + "readOnly": true, + "type": "boolean" + }, + "keywords": { + "type": "any" + }, + "kind": { + "default": "admin#directory#user", + "description": "Kind of resource this is.", + "readOnly": true, + "type": "string" + }, + "languages": { + "type": "any" + }, + "lastLoginTime": { + "description": "User's last login time. (Read-only)", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "locations": { + "type": "any" + }, + "name": { + "$ref": "UserName", + "annotations": { + "required": [ + "directory.users.insert" + ] + }, + "description": "User's name" + }, + "nonEditableAliases": { + "description": "List of non editable aliases (Read-only)", + "items": { + "type": "string" + }, + "readOnly": true, + "type": "array" + }, + "notes": { + "type": "any" + }, + "orgUnitPath": { + "description": "OrgUnit of User", + "type": "string" + }, + "organizations": { + "type": "any" + }, + "password": { + "annotations": { + "required": [ + "directory.users.insert" + ] + }, + "description": "User's password", + "type": "string" + }, + "phones": { + "type": "any" + }, + "posixAccounts": { + "type": "any" + }, + "primaryEmail": { + "annotations": { + "required": [ + "directory.users.insert" + ] + }, + "description": "username of User", + "type": "string" + }, + "relations": { + "type": "any" + }, + "sshPublicKeys": { + "type": "any" + }, + "suspended": { + "description": "Indicates if user is suspended", + "type": "boolean" + }, + "suspensionReason": { + "description": "Suspension reason if user is suspended (Read-only)", + "readOnly": true, + "type": "string" + }, + "thumbnailPhotoEtag": { + "description": "ETag of the user's photo (Read-only)", + "readOnly": true, + "type": "string" + }, + "thumbnailPhotoUrl": { + "description": "Photo Url of the user (Read-only)", + "readOnly": true, + "type": "string" + }, + "websites": { + "type": "any" + } + }, + "type": "object" + }, + "UserAbout": { + "description": "JSON template for About (notes) of a user in Directory API.", + "id": "UserAbout", + "properties": { + "contentType": { + "description": "About entry can have a type which indicates the content type. It can either be plain or html. By default, notes contents are assumed to contain plain text.", + "type": "string" + }, + "value": { + "description": "Actual value of notes.", + "type": "string" + } + }, + "type": "object" + }, + "UserAddress": { + "description": "JSON template for address.", + "id": "UserAddress", + "properties": { + "country": { + "description": "Country.", + "type": "string" + }, + "countryCode": { + "description": "Country code.", + "type": "string" + }, + "customType": { + "description": "Custom type.", + "type": "string" + }, + "extendedAddress": { + "description": "Extended Address.", + "type": "string" + }, + "formatted": { + "description": "Formatted address.", + "type": "string" + }, + "locality": { + "description": "Locality.", + "type": "string" + }, + "poBox": { + "description": "Other parts of address.", + "type": "string" + }, + "postalCode": { + "description": "Postal code.", + "type": "string" + }, + "primary": { + "description": "If this is user's primary address. Only one entry could be marked as primary.", + "type": "boolean" + }, + "region": { + "description": "Region.", + "type": "string" + }, + "sourceIsStructured": { + "description": "User supplied address was structured. Structured addresses are NOT supported at this time. You might be able to write structured addresses, but any values will eventually be clobbered.", + "type": "boolean" + }, + "streetAddress": { + "description": "Street.", + "type": "string" + }, + "type": { + "description": "Each entry can have a type which indicates standard values of that entry. For example address could be of home, work etc. In addition to the standard type, an entry can have a custom type and can take any value. Such type should have the CUSTOM value as type and also have a customType value.", + "type": "string" + } + }, + "type": "object" + }, + "UserCustomProperties": { + "additionalProperties": { + "type": "any" + }, + "description": "JSON template for a set of custom properties (i.e. all fields in a particular schema)", + "id": "UserCustomProperties", + "type": "object" + }, + "UserEmail": { + "description": "JSON template for an email.", + "id": "UserEmail", + "properties": { + "address": { + "description": "Email id of the user.", + "type": "string" + }, + "customType": { + "description": "Custom Type.", + "type": "string" + }, + "primary": { + "description": "If this is user's primary email. Only one entry could be marked as primary.", + "type": "boolean" + }, + "type": { + "description": "Each entry can have a type which indicates standard types of that entry. For example email could be of home, work etc. In addition to the standard type, an entry can have a custom type and can take any value Such types should have the CUSTOM value as type and also have a customType value.", + "type": "string" + } + }, + "type": "object" + }, + "UserExternalId": { + "description": "JSON template for an externalId entry.", + "id": "UserExternalId", + "properties": { + "customType": { + "description": "Custom type.", + "type": "string" + }, + "type": { + "description": "The type of the Id.", + "type": "string" + }, + "value": { + "description": "The value of the id.", + "type": "string" + } + }, + "type": "object" + }, + "UserGender": { + "id": "UserGender", + "properties": { + "addressMeAs": { + "description": "AddressMeAs. A human-readable string containing the proper way to refer to the profile owner by humans, for example \"he/him/his\" or \"they/them/their\".", + "type": "string" + }, + "customGender": { + "description": "Custom gender.", + "type": "string" + }, + "type": { + "description": "Gender.", + "type": "string" + } + }, + "type": "object" + }, + "UserIm": { + "description": "JSON template for instant messenger of an user.", + "id": "UserIm", + "properties": { + "customProtocol": { + "description": "Custom protocol.", + "type": "string" + }, + "customType": { + "description": "Custom type.", + "type": "string" + }, + "im": { + "description": "Instant messenger id.", + "type": "string" + }, + "primary": { + "description": "If this is user's primary im. Only one entry could be marked as primary.", + "type": "boolean" + }, + "protocol": { + "description": "Protocol used in the instant messenger. It should be one of the values from ImProtocolTypes map. Similar to type, it can take a CUSTOM value and specify the custom name in customProtocol field.", + "type": "string" + }, + "type": { + "description": "Each entry can have a type which indicates standard types of that entry. For example instant messengers could be of home, work etc. In addition to the standard type, an entry can have a custom type and can take any value. Such types should have the CUSTOM value as type and also have a customType value.", + "type": "string" + } + }, + "type": "object" + }, + "UserKeyword": { + "description": "JSON template for a keyword entry.", + "id": "UserKeyword", + "properties": { + "customType": { + "description": "Custom Type.", + "type": "string" + }, + "type": { + "description": "Each entry can have a type which indicates standard type of that entry. For example, keyword could be of type occupation or outlook. In addition to the standard type, an entry can have a custom type and can give it any name. Such types should have the CUSTOM value as type and also have a customType value.", + "type": "string" + }, + "value": { + "description": "Keyword.", + "type": "string" + } + }, + "type": "object" + }, + "UserLanguage": { + "description": "JSON template for a language entry.", + "id": "UserLanguage", + "properties": { + "customLanguage": { + "description": "Other language. User can provide own language name if there is no corresponding Google III language code. If this is set LanguageCode can't be set", + "type": "string" + }, + "languageCode": { + "description": "Language Code. Should be used for storing Google III LanguageCode string representation for language. Illegal values cause SchemaException.", + "type": "string" + } + }, + "type": "object" + }, + "UserLocation": { + "description": "JSON template for a location entry.", + "id": "UserLocation", + "properties": { + "area": { + "description": "Textual location. This is most useful for display purposes to concisely describe the location. For example, \"Mountain View, CA\", \"Near Seattle\", \"US-NYC-9TH 9A209A\".", + "type": "string" + }, + "buildingId": { + "description": "Building Identifier.", + "type": "string" + }, + "customType": { + "description": "Custom Type.", + "type": "string" + }, + "deskCode": { + "description": "Most specific textual code of individual desk location.", + "type": "string" + }, + "floorName": { + "description": "Floor name/number.", + "type": "string" + }, + "floorSection": { + "description": "Floor section. More specific location within the floor. For example, if a floor is divided into sections \"A\", \"B\", and \"C\", this field would identify one of those values.", + "type": "string" + }, + "type": { + "description": "Each entry can have a type which indicates standard types of that entry. For example location could be of types default and desk. In addition to standard type, an entry can have a custom type and can give it any name. Such types should have \"custom\" as type and also have a customType value.", + "type": "string" + } + }, + "type": "object" + }, + "UserMakeAdmin": { + "description": "JSON request template for setting/revoking admin status of a user in Directory API.", + "id": "UserMakeAdmin", + "properties": { + "status": { + "annotations": { + "required": [ + "directory.users.makeAdmin" + ] + }, + "description": "Boolean indicating new admin status of the user", + "type": "boolean" + } + }, + "type": "object" + }, + "UserName": { + "description": "JSON template for name of a user in Directory API.", + "id": "UserName", + "properties": { + "familyName": { + "annotations": { + "required": [ + "directory.users.insert" + ] + }, + "description": "Last Name", + "type": "string" + }, + "fullName": { + "description": "Full Name", + "type": "string" + }, + "givenName": { + "annotations": { + "required": [ + "directory.users.insert" + ] + }, + "description": "First Name", + "type": "string" + } + }, + "type": "object" + }, + "UserOrganization": { + "description": "JSON template for an organization entry.", + "id": "UserOrganization", + "properties": { + "costCenter": { + "description": "The cost center of the users department.", + "type": "string" + }, + "customType": { + "description": "Custom type.", + "type": "string" + }, + "department": { + "description": "Department within the organization.", + "type": "string" + }, + "description": { + "description": "Description of the organization.", + "type": "string" + }, + "domain": { + "description": "The domain to which the organization belongs to.", + "type": "string" + }, + "fullTimeEquivalent": { + "description": "The full-time equivalent percent within the organization (100000 = 100%).", + "format": "int32", + "type": "integer" + }, + "location": { + "description": "Location of the organization. This need not be fully qualified address.", + "type": "string" + }, + "name": { + "description": "Name of the organization", + "type": "string" + }, + "primary": { + "description": "If it user's primary organization.", + "type": "boolean" + }, + "symbol": { + "description": "Symbol of the organization.", + "type": "string" + }, + "title": { + "description": "Title (designation) of the user in the organization.", + "type": "string" + }, + "type": { + "description": "Each entry can have a type which indicates standard types of that entry. For example organization could be of school, work etc. In addition to the standard type, an entry can have a custom type and can give it any name. Such types should have the CUSTOM value as type and also have a CustomType value.", + "type": "string" + } + }, + "type": "object" + }, + "UserPhone": { + "description": "JSON template for a phone entry.", + "id": "UserPhone", + "properties": { + "customType": { + "description": "Custom Type.", + "type": "string" + }, + "primary": { + "description": "If this is user's primary phone or not.", + "type": "boolean" + }, + "type": { + "description": "Each entry can have a type which indicates standard types of that entry. For example phone could be of home_fax, work, mobile etc. In addition to the standard type, an entry can have a custom type and can give it any name. Such types should have the CUSTOM value as type and also have a customType value.", + "type": "string" + }, + "value": { + "description": "Phone number.", + "type": "string" + } + }, + "type": "object" + }, + "UserPhoto": { + "description": "JSON template for Photo object in Directory API.", + "id": "UserPhoto", + "properties": { + "etag": { + "description": "ETag of the resource.", + "type": "string" + }, + "height": { + "description": "Height in pixels of the photo", + "format": "int32", + "type": "integer" + }, + "id": { + "description": "Unique identifier of User (Read-only)", + "type": "string" + }, + "kind": { + "default": "admin#directory#user#photo", + "description": "Kind of resource this is.", + "type": "string" + }, + "mimeType": { + "description": "Mime Type of the photo", + "type": "string" + }, + "photoData": { + "annotations": { + "required": [ + "directory.users.photos.update" + ] + }, + "description": "Base64 encoded photo data", + "format": "byte", + "type": "string" + }, + "primaryEmail": { + "description": "Primary email of User (Read-only)", + "type": "string" + }, + "width": { + "description": "Width in pixels of the photo", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "UserPosixAccount": { + "description": "JSON template for a POSIX account entry. Description of the field family: go/fbs-posix.", + "id": "UserPosixAccount", + "properties": { + "accountId": { + "description": "A POSIX account field identifier. (Read-only)", + "readOnly": true, + "type": "string" + }, + "gecos": { + "description": "The GECOS (user information) for this account.", + "type": "string" + }, + "gid": { + "description": "The default group ID.", + "format": "uint64", + "type": "string" + }, + "homeDirectory": { + "description": "The path to the home directory for this account.", + "type": "string" + }, + "primary": { + "description": "If this is user's primary account within the SystemId.", + "type": "boolean" + }, + "shell": { + "description": "The path to the login shell for this account.", + "type": "string" + }, + "systemId": { + "description": "System identifier for which account Username or Uid apply to.", + "type": "string" + }, + "uid": { + "description": "The POSIX compliant user ID.", + "format": "uint64", + "type": "string" + }, + "username": { + "description": "The username of the account.", + "type": "string" + } + }, + "type": "object" + }, + "UserRelation": { + "description": "JSON template for a relation entry.", + "id": "UserRelation", + "properties": { + "customType": { + "description": "Custom Type.", + "type": "string" + }, + "type": { + "description": "The relation of the user. Some of the possible values are mother, father, sister, brother, manager, assistant, partner.", + "type": "string" + }, + "value": { + "description": "The name of the relation.", + "type": "string" + } + }, + "type": "object" + }, + "UserSshPublicKey": { + "description": "JSON template for a POSIX account entry.", + "id": "UserSshPublicKey", + "properties": { + "expirationTimeUsec": { + "description": "An expiration time in microseconds since epoch.", + "format": "int64", + "type": "string" + }, + "fingerprint": { + "description": "A SHA-256 fingerprint of the SSH public key. (Read-only)", + "readOnly": true, + "type": "string" + }, + "key": { + "description": "An SSH public key.", + "type": "string" + } + }, + "type": "object" + }, + "UserUndelete": { + "description": "JSON request template to undelete a user in Directory API.", + "id": "UserUndelete", + "properties": { + "orgUnitPath": { + "description": "OrgUnit of User", + "type": "string" + } + }, + "type": "object" + }, + "UserWebsite": { + "description": "JSON template for a website entry.", + "id": "UserWebsite", + "properties": { + "customType": { + "description": "Custom Type.", + "type": "string" + }, + "primary": { + "description": "If this is user's primary website or not.", + "type": "boolean" + }, + "type": { + "description": "Each entry can have a type which indicates standard types of that entry. For example website could be of home, work, blog etc. In addition to the standard type, an entry can have a custom type and can give it any name. Such types should have the CUSTOM value as type and also have a customType value.", + "type": "string" + }, + "value": { + "description": "Website.", + "type": "string" + } + }, + "type": "object" + }, + "Users": { + "description": "JSON response template for List Users operation in Apps Directory API.", + "id": "Users", + "properties": { + "etag": { + "description": "ETag of the resource.", + "type": "string" + }, + "kind": { + "default": "admin#directory#users", + "description": "Kind of resource this is.", + "type": "string" + }, + "nextPageToken": { + "description": "Token used to access next page of this result.", + "type": "string" + }, + "trigger_event": { + "description": "Event that triggered this response (only used in case of Push Response)", + "type": "string" + }, + "users": { + "description": "List of user objects.", + "items": { + "$ref": "User" + }, + "type": "array" + } + }, + "type": "object" + }, + "VerificationCode": { + "description": "JSON template for verification codes in Directory API.", + "id": "VerificationCode", + "properties": { + "etag": { + "description": "ETag of the resource.", + "type": "string" + }, + "kind": { + "default": "admin#directory#verificationCode", + "description": "The type of the resource. This is always admin#directory#verificationCode.", + "type": "string" + }, + "userId": { + "description": "The obfuscated unique ID of the user.", + "type": "string" + }, + "verificationCode": { + "description": "A current verification code for the user. Invalidated or used verification codes are not returned as part of the result.", + "type": "string" + } + }, + "type": "object" + }, + "VerificationCodes": { + "description": "JSON response template for List verification codes operation in Directory API.", + "id": "VerificationCodes", + "properties": { + "etag": { + "description": "ETag of the resource.", + "type": "string" + }, + "items": { + "description": "A list of verification code resources.", + "items": { + "$ref": "VerificationCode" + }, + "type": "array" + }, + "kind": { + "default": "admin#directory#verificationCodesList", + "description": "The type of the resource. This is always admin#directory#verificationCodesList.", + "type": "string" + } + }, + "type": "object" } - } }, - "verificationCodes": { - "methods": { - "generate": { - "id": "directory.verificationCodes.generate", - "path": "users/{userKey}/verificationCodes/generate", - "httpMethod": "POST", - "description": "Generate new backup verification codes for the user.", - "parameters": { - "userKey": { - "type": "string", - "description": "Email or immutable ID of the user", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "userKey" - ], - "scopes": [ - "https://www.googleapis.com/auth/admin.directory.user.security" - ] - }, - "invalidate": { - "id": "directory.verificationCodes.invalidate", - "path": "users/{userKey}/verificationCodes/invalidate", - "httpMethod": "POST", - "description": "Invalidate the current backup verification codes for the user.", - "parameters": { - "userKey": { - "type": "string", - "description": "Email or immutable ID of the user", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "userKey" - ], - "scopes": [ - "https://www.googleapis.com/auth/admin.directory.user.security" - ] - }, - "list": { - "id": "directory.verificationCodes.list", - "path": "users/{userKey}/verificationCodes", - "httpMethod": "GET", - "description": "Returns the current set of valid backup verification codes for the specified user.", - "parameters": { - "userKey": { - "type": "string", - "description": "Identifies the user in the API request. The value can be the user's primary email address, alias email address, or unique user ID.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "userKey" - ], - "response": { - "$ref": "VerificationCodes" - }, - "scopes": [ - "https://www.googleapis.com/auth/admin.directory.user.security" - ] - } - } - } - } -} + "servicePath": "admin/directory/v1/", + "title": "Admin Directory API", + "version": "directory_v1" +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/admin/directory/v1/admin-gen.go b/vendor/google.golang.org/api/admin/directory/v1/admin-gen.go index 28fa2d189..90fcc2848 100644 --- a/vendor/google.golang.org/api/admin/directory/v1/admin-gen.go +++ b/vendor/google.golang.org/api/admin/directory/v1/admin-gen.go @@ -1132,6 +1132,7 @@ type ChromeOsDevice struct { // SupportEndDate: Final date the device will be supported (Read-only) SupportEndDate string `json:"supportEndDate,omitempty"` + // TpmVersionInfo: Trusted Platform Module (TPM) (Read-only) TpmVersionInfo *ChromeOsDeviceTpmVersionInfo `json:"tpmVersionInfo,omitempty"` // WillAutoRenew: Will Chromebook auto renew after support end date @@ -1200,7 +1201,7 @@ type ChromeOsDeviceDeviceFiles struct { // CreateTime: Date and time the file was created CreateTime string `json:"createTime,omitempty"` - // DownloadUrl: File downlod URL + // DownloadUrl: File download URL DownloadUrl string `json:"downloadUrl,omitempty"` // Name: File name @@ -1263,17 +1264,25 @@ func (s *ChromeOsDeviceRecentUsers) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// ChromeOsDeviceTpmVersionInfo: Trusted Platform Module (TPM) +// (Read-only) type ChromeOsDeviceTpmVersionInfo struct { + // Family: TPM family. Family string `json:"family,omitempty"` + // FirmwareVersion: TPM firmware version. FirmwareVersion string `json:"firmwareVersion,omitempty"` + // Manufacturer: TPM manufacturer code. Manufacturer string `json:"manufacturer,omitempty"` + // SpecLevel: TPM specification level. SpecLevel string `json:"specLevel,omitempty"` + // TpmModel: TPM model number. TpmModel string `json:"tpmModel,omitempty"` + // VendorSpecific: Vendor-specific information such as Vendor ID. VendorSpecific string `json:"vendorSpecific,omitempty"` // ForceSendFields is a list of field names (e.g. "Family") to @@ -1740,6 +1749,8 @@ func (s *Feature) MarshalJSON() ([]byte, error) { // FeatureInstance: JSON template for a "feature instance". type FeatureInstance struct { + // Feature: The feature that this is an instance of. A calendar resource + // may have multiple instances of a feature. Feature *Feature `json:"feature,omitempty"` // ForceSendFields is a list of field names (e.g. "Feature") to @@ -2035,7 +2046,8 @@ func (s *Members) MarshalJSON() ([]byte, error) { // MembersHasMember: JSON template for Has Member response in Directory // API. type MembersHasMember struct { - // IsMember: Identifies whether given user is a member or not. + // IsMember: Identifies whether the given user is a member of the group. + // Membership can be direct or nested. IsMember bool `json:"isMember,omitempty"` // ServerResponse contains the HTTP response code and headers from the @@ -8766,7 +8778,8 @@ type MembersHasMemberCall struct { header_ http.Header } -// HasMember: Checks Membership of an user within a Group +// HasMember: Checks whether the given user is a member of the group. +// Membership can be direct or nested. func (r *MembersService) HasMember(groupKey string, memberKey string) *MembersHasMemberCall { c := &MembersHasMemberCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.groupKey = groupKey @@ -8869,7 +8882,7 @@ func (c *MembersHasMemberCall) Do(opts ...googleapi.CallOption) (*MembersHasMemb } return ret, nil // { - // "description": "Checks Membership of an user within a Group", + // "description": "Checks whether the given user is a member of the group. Membership can be direct or nested.", // "httpMethod": "GET", // "id": "directory.members.hasMember", // "parameterOrder": [ @@ -8878,13 +8891,13 @@ func (c *MembersHasMemberCall) Do(opts ...googleapi.CallOption) (*MembersHasMemb // ], // "parameters": { // "groupKey": { - // "description": "Email or immutable Id of the group", + // "description": "Identifies the group in the API request. The value can be the group's email address, group alias, or the unique group ID.", // "location": "path", // "required": true, // "type": "string" // }, // "memberKey": { - // "description": "Email or immutable Id of the member", + // "description": "Identifies the user member in the API request. The value can be the user's primary email address, alias, or unique ID.", // "location": "path", // "required": true, // "type": "string" @@ -12578,6 +12591,20 @@ func (r *ResourcesBuildingsService) List(customer string) *ResourcesBuildingsLis return c } +// MaxResults sets the optional parameter "maxResults": Maximum number +// of results to return. +func (c *ResourcesBuildingsListCall) MaxResults(maxResults int64) *ResourcesBuildingsListCall { + c.urlParams_.Set("maxResults", fmt.Sprint(maxResults)) + return c +} + +// PageToken sets the optional parameter "pageToken": Token to specify +// the next page in the list. +func (c *ResourcesBuildingsListCall) PageToken(pageToken string) *ResourcesBuildingsListCall { + c.urlParams_.Set("pageToken", pageToken) + return c +} + // Fields allows partial responses to be retrieved. See // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse // for more information. @@ -12684,6 +12711,19 @@ func (c *ResourcesBuildingsListCall) Do(opts ...googleapi.CallOption) (*Building // "location": "path", // "required": true, // "type": "string" + // }, + // "maxResults": { + // "description": "Maximum number of results to return.", + // "format": "int32", + // "location": "query", + // "maximum": "500", + // "minimum": "1", + // "type": "integer" + // }, + // "pageToken": { + // "description": "Token to specify the next page in the list.", + // "location": "query", + // "type": "string" // } // }, // "path": "customer/{customer}/resources/buildings", @@ -12698,6 +12738,27 @@ func (c *ResourcesBuildingsListCall) Do(opts ...googleapi.CallOption) (*Building } +// Pages invokes f for each page of results. +// A non-nil error returned from f will halt the iteration. +// The provided context supersedes any context provided to the Context method. +func (c *ResourcesBuildingsListCall) Pages(ctx context.Context, f func(*Buildings) error) error { + c.ctx_ = ctx + defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point + for { + x, err := c.Do() + if err != nil { + return err + } + if err := f(x); err != nil { + return err + } + if x.NextPageToken == "" { + return nil + } + c.PageToken(x.NextPageToken) + } +} + // method id "directory.resources.buildings.patch": type ResourcesBuildingsPatchCall struct { @@ -13418,8 +13479,11 @@ func (c *ResourcesCalendarsListCall) PageToken(pageToken string) *ResourcesCalen // filter results. Should be of the form "field operator value" where // field can be any of supported fields and operators can be any of // supported operations. Operators include '=' for exact match and ':' -// for prefix match where applicable. For prefix match, the value should -// always be followed by a *. +// for prefix match or HAS match where applicable. For prefix match, the +// value should always be followed by a *. Supported fields include +// generatedResourceName, name, buildingId, +// featureInstances.feature.name. For example buildingId=US-NYC-9TH AND +// featureInstances.feature.name:Phone. func (c *ResourcesCalendarsListCall) Query(query string) *ResourcesCalendarsListCall { c.urlParams_.Set("query", query) return c @@ -13551,7 +13615,7 @@ func (c *ResourcesCalendarsListCall) Do(opts ...googleapi.CallOption) (*Calendar // "type": "string" // }, // "query": { - // "description": "String query used to filter results. Should be of the form \"field operator value\" where field can be any of supported fields and operators can be any of supported operations. Operators include '=' for exact match and ':' for prefix match where applicable. For prefix match, the value should always be followed by a *.", + // "description": "String query used to filter results. Should be of the form \"field operator value\" where field can be any of supported fields and operators can be any of supported operations. Operators include '=' for exact match and ':' for prefix match or HAS match where applicable. For prefix match, the value should always be followed by a *. Supported fields include generatedResourceName, name, buildingId, featureInstances.feature.name. For example buildingId=US-NYC-9TH AND featureInstances.feature.name:Phone.", // "location": "query", // "type": "string" // } @@ -14287,6 +14351,13 @@ func (r *ResourcesFeaturesService) List(customer string) *ResourcesFeaturesListC return c } +// MaxResults sets the optional parameter "maxResults": Maximum number +// of results to return. +func (c *ResourcesFeaturesListCall) MaxResults(maxResults int64) *ResourcesFeaturesListCall { + c.urlParams_.Set("maxResults", fmt.Sprint(maxResults)) + return c +} + // PageToken sets the optional parameter "pageToken": Token to specify // the next page in the list. func (c *ResourcesFeaturesListCall) PageToken(pageToken string) *ResourcesFeaturesListCall { @@ -14401,6 +14472,14 @@ func (c *ResourcesFeaturesListCall) Do(opts ...googleapi.CallOption) (*Features, // "required": true, // "type": "string" // }, + // "maxResults": { + // "description": "Maximum number of results to return.", + // "format": "int32", + // "location": "query", + // "maximum": "500", + // "minimum": "1", + // "type": "integer" + // }, // "pageToken": { // "description": "Token to specify the next page in the list.", // "location": "query", diff --git a/vendor/google.golang.org/api/admin/reports/v1/admin-api.json b/vendor/google.golang.org/api/admin/reports/v1/admin-api.json index e20f1d524..53fb5d642 100644 --- a/vendor/google.golang.org/api/admin/reports/v1/admin-api.json +++ b/vendor/google.golang.org/api/admin/reports/v1/admin-api.json @@ -1,822 +1,822 @@ { - "kind": "discovery#restDescription", - "etag": "\"YWOzh2SDasdU84ArJnpYek-OMdg/bw0JROoLapnynZnUYWv2Bypz6Uk\"", - "discoveryVersion": "v1", - "id": "admin:reports_v1", - "name": "admin", - "canonicalName": "reports", - "version": "reports_v1", - "revision": "20180110", - "title": "Admin Reports API", - "description": "Fetches reports for the administrators of G Suite customers about the usage, collaboration, security, and risk for their users.", - "ownerDomain": "google.com", - "ownerName": "Google", - "packagePath": "admin", - "icons": { - "x16": "https://www.gstatic.com/images/branding/product/1x/googleg_16dp.png", - "x32": "https://www.gstatic.com/images/branding/product/1x/googleg_32dp.png" - }, - "documentationLink": "https://developers.google.com/admin-sdk/reports/", - "protocol": "rest", - "baseUrl": "https://www.googleapis.com/admin/reports/v1/", - "basePath": "/admin/reports/v1/", - "rootUrl": "https://www.googleapis.com/", - "servicePath": "admin/reports/v1/", - "batchPath": "batch/admin/reports_v1", - "parameters": { - "alt": { - "type": "string", - "description": "Data format for the response.", - "default": "json", - "enum": [ - "json" - ], - "enumDescriptions": [ - "Responses with Content-Type of application/json" - ], - "location": "query" - }, - "fields": { - "type": "string", - "description": "Selector specifying which fields to include in a partial response.", - "location": "query" - }, - "key": { - "type": "string", - "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" - }, - "oauth_token": { - "type": "string", - "description": "OAuth 2.0 token for the current user.", - "location": "query" - }, - "prettyPrint": { - "type": "boolean", - "description": "Returns response with indentations and line breaks.", - "default": "true", - "location": "query" - }, - "quotaUser": { - "type": "string", - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", - "location": "query" - }, - "userIp": { - "type": "string", - "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", - "location": "query" - } - }, - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/admin.reports.audit.readonly": { - "description": "View audit reports for your G Suite domain" - }, - "https://www.googleapis.com/auth/admin.reports.usage.readonly": { - "description": "View usage reports for your G Suite domain" - } - } - } - }, - "schemas": { - "Activities": { - "id": "Activities", - "type": "object", - "description": "JSON template for a collection of activites.", - "properties": { - "etag": { - "type": "string", - "description": "ETag of the resource." - }, - "items": { - "type": "array", - "description": "Each record in read response.", - "items": { - "$ref": "Activity" - } - }, - "kind": { - "type": "string", - "description": "Kind of list response this is.", - "default": "admin#reports#activities" - }, - "nextPageToken": { - "type": "string", - "description": "Token for retrieving the next page" - } - } - }, - "Activity": { - "id": "Activity", - "type": "object", - "description": "JSON template for the activity resource.", - "properties": { - "actor": { - "type": "object", - "description": "User doing the action.", - "properties": { - "callerType": { - "type": "string", - "description": "User or OAuth 2LO request." - }, - "email": { - "type": "string", - "description": "Email address of the user." - }, - "key": { - "type": "string", - "description": "For OAuth 2LO API requests, consumer_key of the requestor." - }, - "profileId": { - "type": "string", - "description": "Obfuscated user id of the user." + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/admin.reports.audit.readonly": { + "description": "View audit reports for your G Suite domain" + }, + "https://www.googleapis.com/auth/admin.reports.usage.readonly": { + "description": "View usage reports for your G Suite domain" + } } - } + } + }, + "basePath": "/admin/reports/v1/", + "baseUrl": "https://www.googleapis.com/admin/reports/v1/", + "batchPath": "batch/admin/reports_v1", + "canonicalName": "reports", + "description": "Fetches reports for the administrators of G Suite customers about the usage, collaboration, security, and risk for their users.", + "discoveryVersion": "v1", + "documentationLink": "https://developers.google.com/admin-sdk/reports/", + "etag": "\"-iA1DTNe4s-I6JZXPt1t1Ypy8IU/bw0JROoLapnynZnUYWv2Bypz6Uk\"", + "icons": { + "x16": "https://www.gstatic.com/images/branding/product/1x/googleg_16dp.png", + "x32": "https://www.gstatic.com/images/branding/product/1x/googleg_32dp.png" + }, + "id": "admin:reports_v1", + "kind": "discovery#restDescription", + "name": "admin", + "ownerDomain": "google.com", + "ownerName": "Google", + "packagePath": "admin", + "parameters": { + "alt": { + "default": "json", + "description": "Data format for the response.", + "enum": [ + "json" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json" + ], + "location": "query", + "type": "string" }, - "etag": { - "type": "string", - "description": "ETag of the entry." + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "location": "query", + "type": "string" }, - "events": { - "type": "array", - "description": "Activity events.", - "items": { - "type": "object", + "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" + }, + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", + "location": "query", + "type": "string" + }, + "userIp": { + "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", + "location": "query", + "type": "string" + } + }, + "protocol": "rest", + "resources": { + "activities": { + "methods": { + "list": { + "description": "Retrieves a list of activities for a specific customer and application.", + "httpMethod": "GET", + "id": "reports.activities.list", + "parameterOrder": [ + "userKey", + "applicationName" + ], + "parameters": { + "actorIpAddress": { + "description": "IP Address of host where the event was performed. Supports both IPv4 and IPv6 addresses.", + "location": "query", + "type": "string" + }, + "applicationName": { + "description": "Application name for which the events are to be retrieved.", + "location": "path", + "pattern": "(admin)|(calendar)|(drive)|(login)|(mobile)|(token)|(groups)|(saml)|(chat)|(gplus)|(rules)", + "required": true, + "type": "string" + }, + "customerId": { + "description": "Represents the customer for which the data is to be fetched.", + "location": "query", + "pattern": "C.+", + "type": "string" + }, + "endTime": { + "description": "Return events which occurred at or before this time.", + "location": "query", + "pattern": "(\\d\\d\\d\\d)-(\\d\\d)-(\\d\\d)T(\\d\\d):(\\d\\d):(\\d\\d)(?:\\.(\\d+))?(?:(Z)|([-+])(\\d\\d):(\\d\\d))", + "type": "string" + }, + "eventName": { + "description": "Name of the event being queried.", + "location": "query", + "type": "string" + }, + "filters": { + "description": "Event parameters in the form [parameter1 name][operator][parameter1 value],[parameter2 name][operator][parameter2 value],...", + "location": "query", + "pattern": "(.+[\u003c,\u003c=,==,\u003e=,\u003e,\u003c\u003e].+,)*(.+[\u003c,\u003c=,==,\u003e=,\u003e,\u003c\u003e].+)", + "type": "string" + }, + "maxResults": { + "description": "Number of activity records to be shown in each page.", + "format": "int32", + "location": "query", + "maximum": "1000", + "minimum": "1", + "type": "integer" + }, + "pageToken": { + "description": "Token to specify next page.", + "location": "query", + "type": "string" + }, + "startTime": { + "description": "Return events which occurred at or after this time.", + "location": "query", + "pattern": "(\\d\\d\\d\\d)-(\\d\\d)-(\\d\\d)T(\\d\\d):(\\d\\d):(\\d\\d)(?:\\.(\\d+))?(?:(Z)|([-+])(\\d\\d):(\\d\\d))", + "type": "string" + }, + "userKey": { + "description": "Represents the profile id or the user email for which the data should be filtered. When 'all' is specified as the userKey, it returns usageReports for all users.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "activity/users/{userKey}/applications/{applicationName}", + "response": { + "$ref": "Activities" + }, + "scopes": [ + "https://www.googleapis.com/auth/admin.reports.audit.readonly" + ], + "supportsSubscription": true + }, + "watch": { + "description": "Push changes to activities", + "httpMethod": "POST", + "id": "reports.activities.watch", + "parameterOrder": [ + "userKey", + "applicationName" + ], + "parameters": { + "actorIpAddress": { + "description": "IP Address of host where the event was performed. Supports both IPv4 and IPv6 addresses.", + "location": "query", + "type": "string" + }, + "applicationName": { + "description": "Application name for which the events are to be retrieved.", + "location": "path", + "pattern": "(admin)|(calendar)|(drive)|(login)|(mobile)|(token)|(groups)|(saml)|(chat)|(gplus)|(rules)", + "required": true, + "type": "string" + }, + "customerId": { + "description": "Represents the customer for which the data is to be fetched.", + "location": "query", + "pattern": "C.+", + "type": "string" + }, + "endTime": { + "description": "Return events which occurred at or before this time.", + "location": "query", + "pattern": "(\\d\\d\\d\\d)-(\\d\\d)-(\\d\\d)T(\\d\\d):(\\d\\d):(\\d\\d)(?:\\.(\\d+))?(?:(Z)|([-+])(\\d\\d):(\\d\\d))", + "type": "string" + }, + "eventName": { + "description": "Name of the event being queried.", + "location": "query", + "type": "string" + }, + "filters": { + "description": "Event parameters in the form [parameter1 name][operator][parameter1 value],[parameter2 name][operator][parameter2 value],...", + "location": "query", + "pattern": "(.+[\u003c,\u003c=,==,\u003e=,\u003e,\u003c\u003e].+,)*(.+[\u003c,\u003c=,==,\u003e=,\u003e,\u003c\u003e].+)", + "type": "string" + }, + "maxResults": { + "description": "Number of activity records to be shown in each page.", + "format": "int32", + "location": "query", + "maximum": "1000", + "minimum": "1", + "type": "integer" + }, + "pageToken": { + "description": "Token to specify next page.", + "location": "query", + "type": "string" + }, + "startTime": { + "description": "Return events which occurred at or after this time.", + "location": "query", + "pattern": "(\\d\\d\\d\\d)-(\\d\\d)-(\\d\\d)T(\\d\\d):(\\d\\d):(\\d\\d)(?:\\.(\\d+))?(?:(Z)|([-+])(\\d\\d):(\\d\\d))", + "type": "string" + }, + "userKey": { + "description": "Represents the profile id or the user email for which the data should be filtered. When 'all' is specified as the userKey, it returns usageReports for all users.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "activity/users/{userKey}/applications/{applicationName}/watch", + "request": { + "$ref": "Channel", + "parameterName": "resource" + }, + "response": { + "$ref": "Channel" + }, + "scopes": [ + "https://www.googleapis.com/auth/admin.reports.audit.readonly" + ], + "supportsSubscription": true + } + } + }, + "channels": { + "methods": { + "stop": { + "description": "Stop watching resources through this channel", + "httpMethod": "POST", + "id": "admin.channels.stop", + "path": "/admin/reports_v1/channels/stop", + "request": { + "$ref": "Channel", + "parameterName": "resource" + }, + "scopes": [ + "https://www.googleapis.com/auth/admin.reports.audit.readonly" + ] + } + } + }, + "customerUsageReports": { + "methods": { + "get": { + "description": "Retrieves a report which is a collection of properties / statistics for a specific customer.", + "httpMethod": "GET", + "id": "reports.customerUsageReports.get", + "parameterOrder": [ + "date" + ], + "parameters": { + "customerId": { + "description": "Represents the customer for which the data is to be fetched.", + "location": "query", + "pattern": "C.+", + "type": "string" + }, + "date": { + "description": "Represents the date in yyyy-mm-dd format for which the data is to be fetched.", + "location": "path", + "pattern": "(\\d){4}-(\\d){2}-(\\d){2}", + "required": true, + "type": "string" + }, + "pageToken": { + "description": "Token to specify next page.", + "location": "query", + "type": "string" + }, + "parameters": { + "description": "Represents the application name, parameter name pairs to fetch in csv as app_name1:param_name1, app_name2:param_name2.", + "location": "query", + "pattern": "(((accounts)|(app_maker)|(apps_scripts)|(classroom)|(cros)|(gmail)|(calendar)|(docs)|(gplus)|(sites)|(device_management)|(drive)|(meet)):[^,]+,)*(((accounts)|(app_maker)|(apps_scripts)|(classroom)|(cros)|(gmail)|(calendar)|(docs)|(gplus)|(sites)|(device_management)|(drive)|(meet)):[^,]+)", + "type": "string" + } + }, + "path": "usage/dates/{date}", + "response": { + "$ref": "UsageReports" + }, + "scopes": [ + "https://www.googleapis.com/auth/admin.reports.usage.readonly" + ] + } + } + }, + "entityUsageReports": { + "methods": { + "get": { + "description": "Retrieves a report which is a collection of properties / statistics for a set of objects.", + "httpMethod": "GET", + "id": "reports.entityUsageReports.get", + "parameterOrder": [ + "entityType", + "entityKey", + "date" + ], + "parameters": { + "customerId": { + "description": "Represents the customer for which the data is to be fetched.", + "location": "query", + "pattern": "C.+", + "type": "string" + }, + "date": { + "description": "Represents the date in yyyy-mm-dd format for which the data is to be fetched.", + "location": "path", + "pattern": "(\\d){4}-(\\d){2}-(\\d){2}", + "required": true, + "type": "string" + }, + "entityKey": { + "description": "Represents the key of object for which the data should be filtered.", + "location": "path", + "required": true, + "type": "string" + }, + "entityType": { + "description": "Type of object. Should be one of - gplus_communities.", + "location": "path", + "pattern": "(gplus_communities)", + "required": true, + "type": "string" + }, + "filters": { + "description": "Represents the set of filters including parameter operator value.", + "location": "query", + "pattern": "(((gplus)):[a-z0-9_]+[\u003c,\u003c=,==,\u003e=,\u003e,!=][^,]+,)*(((gplus)):[a-z0-9_]+[\u003c,\u003c=,==,\u003e=,\u003e,!=][^,]+)", + "type": "string" + }, + "maxResults": { + "description": "Maximum number of results to return. Maximum allowed is 1000", + "format": "uint32", + "location": "query", + "maximum": "1000", + "type": "integer" + }, + "pageToken": { + "description": "Token to specify next page.", + "location": "query", + "type": "string" + }, + "parameters": { + "description": "Represents the application name, parameter name pairs to fetch in csv as app_name1:param_name1, app_name2:param_name2.", + "location": "query", + "pattern": "(((gplus)):[^,]+,)*(((gplus)):[^,]+)", + "type": "string" + } + }, + "path": "usage/{entityType}/{entityKey}/dates/{date}", + "response": { + "$ref": "UsageReports" + }, + "scopes": [ + "https://www.googleapis.com/auth/admin.reports.usage.readonly" + ] + } + } + }, + "userUsageReport": { + "methods": { + "get": { + "description": "Retrieves a report which is a collection of properties / statistics for a set of users.", + "httpMethod": "GET", + "id": "reports.userUsageReport.get", + "parameterOrder": [ + "userKey", + "date" + ], + "parameters": { + "customerId": { + "description": "Represents the customer for which the data is to be fetched.", + "location": "query", + "pattern": "C.+", + "type": "string" + }, + "date": { + "description": "Represents the date in yyyy-mm-dd format for which the data is to be fetched.", + "location": "path", + "pattern": "(\\d){4}-(\\d){2}-(\\d){2}", + "required": true, + "type": "string" + }, + "filters": { + "description": "Represents the set of filters including parameter operator value.", + "location": "query", + "pattern": "(((accounts)|(classroom)|(cros)|(gmail)|(calendar)|(docs)|(gplus)|(sites)|(device_management)|(drive)):[a-z0-9_]+[\u003c,\u003c=,==,\u003e=,\u003e,!=][^,]+,)*(((accounts)|(classroom)|(cros)|(gmail)|(calendar)|(docs)|(gplus)|(sites)|(device_management)|(drive)):[a-z0-9_]+[\u003c,\u003c=,==,\u003e=,\u003e,!=][^,]+)", + "type": "string" + }, + "maxResults": { + "description": "Maximum number of results to return. Maximum allowed is 1000", + "format": "uint32", + "location": "query", + "maximum": "1000", + "type": "integer" + }, + "pageToken": { + "description": "Token to specify next page.", + "location": "query", + "type": "string" + }, + "parameters": { + "description": "Represents the application name, parameter name pairs to fetch in csv as app_name1:param_name1, app_name2:param_name2.", + "location": "query", + "pattern": "(((accounts)|(classroom)|(cros)|(gmail)|(calendar)|(docs)|(gplus)|(sites)|(device_management)|(drive)):[^,]+,)*(((accounts)|(classroom)|(cros)|(gmail)|(calendar)|(docs)|(gplus)|(sites)|(device_management)|(drive)):[^,]+)", + "type": "string" + }, + "userKey": { + "description": "Represents the profile id or the user email for which the data should be filtered.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "usage/users/{userKey}/dates/{date}", + "response": { + "$ref": "UsageReports" + }, + "scopes": [ + "https://www.googleapis.com/auth/admin.reports.usage.readonly" + ] + } + } + } + }, + "revision": "20180110", + "rootUrl": "https://www.googleapis.com/", + "schemas": { + "Activities": { + "description": "JSON template for a collection of activites.", + "id": "Activities", "properties": { - "name": { - "type": "string", - "description": "Name of event." - }, - "parameters": { - "type": "array", - "description": "Parameter value pairs for various applications.", + "etag": { + "description": "ETag of the resource.", + "type": "string" + }, "items": { - "type": "object", - "properties": { - "boolValue": { - "type": "boolean", - "description": "Boolean value of the parameter." + "description": "Each record in read response.", + "items": { + "$ref": "Activity" }, - "intValue": { - "type": "string", - "description": "Integral value of the parameter.", - "format": "int64" + "type": "array" + }, + "kind": { + "default": "admin#reports#activities", + "description": "Kind of list response this is.", + "type": "string" + }, + "nextPageToken": { + "description": "Token for retrieving the next page", + "type": "string" + } + }, + "type": "object" + }, + "Activity": { + "description": "JSON template for the activity resource.", + "id": "Activity", + "properties": { + "actor": { + "description": "User doing the action.", + "properties": { + "callerType": { + "description": "User or OAuth 2LO request.", + "type": "string" + }, + "email": { + "description": "Email address of the user.", + "type": "string" + }, + "key": { + "description": "For OAuth 2LO API requests, consumer_key of the requestor.", + "type": "string" + }, + "profileId": { + "description": "Obfuscated user id of the user.", + "type": "string" + } }, - "multiIntValue": { - "type": "array", - "description": "Multi-int value of the parameter.", - "items": { - "type": "string", - "format": "int64" - } + "type": "object" + }, + "etag": { + "description": "ETag of the entry.", + "type": "string" + }, + "events": { + "description": "Activity events.", + "items": { + "properties": { + "name": { + "description": "Name of event.", + "type": "string" + }, + "parameters": { + "description": "Parameter value pairs for various applications.", + "items": { + "properties": { + "boolValue": { + "description": "Boolean value of the parameter.", + "type": "boolean" + }, + "intValue": { + "description": "Integral value of the parameter.", + "format": "int64", + "type": "string" + }, + "multiIntValue": { + "description": "Multi-int value of the parameter.", + "items": { + "format": "int64", + "type": "string" + }, + "type": "array" + }, + "multiValue": { + "description": "Multi-string value of the parameter.", + "items": { + "type": "string" + }, + "type": "array" + }, + "name": { + "description": "The name of the parameter.", + "type": "string" + }, + "value": { + "description": "String value of the parameter.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "type": { + "description": "Type of event.", + "type": "string" + } + }, + "type": "object" }, - "multiValue": { - "type": "array", - "description": "Multi-string value of the parameter.", - "items": { + "type": "array" + }, + "id": { + "description": "Unique identifier for each activity record.", + "properties": { + "applicationName": { + "description": "Application name to which the event belongs.", + "type": "string" + }, + "customerId": { + "description": "Obfuscated customer ID of the source customer.", + "type": "string" + }, + "time": { + "description": "Time of occurrence of the activity.", + "format": "date-time", + "type": "string" + }, + "uniqueQualifier": { + "description": "Unique qualifier if multiple events have the same time.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "ipAddress": { + "description": "IP Address of the user doing the action.", + "type": "string" + }, + "kind": { + "default": "admin#reports#activity", + "description": "Kind of resource this is.", + "type": "string" + }, + "ownerDomain": { + "description": "Domain of source customer.", + "type": "string" + } + }, + "type": "object" + }, + "Channel": { + "description": "An notification channel used to watch for resource changes.", + "id": "Channel", + "properties": { + "address": { + "description": "The address where notifications are delivered for this channel.", + "type": "string" + }, + "expiration": { + "description": "Date and time of notification channel expiration, expressed as a Unix timestamp, in milliseconds. Optional.", + "format": "int64", + "type": "string" + }, + "id": { + "description": "A UUID or similar unique string that identifies this channel.", + "type": "string" + }, + "kind": { + "default": "api#channel", + "description": "Identifies this as a notification channel used to watch for changes to a resource. Value: the fixed string \"api#channel\".", + "type": "string" + }, + "params": { + "additionalProperties": { + "description": "Declares a new parameter by name.", "type": "string" - } }, - "name": { - "type": "string", - "description": "The name of the parameter." - }, - "value": { - "type": "string", - "description": "String value of the parameter." - } - } + "description": "Additional parameters controlling delivery channel behavior. Optional.", + "type": "object" + }, + "payload": { + "description": "A Boolean value to indicate whether payload is wanted. Optional.", + "type": "boolean" + }, + "resourceId": { + "description": "An opaque ID that identifies the resource being watched on this channel. Stable across different API versions.", + "type": "string" + }, + "resourceUri": { + "description": "A version-specific identifier for the watched resource.", + "type": "string" + }, + "token": { + "description": "An arbitrary string delivered to the target address with each notification delivered over this channel. Optional.", + "type": "string" + }, + "type": { + "description": "The type of delivery mechanism used for this channel.", + "type": "string" } - }, - "type": { - "type": "string", - "description": "Type of event." - } - } - } - }, - "id": { - "type": "object", - "description": "Unique identifier for each activity record.", - "properties": { - "applicationName": { - "type": "string", - "description": "Application name to which the event belongs." }, - "customerId": { - "type": "string", - "description": "Obfuscated customer ID of the source customer." - }, - "time": { - "type": "string", - "description": "Time of occurrence of the activity.", - "format": "date-time" - }, - "uniqueQualifier": { - "type": "string", - "description": "Unique qualifier if multiple events have the same time.", - "format": "int64" - } - } + "type": "object" }, - "ipAddress": { - "type": "string", - "description": "IP Address of the user doing the action." - }, - "kind": { - "type": "string", - "description": "Kind of resource this is.", - "default": "admin#reports#activity" - }, - "ownerDomain": { - "type": "string", - "description": "Domain of source customer." - } - } - }, - "Channel": { - "id": "Channel", - "type": "object", - "description": "An notification channel used to watch for resource changes.", - "properties": { - "address": { - "type": "string", - "description": "The address where notifications are delivered for this channel." - }, - "expiration": { - "type": "string", - "description": "Date and time of notification channel expiration, expressed as a Unix timestamp, in milliseconds. Optional.", - "format": "int64" - }, - "id": { - "type": "string", - "description": "A UUID or similar unique string that identifies this channel." - }, - "kind": { - "type": "string", - "description": "Identifies this as a notification channel used to watch for changes to a resource. Value: the fixed string \"api#channel\".", - "default": "api#channel" - }, - "params": { - "type": "object", - "description": "Additional parameters controlling delivery channel behavior. Optional.", - "additionalProperties": { - "type": "string", - "description": "Declares a new parameter by name." - } - }, - "payload": { - "type": "boolean", - "description": "A Boolean value to indicate whether payload is wanted. Optional." - }, - "resourceId": { - "type": "string", - "description": "An opaque ID that identifies the resource being watched on this channel. Stable across different API versions." - }, - "resourceUri": { - "type": "string", - "description": "A version-specific identifier for the watched resource." - }, - "token": { - "type": "string", - "description": "An arbitrary string delivered to the target address with each notification delivered over this channel. Optional." - }, - "type": { - "type": "string", - "description": "The type of delivery mechanism used for this channel." - } - } - }, - "UsageReport": { - "id": "UsageReport", - "type": "object", - "description": "JSON template for a usage report.", - "properties": { - "date": { - "type": "string", - "description": "The date to which the record belongs.", - "readOnly": true - }, - "entity": { - "type": "object", - "description": "Information about the type of the item.", - "readOnly": true, - "properties": { - "customerId": { - "type": "string", - "description": "Obfuscated customer id for the record.", - "readOnly": true - }, - "entityId": { - "type": "string", - "description": "Object key. Only relevant if entity.type = \"OBJECT\" Note: external-facing name of report is \"Entities\" rather than \"Objects\".", - "readOnly": true - }, - "profileId": { - "type": "string", - "description": "Obfuscated user id for the record.", - "readOnly": true - }, - "type": { - "type": "string", - "description": "The type of item, can be customer, user, or entity (aka. object).", - "readOnly": true - }, - "userEmail": { - "type": "string", - "description": "user's email. Only relevant if entity.type = \"USER\"", - "readOnly": true - } - } - }, - "etag": { - "type": "string", - "description": "ETag of the resource." - }, - "kind": { - "type": "string", - "description": "The kind of object.", - "default": "admin#reports#usageReport" - }, - "parameters": { - "type": "array", - "description": "Parameter value pairs for various applications.", - "readOnly": true, - "items": { - "type": "object", + "UsageReport": { + "description": "JSON template for a usage report.", + "id": "UsageReport", "properties": { - "boolValue": { - "type": "boolean", - "description": "Boolean value of the parameter.", - "readOnly": true - }, - "datetimeValue": { - "type": "string", - "description": "RFC 3339 formatted value of the parameter.", - "format": "date-time", - "readOnly": true - }, - "intValue": { - "type": "string", - "description": "Integral value of the parameter.", - "format": "int64", - "readOnly": true - }, - "msgValue": { - "type": "array", - "description": "Nested message value of the parameter.", - "readOnly": true, - "items": { - "type": "object", - "additionalProperties": { - "type": "any" - } - } - }, - "name": { - "type": "string", - "description": "The name of the parameter." - }, - "stringValue": { - "type": "string", - "description": "String value of the parameter.", - "readOnly": true - } - } - } - } - } - }, - "UsageReports": { - "id": "UsageReports", - "type": "object", - "description": "JSON template for a collection of usage reports.", - "properties": { - "etag": { - "type": "string", - "description": "ETag of the resource." - }, - "kind": { - "type": "string", - "description": "The kind of object.", - "default": "admin#reports#usageReports" - }, - "nextPageToken": { - "type": "string", - "description": "Token for retrieving the next page" - }, - "usageReports": { - "type": "array", - "description": "Various application parameter records.", - "items": { - "$ref": "UsageReport" - } - }, - "warnings": { - "type": "array", - "description": "Warnings if any.", - "items": { - "type": "object", - "properties": { - "code": { - "type": "string", - "description": "Machine readable code / warning type." - }, - "data": { - "type": "array", - "description": "Key-Value pairs to give detailed information on the warning.", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "Key associated with a key-value pair to give detailed information on the warning." + "date": { + "description": "The date to which the record belongs.", + "readOnly": true, + "type": "string" + }, + "entity": { + "description": "Information about the type of the item.", + "properties": { + "customerId": { + "description": "Obfuscated customer id for the record.", + "readOnly": true, + "type": "string" + }, + "entityId": { + "description": "Object key. Only relevant if entity.type = \"OBJECT\" Note: external-facing name of report is \"Entities\" rather than \"Objects\".", + "readOnly": true, + "type": "string" + }, + "profileId": { + "description": "Obfuscated user id for the record.", + "readOnly": true, + "type": "string" + }, + "type": { + "description": "The type of item, can be customer, user, or entity (aka. object).", + "readOnly": true, + "type": "string" + }, + "userEmail": { + "description": "user's email. Only relevant if entity.type = \"USER\"", + "readOnly": true, + "type": "string" + } }, - "value": { - "type": "string", - "description": "Value associated with a key-value pair to give detailed information on the warning." - } - } + "readOnly": true, + "type": "object" + }, + "etag": { + "description": "ETag of the resource.", + "type": "string" + }, + "kind": { + "default": "admin#reports#usageReport", + "description": "The kind of object.", + "type": "string" + }, + "parameters": { + "description": "Parameter value pairs for various applications.", + "items": { + "properties": { + "boolValue": { + "description": "Boolean value of the parameter.", + "readOnly": true, + "type": "boolean" + }, + "datetimeValue": { + "description": "RFC 3339 formatted value of the parameter.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "intValue": { + "description": "Integral value of the parameter.", + "format": "int64", + "readOnly": true, + "type": "string" + }, + "msgValue": { + "description": "Nested message value of the parameter.", + "items": { + "additionalProperties": { + "type": "any" + }, + "type": "object" + }, + "readOnly": true, + "type": "array" + }, + "name": { + "description": "The name of the parameter.", + "type": "string" + }, + "stringValue": { + "description": "String value of the parameter.", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "readOnly": true, + "type": "array" } - }, - "message": { - "type": "string", - "description": "Human readable message for the warning." - } - } - } - } - } - } - }, - "resources": { - "activities": { - "methods": { - "list": { - "id": "reports.activities.list", - "path": "activity/users/{userKey}/applications/{applicationName}", - "httpMethod": "GET", - "description": "Retrieves a list of activities for a specific customer and application.", - "parameters": { - "actorIpAddress": { - "type": "string", - "description": "IP Address of host where the event was performed. Supports both IPv4 and IPv6 addresses.", - "location": "query" }, - "applicationName": { - "type": "string", - "description": "Application name for which the events are to be retrieved.", - "required": true, - "pattern": "(admin)|(calendar)|(drive)|(login)|(mobile)|(token)|(groups)|(saml)|(chat)|(gplus)|(rules)", - "location": "path" - }, - "customerId": { - "type": "string", - "description": "Represents the customer for which the data is to be fetched.", - "pattern": "C.+", - "location": "query" - }, - "endTime": { - "type": "string", - "description": "Return events which occurred at or before this time.", - "pattern": "(\\d\\d\\d\\d)-(\\d\\d)-(\\d\\d)T(\\d\\d):(\\d\\d):(\\d\\d)(?:\\.(\\d+))?(?:(Z)|([-+])(\\d\\d):(\\d\\d))", - "location": "query" - }, - "eventName": { - "type": "string", - "description": "Name of the event being queried.", - "location": "query" - }, - "filters": { - "type": "string", - "description": "Event parameters in the form [parameter1 name][operator][parameter1 value],[parameter2 name][operator][parameter2 value],...", - "pattern": "(.+[\u003c,\u003c=,==,\u003e=,\u003e,\u003c\u003e].+,)*(.+[\u003c,\u003c=,==,\u003e=,\u003e,\u003c\u003e].+)", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "Number of activity records to be shown in each page.", - "format": "int32", - "minimum": "1", - "maximum": "1000", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Token to specify next page.", - "location": "query" - }, - "startTime": { - "type": "string", - "description": "Return events which occurred at or after this time.", - "pattern": "(\\d\\d\\d\\d)-(\\d\\d)-(\\d\\d)T(\\d\\d):(\\d\\d):(\\d\\d)(?:\\.(\\d+))?(?:(Z)|([-+])(\\d\\d):(\\d\\d))", - "location": "query" - }, - "userKey": { - "type": "string", - "description": "Represents the profile id or the user email for which the data should be filtered. When 'all' is specified as the userKey, it returns usageReports for all users.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "userKey", - "applicationName" - ], - "response": { - "$ref": "Activities" - }, - "scopes": [ - "https://www.googleapis.com/auth/admin.reports.audit.readonly" - ], - "supportsSubscription": true + "type": "object" }, - "watch": { - "id": "reports.activities.watch", - "path": "activity/users/{userKey}/applications/{applicationName}/watch", - "httpMethod": "POST", - "description": "Push changes to activities", - "parameters": { - "actorIpAddress": { - "type": "string", - "description": "IP Address of host where the event was performed. Supports both IPv4 and IPv6 addresses.", - "location": "query" + "UsageReports": { + "description": "JSON template for a collection of usage reports.", + "id": "UsageReports", + "properties": { + "etag": { + "description": "ETag of the resource.", + "type": "string" + }, + "kind": { + "default": "admin#reports#usageReports", + "description": "The kind of object.", + "type": "string" + }, + "nextPageToken": { + "description": "Token for retrieving the next page", + "type": "string" + }, + "usageReports": { + "description": "Various application parameter records.", + "items": { + "$ref": "UsageReport" + }, + "type": "array" + }, + "warnings": { + "description": "Warnings if any.", + "items": { + "properties": { + "code": { + "description": "Machine readable code / warning type.", + "type": "string" + }, + "data": { + "description": "Key-Value pairs to give detailed information on the warning.", + "items": { + "properties": { + "key": { + "description": "Key associated with a key-value pair to give detailed information on the warning.", + "type": "string" + }, + "value": { + "description": "Value associated with a key-value pair to give detailed information on the warning.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "Human readable message for the warning.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + } }, - "applicationName": { - "type": "string", - "description": "Application name for which the events are to be retrieved.", - "required": true, - "pattern": "(admin)|(calendar)|(drive)|(login)|(mobile)|(token)|(groups)|(saml)|(chat)|(gplus)|(rules)", - "location": "path" - }, - "customerId": { - "type": "string", - "description": "Represents the customer for which the data is to be fetched.", - "pattern": "C.+", - "location": "query" - }, - "endTime": { - "type": "string", - "description": "Return events which occurred at or before this time.", - "pattern": "(\\d\\d\\d\\d)-(\\d\\d)-(\\d\\d)T(\\d\\d):(\\d\\d):(\\d\\d)(?:\\.(\\d+))?(?:(Z)|([-+])(\\d\\d):(\\d\\d))", - "location": "query" - }, - "eventName": { - "type": "string", - "description": "Name of the event being queried.", - "location": "query" - }, - "filters": { - "type": "string", - "description": "Event parameters in the form [parameter1 name][operator][parameter1 value],[parameter2 name][operator][parameter2 value],...", - "pattern": "(.+[\u003c,\u003c=,==,\u003e=,\u003e,\u003c\u003e].+,)*(.+[\u003c,\u003c=,==,\u003e=,\u003e,\u003c\u003e].+)", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "Number of activity records to be shown in each page.", - "format": "int32", - "minimum": "1", - "maximum": "1000", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Token to specify next page.", - "location": "query" - }, - "startTime": { - "type": "string", - "description": "Return events which occurred at or after this time.", - "pattern": "(\\d\\d\\d\\d)-(\\d\\d)-(\\d\\d)T(\\d\\d):(\\d\\d):(\\d\\d)(?:\\.(\\d+))?(?:(Z)|([-+])(\\d\\d):(\\d\\d))", - "location": "query" - }, - "userKey": { - "type": "string", - "description": "Represents the profile id or the user email for which the data should be filtered. When 'all' is specified as the userKey, it returns usageReports for all users.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "userKey", - "applicationName" - ], - "request": { - "$ref": "Channel", - "parameterName": "resource" - }, - "response": { - "$ref": "Channel" - }, - "scopes": [ - "https://www.googleapis.com/auth/admin.reports.audit.readonly" - ], - "supportsSubscription": true + "type": "object" } - } }, - "channels": { - "methods": { - "stop": { - "id": "admin.channels.stop", - "path": "/admin/reports_v1/channels/stop", - "httpMethod": "POST", - "description": "Stop watching resources through this channel", - "request": { - "$ref": "Channel", - "parameterName": "resource" - }, - "scopes": [ - "https://www.googleapis.com/auth/admin.reports.audit.readonly" - ] - } - } - }, - "customerUsageReports": { - "methods": { - "get": { - "id": "reports.customerUsageReports.get", - "path": "usage/dates/{date}", - "httpMethod": "GET", - "description": "Retrieves a report which is a collection of properties / statistics for a specific customer.", - "parameters": { - "customerId": { - "type": "string", - "description": "Represents the customer for which the data is to be fetched.", - "pattern": "C.+", - "location": "query" - }, - "date": { - "type": "string", - "description": "Represents the date in yyyy-mm-dd format for which the data is to be fetched.", - "required": true, - "pattern": "(\\d){4}-(\\d){2}-(\\d){2}", - "location": "path" - }, - "pageToken": { - "type": "string", - "description": "Token to specify next page.", - "location": "query" - }, - "parameters": { - "type": "string", - "description": "Represents the application name, parameter name pairs to fetch in csv as app_name1:param_name1, app_name2:param_name2.", - "pattern": "(((accounts)|(app_maker)|(apps_scripts)|(classroom)|(cros)|(gmail)|(calendar)|(docs)|(gplus)|(sites)|(device_management)|(drive)|(meet)):[^,]+,)*(((accounts)|(app_maker)|(apps_scripts)|(classroom)|(cros)|(gmail)|(calendar)|(docs)|(gplus)|(sites)|(device_management)|(drive)|(meet)):[^,]+)", - "location": "query" - } - }, - "parameterOrder": [ - "date" - ], - "response": { - "$ref": "UsageReports" - }, - "scopes": [ - "https://www.googleapis.com/auth/admin.reports.usage.readonly" - ] - } - } - }, - "entityUsageReports": { - "methods": { - "get": { - "id": "reports.entityUsageReports.get", - "path": "usage/{entityType}/{entityKey}/dates/{date}", - "httpMethod": "GET", - "description": "Retrieves a report which is a collection of properties / statistics for a set of objects.", - "parameters": { - "customerId": { - "type": "string", - "description": "Represents the customer for which the data is to be fetched.", - "pattern": "C.+", - "location": "query" - }, - "date": { - "type": "string", - "description": "Represents the date in yyyy-mm-dd format for which the data is to be fetched.", - "required": true, - "pattern": "(\\d){4}-(\\d){2}-(\\d){2}", - "location": "path" - }, - "entityKey": { - "type": "string", - "description": "Represents the key of object for which the data should be filtered.", - "required": true, - "location": "path" - }, - "entityType": { - "type": "string", - "description": "Type of object. Should be one of - gplus_communities.", - "required": true, - "pattern": "(gplus_communities)", - "location": "path" - }, - "filters": { - "type": "string", - "description": "Represents the set of filters including parameter operator value.", - "pattern": "(((gplus)):[a-z0-9_]+[\u003c,\u003c=,==,\u003e=,\u003e,!=][^,]+,)*(((gplus)):[a-z0-9_]+[\u003c,\u003c=,==,\u003e=,\u003e,!=][^,]+)", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "Maximum number of results to return. Maximum allowed is 1000", - "format": "uint32", - "maximum": "1000", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Token to specify next page.", - "location": "query" - }, - "parameters": { - "type": "string", - "description": "Represents the application name, parameter name pairs to fetch in csv as app_name1:param_name1, app_name2:param_name2.", - "pattern": "(((gplus)):[^,]+,)*(((gplus)):[^,]+)", - "location": "query" - } - }, - "parameterOrder": [ - "entityType", - "entityKey", - "date" - ], - "response": { - "$ref": "UsageReports" - }, - "scopes": [ - "https://www.googleapis.com/auth/admin.reports.usage.readonly" - ] - } - } - }, - "userUsageReport": { - "methods": { - "get": { - "id": "reports.userUsageReport.get", - "path": "usage/users/{userKey}/dates/{date}", - "httpMethod": "GET", - "description": "Retrieves a report which is a collection of properties / statistics for a set of users.", - "parameters": { - "customerId": { - "type": "string", - "description": "Represents the customer for which the data is to be fetched.", - "pattern": "C.+", - "location": "query" - }, - "date": { - "type": "string", - "description": "Represents the date in yyyy-mm-dd format for which the data is to be fetched.", - "required": true, - "pattern": "(\\d){4}-(\\d){2}-(\\d){2}", - "location": "path" - }, - "filters": { - "type": "string", - "description": "Represents the set of filters including parameter operator value.", - "pattern": "(((accounts)|(classroom)|(cros)|(gmail)|(calendar)|(docs)|(gplus)|(sites)|(device_management)|(drive)):[a-z0-9_]+[\u003c,\u003c=,==,\u003e=,\u003e,!=][^,]+,)*(((accounts)|(classroom)|(cros)|(gmail)|(calendar)|(docs)|(gplus)|(sites)|(device_management)|(drive)):[a-z0-9_]+[\u003c,\u003c=,==,\u003e=,\u003e,!=][^,]+)", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "Maximum number of results to return. Maximum allowed is 1000", - "format": "uint32", - "maximum": "1000", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Token to specify next page.", - "location": "query" - }, - "parameters": { - "type": "string", - "description": "Represents the application name, parameter name pairs to fetch in csv as app_name1:param_name1, app_name2:param_name2.", - "pattern": "(((accounts)|(classroom)|(cros)|(gmail)|(calendar)|(docs)|(gplus)|(sites)|(device_management)|(drive)):[^,]+,)*(((accounts)|(classroom)|(cros)|(gmail)|(calendar)|(docs)|(gplus)|(sites)|(device_management)|(drive)):[^,]+)", - "location": "query" - }, - "userKey": { - "type": "string", - "description": "Represents the profile id or the user email for which the data should be filtered.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "userKey", - "date" - ], - "response": { - "$ref": "UsageReports" - }, - "scopes": [ - "https://www.googleapis.com/auth/admin.reports.usage.readonly" - ] - } - } - } - } -} + "servicePath": "admin/reports/v1/", + "title": "Admin Reports API", + "version": "reports_v1" +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/adsense/v1.3/adsense-gen.go b/vendor/google.golang.org/api/adsense/v1.3/adsense-gen.go index 4ec72e147..24317041b 100644 --- a/vendor/google.golang.org/api/adsense/v1.3/adsense-gen.go +++ b/vendor/google.golang.org/api/adsense/v1.3/adsense-gen.go @@ -401,8 +401,8 @@ type Account struct { } func (s *Account) MarshalJSON() ([]byte, error) { - type noMethod Account - raw := noMethod(*s) + type NoMethod Account + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -443,8 +443,8 @@ type Accounts struct { } func (s *Accounts) MarshalJSON() ([]byte, error) { - type noMethod Accounts - raw := noMethod(*s) + type NoMethod Accounts + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -483,8 +483,8 @@ type AdClient struct { } func (s *AdClient) MarshalJSON() ([]byte, error) { - type noMethod AdClient - raw := noMethod(*s) + type NoMethod AdClient + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -525,8 +525,8 @@ type AdClients struct { } func (s *AdClients) MarshalJSON() ([]byte, error) { - type noMethod AdClients - raw := noMethod(*s) + type NoMethod AdClients + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -559,8 +559,8 @@ type AdCode struct { } func (s *AdCode) MarshalJSON() ([]byte, error) { - type noMethod AdCode - raw := noMethod(*s) + type NoMethod AdCode + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -598,8 +598,8 @@ type AdStyle struct { } func (s *AdStyle) MarshalJSON() ([]byte, error) { - type noMethod AdStyle - raw := noMethod(*s) + type NoMethod AdStyle + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -640,8 +640,8 @@ type AdStyleColors struct { } func (s *AdStyleColors) MarshalJSON() ([]byte, error) { - type noMethod AdStyleColors - raw := noMethod(*s) + type NoMethod AdStyleColors + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -671,8 +671,8 @@ type AdStyleFont struct { } func (s *AdStyleFont) MarshalJSON() ([]byte, error) { - type noMethod AdStyleFont - raw := noMethod(*s) + type NoMethod AdStyleFont + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -743,8 +743,8 @@ type AdUnit struct { } func (s *AdUnit) MarshalJSON() ([]byte, error) { - type noMethod AdUnit - raw := noMethod(*s) + type NoMethod AdUnit + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -779,8 +779,8 @@ type AdUnitContentAdsSettings struct { } func (s *AdUnitContentAdsSettings) MarshalJSON() ([]byte, error) { - type noMethod AdUnitContentAdsSettings - raw := noMethod(*s) + type NoMethod AdUnitContentAdsSettings + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -815,8 +815,8 @@ type AdUnitContentAdsSettingsBackupOption struct { } func (s *AdUnitContentAdsSettingsBackupOption) MarshalJSON() ([]byte, error) { - type noMethod AdUnitContentAdsSettingsBackupOption - raw := noMethod(*s) + type NoMethod AdUnitContentAdsSettingsBackupOption + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -855,8 +855,8 @@ type AdUnitFeedAdsSettings struct { } func (s *AdUnitFeedAdsSettings) MarshalJSON() ([]byte, error) { - type noMethod AdUnitFeedAdsSettings - raw := noMethod(*s) + type NoMethod AdUnitFeedAdsSettings + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -894,8 +894,8 @@ type AdUnitMobileContentAdsSettings struct { } func (s *AdUnitMobileContentAdsSettings) MarshalJSON() ([]byte, error) { - type noMethod AdUnitMobileContentAdsSettings - raw := noMethod(*s) + type NoMethod AdUnitMobileContentAdsSettings + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -936,8 +936,8 @@ type AdUnits struct { } func (s *AdUnits) MarshalJSON() ([]byte, error) { - type noMethod AdUnits - raw := noMethod(*s) + type NoMethod AdUnits + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -996,8 +996,8 @@ type AdsenseReportsGenerateResponse struct { } func (s *AdsenseReportsGenerateResponse) MarshalJSON() ([]byte, error) { - type noMethod AdsenseReportsGenerateResponse - raw := noMethod(*s) + type NoMethod AdsenseReportsGenerateResponse + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -1031,8 +1031,8 @@ type AdsenseReportsGenerateResponseHeaders struct { } func (s *AdsenseReportsGenerateResponseHeaders) MarshalJSON() ([]byte, error) { - type noMethod AdsenseReportsGenerateResponseHeaders - raw := noMethod(*s) + type NoMethod AdsenseReportsGenerateResponseHeaders + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -1076,8 +1076,8 @@ type Alert struct { } func (s *Alert) MarshalJSON() ([]byte, error) { - type noMethod Alert - raw := noMethod(*s) + type NoMethod Alert + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -1110,8 +1110,8 @@ type Alerts struct { } func (s *Alerts) MarshalJSON() ([]byte, error) { - type noMethod Alerts - raw := noMethod(*s) + type NoMethod Alerts + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -1157,8 +1157,8 @@ type CustomChannel struct { } func (s *CustomChannel) MarshalJSON() ([]byte, error) { - type noMethod CustomChannel - raw := noMethod(*s) + type NoMethod CustomChannel + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -1200,8 +1200,8 @@ type CustomChannelTargetingInfo struct { } func (s *CustomChannelTargetingInfo) MarshalJSON() ([]byte, error) { - type noMethod CustomChannelTargetingInfo - raw := noMethod(*s) + type NoMethod CustomChannelTargetingInfo + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -1242,8 +1242,8 @@ type CustomChannels struct { } func (s *CustomChannels) MarshalJSON() ([]byte, error) { - type noMethod CustomChannels - raw := noMethod(*s) + type NoMethod CustomChannels + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -1275,8 +1275,8 @@ type Metadata struct { } func (s *Metadata) MarshalJSON() ([]byte, error) { - type noMethod Metadata - raw := noMethod(*s) + type NoMethod Metadata + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -1336,8 +1336,8 @@ type ReportingMetadataEntry struct { } func (s *ReportingMetadataEntry) MarshalJSON() ([]byte, error) { - type noMethod ReportingMetadataEntry - raw := noMethod(*s) + type NoMethod ReportingMetadataEntry + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -1378,8 +1378,8 @@ type SavedAdStyle struct { } func (s *SavedAdStyle) MarshalJSON() ([]byte, error) { - type noMethod SavedAdStyle - raw := noMethod(*s) + type NoMethod SavedAdStyle + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -1420,8 +1420,8 @@ type SavedAdStyles struct { } func (s *SavedAdStyles) MarshalJSON() ([]byte, error) { - type noMethod SavedAdStyles - raw := noMethod(*s) + type NoMethod SavedAdStyles + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -1453,8 +1453,8 @@ type SavedReport struct { } func (s *SavedReport) MarshalJSON() ([]byte, error) { - type noMethod SavedReport - raw := noMethod(*s) + type NoMethod SavedReport + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -1495,8 +1495,8 @@ type SavedReports struct { } func (s *SavedReports) MarshalJSON() ([]byte, error) { - type noMethod SavedReports - raw := noMethod(*s) + type NoMethod SavedReports + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -1531,8 +1531,8 @@ type UrlChannel struct { } func (s *UrlChannel) MarshalJSON() ([]byte, error) { - type noMethod UrlChannel - raw := noMethod(*s) + type NoMethod UrlChannel + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -1573,8 +1573,8 @@ type UrlChannels struct { } func (s *UrlChannels) MarshalJSON() ([]byte, error) { - type noMethod UrlChannels - raw := noMethod(*s) + type NoMethod UrlChannels + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -1692,7 +1692,7 @@ func (c *AccountsGetCall) Do(opts ...googleapi.CallOption) (*Account, error) { }, } target := &ret - if err := json.NewDecoder(res.Body).Decode(target); err != nil { + if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil @@ -1846,7 +1846,7 @@ func (c *AccountsListCall) Do(opts ...googleapi.CallOption) (*Accounts, error) { }, } target := &ret - if err := json.NewDecoder(res.Body).Decode(target); err != nil { + if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil @@ -2025,7 +2025,7 @@ func (c *AccountsAdclientsListCall) Do(opts ...googleapi.CallOption) (*AdClients }, } target := &ret - if err := json.NewDecoder(res.Body).Decode(target); err != nil { + if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil @@ -2204,7 +2204,7 @@ func (c *AccountsAdunitsGetCall) Do(opts ...googleapi.CallOption) (*AdUnit, erro }, } target := &ret - if err := json.NewDecoder(res.Body).Decode(target); err != nil { + if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil @@ -2362,7 +2362,7 @@ func (c *AccountsAdunitsGetAdCodeCall) Do(opts ...googleapi.CallOption) (*AdCode }, } target := &ret - if err := json.NewDecoder(res.Body).Decode(target); err != nil { + if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil @@ -2541,7 +2541,7 @@ func (c *AccountsAdunitsListCall) Do(opts ...googleapi.CallOption) (*AdUnits, er }, } target := &ret - if err := json.NewDecoder(res.Body).Decode(target); err != nil { + if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil @@ -2749,7 +2749,7 @@ func (c *AccountsAdunitsCustomchannelsListCall) Do(opts ...googleapi.CallOption) }, } target := &ret - if err := json.NewDecoder(res.Body).Decode(target); err != nil { + if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil @@ -2944,7 +2944,7 @@ func (c *AccountsAlertsListCall) Do(opts ...googleapi.CallOption) (*Alerts, erro }, } target := &ret - if err := json.NewDecoder(res.Body).Decode(target); err != nil { + if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil @@ -3094,7 +3094,7 @@ func (c *AccountsCustomchannelsGetCall) Do(opts ...googleapi.CallOption) (*Custo }, } target := &ret - if err := json.NewDecoder(res.Body).Decode(target); err != nil { + if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil @@ -3267,7 +3267,7 @@ func (c *AccountsCustomchannelsListCall) Do(opts ...googleapi.CallOption) (*Cust }, } target := &ret - if err := json.NewDecoder(res.Body).Decode(target); err != nil { + if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil @@ -3475,7 +3475,7 @@ func (c *AccountsCustomchannelsAdunitsListCall) Do(opts ...googleapi.CallOption) }, } target := &ret - if err := json.NewDecoder(res.Body).Decode(target); err != nil { + if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil @@ -3755,7 +3755,7 @@ func (c *AccountsReportsGenerateCall) Do(opts ...googleapi.CallOption) (*Adsense }, } target := &ret - if err := json.NewDecoder(res.Body).Decode(target); err != nil { + if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil @@ -3997,7 +3997,7 @@ func (c *AccountsReportsSavedGenerateCall) Do(opts ...googleapi.CallOption) (*Ad }, } target := &ret - if err := json.NewDecoder(res.Body).Decode(target); err != nil { + if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil @@ -4180,7 +4180,7 @@ func (c *AccountsReportsSavedListCall) Do(opts ...googleapi.CallOption) (*SavedR }, } target := &ret - if err := json.NewDecoder(res.Body).Decode(target); err != nil { + if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil @@ -4355,7 +4355,7 @@ func (c *AccountsSavedadstylesGetCall) Do(opts ...googleapi.CallOption) (*SavedA }, } target := &ret - if err := json.NewDecoder(res.Body).Decode(target); err != nil { + if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil @@ -4517,7 +4517,7 @@ func (c *AccountsSavedadstylesListCall) Do(opts ...googleapi.CallOption) (*Saved }, } target := &ret - if err := json.NewDecoder(res.Body).Decode(target); err != nil { + if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil @@ -4709,7 +4709,7 @@ func (c *AccountsUrlchannelsListCall) Do(opts ...googleapi.CallOption) (*UrlChan }, } target := &ret - if err := json.NewDecoder(res.Body).Decode(target); err != nil { + if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil @@ -4899,7 +4899,7 @@ func (c *AdclientsListCall) Do(opts ...googleapi.CallOption) (*AdClients, error) }, } target := &ret - if err := json.NewDecoder(res.Body).Decode(target); err != nil { + if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil @@ -5065,7 +5065,7 @@ func (c *AdunitsGetCall) Do(opts ...googleapi.CallOption) (*AdUnit, error) { }, } target := &ret - if err := json.NewDecoder(res.Body).Decode(target); err != nil { + if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil @@ -5213,7 +5213,7 @@ func (c *AdunitsGetAdCodeCall) Do(opts ...googleapi.CallOption) (*AdCode, error) }, } target := &ret - if err := json.NewDecoder(res.Body).Decode(target); err != nil { + if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil @@ -5382,7 +5382,7 @@ func (c *AdunitsListCall) Do(opts ...googleapi.CallOption) (*AdUnits, error) { }, } target := &ret - if err := json.NewDecoder(res.Body).Decode(target); err != nil { + if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil @@ -5580,7 +5580,7 @@ func (c *AdunitsCustomchannelsListCall) Do(opts ...googleapi.CallOption) (*Custo }, } target := &ret - if err := json.NewDecoder(res.Body).Decode(target); err != nil { + if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil @@ -5763,7 +5763,7 @@ func (c *AlertsListCall) Do(opts ...googleapi.CallOption) (*Alerts, error) { }, } target := &ret - if err := json.NewDecoder(res.Body).Decode(target); err != nil { + if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil @@ -5900,7 +5900,7 @@ func (c *CustomchannelsGetCall) Do(opts ...googleapi.CallOption) (*CustomChannel }, } target := &ret - if err := json.NewDecoder(res.Body).Decode(target); err != nil { + if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil @@ -6063,7 +6063,7 @@ func (c *CustomchannelsListCall) Do(opts ...googleapi.CallOption) (*CustomChanne }, } target := &ret - if err := json.NewDecoder(res.Body).Decode(target); err != nil { + if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil @@ -6261,7 +6261,7 @@ func (c *CustomchannelsAdunitsListCall) Do(opts ...googleapi.CallOption) (*AdUni }, } target := &ret - if err := json.NewDecoder(res.Body).Decode(target); err != nil { + if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil @@ -6441,7 +6441,7 @@ func (c *MetadataDimensionsListCall) Do(opts ...googleapi.CallOption) (*Metadata }, } target := &ret - if err := json.NewDecoder(res.Body).Decode(target); err != nil { + if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil @@ -6564,7 +6564,7 @@ func (c *MetadataMetricsListCall) Do(opts ...googleapi.CallOption) (*Metadata, e }, } target := &ret - if err := json.NewDecoder(res.Body).Decode(target); err != nil { + if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil @@ -6782,7 +6782,7 @@ func (c *ReportsGenerateCall) Do(opts ...googleapi.CallOption) (*AdsenseReportsG }, } target := &ret - if err := json.NewDecoder(res.Body).Decode(target); err != nil { + if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil @@ -7020,7 +7020,7 @@ func (c *ReportsSavedGenerateCall) Do(opts ...googleapi.CallOption) (*AdsenseRep }, } target := &ret - if err := json.NewDecoder(res.Body).Decode(target); err != nil { + if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil @@ -7191,7 +7191,7 @@ func (c *ReportsSavedListCall) Do(opts ...googleapi.CallOption) (*SavedReports, }, } target := &ret - if err := json.NewDecoder(res.Body).Decode(target); err != nil { + if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil @@ -7354,7 +7354,7 @@ func (c *SavedadstylesGetCall) Do(opts ...googleapi.CallOption) (*SavedAdStyle, }, } target := &ret - if err := json.NewDecoder(res.Body).Decode(target); err != nil { + if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil @@ -7504,7 +7504,7 @@ func (c *SavedadstylesListCall) Do(opts ...googleapi.CallOption) (*SavedAdStyles }, } target := &ret - if err := json.NewDecoder(res.Body).Decode(target); err != nil { + if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil @@ -7684,7 +7684,7 @@ func (c *UrlchannelsListCall) Do(opts ...googleapi.CallOption) (*UrlChannels, er }, } target := &ret - if err := json.NewDecoder(res.Body).Decode(target); err != nil { + if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil diff --git a/vendor/google.golang.org/api/adsense/v1.4/adsense-api.json b/vendor/google.golang.org/api/adsense/v1.4/adsense-api.json index fa96a60bc..bd9159ef2 100644 --- a/vendor/google.golang.org/api/adsense/v1.4/adsense-api.json +++ b/vendor/google.golang.org/api/adsense/v1.4/adsense-api.json @@ -1,2407 +1,2407 @@ { - "kind": "discovery#restDescription", - "etag": "\"YWOzh2SDasdU84ArJnpYek-OMdg/5dfOA4TQ4h1l0_SNvBmZicECrgQ\"", - "discoveryVersion": "v1", - "id": "adsense:v1.4", - "name": "adsense", - "canonicalName": "AdSense", - "version": "v1.4", - "revision": "20170912", - "title": "AdSense Management API", - "description": "Accesses AdSense publishers' inventory and generates performance reports.", - "ownerDomain": "google.com", - "ownerName": "Google", - "icons": { - "x16": "https://www.google.com/images/icons/product/adsense-16.png", - "x32": "https://www.google.com/images/icons/product/adsense-32.png" - }, - "documentationLink": "https://developers.google.com/adsense/management/", - "protocol": "rest", - "baseUrl": "https://www.googleapis.com/adsense/v1.4/", - "basePath": "/adsense/v1.4/", - "rootUrl": "https://www.googleapis.com/", - "servicePath": "adsense/v1.4/", - "batchPath": "batch/adsense/v1.4", - "parameters": { - "alt": { - "type": "string", - "description": "Data format for the response.", - "default": "json", - "enum": [ - "csv", - "json" - ], - "enumDescriptions": [ - "Responses with Content-Type of text/csv", - "Responses with Content-Type of application/json" - ], - "location": "query" - }, - "fields": { - "type": "string", - "description": "Selector specifying which fields to include in a partial response.", - "location": "query" - }, - "key": { - "type": "string", - "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" - }, - "oauth_token": { - "type": "string", - "description": "OAuth 2.0 token for the current user.", - "location": "query" - }, - "prettyPrint": { - "type": "boolean", - "description": "Returns response with indentations and line breaks.", - "default": "true", - "location": "query" - }, - "quotaUser": { - "type": "string", - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", - "location": "query" - }, - "userIp": { - "type": "string", - "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", - "location": "query" - } - }, - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/adsense": { - "description": "View and manage your AdSense data" - }, - "https://www.googleapis.com/auth/adsense.readonly": { - "description": "View your AdSense data" - } - } - } - }, - "schemas": { - "Account": { - "id": "Account", - "type": "object", - "properties": { - "creation_time": { - "type": "string", - "format": "int64" - }, - "id": { - "type": "string", - "description": "Unique identifier of this account." - }, - "kind": { - "type": "string", - "description": "Kind of resource this is, in this case adsense#account.", - "default": "adsense#account" - }, - "name": { - "type": "string", - "description": "Name of this account." - }, - "premium": { - "type": "boolean", - "description": "Whether this account is premium." - }, - "subAccounts": { - "type": "array", - "description": "Sub accounts of the this account.", - "items": { - "$ref": "Account" - } - }, - "timezone": { - "type": "string", - "description": "AdSense timezone of this account." - } - } - }, - "Accounts": { - "id": "Accounts", - "type": "object", - "properties": { - "etag": { - "type": "string", - "description": "ETag of this response for caching purposes." - }, - "items": { - "type": "array", - "description": "The accounts returned in this list response.", - "items": { - "$ref": "Account" - } - }, - "kind": { - "type": "string", - "description": "Kind of list this is, in this case adsense#accounts.", - "default": "adsense#accounts" - }, - "nextPageToken": { - "type": "string", - "description": "Continuation token used to page through accounts. To retrieve the next page of results, set the next request's \"pageToken\" value to this." - } - } - }, - "AdClient": { - "id": "AdClient", - "type": "object", - "properties": { - "arcOptIn": { - "type": "boolean", - "description": "Whether this ad client is opted in to ARC." - }, - "id": { - "type": "string", - "description": "Unique identifier of this ad client." - }, - "kind": { - "type": "string", - "description": "Kind of resource this is, in this case adsense#adClient.", - "default": "adsense#adClient" - }, - "productCode": { - "type": "string", - "description": "This ad client's product code, which corresponds to the PRODUCT_CODE report dimension." - }, - "supportsReporting": { - "type": "boolean", - "description": "Whether this ad client supports being reported on." - } - } - }, - "AdClients": { - "id": "AdClients", - "type": "object", - "properties": { - "etag": { - "type": "string", - "description": "ETag of this response for caching purposes." - }, - "items": { - "type": "array", - "description": "The ad clients returned in this list response.", - "items": { - "$ref": "AdClient" - } - }, - "kind": { - "type": "string", - "description": "Kind of list this is, in this case adsense#adClients.", - "default": "adsense#adClients" - }, - "nextPageToken": { - "type": "string", - "description": "Continuation token used to page through ad clients. To retrieve the next page of results, set the next request's \"pageToken\" value to this." - } - } - }, - "AdCode": { - "id": "AdCode", - "type": "object", - "properties": { - "adCode": { - "type": "string", - "description": "The ad code snippet." - }, - "kind": { - "type": "string", - "description": "Kind this is, in this case adsense#adCode.", - "default": "adsense#adCode" - } - } - }, - "AdStyle": { - "id": "AdStyle", - "type": "object", - "properties": { - "colors": { - "type": "object", - "description": "The colors which are included in the style. These are represented as six hexadecimal characters, similar to HTML color codes, but without the leading hash.", - "properties": { - "background": { - "type": "string", - "description": "The color of the ad background." - }, - "border": { - "type": "string", - "description": "The color of the ad border." - }, - "text": { - "type": "string", - "description": "The color of the ad text." - }, - "title": { - "type": "string", - "description": "The color of the ad title." - }, - "url": { - "type": "string", - "description": "The color of the ad url." - } - } - }, - "corners": { - "type": "string", - "description": "The style of the corners in the ad (deprecated: never populated, ignored)." - }, - "font": { - "type": "object", - "description": "The font which is included in the style.", - "properties": { - "family": { - "type": "string", - "description": "The family of the font." - }, - "size": { - "type": "string", - "description": "The size of the font." - } - } - }, - "kind": { - "type": "string", - "description": "Kind this is, in this case adsense#adStyle.", - "default": "adsense#adStyle" - } - } - }, - "AdUnit": { - "id": "AdUnit", - "type": "object", - "properties": { - "code": { - "type": "string", - "description": "Identity code of this ad unit, not necessarily unique across ad clients." - }, - "contentAdsSettings": { - "type": "object", - "description": "Settings specific to content ads (AFC) and highend mobile content ads (AFMC - deprecated).", - "properties": { - "backupOption": { - "type": "object", - "description": "The backup option to be used in instances where no ad is available.", - "properties": { - "color": { - "type": "string", - "description": "Color to use when type is set to COLOR." + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/adsense": { + "description": "View and manage your AdSense data" }, - "type": { - "type": "string", - "description": "Type of the backup option. Possible values are BLANK, COLOR and URL." - }, - "url": { - "type": "string", - "description": "URL to use when type is set to URL." + "https://www.googleapis.com/auth/adsense.readonly": { + "description": "View your AdSense data" } - } - }, - "size": { - "type": "string", - "description": "Size of this ad unit." - }, - "type": { - "type": "string", - "description": "Type of this ad unit." } - } + } + }, + "basePath": "/adsense/v1.4/", + "baseUrl": "https://www.googleapis.com/adsense/v1.4/", + "batchPath": "batch/adsense/v1.4", + "canonicalName": "AdSense", + "description": "Accesses AdSense publishers' inventory and generates performance reports.", + "discoveryVersion": "v1", + "documentationLink": "https://developers.google.com/adsense/management/", + "etag": "\"-iA1DTNe4s-I6JZXPt1t1Ypy8IU/8_GH3r5fzMK8tmgovIuz_n7J2kU\"", + "icons": { + "x16": "https://www.google.com/images/icons/product/adsense-16.png", + "x32": "https://www.google.com/images/icons/product/adsense-32.png" + }, + "id": "adsense:v1.4", + "kind": "discovery#restDescription", + "name": "adsense", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "alt": { + "default": "json", + "description": "Data format for the response.", + "enum": [ + "csv", + "json" + ], + "enumDescriptions": [ + "Responses with Content-Type of text/csv", + "Responses with Content-Type of application/json" + ], + "location": "query", + "type": "string" }, - "customStyle": { - "$ref": "AdStyle", - "description": "Custom style information specific to this ad unit." + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "location": "query", + "type": "string" }, - "feedAdsSettings": { - "type": "object", - "description": "Settings specific to feed ads (AFF) - deprecated.", - "properties": { - "adPosition": { - "type": "string", - "description": "The position of the ads relative to the feed entries." + "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" + }, + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", + "location": "query", + "type": "string" + }, + "userIp": { + "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", + "location": "query", + "type": "string" + } + }, + "protocol": "rest", + "resources": { + "accounts": { + "methods": { + "get": { + "description": "Get information about the selected AdSense account.", + "httpMethod": "GET", + "id": "adsense.accounts.get", + "parameterOrder": [ + "accountId" + ], + "parameters": { + "accountId": { + "description": "Account to get information about.", + "location": "path", + "required": true, + "type": "string" + }, + "tree": { + "description": "Whether the tree of sub accounts should be returned.", + "location": "query", + "type": "boolean" + } + }, + "path": "accounts/{accountId}", + "response": { + "$ref": "Account" + }, + "scopes": [ + "https://www.googleapis.com/auth/adsense", + "https://www.googleapis.com/auth/adsense.readonly" + ] + }, + "list": { + "description": "List all accounts available to this AdSense account.", + "httpMethod": "GET", + "id": "adsense.accounts.list", + "parameters": { + "maxResults": { + "description": "The maximum number of accounts to include in the response, used for paging.", + "format": "int32", + "location": "query", + "maximum": "10000", + "minimum": "0", + "type": "integer" + }, + "pageToken": { + "description": "A continuation token, used to page through accounts. To retrieve the next page, set this parameter to the value of \"nextPageToken\" from the previous response.", + "location": "query", + "type": "string" + } + }, + "path": "accounts", + "response": { + "$ref": "Accounts" + }, + "scopes": [ + "https://www.googleapis.com/auth/adsense", + "https://www.googleapis.com/auth/adsense.readonly" + ] + } }, - "frequency": { - "type": "integer", - "description": "The frequency at which ads should appear in the feed (i.e. every N entries).", - "format": "int32" - }, - "minimumWordCount": { - "type": "integer", - "description": "The minimum length an entry should be in order to have attached ads.", - "format": "int32" - }, - "type": { - "type": "string", - "description": "The type of ads which should appear." + "resources": { + "adclients": { + "methods": { + "list": { + "description": "List all ad clients in the specified account.", + "httpMethod": "GET", + "id": "adsense.accounts.adclients.list", + "parameterOrder": [ + "accountId" + ], + "parameters": { + "accountId": { + "description": "Account for which to list ad clients.", + "location": "path", + "required": true, + "type": "string" + }, + "maxResults": { + "description": "The maximum number of ad clients to include in the response, used for paging.", + "format": "int32", + "location": "query", + "maximum": "10000", + "minimum": "0", + "type": "integer" + }, + "pageToken": { + "description": "A continuation token, used to page through ad clients. To retrieve the next page, set this parameter to the value of \"nextPageToken\" from the previous response.", + "location": "query", + "type": "string" + } + }, + "path": "accounts/{accountId}/adclients", + "response": { + "$ref": "AdClients" + }, + "scopes": [ + "https://www.googleapis.com/auth/adsense", + "https://www.googleapis.com/auth/adsense.readonly" + ] + } + } + }, + "adunits": { + "methods": { + "get": { + "description": "Gets the specified ad unit in the specified ad client for the specified account.", + "httpMethod": "GET", + "id": "adsense.accounts.adunits.get", + "parameterOrder": [ + "accountId", + "adClientId", + "adUnitId" + ], + "parameters": { + "accountId": { + "description": "Account to which the ad client belongs.", + "location": "path", + "required": true, + "type": "string" + }, + "adClientId": { + "description": "Ad client for which to get the ad unit.", + "location": "path", + "required": true, + "type": "string" + }, + "adUnitId": { + "description": "Ad unit to retrieve.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "accounts/{accountId}/adclients/{adClientId}/adunits/{adUnitId}", + "response": { + "$ref": "AdUnit" + }, + "scopes": [ + "https://www.googleapis.com/auth/adsense", + "https://www.googleapis.com/auth/adsense.readonly" + ] + }, + "getAdCode": { + "description": "Get ad code for the specified ad unit.", + "httpMethod": "GET", + "id": "adsense.accounts.adunits.getAdCode", + "parameterOrder": [ + "accountId", + "adClientId", + "adUnitId" + ], + "parameters": { + "accountId": { + "description": "Account which contains the ad client.", + "location": "path", + "required": true, + "type": "string" + }, + "adClientId": { + "description": "Ad client with contains the ad unit.", + "location": "path", + "required": true, + "type": "string" + }, + "adUnitId": { + "description": "Ad unit to get the code for.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "accounts/{accountId}/adclients/{adClientId}/adunits/{adUnitId}/adcode", + "response": { + "$ref": "AdCode" + }, + "scopes": [ + "https://www.googleapis.com/auth/adsense", + "https://www.googleapis.com/auth/adsense.readonly" + ] + }, + "list": { + "description": "List all ad units in the specified ad client for the specified account.", + "httpMethod": "GET", + "id": "adsense.accounts.adunits.list", + "parameterOrder": [ + "accountId", + "adClientId" + ], + "parameters": { + "accountId": { + "description": "Account to which the ad client belongs.", + "location": "path", + "required": true, + "type": "string" + }, + "adClientId": { + "description": "Ad client for which to list ad units.", + "location": "path", + "required": true, + "type": "string" + }, + "includeInactive": { + "description": "Whether to include inactive ad units. Default: true.", + "location": "query", + "type": "boolean" + }, + "maxResults": { + "description": "The maximum number of ad units to include in the response, used for paging.", + "format": "int32", + "location": "query", + "maximum": "10000", + "minimum": "0", + "type": "integer" + }, + "pageToken": { + "description": "A continuation token, used to page through ad units. To retrieve the next page, set this parameter to the value of \"nextPageToken\" from the previous response.", + "location": "query", + "type": "string" + } + }, + "path": "accounts/{accountId}/adclients/{adClientId}/adunits", + "response": { + "$ref": "AdUnits" + }, + "scopes": [ + "https://www.googleapis.com/auth/adsense", + "https://www.googleapis.com/auth/adsense.readonly" + ] + } + }, + "resources": { + "customchannels": { + "methods": { + "list": { + "description": "List all custom channels which the specified ad unit belongs to.", + "httpMethod": "GET", + "id": "adsense.accounts.adunits.customchannels.list", + "parameterOrder": [ + "accountId", + "adClientId", + "adUnitId" + ], + "parameters": { + "accountId": { + "description": "Account to which the ad client belongs.", + "location": "path", + "required": true, + "type": "string" + }, + "adClientId": { + "description": "Ad client which contains the ad unit.", + "location": "path", + "required": true, + "type": "string" + }, + "adUnitId": { + "description": "Ad unit for which to list custom channels.", + "location": "path", + "required": true, + "type": "string" + }, + "maxResults": { + "description": "The maximum number of custom channels to include in the response, used for paging.", + "format": "int32", + "location": "query", + "maximum": "10000", + "minimum": "0", + "type": "integer" + }, + "pageToken": { + "description": "A continuation token, used to page through custom channels. To retrieve the next page, set this parameter to the value of \"nextPageToken\" from the previous response.", + "location": "query", + "type": "string" + } + }, + "path": "accounts/{accountId}/adclients/{adClientId}/adunits/{adUnitId}/customchannels", + "response": { + "$ref": "CustomChannels" + }, + "scopes": [ + "https://www.googleapis.com/auth/adsense", + "https://www.googleapis.com/auth/adsense.readonly" + ] + } + } + } + } + }, + "alerts": { + "methods": { + "delete": { + "description": "Dismiss (delete) the specified alert from the specified publisher AdSense account.", + "httpMethod": "DELETE", + "id": "adsense.accounts.alerts.delete", + "parameterOrder": [ + "accountId", + "alertId" + ], + "parameters": { + "accountId": { + "description": "Account which contains the ad unit.", + "location": "path", + "required": true, + "type": "string" + }, + "alertId": { + "description": "Alert to delete.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "accounts/{accountId}/alerts/{alertId}", + "scopes": [ + "https://www.googleapis.com/auth/adsense" + ] + }, + "list": { + "description": "List the alerts for the specified AdSense account.", + "httpMethod": "GET", + "id": "adsense.accounts.alerts.list", + "parameterOrder": [ + "accountId" + ], + "parameters": { + "accountId": { + "description": "Account for which to retrieve the alerts.", + "location": "path", + "required": true, + "type": "string" + }, + "locale": { + "description": "The locale to use for translating alert messages. The account locale will be used if this is not supplied. The AdSense default (English) will be used if the supplied locale is invalid or unsupported.", + "location": "query", + "type": "string" + } + }, + "path": "accounts/{accountId}/alerts", + "response": { + "$ref": "Alerts" + }, + "scopes": [ + "https://www.googleapis.com/auth/adsense", + "https://www.googleapis.com/auth/adsense.readonly" + ] + } + } + }, + "customchannels": { + "methods": { + "get": { + "description": "Get the specified custom channel from the specified ad client for the specified account.", + "httpMethod": "GET", + "id": "adsense.accounts.customchannels.get", + "parameterOrder": [ + "accountId", + "adClientId", + "customChannelId" + ], + "parameters": { + "accountId": { + "description": "Account to which the ad client belongs.", + "location": "path", + "required": true, + "type": "string" + }, + "adClientId": { + "description": "Ad client which contains the custom channel.", + "location": "path", + "required": true, + "type": "string" + }, + "customChannelId": { + "description": "Custom channel to retrieve.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "accounts/{accountId}/adclients/{adClientId}/customchannels/{customChannelId}", + "response": { + "$ref": "CustomChannel" + }, + "scopes": [ + "https://www.googleapis.com/auth/adsense", + "https://www.googleapis.com/auth/adsense.readonly" + ] + }, + "list": { + "description": "List all custom channels in the specified ad client for the specified account.", + "httpMethod": "GET", + "id": "adsense.accounts.customchannels.list", + "parameterOrder": [ + "accountId", + "adClientId" + ], + "parameters": { + "accountId": { + "description": "Account to which the ad client belongs.", + "location": "path", + "required": true, + "type": "string" + }, + "adClientId": { + "description": "Ad client for which to list custom channels.", + "location": "path", + "required": true, + "type": "string" + }, + "maxResults": { + "description": "The maximum number of custom channels to include in the response, used for paging.", + "format": "int32", + "location": "query", + "maximum": "10000", + "minimum": "0", + "type": "integer" + }, + "pageToken": { + "description": "A continuation token, used to page through custom channels. To retrieve the next page, set this parameter to the value of \"nextPageToken\" from the previous response.", + "location": "query", + "type": "string" + } + }, + "path": "accounts/{accountId}/adclients/{adClientId}/customchannels", + "response": { + "$ref": "CustomChannels" + }, + "scopes": [ + "https://www.googleapis.com/auth/adsense", + "https://www.googleapis.com/auth/adsense.readonly" + ] + } + }, + "resources": { + "adunits": { + "methods": { + "list": { + "description": "List all ad units in the specified custom channel.", + "httpMethod": "GET", + "id": "adsense.accounts.customchannels.adunits.list", + "parameterOrder": [ + "accountId", + "adClientId", + "customChannelId" + ], + "parameters": { + "accountId": { + "description": "Account to which the ad client belongs.", + "location": "path", + "required": true, + "type": "string" + }, + "adClientId": { + "description": "Ad client which contains the custom channel.", + "location": "path", + "required": true, + "type": "string" + }, + "customChannelId": { + "description": "Custom channel for which to list ad units.", + "location": "path", + "required": true, + "type": "string" + }, + "includeInactive": { + "description": "Whether to include inactive ad units. Default: true.", + "location": "query", + "type": "boolean" + }, + "maxResults": { + "description": "The maximum number of ad units to include in the response, used for paging.", + "format": "int32", + "location": "query", + "maximum": "10000", + "minimum": "0", + "type": "integer" + }, + "pageToken": { + "description": "A continuation token, used to page through ad units. To retrieve the next page, set this parameter to the value of \"nextPageToken\" from the previous response.", + "location": "query", + "type": "string" + } + }, + "path": "accounts/{accountId}/adclients/{adClientId}/customchannels/{customChannelId}/adunits", + "response": { + "$ref": "AdUnits" + }, + "scopes": [ + "https://www.googleapis.com/auth/adsense", + "https://www.googleapis.com/auth/adsense.readonly" + ] + } + } + } + } + }, + "payments": { + "methods": { + "list": { + "description": "List the payments for the specified AdSense account.", + "httpMethod": "GET", + "id": "adsense.accounts.payments.list", + "parameterOrder": [ + "accountId" + ], + "parameters": { + "accountId": { + "description": "Account for which to retrieve the payments.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "accounts/{accountId}/payments", + "response": { + "$ref": "Payments" + }, + "scopes": [ + "https://www.googleapis.com/auth/adsense", + "https://www.googleapis.com/auth/adsense.readonly" + ] + } + } + }, + "reports": { + "methods": { + "generate": { + "description": "Generate an AdSense report based on the report request sent in the query parameters. Returns the result as JSON; to retrieve output in CSV format specify \"alt=csv\" as a query parameter.", + "httpMethod": "GET", + "id": "adsense.accounts.reports.generate", + "parameterOrder": [ + "accountId", + "startDate", + "endDate" + ], + "parameters": { + "accountId": { + "description": "Account upon which to report.", + "location": "path", + "required": true, + "type": "string" + }, + "currency": { + "description": "Optional currency to use when reporting on monetary metrics. Defaults to the account's currency if not set.", + "location": "query", + "pattern": "[a-zA-Z]+", + "type": "string" + }, + "dimension": { + "description": "Dimensions to base the report on.", + "location": "query", + "pattern": "[a-zA-Z_]+", + "repeated": true, + "type": "string" + }, + "endDate": { + "description": "End of the date range to report on in \"YYYY-MM-DD\" format, inclusive.", + "location": "query", + "pattern": "\\d{4}-\\d{2}-\\d{2}|(today|startOfMonth|startOfYear)(([\\-\\+]\\d+[dwmy]){0,3}?)|(latest-(\\d{2})-(\\d{2})(-\\d+y)?)|(latest-latest-(\\d{2})(-\\d+m)?)", + "required": true, + "type": "string" + }, + "filter": { + "description": "Filters to be run on the report.", + "location": "query", + "pattern": "[a-zA-Z_]+(==|=@).+", + "repeated": true, + "type": "string" + }, + "locale": { + "description": "Optional locale to use for translating report output to a local language. Defaults to \"en_US\" if not specified.", + "location": "query", + "pattern": "[a-zA-Z_]+", + "type": "string" + }, + "maxResults": { + "description": "The maximum number of rows of report data to return.", + "format": "int32", + "location": "query", + "maximum": "50000", + "minimum": "0", + "type": "integer" + }, + "metric": { + "description": "Numeric columns to include in the report.", + "location": "query", + "pattern": "[a-zA-Z_]+", + "repeated": true, + "type": "string" + }, + "sort": { + "description": "The name of a dimension or metric to sort the resulting report on, optionally prefixed with \"+\" to sort ascending or \"-\" to sort descending. If no prefix is specified, the column is sorted ascending.", + "location": "query", + "pattern": "(\\+|-)?[a-zA-Z_]+", + "repeated": true, + "type": "string" + }, + "startDate": { + "description": "Start of the date range to report on in \"YYYY-MM-DD\" format, inclusive.", + "location": "query", + "pattern": "\\d{4}-\\d{2}-\\d{2}|(today|startOfMonth|startOfYear)(([\\-\\+]\\d+[dwmy]){0,3}?)|(latest-(\\d{2})-(\\d{2})(-\\d+y)?)|(latest-latest-(\\d{2})(-\\d+m)?)", + "required": true, + "type": "string" + }, + "startIndex": { + "description": "Index of the first row of report data to return.", + "format": "int32", + "location": "query", + "maximum": "5000", + "minimum": "0", + "type": "integer" + }, + "useTimezoneReporting": { + "description": "Whether the report should be generated in the AdSense account's local timezone. If false default PST/PDT timezone will be used.", + "location": "query", + "type": "boolean" + } + }, + "path": "accounts/{accountId}/reports", + "response": { + "$ref": "AdsenseReportsGenerateResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/adsense", + "https://www.googleapis.com/auth/adsense.readonly" + ], + "supportsMediaDownload": true + } + }, + "resources": { + "saved": { + "methods": { + "generate": { + "description": "Generate an AdSense report based on the saved report ID sent in the query parameters.", + "httpMethod": "GET", + "id": "adsense.accounts.reports.saved.generate", + "parameterOrder": [ + "accountId", + "savedReportId" + ], + "parameters": { + "accountId": { + "description": "Account to which the saved reports belong.", + "location": "path", + "required": true, + "type": "string" + }, + "locale": { + "description": "Optional locale to use for translating report output to a local language. Defaults to \"en_US\" if not specified.", + "location": "query", + "pattern": "[a-zA-Z_]+", + "type": "string" + }, + "maxResults": { + "description": "The maximum number of rows of report data to return.", + "format": "int32", + "location": "query", + "maximum": "50000", + "minimum": "0", + "type": "integer" + }, + "savedReportId": { + "description": "The saved report to retrieve.", + "location": "path", + "required": true, + "type": "string" + }, + "startIndex": { + "description": "Index of the first row of report data to return.", + "format": "int32", + "location": "query", + "maximum": "5000", + "minimum": "0", + "type": "integer" + } + }, + "path": "accounts/{accountId}/reports/{savedReportId}", + "response": { + "$ref": "AdsenseReportsGenerateResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/adsense", + "https://www.googleapis.com/auth/adsense.readonly" + ] + }, + "list": { + "description": "List all saved reports in the specified AdSense account.", + "httpMethod": "GET", + "id": "adsense.accounts.reports.saved.list", + "parameterOrder": [ + "accountId" + ], + "parameters": { + "accountId": { + "description": "Account to which the saved reports belong.", + "location": "path", + "required": true, + "type": "string" + }, + "maxResults": { + "description": "The maximum number of saved reports to include in the response, used for paging.", + "format": "int32", + "location": "query", + "maximum": "100", + "minimum": "0", + "type": "integer" + }, + "pageToken": { + "description": "A continuation token, used to page through saved reports. To retrieve the next page, set this parameter to the value of \"nextPageToken\" from the previous response.", + "location": "query", + "type": "string" + } + }, + "path": "accounts/{accountId}/reports/saved", + "response": { + "$ref": "SavedReports" + }, + "scopes": [ + "https://www.googleapis.com/auth/adsense", + "https://www.googleapis.com/auth/adsense.readonly" + ] + } + } + } + } + }, + "savedadstyles": { + "methods": { + "get": { + "description": "List a specific saved ad style for the specified account.", + "httpMethod": "GET", + "id": "adsense.accounts.savedadstyles.get", + "parameterOrder": [ + "accountId", + "savedAdStyleId" + ], + "parameters": { + "accountId": { + "description": "Account for which to get the saved ad style.", + "location": "path", + "required": true, + "type": "string" + }, + "savedAdStyleId": { + "description": "Saved ad style to retrieve.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "accounts/{accountId}/savedadstyles/{savedAdStyleId}", + "response": { + "$ref": "SavedAdStyle" + }, + "scopes": [ + "https://www.googleapis.com/auth/adsense", + "https://www.googleapis.com/auth/adsense.readonly" + ] + }, + "list": { + "description": "List all saved ad styles in the specified account.", + "httpMethod": "GET", + "id": "adsense.accounts.savedadstyles.list", + "parameterOrder": [ + "accountId" + ], + "parameters": { + "accountId": { + "description": "Account for which to list saved ad styles.", + "location": "path", + "required": true, + "type": "string" + }, + "maxResults": { + "description": "The maximum number of saved ad styles to include in the response, used for paging.", + "format": "int32", + "location": "query", + "maximum": "10000", + "minimum": "0", + "type": "integer" + }, + "pageToken": { + "description": "A continuation token, used to page through saved ad styles. To retrieve the next page, set this parameter to the value of \"nextPageToken\" from the previous response.", + "location": "query", + "type": "string" + } + }, + "path": "accounts/{accountId}/savedadstyles", + "response": { + "$ref": "SavedAdStyles" + }, + "scopes": [ + "https://www.googleapis.com/auth/adsense", + "https://www.googleapis.com/auth/adsense.readonly" + ] + } + } + }, + "urlchannels": { + "methods": { + "list": { + "description": "List all URL channels in the specified ad client for the specified account.", + "httpMethod": "GET", + "id": "adsense.accounts.urlchannels.list", + "parameterOrder": [ + "accountId", + "adClientId" + ], + "parameters": { + "accountId": { + "description": "Account to which the ad client belongs.", + "location": "path", + "required": true, + "type": "string" + }, + "adClientId": { + "description": "Ad client for which to list URL channels.", + "location": "path", + "required": true, + "type": "string" + }, + "maxResults": { + "description": "The maximum number of URL channels to include in the response, used for paging.", + "format": "int32", + "location": "query", + "maximum": "10000", + "minimum": "0", + "type": "integer" + }, + "pageToken": { + "description": "A continuation token, used to page through URL channels. To retrieve the next page, set this parameter to the value of \"nextPageToken\" from the previous response.", + "location": "query", + "type": "string" + } + }, + "path": "accounts/{accountId}/adclients/{adClientId}/urlchannels", + "response": { + "$ref": "UrlChannels" + }, + "scopes": [ + "https://www.googleapis.com/auth/adsense", + "https://www.googleapis.com/auth/adsense.readonly" + ] + } + } + } } - } }, - "id": { - "type": "string", - "description": "Unique identifier of this ad unit. This should be considered an opaque identifier; it is not safe to rely on it being in any particular format." - }, - "kind": { - "type": "string", - "description": "Kind of resource this is, in this case adsense#adUnit.", - "default": "adsense#adUnit" - }, - "mobileContentAdsSettings": { - "type": "object", - "description": "Settings specific to WAP mobile content ads (AFMC) - deprecated.", - "properties": { - "markupLanguage": { - "type": "string", - "description": "The markup language to use for this ad unit." - }, - "scriptingLanguage": { - "type": "string", - "description": "The scripting language to use for this ad unit." - }, - "size": { - "type": "string", - "description": "Size of this ad unit." - }, - "type": { - "type": "string", - "description": "Type of this ad unit." - } - } - }, - "name": { - "type": "string", - "description": "Name of this ad unit." - }, - "savedStyleId": { - "type": "string", - "description": "ID of the saved ad style which holds this ad unit's style information." - }, - "status": { - "type": "string", - "description": "Status of this ad unit. Possible values are:\nNEW: Indicates that the ad unit was created within the last seven days and does not yet have any activity associated with it.\n\nACTIVE: Indicates that there has been activity on this ad unit in the last seven days.\n\nINACTIVE: Indicates that there has been no activity on this ad unit in the last seven days." - } - } - }, - "AdUnits": { - "id": "AdUnits", - "type": "object", - "properties": { - "etag": { - "type": "string", - "description": "ETag of this response for caching purposes." - }, - "items": { - "type": "array", - "description": "The ad units returned in this list response.", - "items": { - "$ref": "AdUnit" - } - }, - "kind": { - "type": "string", - "description": "Kind of list this is, in this case adsense#adUnits.", - "default": "adsense#adUnits" - }, - "nextPageToken": { - "type": "string", - "description": "Continuation token used to page through ad units. To retrieve the next page of results, set the next request's \"pageToken\" value to this." - } - } - }, - "AdsenseReportsGenerateResponse": { - "id": "AdsenseReportsGenerateResponse", - "type": "object", - "properties": { - "averages": { - "type": "array", - "description": "The averages of the report. This is the same length as any other row in the report; cells corresponding to dimension columns are empty.", - "items": { - "type": "string" - } - }, - "endDate": { - "type": "string", - "description": "The requested end date in yyyy-mm-dd format." - }, - "headers": { - "type": "array", - "description": "The header information of the columns requested in the report. This is a list of headers; one for each dimension in the request, followed by one for each metric in the request.", - "items": { - "type": "object", - "properties": { - "currency": { - "type": "string", - "description": "The currency of this column. Only present if the header type is METRIC_CURRENCY." - }, - "name": { - "type": "string", - "description": "The name of the header." - }, - "type": { - "type": "string", - "description": "The type of the header; one of DIMENSION, METRIC_TALLY, METRIC_RATIO, or METRIC_CURRENCY." - } - } - } - }, - "kind": { - "type": "string", - "description": "Kind this is, in this case adsense#report.", - "default": "adsense#report" - }, - "rows": { - "type": "array", - "description": "The output rows of the report. Each row is a list of cells; one for each dimension in the request, followed by one for each metric in the request. The dimension cells contain strings, and the metric cells contain numbers.", - "items": { - "type": "array", - "items": { - "type": "string" - } - } - }, - "startDate": { - "type": "string", - "description": "The requested start date in yyyy-mm-dd format." - }, - "totalMatchedRows": { - "type": "string", - "description": "The total number of rows matched by the report request. Fewer rows may be returned in the response due to being limited by the row count requested or the report row limit.", - "format": "int64" - }, - "totals": { - "type": "array", - "description": "The totals of the report. This is the same length as any other row in the report; cells corresponding to dimension columns are empty.", - "items": { - "type": "string" - } - }, - "warnings": { - "type": "array", - "description": "Any warnings associated with generation of the report.", - "items": { - "type": "string" - } - } - } - }, - "Alert": { - "id": "Alert", - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Unique identifier of this alert. This should be considered an opaque identifier; it is not safe to rely on it being in any particular format." - }, - "isDismissible": { - "type": "boolean", - "description": "Whether this alert can be dismissed." - }, - "kind": { - "type": "string", - "description": "Kind of resource this is, in this case adsense#alert.", - "default": "adsense#alert" - }, - "message": { - "type": "string", - "description": "The localized alert message." - }, - "severity": { - "type": "string", - "description": "Severity of this alert. Possible values: INFO, WARNING, SEVERE." - }, - "type": { - "type": "string", - "description": "Type of this alert. Possible values: SELF_HOLD, MIGRATED_TO_BILLING3, ADDRESS_PIN_VERIFICATION, PHONE_PIN_VERIFICATION, CORPORATE_ENTITY, GRAYLISTED_PUBLISHER, API_HOLD." - } - } - }, - "Alerts": { - "id": "Alerts", - "type": "object", - "properties": { - "items": { - "type": "array", - "description": "The alerts returned in this list response.", - "items": { - "$ref": "Alert" - } - }, - "kind": { - "type": "string", - "description": "Kind of list this is, in this case adsense#alerts.", - "default": "adsense#alerts" - } - } - }, - "CustomChannel": { - "id": "CustomChannel", - "type": "object", - "properties": { - "code": { - "type": "string", - "description": "Code of this custom channel, not necessarily unique across ad clients." - }, - "id": { - "type": "string", - "description": "Unique identifier of this custom channel. This should be considered an opaque identifier; it is not safe to rely on it being in any particular format." - }, - "kind": { - "type": "string", - "description": "Kind of resource this is, in this case adsense#customChannel.", - "default": "adsense#customChannel" - }, - "name": { - "type": "string", - "description": "Name of this custom channel." - }, - "targetingInfo": { - "type": "object", - "description": "The targeting information of this custom channel, if activated.", - "properties": { - "adsAppearOn": { - "type": "string", - "description": "The name used to describe this channel externally." - }, - "description": { - "type": "string", - "description": "The external description of the channel." - }, - "location": { - "type": "string", - "description": "The locations in which ads appear. (Only valid for content and mobile content ads (deprecated)). Acceptable values for content ads are: TOP_LEFT, TOP_CENTER, TOP_RIGHT, MIDDLE_LEFT, MIDDLE_CENTER, MIDDLE_RIGHT, BOTTOM_LEFT, BOTTOM_CENTER, BOTTOM_RIGHT, MULTIPLE_LOCATIONS. Acceptable values for mobile content ads (deprecated) are: TOP, MIDDLE, BOTTOM, MULTIPLE_LOCATIONS." - }, - "siteLanguage": { - "type": "string", - "description": "The language of the sites ads will be displayed on." - } - } - } - } - }, - "CustomChannels": { - "id": "CustomChannels", - "type": "object", - "properties": { - "etag": { - "type": "string", - "description": "ETag of this response for caching purposes." - }, - "items": { - "type": "array", - "description": "The custom channels returned in this list response.", - "items": { - "$ref": "CustomChannel" - } - }, - "kind": { - "type": "string", - "description": "Kind of list this is, in this case adsense#customChannels.", - "default": "adsense#customChannels" - }, - "nextPageToken": { - "type": "string", - "description": "Continuation token used to page through custom channels. To retrieve the next page of results, set the next request's \"pageToken\" value to this." - } - } - }, - "Metadata": { - "id": "Metadata", - "type": "object", - "properties": { - "items": { - "type": "array", - "items": { - "$ref": "ReportingMetadataEntry" - } - }, - "kind": { - "type": "string", - "description": "Kind of list this is, in this case adsense#metadata.", - "default": "adsense#metadata" - } - } - }, - "Payment": { - "id": "Payment", - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Unique identifier of this Payment." - }, - "kind": { - "type": "string", - "description": "Kind of resource this is, in this case adsense#payment.", - "default": "adsense#payment" - }, - "paymentAmount": { - "type": "string", - "description": "The amount to be paid." - }, - "paymentAmountCurrencyCode": { - "type": "string", - "description": "The currency code for the amount to be paid." - }, - "paymentDate": { - "type": "string", - "description": "The date this payment was/will be credited to the user, or none if the payment threshold has not been met." - } - } - }, - "Payments": { - "id": "Payments", - "type": "object", - "properties": { - "items": { - "type": "array", - "description": "The list of Payments for the account. One or both of a) the account's most recent payment; and b) the account's upcoming payment.", - "items": { - "$ref": "Payment" - } - }, - "kind": { - "type": "string", - "description": "Kind of list this is, in this case adsense#payments.", - "default": "adsense#payments" - } - } - }, - "ReportingMetadataEntry": { - "id": "ReportingMetadataEntry", - "type": "object", - "properties": { - "compatibleDimensions": { - "type": "array", - "description": "For metrics this is a list of dimension IDs which the metric is compatible with, for dimensions it is a list of compatibility groups the dimension belongs to.", - "items": { - "type": "string" - } - }, - "compatibleMetrics": { - "type": "array", - "description": "The names of the metrics the dimension or metric this reporting metadata entry describes is compatible with.", - "items": { - "type": "string" - } - }, - "id": { - "type": "string", - "description": "Unique identifier of this reporting metadata entry, corresponding to the name of the appropriate dimension or metric." - }, - "kind": { - "type": "string", - "description": "Kind of resource this is, in this case adsense#reportingMetadataEntry.", - "default": "adsense#reportingMetadataEntry" - }, - "requiredDimensions": { - "type": "array", - "description": "The names of the dimensions which the dimension or metric this reporting metadata entry describes requires to also be present in order for the report to be valid. Omitting these will not cause an error or warning, but may result in data which cannot be correctly interpreted.", - "items": { - "type": "string" - } - }, - "requiredMetrics": { - "type": "array", - "description": "The names of the metrics which the dimension or metric this reporting metadata entry describes requires to also be present in order for the report to be valid. Omitting these will not cause an error or warning, but may result in data which cannot be correctly interpreted.", - "items": { - "type": "string" - } - }, - "supportedProducts": { - "type": "array", - "description": "The codes of the projects supported by the dimension or metric this reporting metadata entry describes.", - "items": { - "type": "string" - } - } - } - }, - "SavedAdStyle": { - "id": "SavedAdStyle", - "type": "object", - "properties": { - "adStyle": { - "$ref": "AdStyle", - "description": "The AdStyle itself." - }, - "id": { - "type": "string", - "description": "Unique identifier of this saved ad style. This should be considered an opaque identifier; it is not safe to rely on it being in any particular format." - }, - "kind": { - "type": "string", - "description": "Kind of resource this is, in this case adsense#savedAdStyle.", - "default": "adsense#savedAdStyle" - }, - "name": { - "type": "string", - "description": "The user selected name of this SavedAdStyle." - } - } - }, - "SavedAdStyles": { - "id": "SavedAdStyles", - "type": "object", - "properties": { - "etag": { - "type": "string", - "description": "ETag of this response for caching purposes." - }, - "items": { - "type": "array", - "description": "The saved ad styles returned in this list response.", - "items": { - "$ref": "SavedAdStyle" - } - }, - "kind": { - "type": "string", - "description": "Kind of list this is, in this case adsense#savedAdStyles.", - "default": "adsense#savedAdStyles" - }, - "nextPageToken": { - "type": "string", - "description": "Continuation token used to page through ad units. To retrieve the next page of results, set the next request's \"pageToken\" value to this." - } - } - }, - "SavedReport": { - "id": "SavedReport", - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Unique identifier of this saved report." - }, - "kind": { - "type": "string", - "description": "Kind of resource this is, in this case adsense#savedReport.", - "default": "adsense#savedReport" - }, - "name": { - "type": "string", - "description": "This saved report's name." - } - } - }, - "SavedReports": { - "id": "SavedReports", - "type": "object", - "properties": { - "etag": { - "type": "string", - "description": "ETag of this response for caching purposes." - }, - "items": { - "type": "array", - "description": "The saved reports returned in this list response.", - "items": { - "$ref": "SavedReport" - } - }, - "kind": { - "type": "string", - "description": "Kind of list this is, in this case adsense#savedReports.", - "default": "adsense#savedReports" - }, - "nextPageToken": { - "type": "string", - "description": "Continuation token used to page through saved reports. To retrieve the next page of results, set the next request's \"pageToken\" value to this." - } - } - }, - "UrlChannel": { - "id": "UrlChannel", - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Unique identifier of this URL channel. This should be considered an opaque identifier; it is not safe to rely on it being in any particular format." - }, - "kind": { - "type": "string", - "description": "Kind of resource this is, in this case adsense#urlChannel.", - "default": "adsense#urlChannel" - }, - "urlPattern": { - "type": "string", - "description": "URL Pattern of this URL channel. Does not include \"http://\" or \"https://\". Example: www.example.com/home" - } - } - }, - "UrlChannels": { - "id": "UrlChannels", - "type": "object", - "properties": { - "etag": { - "type": "string", - "description": "ETag of this response for caching purposes." - }, - "items": { - "type": "array", - "description": "The URL channels returned in this list response.", - "items": { - "$ref": "UrlChannel" - } - }, - "kind": { - "type": "string", - "description": "Kind of list this is, in this case adsense#urlChannels.", - "default": "adsense#urlChannels" - }, - "nextPageToken": { - "type": "string", - "description": "Continuation token used to page through URL channels. To retrieve the next page of results, set the next request's \"pageToken\" value to this." - } - } - } - }, - "resources": { - "accounts": { - "methods": { - "get": { - "id": "adsense.accounts.get", - "path": "accounts/{accountId}", - "httpMethod": "GET", - "description": "Get information about the selected AdSense account.", - "parameters": { - "accountId": { - "type": "string", - "description": "Account to get information about.", - "required": true, - "location": "path" - }, - "tree": { - "type": "boolean", - "description": "Whether the tree of sub accounts should be returned.", - "location": "query" - } - }, - "parameterOrder": [ - "accountId" - ], - "response": { - "$ref": "Account" - }, - "scopes": [ - "https://www.googleapis.com/auth/adsense", - "https://www.googleapis.com/auth/adsense.readonly" - ] - }, - "list": { - "id": "adsense.accounts.list", - "path": "accounts", - "httpMethod": "GET", - "description": "List all accounts available to this AdSense account.", - "parameters": { - "maxResults": { - "type": "integer", - "description": "The maximum number of accounts to include in the response, used for paging.", - "format": "int32", - "minimum": "0", - "maximum": "10000", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "A continuation token, used to page through accounts. To retrieve the next page, set this parameter to the value of \"nextPageToken\" from the previous response.", - "location": "query" - } - }, - "response": { - "$ref": "Accounts" - }, - "scopes": [ - "https://www.googleapis.com/auth/adsense", - "https://www.googleapis.com/auth/adsense.readonly" - ] - } - }, - "resources": { "adclients": { - "methods": { - "list": { - "id": "adsense.accounts.adclients.list", - "path": "accounts/{accountId}/adclients", - "httpMethod": "GET", - "description": "List all ad clients in the specified account.", - "parameters": { - "accountId": { - "type": "string", - "description": "Account for which to list ad clients.", - "required": true, - "location": "path" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of ad clients to include in the response, used for paging.", - "format": "int32", - "minimum": "0", - "maximum": "10000", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "A continuation token, used to page through ad clients. To retrieve the next page, set this parameter to the value of \"nextPageToken\" from the previous response.", - "location": "query" + "methods": { + "list": { + "description": "List all ad clients in this AdSense account.", + "httpMethod": "GET", + "id": "adsense.adclients.list", + "parameters": { + "maxResults": { + "description": "The maximum number of ad clients to include in the response, used for paging.", + "format": "int32", + "location": "query", + "maximum": "10000", + "minimum": "0", + "type": "integer" + }, + "pageToken": { + "description": "A continuation token, used to page through ad clients. To retrieve the next page, set this parameter to the value of \"nextPageToken\" from the previous response.", + "location": "query", + "type": "string" + } + }, + "path": "adclients", + "response": { + "$ref": "AdClients" + }, + "scopes": [ + "https://www.googleapis.com/auth/adsense", + "https://www.googleapis.com/auth/adsense.readonly" + ] } - }, - "parameterOrder": [ - "accountId" - ], - "response": { - "$ref": "AdClients" - }, - "scopes": [ - "https://www.googleapis.com/auth/adsense", - "https://www.googleapis.com/auth/adsense.readonly" - ] } - } }, "adunits": { - "methods": { - "get": { - "id": "adsense.accounts.adunits.get", - "path": "accounts/{accountId}/adclients/{adClientId}/adunits/{adUnitId}", - "httpMethod": "GET", - "description": "Gets the specified ad unit in the specified ad client for the specified account.", - "parameters": { - "accountId": { - "type": "string", - "description": "Account to which the ad client belongs.", - "required": true, - "location": "path" + "methods": { + "get": { + "description": "Gets the specified ad unit in the specified ad client.", + "httpMethod": "GET", + "id": "adsense.adunits.get", + "parameterOrder": [ + "adClientId", + "adUnitId" + ], + "parameters": { + "adClientId": { + "description": "Ad client for which to get the ad unit.", + "location": "path", + "required": true, + "type": "string" + }, + "adUnitId": { + "description": "Ad unit to retrieve.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "adclients/{adClientId}/adunits/{adUnitId}", + "response": { + "$ref": "AdUnit" + }, + "scopes": [ + "https://www.googleapis.com/auth/adsense", + "https://www.googleapis.com/auth/adsense.readonly" + ] }, - "adClientId": { - "type": "string", - "description": "Ad client for which to get the ad unit.", - "required": true, - "location": "path" + "getAdCode": { + "description": "Get ad code for the specified ad unit.", + "httpMethod": "GET", + "id": "adsense.adunits.getAdCode", + "parameterOrder": [ + "adClientId", + "adUnitId" + ], + "parameters": { + "adClientId": { + "description": "Ad client with contains the ad unit.", + "location": "path", + "required": true, + "type": "string" + }, + "adUnitId": { + "description": "Ad unit to get the code for.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "adclients/{adClientId}/adunits/{adUnitId}/adcode", + "response": { + "$ref": "AdCode" + }, + "scopes": [ + "https://www.googleapis.com/auth/adsense", + "https://www.googleapis.com/auth/adsense.readonly" + ] }, - "adUnitId": { - "type": "string", - "description": "Ad unit to retrieve.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "accountId", - "adClientId", - "adUnitId" - ], - "response": { - "$ref": "AdUnit" - }, - "scopes": [ - "https://www.googleapis.com/auth/adsense", - "https://www.googleapis.com/auth/adsense.readonly" - ] - }, - "getAdCode": { - "id": "adsense.accounts.adunits.getAdCode", - "path": "accounts/{accountId}/adclients/{adClientId}/adunits/{adUnitId}/adcode", - "httpMethod": "GET", - "description": "Get ad code for the specified ad unit.", - "parameters": { - "accountId": { - "type": "string", - "description": "Account which contains the ad client.", - "required": true, - "location": "path" - }, - "adClientId": { - "type": "string", - "description": "Ad client with contains the ad unit.", - "required": true, - "location": "path" - }, - "adUnitId": { - "type": "string", - "description": "Ad unit to get the code for.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "accountId", - "adClientId", - "adUnitId" - ], - "response": { - "$ref": "AdCode" - }, - "scopes": [ - "https://www.googleapis.com/auth/adsense", - "https://www.googleapis.com/auth/adsense.readonly" - ] - }, - "list": { - "id": "adsense.accounts.adunits.list", - "path": "accounts/{accountId}/adclients/{adClientId}/adunits", - "httpMethod": "GET", - "description": "List all ad units in the specified ad client for the specified account.", - "parameters": { - "accountId": { - "type": "string", - "description": "Account to which the ad client belongs.", - "required": true, - "location": "path" - }, - "adClientId": { - "type": "string", - "description": "Ad client for which to list ad units.", - "required": true, - "location": "path" - }, - "includeInactive": { - "type": "boolean", - "description": "Whether to include inactive ad units. Default: true.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of ad units to include in the response, used for paging.", - "format": "int32", - "minimum": "0", - "maximum": "10000", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "A continuation token, used to page through ad units. To retrieve the next page, set this parameter to the value of \"nextPageToken\" from the previous response.", - "location": "query" - } - }, - "parameterOrder": [ - "accountId", - "adClientId" - ], - "response": { - "$ref": "AdUnits" - }, - "scopes": [ - "https://www.googleapis.com/auth/adsense", - "https://www.googleapis.com/auth/adsense.readonly" - ] - } - }, - "resources": { - "customchannels": { - "methods": { "list": { - "id": "adsense.accounts.adunits.customchannels.list", - "path": "accounts/{accountId}/adclients/{adClientId}/adunits/{adUnitId}/customchannels", - "httpMethod": "GET", - "description": "List all custom channels which the specified ad unit belongs to.", - "parameters": { - "accountId": { - "type": "string", - "description": "Account to which the ad client belongs.", - "required": true, - "location": "path" + "description": "List all ad units in the specified ad client for this AdSense account.", + "httpMethod": "GET", + "id": "adsense.adunits.list", + "parameterOrder": [ + "adClientId" + ], + "parameters": { + "adClientId": { + "description": "Ad client for which to list ad units.", + "location": "path", + "required": true, + "type": "string" + }, + "includeInactive": { + "description": "Whether to include inactive ad units. Default: true.", + "location": "query", + "type": "boolean" + }, + "maxResults": { + "description": "The maximum number of ad units to include in the response, used for paging.", + "format": "int32", + "location": "query", + "maximum": "10000", + "minimum": "0", + "type": "integer" + }, + "pageToken": { + "description": "A continuation token, used to page through ad units. To retrieve the next page, set this parameter to the value of \"nextPageToken\" from the previous response.", + "location": "query", + "type": "string" + } }, - "adClientId": { - "type": "string", - "description": "Ad client which contains the ad unit.", - "required": true, - "location": "path" + "path": "adclients/{adClientId}/adunits", + "response": { + "$ref": "AdUnits" }, - "adUnitId": { - "type": "string", - "description": "Ad unit for which to list custom channels.", - "required": true, - "location": "path" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of custom channels to include in the response, used for paging.", - "format": "int32", - "minimum": "0", - "maximum": "10000", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "A continuation token, used to page through custom channels. To retrieve the next page, set this parameter to the value of \"nextPageToken\" from the previous response.", - "location": "query" - } - }, - "parameterOrder": [ - "accountId", - "adClientId", - "adUnitId" - ], - "response": { - "$ref": "CustomChannels" - }, - "scopes": [ - "https://www.googleapis.com/auth/adsense", - "https://www.googleapis.com/auth/adsense.readonly" - ] + "scopes": [ + "https://www.googleapis.com/auth/adsense", + "https://www.googleapis.com/auth/adsense.readonly" + ] + } + }, + "resources": { + "customchannels": { + "methods": { + "list": { + "description": "List all custom channels which the specified ad unit belongs to.", + "httpMethod": "GET", + "id": "adsense.adunits.customchannels.list", + "parameterOrder": [ + "adClientId", + "adUnitId" + ], + "parameters": { + "adClientId": { + "description": "Ad client which contains the ad unit.", + "location": "path", + "required": true, + "type": "string" + }, + "adUnitId": { + "description": "Ad unit for which to list custom channels.", + "location": "path", + "required": true, + "type": "string" + }, + "maxResults": { + "description": "The maximum number of custom channels to include in the response, used for paging.", + "format": "int32", + "location": "query", + "maximum": "10000", + "minimum": "0", + "type": "integer" + }, + "pageToken": { + "description": "A continuation token, used to page through custom channels. To retrieve the next page, set this parameter to the value of \"nextPageToken\" from the previous response.", + "location": "query", + "type": "string" + } + }, + "path": "adclients/{adClientId}/adunits/{adUnitId}/customchannels", + "response": { + "$ref": "CustomChannels" + }, + "scopes": [ + "https://www.googleapis.com/auth/adsense", + "https://www.googleapis.com/auth/adsense.readonly" + ] + } + } } - } } - } }, "alerts": { - "methods": { - "delete": { - "id": "adsense.accounts.alerts.delete", - "path": "accounts/{accountId}/alerts/{alertId}", - "httpMethod": "DELETE", - "description": "Dismiss (delete) the specified alert from the specified publisher AdSense account.", - "parameters": { - "accountId": { - "type": "string", - "description": "Account which contains the ad unit.", - "required": true, - "location": "path" + "methods": { + "delete": { + "description": "Dismiss (delete) the specified alert from the publisher's AdSense account.", + "httpMethod": "DELETE", + "id": "adsense.alerts.delete", + "parameterOrder": [ + "alertId" + ], + "parameters": { + "alertId": { + "description": "Alert to delete.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "alerts/{alertId}", + "scopes": [ + "https://www.googleapis.com/auth/adsense" + ] }, - "alertId": { - "type": "string", - "description": "Alert to delete.", - "required": true, - "location": "path" + "list": { + "description": "List the alerts for this AdSense account.", + "httpMethod": "GET", + "id": "adsense.alerts.list", + "parameters": { + "locale": { + "description": "The locale to use for translating alert messages. The account locale will be used if this is not supplied. The AdSense default (English) will be used if the supplied locale is invalid or unsupported.", + "location": "query", + "type": "string" + } + }, + "path": "alerts", + "response": { + "$ref": "Alerts" + }, + "scopes": [ + "https://www.googleapis.com/auth/adsense", + "https://www.googleapis.com/auth/adsense.readonly" + ] } - }, - "parameterOrder": [ - "accountId", - "alertId" - ], - "scopes": [ - "https://www.googleapis.com/auth/adsense" - ] - }, - "list": { - "id": "adsense.accounts.alerts.list", - "path": "accounts/{accountId}/alerts", - "httpMethod": "GET", - "description": "List the alerts for the specified AdSense account.", - "parameters": { - "accountId": { - "type": "string", - "description": "Account for which to retrieve the alerts.", - "required": true, - "location": "path" - }, - "locale": { - "type": "string", - "description": "The locale to use for translating alert messages. The account locale will be used if this is not supplied. The AdSense default (English) will be used if the supplied locale is invalid or unsupported.", - "location": "query" - } - }, - "parameterOrder": [ - "accountId" - ], - "response": { - "$ref": "Alerts" - }, - "scopes": [ - "https://www.googleapis.com/auth/adsense", - "https://www.googleapis.com/auth/adsense.readonly" - ] } - } }, "customchannels": { - "methods": { - "get": { - "id": "adsense.accounts.customchannels.get", - "path": "accounts/{accountId}/adclients/{adClientId}/customchannels/{customChannelId}", - "httpMethod": "GET", - "description": "Get the specified custom channel from the specified ad client for the specified account.", - "parameters": { - "accountId": { - "type": "string", - "description": "Account to which the ad client belongs.", - "required": true, - "location": "path" + "methods": { + "get": { + "description": "Get the specified custom channel from the specified ad client.", + "httpMethod": "GET", + "id": "adsense.customchannels.get", + "parameterOrder": [ + "adClientId", + "customChannelId" + ], + "parameters": { + "adClientId": { + "description": "Ad client which contains the custom channel.", + "location": "path", + "required": true, + "type": "string" + }, + "customChannelId": { + "description": "Custom channel to retrieve.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "adclients/{adClientId}/customchannels/{customChannelId}", + "response": { + "$ref": "CustomChannel" + }, + "scopes": [ + "https://www.googleapis.com/auth/adsense", + "https://www.googleapis.com/auth/adsense.readonly" + ] }, - "adClientId": { - "type": "string", - "description": "Ad client which contains the custom channel.", - "required": true, - "location": "path" - }, - "customChannelId": { - "type": "string", - "description": "Custom channel to retrieve.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "accountId", - "adClientId", - "customChannelId" - ], - "response": { - "$ref": "CustomChannel" - }, - "scopes": [ - "https://www.googleapis.com/auth/adsense", - "https://www.googleapis.com/auth/adsense.readonly" - ] - }, - "list": { - "id": "adsense.accounts.customchannels.list", - "path": "accounts/{accountId}/adclients/{adClientId}/customchannels", - "httpMethod": "GET", - "description": "List all custom channels in the specified ad client for the specified account.", - "parameters": { - "accountId": { - "type": "string", - "description": "Account to which the ad client belongs.", - "required": true, - "location": "path" - }, - "adClientId": { - "type": "string", - "description": "Ad client for which to list custom channels.", - "required": true, - "location": "path" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of custom channels to include in the response, used for paging.", - "format": "int32", - "minimum": "0", - "maximum": "10000", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "A continuation token, used to page through custom channels. To retrieve the next page, set this parameter to the value of \"nextPageToken\" from the previous response.", - "location": "query" - } - }, - "parameterOrder": [ - "accountId", - "adClientId" - ], - "response": { - "$ref": "CustomChannels" - }, - "scopes": [ - "https://www.googleapis.com/auth/adsense", - "https://www.googleapis.com/auth/adsense.readonly" - ] - } - }, - "resources": { - "adunits": { - "methods": { "list": { - "id": "adsense.accounts.customchannels.adunits.list", - "path": "accounts/{accountId}/adclients/{adClientId}/customchannels/{customChannelId}/adunits", - "httpMethod": "GET", - "description": "List all ad units in the specified custom channel.", - "parameters": { - "accountId": { - "type": "string", - "description": "Account to which the ad client belongs.", - "required": true, - "location": "path" + "description": "List all custom channels in the specified ad client for this AdSense account.", + "httpMethod": "GET", + "id": "adsense.customchannels.list", + "parameterOrder": [ + "adClientId" + ], + "parameters": { + "adClientId": { + "description": "Ad client for which to list custom channels.", + "location": "path", + "required": true, + "type": "string" + }, + "maxResults": { + "description": "The maximum number of custom channels to include in the response, used for paging.", + "format": "int32", + "location": "query", + "maximum": "10000", + "minimum": "0", + "type": "integer" + }, + "pageToken": { + "description": "A continuation token, used to page through custom channels. To retrieve the next page, set this parameter to the value of \"nextPageToken\" from the previous response.", + "location": "query", + "type": "string" + } }, - "adClientId": { - "type": "string", - "description": "Ad client which contains the custom channel.", - "required": true, - "location": "path" + "path": "adclients/{adClientId}/customchannels", + "response": { + "$ref": "CustomChannels" }, - "customChannelId": { - "type": "string", - "description": "Custom channel for which to list ad units.", - "required": true, - "location": "path" - }, - "includeInactive": { - "type": "boolean", - "description": "Whether to include inactive ad units. Default: true.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of ad units to include in the response, used for paging.", - "format": "int32", - "minimum": "0", - "maximum": "10000", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "A continuation token, used to page through ad units. To retrieve the next page, set this parameter to the value of \"nextPageToken\" from the previous response.", - "location": "query" - } - }, - "parameterOrder": [ - "accountId", - "adClientId", - "customChannelId" - ], - "response": { - "$ref": "AdUnits" - }, - "scopes": [ - "https://www.googleapis.com/auth/adsense", - "https://www.googleapis.com/auth/adsense.readonly" - ] + "scopes": [ + "https://www.googleapis.com/auth/adsense", + "https://www.googleapis.com/auth/adsense.readonly" + ] + } + }, + "resources": { + "adunits": { + "methods": { + "list": { + "description": "List all ad units in the specified custom channel.", + "httpMethod": "GET", + "id": "adsense.customchannels.adunits.list", + "parameterOrder": [ + "adClientId", + "customChannelId" + ], + "parameters": { + "adClientId": { + "description": "Ad client which contains the custom channel.", + "location": "path", + "required": true, + "type": "string" + }, + "customChannelId": { + "description": "Custom channel for which to list ad units.", + "location": "path", + "required": true, + "type": "string" + }, + "includeInactive": { + "description": "Whether to include inactive ad units. Default: true.", + "location": "query", + "type": "boolean" + }, + "maxResults": { + "description": "The maximum number of ad units to include in the response, used for paging.", + "format": "int32", + "location": "query", + "maximum": "10000", + "minimum": "0", + "type": "integer" + }, + "pageToken": { + "description": "A continuation token, used to page through ad units. To retrieve the next page, set this parameter to the value of \"nextPageToken\" from the previous response.", + "location": "query", + "type": "string" + } + }, + "path": "adclients/{adClientId}/customchannels/{customChannelId}/adunits", + "response": { + "$ref": "AdUnits" + }, + "scopes": [ + "https://www.googleapis.com/auth/adsense", + "https://www.googleapis.com/auth/adsense.readonly" + ] + } + } + } + } + }, + "metadata": { + "resources": { + "dimensions": { + "methods": { + "list": { + "description": "List the metadata for the dimensions available to this AdSense account.", + "httpMethod": "GET", + "id": "adsense.metadata.dimensions.list", + "path": "metadata/dimensions", + "response": { + "$ref": "Metadata" + }, + "scopes": [ + "https://www.googleapis.com/auth/adsense", + "https://www.googleapis.com/auth/adsense.readonly" + ] + } + } + }, + "metrics": { + "methods": { + "list": { + "description": "List the metadata for the metrics available to this AdSense account.", + "httpMethod": "GET", + "id": "adsense.metadata.metrics.list", + "path": "metadata/metrics", + "response": { + "$ref": "Metadata" + }, + "scopes": [ + "https://www.googleapis.com/auth/adsense", + "https://www.googleapis.com/auth/adsense.readonly" + ] + } + } } - } } - } }, "payments": { - "methods": { - "list": { - "id": "adsense.accounts.payments.list", - "path": "accounts/{accountId}/payments", - "httpMethod": "GET", - "description": "List the payments for the specified AdSense account.", - "parameters": { - "accountId": { - "type": "string", - "description": "Account for which to retrieve the payments.", - "required": true, - "location": "path" + "methods": { + "list": { + "description": "List the payments for this AdSense account.", + "httpMethod": "GET", + "id": "adsense.payments.list", + "path": "payments", + "response": { + "$ref": "Payments" + }, + "scopes": [ + "https://www.googleapis.com/auth/adsense", + "https://www.googleapis.com/auth/adsense.readonly" + ] } - }, - "parameterOrder": [ - "accountId" - ], - "response": { - "$ref": "Payments" - }, - "scopes": [ - "https://www.googleapis.com/auth/adsense", - "https://www.googleapis.com/auth/adsense.readonly" - ] } - } }, "reports": { - "methods": { - "generate": { - "id": "adsense.accounts.reports.generate", - "path": "accounts/{accountId}/reports", - "httpMethod": "GET", - "description": "Generate an AdSense report based on the report request sent in the query parameters. Returns the result as JSON; to retrieve output in CSV format specify \"alt=csv\" as a query parameter.", - "parameters": { - "accountId": { - "type": "string", - "description": "Account upon which to report.", - "required": true, - "location": "path" - }, - "currency": { - "type": "string", - "description": "Optional currency to use when reporting on monetary metrics. Defaults to the account's currency if not set.", - "pattern": "[a-zA-Z]+", - "location": "query" - }, - "dimension": { - "type": "string", - "description": "Dimensions to base the report on.", - "pattern": "[a-zA-Z_]+", - "repeated": true, - "location": "query" - }, - "endDate": { - "type": "string", - "description": "End of the date range to report on in \"YYYY-MM-DD\" format, inclusive.", - "required": true, - "pattern": "\\d{4}-\\d{2}-\\d{2}|(today|startOfMonth|startOfYear)(([\\-\\+]\\d+[dwmy]){0,3}?)|(latest-(\\d{2})-(\\d{2})(-\\d+y)?)|(latest-latest-(\\d{2})(-\\d+m)?)", - "location": "query" - }, - "filter": { - "type": "string", - "description": "Filters to be run on the report.", - "pattern": "[a-zA-Z_]+(==|=@).+", - "repeated": true, - "location": "query" - }, - "locale": { - "type": "string", - "description": "Optional locale to use for translating report output to a local language. Defaults to \"en_US\" if not specified.", - "pattern": "[a-zA-Z_]+", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of rows of report data to return.", - "format": "int32", - "minimum": "0", - "maximum": "50000", - "location": "query" - }, - "metric": { - "type": "string", - "description": "Numeric columns to include in the report.", - "pattern": "[a-zA-Z_]+", - "repeated": true, - "location": "query" - }, - "sort": { - "type": "string", - "description": "The name of a dimension or metric to sort the resulting report on, optionally prefixed with \"+\" to sort ascending or \"-\" to sort descending. If no prefix is specified, the column is sorted ascending.", - "pattern": "(\\+|-)?[a-zA-Z_]+", - "repeated": true, - "location": "query" - }, - "startDate": { - "type": "string", - "description": "Start of the date range to report on in \"YYYY-MM-DD\" format, inclusive.", - "required": true, - "pattern": "\\d{4}-\\d{2}-\\d{2}|(today|startOfMonth|startOfYear)(([\\-\\+]\\d+[dwmy]){0,3}?)|(latest-(\\d{2})-(\\d{2})(-\\d+y)?)|(latest-latest-(\\d{2})(-\\d+m)?)", - "location": "query" - }, - "startIndex": { - "type": "integer", - "description": "Index of the first row of report data to return.", - "format": "int32", - "minimum": "0", - "maximum": "5000", - "location": "query" - }, - "useTimezoneReporting": { - "type": "boolean", - "description": "Whether the report should be generated in the AdSense account's local timezone. If false default PST/PDT timezone will be used.", - "location": "query" - } - }, - "parameterOrder": [ - "accountId", - "startDate", - "endDate" - ], - "response": { - "$ref": "AdsenseReportsGenerateResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/adsense", - "https://www.googleapis.com/auth/adsense.readonly" - ], - "supportsMediaDownload": true - } - }, - "resources": { - "saved": { - "methods": { + "methods": { "generate": { - "id": "adsense.accounts.reports.saved.generate", - "path": "accounts/{accountId}/reports/{savedReportId}", - "httpMethod": "GET", - "description": "Generate an AdSense report based on the saved report ID sent in the query parameters.", - "parameters": { - "accountId": { - "type": "string", - "description": "Account to which the saved reports belong.", - "required": true, - "location": "path" + "description": "Generate an AdSense report based on the report request sent in the query parameters. Returns the result as JSON; to retrieve output in CSV format specify \"alt=csv\" as a query parameter.", + "httpMethod": "GET", + "id": "adsense.reports.generate", + "parameterOrder": [ + "startDate", + "endDate" + ], + "parameters": { + "accountId": { + "description": "Accounts upon which to report.", + "location": "query", + "repeated": true, + "type": "string" + }, + "currency": { + "description": "Optional currency to use when reporting on monetary metrics. Defaults to the account's currency if not set.", + "location": "query", + "pattern": "[a-zA-Z]+", + "type": "string" + }, + "dimension": { + "description": "Dimensions to base the report on.", + "location": "query", + "pattern": "[a-zA-Z_]+", + "repeated": true, + "type": "string" + }, + "endDate": { + "description": "End of the date range to report on in \"YYYY-MM-DD\" format, inclusive.", + "location": "query", + "pattern": "\\d{4}-\\d{2}-\\d{2}|(today|startOfMonth|startOfYear)(([\\-\\+]\\d+[dwmy]){0,3}?)|(latest-(\\d{2})-(\\d{2})(-\\d+y)?)|(latest-latest-(\\d{2})(-\\d+m)?)", + "required": true, + "type": "string" + }, + "filter": { + "description": "Filters to be run on the report.", + "location": "query", + "pattern": "[a-zA-Z_]+(==|=@).+", + "repeated": true, + "type": "string" + }, + "locale": { + "description": "Optional locale to use for translating report output to a local language. Defaults to \"en_US\" if not specified.", + "location": "query", + "pattern": "[a-zA-Z_]+", + "type": "string" + }, + "maxResults": { + "description": "The maximum number of rows of report data to return.", + "format": "int32", + "location": "query", + "maximum": "50000", + "minimum": "0", + "type": "integer" + }, + "metric": { + "description": "Numeric columns to include in the report.", + "location": "query", + "pattern": "[a-zA-Z_]+", + "repeated": true, + "type": "string" + }, + "sort": { + "description": "The name of a dimension or metric to sort the resulting report on, optionally prefixed with \"+\" to sort ascending or \"-\" to sort descending. If no prefix is specified, the column is sorted ascending.", + "location": "query", + "pattern": "(\\+|-)?[a-zA-Z_]+", + "repeated": true, + "type": "string" + }, + "startDate": { + "description": "Start of the date range to report on in \"YYYY-MM-DD\" format, inclusive.", + "location": "query", + "pattern": "\\d{4}-\\d{2}-\\d{2}|(today|startOfMonth|startOfYear)(([\\-\\+]\\d+[dwmy]){0,3}?)|(latest-(\\d{2})-(\\d{2})(-\\d+y)?)|(latest-latest-(\\d{2})(-\\d+m)?)", + "required": true, + "type": "string" + }, + "startIndex": { + "description": "Index of the first row of report data to return.", + "format": "int32", + "location": "query", + "maximum": "5000", + "minimum": "0", + "type": "integer" + }, + "useTimezoneReporting": { + "description": "Whether the report should be generated in the AdSense account's local timezone. If false default PST/PDT timezone will be used.", + "location": "query", + "type": "boolean" + } }, - "locale": { - "type": "string", - "description": "Optional locale to use for translating report output to a local language. Defaults to \"en_US\" if not specified.", - "pattern": "[a-zA-Z_]+", - "location": "query" + "path": "reports", + "response": { + "$ref": "AdsenseReportsGenerateResponse" }, - "maxResults": { - "type": "integer", - "description": "The maximum number of rows of report data to return.", - "format": "int32", - "minimum": "0", - "maximum": "50000", - "location": "query" - }, - "savedReportId": { - "type": "string", - "description": "The saved report to retrieve.", - "required": true, - "location": "path" - }, - "startIndex": { - "type": "integer", - "description": "Index of the first row of report data to return.", - "format": "int32", - "minimum": "0", - "maximum": "5000", - "location": "query" - } - }, - "parameterOrder": [ - "accountId", - "savedReportId" - ], - "response": { - "$ref": "AdsenseReportsGenerateResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/adsense", - "https://www.googleapis.com/auth/adsense.readonly" - ] - }, - "list": { - "id": "adsense.accounts.reports.saved.list", - "path": "accounts/{accountId}/reports/saved", - "httpMethod": "GET", - "description": "List all saved reports in the specified AdSense account.", - "parameters": { - "accountId": { - "type": "string", - "description": "Account to which the saved reports belong.", - "required": true, - "location": "path" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of saved reports to include in the response, used for paging.", - "format": "int32", - "minimum": "0", - "maximum": "100", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "A continuation token, used to page through saved reports. To retrieve the next page, set this parameter to the value of \"nextPageToken\" from the previous response.", - "location": "query" - } - }, - "parameterOrder": [ - "accountId" - ], - "response": { - "$ref": "SavedReports" - }, - "scopes": [ - "https://www.googleapis.com/auth/adsense", - "https://www.googleapis.com/auth/adsense.readonly" - ] + "scopes": [ + "https://www.googleapis.com/auth/adsense", + "https://www.googleapis.com/auth/adsense.readonly" + ], + "supportsMediaDownload": true + } + }, + "resources": { + "saved": { + "methods": { + "generate": { + "description": "Generate an AdSense report based on the saved report ID sent in the query parameters.", + "httpMethod": "GET", + "id": "adsense.reports.saved.generate", + "parameterOrder": [ + "savedReportId" + ], + "parameters": { + "locale": { + "description": "Optional locale to use for translating report output to a local language. Defaults to \"en_US\" if not specified.", + "location": "query", + "pattern": "[a-zA-Z_]+", + "type": "string" + }, + "maxResults": { + "description": "The maximum number of rows of report data to return.", + "format": "int32", + "location": "query", + "maximum": "50000", + "minimum": "0", + "type": "integer" + }, + "savedReportId": { + "description": "The saved report to retrieve.", + "location": "path", + "required": true, + "type": "string" + }, + "startIndex": { + "description": "Index of the first row of report data to return.", + "format": "int32", + "location": "query", + "maximum": "5000", + "minimum": "0", + "type": "integer" + } + }, + "path": "reports/{savedReportId}", + "response": { + "$ref": "AdsenseReportsGenerateResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/adsense", + "https://www.googleapis.com/auth/adsense.readonly" + ] + }, + "list": { + "description": "List all saved reports in this AdSense account.", + "httpMethod": "GET", + "id": "adsense.reports.saved.list", + "parameters": { + "maxResults": { + "description": "The maximum number of saved reports to include in the response, used for paging.", + "format": "int32", + "location": "query", + "maximum": "100", + "minimum": "0", + "type": "integer" + }, + "pageToken": { + "description": "A continuation token, used to page through saved reports. To retrieve the next page, set this parameter to the value of \"nextPageToken\" from the previous response.", + "location": "query", + "type": "string" + } + }, + "path": "reports/saved", + "response": { + "$ref": "SavedReports" + }, + "scopes": [ + "https://www.googleapis.com/auth/adsense", + "https://www.googleapis.com/auth/adsense.readonly" + ] + } + } } - } } - } }, "savedadstyles": { - "methods": { - "get": { - "id": "adsense.accounts.savedadstyles.get", - "path": "accounts/{accountId}/savedadstyles/{savedAdStyleId}", - "httpMethod": "GET", - "description": "List a specific saved ad style for the specified account.", - "parameters": { - "accountId": { - "type": "string", - "description": "Account for which to get the saved ad style.", - "required": true, - "location": "path" + "methods": { + "get": { + "description": "Get a specific saved ad style from the user's account.", + "httpMethod": "GET", + "id": "adsense.savedadstyles.get", + "parameterOrder": [ + "savedAdStyleId" + ], + "parameters": { + "savedAdStyleId": { + "description": "Saved ad style to retrieve.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "savedadstyles/{savedAdStyleId}", + "response": { + "$ref": "SavedAdStyle" + }, + "scopes": [ + "https://www.googleapis.com/auth/adsense", + "https://www.googleapis.com/auth/adsense.readonly" + ] }, - "savedAdStyleId": { - "type": "string", - "description": "Saved ad style to retrieve.", - "required": true, - "location": "path" + "list": { + "description": "List all saved ad styles in the user's account.", + "httpMethod": "GET", + "id": "adsense.savedadstyles.list", + "parameters": { + "maxResults": { + "description": "The maximum number of saved ad styles to include in the response, used for paging.", + "format": "int32", + "location": "query", + "maximum": "10000", + "minimum": "0", + "type": "integer" + }, + "pageToken": { + "description": "A continuation token, used to page through saved ad styles. To retrieve the next page, set this parameter to the value of \"nextPageToken\" from the previous response.", + "location": "query", + "type": "string" + } + }, + "path": "savedadstyles", + "response": { + "$ref": "SavedAdStyles" + }, + "scopes": [ + "https://www.googleapis.com/auth/adsense", + "https://www.googleapis.com/auth/adsense.readonly" + ] } - }, - "parameterOrder": [ - "accountId", - "savedAdStyleId" - ], - "response": { - "$ref": "SavedAdStyle" - }, - "scopes": [ - "https://www.googleapis.com/auth/adsense", - "https://www.googleapis.com/auth/adsense.readonly" - ] - }, - "list": { - "id": "adsense.accounts.savedadstyles.list", - "path": "accounts/{accountId}/savedadstyles", - "httpMethod": "GET", - "description": "List all saved ad styles in the specified account.", - "parameters": { - "accountId": { - "type": "string", - "description": "Account for which to list saved ad styles.", - "required": true, - "location": "path" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of saved ad styles to include in the response, used for paging.", - "format": "int32", - "minimum": "0", - "maximum": "10000", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "A continuation token, used to page through saved ad styles. To retrieve the next page, set this parameter to the value of \"nextPageToken\" from the previous response.", - "location": "query" - } - }, - "parameterOrder": [ - "accountId" - ], - "response": { - "$ref": "SavedAdStyles" - }, - "scopes": [ - "https://www.googleapis.com/auth/adsense", - "https://www.googleapis.com/auth/adsense.readonly" - ] } - } }, "urlchannels": { - "methods": { - "list": { - "id": "adsense.accounts.urlchannels.list", - "path": "accounts/{accountId}/adclients/{adClientId}/urlchannels", - "httpMethod": "GET", - "description": "List all URL channels in the specified ad client for the specified account.", - "parameters": { - "accountId": { - "type": "string", - "description": "Account to which the ad client belongs.", - "required": true, - "location": "path" - }, - "adClientId": { - "type": "string", - "description": "Ad client for which to list URL channels.", - "required": true, - "location": "path" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of URL channels to include in the response, used for paging.", - "format": "int32", - "minimum": "0", - "maximum": "10000", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "A continuation token, used to page through URL channels. To retrieve the next page, set this parameter to the value of \"nextPageToken\" from the previous response.", - "location": "query" + "methods": { + "list": { + "description": "List all URL channels in the specified ad client for this AdSense account.", + "httpMethod": "GET", + "id": "adsense.urlchannels.list", + "parameterOrder": [ + "adClientId" + ], + "parameters": { + "adClientId": { + "description": "Ad client for which to list URL channels.", + "location": "path", + "required": true, + "type": "string" + }, + "maxResults": { + "description": "The maximum number of URL channels to include in the response, used for paging.", + "format": "int32", + "location": "query", + "maximum": "10000", + "minimum": "0", + "type": "integer" + }, + "pageToken": { + "description": "A continuation token, used to page through URL channels. To retrieve the next page, set this parameter to the value of \"nextPageToken\" from the previous response.", + "location": "query", + "type": "string" + } + }, + "path": "adclients/{adClientId}/urlchannels", + "response": { + "$ref": "UrlChannels" + }, + "scopes": [ + "https://www.googleapis.com/auth/adsense", + "https://www.googleapis.com/auth/adsense.readonly" + ] } - }, - "parameterOrder": [ - "accountId", - "adClientId" - ], - "response": { - "$ref": "UrlChannels" - }, - "scopes": [ - "https://www.googleapis.com/auth/adsense", - "https://www.googleapis.com/auth/adsense.readonly" - ] } - } } - } }, - "adclients": { - "methods": { - "list": { - "id": "adsense.adclients.list", - "path": "adclients", - "httpMethod": "GET", - "description": "List all ad clients in this AdSense account.", - "parameters": { - "maxResults": { - "type": "integer", - "description": "The maximum number of ad clients to include in the response, used for paging.", - "format": "int32", - "minimum": "0", - "maximum": "10000", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "A continuation token, used to page through ad clients. To retrieve the next page, set this parameter to the value of \"nextPageToken\" from the previous response.", - "location": "query" - } - }, - "response": { - "$ref": "AdClients" - }, - "scopes": [ - "https://www.googleapis.com/auth/adsense", - "https://www.googleapis.com/auth/adsense.readonly" - ] - } - } - }, - "adunits": { - "methods": { - "get": { - "id": "adsense.adunits.get", - "path": "adclients/{adClientId}/adunits/{adUnitId}", - "httpMethod": "GET", - "description": "Gets the specified ad unit in the specified ad client.", - "parameters": { - "adClientId": { - "type": "string", - "description": "Ad client for which to get the ad unit.", - "required": true, - "location": "path" - }, - "adUnitId": { - "type": "string", - "description": "Ad unit to retrieve.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "adClientId", - "adUnitId" - ], - "response": { - "$ref": "AdUnit" - }, - "scopes": [ - "https://www.googleapis.com/auth/adsense", - "https://www.googleapis.com/auth/adsense.readonly" - ] - }, - "getAdCode": { - "id": "adsense.adunits.getAdCode", - "path": "adclients/{adClientId}/adunits/{adUnitId}/adcode", - "httpMethod": "GET", - "description": "Get ad code for the specified ad unit.", - "parameters": { - "adClientId": { - "type": "string", - "description": "Ad client with contains the ad unit.", - "required": true, - "location": "path" - }, - "adUnitId": { - "type": "string", - "description": "Ad unit to get the code for.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "adClientId", - "adUnitId" - ], - "response": { - "$ref": "AdCode" - }, - "scopes": [ - "https://www.googleapis.com/auth/adsense", - "https://www.googleapis.com/auth/adsense.readonly" - ] - }, - "list": { - "id": "adsense.adunits.list", - "path": "adclients/{adClientId}/adunits", - "httpMethod": "GET", - "description": "List all ad units in the specified ad client for this AdSense account.", - "parameters": { - "adClientId": { - "type": "string", - "description": "Ad client for which to list ad units.", - "required": true, - "location": "path" - }, - "includeInactive": { - "type": "boolean", - "description": "Whether to include inactive ad units. Default: true.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of ad units to include in the response, used for paging.", - "format": "int32", - "minimum": "0", - "maximum": "10000", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "A continuation token, used to page through ad units. To retrieve the next page, set this parameter to the value of \"nextPageToken\" from the previous response.", - "location": "query" - } - }, - "parameterOrder": [ - "adClientId" - ], - "response": { - "$ref": "AdUnits" - }, - "scopes": [ - "https://www.googleapis.com/auth/adsense", - "https://www.googleapis.com/auth/adsense.readonly" - ] - } - }, - "resources": { - "customchannels": { - "methods": { - "list": { - "id": "adsense.adunits.customchannels.list", - "path": "adclients/{adClientId}/adunits/{adUnitId}/customchannels", - "httpMethod": "GET", - "description": "List all custom channels which the specified ad unit belongs to.", - "parameters": { - "adClientId": { - "type": "string", - "description": "Ad client which contains the ad unit.", - "required": true, - "location": "path" + "revision": "20180204", + "rootUrl": "https://www.googleapis.com/", + "schemas": { + "Account": { + "id": "Account", + "properties": { + "creation_time": { + "format": "int64", + "type": "string" }, - "adUnitId": { - "type": "string", - "description": "Ad unit for which to list custom channels.", - "required": true, - "location": "path" + "id": { + "description": "Unique identifier of this account.", + "type": "string" }, - "maxResults": { - "type": "integer", - "description": "The maximum number of custom channels to include in the response, used for paging.", - "format": "int32", - "minimum": "0", - "maximum": "10000", - "location": "query" + "kind": { + "default": "adsense#account", + "description": "Kind of resource this is, in this case adsense#account.", + "type": "string" }, - "pageToken": { - "type": "string", - "description": "A continuation token, used to page through custom channels. To retrieve the next page, set this parameter to the value of \"nextPageToken\" from the previous response.", - "location": "query" + "name": { + "description": "Name of this account.", + "type": "string" + }, + "premium": { + "description": "Whether this account is premium.", + "type": "boolean" + }, + "subAccounts": { + "description": "Sub accounts of the this account.", + "items": { + "$ref": "Account" + }, + "type": "array" + }, + "timezone": { + "description": "AdSense timezone of this account.", + "type": "string" } - }, - "parameterOrder": [ - "adClientId", - "adUnitId" - ], - "response": { - "$ref": "CustomChannels" - }, - "scopes": [ - "https://www.googleapis.com/auth/adsense", - "https://www.googleapis.com/auth/adsense.readonly" - ] - } - } - } - } - }, - "alerts": { - "methods": { - "delete": { - "id": "adsense.alerts.delete", - "path": "alerts/{alertId}", - "httpMethod": "DELETE", - "description": "Dismiss (delete) the specified alert from the publisher's AdSense account.", - "parameters": { - "alertId": { - "type": "string", - "description": "Alert to delete.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "alertId" - ], - "scopes": [ - "https://www.googleapis.com/auth/adsense" - ] + }, + "type": "object" }, - "list": { - "id": "adsense.alerts.list", - "path": "alerts", - "httpMethod": "GET", - "description": "List the alerts for this AdSense account.", - "parameters": { - "locale": { - "type": "string", - "description": "The locale to use for translating alert messages. The account locale will be used if this is not supplied. The AdSense default (English) will be used if the supplied locale is invalid or unsupported.", - "location": "query" - } - }, - "response": { - "$ref": "Alerts" - }, - "scopes": [ - "https://www.googleapis.com/auth/adsense", - "https://www.googleapis.com/auth/adsense.readonly" - ] - } - } - }, - "customchannels": { - "methods": { - "get": { - "id": "adsense.customchannels.get", - "path": "adclients/{adClientId}/customchannels/{customChannelId}", - "httpMethod": "GET", - "description": "Get the specified custom channel from the specified ad client.", - "parameters": { - "adClientId": { - "type": "string", - "description": "Ad client which contains the custom channel.", - "required": true, - "location": "path" - }, - "customChannelId": { - "type": "string", - "description": "Custom channel to retrieve.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "adClientId", - "customChannelId" - ], - "response": { - "$ref": "CustomChannel" - }, - "scopes": [ - "https://www.googleapis.com/auth/adsense", - "https://www.googleapis.com/auth/adsense.readonly" - ] - }, - "list": { - "id": "adsense.customchannels.list", - "path": "adclients/{adClientId}/customchannels", - "httpMethod": "GET", - "description": "List all custom channels in the specified ad client for this AdSense account.", - "parameters": { - "adClientId": { - "type": "string", - "description": "Ad client for which to list custom channels.", - "required": true, - "location": "path" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of custom channels to include in the response, used for paging.", - "format": "int32", - "minimum": "0", - "maximum": "10000", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "A continuation token, used to page through custom channels. To retrieve the next page, set this parameter to the value of \"nextPageToken\" from the previous response.", - "location": "query" - } - }, - "parameterOrder": [ - "adClientId" - ], - "response": { - "$ref": "CustomChannels" - }, - "scopes": [ - "https://www.googleapis.com/auth/adsense", - "https://www.googleapis.com/auth/adsense.readonly" - ] - } - }, - "resources": { - "adunits": { - "methods": { - "list": { - "id": "adsense.customchannels.adunits.list", - "path": "adclients/{adClientId}/customchannels/{customChannelId}/adunits", - "httpMethod": "GET", - "description": "List all ad units in the specified custom channel.", - "parameters": { - "adClientId": { - "type": "string", - "description": "Ad client which contains the custom channel.", - "required": true, - "location": "path" + "Accounts": { + "id": "Accounts", + "properties": { + "etag": { + "description": "ETag of this response for caching purposes.", + "type": "string" }, - "customChannelId": { - "type": "string", - "description": "Custom channel for which to list ad units.", - "required": true, - "location": "path" + "items": { + "description": "The accounts returned in this list response.", + "items": { + "$ref": "Account" + }, + "type": "array" }, - "includeInactive": { - "type": "boolean", - "description": "Whether to include inactive ad units. Default: true.", - "location": "query" + "kind": { + "default": "adsense#accounts", + "description": "Kind of list this is, in this case adsense#accounts.", + "type": "string" }, - "maxResults": { - "type": "integer", - "description": "The maximum number of ad units to include in the response, used for paging.", - "format": "int32", - "minimum": "0", - "maximum": "10000", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "A continuation token, used to page through ad units. To retrieve the next page, set this parameter to the value of \"nextPageToken\" from the previous response.", - "location": "query" + "nextPageToken": { + "description": "Continuation token used to page through accounts. To retrieve the next page of results, set the next request's \"pageToken\" value to this.", + "type": "string" } - }, - "parameterOrder": [ - "adClientId", - "customChannelId" - ], - "response": { - "$ref": "AdUnits" - }, - "scopes": [ - "https://www.googleapis.com/auth/adsense", - "https://www.googleapis.com/auth/adsense.readonly" - ] - } - } - } - } - }, - "metadata": { - "resources": { - "dimensions": { - "methods": { - "list": { - "id": "adsense.metadata.dimensions.list", - "path": "metadata/dimensions", - "httpMethod": "GET", - "description": "List the metadata for the dimensions available to this AdSense account.", - "response": { - "$ref": "Metadata" - }, - "scopes": [ - "https://www.googleapis.com/auth/adsense", - "https://www.googleapis.com/auth/adsense.readonly" - ] - } - } + }, + "type": "object" }, - "metrics": { - "methods": { - "list": { - "id": "adsense.metadata.metrics.list", - "path": "metadata/metrics", - "httpMethod": "GET", - "description": "List the metadata for the metrics available to this AdSense account.", - "response": { - "$ref": "Metadata" - }, - "scopes": [ - "https://www.googleapis.com/auth/adsense", - "https://www.googleapis.com/auth/adsense.readonly" - ] - } - } - } - } - }, - "payments": { - "methods": { - "list": { - "id": "adsense.payments.list", - "path": "payments", - "httpMethod": "GET", - "description": "List the payments for this AdSense account.", - "response": { - "$ref": "Payments" - }, - "scopes": [ - "https://www.googleapis.com/auth/adsense", - "https://www.googleapis.com/auth/adsense.readonly" - ] - } - } - }, - "reports": { - "methods": { - "generate": { - "id": "adsense.reports.generate", - "path": "reports", - "httpMethod": "GET", - "description": "Generate an AdSense report based on the report request sent in the query parameters. Returns the result as JSON; to retrieve output in CSV format specify \"alt=csv\" as a query parameter.", - "parameters": { - "accountId": { - "type": "string", - "description": "Accounts upon which to report.", - "repeated": true, - "location": "query" - }, - "currency": { - "type": "string", - "description": "Optional currency to use when reporting on monetary metrics. Defaults to the account's currency if not set.", - "pattern": "[a-zA-Z]+", - "location": "query" - }, - "dimension": { - "type": "string", - "description": "Dimensions to base the report on.", - "pattern": "[a-zA-Z_]+", - "repeated": true, - "location": "query" - }, - "endDate": { - "type": "string", - "description": "End of the date range to report on in \"YYYY-MM-DD\" format, inclusive.", - "required": true, - "pattern": "\\d{4}-\\d{2}-\\d{2}|(today|startOfMonth|startOfYear)(([\\-\\+]\\d+[dwmy]){0,3}?)|(latest-(\\d{2})-(\\d{2})(-\\d+y)?)|(latest-latest-(\\d{2})(-\\d+m)?)", - "location": "query" - }, - "filter": { - "type": "string", - "description": "Filters to be run on the report.", - "pattern": "[a-zA-Z_]+(==|=@).+", - "repeated": true, - "location": "query" - }, - "locale": { - "type": "string", - "description": "Optional locale to use for translating report output to a local language. Defaults to \"en_US\" if not specified.", - "pattern": "[a-zA-Z_]+", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of rows of report data to return.", - "format": "int32", - "minimum": "0", - "maximum": "50000", - "location": "query" - }, - "metric": { - "type": "string", - "description": "Numeric columns to include in the report.", - "pattern": "[a-zA-Z_]+", - "repeated": true, - "location": "query" - }, - "sort": { - "type": "string", - "description": "The name of a dimension or metric to sort the resulting report on, optionally prefixed with \"+\" to sort ascending or \"-\" to sort descending. If no prefix is specified, the column is sorted ascending.", - "pattern": "(\\+|-)?[a-zA-Z_]+", - "repeated": true, - "location": "query" - }, - "startDate": { - "type": "string", - "description": "Start of the date range to report on in \"YYYY-MM-DD\" format, inclusive.", - "required": true, - "pattern": "\\d{4}-\\d{2}-\\d{2}|(today|startOfMonth|startOfYear)(([\\-\\+]\\d+[dwmy]){0,3}?)|(latest-(\\d{2})-(\\d{2})(-\\d+y)?)|(latest-latest-(\\d{2})(-\\d+m)?)", - "location": "query" - }, - "startIndex": { - "type": "integer", - "description": "Index of the first row of report data to return.", - "format": "int32", - "minimum": "0", - "maximum": "5000", - "location": "query" - }, - "useTimezoneReporting": { - "type": "boolean", - "description": "Whether the report should be generated in the AdSense account's local timezone. If false default PST/PDT timezone will be used.", - "location": "query" - } - }, - "parameterOrder": [ - "startDate", - "endDate" - ], - "response": { - "$ref": "AdsenseReportsGenerateResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/adsense", - "https://www.googleapis.com/auth/adsense.readonly" - ], - "supportsMediaDownload": true - } - }, - "resources": { - "saved": { - "methods": { - "generate": { - "id": "adsense.reports.saved.generate", - "path": "reports/{savedReportId}", - "httpMethod": "GET", - "description": "Generate an AdSense report based on the saved report ID sent in the query parameters.", - "parameters": { - "locale": { - "type": "string", - "description": "Optional locale to use for translating report output to a local language. Defaults to \"en_US\" if not specified.", - "pattern": "[a-zA-Z_]+", - "location": "query" + "AdClient": { + "id": "AdClient", + "properties": { + "arcOptIn": { + "description": "Whether this ad client is opted in to ARC.", + "type": "boolean" }, - "maxResults": { - "type": "integer", - "description": "The maximum number of rows of report data to return.", - "format": "int32", - "minimum": "0", - "maximum": "50000", - "location": "query" + "id": { + "description": "Unique identifier of this ad client.", + "type": "string" }, - "savedReportId": { - "type": "string", - "description": "The saved report to retrieve.", - "required": true, - "location": "path" + "kind": { + "default": "adsense#adClient", + "description": "Kind of resource this is, in this case adsense#adClient.", + "type": "string" }, - "startIndex": { - "type": "integer", - "description": "Index of the first row of report data to return.", - "format": "int32", - "minimum": "0", - "maximum": "5000", - "location": "query" + "productCode": { + "description": "This ad client's product code, which corresponds to the PRODUCT_CODE report dimension.", + "type": "string" + }, + "supportsReporting": { + "description": "Whether this ad client supports being reported on.", + "type": "boolean" } - }, - "parameterOrder": [ - "savedReportId" - ], - "response": { - "$ref": "AdsenseReportsGenerateResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/adsense", - "https://www.googleapis.com/auth/adsense.readonly" - ] }, - "list": { - "id": "adsense.reports.saved.list", - "path": "reports/saved", - "httpMethod": "GET", - "description": "List all saved reports in this AdSense account.", - "parameters": { - "maxResults": { - "type": "integer", - "description": "The maximum number of saved reports to include in the response, used for paging.", - "format": "int32", - "minimum": "0", - "maximum": "100", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "A continuation token, used to page through saved reports. To retrieve the next page, set this parameter to the value of \"nextPageToken\" from the previous response.", - "location": "query" - } - }, - "response": { - "$ref": "SavedReports" - }, - "scopes": [ - "https://www.googleapis.com/auth/adsense", - "https://www.googleapis.com/auth/adsense.readonly" - ] - } - } - } - } - }, - "savedadstyles": { - "methods": { - "get": { - "id": "adsense.savedadstyles.get", - "path": "savedadstyles/{savedAdStyleId}", - "httpMethod": "GET", - "description": "Get a specific saved ad style from the user's account.", - "parameters": { - "savedAdStyleId": { - "type": "string", - "description": "Saved ad style to retrieve.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "savedAdStyleId" - ], - "response": { - "$ref": "SavedAdStyle" - }, - "scopes": [ - "https://www.googleapis.com/auth/adsense", - "https://www.googleapis.com/auth/adsense.readonly" - ] + "type": "object" }, - "list": { - "id": "adsense.savedadstyles.list", - "path": "savedadstyles", - "httpMethod": "GET", - "description": "List all saved ad styles in the user's account.", - "parameters": { - "maxResults": { - "type": "integer", - "description": "The maximum number of saved ad styles to include in the response, used for paging.", - "format": "int32", - "minimum": "0", - "maximum": "10000", - "location": "query" + "AdClients": { + "id": "AdClients", + "properties": { + "etag": { + "description": "ETag of this response for caching purposes.", + "type": "string" + }, + "items": { + "description": "The ad clients returned in this list response.", + "items": { + "$ref": "AdClient" + }, + "type": "array" + }, + "kind": { + "default": "adsense#adClients", + "description": "Kind of list this is, in this case adsense#adClients.", + "type": "string" + }, + "nextPageToken": { + "description": "Continuation token used to page through ad clients. To retrieve the next page of results, set the next request's \"pageToken\" value to this.", + "type": "string" + } }, - "pageToken": { - "type": "string", - "description": "A continuation token, used to page through saved ad styles. To retrieve the next page, set this parameter to the value of \"nextPageToken\" from the previous response.", - "location": "query" - } - }, - "response": { - "$ref": "SavedAdStyles" - }, - "scopes": [ - "https://www.googleapis.com/auth/adsense", - "https://www.googleapis.com/auth/adsense.readonly" - ] + "type": "object" + }, + "AdCode": { + "id": "AdCode", + "properties": { + "adCode": { + "description": "The ad code snippet.", + "type": "string" + }, + "kind": { + "default": "adsense#adCode", + "description": "Kind this is, in this case adsense#adCode.", + "type": "string" + } + }, + "type": "object" + }, + "AdStyle": { + "id": "AdStyle", + "properties": { + "colors": { + "description": "The colors which are included in the style. These are represented as six hexadecimal characters, similar to HTML color codes, but without the leading hash.", + "properties": { + "background": { + "description": "The color of the ad background.", + "type": "string" + }, + "border": { + "description": "The color of the ad border.", + "type": "string" + }, + "text": { + "description": "The color of the ad text.", + "type": "string" + }, + "title": { + "description": "The color of the ad title.", + "type": "string" + }, + "url": { + "description": "The color of the ad url.", + "type": "string" + } + }, + "type": "object" + }, + "corners": { + "description": "The style of the corners in the ad (deprecated: never populated, ignored).", + "type": "string" + }, + "font": { + "description": "The font which is included in the style.", + "properties": { + "family": { + "description": "The family of the font.", + "type": "string" + }, + "size": { + "description": "The size of the font.", + "type": "string" + } + }, + "type": "object" + }, + "kind": { + "default": "adsense#adStyle", + "description": "Kind this is, in this case adsense#adStyle.", + "type": "string" + } + }, + "type": "object" + }, + "AdUnit": { + "id": "AdUnit", + "properties": { + "code": { + "description": "Identity code of this ad unit, not necessarily unique across ad clients.", + "type": "string" + }, + "contentAdsSettings": { + "description": "Settings specific to content ads (AFC) and highend mobile content ads (AFMC - deprecated).", + "properties": { + "backupOption": { + "description": "The backup option to be used in instances where no ad is available.", + "properties": { + "color": { + "description": "Color to use when type is set to COLOR.", + "type": "string" + }, + "type": { + "description": "Type of the backup option. Possible values are BLANK, COLOR and URL.", + "type": "string" + }, + "url": { + "description": "URL to use when type is set to URL.", + "type": "string" + } + }, + "type": "object" + }, + "size": { + "description": "Size of this ad unit.", + "type": "string" + }, + "type": { + "description": "Type of this ad unit.", + "type": "string" + } + }, + "type": "object" + }, + "customStyle": { + "$ref": "AdStyle", + "description": "Custom style information specific to this ad unit." + }, + "feedAdsSettings": { + "description": "Settings specific to feed ads (AFF) - deprecated.", + "properties": { + "adPosition": { + "description": "The position of the ads relative to the feed entries.", + "type": "string" + }, + "frequency": { + "description": "The frequency at which ads should appear in the feed (i.e. every N entries).", + "format": "int32", + "type": "integer" + }, + "minimumWordCount": { + "description": "The minimum length an entry should be in order to have attached ads.", + "format": "int32", + "type": "integer" + }, + "type": { + "description": "The type of ads which should appear.", + "type": "string" + } + }, + "type": "object" + }, + "id": { + "description": "Unique identifier of this ad unit. This should be considered an opaque identifier; it is not safe to rely on it being in any particular format.", + "type": "string" + }, + "kind": { + "default": "adsense#adUnit", + "description": "Kind of resource this is, in this case adsense#adUnit.", + "type": "string" + }, + "mobileContentAdsSettings": { + "description": "Settings specific to WAP mobile content ads (AFMC) - deprecated.", + "properties": { + "markupLanguage": { + "description": "The markup language to use for this ad unit.", + "type": "string" + }, + "scriptingLanguage": { + "description": "The scripting language to use for this ad unit.", + "type": "string" + }, + "size": { + "description": "Size of this ad unit.", + "type": "string" + }, + "type": { + "description": "Type of this ad unit.", + "type": "string" + } + }, + "type": "object" + }, + "name": { + "description": "Name of this ad unit.", + "type": "string" + }, + "savedStyleId": { + "description": "ID of the saved ad style which holds this ad unit's style information.", + "type": "string" + }, + "status": { + "description": "Status of this ad unit. Possible values are:\nNEW: Indicates that the ad unit was created within the last seven days and does not yet have any activity associated with it.\n\nACTIVE: Indicates that there has been activity on this ad unit in the last seven days.\n\nINACTIVE: Indicates that there has been no activity on this ad unit in the last seven days.", + "type": "string" + } + }, + "type": "object" + }, + "AdUnits": { + "id": "AdUnits", + "properties": { + "etag": { + "description": "ETag of this response for caching purposes.", + "type": "string" + }, + "items": { + "description": "The ad units returned in this list response.", + "items": { + "$ref": "AdUnit" + }, + "type": "array" + }, + "kind": { + "default": "adsense#adUnits", + "description": "Kind of list this is, in this case adsense#adUnits.", + "type": "string" + }, + "nextPageToken": { + "description": "Continuation token used to page through ad units. To retrieve the next page of results, set the next request's \"pageToken\" value to this.", + "type": "string" + } + }, + "type": "object" + }, + "AdsenseReportsGenerateResponse": { + "id": "AdsenseReportsGenerateResponse", + "properties": { + "averages": { + "description": "The averages of the report. This is the same length as any other row in the report; cells corresponding to dimension columns are empty.", + "items": { + "type": "string" + }, + "type": "array" + }, + "endDate": { + "description": "The requested end date in yyyy-mm-dd format.", + "type": "string" + }, + "headers": { + "description": "The header information of the columns requested in the report. This is a list of headers; one for each dimension in the request, followed by one for each metric in the request.", + "items": { + "properties": { + "currency": { + "description": "The currency of this column. Only present if the header type is METRIC_CURRENCY.", + "type": "string" + }, + "name": { + "description": "The name of the header.", + "type": "string" + }, + "type": { + "description": "The type of the header; one of DIMENSION, METRIC_TALLY, METRIC_RATIO, or METRIC_CURRENCY.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "kind": { + "default": "adsense#report", + "description": "Kind this is, in this case adsense#report.", + "type": "string" + }, + "rows": { + "description": "The output rows of the report. Each row is a list of cells; one for each dimension in the request, followed by one for each metric in the request. The dimension cells contain strings, and the metric cells contain numbers.", + "items": { + "items": { + "type": "string" + }, + "type": "array" + }, + "type": "array" + }, + "startDate": { + "description": "The requested start date in yyyy-mm-dd format.", + "type": "string" + }, + "totalMatchedRows": { + "description": "The total number of rows matched by the report request. Fewer rows may be returned in the response due to being limited by the row count requested or the report row limit.", + "format": "int64", + "type": "string" + }, + "totals": { + "description": "The totals of the report. This is the same length as any other row in the report; cells corresponding to dimension columns are empty.", + "items": { + "type": "string" + }, + "type": "array" + }, + "warnings": { + "description": "Any warnings associated with generation of the report.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "Alert": { + "id": "Alert", + "properties": { + "id": { + "description": "Unique identifier of this alert. This should be considered an opaque identifier; it is not safe to rely on it being in any particular format.", + "type": "string" + }, + "isDismissible": { + "description": "Whether this alert can be dismissed.", + "type": "boolean" + }, + "kind": { + "default": "adsense#alert", + "description": "Kind of resource this is, in this case adsense#alert.", + "type": "string" + }, + "message": { + "description": "The localized alert message.", + "type": "string" + }, + "severity": { + "description": "Severity of this alert. Possible values: INFO, WARNING, SEVERE.", + "type": "string" + }, + "type": { + "description": "Type of this alert. Possible values: SELF_HOLD, MIGRATED_TO_BILLING3, ADDRESS_PIN_VERIFICATION, PHONE_PIN_VERIFICATION, CORPORATE_ENTITY, GRAYLISTED_PUBLISHER, API_HOLD.", + "type": "string" + } + }, + "type": "object" + }, + "Alerts": { + "id": "Alerts", + "properties": { + "items": { + "description": "The alerts returned in this list response.", + "items": { + "$ref": "Alert" + }, + "type": "array" + }, + "kind": { + "default": "adsense#alerts", + "description": "Kind of list this is, in this case adsense#alerts.", + "type": "string" + } + }, + "type": "object" + }, + "CustomChannel": { + "id": "CustomChannel", + "properties": { + "code": { + "description": "Code of this custom channel, not necessarily unique across ad clients.", + "type": "string" + }, + "id": { + "description": "Unique identifier of this custom channel. This should be considered an opaque identifier; it is not safe to rely on it being in any particular format.", + "type": "string" + }, + "kind": { + "default": "adsense#customChannel", + "description": "Kind of resource this is, in this case adsense#customChannel.", + "type": "string" + }, + "name": { + "description": "Name of this custom channel.", + "type": "string" + }, + "targetingInfo": { + "description": "The targeting information of this custom channel, if activated.", + "properties": { + "adsAppearOn": { + "description": "The name used to describe this channel externally.", + "type": "string" + }, + "description": { + "description": "The external description of the channel.", + "type": "string" + }, + "location": { + "description": "The locations in which ads appear. (Only valid for content and mobile content ads (deprecated)). Acceptable values for content ads are: TOP_LEFT, TOP_CENTER, TOP_RIGHT, MIDDLE_LEFT, MIDDLE_CENTER, MIDDLE_RIGHT, BOTTOM_LEFT, BOTTOM_CENTER, BOTTOM_RIGHT, MULTIPLE_LOCATIONS. Acceptable values for mobile content ads (deprecated) are: TOP, MIDDLE, BOTTOM, MULTIPLE_LOCATIONS.", + "type": "string" + }, + "siteLanguage": { + "description": "The language of the sites ads will be displayed on.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "CustomChannels": { + "id": "CustomChannels", + "properties": { + "etag": { + "description": "ETag of this response for caching purposes.", + "type": "string" + }, + "items": { + "description": "The custom channels returned in this list response.", + "items": { + "$ref": "CustomChannel" + }, + "type": "array" + }, + "kind": { + "default": "adsense#customChannels", + "description": "Kind of list this is, in this case adsense#customChannels.", + "type": "string" + }, + "nextPageToken": { + "description": "Continuation token used to page through custom channels. To retrieve the next page of results, set the next request's \"pageToken\" value to this.", + "type": "string" + } + }, + "type": "object" + }, + "Metadata": { + "id": "Metadata", + "properties": { + "items": { + "items": { + "$ref": "ReportingMetadataEntry" + }, + "type": "array" + }, + "kind": { + "default": "adsense#metadata", + "description": "Kind of list this is, in this case adsense#metadata.", + "type": "string" + } + }, + "type": "object" + }, + "Payment": { + "id": "Payment", + "properties": { + "id": { + "description": "Unique identifier of this Payment.", + "type": "string" + }, + "kind": { + "default": "adsense#payment", + "description": "Kind of resource this is, in this case adsense#payment.", + "type": "string" + }, + "paymentAmount": { + "description": "The amount to be paid.", + "type": "string" + }, + "paymentAmountCurrencyCode": { + "description": "The currency code for the amount to be paid.", + "type": "string" + }, + "paymentDate": { + "description": "The date this payment was/will be credited to the user, or none if the payment threshold has not been met.", + "type": "string" + } + }, + "type": "object" + }, + "Payments": { + "id": "Payments", + "properties": { + "items": { + "description": "The list of Payments for the account. One or both of a) the account's most recent payment; and b) the account's upcoming payment.", + "items": { + "$ref": "Payment" + }, + "type": "array" + }, + "kind": { + "default": "adsense#payments", + "description": "Kind of list this is, in this case adsense#payments.", + "type": "string" + } + }, + "type": "object" + }, + "ReportingMetadataEntry": { + "id": "ReportingMetadataEntry", + "properties": { + "compatibleDimensions": { + "description": "For metrics this is a list of dimension IDs which the metric is compatible with, for dimensions it is a list of compatibility groups the dimension belongs to.", + "items": { + "type": "string" + }, + "type": "array" + }, + "compatibleMetrics": { + "description": "The names of the metrics the dimension or metric this reporting metadata entry describes is compatible with.", + "items": { + "type": "string" + }, + "type": "array" + }, + "id": { + "description": "Unique identifier of this reporting metadata entry, corresponding to the name of the appropriate dimension or metric.", + "type": "string" + }, + "kind": { + "default": "adsense#reportingMetadataEntry", + "description": "Kind of resource this is, in this case adsense#reportingMetadataEntry.", + "type": "string" + }, + "requiredDimensions": { + "description": "The names of the dimensions which the dimension or metric this reporting metadata entry describes requires to also be present in order for the report to be valid. Omitting these will not cause an error or warning, but may result in data which cannot be correctly interpreted.", + "items": { + "type": "string" + }, + "type": "array" + }, + "requiredMetrics": { + "description": "The names of the metrics which the dimension or metric this reporting metadata entry describes requires to also be present in order for the report to be valid. Omitting these will not cause an error or warning, but may result in data which cannot be correctly interpreted.", + "items": { + "type": "string" + }, + "type": "array" + }, + "supportedProducts": { + "description": "The codes of the projects supported by the dimension or metric this reporting metadata entry describes.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "SavedAdStyle": { + "id": "SavedAdStyle", + "properties": { + "adStyle": { + "$ref": "AdStyle", + "description": "The AdStyle itself." + }, + "id": { + "description": "Unique identifier of this saved ad style. This should be considered an opaque identifier; it is not safe to rely on it being in any particular format.", + "type": "string" + }, + "kind": { + "default": "adsense#savedAdStyle", + "description": "Kind of resource this is, in this case adsense#savedAdStyle.", + "type": "string" + }, + "name": { + "description": "The user selected name of this SavedAdStyle.", + "type": "string" + } + }, + "type": "object" + }, + "SavedAdStyles": { + "id": "SavedAdStyles", + "properties": { + "etag": { + "description": "ETag of this response for caching purposes.", + "type": "string" + }, + "items": { + "description": "The saved ad styles returned in this list response.", + "items": { + "$ref": "SavedAdStyle" + }, + "type": "array" + }, + "kind": { + "default": "adsense#savedAdStyles", + "description": "Kind of list this is, in this case adsense#savedAdStyles.", + "type": "string" + }, + "nextPageToken": { + "description": "Continuation token used to page through ad units. To retrieve the next page of results, set the next request's \"pageToken\" value to this.", + "type": "string" + } + }, + "type": "object" + }, + "SavedReport": { + "id": "SavedReport", + "properties": { + "id": { + "description": "Unique identifier of this saved report.", + "type": "string" + }, + "kind": { + "default": "adsense#savedReport", + "description": "Kind of resource this is, in this case adsense#savedReport.", + "type": "string" + }, + "name": { + "description": "This saved report's name.", + "type": "string" + } + }, + "type": "object" + }, + "SavedReports": { + "id": "SavedReports", + "properties": { + "etag": { + "description": "ETag of this response for caching purposes.", + "type": "string" + }, + "items": { + "description": "The saved reports returned in this list response.", + "items": { + "$ref": "SavedReport" + }, + "type": "array" + }, + "kind": { + "default": "adsense#savedReports", + "description": "Kind of list this is, in this case adsense#savedReports.", + "type": "string" + }, + "nextPageToken": { + "description": "Continuation token used to page through saved reports. To retrieve the next page of results, set the next request's \"pageToken\" value to this.", + "type": "string" + } + }, + "type": "object" + }, + "UrlChannel": { + "id": "UrlChannel", + "properties": { + "id": { + "description": "Unique identifier of this URL channel. This should be considered an opaque identifier; it is not safe to rely on it being in any particular format.", + "type": "string" + }, + "kind": { + "default": "adsense#urlChannel", + "description": "Kind of resource this is, in this case adsense#urlChannel.", + "type": "string" + }, + "urlPattern": { + "description": "URL Pattern of this URL channel. Does not include \"http://\" or \"https://\". Example: www.example.com/home", + "type": "string" + } + }, + "type": "object" + }, + "UrlChannels": { + "id": "UrlChannels", + "properties": { + "etag": { + "description": "ETag of this response for caching purposes.", + "type": "string" + }, + "items": { + "description": "The URL channels returned in this list response.", + "items": { + "$ref": "UrlChannel" + }, + "type": "array" + }, + "kind": { + "default": "adsense#urlChannels", + "description": "Kind of list this is, in this case adsense#urlChannels.", + "type": "string" + }, + "nextPageToken": { + "description": "Continuation token used to page through URL channels. To retrieve the next page of results, set the next request's \"pageToken\" value to this.", + "type": "string" + } + }, + "type": "object" } - } }, - "urlchannels": { - "methods": { - "list": { - "id": "adsense.urlchannels.list", - "path": "adclients/{adClientId}/urlchannels", - "httpMethod": "GET", - "description": "List all URL channels in the specified ad client for this AdSense account.", - "parameters": { - "adClientId": { - "type": "string", - "description": "Ad client for which to list URL channels.", - "required": true, - "location": "path" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of URL channels to include in the response, used for paging.", - "format": "int32", - "minimum": "0", - "maximum": "10000", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "A continuation token, used to page through URL channels. To retrieve the next page, set this parameter to the value of \"nextPageToken\" from the previous response.", - "location": "query" - } - }, - "parameterOrder": [ - "adClientId" - ], - "response": { - "$ref": "UrlChannels" - }, - "scopes": [ - "https://www.googleapis.com/auth/adsense", - "https://www.googleapis.com/auth/adsense.readonly" - ] - } - } - } - } -} + "servicePath": "adsense/v1.4/", + "title": "AdSense Management API", + "version": "v1.4" +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/adsensehost/v4.1/adsensehost-api.json b/vendor/google.golang.org/api/adsensehost/v4.1/adsensehost-api.json index b87fc9d18..aff7f974c 100644 --- a/vendor/google.golang.org/api/adsensehost/v4.1/adsensehost-api.json +++ b/vendor/google.golang.org/api/adsensehost/v4.1/adsensehost-api.json @@ -1,1569 +1,1569 @@ { - "kind": "discovery#restDescription", - "etag": "\"YWOzh2SDasdU84ArJnpYek-OMdg/HzRIN4Gi3jUuNGWAsKKaxu4tH4k\"", - "discoveryVersion": "v1", - "id": "adsensehost:v4.1", - "name": "adsensehost", - "canonicalName": "AdSense Host", - "version": "v4.1", - "revision": "20170912", - "title": "AdSense Host API", - "description": "Generates performance reports, generates ad codes, and provides publisher management capabilities for AdSense Hosts.", - "ownerDomain": "google.com", - "ownerName": "Google", - "icons": { - "x16": "https://www.google.com/images/icons/product/adsense-16.png", - "x32": "https://www.google.com/images/icons/product/adsense-32.png" - }, - "documentationLink": "https://developers.google.com/adsense/host/", - "labels": [ - "limited_availability" - ], - "protocol": "rest", - "baseUrl": "https://www.googleapis.com/adsensehost/v4.1/", - "basePath": "/adsensehost/v4.1/", - "rootUrl": "https://www.googleapis.com/", - "servicePath": "adsensehost/v4.1/", - "batchPath": "batch/adsensehost/v4.1", - "parameters": { - "alt": { - "type": "string", - "description": "Data format for the response.", - "default": "json", - "enum": [ - "csv", - "json" - ], - "enumDescriptions": [ - "Responses with Content-Type of text/csv", - "Responses with Content-Type of application/json" - ], - "location": "query" - }, - "fields": { - "type": "string", - "description": "Selector specifying which fields to include in a partial response.", - "location": "query" - }, - "key": { - "type": "string", - "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" - }, - "oauth_token": { - "type": "string", - "description": "OAuth 2.0 token for the current user.", - "location": "query" - }, - "prettyPrint": { - "type": "boolean", - "description": "Returns response with indentations and line breaks.", - "default": "true", - "location": "query" - }, - "quotaUser": { - "type": "string", - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", - "location": "query" - }, - "userIp": { - "type": "string", - "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", - "location": "query" - } - }, - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/adsensehost": { - "description": "View and manage your AdSense host data and associated accounts" - } - } - } - }, - "schemas": { - "Account": { - "id": "Account", - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Unique identifier of this account." - }, - "kind": { - "type": "string", - "description": "Kind of resource this is, in this case adsensehost#account.", - "default": "adsensehost#account" - }, - "name": { - "type": "string", - "description": "Name of this account." - }, - "status": { - "type": "string", - "description": "Approval status of this account. One of: PENDING, APPROVED, DISABLED." - } - } - }, - "Accounts": { - "id": "Accounts", - "type": "object", - "properties": { - "etag": { - "type": "string", - "description": "ETag of this response for caching purposes." - }, - "items": { - "type": "array", - "description": "The accounts returned in this list response.", - "items": { - "$ref": "Account" - } - }, - "kind": { - "type": "string", - "description": "Kind of list this is, in this case adsensehost#accounts.", - "default": "adsensehost#accounts" - } - } - }, - "AdClient": { - "id": "AdClient", - "type": "object", - "properties": { - "arcOptIn": { - "type": "boolean", - "description": "Whether this ad client is opted in to ARC." - }, - "id": { - "type": "string", - "description": "Unique identifier of this ad client." - }, - "kind": { - "type": "string", - "description": "Kind of resource this is, in this case adsensehost#adClient.", - "default": "adsensehost#adClient" - }, - "productCode": { - "type": "string", - "description": "This ad client's product code, which corresponds to the PRODUCT_CODE report dimension." - }, - "supportsReporting": { - "type": "boolean", - "description": "Whether this ad client supports being reported on." - } - } - }, - "AdClients": { - "id": "AdClients", - "type": "object", - "properties": { - "etag": { - "type": "string", - "description": "ETag of this response for caching purposes." - }, - "items": { - "type": "array", - "description": "The ad clients returned in this list response.", - "items": { - "$ref": "AdClient" - } - }, - "kind": { - "type": "string", - "description": "Kind of list this is, in this case adsensehost#adClients.", - "default": "adsensehost#adClients" - }, - "nextPageToken": { - "type": "string", - "description": "Continuation token used to page through ad clients. To retrieve the next page of results, set the next request's \"pageToken\" value to this." - } - } - }, - "AdCode": { - "id": "AdCode", - "type": "object", - "properties": { - "adCode": { - "type": "string", - "description": "The ad code snippet." - }, - "kind": { - "type": "string", - "description": "Kind this is, in this case adsensehost#adCode.", - "default": "adsensehost#adCode" - } - } - }, - "AdStyle": { - "id": "AdStyle", - "type": "object", - "properties": { - "colors": { - "type": "object", - "description": "The colors included in the style. These are represented as six hexadecimal characters, similar to HTML color codes, but without the leading hash.", - "properties": { - "background": { - "type": "string", - "description": "The color of the ad background." - }, - "border": { - "type": "string", - "description": "The color of the ad border." - }, - "text": { - "type": "string", - "description": "The color of the ad text." - }, - "title": { - "type": "string", - "description": "The color of the ad title." - }, - "url": { - "type": "string", - "description": "The color of the ad url." - } - } - }, - "corners": { - "type": "string", - "description": "The style of the corners in the ad (deprecated: never populated, ignored)." - }, - "font": { - "type": "object", - "description": "The font which is included in the style.", - "properties": { - "family": { - "type": "string", - "description": "The family of the font. Possible values are: ACCOUNT_DEFAULT_FAMILY, ADSENSE_DEFAULT_FAMILY, ARIAL, TIMES and VERDANA." - }, - "size": { - "type": "string", - "description": "The size of the font. Possible values are: ACCOUNT_DEFAULT_SIZE, ADSENSE_DEFAULT_SIZE, SMALL, MEDIUM and LARGE." - } - } - }, - "kind": { - "type": "string", - "description": "Kind this is, in this case adsensehost#adStyle.", - "default": "adsensehost#adStyle" - } - } - }, - "AdUnit": { - "id": "AdUnit", - "type": "object", - "properties": { - "code": { - "type": "string", - "description": "Identity code of this ad unit, not necessarily unique across ad clients." - }, - "contentAdsSettings": { - "type": "object", - "description": "Settings specific to content ads (AFC) and highend mobile content ads (AFMC - deprecated).", - "properties": { - "backupOption": { - "type": "object", - "description": "The backup option to be used in instances where no ad is available.", - "properties": { - "color": { - "type": "string", - "description": "Color to use when type is set to COLOR. These are represented as six hexadecimal characters, similar to HTML color codes, but without the leading hash." - }, - "type": { - "type": "string", - "description": "Type of the backup option. Possible values are BLANK, COLOR and URL." - }, - "url": { - "type": "string", - "description": "URL to use when type is set to URL." + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/adsensehost": { + "description": "View and manage your AdSense host data and associated accounts" } - } - }, - "size": { - "type": "string", - "description": "Size of this ad unit. Size values are in the form SIZE_{width}_{height}." - }, - "type": { - "type": "string", - "description": "Type of this ad unit. Possible values are TEXT, TEXT_IMAGE, IMAGE and LINK." } - } - }, - "customStyle": { - "$ref": "AdStyle", - "description": "Custom style information specific to this ad unit." - }, - "id": { - "type": "string", - "description": "Unique identifier of this ad unit. This should be considered an opaque identifier; it is not safe to rely on it being in any particular format." - }, - "kind": { - "type": "string", - "description": "Kind of resource this is, in this case adsensehost#adUnit.", - "default": "adsensehost#adUnit" - }, - "mobileContentAdsSettings": { - "type": "object", - "description": "Settings specific to WAP mobile content ads (AFMC - deprecated).", - "properties": { - "markupLanguage": { - "type": "string", - "description": "The markup language to use for this ad unit." - }, - "scriptingLanguage": { - "type": "string", - "description": "The scripting language to use for this ad unit." - }, - "size": { - "type": "string", - "description": "Size of this ad unit." - }, - "type": { - "type": "string", - "description": "Type of this ad unit." - } - } - }, - "name": { - "type": "string", - "description": "Name of this ad unit." - }, - "status": { - "type": "string", - "description": "Status of this ad unit. Possible values are:\nNEW: Indicates that the ad unit was created within the last seven days and does not yet have any activity associated with it.\n\nACTIVE: Indicates that there has been activity on this ad unit in the last seven days.\n\nINACTIVE: Indicates that there has been no activity on this ad unit in the last seven days." } - } }, - "AdUnits": { - "id": "AdUnits", - "type": "object", - "properties": { - "etag": { - "type": "string", - "description": "ETag of this response for caching purposes." - }, - "items": { - "type": "array", - "description": "The ad units returned in this list response.", - "items": { - "$ref": "AdUnit" - } - }, - "kind": { - "type": "string", - "description": "Kind of list this is, in this case adsensehost#adUnits.", - "default": "adsensehost#adUnits" - }, - "nextPageToken": { - "type": "string", - "description": "Continuation token used to page through ad units. To retrieve the next page of results, set the next request's \"pageToken\" value to this." - } - } + "basePath": "/adsensehost/v4.1/", + "baseUrl": "https://www.googleapis.com/adsensehost/v4.1/", + "batchPath": "batch/adsensehost/v4.1", + "canonicalName": "AdSense Host", + "description": "Generates performance reports, generates ad codes, and provides publisher management capabilities for AdSense Hosts.", + "discoveryVersion": "v1", + "documentationLink": "https://developers.google.com/adsense/host/", + "etag": "\"-iA1DTNe4s-I6JZXPt1t1Ypy8IU/GgWkCMn0Gu9PJFDrmlIZU1uRxE0\"", + "icons": { + "x16": "https://www.google.com/images/icons/product/adsense-16.png", + "x32": "https://www.google.com/images/icons/product/adsense-32.png" }, - "AssociationSession": { - "id": "AssociationSession", - "type": "object", - "properties": { - "accountId": { - "type": "string", - "description": "Hosted account id of the associated publisher after association. Present if status is ACCEPTED." - }, - "id": { - "type": "string", - "description": "Unique identifier of this association session." - }, - "kind": { - "type": "string", - "description": "Kind of resource this is, in this case adsensehost#associationSession.", - "default": "adsensehost#associationSession" - }, - "productCodes": { - "type": "array", - "description": "The products to associate with the user. Options: AFC, AFG, AFV, AFS (deprecated), AFMC (deprecated)", - "items": { + "id": "adsensehost:v4.1", + "kind": "discovery#restDescription", + "labels": [ + "limited_availability" + ], + "name": "adsensehost", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "alt": { + "default": "json", + "description": "Data format for the response.", + "enum": [ + "csv", + "json" + ], + "enumDescriptions": [ + "Responses with Content-Type of text/csv", + "Responses with Content-Type of application/json" + ], + "location": "query", "type": "string" - } }, - "redirectUrl": { - "type": "string", - "description": "Redirect URL of this association session. Used to redirect users into the AdSense association flow." - }, - "status": { - "type": "string", - "description": "Status of the completed association, available once the association callback token has been verified. One of ACCEPTED, REJECTED, or ERROR." - }, - "userLocale": { - "type": "string", - "description": "The preferred locale of the user themselves when going through the AdSense association flow." - }, - "websiteLocale": { - "type": "string", - "description": "The locale of the user's hosted website." - }, - "websiteUrl": { - "type": "string", - "description": "The URL of the user's hosted website." - } - } - }, - "CustomChannel": { - "id": "CustomChannel", - "type": "object", - "properties": { - "code": { - "type": "string", - "description": "Code of this custom channel, not necessarily unique across ad clients." - }, - "id": { - "type": "string", - "description": "Unique identifier of this custom channel. This should be considered an opaque identifier; it is not safe to rely on it being in any particular format." - }, - "kind": { - "type": "string", - "description": "Kind of resource this is, in this case adsensehost#customChannel.", - "default": "adsensehost#customChannel" - }, - "name": { - "type": "string", - "description": "Name of this custom channel." - } - } - }, - "CustomChannels": { - "id": "CustomChannels", - "type": "object", - "properties": { - "etag": { - "type": "string", - "description": "ETag of this response for caching purposes." - }, - "items": { - "type": "array", - "description": "The custom channels returned in this list response.", - "items": { - "$ref": "CustomChannel" - } - }, - "kind": { - "type": "string", - "description": "Kind of list this is, in this case adsensehost#customChannels.", - "default": "adsensehost#customChannels" - }, - "nextPageToken": { - "type": "string", - "description": "Continuation token used to page through custom channels. To retrieve the next page of results, set the next request's \"pageToken\" value to this." - } - } - }, - "Report": { - "id": "Report", - "type": "object", - "properties": { - "averages": { - "type": "array", - "description": "The averages of the report. This is the same length as any other row in the report; cells corresponding to dimension columns are empty.", - "items": { + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "location": "query", "type": "string" - } }, - "headers": { - "type": "array", - "description": "The header information of the columns requested in the report. This is a list of headers; one for each dimension in the request, followed by one for each metric in the request.", - "items": { - "type": "object", - "properties": { - "currency": { - "type": "string", - "description": "The currency of this column. Only present if the header type is METRIC_CURRENCY." - }, - "name": { - "type": "string", - "description": "The name of the header." - }, - "type": { - "type": "string", - "description": "The type of the header; one of DIMENSION, METRIC_TALLY, METRIC_RATIO, or METRIC_CURRENCY." - } - } - } - }, - "kind": { - "type": "string", - "description": "Kind this is, in this case adsensehost#report.", - "default": "adsensehost#report" - }, - "rows": { - "type": "array", - "description": "The output rows of the report. Each row is a list of cells; one for each dimension in the request, followed by one for each metric in the request. The dimension cells contain strings, and the metric cells contain numbers.", - "items": { - "type": "array", - "items": { - "type": "string" - } - } - }, - "totalMatchedRows": { - "type": "string", - "description": "The total number of rows matched by the report request. Fewer rows may be returned in the response due to being limited by the row count requested or the report row limit.", - "format": "int64" - }, - "totals": { - "type": "array", - "description": "The totals of the report. This is the same length as any other row in the report; cells corresponding to dimension columns are empty.", - "items": { + "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" - } }, - "warnings": { - "type": "array", - "description": "Any warnings associated with generation of the report.", - "items": { + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", + "location": "query", + "type": "string" + }, + "userIp": { + "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", + "location": "query", "type": "string" - } } - } }, - "UrlChannel": { - "id": "UrlChannel", - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Unique identifier of this URL channel. This should be considered an opaque identifier; it is not safe to rely on it being in any particular format." - }, - "kind": { - "type": "string", - "description": "Kind of resource this is, in this case adsensehost#urlChannel.", - "default": "adsensehost#urlChannel" - }, - "urlPattern": { - "type": "string", - "description": "URL Pattern of this URL channel. Does not include \"http://\" or \"https://\". Example: www.example.com/home" - } - } - }, - "UrlChannels": { - "id": "UrlChannels", - "type": "object", - "properties": { - "etag": { - "type": "string", - "description": "ETag of this response for caching purposes." - }, - "items": { - "type": "array", - "description": "The URL channels returned in this list response.", - "items": { - "$ref": "UrlChannel" - } - }, - "kind": { - "type": "string", - "description": "Kind of list this is, in this case adsensehost#urlChannels.", - "default": "adsensehost#urlChannels" - }, - "nextPageToken": { - "type": "string", - "description": "Continuation token used to page through URL channels. To retrieve the next page of results, set the next request's \"pageToken\" value to this." - } - } - } - }, - "resources": { - "accounts": { - "methods": { - "get": { - "id": "adsensehost.accounts.get", - "path": "accounts/{accountId}", - "httpMethod": "GET", - "description": "Get information about the selected associated AdSense account.", - "parameters": { - "accountId": { - "type": "string", - "description": "Account to get information about.", - "required": true, - "location": "path" + "protocol": "rest", + "resources": { + "accounts": { + "methods": { + "get": { + "description": "Get information about the selected associated AdSense account.", + "httpMethod": "GET", + "id": "adsensehost.accounts.get", + "parameterOrder": [ + "accountId" + ], + "parameters": { + "accountId": { + "description": "Account to get information about.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "accounts/{accountId}", + "response": { + "$ref": "Account" + }, + "scopes": [ + "https://www.googleapis.com/auth/adsensehost" + ] + }, + "list": { + "description": "List hosted accounts associated with this AdSense account by ad client id.", + "httpMethod": "GET", + "id": "adsensehost.accounts.list", + "parameterOrder": [ + "filterAdClientId" + ], + "parameters": { + "filterAdClientId": { + "description": "Ad clients to list accounts for.", + "location": "query", + "repeated": true, + "required": true, + "type": "string" + } + }, + "path": "accounts", + "response": { + "$ref": "Accounts" + }, + "scopes": [ + "https://www.googleapis.com/auth/adsensehost" + ] + } + }, + "resources": { + "adclients": { + "methods": { + "get": { + "description": "Get information about one of the ad clients in the specified publisher's AdSense account.", + "httpMethod": "GET", + "id": "adsensehost.accounts.adclients.get", + "parameterOrder": [ + "accountId", + "adClientId" + ], + "parameters": { + "accountId": { + "description": "Account which contains the ad client.", + "location": "path", + "required": true, + "type": "string" + }, + "adClientId": { + "description": "Ad client to get.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "accounts/{accountId}/adclients/{adClientId}", + "response": { + "$ref": "AdClient" + }, + "scopes": [ + "https://www.googleapis.com/auth/adsensehost" + ] + }, + "list": { + "description": "List all hosted ad clients in the specified hosted account.", + "httpMethod": "GET", + "id": "adsensehost.accounts.adclients.list", + "parameterOrder": [ + "accountId" + ], + "parameters": { + "accountId": { + "description": "Account for which to list ad clients.", + "location": "path", + "required": true, + "type": "string" + }, + "maxResults": { + "description": "The maximum number of ad clients to include in the response, used for paging.", + "format": "uint32", + "location": "query", + "maximum": "10000", + "minimum": "0", + "type": "integer" + }, + "pageToken": { + "description": "A continuation token, used to page through ad clients. To retrieve the next page, set this parameter to the value of \"nextPageToken\" from the previous response.", + "location": "query", + "type": "string" + } + }, + "path": "accounts/{accountId}/adclients", + "response": { + "$ref": "AdClients" + }, + "scopes": [ + "https://www.googleapis.com/auth/adsensehost" + ] + } + } + }, + "adunits": { + "methods": { + "delete": { + "description": "Delete the specified ad unit from the specified publisher AdSense account.", + "httpMethod": "DELETE", + "id": "adsensehost.accounts.adunits.delete", + "parameterOrder": [ + "accountId", + "adClientId", + "adUnitId" + ], + "parameters": { + "accountId": { + "description": "Account which contains the ad unit.", + "location": "path", + "required": true, + "type": "string" + }, + "adClientId": { + "description": "Ad client for which to get ad unit.", + "location": "path", + "required": true, + "type": "string" + }, + "adUnitId": { + "description": "Ad unit to delete.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "accounts/{accountId}/adclients/{adClientId}/adunits/{adUnitId}", + "response": { + "$ref": "AdUnit" + }, + "scopes": [ + "https://www.googleapis.com/auth/adsensehost" + ] + }, + "get": { + "description": "Get the specified host ad unit in this AdSense account.", + "httpMethod": "GET", + "id": "adsensehost.accounts.adunits.get", + "parameterOrder": [ + "accountId", + "adClientId", + "adUnitId" + ], + "parameters": { + "accountId": { + "description": "Account which contains the ad unit.", + "location": "path", + "required": true, + "type": "string" + }, + "adClientId": { + "description": "Ad client for which to get ad unit.", + "location": "path", + "required": true, + "type": "string" + }, + "adUnitId": { + "description": "Ad unit to get.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "accounts/{accountId}/adclients/{adClientId}/adunits/{adUnitId}", + "response": { + "$ref": "AdUnit" + }, + "scopes": [ + "https://www.googleapis.com/auth/adsensehost" + ] + }, + "getAdCode": { + "description": "Get ad code for the specified ad unit, attaching the specified host custom channels.", + "httpMethod": "GET", + "id": "adsensehost.accounts.adunits.getAdCode", + "parameterOrder": [ + "accountId", + "adClientId", + "adUnitId" + ], + "parameters": { + "accountId": { + "description": "Account which contains the ad client.", + "location": "path", + "required": true, + "type": "string" + }, + "adClientId": { + "description": "Ad client with contains the ad unit.", + "location": "path", + "required": true, + "type": "string" + }, + "adUnitId": { + "description": "Ad unit to get the code for.", + "location": "path", + "required": true, + "type": "string" + }, + "hostCustomChannelId": { + "description": "Host custom channel to attach to the ad code.", + "location": "query", + "repeated": true, + "type": "string" + } + }, + "path": "accounts/{accountId}/adclients/{adClientId}/adunits/{adUnitId}/adcode", + "response": { + "$ref": "AdCode" + }, + "scopes": [ + "https://www.googleapis.com/auth/adsensehost" + ] + }, + "insert": { + "description": "Insert the supplied ad unit into the specified publisher AdSense account.", + "httpMethod": "POST", + "id": "adsensehost.accounts.adunits.insert", + "parameterOrder": [ + "accountId", + "adClientId" + ], + "parameters": { + "accountId": { + "description": "Account which will contain the ad unit.", + "location": "path", + "required": true, + "type": "string" + }, + "adClientId": { + "description": "Ad client into which to insert the ad unit.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "accounts/{accountId}/adclients/{adClientId}/adunits", + "request": { + "$ref": "AdUnit" + }, + "response": { + "$ref": "AdUnit" + }, + "scopes": [ + "https://www.googleapis.com/auth/adsensehost" + ] + }, + "list": { + "description": "List all ad units in the specified publisher's AdSense account.", + "httpMethod": "GET", + "id": "adsensehost.accounts.adunits.list", + "parameterOrder": [ + "accountId", + "adClientId" + ], + "parameters": { + "accountId": { + "description": "Account which contains the ad client.", + "location": "path", + "required": true, + "type": "string" + }, + "adClientId": { + "description": "Ad client for which to list ad units.", + "location": "path", + "required": true, + "type": "string" + }, + "includeInactive": { + "description": "Whether to include inactive ad units. Default: true.", + "location": "query", + "type": "boolean" + }, + "maxResults": { + "description": "The maximum number of ad units to include in the response, used for paging.", + "format": "uint32", + "location": "query", + "maximum": "10000", + "minimum": "0", + "type": "integer" + }, + "pageToken": { + "description": "A continuation token, used to page through ad units. To retrieve the next page, set this parameter to the value of \"nextPageToken\" from the previous response.", + "location": "query", + "type": "string" + } + }, + "path": "accounts/{accountId}/adclients/{adClientId}/adunits", + "response": { + "$ref": "AdUnits" + }, + "scopes": [ + "https://www.googleapis.com/auth/adsensehost" + ] + }, + "patch": { + "description": "Update the supplied ad unit in the specified publisher AdSense account. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "adsensehost.accounts.adunits.patch", + "parameterOrder": [ + "accountId", + "adClientId", + "adUnitId" + ], + "parameters": { + "accountId": { + "description": "Account which contains the ad client.", + "location": "path", + "required": true, + "type": "string" + }, + "adClientId": { + "description": "Ad client which contains the ad unit.", + "location": "path", + "required": true, + "type": "string" + }, + "adUnitId": { + "description": "Ad unit to get.", + "location": "query", + "required": true, + "type": "string" + } + }, + "path": "accounts/{accountId}/adclients/{adClientId}/adunits", + "request": { + "$ref": "AdUnit" + }, + "response": { + "$ref": "AdUnit" + }, + "scopes": [ + "https://www.googleapis.com/auth/adsensehost" + ] + }, + "update": { + "description": "Update the supplied ad unit in the specified publisher AdSense account.", + "httpMethod": "PUT", + "id": "adsensehost.accounts.adunits.update", + "parameterOrder": [ + "accountId", + "adClientId" + ], + "parameters": { + "accountId": { + "description": "Account which contains the ad client.", + "location": "path", + "required": true, + "type": "string" + }, + "adClientId": { + "description": "Ad client which contains the ad unit.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "accounts/{accountId}/adclients/{adClientId}/adunits", + "request": { + "$ref": "AdUnit" + }, + "response": { + "$ref": "AdUnit" + }, + "scopes": [ + "https://www.googleapis.com/auth/adsensehost" + ] + } + } + }, + "reports": { + "methods": { + "generate": { + "description": "Generate an AdSense report based on the report request sent in the query parameters. Returns the result as JSON; to retrieve output in CSV format specify \"alt=csv\" as a query parameter.", + "httpMethod": "GET", + "id": "adsensehost.accounts.reports.generate", + "parameterOrder": [ + "accountId", + "startDate", + "endDate" + ], + "parameters": { + "accountId": { + "description": "Hosted account upon which to report.", + "location": "path", + "required": true, + "type": "string" + }, + "dimension": { + "description": "Dimensions to base the report on.", + "location": "query", + "pattern": "[a-zA-Z_]+", + "repeated": true, + "type": "string" + }, + "endDate": { + "description": "End of the date range to report on in \"YYYY-MM-DD\" format, inclusive.", + "location": "query", + "pattern": "\\d{4}-\\d{2}-\\d{2}|(today|startOfMonth|startOfYear)(([\\-\\+]\\d+[dwmy]){0,3}?)", + "required": true, + "type": "string" + }, + "filter": { + "description": "Filters to be run on the report.", + "location": "query", + "pattern": "[a-zA-Z_]+(==|=@).+", + "repeated": true, + "type": "string" + }, + "locale": { + "description": "Optional locale to use for translating report output to a local language. Defaults to \"en_US\" if not specified.", + "location": "query", + "pattern": "[a-zA-Z_]+", + "type": "string" + }, + "maxResults": { + "description": "The maximum number of rows of report data to return.", + "format": "uint32", + "location": "query", + "maximum": "50000", + "minimum": "0", + "type": "integer" + }, + "metric": { + "description": "Numeric columns to include in the report.", + "location": "query", + "pattern": "[a-zA-Z_]+", + "repeated": true, + "type": "string" + }, + "sort": { + "description": "The name of a dimension or metric to sort the resulting report on, optionally prefixed with \"+\" to sort ascending or \"-\" to sort descending. If no prefix is specified, the column is sorted ascending.", + "location": "query", + "pattern": "(\\+|-)?[a-zA-Z_]+", + "repeated": true, + "type": "string" + }, + "startDate": { + "description": "Start of the date range to report on in \"YYYY-MM-DD\" format, inclusive.", + "location": "query", + "pattern": "\\d{4}-\\d{2}-\\d{2}|(today|startOfMonth|startOfYear)(([\\-\\+]\\d+[dwmy]){0,3}?)", + "required": true, + "type": "string" + }, + "startIndex": { + "description": "Index of the first row of report data to return.", + "format": "uint32", + "location": "query", + "maximum": "5000", + "minimum": "0", + "type": "integer" + } + }, + "path": "accounts/{accountId}/reports", + "response": { + "$ref": "Report" + }, + "scopes": [ + "https://www.googleapis.com/auth/adsensehost" + ] + } + } + } } - }, - "parameterOrder": [ - "accountId" - ], - "response": { - "$ref": "Account" - }, - "scopes": [ - "https://www.googleapis.com/auth/adsensehost" - ] }, - "list": { - "id": "adsensehost.accounts.list", - "path": "accounts", - "httpMethod": "GET", - "description": "List hosted accounts associated with this AdSense account by ad client id.", - "parameters": { - "filterAdClientId": { - "type": "string", - "description": "Ad clients to list accounts for.", - "required": true, - "repeated": true, - "location": "query" - } - }, - "parameterOrder": [ - "filterAdClientId" - ], - "response": { - "$ref": "Accounts" - }, - "scopes": [ - "https://www.googleapis.com/auth/adsensehost" - ] - } - }, - "resources": { "adclients": { - "methods": { - "get": { - "id": "adsensehost.accounts.adclients.get", - "path": "accounts/{accountId}/adclients/{adClientId}", - "httpMethod": "GET", - "description": "Get information about one of the ad clients in the specified publisher's AdSense account.", - "parameters": { - "accountId": { - "type": "string", - "description": "Account which contains the ad client.", - "required": true, - "location": "path" + "methods": { + "get": { + "description": "Get information about one of the ad clients in the Host AdSense account.", + "httpMethod": "GET", + "id": "adsensehost.adclients.get", + "parameterOrder": [ + "adClientId" + ], + "parameters": { + "adClientId": { + "description": "Ad client to get.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "adclients/{adClientId}", + "response": { + "$ref": "AdClient" + }, + "scopes": [ + "https://www.googleapis.com/auth/adsensehost" + ] }, - "adClientId": { - "type": "string", - "description": "Ad client to get.", - "required": true, - "location": "path" + "list": { + "description": "List all host ad clients in this AdSense account.", + "httpMethod": "GET", + "id": "adsensehost.adclients.list", + "parameters": { + "maxResults": { + "description": "The maximum number of ad clients to include in the response, used for paging.", + "format": "uint32", + "location": "query", + "maximum": "10000", + "minimum": "0", + "type": "integer" + }, + "pageToken": { + "description": "A continuation token, used to page through ad clients. To retrieve the next page, set this parameter to the value of \"nextPageToken\" from the previous response.", + "location": "query", + "type": "string" + } + }, + "path": "adclients", + "response": { + "$ref": "AdClients" + }, + "scopes": [ + "https://www.googleapis.com/auth/adsensehost" + ] } - }, - "parameterOrder": [ - "accountId", - "adClientId" - ], - "response": { - "$ref": "AdClient" - }, - "scopes": [ - "https://www.googleapis.com/auth/adsensehost" - ] - }, - "list": { - "id": "adsensehost.accounts.adclients.list", - "path": "accounts/{accountId}/adclients", - "httpMethod": "GET", - "description": "List all hosted ad clients in the specified hosted account.", - "parameters": { - "accountId": { - "type": "string", - "description": "Account for which to list ad clients.", - "required": true, - "location": "path" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of ad clients to include in the response, used for paging.", - "format": "uint32", - "minimum": "0", - "maximum": "10000", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "A continuation token, used to page through ad clients. To retrieve the next page, set this parameter to the value of \"nextPageToken\" from the previous response.", - "location": "query" - } - }, - "parameterOrder": [ - "accountId" - ], - "response": { - "$ref": "AdClients" - }, - "scopes": [ - "https://www.googleapis.com/auth/adsensehost" - ] } - } }, - "adunits": { - "methods": { - "delete": { - "id": "adsensehost.accounts.adunits.delete", - "path": "accounts/{accountId}/adclients/{adClientId}/adunits/{adUnitId}", - "httpMethod": "DELETE", - "description": "Delete the specified ad unit from the specified publisher AdSense account.", - "parameters": { - "accountId": { - "type": "string", - "description": "Account which contains the ad unit.", - "required": true, - "location": "path" + "associationsessions": { + "methods": { + "start": { + "description": "Create an association session for initiating an association with an AdSense user.", + "httpMethod": "GET", + "id": "adsensehost.associationsessions.start", + "parameterOrder": [ + "productCode", + "websiteUrl" + ], + "parameters": { + "productCode": { + "description": "Products to associate with the user.", + "enum": [ + "AFC", + "AFG", + "AFMC", + "AFS", + "AFV" + ], + "enumDescriptions": [ + "AdSense For Content", + "AdSense For Games", + "AdSense For Mobile Content - deprecated", + "AdSense For Search - deprecated", + "AdSense For Video" + ], + "location": "query", + "repeated": true, + "required": true, + "type": "string" + }, + "userLocale": { + "description": "The preferred locale of the user.", + "location": "query", + "type": "string" + }, + "websiteLocale": { + "description": "The locale of the user's hosted website.", + "location": "query", + "type": "string" + }, + "websiteUrl": { + "description": "The URL of the user's hosted website.", + "location": "query", + "required": true, + "type": "string" + } + }, + "path": "associationsessions/start", + "response": { + "$ref": "AssociationSession" + }, + "scopes": [ + "https://www.googleapis.com/auth/adsensehost" + ] }, - "adClientId": { - "type": "string", - "description": "Ad client for which to get ad unit.", - "required": true, - "location": "path" - }, - "adUnitId": { - "type": "string", - "description": "Ad unit to delete.", - "required": true, - "location": "path" + "verify": { + "description": "Verify an association session after the association callback returns from AdSense signup.", + "httpMethod": "GET", + "id": "adsensehost.associationsessions.verify", + "parameterOrder": [ + "token" + ], + "parameters": { + "token": { + "description": "The token returned to the association callback URL.", + "location": "query", + "required": true, + "type": "string" + } + }, + "path": "associationsessions/verify", + "response": { + "$ref": "AssociationSession" + }, + "scopes": [ + "https://www.googleapis.com/auth/adsensehost" + ] + } + } + }, + "customchannels": { + "methods": { + "delete": { + "description": "Delete a specific custom channel from the host AdSense account.", + "httpMethod": "DELETE", + "id": "adsensehost.customchannels.delete", + "parameterOrder": [ + "adClientId", + "customChannelId" + ], + "parameters": { + "adClientId": { + "description": "Ad client from which to delete the custom channel.", + "location": "path", + "required": true, + "type": "string" + }, + "customChannelId": { + "description": "Custom channel to delete.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "adclients/{adClientId}/customchannels/{customChannelId}", + "response": { + "$ref": "CustomChannel" + }, + "scopes": [ + "https://www.googleapis.com/auth/adsensehost" + ] + }, + "get": { + "description": "Get a specific custom channel from the host AdSense account.", + "httpMethod": "GET", + "id": "adsensehost.customchannels.get", + "parameterOrder": [ + "adClientId", + "customChannelId" + ], + "parameters": { + "adClientId": { + "description": "Ad client from which to get the custom channel.", + "location": "path", + "required": true, + "type": "string" + }, + "customChannelId": { + "description": "Custom channel to get.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "adclients/{adClientId}/customchannels/{customChannelId}", + "response": { + "$ref": "CustomChannel" + }, + "scopes": [ + "https://www.googleapis.com/auth/adsensehost" + ] + }, + "insert": { + "description": "Add a new custom channel to the host AdSense account.", + "httpMethod": "POST", + "id": "adsensehost.customchannels.insert", + "parameterOrder": [ + "adClientId" + ], + "parameters": { + "adClientId": { + "description": "Ad client to which the new custom channel will be added.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "adclients/{adClientId}/customchannels", + "request": { + "$ref": "CustomChannel" + }, + "response": { + "$ref": "CustomChannel" + }, + "scopes": [ + "https://www.googleapis.com/auth/adsensehost" + ] + }, + "list": { + "description": "List all host custom channels in this AdSense account.", + "httpMethod": "GET", + "id": "adsensehost.customchannels.list", + "parameterOrder": [ + "adClientId" + ], + "parameters": { + "adClientId": { + "description": "Ad client for which to list custom channels.", + "location": "path", + "required": true, + "type": "string" + }, + "maxResults": { + "description": "The maximum number of custom channels to include in the response, used for paging.", + "format": "uint32", + "location": "query", + "maximum": "10000", + "minimum": "0", + "type": "integer" + }, + "pageToken": { + "description": "A continuation token, used to page through custom channels. To retrieve the next page, set this parameter to the value of \"nextPageToken\" from the previous response.", + "location": "query", + "type": "string" + } + }, + "path": "adclients/{adClientId}/customchannels", + "response": { + "$ref": "CustomChannels" + }, + "scopes": [ + "https://www.googleapis.com/auth/adsensehost" + ] + }, + "patch": { + "description": "Update a custom channel in the host AdSense account. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "adsensehost.customchannels.patch", + "parameterOrder": [ + "adClientId", + "customChannelId" + ], + "parameters": { + "adClientId": { + "description": "Ad client in which the custom channel will be updated.", + "location": "path", + "required": true, + "type": "string" + }, + "customChannelId": { + "description": "Custom channel to get.", + "location": "query", + "required": true, + "type": "string" + } + }, + "path": "adclients/{adClientId}/customchannels", + "request": { + "$ref": "CustomChannel" + }, + "response": { + "$ref": "CustomChannel" + }, + "scopes": [ + "https://www.googleapis.com/auth/adsensehost" + ] + }, + "update": { + "description": "Update a custom channel in the host AdSense account.", + "httpMethod": "PUT", + "id": "adsensehost.customchannels.update", + "parameterOrder": [ + "adClientId" + ], + "parameters": { + "adClientId": { + "description": "Ad client in which the custom channel will be updated.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "adclients/{adClientId}/customchannels", + "request": { + "$ref": "CustomChannel" + }, + "response": { + "$ref": "CustomChannel" + }, + "scopes": [ + "https://www.googleapis.com/auth/adsensehost" + ] } - }, - "parameterOrder": [ - "accountId", - "adClientId", - "adUnitId" - ], - "response": { - "$ref": "AdUnit" - }, - "scopes": [ - "https://www.googleapis.com/auth/adsensehost" - ] - }, - "get": { - "id": "adsensehost.accounts.adunits.get", - "path": "accounts/{accountId}/adclients/{adClientId}/adunits/{adUnitId}", - "httpMethod": "GET", - "description": "Get the specified host ad unit in this AdSense account.", - "parameters": { - "accountId": { - "type": "string", - "description": "Account which contains the ad unit.", - "required": true, - "location": "path" - }, - "adClientId": { - "type": "string", - "description": "Ad client for which to get ad unit.", - "required": true, - "location": "path" - }, - "adUnitId": { - "type": "string", - "description": "Ad unit to get.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "accountId", - "adClientId", - "adUnitId" - ], - "response": { - "$ref": "AdUnit" - }, - "scopes": [ - "https://www.googleapis.com/auth/adsensehost" - ] - }, - "getAdCode": { - "id": "adsensehost.accounts.adunits.getAdCode", - "path": "accounts/{accountId}/adclients/{adClientId}/adunits/{adUnitId}/adcode", - "httpMethod": "GET", - "description": "Get ad code for the specified ad unit, attaching the specified host custom channels.", - "parameters": { - "accountId": { - "type": "string", - "description": "Account which contains the ad client.", - "required": true, - "location": "path" - }, - "adClientId": { - "type": "string", - "description": "Ad client with contains the ad unit.", - "required": true, - "location": "path" - }, - "adUnitId": { - "type": "string", - "description": "Ad unit to get the code for.", - "required": true, - "location": "path" - }, - "hostCustomChannelId": { - "type": "string", - "description": "Host custom channel to attach to the ad code.", - "repeated": true, - "location": "query" - } - }, - "parameterOrder": [ - "accountId", - "adClientId", - "adUnitId" - ], - "response": { - "$ref": "AdCode" - }, - "scopes": [ - "https://www.googleapis.com/auth/adsensehost" - ] - }, - "insert": { - "id": "adsensehost.accounts.adunits.insert", - "path": "accounts/{accountId}/adclients/{adClientId}/adunits", - "httpMethod": "POST", - "description": "Insert the supplied ad unit into the specified publisher AdSense account.", - "parameters": { - "accountId": { - "type": "string", - "description": "Account which will contain the ad unit.", - "required": true, - "location": "path" - }, - "adClientId": { - "type": "string", - "description": "Ad client into which to insert the ad unit.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "accountId", - "adClientId" - ], - "request": { - "$ref": "AdUnit" - }, - "response": { - "$ref": "AdUnit" - }, - "scopes": [ - "https://www.googleapis.com/auth/adsensehost" - ] - }, - "list": { - "id": "adsensehost.accounts.adunits.list", - "path": "accounts/{accountId}/adclients/{adClientId}/adunits", - "httpMethod": "GET", - "description": "List all ad units in the specified publisher's AdSense account.", - "parameters": { - "accountId": { - "type": "string", - "description": "Account which contains the ad client.", - "required": true, - "location": "path" - }, - "adClientId": { - "type": "string", - "description": "Ad client for which to list ad units.", - "required": true, - "location": "path" - }, - "includeInactive": { - "type": "boolean", - "description": "Whether to include inactive ad units. Default: true.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of ad units to include in the response, used for paging.", - "format": "uint32", - "minimum": "0", - "maximum": "10000", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "A continuation token, used to page through ad units. To retrieve the next page, set this parameter to the value of \"nextPageToken\" from the previous response.", - "location": "query" - } - }, - "parameterOrder": [ - "accountId", - "adClientId" - ], - "response": { - "$ref": "AdUnits" - }, - "scopes": [ - "https://www.googleapis.com/auth/adsensehost" - ] - }, - "patch": { - "id": "adsensehost.accounts.adunits.patch", - "path": "accounts/{accountId}/adclients/{adClientId}/adunits", - "httpMethod": "PATCH", - "description": "Update the supplied ad unit in the specified publisher AdSense account. This method supports patch semantics.", - "parameters": { - "accountId": { - "type": "string", - "description": "Account which contains the ad client.", - "required": true, - "location": "path" - }, - "adClientId": { - "type": "string", - "description": "Ad client which contains the ad unit.", - "required": true, - "location": "path" - }, - "adUnitId": { - "type": "string", - "description": "Ad unit to get.", - "required": true, - "location": "query" - } - }, - "parameterOrder": [ - "accountId", - "adClientId", - "adUnitId" - ], - "request": { - "$ref": "AdUnit" - }, - "response": { - "$ref": "AdUnit" - }, - "scopes": [ - "https://www.googleapis.com/auth/adsensehost" - ] - }, - "update": { - "id": "adsensehost.accounts.adunits.update", - "path": "accounts/{accountId}/adclients/{adClientId}/adunits", - "httpMethod": "PUT", - "description": "Update the supplied ad unit in the specified publisher AdSense account.", - "parameters": { - "accountId": { - "type": "string", - "description": "Account which contains the ad client.", - "required": true, - "location": "path" - }, - "adClientId": { - "type": "string", - "description": "Ad client which contains the ad unit.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "accountId", - "adClientId" - ], - "request": { - "$ref": "AdUnit" - }, - "response": { - "$ref": "AdUnit" - }, - "scopes": [ - "https://www.googleapis.com/auth/adsensehost" - ] } - } }, "reports": { - "methods": { - "generate": { - "id": "adsensehost.accounts.reports.generate", - "path": "accounts/{accountId}/reports", - "httpMethod": "GET", - "description": "Generate an AdSense report based on the report request sent in the query parameters. Returns the result as JSON; to retrieve output in CSV format specify \"alt=csv\" as a query parameter.", - "parameters": { - "accountId": { - "type": "string", - "description": "Hosted account upon which to report.", - "required": true, - "location": "path" - }, - "dimension": { - "type": "string", - "description": "Dimensions to base the report on.", - "pattern": "[a-zA-Z_]+", - "repeated": true, - "location": "query" - }, - "endDate": { - "type": "string", - "description": "End of the date range to report on in \"YYYY-MM-DD\" format, inclusive.", - "required": true, - "pattern": "\\d{4}-\\d{2}-\\d{2}|(today|startOfMonth|startOfYear)(([\\-\\+]\\d+[dwmy]){0,3}?)", - "location": "query" - }, - "filter": { - "type": "string", - "description": "Filters to be run on the report.", - "pattern": "[a-zA-Z_]+(==|=@).+", - "repeated": true, - "location": "query" - }, - "locale": { - "type": "string", - "description": "Optional locale to use for translating report output to a local language. Defaults to \"en_US\" if not specified.", - "pattern": "[a-zA-Z_]+", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of rows of report data to return.", - "format": "uint32", - "minimum": "0", - "maximum": "50000", - "location": "query" - }, - "metric": { - "type": "string", - "description": "Numeric columns to include in the report.", - "pattern": "[a-zA-Z_]+", - "repeated": true, - "location": "query" - }, - "sort": { - "type": "string", - "description": "The name of a dimension or metric to sort the resulting report on, optionally prefixed with \"+\" to sort ascending or \"-\" to sort descending. If no prefix is specified, the column is sorted ascending.", - "pattern": "(\\+|-)?[a-zA-Z_]+", - "repeated": true, - "location": "query" - }, - "startDate": { - "type": "string", - "description": "Start of the date range to report on in \"YYYY-MM-DD\" format, inclusive.", - "required": true, - "pattern": "\\d{4}-\\d{2}-\\d{2}|(today|startOfMonth|startOfYear)(([\\-\\+]\\d+[dwmy]){0,3}?)", - "location": "query" - }, - "startIndex": { - "type": "integer", - "description": "Index of the first row of report data to return.", - "format": "uint32", - "minimum": "0", - "maximum": "5000", - "location": "query" + "methods": { + "generate": { + "description": "Generate an AdSense report based on the report request sent in the query parameters. Returns the result as JSON; to retrieve output in CSV format specify \"alt=csv\" as a query parameter.", + "httpMethod": "GET", + "id": "adsensehost.reports.generate", + "parameterOrder": [ + "startDate", + "endDate" + ], + "parameters": { + "dimension": { + "description": "Dimensions to base the report on.", + "location": "query", + "pattern": "[a-zA-Z_]+", + "repeated": true, + "type": "string" + }, + "endDate": { + "description": "End of the date range to report on in \"YYYY-MM-DD\" format, inclusive.", + "location": "query", + "pattern": "\\d{4}-\\d{2}-\\d{2}|(today|startOfMonth|startOfYear)(([\\-\\+]\\d+[dwmy]){0,3}?)", + "required": true, + "type": "string" + }, + "filter": { + "description": "Filters to be run on the report.", + "location": "query", + "pattern": "[a-zA-Z_]+(==|=@).+", + "repeated": true, + "type": "string" + }, + "locale": { + "description": "Optional locale to use for translating report output to a local language. Defaults to \"en_US\" if not specified.", + "location": "query", + "pattern": "[a-zA-Z_]+", + "type": "string" + }, + "maxResults": { + "description": "The maximum number of rows of report data to return.", + "format": "uint32", + "location": "query", + "maximum": "50000", + "minimum": "0", + "type": "integer" + }, + "metric": { + "description": "Numeric columns to include in the report.", + "location": "query", + "pattern": "[a-zA-Z_]+", + "repeated": true, + "type": "string" + }, + "sort": { + "description": "The name of a dimension or metric to sort the resulting report on, optionally prefixed with \"+\" to sort ascending or \"-\" to sort descending. If no prefix is specified, the column is sorted ascending.", + "location": "query", + "pattern": "(\\+|-)?[a-zA-Z_]+", + "repeated": true, + "type": "string" + }, + "startDate": { + "description": "Start of the date range to report on in \"YYYY-MM-DD\" format, inclusive.", + "location": "query", + "pattern": "\\d{4}-\\d{2}-\\d{2}|(today|startOfMonth|startOfYear)(([\\-\\+]\\d+[dwmy]){0,3}?)", + "required": true, + "type": "string" + }, + "startIndex": { + "description": "Index of the first row of report data to return.", + "format": "uint32", + "location": "query", + "maximum": "5000", + "minimum": "0", + "type": "integer" + } + }, + "path": "reports", + "response": { + "$ref": "Report" + }, + "scopes": [ + "https://www.googleapis.com/auth/adsensehost" + ] + } + } + }, + "urlchannels": { + "methods": { + "delete": { + "description": "Delete a URL channel from the host AdSense account.", + "httpMethod": "DELETE", + "id": "adsensehost.urlchannels.delete", + "parameterOrder": [ + "adClientId", + "urlChannelId" + ], + "parameters": { + "adClientId": { + "description": "Ad client from which to delete the URL channel.", + "location": "path", + "required": true, + "type": "string" + }, + "urlChannelId": { + "description": "URL channel to delete.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "adclients/{adClientId}/urlchannels/{urlChannelId}", + "response": { + "$ref": "UrlChannel" + }, + "scopes": [ + "https://www.googleapis.com/auth/adsensehost" + ] + }, + "insert": { + "description": "Add a new URL channel to the host AdSense account.", + "httpMethod": "POST", + "id": "adsensehost.urlchannels.insert", + "parameterOrder": [ + "adClientId" + ], + "parameters": { + "adClientId": { + "description": "Ad client to which the new URL channel will be added.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "adclients/{adClientId}/urlchannels", + "request": { + "$ref": "UrlChannel" + }, + "response": { + "$ref": "UrlChannel" + }, + "scopes": [ + "https://www.googleapis.com/auth/adsensehost" + ] + }, + "list": { + "description": "List all host URL channels in the host AdSense account.", + "httpMethod": "GET", + "id": "adsensehost.urlchannels.list", + "parameterOrder": [ + "adClientId" + ], + "parameters": { + "adClientId": { + "description": "Ad client for which to list URL channels.", + "location": "path", + "required": true, + "type": "string" + }, + "maxResults": { + "description": "The maximum number of URL channels to include in the response, used for paging.", + "format": "uint32", + "location": "query", + "maximum": "10000", + "minimum": "0", + "type": "integer" + }, + "pageToken": { + "description": "A continuation token, used to page through URL channels. To retrieve the next page, set this parameter to the value of \"nextPageToken\" from the previous response.", + "location": "query", + "type": "string" + } + }, + "path": "adclients/{adClientId}/urlchannels", + "response": { + "$ref": "UrlChannels" + }, + "scopes": [ + "https://www.googleapis.com/auth/adsensehost" + ] } - }, - "parameterOrder": [ - "accountId", - "startDate", - "endDate" - ], - "response": { - "$ref": "Report" - }, - "scopes": [ - "https://www.googleapis.com/auth/adsensehost" - ] } - } } - } }, - "adclients": { - "methods": { - "get": { - "id": "adsensehost.adclients.get", - "path": "adclients/{adClientId}", - "httpMethod": "GET", - "description": "Get information about one of the ad clients in the Host AdSense account.", - "parameters": { - "adClientId": { - "type": "string", - "description": "Ad client to get.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "adClientId" - ], - "response": { - "$ref": "AdClient" - }, - "scopes": [ - "https://www.googleapis.com/auth/adsensehost" - ] - }, - "list": { - "id": "adsensehost.adclients.list", - "path": "adclients", - "httpMethod": "GET", - "description": "List all host ad clients in this AdSense account.", - "parameters": { - "maxResults": { - "type": "integer", - "description": "The maximum number of ad clients to include in the response, used for paging.", - "format": "uint32", - "minimum": "0", - "maximum": "10000", - "location": "query" + "revision": "20180204", + "rootUrl": "https://www.googleapis.com/", + "schemas": { + "Account": { + "id": "Account", + "properties": { + "id": { + "description": "Unique identifier of this account.", + "type": "string" + }, + "kind": { + "default": "adsensehost#account", + "description": "Kind of resource this is, in this case adsensehost#account.", + "type": "string" + }, + "name": { + "description": "Name of this account.", + "type": "string" + }, + "status": { + "description": "Approval status of this account. One of: PENDING, APPROVED, DISABLED.", + "type": "string" + } }, - "pageToken": { - "type": "string", - "description": "A continuation token, used to page through ad clients. To retrieve the next page, set this parameter to the value of \"nextPageToken\" from the previous response.", - "location": "query" - } - }, - "response": { - "$ref": "AdClients" - }, - "scopes": [ - "https://www.googleapis.com/auth/adsensehost" - ] + "type": "object" + }, + "Accounts": { + "id": "Accounts", + "properties": { + "etag": { + "description": "ETag of this response for caching purposes.", + "type": "string" + }, + "items": { + "description": "The accounts returned in this list response.", + "items": { + "$ref": "Account" + }, + "type": "array" + }, + "kind": { + "default": "adsensehost#accounts", + "description": "Kind of list this is, in this case adsensehost#accounts.", + "type": "string" + } + }, + "type": "object" + }, + "AdClient": { + "id": "AdClient", + "properties": { + "arcOptIn": { + "description": "Whether this ad client is opted in to ARC.", + "type": "boolean" + }, + "id": { + "description": "Unique identifier of this ad client.", + "type": "string" + }, + "kind": { + "default": "adsensehost#adClient", + "description": "Kind of resource this is, in this case adsensehost#adClient.", + "type": "string" + }, + "productCode": { + "description": "This ad client's product code, which corresponds to the PRODUCT_CODE report dimension.", + "type": "string" + }, + "supportsReporting": { + "description": "Whether this ad client supports being reported on.", + "type": "boolean" + } + }, + "type": "object" + }, + "AdClients": { + "id": "AdClients", + "properties": { + "etag": { + "description": "ETag of this response for caching purposes.", + "type": "string" + }, + "items": { + "description": "The ad clients returned in this list response.", + "items": { + "$ref": "AdClient" + }, + "type": "array" + }, + "kind": { + "default": "adsensehost#adClients", + "description": "Kind of list this is, in this case adsensehost#adClients.", + "type": "string" + }, + "nextPageToken": { + "description": "Continuation token used to page through ad clients. To retrieve the next page of results, set the next request's \"pageToken\" value to this.", + "type": "string" + } + }, + "type": "object" + }, + "AdCode": { + "id": "AdCode", + "properties": { + "adCode": { + "description": "The ad code snippet.", + "type": "string" + }, + "kind": { + "default": "adsensehost#adCode", + "description": "Kind this is, in this case adsensehost#adCode.", + "type": "string" + } + }, + "type": "object" + }, + "AdStyle": { + "id": "AdStyle", + "properties": { + "colors": { + "description": "The colors included in the style. These are represented as six hexadecimal characters, similar to HTML color codes, but without the leading hash.", + "properties": { + "background": { + "description": "The color of the ad background.", + "type": "string" + }, + "border": { + "description": "The color of the ad border.", + "type": "string" + }, + "text": { + "description": "The color of the ad text.", + "type": "string" + }, + "title": { + "description": "The color of the ad title.", + "type": "string" + }, + "url": { + "description": "The color of the ad url.", + "type": "string" + } + }, + "type": "object" + }, + "corners": { + "description": "The style of the corners in the ad (deprecated: never populated, ignored).", + "type": "string" + }, + "font": { + "description": "The font which is included in the style.", + "properties": { + "family": { + "description": "The family of the font. Possible values are: ACCOUNT_DEFAULT_FAMILY, ADSENSE_DEFAULT_FAMILY, ARIAL, TIMES and VERDANA.", + "type": "string" + }, + "size": { + "description": "The size of the font. Possible values are: ACCOUNT_DEFAULT_SIZE, ADSENSE_DEFAULT_SIZE, SMALL, MEDIUM and LARGE.", + "type": "string" + } + }, + "type": "object" + }, + "kind": { + "default": "adsensehost#adStyle", + "description": "Kind this is, in this case adsensehost#adStyle.", + "type": "string" + } + }, + "type": "object" + }, + "AdUnit": { + "id": "AdUnit", + "properties": { + "code": { + "description": "Identity code of this ad unit, not necessarily unique across ad clients.", + "type": "string" + }, + "contentAdsSettings": { + "description": "Settings specific to content ads (AFC) and highend mobile content ads (AFMC - deprecated).", + "properties": { + "backupOption": { + "description": "The backup option to be used in instances where no ad is available.", + "properties": { + "color": { + "description": "Color to use when type is set to COLOR. These are represented as six hexadecimal characters, similar to HTML color codes, but without the leading hash.", + "type": "string" + }, + "type": { + "description": "Type of the backup option. Possible values are BLANK, COLOR and URL.", + "type": "string" + }, + "url": { + "description": "URL to use when type is set to URL.", + "type": "string" + } + }, + "type": "object" + }, + "size": { + "description": "Size of this ad unit. Size values are in the form SIZE_{width}_{height}.", + "type": "string" + }, + "type": { + "description": "Type of this ad unit. Possible values are TEXT, TEXT_IMAGE, IMAGE and LINK.", + "type": "string" + } + }, + "type": "object" + }, + "customStyle": { + "$ref": "AdStyle", + "description": "Custom style information specific to this ad unit." + }, + "id": { + "description": "Unique identifier of this ad unit. This should be considered an opaque identifier; it is not safe to rely on it being in any particular format.", + "type": "string" + }, + "kind": { + "default": "adsensehost#adUnit", + "description": "Kind of resource this is, in this case adsensehost#adUnit.", + "type": "string" + }, + "mobileContentAdsSettings": { + "description": "Settings specific to WAP mobile content ads (AFMC - deprecated).", + "properties": { + "markupLanguage": { + "description": "The markup language to use for this ad unit.", + "type": "string" + }, + "scriptingLanguage": { + "description": "The scripting language to use for this ad unit.", + "type": "string" + }, + "size": { + "description": "Size of this ad unit.", + "type": "string" + }, + "type": { + "description": "Type of this ad unit.", + "type": "string" + } + }, + "type": "object" + }, + "name": { + "description": "Name of this ad unit.", + "type": "string" + }, + "status": { + "description": "Status of this ad unit. Possible values are:\nNEW: Indicates that the ad unit was created within the last seven days and does not yet have any activity associated with it.\n\nACTIVE: Indicates that there has been activity on this ad unit in the last seven days.\n\nINACTIVE: Indicates that there has been no activity on this ad unit in the last seven days.", + "type": "string" + } + }, + "type": "object" + }, + "AdUnits": { + "id": "AdUnits", + "properties": { + "etag": { + "description": "ETag of this response for caching purposes.", + "type": "string" + }, + "items": { + "description": "The ad units returned in this list response.", + "items": { + "$ref": "AdUnit" + }, + "type": "array" + }, + "kind": { + "default": "adsensehost#adUnits", + "description": "Kind of list this is, in this case adsensehost#adUnits.", + "type": "string" + }, + "nextPageToken": { + "description": "Continuation token used to page through ad units. To retrieve the next page of results, set the next request's \"pageToken\" value to this.", + "type": "string" + } + }, + "type": "object" + }, + "AssociationSession": { + "id": "AssociationSession", + "properties": { + "accountId": { + "description": "Hosted account id of the associated publisher after association. Present if status is ACCEPTED.", + "type": "string" + }, + "id": { + "description": "Unique identifier of this association session.", + "type": "string" + }, + "kind": { + "default": "adsensehost#associationSession", + "description": "Kind of resource this is, in this case adsensehost#associationSession.", + "type": "string" + }, + "productCodes": { + "description": "The products to associate with the user. Options: AFC, AFG, AFV, AFS (deprecated), AFMC (deprecated)", + "items": { + "type": "string" + }, + "type": "array" + }, + "redirectUrl": { + "description": "Redirect URL of this association session. Used to redirect users into the AdSense association flow.", + "type": "string" + }, + "status": { + "description": "Status of the completed association, available once the association callback token has been verified. One of ACCEPTED, REJECTED, or ERROR.", + "type": "string" + }, + "userLocale": { + "description": "The preferred locale of the user themselves when going through the AdSense association flow.", + "type": "string" + }, + "websiteLocale": { + "description": "The locale of the user's hosted website.", + "type": "string" + }, + "websiteUrl": { + "description": "The URL of the user's hosted website.", + "type": "string" + } + }, + "type": "object" + }, + "CustomChannel": { + "id": "CustomChannel", + "properties": { + "code": { + "description": "Code of this custom channel, not necessarily unique across ad clients.", + "type": "string" + }, + "id": { + "description": "Unique identifier of this custom channel. This should be considered an opaque identifier; it is not safe to rely on it being in any particular format.", + "type": "string" + }, + "kind": { + "default": "adsensehost#customChannel", + "description": "Kind of resource this is, in this case adsensehost#customChannel.", + "type": "string" + }, + "name": { + "description": "Name of this custom channel.", + "type": "string" + } + }, + "type": "object" + }, + "CustomChannels": { + "id": "CustomChannels", + "properties": { + "etag": { + "description": "ETag of this response for caching purposes.", + "type": "string" + }, + "items": { + "description": "The custom channels returned in this list response.", + "items": { + "$ref": "CustomChannel" + }, + "type": "array" + }, + "kind": { + "default": "adsensehost#customChannels", + "description": "Kind of list this is, in this case adsensehost#customChannels.", + "type": "string" + }, + "nextPageToken": { + "description": "Continuation token used to page through custom channels. To retrieve the next page of results, set the next request's \"pageToken\" value to this.", + "type": "string" + } + }, + "type": "object" + }, + "Report": { + "id": "Report", + "properties": { + "averages": { + "description": "The averages of the report. This is the same length as any other row in the report; cells corresponding to dimension columns are empty.", + "items": { + "type": "string" + }, + "type": "array" + }, + "headers": { + "description": "The header information of the columns requested in the report. This is a list of headers; one for each dimension in the request, followed by one for each metric in the request.", + "items": { + "properties": { + "currency": { + "description": "The currency of this column. Only present if the header type is METRIC_CURRENCY.", + "type": "string" + }, + "name": { + "description": "The name of the header.", + "type": "string" + }, + "type": { + "description": "The type of the header; one of DIMENSION, METRIC_TALLY, METRIC_RATIO, or METRIC_CURRENCY.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "kind": { + "default": "adsensehost#report", + "description": "Kind this is, in this case adsensehost#report.", + "type": "string" + }, + "rows": { + "description": "The output rows of the report. Each row is a list of cells; one for each dimension in the request, followed by one for each metric in the request. The dimension cells contain strings, and the metric cells contain numbers.", + "items": { + "items": { + "type": "string" + }, + "type": "array" + }, + "type": "array" + }, + "totalMatchedRows": { + "description": "The total number of rows matched by the report request. Fewer rows may be returned in the response due to being limited by the row count requested or the report row limit.", + "format": "int64", + "type": "string" + }, + "totals": { + "description": "The totals of the report. This is the same length as any other row in the report; cells corresponding to dimension columns are empty.", + "items": { + "type": "string" + }, + "type": "array" + }, + "warnings": { + "description": "Any warnings associated with generation of the report.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "UrlChannel": { + "id": "UrlChannel", + "properties": { + "id": { + "description": "Unique identifier of this URL channel. This should be considered an opaque identifier; it is not safe to rely on it being in any particular format.", + "type": "string" + }, + "kind": { + "default": "adsensehost#urlChannel", + "description": "Kind of resource this is, in this case adsensehost#urlChannel.", + "type": "string" + }, + "urlPattern": { + "description": "URL Pattern of this URL channel. Does not include \"http://\" or \"https://\". Example: www.example.com/home", + "type": "string" + } + }, + "type": "object" + }, + "UrlChannels": { + "id": "UrlChannels", + "properties": { + "etag": { + "description": "ETag of this response for caching purposes.", + "type": "string" + }, + "items": { + "description": "The URL channels returned in this list response.", + "items": { + "$ref": "UrlChannel" + }, + "type": "array" + }, + "kind": { + "default": "adsensehost#urlChannels", + "description": "Kind of list this is, in this case adsensehost#urlChannels.", + "type": "string" + }, + "nextPageToken": { + "description": "Continuation token used to page through URL channels. To retrieve the next page of results, set the next request's \"pageToken\" value to this.", + "type": "string" + } + }, + "type": "object" } - } }, - "associationsessions": { - "methods": { - "start": { - "id": "adsensehost.associationsessions.start", - "path": "associationsessions/start", - "httpMethod": "GET", - "description": "Create an association session for initiating an association with an AdSense user.", - "parameters": { - "productCode": { - "type": "string", - "description": "Products to associate with the user.", - "required": true, - "enum": [ - "AFC", - "AFG", - "AFMC", - "AFS", - "AFV" - ], - "enumDescriptions": [ - "AdSense For Content", - "AdSense For Games", - "AdSense For Mobile Content - deprecated", - "AdSense For Search - deprecated", - "AdSense For Video" - ], - "repeated": true, - "location": "query" - }, - "userLocale": { - "type": "string", - "description": "The preferred locale of the user.", - "location": "query" - }, - "websiteLocale": { - "type": "string", - "description": "The locale of the user's hosted website.", - "location": "query" - }, - "websiteUrl": { - "type": "string", - "description": "The URL of the user's hosted website.", - "required": true, - "location": "query" - } - }, - "parameterOrder": [ - "productCode", - "websiteUrl" - ], - "response": { - "$ref": "AssociationSession" - }, - "scopes": [ - "https://www.googleapis.com/auth/adsensehost" - ] - }, - "verify": { - "id": "adsensehost.associationsessions.verify", - "path": "associationsessions/verify", - "httpMethod": "GET", - "description": "Verify an association session after the association callback returns from AdSense signup.", - "parameters": { - "token": { - "type": "string", - "description": "The token returned to the association callback URL.", - "required": true, - "location": "query" - } - }, - "parameterOrder": [ - "token" - ], - "response": { - "$ref": "AssociationSession" - }, - "scopes": [ - "https://www.googleapis.com/auth/adsensehost" - ] - } - } - }, - "customchannels": { - "methods": { - "delete": { - "id": "adsensehost.customchannels.delete", - "path": "adclients/{adClientId}/customchannels/{customChannelId}", - "httpMethod": "DELETE", - "description": "Delete a specific custom channel from the host AdSense account.", - "parameters": { - "adClientId": { - "type": "string", - "description": "Ad client from which to delete the custom channel.", - "required": true, - "location": "path" - }, - "customChannelId": { - "type": "string", - "description": "Custom channel to delete.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "adClientId", - "customChannelId" - ], - "response": { - "$ref": "CustomChannel" - }, - "scopes": [ - "https://www.googleapis.com/auth/adsensehost" - ] - }, - "get": { - "id": "adsensehost.customchannels.get", - "path": "adclients/{adClientId}/customchannels/{customChannelId}", - "httpMethod": "GET", - "description": "Get a specific custom channel from the host AdSense account.", - "parameters": { - "adClientId": { - "type": "string", - "description": "Ad client from which to get the custom channel.", - "required": true, - "location": "path" - }, - "customChannelId": { - "type": "string", - "description": "Custom channel to get.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "adClientId", - "customChannelId" - ], - "response": { - "$ref": "CustomChannel" - }, - "scopes": [ - "https://www.googleapis.com/auth/adsensehost" - ] - }, - "insert": { - "id": "adsensehost.customchannels.insert", - "path": "adclients/{adClientId}/customchannels", - "httpMethod": "POST", - "description": "Add a new custom channel to the host AdSense account.", - "parameters": { - "adClientId": { - "type": "string", - "description": "Ad client to which the new custom channel will be added.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "adClientId" - ], - "request": { - "$ref": "CustomChannel" - }, - "response": { - "$ref": "CustomChannel" - }, - "scopes": [ - "https://www.googleapis.com/auth/adsensehost" - ] - }, - "list": { - "id": "adsensehost.customchannels.list", - "path": "adclients/{adClientId}/customchannels", - "httpMethod": "GET", - "description": "List all host custom channels in this AdSense account.", - "parameters": { - "adClientId": { - "type": "string", - "description": "Ad client for which to list custom channels.", - "required": true, - "location": "path" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of custom channels to include in the response, used for paging.", - "format": "uint32", - "minimum": "0", - "maximum": "10000", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "A continuation token, used to page through custom channels. To retrieve the next page, set this parameter to the value of \"nextPageToken\" from the previous response.", - "location": "query" - } - }, - "parameterOrder": [ - "adClientId" - ], - "response": { - "$ref": "CustomChannels" - }, - "scopes": [ - "https://www.googleapis.com/auth/adsensehost" - ] - }, - "patch": { - "id": "adsensehost.customchannels.patch", - "path": "adclients/{adClientId}/customchannels", - "httpMethod": "PATCH", - "description": "Update a custom channel in the host AdSense account. This method supports patch semantics.", - "parameters": { - "adClientId": { - "type": "string", - "description": "Ad client in which the custom channel will be updated.", - "required": true, - "location": "path" - }, - "customChannelId": { - "type": "string", - "description": "Custom channel to get.", - "required": true, - "location": "query" - } - }, - "parameterOrder": [ - "adClientId", - "customChannelId" - ], - "request": { - "$ref": "CustomChannel" - }, - "response": { - "$ref": "CustomChannel" - }, - "scopes": [ - "https://www.googleapis.com/auth/adsensehost" - ] - }, - "update": { - "id": "adsensehost.customchannels.update", - "path": "adclients/{adClientId}/customchannels", - "httpMethod": "PUT", - "description": "Update a custom channel in the host AdSense account.", - "parameters": { - "adClientId": { - "type": "string", - "description": "Ad client in which the custom channel will be updated.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "adClientId" - ], - "request": { - "$ref": "CustomChannel" - }, - "response": { - "$ref": "CustomChannel" - }, - "scopes": [ - "https://www.googleapis.com/auth/adsensehost" - ] - } - } - }, - "reports": { - "methods": { - "generate": { - "id": "adsensehost.reports.generate", - "path": "reports", - "httpMethod": "GET", - "description": "Generate an AdSense report based on the report request sent in the query parameters. Returns the result as JSON; to retrieve output in CSV format specify \"alt=csv\" as a query parameter.", - "parameters": { - "dimension": { - "type": "string", - "description": "Dimensions to base the report on.", - "pattern": "[a-zA-Z_]+", - "repeated": true, - "location": "query" - }, - "endDate": { - "type": "string", - "description": "End of the date range to report on in \"YYYY-MM-DD\" format, inclusive.", - "required": true, - "pattern": "\\d{4}-\\d{2}-\\d{2}|(today|startOfMonth|startOfYear)(([\\-\\+]\\d+[dwmy]){0,3}?)", - "location": "query" - }, - "filter": { - "type": "string", - "description": "Filters to be run on the report.", - "pattern": "[a-zA-Z_]+(==|=@).+", - "repeated": true, - "location": "query" - }, - "locale": { - "type": "string", - "description": "Optional locale to use for translating report output to a local language. Defaults to \"en_US\" if not specified.", - "pattern": "[a-zA-Z_]+", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of rows of report data to return.", - "format": "uint32", - "minimum": "0", - "maximum": "50000", - "location": "query" - }, - "metric": { - "type": "string", - "description": "Numeric columns to include in the report.", - "pattern": "[a-zA-Z_]+", - "repeated": true, - "location": "query" - }, - "sort": { - "type": "string", - "description": "The name of a dimension or metric to sort the resulting report on, optionally prefixed with \"+\" to sort ascending or \"-\" to sort descending. If no prefix is specified, the column is sorted ascending.", - "pattern": "(\\+|-)?[a-zA-Z_]+", - "repeated": true, - "location": "query" - }, - "startDate": { - "type": "string", - "description": "Start of the date range to report on in \"YYYY-MM-DD\" format, inclusive.", - "required": true, - "pattern": "\\d{4}-\\d{2}-\\d{2}|(today|startOfMonth|startOfYear)(([\\-\\+]\\d+[dwmy]){0,3}?)", - "location": "query" - }, - "startIndex": { - "type": "integer", - "description": "Index of the first row of report data to return.", - "format": "uint32", - "minimum": "0", - "maximum": "5000", - "location": "query" - } - }, - "parameterOrder": [ - "startDate", - "endDate" - ], - "response": { - "$ref": "Report" - }, - "scopes": [ - "https://www.googleapis.com/auth/adsensehost" - ] - } - } - }, - "urlchannels": { - "methods": { - "delete": { - "id": "adsensehost.urlchannels.delete", - "path": "adclients/{adClientId}/urlchannels/{urlChannelId}", - "httpMethod": "DELETE", - "description": "Delete a URL channel from the host AdSense account.", - "parameters": { - "adClientId": { - "type": "string", - "description": "Ad client from which to delete the URL channel.", - "required": true, - "location": "path" - }, - "urlChannelId": { - "type": "string", - "description": "URL channel to delete.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "adClientId", - "urlChannelId" - ], - "response": { - "$ref": "UrlChannel" - }, - "scopes": [ - "https://www.googleapis.com/auth/adsensehost" - ] - }, - "insert": { - "id": "adsensehost.urlchannels.insert", - "path": "adclients/{adClientId}/urlchannels", - "httpMethod": "POST", - "description": "Add a new URL channel to the host AdSense account.", - "parameters": { - "adClientId": { - "type": "string", - "description": "Ad client to which the new URL channel will be added.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "adClientId" - ], - "request": { - "$ref": "UrlChannel" - }, - "response": { - "$ref": "UrlChannel" - }, - "scopes": [ - "https://www.googleapis.com/auth/adsensehost" - ] - }, - "list": { - "id": "adsensehost.urlchannels.list", - "path": "adclients/{adClientId}/urlchannels", - "httpMethod": "GET", - "description": "List all host URL channels in the host AdSense account.", - "parameters": { - "adClientId": { - "type": "string", - "description": "Ad client for which to list URL channels.", - "required": true, - "location": "path" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of URL channels to include in the response, used for paging.", - "format": "uint32", - "minimum": "0", - "maximum": "10000", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "A continuation token, used to page through URL channels. To retrieve the next page, set this parameter to the value of \"nextPageToken\" from the previous response.", - "location": "query" - } - }, - "parameterOrder": [ - "adClientId" - ], - "response": { - "$ref": "UrlChannels" - }, - "scopes": [ - "https://www.googleapis.com/auth/adsensehost" - ] - } - } - } - } -} + "servicePath": "adsensehost/v4.1/", + "title": "AdSense Host API", + "version": "v4.1" +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/analytics/v2.4/analytics-api.json b/vendor/google.golang.org/api/analytics/v2.4/analytics-api.json index 92506614d..8ec28ce55 100644 --- a/vendor/google.golang.org/api/analytics/v2.4/analytics-api.json +++ b/vendor/google.golang.org/api/analytics/v2.4/analytics-api.json @@ -1,366 +1,366 @@ { - "kind": "discovery#restDescription", - "etag": "\"YWOzh2SDasdU84ArJnpYek-OMdg/kYN47VW3boRYzE7pkj4HK3FyEC0\"", - "discoveryVersion": "v1", - "id": "analytics:v2.4", - "name": "analytics", - "version": "v2.4", - "revision": "20170807", - "title": "Google Analytics API", - "description": "Views and manages your Google Analytics data.", - "ownerDomain": "google.com", - "ownerName": "Google", - "icons": { - "x16": "https://www.google.com/images/icons/product/analytics-16.png", - "x32": "https://www.google.com/images/icons/product/analytics-32.png" - }, - "documentationLink": "https://developers.google.com/analytics/", - "protocol": "rest", - "baseUrl": "https://www.googleapis.com/analytics/v2.4/", - "basePath": "/analytics/v2.4/", - "rootUrl": "https://www.googleapis.com/", - "servicePath": "analytics/v2.4/", - "batchPath": "batch/analytics/v2.4", - "parameters": { - "alt": { - "type": "string", - "description": "Data format for the response.", - "default": "atom", - "enum": [ - "atom" - ], - "enumDescriptions": [ - "Responses with Content-Type of application/atom+xml" - ], - "location": "query" - }, - "fields": { - "type": "string", - "description": "Selector specifying which fields to include in a partial response.", - "location": "query" - }, - "key": { - "type": "string", - "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" - }, - "oauth_token": { - "type": "string", - "description": "OAuth 2.0 token for the current user.", - "location": "query" - }, - "prettyPrint": { - "type": "boolean", - "description": "Returns response with indentations and line breaks.", - "default": "false", - "location": "query" - }, - "quotaUser": { - "type": "string", - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", - "location": "query" - }, - "userIp": { - "type": "string", - "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", - "location": "query" - } - }, - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/analytics": { - "description": "View and manage your Google Analytics data" - }, - "https://www.googleapis.com/auth/analytics.readonly": { - "description": "View your Google Analytics data" + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/analytics": { + "description": "View and manage your Google Analytics data" + }, + "https://www.googleapis.com/auth/analytics.readonly": { + "description": "View your Google Analytics data" + } + } } - } - } - }, - "resources": { - "data": { - "methods": { - "get": { - "id": "analytics.data.get", - "path": "data", - "httpMethod": "GET", - "description": "Returns Analytics report data for a view (profile).", - "parameters": { - "dimensions": { - "type": "string", - "description": "A comma-separated list of Analytics dimensions. E.g., 'ga:browser,ga:city'.", - "pattern": "(ga:.+)?", - "location": "query" - }, - "end-date": { - "type": "string", - "description": "End date for fetching report data. All requests should specify an end date formatted as YYYY-MM-DD.", - "required": true, - "pattern": "[0-9]{4}-[0-9]{2}-[0-9]{2}", - "location": "query" - }, - "filters": { - "type": "string", - "description": "A comma-separated list of dimension or metric filters to be applied to the report data.", - "pattern": "ga:.+", - "location": "query" - }, - "ids": { - "type": "string", - "description": "Unique table ID for retrieving report data. Table ID is of the form ga:XXXX, where XXXX is the Analytics view (profile) ID.", - "required": true, - "pattern": "ga:[0-9]+", - "location": "query" - }, - "max-results": { - "type": "integer", - "description": "The maximum number of entries to include in this feed.", - "format": "int32", - "location": "query" - }, - "metrics": { - "type": "string", - "description": "A comma-separated list of Analytics metrics. E.g., 'ga:sessions,ga:pageviews'. At least one metric must be specified to retrieve a valid Analytics report.", - "required": true, - "pattern": "ga:.+", - "location": "query" - }, - "segment": { - "type": "string", - "description": "An Analytics advanced segment to be applied to the report data.", - "location": "query" - }, - "sort": { - "type": "string", - "description": "A comma-separated list of dimensions or metrics that determine the sort order for the report data.", - "pattern": "(-)?ga:.+", - "location": "query" - }, - "start-date": { - "type": "string", - "description": "Start date for fetching report data. All requests should specify a start date formatted as YYYY-MM-DD.", - "required": true, - "pattern": "[0-9]{4}-[0-9]{2}-[0-9]{2}", - "location": "query" - }, - "start-index": { - "type": "integer", - "description": "An index of the first entity to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter.", - "format": "int32", - "minimum": "1", - "location": "query" - } - }, - "parameterOrder": [ - "ids", - "start-date", - "end-date", - "metrics" - ], - "scopes": [ - "https://www.googleapis.com/auth/analytics", - "https://www.googleapis.com/auth/analytics.readonly" - ] - } - } }, - "management": { - "resources": { - "accounts": { - "methods": { - "list": { - "id": "analytics.management.accounts.list", - "path": "management/accounts", - "httpMethod": "GET", - "description": "Lists all accounts to which the user has access.", - "parameters": { - "max-results": { - "type": "integer", - "description": "The maximum number of accounts to include in this response.", - "format": "int32", - "location": "query" - }, - "start-index": { - "type": "integer", - "description": "An index of the first account to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter.", - "format": "int32", - "minimum": "1", - "location": "query" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics", - "https://www.googleapis.com/auth/analytics.readonly" - ] - } - } + "basePath": "/analytics/v2.4/", + "baseUrl": "https://www.googleapis.com/analytics/v2.4/", + "batchPath": "batch/analytics/v2.4", + "description": "Views and manages your Google Analytics data.", + "discoveryVersion": "v1", + "documentationLink": "https://developers.google.com/analytics/", + "etag": "\"-iA1DTNe4s-I6JZXPt1t1Ypy8IU/ulqmidM-fMam4LKTNGEvE0WurA4\"", + "icons": { + "x16": "https://www.google.com/images/icons/product/analytics-16.png", + "x32": "https://www.google.com/images/icons/product/analytics-32.png" + }, + "id": "analytics:v2.4", + "kind": "discovery#restDescription", + "name": "analytics", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "alt": { + "default": "atom", + "description": "Data format for the response.", + "enum": [ + "atom" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/atom+xml" + ], + "location": "query", + "type": "string" }, - "goals": { - "methods": { - "list": { - "id": "analytics.management.goals.list", - "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/goals", - "httpMethod": "GET", - "description": "Lists goals to which the user has access.", - "parameters": { - "accountId": { - "type": "string", - "description": "Account ID to retrieve goals for. Can either be a specific account ID or '~all', which refers to all the accounts that user has access to.", - "required": true, - "location": "path" - }, - "max-results": { - "type": "integer", - "description": "The maximum number of goals to include in this response.", - "format": "int32", - "location": "query" - }, - "profileId": { - "type": "string", - "description": "View (Profile) ID to retrieve goals for. Can either be a specific view (profile) ID or '~all', which refers to all the views (profiles) that user has access to.", - "required": true, - "location": "path" - }, - "start-index": { - "type": "integer", - "description": "An index of the first goal to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter.", - "format": "int32", - "minimum": "1", - "location": "query" - }, - "webPropertyId": { - "type": "string", - "description": "Web property ID to retrieve goals for. Can either be a specific web property ID or '~all', which refers to all the web properties that user has access to.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "accountId", - "webPropertyId", - "profileId" - ], - "scopes": [ - "https://www.googleapis.com/auth/analytics", - "https://www.googleapis.com/auth/analytics.readonly" - ] - } - } + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "location": "query", + "type": "string" }, - "profiles": { - "methods": { - "list": { - "id": "analytics.management.profiles.list", - "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/profiles", - "httpMethod": "GET", - "description": "Lists views (profiles) to which the user has access.", - "parameters": { - "accountId": { - "type": "string", - "description": "Account ID for the views (profiles) to retrieve. Can either be a specific account ID or '~all', which refers to all the accounts to which the user has access.", - "required": true, - "location": "path" - }, - "max-results": { - "type": "integer", - "description": "The maximum number of views (profiles) to include in this response.", - "format": "int32", - "location": "query" - }, - "start-index": { - "type": "integer", - "description": "An index of the first entity to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter.", - "format": "int32", - "minimum": "1", - "location": "query" - }, - "webPropertyId": { - "type": "string", - "description": "Web property ID for the views (profiles) to retrieve. Can either be a specific web property ID or '~all', which refers to all the web properties to which the user has access.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "accountId", - "webPropertyId" - ], - "scopes": [ - "https://www.googleapis.com/auth/analytics", - "https://www.googleapis.com/auth/analytics.readonly" - ] - } - } + "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" }, - "segments": { - "methods": { - "list": { - "id": "analytics.management.segments.list", - "path": "management/segments", - "httpMethod": "GET", - "description": "Lists advanced segments to which the user has access.", - "parameters": { - "max-results": { - "type": "integer", - "description": "The maximum number of advanced segments to include in this response.", - "format": "int32", - "location": "query" - }, - "start-index": { - "type": "integer", - "description": "An index of the first advanced segment to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter.", - "format": "int32", - "minimum": "1", - "location": "query" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics", - "https://www.googleapis.com/auth/analytics.readonly" - ] - } - } + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" }, - "webproperties": { - "methods": { - "list": { - "id": "analytics.management.webproperties.list", - "path": "management/accounts/{accountId}/webproperties", - "httpMethod": "GET", - "description": "Lists web properties to which the user has access.", - "parameters": { - "accountId": { - "type": "string", - "description": "Account ID to retrieve web properties for. Can either be a specific account ID or '~all', which refers to all the accounts that user has access to.", - "required": true, - "location": "path" - }, - "max-results": { - "type": "integer", - "description": "The maximum number of web properties to include in this response.", - "format": "int32", - "location": "query" - }, - "start-index": { - "type": "integer", - "description": "An index of the first entity to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter.", - "format": "int32", - "minimum": "1", - "location": "query" - } - }, - "parameterOrder": [ - "accountId" - ], - "scopes": [ - "https://www.googleapis.com/auth/analytics", - "https://www.googleapis.com/auth/analytics.readonly" - ] - } - } + "prettyPrint": { + "default": "false", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", + "location": "query", + "type": "string" + }, + "userIp": { + "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", + "location": "query", + "type": "string" } - } - } - } -} + }, + "protocol": "rest", + "resources": { + "data": { + "methods": { + "get": { + "description": "Returns Analytics report data for a view (profile).", + "httpMethod": "GET", + "id": "analytics.data.get", + "parameterOrder": [ + "ids", + "start-date", + "end-date", + "metrics" + ], + "parameters": { + "dimensions": { + "description": "A comma-separated list of Analytics dimensions. E.g., 'ga:browser,ga:city'.", + "location": "query", + "pattern": "(ga:.+)?", + "type": "string" + }, + "end-date": { + "description": "End date for fetching report data. All requests should specify an end date formatted as YYYY-MM-DD.", + "location": "query", + "pattern": "[0-9]{4}-[0-9]{2}-[0-9]{2}", + "required": true, + "type": "string" + }, + "filters": { + "description": "A comma-separated list of dimension or metric filters to be applied to the report data.", + "location": "query", + "pattern": "ga:.+", + "type": "string" + }, + "ids": { + "description": "Unique table ID for retrieving report data. Table ID is of the form ga:XXXX, where XXXX is the Analytics view (profile) ID.", + "location": "query", + "pattern": "ga:[0-9]+", + "required": true, + "type": "string" + }, + "max-results": { + "description": "The maximum number of entries to include in this feed.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "metrics": { + "description": "A comma-separated list of Analytics metrics. E.g., 'ga:sessions,ga:pageviews'. At least one metric must be specified to retrieve a valid Analytics report.", + "location": "query", + "pattern": "ga:.+", + "required": true, + "type": "string" + }, + "segment": { + "description": "An Analytics advanced segment to be applied to the report data.", + "location": "query", + "type": "string" + }, + "sort": { + "description": "A comma-separated list of dimensions or metrics that determine the sort order for the report data.", + "location": "query", + "pattern": "(-)?ga:.+", + "type": "string" + }, + "start-date": { + "description": "Start date for fetching report data. All requests should specify a start date formatted as YYYY-MM-DD.", + "location": "query", + "pattern": "[0-9]{4}-[0-9]{2}-[0-9]{2}", + "required": true, + "type": "string" + }, + "start-index": { + "description": "An index of the first entity to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter.", + "format": "int32", + "location": "query", + "minimum": "1", + "type": "integer" + } + }, + "path": "data", + "scopes": [ + "https://www.googleapis.com/auth/analytics", + "https://www.googleapis.com/auth/analytics.readonly" + ] + } + } + }, + "management": { + "resources": { + "accounts": { + "methods": { + "list": { + "description": "Lists all accounts to which the user has access.", + "httpMethod": "GET", + "id": "analytics.management.accounts.list", + "parameters": { + "max-results": { + "description": "The maximum number of accounts to include in this response.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "start-index": { + "description": "An index of the first account to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter.", + "format": "int32", + "location": "query", + "minimum": "1", + "type": "integer" + } + }, + "path": "management/accounts", + "scopes": [ + "https://www.googleapis.com/auth/analytics", + "https://www.googleapis.com/auth/analytics.readonly" + ] + } + } + }, + "goals": { + "methods": { + "list": { + "description": "Lists goals to which the user has access.", + "httpMethod": "GET", + "id": "analytics.management.goals.list", + "parameterOrder": [ + "accountId", + "webPropertyId", + "profileId" + ], + "parameters": { + "accountId": { + "description": "Account ID to retrieve goals for. Can either be a specific account ID or '~all', which refers to all the accounts that user has access to.", + "location": "path", + "required": true, + "type": "string" + }, + "max-results": { + "description": "The maximum number of goals to include in this response.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "profileId": { + "description": "View (Profile) ID to retrieve goals for. Can either be a specific view (profile) ID or '~all', which refers to all the views (profiles) that user has access to.", + "location": "path", + "required": true, + "type": "string" + }, + "start-index": { + "description": "An index of the first goal to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter.", + "format": "int32", + "location": "query", + "minimum": "1", + "type": "integer" + }, + "webPropertyId": { + "description": "Web property ID to retrieve goals for. Can either be a specific web property ID or '~all', which refers to all the web properties that user has access to.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/goals", + "scopes": [ + "https://www.googleapis.com/auth/analytics", + "https://www.googleapis.com/auth/analytics.readonly" + ] + } + } + }, + "profiles": { + "methods": { + "list": { + "description": "Lists views (profiles) to which the user has access.", + "httpMethod": "GET", + "id": "analytics.management.profiles.list", + "parameterOrder": [ + "accountId", + "webPropertyId" + ], + "parameters": { + "accountId": { + "description": "Account ID for the views (profiles) to retrieve. Can either be a specific account ID or '~all', which refers to all the accounts to which the user has access.", + "location": "path", + "required": true, + "type": "string" + }, + "max-results": { + "description": "The maximum number of views (profiles) to include in this response.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "start-index": { + "description": "An index of the first entity to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter.", + "format": "int32", + "location": "query", + "minimum": "1", + "type": "integer" + }, + "webPropertyId": { + "description": "Web property ID for the views (profiles) to retrieve. Can either be a specific web property ID or '~all', which refers to all the web properties to which the user has access.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/profiles", + "scopes": [ + "https://www.googleapis.com/auth/analytics", + "https://www.googleapis.com/auth/analytics.readonly" + ] + } + } + }, + "segments": { + "methods": { + "list": { + "description": "Lists advanced segments to which the user has access.", + "httpMethod": "GET", + "id": "analytics.management.segments.list", + "parameters": { + "max-results": { + "description": "The maximum number of advanced segments to include in this response.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "start-index": { + "description": "An index of the first advanced segment to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter.", + "format": "int32", + "location": "query", + "minimum": "1", + "type": "integer" + } + }, + "path": "management/segments", + "scopes": [ + "https://www.googleapis.com/auth/analytics", + "https://www.googleapis.com/auth/analytics.readonly" + ] + } + } + }, + "webproperties": { + "methods": { + "list": { + "description": "Lists web properties to which the user has access.", + "httpMethod": "GET", + "id": "analytics.management.webproperties.list", + "parameterOrder": [ + "accountId" + ], + "parameters": { + "accountId": { + "description": "Account ID to retrieve web properties for. Can either be a specific account ID or '~all', which refers to all the accounts that user has access to.", + "location": "path", + "required": true, + "type": "string" + }, + "max-results": { + "description": "The maximum number of web properties to include in this response.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "start-index": { + "description": "An index of the first entity to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter.", + "format": "int32", + "location": "query", + "minimum": "1", + "type": "integer" + } + }, + "path": "management/accounts/{accountId}/webproperties", + "scopes": [ + "https://www.googleapis.com/auth/analytics", + "https://www.googleapis.com/auth/analytics.readonly" + ] + } + } + } + } + } + }, + "revision": "20171211", + "rootUrl": "https://www.googleapis.com/", + "servicePath": "analytics/v2.4/", + "title": "Google Analytics API", + "version": "v2.4" +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/analytics/v3/analytics-api.json b/vendor/google.golang.org/api/analytics/v3/analytics-api.json index b6b69e000..03d575dac 100644 --- a/vendor/google.golang.org/api/analytics/v3/analytics-api.json +++ b/vendor/google.golang.org/api/analytics/v3/analytics-api.json @@ -1,7370 +1,7370 @@ { - "kind": "discovery#restDescription", - "etag": "\"-iA1DTNe4s-I6JZXPt1t1Ypy8IU/o3DGRejYlQONYxz9qTIt_cgX6AA\"", - "discoveryVersion": "v1", - "id": "analytics:v3", - "name": "analytics", - "version": "v3", - "revision": "20171211", - "title": "Google Analytics API", - "description": "Views and manages your Google Analytics data.", - "ownerDomain": "google.com", - "ownerName": "Google", - "icons": { - "x16": "https://www.google.com/images/icons/product/analytics-16.png", - "x32": "https://www.google.com/images/icons/product/analytics-32.png" - }, - "documentationLink": "https://developers.google.com/analytics/", - "protocol": "rest", - "baseUrl": "https://www.googleapis.com/analytics/v3/", - "basePath": "/analytics/v3/", - "rootUrl": "https://www.googleapis.com/", - "servicePath": "analytics/v3/", - "batchPath": "batch/analytics/v3", - "parameters": { - "alt": { - "type": "string", - "description": "Data format for the response.", - "default": "json", - "enum": [ - "json" - ], - "enumDescriptions": [ - "Responses with Content-Type of application/json" - ], - "location": "query" - }, - "fields": { - "type": "string", - "description": "Selector specifying which fields to include in a partial response.", - "location": "query" - }, - "key": { - "type": "string", - "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" - }, - "oauth_token": { - "type": "string", - "description": "OAuth 2.0 token for the current user.", - "location": "query" - }, - "prettyPrint": { - "type": "boolean", - "description": "Returns response with indentations and line breaks.", - "default": "false", - "location": "query" - }, - "quotaUser": { - "type": "string", - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", - "location": "query" - }, - "userIp": { - "type": "string", - "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", - "location": "query" - } - }, - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/analytics": { - "description": "View and manage your Google Analytics data" - }, - "https://www.googleapis.com/auth/analytics.edit": { - "description": "Edit Google Analytics management entities" - }, - "https://www.googleapis.com/auth/analytics.manage.users": { - "description": "Manage Google Analytics Account users by email address" - }, - "https://www.googleapis.com/auth/analytics.manage.users.readonly": { - "description": "View Google Analytics user permissions" - }, - "https://www.googleapis.com/auth/analytics.provision": { - "description": "Create a new Google Analytics account along with its default property and view" - }, - "https://www.googleapis.com/auth/analytics.readonly": { - "description": "View your Google Analytics data" - } - } - } - }, - "schemas": { - "Account": { - "id": "Account", - "type": "object", - "description": "JSON template for Analytics account entry.", - "properties": { - "childLink": { - "type": "object", - "description": "Child link for an account entry. Points to the list of web properties for this account.", - "properties": { - "href": { - "type": "string", - "description": "Link to the list of web properties for this account." - }, - "type": { - "type": "string", - "description": "Type of the child link. Its value is \"analytics#webproperties\".", - "default": "analytics#webproperties" - } - } - }, - "created": { - "type": "string", - "description": "Time the account was created.", - "format": "date-time" - }, - "id": { - "type": "string", - "description": "Account ID." - }, - "kind": { - "type": "string", - "description": "Resource type for Analytics account.", - "default": "analytics#account" - }, - "name": { - "type": "string", - "description": "Account name." - }, - "permissions": { - "type": "object", - "description": "Permissions the user has for this account.", - "properties": { - "effective": { - "type": "array", - "description": "All the permissions that the user has for this account. These include any implied permissions (e.g., EDIT implies VIEW).", - "readOnly": true, - "items": { - "type": "string" - } - } - } - }, - "selfLink": { - "type": "string", - "description": "Link for this account." - }, - "starred": { - "type": "boolean", - "description": "Indicates whether this account is starred or not." - }, - "updated": { - "type": "string", - "description": "Time the account was last modified.", - "format": "date-time" - } - } - }, - "AccountRef": { - "id": "AccountRef", - "type": "object", - "description": "JSON template for a linked account.", - "properties": { - "href": { - "type": "string", - "description": "Link for this account." - }, - "id": { - "type": "string", - "description": "Account ID." - }, - "kind": { - "type": "string", - "description": "Analytics account reference.", - "default": "analytics#accountRef" - }, - "name": { - "type": "string", - "description": "Account name." - } - } - }, - "AccountSummaries": { - "id": "AccountSummaries", - "type": "object", - "description": "An AccountSummary collection lists a summary of accounts, properties and views (profiles) to which the user has access. Each resource in the collection corresponds to a single AccountSummary.", - "properties": { - "items": { - "type": "array", - "description": "A list of AccountSummaries.", - "items": { - "$ref": "AccountSummary" - } - }, - "itemsPerPage": { - "type": "integer", - "description": "The maximum number of resources the response can contain, regardless of the actual number of resources returned. Its value ranges from 1 to 1000 with a value of 1000 by default, or otherwise specified by the max-results query parameter.", - "format": "int32" - }, - "kind": { - "type": "string", - "description": "Collection type.", - "default": "analytics#accountSummaries" - }, - "nextLink": { - "type": "string", - "description": "Link to next page for this AccountSummary collection." - }, - "previousLink": { - "type": "string", - "description": "Link to previous page for this AccountSummary collection." - }, - "startIndex": { - "type": "integer", - "description": "The starting index of the resources, which is 1 by default or otherwise specified by the start-index query parameter.", - "format": "int32" - }, - "totalResults": { - "type": "integer", - "description": "The total number of results for the query, regardless of the number of results in the response.", - "format": "int32" - }, - "username": { - "type": "string", - "description": "Email ID of the authenticated user" - } - } - }, - "AccountSummary": { - "id": "AccountSummary", - "type": "object", - "description": "JSON template for an Analytics AccountSummary. An AccountSummary is a lightweight tree comprised of properties/profiles.", - "properties": { - "id": { - "type": "string", - "description": "Account ID." - }, - "kind": { - "type": "string", - "description": "Resource type for Analytics AccountSummary.", - "default": "analytics#accountSummary" - }, - "name": { - "type": "string", - "description": "Account name." - }, - "starred": { - "type": "boolean", - "description": "Indicates whether this account is starred or not." - }, - "webProperties": { - "type": "array", - "description": "List of web properties under this account.", - "items": { - "$ref": "WebPropertySummary" - } - } - } - }, - "AccountTicket": { - "id": "AccountTicket", - "type": "object", - "description": "JSON template for an Analytics account ticket. The account ticket consists of the ticket ID and the basic information for the account, property and profile.", - "properties": { - "account": { - "$ref": "Account", - "description": "Account for this ticket." - }, - "id": { - "type": "string", - "description": "Account ticket ID used to access the account ticket." - }, - "kind": { - "type": "string", - "description": "Resource type for account ticket.", - "default": "analytics#accountTicket" - }, - "profile": { - "$ref": "Profile", - "description": "View (Profile) for the account." - }, - "redirectUri": { - "type": "string", - "description": "Redirect URI where the user will be sent after accepting Terms of Service. Must be configured in APIs console as a callback URL." - }, - "webproperty": { - "$ref": "Webproperty", - "description": "Web property for the account." - } - } - }, - "AccountTreeRequest": { - "id": "AccountTreeRequest", - "type": "object", - "description": "JSON template for an Analytics account tree requests. The account tree request is used in the provisioning api to create an account, property, and view (profile). It contains the basic information required to make these fields.", - "properties": { - "accountName": { - "type": "string", - "annotations": { - "required": [ - "analytics.provisioning.createAccountTree" - ] - } - }, - "accountSettings": { - "type": "object", - "properties": { - "admobReporting": { - "type": "boolean" - }, - "sharingWithGoogleAnySales": { - "type": "boolean" - }, - "sharingWithGoogleProducts": { - "type": "boolean" - }, - "sharingWithGoogleSales": { - "type": "boolean" - }, - "sharingWithGoogleSupport": { - "type": "boolean" - }, - "sharingWithOthers": { - "type": "boolean" - } - } - }, - "kind": { - "type": "string", - "description": "Resource type for account ticket.", - "default": "analytics#accountTreeRequest" - }, - "profileName": { - "type": "string", - "annotations": { - "required": [ - "analytics.provisioning.createAccountTree" - ] - } - }, - "timezone": { - "type": "string", - "annotations": { - "required": [ - "analytics.provisioning.createAccountTree" - ] - } - }, - "webpropertyName": { - "type": "string", - "annotations": { - "required": [ - "analytics.provisioning.createAccountTree" - ] - } - }, - "websiteUrl": { - "type": "string", - "annotations": { - "required": [ - "analytics.provisioning.createAccountTree" - ] - } - } - } - }, - "AccountTreeResponse": { - "id": "AccountTreeResponse", - "type": "object", - "description": "JSON template for an Analytics account tree response. The account tree response is used in the provisioning api to return the result of creating an account, property, and view (profile).", - "properties": { - "account": { - "$ref": "Account", - "description": "The account created." - }, - "accountSettings": { - "type": "object", - "properties": { - "admobReporting": { - "type": "boolean" - }, - "sharingWithGoogleAnySales": { - "type": "boolean" - }, - "sharingWithGoogleProducts": { - "type": "boolean" - }, - "sharingWithGoogleSales": { - "type": "boolean" - }, - "sharingWithGoogleSupport": { - "type": "boolean" - }, - "sharingWithOthers": { - "type": "boolean" - } - } - }, - "kind": { - "type": "string", - "description": "Resource type for account ticket.", - "default": "analytics#accountTreeResponse" - }, - "profile": { - "$ref": "Profile", - "description": "View (Profile) for the account." - }, - "webproperty": { - "$ref": "Webproperty", - "description": "Web property for the account." - } - } - }, - "Accounts": { - "id": "Accounts", - "type": "object", - "description": "An account collection provides a list of Analytics accounts to which a user has access. The account collection is the entry point to all management information. Each resource in the collection corresponds to a single Analytics account.", - "properties": { - "items": { - "type": "array", - "description": "A list of accounts.", - "items": { - "$ref": "Account" - } - }, - "itemsPerPage": { - "type": "integer", - "description": "The maximum number of entries the response can contain, regardless of the actual number of entries returned. Its value ranges from 1 to 1000 with a value of 1000 by default, or otherwise specified by the max-results query parameter.", - "format": "int32" - }, - "kind": { - "type": "string", - "description": "Collection type.", - "default": "analytics#accounts" - }, - "nextLink": { - "type": "string", - "description": "Next link for this account collection." - }, - "previousLink": { - "type": "string", - "description": "Previous link for this account collection." - }, - "startIndex": { - "type": "integer", - "description": "The starting index of the entries, which is 1 by default or otherwise specified by the start-index query parameter.", - "format": "int32" - }, - "totalResults": { - "type": "integer", - "description": "The total number of results for the query, regardless of the number of results in the response.", - "format": "int32" - }, - "username": { - "type": "string", - "description": "Email ID of the authenticated user" - } - } - }, - "AdWordsAccount": { - "id": "AdWordsAccount", - "type": "object", - "description": "JSON template for an AdWords account.", - "properties": { - "autoTaggingEnabled": { - "type": "boolean", - "description": "True if auto-tagging is enabled on the AdWords account. Read-only after the insert operation." - }, - "customerId": { - "type": "string", - "description": "Customer ID. This field is required when creating an AdWords link.", - "annotations": { - "required": [ - "analytics.management.webPropertyAdWordsLinks.insert", - "analytics.management.webPropertyAdWordsLinks.update" - ] - } - }, - "kind": { - "type": "string", - "description": "Resource type for AdWords account.", - "default": "analytics#adWordsAccount" - } - } - }, - "AnalyticsDataimportDeleteUploadDataRequest": { - "id": "AnalyticsDataimportDeleteUploadDataRequest", - "type": "object", - "description": "Request template for the delete upload data request.", - "properties": { - "customDataImportUids": { - "type": "array", - "description": "A list of upload UIDs.", - "items": { - "type": "string" - } - } - } - }, - "Column": { - "id": "Column", - "type": "object", - "description": "JSON template for a metadata column.", - "properties": { - "attributes": { - "type": "object", - "description": "Map of attribute name and value for this column.", - "additionalProperties": { - "type": "string", - "description": "The name of the attribute." - } - }, - "id": { - "type": "string", - "description": "Column id." - }, - "kind": { - "type": "string", - "description": "Resource type for Analytics column.", - "default": "analytics#column" - } - } - }, - "Columns": { - "id": "Columns", - "type": "object", - "description": "Lists columns (dimensions and metrics) for a particular report type.", - "properties": { - "attributeNames": { - "type": "array", - "description": "List of attributes names returned by columns.", - "items": { - "type": "string" - } - }, - "etag": { - "type": "string", - "description": "Etag of collection. This etag can be compared with the last response etag to check if response has changed." - }, - "items": { - "type": "array", - "description": "List of columns for a report type.", - "items": { - "$ref": "Column" - } - }, - "kind": { - "type": "string", - "description": "Collection type.", - "default": "analytics#columns" - }, - "totalResults": { - "type": "integer", - "description": "Total number of columns returned in the response.", - "format": "int32" - } - } - }, - "CustomDataSource": { - "id": "CustomDataSource", - "type": "object", - "description": "JSON template for an Analytics custom data source.", - "properties": { - "accountId": { - "type": "string", - "description": "Account ID to which this custom data source belongs." - }, - "childLink": { - "type": "object", - "properties": { - "href": { - "type": "string", - "description": "Link to the list of daily uploads for this custom data source. Link to the list of uploads for this custom data source." - }, - "type": { - "type": "string", - "description": "Value is \"analytics#dailyUploads\". Value is \"analytics#uploads\"." - } - } - }, - "created": { - "type": "string", - "description": "Time this custom data source was created.", - "format": "date-time" - }, - "description": { - "type": "string", - "description": "Description of custom data source." - }, - "id": { - "type": "string", - "description": "Custom data source ID." - }, - "importBehavior": { - "type": "string" - }, - "kind": { - "type": "string", - "description": "Resource type for Analytics custom data source.", - "default": "analytics#customDataSource" - }, - "name": { - "type": "string", - "description": "Name of this custom data source." - }, - "parentLink": { - "type": "object", - "description": "Parent link for this custom data source. Points to the web property to which this custom data source belongs.", - "properties": { - "href": { - "type": "string", - "description": "Link to the web property to which this custom data source belongs." - }, - "type": { - "type": "string", - "description": "Value is \"analytics#webproperty\".", - "default": "analytics#webproperty" - } - } - }, - "profilesLinked": { - "type": "array", - "description": "IDs of views (profiles) linked to the custom data source.", - "items": { - "type": "string" - } - }, - "schema": { - "type": "array", - "description": "Collection of schema headers of the custom data source.", - "items": { - "type": "string" - } - }, - "selfLink": { - "type": "string", - "description": "Link for this Analytics custom data source." - }, - "type": { - "type": "string", - "description": "Type of the custom data source." - }, - "updated": { - "type": "string", - "description": "Time this custom data source was last modified.", - "format": "date-time" - }, - "uploadType": { - "type": "string", - "description": "Upload type of the custom data source." - }, - "webPropertyId": { - "type": "string", - "description": "Web property ID of the form UA-XXXXX-YY to which this custom data source belongs." - } - } - }, - "CustomDataSources": { - "id": "CustomDataSources", - "type": "object", - "description": "Lists Analytics custom data sources to which the user has access. Each resource in the collection corresponds to a single Analytics custom data source.", - "properties": { - "items": { - "type": "array", - "description": "Collection of custom data sources.", - "items": { - "$ref": "CustomDataSource" - } - }, - "itemsPerPage": { - "type": "integer", - "description": "The maximum number of resources the response can contain, regardless of the actual number of resources returned. Its value ranges from 1 to 1000 with a value of 1000 by default, or otherwise specified by the max-results query parameter.", - "format": "int32" - }, - "kind": { - "type": "string", - "description": "Collection type.", - "default": "analytics#customDataSources" - }, - "nextLink": { - "type": "string", - "description": "Link to next page for this custom data source collection." - }, - "previousLink": { - "type": "string", - "description": "Link to previous page for this custom data source collection." - }, - "startIndex": { - "type": "integer", - "description": "The starting index of the resources, which is 1 by default or otherwise specified by the start-index query parameter.", - "format": "int32" - }, - "totalResults": { - "type": "integer", - "description": "The total number of results for the query, regardless of the number of results in the response.", - "format": "int32" - }, - "username": { - "type": "string", - "description": "Email ID of the authenticated user" - } - } - }, - "CustomDimension": { - "id": "CustomDimension", - "type": "object", - "description": "JSON template for Analytics Custom Dimension.", - "properties": { - "accountId": { - "type": "string", - "description": "Account ID." - }, - "active": { - "type": "boolean", - "description": "Boolean indicating whether the custom dimension is active." - }, - "created": { - "type": "string", - "description": "Time the custom dimension was created.", - "format": "date-time", - "readOnly": true - }, - "id": { - "type": "string", - "description": "Custom dimension ID." - }, - "index": { - "type": "integer", - "description": "Index of the custom dimension.", - "format": "int32", - "readOnly": true - }, - "kind": { - "type": "string", - "description": "Kind value for a custom dimension. Set to \"analytics#customDimension\". It is a read-only field.", - "default": "analytics#customDimension", - "readOnly": true - }, - "name": { - "type": "string", - "description": "Name of the custom dimension." - }, - "parentLink": { - "type": "object", - "description": "Parent link for the custom dimension. Points to the property to which the custom dimension belongs.", - "properties": { - "href": { - "type": "string", - "description": "Link to the property to which the custom dimension belongs." - }, - "type": { - "type": "string", - "description": "Type of the parent link. Set to \"analytics#webproperty\".", - "default": "analytics#webproperty" - } - } - }, - "scope": { - "type": "string", - "description": "Scope of the custom dimension: HIT, SESSION, USER or PRODUCT." - }, - "selfLink": { - "type": "string", - "description": "Link for the custom dimension", - "readOnly": true - }, - "updated": { - "type": "string", - "description": "Time the custom dimension was last modified.", - "format": "date-time", - "readOnly": true - }, - "webPropertyId": { - "type": "string", - "description": "Property ID." - } - } - }, - "CustomDimensions": { - "id": "CustomDimensions", - "type": "object", - "description": "A custom dimension collection lists Analytics custom dimensions to which the user has access. Each resource in the collection corresponds to a single Analytics custom dimension.", - "properties": { - "items": { - "type": "array", - "description": "Collection of custom dimensions.", - "items": { - "$ref": "CustomDimension" - } - }, - "itemsPerPage": { - "type": "integer", - "description": "The maximum number of resources the response can contain, regardless of the actual number of resources returned. Its value ranges from 1 to 1000 with a value of 1000 by default, or otherwise specified by the max-results query parameter.", - "format": "int32" - }, - "kind": { - "type": "string", - "description": "Collection type.", - "default": "analytics#customDimensions" - }, - "nextLink": { - "type": "string", - "description": "Link to next page for this custom dimension collection." - }, - "previousLink": { - "type": "string", - "description": "Link to previous page for this custom dimension collection." - }, - "startIndex": { - "type": "integer", - "description": "The starting index of the resources, which is 1 by default or otherwise specified by the start-index query parameter.", - "format": "int32" - }, - "totalResults": { - "type": "integer", - "description": "The total number of results for the query, regardless of the number of results in the response.", - "format": "int32" - }, - "username": { - "type": "string", - "description": "Email ID of the authenticated user" - } - } - }, - "CustomMetric": { - "id": "CustomMetric", - "type": "object", - "description": "JSON template for Analytics Custom Metric.", - "properties": { - "accountId": { - "type": "string", - "description": "Account ID." - }, - "active": { - "type": "boolean", - "description": "Boolean indicating whether the custom metric is active." - }, - "created": { - "type": "string", - "description": "Time the custom metric was created.", - "format": "date-time", - "readOnly": true - }, - "id": { - "type": "string", - "description": "Custom metric ID." - }, - "index": { - "type": "integer", - "description": "Index of the custom metric.", - "format": "int32", - "readOnly": true - }, - "kind": { - "type": "string", - "description": "Kind value for a custom metric. Set to \"analytics#customMetric\". It is a read-only field.", - "default": "analytics#customMetric", - "readOnly": true - }, - "max_value": { - "type": "string", - "description": "Max value of custom metric." - }, - "min_value": { - "type": "string", - "description": "Min value of custom metric." - }, - "name": { - "type": "string", - "description": "Name of the custom metric." - }, - "parentLink": { - "type": "object", - "description": "Parent link for the custom metric. Points to the property to which the custom metric belongs.", - "properties": { - "href": { - "type": "string", - "description": "Link to the property to which the custom metric belongs." - }, - "type": { - "type": "string", - "description": "Type of the parent link. Set to \"analytics#webproperty\".", - "default": "analytics#webproperty" - } - } - }, - "scope": { - "type": "string", - "description": "Scope of the custom metric: HIT or PRODUCT." - }, - "selfLink": { - "type": "string", - "description": "Link for the custom metric", - "readOnly": true - }, - "type": { - "type": "string", - "description": "Data type of custom metric." - }, - "updated": { - "type": "string", - "description": "Time the custom metric was last modified.", - "format": "date-time", - "readOnly": true - }, - "webPropertyId": { - "type": "string", - "description": "Property ID." - } - } - }, - "CustomMetrics": { - "id": "CustomMetrics", - "type": "object", - "description": "A custom metric collection lists Analytics custom metrics to which the user has access. Each resource in the collection corresponds to a single Analytics custom metric.", - "properties": { - "items": { - "type": "array", - "description": "Collection of custom metrics.", - "items": { - "$ref": "CustomMetric" - } - }, - "itemsPerPage": { - "type": "integer", - "description": "The maximum number of resources the response can contain, regardless of the actual number of resources returned. Its value ranges from 1 to 1000 with a value of 1000 by default, or otherwise specified by the max-results query parameter.", - "format": "int32" - }, - "kind": { - "type": "string", - "description": "Collection type.", - "default": "analytics#customMetrics" - }, - "nextLink": { - "type": "string", - "description": "Link to next page for this custom metric collection." - }, - "previousLink": { - "type": "string", - "description": "Link to previous page for this custom metric collection." - }, - "startIndex": { - "type": "integer", - "description": "The starting index of the resources, which is 1 by default or otherwise specified by the start-index query parameter.", - "format": "int32" - }, - "totalResults": { - "type": "integer", - "description": "The total number of results for the query, regardless of the number of results in the response.", - "format": "int32" - }, - "username": { - "type": "string", - "description": "Email ID of the authenticated user" - } - } - }, - "EntityAdWordsLink": { - "id": "EntityAdWordsLink", - "type": "object", - "description": "JSON template for Analytics Entity AdWords Link.", - "properties": { - "adWordsAccounts": { - "type": "array", - "description": "A list of AdWords client accounts. These cannot be MCC accounts. This field is required when creating an AdWords link. It cannot be empty.", - "items": { - "$ref": "AdWordsAccount" - }, - "annotations": { - "required": [ - "analytics.management.webPropertyAdWordsLinks.insert", - "analytics.management.webPropertyAdWordsLinks.update" - ] - } - }, - "entity": { - "type": "object", - "description": "Web property being linked.", - "properties": { - "webPropertyRef": { - "$ref": "WebPropertyRef" - } - } - }, - "id": { - "type": "string", - "description": "Entity AdWords link ID" - }, - "kind": { - "type": "string", - "description": "Resource type for entity AdWords link.", - "default": "analytics#entityAdWordsLink" - }, - "name": { - "type": "string", - "description": "Name of the link. This field is required when creating an AdWords link.", - "annotations": { - "required": [ - "analytics.management.webPropertyAdWordsLinks.insert", - "analytics.management.webPropertyAdWordsLinks.update" - ] - } - }, - "profileIds": { - "type": "array", - "description": "IDs of linked Views (Profiles) represented as strings.", - "items": { - "type": "string" - } - }, - "selfLink": { - "type": "string", - "description": "URL link for this Google Analytics - Google AdWords link." - } - } - }, - "EntityAdWordsLinks": { - "id": "EntityAdWordsLinks", - "type": "object", - "description": "An entity AdWords link collection provides a list of GA-AdWords links Each resource in this collection corresponds to a single link.", - "properties": { - "items": { - "type": "array", - "description": "A list of entity AdWords links.", - "items": { - "$ref": "EntityAdWordsLink" - } - }, - "itemsPerPage": { - "type": "integer", - "description": "The maximum number of entries the response can contain, regardless of the actual number of entries returned. Its value ranges from 1 to 1000 with a value of 1000 by default, or otherwise specified by the max-results query parameter.", - "format": "int32" - }, - "kind": { - "type": "string", - "description": "Collection type.", - "default": "analytics#entityAdWordsLinks" - }, - "nextLink": { - "type": "string", - "description": "Next link for this AdWords link collection." - }, - "previousLink": { - "type": "string", - "description": "Previous link for this AdWords link collection." - }, - "startIndex": { - "type": "integer", - "description": "The starting index of the entries, which is 1 by default or otherwise specified by the start-index query parameter.", - "format": "int32" - }, - "totalResults": { - "type": "integer", - "description": "The total number of results for the query, regardless of the number of results in the response.", - "format": "int32" - } - } - }, - "EntityUserLink": { - "id": "EntityUserLink", - "type": "object", - "description": "JSON template for an Analytics Entity-User Link. Returns permissions that a user has for an entity.", - "properties": { - "entity": { - "type": "object", - "description": "Entity for this link. It can be an account, a web property, or a view (profile).", - "properties": { - "accountRef": { - "$ref": "AccountRef", - "description": "Account for this link." - }, - "profileRef": { - "$ref": "ProfileRef", - "description": "View (Profile) for this link." - }, - "webPropertyRef": { - "$ref": "WebPropertyRef", - "description": "Web property for this link." - } - } - }, - "id": { - "type": "string", - "description": "Entity user link ID" - }, - "kind": { - "type": "string", - "description": "Resource type for entity user link.", - "default": "analytics#entityUserLink" - }, - "permissions": { - "type": "object", - "description": "Permissions the user has for this entity.", - "properties": { - "effective": { - "type": "array", - "description": "Effective permissions represent all the permissions that a user has for this entity. These include any implied permissions (e.g., EDIT implies VIEW) or inherited permissions from the parent entity. Effective permissions are read-only.", - "readOnly": true, - "items": { - "type": "string" - } - }, - "local": { - "type": "array", - "description": "Permissions that a user has been assigned at this very level. Does not include any implied or inherited permissions. Local permissions are modifiable.", - "items": { - "type": "string" - } - } - } - }, - "selfLink": { - "type": "string", - "description": "Self link for this resource." - }, - "userRef": { - "$ref": "UserRef", - "description": "User reference." - } - } - }, - "EntityUserLinks": { - "id": "EntityUserLinks", - "type": "object", - "description": "An entity user link collection provides a list of Analytics ACL links Each resource in this collection corresponds to a single link.", - "properties": { - "items": { - "type": "array", - "description": "A list of entity user links.", - "items": { - "$ref": "EntityUserLink" - } - }, - "itemsPerPage": { - "type": "integer", - "description": "The maximum number of entries the response can contain, regardless of the actual number of entries returned. Its value ranges from 1 to 1000 with a value of 1000 by default, or otherwise specified by the max-results query parameter.", - "format": "int32" - }, - "kind": { - "type": "string", - "description": "Collection type.", - "default": "analytics#entityUserLinks" - }, - "nextLink": { - "type": "string", - "description": "Next link for this account collection." - }, - "previousLink": { - "type": "string", - "description": "Previous link for this account collection." - }, - "startIndex": { - "type": "integer", - "description": "The starting index of the entries, which is 1 by default or otherwise specified by the start-index query parameter.", - "format": "int32" - }, - "totalResults": { - "type": "integer", - "description": "The total number of results for the query, regardless of the number of results in the response.", - "format": "int32" - } - } - }, - "Experiment": { - "id": "Experiment", - "type": "object", - "description": "JSON template for Analytics experiment resource.", - "properties": { - "accountId": { - "type": "string", - "description": "Account ID to which this experiment belongs. This field is read-only." - }, - "created": { - "type": "string", - "description": "Time the experiment was created. This field is read-only.", - "format": "date-time" - }, - "description": { - "type": "string", - "description": "Notes about this experiment." - }, - "editableInGaUi": { - "type": "boolean", - "description": "If true, the end user will be able to edit the experiment via the Google Analytics user interface." - }, - "endTime": { - "type": "string", - "description": "The ending time of the experiment (the time the status changed from RUNNING to ENDED). This field is present only if the experiment has ended. This field is read-only.", - "format": "date-time" - }, - "equalWeighting": { - "type": "boolean", - "description": "Boolean specifying whether to distribute traffic evenly across all variations. If the value is False, content experiments follows the default behavior of adjusting traffic dynamically based on variation performance. Optional -- defaults to False. This field may not be changed for an experiment whose status is ENDED." - }, - "id": { - "type": "string", - "description": "Experiment ID. Required for patch and update. Disallowed for create.", - "annotations": { - "required": [ - "analytics.management.experiments.patch", - "analytics.management.experiments.update" - ] - } - }, - "internalWebPropertyId": { - "type": "string", - "description": "Internal ID for the web property to which this experiment belongs. This field is read-only." - }, - "kind": { - "type": "string", - "description": "Resource type for an Analytics experiment. This field is read-only.", - "default": "analytics#experiment" - }, - "minimumExperimentLengthInDays": { - "type": "integer", - "description": "An integer number in [3, 90]. Specifies the minimum length of the experiment. Can be changed for a running experiment. This field may not be changed for an experiments whose status is ENDED.", - "format": "int32" - }, - "name": { - "type": "string", - "description": "Experiment name. This field may not be changed for an experiment whose status is ENDED. This field is required when creating an experiment.", - "annotations": { - "required": [ - "analytics.management.experiments.insert", - "analytics.management.experiments.update" - ] - } - }, - "objectiveMetric": { - "type": "string", - "description": "The metric that the experiment is optimizing. Valid values: \"ga:goal(n)Completions\", \"ga:adsenseAdsClicks\", \"ga:adsenseAdsViewed\", \"ga:adsenseRevenue\", \"ga:bounces\", \"ga:pageviews\", \"ga:sessionDuration\", \"ga:transactions\", \"ga:transactionRevenue\". This field is required if status is \"RUNNING\" and servingFramework is one of \"REDIRECT\" or \"API\"." - }, - "optimizationType": { - "type": "string", - "description": "Whether the objectiveMetric should be minimized or maximized. Possible values: \"MAXIMUM\", \"MINIMUM\". Optional--defaults to \"MAXIMUM\". Cannot be specified without objectiveMetric. Cannot be modified when status is \"RUNNING\" or \"ENDED\"." - }, - "parentLink": { - "type": "object", - "description": "Parent link for an experiment. Points to the view (profile) to which this experiment belongs.", - "properties": { - "href": { - "type": "string", - "description": "Link to the view (profile) to which this experiment belongs. This field is read-only." - }, - "type": { - "type": "string", - "description": "Value is \"analytics#profile\". This field is read-only.", - "default": "analytics#profile" - } - } - }, - "profileId": { - "type": "string", - "description": "View (Profile) ID to which this experiment belongs. This field is read-only." - }, - "reasonExperimentEnded": { - "type": "string", - "description": "Why the experiment ended. Possible values: \"STOPPED_BY_USER\", \"WINNER_FOUND\", \"EXPERIMENT_EXPIRED\", \"ENDED_WITH_NO_WINNER\", \"GOAL_OBJECTIVE_CHANGED\". \"ENDED_WITH_NO_WINNER\" means that the experiment didn't expire but no winner was projected to be found. If the experiment status is changed via the API to ENDED this field is set to STOPPED_BY_USER. This field is read-only." - }, - "rewriteVariationUrlsAsOriginal": { - "type": "boolean", - "description": "Boolean specifying whether variations URLS are rewritten to match those of the original. This field may not be changed for an experiments whose status is ENDED." - }, - "selfLink": { - "type": "string", - "description": "Link for this experiment. This field is read-only." - }, - "servingFramework": { - "type": "string", - "description": "The framework used to serve the experiment variations and evaluate the results. One of: \n- REDIRECT: Google Analytics redirects traffic to different variation pages, reports the chosen variation and evaluates the results.\n- API: Google Analytics chooses and reports the variation to serve and evaluates the results; the caller is responsible for serving the selected variation.\n- EXTERNAL: The variations will be served externally and the chosen variation reported to Google Analytics. The caller is responsible for serving the selected variation and evaluating the results." - }, - "snippet": { - "type": "string", - "description": "The snippet of code to include on the control page(s). This field is read-only." - }, - "startTime": { - "type": "string", - "description": "The starting time of the experiment (the time the status changed from READY_TO_RUN to RUNNING). This field is present only if the experiment has started. This field is read-only.", - "format": "date-time" - }, - "status": { - "type": "string", - "description": "Experiment status. Possible values: \"DRAFT\", \"READY_TO_RUN\", \"RUNNING\", \"ENDED\". Experiments can be created in the \"DRAFT\", \"READY_TO_RUN\" or \"RUNNING\" state. This field is required when creating an experiment.", - "annotations": { - "required": [ - "analytics.management.experiments.insert", - "analytics.management.experiments.update" - ] - } - }, - "trafficCoverage": { - "type": "number", - "description": "A floating-point number in (0, 1]. Specifies the fraction of the traffic that participates in the experiment. Can be changed for a running experiment. This field may not be changed for an experiments whose status is ENDED.", - "format": "double" - }, - "updated": { - "type": "string", - "description": "Time the experiment was last modified. This field is read-only.", - "format": "date-time" - }, - "variations": { - "type": "array", - "description": "Array of variations. The first variation in the array is the original. The number of variations may not change once an experiment is in the RUNNING state. At least two variations are required before status can be set to RUNNING.", - "items": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "The name of the variation. This field is required when creating an experiment. This field may not be changed for an experiment whose status is ENDED.", - "annotations": { - "required": [ - "analytics.management.experiments.insert", - "analytics.management.experiments.update" - ] + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/analytics": { + "description": "View and manage your Google Analytics data" + }, + "https://www.googleapis.com/auth/analytics.edit": { + "description": "Edit Google Analytics management entities" + }, + "https://www.googleapis.com/auth/analytics.manage.users": { + "description": "Manage Google Analytics Account users by email address" + }, + "https://www.googleapis.com/auth/analytics.manage.users.readonly": { + "description": "View Google Analytics user permissions" + }, + "https://www.googleapis.com/auth/analytics.provision": { + "description": "Create a new Google Analytics account along with its default property and view" + }, + "https://www.googleapis.com/auth/analytics.readonly": { + "description": "View your Google Analytics data" } - }, - "status": { - "type": "string", - "description": "Status of the variation. Possible values: \"ACTIVE\", \"INACTIVE\". INACTIVE variations are not served. This field may not be changed for an experiment whose status is ENDED." - }, - "url": { - "type": "string", - "description": "The URL of the variation. This field may not be changed for an experiment whose status is RUNNING or ENDED." - }, - "weight": { - "type": "number", - "description": "Weight that this variation should receive. Only present if the experiment is running. This field is read-only.", - "format": "double" - }, - "won": { - "type": "boolean", - "description": "True if the experiment has ended and this variation performed (statistically) significantly better than the original. This field is read-only." - } } - } - }, - "webPropertyId": { - "type": "string", - "description": "Web property ID to which this experiment belongs. The web property ID is of the form UA-XXXXX-YY. This field is read-only." - }, - "winnerConfidenceLevel": { - "type": "number", - "description": "A floating-point number in (0, 1). Specifies the necessary confidence level to choose a winner. This field may not be changed for an experiments whose status is ENDED.", - "format": "double" - }, - "winnerFound": { - "type": "boolean", - "description": "Boolean specifying whether a winner has been found for this experiment. This field is read-only." } - } }, - "Experiments": { - "id": "Experiments", - "type": "object", - "description": "An experiment collection lists Analytics experiments to which the user has access. Each view (profile) can have a set of experiments. Each resource in the Experiment collection corresponds to a single Analytics experiment.", - "properties": { - "items": { - "type": "array", - "description": "A list of experiments.", - "items": { - "$ref": "Experiment" - } + "basePath": "/analytics/v3/", + "baseUrl": "https://www.googleapis.com/analytics/v3/", + "batchPath": "batch/analytics/v3", + "description": "Views and manages your Google Analytics data.", + "discoveryVersion": "v1", + "documentationLink": "https://developers.google.com/analytics/", + "etag": "\"-iA1DTNe4s-I6JZXPt1t1Ypy8IU/pZyXISvfodVzorQpGHmIl5L61w8\"", + "icons": { + "x16": "https://www.google.com/images/icons/product/analytics-16.png", + "x32": "https://www.google.com/images/icons/product/analytics-32.png" + }, + "id": "analytics:v3", + "kind": "discovery#restDescription", + "name": "analytics", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "alt": { + "default": "json", + "description": "Data format for the response.", + "enum": [ + "json" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json" + ], + "location": "query", + "type": "string" }, - "itemsPerPage": { - "type": "integer", - "description": "The maximum number of resources the response can contain, regardless of the actual number of resources returned. Its value ranges from 1 to 1000 with a value of 1000 by default, or otherwise specified by the max-results query parameter.", - "format": "int32" + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "location": "query", + "type": "string" }, - "kind": { - "type": "string", - "description": "Collection type.", - "default": "analytics#experiments" + "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" }, - "nextLink": { - "type": "string", - "description": "Link to next page for this experiment collection." + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" }, - "previousLink": { - "type": "string", - "description": "Link to previous page for this experiment collection." + "prettyPrint": { + "default": "false", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" }, - "startIndex": { - "type": "integer", - "description": "The starting index of the resources, which is 1 by default or otherwise specified by the start-index query parameter.", - "format": "int32" + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", + "location": "query", + "type": "string" }, - "totalResults": { - "type": "integer", - "description": "The total number of results for the query, regardless of the number of resources in the result.", - "format": "int32" - }, - "username": { - "type": "string", - "description": "Email ID of the authenticated user" + "userIp": { + "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", + "location": "query", + "type": "string" } - } }, - "Filter": { - "id": "Filter", - "type": "object", - "description": "JSON template for an Analytics account filter.", - "properties": { - "accountId": { - "type": "string", - "description": "Account ID to which this filter belongs." - }, - "advancedDetails": { - "type": "object", - "description": "Details for the filter of the type ADVANCED.", - "properties": { - "caseSensitive": { - "type": "boolean", - "description": "Indicates if the filter expressions are case sensitive." - }, - "extractA": { - "type": "string", - "description": "Expression to extract from field A." - }, - "extractB": { - "type": "string", - "description": "Expression to extract from field B." - }, - "fieldA": { - "type": "string", - "description": "Field A." - }, - "fieldAIndex": { - "type": "integer", - "description": "The Index of the custom dimension. Required if field is a CUSTOM_DIMENSION.", - "format": "int32" - }, - "fieldARequired": { - "type": "boolean", - "description": "Indicates if field A is required to match." - }, - "fieldB": { - "type": "string", - "description": "Field B." - }, - "fieldBIndex": { - "type": "integer", - "description": "The Index of the custom dimension. Required if field is a CUSTOM_DIMENSION.", - "format": "int32" - }, - "fieldBRequired": { - "type": "boolean", - "description": "Indicates if field B is required to match." - }, - "outputConstructor": { - "type": "string", - "description": "Expression used to construct the output value." - }, - "outputToField": { - "type": "string", - "description": "Output field." - }, - "outputToFieldIndex": { - "type": "integer", - "description": "The Index of the custom dimension. Required if field is a CUSTOM_DIMENSION.", - "format": "int32" - }, - "overrideOutputField": { - "type": "boolean", - "description": "Indicates if the existing value of the output field, if any, should be overridden by the output expression." - } - } - }, - "created": { - "type": "string", - "description": "Time this filter was created.", - "format": "date-time", - "readOnly": true - }, - "excludeDetails": { - "$ref": "FilterExpression", - "description": "Details for the filter of the type EXCLUDE." - }, - "id": { - "type": "string", - "description": "Filter ID." - }, - "includeDetails": { - "$ref": "FilterExpression", - "description": "Details for the filter of the type INCLUDE." - }, - "kind": { - "type": "string", - "description": "Resource type for Analytics filter.", - "default": "analytics#filter", - "readOnly": true - }, - "lowercaseDetails": { - "type": "object", - "description": "Details for the filter of the type LOWER.", - "properties": { - "field": { - "type": "string", - "description": "Field to use in the filter." - }, - "fieldIndex": { - "type": "integer", - "description": "The Index of the custom dimension. Required if field is a CUSTOM_DIMENSION.", - "format": "int32" - } - } - }, - "name": { - "type": "string", - "description": "Name of this filter.", - "annotations": { - "required": [ - "analytics.management.filters.insert", - "analytics.management.filters.update" - ] - } - }, - "parentLink": { - "type": "object", - "description": "Parent link for this filter. Points to the account to which this filter belongs.", - "properties": { - "href": { - "type": "string", - "description": "Link to the account to which this filter belongs." - }, - "type": { - "type": "string", - "description": "Value is \"analytics#account\".", - "default": "analytics#account" - } - } - }, - "searchAndReplaceDetails": { - "type": "object", - "description": "Details for the filter of the type SEARCH_AND_REPLACE.", - "properties": { - "caseSensitive": { - "type": "boolean", - "description": "Determines if the filter is case sensitive." - }, - "field": { - "type": "string", - "description": "Field to use in the filter." - }, - "fieldIndex": { - "type": "integer", - "description": "The Index of the custom dimension. Required if field is a CUSTOM_DIMENSION.", - "format": "int32" - }, - "replaceString": { - "type": "string", - "description": "Term to replace the search term with." - }, - "searchString": { - "type": "string", - "description": "Term to search." - } - } - }, - "selfLink": { - "type": "string", - "description": "Link for this filter.", - "readOnly": true - }, - "type": { - "type": "string", - "description": "Type of this filter. Possible values are INCLUDE, EXCLUDE, LOWERCASE, UPPERCASE, SEARCH_AND_REPLACE and ADVANCED.", - "annotations": { - "required": [ - "analytics.management.filters.insert", - "analytics.management.filters.update" - ] - } - }, - "updated": { - "type": "string", - "description": "Time this filter was last modified.", - "format": "date-time", - "readOnly": true - }, - "uppercaseDetails": { - "type": "object", - "description": "Details for the filter of the type UPPER.", - "properties": { - "field": { - "type": "string", - "description": "Field to use in the filter." - }, - "fieldIndex": { - "type": "integer", - "description": "The Index of the custom dimension. Required if field is a CUSTOM_DIMENSION.", - "format": "int32" - } - } - } - } - }, - "FilterExpression": { - "id": "FilterExpression", - "type": "object", - "description": "JSON template for an Analytics filter expression.", - "properties": { - "caseSensitive": { - "type": "boolean", - "description": "Determines if the filter is case sensitive." - }, - "expressionValue": { - "type": "string", - "description": "Filter expression value" - }, - "field": { - "type": "string", - "description": "Field to filter. Possible values: \n- Content and Traffic \n- PAGE_REQUEST_URI, \n- PAGE_HOSTNAME, \n- PAGE_TITLE, \n- REFERRAL, \n- COST_DATA_URI (Campaign target URL), \n- HIT_TYPE, \n- INTERNAL_SEARCH_TERM, \n- INTERNAL_SEARCH_TYPE, \n- SOURCE_PROPERTY_TRACKING_ID, \n- Campaign or AdGroup \n- CAMPAIGN_SOURCE, \n- CAMPAIGN_MEDIUM, \n- CAMPAIGN_NAME, \n- CAMPAIGN_AD_GROUP, \n- CAMPAIGN_TERM, \n- CAMPAIGN_CONTENT, \n- CAMPAIGN_CODE, \n- CAMPAIGN_REFERRAL_PATH, \n- E-Commerce \n- TRANSACTION_COUNTRY, \n- TRANSACTION_REGION, \n- TRANSACTION_CITY, \n- TRANSACTION_AFFILIATION (Store or order location), \n- ITEM_NAME, \n- ITEM_CODE, \n- ITEM_VARIATION, \n- TRANSACTION_ID, \n- TRANSACTION_CURRENCY_CODE, \n- PRODUCT_ACTION_TYPE, \n- Audience/Users \n- BROWSER, \n- BROWSER_VERSION, \n- BROWSER_SIZE, \n- PLATFORM, \n- PLATFORM_VERSION, \n- LANGUAGE, \n- SCREEN_RESOLUTION, \n- SCREEN_COLORS, \n- JAVA_ENABLED (Boolean Field), \n- FLASH_VERSION, \n- GEO_SPEED (Connection speed), \n- VISITOR_TYPE, \n- GEO_ORGANIZATION (ISP organization), \n- GEO_DOMAIN, \n- GEO_IP_ADDRESS, \n- GEO_IP_VERSION, \n- Location \n- GEO_COUNTRY, \n- GEO_REGION, \n- GEO_CITY, \n- Event \n- EVENT_CATEGORY, \n- EVENT_ACTION, \n- EVENT_LABEL, \n- Other \n- CUSTOM_FIELD_1, \n- CUSTOM_FIELD_2, \n- USER_DEFINED_VALUE, \n- Application \n- APP_ID, \n- APP_INSTALLER_ID, \n- APP_NAME, \n- APP_VERSION, \n- SCREEN, \n- IS_APP (Boolean Field), \n- IS_FATAL_EXCEPTION (Boolean Field), \n- EXCEPTION_DESCRIPTION, \n- Mobile device \n- IS_MOBILE (Boolean Field, Deprecated. Use DEVICE_CATEGORY=mobile), \n- IS_TABLET (Boolean Field, Deprecated. Use DEVICE_CATEGORY=tablet), \n- DEVICE_CATEGORY, \n- MOBILE_HAS_QWERTY_KEYBOARD (Boolean Field), \n- MOBILE_HAS_NFC_SUPPORT (Boolean Field), \n- MOBILE_HAS_CELLULAR_RADIO (Boolean Field), \n- MOBILE_HAS_WIFI_SUPPORT (Boolean Field), \n- MOBILE_BRAND_NAME, \n- MOBILE_MODEL_NAME, \n- MOBILE_MARKETING_NAME, \n- MOBILE_POINTING_METHOD, \n- Social \n- SOCIAL_NETWORK, \n- SOCIAL_ACTION, \n- SOCIAL_ACTION_TARGET, \n- Custom dimension \n- CUSTOM_DIMENSION (See accompanying field index)," - }, - "fieldIndex": { - "type": "integer", - "description": "The Index of the custom dimension. Set only if the field is a is CUSTOM_DIMENSION.", - "format": "int32" - }, - "kind": { - "type": "string", - "description": "Kind value for filter expression", - "default": "analytics#filterExpression" - }, - "matchType": { - "type": "string", - "description": "Match type for this filter. Possible values are BEGINS_WITH, EQUAL, ENDS_WITH, CONTAINS, or MATCHES. GEO_DOMAIN, GEO_IP_ADDRESS, PAGE_REQUEST_URI, or PAGE_HOSTNAME filters can use any match type; all other filters must use MATCHES." - } - } - }, - "FilterRef": { - "id": "FilterRef", - "type": "object", - "description": "JSON template for a profile filter link.", - "properties": { - "accountId": { - "type": "string", - "description": "Account ID to which this filter belongs.", - "readOnly": true - }, - "href": { - "type": "string", - "description": "Link for this filter." - }, - "id": { - "type": "string", - "description": "Filter ID.", - "annotations": { - "required": [ - "analytics.management.profileFilterLinks.insert" - ] - } - }, - "kind": { - "type": "string", - "description": "Kind value for filter reference.", - "default": "analytics#filterRef" - }, - "name": { - "type": "string", - "description": "Name of this filter.", - "readOnly": true - } - } - }, - "Filters": { - "id": "Filters", - "type": "object", - "description": "A filter collection lists filters created by users in an Analytics account. Each resource in the collection corresponds to a filter.", - "properties": { - "items": { - "type": "array", - "description": "A list of filters.", - "items": { - "$ref": "Filter" - } - }, - "itemsPerPage": { - "type": "integer", - "description": "The maximum number of resources the response can contain, regardless of the actual number of resources returned. Its value ranges from 1 to 1,000 with a value of 1000 by default, or otherwise specified by the max-results query parameter.", - "format": "int32" - }, - "kind": { - "type": "string", - "description": "Collection type.", - "default": "analytics#filters" - }, - "nextLink": { - "type": "string", - "description": "Link to next page for this filter collection." - }, - "previousLink": { - "type": "string", - "description": "Link to previous page for this filter collection." - }, - "startIndex": { - "type": "integer", - "description": "The starting index of the resources, which is 1 by default or otherwise specified by the start-index query parameter.", - "format": "int32" - }, - "totalResults": { - "type": "integer", - "description": "The total number of results for the query, regardless of the number of results in the response.", - "format": "int32" - }, - "username": { - "type": "string", - "description": "Email ID of the authenticated user" - } - } - }, - "GaData": { - "id": "GaData", - "type": "object", - "description": "Analytics data for a given view (profile).", - "properties": { - "columnHeaders": { - "type": "array", - "description": "Column headers that list dimension names followed by the metric names. The order of dimensions and metrics is same as specified in the request.", - "items": { - "type": "object", - "properties": { - "columnType": { - "type": "string", - "description": "Column Type. Either DIMENSION or METRIC." - }, - "dataType": { - "type": "string", - "description": "Data type. Dimension column headers have only STRING as the data type. Metric column headers have data types for metric values such as INTEGER, DOUBLE, CURRENCY etc." - }, - "name": { - "type": "string", - "description": "Column name." - } - } - } - }, - "containsSampledData": { - "type": "boolean", - "description": "Determines if Analytics data contains samples." - }, - "dataLastRefreshed": { - "type": "string", - "description": "The last refreshed time in seconds for Analytics data.", - "format": "int64" - }, - "dataTable": { - "type": "object", - "properties": { - "cols": { - "type": "array", - "items": { - "type": "object", - "properties": { - "id": { - "type": "string" - }, - "label": { - "type": "string" - }, - "type": { - "type": "string" - } - } - } - }, - "rows": { - "type": "array", - "items": { - "type": "object", - "properties": { - "c": { - "type": "array", - "items": { - "type": "object", - "properties": { - "v": { - "type": "string" + "protocol": "rest", + "resources": { + "data": { + "resources": { + "ga": { + "methods": { + "get": { + "description": "Returns Analytics data for a view (profile).", + "httpMethod": "GET", + "id": "analytics.data.ga.get", + "parameterOrder": [ + "ids", + "start-date", + "end-date", + "metrics" + ], + "parameters": { + "dimensions": { + "description": "A comma-separated list of Analytics dimensions. E.g., 'ga:browser,ga:city'.", + "location": "query", + "pattern": "(ga:.+)?", + "type": "string" + }, + "end-date": { + "description": "End date for fetching Analytics data. Request can should specify an end date formatted as YYYY-MM-DD, or as a relative date (e.g., today, yesterday, or 7daysAgo). The default value is yesterday.", + "location": "query", + "pattern": "[0-9]{4}-[0-9]{2}-[0-9]{2}|today|yesterday|[0-9]+(daysAgo)", + "required": true, + "type": "string" + }, + "filters": { + "description": "A comma-separated list of dimension or metric filters to be applied to Analytics data.", + "location": "query", + "pattern": "ga:.+", + "type": "string" + }, + "ids": { + "description": "Unique table ID for retrieving Analytics data. Table ID is of the form ga:XXXX, where XXXX is the Analytics view (profile) ID.", + "location": "query", + "pattern": "ga:[0-9]+", + "required": true, + "type": "string" + }, + "include-empty-rows": { + "description": "The response will include empty rows if this parameter is set to true, the default is true", + "location": "query", + "type": "boolean" + }, + "max-results": { + "description": "The maximum number of entries to include in this feed.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "metrics": { + "description": "A comma-separated list of Analytics metrics. E.g., 'ga:sessions,ga:pageviews'. At least one metric must be specified.", + "location": "query", + "pattern": "ga:.+", + "required": true, + "type": "string" + }, + "output": { + "description": "The selected format for the response. Default format is JSON.", + "enum": [ + "dataTable", + "json" + ], + "enumDescriptions": [ + "Returns the response in Google Charts Data Table format. This is useful in creating visualization using Google Charts.", + "Returns the response in standard JSON format." + ], + "location": "query", + "type": "string" + }, + "samplingLevel": { + "description": "The desired sampling level.", + "enum": [ + "DEFAULT", + "FASTER", + "HIGHER_PRECISION" + ], + "enumDescriptions": [ + "Returns response with a sample size that balances speed and accuracy.", + "Returns a fast response with a smaller sample size.", + "Returns a more accurate response using a large sample size, but this may result in the response being slower." + ], + "location": "query", + "type": "string" + }, + "segment": { + "description": "An Analytics segment to be applied to data.", + "location": "query", + "type": "string" + }, + "sort": { + "description": "A comma-separated list of dimensions or metrics that determine the sort order for Analytics data.", + "location": "query", + "pattern": "(-)?ga:.+", + "type": "string" + }, + "start-date": { + "description": "Start date for fetching Analytics data. Requests can specify a start date formatted as YYYY-MM-DD, or as a relative date (e.g., today, yesterday, or 7daysAgo). The default value is 7daysAgo.", + "location": "query", + "pattern": "[0-9]{4}-[0-9]{2}-[0-9]{2}|today|yesterday|[0-9]+(daysAgo)", + "required": true, + "type": "string" + }, + "start-index": { + "description": "An index of the first entity to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter.", + "format": "int32", + "location": "query", + "minimum": "1", + "type": "integer" + } + }, + "path": "data/ga", + "response": { + "$ref": "GaData" + }, + "scopes": [ + "https://www.googleapis.com/auth/analytics", + "https://www.googleapis.com/auth/analytics.readonly" + ] + } + } + }, + "mcf": { + "methods": { + "get": { + "description": "Returns Analytics Multi-Channel Funnels data for a view (profile).", + "httpMethod": "GET", + "id": "analytics.data.mcf.get", + "parameterOrder": [ + "ids", + "start-date", + "end-date", + "metrics" + ], + "parameters": { + "dimensions": { + "description": "A comma-separated list of Multi-Channel Funnels dimensions. E.g., 'mcf:source,mcf:medium'.", + "location": "query", + "pattern": "(mcf:.+)?", + "type": "string" + }, + "end-date": { + "description": "End date for fetching Analytics data. Requests can specify a start date formatted as YYYY-MM-DD, or as a relative date (e.g., today, yesterday, or 7daysAgo). The default value is 7daysAgo.", + "location": "query", + "pattern": "[0-9]{4}-[0-9]{2}-[0-9]{2}|today|yesterday|[0-9]+(daysAgo)", + "required": true, + "type": "string" + }, + "filters": { + "description": "A comma-separated list of dimension or metric filters to be applied to the Analytics data.", + "location": "query", + "pattern": "mcf:.+", + "type": "string" + }, + "ids": { + "description": "Unique table ID for retrieving Analytics data. Table ID is of the form ga:XXXX, where XXXX is the Analytics view (profile) ID.", + "location": "query", + "pattern": "ga:[0-9]+", + "required": true, + "type": "string" + }, + "max-results": { + "description": "The maximum number of entries to include in this feed.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "metrics": { + "description": "A comma-separated list of Multi-Channel Funnels metrics. E.g., 'mcf:totalConversions,mcf:totalConversionValue'. At least one metric must be specified.", + "location": "query", + "pattern": "mcf:.+", + "required": true, + "type": "string" + }, + "samplingLevel": { + "description": "The desired sampling level.", + "enum": [ + "DEFAULT", + "FASTER", + "HIGHER_PRECISION" + ], + "enumDescriptions": [ + "Returns response with a sample size that balances speed and accuracy.", + "Returns a fast response with a smaller sample size.", + "Returns a more accurate response using a large sample size, but this may result in the response being slower." + ], + "location": "query", + "type": "string" + }, + "sort": { + "description": "A comma-separated list of dimensions or metrics that determine the sort order for the Analytics data.", + "location": "query", + "pattern": "(-)?mcf:.+", + "type": "string" + }, + "start-date": { + "description": "Start date for fetching Analytics data. Requests can specify a start date formatted as YYYY-MM-DD, or as a relative date (e.g., today, yesterday, or 7daysAgo). The default value is 7daysAgo.", + "location": "query", + "pattern": "[0-9]{4}-[0-9]{2}-[0-9]{2}|today|yesterday|[0-9]+(daysAgo)", + "required": true, + "type": "string" + }, + "start-index": { + "description": "An index of the first entity to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter.", + "format": "int32", + "location": "query", + "minimum": "1", + "type": "integer" + } + }, + "path": "data/mcf", + "response": { + "$ref": "McfData" + }, + "scopes": [ + "https://www.googleapis.com/auth/analytics", + "https://www.googleapis.com/auth/analytics.readonly" + ] + } + } + }, + "realtime": { + "methods": { + "get": { + "description": "Returns real time data for a view (profile).", + "httpMethod": "GET", + "id": "analytics.data.realtime.get", + "parameterOrder": [ + "ids", + "metrics" + ], + "parameters": { + "dimensions": { + "description": "A comma-separated list of real time dimensions. E.g., 'rt:medium,rt:city'.", + "location": "query", + "pattern": "(ga:.+)|(rt:.+)", + "type": "string" + }, + "filters": { + "description": "A comma-separated list of dimension or metric filters to be applied to real time data.", + "location": "query", + "pattern": "(ga:.+)|(rt:.+)", + "type": "string" + }, + "ids": { + "description": "Unique table ID for retrieving real time data. Table ID is of the form ga:XXXX, where XXXX is the Analytics view (profile) ID.", + "location": "query", + "pattern": "ga:[0-9]+", + "required": true, + "type": "string" + }, + "max-results": { + "description": "The maximum number of entries to include in this feed.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "metrics": { + "description": "A comma-separated list of real time metrics. E.g., 'rt:activeUsers'. At least one metric must be specified.", + "location": "query", + "pattern": "(ga:.+)|(rt:.+)", + "required": true, + "type": "string" + }, + "sort": { + "description": "A comma-separated list of dimensions or metrics that determine the sort order for real time data.", + "location": "query", + "pattern": "(-)?((ga:.+)|(rt:.+))", + "type": "string" + } + }, + "path": "data/realtime", + "response": { + "$ref": "RealtimeData" + }, + "scopes": [ + "https://www.googleapis.com/auth/analytics", + "https://www.googleapis.com/auth/analytics.readonly" + ] } - } } - } } - } } - } }, - "id": { - "type": "string", - "description": "Unique ID for this data response." - }, - "itemsPerPage": { - "type": "integer", - "description": "The maximum number of rows the response can contain, regardless of the actual number of rows returned. Its value ranges from 1 to 10,000 with a value of 1000 by default, or otherwise specified by the max-results query parameter.", - "format": "int32" - }, - "kind": { - "type": "string", - "description": "Resource type.", - "default": "analytics#gaData" - }, - "nextLink": { - "type": "string", - "description": "Link to next page for this Analytics data query." - }, - "previousLink": { - "type": "string", - "description": "Link to previous page for this Analytics data query." - }, - "profileInfo": { - "type": "object", - "description": "Information for the view (profile), for which the Analytics data was requested.", - "properties": { - "accountId": { - "type": "string", - "description": "Account ID to which this view (profile) belongs." - }, - "internalWebPropertyId": { - "type": "string", - "description": "Internal ID for the web property to which this view (profile) belongs." - }, - "profileId": { - "type": "string", - "description": "View (Profile) ID." - }, - "profileName": { - "type": "string", - "description": "View (Profile) name." - }, - "tableId": { - "type": "string", - "description": "Table ID for view (profile)." - }, - "webPropertyId": { - "type": "string", - "description": "Web Property ID to which this view (profile) belongs." - } - } - }, - "query": { - "type": "object", - "description": "Analytics data request query parameters.", - "properties": { - "dimensions": { - "type": "string", - "description": "List of analytics dimensions." - }, - "end-date": { - "type": "string", - "description": "End date." - }, - "filters": { - "type": "string", - "description": "Comma-separated list of dimension or metric filters." - }, - "ids": { - "type": "string", - "description": "Unique table ID." - }, - "max-results": { - "type": "integer", - "description": "Maximum results per page.", - "format": "int32" - }, - "metrics": { - "type": "array", - "description": "List of analytics metrics.", - "items": { - "type": "string" - } - }, - "samplingLevel": { - "type": "string", - "description": "Desired sampling level" - }, - "segment": { - "type": "string", - "description": "Analytics advanced segment." - }, - "sort": { - "type": "array", - "description": "List of dimensions or metrics based on which Analytics data is sorted.", - "items": { - "type": "string" - } - }, - "start-date": { - "type": "string", - "description": "Start date." - }, - "start-index": { - "type": "integer", - "description": "Start index.", - "format": "int32" - } - } - }, - "rows": { - "type": "array", - "description": "Analytics data rows, where each row contains a list of dimension values followed by the metric values. The order of dimensions and metrics is same as specified in the request.", - "items": { - "type": "array", - "items": { - "type": "string" - } - } - }, - "sampleSize": { - "type": "string", - "description": "The number of samples used to calculate the result.", - "format": "int64" - }, - "sampleSpace": { - "type": "string", - "description": "Total size of the sample space from which the samples were selected.", - "format": "int64" - }, - "selfLink": { - "type": "string", - "description": "Link to this page." - }, - "totalResults": { - "type": "integer", - "description": "The total number of rows for the query, regardless of the number of rows in the response.", - "format": "int32" - }, - "totalsForAllResults": { - "type": "object", - "description": "Total values for the requested metrics over all the results, not just the results returned in this response. The order of the metric totals is same as the metric order specified in the request.", - "additionalProperties": { - "type": "string", - "description": "Key-value pair for the total value of a metric. Key is the metric name and the value is the total value for that metric." - } - } - } - }, - "Goal": { - "id": "Goal", - "type": "object", - "description": "JSON template for Analytics goal resource.", - "properties": { - "accountId": { - "type": "string", - "description": "Account ID to which this goal belongs." - }, - "active": { - "type": "boolean", - "description": "Determines whether this goal is active." - }, - "created": { - "type": "string", - "description": "Time this goal was created.", - "format": "date-time" - }, - "eventDetails": { - "type": "object", - "description": "Details for the goal of the type EVENT.", - "properties": { - "eventConditions": { - "type": "array", - "description": "List of event conditions.", - "items": { - "type": "object", - "properties": { - "comparisonType": { - "type": "string", - "description": "Type of comparison. Possible values are LESS_THAN, GREATER_THAN or EQUAL." - }, - "comparisonValue": { - "type": "string", - "description": "Value used for this comparison.", - "format": "int64" - }, - "expression": { - "type": "string", - "description": "Expression used for this match." - }, - "matchType": { - "type": "string", - "description": "Type of the match to be performed. Possible values are REGEXP, BEGINS_WITH, or EXACT." - }, - "type": { - "type": "string", - "description": "Type of this event condition. Possible values are CATEGORY, ACTION, LABEL, or VALUE." - } + "management": { + "resources": { + "accountSummaries": { + "methods": { + "list": { + "description": "Lists account summaries (lightweight tree comprised of accounts/properties/profiles) to which the user has access.", + "httpMethod": "GET", + "id": "analytics.management.accountSummaries.list", + "parameters": { + "max-results": { + "description": "The maximum number of account summaries to include in this response, where the largest acceptable value is 1000.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "start-index": { + "description": "An index of the first entity to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter.", + "format": "int32", + "location": "query", + "minimum": "1", + "type": "integer" + } + }, + "path": "management/accountSummaries", + "response": { + "$ref": "AccountSummaries" + }, + "scopes": [ + "https://www.googleapis.com/auth/analytics.edit", + "https://www.googleapis.com/auth/analytics.readonly" + ] + } + } + }, + "accountUserLinks": { + "methods": { + "delete": { + "description": "Removes a user from the given account.", + "httpMethod": "DELETE", + "id": "analytics.management.accountUserLinks.delete", + "parameterOrder": [ + "accountId", + "linkId" + ], + "parameters": { + "accountId": { + "description": "Account ID to delete the user link for.", + "location": "path", + "required": true, + "type": "string" + }, + "linkId": { + "description": "Link ID to delete the user link for.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "management/accounts/{accountId}/entityUserLinks/{linkId}", + "scopes": [ + "https://www.googleapis.com/auth/analytics.manage.users" + ] + }, + "insert": { + "description": "Adds a new user to the given account.", + "httpMethod": "POST", + "id": "analytics.management.accountUserLinks.insert", + "parameterOrder": [ + "accountId" + ], + "parameters": { + "accountId": { + "description": "Account ID to create the user link for.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "management/accounts/{accountId}/entityUserLinks", + "request": { + "$ref": "EntityUserLink" + }, + "response": { + "$ref": "EntityUserLink" + }, + "scopes": [ + "https://www.googleapis.com/auth/analytics.manage.users" + ] + }, + "list": { + "description": "Lists account-user links for a given account.", + "httpMethod": "GET", + "id": "analytics.management.accountUserLinks.list", + "parameterOrder": [ + "accountId" + ], + "parameters": { + "accountId": { + "description": "Account ID to retrieve the user links for.", + "location": "path", + "required": true, + "type": "string" + }, + "max-results": { + "description": "The maximum number of account-user links to include in this response.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "start-index": { + "description": "An index of the first account-user link to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter.", + "format": "int32", + "location": "query", + "minimum": "1", + "type": "integer" + } + }, + "path": "management/accounts/{accountId}/entityUserLinks", + "response": { + "$ref": "EntityUserLinks" + }, + "scopes": [ + "https://www.googleapis.com/auth/analytics.manage.users", + "https://www.googleapis.com/auth/analytics.manage.users.readonly" + ] + }, + "update": { + "description": "Updates permissions for an existing user on the given account.", + "httpMethod": "PUT", + "id": "analytics.management.accountUserLinks.update", + "parameterOrder": [ + "accountId", + "linkId" + ], + "parameters": { + "accountId": { + "description": "Account ID to update the account-user link for.", + "location": "path", + "required": true, + "type": "string" + }, + "linkId": { + "description": "Link ID to update the account-user link for.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "management/accounts/{accountId}/entityUserLinks/{linkId}", + "request": { + "$ref": "EntityUserLink" + }, + "response": { + "$ref": "EntityUserLink" + }, + "scopes": [ + "https://www.googleapis.com/auth/analytics.manage.users" + ] + } + } + }, + "accounts": { + "methods": { + "list": { + "description": "Lists all accounts to which the user has access.", + "httpMethod": "GET", + "id": "analytics.management.accounts.list", + "parameters": { + "max-results": { + "description": "The maximum number of accounts to include in this response.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "start-index": { + "description": "An index of the first account to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter.", + "format": "int32", + "location": "query", + "minimum": "1", + "type": "integer" + } + }, + "path": "management/accounts", + "response": { + "$ref": "Accounts" + }, + "scopes": [ + "https://www.googleapis.com/auth/analytics", + "https://www.googleapis.com/auth/analytics.edit", + "https://www.googleapis.com/auth/analytics.readonly" + ] + } + } + }, + "customDataSources": { + "methods": { + "list": { + "description": "List custom data sources to which the user has access.", + "httpMethod": "GET", + "id": "analytics.management.customDataSources.list", + "parameterOrder": [ + "accountId", + "webPropertyId" + ], + "parameters": { + "accountId": { + "description": "Account Id for the custom data sources to retrieve.", + "location": "path", + "pattern": "\\d+", + "required": true, + "type": "string" + }, + "max-results": { + "description": "The maximum number of custom data sources to include in this response.", + "format": "int32", + "location": "query", + "minimum": "1", + "type": "integer" + }, + "start-index": { + "description": "A 1-based index of the first custom data source to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter.", + "format": "int32", + "location": "query", + "minimum": "1", + "type": "integer" + }, + "webPropertyId": { + "description": "Web property Id for the custom data sources to retrieve.", + "location": "path", + "pattern": "UA-(\\d+)-(\\d+)", + "required": true, + "type": "string" + } + }, + "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/customDataSources", + "response": { + "$ref": "CustomDataSources" + }, + "scopes": [ + "https://www.googleapis.com/auth/analytics", + "https://www.googleapis.com/auth/analytics.edit", + "https://www.googleapis.com/auth/analytics.readonly" + ] + } + } + }, + "customDimensions": { + "methods": { + "get": { + "description": "Get a custom dimension to which the user has access.", + "httpMethod": "GET", + "id": "analytics.management.customDimensions.get", + "parameterOrder": [ + "accountId", + "webPropertyId", + "customDimensionId" + ], + "parameters": { + "accountId": { + "description": "Account ID for the custom dimension to retrieve.", + "location": "path", + "required": true, + "type": "string" + }, + "customDimensionId": { + "description": "The ID of the custom dimension to retrieve.", + "location": "path", + "required": true, + "type": "string" + }, + "webPropertyId": { + "description": "Web property ID for the custom dimension to retrieve.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/customDimensions/{customDimensionId}", + "response": { + "$ref": "CustomDimension" + }, + "scopes": [ + "https://www.googleapis.com/auth/analytics.edit", + "https://www.googleapis.com/auth/analytics.readonly" + ] + }, + "insert": { + "description": "Create a new custom dimension.", + "httpMethod": "POST", + "id": "analytics.management.customDimensions.insert", + "parameterOrder": [ + "accountId", + "webPropertyId" + ], + "parameters": { + "accountId": { + "description": "Account ID for the custom dimension to create.", + "location": "path", + "required": true, + "type": "string" + }, + "webPropertyId": { + "description": "Web property ID for the custom dimension to create.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/customDimensions", + "request": { + "$ref": "CustomDimension" + }, + "response": { + "$ref": "CustomDimension" + }, + "scopes": [ + "https://www.googleapis.com/auth/analytics.edit" + ] + }, + "list": { + "description": "Lists custom dimensions to which the user has access.", + "httpMethod": "GET", + "id": "analytics.management.customDimensions.list", + "parameterOrder": [ + "accountId", + "webPropertyId" + ], + "parameters": { + "accountId": { + "description": "Account ID for the custom dimensions to retrieve.", + "location": "path", + "required": true, + "type": "string" + }, + "max-results": { + "description": "The maximum number of custom dimensions to include in this response.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "start-index": { + "description": "An index of the first entity to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter.", + "format": "int32", + "location": "query", + "minimum": "1", + "type": "integer" + }, + "webPropertyId": { + "description": "Web property ID for the custom dimensions to retrieve.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/customDimensions", + "response": { + "$ref": "CustomDimensions" + }, + "scopes": [ + "https://www.googleapis.com/auth/analytics", + "https://www.googleapis.com/auth/analytics.readonly" + ] + }, + "patch": { + "description": "Updates an existing custom dimension. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "analytics.management.customDimensions.patch", + "parameterOrder": [ + "accountId", + "webPropertyId", + "customDimensionId" + ], + "parameters": { + "accountId": { + "description": "Account ID for the custom dimension to update.", + "location": "path", + "required": true, + "type": "string" + }, + "customDimensionId": { + "description": "Custom dimension ID for the custom dimension to update.", + "location": "path", + "required": true, + "type": "string" + }, + "ignoreCustomDataSourceLinks": { + "default": "false", + "description": "Force the update and ignore any warnings related to the custom dimension being linked to a custom data source / data set.", + "location": "query", + "type": "boolean" + }, + "webPropertyId": { + "description": "Web property ID for the custom dimension to update.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/customDimensions/{customDimensionId}", + "request": { + "$ref": "CustomDimension" + }, + "response": { + "$ref": "CustomDimension" + }, + "scopes": [ + "https://www.googleapis.com/auth/analytics.edit" + ] + }, + "update": { + "description": "Updates an existing custom dimension.", + "httpMethod": "PUT", + "id": "analytics.management.customDimensions.update", + "parameterOrder": [ + "accountId", + "webPropertyId", + "customDimensionId" + ], + "parameters": { + "accountId": { + "description": "Account ID for the custom dimension to update.", + "location": "path", + "required": true, + "type": "string" + }, + "customDimensionId": { + "description": "Custom dimension ID for the custom dimension to update.", + "location": "path", + "required": true, + "type": "string" + }, + "ignoreCustomDataSourceLinks": { + "default": "false", + "description": "Force the update and ignore any warnings related to the custom dimension being linked to a custom data source / data set.", + "location": "query", + "type": "boolean" + }, + "webPropertyId": { + "description": "Web property ID for the custom dimension to update.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/customDimensions/{customDimensionId}", + "request": { + "$ref": "CustomDimension" + }, + "response": { + "$ref": "CustomDimension" + }, + "scopes": [ + "https://www.googleapis.com/auth/analytics.edit" + ] + } + } + }, + "customMetrics": { + "methods": { + "get": { + "description": "Get a custom metric to which the user has access.", + "httpMethod": "GET", + "id": "analytics.management.customMetrics.get", + "parameterOrder": [ + "accountId", + "webPropertyId", + "customMetricId" + ], + "parameters": { + "accountId": { + "description": "Account ID for the custom metric to retrieve.", + "location": "path", + "required": true, + "type": "string" + }, + "customMetricId": { + "description": "The ID of the custom metric to retrieve.", + "location": "path", + "required": true, + "type": "string" + }, + "webPropertyId": { + "description": "Web property ID for the custom metric to retrieve.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/customMetrics/{customMetricId}", + "response": { + "$ref": "CustomMetric" + }, + "scopes": [ + "https://www.googleapis.com/auth/analytics.edit", + "https://www.googleapis.com/auth/analytics.readonly" + ] + }, + "insert": { + "description": "Create a new custom metric.", + "httpMethod": "POST", + "id": "analytics.management.customMetrics.insert", + "parameterOrder": [ + "accountId", + "webPropertyId" + ], + "parameters": { + "accountId": { + "description": "Account ID for the custom metric to create.", + "location": "path", + "required": true, + "type": "string" + }, + "webPropertyId": { + "description": "Web property ID for the custom dimension to create.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/customMetrics", + "request": { + "$ref": "CustomMetric" + }, + "response": { + "$ref": "CustomMetric" + }, + "scopes": [ + "https://www.googleapis.com/auth/analytics.edit" + ] + }, + "list": { + "description": "Lists custom metrics to which the user has access.", + "httpMethod": "GET", + "id": "analytics.management.customMetrics.list", + "parameterOrder": [ + "accountId", + "webPropertyId" + ], + "parameters": { + "accountId": { + "description": "Account ID for the custom metrics to retrieve.", + "location": "path", + "required": true, + "type": "string" + }, + "max-results": { + "description": "The maximum number of custom metrics to include in this response.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "start-index": { + "description": "An index of the first entity to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter.", + "format": "int32", + "location": "query", + "minimum": "1", + "type": "integer" + }, + "webPropertyId": { + "description": "Web property ID for the custom metrics to retrieve.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/customMetrics", + "response": { + "$ref": "CustomMetrics" + }, + "scopes": [ + "https://www.googleapis.com/auth/analytics", + "https://www.googleapis.com/auth/analytics.readonly" + ] + }, + "patch": { + "description": "Updates an existing custom metric. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "analytics.management.customMetrics.patch", + "parameterOrder": [ + "accountId", + "webPropertyId", + "customMetricId" + ], + "parameters": { + "accountId": { + "description": "Account ID for the custom metric to update.", + "location": "path", + "required": true, + "type": "string" + }, + "customMetricId": { + "description": "Custom metric ID for the custom metric to update.", + "location": "path", + "required": true, + "type": "string" + }, + "ignoreCustomDataSourceLinks": { + "default": "false", + "description": "Force the update and ignore any warnings related to the custom metric being linked to a custom data source / data set.", + "location": "query", + "type": "boolean" + }, + "webPropertyId": { + "description": "Web property ID for the custom metric to update.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/customMetrics/{customMetricId}", + "request": { + "$ref": "CustomMetric" + }, + "response": { + "$ref": "CustomMetric" + }, + "scopes": [ + "https://www.googleapis.com/auth/analytics.edit" + ] + }, + "update": { + "description": "Updates an existing custom metric.", + "httpMethod": "PUT", + "id": "analytics.management.customMetrics.update", + "parameterOrder": [ + "accountId", + "webPropertyId", + "customMetricId" + ], + "parameters": { + "accountId": { + "description": "Account ID for the custom metric to update.", + "location": "path", + "required": true, + "type": "string" + }, + "customMetricId": { + "description": "Custom metric ID for the custom metric to update.", + "location": "path", + "required": true, + "type": "string" + }, + "ignoreCustomDataSourceLinks": { + "default": "false", + "description": "Force the update and ignore any warnings related to the custom metric being linked to a custom data source / data set.", + "location": "query", + "type": "boolean" + }, + "webPropertyId": { + "description": "Web property ID for the custom metric to update.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/customMetrics/{customMetricId}", + "request": { + "$ref": "CustomMetric" + }, + "response": { + "$ref": "CustomMetric" + }, + "scopes": [ + "https://www.googleapis.com/auth/analytics.edit" + ] + } + } + }, + "experiments": { + "methods": { + "delete": { + "description": "Delete an experiment.", + "httpMethod": "DELETE", + "id": "analytics.management.experiments.delete", + "parameterOrder": [ + "accountId", + "webPropertyId", + "profileId", + "experimentId" + ], + "parameters": { + "accountId": { + "description": "Account ID to which the experiment belongs", + "location": "path", + "required": true, + "type": "string" + }, + "experimentId": { + "description": "ID of the experiment to delete", + "location": "path", + "required": true, + "type": "string" + }, + "profileId": { + "description": "View (Profile) ID to which the experiment belongs", + "location": "path", + "required": true, + "type": "string" + }, + "webPropertyId": { + "description": "Web property ID to which the experiment belongs", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/experiments/{experimentId}", + "scopes": [ + "https://www.googleapis.com/auth/analytics", + "https://www.googleapis.com/auth/analytics.edit" + ] + }, + "get": { + "description": "Returns an experiment to which the user has access.", + "httpMethod": "GET", + "id": "analytics.management.experiments.get", + "parameterOrder": [ + "accountId", + "webPropertyId", + "profileId", + "experimentId" + ], + "parameters": { + "accountId": { + "description": "Account ID to retrieve the experiment for.", + "location": "path", + "required": true, + "type": "string" + }, + "experimentId": { + "description": "Experiment ID to retrieve the experiment for.", + "location": "path", + "required": true, + "type": "string" + }, + "profileId": { + "description": "View (Profile) ID to retrieve the experiment for.", + "location": "path", + "required": true, + "type": "string" + }, + "webPropertyId": { + "description": "Web property ID to retrieve the experiment for.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/experiments/{experimentId}", + "response": { + "$ref": "Experiment" + }, + "scopes": [ + "https://www.googleapis.com/auth/analytics", + "https://www.googleapis.com/auth/analytics.edit", + "https://www.googleapis.com/auth/analytics.readonly" + ] + }, + "insert": { + "description": "Create a new experiment.", + "httpMethod": "POST", + "id": "analytics.management.experiments.insert", + "parameterOrder": [ + "accountId", + "webPropertyId", + "profileId" + ], + "parameters": { + "accountId": { + "description": "Account ID to create the experiment for.", + "location": "path", + "required": true, + "type": "string" + }, + "profileId": { + "description": "View (Profile) ID to create the experiment for.", + "location": "path", + "required": true, + "type": "string" + }, + "webPropertyId": { + "description": "Web property ID to create the experiment for.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/experiments", + "request": { + "$ref": "Experiment" + }, + "response": { + "$ref": "Experiment" + }, + "scopes": [ + "https://www.googleapis.com/auth/analytics", + "https://www.googleapis.com/auth/analytics.edit" + ] + }, + "list": { + "description": "Lists experiments to which the user has access.", + "httpMethod": "GET", + "id": "analytics.management.experiments.list", + "parameterOrder": [ + "accountId", + "webPropertyId", + "profileId" + ], + "parameters": { + "accountId": { + "description": "Account ID to retrieve experiments for.", + "location": "path", + "pattern": "\\d+", + "required": true, + "type": "string" + }, + "max-results": { + "description": "The maximum number of experiments to include in this response.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "profileId": { + "description": "View (Profile) ID to retrieve experiments for.", + "location": "path", + "pattern": "\\d+", + "required": true, + "type": "string" + }, + "start-index": { + "description": "An index of the first experiment to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter.", + "format": "int32", + "location": "query", + "minimum": "1", + "type": "integer" + }, + "webPropertyId": { + "description": "Web property ID to retrieve experiments for.", + "location": "path", + "pattern": "UA-(\\d+)-(\\d+)", + "required": true, + "type": "string" + } + }, + "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/experiments", + "response": { + "$ref": "Experiments" + }, + "scopes": [ + "https://www.googleapis.com/auth/analytics", + "https://www.googleapis.com/auth/analytics.edit", + "https://www.googleapis.com/auth/analytics.readonly" + ] + }, + "patch": { + "description": "Update an existing experiment. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "analytics.management.experiments.patch", + "parameterOrder": [ + "accountId", + "webPropertyId", + "profileId", + "experimentId" + ], + "parameters": { + "accountId": { + "description": "Account ID of the experiment to update.", + "location": "path", + "required": true, + "type": "string" + }, + "experimentId": { + "description": "Experiment ID of the experiment to update.", + "location": "path", + "required": true, + "type": "string" + }, + "profileId": { + "description": "View (Profile) ID of the experiment to update.", + "location": "path", + "required": true, + "type": "string" + }, + "webPropertyId": { + "description": "Web property ID of the experiment to update.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/experiments/{experimentId}", + "request": { + "$ref": "Experiment" + }, + "response": { + "$ref": "Experiment" + }, + "scopes": [ + "https://www.googleapis.com/auth/analytics", + "https://www.googleapis.com/auth/analytics.edit" + ] + }, + "update": { + "description": "Update an existing experiment.", + "httpMethod": "PUT", + "id": "analytics.management.experiments.update", + "parameterOrder": [ + "accountId", + "webPropertyId", + "profileId", + "experimentId" + ], + "parameters": { + "accountId": { + "description": "Account ID of the experiment to update.", + "location": "path", + "required": true, + "type": "string" + }, + "experimentId": { + "description": "Experiment ID of the experiment to update.", + "location": "path", + "required": true, + "type": "string" + }, + "profileId": { + "description": "View (Profile) ID of the experiment to update.", + "location": "path", + "required": true, + "type": "string" + }, + "webPropertyId": { + "description": "Web property ID of the experiment to update.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/experiments/{experimentId}", + "request": { + "$ref": "Experiment" + }, + "response": { + "$ref": "Experiment" + }, + "scopes": [ + "https://www.googleapis.com/auth/analytics", + "https://www.googleapis.com/auth/analytics.edit" + ] + } + } + }, + "filters": { + "methods": { + "delete": { + "description": "Delete a filter.", + "httpMethod": "DELETE", + "id": "analytics.management.filters.delete", + "parameterOrder": [ + "accountId", + "filterId" + ], + "parameters": { + "accountId": { + "description": "Account ID to delete the filter for.", + "location": "path", + "required": true, + "type": "string" + }, + "filterId": { + "description": "ID of the filter to be deleted.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "management/accounts/{accountId}/filters/{filterId}", + "response": { + "$ref": "Filter" + }, + "scopes": [ + "https://www.googleapis.com/auth/analytics.edit" + ] + }, + "get": { + "description": "Returns a filters to which the user has access.", + "httpMethod": "GET", + "id": "analytics.management.filters.get", + "parameterOrder": [ + "accountId", + "filterId" + ], + "parameters": { + "accountId": { + "description": "Account ID to retrieve filters for.", + "location": "path", + "required": true, + "type": "string" + }, + "filterId": { + "description": "Filter ID to retrieve filters for.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "management/accounts/{accountId}/filters/{filterId}", + "response": { + "$ref": "Filter" + }, + "scopes": [ + "https://www.googleapis.com/auth/analytics.edit", + "https://www.googleapis.com/auth/analytics.readonly" + ] + }, + "insert": { + "description": "Create a new filter.", + "httpMethod": "POST", + "id": "analytics.management.filters.insert", + "parameterOrder": [ + "accountId" + ], + "parameters": { + "accountId": { + "description": "Account ID to create filter for.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "management/accounts/{accountId}/filters", + "request": { + "$ref": "Filter" + }, + "response": { + "$ref": "Filter" + }, + "scopes": [ + "https://www.googleapis.com/auth/analytics.edit" + ] + }, + "list": { + "description": "Lists all filters for an account", + "httpMethod": "GET", + "id": "analytics.management.filters.list", + "parameterOrder": [ + "accountId" + ], + "parameters": { + "accountId": { + "description": "Account ID to retrieve filters for.", + "location": "path", + "pattern": "\\d+", + "required": true, + "type": "string" + }, + "max-results": { + "description": "The maximum number of filters to include in this response.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "start-index": { + "description": "An index of the first entity to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter.", + "format": "int32", + "location": "query", + "minimum": "1", + "type": "integer" + } + }, + "path": "management/accounts/{accountId}/filters", + "response": { + "$ref": "Filters" + }, + "scopes": [ + "https://www.googleapis.com/auth/analytics.edit", + "https://www.googleapis.com/auth/analytics.readonly" + ] + }, + "patch": { + "description": "Updates an existing filter. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "analytics.management.filters.patch", + "parameterOrder": [ + "accountId", + "filterId" + ], + "parameters": { + "accountId": { + "description": "Account ID to which the filter belongs.", + "location": "path", + "required": true, + "type": "string" + }, + "filterId": { + "description": "ID of the filter to be updated.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "management/accounts/{accountId}/filters/{filterId}", + "request": { + "$ref": "Filter" + }, + "response": { + "$ref": "Filter" + }, + "scopes": [ + "https://www.googleapis.com/auth/analytics.edit" + ] + }, + "update": { + "description": "Updates an existing filter.", + "httpMethod": "PUT", + "id": "analytics.management.filters.update", + "parameterOrder": [ + "accountId", + "filterId" + ], + "parameters": { + "accountId": { + "description": "Account ID to which the filter belongs.", + "location": "path", + "required": true, + "type": "string" + }, + "filterId": { + "description": "ID of the filter to be updated.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "management/accounts/{accountId}/filters/{filterId}", + "request": { + "$ref": "Filter" + }, + "response": { + "$ref": "Filter" + }, + "scopes": [ + "https://www.googleapis.com/auth/analytics.edit" + ] + } + } + }, + "goals": { + "methods": { + "get": { + "description": "Gets a goal to which the user has access.", + "httpMethod": "GET", + "id": "analytics.management.goals.get", + "parameterOrder": [ + "accountId", + "webPropertyId", + "profileId", + "goalId" + ], + "parameters": { + "accountId": { + "description": "Account ID to retrieve the goal for.", + "location": "path", + "required": true, + "type": "string" + }, + "goalId": { + "description": "Goal ID to retrieve the goal for.", + "location": "path", + "required": true, + "type": "string" + }, + "profileId": { + "description": "View (Profile) ID to retrieve the goal for.", + "location": "path", + "required": true, + "type": "string" + }, + "webPropertyId": { + "description": "Web property ID to retrieve the goal for.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/goals/{goalId}", + "response": { + "$ref": "Goal" + }, + "scopes": [ + "https://www.googleapis.com/auth/analytics.edit", + "https://www.googleapis.com/auth/analytics.readonly" + ] + }, + "insert": { + "description": "Create a new goal.", + "httpMethod": "POST", + "id": "analytics.management.goals.insert", + "parameterOrder": [ + "accountId", + "webPropertyId", + "profileId" + ], + "parameters": { + "accountId": { + "description": "Account ID to create the goal for.", + "location": "path", + "required": true, + "type": "string" + }, + "profileId": { + "description": "View (Profile) ID to create the goal for.", + "location": "path", + "required": true, + "type": "string" + }, + "webPropertyId": { + "description": "Web property ID to create the goal for.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/goals", + "request": { + "$ref": "Goal" + }, + "response": { + "$ref": "Goal" + }, + "scopes": [ + "https://www.googleapis.com/auth/analytics.edit" + ] + }, + "list": { + "description": "Lists goals to which the user has access.", + "httpMethod": "GET", + "id": "analytics.management.goals.list", + "parameterOrder": [ + "accountId", + "webPropertyId", + "profileId" + ], + "parameters": { + "accountId": { + "description": "Account ID to retrieve goals for. Can either be a specific account ID or '~all', which refers to all the accounts that user has access to.", + "location": "path", + "required": true, + "type": "string" + }, + "max-results": { + "description": "The maximum number of goals to include in this response.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "profileId": { + "description": "View (Profile) ID to retrieve goals for. Can either be a specific view (profile) ID or '~all', which refers to all the views (profiles) that user has access to.", + "location": "path", + "required": true, + "type": "string" + }, + "start-index": { + "description": "An index of the first goal to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter.", + "format": "int32", + "location": "query", + "minimum": "1", + "type": "integer" + }, + "webPropertyId": { + "description": "Web property ID to retrieve goals for. Can either be a specific web property ID or '~all', which refers to all the web properties that user has access to.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/goals", + "response": { + "$ref": "Goals" + }, + "scopes": [ + "https://www.googleapis.com/auth/analytics", + "https://www.googleapis.com/auth/analytics.edit", + "https://www.googleapis.com/auth/analytics.readonly" + ] + }, + "patch": { + "description": "Updates an existing goal. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "analytics.management.goals.patch", + "parameterOrder": [ + "accountId", + "webPropertyId", + "profileId", + "goalId" + ], + "parameters": { + "accountId": { + "description": "Account ID to update the goal.", + "location": "path", + "required": true, + "type": "string" + }, + "goalId": { + "description": "Index of the goal to be updated.", + "location": "path", + "required": true, + "type": "string" + }, + "profileId": { + "description": "View (Profile) ID to update the goal.", + "location": "path", + "required": true, + "type": "string" + }, + "webPropertyId": { + "description": "Web property ID to update the goal.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/goals/{goalId}", + "request": { + "$ref": "Goal" + }, + "response": { + "$ref": "Goal" + }, + "scopes": [ + "https://www.googleapis.com/auth/analytics.edit" + ] + }, + "update": { + "description": "Updates an existing goal.", + "httpMethod": "PUT", + "id": "analytics.management.goals.update", + "parameterOrder": [ + "accountId", + "webPropertyId", + "profileId", + "goalId" + ], + "parameters": { + "accountId": { + "description": "Account ID to update the goal.", + "location": "path", + "required": true, + "type": "string" + }, + "goalId": { + "description": "Index of the goal to be updated.", + "location": "path", + "required": true, + "type": "string" + }, + "profileId": { + "description": "View (Profile) ID to update the goal.", + "location": "path", + "required": true, + "type": "string" + }, + "webPropertyId": { + "description": "Web property ID to update the goal.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/goals/{goalId}", + "request": { + "$ref": "Goal" + }, + "response": { + "$ref": "Goal" + }, + "scopes": [ + "https://www.googleapis.com/auth/analytics.edit" + ] + } + } + }, + "profileFilterLinks": { + "methods": { + "delete": { + "description": "Delete a profile filter link.", + "httpMethod": "DELETE", + "id": "analytics.management.profileFilterLinks.delete", + "parameterOrder": [ + "accountId", + "webPropertyId", + "profileId", + "linkId" + ], + "parameters": { + "accountId": { + "description": "Account ID to which the profile filter link belongs.", + "location": "path", + "pattern": "\\d+", + "required": true, + "type": "string" + }, + "linkId": { + "description": "ID of the profile filter link to delete.", + "location": "path", + "pattern": "\\d+:\\d+", + "required": true, + "type": "string" + }, + "profileId": { + "description": "Profile ID to which the filter link belongs.", + "location": "path", + "pattern": "\\d+", + "required": true, + "type": "string" + }, + "webPropertyId": { + "description": "Web property Id to which the profile filter link belongs.", + "location": "path", + "pattern": "UA-(\\d+)-(\\d+)", + "required": true, + "type": "string" + } + }, + "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/profileFilterLinks/{linkId}", + "scopes": [ + "https://www.googleapis.com/auth/analytics.edit" + ] + }, + "get": { + "description": "Returns a single profile filter link.", + "httpMethod": "GET", + "id": "analytics.management.profileFilterLinks.get", + "parameterOrder": [ + "accountId", + "webPropertyId", + "profileId", + "linkId" + ], + "parameters": { + "accountId": { + "description": "Account ID to retrieve profile filter link for.", + "location": "path", + "pattern": "\\d+", + "required": true, + "type": "string" + }, + "linkId": { + "description": "ID of the profile filter link.", + "location": "path", + "pattern": "\\d+:\\d+", + "required": true, + "type": "string" + }, + "profileId": { + "description": "Profile ID to retrieve filter link for.", + "location": "path", + "pattern": "\\d+", + "required": true, + "type": "string" + }, + "webPropertyId": { + "description": "Web property Id to retrieve profile filter link for.", + "location": "path", + "pattern": "UA-(\\d+)-(\\d+)", + "required": true, + "type": "string" + } + }, + "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/profileFilterLinks/{linkId}", + "response": { + "$ref": "ProfileFilterLink" + }, + "scopes": [ + "https://www.googleapis.com/auth/analytics.edit", + "https://www.googleapis.com/auth/analytics.readonly" + ] + }, + "insert": { + "description": "Create a new profile filter link.", + "httpMethod": "POST", + "id": "analytics.management.profileFilterLinks.insert", + "parameterOrder": [ + "accountId", + "webPropertyId", + "profileId" + ], + "parameters": { + "accountId": { + "description": "Account ID to create profile filter link for.", + "location": "path", + "pattern": "\\d+", + "required": true, + "type": "string" + }, + "profileId": { + "description": "Profile ID to create filter link for.", + "location": "path", + "pattern": "\\d+", + "required": true, + "type": "string" + }, + "webPropertyId": { + "description": "Web property Id to create profile filter link for.", + "location": "path", + "pattern": "UA-(\\d+)-(\\d+)", + "required": true, + "type": "string" + } + }, + "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/profileFilterLinks", + "request": { + "$ref": "ProfileFilterLink" + }, + "response": { + "$ref": "ProfileFilterLink" + }, + "scopes": [ + "https://www.googleapis.com/auth/analytics.edit" + ] + }, + "list": { + "description": "Lists all profile filter links for a profile.", + "httpMethod": "GET", + "id": "analytics.management.profileFilterLinks.list", + "parameterOrder": [ + "accountId", + "webPropertyId", + "profileId" + ], + "parameters": { + "accountId": { + "description": "Account ID to retrieve profile filter links for.", + "location": "path", + "pattern": "\\d+", + "required": true, + "type": "string" + }, + "max-results": { + "description": "The maximum number of profile filter links to include in this response.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "profileId": { + "description": "Profile ID to retrieve filter links for. Can either be a specific profile ID or '~all', which refers to all the profiles that user has access to.", + "location": "path", + "required": true, + "type": "string" + }, + "start-index": { + "description": "An index of the first entity to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter.", + "format": "int32", + "location": "query", + "minimum": "1", + "type": "integer" + }, + "webPropertyId": { + "description": "Web property Id for profile filter links for. Can either be a specific web property ID or '~all', which refers to all the web properties that user has access to.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/profileFilterLinks", + "response": { + "$ref": "ProfileFilterLinks" + }, + "scopes": [ + "https://www.googleapis.com/auth/analytics.edit", + "https://www.googleapis.com/auth/analytics.readonly" + ] + }, + "patch": { + "description": "Update an existing profile filter link. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "analytics.management.profileFilterLinks.patch", + "parameterOrder": [ + "accountId", + "webPropertyId", + "profileId", + "linkId" + ], + "parameters": { + "accountId": { + "description": "Account ID to which profile filter link belongs.", + "location": "path", + "pattern": "\\d+", + "required": true, + "type": "string" + }, + "linkId": { + "description": "ID of the profile filter link to be updated.", + "location": "path", + "pattern": "\\d+:\\d+", + "required": true, + "type": "string" + }, + "profileId": { + "description": "Profile ID to which filter link belongs", + "location": "path", + "pattern": "\\d+", + "required": true, + "type": "string" + }, + "webPropertyId": { + "description": "Web property Id to which profile filter link belongs", + "location": "path", + "pattern": "UA-(\\d+)-(\\d+)", + "required": true, + "type": "string" + } + }, + "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/profileFilterLinks/{linkId}", + "request": { + "$ref": "ProfileFilterLink" + }, + "response": { + "$ref": "ProfileFilterLink" + }, + "scopes": [ + "https://www.googleapis.com/auth/analytics.edit" + ] + }, + "update": { + "description": "Update an existing profile filter link.", + "httpMethod": "PUT", + "id": "analytics.management.profileFilterLinks.update", + "parameterOrder": [ + "accountId", + "webPropertyId", + "profileId", + "linkId" + ], + "parameters": { + "accountId": { + "description": "Account ID to which profile filter link belongs.", + "location": "path", + "pattern": "\\d+", + "required": true, + "type": "string" + }, + "linkId": { + "description": "ID of the profile filter link to be updated.", + "location": "path", + "pattern": "\\d+:\\d+", + "required": true, + "type": "string" + }, + "profileId": { + "description": "Profile ID to which filter link belongs", + "location": "path", + "pattern": "\\d+", + "required": true, + "type": "string" + }, + "webPropertyId": { + "description": "Web property Id to which profile filter link belongs", + "location": "path", + "pattern": "UA-(\\d+)-(\\d+)", + "required": true, + "type": "string" + } + }, + "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/profileFilterLinks/{linkId}", + "request": { + "$ref": "ProfileFilterLink" + }, + "response": { + "$ref": "ProfileFilterLink" + }, + "scopes": [ + "https://www.googleapis.com/auth/analytics.edit" + ] + } + } + }, + "profileUserLinks": { + "methods": { + "delete": { + "description": "Removes a user from the given view (profile).", + "httpMethod": "DELETE", + "id": "analytics.management.profileUserLinks.delete", + "parameterOrder": [ + "accountId", + "webPropertyId", + "profileId", + "linkId" + ], + "parameters": { + "accountId": { + "description": "Account ID to delete the user link for.", + "location": "path", + "required": true, + "type": "string" + }, + "linkId": { + "description": "Link ID to delete the user link for.", + "location": "path", + "required": true, + "type": "string" + }, + "profileId": { + "description": "View (Profile) ID to delete the user link for.", + "location": "path", + "required": true, + "type": "string" + }, + "webPropertyId": { + "description": "Web Property ID to delete the user link for.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/entityUserLinks/{linkId}", + "scopes": [ + "https://www.googleapis.com/auth/analytics.manage.users" + ] + }, + "insert": { + "description": "Adds a new user to the given view (profile).", + "httpMethod": "POST", + "id": "analytics.management.profileUserLinks.insert", + "parameterOrder": [ + "accountId", + "webPropertyId", + "profileId" + ], + "parameters": { + "accountId": { + "description": "Account ID to create the user link for.", + "location": "path", + "required": true, + "type": "string" + }, + "profileId": { + "description": "View (Profile) ID to create the user link for.", + "location": "path", + "required": true, + "type": "string" + }, + "webPropertyId": { + "description": "Web Property ID to create the user link for.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/entityUserLinks", + "request": { + "$ref": "EntityUserLink" + }, + "response": { + "$ref": "EntityUserLink" + }, + "scopes": [ + "https://www.googleapis.com/auth/analytics.manage.users" + ] + }, + "list": { + "description": "Lists profile-user links for a given view (profile).", + "httpMethod": "GET", + "id": "analytics.management.profileUserLinks.list", + "parameterOrder": [ + "accountId", + "webPropertyId", + "profileId" + ], + "parameters": { + "accountId": { + "description": "Account ID which the given view (profile) belongs to.", + "location": "path", + "required": true, + "type": "string" + }, + "max-results": { + "description": "The maximum number of profile-user links to include in this response.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "profileId": { + "description": "View (Profile) ID to retrieve the profile-user links for. Can either be a specific profile ID or '~all', which refers to all the profiles that user has access to.", + "location": "path", + "required": true, + "type": "string" + }, + "start-index": { + "description": "An index of the first profile-user link to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter.", + "format": "int32", + "location": "query", + "minimum": "1", + "type": "integer" + }, + "webPropertyId": { + "description": "Web Property ID which the given view (profile) belongs to. Can either be a specific web property ID or '~all', which refers to all the web properties that user has access to.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/entityUserLinks", + "response": { + "$ref": "EntityUserLinks" + }, + "scopes": [ + "https://www.googleapis.com/auth/analytics.manage.users", + "https://www.googleapis.com/auth/analytics.manage.users.readonly" + ] + }, + "update": { + "description": "Updates permissions for an existing user on the given view (profile).", + "httpMethod": "PUT", + "id": "analytics.management.profileUserLinks.update", + "parameterOrder": [ + "accountId", + "webPropertyId", + "profileId", + "linkId" + ], + "parameters": { + "accountId": { + "description": "Account ID to update the user link for.", + "location": "path", + "required": true, + "type": "string" + }, + "linkId": { + "description": "Link ID to update the user link for.", + "location": "path", + "required": true, + "type": "string" + }, + "profileId": { + "description": "View (Profile ID) to update the user link for.", + "location": "path", + "required": true, + "type": "string" + }, + "webPropertyId": { + "description": "Web Property ID to update the user link for.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/entityUserLinks/{linkId}", + "request": { + "$ref": "EntityUserLink" + }, + "response": { + "$ref": "EntityUserLink" + }, + "scopes": [ + "https://www.googleapis.com/auth/analytics.manage.users" + ] + } + } + }, + "profiles": { + "methods": { + "delete": { + "description": "Deletes a view (profile).", + "httpMethod": "DELETE", + "id": "analytics.management.profiles.delete", + "parameterOrder": [ + "accountId", + "webPropertyId", + "profileId" + ], + "parameters": { + "accountId": { + "description": "Account ID to delete the view (profile) for.", + "location": "path", + "required": true, + "type": "string" + }, + "profileId": { + "description": "ID of the view (profile) to be deleted.", + "location": "path", + "required": true, + "type": "string" + }, + "webPropertyId": { + "description": "Web property ID to delete the view (profile) for.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}", + "scopes": [ + "https://www.googleapis.com/auth/analytics.edit" + ] + }, + "get": { + "description": "Gets a view (profile) to which the user has access.", + "httpMethod": "GET", + "id": "analytics.management.profiles.get", + "parameterOrder": [ + "accountId", + "webPropertyId", + "profileId" + ], + "parameters": { + "accountId": { + "description": "Account ID to retrieve the view (profile) for.", + "location": "path", + "pattern": "[0-9]+", + "required": true, + "type": "string" + }, + "profileId": { + "description": "View (Profile) ID to retrieve the view (profile) for.", + "location": "path", + "pattern": "[0-9]+", + "required": true, + "type": "string" + }, + "webPropertyId": { + "description": "Web property ID to retrieve the view (profile) for.", + "location": "path", + "pattern": "UA-[0-9]+-[0-9]+", + "required": true, + "type": "string" + } + }, + "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}", + "response": { + "$ref": "Profile" + }, + "scopes": [ + "https://www.googleapis.com/auth/analytics.edit", + "https://www.googleapis.com/auth/analytics.readonly" + ] + }, + "insert": { + "description": "Create a new view (profile).", + "httpMethod": "POST", + "id": "analytics.management.profiles.insert", + "parameterOrder": [ + "accountId", + "webPropertyId" + ], + "parameters": { + "accountId": { + "description": "Account ID to create the view (profile) for.", + "location": "path", + "required": true, + "type": "string" + }, + "webPropertyId": { + "description": "Web property ID to create the view (profile) for.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/profiles", + "request": { + "$ref": "Profile" + }, + "response": { + "$ref": "Profile" + }, + "scopes": [ + "https://www.googleapis.com/auth/analytics.edit" + ] + }, + "list": { + "description": "Lists views (profiles) to which the user has access.", + "httpMethod": "GET", + "id": "analytics.management.profiles.list", + "parameterOrder": [ + "accountId", + "webPropertyId" + ], + "parameters": { + "accountId": { + "description": "Account ID for the view (profiles) to retrieve. Can either be a specific account ID or '~all', which refers to all the accounts to which the user has access.", + "location": "path", + "required": true, + "type": "string" + }, + "max-results": { + "description": "The maximum number of views (profiles) to include in this response.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "start-index": { + "description": "An index of the first entity to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter.", + "format": "int32", + "location": "query", + "minimum": "1", + "type": "integer" + }, + "webPropertyId": { + "description": "Web property ID for the views (profiles) to retrieve. Can either be a specific web property ID or '~all', which refers to all the web properties to which the user has access.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/profiles", + "response": { + "$ref": "Profiles" + }, + "scopes": [ + "https://www.googleapis.com/auth/analytics", + "https://www.googleapis.com/auth/analytics.edit", + "https://www.googleapis.com/auth/analytics.readonly" + ] + }, + "patch": { + "description": "Updates an existing view (profile). This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "analytics.management.profiles.patch", + "parameterOrder": [ + "accountId", + "webPropertyId", + "profileId" + ], + "parameters": { + "accountId": { + "description": "Account ID to which the view (profile) belongs", + "location": "path", + "required": true, + "type": "string" + }, + "profileId": { + "description": "ID of the view (profile) to be updated.", + "location": "path", + "required": true, + "type": "string" + }, + "webPropertyId": { + "description": "Web property ID to which the view (profile) belongs", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}", + "request": { + "$ref": "Profile" + }, + "response": { + "$ref": "Profile" + }, + "scopes": [ + "https://www.googleapis.com/auth/analytics.edit" + ] + }, + "update": { + "description": "Updates an existing view (profile).", + "httpMethod": "PUT", + "id": "analytics.management.profiles.update", + "parameterOrder": [ + "accountId", + "webPropertyId", + "profileId" + ], + "parameters": { + "accountId": { + "description": "Account ID to which the view (profile) belongs", + "location": "path", + "required": true, + "type": "string" + }, + "profileId": { + "description": "ID of the view (profile) to be updated.", + "location": "path", + "required": true, + "type": "string" + }, + "webPropertyId": { + "description": "Web property ID to which the view (profile) belongs", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}", + "request": { + "$ref": "Profile" + }, + "response": { + "$ref": "Profile" + }, + "scopes": [ + "https://www.googleapis.com/auth/analytics.edit" + ] + } + } + }, + "remarketingAudience": { + "methods": { + "delete": { + "description": "Delete a remarketing audience.", + "httpMethod": "DELETE", + "id": "analytics.management.remarketingAudience.delete", + "parameterOrder": [ + "accountId", + "webPropertyId", + "remarketingAudienceId" + ], + "parameters": { + "accountId": { + "description": "Account ID to which the remarketing audience belongs.", + "location": "path", + "required": true, + "type": "string" + }, + "remarketingAudienceId": { + "description": "The ID of the remarketing audience to delete.", + "location": "path", + "required": true, + "type": "string" + }, + "webPropertyId": { + "description": "Web property ID to which the remarketing audience belongs.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/remarketingAudiences/{remarketingAudienceId}", + "scopes": [ + "https://www.googleapis.com/auth/analytics.edit" + ] + }, + "get": { + "description": "Gets a remarketing audience to which the user has access.", + "httpMethod": "GET", + "id": "analytics.management.remarketingAudience.get", + "parameterOrder": [ + "accountId", + "webPropertyId", + "remarketingAudienceId" + ], + "parameters": { + "accountId": { + "description": "The account ID of the remarketing audience to retrieve.", + "location": "path", + "required": true, + "type": "string" + }, + "remarketingAudienceId": { + "description": "The ID of the remarketing audience to retrieve.", + "location": "path", + "required": true, + "type": "string" + }, + "webPropertyId": { + "description": "The web property ID of the remarketing audience to retrieve.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/remarketingAudiences/{remarketingAudienceId}", + "response": { + "$ref": "RemarketingAudience" + }, + "scopes": [ + "https://www.googleapis.com/auth/analytics.edit", + "https://www.googleapis.com/auth/analytics.readonly" + ] + }, + "insert": { + "description": "Creates a new remarketing audience.", + "httpMethod": "POST", + "id": "analytics.management.remarketingAudience.insert", + "parameterOrder": [ + "accountId", + "webPropertyId" + ], + "parameters": { + "accountId": { + "description": "The account ID for which to create the remarketing audience.", + "location": "path", + "required": true, + "type": "string" + }, + "webPropertyId": { + "description": "Web property ID for which to create the remarketing audience.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/remarketingAudiences", + "request": { + "$ref": "RemarketingAudience" + }, + "response": { + "$ref": "RemarketingAudience" + }, + "scopes": [ + "https://www.googleapis.com/auth/analytics.edit" + ] + }, + "list": { + "description": "Lists remarketing audiences to which the user has access.", + "httpMethod": "GET", + "id": "analytics.management.remarketingAudience.list", + "parameterOrder": [ + "accountId", + "webPropertyId" + ], + "parameters": { + "accountId": { + "description": "The account ID of the remarketing audiences to retrieve.", + "location": "path", + "required": true, + "type": "string" + }, + "max-results": { + "description": "The maximum number of remarketing audiences to include in this response.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "start-index": { + "description": "An index of the first entity to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter.", + "format": "int32", + "location": "query", + "minimum": "1", + "type": "integer" + }, + "type": { + "default": "all", + "location": "query", + "type": "string" + }, + "webPropertyId": { + "description": "The web property ID of the remarketing audiences to retrieve.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/remarketingAudiences", + "response": { + "$ref": "RemarketingAudiences" + }, + "scopes": [ + "https://www.googleapis.com/auth/analytics.edit", + "https://www.googleapis.com/auth/analytics.readonly" + ] + }, + "patch": { + "description": "Updates an existing remarketing audience. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "analytics.management.remarketingAudience.patch", + "parameterOrder": [ + "accountId", + "webPropertyId", + "remarketingAudienceId" + ], + "parameters": { + "accountId": { + "description": "The account ID of the remarketing audience to update.", + "location": "path", + "required": true, + "type": "string" + }, + "remarketingAudienceId": { + "description": "The ID of the remarketing audience to update.", + "location": "path", + "required": true, + "type": "string" + }, + "webPropertyId": { + "description": "The web property ID of the remarketing audience to update.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/remarketingAudiences/{remarketingAudienceId}", + "request": { + "$ref": "RemarketingAudience" + }, + "response": { + "$ref": "RemarketingAudience" + }, + "scopes": [ + "https://www.googleapis.com/auth/analytics.edit" + ] + }, + "update": { + "description": "Updates an existing remarketing audience.", + "httpMethod": "PUT", + "id": "analytics.management.remarketingAudience.update", + "parameterOrder": [ + "accountId", + "webPropertyId", + "remarketingAudienceId" + ], + "parameters": { + "accountId": { + "description": "The account ID of the remarketing audience to update.", + "location": "path", + "required": true, + "type": "string" + }, + "remarketingAudienceId": { + "description": "The ID of the remarketing audience to update.", + "location": "path", + "required": true, + "type": "string" + }, + "webPropertyId": { + "description": "The web property ID of the remarketing audience to update.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/remarketingAudiences/{remarketingAudienceId}", + "request": { + "$ref": "RemarketingAudience" + }, + "response": { + "$ref": "RemarketingAudience" + }, + "scopes": [ + "https://www.googleapis.com/auth/analytics.edit" + ] + } + } + }, + "segments": { + "methods": { + "list": { + "description": "Lists segments to which the user has access.", + "httpMethod": "GET", + "id": "analytics.management.segments.list", + "parameters": { + "max-results": { + "description": "The maximum number of segments to include in this response.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "start-index": { + "description": "An index of the first segment to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter.", + "format": "int32", + "location": "query", + "minimum": "1", + "type": "integer" + } + }, + "path": "management/segments", + "response": { + "$ref": "Segments" + }, + "scopes": [ + "https://www.googleapis.com/auth/analytics", + "https://www.googleapis.com/auth/analytics.edit", + "https://www.googleapis.com/auth/analytics.readonly" + ] + } + } + }, + "unsampledReports": { + "methods": { + "delete": { + "description": "Deletes an unsampled report.", + "httpMethod": "DELETE", + "id": "analytics.management.unsampledReports.delete", + "parameterOrder": [ + "accountId", + "webPropertyId", + "profileId", + "unsampledReportId" + ], + "parameters": { + "accountId": { + "description": "Account ID to delete the unsampled report for.", + "location": "path", + "required": true, + "type": "string" + }, + "profileId": { + "description": "View (Profile) ID to delete the unsampled report for.", + "location": "path", + "required": true, + "type": "string" + }, + "unsampledReportId": { + "description": "ID of the unsampled report to be deleted.", + "location": "path", + "required": true, + "type": "string" + }, + "webPropertyId": { + "description": "Web property ID to delete the unsampled reports for.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/unsampledReports/{unsampledReportId}", + "scopes": [ + "https://www.googleapis.com/auth/analytics.edit" + ] + }, + "get": { + "description": "Returns a single unsampled report.", + "httpMethod": "GET", + "id": "analytics.management.unsampledReports.get", + "parameterOrder": [ + "accountId", + "webPropertyId", + "profileId", + "unsampledReportId" + ], + "parameters": { + "accountId": { + "description": "Account ID to retrieve unsampled report for.", + "location": "path", + "required": true, + "type": "string" + }, + "profileId": { + "description": "View (Profile) ID to retrieve unsampled report for.", + "location": "path", + "required": true, + "type": "string" + }, + "unsampledReportId": { + "description": "ID of the unsampled report to retrieve.", + "location": "path", + "required": true, + "type": "string" + }, + "webPropertyId": { + "description": "Web property ID to retrieve unsampled reports for.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/unsampledReports/{unsampledReportId}", + "response": { + "$ref": "UnsampledReport" + }, + "scopes": [ + "https://www.googleapis.com/auth/analytics", + "https://www.googleapis.com/auth/analytics.edit", + "https://www.googleapis.com/auth/analytics.readonly" + ] + }, + "insert": { + "description": "Create a new unsampled report.", + "httpMethod": "POST", + "id": "analytics.management.unsampledReports.insert", + "parameterOrder": [ + "accountId", + "webPropertyId", + "profileId" + ], + "parameters": { + "accountId": { + "description": "Account ID to create the unsampled report for.", + "location": "path", + "required": true, + "type": "string" + }, + "profileId": { + "description": "View (Profile) ID to create the unsampled report for.", + "location": "path", + "required": true, + "type": "string" + }, + "webPropertyId": { + "description": "Web property ID to create the unsampled report for.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/unsampledReports", + "request": { + "$ref": "UnsampledReport" + }, + "response": { + "$ref": "UnsampledReport" + }, + "scopes": [ + "https://www.googleapis.com/auth/analytics", + "https://www.googleapis.com/auth/analytics.edit" + ] + }, + "list": { + "description": "Lists unsampled reports to which the user has access.", + "httpMethod": "GET", + "id": "analytics.management.unsampledReports.list", + "parameterOrder": [ + "accountId", + "webPropertyId", + "profileId" + ], + "parameters": { + "accountId": { + "description": "Account ID to retrieve unsampled reports for. Must be a specific account ID, ~all is not supported.", + "location": "path", + "required": true, + "type": "string" + }, + "max-results": { + "description": "The maximum number of unsampled reports to include in this response.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "profileId": { + "description": "View (Profile) ID to retrieve unsampled reports for. Must be a specific view (profile) ID, ~all is not supported.", + "location": "path", + "required": true, + "type": "string" + }, + "start-index": { + "description": "An index of the first unsampled report to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter.", + "format": "int32", + "location": "query", + "minimum": "1", + "type": "integer" + }, + "webPropertyId": { + "description": "Web property ID to retrieve unsampled reports for. Must be a specific web property ID, ~all is not supported.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/unsampledReports", + "response": { + "$ref": "UnsampledReports" + }, + "scopes": [ + "https://www.googleapis.com/auth/analytics", + "https://www.googleapis.com/auth/analytics.edit", + "https://www.googleapis.com/auth/analytics.readonly" + ] + } + } + }, + "uploads": { + "methods": { + "deleteUploadData": { + "description": "Delete data associated with a previous upload.", + "httpMethod": "POST", + "id": "analytics.management.uploads.deleteUploadData", + "parameterOrder": [ + "accountId", + "webPropertyId", + "customDataSourceId" + ], + "parameters": { + "accountId": { + "description": "Account Id for the uploads to be deleted.", + "location": "path", + "pattern": "\\d+", + "required": true, + "type": "string" + }, + "customDataSourceId": { + "description": "Custom data source Id for the uploads to be deleted.", + "location": "path", + "pattern": ".{22}", + "required": true, + "type": "string" + }, + "webPropertyId": { + "description": "Web property Id for the uploads to be deleted.", + "location": "path", + "pattern": "UA-(\\d+)-(\\d+)", + "required": true, + "type": "string" + } + }, + "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/customDataSources/{customDataSourceId}/deleteUploadData", + "request": { + "$ref": "AnalyticsDataimportDeleteUploadDataRequest" + }, + "scopes": [ + "https://www.googleapis.com/auth/analytics", + "https://www.googleapis.com/auth/analytics.edit" + ] + }, + "get": { + "description": "List uploads to which the user has access.", + "httpMethod": "GET", + "id": "analytics.management.uploads.get", + "parameterOrder": [ + "accountId", + "webPropertyId", + "customDataSourceId", + "uploadId" + ], + "parameters": { + "accountId": { + "description": "Account Id for the upload to retrieve.", + "location": "path", + "pattern": "\\d+", + "required": true, + "type": "string" + }, + "customDataSourceId": { + "description": "Custom data source Id for upload to retrieve.", + "location": "path", + "pattern": ".{22}", + "required": true, + "type": "string" + }, + "uploadId": { + "description": "Upload Id to retrieve.", + "location": "path", + "pattern": ".{22}", + "required": true, + "type": "string" + }, + "webPropertyId": { + "description": "Web property Id for the upload to retrieve.", + "location": "path", + "pattern": "UA-(\\d+)-(\\d+)", + "required": true, + "type": "string" + } + }, + "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/customDataSources/{customDataSourceId}/uploads/{uploadId}", + "response": { + "$ref": "Upload" + }, + "scopes": [ + "https://www.googleapis.com/auth/analytics", + "https://www.googleapis.com/auth/analytics.edit", + "https://www.googleapis.com/auth/analytics.readonly" + ] + }, + "list": { + "description": "List uploads to which the user has access.", + "httpMethod": "GET", + "id": "analytics.management.uploads.list", + "parameterOrder": [ + "accountId", + "webPropertyId", + "customDataSourceId" + ], + "parameters": { + "accountId": { + "description": "Account Id for the uploads to retrieve.", + "location": "path", + "pattern": "\\d+", + "required": true, + "type": "string" + }, + "customDataSourceId": { + "description": "Custom data source Id for uploads to retrieve.", + "location": "path", + "pattern": ".{22}", + "required": true, + "type": "string" + }, + "max-results": { + "description": "The maximum number of uploads to include in this response.", + "format": "int32", + "location": "query", + "minimum": "1", + "type": "integer" + }, + "start-index": { + "description": "A 1-based index of the first upload to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter.", + "format": "int32", + "location": "query", + "minimum": "1", + "type": "integer" + }, + "webPropertyId": { + "description": "Web property Id for the uploads to retrieve.", + "location": "path", + "pattern": "UA-(\\d+)-(\\d+)", + "required": true, + "type": "string" + } + }, + "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/customDataSources/{customDataSourceId}/uploads", + "response": { + "$ref": "Uploads" + }, + "scopes": [ + "https://www.googleapis.com/auth/analytics", + "https://www.googleapis.com/auth/analytics.edit", + "https://www.googleapis.com/auth/analytics.readonly" + ] + }, + "uploadData": { + "description": "Upload data for a custom data source.", + "httpMethod": "POST", + "id": "analytics.management.uploads.uploadData", + "mediaUpload": { + "accept": [ + "application/octet-stream" + ], + "maxSize": "1GB", + "protocols": { + "resumable": { + "multipart": true, + "path": "/resumable/upload/analytics/v3/management/accounts/{accountId}/webproperties/{webPropertyId}/customDataSources/{customDataSourceId}/uploads" + }, + "simple": { + "multipart": true, + "path": "/upload/analytics/v3/management/accounts/{accountId}/webproperties/{webPropertyId}/customDataSources/{customDataSourceId}/uploads" + } + } + }, + "parameterOrder": [ + "accountId", + "webPropertyId", + "customDataSourceId" + ], + "parameters": { + "accountId": { + "description": "Account Id associated with the upload.", + "location": "path", + "pattern": "\\d+", + "required": true, + "type": "string" + }, + "customDataSourceId": { + "description": "Custom data source Id to which the data being uploaded belongs.", + "location": "path", + "required": true, + "type": "string" + }, + "webPropertyId": { + "description": "Web property UA-string associated with the upload.", + "location": "path", + "pattern": "UA-\\d+-\\d+", + "required": true, + "type": "string" + } + }, + "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/customDataSources/{customDataSourceId}/uploads", + "response": { + "$ref": "Upload" + }, + "scopes": [ + "https://www.googleapis.com/auth/analytics", + "https://www.googleapis.com/auth/analytics.edit" + ], + "supportsMediaUpload": true + } + } + }, + "webPropertyAdWordsLinks": { + "methods": { + "delete": { + "description": "Deletes a web property-AdWords link.", + "httpMethod": "DELETE", + "id": "analytics.management.webPropertyAdWordsLinks.delete", + "parameterOrder": [ + "accountId", + "webPropertyId", + "webPropertyAdWordsLinkId" + ], + "parameters": { + "accountId": { + "description": "ID of the account which the given web property belongs to.", + "location": "path", + "required": true, + "type": "string" + }, + "webPropertyAdWordsLinkId": { + "description": "Web property AdWords link ID.", + "location": "path", + "required": true, + "type": "string" + }, + "webPropertyId": { + "description": "Web property ID to delete the AdWords link for.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/entityAdWordsLinks/{webPropertyAdWordsLinkId}", + "scopes": [ + "https://www.googleapis.com/auth/analytics.edit" + ] + }, + "get": { + "description": "Returns a web property-AdWords link to which the user has access.", + "httpMethod": "GET", + "id": "analytics.management.webPropertyAdWordsLinks.get", + "parameterOrder": [ + "accountId", + "webPropertyId", + "webPropertyAdWordsLinkId" + ], + "parameters": { + "accountId": { + "description": "ID of the account which the given web property belongs to.", + "location": "path", + "required": true, + "type": "string" + }, + "webPropertyAdWordsLinkId": { + "description": "Web property-AdWords link ID.", + "location": "path", + "required": true, + "type": "string" + }, + "webPropertyId": { + "description": "Web property ID to retrieve the AdWords link for.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/entityAdWordsLinks/{webPropertyAdWordsLinkId}", + "response": { + "$ref": "EntityAdWordsLink" + }, + "scopes": [ + "https://www.googleapis.com/auth/analytics.edit", + "https://www.googleapis.com/auth/analytics.readonly" + ] + }, + "insert": { + "description": "Creates a webProperty-AdWords link.", + "httpMethod": "POST", + "id": "analytics.management.webPropertyAdWordsLinks.insert", + "parameterOrder": [ + "accountId", + "webPropertyId" + ], + "parameters": { + "accountId": { + "description": "ID of the Google Analytics account to create the link for.", + "location": "path", + "required": true, + "type": "string" + }, + "webPropertyId": { + "description": "Web property ID to create the link for.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/entityAdWordsLinks", + "request": { + "$ref": "EntityAdWordsLink" + }, + "response": { + "$ref": "EntityAdWordsLink" + }, + "scopes": [ + "https://www.googleapis.com/auth/analytics.edit" + ] + }, + "list": { + "description": "Lists webProperty-AdWords links for a given web property.", + "httpMethod": "GET", + "id": "analytics.management.webPropertyAdWordsLinks.list", + "parameterOrder": [ + "accountId", + "webPropertyId" + ], + "parameters": { + "accountId": { + "description": "ID of the account which the given web property belongs to.", + "location": "path", + "pattern": "\\d+", + "required": true, + "type": "string" + }, + "max-results": { + "description": "The maximum number of webProperty-AdWords links to include in this response.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "start-index": { + "description": "An index of the first webProperty-AdWords link to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter.", + "format": "int32", + "location": "query", + "minimum": "1", + "type": "integer" + }, + "webPropertyId": { + "description": "Web property ID to retrieve the AdWords links for.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/entityAdWordsLinks", + "response": { + "$ref": "EntityAdWordsLinks" + }, + "scopes": [ + "https://www.googleapis.com/auth/analytics.edit", + "https://www.googleapis.com/auth/analytics.readonly" + ] + }, + "patch": { + "description": "Updates an existing webProperty-AdWords link. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "analytics.management.webPropertyAdWordsLinks.patch", + "parameterOrder": [ + "accountId", + "webPropertyId", + "webPropertyAdWordsLinkId" + ], + "parameters": { + "accountId": { + "description": "ID of the account which the given web property belongs to.", + "location": "path", + "required": true, + "type": "string" + }, + "webPropertyAdWordsLinkId": { + "description": "Web property-AdWords link ID.", + "location": "path", + "required": true, + "type": "string" + }, + "webPropertyId": { + "description": "Web property ID to retrieve the AdWords link for.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/entityAdWordsLinks/{webPropertyAdWordsLinkId}", + "request": { + "$ref": "EntityAdWordsLink" + }, + "response": { + "$ref": "EntityAdWordsLink" + }, + "scopes": [ + "https://www.googleapis.com/auth/analytics.edit" + ] + }, + "update": { + "description": "Updates an existing webProperty-AdWords link.", + "httpMethod": "PUT", + "id": "analytics.management.webPropertyAdWordsLinks.update", + "parameterOrder": [ + "accountId", + "webPropertyId", + "webPropertyAdWordsLinkId" + ], + "parameters": { + "accountId": { + "description": "ID of the account which the given web property belongs to.", + "location": "path", + "required": true, + "type": "string" + }, + "webPropertyAdWordsLinkId": { + "description": "Web property-AdWords link ID.", + "location": "path", + "required": true, + "type": "string" + }, + "webPropertyId": { + "description": "Web property ID to retrieve the AdWords link for.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/entityAdWordsLinks/{webPropertyAdWordsLinkId}", + "request": { + "$ref": "EntityAdWordsLink" + }, + "response": { + "$ref": "EntityAdWordsLink" + }, + "scopes": [ + "https://www.googleapis.com/auth/analytics.edit" + ] + } + } + }, + "webproperties": { + "methods": { + "get": { + "description": "Gets a web property to which the user has access.", + "httpMethod": "GET", + "id": "analytics.management.webproperties.get", + "parameterOrder": [ + "accountId", + "webPropertyId" + ], + "parameters": { + "accountId": { + "description": "Account ID to retrieve the web property for.", + "location": "path", + "pattern": "[0-9]+", + "required": true, + "type": "string" + }, + "webPropertyId": { + "description": "ID to retrieve the web property for.", + "location": "path", + "pattern": "UA-[0-9]+-[0-9]+", + "required": true, + "type": "string" + } + }, + "path": "management/accounts/{accountId}/webproperties/{webPropertyId}", + "response": { + "$ref": "Webproperty" + }, + "scopes": [ + "https://www.googleapis.com/auth/analytics.edit", + "https://www.googleapis.com/auth/analytics.readonly" + ] + }, + "insert": { + "description": "Create a new property if the account has fewer than 20 properties. Web properties are visible in the Google Analytics interface only if they have at least one profile.", + "httpMethod": "POST", + "id": "analytics.management.webproperties.insert", + "parameterOrder": [ + "accountId" + ], + "parameters": { + "accountId": { + "description": "Account ID to create the web property for.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "management/accounts/{accountId}/webproperties", + "request": { + "$ref": "Webproperty" + }, + "response": { + "$ref": "Webproperty" + }, + "scopes": [ + "https://www.googleapis.com/auth/analytics.edit" + ] + }, + "list": { + "description": "Lists web properties to which the user has access.", + "httpMethod": "GET", + "id": "analytics.management.webproperties.list", + "parameterOrder": [ + "accountId" + ], + "parameters": { + "accountId": { + "description": "Account ID to retrieve web properties for. Can either be a specific account ID or '~all', which refers to all the accounts that user has access to.", + "location": "path", + "required": true, + "type": "string" + }, + "max-results": { + "description": "The maximum number of web properties to include in this response.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "start-index": { + "description": "An index of the first entity to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter.", + "format": "int32", + "location": "query", + "minimum": "1", + "type": "integer" + } + }, + "path": "management/accounts/{accountId}/webproperties", + "response": { + "$ref": "Webproperties" + }, + "scopes": [ + "https://www.googleapis.com/auth/analytics", + "https://www.googleapis.com/auth/analytics.edit", + "https://www.googleapis.com/auth/analytics.readonly" + ] + }, + "patch": { + "description": "Updates an existing web property. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "analytics.management.webproperties.patch", + "parameterOrder": [ + "accountId", + "webPropertyId" + ], + "parameters": { + "accountId": { + "description": "Account ID to which the web property belongs", + "location": "path", + "required": true, + "type": "string" + }, + "webPropertyId": { + "description": "Web property ID", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "management/accounts/{accountId}/webproperties/{webPropertyId}", + "request": { + "$ref": "Webproperty" + }, + "response": { + "$ref": "Webproperty" + }, + "scopes": [ + "https://www.googleapis.com/auth/analytics.edit" + ] + }, + "update": { + "description": "Updates an existing web property.", + "httpMethod": "PUT", + "id": "analytics.management.webproperties.update", + "parameterOrder": [ + "accountId", + "webPropertyId" + ], + "parameters": { + "accountId": { + "description": "Account ID to which the web property belongs", + "location": "path", + "required": true, + "type": "string" + }, + "webPropertyId": { + "description": "Web property ID", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "management/accounts/{accountId}/webproperties/{webPropertyId}", + "request": { + "$ref": "Webproperty" + }, + "response": { + "$ref": "Webproperty" + }, + "scopes": [ + "https://www.googleapis.com/auth/analytics.edit" + ] + } + } + }, + "webpropertyUserLinks": { + "methods": { + "delete": { + "description": "Removes a user from the given web property.", + "httpMethod": "DELETE", + "id": "analytics.management.webpropertyUserLinks.delete", + "parameterOrder": [ + "accountId", + "webPropertyId", + "linkId" + ], + "parameters": { + "accountId": { + "description": "Account ID to delete the user link for.", + "location": "path", + "required": true, + "type": "string" + }, + "linkId": { + "description": "Link ID to delete the user link for.", + "location": "path", + "required": true, + "type": "string" + }, + "webPropertyId": { + "description": "Web Property ID to delete the user link for.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/entityUserLinks/{linkId}", + "scopes": [ + "https://www.googleapis.com/auth/analytics.manage.users" + ] + }, + "insert": { + "description": "Adds a new user to the given web property.", + "httpMethod": "POST", + "id": "analytics.management.webpropertyUserLinks.insert", + "parameterOrder": [ + "accountId", + "webPropertyId" + ], + "parameters": { + "accountId": { + "description": "Account ID to create the user link for.", + "location": "path", + "required": true, + "type": "string" + }, + "webPropertyId": { + "description": "Web Property ID to create the user link for.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/entityUserLinks", + "request": { + "$ref": "EntityUserLink" + }, + "response": { + "$ref": "EntityUserLink" + }, + "scopes": [ + "https://www.googleapis.com/auth/analytics.manage.users" + ] + }, + "list": { + "description": "Lists webProperty-user links for a given web property.", + "httpMethod": "GET", + "id": "analytics.management.webpropertyUserLinks.list", + "parameterOrder": [ + "accountId", + "webPropertyId" + ], + "parameters": { + "accountId": { + "description": "Account ID which the given web property belongs to.", + "location": "path", + "required": true, + "type": "string" + }, + "max-results": { + "description": "The maximum number of webProperty-user Links to include in this response.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "start-index": { + "description": "An index of the first webProperty-user link to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter.", + "format": "int32", + "location": "query", + "minimum": "1", + "type": "integer" + }, + "webPropertyId": { + "description": "Web Property ID for the webProperty-user links to retrieve. Can either be a specific web property ID or '~all', which refers to all the web properties that user has access to.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/entityUserLinks", + "response": { + "$ref": "EntityUserLinks" + }, + "scopes": [ + "https://www.googleapis.com/auth/analytics.manage.users", + "https://www.googleapis.com/auth/analytics.manage.users.readonly" + ] + }, + "update": { + "description": "Updates permissions for an existing user on the given web property.", + "httpMethod": "PUT", + "id": "analytics.management.webpropertyUserLinks.update", + "parameterOrder": [ + "accountId", + "webPropertyId", + "linkId" + ], + "parameters": { + "accountId": { + "description": "Account ID to update the account-user link for.", + "location": "path", + "required": true, + "type": "string" + }, + "linkId": { + "description": "Link ID to update the account-user link for.", + "location": "path", + "required": true, + "type": "string" + }, + "webPropertyId": { + "description": "Web property ID to update the account-user link for.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/entityUserLinks/{linkId}", + "request": { + "$ref": "EntityUserLink" + }, + "response": { + "$ref": "EntityUserLink" + }, + "scopes": [ + "https://www.googleapis.com/auth/analytics.manage.users" + ] + } + } } - } - }, - "useEventValue": { - "type": "boolean", - "description": "Determines if the event value should be used as the value for this goal." } - } }, - "id": { - "type": "string", - "description": "Goal ID." - }, - "internalWebPropertyId": { - "type": "string", - "description": "Internal ID for the web property to which this goal belongs." - }, - "kind": { - "type": "string", - "description": "Resource type for an Analytics goal.", - "default": "analytics#goal" - }, - "name": { - "type": "string", - "description": "Goal name." - }, - "parentLink": { - "type": "object", - "description": "Parent link for a goal. Points to the view (profile) to which this goal belongs.", - "properties": { - "href": { - "type": "string", - "description": "Link to the view (profile) to which this goal belongs." - }, - "type": { - "type": "string", - "description": "Value is \"analytics#profile\".", - "default": "analytics#profile" - } - } - }, - "profileId": { - "type": "string", - "description": "View (Profile) ID to which this goal belongs." - }, - "selfLink": { - "type": "string", - "description": "Link for this goal." - }, - "type": { - "type": "string", - "description": "Goal type. Possible values are URL_DESTINATION, VISIT_TIME_ON_SITE, VISIT_NUM_PAGES, AND EVENT." - }, - "updated": { - "type": "string", - "description": "Time this goal was last modified.", - "format": "date-time" - }, - "urlDestinationDetails": { - "type": "object", - "description": "Details for the goal of the type URL_DESTINATION.", - "properties": { - "caseSensitive": { - "type": "boolean", - "description": "Determines if the goal URL must exactly match the capitalization of visited URLs." - }, - "firstStepRequired": { - "type": "boolean", - "description": "Determines if the first step in this goal is required." - }, - "matchType": { - "type": "string", - "description": "Match type for the goal URL. Possible values are HEAD, EXACT, or REGEX." - }, - "steps": { - "type": "array", - "description": "List of steps configured for this goal funnel.", - "items": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "Step name." - }, - "number": { - "type": "integer", - "description": "Step number.", - "format": "int32" - }, - "url": { - "type": "string", - "description": "URL for this step." - } + "metadata": { + "resources": { + "columns": { + "methods": { + "list": { + "description": "Lists all columns for a report type", + "httpMethod": "GET", + "id": "analytics.metadata.columns.list", + "parameterOrder": [ + "reportType" + ], + "parameters": { + "reportType": { + "description": "Report type. Allowed Values: 'ga'. Where 'ga' corresponds to the Core Reporting API", + "location": "path", + "pattern": "ga", + "required": true, + "type": "string" + } + }, + "path": "metadata/{reportType}/columns", + "response": { + "$ref": "Columns" + }, + "scopes": [ + "https://www.googleapis.com/auth/analytics", + "https://www.googleapis.com/auth/analytics.edit", + "https://www.googleapis.com/auth/analytics.readonly" + ] + } + } } - } - }, - "url": { - "type": "string", - "description": "URL for this goal." } - } }, - "value": { - "type": "number", - "description": "Goal value.", - "format": "float" - }, - "visitNumPagesDetails": { - "type": "object", - "description": "Details for the goal of the type VISIT_NUM_PAGES.", - "properties": { - "comparisonType": { - "type": "string", - "description": "Type of comparison. Possible values are LESS_THAN, GREATER_THAN, or EQUAL." - }, - "comparisonValue": { - "type": "string", - "description": "Value used for this comparison.", - "format": "int64" + "provisioning": { + "methods": { + "createAccountTicket": { + "description": "Creates an account ticket.", + "httpMethod": "POST", + "id": "analytics.provisioning.createAccountTicket", + "path": "provisioning/createAccountTicket", + "request": { + "$ref": "AccountTicket" + }, + "response": { + "$ref": "AccountTicket" + }, + "scopes": [ + "https://www.googleapis.com/auth/analytics.provision" + ] + }, + "createAccountTree": { + "description": "Provision account.", + "httpMethod": "POST", + "id": "analytics.provisioning.createAccountTree", + "path": "provisioning/createAccountTree", + "request": { + "$ref": "AccountTreeRequest" + }, + "response": { + "$ref": "AccountTreeResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/analytics.provision" + ] + } } - } - }, - "visitTimeOnSiteDetails": { - "type": "object", - "description": "Details for the goal of the type VISIT_TIME_ON_SITE.", - "properties": { - "comparisonType": { - "type": "string", - "description": "Type of comparison. Possible values are LESS_THAN or GREATER_THAN." - }, - "comparisonValue": { - "type": "string", - "description": "Value used for this comparison.", - "format": "int64" - } - } - }, - "webPropertyId": { - "type": "string", - "description": "Web property ID to which this goal belongs. The web property ID is of the form UA-XXXXX-YY." } - } }, - "Goals": { - "id": "Goals", - "type": "object", - "description": "A goal collection lists Analytics goals to which the user has access. Each view (profile) can have a set of goals. Each resource in the Goal collection corresponds to a single Analytics goal.", - "properties": { - "items": { - "type": "array", - "description": "A list of goals.", - "items": { - "$ref": "Goal" - } - }, - "itemsPerPage": { - "type": "integer", - "description": "The maximum number of resources the response can contain, regardless of the actual number of resources returned. Its value ranges from 1 to 1000 with a value of 1000 by default, or otherwise specified by the max-results query parameter.", - "format": "int32" - }, - "kind": { - "type": "string", - "description": "Collection type.", - "default": "analytics#goals" - }, - "nextLink": { - "type": "string", - "description": "Link to next page for this goal collection." - }, - "previousLink": { - "type": "string", - "description": "Link to previous page for this goal collection." - }, - "startIndex": { - "type": "integer", - "description": "The starting index of the resources, which is 1 by default or otherwise specified by the start-index query parameter.", - "format": "int32" - }, - "totalResults": { - "type": "integer", - "description": "The total number of results for the query, regardless of the number of resources in the result.", - "format": "int32" - }, - "username": { - "type": "string", - "description": "Email ID of the authenticated user" - } - } - }, - "IncludeConditions": { - "id": "IncludeConditions", - "type": "object", - "description": "JSON template for an Analytics Remarketing Include Conditions.", - "properties": { - "daysToLookBack": { - "type": "integer", - "description": "The look-back window lets you specify a time frame for evaluating the behavior that qualifies users for your audience. For example, if your filters include users from Central Asia, and Transactions Greater than 2, and you set the look-back window to 14 days, then any user from Central Asia whose cumulative transactions exceed 2 during the last 14 days is added to the audience.", - "format": "int32" - }, - "isSmartList": { - "type": "boolean", - "description": "Boolean indicating whether this segment is a smart list. https://support.google.com/analytics/answer/4628577" - }, - "kind": { - "type": "string", - "description": "Resource type for include conditions.", - "default": "analytics#includeConditions" - }, - "membershipDurationDays": { - "type": "integer", - "description": "Number of days (in the range 1 to 540) a user remains in the audience.", - "format": "int32" - }, - "segment": { - "type": "string", - "description": "The segment condition that will cause a user to be added to an audience." - } - } - }, - "LinkedForeignAccount": { - "id": "LinkedForeignAccount", - "type": "object", - "description": "JSON template for an Analytics Remarketing Audience Foreign Link.", - "properties": { - "accountId": { - "type": "string", - "description": "Account ID to which this linked foreign account belongs." - }, - "eligibleForSearch": { - "type": "boolean", - "description": "Boolean indicating whether this is eligible for search.", - "readOnly": true - }, - "id": { - "type": "string", - "description": "Entity ad account link ID." - }, - "internalWebPropertyId": { - "type": "string", - "description": "Internal ID for the web property to which this linked foreign account belongs.", - "readOnly": true - }, - "kind": { - "type": "string", - "description": "Resource type for linked foreign account.", - "default": "analytics#linkedForeignAccount" - }, - "linkedAccountId": { - "type": "string", - "description": "The foreign account ID. For example the an AdWords `linkedAccountId` has the following format XXX-XXX-XXXX." - }, - "remarketingAudienceId": { - "type": "string", - "description": "Remarketing audience ID to which this linked foreign account belongs." - }, - "status": { - "type": "string", - "description": "The status of this foreign account link." - }, - "type": { - "type": "string", - "description": "The type of the foreign account. For example, `ADWORDS_LINKS`, `DBM_LINKS`, `MCC_LINKS` or `OPTIMIZE`." - }, - "webPropertyId": { - "type": "string", - "description": "Web property ID of the form UA-XXXXX-YY to which this linked foreign account belongs." - } - } - }, - "McfData": { - "id": "McfData", - "type": "object", - "description": "Multi-Channel Funnels data for a given view (profile).", - "properties": { - "columnHeaders": { - "type": "array", - "description": "Column headers that list dimension names followed by the metric names. The order of dimensions and metrics is same as specified in the request.", - "items": { - "type": "object", + "revision": "20180309", + "rootUrl": "https://www.googleapis.com/", + "schemas": { + "Account": { + "description": "JSON template for Analytics account entry.", + "id": "Account", "properties": { - "columnType": { - "type": "string", - "description": "Column Type. Either DIMENSION or METRIC." - }, - "dataType": { - "type": "string", - "description": "Data type. Dimension and metric values data types such as INTEGER, DOUBLE, CURRENCY, MCF_SEQUENCE etc." - }, - "name": { - "type": "string", - "description": "Column name." - } - } - } - }, - "containsSampledData": { - "type": "boolean", - "description": "Determines if the Analytics data contains sampled data." - }, - "id": { - "type": "string", - "description": "Unique ID for this data response." - }, - "itemsPerPage": { - "type": "integer", - "description": "The maximum number of rows the response can contain, regardless of the actual number of rows returned. Its value ranges from 1 to 10,000 with a value of 1000 by default, or otherwise specified by the max-results query parameter.", - "format": "int32" - }, - "kind": { - "type": "string", - "description": "Resource type.", - "default": "analytics#mcfData" - }, - "nextLink": { - "type": "string", - "description": "Link to next page for this Analytics data query." - }, - "previousLink": { - "type": "string", - "description": "Link to previous page for this Analytics data query." - }, - "profileInfo": { - "type": "object", - "description": "Information for the view (profile), for which the Analytics data was requested.", - "properties": { - "accountId": { - "type": "string", - "description": "Account ID to which this view (profile) belongs." - }, - "internalWebPropertyId": { - "type": "string", - "description": "Internal ID for the web property to which this view (profile) belongs." - }, - "profileId": { - "type": "string", - "description": "View (Profile) ID." - }, - "profileName": { - "type": "string", - "description": "View (Profile) name." - }, - "tableId": { - "type": "string", - "description": "Table ID for view (profile)." - }, - "webPropertyId": { - "type": "string", - "description": "Web Property ID to which this view (profile) belongs." - } - } - }, - "query": { - "type": "object", - "description": "Analytics data request query parameters.", - "properties": { - "dimensions": { - "type": "string", - "description": "List of analytics dimensions." - }, - "end-date": { - "type": "string", - "description": "End date." - }, - "filters": { - "type": "string", - "description": "Comma-separated list of dimension or metric filters." - }, - "ids": { - "type": "string", - "description": "Unique table ID." - }, - "max-results": { - "type": "integer", - "description": "Maximum results per page.", - "format": "int32" - }, - "metrics": { - "type": "array", - "description": "List of analytics metrics.", - "items": { - "type": "string" - } - }, - "samplingLevel": { - "type": "string", - "description": "Desired sampling level" - }, - "segment": { - "type": "string", - "description": "Analytics advanced segment." - }, - "sort": { - "type": "array", - "description": "List of dimensions or metrics based on which Analytics data is sorted.", - "items": { - "type": "string" - } - }, - "start-date": { - "type": "string", - "description": "Start date." - }, - "start-index": { - "type": "integer", - "description": "Start index.", - "format": "int32" - } - } - }, - "rows": { - "type": "array", - "description": "Analytics data rows, where each row contains a list of dimension values followed by the metric values. The order of dimensions and metrics is same as specified in the request.", - "items": { - "type": "array", - "items": { - "type": "object", - "description": "A union object representing a dimension or metric value. Only one of \"primitiveValue\" or \"conversionPathValue\" attribute will be populated.", - "properties": { - "conversionPathValue": { - "type": "array", - "description": "A conversion path dimension value, containing a list of interactions with their attributes.", - "items": { - "type": "object", + "childLink": { + "description": "Child link for an account entry. Points to the list of web properties for this account.", "properties": { - "interactionType": { - "type": "string", - "description": "Type of an interaction on conversion path. Such as CLICK, IMPRESSION etc." - }, - "nodeValue": { - "type": "string", - "description": "Node value of an interaction on conversion path. Such as source, medium etc." - } - } - } + "href": { + "description": "Link to the list of web properties for this account.", + "type": "string" + }, + "type": { + "default": "analytics#webproperties", + "description": "Type of the child link. Its value is \"analytics#webproperties\".", + "type": "string" + } + }, + "type": "object" }, - "primitiveValue": { - "type": "string", - "description": "A primitive dimension value. A primitive metric value." + "created": { + "description": "Time the account was created.", + "format": "date-time", + "type": "string" + }, + "id": { + "description": "Account ID.", + "type": "string" + }, + "kind": { + "default": "analytics#account", + "description": "Resource type for Analytics account.", + "type": "string" + }, + "name": { + "description": "Account name.", + "type": "string" + }, + "permissions": { + "description": "Permissions the user has for this account.", + "properties": { + "effective": { + "description": "All the permissions that the user has for this account. These include any implied permissions (e.g., EDIT implies VIEW).", + "items": { + "type": "string" + }, + "readOnly": true, + "type": "array" + } + }, + "type": "object" + }, + "selfLink": { + "description": "Link for this account.", + "type": "string" + }, + "starred": { + "description": "Indicates whether this account is starred or not.", + "type": "boolean" + }, + "updated": { + "description": "Time the account was last modified.", + "format": "date-time", + "type": "string" } - } - } - } - }, - "sampleSize": { - "type": "string", - "description": "The number of samples used to calculate the result.", - "format": "int64" - }, - "sampleSpace": { - "type": "string", - "description": "Total size of the sample space from which the samples were selected.", - "format": "int64" - }, - "selfLink": { - "type": "string", - "description": "Link to this page." - }, - "totalResults": { - "type": "integer", - "description": "The total number of rows for the query, regardless of the number of rows in the response.", - "format": "int32" - }, - "totalsForAllResults": { - "type": "object", - "description": "Total values for the requested metrics over all the results, not just the results returned in this response. The order of the metric totals is same as the metric order specified in the request.", - "additionalProperties": { - "type": "string", - "description": "Key-value pair for the total value of a metric. Key is the metric name and the value is the total value for that metric." - } - } - } - }, - "Profile": { - "id": "Profile", - "type": "object", - "description": "JSON template for an Analytics view (profile).", - "properties": { - "accountId": { - "type": "string", - "description": "Account ID to which this view (profile) belongs." - }, - "botFilteringEnabled": { - "type": "boolean", - "description": "Indicates whether bot filtering is enabled for this view (profile)." - }, - "childLink": { - "type": "object", - "description": "Child link for this view (profile). Points to the list of goals for this view (profile).", - "properties": { - "href": { - "type": "string", - "description": "Link to the list of goals for this view (profile)." }, - "type": { - "type": "string", - "description": "Value is \"analytics#goals\".", - "default": "analytics#goals" - } - } + "type": "object" }, - "created": { - "type": "string", - "description": "Time this view (profile) was created.", - "format": "date-time", - "readOnly": true - }, - "currency": { - "type": "string", - "description": "The currency type associated with this view (profile), defaults to USD. The supported values are:\nUSD, JPY, EUR, GBP, AUD, KRW, BRL, CNY, DKK, RUB, SEK, NOK, PLN, TRY, TWD, HKD, THB, IDR, ARS, MXN, VND, PHP, INR, CHF, CAD, CZK, NZD, HUF, BGN, LTL, ZAR, UAH, AED, BOB, CLP, COP, EGP, HRK, ILS, MAD, MYR, PEN, PKR, RON, RSD, SAR, SGD, VEF, LVL" - }, - "defaultPage": { - "type": "string", - "description": "Default page for this view (profile)." - }, - "eCommerceTracking": { - "type": "boolean", - "description": "Indicates whether ecommerce tracking is enabled for this view (profile)." - }, - "enhancedECommerceTracking": { - "type": "boolean", - "description": "Indicates whether enhanced ecommerce tracking is enabled for this view (profile). This property can only be enabled if ecommerce tracking is enabled." - }, - "excludeQueryParameters": { - "type": "string", - "description": "The query parameters that are excluded from this view (profile)." - }, - "id": { - "type": "string", - "description": "View (Profile) ID." - }, - "internalWebPropertyId": { - "type": "string", - "description": "Internal ID for the web property to which this view (profile) belongs.", - "readOnly": true - }, - "kind": { - "type": "string", - "description": "Resource type for Analytics view (profile).", - "default": "analytics#profile", - "readOnly": true - }, - "name": { - "type": "string", - "description": "Name of this view (profile)." - }, - "parentLink": { - "type": "object", - "description": "Parent link for this view (profile). Points to the web property to which this view (profile) belongs.", - "properties": { - "href": { - "type": "string", - "description": "Link to the web property to which this view (profile) belongs." - }, - "type": { - "type": "string", - "description": "Value is \"analytics#webproperty\".", - "default": "analytics#webproperty" - } - } - }, - "permissions": { - "type": "object", - "description": "Permissions the user has for this view (profile).", - "properties": { - "effective": { - "type": "array", - "description": "All the permissions that the user has for this view (profile). These include any implied permissions (e.g., EDIT implies VIEW) or inherited permissions from the parent web property.", - "readOnly": true, - "items": { - "type": "string" - } - } - } - }, - "selfLink": { - "type": "string", - "description": "Link for this view (profile).", - "readOnly": true - }, - "siteSearchCategoryParameters": { - "type": "string", - "description": "Site search category parameters for this view (profile)." - }, - "siteSearchQueryParameters": { - "type": "string", - "description": "The site search query parameters for this view (profile)." - }, - "starred": { - "type": "boolean", - "description": "Indicates whether this view (profile) is starred or not." - }, - "stripSiteSearchCategoryParameters": { - "type": "boolean", - "description": "Whether or not Analytics will strip search category parameters from the URLs in your reports." - }, - "stripSiteSearchQueryParameters": { - "type": "boolean", - "description": "Whether or not Analytics will strip search query parameters from the URLs in your reports." - }, - "timezone": { - "type": "string", - "description": "Time zone for which this view (profile) has been configured. Time zones are identified by strings from the TZ database." - }, - "type": { - "type": "string", - "description": "View (Profile) type. Supported types: WEB or APP." - }, - "updated": { - "type": "string", - "description": "Time this view (profile) was last modified.", - "format": "date-time", - "readOnly": true - }, - "webPropertyId": { - "type": "string", - "description": "Web property ID of the form UA-XXXXX-YY to which this view (profile) belongs.", - "readOnly": true - }, - "websiteUrl": { - "type": "string", - "description": "Website URL for this view (profile)." - } - } - }, - "ProfileFilterLink": { - "id": "ProfileFilterLink", - "type": "object", - "description": "JSON template for an Analytics profile filter link.", - "properties": { - "filterRef": { - "$ref": "FilterRef", - "description": "Filter for this link." - }, - "id": { - "type": "string", - "description": "Profile filter link ID." - }, - "kind": { - "type": "string", - "description": "Resource type for Analytics filter.", - "default": "analytics#profileFilterLink", - "readOnly": true - }, - "profileRef": { - "$ref": "ProfileRef", - "description": "View (Profile) for this link." - }, - "rank": { - "type": "integer", - "description": "The rank of this profile filter link relative to the other filters linked to the same profile.\nFor readonly (i.e., list and get) operations, the rank always starts at 1.\nFor write (i.e., create, update, or delete) operations, you may specify a value between 0 and 255 inclusively, [0, 255]. In order to insert a link at the end of the list, either don't specify a rank or set a rank to a number greater than the largest rank in the list. In order to insert a link to the beginning of the list specify a rank that is less than or equal to 1. The new link will move all existing filters with the same or lower rank down the list. After the link is inserted/updated/deleted all profile filter links will be renumbered starting at 1.", - "format": "int32" - }, - "selfLink": { - "type": "string", - "description": "Link for this profile filter link.", - "readOnly": true - } - } - }, - "ProfileFilterLinks": { - "id": "ProfileFilterLinks", - "type": "object", - "description": "A profile filter link collection lists profile filter links between profiles and filters. Each resource in the collection corresponds to a profile filter link.", - "properties": { - "items": { - "type": "array", - "description": "A list of profile filter links.", - "items": { - "$ref": "ProfileFilterLink" - } - }, - "itemsPerPage": { - "type": "integer", - "description": "The maximum number of resources the response can contain, regardless of the actual number of resources returned. Its value ranges from 1 to 1,000 with a value of 1000 by default, or otherwise specified by the max-results query parameter.", - "format": "int32" - }, - "kind": { - "type": "string", - "description": "Collection type.", - "default": "analytics#profileFilterLinks" - }, - "nextLink": { - "type": "string", - "description": "Link to next page for this profile filter link collection." - }, - "previousLink": { - "type": "string", - "description": "Link to previous page for this profile filter link collection." - }, - "startIndex": { - "type": "integer", - "description": "The starting index of the resources, which is 1 by default or otherwise specified by the start-index query parameter.", - "format": "int32" - }, - "totalResults": { - "type": "integer", - "description": "The total number of results for the query, regardless of the number of results in the response.", - "format": "int32" - }, - "username": { - "type": "string", - "description": "Email ID of the authenticated user" - } - } - }, - "ProfileRef": { - "id": "ProfileRef", - "type": "object", - "description": "JSON template for a linked view (profile).", - "properties": { - "accountId": { - "type": "string", - "description": "Account ID to which this view (profile) belongs." - }, - "href": { - "type": "string", - "description": "Link for this view (profile)." - }, - "id": { - "type": "string", - "description": "View (Profile) ID." - }, - "internalWebPropertyId": { - "type": "string", - "description": "Internal ID for the web property to which this view (profile) belongs." - }, - "kind": { - "type": "string", - "description": "Analytics view (profile) reference.", - "default": "analytics#profileRef" - }, - "name": { - "type": "string", - "description": "Name of this view (profile)." - }, - "webPropertyId": { - "type": "string", - "description": "Web property ID of the form UA-XXXXX-YY to which this view (profile) belongs." - } - } - }, - "ProfileSummary": { - "id": "ProfileSummary", - "type": "object", - "description": "JSON template for an Analytics ProfileSummary. ProfileSummary returns basic information (i.e., summary) for a profile.", - "properties": { - "id": { - "type": "string", - "description": "View (profile) ID." - }, - "kind": { - "type": "string", - "description": "Resource type for Analytics ProfileSummary.", - "default": "analytics#profileSummary" - }, - "name": { - "type": "string", - "description": "View (profile) name." - }, - "starred": { - "type": "boolean", - "description": "Indicates whether this view (profile) is starred or not." - }, - "type": { - "type": "string", - "description": "View (Profile) type. Supported types: WEB or APP." - } - } - }, - "Profiles": { - "id": "Profiles", - "type": "object", - "description": "A view (profile) collection lists Analytics views (profiles) to which the user has access. Each resource in the collection corresponds to a single Analytics view (profile).", - "properties": { - "items": { - "type": "array", - "description": "A list of views (profiles).", - "items": { - "$ref": "Profile" - } - }, - "itemsPerPage": { - "type": "integer", - "description": "The maximum number of resources the response can contain, regardless of the actual number of resources returned. Its value ranges from 1 to 1000 with a value of 1000 by default, or otherwise specified by the max-results query parameter.", - "format": "int32" - }, - "kind": { - "type": "string", - "description": "Collection type.", - "default": "analytics#profiles" - }, - "nextLink": { - "type": "string", - "description": "Link to next page for this view (profile) collection." - }, - "previousLink": { - "type": "string", - "description": "Link to previous page for this view (profile) collection." - }, - "startIndex": { - "type": "integer", - "description": "The starting index of the resources, which is 1 by default or otherwise specified by the start-index query parameter.", - "format": "int32" - }, - "totalResults": { - "type": "integer", - "description": "The total number of results for the query, regardless of the number of results in the response.", - "format": "int32" - }, - "username": { - "type": "string", - "description": "Email ID of the authenticated user" - } - } - }, - "RealtimeData": { - "id": "RealtimeData", - "type": "object", - "description": "Real time data for a given view (profile).", - "properties": { - "columnHeaders": { - "type": "array", - "description": "Column headers that list dimension names followed by the metric names. The order of dimensions and metrics is same as specified in the request.", - "items": { - "type": "object", + "AccountRef": { + "description": "JSON template for a linked account.", + "id": "AccountRef", "properties": { - "columnType": { - "type": "string", - "description": "Column Type. Either DIMENSION or METRIC." - }, - "dataType": { - "type": "string", - "description": "Data type. Dimension column headers have only STRING as the data type. Metric column headers have data types for metric values such as INTEGER, DOUBLE, CURRENCY etc." - }, - "name": { - "type": "string", - "description": "Column name." - } - } - } - }, - "id": { - "type": "string", - "description": "Unique ID for this data response." - }, - "kind": { - "type": "string", - "description": "Resource type.", - "default": "analytics#realtimeData" - }, - "profileInfo": { - "type": "object", - "description": "Information for the view (profile), for which the real time data was requested.", - "properties": { - "accountId": { - "type": "string", - "description": "Account ID to which this view (profile) belongs." - }, - "internalWebPropertyId": { - "type": "string", - "description": "Internal ID for the web property to which this view (profile) belongs." - }, - "profileId": { - "type": "string", - "description": "View (Profile) ID." - }, - "profileName": { - "type": "string", - "description": "View (Profile) name." - }, - "tableId": { - "type": "string", - "description": "Table ID for view (profile)." - }, - "webPropertyId": { - "type": "string", - "description": "Web Property ID to which this view (profile) belongs." - } - } - }, - "query": { - "type": "object", - "description": "Real time data request query parameters.", - "properties": { - "dimensions": { - "type": "string", - "description": "List of real time dimensions." - }, - "filters": { - "type": "string", - "description": "Comma-separated list of dimension or metric filters." - }, - "ids": { - "type": "string", - "description": "Unique table ID." - }, - "max-results": { - "type": "integer", - "description": "Maximum results per page.", - "format": "int32" - }, - "metrics": { - "type": "array", - "description": "List of real time metrics.", - "items": { - "type": "string" - } - }, - "sort": { - "type": "array", - "description": "List of dimensions or metrics based on which real time data is sorted.", - "items": { - "type": "string" - } - } - } - }, - "rows": { - "type": "array", - "description": "Real time data rows, where each row contains a list of dimension values followed by the metric values. The order of dimensions and metrics is same as specified in the request.", - "items": { - "type": "array", - "items": { - "type": "string" - } - } - }, - "selfLink": { - "type": "string", - "description": "Link to this page." - }, - "totalResults": { - "type": "integer", - "description": "The total number of rows for the query, regardless of the number of rows in the response.", - "format": "int32" - }, - "totalsForAllResults": { - "type": "object", - "description": "Total values for the requested metrics over all the results, not just the results returned in this response. The order of the metric totals is same as the metric order specified in the request.", - "additionalProperties": { - "type": "string", - "description": "Key-value pair for the total value of a metric. Key is the metric name and the value is the total value for that metric." - } - } - } - }, - "RemarketingAudience": { - "id": "RemarketingAudience", - "type": "object", - "description": "JSON template for an Analytics remarketing audience.", - "properties": { - "accountId": { - "type": "string", - "description": "Account ID to which this remarketing audience belongs." - }, - "audienceDefinition": { - "type": "object", - "description": "The simple audience definition that will cause a user to be added to an audience.", - "properties": { - "includeConditions": { - "$ref": "IncludeConditions", - "description": "Defines the conditions to include users to the audience." - } - } - }, - "audienceType": { - "type": "string", - "description": "The type of audience, either SIMPLE or STATE_BASED." - }, - "created": { - "type": "string", - "description": "Time this remarketing audience was created.", - "format": "date-time", - "readOnly": true - }, - "description": { - "type": "string", - "description": "The description of this remarketing audience.", - "readOnly": true - }, - "id": { - "type": "string", - "description": "Remarketing Audience ID." - }, - "internalWebPropertyId": { - "type": "string", - "description": "Internal ID for the web property to which this remarketing audience belongs.", - "readOnly": true - }, - "kind": { - "type": "string", - "description": "Collection type.", - "default": "analytics#remarketingAudience" - }, - "linkedAdAccounts": { - "type": "array", - "description": "The linked ad accounts associated with this remarketing audience. A remarketing audience can have only one linkedAdAccount currently.", - "items": { - "$ref": "LinkedForeignAccount" - } - }, - "linkedViews": { - "type": "array", - "description": "The views (profiles) that this remarketing audience is linked to.", - "items": { - "type": "string" - } - }, - "name": { - "type": "string", - "description": "The name of this remarketing audience." - }, - "stateBasedAudienceDefinition": { - "type": "object", - "description": "A state based audience definition that will cause a user to be added or removed from an audience.", - "properties": { - "excludeConditions": { - "type": "object", - "description": "Defines the conditions to exclude users from the audience.", - "properties": { - "exclusionDuration": { - "type": "string", - "description": "Whether to make the exclusion TEMPORARY or PERMANENT." + "href": { + "description": "Link for this account.", + "type": "string" }, - "segment": { - "type": "string", - "description": "The segment condition that will cause a user to be removed from an audience." + "id": { + "description": "Account ID.", + "type": "string" + }, + "kind": { + "default": "analytics#accountRef", + "description": "Analytics account reference.", + "type": "string" + }, + "name": { + "description": "Account name.", + "type": "string" } - } }, - "includeConditions": { - "$ref": "IncludeConditions", - "description": "Defines the conditions to include users to the audience." - } - } + "type": "object" }, - "updated": { - "type": "string", - "description": "Time this remarketing audience was last modified.", - "format": "date-time", - "readOnly": true - }, - "webPropertyId": { - "type": "string", - "description": "Web property ID of the form UA-XXXXX-YY to which this remarketing audience belongs." - } - } - }, - "RemarketingAudiences": { - "id": "RemarketingAudiences", - "type": "object", - "description": "A remarketing audience collection lists Analytics remarketing audiences to which the user has access. Each resource in the collection corresponds to a single Analytics remarketing audience.", - "properties": { - "items": { - "type": "array", - "description": "A list of remarketing audiences.", - "items": { - "$ref": "RemarketingAudience" - } - }, - "itemsPerPage": { - "type": "integer", - "description": "The maximum number of resources the response can contain, regardless of the actual number of resources returned. Its value ranges from 1 to 1000 with a value of 1000 by default, or otherwise specified by the max-results query parameter.", - "format": "int32" - }, - "kind": { - "type": "string", - "description": "Collection type.", - "default": "analytics#remarketingAudiences" - }, - "nextLink": { - "type": "string", - "description": "Link to next page for this remarketing audience collection." - }, - "previousLink": { - "type": "string", - "description": "Link to previous page for this view (profile) collection." - }, - "startIndex": { - "type": "integer", - "description": "The starting index of the resources, which is 1 by default or otherwise specified by the start-index query parameter.", - "format": "int32" - }, - "totalResults": { - "type": "integer", - "description": "The total number of results for the query, regardless of the number of results in the response.", - "format": "int32" - }, - "username": { - "type": "string", - "description": "Email ID of the authenticated user" - } - } - }, - "Segment": { - "id": "Segment", - "type": "object", - "description": "JSON template for an Analytics segment.", - "properties": { - "created": { - "type": "string", - "description": "Time the segment was created.", - "format": "date-time" - }, - "definition": { - "type": "string", - "description": "Segment definition." - }, - "id": { - "type": "string", - "description": "Segment ID." - }, - "kind": { - "type": "string", - "description": "Resource type for Analytics segment.", - "default": "analytics#segment" - }, - "name": { - "type": "string", - "description": "Segment name." - }, - "segmentId": { - "type": "string", - "description": "Segment ID. Can be used with the 'segment' parameter in Core Reporting API." - }, - "selfLink": { - "type": "string", - "description": "Link for this segment." - }, - "type": { - "type": "string", - "description": "Type for a segment. Possible values are \"BUILT_IN\" or \"CUSTOM\"." - }, - "updated": { - "type": "string", - "description": "Time the segment was last modified.", - "format": "date-time" - } - } - }, - "Segments": { - "id": "Segments", - "type": "object", - "description": "An segment collection lists Analytics segments that the user has access to. Each resource in the collection corresponds to a single Analytics segment.", - "properties": { - "items": { - "type": "array", - "description": "A list of segments.", - "items": { - "$ref": "Segment" - } - }, - "itemsPerPage": { - "type": "integer", - "description": "The maximum number of resources the response can contain, regardless of the actual number of resources returned. Its value ranges from 1 to 1000 with a value of 1000 by default, or otherwise specified by the max-results query parameter.", - "format": "int32" - }, - "kind": { - "type": "string", - "description": "Collection type for segments.", - "default": "analytics#segments" - }, - "nextLink": { - "type": "string", - "description": "Link to next page for this segment collection." - }, - "previousLink": { - "type": "string", - "description": "Link to previous page for this segment collection." - }, - "startIndex": { - "type": "integer", - "description": "The starting index of the resources, which is 1 by default or otherwise specified by the start-index query parameter.", - "format": "int32" - }, - "totalResults": { - "type": "integer", - "description": "The total number of results for the query, regardless of the number of results in the response.", - "format": "int32" - }, - "username": { - "type": "string", - "description": "Email ID of the authenticated user" - } - } - }, - "UnsampledReport": { - "id": "UnsampledReport", - "type": "object", - "description": "JSON template for Analytics unsampled report resource.", - "properties": { - "accountId": { - "type": "string", - "description": "Account ID to which this unsampled report belongs." - }, - "cloudStorageDownloadDetails": { - "type": "object", - "description": "Download details for a file stored in Google Cloud Storage.", - "readOnly": true, - "properties": { - "bucketId": { - "type": "string", - "description": "Id of the bucket the file object is stored in." + "AccountSummaries": { + "description": "An AccountSummary collection lists a summary of accounts, properties and views (profiles) to which the user has access. Each resource in the collection corresponds to a single AccountSummary.", + "id": "AccountSummaries", + "properties": { + "items": { + "description": "A list of AccountSummaries.", + "items": { + "$ref": "AccountSummary" + }, + "type": "array" + }, + "itemsPerPage": { + "description": "The maximum number of resources the response can contain, regardless of the actual number of resources returned. Its value ranges from 1 to 1000 with a value of 1000 by default, or otherwise specified by the max-results query parameter.", + "format": "int32", + "type": "integer" + }, + "kind": { + "default": "analytics#accountSummaries", + "description": "Collection type.", + "type": "string" + }, + "nextLink": { + "description": "Link to next page for this AccountSummary collection.", + "type": "string" + }, + "previousLink": { + "description": "Link to previous page for this AccountSummary collection.", + "type": "string" + }, + "startIndex": { + "description": "The starting index of the resources, which is 1 by default or otherwise specified by the start-index query parameter.", + "format": "int32", + "type": "integer" + }, + "totalResults": { + "description": "The total number of results for the query, regardless of the number of results in the response.", + "format": "int32", + "type": "integer" + }, + "username": { + "description": "Email ID of the authenticated user", + "type": "string" + } }, - "objectId": { - "type": "string", - "description": "Id of the file object containing the report data." - } - } + "type": "object" }, - "created": { - "type": "string", - "description": "Time this unsampled report was created.", - "format": "date-time", - "readOnly": true - }, - "dimensions": { - "type": "string", - "description": "The dimensions for the unsampled report." - }, - "downloadType": { - "type": "string", - "description": "The type of download you need to use for the report data file. Possible values include `GOOGLE_DRIVE` and `GOOGLE_CLOUD_STORAGE`. If the value is `GOOGLE_DRIVE`, see the `driveDownloadDetails` field. If the value is `GOOGLE_CLOUD_STORAGE`, see the `cloudStorageDownloadDetails` field.", - "readOnly": true - }, - "driveDownloadDetails": { - "type": "object", - "description": "Download details for a file stored in Google Drive.", - "readOnly": true, - "properties": { - "documentId": { - "type": "string", - "description": "Id of the document/file containing the report data." - } - } - }, - "end-date": { - "type": "string", - "description": "The end date for the unsampled report.", - "annotations": { - "required": [ - "analytics.management.filters.insert", - "analytics.management.unsampledReports.insert" - ] - } - }, - "filters": { - "type": "string", - "description": "The filters for the unsampled report." - }, - "id": { - "type": "string", - "description": "Unsampled report ID." - }, - "kind": { - "type": "string", - "description": "Resource type for an Analytics unsampled report.", - "default": "analytics#unsampledReport", - "readOnly": true - }, - "metrics": { - "type": "string", - "description": "The metrics for the unsampled report.", - "annotations": { - "required": [ - "analytics.management.filters.insert", - "analytics.management.unsampledReports.insert" - ] - } - }, - "profileId": { - "type": "string", - "description": "View (Profile) ID to which this unsampled report belongs." - }, - "segment": { - "type": "string", - "description": "The segment for the unsampled report." - }, - "selfLink": { - "type": "string", - "description": "Link for this unsampled report.", - "readOnly": true - }, - "start-date": { - "type": "string", - "description": "The start date for the unsampled report.", - "annotations": { - "required": [ - "analytics.management.filters.insert", - "analytics.management.unsampledReports.insert" - ] - } - }, - "status": { - "type": "string", - "description": "Status of this unsampled report. Possible values are PENDING, COMPLETED, or FAILED.", - "readOnly": true - }, - "title": { - "type": "string", - "description": "Title of the unsampled report.", - "annotations": { - "required": [ - "analytics.management.filters.insert", - "analytics.management.unsampledReports.insert" - ] - } - }, - "updated": { - "type": "string", - "description": "Time this unsampled report was last modified.", - "format": "date-time", - "readOnly": true - }, - "webPropertyId": { - "type": "string", - "description": "Web property ID to which this unsampled report belongs. The web property ID is of the form UA-XXXXX-YY." - } - } - }, - "UnsampledReports": { - "id": "UnsampledReports", - "type": "object", - "description": "An unsampled report collection lists Analytics unsampled reports to which the user has access. Each view (profile) can have a set of unsampled reports. Each resource in the unsampled report collection corresponds to a single Analytics unsampled report.", - "properties": { - "items": { - "type": "array", - "description": "A list of unsampled reports.", - "items": { - "$ref": "UnsampledReport" - } - }, - "itemsPerPage": { - "type": "integer", - "description": "The maximum number of resources the response can contain, regardless of the actual number of resources returned. Its value ranges from 1 to 1000 with a value of 1000 by default, or otherwise specified by the max-results query parameter.", - "format": "int32" - }, - "kind": { - "type": "string", - "description": "Collection type.", - "default": "analytics#unsampledReports" - }, - "nextLink": { - "type": "string", - "description": "Link to next page for this unsampled report collection." - }, - "previousLink": { - "type": "string", - "description": "Link to previous page for this unsampled report collection." - }, - "startIndex": { - "type": "integer", - "description": "The starting index of the resources, which is 1 by default or otherwise specified by the start-index query parameter.", - "format": "int32" - }, - "totalResults": { - "type": "integer", - "description": "The total number of results for the query, regardless of the number of resources in the result.", - "format": "int32" - }, - "username": { - "type": "string", - "description": "Email ID of the authenticated user" - } - } - }, - "Upload": { - "id": "Upload", - "type": "object", - "description": "Metadata returned for an upload operation.", - "properties": { - "accountId": { - "type": "string", - "description": "Account Id to which this upload belongs.", - "format": "int64" - }, - "customDataSourceId": { - "type": "string", - "description": "Custom data source Id to which this data import belongs." - }, - "errors": { - "type": "array", - "description": "Data import errors collection.", - "items": { - "type": "string" - } - }, - "id": { - "type": "string", - "description": "A unique ID for this upload." - }, - "kind": { - "type": "string", - "description": "Resource type for Analytics upload.", - "default": "analytics#upload" - }, - "status": { - "type": "string", - "description": "Upload status. Possible values: PENDING, COMPLETED, FAILED, DELETING, DELETED." - }, - "uploadTime": { - "type": "string", - "description": "Time this file is uploaded.", - "format": "date-time" - } - } - }, - "Uploads": { - "id": "Uploads", - "type": "object", - "description": "Upload collection lists Analytics uploads to which the user has access. Each custom data source can have a set of uploads. Each resource in the upload collection corresponds to a single Analytics data upload.", - "properties": { - "items": { - "type": "array", - "description": "A list of uploads.", - "items": { - "$ref": "Upload" - } - }, - "itemsPerPage": { - "type": "integer", - "description": "The maximum number of resources the response can contain, regardless of the actual number of resources returned. Its value ranges from 1 to 1000 with a value of 1000 by default, or otherwise specified by the max-results query parameter.", - "format": "int32" - }, - "kind": { - "type": "string", - "description": "Collection type.", - "default": "analytics#uploads" - }, - "nextLink": { - "type": "string", - "description": "Link to next page for this upload collection." - }, - "previousLink": { - "type": "string", - "description": "Link to previous page for this upload collection." - }, - "startIndex": { - "type": "integer", - "description": "The starting index of the resources, which is 1 by default or otherwise specified by the start-index query parameter.", - "format": "int32" - }, - "totalResults": { - "type": "integer", - "description": "The total number of results for the query, regardless of the number of resources in the result.", - "format": "int32" - } - } - }, - "UserRef": { - "id": "UserRef", - "type": "object", - "description": "JSON template for a user reference.", - "properties": { - "email": { - "type": "string", - "description": "Email ID of this user." - }, - "id": { - "type": "string", - "description": "User ID." - }, - "kind": { - "type": "string", - "default": "analytics#userRef" - } - } - }, - "WebPropertyRef": { - "id": "WebPropertyRef", - "type": "object", - "description": "JSON template for a web property reference.", - "properties": { - "accountId": { - "type": "string", - "description": "Account ID to which this web property belongs." - }, - "href": { - "type": "string", - "description": "Link for this web property." - }, - "id": { - "type": "string", - "description": "Web property ID of the form UA-XXXXX-YY." - }, - "internalWebPropertyId": { - "type": "string", - "description": "Internal ID for this web property." - }, - "kind": { - "type": "string", - "description": "Analytics web property reference.", - "default": "analytics#webPropertyRef" - }, - "name": { - "type": "string", - "description": "Name of this web property." - } - } - }, - "WebPropertySummary": { - "id": "WebPropertySummary", - "type": "object", - "description": "JSON template for an Analytics WebPropertySummary. WebPropertySummary returns basic information (i.e., summary) for a web property.", - "properties": { - "id": { - "type": "string", - "description": "Web property ID of the form UA-XXXXX-YY." - }, - "internalWebPropertyId": { - "type": "string", - "description": "Internal ID for this web property." - }, - "kind": { - "type": "string", - "description": "Resource type for Analytics WebPropertySummary.", - "default": "analytics#webPropertySummary" - }, - "level": { - "type": "string", - "description": "Level for this web property. Possible values are STANDARD or PREMIUM." - }, - "name": { - "type": "string", - "description": "Web property name." - }, - "profiles": { - "type": "array", - "description": "List of profiles under this web property.", - "items": { - "$ref": "ProfileSummary" - } - }, - "starred": { - "type": "boolean", - "description": "Indicates whether this web property is starred or not." - }, - "websiteUrl": { - "type": "string", - "description": "Website url for this web property." - } - } - }, - "Webproperties": { - "id": "Webproperties", - "type": "object", - "description": "A web property collection lists Analytics web properties to which the user has access. Each resource in the collection corresponds to a single Analytics web property.", - "properties": { - "items": { - "type": "array", - "description": "A list of web properties.", - "items": { - "$ref": "Webproperty" - } - }, - "itemsPerPage": { - "type": "integer", - "description": "The maximum number of resources the response can contain, regardless of the actual number of resources returned. Its value ranges from 1 to 1000 with a value of 1000 by default, or otherwise specified by the max-results query parameter.", - "format": "int32" - }, - "kind": { - "type": "string", - "description": "Collection type.", - "default": "analytics#webproperties" - }, - "nextLink": { - "type": "string", - "description": "Link to next page for this web property collection." - }, - "previousLink": { - "type": "string", - "description": "Link to previous page for this web property collection." - }, - "startIndex": { - "type": "integer", - "description": "The starting index of the resources, which is 1 by default or otherwise specified by the start-index query parameter.", - "format": "int32" - }, - "totalResults": { - "type": "integer", - "description": "The total number of results for the query, regardless of the number of results in the response.", - "format": "int32" - }, - "username": { - "type": "string", - "description": "Email ID of the authenticated user" - } - } - }, - "Webproperty": { - "id": "Webproperty", - "type": "object", - "description": "JSON template for an Analytics web property.", - "properties": { - "accountId": { - "type": "string", - "description": "Account ID to which this web property belongs." - }, - "childLink": { - "type": "object", - "description": "Child link for this web property. Points to the list of views (profiles) for this web property.", - "properties": { - "href": { - "type": "string", - "description": "Link to the list of views (profiles) for this web property." + "AccountSummary": { + "description": "JSON template for an Analytics AccountSummary. An AccountSummary is a lightweight tree comprised of properties/profiles.", + "id": "AccountSummary", + "properties": { + "id": { + "description": "Account ID.", + "type": "string" + }, + "kind": { + "default": "analytics#accountSummary", + "description": "Resource type for Analytics AccountSummary.", + "type": "string" + }, + "name": { + "description": "Account name.", + "type": "string" + }, + "starred": { + "description": "Indicates whether this account is starred or not.", + "type": "boolean" + }, + "webProperties": { + "description": "List of web properties under this account.", + "items": { + "$ref": "WebPropertySummary" + }, + "type": "array" + } }, - "type": { - "type": "string", - "description": "Type of the parent link. Its value is \"analytics#profiles\".", - "default": "analytics#profiles" - } - } + "type": "object" }, - "created": { - "type": "string", - "description": "Time this web property was created.", - "format": "date-time", - "readOnly": true - }, - "defaultProfileId": { - "type": "string", - "description": "Default view (profile) ID.", - "format": "int64" - }, - "id": { - "type": "string", - "description": "Web property ID of the form UA-XXXXX-YY." - }, - "industryVertical": { - "type": "string", - "description": "The industry vertical/category selected for this web property." - }, - "internalWebPropertyId": { - "type": "string", - "description": "Internal ID for this web property.", - "readOnly": true - }, - "kind": { - "type": "string", - "description": "Resource type for Analytics WebProperty.", - "default": "analytics#webproperty", - "readOnly": true - }, - "level": { - "type": "string", - "description": "Level for this web property. Possible values are STANDARD or PREMIUM.", - "readOnly": true - }, - "name": { - "type": "string", - "description": "Name of this web property." - }, - "parentLink": { - "type": "object", - "description": "Parent link for this web property. Points to the account to which this web property belongs.", - "properties": { - "href": { - "type": "string", - "description": "Link to the account for this web property." + "AccountTicket": { + "description": "JSON template for an Analytics account ticket. The account ticket consists of the ticket ID and the basic information for the account, property and profile.", + "id": "AccountTicket", + "properties": { + "account": { + "$ref": "Account", + "description": "Account for this ticket." + }, + "id": { + "description": "Account ticket ID used to access the account ticket.", + "type": "string" + }, + "kind": { + "default": "analytics#accountTicket", + "description": "Resource type for account ticket.", + "type": "string" + }, + "profile": { + "$ref": "Profile", + "description": "View (Profile) for the account." + }, + "redirectUri": { + "description": "Redirect URI where the user will be sent after accepting Terms of Service. Must be configured in APIs console as a callback URL.", + "type": "string" + }, + "webproperty": { + "$ref": "Webproperty", + "description": "Web property for the account." + } }, - "type": { - "type": "string", - "description": "Type of the parent link. Its value is \"analytics#account\".", - "default": "analytics#account" - } - } + "type": "object" }, - "permissions": { - "type": "object", - "description": "Permissions the user has for this web property.", - "properties": { - "effective": { - "type": "array", - "description": "All the permissions that the user has for this web property. These include any implied permissions (e.g., EDIT implies VIEW) or inherited permissions from the parent account.", - "readOnly": true, - "items": { - "type": "string" - } - } - } - }, - "profileCount": { - "type": "integer", - "description": "View (Profile) count for this web property.", - "format": "int32", - "readOnly": true - }, - "selfLink": { - "type": "string", - "description": "Link for this web property.", - "readOnly": true - }, - "starred": { - "type": "boolean", - "description": "Indicates whether this web property is starred or not." - }, - "updated": { - "type": "string", - "description": "Time this web property was last modified.", - "format": "date-time", - "readOnly": true - }, - "websiteUrl": { - "type": "string", - "description": "Website url for this web property." - } - } - } - }, - "resources": { - "data": { - "resources": { - "ga": { - "methods": { - "get": { - "id": "analytics.data.ga.get", - "path": "data/ga", - "httpMethod": "GET", - "description": "Returns Analytics data for a view (profile).", - "parameters": { - "dimensions": { - "type": "string", - "description": "A comma-separated list of Analytics dimensions. E.g., 'ga:browser,ga:city'.", - "pattern": "(ga:.+)?", - "location": "query" + "AccountTreeRequest": { + "description": "JSON template for an Analytics account tree requests. The account tree request is used in the provisioning api to create an account, property, and view (profile). It contains the basic information required to make these fields.", + "id": "AccountTreeRequest", + "properties": { + "accountName": { + "annotations": { + "required": [ + "analytics.provisioning.createAccountTree" + ] + }, + "type": "string" }, - "end-date": { - "type": "string", - "description": "End date for fetching Analytics data. Request can should specify an end date formatted as YYYY-MM-DD, or as a relative date (e.g., today, yesterday, or 7daysAgo). The default value is yesterday.", - "required": true, - "pattern": "[0-9]{4}-[0-9]{2}-[0-9]{2}|today|yesterday|[0-9]+(daysAgo)", - "location": "query" + "accountSettings": { + "properties": { + "admobReporting": { + "type": "boolean" + }, + "sharingWithGoogleAnySales": { + "type": "boolean" + }, + "sharingWithGoogleProducts": { + "type": "boolean" + }, + "sharingWithGoogleSales": { + "type": "boolean" + }, + "sharingWithGoogleSupport": { + "type": "boolean" + }, + "sharingWithOthers": { + "type": "boolean" + } + }, + "type": "object" }, - "filters": { - "type": "string", - "description": "A comma-separated list of dimension or metric filters to be applied to Analytics data.", - "pattern": "ga:.+", - "location": "query" + "kind": { + "default": "analytics#accountTreeRequest", + "description": "Resource type for account ticket.", + "type": "string" }, - "ids": { - "type": "string", - "description": "Unique table ID for retrieving Analytics data. Table ID is of the form ga:XXXX, where XXXX is the Analytics view (profile) ID.", - "required": true, - "pattern": "ga:[0-9]+", - "location": "query" + "profileName": { + "annotations": { + "required": [ + "analytics.provisioning.createAccountTree" + ] + }, + "type": "string" }, - "include-empty-rows": { - "type": "boolean", - "description": "The response will include empty rows if this parameter is set to true, the default is true", - "location": "query" + "timezone": { + "annotations": { + "required": [ + "analytics.provisioning.createAccountTree" + ] + }, + "type": "string" }, - "max-results": { - "type": "integer", - "description": "The maximum number of entries to include in this feed.", - "format": "int32", - "location": "query" + "webpropertyName": { + "annotations": { + "required": [ + "analytics.provisioning.createAccountTree" + ] + }, + "type": "string" }, - "metrics": { - "type": "string", - "description": "A comma-separated list of Analytics metrics. E.g., 'ga:sessions,ga:pageviews'. At least one metric must be specified.", - "required": true, - "pattern": "ga:.+", - "location": "query" - }, - "output": { - "type": "string", - "description": "The selected format for the response. Default format is JSON.", - "enum": [ - "dataTable", - "json" - ], - "enumDescriptions": [ - "Returns the response in Google Charts Data Table format. This is useful in creating visualization using Google Charts.", - "Returns the response in standard JSON format." - ], - "location": "query" - }, - "samplingLevel": { - "type": "string", - "description": "The desired sampling level.", - "enum": [ - "DEFAULT", - "FASTER", - "HIGHER_PRECISION" - ], - "enumDescriptions": [ - "Returns response with a sample size that balances speed and accuracy.", - "Returns a fast response with a smaller sample size.", - "Returns a more accurate response using a large sample size, but this may result in the response being slower." - ], - "location": "query" - }, - "segment": { - "type": "string", - "description": "An Analytics segment to be applied to data.", - "location": "query" - }, - "sort": { - "type": "string", - "description": "A comma-separated list of dimensions or metrics that determine the sort order for Analytics data.", - "pattern": "(-)?ga:.+", - "location": "query" - }, - "start-date": { - "type": "string", - "description": "Start date for fetching Analytics data. Requests can specify a start date formatted as YYYY-MM-DD, or as a relative date (e.g., today, yesterday, or 7daysAgo). The default value is 7daysAgo.", - "required": true, - "pattern": "[0-9]{4}-[0-9]{2}-[0-9]{2}|today|yesterday|[0-9]+(daysAgo)", - "location": "query" - }, - "start-index": { - "type": "integer", - "description": "An index of the first entity to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter.", - "format": "int32", - "minimum": "1", - "location": "query" + "websiteUrl": { + "annotations": { + "required": [ + "analytics.provisioning.createAccountTree" + ] + }, + "type": "string" } - }, - "parameterOrder": [ - "ids", - "start-date", - "end-date", - "metrics" - ], - "response": { - "$ref": "GaData" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics", - "https://www.googleapis.com/auth/analytics.readonly" - ] - } - } + }, + "type": "object" }, - "mcf": { - "methods": { - "get": { - "id": "analytics.data.mcf.get", - "path": "data/mcf", - "httpMethod": "GET", - "description": "Returns Analytics Multi-Channel Funnels data for a view (profile).", - "parameters": { - "dimensions": { - "type": "string", - "description": "A comma-separated list of Multi-Channel Funnels dimensions. E.g., 'mcf:source,mcf:medium'.", - "pattern": "(mcf:.+)?", - "location": "query" + "AccountTreeResponse": { + "description": "JSON template for an Analytics account tree response. The account tree response is used in the provisioning api to return the result of creating an account, property, and view (profile).", + "id": "AccountTreeResponse", + "properties": { + "account": { + "$ref": "Account", + "description": "The account created." }, - "end-date": { - "type": "string", - "description": "End date for fetching Analytics data. Requests can specify a start date formatted as YYYY-MM-DD, or as a relative date (e.g., today, yesterday, or 7daysAgo). The default value is 7daysAgo.", - "required": true, - "pattern": "[0-9]{4}-[0-9]{2}-[0-9]{2}|today|yesterday|[0-9]+(daysAgo)", - "location": "query" + "accountSettings": { + "properties": { + "admobReporting": { + "type": "boolean" + }, + "sharingWithGoogleAnySales": { + "type": "boolean" + }, + "sharingWithGoogleProducts": { + "type": "boolean" + }, + "sharingWithGoogleSales": { + "type": "boolean" + }, + "sharingWithGoogleSupport": { + "type": "boolean" + }, + "sharingWithOthers": { + "type": "boolean" + } + }, + "type": "object" }, - "filters": { - "type": "string", - "description": "A comma-separated list of dimension or metric filters to be applied to the Analytics data.", - "pattern": "mcf:.+", - "location": "query" + "kind": { + "default": "analytics#accountTreeResponse", + "description": "Resource type for account ticket.", + "type": "string" }, - "ids": { - "type": "string", - "description": "Unique table ID for retrieving Analytics data. Table ID is of the form ga:XXXX, where XXXX is the Analytics view (profile) ID.", - "required": true, - "pattern": "ga:[0-9]+", - "location": "query" + "profile": { + "$ref": "Profile", + "description": "View (Profile) for the account." }, - "max-results": { - "type": "integer", - "description": "The maximum number of entries to include in this feed.", - "format": "int32", - "location": "query" - }, - "metrics": { - "type": "string", - "description": "A comma-separated list of Multi-Channel Funnels metrics. E.g., 'mcf:totalConversions,mcf:totalConversionValue'. At least one metric must be specified.", - "required": true, - "pattern": "mcf:.+", - "location": "query" - }, - "samplingLevel": { - "type": "string", - "description": "The desired sampling level.", - "enum": [ - "DEFAULT", - "FASTER", - "HIGHER_PRECISION" - ], - "enumDescriptions": [ - "Returns response with a sample size that balances speed and accuracy.", - "Returns a fast response with a smaller sample size.", - "Returns a more accurate response using a large sample size, but this may result in the response being slower." - ], - "location": "query" - }, - "sort": { - "type": "string", - "description": "A comma-separated list of dimensions or metrics that determine the sort order for the Analytics data.", - "pattern": "(-)?mcf:.+", - "location": "query" - }, - "start-date": { - "type": "string", - "description": "Start date for fetching Analytics data. Requests can specify a start date formatted as YYYY-MM-DD, or as a relative date (e.g., today, yesterday, or 7daysAgo). The default value is 7daysAgo.", - "required": true, - "pattern": "[0-9]{4}-[0-9]{2}-[0-9]{2}|today|yesterday|[0-9]+(daysAgo)", - "location": "query" - }, - "start-index": { - "type": "integer", - "description": "An index of the first entity to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter.", - "format": "int32", - "minimum": "1", - "location": "query" + "webproperty": { + "$ref": "Webproperty", + "description": "Web property for the account." } - }, - "parameterOrder": [ - "ids", - "start-date", - "end-date", - "metrics" - ], - "response": { - "$ref": "McfData" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics", - "https://www.googleapis.com/auth/analytics.readonly" - ] - } - } + }, + "type": "object" }, - "realtime": { - "methods": { - "get": { - "id": "analytics.data.realtime.get", - "path": "data/realtime", - "httpMethod": "GET", - "description": "Returns real time data for a view (profile).", - "parameters": { - "dimensions": { - "type": "string", - "description": "A comma-separated list of real time dimensions. E.g., 'rt:medium,rt:city'.", - "pattern": "(ga:.+)|(rt:.+)", - "location": "query" + "Accounts": { + "description": "An account collection provides a list of Analytics accounts to which a user has access. The account collection is the entry point to all management information. Each resource in the collection corresponds to a single Analytics account.", + "id": "Accounts", + "properties": { + "items": { + "description": "A list of accounts.", + "items": { + "$ref": "Account" + }, + "type": "array" }, - "filters": { - "type": "string", - "description": "A comma-separated list of dimension or metric filters to be applied to real time data.", - "pattern": "(ga:.+)|(rt:.+)", - "location": "query" + "itemsPerPage": { + "description": "The maximum number of entries the response can contain, regardless of the actual number of entries returned. Its value ranges from 1 to 1000 with a value of 1000 by default, or otherwise specified by the max-results query parameter.", + "format": "int32", + "type": "integer" }, - "ids": { - "type": "string", - "description": "Unique table ID for retrieving real time data. Table ID is of the form ga:XXXX, where XXXX is the Analytics view (profile) ID.", - "required": true, - "pattern": "ga:[0-9]+", - "location": "query" + "kind": { + "default": "analytics#accounts", + "description": "Collection type.", + "type": "string" }, - "max-results": { - "type": "integer", - "description": "The maximum number of entries to include in this feed.", - "format": "int32", - "location": "query" + "nextLink": { + "description": "Next link for this account collection.", + "type": "string" }, - "metrics": { - "type": "string", - "description": "A comma-separated list of real time metrics. E.g., 'rt:activeUsers'. At least one metric must be specified.", - "required": true, - "pattern": "(ga:.+)|(rt:.+)", - "location": "query" + "previousLink": { + "description": "Previous link for this account collection.", + "type": "string" }, - "sort": { - "type": "string", - "description": "A comma-separated list of dimensions or metrics that determine the sort order for real time data.", - "pattern": "(-)?((ga:.+)|(rt:.+))", - "location": "query" + "startIndex": { + "description": "The starting index of the entries, which is 1 by default or otherwise specified by the start-index query parameter.", + "format": "int32", + "type": "integer" + }, + "totalResults": { + "description": "The total number of results for the query, regardless of the number of results in the response.", + "format": "int32", + "type": "integer" + }, + "username": { + "description": "Email ID of the authenticated user", + "type": "string" } - }, - "parameterOrder": [ - "ids", - "metrics" - ], - "response": { - "$ref": "RealtimeData" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics", - "https://www.googleapis.com/auth/analytics.readonly" - ] - } - } - } - } - }, - "management": { - "resources": { - "accountSummaries": { - "methods": { - "list": { - "id": "analytics.management.accountSummaries.list", - "path": "management/accountSummaries", - "httpMethod": "GET", - "description": "Lists account summaries (lightweight tree comprised of accounts/properties/profiles) to which the user has access.", - "parameters": { - "max-results": { - "type": "integer", - "description": "The maximum number of account summaries to include in this response, where the largest acceptable value is 1000.", - "format": "int32", - "location": "query" - }, - "start-index": { - "type": "integer", - "description": "An index of the first entity to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter.", - "format": "int32", - "minimum": "1", - "location": "query" - } - }, - "response": { - "$ref": "AccountSummaries" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics.edit", - "https://www.googleapis.com/auth/analytics.readonly" - ] - } - } + }, + "type": "object" }, - "accountUserLinks": { - "methods": { - "delete": { - "id": "analytics.management.accountUserLinks.delete", - "path": "management/accounts/{accountId}/entityUserLinks/{linkId}", - "httpMethod": "DELETE", - "description": "Removes a user from the given account.", - "parameters": { + "AdWordsAccount": { + "description": "JSON template for an AdWords account.", + "id": "AdWordsAccount", + "properties": { + "autoTaggingEnabled": { + "description": "True if auto-tagging is enabled on the AdWords account. Read-only after the insert operation.", + "type": "boolean" + }, + "customerId": { + "annotations": { + "required": [ + "analytics.management.webPropertyAdWordsLinks.insert", + "analytics.management.webPropertyAdWordsLinks.update" + ] + }, + "description": "Customer ID. This field is required when creating an AdWords link.", + "type": "string" + }, + "kind": { + "default": "analytics#adWordsAccount", + "description": "Resource type for AdWords account.", + "type": "string" + } + }, + "type": "object" + }, + "AnalyticsDataimportDeleteUploadDataRequest": { + "description": "Request template for the delete upload data request.", + "id": "AnalyticsDataimportDeleteUploadDataRequest", + "properties": { + "customDataImportUids": { + "description": "A list of upload UIDs.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "Column": { + "description": "JSON template for a metadata column.", + "id": "Column", + "properties": { + "attributes": { + "additionalProperties": { + "description": "The name of the attribute.", + "type": "string" + }, + "description": "Map of attribute name and value for this column.", + "type": "object" + }, + "id": { + "description": "Column id.", + "type": "string" + }, + "kind": { + "default": "analytics#column", + "description": "Resource type for Analytics column.", + "type": "string" + } + }, + "type": "object" + }, + "Columns": { + "description": "Lists columns (dimensions and metrics) for a particular report type.", + "id": "Columns", + "properties": { + "attributeNames": { + "description": "List of attributes names returned by columns.", + "items": { + "type": "string" + }, + "type": "array" + }, + "etag": { + "description": "Etag of collection. This etag can be compared with the last response etag to check if response has changed.", + "type": "string" + }, + "items": { + "description": "List of columns for a report type.", + "items": { + "$ref": "Column" + }, + "type": "array" + }, + "kind": { + "default": "analytics#columns", + "description": "Collection type.", + "type": "string" + }, + "totalResults": { + "description": "Total number of columns returned in the response.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "CustomDataSource": { + "description": "JSON template for an Analytics custom data source.", + "id": "CustomDataSource", + "properties": { "accountId": { - "type": "string", - "description": "Account ID to delete the user link for.", - "required": true, - "location": "path" - }, - "linkId": { - "type": "string", - "description": "Link ID to delete the user link for.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "accountId", - "linkId" - ], - "scopes": [ - "https://www.googleapis.com/auth/analytics.manage.users" - ] - }, - "insert": { - "id": "analytics.management.accountUserLinks.insert", - "path": "management/accounts/{accountId}/entityUserLinks", - "httpMethod": "POST", - "description": "Adds a new user to the given account.", - "parameters": { - "accountId": { - "type": "string", - "description": "Account ID to create the user link for.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "accountId" - ], - "request": { - "$ref": "EntityUserLink" - }, - "response": { - "$ref": "EntityUserLink" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics.manage.users" - ] - }, - "list": { - "id": "analytics.management.accountUserLinks.list", - "path": "management/accounts/{accountId}/entityUserLinks", - "httpMethod": "GET", - "description": "Lists account-user links for a given account.", - "parameters": { - "accountId": { - "type": "string", - "description": "Account ID to retrieve the user links for.", - "required": true, - "location": "path" - }, - "max-results": { - "type": "integer", - "description": "The maximum number of account-user links to include in this response.", - "format": "int32", - "location": "query" - }, - "start-index": { - "type": "integer", - "description": "An index of the first account-user link to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter.", - "format": "int32", - "minimum": "1", - "location": "query" - } - }, - "parameterOrder": [ - "accountId" - ], - "response": { - "$ref": "EntityUserLinks" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics.manage.users", - "https://www.googleapis.com/auth/analytics.manage.users.readonly" - ] - }, - "update": { - "id": "analytics.management.accountUserLinks.update", - "path": "management/accounts/{accountId}/entityUserLinks/{linkId}", - "httpMethod": "PUT", - "description": "Updates permissions for an existing user on the given account.", - "parameters": { - "accountId": { - "type": "string", - "description": "Account ID to update the account-user link for.", - "required": true, - "location": "path" - }, - "linkId": { - "type": "string", - "description": "Link ID to update the account-user link for.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "accountId", - "linkId" - ], - "request": { - "$ref": "EntityUserLink" - }, - "response": { - "$ref": "EntityUserLink" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics.manage.users" - ] - } - } - }, - "accounts": { - "methods": { - "list": { - "id": "analytics.management.accounts.list", - "path": "management/accounts", - "httpMethod": "GET", - "description": "Lists all accounts to which the user has access.", - "parameters": { - "max-results": { - "type": "integer", - "description": "The maximum number of accounts to include in this response.", - "format": "int32", - "location": "query" - }, - "start-index": { - "type": "integer", - "description": "An index of the first account to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter.", - "format": "int32", - "minimum": "1", - "location": "query" - } - }, - "response": { - "$ref": "Accounts" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics", - "https://www.googleapis.com/auth/analytics.edit", - "https://www.googleapis.com/auth/analytics.readonly" - ] - } - } - }, - "customDataSources": { - "methods": { - "list": { - "id": "analytics.management.customDataSources.list", - "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/customDataSources", - "httpMethod": "GET", - "description": "List custom data sources to which the user has access.", - "parameters": { - "accountId": { - "type": "string", - "description": "Account Id for the custom data sources to retrieve.", - "required": true, - "pattern": "\\d+", - "location": "path" - }, - "max-results": { - "type": "integer", - "description": "The maximum number of custom data sources to include in this response.", - "format": "int32", - "minimum": "1", - "location": "query" - }, - "start-index": { - "type": "integer", - "description": "A 1-based index of the first custom data source to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter.", - "format": "int32", - "minimum": "1", - "location": "query" - }, - "webPropertyId": { - "type": "string", - "description": "Web property Id for the custom data sources to retrieve.", - "required": true, - "pattern": "UA-(\\d+)-(\\d+)", - "location": "path" - } - }, - "parameterOrder": [ - "accountId", - "webPropertyId" - ], - "response": { - "$ref": "CustomDataSources" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics", - "https://www.googleapis.com/auth/analytics.edit", - "https://www.googleapis.com/auth/analytics.readonly" - ] - } - } - }, - "customDimensions": { - "methods": { - "get": { - "id": "analytics.management.customDimensions.get", - "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/customDimensions/{customDimensionId}", - "httpMethod": "GET", - "description": "Get a custom dimension to which the user has access.", - "parameters": { - "accountId": { - "type": "string", - "description": "Account ID for the custom dimension to retrieve.", - "required": true, - "location": "path" - }, - "customDimensionId": { - "type": "string", - "description": "The ID of the custom dimension to retrieve.", - "required": true, - "location": "path" - }, - "webPropertyId": { - "type": "string", - "description": "Web property ID for the custom dimension to retrieve.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "accountId", - "webPropertyId", - "customDimensionId" - ], - "response": { - "$ref": "CustomDimension" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics.edit", - "https://www.googleapis.com/auth/analytics.readonly" - ] - }, - "insert": { - "id": "analytics.management.customDimensions.insert", - "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/customDimensions", - "httpMethod": "POST", - "description": "Create a new custom dimension.", - "parameters": { - "accountId": { - "type": "string", - "description": "Account ID for the custom dimension to create.", - "required": true, - "location": "path" - }, - "webPropertyId": { - "type": "string", - "description": "Web property ID for the custom dimension to create.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "accountId", - "webPropertyId" - ], - "request": { - "$ref": "CustomDimension" - }, - "response": { - "$ref": "CustomDimension" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics.edit" - ] - }, - "list": { - "id": "analytics.management.customDimensions.list", - "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/customDimensions", - "httpMethod": "GET", - "description": "Lists custom dimensions to which the user has access.", - "parameters": { - "accountId": { - "type": "string", - "description": "Account ID for the custom dimensions to retrieve.", - "required": true, - "location": "path" - }, - "max-results": { - "type": "integer", - "description": "The maximum number of custom dimensions to include in this response.", - "format": "int32", - "location": "query" - }, - "start-index": { - "type": "integer", - "description": "An index of the first entity to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter.", - "format": "int32", - "minimum": "1", - "location": "query" - }, - "webPropertyId": { - "type": "string", - "description": "Web property ID for the custom dimensions to retrieve.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "accountId", - "webPropertyId" - ], - "response": { - "$ref": "CustomDimensions" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics", - "https://www.googleapis.com/auth/analytics.readonly" - ] - }, - "patch": { - "id": "analytics.management.customDimensions.patch", - "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/customDimensions/{customDimensionId}", - "httpMethod": "PATCH", - "description": "Updates an existing custom dimension. This method supports patch semantics.", - "parameters": { - "accountId": { - "type": "string", - "description": "Account ID for the custom dimension to update.", - "required": true, - "location": "path" - }, - "customDimensionId": { - "type": "string", - "description": "Custom dimension ID for the custom dimension to update.", - "required": true, - "location": "path" - }, - "ignoreCustomDataSourceLinks": { - "type": "boolean", - "description": "Force the update and ignore any warnings related to the custom dimension being linked to a custom data source / data set.", - "default": "false", - "location": "query" - }, - "webPropertyId": { - "type": "string", - "description": "Web property ID for the custom dimension to update.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "accountId", - "webPropertyId", - "customDimensionId" - ], - "request": { - "$ref": "CustomDimension" - }, - "response": { - "$ref": "CustomDimension" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics.edit" - ] - }, - "update": { - "id": "analytics.management.customDimensions.update", - "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/customDimensions/{customDimensionId}", - "httpMethod": "PUT", - "description": "Updates an existing custom dimension.", - "parameters": { - "accountId": { - "type": "string", - "description": "Account ID for the custom dimension to update.", - "required": true, - "location": "path" - }, - "customDimensionId": { - "type": "string", - "description": "Custom dimension ID for the custom dimension to update.", - "required": true, - "location": "path" - }, - "ignoreCustomDataSourceLinks": { - "type": "boolean", - "description": "Force the update and ignore any warnings related to the custom dimension being linked to a custom data source / data set.", - "default": "false", - "location": "query" - }, - "webPropertyId": { - "type": "string", - "description": "Web property ID for the custom dimension to update.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "accountId", - "webPropertyId", - "customDimensionId" - ], - "request": { - "$ref": "CustomDimension" - }, - "response": { - "$ref": "CustomDimension" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics.edit" - ] - } - } - }, - "customMetrics": { - "methods": { - "get": { - "id": "analytics.management.customMetrics.get", - "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/customMetrics/{customMetricId}", - "httpMethod": "GET", - "description": "Get a custom metric to which the user has access.", - "parameters": { - "accountId": { - "type": "string", - "description": "Account ID for the custom metric to retrieve.", - "required": true, - "location": "path" - }, - "customMetricId": { - "type": "string", - "description": "The ID of the custom metric to retrieve.", - "required": true, - "location": "path" - }, - "webPropertyId": { - "type": "string", - "description": "Web property ID for the custom metric to retrieve.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "accountId", - "webPropertyId", - "customMetricId" - ], - "response": { - "$ref": "CustomMetric" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics.edit", - "https://www.googleapis.com/auth/analytics.readonly" - ] - }, - "insert": { - "id": "analytics.management.customMetrics.insert", - "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/customMetrics", - "httpMethod": "POST", - "description": "Create a new custom metric.", - "parameters": { - "accountId": { - "type": "string", - "description": "Account ID for the custom metric to create.", - "required": true, - "location": "path" - }, - "webPropertyId": { - "type": "string", - "description": "Web property ID for the custom dimension to create.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "accountId", - "webPropertyId" - ], - "request": { - "$ref": "CustomMetric" - }, - "response": { - "$ref": "CustomMetric" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics.edit" - ] - }, - "list": { - "id": "analytics.management.customMetrics.list", - "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/customMetrics", - "httpMethod": "GET", - "description": "Lists custom metrics to which the user has access.", - "parameters": { - "accountId": { - "type": "string", - "description": "Account ID for the custom metrics to retrieve.", - "required": true, - "location": "path" - }, - "max-results": { - "type": "integer", - "description": "The maximum number of custom metrics to include in this response.", - "format": "int32", - "location": "query" - }, - "start-index": { - "type": "integer", - "description": "An index of the first entity to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter.", - "format": "int32", - "minimum": "1", - "location": "query" - }, - "webPropertyId": { - "type": "string", - "description": "Web property ID for the custom metrics to retrieve.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "accountId", - "webPropertyId" - ], - "response": { - "$ref": "CustomMetrics" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics", - "https://www.googleapis.com/auth/analytics.readonly" - ] - }, - "patch": { - "id": "analytics.management.customMetrics.patch", - "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/customMetrics/{customMetricId}", - "httpMethod": "PATCH", - "description": "Updates an existing custom metric. This method supports patch semantics.", - "parameters": { - "accountId": { - "type": "string", - "description": "Account ID for the custom metric to update.", - "required": true, - "location": "path" - }, - "customMetricId": { - "type": "string", - "description": "Custom metric ID for the custom metric to update.", - "required": true, - "location": "path" - }, - "ignoreCustomDataSourceLinks": { - "type": "boolean", - "description": "Force the update and ignore any warnings related to the custom metric being linked to a custom data source / data set.", - "default": "false", - "location": "query" - }, - "webPropertyId": { - "type": "string", - "description": "Web property ID for the custom metric to update.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "accountId", - "webPropertyId", - "customMetricId" - ], - "request": { - "$ref": "CustomMetric" - }, - "response": { - "$ref": "CustomMetric" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics.edit" - ] - }, - "update": { - "id": "analytics.management.customMetrics.update", - "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/customMetrics/{customMetricId}", - "httpMethod": "PUT", - "description": "Updates an existing custom metric.", - "parameters": { - "accountId": { - "type": "string", - "description": "Account ID for the custom metric to update.", - "required": true, - "location": "path" - }, - "customMetricId": { - "type": "string", - "description": "Custom metric ID for the custom metric to update.", - "required": true, - "location": "path" - }, - "ignoreCustomDataSourceLinks": { - "type": "boolean", - "description": "Force the update and ignore any warnings related to the custom metric being linked to a custom data source / data set.", - "default": "false", - "location": "query" - }, - "webPropertyId": { - "type": "string", - "description": "Web property ID for the custom metric to update.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "accountId", - "webPropertyId", - "customMetricId" - ], - "request": { - "$ref": "CustomMetric" - }, - "response": { - "$ref": "CustomMetric" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics.edit" - ] - } - } - }, - "experiments": { - "methods": { - "delete": { - "id": "analytics.management.experiments.delete", - "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/experiments/{experimentId}", - "httpMethod": "DELETE", - "description": "Delete an experiment.", - "parameters": { - "accountId": { - "type": "string", - "description": "Account ID to which the experiment belongs", - "required": true, - "location": "path" - }, - "experimentId": { - "type": "string", - "description": "ID of the experiment to delete", - "required": true, - "location": "path" - }, - "profileId": { - "type": "string", - "description": "View (Profile) ID to which the experiment belongs", - "required": true, - "location": "path" - }, - "webPropertyId": { - "type": "string", - "description": "Web property ID to which the experiment belongs", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "accountId", - "webPropertyId", - "profileId", - "experimentId" - ], - "scopes": [ - "https://www.googleapis.com/auth/analytics", - "https://www.googleapis.com/auth/analytics.edit" - ] - }, - "get": { - "id": "analytics.management.experiments.get", - "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/experiments/{experimentId}", - "httpMethod": "GET", - "description": "Returns an experiment to which the user has access.", - "parameters": { - "accountId": { - "type": "string", - "description": "Account ID to retrieve the experiment for.", - "required": true, - "location": "path" - }, - "experimentId": { - "type": "string", - "description": "Experiment ID to retrieve the experiment for.", - "required": true, - "location": "path" - }, - "profileId": { - "type": "string", - "description": "View (Profile) ID to retrieve the experiment for.", - "required": true, - "location": "path" - }, - "webPropertyId": { - "type": "string", - "description": "Web property ID to retrieve the experiment for.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "accountId", - "webPropertyId", - "profileId", - "experimentId" - ], - "response": { - "$ref": "Experiment" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics", - "https://www.googleapis.com/auth/analytics.edit", - "https://www.googleapis.com/auth/analytics.readonly" - ] - }, - "insert": { - "id": "analytics.management.experiments.insert", - "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/experiments", - "httpMethod": "POST", - "description": "Create a new experiment.", - "parameters": { - "accountId": { - "type": "string", - "description": "Account ID to create the experiment for.", - "required": true, - "location": "path" - }, - "profileId": { - "type": "string", - "description": "View (Profile) ID to create the experiment for.", - "required": true, - "location": "path" - }, - "webPropertyId": { - "type": "string", - "description": "Web property ID to create the experiment for.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "accountId", - "webPropertyId", - "profileId" - ], - "request": { - "$ref": "Experiment" - }, - "response": { - "$ref": "Experiment" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics", - "https://www.googleapis.com/auth/analytics.edit" - ] - }, - "list": { - "id": "analytics.management.experiments.list", - "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/experiments", - "httpMethod": "GET", - "description": "Lists experiments to which the user has access.", - "parameters": { - "accountId": { - "type": "string", - "description": "Account ID to retrieve experiments for.", - "required": true, - "pattern": "\\d+", - "location": "path" - }, - "max-results": { - "type": "integer", - "description": "The maximum number of experiments to include in this response.", - "format": "int32", - "location": "query" - }, - "profileId": { - "type": "string", - "description": "View (Profile) ID to retrieve experiments for.", - "required": true, - "pattern": "\\d+", - "location": "path" - }, - "start-index": { - "type": "integer", - "description": "An index of the first experiment to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter.", - "format": "int32", - "minimum": "1", - "location": "query" - }, - "webPropertyId": { - "type": "string", - "description": "Web property ID to retrieve experiments for.", - "required": true, - "pattern": "UA-(\\d+)-(\\d+)", - "location": "path" - } - }, - "parameterOrder": [ - "accountId", - "webPropertyId", - "profileId" - ], - "response": { - "$ref": "Experiments" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics", - "https://www.googleapis.com/auth/analytics.edit", - "https://www.googleapis.com/auth/analytics.readonly" - ] - }, - "patch": { - "id": "analytics.management.experiments.patch", - "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/experiments/{experimentId}", - "httpMethod": "PATCH", - "description": "Update an existing experiment. This method supports patch semantics.", - "parameters": { - "accountId": { - "type": "string", - "description": "Account ID of the experiment to update.", - "required": true, - "location": "path" - }, - "experimentId": { - "type": "string", - "description": "Experiment ID of the experiment to update.", - "required": true, - "location": "path" - }, - "profileId": { - "type": "string", - "description": "View (Profile) ID of the experiment to update.", - "required": true, - "location": "path" - }, - "webPropertyId": { - "type": "string", - "description": "Web property ID of the experiment to update.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "accountId", - "webPropertyId", - "profileId", - "experimentId" - ], - "request": { - "$ref": "Experiment" - }, - "response": { - "$ref": "Experiment" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics", - "https://www.googleapis.com/auth/analytics.edit" - ] - }, - "update": { - "id": "analytics.management.experiments.update", - "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/experiments/{experimentId}", - "httpMethod": "PUT", - "description": "Update an existing experiment.", - "parameters": { - "accountId": { - "type": "string", - "description": "Account ID of the experiment to update.", - "required": true, - "location": "path" - }, - "experimentId": { - "type": "string", - "description": "Experiment ID of the experiment to update.", - "required": true, - "location": "path" - }, - "profileId": { - "type": "string", - "description": "View (Profile) ID of the experiment to update.", - "required": true, - "location": "path" - }, - "webPropertyId": { - "type": "string", - "description": "Web property ID of the experiment to update.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "accountId", - "webPropertyId", - "profileId", - "experimentId" - ], - "request": { - "$ref": "Experiment" - }, - "response": { - "$ref": "Experiment" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics", - "https://www.googleapis.com/auth/analytics.edit" - ] - } - } - }, - "filters": { - "methods": { - "delete": { - "id": "analytics.management.filters.delete", - "path": "management/accounts/{accountId}/filters/{filterId}", - "httpMethod": "DELETE", - "description": "Delete a filter.", - "parameters": { - "accountId": { - "type": "string", - "description": "Account ID to delete the filter for.", - "required": true, - "location": "path" - }, - "filterId": { - "type": "string", - "description": "ID of the filter to be deleted.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "accountId", - "filterId" - ], - "response": { - "$ref": "Filter" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics.edit" - ] - }, - "get": { - "id": "analytics.management.filters.get", - "path": "management/accounts/{accountId}/filters/{filterId}", - "httpMethod": "GET", - "description": "Returns a filters to which the user has access.", - "parameters": { - "accountId": { - "type": "string", - "description": "Account ID to retrieve filters for.", - "required": true, - "location": "path" - }, - "filterId": { - "type": "string", - "description": "Filter ID to retrieve filters for.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "accountId", - "filterId" - ], - "response": { - "$ref": "Filter" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics.edit", - "https://www.googleapis.com/auth/analytics.readonly" - ] - }, - "insert": { - "id": "analytics.management.filters.insert", - "path": "management/accounts/{accountId}/filters", - "httpMethod": "POST", - "description": "Create a new filter.", - "parameters": { - "accountId": { - "type": "string", - "description": "Account ID to create filter for.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "accountId" - ], - "request": { - "$ref": "Filter" - }, - "response": { - "$ref": "Filter" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics.edit" - ] - }, - "list": { - "id": "analytics.management.filters.list", - "path": "management/accounts/{accountId}/filters", - "httpMethod": "GET", - "description": "Lists all filters for an account", - "parameters": { - "accountId": { - "type": "string", - "description": "Account ID to retrieve filters for.", - "required": true, - "pattern": "\\d+", - "location": "path" - }, - "max-results": { - "type": "integer", - "description": "The maximum number of filters to include in this response.", - "format": "int32", - "location": "query" - }, - "start-index": { - "type": "integer", - "description": "An index of the first entity to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter.", - "format": "int32", - "minimum": "1", - "location": "query" - } - }, - "parameterOrder": [ - "accountId" - ], - "response": { - "$ref": "Filters" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics.edit", - "https://www.googleapis.com/auth/analytics.readonly" - ] - }, - "patch": { - "id": "analytics.management.filters.patch", - "path": "management/accounts/{accountId}/filters/{filterId}", - "httpMethod": "PATCH", - "description": "Updates an existing filter. This method supports patch semantics.", - "parameters": { - "accountId": { - "type": "string", - "description": "Account ID to which the filter belongs.", - "required": true, - "location": "path" - }, - "filterId": { - "type": "string", - "description": "ID of the filter to be updated.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "accountId", - "filterId" - ], - "request": { - "$ref": "Filter" - }, - "response": { - "$ref": "Filter" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics.edit" - ] - }, - "update": { - "id": "analytics.management.filters.update", - "path": "management/accounts/{accountId}/filters/{filterId}", - "httpMethod": "PUT", - "description": "Updates an existing filter.", - "parameters": { - "accountId": { - "type": "string", - "description": "Account ID to which the filter belongs.", - "required": true, - "location": "path" - }, - "filterId": { - "type": "string", - "description": "ID of the filter to be updated.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "accountId", - "filterId" - ], - "request": { - "$ref": "Filter" - }, - "response": { - "$ref": "Filter" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics.edit" - ] - } - } - }, - "goals": { - "methods": { - "get": { - "id": "analytics.management.goals.get", - "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/goals/{goalId}", - "httpMethod": "GET", - "description": "Gets a goal to which the user has access.", - "parameters": { - "accountId": { - "type": "string", - "description": "Account ID to retrieve the goal for.", - "required": true, - "location": "path" - }, - "goalId": { - "type": "string", - "description": "Goal ID to retrieve the goal for.", - "required": true, - "location": "path" - }, - "profileId": { - "type": "string", - "description": "View (Profile) ID to retrieve the goal for.", - "required": true, - "location": "path" - }, - "webPropertyId": { - "type": "string", - "description": "Web property ID to retrieve the goal for.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "accountId", - "webPropertyId", - "profileId", - "goalId" - ], - "response": { - "$ref": "Goal" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics.edit", - "https://www.googleapis.com/auth/analytics.readonly" - ] - }, - "insert": { - "id": "analytics.management.goals.insert", - "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/goals", - "httpMethod": "POST", - "description": "Create a new goal.", - "parameters": { - "accountId": { - "type": "string", - "description": "Account ID to create the goal for.", - "required": true, - "location": "path" - }, - "profileId": { - "type": "string", - "description": "View (Profile) ID to create the goal for.", - "required": true, - "location": "path" - }, - "webPropertyId": { - "type": "string", - "description": "Web property ID to create the goal for.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "accountId", - "webPropertyId", - "profileId" - ], - "request": { - "$ref": "Goal" - }, - "response": { - "$ref": "Goal" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics.edit" - ] - }, - "list": { - "id": "analytics.management.goals.list", - "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/goals", - "httpMethod": "GET", - "description": "Lists goals to which the user has access.", - "parameters": { - "accountId": { - "type": "string", - "description": "Account ID to retrieve goals for. Can either be a specific account ID or '~all', which refers to all the accounts that user has access to.", - "required": true, - "location": "path" - }, - "max-results": { - "type": "integer", - "description": "The maximum number of goals to include in this response.", - "format": "int32", - "location": "query" - }, - "profileId": { - "type": "string", - "description": "View (Profile) ID to retrieve goals for. Can either be a specific view (profile) ID or '~all', which refers to all the views (profiles) that user has access to.", - "required": true, - "location": "path" - }, - "start-index": { - "type": "integer", - "description": "An index of the first goal to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter.", - "format": "int32", - "minimum": "1", - "location": "query" - }, - "webPropertyId": { - "type": "string", - "description": "Web property ID to retrieve goals for. Can either be a specific web property ID or '~all', which refers to all the web properties that user has access to.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "accountId", - "webPropertyId", - "profileId" - ], - "response": { - "$ref": "Goals" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics", - "https://www.googleapis.com/auth/analytics.edit", - "https://www.googleapis.com/auth/analytics.readonly" - ] - }, - "patch": { - "id": "analytics.management.goals.patch", - "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/goals/{goalId}", - "httpMethod": "PATCH", - "description": "Updates an existing goal. This method supports patch semantics.", - "parameters": { - "accountId": { - "type": "string", - "description": "Account ID to update the goal.", - "required": true, - "location": "path" - }, - "goalId": { - "type": "string", - "description": "Index of the goal to be updated.", - "required": true, - "location": "path" - }, - "profileId": { - "type": "string", - "description": "View (Profile) ID to update the goal.", - "required": true, - "location": "path" - }, - "webPropertyId": { - "type": "string", - "description": "Web property ID to update the goal.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "accountId", - "webPropertyId", - "profileId", - "goalId" - ], - "request": { - "$ref": "Goal" - }, - "response": { - "$ref": "Goal" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics.edit" - ] - }, - "update": { - "id": "analytics.management.goals.update", - "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/goals/{goalId}", - "httpMethod": "PUT", - "description": "Updates an existing goal.", - "parameters": { - "accountId": { - "type": "string", - "description": "Account ID to update the goal.", - "required": true, - "location": "path" - }, - "goalId": { - "type": "string", - "description": "Index of the goal to be updated.", - "required": true, - "location": "path" - }, - "profileId": { - "type": "string", - "description": "View (Profile) ID to update the goal.", - "required": true, - "location": "path" - }, - "webPropertyId": { - "type": "string", - "description": "Web property ID to update the goal.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "accountId", - "webPropertyId", - "profileId", - "goalId" - ], - "request": { - "$ref": "Goal" - }, - "response": { - "$ref": "Goal" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics.edit" - ] - } - } - }, - "profileFilterLinks": { - "methods": { - "delete": { - "id": "analytics.management.profileFilterLinks.delete", - "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/profileFilterLinks/{linkId}", - "httpMethod": "DELETE", - "description": "Delete a profile filter link.", - "parameters": { - "accountId": { - "type": "string", - "description": "Account ID to which the profile filter link belongs.", - "required": true, - "pattern": "\\d+", - "location": "path" - }, - "linkId": { - "type": "string", - "description": "ID of the profile filter link to delete.", - "required": true, - "pattern": "\\d+:\\d+", - "location": "path" - }, - "profileId": { - "type": "string", - "description": "Profile ID to which the filter link belongs.", - "required": true, - "pattern": "\\d+", - "location": "path" - }, - "webPropertyId": { - "type": "string", - "description": "Web property Id to which the profile filter link belongs.", - "required": true, - "pattern": "UA-(\\d+)-(\\d+)", - "location": "path" - } - }, - "parameterOrder": [ - "accountId", - "webPropertyId", - "profileId", - "linkId" - ], - "scopes": [ - "https://www.googleapis.com/auth/analytics.edit" - ] - }, - "get": { - "id": "analytics.management.profileFilterLinks.get", - "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/profileFilterLinks/{linkId}", - "httpMethod": "GET", - "description": "Returns a single profile filter link.", - "parameters": { - "accountId": { - "type": "string", - "description": "Account ID to retrieve profile filter link for.", - "required": true, - "pattern": "\\d+", - "location": "path" - }, - "linkId": { - "type": "string", - "description": "ID of the profile filter link.", - "required": true, - "pattern": "\\d+:\\d+", - "location": "path" - }, - "profileId": { - "type": "string", - "description": "Profile ID to retrieve filter link for.", - "required": true, - "pattern": "\\d+", - "location": "path" - }, - "webPropertyId": { - "type": "string", - "description": "Web property Id to retrieve profile filter link for.", - "required": true, - "pattern": "UA-(\\d+)-(\\d+)", - "location": "path" - } - }, - "parameterOrder": [ - "accountId", - "webPropertyId", - "profileId", - "linkId" - ], - "response": { - "$ref": "ProfileFilterLink" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics.edit", - "https://www.googleapis.com/auth/analytics.readonly" - ] - }, - "insert": { - "id": "analytics.management.profileFilterLinks.insert", - "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/profileFilterLinks", - "httpMethod": "POST", - "description": "Create a new profile filter link.", - "parameters": { - "accountId": { - "type": "string", - "description": "Account ID to create profile filter link for.", - "required": true, - "pattern": "\\d+", - "location": "path" - }, - "profileId": { - "type": "string", - "description": "Profile ID to create filter link for.", - "required": true, - "pattern": "\\d+", - "location": "path" - }, - "webPropertyId": { - "type": "string", - "description": "Web property Id to create profile filter link for.", - "required": true, - "pattern": "UA-(\\d+)-(\\d+)", - "location": "path" - } - }, - "parameterOrder": [ - "accountId", - "webPropertyId", - "profileId" - ], - "request": { - "$ref": "ProfileFilterLink" - }, - "response": { - "$ref": "ProfileFilterLink" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics.edit" - ] - }, - "list": { - "id": "analytics.management.profileFilterLinks.list", - "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/profileFilterLinks", - "httpMethod": "GET", - "description": "Lists all profile filter links for a profile.", - "parameters": { - "accountId": { - "type": "string", - "description": "Account ID to retrieve profile filter links for.", - "required": true, - "pattern": "\\d+", - "location": "path" - }, - "max-results": { - "type": "integer", - "description": "The maximum number of profile filter links to include in this response.", - "format": "int32", - "location": "query" - }, - "profileId": { - "type": "string", - "description": "Profile ID to retrieve filter links for. Can either be a specific profile ID or '~all', which refers to all the profiles that user has access to.", - "required": true, - "location": "path" - }, - "start-index": { - "type": "integer", - "description": "An index of the first entity to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter.", - "format": "int32", - "minimum": "1", - "location": "query" - }, - "webPropertyId": { - "type": "string", - "description": "Web property Id for profile filter links for. Can either be a specific web property ID or '~all', which refers to all the web properties that user has access to.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "accountId", - "webPropertyId", - "profileId" - ], - "response": { - "$ref": "ProfileFilterLinks" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics.edit", - "https://www.googleapis.com/auth/analytics.readonly" - ] - }, - "patch": { - "id": "analytics.management.profileFilterLinks.patch", - "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/profileFilterLinks/{linkId}", - "httpMethod": "PATCH", - "description": "Update an existing profile filter link. This method supports patch semantics.", - "parameters": { - "accountId": { - "type": "string", - "description": "Account ID to which profile filter link belongs.", - "required": true, - "pattern": "\\d+", - "location": "path" - }, - "linkId": { - "type": "string", - "description": "ID of the profile filter link to be updated.", - "required": true, - "pattern": "\\d+:\\d+", - "location": "path" - }, - "profileId": { - "type": "string", - "description": "Profile ID to which filter link belongs", - "required": true, - "pattern": "\\d+", - "location": "path" - }, - "webPropertyId": { - "type": "string", - "description": "Web property Id to which profile filter link belongs", - "required": true, - "pattern": "UA-(\\d+)-(\\d+)", - "location": "path" - } - }, - "parameterOrder": [ - "accountId", - "webPropertyId", - "profileId", - "linkId" - ], - "request": { - "$ref": "ProfileFilterLink" - }, - "response": { - "$ref": "ProfileFilterLink" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics.edit" - ] - }, - "update": { - "id": "analytics.management.profileFilterLinks.update", - "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/profileFilterLinks/{linkId}", - "httpMethod": "PUT", - "description": "Update an existing profile filter link.", - "parameters": { - "accountId": { - "type": "string", - "description": "Account ID to which profile filter link belongs.", - "required": true, - "pattern": "\\d+", - "location": "path" - }, - "linkId": { - "type": "string", - "description": "ID of the profile filter link to be updated.", - "required": true, - "pattern": "\\d+:\\d+", - "location": "path" - }, - "profileId": { - "type": "string", - "description": "Profile ID to which filter link belongs", - "required": true, - "pattern": "\\d+", - "location": "path" - }, - "webPropertyId": { - "type": "string", - "description": "Web property Id to which profile filter link belongs", - "required": true, - "pattern": "UA-(\\d+)-(\\d+)", - "location": "path" - } - }, - "parameterOrder": [ - "accountId", - "webPropertyId", - "profileId", - "linkId" - ], - "request": { - "$ref": "ProfileFilterLink" - }, - "response": { - "$ref": "ProfileFilterLink" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics.edit" - ] - } - } - }, - "profileUserLinks": { - "methods": { - "delete": { - "id": "analytics.management.profileUserLinks.delete", - "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/entityUserLinks/{linkId}", - "httpMethod": "DELETE", - "description": "Removes a user from the given view (profile).", - "parameters": { - "accountId": { - "type": "string", - "description": "Account ID to delete the user link for.", - "required": true, - "location": "path" - }, - "linkId": { - "type": "string", - "description": "Link ID to delete the user link for.", - "required": true, - "location": "path" - }, - "profileId": { - "type": "string", - "description": "View (Profile) ID to delete the user link for.", - "required": true, - "location": "path" - }, - "webPropertyId": { - "type": "string", - "description": "Web Property ID to delete the user link for.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "accountId", - "webPropertyId", - "profileId", - "linkId" - ], - "scopes": [ - "https://www.googleapis.com/auth/analytics.manage.users" - ] - }, - "insert": { - "id": "analytics.management.profileUserLinks.insert", - "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/entityUserLinks", - "httpMethod": "POST", - "description": "Adds a new user to the given view (profile).", - "parameters": { - "accountId": { - "type": "string", - "description": "Account ID to create the user link for.", - "required": true, - "location": "path" - }, - "profileId": { - "type": "string", - "description": "View (Profile) ID to create the user link for.", - "required": true, - "location": "path" - }, - "webPropertyId": { - "type": "string", - "description": "Web Property ID to create the user link for.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "accountId", - "webPropertyId", - "profileId" - ], - "request": { - "$ref": "EntityUserLink" - }, - "response": { - "$ref": "EntityUserLink" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics.manage.users" - ] - }, - "list": { - "id": "analytics.management.profileUserLinks.list", - "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/entityUserLinks", - "httpMethod": "GET", - "description": "Lists profile-user links for a given view (profile).", - "parameters": { - "accountId": { - "type": "string", - "description": "Account ID which the given view (profile) belongs to.", - "required": true, - "location": "path" - }, - "max-results": { - "type": "integer", - "description": "The maximum number of profile-user links to include in this response.", - "format": "int32", - "location": "query" - }, - "profileId": { - "type": "string", - "description": "View (Profile) ID to retrieve the profile-user links for. Can either be a specific profile ID or '~all', which refers to all the profiles that user has access to.", - "required": true, - "location": "path" - }, - "start-index": { - "type": "integer", - "description": "An index of the first profile-user link to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter.", - "format": "int32", - "minimum": "1", - "location": "query" - }, - "webPropertyId": { - "type": "string", - "description": "Web Property ID which the given view (profile) belongs to. Can either be a specific web property ID or '~all', which refers to all the web properties that user has access to.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "accountId", - "webPropertyId", - "profileId" - ], - "response": { - "$ref": "EntityUserLinks" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics.manage.users", - "https://www.googleapis.com/auth/analytics.manage.users.readonly" - ] - }, - "update": { - "id": "analytics.management.profileUserLinks.update", - "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/entityUserLinks/{linkId}", - "httpMethod": "PUT", - "description": "Updates permissions for an existing user on the given view (profile).", - "parameters": { - "accountId": { - "type": "string", - "description": "Account ID to update the user link for.", - "required": true, - "location": "path" - }, - "linkId": { - "type": "string", - "description": "Link ID to update the user link for.", - "required": true, - "location": "path" - }, - "profileId": { - "type": "string", - "description": "View (Profile ID) to update the user link for.", - "required": true, - "location": "path" - }, - "webPropertyId": { - "type": "string", - "description": "Web Property ID to update the user link for.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "accountId", - "webPropertyId", - "profileId", - "linkId" - ], - "request": { - "$ref": "EntityUserLink" - }, - "response": { - "$ref": "EntityUserLink" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics.manage.users" - ] - } - } - }, - "profiles": { - "methods": { - "delete": { - "id": "analytics.management.profiles.delete", - "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}", - "httpMethod": "DELETE", - "description": "Deletes a view (profile).", - "parameters": { - "accountId": { - "type": "string", - "description": "Account ID to delete the view (profile) for.", - "required": true, - "location": "path" - }, - "profileId": { - "type": "string", - "description": "ID of the view (profile) to be deleted.", - "required": true, - "location": "path" - }, - "webPropertyId": { - "type": "string", - "description": "Web property ID to delete the view (profile) for.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "accountId", - "webPropertyId", - "profileId" - ], - "scopes": [ - "https://www.googleapis.com/auth/analytics.edit" - ] - }, - "get": { - "id": "analytics.management.profiles.get", - "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}", - "httpMethod": "GET", - "description": "Gets a view (profile) to which the user has access.", - "parameters": { - "accountId": { - "type": "string", - "description": "Account ID to retrieve the view (profile) for.", - "required": true, - "pattern": "[0-9]+", - "location": "path" - }, - "profileId": { - "type": "string", - "description": "View (Profile) ID to retrieve the view (profile) for.", - "required": true, - "pattern": "[0-9]+", - "location": "path" - }, - "webPropertyId": { - "type": "string", - "description": "Web property ID to retrieve the view (profile) for.", - "required": true, - "pattern": "UA-[0-9]+-[0-9]+", - "location": "path" - } - }, - "parameterOrder": [ - "accountId", - "webPropertyId", - "profileId" - ], - "response": { - "$ref": "Profile" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics.edit", - "https://www.googleapis.com/auth/analytics.readonly" - ] - }, - "insert": { - "id": "analytics.management.profiles.insert", - "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/profiles", - "httpMethod": "POST", - "description": "Create a new view (profile).", - "parameters": { - "accountId": { - "type": "string", - "description": "Account ID to create the view (profile) for.", - "required": true, - "location": "path" - }, - "webPropertyId": { - "type": "string", - "description": "Web property ID to create the view (profile) for.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "accountId", - "webPropertyId" - ], - "request": { - "$ref": "Profile" - }, - "response": { - "$ref": "Profile" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics.edit" - ] - }, - "list": { - "id": "analytics.management.profiles.list", - "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/profiles", - "httpMethod": "GET", - "description": "Lists views (profiles) to which the user has access.", - "parameters": { - "accountId": { - "type": "string", - "description": "Account ID for the view (profiles) to retrieve. Can either be a specific account ID or '~all', which refers to all the accounts to which the user has access.", - "required": true, - "location": "path" - }, - "max-results": { - "type": "integer", - "description": "The maximum number of views (profiles) to include in this response.", - "format": "int32", - "location": "query" - }, - "start-index": { - "type": "integer", - "description": "An index of the first entity to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter.", - "format": "int32", - "minimum": "1", - "location": "query" - }, - "webPropertyId": { - "type": "string", - "description": "Web property ID for the views (profiles) to retrieve. Can either be a specific web property ID or '~all', which refers to all the web properties to which the user has access.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "accountId", - "webPropertyId" - ], - "response": { - "$ref": "Profiles" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics", - "https://www.googleapis.com/auth/analytics.edit", - "https://www.googleapis.com/auth/analytics.readonly" - ] - }, - "patch": { - "id": "analytics.management.profiles.patch", - "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}", - "httpMethod": "PATCH", - "description": "Updates an existing view (profile). This method supports patch semantics.", - "parameters": { - "accountId": { - "type": "string", - "description": "Account ID to which the view (profile) belongs", - "required": true, - "location": "path" - }, - "profileId": { - "type": "string", - "description": "ID of the view (profile) to be updated.", - "required": true, - "location": "path" - }, - "webPropertyId": { - "type": "string", - "description": "Web property ID to which the view (profile) belongs", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "accountId", - "webPropertyId", - "profileId" - ], - "request": { - "$ref": "Profile" - }, - "response": { - "$ref": "Profile" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics.edit" - ] - }, - "update": { - "id": "analytics.management.profiles.update", - "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}", - "httpMethod": "PUT", - "description": "Updates an existing view (profile).", - "parameters": { - "accountId": { - "type": "string", - "description": "Account ID to which the view (profile) belongs", - "required": true, - "location": "path" - }, - "profileId": { - "type": "string", - "description": "ID of the view (profile) to be updated.", - "required": true, - "location": "path" - }, - "webPropertyId": { - "type": "string", - "description": "Web property ID to which the view (profile) belongs", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "accountId", - "webPropertyId", - "profileId" - ], - "request": { - "$ref": "Profile" - }, - "response": { - "$ref": "Profile" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics.edit" - ] - } - } - }, - "remarketingAudience": { - "methods": { - "delete": { - "id": "analytics.management.remarketingAudience.delete", - "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/remarketingAudiences/{remarketingAudienceId}", - "httpMethod": "DELETE", - "description": "Delete a remarketing audience.", - "parameters": { - "accountId": { - "type": "string", - "description": "Account ID to which the remarketing audience belongs.", - "required": true, - "location": "path" - }, - "remarketingAudienceId": { - "type": "string", - "description": "The ID of the remarketing audience to delete.", - "required": true, - "location": "path" - }, - "webPropertyId": { - "type": "string", - "description": "Web property ID to which the remarketing audience belongs.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "accountId", - "webPropertyId", - "remarketingAudienceId" - ], - "scopes": [ - "https://www.googleapis.com/auth/analytics.edit" - ] - }, - "get": { - "id": "analytics.management.remarketingAudience.get", - "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/remarketingAudiences/{remarketingAudienceId}", - "httpMethod": "GET", - "description": "Gets a remarketing audience to which the user has access.", - "parameters": { - "accountId": { - "type": "string", - "description": "The account ID of the remarketing audience to retrieve.", - "required": true, - "location": "path" - }, - "remarketingAudienceId": { - "type": "string", - "description": "The ID of the remarketing audience to retrieve.", - "required": true, - "location": "path" - }, - "webPropertyId": { - "type": "string", - "description": "The web property ID of the remarketing audience to retrieve.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "accountId", - "webPropertyId", - "remarketingAudienceId" - ], - "response": { - "$ref": "RemarketingAudience" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics.edit", - "https://www.googleapis.com/auth/analytics.readonly" - ] - }, - "insert": { - "id": "analytics.management.remarketingAudience.insert", - "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/remarketingAudiences", - "httpMethod": "POST", - "description": "Creates a new remarketing audience.", - "parameters": { - "accountId": { - "type": "string", - "description": "The account ID for which to create the remarketing audience.", - "required": true, - "location": "path" - }, - "webPropertyId": { - "type": "string", - "description": "Web property ID for which to create the remarketing audience.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "accountId", - "webPropertyId" - ], - "request": { - "$ref": "RemarketingAudience" - }, - "response": { - "$ref": "RemarketingAudience" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics.edit" - ] - }, - "list": { - "id": "analytics.management.remarketingAudience.list", - "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/remarketingAudiences", - "httpMethod": "GET", - "description": "Lists remarketing audiences to which the user has access.", - "parameters": { - "accountId": { - "type": "string", - "description": "The account ID of the remarketing audiences to retrieve.", - "required": true, - "location": "path" - }, - "max-results": { - "type": "integer", - "description": "The maximum number of remarketing audiences to include in this response.", - "format": "int32", - "location": "query" - }, - "start-index": { - "type": "integer", - "description": "An index of the first entity to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter.", - "format": "int32", - "minimum": "1", - "location": "query" + "description": "Account ID to which this custom data source belongs.", + "type": "string" + }, + "childLink": { + "properties": { + "href": { + "description": "Link to the list of daily uploads for this custom data source. Link to the list of uploads for this custom data source.", + "type": "string" + }, + "type": { + "description": "Value is \"analytics#dailyUploads\". Value is \"analytics#uploads\".", + "type": "string" + } + }, + "type": "object" + }, + "created": { + "description": "Time this custom data source was created.", + "format": "date-time", + "type": "string" + }, + "description": { + "description": "Description of custom data source.", + "type": "string" + }, + "id": { + "description": "Custom data source ID.", + "type": "string" + }, + "importBehavior": { + "type": "string" + }, + "kind": { + "default": "analytics#customDataSource", + "description": "Resource type for Analytics custom data source.", + "type": "string" + }, + "name": { + "description": "Name of this custom data source.", + "type": "string" + }, + "parentLink": { + "description": "Parent link for this custom data source. Points to the web property to which this custom data source belongs.", + "properties": { + "href": { + "description": "Link to the web property to which this custom data source belongs.", + "type": "string" + }, + "type": { + "default": "analytics#webproperty", + "description": "Value is \"analytics#webproperty\".", + "type": "string" + } + }, + "type": "object" + }, + "profilesLinked": { + "description": "IDs of views (profiles) linked to the custom data source.", + "items": { + "type": "string" + }, + "type": "array" + }, + "schema": { + "description": "Collection of schema headers of the custom data source.", + "items": { + "type": "string" + }, + "type": "array" + }, + "selfLink": { + "description": "Link for this Analytics custom data source.", + "type": "string" }, "type": { - "type": "string", - "default": "all", - "location": "query" + "description": "Type of the custom data source.", + "type": "string" + }, + "updated": { + "description": "Time this custom data source was last modified.", + "format": "date-time", + "type": "string" + }, + "uploadType": { + "description": "Upload type of the custom data source.", + "type": "string" }, "webPropertyId": { - "type": "string", - "description": "The web property ID of the remarketing audiences to retrieve.", - "required": true, - "location": "path" + "description": "Web property ID of the form UA-XXXXX-YY to which this custom data source belongs.", + "type": "string" } - }, - "parameterOrder": [ - "accountId", - "webPropertyId" - ], - "response": { - "$ref": "RemarketingAudiences" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics.edit", - "https://www.googleapis.com/auth/analytics.readonly" - ] }, - "patch": { - "id": "analytics.management.remarketingAudience.patch", - "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/remarketingAudiences/{remarketingAudienceId}", - "httpMethod": "PATCH", - "description": "Updates an existing remarketing audience. This method supports patch semantics.", - "parameters": { + "type": "object" + }, + "CustomDataSources": { + "description": "Lists Analytics custom data sources to which the user has access. Each resource in the collection corresponds to a single Analytics custom data source.", + "id": "CustomDataSources", + "properties": { + "items": { + "description": "Collection of custom data sources.", + "items": { + "$ref": "CustomDataSource" + }, + "type": "array" + }, + "itemsPerPage": { + "description": "The maximum number of resources the response can contain, regardless of the actual number of resources returned. Its value ranges from 1 to 1000 with a value of 1000 by default, or otherwise specified by the max-results query parameter.", + "format": "int32", + "type": "integer" + }, + "kind": { + "default": "analytics#customDataSources", + "description": "Collection type.", + "type": "string" + }, + "nextLink": { + "description": "Link to next page for this custom data source collection.", + "type": "string" + }, + "previousLink": { + "description": "Link to previous page for this custom data source collection.", + "type": "string" + }, + "startIndex": { + "description": "The starting index of the resources, which is 1 by default or otherwise specified by the start-index query parameter.", + "format": "int32", + "type": "integer" + }, + "totalResults": { + "description": "The total number of results for the query, regardless of the number of results in the response.", + "format": "int32", + "type": "integer" + }, + "username": { + "description": "Email ID of the authenticated user", + "type": "string" + } + }, + "type": "object" + }, + "CustomDimension": { + "description": "JSON template for Analytics Custom Dimension.", + "id": "CustomDimension", + "properties": { "accountId": { - "type": "string", - "description": "The account ID of the remarketing audience to update.", - "required": true, - "location": "path" + "description": "Account ID.", + "type": "string" + }, + "active": { + "description": "Boolean indicating whether the custom dimension is active.", + "type": "boolean" + }, + "created": { + "description": "Time the custom dimension was created.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "id": { + "description": "Custom dimension ID.", + "type": "string" + }, + "index": { + "description": "Index of the custom dimension.", + "format": "int32", + "readOnly": true, + "type": "integer" + }, + "kind": { + "default": "analytics#customDimension", + "description": "Kind value for a custom dimension. Set to \"analytics#customDimension\". It is a read-only field.", + "readOnly": true, + "type": "string" + }, + "name": { + "description": "Name of the custom dimension.", + "type": "string" + }, + "parentLink": { + "description": "Parent link for the custom dimension. Points to the property to which the custom dimension belongs.", + "properties": { + "href": { + "description": "Link to the property to which the custom dimension belongs.", + "type": "string" + }, + "type": { + "default": "analytics#webproperty", + "description": "Type of the parent link. Set to \"analytics#webproperty\".", + "type": "string" + } + }, + "type": "object" + }, + "scope": { + "description": "Scope of the custom dimension: HIT, SESSION, USER or PRODUCT.", + "type": "string" + }, + "selfLink": { + "description": "Link for the custom dimension", + "readOnly": true, + "type": "string" + }, + "updated": { + "description": "Time the custom dimension was last modified.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "webPropertyId": { + "description": "Property ID.", + "type": "string" + } + }, + "type": "object" + }, + "CustomDimensions": { + "description": "A custom dimension collection lists Analytics custom dimensions to which the user has access. Each resource in the collection corresponds to a single Analytics custom dimension.", + "id": "CustomDimensions", + "properties": { + "items": { + "description": "Collection of custom dimensions.", + "items": { + "$ref": "CustomDimension" + }, + "type": "array" + }, + "itemsPerPage": { + "description": "The maximum number of resources the response can contain, regardless of the actual number of resources returned. Its value ranges from 1 to 1000 with a value of 1000 by default, or otherwise specified by the max-results query parameter.", + "format": "int32", + "type": "integer" + }, + "kind": { + "default": "analytics#customDimensions", + "description": "Collection type.", + "type": "string" + }, + "nextLink": { + "description": "Link to next page for this custom dimension collection.", + "type": "string" + }, + "previousLink": { + "description": "Link to previous page for this custom dimension collection.", + "type": "string" + }, + "startIndex": { + "description": "The starting index of the resources, which is 1 by default or otherwise specified by the start-index query parameter.", + "format": "int32", + "type": "integer" + }, + "totalResults": { + "description": "The total number of results for the query, regardless of the number of results in the response.", + "format": "int32", + "type": "integer" + }, + "username": { + "description": "Email ID of the authenticated user", + "type": "string" + } + }, + "type": "object" + }, + "CustomMetric": { + "description": "JSON template for Analytics Custom Metric.", + "id": "CustomMetric", + "properties": { + "accountId": { + "description": "Account ID.", + "type": "string" + }, + "active": { + "description": "Boolean indicating whether the custom metric is active.", + "type": "boolean" + }, + "created": { + "description": "Time the custom metric was created.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "id": { + "description": "Custom metric ID.", + "type": "string" + }, + "index": { + "description": "Index of the custom metric.", + "format": "int32", + "readOnly": true, + "type": "integer" + }, + "kind": { + "default": "analytics#customMetric", + "description": "Kind value for a custom metric. Set to \"analytics#customMetric\". It is a read-only field.", + "readOnly": true, + "type": "string" + }, + "max_value": { + "description": "Max value of custom metric.", + "type": "string" + }, + "min_value": { + "description": "Min value of custom metric.", + "type": "string" + }, + "name": { + "description": "Name of the custom metric.", + "type": "string" + }, + "parentLink": { + "description": "Parent link for the custom metric. Points to the property to which the custom metric belongs.", + "properties": { + "href": { + "description": "Link to the property to which the custom metric belongs.", + "type": "string" + }, + "type": { + "default": "analytics#webproperty", + "description": "Type of the parent link. Set to \"analytics#webproperty\".", + "type": "string" + } + }, + "type": "object" + }, + "scope": { + "description": "Scope of the custom metric: HIT or PRODUCT.", + "type": "string" + }, + "selfLink": { + "description": "Link for the custom metric", + "readOnly": true, + "type": "string" + }, + "type": { + "description": "Data type of custom metric.", + "type": "string" + }, + "updated": { + "description": "Time the custom metric was last modified.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "webPropertyId": { + "description": "Property ID.", + "type": "string" + } + }, + "type": "object" + }, + "CustomMetrics": { + "description": "A custom metric collection lists Analytics custom metrics to which the user has access. Each resource in the collection corresponds to a single Analytics custom metric.", + "id": "CustomMetrics", + "properties": { + "items": { + "description": "Collection of custom metrics.", + "items": { + "$ref": "CustomMetric" + }, + "type": "array" + }, + "itemsPerPage": { + "description": "The maximum number of resources the response can contain, regardless of the actual number of resources returned. Its value ranges from 1 to 1000 with a value of 1000 by default, or otherwise specified by the max-results query parameter.", + "format": "int32", + "type": "integer" + }, + "kind": { + "default": "analytics#customMetrics", + "description": "Collection type.", + "type": "string" + }, + "nextLink": { + "description": "Link to next page for this custom metric collection.", + "type": "string" + }, + "previousLink": { + "description": "Link to previous page for this custom metric collection.", + "type": "string" + }, + "startIndex": { + "description": "The starting index of the resources, which is 1 by default or otherwise specified by the start-index query parameter.", + "format": "int32", + "type": "integer" + }, + "totalResults": { + "description": "The total number of results for the query, regardless of the number of results in the response.", + "format": "int32", + "type": "integer" + }, + "username": { + "description": "Email ID of the authenticated user", + "type": "string" + } + }, + "type": "object" + }, + "EntityAdWordsLink": { + "description": "JSON template for Analytics Entity AdWords Link.", + "id": "EntityAdWordsLink", + "properties": { + "adWordsAccounts": { + "annotations": { + "required": [ + "analytics.management.webPropertyAdWordsLinks.insert", + "analytics.management.webPropertyAdWordsLinks.update" + ] + }, + "description": "A list of AdWords client accounts. These cannot be MCC accounts. This field is required when creating an AdWords link. It cannot be empty.", + "items": { + "$ref": "AdWordsAccount" + }, + "type": "array" + }, + "entity": { + "description": "Web property being linked.", + "properties": { + "webPropertyRef": { + "$ref": "WebPropertyRef" + } + }, + "type": "object" + }, + "id": { + "description": "Entity AdWords link ID", + "type": "string" + }, + "kind": { + "default": "analytics#entityAdWordsLink", + "description": "Resource type for entity AdWords link.", + "type": "string" + }, + "name": { + "annotations": { + "required": [ + "analytics.management.webPropertyAdWordsLinks.insert", + "analytics.management.webPropertyAdWordsLinks.update" + ] + }, + "description": "Name of the link. This field is required when creating an AdWords link.", + "type": "string" + }, + "profileIds": { + "description": "IDs of linked Views (Profiles) represented as strings.", + "items": { + "type": "string" + }, + "type": "array" + }, + "selfLink": { + "description": "URL link for this Google Analytics - Google AdWords link.", + "type": "string" + } + }, + "type": "object" + }, + "EntityAdWordsLinks": { + "description": "An entity AdWords link collection provides a list of GA-AdWords links Each resource in this collection corresponds to a single link.", + "id": "EntityAdWordsLinks", + "properties": { + "items": { + "description": "A list of entity AdWords links.", + "items": { + "$ref": "EntityAdWordsLink" + }, + "type": "array" + }, + "itemsPerPage": { + "description": "The maximum number of entries the response can contain, regardless of the actual number of entries returned. Its value ranges from 1 to 1000 with a value of 1000 by default, or otherwise specified by the max-results query parameter.", + "format": "int32", + "type": "integer" + }, + "kind": { + "default": "analytics#entityAdWordsLinks", + "description": "Collection type.", + "type": "string" + }, + "nextLink": { + "description": "Next link for this AdWords link collection.", + "type": "string" + }, + "previousLink": { + "description": "Previous link for this AdWords link collection.", + "type": "string" + }, + "startIndex": { + "description": "The starting index of the entries, which is 1 by default or otherwise specified by the start-index query parameter.", + "format": "int32", + "type": "integer" + }, + "totalResults": { + "description": "The total number of results for the query, regardless of the number of results in the response.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "EntityUserLink": { + "description": "JSON template for an Analytics Entity-User Link. Returns permissions that a user has for an entity.", + "id": "EntityUserLink", + "properties": { + "entity": { + "description": "Entity for this link. It can be an account, a web property, or a view (profile).", + "properties": { + "accountRef": { + "$ref": "AccountRef", + "description": "Account for this link." + }, + "profileRef": { + "$ref": "ProfileRef", + "description": "View (Profile) for this link." + }, + "webPropertyRef": { + "$ref": "WebPropertyRef", + "description": "Web property for this link." + } + }, + "type": "object" + }, + "id": { + "description": "Entity user link ID", + "type": "string" + }, + "kind": { + "default": "analytics#entityUserLink", + "description": "Resource type for entity user link.", + "type": "string" + }, + "permissions": { + "description": "Permissions the user has for this entity.", + "properties": { + "effective": { + "description": "Effective permissions represent all the permissions that a user has for this entity. These include any implied permissions (e.g., EDIT implies VIEW) or inherited permissions from the parent entity. Effective permissions are read-only.", + "items": { + "type": "string" + }, + "readOnly": true, + "type": "array" + }, + "local": { + "description": "Permissions that a user has been assigned at this very level. Does not include any implied or inherited permissions. Local permissions are modifiable.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "selfLink": { + "description": "Self link for this resource.", + "type": "string" + }, + "userRef": { + "$ref": "UserRef", + "description": "User reference." + } + }, + "type": "object" + }, + "EntityUserLinks": { + "description": "An entity user link collection provides a list of Analytics ACL links Each resource in this collection corresponds to a single link.", + "id": "EntityUserLinks", + "properties": { + "items": { + "description": "A list of entity user links.", + "items": { + "$ref": "EntityUserLink" + }, + "type": "array" + }, + "itemsPerPage": { + "description": "The maximum number of entries the response can contain, regardless of the actual number of entries returned. Its value ranges from 1 to 1000 with a value of 1000 by default, or otherwise specified by the max-results query parameter.", + "format": "int32", + "type": "integer" + }, + "kind": { + "default": "analytics#entityUserLinks", + "description": "Collection type.", + "type": "string" + }, + "nextLink": { + "description": "Next link for this account collection.", + "type": "string" + }, + "previousLink": { + "description": "Previous link for this account collection.", + "type": "string" + }, + "startIndex": { + "description": "The starting index of the entries, which is 1 by default or otherwise specified by the start-index query parameter.", + "format": "int32", + "type": "integer" + }, + "totalResults": { + "description": "The total number of results for the query, regardless of the number of results in the response.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "Experiment": { + "description": "JSON template for Analytics experiment resource.", + "id": "Experiment", + "properties": { + "accountId": { + "description": "Account ID to which this experiment belongs. This field is read-only.", + "type": "string" + }, + "created": { + "description": "Time the experiment was created. This field is read-only.", + "format": "date-time", + "type": "string" + }, + "description": { + "description": "Notes about this experiment.", + "type": "string" + }, + "editableInGaUi": { + "description": "If true, the end user will be able to edit the experiment via the Google Analytics user interface.", + "type": "boolean" + }, + "endTime": { + "description": "The ending time of the experiment (the time the status changed from RUNNING to ENDED). This field is present only if the experiment has ended. This field is read-only.", + "format": "date-time", + "type": "string" + }, + "equalWeighting": { + "description": "Boolean specifying whether to distribute traffic evenly across all variations. If the value is False, content experiments follows the default behavior of adjusting traffic dynamically based on variation performance. Optional -- defaults to False. This field may not be changed for an experiment whose status is ENDED.", + "type": "boolean" + }, + "id": { + "annotations": { + "required": [ + "analytics.management.experiments.patch", + "analytics.management.experiments.update" + ] + }, + "description": "Experiment ID. Required for patch and update. Disallowed for create.", + "type": "string" + }, + "internalWebPropertyId": { + "description": "Internal ID for the web property to which this experiment belongs. This field is read-only.", + "type": "string" + }, + "kind": { + "default": "analytics#experiment", + "description": "Resource type for an Analytics experiment. This field is read-only.", + "type": "string" + }, + "minimumExperimentLengthInDays": { + "description": "An integer number in [3, 90]. Specifies the minimum length of the experiment. Can be changed for a running experiment. This field may not be changed for an experiments whose status is ENDED.", + "format": "int32", + "type": "integer" + }, + "name": { + "annotations": { + "required": [ + "analytics.management.experiments.insert", + "analytics.management.experiments.update" + ] + }, + "description": "Experiment name. This field may not be changed for an experiment whose status is ENDED. This field is required when creating an experiment.", + "type": "string" + }, + "objectiveMetric": { + "description": "The metric that the experiment is optimizing. Valid values: \"ga:goal(n)Completions\", \"ga:adsenseAdsClicks\", \"ga:adsenseAdsViewed\", \"ga:adsenseRevenue\", \"ga:bounces\", \"ga:pageviews\", \"ga:sessionDuration\", \"ga:transactions\", \"ga:transactionRevenue\". This field is required if status is \"RUNNING\" and servingFramework is one of \"REDIRECT\" or \"API\".", + "type": "string" + }, + "optimizationType": { + "description": "Whether the objectiveMetric should be minimized or maximized. Possible values: \"MAXIMUM\", \"MINIMUM\". Optional--defaults to \"MAXIMUM\". Cannot be specified without objectiveMetric. Cannot be modified when status is \"RUNNING\" or \"ENDED\".", + "type": "string" + }, + "parentLink": { + "description": "Parent link for an experiment. Points to the view (profile) to which this experiment belongs.", + "properties": { + "href": { + "description": "Link to the view (profile) to which this experiment belongs. This field is read-only.", + "type": "string" + }, + "type": { + "default": "analytics#profile", + "description": "Value is \"analytics#profile\". This field is read-only.", + "type": "string" + } + }, + "type": "object" + }, + "profileId": { + "description": "View (Profile) ID to which this experiment belongs. This field is read-only.", + "type": "string" + }, + "reasonExperimentEnded": { + "description": "Why the experiment ended. Possible values: \"STOPPED_BY_USER\", \"WINNER_FOUND\", \"EXPERIMENT_EXPIRED\", \"ENDED_WITH_NO_WINNER\", \"GOAL_OBJECTIVE_CHANGED\". \"ENDED_WITH_NO_WINNER\" means that the experiment didn't expire but no winner was projected to be found. If the experiment status is changed via the API to ENDED this field is set to STOPPED_BY_USER. This field is read-only.", + "type": "string" + }, + "rewriteVariationUrlsAsOriginal": { + "description": "Boolean specifying whether variations URLS are rewritten to match those of the original. This field may not be changed for an experiments whose status is ENDED.", + "type": "boolean" + }, + "selfLink": { + "description": "Link for this experiment. This field is read-only.", + "type": "string" + }, + "servingFramework": { + "description": "The framework used to serve the experiment variations and evaluate the results. One of: \n- REDIRECT: Google Analytics redirects traffic to different variation pages, reports the chosen variation and evaluates the results.\n- API: Google Analytics chooses and reports the variation to serve and evaluates the results; the caller is responsible for serving the selected variation.\n- EXTERNAL: The variations will be served externally and the chosen variation reported to Google Analytics. The caller is responsible for serving the selected variation and evaluating the results.", + "type": "string" + }, + "snippet": { + "description": "The snippet of code to include on the control page(s). This field is read-only.", + "type": "string" + }, + "startTime": { + "description": "The starting time of the experiment (the time the status changed from READY_TO_RUN to RUNNING). This field is present only if the experiment has started. This field is read-only.", + "format": "date-time", + "type": "string" + }, + "status": { + "annotations": { + "required": [ + "analytics.management.experiments.insert", + "analytics.management.experiments.update" + ] + }, + "description": "Experiment status. Possible values: \"DRAFT\", \"READY_TO_RUN\", \"RUNNING\", \"ENDED\". Experiments can be created in the \"DRAFT\", \"READY_TO_RUN\" or \"RUNNING\" state. This field is required when creating an experiment.", + "type": "string" + }, + "trafficCoverage": { + "description": "A floating-point number in (0, 1]. Specifies the fraction of the traffic that participates in the experiment. Can be changed for a running experiment. This field may not be changed for an experiments whose status is ENDED.", + "format": "double", + "type": "number" + }, + "updated": { + "description": "Time the experiment was last modified. This field is read-only.", + "format": "date-time", + "type": "string" + }, + "variations": { + "description": "Array of variations. The first variation in the array is the original. The number of variations may not change once an experiment is in the RUNNING state. At least two variations are required before status can be set to RUNNING.", + "items": { + "properties": { + "name": { + "annotations": { + "required": [ + "analytics.management.experiments.insert", + "analytics.management.experiments.update" + ] + }, + "description": "The name of the variation. This field is required when creating an experiment. This field may not be changed for an experiment whose status is ENDED.", + "type": "string" + }, + "status": { + "description": "Status of the variation. Possible values: \"ACTIVE\", \"INACTIVE\". INACTIVE variations are not served. This field may not be changed for an experiment whose status is ENDED.", + "type": "string" + }, + "url": { + "description": "The URL of the variation. This field may not be changed for an experiment whose status is RUNNING or ENDED.", + "type": "string" + }, + "weight": { + "description": "Weight that this variation should receive. Only present if the experiment is running. This field is read-only.", + "format": "double", + "type": "number" + }, + "won": { + "description": "True if the experiment has ended and this variation performed (statistically) significantly better than the original. This field is read-only.", + "type": "boolean" + } + }, + "type": "object" + }, + "type": "array" + }, + "webPropertyId": { + "description": "Web property ID to which this experiment belongs. The web property ID is of the form UA-XXXXX-YY. This field is read-only.", + "type": "string" + }, + "winnerConfidenceLevel": { + "description": "A floating-point number in (0, 1). Specifies the necessary confidence level to choose a winner. This field may not be changed for an experiments whose status is ENDED.", + "format": "double", + "type": "number" + }, + "winnerFound": { + "description": "Boolean specifying whether a winner has been found for this experiment. This field is read-only.", + "type": "boolean" + } + }, + "type": "object" + }, + "Experiments": { + "description": "An experiment collection lists Analytics experiments to which the user has access. Each view (profile) can have a set of experiments. Each resource in the Experiment collection corresponds to a single Analytics experiment.", + "id": "Experiments", + "properties": { + "items": { + "description": "A list of experiments.", + "items": { + "$ref": "Experiment" + }, + "type": "array" + }, + "itemsPerPage": { + "description": "The maximum number of resources the response can contain, regardless of the actual number of resources returned. Its value ranges from 1 to 1000 with a value of 1000 by default, or otherwise specified by the max-results query parameter.", + "format": "int32", + "type": "integer" + }, + "kind": { + "default": "analytics#experiments", + "description": "Collection type.", + "type": "string" + }, + "nextLink": { + "description": "Link to next page for this experiment collection.", + "type": "string" + }, + "previousLink": { + "description": "Link to previous page for this experiment collection.", + "type": "string" + }, + "startIndex": { + "description": "The starting index of the resources, which is 1 by default or otherwise specified by the start-index query parameter.", + "format": "int32", + "type": "integer" + }, + "totalResults": { + "description": "The total number of results for the query, regardless of the number of resources in the result.", + "format": "int32", + "type": "integer" + }, + "username": { + "description": "Email ID of the authenticated user", + "type": "string" + } + }, + "type": "object" + }, + "Filter": { + "description": "JSON template for an Analytics account filter.", + "id": "Filter", + "properties": { + "accountId": { + "description": "Account ID to which this filter belongs.", + "type": "string" + }, + "advancedDetails": { + "description": "Details for the filter of the type ADVANCED.", + "properties": { + "caseSensitive": { + "description": "Indicates if the filter expressions are case sensitive.", + "type": "boolean" + }, + "extractA": { + "description": "Expression to extract from field A.", + "type": "string" + }, + "extractB": { + "description": "Expression to extract from field B.", + "type": "string" + }, + "fieldA": { + "description": "Field A.", + "type": "string" + }, + "fieldAIndex": { + "description": "The Index of the custom dimension. Required if field is a CUSTOM_DIMENSION.", + "format": "int32", + "type": "integer" + }, + "fieldARequired": { + "description": "Indicates if field A is required to match.", + "type": "boolean" + }, + "fieldB": { + "description": "Field B.", + "type": "string" + }, + "fieldBIndex": { + "description": "The Index of the custom dimension. Required if field is a CUSTOM_DIMENSION.", + "format": "int32", + "type": "integer" + }, + "fieldBRequired": { + "description": "Indicates if field B is required to match.", + "type": "boolean" + }, + "outputConstructor": { + "description": "Expression used to construct the output value.", + "type": "string" + }, + "outputToField": { + "description": "Output field.", + "type": "string" + }, + "outputToFieldIndex": { + "description": "The Index of the custom dimension. Required if field is a CUSTOM_DIMENSION.", + "format": "int32", + "type": "integer" + }, + "overrideOutputField": { + "description": "Indicates if the existing value of the output field, if any, should be overridden by the output expression.", + "type": "boolean" + } + }, + "type": "object" + }, + "created": { + "description": "Time this filter was created.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "excludeDetails": { + "$ref": "FilterExpression", + "description": "Details for the filter of the type EXCLUDE." + }, + "id": { + "description": "Filter ID.", + "type": "string" + }, + "includeDetails": { + "$ref": "FilterExpression", + "description": "Details for the filter of the type INCLUDE." + }, + "kind": { + "default": "analytics#filter", + "description": "Resource type for Analytics filter.", + "readOnly": true, + "type": "string" + }, + "lowercaseDetails": { + "description": "Details for the filter of the type LOWER.", + "properties": { + "field": { + "description": "Field to use in the filter.", + "type": "string" + }, + "fieldIndex": { + "description": "The Index of the custom dimension. Required if field is a CUSTOM_DIMENSION.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "name": { + "annotations": { + "required": [ + "analytics.management.filters.insert", + "analytics.management.filters.update" + ] + }, + "description": "Name of this filter.", + "type": "string" + }, + "parentLink": { + "description": "Parent link for this filter. Points to the account to which this filter belongs.", + "properties": { + "href": { + "description": "Link to the account to which this filter belongs.", + "type": "string" + }, + "type": { + "default": "analytics#account", + "description": "Value is \"analytics#account\".", + "type": "string" + } + }, + "type": "object" + }, + "searchAndReplaceDetails": { + "description": "Details for the filter of the type SEARCH_AND_REPLACE.", + "properties": { + "caseSensitive": { + "description": "Determines if the filter is case sensitive.", + "type": "boolean" + }, + "field": { + "description": "Field to use in the filter.", + "type": "string" + }, + "fieldIndex": { + "description": "The Index of the custom dimension. Required if field is a CUSTOM_DIMENSION.", + "format": "int32", + "type": "integer" + }, + "replaceString": { + "description": "Term to replace the search term with.", + "type": "string" + }, + "searchString": { + "description": "Term to search.", + "type": "string" + } + }, + "type": "object" + }, + "selfLink": { + "description": "Link for this filter.", + "readOnly": true, + "type": "string" + }, + "type": { + "annotations": { + "required": [ + "analytics.management.filters.insert", + "analytics.management.filters.update" + ] + }, + "description": "Type of this filter. Possible values are INCLUDE, EXCLUDE, LOWERCASE, UPPERCASE, SEARCH_AND_REPLACE and ADVANCED.", + "type": "string" + }, + "updated": { + "description": "Time this filter was last modified.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "uppercaseDetails": { + "description": "Details for the filter of the type UPPER.", + "properties": { + "field": { + "description": "Field to use in the filter.", + "type": "string" + }, + "fieldIndex": { + "description": "The Index of the custom dimension. Required if field is a CUSTOM_DIMENSION.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "FilterExpression": { + "description": "JSON template for an Analytics filter expression.", + "id": "FilterExpression", + "properties": { + "caseSensitive": { + "description": "Determines if the filter is case sensitive.", + "type": "boolean" + }, + "expressionValue": { + "description": "Filter expression value", + "type": "string" + }, + "field": { + "description": "Field to filter. Possible values: \n- Content and Traffic \n- PAGE_REQUEST_URI, \n- PAGE_HOSTNAME, \n- PAGE_TITLE, \n- REFERRAL, \n- COST_DATA_URI (Campaign target URL), \n- HIT_TYPE, \n- INTERNAL_SEARCH_TERM, \n- INTERNAL_SEARCH_TYPE, \n- SOURCE_PROPERTY_TRACKING_ID, \n- Campaign or AdGroup \n- CAMPAIGN_SOURCE, \n- CAMPAIGN_MEDIUM, \n- CAMPAIGN_NAME, \n- CAMPAIGN_AD_GROUP, \n- CAMPAIGN_TERM, \n- CAMPAIGN_CONTENT, \n- CAMPAIGN_CODE, \n- CAMPAIGN_REFERRAL_PATH, \n- E-Commerce \n- TRANSACTION_COUNTRY, \n- TRANSACTION_REGION, \n- TRANSACTION_CITY, \n- TRANSACTION_AFFILIATION (Store or order location), \n- ITEM_NAME, \n- ITEM_CODE, \n- ITEM_VARIATION, \n- TRANSACTION_ID, \n- TRANSACTION_CURRENCY_CODE, \n- PRODUCT_ACTION_TYPE, \n- Audience/Users \n- BROWSER, \n- BROWSER_VERSION, \n- BROWSER_SIZE, \n- PLATFORM, \n- PLATFORM_VERSION, \n- LANGUAGE, \n- SCREEN_RESOLUTION, \n- SCREEN_COLORS, \n- JAVA_ENABLED (Boolean Field), \n- FLASH_VERSION, \n- GEO_SPEED (Connection speed), \n- VISITOR_TYPE, \n- GEO_ORGANIZATION (ISP organization), \n- GEO_DOMAIN, \n- GEO_IP_ADDRESS, \n- GEO_IP_VERSION, \n- Location \n- GEO_COUNTRY, \n- GEO_REGION, \n- GEO_CITY, \n- Event \n- EVENT_CATEGORY, \n- EVENT_ACTION, \n- EVENT_LABEL, \n- Other \n- CUSTOM_FIELD_1, \n- CUSTOM_FIELD_2, \n- USER_DEFINED_VALUE, \n- Application \n- APP_ID, \n- APP_INSTALLER_ID, \n- APP_NAME, \n- APP_VERSION, \n- SCREEN, \n- IS_APP (Boolean Field), \n- IS_FATAL_EXCEPTION (Boolean Field), \n- EXCEPTION_DESCRIPTION, \n- Mobile device \n- IS_MOBILE (Boolean Field, Deprecated. Use DEVICE_CATEGORY=mobile), \n- IS_TABLET (Boolean Field, Deprecated. Use DEVICE_CATEGORY=tablet), \n- DEVICE_CATEGORY, \n- MOBILE_HAS_QWERTY_KEYBOARD (Boolean Field), \n- MOBILE_HAS_NFC_SUPPORT (Boolean Field), \n- MOBILE_HAS_CELLULAR_RADIO (Boolean Field), \n- MOBILE_HAS_WIFI_SUPPORT (Boolean Field), \n- MOBILE_BRAND_NAME, \n- MOBILE_MODEL_NAME, \n- MOBILE_MARKETING_NAME, \n- MOBILE_POINTING_METHOD, \n- Social \n- SOCIAL_NETWORK, \n- SOCIAL_ACTION, \n- SOCIAL_ACTION_TARGET, \n- Custom dimension \n- CUSTOM_DIMENSION (See accompanying field index),", + "type": "string" + }, + "fieldIndex": { + "description": "The Index of the custom dimension. Set only if the field is a is CUSTOM_DIMENSION.", + "format": "int32", + "type": "integer" + }, + "kind": { + "default": "analytics#filterExpression", + "description": "Kind value for filter expression", + "type": "string" + }, + "matchType": { + "description": "Match type for this filter. Possible values are BEGINS_WITH, EQUAL, ENDS_WITH, CONTAINS, or MATCHES. GEO_DOMAIN, GEO_IP_ADDRESS, PAGE_REQUEST_URI, or PAGE_HOSTNAME filters can use any match type; all other filters must use MATCHES.", + "type": "string" + } + }, + "type": "object" + }, + "FilterRef": { + "description": "JSON template for a profile filter link.", + "id": "FilterRef", + "properties": { + "accountId": { + "description": "Account ID to which this filter belongs.", + "readOnly": true, + "type": "string" + }, + "href": { + "description": "Link for this filter.", + "type": "string" + }, + "id": { + "annotations": { + "required": [ + "analytics.management.profileFilterLinks.insert" + ] + }, + "description": "Filter ID.", + "type": "string" + }, + "kind": { + "default": "analytics#filterRef", + "description": "Kind value for filter reference.", + "type": "string" + }, + "name": { + "description": "Name of this filter.", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "Filters": { + "description": "A filter collection lists filters created by users in an Analytics account. Each resource in the collection corresponds to a filter.", + "id": "Filters", + "properties": { + "items": { + "description": "A list of filters.", + "items": { + "$ref": "Filter" + }, + "type": "array" + }, + "itemsPerPage": { + "description": "The maximum number of resources the response can contain, regardless of the actual number of resources returned. Its value ranges from 1 to 1,000 with a value of 1000 by default, or otherwise specified by the max-results query parameter.", + "format": "int32", + "type": "integer" + }, + "kind": { + "default": "analytics#filters", + "description": "Collection type.", + "type": "string" + }, + "nextLink": { + "description": "Link to next page for this filter collection.", + "type": "string" + }, + "previousLink": { + "description": "Link to previous page for this filter collection.", + "type": "string" + }, + "startIndex": { + "description": "The starting index of the resources, which is 1 by default or otherwise specified by the start-index query parameter.", + "format": "int32", + "type": "integer" + }, + "totalResults": { + "description": "The total number of results for the query, regardless of the number of results in the response.", + "format": "int32", + "type": "integer" + }, + "username": { + "description": "Email ID of the authenticated user", + "type": "string" + } + }, + "type": "object" + }, + "GaData": { + "description": "Analytics data for a given view (profile).", + "id": "GaData", + "properties": { + "columnHeaders": { + "description": "Column headers that list dimension names followed by the metric names. The order of dimensions and metrics is same as specified in the request.", + "items": { + "properties": { + "columnType": { + "description": "Column Type. Either DIMENSION or METRIC.", + "type": "string" + }, + "dataType": { + "description": "Data type. Dimension column headers have only STRING as the data type. Metric column headers have data types for metric values such as INTEGER, DOUBLE, CURRENCY etc.", + "type": "string" + }, + "name": { + "description": "Column name.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "containsSampledData": { + "description": "Determines if Analytics data contains samples.", + "type": "boolean" + }, + "dataLastRefreshed": { + "description": "The last refreshed time in seconds for Analytics data.", + "format": "int64", + "type": "string" + }, + "dataTable": { + "properties": { + "cols": { + "items": { + "properties": { + "id": { + "type": "string" + }, + "label": { + "type": "string" + }, + "type": { + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "rows": { + "items": { + "properties": { + "c": { + "items": { + "properties": { + "v": { + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + } + }, + "type": "object" + }, + "type": "array" + } + }, + "type": "object" + }, + "id": { + "description": "Unique ID for this data response.", + "type": "string" + }, + "itemsPerPage": { + "description": "The maximum number of rows the response can contain, regardless of the actual number of rows returned. Its value ranges from 1 to 10,000 with a value of 1000 by default, or otherwise specified by the max-results query parameter.", + "format": "int32", + "type": "integer" + }, + "kind": { + "default": "analytics#gaData", + "description": "Resource type.", + "type": "string" + }, + "nextLink": { + "description": "Link to next page for this Analytics data query.", + "type": "string" + }, + "previousLink": { + "description": "Link to previous page for this Analytics data query.", + "type": "string" + }, + "profileInfo": { + "description": "Information for the view (profile), for which the Analytics data was requested.", + "properties": { + "accountId": { + "description": "Account ID to which this view (profile) belongs.", + "type": "string" + }, + "internalWebPropertyId": { + "description": "Internal ID for the web property to which this view (profile) belongs.", + "type": "string" + }, + "profileId": { + "description": "View (Profile) ID.", + "type": "string" + }, + "profileName": { + "description": "View (Profile) name.", + "type": "string" + }, + "tableId": { + "description": "Table ID for view (profile).", + "type": "string" + }, + "webPropertyId": { + "description": "Web Property ID to which this view (profile) belongs.", + "type": "string" + } + }, + "type": "object" + }, + "query": { + "description": "Analytics data request query parameters.", + "properties": { + "dimensions": { + "description": "List of analytics dimensions.", + "type": "string" + }, + "end-date": { + "description": "End date.", + "type": "string" + }, + "filters": { + "description": "Comma-separated list of dimension or metric filters.", + "type": "string" + }, + "ids": { + "description": "Unique table ID.", + "type": "string" + }, + "max-results": { + "description": "Maximum results per page.", + "format": "int32", + "type": "integer" + }, + "metrics": { + "description": "List of analytics metrics.", + "items": { + "type": "string" + }, + "type": "array" + }, + "samplingLevel": { + "description": "Desired sampling level", + "type": "string" + }, + "segment": { + "description": "Analytics advanced segment.", + "type": "string" + }, + "sort": { + "description": "List of dimensions or metrics based on which Analytics data is sorted.", + "items": { + "type": "string" + }, + "type": "array" + }, + "start-date": { + "description": "Start date.", + "type": "string" + }, + "start-index": { + "description": "Start index.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "rows": { + "description": "Analytics data rows, where each row contains a list of dimension values followed by the metric values. The order of dimensions and metrics is same as specified in the request.", + "items": { + "items": { + "type": "string" + }, + "type": "array" + }, + "type": "array" + }, + "sampleSize": { + "description": "The number of samples used to calculate the result.", + "format": "int64", + "type": "string" + }, + "sampleSpace": { + "description": "Total size of the sample space from which the samples were selected.", + "format": "int64", + "type": "string" + }, + "selfLink": { + "description": "Link to this page.", + "type": "string" + }, + "totalResults": { + "description": "The total number of rows for the query, regardless of the number of rows in the response.", + "format": "int32", + "type": "integer" + }, + "totalsForAllResults": { + "additionalProperties": { + "description": "Key-value pair for the total value of a metric. Key is the metric name and the value is the total value for that metric.", + "type": "string" + }, + "description": "Total values for the requested metrics over all the results, not just the results returned in this response. The order of the metric totals is same as the metric order specified in the request.", + "type": "object" + } + }, + "type": "object" + }, + "Goal": { + "description": "JSON template for Analytics goal resource.", + "id": "Goal", + "properties": { + "accountId": { + "description": "Account ID to which this goal belongs.", + "type": "string" + }, + "active": { + "description": "Determines whether this goal is active.", + "type": "boolean" + }, + "created": { + "description": "Time this goal was created.", + "format": "date-time", + "type": "string" + }, + "eventDetails": { + "description": "Details for the goal of the type EVENT.", + "properties": { + "eventConditions": { + "description": "List of event conditions.", + "items": { + "properties": { + "comparisonType": { + "description": "Type of comparison. Possible values are LESS_THAN, GREATER_THAN or EQUAL.", + "type": "string" + }, + "comparisonValue": { + "description": "Value used for this comparison.", + "format": "int64", + "type": "string" + }, + "expression": { + "description": "Expression used for this match.", + "type": "string" + }, + "matchType": { + "description": "Type of the match to be performed. Possible values are REGEXP, BEGINS_WITH, or EXACT.", + "type": "string" + }, + "type": { + "description": "Type of this event condition. Possible values are CATEGORY, ACTION, LABEL, or VALUE.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "useEventValue": { + "description": "Determines if the event value should be used as the value for this goal.", + "type": "boolean" + } + }, + "type": "object" + }, + "id": { + "description": "Goal ID.", + "type": "string" + }, + "internalWebPropertyId": { + "description": "Internal ID for the web property to which this goal belongs.", + "type": "string" + }, + "kind": { + "default": "analytics#goal", + "description": "Resource type for an Analytics goal.", + "type": "string" + }, + "name": { + "description": "Goal name.", + "type": "string" + }, + "parentLink": { + "description": "Parent link for a goal. Points to the view (profile) to which this goal belongs.", + "properties": { + "href": { + "description": "Link to the view (profile) to which this goal belongs.", + "type": "string" + }, + "type": { + "default": "analytics#profile", + "description": "Value is \"analytics#profile\".", + "type": "string" + } + }, + "type": "object" + }, + "profileId": { + "description": "View (Profile) ID to which this goal belongs.", + "type": "string" + }, + "selfLink": { + "description": "Link for this goal.", + "type": "string" + }, + "type": { + "description": "Goal type. Possible values are URL_DESTINATION, VISIT_TIME_ON_SITE, VISIT_NUM_PAGES, AND EVENT.", + "type": "string" + }, + "updated": { + "description": "Time this goal was last modified.", + "format": "date-time", + "type": "string" + }, + "urlDestinationDetails": { + "description": "Details for the goal of the type URL_DESTINATION.", + "properties": { + "caseSensitive": { + "description": "Determines if the goal URL must exactly match the capitalization of visited URLs.", + "type": "boolean" + }, + "firstStepRequired": { + "description": "Determines if the first step in this goal is required.", + "type": "boolean" + }, + "matchType": { + "description": "Match type for the goal URL. Possible values are HEAD, EXACT, or REGEX.", + "type": "string" + }, + "steps": { + "description": "List of steps configured for this goal funnel.", + "items": { + "properties": { + "name": { + "description": "Step name.", + "type": "string" + }, + "number": { + "description": "Step number.", + "format": "int32", + "type": "integer" + }, + "url": { + "description": "URL for this step.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "url": { + "description": "URL for this goal.", + "type": "string" + } + }, + "type": "object" + }, + "value": { + "description": "Goal value.", + "format": "float", + "type": "number" + }, + "visitNumPagesDetails": { + "description": "Details for the goal of the type VISIT_NUM_PAGES.", + "properties": { + "comparisonType": { + "description": "Type of comparison. Possible values are LESS_THAN, GREATER_THAN, or EQUAL.", + "type": "string" + }, + "comparisonValue": { + "description": "Value used for this comparison.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "visitTimeOnSiteDetails": { + "description": "Details for the goal of the type VISIT_TIME_ON_SITE.", + "properties": { + "comparisonType": { + "description": "Type of comparison. Possible values are LESS_THAN or GREATER_THAN.", + "type": "string" + }, + "comparisonValue": { + "description": "Value used for this comparison.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "webPropertyId": { + "description": "Web property ID to which this goal belongs. The web property ID is of the form UA-XXXXX-YY.", + "type": "string" + } + }, + "type": "object" + }, + "Goals": { + "description": "A goal collection lists Analytics goals to which the user has access. Each view (profile) can have a set of goals. Each resource in the Goal collection corresponds to a single Analytics goal.", + "id": "Goals", + "properties": { + "items": { + "description": "A list of goals.", + "items": { + "$ref": "Goal" + }, + "type": "array" + }, + "itemsPerPage": { + "description": "The maximum number of resources the response can contain, regardless of the actual number of resources returned. Its value ranges from 1 to 1000 with a value of 1000 by default, or otherwise specified by the max-results query parameter.", + "format": "int32", + "type": "integer" + }, + "kind": { + "default": "analytics#goals", + "description": "Collection type.", + "type": "string" + }, + "nextLink": { + "description": "Link to next page for this goal collection.", + "type": "string" + }, + "previousLink": { + "description": "Link to previous page for this goal collection.", + "type": "string" + }, + "startIndex": { + "description": "The starting index of the resources, which is 1 by default or otherwise specified by the start-index query parameter.", + "format": "int32", + "type": "integer" + }, + "totalResults": { + "description": "The total number of results for the query, regardless of the number of resources in the result.", + "format": "int32", + "type": "integer" + }, + "username": { + "description": "Email ID of the authenticated user", + "type": "string" + } + }, + "type": "object" + }, + "IncludeConditions": { + "description": "JSON template for an Analytics Remarketing Include Conditions.", + "id": "IncludeConditions", + "properties": { + "daysToLookBack": { + "description": "The look-back window lets you specify a time frame for evaluating the behavior that qualifies users for your audience. For example, if your filters include users from Central Asia, and Transactions Greater than 2, and you set the look-back window to 14 days, then any user from Central Asia whose cumulative transactions exceed 2 during the last 14 days is added to the audience.", + "format": "int32", + "type": "integer" + }, + "isSmartList": { + "description": "Boolean indicating whether this segment is a smart list. https://support.google.com/analytics/answer/4628577", + "type": "boolean" + }, + "kind": { + "default": "analytics#includeConditions", + "description": "Resource type for include conditions.", + "type": "string" + }, + "membershipDurationDays": { + "description": "Number of days (in the range 1 to 540) a user remains in the audience.", + "format": "int32", + "type": "integer" + }, + "segment": { + "description": "The segment condition that will cause a user to be added to an audience.", + "type": "string" + } + }, + "type": "object" + }, + "LinkedForeignAccount": { + "description": "JSON template for an Analytics Remarketing Audience Foreign Link.", + "id": "LinkedForeignAccount", + "properties": { + "accountId": { + "description": "Account ID to which this linked foreign account belongs.", + "type": "string" + }, + "eligibleForSearch": { + "description": "Boolean indicating whether this is eligible for search.", + "readOnly": true, + "type": "boolean" + }, + "id": { + "description": "Entity ad account link ID.", + "type": "string" + }, + "internalWebPropertyId": { + "description": "Internal ID for the web property to which this linked foreign account belongs.", + "readOnly": true, + "type": "string" + }, + "kind": { + "default": "analytics#linkedForeignAccount", + "description": "Resource type for linked foreign account.", + "type": "string" + }, + "linkedAccountId": { + "description": "The foreign account ID. For example the an AdWords `linkedAccountId` has the following format XXX-XXX-XXXX.", + "type": "string" }, "remarketingAudienceId": { - "type": "string", - "description": "The ID of the remarketing audience to update.", - "required": true, - "location": "path" + "description": "Remarketing audience ID to which this linked foreign account belongs.", + "type": "string" + }, + "status": { + "description": "The status of this foreign account link.", + "type": "string" + }, + "type": { + "description": "The type of the foreign account. For example, `ADWORDS_LINKS`, `DBM_LINKS`, `MCC_LINKS` or `OPTIMIZE`.", + "type": "string" }, "webPropertyId": { - "type": "string", - "description": "The web property ID of the remarketing audience to update.", - "required": true, - "location": "path" + "description": "Web property ID of the form UA-XXXXX-YY to which this linked foreign account belongs.", + "type": "string" } - }, - "parameterOrder": [ - "accountId", - "webPropertyId", - "remarketingAudienceId" - ], - "request": { - "$ref": "RemarketingAudience" - }, - "response": { - "$ref": "RemarketingAudience" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics.edit" - ] }, - "update": { - "id": "analytics.management.remarketingAudience.update", - "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/remarketingAudiences/{remarketingAudienceId}", - "httpMethod": "PUT", - "description": "Updates an existing remarketing audience.", - "parameters": { - "accountId": { - "type": "string", - "description": "The account ID of the remarketing audience to update.", - "required": true, - "location": "path" + "type": "object" + }, + "McfData": { + "description": "Multi-Channel Funnels data for a given view (profile).", + "id": "McfData", + "properties": { + "columnHeaders": { + "description": "Column headers that list dimension names followed by the metric names. The order of dimensions and metrics is same as specified in the request.", + "items": { + "properties": { + "columnType": { + "description": "Column Type. Either DIMENSION or METRIC.", + "type": "string" + }, + "dataType": { + "description": "Data type. Dimension and metric values data types such as INTEGER, DOUBLE, CURRENCY, MCF_SEQUENCE etc.", + "type": "string" + }, + "name": { + "description": "Column name.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" }, - "remarketingAudienceId": { - "type": "string", - "description": "The ID of the remarketing audience to update.", - "required": true, - "location": "path" + "containsSampledData": { + "description": "Determines if the Analytics data contains sampled data.", + "type": "boolean" + }, + "id": { + "description": "Unique ID for this data response.", + "type": "string" + }, + "itemsPerPage": { + "description": "The maximum number of rows the response can contain, regardless of the actual number of rows returned. Its value ranges from 1 to 10,000 with a value of 1000 by default, or otherwise specified by the max-results query parameter.", + "format": "int32", + "type": "integer" + }, + "kind": { + "default": "analytics#mcfData", + "description": "Resource type.", + "type": "string" + }, + "nextLink": { + "description": "Link to next page for this Analytics data query.", + "type": "string" + }, + "previousLink": { + "description": "Link to previous page for this Analytics data query.", + "type": "string" + }, + "profileInfo": { + "description": "Information for the view (profile), for which the Analytics data was requested.", + "properties": { + "accountId": { + "description": "Account ID to which this view (profile) belongs.", + "type": "string" + }, + "internalWebPropertyId": { + "description": "Internal ID for the web property to which this view (profile) belongs.", + "type": "string" + }, + "profileId": { + "description": "View (Profile) ID.", + "type": "string" + }, + "profileName": { + "description": "View (Profile) name.", + "type": "string" + }, + "tableId": { + "description": "Table ID for view (profile).", + "type": "string" + }, + "webPropertyId": { + "description": "Web Property ID to which this view (profile) belongs.", + "type": "string" + } + }, + "type": "object" + }, + "query": { + "description": "Analytics data request query parameters.", + "properties": { + "dimensions": { + "description": "List of analytics dimensions.", + "type": "string" + }, + "end-date": { + "description": "End date.", + "type": "string" + }, + "filters": { + "description": "Comma-separated list of dimension or metric filters.", + "type": "string" + }, + "ids": { + "description": "Unique table ID.", + "type": "string" + }, + "max-results": { + "description": "Maximum results per page.", + "format": "int32", + "type": "integer" + }, + "metrics": { + "description": "List of analytics metrics.", + "items": { + "type": "string" + }, + "type": "array" + }, + "samplingLevel": { + "description": "Desired sampling level", + "type": "string" + }, + "segment": { + "description": "Analytics advanced segment.", + "type": "string" + }, + "sort": { + "description": "List of dimensions or metrics based on which Analytics data is sorted.", + "items": { + "type": "string" + }, + "type": "array" + }, + "start-date": { + "description": "Start date.", + "type": "string" + }, + "start-index": { + "description": "Start index.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "rows": { + "description": "Analytics data rows, where each row contains a list of dimension values followed by the metric values. The order of dimensions and metrics is same as specified in the request.", + "items": { + "items": { + "description": "A union object representing a dimension or metric value. Only one of \"primitiveValue\" or \"conversionPathValue\" attribute will be populated.", + "properties": { + "conversionPathValue": { + "description": "A conversion path dimension value, containing a list of interactions with their attributes.", + "items": { + "properties": { + "interactionType": { + "description": "Type of an interaction on conversion path. Such as CLICK, IMPRESSION etc.", + "type": "string" + }, + "nodeValue": { + "description": "Node value of an interaction on conversion path. Such as source, medium etc.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "primitiveValue": { + "description": "A primitive dimension value. A primitive metric value.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "type": "array" + }, + "sampleSize": { + "description": "The number of samples used to calculate the result.", + "format": "int64", + "type": "string" + }, + "sampleSpace": { + "description": "Total size of the sample space from which the samples were selected.", + "format": "int64", + "type": "string" + }, + "selfLink": { + "description": "Link to this page.", + "type": "string" + }, + "totalResults": { + "description": "The total number of rows for the query, regardless of the number of rows in the response.", + "format": "int32", + "type": "integer" + }, + "totalsForAllResults": { + "additionalProperties": { + "description": "Key-value pair for the total value of a metric. Key is the metric name and the value is the total value for that metric.", + "type": "string" + }, + "description": "Total values for the requested metrics over all the results, not just the results returned in this response. The order of the metric totals is same as the metric order specified in the request.", + "type": "object" + } + }, + "type": "object" + }, + "Profile": { + "description": "JSON template for an Analytics view (profile).", + "id": "Profile", + "properties": { + "accountId": { + "description": "Account ID to which this view (profile) belongs.", + "type": "string" + }, + "botFilteringEnabled": { + "description": "Indicates whether bot filtering is enabled for this view (profile).", + "type": "boolean" + }, + "childLink": { + "description": "Child link for this view (profile). Points to the list of goals for this view (profile).", + "properties": { + "href": { + "description": "Link to the list of goals for this view (profile).", + "type": "string" + }, + "type": { + "default": "analytics#goals", + "description": "Value is \"analytics#goals\".", + "type": "string" + } + }, + "type": "object" + }, + "created": { + "description": "Time this view (profile) was created.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "currency": { + "description": "The currency type associated with this view (profile), defaults to USD. The supported values are:\nUSD, JPY, EUR, GBP, AUD, KRW, BRL, CNY, DKK, RUB, SEK, NOK, PLN, TRY, TWD, HKD, THB, IDR, ARS, MXN, VND, PHP, INR, CHF, CAD, CZK, NZD, HUF, BGN, LTL, ZAR, UAH, AED, BOB, CLP, COP, EGP, HRK, ILS, MAD, MYR, PEN, PKR, RON, RSD, SAR, SGD, VEF, LVL", + "type": "string" + }, + "defaultPage": { + "description": "Default page for this view (profile).", + "type": "string" + }, + "eCommerceTracking": { + "description": "Indicates whether ecommerce tracking is enabled for this view (profile).", + "type": "boolean" + }, + "enhancedECommerceTracking": { + "description": "Indicates whether enhanced ecommerce tracking is enabled for this view (profile). This property can only be enabled if ecommerce tracking is enabled.", + "type": "boolean" + }, + "excludeQueryParameters": { + "description": "The query parameters that are excluded from this view (profile).", + "type": "string" + }, + "id": { + "description": "View (Profile) ID.", + "type": "string" + }, + "internalWebPropertyId": { + "description": "Internal ID for the web property to which this view (profile) belongs.", + "readOnly": true, + "type": "string" + }, + "kind": { + "default": "analytics#profile", + "description": "Resource type for Analytics view (profile).", + "readOnly": true, + "type": "string" + }, + "name": { + "description": "Name of this view (profile).", + "type": "string" + }, + "parentLink": { + "description": "Parent link for this view (profile). Points to the web property to which this view (profile) belongs.", + "properties": { + "href": { + "description": "Link to the web property to which this view (profile) belongs.", + "type": "string" + }, + "type": { + "default": "analytics#webproperty", + "description": "Value is \"analytics#webproperty\".", + "type": "string" + } + }, + "type": "object" + }, + "permissions": { + "description": "Permissions the user has for this view (profile).", + "properties": { + "effective": { + "description": "All the permissions that the user has for this view (profile). These include any implied permissions (e.g., EDIT implies VIEW) or inherited permissions from the parent web property.", + "items": { + "type": "string" + }, + "readOnly": true, + "type": "array" + } + }, + "type": "object" + }, + "selfLink": { + "description": "Link for this view (profile).", + "readOnly": true, + "type": "string" + }, + "siteSearchCategoryParameters": { + "description": "Site search category parameters for this view (profile).", + "type": "string" + }, + "siteSearchQueryParameters": { + "description": "The site search query parameters for this view (profile).", + "type": "string" + }, + "starred": { + "description": "Indicates whether this view (profile) is starred or not.", + "type": "boolean" + }, + "stripSiteSearchCategoryParameters": { + "description": "Whether or not Analytics will strip search category parameters from the URLs in your reports.", + "type": "boolean" + }, + "stripSiteSearchQueryParameters": { + "description": "Whether or not Analytics will strip search query parameters from the URLs in your reports.", + "type": "boolean" + }, + "timezone": { + "description": "Time zone for which this view (profile) has been configured. Time zones are identified by strings from the TZ database.", + "type": "string" + }, + "type": { + "description": "View (Profile) type. Supported types: WEB or APP.", + "type": "string" + }, + "updated": { + "description": "Time this view (profile) was last modified.", + "format": "date-time", + "readOnly": true, + "type": "string" }, "webPropertyId": { - "type": "string", - "description": "The web property ID of the remarketing audience to update.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "accountId", - "webPropertyId", - "remarketingAudienceId" - ], - "request": { - "$ref": "RemarketingAudience" - }, - "response": { - "$ref": "RemarketingAudience" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics.edit" - ] - } - } - }, - "segments": { - "methods": { - "list": { - "id": "analytics.management.segments.list", - "path": "management/segments", - "httpMethod": "GET", - "description": "Lists segments to which the user has access.", - "parameters": { - "max-results": { - "type": "integer", - "description": "The maximum number of segments to include in this response.", - "format": "int32", - "location": "query" + "description": "Web property ID of the form UA-XXXXX-YY to which this view (profile) belongs.", + "readOnly": true, + "type": "string" }, - "start-index": { - "type": "integer", - "description": "An index of the first segment to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter.", - "format": "int32", - "minimum": "1", - "location": "query" + "websiteUrl": { + "description": "Website URL for this view (profile).", + "type": "string" } - }, - "response": { - "$ref": "Segments" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics", - "https://www.googleapis.com/auth/analytics.edit", - "https://www.googleapis.com/auth/analytics.readonly" - ] - } - } + }, + "type": "object" }, - "unsampledReports": { - "methods": { - "delete": { - "id": "analytics.management.unsampledReports.delete", - "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/unsampledReports/{unsampledReportId}", - "httpMethod": "DELETE", - "description": "Deletes an unsampled report.", - "parameters": { + "ProfileFilterLink": { + "description": "JSON template for an Analytics profile filter link.", + "id": "ProfileFilterLink", + "properties": { + "filterRef": { + "$ref": "FilterRef", + "description": "Filter for this link." + }, + "id": { + "description": "Profile filter link ID.", + "type": "string" + }, + "kind": { + "default": "analytics#profileFilterLink", + "description": "Resource type for Analytics filter.", + "readOnly": true, + "type": "string" + }, + "profileRef": { + "$ref": "ProfileRef", + "description": "View (Profile) for this link." + }, + "rank": { + "description": "The rank of this profile filter link relative to the other filters linked to the same profile.\nFor readonly (i.e., list and get) operations, the rank always starts at 1.\nFor write (i.e., create, update, or delete) operations, you may specify a value between 0 and 255 inclusively, [0, 255]. In order to insert a link at the end of the list, either don't specify a rank or set a rank to a number greater than the largest rank in the list. In order to insert a link to the beginning of the list specify a rank that is less than or equal to 1. The new link will move all existing filters with the same or lower rank down the list. After the link is inserted/updated/deleted all profile filter links will be renumbered starting at 1.", + "format": "int32", + "type": "integer" + }, + "selfLink": { + "description": "Link for this profile filter link.", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "ProfileFilterLinks": { + "description": "A profile filter link collection lists profile filter links between profiles and filters. Each resource in the collection corresponds to a profile filter link.", + "id": "ProfileFilterLinks", + "properties": { + "items": { + "description": "A list of profile filter links.", + "items": { + "$ref": "ProfileFilterLink" + }, + "type": "array" + }, + "itemsPerPage": { + "description": "The maximum number of resources the response can contain, regardless of the actual number of resources returned. Its value ranges from 1 to 1,000 with a value of 1000 by default, or otherwise specified by the max-results query parameter.", + "format": "int32", + "type": "integer" + }, + "kind": { + "default": "analytics#profileFilterLinks", + "description": "Collection type.", + "type": "string" + }, + "nextLink": { + "description": "Link to next page for this profile filter link collection.", + "type": "string" + }, + "previousLink": { + "description": "Link to previous page for this profile filter link collection.", + "type": "string" + }, + "startIndex": { + "description": "The starting index of the resources, which is 1 by default or otherwise specified by the start-index query parameter.", + "format": "int32", + "type": "integer" + }, + "totalResults": { + "description": "The total number of results for the query, regardless of the number of results in the response.", + "format": "int32", + "type": "integer" + }, + "username": { + "description": "Email ID of the authenticated user", + "type": "string" + } + }, + "type": "object" + }, + "ProfileRef": { + "description": "JSON template for a linked view (profile).", + "id": "ProfileRef", + "properties": { "accountId": { - "type": "string", - "description": "Account ID to delete the unsampled report for.", - "required": true, - "location": "path" + "description": "Account ID to which this view (profile) belongs.", + "type": "string" + }, + "href": { + "description": "Link for this view (profile).", + "type": "string" + }, + "id": { + "description": "View (Profile) ID.", + "type": "string" + }, + "internalWebPropertyId": { + "description": "Internal ID for the web property to which this view (profile) belongs.", + "type": "string" + }, + "kind": { + "default": "analytics#profileRef", + "description": "Analytics view (profile) reference.", + "type": "string" + }, + "name": { + "description": "Name of this view (profile).", + "type": "string" + }, + "webPropertyId": { + "description": "Web property ID of the form UA-XXXXX-YY to which this view (profile) belongs.", + "type": "string" + } + }, + "type": "object" + }, + "ProfileSummary": { + "description": "JSON template for an Analytics ProfileSummary. ProfileSummary returns basic information (i.e., summary) for a profile.", + "id": "ProfileSummary", + "properties": { + "id": { + "description": "View (profile) ID.", + "type": "string" + }, + "kind": { + "default": "analytics#profileSummary", + "description": "Resource type for Analytics ProfileSummary.", + "type": "string" + }, + "name": { + "description": "View (profile) name.", + "type": "string" + }, + "starred": { + "description": "Indicates whether this view (profile) is starred or not.", + "type": "boolean" + }, + "type": { + "description": "View (Profile) type. Supported types: WEB or APP.", + "type": "string" + } + }, + "type": "object" + }, + "Profiles": { + "description": "A view (profile) collection lists Analytics views (profiles) to which the user has access. Each resource in the collection corresponds to a single Analytics view (profile).", + "id": "Profiles", + "properties": { + "items": { + "description": "A list of views (profiles).", + "items": { + "$ref": "Profile" + }, + "type": "array" + }, + "itemsPerPage": { + "description": "The maximum number of resources the response can contain, regardless of the actual number of resources returned. Its value ranges from 1 to 1000 with a value of 1000 by default, or otherwise specified by the max-results query parameter.", + "format": "int32", + "type": "integer" + }, + "kind": { + "default": "analytics#profiles", + "description": "Collection type.", + "type": "string" + }, + "nextLink": { + "description": "Link to next page for this view (profile) collection.", + "type": "string" + }, + "previousLink": { + "description": "Link to previous page for this view (profile) collection.", + "type": "string" + }, + "startIndex": { + "description": "The starting index of the resources, which is 1 by default or otherwise specified by the start-index query parameter.", + "format": "int32", + "type": "integer" + }, + "totalResults": { + "description": "The total number of results for the query, regardless of the number of results in the response.", + "format": "int32", + "type": "integer" + }, + "username": { + "description": "Email ID of the authenticated user", + "type": "string" + } + }, + "type": "object" + }, + "RealtimeData": { + "description": "Real time data for a given view (profile).", + "id": "RealtimeData", + "properties": { + "columnHeaders": { + "description": "Column headers that list dimension names followed by the metric names. The order of dimensions and metrics is same as specified in the request.", + "items": { + "properties": { + "columnType": { + "description": "Column Type. Either DIMENSION or METRIC.", + "type": "string" + }, + "dataType": { + "description": "Data type. Dimension column headers have only STRING as the data type. Metric column headers have data types for metric values such as INTEGER, DOUBLE, CURRENCY etc.", + "type": "string" + }, + "name": { + "description": "Column name.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "id": { + "description": "Unique ID for this data response.", + "type": "string" + }, + "kind": { + "default": "analytics#realtimeData", + "description": "Resource type.", + "type": "string" + }, + "profileInfo": { + "description": "Information for the view (profile), for which the real time data was requested.", + "properties": { + "accountId": { + "description": "Account ID to which this view (profile) belongs.", + "type": "string" + }, + "internalWebPropertyId": { + "description": "Internal ID for the web property to which this view (profile) belongs.", + "type": "string" + }, + "profileId": { + "description": "View (Profile) ID.", + "type": "string" + }, + "profileName": { + "description": "View (Profile) name.", + "type": "string" + }, + "tableId": { + "description": "Table ID for view (profile).", + "type": "string" + }, + "webPropertyId": { + "description": "Web Property ID to which this view (profile) belongs.", + "type": "string" + } + }, + "type": "object" + }, + "query": { + "description": "Real time data request query parameters.", + "properties": { + "dimensions": { + "description": "List of real time dimensions.", + "type": "string" + }, + "filters": { + "description": "Comma-separated list of dimension or metric filters.", + "type": "string" + }, + "ids": { + "description": "Unique table ID.", + "type": "string" + }, + "max-results": { + "description": "Maximum results per page.", + "format": "int32", + "type": "integer" + }, + "metrics": { + "description": "List of real time metrics.", + "items": { + "type": "string" + }, + "type": "array" + }, + "sort": { + "description": "List of dimensions or metrics based on which real time data is sorted.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "rows": { + "description": "Real time data rows, where each row contains a list of dimension values followed by the metric values. The order of dimensions and metrics is same as specified in the request.", + "items": { + "items": { + "type": "string" + }, + "type": "array" + }, + "type": "array" + }, + "selfLink": { + "description": "Link to this page.", + "type": "string" + }, + "totalResults": { + "description": "The total number of rows for the query, regardless of the number of rows in the response.", + "format": "int32", + "type": "integer" + }, + "totalsForAllResults": { + "additionalProperties": { + "description": "Key-value pair for the total value of a metric. Key is the metric name and the value is the total value for that metric.", + "type": "string" + }, + "description": "Total values for the requested metrics over all the results, not just the results returned in this response. The order of the metric totals is same as the metric order specified in the request.", + "type": "object" + } + }, + "type": "object" + }, + "RemarketingAudience": { + "description": "JSON template for an Analytics remarketing audience.", + "id": "RemarketingAudience", + "properties": { + "accountId": { + "description": "Account ID to which this remarketing audience belongs.", + "type": "string" + }, + "audienceDefinition": { + "description": "The simple audience definition that will cause a user to be added to an audience.", + "properties": { + "includeConditions": { + "$ref": "IncludeConditions", + "description": "Defines the conditions to include users to the audience." + } + }, + "type": "object" + }, + "audienceType": { + "description": "The type of audience, either SIMPLE or STATE_BASED.", + "type": "string" + }, + "created": { + "description": "Time this remarketing audience was created.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "description": { + "description": "The description of this remarketing audience.", + "readOnly": true, + "type": "string" + }, + "id": { + "description": "Remarketing Audience ID.", + "type": "string" + }, + "internalWebPropertyId": { + "description": "Internal ID for the web property to which this remarketing audience belongs.", + "readOnly": true, + "type": "string" + }, + "kind": { + "default": "analytics#remarketingAudience", + "description": "Collection type.", + "type": "string" + }, + "linkedAdAccounts": { + "description": "The linked ad accounts associated with this remarketing audience. A remarketing audience can have only one linkedAdAccount currently.", + "items": { + "$ref": "LinkedForeignAccount" + }, + "type": "array" + }, + "linkedViews": { + "description": "The views (profiles) that this remarketing audience is linked to.", + "items": { + "type": "string" + }, + "type": "array" + }, + "name": { + "description": "The name of this remarketing audience.", + "type": "string" + }, + "stateBasedAudienceDefinition": { + "description": "A state based audience definition that will cause a user to be added or removed from an audience.", + "properties": { + "excludeConditions": { + "description": "Defines the conditions to exclude users from the audience.", + "properties": { + "exclusionDuration": { + "description": "Whether to make the exclusion TEMPORARY or PERMANENT.", + "type": "string" + }, + "segment": { + "description": "The segment condition that will cause a user to be removed from an audience.", + "type": "string" + } + }, + "type": "object" + }, + "includeConditions": { + "$ref": "IncludeConditions", + "description": "Defines the conditions to include users to the audience." + } + }, + "type": "object" + }, + "updated": { + "description": "Time this remarketing audience was last modified.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "webPropertyId": { + "description": "Web property ID of the form UA-XXXXX-YY to which this remarketing audience belongs.", + "type": "string" + } + }, + "type": "object" + }, + "RemarketingAudiences": { + "description": "A remarketing audience collection lists Analytics remarketing audiences to which the user has access. Each resource in the collection corresponds to a single Analytics remarketing audience.", + "id": "RemarketingAudiences", + "properties": { + "items": { + "description": "A list of remarketing audiences.", + "items": { + "$ref": "RemarketingAudience" + }, + "type": "array" + }, + "itemsPerPage": { + "description": "The maximum number of resources the response can contain, regardless of the actual number of resources returned. Its value ranges from 1 to 1000 with a value of 1000 by default, or otherwise specified by the max-results query parameter.", + "format": "int32", + "type": "integer" + }, + "kind": { + "default": "analytics#remarketingAudiences", + "description": "Collection type.", + "type": "string" + }, + "nextLink": { + "description": "Link to next page for this remarketing audience collection.", + "type": "string" + }, + "previousLink": { + "description": "Link to previous page for this view (profile) collection.", + "type": "string" + }, + "startIndex": { + "description": "The starting index of the resources, which is 1 by default or otherwise specified by the start-index query parameter.", + "format": "int32", + "type": "integer" + }, + "totalResults": { + "description": "The total number of results for the query, regardless of the number of results in the response.", + "format": "int32", + "type": "integer" + }, + "username": { + "description": "Email ID of the authenticated user", + "type": "string" + } + }, + "type": "object" + }, + "Segment": { + "description": "JSON template for an Analytics segment.", + "id": "Segment", + "properties": { + "created": { + "description": "Time the segment was created.", + "format": "date-time", + "type": "string" + }, + "definition": { + "description": "Segment definition.", + "type": "string" + }, + "id": { + "description": "Segment ID.", + "type": "string" + }, + "kind": { + "default": "analytics#segment", + "description": "Resource type for Analytics segment.", + "type": "string" + }, + "name": { + "description": "Segment name.", + "type": "string" + }, + "segmentId": { + "description": "Segment ID. Can be used with the 'segment' parameter in Core Reporting API.", + "type": "string" + }, + "selfLink": { + "description": "Link for this segment.", + "type": "string" + }, + "type": { + "description": "Type for a segment. Possible values are \"BUILT_IN\" or \"CUSTOM\".", + "type": "string" + }, + "updated": { + "description": "Time the segment was last modified.", + "format": "date-time", + "type": "string" + } + }, + "type": "object" + }, + "Segments": { + "description": "An segment collection lists Analytics segments that the user has access to. Each resource in the collection corresponds to a single Analytics segment.", + "id": "Segments", + "properties": { + "items": { + "description": "A list of segments.", + "items": { + "$ref": "Segment" + }, + "type": "array" + }, + "itemsPerPage": { + "description": "The maximum number of resources the response can contain, regardless of the actual number of resources returned. Its value ranges from 1 to 1000 with a value of 1000 by default, or otherwise specified by the max-results query parameter.", + "format": "int32", + "type": "integer" + }, + "kind": { + "default": "analytics#segments", + "description": "Collection type for segments.", + "type": "string" + }, + "nextLink": { + "description": "Link to next page for this segment collection.", + "type": "string" + }, + "previousLink": { + "description": "Link to previous page for this segment collection.", + "type": "string" + }, + "startIndex": { + "description": "The starting index of the resources, which is 1 by default or otherwise specified by the start-index query parameter.", + "format": "int32", + "type": "integer" + }, + "totalResults": { + "description": "The total number of results for the query, regardless of the number of results in the response.", + "format": "int32", + "type": "integer" + }, + "username": { + "description": "Email ID of the authenticated user", + "type": "string" + } + }, + "type": "object" + }, + "UnsampledReport": { + "description": "JSON template for Analytics unsampled report resource.", + "id": "UnsampledReport", + "properties": { + "accountId": { + "description": "Account ID to which this unsampled report belongs.", + "type": "string" + }, + "cloudStorageDownloadDetails": { + "description": "Download details for a file stored in Google Cloud Storage.", + "properties": { + "bucketId": { + "description": "Id of the bucket the file object is stored in.", + "type": "string" + }, + "objectId": { + "description": "Id of the file object containing the report data.", + "type": "string" + } + }, + "readOnly": true, + "type": "object" + }, + "created": { + "description": "Time this unsampled report was created.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "dimensions": { + "description": "The dimensions for the unsampled report.", + "type": "string" + }, + "downloadType": { + "description": "The type of download you need to use for the report data file. Possible values include `GOOGLE_DRIVE` and `GOOGLE_CLOUD_STORAGE`. If the value is `GOOGLE_DRIVE`, see the `driveDownloadDetails` field. If the value is `GOOGLE_CLOUD_STORAGE`, see the `cloudStorageDownloadDetails` field.", + "readOnly": true, + "type": "string" + }, + "driveDownloadDetails": { + "description": "Download details for a file stored in Google Drive.", + "properties": { + "documentId": { + "description": "Id of the document/file containing the report data.", + "type": "string" + } + }, + "readOnly": true, + "type": "object" + }, + "end-date": { + "annotations": { + "required": [ + "analytics.management.filters.insert", + "analytics.management.unsampledReports.insert" + ] + }, + "description": "The end date for the unsampled report.", + "type": "string" + }, + "filters": { + "description": "The filters for the unsampled report.", + "type": "string" + }, + "id": { + "description": "Unsampled report ID.", + "type": "string" + }, + "kind": { + "default": "analytics#unsampledReport", + "description": "Resource type for an Analytics unsampled report.", + "readOnly": true, + "type": "string" + }, + "metrics": { + "annotations": { + "required": [ + "analytics.management.filters.insert", + "analytics.management.unsampledReports.insert" + ] + }, + "description": "The metrics for the unsampled report.", + "type": "string" }, "profileId": { - "type": "string", - "description": "View (Profile) ID to delete the unsampled report for.", - "required": true, - "location": "path" + "description": "View (Profile) ID to which this unsampled report belongs.", + "type": "string" }, - "unsampledReportId": { - "type": "string", - "description": "ID of the unsampled report to be deleted.", - "required": true, - "location": "path" + "segment": { + "description": "The segment for the unsampled report.", + "type": "string" + }, + "selfLink": { + "description": "Link for this unsampled report.", + "readOnly": true, + "type": "string" + }, + "start-date": { + "annotations": { + "required": [ + "analytics.management.filters.insert", + "analytics.management.unsampledReports.insert" + ] + }, + "description": "The start date for the unsampled report.", + "type": "string" + }, + "status": { + "description": "Status of this unsampled report. Possible values are PENDING, COMPLETED, or FAILED.", + "readOnly": true, + "type": "string" + }, + "title": { + "annotations": { + "required": [ + "analytics.management.filters.insert", + "analytics.management.unsampledReports.insert" + ] + }, + "description": "Title of the unsampled report.", + "type": "string" + }, + "updated": { + "description": "Time this unsampled report was last modified.", + "format": "date-time", + "readOnly": true, + "type": "string" }, "webPropertyId": { - "type": "string", - "description": "Web property ID to delete the unsampled reports for.", - "required": true, - "location": "path" + "description": "Web property ID to which this unsampled report belongs. The web property ID is of the form UA-XXXXX-YY.", + "type": "string" } - }, - "parameterOrder": [ - "accountId", - "webPropertyId", - "profileId", - "unsampledReportId" - ], - "scopes": [ - "https://www.googleapis.com/auth/analytics.edit" - ] }, - "get": { - "id": "analytics.management.unsampledReports.get", - "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/unsampledReports/{unsampledReportId}", - "httpMethod": "GET", - "description": "Returns a single unsampled report.", - "parameters": { - "accountId": { - "type": "string", - "description": "Account ID to retrieve unsampled report for.", - "required": true, - "location": "path" - }, - "profileId": { - "type": "string", - "description": "View (Profile) ID to retrieve unsampled report for.", - "required": true, - "location": "path" - }, - "unsampledReportId": { - "type": "string", - "description": "ID of the unsampled report to retrieve.", - "required": true, - "location": "path" - }, - "webPropertyId": { - "type": "string", - "description": "Web property ID to retrieve unsampled reports for.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "accountId", - "webPropertyId", - "profileId", - "unsampledReportId" - ], - "response": { - "$ref": "UnsampledReport" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics", - "https://www.googleapis.com/auth/analytics.edit", - "https://www.googleapis.com/auth/analytics.readonly" - ] - }, - "insert": { - "id": "analytics.management.unsampledReports.insert", - "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/unsampledReports", - "httpMethod": "POST", - "description": "Create a new unsampled report.", - "parameters": { - "accountId": { - "type": "string", - "description": "Account ID to create the unsampled report for.", - "required": true, - "location": "path" - }, - "profileId": { - "type": "string", - "description": "View (Profile) ID to create the unsampled report for.", - "required": true, - "location": "path" - }, - "webPropertyId": { - "type": "string", - "description": "Web property ID to create the unsampled report for.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "accountId", - "webPropertyId", - "profileId" - ], - "request": { - "$ref": "UnsampledReport" - }, - "response": { - "$ref": "UnsampledReport" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics", - "https://www.googleapis.com/auth/analytics.edit" - ] - }, - "list": { - "id": "analytics.management.unsampledReports.list", - "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/unsampledReports", - "httpMethod": "GET", - "description": "Lists unsampled reports to which the user has access.", - "parameters": { - "accountId": { - "type": "string", - "description": "Account ID to retrieve unsampled reports for. Must be a specific account ID, ~all is not supported.", - "required": true, - "location": "path" - }, - "max-results": { - "type": "integer", - "description": "The maximum number of unsampled reports to include in this response.", - "format": "int32", - "location": "query" - }, - "profileId": { - "type": "string", - "description": "View (Profile) ID to retrieve unsampled reports for. Must be a specific view (profile) ID, ~all is not supported.", - "required": true, - "location": "path" - }, - "start-index": { - "type": "integer", - "description": "An index of the first unsampled report to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter.", - "format": "int32", - "minimum": "1", - "location": "query" - }, - "webPropertyId": { - "type": "string", - "description": "Web property ID to retrieve unsampled reports for. Must be a specific web property ID, ~all is not supported.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "accountId", - "webPropertyId", - "profileId" - ], - "response": { - "$ref": "UnsampledReports" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics", - "https://www.googleapis.com/auth/analytics.edit", - "https://www.googleapis.com/auth/analytics.readonly" - ] - } - } + "type": "object" }, - "uploads": { - "methods": { - "deleteUploadData": { - "id": "analytics.management.uploads.deleteUploadData", - "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/customDataSources/{customDataSourceId}/deleteUploadData", - "httpMethod": "POST", - "description": "Delete data associated with a previous upload.", - "parameters": { + "UnsampledReports": { + "description": "An unsampled report collection lists Analytics unsampled reports to which the user has access. Each view (profile) can have a set of unsampled reports. Each resource in the unsampled report collection corresponds to a single Analytics unsampled report.", + "id": "UnsampledReports", + "properties": { + "items": { + "description": "A list of unsampled reports.", + "items": { + "$ref": "UnsampledReport" + }, + "type": "array" + }, + "itemsPerPage": { + "description": "The maximum number of resources the response can contain, regardless of the actual number of resources returned. Its value ranges from 1 to 1000 with a value of 1000 by default, or otherwise specified by the max-results query parameter.", + "format": "int32", + "type": "integer" + }, + "kind": { + "default": "analytics#unsampledReports", + "description": "Collection type.", + "type": "string" + }, + "nextLink": { + "description": "Link to next page for this unsampled report collection.", + "type": "string" + }, + "previousLink": { + "description": "Link to previous page for this unsampled report collection.", + "type": "string" + }, + "startIndex": { + "description": "The starting index of the resources, which is 1 by default or otherwise specified by the start-index query parameter.", + "format": "int32", + "type": "integer" + }, + "totalResults": { + "description": "The total number of results for the query, regardless of the number of resources in the result.", + "format": "int32", + "type": "integer" + }, + "username": { + "description": "Email ID of the authenticated user", + "type": "string" + } + }, + "type": "object" + }, + "Upload": { + "description": "Metadata returned for an upload operation.", + "id": "Upload", + "properties": { "accountId": { - "type": "string", - "description": "Account Id for the uploads to be deleted.", - "required": true, - "pattern": "\\d+", - "location": "path" + "description": "Account Id to which this upload belongs.", + "format": "int64", + "type": "string" }, "customDataSourceId": { - "type": "string", - "description": "Custom data source Id for the uploads to be deleted.", - "required": true, - "pattern": ".{22}", - "location": "path" + "description": "Custom data source Id to which this data import belongs.", + "type": "string" }, - "webPropertyId": { - "type": "string", - "description": "Web property Id for the uploads to be deleted.", - "required": true, - "pattern": "UA-(\\d+)-(\\d+)", - "location": "path" + "errors": { + "description": "Data import errors collection.", + "items": { + "type": "string" + }, + "type": "array" + }, + "id": { + "description": "A unique ID for this upload.", + "type": "string" + }, + "kind": { + "default": "analytics#upload", + "description": "Resource type for Analytics upload.", + "type": "string" + }, + "status": { + "description": "Upload status. Possible values: PENDING, COMPLETED, FAILED, DELETING, DELETED.", + "type": "string" + }, + "uploadTime": { + "description": "Time this file is uploaded.", + "format": "date-time", + "type": "string" } - }, - "parameterOrder": [ - "accountId", - "webPropertyId", - "customDataSourceId" - ], - "request": { - "$ref": "AnalyticsDataimportDeleteUploadDataRequest" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics", - "https://www.googleapis.com/auth/analytics.edit" - ] }, - "get": { - "id": "analytics.management.uploads.get", - "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/customDataSources/{customDataSourceId}/uploads/{uploadId}", - "httpMethod": "GET", - "description": "List uploads to which the user has access.", - "parameters": { - "accountId": { - "type": "string", - "description": "Account Id for the upload to retrieve.", - "required": true, - "pattern": "\\d+", - "location": "path" - }, - "customDataSourceId": { - "type": "string", - "description": "Custom data source Id for upload to retrieve.", - "required": true, - "pattern": ".{22}", - "location": "path" - }, - "uploadId": { - "type": "string", - "description": "Upload Id to retrieve.", - "required": true, - "pattern": ".{22}", - "location": "path" - }, - "webPropertyId": { - "type": "string", - "description": "Web property Id for the upload to retrieve.", - "required": true, - "pattern": "UA-(\\d+)-(\\d+)", - "location": "path" - } - }, - "parameterOrder": [ - "accountId", - "webPropertyId", - "customDataSourceId", - "uploadId" - ], - "response": { - "$ref": "Upload" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics", - "https://www.googleapis.com/auth/analytics.edit", - "https://www.googleapis.com/auth/analytics.readonly" - ] - }, - "list": { - "id": "analytics.management.uploads.list", - "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/customDataSources/{customDataSourceId}/uploads", - "httpMethod": "GET", - "description": "List uploads to which the user has access.", - "parameters": { - "accountId": { - "type": "string", - "description": "Account Id for the uploads to retrieve.", - "required": true, - "pattern": "\\d+", - "location": "path" - }, - "customDataSourceId": { - "type": "string", - "description": "Custom data source Id for uploads to retrieve.", - "required": true, - "pattern": ".{22}", - "location": "path" - }, - "max-results": { - "type": "integer", - "description": "The maximum number of uploads to include in this response.", - "format": "int32", - "minimum": "1", - "location": "query" - }, - "start-index": { - "type": "integer", - "description": "A 1-based index of the first upload to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter.", - "format": "int32", - "minimum": "1", - "location": "query" - }, - "webPropertyId": { - "type": "string", - "description": "Web property Id for the uploads to retrieve.", - "required": true, - "pattern": "UA-(\\d+)-(\\d+)", - "location": "path" - } - }, - "parameterOrder": [ - "accountId", - "webPropertyId", - "customDataSourceId" - ], - "response": { - "$ref": "Uploads" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics", - "https://www.googleapis.com/auth/analytics.edit", - "https://www.googleapis.com/auth/analytics.readonly" - ] - }, - "uploadData": { - "id": "analytics.management.uploads.uploadData", - "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/customDataSources/{customDataSourceId}/uploads", - "httpMethod": "POST", - "description": "Upload data for a custom data source.", - "parameters": { - "accountId": { - "type": "string", - "description": "Account Id associated with the upload.", - "required": true, - "pattern": "\\d+", - "location": "path" - }, - "customDataSourceId": { - "type": "string", - "description": "Custom data source Id to which the data being uploaded belongs.", - "required": true, - "location": "path" - }, - "webPropertyId": { - "type": "string", - "description": "Web property UA-string associated with the upload.", - "required": true, - "pattern": "UA-\\d+-\\d+", - "location": "path" - } - }, - "parameterOrder": [ - "accountId", - "webPropertyId", - "customDataSourceId" - ], - "response": { - "$ref": "Upload" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics", - "https://www.googleapis.com/auth/analytics.edit" - ], - "supportsMediaUpload": true, - "mediaUpload": { - "accept": [ - "application/octet-stream" - ], - "maxSize": "1GB", - "protocols": { - "simple": { - "multipart": true, - "path": "/upload/analytics/v3/management/accounts/{accountId}/webproperties/{webPropertyId}/customDataSources/{customDataSourceId}/uploads" - }, - "resumable": { - "multipart": true, - "path": "/resumable/upload/analytics/v3/management/accounts/{accountId}/webproperties/{webPropertyId}/customDataSources/{customDataSourceId}/uploads" - } - } - } - } - } + "type": "object" }, - "webPropertyAdWordsLinks": { - "methods": { - "delete": { - "id": "analytics.management.webPropertyAdWordsLinks.delete", - "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/entityAdWordsLinks/{webPropertyAdWordsLinkId}", - "httpMethod": "DELETE", - "description": "Deletes a web property-AdWords link.", - "parameters": { - "accountId": { - "type": "string", - "description": "ID of the account which the given web property belongs to.", - "required": true, - "location": "path" + "Uploads": { + "description": "Upload collection lists Analytics uploads to which the user has access. Each custom data source can have a set of uploads. Each resource in the upload collection corresponds to a single Analytics data upload.", + "id": "Uploads", + "properties": { + "items": { + "description": "A list of uploads.", + "items": { + "$ref": "Upload" + }, + "type": "array" }, - "webPropertyAdWordsLinkId": { - "type": "string", - "description": "Web property AdWords link ID.", - "required": true, - "location": "path" + "itemsPerPage": { + "description": "The maximum number of resources the response can contain, regardless of the actual number of resources returned. Its value ranges from 1 to 1000 with a value of 1000 by default, or otherwise specified by the max-results query parameter.", + "format": "int32", + "type": "integer" }, - "webPropertyId": { - "type": "string", - "description": "Web property ID to delete the AdWords link for.", - "required": true, - "location": "path" + "kind": { + "default": "analytics#uploads", + "description": "Collection type.", + "type": "string" + }, + "nextLink": { + "description": "Link to next page for this upload collection.", + "type": "string" + }, + "previousLink": { + "description": "Link to previous page for this upload collection.", + "type": "string" + }, + "startIndex": { + "description": "The starting index of the resources, which is 1 by default or otherwise specified by the start-index query parameter.", + "format": "int32", + "type": "integer" + }, + "totalResults": { + "description": "The total number of results for the query, regardless of the number of resources in the result.", + "format": "int32", + "type": "integer" } - }, - "parameterOrder": [ - "accountId", - "webPropertyId", - "webPropertyAdWordsLinkId" - ], - "scopes": [ - "https://www.googleapis.com/auth/analytics.edit" - ] }, - "get": { - "id": "analytics.management.webPropertyAdWordsLinks.get", - "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/entityAdWordsLinks/{webPropertyAdWordsLinkId}", - "httpMethod": "GET", - "description": "Returns a web property-AdWords link to which the user has access.", - "parameters": { - "accountId": { - "type": "string", - "description": "ID of the account which the given web property belongs to.", - "required": true, - "location": "path" - }, - "webPropertyAdWordsLinkId": { - "type": "string", - "description": "Web property-AdWords link ID.", - "required": true, - "location": "path" - }, - "webPropertyId": { - "type": "string", - "description": "Web property ID to retrieve the AdWords link for.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "accountId", - "webPropertyId", - "webPropertyAdWordsLinkId" - ], - "response": { - "$ref": "EntityAdWordsLink" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics.edit", - "https://www.googleapis.com/auth/analytics.readonly" - ] - }, - "insert": { - "id": "analytics.management.webPropertyAdWordsLinks.insert", - "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/entityAdWordsLinks", - "httpMethod": "POST", - "description": "Creates a webProperty-AdWords link.", - "parameters": { - "accountId": { - "type": "string", - "description": "ID of the Google Analytics account to create the link for.", - "required": true, - "location": "path" - }, - "webPropertyId": { - "type": "string", - "description": "Web property ID to create the link for.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "accountId", - "webPropertyId" - ], - "request": { - "$ref": "EntityAdWordsLink" - }, - "response": { - "$ref": "EntityAdWordsLink" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics.edit" - ] - }, - "list": { - "id": "analytics.management.webPropertyAdWordsLinks.list", - "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/entityAdWordsLinks", - "httpMethod": "GET", - "description": "Lists webProperty-AdWords links for a given web property.", - "parameters": { - "accountId": { - "type": "string", - "description": "ID of the account which the given web property belongs to.", - "required": true, - "pattern": "\\d+", - "location": "path" - }, - "max-results": { - "type": "integer", - "description": "The maximum number of webProperty-AdWords links to include in this response.", - "format": "int32", - "location": "query" - }, - "start-index": { - "type": "integer", - "description": "An index of the first webProperty-AdWords link to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter.", - "format": "int32", - "minimum": "1", - "location": "query" - }, - "webPropertyId": { - "type": "string", - "description": "Web property ID to retrieve the AdWords links for.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "accountId", - "webPropertyId" - ], - "response": { - "$ref": "EntityAdWordsLinks" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics.edit", - "https://www.googleapis.com/auth/analytics.readonly" - ] - }, - "patch": { - "id": "analytics.management.webPropertyAdWordsLinks.patch", - "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/entityAdWordsLinks/{webPropertyAdWordsLinkId}", - "httpMethod": "PATCH", - "description": "Updates an existing webProperty-AdWords link. This method supports patch semantics.", - "parameters": { - "accountId": { - "type": "string", - "description": "ID of the account which the given web property belongs to.", - "required": true, - "location": "path" - }, - "webPropertyAdWordsLinkId": { - "type": "string", - "description": "Web property-AdWords link ID.", - "required": true, - "location": "path" - }, - "webPropertyId": { - "type": "string", - "description": "Web property ID to retrieve the AdWords link for.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "accountId", - "webPropertyId", - "webPropertyAdWordsLinkId" - ], - "request": { - "$ref": "EntityAdWordsLink" - }, - "response": { - "$ref": "EntityAdWordsLink" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics.edit" - ] - }, - "update": { - "id": "analytics.management.webPropertyAdWordsLinks.update", - "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/entityAdWordsLinks/{webPropertyAdWordsLinkId}", - "httpMethod": "PUT", - "description": "Updates an existing webProperty-AdWords link.", - "parameters": { - "accountId": { - "type": "string", - "description": "ID of the account which the given web property belongs to.", - "required": true, - "location": "path" - }, - "webPropertyAdWordsLinkId": { - "type": "string", - "description": "Web property-AdWords link ID.", - "required": true, - "location": "path" - }, - "webPropertyId": { - "type": "string", - "description": "Web property ID to retrieve the AdWords link for.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "accountId", - "webPropertyId", - "webPropertyAdWordsLinkId" - ], - "request": { - "$ref": "EntityAdWordsLink" - }, - "response": { - "$ref": "EntityAdWordsLink" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics.edit" - ] - } - } + "type": "object" }, - "webproperties": { - "methods": { - "get": { - "id": "analytics.management.webproperties.get", - "path": "management/accounts/{accountId}/webproperties/{webPropertyId}", - "httpMethod": "GET", - "description": "Gets a web property to which the user has access.", - "parameters": { - "accountId": { - "type": "string", - "description": "Account ID to retrieve the web property for.", - "required": true, - "pattern": "[0-9]+", - "location": "path" + "UserRef": { + "description": "JSON template for a user reference.", + "id": "UserRef", + "properties": { + "email": { + "description": "Email ID of this user.", + "type": "string" }, - "webPropertyId": { - "type": "string", - "description": "ID to retrieve the web property for.", - "required": true, - "pattern": "UA-[0-9]+-[0-9]+", - "location": "path" + "id": { + "description": "User ID.", + "type": "string" + }, + "kind": { + "default": "analytics#userRef", + "type": "string" } - }, - "parameterOrder": [ - "accountId", - "webPropertyId" - ], - "response": { - "$ref": "Webproperty" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics.edit", - "https://www.googleapis.com/auth/analytics.readonly" - ] }, - "insert": { - "id": "analytics.management.webproperties.insert", - "path": "management/accounts/{accountId}/webproperties", - "httpMethod": "POST", - "description": "Create a new property if the account has fewer than 20 properties. Web properties are visible in the Google Analytics interface only if they have at least one profile.", - "parameters": { - "accountId": { - "type": "string", - "description": "Account ID to create the web property for.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "accountId" - ], - "request": { - "$ref": "Webproperty" - }, - "response": { - "$ref": "Webproperty" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics.edit" - ] - }, - "list": { - "id": "analytics.management.webproperties.list", - "path": "management/accounts/{accountId}/webproperties", - "httpMethod": "GET", - "description": "Lists web properties to which the user has access.", - "parameters": { - "accountId": { - "type": "string", - "description": "Account ID to retrieve web properties for. Can either be a specific account ID or '~all', which refers to all the accounts that user has access to.", - "required": true, - "location": "path" - }, - "max-results": { - "type": "integer", - "description": "The maximum number of web properties to include in this response.", - "format": "int32", - "location": "query" - }, - "start-index": { - "type": "integer", - "description": "An index of the first entity to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter.", - "format": "int32", - "minimum": "1", - "location": "query" - } - }, - "parameterOrder": [ - "accountId" - ], - "response": { - "$ref": "Webproperties" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics", - "https://www.googleapis.com/auth/analytics.edit", - "https://www.googleapis.com/auth/analytics.readonly" - ] - }, - "patch": { - "id": "analytics.management.webproperties.patch", - "path": "management/accounts/{accountId}/webproperties/{webPropertyId}", - "httpMethod": "PATCH", - "description": "Updates an existing web property. This method supports patch semantics.", - "parameters": { - "accountId": { - "type": "string", - "description": "Account ID to which the web property belongs", - "required": true, - "location": "path" - }, - "webPropertyId": { - "type": "string", - "description": "Web property ID", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "accountId", - "webPropertyId" - ], - "request": { - "$ref": "Webproperty" - }, - "response": { - "$ref": "Webproperty" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics.edit" - ] - }, - "update": { - "id": "analytics.management.webproperties.update", - "path": "management/accounts/{accountId}/webproperties/{webPropertyId}", - "httpMethod": "PUT", - "description": "Updates an existing web property.", - "parameters": { - "accountId": { - "type": "string", - "description": "Account ID to which the web property belongs", - "required": true, - "location": "path" - }, - "webPropertyId": { - "type": "string", - "description": "Web property ID", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "accountId", - "webPropertyId" - ], - "request": { - "$ref": "Webproperty" - }, - "response": { - "$ref": "Webproperty" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics.edit" - ] - } - } + "type": "object" }, - "webpropertyUserLinks": { - "methods": { - "delete": { - "id": "analytics.management.webpropertyUserLinks.delete", - "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/entityUserLinks/{linkId}", - "httpMethod": "DELETE", - "description": "Removes a user from the given web property.", - "parameters": { + "WebPropertyRef": { + "description": "JSON template for a web property reference.", + "id": "WebPropertyRef", + "properties": { "accountId": { - "type": "string", - "description": "Account ID to delete the user link for.", - "required": true, - "location": "path" + "description": "Account ID to which this web property belongs.", + "type": "string" }, - "linkId": { - "type": "string", - "description": "Link ID to delete the user link for.", - "required": true, - "location": "path" + "href": { + "description": "Link for this web property.", + "type": "string" }, - "webPropertyId": { - "type": "string", - "description": "Web Property ID to delete the user link for.", - "required": true, - "location": "path" + "id": { + "description": "Web property ID of the form UA-XXXXX-YY.", + "type": "string" + }, + "internalWebPropertyId": { + "description": "Internal ID for this web property.", + "type": "string" + }, + "kind": { + "default": "analytics#webPropertyRef", + "description": "Analytics web property reference.", + "type": "string" + }, + "name": { + "description": "Name of this web property.", + "type": "string" } - }, - "parameterOrder": [ - "accountId", - "webPropertyId", - "linkId" - ], - "scopes": [ - "https://www.googleapis.com/auth/analytics.manage.users" - ] }, - "insert": { - "id": "analytics.management.webpropertyUserLinks.insert", - "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/entityUserLinks", - "httpMethod": "POST", - "description": "Adds a new user to the given web property.", - "parameters": { - "accountId": { - "type": "string", - "description": "Account ID to create the user link for.", - "required": true, - "location": "path" + "type": "object" + }, + "WebPropertySummary": { + "description": "JSON template for an Analytics WebPropertySummary. WebPropertySummary returns basic information (i.e., summary) for a web property.", + "id": "WebPropertySummary", + "properties": { + "id": { + "description": "Web property ID of the form UA-XXXXX-YY.", + "type": "string" }, - "webPropertyId": { - "type": "string", - "description": "Web Property ID to create the user link for.", - "required": true, - "location": "path" + "internalWebPropertyId": { + "description": "Internal ID for this web property.", + "type": "string" + }, + "kind": { + "default": "analytics#webPropertySummary", + "description": "Resource type for Analytics WebPropertySummary.", + "type": "string" + }, + "level": { + "description": "Level for this web property. Possible values are STANDARD or PREMIUM.", + "type": "string" + }, + "name": { + "description": "Web property name.", + "type": "string" + }, + "profiles": { + "description": "List of profiles under this web property.", + "items": { + "$ref": "ProfileSummary" + }, + "type": "array" + }, + "starred": { + "description": "Indicates whether this web property is starred or not.", + "type": "boolean" + }, + "websiteUrl": { + "description": "Website url for this web property.", + "type": "string" } - }, - "parameterOrder": [ - "accountId", - "webPropertyId" - ], - "request": { - "$ref": "EntityUserLink" - }, - "response": { - "$ref": "EntityUserLink" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics.manage.users" - ] }, - "list": { - "id": "analytics.management.webpropertyUserLinks.list", - "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/entityUserLinks", - "httpMethod": "GET", - "description": "Lists webProperty-user links for a given web property.", - "parameters": { - "accountId": { - "type": "string", - "description": "Account ID which the given web property belongs to.", - "required": true, - "location": "path" + "type": "object" + }, + "Webproperties": { + "description": "A web property collection lists Analytics web properties to which the user has access. Each resource in the collection corresponds to a single Analytics web property.", + "id": "Webproperties", + "properties": { + "items": { + "description": "A list of web properties.", + "items": { + "$ref": "Webproperty" + }, + "type": "array" }, - "max-results": { - "type": "integer", - "description": "The maximum number of webProperty-user Links to include in this response.", - "format": "int32", - "location": "query" + "itemsPerPage": { + "description": "The maximum number of resources the response can contain, regardless of the actual number of resources returned. Its value ranges from 1 to 1000 with a value of 1000 by default, or otherwise specified by the max-results query parameter.", + "format": "int32", + "type": "integer" }, - "start-index": { - "type": "integer", - "description": "An index of the first webProperty-user link to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter.", - "format": "int32", - "minimum": "1", - "location": "query" + "kind": { + "default": "analytics#webproperties", + "description": "Collection type.", + "type": "string" }, - "webPropertyId": { - "type": "string", - "description": "Web Property ID for the webProperty-user links to retrieve. Can either be a specific web property ID or '~all', which refers to all the web properties that user has access to.", - "required": true, - "location": "path" + "nextLink": { + "description": "Link to next page for this web property collection.", + "type": "string" + }, + "previousLink": { + "description": "Link to previous page for this web property collection.", + "type": "string" + }, + "startIndex": { + "description": "The starting index of the resources, which is 1 by default or otherwise specified by the start-index query parameter.", + "format": "int32", + "type": "integer" + }, + "totalResults": { + "description": "The total number of results for the query, regardless of the number of results in the response.", + "format": "int32", + "type": "integer" + }, + "username": { + "description": "Email ID of the authenticated user", + "type": "string" } - }, - "parameterOrder": [ - "accountId", - "webPropertyId" - ], - "response": { - "$ref": "EntityUserLinks" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics.manage.users", - "https://www.googleapis.com/auth/analytics.manage.users.readonly" - ] }, - "update": { - "id": "analytics.management.webpropertyUserLinks.update", - "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/entityUserLinks/{linkId}", - "httpMethod": "PUT", - "description": "Updates permissions for an existing user on the given web property.", - "parameters": { + "type": "object" + }, + "Webproperty": { + "description": "JSON template for an Analytics web property.", + "id": "Webproperty", + "properties": { "accountId": { - "type": "string", - "description": "Account ID to update the account-user link for.", - "required": true, - "location": "path" + "description": "Account ID to which this web property belongs.", + "type": "string" }, - "linkId": { - "type": "string", - "description": "Link ID to update the account-user link for.", - "required": true, - "location": "path" + "childLink": { + "description": "Child link for this web property. Points to the list of views (profiles) for this web property.", + "properties": { + "href": { + "description": "Link to the list of views (profiles) for this web property.", + "type": "string" + }, + "type": { + "default": "analytics#profiles", + "description": "Type of the parent link. Its value is \"analytics#profiles\".", + "type": "string" + } + }, + "type": "object" }, - "webPropertyId": { - "type": "string", - "description": "Web property ID to update the account-user link for.", - "required": true, - "location": "path" + "created": { + "description": "Time this web property was created.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "defaultProfileId": { + "description": "Default view (profile) ID.", + "format": "int64", + "type": "string" + }, + "id": { + "description": "Web property ID of the form UA-XXXXX-YY.", + "type": "string" + }, + "industryVertical": { + "description": "The industry vertical/category selected for this web property.", + "type": "string" + }, + "internalWebPropertyId": { + "description": "Internal ID for this web property.", + "readOnly": true, + "type": "string" + }, + "kind": { + "default": "analytics#webproperty", + "description": "Resource type for Analytics WebProperty.", + "readOnly": true, + "type": "string" + }, + "level": { + "description": "Level for this web property. Possible values are STANDARD or PREMIUM.", + "readOnly": true, + "type": "string" + }, + "name": { + "description": "Name of this web property.", + "type": "string" + }, + "parentLink": { + "description": "Parent link for this web property. Points to the account to which this web property belongs.", + "properties": { + "href": { + "description": "Link to the account for this web property.", + "type": "string" + }, + "type": { + "default": "analytics#account", + "description": "Type of the parent link. Its value is \"analytics#account\".", + "type": "string" + } + }, + "type": "object" + }, + "permissions": { + "description": "Permissions the user has for this web property.", + "properties": { + "effective": { + "description": "All the permissions that the user has for this web property. These include any implied permissions (e.g., EDIT implies VIEW) or inherited permissions from the parent account.", + "items": { + "type": "string" + }, + "readOnly": true, + "type": "array" + } + }, + "type": "object" + }, + "profileCount": { + "description": "View (Profile) count for this web property.", + "format": "int32", + "readOnly": true, + "type": "integer" + }, + "selfLink": { + "description": "Link for this web property.", + "readOnly": true, + "type": "string" + }, + "starred": { + "description": "Indicates whether this web property is starred or not.", + "type": "boolean" + }, + "updated": { + "description": "Time this web property was last modified.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "websiteUrl": { + "description": "Website url for this web property.", + "type": "string" } - }, - "parameterOrder": [ - "accountId", - "webPropertyId", - "linkId" - ], - "request": { - "$ref": "EntityUserLink" - }, - "response": { - "$ref": "EntityUserLink" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics.manage.users" - ] - } - } + }, + "type": "object" } - } }, - "metadata": { - "resources": { - "columns": { - "methods": { - "list": { - "id": "analytics.metadata.columns.list", - "path": "metadata/{reportType}/columns", - "httpMethod": "GET", - "description": "Lists all columns for a report type", - "parameters": { - "reportType": { - "type": "string", - "description": "Report type. Allowed Values: 'ga'. Where 'ga' corresponds to the Core Reporting API", - "required": true, - "pattern": "ga", - "location": "path" - } - }, - "parameterOrder": [ - "reportType" - ], - "response": { - "$ref": "Columns" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics", - "https://www.googleapis.com/auth/analytics.edit", - "https://www.googleapis.com/auth/analytics.readonly" - ] - } - } - } - } - }, - "provisioning": { - "methods": { - "createAccountTicket": { - "id": "analytics.provisioning.createAccountTicket", - "path": "provisioning/createAccountTicket", - "httpMethod": "POST", - "description": "Creates an account ticket.", - "request": { - "$ref": "AccountTicket" - }, - "response": { - "$ref": "AccountTicket" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics.provision" - ] - }, - "createAccountTree": { - "id": "analytics.provisioning.createAccountTree", - "path": "provisioning/createAccount", - "httpMethod": "POST", - "description": "Provision account.", - "request": { - "$ref": "AccountTreeRequest" - }, - "response": { - "$ref": "AccountTreeResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics.provision" - ] - } - } - } - } -} + "servicePath": "analytics/v3/", + "title": "Google Analytics API", + "version": "v3" +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/analytics/v3/analytics-gen.go b/vendor/google.golang.org/api/analytics/v3/analytics-gen.go index 1797e72d4..23aa740f3 100644 --- a/vendor/google.golang.org/api/analytics/v3/analytics-gen.go +++ b/vendor/google.golang.org/api/analytics/v3/analytics-gen.go @@ -16606,11 +16606,12 @@ func (c *ManagementUploadsUploadDataCall) doRequest(alt string) (*http.Response, body = new(bytes.Buffer) reqHeaders.Set("Content-Type", "application/json") } - body, cleanup := c.mediaInfo_.UploadRequest(reqHeaders, body) + body, getBody, cleanup := c.mediaInfo_.UploadRequest(reqHeaders, body) defer cleanup() urls += "?" + c.urlParams_.Encode() req, _ := http.NewRequest("POST", urls, body) req.Header = reqHeaders + gensupport.SetGetBody(req, getBody) googleapi.Expand(req.URL, map[string]string{ "accountId": c.accountId, "webPropertyId": c.webPropertyId, @@ -19273,7 +19274,7 @@ func (c *ProvisioningCreateAccountTreeCall) doRequest(alt string) (*http.Respons } reqHeaders.Set("Content-Type", "application/json") c.urlParams_.Set("alt", alt) - urls := googleapi.ResolveRelative(c.s.BasePath, "provisioning/createAccount") + urls := googleapi.ResolveRelative(c.s.BasePath, "provisioning/createAccountTree") urls += "?" + c.urlParams_.Encode() req, _ := http.NewRequest("POST", urls, body) req.Header = reqHeaders @@ -19321,7 +19322,7 @@ func (c *ProvisioningCreateAccountTreeCall) Do(opts ...googleapi.CallOption) (*A // "description": "Provision account.", // "httpMethod": "POST", // "id": "analytics.provisioning.createAccountTree", - // "path": "provisioning/createAccount", + // "path": "provisioning/createAccountTree", // "request": { // "$ref": "AccountTreeRequest" // }, diff --git a/vendor/google.golang.org/api/analyticsreporting/v4/analyticsreporting-api.json b/vendor/google.golang.org/api/analyticsreporting/v4/analyticsreporting-api.json index 0ec46e763..94387b511 100644 --- a/vendor/google.golang.org/api/analyticsreporting/v4/analyticsreporting-api.json +++ b/vendor/google.golang.org/api/analyticsreporting/v4/analyticsreporting-api.json @@ -1,1179 +1,4 @@ { - "title": "Google Analytics Reporting API", - "ownerName": "Google", - "resources": { - "reports": { - "methods": { - "batchGet": { - "description": "Returns the Analytics data.", - "request": { - "$ref": "GetReportsRequest" - }, - "response": { - "$ref": "GetReportsResponse" - }, - "parameterOrder": [], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/analytics", - "https://www.googleapis.com/auth/analytics.readonly" - ], - "parameters": {}, - "flatPath": "v4/reports:batchGet", - "path": "v4/reports:batchGet", - "id": "analyticsreporting.reports.batchGet" - } - } - } - }, - "parameters": { - "quotaUser": { - "type": "string", - "location": "query", - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters." - }, - "pp": { - "location": "query", - "description": "Pretty-print response.", - "type": "boolean", - "default": "true" - }, - "oauth_token": { - "description": "OAuth 2.0 token for the current user.", - "type": "string", - "location": "query" - }, - "bearer_token": { - "location": "query", - "description": "OAuth bearer token.", - "type": "string" - }, - "upload_protocol": { - "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", - "type": "string", - "location": "query" - }, - "prettyPrint": { - "description": "Returns response with indentations and line breaks.", - "type": "boolean", - "default": "true", - "location": "query" - }, - "uploadType": { - "location": "query", - "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", - "type": "string" - }, - "fields": { - "location": "query", - "description": "Selector specifying which fields to include in a partial response.", - "type": "string" - }, - "$.xgafv": { - "enumDescriptions": [ - "v1 error format", - "v2 error format" - ], - "location": "query", - "enum": [ - "1", - "2" - ], - "description": "V1 error format.", - "type": "string" - }, - "callback": { - "description": "JSONP", - "type": "string", - "location": "query" - }, - "alt": { - "enum": [ - "json", - "media", - "proto" - ], - "type": "string", - "enumDescriptions": [ - "Responses with Content-Type of application/json", - "Media download with context-dependent Content-Type", - "Responses with Content-Type of application/x-protobuf" - ], - "location": "query", - "description": "Data format for response.", - "default": "json" - }, - "access_token": { - "location": "query", - "description": "OAuth access token.", - "type": "string" - }, - "key": { - "location": "query", - "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.", - "type": "string" - } - }, - "version": "v4", - "baseUrl": "https://analyticsreporting.googleapis.com/", - "kind": "discovery#restDescription", - "description": "Accesses Analytics report data.", - "servicePath": "", - "basePath": "", - "revision": "20180118", - "documentationLink": "https://developers.google.com/analytics/devguides/reporting/core/v4/", - "id": "analyticsreporting:v4", - "discoveryVersion": "v1", - "version_module": true, - "schemas": { - "SegmentSequenceStep": { - "id": "SegmentSequenceStep", - "description": "A segment sequence definition.", - "type": "object", - "properties": { - "orFiltersForSegment": { - "description": "A sequence is specified with a list of Or grouped filters which are\ncombined with `AND` operator.", - "type": "array", - "items": { - "$ref": "OrFiltersForSegment" - } - }, - "matchType": { - "description": "Specifies if the step immediately precedes or can be any time before the\nnext step.", - "type": "string", - "enumDescriptions": [ - "Unspecified match type is treated as precedes.", - "Operator indicates that the previous step precedes the next step.", - "Operator indicates that the previous step immediately precedes the next\nstep." - ], - "enum": [ - "UNSPECIFIED_MATCH_TYPE", - "PRECEDES", - "IMMEDIATELY_PRECEDES" - ] - } - } - }, - "Metric": { - "description": "[Metrics](https://support.google.com/analytics/answer/1033861)\nare the quantitative measurements. For example, the metric `ga:users`\nindicates the total number of users for the requested time period.", - "type": "object", - "properties": { - "formattingType": { - "description": "Specifies how the metric expression should be formatted, for example\n`INTEGER`.", - "type": "string", - "enumDescriptions": [ - "Metric type is unspecified.", - "Integer metric.", - "Float metric.", - "Currency metric.", - "Percentage metric.", - "Time metric in `HH:MM:SS` format." - ], - "enum": [ - "METRIC_TYPE_UNSPECIFIED", - "INTEGER", - "FLOAT", - "CURRENCY", - "PERCENT", - "TIME" - ] - }, - "alias": { - "description": "An alias for the metric expression is an alternate name for the\nexpression. The alias can be used for filtering and sorting. This field\nis optional and is useful if the expression is not a single metric but\na complex expression which cannot be used in filtering and sorting.\nThe alias is also used in the response column header.", - "type": "string" - }, - "expression": { - "description": "A metric expression in the request. An expression is constructed from one\nor more metrics and numbers. Accepted operators include: Plus (+), Minus\n(-), Negation (Unary -), Divided by (/), Multiplied by (*), Parenthesis,\nPositive cardinal numbers (0-9), can include decimals and is limited to\n1024 characters. Example `ga:totalRefunds/ga:users`, in most cases the\nmetric expression is just a single metric name like `ga:users`.\nAdding mixed `MetricType` (E.g., `CURRENCY` + `PERCENTAGE`) metrics\nwill result in unexpected results.", - "type": "string" - } - }, - "id": "Metric" - }, - "PivotValueRegion": { - "description": "The metric values in the pivot region.", - "type": "object", - "properties": { - "values": { - "description": "The values of the metrics in each of the pivot regions.", - "type": "array", - "items": { - "type": "string" - } - } - }, - "id": "PivotValueRegion" - }, - "Report": { - "description": "The data response corresponding to the request.", - "type": "object", - "properties": { - "data": { - "description": "Response data.", - "$ref": "ReportData" - }, - "nextPageToken": { - "type": "string", - "description": "Page token to retrieve the next page of results in the list." - }, - "columnHeader": { - "description": "The column headers.", - "$ref": "ColumnHeader" - } - }, - "id": "Report" - }, - "PivotHeader": { - "description": "The headers for each of the pivot sections defined in the request.", - "type": "object", - "properties": { - "pivotHeaderEntries": { - "description": "A single pivot section header.", - "type": "array", - "items": { - "$ref": "PivotHeaderEntry" - } - }, - "totalPivotGroupsCount": { - "type": "integer", - "description": "The total number of groups for this pivot.", - "format": "int32" - } - }, - "id": "PivotHeader" - }, - "DateRange": { - "description": "A contiguous set of days: startDate, startDate + 1 day, ..., endDate.\nThe start and end dates are specified in\n[ISO8601](https://en.wikipedia.org/wiki/ISO_8601) date format `YYYY-MM-DD`.", - "type": "object", - "properties": { - "endDate": { - "description": "The end date for the query in the format `YYYY-MM-DD`.", - "type": "string" - }, - "startDate": { - "description": "The start date for the query in the format `YYYY-MM-DD`.", - "type": "string" - } - }, - "id": "DateRange" - }, - "MetricFilter": { - "properties": { - "metricName": { - "description": "The metric that will be filtered on. A metricFilter must contain a metric\nname. A metric name can be an alias earlier defined as a metric or it can\nalso be a metric expression.", - "type": "string" - }, - "comparisonValue": { - "description": "The value to compare against.", - "type": "string" - }, - "operator": { - "enumDescriptions": [ - "If the operator is not specified, it is treated as `EQUAL`.", - "Should the value of the metric be exactly equal to the comparison value.", - "Should the value of the metric be less than to the comparison value.", - "Should the value of the metric be greater than to the comparison value.", - "Validates if the metric is missing.\nDoesn't take comparisonValue into account." - ], - "enum": [ - "OPERATOR_UNSPECIFIED", - "EQUAL", - "LESS_THAN", - "GREATER_THAN", - "IS_MISSING" - ], - "description": "Is the metric `EQUAL`, `LESS_THAN` or `GREATER_THAN` the\ncomparisonValue, the default is `EQUAL`. If the operator is\n`IS_MISSING`, checks if the metric is missing and would ignore the\ncomparisonValue.", - "type": "string" - }, - "not": { - "description": "Logical `NOT` operator. If this boolean is set to true, then the matching\nmetric values will be excluded in the report. The default is false.", - "type": "boolean" - } - }, - "id": "MetricFilter", - "description": "MetricFilter specifies the filter on a metric.", - "type": "object" - }, - "ReportRequest": { - "description": "The main request class which specifies the Reporting API request.", - "type": "object", - "properties": { - "pivots": { - "description": "The pivot definitions. Requests can have a maximum of 2 pivots.", - "type": "array", - "items": { - "$ref": "Pivot" - } - }, - "includeEmptyRows": { - "description": "If set to false, the response does not include rows if all the retrieved\nmetrics are equal to zero. The default is false which will exclude these\nrows.", - "type": "boolean" - }, - "metricFilterClauses": { - "description": "The metric filter clauses. They are logically combined with the `AND`\noperator. Metric filters look at only the first date range and not the\ncomparing date range. Note that filtering on metrics occurs after the\nmetrics are aggregated.", - "type": "array", - "items": { - "$ref": "MetricFilterClause" - } - }, - "pageSize": { - "description": "Page size is for paging and specifies the maximum number of returned rows.\nPage size should be \u003e= 0. A query returns the default of 1,000 rows.\nThe Analytics Core Reporting API returns a maximum of 10,000 rows per\nrequest, no matter how many you ask for. It can also return fewer rows\nthan requested, if there aren't as many dimension segments as you expect.\nFor instance, there are fewer than 300 possible values for `ga:country`,\nso when segmenting only by country, you can't get more than 300 rows,\neven if you set `pageSize` to a higher value.", - "format": "int32", - "type": "integer" - }, - "hideTotals": { - "description": "If set to true, hides the total of all metrics for all the matching rows,\nfor every date range. The default false and will return the totals.", - "type": "boolean" - }, - "hideValueRanges": { - "description": "If set to true, hides the minimum and maximum across all matching rows.\nThe default is false and the value ranges are returned.", - "type": "boolean" - }, - "cohortGroup": { - "description": "Cohort group associated with this request. If there is a cohort group\nin the request the `ga:cohort` dimension must be present.\nEvery [ReportRequest](#ReportRequest) within a `batchGet` method must\ncontain the same `cohortGroup` definition.", - "$ref": "CohortGroup" - }, - "filtersExpression": { - "description": "Dimension or metric filters that restrict the data returned for your\nrequest. To use the `filtersExpression`, supply a dimension or metric on\nwhich to filter, followed by the filter expression. For example, the\nfollowing expression selects `ga:browser` dimension which starts with\nFirefox; `ga:browser=~^Firefox`. For more information on dimensions\nand metric filters, see\n[Filters reference](https://developers.google.com/analytics/devguides/reporting/core/v3/reference#filters).", - "type": "string" - }, - "viewId": { - "description": "The Analytics\n[view ID](https://support.google.com/analytics/answer/1009618)\nfrom which to retrieve data. Every [ReportRequest](#ReportRequest)\nwithin a `batchGet` method must contain the same `viewId`.", - "type": "string" - }, - "metrics": { - "description": "The metrics requested.\nRequests must specify at least one metric. Requests can have a\ntotal of 10 metrics.", - "type": "array", - "items": { - "$ref": "Metric" - } - }, - "dimensionFilterClauses": { - "description": "The dimension filter clauses for filtering Dimension Values. They are\nlogically combined with the `AND` operator. Note that filtering occurs\nbefore any dimensions are aggregated, so that the returned metrics\nrepresent the total for only the relevant dimensions.", - "type": "array", - "items": { - "$ref": "DimensionFilterClause" - } - }, - "orderBys": { - "description": "Sort order on output rows. To compare two rows, the elements of the\nfollowing are applied in order until a difference is found. All date\nranges in the output get the same row order.", - "type": "array", - "items": { - "$ref": "OrderBy" - } - }, - "segments": { - "description": "Segment the data returned for the request. A segment definition helps look\nat a subset of the segment request. A request can contain up to four\nsegments. Every [ReportRequest](#ReportRequest) within a\n`batchGet` method must contain the same `segments` definition. Requests\nwith segments must have the `ga:segment` dimension.", - "type": "array", - "items": { - "$ref": "Segment" - } - }, - "samplingLevel": { - "enumDescriptions": [ - "If the `samplingLevel` field is unspecified the `DEFAULT` sampling level\nis used.", - "Returns response with a sample size that balances speed and\naccuracy.", - "It returns a fast response with a smaller sampling size.", - "Returns a more accurate response using a large sampling size. But this\nmay result in response being slower." - ], - "enum": [ - "SAMPLING_UNSPECIFIED", - "DEFAULT", - "SMALL", - "LARGE" - ], - "description": "The desired report\n[sample](https://support.google.com/analytics/answer/2637192) size.\nIf the the `samplingLevel` field is unspecified the `DEFAULT` sampling\nlevel is used. Every [ReportRequest](#ReportRequest) within a\n`batchGet` method must contain the same `samplingLevel` definition. See\n[developer guide](/analytics/devguides/reporting/core/v4/basics#sampling)\n for details.", - "type": "string" - }, - "dimensions": { - "description": "The dimensions requested.\nRequests can have a total of 7 dimensions.", - "type": "array", - "items": { - "$ref": "Dimension" - } - }, - "dateRanges": { - "type": "array", - "items": { - "$ref": "DateRange" - }, - "description": "Date ranges in the request. The request can have a maximum of 2 date\nranges. The response will contain a set of metric values for each\ncombination of the dimensions for each date range in the request. So, if\nthere are two date ranges, there will be two set of metric values, one for\nthe original date range and one for the second date range.\nThe `reportRequest.dateRanges` field should not be specified for cohorts\nor Lifetime value requests.\nIf a date range is not provided, the default date range is (startDate:\ncurrent date - 7 days, endDate: current date - 1 day). Every\n[ReportRequest](#ReportRequest) within a `batchGet` method must\ncontain the same `dateRanges` definition." - }, - "pageToken": { - "description": "A continuation token to get the next page of the results. Adding this to\nthe request will return the rows after the pageToken. The pageToken should\nbe the value returned in the nextPageToken parameter in the response to\nthe GetReports request.", - "type": "string" - } - }, - "id": "ReportRequest" - }, - "Dimension": { - "description": "[Dimensions](https://support.google.com/analytics/answer/1033861)\nare attributes of your data. For example, the dimension `ga:city`\nindicates the city, for example, \"Paris\" or \"New York\", from which\na session originates.", - "type": "object", - "properties": { - "name": { - "description": "Name of the dimension to fetch, for example `ga:browser`.", - "type": "string" - }, - "histogramBuckets": { - "description": "If non-empty, we place dimension values into buckets after string to\nint64. Dimension values that are not the string representation of an\nintegral value will be converted to zero. The bucket values have to be in\nincreasing order. Each bucket is closed on the lower end, and open on the\nupper end. The \"first\" bucket includes all values less than the first\nboundary, the \"last\" bucket includes all values up to infinity. Dimension\nvalues that fall in a bucket get transformed to a new dimension value. For\nexample, if one gives a list of \"0, 1, 3, 4, 7\", then we return the\nfollowing buckets:\n\n- bucket #1: values \u003c 0, dimension value \"\u003c0\"\n- bucket #2: values in [0,1), dimension value \"0\"\n- bucket #3: values in [1,3), dimension value \"1-2\"\n- bucket #4: values in [3,4), dimension value \"3\"\n- bucket #5: values in [4,7), dimension value \"4-6\"\n- bucket #6: values \u003e= 7, dimension value \"7+\"\n\nNOTE: If you are applying histogram mutation on any dimension, and using\nthat dimension in sort, you will want to use the sort type\n`HISTOGRAM_BUCKET` for that purpose. Without that the dimension values\nwill be sorted according to dictionary\n(lexicographic) order. For example the ascending dictionary order is:\n\n \"\u003c50\", \"1001+\", \"121-1000\", \"50-120\"\n\nAnd the ascending `HISTOGRAM_BUCKET` order is:\n\n \"\u003c50\", \"50-120\", \"121-1000\", \"1001+\"\n\nThe client has to explicitly request `\"orderType\": \"HISTOGRAM_BUCKET\"`\nfor a histogram-mutated dimension.", - "type": "array", - "items": { - "format": "int64", - "type": "string" - } - } - }, - "id": "Dimension" - }, - "SimpleSegment": { - "description": "A Simple segment conditions consist of one or more dimension/metric\nconditions that can be combined.", - "type": "object", - "properties": { - "orFiltersForSegment": { - "description": "A list of segment filters groups which are combined with logical `AND`\noperator.", - "type": "array", - "items": { - "$ref": "OrFiltersForSegment" - } - } - }, - "id": "SimpleSegment" - }, - "DynamicSegment": { - "description": "Dynamic segment definition for defining the segment within the request.\nA segment can select users, sessions or both.", - "type": "object", - "properties": { - "name": { - "description": "The name of the dynamic segment.", - "type": "string" - }, - "userSegment": { - "$ref": "SegmentDefinition", - "description": "User Segment to select users to include in the segment." - }, - "sessionSegment": { - "$ref": "SegmentDefinition", - "description": "Session Segment to select sessions to include in the segment." - } - }, - "id": "DynamicSegment" - }, - "ColumnHeader": { - "type": "object", - "properties": { - "dimensions": { - "description": "The dimension names in the response.", - "type": "array", - "items": { - "type": "string" - } - }, - "metricHeader": { - "description": "Metric headers for the metrics in the response.", - "$ref": "MetricHeader" - } - }, - "id": "ColumnHeader", - "description": "Column headers." - }, - "SegmentFilterClause": { - "id": "SegmentFilterClause", - "description": "Filter Clause to be used in a segment definition, can be wither a metric or\na dimension filter.", - "type": "object", - "properties": { - "metricFilter": { - "$ref": "SegmentMetricFilter", - "description": "Metric Filter for the segment definition." - }, - "not": { - "description": "Matches the complement (`!`) of the filter.", - "type": "boolean" - }, - "dimensionFilter": { - "description": "Dimension Filter for the segment definition.", - "$ref": "SegmentDimensionFilter" - } - } - }, - "MetricFilterClause": { - "type": "object", - "properties": { - "operator": { - "enumDescriptions": [ - "Unspecified operator. It is treated as an `OR`.", - "The logical `OR` operator.", - "The logical `AND` operator." - ], - "enum": [ - "OPERATOR_UNSPECIFIED", - "OR", - "AND" - ], - "description": "The operator for combining multiple metric filters. If unspecified, it is\ntreated as an `OR`.", - "type": "string" - }, - "filters": { - "description": "The repeated set of filters. They are logically combined based on the\noperator specified.", - "type": "array", - "items": { - "$ref": "MetricFilter" - } - } - }, - "id": "MetricFilterClause", - "description": "Represents a group of metric filters.\nSet the operator value to specify how the filters are logically combined." - }, - "Cohort": { - "description": "Defines a cohort. A cohort is a group of users who share a common\ncharacteristic. For example, all users with the same acquisition date\nbelong to the same cohort.", - "type": "object", - "properties": { - "name": { - "description": "A unique name for the cohort. If not defined name will be auto-generated\nwith values cohort_[1234...].", - "type": "string" - }, - "dateRange": { - "description": "This is used for `FIRST_VISIT_DATE` cohort, the cohort selects users\nwhose first visit date is between start date and end date defined in the\nDateRange. The date ranges should be aligned for cohort requests. If the\nrequest contains `ga:cohortNthDay` it should be exactly one day long,\nif `ga:cohortNthWeek` it should be aligned to the week boundary (starting\nat Sunday and ending Saturday), and for `ga:cohortNthMonth` the date range\nshould be aligned to the month (starting at the first and ending on the\nlast day of the month).\nFor LTV requests there are no such restrictions.\nYou do not need to supply a date range for the\n`reportsRequest.dateRanges` field.", - "$ref": "DateRange" - }, - "type": { - "type": "string", - "enumDescriptions": [ - "If unspecified it's treated as `FIRST_VISIT_DATE`.", - "Cohorts that are selected based on first visit date." - ], - "enum": [ - "UNSPECIFIED_COHORT_TYPE", - "FIRST_VISIT_DATE" - ], - "description": "Type of the cohort. The only supported type as of now is\n`FIRST_VISIT_DATE`. If this field is unspecified the cohort is treated\nas `FIRST_VISIT_DATE` type cohort." - } - }, - "id": "Cohort" - }, - "ReportRow": { - "type": "object", - "properties": { - "metrics": { - "description": "List of metrics for each requested DateRange.", - "type": "array", - "items": { - "$ref": "DateRangeValues" - } - }, - "dimensions": { - "type": "array", - "items": { - "type": "string" - }, - "description": "List of requested dimensions." - } - }, - "id": "ReportRow", - "description": "A row in the report." - }, - "OrFiltersForSegment": { - "description": "A list of segment filters in the `OR` group are combined with the logical OR\noperator.", - "type": "object", - "properties": { - "segmentFilterClauses": { - "description": "List of segment filters to be combined with a `OR` operator.", - "type": "array", - "items": { - "$ref": "SegmentFilterClause" - } - } - }, - "id": "OrFiltersForSegment" - }, - "MetricHeader": { - "id": "MetricHeader", - "description": "The headers for the metrics.", - "type": "object", - "properties": { - "metricHeaderEntries": { - "type": "array", - "items": { - "$ref": "MetricHeaderEntry" - }, - "description": "Headers for the metrics in the response." - }, - "pivotHeaders": { - "description": "Headers for the pivots in the response.", - "type": "array", - "items": { - "$ref": "PivotHeader" - } - } - } - }, - "DimensionFilterClause": { - "properties": { - "operator": { - "description": "The operator for combining multiple dimension filters. If unspecified, it\nis treated as an `OR`.", - "type": "string", - "enumDescriptions": [ - "Unspecified operator. It is treated as an `OR`.", - "The logical `OR` operator.", - "The logical `AND` operator." - ], - "enum": [ - "OPERATOR_UNSPECIFIED", - "OR", - "AND" - ] - }, - "filters": { - "description": "The repeated set of filters. They are logically combined based on the\noperator specified.", - "type": "array", - "items": { - "$ref": "DimensionFilter" - } - } - }, - "id": "DimensionFilterClause", - "description": "A group of dimension filters. Set the operator value to specify how\nthe filters are logically combined.", - "type": "object" - }, - "GetReportsResponse": { - "type": "object", - "properties": { - "reports": { - "description": "Responses corresponding to each of the request.", - "type": "array", - "items": { - "$ref": "Report" - } - }, - "queryCost": { - "description": "The amount of resource quota tokens deducted to execute the query. Includes\nall responses.", - "format": "int32", - "type": "integer" - }, - "resourceQuotasRemaining": { - "$ref": "ResourceQuotasRemaining", - "description": "The amount of resource quota remaining for the property." - } - }, - "id": "GetReportsResponse", - "description": "The main response class which holds the reports from the Reporting API\n`batchGet` call." - }, - "SequenceSegment": { - "id": "SequenceSegment", - "description": "Sequence conditions consist of one or more steps, where each step is defined\nby one or more dimension/metric conditions. Multiple steps can be combined\nwith special sequence operators.", - "type": "object", - "properties": { - "firstStepShouldMatchFirstHit": { - "description": "If set, first step condition must match the first hit of the visitor (in\nthe date range).", - "type": "boolean" - }, - "segmentSequenceSteps": { - "description": "The list of steps in the sequence.", - "type": "array", - "items": { - "$ref": "SegmentSequenceStep" - } - } - } - }, - "SegmentMetricFilter": { - "id": "SegmentMetricFilter", - "description": "Metric filter to be used in a segment filter clause.", - "type": "object", - "properties": { - "metricName": { - "description": "The metric that will be filtered on. A `metricFilter` must contain a\nmetric name.", - "type": "string" - }, - "scope": { - "description": "Scope for a metric defines the level at which that metric is defined. The\nspecified metric scope must be equal to or greater than its primary scope\nas defined in the data model. The primary scope is defined by if the\nsegment is selecting users or sessions.", - "type": "string", - "enumDescriptions": [ - "If the scope is unspecified, it defaults to the condition scope,\n`USER` or `SESSION` depending on if the segment is trying to choose\nusers or sessions.", - "Product scope.", - "Hit scope.", - "Session scope.", - "User scope." - ], - "enum": [ - "UNSPECIFIED_SCOPE", - "PRODUCT", - "HIT", - "SESSION", - "USER" - ] - }, - "maxComparisonValue": { - "description": "Max comparison value is only used for `BETWEEN` operator.", - "type": "string" - }, - "comparisonValue": { - "description": "The value to compare against. If the operator is `BETWEEN`, this value is\ntreated as minimum comparison value.", - "type": "string" - }, - "operator": { - "enum": [ - "UNSPECIFIED_OPERATOR", - "LESS_THAN", - "GREATER_THAN", - "EQUAL", - "BETWEEN" - ], - "description": "Specifies is the operation to perform to compare the metric. The default\nis `EQUAL`.", - "type": "string", - "enumDescriptions": [ - "Unspecified operator is treated as `LESS_THAN` operator.", - "Checks if the metric value is less than comparison value.", - "Checks if the metric value is greater than comparison value.", - "Equals operator.", - "For between operator, both the minimum and maximum are exclusive.\nWe will use `LT` and `GT` for comparison." - ] - } - } - }, - "DateRangeValues": { - "properties": { - "values": { - "type": "array", - "items": { - "type": "string" - }, - "description": "Each value corresponds to each Metric in the request." - }, - "pivotValueRegions": { - "description": "The values of each pivot region.", - "type": "array", - "items": { - "$ref": "PivotValueRegion" - } - } - }, - "id": "DateRangeValues", - "description": "Used to return a list of metrics for a single DateRange / dimension\ncombination", - "type": "object" - }, - "CohortGroup": { - "type": "object", - "properties": { - "cohorts": { - "description": "The definition for the cohort.", - "type": "array", - "items": { - "$ref": "Cohort" - } - }, - "lifetimeValue": { - "description": "Enable Life Time Value (LTV). LTV measures lifetime value for users\nacquired through different channels.\nPlease see:\n[Cohort Analysis](https://support.google.com/analytics/answer/6074676) and\n[Lifetime Value](https://support.google.com/analytics/answer/6182550)\nIf the value of lifetimeValue is false:\n\n- The metric values are similar to the values in the web interface cohort\n report.\n- The cohort definition date ranges must be aligned to the calendar week\n and month. i.e. while requesting `ga:cohortNthWeek` the `startDate` in\n the cohort definition should be a Sunday and the `endDate` should be the\n following Saturday, and for `ga:cohortNthMonth`, the `startDate`\n should be the 1st of the month and `endDate` should be the last day\n of the month.\n\nWhen the lifetimeValue is true:\n\n- The metric values will correspond to the values in the web interface\n LifeTime value report.\n- The Lifetime Value report shows you how user value (Revenue) and\n engagement (Appviews, Goal Completions, Sessions, and Session Duration)\n grow during the 90 days after a user is acquired.\n- The metrics are calculated as a cumulative average per user per the time\n increment.\n- The cohort definition date ranges need not be aligned to the calendar\n week and month boundaries.\n- The `viewId` must be an\n [app view ID](https://support.google.com/analytics/answer/2649553#WebVersusAppViews)", - "type": "boolean" - } - }, - "id": "CohortGroup", - "description": "Defines a cohort group.\nFor example:\n\n \"cohortGroup\": {\n \"cohorts\": [{\n \"name\": \"cohort 1\",\n \"type\": \"FIRST_VISIT_DATE\",\n \"dateRange\": { \"startDate\": \"2015-08-01\", \"endDate\": \"2015-08-01\" }\n },{\n \"name\": \"cohort 2\"\n \"type\": \"FIRST_VISIT_DATE\"\n \"dateRange\": { \"startDate\": \"2015-07-01\", \"endDate\": \"2015-07-01\" }\n }]\n }" - }, - "GetReportsRequest": { - "description": "The batch request containing multiple report request.", - "type": "object", - "properties": { - "useResourceQuotas": { - "description": "Enables\n[resource based quotas](/analytics/devguides/reporting/core/v4/limits-quotas#analytics_reporting_api_v4),\n(defaults to `False`). If this field is set to `True` the\nper view (profile) quotas are governed by the computational\ncost of the request. Note that using cost based quotas will\nhigher enable sampling rates. (10 Million for `SMALL`,\n100M for `LARGE`. See the\n[limits and quotas documentation](/analytics/devguides/reporting/core/v4/limits-quotas#analytics_reporting_api_v4) for details.", - "type": "boolean" - }, - "reportRequests": { - "description": "Requests, each request will have a separate response.\nThere can be a maximum of 5 requests. All requests should have the same\n`dateRanges`, `viewId`, `segments`, `samplingLevel`, and `cohortGroup`.", - "type": "array", - "items": { - "$ref": "ReportRequest" - } - } - }, - "id": "GetReportsRequest" - }, - "Pivot": { - "type": "object", - "properties": { - "metrics": { - "description": "The pivot metrics. Pivot metrics are part of the\nrestriction on total number of metrics allowed in the request.", - "type": "array", - "items": { - "$ref": "Metric" - } - }, - "dimensions": { - "description": "A list of dimensions to show as pivot columns. A Pivot can have a maximum\nof 4 dimensions. Pivot dimensions are part of the restriction on the\ntotal number of dimensions allowed in the request.", - "type": "array", - "items": { - "$ref": "Dimension" - } - }, - "dimensionFilterClauses": { - "description": "DimensionFilterClauses are logically combined with an `AND` operator: only\ndata that is included by all these DimensionFilterClauses contributes to\nthe values in this pivot region. Dimension filters can be used to restrict\nthe columns shown in the pivot region. For example if you have\n`ga:browser` as the requested dimension in the pivot region, and you\nspecify key filters to restrict `ga:browser` to only \"IE\" or \"Firefox\",\nthen only those two browsers would show up as columns.", - "type": "array", - "items": { - "$ref": "DimensionFilterClause" - } - }, - "maxGroupCount": { - "description": "Specifies the maximum number of groups to return.\nThe default value is 10, also the maximum value is 1,000.", - "format": "int32", - "type": "integer" - }, - "startGroup": { - "description": "If k metrics were requested, then the response will contain some\ndata-dependent multiple of k columns in the report. E.g., if you pivoted\non the dimension `ga:browser` then you'd get k columns for \"Firefox\", k\ncolumns for \"IE\", k columns for \"Chrome\", etc. The ordering of the groups\nof columns is determined by descending order of \"total\" for the first of\nthe k values. Ties are broken by lexicographic ordering of the first\npivot dimension, then lexicographic ordering of the second pivot\ndimension, and so on. E.g., if the totals for the first value for\nFirefox, IE, and Chrome were 8, 2, 8, respectively, the order of columns\nwould be Chrome, Firefox, IE.\n\nThe following let you choose which of the groups of k columns are\nincluded in the response.", - "format": "int32", - "type": "integer" - } - }, - "id": "Pivot", - "description": "The Pivot describes the pivot section in the request.\nThe Pivot helps rearrange the information in the table for certain reports\nby pivoting your data on a second dimension." - }, - "PivotHeaderEntry": { - "description": "The headers for the each of the metric column corresponding to the metrics\nrequested in the pivots section of the response.", - "type": "object", - "properties": { - "dimensionValues": { - "description": "The values for the dimensions in the pivot.", - "type": "array", - "items": { - "type": "string" - } - }, - "dimensionNames": { - "description": "The name of the dimensions in the pivot response.", - "type": "array", - "items": { - "type": "string" - } - }, - "metric": { - "$ref": "MetricHeaderEntry", - "description": "The metric header for the metric in the pivot." - } - }, - "id": "PivotHeaderEntry" - }, - "SegmentFilter": { - "properties": { - "simpleSegment": { - "$ref": "SimpleSegment", - "description": "A Simple segment conditions consist of one or more dimension/metric\nconditions that can be combined" - }, - "sequenceSegment": { - "$ref": "SequenceSegment", - "description": "Sequence conditions consist of one or more steps, where each step is\ndefined by one or more dimension/metric conditions. Multiple steps can\nbe combined with special sequence operators." - }, - "not": { - "description": "If true, match the complement of simple or sequence segment.\nFor example, to match all visits not from \"New York\", we can define the\nsegment as follows:\n\n \"sessionSegment\": {\n \"segmentFilters\": [{\n \"simpleSegment\" :{\n \"orFiltersForSegment\": [{\n \"segmentFilterClauses\":[{\n \"dimensionFilter\": {\n \"dimensionName\": \"ga:city\",\n \"expressions\": [\"New York\"]\n }\n }]\n }]\n },\n \"not\": \"True\"\n }]\n },", - "type": "boolean" - } - }, - "id": "SegmentFilter", - "description": "SegmentFilter defines the segment to be either a simple or a sequence\nsegment. A simple segment condition contains dimension and metric conditions\nto select the sessions or users. A sequence segment condition can be used to\nselect users or sessions based on sequential conditions.", - "type": "object" - }, - "SegmentDefinition": { - "id": "SegmentDefinition", - "description": "SegmentDefinition defines the segment to be a set of SegmentFilters which\nare combined together with a logical `AND` operation.", - "type": "object", - "properties": { - "segmentFilters": { - "description": "A segment is defined by a set of segment filters which are combined\ntogether with a logical `AND` operation.", - "type": "array", - "items": { - "$ref": "SegmentFilter" - } - } - } - }, - "MetricHeaderEntry": { - "description": "Header for the metrics.", - "type": "object", - "properties": { - "name": { - "description": "The name of the header.", - "type": "string" - }, - "type": { - "enumDescriptions": [ - "Metric type is unspecified.", - "Integer metric.", - "Float metric.", - "Currency metric.", - "Percentage metric.", - "Time metric in `HH:MM:SS` format." - ], - "enum": [ - "METRIC_TYPE_UNSPECIFIED", - "INTEGER", - "FLOAT", - "CURRENCY", - "PERCENT", - "TIME" - ], - "description": "The type of the metric, for example `INTEGER`.", - "type": "string" - } - }, - "id": "MetricHeaderEntry" - }, - "ResourceQuotasRemaining": { - "description": "The resource quota tokens remaining for the property after the request is\ncompleted.", - "type": "object", - "properties": { - "dailyQuotaTokensRemaining": { - "description": "Daily resource quota remaining remaining.", - "format": "int32", - "type": "integer" - }, - "hourlyQuotaTokensRemaining": { - "description": "Hourly resource quota tokens remaining.", - "format": "int32", - "type": "integer" - } - }, - "id": "ResourceQuotasRemaining" - }, - "ReportData": { - "description": "The data part of the report.", - "type": "object", - "properties": { - "totals": { - "description": "For each requested date range, for the set of all rows that match\nthe query, every requested value format gets a total. The total\nfor a value format is computed by first totaling the metrics\nmentioned in the value format and then evaluating the value\nformat as a scalar expression. E.g., The \"totals\" for\n`3 / (ga:sessions + 2)` we compute\n`3 / ((sum of all relevant ga:sessions) + 2)`.\nTotals are computed before pagination.", - "type": "array", - "items": { - "$ref": "DateRangeValues" - } - }, - "samplesReadCounts": { - "description": "If the results are\n[sampled](https://support.google.com/analytics/answer/2637192),\nthis returns the total number of samples read, one entry per date range.\nIf the results are not sampled this field will not be defined. See\n[developer guide](/analytics/devguides/reporting/core/v4/basics#sampling)\nfor details.", - "type": "array", - "items": { - "format": "int64", - "type": "string" - } - }, - "isDataGolden": { - "description": "Indicates if response to this request is golden or not. Data is\ngolden when the exact same request will not produce any new results if\nasked at a later point in time.", - "type": "boolean" - }, - "rows": { - "description": "There's one ReportRow for every unique combination of dimensions.", - "type": "array", - "items": { - "$ref": "ReportRow" - } - }, - "rowCount": { - "description": "Total number of matching rows for this query.", - "format": "int32", - "type": "integer" - }, - "dataLastRefreshed": { - "description": "The last time the data in the report was refreshed. All the hits received\nbefore this timestamp are included in the calculation of the report.", - "format": "google-datetime", - "type": "string" - }, - "maximums": { - "description": "Minimum and maximum values seen over all matching rows. These are both\nempty when `hideValueRanges` in the request is false, or when\nrowCount is zero.", - "type": "array", - "items": { - "$ref": "DateRangeValues" - } - }, - "minimums": { - "description": "Minimum and maximum values seen over all matching rows. These are both\nempty when `hideValueRanges` in the request is false, or when\nrowCount is zero.", - "type": "array", - "items": { - "$ref": "DateRangeValues" - } - }, - "samplingSpaceSizes": { - "description": "If the results are\n[sampled](https://support.google.com/analytics/answer/2637192),\nthis returns the total number of\nsamples present, one entry per date range. If the results are not sampled\nthis field will not be defined. See\n[developer guide](/analytics/devguides/reporting/core/v4/basics#sampling)\nfor details.", - "type": "array", - "items": { - "format": "int64", - "type": "string" - } - } - }, - "id": "ReportData" - }, - "DimensionFilter": { - "type": "object", - "properties": { - "caseSensitive": { - "type": "boolean", - "description": "Should the match be case sensitive? Default is false." - }, - "dimensionName": { - "description": "The dimension to filter on. A DimensionFilter must contain a dimension.", - "type": "string" - }, - "operator": { - "enumDescriptions": [ - "If the match type is unspecified, it is treated as a `REGEXP`.", - "The match expression is treated as a regular expression. All match types\nare not treated as regular expressions.", - "Matches the value which begin with the match expression provided.", - "Matches the values which end with the match expression provided.", - "Substring match.", - "The value should match the match expression entirely.", - "Integer comparison filters.\ncase sensitivity is ignored for these and the expression\nis assumed to be a string representing an integer.\nFailure conditions:\n\n- If expression is not a valid int64, the client should expect\n an error.\n- Input dimensions that are not valid int64 values will never match the\n filter.", - "Checks if the dimension is numerically greater than the match\nexpression. Read the description for `NUMERIC_EQUALS` for restrictions.", - "Checks if the dimension is numerically less than the match expression.\nRead the description for `NUMERIC_EQUALS` for restrictions.", - "This option is used to specify a dimension filter whose expression can\ntake any value from a selected list of values. This helps avoiding\nevaluating multiple exact match dimension filters which are OR'ed for\nevery single response row. For example:\n\n expressions: [\"A\", \"B\", \"C\"]\n\nAny response row whose dimension has it is value as A, B or C, matches\nthis DimensionFilter." - ], - "enum": [ - "OPERATOR_UNSPECIFIED", - "REGEXP", - "BEGINS_WITH", - "ENDS_WITH", - "PARTIAL", - "EXACT", - "NUMERIC_EQUAL", - "NUMERIC_GREATER_THAN", - "NUMERIC_LESS_THAN", - "IN_LIST" - ], - "description": "How to match the dimension to the expression. The default is REGEXP.", - "type": "string" - }, - "not": { - "type": "boolean", - "description": "Logical `NOT` operator. If this boolean is set to true, then the matching\ndimension values will be excluded in the report. The default is false." - }, - "expressions": { - "description": "Strings or regular expression to match against. Only the first value of\nthe list is used for comparison unless the operator is `IN_LIST`.\nIf `IN_LIST` operator, then the entire list is used to filter the\ndimensions as explained in the description of the `IN_LIST` operator.", - "type": "array", - "items": { - "type": "string" - } - } - }, - "id": "DimensionFilter", - "description": "Dimension filter specifies the filtering options on a dimension." - }, - "SegmentDimensionFilter": { - "description": "Dimension filter specifies the filtering options on a dimension.", - "type": "object", - "properties": { - "minComparisonValue": { - "description": "Minimum comparison values for `BETWEEN` match type.", - "type": "string" - }, - "maxComparisonValue": { - "description": "Maximum comparison values for `BETWEEN` match type.", - "type": "string" - }, - "dimensionName": { - "description": "Name of the dimension for which the filter is being applied.", - "type": "string" - }, - "operator": { - "description": "The operator to use to match the dimension with the expressions.", - "type": "string", - "enumDescriptions": [ - "If the match type is unspecified, it is treated as a REGEXP.", - "The match expression is treated as a regular expression. All other match\ntypes are not treated as regular expressions.", - "Matches the values which begin with the match expression provided.", - "Matches the values which end with the match expression provided.", - "Substring match.", - "The value should match the match expression entirely.", - "This option is used to specify a dimension filter whose expression can\ntake any value from a selected list of values. This helps avoiding\nevaluating multiple exact match dimension filters which are OR'ed for\nevery single response row. For example:\n\n expressions: [\"A\", \"B\", \"C\"]\n\nAny response row whose dimension has it is value as A, B or C, matches\nthis DimensionFilter.", - "Integer comparison filters.\ncase sensitivity is ignored for these and the expression\nis assumed to be a string representing an integer.\nFailure conditions:\n\n- if expression is not a valid int64, the client should expect\n an error.\n- input dimensions that are not valid int64 values will never match the\n filter.\n\nChecks if the dimension is numerically less than the match expression.", - "Checks if the dimension is numerically greater than the match\nexpression.", - "Checks if the dimension is numerically between the minimum and maximum\nof the match expression, boundaries excluded." - ], - "enum": [ - "OPERATOR_UNSPECIFIED", - "REGEXP", - "BEGINS_WITH", - "ENDS_WITH", - "PARTIAL", - "EXACT", - "IN_LIST", - "NUMERIC_LESS_THAN", - "NUMERIC_GREATER_THAN", - "NUMERIC_BETWEEN" - ] - }, - "expressions": { - "description": "The list of expressions, only the first element is used for all operators", - "type": "array", - "items": { - "type": "string" - } - }, - "caseSensitive": { - "description": "Should the match be case sensitive, ignored for `IN_LIST` operator.", - "type": "boolean" - } - }, - "id": "SegmentDimensionFilter" - }, - "OrderBy": { - "properties": { - "sortOrder": { - "enum": [ - "SORT_ORDER_UNSPECIFIED", - "ASCENDING", - "DESCENDING" - ], - "description": "The sorting order for the field.", - "type": "string", - "enumDescriptions": [ - "If the sort order is unspecified, the default is ascending.", - "Ascending sort. The field will be sorted in an ascending manner.", - "Descending sort. The field will be sorted in a descending manner." - ] - }, - "fieldName": { - "description": "The field which to sort by. The default sort order is ascending. Example:\n`ga:browser`.\nNote, that you can only specify one field for sort here. For example,\n`ga:browser, ga:city` is not valid.", - "type": "string" - }, - "orderType": { - "enumDescriptions": [ - "Unspecified order type will be treated as sort based on value.", - "The sort order is based on the value of the chosen column; looks only at\nthe first date range.", - "The sort order is based on the difference of the values of the chosen\ncolumn between the first two date ranges. Usable only if there are\nexactly two date ranges.", - "The sort order is based on weighted value of the chosen column. If\ncolumn has n/d format, then weighted value of this ratio will\nbe `(n + totals.n)/(d + totals.d)` Usable only for metrics that\nrepresent ratios.", - "Histogram order type is applicable only to dimension columns with\nnon-empty histogram-buckets.", - "If the dimensions are fixed length numbers, ordinary sort would just\nwork fine. `DIMENSION_AS_INTEGER` can be used if the dimensions are\nvariable length numbers." - ], - "enum": [ - "ORDER_TYPE_UNSPECIFIED", - "VALUE", - "DELTA", - "SMART", - "HISTOGRAM_BUCKET", - "DIMENSION_AS_INTEGER" - ], - "description": "The order type. The default orderType is `VALUE`.", - "type": "string" - } - }, - "id": "OrderBy", - "description": "Specifies the sorting options.", - "type": "object" - }, - "Segment": { - "id": "Segment", - "description": "The segment definition, if the report needs to be segmented.\nA Segment is a subset of the Analytics data. For example, of the entire\nset of users, one Segment might be users from a particular country or city.", - "type": "object", - "properties": { - "dynamicSegment": { - "description": "A dynamic segment definition in the request.", - "$ref": "DynamicSegment" - }, - "segmentId": { - "description": "The segment ID of a built-in or custom segment, for example `gaid::-3`.", - "type": "string" - } - } - } - }, - "protocol": "rest", - "icons": { - "x16": "http://www.google.com/images/icons/product/search-16.gif", - "x32": "http://www.google.com/images/icons/product/search-32.gif" - }, - "canonicalName": "AnalyticsReporting", "auth": { "oauth2": { "scopes": { @@ -1186,8 +11,1183 @@ } } }, - "rootUrl": "https://analyticsreporting.googleapis.com/", - "ownerDomain": "google.com", + "basePath": "", + "baseUrl": "https://analyticsreporting.googleapis.com/", + "batchPath": "batch", + "canonicalName": "AnalyticsReporting", + "description": "Accesses Analytics report data.", + "discoveryVersion": "v1", + "documentationLink": "https://developers.google.com/analytics/devguides/reporting/core/v4/", + "icons": { + "x16": "http://www.google.com/images/icons/product/search-16.gif", + "x32": "http://www.google.com/images/icons/product/search-32.gif" + }, + "id": "analyticsreporting:v4", + "kind": "discovery#restDescription", "name": "analyticsreporting", - "batchPath": "batch" -} + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "$.xgafv": { + "description": "V1 error format.", + "enum": [ + "1", + "2" + ], + "enumDescriptions": [ + "v1 error format", + "v2 error format" + ], + "location": "query", + "type": "string" + }, + "access_token": { + "description": "OAuth access token.", + "location": "query", + "type": "string" + }, + "alt": { + "default": "json", + "description": "Data format for response.", + "enum": [ + "json", + "media", + "proto" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json", + "Media download with context-dependent Content-Type", + "Responses with Content-Type of application/x-protobuf" + ], + "location": "query", + "type": "string" + }, + "bearer_token": { + "description": "OAuth bearer token.", + "location": "query", + "type": "string" + }, + "callback": { + "description": "JSONP", + "location": "query", + "type": "string" + }, + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "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.", + "location": "query", + "type": "string" + }, + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "pp": { + "default": "true", + "description": "Pretty-print response.", + "location": "query", + "type": "boolean" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", + "location": "query", + "type": "string" + }, + "uploadType": { + "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", + "location": "query", + "type": "string" + }, + "upload_protocol": { + "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", + "location": "query", + "type": "string" + } + }, + "protocol": "rest", + "resources": { + "reports": { + "methods": { + "batchGet": { + "description": "Returns the Analytics data.", + "flatPath": "v4/reports:batchGet", + "httpMethod": "POST", + "id": "analyticsreporting.reports.batchGet", + "parameterOrder": [], + "parameters": {}, + "path": "v4/reports:batchGet", + "request": { + "$ref": "GetReportsRequest" + }, + "response": { + "$ref": "GetReportsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/analytics", + "https://www.googleapis.com/auth/analytics.readonly" + ] + } + } + } + }, + "revision": "20180124", + "rootUrl": "https://analyticsreporting.googleapis.com/", + "schemas": { + "Cohort": { + "description": "Defines a cohort. A cohort is a group of users who share a common\ncharacteristic. For example, all users with the same acquisition date\nbelong to the same cohort.", + "id": "Cohort", + "properties": { + "dateRange": { + "$ref": "DateRange", + "description": "This is used for `FIRST_VISIT_DATE` cohort, the cohort selects users\nwhose first visit date is between start date and end date defined in the\nDateRange. The date ranges should be aligned for cohort requests. If the\nrequest contains `ga:cohortNthDay` it should be exactly one day long,\nif `ga:cohortNthWeek` it should be aligned to the week boundary (starting\nat Sunday and ending Saturday), and for `ga:cohortNthMonth` the date range\nshould be aligned to the month (starting at the first and ending on the\nlast day of the month).\nFor LTV requests there are no such restrictions.\nYou do not need to supply a date range for the\n`reportsRequest.dateRanges` field." + }, + "name": { + "description": "A unique name for the cohort. If not defined name will be auto-generated\nwith values cohort_[1234...].", + "type": "string" + }, + "type": { + "description": "Type of the cohort. The only supported type as of now is\n`FIRST_VISIT_DATE`. If this field is unspecified the cohort is treated\nas `FIRST_VISIT_DATE` type cohort.", + "enum": [ + "UNSPECIFIED_COHORT_TYPE", + "FIRST_VISIT_DATE" + ], + "enumDescriptions": [ + "If unspecified it's treated as `FIRST_VISIT_DATE`.", + "Cohorts that are selected based on first visit date." + ], + "type": "string" + } + }, + "type": "object" + }, + "CohortGroup": { + "description": "Defines a cohort group.\nFor example:\n\n \"cohortGroup\": {\n \"cohorts\": [{\n \"name\": \"cohort 1\",\n \"type\": \"FIRST_VISIT_DATE\",\n \"dateRange\": { \"startDate\": \"2015-08-01\", \"endDate\": \"2015-08-01\" }\n },{\n \"name\": \"cohort 2\"\n \"type\": \"FIRST_VISIT_DATE\"\n \"dateRange\": { \"startDate\": \"2015-07-01\", \"endDate\": \"2015-07-01\" }\n }]\n }", + "id": "CohortGroup", + "properties": { + "cohorts": { + "description": "The definition for the cohort.", + "items": { + "$ref": "Cohort" + }, + "type": "array" + }, + "lifetimeValue": { + "description": "Enable Life Time Value (LTV). LTV measures lifetime value for users\nacquired through different channels.\nPlease see:\n[Cohort Analysis](https://support.google.com/analytics/answer/6074676) and\n[Lifetime Value](https://support.google.com/analytics/answer/6182550)\nIf the value of lifetimeValue is false:\n\n- The metric values are similar to the values in the web interface cohort\n report.\n- The cohort definition date ranges must be aligned to the calendar week\n and month. i.e. while requesting `ga:cohortNthWeek` the `startDate` in\n the cohort definition should be a Sunday and the `endDate` should be the\n following Saturday, and for `ga:cohortNthMonth`, the `startDate`\n should be the 1st of the month and `endDate` should be the last day\n of the month.\n\nWhen the lifetimeValue is true:\n\n- The metric values will correspond to the values in the web interface\n LifeTime value report.\n- The Lifetime Value report shows you how user value (Revenue) and\n engagement (Appviews, Goal Completions, Sessions, and Session Duration)\n grow during the 90 days after a user is acquired.\n- The metrics are calculated as a cumulative average per user per the time\n increment.\n- The cohort definition date ranges need not be aligned to the calendar\n week and month boundaries.\n- The `viewId` must be an\n [app view ID](https://support.google.com/analytics/answer/2649553#WebVersusAppViews)", + "type": "boolean" + } + }, + "type": "object" + }, + "ColumnHeader": { + "description": "Column headers.", + "id": "ColumnHeader", + "properties": { + "dimensions": { + "description": "The dimension names in the response.", + "items": { + "type": "string" + }, + "type": "array" + }, + "metricHeader": { + "$ref": "MetricHeader", + "description": "Metric headers for the metrics in the response." + } + }, + "type": "object" + }, + "DateRange": { + "description": "A contiguous set of days: startDate, startDate + 1 day, ..., endDate.\nThe start and end dates are specified in\n[ISO8601](https://en.wikipedia.org/wiki/ISO_8601) date format `YYYY-MM-DD`.", + "id": "DateRange", + "properties": { + "endDate": { + "description": "The end date for the query in the format `YYYY-MM-DD`.", + "type": "string" + }, + "startDate": { + "description": "The start date for the query in the format `YYYY-MM-DD`.", + "type": "string" + } + }, + "type": "object" + }, + "DateRangeValues": { + "description": "Used to return a list of metrics for a single DateRange / dimension\ncombination", + "id": "DateRangeValues", + "properties": { + "pivotValueRegions": { + "description": "The values of each pivot region.", + "items": { + "$ref": "PivotValueRegion" + }, + "type": "array" + }, + "values": { + "description": "Each value corresponds to each Metric in the request.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "Dimension": { + "description": "[Dimensions](https://support.google.com/analytics/answer/1033861)\nare attributes of your data. For example, the dimension `ga:city`\nindicates the city, for example, \"Paris\" or \"New York\", from which\na session originates.", + "id": "Dimension", + "properties": { + "histogramBuckets": { + "description": "If non-empty, we place dimension values into buckets after string to\nint64. Dimension values that are not the string representation of an\nintegral value will be converted to zero. The bucket values have to be in\nincreasing order. Each bucket is closed on the lower end, and open on the\nupper end. The \"first\" bucket includes all values less than the first\nboundary, the \"last\" bucket includes all values up to infinity. Dimension\nvalues that fall in a bucket get transformed to a new dimension value. For\nexample, if one gives a list of \"0, 1, 3, 4, 7\", then we return the\nfollowing buckets:\n\n- bucket #1: values \u003c 0, dimension value \"\u003c0\"\n- bucket #2: values in [0,1), dimension value \"0\"\n- bucket #3: values in [1,3), dimension value \"1-2\"\n- bucket #4: values in [3,4), dimension value \"3\"\n- bucket #5: values in [4,7), dimension value \"4-6\"\n- bucket #6: values \u003e= 7, dimension value \"7+\"\n\nNOTE: If you are applying histogram mutation on any dimension, and using\nthat dimension in sort, you will want to use the sort type\n`HISTOGRAM_BUCKET` for that purpose. Without that the dimension values\nwill be sorted according to dictionary\n(lexicographic) order. For example the ascending dictionary order is:\n\n \"\u003c50\", \"1001+\", \"121-1000\", \"50-120\"\n\nAnd the ascending `HISTOGRAM_BUCKET` order is:\n\n \"\u003c50\", \"50-120\", \"121-1000\", \"1001+\"\n\nThe client has to explicitly request `\"orderType\": \"HISTOGRAM_BUCKET\"`\nfor a histogram-mutated dimension.", + "items": { + "format": "int64", + "type": "string" + }, + "type": "array" + }, + "name": { + "description": "Name of the dimension to fetch, for example `ga:browser`.", + "type": "string" + } + }, + "type": "object" + }, + "DimensionFilter": { + "description": "Dimension filter specifies the filtering options on a dimension.", + "id": "DimensionFilter", + "properties": { + "caseSensitive": { + "description": "Should the match be case sensitive? Default is false.", + "type": "boolean" + }, + "dimensionName": { + "description": "The dimension to filter on. A DimensionFilter must contain a dimension.", + "type": "string" + }, + "expressions": { + "description": "Strings or regular expression to match against. Only the first value of\nthe list is used for comparison unless the operator is `IN_LIST`.\nIf `IN_LIST` operator, then the entire list is used to filter the\ndimensions as explained in the description of the `IN_LIST` operator.", + "items": { + "type": "string" + }, + "type": "array" + }, + "not": { + "description": "Logical `NOT` operator. If this boolean is set to true, then the matching\ndimension values will be excluded in the report. The default is false.", + "type": "boolean" + }, + "operator": { + "description": "How to match the dimension to the expression. The default is REGEXP.", + "enum": [ + "OPERATOR_UNSPECIFIED", + "REGEXP", + "BEGINS_WITH", + "ENDS_WITH", + "PARTIAL", + "EXACT", + "NUMERIC_EQUAL", + "NUMERIC_GREATER_THAN", + "NUMERIC_LESS_THAN", + "IN_LIST" + ], + "enumDescriptions": [ + "If the match type is unspecified, it is treated as a `REGEXP`.", + "The match expression is treated as a regular expression. All match types\nare not treated as regular expressions.", + "Matches the value which begin with the match expression provided.", + "Matches the values which end with the match expression provided.", + "Substring match.", + "The value should match the match expression entirely.", + "Integer comparison filters.\ncase sensitivity is ignored for these and the expression\nis assumed to be a string representing an integer.\nFailure conditions:\n\n- If expression is not a valid int64, the client should expect\n an error.\n- Input dimensions that are not valid int64 values will never match the\n filter.", + "Checks if the dimension is numerically greater than the match\nexpression. Read the description for `NUMERIC_EQUALS` for restrictions.", + "Checks if the dimension is numerically less than the match expression.\nRead the description for `NUMERIC_EQUALS` for restrictions.", + "This option is used to specify a dimension filter whose expression can\ntake any value from a selected list of values. This helps avoiding\nevaluating multiple exact match dimension filters which are OR'ed for\nevery single response row. For example:\n\n expressions: [\"A\", \"B\", \"C\"]\n\nAny response row whose dimension has it is value as A, B or C, matches\nthis DimensionFilter." + ], + "type": "string" + } + }, + "type": "object" + }, + "DimensionFilterClause": { + "description": "A group of dimension filters. Set the operator value to specify how\nthe filters are logically combined.", + "id": "DimensionFilterClause", + "properties": { + "filters": { + "description": "The repeated set of filters. They are logically combined based on the\noperator specified.", + "items": { + "$ref": "DimensionFilter" + }, + "type": "array" + }, + "operator": { + "description": "The operator for combining multiple dimension filters. If unspecified, it\nis treated as an `OR`.", + "enum": [ + "OPERATOR_UNSPECIFIED", + "OR", + "AND" + ], + "enumDescriptions": [ + "Unspecified operator. It is treated as an `OR`.", + "The logical `OR` operator.", + "The logical `AND` operator." + ], + "type": "string" + } + }, + "type": "object" + }, + "DynamicSegment": { + "description": "Dynamic segment definition for defining the segment within the request.\nA segment can select users, sessions or both.", + "id": "DynamicSegment", + "properties": { + "name": { + "description": "The name of the dynamic segment.", + "type": "string" + }, + "sessionSegment": { + "$ref": "SegmentDefinition", + "description": "Session Segment to select sessions to include in the segment." + }, + "userSegment": { + "$ref": "SegmentDefinition", + "description": "User Segment to select users to include in the segment." + } + }, + "type": "object" + }, + "GetReportsRequest": { + "description": "The batch request containing multiple report request.", + "id": "GetReportsRequest", + "properties": { + "reportRequests": { + "description": "Requests, each request will have a separate response.\nThere can be a maximum of 5 requests. All requests should have the same\n`dateRanges`, `viewId`, `segments`, `samplingLevel`, and `cohortGroup`.", + "items": { + "$ref": "ReportRequest" + }, + "type": "array" + }, + "useResourceQuotas": { + "description": "Enables\n[resource based quotas](/analytics/devguides/reporting/core/v4/limits-quotas#analytics_reporting_api_v4),\n(defaults to `False`). If this field is set to `True` the\nper view (profile) quotas are governed by the computational\ncost of the request. Note that using cost based quotas will\nhigher enable sampling rates. (10 Million for `SMALL`,\n100M for `LARGE`. See the\n[limits and quotas documentation](/analytics/devguides/reporting/core/v4/limits-quotas#analytics_reporting_api_v4) for details.", + "type": "boolean" + } + }, + "type": "object" + }, + "GetReportsResponse": { + "description": "The main response class which holds the reports from the Reporting API\n`batchGet` call.", + "id": "GetReportsResponse", + "properties": { + "queryCost": { + "description": "The amount of resource quota tokens deducted to execute the query. Includes\nall responses.", + "format": "int32", + "type": "integer" + }, + "reports": { + "description": "Responses corresponding to each of the request.", + "items": { + "$ref": "Report" + }, + "type": "array" + }, + "resourceQuotasRemaining": { + "$ref": "ResourceQuotasRemaining", + "description": "The amount of resource quota remaining for the property." + } + }, + "type": "object" + }, + "Metric": { + "description": "[Metrics](https://support.google.com/analytics/answer/1033861)\nare the quantitative measurements. For example, the metric `ga:users`\nindicates the total number of users for the requested time period.", + "id": "Metric", + "properties": { + "alias": { + "description": "An alias for the metric expression is an alternate name for the\nexpression. The alias can be used for filtering and sorting. This field\nis optional and is useful if the expression is not a single metric but\na complex expression which cannot be used in filtering and sorting.\nThe alias is also used in the response column header.", + "type": "string" + }, + "expression": { + "description": "A metric expression in the request. An expression is constructed from one\nor more metrics and numbers. Accepted operators include: Plus (+), Minus\n(-), Negation (Unary -), Divided by (/), Multiplied by (*), Parenthesis,\nPositive cardinal numbers (0-9), can include decimals and is limited to\n1024 characters. Example `ga:totalRefunds/ga:users`, in most cases the\nmetric expression is just a single metric name like `ga:users`.\nAdding mixed `MetricType` (E.g., `CURRENCY` + `PERCENTAGE`) metrics\nwill result in unexpected results.", + "type": "string" + }, + "formattingType": { + "description": "Specifies how the metric expression should be formatted, for example\n`INTEGER`.", + "enum": [ + "METRIC_TYPE_UNSPECIFIED", + "INTEGER", + "FLOAT", + "CURRENCY", + "PERCENT", + "TIME" + ], + "enumDescriptions": [ + "Metric type is unspecified.", + "Integer metric.", + "Float metric.", + "Currency metric.", + "Percentage metric.", + "Time metric in `HH:MM:SS` format." + ], + "type": "string" + } + }, + "type": "object" + }, + "MetricFilter": { + "description": "MetricFilter specifies the filter on a metric.", + "id": "MetricFilter", + "properties": { + "comparisonValue": { + "description": "The value to compare against.", + "type": "string" + }, + "metricName": { + "description": "The metric that will be filtered on. A metricFilter must contain a metric\nname. A metric name can be an alias earlier defined as a metric or it can\nalso be a metric expression.", + "type": "string" + }, + "not": { + "description": "Logical `NOT` operator. If this boolean is set to true, then the matching\nmetric values will be excluded in the report. The default is false.", + "type": "boolean" + }, + "operator": { + "description": "Is the metric `EQUAL`, `LESS_THAN` or `GREATER_THAN` the\ncomparisonValue, the default is `EQUAL`. If the operator is\n`IS_MISSING`, checks if the metric is missing and would ignore the\ncomparisonValue.", + "enum": [ + "OPERATOR_UNSPECIFIED", + "EQUAL", + "LESS_THAN", + "GREATER_THAN", + "IS_MISSING" + ], + "enumDescriptions": [ + "If the operator is not specified, it is treated as `EQUAL`.", + "Should the value of the metric be exactly equal to the comparison value.", + "Should the value of the metric be less than to the comparison value.", + "Should the value of the metric be greater than to the comparison value.", + "Validates if the metric is missing.\nDoesn't take comparisonValue into account." + ], + "type": "string" + } + }, + "type": "object" + }, + "MetricFilterClause": { + "description": "Represents a group of metric filters.\nSet the operator value to specify how the filters are logically combined.", + "id": "MetricFilterClause", + "properties": { + "filters": { + "description": "The repeated set of filters. They are logically combined based on the\noperator specified.", + "items": { + "$ref": "MetricFilter" + }, + "type": "array" + }, + "operator": { + "description": "The operator for combining multiple metric filters. If unspecified, it is\ntreated as an `OR`.", + "enum": [ + "OPERATOR_UNSPECIFIED", + "OR", + "AND" + ], + "enumDescriptions": [ + "Unspecified operator. It is treated as an `OR`.", + "The logical `OR` operator.", + "The logical `AND` operator." + ], + "type": "string" + } + }, + "type": "object" + }, + "MetricHeader": { + "description": "The headers for the metrics.", + "id": "MetricHeader", + "properties": { + "metricHeaderEntries": { + "description": "Headers for the metrics in the response.", + "items": { + "$ref": "MetricHeaderEntry" + }, + "type": "array" + }, + "pivotHeaders": { + "description": "Headers for the pivots in the response.", + "items": { + "$ref": "PivotHeader" + }, + "type": "array" + } + }, + "type": "object" + }, + "MetricHeaderEntry": { + "description": "Header for the metrics.", + "id": "MetricHeaderEntry", + "properties": { + "name": { + "description": "The name of the header.", + "type": "string" + }, + "type": { + "description": "The type of the metric, for example `INTEGER`.", + "enum": [ + "METRIC_TYPE_UNSPECIFIED", + "INTEGER", + "FLOAT", + "CURRENCY", + "PERCENT", + "TIME" + ], + "enumDescriptions": [ + "Metric type is unspecified.", + "Integer metric.", + "Float metric.", + "Currency metric.", + "Percentage metric.", + "Time metric in `HH:MM:SS` format." + ], + "type": "string" + } + }, + "type": "object" + }, + "OrFiltersForSegment": { + "description": "A list of segment filters in the `OR` group are combined with the logical OR\noperator.", + "id": "OrFiltersForSegment", + "properties": { + "segmentFilterClauses": { + "description": "List of segment filters to be combined with a `OR` operator.", + "items": { + "$ref": "SegmentFilterClause" + }, + "type": "array" + } + }, + "type": "object" + }, + "OrderBy": { + "description": "Specifies the sorting options.", + "id": "OrderBy", + "properties": { + "fieldName": { + "description": "The field which to sort by. The default sort order is ascending. Example:\n`ga:browser`.\nNote, that you can only specify one field for sort here. For example,\n`ga:browser, ga:city` is not valid.", + "type": "string" + }, + "orderType": { + "description": "The order type. The default orderType is `VALUE`.", + "enum": [ + "ORDER_TYPE_UNSPECIFIED", + "VALUE", + "DELTA", + "SMART", + "HISTOGRAM_BUCKET", + "DIMENSION_AS_INTEGER" + ], + "enumDescriptions": [ + "Unspecified order type will be treated as sort based on value.", + "The sort order is based on the value of the chosen column; looks only at\nthe first date range.", + "The sort order is based on the difference of the values of the chosen\ncolumn between the first two date ranges. Usable only if there are\nexactly two date ranges.", + "The sort order is based on weighted value of the chosen column. If\ncolumn has n/d format, then weighted value of this ratio will\nbe `(n + totals.n)/(d + totals.d)` Usable only for metrics that\nrepresent ratios.", + "Histogram order type is applicable only to dimension columns with\nnon-empty histogram-buckets.", + "If the dimensions are fixed length numbers, ordinary sort would just\nwork fine. `DIMENSION_AS_INTEGER` can be used if the dimensions are\nvariable length numbers." + ], + "type": "string" + }, + "sortOrder": { + "description": "The sorting order for the field.", + "enum": [ + "SORT_ORDER_UNSPECIFIED", + "ASCENDING", + "DESCENDING" + ], + "enumDescriptions": [ + "If the sort order is unspecified, the default is ascending.", + "Ascending sort. The field will be sorted in an ascending manner.", + "Descending sort. The field will be sorted in a descending manner." + ], + "type": "string" + } + }, + "type": "object" + }, + "Pivot": { + "description": "The Pivot describes the pivot section in the request.\nThe Pivot helps rearrange the information in the table for certain reports\nby pivoting your data on a second dimension.", + "id": "Pivot", + "properties": { + "dimensionFilterClauses": { + "description": "DimensionFilterClauses are logically combined with an `AND` operator: only\ndata that is included by all these DimensionFilterClauses contributes to\nthe values in this pivot region. Dimension filters can be used to restrict\nthe columns shown in the pivot region. For example if you have\n`ga:browser` as the requested dimension in the pivot region, and you\nspecify key filters to restrict `ga:browser` to only \"IE\" or \"Firefox\",\nthen only those two browsers would show up as columns.", + "items": { + "$ref": "DimensionFilterClause" + }, + "type": "array" + }, + "dimensions": { + "description": "A list of dimensions to show as pivot columns. A Pivot can have a maximum\nof 4 dimensions. Pivot dimensions are part of the restriction on the\ntotal number of dimensions allowed in the request.", + "items": { + "$ref": "Dimension" + }, + "type": "array" + }, + "maxGroupCount": { + "description": "Specifies the maximum number of groups to return.\nThe default value is 10, also the maximum value is 1,000.", + "format": "int32", + "type": "integer" + }, + "metrics": { + "description": "The pivot metrics. Pivot metrics are part of the\nrestriction on total number of metrics allowed in the request.", + "items": { + "$ref": "Metric" + }, + "type": "array" + }, + "startGroup": { + "description": "If k metrics were requested, then the response will contain some\ndata-dependent multiple of k columns in the report. E.g., if you pivoted\non the dimension `ga:browser` then you'd get k columns for \"Firefox\", k\ncolumns for \"IE\", k columns for \"Chrome\", etc. The ordering of the groups\nof columns is determined by descending order of \"total\" for the first of\nthe k values. Ties are broken by lexicographic ordering of the first\npivot dimension, then lexicographic ordering of the second pivot\ndimension, and so on. E.g., if the totals for the first value for\nFirefox, IE, and Chrome were 8, 2, 8, respectively, the order of columns\nwould be Chrome, Firefox, IE.\n\nThe following let you choose which of the groups of k columns are\nincluded in the response.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "PivotHeader": { + "description": "The headers for each of the pivot sections defined in the request.", + "id": "PivotHeader", + "properties": { + "pivotHeaderEntries": { + "description": "A single pivot section header.", + "items": { + "$ref": "PivotHeaderEntry" + }, + "type": "array" + }, + "totalPivotGroupsCount": { + "description": "The total number of groups for this pivot.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "PivotHeaderEntry": { + "description": "The headers for the each of the metric column corresponding to the metrics\nrequested in the pivots section of the response.", + "id": "PivotHeaderEntry", + "properties": { + "dimensionNames": { + "description": "The name of the dimensions in the pivot response.", + "items": { + "type": "string" + }, + "type": "array" + }, + "dimensionValues": { + "description": "The values for the dimensions in the pivot.", + "items": { + "type": "string" + }, + "type": "array" + }, + "metric": { + "$ref": "MetricHeaderEntry", + "description": "The metric header for the metric in the pivot." + } + }, + "type": "object" + }, + "PivotValueRegion": { + "description": "The metric values in the pivot region.", + "id": "PivotValueRegion", + "properties": { + "values": { + "description": "The values of the metrics in each of the pivot regions.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "Report": { + "description": "The data response corresponding to the request.", + "id": "Report", + "properties": { + "columnHeader": { + "$ref": "ColumnHeader", + "description": "The column headers." + }, + "data": { + "$ref": "ReportData", + "description": "Response data." + }, + "nextPageToken": { + "description": "Page token to retrieve the next page of results in the list.", + "type": "string" + } + }, + "type": "object" + }, + "ReportData": { + "description": "The data part of the report.", + "id": "ReportData", + "properties": { + "dataLastRefreshed": { + "description": "The last time the data in the report was refreshed. All the hits received\nbefore this timestamp are included in the calculation of the report.", + "format": "google-datetime", + "type": "string" + }, + "isDataGolden": { + "description": "Indicates if response to this request is golden or not. Data is\ngolden when the exact same request will not produce any new results if\nasked at a later point in time.", + "type": "boolean" + }, + "maximums": { + "description": "Minimum and maximum values seen over all matching rows. These are both\nempty when `hideValueRanges` in the request is false, or when\nrowCount is zero.", + "items": { + "$ref": "DateRangeValues" + }, + "type": "array" + }, + "minimums": { + "description": "Minimum and maximum values seen over all matching rows. These are both\nempty when `hideValueRanges` in the request is false, or when\nrowCount is zero.", + "items": { + "$ref": "DateRangeValues" + }, + "type": "array" + }, + "rowCount": { + "description": "Total number of matching rows for this query.", + "format": "int32", + "type": "integer" + }, + "rows": { + "description": "There's one ReportRow for every unique combination of dimensions.", + "items": { + "$ref": "ReportRow" + }, + "type": "array" + }, + "samplesReadCounts": { + "description": "If the results are\n[sampled](https://support.google.com/analytics/answer/2637192),\nthis returns the total number of samples read, one entry per date range.\nIf the results are not sampled this field will not be defined. See\n[developer guide](/analytics/devguides/reporting/core/v4/basics#sampling)\nfor details.", + "items": { + "format": "int64", + "type": "string" + }, + "type": "array" + }, + "samplingSpaceSizes": { + "description": "If the results are\n[sampled](https://support.google.com/analytics/answer/2637192),\nthis returns the total number of\nsamples present, one entry per date range. If the results are not sampled\nthis field will not be defined. See\n[developer guide](/analytics/devguides/reporting/core/v4/basics#sampling)\nfor details.", + "items": { + "format": "int64", + "type": "string" + }, + "type": "array" + }, + "totals": { + "description": "For each requested date range, for the set of all rows that match\nthe query, every requested value format gets a total. The total\nfor a value format is computed by first totaling the metrics\nmentioned in the value format and then evaluating the value\nformat as a scalar expression. E.g., The \"totals\" for\n`3 / (ga:sessions + 2)` we compute\n`3 / ((sum of all relevant ga:sessions) + 2)`.\nTotals are computed before pagination.", + "items": { + "$ref": "DateRangeValues" + }, + "type": "array" + } + }, + "type": "object" + }, + "ReportRequest": { + "description": "The main request class which specifies the Reporting API request.", + "id": "ReportRequest", + "properties": { + "cohortGroup": { + "$ref": "CohortGroup", + "description": "Cohort group associated with this request. If there is a cohort group\nin the request the `ga:cohort` dimension must be present.\nEvery [ReportRequest](#ReportRequest) within a `batchGet` method must\ncontain the same `cohortGroup` definition." + }, + "dateRanges": { + "description": "Date ranges in the request. The request can have a maximum of 2 date\nranges. The response will contain a set of metric values for each\ncombination of the dimensions for each date range in the request. So, if\nthere are two date ranges, there will be two set of metric values, one for\nthe original date range and one for the second date range.\nThe `reportRequest.dateRanges` field should not be specified for cohorts\nor Lifetime value requests.\nIf a date range is not provided, the default date range is (startDate:\ncurrent date - 7 days, endDate: current date - 1 day). Every\n[ReportRequest](#ReportRequest) within a `batchGet` method must\ncontain the same `dateRanges` definition.", + "items": { + "$ref": "DateRange" + }, + "type": "array" + }, + "dimensionFilterClauses": { + "description": "The dimension filter clauses for filtering Dimension Values. They are\nlogically combined with the `AND` operator. Note that filtering occurs\nbefore any dimensions are aggregated, so that the returned metrics\nrepresent the total for only the relevant dimensions.", + "items": { + "$ref": "DimensionFilterClause" + }, + "type": "array" + }, + "dimensions": { + "description": "The dimensions requested.\nRequests can have a total of 7 dimensions.", + "items": { + "$ref": "Dimension" + }, + "type": "array" + }, + "filtersExpression": { + "description": "Dimension or metric filters that restrict the data returned for your\nrequest. To use the `filtersExpression`, supply a dimension or metric on\nwhich to filter, followed by the filter expression. For example, the\nfollowing expression selects `ga:browser` dimension which starts with\nFirefox; `ga:browser=~^Firefox`. For more information on dimensions\nand metric filters, see\n[Filters reference](https://developers.google.com/analytics/devguides/reporting/core/v3/reference#filters).", + "type": "string" + }, + "hideTotals": { + "description": "If set to true, hides the total of all metrics for all the matching rows,\nfor every date range. The default false and will return the totals.", + "type": "boolean" + }, + "hideValueRanges": { + "description": "If set to true, hides the minimum and maximum across all matching rows.\nThe default is false and the value ranges are returned.", + "type": "boolean" + }, + "includeEmptyRows": { + "description": "If set to false, the response does not include rows if all the retrieved\nmetrics are equal to zero. The default is false which will exclude these\nrows.", + "type": "boolean" + }, + "metricFilterClauses": { + "description": "The metric filter clauses. They are logically combined with the `AND`\noperator. Metric filters look at only the first date range and not the\ncomparing date range. Note that filtering on metrics occurs after the\nmetrics are aggregated.", + "items": { + "$ref": "MetricFilterClause" + }, + "type": "array" + }, + "metrics": { + "description": "The metrics requested.\nRequests must specify at least one metric. Requests can have a\ntotal of 10 metrics.", + "items": { + "$ref": "Metric" + }, + "type": "array" + }, + "orderBys": { + "description": "Sort order on output rows. To compare two rows, the elements of the\nfollowing are applied in order until a difference is found. All date\nranges in the output get the same row order.", + "items": { + "$ref": "OrderBy" + }, + "type": "array" + }, + "pageSize": { + "description": "Page size is for paging and specifies the maximum number of returned rows.\nPage size should be \u003e= 0. A query returns the default of 1,000 rows.\nThe Analytics Core Reporting API returns a maximum of 10,000 rows per\nrequest, no matter how many you ask for. It can also return fewer rows\nthan requested, if there aren't as many dimension segments as you expect.\nFor instance, there are fewer than 300 possible values for `ga:country`,\nso when segmenting only by country, you can't get more than 300 rows,\neven if you set `pageSize` to a higher value.", + "format": "int32", + "type": "integer" + }, + "pageToken": { + "description": "A continuation token to get the next page of the results. Adding this to\nthe request will return the rows after the pageToken. The pageToken should\nbe the value returned in the nextPageToken parameter in the response to\nthe GetReports request.", + "type": "string" + }, + "pivots": { + "description": "The pivot definitions. Requests can have a maximum of 2 pivots.", + "items": { + "$ref": "Pivot" + }, + "type": "array" + }, + "samplingLevel": { + "description": "The desired report\n[sample](https://support.google.com/analytics/answer/2637192) size.\nIf the the `samplingLevel` field is unspecified the `DEFAULT` sampling\nlevel is used. Every [ReportRequest](#ReportRequest) within a\n`batchGet` method must contain the same `samplingLevel` definition. See\n[developer guide](/analytics/devguides/reporting/core/v4/basics#sampling)\n for details.", + "enum": [ + "SAMPLING_UNSPECIFIED", + "DEFAULT", + "SMALL", + "LARGE" + ], + "enumDescriptions": [ + "If the `samplingLevel` field is unspecified the `DEFAULT` sampling level\nis used.", + "Returns response with a sample size that balances speed and\naccuracy.", + "It returns a fast response with a smaller sampling size.", + "Returns a more accurate response using a large sampling size. But this\nmay result in response being slower." + ], + "type": "string" + }, + "segments": { + "description": "Segment the data returned for the request. A segment definition helps look\nat a subset of the segment request. A request can contain up to four\nsegments. Every [ReportRequest](#ReportRequest) within a\n`batchGet` method must contain the same `segments` definition. Requests\nwith segments must have the `ga:segment` dimension.", + "items": { + "$ref": "Segment" + }, + "type": "array" + }, + "viewId": { + "description": "The Analytics\n[view ID](https://support.google.com/analytics/answer/1009618)\nfrom which to retrieve data. Every [ReportRequest](#ReportRequest)\nwithin a `batchGet` method must contain the same `viewId`.", + "type": "string" + } + }, + "type": "object" + }, + "ReportRow": { + "description": "A row in the report.", + "id": "ReportRow", + "properties": { + "dimensions": { + "description": "List of requested dimensions.", + "items": { + "type": "string" + }, + "type": "array" + }, + "metrics": { + "description": "List of metrics for each requested DateRange.", + "items": { + "$ref": "DateRangeValues" + }, + "type": "array" + } + }, + "type": "object" + }, + "ResourceQuotasRemaining": { + "description": "The resource quota tokens remaining for the property after the request is\ncompleted.", + "id": "ResourceQuotasRemaining", + "properties": { + "dailyQuotaTokensRemaining": { + "description": "Daily resource quota remaining remaining.", + "format": "int32", + "type": "integer" + }, + "hourlyQuotaTokensRemaining": { + "description": "Hourly resource quota tokens remaining.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "Segment": { + "description": "The segment definition, if the report needs to be segmented.\nA Segment is a subset of the Analytics data. For example, of the entire\nset of users, one Segment might be users from a particular country or city.", + "id": "Segment", + "properties": { + "dynamicSegment": { + "$ref": "DynamicSegment", + "description": "A dynamic segment definition in the request." + }, + "segmentId": { + "description": "The segment ID of a built-in or custom segment, for example `gaid::-3`.", + "type": "string" + } + }, + "type": "object" + }, + "SegmentDefinition": { + "description": "SegmentDefinition defines the segment to be a set of SegmentFilters which\nare combined together with a logical `AND` operation.", + "id": "SegmentDefinition", + "properties": { + "segmentFilters": { + "description": "A segment is defined by a set of segment filters which are combined\ntogether with a logical `AND` operation.", + "items": { + "$ref": "SegmentFilter" + }, + "type": "array" + } + }, + "type": "object" + }, + "SegmentDimensionFilter": { + "description": "Dimension filter specifies the filtering options on a dimension.", + "id": "SegmentDimensionFilter", + "properties": { + "caseSensitive": { + "description": "Should the match be case sensitive, ignored for `IN_LIST` operator.", + "type": "boolean" + }, + "dimensionName": { + "description": "Name of the dimension for which the filter is being applied.", + "type": "string" + }, + "expressions": { + "description": "The list of expressions, only the first element is used for all operators", + "items": { + "type": "string" + }, + "type": "array" + }, + "maxComparisonValue": { + "description": "Maximum comparison values for `BETWEEN` match type.", + "type": "string" + }, + "minComparisonValue": { + "description": "Minimum comparison values for `BETWEEN` match type.", + "type": "string" + }, + "operator": { + "description": "The operator to use to match the dimension with the expressions.", + "enum": [ + "OPERATOR_UNSPECIFIED", + "REGEXP", + "BEGINS_WITH", + "ENDS_WITH", + "PARTIAL", + "EXACT", + "IN_LIST", + "NUMERIC_LESS_THAN", + "NUMERIC_GREATER_THAN", + "NUMERIC_BETWEEN" + ], + "enumDescriptions": [ + "If the match type is unspecified, it is treated as a REGEXP.", + "The match expression is treated as a regular expression. All other match\ntypes are not treated as regular expressions.", + "Matches the values which begin with the match expression provided.", + "Matches the values which end with the match expression provided.", + "Substring match.", + "The value should match the match expression entirely.", + "This option is used to specify a dimension filter whose expression can\ntake any value from a selected list of values. This helps avoiding\nevaluating multiple exact match dimension filters which are OR'ed for\nevery single response row. For example:\n\n expressions: [\"A\", \"B\", \"C\"]\n\nAny response row whose dimension has it is value as A, B or C, matches\nthis DimensionFilter.", + "Integer comparison filters.\ncase sensitivity is ignored for these and the expression\nis assumed to be a string representing an integer.\nFailure conditions:\n\n- if expression is not a valid int64, the client should expect\n an error.\n- input dimensions that are not valid int64 values will never match the\n filter.\n\nChecks if the dimension is numerically less than the match expression.", + "Checks if the dimension is numerically greater than the match\nexpression.", + "Checks if the dimension is numerically between the minimum and maximum\nof the match expression, boundaries excluded." + ], + "type": "string" + } + }, + "type": "object" + }, + "SegmentFilter": { + "description": "SegmentFilter defines the segment to be either a simple or a sequence\nsegment. A simple segment condition contains dimension and metric conditions\nto select the sessions or users. A sequence segment condition can be used to\nselect users or sessions based on sequential conditions.", + "id": "SegmentFilter", + "properties": { + "not": { + "description": "If true, match the complement of simple or sequence segment.\nFor example, to match all visits not from \"New York\", we can define the\nsegment as follows:\n\n \"sessionSegment\": {\n \"segmentFilters\": [{\n \"simpleSegment\" :{\n \"orFiltersForSegment\": [{\n \"segmentFilterClauses\":[{\n \"dimensionFilter\": {\n \"dimensionName\": \"ga:city\",\n \"expressions\": [\"New York\"]\n }\n }]\n }]\n },\n \"not\": \"True\"\n }]\n },", + "type": "boolean" + }, + "sequenceSegment": { + "$ref": "SequenceSegment", + "description": "Sequence conditions consist of one or more steps, where each step is\ndefined by one or more dimension/metric conditions. Multiple steps can\nbe combined with special sequence operators." + }, + "simpleSegment": { + "$ref": "SimpleSegment", + "description": "A Simple segment conditions consist of one or more dimension/metric\nconditions that can be combined" + } + }, + "type": "object" + }, + "SegmentFilterClause": { + "description": "Filter Clause to be used in a segment definition, can be wither a metric or\na dimension filter.", + "id": "SegmentFilterClause", + "properties": { + "dimensionFilter": { + "$ref": "SegmentDimensionFilter", + "description": "Dimension Filter for the segment definition." + }, + "metricFilter": { + "$ref": "SegmentMetricFilter", + "description": "Metric Filter for the segment definition." + }, + "not": { + "description": "Matches the complement (`!`) of the filter.", + "type": "boolean" + } + }, + "type": "object" + }, + "SegmentMetricFilter": { + "description": "Metric filter to be used in a segment filter clause.", + "id": "SegmentMetricFilter", + "properties": { + "comparisonValue": { + "description": "The value to compare against. If the operator is `BETWEEN`, this value is\ntreated as minimum comparison value.", + "type": "string" + }, + "maxComparisonValue": { + "description": "Max comparison value is only used for `BETWEEN` operator.", + "type": "string" + }, + "metricName": { + "description": "The metric that will be filtered on. A `metricFilter` must contain a\nmetric name.", + "type": "string" + }, + "operator": { + "description": "Specifies is the operation to perform to compare the metric. The default\nis `EQUAL`.", + "enum": [ + "UNSPECIFIED_OPERATOR", + "LESS_THAN", + "GREATER_THAN", + "EQUAL", + "BETWEEN" + ], + "enumDescriptions": [ + "Unspecified operator is treated as `LESS_THAN` operator.", + "Checks if the metric value is less than comparison value.", + "Checks if the metric value is greater than comparison value.", + "Equals operator.", + "For between operator, both the minimum and maximum are exclusive.\nWe will use `LT` and `GT` for comparison." + ], + "type": "string" + }, + "scope": { + "description": "Scope for a metric defines the level at which that metric is defined. The\nspecified metric scope must be equal to or greater than its primary scope\nas defined in the data model. The primary scope is defined by if the\nsegment is selecting users or sessions.", + "enum": [ + "UNSPECIFIED_SCOPE", + "PRODUCT", + "HIT", + "SESSION", + "USER" + ], + "enumDescriptions": [ + "If the scope is unspecified, it defaults to the condition scope,\n`USER` or `SESSION` depending on if the segment is trying to choose\nusers or sessions.", + "Product scope.", + "Hit scope.", + "Session scope.", + "User scope." + ], + "type": "string" + } + }, + "type": "object" + }, + "SegmentSequenceStep": { + "description": "A segment sequence definition.", + "id": "SegmentSequenceStep", + "properties": { + "matchType": { + "description": "Specifies if the step immediately precedes or can be any time before the\nnext step.", + "enum": [ + "UNSPECIFIED_MATCH_TYPE", + "PRECEDES", + "IMMEDIATELY_PRECEDES" + ], + "enumDescriptions": [ + "Unspecified match type is treated as precedes.", + "Operator indicates that the previous step precedes the next step.", + "Operator indicates that the previous step immediately precedes the next\nstep." + ], + "type": "string" + }, + "orFiltersForSegment": { + "description": "A sequence is specified with a list of Or grouped filters which are\ncombined with `AND` operator.", + "items": { + "$ref": "OrFiltersForSegment" + }, + "type": "array" + } + }, + "type": "object" + }, + "SequenceSegment": { + "description": "Sequence conditions consist of one or more steps, where each step is defined\nby one or more dimension/metric conditions. Multiple steps can be combined\nwith special sequence operators.", + "id": "SequenceSegment", + "properties": { + "firstStepShouldMatchFirstHit": { + "description": "If set, first step condition must match the first hit of the visitor (in\nthe date range).", + "type": "boolean" + }, + "segmentSequenceSteps": { + "description": "The list of steps in the sequence.", + "items": { + "$ref": "SegmentSequenceStep" + }, + "type": "array" + } + }, + "type": "object" + }, + "SimpleSegment": { + "description": "A Simple segment conditions consist of one or more dimension/metric\nconditions that can be combined.", + "id": "SimpleSegment", + "properties": { + "orFiltersForSegment": { + "description": "A list of segment filters groups which are combined with logical `AND`\noperator.", + "items": { + "$ref": "OrFiltersForSegment" + }, + "type": "array" + } + }, + "type": "object" + } + }, + "servicePath": "", + "title": "Google Analytics Reporting API", + "version": "v4", + "version_module": true +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/androiddeviceprovisioning/v1/androiddeviceprovisioning-api.json b/vendor/google.golang.org/api/androiddeviceprovisioning/v1/androiddeviceprovisioning-api.json index f80b6fba6..7c0bda59f 100644 --- a/vendor/google.golang.org/api/androiddeviceprovisioning/v1/androiddeviceprovisioning-api.json +++ b/vendor/google.golang.org/api/androiddeviceprovisioning/v1/androiddeviceprovisioning-api.json @@ -1,618 +1,421 @@ { + "basePath": "", + "baseUrl": "https://androiddeviceprovisioning.googleapis.com/", + "batchPath": "batch", + "canonicalName": "Android Provisioning Partner", + "description": "Automates Android zero-touch enrollment for device resellers, customers, and EMMs.", "discoveryVersion": "v1", + "documentationLink": "https://developers.google.com/zero-touch/", + "icons": { + "x16": "http://www.google.com/images/icons/product/search-16.gif", + "x32": "http://www.google.com/images/icons/product/search-32.gif" + }, + "id": "androiddeviceprovisioning:v1", + "kind": "discovery#restDescription", + "name": "androiddeviceprovisioning", + "ownerDomain": "google.com", "ownerName": "Google", - "version_module": true, + "parameters": { + "$.xgafv": { + "description": "V1 error format.", + "enum": [ + "1", + "2" + ], + "enumDescriptions": [ + "v1 error format", + "v2 error format" + ], + "location": "query", + "type": "string" + }, + "access_token": { + "description": "OAuth access token.", + "location": "query", + "type": "string" + }, + "alt": { + "default": "json", + "description": "Data format for response.", + "enum": [ + "json", + "media", + "proto" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json", + "Media download with context-dependent Content-Type", + "Responses with Content-Type of application/x-protobuf" + ], + "location": "query", + "type": "string" + }, + "bearer_token": { + "description": "OAuth bearer token.", + "location": "query", + "type": "string" + }, + "callback": { + "description": "JSONP", + "location": "query", + "type": "string" + }, + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "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.", + "location": "query", + "type": "string" + }, + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "pp": { + "default": "true", + "description": "Pretty-print response.", + "location": "query", + "type": "boolean" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", + "location": "query", + "type": "string" + }, + "uploadType": { + "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", + "location": "query", + "type": "string" + }, + "upload_protocol": { + "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", + "location": "query", + "type": "string" + } + }, + "protocol": "rest", "resources": { "customers": { + "methods": { + "list": { + "description": "Lists the user's customer accounts.", + "flatPath": "v1/customers", + "httpMethod": "GET", + "id": "androiddeviceprovisioning.customers.list", + "parameterOrder": [], + "parameters": { + "pageSize": { + "description": "The maximum number of customers to show in a page of results.\nA number between 1 and 100 (inclusive).", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "A token specifying which result page to return.", + "location": "query", + "type": "string" + } + }, + "path": "v1/customers", + "response": { + "$ref": "CustomerListCustomersResponse" + } + } + }, "resources": { - "devices": { + "configurations": { "methods": { - "unclaim": { - "description": "Unclaims a device from a customer and removes it from zero-touch\nenrollment.\n\nAfter removing a device, a customer must contact their reseller to register\nthe device into zero-touch enrollment again.", - "request": { - "$ref": "CustomerUnclaimDeviceRequest" - }, - "response": { - "$ref": "Empty" - }, + "create": { + "description": "Creates a new configuration. Once created, a customer can apply the\nconfiguration to devices.", + "flatPath": "v1/customers/{customersId}/configurations", + "httpMethod": "POST", + "id": "androiddeviceprovisioning.customers.configurations.create", "parameterOrder": [ "parent" ], - "httpMethod": "POST", "parameters": { "parent": { - "pattern": "^customers/[^/]+$", + "description": "Required. The customer that manages the configuration. An API resource name\nin the format `customers/[CUSTOMER_ID]`.", "location": "path", - "description": "Required. The customer managing the device. An API resource name in the\nformat `customers/[CUSTOMER_ID]`.", + "pattern": "^customers/[^/]+$", "required": true, "type": "string" } }, - "flatPath": "v1/customers/{customersId}/devices:unclaim", - "path": "v1/{+parent}/devices:unclaim", - "id": "androiddeviceprovisioning.customers.devices.unclaim" - }, - "removeConfiguration": { - "response": { - "$ref": "Empty" + "path": "v1/{+parent}/configurations", + "request": { + "$ref": "Configuration" }, + "response": { + "$ref": "Configuration" + } + }, + "delete": { + "description": "Deletes an unused configuration. The API call fails if the customer has\ndevices with the configuration applied.", + "flatPath": "v1/customers/{customersId}/configurations/{configurationsId}", + "httpMethod": "DELETE", + "id": "androiddeviceprovisioning.customers.configurations.delete", "parameterOrder": [ - "parent" + "name" ], - "httpMethod": "POST", "parameters": { - "parent": { + "name": { + "description": "Required. The configuration to delete. An API resource name in the format\n`customers/[CUSTOMER_ID]/configurations/[CONFIGURATION_ID]`. If the\nconfiguration is applied to any devices, the API call fails.", "location": "path", - "description": "Required. The customer managing the device in the format\n`customers/[CUSTOMER_ID]`.", + "pattern": "^customers/[^/]+/configurations/[^/]+$", "required": true, - "type": "string", - "pattern": "^customers/[^/]+$" + "type": "string" } }, - "flatPath": "v1/customers/{customersId}/devices:removeConfiguration", - "path": "v1/{+parent}/devices:removeConfiguration", - "id": "androiddeviceprovisioning.customers.devices.removeConfiguration", - "request": { - "$ref": "CustomerRemoveConfigurationRequest" - }, - "description": "Removes a configuration from device." - }, - "applyConfiguration": { + "path": "v1/{+name}", "response": { "$ref": "Empty" - }, + } + }, + "get": { + "description": "Gets the details of a configuration.", + "flatPath": "v1/customers/{customersId}/configurations/{configurationsId}", + "httpMethod": "GET", + "id": "androiddeviceprovisioning.customers.configurations.get", "parameterOrder": [ - "parent" + "name" ], - "httpMethod": "POST", "parameters": { - "parent": { - "description": "Required. The customer managing the device. An API resource name in the\nformat `customers/[CUSTOMER_ID]`.", + "name": { + "description": "Required. The configuration to get. An API resource name in the format\n`customers/[CUSTOMER_ID]/configurations/[CONFIGURATION_ID]`.", + "location": "path", + "pattern": "^customers/[^/]+/configurations/[^/]+$", "required": true, - "type": "string", - "pattern": "^customers/[^/]+$", - "location": "path" + "type": "string" } }, - "flatPath": "v1/customers/{customersId}/devices:applyConfiguration", - "path": "v1/{+parent}/devices:applyConfiguration", - "id": "androiddeviceprovisioning.customers.devices.applyConfiguration", - "description": "Applies a Configuration to the device to register the device for zero-touch\nenrollment. After applying a configuration to a device, the device\nautomatically provisions itself on first boot, or next factory reset.", - "request": { - "$ref": "CustomerApplyConfigurationRequest" + "path": "v1/{+name}", + "response": { + "$ref": "Configuration" } }, "list": { - "description": "Lists a customer's devices.", + "description": "Lists a customer's configurations.", + "flatPath": "v1/customers/{customersId}/configurations", "httpMethod": "GET", + "id": "androiddeviceprovisioning.customers.configurations.list", "parameterOrder": [ "parent" ], - "response": { - "$ref": "CustomerListDevicesResponse" - }, "parameters": { - "pageToken": { - "description": "A token specifying which result page to return.", - "type": "string", - "location": "query" - }, - "pageSize": { - "description": "The maximum number of devices to show in a page of results.\nMust be between 1 and 100 inclusive.", - "format": "int64", - "type": "string", - "location": "query" - }, "parent": { + "description": "Required. The customer that manages the listed configurations. An API\nresource name in the format `customers/[CUSTOMER_ID]`.", "location": "path", - "description": "Required. The customer managing the devices. An API resource name in the\nformat `customers/[CUSTOMER_ID]`.", + "pattern": "^customers/[^/]+$", "required": true, - "type": "string", - "pattern": "^customers/[^/]+$" + "type": "string" } }, - "flatPath": "v1/customers/{customersId}/devices", - "id": "androiddeviceprovisioning.customers.devices.list", - "path": "v1/{+parent}/devices" + "path": "v1/{+parent}/configurations", + "response": { + "$ref": "CustomerListConfigurationsResponse" + } + }, + "patch": { + "description": "Updates a configuration's field values.", + "flatPath": "v1/customers/{customersId}/configurations/{configurationsId}", + "httpMethod": "PATCH", + "id": "androiddeviceprovisioning.customers.configurations.patch", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Output only. The API resource name in the format\n`customers/[CUSTOMER_ID]/configurations/[CONFIGURATION_ID]`. Assigned by\nthe server.", + "location": "path", + "pattern": "^customers/[^/]+/configurations/[^/]+$", + "required": true, + "type": "string" + }, + "updateMask": { + "description": "Required. The field mask applied to the target `Configuration` before\nupdating the fields. To learn more about using field masks, read\n[FieldMask](/protocol-buffers/docs/reference/google.protobuf#fieldmask) in\nthe Protocol Buffers documentation.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + } + }, + "path": "v1/{+name}", + "request": { + "$ref": "Configuration" + }, + "response": { + "$ref": "Configuration" + } + } + } + }, + "devices": { + "methods": { + "applyConfiguration": { + "description": "Applies a Configuration to the device to register the device for zero-touch\nenrollment. After applying a configuration to a device, the device\nautomatically provisions itself on first boot, or next factory reset.", + "flatPath": "v1/customers/{customersId}/devices:applyConfiguration", + "httpMethod": "POST", + "id": "androiddeviceprovisioning.customers.devices.applyConfiguration", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. The customer managing the device. An API resource name in the\nformat `customers/[CUSTOMER_ID]`.", + "location": "path", + "pattern": "^customers/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+parent}/devices:applyConfiguration", + "request": { + "$ref": "CustomerApplyConfigurationRequest" + }, + "response": { + "$ref": "Empty" + } }, "get": { "description": "Gets the details of a device.", + "flatPath": "v1/customers/{customersId}/devices/{devicesId}", "httpMethod": "GET", - "response": { - "$ref": "Device" - }, + "id": "androiddeviceprovisioning.customers.devices.get", "parameterOrder": [ "name" ], "parameters": { "name": { "description": "Required. The device to get. An API resource name in the format\n`customers/[CUSTOMER_ID]/devices/[DEVICE_ID]`.", - "required": true, - "type": "string", + "location": "path", "pattern": "^customers/[^/]+/devices/[^/]+$", - "location": "path" - } - }, - "flatPath": "v1/customers/{customersId}/devices/{devicesId}", - "id": "androiddeviceprovisioning.customers.devices.get", - "path": "v1/{+name}" - } - } - }, - "configurations": { - "methods": { - "get": { - "path": "v1/{+name}", - "id": "androiddeviceprovisioning.customers.configurations.get", - "description": "Gets the details of a configuration.", - "response": { - "$ref": "Configuration" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "GET", - "parameters": { - "name": { - "description": "Required. The configuration to get. An API resource name in the format\n`customers/[CUSTOMER_ID]/configurations/[CONFIGURATION_ID]`.", "required": true, - "type": "string", - "pattern": "^customers/[^/]+/configurations/[^/]+$", - "location": "path" - } - }, - "flatPath": "v1/customers/{customersId}/configurations/{configurationsId}" - }, - "patch": { - "description": "Updates a configuration's field values.", - "request": { - "$ref": "Configuration" - }, - "response": { - "$ref": "Configuration" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "PATCH", - "parameters": { - "updateMask": { - "location": "query", - "description": "Required. The field mask applied to the target `Configuration` before\nupdating the fields. To learn more about using field masks, read\n[FieldMask](/protocol-buffers/docs/reference/google.protobuf#fieldmask) in\nthe Protocol Buffers documentation.", - "format": "google-fieldmask", "type": "string" - }, - "name": { - "description": "Output only. The API resource name in the format\n`customers/[CUSTOMER_ID]/configurations/[CONFIGURATION_ID]`. Assigned by\nthe server.", - "required": true, - "type": "string", - "pattern": "^customers/[^/]+/configurations/[^/]+$", - "location": "path" } }, - "flatPath": "v1/customers/{customersId}/configurations/{configurationsId}", "path": "v1/{+name}", - "id": "androiddeviceprovisioning.customers.configurations.patch" + "response": { + "$ref": "Device" + } }, "list": { - "description": "Lists a customer's configurations.", - "response": { - "$ref": "CustomerListConfigurationsResponse" - }, - "parameterOrder": [ - "parent" - ], + "description": "Lists a customer's devices.", + "flatPath": "v1/customers/{customersId}/devices", "httpMethod": "GET", - "parameters": { - "parent": { - "description": "Required. The customer that manages the listed configurations. An API\nresource name in the format `customers/[CUSTOMER_ID]`.", - "required": true, - "type": "string", - "pattern": "^customers/[^/]+$", - "location": "path" - } - }, - "flatPath": "v1/customers/{customersId}/configurations", - "path": "v1/{+parent}/configurations", - "id": "androiddeviceprovisioning.customers.configurations.list" - }, - "create": { - "httpMethod": "POST", + "id": "androiddeviceprovisioning.customers.devices.list", "parameterOrder": [ "parent" ], - "response": { - "$ref": "Configuration" - }, "parameters": { + "pageSize": { + "description": "The maximum number of devices to show in a page of results.\nMust be between 1 and 100 inclusive.", + "format": "int64", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "A token specifying which result page to return.", + "location": "query", + "type": "string" + }, "parent": { - "description": "Required. The customer that manages the configuration. An API resource name\nin the format `customers/[CUSTOMER_ID]`.", - "required": true, - "type": "string", + "description": "Required. The customer managing the devices. An API resource name in the\nformat `customers/[CUSTOMER_ID]`.", + "location": "path", "pattern": "^customers/[^/]+$", - "location": "path" + "required": true, + "type": "string" } }, - "flatPath": "v1/customers/{customersId}/configurations", - "id": "androiddeviceprovisioning.customers.configurations.create", - "path": "v1/{+parent}/configurations", - "request": { - "$ref": "Configuration" - }, - "description": "Creates a new configuration. Once created, a customer can apply the\nconfiguration to devices." + "path": "v1/{+parent}/devices", + "response": { + "$ref": "CustomerListDevicesResponse" + } }, - "delete": { - "description": "Deletes an unused configuration. The API call fails if the customer has\ndevices with the configuration applied.", + "removeConfiguration": { + "description": "Removes a configuration from device.", + "flatPath": "v1/customers/{customersId}/devices:removeConfiguration", + "httpMethod": "POST", + "id": "androiddeviceprovisioning.customers.devices.removeConfiguration", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. The customer managing the device in the format\n`customers/[CUSTOMER_ID]`.", + "location": "path", + "pattern": "^customers/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+parent}/devices:removeConfiguration", + "request": { + "$ref": "CustomerRemoveConfigurationRequest" + }, "response": { "$ref": "Empty" - }, + } + }, + "unclaim": { + "description": "Unclaims a device from a customer and removes it from zero-touch\nenrollment.\n\nAfter removing a device, a customer must contact their reseller to register\nthe device into zero-touch enrollment again.", + "flatPath": "v1/customers/{customersId}/devices:unclaim", + "httpMethod": "POST", + "id": "androiddeviceprovisioning.customers.devices.unclaim", "parameterOrder": [ - "name" + "parent" ], - "httpMethod": "DELETE", "parameters": { - "name": { - "description": "Required. The configuration to delete. An API resource name in the format\n`customers/[CUSTOMER_ID]/configurations/[CONFIGURATION_ID]`. If the\nconfiguration is applied to any devices, the API call fails.", + "parent": { + "description": "Required. The customer managing the device. An API resource name in the\nformat `customers/[CUSTOMER_ID]`.", + "location": "path", + "pattern": "^customers/[^/]+$", "required": true, - "type": "string", - "pattern": "^customers/[^/]+/configurations/[^/]+$", - "location": "path" + "type": "string" } }, - "flatPath": "v1/customers/{customersId}/configurations/{configurationsId}", - "path": "v1/{+name}", - "id": "androiddeviceprovisioning.customers.configurations.delete" + "path": "v1/{+parent}/devices:unclaim", + "request": { + "$ref": "CustomerUnclaimDeviceRequest" + }, + "response": { + "$ref": "Empty" + } } } }, "dpcs": { "methods": { "list": { - "path": "v1/{+parent}/dpcs", - "id": "androiddeviceprovisioning.customers.dpcs.list", "description": "Lists the DPCs (device policy controllers) that support zero-touch\nenrollment.", - "response": { - "$ref": "CustomerListDpcsResponse" - }, + "flatPath": "v1/customers/{customersId}/dpcs", + "httpMethod": "GET", + "id": "androiddeviceprovisioning.customers.dpcs.list", "parameterOrder": [ "parent" ], - "httpMethod": "GET", "parameters": { "parent": { "description": "Required. The customer that can use the DPCs in configurations. An API\nresource name in the format `customers/[CUSTOMER_ID]`.", - "required": true, - "type": "string", + "location": "path", "pattern": "^customers/[^/]+$", - "location": "path" - } - }, - "flatPath": "v1/customers/{customersId}/dpcs" - } - } - } - }, - "methods": { - "list": { - "response": { - "$ref": "CustomerListCustomersResponse" - }, - "parameterOrder": [], - "httpMethod": "GET", - "parameters": { - "pageToken": { - "description": "The next_page_token value returned from a previous List request, if any.", - "type": "string", - "location": "query" - }, - "pageSize": { - "description": "The maximum number of items to return.", - "format": "int32", - "type": "integer", - "location": "query" - } - }, - "flatPath": "v1/customers", - "path": "v1/customers", - "id": "androiddeviceprovisioning.customers.list", - "description": "List the user's customer accounts." - } - } - }, - "partners": { - "resources": { - "devices": { - "methods": { - "claimAsync": { - "httpMethod": "POST", - "parameterOrder": [ - "partnerId" - ], - "response": { - "$ref": "Operation" - }, - "parameters": { - "partnerId": { - "description": "Partner ID.", - "pattern": "^[^/]+$", - "format": "int64", - "required": true, - "type": "string", - "location": "path" - } - }, - "flatPath": "v1/partners/{partnersId}/devices:claimAsync", - "id": "androiddeviceprovisioning.partners.devices.claimAsync", - "path": "v1/partners/{+partnerId}/devices:claimAsync", - "request": { - "$ref": "ClaimDevicesRequest" - }, - "description": "Claim devices asynchronously." - }, - "findByIdentifier": { - "flatPath": "v1/partners/{partnersId}/devices:findByIdentifier", - "id": "androiddeviceprovisioning.partners.devices.findByIdentifier", - "path": "v1/partners/{+partnerId}/devices:findByIdentifier", - "request": { - "$ref": "FindDevicesByDeviceIdentifierRequest" - }, - "description": "Find devices by device identifier.", - "httpMethod": "POST", - "parameterOrder": [ - "partnerId" - ], - "response": { - "$ref": "FindDevicesByDeviceIdentifierResponse" - }, - "parameters": { - "partnerId": { - "location": "path", - "description": "ID of the partner.", - "pattern": "^[^/]+$", - "format": "int64", "required": true, "type": "string" } + }, + "path": "v1/{+parent}/dpcs", + "response": { + "$ref": "CustomerListDpcsResponse" } - }, - "unclaimAsync": { - "request": { - "$ref": "UnclaimDevicesRequest" - }, - "description": "Unclaim devices asynchronously.", - "httpMethod": "POST", - "parameterOrder": [ - "partnerId" - ], - "response": { - "$ref": "Operation" - }, - "parameters": { - "partnerId": { - "location": "path", - "description": "Partner ID.", - "pattern": "^[^/]+$", - "format": "int64", - "required": true, - "type": "string" - } - }, - "flatPath": "v1/partners/{partnersId}/devices:unclaimAsync", - "id": "androiddeviceprovisioning.partners.devices.unclaimAsync", - "path": "v1/partners/{+partnerId}/devices:unclaimAsync" - }, - "metadata": { - "request": { - "$ref": "UpdateDeviceMetadataRequest" - }, - "description": "Update the metadata.", - "response": { - "$ref": "DeviceMetadata" - }, - "parameterOrder": [ - "metadataOwnerId", - "deviceId" - ], - "httpMethod": "POST", - "parameters": { - "metadataOwnerId": { - "format": "int64", - "required": true, - "type": "string", - "location": "path", - "description": "The owner of the newly set metadata. Set this to the partner ID.", - "pattern": "^[^/]+$" - }, - "deviceId": { - "description": "ID of the partner.", - "pattern": "^[^/]+$", - "format": "int64", - "required": true, - "type": "string", - "location": "path" - } - }, - "flatPath": "v1/partners/{partnersId}/devices/{devicesId}/metadata", - "path": "v1/partners/{+metadataOwnerId}/devices/{+deviceId}/metadata", - "id": "androiddeviceprovisioning.partners.devices.metadata" - }, - "updateMetadataAsync": { - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "partnerId" - ], - "httpMethod": "POST", - "parameters": { - "partnerId": { - "description": "Partner ID.", - "pattern": "^[^/]+$", - "format": "int64", - "type": "string", - "required": true, - "location": "path" - } - }, - "flatPath": "v1/partners/{partnersId}/devices:updateMetadataAsync", - "path": "v1/partners/{+partnerId}/devices:updateMetadataAsync", - "id": "androiddeviceprovisioning.partners.devices.updateMetadataAsync", - "request": { - "$ref": "UpdateDeviceMetadataInBatchRequest" - }, - "description": "Set metadata in batch asynchronously." - }, - "get": { - "response": { - "$ref": "Device" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "GET", - "parameters": { - "name": { - "pattern": "^partners/[^/]+/devices/[^/]+$", - "location": "path", - "description": "Resource name in `partners/[PARTNER_ID]/devices/[DEVICE_ID]`.", - "required": true, - "type": "string" - } - }, - "flatPath": "v1/partners/{partnersId}/devices/{devicesId}", - "path": "v1/{+name}", - "id": "androiddeviceprovisioning.partners.devices.get", - "description": "Get a device." - }, - "unclaim": { - "request": { - "$ref": "UnclaimDeviceRequest" - }, - "description": "Unclaim the device identified by the `device_id` or the `deviceIdentifier`.", - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "partnerId" - ], - "httpMethod": "POST", - "parameters": { - "partnerId": { - "pattern": "^[^/]+$", - "format": "int64", - "type": "string", - "required": true, - "location": "path", - "description": "ID of the partner." - } - }, - "flatPath": "v1/partners/{partnersId}/devices:unclaim", - "path": "v1/partners/{+partnerId}/devices:unclaim", - "id": "androiddeviceprovisioning.partners.devices.unclaim" - }, - "findByOwner": { - "request": { - "$ref": "FindDevicesByOwnerRequest" - }, - "description": "Find devices by ownership.", - "response": { - "$ref": "FindDevicesByOwnerResponse" - }, - "parameterOrder": [ - "partnerId" - ], - "httpMethod": "POST", - "parameters": { - "partnerId": { - "description": "ID of the partner.", - "pattern": "^[^/]+$", - "format": "int64", - "required": true, - "type": "string", - "location": "path" - } - }, - "flatPath": "v1/partners/{partnersId}/devices:findByOwner", - "path": "v1/partners/{+partnerId}/devices:findByOwner", - "id": "androiddeviceprovisioning.partners.devices.findByOwner" - }, - "claim": { - "response": { - "$ref": "ClaimDeviceResponse" - }, - "parameterOrder": [ - "partnerId" - ], - "httpMethod": "POST", - "parameters": { - "partnerId": { - "description": "ID of the partner.", - "pattern": "^[^/]+$", - "format": "int64", - "required": true, - "type": "string", - "location": "path" - } - }, - "flatPath": "v1/partners/{partnersId}/devices:claim", - "path": "v1/partners/{+partnerId}/devices:claim", - "id": "androiddeviceprovisioning.partners.devices.claim", - "request": { - "$ref": "ClaimDeviceRequest" - }, - "description": "Claim the device identified by device identifier." - } - } - }, - "customers": { - "methods": { - "create": { - "request": { - "$ref": "CreateCustomerRequest" - }, - "description": "Creates a customer for zero-touch enrollment. After the method returns\nsuccessfully, admin and owner roles can manage devices and EMM configs\nby calling API methods or using their zero-touch enrollment portal. The API\ndoesn't notify the customer that they have access.", - "httpMethod": "POST", - "parameterOrder": [ - "parent" - ], - "response": { - "$ref": "Company" - }, - "parameters": { - "parent": { - "description": "Required. The parent resource ID in the format `partners/[PARTNER_ID]` that\nidentifies the reseller.", - "required": true, - "type": "string", - "pattern": "^partners/[^/]+$", - "location": "path" - } - }, - "flatPath": "v1/partners/{partnersId}/customers", - "id": "androiddeviceprovisioning.partners.customers.create", - "path": "v1/{+parent}/customers" - }, - "list": { - "description": "Lists the customers that are enrolled to the reseller identified by the\n`partnerId` argument. This list includes customers that the reseller\ncreated and customers that enrolled themselves using the portal.", - "response": { - "$ref": "ListCustomersResponse" - }, - "parameterOrder": [ - "partnerId" - ], - "httpMethod": "GET", - "parameters": { - "partnerId": { - "pattern": "^[^/]+$", - "format": "int64", - "required": true, - "type": "string", - "location": "path", - "description": "The ID of the partner." - } - }, - "flatPath": "v1/partners/{partnersId}/customers", - "path": "v1/partners/{+partnerId}/customers", - "id": "androiddeviceprovisioning.partners.customers.list" } } } @@ -621,312 +424,886 @@ "operations": { "methods": { "get": { - "response": { - "$ref": "Operation" - }, + "description": "Gets the latest state of a long-running operation. Clients can use this\nmethod to poll the operation result at intervals as recommended by the API\nservice.", + "flatPath": "v1/operations/{operationsId}", + "httpMethod": "GET", + "id": "androiddeviceprovisioning.operations.get", "parameterOrder": [ "name" ], - "httpMethod": "GET", "parameters": { "name": { "description": "The name of the operation resource.", - "required": true, - "type": "string", + "location": "path", "pattern": "^operations/.+$", - "location": "path" + "required": true, + "type": "string" } }, - "flatPath": "v1/operations/{operationsId}", "path": "v1/{+name}", - "id": "androiddeviceprovisioning.operations.get", - "description": "Gets the latest state of a long-running operation. Clients can use this\nmethod to poll the operation result at intervals as recommended by the API\nservice." + "response": { + "$ref": "Operation" + } + } + } + }, + "partners": { + "resources": { + "customers": { + "methods": { + "create": { + "description": "Creates a customer for zero-touch enrollment. After the method returns\nsuccessfully, admin and owner roles can manage devices and EMM configs\nby calling API methods or using their zero-touch enrollment portal. The API\ndoesn't notify the customer that they have access.", + "flatPath": "v1/partners/{partnersId}/customers", + "httpMethod": "POST", + "id": "androiddeviceprovisioning.partners.customers.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. The parent resource ID in the format `partners/[PARTNER_ID]` that\nidentifies the reseller.", + "location": "path", + "pattern": "^partners/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+parent}/customers", + "request": { + "$ref": "CreateCustomerRequest" + }, + "response": { + "$ref": "Company" + } + }, + "list": { + "description": "Lists the customers that are enrolled to the reseller identified by the\n`partnerId` argument. This list includes customers that the reseller\ncreated and customers that enrolled themselves using the portal.", + "flatPath": "v1/partners/{partnersId}/customers", + "httpMethod": "GET", + "id": "androiddeviceprovisioning.partners.customers.list", + "parameterOrder": [ + "partnerId" + ], + "parameters": { + "partnerId": { + "description": "Required. The ID of the reseller partner.", + "format": "int64", + "location": "path", + "pattern": "^[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/partners/{+partnerId}/customers", + "response": { + "$ref": "ListCustomersResponse" + } + } + } + }, + "devices": { + "methods": { + "claim": { + "description": "Claims a device for a customer and adds it to zero-touch enrollment. If the\ndevice is already claimed by another customer, the call returns an error.", + "flatPath": "v1/partners/{partnersId}/devices:claim", + "httpMethod": "POST", + "id": "androiddeviceprovisioning.partners.devices.claim", + "parameterOrder": [ + "partnerId" + ], + "parameters": { + "partnerId": { + "description": "Required. The ID of the reseller partner.", + "format": "int64", + "location": "path", + "pattern": "^[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/partners/{+partnerId}/devices:claim", + "request": { + "$ref": "ClaimDeviceRequest" + }, + "response": { + "$ref": "ClaimDeviceResponse" + } + }, + "claimAsync": { + "description": "Claims a batch of devices for a customer asynchronously. Adds the devices\nto zero-touch enrollment. To learn more, read [Long‑running batch\noperations](/zero-touch/guides/how-it-works#operations).", + "flatPath": "v1/partners/{partnersId}/devices:claimAsync", + "httpMethod": "POST", + "id": "androiddeviceprovisioning.partners.devices.claimAsync", + "parameterOrder": [ + "partnerId" + ], + "parameters": { + "partnerId": { + "description": "Required. The ID of the reseller partner.", + "format": "int64", + "location": "path", + "pattern": "^[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/partners/{+partnerId}/devices:claimAsync", + "request": { + "$ref": "ClaimDevicesRequest" + }, + "response": { + "$ref": "Operation" + } + }, + "findByIdentifier": { + "description": "Finds devices by hardware identifiers, such as IMEI.", + "flatPath": "v1/partners/{partnersId}/devices:findByIdentifier", + "httpMethod": "POST", + "id": "androiddeviceprovisioning.partners.devices.findByIdentifier", + "parameterOrder": [ + "partnerId" + ], + "parameters": { + "partnerId": { + "description": "Required. The ID of the reseller partner.", + "format": "int64", + "location": "path", + "pattern": "^[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/partners/{+partnerId}/devices:findByIdentifier", + "request": { + "$ref": "FindDevicesByDeviceIdentifierRequest" + }, + "response": { + "$ref": "FindDevicesByDeviceIdentifierResponse" + } + }, + "findByOwner": { + "description": "Finds devices claimed for customers. The results only contain devices\nregistered to the reseller that's identified by the `partnerId` argument.\nThe customer's devices purchased from other resellers don't appear in the\nresults.", + "flatPath": "v1/partners/{partnersId}/devices:findByOwner", + "httpMethod": "POST", + "id": "androiddeviceprovisioning.partners.devices.findByOwner", + "parameterOrder": [ + "partnerId" + ], + "parameters": { + "partnerId": { + "description": "Required. The ID of the reseller partner.", + "format": "int64", + "location": "path", + "pattern": "^[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/partners/{+partnerId}/devices:findByOwner", + "request": { + "$ref": "FindDevicesByOwnerRequest" + }, + "response": { + "$ref": "FindDevicesByOwnerResponse" + } + }, + "get": { + "description": "Gets a device.", + "flatPath": "v1/partners/{partnersId}/devices/{devicesId}", + "httpMethod": "GET", + "id": "androiddeviceprovisioning.partners.devices.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The device API resource name in the format\n`partners/[PARTNER_ID]/devices/[DEVICE_ID]`.", + "location": "path", + "pattern": "^partners/[^/]+/devices/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "Device" + } + }, + "metadata": { + "description": "Updates reseller metadata associated with the device.", + "flatPath": "v1/partners/{partnersId}/devices/{devicesId}/metadata", + "httpMethod": "POST", + "id": "androiddeviceprovisioning.partners.devices.metadata", + "parameterOrder": [ + "metadataOwnerId", + "deviceId" + ], + "parameters": { + "deviceId": { + "description": "Required. The ID of the reseller partner.", + "format": "int64", + "location": "path", + "pattern": "^[^/]+$", + "required": true, + "type": "string" + }, + "metadataOwnerId": { + "description": "Required. The owner of the newly set metadata. Set this to the partner ID.", + "format": "int64", + "location": "path", + "pattern": "^[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/partners/{+metadataOwnerId}/devices/{+deviceId}/metadata", + "request": { + "$ref": "UpdateDeviceMetadataRequest" + }, + "response": { + "$ref": "DeviceMetadata" + } + }, + "unclaim": { + "description": "Unclaims a device from a customer and removes it from zero-touch\nenrollment.", + "flatPath": "v1/partners/{partnersId}/devices:unclaim", + "httpMethod": "POST", + "id": "androiddeviceprovisioning.partners.devices.unclaim", + "parameterOrder": [ + "partnerId" + ], + "parameters": { + "partnerId": { + "description": "Required. The ID of the reseller partner.", + "format": "int64", + "location": "path", + "pattern": "^[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/partners/{+partnerId}/devices:unclaim", + "request": { + "$ref": "UnclaimDeviceRequest" + }, + "response": { + "$ref": "Empty" + } + }, + "unclaimAsync": { + "description": "Unclaims a batch of devices for a customer asynchronously. Removes the\ndevices from zero-touch enrollment. To learn more, read [Long‑running batch\noperations](/zero-touch/guides/how-it-works#operations).", + "flatPath": "v1/partners/{partnersId}/devices:unclaimAsync", + "httpMethod": "POST", + "id": "androiddeviceprovisioning.partners.devices.unclaimAsync", + "parameterOrder": [ + "partnerId" + ], + "parameters": { + "partnerId": { + "description": "Required. The reseller partner ID.", + "format": "int64", + "location": "path", + "pattern": "^[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/partners/{+partnerId}/devices:unclaimAsync", + "request": { + "$ref": "UnclaimDevicesRequest" + }, + "response": { + "$ref": "Operation" + } + }, + "updateMetadataAsync": { + "description": "Updates the reseller metadata attached to a batch of devices. This method\nupdates devices asynchronously and returns an `Operation` that can be used\nto track progress. Read [Long‑running batch\noperations](/zero-touch/guides/how-it-works#operations).", + "flatPath": "v1/partners/{partnersId}/devices:updateMetadataAsync", + "httpMethod": "POST", + "id": "androiddeviceprovisioning.partners.devices.updateMetadataAsync", + "parameterOrder": [ + "partnerId" + ], + "parameters": { + "partnerId": { + "description": "Required. The reseller partner ID.", + "format": "int64", + "location": "path", + "pattern": "^[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/partners/{+partnerId}/devices:updateMetadataAsync", + "request": { + "$ref": "UpdateDeviceMetadataInBatchRequest" + }, + "response": { + "$ref": "Operation" + } + } + } } } } }, - "parameters": { - "oauth_token": { - "description": "OAuth 2.0 token for the current user.", - "type": "string", - "location": "query" - }, - "bearer_token": { - "description": "OAuth bearer token.", - "type": "string", - "location": "query" - }, - "upload_protocol": { - "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", - "type": "string", - "location": "query" - }, - "prettyPrint": { - "description": "Returns response with indentations and line breaks.", - "type": "boolean", - "default": "true", - "location": "query" - }, - "fields": { - "description": "Selector specifying which fields to include in a partial response.", - "type": "string", - "location": "query" - }, - "uploadType": { - "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", - "type": "string", - "location": "query" - }, - "$.xgafv": { - "enum": [ - "1", - "2" - ], - "description": "V1 error format.", - "type": "string", - "enumDescriptions": [ - "v1 error format", - "v2 error format" - ], - "location": "query" - }, - "callback": { - "description": "JSONP", - "type": "string", - "location": "query" - }, - "alt": { - "enumDescriptions": [ - "Responses with Content-Type of application/json", - "Media download with context-dependent Content-Type", - "Responses with Content-Type of application/x-protobuf" - ], - "location": "query", - "description": "Data format for response.", - "default": "json", - "enum": [ - "json", - "media", - "proto" - ], - "type": "string" - }, - "access_token": { - "location": "query", - "description": "OAuth access token.", - "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.", - "type": "string", - "location": "query" - }, - "quotaUser": { - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", - "type": "string", - "location": "query" - }, - "pp": { - "location": "query", - "description": "Pretty-print response.", - "type": "boolean", - "default": "true" - } - }, + "revision": "20180317", + "rootUrl": "https://androiddeviceprovisioning.googleapis.com/", "schemas": { - "CustomerListDevicesResponse": { - "description": "Response message of customer's liting devices.", - "type": "object", + "ClaimDeviceRequest": { + "description": "Request message to claim a device on behalf of a customer.", + "id": "ClaimDeviceRequest", "properties": { - "devices": { - "description": "The customer's devices.", - "type": "array", + "customerId": { + "description": "Required. The ID of the customer for whom the device is being claimed.", + "format": "int64", + "type": "string" + }, + "deviceIdentifier": { + "$ref": "DeviceIdentifier", + "description": "Required. The device identifier of the device to claim." + }, + "sectionType": { + "description": "Required. The section type of the device's provisioning record.", + "enum": [ + "SECTION_TYPE_UNSPECIFIED", + "SECTION_TYPE_ZERO_TOUCH" + ], + "enumDescriptions": [ + "Unspecified section type.", + "Zero-touch enrollment section type." + ], + "type": "string" + } + }, + "type": "object" + }, + "ClaimDeviceResponse": { + "description": "Response message containing device id of the claim.", + "id": "ClaimDeviceResponse", + "properties": { + "deviceId": { + "description": "The device ID of the claimed device.", + "format": "int64", + "type": "string" + }, + "deviceName": { + "description": "The resource name of the device in the format\n`partners/[PARTNER_ID]/devices/[DEVICE_ID]`.", + "type": "string" + } + }, + "type": "object" + }, + "ClaimDevicesRequest": { + "description": "Request to claim devices asynchronously in batch. Claiming a device adds the\ndevice to zero-touch enrollment and shows the device in the customer's view\nof the portal.", + "id": "ClaimDevicesRequest", + "properties": { + "claims": { + "description": "Required. A list of device claims.", "items": { - "$ref": "Device" - } + "$ref": "PartnerClaim" + }, + "type": "array" + } + }, + "type": "object" + }, + "Company": { + "description": "A customer resource in the zero-touch enrollment API.", + "id": "Company", + "properties": { + "adminEmails": { + "description": "Input only. Optional. Email address of customer's users in the admin role.\nEach email address must be associated with a Google Account.", + "items": { + "type": "string" + }, + "type": "array" + }, + "companyId": { + "description": "Output only. The ID of the company. Assigned by the server.", + "format": "int64", + "type": "string" + }, + "companyName": { + "description": "Required. The name of the company. For example _XYZ Corp_. Characters\nallowed are: Latin letters, numerals, hyphens, and spaces. Displayed to the\ncustomer's employees in the zero-touch enrollment portal.", + "type": "string" + }, + "name": { + "description": "Output only. The API resource name of the company in the format\n`partners/[PARTNER_ID]/customers/[CUSTOMER_ID]`. Assigned by the server.", + "type": "string" + }, + "ownerEmails": { + "description": "Input only. Email address of customer's users in the owner role. At least\none `owner_email` is required. Each email address must be associated with a\nGoogle Account. Owners share the same access as admins but can also add,\ndelete, and edit your organization's portal users.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "Configuration": { + "description": "A configuration collects the provisioning options for Android devices. Each\nconfiguration combines the following:\n\n* The EMM device policy controller (DPC) installed on the devices.\n* EMM policies enforced on the devices.\n* Metadata displayed on the device to help users during setup.\n\nCustomers can add as many configurations as they need. However, zero-touch\nenrollment works best when a customer sets a default configuration that's\napplied to any new devices the organization purchases.", + "id": "Configuration", + "properties": { + "companyName": { + "description": "Required. The name of the organization. Zero-touch enrollment shows this\norganization name to device users during device provisioning.", + "type": "string" + }, + "configurationId": { + "description": "Output only. The ID of the configuration. Assigned by the server.", + "format": "int64", + "type": "string" + }, + "configurationName": { + "description": "Required. A short name that describes the configuration's purpose. For\nexample, _Sales team_ or _Temporary employees_. The zero-touch enrollment\nportal displays this name to IT admins.", + "type": "string" + }, + "contactEmail": { + "description": "Required. The email address that device users can contact to get help.\nZero-touch enrollment shows this email address to device users before\ndevice provisioning. The value is validated on input.", + "type": "string" + }, + "contactPhone": { + "description": "Required. The telephone number that device users can call, using another\ndevice, to get help. Zero-touch enrollment shows this number to device\nusers before device provisioning. Accepts numerals, spaces, the plus sign,\nhyphens, and parentheses.", + "type": "string" + }, + "customMessage": { + "description": "A message, containing one or two sentences, to help device users get help\nor give them more details about what’s happening to their device.\nZero-touch enrollment shows this message before the device is provisioned.", + "type": "string" + }, + "dpcExtras": { + "description": "The JSON-formatted EMM provisioning extras that are passed to the DPC.", + "type": "string" + }, + "dpcResourcePath": { + "description": "Required. The resource name of the selected DPC (device policy controller)\nin the format `customers/[CUSTOMER_ID]/dpcs/*`. To list the supported DPCs,\ncall\n`customers.dpcs.list`.", + "type": "string" + }, + "isDefault": { + "description": "Required. Whether this is the default configuration that zero-touch\nenrollment applies to any new devices the organization purchases in the\nfuture. Only one customer configuration can be the default. Setting this\nvalue to `true`, changes the previous default configuration's `isDefault`\nvalue to `false`.", + "type": "boolean" + }, + "name": { + "description": "Output only. The API resource name in the format\n`customers/[CUSTOMER_ID]/configurations/[CONFIGURATION_ID]`. Assigned by\nthe server.", + "type": "string" + } + }, + "type": "object" + }, + "CreateCustomerRequest": { + "description": "Request message to create a customer.", + "id": "CreateCustomerRequest", + "properties": { + "customer": { + "$ref": "Company", + "description": "Required. The company data to populate the new customer. Must contain a\nvalue for `companyName` and at least one `owner_email` that's associated\nwith a Google Account. The values for `companyId` and `name` must be empty." + } + }, + "type": "object" + }, + "CustomerApplyConfigurationRequest": { + "description": "Request message for customer to assign a configuration to device.", + "id": "CustomerApplyConfigurationRequest", + "properties": { + "configuration": { + "description": "Required. The configuration applied to the device in the format\n`customers/[CUSTOMER_ID]/configurations/[CONFIGURATION_ID]`.", + "type": "string" + }, + "device": { + "$ref": "DeviceReference", + "description": "Required. The device the configuration is applied to." + } + }, + "type": "object" + }, + "CustomerListConfigurationsResponse": { + "description": "Response message of customer's listing configuration.", + "id": "CustomerListConfigurationsResponse", + "properties": { + "configurations": { + "description": "The configurations.", + "items": { + "$ref": "Configuration" + }, + "type": "array" + } + }, + "type": "object" + }, + "CustomerListCustomersResponse": { + "description": "Response message for listing my customers.", + "id": "CustomerListCustomersResponse", + "properties": { + "customers": { + "description": "The customer accounts the calling user is a member of.", + "items": { + "$ref": "Company" + }, + "type": "array" }, "nextPageToken": { "description": "A token used to access the next page of results. Omitted if no further\nresults are available.", "type": "string" } }, - "id": "CustomerListDevicesResponse" + "type": "object" }, - "DevicesLongRunningOperationResponse": { - "description": "Long running operation response.", - "type": "object", + "CustomerListDevicesResponse": { + "description": "Response message of customer's liting devices.", + "id": "CustomerListDevicesResponse", "properties": { - "successCount": { - "description": "Number of succeesfully processed ones.", - "format": "int32", - "type": "integer" - }, - "perDeviceStatus": { - "description": "Processing status for each device.\nOne `PerDeviceStatus` per device. The order is the same as in your requests.", - "type": "array", + "devices": { + "description": "The customer's devices.", "items": { - "$ref": "OperationPerDevice" - } + "$ref": "Device" + }, + "type": "array" + }, + "nextPageToken": { + "description": "A token used to access the next page of results. Omitted if no further\nresults are available.", + "type": "string" } }, - "id": "DevicesLongRunningOperationResponse" + "type": "object" }, - "DeviceClaim": { + "CustomerListDpcsResponse": { + "description": "Response message of customer's listing DPCs.", + "id": "CustomerListDpcsResponse", "properties": { - "sectionType": { - "enumDescriptions": [ - "Unspecified section type.", - "Zero-touch enrollment section type." - ], - "enum": [ - "SECTION_TYPE_UNSPECIFIED", - "SECTION_TYPE_ZERO_TOUCH" - ], - "description": "Output only. The type of claim made on the device.", + "dpcs": { + "description": "The list of DPCs available to the customer that support zero-touch\nenrollment.", + "items": { + "$ref": "Dpc" + }, + "type": "array" + } + }, + "type": "object" + }, + "CustomerRemoveConfigurationRequest": { + "description": "Request message for customer to remove the configuration from device.", + "id": "CustomerRemoveConfigurationRequest", + "properties": { + "device": { + "$ref": "DeviceReference", + "description": "Required. The device to remove the configuration from." + } + }, + "type": "object" + }, + "CustomerUnclaimDeviceRequest": { + "description": "Request message for customer to unclaim a device.", + "id": "CustomerUnclaimDeviceRequest", + "properties": { + "device": { + "$ref": "DeviceReference", + "description": "Required. The device to unclaim." + } + }, + "type": "object" + }, + "Device": { + "description": "An Android device registered for zero-touch enrollment.", + "id": "Device", + "properties": { + "claims": { + "description": "Output only. The provisioning claims for a device. Devices claimed for\nzero-touch enrollment have a claim with the type `SECTION_TYPE_ZERO_TOUCH`.\nCall\n`partners.devices.unclaim`\nor\n`partners.devices.unclaimAsync`\nto remove the device from zero-touch enrollment.", + "items": { + "$ref": "DeviceClaim" + }, + "type": "array" + }, + "configuration": { + "description": "Not available to resellers.", "type": "string" }, + "deviceId": { + "description": "Output only. The ID of the device. Assigned by the server.", + "format": "int64", + "type": "string" + }, + "deviceIdentifier": { + "$ref": "DeviceIdentifier", + "description": "The hardware IDs that identify a manufactured device. To learn more, read\n[Identifiers](/zero-touch/guides/identifiers)." + }, + "deviceMetadata": { + "$ref": "DeviceMetadata", + "description": "The metadata attached to the device. Structured as key-value pairs. To\nlearn more, read [Device metadata](/zero-touch/guides/metadata)." + }, + "name": { + "description": "Output only. The API resource name in the format\n`partners/[PARTNER_ID]/devices/[DEVICE_ID]`. Assigned by the server.", + "type": "string" + } + }, + "type": "object" + }, + "DeviceClaim": { + "description": "A record of a device claimed by a reseller for a customer. Devices claimed\nfor zero-touch enrollment have a claim with the type\n`SECTION_TYPE_ZERO_TOUCH`. To learn more, read\n[Claim devices for customers](/zero-touch/guides/how-it-works#claim).", + "id": "DeviceClaim", + "properties": { "ownerCompanyId": { "description": "The ID of the Customer that purchased the device.", "format": "int64", "type": "string" - } - }, - "id": "DeviceClaim", - "description": "A record of a device claimed by a reseller for a customer. Devices claimed\nfor zero-touch enrollment have a claim with the type\n`SECTION_TYPE_ZERO_TOUCH`. To learn more, read\n[Claim devices for customers](/zero-touch/guides/how-it-works#claim).", - "type": "object" - }, - "PerDeviceStatusInBatch": { - "properties": { - "status": { - "enumDescriptions": [ - "Invalid code. Shouldn't be used.", - "Unknown error.\nWe don't expect this error to occur here.", - "Other error.\nWe know/expect this error, but there's no defined error code for the\nerror.", - "Success.", - "Permission denied.", - "Invalid device identifier.", - "Invalid section type.", - "This section is claimed by another company." - ], - "enum": [ - "SINGLE_DEVICE_STATUS_UNSPECIFIED", - "SINGLE_DEVICE_STATUS_UNKNOWN_ERROR", - "SINGLE_DEVICE_STATUS_OTHER_ERROR", - "SINGLE_DEVICE_STATUS_SUCCESS", - "SINGLE_DEVICE_STATUS_PERMISSION_DENIED", - "SINGLE_DEVICE_STATUS_INVALID_DEVICE_IDENTIFIER", - "SINGLE_DEVICE_STATUS_INVALID_SECTION_TYPE", - "SINGLE_DEVICE_STATUS_SECTION_NOT_YOURS" - ], - "description": "Process result.", - "type": "string" - }, - "errorIdentifier": { - "description": "Error identifier.", - "type": "string" - }, - "errorMessage": { - "description": "Error message.", - "type": "string" - }, - "deviceId": { - "description": "Device ID of the device if process succeeds.", - "format": "int64", - "type": "string" - } - }, - "id": "PerDeviceStatusInBatch", - "description": "Stores the processing result for each device.", - "type": "object" - }, - "FindDevicesByOwnerRequest": { - "properties": { - "limit": { - "description": "The number of devices to show in the result.", - "format": "int64", - "type": "string" - }, - "pageToken": { - "description": "Page token.", - "type": "string" }, "sectionType": { - "enumDescriptions": [ - "Unspecified section type.", - "Zero-touch enrollment section type." - ], + "description": "Output only. The type of claim made on the device.", "enum": [ "SECTION_TYPE_UNSPECIFIED", "SECTION_TYPE_ZERO_TOUCH" ], - "description": "The section type.", + "enumDescriptions": [ + "Unspecified section type.", + "Zero-touch enrollment section type." + ], "type": "string" - }, - "customerId": { - "description": "List of customer IDs to search for.", - "type": "array", - "items": { - "format": "int64", - "type": "string" - } } }, - "id": "FindDevicesByOwnerRequest", - "description": "Request to find devices by customers.", - "type": "object" - }, - "ClaimDevicesRequest": { - "properties": { - "claims": { - "description": "List of claims.", - "type": "array", - "items": { - "$ref": "PartnerClaim" - } - } - }, - "id": "ClaimDevicesRequest", - "description": "Request to claim devices asynchronously in batch.", "type": "object" }, "DeviceIdentifier": { "description": "Encapsulates hardware and product IDs to identify a manufactured device. To\nlearn more, read [Identifiers](/zero-touch/guides/identifiers).", - "type": "object", + "id": "DeviceIdentifier", "properties": { - "serialNumber": { - "description": "The manufacturer's serial number for the device. This value might not be\nunique.", - "type": "string" - }, "imei": { "description": "The device’s IMEI number. Validated on input.", "type": "string" }, + "manufacturer": { + "description": "Required. The device manufacturer’s name. Matches the device's built-in\nvalue returned from `android.os.Build.MANUFACTURER`. Allowed values are\nlisted in [manufacturer names](/zero-touch/resources/manufacturer-names).", + "type": "string" + }, "meid": { "description": "The device’s MEID number.", "type": "string" }, - "manufacturer": { - "description": "Required. The device manufacturer’s name. Matches the device's built-in\nvalue returned from `android.os.Build.MANUFACTURER`. Allowed values are\nlisted in [manufacturer names](/zero-touch/resources/manufacturer-names).", + "serialNumber": { + "description": "The manufacturer's serial number for the device. This value might not be\nunique.", "type": "string" } }, - "id": "DeviceIdentifier" + "type": "object" + }, + "DeviceMetadata": { + "description": "Metadata entries that can be attached to a `Device`. To learn more, read\n[Device metadata](/zero-touch/guides/metadata).", + "id": "DeviceMetadata", + "properties": { + "entries": { + "additionalProperties": { + "type": "string" + }, + "description": "Metadata entries recorded as key-value pairs.", + "type": "object" + } + }, + "type": "object" + }, + "DeviceReference": { + "description": "A `DeviceReference` is an API abstraction that lets you supply a _device_\nargument to a method using one of the following identifier types:\n\n* A numeric API resource ID.\n* Real-world hardware IDs, such as IMEI number, belonging to the manufactured\n device.\n\nMethods that operate on devices take a `DeviceReference` as a parameter type\nbecause it's more flexible for the caller. To learn more about device\nidentifiers, read [Identifiers](/zero-touch/guides/identifiers).", + "id": "DeviceReference", + "properties": { + "deviceId": { + "description": "The ID of the device.", + "format": "int64", + "type": "string" + }, + "deviceIdentifier": { + "$ref": "DeviceIdentifier", + "description": "The hardware IDs of the device." + } + }, + "type": "object" + }, + "DevicesLongRunningOperationMetadata": { + "description": "Tracks the status of a long-running operation to asynchronously update a\nbatch of reseller metadata attached to devices. To learn more, read\n[Long‑running batch operations](/zero-touch/guides/how-it-works#operations).", + "id": "DevicesLongRunningOperationMetadata", + "properties": { + "devicesCount": { + "description": "The number of metadata updates in the operation. This might be different\nfrom the number of updates in the request if the API can't parse some of\nthe updates.", + "format": "int32", + "type": "integer" + }, + "processingStatus": { + "description": "The processing status of the operation.", + "enum": [ + "BATCH_PROCESS_STATUS_UNSPECIFIED", + "BATCH_PROCESS_PENDING", + "BATCH_PROCESS_IN_PROGRESS", + "BATCH_PROCESS_PROCESSED" + ], + "enumDescriptions": [ + "Invalid code. Shouldn't be used.", + "Pending.", + "In progress.", + "Processed.\nThis doesn't mean all items were processed sucessfully, you should\ncheck the `response` field for the result of every item." + ], + "type": "string" + }, + "progress": { + "description": "The processing progress of the operation. Measured as a number from 0 to\n100. A value of 10O doesnt always mean the operation completed—check for\nthe inclusion of a `done` field.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "DevicesLongRunningOperationResponse": { + "description": "Tracks the status of a long-running operation to claim, unclaim, or attach\nmetadata to devices. To learn more, read\n[Long‑running batch operations](/zero-touch/guides/how-it-works#operations).", + "id": "DevicesLongRunningOperationResponse", + "properties": { + "perDeviceStatus": { + "description": "The processing status for each device in the operation.\nOne `PerDeviceStatus` per device. The list order matches the items in the\noriginal request.", + "items": { + "$ref": "OperationPerDevice" + }, + "type": "array" + }, + "successCount": { + "description": "A summary of how many items in the operation the server processed\nsuccessfully. Updated as the operation progresses.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "Dpc": { + "description": "An EMM's DPC ([device policy controller](/android/work/dpc/build-dpc)).\nZero-touch enrollment installs a DPC (listed in the `Configuration`) on a\ndevice to maintain the customer's mobile policies. All the DPCs listed by the\nAPI support zero-touch enrollment and are available in Google Play.", + "id": "Dpc", + "properties": { + "dpcName": { + "description": "Output only. The title of the DPC app in Google Play. For example, _Google\nApps Device Policy_. Useful in an application's user interface.", + "type": "string" + }, + "name": { + "description": "Output only. The API resource name in the format\n`customers/[CUSTOMER_ID]/dpcs/[DPC_ID]`. Assigned by\nthe server. To maintain a reference to a DPC across customer accounts,\npersist and match the last path component (`DPC_ID`).", + "type": "string" + }, + "packageName": { + "description": "Output only. The DPC's Android application ID that looks like a Java\npackage name. Zero-touch enrollment installs the DPC app onto a device\nusing this identifier.", + "type": "string" + } + }, + "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" + }, + "FindDevicesByDeviceIdentifierRequest": { + "description": "Request to find devices.", + "id": "FindDevicesByDeviceIdentifierRequest", + "properties": { + "deviceIdentifier": { + "$ref": "DeviceIdentifier", + "description": "Required. The device identifier to search for." + }, + "limit": { + "description": "Required. The maximum number of devices to show in a page of results. Must\nbe between 1 and 100 inclusive.", + "format": "int64", + "type": "string" + }, + "pageToken": { + "description": "A token specifying which result page to return.", + "type": "string" + } + }, + "type": "object" + }, + "FindDevicesByDeviceIdentifierResponse": { + "description": "Response containing found devices.", + "id": "FindDevicesByDeviceIdentifierResponse", + "properties": { + "devices": { + "description": "Found devices.", + "items": { + "$ref": "Device" + }, + "type": "array" + }, + "nextPageToken": { + "description": "A token used to access the next page of results. Omitted if no further\nresults are available.", + "type": "string" + } + }, + "type": "object" + }, + "FindDevicesByOwnerRequest": { + "description": "Request to find devices by customers.", + "id": "FindDevicesByOwnerRequest", + "properties": { + "customerId": { + "description": "Required. The list of customer IDs to search for.", + "items": { + "format": "int64", + "type": "string" + }, + "type": "array" + }, + "limit": { + "description": "Required. The maximum number of devices to show in a page of results. Must\nbe between 1 and 100 inclusive.", + "format": "int64", + "type": "string" + }, + "pageToken": { + "description": "A token specifying which result page to return.", + "type": "string" + }, + "sectionType": { + "description": "Required. The section type of the device's provisioning record.", + "enum": [ + "SECTION_TYPE_UNSPECIFIED", + "SECTION_TYPE_ZERO_TOUCH" + ], + "enumDescriptions": [ + "Unspecified section type.", + "Zero-touch enrollment section type." + ], + "type": "string" + } + }, + "type": "object" + }, + "FindDevicesByOwnerResponse": { + "description": "Response containing found devices.", + "id": "FindDevicesByOwnerResponse", + "properties": { + "devices": { + "description": "The customer's devices.", + "items": { + "$ref": "Device" + }, + "type": "array" + }, + "nextPageToken": { + "description": "A token used to access the next page of results.\nOmitted if no further results are available.", + "type": "string" + } + }, + "type": "object" + }, + "ListCustomersResponse": { + "description": "Response message of all customers related to this partner.", + "id": "ListCustomersResponse", + "properties": { + "customers": { + "description": "List of customers related to this reseller partner.", + "items": { + "$ref": "Company" + }, + "type": "array" + } + }, + "type": "object" }, "Operation": { "description": "This resource represents a long-running operation that is the result of a\nnetwork API call.", - "type": "object", + "id": "Operation", "properties": { - "response": { - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - }, - "description": "This field will contain a `DevicesLongRunningOperationResponse` object if the operation is created by `claimAsync`, `unclaimAsync`, or `updateMetadataAsync`.", - "type": "object" - }, - "name": { - "description": "The server-assigned name, which is only unique within the same service that\noriginally returns it. If you use the default HTTP mapping, the\n`name` should have the format of `operations/some/unique/name`.", - "type": "string" + "done": { + "description": "If the value is `false`, it means the operation is still in progress.\nIf `true`, the operation is completed, and either `error` or `response` is\navailable.", + "type": "boolean" }, "error": { "$ref": "Status", @@ -940,642 +1317,265 @@ "description": "This field will contain a `DevicesLongRunningOperationMetadata` object if the operation is created by `claimAsync`, `unclaimAsync`, or `updateMetadataAsync`.", "type": "object" }, - "done": { - "description": "If the value is `false`, it means the operation is still in progress.\nIf `true`, the operation is completed, and either `error` or `response` is\navailable.", - "type": "boolean" - } - }, - "id": "Operation" - }, - "Dpc": { - "properties": { "name": { - "description": "Output only. The API resource name in the format\n`customers/[CUSTOMER_ID]/dpcs/[DPC_ID]`. Assigned by\nthe server. To maintain a reference to a DPC across customer accounts,\npersist and match the last path component (`DPC_ID`).", + "description": "The server-assigned name, which is only unique within the same service that\noriginally returns it. If you use the default HTTP mapping, the\n`name` should have the format of `operations/some/unique/name`.", "type": "string" }, - "packageName": { - "description": "Output only. The DPC's Android application ID that looks like a Java\npackage name. Zero-touch enrollment installs the DPC app onto a device\nusing this identifier.", - "type": "string" - }, - "dpcName": { - "description": "Output only. The title of the DPC app in Google Play. For example, _Google\nApps Device Policy_. Useful in an application's user interface.", - "type": "string" + "response": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "description": "This field will contain a `DevicesLongRunningOperationResponse` object if the operation is created by `claimAsync`, `unclaimAsync`, or `updateMetadataAsync`.", + "type": "object" } }, - "id": "Dpc", - "description": "An EMM's DPC ([device policy controller](/android/work/dpc/build-dpc)).\nZero-touch enrollment installs a DPC (listed in the `Configuration`) on a\ndevice to maintain the customer's mobile policies. All the DPCs listed by the\nAPI support zero-touch enrollment and are available in Google Play.", "type": "object" }, - "CustomerApplyConfigurationRequest": { - "description": "Request message for customer to assign a configuration to device.", - "type": "object", + "OperationPerDevice": { + "description": "A task for each device in the operation. Corresponds to each device\nchange in the request.", + "id": "OperationPerDevice", "properties": { - "configuration": { - "description": "Required. The configuration applied to the device in the format\n`customers/[CUSTOMER_ID]/configurations/[CONFIGURATION_ID]`.", + "claim": { + "$ref": "PartnerClaim", + "description": "A copy of the original device-claim request received by the server." + }, + "result": { + "$ref": "PerDeviceStatusInBatch", + "description": "The processing result for each device." + }, + "unclaim": { + "$ref": "PartnerUnclaim", + "description": "A copy of the original device-unclaim request received by the server." + }, + "updateMetadata": { + "$ref": "UpdateMetadataArguments", + "description": "A copy of the original metadata-update request received by the server." + } + }, + "type": "object" + }, + "PartnerClaim": { + "description": "Identifies one claim request.", + "id": "PartnerClaim", + "properties": { + "customerId": { + "description": "Required. The ID of the customer for whom the device is being claimed.", + "format": "int64", "type": "string" }, - "device": { - "description": "Required. The device the configuration is applied to.", - "$ref": "DeviceReference" + "deviceIdentifier": { + "$ref": "DeviceIdentifier", + "description": "Required. Device identifier of the device." + }, + "deviceMetadata": { + "$ref": "DeviceMetadata", + "description": "Required. The metadata to attach to the device at claim." + }, + "sectionType": { + "description": "Required. The section type of the device's provisioning record.", + "enum": [ + "SECTION_TYPE_UNSPECIFIED", + "SECTION_TYPE_ZERO_TOUCH" + ], + "enumDescriptions": [ + "Unspecified section type.", + "Zero-touch enrollment section type." + ], + "type": "string" } }, - "id": "CustomerApplyConfigurationRequest" + "type": "object" }, - "UnclaimDevicesRequest": { - "description": "Request to unclaim devices asynchronously in batch.", - "type": "object", + "PartnerUnclaim": { + "description": "Identifies one unclaim request.", + "id": "PartnerUnclaim", "properties": { - "unclaims": { - "description": "List of devices to unclaim.", - "type": "array", - "items": { - "$ref": "PartnerUnclaim" - } + "deviceId": { + "description": "Device ID of the device.", + "format": "int64", + "type": "string" + }, + "deviceIdentifier": { + "$ref": "DeviceIdentifier", + "description": "Device identifier of the device." + }, + "sectionType": { + "description": "Required. The section type of the device's provisioning record.", + "enum": [ + "SECTION_TYPE_UNSPECIFIED", + "SECTION_TYPE_ZERO_TOUCH" + ], + "enumDescriptions": [ + "Unspecified section type.", + "Zero-touch enrollment section type." + ], + "type": "string" } }, - "id": "UnclaimDevicesRequest" + "type": "object" }, - "CustomerUnclaimDeviceRequest": { - "description": "Request message for customer to unclaim a device.", - "type": "object", + "PerDeviceStatusInBatch": { + "description": "Captures the processing status for each device in the operation.", + "id": "PerDeviceStatusInBatch", "properties": { - "device": { - "description": "Required. The device to unclaim.", - "$ref": "DeviceReference" + "deviceId": { + "description": "If processing succeeds, the device ID of the device.", + "format": "int64", + "type": "string" + }, + "errorIdentifier": { + "description": "If processing fails, the error type.", + "type": "string" + }, + "errorMessage": { + "description": "If processing fails, a developer message explaining what went wrong.", + "type": "string" + }, + "status": { + "description": "The result status of the device after processing.", + "enum": [ + "SINGLE_DEVICE_STATUS_UNSPECIFIED", + "SINGLE_DEVICE_STATUS_UNKNOWN_ERROR", + "SINGLE_DEVICE_STATUS_OTHER_ERROR", + "SINGLE_DEVICE_STATUS_SUCCESS", + "SINGLE_DEVICE_STATUS_PERMISSION_DENIED", + "SINGLE_DEVICE_STATUS_INVALID_DEVICE_IDENTIFIER", + "SINGLE_DEVICE_STATUS_INVALID_SECTION_TYPE", + "SINGLE_DEVICE_STATUS_SECTION_NOT_YOURS" + ], + "enumDescriptions": [ + "Invalid code. Shouldn't be used.", + "Unknown error.\nWe don't expect this error to occur here.", + "Other error.\nWe know/expect this error, but there's no defined error code for the\nerror.", + "Success.", + "Permission denied.", + "Invalid device identifier.", + "Invalid section type.", + "This section is claimed by another company." + ], + "type": "string" } }, - "id": "CustomerUnclaimDeviceRequest" + "type": "object" }, "Status": { + "description": "The `Status` type defines a logical error model that is suitable for different\nprogramming environments, including REST APIs and RPC APIs. It is used by\n[gRPC](https://github.com/grpc). The error model is designed to be:\n\n- Simple to use and understand for most users\n- Flexible enough to meet unexpected needs\n\n# Overview\n\nThe `Status` message contains three pieces of data: error code, error message,\nand error details. The error code should be an enum value of\ngoogle.rpc.Code, but it may accept additional error codes if needed. The\nerror message should be a developer-facing English message that helps\ndevelopers *understand* and *resolve* the error. If a localized user-facing\nerror message is needed, put the localized message in the error details or\nlocalize it in the client. The optional error details may contain arbitrary\ninformation about the error. There is a predefined set of error detail types\nin the package `google.rpc` that can be used for common error conditions.\n\n# Language mapping\n\nThe `Status` message is the logical representation of the error model, but it\nis not necessarily the actual wire format. When the `Status` message is\nexposed in different client libraries and different wire protocols, it can be\nmapped differently. For example, it will likely be mapped to some exceptions\nin Java, but more likely mapped to some error codes in C.\n\n# Other uses\n\nThe error model and the `Status` message can be used in a variety of\nenvironments, either with or without APIs, to provide a\nconsistent developer experience across different environments.\n\nExample uses of this error model include:\n\n- Partial errors. If a service needs to return partial errors to the client,\n it may embed the `Status` in the normal response to indicate the partial\n errors.\n\n- Workflow errors. A typical workflow has multiple steps. Each step may\n have a `Status` message for error reporting.\n\n- Batch operations. If a client uses batch request and batch response, the\n `Status` message should be used directly inside batch response, one for\n each error sub-response.\n\n- Asynchronous operations. If an API call embeds asynchronous operation\n results in its response, the status of those operations should be\n represented directly using the `Status` message.\n\n- Logging. If some API errors are stored in logs, the message `Status` could\n be used directly after any stripping needed for security/privacy reasons.", + "id": "Status", "properties": { - "details": { - "description": "A list of messages that carry the error details. There is a common set of\nmessage types for APIs to use.", - "type": "array", - "items": { - "type": "object", - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - } - } - }, "code": { "description": "The status code, which should be an enum value of google.rpc.Code.", "format": "int32", "type": "integer" }, + "details": { + "description": "A list of messages that carry the error details. There is a common set of\nmessage types for APIs to use.", + "items": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "type": "object" + }, + "type": "array" + }, "message": { "description": "A developer-facing error message, which should be in English. Any\nuser-facing error message should be localized and sent in the\ngoogle.rpc.Status.details field, or localized by the client.", "type": "string" } }, - "id": "Status", - "description": "The `Status` type defines a logical error model that is suitable for different\nprogramming environments, including REST APIs and RPC APIs. It is used by\n[gRPC](https://github.com/grpc). The error model is designed to be:\n\n- Simple to use and understand for most users\n- Flexible enough to meet unexpected needs\n\n# Overview\n\nThe `Status` message contains three pieces of data: error code, error message,\nand error details. The error code should be an enum value of\ngoogle.rpc.Code, but it may accept additional error codes if needed. The\nerror message should be a developer-facing English message that helps\ndevelopers *understand* and *resolve* the error. If a localized user-facing\nerror message is needed, put the localized message in the error details or\nlocalize it in the client. The optional error details may contain arbitrary\ninformation about the error. There is a predefined set of error detail types\nin the package `google.rpc` that can be used for common error conditions.\n\n# Language mapping\n\nThe `Status` message is the logical representation of the error model, but it\nis not necessarily the actual wire format. When the `Status` message is\nexposed in different client libraries and different wire protocols, it can be\nmapped differently. For example, it will likely be mapped to some exceptions\nin Java, but more likely mapped to some error codes in C.\n\n# Other uses\n\nThe error model and the `Status` message can be used in a variety of\nenvironments, either with or without APIs, to provide a\nconsistent developer experience across different environments.\n\nExample uses of this error model include:\n\n- Partial errors. If a service needs to return partial errors to the client,\n it may embed the `Status` in the normal response to indicate the partial\n errors.\n\n- Workflow errors. A typical workflow has multiple steps. Each step may\n have a `Status` message for error reporting.\n\n- Batch operations. If a client uses batch request and batch response, the\n `Status` message should be used directly inside batch response, one for\n each error sub-response.\n\n- Asynchronous operations. If an API call embeds asynchronous operation\n results in its response, the status of those operations should be\n represented directly using the `Status` message.\n\n- Logging. If some API errors are stored in logs, the message `Status` could\n be used directly after any stripping needed for security/privacy reasons.", "type": "object" }, - "FindDevicesByDeviceIdentifierRequest": { - "properties": { - "deviceIdentifier": { - "description": "The device identifier to search.", - "$ref": "DeviceIdentifier" - }, - "pageToken": { - "description": "Page token.", - "type": "string" - }, - "limit": { - "description": "Number of devices to show.", - "format": "int64", - "type": "string" - } - }, - "id": "FindDevicesByDeviceIdentifierRequest", - "description": "Request to find devices.", - "type": "object" - }, - "CustomerListConfigurationsResponse": { - "description": "Response message of customer's listing configuration.", - "type": "object", - "properties": { - "configurations": { - "description": "The configurations.", - "type": "array", - "items": { - "$ref": "Configuration" - } - } - }, - "id": "CustomerListConfigurationsResponse" - }, - "OperationPerDevice": { - "description": "Operation the server received for every device.", - "type": "object", - "properties": { - "claim": { - "description": "Request to claim a device.", - "$ref": "PartnerClaim" - }, - "updateMetadata": { - "description": "Request to set metadata for a device.", - "$ref": "UpdateMetadataArguments" - }, - "unclaim": { - "description": "Request to unclaim a device.", - "$ref": "PartnerUnclaim" - }, - "result": { - "$ref": "PerDeviceStatusInBatch", - "description": "Processing result for every device." - } - }, - "id": "OperationPerDevice" - }, - "FindDevicesByOwnerResponse": { - "description": "Response containing found devices.", - "type": "object", - "properties": { - "devices": { - "description": "Devices found.", - "type": "array", - "items": { - "$ref": "Device" - } - }, - "nextPageToken": { - "description": "Page token of the next page.", - "type": "string" - } - }, - "id": "FindDevicesByOwnerResponse" - }, - "CustomerRemoveConfigurationRequest": { - "description": "Request message for customer to remove the configuration from device.", - "type": "object", - "properties": { - "device": { - "$ref": "DeviceReference", - "description": "Required. The device to remove the configuration from." - } - }, - "id": "CustomerRemoveConfigurationRequest" - }, - "ClaimDeviceRequest": { - "description": "Request message to claim a device on behalf of a customer.", - "type": "object", - "properties": { - "deviceIdentifier": { - "$ref": "DeviceIdentifier", - "description": "The device identifier of the device to claim." - }, - "sectionType": { - "enum": [ - "SECTION_TYPE_UNSPECIFIED", - "SECTION_TYPE_ZERO_TOUCH" - ], - "description": "The section to claim.", - "type": "string", - "enumDescriptions": [ - "Unspecified section type.", - "Zero-touch enrollment section type." - ] - }, - "customerId": { - "description": "The customer to claim for.", - "format": "int64", - "type": "string" - } - }, - "id": "ClaimDeviceRequest" - }, - "DevicesLongRunningOperationMetadata": { - "description": "Long running operation metadata.", - "type": "object", - "properties": { - "processingStatus": { - "description": "The overall processing status.", - "type": "string", - "enumDescriptions": [ - "Invalid code. Shouldn't be used.", - "Pending.", - "In progress.", - "Processed.\nThis doesn't mean all items were processed sucessfully, you should\ncheck the `response` field for the result of every item." - ], - "enum": [ - "BATCH_PROCESS_STATUS_UNSPECIFIED", - "BATCH_PROCESS_PENDING", - "BATCH_PROCESS_IN_PROGRESS", - "BATCH_PROCESS_PROCESSED" - ] - }, - "progress": { - "description": "Processing progress from 0 to 100.", - "format": "int32", - "type": "integer" - }, - "devicesCount": { - "description": "Number of devices parsed in your requests.", - "format": "int32", - "type": "integer" - } - }, - "id": "DevicesLongRunningOperationMetadata" - }, - "UpdateDeviceMetadataInBatchRequest": { - "description": "Request to update device metadata in batch.", - "type": "object", - "properties": { - "updates": { - "description": "List of metadata updates.", - "type": "array", - "items": { - "$ref": "UpdateMetadataArguments" - } - } - }, - "id": "UpdateDeviceMetadataInBatchRequest" - }, - "ListCustomersResponse": { - "description": "Response message of all customers related to this partner.", - "type": "object", - "properties": { - "customers": { - "description": "List of customers related to this partner.", - "type": "array", - "items": { - "$ref": "Company" - } - } - }, - "id": "ListCustomersResponse" - }, - "ClaimDeviceResponse": { - "description": "Response message containing device id of the claim.", - "type": "object", - "properties": { - "deviceName": { - "description": "The resource name of the device in the format\n`partners/[PARTNER_ID]/devices/[DEVICE_ID]`.", - "type": "string" - }, - "deviceId": { - "description": "The device ID of the claimed device.", - "format": "int64", - "type": "string" - } - }, - "id": "ClaimDeviceResponse" - }, - "UpdateMetadataArguments": { - "properties": { - "deviceIdentifier": { - "description": "Device identifier.", - "$ref": "DeviceIdentifier" - }, - "deviceMetadata": { - "description": "The metadata to update.", - "$ref": "DeviceMetadata" - }, - "deviceId": { - "description": "Device ID of the device.", - "format": "int64", - "type": "string" - } - }, - "id": "UpdateMetadataArguments", - "description": "Identifies metdata updates to one device.", - "type": "object" - }, - "DeviceReference": { - "properties": { - "deviceIdentifier": { - "description": "The hardware IDs of the device.", - "$ref": "DeviceIdentifier" - }, - "deviceId": { - "description": "The ID of the device.", - "format": "int64", - "type": "string" - } - }, - "id": "DeviceReference", - "description": "A `DeviceReference` is an API abstraction that lets you supply a _device_\nargument to a method using one of the following identifier types:\n\n* A numeric API resource ID.\n* Real-world hardware IDs, such as IMEI number, belonging to the manufactured\n device.\n\nMethods that operate on devices take a `DeviceReference` as a parameter type\nbecause it's more flexible for the caller. To learn more about device\nidentifiers, read [Identifiers](/zero-touch/guides/identifiers).", - "type": "object" - }, - "Device": { - "description": "An Android device registered for zero-touch enrollment.", - "type": "object", - "properties": { - "deviceIdentifier": { - "$ref": "DeviceIdentifier", - "description": "The hardware IDs that identify a manufactured device. To learn more, read\n[Identifiers](/zero-touch/guides/identifiers)." - }, - "deviceMetadata": { - "description": "The metadata attached to the device. Structured as key-value pairs. To\nlearn more, read [Device metadata](/zero-touch/guides/metadata).", - "$ref": "DeviceMetadata" - }, - "name": { - "description": "Output only. The API resource name in the format\n`partners/[PARTNER_ID]/devices/[DEVICE_ID]`. Assigned by the server.", - "type": "string" - }, - "deviceId": { - "description": "Output only. The ID of the device. Assigned by the server.", - "format": "int64", - "type": "string" - }, - "configuration": { - "description": "Not available to resellers.", - "type": "string" - }, - "claims": { - "description": "Output only. The provisioning claims for a device. Devices claimed for\nzero-touch enrollment have a claim with the type `SECTION_TYPE_ZERO_TOUCH`.\nCall\n`partners.devices.unclaim`\nor\n`partners.devices.unclaimAsync`\nto remove the device from zero-touch enrollment.", - "type": "array", - "items": { - "$ref": "DeviceClaim" - } - } - }, - "id": "Device" - }, - "CreateCustomerRequest": { - "description": "Request message to create a customer.", - "type": "object", - "properties": { - "customer": { - "$ref": "Company", - "description": "Required. The company data to populate the new customer. Must contain a\nvalue for `companyName` and at least one `owner_email` that's associated\nwith a Google Account. The values for `companyId` and `name` must be empty." - } - }, - "id": "CreateCustomerRequest" - }, - "Company": { - "description": "A customer resource in the zero-touch enrollment API.", - "type": "object", - "properties": { - "companyId": { - "description": "Output only. The ID of the company. Assigned by the server.", - "format": "int64", - "type": "string" - }, - "name": { - "description": "Output only. The API resource name of the company in the format\n`partners/[PARTNER_ID]/customers/[CUSTOMER_ID]`. Assigned by the server.", - "type": "string" - }, - "companyName": { - "description": "Required. The name of the company. For example _XYZ Corp_. Characters\nallowed are: Latin letters, numerals, hyphens, and spaces. Displayed to the\ncustomer's employees in the zero-touch enrollment portal.", - "type": "string" - }, - "adminEmails": { - "description": "Input only. Optional. Email address of customer's users in the admin role.\nEach email address must be associated with a Google Account.", - "type": "array", - "items": { - "type": "string" - } - }, - "ownerEmails": { - "description": "Input only. Email address of customer's users in the owner role. At least\none `owner_email` is required. Each email address must be associated with a\nGoogle Account. Owners share the same access as admins but can also add,\ndelete, and edit your organization's portal users.", - "type": "array", - "items": { - "type": "string" - } - } - }, - "id": "Company" - }, - "Configuration": { - "properties": { - "companyName": { - "description": "Required. The name of the organization. Zero-touch enrollment shows this\norganization name to device users during device provisioning.", - "type": "string" - }, - "configurationId": { - "description": "Output only. The ID of the configuration. Assigned by the server.", - "format": "int64", - "type": "string" - }, - "dpcResourcePath": { - "description": "Required. The resource name of the selected DPC (device policy controller)\nin the format `customers/[CUSTOMER_ID]/dpcs/*`. To list the supported DPCs,\ncall\n`customers.dpcs.list`.", - "type": "string" - }, - "isDefault": { - "description": "Required. Whether this is the default configuration that zero-touch\nenrollment applies to any new devices the organization purchases in the\nfuture. Only one customer configuration can be the default. Setting this\nvalue to `true`, changes the previous default configuration's `isDefault`\nvalue to `false`.", - "type": "boolean" - }, - "dpcExtras": { - "description": "The JSON-formatted EMM provisioning extras that are passed to the DPC.", - "type": "string" - }, - "customMessage": { - "description": "A message, containing one or two sentences, to help device users get help\nor give them more details about what’s happening to their device.\nZero-touch enrollment shows this message before the device is provisioned.", - "type": "string" - }, - "contactEmail": { - "description": "Required. The email address that device users can contact to get help.\nZero-touch enrollment shows this email address to device users before\ndevice provisioning. The value is validated on input.", - "type": "string" - }, - "name": { - "description": "Output only. The API resource name in the format\n`customers/[CUSTOMER_ID]/configurations/[CONFIGURATION_ID]`. Assigned by\nthe server.", - "type": "string" - }, - "configurationName": { - "description": "Required. A short name that describes the configuration's purpose. For\nexample, _Sales team_ or _Temporary employees_. The zero-touch enrollment\nportal displays this name to IT admins.", - "type": "string" - }, - "contactPhone": { - "description": "Required. The telephone number that device users can call, using another\ndevice, to get help. Zero-touch enrollment shows this number to device\nusers before device provisioning. Accepts numerals, spaces, the plus sign,\nhyphens, and parentheses.", - "type": "string" - } - }, - "id": "Configuration", - "description": "A configuration collects the provisioning options for Android devices. Each\nconfiguration combines the following:\n\n* The EMM device policy controller (DPC) installed on the devices.\n* EMM policies enforced on the devices.\n* Metadata displayed on the device to help users during setup.\n\nCustomers can add as many configurations as they need. However, zero-touch\nenrollment works best when a customer sets a default configuration that's\napplied to any new devices the organization purchases.", - "type": "object" - }, - "UpdateDeviceMetadataRequest": { - "properties": { - "deviceMetadata": { - "$ref": "DeviceMetadata", - "description": "The metdata to set." - } - }, - "id": "UpdateDeviceMetadataRequest", - "description": "Request to set metadata for a device.", - "type": "object" - }, - "CustomerListDpcsResponse": { - "properties": { - "dpcs": { - "description": "The list of DPCs available to the customer that support zero-touch\nenrollment.", - "type": "array", - "items": { - "$ref": "Dpc" - } - } - }, - "id": "CustomerListDpcsResponse", - "description": "Response message of customer's listing DPCs.", - "type": "object" - }, - "PartnerUnclaim": { - "description": "Identifies one unclaim request.", - "type": "object", - "properties": { - "deviceIdentifier": { - "$ref": "DeviceIdentifier", - "description": "Device identifier of the device." - }, - "sectionType": { - "enum": [ - "SECTION_TYPE_UNSPECIFIED", - "SECTION_TYPE_ZERO_TOUCH" - ], - "description": "Section type to unclaim.", - "type": "string", - "enumDescriptions": [ - "Unspecified section type.", - "Zero-touch enrollment section type." - ] - }, - "deviceId": { - "description": "Device ID of the device.", - "format": "int64", - "type": "string" - } - }, - "id": "PartnerUnclaim" - }, - "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 `{}`.", - "type": "object", - "properties": {}, - "id": "Empty" - }, - "FindDevicesByDeviceIdentifierResponse": { - "description": "Response containing found devices.", - "type": "object", - "properties": { - "nextPageToken": { - "description": "Page token of the next page.", - "type": "string" - }, - "devices": { - "description": "Found devices.", - "type": "array", - "items": { - "$ref": "Device" - } - } - }, - "id": "FindDevicesByDeviceIdentifierResponse" - }, - "PartnerClaim": { - "description": "Identifies one claim request.", - "type": "object", - "properties": { - "deviceIdentifier": { - "description": "Device identifier of the device.", - "$ref": "DeviceIdentifier" - }, - "deviceMetadata": { - "description": "Metadata to set at claim.", - "$ref": "DeviceMetadata" - }, - "sectionType": { - "enumDescriptions": [ - "Unspecified section type.", - "Zero-touch enrollment section type." - ], - "enum": [ - "SECTION_TYPE_UNSPECIFIED", - "SECTION_TYPE_ZERO_TOUCH" - ], - "description": "Section type to claim.", - "type": "string" - }, - "customerId": { - "description": "Customer ID to claim for.", - "format": "int64", - "type": "string" - } - }, - "id": "PartnerClaim" - }, "UnclaimDeviceRequest": { "description": "Request message to unclaim a device.", - "type": "object", + "id": "UnclaimDeviceRequest", "properties": { + "deviceId": { + "description": "The device ID returned by `ClaimDevice`.", + "format": "int64", + "type": "string" + }, "deviceIdentifier": { "$ref": "DeviceIdentifier", "description": "The device identifier you used when you claimed this device." }, "sectionType": { - "enumDescriptions": [ - "Unspecified section type.", - "Zero-touch enrollment section type." - ], + "description": "Required. The section type of the device's provisioning record.", "enum": [ "SECTION_TYPE_UNSPECIFIED", "SECTION_TYPE_ZERO_TOUCH" ], - "description": "The section type to unclaim for.", + "enumDescriptions": [ + "Unspecified section type.", + "Zero-touch enrollment section type." + ], "type": "string" - }, + } + }, + "type": "object" + }, + "UnclaimDevicesRequest": { + "description": "Request to unclaim devices asynchronously in batch.", + "id": "UnclaimDevicesRequest", + "properties": { + "unclaims": { + "description": "Required. The list of devices to unclaim.", + "items": { + "$ref": "PartnerUnclaim" + }, + "type": "array" + } + }, + "type": "object" + }, + "UpdateDeviceMetadataInBatchRequest": { + "description": "Request to update device metadata in batch.", + "id": "UpdateDeviceMetadataInBatchRequest", + "properties": { + "updates": { + "description": "Required. The list of metadata updates.", + "items": { + "$ref": "UpdateMetadataArguments" + }, + "type": "array" + } + }, + "type": "object" + }, + "UpdateDeviceMetadataRequest": { + "description": "Request to set metadata for a device.", + "id": "UpdateDeviceMetadataRequest", + "properties": { + "deviceMetadata": { + "$ref": "DeviceMetadata", + "description": "Required. The metdata to attach to the device." + } + }, + "type": "object" + }, + "UpdateMetadataArguments": { + "description": "Identifies metdata updates to one device.", + "id": "UpdateMetadataArguments", + "properties": { "deviceId": { - "description": "The device ID returned by `ClaimDevice`.", + "description": "Device ID of the device.", "format": "int64", "type": "string" - } - }, - "id": "UnclaimDeviceRequest" - }, - "DeviceMetadata": { - "description": "Metadata entries that can be attached to a `Device`. To learn more, read\n[Device metadata](/zero-touch/guides/metadata).", - "type": "object", - "properties": { - "entries": { - "additionalProperties": { - "type": "string" - }, - "description": "Metadata entries recorded as key-value pairs.", - "type": "object" - } - }, - "id": "DeviceMetadata" - }, - "CustomerListCustomersResponse": { - "description": "Response message for listing my customers.", - "type": "object", - "properties": { - "customers": { - "description": "Customers the current user can act as.", - "type": "array", - "items": { - "$ref": "Company" - } }, - "nextPageToken": { - "description": "Token to retrieve the next page of results, or empty if there are no\nmore results in the list.", - "type": "string" + "deviceIdentifier": { + "$ref": "DeviceIdentifier", + "description": "Device identifier." + }, + "deviceMetadata": { + "$ref": "DeviceMetadata", + "description": "Required. The metadata to update." } }, - "id": "CustomerListCustomersResponse" + "type": "object" } }, - "protocol": "rest", - "icons": { - "x16": "http://www.google.com/images/icons/product/search-16.gif", - "x32": "http://www.google.com/images/icons/product/search-32.gif" - }, - "version": "v1", - "baseUrl": "https://androiddeviceprovisioning.googleapis.com/", - "canonicalName": "Android Provisioning Partner", - "kind": "discovery#restDescription", - "description": "Automates reseller integration into zero-touch enrollment by assigning devices to customers and creating device reports.", "servicePath": "", - "rootUrl": "https://androiddeviceprovisioning.googleapis.com/", - "basePath": "", - "ownerDomain": "google.com", - "name": "androiddeviceprovisioning", - "batchPath": "batch", - "id": "androiddeviceprovisioning:v1", - "documentationLink": "https://developers.google.com/zero-touch/", - "revision": "20180114", - "title": "Android Device Provisioning Partner API" -} + "title": "Android Device Provisioning Partner API", + "version": "v1", + "version_module": true +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/androiddeviceprovisioning/v1/androiddeviceprovisioning-gen.go b/vendor/google.golang.org/api/androiddeviceprovisioning/v1/androiddeviceprovisioning-gen.go index 8201e4b4f..973e06063 100644 --- a/vendor/google.golang.org/api/androiddeviceprovisioning/v1/androiddeviceprovisioning-gen.go +++ b/vendor/google.golang.org/api/androiddeviceprovisioning/v1/androiddeviceprovisioning-gen.go @@ -165,13 +165,16 @@ type PartnersDevicesService struct { // ClaimDeviceRequest: Request message to claim a device on behalf of a // customer. type ClaimDeviceRequest struct { - // CustomerId: The customer to claim for. + // CustomerId: Required. The ID of the customer for whom the device is + // being claimed. CustomerId int64 `json:"customerId,omitempty,string"` - // DeviceIdentifier: The device identifier of the device to claim. + // DeviceIdentifier: Required. The device identifier of the device to + // claim. DeviceIdentifier *DeviceIdentifier `json:"deviceIdentifier,omitempty"` - // SectionType: The section to claim. + // SectionType: Required. The section type of the device's provisioning + // record. // // Possible values: // "SECTION_TYPE_UNSPECIFIED" - Unspecified section type. @@ -240,9 +243,12 @@ func (s *ClaimDeviceResponse) MarshalJSON() ([]byte, error) { } // ClaimDevicesRequest: Request to claim devices asynchronously in -// batch. +// batch. Claiming a device adds the +// device to zero-touch enrollment and shows the device in the +// customer's view +// of the portal. type ClaimDevicesRequest struct { - // Claims: List of claims. + // Claims: Required. A list of device claims. Claims []*PartnerClaim `json:"claims,omitempty"` // ForceSendFields is a list of field names (e.g. "Claims") to @@ -545,12 +551,12 @@ func (s *CustomerListConfigurationsResponse) MarshalJSON() ([]byte, error) { // CustomerListCustomersResponse: Response message for listing my // customers. type CustomerListCustomersResponse struct { - // Customers: Customers the current user can act as. + // Customers: The customer accounts the calling user is a member of. Customers []*Company `json:"customers,omitempty"` - // NextPageToken: Token to retrieve the next page of results, or empty - // if there are no - // more results in the list. + // NextPageToken: A token used to access the next page of results. + // Omitted if no further + // results are available. NextPageToken string `json:"nextPageToken,omitempty"` // ServerResponse contains the HTTP response code and headers from the @@ -939,12 +945,21 @@ func (s *DeviceReference) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -// DevicesLongRunningOperationMetadata: Long running operation metadata. +// DevicesLongRunningOperationMetadata: Tracks the status of a +// long-running operation to asynchronously update a +// batch of reseller metadata attached to devices. To learn more, +// read +// [Long‑running batch +// operations](/zero-touch/guides/how-it-works#operations). type DevicesLongRunningOperationMetadata struct { - // DevicesCount: Number of devices parsed in your requests. + // DevicesCount: The number of metadata updates in the operation. This + // might be different + // from the number of updates in the request if the API can't parse some + // of + // the updates. DevicesCount int64 `json:"devicesCount,omitempty"` - // ProcessingStatus: The overall processing status. + // ProcessingStatus: The processing status of the operation. // // Possible values: // "BATCH_PROCESS_STATUS_UNSPECIFIED" - Invalid code. Shouldn't be @@ -957,7 +972,11 @@ type DevicesLongRunningOperationMetadata struct { // check the `response` field for the result of every item. ProcessingStatus string `json:"processingStatus,omitempty"` - // Progress: Processing progress from 0 to 100. + // Progress: The processing progress of the operation. Measured as a + // number from 0 to + // 100. A value of 10O doesnt always mean the operation + // completed—check for + // the inclusion of a `done` field. Progress int64 `json:"progress,omitempty"` // ForceSendFields is a list of field names (e.g. "DevicesCount") to @@ -983,14 +1002,22 @@ func (s *DevicesLongRunningOperationMetadata) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -// DevicesLongRunningOperationResponse: Long running operation response. +// DevicesLongRunningOperationResponse: Tracks the status of a +// long-running operation to claim, unclaim, or attach +// metadata to devices. To learn more, read +// [Long‑running batch +// operations](/zero-touch/guides/how-it-works#operations). type DevicesLongRunningOperationResponse struct { - // PerDeviceStatus: Processing status for each device. - // One `PerDeviceStatus` per device. The order is the same as in your - // requests. + // PerDeviceStatus: The processing status for each device in the + // operation. + // One `PerDeviceStatus` per device. The list order matches the items in + // the + // original request. PerDeviceStatus []*OperationPerDevice `json:"perDeviceStatus,omitempty"` - // SuccessCount: Number of succeesfully processed ones. + // SuccessCount: A summary of how many items in the operation the server + // processed + // successfully. Updated as the operation progresses. SuccessCount int64 `json:"successCount,omitempty"` // ForceSendFields is a list of field names (e.g. "PerDeviceStatus") to @@ -1088,13 +1115,15 @@ type Empty struct { // FindDevicesByDeviceIdentifierRequest: Request to find devices. type FindDevicesByDeviceIdentifierRequest struct { - // DeviceIdentifier: The device identifier to search. + // DeviceIdentifier: Required. The device identifier to search for. DeviceIdentifier *DeviceIdentifier `json:"deviceIdentifier,omitempty"` - // Limit: Number of devices to show. + // Limit: Required. The maximum number of devices to show in a page of + // results. Must + // be between 1 and 100 inclusive. Limit int64 `json:"limit,omitempty,string"` - // PageToken: Page token. + // PageToken: A token specifying which result page to return. PageToken string `json:"pageToken,omitempty"` // ForceSendFields is a list of field names (e.g. "DeviceIdentifier") to @@ -1127,7 +1156,9 @@ type FindDevicesByDeviceIdentifierResponse struct { // Devices: Found devices. Devices []*Device `json:"devices,omitempty"` - // NextPageToken: Page token of the next page. + // NextPageToken: A token used to access the next page of results. + // Omitted if no further + // results are available. NextPageToken string `json:"nextPageToken,omitempty"` // ServerResponse contains the HTTP response code and headers from the @@ -1159,16 +1190,19 @@ func (s *FindDevicesByDeviceIdentifierResponse) MarshalJSON() ([]byte, error) { // FindDevicesByOwnerRequest: Request to find devices by customers. type FindDevicesByOwnerRequest struct { - // CustomerId: List of customer IDs to search for. + // CustomerId: Required. The list of customer IDs to search for. CustomerId googleapi.Int64s `json:"customerId,omitempty"` - // Limit: The number of devices to show in the result. + // Limit: Required. The maximum number of devices to show in a page of + // results. Must + // be between 1 and 100 inclusive. Limit int64 `json:"limit,omitempty,string"` - // PageToken: Page token. + // PageToken: A token specifying which result page to return. PageToken string `json:"pageToken,omitempty"` - // SectionType: The section type. + // SectionType: Required. The section type of the device's provisioning + // record. // // Possible values: // "SECTION_TYPE_UNSPECIFIED" - Unspecified section type. @@ -1200,10 +1234,12 @@ func (s *FindDevicesByOwnerRequest) MarshalJSON() ([]byte, error) { // FindDevicesByOwnerResponse: Response containing found devices. type FindDevicesByOwnerResponse struct { - // Devices: Devices found. + // Devices: The customer's devices. Devices []*Device `json:"devices,omitempty"` - // NextPageToken: Page token of the next page. + // NextPageToken: A token used to access the next page of + // results. + // Omitted if no further results are available. NextPageToken string `json:"nextPageToken,omitempty"` // ServerResponse contains the HTTP response code and headers from the @@ -1236,7 +1272,7 @@ func (s *FindDevicesByOwnerResponse) MarshalJSON() ([]byte, error) { // ListCustomersResponse: Response message of all customers related to // this partner. type ListCustomersResponse struct { - // Customers: List of customers related to this partner. + // Customers: List of customers related to this reseller partner. Customers []*Company `json:"customers,omitempty"` // ServerResponse contains the HTTP response code and headers from the @@ -1327,18 +1363,23 @@ func (s *Operation) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -// OperationPerDevice: Operation the server received for every device. +// OperationPerDevice: A task for each device in the operation. +// Corresponds to each device +// change in the request. type OperationPerDevice struct { - // Claim: Request to claim a device. + // Claim: A copy of the original device-claim request received by the + // server. Claim *PartnerClaim `json:"claim,omitempty"` - // Result: Processing result for every device. + // Result: The processing result for each device. Result *PerDeviceStatusInBatch `json:"result,omitempty"` - // Unclaim: Request to unclaim a device. + // Unclaim: A copy of the original device-unclaim request received by + // the server. Unclaim *PartnerUnclaim `json:"unclaim,omitempty"` - // UpdateMetadata: Request to set metadata for a device. + // UpdateMetadata: A copy of the original metadata-update request + // received by the server. UpdateMetadata *UpdateMetadataArguments `json:"updateMetadata,omitempty"` // ForceSendFields is a list of field names (e.g. "Claim") to @@ -1366,16 +1407,19 @@ func (s *OperationPerDevice) MarshalJSON() ([]byte, error) { // PartnerClaim: Identifies one claim request. type PartnerClaim struct { - // CustomerId: Customer ID to claim for. + // CustomerId: Required. The ID of the customer for whom the device is + // being claimed. CustomerId int64 `json:"customerId,omitempty,string"` - // DeviceIdentifier: Device identifier of the device. + // DeviceIdentifier: Required. Device identifier of the device. DeviceIdentifier *DeviceIdentifier `json:"deviceIdentifier,omitempty"` - // DeviceMetadata: Metadata to set at claim. + // DeviceMetadata: Required. The metadata to attach to the device at + // claim. DeviceMetadata *DeviceMetadata `json:"deviceMetadata,omitempty"` - // SectionType: Section type to claim. + // SectionType: Required. The section type of the device's provisioning + // record. // // Possible values: // "SECTION_TYPE_UNSPECIFIED" - Unspecified section type. @@ -1413,7 +1457,8 @@ type PartnerUnclaim struct { // DeviceIdentifier: Device identifier of the device. DeviceIdentifier *DeviceIdentifier `json:"deviceIdentifier,omitempty"` - // SectionType: Section type to unclaim. + // SectionType: Required. The section type of the device's provisioning + // record. // // Possible values: // "SECTION_TYPE_UNSPECIFIED" - Unspecified section type. @@ -1443,18 +1488,20 @@ func (s *PartnerUnclaim) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -// PerDeviceStatusInBatch: Stores the processing result for each device. +// PerDeviceStatusInBatch: Captures the processing status for each +// device in the operation. type PerDeviceStatusInBatch struct { - // DeviceId: Device ID of the device if process succeeds. + // DeviceId: If processing succeeds, the device ID of the device. DeviceId int64 `json:"deviceId,omitempty,string"` - // ErrorIdentifier: Error identifier. + // ErrorIdentifier: If processing fails, the error type. ErrorIdentifier string `json:"errorIdentifier,omitempty"` - // ErrorMessage: Error message. + // ErrorMessage: If processing fails, a developer message explaining + // what went wrong. ErrorMessage string `json:"errorMessage,omitempty"` - // Status: Process result. + // Status: The result status of the device after processing. // // Possible values: // "SINGLE_DEVICE_STATUS_UNSPECIFIED" - Invalid code. Shouldn't be @@ -1625,7 +1672,8 @@ type UnclaimDeviceRequest struct { // this device. DeviceIdentifier *DeviceIdentifier `json:"deviceIdentifier,omitempty"` - // SectionType: The section type to unclaim for. + // SectionType: Required. The section type of the device's provisioning + // record. // // Possible values: // "SECTION_TYPE_UNSPECIFIED" - Unspecified section type. @@ -1658,7 +1706,7 @@ func (s *UnclaimDeviceRequest) MarshalJSON() ([]byte, error) { // UnclaimDevicesRequest: Request to unclaim devices asynchronously in // batch. type UnclaimDevicesRequest struct { - // Unclaims: List of devices to unclaim. + // Unclaims: Required. The list of devices to unclaim. Unclaims []*PartnerUnclaim `json:"unclaims,omitempty"` // ForceSendFields is a list of field names (e.g. "Unclaims") to @@ -1687,7 +1735,7 @@ func (s *UnclaimDevicesRequest) MarshalJSON() ([]byte, error) { // UpdateDeviceMetadataInBatchRequest: Request to update device metadata // in batch. type UpdateDeviceMetadataInBatchRequest struct { - // Updates: List of metadata updates. + // Updates: Required. The list of metadata updates. Updates []*UpdateMetadataArguments `json:"updates,omitempty"` // ForceSendFields is a list of field names (e.g. "Updates") to @@ -1715,7 +1763,7 @@ func (s *UpdateDeviceMetadataInBatchRequest) MarshalJSON() ([]byte, error) { // UpdateDeviceMetadataRequest: Request to set metadata for a device. type UpdateDeviceMetadataRequest struct { - // DeviceMetadata: The metdata to set. + // DeviceMetadata: Required. The metdata to attach to the device. DeviceMetadata *DeviceMetadata `json:"deviceMetadata,omitempty"` // ForceSendFields is a list of field names (e.g. "DeviceMetadata") to @@ -1750,7 +1798,7 @@ type UpdateMetadataArguments struct { // DeviceIdentifier: Device identifier. DeviceIdentifier *DeviceIdentifier `json:"deviceIdentifier,omitempty"` - // DeviceMetadata: The metadata to update. + // DeviceMetadata: Required. The metadata to update. DeviceMetadata *DeviceMetadata `json:"deviceMetadata,omitempty"` // ForceSendFields is a list of field names (e.g. "DeviceId") to @@ -1786,21 +1834,22 @@ type CustomersListCall struct { header_ http.Header } -// List: List the user's customer accounts. +// List: Lists the user's customer accounts. func (r *CustomersService) List() *CustomersListCall { c := &CustomersListCall{s: r.s, urlParams_: make(gensupport.URLParams)} return c } // PageSize sets the optional parameter "pageSize": The maximum number -// of items to return. +// of customers to show in a page of results. +// A number between 1 and 100 (inclusive). func (c *CustomersListCall) PageSize(pageSize int64) *CustomersListCall { c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) return c } -// PageToken sets the optional parameter "pageToken": The -// next_page_token value returned from a previous List request, if any. +// PageToken sets the optional parameter "pageToken": A token specifying +// which result page to return. func (c *CustomersListCall) PageToken(pageToken string) *CustomersListCall { c.urlParams_.Set("pageToken", pageToken) return c @@ -1897,20 +1946,20 @@ func (c *CustomersListCall) Do(opts ...googleapi.CallOption) (*CustomerListCusto } return ret, nil // { - // "description": "List the user's customer accounts.", + // "description": "Lists the user's customer accounts.", // "flatPath": "v1/customers", // "httpMethod": "GET", // "id": "androiddeviceprovisioning.customers.list", // "parameterOrder": [], // "parameters": { // "pageSize": { - // "description": "The maximum number of items to return.", + // "description": "The maximum number of customers to show in a page of results.\nA number between 1 and 100 (inclusive).", // "format": "int32", // "location": "query", // "type": "integer" // }, // "pageToken": { - // "description": "The next_page_token value returned from a previous List request, if any.", + // "description": "A token specifying which result page to return.", // "location": "query", // "type": "string" // } @@ -3891,7 +3940,7 @@ func (c *PartnersCustomersListCall) Do(opts ...googleapi.CallOption) (*ListCusto // ], // "parameters": { // "partnerId": { - // "description": "The ID of the partner.", + // "description": "Required. The ID of the reseller partner.", // "format": "int64", // "location": "path", // "pattern": "^[^/]+$", @@ -3918,7 +3967,10 @@ type PartnersDevicesClaimCall struct { header_ http.Header } -// Claim: Claim the device identified by device identifier. +// Claim: Claims a device for a customer and adds it to zero-touch +// enrollment. If the +// device is already claimed by another customer, the call returns an +// error. func (r *PartnersDevicesService) Claim(partnerId int64, claimdevicerequest *ClaimDeviceRequest) *PartnersDevicesClaimCall { c := &PartnersDevicesClaimCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.partnerId = partnerId @@ -4012,7 +4064,7 @@ func (c *PartnersDevicesClaimCall) Do(opts ...googleapi.CallOption) (*ClaimDevic } return ret, nil // { - // "description": "Claim the device identified by device identifier.", + // "description": "Claims a device for a customer and adds it to zero-touch enrollment. If the\ndevice is already claimed by another customer, the call returns an error.", // "flatPath": "v1/partners/{partnersId}/devices:claim", // "httpMethod": "POST", // "id": "androiddeviceprovisioning.partners.devices.claim", @@ -4021,7 +4073,7 @@ func (c *PartnersDevicesClaimCall) Do(opts ...googleapi.CallOption) (*ClaimDevic // ], // "parameters": { // "partnerId": { - // "description": "ID of the partner.", + // "description": "Required. The ID of the reseller partner.", // "format": "int64", // "location": "path", // "pattern": "^[^/]+$", @@ -4051,7 +4103,11 @@ type PartnersDevicesClaimAsyncCall struct { header_ http.Header } -// ClaimAsync: Claim devices asynchronously. +// ClaimAsync: Claims a batch of devices for a customer asynchronously. +// Adds the devices +// to zero-touch enrollment. To learn more, read [Long‑running +// batch +// operations](/zero-touch/guides/how-it-works#operations). func (r *PartnersDevicesService) ClaimAsync(partnerId int64, claimdevicesrequest *ClaimDevicesRequest) *PartnersDevicesClaimAsyncCall { c := &PartnersDevicesClaimAsyncCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.partnerId = partnerId @@ -4145,7 +4201,7 @@ func (c *PartnersDevicesClaimAsyncCall) Do(opts ...googleapi.CallOption) (*Opera } return ret, nil // { - // "description": "Claim devices asynchronously.", + // "description": "Claims a batch of devices for a customer asynchronously. Adds the devices\nto zero-touch enrollment. To learn more, read [Long‑running batch\noperations](/zero-touch/guides/how-it-works#operations).", // "flatPath": "v1/partners/{partnersId}/devices:claimAsync", // "httpMethod": "POST", // "id": "androiddeviceprovisioning.partners.devices.claimAsync", @@ -4154,7 +4210,7 @@ func (c *PartnersDevicesClaimAsyncCall) Do(opts ...googleapi.CallOption) (*Opera // ], // "parameters": { // "partnerId": { - // "description": "Partner ID.", + // "description": "Required. The ID of the reseller partner.", // "format": "int64", // "location": "path", // "pattern": "^[^/]+$", @@ -4184,7 +4240,8 @@ type PartnersDevicesFindByIdentifierCall struct { header_ http.Header } -// FindByIdentifier: Find devices by device identifier. +// FindByIdentifier: Finds devices by hardware identifiers, such as +// IMEI. func (r *PartnersDevicesService) FindByIdentifier(partnerId int64, finddevicesbydeviceidentifierrequest *FindDevicesByDeviceIdentifierRequest) *PartnersDevicesFindByIdentifierCall { c := &PartnersDevicesFindByIdentifierCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.partnerId = partnerId @@ -4279,7 +4336,7 @@ func (c *PartnersDevicesFindByIdentifierCall) Do(opts ...googleapi.CallOption) ( } return ret, nil // { - // "description": "Find devices by device identifier.", + // "description": "Finds devices by hardware identifiers, such as IMEI.", // "flatPath": "v1/partners/{partnersId}/devices:findByIdentifier", // "httpMethod": "POST", // "id": "androiddeviceprovisioning.partners.devices.findByIdentifier", @@ -4288,7 +4345,7 @@ func (c *PartnersDevicesFindByIdentifierCall) Do(opts ...googleapi.CallOption) ( // ], // "parameters": { // "partnerId": { - // "description": "ID of the partner.", + // "description": "Required. The ID of the reseller partner.", // "format": "int64", // "location": "path", // "pattern": "^[^/]+$", @@ -4339,7 +4396,13 @@ type PartnersDevicesFindByOwnerCall struct { header_ http.Header } -// FindByOwner: Find devices by ownership. +// FindByOwner: Finds devices claimed for customers. The results only +// contain devices +// registered to the reseller that's identified by the `partnerId` +// argument. +// The customer's devices purchased from other resellers don't appear in +// the +// results. func (r *PartnersDevicesService) FindByOwner(partnerId int64, finddevicesbyownerrequest *FindDevicesByOwnerRequest) *PartnersDevicesFindByOwnerCall { c := &PartnersDevicesFindByOwnerCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.partnerId = partnerId @@ -4433,7 +4496,7 @@ func (c *PartnersDevicesFindByOwnerCall) Do(opts ...googleapi.CallOption) (*Find } return ret, nil // { - // "description": "Find devices by ownership.", + // "description": "Finds devices claimed for customers. The results only contain devices\nregistered to the reseller that's identified by the `partnerId` argument.\nThe customer's devices purchased from other resellers don't appear in the\nresults.", // "flatPath": "v1/partners/{partnersId}/devices:findByOwner", // "httpMethod": "POST", // "id": "androiddeviceprovisioning.partners.devices.findByOwner", @@ -4442,7 +4505,7 @@ func (c *PartnersDevicesFindByOwnerCall) Do(opts ...googleapi.CallOption) (*Find // ], // "parameters": { // "partnerId": { - // "description": "ID of the partner.", + // "description": "Required. The ID of the reseller partner.", // "format": "int64", // "location": "path", // "pattern": "^[^/]+$", @@ -4493,7 +4556,7 @@ type PartnersDevicesGetCall struct { header_ http.Header } -// Get: Get a device. +// Get: Gets a device. func (r *PartnersDevicesService) Get(name string) *PartnersDevicesGetCall { c := &PartnersDevicesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.name = name @@ -4594,7 +4657,7 @@ func (c *PartnersDevicesGetCall) Do(opts ...googleapi.CallOption) (*Device, erro } return ret, nil // { - // "description": "Get a device.", + // "description": "Gets a device.", // "flatPath": "v1/partners/{partnersId}/devices/{devicesId}", // "httpMethod": "GET", // "id": "androiddeviceprovisioning.partners.devices.get", @@ -4603,7 +4666,7 @@ func (c *PartnersDevicesGetCall) Do(opts ...googleapi.CallOption) (*Device, erro // ], // "parameters": { // "name": { - // "description": "Resource name in `partners/[PARTNER_ID]/devices/[DEVICE_ID]`.", + // "description": "Required. The device API resource name in the format\n`partners/[PARTNER_ID]/devices/[DEVICE_ID]`.", // "location": "path", // "pattern": "^partners/[^/]+/devices/[^/]+$", // "required": true, @@ -4630,7 +4693,7 @@ type PartnersDevicesMetadataCall struct { header_ http.Header } -// Metadata: Update the metadata. +// Metadata: Updates reseller metadata associated with the device. func (r *PartnersDevicesService) Metadata(metadataOwnerId int64, deviceId int64, updatedevicemetadatarequest *UpdateDeviceMetadataRequest) *PartnersDevicesMetadataCall { c := &PartnersDevicesMetadataCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.metadataOwnerId = metadataOwnerId @@ -4726,7 +4789,7 @@ func (c *PartnersDevicesMetadataCall) Do(opts ...googleapi.CallOption) (*DeviceM } return ret, nil // { - // "description": "Update the metadata.", + // "description": "Updates reseller metadata associated with the device.", // "flatPath": "v1/partners/{partnersId}/devices/{devicesId}/metadata", // "httpMethod": "POST", // "id": "androiddeviceprovisioning.partners.devices.metadata", @@ -4736,7 +4799,7 @@ func (c *PartnersDevicesMetadataCall) Do(opts ...googleapi.CallOption) (*DeviceM // ], // "parameters": { // "deviceId": { - // "description": "ID of the partner.", + // "description": "Required. The ID of the reseller partner.", // "format": "int64", // "location": "path", // "pattern": "^[^/]+$", @@ -4744,7 +4807,7 @@ func (c *PartnersDevicesMetadataCall) Do(opts ...googleapi.CallOption) (*DeviceM // "type": "string" // }, // "metadataOwnerId": { - // "description": "The owner of the newly set metadata. Set this to the partner ID.", + // "description": "Required. The owner of the newly set metadata. Set this to the partner ID.", // "format": "int64", // "location": "path", // "pattern": "^[^/]+$", @@ -4774,8 +4837,9 @@ type PartnersDevicesUnclaimCall struct { header_ http.Header } -// Unclaim: Unclaim the device identified by the `device_id` or the -// `deviceIdentifier`. +// Unclaim: Unclaims a device from a customer and removes it from +// zero-touch +// enrollment. func (r *PartnersDevicesService) Unclaim(partnerId int64, unclaimdevicerequest *UnclaimDeviceRequest) *PartnersDevicesUnclaimCall { c := &PartnersDevicesUnclaimCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.partnerId = partnerId @@ -4869,7 +4933,7 @@ func (c *PartnersDevicesUnclaimCall) Do(opts ...googleapi.CallOption) (*Empty, e } return ret, nil // { - // "description": "Unclaim the device identified by the `device_id` or the `deviceIdentifier`.", + // "description": "Unclaims a device from a customer and removes it from zero-touch\nenrollment.", // "flatPath": "v1/partners/{partnersId}/devices:unclaim", // "httpMethod": "POST", // "id": "androiddeviceprovisioning.partners.devices.unclaim", @@ -4878,7 +4942,7 @@ func (c *PartnersDevicesUnclaimCall) Do(opts ...googleapi.CallOption) (*Empty, e // ], // "parameters": { // "partnerId": { - // "description": "ID of the partner.", + // "description": "Required. The ID of the reseller partner.", // "format": "int64", // "location": "path", // "pattern": "^[^/]+$", @@ -4908,7 +4972,12 @@ type PartnersDevicesUnclaimAsyncCall struct { header_ http.Header } -// UnclaimAsync: Unclaim devices asynchronously. +// UnclaimAsync: Unclaims a batch of devices for a customer +// asynchronously. Removes the +// devices from zero-touch enrollment. To learn more, read +// [Long‑running +// batch +// operations](/zero-touch/guides/how-it-works#operations). func (r *PartnersDevicesService) UnclaimAsync(partnerId int64, unclaimdevicesrequest *UnclaimDevicesRequest) *PartnersDevicesUnclaimAsyncCall { c := &PartnersDevicesUnclaimAsyncCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.partnerId = partnerId @@ -5002,7 +5071,7 @@ func (c *PartnersDevicesUnclaimAsyncCall) Do(opts ...googleapi.CallOption) (*Ope } return ret, nil // { - // "description": "Unclaim devices asynchronously.", + // "description": "Unclaims a batch of devices for a customer asynchronously. Removes the\ndevices from zero-touch enrollment. To learn more, read [Long‑running batch\noperations](/zero-touch/guides/how-it-works#operations).", // "flatPath": "v1/partners/{partnersId}/devices:unclaimAsync", // "httpMethod": "POST", // "id": "androiddeviceprovisioning.partners.devices.unclaimAsync", @@ -5011,7 +5080,7 @@ func (c *PartnersDevicesUnclaimAsyncCall) Do(opts ...googleapi.CallOption) (*Ope // ], // "parameters": { // "partnerId": { - // "description": "Partner ID.", + // "description": "Required. The reseller partner ID.", // "format": "int64", // "location": "path", // "pattern": "^[^/]+$", @@ -5041,7 +5110,13 @@ type PartnersDevicesUpdateMetadataAsyncCall struct { header_ http.Header } -// UpdateMetadataAsync: Set metadata in batch asynchronously. +// UpdateMetadataAsync: Updates the reseller metadata attached to a +// batch of devices. This method +// updates devices asynchronously and returns an `Operation` that can be +// used +// to track progress. Read [Long‑running +// batch +// operations](/zero-touch/guides/how-it-works#operations). func (r *PartnersDevicesService) UpdateMetadataAsync(partnerId int64, updatedevicemetadatainbatchrequest *UpdateDeviceMetadataInBatchRequest) *PartnersDevicesUpdateMetadataAsyncCall { c := &PartnersDevicesUpdateMetadataAsyncCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.partnerId = partnerId @@ -5135,7 +5210,7 @@ func (c *PartnersDevicesUpdateMetadataAsyncCall) Do(opts ...googleapi.CallOption } return ret, nil // { - // "description": "Set metadata in batch asynchronously.", + // "description": "Updates the reseller metadata attached to a batch of devices. This method\nupdates devices asynchronously and returns an `Operation` that can be used\nto track progress. Read [Long‑running batch\noperations](/zero-touch/guides/how-it-works#operations).", // "flatPath": "v1/partners/{partnersId}/devices:updateMetadataAsync", // "httpMethod": "POST", // "id": "androiddeviceprovisioning.partners.devices.updateMetadataAsync", @@ -5144,7 +5219,7 @@ func (c *PartnersDevicesUpdateMetadataAsyncCall) Do(opts ...googleapi.CallOption // ], // "parameters": { // "partnerId": { - // "description": "Partner ID.", + // "description": "Required. The reseller partner ID.", // "format": "int64", // "location": "path", // "pattern": "^[^/]+$", diff --git a/vendor/google.golang.org/api/androidenterprise/v1/androidenterprise-api.json b/vendor/google.golang.org/api/androidenterprise/v1/androidenterprise-api.json index 9c35a2c0f..0a26af61e 100644 --- a/vendor/google.golang.org/api/androidenterprise/v1/androidenterprise-api.json +++ b/vendor/google.golang.org/api/androidenterprise/v1/androidenterprise-api.json @@ -1,4407 +1,4437 @@ { - "kind": "discovery#restDescription", - "etag": "\"YWOzh2SDasdU84ArJnpYek-OMdg/fAl5BHlYqwU8XIUMb6QGOitbCcM\"", - "discoveryVersion": "v1", - "id": "androidenterprise:v1", - "name": "androidenterprise", - "canonicalName": "Android Enterprise", - "version": "v1", - "revision": "20180111", - "title": "Google Play EMM API", - "description": "Manages the deployment of apps to Android for Work users.", - "ownerDomain": "google.com", - "ownerName": "Google", - "icons": { - "x16": "https://www.google.com/images/icons/product/android-16.png", - "x32": "https://www.google.com/images/icons/product/android-32.png" - }, - "documentationLink": "https://developers.google.com/android/work/play/emm-api", - "protocol": "rest", - "baseUrl": "https://www.googleapis.com/androidenterprise/v1/", - "basePath": "/androidenterprise/v1/", - "rootUrl": "https://www.googleapis.com/", - "servicePath": "androidenterprise/v1/", - "batchPath": "batch/androidenterprise/v1", - "parameters": { - "alt": { - "type": "string", - "description": "Data format for the response.", - "default": "json", - "enum": [ - "json" - ], - "enumDescriptions": [ - "Responses with Content-Type of application/json" - ], - "location": "query" - }, - "fields": { - "type": "string", - "description": "Selector specifying which fields to include in a partial response.", - "location": "query" - }, - "key": { - "type": "string", - "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" - }, - "oauth_token": { - "type": "string", - "description": "OAuth 2.0 token for the current user.", - "location": "query" - }, - "prettyPrint": { - "type": "boolean", - "description": "Returns response with indentations and line breaks.", - "default": "true", - "location": "query" - }, - "quotaUser": { - "type": "string", - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", - "location": "query" - }, - "userIp": { - "type": "string", - "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", - "location": "query" - } - }, - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/androidenterprise": { - "description": "Manage corporate Android devices" + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/androidenterprise": { + "description": "Manage corporate Android devices" + } + } } - } - } - }, - "schemas": { - "Administrator": { - "id": "Administrator", - "type": "object", - "description": "This represents an enterprise admin who can manage the enterprise in the managed Google Play store.", - "properties": { - "email": { - "type": "string", - "description": "The admin's email address." - } - } }, - "AdministratorWebToken": { - "id": "AdministratorWebToken", - "type": "object", - "description": "A token authorizing an admin to access an iframe.", - "properties": { - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"androidenterprise#administratorWebToken\".", - "default": "androidenterprise#administratorWebToken" - }, - "token": { - "type": "string", - "description": "An opaque token to be passed to the Play front-end to generate an iframe." - } - } + "basePath": "/androidenterprise/v1/", + "baseUrl": "https://www.googleapis.com/androidenterprise/v1/", + "batchPath": "batch/androidenterprise/v1", + "canonicalName": "Android Enterprise", + "description": "Manages the deployment of apps to Android for Work users.", + "discoveryVersion": "v1", + "documentationLink": "https://developers.google.com/android/work/play/emm-api", + "etag": "\"-iA1DTNe4s-I6JZXPt1t1Ypy8IU/LiPjx_lgD_TPXh9gKbSg82lZeFI\"", + "icons": { + "x16": "https://www.google.com/images/icons/product/android-16.png", + "x32": "https://www.google.com/images/icons/product/android-32.png" }, - "AdministratorWebTokenSpec": { - "id": "AdministratorWebTokenSpec", - "type": "object", - "description": "Specification for a token used to generate iframes. The token specifies what data the admin is allowed to modify and the URI the iframe is allowed to communiate with.", - "properties": { - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"androidenterprise#administratorWebTokenSpec\".", - "default": "androidenterprise#administratorWebTokenSpec" - }, - "parent": { - "type": "string", - "description": "The URI of the parent frame hosting the iframe. To prevent XSS, the iframe may not be hosted at other URIs. This URI must be https." - }, - "permission": { - "type": "array", - "description": "The list of permissions the admin is granted within the iframe. The admin will only be allowed to view an iframe if they have all of the permissions associated with it. The only valid value is \"approveApps\" that will allow the admin to access the iframe in \"approve\" mode.", - "items": { + "id": "androidenterprise:v1", + "kind": "discovery#restDescription", + "name": "androidenterprise", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "alt": { + "default": "json", + "description": "Data format for the response.", + "enum": [ + "json" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json" + ], + "location": "query", "type": "string" - } - } - } - }, - "AndroidDevicePolicyConfig": { - "id": "AndroidDevicePolicyConfig", - "type": "object", - "description": "The Android Device Policy configuration of an enterprise.", - "properties": { - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"androidenterprise#androidDevicePolicyConfig\".", - "default": "androidenterprise#androidDevicePolicyConfig" }, - "state": { - "type": "string", - "description": "The state of Android Device Policy. \"enabled\" indicates that Android Device Policy is enabled for the enterprise and the EMM is allowed to manage devices with Android Device Policy, while \"disabled\" means that it cannot." - } - } - }, - "AppRestrictionsSchema": { - "id": "AppRestrictionsSchema", - "type": "object", - "description": "Represents the list of app restrictions available to be pre-configured for the product.", - "properties": { - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"androidenterprise#appRestrictionsSchema\".", - "default": "androidenterprise#appRestrictionsSchema" - }, - "restrictions": { - "type": "array", - "description": "The set of restrictions that make up this schema.", - "items": { - "$ref": "AppRestrictionsSchemaRestriction" - } - } - } - }, - "AppRestrictionsSchemaChangeEvent": { - "id": "AppRestrictionsSchemaChangeEvent", - "type": "object", - "description": "An event generated when a new app version is uploaded to Google Play and its app restrictions schema changed. To fetch the app restrictions schema for an app, use Products.getAppRestrictionsSchema on the EMM API.", - "properties": { - "productId": { - "type": "string", - "description": "The id of the product (e.g. \"app:com.google.android.gm\") for which the app restriction schema changed. This field will always be present." - } - } - }, - "AppRestrictionsSchemaRestriction": { - "id": "AppRestrictionsSchemaRestriction", - "type": "object", - "description": "A restriction in the App Restriction Schema represents a piece of configuration that may be pre-applied.", - "properties": { - "defaultValue": { - "$ref": "AppRestrictionsSchemaRestrictionRestrictionValue", - "description": "The default value of the restriction. bundle and bundleArray restrictions never have a default value." - }, - "description": { - "type": "string", - "description": "A longer description of the restriction, giving more detail of what it affects." - }, - "entry": { - "type": "array", - "description": "For choice or multiselect restrictions, the list of possible entries' human-readable names.", - "items": { + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "location": "query", "type": "string" - } - }, - "entryValue": { - "type": "array", - "description": "For choice or multiselect restrictions, the list of possible entries' machine-readable values. These values should be used in the configuration, either as a single string value for a choice restriction or in a stringArray for a multiselect restriction.", - "items": { - "type": "string" - } }, "key": { - "type": "string", - "description": "The unique key that the product uses to identify the restriction, e.g. \"com.google.android.gm.fieldname\"." - }, - "nestedRestriction": { - "type": "array", - "description": "For bundle or bundleArray restrictions, the list of nested restrictions. A bundle restriction is always nested within a bundleArray restriction, and a bundleArray restriction is at most two levels deep.", - "items": { - "$ref": "AppRestrictionsSchemaRestriction" - } - }, - "restrictionType": { - "type": "string", - "description": "The type of the restriction." - }, - "title": { - "type": "string", - "description": "The name of the restriction." - } - } - }, - "AppRestrictionsSchemaRestrictionRestrictionValue": { - "id": "AppRestrictionsSchemaRestrictionRestrictionValue", - "type": "object", - "description": "A typed value for the restriction.", - "properties": { - "type": { - "type": "string", - "description": "The type of the value being provided." - }, - "valueBool": { - "type": "boolean", - "description": "The boolean value - this will only be present if type is bool." - }, - "valueInteger": { - "type": "integer", - "description": "The integer value - this will only be present if type is integer.", - "format": "int32" - }, - "valueMultiselect": { - "type": "array", - "description": "The list of string values - this will only be present if type is multiselect.", - "items": { + "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" - } }, - "valueString": { - "type": "string", - "description": "The string value - this will be present for types string, choice and hidden." + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", + "location": "query", + "type": "string" + }, + "userIp": { + "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", + "location": "query", + "type": "string" } - } }, - "AppUpdateEvent": { - "id": "AppUpdateEvent", - "type": "object", - "description": "An event generated when a new version of an app is uploaded to Google Play. Notifications are sent for new public versions only: alpha, beta, or canary versions do not generate this event. To fetch up-to-date version history for an app, use Products.Get on the EMM API.", - "properties": { - "productId": { - "type": "string", - "description": "The id of the product (e.g. \"app:com.google.android.gm\") that was updated. This field will always be present." - } - } - }, - "AppVersion": { - "id": "AppVersion", - "type": "object", - "description": "This represents a single version of the app.", - "properties": { - "track": { - "type": "string", - "description": "The track that this app was published in. For example if track is \"alpha\", this is an alpha version of the app." + "protocol": "rest", + "resources": { + "devices": { + "methods": { + "get": { + "description": "Retrieves the details of a device.", + "httpMethod": "GET", + "id": "androidenterprise.devices.get", + "parameterOrder": [ + "enterpriseId", + "userId", + "deviceId" + ], + "parameters": { + "deviceId": { + "description": "The ID of the device.", + "location": "path", + "required": true, + "type": "string" + }, + "enterpriseId": { + "description": "The ID of the enterprise.", + "location": "path", + "required": true, + "type": "string" + }, + "userId": { + "description": "The ID of the user.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "enterprises/{enterpriseId}/users/{userId}/devices/{deviceId}", + "response": { + "$ref": "Device" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidenterprise" + ] + }, + "getState": { + "description": "Retrieves whether a device's access to Google services is enabled or disabled. The device state takes effect only if enforcing EMM policies on Android devices is enabled in the Google Admin Console. Otherwise, the device state is ignored and all devices are allowed access to Google services. This is only supported for Google-managed users.", + "httpMethod": "GET", + "id": "androidenterprise.devices.getState", + "parameterOrder": [ + "enterpriseId", + "userId", + "deviceId" + ], + "parameters": { + "deviceId": { + "description": "The ID of the device.", + "location": "path", + "required": true, + "type": "string" + }, + "enterpriseId": { + "description": "The ID of the enterprise.", + "location": "path", + "required": true, + "type": "string" + }, + "userId": { + "description": "The ID of the user.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "enterprises/{enterpriseId}/users/{userId}/devices/{deviceId}/state", + "response": { + "$ref": "DeviceState" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidenterprise" + ] + }, + "list": { + "description": "Retrieves the IDs of all of a user's devices.", + "httpMethod": "GET", + "id": "androidenterprise.devices.list", + "parameterOrder": [ + "enterpriseId", + "userId" + ], + "parameters": { + "enterpriseId": { + "description": "The ID of the enterprise.", + "location": "path", + "required": true, + "type": "string" + }, + "userId": { + "description": "The ID of the user.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "enterprises/{enterpriseId}/users/{userId}/devices", + "response": { + "$ref": "DevicesListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidenterprise" + ] + }, + "patch": { + "description": "Updates the device policy. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "androidenterprise.devices.patch", + "parameterOrder": [ + "enterpriseId", + "userId", + "deviceId" + ], + "parameters": { + "deviceId": { + "description": "The ID of the device.", + "location": "path", + "required": true, + "type": "string" + }, + "enterpriseId": { + "description": "The ID of the enterprise.", + "location": "path", + "required": true, + "type": "string" + }, + "updateMask": { + "description": "Mask that identifies which fields to update. If not set, all modifiable fields will be modified.\n\nWhen set in a query parameter, this field should be specified as updateMask=\u003cfield1\u003e,\u003cfield2\u003e,...", + "location": "query", + "type": "string" + }, + "userId": { + "description": "The ID of the user.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "enterprises/{enterpriseId}/users/{userId}/devices/{deviceId}", + "request": { + "$ref": "Device" + }, + "response": { + "$ref": "Device" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidenterprise" + ] + }, + "setState": { + "description": "Sets whether a device's access to Google services is enabled or disabled. The device state takes effect only if enforcing EMM policies on Android devices is enabled in the Google Admin Console. Otherwise, the device state is ignored and all devices are allowed access to Google services. This is only supported for Google-managed users.", + "httpMethod": "PUT", + "id": "androidenterprise.devices.setState", + "parameterOrder": [ + "enterpriseId", + "userId", + "deviceId" + ], + "parameters": { + "deviceId": { + "description": "The ID of the device.", + "location": "path", + "required": true, + "type": "string" + }, + "enterpriseId": { + "description": "The ID of the enterprise.", + "location": "path", + "required": true, + "type": "string" + }, + "userId": { + "description": "The ID of the user.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "enterprises/{enterpriseId}/users/{userId}/devices/{deviceId}/state", + "request": { + "$ref": "DeviceState" + }, + "response": { + "$ref": "DeviceState" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidenterprise" + ] + }, + "update": { + "description": "Updates the device policy", + "httpMethod": "PUT", + "id": "androidenterprise.devices.update", + "parameterOrder": [ + "enterpriseId", + "userId", + "deviceId" + ], + "parameters": { + "deviceId": { + "description": "The ID of the device.", + "location": "path", + "required": true, + "type": "string" + }, + "enterpriseId": { + "description": "The ID of the enterprise.", + "location": "path", + "required": true, + "type": "string" + }, + "updateMask": { + "description": "Mask that identifies which fields to update. If not set, all modifiable fields will be modified.\n\nWhen set in a query parameter, this field should be specified as updateMask=\u003cfield1\u003e,\u003cfield2\u003e,...", + "location": "query", + "type": "string" + }, + "userId": { + "description": "The ID of the user.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "enterprises/{enterpriseId}/users/{userId}/devices/{deviceId}", + "request": { + "$ref": "Device" + }, + "response": { + "$ref": "Device" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidenterprise" + ] + } + } }, - "versionCode": { - "type": "integer", - "description": "Unique increasing identifier for the app version.", - "format": "int32" + "enterprises": { + "methods": { + "acknowledgeNotificationSet": { + "description": "Acknowledges notifications that were received from Enterprises.PullNotificationSet to prevent subsequent calls from returning the same notifications.", + "httpMethod": "POST", + "id": "androidenterprise.enterprises.acknowledgeNotificationSet", + "parameters": { + "notificationSetId": { + "description": "The notification set ID as returned by Enterprises.PullNotificationSet. This must be provided.", + "location": "query", + "type": "string" + } + }, + "path": "enterprises/acknowledgeNotificationSet", + "scopes": [ + "https://www.googleapis.com/auth/androidenterprise" + ] + }, + "completeSignup": { + "description": "Completes the signup flow, by specifying the Completion token and Enterprise token. This request must not be called multiple times for a given Enterprise Token.", + "httpMethod": "POST", + "id": "androidenterprise.enterprises.completeSignup", + "parameters": { + "completionToken": { + "description": "The Completion token initially returned by GenerateSignupUrl.", + "location": "query", + "type": "string" + }, + "enterpriseToken": { + "description": "The Enterprise token appended to the Callback URL.", + "location": "query", + "type": "string" + } + }, + "path": "enterprises/completeSignup", + "response": { + "$ref": "Enterprise" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidenterprise" + ] + }, + "createWebToken": { + "description": "Returns a unique token to access an embeddable UI. To generate a web UI, pass the generated token into the managed Google Play javascript API. Each token may only be used to start one UI session. See the javascript API documentation for further information.", + "httpMethod": "POST", + "id": "androidenterprise.enterprises.createWebToken", + "parameterOrder": [ + "enterpriseId" + ], + "parameters": { + "enterpriseId": { + "description": "The ID of the enterprise.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "enterprises/{enterpriseId}/createWebToken", + "request": { + "$ref": "AdministratorWebTokenSpec" + }, + "response": { + "$ref": "AdministratorWebToken" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidenterprise" + ] + }, + "delete": { + "description": "Deletes the binding between the EMM and enterprise. This is now deprecated. Use this method only to unenroll customers that were previously enrolled with the insert call, then enroll them again with the enroll call.", + "httpMethod": "DELETE", + "id": "androidenterprise.enterprises.delete", + "parameterOrder": [ + "enterpriseId" + ], + "parameters": { + "enterpriseId": { + "description": "The ID of the enterprise.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "enterprises/{enterpriseId}", + "scopes": [ + "https://www.googleapis.com/auth/androidenterprise" + ] + }, + "enroll": { + "description": "Enrolls an enterprise with the calling EMM.", + "httpMethod": "POST", + "id": "androidenterprise.enterprises.enroll", + "parameterOrder": [ + "token" + ], + "parameters": { + "token": { + "description": "The token provided by the enterprise to register the EMM.", + "location": "query", + "required": true, + "type": "string" + } + }, + "path": "enterprises/enroll", + "request": { + "$ref": "Enterprise" + }, + "response": { + "$ref": "Enterprise" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidenterprise" + ] + }, + "generateSignupUrl": { + "description": "Generates a sign-up URL.", + "httpMethod": "POST", + "id": "androidenterprise.enterprises.generateSignupUrl", + "parameters": { + "callbackUrl": { + "description": "The callback URL to which the Admin will be redirected after successfully creating an enterprise. Before redirecting there the system will add a single query parameter to this URL named \"enterpriseToken\" which will contain an opaque token to be used for the CompleteSignup request.\nBeware that this means that the URL will be parsed, the parameter added and then a new URL formatted, i.e. there may be some minor formatting changes and, more importantly, the URL must be well-formed so that it can be parsed.", + "location": "query", + "type": "string" + } + }, + "path": "enterprises/signupUrl", + "response": { + "$ref": "SignupInfo" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidenterprise" + ] + }, + "get": { + "description": "Retrieves the name and domain of an enterprise.", + "httpMethod": "GET", + "id": "androidenterprise.enterprises.get", + "parameterOrder": [ + "enterpriseId" + ], + "parameters": { + "enterpriseId": { + "description": "The ID of the enterprise.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "enterprises/{enterpriseId}", + "response": { + "$ref": "Enterprise" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidenterprise" + ] + }, + "getAndroidDevicePolicyConfig": { + "description": "Returns the Android Device Policy config resource.", + "httpMethod": "GET", + "id": "androidenterprise.enterprises.getAndroidDevicePolicyConfig", + "parameterOrder": [ + "enterpriseId" + ], + "parameters": { + "enterpriseId": { + "description": "The ID of the enterprise.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "enterprises/{enterpriseId}/androidDevicePolicyConfig", + "response": { + "$ref": "AndroidDevicePolicyConfig" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidenterprise" + ] + }, + "getServiceAccount": { + "description": "Returns a service account and credentials. The service account can be bound to the enterprise by calling setAccount. The service account is unique to this enterprise and EMM, and will be deleted if the enterprise is unbound. The credentials contain private key data and are not stored server-side.\n\nThis method can only be called after calling Enterprises.Enroll or Enterprises.CompleteSignup, and before Enterprises.SetAccount; at other times it will return an error.\n\nSubsequent calls after the first will generate a new, unique set of credentials, and invalidate the previously generated credentials.\n\nOnce the service account is bound to the enterprise, it can be managed using the serviceAccountKeys resource.", + "httpMethod": "GET", + "id": "androidenterprise.enterprises.getServiceAccount", + "parameterOrder": [ + "enterpriseId" + ], + "parameters": { + "enterpriseId": { + "description": "The ID of the enterprise.", + "location": "path", + "required": true, + "type": "string" + }, + "keyType": { + "description": "The type of credential to return with the service account. Required.", + "enum": [ + "googleCredentials", + "pkcs12" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + } + }, + "path": "enterprises/{enterpriseId}/serviceAccount", + "response": { + "$ref": "ServiceAccount" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidenterprise" + ] + }, + "getStoreLayout": { + "description": "Returns the store layout for the enterprise. If the store layout has not been set, returns \"basic\" as the store layout type and no homepage.", + "httpMethod": "GET", + "id": "androidenterprise.enterprises.getStoreLayout", + "parameterOrder": [ + "enterpriseId" + ], + "parameters": { + "enterpriseId": { + "description": "The ID of the enterprise.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "enterprises/{enterpriseId}/storeLayout", + "response": { + "$ref": "StoreLayout" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidenterprise" + ] + }, + "insert": { + "description": "Establishes the binding between the EMM and an enterprise. This is now deprecated; use enroll instead.", + "httpMethod": "POST", + "id": "androidenterprise.enterprises.insert", + "parameterOrder": [ + "token" + ], + "parameters": { + "token": { + "description": "The token provided by the enterprise to register the EMM.", + "location": "query", + "required": true, + "type": "string" + } + }, + "path": "enterprises", + "request": { + "$ref": "Enterprise" + }, + "response": { + "$ref": "Enterprise" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidenterprise" + ] + }, + "list": { + "description": "Looks up an enterprise by domain name. This is only supported for enterprises created via the Google-initiated creation flow. Lookup of the id is not needed for enterprises created via the EMM-initiated flow since the EMM learns the enterprise ID in the callback specified in the Enterprises.generateSignupUrl call.", + "httpMethod": "GET", + "id": "androidenterprise.enterprises.list", + "parameterOrder": [ + "domain" + ], + "parameters": { + "domain": { + "description": "The exact primary domain name of the enterprise to look up.", + "location": "query", + "required": true, + "type": "string" + } + }, + "path": "enterprises", + "response": { + "$ref": "EnterprisesListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidenterprise" + ] + }, + "pullNotificationSet": { + "description": "Pulls and returns a notification set for the enterprises associated with the service account authenticated for the request. The notification set may be empty if no notification are pending.\nA notification set returned needs to be acknowledged within 20 seconds by calling Enterprises.AcknowledgeNotificationSet, unless the notification set is empty.\nNotifications that are not acknowledged within the 20 seconds will eventually be included again in the response to another PullNotificationSet request, and those that are never acknowledged will ultimately be deleted according to the Google Cloud Platform Pub/Sub system policy.\nMultiple requests might be performed concurrently to retrieve notifications, in which case the pending notifications (if any) will be split among each caller, if any are pending.\nIf no notifications are present, an empty notification list is returned. Subsequent requests may return more notifications once they become available.", + "httpMethod": "POST", + "id": "androidenterprise.enterprises.pullNotificationSet", + "parameters": { + "requestMode": { + "description": "The request mode for pulling notifications.\nSpecifying waitForNotifications will cause the request to block and wait until one or more notifications are present, or return an empty notification list if no notifications are present after some time.\nSpeciying returnImmediately will cause the request to immediately return the pending notifications, or an empty list if no notifications are present.\nIf omitted, defaults to waitForNotifications.", + "enum": [ + "returnImmediately", + "waitForNotifications" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + } + }, + "path": "enterprises/pullNotificationSet", + "response": { + "$ref": "NotificationSet" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidenterprise" + ] + }, + "sendTestPushNotification": { + "description": "Sends a test notification to validate the EMM integration with the Google Cloud Pub/Sub service for this enterprise.", + "httpMethod": "POST", + "id": "androidenterprise.enterprises.sendTestPushNotification", + "parameterOrder": [ + "enterpriseId" + ], + "parameters": { + "enterpriseId": { + "description": "The ID of the enterprise.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "enterprises/{enterpriseId}/sendTestPushNotification", + "response": { + "$ref": "EnterprisesSendTestPushNotificationResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidenterprise" + ] + }, + "setAccount": { + "description": "Sets the account that will be used to authenticate to the API as the enterprise.", + "httpMethod": "PUT", + "id": "androidenterprise.enterprises.setAccount", + "parameterOrder": [ + "enterpriseId" + ], + "parameters": { + "enterpriseId": { + "description": "The ID of the enterprise.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "enterprises/{enterpriseId}/account", + "request": { + "$ref": "EnterpriseAccount" + }, + "response": { + "$ref": "EnterpriseAccount" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidenterprise" + ] + }, + "setAndroidDevicePolicyConfig": { + "description": "Sets the Android Device Policy config resource. EMM may use this method to enable or disable Android Device Policy support for the specified enterprise. To learn more about managing devices and apps with Android Device Policy, see the Android Management API.", + "httpMethod": "PUT", + "id": "androidenterprise.enterprises.setAndroidDevicePolicyConfig", + "parameterOrder": [ + "enterpriseId" + ], + "parameters": { + "enterpriseId": { + "description": "The ID of the enterprise.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "enterprises/{enterpriseId}/androidDevicePolicyConfig", + "request": { + "$ref": "AndroidDevicePolicyConfig" + }, + "response": { + "$ref": "AndroidDevicePolicyConfig" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidenterprise" + ] + }, + "setStoreLayout": { + "description": "Sets the store layout for the enterprise. By default, storeLayoutType is set to \"basic\" and the basic store layout is enabled. The basic layout only contains apps approved by the admin, and that have been added to the available product set for a user (using the setAvailableProductSet call). Apps on the page are sorted in order of their product ID value. If you create a custom store layout (by setting storeLayoutType = \"custom\" and setting a homepage), the basic store layout is disabled.", + "httpMethod": "PUT", + "id": "androidenterprise.enterprises.setStoreLayout", + "parameterOrder": [ + "enterpriseId" + ], + "parameters": { + "enterpriseId": { + "description": "The ID of the enterprise.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "enterprises/{enterpriseId}/storeLayout", + "request": { + "$ref": "StoreLayout" + }, + "response": { + "$ref": "StoreLayout" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidenterprise" + ] + }, + "unenroll": { + "description": "Unenrolls an enterprise from the calling EMM.", + "httpMethod": "POST", + "id": "androidenterprise.enterprises.unenroll", + "parameterOrder": [ + "enterpriseId" + ], + "parameters": { + "enterpriseId": { + "description": "The ID of the enterprise.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "enterprises/{enterpriseId}/unenroll", + "scopes": [ + "https://www.googleapis.com/auth/androidenterprise" + ] + } + } }, - "versionString": { - "type": "string", - "description": "The string used in the Play store by the app developer to identify the version. The string is not necessarily unique or localized (for example, the string could be \"1.4\")." - } - } - }, - "ApprovalUrlInfo": { - "id": "ApprovalUrlInfo", - "type": "object", - "description": "Information on an approval URL.", - "properties": { - "approvalUrl": { - "type": "string", - "description": "A URL that displays a product's permissions and that can also be used to approve the product with the Products.approve call." + "entitlements": { + "methods": { + "delete": { + "description": "Removes an entitlement to an app for a user.", + "httpMethod": "DELETE", + "id": "androidenterprise.entitlements.delete", + "parameterOrder": [ + "enterpriseId", + "userId", + "entitlementId" + ], + "parameters": { + "enterpriseId": { + "description": "The ID of the enterprise.", + "location": "path", + "required": true, + "type": "string" + }, + "entitlementId": { + "description": "The ID of the entitlement (a product ID), e.g. \"app:com.google.android.gm\".", + "location": "path", + "required": true, + "type": "string" + }, + "userId": { + "description": "The ID of the user.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "enterprises/{enterpriseId}/users/{userId}/entitlements/{entitlementId}", + "scopes": [ + "https://www.googleapis.com/auth/androidenterprise" + ] + }, + "get": { + "description": "Retrieves details of an entitlement.", + "httpMethod": "GET", + "id": "androidenterprise.entitlements.get", + "parameterOrder": [ + "enterpriseId", + "userId", + "entitlementId" + ], + "parameters": { + "enterpriseId": { + "description": "The ID of the enterprise.", + "location": "path", + "required": true, + "type": "string" + }, + "entitlementId": { + "description": "The ID of the entitlement (a product ID), e.g. \"app:com.google.android.gm\".", + "location": "path", + "required": true, + "type": "string" + }, + "userId": { + "description": "The ID of the user.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "enterprises/{enterpriseId}/users/{userId}/entitlements/{entitlementId}", + "response": { + "$ref": "Entitlement" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidenterprise" + ] + }, + "list": { + "description": "Lists all entitlements for the specified user. Only the ID is set.", + "httpMethod": "GET", + "id": "androidenterprise.entitlements.list", + "parameterOrder": [ + "enterpriseId", + "userId" + ], + "parameters": { + "enterpriseId": { + "description": "The ID of the enterprise.", + "location": "path", + "required": true, + "type": "string" + }, + "userId": { + "description": "The ID of the user.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "enterprises/{enterpriseId}/users/{userId}/entitlements", + "response": { + "$ref": "EntitlementsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidenterprise" + ] + }, + "patch": { + "description": "Adds or updates an entitlement to an app for a user. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "androidenterprise.entitlements.patch", + "parameterOrder": [ + "enterpriseId", + "userId", + "entitlementId" + ], + "parameters": { + "enterpriseId": { + "description": "The ID of the enterprise.", + "location": "path", + "required": true, + "type": "string" + }, + "entitlementId": { + "description": "The ID of the entitlement (a product ID), e.g. \"app:com.google.android.gm\".", + "location": "path", + "required": true, + "type": "string" + }, + "install": { + "description": "Set to true to also install the product on all the user's devices where possible. Failure to install on one or more devices will not prevent this operation from returning successfully, as long as the entitlement was successfully assigned to the user.", + "location": "query", + "type": "boolean" + }, + "userId": { + "description": "The ID of the user.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "enterprises/{enterpriseId}/users/{userId}/entitlements/{entitlementId}", + "request": { + "$ref": "Entitlement" + }, + "response": { + "$ref": "Entitlement" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidenterprise" + ] + }, + "update": { + "description": "Adds or updates an entitlement to an app for a user.", + "httpMethod": "PUT", + "id": "androidenterprise.entitlements.update", + "parameterOrder": [ + "enterpriseId", + "userId", + "entitlementId" + ], + "parameters": { + "enterpriseId": { + "description": "The ID of the enterprise.", + "location": "path", + "required": true, + "type": "string" + }, + "entitlementId": { + "description": "The ID of the entitlement (a product ID), e.g. \"app:com.google.android.gm\".", + "location": "path", + "required": true, + "type": "string" + }, + "install": { + "description": "Set to true to also install the product on all the user's devices where possible. Failure to install on one or more devices will not prevent this operation from returning successfully, as long as the entitlement was successfully assigned to the user.", + "location": "query", + "type": "boolean" + }, + "userId": { + "description": "The ID of the user.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "enterprises/{enterpriseId}/users/{userId}/entitlements/{entitlementId}", + "request": { + "$ref": "Entitlement" + }, + "response": { + "$ref": "Entitlement" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidenterprise" + ] + } + } }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"androidenterprise#approvalUrlInfo\".", - "default": "androidenterprise#approvalUrlInfo" - } - } - }, - "AuthenticationToken": { - "id": "AuthenticationToken", - "type": "object", - "description": "An AuthenticationToken is used by the EMM's device policy client on a device to provision the given EMM-managed user on that device.", - "properties": { - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"androidenterprise#authenticationToken\".", - "default": "androidenterprise#authenticationToken" + "grouplicenses": { + "methods": { + "get": { + "description": "Retrieves details of an enterprise's group license for a product.", + "httpMethod": "GET", + "id": "androidenterprise.grouplicenses.get", + "parameterOrder": [ + "enterpriseId", + "groupLicenseId" + ], + "parameters": { + "enterpriseId": { + "description": "The ID of the enterprise.", + "location": "path", + "required": true, + "type": "string" + }, + "groupLicenseId": { + "description": "The ID of the product the group license is for, e.g. \"app:com.google.android.gm\".", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "enterprises/{enterpriseId}/groupLicenses/{groupLicenseId}", + "response": { + "$ref": "GroupLicense" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidenterprise" + ] + }, + "list": { + "description": "Retrieves IDs of all products for which the enterprise has a group license.", + "httpMethod": "GET", + "id": "androidenterprise.grouplicenses.list", + "parameterOrder": [ + "enterpriseId" + ], + "parameters": { + "enterpriseId": { + "description": "The ID of the enterprise.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "enterprises/{enterpriseId}/groupLicenses", + "response": { + "$ref": "GroupLicensesListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidenterprise" + ] + } + } }, - "token": { - "type": "string", - "description": "The authentication token to be passed to the device policy client on the device where it can be used to provision the account for which this token was generated." - } - } - }, - "ConfigurationVariables": { - "id": "ConfigurationVariables", - "type": "object", - "description": "A configuration variables resource contains the managed configuration settings ID to be applied to a single user, as well as the variable set that is attributed to the user. The variable set will be used to replace placeholders in the managed configuration settings.", - "properties": { - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"androidenterprise#configurationVariables\".", - "default": "androidenterprise#configurationVariables" + "grouplicenseusers": { + "methods": { + "list": { + "description": "Retrieves the IDs of the users who have been granted entitlements under the license.", + "httpMethod": "GET", + "id": "androidenterprise.grouplicenseusers.list", + "parameterOrder": [ + "enterpriseId", + "groupLicenseId" + ], + "parameters": { + "enterpriseId": { + "description": "The ID of the enterprise.", + "location": "path", + "required": true, + "type": "string" + }, + "groupLicenseId": { + "description": "The ID of the product the group license is for, e.g. \"app:com.google.android.gm\".", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "enterprises/{enterpriseId}/groupLicenses/{groupLicenseId}/users", + "response": { + "$ref": "GroupLicenseUsersListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidenterprise" + ] + } + } }, - "mcmId": { - "type": "string", - "description": "The ID of the managed configurations settings." + "installs": { + "methods": { + "delete": { + "description": "Requests to remove an app from a device. A call to get or list will still show the app as installed on the device until it is actually removed.", + "httpMethod": "DELETE", + "id": "androidenterprise.installs.delete", + "parameterOrder": [ + "enterpriseId", + "userId", + "deviceId", + "installId" + ], + "parameters": { + "deviceId": { + "description": "The Android ID of the device.", + "location": "path", + "required": true, + "type": "string" + }, + "enterpriseId": { + "description": "The ID of the enterprise.", + "location": "path", + "required": true, + "type": "string" + }, + "installId": { + "description": "The ID of the product represented by the install, e.g. \"app:com.google.android.gm\".", + "location": "path", + "required": true, + "type": "string" + }, + "userId": { + "description": "The ID of the user.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "enterprises/{enterpriseId}/users/{userId}/devices/{deviceId}/installs/{installId}", + "scopes": [ + "https://www.googleapis.com/auth/androidenterprise" + ] + }, + "get": { + "description": "Retrieves details of an installation of an app on a device.", + "httpMethod": "GET", + "id": "androidenterprise.installs.get", + "parameterOrder": [ + "enterpriseId", + "userId", + "deviceId", + "installId" + ], + "parameters": { + "deviceId": { + "description": "The Android ID of the device.", + "location": "path", + "required": true, + "type": "string" + }, + "enterpriseId": { + "description": "The ID of the enterprise.", + "location": "path", + "required": true, + "type": "string" + }, + "installId": { + "description": "The ID of the product represented by the install, e.g. \"app:com.google.android.gm\".", + "location": "path", + "required": true, + "type": "string" + }, + "userId": { + "description": "The ID of the user.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "enterprises/{enterpriseId}/users/{userId}/devices/{deviceId}/installs/{installId}", + "response": { + "$ref": "Install" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidenterprise" + ] + }, + "list": { + "description": "Retrieves the details of all apps installed on the specified device.", + "httpMethod": "GET", + "id": "androidenterprise.installs.list", + "parameterOrder": [ + "enterpriseId", + "userId", + "deviceId" + ], + "parameters": { + "deviceId": { + "description": "The Android ID of the device.", + "location": "path", + "required": true, + "type": "string" + }, + "enterpriseId": { + "description": "The ID of the enterprise.", + "location": "path", + "required": true, + "type": "string" + }, + "userId": { + "description": "The ID of the user.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "enterprises/{enterpriseId}/users/{userId}/devices/{deviceId}/installs", + "response": { + "$ref": "InstallsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidenterprise" + ] + }, + "patch": { + "description": "Requests to install the latest version of an app to a device. If the app is already installed, then it is updated to the latest version if necessary. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "androidenterprise.installs.patch", + "parameterOrder": [ + "enterpriseId", + "userId", + "deviceId", + "installId" + ], + "parameters": { + "deviceId": { + "description": "The Android ID of the device.", + "location": "path", + "required": true, + "type": "string" + }, + "enterpriseId": { + "description": "The ID of the enterprise.", + "location": "path", + "required": true, + "type": "string" + }, + "installId": { + "description": "The ID of the product represented by the install, e.g. \"app:com.google.android.gm\".", + "location": "path", + "required": true, + "type": "string" + }, + "userId": { + "description": "The ID of the user.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "enterprises/{enterpriseId}/users/{userId}/devices/{deviceId}/installs/{installId}", + "request": { + "$ref": "Install" + }, + "response": { + "$ref": "Install" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidenterprise" + ] + }, + "update": { + "description": "Requests to install the latest version of an app to a device. If the app is already installed, then it is updated to the latest version if necessary.", + "httpMethod": "PUT", + "id": "androidenterprise.installs.update", + "parameterOrder": [ + "enterpriseId", + "userId", + "deviceId", + "installId" + ], + "parameters": { + "deviceId": { + "description": "The Android ID of the device.", + "location": "path", + "required": true, + "type": "string" + }, + "enterpriseId": { + "description": "The ID of the enterprise.", + "location": "path", + "required": true, + "type": "string" + }, + "installId": { + "description": "The ID of the product represented by the install, e.g. \"app:com.google.android.gm\".", + "location": "path", + "required": true, + "type": "string" + }, + "userId": { + "description": "The ID of the user.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "enterprises/{enterpriseId}/users/{userId}/devices/{deviceId}/installs/{installId}", + "request": { + "$ref": "Install" + }, + "response": { + "$ref": "Install" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidenterprise" + ] + } + } }, - "variableSet": { - "type": "array", - "description": "The variable set that is attributed to the user.", - "items": { - "$ref": "VariableSet" - } - } - } - }, - "Device": { - "id": "Device", - "type": "object", - "description": "A Devices resource represents a mobile device managed by the EMM and belonging to a specific enterprise user.", - "properties": { - "androidId": { - "type": "string", - "description": "The Google Play Services Android ID for the device encoded as a lowercase hex string. For example, \"123456789abcdef0\"." + "managedconfigurationsfordevice": { + "methods": { + "delete": { + "description": "Removes a per-device managed configuration for an app for the specified device.", + "httpMethod": "DELETE", + "id": "androidenterprise.managedconfigurationsfordevice.delete", + "parameterOrder": [ + "enterpriseId", + "userId", + "deviceId", + "managedConfigurationForDeviceId" + ], + "parameters": { + "deviceId": { + "description": "The Android ID of the device.", + "location": "path", + "required": true, + "type": "string" + }, + "enterpriseId": { + "description": "The ID of the enterprise.", + "location": "path", + "required": true, + "type": "string" + }, + "managedConfigurationForDeviceId": { + "description": "The ID of the managed configuration (a product ID), e.g. \"app:com.google.android.gm\".", + "location": "path", + "required": true, + "type": "string" + }, + "userId": { + "description": "The ID of the user.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "enterprises/{enterpriseId}/users/{userId}/devices/{deviceId}/managedConfigurationsForDevice/{managedConfigurationForDeviceId}", + "scopes": [ + "https://www.googleapis.com/auth/androidenterprise" + ] + }, + "get": { + "description": "Retrieves details of a per-device managed configuration.", + "httpMethod": "GET", + "id": "androidenterprise.managedconfigurationsfordevice.get", + "parameterOrder": [ + "enterpriseId", + "userId", + "deviceId", + "managedConfigurationForDeviceId" + ], + "parameters": { + "deviceId": { + "description": "The Android ID of the device.", + "location": "path", + "required": true, + "type": "string" + }, + "enterpriseId": { + "description": "The ID of the enterprise.", + "location": "path", + "required": true, + "type": "string" + }, + "managedConfigurationForDeviceId": { + "description": "The ID of the managed configuration (a product ID), e.g. \"app:com.google.android.gm\".", + "location": "path", + "required": true, + "type": "string" + }, + "userId": { + "description": "The ID of the user.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "enterprises/{enterpriseId}/users/{userId}/devices/{deviceId}/managedConfigurationsForDevice/{managedConfigurationForDeviceId}", + "response": { + "$ref": "ManagedConfiguration" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidenterprise" + ] + }, + "list": { + "description": "Lists all the per-device managed configurations for the specified device. Only the ID is set.", + "httpMethod": "GET", + "id": "androidenterprise.managedconfigurationsfordevice.list", + "parameterOrder": [ + "enterpriseId", + "userId", + "deviceId" + ], + "parameters": { + "deviceId": { + "description": "The Android ID of the device.", + "location": "path", + "required": true, + "type": "string" + }, + "enterpriseId": { + "description": "The ID of the enterprise.", + "location": "path", + "required": true, + "type": "string" + }, + "userId": { + "description": "The ID of the user.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "enterprises/{enterpriseId}/users/{userId}/devices/{deviceId}/managedConfigurationsForDevice", + "response": { + "$ref": "ManagedConfigurationsForDeviceListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidenterprise" + ] + }, + "patch": { + "description": "Adds or updates a per-device managed configuration for an app for the specified device. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "androidenterprise.managedconfigurationsfordevice.patch", + "parameterOrder": [ + "enterpriseId", + "userId", + "deviceId", + "managedConfigurationForDeviceId" + ], + "parameters": { + "deviceId": { + "description": "The Android ID of the device.", + "location": "path", + "required": true, + "type": "string" + }, + "enterpriseId": { + "description": "The ID of the enterprise.", + "location": "path", + "required": true, + "type": "string" + }, + "managedConfigurationForDeviceId": { + "description": "The ID of the managed configuration (a product ID), e.g. \"app:com.google.android.gm\".", + "location": "path", + "required": true, + "type": "string" + }, + "userId": { + "description": "The ID of the user.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "enterprises/{enterpriseId}/users/{userId}/devices/{deviceId}/managedConfigurationsForDevice/{managedConfigurationForDeviceId}", + "request": { + "$ref": "ManagedConfiguration" + }, + "response": { + "$ref": "ManagedConfiguration" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidenterprise" + ] + }, + "update": { + "description": "Adds or updates a per-device managed configuration for an app for the specified device.", + "httpMethod": "PUT", + "id": "androidenterprise.managedconfigurationsfordevice.update", + "parameterOrder": [ + "enterpriseId", + "userId", + "deviceId", + "managedConfigurationForDeviceId" + ], + "parameters": { + "deviceId": { + "description": "The Android ID of the device.", + "location": "path", + "required": true, + "type": "string" + }, + "enterpriseId": { + "description": "The ID of the enterprise.", + "location": "path", + "required": true, + "type": "string" + }, + "managedConfigurationForDeviceId": { + "description": "The ID of the managed configuration (a product ID), e.g. \"app:com.google.android.gm\".", + "location": "path", + "required": true, + "type": "string" + }, + "userId": { + "description": "The ID of the user.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "enterprises/{enterpriseId}/users/{userId}/devices/{deviceId}/managedConfigurationsForDevice/{managedConfigurationForDeviceId}", + "request": { + "$ref": "ManagedConfiguration" + }, + "response": { + "$ref": "ManagedConfiguration" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidenterprise" + ] + } + } }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"androidenterprise#device\".", - "default": "androidenterprise#device" + "managedconfigurationsforuser": { + "methods": { + "delete": { + "description": "Removes a per-user managed configuration for an app for the specified user.", + "httpMethod": "DELETE", + "id": "androidenterprise.managedconfigurationsforuser.delete", + "parameterOrder": [ + "enterpriseId", + "userId", + "managedConfigurationForUserId" + ], + "parameters": { + "enterpriseId": { + "description": "The ID of the enterprise.", + "location": "path", + "required": true, + "type": "string" + }, + "managedConfigurationForUserId": { + "description": "The ID of the managed configuration (a product ID), e.g. \"app:com.google.android.gm\".", + "location": "path", + "required": true, + "type": "string" + }, + "userId": { + "description": "The ID of the user.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "enterprises/{enterpriseId}/users/{userId}/managedConfigurationsForUser/{managedConfigurationForUserId}", + "scopes": [ + "https://www.googleapis.com/auth/androidenterprise" + ] + }, + "get": { + "description": "Retrieves details of a per-user managed configuration for an app for the specified user.", + "httpMethod": "GET", + "id": "androidenterprise.managedconfigurationsforuser.get", + "parameterOrder": [ + "enterpriseId", + "userId", + "managedConfigurationForUserId" + ], + "parameters": { + "enterpriseId": { + "description": "The ID of the enterprise.", + "location": "path", + "required": true, + "type": "string" + }, + "managedConfigurationForUserId": { + "description": "The ID of the managed configuration (a product ID), e.g. \"app:com.google.android.gm\".", + "location": "path", + "required": true, + "type": "string" + }, + "userId": { + "description": "The ID of the user.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "enterprises/{enterpriseId}/users/{userId}/managedConfigurationsForUser/{managedConfigurationForUserId}", + "response": { + "$ref": "ManagedConfiguration" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidenterprise" + ] + }, + "list": { + "description": "Lists all the per-user managed configurations for the specified user. Only the ID is set.", + "httpMethod": "GET", + "id": "androidenterprise.managedconfigurationsforuser.list", + "parameterOrder": [ + "enterpriseId", + "userId" + ], + "parameters": { + "enterpriseId": { + "description": "The ID of the enterprise.", + "location": "path", + "required": true, + "type": "string" + }, + "userId": { + "description": "The ID of the user.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "enterprises/{enterpriseId}/users/{userId}/managedConfigurationsForUser", + "response": { + "$ref": "ManagedConfigurationsForUserListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidenterprise" + ] + }, + "patch": { + "description": "Adds or updates the managed configuration settings for an app for the specified user. If you support the Managed configurations iframe, you can apply managed configurations to a user by specifying an mcmId and its associated configuration variables (if any) in the request. Alternatively, all EMMs can apply managed configurations by passing a list of managed properties. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "androidenterprise.managedconfigurationsforuser.patch", + "parameterOrder": [ + "enterpriseId", + "userId", + "managedConfigurationForUserId" + ], + "parameters": { + "enterpriseId": { + "description": "The ID of the enterprise.", + "location": "path", + "required": true, + "type": "string" + }, + "managedConfigurationForUserId": { + "description": "The ID of the managed configuration (a product ID), e.g. \"app:com.google.android.gm\".", + "location": "path", + "required": true, + "type": "string" + }, + "userId": { + "description": "The ID of the user.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "enterprises/{enterpriseId}/users/{userId}/managedConfigurationsForUser/{managedConfigurationForUserId}", + "request": { + "$ref": "ManagedConfiguration" + }, + "response": { + "$ref": "ManagedConfiguration" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidenterprise" + ] + }, + "update": { + "description": "Adds or updates the managed configuration settings for an app for the specified user. If you support the Managed configurations iframe, you can apply managed configurations to a user by specifying an mcmId and its associated configuration variables (if any) in the request. Alternatively, all EMMs can apply managed configurations by passing a list of managed properties.", + "httpMethod": "PUT", + "id": "androidenterprise.managedconfigurationsforuser.update", + "parameterOrder": [ + "enterpriseId", + "userId", + "managedConfigurationForUserId" + ], + "parameters": { + "enterpriseId": { + "description": "The ID of the enterprise.", + "location": "path", + "required": true, + "type": "string" + }, + "managedConfigurationForUserId": { + "description": "The ID of the managed configuration (a product ID), e.g. \"app:com.google.android.gm\".", + "location": "path", + "required": true, + "type": "string" + }, + "userId": { + "description": "The ID of the user.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "enterprises/{enterpriseId}/users/{userId}/managedConfigurationsForUser/{managedConfigurationForUserId}", + "request": { + "$ref": "ManagedConfiguration" + }, + "response": { + "$ref": "ManagedConfiguration" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidenterprise" + ] + } + } }, - "managementType": { - "type": "string", - "description": "Identifies the extent to which the device is controlled by a managed Google Play EMM in various deployment configurations.\n\nPossible values include: \n- \"managedDevice\", a device that has the EMM's device policy controller (DPC) as the device owner. \n- \"managedProfile\", a device that has a profile managed by the DPC (DPC is profile owner) in addition to a separate, personal profile that is unavailable to the DPC. \n- \"containerApp\", no longer used (deprecated). \n- \"unmanagedProfile\", a device that has been allowed (by the domain's admin, using the Admin Console to enable the privilege) to use managed Google Play, but the profile is itself not owned by a DPC." - }, - "policy": { - "$ref": "Policy", - "description": "The policy enforced on the device." - } - } - }, - "DeviceState": { - "id": "DeviceState", - "type": "object", - "description": "The state of a user's device, as accessed by the getState and setState methods on device resources.", - "properties": { - "accountState": { - "type": "string", - "description": "The state of the Google account on the device. \"enabled\" indicates that the Google account on the device can be used to access Google services (including Google Play), while \"disabled\" means that it cannot. A new device is initially in the \"disabled\" state." - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"androidenterprise#deviceState\".", - "default": "androidenterprise#deviceState" - } - } - }, - "DevicesListResponse": { - "id": "DevicesListResponse", - "type": "object", - "description": "The device resources for the user.", - "properties": { - "device": { - "type": "array", - "description": "A managed device.", - "items": { - "$ref": "Device" - } - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"androidenterprise#devicesListResponse\".", - "default": "androidenterprise#devicesListResponse" - } - } - }, - "Enterprise": { - "id": "Enterprise", - "type": "object", - "description": "An Enterprises resource represents the binding between an EMM and a specific organization. That binding can be instantiated in one of two different ways using this API as follows: \n- For Google managed domain customers, the process involves using Enterprises.enroll and Enterprises.setAccount (in conjunction with artifacts obtained from the Admin console and the Google API Console) and submitted to the EMM through a more-or-less manual process. \n- For managed Google Play Accounts customers, the process involves using Enterprises.generateSignupUrl and Enterprises.completeSignup in conjunction with the managed Google Play sign-up UI (Google-provided mechanism) to create the binding without manual steps. As an EMM, you can support either or both approaches in your EMM console. See Create an Enterprise for details.", - "properties": { - "administrator": { - "type": "array", - "description": "Admins of the enterprise. This is only supported for enterprises created via the EMM-initiated flow.", - "items": { - "$ref": "Administrator" - } - }, - "id": { - "type": "string", - "description": "The unique ID for the enterprise." - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"androidenterprise#enterprise\".", - "default": "androidenterprise#enterprise" - }, - "name": { - "type": "string", - "description": "The name of the enterprise, for example, \"Example, Inc\"." - }, - "primaryDomain": { - "type": "string", - "description": "The enterprise's primary domain, such as \"example.com\".", - "annotations": { - "required": [ - "androidenterprise.enterprises.insert" - ] - } - } - } - }, - "EnterpriseAccount": { - "id": "EnterpriseAccount", - "type": "object", - "description": "A service account that can be used to authenticate as the enterprise to API calls that require such authentication.", - "properties": { - "accountEmail": { - "type": "string", - "description": "The email address of the service account." - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"androidenterprise#enterpriseAccount\".", - "default": "androidenterprise#enterpriseAccount" - } - } - }, - "EnterprisesListResponse": { - "id": "EnterprisesListResponse", - "type": "object", - "description": "The matching enterprise resources.", - "properties": { - "enterprise": { - "type": "array", - "description": "An enterprise.", - "items": { - "$ref": "Enterprise" - } - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"androidenterprise#enterprisesListResponse\".", - "default": "androidenterprise#enterprisesListResponse" - } - } - }, - "EnterprisesSendTestPushNotificationResponse": { - "id": "EnterprisesSendTestPushNotificationResponse", - "type": "object", - "properties": { - "messageId": { - "type": "string", - "description": "The message ID of the test push notification that was sent." - }, - "topicName": { - "type": "string", - "description": "The name of the Cloud Pub/Sub topic to which notifications for this enterprise's enrolled account will be sent." - } - } - }, - "Entitlement": { - "id": "Entitlement", - "type": "object", - "description": "The presence of an Entitlements resource indicates that a user has the right to use a particular app. Entitlements are user specific, not device specific. This allows a user with an entitlement to an app to install the app on all their devices. It's also possible for a user to hold an entitlement to an app without installing the app on any device.\n\nThe API can be used to create an entitlement. As an option, you can also use the API to trigger the installation of an app on all a user's managed devices at the same time the entitlement is created.\n\nIf the app is free, creating the entitlement also creates a group license for that app. For paid apps, creating the entitlement consumes one license, and that license remains consumed until the entitlement is removed. If the enterprise hasn't purchased enough licenses, then no entitlement is created and the installation fails. An entitlement is also not created for an app if the app requires permissions that the enterprise hasn't accepted.\n\nIf an entitlement is deleted, the app may be uninstalled from a user's device. As a best practice, uninstall the app by calling Installs.delete() before deleting the entitlement.\n\nEntitlements for apps that a user pays for on an unmanaged profile have \"userPurchase\" as the entitlement reason. These entitlements cannot be removed via the API.", - "properties": { - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"androidenterprise#entitlement\".", - "default": "androidenterprise#entitlement" - }, - "productId": { - "type": "string", - "description": "The ID of the product that the entitlement is for. For example, \"app:com.google.android.gm\"." - }, - "reason": { - "type": "string", - "description": "The reason for the entitlement. For example, \"free\" for free apps. This property is temporary: it will be replaced by the acquisition kind field of group licenses." - } - } - }, - "EntitlementsListResponse": { - "id": "EntitlementsListResponse", - "type": "object", - "description": "The entitlement resources for the user.", - "properties": { - "entitlement": { - "type": "array", - "description": "An entitlement of a user to a product (e.g. an app). For example, a free app that they have installed, or a paid app that they have been allocated a license to.", - "items": { - "$ref": "Entitlement" - } - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"androidenterprise#entitlementsListResponse\".", - "default": "androidenterprise#entitlementsListResponse" - } - } - }, - "GroupLicense": { - "id": "GroupLicense", - "type": "object", - "description": "Group license objects allow you to keep track of licenses (called entitlements) for both free and paid apps. For a free app, a group license is created when an enterprise admin first approves the product in Google Play or when the first entitlement for the product is created for a user via the API. For a paid app, a group license object is only created when an enterprise admin purchases the product in Google Play for the first time.\n\nUse the API to query group licenses. A Grouplicenses resource includes the total number of licenses purchased (paid apps only) and the total number of licenses currently in use. In other words, the total number of Entitlements that exist for the product.\n\nOnly one group license object is created per product and group license objects are never deleted. If a product is unapproved, its group license remains. This allows enterprise admins to keep track of any remaining entitlements for the product.", - "properties": { - "acquisitionKind": { - "type": "string", - "description": "How this group license was acquired. \"bulkPurchase\" means that this Grouplicenses resource was created because the enterprise purchased licenses for this product; otherwise, the value is \"free\" (for free products)." - }, - "approval": { - "type": "string", - "description": "Whether the product to which this group license relates is currently approved by the enterprise. Products are approved when a group license is first created, but this approval may be revoked by an enterprise admin via Google Play. Unapproved products will not be visible to end users in collections, and new entitlements to them should not normally be created." - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"androidenterprise#groupLicense\".", - "default": "androidenterprise#groupLicense" - }, - "numProvisioned": { - "type": "integer", - "description": "The total number of provisioned licenses for this product. Returned by read operations, but ignored in write operations.", - "format": "int32" - }, - "numPurchased": { - "type": "integer", - "description": "The number of purchased licenses (possibly in multiple purchases). If this field is omitted, then there is no limit on the number of licenses that can be provisioned (for example, if the acquisition kind is \"free\").", - "format": "int32" + "managedconfigurationssettings": { + "methods": { + "list": { + "description": "Lists all the managed configurations settings for the specified app. Only the ID and the name is set.", + "httpMethod": "GET", + "id": "androidenterprise.managedconfigurationssettings.list", + "parameterOrder": [ + "enterpriseId", + "productId" + ], + "parameters": { + "enterpriseId": { + "description": "The ID of the enterprise.", + "location": "path", + "required": true, + "type": "string" + }, + "productId": { + "description": "The ID of the product for which the managed configurations settings applies to.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "enterprises/{enterpriseId}/products/{productId}/managedConfigurationsSettings", + "response": { + "$ref": "ManagedConfigurationsSettingsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidenterprise" + ] + } + } }, "permissions": { - "type": "string", - "description": "The permission approval status of the product. This field is only set if the product is approved. Possible states are: \n- \"currentApproved\", the current set of permissions is approved, but additional permissions will require the administrator to reapprove the product (If the product was approved without specifying the approved permissions setting, then this is the default behavior.), \n- \"needsReapproval\", the product has unapproved permissions. No additional product licenses can be assigned until the product is reapproved, \n- \"allCurrentAndFutureApproved\", the current permissions are approved and any future permission updates will be automatically approved without administrator review." + "methods": { + "get": { + "description": "Retrieves details of an Android app permission for display to an enterprise admin.", + "httpMethod": "GET", + "id": "androidenterprise.permissions.get", + "parameterOrder": [ + "permissionId" + ], + "parameters": { + "language": { + "description": "The BCP47 tag for the user's preferred language (e.g. \"en-US\", \"de\")", + "location": "query", + "type": "string" + }, + "permissionId": { + "description": "The ID of the permission.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "permissions/{permissionId}", + "response": { + "$ref": "Permission" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidenterprise" + ] + } + } }, - "productId": { - "type": "string", - "description": "The ID of the product that the license is for. For example, \"app:com.google.android.gm\"." + "products": { + "methods": { + "approve": { + "description": "Approves the specified product and the relevant app permissions, if any. The maximum number of products that you can approve per enterprise customer is 1,000.\n\nTo learn how to use managed Google Play to design and create a store layout to display approved products to your users, see Store Layout Design.", + "httpMethod": "POST", + "id": "androidenterprise.products.approve", + "parameterOrder": [ + "enterpriseId", + "productId" + ], + "parameters": { + "enterpriseId": { + "description": "The ID of the enterprise.", + "location": "path", + "required": true, + "type": "string" + }, + "productId": { + "description": "The ID of the product.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "enterprises/{enterpriseId}/products/{productId}/approve", + "request": { + "$ref": "ProductsApproveRequest" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidenterprise" + ] + }, + "generateApprovalUrl": { + "description": "Generates a URL that can be rendered in an iframe to display the permissions (if any) of a product. An enterprise admin must view these permissions and accept them on behalf of their organization in order to approve that product.\n\nAdmins should accept the displayed permissions by interacting with a separate UI element in the EMM console, which in turn should trigger the use of this URL as the approvalUrlInfo.approvalUrl property in a Products.approve call to approve the product. This URL can only be used to display permissions for up to 1 day.", + "httpMethod": "POST", + "id": "androidenterprise.products.generateApprovalUrl", + "parameterOrder": [ + "enterpriseId", + "productId" + ], + "parameters": { + "enterpriseId": { + "description": "The ID of the enterprise.", + "location": "path", + "required": true, + "type": "string" + }, + "languageCode": { + "description": "The BCP 47 language code used for permission names and descriptions in the returned iframe, for instance \"en-US\".", + "location": "query", + "type": "string" + }, + "productId": { + "description": "The ID of the product.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "enterprises/{enterpriseId}/products/{productId}/generateApprovalUrl", + "response": { + "$ref": "ProductsGenerateApprovalUrlResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidenterprise" + ] + }, + "get": { + "description": "Retrieves details of a product for display to an enterprise admin.", + "httpMethod": "GET", + "id": "androidenterprise.products.get", + "parameterOrder": [ + "enterpriseId", + "productId" + ], + "parameters": { + "enterpriseId": { + "description": "The ID of the enterprise.", + "location": "path", + "required": true, + "type": "string" + }, + "language": { + "description": "The BCP47 tag for the user's preferred language (e.g. \"en-US\", \"de\").", + "location": "query", + "type": "string" + }, + "productId": { + "description": "The ID of the product, e.g. \"app:com.google.android.gm\".", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "enterprises/{enterpriseId}/products/{productId}", + "response": { + "$ref": "Product" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidenterprise" + ] + }, + "getAppRestrictionsSchema": { + "description": "Retrieves the schema that defines the configurable properties for this product. All products have a schema, but this schema may be empty if no managed configurations have been defined. This schema can be used to populate a UI that allows an admin to configure the product. To apply a managed configuration based on the schema obtained using this API, see Managed Configurations through Play.", + "httpMethod": "GET", + "id": "androidenterprise.products.getAppRestrictionsSchema", + "parameterOrder": [ + "enterpriseId", + "productId" + ], + "parameters": { + "enterpriseId": { + "description": "The ID of the enterprise.", + "location": "path", + "required": true, + "type": "string" + }, + "language": { + "description": "The BCP47 tag for the user's preferred language (e.g. \"en-US\", \"de\").", + "location": "query", + "type": "string" + }, + "productId": { + "description": "The ID of the product.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "enterprises/{enterpriseId}/products/{productId}/appRestrictionsSchema", + "response": { + "$ref": "AppRestrictionsSchema" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidenterprise" + ] + }, + "getPermissions": { + "description": "Retrieves the Android app permissions required by this app.", + "httpMethod": "GET", + "id": "androidenterprise.products.getPermissions", + "parameterOrder": [ + "enterpriseId", + "productId" + ], + "parameters": { + "enterpriseId": { + "description": "The ID of the enterprise.", + "location": "path", + "required": true, + "type": "string" + }, + "productId": { + "description": "The ID of the product.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "enterprises/{enterpriseId}/products/{productId}/permissions", + "response": { + "$ref": "ProductPermissions" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidenterprise" + ] + }, + "list": { + "description": "Finds approved products that match a query, or all approved products if there is no query.", + "httpMethod": "GET", + "id": "androidenterprise.products.list", + "parameterOrder": [ + "enterpriseId" + ], + "parameters": { + "approved": { + "description": "Specifies whether to search among all products (false) or among only products that have been approved (true). Only \"true\" is supported, and should be specified.", + "location": "query", + "type": "boolean" + }, + "enterpriseId": { + "description": "The ID of the enterprise.", + "location": "path", + "required": true, + "type": "string" + }, + "language": { + "description": "The BCP47 tag for the user's preferred language (e.g. \"en-US\", \"de\"). Results are returned in the language best matching the preferred language.", + "location": "query", + "type": "string" + }, + "maxResults": { + "description": "Specifies the maximum number of products that can be returned per request. If not specified, uses a default value of 100, which is also the maximum retrievable within a single response.", + "format": "uint32", + "location": "query", + "type": "integer" + }, + "query": { + "description": "The search query as typed in the Google Play store search box. If omitted, all approved apps will be returned (using the pagination parameters), including apps that are not available in the store (e.g. unpublished apps).", + "location": "query", + "type": "string" + }, + "token": { + "description": "A pagination token is contained in a request''s response when there are more products. The token can be used in a subsequent request to obtain more products, and so forth. This parameter cannot be used in the initial request.", + "location": "query", + "type": "string" + } + }, + "path": "enterprises/{enterpriseId}/products", + "response": { + "$ref": "ProductsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidenterprise" + ] + }, + "unapprove": { + "description": "Unapproves the specified product (and the relevant app permissions, if any)", + "httpMethod": "POST", + "id": "androidenterprise.products.unapprove", + "parameterOrder": [ + "enterpriseId", + "productId" + ], + "parameters": { + "enterpriseId": { + "description": "The ID of the enterprise.", + "location": "path", + "required": true, + "type": "string" + }, + "productId": { + "description": "The ID of the product.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "enterprises/{enterpriseId}/products/{productId}/unapprove", + "scopes": [ + "https://www.googleapis.com/auth/androidenterprise" + ] + } + } + }, + "serviceaccountkeys": { + "methods": { + "delete": { + "description": "Removes and invalidates the specified credentials for the service account associated with this enterprise. The calling service account must have been retrieved by calling Enterprises.GetServiceAccount and must have been set as the enterprise service account by calling Enterprises.SetAccount.", + "httpMethod": "DELETE", + "id": "androidenterprise.serviceaccountkeys.delete", + "parameterOrder": [ + "enterpriseId", + "keyId" + ], + "parameters": { + "enterpriseId": { + "description": "The ID of the enterprise.", + "location": "path", + "required": true, + "type": "string" + }, + "keyId": { + "description": "The ID of the key.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "enterprises/{enterpriseId}/serviceAccountKeys/{keyId}", + "scopes": [ + "https://www.googleapis.com/auth/androidenterprise" + ] + }, + "insert": { + "description": "Generates new credentials for the service account associated with this enterprise. The calling service account must have been retrieved by calling Enterprises.GetServiceAccount and must have been set as the enterprise service account by calling Enterprises.SetAccount.\n\nOnly the type of the key should be populated in the resource to be inserted.", + "httpMethod": "POST", + "id": "androidenterprise.serviceaccountkeys.insert", + "parameterOrder": [ + "enterpriseId" + ], + "parameters": { + "enterpriseId": { + "description": "The ID of the enterprise.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "enterprises/{enterpriseId}/serviceAccountKeys", + "request": { + "$ref": "ServiceAccountKey" + }, + "response": { + "$ref": "ServiceAccountKey" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidenterprise" + ] + }, + "list": { + "description": "Lists all active credentials for the service account associated with this enterprise. Only the ID and key type are returned. The calling service account must have been retrieved by calling Enterprises.GetServiceAccount and must have been set as the enterprise service account by calling Enterprises.SetAccount.", + "httpMethod": "GET", + "id": "androidenterprise.serviceaccountkeys.list", + "parameterOrder": [ + "enterpriseId" + ], + "parameters": { + "enterpriseId": { + "description": "The ID of the enterprise.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "enterprises/{enterpriseId}/serviceAccountKeys", + "response": { + "$ref": "ServiceAccountKeysListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidenterprise" + ] + } + } + }, + "storelayoutclusters": { + "methods": { + "delete": { + "description": "Deletes a cluster.", + "httpMethod": "DELETE", + "id": "androidenterprise.storelayoutclusters.delete", + "parameterOrder": [ + "enterpriseId", + "pageId", + "clusterId" + ], + "parameters": { + "clusterId": { + "description": "The ID of the cluster.", + "location": "path", + "required": true, + "type": "string" + }, + "enterpriseId": { + "description": "The ID of the enterprise.", + "location": "path", + "required": true, + "type": "string" + }, + "pageId": { + "description": "The ID of the page.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "enterprises/{enterpriseId}/storeLayout/pages/{pageId}/clusters/{clusterId}", + "scopes": [ + "https://www.googleapis.com/auth/androidenterprise" + ] + }, + "get": { + "description": "Retrieves details of a cluster.", + "httpMethod": "GET", + "id": "androidenterprise.storelayoutclusters.get", + "parameterOrder": [ + "enterpriseId", + "pageId", + "clusterId" + ], + "parameters": { + "clusterId": { + "description": "The ID of the cluster.", + "location": "path", + "required": true, + "type": "string" + }, + "enterpriseId": { + "description": "The ID of the enterprise.", + "location": "path", + "required": true, + "type": "string" + }, + "pageId": { + "description": "The ID of the page.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "enterprises/{enterpriseId}/storeLayout/pages/{pageId}/clusters/{clusterId}", + "response": { + "$ref": "StoreCluster" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidenterprise" + ] + }, + "insert": { + "description": "Inserts a new cluster in a page.", + "httpMethod": "POST", + "id": "androidenterprise.storelayoutclusters.insert", + "parameterOrder": [ + "enterpriseId", + "pageId" + ], + "parameters": { + "enterpriseId": { + "description": "The ID of the enterprise.", + "location": "path", + "required": true, + "type": "string" + }, + "pageId": { + "description": "The ID of the page.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "enterprises/{enterpriseId}/storeLayout/pages/{pageId}/clusters", + "request": { + "$ref": "StoreCluster" + }, + "response": { + "$ref": "StoreCluster" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidenterprise" + ] + }, + "list": { + "description": "Retrieves the details of all clusters on the specified page.", + "httpMethod": "GET", + "id": "androidenterprise.storelayoutclusters.list", + "parameterOrder": [ + "enterpriseId", + "pageId" + ], + "parameters": { + "enterpriseId": { + "description": "The ID of the enterprise.", + "location": "path", + "required": true, + "type": "string" + }, + "pageId": { + "description": "The ID of the page.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "enterprises/{enterpriseId}/storeLayout/pages/{pageId}/clusters", + "response": { + "$ref": "StoreLayoutClustersListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidenterprise" + ] + }, + "patch": { + "description": "Updates a cluster. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "androidenterprise.storelayoutclusters.patch", + "parameterOrder": [ + "enterpriseId", + "pageId", + "clusterId" + ], + "parameters": { + "clusterId": { + "description": "The ID of the cluster.", + "location": "path", + "required": true, + "type": "string" + }, + "enterpriseId": { + "description": "The ID of the enterprise.", + "location": "path", + "required": true, + "type": "string" + }, + "pageId": { + "description": "The ID of the page.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "enterprises/{enterpriseId}/storeLayout/pages/{pageId}/clusters/{clusterId}", + "request": { + "$ref": "StoreCluster" + }, + "response": { + "$ref": "StoreCluster" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidenterprise" + ] + }, + "update": { + "description": "Updates a cluster.", + "httpMethod": "PUT", + "id": "androidenterprise.storelayoutclusters.update", + "parameterOrder": [ + "enterpriseId", + "pageId", + "clusterId" + ], + "parameters": { + "clusterId": { + "description": "The ID of the cluster.", + "location": "path", + "required": true, + "type": "string" + }, + "enterpriseId": { + "description": "The ID of the enterprise.", + "location": "path", + "required": true, + "type": "string" + }, + "pageId": { + "description": "The ID of the page.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "enterprises/{enterpriseId}/storeLayout/pages/{pageId}/clusters/{clusterId}", + "request": { + "$ref": "StoreCluster" + }, + "response": { + "$ref": "StoreCluster" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidenterprise" + ] + } + } + }, + "storelayoutpages": { + "methods": { + "delete": { + "description": "Deletes a store page.", + "httpMethod": "DELETE", + "id": "androidenterprise.storelayoutpages.delete", + "parameterOrder": [ + "enterpriseId", + "pageId" + ], + "parameters": { + "enterpriseId": { + "description": "The ID of the enterprise.", + "location": "path", + "required": true, + "type": "string" + }, + "pageId": { + "description": "The ID of the page.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "enterprises/{enterpriseId}/storeLayout/pages/{pageId}", + "scopes": [ + "https://www.googleapis.com/auth/androidenterprise" + ] + }, + "get": { + "description": "Retrieves details of a store page.", + "httpMethod": "GET", + "id": "androidenterprise.storelayoutpages.get", + "parameterOrder": [ + "enterpriseId", + "pageId" + ], + "parameters": { + "enterpriseId": { + "description": "The ID of the enterprise.", + "location": "path", + "required": true, + "type": "string" + }, + "pageId": { + "description": "The ID of the page.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "enterprises/{enterpriseId}/storeLayout/pages/{pageId}", + "response": { + "$ref": "StorePage" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidenterprise" + ] + }, + "insert": { + "description": "Inserts a new store page.", + "httpMethod": "POST", + "id": "androidenterprise.storelayoutpages.insert", + "parameterOrder": [ + "enterpriseId" + ], + "parameters": { + "enterpriseId": { + "description": "The ID of the enterprise.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "enterprises/{enterpriseId}/storeLayout/pages", + "request": { + "$ref": "StorePage" + }, + "response": { + "$ref": "StorePage" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidenterprise" + ] + }, + "list": { + "description": "Retrieves the details of all pages in the store.", + "httpMethod": "GET", + "id": "androidenterprise.storelayoutpages.list", + "parameterOrder": [ + "enterpriseId" + ], + "parameters": { + "enterpriseId": { + "description": "The ID of the enterprise.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "enterprises/{enterpriseId}/storeLayout/pages", + "response": { + "$ref": "StoreLayoutPagesListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidenterprise" + ] + }, + "patch": { + "description": "Updates the content of a store page. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "androidenterprise.storelayoutpages.patch", + "parameterOrder": [ + "enterpriseId", + "pageId" + ], + "parameters": { + "enterpriseId": { + "description": "The ID of the enterprise.", + "location": "path", + "required": true, + "type": "string" + }, + "pageId": { + "description": "The ID of the page.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "enterprises/{enterpriseId}/storeLayout/pages/{pageId}", + "request": { + "$ref": "StorePage" + }, + "response": { + "$ref": "StorePage" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidenterprise" + ] + }, + "update": { + "description": "Updates the content of a store page.", + "httpMethod": "PUT", + "id": "androidenterprise.storelayoutpages.update", + "parameterOrder": [ + "enterpriseId", + "pageId" + ], + "parameters": { + "enterpriseId": { + "description": "The ID of the enterprise.", + "location": "path", + "required": true, + "type": "string" + }, + "pageId": { + "description": "The ID of the page.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "enterprises/{enterpriseId}/storeLayout/pages/{pageId}", + "request": { + "$ref": "StorePage" + }, + "response": { + "$ref": "StorePage" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidenterprise" + ] + } + } + }, + "users": { + "methods": { + "delete": { + "description": "Deleted an EMM-managed user.", + "httpMethod": "DELETE", + "id": "androidenterprise.users.delete", + "parameterOrder": [ + "enterpriseId", + "userId" + ], + "parameters": { + "enterpriseId": { + "description": "The ID of the enterprise.", + "location": "path", + "required": true, + "type": "string" + }, + "userId": { + "description": "The ID of the user.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "enterprises/{enterpriseId}/users/{userId}", + "scopes": [ + "https://www.googleapis.com/auth/androidenterprise" + ] + }, + "generateAuthenticationToken": { + "description": "Generates an authentication token which the device policy client can use to provision the given EMM-managed user account on a device. The generated token is single-use and expires after a few minutes.\n\nThis call only works with EMM-managed accounts.", + "httpMethod": "POST", + "id": "androidenterprise.users.generateAuthenticationToken", + "parameterOrder": [ + "enterpriseId", + "userId" + ], + "parameters": { + "enterpriseId": { + "description": "The ID of the enterprise.", + "location": "path", + "required": true, + "type": "string" + }, + "userId": { + "description": "The ID of the user.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "enterprises/{enterpriseId}/users/{userId}/authenticationToken", + "response": { + "$ref": "AuthenticationToken" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidenterprise" + ] + }, + "generateToken": { + "description": "Generates a token (activation code) to allow this user to configure their managed account in the Android Setup Wizard. Revokes any previously generated token.\n\nThis call only works with Google managed accounts.", + "httpMethod": "POST", + "id": "androidenterprise.users.generateToken", + "parameterOrder": [ + "enterpriseId", + "userId" + ], + "parameters": { + "enterpriseId": { + "description": "The ID of the enterprise.", + "location": "path", + "required": true, + "type": "string" + }, + "userId": { + "description": "The ID of the user.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "enterprises/{enterpriseId}/users/{userId}/token", + "response": { + "$ref": "UserToken" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidenterprise" + ] + }, + "get": { + "description": "Retrieves a user's details.", + "httpMethod": "GET", + "id": "androidenterprise.users.get", + "parameterOrder": [ + "enterpriseId", + "userId" + ], + "parameters": { + "enterpriseId": { + "description": "The ID of the enterprise.", + "location": "path", + "required": true, + "type": "string" + }, + "userId": { + "description": "The ID of the user.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "enterprises/{enterpriseId}/users/{userId}", + "response": { + "$ref": "User" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidenterprise" + ] + }, + "getAvailableProductSet": { + "description": "Retrieves the set of products a user is entitled to access.", + "httpMethod": "GET", + "id": "androidenterprise.users.getAvailableProductSet", + "parameterOrder": [ + "enterpriseId", + "userId" + ], + "parameters": { + "enterpriseId": { + "description": "The ID of the enterprise.", + "location": "path", + "required": true, + "type": "string" + }, + "userId": { + "description": "The ID of the user.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "enterprises/{enterpriseId}/users/{userId}/availableProductSet", + "response": { + "$ref": "ProductSet" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidenterprise" + ] + }, + "insert": { + "description": "Creates a new EMM-managed user.\n\nThe Users resource passed in the body of the request should include an accountIdentifier and an accountType.\nIf a corresponding user already exists with the same account identifier, the user will be updated with the resource. In this case only the displayName field can be changed.", + "httpMethod": "POST", + "id": "androidenterprise.users.insert", + "parameterOrder": [ + "enterpriseId" + ], + "parameters": { + "enterpriseId": { + "description": "The ID of the enterprise.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "enterprises/{enterpriseId}/users", + "request": { + "$ref": "User" + }, + "response": { + "$ref": "User" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidenterprise" + ] + }, + "list": { + "description": "Looks up a user by primary email address. This is only supported for Google-managed users. Lookup of the id is not needed for EMM-managed users because the id is already returned in the result of the Users.insert call.", + "httpMethod": "GET", + "id": "androidenterprise.users.list", + "parameterOrder": [ + "enterpriseId", + "email" + ], + "parameters": { + "email": { + "description": "The exact primary email address of the user to look up.", + "location": "query", + "required": true, + "type": "string" + }, + "enterpriseId": { + "description": "The ID of the enterprise.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "enterprises/{enterpriseId}/users", + "response": { + "$ref": "UsersListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidenterprise" + ] + }, + "patch": { + "description": "Updates the details of an EMM-managed user.\n\nCan be used with EMM-managed users only (not Google managed users). Pass the new details in the Users resource in the request body. Only the displayName field can be changed. Other fields must either be unset or have the currently active value. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "androidenterprise.users.patch", + "parameterOrder": [ + "enterpriseId", + "userId" + ], + "parameters": { + "enterpriseId": { + "description": "The ID of the enterprise.", + "location": "path", + "required": true, + "type": "string" + }, + "userId": { + "description": "The ID of the user.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "enterprises/{enterpriseId}/users/{userId}", + "request": { + "$ref": "User" + }, + "response": { + "$ref": "User" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidenterprise" + ] + }, + "revokeDeviceAccess": { + "description": "Revokes access to all devices currently provisioned to the user. The user will no longer be able to use the managed Play store on any of their managed devices.\n\nThis call only works with EMM-managed accounts.", + "httpMethod": "DELETE", + "id": "androidenterprise.users.revokeDeviceAccess", + "parameterOrder": [ + "enterpriseId", + "userId" + ], + "parameters": { + "enterpriseId": { + "description": "The ID of the enterprise.", + "location": "path", + "required": true, + "type": "string" + }, + "userId": { + "description": "The ID of the user.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "enterprises/{enterpriseId}/users/{userId}/deviceAccess", + "scopes": [ + "https://www.googleapis.com/auth/androidenterprise" + ] + }, + "revokeToken": { + "description": "Revokes a previously generated token (activation code) for the user.", + "httpMethod": "DELETE", + "id": "androidenterprise.users.revokeToken", + "parameterOrder": [ + "enterpriseId", + "userId" + ], + "parameters": { + "enterpriseId": { + "description": "The ID of the enterprise.", + "location": "path", + "required": true, + "type": "string" + }, + "userId": { + "description": "The ID of the user.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "enterprises/{enterpriseId}/users/{userId}/token", + "scopes": [ + "https://www.googleapis.com/auth/androidenterprise" + ] + }, + "setAvailableProductSet": { + "description": "Modifies the set of products that a user is entitled to access (referred to as whitelisted products). Only products that are approved or products that were previously approved (products with revoked approval) can be whitelisted.", + "httpMethod": "PUT", + "id": "androidenterprise.users.setAvailableProductSet", + "parameterOrder": [ + "enterpriseId", + "userId" + ], + "parameters": { + "enterpriseId": { + "description": "The ID of the enterprise.", + "location": "path", + "required": true, + "type": "string" + }, + "userId": { + "description": "The ID of the user.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "enterprises/{enterpriseId}/users/{userId}/availableProductSet", + "request": { + "$ref": "ProductSet" + }, + "response": { + "$ref": "ProductSet" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidenterprise" + ] + }, + "update": { + "description": "Updates the details of an EMM-managed user.\n\nCan be used with EMM-managed users only (not Google managed users). Pass the new details in the Users resource in the request body. Only the displayName field can be changed. Other fields must either be unset or have the currently active value.", + "httpMethod": "PUT", + "id": "androidenterprise.users.update", + "parameterOrder": [ + "enterpriseId", + "userId" + ], + "parameters": { + "enterpriseId": { + "description": "The ID of the enterprise.", + "location": "path", + "required": true, + "type": "string" + }, + "userId": { + "description": "The ID of the user.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "enterprises/{enterpriseId}/users/{userId}", + "request": { + "$ref": "User" + }, + "response": { + "$ref": "User" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidenterprise" + ] + } + } } - } }, - "GroupLicenseUsersListResponse": { - "id": "GroupLicenseUsersListResponse", - "type": "object", - "description": "The user resources for the group license.", - "properties": { - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"androidenterprise#groupLicenseUsersListResponse\".", - "default": "androidenterprise#groupLicenseUsersListResponse" + "revision": "20180322", + "rootUrl": "https://www.googleapis.com/", + "schemas": { + "Administrator": { + "description": "This represents an enterprise admin who can manage the enterprise in the managed Google Play store.", + "id": "Administrator", + "properties": { + "email": { + "description": "The admin's email address.", + "type": "string" + } + }, + "type": "object" }, - "user": { - "type": "array", - "description": "A user of an enterprise.", - "items": { - "$ref": "User" - } + "AdministratorWebToken": { + "description": "A token authorizing an admin to access an iframe.", + "id": "AdministratorWebToken", + "properties": { + "kind": { + "default": "androidenterprise#administratorWebToken", + "description": "Identifies what kind of resource this is. Value: the fixed string \"androidenterprise#administratorWebToken\".", + "type": "string" + }, + "token": { + "description": "An opaque token to be passed to the Play front-end to generate an iframe.", + "type": "string" + } + }, + "type": "object" + }, + "AdministratorWebTokenSpec": { + "description": "Specification for a token used to generate iframes. The token specifies what data the admin is allowed to modify and the URI the iframe is allowed to communiate with.", + "id": "AdministratorWebTokenSpec", + "properties": { + "kind": { + "default": "androidenterprise#administratorWebTokenSpec", + "description": "Identifies what kind of resource this is. Value: the fixed string \"androidenterprise#administratorWebTokenSpec\".", + "type": "string" + }, + "parent": { + "description": "The URI of the parent frame hosting the iframe. To prevent XSS, the iframe may not be hosted at other URIs. This URI must be https.", + "type": "string" + }, + "permission": { + "description": "The list of permissions the admin is granted within the iframe. The admin will only be allowed to view an iframe if they have all of the permissions associated with it. The only valid value is \"approveApps\" that will allow the admin to access the iframe in \"approve\" mode.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "AndroidDevicePolicyConfig": { + "description": "The Android Device Policy configuration of an enterprise.", + "id": "AndroidDevicePolicyConfig", + "properties": { + "kind": { + "default": "androidenterprise#androidDevicePolicyConfig", + "description": "Identifies what kind of resource this is. Value: the fixed string \"androidenterprise#androidDevicePolicyConfig\".", + "type": "string" + }, + "state": { + "description": "The state of Android Device Policy. \"enabled\" indicates that Android Device Policy is enabled for the enterprise and the EMM is allowed to manage devices with Android Device Policy, while \"disabled\" means that it cannot.", + "type": "string" + } + }, + "type": "object" + }, + "AppRestrictionsSchema": { + "description": "Represents the list of app restrictions available to be pre-configured for the product.", + "id": "AppRestrictionsSchema", + "properties": { + "kind": { + "default": "androidenterprise#appRestrictionsSchema", + "description": "Identifies what kind of resource this is. Value: the fixed string \"androidenterprise#appRestrictionsSchema\".", + "type": "string" + }, + "restrictions": { + "description": "The set of restrictions that make up this schema.", + "items": { + "$ref": "AppRestrictionsSchemaRestriction" + }, + "type": "array" + } + }, + "type": "object" + }, + "AppRestrictionsSchemaChangeEvent": { + "description": "An event generated when a new app version is uploaded to Google Play and its app restrictions schema changed. To fetch the app restrictions schema for an app, use Products.getAppRestrictionsSchema on the EMM API.", + "id": "AppRestrictionsSchemaChangeEvent", + "properties": { + "productId": { + "description": "The id of the product (e.g. \"app:com.google.android.gm\") for which the app restriction schema changed. This field will always be present.", + "type": "string" + } + }, + "type": "object" + }, + "AppRestrictionsSchemaRestriction": { + "description": "A restriction in the App Restriction Schema represents a piece of configuration that may be pre-applied.", + "id": "AppRestrictionsSchemaRestriction", + "properties": { + "defaultValue": { + "$ref": "AppRestrictionsSchemaRestrictionRestrictionValue", + "description": "The default value of the restriction. bundle and bundleArray restrictions never have a default value." + }, + "description": { + "description": "A longer description of the restriction, giving more detail of what it affects.", + "type": "string" + }, + "entry": { + "description": "For choice or multiselect restrictions, the list of possible entries' human-readable names.", + "items": { + "type": "string" + }, + "type": "array" + }, + "entryValue": { + "description": "For choice or multiselect restrictions, the list of possible entries' machine-readable values. These values should be used in the configuration, either as a single string value for a choice restriction or in a stringArray for a multiselect restriction.", + "items": { + "type": "string" + }, + "type": "array" + }, + "key": { + "description": "The unique key that the product uses to identify the restriction, e.g. \"com.google.android.gm.fieldname\".", + "type": "string" + }, + "nestedRestriction": { + "description": "For bundle or bundleArray restrictions, the list of nested restrictions. A bundle restriction is always nested within a bundleArray restriction, and a bundleArray restriction is at most two levels deep.", + "items": { + "$ref": "AppRestrictionsSchemaRestriction" + }, + "type": "array" + }, + "restrictionType": { + "description": "The type of the restriction.", + "type": "string" + }, + "title": { + "description": "The name of the restriction.", + "type": "string" + } + }, + "type": "object" + }, + "AppRestrictionsSchemaRestrictionRestrictionValue": { + "description": "A typed value for the restriction.", + "id": "AppRestrictionsSchemaRestrictionRestrictionValue", + "properties": { + "type": { + "description": "The type of the value being provided.", + "type": "string" + }, + "valueBool": { + "description": "The boolean value - this will only be present if type is bool.", + "type": "boolean" + }, + "valueInteger": { + "description": "The integer value - this will only be present if type is integer.", + "format": "int32", + "type": "integer" + }, + "valueMultiselect": { + "description": "The list of string values - this will only be present if type is multiselect.", + "items": { + "type": "string" + }, + "type": "array" + }, + "valueString": { + "description": "The string value - this will be present for types string, choice and hidden.", + "type": "string" + } + }, + "type": "object" + }, + "AppUpdateEvent": { + "description": "An event generated when a new version of an app is uploaded to Google Play. Notifications are sent for new public versions only: alpha, beta, or canary versions do not generate this event. To fetch up-to-date version history for an app, use Products.Get on the EMM API.", + "id": "AppUpdateEvent", + "properties": { + "productId": { + "description": "The id of the product (e.g. \"app:com.google.android.gm\") that was updated. This field will always be present.", + "type": "string" + } + }, + "type": "object" + }, + "AppVersion": { + "description": "This represents a single version of the app.", + "id": "AppVersion", + "properties": { + "track": { + "description": "The track that this app was published in. For example if track is \"alpha\", this is an alpha version of the app.", + "type": "string" + }, + "versionCode": { + "description": "Unique increasing identifier for the app version.", + "format": "int32", + "type": "integer" + }, + "versionString": { + "description": "The string used in the Play store by the app developer to identify the version. The string is not necessarily unique or localized (for example, the string could be \"1.4\").", + "type": "string" + } + }, + "type": "object" + }, + "ApprovalUrlInfo": { + "description": "Information on an approval URL.", + "id": "ApprovalUrlInfo", + "properties": { + "approvalUrl": { + "description": "A URL that displays a product's permissions and that can also be used to approve the product with the Products.approve call.", + "type": "string" + }, + "kind": { + "default": "androidenterprise#approvalUrlInfo", + "description": "Identifies what kind of resource this is. Value: the fixed string \"androidenterprise#approvalUrlInfo\".", + "type": "string" + } + }, + "type": "object" + }, + "AuthenticationToken": { + "description": "An AuthenticationToken is used by the EMM's device policy client on a device to provision the given EMM-managed user on that device.", + "id": "AuthenticationToken", + "properties": { + "kind": { + "default": "androidenterprise#authenticationToken", + "description": "Identifies what kind of resource this is. Value: the fixed string \"androidenterprise#authenticationToken\".", + "type": "string" + }, + "token": { + "description": "The authentication token to be passed to the device policy client on the device where it can be used to provision the account for which this token was generated.", + "type": "string" + } + }, + "type": "object" + }, + "ConfigurationVariables": { + "description": "A configuration variables resource contains the managed configuration settings ID to be applied to a single user, as well as the variable set that is attributed to the user. The variable set will be used to replace placeholders in the managed configuration settings.", + "id": "ConfigurationVariables", + "properties": { + "kind": { + "default": "androidenterprise#configurationVariables", + "description": "Identifies what kind of resource this is. Value: the fixed string \"androidenterprise#configurationVariables\".", + "type": "string" + }, + "mcmId": { + "description": "The ID of the managed configurations settings.", + "type": "string" + }, + "variableSet": { + "description": "The variable set that is attributed to the user.", + "items": { + "$ref": "VariableSet" + }, + "type": "array" + } + }, + "type": "object" + }, + "Device": { + "description": "A Devices resource represents a mobile device managed by the EMM and belonging to a specific enterprise user.", + "id": "Device", + "properties": { + "androidId": { + "description": "The Google Play Services Android ID for the device encoded as a lowercase hex string. For example, \"123456789abcdef0\".", + "type": "string" + }, + "kind": { + "default": "androidenterprise#device", + "description": "Identifies what kind of resource this is. Value: the fixed string \"androidenterprise#device\".", + "type": "string" + }, + "managementType": { + "description": "Identifies the extent to which the device is controlled by a managed Google Play EMM in various deployment configurations.\n\nPossible values include: \n- \"managedDevice\", a device that has the EMM's device policy controller (DPC) as the device owner. \n- \"managedProfile\", a device that has a profile managed by the DPC (DPC is profile owner) in addition to a separate, personal profile that is unavailable to the DPC. \n- \"containerApp\", no longer used (deprecated). \n- \"unmanagedProfile\", a device that has been allowed (by the domain's admin, using the Admin Console to enable the privilege) to use managed Google Play, but the profile is itself not owned by a DPC.", + "type": "string" + }, + "policy": { + "$ref": "Policy", + "description": "The policy enforced on the device." + } + }, + "type": "object" + }, + "DeviceState": { + "description": "The state of a user's device, as accessed by the getState and setState methods on device resources.", + "id": "DeviceState", + "properties": { + "accountState": { + "description": "The state of the Google account on the device. \"enabled\" indicates that the Google account on the device can be used to access Google services (including Google Play), while \"disabled\" means that it cannot. A new device is initially in the \"disabled\" state.", + "type": "string" + }, + "kind": { + "default": "androidenterprise#deviceState", + "description": "Identifies what kind of resource this is. Value: the fixed string \"androidenterprise#deviceState\".", + "type": "string" + } + }, + "type": "object" + }, + "DevicesListResponse": { + "description": "The device resources for the user.", + "id": "DevicesListResponse", + "properties": { + "device": { + "description": "A managed device.", + "items": { + "$ref": "Device" + }, + "type": "array" + }, + "kind": { + "default": "androidenterprise#devicesListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"androidenterprise#devicesListResponse\".", + "type": "string" + } + }, + "type": "object" + }, + "Enterprise": { + "description": "An Enterprises resource represents the binding between an EMM and a specific organization. That binding can be instantiated in one of two different ways using this API as follows: \n- For Google managed domain customers, the process involves using Enterprises.enroll and Enterprises.setAccount (in conjunction with artifacts obtained from the Admin console and the Google API Console) and submitted to the EMM through a more-or-less manual process. \n- For managed Google Play Accounts customers, the process involves using Enterprises.generateSignupUrl and Enterprises.completeSignup in conjunction with the managed Google Play sign-up UI (Google-provided mechanism) to create the binding without manual steps. As an EMM, you can support either or both approaches in your EMM console. See Create an Enterprise for details.", + "id": "Enterprise", + "properties": { + "administrator": { + "description": "Admins of the enterprise. This is only supported for enterprises created via the EMM-initiated flow.", + "items": { + "$ref": "Administrator" + }, + "type": "array" + }, + "id": { + "description": "The unique ID for the enterprise.", + "type": "string" + }, + "kind": { + "default": "androidenterprise#enterprise", + "description": "Identifies what kind of resource this is. Value: the fixed string \"androidenterprise#enterprise\".", + "type": "string" + }, + "name": { + "description": "The name of the enterprise, for example, \"Example, Inc\".", + "type": "string" + }, + "primaryDomain": { + "annotations": { + "required": [ + "androidenterprise.enterprises.insert" + ] + }, + "description": "The enterprise's primary domain, such as \"example.com\".", + "type": "string" + } + }, + "type": "object" + }, + "EnterpriseAccount": { + "description": "A service account that can be used to authenticate as the enterprise to API calls that require such authentication.", + "id": "EnterpriseAccount", + "properties": { + "accountEmail": { + "description": "The email address of the service account.", + "type": "string" + }, + "kind": { + "default": "androidenterprise#enterpriseAccount", + "description": "Identifies what kind of resource this is. Value: the fixed string \"androidenterprise#enterpriseAccount\".", + "type": "string" + } + }, + "type": "object" + }, + "EnterprisesListResponse": { + "description": "The matching enterprise resources.", + "id": "EnterprisesListResponse", + "properties": { + "enterprise": { + "description": "An enterprise.", + "items": { + "$ref": "Enterprise" + }, + "type": "array" + }, + "kind": { + "default": "androidenterprise#enterprisesListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"androidenterprise#enterprisesListResponse\".", + "type": "string" + } + }, + "type": "object" + }, + "EnterprisesSendTestPushNotificationResponse": { + "id": "EnterprisesSendTestPushNotificationResponse", + "properties": { + "messageId": { + "description": "The message ID of the test push notification that was sent.", + "type": "string" + }, + "topicName": { + "description": "The name of the Cloud Pub/Sub topic to which notifications for this enterprise's enrolled account will be sent.", + "type": "string" + } + }, + "type": "object" + }, + "Entitlement": { + "description": "The presence of an Entitlements resource indicates that a user has the right to use a particular app. Entitlements are user specific, not device specific. This allows a user with an entitlement to an app to install the app on all their devices. It's also possible for a user to hold an entitlement to an app without installing the app on any device.\n\nThe API can be used to create an entitlement. As an option, you can also use the API to trigger the installation of an app on all a user's managed devices at the same time the entitlement is created.\n\nIf the app is free, creating the entitlement also creates a group license for that app. For paid apps, creating the entitlement consumes one license, and that license remains consumed until the entitlement is removed. If the enterprise hasn't purchased enough licenses, then no entitlement is created and the installation fails. An entitlement is also not created for an app if the app requires permissions that the enterprise hasn't accepted.\n\nIf an entitlement is deleted, the app may be uninstalled from a user's device. As a best practice, uninstall the app by calling Installs.delete() before deleting the entitlement.\n\nEntitlements for apps that a user pays for on an unmanaged profile have \"userPurchase\" as the entitlement reason. These entitlements cannot be removed via the API.", + "id": "Entitlement", + "properties": { + "kind": { + "default": "androidenterprise#entitlement", + "description": "Identifies what kind of resource this is. Value: the fixed string \"androidenterprise#entitlement\".", + "type": "string" + }, + "productId": { + "description": "The ID of the product that the entitlement is for. For example, \"app:com.google.android.gm\".", + "type": "string" + }, + "reason": { + "description": "The reason for the entitlement. For example, \"free\" for free apps. This property is temporary: it will be replaced by the acquisition kind field of group licenses.", + "type": "string" + } + }, + "type": "object" + }, + "EntitlementsListResponse": { + "description": "The entitlement resources for the user.", + "id": "EntitlementsListResponse", + "properties": { + "entitlement": { + "description": "An entitlement of a user to a product (e.g. an app). For example, a free app that they have installed, or a paid app that they have been allocated a license to.", + "items": { + "$ref": "Entitlement" + }, + "type": "array" + }, + "kind": { + "default": "androidenterprise#entitlementsListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"androidenterprise#entitlementsListResponse\".", + "type": "string" + } + }, + "type": "object" + }, + "GroupLicense": { + "description": "Group license objects allow you to keep track of licenses (called entitlements) for both free and paid apps. For a free app, a group license is created when an enterprise admin first approves the product in Google Play or when the first entitlement for the product is created for a user via the API. For a paid app, a group license object is only created when an enterprise admin purchases the product in Google Play for the first time.\n\nUse the API to query group licenses. A Grouplicenses resource includes the total number of licenses purchased (paid apps only) and the total number of licenses currently in use. In other words, the total number of Entitlements that exist for the product.\n\nOnly one group license object is created per product and group license objects are never deleted. If a product is unapproved, its group license remains. This allows enterprise admins to keep track of any remaining entitlements for the product.", + "id": "GroupLicense", + "properties": { + "acquisitionKind": { + "description": "How this group license was acquired. \"bulkPurchase\" means that this Grouplicenses resource was created because the enterprise purchased licenses for this product; otherwise, the value is \"free\" (for free products).", + "type": "string" + }, + "approval": { + "description": "Whether the product to which this group license relates is currently approved by the enterprise. Products are approved when a group license is first created, but this approval may be revoked by an enterprise admin via Google Play. Unapproved products will not be visible to end users in collections, and new entitlements to them should not normally be created.", + "type": "string" + }, + "kind": { + "default": "androidenterprise#groupLicense", + "description": "Identifies what kind of resource this is. Value: the fixed string \"androidenterprise#groupLicense\".", + "type": "string" + }, + "numProvisioned": { + "description": "The total number of provisioned licenses for this product. Returned by read operations, but ignored in write operations.", + "format": "int32", + "type": "integer" + }, + "numPurchased": { + "description": "The number of purchased licenses (possibly in multiple purchases). If this field is omitted, then there is no limit on the number of licenses that can be provisioned (for example, if the acquisition kind is \"free\").", + "format": "int32", + "type": "integer" + }, + "permissions": { + "description": "The permission approval status of the product. This field is only set if the product is approved. Possible states are: \n- \"currentApproved\", the current set of permissions is approved, but additional permissions will require the administrator to reapprove the product (If the product was approved without specifying the approved permissions setting, then this is the default behavior.), \n- \"needsReapproval\", the product has unapproved permissions. No additional product licenses can be assigned until the product is reapproved, \n- \"allCurrentAndFutureApproved\", the current permissions are approved and any future permission updates will be automatically approved without administrator review.", + "type": "string" + }, + "productId": { + "description": "The ID of the product that the license is for. For example, \"app:com.google.android.gm\".", + "type": "string" + } + }, + "type": "object" + }, + "GroupLicenseUsersListResponse": { + "description": "The user resources for the group license.", + "id": "GroupLicenseUsersListResponse", + "properties": { + "kind": { + "default": "androidenterprise#groupLicenseUsersListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"androidenterprise#groupLicenseUsersListResponse\".", + "type": "string" + }, + "user": { + "description": "A user of an enterprise.", + "items": { + "$ref": "User" + }, + "type": "array" + } + }, + "type": "object" + }, + "GroupLicensesListResponse": { + "description": "The grouplicense resources for the enterprise.", + "id": "GroupLicensesListResponse", + "properties": { + "groupLicense": { + "description": "A group license for a product approved for use in the enterprise.", + "items": { + "$ref": "GroupLicense" + }, + "type": "array" + }, + "kind": { + "default": "androidenterprise#groupLicensesListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"androidenterprise#groupLicensesListResponse\".", + "type": "string" + } + }, + "type": "object" + }, + "Install": { + "description": "The existence of an Installs resource indicates that an app is installed on a particular device (or that an install is pending).\n\nThe API can be used to create an install resource using the update method. This triggers the actual install of the app on the device. If the user does not already have an entitlement for the app, then an attempt is made to create one. If this fails (for example, because the app is not free and there is no available license), then the creation of the install fails.\n\nThe API can also be used to update an installed app. If the update method is used on an existing install, then the app will be updated to the latest available version.\n\nNote that it is not possible to force the installation of a specific version of an app: the version code is read-only.\n\nIf a user installs an app themselves (as permitted by the enterprise), then again an install resource and possibly an entitlement resource are automatically created.\n\nThe API can also be used to delete an install resource, which triggers the removal of the app from the device. Note that deleting an install does not automatically remove the corresponding entitlement, even if there are no remaining installs. The install resource will also be deleted if the user uninstalls the app themselves.", + "id": "Install", + "properties": { + "installState": { + "description": "Install state. The state \"installPending\" means that an install request has recently been made and download to the device is in progress. The state \"installed\" means that the app has been installed. This field is read-only.", + "type": "string" + }, + "kind": { + "default": "androidenterprise#install", + "description": "Identifies what kind of resource this is. Value: the fixed string \"androidenterprise#install\".", + "type": "string" + }, + "productId": { + "description": "The ID of the product that the install is for. For example, \"app:com.google.android.gm\".", + "type": "string" + }, + "versionCode": { + "description": "The version of the installed product. Guaranteed to be set only if the install state is \"installed\".", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "InstallFailureEvent": { + "description": "An event generated when an app installation failed on a device", + "id": "InstallFailureEvent", + "properties": { + "deviceId": { + "description": "The Android ID of the device. This field will always be present.", + "type": "string" + }, + "failureDetails": { + "description": "Additional details on the failure if applicable.", + "type": "string" + }, + "failureReason": { + "description": "The reason for the installation failure. This field will always be present.", + "type": "string" + }, + "productId": { + "description": "The id of the product (e.g. \"app:com.google.android.gm\") for which the install failure event occured. This field will always be present.", + "type": "string" + }, + "userId": { + "description": "The ID of the user. This field will always be present.", + "type": "string" + } + }, + "type": "object" + }, + "InstallsListResponse": { + "description": "The install resources for the device.", + "id": "InstallsListResponse", + "properties": { + "install": { + "description": "An installation of an app for a user on a specific device. The existence of an install implies that the user must have an entitlement to the app.", + "items": { + "$ref": "Install" + }, + "type": "array" + }, + "kind": { + "default": "androidenterprise#installsListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"androidenterprise#installsListResponse\".", + "type": "string" + } + }, + "type": "object" + }, + "LocalizedText": { + "description": "A localized string with its locale.", + "id": "LocalizedText", + "properties": { + "locale": { + "description": "The BCP47 tag for a locale. (e.g. \"en-US\", \"de\").", + "type": "string" + }, + "text": { + "description": "The text localized in the associated locale.", + "type": "string" + } + }, + "type": "object" + }, + "MaintenanceWindow": { + "description": "Maintenance window for managed Google Play Accounts. This allows Play store to update the apps on the foreground in the designated window.", + "id": "MaintenanceWindow", + "properties": { + "durationMs": { + "description": "Duration of the maintenance window, in milliseconds. The duration must be between 30 minutes and 24 hours (inclusive).", + "format": "int64", + "type": "string" + }, + "startTimeAfterMidnightMs": { + "description": "Start time of the maintenance window, in milliseconds after midnight on the device. Windows can span midnight.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "ManagedConfiguration": { + "description": "A managed configuration resource contains the set of managed properties defined by the app developer in the app's managed configurations schema, as well as any configuration variables defined for the user.", + "id": "ManagedConfiguration", + "properties": { + "configurationVariables": { + "$ref": "ConfigurationVariables", + "description": "Contains the ID of the managed configuration profile and the set of configuration variables (if any) defined for the user." + }, + "kind": { + "default": "androidenterprise#managedConfiguration", + "description": "Identifies what kind of resource this is. Value: the fixed string \"androidenterprise#managedConfiguration\".", + "type": "string" + }, + "managedProperty": { + "description": "The set of managed properties for this configuration.", + "items": { + "$ref": "ManagedProperty" + }, + "type": "array" + }, + "productId": { + "description": "The ID of the product that the managed configuration is for, e.g. \"app:com.google.android.gm\".", + "type": "string" + } + }, + "type": "object" + }, + "ManagedConfigurationsForDeviceListResponse": { + "description": "The managed configuration resources for the device.", + "id": "ManagedConfigurationsForDeviceListResponse", + "properties": { + "kind": { + "default": "androidenterprise#managedConfigurationsForDeviceListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"androidenterprise#managedConfigurationsForDeviceListResponse\".", + "type": "string" + }, + "managedConfigurationForDevice": { + "description": "A managed configuration for an app on a specific device.", + "items": { + "$ref": "ManagedConfiguration" + }, + "type": "array" + } + }, + "type": "object" + }, + "ManagedConfigurationsForUserListResponse": { + "description": "The managed configuration resources for the user.", + "id": "ManagedConfigurationsForUserListResponse", + "properties": { + "kind": { + "default": "androidenterprise#managedConfigurationsForUserListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"androidenterprise#managedConfigurationsForUserListResponse\".", + "type": "string" + }, + "managedConfigurationForUser": { + "description": "A managed configuration for an app for a specific user.", + "items": { + "$ref": "ManagedConfiguration" + }, + "type": "array" + } + }, + "type": "object" + }, + "ManagedConfigurationsSettings": { + "description": "A managed configurations settings resource contains the set of managed properties that have been configured for an Android app to be applied to a set of users. The app's developer would have defined configurable properties in the managed configurations schema.", + "id": "ManagedConfigurationsSettings", + "properties": { + "kind": { + "default": "androidenterprise#managedConfigurationsSettings", + "description": "Identifies what kind of resource this is. Value: the fixed string \"androidenterprise#managedConfigurationsSettings\".", + "type": "string" + }, + "lastUpdatedTimestampMillis": { + "description": "The last updated time of the managed configuration settings in milliseconds since 1970-01-01T00:00:00Z.", + "format": "int64", + "type": "string" + }, + "managedProperty": { + "description": "The set of managed properties for this configuration.", + "items": { + "$ref": "ManagedProperty" + }, + "type": "array" + }, + "mcmId": { + "description": "The ID of the managed configurations settings.", + "type": "string" + }, + "name": { + "description": "The name of the managed configurations settings.", + "type": "string" + } + }, + "type": "object" + }, + "ManagedConfigurationsSettingsListResponse": { + "description": "The managed configurations settings for a product.", + "id": "ManagedConfigurationsSettingsListResponse", + "properties": { + "kind": { + "default": "androidenterprise#managedConfigurationsSettingsListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"androidenterprise#managedConfigurationsSettingsListResponse\".", + "type": "string" + }, + "managedConfigurationsSettings": { + "description": "A managed configurations settings for an app that may be assigned to a group of users in an enterprise.", + "items": { + "$ref": "ManagedConfigurationsSettings" + }, + "type": "array" + } + }, + "type": "object" + }, + "ManagedProperty": { + "description": "A managed property of a managed configuration. The property must match one of the properties in the app restrictions schema of the product. Exactly one of the value fields must be populated, and it must match the property's type in the app restrictions schema.", + "id": "ManagedProperty", + "properties": { + "key": { + "description": "The unique key that identifies the property.", + "type": "string" + }, + "valueBool": { + "description": "The boolean value - this will only be present if type of the property is bool.", + "type": "boolean" + }, + "valueBundle": { + "$ref": "ManagedPropertyBundle", + "description": "The bundle of managed properties - this will only be present if type of the property is bundle." + }, + "valueBundleArray": { + "description": "The list of bundles of properties - this will only be present if type of the property is bundle_array.", + "items": { + "$ref": "ManagedPropertyBundle" + }, + "type": "array" + }, + "valueInteger": { + "description": "The integer value - this will only be present if type of the property is integer.", + "format": "int32", + "type": "integer" + }, + "valueString": { + "description": "The string value - this will only be present if type of the property is string, choice or hidden.", + "type": "string" + }, + "valueStringArray": { + "description": "The list of string values - this will only be present if type of the property is multiselect.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "ManagedPropertyBundle": { + "description": "A bundle of managed properties.", + "id": "ManagedPropertyBundle", + "properties": { + "managedProperty": { + "description": "The list of managed properties.", + "items": { + "$ref": "ManagedProperty" + }, + "type": "array" + } + }, + "type": "object" + }, + "NewDeviceEvent": { + "description": "An event generated when a new device is ready to be managed.", + "id": "NewDeviceEvent", + "properties": { + "deviceId": { + "description": "The Android ID of the device. This field will always be present.", + "type": "string" + }, + "dpcPackageName": { + "description": "Policy app on the device.", + "type": "string" + }, + "managementType": { + "description": "Identifies the extent to which the device is controlled by an Android EMM in various deployment configurations.\n\nPossible values include: \n- \"managedDevice\", a device where the DPC is set as device owner, \n- \"managedProfile\", a device where the DPC is set as profile owner.", + "type": "string" + }, + "userId": { + "description": "The ID of the user. This field will always be present.", + "type": "string" + } + }, + "type": "object" + }, + "NewPermissionsEvent": { + "description": "An event generated when new permissions are added to an app.", + "id": "NewPermissionsEvent", + "properties": { + "approvedPermissions": { + "description": "The set of permissions that the enterprise admin has already approved for this application. Use Permissions.Get on the EMM API to retrieve details about these permissions.", + "items": { + "type": "string" + }, + "type": "array" + }, + "productId": { + "description": "The id of the product (e.g. \"app:com.google.android.gm\") for which new permissions were added. This field will always be present.", + "type": "string" + }, + "requestedPermissions": { + "description": "The set of permissions that the app is currently requesting. Use Permissions.Get on the EMM API to retrieve details about these permissions.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "Notification": { + "description": "A notification of one event relating to an enterprise.", + "id": "Notification", + "properties": { + "appRestrictionsSchemaChangeEvent": { + "$ref": "AppRestrictionsSchemaChangeEvent", + "description": "Notifications about new app restrictions schema changes." + }, + "appUpdateEvent": { + "$ref": "AppUpdateEvent", + "description": "Notifications about app updates." + }, + "enterpriseId": { + "description": "The ID of the enterprise for which the notification is sent. This will always be present.", + "type": "string" + }, + "installFailureEvent": { + "$ref": "InstallFailureEvent", + "description": "Notifications about an app installation failure." + }, + "newDeviceEvent": { + "$ref": "NewDeviceEvent", + "description": "Notifications about new devices." + }, + "newPermissionsEvent": { + "$ref": "NewPermissionsEvent", + "description": "Notifications about new app permissions." + }, + "notificationType": { + "description": "Type of the notification.", + "type": "string" + }, + "productApprovalEvent": { + "$ref": "ProductApprovalEvent", + "description": "Notifications about changes to a product's approval status." + }, + "productAvailabilityChangeEvent": { + "$ref": "ProductAvailabilityChangeEvent", + "description": "Notifications about product availability changes." + }, + "timestampMillis": { + "description": "The time when the notification was published in milliseconds since 1970-01-01T00:00:00Z. This will always be present.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "NotificationSet": { + "description": "A resource returned by the PullNotificationSet API, which contains a collection of notifications for enterprises associated with the service account authenticated for the request.", + "id": "NotificationSet", + "properties": { + "kind": { + "default": "androidenterprise#notificationSet", + "description": "Identifies what kind of resource this is. Value: the fixed string \"androidenterprise#notificationSet\".", + "type": "string" + }, + "notification": { + "description": "The notifications received, or empty if no notifications are present.", + "items": { + "$ref": "Notification" + }, + "type": "array" + }, + "notificationSetId": { + "description": "The notification set ID, required to mark the notification as received with the Enterprises.AcknowledgeNotification API. This will be omitted if no notifications are present.", + "type": "string" + } + }, + "type": "object" + }, + "PageInfo": { + "id": "PageInfo", + "properties": { + "resultPerPage": { + "format": "int32", + "type": "integer" + }, + "startIndex": { + "format": "int32", + "type": "integer" + }, + "totalResults": { + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "Permission": { + "description": "A Permissions resource represents some extra capability, to be granted to an Android app, which requires explicit consent. An enterprise admin must consent to these permissions on behalf of their users before an entitlement for the app can be created.\n\nThe permissions collection is read-only. The information provided for each permission (localized name and description) is intended to be used in the MDM user interface when obtaining consent from the enterprise.", + "id": "Permission", + "properties": { + "description": { + "description": "A longer description of the Permissions resource, giving more details of what it affects.", + "type": "string" + }, + "kind": { + "default": "androidenterprise#permission", + "description": "Identifies what kind of resource this is. Value: the fixed string \"androidenterprise#permission\".", + "type": "string" + }, + "name": { + "description": "The name of the permission.", + "type": "string" + }, + "permissionId": { + "description": "An opaque string uniquely identifying the permission.", + "type": "string" + } + }, + "type": "object" + }, + "Policy": { + "description": "The device policy for a given managed device.", + "id": "Policy", + "properties": { + "autoUpdatePolicy": { + "description": "The auto-update policy for apps installed on the device. \"choiceToTheUser\" allows the device's user to configure the app update policy. \"always\" enables auto updates. \"never\" disables auto updates. \"wifiOnly\" enables auto updates only when the device is connected to wifi.", + "type": "string" + }, + "maintenanceWindow": { + "$ref": "MaintenanceWindow", + "description": "The maintenance window defining when apps running in the foreground should be updated. This feature is only supported on fully managed devices." + }, + "productAvailabilityPolicy": { + "description": "The availability granted to the device for the specified products. \"all\" gives the device access to all products, regardless of approval status. \"allApproved\" entitles the device to access all products that are approved for the enterprise. \"allApproved\" and \"all\" do not enable automatic visibility of \"alpha\" or \"beta\" tracks. \"whitelist\" grants the device access the products specified in productPolicy[]. Only products that are approved or products that were previously approved (products with revoked approval) by the enterprise can be whitelisted. If no value is provided, the availability set at the user level is applied by default.", + "type": "string" + }, + "productPolicy": { + "description": "The list of product policies.", + "items": { + "$ref": "ProductPolicy" + }, + "type": "array" + } + }, + "type": "object" + }, + "Product": { + "description": "A Products resource represents an app in the Google Play store that is available to at least some users in the enterprise. (Some apps are restricted to a single enterprise, and no information about them is made available outside that enterprise.)\n\nThe information provided for each product (localized name, icon, link to the full Google Play details page) is intended to allow a basic representation of the product within an EMM user interface.", + "id": "Product", + "properties": { + "appVersion": { + "description": "App versions currently available for this product.", + "items": { + "$ref": "AppVersion" + }, + "type": "array" + }, + "authorName": { + "description": "The name of the author of the product (for example, the app developer).", + "type": "string" + }, + "availableCountries": { + "description": "The countries which this app is available in.", + "items": { + "type": "string" + }, + "type": "array" + }, + "availableTracks": { + "description": "The tracks that are visible to the enterprise.", + "items": { + "type": "string" + }, + "type": "array" + }, + "category": { + "description": "The app category (e.g. RACING, SOCIAL, etc.)", + "type": "string" + }, + "contentRating": { + "description": "The content rating for this app.", + "type": "string" + }, + "description": { + "description": "The localized promotional description, if available.", + "type": "string" + }, + "detailsUrl": { + "description": "A link to the (consumer) Google Play details page for the product.", + "type": "string" + }, + "distributionChannel": { + "description": "How and to whom the package is made available. The value publicGoogleHosted means that the package is available through the Play store and not restricted to a specific enterprise. The value privateGoogleHosted means that the package is a private app (restricted to an enterprise) but hosted by Google. The value privateSelfHosted means that the package is a private app (restricted to an enterprise) and is privately hosted.", + "type": "string" + }, + "iconUrl": { + "description": "A link to an image that can be used as an icon for the product. This image is suitable for use at up to 512px x 512px.", + "type": "string" + }, + "kind": { + "default": "androidenterprise#product", + "description": "Identifies what kind of resource this is. Value: the fixed string \"androidenterprise#product\".", + "type": "string" + }, + "lastUpdatedTimestampMillis": { + "description": "The approximate time (within 7 days) the app was last published, expressed in milliseconds since epoch.", + "format": "int64", + "type": "string" + }, + "minAndroidSdkVersion": { + "description": "The minimum Android SDK necessary to run the app.", + "format": "int32", + "type": "integer" + }, + "permissions": { + "description": "A list of permissions required by the app.", + "items": { + "$ref": "ProductPermission" + }, + "type": "array" + }, + "productId": { + "description": "A string of the form app:\u003cpackage name\u003e. For example, app:com.google.android.gm represents the Gmail app.", + "type": "string" + }, + "productPricing": { + "description": "Whether this product is free, free with in-app purchases, or paid. If the pricing is unknown, this means the product is not generally available anymore (even though it might still be available to people who own it).", + "type": "string" + }, + "recentChanges": { + "description": "A description of the recent changes made to the app.", + "type": "string" + }, + "requiresContainerApp": { + "description": "Deprecated.", + "type": "boolean" + }, + "screenshotUrls": { + "description": "A list of screenshot links representing the app.", + "items": { + "type": "string" + }, + "type": "array" + }, + "signingCertificate": { + "$ref": "ProductSigningCertificate", + "description": "The certificate used to sign this product." + }, + "smallIconUrl": { + "description": "A link to a smaller image that can be used as an icon for the product. This image is suitable for use at up to 128px x 128px.", + "type": "string" + }, + "title": { + "description": "The name of the product.", + "type": "string" + }, + "workDetailsUrl": { + "description": "A link to the managed Google Play details page for the product, for use by an Enterprise admin.", + "type": "string" + } + }, + "type": "object" + }, + "ProductApprovalEvent": { + "description": "An event generated when a product's approval status is changed.", + "id": "ProductApprovalEvent", + "properties": { + "approved": { + "description": "Whether the product was approved or unapproved. This field will always be present.", + "type": "string" + }, + "productId": { + "description": "The id of the product (e.g. \"app:com.google.android.gm\") for which the approval status has changed. This field will always be present.", + "type": "string" + } + }, + "type": "object" + }, + "ProductAvailabilityChangeEvent": { + "description": "An event generated whenever a product's availability changes.", + "id": "ProductAvailabilityChangeEvent", + "properties": { + "availabilityStatus": { + "description": "The new state of the product. This field will always be present.", + "type": "string" + }, + "productId": { + "description": "The id of the product (e.g. \"app:com.google.android.gm\") for which the product availability changed. This field will always be present.", + "type": "string" + } + }, + "type": "object" + }, + "ProductPermission": { + "description": "A product permissions resource represents the set of permissions required by a specific app and whether or not they have been accepted by an enterprise admin.\n\nThe API can be used to read the set of permissions, and also to update the set to indicate that permissions have been accepted.", + "id": "ProductPermission", + "properties": { + "permissionId": { + "description": "An opaque string uniquely identifying the permission.", + "type": "string" + }, + "state": { + "description": "Whether the permission has been accepted or not.", + "type": "string" + } + }, + "type": "object" + }, + "ProductPermissions": { + "description": "Information about the permissions required by a specific app and whether they have been accepted by the enterprise.", + "id": "ProductPermissions", + "properties": { + "kind": { + "default": "androidenterprise#productPermissions", + "description": "Identifies what kind of resource this is. Value: the fixed string \"androidenterprise#productPermissions\".", + "type": "string" + }, + "permission": { + "description": "The permissions required by the app.", + "items": { + "$ref": "ProductPermission" + }, + "type": "array" + }, + "productId": { + "description": "The ID of the app that the permissions relate to, e.g. \"app:com.google.android.gm\".", + "type": "string" + } + }, + "type": "object" + }, + "ProductPolicy": { + "description": "The policy for a product.", + "id": "ProductPolicy", + "properties": { + "productId": { + "description": "The ID of the product. For example, \"app:com.google.android.gm\".", + "type": "string" + }, + "tracks": { + "description": "Grants visibility to the specified track(s) of the product to the device. The track available to the device is based on the following order of preference: alpha, beta, production. For example, if an app has a prod version, a beta version and an alpha version and the enterprise has been granted visibility to both the alpha and beta tracks, if tracks is {\"beta\", \"production\"} then the beta version of the app is made available to the device. If there are no app versions in the specified track adding the \"alpha\" and \"beta\" values to the list of tracks will have no effect. Note that the enterprise requires access to alpha and/or beta tracks before users can be granted visibility to apps in those tracks.\n\nThe allowed sets are: {} (considered equivalent to {\"production\"}) {\"production\"} {\"beta\", \"production\"} {\"alpha\", \"beta\", \"production\"} The order of elements is not relevant. Any other set of tracks will be rejected with an error.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "ProductSet": { + "description": "A set of products.", + "id": "ProductSet", + "properties": { + "kind": { + "default": "androidenterprise#productSet", + "description": "Identifies what kind of resource this is. Value: the fixed string \"androidenterprise#productSet\".", + "type": "string" + }, + "productId": { + "description": "The list of product IDs making up the set of products.", + "items": { + "type": "string" + }, + "type": "array" + }, + "productSetBehavior": { + "description": "The interpretation of this product set. \"unknown\" should never be sent and is ignored if received. \"whitelist\" means that the user is entitled to access the product set. \"includeAll\" means that all products are accessible, including products that are approved, products with revoked approval, and products that have never been approved. \"allApproved\" means that the user is entitled to access all products that are approved for the enterprise. If the value is \"allApproved\" or \"includeAll\", the productId field is ignored. If no value is provided, it is interpreted as \"whitelist\" for backwards compatibility. Further \"allApproved\" or \"includeAll\" does not enable automatic visibility of \"alpha\" or \"beta\" tracks for Android app. Use ProductVisibility to enable \"alpha\" or \"beta\" tracks per user.", + "type": "string" + }, + "productVisibility": { + "description": "Additional list of product IDs making up the product set. Unlike the productID array, in this list It's possible to specify which tracks (alpha, beta, production) of a product are visible to the user. See ProductVisibility and its fields for more information. Specifying the same product ID both here and in the productId array is not allowed and it will result in an error.", + "items": { + "$ref": "ProductVisibility" + }, + "type": "array" + } + }, + "type": "object" + }, + "ProductSigningCertificate": { + "id": "ProductSigningCertificate", + "properties": { + "certificateHashSha1": { + "description": "The base64 urlsafe encoded SHA1 hash of the certificate. (This field is deprecated in favor of SHA2-256. It should not be used and may be removed at any time.)", + "type": "string" + }, + "certificateHashSha256": { + "description": "The base64 urlsafe encoded SHA2-256 hash of the certificate.", + "type": "string" + } + }, + "type": "object" + }, + "ProductVisibility": { + "description": "A product to be made visible to a user.", + "id": "ProductVisibility", + "properties": { + "productId": { + "description": "The product ID to make visible to the user. Required for each item in the productVisibility list.", + "type": "string" + }, + "tracks": { + "description": "Grants visibility to the specified track(s) of the product to the user. The track available to the user is based on the following order of preference: alpha, beta, production. For example, if an app has a prod version, a beta version and an alpha version and the enterprise has been granted visibility to both the alpha and beta tracks, if tracks is {\"beta\", \"production\"} the user will be able to install the app and they will get the beta version of the app. If there are no app versions in the specified track adding the \"alpha\" and \"beta\" values to the list of tracks will have no effect. Note that the enterprise requires access to alpha and/or beta tracks before users can be granted visibility to apps in those tracks.\n\nThe allowed sets are: {} (considered equivalent to {\"production\"}) {\"production\"} {\"beta\", \"production\"} {\"alpha\", \"beta\", \"production\"} The order of elements is not relevant. Any other set of tracks will be rejected with an error.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "ProductsApproveRequest": { + "id": "ProductsApproveRequest", + "properties": { + "approvalUrlInfo": { + "$ref": "ApprovalUrlInfo", + "description": "The approval URL that was shown to the user. Only the permissions shown to the user with that URL will be accepted, which may not be the product's entire set of permissions. For example, the URL may only display new permissions from an update after the product was approved, or not include new permissions if the product was updated since the URL was generated." + }, + "approvedPermissions": { + "description": "Sets how new permission requests for the product are handled. \"allPermissions\" automatically approves all current and future permissions for the product. \"currentPermissionsOnly\" approves the current set of permissions for the product, but any future permissions added through updates will require manual reapproval. If not specified, only the current set of permissions will be approved.", + "type": "string" + } + }, + "type": "object" + }, + "ProductsGenerateApprovalUrlResponse": { + "id": "ProductsGenerateApprovalUrlResponse", + "properties": { + "url": { + "description": "A URL that can be rendered in an iframe to display the permissions (if any) of a product. This URL can be used to approve the product only once and only within 24 hours of being generated, using the Products.approve call. If the product is currently unapproved and has no permissions, this URL will point to an empty page. If the product is currently approved, a URL will only be generated if that product has added permissions since it was last approved, and the URL will only display those new permissions that have not yet been accepted.", + "type": "string" + } + }, + "type": "object" + }, + "ProductsListResponse": { + "description": "The matching products.", + "id": "ProductsListResponse", + "properties": { + "kind": { + "default": "androidenterprise#productsListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"androidenterprise#productsListResponse\".", + "type": "string" + }, + "pageInfo": { + "$ref": "PageInfo", + "description": "General pagination information." + }, + "product": { + "description": "Information about a product (e.g. an app) in the Google Play store, for display to an enterprise admin.", + "items": { + "$ref": "Product" + }, + "type": "array" + }, + "tokenPagination": { + "$ref": "TokenPagination", + "description": "Pagination information for token pagination." + } + }, + "type": "object" + }, + "ServiceAccount": { + "description": "A service account identity, including the name and credentials that can be used to authenticate as the service account.", + "id": "ServiceAccount", + "properties": { + "key": { + "$ref": "ServiceAccountKey", + "description": "Credentials that can be used to authenticate as this ServiceAccount." + }, + "kind": { + "default": "androidenterprise#serviceAccount", + "description": "Identifies what kind of resource this is. Value: the fixed string \"androidenterprise#serviceAccount\".", + "type": "string" + }, + "name": { + "description": "The account name of the service account, in the form of an email address. Assigned by the server.", + "type": "string" + } + }, + "type": "object" + }, + "ServiceAccountKey": { + "description": "Credentials that can be used to authenticate as a service account.", + "id": "ServiceAccountKey", + "properties": { + "data": { + "description": "The body of the private key credentials file, in string format. This is only populated when the ServiceAccountKey is created, and is not stored by Google.", + "type": "string" + }, + "id": { + "description": "An opaque, unique identifier for this ServiceAccountKey. Assigned by the server.", + "type": "string" + }, + "kind": { + "default": "androidenterprise#serviceAccountKey", + "description": "Identifies what kind of resource this is. Value: the fixed string \"androidenterprise#serviceAccountKey\".", + "type": "string" + }, + "publicData": { + "description": "Public key data for the credentials file. This is an X.509 cert. If you are using the googleCredentials key type, this is identical to the cert that can be retrieved by using the X.509 cert url inside of the credentials file.", + "type": "string" + }, + "type": { + "annotations": { + "required": [ + "androidenterprise.serviceaccountkeys.insert" + ] + }, + "description": "The file format of the generated key data.", + "type": "string" + } + }, + "type": "object" + }, + "ServiceAccountKeysListResponse": { + "id": "ServiceAccountKeysListResponse", + "properties": { + "serviceAccountKey": { + "description": "The service account credentials.", + "items": { + "$ref": "ServiceAccountKey" + }, + "type": "array" + } + }, + "type": "object" + }, + "SignupInfo": { + "description": "A resource returned by the GenerateSignupUrl API, which contains the Signup URL and Completion Token.", + "id": "SignupInfo", + "properties": { + "completionToken": { + "description": "An opaque token that will be required, along with the Enterprise Token, for obtaining the enterprise resource from CompleteSignup.", + "type": "string" + }, + "kind": { + "default": "androidenterprise#signupInfo", + "description": "Identifies what kind of resource this is. Value: the fixed string \"androidenterprise#signupInfo\".", + "type": "string" + }, + "url": { + "description": "A URL under which the Admin can sign up for an enterprise. The page pointed to cannot be rendered in an iframe.", + "type": "string" + } + }, + "type": "object" + }, + "StoreCluster": { + "description": "Definition of a managed Google Play store cluster, a list of products displayed as part of a store page.", + "id": "StoreCluster", + "properties": { + "id": { + "description": "Unique ID of this cluster. Assigned by the server. Immutable once assigned.", + "type": "string" + }, + "kind": { + "default": "androidenterprise#storeCluster", + "description": "Identifies what kind of resource this is. Value: the fixed string \"androidenterprise#storeCluster\".", + "type": "string" + }, + "name": { + "description": "Ordered list of localized strings giving the name of this page. The text displayed is the one that best matches the user locale, or the first entry if there is no good match. There needs to be at least one entry.", + "items": { + "$ref": "LocalizedText" + }, + "type": "array" + }, + "orderInPage": { + "description": "String (US-ASCII only) used to determine order of this cluster within the parent page's elements. Page elements are sorted in lexicographic order of this field. Duplicated values are allowed, but ordering between elements with duplicate order is undefined.\n\nThe value of this field is never visible to a user, it is used solely for the purpose of defining an ordering. Maximum length is 256 characters.", + "type": "string" + }, + "productId": { + "description": "List of products in the order they are displayed in the cluster. There should not be duplicates within a cluster.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "StoreLayout": { + "description": "General setting for the managed Google Play store layout, currently only specifying the page to display the first time the store is opened.", + "id": "StoreLayout", + "properties": { + "homepageId": { + "description": "The ID of the store page to be used as the homepage. The homepage is the first page shown in the managed Google Play Store.\n\nNot specifying a homepage is equivalent to setting the store layout type to \"basic\".", + "type": "string" + }, + "kind": { + "default": "androidenterprise#storeLayout", + "description": "Identifies what kind of resource this is. Value: the fixed string \"androidenterprise#storeLayout\".", + "type": "string" + }, + "storeLayoutType": { + "description": "The store layout type. By default, this value is set to \"basic\" if the homepageId field is not set, and to \"custom\" otherwise. If set to \"basic\", the layout will consist of all approved apps that have been whitelisted for the user.", + "type": "string" + } + }, + "type": "object" + }, + "StoreLayoutClustersListResponse": { + "description": "The store page resources for the enterprise.", + "id": "StoreLayoutClustersListResponse", + "properties": { + "cluster": { + "description": "A store cluster of an enterprise.", + "items": { + "$ref": "StoreCluster" + }, + "type": "array" + }, + "kind": { + "default": "androidenterprise#storeLayoutClustersListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"androidenterprise#storeLayoutClustersListResponse\".", + "type": "string" + } + }, + "type": "object" + }, + "StoreLayoutPagesListResponse": { + "description": "The store page resources for the enterprise.", + "id": "StoreLayoutPagesListResponse", + "properties": { + "kind": { + "default": "androidenterprise#storeLayoutPagesListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"androidenterprise#storeLayoutPagesListResponse\".", + "type": "string" + }, + "page": { + "description": "A store page of an enterprise.", + "items": { + "$ref": "StorePage" + }, + "type": "array" + } + }, + "type": "object" + }, + "StorePage": { + "description": "Definition of a managed Google Play store page, made of a localized name and links to other pages. A page also contains clusters defined as a subcollection.", + "id": "StorePage", + "properties": { + "id": { + "description": "Unique ID of this page. Assigned by the server. Immutable once assigned.", + "type": "string" + }, + "kind": { + "default": "androidenterprise#storePage", + "description": "Identifies what kind of resource this is. Value: the fixed string \"androidenterprise#storePage\".", + "type": "string" + }, + "link": { + "description": "Ordered list of pages a user should be able to reach from this page. The pages must exist, must not be this page, and once a link is created the page linked to cannot be deleted until all links to it are removed. It is recommended that the basic pages are created first, before adding the links between pages.\n\nNo attempt is made to verify that all pages are reachable from the homepage.", + "items": { + "type": "string" + }, + "type": "array" + }, + "name": { + "description": "Ordered list of localized strings giving the name of this page. The text displayed is the one that best matches the user locale, or the first entry if there is no good match. There needs to be at least one entry.", + "items": { + "$ref": "LocalizedText" + }, + "type": "array" + } + }, + "type": "object" + }, + "TokenPagination": { + "id": "TokenPagination", + "properties": { + "nextPageToken": { + "type": "string" + }, + "previousPageToken": { + "type": "string" + } + }, + "type": "object" + }, + "User": { + "description": "A Users resource represents an account associated with an enterprise. The account may be specific to a device or to an individual user (who can then use the account across multiple devices). The account may provide access to managed Google Play only, or to other Google services, depending on the identity model: \n- The Google managed domain identity model requires synchronization to Google account sources (via primaryEmail). \n- The managed Google Play Accounts identity model provides a dynamic means for enterprises to create user or device accounts as needed. These accounts provide access to managed Google Play.", + "id": "User", + "properties": { + "accountIdentifier": { + "annotations": { + "required": [ + "androidenterprise.users.insert" + ] + }, + "description": "A unique identifier you create for this user, such as \"user342\" or \"asset#44418\". Do not use personally identifiable information (PII) for this property. Must always be set for EMM-managed users. Not set for Google-managed users.", + "type": "string" + }, + "accountType": { + "annotations": { + "required": [ + "androidenterprise.users.insert" + ] + }, + "description": "The type of account that this user represents. A userAccount can be installed on multiple devices, but a deviceAccount is specific to a single device. An EMM-managed user (emmManaged) can be either type (userAccount, deviceAccount), but a Google-managed user (googleManaged) is always a userAccount.", + "type": "string" + }, + "displayName": { + "description": "The name that will appear in user interfaces. Setting this property is optional when creating EMM-managed users. If you do set this property, use something generic about the organization (such as \"Example, Inc.\") or your name (as EMM). Not used for Google-managed user accounts.", + "type": "string" + }, + "id": { + "description": "The unique ID for the user.", + "type": "string" + }, + "kind": { + "default": "androidenterprise#user", + "description": "Identifies what kind of resource this is. Value: the fixed string \"androidenterprise#user\".", + "type": "string" + }, + "managementType": { + "description": "The entity that manages the user. With googleManaged users, the source of truth is Google so EMMs have to make sure a Google Account exists for the user. With emmManaged users, the EMM is in charge.", + "type": "string" + }, + "primaryEmail": { + "description": "The user's primary email address, for example, \"jsmith@example.com\". Will always be set for Google managed users and not set for EMM managed users.", + "type": "string" + } + }, + "type": "object" + }, + "UserToken": { + "description": "A UserToken is used by a user when setting up a managed device or profile with their managed Google Play account on a device. When the user enters their email address and token (activation code) the appropriate EMM app can be automatically downloaded.", + "id": "UserToken", + "properties": { + "kind": { + "default": "androidenterprise#userToken", + "description": "Identifies what kind of resource this is. Value: the fixed string \"androidenterprise#userToken\".", + "type": "string" + }, + "token": { + "description": "The token (activation code) to be entered by the user. This consists of a sequence of decimal digits. Note that the leading digit may be 0.", + "type": "string" + }, + "userId": { + "description": "The unique ID for the user.", + "type": "string" + } + }, + "type": "object" + }, + "UsersListResponse": { + "description": "The matching user resources.", + "id": "UsersListResponse", + "properties": { + "kind": { + "default": "androidenterprise#usersListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"androidenterprise#usersListResponse\".", + "type": "string" + }, + "user": { + "description": "A user of an enterprise.", + "items": { + "$ref": "User" + }, + "type": "array" + } + }, + "type": "object" + }, + "VariableSet": { + "description": "A variable set is a key-value pair of EMM-provided placeholders and its corresponding value, which is attributed to a user. For example, $FIRSTNAME could be a placeholder, and its value could be Alice. Placeholders should start with a '$' sign and should be alphanumeric only.", + "id": "VariableSet", + "properties": { + "kind": { + "default": "androidenterprise#variableSet", + "description": "Identifies what kind of resource this is. Value: the fixed string \"androidenterprise#variableSet\".", + "type": "string" + }, + "placeholder": { + "description": "The placeholder string; defined by EMM.", + "type": "string" + }, + "userValue": { + "description": "The value of the placeholder, specific to the user.", + "type": "string" + } + }, + "type": "object" } - } }, - "GroupLicensesListResponse": { - "id": "GroupLicensesListResponse", - "type": "object", - "description": "The grouplicense resources for the enterprise.", - "properties": { - "groupLicense": { - "type": "array", - "description": "A group license for a product approved for use in the enterprise.", - "items": { - "$ref": "GroupLicense" - } - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"androidenterprise#groupLicensesListResponse\".", - "default": "androidenterprise#groupLicensesListResponse" - } - } - }, - "Install": { - "id": "Install", - "type": "object", - "description": "The existence of an Installs resource indicates that an app is installed on a particular device (or that an install is pending).\n\nThe API can be used to create an install resource using the update method. This triggers the actual install of the app on the device. If the user does not already have an entitlement for the app, then an attempt is made to create one. If this fails (for example, because the app is not free and there is no available license), then the creation of the install fails.\n\nThe API can also be used to update an installed app. If the update method is used on an existing install, then the app will be updated to the latest available version.\n\nNote that it is not possible to force the installation of a specific version of an app: the version code is read-only.\n\nIf a user installs an app themselves (as permitted by the enterprise), then again an install resource and possibly an entitlement resource are automatically created.\n\nThe API can also be used to delete an install resource, which triggers the removal of the app from the device. Note that deleting an install does not automatically remove the corresponding entitlement, even if there are no remaining installs. The install resource will also be deleted if the user uninstalls the app themselves.", - "properties": { - "installState": { - "type": "string", - "description": "Install state. The state \"installPending\" means that an install request has recently been made and download to the device is in progress. The state \"installed\" means that the app has been installed. This field is read-only." - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"androidenterprise#install\".", - "default": "androidenterprise#install" - }, - "productId": { - "type": "string", - "description": "The ID of the product that the install is for. For example, \"app:com.google.android.gm\"." - }, - "versionCode": { - "type": "integer", - "description": "The version of the installed product. Guaranteed to be set only if the install state is \"installed\".", - "format": "int32" - } - } - }, - "InstallFailureEvent": { - "id": "InstallFailureEvent", - "type": "object", - "description": "An event generated when an app installation failed on a device", - "properties": { - "deviceId": { - "type": "string", - "description": "The Android ID of the device. This field will always be present." - }, - "failureDetails": { - "type": "string", - "description": "Additional details on the failure if applicable." - }, - "failureReason": { - "type": "string", - "description": "The reason for the installation failure. This field will always be present." - }, - "productId": { - "type": "string", - "description": "The id of the product (e.g. \"app:com.google.android.gm\") for which the install failure event occured. This field will always be present." - }, - "userId": { - "type": "string", - "description": "The ID of the user. This field will always be present." - } - } - }, - "InstallsListResponse": { - "id": "InstallsListResponse", - "type": "object", - "description": "The install resources for the device.", - "properties": { - "install": { - "type": "array", - "description": "An installation of an app for a user on a specific device. The existence of an install implies that the user must have an entitlement to the app.", - "items": { - "$ref": "Install" - } - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"androidenterprise#installsListResponse\".", - "default": "androidenterprise#installsListResponse" - } - } - }, - "LocalizedText": { - "id": "LocalizedText", - "type": "object", - "description": "A localized string with its locale.", - "properties": { - "locale": { - "type": "string", - "description": "The BCP47 tag for a locale. (e.g. \"en-US\", \"de\")." - }, - "text": { - "type": "string", - "description": "The text localized in the associated locale." - } - } - }, - "ManagedConfiguration": { - "id": "ManagedConfiguration", - "type": "object", - "description": "A managed configuration resource contains the set of managed properties defined by the app developer in the app's managed configurations schema, as well as any configuration variables defined for the user.", - "properties": { - "configurationVariables": { - "$ref": "ConfigurationVariables", - "description": "Contains the ID of the managed configuration profile and the set of configuration variables (if any) defined for the user." - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"androidenterprise#managedConfiguration\".", - "default": "androidenterprise#managedConfiguration" - }, - "managedProperty": { - "type": "array", - "description": "The set of managed properties for this configuration.", - "items": { - "$ref": "ManagedProperty" - } - }, - "productId": { - "type": "string", - "description": "The ID of the product that the managed configuration is for, e.g. \"app:com.google.android.gm\"." - } - } - }, - "ManagedConfigurationsForDeviceListResponse": { - "id": "ManagedConfigurationsForDeviceListResponse", - "type": "object", - "description": "The managed configuration resources for the device.", - "properties": { - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"androidenterprise#managedConfigurationsForDeviceListResponse\".", - "default": "androidenterprise#managedConfigurationsForDeviceListResponse" - }, - "managedConfigurationForDevice": { - "type": "array", - "description": "A managed configuration for an app on a specific device.", - "items": { - "$ref": "ManagedConfiguration" - } - } - } - }, - "ManagedConfigurationsForUserListResponse": { - "id": "ManagedConfigurationsForUserListResponse", - "type": "object", - "description": "The managed configuration resources for the user.", - "properties": { - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"androidenterprise#managedConfigurationsForUserListResponse\".", - "default": "androidenterprise#managedConfigurationsForUserListResponse" - }, - "managedConfigurationForUser": { - "type": "array", - "description": "A managed configuration for an app for a specific user.", - "items": { - "$ref": "ManagedConfiguration" - } - } - } - }, - "ManagedConfigurationsSettings": { - "id": "ManagedConfigurationsSettings", - "type": "object", - "description": "A managed configurations settings resource contains the set of managed properties that have been configured for an Android app to be applied to a set of users. The app's developer would have defined configurable properties in the managed configurations schema.", - "properties": { - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"androidenterprise#managedConfigurationsSettings\".", - "default": "androidenterprise#managedConfigurationsSettings" - }, - "managedProperty": { - "type": "array", - "description": "The set of managed properties for this configuration.", - "items": { - "$ref": "ManagedProperty" - } - }, - "mcmId": { - "type": "string", - "description": "The ID of the managed configurations settings." - }, - "name": { - "type": "string", - "description": "The name of the managed configurations settings." - } - } - }, - "ManagedConfigurationsSettingsListResponse": { - "id": "ManagedConfigurationsSettingsListResponse", - "type": "object", - "description": "The managed configurations settings for a product.", - "properties": { - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"androidenterprise#managedConfigurationsSettingsListResponse\".", - "default": "androidenterprise#managedConfigurationsSettingsListResponse" - }, - "managedConfigurationsSettings": { - "type": "array", - "description": "A managed configurations settings for an app that may be assigned to a group of users in an enterprise.", - "items": { - "$ref": "ManagedConfigurationsSettings" - } - } - } - }, - "ManagedProperty": { - "id": "ManagedProperty", - "type": "object", - "description": "A managed property of a managed configuration. The property must match one of the properties in the app restrictions schema of the product. Exactly one of the value fields must be populated, and it must match the property's type in the app restrictions schema.", - "properties": { - "key": { - "type": "string", - "description": "The unique key that identifies the property." - }, - "valueBool": { - "type": "boolean", - "description": "The boolean value - this will only be present if type of the property is bool." - }, - "valueBundle": { - "$ref": "ManagedPropertyBundle", - "description": "The bundle of managed properties - this will only be present if type of the property is bundle." - }, - "valueBundleArray": { - "type": "array", - "description": "The list of bundles of properties - this will only be present if type of the property is bundle_array.", - "items": { - "$ref": "ManagedPropertyBundle" - } - }, - "valueInteger": { - "type": "integer", - "description": "The integer value - this will only be present if type of the property is integer.", - "format": "int32" - }, - "valueString": { - "type": "string", - "description": "The string value - this will only be present if type of the property is string, choice or hidden." - }, - "valueStringArray": { - "type": "array", - "description": "The list of string values - this will only be present if type of the property is multiselect.", - "items": { - "type": "string" - } - } - } - }, - "ManagedPropertyBundle": { - "id": "ManagedPropertyBundle", - "type": "object", - "description": "A bundle of managed properties.", - "properties": { - "managedProperty": { - "type": "array", - "description": "The list of managed properties.", - "items": { - "$ref": "ManagedProperty" - } - } - } - }, - "NewDeviceEvent": { - "id": "NewDeviceEvent", - "type": "object", - "description": "An event generated when a new device is ready to be managed.", - "properties": { - "deviceId": { - "type": "string", - "description": "The Android ID of the device. This field will always be present." - }, - "dpcPackageName": { - "type": "string", - "description": "Policy app on the device." - }, - "managementType": { - "type": "string", - "description": "Identifies the extent to which the device is controlled by an Android EMM in various deployment configurations.\n\nPossible values include: \n- \"managedDevice\", a device where the DPC is set as device owner, \n- \"managedProfile\", a device where the DPC is set as profile owner." - }, - "userId": { - "type": "string", - "description": "The ID of the user. This field will always be present." - } - } - }, - "NewPermissionsEvent": { - "id": "NewPermissionsEvent", - "type": "object", - "description": "An event generated when new permissions are added to an app.", - "properties": { - "approvedPermissions": { - "type": "array", - "description": "The set of permissions that the enterprise admin has already approved for this application. Use Permissions.Get on the EMM API to retrieve details about these permissions.", - "items": { - "type": "string" - } - }, - "productId": { - "type": "string", - "description": "The id of the product (e.g. \"app:com.google.android.gm\") for which new permissions were added. This field will always be present." - }, - "requestedPermissions": { - "type": "array", - "description": "The set of permissions that the app is currently requesting. Use Permissions.Get on the EMM API to retrieve details about these permissions.", - "items": { - "type": "string" - } - } - } - }, - "Notification": { - "id": "Notification", - "type": "object", - "description": "A notification of one event relating to an enterprise.", - "properties": { - "appRestrictionsSchemaChangeEvent": { - "$ref": "AppRestrictionsSchemaChangeEvent", - "description": "Notifications about new app restrictions schema changes." - }, - "appUpdateEvent": { - "$ref": "AppUpdateEvent", - "description": "Notifications about app updates." - }, - "enterpriseId": { - "type": "string", - "description": "The ID of the enterprise for which the notification is sent. This will always be present." - }, - "installFailureEvent": { - "$ref": "InstallFailureEvent", - "description": "Notifications about an app installation failure." - }, - "newDeviceEvent": { - "$ref": "NewDeviceEvent", - "description": "Notifications about new devices." - }, - "newPermissionsEvent": { - "$ref": "NewPermissionsEvent", - "description": "Notifications about new app permissions." - }, - "notificationType": { - "type": "string", - "description": "Type of the notification." - }, - "productApprovalEvent": { - "$ref": "ProductApprovalEvent", - "description": "Notifications about changes to a product's approval status." - }, - "productAvailabilityChangeEvent": { - "$ref": "ProductAvailabilityChangeEvent", - "description": "Notifications about product availability changes." - }, - "timestampMillis": { - "type": "string", - "description": "The time when the notification was published in milliseconds since 1970-01-01T00:00:00Z. This will always be present.", - "format": "int64" - } - } - }, - "NotificationSet": { - "id": "NotificationSet", - "type": "object", - "description": "A resource returned by the PullNotificationSet API, which contains a collection of notifications for enterprises associated with the service account authenticated for the request.", - "properties": { - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"androidenterprise#notificationSet\".", - "default": "androidenterprise#notificationSet" - }, - "notification": { - "type": "array", - "description": "The notifications received, or empty if no notifications are present.", - "items": { - "$ref": "Notification" - } - }, - "notificationSetId": { - "type": "string", - "description": "The notification set ID, required to mark the notification as received with the Enterprises.AcknowledgeNotification API. This will be omitted if no notifications are present." - } - } - }, - "PageInfo": { - "id": "PageInfo", - "type": "object", - "properties": { - "resultPerPage": { - "type": "integer", - "format": "int32" - }, - "startIndex": { - "type": "integer", - "format": "int32" - }, - "totalResults": { - "type": "integer", - "format": "int32" - } - } - }, - "Permission": { - "id": "Permission", - "type": "object", - "description": "A Permissions resource represents some extra capability, to be granted to an Android app, which requires explicit consent. An enterprise admin must consent to these permissions on behalf of their users before an entitlement for the app can be created.\n\nThe permissions collection is read-only. The information provided for each permission (localized name and description) is intended to be used in the MDM user interface when obtaining consent from the enterprise.", - "properties": { - "description": { - "type": "string", - "description": "A longer description of the Permissions resource, giving more details of what it affects." - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"androidenterprise#permission\".", - "default": "androidenterprise#permission" - }, - "name": { - "type": "string", - "description": "The name of the permission." - }, - "permissionId": { - "type": "string", - "description": "An opaque string uniquely identifying the permission." - } - } - }, - "Policy": { - "id": "Policy", - "type": "object", - "description": "The device policy for a given managed device.", - "properties": { - "productAvailabilityPolicy": { - "type": "string", - "description": "The availability granted to the device for the specified products. \"all\" gives the device access to all products, regardless of approval status. \"allApproved\" entitles the device to access all products that are approved for the enterprise. \"allApproved\" and \"all\" do not enable automatic visibility of \"alpha\" or \"beta\" tracks. \"whitelist\" grants the device access the products specified in productPolicy[]. Only products that are approved or products that were previously approved (products with revoked approval) by the enterprise can be whitelisted. If no value is provided, the availability set at the user level is applied by default." - }, - "productPolicy": { - "type": "array", - "description": "The list of product policies.", - "items": { - "$ref": "ProductPolicy" - } - } - } - }, - "Product": { - "id": "Product", - "type": "object", - "description": "A Products resource represents an app in the Google Play store that is available to at least some users in the enterprise. (Some apps are restricted to a single enterprise, and no information about them is made available outside that enterprise.)\n\nThe information provided for each product (localized name, icon, link to the full Google Play details page) is intended to allow a basic representation of the product within an EMM user interface.", - "properties": { - "appVersion": { - "type": "array", - "description": "App versions currently available for this product.", - "items": { - "$ref": "AppVersion" - } - }, - "authorName": { - "type": "string", - "description": "The name of the author of the product (for example, the app developer)." - }, - "availableCountries": { - "type": "array", - "description": "The countries which this app is available in.", - "items": { - "type": "string" - } - }, - "availableTracks": { - "type": "array", - "description": "The tracks that are visible to the enterprise.", - "items": { - "type": "string" - } - }, - "category": { - "type": "string", - "description": "The app category (e.g. RACING, SOCIAL, etc.)" - }, - "contentRating": { - "type": "string", - "description": "The content rating for this app." - }, - "description": { - "type": "string", - "description": "The localized promotional description, if available." - }, - "detailsUrl": { - "type": "string", - "description": "A link to the (consumer) Google Play details page for the product." - }, - "distributionChannel": { - "type": "string", - "description": "How and to whom the package is made available. The value publicGoogleHosted means that the package is available through the Play store and not restricted to a specific enterprise. The value privateGoogleHosted means that the package is a private app (restricted to an enterprise) but hosted by Google. The value privateSelfHosted means that the package is a private app (restricted to an enterprise) and is privately hosted." - }, - "iconUrl": { - "type": "string", - "description": "A link to an image that can be used as an icon for the product. This image is suitable for use at up to 512px x 512px." - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"androidenterprise#product\".", - "default": "androidenterprise#product" - }, - "lastUpdatedTimestampMillis": { - "type": "string", - "description": "The approximate time (within 7 days) the app was last published, expressed in milliseconds since epoch.", - "format": "int64" - }, - "minAndroidSdkVersion": { - "type": "integer", - "description": "The minimum Android SDK necessary to run the app.", - "format": "int32" - }, - "permissions": { - "type": "array", - "description": "A list of permissions required by the app.", - "items": { - "$ref": "ProductPermission" - } - }, - "productId": { - "type": "string", - "description": "A string of the form app:\u003cpackage name\u003e. For example, app:com.google.android.gm represents the Gmail app." - }, - "productPricing": { - "type": "string", - "description": "Whether this product is free, free with in-app purchases, or paid. If the pricing is unknown, this means the product is not generally available anymore (even though it might still be available to people who own it)." - }, - "recentChanges": { - "type": "string", - "description": "A description of the recent changes made to the app." - }, - "requiresContainerApp": { - "type": "boolean", - "description": "Deprecated." - }, - "screenshotUrls": { - "type": "array", - "description": "A list of screenshot links representing the app.", - "items": { - "type": "string" - } - }, - "signingCertificate": { - "$ref": "ProductSigningCertificate", - "description": "The certificate used to sign this product." - }, - "smallIconUrl": { - "type": "string", - "description": "A link to a smaller image that can be used as an icon for the product. This image is suitable for use at up to 128px x 128px." - }, - "title": { - "type": "string", - "description": "The name of the product." - }, - "workDetailsUrl": { - "type": "string", - "description": "A link to the managed Google Play details page for the product, for use by an Enterprise admin." - } - } - }, - "ProductApprovalEvent": { - "id": "ProductApprovalEvent", - "type": "object", - "description": "An event generated when a product's approval status is changed.", - "properties": { - "approved": { - "type": "string", - "description": "Whether the product was approved or unapproved. This field will always be present." - }, - "productId": { - "type": "string", - "description": "The id of the product (e.g. \"app:com.google.android.gm\") for which the approval status has changed. This field will always be present." - } - } - }, - "ProductAvailabilityChangeEvent": { - "id": "ProductAvailabilityChangeEvent", - "type": "object", - "description": "An event generated whenever a product's availability changes.", - "properties": { - "availabilityStatus": { - "type": "string", - "description": "The new state of the product. This field will always be present." - }, - "productId": { - "type": "string", - "description": "The id of the product (e.g. \"app:com.google.android.gm\") for which the product availability changed. This field will always be present." - } - } - }, - "ProductPermission": { - "id": "ProductPermission", - "type": "object", - "description": "A product permissions resource represents the set of permissions required by a specific app and whether or not they have been accepted by an enterprise admin.\n\nThe API can be used to read the set of permissions, and also to update the set to indicate that permissions have been accepted.", - "properties": { - "permissionId": { - "type": "string", - "description": "An opaque string uniquely identifying the permission." - }, - "state": { - "type": "string", - "description": "Whether the permission has been accepted or not." - } - } - }, - "ProductPermissions": { - "id": "ProductPermissions", - "type": "object", - "description": "Information about the permissions required by a specific app and whether they have been accepted by the enterprise.", - "properties": { - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"androidenterprise#productPermissions\".", - "default": "androidenterprise#productPermissions" - }, - "permission": { - "type": "array", - "description": "The permissions required by the app.", - "items": { - "$ref": "ProductPermission" - } - }, - "productId": { - "type": "string", - "description": "The ID of the app that the permissions relate to, e.g. \"app:com.google.android.gm\"." - } - } - }, - "ProductPolicy": { - "id": "ProductPolicy", - "type": "object", - "description": "The policy for a product.", - "properties": { - "productId": { - "type": "string", - "description": "The ID of the product. For example, \"app:com.google.android.gm\"." - }, - "tracks": { - "type": "array", - "description": "Grants visibility to the specified track(s) of the product to the device. The track available to the device is based on the following order of preference: alpha, beta, production. For example, if an app has a prod version, a beta version and an alpha version and the enterprise has been granted visibility to both the alpha and beta tracks, if tracks is {\"beta\", \"production\"} then the beta version of the app is made available to the device. If there are no app versions in the specified track adding the \"alpha\" and \"beta\" values to the list of tracks will have no effect. Note that the enterprise requires access to alpha and/or beta tracks before users can be granted visibility to apps in those tracks.\n\nThe allowed sets are: {} (considered equivalent to {\"production\"}) {\"production\"} {\"beta\", \"production\"} {\"alpha\", \"beta\", \"production\"} The order of elements is not relevant. Any other set of tracks will be rejected with an error.", - "items": { - "type": "string" - } - } - } - }, - "ProductSet": { - "id": "ProductSet", - "type": "object", - "description": "A set of products.", - "properties": { - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"androidenterprise#productSet\".", - "default": "androidenterprise#productSet" - }, - "productId": { - "type": "array", - "description": "The list of product IDs making up the set of products.", - "items": { - "type": "string" - } - }, - "productSetBehavior": { - "type": "string", - "description": "The interpretation of this product set. \"unknown\" should never be sent and is ignored if received. \"whitelist\" means that the user is entitled to access the product set. \"includeAll\" means that all products are accessible, including products that are approved, products with revoked approval, and products that have never been approved. \"allApproved\" means that the user is entitled to access all products that are approved for the enterprise. If the value is \"allApproved\" or \"includeAll\", the productId field is ignored. If no value is provided, it is interpreted as \"whitelist\" for backwards compatibility. Further \"allApproved\" or \"includeAll\" does not enable automatic visibility of \"alpha\" or \"beta\" tracks for Android app. Use ProductVisibility to enable \"alpha\" or \"beta\" tracks per user." - }, - "productVisibility": { - "type": "array", - "description": "Additional list of product IDs making up the product set. Unlike the productID array, in this list It's possible to specify which tracks (alpha, beta, production) of a product are visible to the user. See ProductVisibility and its fields for more information. Specifying the same product ID both here and in the productId array is not allowed and it will result in an error.", - "items": { - "$ref": "ProductVisibility" - } - } - } - }, - "ProductSigningCertificate": { - "id": "ProductSigningCertificate", - "type": "object", - "properties": { - "certificateHashSha1": { - "type": "string", - "description": "The base64 urlsafe encoded SHA1 hash of the certificate. (This field is deprecated in favor of SHA2-256. It should not be used and may be removed at any time.)" - }, - "certificateHashSha256": { - "type": "string", - "description": "The base64 urlsafe encoded SHA2-256 hash of the certificate." - } - } - }, - "ProductVisibility": { - "id": "ProductVisibility", - "type": "object", - "description": "A product to be made visible to a user.", - "properties": { - "productId": { - "type": "string", - "description": "The product ID to make visible to the user. Required for each item in the productVisibility list." - }, - "tracks": { - "type": "array", - "description": "Grants visibility to the specified track(s) of the product to the user. The track available to the user is based on the following order of preference: alpha, beta, production. For example, if an app has a prod version, a beta version and an alpha version and the enterprise has been granted visibility to both the alpha and beta tracks, if tracks is {\"beta\", \"production\"} the user will be able to install the app and they will get the beta version of the app. If there are no app versions in the specified track adding the \"alpha\" and \"beta\" values to the list of tracks will have no effect. Note that the enterprise requires access to alpha and/or beta tracks before users can be granted visibility to apps in those tracks.\n\nThe allowed sets are: {} (considered equivalent to {\"production\"}) {\"production\"} {\"beta\", \"production\"} {\"alpha\", \"beta\", \"production\"} The order of elements is not relevant. Any other set of tracks will be rejected with an error.", - "items": { - "type": "string" - } - } - } - }, - "ProductsApproveRequest": { - "id": "ProductsApproveRequest", - "type": "object", - "properties": { - "approvalUrlInfo": { - "$ref": "ApprovalUrlInfo", - "description": "The approval URL that was shown to the user. Only the permissions shown to the user with that URL will be accepted, which may not be the product's entire set of permissions. For example, the URL may only display new permissions from an update after the product was approved, or not include new permissions if the product was updated since the URL was generated." - }, - "approvedPermissions": { - "type": "string", - "description": "Sets how new permission requests for the product are handled. \"allPermissions\" automatically approves all current and future permissions for the product. \"currentPermissionsOnly\" approves the current set of permissions for the product, but any future permissions added through updates will require manual reapproval. If not specified, only the current set of permissions will be approved." - } - } - }, - "ProductsGenerateApprovalUrlResponse": { - "id": "ProductsGenerateApprovalUrlResponse", - "type": "object", - "properties": { - "url": { - "type": "string", - "description": "A URL that can be rendered in an iframe to display the permissions (if any) of a product. This URL can be used to approve the product only once and only within 24 hours of being generated, using the Products.approve call. If the product is currently unapproved and has no permissions, this URL will point to an empty page. If the product is currently approved, a URL will only be generated if that product has added permissions since it was last approved, and the URL will only display those new permissions that have not yet been accepted." - } - } - }, - "ProductsListResponse": { - "id": "ProductsListResponse", - "type": "object", - "description": "The matching products.", - "properties": { - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"androidenterprise#productsListResponse\".", - "default": "androidenterprise#productsListResponse" - }, - "pageInfo": { - "$ref": "PageInfo", - "description": "General pagination information." - }, - "product": { - "type": "array", - "description": "Information about a product (e.g. an app) in the Google Play store, for display to an enterprise admin.", - "items": { - "$ref": "Product" - } - }, - "tokenPagination": { - "$ref": "TokenPagination", - "description": "Pagination information for token pagination." - } - } - }, - "ServiceAccount": { - "id": "ServiceAccount", - "type": "object", - "description": "A service account identity, including the name and credentials that can be used to authenticate as the service account.", - "properties": { - "key": { - "$ref": "ServiceAccountKey", - "description": "Credentials that can be used to authenticate as this ServiceAccount." - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"androidenterprise#serviceAccount\".", - "default": "androidenterprise#serviceAccount" - }, - "name": { - "type": "string", - "description": "The account name of the service account, in the form of an email address. Assigned by the server." - } - } - }, - "ServiceAccountKey": { - "id": "ServiceAccountKey", - "type": "object", - "description": "Credentials that can be used to authenticate as a service account.", - "properties": { - "data": { - "type": "string", - "description": "The body of the private key credentials file, in string format. This is only populated when the ServiceAccountKey is created, and is not stored by Google." - }, - "id": { - "type": "string", - "description": "An opaque, unique identifier for this ServiceAccountKey. Assigned by the server." - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"androidenterprise#serviceAccountKey\".", - "default": "androidenterprise#serviceAccountKey" - }, - "publicData": { - "type": "string", - "description": "Public key data for the credentials file. This is an X.509 cert. If you are using the googleCredentials key type, this is identical to the cert that can be retrieved by using the X.509 cert url inside of the credentials file." - }, - "type": { - "type": "string", - "description": "The file format of the generated key data.", - "annotations": { - "required": [ - "androidenterprise.serviceaccountkeys.insert" - ] - } - } - } - }, - "ServiceAccountKeysListResponse": { - "id": "ServiceAccountKeysListResponse", - "type": "object", - "properties": { - "serviceAccountKey": { - "type": "array", - "description": "The service account credentials.", - "items": { - "$ref": "ServiceAccountKey" - } - } - } - }, - "SignupInfo": { - "id": "SignupInfo", - "type": "object", - "description": "A resource returned by the GenerateSignupUrl API, which contains the Signup URL and Completion Token.", - "properties": { - "completionToken": { - "type": "string", - "description": "An opaque token that will be required, along with the Enterprise Token, for obtaining the enterprise resource from CompleteSignup." - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"androidenterprise#signupInfo\".", - "default": "androidenterprise#signupInfo" - }, - "url": { - "type": "string", - "description": "A URL under which the Admin can sign up for an enterprise. The page pointed to cannot be rendered in an iframe." - } - } - }, - "StoreCluster": { - "id": "StoreCluster", - "type": "object", - "description": "Definition of a managed Google Play store cluster, a list of products displayed as part of a store page.", - "properties": { - "id": { - "type": "string", - "description": "Unique ID of this cluster. Assigned by the server. Immutable once assigned." - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"androidenterprise#storeCluster\".", - "default": "androidenterprise#storeCluster" - }, - "name": { - "type": "array", - "description": "Ordered list of localized strings giving the name of this page. The text displayed is the one that best matches the user locale, or the first entry if there is no good match. There needs to be at least one entry.", - "items": { - "$ref": "LocalizedText" - } - }, - "orderInPage": { - "type": "string", - "description": "String (US-ASCII only) used to determine order of this cluster within the parent page's elements. Page elements are sorted in lexicographic order of this field. Duplicated values are allowed, but ordering between elements with duplicate order is undefined.\n\nThe value of this field is never visible to a user, it is used solely for the purpose of defining an ordering. Maximum length is 256 characters." - }, - "productId": { - "type": "array", - "description": "List of products in the order they are displayed in the cluster. There should not be duplicates within a cluster.", - "items": { - "type": "string" - } - } - } - }, - "StoreLayout": { - "id": "StoreLayout", - "type": "object", - "description": "General setting for the managed Google Play store layout, currently only specifying the page to display the first time the store is opened.", - "properties": { - "homepageId": { - "type": "string", - "description": "The ID of the store page to be used as the homepage. The homepage is the first page shown in the managed Google Play Store.\n\nNot specifying a homepage is equivalent to setting the store layout type to \"basic\"." - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"androidenterprise#storeLayout\".", - "default": "androidenterprise#storeLayout" - }, - "storeLayoutType": { - "type": "string", - "description": "The store layout type. By default, this value is set to \"basic\" if the homepageId field is not set, and to \"custom\" otherwise. If set to \"basic\", the layout will consist of all approved apps that have been whitelisted for the user." - } - } - }, - "StoreLayoutClustersListResponse": { - "id": "StoreLayoutClustersListResponse", - "type": "object", - "description": "The store page resources for the enterprise.", - "properties": { - "cluster": { - "type": "array", - "description": "A store cluster of an enterprise.", - "items": { - "$ref": "StoreCluster" - } - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"androidenterprise#storeLayoutClustersListResponse\".", - "default": "androidenterprise#storeLayoutClustersListResponse" - } - } - }, - "StoreLayoutPagesListResponse": { - "id": "StoreLayoutPagesListResponse", - "type": "object", - "description": "The store page resources for the enterprise.", - "properties": { - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"androidenterprise#storeLayoutPagesListResponse\".", - "default": "androidenterprise#storeLayoutPagesListResponse" - }, - "page": { - "type": "array", - "description": "A store page of an enterprise.", - "items": { - "$ref": "StorePage" - } - } - } - }, - "StorePage": { - "id": "StorePage", - "type": "object", - "description": "Definition of a managed Google Play store page, made of a localized name and links to other pages. A page also contains clusters defined as a subcollection.", - "properties": { - "id": { - "type": "string", - "description": "Unique ID of this page. Assigned by the server. Immutable once assigned." - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"androidenterprise#storePage\".", - "default": "androidenterprise#storePage" - }, - "link": { - "type": "array", - "description": "Ordered list of pages a user should be able to reach from this page. The pages must exist, must not be this page, and once a link is created the page linked to cannot be deleted until all links to it are removed. It is recommended that the basic pages are created first, before adding the links between pages.\n\nNo attempt is made to verify that all pages are reachable from the homepage.", - "items": { - "type": "string" - } - }, - "name": { - "type": "array", - "description": "Ordered list of localized strings giving the name of this page. The text displayed is the one that best matches the user locale, or the first entry if there is no good match. There needs to be at least one entry.", - "items": { - "$ref": "LocalizedText" - } - } - } - }, - "TokenPagination": { - "id": "TokenPagination", - "type": "object", - "properties": { - "nextPageToken": { - "type": "string" - }, - "previousPageToken": { - "type": "string" - } - } - }, - "User": { - "id": "User", - "type": "object", - "description": "A Users resource represents an account associated with an enterprise. The account may be specific to a device or to an individual user (who can then use the account across multiple devices). The account may provide access to managed Google Play only, or to other Google services, depending on the identity model: \n- The Google managed domain identity model requires synchronization to Google account sources (via primaryEmail). \n- The managed Google Play Accounts identity model provides a dynamic means for enterprises to create user or device accounts as needed. These accounts provide access to managed Google Play.", - "properties": { - "accountIdentifier": { - "type": "string", - "description": "A unique identifier you create for this user, such as \"user342\" or \"asset#44418\". Do not use personally identifiable information (PII) for this property. Must always be set for EMM-managed users. Not set for Google-managed users.", - "annotations": { - "required": [ - "androidenterprise.users.insert" - ] - } - }, - "accountType": { - "type": "string", - "description": "The type of account that this user represents. A userAccount can be installed on multiple devices, but a deviceAccount is specific to a single device. An EMM-managed user (emmManaged) can be either type (userAccount, deviceAccount), but a Google-managed user (googleManaged) is always a userAccount.", - "annotations": { - "required": [ - "androidenterprise.users.insert" - ] - } - }, - "displayName": { - "type": "string", - "description": "The name that will appear in user interfaces. Setting this property is optional when creating EMM-managed users. If you do set this property, use something generic about the organization (such as \"Example, Inc.\") or your name (as EMM). Not used for Google-managed user accounts." - }, - "id": { - "type": "string", - "description": "The unique ID for the user." - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"androidenterprise#user\".", - "default": "androidenterprise#user" - }, - "managementType": { - "type": "string", - "description": "The entity that manages the user. With googleManaged users, the source of truth is Google so EMMs have to make sure a Google Account exists for the user. With emmManaged users, the EMM is in charge." - }, - "primaryEmail": { - "type": "string", - "description": "The user's primary email address, for example, \"jsmith@example.com\". Will always be set for Google managed users and not set for EMM managed users." - } - } - }, - "UserToken": { - "id": "UserToken", - "type": "object", - "description": "A UserToken is used by a user when setting up a managed device or profile with their managed Google Play account on a device. When the user enters their email address and token (activation code) the appropriate EMM app can be automatically downloaded.", - "properties": { - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"androidenterprise#userToken\".", - "default": "androidenterprise#userToken" - }, - "token": { - "type": "string", - "description": "The token (activation code) to be entered by the user. This consists of a sequence of decimal digits. Note that the leading digit may be 0." - }, - "userId": { - "type": "string", - "description": "The unique ID for the user." - } - } - }, - "UsersListResponse": { - "id": "UsersListResponse", - "type": "object", - "description": "The matching user resources.", - "properties": { - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"androidenterprise#usersListResponse\".", - "default": "androidenterprise#usersListResponse" - }, - "user": { - "type": "array", - "description": "A user of an enterprise.", - "items": { - "$ref": "User" - } - } - } - }, - "VariableSet": { - "id": "VariableSet", - "type": "object", - "description": "A variable set is a key-value pair of EMM-provided placeholders and its corresponding value, which is attributed to a user. For example, $FIRSTNAME could be a placeholder, and its value could be Alice. Placeholders should start with a '$' sign and should be alphanumeric only.", - "properties": { - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"androidenterprise#variableSet\".", - "default": "androidenterprise#variableSet" - }, - "placeholder": { - "type": "string", - "description": "The placeholder string; defined by EMM." - }, - "userValue": { - "type": "string", - "description": "The value of the placeholder, specific to the user." - } - } - } - }, - "resources": { - "devices": { - "methods": { - "get": { - "id": "androidenterprise.devices.get", - "path": "enterprises/{enterpriseId}/users/{userId}/devices/{deviceId}", - "httpMethod": "GET", - "description": "Retrieves the details of a device.", - "parameters": { - "deviceId": { - "type": "string", - "description": "The ID of the device.", - "required": true, - "location": "path" - }, - "enterpriseId": { - "type": "string", - "description": "The ID of the enterprise.", - "required": true, - "location": "path" - }, - "userId": { - "type": "string", - "description": "The ID of the user.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "enterpriseId", - "userId", - "deviceId" - ], - "response": { - "$ref": "Device" - }, - "scopes": [ - "https://www.googleapis.com/auth/androidenterprise" - ] - }, - "getState": { - "id": "androidenterprise.devices.getState", - "path": "enterprises/{enterpriseId}/users/{userId}/devices/{deviceId}/state", - "httpMethod": "GET", - "description": "Retrieves whether a device's access to Google services is enabled or disabled. The device state takes effect only if enforcing EMM policies on Android devices is enabled in the Google Admin Console. Otherwise, the device state is ignored and all devices are allowed access to Google services. This is only supported for Google-managed users.", - "parameters": { - "deviceId": { - "type": "string", - "description": "The ID of the device.", - "required": true, - "location": "path" - }, - "enterpriseId": { - "type": "string", - "description": "The ID of the enterprise.", - "required": true, - "location": "path" - }, - "userId": { - "type": "string", - "description": "The ID of the user.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "enterpriseId", - "userId", - "deviceId" - ], - "response": { - "$ref": "DeviceState" - }, - "scopes": [ - "https://www.googleapis.com/auth/androidenterprise" - ] - }, - "list": { - "id": "androidenterprise.devices.list", - "path": "enterprises/{enterpriseId}/users/{userId}/devices", - "httpMethod": "GET", - "description": "Retrieves the IDs of all of a user's devices.", - "parameters": { - "enterpriseId": { - "type": "string", - "description": "The ID of the enterprise.", - "required": true, - "location": "path" - }, - "userId": { - "type": "string", - "description": "The ID of the user.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "enterpriseId", - "userId" - ], - "response": { - "$ref": "DevicesListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/androidenterprise" - ] - }, - "patch": { - "id": "androidenterprise.devices.patch", - "path": "enterprises/{enterpriseId}/users/{userId}/devices/{deviceId}", - "httpMethod": "PATCH", - "description": "Updates the device policy. This method supports patch semantics.", - "parameters": { - "deviceId": { - "type": "string", - "description": "The ID of the device.", - "required": true, - "location": "path" - }, - "enterpriseId": { - "type": "string", - "description": "The ID of the enterprise.", - "required": true, - "location": "path" - }, - "updateMask": { - "type": "string", - "description": "Mask that identifies which fields to update. If not set, all modifiable fields will be modified.\n\nWhen set in a query parameter, this field should be specified as updateMask=\u003cfield1\u003e,\u003cfield2\u003e,...", - "location": "query" - }, - "userId": { - "type": "string", - "description": "The ID of the user.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "enterpriseId", - "userId", - "deviceId" - ], - "request": { - "$ref": "Device" - }, - "response": { - "$ref": "Device" - }, - "scopes": [ - "https://www.googleapis.com/auth/androidenterprise" - ] - }, - "setState": { - "id": "androidenterprise.devices.setState", - "path": "enterprises/{enterpriseId}/users/{userId}/devices/{deviceId}/state", - "httpMethod": "PUT", - "description": "Sets whether a device's access to Google services is enabled or disabled. The device state takes effect only if enforcing EMM policies on Android devices is enabled in the Google Admin Console. Otherwise, the device state is ignored and all devices are allowed access to Google services. This is only supported for Google-managed users.", - "parameters": { - "deviceId": { - "type": "string", - "description": "The ID of the device.", - "required": true, - "location": "path" - }, - "enterpriseId": { - "type": "string", - "description": "The ID of the enterprise.", - "required": true, - "location": "path" - }, - "userId": { - "type": "string", - "description": "The ID of the user.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "enterpriseId", - "userId", - "deviceId" - ], - "request": { - "$ref": "DeviceState" - }, - "response": { - "$ref": "DeviceState" - }, - "scopes": [ - "https://www.googleapis.com/auth/androidenterprise" - ] - }, - "update": { - "id": "androidenterprise.devices.update", - "path": "enterprises/{enterpriseId}/users/{userId}/devices/{deviceId}", - "httpMethod": "PUT", - "description": "Updates the device policy", - "parameters": { - "deviceId": { - "type": "string", - "description": "The ID of the device.", - "required": true, - "location": "path" - }, - "enterpriseId": { - "type": "string", - "description": "The ID of the enterprise.", - "required": true, - "location": "path" - }, - "updateMask": { - "type": "string", - "description": "Mask that identifies which fields to update. If not set, all modifiable fields will be modified.\n\nWhen set in a query parameter, this field should be specified as updateMask=\u003cfield1\u003e,\u003cfield2\u003e,...", - "location": "query" - }, - "userId": { - "type": "string", - "description": "The ID of the user.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "enterpriseId", - "userId", - "deviceId" - ], - "request": { - "$ref": "Device" - }, - "response": { - "$ref": "Device" - }, - "scopes": [ - "https://www.googleapis.com/auth/androidenterprise" - ] - } - } - }, - "enterprises": { - "methods": { - "acknowledgeNotificationSet": { - "id": "androidenterprise.enterprises.acknowledgeNotificationSet", - "path": "enterprises/acknowledgeNotificationSet", - "httpMethod": "POST", - "description": "Acknowledges notifications that were received from Enterprises.PullNotificationSet to prevent subsequent calls from returning the same notifications.", - "parameters": { - "notificationSetId": { - "type": "string", - "description": "The notification set ID as returned by Enterprises.PullNotificationSet. This must be provided.", - "location": "query" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/androidenterprise" - ] - }, - "completeSignup": { - "id": "androidenterprise.enterprises.completeSignup", - "path": "enterprises/completeSignup", - "httpMethod": "POST", - "description": "Completes the signup flow, by specifying the Completion token and Enterprise token. This request must not be called multiple times for a given Enterprise Token.", - "parameters": { - "completionToken": { - "type": "string", - "description": "The Completion token initially returned by GenerateSignupUrl.", - "location": "query" - }, - "enterpriseToken": { - "type": "string", - "description": "The Enterprise token appended to the Callback URL.", - "location": "query" - } - }, - "response": { - "$ref": "Enterprise" - }, - "scopes": [ - "https://www.googleapis.com/auth/androidenterprise" - ] - }, - "createWebToken": { - "id": "androidenterprise.enterprises.createWebToken", - "path": "enterprises/{enterpriseId}/createWebToken", - "httpMethod": "POST", - "description": "Returns a unique token to access an embeddable UI. To generate a web UI, pass the generated token into the managed Google Play javascript API. Each token may only be used to start one UI session. See the javascript API documentation for further information.", - "parameters": { - "enterpriseId": { - "type": "string", - "description": "The ID of the enterprise.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "enterpriseId" - ], - "request": { - "$ref": "AdministratorWebTokenSpec" - }, - "response": { - "$ref": "AdministratorWebToken" - }, - "scopes": [ - "https://www.googleapis.com/auth/androidenterprise" - ] - }, - "delete": { - "id": "androidenterprise.enterprises.delete", - "path": "enterprises/{enterpriseId}", - "httpMethod": "DELETE", - "description": "Deletes the binding between the EMM and enterprise. This is now deprecated. Use this method only to unenroll customers that were previously enrolled with the insert call, then enroll them again with the enroll call.", - "parameters": { - "enterpriseId": { - "type": "string", - "description": "The ID of the enterprise.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "enterpriseId" - ], - "scopes": [ - "https://www.googleapis.com/auth/androidenterprise" - ] - }, - "enroll": { - "id": "androidenterprise.enterprises.enroll", - "path": "enterprises/enroll", - "httpMethod": "POST", - "description": "Enrolls an enterprise with the calling EMM.", - "parameters": { - "token": { - "type": "string", - "description": "The token provided by the enterprise to register the EMM.", - "required": true, - "location": "query" - } - }, - "parameterOrder": [ - "token" - ], - "request": { - "$ref": "Enterprise" - }, - "response": { - "$ref": "Enterprise" - }, - "scopes": [ - "https://www.googleapis.com/auth/androidenterprise" - ] - }, - "generateSignupUrl": { - "id": "androidenterprise.enterprises.generateSignupUrl", - "path": "enterprises/signupUrl", - "httpMethod": "POST", - "description": "Generates a sign-up URL.", - "parameters": { - "callbackUrl": { - "type": "string", - "description": "The callback URL to which the Admin will be redirected after successfully creating an enterprise. Before redirecting there the system will add a single query parameter to this URL named \"enterpriseToken\" which will contain an opaque token to be used for the CompleteSignup request.\nBeware that this means that the URL will be parsed, the parameter added and then a new URL formatted, i.e. there may be some minor formatting changes and, more importantly, the URL must be well-formed so that it can be parsed.", - "location": "query" - } - }, - "response": { - "$ref": "SignupInfo" - }, - "scopes": [ - "https://www.googleapis.com/auth/androidenterprise" - ] - }, - "get": { - "id": "androidenterprise.enterprises.get", - "path": "enterprises/{enterpriseId}", - "httpMethod": "GET", - "description": "Retrieves the name and domain of an enterprise.", - "parameters": { - "enterpriseId": { - "type": "string", - "description": "The ID of the enterprise.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "enterpriseId" - ], - "response": { - "$ref": "Enterprise" - }, - "scopes": [ - "https://www.googleapis.com/auth/androidenterprise" - ] - }, - "getAndroidDevicePolicyConfig": { - "id": "androidenterprise.enterprises.getAndroidDevicePolicyConfig", - "path": "enterprises/{enterpriseId}/androidDevicePolicyConfig", - "httpMethod": "GET", - "description": "Returns the Android Device Policy config resource.", - "parameters": { - "enterpriseId": { - "type": "string", - "description": "The ID of the enterprise.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "enterpriseId" - ], - "response": { - "$ref": "AndroidDevicePolicyConfig" - }, - "scopes": [ - "https://www.googleapis.com/auth/androidenterprise" - ] - }, - "getServiceAccount": { - "id": "androidenterprise.enterprises.getServiceAccount", - "path": "enterprises/{enterpriseId}/serviceAccount", - "httpMethod": "GET", - "description": "Returns a service account and credentials. The service account can be bound to the enterprise by calling setAccount. The service account is unique to this enterprise and EMM, and will be deleted if the enterprise is unbound. The credentials contain private key data and are not stored server-side.\n\nThis method can only be called after calling Enterprises.Enroll or Enterprises.CompleteSignup, and before Enterprises.SetAccount; at other times it will return an error.\n\nSubsequent calls after the first will generate a new, unique set of credentials, and invalidate the previously generated credentials.\n\nOnce the service account is bound to the enterprise, it can be managed using the serviceAccountKeys resource.", - "parameters": { - "enterpriseId": { - "type": "string", - "description": "The ID of the enterprise.", - "required": true, - "location": "path" - }, - "keyType": { - "type": "string", - "description": "The type of credential to return with the service account. Required.", - "enum": [ - "googleCredentials", - "pkcs12" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - } - }, - "parameterOrder": [ - "enterpriseId" - ], - "response": { - "$ref": "ServiceAccount" - }, - "scopes": [ - "https://www.googleapis.com/auth/androidenterprise" - ] - }, - "getStoreLayout": { - "id": "androidenterprise.enterprises.getStoreLayout", - "path": "enterprises/{enterpriseId}/storeLayout", - "httpMethod": "GET", - "description": "Returns the store layout for the enterprise. If the store layout has not been set, returns \"basic\" as the store layout type and no homepage.", - "parameters": { - "enterpriseId": { - "type": "string", - "description": "The ID of the enterprise.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "enterpriseId" - ], - "response": { - "$ref": "StoreLayout" - }, - "scopes": [ - "https://www.googleapis.com/auth/androidenterprise" - ] - }, - "insert": { - "id": "androidenterprise.enterprises.insert", - "path": "enterprises", - "httpMethod": "POST", - "description": "Establishes the binding between the EMM and an enterprise. This is now deprecated; use enroll instead.", - "parameters": { - "token": { - "type": "string", - "description": "The token provided by the enterprise to register the EMM.", - "required": true, - "location": "query" - } - }, - "parameterOrder": [ - "token" - ], - "request": { - "$ref": "Enterprise" - }, - "response": { - "$ref": "Enterprise" - }, - "scopes": [ - "https://www.googleapis.com/auth/androidenterprise" - ] - }, - "list": { - "id": "androidenterprise.enterprises.list", - "path": "enterprises", - "httpMethod": "GET", - "description": "Looks up an enterprise by domain name. This is only supported for enterprises created via the Google-initiated creation flow. Lookup of the id is not needed for enterprises created via the EMM-initiated flow since the EMM learns the enterprise ID in the callback specified in the Enterprises.generateSignupUrl call.", - "parameters": { - "domain": { - "type": "string", - "description": "The exact primary domain name of the enterprise to look up.", - "required": true, - "location": "query" - } - }, - "parameterOrder": [ - "domain" - ], - "response": { - "$ref": "EnterprisesListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/androidenterprise" - ] - }, - "pullNotificationSet": { - "id": "androidenterprise.enterprises.pullNotificationSet", - "path": "enterprises/pullNotificationSet", - "httpMethod": "POST", - "description": "Pulls and returns a notification set for the enterprises associated with the service account authenticated for the request. The notification set may be empty if no notification are pending.\nA notification set returned needs to be acknowledged within 20 seconds by calling Enterprises.AcknowledgeNotificationSet, unless the notification set is empty.\nNotifications that are not acknowledged within the 20 seconds will eventually be included again in the response to another PullNotificationSet request, and those that are never acknowledged will ultimately be deleted according to the Google Cloud Platform Pub/Sub system policy.\nMultiple requests might be performed concurrently to retrieve notifications, in which case the pending notifications (if any) will be split among each caller, if any are pending.\nIf no notifications are present, an empty notification list is returned. Subsequent requests may return more notifications once they become available.", - "parameters": { - "requestMode": { - "type": "string", - "description": "The request mode for pulling notifications.\nSpecifying waitForNotifications will cause the request to block and wait until one or more notifications are present, or return an empty notification list if no notifications are present after some time.\nSpeciying returnImmediately will cause the request to immediately return the pending notifications, or an empty list if no notifications are present.\nIf omitted, defaults to waitForNotifications.", - "enum": [ - "returnImmediately", - "waitForNotifications" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - } - }, - "response": { - "$ref": "NotificationSet" - }, - "scopes": [ - "https://www.googleapis.com/auth/androidenterprise" - ] - }, - "sendTestPushNotification": { - "id": "androidenterprise.enterprises.sendTestPushNotification", - "path": "enterprises/{enterpriseId}/sendTestPushNotification", - "httpMethod": "POST", - "description": "Sends a test notification to validate the EMM integration with the Google Cloud Pub/Sub service for this enterprise.", - "parameters": { - "enterpriseId": { - "type": "string", - "description": "The ID of the enterprise.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "enterpriseId" - ], - "response": { - "$ref": "EnterprisesSendTestPushNotificationResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/androidenterprise" - ] - }, - "setAccount": { - "id": "androidenterprise.enterprises.setAccount", - "path": "enterprises/{enterpriseId}/account", - "httpMethod": "PUT", - "description": "Sets the account that will be used to authenticate to the API as the enterprise.", - "parameters": { - "enterpriseId": { - "type": "string", - "description": "The ID of the enterprise.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "enterpriseId" - ], - "request": { - "$ref": "EnterpriseAccount" - }, - "response": { - "$ref": "EnterpriseAccount" - }, - "scopes": [ - "https://www.googleapis.com/auth/androidenterprise" - ] - }, - "setAndroidDevicePolicyConfig": { - "id": "androidenterprise.enterprises.setAndroidDevicePolicyConfig", - "path": "enterprises/{enterpriseId}/androidDevicePolicyConfig", - "httpMethod": "PUT", - "description": "Sets the Android Device Policy config resource. EMM may use this method to enable or disable Android Device Policy support for the specified enterprise. To learn more about managing devices and apps with Android Device Policy, see the Android Management API.", - "parameters": { - "enterpriseId": { - "type": "string", - "description": "The ID of the enterprise.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "enterpriseId" - ], - "request": { - "$ref": "AndroidDevicePolicyConfig" - }, - "response": { - "$ref": "AndroidDevicePolicyConfig" - }, - "scopes": [ - "https://www.googleapis.com/auth/androidenterprise" - ] - }, - "setStoreLayout": { - "id": "androidenterprise.enterprises.setStoreLayout", - "path": "enterprises/{enterpriseId}/storeLayout", - "httpMethod": "PUT", - "description": "Sets the store layout for the enterprise. By default, storeLayoutType is set to \"basic\" and the basic store layout is enabled. The basic layout only contains apps approved by the admin, and that have been added to the available product set for a user (using the setAvailableProductSet call). Apps on the page are sorted in order of their product ID value. If you create a custom store layout (by setting storeLayoutType = \"custom\" and setting a homepage), the basic store layout is disabled.", - "parameters": { - "enterpriseId": { - "type": "string", - "description": "The ID of the enterprise.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "enterpriseId" - ], - "request": { - "$ref": "StoreLayout" - }, - "response": { - "$ref": "StoreLayout" - }, - "scopes": [ - "https://www.googleapis.com/auth/androidenterprise" - ] - }, - "unenroll": { - "id": "androidenterprise.enterprises.unenroll", - "path": "enterprises/{enterpriseId}/unenroll", - "httpMethod": "POST", - "description": "Unenrolls an enterprise from the calling EMM.", - "parameters": { - "enterpriseId": { - "type": "string", - "description": "The ID of the enterprise.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "enterpriseId" - ], - "scopes": [ - "https://www.googleapis.com/auth/androidenterprise" - ] - } - } - }, - "entitlements": { - "methods": { - "delete": { - "id": "androidenterprise.entitlements.delete", - "path": "enterprises/{enterpriseId}/users/{userId}/entitlements/{entitlementId}", - "httpMethod": "DELETE", - "description": "Removes an entitlement to an app for a user.", - "parameters": { - "enterpriseId": { - "type": "string", - "description": "The ID of the enterprise.", - "required": true, - "location": "path" - }, - "entitlementId": { - "type": "string", - "description": "The ID of the entitlement (a product ID), e.g. \"app:com.google.android.gm\".", - "required": true, - "location": "path" - }, - "userId": { - "type": "string", - "description": "The ID of the user.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "enterpriseId", - "userId", - "entitlementId" - ], - "scopes": [ - "https://www.googleapis.com/auth/androidenterprise" - ] - }, - "get": { - "id": "androidenterprise.entitlements.get", - "path": "enterprises/{enterpriseId}/users/{userId}/entitlements/{entitlementId}", - "httpMethod": "GET", - "description": "Retrieves details of an entitlement.", - "parameters": { - "enterpriseId": { - "type": "string", - "description": "The ID of the enterprise.", - "required": true, - "location": "path" - }, - "entitlementId": { - "type": "string", - "description": "The ID of the entitlement (a product ID), e.g. \"app:com.google.android.gm\".", - "required": true, - "location": "path" - }, - "userId": { - "type": "string", - "description": "The ID of the user.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "enterpriseId", - "userId", - "entitlementId" - ], - "response": { - "$ref": "Entitlement" - }, - "scopes": [ - "https://www.googleapis.com/auth/androidenterprise" - ] - }, - "list": { - "id": "androidenterprise.entitlements.list", - "path": "enterprises/{enterpriseId}/users/{userId}/entitlements", - "httpMethod": "GET", - "description": "Lists all entitlements for the specified user. Only the ID is set.", - "parameters": { - "enterpriseId": { - "type": "string", - "description": "The ID of the enterprise.", - "required": true, - "location": "path" - }, - "userId": { - "type": "string", - "description": "The ID of the user.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "enterpriseId", - "userId" - ], - "response": { - "$ref": "EntitlementsListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/androidenterprise" - ] - }, - "patch": { - "id": "androidenterprise.entitlements.patch", - "path": "enterprises/{enterpriseId}/users/{userId}/entitlements/{entitlementId}", - "httpMethod": "PATCH", - "description": "Adds or updates an entitlement to an app for a user. This method supports patch semantics.", - "parameters": { - "enterpriseId": { - "type": "string", - "description": "The ID of the enterprise.", - "required": true, - "location": "path" - }, - "entitlementId": { - "type": "string", - "description": "The ID of the entitlement (a product ID), e.g. \"app:com.google.android.gm\".", - "required": true, - "location": "path" - }, - "install": { - "type": "boolean", - "description": "Set to true to also install the product on all the user's devices where possible. Failure to install on one or more devices will not prevent this operation from returning successfully, as long as the entitlement was successfully assigned to the user.", - "location": "query" - }, - "userId": { - "type": "string", - "description": "The ID of the user.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "enterpriseId", - "userId", - "entitlementId" - ], - "request": { - "$ref": "Entitlement" - }, - "response": { - "$ref": "Entitlement" - }, - "scopes": [ - "https://www.googleapis.com/auth/androidenterprise" - ] - }, - "update": { - "id": "androidenterprise.entitlements.update", - "path": "enterprises/{enterpriseId}/users/{userId}/entitlements/{entitlementId}", - "httpMethod": "PUT", - "description": "Adds or updates an entitlement to an app for a user.", - "parameters": { - "enterpriseId": { - "type": "string", - "description": "The ID of the enterprise.", - "required": true, - "location": "path" - }, - "entitlementId": { - "type": "string", - "description": "The ID of the entitlement (a product ID), e.g. \"app:com.google.android.gm\".", - "required": true, - "location": "path" - }, - "install": { - "type": "boolean", - "description": "Set to true to also install the product on all the user's devices where possible. Failure to install on one or more devices will not prevent this operation from returning successfully, as long as the entitlement was successfully assigned to the user.", - "location": "query" - }, - "userId": { - "type": "string", - "description": "The ID of the user.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "enterpriseId", - "userId", - "entitlementId" - ], - "request": { - "$ref": "Entitlement" - }, - "response": { - "$ref": "Entitlement" - }, - "scopes": [ - "https://www.googleapis.com/auth/androidenterprise" - ] - } - } - }, - "grouplicenses": { - "methods": { - "get": { - "id": "androidenterprise.grouplicenses.get", - "path": "enterprises/{enterpriseId}/groupLicenses/{groupLicenseId}", - "httpMethod": "GET", - "description": "Retrieves details of an enterprise's group license for a product.", - "parameters": { - "enterpriseId": { - "type": "string", - "description": "The ID of the enterprise.", - "required": true, - "location": "path" - }, - "groupLicenseId": { - "type": "string", - "description": "The ID of the product the group license is for, e.g. \"app:com.google.android.gm\".", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "enterpriseId", - "groupLicenseId" - ], - "response": { - "$ref": "GroupLicense" - }, - "scopes": [ - "https://www.googleapis.com/auth/androidenterprise" - ] - }, - "list": { - "id": "androidenterprise.grouplicenses.list", - "path": "enterprises/{enterpriseId}/groupLicenses", - "httpMethod": "GET", - "description": "Retrieves IDs of all products for which the enterprise has a group license.", - "parameters": { - "enterpriseId": { - "type": "string", - "description": "The ID of the enterprise.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "enterpriseId" - ], - "response": { - "$ref": "GroupLicensesListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/androidenterprise" - ] - } - } - }, - "grouplicenseusers": { - "methods": { - "list": { - "id": "androidenterprise.grouplicenseusers.list", - "path": "enterprises/{enterpriseId}/groupLicenses/{groupLicenseId}/users", - "httpMethod": "GET", - "description": "Retrieves the IDs of the users who have been granted entitlements under the license.", - "parameters": { - "enterpriseId": { - "type": "string", - "description": "The ID of the enterprise.", - "required": true, - "location": "path" - }, - "groupLicenseId": { - "type": "string", - "description": "The ID of the product the group license is for, e.g. \"app:com.google.android.gm\".", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "enterpriseId", - "groupLicenseId" - ], - "response": { - "$ref": "GroupLicenseUsersListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/androidenterprise" - ] - } - } - }, - "installs": { - "methods": { - "delete": { - "id": "androidenterprise.installs.delete", - "path": "enterprises/{enterpriseId}/users/{userId}/devices/{deviceId}/installs/{installId}", - "httpMethod": "DELETE", - "description": "Requests to remove an app from a device. A call to get or list will still show the app as installed on the device until it is actually removed.", - "parameters": { - "deviceId": { - "type": "string", - "description": "The Android ID of the device.", - "required": true, - "location": "path" - }, - "enterpriseId": { - "type": "string", - "description": "The ID of the enterprise.", - "required": true, - "location": "path" - }, - "installId": { - "type": "string", - "description": "The ID of the product represented by the install, e.g. \"app:com.google.android.gm\".", - "required": true, - "location": "path" - }, - "userId": { - "type": "string", - "description": "The ID of the user.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "enterpriseId", - "userId", - "deviceId", - "installId" - ], - "scopes": [ - "https://www.googleapis.com/auth/androidenterprise" - ] - }, - "get": { - "id": "androidenterprise.installs.get", - "path": "enterprises/{enterpriseId}/users/{userId}/devices/{deviceId}/installs/{installId}", - "httpMethod": "GET", - "description": "Retrieves details of an installation of an app on a device.", - "parameters": { - "deviceId": { - "type": "string", - "description": "The Android ID of the device.", - "required": true, - "location": "path" - }, - "enterpriseId": { - "type": "string", - "description": "The ID of the enterprise.", - "required": true, - "location": "path" - }, - "installId": { - "type": "string", - "description": "The ID of the product represented by the install, e.g. \"app:com.google.android.gm\".", - "required": true, - "location": "path" - }, - "userId": { - "type": "string", - "description": "The ID of the user.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "enterpriseId", - "userId", - "deviceId", - "installId" - ], - "response": { - "$ref": "Install" - }, - "scopes": [ - "https://www.googleapis.com/auth/androidenterprise" - ] - }, - "list": { - "id": "androidenterprise.installs.list", - "path": "enterprises/{enterpriseId}/users/{userId}/devices/{deviceId}/installs", - "httpMethod": "GET", - "description": "Retrieves the details of all apps installed on the specified device.", - "parameters": { - "deviceId": { - "type": "string", - "description": "The Android ID of the device.", - "required": true, - "location": "path" - }, - "enterpriseId": { - "type": "string", - "description": "The ID of the enterprise.", - "required": true, - "location": "path" - }, - "userId": { - "type": "string", - "description": "The ID of the user.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "enterpriseId", - "userId", - "deviceId" - ], - "response": { - "$ref": "InstallsListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/androidenterprise" - ] - }, - "patch": { - "id": "androidenterprise.installs.patch", - "path": "enterprises/{enterpriseId}/users/{userId}/devices/{deviceId}/installs/{installId}", - "httpMethod": "PATCH", - "description": "Requests to install the latest version of an app to a device. If the app is already installed, then it is updated to the latest version if necessary. This method supports patch semantics.", - "parameters": { - "deviceId": { - "type": "string", - "description": "The Android ID of the device.", - "required": true, - "location": "path" - }, - "enterpriseId": { - "type": "string", - "description": "The ID of the enterprise.", - "required": true, - "location": "path" - }, - "installId": { - "type": "string", - "description": "The ID of the product represented by the install, e.g. \"app:com.google.android.gm\".", - "required": true, - "location": "path" - }, - "userId": { - "type": "string", - "description": "The ID of the user.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "enterpriseId", - "userId", - "deviceId", - "installId" - ], - "request": { - "$ref": "Install" - }, - "response": { - "$ref": "Install" - }, - "scopes": [ - "https://www.googleapis.com/auth/androidenterprise" - ] - }, - "update": { - "id": "androidenterprise.installs.update", - "path": "enterprises/{enterpriseId}/users/{userId}/devices/{deviceId}/installs/{installId}", - "httpMethod": "PUT", - "description": "Requests to install the latest version of an app to a device. If the app is already installed, then it is updated to the latest version if necessary.", - "parameters": { - "deviceId": { - "type": "string", - "description": "The Android ID of the device.", - "required": true, - "location": "path" - }, - "enterpriseId": { - "type": "string", - "description": "The ID of the enterprise.", - "required": true, - "location": "path" - }, - "installId": { - "type": "string", - "description": "The ID of the product represented by the install, e.g. \"app:com.google.android.gm\".", - "required": true, - "location": "path" - }, - "userId": { - "type": "string", - "description": "The ID of the user.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "enterpriseId", - "userId", - "deviceId", - "installId" - ], - "request": { - "$ref": "Install" - }, - "response": { - "$ref": "Install" - }, - "scopes": [ - "https://www.googleapis.com/auth/androidenterprise" - ] - } - } - }, - "managedconfigurationsfordevice": { - "methods": { - "delete": { - "id": "androidenterprise.managedconfigurationsfordevice.delete", - "path": "enterprises/{enterpriseId}/users/{userId}/devices/{deviceId}/managedConfigurationsForDevice/{managedConfigurationForDeviceId}", - "httpMethod": "DELETE", - "description": "Removes a per-device managed configuration for an app for the specified device.", - "parameters": { - "deviceId": { - "type": "string", - "description": "The Android ID of the device.", - "required": true, - "location": "path" - }, - "enterpriseId": { - "type": "string", - "description": "The ID of the enterprise.", - "required": true, - "location": "path" - }, - "managedConfigurationForDeviceId": { - "type": "string", - "description": "The ID of the managed configuration (a product ID), e.g. \"app:com.google.android.gm\".", - "required": true, - "location": "path" - }, - "userId": { - "type": "string", - "description": "The ID of the user.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "enterpriseId", - "userId", - "deviceId", - "managedConfigurationForDeviceId" - ], - "scopes": [ - "https://www.googleapis.com/auth/androidenterprise" - ] - }, - "get": { - "id": "androidenterprise.managedconfigurationsfordevice.get", - "path": "enterprises/{enterpriseId}/users/{userId}/devices/{deviceId}/managedConfigurationsForDevice/{managedConfigurationForDeviceId}", - "httpMethod": "GET", - "description": "Retrieves details of a per-device managed configuration.", - "parameters": { - "deviceId": { - "type": "string", - "description": "The Android ID of the device.", - "required": true, - "location": "path" - }, - "enterpriseId": { - "type": "string", - "description": "The ID of the enterprise.", - "required": true, - "location": "path" - }, - "managedConfigurationForDeviceId": { - "type": "string", - "description": "The ID of the managed configuration (a product ID), e.g. \"app:com.google.android.gm\".", - "required": true, - "location": "path" - }, - "userId": { - "type": "string", - "description": "The ID of the user.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "enterpriseId", - "userId", - "deviceId", - "managedConfigurationForDeviceId" - ], - "response": { - "$ref": "ManagedConfiguration" - }, - "scopes": [ - "https://www.googleapis.com/auth/androidenterprise" - ] - }, - "list": { - "id": "androidenterprise.managedconfigurationsfordevice.list", - "path": "enterprises/{enterpriseId}/users/{userId}/devices/{deviceId}/managedConfigurationsForDevice", - "httpMethod": "GET", - "description": "Lists all the per-device managed configurations for the specified device. Only the ID is set.", - "parameters": { - "deviceId": { - "type": "string", - "description": "The Android ID of the device.", - "required": true, - "location": "path" - }, - "enterpriseId": { - "type": "string", - "description": "The ID of the enterprise.", - "required": true, - "location": "path" - }, - "userId": { - "type": "string", - "description": "The ID of the user.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "enterpriseId", - "userId", - "deviceId" - ], - "response": { - "$ref": "ManagedConfigurationsForDeviceListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/androidenterprise" - ] - }, - "patch": { - "id": "androidenterprise.managedconfigurationsfordevice.patch", - "path": "enterprises/{enterpriseId}/users/{userId}/devices/{deviceId}/managedConfigurationsForDevice/{managedConfigurationForDeviceId}", - "httpMethod": "PATCH", - "description": "Adds or updates a per-device managed configuration for an app for the specified device. This method supports patch semantics.", - "parameters": { - "deviceId": { - "type": "string", - "description": "The Android ID of the device.", - "required": true, - "location": "path" - }, - "enterpriseId": { - "type": "string", - "description": "The ID of the enterprise.", - "required": true, - "location": "path" - }, - "managedConfigurationForDeviceId": { - "type": "string", - "description": "The ID of the managed configuration (a product ID), e.g. \"app:com.google.android.gm\".", - "required": true, - "location": "path" - }, - "userId": { - "type": "string", - "description": "The ID of the user.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "enterpriseId", - "userId", - "deviceId", - "managedConfigurationForDeviceId" - ], - "request": { - "$ref": "ManagedConfiguration" - }, - "response": { - "$ref": "ManagedConfiguration" - }, - "scopes": [ - "https://www.googleapis.com/auth/androidenterprise" - ] - }, - "update": { - "id": "androidenterprise.managedconfigurationsfordevice.update", - "path": "enterprises/{enterpriseId}/users/{userId}/devices/{deviceId}/managedConfigurationsForDevice/{managedConfigurationForDeviceId}", - "httpMethod": "PUT", - "description": "Adds or updates a per-device managed configuration for an app for the specified device.", - "parameters": { - "deviceId": { - "type": "string", - "description": "The Android ID of the device.", - "required": true, - "location": "path" - }, - "enterpriseId": { - "type": "string", - "description": "The ID of the enterprise.", - "required": true, - "location": "path" - }, - "managedConfigurationForDeviceId": { - "type": "string", - "description": "The ID of the managed configuration (a product ID), e.g. \"app:com.google.android.gm\".", - "required": true, - "location": "path" - }, - "userId": { - "type": "string", - "description": "The ID of the user.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "enterpriseId", - "userId", - "deviceId", - "managedConfigurationForDeviceId" - ], - "request": { - "$ref": "ManagedConfiguration" - }, - "response": { - "$ref": "ManagedConfiguration" - }, - "scopes": [ - "https://www.googleapis.com/auth/androidenterprise" - ] - } - } - }, - "managedconfigurationsforuser": { - "methods": { - "delete": { - "id": "androidenterprise.managedconfigurationsforuser.delete", - "path": "enterprises/{enterpriseId}/users/{userId}/managedConfigurationsForUser/{managedConfigurationForUserId}", - "httpMethod": "DELETE", - "description": "Removes a per-user managed configuration for an app for the specified user.", - "parameters": { - "enterpriseId": { - "type": "string", - "description": "The ID of the enterprise.", - "required": true, - "location": "path" - }, - "managedConfigurationForUserId": { - "type": "string", - "description": "The ID of the managed configuration (a product ID), e.g. \"app:com.google.android.gm\".", - "required": true, - "location": "path" - }, - "userId": { - "type": "string", - "description": "The ID of the user.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "enterpriseId", - "userId", - "managedConfigurationForUserId" - ], - "scopes": [ - "https://www.googleapis.com/auth/androidenterprise" - ] - }, - "get": { - "id": "androidenterprise.managedconfigurationsforuser.get", - "path": "enterprises/{enterpriseId}/users/{userId}/managedConfigurationsForUser/{managedConfigurationForUserId}", - "httpMethod": "GET", - "description": "Retrieves details of a per-user managed configuration for an app for the specified user.", - "parameters": { - "enterpriseId": { - "type": "string", - "description": "The ID of the enterprise.", - "required": true, - "location": "path" - }, - "managedConfigurationForUserId": { - "type": "string", - "description": "The ID of the managed configuration (a product ID), e.g. \"app:com.google.android.gm\".", - "required": true, - "location": "path" - }, - "userId": { - "type": "string", - "description": "The ID of the user.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "enterpriseId", - "userId", - "managedConfigurationForUserId" - ], - "response": { - "$ref": "ManagedConfiguration" - }, - "scopes": [ - "https://www.googleapis.com/auth/androidenterprise" - ] - }, - "list": { - "id": "androidenterprise.managedconfigurationsforuser.list", - "path": "enterprises/{enterpriseId}/users/{userId}/managedConfigurationsForUser", - "httpMethod": "GET", - "description": "Lists all the per-user managed configurations for the specified user. Only the ID is set.", - "parameters": { - "enterpriseId": { - "type": "string", - "description": "The ID of the enterprise.", - "required": true, - "location": "path" - }, - "userId": { - "type": "string", - "description": "The ID of the user.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "enterpriseId", - "userId" - ], - "response": { - "$ref": "ManagedConfigurationsForUserListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/androidenterprise" - ] - }, - "patch": { - "id": "androidenterprise.managedconfigurationsforuser.patch", - "path": "enterprises/{enterpriseId}/users/{userId}/managedConfigurationsForUser/{managedConfigurationForUserId}", - "httpMethod": "PATCH", - "description": "Adds or updates the managed configuration settings for an app for the specified user. If you support the Managed configurations iframe, you can apply managed configurations to a user by specifying an mcmId and its associated configuration variables (if any) in the request. Alternatively, all EMMs can apply managed configurations by passing a list of managed properties. This method supports patch semantics.", - "parameters": { - "enterpriseId": { - "type": "string", - "description": "The ID of the enterprise.", - "required": true, - "location": "path" - }, - "managedConfigurationForUserId": { - "type": "string", - "description": "The ID of the managed configuration (a product ID), e.g. \"app:com.google.android.gm\".", - "required": true, - "location": "path" - }, - "userId": { - "type": "string", - "description": "The ID of the user.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "enterpriseId", - "userId", - "managedConfigurationForUserId" - ], - "request": { - "$ref": "ManagedConfiguration" - }, - "response": { - "$ref": "ManagedConfiguration" - }, - "scopes": [ - "https://www.googleapis.com/auth/androidenterprise" - ] - }, - "update": { - "id": "androidenterprise.managedconfigurationsforuser.update", - "path": "enterprises/{enterpriseId}/users/{userId}/managedConfigurationsForUser/{managedConfigurationForUserId}", - "httpMethod": "PUT", - "description": "Adds or updates the managed configuration settings for an app for the specified user. If you support the Managed configurations iframe, you can apply managed configurations to a user by specifying an mcmId and its associated configuration variables (if any) in the request. Alternatively, all EMMs can apply managed configurations by passing a list of managed properties.", - "parameters": { - "enterpriseId": { - "type": "string", - "description": "The ID of the enterprise.", - "required": true, - "location": "path" - }, - "managedConfigurationForUserId": { - "type": "string", - "description": "The ID of the managed configuration (a product ID), e.g. \"app:com.google.android.gm\".", - "required": true, - "location": "path" - }, - "userId": { - "type": "string", - "description": "The ID of the user.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "enterpriseId", - "userId", - "managedConfigurationForUserId" - ], - "request": { - "$ref": "ManagedConfiguration" - }, - "response": { - "$ref": "ManagedConfiguration" - }, - "scopes": [ - "https://www.googleapis.com/auth/androidenterprise" - ] - } - } - }, - "managedconfigurationssettings": { - "methods": { - "list": { - "id": "androidenterprise.managedconfigurationssettings.list", - "path": "enterprises/{enterpriseId}/products/{productId}/managedConfigurationsSettings", - "httpMethod": "GET", - "description": "Lists all the managed configurations settings for the specified app. Only the ID and the name is set.", - "parameters": { - "enterpriseId": { - "type": "string", - "description": "The ID of the enterprise.", - "required": true, - "location": "path" - }, - "productId": { - "type": "string", - "description": "The ID of the product for which the managed configurations settings applies to.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "enterpriseId", - "productId" - ], - "response": { - "$ref": "ManagedConfigurationsSettingsListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/androidenterprise" - ] - } - } - }, - "permissions": { - "methods": { - "get": { - "id": "androidenterprise.permissions.get", - "path": "permissions/{permissionId}", - "httpMethod": "GET", - "description": "Retrieves details of an Android app permission for display to an enterprise admin.", - "parameters": { - "language": { - "type": "string", - "description": "The BCP47 tag for the user's preferred language (e.g. \"en-US\", \"de\")", - "location": "query" - }, - "permissionId": { - "type": "string", - "description": "The ID of the permission.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "permissionId" - ], - "response": { - "$ref": "Permission" - }, - "scopes": [ - "https://www.googleapis.com/auth/androidenterprise" - ] - } - } - }, - "products": { - "methods": { - "approve": { - "id": "androidenterprise.products.approve", - "path": "enterprises/{enterpriseId}/products/{productId}/approve", - "httpMethod": "POST", - "description": "Approves the specified product and the relevant app permissions, if any. The maximum number of products that you can approve per enterprise customer is 1,000.\n\nTo learn how to use managed Google Play to design and create a store layout to display approved products to your users, see Store Layout Design.", - "parameters": { - "enterpriseId": { - "type": "string", - "description": "The ID of the enterprise.", - "required": true, - "location": "path" - }, - "productId": { - "type": "string", - "description": "The ID of the product.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "enterpriseId", - "productId" - ], - "request": { - "$ref": "ProductsApproveRequest" - }, - "scopes": [ - "https://www.googleapis.com/auth/androidenterprise" - ] - }, - "generateApprovalUrl": { - "id": "androidenterprise.products.generateApprovalUrl", - "path": "enterprises/{enterpriseId}/products/{productId}/generateApprovalUrl", - "httpMethod": "POST", - "description": "Generates a URL that can be rendered in an iframe to display the permissions (if any) of a product. An enterprise admin must view these permissions and accept them on behalf of their organization in order to approve that product.\n\nAdmins should accept the displayed permissions by interacting with a separate UI element in the EMM console, which in turn should trigger the use of this URL as the approvalUrlInfo.approvalUrl property in a Products.approve call to approve the product. This URL can only be used to display permissions for up to 1 day.", - "parameters": { - "enterpriseId": { - "type": "string", - "description": "The ID of the enterprise.", - "required": true, - "location": "path" - }, - "languageCode": { - "type": "string", - "description": "The BCP 47 language code used for permission names and descriptions in the returned iframe, for instance \"en-US\".", - "location": "query" - }, - "productId": { - "type": "string", - "description": "The ID of the product.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "enterpriseId", - "productId" - ], - "response": { - "$ref": "ProductsGenerateApprovalUrlResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/androidenterprise" - ] - }, - "get": { - "id": "androidenterprise.products.get", - "path": "enterprises/{enterpriseId}/products/{productId}", - "httpMethod": "GET", - "description": "Retrieves details of a product for display to an enterprise admin.", - "parameters": { - "enterpriseId": { - "type": "string", - "description": "The ID of the enterprise.", - "required": true, - "location": "path" - }, - "language": { - "type": "string", - "description": "The BCP47 tag for the user's preferred language (e.g. \"en-US\", \"de\").", - "location": "query" - }, - "productId": { - "type": "string", - "description": "The ID of the product, e.g. \"app:com.google.android.gm\".", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "enterpriseId", - "productId" - ], - "response": { - "$ref": "Product" - }, - "scopes": [ - "https://www.googleapis.com/auth/androidenterprise" - ] - }, - "getAppRestrictionsSchema": { - "id": "androidenterprise.products.getAppRestrictionsSchema", - "path": "enterprises/{enterpriseId}/products/{productId}/appRestrictionsSchema", - "httpMethod": "GET", - "description": "Retrieves the schema that defines the configurable properties for this product. All products have a schema, but this schema may be empty if no managed configurations have been defined. This schema can be used to populate a UI that allows an admin to configure the product. To apply a managed configuration based on the schema obtained using this API, see Managed Configurations through Play.", - "parameters": { - "enterpriseId": { - "type": "string", - "description": "The ID of the enterprise.", - "required": true, - "location": "path" - }, - "language": { - "type": "string", - "description": "The BCP47 tag for the user's preferred language (e.g. \"en-US\", \"de\").", - "location": "query" - }, - "productId": { - "type": "string", - "description": "The ID of the product.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "enterpriseId", - "productId" - ], - "response": { - "$ref": "AppRestrictionsSchema" - }, - "scopes": [ - "https://www.googleapis.com/auth/androidenterprise" - ] - }, - "getPermissions": { - "id": "androidenterprise.products.getPermissions", - "path": "enterprises/{enterpriseId}/products/{productId}/permissions", - "httpMethod": "GET", - "description": "Retrieves the Android app permissions required by this app.", - "parameters": { - "enterpriseId": { - "type": "string", - "description": "The ID of the enterprise.", - "required": true, - "location": "path" - }, - "productId": { - "type": "string", - "description": "The ID of the product.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "enterpriseId", - "productId" - ], - "response": { - "$ref": "ProductPermissions" - }, - "scopes": [ - "https://www.googleapis.com/auth/androidenterprise" - ] - }, - "list": { - "id": "androidenterprise.products.list", - "path": "enterprises/{enterpriseId}/products", - "httpMethod": "GET", - "description": "Finds approved products that match a query, or all approved products if there is no query.", - "parameters": { - "approved": { - "type": "boolean", - "description": "Specifies whether to search among all products (false) or among only products that have been approved (true). Only \"true\" is supported, and should be specified.", - "location": "query" - }, - "enterpriseId": { - "type": "string", - "description": "The ID of the enterprise.", - "required": true, - "location": "path" - }, - "language": { - "type": "string", - "description": "The BCP47 tag for the user's preferred language (e.g. \"en-US\", \"de\"). Results are returned in the language best matching the preferred language.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "Specifies the maximum number of products that can be returned per request. If not specified, uses a default value of 100, which is also the maximum retrievable within a single response.", - "format": "uint32", - "location": "query" - }, - "query": { - "type": "string", - "description": "The search query as typed in the Google Play store search box. If omitted, all approved apps will be returned (using the pagination parameters), including apps that are not available in the store (e.g. unpublished apps).", - "location": "query" - }, - "token": { - "type": "string", - "description": "A pagination token is contained in a request''s response when there are more products. The token can be used in a subsequent request to obtain more products, and so forth. This parameter cannot be used in the initial request.", - "location": "query" - } - }, - "parameterOrder": [ - "enterpriseId" - ], - "response": { - "$ref": "ProductsListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/androidenterprise" - ] - }, - "unapprove": { - "id": "androidenterprise.products.unapprove", - "path": "enterprises/{enterpriseId}/products/{productId}/unapprove", - "httpMethod": "POST", - "description": "Unapproves the specified product (and the relevant app permissions, if any)", - "parameters": { - "enterpriseId": { - "type": "string", - "description": "The ID of the enterprise.", - "required": true, - "location": "path" - }, - "productId": { - "type": "string", - "description": "The ID of the product.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "enterpriseId", - "productId" - ], - "scopes": [ - "https://www.googleapis.com/auth/androidenterprise" - ] - } - } - }, - "serviceaccountkeys": { - "methods": { - "delete": { - "id": "androidenterprise.serviceaccountkeys.delete", - "path": "enterprises/{enterpriseId}/serviceAccountKeys/{keyId}", - "httpMethod": "DELETE", - "description": "Removes and invalidates the specified credentials for the service account associated with this enterprise. The calling service account must have been retrieved by calling Enterprises.GetServiceAccount and must have been set as the enterprise service account by calling Enterprises.SetAccount.", - "parameters": { - "enterpriseId": { - "type": "string", - "description": "The ID of the enterprise.", - "required": true, - "location": "path" - }, - "keyId": { - "type": "string", - "description": "The ID of the key.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "enterpriseId", - "keyId" - ], - "scopes": [ - "https://www.googleapis.com/auth/androidenterprise" - ] - }, - "insert": { - "id": "androidenterprise.serviceaccountkeys.insert", - "path": "enterprises/{enterpriseId}/serviceAccountKeys", - "httpMethod": "POST", - "description": "Generates new credentials for the service account associated with this enterprise. The calling service account must have been retrieved by calling Enterprises.GetServiceAccount and must have been set as the enterprise service account by calling Enterprises.SetAccount.\n\nOnly the type of the key should be populated in the resource to be inserted.", - "parameters": { - "enterpriseId": { - "type": "string", - "description": "The ID of the enterprise.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "enterpriseId" - ], - "request": { - "$ref": "ServiceAccountKey" - }, - "response": { - "$ref": "ServiceAccountKey" - }, - "scopes": [ - "https://www.googleapis.com/auth/androidenterprise" - ] - }, - "list": { - "id": "androidenterprise.serviceaccountkeys.list", - "path": "enterprises/{enterpriseId}/serviceAccountKeys", - "httpMethod": "GET", - "description": "Lists all active credentials for the service account associated with this enterprise. Only the ID and key type are returned. The calling service account must have been retrieved by calling Enterprises.GetServiceAccount and must have been set as the enterprise service account by calling Enterprises.SetAccount.", - "parameters": { - "enterpriseId": { - "type": "string", - "description": "The ID of the enterprise.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "enterpriseId" - ], - "response": { - "$ref": "ServiceAccountKeysListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/androidenterprise" - ] - } - } - }, - "storelayoutclusters": { - "methods": { - "delete": { - "id": "androidenterprise.storelayoutclusters.delete", - "path": "enterprises/{enterpriseId}/storeLayout/pages/{pageId}/clusters/{clusterId}", - "httpMethod": "DELETE", - "description": "Deletes a cluster.", - "parameters": { - "clusterId": { - "type": "string", - "description": "The ID of the cluster.", - "required": true, - "location": "path" - }, - "enterpriseId": { - "type": "string", - "description": "The ID of the enterprise.", - "required": true, - "location": "path" - }, - "pageId": { - "type": "string", - "description": "The ID of the page.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "enterpriseId", - "pageId", - "clusterId" - ], - "scopes": [ - "https://www.googleapis.com/auth/androidenterprise" - ] - }, - "get": { - "id": "androidenterprise.storelayoutclusters.get", - "path": "enterprises/{enterpriseId}/storeLayout/pages/{pageId}/clusters/{clusterId}", - "httpMethod": "GET", - "description": "Retrieves details of a cluster.", - "parameters": { - "clusterId": { - "type": "string", - "description": "The ID of the cluster.", - "required": true, - "location": "path" - }, - "enterpriseId": { - "type": "string", - "description": "The ID of the enterprise.", - "required": true, - "location": "path" - }, - "pageId": { - "type": "string", - "description": "The ID of the page.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "enterpriseId", - "pageId", - "clusterId" - ], - "response": { - "$ref": "StoreCluster" - }, - "scopes": [ - "https://www.googleapis.com/auth/androidenterprise" - ] - }, - "insert": { - "id": "androidenterprise.storelayoutclusters.insert", - "path": "enterprises/{enterpriseId}/storeLayout/pages/{pageId}/clusters", - "httpMethod": "POST", - "description": "Inserts a new cluster in a page.", - "parameters": { - "enterpriseId": { - "type": "string", - "description": "The ID of the enterprise.", - "required": true, - "location": "path" - }, - "pageId": { - "type": "string", - "description": "The ID of the page.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "enterpriseId", - "pageId" - ], - "request": { - "$ref": "StoreCluster" - }, - "response": { - "$ref": "StoreCluster" - }, - "scopes": [ - "https://www.googleapis.com/auth/androidenterprise" - ] - }, - "list": { - "id": "androidenterprise.storelayoutclusters.list", - "path": "enterprises/{enterpriseId}/storeLayout/pages/{pageId}/clusters", - "httpMethod": "GET", - "description": "Retrieves the details of all clusters on the specified page.", - "parameters": { - "enterpriseId": { - "type": "string", - "description": "The ID of the enterprise.", - "required": true, - "location": "path" - }, - "pageId": { - "type": "string", - "description": "The ID of the page.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "enterpriseId", - "pageId" - ], - "response": { - "$ref": "StoreLayoutClustersListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/androidenterprise" - ] - }, - "patch": { - "id": "androidenterprise.storelayoutclusters.patch", - "path": "enterprises/{enterpriseId}/storeLayout/pages/{pageId}/clusters/{clusterId}", - "httpMethod": "PATCH", - "description": "Updates a cluster. This method supports patch semantics.", - "parameters": { - "clusterId": { - "type": "string", - "description": "The ID of the cluster.", - "required": true, - "location": "path" - }, - "enterpriseId": { - "type": "string", - "description": "The ID of the enterprise.", - "required": true, - "location": "path" - }, - "pageId": { - "type": "string", - "description": "The ID of the page.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "enterpriseId", - "pageId", - "clusterId" - ], - "request": { - "$ref": "StoreCluster" - }, - "response": { - "$ref": "StoreCluster" - }, - "scopes": [ - "https://www.googleapis.com/auth/androidenterprise" - ] - }, - "update": { - "id": "androidenterprise.storelayoutclusters.update", - "path": "enterprises/{enterpriseId}/storeLayout/pages/{pageId}/clusters/{clusterId}", - "httpMethod": "PUT", - "description": "Updates a cluster.", - "parameters": { - "clusterId": { - "type": "string", - "description": "The ID of the cluster.", - "required": true, - "location": "path" - }, - "enterpriseId": { - "type": "string", - "description": "The ID of the enterprise.", - "required": true, - "location": "path" - }, - "pageId": { - "type": "string", - "description": "The ID of the page.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "enterpriseId", - "pageId", - "clusterId" - ], - "request": { - "$ref": "StoreCluster" - }, - "response": { - "$ref": "StoreCluster" - }, - "scopes": [ - "https://www.googleapis.com/auth/androidenterprise" - ] - } - } - }, - "storelayoutpages": { - "methods": { - "delete": { - "id": "androidenterprise.storelayoutpages.delete", - "path": "enterprises/{enterpriseId}/storeLayout/pages/{pageId}", - "httpMethod": "DELETE", - "description": "Deletes a store page.", - "parameters": { - "enterpriseId": { - "type": "string", - "description": "The ID of the enterprise.", - "required": true, - "location": "path" - }, - "pageId": { - "type": "string", - "description": "The ID of the page.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "enterpriseId", - "pageId" - ], - "scopes": [ - "https://www.googleapis.com/auth/androidenterprise" - ] - }, - "get": { - "id": "androidenterprise.storelayoutpages.get", - "path": "enterprises/{enterpriseId}/storeLayout/pages/{pageId}", - "httpMethod": "GET", - "description": "Retrieves details of a store page.", - "parameters": { - "enterpriseId": { - "type": "string", - "description": "The ID of the enterprise.", - "required": true, - "location": "path" - }, - "pageId": { - "type": "string", - "description": "The ID of the page.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "enterpriseId", - "pageId" - ], - "response": { - "$ref": "StorePage" - }, - "scopes": [ - "https://www.googleapis.com/auth/androidenterprise" - ] - }, - "insert": { - "id": "androidenterprise.storelayoutpages.insert", - "path": "enterprises/{enterpriseId}/storeLayout/pages", - "httpMethod": "POST", - "description": "Inserts a new store page.", - "parameters": { - "enterpriseId": { - "type": "string", - "description": "The ID of the enterprise.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "enterpriseId" - ], - "request": { - "$ref": "StorePage" - }, - "response": { - "$ref": "StorePage" - }, - "scopes": [ - "https://www.googleapis.com/auth/androidenterprise" - ] - }, - "list": { - "id": "androidenterprise.storelayoutpages.list", - "path": "enterprises/{enterpriseId}/storeLayout/pages", - "httpMethod": "GET", - "description": "Retrieves the details of all pages in the store.", - "parameters": { - "enterpriseId": { - "type": "string", - "description": "The ID of the enterprise.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "enterpriseId" - ], - "response": { - "$ref": "StoreLayoutPagesListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/androidenterprise" - ] - }, - "patch": { - "id": "androidenterprise.storelayoutpages.patch", - "path": "enterprises/{enterpriseId}/storeLayout/pages/{pageId}", - "httpMethod": "PATCH", - "description": "Updates the content of a store page. This method supports patch semantics.", - "parameters": { - "enterpriseId": { - "type": "string", - "description": "The ID of the enterprise.", - "required": true, - "location": "path" - }, - "pageId": { - "type": "string", - "description": "The ID of the page.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "enterpriseId", - "pageId" - ], - "request": { - "$ref": "StorePage" - }, - "response": { - "$ref": "StorePage" - }, - "scopes": [ - "https://www.googleapis.com/auth/androidenterprise" - ] - }, - "update": { - "id": "androidenterprise.storelayoutpages.update", - "path": "enterprises/{enterpriseId}/storeLayout/pages/{pageId}", - "httpMethod": "PUT", - "description": "Updates the content of a store page.", - "parameters": { - "enterpriseId": { - "type": "string", - "description": "The ID of the enterprise.", - "required": true, - "location": "path" - }, - "pageId": { - "type": "string", - "description": "The ID of the page.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "enterpriseId", - "pageId" - ], - "request": { - "$ref": "StorePage" - }, - "response": { - "$ref": "StorePage" - }, - "scopes": [ - "https://www.googleapis.com/auth/androidenterprise" - ] - } - } - }, - "users": { - "methods": { - "delete": { - "id": "androidenterprise.users.delete", - "path": "enterprises/{enterpriseId}/users/{userId}", - "httpMethod": "DELETE", - "description": "Deleted an EMM-managed user.", - "parameters": { - "enterpriseId": { - "type": "string", - "description": "The ID of the enterprise.", - "required": true, - "location": "path" - }, - "userId": { - "type": "string", - "description": "The ID of the user.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "enterpriseId", - "userId" - ], - "scopes": [ - "https://www.googleapis.com/auth/androidenterprise" - ] - }, - "generateAuthenticationToken": { - "id": "androidenterprise.users.generateAuthenticationToken", - "path": "enterprises/{enterpriseId}/users/{userId}/authenticationToken", - "httpMethod": "POST", - "description": "Generates an authentication token which the device policy client can use to provision the given EMM-managed user account on a device. The generated token is single-use and expires after a few minutes.\n\nThis call only works with EMM-managed accounts.", - "parameters": { - "enterpriseId": { - "type": "string", - "description": "The ID of the enterprise.", - "required": true, - "location": "path" - }, - "userId": { - "type": "string", - "description": "The ID of the user.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "enterpriseId", - "userId" - ], - "response": { - "$ref": "AuthenticationToken" - }, - "scopes": [ - "https://www.googleapis.com/auth/androidenterprise" - ] - }, - "generateToken": { - "id": "androidenterprise.users.generateToken", - "path": "enterprises/{enterpriseId}/users/{userId}/token", - "httpMethod": "POST", - "description": "Generates a token (activation code) to allow this user to configure their managed account in the Android Setup Wizard. Revokes any previously generated token.\n\nThis call only works with Google managed accounts.", - "parameters": { - "enterpriseId": { - "type": "string", - "description": "The ID of the enterprise.", - "required": true, - "location": "path" - }, - "userId": { - "type": "string", - "description": "The ID of the user.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "enterpriseId", - "userId" - ], - "response": { - "$ref": "UserToken" - }, - "scopes": [ - "https://www.googleapis.com/auth/androidenterprise" - ] - }, - "get": { - "id": "androidenterprise.users.get", - "path": "enterprises/{enterpriseId}/users/{userId}", - "httpMethod": "GET", - "description": "Retrieves a user's details.", - "parameters": { - "enterpriseId": { - "type": "string", - "description": "The ID of the enterprise.", - "required": true, - "location": "path" - }, - "userId": { - "type": "string", - "description": "The ID of the user.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "enterpriseId", - "userId" - ], - "response": { - "$ref": "User" - }, - "scopes": [ - "https://www.googleapis.com/auth/androidenterprise" - ] - }, - "getAvailableProductSet": { - "id": "androidenterprise.users.getAvailableProductSet", - "path": "enterprises/{enterpriseId}/users/{userId}/availableProductSet", - "httpMethod": "GET", - "description": "Retrieves the set of products a user is entitled to access.", - "parameters": { - "enterpriseId": { - "type": "string", - "description": "The ID of the enterprise.", - "required": true, - "location": "path" - }, - "userId": { - "type": "string", - "description": "The ID of the user.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "enterpriseId", - "userId" - ], - "response": { - "$ref": "ProductSet" - }, - "scopes": [ - "https://www.googleapis.com/auth/androidenterprise" - ] - }, - "insert": { - "id": "androidenterprise.users.insert", - "path": "enterprises/{enterpriseId}/users", - "httpMethod": "POST", - "description": "Creates a new EMM-managed user.\n\nThe Users resource passed in the body of the request should include an accountIdentifier and an accountType.\nIf a corresponding user already exists with the same account identifier, the user will be updated with the resource. In this case only the displayName field can be changed.", - "parameters": { - "enterpriseId": { - "type": "string", - "description": "The ID of the enterprise.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "enterpriseId" - ], - "request": { - "$ref": "User" - }, - "response": { - "$ref": "User" - }, - "scopes": [ - "https://www.googleapis.com/auth/androidenterprise" - ] - }, - "list": { - "id": "androidenterprise.users.list", - "path": "enterprises/{enterpriseId}/users", - "httpMethod": "GET", - "description": "Looks up a user by primary email address. This is only supported for Google-managed users. Lookup of the id is not needed for EMM-managed users because the id is already returned in the result of the Users.insert call.", - "parameters": { - "email": { - "type": "string", - "description": "The exact primary email address of the user to look up.", - "required": true, - "location": "query" - }, - "enterpriseId": { - "type": "string", - "description": "The ID of the enterprise.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "enterpriseId", - "email" - ], - "response": { - "$ref": "UsersListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/androidenterprise" - ] - }, - "patch": { - "id": "androidenterprise.users.patch", - "path": "enterprises/{enterpriseId}/users/{userId}", - "httpMethod": "PATCH", - "description": "Updates the details of an EMM-managed user.\n\nCan be used with EMM-managed users only (not Google managed users). Pass the new details in the Users resource in the request body. Only the displayName field can be changed. Other fields must either be unset or have the currently active value. This method supports patch semantics.", - "parameters": { - "enterpriseId": { - "type": "string", - "description": "The ID of the enterprise.", - "required": true, - "location": "path" - }, - "userId": { - "type": "string", - "description": "The ID of the user.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "enterpriseId", - "userId" - ], - "request": { - "$ref": "User" - }, - "response": { - "$ref": "User" - }, - "scopes": [ - "https://www.googleapis.com/auth/androidenterprise" - ] - }, - "revokeDeviceAccess": { - "id": "androidenterprise.users.revokeDeviceAccess", - "path": "enterprises/{enterpriseId}/users/{userId}/deviceAccess", - "httpMethod": "DELETE", - "description": "Revokes access to all devices currently provisioned to the user. The user will no longer be able to use the managed Play store on any of their managed devices.\n\nThis call only works with EMM-managed accounts.", - "parameters": { - "enterpriseId": { - "type": "string", - "description": "The ID of the enterprise.", - "required": true, - "location": "path" - }, - "userId": { - "type": "string", - "description": "The ID of the user.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "enterpriseId", - "userId" - ], - "scopes": [ - "https://www.googleapis.com/auth/androidenterprise" - ] - }, - "revokeToken": { - "id": "androidenterprise.users.revokeToken", - "path": "enterprises/{enterpriseId}/users/{userId}/token", - "httpMethod": "DELETE", - "description": "Revokes a previously generated token (activation code) for the user.", - "parameters": { - "enterpriseId": { - "type": "string", - "description": "The ID of the enterprise.", - "required": true, - "location": "path" - }, - "userId": { - "type": "string", - "description": "The ID of the user.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "enterpriseId", - "userId" - ], - "scopes": [ - "https://www.googleapis.com/auth/androidenterprise" - ] - }, - "setAvailableProductSet": { - "id": "androidenterprise.users.setAvailableProductSet", - "path": "enterprises/{enterpriseId}/users/{userId}/availableProductSet", - "httpMethod": "PUT", - "description": "Modifies the set of products that a user is entitled to access (referred to as whitelisted products). Only products that are approved or products that were previously approved (products with revoked approval) can be whitelisted.", - "parameters": { - "enterpriseId": { - "type": "string", - "description": "The ID of the enterprise.", - "required": true, - "location": "path" - }, - "userId": { - "type": "string", - "description": "The ID of the user.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "enterpriseId", - "userId" - ], - "request": { - "$ref": "ProductSet" - }, - "response": { - "$ref": "ProductSet" - }, - "scopes": [ - "https://www.googleapis.com/auth/androidenterprise" - ] - }, - "update": { - "id": "androidenterprise.users.update", - "path": "enterprises/{enterpriseId}/users/{userId}", - "httpMethod": "PUT", - "description": "Updates the details of an EMM-managed user.\n\nCan be used with EMM-managed users only (not Google managed users). Pass the new details in the Users resource in the request body. Only the displayName field can be changed. Other fields must either be unset or have the currently active value.", - "parameters": { - "enterpriseId": { - "type": "string", - "description": "The ID of the enterprise.", - "required": true, - "location": "path" - }, - "userId": { - "type": "string", - "description": "The ID of the user.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "enterpriseId", - "userId" - ], - "request": { - "$ref": "User" - }, - "response": { - "$ref": "User" - }, - "scopes": [ - "https://www.googleapis.com/auth/androidenterprise" - ] - } - } - } - } -} + "servicePath": "androidenterprise/v1/", + "title": "Google Play EMM API", + "version": "v1" +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/androidenterprise/v1/androidenterprise-gen.go b/vendor/google.golang.org/api/androidenterprise/v1/androidenterprise-gen.go index 514def3ea..41124825e 100644 --- a/vendor/google.golang.org/api/androidenterprise/v1/androidenterprise-gen.go +++ b/vendor/google.golang.org/api/androidenterprise/v1/androidenterprise-gen.go @@ -1524,6 +1524,41 @@ func (s *LocalizedText) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// MaintenanceWindow: Maintenance window for managed Google Play +// Accounts. This allows Play store to update the apps on the foreground +// in the designated window. +type MaintenanceWindow struct { + // DurationMs: Duration of the maintenance window, in milliseconds. The + // duration must be between 30 minutes and 24 hours (inclusive). + DurationMs int64 `json:"durationMs,omitempty,string"` + + // StartTimeAfterMidnightMs: Start time of the maintenance window, in + // milliseconds after midnight on the device. Windows can span midnight. + StartTimeAfterMidnightMs int64 `json:"startTimeAfterMidnightMs,omitempty,string"` + + // ForceSendFields is a list of field names (e.g. "DurationMs") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "DurationMs") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *MaintenanceWindow) MarshalJSON() ([]byte, error) { + type NoMethod MaintenanceWindow + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // ManagedConfiguration: A managed configuration resource contains the // set of managed properties defined by the app developer in the app's // managed configurations schema, as well as any configuration variables @@ -1662,6 +1697,10 @@ type ManagedConfigurationsSettings struct { // string "androidenterprise#managedConfigurationsSettings". Kind string `json:"kind,omitempty"` + // LastUpdatedTimestampMillis: The last updated time of the managed + // configuration settings in milliseconds since 1970-01-01T00:00:00Z. + LastUpdatedTimestampMillis int64 `json:"lastUpdatedTimestampMillis,omitempty,string"` + // ManagedProperty: The set of managed properties for this // configuration. ManagedProperty []*ManagedProperty `json:"managedProperty,omitempty"` @@ -2094,6 +2133,18 @@ func (s *Permission) MarshalJSON() ([]byte, error) { // Policy: The device policy for a given managed device. type Policy struct { + // AutoUpdatePolicy: The auto-update policy for apps installed on the + // device. "choiceToTheUser" allows the device's user to configure the + // app update policy. "always" enables auto updates. "never" disables + // auto updates. "wifiOnly" enables auto updates only when the device is + // connected to wifi. + AutoUpdatePolicy string `json:"autoUpdatePolicy,omitempty"` + + // MaintenanceWindow: The maintenance window defining when apps running + // in the foreground should be updated. This feature is only supported + // on fully managed devices. + MaintenanceWindow *MaintenanceWindow `json:"maintenanceWindow,omitempty"` + // ProductAvailabilityPolicy: The availability granted to the device for // the specified products. "all" gives the device access to all // products, regardless of approval status. "allApproved" entitles the @@ -2110,22 +2161,21 @@ type Policy struct { // ProductPolicy: The list of product policies. ProductPolicy []*ProductPolicy `json:"productPolicy,omitempty"` - // ForceSendFields is a list of field names (e.g. - // "ProductAvailabilityPolicy") to unconditionally include in API - // requests. By default, fields with empty values are omitted from API - // requests. However, any non-pointer, non-interface field appearing in - // ForceSendFields will be sent to the server regardless of whether the - // field is empty or not. This may be used to include empty fields in - // Patch requests. + // ForceSendFields is a list of field names (e.g. "AutoUpdatePolicy") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. ForceSendFields []string `json:"-"` - // NullFields is a list of field names (e.g. - // "ProductAvailabilityPolicy") to include in API requests with the JSON - // null value. By default, fields with empty values are omitted from API - // requests. However, any field with an empty value appearing in - // NullFields will be sent to the server as null. It is an error if a - // field in this list has a non-empty value. This may be used to include - // null fields in Patch requests. + // NullFields is a list of field names (e.g. "AutoUpdatePolicy") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. NullFields []string `json:"-"` } diff --git a/vendor/google.golang.org/api/androidmanagement/v1/androidmanagement-api.json b/vendor/google.golang.org/api/androidmanagement/v1/androidmanagement-api.json index f5dc90632..b4cae61d3 100644 --- a/vendor/google.golang.org/api/androidmanagement/v1/androidmanagement-api.json +++ b/vendor/google.golang.org/api/androidmanagement/v1/androidmanagement-api.json @@ -1,5 +1,4 @@ { - "id": "androidmanagement:v1", "auth": { "oauth2": { "scopes": { @@ -9,179 +8,220 @@ } } }, + "basePath": "", + "baseUrl": "https://androidmanagement.googleapis.com/", + "batchPath": "batch", + "canonicalName": "Android Management", "description": "The Android Management API provides remote enterprise management of Android devices and apps.", + "discoveryVersion": "v1", + "documentationLink": "https://developers.google.com/android/management", + "fullyEncodeReservedExpansion": true, + "icons": { + "x16": "http://www.google.com/images/icons/product/search-16.gif", + "x32": "http://www.google.com/images/icons/product/search-32.gif" + }, + "id": "androidmanagement:v1", + "kind": "discovery#restDescription", + "name": "androidmanagement", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "$.xgafv": { + "description": "V1 error format.", + "enum": [ + "1", + "2" + ], + "enumDescriptions": [ + "v1 error format", + "v2 error format" + ], + "location": "query", + "type": "string" + }, + "access_token": { + "description": "OAuth access token.", + "location": "query", + "type": "string" + }, + "alt": { + "default": "json", + "description": "Data format for response.", + "enum": [ + "json", + "media", + "proto" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json", + "Media download with context-dependent Content-Type", + "Responses with Content-Type of application/x-protobuf" + ], + "location": "query", + "type": "string" + }, + "bearer_token": { + "description": "OAuth bearer token.", + "location": "query", + "type": "string" + }, + "callback": { + "description": "JSONP", + "location": "query", + "type": "string" + }, + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "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.", + "location": "query", + "type": "string" + }, + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "pp": { + "default": "true", + "description": "Pretty-print response.", + "location": "query", + "type": "boolean" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", + "location": "query", + "type": "string" + }, + "uploadType": { + "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", + "location": "query", + "type": "string" + }, + "upload_protocol": { + "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", + "location": "query", + "type": "string" + } + }, "protocol": "rest", - "title": "Android Management API", "resources": { - "signupUrls": { + "enterprises": { "methods": { "create": { - "id": "androidmanagement.signupUrls.create", - "response": { - "$ref": "SignupUrl" - }, - "parameterOrder": [], - "description": "Creates an enterprise signup URL.", - "flatPath": "v1/signupUrls", + "description": "Creates an enterprise. This is the last step in the enterprise signup flow.", + "flatPath": "v1/enterprises", "httpMethod": "POST", + "id": "androidmanagement.enterprises.create", + "parameterOrder": [], "parameters": { - "callbackUrl": { - "description": "The callback URL to which the admin will be redirected after successfully creating an enterprise. Before redirecting there the system will add a query parameter to this URL named enterpriseToken which will contain an opaque token to be used for the create enterprise request. The URL will be parsed then reformatted in order to add the enterpriseToken parameter, so there may be some minor formatting changes.", + "enterpriseToken": { + "description": "The enterprise token appended to the callback URL.", "location": "query", "type": "string" }, "projectId": { - "description": "The id of the Google Cloud Platform project which will own the enterprise.", + "description": "The ID of the Google Cloud Platform project which will own the enterprise.", + "location": "query", + "type": "string" + }, + "signupUrlName": { + "description": "The name of the SignupUrl used to sign up for the enterprise.", "location": "query", "type": "string" } }, - "path": "v1/signupUrls", + "path": "v1/enterprises", + "request": { + "$ref": "Enterprise" + }, + "response": { + "$ref": "Enterprise" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidmanagement" + ] + }, + "get": { + "description": "Gets an enterprise.", + "flatPath": "v1/enterprises/{enterprisesId}", + "httpMethod": "GET", + "id": "androidmanagement.enterprises.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the enterprise in the form enterprises/{enterpriseId}.", + "location": "path", + "pattern": "^enterprises/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "Enterprise" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidmanagement" + ] + }, + "patch": { + "description": "Updates an enterprise.", + "flatPath": "v1/enterprises/{enterprisesId}", + "httpMethod": "PATCH", + "id": "androidmanagement.enterprises.patch", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the enterprise in the form enterprises/{enterpriseId}.", + "location": "path", + "pattern": "^enterprises/[^/]+$", + "required": true, + "type": "string" + }, + "updateMask": { + "description": "The field mask indicating the fields to update. If not set, all modifiable fields will be modified.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + } + }, + "path": "v1/{+name}", + "request": { + "$ref": "Enterprise" + }, + "response": { + "$ref": "Enterprise" + }, "scopes": [ "https://www.googleapis.com/auth/androidmanagement" ] } - } - }, - "enterprises": { + }, "resources": { - "policies": { - "methods": { - "get": { - "id": "androidmanagement.enterprises.policies.get", - "response": { - "$ref": "Policy" - }, - "parameterOrder": [ - "name" - ], - "description": "Gets a policy.", - "flatPath": "v1/enterprises/{enterprisesId}/policies/{policiesId}", - "httpMethod": "GET", - "parameters": { - "name": { - "description": "The name of the policy in the form enterprises/{enterpriseId}/policies/{policyId}", - "required": true, - "pattern": "^enterprises/[^/]+/policies/[^/]+$", - "location": "path", - "type": "string" - } - }, - "path": "v1/{+name}", - "scopes": [ - "https://www.googleapis.com/auth/androidmanagement" - ] - }, - "list": { - "id": "androidmanagement.enterprises.policies.list", - "response": { - "$ref": "ListPoliciesResponse" - }, - "parameterOrder": [ - "parent" - ], - "description": "Lists policies for a given enterprise.", - "flatPath": "v1/enterprises/{enterprisesId}/policies", - "httpMethod": "GET", - "parameters": { - "pageSize": { - "description": "The requested page size. The actual page size may be fixed to a min or max value.", - "location": "query", - "type": "integer", - "format": "int32" - }, - "parent": { - "description": "The name of the enterprise in the form enterprises/{enterpriseId}", - "required": true, - "pattern": "^enterprises/[^/]+$", - "location": "path", - "type": "string" - }, - "pageToken": { - "description": "A token identifying a page of results the server should return.", - "location": "query", - "type": "string" - } - }, - "path": "v1/{+parent}/policies", - "scopes": [ - "https://www.googleapis.com/auth/androidmanagement" - ] - }, - "patch": { - "id": "androidmanagement.enterprises.policies.patch", - "response": { - "$ref": "Policy" - }, - "parameterOrder": [ - "name" - ], - "description": "Updates or creates a policy.", - "request": { - "$ref": "Policy" - }, - "flatPath": "v1/enterprises/{enterprisesId}/policies/{policiesId}", - "httpMethod": "PATCH", - "parameters": { - "updateMask": { - "description": "The field mask indicating the fields to update. If not set, all modifiable fields will be modified.", - "location": "query", - "type": "string", - "format": "google-fieldmask" - }, - "name": { - "description": "The name of the policy in the form enterprises/{enterpriseId}/policies/{policyId}", - "required": true, - "pattern": "^enterprises/[^/]+/policies/[^/]+$", - "location": "path", - "type": "string" - } - }, - "path": "v1/{+name}", - "scopes": [ - "https://www.googleapis.com/auth/androidmanagement" - ] - }, - "delete": { - "id": "androidmanagement.enterprises.policies.delete", - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "name" - ], - "description": "Deletes a policy. This operation is only permitted if no devices are currently referencing the policy.", - "flatPath": "v1/enterprises/{enterprisesId}/policies/{policiesId}", - "httpMethod": "DELETE", - "parameters": { - "name": { - "description": "The name of the policy in the form enterprises/{enterpriseId}/policies/{policyId}", - "required": true, - "pattern": "^enterprises/[^/]+/policies/[^/]+$", - "location": "path", - "type": "string" - } - }, - "path": "v1/{+name}", - "scopes": [ - "https://www.googleapis.com/auth/androidmanagement" - ] - } - } - }, "applications": { "methods": { "get": { - "id": "androidmanagement.enterprises.applications.get", - "response": { - "$ref": "Application" - }, - "parameterOrder": [ - "name" - ], "description": "Gets info about an application.", "flatPath": "v1/enterprises/{enterprisesId}/applications/{applicationsId}", "httpMethod": "GET", + "id": "androidmanagement.enterprises.applications.get", + "parameterOrder": [ + "name" + ], "parameters": { "languageCode": { "description": "The preferred language for localized application info, as a BCP47 tag (e.g. \"en-US\", \"de\"). If not specified the default language of the application will be used.", @@ -189,71 +229,472 @@ "type": "string" }, "name": { - "description": "The name of the application in the form enterprises/{enterpriseId}/applications/{package_name}", - "required": true, - "pattern": "^enterprises/[^/]+/applications/[^/]+$", + "description": "The name of the application in the form enterprises/{enterpriseId}/applications/{package_name}.", "location": "path", + "pattern": "^enterprises/[^/]+/applications/[^/]+$", + "required": true, "type": "string" } }, "path": "v1/{+name}", + "response": { + "$ref": "Application" + }, "scopes": [ "https://www.googleapis.com/auth/androidmanagement" ] } } }, - "enrollmentTokens": { + "devices": { "methods": { - "create": { - "id": "androidmanagement.enterprises.enrollmentTokens.create", - "response": { - "$ref": "EnrollmentToken" + "delete": { + "description": "Deletes a device. This operation wipes the device.", + "flatPath": "v1/enterprises/{enterprisesId}/devices/{devicesId}", + "httpMethod": "DELETE", + "id": "androidmanagement.enterprises.devices.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the device in the form enterprises/{enterpriseId}/devices/{deviceId}.", + "location": "path", + "pattern": "^enterprises/[^/]+/devices/[^/]+$", + "required": true, + "type": "string" + } }, + "path": "v1/{+name}", + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidmanagement" + ] + }, + "get": { + "description": "Gets a device.", + "flatPath": "v1/enterprises/{enterprisesId}/devices/{devicesId}", + "httpMethod": "GET", + "id": "androidmanagement.enterprises.devices.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the device in the form enterprises/{enterpriseId}/devices/{deviceId}.", + "location": "path", + "pattern": "^enterprises/[^/]+/devices/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "Device" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidmanagement" + ] + }, + "issueCommand": { + "description": "Issues a command to a device. The Operation resource returned contains a Command in its metadata field. Use the get operation method to get the status of the command.", + "flatPath": "v1/enterprises/{enterprisesId}/devices/{devicesId}:issueCommand", + "httpMethod": "POST", + "id": "androidmanagement.enterprises.devices.issueCommand", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the device in the form enterprises/{enterpriseId}/devices/{deviceId}.", + "location": "path", + "pattern": "^enterprises/[^/]+/devices/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}:issueCommand", + "request": { + "$ref": "Command" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidmanagement" + ] + }, + "list": { + "description": "Lists devices for a given enterprise.", + "flatPath": "v1/enterprises/{enterprisesId}/devices", + "httpMethod": "GET", + "id": "androidmanagement.enterprises.devices.list", "parameterOrder": [ "parent" ], - "description": "Creates an enrollment token for a given enterprise.", - "request": { - "$ref": "EnrollmentToken" + "parameters": { + "pageSize": { + "description": "The requested page size. The actual page size may be fixed to a min or max value.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "A token identifying a page of results returned by the server.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "The name of the enterprise in the form enterprises/{enterpriseId}.", + "location": "path", + "pattern": "^enterprises/[^/]+$", + "required": true, + "type": "string" + } }, + "path": "v1/{+parent}/devices", + "response": { + "$ref": "ListDevicesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidmanagement" + ] + }, + "patch": { + "description": "Updates a device.", + "flatPath": "v1/enterprises/{enterprisesId}/devices/{devicesId}", + "httpMethod": "PATCH", + "id": "androidmanagement.enterprises.devices.patch", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the device in the form enterprises/{enterpriseId}/devices/{deviceId}.", + "location": "path", + "pattern": "^enterprises/[^/]+/devices/[^/]+$", + "required": true, + "type": "string" + }, + "updateMask": { + "description": "The field mask indicating the fields to update. If not set, all modifiable fields will be modified.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + } + }, + "path": "v1/{+name}", + "request": { + "$ref": "Device" + }, + "response": { + "$ref": "Device" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidmanagement" + ] + } + }, + "resources": { + "operations": { + "methods": { + "cancel": { + "description": "Starts asynchronous cancellation on a long-running operation. The server makes a best effort to cancel the operation, but success is not guaranteed. If the server doesn't support this method, it returns google.rpc.Code.UNIMPLEMENTED. Clients can use Operations.GetOperation or other methods to check whether the cancellation succeeded or whether the operation completed despite cancellation. On successful cancellation, the operation is not deleted; instead, it becomes an operation with an Operation.error value with a google.rpc.Status.code of 1, corresponding to Code.CANCELLED.", + "flatPath": "v1/enterprises/{enterprisesId}/devices/{devicesId}/operations/{operationsId}:cancel", + "httpMethod": "POST", + "id": "androidmanagement.enterprises.devices.operations.cancel", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource to be cancelled.", + "location": "path", + "pattern": "^enterprises/[^/]+/devices/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}:cancel", + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidmanagement" + ] + }, + "delete": { + "description": "Deletes a long-running operation. This method indicates that the client is no longer interested in the operation result. It does not cancel the operation. If the server doesn't support this method, it returns google.rpc.Code.UNIMPLEMENTED.", + "flatPath": "v1/enterprises/{enterprisesId}/devices/{devicesId}/operations/{operationsId}", + "httpMethod": "DELETE", + "id": "androidmanagement.enterprises.devices.operations.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource to be deleted.", + "location": "path", + "pattern": "^enterprises/[^/]+/devices/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidmanagement" + ] + }, + "get": { + "description": "Gets the latest state of a long-running operation. Clients can use this method to poll the operation result at intervals as recommended by the API service.", + "flatPath": "v1/enterprises/{enterprisesId}/devices/{devicesId}/operations/{operationsId}", + "httpMethod": "GET", + "id": "androidmanagement.enterprises.devices.operations.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource.", + "location": "path", + "pattern": "^enterprises/[^/]+/devices/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidmanagement" + ] + }, + "list": { + "description": "Lists operations that match the specified filter in the request. If the server doesn't support this method, it returns UNIMPLEMENTED.NOTE: the name binding allows API services to override the binding to use different resource name schemes, such as users/*/operations. To override the binding, API services can add a binding such as \"/v1/{name=users/*}/operations\" to their service configuration. For backwards compatibility, the default name includes the operations collection id, however overriding users must ensure the name binding is the parent resource, without the operations collection id.", + "flatPath": "v1/enterprises/{enterprisesId}/devices/{devicesId}/operations", + "httpMethod": "GET", + "id": "androidmanagement.enterprises.devices.operations.list", + "parameterOrder": [ + "name" + ], + "parameters": { + "filter": { + "description": "The standard list filter.", + "location": "query", + "type": "string" + }, + "name": { + "description": "The name of the operation's parent resource.", + "location": "path", + "pattern": "^enterprises/[^/]+/devices/[^/]+/operations$", + "required": true, + "type": "string" + }, + "pageSize": { + "description": "The standard list page size.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "The standard list page token.", + "location": "query", + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "ListOperationsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidmanagement" + ] + } + } + } + } + }, + "enrollmentTokens": { + "methods": { + "create": { + "description": "Creates an enrollment token for a given enterprise.", "flatPath": "v1/enterprises/{enterprisesId}/enrollmentTokens", "httpMethod": "POST", + "id": "androidmanagement.enterprises.enrollmentTokens.create", + "parameterOrder": [ + "parent" + ], "parameters": { "parent": { - "description": "The name of the enterprise in the form enterprises/{enterpriseId}", - "required": true, - "pattern": "^enterprises/[^/]+$", + "description": "The name of the enterprise in the form enterprises/{enterpriseId}.", "location": "path", + "pattern": "^enterprises/[^/]+$", + "required": true, "type": "string" } }, "path": "v1/{+parent}/enrollmentTokens", + "request": { + "$ref": "EnrollmentToken" + }, + "response": { + "$ref": "EnrollmentToken" + }, "scopes": [ "https://www.googleapis.com/auth/androidmanagement" ] }, "delete": { + "description": "Deletes an enrollment token. This operation invalidates the token, preventing its future use.", + "flatPath": "v1/enterprises/{enterprisesId}/enrollmentTokens/{enrollmentTokensId}", + "httpMethod": "DELETE", "id": "androidmanagement.enterprises.enrollmentTokens.delete", - "response": { - "$ref": "Empty" - }, "parameterOrder": [ "name" ], - "description": "Deletes an enrollment token, which prevents future use of the token.", - "flatPath": "v1/enterprises/{enterprisesId}/enrollmentTokens/{enrollmentTokensId}", - "httpMethod": "DELETE", "parameters": { "name": { - "description": "The name of the enrollment token in the form enterprises/{enterpriseId}/enrollmentTokens/{enrollmentTokenId}", - "required": true, - "pattern": "^enterprises/[^/]+/enrollmentTokens/[^/]+$", + "description": "The name of the enrollment token in the form enterprises/{enterpriseId}/enrollmentTokens/{enrollmentTokenId}.", "location": "path", + "pattern": "^enterprises/[^/]+/enrollmentTokens/[^/]+$", + "required": true, "type": "string" } }, "path": "v1/{+name}", + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidmanagement" + ] + } + } + }, + "policies": { + "methods": { + "delete": { + "description": "Deletes a policy. This operation is only permitted if no devices are currently referencing the policy.", + "flatPath": "v1/enterprises/{enterprisesId}/policies/{policiesId}", + "httpMethod": "DELETE", + "id": "androidmanagement.enterprises.policies.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the policy in the form enterprises/{enterpriseId}/policies/{policyId}.", + "location": "path", + "pattern": "^enterprises/[^/]+/policies/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidmanagement" + ] + }, + "get": { + "description": "Gets a policy.", + "flatPath": "v1/enterprises/{enterprisesId}/policies/{policiesId}", + "httpMethod": "GET", + "id": "androidmanagement.enterprises.policies.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the policy in the form enterprises/{enterpriseId}/policies/{policyId}.", + "location": "path", + "pattern": "^enterprises/[^/]+/policies/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidmanagement" + ] + }, + "list": { + "description": "Lists policies for a given enterprise.", + "flatPath": "v1/enterprises/{enterprisesId}/policies", + "httpMethod": "GET", + "id": "androidmanagement.enterprises.policies.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "pageSize": { + "description": "The requested page size. The actual page size may be fixed to a min or max value.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "A token identifying a page of results returned by the server.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "The name of the enterprise in the form enterprises/{enterpriseId}.", + "location": "path", + "pattern": "^enterprises/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+parent}/policies", + "response": { + "$ref": "ListPoliciesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidmanagement" + ] + }, + "patch": { + "description": "Updates or creates a policy.", + "flatPath": "v1/enterprises/{enterprisesId}/policies/{policiesId}", + "httpMethod": "PATCH", + "id": "androidmanagement.enterprises.policies.patch", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the policy in the form enterprises/{enterpriseId}/policies/{policyId}.", + "location": "path", + "pattern": "^enterprises/[^/]+/policies/[^/]+$", + "required": true, + "type": "string" + }, + "updateMask": { + "description": "The field mask indicating the fields to update. If not set, all modifiable fields will be modified.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + } + }, + "path": "v1/{+name}", + "request": { + "$ref": "Policy" + }, + "response": { + "$ref": "Policy" + }, "scopes": [ "https://www.googleapis.com/auth/androidmanagement" ] @@ -263,400 +704,61 @@ "webTokens": { "methods": { "create": { + "description": "Creates a web token to access an embeddable managed Google Play web UI for a given enterprise.", + "flatPath": "v1/enterprises/{enterprisesId}/webTokens", + "httpMethod": "POST", "id": "androidmanagement.enterprises.webTokens.create", - "response": { - "$ref": "WebToken" - }, "parameterOrder": [ "parent" ], - "description": "Creates a web token to access an embeddable managed Google Play web UI for a given enterprise.", - "request": { - "$ref": "WebToken" - }, - "flatPath": "v1/enterprises/{enterprisesId}/webTokens", - "httpMethod": "POST", "parameters": { "parent": { - "description": "The name of the enterprise in the form enterprises/{enterpriseId}", - "required": true, - "pattern": "^enterprises/[^/]+$", + "description": "The name of the enterprise in the form enterprises/{enterpriseId}.", "location": "path", + "pattern": "^enterprises/[^/]+$", + "required": true, "type": "string" } }, "path": "v1/{+parent}/webTokens", - "scopes": [ - "https://www.googleapis.com/auth/androidmanagement" - ] - } - } - }, - "devices": { - "resources": { - "operations": { - "methods": { - "get": { - "id": "androidmanagement.enterprises.devices.operations.get", - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "name" - ], - "description": "Gets the latest state of a long-running operation. Clients can use this method to poll the operation result at intervals as recommended by the API service.", - "flatPath": "v1/enterprises/{enterprisesId}/devices/{devicesId}/operations/{operationsId}", - "httpMethod": "GET", - "parameters": { - "name": { - "description": "The name of the operation resource.", - "required": true, - "pattern": "^enterprises/[^/]+/devices/[^/]+/operations/[^/]+$", - "location": "path", - "type": "string" - } - }, - "path": "v1/{+name}", - "scopes": [ - "https://www.googleapis.com/auth/androidmanagement" - ] - }, - "list": { - "id": "androidmanagement.enterprises.devices.operations.list", - "response": { - "$ref": "ListOperationsResponse" - }, - "parameterOrder": [ - "name" - ], - "description": "Lists operations that match the specified filter in the request. If the server doesn't support this method, it returns UNIMPLEMENTED.NOTE: the name binding allows API services to override the binding to use different resource name schemes, such as users/*/operations. To override the binding, API services can add a binding such as \"/v1/{name=users/*}/operations\" to their service configuration. For backwards compatibility, the default name includes the operations collection id, however overriding users must ensure the name binding is the parent resource, without the operations collection id.", - "flatPath": "v1/enterprises/{enterprisesId}/devices/{devicesId}/operations", - "httpMethod": "GET", - "parameters": { - "pageSize": { - "description": "The standard list page size.", - "location": "query", - "type": "integer", - "format": "int32" - }, - "filter": { - "description": "The standard list filter.", - "location": "query", - "type": "string" - }, - "name": { - "description": "The name of the operation's parent resource.", - "required": true, - "pattern": "^enterprises/[^/]+/devices/[^/]+/operations$", - "location": "path", - "type": "string" - }, - "pageToken": { - "description": "The standard list page token.", - "location": "query", - "type": "string" - } - }, - "path": "v1/{+name}", - "scopes": [ - "https://www.googleapis.com/auth/androidmanagement" - ] - }, - "delete": { - "id": "androidmanagement.enterprises.devices.operations.delete", - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "name" - ], - "description": "Deletes a long-running operation. This method indicates that the client is no longer interested in the operation result. It does not cancel the operation. If the server doesn't support this method, it returns google.rpc.Code.UNIMPLEMENTED.", - "flatPath": "v1/enterprises/{enterprisesId}/devices/{devicesId}/operations/{operationsId}", - "httpMethod": "DELETE", - "parameters": { - "name": { - "description": "The name of the operation resource to be deleted.", - "required": true, - "pattern": "^enterprises/[^/]+/devices/[^/]+/operations/[^/]+$", - "location": "path", - "type": "string" - } - }, - "path": "v1/{+name}", - "scopes": [ - "https://www.googleapis.com/auth/androidmanagement" - ] - }, - "cancel": { - "id": "androidmanagement.enterprises.devices.operations.cancel", - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "name" - ], - "description": "Starts asynchronous cancellation on a long-running operation. The server makes a best effort to cancel the operation, but success is not guaranteed. If the server doesn't support this method, it returns google.rpc.Code.UNIMPLEMENTED. Clients can use Operations.GetOperation or other methods to check whether the cancellation succeeded or whether the operation completed despite cancellation. On successful cancellation, the operation is not deleted; instead, it becomes an operation with an Operation.error value with a google.rpc.Status.code of 1, corresponding to Code.CANCELLED.", - "flatPath": "v1/enterprises/{enterprisesId}/devices/{devicesId}/operations/{operationsId}:cancel", - "httpMethod": "POST", - "parameters": { - "name": { - "description": "The name of the operation resource to be cancelled.", - "required": true, - "pattern": "^enterprises/[^/]+/devices/[^/]+/operations/[^/]+$", - "location": "path", - "type": "string" - } - }, - "path": "v1/{+name}:cancel", - "scopes": [ - "https://www.googleapis.com/auth/androidmanagement" - ] - } - } - } - }, - "methods": { - "get": { - "id": "androidmanagement.enterprises.devices.get", - "response": { - "$ref": "Device" - }, - "parameterOrder": [ - "name" - ], - "description": "Gets a device.", - "flatPath": "v1/enterprises/{enterprisesId}/devices/{devicesId}", - "httpMethod": "GET", - "parameters": { - "name": { - "description": "The name of the device in the form enterprises/{enterpriseId}/devices/{deviceId}", - "required": true, - "pattern": "^enterprises/[^/]+/devices/[^/]+$", - "location": "path", - "type": "string" - } - }, - "path": "v1/{+name}", - "scopes": [ - "https://www.googleapis.com/auth/androidmanagement" - ] - }, - "list": { - "id": "androidmanagement.enterprises.devices.list", - "response": { - "$ref": "ListDevicesResponse" - }, - "parameterOrder": [ - "parent" - ], - "description": "Lists devices for a given enterprise.", - "flatPath": "v1/enterprises/{enterprisesId}/devices", - "httpMethod": "GET", - "parameters": { - "pageSize": { - "description": "The requested page size. The actual page size may be fixed to a min or max value.", - "location": "query", - "type": "integer", - "format": "int32" - }, - "parent": { - "description": "The name of the enterprise in the form enterprises/{enterpriseId}", - "required": true, - "pattern": "^enterprises/[^/]+$", - "location": "path", - "type": "string" - }, - "pageToken": { - "description": "A token identifying a page of results the server should return.", - "location": "query", - "type": "string" - } - }, - "path": "v1/{+parent}/devices", - "scopes": [ - "https://www.googleapis.com/auth/androidmanagement" - ] - }, - "issueCommand": { - "id": "androidmanagement.enterprises.devices.issueCommand", - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "name" - ], - "description": "Issues a command to a device. The Operation resource returned contains a Command in its metadata field. Use the get operation method to get the status of the command.", "request": { - "$ref": "Command" + "$ref": "WebToken" }, - "flatPath": "v1/enterprises/{enterprisesId}/devices/{devicesId}:issueCommand", - "httpMethod": "POST", - "parameters": { - "name": { - "description": "The name of the device in the form enterprises/{enterpriseId}/devices/{deviceId}", - "required": true, - "pattern": "^enterprises/[^/]+/devices/[^/]+$", - "location": "path", - "type": "string" - } - }, - "path": "v1/{+name}:issueCommand", - "scopes": [ - "https://www.googleapis.com/auth/androidmanagement" - ] - }, - "patch": { - "id": "androidmanagement.enterprises.devices.patch", "response": { - "$ref": "Device" + "$ref": "WebToken" }, - "parameterOrder": [ - "name" - ], - "description": "Updates a device.", - "request": { - "$ref": "Device" - }, - "flatPath": "v1/enterprises/{enterprisesId}/devices/{devicesId}", - "httpMethod": "PATCH", - "parameters": { - "updateMask": { - "description": "The field mask indicating the fields to update. If not set, all modifiable fields will be modified.", - "location": "query", - "type": "string", - "format": "google-fieldmask" - }, - "name": { - "description": "The name of the device in the form enterprises/{enterpriseId}/devices/{deviceId}", - "required": true, - "pattern": "^enterprises/[^/]+/devices/[^/]+$", - "location": "path", - "type": "string" - } - }, - "path": "v1/{+name}", - "scopes": [ - "https://www.googleapis.com/auth/androidmanagement" - ] - }, - "delete": { - "id": "androidmanagement.enterprises.devices.delete", - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "name" - ], - "description": "Deletes a device, which causes the device to be wiped.", - "flatPath": "v1/enterprises/{enterprisesId}/devices/{devicesId}", - "httpMethod": "DELETE", - "parameters": { - "name": { - "description": "The name of the device in the form enterprises/{enterpriseId}/devices/{deviceId}", - "required": true, - "pattern": "^enterprises/[^/]+/devices/[^/]+$", - "location": "path", - "type": "string" - } - }, - "path": "v1/{+name}", "scopes": [ "https://www.googleapis.com/auth/androidmanagement" ] } } } - }, + } + }, + "signupUrls": { "methods": { "create": { - "id": "androidmanagement.enterprises.create", - "response": { - "$ref": "Enterprise" - }, - "parameterOrder": [], - "description": "Creates an enterprise by completing the enterprise signup flow.", - "request": { - "$ref": "Enterprise" - }, - "flatPath": "v1/enterprises", + "description": "Creates an enterprise signup URL.", + "flatPath": "v1/signupUrls", "httpMethod": "POST", + "id": "androidmanagement.signupUrls.create", + "parameterOrder": [], "parameters": { - "signupUrlName": { - "description": "The name of the SignupUrl used to sign up for the enterprise.", - "location": "query", - "type": "string" - }, - "enterpriseToken": { - "description": "The enterprise token appended to the callback URL.", + "callbackUrl": { + "description": "The callback URL that the admin will be redirected to after successfully creating an enterprise. Before redirecting there the system will add a query parameter to this URL named enterpriseToken which will contain an opaque token to be used for the create enterprise request. The URL will be parsed then reformatted in order to add the enterpriseToken parameter, so there may be some minor formatting changes.", "location": "query", "type": "string" }, "projectId": { - "description": "The id of the Google Cloud Platform project which will own the enterprise.", + "description": "The ID of the Google Cloud Platform project which will own the enterprise.", "location": "query", "type": "string" } }, - "path": "v1/enterprises", - "scopes": [ - "https://www.googleapis.com/auth/androidmanagement" - ] - }, - "get": { - "id": "androidmanagement.enterprises.get", + "path": "v1/signupUrls", "response": { - "$ref": "Enterprise" + "$ref": "SignupUrl" }, - "parameterOrder": [ - "name" - ], - "description": "Gets an enterprise.", - "flatPath": "v1/enterprises/{enterprisesId}", - "httpMethod": "GET", - "parameters": { - "name": { - "description": "The name of the enterprise in the form enterprises/{enterpriseId}", - "required": true, - "pattern": "^enterprises/[^/]+$", - "location": "path", - "type": "string" - } - }, - "path": "v1/{+name}", - "scopes": [ - "https://www.googleapis.com/auth/androidmanagement" - ] - }, - "patch": { - "id": "androidmanagement.enterprises.patch", - "response": { - "$ref": "Enterprise" - }, - "parameterOrder": [ - "name" - ], - "description": "Updates an enterprise.", - "request": { - "$ref": "Enterprise" - }, - "flatPath": "v1/enterprises/{enterprisesId}", - "httpMethod": "PATCH", - "parameters": { - "updateMask": { - "description": "The field mask indicating the fields to update. If not set, all modifiable fields will be modified.", - "location": "query", - "type": "string", - "format": "google-fieldmask" - }, - "name": { - "description": "The name of the enterprise in the form enterprises/{enterpriseId}", - "required": true, - "pattern": "^enterprises/[^/]+$", - "location": "path", - "type": "string" - } - }, - "path": "v1/{+name}", "scopes": [ "https://www.googleapis.com/auth/androidmanagement" ] @@ -664,46 +766,293 @@ } } }, + "revision": "20180320", + "rootUrl": "https://androidmanagement.googleapis.com/", "schemas": { - "Device": { - "description": "A device owned by an enterprise. Unless otherwise noted, all fields are read-only and cannot be modified by an update device request.", - "type": "object", + "AlwaysOnVpnPackage": { + "description": "Configuration for an always-on VPN connection.", + "id": "AlwaysOnVpnPackage", "properties": { - "userName": { - "description": "The resource name of the user that owns this device in the form enterprises/{enterpriseId}/users/{userId}.", + "lockdownEnabled": { + "description": "Disallows networking when the VPN is not connected.", + "type": "boolean" + }, + "packageName": { + "description": "The package name of the VPN app.", "type": "string" - }, - "disabledReason": { - "description": "If the device state is DISABLED, an optional message that is displayed on the device indicating the reason the device is disabled. This field may be modified by an update request.", - "$ref": "UserFacingMessage" - }, - "policyName": { - "description": "The name of the policy that is intended to be applied to the device. If empty, the policy_name for the user that owns this device is applied. This field may be modified by an update request. The name of the policy is in the form enterprises/{enterpriseId}/policies/{policyId}. It is also permissible to only specify the policyId when updating this field as long as the policyId contains no slashes since the rest of the policy name can be inferred from context.", - "type": "string" - }, - "lastPolicyComplianceReportTime": { - "description": "The last time the device sent a policy compliance report.", - "type": "string", - "format": "google-datetime" - }, - "nonComplianceDetails": { - "description": "Details about policy settings for which the device is not in compliance.", - "type": "array", + } + }, + "type": "object" + }, + "ApiLevelCondition": { + "description": "A compliance rule condition which is satisfied if the Android Framework API level on the device doesn't meet a minimum requirement. There can only be one rule with this type of condition per policy.", + "id": "ApiLevelCondition", + "properties": { + "minApiLevel": { + "description": "The minimum desired Android Framework API level. If the device doesn't meet the minimum requirement, this condition is satisfied. Must be greater than zero.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "Application": { + "description": "Information about an app.", + "id": "Application", + "properties": { + "managedProperties": { + "description": "The set of managed properties available to be pre-configured for the app.", "items": { - "$ref": "NonComplianceDetail" - } + "$ref": "ManagedProperty" + }, + "type": "array" }, - "lastPolicySyncTime": { - "description": "The last time the device fetched its policy.", - "type": "string", - "format": "google-datetime" + "name": { + "description": "The name of the app in the form enterprises/{enterpriseId}/applications/{package_name}.", + "type": "string" }, - "networkInfo": { - "description": "Device network information. This information is only available when networkInfoEnabled is true in the device's policy.", - "$ref": "NetworkInfo" + "permissions": { + "description": "The permissions required by the app.", + "items": { + "$ref": "ApplicationPermission" + }, + "type": "array" + }, + "title": { + "description": "The title of the app. Localized.", + "type": "string" + } + }, + "type": "object" + }, + "ApplicationPermission": { + "description": "A permission required by the app.", + "id": "ApplicationPermission", + "properties": { + "description": { + "description": "A longer description of the permission, providing more detail on what it affects. Localized.", + "type": "string" + }, + "name": { + "description": "The name of the permission. Localized.", + "type": "string" + }, + "permissionId": { + "description": "An opaque string uniquely identifying the permission. Not localized.", + "type": "string" + } + }, + "type": "object" + }, + "ApplicationPolicy": { + "description": "Policy for an individual app.", + "id": "ApplicationPolicy", + "properties": { + "defaultPermissionPolicy": { + "description": "The default policy for all permissions requested by the app. If specified, this overrides the policy-level default_permission_policy which applies to all apps.", + "enum": [ + "PERMISSION_POLICY_UNSPECIFIED", + "PROMPT", + "GRANT", + "DENY" + ], + "enumDescriptions": [ + "Policy not specified. If no policy is specified for a permission at any level, then the PROMPT behavior is used by default.", + "Prompt the user to grant a permission.", + "Automatically grant a permission.", + "Automatically deny a permission." + ], + "type": "string" + }, + "delegatedScopes": { + "description": "The scopes delegated to the app from Android Device Policy.", + "enumDescriptions": [ + "No delegation scope specified.", + "Grants access to certificate installation and management.", + "Grants access to managed configurations management.", + "Grants access to blocking uninstallation.", + "Grants access to permission policy and permission grant state.", + "Grants access to package access state.", + "Grants access for enabling system apps." + ], + "items": { + "enum": [ + "DELEGATED_SCOPE_UNSPECIFIED", + "CERT_INSTALL", + "MANAGED_CONFIGURATIONS", + "BLOCK_UNINSTALL", + "PERMISSION_GRANT", + "PACKAGE_ACCESS", + "ENABLE_SYSTEM_APP" + ], + "type": "string" + }, + "type": "array" + }, + "installType": { + "description": "The type of installation to perform.", + "enum": [ + "INSTALL_TYPE_UNSPECIFIED", + "PREINSTALLED", + "FORCE_INSTALLED" + ], + "enumDescriptions": [ + "No automatic installation is performed. Any other app policies will be applied if the user installs the app.", + "The app is automatically installed and can be removed by the user.", + "The app is automatically installed and can't be removed by the user." + ], + "type": "string" + }, + "lockTaskAllowed": { + "description": "Whether the app is allowed to lock itself in full-screen mode.", + "type": "boolean" + }, + "managedConfiguration": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "description": "Managed configuration applied to the app. The format for the configuration is dictated by the ManagedProperty values supported by the app. Each field name in the managed configuration must match the key field of the ManagedProperty. The field value must be compatible with the type of the ManagedProperty: \u003ctable\u003e \u003ctr\u003e\u003ctd\u003e\u003ci\u003etype\u003c/i\u003e\u003c/td\u003e\u003ctd\u003e\u003ci\u003eJSON value\u003c/i\u003e\u003c/td\u003e\u003c/tr\u003e \u003ctr\u003e\u003ctd\u003eBOOL\u003c/td\u003e\u003ctd\u003etrue or false\u003c/td\u003e\u003c/tr\u003e \u003ctr\u003e\u003ctd\u003eSTRING\u003c/td\u003e\u003ctd\u003estring\u003c/td\u003e\u003c/tr\u003e \u003ctr\u003e\u003ctd\u003eINTEGER\u003c/td\u003e\u003ctd\u003enumber\u003c/td\u003e\u003c/tr\u003e \u003ctr\u003e\u003ctd\u003eCHOICE\u003c/td\u003e\u003ctd\u003estring\u003c/td\u003e\u003c/tr\u003e \u003ctr\u003e\u003ctd\u003eMULTISELECT\u003c/td\u003e\u003ctd\u003earray of strings\u003c/td\u003e\u003c/tr\u003e \u003ctr\u003e\u003ctd\u003eHIDDEN\u003c/td\u003e\u003ctd\u003estring\u003c/td\u003e\u003c/tr\u003e \u003ctr\u003e\u003ctd\u003eBUNDLE_ARRAY\u003c/td\u003e\u003ctd\u003earray of objects\u003c/td\u003e\u003c/tr\u003e \u003c/table\u003e", + "type": "object" + }, + "minimumVersionCode": { + "description": "The minimum version of the app that runs on the device. If set, the device attempts to update the app to at least this version code. If the app is not up-to-date, the device will contain a NonComplianceDetail with non_compliance_reason set to APP_NOT_UPDATED. The app must already be published to Google Play with a version code greater than or equal to this value. At most 20 apps may specify a minimum version code per policy.", + "format": "int32", + "type": "integer" + }, + "packageName": { + "description": "The package name of the app. For example, com.google.android.youtube for the YouTube app.", + "type": "string" + }, + "permissionGrants": { + "description": "Explicit permission grants or denials for the app. These values override the default_permission_policy.", + "items": { + "$ref": "PermissionGrant" + }, + "type": "array" + } + }, + "type": "object" + }, + "Command": { + "description": "A command.", + "id": "Command", + "properties": { + "createTime": { + "description": "The timestamp at which the command was created. The timestamp is automatically generated by the server.", + "format": "google-datetime", + "type": "string" + }, + "duration": { + "description": "The duration for which the command is valid. The command will expire if not executed by the device during this time. The default duration if unspecified is ten minutes. There is no maximum duration.", + "format": "google-duration", + "type": "string" + }, + "errorCode": { + "description": "If the command failed, an error code explaining the failure. This is not set when the command is cancelled by the caller.", + "enum": [ + "COMMAND_ERROR_CODE_UNSPECIFIED", + "UNKNOWN", + "API_LEVEL", + "MANAGEMENT_MODE", + "INVALID_VALUE", + "UNSUPPORTED" + ], + "enumDescriptions": [ + "There was no error.", + "An unknown error occurred.", + "The API level of the device does not support this command.", + "The management mode (profile owner, device owner, etc.) does not support the command.", + "The command has an invalid parameter value.", + "The device doesn't support the command. Updating Android Device Policy to the latest version may resolve the issue." + ], + "type": "string" + }, + "newPassword": { + "description": "For commands of type RESET_PASSWORD, optionally specifies the new password.", + "type": "string" + }, + "resetPasswordFlags": { + "description": "For commands of type RESET_PASSWORD, optionally specifies flags.", + "enumDescriptions": [ + "This value is ignored.", + "Don't allow other admins to change the password again until the user has entered it.", + "Don't ask for user credentials on device boot.", + "Lock the device after password reset." + ], + "items": { + "enum": [ + "RESET_PASSWORD_FLAG_UNSPECIFIED", + "REQUIRE_ENTRY", + "DO_NOT_ASK_CREDENTIALS_ON_BOOT", + "LOCK_NOW" + ], + "type": "string" + }, + "type": "array" + }, + "type": { + "description": "The type of the command.", + "enum": [ + "COMMAND_TYPE_UNSPECIFIED", + "LOCK", + "RESET_PASSWORD", + "REBOOT" + ], + "enumDescriptions": [ + "This value is disallowed.", + "Lock the device, as if the lock screen timeout had expired.", + "Reset the user's password.", + "Reboot the device. Only supported on API level 24+." + ], + "type": "string" + }, + "userName": { + "description": "The resource name of the user that owns the device in the form enterprises/{enterpriseId}/users/{userId}. This is automatically generated by the server based on the device the command is sent to.", + "type": "string" + } + }, + "type": "object" + }, + "ComplianceRule": { + "description": "A rule declaring which mitigating actions to take when a device is not compliant with its policy. For every rule, there is always an implicit mitigating action to set policy_compliant to false for the Device resource, and display a message on the device indicating that the device is not compliant with its policy. Other mitigating actions may optionally be taken as well, depending on the field values in the rule.", + "id": "ComplianceRule", + "properties": { + "apiLevelCondition": { + "$ref": "ApiLevelCondition", + "description": "A condition which is satisfied if the Android Framework API level on the device doesn't meet a minimum requirement." + }, + "disableApps": { + "description": "If set to true, the rule includes a mitigating action to disable apps so that the device is effectively disabled, but app data is preserved. If the device is running an app in locked task mode, the app will be closed and a UI showing the reason for non-compliance will be displayed.", + "type": "boolean" + }, + "nonComplianceDetailCondition": { + "$ref": "NonComplianceDetailCondition", + "description": "A condition which is satisfied if there exists any matching NonComplianceDetail for the device." + } + }, + "type": "object" + }, + "Device": { + "description": "A device owned by an enterprise. Unless otherwise noted, all fields are read-only and can't be modified by enterprises.devices.patch.", + "id": "Device", + "properties": { + "apiLevel": { + "description": "The API level of the Android platform version running on the device.", + "format": "int32", + "type": "integer" + }, + "appliedPolicyName": { + "description": "The name of the policy currently applied to the device.", + "type": "string" + }, + "appliedPolicyVersion": { + "description": "The version of the policy currently applied to the device.", + "format": "int64", + "type": "string" }, "appliedState": { - "description": "The state that is currently applied by the device.", + "description": "The state currently applied to the device.", "enum": [ "DEVICE_STATE_UNSPECIFIED", "ACTIVE", @@ -715,126 +1064,983 @@ "This value is disallowed.", "The device is active.", "The device is disabled.", - "The device was deleted. This state will never be returned by an API call, but will be used in the final policy compliance report published to Cloud Pub/Sub when the device acknowledges the deletion.", - "The device is being provisioned. Newly enrolled devices will be in this state until they have applied policy." + "The device was deleted. This state will never be returned by an API call, but is used in the final policy compliance report published to Cloud Pub/Sub when the device acknowledges the deletion.", + "The device is being provisioned. Newly enrolled devices are in this state until they have a policy applied." ], "type": "string" }, + "deviceSettings": { + "$ref": "DeviceSettings", + "description": "Device settings information. This information is only available if deviceSettingsEnabled is true in the device's policy." + }, + "disabledReason": { + "$ref": "UserFacingMessage", + "description": "If the device state is DISABLED, an optional message that is displayed on the device indicating the reason the device is disabled. This field can be modified by a patch request." + }, + "displays": { + "description": "Detailed information about displays on the device. This information is only available if displayInfoEnabled is true in the device's policy.", + "items": { + "$ref": "Display" + }, + "type": "array" + }, + "enrollmentTime": { + "description": "The time of device enrollment.", + "format": "google-datetime", + "type": "string" + }, "enrollmentTokenData": { - "description": "If this device was enrolled with an enrollment token with additional data provided, this field contains that data.", + "description": "If the device was enrolled with an enrollment token with additional data provided, this field contains that data.", "type": "string" }, "enrollmentTokenName": { - "description": "If this device was enrolled with an enrollment token, this field contains the name of the token.", + "description": "If the device was enrolled with an enrollment token, this field contains the name of the token.", "type": "string" }, - "memoryInfo": { - "description": "Memory information. This information is only available when memoryInfoEnabled is true in the device's policy.", - "$ref": "MemoryInfo" + "hardwareInfo": { + "$ref": "HardwareInfo", + "description": "Detailed information about the device hardware." }, - "state": { - "description": "The state that is intended to be applied to the device. This field may be modified by an update request. Note that UpdateDevice only handles toggling between ACTIVE and DISABLED states. Use the delete device method to cause the device to enter the DELETED state.", - "enum": [ - "DEVICE_STATE_UNSPECIFIED", - "ACTIVE", - "DISABLED", - "DELETED", - "PROVISIONING" - ], - "enumDescriptions": [ - "This value is disallowed.", - "The device is active.", - "The device is disabled.", - "The device was deleted. This state will never be returned by an API call, but will be used in the final policy compliance report published to Cloud Pub/Sub when the device acknowledges the deletion.", - "The device is being provisioned. Newly enrolled devices will be in this state until they have applied policy." - ], + "hardwareStatusSamples": { + "description": "Hardware status samples in chronological order. This information is only available if hardwareStatusEnabled is true in the device's policy.", + "items": { + "$ref": "HardwareStatus" + }, + "type": "array" + }, + "lastPolicyComplianceReportTime": { + "description": "The last time the device sent a policy compliance report.", + "format": "google-datetime", "type": "string" }, - "softwareInfo": { - "description": "Detailed information about the device software. This information is only available when softwareInfoEnabled is true in the device's policy.", - "$ref": "SoftwareInfo" + "lastPolicySyncTime": { + "description": "The last time the device fetched its policy.", + "format": "google-datetime", + "type": "string" + }, + "lastStatusReportTime": { + "description": "The last time the device sent a status report.", + "format": "google-datetime", + "type": "string" }, "memoryEvents": { - "description": "Events related to memory and storage measurements in chronological order. This information is only available when memoryInfoEnabled is true in the device's policy.", - "type": "array", + "description": "Events related to memory and storage measurements in chronological order. This information is only available if memoryInfoEnabled is true in the device's policy.", "items": { "$ref": "MemoryEvent" - } + }, + "type": "array" }, - "previousDeviceNames": { - "description": "The previous device names used for the same physical device when it has been enrolled multiple times. The serial number is used as the unique identifier to determine if the same physical device has enrolled previously. The names are in chronological order.", - "type": "array", + "memoryInfo": { + "$ref": "MemoryInfo", + "description": "Memory information. This information is only available if memoryInfoEnabled is true in the device's policy." + }, + "name": { + "description": "The name of the device in the form enterprises/{enterpriseId}/devices/{deviceId}.", + "type": "string" + }, + "networkInfo": { + "$ref": "NetworkInfo", + "description": "Device network information. This information is only available if networkInfoEnabled is true in the device's policy." + }, + "nonComplianceDetails": { + "description": "Details about policy settings that the device is not compliant with.", "items": { - "type": "string" - } + "$ref": "NonComplianceDetail" + }, + "type": "array" }, "policyCompliant": { "description": "Whether the device is compliant with its policy.", "type": "boolean" }, - "lastStatusReportTime": { - "description": "The last time the device sent a status report.", - "type": "string", - "format": "google-datetime" - }, - "deviceSettings": { - "description": "Device settings information. This information is only available when deviceSettingsEnabled is true in the device's policy.", - "$ref": "DeviceSettings" - }, - "name": { - "description": "The name of the device in the form enterprises/{enterpriseId}/devices/{deviceId}", + "policyName": { + "description": "The name of the policy applied to the device, in the form enterprises/{enterpriseId}/policies/{policyId}. If not specified, the policy_name for the device's user is applied. This field can be modified by a patch request. You can specify only the policyId when calling enterprises.devices.patch, as long as the policyId doesn’t contain any slashes. The rest of the policy name is inferred.", "type": "string" }, - "hardwareStatusSamples": { - "description": "Hardware status samples in chronological order. This information is only available when hardwareStatusEnabled is true in the device's policy.", - "type": "array", - "items": { - "$ref": "HardwareStatus" - } - }, - "enrollmentTime": { - "description": "The time of device enrollment.", - "type": "string", - "format": "google-datetime" - }, - "appliedPolicyVersion": { - "description": "The version of the policy that is currently applied by the device.", - "type": "string", - "format": "int64" - }, - "apiLevel": { - "description": "The API level of the Android platform version running on the device.", - "type": "integer", - "format": "int32" - }, - "hardwareInfo": { - "description": "Detailed information about the device hardware.", - "$ref": "HardwareInfo" - }, - "appliedPolicyName": { - "description": "The name of the policy that is currently applied by the device.", - "type": "string" - }, - "displays": { - "description": "Displays on the device. This information is only available when displayInfoEnabled is true in the device's policy.", - "type": "array", - "items": { - "$ref": "Display" - } - }, "powerManagementEvents": { - "description": "Power management events on the device in chronological order. This information is only available when powerManagementEventsEnabled is true in the device's policy.", - "type": "array", + "description": "Power management events on the device in chronological order. This information is only available if powerManagementEventsEnabled is true in the device's policy.", "items": { "$ref": "PowerManagementEvent" - } + }, + "type": "array" + }, + "previousDeviceNames": { + "description": "If the same physical device has been enrolled multiple times, this field contains its previous device names. The serial number is used as the unique identifier to determine if the same physical device has enrolled previously. The names are in chronological order.", + "items": { + "type": "string" + }, + "type": "array" + }, + "softwareInfo": { + "$ref": "SoftwareInfo", + "description": "Detailed information about the device software. This information is only available if softwareInfoEnabled is true in the device's policy." + }, + "state": { + "description": "The state to be applied to the device. This field can be modified by a patch request. Note that when calling enterprises.devices.patch, ACTIVE and DISABLED are the only allowable values. To enter the device into a DELETED state, call enterprises.devices.delete.", + "enum": [ + "DEVICE_STATE_UNSPECIFIED", + "ACTIVE", + "DISABLED", + "DELETED", + "PROVISIONING" + ], + "enumDescriptions": [ + "This value is disallowed.", + "The device is active.", + "The device is disabled.", + "The device was deleted. This state will never be returned by an API call, but is used in the final policy compliance report published to Cloud Pub/Sub when the device acknowledges the deletion.", + "The device is being provisioned. Newly enrolled devices are in this state until they have a policy applied." + ], + "type": "string" + }, + "userName": { + "description": "The resource name of the user that owns this device in the form enterprises/{enterpriseId}/users/{userId}.", + "type": "string" } }, - "id": "Device" + "type": "object" + }, + "DeviceSettings": { + "description": "Information about security related device settings on device.", + "id": "DeviceSettings", + "properties": { + "adbEnabled": { + "description": "Whether ADB (https://developer.android.com/studio/command-line/adb.html) is enabled on the device.", + "type": "boolean" + }, + "developmentSettingsEnabled": { + "description": "Whether developer mode is enabled on the device.", + "type": "boolean" + }, + "encryptionStatus": { + "description": "Encryption status from DevicePolicyManager.", + "enum": [ + "ENCRYPTION_STATUS_UNSPECIFIED", + "UNSUPPORTED", + "INACTIVE", + "ACTIVATING", + "ACTIVE", + "ACTIVE_DEFAULT_KEY", + "ACTIVE_PER_USER" + ], + "enumDescriptions": [ + "Unspecified. No device should have this type.", + "Encryption is not supported by the device.", + "Encryption is supported by the device, but is not currently active.", + "Encryption is not currently active, but is currently being activated.", + "Encryption is active.", + "Encryption is active, but an encryption key is not set by the user.", + "Encryption is active, and the encryption key is tied to the user profile." + ], + "type": "string" + }, + "isDeviceSecure": { + "description": "Whether the device is secured with PIN/password.", + "type": "boolean" + }, + "isEncrypted": { + "description": "Whether the storage encryption is enabled.", + "type": "boolean" + }, + "unknownSourcesEnabled": { + "description": "Whether installing apps from unknown sources is enabled.", + "type": "boolean" + }, + "verifyAppsEnabled": { + "description": "Whether Verify Apps (Google Play Protect (https://support.google.com/googleplay/answer/2812853)) is enabled on the device.", + "type": "boolean" + } + }, + "type": "object" + }, + "Display": { + "description": "Device display information.", + "id": "Display", + "properties": { + "density": { + "description": "Display density expressed as dots-per-inch.", + "format": "int32", + "type": "integer" + }, + "displayId": { + "description": "Unique display id.", + "format": "int32", + "type": "integer" + }, + "height": { + "description": "Display height in pixels.", + "format": "int32", + "type": "integer" + }, + "name": { + "description": "Name of the display.", + "type": "string" + }, + "refreshRate": { + "description": "Refresh rate of the display in frames per second.", + "format": "int32", + "type": "integer" + }, + "state": { + "description": "State of the display.", + "enum": [ + "DISPLAY_STATE_UNSPECIFIED", + "OFF", + "ON", + "DOZE", + "SUSPENDED" + ], + "enumDescriptions": [ + "This value is disallowed.", + "Display is off.", + "Display is on.", + "Display is dozing in a low power state", + "Display is dozing in a suspended low power state." + ], + "type": "string" + }, + "width": { + "description": "Display width in pixels.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "Empty": { + "description": "A generic empty message that you can re-use to avoid defining duplicated empty messages in your APIs. A typical example is to use it as the request or the response type of an API method. For instance:\nservice Foo {\n rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty);\n}\nThe JSON representation for Empty is empty JSON object {}.", + "id": "Empty", + "properties": {}, + "type": "object" + }, + "EnrollmentToken": { + "description": "An enrollment token.", + "id": "EnrollmentToken", + "properties": { + "additionalData": { + "description": "Optional, arbitrary data associated with the enrollment token. This could contain, for example, the ID of an org unit the device is assigned to after enrollment. After a device enrolls with the token, this data will be exposed in the enrollment_token_data field of the Device resource. The data must be 1024 characters or less; otherwise, the creation request will fail.", + "type": "string" + }, + "duration": { + "description": "The length of time the enrollment token is valid, ranging from 1 minute to 30 days. If not specified, the default duration is 1 hour.", + "format": "google-duration", + "type": "string" + }, + "expirationTimestamp": { + "description": "The expiration time of the token. This is a read-only field generated by the server.", + "format": "google-datetime", + "type": "string" + }, + "name": { + "description": "The name of the enrollment token, which is generated by the server during creation, in the form enterprises/{enterpriseId}/enrollmentTokens/{enrollmentTokenId}.", + "type": "string" + }, + "policyName": { + "description": "The name of the policy initially applied to the enrolled device, in the form enterprises/{enterpriseId}/policies/{policyId}. If not specified, the policy_name for the device’s user is applied. If user_name is also not specified, enterprises/{enterpriseId}/policies/default is applied by default. When updating this field, you can specify only the policyId as long as the policyId doesn’t contain any slashes. The rest of the policy name will be inferred.", + "type": "string" + }, + "qrCode": { + "description": "A JSON string whose UTF-8 representation can be used to generate a QR code to enroll a device with this enrollment token. To enroll a device using NFC, the NFC record must contain a serialized java.util.Properties representation of the properties in the JSON.", + "type": "string" + }, + "value": { + "description": "The token value that's passed to the device and authorizes the device to enroll. This is a read-only field generated by the server.", + "type": "string" + } + }, + "type": "object" + }, + "Enterprise": { + "description": "The configuration applied to an enterprise.", + "id": "Enterprise", + "properties": { + "appAutoApprovalEnabled": { + "description": "Whether permissions for apps installed via policy are automatically approved. If enabled, you must display an app's permissions to the enterprise admin before setting the app to be installed in a policy.", + "type": "boolean" + }, + "enabledNotificationTypes": { + "description": "The types of Google Pub/Sub notifications enabled for the enterprise.", + "enumDescriptions": [ + "This value is ignored.", + "A notification sent when a device enrolls.", + "A notification sent when a device issues a policy compliance report.", + "A notification sent when a device issues a status report.", + "A notification sent when a device command has completed." + ], + "items": { + "enum": [ + "NOTIFICATION_TYPE_UNSPECIFIED", + "ENROLLMENT", + "COMPLIANCE_REPORT", + "STATUS_REPORT", + "COMMAND" + ], + "type": "string" + }, + "type": "array" + }, + "enterpriseDisplayName": { + "description": "The name of the enterprise displayed to users.", + "type": "string" + }, + "logo": { + "$ref": "ExternalData", + "description": "An image displayed as a logo during device provisioning. Supported types are: image/bmp, image/gif, image/x-ico, image/jpeg, image/png, image/webp, image/vnd.wap.wbmp, image/x-adobe-dng." + }, + "name": { + "description": "The name of the enterprise which is generated by the server during creation, in the form enterprises/{enterpriseId}.", + "type": "string" + }, + "primaryColor": { + "description": "A color in RGB format that indicates the predominant color to display in the device management app UI. The color components are stored as follows: (red \u003c\u003c 16) | (green \u003c\u003c 8) | blue, where the value of each component is between 0 and 255, inclusive.", + "format": "int32", + "type": "integer" + }, + "pubsubTopic": { + "description": "The topic that Cloud Pub/Sub notifications are published to, in the form projects/{project}/topics/{topic}. This field is only required if Pub/Sub notifications are enabled.", + "type": "string" + } + }, + "type": "object" + }, + "ExternalData": { + "description": "Data hosted at an external location. The data is to be downloaded by Android Device Policy and verified against the hash.", + "id": "ExternalData", + "properties": { + "sha256Hash": { + "description": "The base-64 encoded SHA-256 hash of the content hosted at url. If the content doesn't match this hash, Android Device Policy won't use the data.", + "type": "string" + }, + "url": { + "description": "The absolute URL to the data, which must use either the http or https scheme. Android Device Policy doesn't provide any credentials in the GET request, so the URL must be publicly accessible. Including a long, random component in the URL may be used to prevent attackers from discovering the URL.", + "type": "string" + } + }, + "type": "object" + }, + "HardwareInfo": { + "description": "Information about device hardware. The fields related to temperature thresholds are only available if hardwareStatusEnabled is true in the device's policy.", + "id": "HardwareInfo", + "properties": { + "batteryShutdownTemperatures": { + "description": "Battery shutdown temperature thresholds in Celsius for each battery on the device.", + "items": { + "format": "float", + "type": "number" + }, + "type": "array" + }, + "batteryThrottlingTemperatures": { + "description": "Battery throttling temperature thresholds in Celsius for each battery on the device.", + "items": { + "format": "float", + "type": "number" + }, + "type": "array" + }, + "brand": { + "description": "Brand of the device. For example, Google.", + "type": "string" + }, + "cpuShutdownTemperatures": { + "description": "CPU shutdown temperature thresholds in Celsius for each CPU on the device.", + "items": { + "format": "float", + "type": "number" + }, + "type": "array" + }, + "cpuThrottlingTemperatures": { + "description": "CPU throttling temperature thresholds in Celsius for each CPU on the device.", + "items": { + "format": "float", + "type": "number" + }, + "type": "array" + }, + "deviceBasebandVersion": { + "description": "Baseband version. For example, MDM9625_104662.22.05.34p.", + "type": "string" + }, + "gpuShutdownTemperatures": { + "description": "GPU shutdown temperature thresholds in Celsius for each GPU on the device.", + "items": { + "format": "float", + "type": "number" + }, + "type": "array" + }, + "gpuThrottlingTemperatures": { + "description": "GPU throttling temperature thresholds in Celsius for each GPU on the device.", + "items": { + "format": "float", + "type": "number" + }, + "type": "array" + }, + "hardware": { + "description": "Name of the hardware. For example, Angler.", + "type": "string" + }, + "manufacturer": { + "description": "Manufacturer. For example, Motorola.", + "type": "string" + }, + "model": { + "description": "The model of the device. For example, Asus Nexus 7.", + "type": "string" + }, + "serialNumber": { + "description": "The device serial number.", + "type": "string" + }, + "skinShutdownTemperatures": { + "description": "Device skin shutdown temperature thresholds in Celsius.", + "items": { + "format": "float", + "type": "number" + }, + "type": "array" + }, + "skinThrottlingTemperatures": { + "description": "Device skin throttling temperature thresholds in Celsius.", + "items": { + "format": "float", + "type": "number" + }, + "type": "array" + } + }, + "type": "object" + }, + "HardwareStatus": { + "description": "Hardware status. Temperatures may be compared to the temperature thresholds available in hardwareInfo to determine hardware health.", + "id": "HardwareStatus", + "properties": { + "batteryTemperatures": { + "description": "Current battery temperatures in Celsius for each battery on the device.", + "items": { + "format": "float", + "type": "number" + }, + "type": "array" + }, + "cpuTemperatures": { + "description": "Current CPU temperatures in Celsius for each CPU on the device.", + "items": { + "format": "float", + "type": "number" + }, + "type": "array" + }, + "cpuUsages": { + "description": "CPU usages in percentage for each core available on the device. Usage is 0 for each unplugged core. Empty array implies that CPU usage is not supported in the system.", + "items": { + "format": "float", + "type": "number" + }, + "type": "array" + }, + "createTime": { + "description": "The time the measurements were taken.", + "format": "google-datetime", + "type": "string" + }, + "fanSpeeds": { + "description": "Fan speeds in RPM for each fan on the device. Empty array means that there are no fans or fan speed is not supported on the system.", + "items": { + "format": "float", + "type": "number" + }, + "type": "array" + }, + "gpuTemperatures": { + "description": "Current GPU temperatures in Celsius for each GPU on the device.", + "items": { + "format": "float", + "type": "number" + }, + "type": "array" + }, + "skinTemperatures": { + "description": "Current device skin temperatures in Celsius.", + "items": { + "format": "float", + "type": "number" + }, + "type": "array" + } + }, + "type": "object" + }, + "ListDevicesResponse": { + "description": "Response to a request to list devices for a given enterprise.", + "id": "ListDevicesResponse", + "properties": { + "devices": { + "description": "The list of devices.", + "items": { + "$ref": "Device" + }, + "type": "array" + }, + "nextPageToken": { + "description": "If there are more results, a token to retrieve next page of results.", + "type": "string" + } + }, + "type": "object" + }, + "ListOperationsResponse": { + "description": "The response message for Operations.ListOperations.", + "id": "ListOperationsResponse", + "properties": { + "nextPageToken": { + "description": "The standard List next-page token.", + "type": "string" + }, + "operations": { + "description": "A list of operations that matches the specified filter in the request.", + "items": { + "$ref": "Operation" + }, + "type": "array" + } + }, + "type": "object" + }, + "ListPoliciesResponse": { + "description": "Response to a request to list policies for a given enterprise.", + "id": "ListPoliciesResponse", + "properties": { + "nextPageToken": { + "description": "If there are more results, a token to retrieve next page of results.", + "type": "string" + }, + "policies": { + "description": "The list of policies.", + "items": { + "$ref": "Policy" + }, + "type": "array" + } + }, + "type": "object" + }, + "ManagedProperty": { + "description": "Managed property.", + "id": "ManagedProperty", + "properties": { + "defaultValue": { + "description": "The default value of the property. BUNDLE_ARRAY properties don't have a default value.", + "type": "any" + }, + "description": { + "description": "A longer description of the property, providing more detail of what it affects. Localized.", + "type": "string" + }, + "entries": { + "description": "For CHOICE or MULTISELECT properties, the list of possible entries.", + "items": { + "$ref": "ManagedPropertyEntry" + }, + "type": "array" + }, + "key": { + "description": "The unique key that the app uses to identify the property, e.g. \"com.google.android.gm.fieldname\".", + "type": "string" + }, + "nestedProperties": { + "description": "For BUNDLE_ARRAY properties, the list of nested properties. A BUNDLE_ARRAY property is at most two levels deep.", + "items": { + "$ref": "ManagedProperty" + }, + "type": "array" + }, + "title": { + "description": "The name of the property. Localized.", + "type": "string" + }, + "type": { + "description": "The type of the property.", + "enum": [ + "MANAGED_PROPERTY_TYPE_UNSPECIFIED", + "BOOL", + "STRING", + "INTEGER", + "CHOICE", + "MULTISELECT", + "HIDDEN", + "BUNDLE_ARRAY" + ], + "enumDescriptions": [ + "Not used.", + "A property of boolean type.", + "A property of string type.", + "A property of integer type.", + "A choice of one item from a set.", + "A choice of multiple items from a set.", + "A hidden restriction of string type (the default value can be used to pass along information that can't be modified, such as a version code).", + "An array of property bundles." + ], + "type": "string" + } + }, + "type": "object" + }, + "ManagedPropertyEntry": { + "description": "An entry of a managed property.", + "id": "ManagedPropertyEntry", + "properties": { + "name": { + "description": "The human-readable name of the value. Localized.", + "type": "string" + }, + "value": { + "description": "The machine-readable value of the entry, which should be used in the configuration. Not localized.", + "type": "string" + } + }, + "type": "object" + }, + "MemoryEvent": { + "description": "An event related to memory and storage measurements.", + "id": "MemoryEvent", + "properties": { + "byteCount": { + "description": "The number of free bytes in the medium, or for EXTERNAL_STORAGE_DETECTED, the total capacity in bytes of the storage medium.", + "format": "int64", + "type": "string" + }, + "createTime": { + "description": "The creation time of the event.", + "format": "google-datetime", + "type": "string" + }, + "eventType": { + "description": "Event type.", + "enum": [ + "MEMORY_EVENT_TYPE_UNSPECIFIED", + "RAM_MEASURED", + "INTERNAL_STORAGE_MEASURED", + "EXTERNAL_STORAGE_DETECTED", + "EXTERNAL_STORAGE_REMOVED", + "EXTERNAL_STORAGE_MEASURED" + ], + "enumDescriptions": [ + "Unspecified. No events have this type.", + "Free space in RAM was measured.", + "Free space in internal storage was measured.", + "A new external storage medium was detected. The reported byte count is the total capacity of the storage medium.", + "An external storage medium was removed. The reported byte count is zero.", + "Free space in an external storage medium was measured." + ], + "type": "string" + } + }, + "type": "object" + }, + "MemoryInfo": { + "description": "Information about device memory and storage.", + "id": "MemoryInfo", + "properties": { + "totalInternalStorage": { + "description": "Total internal storage on device in bytes.", + "format": "int64", + "type": "string" + }, + "totalRam": { + "description": "Total RAM on device in bytes.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "NetworkInfo": { + "description": "Device network info.", + "id": "NetworkInfo", + "properties": { + "imei": { + "description": "IMEI number of the GSM device. For example, A1000031212.", + "type": "string" + }, + "meid": { + "description": "MEID number of the CDMA device. For example, A00000292788E1.", + "type": "string" + }, + "networkOperatorName": { + "description": "Alphabetic name of current registered operator. For example, Vodafone.", + "type": "string" + }, + "wifiMacAddress": { + "description": "Wi-Fi MAC address of the device. For example, 7c:11:11:11:11:11.", + "type": "string" + } + }, + "type": "object" + }, + "NonComplianceDetail": { + "description": "Provides detail about non-compliance with a policy setting.", + "id": "NonComplianceDetail", + "properties": { + "currentValue": { + "description": "If the policy setting could not be applied, the current value of the setting on the device.", + "type": "any" + }, + "fieldPath": { + "description": "For settings with nested fields, if a particular nested field is out of compliance, this specifies the full path to the offending field. The path is formatted in the same way the policy JSON field would be referenced in JavaScript, that is: 1) For object-typed fields, the field name is followed by a dot then by a subfield name. 2) For array-typed fields, the field name is followed by the array index enclosed in brackets. For example, to indicate a problem with the url field in the externalData field in the 3rd application, the path would be applications[2].externalData.url", + "type": "string" + }, + "installationFailureReason": { + "description": "If package_name is set and the non-compliance reason is APP_NOT_INSTALLED or APP_NOT_UPDATED, the detailed reason the app can't be installed or updated.", + "enum": [ + "INSTALLATION_FAILURE_REASON_UNSPECIFIED", + "INSTALLATION_FAILURE_REASON_UNKNOWN", + "IN_PROGRESS", + "NOT_FOUND", + "NOT_COMPATIBLE_WITH_DEVICE", + "NOT_APPROVED", + "PERMISSIONS_NOT_ACCEPTED", + "NOT_AVAILABLE_IN_COUNTRY", + "NO_LICENSES_REMAINING", + "NOT_ENROLLED", + "USER_INVALID" + ], + "enumDescriptions": [ + "This value is disallowed.", + "An unknown condition is preventing the app from being installed. Some potential reasons are that the device doesn't have enough storage, the device network connection is unreliable, or the installation is taking longer than expected. The installation will be retried automatically.", + "The installation is still in progress.", + "The app was not found in Play.", + "The app is incompatible with the device.", + "The app has not been approved by the admin.", + "The app has new permissions that have not been accepted by the admin.", + "The app is not available in the user's country.", + "There are no licenses available to assign to the user.", + "The enterprise is no longer enrolled with managed Play or Android Device Policy is not enabled for the enterprise.", + "The user is no longer valid. The user may have been deleted or disabled." + ], + "type": "string" + }, + "nonComplianceReason": { + "description": "The reason the device is not in compliance with the setting.", + "enum": [ + "NON_COMPLIANCE_REASON_UNSPECIFIED", + "API_LEVEL", + "MANAGEMENT_MODE", + "USER_ACTION", + "INVALID_VALUE", + "APP_NOT_INSTALLED", + "UNSUPPORTED", + "APP_INSTALLED", + "PENDING", + "APP_INCOMPATIBLE", + "APP_NOT_UPDATED" + ], + "enumDescriptions": [ + "This value is disallowed.", + "The setting is not supported in the API level of the Android version running on the device.", + "The management mode (profile owner, device owner, etc.) doesn't support the setting.", + "The user has not taken required action to comply with the setting.", + "The setting has an invalid value.", + "The app required to implement the policy is not installed.", + "The policy is not supported by the version of Android Device Policy on the device.", + "A blocked app is installed.", + "The setting hasn't been applied at the time of the report, but is expected to be applied shortly.", + "The setting can't be applied to the app because the app doesn't support it, for example because its target SDK version is not high enough.", + "The app is installed, but it hasn't been updated to the minimum version code specified by policy." + ], + "type": "string" + }, + "packageName": { + "description": "The package name indicating which app is out of compliance, if applicable.", + "type": "string" + }, + "settingName": { + "description": "The name of the policy setting. This is the JSON field name of a top-level Policy field.", + "type": "string" + } + }, + "type": "object" + }, + "NonComplianceDetailCondition": { + "description": "A compliance rule condition which is satisfied if there exists any matching NonComplianceDetail for the device. A NonComplianceDetail matches a NonComplianceDetailCondition if all the fields which are set within the NonComplianceDetailCondition match the corresponding NonComplianceDetail fields.", + "id": "NonComplianceDetailCondition", + "properties": { + "nonComplianceReason": { + "description": "The reason the device is not in compliance with the setting. If not set, then this condition matches any reason.", + "enum": [ + "NON_COMPLIANCE_REASON_UNSPECIFIED", + "API_LEVEL", + "MANAGEMENT_MODE", + "USER_ACTION", + "INVALID_VALUE", + "APP_NOT_INSTALLED", + "UNSUPPORTED", + "APP_INSTALLED", + "PENDING", + "APP_INCOMPATIBLE", + "APP_NOT_UPDATED" + ], + "enumDescriptions": [ + "This value is disallowed.", + "The setting is not supported in the API level of the Android version running on the device.", + "The management mode (profile owner, device owner, etc.) doesn't support the setting.", + "The user has not taken required action to comply with the setting.", + "The setting has an invalid value.", + "The app required to implement the policy is not installed.", + "The policy is not supported by the version of Android Device Policy on the device.", + "A blocked app is installed.", + "The setting hasn't been applied at the time of the report, but is expected to be applied shortly.", + "The setting can't be applied to the app because the app doesn't support it, for example because its target SDK version is not high enough.", + "The app is installed, but it hasn't been updated to the minimum version code specified by policy." + ], + "type": "string" + }, + "packageName": { + "description": "The package name of the app that's out of compliance. If not set, then this condition matches any package name.", + "type": "string" + }, + "settingName": { + "description": "The name of the policy setting. This is the JSON field name of a top-level Policy field. If not set, then this condition matches any setting name.", + "type": "string" + } + }, + "type": "object" + }, + "Operation": { + "description": "This resource represents a long-running operation that is the result of a network API call.", + "id": "Operation", + "properties": { + "done": { + "description": "If the value is false, it means the operation is still in progress. If true, the operation is completed, and either error or response is available.", + "type": "boolean" + }, + "error": { + "$ref": "Status", + "description": "The error result of the operation in case of failure or cancellation." + }, + "metadata": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "description": "Service-specific metadata associated with the operation. It typically contains progress information and common metadata such as create time. Some services might not provide such metadata. Any method that returns a long-running operation should document the metadata type, if any.", + "type": "object" + }, + "name": { + "description": "The server-assigned name, which is only unique within the same service that originally returns it. If you use the default HTTP mapping, the name should have the format of operations/some/unique/name.", + "type": "string" + }, + "response": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "description": "The normal response of the operation in case of success. If the original method returns no data on success, such as Delete, the response is google.protobuf.Empty. If the original method is standard Get/Create/Update, the response should be the resource. For other methods, the response should have the type XxxResponse, where Xxx is the original method name. For example, if the original method name is TakeSnapshot(), the inferred response type is TakeSnapshotResponse.", + "type": "object" + } + }, + "type": "object" + }, + "PackageNameList": { + "description": "A list of package names.", + "id": "PackageNameList", + "properties": { + "packageNames": { + "description": "A list of package names.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "PasswordRequirements": { + "description": "Requirements for the password used to unlock a device.", + "id": "PasswordRequirements", + "properties": { + "maximumFailedPasswordsForWipe": { + "description": "Number of incorrect device-unlock passwords that can be entered before a device is wiped. A value of 0 means there is no restriction.", + "format": "int32", + "type": "integer" + }, + "passwordExpirationTimeout": { + "description": "Password expiration timeout.", + "format": "google-duration", + "type": "string" + }, + "passwordHistoryLength": { + "description": "The length of the password history. After setting this field, the user won't be able to enter a new password that is the same as any password in the history. A value of 0 means there is no restriction.", + "format": "int32", + "type": "integer" + }, + "passwordMinimumLength": { + "description": "The minimum allowed password length. A value of 0 means there is no restriction. Only enforced when password_quality is NUMERIC, NUMERIC_COMPLEX, ALPHABETIC, ALPHANUMERIC, or COMPLEX.", + "format": "int32", + "type": "integer" + }, + "passwordMinimumLetters": { + "description": "Minimum number of letters required in the password. Only enforced when password_quality is COMPLEX.", + "format": "int32", + "type": "integer" + }, + "passwordMinimumLowerCase": { + "description": "Minimum number of lower case letters required in the password. Only enforced when password_quality is COMPLEX.", + "format": "int32", + "type": "integer" + }, + "passwordMinimumNonLetter": { + "description": "Minimum number of non-letter characters (numerical digits or symbols) required in the password. Only enforced when password_quality is COMPLEX.", + "format": "int32", + "type": "integer" + }, + "passwordMinimumNumeric": { + "description": "Minimum number of numerical digits required in the password. Only enforced when password_quality is COMPLEX.", + "format": "int32", + "type": "integer" + }, + "passwordMinimumSymbols": { + "description": "Minimum number of symbols required in the password. Only enforced when password_quality is COMPLEX.", + "format": "int32", + "type": "integer" + }, + "passwordMinimumUpperCase": { + "description": "Minimum number of upper case letters required in the password. Only enforced when password_quality is COMPLEX.", + "format": "int32", + "type": "integer" + }, + "passwordQuality": { + "description": "The required password quality.", + "enum": [ + "PASSWORD_QUALITY_UNSPECIFIED", + "BIOMETRIC_WEAK", + "SOMETHING", + "NUMERIC", + "NUMERIC_COMPLEX", + "ALPHABETIC", + "ALPHANUMERIC", + "COMPLEX" + ], + "enumDescriptions": [ + "There are no password requirements.", + "The device must be secured with a low-security biometric recognition technology, at minimum. This includes technologies that can recognize the identity of an individual that are roughly equivalent to a 3-digit PIN (false detection is less than 1 in 1,000).", + "A password is required, but there are no restrictions on what the password must contain.", + "The password must contain numeric characters.", + "The password must contain numeric characters with no repeating (4444) or ordered (1234, 4321, 2468) sequences.", + "The password must contain alphabetic (or symbol) characters.", + "The password must contain both numeric and alphabetic (or symbol) characters.", + "The password must contain at least a letter, a numerical digit and a special symbol. Other password constraints, for example, password_minimum_letters are enforced." + ], + "type": "string" + } + }, + "type": "object" }, "PermissionGrant": { "description": "Configuration for an Android permission and its grant state.", - "type": "object", + "id": "PermissionGrant", "properties": { "permission": { "description": "The android permission, e.g. android.permission.READ_CALENDAR.", @@ -857,122 +2063,151 @@ "type": "string" } }, - "id": "PermissionGrant" + "type": "object" }, - "Application": { - "description": "Application information.", - "type": "object", + "PersistentPreferredActivity": { + "description": "A default activity for handling intents that match a particular intent filter.", + "id": "PersistentPreferredActivity", "properties": { - "managedProperties": { - "description": "The set of managed properties available to be pre-configured for the application.", - "type": "array", + "actions": { + "description": "The intent actions to match in the filter. If any actions are included in the filter, then an intent's action must be one of those values for it to match. If no actions are included, the intent action is ignored.", "items": { - "$ref": "ManagedProperty" - } - }, - "title": { - "description": "The title of the application. Localized.", - "type": "string" - }, - "permissions": { - "description": "The permissions required by the app.", - "type": "array", - "items": { - "$ref": "ApplicationPermission" - } - }, - "name": { - "description": "The name of the application in the form enterprises/{enterpriseId}/applications/{package_name}", - "type": "string" - } - }, - "id": "Application" - }, - "Status": { - "description": "The Status type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by gRPC (https://github.com/grpc). The error model is designed to be:\nSimple to use and understand for most users\nFlexible enough to meet unexpected needsOverviewThe Status message contains three pieces of data: error code, error message, and error details. The error code should be an enum value of google.rpc.Code, but it may accept additional error codes if needed. The error message should be a developer-facing English message that helps developers understand and resolve the error. If a localized user-facing error message is needed, put the localized message in the error details or localize it in the client. The optional error details may contain arbitrary information about the error. There is a predefined set of error detail types in the package google.rpc that can be used for common error conditions.Language mappingThe Status message is the logical representation of the error model, but it is not necessarily the actual wire format. When the Status message is exposed in different client libraries and different wire protocols, it can be mapped differently. For example, it will likely be mapped to some exceptions in Java, but more likely mapped to some error codes in C.Other usesThe error model and the Status message can be used in a variety of environments, either with or without APIs, to provide a consistent developer experience across different environments.Example uses of this error model include:\nPartial errors. If a service needs to return partial errors to the client, it may embed the Status in the normal response to indicate the partial errors.\nWorkflow errors. A typical workflow has multiple steps. Each step may have a Status message for error reporting.\nBatch operations. If a client uses batch request and batch response, the Status message should be used directly inside batch response, one for each error sub-response.\nAsynchronous operations. If an API call embeds asynchronous operation results in its response, the status of those operations should be represented directly using the Status message.\nLogging. If some API errors are stored in logs, the message Status could be used directly after any stripping needed for security/privacy reasons.", - "type": "object", - "properties": { - "code": { - "description": "The status code, which should be an enum value of google.rpc.Code.", - "type": "integer", - "format": "int32" - }, - "details": { - "description": "A list of messages that carry the error details. There is a common set of message types for APIs to use.", - "type": "array", - "items": { - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - }, - "type": "object" - } - }, - "message": { - "description": "A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the google.rpc.Status.details field, or localized by the client.", - "type": "string" - } - }, - "id": "Status" - }, - "AlwaysOnVpnPackage": { - "description": "Configuration for an always-on VPN connection.", - "type": "object", - "properties": { - "packageName": { - "description": "The package name of the VPN app.", - "type": "string" - }, - "lockdownEnabled": { - "description": "Disallows networking when the VPN is not connected.", - "type": "boolean" - } - }, - "id": "AlwaysOnVpnPackage" - }, - "ApplicationPolicy": { - "description": "Policy for an individual app.", - "type": "object", - "properties": { - "lockTaskAllowed": { - "description": "Whether the application is allowed to lock itself in full-screen mode.", - "type": "boolean" - }, - "permissionGrants": { - "description": "Explicit permission grants or denials for the app. These values override the default_permission_policy.", - "type": "array", - "items": { - "$ref": "PermissionGrant" - } - }, - "managedConfiguration": { - "description": "Managed configuration applied to the app. The format for the configuration is dictated by the ManagedProperty values supported by the app. Each field name in the managed configuration must match the key field of the ManagedProperty. The field value must be compatible with the type of the ManagedProperty: \u003ctable\u003e \u003ctr\u003e\u003ctd\u003e\u003ci\u003etype\u003c/i\u003e\u003c/td\u003e\u003ctd\u003e\u003ci\u003eJSON value\u003c/i\u003e\u003c/td\u003e\u003c/tr\u003e \u003ctr\u003e\u003ctd\u003eBOOL\u003c/td\u003e\u003ctd\u003etrue or false\u003c/td\u003e\u003c/tr\u003e \u003ctr\u003e\u003ctd\u003eSTRING\u003c/td\u003e\u003ctd\u003estring\u003c/td\u003e\u003c/tr\u003e \u003ctr\u003e\u003ctd\u003eINTEGER\u003c/td\u003e\u003ctd\u003enumber\u003c/td\u003e\u003c/tr\u003e \u003ctr\u003e\u003ctd\u003eCHOICE\u003c/td\u003e\u003ctd\u003estring\u003c/td\u003e\u003c/tr\u003e \u003ctr\u003e\u003ctd\u003eMULTISELECT\u003c/td\u003e\u003ctd\u003earray of strings\u003c/td\u003e\u003c/tr\u003e \u003ctr\u003e\u003ctd\u003eHIDDEN\u003c/td\u003e\u003ctd\u003estring\u003c/td\u003e\u003c/tr\u003e \u003ctr\u003e\u003ctd\u003eBUNDLE_ARRAY\u003c/td\u003e\u003ctd\u003earray of objects\u003c/td\u003e\u003c/tr\u003e \u003c/table\u003e", - "additionalProperties": { - "description": "Properties of the object.", - "type": "any" + "type": "string" }, - "type": "object" + "type": "array" }, - "packageName": { - "description": "The package name of the app, e.g. com.google.android.youtube for the YouTube app.", + "categories": { + "description": "The intent categories to match in the filter. An intent includes the categories that it requires, all of which must be included in the filter in order to match. In other words, adding a category to the filter has no impact on matching unless that category is specified in the intent.", + "items": { + "type": "string" + }, + "type": "array" + }, + "receiverActivity": { + "description": "The activity that should be the default intent handler. This should be an Android component name, e.g. com.android.enterprise.app/.MainActivity. Alternatively, the value may be the package name of an app, which causes Android Device Policy to choose an appropriate activity from the app to handle the intent.", "type": "string" + } + }, + "type": "object" + }, + "Policy": { + "description": "A policy resources represents a group settings that govern the behavior of a managed device and the apps installed on it.", + "id": "Policy", + "properties": { + "accountTypesWithManagementDisabled": { + "description": "Account types that can't be managed by the user.", + "items": { + "type": "string" + }, + "type": "array" }, - "installType": { - "description": "The type of installation to perform.", + "addUserDisabled": { + "description": "Whether adding new users and profiles is disabled.", + "type": "boolean" + }, + "adjustVolumeDisabled": { + "description": "Whether adjusting the master volume is disabled.", + "type": "boolean" + }, + "alwaysOnVpnPackage": { + "$ref": "AlwaysOnVpnPackage", + "description": "Configuration for an always-on VPN connection. Use with vpn_config_disabled to prevent modification of this setting." + }, + "androidDevicePolicyTracks": { + "description": "The app tracks for Android Device Policy the device can access. The device receives the latest version among all accessible tracks. If no tracks are specified, then the device only uses the production track.", + "enumDescriptions": [ + "This value is ignored.", + "The production track, which provides the latest stable release.", + "The beta track, which provides the latest beta release." + ], + "items": { + "enum": [ + "APP_TRACK_UNSPECIFIED", + "PRODUCTION", + "BETA" + ], + "type": "string" + }, + "type": "array" + }, + "appAutoUpdatePolicy": { + "description": "The app auto update policy, which controls when automatic app updates can be applied.", "enum": [ - "INSTALL_TYPE_UNSPECIFIED", - "PREINSTALLED", - "FORCE_INSTALLED" + "APP_AUTO_UPDATE_POLICY_UNSPECIFIED", + "CHOICE_TO_THE_USER", + "NEVER", + "WIFI_ONLY", + "ALWAYS" ], "enumDescriptions": [ - "No automatic installation is performed. Any other app policies will be applied if the user installs the app.", - "The application is automatically installed and can be removed by the user.", - "The application is automatically installed and cannot be removed by the user." + "The auto-update policy is not set. Equivalent to CHOICE_TO_THE_USER.", + "The user can control auto-updates.", + "Apps are never auto-updated.", + "Apps are auto-updated over Wi-Fi only.", + "Apps are auto-updated at any time. Data charges may apply." ], "type": "string" }, + "applications": { + "description": "Policy applied to apps.", + "items": { + "$ref": "ApplicationPolicy" + }, + "type": "array" + }, + "autoTimeRequired": { + "description": "Whether auto time is required, which prevents the user from manually setting the date and time.", + "type": "boolean" + }, + "blockApplicationsEnabled": { + "description": "Whether applications other than the ones configured in applications are blocked from being installed. When set, applications that were installed under a previous policy but no longer appear in the policy are automatically uninstalled.", + "type": "boolean" + }, + "bluetoothConfigDisabled": { + "description": "Whether configuring bluetooth is disabled.", + "type": "boolean" + }, + "bluetoothContactSharingDisabled": { + "description": "Whether bluetooth contact sharing is disabled.", + "type": "boolean" + }, + "bluetoothDisabled": { + "description": "Whether bluetooth is disabled. Prefer this setting over bluetooth_config_disabled because bluetooth_config_disabled can be bypassed by the user.", + "type": "boolean" + }, + "cameraDisabled": { + "description": "Whether all cameras on the device are disabled.", + "type": "boolean" + }, + "cellBroadcastsConfigDisabled": { + "description": "Whether configuring cell broadcast is disabled.", + "type": "boolean" + }, + "complianceRules": { + "description": "Rules declaring which mitigating actions to take when a device is not compliant with its policy. When the conditions for multiple rules are satisfied, all of the mitigating actions for the rules are taken. There is a maximum limit of 100 rules.", + "items": { + "$ref": "ComplianceRule" + }, + "type": "array" + }, + "createWindowsDisabled": { + "description": "Whether creating windows besides app windows is disabled.", + "type": "boolean" + }, + "credentialsConfigDisabled": { + "description": "Whether configuring user credentials is disabled.", + "type": "boolean" + }, + "dataRoamingDisabled": { + "description": "Whether roaming data services are disabled.", + "type": "boolean" + }, + "debuggingFeaturesAllowed": { + "description": "Whether the user is allowed to enable debugging features.", + "type": "boolean" + }, "defaultPermissionPolicy": { - "description": "The default policy for all permissions requested by the app. If specified, this overrides the policy-level default_permission_policy which applies to all apps.", + "description": "The default permission policy for runtime permission requests.", "enum": [ "PERMISSION_POLICY_UNSPECIFIED", "PROMPT", @@ -986,402 +2221,54 @@ "Automatically deny a permission." ], "type": "string" - } - }, - "id": "ApplicationPolicy" - }, - "ApplicationPermission": { - "description": "Application permission.", - "type": "object", - "properties": { - "description": { - "description": "A longer description of the permission, giving more details of what it affects. Localized.", - "type": "string" }, - "permissionId": { - "description": "An opaque string uniquely identifying the permission. Not localized.", - "type": "string" + "deviceOwnerLockScreenInfo": { + "$ref": "UserFacingMessage", + "description": "The device owner information to be shown on the lock screen." }, - "name": { - "description": "The name of the permission. Localized.", - "type": "string" - } - }, - "id": "ApplicationPermission" - }, - "ProxyInfo": { - "description": "Configuration info for an HTTP proxy. For a direct proxy, set the host, port, and excluded_hosts fields. For a PAC script proxy, set the pac_uri field.", - "type": "object", - "properties": { - "host": { - "description": "The host of the direct proxy.", - "type": "string" - }, - "port": { - "description": "The port of the direct proxy.", - "type": "integer", - "format": "int32" - }, - "excludedHosts": { - "description": "For a direct proxy, the hosts for which the proxy is bypassed. The host names may contain wildcards such as *.example.com.", - "type": "array", - "items": { - "type": "string" - } - }, - "pacUri": { - "description": "The URI of the PAC script used to configure the proxy.", - "type": "string" - } - }, - "id": "ProxyInfo" - }, - "ManagedProperty": { - "description": "Managed property.", - "type": "object", - "properties": { - "nestedProperties": { - "description": "For BUNDLE_ARRAY properties, the list of nested properties. A BUNDLE_ARRAY property is at most two levels deep.", - "type": "array", - "items": { - "$ref": "ManagedProperty" - } - }, - "description": { - "description": "A longer description of the property, giving more detail of what it affects. Localized.", - "type": "string" - }, - "defaultValue": { - "description": "The default value of the properties. BUNDLE_ARRAY properties never have a default value.", - "type": "any" - }, - "title": { - "description": "The name of the property. Localized.", - "type": "string" - }, - "key": { - "description": "The unique key that the application uses to identify the property, e.g. \"com.google.android.gm.fieldname\".", - "type": "string" - }, - "entries": { - "description": "For CHOICE or MULTISELECT properties, the list of possible entries.", - "type": "array", - "items": { - "$ref": "ManagedPropertyEntry" - } - }, - "type": { - "description": "The type of the property.", + "encryptionPolicy": { + "description": "Whether encryption is enabled", "enum": [ - "MANAGED_PROPERTY_TYPE_UNSPECIFIED", - "BOOL", - "STRING", - "INTEGER", - "CHOICE", - "MULTISELECT", - "HIDDEN", - "BUNDLE_ARRAY" + "ENCRYPTION_POLICY_UNSPECIFIED", + "ENABLED_WITHOUT_PASSWORD", + "ENABLED_WITH_PASSWORD" ], "enumDescriptions": [ - "Not used.", - "A property of boolean type.", - "A property of string type.", - "A property of integer type.", - "A choice of one item from a set.", - "A choice of multiple items from a set.", - "A hidden restriction of string type (the default value can be used to pass along information that cannot be modified, such as a version code).", - "An array of property bundles." - ], - "type": "string" - } - }, - "id": "ManagedProperty" - }, - "Operation": { - "description": "This resource represents a long-running operation that is the result of a network API call.", - "type": "object", - "properties": { - "error": { - "description": "The error result of the operation in case of failure or cancellation.", - "$ref": "Status" - }, - "done": { - "description": "If the value is false, it means the operation is still in progress. If true, the operation is completed, and either error or response is available.", - "type": "boolean" - }, - "metadata": { - "description": "Service-specific metadata associated with the operation. It typically contains progress information and common metadata such as create time. Some services might not provide such metadata. Any method that returns a long-running operation should document the metadata type, if any.", - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - }, - "type": "object" - }, - "response": { - "description": "The normal response of the operation in case of success. If the original method returns no data on success, such as Delete, the response is google.protobuf.Empty. If the original method is standard Get/Create/Update, the response should be the resource. For other methods, the response should have the type XxxResponse, where Xxx is the original method name. For example, if the original method name is TakeSnapshot(), the inferred response type is TakeSnapshotResponse.", - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - }, - "type": "object" - }, - "name": { - "description": "The server-assigned name, which is only unique within the same service that originally returns it. If you use the default HTTP mapping, the name should have the format of operations/some/unique/name.", - "type": "string" - } - }, - "id": "Operation" - }, - "NonComplianceDetailCondition": { - "description": "A compliance rule condition which is satisfied if there exists any matching NonComplianceDetail for the device. A NonComplianceDetail matches a NonComplianceDetailCondition if all the fields which are set within the NonComplianceDetailCondition match the corresponding NonComplianceDetail fields.", - "type": "object", - "properties": { - "nonComplianceReason": { - "description": "The reason the device is not in compliance with the setting. If not set, then this condition matches any reason.", - "enum": [ - "NON_COMPLIANCE_REASON_UNSPECIFIED", - "API_LEVEL", - "ADMIN_TYPE", - "USER_ACTION", - "INVALID_VALUE", - "APP_NOT_INSTALLED", - "UNSUPPORTED", - "APP_INSTALLED", - "PENDING", - "APP_INCOMPATIBLE", - "APP_NOT_UPDATED" - ], - "enumDescriptions": [ - "This value is disallowed.", - "The setting is not supported in the API level of Android OS version the device is running.", - "The admin type (profile owner, device owner, etc.) does not support the setting.", - "The user has not taken required action to comply with the setting.", - "The setting has an invalid value.", - "The application required to implement the policy is not installed.", - "The policy is not supported by the version of Android Device Policy on the device.", - "A blocked application is installed.", - "The setting was not applied yet at the time of the report, but is expected to be applied shortly.", - "The setting cannot be applied to the application because the application doesn't support it, for example because its target SDK version is not high enough.", - "The application is installed but not updated to the minimum version code specified by policy" + "This value is ignored, i.e. no encryption required", + "Encryption required but no password required to boot", + "Encryption required with password required to boot" ], "type": "string" }, - "settingName": { - "description": "The name of the policy setting. This is the JSON field name of a top-level Policy field. If not set, then this condition matches any setting name.", - "type": "string" - }, - "packageName": { - "description": "The package name indicating which application is out of compliance. If not set, then this condition matches any package name.", - "type": "string" - } - }, - "id": "NonComplianceDetailCondition" - }, - "NonComplianceDetail": { - "description": "Provides detail about non-compliance with a policy setting.", - "type": "object", - "properties": { - "settingName": { - "description": "The name of the policy setting. This is the JSON field name of a top-level Policy field.", - "type": "string" - }, - "currentValue": { - "description": "If the policy setting could not be applied, the current value of the setting on the device.", - "type": "any" - }, - "packageName": { - "description": "The package name indicating which application is out of compliance, if applicable.", - "type": "string" - }, - "installationFailureReason": { - "description": "If package_name is set and the non-compliance reason is APP_NOT_INSTALLED or APP_NOT_UPDATED, the detailed reason the app cannot be installed or updated.", - "enum": [ - "INSTALLATION_FAILURE_REASON_UNSPECIFIED", - "INSTALLATION_FAILURE_REASON_UNKNOWN", - "IN_PROGRESS", - "NOT_FOUND", - "NOT_COMPATIBLE_WITH_DEVICE", - "NOT_APPROVED", - "PERMISSIONS_NOT_ACCEPTED", - "NOT_AVAILABLE_IN_COUNTRY", - "NO_LICENSES_REMAINING", - "NOT_ENROLLED", - "USER_INVALID" - ], - "enumDescriptions": [ - "This value is disallowed.", - "An unknown condition is preventing the app from being installed. Some potential reaons are that the device does not have enough storage, the device network connection is unreliable, or the installation is taking longer than expected. The installation will be retried automatically.", - "The installation is still in progress.", - "The app was not found in Play.", - "The app is incompatible with the device.", - "The app has not been approved by the admin.", - "The app has new permissions that have not been accepted by the admin.", - "The app is not available in the user's country.", - "There are no more licenses to assign to the user.", - "The enterprise is no longer enrolled with Play for Work or Android Device Policy is not enabled for the enterprise.", - "The user is no longer valid. The user may have been deleted or disabled." - ], - "type": "string" - }, - "fieldPath": { - "description": "For settings with nested fields, if a particular nested field is out of compliance, this specifies the full path to the offending field. The path is formatted in the same way the policy JSON field would be referenced in JavaScript, that is: 1) For object-typed fields, the field name is followed by a dot then by a subfield name. 2) For array-typed fields, the field name is followed by the array index enclosed in brackets. For example, to indicate a problem with the url field in the externalData field in the 3rd application, the path would be applications[2].externalData.url", - "type": "string" - }, - "nonComplianceReason": { - "description": "The reason the device is not in compliance with the setting.", - "enum": [ - "NON_COMPLIANCE_REASON_UNSPECIFIED", - "API_LEVEL", - "ADMIN_TYPE", - "USER_ACTION", - "INVALID_VALUE", - "APP_NOT_INSTALLED", - "UNSUPPORTED", - "APP_INSTALLED", - "PENDING", - "APP_INCOMPATIBLE", - "APP_NOT_UPDATED" - ], - "enumDescriptions": [ - "This value is disallowed.", - "The setting is not supported in the API level of Android OS version the device is running.", - "The admin type (profile owner, device owner, etc.) does not support the setting.", - "The user has not taken required action to comply with the setting.", - "The setting has an invalid value.", - "The application required to implement the policy is not installed.", - "The policy is not supported by the version of Android Device Policy on the device.", - "A blocked application is installed.", - "The setting was not applied yet at the time of the report, but is expected to be applied shortly.", - "The setting cannot be applied to the application because the application doesn't support it, for example because its target SDK version is not high enough.", - "The application is installed but not updated to the minimum version code specified by policy" - ], - "type": "string" - } - }, - "id": "NonComplianceDetail" - }, - "PackageNameList": { - "description": "A list of package names.", - "type": "object", - "properties": { - "packageNames": { - "description": "A list of package names.", - "type": "array", - "items": { - "type": "string" - } - } - }, - "id": "PackageNameList" - }, - "ListDevicesResponse": { - "description": "Response to a request to list devices for a given enterprise.", - "type": "object", - "properties": { - "nextPageToken": { - "description": "If there are more results, a token to retrieve next page of results.", - "type": "string" - }, - "devices": { - "description": "The list of devices.", - "type": "array", - "items": { - "$ref": "Device" - } - } - }, - "id": "ListDevicesResponse" - }, - "PersistentPreferredActivity": { - "description": "A default activity for handling intents that match a particular intent filter.", - "type": "object", - "properties": { - "receiverActivity": { - "description": "The activity that should be the default intent handler. This should be an Android component name, e.g. com.android.enterprise.app/.MainActivity. Alternatively, the value may be the package name of an app, which causes Android Device Policy to choose an appropriate activity from the app to handle the intent.", - "type": "string" - }, - "actions": { - "description": "The intent actions to match in the filter. If any actions are included in the filter, then an intent's action must be one of those values for it to match. If no actions are included, the intent action is ignored.", - "type": "array", - "items": { - "type": "string" - } - }, - "categories": { - "description": "The intent categories to match in the filter. An intent includes the categories that it requires, all of which must be included in the filter in order to match. In other words, adding a category to the filter has no impact on matching unless that category is specified in the intent.", - "type": "array", - "items": { - "type": "string" - } - } - }, - "id": "PersistentPreferredActivity" - }, - "Policy": { - "description": "A policy, which governs behavior for a device.", - "type": "object", - "properties": { - "outgoingCallsDisabled": { - "description": "Whether outgoing calls are disabled.", - "type": "boolean" - }, - "screenCaptureDisabled": { - "description": "Whether screen capture is disabled.", - "type": "boolean" - }, - "bluetoothDisabled": { - "description": "Whether bluetooth is disabled. Prefer this setting over bluetooth_config_disabled because bluetooth_config_disabled can be bypassed by the user.", - "type": "boolean" - }, - "installAppsDisabled": { - "description": "Whether user installation of apps is disabled.", + "ensureVerifyAppsEnabled": { + "description": "Whether app verification is force-enabled.", "type": "boolean" }, "factoryResetDisabled": { "description": "Whether factory resetting from settings is disabled.", "type": "boolean" }, - "modifyAccountsDisabled": { - "description": "Whether adding or removing accounts is disabled.", + "frpAdminEmails": { + "description": "Email addresses of device administrators for factory reset protection. When the device is factory reset, it will require one of these admins to log in with the Google account email and password to unlock the device. If no admins are specified, the device won't provide factory reset protection.", + "items": { + "type": "string" + }, + "type": "array" + }, + "funDisabled": { + "description": "Whether the user is allowed to have fun. Controls whether the Easter egg game in Settings is disabled.", + "type": "boolean" + }, + "installAppsDisabled": { + "description": "Whether user installation of apps is disabled.", "type": "boolean" }, "installUnknownSourcesAllowed": { "description": "Whether the user is allowed to enable the \"Unknown Sources\" setting, which allows installation of apps from unknown sources.", "type": "boolean" }, - "stayOnPluggedModes": { - "description": "The battery plugged in modes for which the device stays on. When using this setting, it is recommended to clear maximum_time_to_lock so that the device doesn't lock itself while it stays on.", - "enumDescriptions": [ - "This value is ignored.", - "Power source is an AC charger.", - "Power source is a USB port.", - "Power source is wireless." - ], - "type": "array", - "items": { - "enum": [ - "BATTERY_PLUGGED_MODE_UNSPECIFIED", - "AC", - "USB", - "WIRELESS" - ], - "type": "string" - } - }, - "networkResetDisabled": { - "description": "Whether resetting network settings is disabled.", - "type": "boolean" - }, - "shortSupportMessage": { - "description": "A message displayed to the user in the settings screen wherever functionality has been disabled by the admin.", - "$ref": "UserFacingMessage" - }, - "wifiConfigDisabled": { - "description": "Whether configuring WiFi access points is disabled.", - "type": "boolean" - }, - "networkEscapeHatchEnabled": { - "description": "Whether the network escape hatch is enabled. If a network connection can't be made at boot time, the escape hatch prompts the user to temporarily connect to a network in order to refresh the device policy. After applying policy, the temporary network will be forgotten and the device will continue booting. This prevents being unable to connect to a network if there is no suitable network in the last policy and the device boots into an app in lock task mode, or the user is otherwise unable to reach device settings.", + "keyguardDisabled": { + "description": "Whether the keyguard is disabled.", "type": "boolean" }, "keyguardDisabledFeatures": { @@ -1396,7 +2283,6 @@ "Disable text entry into notifications on secure keyguard screens.", "Disable all current and future keyguard customizations." ], - "type": "array", "items": { "enum": [ "KEYGUARD_DISABLED_FEATURE_UNSPECIFIED", @@ -1409,709 +2295,219 @@ "ALL_FEATURES" ], "type": "string" - } + }, + "type": "array" }, - "defaultPermissionPolicy": { - "description": "The default permission policy for requests for runtime permissions.", + "kioskCustomLauncherEnabled": { + "description": "Whether the kiosk custom launcher is enabled. This replaces the home screen with a launcher that locks down the device to the apps installed via the applications setting. The apps appear on a single page in alphabetical order. It is recommended to also use status_bar_disabled to block access to device settings.", + "type": "boolean" + }, + "locationMode": { + "description": "The degree of location detection enabled. The user may change the value unless the user is otherwise blocked from accessing device settings.", "enum": [ - "PERMISSION_POLICY_UNSPECIFIED", - "PROMPT", - "GRANT", - "DENY" + "LOCATION_MODE_UNSPECIFIED", + "HIGH_ACCURACY", + "SENSORS_ONLY", + "BATTERY_SAVING", + "OFF" ], "enumDescriptions": [ - "Policy not specified. If no policy is specified for a permission at any level, then the PROMPT behavior is used by default.", - "Prompt the user to grant a permission.", - "Automatically grant a permission.", - "Automatically deny a permission." + "The current device value is not modified.", + "All location detection methods are enabled, including GPS, networks, and other sensors.", + "Only GPS and other sensors are enabled.", + "Only the network location provider is enabled.", + "Location detection is disabled." ], "type": "string" }, + "longSupportMessage": { + "$ref": "UserFacingMessage", + "description": "A message displayed to the user in the device administators settings screen." + }, "maximumTimeToLock": { - "description": "Maximum time in milliseconds for user activity until the device will lock. A value of 0 means there is no restriction.", - "type": "string", - "format": "int64" - }, - "safeBootDisabled": { - "description": "Whether rebooting the device into safe boot is disabled.", - "type": "boolean" - }, - "setUserIconDisabled": { - "description": "Whether changing the user icon is disabled.", - "type": "boolean" - }, - "recommendedGlobalProxy": { - "description": "The network-independent global HTTP proxy. Typically proxies should be configured per-network in open_network_configuration. However for unusual configurations like general internal filtering a global HTTP proxy may be useful. If the proxy is not accessible, network access may break. The global proxy is only a recommendation and some apps may ignore it.", - "$ref": "ProxyInfo" - }, - "applications": { - "description": "Policy applied to apps.", - "type": "array", - "items": { - "$ref": "ApplicationPolicy" - } - }, - "outgoingBeamDisabled": { - "description": "Whether using NFC to beam out data from apps is disabled.", - "type": "boolean" - }, - "credentialsConfigDisabled": { - "description": "Whether configuring user credentials is disabled.", - "type": "boolean" - }, - "autoTimeRequired": { - "description": "Whether auto time is required, which prevents the user from manually setting the date and time.", - "type": "boolean" - }, - "smsDisabled": { - "description": "Whether sending or receiving SMS messages is disabled.", - "type": "boolean" - }, - "permittedInputMethods": { - "description": "If present, only input methods provided by packages in this list are permitted. If this field is present, but the list is empty, then only system input methods are permitted.", - "$ref": "PackageNameList" - }, - "adjustVolumeDisabled": { - "description": "Whether adjusting the master volume is disabled.", - "type": "boolean" - }, - "accountTypesWithManagementDisabled": { - "description": "Account types that cannot be managed by the user.", - "type": "array", - "items": { - "type": "string" - } - }, - "vpnConfigDisabled": { - "description": "Whether configuring VPN is disabled.", - "type": "boolean" - }, - "frpAdminEmails": { - "description": "Email addresses of device administrators for factory reset protection. When the device is factory reset, it will require one of these admins to log in with the Google account email and password to unlock the device. If no admins are specified, the device will not provide factory reset protection.", - "type": "array", - "items": { - "type": "string" - } - }, - "alwaysOnVpnPackage": { - "description": "Configuration for an always-on VPN connection. Use with vpn_config_disabled to prevent modification of this setting.", - "$ref": "AlwaysOnVpnPackage" - }, - "tetheringConfigDisabled": { - "description": "Whether configuring tethering and portable hotspots is disabled.", - "type": "boolean" - }, - "name": { - "description": "The name of the policy in the form enterprises/{enterpriseId}/policies/{policyId}", + "description": "Maximum time in milliseconds for user activity until the device locks. A value of 0 means there is no restriction.", + "format": "int64", "type": "string" }, - "uninstallAppsDisabled": { - "description": "Whether user uninstallation of applications is disabled.", + "mobileNetworksConfigDisabled": { + "description": "Whether configuring mobile networks is disabled.", "type": "boolean" }, - "funDisabled": { - "description": "Whether the user is allowed to have fun. Controls whether the Easter egg game in Settings is disabled.", - "type": "boolean" - }, - "openNetworkConfiguration": { - "description": "Network configuration for the device. See configure networks for more information.", - "additionalProperties": { - "description": "Properties of the object.", - "type": "any" - }, - "type": "object" - }, - "unmuteMicrophoneDisabled": { - "description": "Whether the microphone is muted and adjusting microphone volume is disabled.", - "type": "boolean" - }, - "systemUpdate": { - "description": "The system update policy, which controls how OS updates are applied. If the update type is WINDOWED, the update window will automatically apply to Play app updates as well.", - "$ref": "SystemUpdate" - }, - "keyguardDisabled": { - "description": "Whether the keyguard is disabled.", + "modifyAccountsDisabled": { + "description": "Whether adding or removing accounts is disabled.", "type": "boolean" }, "mountPhysicalMediaDisabled": { "description": "Whether the user mounting physical external media is disabled.", "type": "boolean" }, - "ensureVerifyAppsEnabled": { - "description": "Whether application verification is forced to be enabled.", + "name": { + "description": "The name of the policy in the form enterprises/{enterpriseId}/policies/{policyId}.", + "type": "string" + }, + "networkEscapeHatchEnabled": { + "description": "Whether the network escape hatch is enabled. If a network connection can't be made at boot time, the escape hatch prompts the user to temporarily connect to a network in order to refresh the device policy. After applying policy, the temporary network will be forgotten and the device will continue booting. This prevents being unable to connect to a network if there is no suitable network in the last policy and the device boots into an app in lock task mode, or the user is otherwise unable to reach device settings.", "type": "boolean" }, - "kioskCustomLauncherEnabled": { - "description": "Whether the kiosk custom launcher is enabled. This replaces the home screen with a launcher that locks down the device to the apps installed via the applications setting. The apps appear on a single page in alphabetical order. It is recommended to also use status_bar_disabled to block access to device settings.", + "networkResetDisabled": { + "description": "Whether resetting network settings is disabled.", "type": "boolean" }, - "mobileNetworksConfigDisabled": { - "description": "Whether configuring mobile networks is disabled.", + "openNetworkConfiguration": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "description": "Network configuration for the device. See configure networks for more information.", + "type": "object" + }, + "outgoingBeamDisabled": { + "description": "Whether using NFC to beam data from apps is disabled.", "type": "boolean" }, - "dataRoamingDisabled": { - "description": "Whether roaming data services are disabled.", - "type": "boolean" - }, - "statusBarDisabled": { - "description": "Whether the status bar is disabled. This disables notifications, quick settings and other screen overlays that allow escape from full-screen mode.", - "type": "boolean" - }, - "longSupportMessage": { - "description": "A message displayed to the user in the device administators settings screen.", - "$ref": "UserFacingMessage" - }, - "cameraDisabled": { - "description": "Whether all cameras on the device are disabled.", + "outgoingCallsDisabled": { + "description": "Whether outgoing calls are disabled.", "type": "boolean" }, "passwordRequirements": { - "description": "Password requirements.", - "$ref": "PasswordRequirements" + "$ref": "PasswordRequirements", + "description": "Password requirements." + }, + "permittedInputMethods": { + "$ref": "PackageNameList", + "description": "If present, only the input methods provided by packages in this list are permitted. If this field is present, but the list is empty, then only system input methods are permitted." + }, + "persistentPreferredActivities": { + "description": "Default intent handler activities.", + "items": { + "$ref": "PersistentPreferredActivity" + }, + "type": "array" + }, + "recommendedGlobalProxy": { + "$ref": "ProxyInfo", + "description": "The network-independent global HTTP proxy. Typically proxies should be configured per-network in open_network_configuration. However for unusual configurations like general internal filtering a global HTTP proxy may be useful. If the proxy is not accessible, network access may break. The global proxy is only a recommendation and some apps may ignore it." + }, + "removeUserDisabled": { + "description": "Whether removing other users is disabled.", + "type": "boolean" + }, + "safeBootDisabled": { + "description": "Whether rebooting the device into safe boot is disabled.", + "type": "boolean" + }, + "screenCaptureDisabled": { + "description": "Whether screen capture is disabled.", + "type": "boolean" + }, + "setUserIconDisabled": { + "description": "Whether changing the user icon is disabled.", + "type": "boolean" }, "setWallpaperDisabled": { "description": "Whether changing the wallpaper is disabled.", "type": "boolean" }, - "version": { - "description": "The version of the policy. This is a read-only field. The version is incremented each time the policy is updated.", - "type": "string", - "format": "int64" + "shareLocationDisabled": { + "description": "Whether location sharing is disabled.", + "type": "boolean" }, - "complianceRules": { - "description": "Rules declaring which mitigating actions to take when a device is not compliant with its policy. When the conditions for multiple rules are satisfied, all of the mitigating actions for the rules are taken. There is a maximum limit of 100 rules.", - "type": "array", - "items": { - "$ref": "ComplianceRule" - } + "shortSupportMessage": { + "$ref": "UserFacingMessage", + "description": "A message displayed to the user in the settings screen wherever functionality has been disabled by the admin." + }, + "skipFirstUseHintsEnabled": { + "description": "Flag to skip hints on the first use. Enterprise admin can enable the system recommendation for apps to skip their user tutorial and other introductory hints on first start-up.", + "type": "boolean" + }, + "smsDisabled": { + "description": "Whether sending and receiving SMS messages is disabled.", + "type": "boolean" + }, + "statusBarDisabled": { + "description": "Whether the status bar is disabled. This disables notifications, quick settings, and other screen overlays that allow escape from full-screen mode.", + "type": "boolean" }, "statusReportingSettings": { - "description": "Status reporting settings", - "$ref": "StatusReportingSettings" + "$ref": "StatusReportingSettings", + "description": "Status reporting settings" }, - "addUserDisabled": { - "description": "Whether adding new users and profiles is disabled.", + "stayOnPluggedModes": { + "description": "The battery plugged in modes for which the device stays on. When using this setting, it is recommended to clear maximum_time_to_lock so that the device doesn't lock itself while it stays on.", + "enumDescriptions": [ + "This value is ignored.", + "Power source is an AC charger.", + "Power source is a USB port.", + "Power source is wireless." + ], + "items": { + "enum": [ + "BATTERY_PLUGGED_MODE_UNSPECIFIED", + "AC", + "USB", + "WIRELESS" + ], + "type": "string" + }, + "type": "array" + }, + "systemUpdate": { + "$ref": "SystemUpdate", + "description": "The system update policy, which controls how OS updates are applied. If the update type is WINDOWED, the update window will automatically apply to Play app updates as well." + }, + "tetheringConfigDisabled": { + "description": "Whether configuring tethering and portable hotspots is disabled.", "type": "boolean" }, - "bluetoothContactSharingDisabled": { - "description": "Whether bluetooth contact sharing is disabled.", + "uninstallAppsDisabled": { + "description": "Whether user uninstallation of applications is disabled.", "type": "boolean" }, - "bluetoothConfigDisabled": { - "description": "Whether configuring bluetooth is disabled.", - "type": "boolean" - }, - "cellBroadcastsConfigDisabled": { - "description": "Whether configuring cell broadcast is disabled.", + "unmuteMicrophoneDisabled": { + "description": "Whether the microphone is muted and adjusting microphone volume is disabled.", "type": "boolean" }, "usbFileTransferDisabled": { "description": "Whether transferring files over USB is disabled.", "type": "boolean" }, - "removeUserDisabled": { - "description": "Whether removing other users is disabled.", + "usbMassStorageEnabled": { + "description": "Allows admins to toggle whether USB storge is enabled or disabled on user's devices. Next ID: 113", + "type": "boolean" + }, + "version": { + "description": "The version of the policy. This is a read-only field. The version is incremented each time the policy is updated.", + "format": "int64", + "type": "string" + }, + "vpnConfigDisabled": { + "description": "Whether configuring VPN is disabled.", + "type": "boolean" + }, + "wifiConfigDisabled": { + "description": "Whether configuring Wi-Fi access points is disabled.", "type": "boolean" }, "wifiConfigsLockdownEnabled": { - "description": "Whether WiFi networks defined in Open Network Configuration are locked so they cannot be edited by the user.", - "type": "boolean" - }, - "createWindowsDisabled": { - "description": "Whether creating windows besides app windows is disabled.", - "type": "boolean" - }, - "persistentPreferredActivities": { - "description": "Default intent handler activities.", - "type": "array", - "items": { - "$ref": "PersistentPreferredActivity" - } - }, - "blockApplicationsEnabled": { - "description": "Whether applications other than the ones configured in applications are blocked from being installed. When set, applications that were installed under a previous policy but no longer appear in the policy are automatically uninstalled.", - "type": "boolean" - }, - "debuggingFeaturesAllowed": { - "description": "Whether the user is allowed to enable debugging features.", + "description": "Whether Wi-Fi networks defined in Open Network Configuration are locked so they can't be edited by the user.", "type": "boolean" } }, - "id": "Policy" - }, - "Command": { - "description": "A command.", - "type": "object", - "properties": { - "duration": { - "description": "The duration for which the command is valid. The command will expire if not executed by the device during this time. The default duration if unspecified is ten minutes. There is no maximum duration.", - "type": "string", - "format": "google-duration" - }, - "newPassword": { - "description": "For commands of type RESET_PASSWORD, optionally specifies the new password.", - "type": "string" - }, - "type": { - "description": "The type of the command.", - "enum": [ - "COMMAND_TYPE_UNSPECIFIED", - "LOCK", - "RESET_PASSWORD", - "REBOOT" - ], - "enumDescriptions": [ - "This value is disallowed.", - "Lock the device, as if the lock screen timeout had expired.", - "Reset the user's password.", - "Reboot the device. Only supported on API level 24+." - ], - "type": "string" - }, - "createTime": { - "description": "The timestamp at which the command was created. The timestamp is automatically generated by the server.", - "type": "string", - "format": "google-datetime" - }, - "resetPasswordFlags": { - "description": "For commands of type RESET_PASSWORD, optionally specifies flags.", - "enumDescriptions": [ - "This value is ignored.", - "Don't allow other admins to change the password again until the user has entered it.", - "Don't ask for user credentials on device boot.", - "Lock the device after password reset." - ], - "type": "array", - "items": { - "enum": [ - "RESET_PASSWORD_FLAG_UNSPECIFIED", - "REQUIRE_ENTRY", - "DO_NOT_ASK_CREDENTIALS_ON_BOOT", - "LOCK_NOW" - ], - "type": "string" - } - } - }, - "id": "Command" - }, - "ComplianceRule": { - "description": "A rule declaring which mitigating actions to take when a device is not compliant with its policy. For every rule, there is always an implicit mitigating action to set policy_compliant to false for the Device resource, and display a message on the device indicating that the device is not compliant with its policy. Other mitigating actions may optionally be taken as well, depending on the field values in the rule.", - "type": "object", - "properties": { - "nonComplianceDetailCondition": { - "description": "A condition which is satisfied if there exists any matching NonComplianceDetail for the device.", - "$ref": "NonComplianceDetailCondition" - }, - "disableApps": { - "description": "If set to true, the rule includes a mitigating action to disable applications so that the device is effectively disabled, but application data is preserved. If the device is running an app in locked task mode, the app will be closed and a UI showing the reason for non-compliance will be displayed.", - "type": "boolean" - }, - "apiLevelCondition": { - "description": "A condition which is satisfied if the Android Framework API level on the device does not meet a minimum requirement.", - "$ref": "ApiLevelCondition" - } - }, - "id": "ComplianceRule" - }, - "ListPoliciesResponse": { - "description": "Response to a request to list policies for a given enterprise.", - "type": "object", - "properties": { - "policies": { - "description": "The list of policies.", - "type": "array", - "items": { - "$ref": "Policy" - } - }, - "nextPageToken": { - "description": "If there are more results, a token to retrieve next page of results.", - "type": "string" - } - }, - "id": "ListPoliciesResponse" - }, - "StatusReportingSettings": { - "description": "Settings controlling the behavior of status reports.", - "type": "object", - "properties": { - "displayInfoEnabled": { - "description": "Whether displays reporting is enabled.", - "type": "boolean" - }, - "hardwareStatusEnabled": { - "description": "Whether hardware status reporting is enabled.", - "type": "boolean" - }, - "deviceSettingsEnabled": { - "description": "Whether device settings reporting is enabled.", - "type": "boolean" - }, - "softwareInfoEnabled": { - "description": "Whether software info reporting is enabled.", - "type": "boolean" - }, - "memoryInfoEnabled": { - "description": "Whether memory info reporting is enabled.", - "type": "boolean" - }, - "powerManagementEventsEnabled": { - "description": "Whether power management event reporting is enabled.", - "type": "boolean" - }, - "networkInfoEnabled": { - "description": "Whether network info reporting is enabled.", - "type": "boolean" - } - }, - "id": "StatusReportingSettings" - }, - "Display": { - "description": "Device display information.", - "type": "object", - "properties": { - "refreshRate": { - "description": "Refresh rate of the display in frames per second.", - "type": "integer", - "format": "int32" - }, - "state": { - "description": "State of the display.", - "enum": [ - "DISPLAY_STATE_UNSPECIFIED", - "OFF", - "ON", - "DOZE", - "SUSPENDED" - ], - "enumDescriptions": [ - "This value is disallowed.", - "Display is off.", - "Display is on.", - "Display is dozing in a low power state", - "Display is dozing in a suspended low power state." - ], - "type": "string" - }, - "width": { - "description": "Display width in pixels.", - "type": "integer", - "format": "int32" - }, - "displayId": { - "description": "Unique display id.", - "type": "integer", - "format": "int32" - }, - "name": { - "description": "Name of the display.", - "type": "string" - }, - "density": { - "description": "Display density expressed as dots-per-inch.", - "type": "integer", - "format": "int32" - }, - "height": { - "description": "Display height in pixels.", - "type": "integer", - "format": "int32" - } - }, - "id": "Display" - }, - "SignupUrl": { - "description": "An enterprise signup URL.", - "type": "object", - "properties": { - "url": { - "description": "A URL under which the Admin can sign up for an enterprise. The page pointed to cannot be rendered in an iframe.", - "type": "string" - }, - "name": { - "description": "The name of the resource. This must be included in the create enterprise request at the end of the signup flow.", - "type": "string" - } - }, - "id": "SignupUrl" - }, - "EnrollmentToken": { - "description": "An enrollment token.", - "type": "object", - "properties": { - "expirationTimestamp": { - "description": "The expiration time of the token. This is a read-only field generated by the server.", - "type": "string", - "format": "google-datetime" - }, - "policyName": { - "description": "The name of the policy that will be initially applied to the enrolled device in the form enterprises/{enterpriseId}/policies/{policyId}. If not specified, the policy_name for the user that owns the device is applied. If user_name also isn't specified, the policy defaults to enterprises/{enterpriseId}/policies/default. It is permissible to only specify the policyId when updating this field as long as the policyId contains no slashes since the rest of the policy name can be inferred from context.", - "type": "string" - }, - "name": { - "description": "The name of the enrollment token, which is generated by the server during creation, in the form enterprises/{enterpriseId}/enrollmentTokens/{enrollmentTokenId}", - "type": "string" - }, - "duration": { - "description": "The duration of the token. If not specified, the duration will be 1 hour. The allowed range is 1 minute to 30 days.", - "type": "string", - "format": "google-duration" - }, - "value": { - "description": "The token value which is passed to the device and authorizes the device to enroll. This is a read-only field generated by the server.", - "type": "string" - }, - "additionalData": { - "description": "Optional, arbitrary data associated with the enrollment token. This could contain, for example, the id of an org unit to which the device is assigned after enrollment. After a device enrolls with the token, this data will be exposed in the enrollment_token_data field of the Device resource. The data must be 1024 characters or less; otherwise, the creation request will fail.", - "type": "string" - }, - "qrCode": { - "description": "A JSON string whose UTF-8 representation can be used to generate a QR code to enroll a device with this enrollment token. To enroll a device using NFC, the NFC record must contain a serialized java.util.Properties representation of the properties in the JSON.", - "type": "string" - } - }, - "id": "EnrollmentToken" - }, - "SoftwareInfo": { - "description": "Information about device software.", - "type": "object", - "properties": { - "androidVersion": { - "description": "The user visible Android version string, e.g. 6.0.1.", - "type": "string" - }, - "androidBuildNumber": { - "description": "Android build Id string meant for displaying to the user, e.g. shamu-userdebug 6.0.1 MOB30I 2756745 dev-keys.", - "type": "string" - }, - "androidDevicePolicyVersionName": { - "description": "The Android Device Policy app version as displayed to the user.", - "type": "string" - }, - "androidBuildTime": { - "description": "Build time.", - "type": "string", - "format": "google-datetime" - }, - "bootloaderVersion": { - "description": "The system bootloader version number, e.g. 0.6.7.", - "type": "string" - }, - "securityPatchLevel": { - "description": "Security patch level, e.g. 2016-05-01.", - "type": "string" - }, - "deviceKernelVersion": { - "description": "Kernel version, e.g. 2.6.32.9-g103d848.", - "type": "string" - }, - "androidDevicePolicyVersionCode": { - "description": "The Android Device Policy app version code.", - "type": "integer", - "format": "int32" - } - }, - "id": "SoftwareInfo" - }, - "ManagedPropertyEntry": { - "description": "An entry of a managed property.", - "type": "object", - "properties": { - "value": { - "description": "The machine-readable value of the entry, which should be used in the configuration. Not localized.", - "type": "string" - }, - "name": { - "description": "The human-readable name of the value. Localized.", - "type": "string" - } - }, - "id": "ManagedPropertyEntry" - }, - "WebToken": { - "description": "A web token used to access an embeddable managed Google Play web UI.", - "type": "object", - "properties": { - "value": { - "description": "The token value which is used in the hosting page to generate the iframe with the embedded UI. This is a read-only field generated by the server.", - "type": "string" - }, - "permissions": { - "description": "Permissions the admin may exercise in the embedded UI. The admin must have all of these permissions in order to view the UI.", - "enumDescriptions": [ - "This value is ignored.", - "The permission to approve apps for the enterprise." - ], - "type": "array", - "items": { - "enum": [ - "WEB_TOKEN_PERMISSION_UNSPECIFIED", - "APPROVE_APPS" - ], - "type": "string" - } - }, - "name": { - "description": "The name of the web token, which is generated by the server during creation, in the form enterprises/{enterpriseId}/webTokens/{webTokenId}.", - "type": "string" - }, - "parentFrameUrl": { - "description": "The URL of the parent frame hosting the iframe with the embedded UI. To prevent XSS, the iframe may not be hosted at other URLs. The URL must use the https scheme.", - "type": "string" - } - }, - "id": "WebToken" - }, - "Enterprise": { - "description": "The configuration applied to an enterprise.", - "type": "object", - "properties": { - "pubsubTopic": { - "description": "When Cloud Pub/Sub notifications are enabled, this field is required to indicate the topic to which the notifications will be published. The format of this field is projects/{project}/topics/{topic}. You must have granted the publish permission on this topic to android-cloud-policy@system.gserviceaccount.com", - "type": "string" - }, - "logo": { - "description": "An image displayed as a logo during device provisioning. Supported types are: image/bmp, image/gif, image/x-ico, image/jpeg, image/png, image/webp, image/vnd.wap.wbmp, image/x-adobe-dng.", - "$ref": "ExternalData" - }, - "enabledNotificationTypes": { - "description": "The notification types to enable via Google Cloud Pub/Sub.", - "enumDescriptions": [ - "This value is ignored.", - "A notification sent when a device enrolls.", - "A notification sent when a device issues a policy compliance report.", - "A notification sent when a device issues a status report.", - "A notification sent when a device command has completed." - ], - "type": "array", - "items": { - "enum": [ - "NOTIFICATION_TYPE_UNSPECIFIED", - "ENROLLMENT", - "COMPLIANCE_REPORT", - "STATUS_REPORT", - "COMMAND" - ], - "type": "string" - } - }, - "name": { - "description": "The name of the enterprise which is generated by the server during creation, in the form enterprises/{enterpriseId}", - "type": "string" - }, - "primaryColor": { - "description": "A color in RGB format indicating the predominant color to display in the device management app UI. The color components are stored as follows: (red \u003c\u003c 16) | (green \u003c\u003c 8) | blue, where each component may take a value between 0 and 255 inclusive.", - "type": "integer", - "format": "int32" - }, - "appAutoApprovalEnabled": { - "description": "Whether app auto-approval is enabled. When enabled, apps installed via policy for this enterprise have all permissions automatically approved. When enabled, it is the caller's responsibility to display the permissions required by an app to the enterprise admin before setting the app to be installed in a policy.", - "type": "boolean" - }, - "enterpriseDisplayName": { - "description": "The name of the enterprise as it will appear to users.", - "type": "string" - } - }, - "id": "Enterprise" - }, - "ListOperationsResponse": { - "description": "The response message for Operations.ListOperations.", - "type": "object", - "properties": { - "nextPageToken": { - "description": "The standard List next-page token.", - "type": "string" - }, - "operations": { - "description": "A list of operations that matches the specified filter in the request.", - "type": "array", - "items": { - "$ref": "Operation" - } - } - }, - "id": "ListOperationsResponse" - }, - "MemoryEvent": { - "description": "An event related to memory and storage measurements.", - "type": "object", - "properties": { - "byteCount": { - "description": "The number of free bytes in the medium, or for EXTERNAL_STORAGE_DETECTED, the total capacity in bytes of the storage medium.", - "type": "string", - "format": "int64" - }, - "eventType": { - "description": "Event type.", - "enum": [ - "MEMORY_EVENT_TYPE_UNSPECIFIED", - "RAM_MEASURED", - "INTERNAL_STORAGE_MEASURED", - "EXTERNAL_STORAGE_DETECTED", - "EXTERNAL_STORAGE_REMOVED", - "EXTERNAL_STORAGE_MEASURED" - ], - "enumDescriptions": [ - "Unspecified. No events have this type.", - "Free space in RAM was measured.", - "Free space in internal storage was measured.", - "A new external storage medium was detected. The reported byte count is the total capacity of the storage medium.", - "An external storage medium was removed. The reported byte count is zero.", - "Free space in an external storage medium was measured." - ], - "type": "string" - }, - "createTime": { - "description": "The creation time of the event.", - "type": "string", - "format": "google-datetime" - } - }, - "id": "MemoryEvent" - }, - "ExternalData": { - "description": "Data hosted at an external location. The data is to be downloaded by Android Device Policy and verified against the hash.", - "type": "object", - "properties": { - "url": { - "description": "The absolute URL to the data, which must use either the http or https scheme. Android Device Policy does not provide any credentials in the GET request, so the URL must be publicly accessible. Including a long, random component in the URL may be used to prevent attackers from discovering the URL.", - "type": "string" - }, - "sha256Hash": { - "description": "The base-64 encoded SHA-256 hash of the content hosted at url. If the content does not match this hash, Android Device Policy will not use the data.", - "type": "string" - } - }, - "id": "ExternalData" - }, - "UserFacingMessage": { - "description": "Provides user facing message with locale info. The maximum message length is 4096 characters.", - "type": "object", - "properties": { - "localizedMessages": { - "description": "A map which contains \u003clocale, message\u003e pairs. The locale is a BCP 47 language code, e.g. en-US, es-ES, fr.", - "additionalProperties": { - "type": "string" - }, - "type": "object" - }, - "defaultMessage": { - "description": "The default message that gets displayed if no localized message is specified, or the user's locale does not match with any of the localized messages. A default message must be provided if any localized messages are provided.", - "type": "string" - } - }, - "id": "UserFacingMessage" + "type": "object" }, "PowerManagementEvent": { "description": "A power management event.", - "type": "object", + "id": "PowerManagementEvent", "properties": { "batteryLevel": { "description": "For BATTERY_LEVEL_COLLECTED events, the battery level as a percentage.", - "type": "number", - "format": "float" + "format": "float", + "type": "number" + }, + "createTime": { + "description": "The creation time of the event.", + "format": "google-datetime", + "type": "string" }, "eventType": { "description": "Event type.", @@ -2136,302 +2532,172 @@ "The device shut down." ], "type": "string" - }, - "createTime": { - "description": "The creation time of the event.", - "type": "string", - "format": "google-datetime" } }, - "id": "PowerManagementEvent" + "type": "object" }, - "PasswordRequirements": { - "description": "Requirements for the password used to unlock a device.", - "type": "object", + "ProxyInfo": { + "description": "Configuration info for an HTTP proxy. For a direct proxy, set the host, port, and excluded_hosts fields. For a PAC script proxy, set the pac_uri field.", + "id": "ProxyInfo", "properties": { - "passwordMinimumNumeric": { - "description": "Minimum number of numerical digits required in the password. Only enforced when password_quality is COMPLEX.", - "type": "integer", - "format": "int32" + "excludedHosts": { + "description": "For a direct proxy, the hosts for which the proxy is bypassed. The host names may contain wildcards such as *.example.com.", + "items": { + "type": "string" + }, + "type": "array" }, - "passwordMinimumNonLetter": { - "description": "Minimum number of non-letter characters (numerical digits or symbols) required in the password. Only enforced when password_quality is COMPLEX.", - "type": "integer", - "format": "int32" - }, - "maximumFailedPasswordsForWipe": { - "description": "A device will be wiped after too many incorrect device-unlock passwords have been entered. A value of 0 means there is no restriction.", - "type": "integer", - "format": "int32" - }, - "passwordMinimumLetters": { - "description": "Minimum number of letters required in the password. Only enforced when password_quality is COMPLEX.", - "type": "integer", - "format": "int32" - }, - "passwordMinimumUpperCase": { - "description": "Minimum number of upper case letters required in the password. Only enforced when password_quality is COMPLEX.", - "type": "integer", - "format": "int32" - }, - "passwordQuality": { - "description": "The required password quality.", - "enum": [ - "PASSWORD_QUALITY_UNSPECIFIED", - "BIOMETRIC_WEAK", - "SOMETHING", - "NUMERIC", - "NUMERIC_COMPLEX", - "ALPHABETIC", - "ALPHANUMERIC", - "COMPLEX" - ], - "enumDescriptions": [ - "There are no requirements for the password.", - "There must be at least low-security biometric recognition technology to secure the device. This includes technologies that can recognize the identity of an individual to about a 3 digit PIN (false detection is less than 1 in 1,000).", - "There must be a password, but there are no restrictions on its characters.", - "The password must contain numeric characters.", - "The password must contain numeric characters with no repeating (4444) or ordered (1234, 4321, 2468) sequences.", - "The password must contain alphabetic (or symbol) characters.", - "The password must contain at both numeric and alphabetic (or symbol) characters.", - "The password must contain at least a letter, a numerical digit and a special symbol. Other password constraints, for example, password_minimum_letters are enforced." - ], + "host": { + "description": "The host of the direct proxy.", "type": "string" }, - "passwordMinimumLength": { - "description": "The minimum allowed password length. A value of 0 means there is no restriction. Only enforced when password_quality is NUMERIC, NUMERIC_COMPLEX, ALPHABETIC, ALPHANUMERIC, or COMPLEX.", - "type": "integer", - "format": "int32" + "pacUri": { + "description": "The URI of the PAC script used to configure the proxy.", + "type": "string" }, - "passwordExpirationTimeout": { - "description": "Password expiration timeout.", - "type": "string", - "format": "google-duration" - }, - "passwordMinimumSymbols": { - "description": "Minimum number of symbols required in the password. Only enforced when password_quality is COMPLEX.", - "type": "integer", - "format": "int32" - }, - "passwordHistoryLength": { - "description": "The length of the password history. After setting this, the user will not be able to enter a new password that is the same as any password in the history. A value of 0 means there is no restriction.", - "type": "integer", - "format": "int32" - }, - "passwordMinimumLowerCase": { - "description": "Minimum number of lower case letters required in the password. Only enforced when password_quality is COMPLEX.", - "type": "integer", - "format": "int32" + "port": { + "description": "The port of the direct proxy.", + "format": "int32", + "type": "integer" } }, - "id": "PasswordRequirements" + "type": "object" }, - "HardwareInfo": { - "description": "Information about device hardware. The fields related to temperature thresholds are only available when hardwareStatusEnabled is true in the device's policy.", - "type": "object", + "SignupUrl": { + "description": "An enterprise signup URL.", + "id": "SignupUrl", "properties": { - "gpuThrottlingTemperatures": { - "description": "GPU throttling temperature thresholds in Celsius for each GPU on the device.", - "type": "array", - "items": { - "type": "number", - "format": "float" - } - }, - "cpuShutdownTemperatures": { - "description": "CPU shutdown temperature thresholds in Celsius for each CPU on the device.", - "type": "array", - "items": { - "type": "number", - "format": "float" - } - }, - "gpuShutdownTemperatures": { - "description": "GPU shutdown temperature thresholds in Celsius for each GPU on the device.", - "type": "array", - "items": { - "type": "number", - "format": "float" - } - }, - "manufacturer": { - "description": "Manufacturer, e.g. Motorola.", + "name": { + "description": "The name of the resource. Use this value in the signupUrl field when calling enterprises.create to complete the enterprise signup flow.", "type": "string" }, - "model": { - "description": "The model of the device, e.g. Asus Nexus 7.", - "type": "string" - }, - "serialNumber": { - "description": "The device serial number.", - "type": "string" - }, - "brand": { - "description": "Brand of the device, e.g. Google.", - "type": "string" - }, - "cpuThrottlingTemperatures": { - "description": "CPU throttling temperature thresholds in Celsius for each CPU on the device.", - "type": "array", - "items": { - "type": "number", - "format": "float" - } - }, - "skinThrottlingTemperatures": { - "description": "Device skin throttling temperature thresholds in Celsius.", - "type": "array", - "items": { - "type": "number", - "format": "float" - } - }, - "deviceBasebandVersion": { - "description": "Baseband version, e.g. MDM9625_104662.22.05.34p.", - "type": "string" - }, - "hardware": { - "description": "Name of the hardware, e.g. Angler.", - "type": "string" - }, - "skinShutdownTemperatures": { - "description": "Device skin shutdown temperature thresholds in Celsius.", - "type": "array", - "items": { - "type": "number", - "format": "float" - } - }, - "batteryShutdownTemperatures": { - "description": "Battery shutdown temperature thresholds in Celsius for each battery on the device.", - "type": "array", - "items": { - "type": "number", - "format": "float" - } - }, - "batteryThrottlingTemperatures": { - "description": "Battery throttling temperature thresholds in Celsius for each battery on the device.", - "type": "array", - "items": { - "type": "number", - "format": "float" - } - } - }, - "id": "HardwareInfo" - }, - "Empty": { - "description": "A generic empty message that you can re-use to avoid defining duplicated empty messages in your APIs. A typical example is to use it as the request or the response type of an API method. For instance:\nservice Foo {\n rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty);\n}\nThe JSON representation for Empty is empty JSON object {}.", - "type": "object", - "properties": {}, - "id": "Empty" - }, - "NetworkInfo": { - "description": "Device network info.", - "type": "object", - "properties": { - "meid": { - "description": "MEID number of the CDMA device, e.g. A00000292788E1.", - "type": "string" - }, - "wifiMacAddress": { - "description": "WiFi MAC address of the device, e.g. 7c:11:11:11:11:11.", - "type": "string" - }, - "imei": { - "description": "IMEI number of the GSM device, e.g. A1000031212.", + "url": { + "description": "A URL where an enterprise admin can register their enterprise. The page can't be rendered in an iframe.", "type": "string" } }, - "id": "NetworkInfo" + "type": "object" }, - "MemoryInfo": { - "description": "Information about device memory and storage.", - "type": "object", + "SoftwareInfo": { + "description": "Information about device software.", + "id": "SoftwareInfo", "properties": { - "totalRam": { - "description": "Total RAM on device in bytes.", - "type": "string", - "format": "int64" + "androidBuildNumber": { + "description": "Android build ID string meant for displaying to the user. For example, shamu-userdebug 6.0.1 MOB30I 2756745 dev-keys.", + "type": "string" }, - "totalInternalStorage": { - "description": "Total internal storage on device in bytes.", - "type": "string", - "format": "int64" + "androidBuildTime": { + "description": "Build time.", + "format": "google-datetime", + "type": "string" + }, + "androidDevicePolicyVersionCode": { + "description": "The Android Device Policy app version code.", + "format": "int32", + "type": "integer" + }, + "androidDevicePolicyVersionName": { + "description": "The Android Device Policy app version as displayed to the user.", + "type": "string" + }, + "androidVersion": { + "description": "The user-visible Android version string. For example, 6.0.1.", + "type": "string" + }, + "bootloaderVersion": { + "description": "The system bootloader version number, e.g. 0.6.7.", + "type": "string" + }, + "deviceBuildSignature": { + "description": "SHA-256 hash of android.content.pm.Signature (https://developer.android.com/reference/android/content/pm/Signature.html) associated with the system package, which can be used to verify that the system build hasn't been modified.", + "type": "string" + }, + "deviceKernelVersion": { + "description": "Kernel version, for example, 2.6.32.9-g103d848.", + "type": "string" + }, + "securityPatchLevel": { + "description": "Security patch level, e.g. 2016-05-01.", + "type": "string" } }, - "id": "MemoryInfo" + "type": "object" }, - "ApiLevelCondition": { - "description": "A compliance rule condition which is satisfied if the Android Framework API level on the device does not meet a minimum requirement. There can only be one rule with this type of condition per policy.", - "type": "object", + "Status": { + "description": "The Status type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by gRPC (https://github.com/grpc). The error model is designed to be:\nSimple to use and understand for most users\nFlexible enough to meet unexpected needsOverviewThe Status message contains three pieces of data: error code, error message, and error details. The error code should be an enum value of google.rpc.Code, but it may accept additional error codes if needed. The error message should be a developer-facing English message that helps developers understand and resolve the error. If a localized user-facing error message is needed, put the localized message in the error details or localize it in the client. The optional error details may contain arbitrary information about the error. There is a predefined set of error detail types in the package google.rpc that can be used for common error conditions.Language mappingThe Status message is the logical representation of the error model, but it is not necessarily the actual wire format. When the Status message is exposed in different client libraries and different wire protocols, it can be mapped differently. For example, it will likely be mapped to some exceptions in Java, but more likely mapped to some error codes in C.Other usesThe error model and the Status message can be used in a variety of environments, either with or without APIs, to provide a consistent developer experience across different environments.Example uses of this error model include:\nPartial errors. If a service needs to return partial errors to the client, it may embed the Status in the normal response to indicate the partial errors.\nWorkflow errors. A typical workflow has multiple steps. Each step may have a Status message for error reporting.\nBatch operations. If a client uses batch request and batch response, the Status message should be used directly inside batch response, one for each error sub-response.\nAsynchronous operations. If an API call embeds asynchronous operation results in its response, the status of those operations should be represented directly using the Status message.\nLogging. If some API errors are stored in logs, the message Status could be used directly after any stripping needed for security/privacy reasons.", + "id": "Status", "properties": { - "minApiLevel": { - "description": "The minimum desired Android Framework API level. If the device does not meet the minimum requirement, this condition is satisfied. Must be greater than zero.", - "type": "integer", - "format": "int32" + "code": { + "description": "The status code, which should be an enum value of google.rpc.Code.", + "format": "int32", + "type": "integer" + }, + "details": { + "description": "A list of messages that carry the error details. There is a common set of message types for APIs to use.", + "items": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the google.rpc.Status.details field, or localized by the client.", + "type": "string" } }, - "id": "ApiLevelCondition" + "type": "object" }, - "DeviceSettings": { - "description": "Information about security related device settings on device.", - "type": "object", + "StatusReportingSettings": { + "description": "Settings controlling the behavior of status reports.", + "id": "StatusReportingSettings", "properties": { - "developmentSettingsEnabled": { - "description": "If the developer mode is enabled Settings.Global.DEVELOPMENT_SETTINGS_ENABLED.", + "deviceSettingsEnabled": { + "description": "Whether device settings reporting is enabled.", "type": "boolean" }, - "adbEnabled": { - "description": "If the ADB is enabled Settings.Global.ADB_ENABLED.", + "displayInfoEnabled": { + "description": "Whether displays reporting is enabled.", "type": "boolean" }, - "isDeviceSecure": { - "description": "Device secured with PIN/password.", + "hardwareStatusEnabled": { + "description": "Whether hardware status reporting is enabled.", "type": "boolean" }, - "isEncrypted": { - "description": "Whether the storage encryption is enabled DevicePolicyManager.ENCRYPTION_STATUS_ACTIVE or DevicePolicyManager.ENCRYPTION_STATUS_ACTIVE_PER_USER in N+ devices.", + "memoryInfoEnabled": { + "description": "Whether memory info reporting is enabled.", "type": "boolean" }, - "unknownSourcesEnabled": { - "description": "If installing apps from unknown sources is enabled. Settings.Secure.INSTALL_NON_MARKET_APPS.", + "networkInfoEnabled": { + "description": "Whether network info reporting is enabled.", "type": "boolean" }, - "encryptionStatus": { - "description": "Encryption status from DevicePolicyManager.", - "enum": [ - "ENCRYPTION_STATUS_UNSPECIFIED", - "UNSUPPORTED", - "INACTIVE", - "ACTIVATING", - "ACTIVE", - "ACTIVE_DEFAULT_KEY", - "ACTIVE_PER_USER" - ], - "enumDescriptions": [ - "Unspecified. No device should have this type.", - "Encryption is not supported by the device.", - "Encryption is supported by the device, but not currently active.", - "Encryption is not currently active, but is currently being activated.", - "Encryption is active", - "Encryption is active, but an encryption key is not set by the user", - "Encrpyiton is active, and the encryption key is tied to the user profile." - ], - "type": "string" + "powerManagementEventsEnabled": { + "description": "Whether power management event reporting is enabled.", + "type": "boolean" + }, + "softwareInfoEnabled": { + "description": "Whether software info reporting is enabled.", + "type": "boolean" } }, - "id": "DeviceSettings" + "type": "object" }, "SystemUpdate": { "description": "Configuration for managing system updates", - "type": "object", + "id": "SystemUpdate", "properties": { + "endMinutes": { + "description": "If the type is WINDOWED, the end of the maintenance window, measured as the number of minutes after midnight in device's local time. This value must be between 0 and 1439, inclusive. If this value is less than start_minutes, then the maintenance window spans midnight. If the maintenance window specified is smaller than 30 minutes, the actual window is extended to 30 minutes beyond the start time.", + "format": "int32", + "type": "integer" + }, "startMinutes": { - "description": "If the type is WINDOWED, the start of the maintenance window, measured as the number of minutes after midnight in device local time. This value must be between 0 and 1439, inclusive.", - "type": "integer", - "format": "int32" + "description": "If the type is WINDOWED, the start of the maintenance window, measured as the number of minutes after midnight in the device's local time. This value must be between 0 and 1439, inclusive.", + "format": "int32", + "type": "integer" }, "type": { "description": "The type of system update to configure.", @@ -2448,182 +2714,65 @@ "Postpone automatic install up to a maximum of 30 days." ], "type": "string" - }, - "endMinutes": { - "description": "If the type is WINDOWED, the end of the maintenance window, measured as the number of minutes after midnight in device local time. This value must be between 0 and 1439, inclusive. If this value is less than start_minutes, then the maintenance window spans midnight. If the maintenance window specified is smaller than 30 minutes, the actual window is extended to 30 minutes beyond the start time.", - "type": "integer", - "format": "int32" } }, - "id": "SystemUpdate" + "type": "object" }, - "HardwareStatus": { - "description": "Hardware status. Temperatures may be compared to the temperature thresholds available in hardwareInfo to determine hardware health.", - "type": "object", + "UserFacingMessage": { + "description": "Provides a user-facing message with locale info. The maximum message length is 4096 characters.", + "id": "UserFacingMessage", "properties": { - "fanSpeeds": { - "description": "Fan speeds in RPM for each fan on the device. Empty array means that there are no fans or fan speed is not supported on the system.", - "type": "array", - "items": { - "type": "number", - "format": "float" - } + "defaultMessage": { + "description": "The default message displayed if no localized message is specified or the user's locale doesn't match with any of the localized messages. A default message must be provided if any localized messages are provided.", + "type": "string" }, - "skinTemperatures": { - "description": "Current device skin temperatures in Celsius.", - "type": "array", - "items": { - "type": "number", - "format": "float" - } - }, - "createTime": { - "description": "The time the measurements were taken.", - "type": "string", - "format": "google-datetime" - }, - "batteryTemperatures": { - "description": "Current battery temperatures in Celsius for each battery on the device.", - "type": "array", - "items": { - "type": "number", - "format": "float" - } - }, - "cpuTemperatures": { - "description": "Current CPU temperatures in Celsius for each CPU on the device.", - "type": "array", - "items": { - "type": "number", - "format": "float" - } - }, - "gpuTemperatures": { - "description": "Current GPU temperatures in Celsius for each GPU on the device.", - "type": "array", - "items": { - "type": "number", - "format": "float" - } - }, - "cpuUsages": { - "description": "CPU usages in percentage for each core available on the device. Usage is 0 for each unplugged core. Empty array implies that CPU usage is not supported in the system.", - "type": "array", - "items": { - "type": "number", - "format": "float" - } + "localizedMessages": { + "additionalProperties": { + "type": "string" + }, + "description": "A map containing \u003clocale, message\u003e pairs, where locale is a well-formed BCP 47 language (https://www.w3.org/International/articles/language-tags/) code, such as en-US, es-ES, or fr.", + "type": "object" } }, - "id": "HardwareStatus" + "type": "object" + }, + "WebToken": { + "description": "A web token used to access the managed Google Play iframe.", + "id": "WebToken", + "properties": { + "name": { + "description": "The name of the web token, which is generated by the server during creation in the form enterprises/{enterpriseId}/webTokens/{webTokenId}.", + "type": "string" + }, + "parentFrameUrl": { + "description": "The URL of the parent frame hosting the iframe with the embedded UI. To prevent XSS, the iframe may not be hosted at other URLs. The URL must use the https scheme.", + "type": "string" + }, + "permissions": { + "description": "Permissions available to an admin in the embedded UI. An admin must have all of these permissions in order to view the UI.", + "enumDescriptions": [ + "This value is ignored.", + "The permission to approve apps for the enterprise." + ], + "items": { + "enum": [ + "WEB_TOKEN_PERMISSION_UNSPECIFIED", + "APPROVE_APPS" + ], + "type": "string" + }, + "type": "array" + }, + "value": { + "description": "The token value which is used in the hosting page to generate the iframe with the embedded UI. This is a read-only field generated by the server.", + "type": "string" + } + }, + "type": "object" } }, - "revision": "20180108", - "basePath": "", - "icons": { - "x32": "http://www.google.com/images/icons/product/search-32.gif", - "x16": "http://www.google.com/images/icons/product/search-16.gif" - }, - "version_module": true, - "canonicalName": "Android Management", - "discoveryVersion": "v1", - "fullyEncodeReservedExpansion": true, - "baseUrl": "https://androidmanagement.googleapis.com/", - "name": "androidmanagement", - "parameters": { - "access_token": { - "description": "OAuth access token.", - "type": "string", - "location": "query" - }, - "prettyPrint": { - "description": "Returns response with indentations and line breaks.", - "default": "true", - "type": "boolean", - "location": "query" - }, - "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.", - "type": "string", - "location": "query" - }, - "quotaUser": { - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", - "type": "string", - "location": "query" - }, - "pp": { - "description": "Pretty-print response.", - "default": "true", - "type": "boolean", - "location": "query" - }, - "fields": { - "description": "Selector specifying which fields to include in a partial response.", - "type": "string", - "location": "query" - }, - "alt": { - "description": "Data format for response.", - "location": "query", - "enum": [ - "json", - "media", - "proto" - ], - "default": "json", - "enumDescriptions": [ - "Responses with Content-Type of application/json", - "Media download with context-dependent Content-Type", - "Responses with Content-Type of application/x-protobuf" - ], - "type": "string" - }, - "$.xgafv": { - "description": "V1 error format.", - "enum": [ - "1", - "2" - ], - "enumDescriptions": [ - "v1 error format", - "v2 error format" - ], - "type": "string", - "location": "query" - }, - "callback": { - "description": "JSONP", - "type": "string", - "location": "query" - }, - "oauth_token": { - "description": "OAuth 2.0 token for the current user.", - "type": "string", - "location": "query" - }, - "uploadType": { - "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", - "type": "string", - "location": "query" - }, - "bearer_token": { - "description": "OAuth bearer token.", - "type": "string", - "location": "query" - }, - "upload_protocol": { - "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", - "type": "string", - "location": "query" - } - }, - "documentationLink": "https://developers.google.com/android/management", - "ownerDomain": "google.com", - "batchPath": "batch", "servicePath": "", - "ownerName": "Google", + "title": "Android Management API", "version": "v1", - "rootUrl": "https://androidmanagement.googleapis.com/", - "kind": "discovery#restDescription" -} + "version_module": true +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/androidmanagement/v1/androidmanagement-gen.go b/vendor/google.golang.org/api/androidmanagement/v1/androidmanagement-gen.go index c33d00f5e..3a6b6635d 100644 --- a/vendor/google.golang.org/api/androidmanagement/v1/androidmanagement-gen.go +++ b/vendor/google.golang.org/api/androidmanagement/v1/androidmanagement-gen.go @@ -201,12 +201,12 @@ func (s *AlwaysOnVpnPackage) MarshalJSON() ([]byte, error) { } // ApiLevelCondition: A compliance rule condition which is satisfied if -// the Android Framework API level on the device does not meet a minimum +// the Android Framework API level on the device doesn't meet a minimum // requirement. There can only be one rule with this type of condition // per policy. type ApiLevelCondition struct { // MinApiLevel: The minimum desired Android Framework API level. If the - // device does not meet the minimum requirement, this condition is + // device doesn't meet the minimum requirement, this condition is // satisfied. Must be greater than zero. MinApiLevel int64 `json:"minApiLevel,omitempty"` @@ -233,20 +233,20 @@ func (s *ApiLevelCondition) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -// Application: Application information. +// Application: Information about an app. type Application struct { // ManagedProperties: The set of managed properties available to be - // pre-configured for the application. + // pre-configured for the app. ManagedProperties []*ManagedProperty `json:"managedProperties,omitempty"` - // Name: The name of the application in the form - // enterprises/{enterpriseId}/applications/{package_name} + // Name: The name of the app in the form + // enterprises/{enterpriseId}/applications/{package_name}. Name string `json:"name,omitempty"` // Permissions: The permissions required by the app. Permissions []*ApplicationPermission `json:"permissions,omitempty"` - // Title: The title of the application. Localized. + // Title: The title of the app. Localized. Title string `json:"title,omitempty"` // ServerResponse contains the HTTP response code and headers from the @@ -277,10 +277,10 @@ func (s *Application) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -// ApplicationPermission: Application permission. +// ApplicationPermission: A permission required by the app. type ApplicationPermission struct { - // Description: A longer description of the permission, giving more - // details of what it affects. Localized. + // Description: A longer description of the permission, providing more + // detail on what it affects. Localized. Description string `json:"description,omitempty"` // Name: The name of the permission. Localized. @@ -328,19 +328,35 @@ type ApplicationPolicy struct { // "DENY" - Automatically deny a permission. DefaultPermissionPolicy string `json:"defaultPermissionPolicy,omitempty"` + // DelegatedScopes: The scopes delegated to the app from Android Device + // Policy. + // + // Possible values: + // "DELEGATED_SCOPE_UNSPECIFIED" - No delegation scope specified. + // "CERT_INSTALL" - Grants access to certificate installation and + // management. + // "MANAGED_CONFIGURATIONS" - Grants access to managed configurations + // management. + // "BLOCK_UNINSTALL" - Grants access to blocking uninstallation. + // "PERMISSION_GRANT" - Grants access to permission policy and + // permission grant state. + // "PACKAGE_ACCESS" - Grants access to package access state. + // "ENABLE_SYSTEM_APP" - Grants access for enabling system apps. + DelegatedScopes []string `json:"delegatedScopes,omitempty"` + // InstallType: The type of installation to perform. // // Possible values: // "INSTALL_TYPE_UNSPECIFIED" - No automatic installation is // performed. Any other app policies will be applied if the user // installs the app. - // "PREINSTALLED" - The application is automatically installed and can - // be removed by the user. - // "FORCE_INSTALLED" - The application is automatically installed and - // cannot be removed by the user. + // "PREINSTALLED" - The app is automatically installed and can be + // removed by the user. + // "FORCE_INSTALLED" - The app is automatically installed and can't be + // removed by the user. InstallType string `json:"installType,omitempty"` - // LockTaskAllowed: Whether the application is allowed to lock itself in + // LockTaskAllowed: Whether the app is allowed to lock itself in // full-screen mode. LockTaskAllowed bool `json:"lockTaskAllowed,omitempty"` @@ -359,7 +375,16 @@ type ApplicationPolicy struct { // BUNDLE_ARRAYarray of objects ManagedConfiguration googleapi.RawMessage `json:"managedConfiguration,omitempty"` - // PackageName: The package name of the app, e.g. + // MinimumVersionCode: The minimum version of the app that runs on the + // device. If set, the device attempts to update the app to at least + // this version code. If the app is not up-to-date, the device will + // contain a NonComplianceDetail with non_compliance_reason set to + // APP_NOT_UPDATED. The app must already be published to Google Play + // with a version code greater than or equal to this value. At most 20 + // apps may specify a minimum version code per policy. + MinimumVersionCode int64 `json:"minimumVersionCode,omitempty"` + + // PackageName: The package name of the app. For example, // com.google.android.youtube for the YouTube app. PackageName string `json:"packageName,omitempty"` @@ -404,6 +429,21 @@ type Command struct { // duration. Duration string `json:"duration,omitempty"` + // ErrorCode: If the command failed, an error code explaining the + // failure. This is not set when the command is cancelled by the caller. + // + // Possible values: + // "COMMAND_ERROR_CODE_UNSPECIFIED" - There was no error. + // "UNKNOWN" - An unknown error occurred. + // "API_LEVEL" - The API level of the device does not support this + // command. + // "MANAGEMENT_MODE" - The management mode (profile owner, device + // owner, etc.) does not support the command. + // "INVALID_VALUE" - The command has an invalid parameter value. + // "UNSUPPORTED" - The device doesn't support the command. Updating + // Android Device Policy to the latest version may resolve the issue. + ErrorCode string `json:"errorCode,omitempty"` + // NewPassword: For commands of type RESET_PASSWORD, optionally // specifies the new password. NewPassword string `json:"newPassword,omitempty"` @@ -430,6 +470,11 @@ type Command struct { // "REBOOT" - Reboot the device. Only supported on API level 24+. Type string `json:"type,omitempty"` + // UserName: The resource name of the user that owns the device in the + // form enterprises/{enterpriseId}/users/{userId}. This is automatically + // generated by the server based on the device the command is sent to. + UserName string `json:"userName,omitempty"` + // ForceSendFields is a list of field names (e.g. "CreateTime") to // unconditionally include in API requests. By default, fields with // empty values are omitted from API requests. However, any non-pointer, @@ -462,15 +507,14 @@ func (s *Command) MarshalJSON() ([]byte, error) { // field values in the rule. type ComplianceRule struct { // ApiLevelCondition: A condition which is satisfied if the Android - // Framework API level on the device does not meet a minimum - // requirement. + // Framework API level on the device doesn't meet a minimum requirement. ApiLevelCondition *ApiLevelCondition `json:"apiLevelCondition,omitempty"` // DisableApps: If set to true, the rule includes a mitigating action to - // disable applications so that the device is effectively disabled, but - // application data is preserved. If the device is running an app in - // locked task mode, the app will be closed and a UI showing the reason - // for non-compliance will be displayed. + // disable apps so that the device is effectively disabled, but app data + // is preserved. If the device is running an app in locked task mode, + // the app will be closed and a UI showing the reason for non-compliance + // will be displayed. DisableApps bool `json:"disableApps,omitempty"` // NonComplianceDetailCondition: A condition which is satisfied if there @@ -502,56 +546,57 @@ func (s *ComplianceRule) MarshalJSON() ([]byte, error) { } // Device: A device owned by an enterprise. Unless otherwise noted, all -// fields are read-only and cannot be modified by an update device -// request. +// fields are read-only and can't be modified by +// enterprises.devices.patch. type Device struct { // ApiLevel: The API level of the Android platform version running on // the device. ApiLevel int64 `json:"apiLevel,omitempty"` - // AppliedPolicyName: The name of the policy that is currently applied - // by the device. + // AppliedPolicyName: The name of the policy currently applied to the + // device. AppliedPolicyName string `json:"appliedPolicyName,omitempty"` - // AppliedPolicyVersion: The version of the policy that is currently - // applied by the device. + // AppliedPolicyVersion: The version of the policy currently applied to + // the device. AppliedPolicyVersion int64 `json:"appliedPolicyVersion,omitempty,string"` - // AppliedState: The state that is currently applied by the device. + // AppliedState: The state currently applied to the device. // // Possible values: // "DEVICE_STATE_UNSPECIFIED" - This value is disallowed. // "ACTIVE" - The device is active. // "DISABLED" - The device is disabled. // "DELETED" - The device was deleted. This state will never be - // returned by an API call, but will be used in the final policy - // compliance report published to Cloud Pub/Sub when the device - // acknowledges the deletion. + // returned by an API call, but is used in the final policy compliance + // report published to Cloud Pub/Sub when the device acknowledges the + // deletion. // "PROVISIONING" - The device is being provisioned. Newly enrolled - // devices will be in this state until they have applied policy. + // devices are in this state until they have a policy applied. AppliedState string `json:"appliedState,omitempty"` // DeviceSettings: Device settings information. This information is only - // available when deviceSettingsEnabled is true in the device's policy. + // available if deviceSettingsEnabled is true in the device's policy. DeviceSettings *DeviceSettings `json:"deviceSettings,omitempty"` // DisabledReason: If the device state is DISABLED, an optional message // that is displayed on the device indicating the reason the device is - // disabled. This field may be modified by an update request. + // disabled. This field can be modified by a patch request. DisabledReason *UserFacingMessage `json:"disabledReason,omitempty"` - // Displays: Displays on the device. This information is only available - // when displayInfoEnabled is true in the device's policy. + // Displays: Detailed information about displays on the device. This + // information is only available if displayInfoEnabled is true in the + // device's policy. Displays []*Display `json:"displays,omitempty"` // EnrollmentTime: The time of device enrollment. EnrollmentTime string `json:"enrollmentTime,omitempty"` - // EnrollmentTokenData: If this device was enrolled with an enrollment + // EnrollmentTokenData: If the device was enrolled with an enrollment // token with additional data provided, this field contains that data. EnrollmentTokenData string `json:"enrollmentTokenData,omitempty"` - // EnrollmentTokenName: If this device was enrolled with an enrollment + // EnrollmentTokenName: If the device was enrolled with an enrollment // token, this field contains the name of the token. EnrollmentTokenName string `json:"enrollmentTokenName,omitempty"` @@ -559,8 +604,8 @@ type Device struct { HardwareInfo *HardwareInfo `json:"hardwareInfo,omitempty"` // HardwareStatusSamples: Hardware status samples in chronological - // order. This information is only available when hardwareStatusEnabled - // is true in the device's policy. + // order. This information is only available if hardwareStatusEnabled is + // true in the device's policy. HardwareStatusSamples []*HardwareStatus `json:"hardwareStatusSamples,omitempty"` // LastPolicyComplianceReportTime: The last time the device sent a @@ -574,71 +619,70 @@ type Device struct { LastStatusReportTime string `json:"lastStatusReportTime,omitempty"` // MemoryEvents: Events related to memory and storage measurements in - // chronological order. This information is only available when + // chronological order. This information is only available if // memoryInfoEnabled is true in the device's policy. MemoryEvents []*MemoryEvent `json:"memoryEvents,omitempty"` - // MemoryInfo: Memory information. This information is only available - // when memoryInfoEnabled is true in the device's policy. + // MemoryInfo: Memory information. This information is only available if + // memoryInfoEnabled is true in the device's policy. MemoryInfo *MemoryInfo `json:"memoryInfo,omitempty"` // Name: The name of the device in the form - // enterprises/{enterpriseId}/devices/{deviceId} + // enterprises/{enterpriseId}/devices/{deviceId}. Name string `json:"name,omitempty"` // NetworkInfo: Device network information. This information is only - // available when networkInfoEnabled is true in the device's policy. + // available if networkInfoEnabled is true in the device's policy. NetworkInfo *NetworkInfo `json:"networkInfo,omitempty"` - // NonComplianceDetails: Details about policy settings for which the - // device is not in compliance. + // NonComplianceDetails: Details about policy settings that the device + // is not compliant with. NonComplianceDetails []*NonComplianceDetail `json:"nonComplianceDetails,omitempty"` // PolicyCompliant: Whether the device is compliant with its policy. PolicyCompliant bool `json:"policyCompliant,omitempty"` - // PolicyName: The name of the policy that is intended to be applied to - // the device. If empty, the policy_name for the user that owns this - // device is applied. This field may be modified by an update request. - // The name of the policy is in the form - // enterprises/{enterpriseId}/policies/{policyId}. It is also - // permissible to only specify the policyId when updating this field as - // long as the policyId contains no slashes since the rest of the policy - // name can be inferred from context. + // PolicyName: The name of the policy applied to the device, in the form + // enterprises/{enterpriseId}/policies/{policyId}. If not specified, the + // policy_name for the device's user is applied. This field can be + // modified by a patch request. You can specify only the policyId when + // calling enterprises.devices.patch, as long as the policyId doesn’t + // contain any slashes. The rest of the policy name is inferred. PolicyName string `json:"policyName,omitempty"` // PowerManagementEvents: Power management events on the device in - // chronological order. This information is only available when + // chronological order. This information is only available if // powerManagementEventsEnabled is true in the device's policy. PowerManagementEvents []*PowerManagementEvent `json:"powerManagementEvents,omitempty"` - // PreviousDeviceNames: The previous device names used for the same - // physical device when it has been enrolled multiple times. The serial - // number is used as the unique identifier to determine if the same - // physical device has enrolled previously. The names are in + // PreviousDeviceNames: If the same physical device has been enrolled + // multiple times, this field contains its previous device names. The + // serial number is used as the unique identifier to determine if the + // same physical device has enrolled previously. The names are in // chronological order. PreviousDeviceNames []string `json:"previousDeviceNames,omitempty"` // SoftwareInfo: Detailed information about the device software. This - // information is only available when softwareInfoEnabled is true in the + // information is only available if softwareInfoEnabled is true in the // device's policy. SoftwareInfo *SoftwareInfo `json:"softwareInfo,omitempty"` - // State: The state that is intended to be applied to the device. This - // field may be modified by an update request. Note that UpdateDevice - // only handles toggling between ACTIVE and DISABLED states. Use the - // delete device method to cause the device to enter the DELETED state. + // State: The state to be applied to the device. This field can be + // modified by a patch request. Note that when calling + // enterprises.devices.patch, ACTIVE and DISABLED are the only allowable + // values. To enter the device into a DELETED state, call + // enterprises.devices.delete. // // Possible values: // "DEVICE_STATE_UNSPECIFIED" - This value is disallowed. // "ACTIVE" - The device is active. // "DISABLED" - The device is disabled. // "DELETED" - The device was deleted. This state will never be - // returned by an API call, but will be used in the final policy - // compliance report published to Cloud Pub/Sub when the device - // acknowledges the deletion. + // returned by an API call, but is used in the final policy compliance + // report published to Cloud Pub/Sub when the device acknowledges the + // deletion. // "PROVISIONING" - The device is being provisioned. Newly enrolled - // devices will be in this state until they have applied policy. + // devices are in this state until they have a policy applied. State string `json:"state,omitempty"` // UserName: The resource name of the user that owns this device in the @@ -675,11 +719,13 @@ func (s *Device) MarshalJSON() ([]byte, error) { // DeviceSettings: Information about security related device settings on // device. type DeviceSettings struct { - // AdbEnabled: If the ADB is enabled Settings.Global.ADB_ENABLED. + // AdbEnabled: Whether ADB + // (https://developer.android.com/studio/command-line/adb.html) is + // enabled on the device. AdbEnabled bool `json:"adbEnabled,omitempty"` - // DevelopmentSettingsEnabled: If the developer mode is enabled - // Settings.Global.DEVELOPMENT_SETTINGS_ENABLED. + // DevelopmentSettingsEnabled: Whether developer mode is enabled on the + // device. DevelopmentSettingsEnabled bool `json:"developmentSettingsEnabled,omitempty"` // EncryptionStatus: Encryption status from DevicePolicyManager. @@ -688,29 +734,32 @@ type DeviceSettings struct { // "ENCRYPTION_STATUS_UNSPECIFIED" - Unspecified. No device should // have this type. // "UNSUPPORTED" - Encryption is not supported by the device. - // "INACTIVE" - Encryption is supported by the device, but not + // "INACTIVE" - Encryption is supported by the device, but is not // currently active. // "ACTIVATING" - Encryption is not currently active, but is currently // being activated. - // "ACTIVE" - Encryption is active + // "ACTIVE" - Encryption is active. // "ACTIVE_DEFAULT_KEY" - Encryption is active, but an encryption key - // is not set by the user - // "ACTIVE_PER_USER" - Encrpyiton is active, and the encryption key is + // is not set by the user. + // "ACTIVE_PER_USER" - Encryption is active, and the encryption key is // tied to the user profile. EncryptionStatus string `json:"encryptionStatus,omitempty"` - // IsDeviceSecure: Device secured with PIN/password. + // IsDeviceSecure: Whether the device is secured with PIN/password. IsDeviceSecure bool `json:"isDeviceSecure,omitempty"` - // IsEncrypted: Whether the storage encryption is enabled - // DevicePolicyManager.ENCRYPTION_STATUS_ACTIVE or - // DevicePolicyManager.ENCRYPTION_STATUS_ACTIVE_PER_USER in N+ devices. + // IsEncrypted: Whether the storage encryption is enabled. IsEncrypted bool `json:"isEncrypted,omitempty"` - // UnknownSourcesEnabled: If installing apps from unknown sources is - // enabled. Settings.Secure.INSTALL_NON_MARKET_APPS. + // UnknownSourcesEnabled: Whether installing apps from unknown sources + // is enabled. UnknownSourcesEnabled bool `json:"unknownSourcesEnabled,omitempty"` + // VerifyAppsEnabled: Whether Verify Apps (Google Play Protect + // (https://support.google.com/googleplay/answer/2812853)) is enabled on + // the device. + VerifyAppsEnabled bool `json:"verifyAppsEnabled,omitempty"` + // ForceSendFields is a list of field names (e.g. "AdbEnabled") to // unconditionally include in API requests. By default, fields with // empty values are omitted from API requests. However, any non-pointer, @@ -805,15 +854,16 @@ type Empty struct { // EnrollmentToken: An enrollment token. type EnrollmentToken struct { // AdditionalData: Optional, arbitrary data associated with the - // enrollment token. This could contain, for example, the id of an org - // unit to which the device is assigned after enrollment. After a device + // enrollment token. This could contain, for example, the ID of an org + // unit the device is assigned to after enrollment. After a device // enrolls with the token, this data will be exposed in the // enrollment_token_data field of the Device resource. The data must be // 1024 characters or less; otherwise, the creation request will fail. AdditionalData string `json:"additionalData,omitempty"` - // Duration: The duration of the token. If not specified, the duration - // will be 1 hour. The allowed range is 1 minute to 30 days. + // Duration: The length of time the enrollment token is valid, ranging + // from 1 minute to 30 days. If not specified, the default duration is 1 + // hour. Duration string `json:"duration,omitempty"` // ExpirationTimestamp: The expiration time of the token. This is a @@ -822,18 +872,17 @@ type EnrollmentToken struct { // Name: The name of the enrollment token, which is generated by the // server during creation, in the form - // enterprises/{enterpriseId}/enrollmentTokens/{enrollmentTokenId} + // enterprises/{enterpriseId}/enrollmentTokens/{enrollmentTokenId}. Name string `json:"name,omitempty"` - // PolicyName: The name of the policy that will be initially applied to - // the enrolled device in the form - // enterprises/{enterpriseId}/policies/{policyId}. If not specified, the - // policy_name for the user that owns the device is applied. If - // user_name also isn't specified, the policy defaults to - // enterprises/{enterpriseId}/policies/default. It is permissible to - // only specify the policyId when updating this field as long as the - // policyId contains no slashes since the rest of the policy name can be - // inferred from context. + // PolicyName: The name of the policy initially applied to the enrolled + // device, in the form enterprises/{enterpriseId}/policies/{policyId}. + // If not specified, the policy_name for the device’s user is applied. + // If user_name is also not specified, + // enterprises/{enterpriseId}/policies/default is applied by default. + // When updating this field, you can specify only the policyId as long + // as the policyId doesn’t contain any slashes. The rest of the policy + // name will be inferred. PolicyName string `json:"policyName,omitempty"` // QrCode: A JSON string whose UTF-8 representation can be used to @@ -842,9 +891,8 @@ type EnrollmentToken struct { // java.util.Properties representation of the properties in the JSON. QrCode string `json:"qrCode,omitempty"` - // Value: The token value which is passed to the device and authorizes - // the device to enroll. This is a read-only field generated by the - // server. + // Value: The token value that's passed to the device and authorizes the + // device to enroll. This is a read-only field generated by the server. Value string `json:"value,omitempty"` // ServerResponse contains the HTTP response code and headers from the @@ -877,15 +925,14 @@ func (s *EnrollmentToken) MarshalJSON() ([]byte, error) { // Enterprise: The configuration applied to an enterprise. type Enterprise struct { - // AppAutoApprovalEnabled: Whether app auto-approval is enabled. When - // enabled, apps installed via policy for this enterprise have all - // permissions automatically approved. When enabled, it is the caller's - // responsibility to display the permissions required by an app to the - // enterprise admin before setting the app to be installed in a policy. + // AppAutoApprovalEnabled: Whether permissions for apps installed via + // policy are automatically approved. If enabled, you must display an + // app's permissions to the enterprise admin before setting the app to + // be installed in a policy. AppAutoApprovalEnabled bool `json:"appAutoApprovalEnabled,omitempty"` - // EnabledNotificationTypes: The notification types to enable via Google - // Cloud Pub/Sub. + // EnabledNotificationTypes: The types of Google Pub/Sub notifications + // enabled for the enterprise. // // Possible values: // "NOTIFICATION_TYPE_UNSPECIFIED" - This value is ignored. @@ -898,8 +945,7 @@ type Enterprise struct { // completed. EnabledNotificationTypes []string `json:"enabledNotificationTypes,omitempty"` - // EnterpriseDisplayName: The name of the enterprise as it will appear - // to users. + // EnterpriseDisplayName: The name of the enterprise displayed to users. EnterpriseDisplayName string `json:"enterpriseDisplayName,omitempty"` // Logo: An image displayed as a logo during device provisioning. @@ -908,21 +954,18 @@ type Enterprise struct { Logo *ExternalData `json:"logo,omitempty"` // Name: The name of the enterprise which is generated by the server - // during creation, in the form enterprises/{enterpriseId} + // during creation, in the form enterprises/{enterpriseId}. Name string `json:"name,omitempty"` - // PrimaryColor: A color in RGB format indicating the predominant color - // to display in the device management app UI. The color components are - // stored as follows: (red << 16) | (green << 8) | blue, where each - // component may take a value between 0 and 255 inclusive. + // PrimaryColor: A color in RGB format that indicates the predominant + // color to display in the device management app UI. The color + // components are stored as follows: (red << 16) | (green << 8) | blue, + // where the value of each component is between 0 and 255, inclusive. PrimaryColor int64 `json:"primaryColor,omitempty"` - // PubsubTopic: When Cloud Pub/Sub notifications are enabled, this field - // is required to indicate the topic to which the notifications will be - // published. The format of this field is - // projects/{project}/topics/{topic}. You must have granted the publish - // permission on this topic to - // android-cloud-policy@system.gserviceaccount.com + // PubsubTopic: The topic that Cloud Pub/Sub notifications are published + // to, in the form projects/{project}/topics/{topic}. This field is only + // required if Pub/Sub notifications are enabled. PubsubTopic string `json:"pubsubTopic,omitempty"` // ServerResponse contains the HTTP response code and headers from the @@ -958,12 +1001,12 @@ func (s *Enterprise) MarshalJSON() ([]byte, error) { // downloaded by Android Device Policy and verified against the hash. type ExternalData struct { // Sha256Hash: The base-64 encoded SHA-256 hash of the content hosted at - // url. If the content does not match this hash, Android Device Policy - // will not use the data. + // url. If the content doesn't match this hash, Android Device Policy + // won't use the data. Sha256Hash string `json:"sha256Hash,omitempty"` // Url: The absolute URL to the data, which must use either the http or - // https scheme. Android Device Policy does not provide any credentials + // https scheme. Android Device Policy doesn't provide any credentials // in the GET request, so the URL must be publicly accessible. Including // a long, random component in the URL may be used to prevent attackers // from discovering the URL. @@ -993,8 +1036,8 @@ func (s *ExternalData) MarshalJSON() ([]byte, error) { } // HardwareInfo: Information about device hardware. The fields related -// to temperature thresholds are only available when -// hardwareStatusEnabled is true in the device's policy. +// to temperature thresholds are only available if hardwareStatusEnabled +// is true in the device's policy. type HardwareInfo struct { // BatteryShutdownTemperatures: Battery shutdown temperature thresholds // in Celsius for each battery on the device. @@ -1004,7 +1047,7 @@ type HardwareInfo struct { // thresholds in Celsius for each battery on the device. BatteryThrottlingTemperatures []float64 `json:"batteryThrottlingTemperatures,omitempty"` - // Brand: Brand of the device, e.g. Google. + // Brand: Brand of the device. For example, Google. Brand string `json:"brand,omitempty"` // CpuShutdownTemperatures: CPU shutdown temperature thresholds in @@ -1015,7 +1058,7 @@ type HardwareInfo struct { // Celsius for each CPU on the device. CpuThrottlingTemperatures []float64 `json:"cpuThrottlingTemperatures,omitempty"` - // DeviceBasebandVersion: Baseband version, e.g. + // DeviceBasebandVersion: Baseband version. For example, // MDM9625_104662.22.05.34p. DeviceBasebandVersion string `json:"deviceBasebandVersion,omitempty"` @@ -1027,13 +1070,13 @@ type HardwareInfo struct { // Celsius for each GPU on the device. GpuThrottlingTemperatures []float64 `json:"gpuThrottlingTemperatures,omitempty"` - // Hardware: Name of the hardware, e.g. Angler. + // Hardware: Name of the hardware. For example, Angler. Hardware string `json:"hardware,omitempty"` - // Manufacturer: Manufacturer, e.g. Motorola. + // Manufacturer: Manufacturer. For example, Motorola. Manufacturer string `json:"manufacturer,omitempty"` - // Model: The model of the device, e.g. Asus Nexus 7. + // Model: The model of the device. For example, Asus Nexus 7. Model string `json:"model,omitempty"` // SerialNumber: The device serial number. @@ -1241,20 +1284,20 @@ func (s *ListPoliciesResponse) MarshalJSON() ([]byte, error) { // ManagedProperty: Managed property. type ManagedProperty struct { - // DefaultValue: The default value of the properties. BUNDLE_ARRAY - // properties never have a default value. + // DefaultValue: The default value of the property. BUNDLE_ARRAY + // properties don't have a default value. DefaultValue interface{} `json:"defaultValue,omitempty"` - // Description: A longer description of the property, giving more detail - // of what it affects. Localized. + // Description: A longer description of the property, providing more + // detail of what it affects. Localized. Description string `json:"description,omitempty"` // Entries: For CHOICE or MULTISELECT properties, the list of possible // entries. Entries []*ManagedPropertyEntry `json:"entries,omitempty"` - // Key: The unique key that the application uses to identify the - // property, e.g. "com.google.android.gm.fieldname". + // Key: The unique key that the app uses to identify the property, e.g. + // "com.google.android.gm.fieldname". Key string `json:"key,omitempty"` // NestedProperties: For BUNDLE_ARRAY properties, the list of nested @@ -1274,8 +1317,8 @@ type ManagedProperty struct { // "CHOICE" - A choice of one item from a set. // "MULTISELECT" - A choice of multiple items from a set. // "HIDDEN" - A hidden restriction of string type (the default value - // can be used to pass along information that cannot be modified, such - // as a version code). + // can be used to pass along information that can't be modified, such as + // a version code). // "BUNDLE_ARRAY" - An array of property bundles. Type string `json:"type,omitempty"` @@ -1419,13 +1462,17 @@ func (s *MemoryInfo) MarshalJSON() ([]byte, error) { // NetworkInfo: Device network info. type NetworkInfo struct { - // Imei: IMEI number of the GSM device, e.g. A1000031212. + // Imei: IMEI number of the GSM device. For example, A1000031212. Imei string `json:"imei,omitempty"` - // Meid: MEID number of the CDMA device, e.g. A00000292788E1. + // Meid: MEID number of the CDMA device. For example, A00000292788E1. Meid string `json:"meid,omitempty"` - // WifiMacAddress: WiFi MAC address of the device, e.g. + // NetworkOperatorName: Alphabetic name of current registered operator. + // For example, Vodafone. + NetworkOperatorName string `json:"networkOperatorName,omitempty"` + + // WifiMacAddress: Wi-Fi MAC address of the device. For example, // 7c:11:11:11:11:11. WifiMacAddress string `json:"wifiMacAddress,omitempty"` @@ -1472,14 +1519,14 @@ type NonComplianceDetail struct { // InstallationFailureReason: If package_name is set and the // non-compliance reason is APP_NOT_INSTALLED or APP_NOT_UPDATED, the - // detailed reason the app cannot be installed or updated. + // detailed reason the app can't be installed or updated. // // Possible values: // "INSTALLATION_FAILURE_REASON_UNSPECIFIED" - This value is // disallowed. // "INSTALLATION_FAILURE_REASON_UNKNOWN" - An unknown condition is - // preventing the app from being installed. Some potential reaons are - // that the device does not have enough storage, the device network + // preventing the app from being installed. Some potential reasons are + // that the device doesn't have enough storage, the device network // connection is unreliable, or the installation is taking longer than // expected. The installation will be retried automatically. // "IN_PROGRESS" - The installation is still in progress. @@ -1491,10 +1538,10 @@ type NonComplianceDetail struct { // not been accepted by the admin. // "NOT_AVAILABLE_IN_COUNTRY" - The app is not available in the user's // country. - // "NO_LICENSES_REMAINING" - There are no more licenses to assign to - // the user. - // "NOT_ENROLLED" - The enterprise is no longer enrolled with Play for - // Work or Android Device Policy is not enabled for the enterprise. + // "NO_LICENSES_REMAINING" - There are no licenses available to assign + // to the user. + // "NOT_ENROLLED" - The enterprise is no longer enrolled with managed + // Play or Android Device Policy is not enabled for the enterprise. // "USER_INVALID" - The user is no longer valid. The user may have // been deleted or disabled. InstallationFailureReason string `json:"installationFailureReason,omitempty"` @@ -1504,28 +1551,28 @@ type NonComplianceDetail struct { // // Possible values: // "NON_COMPLIANCE_REASON_UNSPECIFIED" - This value is disallowed. - // "API_LEVEL" - The setting is not supported in the API level of - // Android OS version the device is running. - // "ADMIN_TYPE" - The admin type (profile owner, device owner, etc.) - // does not support the setting. + // "API_LEVEL" - The setting is not supported in the API level of the + // Android version running on the device. + // "MANAGEMENT_MODE" - The management mode (profile owner, device + // owner, etc.) doesn't support the setting. // "USER_ACTION" - The user has not taken required action to comply // with the setting. // "INVALID_VALUE" - The setting has an invalid value. - // "APP_NOT_INSTALLED" - The application required to implement the - // policy is not installed. + // "APP_NOT_INSTALLED" - The app required to implement the policy is + // not installed. // "UNSUPPORTED" - The policy is not supported by the version of // Android Device Policy on the device. - // "APP_INSTALLED" - A blocked application is installed. - // "PENDING" - The setting was not applied yet at the time of the + // "APP_INSTALLED" - A blocked app is installed. + // "PENDING" - The setting hasn't been applied at the time of the // report, but is expected to be applied shortly. - // "APP_INCOMPATIBLE" - The setting cannot be applied to the - // application because the application doesn't support it, for example - // because its target SDK version is not high enough. - // "APP_NOT_UPDATED" - The application is installed but not updated to - // the minimum version code specified by policy + // "APP_INCOMPATIBLE" - The setting can't be applied to the app + // because the app doesn't support it, for example because its target + // SDK version is not high enough. + // "APP_NOT_UPDATED" - The app is installed, but it hasn't been + // updated to the minimum version code specified by policy. NonComplianceReason string `json:"nonComplianceReason,omitempty"` - // PackageName: The package name indicating which application is out of + // PackageName: The package name indicating which app is out of // compliance, if applicable. PackageName string `json:"packageName,omitempty"` @@ -1568,29 +1615,29 @@ type NonComplianceDetailCondition struct { // // Possible values: // "NON_COMPLIANCE_REASON_UNSPECIFIED" - This value is disallowed. - // "API_LEVEL" - The setting is not supported in the API level of - // Android OS version the device is running. - // "ADMIN_TYPE" - The admin type (profile owner, device owner, etc.) - // does not support the setting. + // "API_LEVEL" - The setting is not supported in the API level of the + // Android version running on the device. + // "MANAGEMENT_MODE" - The management mode (profile owner, device + // owner, etc.) doesn't support the setting. // "USER_ACTION" - The user has not taken required action to comply // with the setting. // "INVALID_VALUE" - The setting has an invalid value. - // "APP_NOT_INSTALLED" - The application required to implement the - // policy is not installed. + // "APP_NOT_INSTALLED" - The app required to implement the policy is + // not installed. // "UNSUPPORTED" - The policy is not supported by the version of // Android Device Policy on the device. - // "APP_INSTALLED" - A blocked application is installed. - // "PENDING" - The setting was not applied yet at the time of the + // "APP_INSTALLED" - A blocked app is installed. + // "PENDING" - The setting hasn't been applied at the time of the // report, but is expected to be applied shortly. - // "APP_INCOMPATIBLE" - The setting cannot be applied to the - // application because the application doesn't support it, for example - // because its target SDK version is not high enough. - // "APP_NOT_UPDATED" - The application is installed but not updated to - // the minimum version code specified by policy + // "APP_INCOMPATIBLE" - The setting can't be applied to the app + // because the app doesn't support it, for example because its target + // SDK version is not high enough. + // "APP_NOT_UPDATED" - The app is installed, but it hasn't been + // updated to the minimum version code specified by policy. NonComplianceReason string `json:"nonComplianceReason,omitempty"` - // PackageName: The package name indicating which application is out of - // compliance. If not set, then this condition matches any package name. + // PackageName: The package name of the app that's out of compliance. If + // not set, then this condition matches any package name. PackageName string `json:"packageName,omitempty"` // SettingName: The name of the policy setting. This is the JSON field @@ -1714,8 +1761,8 @@ func (s *PackageNameList) MarshalJSON() ([]byte, error) { // PasswordRequirements: Requirements for the password used to unlock a // device. type PasswordRequirements struct { - // MaximumFailedPasswordsForWipe: A device will be wiped after too many - // incorrect device-unlock passwords have been entered. A value of 0 + // MaximumFailedPasswordsForWipe: Number of incorrect device-unlock + // passwords that can be entered before a device is wiped. A value of 0 // means there is no restriction. MaximumFailedPasswordsForWipe int64 `json:"maximumFailedPasswordsForWipe,omitempty"` @@ -1723,9 +1770,9 @@ type PasswordRequirements struct { PasswordExpirationTimeout string `json:"passwordExpirationTimeout,omitempty"` // PasswordHistoryLength: The length of the password history. After - // setting this, the user will not be able to enter a new password that - // is the same as any password in the history. A value of 0 means there - // is no restriction. + // setting this field, the user won't be able to enter a new password + // that is the same as any password in the history. A value of 0 means + // there is no restriction. PasswordHistoryLength int64 `json:"passwordHistoryLength,omitempty"` // PasswordMinimumLength: The minimum allowed password length. A value @@ -1764,20 +1811,21 @@ type PasswordRequirements struct { // PasswordQuality: The required password quality. // // Possible values: - // "PASSWORD_QUALITY_UNSPECIFIED" - There are no requirements for the - // password. - // "BIOMETRIC_WEAK" - There must be at least low-security biometric - // recognition technology to secure the device. This includes - // technologies that can recognize the identity of an individual to - // about a 3 digit PIN (false detection is less than 1 in 1,000). - // "SOMETHING" - There must be a password, but there are no - // restrictions on its characters. + // "PASSWORD_QUALITY_UNSPECIFIED" - There are no password + // requirements. + // "BIOMETRIC_WEAK" - The device must be secured with a low-security + // biometric recognition technology, at minimum. This includes + // technologies that can recognize the identity of an individual that + // are roughly equivalent to a 3-digit PIN (false detection is less than + // 1 in 1,000). + // "SOMETHING" - A password is required, but there are no restrictions + // on what the password must contain. // "NUMERIC" - The password must contain numeric characters. // "NUMERIC_COMPLEX" - The password must contain numeric characters // with no repeating (4444) or ordered (1234, 4321, 2468) sequences. // "ALPHABETIC" - The password must contain alphabetic (or symbol) // characters. - // "ALPHANUMERIC" - The password must contain at both numeric and + // "ALPHANUMERIC" - The password must contain both numeric and // alphabetic (or symbol) characters. // "COMPLEX" - The password must contain at least a letter, a // numerical digit and a special symbol. Other password constraints, for @@ -1896,9 +1944,10 @@ func (s *PersistentPreferredActivity) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -// Policy: A policy, which governs behavior for a device. +// Policy: A policy resources represents a group settings that govern +// the behavior of a managed device and the apps installed on it. type Policy struct { - // AccountTypesWithManagementDisabled: Account types that cannot be + // AccountTypesWithManagementDisabled: Account types that can't be // managed by the user. AccountTypesWithManagementDisabled []string `json:"accountTypesWithManagementDisabled,omitempty"` @@ -1913,6 +1962,31 @@ type Policy struct { // Use with vpn_config_disabled to prevent modification of this setting. AlwaysOnVpnPackage *AlwaysOnVpnPackage `json:"alwaysOnVpnPackage,omitempty"` + // AndroidDevicePolicyTracks: The app tracks for Android Device Policy + // the device can access. The device receives the latest version among + // all accessible tracks. If no tracks are specified, then the device + // only uses the production track. + // + // Possible values: + // "APP_TRACK_UNSPECIFIED" - This value is ignored. + // "PRODUCTION" - The production track, which provides the latest + // stable release. + // "BETA" - The beta track, which provides the latest beta release. + AndroidDevicePolicyTracks []string `json:"androidDevicePolicyTracks,omitempty"` + + // AppAutoUpdatePolicy: The app auto update policy, which controls when + // automatic app updates can be applied. + // + // Possible values: + // "APP_AUTO_UPDATE_POLICY_UNSPECIFIED" - The auto-update policy is + // not set. Equivalent to CHOICE_TO_THE_USER. + // "CHOICE_TO_THE_USER" - The user can control auto-updates. + // "NEVER" - Apps are never auto-updated. + // "WIFI_ONLY" - Apps are auto-updated over Wi-Fi only. + // "ALWAYS" - Apps are auto-updated at any time. Data charges may + // apply. + AppAutoUpdatePolicy string `json:"appAutoUpdatePolicy,omitempty"` + // Applications: Policy applied to apps. Applications []*ApplicationPolicy `json:"applications,omitempty"` @@ -1966,8 +2040,8 @@ type Policy struct { // debugging features. DebuggingFeaturesAllowed bool `json:"debuggingFeaturesAllowed,omitempty"` - // DefaultPermissionPolicy: The default permission policy for requests - // for runtime permissions. + // DefaultPermissionPolicy: The default permission policy for runtime + // permission requests. // // Possible values: // "PERMISSION_POLICY_UNSPECIFIED" - Policy not specified. If no @@ -1978,8 +2052,22 @@ type Policy struct { // "DENY" - Automatically deny a permission. DefaultPermissionPolicy string `json:"defaultPermissionPolicy,omitempty"` - // EnsureVerifyAppsEnabled: Whether application verification is forced - // to be enabled. + // DeviceOwnerLockScreenInfo: The device owner information to be shown + // on the lock screen. + DeviceOwnerLockScreenInfo *UserFacingMessage `json:"deviceOwnerLockScreenInfo,omitempty"` + + // EncryptionPolicy: Whether encryption is enabled + // + // Possible values: + // "ENCRYPTION_POLICY_UNSPECIFIED" - This value is ignored, i.e. no + // encryption required + // "ENABLED_WITHOUT_PASSWORD" - Encryption required but no password + // required to boot + // "ENABLED_WITH_PASSWORD" - Encryption required with password + // required to boot + EncryptionPolicy string `json:"encryptionPolicy,omitempty"` + + // EnsureVerifyAppsEnabled: Whether app verification is force-enabled. EnsureVerifyAppsEnabled bool `json:"ensureVerifyAppsEnabled,omitempty"` // FactoryResetDisabled: Whether factory resetting from settings is @@ -1990,7 +2078,7 @@ type Policy struct { // reset protection. When the device is factory reset, it will require // one of these admins to log in with the Google account email and // password to unlock the device. If no admins are specified, the device - // will not provide factory reset protection. + // won't provide factory reset protection. FrpAdminEmails []string `json:"frpAdminEmails,omitempty"` // FunDisabled: Whether the user is allowed to have fun. Controls @@ -2037,13 +2125,26 @@ type Policy struct { // settings. KioskCustomLauncherEnabled bool `json:"kioskCustomLauncherEnabled,omitempty"` + // LocationMode: The degree of location detection enabled. The user may + // change the value unless the user is otherwise blocked from accessing + // device settings. + // + // Possible values: + // "LOCATION_MODE_UNSPECIFIED" - The current device value is not + // modified. + // "HIGH_ACCURACY" - All location detection methods are enabled, + // including GPS, networks, and other sensors. + // "SENSORS_ONLY" - Only GPS and other sensors are enabled. + // "BATTERY_SAVING" - Only the network location provider is enabled. + // "OFF" - Location detection is disabled. + LocationMode string `json:"locationMode,omitempty"` + // LongSupportMessage: A message displayed to the user in the device // administators settings screen. LongSupportMessage *UserFacingMessage `json:"longSupportMessage,omitempty"` // MaximumTimeToLock: Maximum time in milliseconds for user activity - // until the device will lock. A value of 0 means there is no - // restriction. + // until the device locks. A value of 0 means there is no restriction. MaximumTimeToLock int64 `json:"maximumTimeToLock,omitempty,string"` // MobileNetworksConfigDisabled: Whether configuring mobile networks is @@ -2059,7 +2160,7 @@ type Policy struct { MountPhysicalMediaDisabled bool `json:"mountPhysicalMediaDisabled,omitempty"` // Name: The name of the policy in the form - // enterprises/{enterpriseId}/policies/{policyId} + // enterprises/{enterpriseId}/policies/{policyId}. Name string `json:"name,omitempty"` // NetworkEscapeHatchEnabled: Whether the network escape hatch is @@ -2080,7 +2181,7 @@ type Policy struct { // configure networks for more information. OpenNetworkConfiguration googleapi.RawMessage `json:"openNetworkConfiguration,omitempty"` - // OutgoingBeamDisabled: Whether using NFC to beam out data from apps is + // OutgoingBeamDisabled: Whether using NFC to beam data from apps is // disabled. OutgoingBeamDisabled bool `json:"outgoingBeamDisabled,omitempty"` @@ -2090,7 +2191,7 @@ type Policy struct { // PasswordRequirements: Password requirements. PasswordRequirements *PasswordRequirements `json:"passwordRequirements,omitempty"` - // PermittedInputMethods: If present, only input methods provided by + // PermittedInputMethods: If present, only the input methods provided by // packages in this list are permitted. If this field is present, but // the list is empty, then only system input methods are permitted. PermittedInputMethods *PackageNameList `json:"permittedInputMethods,omitempty"` @@ -2122,15 +2223,24 @@ type Policy struct { // SetWallpaperDisabled: Whether changing the wallpaper is disabled. SetWallpaperDisabled bool `json:"setWallpaperDisabled,omitempty"` + // ShareLocationDisabled: Whether location sharing is disabled. + ShareLocationDisabled bool `json:"shareLocationDisabled,omitempty"` + // ShortSupportMessage: A message displayed to the user in the settings // screen wherever functionality has been disabled by the admin. ShortSupportMessage *UserFacingMessage `json:"shortSupportMessage,omitempty"` - // SmsDisabled: Whether sending or receiving SMS messages is disabled. + // SkipFirstUseHintsEnabled: Flag to skip hints on the first use. + // Enterprise admin can enable the system recommendation for apps to + // skip their user tutorial and other introductory hints on first + // start-up. + SkipFirstUseHintsEnabled bool `json:"skipFirstUseHintsEnabled,omitempty"` + + // SmsDisabled: Whether sending and receiving SMS messages is disabled. SmsDisabled bool `json:"smsDisabled,omitempty"` // StatusBarDisabled: Whether the status bar is disabled. This disables - // notifications, quick settings and other screen overlays that allow + // notifications, quick settings, and other screen overlays that allow // escape from full-screen mode. StatusBarDisabled bool `json:"statusBarDisabled,omitempty"` @@ -2170,6 +2280,10 @@ type Policy struct { // disabled. UsbFileTransferDisabled bool `json:"usbFileTransferDisabled,omitempty"` + // UsbMassStorageEnabled: Allows admins to toggle whether USB storge is + // enabled or disabled on user's devices. Next ID: 113 + UsbMassStorageEnabled bool `json:"usbMassStorageEnabled,omitempty"` + // Version: The version of the policy. This is a read-only field. The // version is incremented each time the policy is updated. Version int64 `json:"version,omitempty,string"` @@ -2177,13 +2291,12 @@ type Policy struct { // VpnConfigDisabled: Whether configuring VPN is disabled. VpnConfigDisabled bool `json:"vpnConfigDisabled,omitempty"` - // WifiConfigDisabled: Whether configuring WiFi access points is + // WifiConfigDisabled: Whether configuring Wi-Fi access points is // disabled. WifiConfigDisabled bool `json:"wifiConfigDisabled,omitempty"` - // WifiConfigsLockdownEnabled: Whether WiFi networks defined in Open - // Network Configuration are locked so they cannot be edited by the - // user. + // WifiConfigsLockdownEnabled: Whether Wi-Fi networks defined in Open + // Network Configuration are locked so they can't be edited by the user. WifiConfigsLockdownEnabled bool `json:"wifiConfigsLockdownEnabled,omitempty"` // ServerResponse contains the HTTP response code and headers from the @@ -2317,12 +2430,13 @@ func (s *ProxyInfo) MarshalJSON() ([]byte, error) { // SignupUrl: An enterprise signup URL. type SignupUrl struct { - // Name: The name of the resource. This must be included in the create - // enterprise request at the end of the signup flow. + // Name: The name of the resource. Use this value in the signupUrl field + // when calling enterprises.create to complete the enterprise signup + // flow. Name string `json:"name,omitempty"` - // Url: A URL under which the Admin can sign up for an enterprise. The - // page pointed to cannot be rendered in an iframe. + // Url: A URL where an enterprise admin can register their enterprise. + // The page can't be rendered in an iframe. Url string `json:"url,omitempty"` // ServerResponse contains the HTTP response code and headers from the @@ -2354,8 +2468,8 @@ func (s *SignupUrl) MarshalJSON() ([]byte, error) { // SoftwareInfo: Information about device software. type SoftwareInfo struct { - // AndroidBuildNumber: Android build Id string meant for displaying to - // the user, e.g. shamu-userdebug 6.0.1 MOB30I 2756745 dev-keys. + // AndroidBuildNumber: Android build ID string meant for displaying to + // the user. For example, shamu-userdebug 6.0.1 MOB30I 2756745 dev-keys. AndroidBuildNumber string `json:"androidBuildNumber,omitempty"` // AndroidBuildTime: Build time. @@ -2369,13 +2483,20 @@ type SoftwareInfo struct { // as displayed to the user. AndroidDevicePolicyVersionName string `json:"androidDevicePolicyVersionName,omitempty"` - // AndroidVersion: The user visible Android version string, e.g. 6.0.1. + // AndroidVersion: The user-visible Android version string. For example, + // 6.0.1. AndroidVersion string `json:"androidVersion,omitempty"` // BootloaderVersion: The system bootloader version number, e.g. 0.6.7. BootloaderVersion string `json:"bootloaderVersion,omitempty"` - // DeviceKernelVersion: Kernel version, e.g. 2.6.32.9-g103d848. + // DeviceBuildSignature: SHA-256 hash of android.content.pm.Signature + // (https://developer.android.com/reference/android/content/pm/Signature. + // html) associated with the system package, which can be used to verify + // that the system build hasn't been modified. + DeviceBuildSignature string `json:"deviceBuildSignature,omitempty"` + + // DeviceKernelVersion: Kernel version, for example, 2.6.32.9-g103d848. DeviceKernelVersion string `json:"deviceKernelVersion,omitempty"` // SecurityPatchLevel: Security patch level, e.g. 2016-05-01. @@ -2534,7 +2655,7 @@ func (s *StatusReportingSettings) MarshalJSON() ([]byte, error) { // SystemUpdate: Configuration for managing system updates type SystemUpdate struct { // EndMinutes: If the type is WINDOWED, the end of the maintenance - // window, measured as the number of minutes after midnight in device + // window, measured as the number of minutes after midnight in device's // local time. This value must be between 0 and 1439, inclusive. If this // value is less than start_minutes, then the maintenance window spans // midnight. If the maintenance window specified is smaller than 30 @@ -2543,8 +2664,9 @@ type SystemUpdate struct { EndMinutes int64 `json:"endMinutes,omitempty"` // StartMinutes: If the type is WINDOWED, the start of the maintenance - // window, measured as the number of minutes after midnight in device - // local time. This value must be between 0 and 1439, inclusive. + // window, measured as the number of minutes after midnight in the + // device's local time. This value must be between 0 and 1439, + // inclusive. StartMinutes int64 `json:"startMinutes,omitempty"` // Type: The type of system update to configure. @@ -2586,17 +2708,19 @@ func (s *SystemUpdate) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -// UserFacingMessage: Provides user facing message with locale info. The -// maximum message length is 4096 characters. +// UserFacingMessage: Provides a user-facing message with locale info. +// The maximum message length is 4096 characters. type UserFacingMessage struct { - // DefaultMessage: The default message that gets displayed if no - // localized message is specified, or the user's locale does not match - // with any of the localized messages. A default message must be - // provided if any localized messages are provided. + // DefaultMessage: The default message displayed if no localized message + // is specified or the user's locale doesn't match with any of the + // localized messages. A default message must be provided if any + // localized messages are provided. DefaultMessage string `json:"defaultMessage,omitempty"` - // LocalizedMessages: A map which contains pairs. The - // locale is a BCP 47 language code, e.g. en-US, es-ES, fr. + // LocalizedMessages: A map containing pairs, where + // locale is a well-formed BCP 47 language + // (https://www.w3.org/International/articles/language-tags/) code, such + // as en-US, es-ES, or fr. LocalizedMessages map[string]string `json:"localizedMessages,omitempty"` // ForceSendFields is a list of field names (e.g. "DefaultMessage") to @@ -2623,11 +2747,10 @@ func (s *UserFacingMessage) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -// WebToken: A web token used to access an embeddable managed Google -// Play web UI. +// WebToken: A web token used to access the managed Google Play iframe. type WebToken struct { // Name: The name of the web token, which is generated by the server - // during creation, in the form + // during creation in the form // enterprises/{enterpriseId}/webTokens/{webTokenId}. Name string `json:"name,omitempty"` @@ -2636,8 +2759,8 @@ type WebToken struct { // other URLs. The URL must use the https scheme. ParentFrameUrl string `json:"parentFrameUrl,omitempty"` - // Permissions: Permissions the admin may exercise in the embedded UI. - // The admin must have all of these permissions in order to view the UI. + // Permissions: Permissions available to an admin in the embedded UI. An + // admin must have all of these permissions in order to view the UI. // // Possible values: // "WEB_TOKEN_PERMISSION_UNSPECIFIED" - This value is ignored. @@ -2686,8 +2809,8 @@ type EnterprisesCreateCall struct { header_ http.Header } -// Create: Creates an enterprise by completing the enterprise signup -// flow. +// Create: Creates an enterprise. This is the last step in the +// enterprise signup flow. func (r *EnterprisesService) Create(enterprise *Enterprise) *EnterprisesCreateCall { c := &EnterprisesCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.enterprise = enterprise @@ -2701,7 +2824,7 @@ func (c *EnterprisesCreateCall) EnterpriseToken(enterpriseToken string) *Enterpr return c } -// ProjectId sets the optional parameter "projectId": The id of the +// ProjectId sets the optional parameter "projectId": The ID of the // Google Cloud Platform project which will own the enterprise. func (c *EnterprisesCreateCall) ProjectId(projectId string) *EnterprisesCreateCall { c.urlParams_.Set("projectId", projectId) @@ -2798,7 +2921,7 @@ func (c *EnterprisesCreateCall) Do(opts ...googleapi.CallOption) (*Enterprise, e } return ret, nil // { - // "description": "Creates an enterprise by completing the enterprise signup flow.", + // "description": "Creates an enterprise. This is the last step in the enterprise signup flow.", // "flatPath": "v1/enterprises", // "httpMethod": "POST", // "id": "androidmanagement.enterprises.create", @@ -2810,7 +2933,7 @@ func (c *EnterprisesCreateCall) Do(opts ...googleapi.CallOption) (*Enterprise, e // "type": "string" // }, // "projectId": { - // "description": "The id of the Google Cloud Platform project which will own the enterprise.", + // "description": "The ID of the Google Cloud Platform project which will own the enterprise.", // "location": "query", // "type": "string" // }, @@ -2955,7 +3078,7 @@ func (c *EnterprisesGetCall) Do(opts ...googleapi.CallOption) (*Enterprise, erro // ], // "parameters": { // "name": { - // "description": "The name of the enterprise in the form enterprises/{enterpriseId}", + // "description": "The name of the enterprise in the form enterprises/{enterpriseId}.", // "location": "path", // "pattern": "^enterprises/[^/]+$", // "required": true, @@ -3095,7 +3218,7 @@ func (c *EnterprisesPatchCall) Do(opts ...googleapi.CallOption) (*Enterprise, er // ], // "parameters": { // "name": { - // "description": "The name of the enterprise in the form enterprises/{enterpriseId}", + // "description": "The name of the enterprise in the form enterprises/{enterpriseId}.", // "location": "path", // "pattern": "^enterprises/[^/]+$", // "required": true, @@ -3257,7 +3380,7 @@ func (c *EnterprisesApplicationsGetCall) Do(opts ...googleapi.CallOption) (*Appl // "type": "string" // }, // "name": { - // "description": "The name of the application in the form enterprises/{enterpriseId}/applications/{package_name}", + // "description": "The name of the application in the form enterprises/{enterpriseId}/applications/{package_name}.", // "location": "path", // "pattern": "^enterprises/[^/]+/applications/[^/]+$", // "required": true, @@ -3285,7 +3408,7 @@ type EnterprisesDevicesDeleteCall struct { header_ http.Header } -// Delete: Deletes a device, which causes the device to be wiped. +// Delete: Deletes a device. This operation wipes the device. func (r *EnterprisesDevicesService) Delete(name string) *EnterprisesDevicesDeleteCall { c := &EnterprisesDevicesDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.name = name @@ -3373,7 +3496,7 @@ func (c *EnterprisesDevicesDeleteCall) Do(opts ...googleapi.CallOption) (*Empty, } return ret, nil // { - // "description": "Deletes a device, which causes the device to be wiped.", + // "description": "Deletes a device. This operation wipes the device.", // "flatPath": "v1/enterprises/{enterprisesId}/devices/{devicesId}", // "httpMethod": "DELETE", // "id": "androidmanagement.enterprises.devices.delete", @@ -3382,7 +3505,7 @@ func (c *EnterprisesDevicesDeleteCall) Do(opts ...googleapi.CallOption) (*Empty, // ], // "parameters": { // "name": { - // "description": "The name of the device in the form enterprises/{enterpriseId}/devices/{deviceId}", + // "description": "The name of the device in the form enterprises/{enterpriseId}/devices/{deviceId}.", // "location": "path", // "pattern": "^enterprises/[^/]+/devices/[^/]+$", // "required": true, @@ -3521,7 +3644,7 @@ func (c *EnterprisesDevicesGetCall) Do(opts ...googleapi.CallOption) (*Device, e // ], // "parameters": { // "name": { - // "description": "The name of the device in the form enterprises/{enterpriseId}/devices/{deviceId}", + // "description": "The name of the device in the form enterprises/{enterpriseId}/devices/{deviceId}.", // "location": "path", // "pattern": "^enterprises/[^/]+/devices/[^/]+$", // "required": true, @@ -3655,7 +3778,7 @@ func (c *EnterprisesDevicesIssueCommandCall) Do(opts ...googleapi.CallOption) (* // ], // "parameters": { // "name": { - // "description": "The name of the device in the form enterprises/{enterpriseId}/devices/{deviceId}", + // "description": "The name of the device in the form enterprises/{enterpriseId}/devices/{deviceId}.", // "location": "path", // "pattern": "^enterprises/[^/]+/devices/[^/]+$", // "required": true, @@ -3702,7 +3825,7 @@ func (c *EnterprisesDevicesListCall) PageSize(pageSize int64) *EnterprisesDevice } // PageToken sets the optional parameter "pageToken": A token -// identifying a page of results the server should return. +// identifying a page of results returned by the server. func (c *EnterprisesDevicesListCall) PageToken(pageToken string) *EnterprisesDevicesListCall { c.urlParams_.Set("pageToken", pageToken) return c @@ -3817,12 +3940,12 @@ func (c *EnterprisesDevicesListCall) Do(opts ...googleapi.CallOption) (*ListDevi // "type": "integer" // }, // "pageToken": { - // "description": "A token identifying a page of results the server should return.", + // "description": "A token identifying a page of results returned by the server.", // "location": "query", // "type": "string" // }, // "parent": { - // "description": "The name of the enterprise in the form enterprises/{enterpriseId}", + // "description": "The name of the enterprise in the form enterprises/{enterpriseId}.", // "location": "path", // "pattern": "^enterprises/[^/]+$", // "required": true, @@ -3983,7 +4106,7 @@ func (c *EnterprisesDevicesPatchCall) Do(opts ...googleapi.CallOption) (*Device, // ], // "parameters": { // "name": { - // "description": "The name of the device in the form enterprises/{enterpriseId}/devices/{deviceId}", + // "description": "The name of the device in the form enterprises/{enterpriseId}/devices/{deviceId}.", // "location": "path", // "pattern": "^enterprises/[^/]+/devices/[^/]+$", // "required": true, @@ -4733,7 +4856,7 @@ func (c *EnterprisesEnrollmentTokensCreateCall) Do(opts ...googleapi.CallOption) // ], // "parameters": { // "parent": { - // "description": "The name of the enterprise in the form enterprises/{enterpriseId}", + // "description": "The name of the enterprise in the form enterprises/{enterpriseId}.", // "location": "path", // "pattern": "^enterprises/[^/]+$", // "required": true, @@ -4764,8 +4887,8 @@ type EnterprisesEnrollmentTokensDeleteCall struct { header_ http.Header } -// Delete: Deletes an enrollment token, which prevents future use of the -// token. +// Delete: Deletes an enrollment token. This operation invalidates the +// token, preventing its future use. func (r *EnterprisesEnrollmentTokensService) Delete(name string) *EnterprisesEnrollmentTokensDeleteCall { c := &EnterprisesEnrollmentTokensDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.name = name @@ -4853,7 +4976,7 @@ func (c *EnterprisesEnrollmentTokensDeleteCall) Do(opts ...googleapi.CallOption) } return ret, nil // { - // "description": "Deletes an enrollment token, which prevents future use of the token.", + // "description": "Deletes an enrollment token. This operation invalidates the token, preventing its future use.", // "flatPath": "v1/enterprises/{enterprisesId}/enrollmentTokens/{enrollmentTokensId}", // "httpMethod": "DELETE", // "id": "androidmanagement.enterprises.enrollmentTokens.delete", @@ -4862,7 +4985,7 @@ func (c *EnterprisesEnrollmentTokensDeleteCall) Do(opts ...googleapi.CallOption) // ], // "parameters": { // "name": { - // "description": "The name of the enrollment token in the form enterprises/{enterpriseId}/enrollmentTokens/{enrollmentTokenId}", + // "description": "The name of the enrollment token in the form enterprises/{enterpriseId}/enrollmentTokens/{enrollmentTokenId}.", // "location": "path", // "pattern": "^enterprises/[^/]+/enrollmentTokens/[^/]+$", // "required": true, @@ -4988,7 +5111,7 @@ func (c *EnterprisesPoliciesDeleteCall) Do(opts ...googleapi.CallOption) (*Empty // ], // "parameters": { // "name": { - // "description": "The name of the policy in the form enterprises/{enterpriseId}/policies/{policyId}", + // "description": "The name of the policy in the form enterprises/{enterpriseId}/policies/{policyId}.", // "location": "path", // "pattern": "^enterprises/[^/]+/policies/[^/]+$", // "required": true, @@ -5127,7 +5250,7 @@ func (c *EnterprisesPoliciesGetCall) Do(opts ...googleapi.CallOption) (*Policy, // ], // "parameters": { // "name": { - // "description": "The name of the policy in the form enterprises/{enterpriseId}/policies/{policyId}", + // "description": "The name of the policy in the form enterprises/{enterpriseId}/policies/{policyId}.", // "location": "path", // "pattern": "^enterprises/[^/]+/policies/[^/]+$", // "required": true, @@ -5171,7 +5294,7 @@ func (c *EnterprisesPoliciesListCall) PageSize(pageSize int64) *EnterprisesPolic } // PageToken sets the optional parameter "pageToken": A token -// identifying a page of results the server should return. +// identifying a page of results returned by the server. func (c *EnterprisesPoliciesListCall) PageToken(pageToken string) *EnterprisesPoliciesListCall { c.urlParams_.Set("pageToken", pageToken) return c @@ -5286,12 +5409,12 @@ func (c *EnterprisesPoliciesListCall) Do(opts ...googleapi.CallOption) (*ListPol // "type": "integer" // }, // "pageToken": { - // "description": "A token identifying a page of results the server should return.", + // "description": "A token identifying a page of results returned by the server.", // "location": "query", // "type": "string" // }, // "parent": { - // "description": "The name of the enterprise in the form enterprises/{enterpriseId}", + // "description": "The name of the enterprise in the form enterprises/{enterpriseId}.", // "location": "path", // "pattern": "^enterprises/[^/]+$", // "required": true, @@ -5452,7 +5575,7 @@ func (c *EnterprisesPoliciesPatchCall) Do(opts ...googleapi.CallOption) (*Policy // ], // "parameters": { // "name": { - // "description": "The name of the policy in the form enterprises/{enterpriseId}/policies/{policyId}", + // "description": "The name of the policy in the form enterprises/{enterpriseId}/policies/{policyId}.", // "location": "path", // "pattern": "^enterprises/[^/]+/policies/[^/]+$", // "required": true, @@ -5594,7 +5717,7 @@ func (c *EnterprisesWebTokensCreateCall) Do(opts ...googleapi.CallOption) (*WebT // ], // "parameters": { // "parent": { - // "description": "The name of the enterprise in the form enterprises/{enterpriseId}", + // "description": "The name of the enterprise in the form enterprises/{enterpriseId}.", // "location": "path", // "pattern": "^enterprises/[^/]+$", // "required": true, @@ -5631,7 +5754,7 @@ func (r *SignupUrlsService) Create() *SignupUrlsCreateCall { } // CallbackUrl sets the optional parameter "callbackUrl": The callback -// URL to which the admin will be redirected after successfully creating +// URL that the admin will be redirected to after successfully creating // an enterprise. Before redirecting there the system will add a query // parameter to this URL named enterpriseToken which will contain an // opaque token to be used for the create enterprise request. The URL @@ -5642,7 +5765,7 @@ func (c *SignupUrlsCreateCall) CallbackUrl(callbackUrl string) *SignupUrlsCreate return c } -// ProjectId sets the optional parameter "projectId": The id of the +// ProjectId sets the optional parameter "projectId": The ID of the // Google Cloud Platform project which will own the enterprise. func (c *SignupUrlsCreateCall) ProjectId(projectId string) *SignupUrlsCreateCall { c.urlParams_.Set("projectId", projectId) @@ -5734,12 +5857,12 @@ func (c *SignupUrlsCreateCall) Do(opts ...googleapi.CallOption) (*SignupUrl, err // "parameterOrder": [], // "parameters": { // "callbackUrl": { - // "description": "The callback URL to which the admin will be redirected after successfully creating an enterprise. Before redirecting there the system will add a query parameter to this URL named enterpriseToken which will contain an opaque token to be used for the create enterprise request. The URL will be parsed then reformatted in order to add the enterpriseToken parameter, so there may be some minor formatting changes.", + // "description": "The callback URL that the admin will be redirected to after successfully creating an enterprise. Before redirecting there the system will add a query parameter to this URL named enterpriseToken which will contain an opaque token to be used for the create enterprise request. The URL will be parsed then reformatted in order to add the enterpriseToken parameter, so there may be some minor formatting changes.", // "location": "query", // "type": "string" // }, // "projectId": { - // "description": "The id of the Google Cloud Platform project which will own the enterprise.", + // "description": "The ID of the Google Cloud Platform project which will own the enterprise.", // "location": "query", // "type": "string" // } diff --git a/vendor/google.golang.org/api/androidpublisher/v1.1/androidpublisher-api.json b/vendor/google.golang.org/api/androidpublisher/v1.1/androidpublisher-api.json index 15667e9eb..9cd2a5b4a 100644 --- a/vendor/google.golang.org/api/androidpublisher/v1.1/androidpublisher-api.json +++ b/vendor/google.golang.org/api/androidpublisher/v1.1/androidpublisher-api.json @@ -1,265 +1,265 @@ { - "kind": "discovery#restDescription", - "etag": "\"YWOzh2SDasdU84ArJnpYek-OMdg/jjPNPRw3vV3kPmpQDcyXQEJTSyY\"", - "discoveryVersion": "v1", - "id": "androidpublisher:v1.1", - "name": "androidpublisher", - "canonicalName": "Android Publisher", - "version": "v1.1", - "revision": "20171207", - "title": "Google Play Developer API", - "description": "Lets Android application developers access their Google Play accounts.", - "ownerDomain": "google.com", - "ownerName": "Google", - "icons": { - "x16": "https://www.google.com/images/icons/product/android-16.png", - "x32": "https://www.google.com/images/icons/product/android-32.png" - }, - "documentationLink": "https://developers.google.com/android-publisher", - "protocol": "rest", - "baseUrl": "https://www.googleapis.com/androidpublisher/v1.1/applications/", - "basePath": "/androidpublisher/v1.1/applications/", - "rootUrl": "https://www.googleapis.com/", - "servicePath": "androidpublisher/v1.1/applications/", - "batchPath": "batch/androidpublisher/v1.1", - "parameters": { - "alt": { - "type": "string", - "description": "Data format for the response.", - "default": "json", - "enum": [ - "json" - ], - "enumDescriptions": [ - "Responses with Content-Type of application/json" - ], - "location": "query" - }, - "fields": { - "type": "string", - "description": "Selector specifying which fields to include in a partial response.", - "location": "query" - }, - "key": { - "type": "string", - "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" - }, - "oauth_token": { - "type": "string", - "description": "OAuth 2.0 token for the current user.", - "location": "query" - }, - "prettyPrint": { - "type": "boolean", - "description": "Returns response with indentations and line breaks.", - "default": "true", - "location": "query" - }, - "quotaUser": { - "type": "string", - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", - "location": "query" - }, - "userIp": { - "type": "string", - "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", - "location": "query" - } - }, - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/androidpublisher": { - "description": "View and manage your Google Play Developer account" - } - } - } - }, - "schemas": { - "InappPurchase": { - "id": "InappPurchase", - "type": "object", - "description": "An InappPurchase resource indicates the status of a user's inapp product purchase.", - "properties": { - "consumptionState": { - "type": "integer", - "description": "The consumption state of the inapp product. Possible values are: \n- Yet to be consumed \n- Consumed", - "format": "int32" - }, - "developerPayload": { - "type": "string", - "description": "A developer-specified string that contains supplemental information about an order." - }, - "kind": { - "type": "string", - "description": "This kind represents an inappPurchase object in the androidpublisher service.", - "default": "androidpublisher#inappPurchase" - }, - "orderId": { - "type": "string", - "description": "The order id associated with the purchase of the inapp product." - }, - "purchaseState": { - "type": "integer", - "description": "The purchase state of the order. Possible values are: \n- Purchased \n- Cancelled", - "format": "int32" - }, - "purchaseTime": { - "type": "string", - "description": "The time the product was purchased, in milliseconds since the epoch (Jan 1, 1970).", - "format": "int64" - }, - "purchaseType": { - "type": "integer", - "description": "The type of purchase of the inapp product. This field is only set if this purchase was not made using the standard in-app billing flow. Possible values are: \n- Test (i.e. purchased from a license testing account)", - "format": "int32" - } - } - }, - "SubscriptionPurchase": { - "id": "SubscriptionPurchase", - "type": "object", - "description": "A SubscriptionPurchase resource indicates the status of a user's subscription purchase.", - "properties": { - "autoRenewing": { - "type": "boolean", - "description": "Whether the subscription will automatically be renewed when it reaches its current expiry time." - }, - "initiationTimestampMsec": { - "type": "string", - "description": "Time at which the subscription was granted, in milliseconds since the Epoch.", - "format": "int64" - }, - "kind": { - "type": "string", - "description": "This kind represents a subscriptionPurchase object in the androidpublisher service.", - "default": "androidpublisher#subscriptionPurchase" - }, - "validUntilTimestampMsec": { - "type": "string", - "description": "Time at which the subscription will expire, in milliseconds since the Epoch.", - "format": "int64" - } - } - } - }, - "resources": { - "inapppurchases": { - "methods": { - "get": { - "id": "androidpublisher.inapppurchases.get", - "path": "{packageName}/inapp/{productId}/purchases/{token}", - "httpMethod": "GET", - "description": "Checks the purchase and consumption status of an inapp item.", - "parameters": { - "packageName": { - "type": "string", - "description": "The package name of the application the inapp product was sold in (for example, 'com.some.thing').", - "required": true, - "location": "path" - }, - "productId": { - "type": "string", - "description": "The inapp product SKU (for example, 'com.some.thing.inapp1').", - "required": true, - "location": "path" - }, - "token": { - "type": "string", - "description": "The token provided to the user's device when the inapp product was purchased.", - "required": true, - "location": "path" + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/androidpublisher": { + "description": "View and manage your Google Play Developer account" + } } - }, - "parameterOrder": [ - "packageName", - "productId", - "token" - ], - "response": { - "$ref": "InappPurchase" - }, - "scopes": [ - "https://www.googleapis.com/auth/androidpublisher" - ] } - } }, - "purchases": { - "methods": { - "cancel": { - "id": "androidpublisher.purchases.cancel", - "path": "{packageName}/subscriptions/{subscriptionId}/purchases/{token}/cancel", - "httpMethod": "POST", - "description": "Cancels a user's subscription purchase. The subscription remains valid until its expiration time.", - "parameters": { - "packageName": { - "type": "string", - "description": "The package name of the application for which this subscription was purchased (for example, 'com.some.thing').", - "required": true, - "location": "path" - }, - "subscriptionId": { - "type": "string", - "description": "The purchased subscription ID (for example, 'monthly001').", - "required": true, - "location": "path" - }, - "token": { - "type": "string", - "description": "The token provided to the user's device when the subscription was purchased.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "packageName", - "subscriptionId", - "token" - ], - "scopes": [ - "https://www.googleapis.com/auth/androidpublisher" - ] + "basePath": "/androidpublisher/v1.1/applications/", + "baseUrl": "https://www.googleapis.com/androidpublisher/v1.1/applications/", + "batchPath": "batch/androidpublisher/v1.1", + "canonicalName": "Android Publisher", + "description": "Lets Android application developers access their Google Play accounts.", + "discoveryVersion": "v1", + "documentationLink": "https://developers.google.com/android-publisher", + "etag": "\"-iA1DTNe4s-I6JZXPt1t1Ypy8IU/Xvb720kj6kaUU3p6XJECzzWJnek\"", + "icons": { + "x16": "https://www.google.com/images/icons/product/android-16.png", + "x32": "https://www.google.com/images/icons/product/android-32.png" + }, + "id": "androidpublisher:v1.1", + "kind": "discovery#restDescription", + "name": "androidpublisher", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "alt": { + "default": "json", + "description": "Data format for the response.", + "enum": [ + "json" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json" + ], + "location": "query", + "type": "string" }, - "get": { - "id": "androidpublisher.purchases.get", - "path": "{packageName}/subscriptions/{subscriptionId}/purchases/{token}", - "httpMethod": "GET", - "description": "Checks whether a user's subscription purchase is valid and returns its expiry time.", - "parameters": { - "packageName": { - "type": "string", - "description": "The package name of the application for which this subscription was purchased (for example, 'com.some.thing').", - "required": true, - "location": "path" - }, - "subscriptionId": { - "type": "string", - "description": "The purchased subscription ID (for example, 'monthly001').", - "required": true, - "location": "path" - }, - "token": { - "type": "string", - "description": "The token provided to the user's device when the subscription was purchased.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "packageName", - "subscriptionId", - "token" - ], - "response": { - "$ref": "SubscriptionPurchase" - }, - "scopes": [ - "https://www.googleapis.com/auth/androidpublisher" - ] + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "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.", + "location": "query", + "type": "string" + }, + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", + "location": "query", + "type": "string" + }, + "userIp": { + "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", + "location": "query", + "type": "string" } - } - } - } -} + }, + "protocol": "rest", + "resources": { + "inapppurchases": { + "methods": { + "get": { + "description": "Checks the purchase and consumption status of an inapp item.", + "httpMethod": "GET", + "id": "androidpublisher.inapppurchases.get", + "parameterOrder": [ + "packageName", + "productId", + "token" + ], + "parameters": { + "packageName": { + "description": "The package name of the application the inapp product was sold in (for example, 'com.some.thing').", + "location": "path", + "required": true, + "type": "string" + }, + "productId": { + "description": "The inapp product SKU (for example, 'com.some.thing.inapp1').", + "location": "path", + "required": true, + "type": "string" + }, + "token": { + "description": "The token provided to the user's device when the inapp product was purchased.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{packageName}/inapp/{productId}/purchases/{token}", + "response": { + "$ref": "InappPurchase" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidpublisher" + ] + } + } + }, + "purchases": { + "methods": { + "cancel": { + "description": "Cancels a user's subscription purchase. The subscription remains valid until its expiration time.", + "httpMethod": "POST", + "id": "androidpublisher.purchases.cancel", + "parameterOrder": [ + "packageName", + "subscriptionId", + "token" + ], + "parameters": { + "packageName": { + "description": "The package name of the application for which this subscription was purchased (for example, 'com.some.thing').", + "location": "path", + "required": true, + "type": "string" + }, + "subscriptionId": { + "description": "The purchased subscription ID (for example, 'monthly001').", + "location": "path", + "required": true, + "type": "string" + }, + "token": { + "description": "The token provided to the user's device when the subscription was purchased.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{packageName}/subscriptions/{subscriptionId}/purchases/{token}/cancel", + "scopes": [ + "https://www.googleapis.com/auth/androidpublisher" + ] + }, + "get": { + "description": "Checks whether a user's subscription purchase is valid and returns its expiry time.", + "httpMethod": "GET", + "id": "androidpublisher.purchases.get", + "parameterOrder": [ + "packageName", + "subscriptionId", + "token" + ], + "parameters": { + "packageName": { + "description": "The package name of the application for which this subscription was purchased (for example, 'com.some.thing').", + "location": "path", + "required": true, + "type": "string" + }, + "subscriptionId": { + "description": "The purchased subscription ID (for example, 'monthly001').", + "location": "path", + "required": true, + "type": "string" + }, + "token": { + "description": "The token provided to the user's device when the subscription was purchased.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{packageName}/subscriptions/{subscriptionId}/purchases/{token}", + "response": { + "$ref": "SubscriptionPurchase" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidpublisher" + ] + } + } + } + }, + "revision": "20180211", + "rootUrl": "https://www.googleapis.com/", + "schemas": { + "InappPurchase": { + "description": "An InappPurchase resource indicates the status of a user's inapp product purchase.", + "id": "InappPurchase", + "properties": { + "consumptionState": { + "description": "The consumption state of the inapp product. Possible values are: \n- Yet to be consumed \n- Consumed", + "format": "int32", + "type": "integer" + }, + "developerPayload": { + "description": "A developer-specified string that contains supplemental information about an order.", + "type": "string" + }, + "kind": { + "default": "androidpublisher#inappPurchase", + "description": "This kind represents an inappPurchase object in the androidpublisher service.", + "type": "string" + }, + "orderId": { + "description": "The order id associated with the purchase of the inapp product.", + "type": "string" + }, + "purchaseState": { + "description": "The purchase state of the order. Possible values are: \n- Purchased \n- Canceled", + "format": "int32", + "type": "integer" + }, + "purchaseTime": { + "description": "The time the product was purchased, in milliseconds since the epoch (Jan 1, 1970).", + "format": "int64", + "type": "string" + }, + "purchaseType": { + "description": "The type of purchase of the inapp product. This field is only set if this purchase was not made using the standard in-app billing flow. Possible values are: \n- Test (i.e. purchased from a license testing account) \n- Promo (i.e. purchased using a promo code)", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "SubscriptionPurchase": { + "description": "A SubscriptionPurchase resource indicates the status of a user's subscription purchase.", + "id": "SubscriptionPurchase", + "properties": { + "autoRenewing": { + "description": "Whether the subscription will automatically be renewed when it reaches its current expiry time.", + "type": "boolean" + }, + "initiationTimestampMsec": { + "description": "Time at which the subscription was granted, in milliseconds since the Epoch.", + "format": "int64", + "type": "string" + }, + "kind": { + "default": "androidpublisher#subscriptionPurchase", + "description": "This kind represents a subscriptionPurchase object in the androidpublisher service.", + "type": "string" + }, + "validUntilTimestampMsec": { + "description": "Time at which the subscription will expire, in milliseconds since the Epoch.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + } + }, + "servicePath": "androidpublisher/v1.1/applications/", + "title": "Google Play Developer API", + "version": "v1.1" +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/androidpublisher/v1.1/androidpublisher-gen.go b/vendor/google.golang.org/api/androidpublisher/v1.1/androidpublisher-gen.go index 124e5ea18..07d0e247b 100644 --- a/vendor/google.golang.org/api/androidpublisher/v1.1/androidpublisher-gen.go +++ b/vendor/google.golang.org/api/androidpublisher/v1.1/androidpublisher-gen.go @@ -120,7 +120,7 @@ type InappPurchase struct { // PurchaseState: The purchase state of the order. Possible values are: // // - Purchased - // - Cancelled + // - Canceled PurchaseState int64 `json:"purchaseState,omitempty"` // PurchaseTime: The time the product was purchased, in milliseconds @@ -131,6 +131,7 @@ type InappPurchase struct { // is only set if this purchase was not made using the standard in-app // billing flow. Possible values are: // - Test (i.e. purchased from a license testing account) + // - Promo (i.e. purchased using a promo code) PurchaseType int64 `json:"purchaseType,omitempty"` // ServerResponse contains the HTTP response code and headers from the diff --git a/vendor/google.golang.org/api/androidpublisher/v1/androidpublisher-api.json b/vendor/google.golang.org/api/androidpublisher/v1/androidpublisher-api.json index 6090f92a6..1f95aa161 100644 --- a/vendor/google.golang.org/api/androidpublisher/v1/androidpublisher-api.json +++ b/vendor/google.golang.org/api/androidpublisher/v1/androidpublisher-api.json @@ -1,184 +1,184 @@ { - "kind": "discovery#restDescription", - "etag": "\"YWOzh2SDasdU84ArJnpYek-OMdg/Ex2nsAPYjRP0NRWSGg4yyxwNJ18\"", - "discoveryVersion": "v1", - "id": "androidpublisher:v1", - "name": "androidpublisher", - "canonicalName": "Android Publisher", - "version": "v1", - "revision": "20170913", - "title": "Google Play Developer API", - "description": "Lets Android application developers access their Google Play accounts.", - "ownerDomain": "google.com", - "ownerName": "Google", - "icons": { - "x16": "https://www.google.com/images/icons/product/android-16.png", - "x32": "https://www.google.com/images/icons/product/android-32.png" - }, - "documentationLink": "https://developers.google.com/android-publisher", - "protocol": "rest", - "baseUrl": "https://www.googleapis.com/androidpublisher/v1/applications/", - "basePath": "/androidpublisher/v1/applications/", - "rootUrl": "https://www.googleapis.com/", - "servicePath": "androidpublisher/v1/applications/", - "batchPath": "batch/androidpublisher/v1", - "parameters": { - "alt": { - "type": "string", - "description": "Data format for the response.", - "default": "json", - "enum": [ - "json" - ], - "enumDescriptions": [ - "Responses with Content-Type of application/json" - ], - "location": "query" - }, - "fields": { - "type": "string", - "description": "Selector specifying which fields to include in a partial response.", - "location": "query" - }, - "key": { - "type": "string", - "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" - }, - "oauth_token": { - "type": "string", - "description": "OAuth 2.0 token for the current user.", - "location": "query" - }, - "prettyPrint": { - "type": "boolean", - "description": "Returns response with indentations and line breaks.", - "default": "true", - "location": "query" - }, - "quotaUser": { - "type": "string", - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", - "location": "query" - }, - "userIp": { - "type": "string", - "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", - "location": "query" - } - }, - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/androidpublisher": { - "description": "View and manage your Google Play Developer account" - } - } - } - }, - "schemas": { - "SubscriptionPurchase": { - "id": "SubscriptionPurchase", - "type": "object", - "description": "A SubscriptionPurchase resource indicates the status of a user's subscription purchase.", - "properties": { - "autoRenewing": { - "type": "boolean", - "description": "Whether the subscription will automatically be renewed when it reaches its current expiry time." - }, - "initiationTimestampMsec": { - "type": "string", - "description": "Time at which the subscription was granted, in milliseconds since the Epoch.", - "format": "int64" - }, - "kind": { - "type": "string", - "description": "This kind represents a subscriptionPurchase object in the androidpublisher service.", - "default": "androidpublisher#subscriptionPurchase" - }, - "validUntilTimestampMsec": { - "type": "string", - "description": "Time at which the subscription will expire, in milliseconds since the Epoch.", - "format": "int64" - } - } - } - }, - "resources": { - "purchases": { - "methods": { - "cancel": { - "id": "androidpublisher.purchases.cancel", - "path": "{packageName}/subscriptions/{subscriptionId}/purchases/{token}/cancel", - "httpMethod": "POST", - "description": "Cancels a user's subscription purchase. The subscription remains valid until its expiration time.", - "parameters": { - "packageName": { - "type": "string", - "description": "The package name of the application for which this subscription was purchased (for example, 'com.some.thing').", - "required": true, - "location": "path" - }, - "subscriptionId": { - "type": "string", - "description": "The purchased subscription ID (for example, 'monthly001').", - "required": true, - "location": "path" - }, - "token": { - "type": "string", - "description": "The token provided to the user's device when the subscription was purchased.", - "required": true, - "location": "path" + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/androidpublisher": { + "description": "View and manage your Google Play Developer account" + } } - }, - "parameterOrder": [ - "packageName", - "subscriptionId", - "token" - ], - "scopes": [ - "https://www.googleapis.com/auth/androidpublisher" - ] - }, - "get": { - "id": "androidpublisher.purchases.get", - "path": "{packageName}/subscriptions/{subscriptionId}/purchases/{token}", - "httpMethod": "GET", - "description": "Checks whether a user's subscription purchase is valid and returns its expiry time.", - "parameters": { - "packageName": { - "type": "string", - "description": "The package name of the application for which this subscription was purchased (for example, 'com.some.thing').", - "required": true, - "location": "path" - }, - "subscriptionId": { - "type": "string", - "description": "The purchased subscription ID (for example, 'monthly001').", - "required": true, - "location": "path" - }, - "token": { - "type": "string", - "description": "The token provided to the user's device when the subscription was purchased.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "packageName", - "subscriptionId", - "token" - ], - "response": { - "$ref": "SubscriptionPurchase" - }, - "scopes": [ - "https://www.googleapis.com/auth/androidpublisher" - ] } - } - } - } -} + }, + "basePath": "/androidpublisher/v1/applications/", + "baseUrl": "https://www.googleapis.com/androidpublisher/v1/applications/", + "batchPath": "batch/androidpublisher/v1", + "canonicalName": "Android Publisher", + "description": "Lets Android application developers access their Google Play accounts.", + "discoveryVersion": "v1", + "documentationLink": "https://developers.google.com/android-publisher", + "etag": "\"-iA1DTNe4s-I6JZXPt1t1Ypy8IU/R8egrhZl5j6Tk7CLvSpuFNhpTLc\"", + "icons": { + "x16": "https://www.google.com/images/icons/product/android-16.png", + "x32": "https://www.google.com/images/icons/product/android-32.png" + }, + "id": "androidpublisher:v1", + "kind": "discovery#restDescription", + "name": "androidpublisher", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "alt": { + "default": "json", + "description": "Data format for the response.", + "enum": [ + "json" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json" + ], + "location": "query", + "type": "string" + }, + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "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.", + "location": "query", + "type": "string" + }, + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", + "location": "query", + "type": "string" + }, + "userIp": { + "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", + "location": "query", + "type": "string" + } + }, + "protocol": "rest", + "resources": { + "purchases": { + "methods": { + "cancel": { + "description": "Cancels a user's subscription purchase. The subscription remains valid until its expiration time.", + "httpMethod": "POST", + "id": "androidpublisher.purchases.cancel", + "parameterOrder": [ + "packageName", + "subscriptionId", + "token" + ], + "parameters": { + "packageName": { + "description": "The package name of the application for which this subscription was purchased (for example, 'com.some.thing').", + "location": "path", + "required": true, + "type": "string" + }, + "subscriptionId": { + "description": "The purchased subscription ID (for example, 'monthly001').", + "location": "path", + "required": true, + "type": "string" + }, + "token": { + "description": "The token provided to the user's device when the subscription was purchased.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{packageName}/subscriptions/{subscriptionId}/purchases/{token}/cancel", + "scopes": [ + "https://www.googleapis.com/auth/androidpublisher" + ] + }, + "get": { + "description": "Checks whether a user's subscription purchase is valid and returns its expiry time.", + "httpMethod": "GET", + "id": "androidpublisher.purchases.get", + "parameterOrder": [ + "packageName", + "subscriptionId", + "token" + ], + "parameters": { + "packageName": { + "description": "The package name of the application for which this subscription was purchased (for example, 'com.some.thing').", + "location": "path", + "required": true, + "type": "string" + }, + "subscriptionId": { + "description": "The purchased subscription ID (for example, 'monthly001').", + "location": "path", + "required": true, + "type": "string" + }, + "token": { + "description": "The token provided to the user's device when the subscription was purchased.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{packageName}/subscriptions/{subscriptionId}/purchases/{token}", + "response": { + "$ref": "SubscriptionPurchase" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidpublisher" + ] + } + } + } + }, + "revision": "20180121", + "rootUrl": "https://www.googleapis.com/", + "schemas": { + "SubscriptionPurchase": { + "description": "A SubscriptionPurchase resource indicates the status of a user's subscription purchase.", + "id": "SubscriptionPurchase", + "properties": { + "autoRenewing": { + "description": "Whether the subscription will automatically be renewed when it reaches its current expiry time.", + "type": "boolean" + }, + "initiationTimestampMsec": { + "description": "Time at which the subscription was granted, in milliseconds since the Epoch.", + "format": "int64", + "type": "string" + }, + "kind": { + "default": "androidpublisher#subscriptionPurchase", + "description": "This kind represents a subscriptionPurchase object in the androidpublisher service.", + "type": "string" + }, + "validUntilTimestampMsec": { + "description": "Time at which the subscription will expire, in milliseconds since the Epoch.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + } + }, + "servicePath": "androidpublisher/v1/applications/", + "title": "Google Play Developer API", + "version": "v1" +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/androidpublisher/v2/androidpublisher-api.json b/vendor/google.golang.org/api/androidpublisher/v2/androidpublisher-api.json index deca40660..057e8e0ee 100644 --- a/vendor/google.golang.org/api/androidpublisher/v2/androidpublisher-api.json +++ b/vendor/google.golang.org/api/androidpublisher/v2/androidpublisher-api.json @@ -1,3500 +1,3435 @@ { - "kind": "discovery#restDescription", - "etag": "\"YWOzh2SDasdU84ArJnpYek-OMdg/eg3_eCWxB9N1rGAK3E85za1viGs\"", - "discoveryVersion": "v1", - "id": "androidpublisher:v2", - "name": "androidpublisher", - "canonicalName": "Android Publisher", - "version": "v2", - "revision": "20180114", - "title": "Google Play Developer API", - "description": "Lets Android application developers access their Google Play accounts.", - "ownerDomain": "google.com", - "ownerName": "Google", - "icons": { - "x16": "https://www.google.com/images/icons/product/android-16.png", - "x32": "https://www.google.com/images/icons/product/android-32.png" - }, - "documentationLink": "https://developers.google.com/android-publisher", - "protocol": "rest", - "baseUrl": "https://www.googleapis.com/androidpublisher/v2/applications/", - "basePath": "/androidpublisher/v2/applications/", - "rootUrl": "https://www.googleapis.com/", - "servicePath": "androidpublisher/v2/applications/", - "batchPath": "batch/androidpublisher/v2", - "parameters": { - "alt": { - "type": "string", - "description": "Data format for the response.", - "default": "json", - "enum": [ - "json" - ], - "enumDescriptions": [ - "Responses with Content-Type of application/json" - ], - "location": "query" - }, - "fields": { - "type": "string", - "description": "Selector specifying which fields to include in a partial response.", - "location": "query" - }, - "key": { - "type": "string", - "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" - }, - "oauth_token": { - "type": "string", - "description": "OAuth 2.0 token for the current user.", - "location": "query" - }, - "prettyPrint": { - "type": "boolean", - "description": "Returns response with indentations and line breaks.", - "default": "true", - "location": "query" - }, - "quotaUser": { - "type": "string", - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", - "location": "query" - }, - "userIp": { - "type": "string", - "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", - "location": "query" - } - }, - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/androidpublisher": { - "description": "View and manage your Google Play Developer account" + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/androidpublisher": { + "description": "View and manage your Google Play Developer account" + } + } } - } - } - }, - "schemas": { - "Apk": { - "id": "Apk", - "type": "object", - "properties": { - "binary": { - "$ref": "ApkBinary", - "description": "Information about the binary payload of this APK." - }, - "versionCode": { - "type": "integer", - "description": "The version code of the APK, as specified in the APK's manifest file.", - "format": "int32" - } - } }, - "ApkBinary": { - "id": "ApkBinary", - "type": "object", - "description": "Represents the binary payload of an APK.", - "properties": { - "sha1": { - "type": "string", - "description": "A sha1 hash of the APK payload, encoded as a hex string and matching the output of the sha1sum command." - }, - "sha256": { - "type": "string", - "description": "A sha256 hash of the APK payload, encoded as a hex string and matching the output of the sha256sum command." - } - } + "basePath": "/androidpublisher/v2/applications/", + "baseUrl": "https://www.googleapis.com/androidpublisher/v2/applications/", + "batchPath": "batch/androidpublisher/v2", + "canonicalName": "Android Publisher", + "description": "Lets Android application developers access their Google Play accounts.", + "discoveryVersion": "v1", + "documentationLink": "https://developers.google.com/android-publisher", + "etag": "\"-iA1DTNe4s-I6JZXPt1t1Ypy8IU/eJTlhAFjCoKr6Jd4MPFAfd8JyPA\"", + "icons": { + "x16": "https://www.google.com/images/icons/product/android-16.png", + "x32": "https://www.google.com/images/icons/product/android-32.png" }, - "ApkListing": { - "id": "ApkListing", - "type": "object", - "properties": { - "language": { - "type": "string", - "description": "The language code, in BCP 47 format (eg \"en-US\")." - }, - "recentChanges": { - "type": "string", - "description": "Describe what's new in your APK." - } - } - }, - "ApkListingsListResponse": { - "id": "ApkListingsListResponse", - "type": "object", - "properties": { - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"androidpublisher#apkListingsListResponse\".", - "default": "androidpublisher#apkListingsListResponse" - }, - "listings": { - "type": "array", - "items": { - "$ref": "ApkListing" - } - } - } - }, - "ApksAddExternallyHostedRequest": { - "id": "ApksAddExternallyHostedRequest", - "type": "object", - "properties": { - "externallyHostedApk": { - "$ref": "ExternallyHostedApk", - "description": "The definition of the externally-hosted APK and where it is located." - } - } - }, - "ApksAddExternallyHostedResponse": { - "id": "ApksAddExternallyHostedResponse", - "type": "object", - "properties": { - "externallyHostedApk": { - "$ref": "ExternallyHostedApk", - "description": "The definition of the externally-hosted APK and where it is located." - } - } - }, - "ApksListResponse": { - "id": "ApksListResponse", - "type": "object", - "properties": { - "apks": { - "type": "array", - "items": { - "$ref": "Apk" - } - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"androidpublisher#apksListResponse\".", - "default": "androidpublisher#apksListResponse" - } - } - }, - "AppDetails": { - "id": "AppDetails", - "type": "object", - "properties": { - "contactEmail": { - "type": "string", - "description": "The user-visible support email for this app." - }, - "contactPhone": { - "type": "string", - "description": "The user-visible support telephone number for this app." - }, - "contactWebsite": { - "type": "string", - "description": "The user-visible website for this app." - }, - "defaultLanguage": { - "type": "string", - "description": "Default language code, in BCP 47 format (eg \"en-US\")." - } - } - }, - "AppEdit": { - "id": "AppEdit", - "type": "object", - "description": "Represents an edit of an app. An edit allows clients to make multiple changes before committing them in one operation.", - "properties": { - "expiryTimeSeconds": { - "type": "string", - "description": "The time at which the edit will expire and will be no longer valid for use in any subsequent API calls (encoded as seconds since the Epoch)." - }, - "id": { - "type": "string", - "description": "The ID of the edit that can be used in subsequent API calls." - } - } - }, - "Comment": { - "id": "Comment", - "type": "object", - "properties": { - "developerComment": { - "$ref": "DeveloperComment", - "description": "A comment from a developer." - }, - "userComment": { - "$ref": "UserComment", - "description": "A comment from a user." - } - } - }, - "DeobfuscationFile": { - "id": "DeobfuscationFile", - "type": "object", - "description": "Represents a deobfuscation file.", - "properties": { - "symbolType": { - "type": "string", - "description": "The type of the deobfuscation file." - } - } - }, - "DeobfuscationFilesUploadResponse": { - "id": "DeobfuscationFilesUploadResponse", - "type": "object", - "properties": { - "deobfuscationFile": { - "$ref": "DeobfuscationFile" - } - } - }, - "DeveloperComment": { - "id": "DeveloperComment", - "type": "object", - "properties": { - "lastModified": { - "$ref": "Timestamp", - "description": "The last time at which this comment was updated." - }, - "text": { - "type": "string", - "description": "The content of the comment, i.e. reply body." - } - } - }, - "DeviceMetadata": { - "id": "DeviceMetadata", - "type": "object", - "properties": { - "cpuMake": { - "type": "string", - "description": "Device CPU make e.g. \"Qualcomm\"" - }, - "cpuModel": { - "type": "string", - "description": "Device CPU model e.g. \"MSM8974\"" - }, - "deviceClass": { - "type": "string", - "description": "Device class (e.g. tablet)" - }, - "glEsVersion": { - "type": "integer", - "description": "OpenGL version", - "format": "int32" - }, - "manufacturer": { - "type": "string", - "description": "Device manufacturer (e.g. Motorola)" - }, - "nativePlatform": { - "type": "string", - "description": "Comma separated list of native platforms (e.g. \"arm\", \"arm7\")" - }, - "productName": { - "type": "string", - "description": "Device model name (e.g. Droid)" - }, - "ramMb": { - "type": "integer", - "description": "Device RAM in Megabytes e.g. \"2048\"", - "format": "int32" - }, - "screenDensityDpi": { - "type": "integer", - "description": "Screen density in DPI", - "format": "int32" - }, - "screenHeightPx": { - "type": "integer", - "description": "Screen height in pixels", - "format": "int32" - }, - "screenWidthPx": { - "type": "integer", - "description": "Screen width in pixels", - "format": "int32" - } - } - }, - "Entitlement": { - "id": "Entitlement", - "type": "object", - "description": "An Entitlement resource indicates a user's current entitlement to an inapp item or subscription.", - "properties": { - "kind": { - "type": "string", - "description": "This kind represents an entitlement object in the androidpublisher service.", - "default": "androidpublisher#entitlement" - }, - "productId": { - "type": "string", - "description": "The SKU of the product." - }, - "productType": { - "type": "string", - "description": "The type of the inapp product. Possible values are: \n- In-app item: \"inapp\" \n- Subscription: \"subs\"" - }, - "token": { - "type": "string", - "description": "The token which can be verified using the subscriptions or products API." - } - } - }, - "EntitlementsListResponse": { - "id": "EntitlementsListResponse", - "type": "object", - "properties": { - "pageInfo": { - "$ref": "PageInfo" - }, - "resources": { - "type": "array", - "items": { - "$ref": "Entitlement" - } - }, - "tokenPagination": { - "$ref": "TokenPagination" - } - } - }, - "ExpansionFile": { - "id": "ExpansionFile", - "type": "object", - "properties": { - "fileSize": { - "type": "string", - "description": "If set this field indicates that this APK has an Expansion File uploaded to it: this APK does not reference another APK's Expansion File. The field's value is the size of the uploaded Expansion File in bytes.", - "format": "int64" - }, - "referencesVersion": { - "type": "integer", - "description": "If set this APK's Expansion File references another APK's Expansion File. The file_size field will not be set.", - "format": "int32" - } - } - }, - "ExpansionFilesUploadResponse": { - "id": "ExpansionFilesUploadResponse", - "type": "object", - "properties": { - "expansionFile": { - "$ref": "ExpansionFile" - } - } - }, - "ExternallyHostedApk": { - "id": "ExternallyHostedApk", - "type": "object", - "description": "Defines an APK available for this application that is hosted externally and not uploaded to Google Play. This function is only available to enterprises who are using Google Play for Work, and whos application is restricted to the enterprise private channel", - "properties": { - "applicationLabel": { - "type": "string", - "description": "The application label." - }, - "certificateBase64s": { - "type": "array", - "description": "A certificate (or array of certificates if a certificate-chain is used) used to signed this APK, represented as a base64 encoded byte array.", - "items": { + "id": "androidpublisher:v2", + "kind": "discovery#restDescription", + "name": "androidpublisher", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "alt": { + "default": "json", + "description": "Data format for the response.", + "enum": [ + "json" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json" + ], + "location": "query", "type": "string" - } }, - "externallyHostedUrl": { - "type": "string", - "description": "The URL at which the APK is hosted. This must be an https URL." - }, - "fileSha1Base64": { - "type": "string", - "description": "The SHA1 checksum of this APK, represented as a base64 encoded byte array." - }, - "fileSha256Base64": { - "type": "string", - "description": "The SHA256 checksum of this APK, represented as a base64 encoded byte array." - }, - "fileSize": { - "type": "string", - "description": "The file size in bytes of this APK.", - "format": "int64" - }, - "iconBase64": { - "type": "string", - "description": "The icon image from the APK, as a base64 encoded byte array." - }, - "maximumSdk": { - "type": "integer", - "description": "The maximum SDK supported by this APK (optional).", - "format": "int32" - }, - "minimumSdk": { - "type": "integer", - "description": "The minimum SDK targeted by this APK.", - "format": "int32" - }, - "nativeCodes": { - "type": "array", - "description": "The native code environments supported by this APK (optional).", - "items": { + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "location": "query", "type": "string" - } }, - "packageName": { - "type": "string", - "description": "The package name." - }, - "usesFeatures": { - "type": "array", - "description": "The features required by this APK (optional).", - "items": { + "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" - } }, - "usesPermissions": { - "type": "array", - "description": "The permissions requested by this APK.", - "items": { - "$ref": "ExternallyHostedApkUsesPermission" - } + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" }, - "versionCode": { - "type": "integer", - "description": "The version code of this APK.", - "format": "int32" + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" }, - "versionName": { - "type": "string", - "description": "The version name of this APK." + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", + "location": "query", + "type": "string" + }, + "userIp": { + "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", + "location": "query", + "type": "string" } - } }, - "ExternallyHostedApkUsesPermission": { - "id": "ExternallyHostedApkUsesPermission", - "type": "object", - "description": "A permission used by this APK.", - "properties": { - "maxSdkVersion": { - "type": "integer", - "description": "Optionally, the maximum SDK version for which the permission is required.", - "format": "int32" + "protocol": "rest", + "resources": { + "edits": { + "methods": { + "commit": { + "description": "Commits/applies the changes made in this edit back to the app.", + "httpMethod": "POST", + "id": "androidpublisher.edits.commit", + "parameterOrder": [ + "packageName", + "editId" + ], + "parameters": { + "editId": { + "description": "Unique identifier for this edit.", + "location": "path", + "required": true, + "type": "string" + }, + "packageName": { + "description": "Unique identifier for the Android app that is being updated; for example, \"com.spiffygame\".", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{packageName}/edits/{editId}:commit", + "response": { + "$ref": "AppEdit" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidpublisher" + ] + }, + "delete": { + "description": "Deletes an edit for an app. Creating a new edit will automatically delete any of your previous edits so this method need only be called if you want to preemptively abandon an edit.", + "httpMethod": "DELETE", + "id": "androidpublisher.edits.delete", + "parameterOrder": [ + "packageName", + "editId" + ], + "parameters": { + "editId": { + "description": "Unique identifier for this edit.", + "location": "path", + "required": true, + "type": "string" + }, + "packageName": { + "description": "Unique identifier for the Android app that is being updated; for example, \"com.spiffygame\".", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{packageName}/edits/{editId}", + "scopes": [ + "https://www.googleapis.com/auth/androidpublisher" + ] + }, + "get": { + "description": "Returns information about the edit specified. Calls will fail if the edit is no long active (e.g. has been deleted, superseded or expired).", + "httpMethod": "GET", + "id": "androidpublisher.edits.get", + "parameterOrder": [ + "packageName", + "editId" + ], + "parameters": { + "editId": { + "description": "Unique identifier for this edit.", + "location": "path", + "required": true, + "type": "string" + }, + "packageName": { + "description": "Unique identifier for the Android app that is being updated; for example, \"com.spiffygame\".", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{packageName}/edits/{editId}", + "response": { + "$ref": "AppEdit" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidpublisher" + ] + }, + "insert": { + "description": "Creates a new edit for an app, populated with the app's current state.", + "httpMethod": "POST", + "id": "androidpublisher.edits.insert", + "parameterOrder": [ + "packageName" + ], + "parameters": { + "packageName": { + "description": "Unique identifier for the Android app that is being updated; for example, \"com.spiffygame\".", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{packageName}/edits", + "request": { + "$ref": "AppEdit" + }, + "response": { + "$ref": "AppEdit" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidpublisher" + ] + }, + "validate": { + "description": "Checks that the edit can be successfully committed. The edit's changes are not applied to the live app.", + "httpMethod": "POST", + "id": "androidpublisher.edits.validate", + "parameterOrder": [ + "packageName", + "editId" + ], + "parameters": { + "editId": { + "description": "Unique identifier for this edit.", + "location": "path", + "required": true, + "type": "string" + }, + "packageName": { + "description": "Unique identifier for the Android app that is being updated; for example, \"com.spiffygame\".", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{packageName}/edits/{editId}:validate", + "response": { + "$ref": "AppEdit" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidpublisher" + ] + } + }, + "resources": { + "apklistings": { + "methods": { + "delete": { + "description": "Deletes the APK-specific localized listing for a specified APK and language code.", + "httpMethod": "DELETE", + "id": "androidpublisher.edits.apklistings.delete", + "parameterOrder": [ + "packageName", + "editId", + "apkVersionCode", + "language" + ], + "parameters": { + "apkVersionCode": { + "description": "The APK version code whose APK-specific listings should be read or modified.", + "format": "int32", + "location": "path", + "required": true, + "type": "integer" + }, + "editId": { + "description": "Unique identifier for this edit.", + "location": "path", + "required": true, + "type": "string" + }, + "language": { + "description": "The language code (a BCP-47 language tag) of the APK-specific localized listing to read or modify. For example, to select Austrian German, pass \"de-AT\".", + "location": "path", + "required": true, + "type": "string" + }, + "packageName": { + "description": "Unique identifier for the Android app that is being updated; for example, \"com.spiffygame\".", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{packageName}/edits/{editId}/apks/{apkVersionCode}/listings/{language}", + "scopes": [ + "https://www.googleapis.com/auth/androidpublisher" + ] + }, + "deleteall": { + "description": "Deletes all the APK-specific localized listings for a specified APK.", + "httpMethod": "DELETE", + "id": "androidpublisher.edits.apklistings.deleteall", + "parameterOrder": [ + "packageName", + "editId", + "apkVersionCode" + ], + "parameters": { + "apkVersionCode": { + "description": "The APK version code whose APK-specific listings should be read or modified.", + "format": "int32", + "location": "path", + "required": true, + "type": "integer" + }, + "editId": { + "description": "Unique identifier for this edit.", + "location": "path", + "required": true, + "type": "string" + }, + "packageName": { + "description": "Unique identifier for the Android app that is being updated; for example, \"com.spiffygame\".", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{packageName}/edits/{editId}/apks/{apkVersionCode}/listings", + "scopes": [ + "https://www.googleapis.com/auth/androidpublisher" + ] + }, + "get": { + "description": "Fetches the APK-specific localized listing for a specified APK and language code.", + "httpMethod": "GET", + "id": "androidpublisher.edits.apklistings.get", + "parameterOrder": [ + "packageName", + "editId", + "apkVersionCode", + "language" + ], + "parameters": { + "apkVersionCode": { + "description": "The APK version code whose APK-specific listings should be read or modified.", + "format": "int32", + "location": "path", + "required": true, + "type": "integer" + }, + "editId": { + "description": "Unique identifier for this edit.", + "location": "path", + "required": true, + "type": "string" + }, + "language": { + "description": "The language code (a BCP-47 language tag) of the APK-specific localized listing to read or modify. For example, to select Austrian German, pass \"de-AT\".", + "location": "path", + "required": true, + "type": "string" + }, + "packageName": { + "description": "Unique identifier for the Android app that is being updated; for example, \"com.spiffygame\".", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{packageName}/edits/{editId}/apks/{apkVersionCode}/listings/{language}", + "response": { + "$ref": "ApkListing" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidpublisher" + ] + }, + "list": { + "description": "Lists all the APK-specific localized listings for a specified APK.", + "httpMethod": "GET", + "id": "androidpublisher.edits.apklistings.list", + "parameterOrder": [ + "packageName", + "editId", + "apkVersionCode" + ], + "parameters": { + "apkVersionCode": { + "description": "The APK version code whose APK-specific listings should be read or modified.", + "format": "int32", + "location": "path", + "required": true, + "type": "integer" + }, + "editId": { + "description": "Unique identifier for this edit.", + "location": "path", + "required": true, + "type": "string" + }, + "packageName": { + "description": "Unique identifier for the Android app that is being updated; for example, \"com.spiffygame\".", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{packageName}/edits/{editId}/apks/{apkVersionCode}/listings", + "response": { + "$ref": "ApkListingsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidpublisher" + ] + }, + "patch": { + "description": "Updates or creates the APK-specific localized listing for a specified APK and language code. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "androidpublisher.edits.apklistings.patch", + "parameterOrder": [ + "packageName", + "editId", + "apkVersionCode", + "language" + ], + "parameters": { + "apkVersionCode": { + "description": "The APK version code whose APK-specific listings should be read or modified.", + "format": "int32", + "location": "path", + "required": true, + "type": "integer" + }, + "editId": { + "description": "Unique identifier for this edit.", + "location": "path", + "required": true, + "type": "string" + }, + "language": { + "description": "The language code (a BCP-47 language tag) of the APK-specific localized listing to read or modify. For example, to select Austrian German, pass \"de-AT\".", + "location": "path", + "required": true, + "type": "string" + }, + "packageName": { + "description": "Unique identifier for the Android app that is being updated; for example, \"com.spiffygame\".", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{packageName}/edits/{editId}/apks/{apkVersionCode}/listings/{language}", + "request": { + "$ref": "ApkListing" + }, + "response": { + "$ref": "ApkListing" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidpublisher" + ] + }, + "update": { + "description": "Updates or creates the APK-specific localized listing for a specified APK and language code.", + "httpMethod": "PUT", + "id": "androidpublisher.edits.apklistings.update", + "parameterOrder": [ + "packageName", + "editId", + "apkVersionCode", + "language" + ], + "parameters": { + "apkVersionCode": { + "description": "The APK version code whose APK-specific listings should be read or modified.", + "format": "int32", + "location": "path", + "required": true, + "type": "integer" + }, + "editId": { + "description": "Unique identifier for this edit.", + "location": "path", + "required": true, + "type": "string" + }, + "language": { + "description": "The language code (a BCP-47 language tag) of the APK-specific localized listing to read or modify. For example, to select Austrian German, pass \"de-AT\".", + "location": "path", + "required": true, + "type": "string" + }, + "packageName": { + "description": "Unique identifier for the Android app that is being updated; for example, \"com.spiffygame\".", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{packageName}/edits/{editId}/apks/{apkVersionCode}/listings/{language}", + "request": { + "$ref": "ApkListing" + }, + "response": { + "$ref": "ApkListing" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidpublisher" + ] + } + } + }, + "apks": { + "methods": { + "addexternallyhosted": { + "description": "Creates a new APK without uploading the APK itself to Google Play, instead hosting the APK at a specified URL. This function is only available to enterprises using Google Play for Work whose application is configured to restrict distribution to the enterprise domain.", + "httpMethod": "POST", + "id": "androidpublisher.edits.apks.addexternallyhosted", + "parameterOrder": [ + "packageName", + "editId" + ], + "parameters": { + "editId": { + "description": "Unique identifier for this edit.", + "location": "path", + "required": true, + "type": "string" + }, + "packageName": { + "description": "Unique identifier for the Android app that is being updated; for example, \"com.spiffygame\".", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{packageName}/edits/{editId}/apks/externallyHosted", + "request": { + "$ref": "ApksAddExternallyHostedRequest" + }, + "response": { + "$ref": "ApksAddExternallyHostedResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidpublisher" + ] + }, + "list": { + "httpMethod": "GET", + "id": "androidpublisher.edits.apks.list", + "parameterOrder": [ + "packageName", + "editId" + ], + "parameters": { + "editId": { + "description": "Unique identifier for this edit.", + "location": "path", + "required": true, + "type": "string" + }, + "packageName": { + "description": "Unique identifier for the Android app that is being updated; for example, \"com.spiffygame\".", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{packageName}/edits/{editId}/apks", + "response": { + "$ref": "ApksListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidpublisher" + ] + }, + "upload": { + "httpMethod": "POST", + "id": "androidpublisher.edits.apks.upload", + "mediaUpload": { + "accept": [ + "application/octet-stream", + "application/vnd.android.package-archive" + ], + "maxSize": "1GB", + "protocols": { + "resumable": { + "multipart": true, + "path": "/resumable/upload/androidpublisher/v2/applications/{packageName}/edits/{editId}/apks" + }, + "simple": { + "multipart": true, + "path": "/upload/androidpublisher/v2/applications/{packageName}/edits/{editId}/apks" + } + } + }, + "parameterOrder": [ + "packageName", + "editId" + ], + "parameters": { + "editId": { + "description": "Unique identifier for this edit.", + "location": "path", + "required": true, + "type": "string" + }, + "packageName": { + "description": "Unique identifier for the Android app that is being updated; for example, \"com.spiffygame\".", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{packageName}/edits/{editId}/apks", + "response": { + "$ref": "Apk" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidpublisher" + ], + "supportsMediaUpload": true + } + } + }, + "deobfuscationfiles": { + "methods": { + "upload": { + "description": "Uploads the deobfuscation file of the specified APK. If a deobfuscation file already exists, it will be replaced.", + "httpMethod": "POST", + "id": "androidpublisher.edits.deobfuscationfiles.upload", + "mediaUpload": { + "accept": [ + "application/octet-stream" + ], + "maxSize": "300MB", + "protocols": { + "resumable": { + "multipart": true, + "path": "/resumable/upload/androidpublisher/v2/applications/{packageName}/edits/{editId}/apks/{apkVersionCode}/deobfuscationFiles/{deobfuscationFileType}" + }, + "simple": { + "multipart": true, + "path": "/upload/androidpublisher/v2/applications/{packageName}/edits/{editId}/apks/{apkVersionCode}/deobfuscationFiles/{deobfuscationFileType}" + } + } + }, + "parameterOrder": [ + "packageName", + "editId", + "apkVersionCode", + "deobfuscationFileType" + ], + "parameters": { + "apkVersionCode": { + "description": "The version code of the APK whose deobfuscation file is being uploaded.", + "format": "int32", + "location": "path", + "required": true, + "type": "integer" + }, + "deobfuscationFileType": { + "enum": [ + "proguard" + ], + "enumDescriptions": [ + "" + ], + "location": "path", + "required": true, + "type": "string" + }, + "editId": { + "description": "Unique identifier for this edit.", + "location": "path", + "required": true, + "type": "string" + }, + "packageName": { + "description": "Unique identifier of the Android app for which the deobfuscatiuon files are being uploaded; for example, \"com.spiffygame\".", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{packageName}/edits/{editId}/apks/{apkVersionCode}/deobfuscationFiles/{deobfuscationFileType}", + "response": { + "$ref": "DeobfuscationFilesUploadResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidpublisher" + ], + "supportsMediaUpload": true + } + } + }, + "details": { + "methods": { + "get": { + "description": "Fetches app details for this edit. This includes the default language and developer support contact information.", + "httpMethod": "GET", + "id": "androidpublisher.edits.details.get", + "parameterOrder": [ + "packageName", + "editId" + ], + "parameters": { + "editId": { + "description": "Unique identifier for this edit.", + "location": "path", + "required": true, + "type": "string" + }, + "packageName": { + "description": "Unique identifier for the Android app that is being updated; for example, \"com.spiffygame\".", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{packageName}/edits/{editId}/details", + "response": { + "$ref": "AppDetails" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidpublisher" + ] + }, + "patch": { + "description": "Updates app details for this edit. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "androidpublisher.edits.details.patch", + "parameterOrder": [ + "packageName", + "editId" + ], + "parameters": { + "editId": { + "description": "Unique identifier for this edit.", + "location": "path", + "required": true, + "type": "string" + }, + "packageName": { + "description": "Unique identifier for the Android app that is being updated; for example, \"com.spiffygame\".", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{packageName}/edits/{editId}/details", + "request": { + "$ref": "AppDetails" + }, + "response": { + "$ref": "AppDetails" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidpublisher" + ] + }, + "update": { + "description": "Updates app details for this edit.", + "httpMethod": "PUT", + "id": "androidpublisher.edits.details.update", + "parameterOrder": [ + "packageName", + "editId" + ], + "parameters": { + "editId": { + "description": "Unique identifier for this edit.", + "location": "path", + "required": true, + "type": "string" + }, + "packageName": { + "description": "Unique identifier for the Android app that is being updated; for example, \"com.spiffygame\".", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{packageName}/edits/{editId}/details", + "request": { + "$ref": "AppDetails" + }, + "response": { + "$ref": "AppDetails" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidpublisher" + ] + } + } + }, + "expansionfiles": { + "methods": { + "get": { + "description": "Fetches the Expansion File configuration for the APK specified.", + "httpMethod": "GET", + "id": "androidpublisher.edits.expansionfiles.get", + "parameterOrder": [ + "packageName", + "editId", + "apkVersionCode", + "expansionFileType" + ], + "parameters": { + "apkVersionCode": { + "description": "The version code of the APK whose Expansion File configuration is being read or modified.", + "format": "int32", + "location": "path", + "required": true, + "type": "integer" + }, + "editId": { + "description": "Unique identifier for this edit.", + "location": "path", + "required": true, + "type": "string" + }, + "expansionFileType": { + "enum": [ + "main", + "patch" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "path", + "required": true, + "type": "string" + }, + "packageName": { + "description": "Unique identifier for the Android app that is being updated; for example, \"com.spiffygame\".", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{packageName}/edits/{editId}/apks/{apkVersionCode}/expansionFiles/{expansionFileType}", + "response": { + "$ref": "ExpansionFile" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidpublisher" + ] + }, + "patch": { + "description": "Updates the APK's Expansion File configuration to reference another APK's Expansion Files. To add a new Expansion File use the Upload method. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "androidpublisher.edits.expansionfiles.patch", + "parameterOrder": [ + "packageName", + "editId", + "apkVersionCode", + "expansionFileType" + ], + "parameters": { + "apkVersionCode": { + "description": "The version code of the APK whose Expansion File configuration is being read or modified.", + "format": "int32", + "location": "path", + "required": true, + "type": "integer" + }, + "editId": { + "description": "Unique identifier for this edit.", + "location": "path", + "required": true, + "type": "string" + }, + "expansionFileType": { + "enum": [ + "main", + "patch" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "path", + "required": true, + "type": "string" + }, + "packageName": { + "description": "Unique identifier for the Android app that is being updated; for example, \"com.spiffygame\".", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{packageName}/edits/{editId}/apks/{apkVersionCode}/expansionFiles/{expansionFileType}", + "request": { + "$ref": "ExpansionFile" + }, + "response": { + "$ref": "ExpansionFile" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidpublisher" + ] + }, + "update": { + "description": "Updates the APK's Expansion File configuration to reference another APK's Expansion Files. To add a new Expansion File use the Upload method.", + "httpMethod": "PUT", + "id": "androidpublisher.edits.expansionfiles.update", + "parameterOrder": [ + "packageName", + "editId", + "apkVersionCode", + "expansionFileType" + ], + "parameters": { + "apkVersionCode": { + "description": "The version code of the APK whose Expansion File configuration is being read or modified.", + "format": "int32", + "location": "path", + "required": true, + "type": "integer" + }, + "editId": { + "description": "Unique identifier for this edit.", + "location": "path", + "required": true, + "type": "string" + }, + "expansionFileType": { + "enum": [ + "main", + "patch" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "path", + "required": true, + "type": "string" + }, + "packageName": { + "description": "Unique identifier for the Android app that is being updated; for example, \"com.spiffygame\".", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{packageName}/edits/{editId}/apks/{apkVersionCode}/expansionFiles/{expansionFileType}", + "request": { + "$ref": "ExpansionFile" + }, + "response": { + "$ref": "ExpansionFile" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidpublisher" + ] + }, + "upload": { + "description": "Uploads and attaches a new Expansion File to the APK specified.", + "httpMethod": "POST", + "id": "androidpublisher.edits.expansionfiles.upload", + "mediaUpload": { + "accept": [ + "application/octet-stream" + ], + "maxSize": "2048MB", + "protocols": { + "resumable": { + "multipart": true, + "path": "/resumable/upload/androidpublisher/v2/applications/{packageName}/edits/{editId}/apks/{apkVersionCode}/expansionFiles/{expansionFileType}" + }, + "simple": { + "multipart": true, + "path": "/upload/androidpublisher/v2/applications/{packageName}/edits/{editId}/apks/{apkVersionCode}/expansionFiles/{expansionFileType}" + } + } + }, + "parameterOrder": [ + "packageName", + "editId", + "apkVersionCode", + "expansionFileType" + ], + "parameters": { + "apkVersionCode": { + "description": "The version code of the APK whose Expansion File configuration is being read or modified.", + "format": "int32", + "location": "path", + "required": true, + "type": "integer" + }, + "editId": { + "description": "Unique identifier for this edit.", + "location": "path", + "required": true, + "type": "string" + }, + "expansionFileType": { + "enum": [ + "main", + "patch" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "path", + "required": true, + "type": "string" + }, + "packageName": { + "description": "Unique identifier for the Android app that is being updated; for example, \"com.spiffygame\".", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{packageName}/edits/{editId}/apks/{apkVersionCode}/expansionFiles/{expansionFileType}", + "response": { + "$ref": "ExpansionFilesUploadResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidpublisher" + ], + "supportsMediaUpload": true + } + } + }, + "images": { + "methods": { + "delete": { + "description": "Deletes the image (specified by id) from the edit.", + "httpMethod": "DELETE", + "id": "androidpublisher.edits.images.delete", + "parameterOrder": [ + "packageName", + "editId", + "language", + "imageType", + "imageId" + ], + "parameters": { + "editId": { + "description": "Unique identifier for this edit.", + "location": "path", + "required": true, + "type": "string" + }, + "imageId": { + "description": "Unique identifier an image within the set of images attached to this edit.", + "location": "path", + "required": true, + "type": "string" + }, + "imageType": { + "enum": [ + "featureGraphic", + "icon", + "phoneScreenshots", + "promoGraphic", + "sevenInchScreenshots", + "tenInchScreenshots", + "tvBanner", + "tvScreenshots", + "wearScreenshots" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "location": "path", + "required": true, + "type": "string" + }, + "language": { + "description": "The language code (a BCP-47 language tag) of the localized listing whose images are to read or modified. For example, to select Austrian German, pass \"de-AT\".", + "location": "path", + "required": true, + "type": "string" + }, + "packageName": { + "description": "Unique identifier for the Android app that is being updated; for example, \"com.spiffygame\".", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{packageName}/edits/{editId}/listings/{language}/{imageType}/{imageId}", + "scopes": [ + "https://www.googleapis.com/auth/androidpublisher" + ] + }, + "deleteall": { + "description": "Deletes all images for the specified language and image type.", + "httpMethod": "DELETE", + "id": "androidpublisher.edits.images.deleteall", + "parameterOrder": [ + "packageName", + "editId", + "language", + "imageType" + ], + "parameters": { + "editId": { + "description": "Unique identifier for this edit.", + "location": "path", + "required": true, + "type": "string" + }, + "imageType": { + "enum": [ + "featureGraphic", + "icon", + "phoneScreenshots", + "promoGraphic", + "sevenInchScreenshots", + "tenInchScreenshots", + "tvBanner", + "tvScreenshots", + "wearScreenshots" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "location": "path", + "required": true, + "type": "string" + }, + "language": { + "description": "The language code (a BCP-47 language tag) of the localized listing whose images are to read or modified. For example, to select Austrian German, pass \"de-AT\".", + "location": "path", + "required": true, + "type": "string" + }, + "packageName": { + "description": "Unique identifier for the Android app that is being updated; for example, \"com.spiffygame\".", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{packageName}/edits/{editId}/listings/{language}/{imageType}", + "response": { + "$ref": "ImagesDeleteAllResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidpublisher" + ] + }, + "list": { + "description": "Lists all images for the specified language and image type.", + "httpMethod": "GET", + "id": "androidpublisher.edits.images.list", + "parameterOrder": [ + "packageName", + "editId", + "language", + "imageType" + ], + "parameters": { + "editId": { + "description": "Unique identifier for this edit.", + "location": "path", + "required": true, + "type": "string" + }, + "imageType": { + "enum": [ + "featureGraphic", + "icon", + "phoneScreenshots", + "promoGraphic", + "sevenInchScreenshots", + "tenInchScreenshots", + "tvBanner", + "tvScreenshots", + "wearScreenshots" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "location": "path", + "required": true, + "type": "string" + }, + "language": { + "description": "The language code (a BCP-47 language tag) of the localized listing whose images are to read or modified. For example, to select Austrian German, pass \"de-AT\".", + "location": "path", + "required": true, + "type": "string" + }, + "packageName": { + "description": "Unique identifier for the Android app that is being updated; for example, \"com.spiffygame\".", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{packageName}/edits/{editId}/listings/{language}/{imageType}", + "response": { + "$ref": "ImagesListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidpublisher" + ] + }, + "upload": { + "description": "Uploads a new image and adds it to the list of images for the specified language and image type.", + "httpMethod": "POST", + "id": "androidpublisher.edits.images.upload", + "mediaUpload": { + "accept": [ + "image/*" + ], + "maxSize": "15MB", + "protocols": { + "resumable": { + "multipart": true, + "path": "/resumable/upload/androidpublisher/v2/applications/{packageName}/edits/{editId}/listings/{language}/{imageType}" + }, + "simple": { + "multipart": true, + "path": "/upload/androidpublisher/v2/applications/{packageName}/edits/{editId}/listings/{language}/{imageType}" + } + } + }, + "parameterOrder": [ + "packageName", + "editId", + "language", + "imageType" + ], + "parameters": { + "editId": { + "description": "Unique identifier for this edit.", + "location": "path", + "required": true, + "type": "string" + }, + "imageType": { + "enum": [ + "featureGraphic", + "icon", + "phoneScreenshots", + "promoGraphic", + "sevenInchScreenshots", + "tenInchScreenshots", + "tvBanner", + "tvScreenshots", + "wearScreenshots" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "location": "path", + "required": true, + "type": "string" + }, + "language": { + "description": "The language code (a BCP-47 language tag) of the localized listing whose images are to read or modified. For example, to select Austrian German, pass \"de-AT\".", + "location": "path", + "required": true, + "type": "string" + }, + "packageName": { + "description": "Unique identifier for the Android app that is being updated; for example, \"com.spiffygame\".", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{packageName}/edits/{editId}/listings/{language}/{imageType}", + "response": { + "$ref": "ImagesUploadResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidpublisher" + ], + "supportsMediaUpload": true + } + } + }, + "listings": { + "methods": { + "delete": { + "description": "Deletes the specified localized store listing from an edit.", + "httpMethod": "DELETE", + "id": "androidpublisher.edits.listings.delete", + "parameterOrder": [ + "packageName", + "editId", + "language" + ], + "parameters": { + "editId": { + "description": "Unique identifier for this edit.", + "location": "path", + "required": true, + "type": "string" + }, + "language": { + "description": "The language code (a BCP-47 language tag) of the localized listing to read or modify. For example, to select Austrian German, pass \"de-AT\".", + "location": "path", + "required": true, + "type": "string" + }, + "packageName": { + "description": "Unique identifier for the Android app that is being updated; for example, \"com.spiffygame\".", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{packageName}/edits/{editId}/listings/{language}", + "scopes": [ + "https://www.googleapis.com/auth/androidpublisher" + ] + }, + "deleteall": { + "description": "Deletes all localized listings from an edit.", + "httpMethod": "DELETE", + "id": "androidpublisher.edits.listings.deleteall", + "parameterOrder": [ + "packageName", + "editId" + ], + "parameters": { + "editId": { + "description": "Unique identifier for this edit.", + "location": "path", + "required": true, + "type": "string" + }, + "packageName": { + "description": "Unique identifier for the Android app that is being updated; for example, \"com.spiffygame\".", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{packageName}/edits/{editId}/listings", + "scopes": [ + "https://www.googleapis.com/auth/androidpublisher" + ] + }, + "get": { + "description": "Fetches information about a localized store listing.", + "httpMethod": "GET", + "id": "androidpublisher.edits.listings.get", + "parameterOrder": [ + "packageName", + "editId", + "language" + ], + "parameters": { + "editId": { + "description": "Unique identifier for this edit.", + "location": "path", + "required": true, + "type": "string" + }, + "language": { + "description": "The language code (a BCP-47 language tag) of the localized listing to read or modify. For example, to select Austrian German, pass \"de-AT\".", + "location": "path", + "required": true, + "type": "string" + }, + "packageName": { + "description": "Unique identifier for the Android app that is being updated; for example, \"com.spiffygame\".", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{packageName}/edits/{editId}/listings/{language}", + "response": { + "$ref": "Listing" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidpublisher" + ] + }, + "list": { + "description": "Returns all of the localized store listings attached to this edit.", + "httpMethod": "GET", + "id": "androidpublisher.edits.listings.list", + "parameterOrder": [ + "packageName", + "editId" + ], + "parameters": { + "editId": { + "description": "Unique identifier for this edit.", + "location": "path", + "required": true, + "type": "string" + }, + "packageName": { + "description": "Unique identifier for the Android app that is being updated; for example, \"com.spiffygame\".", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{packageName}/edits/{editId}/listings", + "response": { + "$ref": "ListingsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidpublisher" + ] + }, + "patch": { + "description": "Creates or updates a localized store listing. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "androidpublisher.edits.listings.patch", + "parameterOrder": [ + "packageName", + "editId", + "language" + ], + "parameters": { + "editId": { + "description": "Unique identifier for this edit.", + "location": "path", + "required": true, + "type": "string" + }, + "language": { + "description": "The language code (a BCP-47 language tag) of the localized listing to read or modify. For example, to select Austrian German, pass \"de-AT\".", + "location": "path", + "required": true, + "type": "string" + }, + "packageName": { + "description": "Unique identifier for the Android app that is being updated; for example, \"com.spiffygame\".", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{packageName}/edits/{editId}/listings/{language}", + "request": { + "$ref": "Listing" + }, + "response": { + "$ref": "Listing" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidpublisher" + ] + }, + "update": { + "description": "Creates or updates a localized store listing.", + "httpMethod": "PUT", + "id": "androidpublisher.edits.listings.update", + "parameterOrder": [ + "packageName", + "editId", + "language" + ], + "parameters": { + "editId": { + "description": "Unique identifier for this edit.", + "location": "path", + "required": true, + "type": "string" + }, + "language": { + "description": "The language code (a BCP-47 language tag) of the localized listing to read or modify. For example, to select Austrian German, pass \"de-AT\".", + "location": "path", + "required": true, + "type": "string" + }, + "packageName": { + "description": "Unique identifier for the Android app that is being updated; for example, \"com.spiffygame\".", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{packageName}/edits/{editId}/listings/{language}", + "request": { + "$ref": "Listing" + }, + "response": { + "$ref": "Listing" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidpublisher" + ] + } + } + }, + "testers": { + "methods": { + "get": { + "httpMethod": "GET", + "id": "androidpublisher.edits.testers.get", + "parameterOrder": [ + "packageName", + "editId", + "track" + ], + "parameters": { + "editId": { + "description": "Unique identifier for this edit.", + "location": "path", + "required": true, + "type": "string" + }, + "packageName": { + "description": "Unique identifier for the Android app that is being updated; for example, \"com.spiffygame\".", + "location": "path", + "required": true, + "type": "string" + }, + "track": { + "description": "The track to read or modify. Acceptable values are: \"alpha\", \"beta\", \"production\", \"rollout\" or \"internal\".", + "location": "path", + "pattern": "(alpha|beta|production|rollout|internal)", + "required": true, + "type": "string" + } + }, + "path": "{packageName}/edits/{editId}/testers/{track}", + "response": { + "$ref": "Testers" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidpublisher" + ] + }, + "patch": { + "httpMethod": "PATCH", + "id": "androidpublisher.edits.testers.patch", + "parameterOrder": [ + "packageName", + "editId", + "track" + ], + "parameters": { + "editId": { + "description": "Unique identifier for this edit.", + "location": "path", + "required": true, + "type": "string" + }, + "packageName": { + "description": "Unique identifier for the Android app that is being updated; for example, \"com.spiffygame\".", + "location": "path", + "required": true, + "type": "string" + }, + "track": { + "description": "The track to read or modify. Acceptable values are: \"alpha\", \"beta\", \"production\", \"rollout\" or \"internal\".", + "location": "path", + "pattern": "(alpha|beta|production|rollout|internal)", + "required": true, + "type": "string" + } + }, + "path": "{packageName}/edits/{editId}/testers/{track}", + "request": { + "$ref": "Testers" + }, + "response": { + "$ref": "Testers" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidpublisher" + ] + }, + "update": { + "httpMethod": "PUT", + "id": "androidpublisher.edits.testers.update", + "parameterOrder": [ + "packageName", + "editId", + "track" + ], + "parameters": { + "editId": { + "description": "Unique identifier for this edit.", + "location": "path", + "required": true, + "type": "string" + }, + "packageName": { + "description": "Unique identifier for the Android app that is being updated; for example, \"com.spiffygame\".", + "location": "path", + "required": true, + "type": "string" + }, + "track": { + "description": "The track to read or modify. Acceptable values are: \"alpha\", \"beta\", \"production\", \"rollout\" or \"internal\".", + "location": "path", + "pattern": "(alpha|beta|production|rollout|internal)", + "required": true, + "type": "string" + } + }, + "path": "{packageName}/edits/{editId}/testers/{track}", + "request": { + "$ref": "Testers" + }, + "response": { + "$ref": "Testers" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidpublisher" + ] + } + } + }, + "tracks": { + "methods": { + "get": { + "description": "Fetches the track configuration for the specified track type. Includes the APK version codes that are in this track.", + "httpMethod": "GET", + "id": "androidpublisher.edits.tracks.get", + "parameterOrder": [ + "packageName", + "editId", + "track" + ], + "parameters": { + "editId": { + "description": "Unique identifier for this edit.", + "location": "path", + "required": true, + "type": "string" + }, + "packageName": { + "description": "Unique identifier for the Android app that is being updated; for example, \"com.spiffygame\".", + "location": "path", + "required": true, + "type": "string" + }, + "track": { + "description": "The track to read or modify. Acceptable values are: \"alpha\", \"beta\", \"production\", \"rollout\" or \"internal\".", + "location": "path", + "pattern": "(alpha|beta|production|rollout|internal)", + "required": true, + "type": "string" + } + }, + "path": "{packageName}/edits/{editId}/tracks/{track}", + "response": { + "$ref": "Track" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidpublisher" + ] + }, + "list": { + "description": "Lists all the track configurations for this edit.", + "httpMethod": "GET", + "id": "androidpublisher.edits.tracks.list", + "parameterOrder": [ + "packageName", + "editId" + ], + "parameters": { + "editId": { + "description": "Unique identifier for this edit.", + "location": "path", + "required": true, + "type": "string" + }, + "packageName": { + "description": "Unique identifier for the Android app that is being updated; for example, \"com.spiffygame\".", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{packageName}/edits/{editId}/tracks", + "response": { + "$ref": "TracksListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidpublisher" + ] + }, + "patch": { + "description": "Updates the track configuration for the specified track type. When halted, the rollout track cannot be updated without adding new APKs, and adding new APKs will cause it to resume. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "androidpublisher.edits.tracks.patch", + "parameterOrder": [ + "packageName", + "editId", + "track" + ], + "parameters": { + "editId": { + "description": "Unique identifier for this edit.", + "location": "path", + "required": true, + "type": "string" + }, + "packageName": { + "description": "Unique identifier for the Android app that is being updated; for example, \"com.spiffygame\".", + "location": "path", + "required": true, + "type": "string" + }, + "track": { + "description": "The track to read or modify. Acceptable values are: \"alpha\", \"beta\", \"production\", \"rollout\" or \"internal\".", + "location": "path", + "pattern": "(alpha|beta|production|rollout|internal)", + "required": true, + "type": "string" + } + }, + "path": "{packageName}/edits/{editId}/tracks/{track}", + "request": { + "$ref": "Track" + }, + "response": { + "$ref": "Track" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidpublisher" + ] + }, + "update": { + "description": "Updates the track configuration for the specified track type. When halted, the rollout track cannot be updated without adding new APKs, and adding new APKs will cause it to resume.", + "httpMethod": "PUT", + "id": "androidpublisher.edits.tracks.update", + "parameterOrder": [ + "packageName", + "editId", + "track" + ], + "parameters": { + "editId": { + "description": "Unique identifier for this edit.", + "location": "path", + "required": true, + "type": "string" + }, + "packageName": { + "description": "Unique identifier for the Android app that is being updated; for example, \"com.spiffygame\".", + "location": "path", + "required": true, + "type": "string" + }, + "track": { + "description": "The track to read or modify. Acceptable values are: \"alpha\", \"beta\", \"production\", \"rollout\" or \"internal\".", + "location": "path", + "pattern": "(alpha|beta|production|rollout|internal)", + "required": true, + "type": "string" + } + }, + "path": "{packageName}/edits/{editId}/tracks/{track}", + "request": { + "$ref": "Track" + }, + "response": { + "$ref": "Track" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidpublisher" + ] + } + } + } + } }, - "name": { - "type": "string", - "description": "The name of the permission requested." - } - } - }, - "Image": { - "id": "Image", - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "A unique id representing this image." + "inappproducts": { + "methods": { + "delete": { + "description": "Delete an in-app product for an app.", + "httpMethod": "DELETE", + "id": "androidpublisher.inappproducts.delete", + "parameterOrder": [ + "packageName", + "sku" + ], + "parameters": { + "packageName": { + "description": "Unique identifier for the Android app with the in-app product; for example, \"com.spiffygame\".", + "location": "path", + "required": true, + "type": "string" + }, + "sku": { + "description": "Unique identifier for the in-app product.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{packageName}/inappproducts/{sku}", + "scopes": [ + "https://www.googleapis.com/auth/androidpublisher" + ] + }, + "get": { + "description": "Returns information about the in-app product specified.", + "httpMethod": "GET", + "id": "androidpublisher.inappproducts.get", + "parameterOrder": [ + "packageName", + "sku" + ], + "parameters": { + "packageName": { + "location": "path", + "required": true, + "type": "string" + }, + "sku": { + "description": "Unique identifier for the in-app product.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{packageName}/inappproducts/{sku}", + "response": { + "$ref": "InAppProduct" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidpublisher" + ] + }, + "insert": { + "description": "Creates a new in-app product for an app.", + "httpMethod": "POST", + "id": "androidpublisher.inappproducts.insert", + "parameterOrder": [ + "packageName" + ], + "parameters": { + "autoConvertMissingPrices": { + "description": "If true the prices for all regions targeted by the parent app that don't have a price specified for this in-app product will be auto converted to the target currency based on the default price. Defaults to false.", + "location": "query", + "type": "boolean" + }, + "packageName": { + "description": "Unique identifier for the Android app; for example, \"com.spiffygame\".", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{packageName}/inappproducts", + "request": { + "$ref": "InAppProduct" + }, + "response": { + "$ref": "InAppProduct" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidpublisher" + ] + }, + "list": { + "description": "List all the in-app products for an Android app, both subscriptions and managed in-app products..", + "httpMethod": "GET", + "id": "androidpublisher.inappproducts.list", + "parameterOrder": [ + "packageName" + ], + "parameters": { + "maxResults": { + "format": "uint32", + "location": "query", + "type": "integer" + }, + "packageName": { + "description": "Unique identifier for the Android app with in-app products; for example, \"com.spiffygame\".", + "location": "path", + "required": true, + "type": "string" + }, + "startIndex": { + "format": "uint32", + "location": "query", + "type": "integer" + }, + "token": { + "location": "query", + "type": "string" + } + }, + "path": "{packageName}/inappproducts", + "response": { + "$ref": "InappproductsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidpublisher" + ] + }, + "patch": { + "description": "Updates the details of an in-app product. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "androidpublisher.inappproducts.patch", + "parameterOrder": [ + "packageName", + "sku" + ], + "parameters": { + "autoConvertMissingPrices": { + "description": "If true the prices for all regions targeted by the parent app that don't have a price specified for this in-app product will be auto converted to the target currency based on the default price. Defaults to false.", + "location": "query", + "type": "boolean" + }, + "packageName": { + "description": "Unique identifier for the Android app with the in-app product; for example, \"com.spiffygame\".", + "location": "path", + "required": true, + "type": "string" + }, + "sku": { + "description": "Unique identifier for the in-app product.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{packageName}/inappproducts/{sku}", + "request": { + "$ref": "InAppProduct" + }, + "response": { + "$ref": "InAppProduct" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidpublisher" + ] + }, + "update": { + "description": "Updates the details of an in-app product.", + "httpMethod": "PUT", + "id": "androidpublisher.inappproducts.update", + "parameterOrder": [ + "packageName", + "sku" + ], + "parameters": { + "autoConvertMissingPrices": { + "description": "If true the prices for all regions targeted by the parent app that don't have a price specified for this in-app product will be auto converted to the target currency based on the default price. Defaults to false.", + "location": "query", + "type": "boolean" + }, + "packageName": { + "description": "Unique identifier for the Android app with the in-app product; for example, \"com.spiffygame\".", + "location": "path", + "required": true, + "type": "string" + }, + "sku": { + "description": "Unique identifier for the in-app product.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{packageName}/inappproducts/{sku}", + "request": { + "$ref": "InAppProduct" + }, + "response": { + "$ref": "InAppProduct" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidpublisher" + ] + } + } }, - "sha1": { - "type": "string", - "description": "A sha1 hash of the image that was uploaded." - }, - "url": { - "type": "string", - "description": "A URL that will serve a preview of the image." - } - } - }, - "ImagesDeleteAllResponse": { - "id": "ImagesDeleteAllResponse", - "type": "object", - "properties": { - "deleted": { - "type": "array", - "items": { - "$ref": "Image" - } - } - } - }, - "ImagesListResponse": { - "id": "ImagesListResponse", - "type": "object", - "properties": { - "images": { - "type": "array", - "items": { - "$ref": "Image" - } - } - } - }, - "ImagesUploadResponse": { - "id": "ImagesUploadResponse", - "type": "object", - "properties": { - "image": { - "$ref": "Image" - } - } - }, - "InAppProduct": { - "id": "InAppProduct", - "type": "object", - "properties": { - "defaultLanguage": { - "type": "string", - "description": "The default language of the localized data, as defined by BCP 47. e.g. \"en-US\", \"en-GB\"." - }, - "defaultPrice": { - "$ref": "Price", - "description": "Default price cannot be zero. In-app products can never be free. Default price is always in the developer's Checkout merchant currency." - }, - "listings": { - "type": "object", - "description": "List of localized title and description data.", - "additionalProperties": { - "$ref": "InAppProductListing", - "description": "The language of the localized data, as defined by BCP 47. i.e.: \"en-US\", \"en-GB\"." - } - }, - "packageName": { - "type": "string", - "description": "The package name of the parent app." - }, - "prices": { - "type": "object", - "description": "Prices per buyer region. None of these prices should be zero. In-app products can never be free.", - "additionalProperties": { - "$ref": "Price", - "description": "Region code, as defined by ISO 3166-2." - } - }, - "purchaseType": { - "type": "string", - "description": "Purchase type enum value. Unmodifiable after creation." - }, - "season": { - "$ref": "Season", - "description": "Definition of a season for a seasonal subscription. Can be defined only for yearly subscriptions." - }, - "sku": { - "type": "string", - "description": "The stock-keeping-unit (SKU) of the product, unique within an app." - }, - "status": { - "type": "string" - }, - "subscriptionPeriod": { - "type": "string", - "description": "Subscription period, specified in ISO 8601 format. Acceptable values are \"P1W\" (one week), \"P1M\" (one month), \"P3M\" (three months), \"P6M\" (six months), and \"P1Y\" (one year)." - }, - "trialPeriod": { - "type": "string", - "description": "Trial period, specified in ISO 8601 format. Acceptable values are anything between \"P7D\" (seven days) and \"P999D\" (999 days). Seasonal subscriptions cannot have a trial period." - } - } - }, - "InAppProductListing": { - "id": "InAppProductListing", - "type": "object", - "properties": { - "description": { - "type": "string" - }, - "title": { - "type": "string" - } - } - }, - "InappproductsListResponse": { - "id": "InappproductsListResponse", - "type": "object", - "properties": { - "inappproduct": { - "type": "array", - "items": { - "$ref": "InAppProduct" - } - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"androidpublisher#inappproductsListResponse\".", - "default": "androidpublisher#inappproductsListResponse" - }, - "pageInfo": { - "$ref": "PageInfo" - }, - "tokenPagination": { - "$ref": "TokenPagination" - } - } - }, - "Listing": { - "id": "Listing", - "type": "object", - "properties": { - "fullDescription": { - "type": "string", - "description": "Full description of the app; this may be up to 4000 characters in length." - }, - "language": { - "type": "string", - "description": "Language localization code (for example, \"de-AT\" for Austrian German)." - }, - "shortDescription": { - "type": "string", - "description": "Short description of the app (previously known as promo text); this may be up to 80 characters in length." - }, - "title": { - "type": "string", - "description": "App's localized title." - }, - "video": { - "type": "string", - "description": "URL of a promotional YouTube video for the app." - } - } - }, - "ListingsListResponse": { - "id": "ListingsListResponse", - "type": "object", - "properties": { - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"androidpublisher#listingsListResponse\".", - "default": "androidpublisher#listingsListResponse" - }, - "listings": { - "type": "array", - "items": { - "$ref": "Listing" - } - } - } - }, - "MonthDay": { - "id": "MonthDay", - "type": "object", - "properties": { - "day": { - "type": "integer", - "description": "Day of a month, value in [1, 31] range. Valid range depends on the specified month.", - "format": "uint32" - }, - "month": { - "type": "integer", - "description": "Month of a year. e.g. 1 = JAN, 2 = FEB etc.", - "format": "uint32" - } - } - }, - "PageInfo": { - "id": "PageInfo", - "type": "object", - "properties": { - "resultPerPage": { - "type": "integer", - "format": "int32" - }, - "startIndex": { - "type": "integer", - "format": "int32" - }, - "totalResults": { - "type": "integer", - "format": "int32" - } - } - }, - "Price": { - "id": "Price", - "type": "object", - "properties": { - "currency": { - "type": "string", - "description": "3 letter Currency code, as defined by ISO 4217." - }, - "priceMicros": { - "type": "string", - "description": "The price in millionths of the currency base unit represented as a string." - } - } - }, - "ProductPurchase": { - "id": "ProductPurchase", - "type": "object", - "description": "A ProductPurchase resource indicates the status of a user's inapp product purchase.", - "properties": { - "consumptionState": { - "type": "integer", - "description": "The consumption state of the inapp product. Possible values are: \n- Yet to be consumed \n- Consumed", - "format": "int32" - }, - "developerPayload": { - "type": "string", - "description": "A developer-specified string that contains supplemental information about an order." - }, - "kind": { - "type": "string", - "description": "This kind represents an inappPurchase object in the androidpublisher service.", - "default": "androidpublisher#productPurchase" - }, - "orderId": { - "type": "string", - "description": "The order id associated with the purchase of the inapp product." - }, - "purchaseState": { - "type": "integer", - "description": "The purchase state of the order. Possible values are: \n- Purchased \n- Cancelled", - "format": "int32" - }, - "purchaseTimeMillis": { - "type": "string", - "description": "The time the product was purchased, in milliseconds since the epoch (Jan 1, 1970).", - "format": "int64" - }, - "purchaseType": { - "type": "integer", - "description": "The type of purchase of the inapp product. This field is only set if this purchase was not made using the standard in-app billing flow. Possible values are: \n- Test (i.e. purchased from a license testing account)", - "format": "int32" - } - } - }, - "Prorate": { - "id": "Prorate", - "type": "object", - "properties": { - "defaultPrice": { - "$ref": "Price", - "description": "Default price cannot be zero and must be less than the full subscription price. Default price is always in the developer's Checkout merchant currency. Targeted countries have their prices set automatically based on the default_price." - }, - "start": { - "$ref": "MonthDay", - "description": "Defines the first day on which the price takes effect." - } - } - }, - "Review": { - "id": "Review", - "type": "object", - "properties": { - "authorName": { - "type": "string", - "description": "The name of the user who wrote the review." - }, - "comments": { - "type": "array", - "description": "A repeated field containing comments for the review.", - "items": { - "$ref": "Comment" - } - }, - "reviewId": { - "type": "string", - "description": "Unique identifier for this review." - } - } - }, - "ReviewReplyResult": { - "id": "ReviewReplyResult", - "type": "object", - "properties": { - "lastEdited": { - "$ref": "Timestamp", - "description": "The time at which the reply took effect." - }, - "replyText": { - "type": "string", - "description": "The reply text that was applied." - } - } - }, - "ReviewsListResponse": { - "id": "ReviewsListResponse", - "type": "object", - "properties": { - "pageInfo": { - "$ref": "PageInfo" + "purchases": { + "resources": { + "products": { + "methods": { + "get": { + "description": "Checks the purchase and consumption status of an inapp item.", + "httpMethod": "GET", + "id": "androidpublisher.purchases.products.get", + "parameterOrder": [ + "packageName", + "productId", + "token" + ], + "parameters": { + "packageName": { + "description": "The package name of the application the inapp product was sold in (for example, 'com.some.thing').", + "location": "path", + "required": true, + "type": "string" + }, + "productId": { + "description": "The inapp product SKU (for example, 'com.some.thing.inapp1').", + "location": "path", + "required": true, + "type": "string" + }, + "token": { + "description": "The token provided to the user's device when the inapp product was purchased.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{packageName}/purchases/products/{productId}/tokens/{token}", + "response": { + "$ref": "ProductPurchase" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidpublisher" + ] + } + } + }, + "subscriptions": { + "methods": { + "cancel": { + "description": "Cancels a user's subscription purchase. The subscription remains valid until its expiration time.", + "httpMethod": "POST", + "id": "androidpublisher.purchases.subscriptions.cancel", + "parameterOrder": [ + "packageName", + "subscriptionId", + "token" + ], + "parameters": { + "packageName": { + "description": "The package name of the application for which this subscription was purchased (for example, 'com.some.thing').", + "location": "path", + "required": true, + "type": "string" + }, + "subscriptionId": { + "description": "The purchased subscription ID (for example, 'monthly001').", + "location": "path", + "required": true, + "type": "string" + }, + "token": { + "description": "The token provided to the user's device when the subscription was purchased.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{packageName}/purchases/subscriptions/{subscriptionId}/tokens/{token}:cancel", + "scopes": [ + "https://www.googleapis.com/auth/androidpublisher" + ] + }, + "defer": { + "description": "Defers a user's subscription purchase until a specified future expiration time.", + "httpMethod": "POST", + "id": "androidpublisher.purchases.subscriptions.defer", + "parameterOrder": [ + "packageName", + "subscriptionId", + "token" + ], + "parameters": { + "packageName": { + "description": "The package name of the application for which this subscription was purchased (for example, 'com.some.thing').", + "location": "path", + "required": true, + "type": "string" + }, + "subscriptionId": { + "description": "The purchased subscription ID (for example, 'monthly001').", + "location": "path", + "required": true, + "type": "string" + }, + "token": { + "description": "The token provided to the user's device when the subscription was purchased.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{packageName}/purchases/subscriptions/{subscriptionId}/tokens/{token}:defer", + "request": { + "$ref": "SubscriptionPurchasesDeferRequest" + }, + "response": { + "$ref": "SubscriptionPurchasesDeferResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidpublisher" + ] + }, + "get": { + "description": "Checks whether a user's subscription purchase is valid and returns its expiry time.", + "httpMethod": "GET", + "id": "androidpublisher.purchases.subscriptions.get", + "parameterOrder": [ + "packageName", + "subscriptionId", + "token" + ], + "parameters": { + "packageName": { + "description": "The package name of the application for which this subscription was purchased (for example, 'com.some.thing').", + "location": "path", + "required": true, + "type": "string" + }, + "subscriptionId": { + "description": "The purchased subscription ID (for example, 'monthly001').", + "location": "path", + "required": true, + "type": "string" + }, + "token": { + "description": "The token provided to the user's device when the subscription was purchased.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{packageName}/purchases/subscriptions/{subscriptionId}/tokens/{token}", + "response": { + "$ref": "SubscriptionPurchase" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidpublisher" + ] + }, + "refund": { + "description": "Refunds a user's subscription purchase, but the subscription remains valid until its expiration time and it will continue to recur.", + "httpMethod": "POST", + "id": "androidpublisher.purchases.subscriptions.refund", + "parameterOrder": [ + "packageName", + "subscriptionId", + "token" + ], + "parameters": { + "packageName": { + "description": "The package name of the application for which this subscription was purchased (for example, 'com.some.thing').", + "location": "path", + "required": true, + "type": "string" + }, + "subscriptionId": { + "description": "The purchased subscription ID (for example, 'monthly001').", + "location": "path", + "required": true, + "type": "string" + }, + "token": { + "description": "The token provided to the user's device when the subscription was purchased.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{packageName}/purchases/subscriptions/{subscriptionId}/tokens/{token}:refund", + "scopes": [ + "https://www.googleapis.com/auth/androidpublisher" + ] + }, + "revoke": { + "description": "Refunds and immediately revokes a user's subscription purchase. Access to the subscription will be terminated immediately and it will stop recurring.", + "httpMethod": "POST", + "id": "androidpublisher.purchases.subscriptions.revoke", + "parameterOrder": [ + "packageName", + "subscriptionId", + "token" + ], + "parameters": { + "packageName": { + "description": "The package name of the application for which this subscription was purchased (for example, 'com.some.thing').", + "location": "path", + "required": true, + "type": "string" + }, + "subscriptionId": { + "description": "The purchased subscription ID (for example, 'monthly001').", + "location": "path", + "required": true, + "type": "string" + }, + "token": { + "description": "The token provided to the user's device when the subscription was purchased.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{packageName}/purchases/subscriptions/{subscriptionId}/tokens/{token}:revoke", + "scopes": [ + "https://www.googleapis.com/auth/androidpublisher" + ] + } + } + }, + "voidedpurchases": { + "methods": { + "list": { + "description": "Lists the purchases that were canceled, refunded or charged-back.", + "httpMethod": "GET", + "id": "androidpublisher.purchases.voidedpurchases.list", + "parameterOrder": [ + "packageName" + ], + "parameters": { + "endTime": { + "description": "The time, in milliseconds since the Epoch, of the newest voided in-app product purchase that you want to see in the response. The value of this parameter cannot be greater than the current time and is ignored if a pagination token is set. Default value is current time. Note: This filter is applied on the time at which the record is seen as voided by our systems and not the actual voided time returned in the response.", + "format": "int64", + "location": "query", + "type": "string" + }, + "maxResults": { + "format": "uint32", + "location": "query", + "type": "integer" + }, + "packageName": { + "description": "The package name of the application for which voided purchases need to be returned (for example, 'com.some.thing').", + "location": "path", + "required": true, + "type": "string" + }, + "startIndex": { + "format": "uint32", + "location": "query", + "type": "integer" + }, + "startTime": { + "description": "The time, in milliseconds since the Epoch, of the oldest voided in-app product purchase that you want to see in the response. The value of this parameter cannot be older than 30 days and is ignored if a pagination token is set. Default value is current time minus 30 days. Note: This filter is applied on the time at which the record is seen as voided by our systems and not the actual voided time returned in the response.", + "format": "int64", + "location": "query", + "type": "string" + }, + "token": { + "location": "query", + "type": "string" + } + }, + "path": "{packageName}/purchases/voidedpurchases", + "response": { + "$ref": "VoidedPurchasesListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidpublisher" + ] + } + } + } + } }, "reviews": { - "type": "array", - "items": { - "$ref": "Review" - } - }, - "tokenPagination": { - "$ref": "TokenPagination" - } - } - }, - "ReviewsReplyRequest": { - "id": "ReviewsReplyRequest", - "type": "object", - "properties": { - "replyText": { - "type": "string", - "description": "The text to set as the reply. Replies of more than approximately 350 characters will be rejected. HTML tags will be stripped." - } - } - }, - "ReviewsReplyResponse": { - "id": "ReviewsReplyResponse", - "type": "object", - "properties": { - "result": { - "$ref": "ReviewReplyResult" - } - } - }, - "Season": { - "id": "Season", - "type": "object", - "properties": { - "end": { - "$ref": "MonthDay", - "description": "Inclusive end date of the recurrence period." - }, - "prorations": { - "type": "array", - "description": "Optionally present list of prorations for the season. Each proration is a one-off discounted entry into a subscription. Each proration contains the first date on which the discount is available and the new pricing information.", - "items": { - "$ref": "Prorate" - } - }, - "start": { - "$ref": "MonthDay", - "description": "Inclusive start date of the recurrence period." - } - } - }, - "SubscriptionDeferralInfo": { - "id": "SubscriptionDeferralInfo", - "type": "object", - "description": "A SubscriptionDeferralInfo contains the data needed to defer a subscription purchase to a future expiry time.", - "properties": { - "desiredExpiryTimeMillis": { - "type": "string", - "description": "The desired next expiry time to assign to the subscription, in milliseconds since the Epoch. The given time must be later/greater than the current expiry time for the subscription.", - "format": "int64" - }, - "expectedExpiryTimeMillis": { - "type": "string", - "description": "The expected expiry time for the subscription. If the current expiry time for the subscription is not the value specified here, the deferral will not occur.", - "format": "int64" - } - } - }, - "SubscriptionPurchase": { - "id": "SubscriptionPurchase", - "type": "object", - "description": "A SubscriptionPurchase resource indicates the status of a user's subscription purchase.", - "properties": { - "autoRenewing": { - "type": "boolean", - "description": "Whether the subscription will automatically be renewed when it reaches its current expiry time." - }, - "cancelReason": { - "type": "integer", - "description": "The reason why a subscription was cancelled or is not auto-renewing. Possible values are: \n- User cancelled the subscription \n- Subscription was cancelled by the system, for example because of a billing problem \n- Subscription was replaced with a new subscription \n- Subscription was cancelled by the developer", - "format": "int32" - }, - "countryCode": { - "type": "string", - "description": "ISO 3166-1 alpha-2 billing country/region code of the user at the time the subscription was granted." - }, - "developerPayload": { - "type": "string", - "description": "A developer-specified string that contains supplemental information about an order." - }, - "expiryTimeMillis": { - "type": "string", - "description": "Time at which the subscription will expire, in milliseconds since the Epoch.", - "format": "int64" - }, - "kind": { - "type": "string", - "description": "This kind represents a subscriptionPurchase object in the androidpublisher service.", - "default": "androidpublisher#subscriptionPurchase" - }, - "linkedPurchaseToken": { - "type": "string", - "description": "The purchase token of the originating purchase if this subscription is one of the following: \n- Re-signup of a canceled but non-lapsed subscription \n- Upgrade/downgrade from a previous subscription For example, suppose a user originally signs up and you receive purchase token X, then the user cancels and goes through the resignup flow (before their subscription lapses) and you receive purchase token Y, and finally the user upgrades their subscription and you receive purchase token Z. If you call this API with purchase token Z, this field will be set to Y. If you call this API with purchase token Y, this field will be set to X. If you call this API with purchase token X, this field will not be set." - }, - "orderId": { - "type": "string", - "description": "The order id of the latest recurring order associated with the purchase of the subscription." - }, - "paymentState": { - "type": "integer", - "description": "The payment state of the subscription. Possible values are: \n- Payment pending \n- Payment received \n- Free trial", - "format": "int32" - }, - "priceAmountMicros": { - "type": "string", - "description": "Price of the subscription, not including tax. Price is expressed in micro-units, where 1,000,000 micro-units represents one unit of the currency. For example, if the subscription price is €1.99, price_amount_micros is 1990000.", - "format": "int64" - }, - "priceCurrencyCode": { - "type": "string", - "description": "ISO 4217 currency code for the subscription price. For example, if the price is specified in British pounds sterling, price_currency_code is \"GBP\"." - }, - "purchaseType": { - "type": "integer", - "description": "The type of purchase of the subscription. This field is only set if this purchase was not made using the standard in-app billing flow. Possible values are: \n- Test (i.e. purchased from a license testing account)", - "format": "int32" - }, - "startTimeMillis": { - "type": "string", - "description": "Time at which the subscription was granted, in milliseconds since the Epoch.", - "format": "int64" - }, - "userCancellationTimeMillis": { - "type": "string", - "description": "The time at which the subscription was canceled by the user, in milliseconds since the epoch. Only present if cancelReason is 0.", - "format": "int64" - } - } - }, - "SubscriptionPurchasesDeferRequest": { - "id": "SubscriptionPurchasesDeferRequest", - "type": "object", - "properties": { - "deferralInfo": { - "$ref": "SubscriptionDeferralInfo", - "description": "The information about the new desired expiry time for the subscription." - } - } - }, - "SubscriptionPurchasesDeferResponse": { - "id": "SubscriptionPurchasesDeferResponse", - "type": "object", - "properties": { - "newExpiryTimeMillis": { - "type": "string", - "description": "The new expiry time for the subscription in milliseconds since the Epoch.", - "format": "int64" - } - } - }, - "Testers": { - "id": "Testers", - "type": "object", - "properties": { - "googleGroups": { - "type": "array", - "items": { - "type": "string" - } - }, - "googlePlusCommunities": { - "type": "array", - "items": { - "type": "string" - } - } - } - }, - "Timestamp": { - "id": "Timestamp", - "type": "object", - "properties": { - "nanos": { - "type": "integer", - "format": "int32" - }, - "seconds": { - "type": "string", - "format": "int64" - } - } - }, - "TokenPagination": { - "id": "TokenPagination", - "type": "object", - "properties": { - "nextPageToken": { - "type": "string" - }, - "previousPageToken": { - "type": "string" - } - } - }, - "Track": { - "id": "Track", - "type": "object", - "properties": { - "track": { - "type": "string", - "description": "Identifier for this track. One of \"alpha\", \"beta\", \"production\" or \"rollout\"." - }, - "userFraction": { - "type": "number", - "format": "double" - }, - "versionCodes": { - "type": "array", - "items": { - "type": "integer", - "format": "int32" - } - } - } - }, - "TracksListResponse": { - "id": "TracksListResponse", - "type": "object", - "properties": { - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"androidpublisher#tracksListResponse\".", - "default": "androidpublisher#tracksListResponse" - }, - "tracks": { - "type": "array", - "items": { - "$ref": "Track" - } - } - } - }, - "UserComment": { - "id": "UserComment", - "type": "object", - "properties": { - "androidOsVersion": { - "type": "integer", - "description": "Integer Android SDK version of the user's device at the time the review was written, e.g. 23 is Marshmallow. May be absent.", - "format": "int32" - }, - "appVersionCode": { - "type": "integer", - "description": "Integer version code of the app as installed at the time the review was written. May be absent.", - "format": "int32" - }, - "appVersionName": { - "type": "string", - "description": "String version name of the app as installed at the time the review was written. May be absent." - }, - "device": { - "type": "string", - "description": "Codename for the reviewer's device, e.g. klte, flounder. May be absent." - }, - "deviceMetadata": { - "$ref": "DeviceMetadata", - "description": "Some information about the characteristics of the user's device" - }, - "lastModified": { - "$ref": "Timestamp", - "description": "The last time at which this comment was updated." - }, - "originalText": { - "type": "string", - "description": "Untranslated text of the review, in the case where the review has been translated. If the review has not been translated this is left blank." - }, - "reviewerLanguage": { - "type": "string", - "description": "Language code for the reviewer. This is taken from the device settings so is not guaranteed to match the language the review is written in. May be absent." - }, - "starRating": { - "type": "integer", - "description": "The star rating associated with the review, from 1 to 5.", - "format": "int32" - }, - "text": { - "type": "string", - "description": "The content of the comment, i.e. review body. In some cases users have been able to write a review with separate title and body; in those cases the title and body are concatenated and separated by a tab character." - }, - "thumbsDownCount": { - "type": "integer", - "description": "Number of users who have given this review a thumbs down", - "format": "int32" - }, - "thumbsUpCount": { - "type": "integer", - "description": "Number of users who have given this review a thumbs up", - "format": "int32" - } - } - }, - "VoidedPurchase": { - "id": "VoidedPurchase", - "type": "object", - "description": "A VoidedPurchase resource indicates a purchase that was either cancelled/refunded/charged-back.", - "properties": { - "kind": { - "type": "string", - "description": "This kind represents a voided purchase object in the androidpublisher service.", - "default": "androidpublisher#voidedPurchase" - }, - "purchaseTimeMillis": { - "type": "string", - "description": "The time at which the purchase was made, in milliseconds since the epoch (Jan 1, 1970).", - "format": "int64" - }, - "purchaseToken": { - "type": "string", - "description": "The token that was generated when a purchase was made. This uniquely identifies a purchase." - }, - "voidedTimeMillis": { - "type": "string", - "description": "The time at which the purchase was cancelled/refunded/charged-back, in milliseconds since the epoch (Jan 1, 1970).", - "format": "int64" - } - } - }, - "VoidedPurchasesListResponse": { - "id": "VoidedPurchasesListResponse", - "type": "object", - "properties": { - "pageInfo": { - "$ref": "PageInfo" - }, - "tokenPagination": { - "$ref": "TokenPagination" - }, - "voidedPurchases": { - "type": "array", - "items": { - "$ref": "VoidedPurchase" - } - } - } - } - }, - "resources": { - "edits": { - "methods": { - "commit": { - "id": "androidpublisher.edits.commit", - "path": "{packageName}/edits/{editId}:commit", - "httpMethod": "POST", - "description": "Commits/applies the changes made in this edit back to the app.", - "parameters": { - "editId": { - "type": "string", - "description": "Unique identifier for this edit.", - "required": true, - "location": "path" - }, - "packageName": { - "type": "string", - "description": "Unique identifier for the Android app that is being updated; for example, \"com.spiffygame\".", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "packageName", - "editId" - ], - "response": { - "$ref": "AppEdit" - }, - "scopes": [ - "https://www.googleapis.com/auth/androidpublisher" - ] - }, - "delete": { - "id": "androidpublisher.edits.delete", - "path": "{packageName}/edits/{editId}", - "httpMethod": "DELETE", - "description": "Deletes an edit for an app. Creating a new edit will automatically delete any of your previous edits so this method need only be called if you want to preemptively abandon an edit.", - "parameters": { - "editId": { - "type": "string", - "description": "Unique identifier for this edit.", - "required": true, - "location": "path" - }, - "packageName": { - "type": "string", - "description": "Unique identifier for the Android app that is being updated; for example, \"com.spiffygame\".", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "packageName", - "editId" - ], - "scopes": [ - "https://www.googleapis.com/auth/androidpublisher" - ] - }, - "get": { - "id": "androidpublisher.edits.get", - "path": "{packageName}/edits/{editId}", - "httpMethod": "GET", - "description": "Returns information about the edit specified. Calls will fail if the edit is no long active (e.g. has been deleted, superseded or expired).", - "parameters": { - "editId": { - "type": "string", - "description": "Unique identifier for this edit.", - "required": true, - "location": "path" - }, - "packageName": { - "type": "string", - "description": "Unique identifier for the Android app that is being updated; for example, \"com.spiffygame\".", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "packageName", - "editId" - ], - "response": { - "$ref": "AppEdit" - }, - "scopes": [ - "https://www.googleapis.com/auth/androidpublisher" - ] - }, - "insert": { - "id": "androidpublisher.edits.insert", - "path": "{packageName}/edits", - "httpMethod": "POST", - "description": "Creates a new edit for an app, populated with the app's current state.", - "parameters": { - "packageName": { - "type": "string", - "description": "Unique identifier for the Android app that is being updated; for example, \"com.spiffygame\".", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "packageName" - ], - "request": { - "$ref": "AppEdit" - }, - "response": { - "$ref": "AppEdit" - }, - "scopes": [ - "https://www.googleapis.com/auth/androidpublisher" - ] - }, - "validate": { - "id": "androidpublisher.edits.validate", - "path": "{packageName}/edits/{editId}:validate", - "httpMethod": "POST", - "description": "Checks that the edit can be successfully committed. The edit's changes are not applied to the live app.", - "parameters": { - "editId": { - "type": "string", - "description": "Unique identifier for this edit.", - "required": true, - "location": "path" - }, - "packageName": { - "type": "string", - "description": "Unique identifier for the Android app that is being updated; for example, \"com.spiffygame\".", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "packageName", - "editId" - ], - "response": { - "$ref": "AppEdit" - }, - "scopes": [ - "https://www.googleapis.com/auth/androidpublisher" - ] - } - }, - "resources": { - "apklistings": { - "methods": { - "delete": { - "id": "androidpublisher.edits.apklistings.delete", - "path": "{packageName}/edits/{editId}/apks/{apkVersionCode}/listings/{language}", - "httpMethod": "DELETE", - "description": "Deletes the APK-specific localized listing for a specified APK and language code.", - "parameters": { - "apkVersionCode": { - "type": "integer", - "description": "The APK version code whose APK-specific listings should be read or modified.", - "required": true, - "format": "int32", - "location": "path" + "methods": { + "get": { + "description": "Returns a single review.", + "httpMethod": "GET", + "id": "androidpublisher.reviews.get", + "parameterOrder": [ + "packageName", + "reviewId" + ], + "parameters": { + "packageName": { + "description": "Unique identifier for the Android app for which we want reviews; for example, \"com.spiffygame\".", + "location": "path", + "required": true, + "type": "string" + }, + "reviewId": { + "location": "path", + "required": true, + "type": "string" + }, + "translationLanguage": { + "location": "query", + "type": "string" + } + }, + "path": "{packageName}/reviews/{reviewId}", + "response": { + "$ref": "Review" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidpublisher" + ] }, - "editId": { - "type": "string", - "description": "Unique identifier for this edit.", - "required": true, - "location": "path" + "list": { + "description": "Returns a list of reviews. Only reviews from last week will be returned.", + "httpMethod": "GET", + "id": "androidpublisher.reviews.list", + "parameterOrder": [ + "packageName" + ], + "parameters": { + "maxResults": { + "format": "uint32", + "location": "query", + "type": "integer" + }, + "packageName": { + "description": "Unique identifier for the Android app for which we want reviews; for example, \"com.spiffygame\".", + "location": "path", + "required": true, + "type": "string" + }, + "startIndex": { + "format": "uint32", + "location": "query", + "type": "integer" + }, + "token": { + "location": "query", + "type": "string" + }, + "translationLanguage": { + "location": "query", + "type": "string" + } + }, + "path": "{packageName}/reviews", + "response": { + "$ref": "ReviewsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidpublisher" + ] + }, + "reply": { + "description": "Reply to a single review, or update an existing reply.", + "httpMethod": "POST", + "id": "androidpublisher.reviews.reply", + "parameterOrder": [ + "packageName", + "reviewId" + ], + "parameters": { + "packageName": { + "description": "Unique identifier for the Android app for which we want reviews; for example, \"com.spiffygame\".", + "location": "path", + "required": true, + "type": "string" + }, + "reviewId": { + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{packageName}/reviews/{reviewId}:reply", + "request": { + "$ref": "ReviewsReplyRequest" + }, + "response": { + "$ref": "ReviewsReplyResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidpublisher" + ] + } + } + } + }, + "revision": "20180327", + "rootUrl": "https://www.googleapis.com/", + "schemas": { + "Apk": { + "id": "Apk", + "properties": { + "binary": { + "$ref": "ApkBinary", + "description": "Information about the binary payload of this APK." + }, + "versionCode": { + "description": "The version code of the APK, as specified in the APK's manifest file.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "ApkBinary": { + "description": "Represents the binary payload of an APK.", + "id": "ApkBinary", + "properties": { + "sha1": { + "description": "A sha1 hash of the APK payload, encoded as a hex string and matching the output of the sha1sum command.", + "type": "string" + }, + "sha256": { + "description": "A sha256 hash of the APK payload, encoded as a hex string and matching the output of the sha256sum command.", + "type": "string" + } + }, + "type": "object" + }, + "ApkListing": { + "id": "ApkListing", + "properties": { + "language": { + "description": "The language code, in BCP 47 format (eg \"en-US\").", + "type": "string" + }, + "recentChanges": { + "description": "Describe what's new in your APK.", + "type": "string" + } + }, + "type": "object" + }, + "ApkListingsListResponse": { + "id": "ApkListingsListResponse", + "properties": { + "kind": { + "default": "androidpublisher#apkListingsListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"androidpublisher#apkListingsListResponse\".", + "type": "string" + }, + "listings": { + "items": { + "$ref": "ApkListing" + }, + "type": "array" + } + }, + "type": "object" + }, + "ApksAddExternallyHostedRequest": { + "id": "ApksAddExternallyHostedRequest", + "properties": { + "externallyHostedApk": { + "$ref": "ExternallyHostedApk", + "description": "The definition of the externally-hosted APK and where it is located." + } + }, + "type": "object" + }, + "ApksAddExternallyHostedResponse": { + "id": "ApksAddExternallyHostedResponse", + "properties": { + "externallyHostedApk": { + "$ref": "ExternallyHostedApk", + "description": "The definition of the externally-hosted APK and where it is located." + } + }, + "type": "object" + }, + "ApksListResponse": { + "id": "ApksListResponse", + "properties": { + "apks": { + "items": { + "$ref": "Apk" + }, + "type": "array" + }, + "kind": { + "default": "androidpublisher#apksListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"androidpublisher#apksListResponse\".", + "type": "string" + } + }, + "type": "object" + }, + "AppDetails": { + "id": "AppDetails", + "properties": { + "contactEmail": { + "description": "The user-visible support email for this app.", + "type": "string" + }, + "contactPhone": { + "description": "The user-visible support telephone number for this app.", + "type": "string" + }, + "contactWebsite": { + "description": "The user-visible website for this app.", + "type": "string" + }, + "defaultLanguage": { + "description": "Default language code, in BCP 47 format (eg \"en-US\").", + "type": "string" + } + }, + "type": "object" + }, + "AppEdit": { + "description": "Represents an edit of an app. An edit allows clients to make multiple changes before committing them in one operation.", + "id": "AppEdit", + "properties": { + "expiryTimeSeconds": { + "description": "The time at which the edit will expire and will be no longer valid for use in any subsequent API calls (encoded as seconds since the Epoch).", + "type": "string" + }, + "id": { + "description": "The ID of the edit that can be used in subsequent API calls.", + "type": "string" + } + }, + "type": "object" + }, + "Comment": { + "id": "Comment", + "properties": { + "developerComment": { + "$ref": "DeveloperComment", + "description": "A comment from a developer." + }, + "userComment": { + "$ref": "UserComment", + "description": "A comment from a user." + } + }, + "type": "object" + }, + "DeobfuscationFile": { + "description": "Represents a deobfuscation file.", + "id": "DeobfuscationFile", + "properties": { + "symbolType": { + "description": "The type of the deobfuscation file.", + "type": "string" + } + }, + "type": "object" + }, + "DeobfuscationFilesUploadResponse": { + "id": "DeobfuscationFilesUploadResponse", + "properties": { + "deobfuscationFile": { + "$ref": "DeobfuscationFile" + } + }, + "type": "object" + }, + "DeveloperComment": { + "id": "DeveloperComment", + "properties": { + "lastModified": { + "$ref": "Timestamp", + "description": "The last time at which this comment was updated." + }, + "text": { + "description": "The content of the comment, i.e. reply body.", + "type": "string" + } + }, + "type": "object" + }, + "DeviceMetadata": { + "id": "DeviceMetadata", + "properties": { + "cpuMake": { + "description": "Device CPU make e.g. \"Qualcomm\"", + "type": "string" + }, + "cpuModel": { + "description": "Device CPU model e.g. \"MSM8974\"", + "type": "string" + }, + "deviceClass": { + "description": "Device class (e.g. tablet)", + "type": "string" + }, + "glEsVersion": { + "description": "OpenGL version", + "format": "int32", + "type": "integer" + }, + "manufacturer": { + "description": "Device manufacturer (e.g. Motorola)", + "type": "string" + }, + "nativePlatform": { + "description": "Comma separated list of native platforms (e.g. \"arm\", \"arm7\")", + "type": "string" + }, + "productName": { + "description": "Device model name (e.g. Droid)", + "type": "string" + }, + "ramMb": { + "description": "Device RAM in Megabytes e.g. \"2048\"", + "format": "int32", + "type": "integer" + }, + "screenDensityDpi": { + "description": "Screen density in DPI", + "format": "int32", + "type": "integer" + }, + "screenHeightPx": { + "description": "Screen height in pixels", + "format": "int32", + "type": "integer" + }, + "screenWidthPx": { + "description": "Screen width in pixels", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "ExpansionFile": { + "id": "ExpansionFile", + "properties": { + "fileSize": { + "description": "If set this field indicates that this APK has an Expansion File uploaded to it: this APK does not reference another APK's Expansion File. The field's value is the size of the uploaded Expansion File in bytes.", + "format": "int64", + "type": "string" + }, + "referencesVersion": { + "description": "If set this APK's Expansion File references another APK's Expansion File. The file_size field will not be set.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "ExpansionFilesUploadResponse": { + "id": "ExpansionFilesUploadResponse", + "properties": { + "expansionFile": { + "$ref": "ExpansionFile" + } + }, + "type": "object" + }, + "ExternallyHostedApk": { + "description": "Defines an APK available for this application that is hosted externally and not uploaded to Google Play. This function is only available to enterprises who are using Google Play for Work, and whos application is restricted to the enterprise private channel", + "id": "ExternallyHostedApk", + "properties": { + "applicationLabel": { + "description": "The application label.", + "type": "string" + }, + "certificateBase64s": { + "description": "A certificate (or array of certificates if a certificate-chain is used) used to signed this APK, represented as a base64 encoded byte array.", + "items": { + "type": "string" + }, + "type": "array" + }, + "externallyHostedUrl": { + "description": "The URL at which the APK is hosted. This must be an https URL.", + "type": "string" + }, + "fileSha1Base64": { + "description": "The SHA1 checksum of this APK, represented as a base64 encoded byte array.", + "type": "string" + }, + "fileSha256Base64": { + "description": "The SHA256 checksum of this APK, represented as a base64 encoded byte array.", + "type": "string" + }, + "fileSize": { + "description": "The file size in bytes of this APK.", + "format": "int64", + "type": "string" + }, + "iconBase64": { + "description": "The icon image from the APK, as a base64 encoded byte array.", + "type": "string" + }, + "maximumSdk": { + "description": "The maximum SDK supported by this APK (optional).", + "format": "int32", + "type": "integer" + }, + "minimumSdk": { + "description": "The minimum SDK targeted by this APK.", + "format": "int32", + "type": "integer" + }, + "nativeCodes": { + "description": "The native code environments supported by this APK (optional).", + "items": { + "type": "string" + }, + "type": "array" + }, + "packageName": { + "description": "The package name.", + "type": "string" + }, + "usesFeatures": { + "description": "The features required by this APK (optional).", + "items": { + "type": "string" + }, + "type": "array" + }, + "usesPermissions": { + "description": "The permissions requested by this APK.", + "items": { + "$ref": "ExternallyHostedApkUsesPermission" + }, + "type": "array" + }, + "versionCode": { + "description": "The version code of this APK.", + "format": "int32", + "type": "integer" + }, + "versionName": { + "description": "The version name of this APK.", + "type": "string" + } + }, + "type": "object" + }, + "ExternallyHostedApkUsesPermission": { + "description": "A permission used by this APK.", + "id": "ExternallyHostedApkUsesPermission", + "properties": { + "maxSdkVersion": { + "description": "Optionally, the maximum SDK version for which the permission is required.", + "format": "int32", + "type": "integer" + }, + "name": { + "description": "The name of the permission requested.", + "type": "string" + } + }, + "type": "object" + }, + "Image": { + "id": "Image", + "properties": { + "id": { + "description": "A unique id representing this image.", + "type": "string" + }, + "sha1": { + "description": "A sha1 hash of the image that was uploaded.", + "type": "string" + }, + "url": { + "description": "A URL that will serve a preview of the image.", + "type": "string" + } + }, + "type": "object" + }, + "ImagesDeleteAllResponse": { + "id": "ImagesDeleteAllResponse", + "properties": { + "deleted": { + "items": { + "$ref": "Image" + }, + "type": "array" + } + }, + "type": "object" + }, + "ImagesListResponse": { + "id": "ImagesListResponse", + "properties": { + "images": { + "items": { + "$ref": "Image" + }, + "type": "array" + } + }, + "type": "object" + }, + "ImagesUploadResponse": { + "id": "ImagesUploadResponse", + "properties": { + "image": { + "$ref": "Image" + } + }, + "type": "object" + }, + "InAppProduct": { + "id": "InAppProduct", + "properties": { + "defaultLanguage": { + "description": "The default language of the localized data, as defined by BCP 47. e.g. \"en-US\", \"en-GB\".", + "type": "string" + }, + "defaultPrice": { + "$ref": "Price", + "description": "Default price cannot be zero. In-app products can never be free. Default price is always in the developer's Checkout merchant currency." + }, + "listings": { + "additionalProperties": { + "$ref": "InAppProductListing", + "description": "The language of the localized data, as defined by BCP 47. i.e.: \"en-US\", \"en-GB\"." + }, + "description": "List of localized title and description data.", + "type": "object" + }, + "packageName": { + "description": "The package name of the parent app.", + "type": "string" + }, + "prices": { + "additionalProperties": { + "$ref": "Price", + "description": "Region code, as defined by ISO 3166-2." + }, + "description": "Prices per buyer region. None of these prices should be zero. In-app products can never be free.", + "type": "object" + }, + "purchaseType": { + "description": "Purchase type enum value. Unmodifiable after creation.", + "type": "string" + }, + "season": { + "$ref": "Season", + "description": "Definition of a season for a seasonal subscription. Can be defined only for yearly subscriptions." + }, + "sku": { + "description": "The stock-keeping-unit (SKU) of the product, unique within an app.", + "type": "string" + }, + "status": { + "type": "string" + }, + "subscriptionPeriod": { + "description": "Subscription period, specified in ISO 8601 format. Acceptable values are \"P1W\" (one week), \"P1M\" (one month), \"P3M\" (three months), \"P6M\" (six months), and \"P1Y\" (one year).", + "type": "string" + }, + "trialPeriod": { + "description": "Trial period, specified in ISO 8601 format. Acceptable values are anything between \"P7D\" (seven days) and \"P999D\" (999 days). Seasonal subscriptions cannot have a trial period.", + "type": "string" + } + }, + "type": "object" + }, + "InAppProductListing": { + "id": "InAppProductListing", + "properties": { + "description": { + "type": "string" + }, + "title": { + "type": "string" + } + }, + "type": "object" + }, + "InappproductsListResponse": { + "id": "InappproductsListResponse", + "properties": { + "inappproduct": { + "items": { + "$ref": "InAppProduct" + }, + "type": "array" + }, + "kind": { + "default": "androidpublisher#inappproductsListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"androidpublisher#inappproductsListResponse\".", + "type": "string" + }, + "pageInfo": { + "$ref": "PageInfo" + }, + "tokenPagination": { + "$ref": "TokenPagination" + } + }, + "type": "object" + }, + "Listing": { + "id": "Listing", + "properties": { + "fullDescription": { + "description": "Full description of the app; this may be up to 4000 characters in length.", + "type": "string" }, "language": { - "type": "string", - "description": "The language code (a BCP-47 language tag) of the APK-specific localized listing to read or modify. For example, to select Austrian German, pass \"de-AT\".", - "required": true, - "location": "path" + "description": "Language localization code (for example, \"de-AT\" for Austrian German).", + "type": "string" }, - "packageName": { - "type": "string", - "description": "Unique identifier for the Android app that is being updated; for example, \"com.spiffygame\".", - "required": true, - "location": "path" + "shortDescription": { + "description": "Short description of the app (previously known as promo text); this may be up to 80 characters in length.", + "type": "string" + }, + "title": { + "description": "App's localized title.", + "type": "string" + }, + "video": { + "description": "URL of a promotional YouTube video for the app.", + "type": "string" } - }, - "parameterOrder": [ - "packageName", - "editId", - "apkVersionCode", - "language" - ], - "scopes": [ - "https://www.googleapis.com/auth/androidpublisher" - ] }, - "deleteall": { - "id": "androidpublisher.edits.apklistings.deleteall", - "path": "{packageName}/edits/{editId}/apks/{apkVersionCode}/listings", - "httpMethod": "DELETE", - "description": "Deletes all the APK-specific localized listings for a specified APK.", - "parameters": { - "apkVersionCode": { - "type": "integer", - "description": "The APK version code whose APK-specific listings should be read or modified.", - "required": true, - "format": "int32", - "location": "path" - }, - "editId": { - "type": "string", - "description": "Unique identifier for this edit.", - "required": true, - "location": "path" - }, - "packageName": { - "type": "string", - "description": "Unique identifier for the Android app that is being updated; for example, \"com.spiffygame\".", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "packageName", - "editId", - "apkVersionCode" - ], - "scopes": [ - "https://www.googleapis.com/auth/androidpublisher" - ] - }, - "get": { - "id": "androidpublisher.edits.apklistings.get", - "path": "{packageName}/edits/{editId}/apks/{apkVersionCode}/listings/{language}", - "httpMethod": "GET", - "description": "Fetches the APK-specific localized listing for a specified APK and language code.", - "parameters": { - "apkVersionCode": { - "type": "integer", - "description": "The APK version code whose APK-specific listings should be read or modified.", - "required": true, - "format": "int32", - "location": "path" - }, - "editId": { - "type": "string", - "description": "Unique identifier for this edit.", - "required": true, - "location": "path" - }, - "language": { - "type": "string", - "description": "The language code (a BCP-47 language tag) of the APK-specific localized listing to read or modify. For example, to select Austrian German, pass \"de-AT\".", - "required": true, - "location": "path" - }, - "packageName": { - "type": "string", - "description": "Unique identifier for the Android app that is being updated; for example, \"com.spiffygame\".", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "packageName", - "editId", - "apkVersionCode", - "language" - ], - "response": { - "$ref": "ApkListing" - }, - "scopes": [ - "https://www.googleapis.com/auth/androidpublisher" - ] - }, - "list": { - "id": "androidpublisher.edits.apklistings.list", - "path": "{packageName}/edits/{editId}/apks/{apkVersionCode}/listings", - "httpMethod": "GET", - "description": "Lists all the APK-specific localized listings for a specified APK.", - "parameters": { - "apkVersionCode": { - "type": "integer", - "description": "The APK version code whose APK-specific listings should be read or modified.", - "required": true, - "format": "int32", - "location": "path" - }, - "editId": { - "type": "string", - "description": "Unique identifier for this edit.", - "required": true, - "location": "path" - }, - "packageName": { - "type": "string", - "description": "Unique identifier for the Android app that is being updated; for example, \"com.spiffygame\".", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "packageName", - "editId", - "apkVersionCode" - ], - "response": { - "$ref": "ApkListingsListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/androidpublisher" - ] - }, - "patch": { - "id": "androidpublisher.edits.apklistings.patch", - "path": "{packageName}/edits/{editId}/apks/{apkVersionCode}/listings/{language}", - "httpMethod": "PATCH", - "description": "Updates or creates the APK-specific localized listing for a specified APK and language code. This method supports patch semantics.", - "parameters": { - "apkVersionCode": { - "type": "integer", - "description": "The APK version code whose APK-specific listings should be read or modified.", - "required": true, - "format": "int32", - "location": "path" - }, - "editId": { - "type": "string", - "description": "Unique identifier for this edit.", - "required": true, - "location": "path" - }, - "language": { - "type": "string", - "description": "The language code (a BCP-47 language tag) of the APK-specific localized listing to read or modify. For example, to select Austrian German, pass \"de-AT\".", - "required": true, - "location": "path" - }, - "packageName": { - "type": "string", - "description": "Unique identifier for the Android app that is being updated; for example, \"com.spiffygame\".", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "packageName", - "editId", - "apkVersionCode", - "language" - ], - "request": { - "$ref": "ApkListing" - }, - "response": { - "$ref": "ApkListing" - }, - "scopes": [ - "https://www.googleapis.com/auth/androidpublisher" - ] - }, - "update": { - "id": "androidpublisher.edits.apklistings.update", - "path": "{packageName}/edits/{editId}/apks/{apkVersionCode}/listings/{language}", - "httpMethod": "PUT", - "description": "Updates or creates the APK-specific localized listing for a specified APK and language code.", - "parameters": { - "apkVersionCode": { - "type": "integer", - "description": "The APK version code whose APK-specific listings should be read or modified.", - "required": true, - "format": "int32", - "location": "path" - }, - "editId": { - "type": "string", - "description": "Unique identifier for this edit.", - "required": true, - "location": "path" - }, - "language": { - "type": "string", - "description": "The language code (a BCP-47 language tag) of the APK-specific localized listing to read or modify. For example, to select Austrian German, pass \"de-AT\".", - "required": true, - "location": "path" - }, - "packageName": { - "type": "string", - "description": "Unique identifier for the Android app that is being updated; for example, \"com.spiffygame\".", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "packageName", - "editId", - "apkVersionCode", - "language" - ], - "request": { - "$ref": "ApkListing" - }, - "response": { - "$ref": "ApkListing" - }, - "scopes": [ - "https://www.googleapis.com/auth/androidpublisher" - ] - } - } + "type": "object" }, - "apks": { - "methods": { - "addexternallyhosted": { - "id": "androidpublisher.edits.apks.addexternallyhosted", - "path": "{packageName}/edits/{editId}/apks/externallyHosted", - "httpMethod": "POST", - "description": "Creates a new APK without uploading the APK itself to Google Play, instead hosting the APK at a specified URL. This function is only available to enterprises using Google Play for Work whose application is configured to restrict distribution to the enterprise domain.", - "parameters": { - "editId": { - "type": "string", - "description": "Unique identifier for this edit.", - "required": true, - "location": "path" + "ListingsListResponse": { + "id": "ListingsListResponse", + "properties": { + "kind": { + "default": "androidpublisher#listingsListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"androidpublisher#listingsListResponse\".", + "type": "string" }, - "packageName": { - "type": "string", - "description": "Unique identifier for the Android app that is being updated; for example, \"com.spiffygame\".", - "required": true, - "location": "path" + "listings": { + "items": { + "$ref": "Listing" + }, + "type": "array" } - }, - "parameterOrder": [ - "packageName", - "editId" - ], - "request": { - "$ref": "ApksAddExternallyHostedRequest" - }, - "response": { - "$ref": "ApksAddExternallyHostedResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/androidpublisher" - ] }, - "list": { - "id": "androidpublisher.edits.apks.list", - "path": "{packageName}/edits/{editId}/apks", - "httpMethod": "GET", - "parameters": { - "editId": { - "type": "string", - "description": "Unique identifier for this edit.", - "required": true, - "location": "path" - }, - "packageName": { - "type": "string", - "description": "Unique identifier for the Android app that is being updated; for example, \"com.spiffygame\".", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "packageName", - "editId" - ], - "response": { - "$ref": "ApksListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/androidpublisher" - ] - }, - "upload": { - "id": "androidpublisher.edits.apks.upload", - "path": "{packageName}/edits/{editId}/apks", - "httpMethod": "POST", - "parameters": { - "editId": { - "type": "string", - "description": "Unique identifier for this edit.", - "required": true, - "location": "path" - }, - "packageName": { - "type": "string", - "description": "Unique identifier for the Android app that is being updated; for example, \"com.spiffygame\".", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "packageName", - "editId" - ], - "response": { - "$ref": "Apk" - }, - "scopes": [ - "https://www.googleapis.com/auth/androidpublisher" - ], - "supportsMediaUpload": true, - "mediaUpload": { - "accept": [ - "application/octet-stream", - "application/vnd.android.package-archive" - ], - "maxSize": "1GB", - "protocols": { - "simple": { - "multipart": true, - "path": "/upload/androidpublisher/v2/applications/{packageName}/edits/{editId}/apks" - }, - "resumable": { - "multipart": true, - "path": "/resumable/upload/androidpublisher/v2/applications/{packageName}/edits/{editId}/apks" - } - } - } - } - } + "type": "object" }, - "deobfuscationfiles": { - "methods": { - "upload": { - "id": "androidpublisher.edits.deobfuscationfiles.upload", - "path": "{packageName}/edits/{editId}/apks/{apkVersionCode}/deobfuscationFiles/{deobfuscationFileType}", - "httpMethod": "POST", - "description": "Uploads the deobfuscation file of the specified APK. If a deobfuscation file already exists, it will be replaced.", - "parameters": { - "apkVersionCode": { - "type": "integer", - "description": "The version code of the APK whose deobfuscation file is being uploaded.", - "required": true, - "format": "int32", - "location": "path" + "MonthDay": { + "id": "MonthDay", + "properties": { + "day": { + "description": "Day of a month, value in [1, 31] range. Valid range depends on the specified month.", + "format": "uint32", + "type": "integer" }, - "deobfuscationFileType": { - "type": "string", - "required": true, - "enum": [ - "proguard" - ], - "enumDescriptions": [ - "" - ], - "location": "path" - }, - "editId": { - "type": "string", - "description": "Unique identifier for this edit.", - "required": true, - "location": "path" - }, - "packageName": { - "type": "string", - "description": "Unique identifier of the Android app for which the deobfuscatiuon files are being uploaded; for example, \"com.spiffygame\".", - "required": true, - "location": "path" + "month": { + "description": "Month of a year. e.g. 1 = JAN, 2 = FEB etc.", + "format": "uint32", + "type": "integer" } - }, - "parameterOrder": [ - "packageName", - "editId", - "apkVersionCode", - "deobfuscationFileType" - ], - "response": { - "$ref": "DeobfuscationFilesUploadResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/androidpublisher" - ], - "supportsMediaUpload": true, - "mediaUpload": { - "accept": [ - "application/octet-stream" - ], - "maxSize": "300MB", - "protocols": { - "simple": { - "multipart": true, - "path": "/upload/androidpublisher/v2/applications/{packageName}/edits/{editId}/apks/{apkVersionCode}/deobfuscationFiles/{deobfuscationFileType}" - }, - "resumable": { - "multipart": true, - "path": "/resumable/upload/androidpublisher/v2/applications/{packageName}/edits/{editId}/apks/{apkVersionCode}/deobfuscationFiles/{deobfuscationFileType}" - } - } - } - } - } + }, + "type": "object" }, - "details": { - "methods": { - "get": { - "id": "androidpublisher.edits.details.get", - "path": "{packageName}/edits/{editId}/details", - "httpMethod": "GET", - "description": "Fetches app details for this edit. This includes the default language and developer support contact information.", - "parameters": { - "editId": { - "type": "string", - "description": "Unique identifier for this edit.", - "required": true, - "location": "path" - }, - "packageName": { - "type": "string", - "description": "Unique identifier for the Android app that is being updated; for example, \"com.spiffygame\".", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "packageName", - "editId" - ], - "response": { - "$ref": "AppDetails" - }, - "scopes": [ - "https://www.googleapis.com/auth/androidpublisher" - ] - }, - "patch": { - "id": "androidpublisher.edits.details.patch", - "path": "{packageName}/edits/{editId}/details", - "httpMethod": "PATCH", - "description": "Updates app details for this edit. This method supports patch semantics.", - "parameters": { - "editId": { - "type": "string", - "description": "Unique identifier for this edit.", - "required": true, - "location": "path" - }, - "packageName": { - "type": "string", - "description": "Unique identifier for the Android app that is being updated; for example, \"com.spiffygame\".", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "packageName", - "editId" - ], - "request": { - "$ref": "AppDetails" - }, - "response": { - "$ref": "AppDetails" - }, - "scopes": [ - "https://www.googleapis.com/auth/androidpublisher" - ] - }, - "update": { - "id": "androidpublisher.edits.details.update", - "path": "{packageName}/edits/{editId}/details", - "httpMethod": "PUT", - "description": "Updates app details for this edit.", - "parameters": { - "editId": { - "type": "string", - "description": "Unique identifier for this edit.", - "required": true, - "location": "path" - }, - "packageName": { - "type": "string", - "description": "Unique identifier for the Android app that is being updated; for example, \"com.spiffygame\".", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "packageName", - "editId" - ], - "request": { - "$ref": "AppDetails" - }, - "response": { - "$ref": "AppDetails" - }, - "scopes": [ - "https://www.googleapis.com/auth/androidpublisher" - ] - } - } - }, - "expansionfiles": { - "methods": { - "get": { - "id": "androidpublisher.edits.expansionfiles.get", - "path": "{packageName}/edits/{editId}/apks/{apkVersionCode}/expansionFiles/{expansionFileType}", - "httpMethod": "GET", - "description": "Fetches the Expansion File configuration for the APK specified.", - "parameters": { - "apkVersionCode": { - "type": "integer", - "description": "The version code of the APK whose Expansion File configuration is being read or modified.", - "required": true, - "format": "int32", - "location": "path" - }, - "editId": { - "type": "string", - "description": "Unique identifier for this edit.", - "required": true, - "location": "path" - }, - "expansionFileType": { - "type": "string", - "required": true, - "enum": [ - "main", - "patch" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "path" - }, - "packageName": { - "type": "string", - "description": "Unique identifier for the Android app that is being updated; for example, \"com.spiffygame\".", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "packageName", - "editId", - "apkVersionCode", - "expansionFileType" - ], - "response": { - "$ref": "ExpansionFile" - }, - "scopes": [ - "https://www.googleapis.com/auth/androidpublisher" - ] - }, - "patch": { - "id": "androidpublisher.edits.expansionfiles.patch", - "path": "{packageName}/edits/{editId}/apks/{apkVersionCode}/expansionFiles/{expansionFileType}", - "httpMethod": "PATCH", - "description": "Updates the APK's Expansion File configuration to reference another APK's Expansion Files. To add a new Expansion File use the Upload method. This method supports patch semantics.", - "parameters": { - "apkVersionCode": { - "type": "integer", - "description": "The version code of the APK whose Expansion File configuration is being read or modified.", - "required": true, - "format": "int32", - "location": "path" - }, - "editId": { - "type": "string", - "description": "Unique identifier for this edit.", - "required": true, - "location": "path" - }, - "expansionFileType": { - "type": "string", - "required": true, - "enum": [ - "main", - "patch" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "path" - }, - "packageName": { - "type": "string", - "description": "Unique identifier for the Android app that is being updated; for example, \"com.spiffygame\".", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "packageName", - "editId", - "apkVersionCode", - "expansionFileType" - ], - "request": { - "$ref": "ExpansionFile" - }, - "response": { - "$ref": "ExpansionFile" - }, - "scopes": [ - "https://www.googleapis.com/auth/androidpublisher" - ] - }, - "update": { - "id": "androidpublisher.edits.expansionfiles.update", - "path": "{packageName}/edits/{editId}/apks/{apkVersionCode}/expansionFiles/{expansionFileType}", - "httpMethod": "PUT", - "description": "Updates the APK's Expansion File configuration to reference another APK's Expansion Files. To add a new Expansion File use the Upload method.", - "parameters": { - "apkVersionCode": { - "type": "integer", - "description": "The version code of the APK whose Expansion File configuration is being read or modified.", - "required": true, - "format": "int32", - "location": "path" - }, - "editId": { - "type": "string", - "description": "Unique identifier for this edit.", - "required": true, - "location": "path" - }, - "expansionFileType": { - "type": "string", - "required": true, - "enum": [ - "main", - "patch" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "path" - }, - "packageName": { - "type": "string", - "description": "Unique identifier for the Android app that is being updated; for example, \"com.spiffygame\".", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "packageName", - "editId", - "apkVersionCode", - "expansionFileType" - ], - "request": { - "$ref": "ExpansionFile" - }, - "response": { - "$ref": "ExpansionFile" - }, - "scopes": [ - "https://www.googleapis.com/auth/androidpublisher" - ] - }, - "upload": { - "id": "androidpublisher.edits.expansionfiles.upload", - "path": "{packageName}/edits/{editId}/apks/{apkVersionCode}/expansionFiles/{expansionFileType}", - "httpMethod": "POST", - "description": "Uploads and attaches a new Expansion File to the APK specified.", - "parameters": { - "apkVersionCode": { - "type": "integer", - "description": "The version code of the APK whose Expansion File configuration is being read or modified.", - "required": true, - "format": "int32", - "location": "path" - }, - "editId": { - "type": "string", - "description": "Unique identifier for this edit.", - "required": true, - "location": "path" - }, - "expansionFileType": { - "type": "string", - "required": true, - "enum": [ - "main", - "patch" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "path" - }, - "packageName": { - "type": "string", - "description": "Unique identifier for the Android app that is being updated; for example, \"com.spiffygame\".", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "packageName", - "editId", - "apkVersionCode", - "expansionFileType" - ], - "response": { - "$ref": "ExpansionFilesUploadResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/androidpublisher" - ], - "supportsMediaUpload": true, - "mediaUpload": { - "accept": [ - "application/octet-stream" - ], - "maxSize": "2048MB", - "protocols": { - "simple": { - "multipart": true, - "path": "/upload/androidpublisher/v2/applications/{packageName}/edits/{editId}/apks/{apkVersionCode}/expansionFiles/{expansionFileType}" - }, - "resumable": { - "multipart": true, - "path": "/resumable/upload/androidpublisher/v2/applications/{packageName}/edits/{editId}/apks/{apkVersionCode}/expansionFiles/{expansionFileType}" - } - } - } - } - } - }, - "images": { - "methods": { - "delete": { - "id": "androidpublisher.edits.images.delete", - "path": "{packageName}/edits/{editId}/listings/{language}/{imageType}/{imageId}", - "httpMethod": "DELETE", - "description": "Deletes the image (specified by id) from the edit.", - "parameters": { - "editId": { - "type": "string", - "description": "Unique identifier for this edit.", - "required": true, - "location": "path" - }, - "imageId": { - "type": "string", - "description": "Unique identifier an image within the set of images attached to this edit.", - "required": true, - "location": "path" - }, - "imageType": { - "type": "string", - "required": true, - "enum": [ - "featureGraphic", - "icon", - "phoneScreenshots", - "promoGraphic", - "sevenInchScreenshots", - "tenInchScreenshots", - "tvBanner", - "tvScreenshots", - "wearScreenshots" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "" - ], - "location": "path" - }, - "language": { - "type": "string", - "description": "The language code (a BCP-47 language tag) of the localized listing whose images are to read or modified. For example, to select Austrian German, pass \"de-AT\".", - "required": true, - "location": "path" - }, - "packageName": { - "type": "string", - "description": "Unique identifier for the Android app that is being updated; for example, \"com.spiffygame\".", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "packageName", - "editId", - "language", - "imageType", - "imageId" - ], - "scopes": [ - "https://www.googleapis.com/auth/androidpublisher" - ] - }, - "deleteall": { - "id": "androidpublisher.edits.images.deleteall", - "path": "{packageName}/edits/{editId}/listings/{language}/{imageType}", - "httpMethod": "DELETE", - "description": "Deletes all images for the specified language and image type.", - "parameters": { - "editId": { - "type": "string", - "description": "Unique identifier for this edit.", - "required": true, - "location": "path" - }, - "imageType": { - "type": "string", - "required": true, - "enum": [ - "featureGraphic", - "icon", - "phoneScreenshots", - "promoGraphic", - "sevenInchScreenshots", - "tenInchScreenshots", - "tvBanner", - "tvScreenshots", - "wearScreenshots" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "" - ], - "location": "path" - }, - "language": { - "type": "string", - "description": "The language code (a BCP-47 language tag) of the localized listing whose images are to read or modified. For example, to select Austrian German, pass \"de-AT\".", - "required": true, - "location": "path" - }, - "packageName": { - "type": "string", - "description": "Unique identifier for the Android app that is being updated; for example, \"com.spiffygame\".", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "packageName", - "editId", - "language", - "imageType" - ], - "response": { - "$ref": "ImagesDeleteAllResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/androidpublisher" - ] - }, - "list": { - "id": "androidpublisher.edits.images.list", - "path": "{packageName}/edits/{editId}/listings/{language}/{imageType}", - "httpMethod": "GET", - "description": "Lists all images for the specified language and image type.", - "parameters": { - "editId": { - "type": "string", - "description": "Unique identifier for this edit.", - "required": true, - "location": "path" - }, - "imageType": { - "type": "string", - "required": true, - "enum": [ - "featureGraphic", - "icon", - "phoneScreenshots", - "promoGraphic", - "sevenInchScreenshots", - "tenInchScreenshots", - "tvBanner", - "tvScreenshots", - "wearScreenshots" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "" - ], - "location": "path" - }, - "language": { - "type": "string", - "description": "The language code (a BCP-47 language tag) of the localized listing whose images are to read or modified. For example, to select Austrian German, pass \"de-AT\".", - "required": true, - "location": "path" - }, - "packageName": { - "type": "string", - "description": "Unique identifier for the Android app that is being updated; for example, \"com.spiffygame\".", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "packageName", - "editId", - "language", - "imageType" - ], - "response": { - "$ref": "ImagesListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/androidpublisher" - ] - }, - "upload": { - "id": "androidpublisher.edits.images.upload", - "path": "{packageName}/edits/{editId}/listings/{language}/{imageType}", - "httpMethod": "POST", - "description": "Uploads a new image and adds it to the list of images for the specified language and image type.", - "parameters": { - "editId": { - "type": "string", - "description": "Unique identifier for this edit.", - "required": true, - "location": "path" - }, - "imageType": { - "type": "string", - "required": true, - "enum": [ - "featureGraphic", - "icon", - "phoneScreenshots", - "promoGraphic", - "sevenInchScreenshots", - "tenInchScreenshots", - "tvBanner", - "tvScreenshots", - "wearScreenshots" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "" - ], - "location": "path" - }, - "language": { - "type": "string", - "description": "The language code (a BCP-47 language tag) of the localized listing whose images are to read or modified. For example, to select Austrian German, pass \"de-AT\".", - "required": true, - "location": "path" - }, - "packageName": { - "type": "string", - "description": "Unique identifier for the Android app that is being updated; for example, \"com.spiffygame\".", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "packageName", - "editId", - "language", - "imageType" - ], - "response": { - "$ref": "ImagesUploadResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/androidpublisher" - ], - "supportsMediaUpload": true, - "mediaUpload": { - "accept": [ - "image/*" - ], - "maxSize": "15MB", - "protocols": { - "simple": { - "multipart": true, - "path": "/upload/androidpublisher/v2/applications/{packageName}/edits/{editId}/listings/{language}/{imageType}" - }, - "resumable": { - "multipart": true, - "path": "/resumable/upload/androidpublisher/v2/applications/{packageName}/edits/{editId}/listings/{language}/{imageType}" - } - } - } - } - } - }, - "listings": { - "methods": { - "delete": { - "id": "androidpublisher.edits.listings.delete", - "path": "{packageName}/edits/{editId}/listings/{language}", - "httpMethod": "DELETE", - "description": "Deletes the specified localized store listing from an edit.", - "parameters": { - "editId": { - "type": "string", - "description": "Unique identifier for this edit.", - "required": true, - "location": "path" - }, - "language": { - "type": "string", - "description": "The language code (a BCP-47 language tag) of the localized listing to read or modify. For example, to select Austrian German, pass \"de-AT\".", - "required": true, - "location": "path" - }, - "packageName": { - "type": "string", - "description": "Unique identifier for the Android app that is being updated; for example, \"com.spiffygame\".", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "packageName", - "editId", - "language" - ], - "scopes": [ - "https://www.googleapis.com/auth/androidpublisher" - ] - }, - "deleteall": { - "id": "androidpublisher.edits.listings.deleteall", - "path": "{packageName}/edits/{editId}/listings", - "httpMethod": "DELETE", - "description": "Deletes all localized listings from an edit.", - "parameters": { - "editId": { - "type": "string", - "description": "Unique identifier for this edit.", - "required": true, - "location": "path" - }, - "packageName": { - "type": "string", - "description": "Unique identifier for the Android app that is being updated; for example, \"com.spiffygame\".", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "packageName", - "editId" - ], - "scopes": [ - "https://www.googleapis.com/auth/androidpublisher" - ] - }, - "get": { - "id": "androidpublisher.edits.listings.get", - "path": "{packageName}/edits/{editId}/listings/{language}", - "httpMethod": "GET", - "description": "Fetches information about a localized store listing.", - "parameters": { - "editId": { - "type": "string", - "description": "Unique identifier for this edit.", - "required": true, - "location": "path" - }, - "language": { - "type": "string", - "description": "The language code (a BCP-47 language tag) of the localized listing to read or modify. For example, to select Austrian German, pass \"de-AT\".", - "required": true, - "location": "path" - }, - "packageName": { - "type": "string", - "description": "Unique identifier for the Android app that is being updated; for example, \"com.spiffygame\".", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "packageName", - "editId", - "language" - ], - "response": { - "$ref": "Listing" - }, - "scopes": [ - "https://www.googleapis.com/auth/androidpublisher" - ] - }, - "list": { - "id": "androidpublisher.edits.listings.list", - "path": "{packageName}/edits/{editId}/listings", - "httpMethod": "GET", - "description": "Returns all of the localized store listings attached to this edit.", - "parameters": { - "editId": { - "type": "string", - "description": "Unique identifier for this edit.", - "required": true, - "location": "path" - }, - "packageName": { - "type": "string", - "description": "Unique identifier for the Android app that is being updated; for example, \"com.spiffygame\".", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "packageName", - "editId" - ], - "response": { - "$ref": "ListingsListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/androidpublisher" - ] - }, - "patch": { - "id": "androidpublisher.edits.listings.patch", - "path": "{packageName}/edits/{editId}/listings/{language}", - "httpMethod": "PATCH", - "description": "Creates or updates a localized store listing. This method supports patch semantics.", - "parameters": { - "editId": { - "type": "string", - "description": "Unique identifier for this edit.", - "required": true, - "location": "path" - }, - "language": { - "type": "string", - "description": "The language code (a BCP-47 language tag) of the localized listing to read or modify. For example, to select Austrian German, pass \"de-AT\".", - "required": true, - "location": "path" - }, - "packageName": { - "type": "string", - "description": "Unique identifier for the Android app that is being updated; for example, \"com.spiffygame\".", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "packageName", - "editId", - "language" - ], - "request": { - "$ref": "Listing" - }, - "response": { - "$ref": "Listing" - }, - "scopes": [ - "https://www.googleapis.com/auth/androidpublisher" - ] - }, - "update": { - "id": "androidpublisher.edits.listings.update", - "path": "{packageName}/edits/{editId}/listings/{language}", - "httpMethod": "PUT", - "description": "Creates or updates a localized store listing.", - "parameters": { - "editId": { - "type": "string", - "description": "Unique identifier for this edit.", - "required": true, - "location": "path" - }, - "language": { - "type": "string", - "description": "The language code (a BCP-47 language tag) of the localized listing to read or modify. For example, to select Austrian German, pass \"de-AT\".", - "required": true, - "location": "path" - }, - "packageName": { - "type": "string", - "description": "Unique identifier for the Android app that is being updated; for example, \"com.spiffygame\".", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "packageName", - "editId", - "language" - ], - "request": { - "$ref": "Listing" - }, - "response": { - "$ref": "Listing" - }, - "scopes": [ - "https://www.googleapis.com/auth/androidpublisher" - ] - } - } - }, - "testers": { - "methods": { - "get": { - "id": "androidpublisher.edits.testers.get", - "path": "{packageName}/edits/{editId}/testers/{track}", - "httpMethod": "GET", - "parameters": { - "editId": { - "type": "string", - "description": "Unique identifier for this edit.", - "required": true, - "location": "path" - }, - "packageName": { - "type": "string", - "description": "Unique identifier for the Android app that is being updated; for example, \"com.spiffygame\".", - "required": true, - "location": "path" - }, - "track": { - "type": "string", - "description": "The track to read or modify. Acceptable values are: \"alpha\", \"beta\", \"production\" or \"rollout\".", - "required": true, - "pattern": "(alpha|beta|production|rollout)", - "location": "path" - } - }, - "parameterOrder": [ - "packageName", - "editId", - "track" - ], - "response": { - "$ref": "Testers" - }, - "scopes": [ - "https://www.googleapis.com/auth/androidpublisher" - ] - }, - "patch": { - "id": "androidpublisher.edits.testers.patch", - "path": "{packageName}/edits/{editId}/testers/{track}", - "httpMethod": "PATCH", - "parameters": { - "editId": { - "type": "string", - "description": "Unique identifier for this edit.", - "required": true, - "location": "path" - }, - "packageName": { - "type": "string", - "description": "Unique identifier for the Android app that is being updated; for example, \"com.spiffygame\".", - "required": true, - "location": "path" - }, - "track": { - "type": "string", - "description": "The track to read or modify. Acceptable values are: \"alpha\", \"beta\", \"production\" or \"rollout\".", - "required": true, - "pattern": "(alpha|beta|production|rollout)", - "location": "path" - } - }, - "parameterOrder": [ - "packageName", - "editId", - "track" - ], - "request": { - "$ref": "Testers" - }, - "response": { - "$ref": "Testers" - }, - "scopes": [ - "https://www.googleapis.com/auth/androidpublisher" - ] - }, - "update": { - "id": "androidpublisher.edits.testers.update", - "path": "{packageName}/edits/{editId}/testers/{track}", - "httpMethod": "PUT", - "parameters": { - "editId": { - "type": "string", - "description": "Unique identifier for this edit.", - "required": true, - "location": "path" - }, - "packageName": { - "type": "string", - "description": "Unique identifier for the Android app that is being updated; for example, \"com.spiffygame\".", - "required": true, - "location": "path" - }, - "track": { - "type": "string", - "description": "The track to read or modify. Acceptable values are: \"alpha\", \"beta\", \"production\" or \"rollout\".", - "required": true, - "pattern": "(alpha|beta|production|rollout)", - "location": "path" - } - }, - "parameterOrder": [ - "packageName", - "editId", - "track" - ], - "request": { - "$ref": "Testers" - }, - "response": { - "$ref": "Testers" - }, - "scopes": [ - "https://www.googleapis.com/auth/androidpublisher" - ] - } - } - }, - "tracks": { - "methods": { - "get": { - "id": "androidpublisher.edits.tracks.get", - "path": "{packageName}/edits/{editId}/tracks/{track}", - "httpMethod": "GET", - "description": "Fetches the track configuration for the specified track type. Includes the APK version codes that are in this track.", - "parameters": { - "editId": { - "type": "string", - "description": "Unique identifier for this edit.", - "required": true, - "location": "path" - }, - "packageName": { - "type": "string", - "description": "Unique identifier for the Android app that is being updated; for example, \"com.spiffygame\".", - "required": true, - "location": "path" - }, - "track": { - "type": "string", - "description": "The track to read or modify. Acceptable values are: \"alpha\", \"beta\", \"production\" or \"rollout\".", - "required": true, - "pattern": "(alpha|beta|production|rollout)", - "location": "path" - } - }, - "parameterOrder": [ - "packageName", - "editId", - "track" - ], - "response": { - "$ref": "Track" - }, - "scopes": [ - "https://www.googleapis.com/auth/androidpublisher" - ] - }, - "list": { - "id": "androidpublisher.edits.tracks.list", - "path": "{packageName}/edits/{editId}/tracks", - "httpMethod": "GET", - "description": "Lists all the track configurations for this edit.", - "parameters": { - "editId": { - "type": "string", - "description": "Unique identifier for this edit.", - "required": true, - "location": "path" - }, - "packageName": { - "type": "string", - "description": "Unique identifier for the Android app that is being updated; for example, \"com.spiffygame\".", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "packageName", - "editId" - ], - "response": { - "$ref": "TracksListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/androidpublisher" - ] - }, - "patch": { - "id": "androidpublisher.edits.tracks.patch", - "path": "{packageName}/edits/{editId}/tracks/{track}", - "httpMethod": "PATCH", - "description": "Updates the track configuration for the specified track type. When halted, the rollout track cannot be updated without adding new APKs, and adding new APKs will cause it to resume. This method supports patch semantics.", - "parameters": { - "editId": { - "type": "string", - "description": "Unique identifier for this edit.", - "required": true, - "location": "path" - }, - "packageName": { - "type": "string", - "description": "Unique identifier for the Android app that is being updated; for example, \"com.spiffygame\".", - "required": true, - "location": "path" - }, - "track": { - "type": "string", - "description": "The track to read or modify. Acceptable values are: \"alpha\", \"beta\", \"production\" or \"rollout\".", - "required": true, - "pattern": "(alpha|beta|production|rollout)", - "location": "path" - } - }, - "parameterOrder": [ - "packageName", - "editId", - "track" - ], - "request": { - "$ref": "Track" - }, - "response": { - "$ref": "Track" - }, - "scopes": [ - "https://www.googleapis.com/auth/androidpublisher" - ] - }, - "update": { - "id": "androidpublisher.edits.tracks.update", - "path": "{packageName}/edits/{editId}/tracks/{track}", - "httpMethod": "PUT", - "description": "Updates the track configuration for the specified track type. When halted, the rollout track cannot be updated without adding new APKs, and adding new APKs will cause it to resume.", - "parameters": { - "editId": { - "type": "string", - "description": "Unique identifier for this edit.", - "required": true, - "location": "path" - }, - "packageName": { - "type": "string", - "description": "Unique identifier for the Android app that is being updated; for example, \"com.spiffygame\".", - "required": true, - "location": "path" - }, - "track": { - "type": "string", - "description": "The track to read or modify. Acceptable values are: \"alpha\", \"beta\", \"production\" or \"rollout\".", - "required": true, - "pattern": "(alpha|beta|production|rollout)", - "location": "path" - } - }, - "parameterOrder": [ - "packageName", - "editId", - "track" - ], - "request": { - "$ref": "Track" - }, - "response": { - "$ref": "Track" - }, - "scopes": [ - "https://www.googleapis.com/auth/androidpublisher" - ] - } - } - } - } - }, - "entitlements": { - "methods": { - "list": { - "id": "androidpublisher.entitlements.list", - "path": "{packageName}/entitlements", - "httpMethod": "GET", - "description": "Lists the user's current inapp item or subscription entitlements", - "parameters": { - "maxResults": { - "type": "integer", - "format": "uint32", - "location": "query" - }, - "packageName": { - "type": "string", - "description": "The package name of the application the inapp product was sold in (for example, 'com.some.thing').", - "required": true, - "location": "path" - }, - "productId": { - "type": "string", - "description": "The product id of the inapp product (for example, 'sku1'). This can be used to restrict the result set.", - "location": "query" - }, - "startIndex": { - "type": "integer", - "format": "uint32", - "location": "query" - }, - "token": { - "type": "string", - "location": "query" - } - }, - "parameterOrder": [ - "packageName" - ], - "response": { - "$ref": "EntitlementsListResponse" - } - } - } - }, - "inappproducts": { - "methods": { - "delete": { - "id": "androidpublisher.inappproducts.delete", - "path": "{packageName}/inappproducts/{sku}", - "httpMethod": "DELETE", - "description": "Delete an in-app product for an app.", - "parameters": { - "packageName": { - "type": "string", - "description": "Unique identifier for the Android app with the in-app product; for example, \"com.spiffygame\".", - "required": true, - "location": "path" - }, - "sku": { - "type": "string", - "description": "Unique identifier for the in-app product.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "packageName", - "sku" - ], - "scopes": [ - "https://www.googleapis.com/auth/androidpublisher" - ] - }, - "get": { - "id": "androidpublisher.inappproducts.get", - "path": "{packageName}/inappproducts/{sku}", - "httpMethod": "GET", - "description": "Returns information about the in-app product specified.", - "parameters": { - "packageName": { - "type": "string", - "required": true, - "location": "path" - }, - "sku": { - "type": "string", - "description": "Unique identifier for the in-app product.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "packageName", - "sku" - ], - "response": { - "$ref": "InAppProduct" - }, - "scopes": [ - "https://www.googleapis.com/auth/androidpublisher" - ] - }, - "insert": { - "id": "androidpublisher.inappproducts.insert", - "path": "{packageName}/inappproducts", - "httpMethod": "POST", - "description": "Creates a new in-app product for an app.", - "parameters": { - "autoConvertMissingPrices": { - "type": "boolean", - "description": "If true the prices for all regions targeted by the parent app that don't have a price specified for this in-app product will be auto converted to the target currency based on the default price. Defaults to false.", - "location": "query" - }, - "packageName": { - "type": "string", - "description": "Unique identifier for the Android app; for example, \"com.spiffygame\".", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "packageName" - ], - "request": { - "$ref": "InAppProduct" - }, - "response": { - "$ref": "InAppProduct" - }, - "scopes": [ - "https://www.googleapis.com/auth/androidpublisher" - ] - }, - "list": { - "id": "androidpublisher.inappproducts.list", - "path": "{packageName}/inappproducts", - "httpMethod": "GET", - "description": "List all the in-app products for an Android app, both subscriptions and managed in-app products..", - "parameters": { - "maxResults": { - "type": "integer", - "format": "uint32", - "location": "query" - }, - "packageName": { - "type": "string", - "description": "Unique identifier for the Android app with in-app products; for example, \"com.spiffygame\".", - "required": true, - "location": "path" - }, - "startIndex": { - "type": "integer", - "format": "uint32", - "location": "query" - }, - "token": { - "type": "string", - "location": "query" - } - }, - "parameterOrder": [ - "packageName" - ], - "response": { - "$ref": "InappproductsListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/androidpublisher" - ] - }, - "patch": { - "id": "androidpublisher.inappproducts.patch", - "path": "{packageName}/inappproducts/{sku}", - "httpMethod": "PATCH", - "description": "Updates the details of an in-app product. This method supports patch semantics.", - "parameters": { - "autoConvertMissingPrices": { - "type": "boolean", - "description": "If true the prices for all regions targeted by the parent app that don't have a price specified for this in-app product will be auto converted to the target currency based on the default price. Defaults to false.", - "location": "query" - }, - "packageName": { - "type": "string", - "description": "Unique identifier for the Android app with the in-app product; for example, \"com.spiffygame\".", - "required": true, - "location": "path" - }, - "sku": { - "type": "string", - "description": "Unique identifier for the in-app product.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "packageName", - "sku" - ], - "request": { - "$ref": "InAppProduct" - }, - "response": { - "$ref": "InAppProduct" - }, - "scopes": [ - "https://www.googleapis.com/auth/androidpublisher" - ] - }, - "update": { - "id": "androidpublisher.inappproducts.update", - "path": "{packageName}/inappproducts/{sku}", - "httpMethod": "PUT", - "description": "Updates the details of an in-app product.", - "parameters": { - "autoConvertMissingPrices": { - "type": "boolean", - "description": "If true the prices for all regions targeted by the parent app that don't have a price specified for this in-app product will be auto converted to the target currency based on the default price. Defaults to false.", - "location": "query" - }, - "packageName": { - "type": "string", - "description": "Unique identifier for the Android app with the in-app product; for example, \"com.spiffygame\".", - "required": true, - "location": "path" - }, - "sku": { - "type": "string", - "description": "Unique identifier for the in-app product.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "packageName", - "sku" - ], - "request": { - "$ref": "InAppProduct" - }, - "response": { - "$ref": "InAppProduct" - }, - "scopes": [ - "https://www.googleapis.com/auth/androidpublisher" - ] - } - } - }, - "purchases": { - "resources": { - "products": { - "methods": { - "get": { - "id": "androidpublisher.purchases.products.get", - "path": "{packageName}/purchases/products/{productId}/tokens/{token}", - "httpMethod": "GET", - "description": "Checks the purchase and consumption status of an inapp item.", - "parameters": { - "packageName": { - "type": "string", - "description": "The package name of the application the inapp product was sold in (for example, 'com.some.thing').", - "required": true, - "location": "path" - }, - "productId": { - "type": "string", - "description": "The inapp product SKU (for example, 'com.some.thing.inapp1').", - "required": true, - "location": "path" - }, - "token": { - "type": "string", - "description": "The token provided to the user's device when the inapp product was purchased.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "packageName", - "productId", - "token" - ], - "response": { - "$ref": "ProductPurchase" - }, - "scopes": [ - "https://www.googleapis.com/auth/androidpublisher" - ] - } - } - }, - "subscriptions": { - "methods": { - "cancel": { - "id": "androidpublisher.purchases.subscriptions.cancel", - "path": "{packageName}/purchases/subscriptions/{subscriptionId}/tokens/{token}:cancel", - "httpMethod": "POST", - "description": "Cancels a user's subscription purchase. The subscription remains valid until its expiration time.", - "parameters": { - "packageName": { - "type": "string", - "description": "The package name of the application for which this subscription was purchased (for example, 'com.some.thing').", - "required": true, - "location": "path" - }, - "subscriptionId": { - "type": "string", - "description": "The purchased subscription ID (for example, 'monthly001').", - "required": true, - "location": "path" - }, - "token": { - "type": "string", - "description": "The token provided to the user's device when the subscription was purchased.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "packageName", - "subscriptionId", - "token" - ], - "scopes": [ - "https://www.googleapis.com/auth/androidpublisher" - ] - }, - "defer": { - "id": "androidpublisher.purchases.subscriptions.defer", - "path": "{packageName}/purchases/subscriptions/{subscriptionId}/tokens/{token}:defer", - "httpMethod": "POST", - "description": "Defers a user's subscription purchase until a specified future expiration time.", - "parameters": { - "packageName": { - "type": "string", - "description": "The package name of the application for which this subscription was purchased (for example, 'com.some.thing').", - "required": true, - "location": "path" - }, - "subscriptionId": { - "type": "string", - "description": "The purchased subscription ID (for example, 'monthly001').", - "required": true, - "location": "path" - }, - "token": { - "type": "string", - "description": "The token provided to the user's device when the subscription was purchased.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "packageName", - "subscriptionId", - "token" - ], - "request": { - "$ref": "SubscriptionPurchasesDeferRequest" - }, - "response": { - "$ref": "SubscriptionPurchasesDeferResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/androidpublisher" - ] - }, - "get": { - "id": "androidpublisher.purchases.subscriptions.get", - "path": "{packageName}/purchases/subscriptions/{subscriptionId}/tokens/{token}", - "httpMethod": "GET", - "description": "Checks whether a user's subscription purchase is valid and returns its expiry time.", - "parameters": { - "packageName": { - "type": "string", - "description": "The package name of the application for which this subscription was purchased (for example, 'com.some.thing').", - "required": true, - "location": "path" - }, - "subscriptionId": { - "type": "string", - "description": "The purchased subscription ID (for example, 'monthly001').", - "required": true, - "location": "path" - }, - "token": { - "type": "string", - "description": "The token provided to the user's device when the subscription was purchased.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "packageName", - "subscriptionId", - "token" - ], - "response": { - "$ref": "SubscriptionPurchase" - }, - "scopes": [ - "https://www.googleapis.com/auth/androidpublisher" - ] - }, - "refund": { - "id": "androidpublisher.purchases.subscriptions.refund", - "path": "{packageName}/purchases/subscriptions/{subscriptionId}/tokens/{token}:refund", - "httpMethod": "POST", - "description": "Refunds a user's subscription purchase, but the subscription remains valid until its expiration time and it will continue to recur.", - "parameters": { - "packageName": { - "type": "string", - "description": "The package name of the application for which this subscription was purchased (for example, 'com.some.thing').", - "required": true, - "location": "path" - }, - "subscriptionId": { - "type": "string", - "description": "The purchased subscription ID (for example, 'monthly001').", - "required": true, - "location": "path" - }, - "token": { - "type": "string", - "description": "The token provided to the user's device when the subscription was purchased.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "packageName", - "subscriptionId", - "token" - ], - "scopes": [ - "https://www.googleapis.com/auth/androidpublisher" - ] - }, - "revoke": { - "id": "androidpublisher.purchases.subscriptions.revoke", - "path": "{packageName}/purchases/subscriptions/{subscriptionId}/tokens/{token}:revoke", - "httpMethod": "POST", - "description": "Refunds and immediately revokes a user's subscription purchase. Access to the subscription will be terminated immediately and it will stop recurring.", - "parameters": { - "packageName": { - "type": "string", - "description": "The package name of the application for which this subscription was purchased (for example, 'com.some.thing').", - "required": true, - "location": "path" - }, - "subscriptionId": { - "type": "string", - "description": "The purchased subscription ID (for example, 'monthly001').", - "required": true, - "location": "path" - }, - "token": { - "type": "string", - "description": "The token provided to the user's device when the subscription was purchased.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "packageName", - "subscriptionId", - "token" - ], - "scopes": [ - "https://www.googleapis.com/auth/androidpublisher" - ] - } - } - }, - "voidedpurchases": { - "methods": { - "list": { - "id": "androidpublisher.purchases.voidedpurchases.list", - "path": "{packageName}/purchases/voidedpurchases", - "httpMethod": "GET", - "description": "Lists the purchases that were cancelled, refunded or charged-back.", - "parameters": { - "endTime": { - "type": "string", - "description": "The time, in milliseconds since the Epoch, of the newest voided in-app product purchase that you want to see in the response. The value of this parameter cannot be greater than the current time and is ignored if a pagination token is set. Default value is current time. Note: This filter is applied on the time at which the record is seen as voided by our systems and not the actual voided time returned in the response.", - "format": "int64", - "location": "query" - }, - "maxResults": { - "type": "integer", - "format": "uint32", - "location": "query" - }, - "packageName": { - "type": "string", - "description": "The package name of the application for which voided purchases need to be returned (for example, 'com.some.thing').", - "required": true, - "location": "path" + "PageInfo": { + "id": "PageInfo", + "properties": { + "resultPerPage": { + "format": "int32", + "type": "integer" }, "startIndex": { - "type": "integer", - "format": "uint32", - "location": "query" + "format": "int32", + "type": "integer" }, - "startTime": { - "type": "string", - "description": "The time, in milliseconds since the Epoch, of the oldest voided in-app product purchase that you want to see in the response. The value of this parameter cannot be older than 30 days and is ignored if a pagination token is set. Default value is current time minus 30 days. Note: This filter is applied on the time at which the record is seen as voided by our systems and not the actual voided time returned in the response.", - "format": "int64", - "location": "query" - }, - "token": { - "type": "string", - "location": "query" + "totalResults": { + "format": "int32", + "type": "integer" } - }, - "parameterOrder": [ - "packageName" - ], - "response": { - "$ref": "VoidedPurchasesListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/androidpublisher" - ] - } - } + }, + "type": "object" + }, + "Price": { + "id": "Price", + "properties": { + "currency": { + "description": "3 letter Currency code, as defined by ISO 4217.", + "type": "string" + }, + "priceMicros": { + "description": "The price in millionths of the currency base unit represented as a string.", + "type": "string" + } + }, + "type": "object" + }, + "ProductPurchase": { + "description": "A ProductPurchase resource indicates the status of a user's inapp product purchase.", + "id": "ProductPurchase", + "properties": { + "consumptionState": { + "description": "The consumption state of the inapp product. Possible values are: \n- Yet to be consumed \n- Consumed", + "format": "int32", + "type": "integer" + }, + "developerPayload": { + "description": "A developer-specified string that contains supplemental information about an order.", + "type": "string" + }, + "kind": { + "default": "androidpublisher#productPurchase", + "description": "This kind represents an inappPurchase object in the androidpublisher service.", + "type": "string" + }, + "orderId": { + "description": "The order id associated with the purchase of the inapp product.", + "type": "string" + }, + "purchaseState": { + "description": "The purchase state of the order. Possible values are: \n- Purchased \n- Canceled", + "format": "int32", + "type": "integer" + }, + "purchaseTimeMillis": { + "description": "The time the product was purchased, in milliseconds since the epoch (Jan 1, 1970).", + "format": "int64", + "type": "string" + }, + "purchaseType": { + "description": "The type of purchase of the inapp product. This field is only set if this purchase was not made using the standard in-app billing flow. Possible values are: \n- Test (i.e. purchased from a license testing account) \n- Promo (i.e. purchased using a promo code)", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "Prorate": { + "id": "Prorate", + "properties": { + "defaultPrice": { + "$ref": "Price", + "description": "Default price cannot be zero and must be less than the full subscription price. Default price is always in the developer's Checkout merchant currency. Targeted countries have their prices set automatically based on the default_price." + }, + "start": { + "$ref": "MonthDay", + "description": "Defines the first day on which the price takes effect." + } + }, + "type": "object" + }, + "Review": { + "id": "Review", + "properties": { + "authorName": { + "description": "The name of the user who wrote the review.", + "type": "string" + }, + "comments": { + "description": "A repeated field containing comments for the review.", + "items": { + "$ref": "Comment" + }, + "type": "array" + }, + "reviewId": { + "description": "Unique identifier for this review.", + "type": "string" + } + }, + "type": "object" + }, + "ReviewReplyResult": { + "id": "ReviewReplyResult", + "properties": { + "lastEdited": { + "$ref": "Timestamp", + "description": "The time at which the reply took effect." + }, + "replyText": { + "description": "The reply text that was applied.", + "type": "string" + } + }, + "type": "object" + }, + "ReviewsListResponse": { + "id": "ReviewsListResponse", + "properties": { + "pageInfo": { + "$ref": "PageInfo" + }, + "reviews": { + "items": { + "$ref": "Review" + }, + "type": "array" + }, + "tokenPagination": { + "$ref": "TokenPagination" + } + }, + "type": "object" + }, + "ReviewsReplyRequest": { + "id": "ReviewsReplyRequest", + "properties": { + "replyText": { + "description": "The text to set as the reply. Replies of more than approximately 350 characters will be rejected. HTML tags will be stripped.", + "type": "string" + } + }, + "type": "object" + }, + "ReviewsReplyResponse": { + "id": "ReviewsReplyResponse", + "properties": { + "result": { + "$ref": "ReviewReplyResult" + } + }, + "type": "object" + }, + "Season": { + "id": "Season", + "properties": { + "end": { + "$ref": "MonthDay", + "description": "Inclusive end date of the recurrence period." + }, + "prorations": { + "description": "Optionally present list of prorations for the season. Each proration is a one-off discounted entry into a subscription. Each proration contains the first date on which the discount is available and the new pricing information.", + "items": { + "$ref": "Prorate" + }, + "type": "array" + }, + "start": { + "$ref": "MonthDay", + "description": "Inclusive start date of the recurrence period." + } + }, + "type": "object" + }, + "SubscriptionDeferralInfo": { + "description": "A SubscriptionDeferralInfo contains the data needed to defer a subscription purchase to a future expiry time.", + "id": "SubscriptionDeferralInfo", + "properties": { + "desiredExpiryTimeMillis": { + "description": "The desired next expiry time to assign to the subscription, in milliseconds since the Epoch. The given time must be later/greater than the current expiry time for the subscription.", + "format": "int64", + "type": "string" + }, + "expectedExpiryTimeMillis": { + "description": "The expected expiry time for the subscription. If the current expiry time for the subscription is not the value specified here, the deferral will not occur.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "SubscriptionPurchase": { + "description": "A SubscriptionPurchase resource indicates the status of a user's subscription purchase.", + "id": "SubscriptionPurchase", + "properties": { + "autoRenewing": { + "description": "Whether the subscription will automatically be renewed when it reaches its current expiry time.", + "type": "boolean" + }, + "cancelReason": { + "description": "The reason why a subscription was canceled or is not auto-renewing. Possible values are: \n- User canceled the subscription \n- Subscription was canceled by the system, for example because of a billing problem \n- Subscription was replaced with a new subscription \n- Subscription was canceled by the developer", + "format": "int32", + "type": "integer" + }, + "countryCode": { + "description": "ISO 3166-1 alpha-2 billing country/region code of the user at the time the subscription was granted.", + "type": "string" + }, + "developerPayload": { + "description": "A developer-specified string that contains supplemental information about an order.", + "type": "string" + }, + "emailAddress": { + "description": "The email address of the user when the subscription was purchased. Only present for purchases made with 'Subscribe with Google'.", + "type": "string" + }, + "expiryTimeMillis": { + "description": "Time at which the subscription will expire, in milliseconds since the Epoch.", + "format": "int64", + "type": "string" + }, + "familyName": { + "description": "The family name of the user when the subscription was purchased. Only present for purchases made with 'Subscribe with Google'.", + "type": "string" + }, + "givenName": { + "description": "The given name of the user when the subscription was purchased. Only present for purchases made with 'Subscribe with Google'.", + "type": "string" + }, + "kind": { + "default": "androidpublisher#subscriptionPurchase", + "description": "This kind represents a subscriptionPurchase object in the androidpublisher service.", + "type": "string" + }, + "linkedPurchaseToken": { + "description": "The purchase token of the originating purchase if this subscription is one of the following: \n- Re-signup of a canceled but non-lapsed subscription \n- Upgrade/downgrade from a previous subscription For example, suppose a user originally signs up and you receive purchase token X, then the user cancels and goes through the resignup flow (before their subscription lapses) and you receive purchase token Y, and finally the user upgrades their subscription and you receive purchase token Z. If you call this API with purchase token Z, this field will be set to Y. If you call this API with purchase token Y, this field will be set to X. If you call this API with purchase token X, this field will not be set.", + "type": "string" + }, + "orderId": { + "description": "The order id of the latest recurring order associated with the purchase of the subscription.", + "type": "string" + }, + "paymentState": { + "description": "The payment state of the subscription. Possible values are: \n- Payment pending \n- Payment received \n- Free trial", + "format": "int32", + "type": "integer" + }, + "priceAmountMicros": { + "description": "Price of the subscription, not including tax. Price is expressed in micro-units, where 1,000,000 micro-units represents one unit of the currency. For example, if the subscription price is €1.99, price_amount_micros is 1990000.", + "format": "int64", + "type": "string" + }, + "priceCurrencyCode": { + "description": "ISO 4217 currency code for the subscription price. For example, if the price is specified in British pounds sterling, price_currency_code is \"GBP\".", + "type": "string" + }, + "profileId": { + "description": "The profile id of the user when the subscription was purchased. Only present for purchases made with 'Subscribe with Google'.", + "type": "string" + }, + "profileName": { + "description": "The profile name of the user when the subscription was purchased. Only present for purchases made with 'Subscribe with Google'.", + "type": "string" + }, + "purchaseType": { + "description": "The type of purchase of the subscription. This field is only set if this purchase was not made using the standard in-app billing flow. Possible values are: \n- Test (i.e. purchased from a license testing account)", + "format": "int32", + "type": "integer" + }, + "startTimeMillis": { + "description": "Time at which the subscription was granted, in milliseconds since the Epoch.", + "format": "int64", + "type": "string" + }, + "userCancellationTimeMillis": { + "description": "The time at which the subscription was canceled by the user, in milliseconds since the epoch. Only present if cancelReason is 0.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "SubscriptionPurchasesDeferRequest": { + "id": "SubscriptionPurchasesDeferRequest", + "properties": { + "deferralInfo": { + "$ref": "SubscriptionDeferralInfo", + "description": "The information about the new desired expiry time for the subscription." + } + }, + "type": "object" + }, + "SubscriptionPurchasesDeferResponse": { + "id": "SubscriptionPurchasesDeferResponse", + "properties": { + "newExpiryTimeMillis": { + "description": "The new expiry time for the subscription in milliseconds since the Epoch.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "Testers": { + "id": "Testers", + "properties": { + "googleGroups": { + "items": { + "type": "string" + }, + "type": "array" + }, + "googlePlusCommunities": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "Timestamp": { + "id": "Timestamp", + "properties": { + "nanos": { + "format": "int32", + "type": "integer" + }, + "seconds": { + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "TokenPagination": { + "id": "TokenPagination", + "properties": { + "nextPageToken": { + "type": "string" + }, + "previousPageToken": { + "type": "string" + } + }, + "type": "object" + }, + "Track": { + "id": "Track", + "properties": { + "track": { + "description": "Identifier for this track. One of \"alpha\", \"beta\", \"production\", \"rollout\" or \"internal\".", + "type": "string" + }, + "userFraction": { + "format": "double", + "type": "number" + }, + "versionCodes": { + "items": { + "format": "int32", + "type": "integer" + }, + "type": "array" + } + }, + "type": "object" + }, + "TracksListResponse": { + "id": "TracksListResponse", + "properties": { + "kind": { + "default": "androidpublisher#tracksListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"androidpublisher#tracksListResponse\".", + "type": "string" + }, + "tracks": { + "items": { + "$ref": "Track" + }, + "type": "array" + } + }, + "type": "object" + }, + "UserComment": { + "id": "UserComment", + "properties": { + "androidOsVersion": { + "description": "Integer Android SDK version of the user's device at the time the review was written, e.g. 23 is Marshmallow. May be absent.", + "format": "int32", + "type": "integer" + }, + "appVersionCode": { + "description": "Integer version code of the app as installed at the time the review was written. May be absent.", + "format": "int32", + "type": "integer" + }, + "appVersionName": { + "description": "String version name of the app as installed at the time the review was written. May be absent.", + "type": "string" + }, + "device": { + "description": "Codename for the reviewer's device, e.g. klte, flounder. May be absent.", + "type": "string" + }, + "deviceMetadata": { + "$ref": "DeviceMetadata", + "description": "Some information about the characteristics of the user's device" + }, + "lastModified": { + "$ref": "Timestamp", + "description": "The last time at which this comment was updated." + }, + "originalText": { + "description": "Untranslated text of the review, in the case where the review has been translated. If the review has not been translated this is left blank.", + "type": "string" + }, + "reviewerLanguage": { + "description": "Language code for the reviewer. This is taken from the device settings so is not guaranteed to match the language the review is written in. May be absent.", + "type": "string" + }, + "starRating": { + "description": "The star rating associated with the review, from 1 to 5.", + "format": "int32", + "type": "integer" + }, + "text": { + "description": "The content of the comment, i.e. review body. In some cases users have been able to write a review with separate title and body; in those cases the title and body are concatenated and separated by a tab character.", + "type": "string" + }, + "thumbsDownCount": { + "description": "Number of users who have given this review a thumbs down", + "format": "int32", + "type": "integer" + }, + "thumbsUpCount": { + "description": "Number of users who have given this review a thumbs up", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "VoidedPurchase": { + "description": "A VoidedPurchase resource indicates a purchase that was either canceled/refunded/charged-back.", + "id": "VoidedPurchase", + "properties": { + "kind": { + "default": "androidpublisher#voidedPurchase", + "description": "This kind represents a voided purchase object in the androidpublisher service.", + "type": "string" + }, + "purchaseTimeMillis": { + "description": "The time at which the purchase was made, in milliseconds since the epoch (Jan 1, 1970).", + "format": "int64", + "type": "string" + }, + "purchaseToken": { + "description": "The token that was generated when a purchase was made. This uniquely identifies a purchase.", + "type": "string" + }, + "voidedTimeMillis": { + "description": "The time at which the purchase was canceled/refunded/charged-back, in milliseconds since the epoch (Jan 1, 1970).", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "VoidedPurchasesListResponse": { + "id": "VoidedPurchasesListResponse", + "properties": { + "pageInfo": { + "$ref": "PageInfo" + }, + "tokenPagination": { + "$ref": "TokenPagination" + }, + "voidedPurchases": { + "items": { + "$ref": "VoidedPurchase" + }, + "type": "array" + } + }, + "type": "object" } - } }, - "reviews": { - "methods": { - "get": { - "id": "androidpublisher.reviews.get", - "path": "{packageName}/reviews/{reviewId}", - "httpMethod": "GET", - "description": "Returns a single review.", - "parameters": { - "packageName": { - "type": "string", - "description": "Unique identifier for the Android app for which we want reviews; for example, \"com.spiffygame\".", - "required": true, - "location": "path" - }, - "reviewId": { - "type": "string", - "required": true, - "location": "path" - }, - "translationLanguage": { - "type": "string", - "location": "query" - } - }, - "parameterOrder": [ - "packageName", - "reviewId" - ], - "response": { - "$ref": "Review" - }, - "scopes": [ - "https://www.googleapis.com/auth/androidpublisher" - ] - }, - "list": { - "id": "androidpublisher.reviews.list", - "path": "{packageName}/reviews", - "httpMethod": "GET", - "description": "Returns a list of reviews. Only reviews from last week will be returned.", - "parameters": { - "maxResults": { - "type": "integer", - "format": "uint32", - "location": "query" - }, - "packageName": { - "type": "string", - "description": "Unique identifier for the Android app for which we want reviews; for example, \"com.spiffygame\".", - "required": true, - "location": "path" - }, - "startIndex": { - "type": "integer", - "format": "uint32", - "location": "query" - }, - "token": { - "type": "string", - "location": "query" - }, - "translationLanguage": { - "type": "string", - "location": "query" - } - }, - "parameterOrder": [ - "packageName" - ], - "response": { - "$ref": "ReviewsListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/androidpublisher" - ] - }, - "reply": { - "id": "androidpublisher.reviews.reply", - "path": "{packageName}/reviews/{reviewId}:reply", - "httpMethod": "POST", - "description": "Reply to a single review, or update an existing reply.", - "parameters": { - "packageName": { - "type": "string", - "description": "Unique identifier for the Android app for which we want reviews; for example, \"com.spiffygame\".", - "required": true, - "location": "path" - }, - "reviewId": { - "type": "string", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "packageName", - "reviewId" - ], - "request": { - "$ref": "ReviewsReplyRequest" - }, - "response": { - "$ref": "ReviewsReplyResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/androidpublisher" - ] - } - } - } - } -} + "servicePath": "androidpublisher/v2/applications/", + "title": "Google Play Developer API", + "version": "v2" +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/androidpublisher/v2/androidpublisher-gen.go b/vendor/google.golang.org/api/androidpublisher/v2/androidpublisher-gen.go index ae5cb0f77..b5008e567 100644 --- a/vendor/google.golang.org/api/androidpublisher/v2/androidpublisher-gen.go +++ b/vendor/google.golang.org/api/androidpublisher/v2/androidpublisher-gen.go @@ -57,7 +57,6 @@ func New(client *http.Client) (*Service, error) { } s := &Service{client: client, BasePath: basePath} s.Edits = NewEditsService(s) - s.Entitlements = NewEntitlementsService(s) s.Inappproducts = NewInappproductsService(s) s.Purchases = NewPurchasesService(s) s.Reviews = NewReviewsService(s) @@ -71,8 +70,6 @@ type Service struct { Edits *EditsService - Entitlements *EntitlementsService - Inappproducts *InappproductsService Purchases *PurchasesService @@ -204,15 +201,6 @@ type EditsTracksService struct { s *Service } -func NewEntitlementsService(s *Service) *EntitlementsService { - rs := &EntitlementsService{s: s} - return rs -} - -type EntitlementsService struct { - s *Service -} - func NewInappproductsService(s *Service) *InappproductsService { rs := &InappproductsService{s: s} return rs @@ -766,82 +754,6 @@ func (s *DeviceMetadata) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -// Entitlement: An Entitlement resource indicates a user's current -// entitlement to an inapp item or subscription. -type Entitlement struct { - // Kind: This kind represents an entitlement object in the - // androidpublisher service. - Kind string `json:"kind,omitempty"` - - // ProductId: The SKU of the product. - ProductId string `json:"productId,omitempty"` - - // ProductType: The type of the inapp product. Possible values are: - // - In-app item: "inapp" - // - Subscription: "subs" - ProductType string `json:"productType,omitempty"` - - // Token: The token which can be verified using the subscriptions or - // products API. - Token string `json:"token,omitempty"` - - // ForceSendFields is a list of field names (e.g. "Kind") to - // unconditionally include in API requests. By default, fields with - // empty values are omitted from API requests. However, any non-pointer, - // non-interface field appearing in ForceSendFields will be sent to the - // server regardless of whether the field is empty or not. This may be - // used to include empty fields in Patch requests. - ForceSendFields []string `json:"-"` - - // NullFields is a list of field names (e.g. "Kind") to include in API - // requests with the JSON null value. By default, fields with empty - // values are omitted from API requests. However, any field with an - // empty value appearing in NullFields will be sent to the server as - // null. It is an error if a field in this list has a non-empty value. - // This may be used to include null fields in Patch requests. - NullFields []string `json:"-"` -} - -func (s *Entitlement) MarshalJSON() ([]byte, error) { - type NoMethod Entitlement - raw := NoMethod(*s) - return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) -} - -type EntitlementsListResponse struct { - PageInfo *PageInfo `json:"pageInfo,omitempty"` - - Resources []*Entitlement `json:"resources,omitempty"` - - TokenPagination *TokenPagination `json:"tokenPagination,omitempty"` - - // ServerResponse contains the HTTP response code and headers from the - // server. - googleapi.ServerResponse `json:"-"` - - // ForceSendFields is a list of field names (e.g. "PageInfo") to - // unconditionally include in API requests. By default, fields with - // empty values are omitted from API requests. However, any non-pointer, - // non-interface field appearing in ForceSendFields will be sent to the - // server regardless of whether the field is empty or not. This may be - // used to include empty fields in Patch requests. - ForceSendFields []string `json:"-"` - - // NullFields is a list of field names (e.g. "PageInfo") to include in - // API requests with the JSON null value. By default, fields with empty - // values are omitted from API requests. However, any field with an - // empty value appearing in NullFields will be sent to the server as - // null. It is an error if a field in this list has a non-empty value. - // This may be used to include null fields in Patch requests. - NullFields []string `json:"-"` -} - -func (s *EntitlementsListResponse) MarshalJSON() ([]byte, error) { - type NoMethod EntitlementsListResponse - raw := NoMethod(*s) - return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) -} - type ExpansionFile struct { // FileSize: If set this field indicates that this APK has an Expansion // File uploaded to it: this APK does not reference another APK's @@ -1481,7 +1393,7 @@ type ProductPurchase struct { // PurchaseState: The purchase state of the order. Possible values are: // // - Purchased - // - Cancelled + // - Canceled PurchaseState int64 `json:"purchaseState,omitempty"` // PurchaseTimeMillis: The time the product was purchased, in @@ -1492,6 +1404,7 @@ type ProductPurchase struct { // is only set if this purchase was not made using the standard in-app // billing flow. Possible values are: // - Test (i.e. purchased from a license testing account) + // - Promo (i.e. purchased using a promo code) PurchaseType int64 `json:"purchaseType,omitempty"` // ServerResponse contains the HTTP response code and headers from the @@ -1797,13 +1710,13 @@ type SubscriptionPurchase struct { // when it reaches its current expiry time. AutoRenewing bool `json:"autoRenewing,omitempty"` - // CancelReason: The reason why a subscription was cancelled or is not + // CancelReason: The reason why a subscription was canceled or is not // auto-renewing. Possible values are: - // - User cancelled the subscription - // - Subscription was cancelled by the system, for example because of a + // - User canceled the subscription + // - Subscription was canceled by the system, for example because of a // billing problem // - Subscription was replaced with a new subscription - // - Subscription was cancelled by the developer + // - Subscription was canceled by the developer CancelReason *int64 `json:"cancelReason,omitempty"` // CountryCode: ISO 3166-1 alpha-2 billing country/region code of the @@ -1814,10 +1727,25 @@ type SubscriptionPurchase struct { // supplemental information about an order. DeveloperPayload string `json:"developerPayload,omitempty"` + // EmailAddress: The email address of the user when the subscription was + // purchased. Only present for purchases made with 'Subscribe with + // Google'. + EmailAddress string `json:"emailAddress,omitempty"` + // ExpiryTimeMillis: Time at which the subscription will expire, in // milliseconds since the Epoch. ExpiryTimeMillis int64 `json:"expiryTimeMillis,omitempty,string"` + // FamilyName: The family name of the user when the subscription was + // purchased. Only present for purchases made with 'Subscribe with + // Google'. + FamilyName string `json:"familyName,omitempty"` + + // GivenName: The given name of the user when the subscription was + // purchased. Only present for purchases made with 'Subscribe with + // Google'. + GivenName string `json:"givenName,omitempty"` + // Kind: This kind represents a subscriptionPurchase object in the // androidpublisher service. Kind string `json:"kind,omitempty"` @@ -1858,6 +1786,16 @@ type SubscriptionPurchase struct { // price_currency_code is "GBP". PriceCurrencyCode string `json:"priceCurrencyCode,omitempty"` + // ProfileId: The profile id of the user when the subscription was + // purchased. Only present for purchases made with 'Subscribe with + // Google'. + ProfileId string `json:"profileId,omitempty"` + + // ProfileName: The profile name of the user when the subscription was + // purchased. Only present for purchases made with 'Subscribe with + // Google'. + ProfileName string `json:"profileName,omitempty"` + // PurchaseType: The type of purchase of the subscription. This field is // only set if this purchase was not made using the standard in-app // billing flow. Possible values are: @@ -2051,7 +1989,7 @@ func (s *TokenPagination) MarshalJSON() ([]byte, error) { type Track struct { // Track: Identifier for this track. One of "alpha", "beta", - // "production" or "rollout". + // "production", "rollout" or "internal". Track string `json:"track,omitempty"` UserFraction float64 `json:"userFraction,omitempty"` @@ -2209,7 +2147,7 @@ func (s *UserComment) MarshalJSON() ([]byte, error) { } // VoidedPurchase: A VoidedPurchase resource indicates a purchase that -// was either cancelled/refunded/charged-back. +// was either canceled/refunded/charged-back. type VoidedPurchase struct { // Kind: This kind represents a voided purchase object in the // androidpublisher service. @@ -2224,7 +2162,7 @@ type VoidedPurchase struct { PurchaseToken string `json:"purchaseToken,omitempty"` // VoidedTimeMillis: The time at which the purchase was - // cancelled/refunded/charged-back, in milliseconds since the epoch (Jan + // canceled/refunded/charged-back, in milliseconds since the epoch (Jan // 1, 1970). VoidedTimeMillis int64 `json:"voidedTimeMillis,omitempty,string"` @@ -4240,11 +4178,12 @@ func (c *EditsApksUploadCall) doRequest(alt string) (*http.Response, error) { body = new(bytes.Buffer) reqHeaders.Set("Content-Type", "application/json") } - body, cleanup := c.mediaInfo_.UploadRequest(reqHeaders, body) + body, getBody, cleanup := c.mediaInfo_.UploadRequest(reqHeaders, body) defer cleanup() urls += "?" + c.urlParams_.Encode() req, _ := http.NewRequest("POST", urls, body) req.Header = reqHeaders + gensupport.SetGetBody(req, getBody) googleapi.Expand(req.URL, map[string]string{ "packageName": c.packageNameid, "editId": c.editId, @@ -4462,11 +4401,12 @@ func (c *EditsDeobfuscationfilesUploadCall) doRequest(alt string) (*http.Respons body = new(bytes.Buffer) reqHeaders.Set("Content-Type", "application/json") } - body, cleanup := c.mediaInfo_.UploadRequest(reqHeaders, body) + body, getBody, cleanup := c.mediaInfo_.UploadRequest(reqHeaders, body) defer cleanup() urls += "?" + c.urlParams_.Encode() req, _ := http.NewRequest("POST", urls, body) req.Header = reqHeaders + gensupport.SetGetBody(req, getBody) googleapi.Expand(req.URL, map[string]string{ "packageName": c.packageNameid, "editId": c.editId, @@ -5662,11 +5602,12 @@ func (c *EditsExpansionfilesUploadCall) doRequest(alt string) (*http.Response, e body = new(bytes.Buffer) reqHeaders.Set("Content-Type", "application/json") } - body, cleanup := c.mediaInfo_.UploadRequest(reqHeaders, body) + body, getBody, cleanup := c.mediaInfo_.UploadRequest(reqHeaders, body) defer cleanup() urls += "?" + c.urlParams_.Encode() req, _ := http.NewRequest("POST", urls, body) req.Header = reqHeaders + gensupport.SetGetBody(req, getBody) googleapi.Expand(req.URL, map[string]string{ "packageName": c.packageNameid, "editId": c.editId, @@ -6427,11 +6368,12 @@ func (c *EditsImagesUploadCall) doRequest(alt string) (*http.Response, error) { body = new(bytes.Buffer) reqHeaders.Set("Content-Type", "application/json") } - body, cleanup := c.mediaInfo_.UploadRequest(reqHeaders, body) + body, getBody, cleanup := c.mediaInfo_.UploadRequest(reqHeaders, body) defer cleanup() urls += "?" + c.urlParams_.Encode() req, _ := http.NewRequest("POST", urls, body) req.Header = reqHeaders + gensupport.SetGetBody(req, getBody) googleapi.Expand(req.URL, map[string]string{ "packageName": c.packageNameid, "editId": c.editId, @@ -7551,9 +7493,9 @@ func (c *EditsTestersGetCall) Do(opts ...googleapi.CallOption) (*Testers, error) // "type": "string" // }, // "track": { - // "description": "The track to read or modify. Acceptable values are: \"alpha\", \"beta\", \"production\" or \"rollout\".", + // "description": "The track to read or modify. Acceptable values are: \"alpha\", \"beta\", \"production\", \"rollout\" or \"internal\".", // "location": "path", - // "pattern": "(alpha|beta|production|rollout)", + // "pattern": "(alpha|beta|production|rollout|internal)", // "required": true, // "type": "string" // } @@ -7701,9 +7643,9 @@ func (c *EditsTestersPatchCall) Do(opts ...googleapi.CallOption) (*Testers, erro // "type": "string" // }, // "track": { - // "description": "The track to read or modify. Acceptable values are: \"alpha\", \"beta\", \"production\" or \"rollout\".", + // "description": "The track to read or modify. Acceptable values are: \"alpha\", \"beta\", \"production\", \"rollout\" or \"internal\".", // "location": "path", - // "pattern": "(alpha|beta|production|rollout)", + // "pattern": "(alpha|beta|production|rollout|internal)", // "required": true, // "type": "string" // } @@ -7854,9 +7796,9 @@ func (c *EditsTestersUpdateCall) Do(opts ...googleapi.CallOption) (*Testers, err // "type": "string" // }, // "track": { - // "description": "The track to read or modify. Acceptable values are: \"alpha\", \"beta\", \"production\" or \"rollout\".", + // "description": "The track to read or modify. Acceptable values are: \"alpha\", \"beta\", \"production\", \"rollout\" or \"internal\".", // "location": "path", - // "pattern": "(alpha|beta|production|rollout)", + // "pattern": "(alpha|beta|production|rollout|internal)", // "required": true, // "type": "string" // } @@ -8016,9 +7958,9 @@ func (c *EditsTracksGetCall) Do(opts ...googleapi.CallOption) (*Track, error) { // "type": "string" // }, // "track": { - // "description": "The track to read or modify. Acceptable values are: \"alpha\", \"beta\", \"production\" or \"rollout\".", + // "description": "The track to read or modify. Acceptable values are: \"alpha\", \"beta\", \"production\", \"rollout\" or \"internal\".", // "location": "path", - // "pattern": "(alpha|beta|production|rollout)", + // "pattern": "(alpha|beta|production|rollout|internal)", // "required": true, // "type": "string" // } @@ -8317,9 +8259,9 @@ func (c *EditsTracksPatchCall) Do(opts ...googleapi.CallOption) (*Track, error) // "type": "string" // }, // "track": { - // "description": "The track to read or modify. Acceptable values are: \"alpha\", \"beta\", \"production\" or \"rollout\".", + // "description": "The track to read or modify. Acceptable values are: \"alpha\", \"beta\", \"production\", \"rollout\" or \"internal\".", // "location": "path", - // "pattern": "(alpha|beta|production|rollout)", + // "pattern": "(alpha|beta|production|rollout|internal)", // "required": true, // "type": "string" // } @@ -8473,9 +8415,9 @@ func (c *EditsTracksUpdateCall) Do(opts ...googleapi.CallOption) (*Track, error) // "type": "string" // }, // "track": { - // "description": "The track to read or modify. Acceptable values are: \"alpha\", \"beta\", \"production\" or \"rollout\".", + // "description": "The track to read or modify. Acceptable values are: \"alpha\", \"beta\", \"production\", \"rollout\" or \"internal\".", // "location": "path", - // "pattern": "(alpha|beta|production|rollout)", + // "pattern": "(alpha|beta|production|rollout|internal)", // "required": true, // "type": "string" // } @@ -8494,186 +8436,6 @@ func (c *EditsTracksUpdateCall) Do(opts ...googleapi.CallOption) (*Track, error) } -// method id "androidpublisher.entitlements.list": - -type EntitlementsListCall struct { - s *Service - packageName string - urlParams_ gensupport.URLParams - ifNoneMatch_ string - ctx_ context.Context - header_ http.Header -} - -// List: Lists the user's current inapp item or subscription -// entitlements -func (r *EntitlementsService) List(packageName string) *EntitlementsListCall { - c := &EntitlementsListCall{s: r.s, urlParams_: make(gensupport.URLParams)} - c.packageName = packageName - return c -} - -// MaxResults sets the optional parameter "maxResults": -func (c *EntitlementsListCall) MaxResults(maxResults int64) *EntitlementsListCall { - c.urlParams_.Set("maxResults", fmt.Sprint(maxResults)) - return c -} - -// ProductId sets the optional parameter "productId": The product id of -// the inapp product (for example, 'sku1'). This can be used to restrict -// the result set. -func (c *EntitlementsListCall) ProductId(productId string) *EntitlementsListCall { - c.urlParams_.Set("productId", productId) - return c -} - -// StartIndex sets the optional parameter "startIndex": -func (c *EntitlementsListCall) StartIndex(startIndex int64) *EntitlementsListCall { - c.urlParams_.Set("startIndex", fmt.Sprint(startIndex)) - return c -} - -// Token sets the optional parameter "token": -func (c *EntitlementsListCall) Token(token string) *EntitlementsListCall { - c.urlParams_.Set("token", token) - return c -} - -// Fields allows partial responses to be retrieved. See -// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse -// for more information. -func (c *EntitlementsListCall) Fields(s ...googleapi.Field) *EntitlementsListCall { - c.urlParams_.Set("fields", googleapi.CombineFields(s)) - return c -} - -// IfNoneMatch sets the optional parameter which makes the operation -// fail if the object's ETag matches the given value. This is useful for -// getting updates only after the object has changed since the last -// request. Use googleapi.IsNotModified to check whether the response -// error from Do is the result of In-None-Match. -func (c *EntitlementsListCall) IfNoneMatch(entityTag string) *EntitlementsListCall { - c.ifNoneMatch_ = entityTag - return c -} - -// Context sets the context to be used in this call's Do method. Any -// pending HTTP request will be aborted if the provided context is -// canceled. -func (c *EntitlementsListCall) Context(ctx context.Context) *EntitlementsListCall { - c.ctx_ = ctx - return c -} - -// Header returns an http.Header that can be modified by the caller to -// add HTTP headers to the request. -func (c *EntitlementsListCall) Header() http.Header { - if c.header_ == nil { - c.header_ = make(http.Header) - } - return c.header_ -} - -func (c *EntitlementsListCall) doRequest(alt string) (*http.Response, error) { - reqHeaders := make(http.Header) - for k, v := range c.header_ { - reqHeaders[k] = v - } - reqHeaders.Set("User-Agent", c.s.userAgent()) - if c.ifNoneMatch_ != "" { - reqHeaders.Set("If-None-Match", c.ifNoneMatch_) - } - var body io.Reader = nil - c.urlParams_.Set("alt", alt) - urls := googleapi.ResolveRelative(c.s.BasePath, "{packageName}/entitlements") - urls += "?" + c.urlParams_.Encode() - req, _ := http.NewRequest("GET", urls, body) - req.Header = reqHeaders - googleapi.Expand(req.URL, map[string]string{ - "packageName": c.packageName, - }) - return gensupport.SendRequest(c.ctx_, c.s.client, req) -} - -// Do executes the "androidpublisher.entitlements.list" call. -// Exactly one of *EntitlementsListResponse or error will be non-nil. -// Any non-2xx status code is an error. Response headers are in either -// *EntitlementsListResponse.ServerResponse.Header or (if a response was -// returned at all) in error.(*googleapi.Error).Header. Use -// googleapi.IsNotModified to check whether the returned error was -// because http.StatusNotModified was returned. -func (c *EntitlementsListCall) Do(opts ...googleapi.CallOption) (*EntitlementsListResponse, error) { - gensupport.SetOptions(c.urlParams_, opts...) - res, err := c.doRequest("json") - if res != nil && res.StatusCode == http.StatusNotModified { - if res.Body != nil { - res.Body.Close() - } - return nil, &googleapi.Error{ - Code: res.StatusCode, - Header: res.Header, - } - } - if err != nil { - return nil, err - } - defer googleapi.CloseBody(res) - if err := googleapi.CheckResponse(res); err != nil { - return nil, err - } - ret := &EntitlementsListResponse{ - ServerResponse: googleapi.ServerResponse{ - Header: res.Header, - HTTPStatusCode: res.StatusCode, - }, - } - target := &ret - if err := gensupport.DecodeResponse(target, res); err != nil { - return nil, err - } - return ret, nil - // { - // "description": "Lists the user's current inapp item or subscription entitlements", - // "httpMethod": "GET", - // "id": "androidpublisher.entitlements.list", - // "parameterOrder": [ - // "packageName" - // ], - // "parameters": { - // "maxResults": { - // "format": "uint32", - // "location": "query", - // "type": "integer" - // }, - // "packageName": { - // "description": "The package name of the application the inapp product was sold in (for example, 'com.some.thing').", - // "location": "path", - // "required": true, - // "type": "string" - // }, - // "productId": { - // "description": "The product id of the inapp product (for example, 'sku1'). This can be used to restrict the result set.", - // "location": "query", - // "type": "string" - // }, - // "startIndex": { - // "format": "uint32", - // "location": "query", - // "type": "integer" - // }, - // "token": { - // "location": "query", - // "type": "string" - // } - // }, - // "path": "{packageName}/entitlements", - // "response": { - // "$ref": "EntitlementsListResponse" - // } - // } - -} - // method id "androidpublisher.inappproducts.delete": type InappproductsDeleteCall struct { @@ -10391,7 +10153,7 @@ type PurchasesVoidedpurchasesListCall struct { header_ http.Header } -// List: Lists the purchases that were cancelled, refunded or +// List: Lists the purchases that were canceled, refunded or // charged-back. func (r *PurchasesVoidedpurchasesService) List(packageName string) *PurchasesVoidedpurchasesListCall { c := &PurchasesVoidedpurchasesListCall{s: r.s, urlParams_: make(gensupport.URLParams)} @@ -10537,7 +10299,7 @@ func (c *PurchasesVoidedpurchasesListCall) Do(opts ...googleapi.CallOption) (*Vo } return ret, nil // { - // "description": "Lists the purchases that were cancelled, refunded or charged-back.", + // "description": "Lists the purchases that were canceled, refunded or charged-back.", // "httpMethod": "GET", // "id": "androidpublisher.purchases.voidedpurchases.list", // "parameterOrder": [ diff --git a/vendor/google.golang.org/api/api-list.json b/vendor/google.golang.org/api/api-list.json index ef1242c10..bc496878b 100644 --- a/vendor/google.golang.org/api/api-list.json +++ b/vendor/google.golang.org/api/api-list.json @@ -590,6 +590,21 @@ "documentationLink": "https://developers.google.com/google-apps/calendar/firstapp", "preferred": true }, + { + "kind": "discovery#directoryItem", + "id": "chat:v1", + "name": "chat", + "version": "v1", + "title": "Hangouts Chat API", + "description": "Create bots and extend the new Hangouts Chat.", + "discoveryRestUrl": "https://chat.googleapis.com/$discovery/rest?version=v1", + "icons": { + "x16": "https://www.gstatic.com/images/branding/product/1x/googleg_16dp.png", + "x32": "https://www.gstatic.com/images/branding/product/1x/googleg_32dp.png" + }, + "documentationLink": "https://developers.google.com/hangouts/chat", + "preferred": true + }, { "kind": "discovery#directoryItem", "id": "civicinfo:v2", @@ -626,7 +641,7 @@ "id": "cloudbilling:v1", "name": "cloudbilling", "version": "v1", - "title": "Google Cloud Billing API", + "title": "Cloud Billing API", "description": "Allows developers to manage billing for their Google Cloud Platform projects programmatically.", "discoveryRestUrl": "https://cloudbilling.googleapis.com/$discovery/rest?version=v1", "icons": { @@ -641,7 +656,7 @@ "id": "cloudbuild:v1", "name": "cloudbuild", "version": "v1", - "title": "Google Cloud Container Builder API", + "title": "Cloud Container Builder API", "description": "Builds container images in the cloud.", "discoveryRestUrl": "https://cloudbuild.googleapis.com/$discovery/rest?version=v1", "icons": { @@ -681,6 +696,21 @@ "documentationLink": "https://cloud.google.com/error-reporting/", "preferred": true }, + { + "kind": "discovery#directoryItem", + "id": "cloudfunctions:v2alpha1", + "name": "cloudfunctions", + "version": "v2alpha1", + "title": "Google Cloud Functions API", + "description": "API for managing lightweight user-provided functions executed in response to events.", + "discoveryRestUrl": "https://cloudfunctions.googleapis.com/$discovery/rest?version=v2alpha1", + "icons": { + "x16": "https://www.gstatic.com/images/branding/product/1x/googleg_16dp.png", + "x32": "https://www.gstatic.com/images/branding/product/1x/googleg_32dp.png" + }, + "documentationLink": "https://cloud.google.com/functions", + "preferred": false + }, { "kind": "discovery#directoryItem", "id": "cloudfunctions:v1", @@ -716,7 +746,7 @@ "id": "cloudiot:v1", "name": "cloudiot", "version": "v1", - "title": "Google Cloud IoT API", + "title": "Cloud IoT API", "description": "Registers and manages IoT (Internet of Things) devices that connect to the Google Cloud Platform.", "discoveryRestUrl": "https://cloudiot.googleapis.com/$discovery/rest?version=v1", "icons": { @@ -731,7 +761,7 @@ "id": "cloudiot:v1beta1", "name": "cloudiot", "version": "v1beta1", - "title": "Google Cloud IoT API", + "title": "Cloud IoT API", "description": "Registers and manages IoT (Internet of Things) devices that connect to the Google Cloud Platform.", "discoveryRestUrl": "https://cloudiot.googleapis.com/$discovery/rest?version=v1beta1", "icons": { @@ -761,7 +791,7 @@ "id": "cloudresourcemanager:v1", "name": "cloudresourcemanager", "version": "v1", - "title": "Google Cloud Resource Manager API", + "title": "Cloud Resource Manager API", "description": "The Google Cloud Resource Manager API provides methods for creating, reading, and updating project metadata.", "discoveryRestUrl": "https://cloudresourcemanager.googleapis.com/$discovery/rest?version=v1", "icons": { @@ -769,14 +799,14 @@ "x32": "https://www.gstatic.com/images/branding/product/1x/googleg_32dp.png" }, "documentationLink": "https://cloud.google.com/resource-manager", - "preferred": true + "preferred": false }, { "kind": "discovery#directoryItem", "id": "cloudresourcemanager:v1beta1", "name": "cloudresourcemanager", "version": "v1beta1", - "title": "Google Cloud Resource Manager API", + "title": "Cloud Resource Manager API", "description": "The Google Cloud Resource Manager API provides methods for creating, reading, and updating project metadata.", "discoveryRestUrl": "https://cloudresourcemanager.googleapis.com/$discovery/rest?version=v1beta1", "icons": { @@ -786,12 +816,27 @@ "documentationLink": "https://cloud.google.com/resource-manager", "preferred": false }, + { + "kind": "discovery#directoryItem", + "id": "cloudresourcemanager:v2", + "name": "cloudresourcemanager", + "version": "v2", + "title": "Cloud Resource Manager API", + "description": "The Google Cloud Resource Manager API provides methods for creating, reading, and updating project metadata.", + "discoveryRestUrl": "https://cloudresourcemanager.googleapis.com/$discovery/rest?version=v2", + "icons": { + "x16": "https://www.gstatic.com/images/branding/product/1x/googleg_16dp.png", + "x32": "https://www.gstatic.com/images/branding/product/1x/googleg_32dp.png" + }, + "documentationLink": "https://cloud.google.com/resource-manager", + "preferred": true + }, { "kind": "discovery#directoryItem", "id": "cloudresourcemanager:v2beta1", "name": "cloudresourcemanager", "version": "v2beta1", - "title": "Google Cloud Resource Manager API", + "title": "Cloud Resource Manager API", "description": "The Google Cloud Resource Manager API provides methods for creating, reading, and updating project metadata.", "discoveryRestUrl": "https://cloudresourcemanager.googleapis.com/$discovery/rest?version=v2beta1", "icons": { @@ -876,70 +921,6 @@ "documentationLink": "https://cloud.google.com/trace", "preferred": true }, - { - "kind": "discovery#directoryItem", - "id": "clouduseraccounts:alpha", - "name": "clouduseraccounts", - "version": "alpha", - "title": "Cloud User Accounts API", - "description": "Creates and manages users and groups for accessing Google Compute Engine virtual machines.", - "discoveryRestUrl": "https://www.googleapis.com/discovery/v1/apis/clouduseraccounts/alpha/rest", - "discoveryLink": "./apis/clouduseraccounts/alpha/rest", - "icons": { - "x16": "https://www.google.com/images/icons/product/compute_engine-16.png", - "x32": "https://www.google.com/images/icons/product/compute_engine-32.png" - }, - "documentationLink": "https://cloud.google.com/compute/docs/access/user-accounts/api/latest/", - "preferred": false - }, - { - "kind": "discovery#directoryItem", - "id": "clouduseraccounts:beta", - "name": "clouduseraccounts", - "version": "beta", - "title": "Cloud User Accounts API", - "description": "Creates and manages users and groups for accessing Google Compute Engine virtual machines.", - "discoveryRestUrl": "https://www.googleapis.com/discovery/v1/apis/clouduseraccounts/beta/rest", - "discoveryLink": "./apis/clouduseraccounts/beta/rest", - "icons": { - "x16": "https://www.google.com/images/icons/product/compute_engine-16.png", - "x32": "https://www.google.com/images/icons/product/compute_engine-32.png" - }, - "documentationLink": "https://cloud.google.com/compute/docs/access/user-accounts/api/latest/", - "preferred": false - }, - { - "kind": "discovery#directoryItem", - "id": "clouduseraccounts:vm_alpha", - "name": "clouduseraccounts", - "version": "vm_alpha", - "title": "Cloud User Accounts API", - "description": "Creates and manages users and groups for accessing Google Compute Engine virtual machines.", - "discoveryRestUrl": "https://www.googleapis.com/discovery/v1/apis/clouduseraccounts/vm_alpha/rest", - "discoveryLink": "./apis/clouduseraccounts/vm_alpha/rest", - "icons": { - "x16": "https://www.google.com/images/icons/product/compute_engine-16.png", - "x32": "https://www.google.com/images/icons/product/compute_engine-32.png" - }, - "documentationLink": "https://cloud.google.com/compute/docs/access/user-accounts/api/latest/", - "preferred": true - }, - { - "kind": "discovery#directoryItem", - "id": "clouduseraccounts:vm_beta", - "name": "clouduseraccounts", - "version": "vm_beta", - "title": "Cloud User Accounts API", - "description": "Creates and manages users and groups for accessing Google Compute Engine virtual machines.", - "discoveryRestUrl": "https://www.googleapis.com/discovery/v1/apis/clouduseraccounts/vm_beta/rest", - "discoveryLink": "./apis/clouduseraccounts/vm_beta/rest", - "icons": { - "x16": "https://www.google.com/images/icons/product/compute_engine-16.png", - "x32": "https://www.google.com/images/icons/product/compute_engine-32.png" - }, - "documentationLink": "https://cloud.google.com/compute/docs/access/user-accounts/api/latest/", - "preferred": false - }, { "kind": "discovery#directoryItem", "id": "compute:alpha", @@ -1071,7 +1052,7 @@ "id": "dataflow:v1b3", "name": "dataflow", "version": "v1b3", - "title": "Google Dataflow API", + "title": "Dataflow API", "description": "Manages Google Cloud Dataflow projects on Google Cloud Platform.", "discoveryRestUrl": "https://dataflow.googleapis.com/$discovery/rest?version=v1b3", "icons": { @@ -1236,6 +1217,21 @@ "documentationLink": "https://developers.google.com/doubleclick-advertisers/", "preferred": true }, + { + "kind": "discovery#directoryItem", + "id": "dialogflow:v2", + "name": "dialogflow", + "version": "v2", + "title": "Dialogflow API", + "description": "An end-to-end development suite for conversational interfaces (e.g., chatbots, voice-powered apps and devices).", + "discoveryRestUrl": "https://dialogflow.googleapis.com/$discovery/rest?version=v2", + "icons": { + "x16": "https://www.gstatic.com/images/branding/product/1x/googleg_16dp.png", + "x32": "https://www.gstatic.com/images/branding/product/1x/googleg_32dp.png" + }, + "documentationLink": "https://cloud.google.com/dialogflow-enterprise/", + "preferred": true + }, { "kind": "discovery#directoryItem", "id": "dialogflow:v2beta1", @@ -1249,7 +1245,7 @@ "x32": "https://www.gstatic.com/images/branding/product/1x/googleg_32dp.png" }, "documentationLink": "https://cloud.google.com/dialogflow-enterprise/", - "preferred": true + "preferred": false }, { "kind": "discovery#directoryItem", @@ -1282,13 +1278,28 @@ "documentationLink": "https://developers.google.com/discovery/", "preferred": true }, + { + "kind": "discovery#directoryItem", + "id": "dlp:v2", + "name": "dlp", + "version": "v2", + "title": "Cloud Data Loss Prevention (DLP) API", + "description": "Provides methods for detection, risk analysis, and de-identification of privacy-sensitive fragments in text, images, and Google Cloud Platform storage repositories.", + "discoveryRestUrl": "https://dlp.googleapis.com/$discovery/rest?version=v2", + "icons": { + "x16": "https://www.gstatic.com/images/branding/product/1x/googleg_16dp.png", + "x32": "https://www.gstatic.com/images/branding/product/1x/googleg_32dp.png" + }, + "documentationLink": "https://cloud.google.com/dlp/docs/", + "preferred": true + }, { "kind": "discovery#directoryItem", "id": "dlp:v2beta1", "name": "dlp", "version": "v2beta1", - "title": "DLP API", - "description": "The Google Data Loss Prevention API provides methods for detection of privacy-sensitive fragments in text, images, and Google Cloud Platform storage repositories.", + "title": "Cloud Data Loss Prevention (DLP) API", + "description": "Provides methods for detection, risk analysis, and de-identification of privacy-sensitive fragments in text, images, and Google Cloud Platform storage repositories.", "discoveryRestUrl": "https://dlp.googleapis.com/$discovery/rest?version=v2beta1", "icons": { "x16": "https://www.gstatic.com/images/branding/product/1x/googleg_16dp.png", @@ -1302,15 +1313,15 @@ "id": "dlp:v2beta2", "name": "dlp", "version": "v2beta2", - "title": "DLP API", - "description": "The Google Data Loss Prevention API provides methods for detection of privacy-sensitive fragments in text, images, and Google Cloud Platform storage repositories.", + "title": "Cloud Data Loss Prevention (DLP) API", + "description": "Provides methods for detection, risk analysis, and de-identification of privacy-sensitive fragments in text, images, and Google Cloud Platform storage repositories.", "discoveryRestUrl": "https://dlp.googleapis.com/$discovery/rest?version=v2beta2", "icons": { "x16": "https://www.gstatic.com/images/branding/product/1x/googleg_16dp.png", "x32": "https://www.gstatic.com/images/branding/product/1x/googleg_32dp.png" }, "documentationLink": "https://cloud.google.com/dlp/docs/", - "preferred": true + "preferred": false }, { "kind": "discovery#directoryItem", @@ -1442,21 +1453,6 @@ "documentationLink": "https://firebase.google.com/docs/dynamic-links/", "preferred": true }, - { - "kind": "discovery#directoryItem", - "id": "firebaseremoteconfig:v1", - "name": "firebaseremoteconfig", - "version": "v1", - "title": "Firebase Remote Config API", - "description": "Firebase Remote Config API allows the 3P clients to manage Remote Config conditions and parameters for Firebase applications.", - "discoveryRestUrl": "https://firebaseremoteconfig.googleapis.com/$discovery/rest?version=v1", - "icons": { - "x16": "https://www.gstatic.com/images/branding/product/1x/googleg_16dp.png", - "x32": "https://www.gstatic.com/images/branding/product/1x/googleg_32dp.png" - }, - "documentationLink": "https://firebase.google.com/docs/remote-config/", - "preferred": true - }, { "kind": "discovery#directoryItem", "id": "firebaserules:v1", @@ -1598,6 +1594,21 @@ "documentationLink": "https://cloud.google.com/genomics", "preferred": false }, + { + "kind": "discovery#directoryItem", + "id": "genomics:v2alpha1", + "name": "genomics", + "version": "v2alpha1", + "title": "Genomics API", + "description": "Upload, process, query, and search Genomics data in the cloud.", + "discoveryRestUrl": "https://genomics.googleapis.com/$discovery/rest?version=v2alpha1", + "icons": { + "x16": "https://www.gstatic.com/images/branding/product/1x/googleg_16dp.png", + "x32": "https://www.gstatic.com/images/branding/product/1x/googleg_32dp.png" + }, + "documentationLink": "https://cloud.google.com/genomics", + "preferred": false + }, { "kind": "discovery#directoryItem", "id": "genomics:v1", @@ -1712,7 +1723,7 @@ "id": "language:v1", "name": "language", "version": "v1", - "title": "Google Cloud Natural Language API", + "title": "Cloud Natural Language API", "description": "Provides natural language understanding technologies to developers. Examples include sentiment analysis, entity recognition, entity sentiment analysis, and text annotations.", "discoveryRestUrl": "https://language.googleapis.com/$discovery/rest?version=v1", "icons": { @@ -1727,7 +1738,7 @@ "id": "language:v1beta1", "name": "language", "version": "v1beta1", - "title": "Google Cloud Natural Language API", + "title": "Cloud Natural Language API", "description": "Provides natural language understanding technologies to developers. Examples include sentiment analysis, entity recognition, entity sentiment analysis, and text annotations.", "discoveryRestUrl": "https://language.googleapis.com/$discovery/rest?version=v1beta1", "icons": { @@ -1742,7 +1753,7 @@ "id": "language:v1beta2", "name": "language", "version": "v1beta2", - "title": "Google Cloud Natural Language API", + "title": "Cloud Natural Language API", "description": "Provides natural language understanding technologies to developers. Examples include sentiment analysis, entity recognition, entity sentiment analysis, and text annotations.", "discoveryRestUrl": "https://language.googleapis.com/$discovery/rest?version=v1beta2", "icons": { @@ -1969,6 +1980,22 @@ "x32": "https://www.google.com/images/icons/product/pagespeed-32.png" }, "documentationLink": "https://developers.google.com/speed/docs/insights/v2/getting-started", + "preferred": false + }, + { + "kind": "discovery#directoryItem", + "id": "pagespeedonline:v4", + "name": "pagespeedonline", + "version": "v4", + "title": "PageSpeed Insights API", + "description": "Analyzes the performance of a web page and provides tailored suggestions to make that page faster.", + "discoveryRestUrl": "https://www.googleapis.com/discovery/v1/apis/pagespeedonline/v4/rest", + "discoveryLink": "./apis/pagespeedonline/v4/rest", + "icons": { + "x16": "https://www.google.com/images/icons/product/pagespeed-16.png", + "x32": "https://www.google.com/images/icons/product/pagespeed-32.png" + }, + "documentationLink": "https://developers.google.com/speed/docs/insights/v4/getting-started", "preferred": true }, { @@ -1991,7 +2018,7 @@ "id": "people:v1", "name": "people", "version": "v1", - "title": "Google People API", + "title": "People API", "description": "Provides access to information about profiles and contacts.", "discoveryRestUrl": "https://people.googleapis.com/$discovery/rest?version=v1", "icons": { @@ -2368,7 +2395,7 @@ "id": "script:v1", "name": "script", "version": "v1", - "title": "Google Apps Script API", + "title": "Apps Script API", "description": "An API for managing and executing Google Apps Script projects.", "discoveryRestUrl": "https://script.googleapis.com/$discovery/rest?version=v1", "icons": { @@ -2438,6 +2465,21 @@ "documentationLink": "https://cloud.google.com/service-management/", "preferred": true }, + { + "kind": "discovery#directoryItem", + "id": "serviceusage:v1beta1", + "name": "serviceusage", + "version": "v1beta1", + "title": "Service Usage API", + "description": "Enables services that service consumers want to use on Google Cloud Platform, lists the available or enabled services, or disables services that service consumers no longer use.", + "discoveryRestUrl": "https://serviceusage.googleapis.com/$discovery/rest?version=v1beta1", + "icons": { + "x16": "https://www.gstatic.com/images/branding/product/1x/googleg_16dp.png", + "x32": "https://www.gstatic.com/images/branding/product/1x/googleg_32dp.png" + }, + "documentationLink": "https://cloud.google.com/service-usage/", + "preferred": true + }, { "kind": "discovery#directoryItem", "id": "serviceuser:v1", @@ -2550,7 +2592,7 @@ "id": "speech:v1", "name": "speech", "version": "v1", - "title": "Google Cloud Speech API", + "title": "Cloud Speech API", "description": "Converts audio to text by applying powerful neural network models.", "discoveryRestUrl": "https://speech.googleapis.com/$discovery/rest?version=v1", "icons": { @@ -2565,7 +2607,7 @@ "id": "speech:v1beta1", "name": "speech", "version": "v1beta1", - "title": "Google Cloud Speech API", + "title": "Cloud Speech API", "description": "Converts audio to text by applying powerful neural network models.", "discoveryRestUrl": "https://speech.googleapis.com/$discovery/rest?version=v1beta1", "icons": { @@ -2804,6 +2846,21 @@ "documentationLink": "https://developers.google.com/cloud-test-lab/", "preferred": true }, + { + "kind": "discovery#directoryItem", + "id": "texttospeech:v1beta1", + "name": "texttospeech", + "version": "v1beta1", + "title": "Cloud Text-to-Speech API", + "description": "Cloud Text-to-Speech API.", + "discoveryRestUrl": "https://texttospeech.googleapis.com/$discovery/rest?version=v1beta1", + "icons": { + "x16": "https://www.gstatic.com/images/branding/product/1x/googleg_16dp.png", + "x32": "https://www.gstatic.com/images/branding/product/1x/googleg_32dp.png" + }, + "documentationLink": "http://cloud.google.com/speech/text-to-speech/", + "preferred": true + }, { "kind": "discovery#directoryItem", "id": "toolresults:v1beta3", @@ -2901,7 +2958,7 @@ "id": "vision:v1p1beta1", "name": "vision", "version": "v1p1beta1", - "title": "Google Cloud Vision API", + "title": "Cloud Vision API", "description": "Integrates Google Vision features, including image labeling, face, logo, and landmark detection, optical character recognition (OCR), and detection of explicit content, into applications.", "discoveryRestUrl": "https://vision.googleapis.com/$discovery/rest?version=v1p1beta1", "icons": { @@ -2911,12 +2968,27 @@ "documentationLink": "https://cloud.google.com/vision/", "preferred": false }, + { + "kind": "discovery#directoryItem", + "id": "vision:v1p2beta1", + "name": "vision", + "version": "v1p2beta1", + "title": "Cloud Vision API", + "description": "Integrates Google Vision features, including image labeling, face, logo, and landmark detection, optical character recognition (OCR), and detection of explicit content, into applications.", + "discoveryRestUrl": "https://vision.googleapis.com/$discovery/rest?version=v1p2beta1", + "icons": { + "x16": "https://www.gstatic.com/images/branding/product/1x/googleg_16dp.png", + "x32": "https://www.gstatic.com/images/branding/product/1x/googleg_32dp.png" + }, + "documentationLink": "https://cloud.google.com/vision/", + "preferred": false + }, { "kind": "discovery#directoryItem", "id": "vision:v1", "name": "vision", "version": "v1", - "title": "Google Cloud Vision API", + "title": "Cloud Vision API", "description": "Integrates Google Vision features, including image labeling, face, logo, and landmark detection, optical character recognition (OCR), and detection of explicit content, into applications.", "discoveryRestUrl": "https://vision.googleapis.com/$discovery/rest?version=v1", "icons": { diff --git a/vendor/google.golang.org/api/appengine/v1/appengine-api.json b/vendor/google.golang.org/api/appengine/v1/appengine-api.json index 54049f410..8edec6885 100644 --- a/vendor/google.golang.org/api/appengine/v1/appengine-api.json +++ b/vendor/google.golang.org/api/appengine/v1/appengine-api.json @@ -1,1186 +1,1669 @@ { - "schemas": { - "OperationMetadataV1Beta": { - "description": "Metadata for the given google.longrunning.Operation.", - "type": "object", - "properties": { - "endTime": { - "description": "Time that this operation completed.@OutputOnly", - "format": "google-datetime", - "type": "string" + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/appengine.admin": { + "description": "View and manage your applications deployed on Google App Engine" }, - "createVersionMetadata": { - "$ref": "CreateVersionMetadataV1Beta" + "https://www.googleapis.com/auth/cloud-platform": { + "description": "View and manage your data across Google Cloud Platform services" }, - "warning": { - "description": "Durable messages that persist on every operation poll. @OutputOnly", - "type": "array", - "items": { - "type": "string" + "https://www.googleapis.com/auth/cloud-platform.read-only": { + "description": "View your data across Google Cloud Platform services" + } + } + } + }, + "basePath": "", + "baseUrl": "https://appengine.googleapis.com/", + "batchPath": "batch", + "description": "The App Engine Admin API enables developers to provision and manage their App Engine applications.", + "discoveryVersion": "v1", + "documentationLink": "https://cloud.google.com/appengine/docs/admin-api/", + "icons": { + "x16": "http://www.google.com/images/icons/product/search-16.gif", + "x32": "http://www.google.com/images/icons/product/search-32.gif" + }, + "id": "appengine:v1", + "kind": "discovery#restDescription", + "name": "appengine", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "$.xgafv": { + "description": "V1 error format.", + "enum": [ + "1", + "2" + ], + "enumDescriptions": [ + "v1 error format", + "v2 error format" + ], + "location": "query", + "type": "string" + }, + "access_token": { + "description": "OAuth access token.", + "location": "query", + "type": "string" + }, + "alt": { + "default": "json", + "description": "Data format for response.", + "enum": [ + "json", + "media", + "proto" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json", + "Media download with context-dependent Content-Type", + "Responses with Content-Type of application/x-protobuf" + ], + "location": "query", + "type": "string" + }, + "bearer_token": { + "description": "OAuth bearer token.", + "location": "query", + "type": "string" + }, + "callback": { + "description": "JSONP", + "location": "query", + "type": "string" + }, + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "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.", + "location": "query", + "type": "string" + }, + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "pp": { + "default": "true", + "description": "Pretty-print response.", + "location": "query", + "type": "boolean" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", + "location": "query", + "type": "string" + }, + "uploadType": { + "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", + "location": "query", + "type": "string" + }, + "upload_protocol": { + "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", + "location": "query", + "type": "string" + } + }, + "protocol": "rest", + "resources": { + "apps": { + "methods": { + "create": { + "description": "Creates an App Engine application for a Google Cloud Platform project. Required fields:\nid - The ID of the target Cloud Platform project.\nlocation - The region (https://cloud.google.com/appengine/docs/locations) where you want the App Engine application located.For more information about App Engine applications, see Managing Projects, Applications, and Billing (https://cloud.google.com/appengine/docs/standard/python/console/).", + "flatPath": "v1/apps", + "httpMethod": "POST", + "id": "appengine.apps.create", + "parameterOrder": [], + "parameters": {}, + "path": "v1/apps", + "request": { + "$ref": "Application" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Gets information about an application.", + "flatPath": "v1/apps/{appsId}", + "httpMethod": "GET", + "id": "appengine.apps.get", + "parameterOrder": [ + "appsId" + ], + "parameters": { + "appsId": { + "description": "Part of `name`. Name of the Application resource to get. Example: apps/myapp.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/apps/{appsId}", + "response": { + "$ref": "Application" + }, + "scopes": [ + "https://www.googleapis.com/auth/appengine.admin", + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + }, + "patch": { + "description": "Updates the specified Application resource. You can update the following fields:\nauth_domain - Google authentication domain for controlling user access to the application.\ndefault_cookie_expiration - Cookie expiration policy for the application.", + "flatPath": "v1/apps/{appsId}", + "httpMethod": "PATCH", + "id": "appengine.apps.patch", + "parameterOrder": [ + "appsId" + ], + "parameters": { + "appsId": { + "description": "Part of `name`. Name of the Application resource to update. Example: apps/myapp.", + "location": "path", + "required": true, + "type": "string" + }, + "updateMask": { + "description": "Standard field mask for the set of fields to be updated.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + } + }, + "path": "v1/apps/{appsId}", + "request": { + "$ref": "Application" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "repair": { + "description": "Recreates the required App Engine features for the specified App Engine application, for example a Cloud Storage bucket or App Engine service account. Use this method if you receive an error message about a missing feature, for example, Error retrieving the App Engine service account.", + "flatPath": "v1/apps/{appsId}:repair", + "httpMethod": "POST", + "id": "appengine.apps.repair", + "parameterOrder": [ + "appsId" + ], + "parameters": { + "appsId": { + "description": "Part of `name`. Name of the application to repair. Example: apps/myapp", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/apps/{appsId}:repair", + "request": { + "$ref": "RepairApplicationRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + }, + "resources": { + "authorizedCertificates": { + "methods": { + "create": { + "description": "Uploads the specified SSL certificate.", + "flatPath": "v1/apps/{appsId}/authorizedCertificates", + "httpMethod": "POST", + "id": "appengine.apps.authorizedCertificates.create", + "parameterOrder": [ + "appsId" + ], + "parameters": { + "appsId": { + "description": "Part of `parent`. Name of the parent Application resource. Example: apps/myapp.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/apps/{appsId}/authorizedCertificates", + "request": { + "$ref": "AuthorizedCertificate" + }, + "response": { + "$ref": "AuthorizedCertificate" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Deletes the specified SSL certificate.", + "flatPath": "v1/apps/{appsId}/authorizedCertificates/{authorizedCertificatesId}", + "httpMethod": "DELETE", + "id": "appengine.apps.authorizedCertificates.delete", + "parameterOrder": [ + "appsId", + "authorizedCertificatesId" + ], + "parameters": { + "appsId": { + "description": "Part of `name`. Name of the resource to delete. Example: apps/myapp/authorizedCertificates/12345.", + "location": "path", + "required": true, + "type": "string" + }, + "authorizedCertificatesId": { + "description": "Part of `name`. See documentation of `appsId`.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/apps/{appsId}/authorizedCertificates/{authorizedCertificatesId}", + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Gets the specified SSL certificate.", + "flatPath": "v1/apps/{appsId}/authorizedCertificates/{authorizedCertificatesId}", + "httpMethod": "GET", + "id": "appengine.apps.authorizedCertificates.get", + "parameterOrder": [ + "appsId", + "authorizedCertificatesId" + ], + "parameters": { + "appsId": { + "description": "Part of `name`. Name of the resource requested. Example: apps/myapp/authorizedCertificates/12345.", + "location": "path", + "required": true, + "type": "string" + }, + "authorizedCertificatesId": { + "description": "Part of `name`. See documentation of `appsId`.", + "location": "path", + "required": true, + "type": "string" + }, + "view": { + "description": "Controls the set of fields returned in the GET response.", + "enum": [ + "BASIC_CERTIFICATE", + "FULL_CERTIFICATE" + ], + "location": "query", + "type": "string" + } + }, + "path": "v1/apps/{appsId}/authorizedCertificates/{authorizedCertificatesId}", + "response": { + "$ref": "AuthorizedCertificate" + }, + "scopes": [ + "https://www.googleapis.com/auth/appengine.admin", + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + }, + "list": { + "description": "Lists all SSL certificates the user is authorized to administer.", + "flatPath": "v1/apps/{appsId}/authorizedCertificates", + "httpMethod": "GET", + "id": "appengine.apps.authorizedCertificates.list", + "parameterOrder": [ + "appsId" + ], + "parameters": { + "appsId": { + "description": "Part of `parent`. Name of the parent Application resource. Example: apps/myapp.", + "location": "path", + "required": true, + "type": "string" + }, + "pageSize": { + "description": "Maximum results to return per page.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Continuation token for fetching the next page of results.", + "location": "query", + "type": "string" + }, + "view": { + "description": "Controls the set of fields returned in the LIST response.", + "enum": [ + "BASIC_CERTIFICATE", + "FULL_CERTIFICATE" + ], + "location": "query", + "type": "string" + } + }, + "path": "v1/apps/{appsId}/authorizedCertificates", + "response": { + "$ref": "ListAuthorizedCertificatesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/appengine.admin", + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + }, + "patch": { + "description": "Updates the specified SSL certificate. To renew a certificate and maintain its existing domain mappings, update certificate_data with a new certificate. The new certificate must be applicable to the same domains as the original certificate. The certificate display_name may also be updated.", + "flatPath": "v1/apps/{appsId}/authorizedCertificates/{authorizedCertificatesId}", + "httpMethod": "PATCH", + "id": "appengine.apps.authorizedCertificates.patch", + "parameterOrder": [ + "appsId", + "authorizedCertificatesId" + ], + "parameters": { + "appsId": { + "description": "Part of `name`. Name of the resource to update. Example: apps/myapp/authorizedCertificates/12345.", + "location": "path", + "required": true, + "type": "string" + }, + "authorizedCertificatesId": { + "description": "Part of `name`. See documentation of `appsId`.", + "location": "path", + "required": true, + "type": "string" + }, + "updateMask": { + "description": "Standard field mask for the set of fields to be updated. Updates are only supported on the certificate_raw_data and display_name fields.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + } + }, + "path": "v1/apps/{appsId}/authorizedCertificates/{authorizedCertificatesId}", + "request": { + "$ref": "AuthorizedCertificate" + }, + "response": { + "$ref": "AuthorizedCertificate" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } } }, - "insertTime": { - "description": "Time that this operation was created.@OutputOnly", - "format": "google-datetime", - "type": "string" - }, - "user": { - "description": "User who requested this operation.@OutputOnly", - "type": "string" - }, - "target": { - "description": "Name of the resource that this operation is acting on. Example: apps/myapp/services/default.@OutputOnly", - "type": "string" - }, - "ephemeralMessage": { - "description": "Ephemeral message that may change every time the operation is polled. @OutputOnly", - "type": "string" - }, - "method": { - "description": "API method that initiated this operation. Example: google.appengine.v1beta.Versions.CreateVersion.@OutputOnly", - "type": "string" - } - }, - "id": "OperationMetadataV1Beta" - }, - "ListIngressRulesResponse": { - "description": "Response message for Firewall.ListIngressRules.", - "type": "object", - "properties": { - "ingressRules": { - "description": "The ingress FirewallRules for this application.", - "type": "array", - "items": { - "$ref": "FirewallRule" + "authorizedDomains": { + "methods": { + "list": { + "description": "Lists all domains the user is authorized to administer.", + "flatPath": "v1/apps/{appsId}/authorizedDomains", + "httpMethod": "GET", + "id": "appengine.apps.authorizedDomains.list", + "parameterOrder": [ + "appsId" + ], + "parameters": { + "appsId": { + "description": "Part of `parent`. Name of the parent Application resource. Example: apps/myapp.", + "location": "path", + "required": true, + "type": "string" + }, + "pageSize": { + "description": "Maximum results to return per page.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Continuation token for fetching the next page of results.", + "location": "query", + "type": "string" + } + }, + "path": "v1/apps/{appsId}/authorizedDomains", + "response": { + "$ref": "ListAuthorizedDomainsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/appengine.admin", + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + } } }, - "nextPageToken": { - "description": "Continuation token for fetching the next page of results.", - "type": "string" - } - }, - "id": "ListIngressRulesResponse" - }, - "ListServicesResponse": { - "description": "Response message for Services.ListServices.", - "type": "object", - "properties": { - "services": { - "description": "The services belonging to the requested application.", - "type": "array", - "items": { - "$ref": "Service" - } - }, - "nextPageToken": { - "description": "Continuation token for fetching the next page of results.", - "type": "string" - } - }, - "id": "ListServicesResponse" - }, - "Resources": { - "description": "Machine resources for a version.", - "type": "object", - "properties": { - "volumes": { - "description": "User specified volumes.", - "type": "array", - "items": { - "$ref": "Volume" - } - }, - "diskGb": { - "description": "Disk size (GB) needed.", - "format": "double", - "type": "number" - }, - "cpu": { - "description": "Number of CPU cores needed.", - "format": "double", - "type": "number" - }, - "memoryGb": { - "description": "Memory (GB) needed.", - "format": "double", - "type": "number" - } - }, - "id": "Resources" - }, - "Deployment": { - "description": "Code and application artifacts used to deploy a version to App Engine.", - "type": "object", - "properties": { - "zip": { - "$ref": "ZipInfo", - "description": "The zip file for this deployment, if this is a zip deployment." - }, - "container": { - "description": "The Docker image for the container that runs the version. Only applicable for instances running in the App Engine flexible environment.", - "$ref": "ContainerInfo" - }, - "files": { - "description": "Manifest of the files stored in Google Cloud Storage that are included as part of this version. All files must be readable using the credentials supplied with this call.", - "type": "object", - "additionalProperties": { - "$ref": "FileInfo" - } - } - }, - "id": "Deployment" - }, - "Volume": { - "description": "Volumes mounted within the app container. Only applicable in the App Engine flexible environment.", - "type": "object", - "properties": { - "sizeGb": { - "description": "Volume size in gigabytes.", - "format": "double", - "type": "number" - }, - "name": { - "description": "Unique name for the volume.", - "type": "string" - }, - "volumeType": { - "description": "Underlying volume type, e.g. 'tmpfs'.", - "type": "string" - } - }, - "id": "Volume" - }, - "BatchUpdateIngressRulesResponse": { - "description": "Response message for Firewall.UpdateAllIngressRules.", - "type": "object", - "properties": { - "ingressRules": { - "description": "The full list of ingress FirewallRules for this application.", - "type": "array", - "items": { - "$ref": "FirewallRule" - } - } - }, - "id": "BatchUpdateIngressRulesResponse" - }, - "ListInstancesResponse": { - "description": "Response message for Instances.ListInstances.", - "type": "object", - "properties": { - "instances": { - "description": "The instances belonging to the requested version.", - "type": "array", - "items": { - "$ref": "Instance" - } - }, - "nextPageToken": { - "description": "Continuation token for fetching the next page of results.", - "type": "string" - } - }, - "id": "ListInstancesResponse" - }, - "ListDomainMappingsResponse": { - "description": "Response message for DomainMappings.ListDomainMappings.", - "type": "object", - "properties": { - "nextPageToken": { - "description": "Continuation token for fetching the next page of results.", - "type": "string" - }, "domainMappings": { - "description": "The domain mappings for the application.", - "type": "array", - "items": { - "$ref": "DomainMapping" - } - } - }, - "id": "ListDomainMappingsResponse" - }, - "OperationMetadataV1Alpha": { - "description": "Metadata for the given google.longrunning.Operation.", - "type": "object", - "properties": { - "warning": { - "description": "Durable messages that persist on every operation poll. @OutputOnly", - "type": "array", - "items": { - "type": "string" + "methods": { + "create": { + "description": "Maps a domain to an application. A user must be authorized to administer a domain in order to map it to an application. For a list of available authorized domains, see AuthorizedDomains.ListAuthorizedDomains.", + "flatPath": "v1/apps/{appsId}/domainMappings", + "httpMethod": "POST", + "id": "appengine.apps.domainMappings.create", + "parameterOrder": [ + "appsId" + ], + "parameters": { + "appsId": { + "description": "Part of `parent`. Name of the parent Application resource. Example: apps/myapp.", + "location": "path", + "required": true, + "type": "string" + }, + "overrideStrategy": { + "description": "Whether the domain creation should override any existing mappings for this domain. By default, overrides are rejected.", + "enum": [ + "UNSPECIFIED_DOMAIN_OVERRIDE_STRATEGY", + "STRICT", + "OVERRIDE" + ], + "location": "query", + "type": "string" + } + }, + "path": "v1/apps/{appsId}/domainMappings", + "request": { + "$ref": "DomainMapping" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Deletes the specified domain mapping. A user must be authorized to administer the associated domain in order to delete a DomainMapping resource.", + "flatPath": "v1/apps/{appsId}/domainMappings/{domainMappingsId}", + "httpMethod": "DELETE", + "id": "appengine.apps.domainMappings.delete", + "parameterOrder": [ + "appsId", + "domainMappingsId" + ], + "parameters": { + "appsId": { + "description": "Part of `name`. Name of the resource to delete. Example: apps/myapp/domainMappings/example.com.", + "location": "path", + "required": true, + "type": "string" + }, + "domainMappingsId": { + "description": "Part of `name`. See documentation of `appsId`.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/apps/{appsId}/domainMappings/{domainMappingsId}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Gets the specified domain mapping.", + "flatPath": "v1/apps/{appsId}/domainMappings/{domainMappingsId}", + "httpMethod": "GET", + "id": "appengine.apps.domainMappings.get", + "parameterOrder": [ + "appsId", + "domainMappingsId" + ], + "parameters": { + "appsId": { + "description": "Part of `name`. Name of the resource requested. Example: apps/myapp/domainMappings/example.com.", + "location": "path", + "required": true, + "type": "string" + }, + "domainMappingsId": { + "description": "Part of `name`. See documentation of `appsId`.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/apps/{appsId}/domainMappings/{domainMappingsId}", + "response": { + "$ref": "DomainMapping" + }, + "scopes": [ + "https://www.googleapis.com/auth/appengine.admin", + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + }, + "list": { + "description": "Lists the domain mappings on an application.", + "flatPath": "v1/apps/{appsId}/domainMappings", + "httpMethod": "GET", + "id": "appengine.apps.domainMappings.list", + "parameterOrder": [ + "appsId" + ], + "parameters": { + "appsId": { + "description": "Part of `parent`. Name of the parent Application resource. Example: apps/myapp.", + "location": "path", + "required": true, + "type": "string" + }, + "pageSize": { + "description": "Maximum results to return per page.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Continuation token for fetching the next page of results.", + "location": "query", + "type": "string" + } + }, + "path": "v1/apps/{appsId}/domainMappings", + "response": { + "$ref": "ListDomainMappingsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/appengine.admin", + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + }, + "patch": { + "description": "Updates the specified domain mapping. To map an SSL certificate to a domain mapping, update certificate_id to point to an AuthorizedCertificate resource. A user must be authorized to administer the associated domain in order to update a DomainMapping resource.", + "flatPath": "v1/apps/{appsId}/domainMappings/{domainMappingsId}", + "httpMethod": "PATCH", + "id": "appengine.apps.domainMappings.patch", + "parameterOrder": [ + "appsId", + "domainMappingsId" + ], + "parameters": { + "appsId": { + "description": "Part of `name`. Name of the resource to update. Example: apps/myapp/domainMappings/example.com.", + "location": "path", + "required": true, + "type": "string" + }, + "domainMappingsId": { + "description": "Part of `name`. See documentation of `appsId`.", + "location": "path", + "required": true, + "type": "string" + }, + "updateMask": { + "description": "Standard field mask for the set of fields to be updated.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + } + }, + "path": "v1/apps/{appsId}/domainMappings/{domainMappingsId}", + "request": { + "$ref": "DomainMapping" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } } }, - "insertTime": { - "description": "Time that this operation was created.@OutputOnly", - "format": "google-datetime", - "type": "string" - }, - "user": { - "description": "User who requested this operation.@OutputOnly", - "type": "string" - }, - "target": { - "description": "Name of the resource that this operation is acting on. Example: apps/myapp/services/default.@OutputOnly", - "type": "string" - }, - "ephemeralMessage": { - "description": "Ephemeral message that may change every time the operation is polled. @OutputOnly", - "type": "string" - }, - "method": { - "description": "API method that initiated this operation. Example: google.appengine.v1alpha.Versions.CreateVersion.@OutputOnly", - "type": "string" - }, - "endTime": { - "description": "Time that this operation completed.@OutputOnly", - "format": "google-datetime", - "type": "string" - }, - "createVersionMetadata": { - "$ref": "CreateVersionMetadataV1Alpha" - } - }, - "id": "OperationMetadataV1Alpha" - }, - "UrlDispatchRule": { - "description": "Rules to match an HTTP request and dispatch that request to a service.", - "type": "object", - "properties": { - "domain": { - "description": "Domain name to match against. The wildcard \"*\" is supported if specified before a period: \"*.\".Defaults to matching all domains: \"*\".", - "type": "string" - }, - "service": { - "description": "Resource ID of a service in this application that should serve the matched request. The service must already exist. Example: default.", - "type": "string" - }, - "path": { - "description": "Pathname within the host. Must start with a \"/\". A single \"*\" can be included at the end of the path.The sum of the lengths of the domain and path may not exceed 100 characters.", - "type": "string" - } - }, - "id": "UrlDispatchRule" - }, - "ListVersionsResponse": { - "description": "Response message for Versions.ListVersions.", - "type": "object", - "properties": { - "versions": { - "description": "The versions belonging to the requested service.", - "type": "array", - "items": { - "$ref": "Version" + "firewall": { + "resources": { + "ingressRules": { + "methods": { + "batchUpdate": { + "description": "Replaces the entire firewall ruleset in one bulk operation. This overrides and replaces the rules of an existing firewall with the new rules.If the final rule does not match traffic with the '*' wildcard IP range, then an \"allow all\" rule is explicitly added to the end of the list.", + "flatPath": "v1/apps/{appsId}/firewall/ingressRules:batchUpdate", + "httpMethod": "POST", + "id": "appengine.apps.firewall.ingressRules.batchUpdate", + "parameterOrder": [ + "appsId" + ], + "parameters": { + "appsId": { + "description": "Part of `name`. Name of the Firewall collection to set. Example: apps/myapp/firewall/ingressRules.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/apps/{appsId}/firewall/ingressRules:batchUpdate", + "request": { + "$ref": "BatchUpdateIngressRulesRequest" + }, + "response": { + "$ref": "BatchUpdateIngressRulesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "create": { + "description": "Creates a firewall rule for the application.", + "flatPath": "v1/apps/{appsId}/firewall/ingressRules", + "httpMethod": "POST", + "id": "appengine.apps.firewall.ingressRules.create", + "parameterOrder": [ + "appsId" + ], + "parameters": { + "appsId": { + "description": "Part of `parent`. Name of the parent Firewall collection in which to create a new rule. Example: apps/myapp/firewall/ingressRules.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/apps/{appsId}/firewall/ingressRules", + "request": { + "$ref": "FirewallRule" + }, + "response": { + "$ref": "FirewallRule" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Deletes the specified firewall rule.", + "flatPath": "v1/apps/{appsId}/firewall/ingressRules/{ingressRulesId}", + "httpMethod": "DELETE", + "id": "appengine.apps.firewall.ingressRules.delete", + "parameterOrder": [ + "appsId", + "ingressRulesId" + ], + "parameters": { + "appsId": { + "description": "Part of `name`. Name of the Firewall resource to delete. Example: apps/myapp/firewall/ingressRules/100.", + "location": "path", + "required": true, + "type": "string" + }, + "ingressRulesId": { + "description": "Part of `name`. See documentation of `appsId`.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/apps/{appsId}/firewall/ingressRules/{ingressRulesId}", + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Gets the specified firewall rule.", + "flatPath": "v1/apps/{appsId}/firewall/ingressRules/{ingressRulesId}", + "httpMethod": "GET", + "id": "appengine.apps.firewall.ingressRules.get", + "parameterOrder": [ + "appsId", + "ingressRulesId" + ], + "parameters": { + "appsId": { + "description": "Part of `name`. Name of the Firewall resource to retrieve. Example: apps/myapp/firewall/ingressRules/100.", + "location": "path", + "required": true, + "type": "string" + }, + "ingressRulesId": { + "description": "Part of `name`. See documentation of `appsId`.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/apps/{appsId}/firewall/ingressRules/{ingressRulesId}", + "response": { + "$ref": "FirewallRule" + }, + "scopes": [ + "https://www.googleapis.com/auth/appengine.admin", + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + }, + "list": { + "description": "Lists the firewall rules of an application.", + "flatPath": "v1/apps/{appsId}/firewall/ingressRules", + "httpMethod": "GET", + "id": "appengine.apps.firewall.ingressRules.list", + "parameterOrder": [ + "appsId" + ], + "parameters": { + "appsId": { + "description": "Part of `parent`. Name of the Firewall collection to retrieve. Example: apps/myapp/firewall/ingressRules.", + "location": "path", + "required": true, + "type": "string" + }, + "matchingAddress": { + "description": "A valid IP Address. If set, only rules matching this address will be returned. The first returned rule will be the rule that fires on requests from this IP.", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "Maximum results to return per page.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Continuation token for fetching the next page of results.", + "location": "query", + "type": "string" + } + }, + "path": "v1/apps/{appsId}/firewall/ingressRules", + "response": { + "$ref": "ListIngressRulesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/appengine.admin", + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + }, + "patch": { + "description": "Updates the specified firewall rule.", + "flatPath": "v1/apps/{appsId}/firewall/ingressRules/{ingressRulesId}", + "httpMethod": "PATCH", + "id": "appengine.apps.firewall.ingressRules.patch", + "parameterOrder": [ + "appsId", + "ingressRulesId" + ], + "parameters": { + "appsId": { + "description": "Part of `name`. Name of the Firewall resource to update. Example: apps/myapp/firewall/ingressRules/100.", + "location": "path", + "required": true, + "type": "string" + }, + "ingressRulesId": { + "description": "Part of `name`. See documentation of `appsId`.", + "location": "path", + "required": true, + "type": "string" + }, + "updateMask": { + "description": "Standard field mask for the set of fields to be updated.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + } + }, + "path": "v1/apps/{appsId}/firewall/ingressRules/{ingressRulesId}", + "request": { + "$ref": "FirewallRule" + }, + "response": { + "$ref": "FirewallRule" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + } } }, - "nextPageToken": { - "description": "Continuation token for fetching the next page of results.", - "type": "string" - } - }, - "id": "ListVersionsResponse" - }, - "ListAuthorizedDomainsResponse": { - "description": "Response message for AuthorizedDomains.ListAuthorizedDomains.", - "type": "object", - "properties": { - "nextPageToken": { - "description": "Continuation token for fetching the next page of results.", - "type": "string" - }, - "domains": { - "description": "The authorized domains belonging to the user.", - "type": "array", - "items": { - "$ref": "AuthorizedDomain" - } - } - }, - "id": "ListAuthorizedDomainsResponse" - }, - "DomainMapping": { - "description": "A domain serving an App Engine application.", - "type": "object", - "properties": { - "name": { - "description": "Full path to the DomainMapping resource in the API. Example: apps/myapp/domainMapping/example.com.@OutputOnly", - "type": "string" - }, - "sslSettings": { - "description": "SSL configuration for this domain. If unconfigured, this domain will not serve with SSL.", - "$ref": "SslSettings" - }, - "id": { - "description": "Relative name of the domain serving the application. Example: example.com.", - "type": "string" - }, - "resourceRecords": { - "description": "The resource records required to configure this domain mapping. These records must be added to the domain's DNS configuration in order to serve the application via this domain mapping.@OutputOnly", - "type": "array", - "items": { - "$ref": "ResourceRecord" - } - } - }, - "id": "DomainMapping" - }, - "ApiEndpointHandler": { - "description": "Uses Google Cloud Endpoints to handle requests.", - "type": "object", - "properties": { - "scriptPath": { - "description": "Path to the script from the application root directory.", - "type": "string" - } - }, - "id": "ApiEndpointHandler" - }, - "Empty": { - "description": "A generic empty message that you can re-use to avoid defining duplicated empty messages in your APIs. A typical example is to use it as the request or the response type of an API method. For instance:\nservice Foo {\n rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty);\n}\nThe JSON representation for Empty is empty JSON object {}.", - "type": "object", - "properties": {}, - "id": "Empty" - }, - "AutomaticScaling": { - "description": "Automatic scaling is based on request rate, response latencies, and other application metrics.", - "type": "object", - "properties": { - "minPendingLatency": { - "description": "Minimum amount of time a request should wait in the pending queue before starting a new instance to handle it.", - "format": "google-duration", - "type": "string" - }, - "requestUtilization": { - "$ref": "RequestUtilization", - "description": "Target scaling by request utilization." - }, - "maxIdleInstances": { - "description": "Maximum number of idle instances that should be maintained for this version.", - "format": "int32", - "type": "integer" - }, - "standardSchedulerSettings": { - "description": "Scheduler settings for standard environment.", - "$ref": "StandardSchedulerSettings" - }, - "minIdleInstances": { - "description": "Minimum number of idle instances that should be maintained for this version. Only applicable for the default version of a service.", - "format": "int32", - "type": "integer" - }, - "maxTotalInstances": { - "description": "Maximum number of instances that should be started to handle requests.", - "format": "int32", - "type": "integer" - }, - "minTotalInstances": { - "description": "Minimum number of instances that should be maintained for this version.", - "format": "int32", - "type": "integer" - }, - "networkUtilization": { - "description": "Target scaling by network usage.", - "$ref": "NetworkUtilization" - }, - "maxConcurrentRequests": { - "description": "Number of concurrent requests an automatic scaling instance can accept before the scheduler spawns a new instance.Defaults to a runtime-specific value.", - "format": "int32", - "type": "integer" - }, - "coolDownPeriod": { - "description": "Amount of time that the Autoscaler (https://cloud.google.com/compute/docs/autoscaler/) should wait between changes to the number of virtual machines. Only applicable in the App Engine flexible environment.", - "format": "google-duration", - "type": "string" - }, - "maxPendingLatency": { - "description": "Maximum amount of time that a request should wait in the pending queue before starting a new instance to handle it.", - "format": "google-duration", - "type": "string" - }, - "cpuUtilization": { - "description": "Target scaling by CPU usage.", - "$ref": "CpuUtilization" - }, - "diskUtilization": { - "description": "Target scaling by disk usage.", - "$ref": "DiskUtilization" - } - }, - "id": "AutomaticScaling" - }, - "ZipInfo": { - "description": "The zip file information for a zip deployment.", - "type": "object", - "properties": { - "sourceUrl": { - "description": "URL of the zip file to deploy from. Must be a URL to a resource in Google Cloud Storage in the form 'http(s)://storage.googleapis.com/\u003cbucket\u003e/\u003cobject\u003e'.", - "type": "string" - }, - "filesCount": { - "description": "An estimate of the number of files in a zip for a zip deployment. If set, must be greater than or equal to the actual number of files. Used for optimizing performance; if not provided, deployment may be slow.", - "format": "int32", - "type": "integer" - } - }, - "id": "ZipInfo" - }, - "AuthorizedCertificate": { - "description": "An SSL certificate that a user has been authorized to administer. A user is authorized to administer any certificate that applies to one of their authorized domains.", - "type": "object", - "properties": { - "expireTime": { - "description": "The time when this certificate expires. To update the renewal time on this certificate, upload an SSL certificate with a different expiration time using AuthorizedCertificates.UpdateAuthorizedCertificate.@OutputOnly", - "format": "google-datetime", - "type": "string" - }, - "name": { - "description": "Full path to the AuthorizedCertificate resource in the API. Example: apps/myapp/authorizedCertificates/12345.@OutputOnly", - "type": "string" - }, - "domainMappingsCount": { - "description": "Aggregate count of the domain mappings with this certificate mapped. This count includes domain mappings on applications for which the user does not have VIEWER permissions.Only returned by GET or LIST requests when specifically requested by the view=FULL_CERTIFICATE option.@OutputOnly", - "format": "int32", - "type": "integer" - }, - "domainNames": { - "description": "Topmost applicable domains of this certificate. This certificate applies to these domains and their subdomains. Example: example.com.@OutputOnly", - "type": "array", - "items": { - "type": "string" - } - }, - "id": { - "description": "Relative name of the certificate. This is a unique value autogenerated on AuthorizedCertificate resource creation. Example: 12345.@OutputOnly", - "type": "string" - }, - "displayName": { - "description": "The user-specified display name of the certificate. This is not guaranteed to be unique. Example: My Certificate.", - "type": "string" - }, - "certificateRawData": { - "$ref": "CertificateRawData", - "description": "The SSL certificate serving the AuthorizedCertificate resource. This must be obtained independently from a certificate authority." - }, - "visibleDomainMappings": { - "description": "The full paths to user visible Domain Mapping resources that have this certificate mapped. Example: apps/myapp/domainMappings/example.com.This may not represent the full list of mapped domain mappings if the user does not have VIEWER permissions on all of the applications that have this certificate mapped. See domain_mappings_count for a complete count.Only returned by GET or LIST requests when specifically requested by the view=FULL_CERTIFICATE option.@OutputOnly", - "type": "array", - "items": { - "type": "string" - } - } - }, - "id": "AuthorizedCertificate" - }, - "ResourceRecord": { - "description": "A DNS resource record.", - "type": "object", - "properties": { - "name": { - "description": "Relative name of the object affected by this record. Only applicable for CNAME records. Example: 'www'.", - "type": "string" - }, - "type": { - "enumDescriptions": [ - "An unknown resource record.", - "An A resource record. Data is an IPv4 address.", - "An AAAA resource record. Data is an IPv6 address.", - "A CNAME resource record. Data is a domain name to be aliased." - ], - "enum": [ - "RECORD_TYPE_UNSPECIFIED", - "A", - "AAAA", - "CNAME" - ], - "description": "Resource record type. Example: AAAA.", - "type": "string" - }, - "rrdata": { - "description": "Data for this record. Values vary by record type, as defined in RFC 1035 (section 5) and RFC 1034 (section 3.6.1).", - "type": "string" - } - }, - "id": "ResourceRecord" - }, - "Library": { - "description": "Third-party Python runtime library that is required by the application.", - "type": "object", - "properties": { - "name": { - "description": "Name of the library. Example: \"django\".", - "type": "string" - }, - "version": { - "description": "Version of the library to select, or \"latest\".", - "type": "string" - } - }, - "id": "Library" - }, - "ListLocationsResponse": { - "description": "The response message for Locations.ListLocations.", - "type": "object", - "properties": { "locations": { - "description": "A list of locations that matches the specified filter in the request.", - "type": "array", - "items": { - "$ref": "Location" + "methods": { + "get": { + "description": "Gets information about a location.", + "flatPath": "v1/apps/{appsId}/locations/{locationsId}", + "httpMethod": "GET", + "id": "appengine.apps.locations.get", + "parameterOrder": [ + "appsId", + "locationsId" + ], + "parameters": { + "appsId": { + "description": "Part of `name`. Resource name for the location.", + "location": "path", + "required": true, + "type": "string" + }, + "locationsId": { + "description": "Part of `name`. See documentation of `appsId`.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/apps/{appsId}/locations/{locationsId}", + "response": { + "$ref": "Location" + }, + "scopes": [ + "https://www.googleapis.com/auth/appengine.admin", + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + }, + "list": { + "description": "Lists information about the supported locations for this service.", + "flatPath": "v1/apps/{appsId}/locations", + "httpMethod": "GET", + "id": "appengine.apps.locations.list", + "parameterOrder": [ + "appsId" + ], + "parameters": { + "appsId": { + "description": "Part of `name`. The resource that owns the locations collection, if applicable.", + "location": "path", + "required": true, + "type": "string" + }, + "filter": { + "description": "The standard list filter.", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "The standard list page size.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "The standard list page token.", + "location": "query", + "type": "string" + } + }, + "path": "v1/apps/{appsId}/locations", + "response": { + "$ref": "ListLocationsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/appengine.admin", + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + } } }, - "nextPageToken": { - "description": "The standard List next-page token.", - "type": "string" + "operations": { + "methods": { + "get": { + "description": "Gets the latest state of a long-running operation. Clients can use this method to poll the operation result at intervals as recommended by the API service.", + "flatPath": "v1/apps/{appsId}/operations/{operationsId}", + "httpMethod": "GET", + "id": "appengine.apps.operations.get", + "parameterOrder": [ + "appsId", + "operationsId" + ], + "parameters": { + "appsId": { + "description": "Part of `name`. The name of the operation resource.", + "location": "path", + "required": true, + "type": "string" + }, + "operationsId": { + "description": "Part of `name`. See documentation of `appsId`.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/apps/{appsId}/operations/{operationsId}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/appengine.admin", + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + }, + "list": { + "description": "Lists operations that match the specified filter in the request. If the server doesn't support this method, it returns UNIMPLEMENTED.NOTE: the name binding allows API services to override the binding to use different resource name schemes, such as users/*/operations. To override the binding, API services can add a binding such as \"/v1/{name=users/*}/operations\" to their service configuration. For backwards compatibility, the default name includes the operations collection id, however overriding users must ensure the name binding is the parent resource, without the operations collection id.", + "flatPath": "v1/apps/{appsId}/operations", + "httpMethod": "GET", + "id": "appengine.apps.operations.list", + "parameterOrder": [ + "appsId" + ], + "parameters": { + "appsId": { + "description": "Part of `name`. The name of the operation's parent resource.", + "location": "path", + "required": true, + "type": "string" + }, + "filter": { + "description": "The standard list filter.", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "The standard list page size.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "The standard list page token.", + "location": "query", + "type": "string" + } + }, + "path": "v1/apps/{appsId}/operations", + "response": { + "$ref": "ListOperationsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/appengine.admin", + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + } + } + }, + "services": { + "methods": { + "delete": { + "description": "Deletes the specified service and all enclosed versions.", + "flatPath": "v1/apps/{appsId}/services/{servicesId}", + "httpMethod": "DELETE", + "id": "appengine.apps.services.delete", + "parameterOrder": [ + "appsId", + "servicesId" + ], + "parameters": { + "appsId": { + "description": "Part of `name`. Name of the resource requested. Example: apps/myapp/services/default.", + "location": "path", + "required": true, + "type": "string" + }, + "servicesId": { + "description": "Part of `name`. See documentation of `appsId`.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/apps/{appsId}/services/{servicesId}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Gets the current configuration of the specified service.", + "flatPath": "v1/apps/{appsId}/services/{servicesId}", + "httpMethod": "GET", + "id": "appengine.apps.services.get", + "parameterOrder": [ + "appsId", + "servicesId" + ], + "parameters": { + "appsId": { + "description": "Part of `name`. Name of the resource requested. Example: apps/myapp/services/default.", + "location": "path", + "required": true, + "type": "string" + }, + "servicesId": { + "description": "Part of `name`. See documentation of `appsId`.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/apps/{appsId}/services/{servicesId}", + "response": { + "$ref": "Service" + }, + "scopes": [ + "https://www.googleapis.com/auth/appengine.admin", + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + }, + "list": { + "description": "Lists all the services in the application.", + "flatPath": "v1/apps/{appsId}/services", + "httpMethod": "GET", + "id": "appengine.apps.services.list", + "parameterOrder": [ + "appsId" + ], + "parameters": { + "appsId": { + "description": "Part of `parent`. Name of the parent Application resource. Example: apps/myapp.", + "location": "path", + "required": true, + "type": "string" + }, + "pageSize": { + "description": "Maximum results to return per page.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Continuation token for fetching the next page of results.", + "location": "query", + "type": "string" + } + }, + "path": "v1/apps/{appsId}/services", + "response": { + "$ref": "ListServicesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/appengine.admin", + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + }, + "patch": { + "description": "Updates the configuration of the specified service.", + "flatPath": "v1/apps/{appsId}/services/{servicesId}", + "httpMethod": "PATCH", + "id": "appengine.apps.services.patch", + "parameterOrder": [ + "appsId", + "servicesId" + ], + "parameters": { + "appsId": { + "description": "Part of `name`. Name of the resource to update. Example: apps/myapp/services/default.", + "location": "path", + "required": true, + "type": "string" + }, + "migrateTraffic": { + "description": "Set to true to gradually shift traffic to one or more versions that you specify. By default, traffic is shifted immediately. For gradual traffic migration, the target versions must be located within instances that are configured for both warmup requests (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1/apps.services.versions#inboundservicetype) and automatic scaling (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1/apps.services.versions#automaticscaling). You must specify the shardBy (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1/apps.services#shardby) field in the Service resource. Gradual traffic migration is not supported in the App Engine flexible environment. For examples, see Migrating and Splitting Traffic (https://cloud.google.com/appengine/docs/admin-api/migrating-splitting-traffic).", + "location": "query", + "type": "boolean" + }, + "servicesId": { + "description": "Part of `name`. See documentation of `appsId`.", + "location": "path", + "required": true, + "type": "string" + }, + "updateMask": { + "description": "Standard field mask for the set of fields to be updated.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + } + }, + "path": "v1/apps/{appsId}/services/{servicesId}", + "request": { + "$ref": "Service" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + }, + "resources": { + "versions": { + "methods": { + "create": { + "description": "Deploys code and resource files to a new version.", + "flatPath": "v1/apps/{appsId}/services/{servicesId}/versions", + "httpMethod": "POST", + "id": "appengine.apps.services.versions.create", + "parameterOrder": [ + "appsId", + "servicesId" + ], + "parameters": { + "appsId": { + "description": "Part of `parent`. Name of the parent resource to create this version under. Example: apps/myapp/services/default.", + "location": "path", + "required": true, + "type": "string" + }, + "servicesId": { + "description": "Part of `parent`. See documentation of `appsId`.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/apps/{appsId}/services/{servicesId}/versions", + "request": { + "$ref": "Version" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Deletes an existing Version resource.", + "flatPath": "v1/apps/{appsId}/services/{servicesId}/versions/{versionsId}", + "httpMethod": "DELETE", + "id": "appengine.apps.services.versions.delete", + "parameterOrder": [ + "appsId", + "servicesId", + "versionsId" + ], + "parameters": { + "appsId": { + "description": "Part of `name`. Name of the resource requested. Example: apps/myapp/services/default/versions/v1.", + "location": "path", + "required": true, + "type": "string" + }, + "servicesId": { + "description": "Part of `name`. See documentation of `appsId`.", + "location": "path", + "required": true, + "type": "string" + }, + "versionsId": { + "description": "Part of `name`. See documentation of `appsId`.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/apps/{appsId}/services/{servicesId}/versions/{versionsId}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Gets the specified Version resource. By default, only a BASIC_VIEW will be returned. Specify the FULL_VIEW parameter to get the full resource.", + "flatPath": "v1/apps/{appsId}/services/{servicesId}/versions/{versionsId}", + "httpMethod": "GET", + "id": "appengine.apps.services.versions.get", + "parameterOrder": [ + "appsId", + "servicesId", + "versionsId" + ], + "parameters": { + "appsId": { + "description": "Part of `name`. Name of the resource requested. Example: apps/myapp/services/default/versions/v1.", + "location": "path", + "required": true, + "type": "string" + }, + "servicesId": { + "description": "Part of `name`. See documentation of `appsId`.", + "location": "path", + "required": true, + "type": "string" + }, + "versionsId": { + "description": "Part of `name`. See documentation of `appsId`.", + "location": "path", + "required": true, + "type": "string" + }, + "view": { + "description": "Controls the set of fields returned in the Get response.", + "enum": [ + "BASIC", + "FULL" + ], + "location": "query", + "type": "string" + } + }, + "path": "v1/apps/{appsId}/services/{servicesId}/versions/{versionsId}", + "response": { + "$ref": "Version" + }, + "scopes": [ + "https://www.googleapis.com/auth/appengine.admin", + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + }, + "list": { + "description": "Lists the versions of a service.", + "flatPath": "v1/apps/{appsId}/services/{servicesId}/versions", + "httpMethod": "GET", + "id": "appengine.apps.services.versions.list", + "parameterOrder": [ + "appsId", + "servicesId" + ], + "parameters": { + "appsId": { + "description": "Part of `parent`. Name of the parent Service resource. Example: apps/myapp/services/default.", + "location": "path", + "required": true, + "type": "string" + }, + "pageSize": { + "description": "Maximum results to return per page.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Continuation token for fetching the next page of results.", + "location": "query", + "type": "string" + }, + "servicesId": { + "description": "Part of `parent`. See documentation of `appsId`.", + "location": "path", + "required": true, + "type": "string" + }, + "view": { + "description": "Controls the set of fields returned in the List response.", + "enum": [ + "BASIC", + "FULL" + ], + "location": "query", + "type": "string" + } + }, + "path": "v1/apps/{appsId}/services/{servicesId}/versions", + "response": { + "$ref": "ListVersionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/appengine.admin", + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + }, + "patch": { + "description": "Updates the specified Version resource. You can specify the following fields depending on the App Engine environment and type of scaling that the version resource uses:\nserving_status (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1/apps.services.versions#Version.FIELDS.serving_status): For Version resources that use basic scaling, manual scaling, or run in the App Engine flexible environment.\ninstance_class (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1/apps.services.versions#Version.FIELDS.instance_class): For Version resources that run in the App Engine standard environment.\nautomatic_scaling.min_idle_instances (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1/apps.services.versions#Version.FIELDS.automatic_scaling): For Version resources that use automatic scaling and run in the App Engine standard environment.\nautomatic_scaling.max_idle_instances (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1/apps.services.versions#Version.FIELDS.automatic_scaling): For Version resources that use automatic scaling and run in the App Engine standard environment.\nautomatic_scaling.min_total_instances (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1/apps.services.versions#Version.FIELDS.automatic_scaling): For Version resources that use automatic scaling and run in the App Engine flexible environment.\nautomatic_scaling.max_total_instances (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1/apps.services.versions#Version.FIELDS.automatic_scaling): For Version resources that use automatic scaling and run in the App Engine flexible environment.\nautomatic_scaling.cool_down_period_sec (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1/apps.services.versions#Version.FIELDS.automatic_scaling): For Version resources that use automatic scaling and run in the App Engine flexible environment.\nautomatic_scaling.cpu_utilization.target_utilization (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1/apps.services.versions#Version.FIELDS.automatic_scaling): For Version resources that use automatic scaling and run in the App Engine flexible environment.", + "flatPath": "v1/apps/{appsId}/services/{servicesId}/versions/{versionsId}", + "httpMethod": "PATCH", + "id": "appengine.apps.services.versions.patch", + "parameterOrder": [ + "appsId", + "servicesId", + "versionsId" + ], + "parameters": { + "appsId": { + "description": "Part of `name`. Name of the resource to update. Example: apps/myapp/services/default/versions/1.", + "location": "path", + "required": true, + "type": "string" + }, + "servicesId": { + "description": "Part of `name`. See documentation of `appsId`.", + "location": "path", + "required": true, + "type": "string" + }, + "updateMask": { + "description": "Standard field mask for the set of fields to be updated.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + }, + "versionsId": { + "description": "Part of `name`. See documentation of `appsId`.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/apps/{appsId}/services/{servicesId}/versions/{versionsId}", + "request": { + "$ref": "Version" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + }, + "resources": { + "instances": { + "methods": { + "debug": { + "description": "Enables debugging on a VM instance. This allows you to use the SSH command to connect to the virtual machine where the instance lives. While in \"debug mode\", the instance continues to serve live traffic. You should delete the instance when you are done debugging and then allow the system to take over and determine if another instance should be started.Only applicable for instances in App Engine flexible environment.", + "flatPath": "v1/apps/{appsId}/services/{servicesId}/versions/{versionsId}/instances/{instancesId}:debug", + "httpMethod": "POST", + "id": "appengine.apps.services.versions.instances.debug", + "parameterOrder": [ + "appsId", + "servicesId", + "versionsId", + "instancesId" + ], + "parameters": { + "appsId": { + "description": "Part of `name`. Name of the resource requested. Example: apps/myapp/services/default/versions/v1/instances/instance-1.", + "location": "path", + "required": true, + "type": "string" + }, + "instancesId": { + "description": "Part of `name`. See documentation of `appsId`.", + "location": "path", + "required": true, + "type": "string" + }, + "servicesId": { + "description": "Part of `name`. See documentation of `appsId`.", + "location": "path", + "required": true, + "type": "string" + }, + "versionsId": { + "description": "Part of `name`. See documentation of `appsId`.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/apps/{appsId}/services/{servicesId}/versions/{versionsId}/instances/{instancesId}:debug", + "request": { + "$ref": "DebugInstanceRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Stops a running instance.", + "flatPath": "v1/apps/{appsId}/services/{servicesId}/versions/{versionsId}/instances/{instancesId}", + "httpMethod": "DELETE", + "id": "appengine.apps.services.versions.instances.delete", + "parameterOrder": [ + "appsId", + "servicesId", + "versionsId", + "instancesId" + ], + "parameters": { + "appsId": { + "description": "Part of `name`. Name of the resource requested. Example: apps/myapp/services/default/versions/v1/instances/instance-1.", + "location": "path", + "required": true, + "type": "string" + }, + "instancesId": { + "description": "Part of `name`. See documentation of `appsId`.", + "location": "path", + "required": true, + "type": "string" + }, + "servicesId": { + "description": "Part of `name`. See documentation of `appsId`.", + "location": "path", + "required": true, + "type": "string" + }, + "versionsId": { + "description": "Part of `name`. See documentation of `appsId`.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/apps/{appsId}/services/{servicesId}/versions/{versionsId}/instances/{instancesId}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Gets instance information.", + "flatPath": "v1/apps/{appsId}/services/{servicesId}/versions/{versionsId}/instances/{instancesId}", + "httpMethod": "GET", + "id": "appengine.apps.services.versions.instances.get", + "parameterOrder": [ + "appsId", + "servicesId", + "versionsId", + "instancesId" + ], + "parameters": { + "appsId": { + "description": "Part of `name`. Name of the resource requested. Example: apps/myapp/services/default/versions/v1/instances/instance-1.", + "location": "path", + "required": true, + "type": "string" + }, + "instancesId": { + "description": "Part of `name`. See documentation of `appsId`.", + "location": "path", + "required": true, + "type": "string" + }, + "servicesId": { + "description": "Part of `name`. See documentation of `appsId`.", + "location": "path", + "required": true, + "type": "string" + }, + "versionsId": { + "description": "Part of `name`. See documentation of `appsId`.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/apps/{appsId}/services/{servicesId}/versions/{versionsId}/instances/{instancesId}", + "response": { + "$ref": "Instance" + }, + "scopes": [ + "https://www.googleapis.com/auth/appengine.admin", + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + }, + "list": { + "description": "Lists the instances of a version.Tip: To aggregate details about instances over time, see the Stackdriver Monitoring API (https://cloud.google.com/monitoring/api/ref_v3/rest/v3/projects.timeSeries/list).", + "flatPath": "v1/apps/{appsId}/services/{servicesId}/versions/{versionsId}/instances", + "httpMethod": "GET", + "id": "appengine.apps.services.versions.instances.list", + "parameterOrder": [ + "appsId", + "servicesId", + "versionsId" + ], + "parameters": { + "appsId": { + "description": "Part of `parent`. Name of the parent Version resource. Example: apps/myapp/services/default/versions/v1.", + "location": "path", + "required": true, + "type": "string" + }, + "pageSize": { + "description": "Maximum results to return per page.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Continuation token for fetching the next page of results.", + "location": "query", + "type": "string" + }, + "servicesId": { + "description": "Part of `parent`. See documentation of `appsId`.", + "location": "path", + "required": true, + "type": "string" + }, + "versionsId": { + "description": "Part of `parent`. See documentation of `appsId`.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/apps/{appsId}/services/{servicesId}/versions/{versionsId}/instances", + "response": { + "$ref": "ListInstancesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/appengine.admin", + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + } + } + } + } + } + } } - }, - "id": "ListLocationsResponse" - }, - "ContainerInfo": { - "description": "Docker image that is used to create a container and start a VM instance for the version that you deploy. Only applicable for instances running in the App Engine flexible environment.", - "type": "object", - "properties": { - "image": { - "description": "URI to the hosted container image in Google Container Registry. The URI must be fully qualified and include a tag or digest. Examples: \"gcr.io/my-project/image:tag\" or \"gcr.io/my-project/image@digest\"", - "type": "string" - } - }, - "id": "ContainerInfo" - }, - "RequestUtilization": { - "description": "Target scaling by request utilization. Only applicable in the App Engine flexible environment.", - "type": "object", - "properties": { - "targetConcurrentRequests": { - "description": "Target number of concurrent requests.", - "format": "int32", - "type": "integer" - }, - "targetRequestCountPerSecond": { - "description": "Target requests per second.", - "format": "int32", - "type": "integer" - } - }, - "id": "RequestUtilization" - }, - "UrlMap": { - "description": "URL pattern and description of how the URL should be handled. App Engine can handle URLs by executing application code or by serving static files uploaded with the version, such as images, CSS, or JavaScript.", - "type": "object", - "properties": { - "redirectHttpResponseCode": { - "enumDescriptions": [ - "Not specified. 302 is assumed.", - "301 Moved Permanently code.", - "302 Moved Temporarily code.", - "303 See Other code.", - "307 Temporary Redirect code." - ], - "enum": [ - "REDIRECT_HTTP_RESPONSE_CODE_UNSPECIFIED", - "REDIRECT_HTTP_RESPONSE_CODE_301", - "REDIRECT_HTTP_RESPONSE_CODE_302", - "REDIRECT_HTTP_RESPONSE_CODE_303", - "REDIRECT_HTTP_RESPONSE_CODE_307" - ], - "description": "30x code to use when performing redirects for the secure field. Defaults to 302.", - "type": "string" - }, - "securityLevel": { - "description": "Security (HTTPS) enforcement for this URL.", - "type": "string", - "enumDescriptions": [ - "Not specified.", - "Both HTTP and HTTPS requests with URLs that match the handler succeed without redirects. The application can examine the request to determine which protocol was used, and respond accordingly.", - "Requests for a URL that match this handler that use HTTPS are automatically redirected to the HTTP equivalent URL.", - "Both HTTP and HTTPS requests with URLs that match the handler succeed without redirects. The application can examine the request to determine which protocol was used and respond accordingly.", - "Requests for a URL that match this handler that do not use HTTPS are automatically redirected to the HTTPS URL with the same path. Query parameters are reserved for the redirect." - ], - "enum": [ - "SECURE_UNSPECIFIED", - "SECURE_DEFAULT", - "SECURE_NEVER", - "SECURE_OPTIONAL", - "SECURE_ALWAYS" - ] - }, - "authFailAction": { - "enumDescriptions": [ - "Not specified. AUTH_FAIL_ACTION_REDIRECT is assumed.", - "Redirects user to \"accounts.google.com\". The user is redirected back to the application URL after signing in or creating an account.", - "Rejects request with a 401 HTTP status code and an error message." - ], - "enum": [ - "AUTH_FAIL_ACTION_UNSPECIFIED", - "AUTH_FAIL_ACTION_REDIRECT", - "AUTH_FAIL_ACTION_UNAUTHORIZED" - ], - "description": "Action to take when users access resources that require authentication. Defaults to redirect.", - "type": "string" - }, - "script": { - "description": "Executes a script to handle the request that matches this URL pattern.", - "$ref": "ScriptHandler" - }, - "urlRegex": { - "description": "URL prefix. Uses regular expression syntax, which means regexp special characters must be escaped, but should not contain groupings. All URLs that begin with this prefix are handled by this handler, using the portion of the URL after the prefix as part of the file path.", - "type": "string" - }, - "login": { - "enumDescriptions": [ - "Not specified. LOGIN_OPTIONAL is assumed.", - "Does not require that the user is signed in.", - "If the user is not signed in, the auth_fail_action is taken. In addition, if the user is not an administrator for the application, they are given an error message regardless of auth_fail_action. If the user is an administrator, the handler proceeds.", - "If the user has signed in, the handler proceeds normally. Otherwise, the auth_fail_action is taken." - ], - "enum": [ - "LOGIN_UNSPECIFIED", - "LOGIN_OPTIONAL", - "LOGIN_ADMIN", - "LOGIN_REQUIRED" - ], - "description": "Level of login required to access this resource.", - "type": "string" - }, - "apiEndpoint": { - "description": "Uses API Endpoints to handle requests.", - "$ref": "ApiEndpointHandler" - }, - "staticFiles": { - "description": "Returns the contents of a file, such as an image, as the response.", - "$ref": "StaticFilesHandler" - } - }, - "id": "UrlMap" - }, - "EndpointsApiService": { - "description": "Cloud Endpoints (https://cloud.google.com/endpoints) configuration. The Endpoints API Service provides tooling for serving Open API and gRPC endpoints via an NGINX proxy.The fields here refer to the name and configuration id of a \"service\" resource in the Service Management API (https://cloud.google.com/service-management/overview).", - "type": "object", - "properties": { - "name": { - "description": "Endpoints service name which is the name of the \"service\" resource in the Service Management API. For example \"myapi.endpoints.myproject.cloud.goog\"", - "type": "string" - }, - "configId": { - "description": "Endpoints service configuration id as specified by the Service Management API. For example \"2016-09-19r1\"", - "type": "string" - } - }, - "id": "EndpointsApiService" - }, + } + } + }, + "revision": "20180320", + "rootUrl": "https://appengine.googleapis.com/", + "schemas": { "ApiConfigHandler": { "description": "Google Cloud Endpoints (https://cloud.google.com/appengine/docs/python/endpoints/) configuration for API handlers.", - "type": "object", + "id": "ApiConfigHandler", "properties": { - "securityLevel": { - "description": "Security (HTTPS) enforcement for this URL.", - "type": "string", - "enumDescriptions": [ - "Not specified.", - "Both HTTP and HTTPS requests with URLs that match the handler succeed without redirects. The application can examine the request to determine which protocol was used, and respond accordingly.", - "Requests for a URL that match this handler that use HTTPS are automatically redirected to the HTTP equivalent URL.", - "Both HTTP and HTTPS requests with URLs that match the handler succeed without redirects. The application can examine the request to determine which protocol was used and respond accordingly.", - "Requests for a URL that match this handler that do not use HTTPS are automatically redirected to the HTTPS URL with the same path. Query parameters are reserved for the redirect." - ], - "enum": [ - "SECURE_UNSPECIFIED", - "SECURE_DEFAULT", - "SECURE_NEVER", - "SECURE_OPTIONAL", - "SECURE_ALWAYS" - ] - }, "authFailAction": { "description": "Action to take when users access resources that require authentication. Defaults to redirect.", - "type": "string", + "enum": [ + "AUTH_FAIL_ACTION_UNSPECIFIED", + "AUTH_FAIL_ACTION_REDIRECT", + "AUTH_FAIL_ACTION_UNAUTHORIZED" + ], "enumDescriptions": [ "Not specified. AUTH_FAIL_ACTION_REDIRECT is assumed.", "Redirects user to \"accounts.google.com\". The user is redirected back to the application URL after signing in or creating an account.", "Rejects request with a 401 HTTP status code and an error message." ], - "enum": [ - "AUTH_FAIL_ACTION_UNSPECIFIED", - "AUTH_FAIL_ACTION_REDIRECT", - "AUTH_FAIL_ACTION_UNAUTHORIZED" - ] - }, - "script": { - "description": "Path to the script from the application root directory.", "type": "string" }, "login": { "description": "Level of login required to access this resource. Defaults to optional.", - "type": "string", + "enum": [ + "LOGIN_UNSPECIFIED", + "LOGIN_OPTIONAL", + "LOGIN_ADMIN", + "LOGIN_REQUIRED" + ], "enumDescriptions": [ "Not specified. LOGIN_OPTIONAL is assumed.", "Does not require that the user is signed in.", "If the user is not signed in, the auth_fail_action is taken. In addition, if the user is not an administrator for the application, they are given an error message regardless of auth_fail_action. If the user is an administrator, the handler proceeds.", "If the user has signed in, the handler proceeds normally. Otherwise, the auth_fail_action is taken." ], + "type": "string" + }, + "script": { + "description": "Path to the script from the application root directory.", + "type": "string" + }, + "securityLevel": { + "description": "Security (HTTPS) enforcement for this URL.", "enum": [ - "LOGIN_UNSPECIFIED", - "LOGIN_OPTIONAL", - "LOGIN_ADMIN", - "LOGIN_REQUIRED" - ] + "SECURE_UNSPECIFIED", + "SECURE_DEFAULT", + "SECURE_NEVER", + "SECURE_OPTIONAL", + "SECURE_ALWAYS" + ], + "enumDescriptions": [ + "Not specified.", + "Both HTTP and HTTPS requests with URLs that match the handler succeed without redirects. The application can examine the request to determine which protocol was used, and respond accordingly.", + "Requests for a URL that match this handler that use HTTPS are automatically redirected to the HTTP equivalent URL.", + "Both HTTP and HTTPS requests with URLs that match the handler succeed without redirects. The application can examine the request to determine which protocol was used and respond accordingly.", + "Requests for a URL that match this handler that do not use HTTPS are automatically redirected to the HTTPS URL with the same path. Query parameters are reserved for the redirect." + ], + "type": "string" }, "url": { "description": "URL to serve the endpoint at.", "type": "string" } }, - "id": "ApiConfigHandler" + "type": "object" }, - "Operation": { - "description": "This resource represents a long-running operation that is the result of a network API call.", - "type": "object", + "ApiEndpointHandler": { + "description": "Uses Google Cloud Endpoints to handle requests.", + "id": "ApiEndpointHandler", "properties": { - "done": { - "description": "If the value is false, it means the operation is still in progress. If true, the operation is completed, and either error or response is available.", - "type": "boolean" - }, - "response": { - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - }, - "description": "The normal response of the operation in case of success. If the original method returns no data on success, such as Delete, the response is google.protobuf.Empty. If the original method is standard Get/Create/Update, the response should be the resource. For other methods, the response should have the type XxxResponse, where Xxx is the original method name. For example, if the original method name is TakeSnapshot(), the inferred response type is TakeSnapshotResponse.", - "type": "object" - }, - "name": { - "description": "The server-assigned name, which is only unique within the same service that originally returns it. If you use the default HTTP mapping, the name should have the format of operations/some/unique/name.", - "type": "string" - }, - "error": { - "$ref": "Status", - "description": "The error result of the operation in case of failure or cancellation." - }, - "metadata": { - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - }, - "description": "Service-specific metadata associated with the operation. It typically contains progress information and common metadata such as create time. Some services might not provide such metadata. Any method that returns a long-running operation should document the metadata type, if any.", - "type": "object" - } - }, - "id": "Operation" - }, - "StaticFilesHandler": { - "description": "Files served directly to the user for a given URL, such as images, CSS stylesheets, or JavaScript source files. Static file handlers describe which files in the application directory are static files, and which URLs serve them.", - "type": "object", - "properties": { - "uploadPathRegex": { - "description": "Regular expression that matches the file paths for all files that should be referenced by this handler.", - "type": "string" - }, - "path": { - "description": "Path to the static files matched by the URL pattern, from the application root directory. The path can refer to text matched in groupings in the URL pattern.", - "type": "string" - }, - "mimeType": { - "description": "MIME type used to serve all files served by this handler.Defaults to file-specific MIME types, which are derived from each file's filename extension.", - "type": "string" - }, - "requireMatchingFile": { - "description": "Whether this handler should match the request if the file referenced by the handler does not exist.", - "type": "boolean" - }, - "expiration": { - "description": "Time a static file served by this handler should be cached by web proxies and browsers.", - "format": "google-duration", - "type": "string" - }, - "applicationReadable": { - "description": "Whether files should also be uploaded as code data. By default, files declared in static file handlers are uploaded as static data and are only served to end users; they cannot be read by the application. If enabled, uploads are charged against both your code and static data storage resource quotas.", - "type": "boolean" - }, - "httpHeaders": { - "additionalProperties": { - "type": "string" - }, - "description": "HTTP headers to use for all responses from these URLs.", - "type": "object" - } - }, - "id": "StaticFilesHandler" - }, - "DiskUtilization": { - "description": "Target scaling by disk usage. Only applicable in the App Engine flexible environment.", - "type": "object", - "properties": { - "targetWriteOpsPerSecond": { - "description": "Target ops written per second.", - "format": "int32", - "type": "integer" - }, - "targetWriteBytesPerSecond": { - "description": "Target bytes written per second.", - "format": "int32", - "type": "integer" - }, - "targetReadBytesPerSecond": { - "description": "Target bytes read per second.", - "format": "int32", - "type": "integer" - }, - "targetReadOpsPerSecond": { - "description": "Target ops read per seconds.", - "format": "int32", - "type": "integer" - } - }, - "id": "DiskUtilization" - }, - "BasicScaling": { - "description": "A service with basic scaling will create an instance when the application receives a request. The instance will be turned down when the app becomes idle. Basic scaling is ideal for work that is intermittent or driven by user activity.", - "type": "object", - "properties": { - "maxInstances": { - "description": "Maximum number of instances to create for this version.", - "format": "int32", - "type": "integer" - }, - "idleTimeout": { - "description": "Duration of time after the last request that an instance must wait before the instance is shut down.", - "format": "google-duration", + "scriptPath": { + "description": "Path to the script from the application root directory.", "type": "string" } }, - "id": "BasicScaling" - }, - "CpuUtilization": { - "description": "Target scaling by CPU usage.", - "type": "object", - "properties": { - "aggregationWindowLength": { - "description": "Period of time over which CPU utilization is calculated.", - "format": "google-duration", - "type": "string" - }, - "targetUtilization": { - "description": "Target CPU utilization ratio to maintain when scaling. Must be between 0 and 1.", - "format": "double", - "type": "number" - } - }, - "id": "CpuUtilization" - }, - "IdentityAwareProxy": { - "description": "Identity-Aware Proxy", - "type": "object", - "properties": { - "enabled": { - "description": "Whether the serving infrastructure will authenticate and authorize all incoming requests.If true, the oauth2_client_id and oauth2_client_secret fields must be non-empty.", - "type": "boolean" - }, - "oauth2ClientSecret": { - "description": "OAuth2 client secret to use for the authentication flow.For security reasons, this value cannot be retrieved via the API. Instead, the SHA-256 hash of the value is returned in the oauth2_client_secret_sha256 field.@InputOnly", - "type": "string" - }, - "oauth2ClientId": { - "description": "OAuth2 client ID to use for the authentication flow.", - "type": "string" - }, - "oauth2ClientSecretSha256": { - "description": "Hex-encoded SHA-256 hash of the client secret.@OutputOnly", - "type": "string" - } - }, - "id": "IdentityAwareProxy" - }, - "Status": { - "description": "The Status type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by gRPC (https://github.com/grpc). The error model is designed to be:\nSimple to use and understand for most users\nFlexible enough to meet unexpected needsOverviewThe Status message contains three pieces of data: error code, error message, and error details. The error code should be an enum value of google.rpc.Code, but it may accept additional error codes if needed. The error message should be a developer-facing English message that helps developers understand and resolve the error. If a localized user-facing error message is needed, put the localized message in the error details or localize it in the client. The optional error details may contain arbitrary information about the error. There is a predefined set of error detail types in the package google.rpc that can be used for common error conditions.Language mappingThe Status message is the logical representation of the error model, but it is not necessarily the actual wire format. When the Status message is exposed in different client libraries and different wire protocols, it can be mapped differently. For example, it will likely be mapped to some exceptions in Java, but more likely mapped to some error codes in C.Other usesThe error model and the Status message can be used in a variety of environments, either with or without APIs, to provide a consistent developer experience across different environments.Example uses of this error model include:\nPartial errors. If a service needs to return partial errors to the client, it may embed the Status in the normal response to indicate the partial errors.\nWorkflow errors. A typical workflow has multiple steps. Each step may have a Status message for error reporting.\nBatch operations. If a client uses batch request and batch response, the Status message should be used directly inside batch response, one for each error sub-response.\nAsynchronous operations. If an API call embeds asynchronous operation results in its response, the status of those operations should be represented directly using the Status message.\nLogging. If some API errors are stored in logs, the message Status could be used directly after any stripping needed for security/privacy reasons.", - "type": "object", - "properties": { - "details": { - "description": "A list of messages that carry the error details. There is a common set of message types for APIs to use.", - "type": "array", - "items": { - "type": "object", - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - } - } - }, - "code": { - "description": "The status code, which should be an enum value of google.rpc.Code.", - "format": "int32", - "type": "integer" - }, - "message": { - "description": "A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the google.rpc.Status.details field, or localized by the client.", - "type": "string" - } - }, - "id": "Status" - }, - "ManualScaling": { - "description": "A service with manual scaling runs continuously, allowing you to perform complex initialization and rely on the state of its memory over time.", - "type": "object", - "properties": { - "instances": { - "description": "Number of instances to assign to the service at the start. This number can later be altered by using the Modules API (https://cloud.google.com/appengine/docs/python/modules/functions) set_num_instances() function.", - "format": "int32", - "type": "integer" - } - }, - "id": "ManualScaling" - }, - "LocationMetadata": { - "description": "Metadata for the given google.cloud.location.Location.", - "type": "object", - "properties": { - "standardEnvironmentAvailable": { - "description": "App Engine Standard Environment is available in the given location.@OutputOnly", - "type": "boolean" - }, - "flexibleEnvironmentAvailable": { - "description": "App Engine Flexible Environment is available in the given location.@OutputOnly", - "type": "boolean" - } - }, - "id": "LocationMetadata" - }, - "Service": { - "description": "A Service resource is a logical component of an application that can share state and communicate in a secure fashion with other services. For example, an application that handles customer requests might include separate services to handle tasks such as backend data analysis or API requests from mobile devices. Each service has a collection of versions that define a specific set of code used to implement the functionality of that service.", - "type": "object", - "properties": { - "split": { - "description": "Mapping that defines fractional HTTP traffic diversion to different versions within the service.", - "$ref": "TrafficSplit" - }, - "id": { - "description": "Relative name of the service within the application. Example: default.@OutputOnly", - "type": "string" - }, - "name": { - "description": "Full path to the Service resource in the API. Example: apps/myapp/services/default.@OutputOnly", - "type": "string" - } - }, - "id": "Service" - }, - "ListOperationsResponse": { - "description": "The response message for Operations.ListOperations.", - "type": "object", - "properties": { - "nextPageToken": { - "description": "The standard List next-page token.", - "type": "string" - }, - "operations": { - "description": "A list of operations that matches the specified filter in the request.", - "type": "array", - "items": { - "$ref": "Operation" - } - } - }, - "id": "ListOperationsResponse" - }, - "FirewallRule": { - "description": "A single firewall rule that is evaluated against incoming traffic and provides an action to take on matched requests.", - "type": "object", - "properties": { - "sourceRange": { - "description": "IP address or range, defined using CIDR notation, of requests that this rule applies to. You can use the wildcard character \"*\" to match all IPs equivalent to \"0/0\" and \"::/0\" together. Examples: 192.168.1.1 or 192.168.0.0/16 or 2001:db8::/32 or 2001:0db8:0000:0042:0000:8a2e:0370:7334.\u003cp\u003eTruncation will be silently performed on addresses which are not properly truncated. For example, 1.2.3.4/24 is accepted as the same address as 1.2.3.0/24. Similarly, for IPv6, 2001:db8::1/32 is accepted as the same address as 2001:db8::/32.", - "type": "string" - }, - "priority": { - "description": "A positive integer between 1, Int32.MaxValue-1 that defines the order of rule evaluation. Rules with the lowest priority are evaluated first.A default rule at priority Int32.MaxValue matches all IPv4 and IPv6 traffic when no previous rule matches. Only the action of this rule can be modified by the user.", - "format": "int32", - "type": "integer" - }, - "action": { - "description": "The action to take on matched requests.", - "type": "string", - "enumDescriptions": [ - "", - "Matching requests are allowed.", - "Matching requests are denied." - ], - "enum": [ - "UNSPECIFIED_ACTION", - "ALLOW", - "DENY" - ] - }, - "description": { - "description": "An optional string description of this rule. This field has a maximum length of 100 characters.", - "type": "string" - } - }, - "id": "FirewallRule" - }, - "OperationMetadata": { - "description": "Metadata for the given google.longrunning.Operation.", - "type": "object", - "properties": { - "endTime": { - "description": "Timestamp that this operation completed.@OutputOnly", - "format": "google-datetime", - "type": "string" - }, - "operationType": { - "description": "Type of this operation. Deprecated, use method field instead. Example: \"create_version\".@OutputOnly", - "type": "string" - }, - "insertTime": { - "description": "Timestamp that this operation was created.@OutputOnly", - "format": "google-datetime", - "type": "string" - }, - "user": { - "description": "User who requested this operation.@OutputOnly", - "type": "string" - }, - "target": { - "description": "Name of the resource that this operation is acting on. Example: apps/myapp/modules/default.@OutputOnly", - "type": "string" - }, - "method": { - "description": "API method that initiated this operation. Example: google.appengine.v1beta4.Version.CreateVersion.@OutputOnly", - "type": "string" - } - }, - "id": "OperationMetadata" - }, - "ListAuthorizedCertificatesResponse": { - "description": "Response message for AuthorizedCertificates.ListAuthorizedCertificates.", - "type": "object", - "properties": { - "certificates": { - "description": "The SSL certificates the user is authorized to administer.", - "type": "array", - "items": { - "$ref": "AuthorizedCertificate" - } - }, - "nextPageToken": { - "description": "Continuation token for fetching the next page of results.", - "type": "string" - } - }, - "id": "ListAuthorizedCertificatesResponse" - }, - "CreateVersionMetadataV1Beta": { - "description": "Metadata for the given google.longrunning.Operation during a google.appengine.v1beta.CreateVersionRequest.", - "type": "object", - "properties": { - "cloudBuildId": { - "description": "The Cloud Build ID if one was created as part of the version create. @OutputOnly", - "type": "string" - } - }, - "id": "CreateVersionMetadataV1Beta" - }, - "FeatureSettings": { - "description": "The feature specific settings to be used in the application. These define behaviors that are user configurable.", - "type": "object", - "properties": { - "splitHealthChecks": { - "description": "Boolean value indicating if split health checks should be used instead of the legacy health checks. At an app.yaml level, this means defaulting to 'readiness_check' and 'liveness_check' values instead of 'health_check' ones. Once the legacy 'health_check' behavior is deprecated, and this value is always true, this setting can be removed.", - "type": "boolean" - } - }, - "id": "FeatureSettings" - }, - "ErrorHandler": { - "description": "Custom static error page to be served when an error occurs.", - "type": "object", - "properties": { - "errorCode": { - "description": "Error condition this handler applies to.", - "type": "string", - "enumDescriptions": [ - "Not specified. ERROR_CODE_DEFAULT is assumed.", - "All other error types.", - "Application has exceeded a resource quota.", - "Client blocked by the application's Denial of Service protection configuration.", - "Deadline reached before the application responds." - ], - "enum": [ - "ERROR_CODE_UNSPECIFIED", - "ERROR_CODE_DEFAULT", - "ERROR_CODE_OVER_QUOTA", - "ERROR_CODE_DOS_API_DENIAL", - "ERROR_CODE_TIMEOUT" - ] - }, - "mimeType": { - "description": "MIME type of file. Defaults to text/html.", - "type": "string" - }, - "staticFile": { - "description": "Static file content to be served for this error.", - "type": "string" - } - }, - "id": "ErrorHandler" - }, - "SslSettings": { - "description": "SSL configuration for a DomainMapping resource.", - "type": "object", - "properties": { - "certificateId": { - "description": "ID of the AuthorizedCertificate resource configuring SSL for the application. Clearing this field will remove SSL support. Example: 12345.", - "type": "string" - } - }, - "id": "SslSettings" - }, - "OperationMetadataV1": { - "description": "Metadata for the given google.longrunning.Operation.", - "type": "object", - "properties": { - "warning": { - "description": "Durable messages that persist on every operation poll. @OutputOnly", - "type": "array", - "items": { - "type": "string" - } - }, - "insertTime": { - "description": "Time that this operation was created.@OutputOnly", - "format": "google-datetime", - "type": "string" - }, - "user": { - "description": "User who requested this operation.@OutputOnly", - "type": "string" - }, - "target": { - "description": "Name of the resource that this operation is acting on. Example: apps/myapp/services/default.@OutputOnly", - "type": "string" - }, - "ephemeralMessage": { - "description": "Ephemeral message that may change every time the operation is polled. @OutputOnly", - "type": "string" - }, - "method": { - "description": "API method that initiated this operation. Example: google.appengine.v1.Versions.CreateVersion.@OutputOnly", - "type": "string" - }, - "endTime": { - "description": "Time that this operation completed.@OutputOnly", - "format": "google-datetime", - "type": "string" - } - }, - "id": "OperationMetadataV1" + "type": "object" }, "Application": { "description": "An Application resource contains the top-level configuration of an App Engine application.", - "type": "object", + "id": "Application", "properties": { - "featureSettings": { - "description": "The feature specific settings to be used in the application.", - "$ref": "FeatureSettings" - }, - "iap": { - "$ref": "IdentityAwareProxy" - }, "authDomain": { "description": "Google Apps authentication domain that controls which users can access this application.Defaults to open access for any Google Account.", "type": "string" @@ -1193,106 +1676,621 @@ "description": "Google Cloud Storage bucket that can be used by this application to store content.@OutputOnly", "type": "string" }, + "defaultCookieExpiration": { + "description": "Cookie expiration policy for this application.", + "format": "google-duration", + "type": "string" + }, + "defaultHostname": { + "description": "Hostname used to reach this application, as resolved by App Engine.@OutputOnly", + "type": "string" + }, "dispatchRules": { "description": "HTTP path dispatch rules for requests to the application that do not explicitly target a service or version. Rules are order-dependent. Up to 20 dispatch rules can be supported.@OutputOnly", - "type": "array", "items": { "$ref": "UrlDispatchRule" - } + }, + "type": "array" + }, + "featureSettings": { + "$ref": "FeatureSettings", + "description": "The feature specific settings to be used in the application." }, "gcrDomain": { "description": "The Google Container Registry domain used for storing managed build docker images for this application.", "type": "string" }, + "iap": { + "$ref": "IdentityAwareProxy" + }, + "id": { + "description": "Identifier of the Application resource. This identifier is equivalent to the project ID of the Google Cloud Platform project where you want to deploy your application. Example: myapp.", + "type": "string" + }, + "locationId": { + "description": "Location from which this application runs. Application instances run out of the data centers in the specified location, which is also where all of the application's end user content is stored.Defaults to us-central.View the list of supported locations (https://cloud.google.com/appengine/docs/locations).", + "type": "string" + }, "name": { "description": "Full path to the Application resource in the API. Example: apps/myapp.@OutputOnly", "type": "string" }, - "id": { - "description": "Identifier of the Application resource. This identifier is equivalent to the project ID of the Google Cloud Platform project where you want to deploy your application. Example: myapp.", - "type": "string" - }, - "defaultCookieExpiration": { - "description": "Cookie expiration policy for this application.", - "format": "google-duration", - "type": "string" - }, - "locationId": { - "description": "Location from which this application will be run. Application instances will run out of data centers in the chosen location, which is also where all of the application's end user content is stored.Defaults to us-central.Options are:us-central - Central USeurope-west - Western Europeus-east1 - Eastern US", - "type": "string" - }, "servingStatus": { - "enumDescriptions": [ - "Serving status is unspecified.", - "Application is serving.", - "Application has been disabled by the user.", - "Application has been disabled by the system." - ], + "description": "Serving status of this application.", "enum": [ "UNSPECIFIED", "SERVING", "USER_DISABLED", "SYSTEM_DISABLED" ], - "description": "Serving status of this application.", - "type": "string" - }, - "defaultHostname": { - "description": "Hostname used to reach this application, as resolved by App Engine.@OutputOnly", + "enumDescriptions": [ + "Serving status is unspecified.", + "Application is serving.", + "Application has been disabled by the user.", + "Application has been disabled by the system." + ], "type": "string" } }, - "id": "Application" + "type": "object" }, - "Network": { - "description": "Extra network settings. Only applicable in the App Engine flexible environment.", - "type": "object", + "AuthorizedCertificate": { + "description": "An SSL certificate that a user has been authorized to administer. A user is authorized to administer any certificate that applies to one of their authorized domains.", + "id": "AuthorizedCertificate", "properties": { - "forwardedPorts": { - "description": "List of ports, or port pairs, to forward from the virtual machine to the application container. Only applicable in the App Engine flexible environment.", - "type": "array", - "items": { - "type": "string" - } + "certificateRawData": { + "$ref": "CertificateRawData", + "description": "The SSL certificate serving the AuthorizedCertificate resource. This must be obtained independently from a certificate authority." }, - "instanceTag": { - "description": "Tag to apply to the VM instance during creation. for Only applicable in the App Engine flexible environment.", + "displayName": { + "description": "The user-specified display name of the certificate. This is not guaranteed to be unique. Example: My Certificate.", "type": "string" }, - "subnetworkName": { - "description": "Google Cloud Platform sub-network where the virtual machines are created. Specify the short name, not the resource path.If a subnetwork name is specified, a network name will also be required unless it is for the default network.\nIf the network the VM instance is being created in is a Legacy network, then the IP address is allocated from the IPv4Range.\nIf the network the VM instance is being created in is an auto Subnet Mode Network, then only network name should be specified (not the subnetwork_name) and the IP address is created from the IPCidrRange of the subnetwork that exists in that zone for that network.\nIf the network the VM instance is being created in is a custom Subnet Mode Network, then the subnetwork_name must be specified and the IP address is created from the IPCidrRange of the subnetwork.If specified, the subnetwork must exist in the same region as the App Engine flexible environment application.", + "domainMappingsCount": { + "description": "Aggregate count of the domain mappings with this certificate mapped. This count includes domain mappings on applications for which the user does not have VIEWER permissions.Only returned by GET or LIST requests when specifically requested by the view=FULL_CERTIFICATE option.@OutputOnly", + "format": "int32", + "type": "integer" + }, + "domainNames": { + "description": "Topmost applicable domains of this certificate. This certificate applies to these domains and their subdomains. Example: example.com.@OutputOnly", + "items": { + "type": "string" + }, + "type": "array" + }, + "expireTime": { + "description": "The time when this certificate expires. To update the renewal time on this certificate, upload an SSL certificate with a different expiration time using AuthorizedCertificates.UpdateAuthorizedCertificate.@OutputOnly", + "format": "google-datetime", + "type": "string" + }, + "id": { + "description": "Relative name of the certificate. This is a unique value autogenerated on AuthorizedCertificate resource creation. Example: 12345.@OutputOnly", "type": "string" }, "name": { - "description": "Google Compute Engine network where the virtual machines are created. Specify the short name, not the resource path.Defaults to default.", + "description": "Full path to the AuthorizedCertificate resource in the API. Example: apps/myapp/authorizedCertificates/12345.@OutputOnly", + "type": "string" + }, + "visibleDomainMappings": { + "description": "The full paths to user visible Domain Mapping resources that have this certificate mapped. Example: apps/myapp/domainMappings/example.com.This may not represent the full list of mapped domain mappings if the user does not have VIEWER permissions on all of the applications that have this certificate mapped. See domain_mappings_count for a complete count.Only returned by GET or LIST requests when specifically requested by the view=FULL_CERTIFICATE option.@OutputOnly", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "AuthorizedDomain": { + "description": "A domain that a user has been authorized to administer. To authorize use of a domain, verify ownership via Webmaster Central (https://www.google.com/webmasters/verification/home).", + "id": "AuthorizedDomain", + "properties": { + "id": { + "description": "Fully qualified domain name of the domain authorized for use. Example: example.com.", + "type": "string" + }, + "name": { + "description": "Full path to the AuthorizedDomain resource in the API. Example: apps/myapp/authorizedDomains/example.com.@OutputOnly", "type": "string" } }, - "id": "Network" + "type": "object" + }, + "AutomaticScaling": { + "description": "Automatic scaling is based on request rate, response latencies, and other application metrics.", + "id": "AutomaticScaling", + "properties": { + "coolDownPeriod": { + "description": "Amount of time that the Autoscaler (https://cloud.google.com/compute/docs/autoscaler/) should wait between changes to the number of virtual machines. Only applicable in the App Engine flexible environment.", + "format": "google-duration", + "type": "string" + }, + "cpuUtilization": { + "$ref": "CpuUtilization", + "description": "Target scaling by CPU usage." + }, + "diskUtilization": { + "$ref": "DiskUtilization", + "description": "Target scaling by disk usage." + }, + "maxConcurrentRequests": { + "description": "Number of concurrent requests an automatic scaling instance can accept before the scheduler spawns a new instance.Defaults to a runtime-specific value.", + "format": "int32", + "type": "integer" + }, + "maxIdleInstances": { + "description": "Maximum number of idle instances that should be maintained for this version.", + "format": "int32", + "type": "integer" + }, + "maxPendingLatency": { + "description": "Maximum amount of time that a request should wait in the pending queue before starting a new instance to handle it.", + "format": "google-duration", + "type": "string" + }, + "maxTotalInstances": { + "description": "Maximum number of instances that should be started to handle requests for this version.", + "format": "int32", + "type": "integer" + }, + "minIdleInstances": { + "description": "Minimum number of idle instances that should be maintained for this version. Only applicable for the default version of a service.", + "format": "int32", + "type": "integer" + }, + "minPendingLatency": { + "description": "Minimum amount of time a request should wait in the pending queue before starting a new instance to handle it.", + "format": "google-duration", + "type": "string" + }, + "minTotalInstances": { + "description": "Minimum number of running instances that should be maintained for this version.", + "format": "int32", + "type": "integer" + }, + "networkUtilization": { + "$ref": "NetworkUtilization", + "description": "Target scaling by network usage." + }, + "requestUtilization": { + "$ref": "RequestUtilization", + "description": "Target scaling by request utilization." + }, + "standardSchedulerSettings": { + "$ref": "StandardSchedulerSettings", + "description": "Scheduler settings for standard environment." + } + }, + "type": "object" + }, + "BasicScaling": { + "description": "A service with basic scaling will create an instance when the application receives a request. The instance will be turned down when the app becomes idle. Basic scaling is ideal for work that is intermittent or driven by user activity.", + "id": "BasicScaling", + "properties": { + "idleTimeout": { + "description": "Duration of time after the last request that an instance must wait before the instance is shut down.", + "format": "google-duration", + "type": "string" + }, + "maxInstances": { + "description": "Maximum number of instances to create for this version.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "BatchUpdateIngressRulesRequest": { + "description": "Request message for Firewall.BatchUpdateIngressRules.", + "id": "BatchUpdateIngressRulesRequest", + "properties": { + "ingressRules": { + "description": "A list of FirewallRules to replace the existing set.", + "items": { + "$ref": "FirewallRule" + }, + "type": "array" + } + }, + "type": "object" + }, + "BatchUpdateIngressRulesResponse": { + "description": "Response message for Firewall.UpdateAllIngressRules.", + "id": "BatchUpdateIngressRulesResponse", + "properties": { + "ingressRules": { + "description": "The full list of ingress FirewallRules for this application.", + "items": { + "$ref": "FirewallRule" + }, + "type": "array" + } + }, + "type": "object" + }, + "CertificateRawData": { + "description": "An SSL certificate obtained from a certificate authority.", + "id": "CertificateRawData", + "properties": { + "privateKey": { + "description": "Unencrypted PEM encoded RSA private key. This field is set once on certificate creation and then encrypted. The key size must be 2048 bits or fewer. Must include the header and footer. Example: \u003cpre\u003e -----BEGIN RSA PRIVATE KEY----- \u003cunencrypted_key_value\u003e -----END RSA PRIVATE KEY----- \u003c/pre\u003e @InputOnly", + "type": "string" + }, + "publicCertificate": { + "description": "PEM encoded x.509 public key certificate. This field is set once on certificate creation. Must include the header and footer. Example: \u003cpre\u003e -----BEGIN CERTIFICATE----- \u003ccertificate_value\u003e -----END CERTIFICATE----- \u003c/pre\u003e", + "type": "string" + } + }, + "type": "object" + }, + "CloudBuildOptions": { + "description": "Options for the build operations performed as a part of the version deployment. Only applicable for App Engine flexible environment when creating a version using source code directly.", + "id": "CloudBuildOptions", + "properties": { + "appYamlPath": { + "description": "Path to the yaml file used in deployment, used to determine runtime configuration details.Required for flexible environment builds.See https://cloud.google.com/appengine/docs/standard/python/config/appref for more details.", + "type": "string" + }, + "cloudBuildTimeout": { + "description": "The Cloud Build timeout used as part of any dependent builds performed by version creation. Defaults to 10 minutes.", + "format": "google-duration", + "type": "string" + } + }, + "type": "object" + }, + "ContainerInfo": { + "description": "Docker image that is used to create a container and start a VM instance for the version that you deploy. Only applicable for instances running in the App Engine flexible environment.", + "id": "ContainerInfo", + "properties": { + "image": { + "description": "URI to the hosted container image in Google Container Registry. The URI must be fully qualified and include a tag or digest. Examples: \"gcr.io/my-project/image:tag\" or \"gcr.io/my-project/image@digest\"", + "type": "string" + } + }, + "type": "object" + }, + "CpuUtilization": { + "description": "Target scaling by CPU usage.", + "id": "CpuUtilization", + "properties": { + "aggregationWindowLength": { + "description": "Period of time over which CPU utilization is calculated.", + "format": "google-duration", + "type": "string" + }, + "targetUtilization": { + "description": "Target CPU utilization ratio to maintain when scaling. Must be between 0 and 1.", + "format": "double", + "type": "number" + } + }, + "type": "object" + }, + "CreateVersionMetadataV1": { + "description": "Metadata for the given google.longrunning.Operation during a google.appengine.v1.CreateVersionRequest.", + "id": "CreateVersionMetadataV1", + "properties": { + "cloudBuildId": { + "description": "The Cloud Build ID if one was created as part of the version create. @OutputOnly", + "type": "string" + } + }, + "type": "object" + }, + "CreateVersionMetadataV1Alpha": { + "description": "Metadata for the given google.longrunning.Operation during a google.appengine.v1alpha.CreateVersionRequest.", + "id": "CreateVersionMetadataV1Alpha", + "properties": { + "cloudBuildId": { + "description": "The Cloud Build ID if one was created as part of the version create. @OutputOnly", + "type": "string" + } + }, + "type": "object" + }, + "CreateVersionMetadataV1Beta": { + "description": "Metadata for the given google.longrunning.Operation during a google.appengine.v1beta.CreateVersionRequest.", + "id": "CreateVersionMetadataV1Beta", + "properties": { + "cloudBuildId": { + "description": "The Cloud Build ID if one was created as part of the version create. @OutputOnly", + "type": "string" + } + }, + "type": "object" + }, + "DebugInstanceRequest": { + "description": "Request message for Instances.DebugInstance.", + "id": "DebugInstanceRequest", + "properties": { + "sshKey": { + "description": "Public SSH key to add to the instance. Examples:\n[USERNAME]:ssh-rsa [KEY_VALUE] [USERNAME]\n[USERNAME]:ssh-rsa [KEY_VALUE] google-ssh {\"userName\":\"[USERNAME]\",\"expireOn\":\"[EXPIRE_TIME]\"}For more information, see Adding and Removing SSH Keys (https://cloud.google.com/compute/docs/instances/adding-removing-ssh-keys).", + "type": "string" + } + }, + "type": "object" + }, + "Deployment": { + "description": "Code and application artifacts used to deploy a version to App Engine.", + "id": "Deployment", + "properties": { + "cloudBuildOptions": { + "$ref": "CloudBuildOptions", + "description": "Options for any Google Cloud Container Builder builds created as a part of this deployment.Note that this is orthogonal to the build parameter, where the deployment depends on an already existing cloud build. These options will only be used if a new build is created, such as when deploying to the App Engine flexible environment using files or zip." + }, + "container": { + "$ref": "ContainerInfo", + "description": "The Docker image for the container that runs the version. Only applicable for instances running in the App Engine flexible environment." + }, + "files": { + "additionalProperties": { + "$ref": "FileInfo" + }, + "description": "Manifest of the files stored in Google Cloud Storage that are included as part of this version. All files must be readable using the credentials supplied with this call.", + "type": "object" + }, + "zip": { + "$ref": "ZipInfo", + "description": "The zip file for this deployment, if this is a zip deployment." + } + }, + "type": "object" + }, + "DiskUtilization": { + "description": "Target scaling by disk usage. Only applicable in the App Engine flexible environment.", + "id": "DiskUtilization", + "properties": { + "targetReadBytesPerSecond": { + "description": "Target bytes read per second.", + "format": "int32", + "type": "integer" + }, + "targetReadOpsPerSecond": { + "description": "Target ops read per seconds.", + "format": "int32", + "type": "integer" + }, + "targetWriteBytesPerSecond": { + "description": "Target bytes written per second.", + "format": "int32", + "type": "integer" + }, + "targetWriteOpsPerSecond": { + "description": "Target ops written per second.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "DomainMapping": { + "description": "A domain serving an App Engine application.", + "id": "DomainMapping", + "properties": { + "id": { + "description": "Relative name of the domain serving the application. Example: example.com.", + "type": "string" + }, + "name": { + "description": "Full path to the DomainMapping resource in the API. Example: apps/myapp/domainMapping/example.com.@OutputOnly", + "type": "string" + }, + "resourceRecords": { + "description": "The resource records required to configure this domain mapping. These records must be added to the domain's DNS configuration in order to serve the application via this domain mapping.@OutputOnly", + "items": { + "$ref": "ResourceRecord" + }, + "type": "array" + }, + "sslSettings": { + "$ref": "SslSettings", + "description": "SSL configuration for this domain. If unconfigured, this domain will not serve with SSL." + } + }, + "type": "object" + }, + "Empty": { + "description": "A generic empty message that you can re-use to avoid defining duplicated empty messages in your APIs. A typical example is to use it as the request or the response type of an API method. For instance:\nservice Foo {\n rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty);\n}\nThe JSON representation for Empty is empty JSON object {}.", + "id": "Empty", + "properties": {}, + "type": "object" + }, + "EndpointsApiService": { + "description": "Cloud Endpoints (https://cloud.google.com/endpoints) configuration. The Endpoints API Service provides tooling for serving Open API and gRPC endpoints via an NGINX proxy. Only valid for App Engine Flexible environment deployments.The fields here refer to the name and configuration id of a \"service\" resource in the Service Management API (https://cloud.google.com/service-management/overview).", + "id": "EndpointsApiService", + "properties": { + "configId": { + "description": "Endpoints service configuration id as specified by the Service Management API. For example \"2016-09-19r1\"", + "type": "string" + }, + "name": { + "description": "Endpoints service name which is the name of the \"service\" resource in the Service Management API. For example \"myapi.endpoints.myproject.cloud.goog\"", + "type": "string" + } + }, + "type": "object" + }, + "ErrorHandler": { + "description": "Custom static error page to be served when an error occurs.", + "id": "ErrorHandler", + "properties": { + "errorCode": { + "description": "Error condition this handler applies to.", + "enum": [ + "ERROR_CODE_UNSPECIFIED", + "ERROR_CODE_DEFAULT", + "ERROR_CODE_OVER_QUOTA", + "ERROR_CODE_DOS_API_DENIAL", + "ERROR_CODE_TIMEOUT" + ], + "enumDescriptions": [ + "Not specified. ERROR_CODE_DEFAULT is assumed.", + "All other error types.", + "Application has exceeded a resource quota.", + "Client blocked by the application's Denial of Service protection configuration.", + "Deadline reached before the application responds." + ], + "type": "string" + }, + "mimeType": { + "description": "MIME type of file. Defaults to text/html.", + "type": "string" + }, + "staticFile": { + "description": "Static file content to be served for this error.", + "type": "string" + } + }, + "type": "object" + }, + "FeatureSettings": { + "description": "The feature specific settings to be used in the application. These define behaviors that are user configurable.", + "id": "FeatureSettings", + "properties": { + "splitHealthChecks": { + "description": "Boolean value indicating if split health checks should be used instead of the legacy health checks. At an app.yaml level, this means defaulting to 'readiness_check' and 'liveness_check' values instead of 'health_check' ones. Once the legacy 'health_check' behavior is deprecated, and this value is always true, this setting can be removed.", + "type": "boolean" + } + }, + "type": "object" + }, + "FileInfo": { + "description": "Single source file that is part of the version to be deployed. Each source file that is deployed must be specified separately.", + "id": "FileInfo", + "properties": { + "mimeType": { + "description": "The MIME type of the file.Defaults to the value from Google Cloud Storage.", + "type": "string" + }, + "sha1Sum": { + "description": "The SHA1 hash of the file, in hex.", + "type": "string" + }, + "sourceUrl": { + "description": "URL source to use to fetch this file. Must be a URL to a resource in Google Cloud Storage in the form 'http(s)://storage.googleapis.com/\u003cbucket\u003e/\u003cobject\u003e'.", + "type": "string" + } + }, + "type": "object" + }, + "FirewallRule": { + "description": "A single firewall rule that is evaluated against incoming traffic and provides an action to take on matched requests.", + "id": "FirewallRule", + "properties": { + "action": { + "description": "The action to take on matched requests.", + "enum": [ + "UNSPECIFIED_ACTION", + "ALLOW", + "DENY" + ], + "enumDescriptions": [ + "", + "Matching requests are allowed.", + "Matching requests are denied." + ], + "type": "string" + }, + "description": { + "description": "An optional string description of this rule. This field has a maximum length of 100 characters.", + "type": "string" + }, + "priority": { + "description": "A positive integer between 1, Int32.MaxValue-1 that defines the order of rule evaluation. Rules with the lowest priority are evaluated first.A default rule at priority Int32.MaxValue matches all IPv4 and IPv6 traffic when no previous rule matches. Only the action of this rule can be modified by the user.", + "format": "int32", + "type": "integer" + }, + "sourceRange": { + "description": "IP address or range, defined using CIDR notation, of requests that this rule applies to. You can use the wildcard character \"*\" to match all IPs equivalent to \"0/0\" and \"::/0\" together. Examples: 192.168.1.1 or 192.168.0.0/16 or 2001:db8::/32 or 2001:0db8:0000:0042:0000:8a2e:0370:7334.\u003cp\u003eTruncation will be silently performed on addresses which are not properly truncated. For example, 1.2.3.4/24 is accepted as the same address as 1.2.3.0/24. Similarly, for IPv6, 2001:db8::1/32 is accepted as the same address as 2001:db8::/32.", + "type": "string" + } + }, + "type": "object" + }, + "HealthCheck": { + "description": "Health checking configuration for VM instances. Unhealthy instances are killed and replaced with new instances. Only applicable for instances in App Engine flexible environment.", + "id": "HealthCheck", + "properties": { + "checkInterval": { + "description": "Interval between health checks.", + "format": "google-duration", + "type": "string" + }, + "disableHealthCheck": { + "description": "Whether to explicitly disable health checks for this instance.", + "type": "boolean" + }, + "healthyThreshold": { + "description": "Number of consecutive successful health checks required before receiving traffic.", + "format": "uint32", + "type": "integer" + }, + "host": { + "description": "Host header to send when performing an HTTP health check. Example: \"myapp.appspot.com\"", + "type": "string" + }, + "restartThreshold": { + "description": "Number of consecutive failed health checks required before an instance is restarted.", + "format": "uint32", + "type": "integer" + }, + "timeout": { + "description": "Time before the health check is considered failed.", + "format": "google-duration", + "type": "string" + }, + "unhealthyThreshold": { + "description": "Number of consecutive failed health checks required before removing traffic.", + "format": "uint32", + "type": "integer" + } + }, + "type": "object" + }, + "IdentityAwareProxy": { + "description": "Identity-Aware Proxy", + "id": "IdentityAwareProxy", + "properties": { + "enabled": { + "description": "Whether the serving infrastructure will authenticate and authorize all incoming requests.If true, the oauth2_client_id and oauth2_client_secret fields must be non-empty.", + "type": "boolean" + }, + "oauth2ClientId": { + "description": "OAuth2 client ID to use for the authentication flow.", + "type": "string" + }, + "oauth2ClientSecret": { + "description": "OAuth2 client secret to use for the authentication flow.For security reasons, this value cannot be retrieved via the API. Instead, the SHA-256 hash of the value is returned in the oauth2_client_secret_sha256 field.@InputOnly", + "type": "string" + }, + "oauth2ClientSecretSha256": { + "description": "Hex-encoded SHA-256 hash of the client secret.@OutputOnly", + "type": "string" + } + }, + "type": "object" }, "Instance": { "description": "An Instance resource is the computing unit that App Engine uses to automatically scale an application.", - "type": "object", + "id": "Instance", "properties": { - "vmName": { - "description": "Name of the virtual machine where this instance lives. Only applicable for instances in App Engine flexible environment.@OutputOnly", + "appEngineRelease": { + "description": "App Engine release this instance is running on.@OutputOnly", "type": "string" }, - "qps": { - "description": "Average queries per second (QPS) over the last minute.@OutputOnly", - "format": "float", - "type": "number" - }, - "vmId": { - "description": "Virtual machine ID of this instance. Only applicable for instances in App Engine flexible environment.@OutputOnly", - "type": "string" - }, - "vmZoneName": { - "description": "Zone where the virtual machine is located. Only applicable for instances in App Engine flexible environment.@OutputOnly", - "type": "string" - }, - "name": { - "description": "Full path to the Instance resource in the API. Example: apps/myapp/services/default/versions/v1/instances/instance-1.@OutputOnly", + "availability": { + "description": "Availability of the instance.@OutputOnly", + "enum": [ + "UNSPECIFIED", + "RESIDENT", + "DYNAMIC" + ], + "enumDescriptions": [ + "", + "", + "" + ], "type": "string" }, "averageLatency": { @@ -1300,8 +2298,13 @@ "format": "int32", "type": "integer" }, - "vmIp": { - "description": "The IP address of this instance. Only applicable for instances in App Engine flexible environment.@OutputOnly", + "errors": { + "description": "Number of errors since this instance was started.@OutputOnly", + "format": "int32", + "type": "integer" + }, + "id": { + "description": "Relative name of the instance within the version. Example: instance-1.@OutputOnly", "type": "string" }, "memoryUsage": { @@ -1309,33 +2312,20 @@ "format": "int64", "type": "string" }, - "id": { - "description": "Relative name of the instance within the version. Example: instance-1.@OutputOnly", + "name": { + "description": "Full path to the Instance resource in the API. Example: apps/myapp/services/default/versions/v1/instances/instance-1.@OutputOnly", "type": "string" }, - "errors": { - "description": "Number of errors since this instance was started.@OutputOnly", + "qps": { + "description": "Average queries per second (QPS) over the last minute.@OutputOnly", + "format": "float", + "type": "number" + }, + "requests": { + "description": "Number of requests since this instance was started.@OutputOnly", "format": "int32", "type": "integer" }, - "vmStatus": { - "description": "Status of the virtual machine where this instance lives. Only applicable for instances in App Engine flexible environment.@OutputOnly", - "type": "string" - }, - "availability": { - "description": "Availability of the instance.@OutputOnly", - "type": "string", - "enumDescriptions": [ - "", - "", - "" - ], - "enum": [ - "UNSPECIFIED", - "RESIDENT", - "DYNAMIC" - ] - }, "startTime": { "description": "Time that this instance was started.@OutputOnly", "format": "google-datetime", @@ -1345,46 +2335,224 @@ "description": "Whether this instance is in debug mode. Only applicable for instances in App Engine flexible environment.@OutputOnly", "type": "boolean" }, - "requests": { - "description": "Number of requests since this instance was started.@OutputOnly", - "format": "int32", - "type": "integer" + "vmId": { + "description": "Virtual machine ID of this instance. Only applicable for instances in App Engine flexible environment.@OutputOnly", + "type": "string" }, - "appEngineRelease": { - "description": "App Engine release this instance is running on.@OutputOnly", + "vmIp": { + "description": "The IP address of this instance. Only applicable for instances in App Engine flexible environment.@OutputOnly", + "type": "string" + }, + "vmName": { + "description": "Name of the virtual machine where this instance lives. Only applicable for instances in App Engine flexible environment.@OutputOnly", + "type": "string" + }, + "vmStatus": { + "description": "Status of the virtual machine where this instance lives. Only applicable for instances in App Engine flexible environment.@OutputOnly", + "type": "string" + }, + "vmZoneName": { + "description": "Zone where the virtual machine is located. Only applicable for instances in App Engine flexible environment.@OutputOnly", "type": "string" } }, - "id": "Instance" + "type": "object" + }, + "Library": { + "description": "Third-party Python runtime library that is required by the application.", + "id": "Library", + "properties": { + "name": { + "description": "Name of the library. Example: \"django\".", + "type": "string" + }, + "version": { + "description": "Version of the library to select, or \"latest\".", + "type": "string" + } + }, + "type": "object" + }, + "ListAuthorizedCertificatesResponse": { + "description": "Response message for AuthorizedCertificates.ListAuthorizedCertificates.", + "id": "ListAuthorizedCertificatesResponse", + "properties": { + "certificates": { + "description": "The SSL certificates the user is authorized to administer.", + "items": { + "$ref": "AuthorizedCertificate" + }, + "type": "array" + }, + "nextPageToken": { + "description": "Continuation token for fetching the next page of results.", + "type": "string" + } + }, + "type": "object" + }, + "ListAuthorizedDomainsResponse": { + "description": "Response message for AuthorizedDomains.ListAuthorizedDomains.", + "id": "ListAuthorizedDomainsResponse", + "properties": { + "domains": { + "description": "The authorized domains belonging to the user.", + "items": { + "$ref": "AuthorizedDomain" + }, + "type": "array" + }, + "nextPageToken": { + "description": "Continuation token for fetching the next page of results.", + "type": "string" + } + }, + "type": "object" + }, + "ListDomainMappingsResponse": { + "description": "Response message for DomainMappings.ListDomainMappings.", + "id": "ListDomainMappingsResponse", + "properties": { + "domainMappings": { + "description": "The domain mappings for the application.", + "items": { + "$ref": "DomainMapping" + }, + "type": "array" + }, + "nextPageToken": { + "description": "Continuation token for fetching the next page of results.", + "type": "string" + } + }, + "type": "object" + }, + "ListIngressRulesResponse": { + "description": "Response message for Firewall.ListIngressRules.", + "id": "ListIngressRulesResponse", + "properties": { + "ingressRules": { + "description": "The ingress FirewallRules for this application.", + "items": { + "$ref": "FirewallRule" + }, + "type": "array" + }, + "nextPageToken": { + "description": "Continuation token for fetching the next page of results.", + "type": "string" + } + }, + "type": "object" + }, + "ListInstancesResponse": { + "description": "Response message for Instances.ListInstances.", + "id": "ListInstancesResponse", + "properties": { + "instances": { + "description": "The instances belonging to the requested version.", + "items": { + "$ref": "Instance" + }, + "type": "array" + }, + "nextPageToken": { + "description": "Continuation token for fetching the next page of results.", + "type": "string" + } + }, + "type": "object" + }, + "ListLocationsResponse": { + "description": "The response message for Locations.ListLocations.", + "id": "ListLocationsResponse", + "properties": { + "locations": { + "description": "A list of locations that matches the specified filter in the request.", + "items": { + "$ref": "Location" + }, + "type": "array" + }, + "nextPageToken": { + "description": "The standard List next-page token.", + "type": "string" + } + }, + "type": "object" + }, + "ListOperationsResponse": { + "description": "The response message for Operations.ListOperations.", + "id": "ListOperationsResponse", + "properties": { + "nextPageToken": { + "description": "The standard List next-page token.", + "type": "string" + }, + "operations": { + "description": "A list of operations that matches the specified filter in the request.", + "items": { + "$ref": "Operation" + }, + "type": "array" + } + }, + "type": "object" + }, + "ListServicesResponse": { + "description": "Response message for Services.ListServices.", + "id": "ListServicesResponse", + "properties": { + "nextPageToken": { + "description": "Continuation token for fetching the next page of results.", + "type": "string" + }, + "services": { + "description": "The services belonging to the requested application.", + "items": { + "$ref": "Service" + }, + "type": "array" + } + }, + "type": "object" + }, + "ListVersionsResponse": { + "description": "Response message for Versions.ListVersions.", + "id": "ListVersionsResponse", + "properties": { + "nextPageToken": { + "description": "Continuation token for fetching the next page of results.", + "type": "string" + }, + "versions": { + "description": "The versions belonging to the requested service.", + "items": { + "$ref": "Version" + }, + "type": "array" + } + }, + "type": "object" }, "LivenessCheck": { "description": "Health checking configuration for VM instances. Unhealthy instances are killed and replaced with new instances.", - "type": "object", + "id": "LivenessCheck", "properties": { - "successThreshold": { - "description": "Number of consecutive successful checks required before considering the VM healthy.", - "format": "uint32", - "type": "integer" - }, - "host": { - "description": "Host header to send when performing a HTTP Liveness check. Example: \"myapp.appspot.com\"", - "type": "string" - }, "checkInterval": { "description": "Interval between health checks.", "format": "google-duration", "type": "string" }, - "timeout": { - "description": "Time before the check is considered failed.", - "format": "google-duration", - "type": "string" - }, "failureThreshold": { "description": "Number of consecutive failed checks required before considering the VM unhealthy.", "format": "uint32", "type": "integer" }, + "host": { + "description": "Host header to send when performing a HTTP Liveness check. Example: \"myapp.appspot.com\"", + "type": "string" + }, "initialDelay": { "description": "The initial delay before starting to execute the checks.", "format": "google-duration", @@ -1393,28 +2561,35 @@ "path": { "description": "The request path.", "type": "string" + }, + "successThreshold": { + "description": "Number of consecutive successful checks required before considering the VM healthy.", + "format": "uint32", + "type": "integer" + }, + "timeout": { + "description": "Time before the check is considered failed.", + "format": "google-duration", + "type": "string" } }, - "id": "LivenessCheck" - }, - "BatchUpdateIngressRulesRequest": { - "description": "Request message for Firewall.BatchUpdateIngressRules.", - "type": "object", - "properties": { - "ingressRules": { - "description": "A list of FirewallRules to replace the existing set.", - "type": "array", - "items": { - "$ref": "FirewallRule" - } - } - }, - "id": "BatchUpdateIngressRulesRequest" + "type": "object" }, "Location": { "description": "A resource that represents Google Cloud Platform location.", - "type": "object", + "id": "Location", "properties": { + "displayName": { + "description": "The friendly name for this location, typically a nearby city name. For example, \"Tokyo\".", + "type": "string" + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Cross-service attributes for the location. For example\n{\"cloud.googleapis.com/region\": \"us-east1\"}\n", + "type": "object" + }, "locationId": { "description": "The canonical id for this location. For example: \"us-east1\".", "type": "string" @@ -1427,34 +2602,70 @@ "description": "Service-specific metadata. For example the available capacity at the given location.", "type": "object" }, - "labels": { - "additionalProperties": { - "type": "string" - }, - "description": "Cross-service attributes for the location. For example\n{\"cloud.googleapis.com/region\": \"us-east1\"}\n", - "type": "object" - }, "name": { "description": "Resource name for the location, which may vary between implementations. For example: \"projects/example-project/locations/us-east1\"", "type": "string" } }, - "id": "Location" + "type": "object" + }, + "LocationMetadata": { + "description": "Metadata for the given google.cloud.location.Location.", + "id": "LocationMetadata", + "properties": { + "flexibleEnvironmentAvailable": { + "description": "App Engine flexible environment is available in the given location.@OutputOnly", + "type": "boolean" + }, + "standardEnvironmentAvailable": { + "description": "App Engine standard environment is available in the given location.@OutputOnly", + "type": "boolean" + } + }, + "type": "object" + }, + "ManualScaling": { + "description": "A service with manual scaling runs continuously, allowing you to perform complex initialization and rely on the state of its memory over time.", + "id": "ManualScaling", + "properties": { + "instances": { + "description": "Number of instances to assign to the service at the start. This number can later be altered by using the Modules API (https://cloud.google.com/appengine/docs/python/modules/functions) set_num_instances() function.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "Network": { + "description": "Extra network settings. Only applicable in the App Engine flexible environment.", + "id": "Network", + "properties": { + "forwardedPorts": { + "description": "List of ports, or port pairs, to forward from the virtual machine to the application container. Only applicable in the App Engine flexible environment.", + "items": { + "type": "string" + }, + "type": "array" + }, + "instanceTag": { + "description": "Tag to apply to the instance during creation. Only applicable in the App Engine flexible environment.", + "type": "string" + }, + "name": { + "description": "Google Compute Engine network where the virtual machines are created. Specify the short name, not the resource path.Defaults to default.", + "type": "string" + }, + "subnetworkName": { + "description": "Google Cloud Platform sub-network where the virtual machines are created. Specify the short name, not the resource path.If a subnetwork name is specified, a network name will also be required unless it is for the default network.\nIf the network that the instance is being created in is a Legacy network, then the IP address is allocated from the IPv4Range.\nIf the network that the instance is being created in is an auto Subnet Mode Network, then only network name should be specified (not the subnetwork_name) and the IP address is created from the IPCidrRange of the subnetwork that exists in that zone for that network.\nIf the network that the instance is being created in is a custom Subnet Mode Network, then the subnetwork_name must be specified and the IP address is created from the IPCidrRange of the subnetwork.If specified, the subnetwork must exist in the same region as the App Engine flexible environment application.", + "type": "string" + } + }, + "type": "object" }, "NetworkUtilization": { "description": "Target scaling by network usage. Only applicable in the App Engine flexible environment.", - "type": "object", + "id": "NetworkUtilization", "properties": { - "targetSentBytesPerSecond": { - "description": "Target bytes sent per second.", - "format": "int32", - "type": "integer" - }, - "targetSentPacketsPerSecond": { - "description": "Target packets sent per second.", - "format": "int32", - "type": "integer" - }, "targetReceivedBytesPerSecond": { "description": "Target bytes received per second.", "format": "int32", @@ -1464,54 +2675,255 @@ "description": "Target packets received per second.", "format": "int32", "type": "integer" - } - }, - "id": "NetworkUtilization" - }, - "HealthCheck": { - "description": "Health checking configuration for VM instances. Unhealthy instances are killed and replaced with new instances. Only applicable for instances in App Engine flexible environment.", - "type": "object", - "properties": { - "checkInterval": { - "description": "Interval between health checks.", - "format": "google-duration", - "type": "string" }, - "timeout": { - "description": "Time before the health check is considered failed.", - "format": "google-duration", - "type": "string" - }, - "unhealthyThreshold": { - "description": "Number of consecutive failed health checks required before removing traffic.", - "format": "uint32", + "targetSentBytesPerSecond": { + "description": "Target bytes sent per second.", + "format": "int32", "type": "integer" }, - "disableHealthCheck": { - "description": "Whether to explicitly disable health checks for this instance.", + "targetSentPacketsPerSecond": { + "description": "Target packets sent per second.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "Operation": { + "description": "This resource represents a long-running operation that is the result of a network API call.", + "id": "Operation", + "properties": { + "done": { + "description": "If the value is false, it means the operation is still in progress. If true, the operation is completed, and either error or response is available.", "type": "boolean" }, - "host": { - "description": "Host header to send when performing an HTTP health check. Example: \"myapp.appspot.com\"", + "error": { + "$ref": "Status", + "description": "The error result of the operation in case of failure or cancellation." + }, + "metadata": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "description": "Service-specific metadata associated with the operation. It typically contains progress information and common metadata such as create time. Some services might not provide such metadata. Any method that returns a long-running operation should document the metadata type, if any.", + "type": "object" + }, + "name": { + "description": "The server-assigned name, which is only unique within the same service that originally returns it. If you use the default HTTP mapping, the name should have the format of operations/some/unique/name.", "type": "string" }, - "healthyThreshold": { - "description": "Number of consecutive successful health checks required before receiving traffic.", - "format": "uint32", - "type": "integer" - }, - "restartThreshold": { - "description": "Number of consecutive failed health checks required before an instance is restarted.", - "format": "uint32", - "type": "integer" + "response": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "description": "The normal response of the operation in case of success. If the original method returns no data on success, such as Delete, the response is google.protobuf.Empty. If the original method is standard Get/Create/Update, the response should be the resource. For other methods, the response should have the type XxxResponse, where Xxx is the original method name. For example, if the original method name is TakeSnapshot(), the inferred response type is TakeSnapshotResponse.", + "type": "object" } }, - "id": "HealthCheck" + "type": "object" + }, + "OperationMetadata": { + "description": "Metadata for the given google.longrunning.Operation.", + "id": "OperationMetadata", + "properties": { + "endTime": { + "description": "Timestamp that this operation completed.@OutputOnly", + "format": "google-datetime", + "type": "string" + }, + "insertTime": { + "description": "Timestamp that this operation was created.@OutputOnly", + "format": "google-datetime", + "type": "string" + }, + "method": { + "description": "API method that initiated this operation. Example: google.appengine.v1beta4.Version.CreateVersion.@OutputOnly", + "type": "string" + }, + "operationType": { + "description": "Type of this operation. Deprecated, use method field instead. Example: \"create_version\".@OutputOnly", + "type": "string" + }, + "target": { + "description": "Name of the resource that this operation is acting on. Example: apps/myapp/modules/default.@OutputOnly", + "type": "string" + }, + "user": { + "description": "User who requested this operation.@OutputOnly", + "type": "string" + } + }, + "type": "object" + }, + "OperationMetadataV1": { + "description": "Metadata for the given google.longrunning.Operation.", + "id": "OperationMetadataV1", + "properties": { + "createVersionMetadata": { + "$ref": "CreateVersionMetadataV1" + }, + "endTime": { + "description": "Time that this operation completed.@OutputOnly", + "format": "google-datetime", + "type": "string" + }, + "ephemeralMessage": { + "description": "Ephemeral message that may change every time the operation is polled. @OutputOnly", + "type": "string" + }, + "insertTime": { + "description": "Time that this operation was created.@OutputOnly", + "format": "google-datetime", + "type": "string" + }, + "method": { + "description": "API method that initiated this operation. Example: google.appengine.v1.Versions.CreateVersion.@OutputOnly", + "type": "string" + }, + "target": { + "description": "Name of the resource that this operation is acting on. Example: apps/myapp/services/default.@OutputOnly", + "type": "string" + }, + "user": { + "description": "User who requested this operation.@OutputOnly", + "type": "string" + }, + "warning": { + "description": "Durable messages that persist on every operation poll. @OutputOnly", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "OperationMetadataV1Alpha": { + "description": "Metadata for the given google.longrunning.Operation.", + "id": "OperationMetadataV1Alpha", + "properties": { + "createVersionMetadata": { + "$ref": "CreateVersionMetadataV1Alpha" + }, + "endTime": { + "description": "Time that this operation completed.@OutputOnly", + "format": "google-datetime", + "type": "string" + }, + "ephemeralMessage": { + "description": "Ephemeral message that may change every time the operation is polled. @OutputOnly", + "type": "string" + }, + "insertTime": { + "description": "Time that this operation was created.@OutputOnly", + "format": "google-datetime", + "type": "string" + }, + "method": { + "description": "API method that initiated this operation. Example: google.appengine.v1alpha.Versions.CreateVersion.@OutputOnly", + "type": "string" + }, + "target": { + "description": "Name of the resource that this operation is acting on. Example: apps/myapp/services/default.@OutputOnly", + "type": "string" + }, + "user": { + "description": "User who requested this operation.@OutputOnly", + "type": "string" + }, + "warning": { + "description": "Durable messages that persist on every operation poll. @OutputOnly", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "OperationMetadataV1Beta": { + "description": "Metadata for the given google.longrunning.Operation.", + "id": "OperationMetadataV1Beta", + "properties": { + "createVersionMetadata": { + "$ref": "CreateVersionMetadataV1Beta" + }, + "endTime": { + "description": "Time that this operation completed.@OutputOnly", + "format": "google-datetime", + "type": "string" + }, + "ephemeralMessage": { + "description": "Ephemeral message that may change every time the operation is polled. @OutputOnly", + "type": "string" + }, + "insertTime": { + "description": "Time that this operation was created.@OutputOnly", + "format": "google-datetime", + "type": "string" + }, + "method": { + "description": "API method that initiated this operation. Example: google.appengine.v1beta.Versions.CreateVersion.@OutputOnly", + "type": "string" + }, + "target": { + "description": "Name of the resource that this operation is acting on. Example: apps/myapp/services/default.@OutputOnly", + "type": "string" + }, + "user": { + "description": "User who requested this operation.@OutputOnly", + "type": "string" + }, + "warning": { + "description": "Durable messages that persist on every operation poll. @OutputOnly", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "OperationMetadataV1Beta5": { + "description": "Metadata for the given google.longrunning.Operation.", + "id": "OperationMetadataV1Beta5", + "properties": { + "endTime": { + "description": "Timestamp that this operation completed.@OutputOnly", + "format": "google-datetime", + "type": "string" + }, + "insertTime": { + "description": "Timestamp that this operation was created.@OutputOnly", + "format": "google-datetime", + "type": "string" + }, + "method": { + "description": "API method name that initiated this operation. Example: google.appengine.v1beta5.Version.CreateVersion.@OutputOnly", + "type": "string" + }, + "target": { + "description": "Name of the resource that this operation is acting on. Example: apps/myapp/services/default.@OutputOnly", + "type": "string" + }, + "user": { + "description": "User who requested this operation.@OutputOnly", + "type": "string" + } + }, + "type": "object" }, "ReadinessCheck": { "description": "Readiness checking configuration for VM instances. Unhealthy instances are removed from traffic rotation.", - "type": "object", + "id": "ReadinessCheck", "properties": { + "appStartTimeout": { + "description": "A maximum time limit on application initialization, measured from moment the application successfully replies to a healthcheck until it is ready to serve traffic.", + "format": "google-duration", + "type": "string" + }, "checkInterval": { "description": "Interval between health checks.", "format": "google-duration", @@ -1522,36 +2934,165 @@ "format": "uint32", "type": "integer" }, - "timeout": { - "description": "Time before the check is considered failed.", - "format": "google-duration", - "type": "string" - }, - "appStartTimeout": { - "description": "A maximum time limit on application initialization, measured from moment the application successfully replies to a healthcheck until it is ready to serve traffic.", - "format": "google-duration", + "host": { + "description": "Host header to send when performing a HTTP Readiness check. Example: \"myapp.appspot.com\"", "type": "string" }, "path": { "description": "The request path.", "type": "string" }, - "host": { - "description": "Host header to send when performing a HTTP Readiness check. Example: \"myapp.appspot.com\"", - "type": "string" - }, "successThreshold": { "description": "Number of consecutive successful checks required before receiving traffic.", "format": "uint32", "type": "integer" + }, + "timeout": { + "description": "Time before the check is considered failed.", + "format": "google-duration", + "type": "string" } }, - "id": "ReadinessCheck" + "type": "object" + }, + "RepairApplicationRequest": { + "description": "Request message for 'Applications.RepairApplication'.", + "id": "RepairApplicationRequest", + "properties": {}, + "type": "object" + }, + "RequestUtilization": { + "description": "Target scaling by request utilization. Only applicable in the App Engine flexible environment.", + "id": "RequestUtilization", + "properties": { + "targetConcurrentRequests": { + "description": "Target number of concurrent requests.", + "format": "int32", + "type": "integer" + }, + "targetRequestCountPerSecond": { + "description": "Target requests per second.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "ResourceRecord": { + "description": "A DNS resource record.", + "id": "ResourceRecord", + "properties": { + "name": { + "description": "Relative name of the object affected by this record. Only applicable for CNAME records. Example: 'www'.", + "type": "string" + }, + "rrdata": { + "description": "Data for this record. Values vary by record type, as defined in RFC 1035 (section 5) and RFC 1034 (section 3.6.1).", + "type": "string" + }, + "type": { + "description": "Resource record type. Example: AAAA.", + "enum": [ + "RECORD_TYPE_UNSPECIFIED", + "A", + "AAAA", + "CNAME" + ], + "enumDescriptions": [ + "An unknown resource record.", + "An A resource record. Data is an IPv4 address.", + "An AAAA resource record. Data is an IPv6 address.", + "A CNAME resource record. Data is a domain name to be aliased." + ], + "type": "string" + } + }, + "type": "object" + }, + "Resources": { + "description": "Machine resources for a version.", + "id": "Resources", + "properties": { + "cpu": { + "description": "Number of CPU cores needed.", + "format": "double", + "type": "number" + }, + "diskGb": { + "description": "Disk size (GB) needed.", + "format": "double", + "type": "number" + }, + "memoryGb": { + "description": "Memory (GB) needed.", + "format": "double", + "type": "number" + }, + "volumes": { + "description": "User specified volumes.", + "items": { + "$ref": "Volume" + }, + "type": "array" + } + }, + "type": "object" + }, + "ScriptHandler": { + "description": "Executes a script to handle the request that matches the URL pattern.", + "id": "ScriptHandler", + "properties": { + "scriptPath": { + "description": "Path to the script from the application root directory.", + "type": "string" + } + }, + "type": "object" + }, + "Service": { + "description": "A Service resource is a logical component of an application that can share state and communicate in a secure fashion with other services. For example, an application that handles customer requests might include separate services to handle tasks such as backend data analysis or API requests from mobile devices. Each service has a collection of versions that define a specific set of code used to implement the functionality of that service.", + "id": "Service", + "properties": { + "id": { + "description": "Relative name of the service within the application. Example: default.@OutputOnly", + "type": "string" + }, + "name": { + "description": "Full path to the Service resource in the API. Example: apps/myapp/services/default.@OutputOnly", + "type": "string" + }, + "split": { + "$ref": "TrafficSplit", + "description": "Mapping that defines fractional HTTP traffic diversion to different versions within the service." + } + }, + "type": "object" + }, + "SslSettings": { + "description": "SSL configuration for a DomainMapping resource.", + "id": "SslSettings", + "properties": { + "certificateId": { + "description": "ID of the AuthorizedCertificate resource configuring SSL for the application. Clearing this field will remove SSL support. Example: 12345.", + "type": "string" + } + }, + "type": "object" }, "StandardSchedulerSettings": { "description": "Scheduler settings for standard environment.", - "type": "object", + "id": "StandardSchedulerSettings", "properties": { + "maxInstances": { + "description": "Maximum number of instances to run for this version. Set to zero to disable max_instances configuration.", + "format": "int32", + "type": "integer" + }, + "minInstances": { + "description": "Minimum number of instances to run for this version. Set to zero to disable min_instances configuration.", + "format": "int32", + "type": "integer" + }, "targetCpuUtilization": { "description": "Target CPU utilization ratio to maintain when scaling.", "format": "double", @@ -1561,106 +3102,231 @@ "description": "Target throughput utilization ratio to maintain when scaling", "format": "double", "type": "number" + } + }, + "type": "object" + }, + "StaticFilesHandler": { + "description": "Files served directly to the user for a given URL, such as images, CSS stylesheets, or JavaScript source files. Static file handlers describe which files in the application directory are static files, and which URLs serve them.", + "id": "StaticFilesHandler", + "properties": { + "applicationReadable": { + "description": "Whether files should also be uploaded as code data. By default, files declared in static file handlers are uploaded as static data and are only served to end users; they cannot be read by the application. If enabled, uploads are charged against both your code and static data storage resource quotas.", + "type": "boolean" }, - "maxInstances": { - "description": "Maximum number of instances for an app version. Set to zero to disable max_instances configuration.", + "expiration": { + "description": "Time a static file served by this handler should be cached by web proxies and browsers.", + "format": "google-duration", + "type": "string" + }, + "httpHeaders": { + "additionalProperties": { + "type": "string" + }, + "description": "HTTP headers to use for all responses from these URLs.", + "type": "object" + }, + "mimeType": { + "description": "MIME type used to serve all files served by this handler.Defaults to file-specific MIME types, which are derived from each file's filename extension.", + "type": "string" + }, + "path": { + "description": "Path to the static files matched by the URL pattern, from the application root directory. The path can refer to text matched in groupings in the URL pattern.", + "type": "string" + }, + "requireMatchingFile": { + "description": "Whether this handler should match the request if the file referenced by the handler does not exist.", + "type": "boolean" + }, + "uploadPathRegex": { + "description": "Regular expression that matches the file paths for all files that should be referenced by this handler.", + "type": "string" + } + }, + "type": "object" + }, + "Status": { + "description": "The Status type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by gRPC (https://github.com/grpc). The error model is designed to be:\nSimple to use and understand for most users\nFlexible enough to meet unexpected needsOverviewThe Status message contains three pieces of data: error code, error message, and error details. The error code should be an enum value of google.rpc.Code, but it may accept additional error codes if needed. The error message should be a developer-facing English message that helps developers understand and resolve the error. If a localized user-facing error message is needed, put the localized message in the error details or localize it in the client. The optional error details may contain arbitrary information about the error. There is a predefined set of error detail types in the package google.rpc that can be used for common error conditions.Language mappingThe Status message is the logical representation of the error model, but it is not necessarily the actual wire format. When the Status message is exposed in different client libraries and different wire protocols, it can be mapped differently. For example, it will likely be mapped to some exceptions in Java, but more likely mapped to some error codes in C.Other usesThe error model and the Status message can be used in a variety of environments, either with or without APIs, to provide a consistent developer experience across different environments.Example uses of this error model include:\nPartial errors. If a service needs to return partial errors to the client, it may embed the Status in the normal response to indicate the partial errors.\nWorkflow errors. A typical workflow has multiple steps. Each step may have a Status message for error reporting.\nBatch operations. If a client uses batch request and batch response, the Status message should be used directly inside batch response, one for each error sub-response.\nAsynchronous operations. If an API call embeds asynchronous operation results in its response, the status of those operations should be represented directly using the Status message.\nLogging. If some API errors are stored in logs, the message Status could be used directly after any stripping needed for security/privacy reasons.", + "id": "Status", + "properties": { + "code": { + "description": "The status code, which should be an enum value of google.rpc.Code.", "format": "int32", "type": "integer" }, - "minInstances": { - "description": "Minimum number of instances for an app version. Set to zero to disable min_instances configuration.", - "format": "int32", - "type": "integer" + "details": { + "description": "A list of messages that carry the error details. There is a common set of message types for APIs to use.", + "items": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the google.rpc.Status.details field, or localized by the client.", + "type": "string" } }, - "id": "StandardSchedulerSettings" + "type": "object" }, - "DebugInstanceRequest": { - "description": "Request message for Instances.DebugInstance.", - "type": "object", + "TrafficSplit": { + "description": "Traffic routing configuration for versions within a single service. Traffic splits define how traffic directed to the service is assigned to versions.", + "id": "TrafficSplit", "properties": { - "sshKey": { - "description": "Public SSH key to add to the instance. Examples:\n[USERNAME]:ssh-rsa [KEY_VALUE] [USERNAME]\n[USERNAME]:ssh-rsa [KEY_VALUE] google-ssh {\"userName\":\"[USERNAME]\",\"expireOn\":\"[EXPIRE_TIME]\"}For more information, see Adding and Removing SSH Keys (https://cloud.google.com/compute/docs/instances/adding-removing-ssh-keys).", + "allocations": { + "additionalProperties": { + "format": "double", + "type": "number" + }, + "description": "Mapping from version IDs within the service to fractional (0.000, 1] allocations of traffic for that version. Each version can be specified only once, but some versions in the service may not have any traffic allocation. Services that have traffic allocated cannot be deleted until either the service is deleted or their traffic allocation is removed. Allocations must sum to 1. Up to two decimal place precision is supported for IP-based splits and up to three decimal places is supported for cookie-based splits.", + "type": "object" + }, + "shardBy": { + "description": "Mechanism used to determine which version a request is sent to. The traffic selection algorithm will be stable for either type until allocations are changed.", + "enum": [ + "UNSPECIFIED", + "COOKIE", + "IP", + "RANDOM" + ], + "enumDescriptions": [ + "Diversion method unspecified.", + "Diversion based on a specially named cookie, \"GOOGAPPUID.\" The cookie must be set by the application itself or no diversion will occur.", + "Diversion based on applying the modulus operation to a fingerprint of the IP address.", + "Diversion based on weighted random assignment. An incoming request is randomly routed to a version in the traffic split, with probability proportional to the version's traffic share." + ], "type": "string" } }, - "id": "DebugInstanceRequest" + "type": "object" }, - "OperationMetadataV1Beta5": { - "description": "Metadata for the given google.longrunning.Operation.", - "type": "object", + "UrlDispatchRule": { + "description": "Rules to match an HTTP request and dispatch that request to a service.", + "id": "UrlDispatchRule", "properties": { - "insertTime": { - "description": "Timestamp that this operation was created.@OutputOnly", - "format": "google-datetime", + "domain": { + "description": "Domain name to match against. The wildcard \"*\" is supported if specified before a period: \"*.\".Defaults to matching all domains: \"*\".", "type": "string" }, - "endTime": { - "description": "Timestamp that this operation completed.@OutputOnly", - "format": "google-datetime", + "path": { + "description": "Pathname within the host. Must start with a \"/\". A single \"*\" can be included at the end of the path.The sum of the lengths of the domain and path may not exceed 100 characters.", "type": "string" }, - "user": { - "description": "User who requested this operation.@OutputOnly", - "type": "string" - }, - "target": { - "description": "Name of the resource that this operation is acting on. Example: apps/myapp/services/default.@OutputOnly", - "type": "string" - }, - "method": { - "description": "API method name that initiated this operation. Example: google.appengine.v1beta5.Version.CreateVersion.@OutputOnly", + "service": { + "description": "Resource ID of a service in this application that should serve the matched request. The service must already exist. Example: default.", "type": "string" } }, - "id": "OperationMetadataV1Beta5" + "type": "object" }, - "CreateVersionMetadataV1Alpha": { - "description": "Metadata for the given google.longrunning.Operation during a google.appengine.v1alpha.CreateVersionRequest.", - "type": "object", + "UrlMap": { + "description": "URL pattern and description of how the URL should be handled. App Engine can handle URLs by executing application code or by serving static files uploaded with the version, such as images, CSS, or JavaScript.", + "id": "UrlMap", "properties": { - "cloudBuildId": { - "description": "The Cloud Build ID if one was created as part of the version create. @OutputOnly", + "apiEndpoint": { + "$ref": "ApiEndpointHandler", + "description": "Uses API Endpoints to handle requests." + }, + "authFailAction": { + "description": "Action to take when users access resources that require authentication. Defaults to redirect.", + "enum": [ + "AUTH_FAIL_ACTION_UNSPECIFIED", + "AUTH_FAIL_ACTION_REDIRECT", + "AUTH_FAIL_ACTION_UNAUTHORIZED" + ], + "enumDescriptions": [ + "Not specified. AUTH_FAIL_ACTION_REDIRECT is assumed.", + "Redirects user to \"accounts.google.com\". The user is redirected back to the application URL after signing in or creating an account.", + "Rejects request with a 401 HTTP status code and an error message." + ], + "type": "string" + }, + "login": { + "description": "Level of login required to access this resource.", + "enum": [ + "LOGIN_UNSPECIFIED", + "LOGIN_OPTIONAL", + "LOGIN_ADMIN", + "LOGIN_REQUIRED" + ], + "enumDescriptions": [ + "Not specified. LOGIN_OPTIONAL is assumed.", + "Does not require that the user is signed in.", + "If the user is not signed in, the auth_fail_action is taken. In addition, if the user is not an administrator for the application, they are given an error message regardless of auth_fail_action. If the user is an administrator, the handler proceeds.", + "If the user has signed in, the handler proceeds normally. Otherwise, the auth_fail_action is taken." + ], + "type": "string" + }, + "redirectHttpResponseCode": { + "description": "30x code to use when performing redirects for the secure field. Defaults to 302.", + "enum": [ + "REDIRECT_HTTP_RESPONSE_CODE_UNSPECIFIED", + "REDIRECT_HTTP_RESPONSE_CODE_301", + "REDIRECT_HTTP_RESPONSE_CODE_302", + "REDIRECT_HTTP_RESPONSE_CODE_303", + "REDIRECT_HTTP_RESPONSE_CODE_307" + ], + "enumDescriptions": [ + "Not specified. 302 is assumed.", + "301 Moved Permanently code.", + "302 Moved Temporarily code.", + "303 See Other code.", + "307 Temporary Redirect code." + ], + "type": "string" + }, + "script": { + "$ref": "ScriptHandler", + "description": "Executes a script to handle the request that matches this URL pattern." + }, + "securityLevel": { + "description": "Security (HTTPS) enforcement for this URL.", + "enum": [ + "SECURE_UNSPECIFIED", + "SECURE_DEFAULT", + "SECURE_NEVER", + "SECURE_OPTIONAL", + "SECURE_ALWAYS" + ], + "enumDescriptions": [ + "Not specified.", + "Both HTTP and HTTPS requests with URLs that match the handler succeed without redirects. The application can examine the request to determine which protocol was used, and respond accordingly.", + "Requests for a URL that match this handler that use HTTPS are automatically redirected to the HTTP equivalent URL.", + "Both HTTP and HTTPS requests with URLs that match the handler succeed without redirects. The application can examine the request to determine which protocol was used and respond accordingly.", + "Requests for a URL that match this handler that do not use HTTPS are automatically redirected to the HTTPS URL with the same path. Query parameters are reserved for the redirect." + ], + "type": "string" + }, + "staticFiles": { + "$ref": "StaticFilesHandler", + "description": "Returns the contents of a file, such as an image, as the response." + }, + "urlRegex": { + "description": "URL prefix. Uses regular expression syntax, which means regexp special characters must be escaped, but should not contain groupings. All URLs that begin with this prefix are handled by this handler, using the portion of the URL after the prefix as part of the file path.", "type": "string" } }, - "id": "CreateVersionMetadataV1Alpha" + "type": "object" }, "Version": { "description": "A Version resource is a specific set of source code and configuration files that are deployed into a service.", - "type": "object", + "id": "Version", "properties": { + "apiConfig": { + "$ref": "ApiConfigHandler", + "description": "Serving configuration for Google Cloud Endpoints (https://cloud.google.com/appengine/docs/python/endpoints/).Only returned in GET requests if view=FULL is set." + }, + "automaticScaling": { + "$ref": "AutomaticScaling", + "description": "Automatic scaling is based on request rate, response latencies, and other application metrics." + }, "basicScaling": { "$ref": "BasicScaling", "description": "A service with basic scaling will create an instance when the application receives a request. The instance will be turned down when the app becomes idle. Basic scaling is ideal for work that is intermittent or driven by user activity." }, - "runtime": { - "description": "Desired runtime. Example: python27.", - "type": "string" - }, - "createdBy": { - "description": "Email address of the user who created this version.@OutputOnly", - "type": "string" - }, - "id": { - "description": "Relative name of the version within the service. Example: v1. Version names can contain only lowercase letters, numbers, or hyphens. Reserved names: \"default\", \"latest\", and any name with the prefix \"ah-\".", - "type": "string" - }, - "envVariables": { - "description": "Environment variables available to the application.Only returned in GET requests if view=FULL is set.", - "type": "object", - "additionalProperties": { - "type": "string" - } - }, - "livenessCheck": { - "description": "Configures liveness health checking for VM instances. Unhealthy instances are stopped and replaced with new instancesOnly returned in GET requests if view=FULL is set.", - "$ref": "LivenessCheck" - }, - "network": { - "description": "Extra network settings. Only applicable in the App Engine flexible environment.", - "$ref": "Network" - }, "betaSettings": { "additionalProperties": { "type": "string" @@ -1668,101 +3334,68 @@ "description": "Metadata settings that are supplied to this version to enable beta runtime features.", "type": "object" }, - "env": { - "description": "App Engine execution environment for this version.Defaults to standard.", + "createTime": { + "description": "Time that this version was created.@OutputOnly", + "format": "google-datetime", "type": "string" }, - "handlers": { - "description": "An ordered list of URL-matching patterns that should be applied to incoming requests. The first matching URL handles the request and other request handlers are not attempted.Only returned in GET requests if view=FULL is set.", - "type": "array", - "items": { - "$ref": "UrlMap" - } - }, - "zones": { - "description": "The choice of gce zones to use for this App Engine Flexible version.", - "type": "array", - "items": { - "type": "string" - } - }, - "automaticScaling": { - "description": "Automatic scaling is based on request rate, response latencies, and other application metrics.", - "$ref": "AutomaticScaling" - }, - "diskUsageBytes": { - "description": "Total size in bytes of all the files that are included in this version and currently hosted on the App Engine disk.@OutputOnly", - "format": "int64", + "createdBy": { + "description": "Email address of the user who created this version.@OutputOnly", "type": "string" }, - "healthCheck": { - "description": "Configures health checking for VM instances. Unhealthy instances are stopped and replaced with new instances. Only applicable in the App Engine flexible environment.Only returned in GET requests if view=FULL is set.", - "$ref": "HealthCheck" - }, - "threadsafe": { - "description": "Whether multiple requests can be dispatched to this version at once.", - "type": "boolean" - }, - "readinessCheck": { - "description": "Configures readiness health checking for VM instances. Unhealthy instances are not put into the backend traffic rotation.Only returned in GET requests if view=FULL is set.", - "$ref": "ReadinessCheck" - }, - "manualScaling": { - "description": "A service with manual scaling runs continuously, allowing you to perform complex initialization and rely on the state of its memory over time.", - "$ref": "ManualScaling" - }, - "name": { - "description": "Full path to the Version resource in the API. Example: apps/myapp/services/default/versions/v1.@OutputOnly", - "type": "string" - }, - "apiConfig": { - "description": "Serving configuration for Google Cloud Endpoints (https://cloud.google.com/appengine/docs/python/endpoints/).Only returned in GET requests if view=FULL is set.", - "$ref": "ApiConfigHandler" - }, - "endpointsApiService": { - "description": "Cloud Endpoints configuration.If endpoints_api_service is set, the Cloud Endpoints Extensible Service Proxy will be provided to serve the API implemented by the app.", - "$ref": "EndpointsApiService" - }, - "vm": { - "description": "Whether to deploy this version in a container on a virtual machine.", - "type": "boolean" - }, - "versionUrl": { - "description": "Serving URL for this version. Example: \"https://myversion-dot-myservice-dot-myapp.appspot.com\"@OutputOnly", - "type": "string" - }, - "instanceClass": { - "description": "Instance class that is used to run this version. Valid values are:\nAutomaticScaling: F1, F2, F4, F4_1G\nManualScaling or BasicScaling: B1, B2, B4, B8, B4_1GDefaults to F1 for AutomaticScaling and B1 for ManualScaling or BasicScaling.", - "type": "string" - }, - "servingStatus": { - "enumDescriptions": [ - "Not specified.", - "Currently serving. Instances are created according to the scaling settings of the version.", - "Disabled. No instances will be created and the scaling settings are ignored until the state of the version changes to SERVING." - ], - "enum": [ - "SERVING_STATUS_UNSPECIFIED", - "SERVING", - "STOPPED" - ], - "description": "Current serving status of this version. Only the versions with a SERVING status create instances and can be billed.SERVING_STATUS_UNSPECIFIED is an invalid value. Defaults to SERVING.", - "type": "string" - }, - "runtimeApiVersion": { - "description": "The version of the API in the given runtime environment. Please see the app.yaml reference for valid values at https://cloud.google.com/appengine/docs/standard/\u003clanguage\u003e/config/appref", + "defaultExpiration": { + "description": "Duration that static files should be cached by web proxies and browsers. Only applicable if the corresponding StaticFilesHandler (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1/apps.services.versions#staticfileshandler) does not specify its own expiration time.Only returned in GET requests if view=FULL is set.", + "format": "google-duration", "type": "string" }, "deployment": { "$ref": "Deployment", "description": "Code and application artifacts that make up this version.Only returned in GET requests if view=FULL is set." }, - "createTime": { - "description": "Time that this version was created.@OutputOnly", - "format": "google-datetime", + "diskUsageBytes": { + "description": "Total size in bytes of all the files that are included in this version and currently hosted on the App Engine disk.@OutputOnly", + "format": "int64", + "type": "string" + }, + "endpointsApiService": { + "$ref": "EndpointsApiService", + "description": "Cloud Endpoints configuration.If endpoints_api_service is set, the Cloud Endpoints Extensible Service Proxy will be provided to serve the API implemented by the app." + }, + "env": { + "description": "App Engine execution environment for this version.Defaults to standard.", + "type": "string" + }, + "envVariables": { + "additionalProperties": { + "type": "string" + }, + "description": "Environment variables available to the application.Only returned in GET requests if view=FULL is set.", + "type": "object" + }, + "errorHandlers": { + "description": "Custom static error pages. Limited to 10KB per page.Only returned in GET requests if view=FULL is set.", + "items": { + "$ref": "ErrorHandler" + }, + "type": "array" + }, + "handlers": { + "description": "An ordered list of URL-matching patterns that should be applied to incoming requests. The first matching URL handles the request and other request handlers are not attempted.Only returned in GET requests if view=FULL is set.", + "items": { + "$ref": "UrlMap" + }, + "type": "array" + }, + "healthCheck": { + "$ref": "HealthCheck", + "description": "Configures health checking for instances. Unhealthy instances are stopped and replaced with new instances. Only applicable in the App Engine flexible environment.Only returned in GET requests if view=FULL is set." + }, + "id": { + "description": "Relative name of the version within the service. Example: v1. Version names can contain only lowercase letters, numbers, or hyphens. Reserved names: \"default\", \"latest\", and any name with the prefix \"ah-\".", "type": "string" }, "inboundServices": { + "description": "Before an application can receive email or XMPP messages, the application must be configured to enable the service.", "enumDescriptions": [ "Not specified.", "Allows an application to receive mail.", @@ -1774,10 +3407,7 @@ "Registers an application for notifications when a client connects or disconnects from a channel.", "Enables warmup requests." ], - "description": "Before an application can receive email or XMPP messages, the application must be configured to enable the service.", - "type": "array", "items": { - "type": "string", "enum": [ "INBOUND_SERVICE_UNSPECIFIED", "INBOUND_SERVICE_MAIL", @@ -1788,1725 +3418,137 @@ "INBOUND_SERVICE_XMPP_PRESENCE", "INBOUND_SERVICE_CHANNEL_PRESENCE", "INBOUND_SERVICE_WARMUP" - ] - } + ], + "type": "string" + }, + "type": "array" }, - "resources": { - "$ref": "Resources", - "description": "Machine resources for this version. Only applicable for VM runtimes." - }, - "errorHandlers": { - "description": "Custom static error pages. Limited to 10KB per page.Only returned in GET requests if view=FULL is set.", - "type": "array", - "items": { - "$ref": "ErrorHandler" - } - }, - "defaultExpiration": { - "description": "Duration that static files should be cached by web proxies and browsers. Only applicable if the corresponding StaticFilesHandler (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1/apps.services.versions#staticfileshandler) does not specify its own expiration time.Only returned in GET requests if view=FULL is set.", - "format": "google-duration", + "instanceClass": { + "description": "Instance class that is used to run this version. Valid values are:\nAutomaticScaling: F1, F2, F4, F4_1G\nManualScaling or BasicScaling: B1, B2, B4, B8, B4_1GDefaults to F1 for AutomaticScaling and B1 for ManualScaling or BasicScaling.", "type": "string" }, "libraries": { "description": "Configuration for third-party Python runtime libraries that are required by the application.Only returned in GET requests if view=FULL is set.", - "type": "array", "items": { "$ref": "Library" - } + }, + "type": "array" + }, + "livenessCheck": { + "$ref": "LivenessCheck", + "description": "Configures liveness health checking for instances. Unhealthy instances are stopped and replaced with new instancesOnly returned in GET requests if view=FULL is set." + }, + "manualScaling": { + "$ref": "ManualScaling", + "description": "A service with manual scaling runs continuously, allowing you to perform complex initialization and rely on the state of its memory over time." + }, + "name": { + "description": "Full path to the Version resource in the API. Example: apps/myapp/services/default/versions/v1.@OutputOnly", + "type": "string" + }, + "network": { + "$ref": "Network", + "description": "Extra network settings. Only applicable in the App Engine flexible environment." }, "nobuildFilesRegex": { "description": "Files that match this pattern will not be built into this version. Only applicable for Go runtimes.Only returned in GET requests if view=FULL is set.", "type": "string" - } - }, - "id": "Version" - }, - "RepairApplicationRequest": { - "description": "Request message for 'Applications.RepairApplication'.", - "type": "object", - "properties": {}, - "id": "RepairApplicationRequest" - }, - "CertificateRawData": { - "description": "An SSL certificate obtained from a certificate authority.", - "type": "object", - "properties": { - "publicCertificate": { - "description": "PEM encoded x.509 public key certificate. This field is set once on certificate creation. Must include the header and footer. Example: \u003cpre\u003e -----BEGIN CERTIFICATE----- \u003ccertificate_value\u003e -----END CERTIFICATE----- \u003c/pre\u003e", + }, + "readinessCheck": { + "$ref": "ReadinessCheck", + "description": "Configures readiness health checking for instances. Unhealthy instances are not put into the backend traffic rotation.Only returned in GET requests if view=FULL is set." + }, + "resources": { + "$ref": "Resources", + "description": "Machine resources for this version. Only applicable in the App Engine flexible environment." + }, + "runtime": { + "description": "Desired runtime. Example: python27.", "type": "string" }, - "privateKey": { - "description": "Unencrypted PEM encoded RSA private key. This field is set once on certificate creation and then encrypted. The key size must be 2048 bits or fewer. Must include the header and footer. Example: \u003cpre\u003e -----BEGIN RSA PRIVATE KEY----- \u003cunencrypted_key_value\u003e -----END RSA PRIVATE KEY----- \u003c/pre\u003e @InputOnly", - "type": "string" - } - }, - "id": "CertificateRawData" - }, - "FileInfo": { - "description": "Single source file that is part of the version to be deployed. Each source file that is deployed must be specified separately.", - "type": "object", - "properties": { - "mimeType": { - "description": "The MIME type of the file.Defaults to the value from Google Cloud Storage.", + "runtimeApiVersion": { + "description": "The version of the API in the given runtime environment. Please see the app.yaml reference for valid values at https://cloud.google.com/appengine/docs/standard/\u003clanguage\u003e/config/appref", "type": "string" }, - "sourceUrl": { - "description": "URL source to use to fetch this file. Must be a URL to a resource in Google Cloud Storage in the form 'http(s)://storage.googleapis.com/\u003cbucket\u003e/\u003cobject\u003e'.", + "runtimeChannel": { + "description": "The channel of the runtime to use. Only available for some runtimes. Defaults to the default channel.", "type": "string" }, - "sha1Sum": { - "description": "The SHA1 hash of the file, in hex.", + "servingStatus": { + "description": "Current serving status of this version. Only the versions with a SERVING status create instances and can be billed.SERVING_STATUS_UNSPECIFIED is an invalid value. Defaults to SERVING.", + "enum": [ + "SERVING_STATUS_UNSPECIFIED", + "SERVING", + "STOPPED" + ], + "enumDescriptions": [ + "Not specified.", + "Currently serving. Instances are created according to the scaling settings of the version.", + "Disabled. No instances will be created and the scaling settings are ignored until the state of the version changes to SERVING." + ], "type": "string" + }, + "threadsafe": { + "description": "Whether multiple requests can be dispatched to this version at once.", + "type": "boolean" + }, + "versionUrl": { + "description": "Serving URL for this version. Example: \"https://myversion-dot-myservice-dot-myapp.appspot.com\"@OutputOnly", + "type": "string" + }, + "vm": { + "description": "Whether to deploy this version in a container on a virtual machine.", + "type": "boolean" + }, + "zones": { + "description": "The Google Compute Engine zones that are supported by this version in the App Engine flexible environment.", + "items": { + "type": "string" + }, + "type": "array" } }, - "id": "FileInfo" + "type": "object" }, - "ScriptHandler": { - "description": "Executes a script to handle the request that matches the URL pattern.", - "type": "object", - "properties": { - "scriptPath": { - "description": "Path to the script from the application root directory.", - "type": "string" - } - }, - "id": "ScriptHandler" - }, - "AuthorizedDomain": { - "description": "A domain that a user has been authorized to administer. To authorize use of a domain, verify ownership via Webmaster Central (https://www.google.com/webmasters/verification/home).", - "type": "object", + "Volume": { + "description": "Volumes mounted within the app container. Only applicable in the App Engine flexible environment.", + "id": "Volume", "properties": { "name": { - "description": "Full path to the AuthorizedDomain resource in the API. Example: apps/myapp/authorizedDomains/example.com.@OutputOnly", + "description": "Unique name for the volume.", "type": "string" }, - "id": { - "description": "Fully qualified domain name of the domain authorized for use. Example: example.com.", + "sizeGb": { + "description": "Volume size in gigabytes.", + "format": "double", + "type": "number" + }, + "volumeType": { + "description": "Underlying volume type, e.g. 'tmpfs'.", "type": "string" } }, - "id": "AuthorizedDomain" + "type": "object" }, - "TrafficSplit": { - "description": "Traffic routing configuration for versions within a single service. Traffic splits define how traffic directed to the service is assigned to versions.", - "type": "object", + "ZipInfo": { + "description": "The zip file information for a zip deployment.", + "id": "ZipInfo", "properties": { - "shardBy": { - "enumDescriptions": [ - "Diversion method unspecified.", - "Diversion based on a specially named cookie, \"GOOGAPPUID.\" The cookie must be set by the application itself or no diversion will occur.", - "Diversion based on applying the modulus operation to a fingerprint of the IP address.", - "Diversion based on weighted random assignment. An incoming request is randomly routed to a version in the traffic split, with probability proportional to the version's traffic share." - ], - "enum": [ - "UNSPECIFIED", - "COOKIE", - "IP", - "RANDOM" - ], - "description": "Mechanism used to determine which version a request is sent to. The traffic selection algorithm will be stable for either type until allocations are changed.", - "type": "string" + "filesCount": { + "description": "An estimate of the number of files in a zip for a zip deployment. If set, must be greater than or equal to the actual number of files. Used for optimizing performance; if not provided, deployment may be slow.", + "format": "int32", + "type": "integer" }, - "allocations": { - "additionalProperties": { - "format": "double", - "type": "number" - }, - "description": "Mapping from version IDs within the service to fractional (0.000, 1] allocations of traffic for that version. Each version can be specified only once, but some versions in the service may not have any traffic allocation. Services that have traffic allocated cannot be deleted until either the service is deleted or their traffic allocation is removed. Allocations must sum to 1. Up to two decimal place precision is supported for IP-based splits and up to three decimal places is supported for cookie-based splits.", - "type": "object" + "sourceUrl": { + "description": "URL of the zip file to deploy from. Must be a URL to a resource in Google Cloud Storage in the form 'http(s)://storage.googleapis.com/\u003cbucket\u003e/\u003cobject\u003e'.", + "type": "string" } }, - "id": "TrafficSplit" - } - }, - "icons": { - "x32": "http://www.google.com/images/icons/product/search-32.gif", - "x16": "http://www.google.com/images/icons/product/search-16.gif" - }, - "protocol": "rest", - "version": "v1", - "baseUrl": "https://appengine.googleapis.com/", - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/cloud-platform.read-only": { - "description": "View your data across Google Cloud Platform services" - }, - "https://www.googleapis.com/auth/cloud-platform": { - "description": "View and manage your data across Google Cloud Platform services" - }, - "https://www.googleapis.com/auth/appengine.admin": { - "description": "View and manage your applications deployed on Google App Engine" - } - } + "type": "object" } }, "servicePath": "", - "description": "The App Engine Admin API enables developers to provision and manage their App Engine applications.", - "kind": "discovery#restDescription", - "rootUrl": "https://appengine.googleapis.com/", - "basePath": "", - "ownerDomain": "google.com", - "name": "appengine", - "batchPath": "batch", - "revision": "20180112", - "documentationLink": "https://cloud.google.com/appengine/docs/admin-api/", - "id": "appengine:v1", - "title": "Google App Engine Admin API", - "discoveryVersion": "v1", - "ownerName": "Google", - "version_module": true, - "resources": { - "apps": { - "methods": { - "repair": { - "description": "Recreates the required App Engine features for the specified App Engine application, for example a Cloud Storage bucket or App Engine service account. Use this method if you receive an error message about a missing feature, for example, Error retrieving the App Engine service account.", - "request": { - "$ref": "RepairApplicationRequest" - }, - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "appsId" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "appsId": { - "location": "path", - "description": "Part of `name`. Name of the application to repair. Example: apps/myapp", - "required": true, - "type": "string" - } - }, - "flatPath": "v1/apps/{appsId}:repair", - "path": "v1/apps/{appsId}:repair", - "id": "appengine.apps.repair" - }, - "get": { - "description": "Gets information about an application.", - "response": { - "$ref": "Application" - }, - "parameterOrder": [ - "appsId" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/appengine.admin", - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ], - "parameters": { - "appsId": { - "description": "Part of `name`. Name of the Application resource to get. Example: apps/myapp.", - "required": true, - "type": "string", - "location": "path" - } - }, - "flatPath": "v1/apps/{appsId}", - "path": "v1/apps/{appsId}", - "id": "appengine.apps.get" - }, - "patch": { - "description": "Updates the specified Application resource. You can update the following fields:\nauth_domain - Google authentication domain for controlling user access to the application.\ndefault_cookie_expiration - Cookie expiration policy for the application.", - "request": { - "$ref": "Application" - }, - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "appsId" - ], - "httpMethod": "PATCH", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "updateMask": { - "location": "query", - "description": "Standard field mask for the set of fields to be updated.", - "format": "google-fieldmask", - "type": "string" - }, - "appsId": { - "description": "Part of `name`. Name of the Application resource to update. Example: apps/myapp.", - "required": true, - "type": "string", - "location": "path" - } - }, - "flatPath": "v1/apps/{appsId}", - "path": "v1/apps/{appsId}", - "id": "appengine.apps.patch" - }, - "create": { - "flatPath": "v1/apps", - "id": "appengine.apps.create", - "path": "v1/apps", - "request": { - "$ref": "Application" - }, - "description": "Creates an App Engine application for a Google Cloud Platform project. Required fields:\nid - The ID of the target Cloud Platform project.\nlocation - The region (https://cloud.google.com/appengine/docs/locations) where you want the App Engine application located.For more information about App Engine applications, see Managing Projects, Applications, and Billing (https://cloud.google.com/appengine/docs/python/console/).", - "httpMethod": "POST", - "parameterOrder": [], - "response": { - "$ref": "Operation" - }, - "parameters": {}, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - } - }, - "resources": { - "firewall": { - "resources": { - "ingressRules": { - "methods": { - "get": { - "response": { - "$ref": "FirewallRule" - }, - "parameterOrder": [ - "appsId", - "ingressRulesId" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/appengine.admin", - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ], - "parameters": { - "appsId": { - "location": "path", - "description": "Part of `name`. Name of the Firewall resource to retrieve. Example: apps/myapp/firewall/ingressRules/100.", - "required": true, - "type": "string" - }, - "ingressRulesId": { - "location": "path", - "description": "Part of `name`. See documentation of `appsId`.", - "required": true, - "type": "string" - } - }, - "flatPath": "v1/apps/{appsId}/firewall/ingressRules/{ingressRulesId}", - "path": "v1/apps/{appsId}/firewall/ingressRules/{ingressRulesId}", - "id": "appengine.apps.firewall.ingressRules.get", - "description": "Gets the specified firewall rule." - }, - "patch": { - "description": "Updates the specified firewall rule.", - "request": { - "$ref": "FirewallRule" - }, - "response": { - "$ref": "FirewallRule" - }, - "parameterOrder": [ - "appsId", - "ingressRulesId" - ], - "httpMethod": "PATCH", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "updateMask": { - "description": "Standard field mask for the set of fields to be updated.", - "format": "google-fieldmask", - "type": "string", - "location": "query" - }, - "appsId": { - "location": "path", - "description": "Part of `name`. Name of the Firewall resource to update. Example: apps/myapp/firewall/ingressRules/100.", - "required": true, - "type": "string" - }, - "ingressRulesId": { - "description": "Part of `name`. See documentation of `appsId`.", - "required": true, - "type": "string", - "location": "path" - } - }, - "flatPath": "v1/apps/{appsId}/firewall/ingressRules/{ingressRulesId}", - "path": "v1/apps/{appsId}/firewall/ingressRules/{ingressRulesId}", - "id": "appengine.apps.firewall.ingressRules.patch" - }, - "batchUpdate": { - "description": "Replaces the entire firewall ruleset in one bulk operation. This overrides and replaces the rules of an existing firewall with the new rules.If the final rule does not match traffic with the '*' wildcard IP range, then an \"allow all\" rule is explicitly added to the end of the list.", - "request": { - "$ref": "BatchUpdateIngressRulesRequest" - }, - "response": { - "$ref": "BatchUpdateIngressRulesResponse" - }, - "parameterOrder": [ - "appsId" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "appsId": { - "location": "path", - "description": "Part of `name`. Name of the Firewall collection to set. Example: apps/myapp/firewall/ingressRules.", - "required": true, - "type": "string" - } - }, - "flatPath": "v1/apps/{appsId}/firewall/ingressRules:batchUpdate", - "path": "v1/apps/{appsId}/firewall/ingressRules:batchUpdate", - "id": "appengine.apps.firewall.ingressRules.batchUpdate" - }, - "delete": { - "flatPath": "v1/apps/{appsId}/firewall/ingressRules/{ingressRulesId}", - "id": "appengine.apps.firewall.ingressRules.delete", - "path": "v1/apps/{appsId}/firewall/ingressRules/{ingressRulesId}", - "description": "Deletes the specified firewall rule.", - "httpMethod": "DELETE", - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "appsId", - "ingressRulesId" - ], - "parameters": { - "appsId": { - "location": "path", - "description": "Part of `name`. Name of the Firewall resource to delete. Example: apps/myapp/firewall/ingressRules/100.", - "required": true, - "type": "string" - }, - "ingressRulesId": { - "description": "Part of `name`. See documentation of `appsId`.", - "required": true, - "type": "string", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "list": { - "description": "Lists the firewall rules of an application.", - "httpMethod": "GET", - "response": { - "$ref": "ListIngressRulesResponse" - }, - "parameterOrder": [ - "appsId" - ], - "parameters": { - "appsId": { - "description": "Part of `parent`. Name of the Firewall collection to retrieve. Example: apps/myapp/firewall/ingressRules.", - "required": true, - "type": "string", - "location": "path" - }, - "pageToken": { - "description": "Continuation token for fetching the next page of results.", - "type": "string", - "location": "query" - }, - "pageSize": { - "location": "query", - "description": "Maximum results to return per page.", - "format": "int32", - "type": "integer" - }, - "matchingAddress": { - "description": "A valid IP Address. If set, only rules matching this address will be returned. The first returned rule will be the rule that fires on requests from this IP.", - "type": "string", - "location": "query" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/appengine.admin", - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ], - "flatPath": "v1/apps/{appsId}/firewall/ingressRules", - "id": "appengine.apps.firewall.ingressRules.list", - "path": "v1/apps/{appsId}/firewall/ingressRules" - }, - "create": { - "httpMethod": "POST", - "parameterOrder": [ - "appsId" - ], - "response": { - "$ref": "FirewallRule" - }, - "parameters": { - "appsId": { - "location": "path", - "description": "Part of `parent`. Name of the parent Firewall collection in which to create a new rule. Example: apps/myapp/firewall/ingressRules.", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/apps/{appsId}/firewall/ingressRules", - "id": "appengine.apps.firewall.ingressRules.create", - "path": "v1/apps/{appsId}/firewall/ingressRules", - "request": { - "$ref": "FirewallRule" - }, - "description": "Creates a firewall rule for the application." - } - } - } - } - }, - "locations": { - "methods": { - "list": { - "description": "Lists information about the supported locations for this service.", - "httpMethod": "GET", - "response": { - "$ref": "ListLocationsResponse" - }, - "parameterOrder": [ - "appsId" - ], - "parameters": { - "pageSize": { - "description": "The standard list page size.", - "format": "int32", - "type": "integer", - "location": "query" - }, - "filter": { - "description": "The standard list filter.", - "type": "string", - "location": "query" - }, - "appsId": { - "location": "path", - "description": "Part of `name`. The resource that owns the locations collection, if applicable.", - "required": true, - "type": "string" - }, - "pageToken": { - "location": "query", - "description": "The standard list page token.", - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/appengine.admin", - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ], - "flatPath": "v1/apps/{appsId}/locations", - "id": "appengine.apps.locations.list", - "path": "v1/apps/{appsId}/locations" - }, - "get": { - "flatPath": "v1/apps/{appsId}/locations/{locationsId}", - "path": "v1/apps/{appsId}/locations/{locationsId}", - "id": "appengine.apps.locations.get", - "description": "Get information about a location.", - "response": { - "$ref": "Location" - }, - "parameterOrder": [ - "appsId", - "locationsId" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/appengine.admin", - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ], - "parameters": { - "appsId": { - "location": "path", - "description": "Part of `name`. Resource name for the location.", - "required": true, - "type": "string" - }, - "locationsId": { - "location": "path", - "description": "Part of `name`. See documentation of `appsId`.", - "required": true, - "type": "string" - } - } - } - } - }, - "authorizedCertificates": { - "methods": { - "list": { - "flatPath": "v1/apps/{appsId}/authorizedCertificates", - "path": "v1/apps/{appsId}/authorizedCertificates", - "id": "appengine.apps.authorizedCertificates.list", - "description": "Lists all SSL certificates the user is authorized to administer.", - "response": { - "$ref": "ListAuthorizedCertificatesResponse" - }, - "parameterOrder": [ - "appsId" - ], - "httpMethod": "GET", - "parameters": { - "appsId": { - "description": "Part of `parent`. Name of the parent Application resource. Example: apps/myapp.", - "required": true, - "type": "string", - "location": "path" - }, - "pageToken": { - "location": "query", - "description": "Continuation token for fetching the next page of results.", - "type": "string" - }, - "pageSize": { - "location": "query", - "description": "Maximum results to return per page.", - "format": "int32", - "type": "integer" - }, - "view": { - "location": "query", - "enum": [ - "BASIC_CERTIFICATE", - "FULL_CERTIFICATE" - ], - "description": "Controls the set of fields returned in the LIST response.", - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/appengine.admin", - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ] - }, - "get": { - "description": "Gets the specified SSL certificate.", - "response": { - "$ref": "AuthorizedCertificate" - }, - "parameterOrder": [ - "appsId", - "authorizedCertificatesId" - ], - "httpMethod": "GET", - "parameters": { - "appsId": { - "description": "Part of `name`. Name of the resource requested. Example: apps/myapp/authorizedCertificates/12345.", - "required": true, - "type": "string", - "location": "path" - }, - "view": { - "location": "query", - "enum": [ - "BASIC_CERTIFICATE", - "FULL_CERTIFICATE" - ], - "description": "Controls the set of fields returned in the GET response.", - "type": "string" - }, - "authorizedCertificatesId": { - "description": "Part of `name`. See documentation of `appsId`.", - "required": true, - "type": "string", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/appengine.admin", - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ], - "flatPath": "v1/apps/{appsId}/authorizedCertificates/{authorizedCertificatesId}", - "path": "v1/apps/{appsId}/authorizedCertificates/{authorizedCertificatesId}", - "id": "appengine.apps.authorizedCertificates.get" - }, - "patch": { - "description": "Updates the specified SSL certificate. To renew a certificate and maintain its existing domain mappings, update certificate_data with a new certificate. The new certificate must be applicable to the same domains as the original certificate. The certificate display_name may also be updated.", - "request": { - "$ref": "AuthorizedCertificate" - }, - "response": { - "$ref": "AuthorizedCertificate" - }, - "parameterOrder": [ - "appsId", - "authorizedCertificatesId" - ], - "httpMethod": "PATCH", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "authorizedCertificatesId": { - "description": "Part of `name`. See documentation of `appsId`.", - "required": true, - "type": "string", - "location": "path" - }, - "updateMask": { - "location": "query", - "description": "Standard field mask for the set of fields to be updated. Updates are only supported on the certificate_raw_data and display_name fields.", - "format": "google-fieldmask", - "type": "string" - }, - "appsId": { - "description": "Part of `name`. Name of the resource to update. Example: apps/myapp/authorizedCertificates/12345.", - "required": true, - "type": "string", - "location": "path" - } - }, - "flatPath": "v1/apps/{appsId}/authorizedCertificates/{authorizedCertificatesId}", - "path": "v1/apps/{appsId}/authorizedCertificates/{authorizedCertificatesId}", - "id": "appengine.apps.authorizedCertificates.patch" - }, - "create": { - "request": { - "$ref": "AuthorizedCertificate" - }, - "description": "Uploads the specified SSL certificate.", - "response": { - "$ref": "AuthorizedCertificate" - }, - "parameterOrder": [ - "appsId" - ], - "httpMethod": "POST", - "parameters": { - "appsId": { - "description": "Part of `parent`. Name of the parent Application resource. Example: apps/myapp.", - "required": true, - "type": "string", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/apps/{appsId}/authorizedCertificates", - "path": "v1/apps/{appsId}/authorizedCertificates", - "id": "appengine.apps.authorizedCertificates.create" - }, - "delete": { - "description": "Deletes the specified SSL certificate.", - "httpMethod": "DELETE", - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "appsId", - "authorizedCertificatesId" - ], - "parameters": { - "authorizedCertificatesId": { - "description": "Part of `name`. See documentation of `appsId`.", - "required": true, - "type": "string", - "location": "path" - }, - "appsId": { - "description": "Part of `name`. Name of the resource to delete. Example: apps/myapp/authorizedCertificates/12345.", - "required": true, - "type": "string", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/apps/{appsId}/authorizedCertificates/{authorizedCertificatesId}", - "id": "appengine.apps.authorizedCertificates.delete", - "path": "v1/apps/{appsId}/authorizedCertificates/{authorizedCertificatesId}" - } - } - }, - "services": { - "methods": { - "delete": { - "flatPath": "v1/apps/{appsId}/services/{servicesId}", - "path": "v1/apps/{appsId}/services/{servicesId}", - "id": "appengine.apps.services.delete", - "description": "Deletes the specified service and all enclosed versions.", - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "appsId", - "servicesId" - ], - "httpMethod": "DELETE", - "parameters": { - "servicesId": { - "location": "path", - "description": "Part of `name`. See documentation of `appsId`.", - "required": true, - "type": "string" - }, - "appsId": { - "location": "path", - "description": "Part of `name`. Name of the resource requested. Example: apps/myapp/services/default.", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "list": { - "description": "Lists all the services in the application.", - "response": { - "$ref": "ListServicesResponse" - }, - "parameterOrder": [ - "appsId" - ], - "httpMethod": "GET", - "parameters": { - "appsId": { - "location": "path", - "description": "Part of `parent`. Name of the parent Application resource. Example: apps/myapp.", - "required": true, - "type": "string" - }, - "pageToken": { - "location": "query", - "description": "Continuation token for fetching the next page of results.", - "type": "string" - }, - "pageSize": { - "location": "query", - "description": "Maximum results to return per page.", - "format": "int32", - "type": "integer" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/appengine.admin", - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ], - "flatPath": "v1/apps/{appsId}/services", - "path": "v1/apps/{appsId}/services", - "id": "appengine.apps.services.list" - }, - "get": { - "response": { - "$ref": "Service" - }, - "parameterOrder": [ - "appsId", - "servicesId" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/appengine.admin", - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ], - "parameters": { - "servicesId": { - "location": "path", - "description": "Part of `name`. See documentation of `appsId`.", - "required": true, - "type": "string" - }, - "appsId": { - "description": "Part of `name`. Name of the resource requested. Example: apps/myapp/services/default.", - "required": true, - "type": "string", - "location": "path" - } - }, - "flatPath": "v1/apps/{appsId}/services/{servicesId}", - "path": "v1/apps/{appsId}/services/{servicesId}", - "id": "appengine.apps.services.get", - "description": "Gets the current configuration of the specified service." - }, - "patch": { - "description": "Updates the configuration of the specified service.", - "request": { - "$ref": "Service" - }, - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "appsId", - "servicesId" - ], - "httpMethod": "PATCH", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "updateMask": { - "description": "Standard field mask for the set of fields to be updated.", - "format": "google-fieldmask", - "type": "string", - "location": "query" - }, - "servicesId": { - "description": "Part of `name`. See documentation of `appsId`.", - "required": true, - "type": "string", - "location": "path" - }, - "appsId": { - "location": "path", - "description": "Part of `name`. Name of the resource to update. Example: apps/myapp/services/default.", - "required": true, - "type": "string" - }, - "migrateTraffic": { - "description": "Set to true to gradually shift traffic to one or more versions that you specify. By default, traffic is shifted immediately. For gradual traffic migration, the target versions must be located within instances that are configured for both warmup requests (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1/apps.services.versions#inboundservicetype) and automatic scaling (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1/apps.services.versions#automaticscaling). You must specify the shardBy (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1/apps.services#shardby) field in the Service resource. Gradual traffic migration is not supported in the App Engine flexible environment. For examples, see Migrating and Splitting Traffic (https://cloud.google.com/appengine/docs/admin-api/migrating-splitting-traffic).", - "type": "boolean", - "location": "query" - } - }, - "flatPath": "v1/apps/{appsId}/services/{servicesId}", - "path": "v1/apps/{appsId}/services/{servicesId}", - "id": "appengine.apps.services.patch" - } - }, - "resources": { - "versions": { - "methods": { - "delete": { - "description": "Deletes an existing Version resource.", - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "appsId", - "servicesId", - "versionsId" - ], - "httpMethod": "DELETE", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "servicesId": { - "description": "Part of `name`. See documentation of `appsId`.", - "required": true, - "type": "string", - "location": "path" - }, - "appsId": { - "description": "Part of `name`. Name of the resource requested. Example: apps/myapp/services/default/versions/v1.", - "required": true, - "type": "string", - "location": "path" - }, - "versionsId": { - "description": "Part of `name`. See documentation of `appsId`.", - "required": true, - "type": "string", - "location": "path" - } - }, - "flatPath": "v1/apps/{appsId}/services/{servicesId}/versions/{versionsId}", - "path": "v1/apps/{appsId}/services/{servicesId}/versions/{versionsId}", - "id": "appengine.apps.services.versions.delete" - }, - "list": { - "flatPath": "v1/apps/{appsId}/services/{servicesId}/versions", - "path": "v1/apps/{appsId}/services/{servicesId}/versions", - "id": "appengine.apps.services.versions.list", - "description": "Lists the versions of a service.", - "response": { - "$ref": "ListVersionsResponse" - }, - "parameterOrder": [ - "appsId", - "servicesId" - ], - "httpMethod": "GET", - "parameters": { - "servicesId": { - "description": "Part of `parent`. See documentation of `appsId`.", - "required": true, - "type": "string", - "location": "path" - }, - "appsId": { - "description": "Part of `parent`. Name of the parent Service resource. Example: apps/myapp/services/default.", - "required": true, - "type": "string", - "location": "path" - }, - "pageToken": { - "location": "query", - "description": "Continuation token for fetching the next page of results.", - "type": "string" - }, - "pageSize": { - "description": "Maximum results to return per page.", - "format": "int32", - "type": "integer", - "location": "query" - }, - "view": { - "location": "query", - "enum": [ - "BASIC", - "FULL" - ], - "description": "Controls the set of fields returned in the List response.", - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/appengine.admin", - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ] - }, - "get": { - "httpMethod": "GET", - "response": { - "$ref": "Version" - }, - "parameterOrder": [ - "appsId", - "servicesId", - "versionsId" - ], - "parameters": { - "versionsId": { - "location": "path", - "description": "Part of `name`. See documentation of `appsId`.", - "required": true, - "type": "string" - }, - "view": { - "description": "Controls the set of fields returned in the Get response.", - "type": "string", - "location": "query", - "enum": [ - "BASIC", - "FULL" - ] - }, - "servicesId": { - "location": "path", - "description": "Part of `name`. See documentation of `appsId`.", - "required": true, - "type": "string" - }, - "appsId": { - "location": "path", - "description": "Part of `name`. Name of the resource requested. Example: apps/myapp/services/default/versions/v1.", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/appengine.admin", - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ], - "flatPath": "v1/apps/{appsId}/services/{servicesId}/versions/{versionsId}", - "id": "appengine.apps.services.versions.get", - "path": "v1/apps/{appsId}/services/{servicesId}/versions/{versionsId}", - "description": "Gets the specified Version resource. By default, only a BASIC_VIEW will be returned. Specify the FULL_VIEW parameter to get the full resource." - }, - "patch": { - "flatPath": "v1/apps/{appsId}/services/{servicesId}/versions/{versionsId}", - "path": "v1/apps/{appsId}/services/{servicesId}/versions/{versionsId}", - "id": "appengine.apps.services.versions.patch", - "description": "Updates the specified Version resource. You can specify the following fields depending on the App Engine environment and type of scaling that the version resource uses:\nserving_status (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1/apps.services.versions#Version.FIELDS.serving_status): For Version resources that use basic scaling, manual scaling, or run in the App Engine flexible environment.\ninstance_class (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1/apps.services.versions#Version.FIELDS.instance_class): For Version resources that run in the App Engine standard environment.\nautomatic_scaling.min_idle_instances (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1/apps.services.versions#Version.FIELDS.automatic_scaling): For Version resources that use automatic scaling and run in the App Engine standard environment.\nautomatic_scaling.max_idle_instances (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1/apps.services.versions#Version.FIELDS.automatic_scaling): For Version resources that use automatic scaling and run in the App Engine standard environment.\nautomatic_scaling.min_total_instances (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1/apps.services.versions#Version.FIELDS.automatic_scaling): For Version resources that use automatic scaling and run in the App Engine Flexible environment.\nautomatic_scaling.max_total_instances (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1/apps.services.versions#Version.FIELDS.automatic_scaling): For Version resources that use automatic scaling and run in the App Engine Flexible environment.\nautomatic_scaling.cool_down_period_sec (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1/apps.services.versions#Version.FIELDS.automatic_scaling): For Version resources that use automatic scaling and run in the App Engine Flexible environment.\nautomatic_scaling.cpu_utilization.target_utilization (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1/apps.services.versions#Version.FIELDS.automatic_scaling): For Version resources that use automatic scaling and run in the App Engine Flexible environment.", - "request": { - "$ref": "Version" - }, - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "appsId", - "servicesId", - "versionsId" - ], - "httpMethod": "PATCH", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "versionsId": { - "location": "path", - "description": "Part of `name`. See documentation of `appsId`.", - "required": true, - "type": "string" - }, - "updateMask": { - "description": "Standard field mask for the set of fields to be updated.", - "format": "google-fieldmask", - "type": "string", - "location": "query" - }, - "servicesId": { - "description": "Part of `name`. See documentation of `appsId`.", - "required": true, - "type": "string", - "location": "path" - }, - "appsId": { - "description": "Part of `name`. Name of the resource to update. Example: apps/myapp/services/default/versions/1.", - "required": true, - "type": "string", - "location": "path" - } - } - }, - "create": { - "flatPath": "v1/apps/{appsId}/services/{servicesId}/versions", - "path": "v1/apps/{appsId}/services/{servicesId}/versions", - "id": "appengine.apps.services.versions.create", - "description": "Deploys code and resource files to a new version.", - "request": { - "$ref": "Version" - }, - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "appsId", - "servicesId" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "servicesId": { - "location": "path", - "description": "Part of `parent`. See documentation of `appsId`.", - "required": true, - "type": "string" - }, - "appsId": { - "description": "Part of `parent`. Name of the parent resource to create this version under. Example: apps/myapp/services/default.", - "required": true, - "type": "string", - "location": "path" - } - } - } - }, - "resources": { - "instances": { - "methods": { - "delete": { - "description": "Stops a running instance.", - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "appsId", - "servicesId", - "versionsId", - "instancesId" - ], - "httpMethod": "DELETE", - "parameters": { - "servicesId": { - "location": "path", - "description": "Part of `name`. See documentation of `appsId`.", - "required": true, - "type": "string" - }, - "appsId": { - "description": "Part of `name`. Name of the resource requested. Example: apps/myapp/services/default/versions/v1/instances/instance-1.", - "required": true, - "type": "string", - "location": "path" - }, - "instancesId": { - "description": "Part of `name`. See documentation of `appsId`.", - "required": true, - "type": "string", - "location": "path" - }, - "versionsId": { - "description": "Part of `name`. See documentation of `appsId`.", - "required": true, - "type": "string", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/apps/{appsId}/services/{servicesId}/versions/{versionsId}/instances/{instancesId}", - "path": "v1/apps/{appsId}/services/{servicesId}/versions/{versionsId}/instances/{instancesId}", - "id": "appengine.apps.services.versions.instances.delete" - }, - "list": { - "description": "Lists the instances of a version.Tip: To aggregate details about instances over time, see the Stackdriver Monitoring API (https://cloud.google.com/monitoring/api/ref_v3/rest/v3/projects.timeSeries/list).", - "response": { - "$ref": "ListInstancesResponse" - }, - "parameterOrder": [ - "appsId", - "servicesId", - "versionsId" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/appengine.admin", - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ], - "parameters": { - "servicesId": { - "description": "Part of `parent`. See documentation of `appsId`.", - "required": true, - "type": "string", - "location": "path" - }, - "appsId": { - "description": "Part of `parent`. Name of the parent Version resource. Example: apps/myapp/services/default/versions/v1.", - "required": true, - "type": "string", - "location": "path" - }, - "pageToken": { - "location": "query", - "description": "Continuation token for fetching the next page of results.", - "type": "string" - }, - "pageSize": { - "description": "Maximum results to return per page.", - "format": "int32", - "type": "integer", - "location": "query" - }, - "versionsId": { - "location": "path", - "description": "Part of `parent`. See documentation of `appsId`.", - "required": true, - "type": "string" - } - }, - "flatPath": "v1/apps/{appsId}/services/{servicesId}/versions/{versionsId}/instances", - "path": "v1/apps/{appsId}/services/{servicesId}/versions/{versionsId}/instances", - "id": "appengine.apps.services.versions.instances.list" - }, - "get": { - "description": "Gets instance information.", - "response": { - "$ref": "Instance" - }, - "parameterOrder": [ - "appsId", - "servicesId", - "versionsId", - "instancesId" - ], - "httpMethod": "GET", - "parameters": { - "servicesId": { - "location": "path", - "description": "Part of `name`. See documentation of `appsId`.", - "required": true, - "type": "string" - }, - "appsId": { - "location": "path", - "description": "Part of `name`. Name of the resource requested. Example: apps/myapp/services/default/versions/v1/instances/instance-1.", - "required": true, - "type": "string" - }, - "instancesId": { - "location": "path", - "description": "Part of `name`. See documentation of `appsId`.", - "required": true, - "type": "string" - }, - "versionsId": { - "location": "path", - "description": "Part of `name`. See documentation of `appsId`.", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/appengine.admin", - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ], - "flatPath": "v1/apps/{appsId}/services/{servicesId}/versions/{versionsId}/instances/{instancesId}", - "path": "v1/apps/{appsId}/services/{servicesId}/versions/{versionsId}/instances/{instancesId}", - "id": "appengine.apps.services.versions.instances.get" - }, - "debug": { - "flatPath": "v1/apps/{appsId}/services/{servicesId}/versions/{versionsId}/instances/{instancesId}:debug", - "path": "v1/apps/{appsId}/services/{servicesId}/versions/{versionsId}/instances/{instancesId}:debug", - "id": "appengine.apps.services.versions.instances.debug", - "description": "Enables debugging on a VM instance. This allows you to use the SSH command to connect to the virtual machine where the instance lives. While in \"debug mode\", the instance continues to serve live traffic. You should delete the instance when you are done debugging and then allow the system to take over and determine if another instance should be started.Only applicable for instances in App Engine flexible environment.", - "request": { - "$ref": "DebugInstanceRequest" - }, - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "appsId", - "servicesId", - "versionsId", - "instancesId" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "servicesId": { - "location": "path", - "description": "Part of `name`. See documentation of `appsId`.", - "required": true, - "type": "string" - }, - "appsId": { - "location": "path", - "description": "Part of `name`. Name of the resource requested. Example: apps/myapp/services/default/versions/v1/instances/instance-1.", - "required": true, - "type": "string" - }, - "instancesId": { - "location": "path", - "description": "Part of `name`. See documentation of `appsId`.", - "required": true, - "type": "string" - }, - "versionsId": { - "location": "path", - "description": "Part of `name`. See documentation of `appsId`.", - "required": true, - "type": "string" - } - } - } - } - } - } - } - } - }, - "authorizedDomains": { - "methods": { - "list": { - "flatPath": "v1/apps/{appsId}/authorizedDomains", - "path": "v1/apps/{appsId}/authorizedDomains", - "id": "appengine.apps.authorizedDomains.list", - "description": "Lists all domains the user is authorized to administer.", - "response": { - "$ref": "ListAuthorizedDomainsResponse" - }, - "parameterOrder": [ - "appsId" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/appengine.admin", - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ], - "parameters": { - "pageSize": { - "location": "query", - "description": "Maximum results to return per page.", - "format": "int32", - "type": "integer" - }, - "appsId": { - "location": "path", - "description": "Part of `parent`. Name of the parent Application resource. Example: apps/myapp.", - "required": true, - "type": "string" - }, - "pageToken": { - "description": "Continuation token for fetching the next page of results.", - "type": "string", - "location": "query" - } - } - } - } - }, - "operations": { - "methods": { - "list": { - "description": "Lists operations that match the specified filter in the request. If the server doesn't support this method, it returns UNIMPLEMENTED.NOTE: the name binding allows API services to override the binding to use different resource name schemes, such as users/*/operations. To override the binding, API services can add a binding such as \"/v1/{name=users/*}/operations\" to their service configuration. For backwards compatibility, the default name includes the operations collection id, however overriding users must ensure the name binding is the parent resource, without the operations collection id.", - "response": { - "$ref": "ListOperationsResponse" - }, - "parameterOrder": [ - "appsId" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/appengine.admin", - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ], - "parameters": { - "pageSize": { - "description": "The standard list page size.", - "format": "int32", - "type": "integer", - "location": "query" - }, - "filter": { - "description": "The standard list filter.", - "type": "string", - "location": "query" - }, - "appsId": { - "location": "path", - "description": "Part of `name`. The name of the operation's parent resource.", - "required": true, - "type": "string" - }, - "pageToken": { - "description": "The standard list page token.", - "type": "string", - "location": "query" - } - }, - "flatPath": "v1/apps/{appsId}/operations", - "path": "v1/apps/{appsId}/operations", - "id": "appengine.apps.operations.list" - }, - "get": { - "flatPath": "v1/apps/{appsId}/operations/{operationsId}", - "path": "v1/apps/{appsId}/operations/{operationsId}", - "id": "appengine.apps.operations.get", - "description": "Gets the latest state of a long-running operation. Clients can use this method to poll the operation result at intervals as recommended by the API service.", - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "appsId", - "operationsId" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/appengine.admin", - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ], - "parameters": { - "appsId": { - "description": "Part of `name`. The name of the operation resource.", - "required": true, - "type": "string", - "location": "path" - }, - "operationsId": { - "description": "Part of `name`. See documentation of `appsId`.", - "required": true, - "type": "string", - "location": "path" - } - } - } - } - }, - "domainMappings": { - "methods": { - "delete": { - "flatPath": "v1/apps/{appsId}/domainMappings/{domainMappingsId}", - "path": "v1/apps/{appsId}/domainMappings/{domainMappingsId}", - "id": "appengine.apps.domainMappings.delete", - "description": "Deletes the specified domain mapping. A user must be authorized to administer the associated domain in order to delete a DomainMapping resource.", - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "appsId", - "domainMappingsId" - ], - "httpMethod": "DELETE", - "parameters": { - "domainMappingsId": { - "description": "Part of `name`. See documentation of `appsId`.", - "required": true, - "type": "string", - "location": "path" - }, - "appsId": { - "location": "path", - "description": "Part of `name`. Name of the resource to delete. Example: apps/myapp/domainMappings/example.com.", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "list": { - "response": { - "$ref": "ListDomainMappingsResponse" - }, - "parameterOrder": [ - "appsId" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/appengine.admin", - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ], - "parameters": { - "appsId": { - "location": "path", - "description": "Part of `parent`. Name of the parent Application resource. Example: apps/myapp.", - "required": true, - "type": "string" - }, - "pageToken": { - "description": "Continuation token for fetching the next page of results.", - "type": "string", - "location": "query" - }, - "pageSize": { - "location": "query", - "description": "Maximum results to return per page.", - "format": "int32", - "type": "integer" - } - }, - "flatPath": "v1/apps/{appsId}/domainMappings", - "path": "v1/apps/{appsId}/domainMappings", - "id": "appengine.apps.domainMappings.list", - "description": "Lists the domain mappings on an application." - }, - "get": { - "flatPath": "v1/apps/{appsId}/domainMappings/{domainMappingsId}", - "path": "v1/apps/{appsId}/domainMappings/{domainMappingsId}", - "id": "appengine.apps.domainMappings.get", - "description": "Gets the specified domain mapping.", - "response": { - "$ref": "DomainMapping" - }, - "parameterOrder": [ - "appsId", - "domainMappingsId" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/appengine.admin", - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ], - "parameters": { - "appsId": { - "description": "Part of `name`. Name of the resource requested. Example: apps/myapp/domainMappings/example.com.", - "required": true, - "type": "string", - "location": "path" - }, - "domainMappingsId": { - "description": "Part of `name`. See documentation of `appsId`.", - "required": true, - "type": "string", - "location": "path" - } - } - }, - "patch": { - "description": "Updates the specified domain mapping. To map an SSL certificate to a domain mapping, update certificate_id to point to an AuthorizedCertificate resource. A user must be authorized to administer the associated domain in order to update a DomainMapping resource.", - "request": { - "$ref": "DomainMapping" - }, - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "appsId", - "domainMappingsId" - ], - "httpMethod": "PATCH", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "domainMappingsId": { - "location": "path", - "description": "Part of `name`. See documentation of `appsId`.", - "required": true, - "type": "string" - }, - "updateMask": { - "location": "query", - "description": "Standard field mask for the set of fields to be updated.", - "format": "google-fieldmask", - "type": "string" - }, - "appsId": { - "location": "path", - "description": "Part of `name`. Name of the resource to update. Example: apps/myapp/domainMappings/example.com.", - "required": true, - "type": "string" - } - }, - "flatPath": "v1/apps/{appsId}/domainMappings/{domainMappingsId}", - "path": "v1/apps/{appsId}/domainMappings/{domainMappingsId}", - "id": "appengine.apps.domainMappings.patch" - }, - "create": { - "flatPath": "v1/apps/{appsId}/domainMappings", - "path": "v1/apps/{appsId}/domainMappings", - "id": "appengine.apps.domainMappings.create", - "description": "Maps a domain to an application. A user must be authorized to administer a domain in order to map it to an application. For a list of available authorized domains, see AuthorizedDomains.ListAuthorizedDomains.", - "request": { - "$ref": "DomainMapping" - }, - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "appsId" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "appsId": { - "description": "Part of `parent`. Name of the parent Application resource. Example: apps/myapp.", - "required": true, - "type": "string", - "location": "path" - }, - "overrideStrategy": { - "description": "Whether the domain creation should override any existing mappings for this domain. By default, overrides are rejected.", - "type": "string", - "location": "query", - "enum": [ - "UNSPECIFIED_DOMAIN_OVERRIDE_STRATEGY", - "STRICT", - "OVERRIDE" - ] - } - } - } - } - } - } - } - }, - "parameters": { - "$.xgafv": { - "enumDescriptions": [ - "v1 error format", - "v2 error format" - ], - "location": "query", - "enum": [ - "1", - "2" - ], - "description": "V1 error format.", - "type": "string" - }, - "callback": { - "description": "JSONP", - "type": "string", - "location": "query" - }, - "alt": { - "enum": [ - "json", - "media", - "proto" - ], - "type": "string", - "enumDescriptions": [ - "Responses with Content-Type of application/json", - "Media download with context-dependent Content-Type", - "Responses with Content-Type of application/x-protobuf" - ], - "location": "query", - "description": "Data format for response.", - "default": "json" - }, - "access_token": { - "description": "OAuth access token.", - "type": "string", - "location": "query" - }, - "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.", - "type": "string", - "location": "query" - }, - "quotaUser": { - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", - "type": "string", - "location": "query" - }, - "pp": { - "description": "Pretty-print response.", - "type": "boolean", - "default": "true", - "location": "query" - }, - "oauth_token": { - "description": "OAuth 2.0 token for the current user.", - "type": "string", - "location": "query" - }, - "bearer_token": { - "description": "OAuth bearer token.", - "type": "string", - "location": "query" - }, - "upload_protocol": { - "location": "query", - "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", - "type": "string" - }, - "prettyPrint": { - "description": "Returns response with indentations and line breaks.", - "type": "boolean", - "default": "true", - "location": "query" - }, - "uploadType": { - "location": "query", - "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", - "type": "string" - }, - "fields": { - "location": "query", - "description": "Selector specifying which fields to include in a partial response.", - "type": "string" - } - } -} + "title": "App Engine Admin API", + "version": "v1", + "version_module": true +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/appengine/v1/appengine-gen.go b/vendor/google.golang.org/api/appengine/v1/appengine-gen.go index bcc75eb7a..2b6e973d0 100644 --- a/vendor/google.golang.org/api/appengine/v1/appengine-gen.go +++ b/vendor/google.golang.org/api/appengine/v1/appengine-gen.go @@ -1,4 +1,4 @@ -// Package appengine provides access to the Google App Engine Admin API. +// Package appengine provides access to the App Engine Admin API. // // See https://cloud.google.com/appengine/docs/admin-api/ // @@ -366,11 +366,11 @@ type Application struct { // where you want to deploy your application. Example: myapp. Id string `json:"id,omitempty"` - // LocationId: Location from which this application will be run. - // Application instances will run out of data centers in the chosen - // location, which is also where all of the application's end user - // content is stored.Defaults to us-central.Options are:us-central - - // Central USeurope-west - Western Europeus-east1 - Eastern US + // LocationId: Location from which this application runs. Application + // instances run out of the data centers in the specified location, + // which is also where all of the application's end user content is + // stored.Defaults to us-central.View the list of supported locations + // (https://cloud.google.com/appengine/docs/locations). LocationId string `json:"locationId,omitempty"` // Name: Full path to the Application resource in the API. Example: @@ -556,7 +556,7 @@ type AutomaticScaling struct { MaxPendingLatency string `json:"maxPendingLatency,omitempty"` // MaxTotalInstances: Maximum number of instances that should be started - // to handle requests. + // to handle requests for this version. MaxTotalInstances int64 `json:"maxTotalInstances,omitempty"` // MinIdleInstances: Minimum number of idle instances that should be @@ -568,7 +568,7 @@ type AutomaticScaling struct { // the pending queue before starting a new instance to handle it. MinPendingLatency string `json:"minPendingLatency,omitempty"` - // MinTotalInstances: Minimum number of instances that should be + // MinTotalInstances: Minimum number of running instances that should be // maintained for this version. MinTotalInstances int64 `json:"minTotalInstances,omitempty"` @@ -744,6 +744,46 @@ func (s *CertificateRawData) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// CloudBuildOptions: Options for the build operations performed as a +// part of the version deployment. Only applicable for App Engine +// flexible environment when creating a version using source code +// directly. +type CloudBuildOptions struct { + // AppYamlPath: Path to the yaml file used in deployment, used to + // determine runtime configuration details.Required for flexible + // environment builds.See + // https://cloud.google.com/appengine/docs/standard/python/config/appref + // for more details. + AppYamlPath string `json:"appYamlPath,omitempty"` + + // CloudBuildTimeout: The Cloud Build timeout used as part of any + // dependent builds performed by version creation. Defaults to 10 + // minutes. + CloudBuildTimeout string `json:"cloudBuildTimeout,omitempty"` + + // ForceSendFields is a list of field names (e.g. "AppYamlPath") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "AppYamlPath") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *CloudBuildOptions) MarshalJSON() ([]byte, error) { + type NoMethod CloudBuildOptions + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // ContainerInfo: Docker image that is used to create a container and // start a VM instance for the version that you deploy. Only applicable // for instances running in the App Engine flexible environment. @@ -826,6 +866,37 @@ func (s *CpuUtilization) UnmarshalJSON(data []byte) error { return nil } +// CreateVersionMetadataV1: Metadata for the given +// google.longrunning.Operation during a +// google.appengine.v1.CreateVersionRequest. +type CreateVersionMetadataV1 struct { + // CloudBuildId: The Cloud Build ID if one was created as part of the + // version create. @OutputOnly + CloudBuildId string `json:"cloudBuildId,omitempty"` + + // ForceSendFields is a list of field names (e.g. "CloudBuildId") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "CloudBuildId") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *CreateVersionMetadataV1) MarshalJSON() ([]byte, error) { + type NoMethod CreateVersionMetadataV1 + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // CreateVersionMetadataV1Alpha: Metadata for the given // google.longrunning.Operation during a // google.appengine.v1alpha.CreateVersionRequest. @@ -926,6 +997,14 @@ func (s *DebugInstanceRequest) MarshalJSON() ([]byte, error) { // Deployment: Code and application artifacts used to deploy a version // to App Engine. type Deployment struct { + // CloudBuildOptions: Options for any Google Cloud Container Builder + // builds created as a part of this deployment.Note that this is + // orthogonal to the build parameter, where the deployment depends on an + // already existing cloud build. These options will only be used if a + // new build is created, such as when deploying to the App Engine + // flexible environment using files or zip. + CloudBuildOptions *CloudBuildOptions `json:"cloudBuildOptions,omitempty"` + // Container: The Docker image for the container that runs the version. // Only applicable for instances running in the App Engine flexible // environment. @@ -939,20 +1018,21 @@ type Deployment struct { // Zip: The zip file for this deployment, if this is a zip deployment. Zip *ZipInfo `json:"zip,omitempty"` - // ForceSendFields is a list of field names (e.g. "Container") to - // unconditionally include in API requests. By default, fields with + // ForceSendFields is a list of field names (e.g. "CloudBuildOptions") + // to unconditionally include in API requests. By default, fields with // empty values are omitted from API requests. However, any non-pointer, // non-interface field appearing in ForceSendFields will be sent to the // server regardless of whether the field is empty or not. This may be // used to include empty fields in Patch requests. ForceSendFields []string `json:"-"` - // NullFields is a list of field names (e.g. "Container") to include in - // API requests with the JSON null value. By default, fields with empty - // values are omitted from API requests. However, any field with an - // empty value appearing in NullFields will be sent to the server as - // null. It is an error if a field in this list has a non-empty value. - // This may be used to include null fields in Patch requests. + // NullFields is a list of field names (e.g. "CloudBuildOptions") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. NullFields []string `json:"-"` } @@ -1067,8 +1147,9 @@ type Empty struct { // EndpointsApiService: Cloud Endpoints // (https://cloud.google.com/endpoints) configuration. The Endpoints API // Service provides tooling for serving Open API and gRPC endpoints via -// an NGINX proxy.The fields here refer to the name and configuration id -// of a "service" resource in the Service Management API +// an NGINX proxy. Only valid for App Engine Flexible environment +// deployments.The fields here refer to the name and configuration id of +// a "service" resource in the Service Management API // (https://cloud.google.com/service-management/overview). type EndpointsApiService struct { // ConfigId: Endpoints service configuration id as specified by the @@ -1910,6 +1991,10 @@ func (s *LivenessCheck) MarshalJSON() ([]byte, error) { // Location: A resource that represents Google Cloud Platform location. type Location struct { + // DisplayName: The friendly name for this location, typically a nearby + // city name. For example, "Tokyo". + DisplayName string `json:"displayName,omitempty"` + // Labels: Cross-service attributes for the location. For // example // {"cloud.googleapis.com/region": "us-east1"} @@ -1933,7 +2018,7 @@ type Location struct { // server. googleapi.ServerResponse `json:"-"` - // ForceSendFields is a list of field names (e.g. "Labels") to + // ForceSendFields is a list of field names (e.g. "DisplayName") to // unconditionally include in API requests. By default, fields with // empty values are omitted from API requests. However, any non-pointer, // non-interface field appearing in ForceSendFields will be sent to the @@ -1941,10 +2026,10 @@ type Location struct { // used to include empty fields in Patch requests. ForceSendFields []string `json:"-"` - // NullFields is a list of field names (e.g. "Labels") to include in API - // requests with the JSON null value. By default, fields with empty - // values are omitted from API requests. However, any field with an - // empty value appearing in NullFields will be sent to the server as + // NullFields is a list of field names (e.g. "DisplayName") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as // null. It is an error if a field in this list has a non-empty value. // This may be used to include null fields in Patch requests. NullFields []string `json:"-"` @@ -1959,11 +2044,11 @@ func (s *Location) MarshalJSON() ([]byte, error) { // LocationMetadata: Metadata for the given // google.cloud.location.Location. type LocationMetadata struct { - // FlexibleEnvironmentAvailable: App Engine Flexible Environment is + // FlexibleEnvironmentAvailable: App Engine flexible environment is // available in the given location.@OutputOnly FlexibleEnvironmentAvailable bool `json:"flexibleEnvironmentAvailable,omitempty"` - // StandardEnvironmentAvailable: App Engine Standard Environment is + // StandardEnvironmentAvailable: App Engine standard environment is // available in the given location.@OutputOnly StandardEnvironmentAvailable bool `json:"standardEnvironmentAvailable,omitempty"` @@ -2033,8 +2118,8 @@ type Network struct { // App Engine flexible environment. ForwardedPorts []string `json:"forwardedPorts,omitempty"` - // InstanceTag: Tag to apply to the VM instance during creation. for - // Only applicable in the App Engine flexible environment. + // InstanceTag: Tag to apply to the instance during creation. Only + // applicable in the App Engine flexible environment. InstanceTag string `json:"instanceTag,omitempty"` // Name: Google Compute Engine network where the virtual machines are @@ -2046,15 +2131,16 @@ type Network struct { // machines are created. Specify the short name, not the resource // path.If a subnetwork name is specified, a network name will also be // required unless it is for the default network. - // If the network the VM instance is being created in is a Legacy + // If the network that the instance is being created in is a Legacy // network, then the IP address is allocated from the IPv4Range. - // If the network the VM instance is being created in is an auto Subnet - // Mode Network, then only network name should be specified (not the - // subnetwork_name) and the IP address is created from the IPCidrRange - // of the subnetwork that exists in that zone for that network. - // If the network the VM instance is being created in is a custom Subnet - // Mode Network, then the subnetwork_name must be specified and the IP - // address is created from the IPCidrRange of the subnetwork.If + // If the network that the instance is being created in is an auto + // Subnet Mode Network, then only network name should be specified (not + // the subnetwork_name) and the IP address is created from the + // IPCidrRange of the subnetwork that exists in that zone for that + // network. + // If the network that the instance is being created in is a custom + // Subnet Mode Network, then the subnetwork_name must be specified and + // the IP address is created from the IPCidrRange of the subnetwork.If // specified, the subnetwork must exist in the same region as the App // Engine flexible environment application. SubnetworkName string `json:"subnetworkName,omitempty"` @@ -2234,6 +2320,8 @@ func (s *OperationMetadata) MarshalJSON() ([]byte, error) { // OperationMetadataV1: Metadata for the given // google.longrunning.Operation. type OperationMetadataV1 struct { + CreateVersionMetadata *CreateVersionMetadataV1 `json:"createVersionMetadata,omitempty"` + // EndTime: Time that this operation completed.@OutputOnly EndTime string `json:"endTime,omitempty"` @@ -2259,20 +2347,22 @@ type OperationMetadataV1 struct { // @OutputOnly Warning []string `json:"warning,omitempty"` - // ForceSendFields is a list of field names (e.g. "EndTime") to - // unconditionally include in API requests. By default, fields with - // empty values are omitted from API requests. However, any non-pointer, - // non-interface field appearing in ForceSendFields will be sent to the - // server regardless of whether the field is empty or not. This may be - // used to include empty fields in Patch requests. + // ForceSendFields is a list of field names (e.g. + // "CreateVersionMetadata") to unconditionally include in API requests. + // By default, fields with empty values are omitted from API requests. + // However, any non-pointer, non-interface field appearing in + // ForceSendFields will be sent to the server regardless of whether the + // field is empty or not. This may be used to include empty fields in + // Patch requests. ForceSendFields []string `json:"-"` - // NullFields is a list of field names (e.g. "EndTime") to include in - // API requests with the JSON null value. By default, fields with empty - // values are omitted from API requests. However, any field with an - // empty value appearing in NullFields will be sent to the server as - // null. It is an error if a field in this list has a non-empty value. - // This may be used to include null fields in Patch requests. + // NullFields is a list of field names (e.g. "CreateVersionMetadata") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. NullFields []string `json:"-"` } @@ -2734,12 +2824,12 @@ func (s *SslSettings) MarshalJSON() ([]byte, error) { // StandardSchedulerSettings: Scheduler settings for standard // environment. type StandardSchedulerSettings struct { - // MaxInstances: Maximum number of instances for an app version. Set to - // zero to disable max_instances configuration. + // MaxInstances: Maximum number of instances to run for this version. + // Set to zero to disable max_instances configuration. MaxInstances int64 `json:"maxInstances,omitempty"` - // MinInstances: Minimum number of instances for an app version. Set to - // zero to disable min_instances configuration. + // MinInstances: Minimum number of instances to run for this version. + // Set to zero to disable min_instances configuration. MinInstances int64 `json:"minInstances,omitempty"` // TargetCpuUtilization: Target CPU utilization ratio to maintain when @@ -3193,7 +3283,7 @@ type Version struct { // GET requests if view=FULL is set. Handlers []*UrlMap `json:"handlers,omitempty"` - // HealthCheck: Configures health checking for VM instances. Unhealthy + // HealthCheck: Configures health checking for instances. Unhealthy // instances are stopped and replaced with new instances. Only // applicable in the App Engine flexible environment.Only returned in // GET requests if view=FULL is set. @@ -3238,7 +3328,7 @@ type Version struct { // view=FULL is set. Libraries []*Library `json:"libraries,omitempty"` - // LivenessCheck: Configures liveness health checking for VM instances. + // LivenessCheck: Configures liveness health checking for instances. // Unhealthy instances are stopped and replaced with new instancesOnly // returned in GET requests if view=FULL is set. LivenessCheck *LivenessCheck `json:"livenessCheck,omitempty"` @@ -3261,13 +3351,13 @@ type Version struct { // GET requests if view=FULL is set. NobuildFilesRegex string `json:"nobuildFilesRegex,omitempty"` - // ReadinessCheck: Configures readiness health checking for VM - // instances. Unhealthy instances are not put into the backend traffic + // ReadinessCheck: Configures readiness health checking for instances. + // Unhealthy instances are not put into the backend traffic // rotation.Only returned in GET requests if view=FULL is set. ReadinessCheck *ReadinessCheck `json:"readinessCheck,omitempty"` - // Resources: Machine resources for this version. Only applicable for VM - // runtimes. + // Resources: Machine resources for this version. Only applicable in the + // App Engine flexible environment. Resources *Resources `json:"resources,omitempty"` // Runtime: Desired runtime. Example: python27. @@ -3278,6 +3368,10 @@ type Version struct { // https://cloud.google.com/appengine/docs/standard//config/appref RuntimeApiVersion string `json:"runtimeApiVersion,omitempty"` + // RuntimeChannel: The channel of the runtime to use. Only available for + // some runtimes. Defaults to the default channel. + RuntimeChannel string `json:"runtimeChannel,omitempty"` + // ServingStatus: Current serving status of this version. Only the // versions with a SERVING status create instances and can be // billed.SERVING_STATUS_UNSPECIFIED is an invalid value. Defaults to @@ -3304,8 +3398,8 @@ type Version struct { // machine. Vm bool `json:"vm,omitempty"` - // Zones: The choice of gce zones to use for this App Engine Flexible - // version. + // Zones: The Google Compute Engine zones that are supported by this + // version in the App Engine flexible environment. Zones []string `json:"zones,omitempty"` // ServerResponse contains the HTTP response code and headers from the @@ -3437,7 +3531,7 @@ type AppsCreateCall struct { // (https://cloud.google.com/appengine/docs/locations) where you want // the App Engine application located.For more information about App // Engine applications, see Managing Projects, Applications, and Billing -// (https://cloud.google.com/appengine/docs/python/console/). +// (https://cloud.google.com/appengine/docs/standard/python/console/). func (r *AppsService) Create(application *Application) *AppsCreateCall { c := &AppsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.application = application @@ -3527,7 +3621,7 @@ func (c *AppsCreateCall) Do(opts ...googleapi.CallOption) (*Operation, error) { } return ret, nil // { - // "description": "Creates an App Engine application for a Google Cloud Platform project. Required fields:\nid - The ID of the target Cloud Platform project.\nlocation - The region (https://cloud.google.com/appengine/docs/locations) where you want the App Engine application located.For more information about App Engine applications, see Managing Projects, Applications, and Billing (https://cloud.google.com/appengine/docs/python/console/).", + // "description": "Creates an App Engine application for a Google Cloud Platform project. Required fields:\nid - The ID of the target Cloud Platform project.\nlocation - The region (https://cloud.google.com/appengine/docs/locations) where you want the App Engine application located.For more information about App Engine applications, see Managing Projects, Applications, and Billing (https://cloud.google.com/appengine/docs/standard/python/console/).", // "flatPath": "v1/apps", // "httpMethod": "POST", // "id": "appengine.apps.create", @@ -6689,7 +6783,7 @@ type AppsLocationsGetCall struct { header_ http.Header } -// Get: Get information about a location. +// Get: Gets information about a location. func (r *AppsLocationsService) Get(appsId string, locationsId string) *AppsLocationsGetCall { c := &AppsLocationsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.appsId = appsId @@ -6792,7 +6886,7 @@ func (c *AppsLocationsGetCall) Do(opts ...googleapi.CallOption) (*Location, erro } return ret, nil // { - // "description": "Get information about a location.", + // "description": "Gets information about a location.", // "flatPath": "v1/apps/{appsId}/locations/{locationsId}", // "httpMethod": "GET", // "id": "appengine.apps.locations.get", @@ -8763,23 +8857,23 @@ type AppsServicesVersionsPatchCall struct { // (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1/a // pps.services.versions#Version.FIELDS.automatic_scaling): For Version // resources that use automatic scaling and run in the App Engine -// Flexible environment. +// flexible environment. // automatic_scaling.max_total_instances // (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1/a // pps.services.versions#Version.FIELDS.automatic_scaling): For Version // resources that use automatic scaling and run in the App Engine -// Flexible environment. +// flexible environment. // automatic_scaling.cool_down_period_sec // (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1/a // pps.services.versions#Version.FIELDS.automatic_scaling): For Version // resources that use automatic scaling and run in the App Engine -// Flexible +// flexible // environment. // automatic_scaling.cpu_utilization.target_utilization // (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1/a // pps.services.versions#Version.FIELDS.automatic_scaling): For Version // resources that use automatic scaling and run in the App Engine -// Flexible environment. +// flexible environment. func (r *AppsServicesVersionsService) Patch(appsId string, servicesId string, versionsId string, version *Version) *AppsServicesVersionsPatchCall { c := &AppsServicesVersionsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.appsId = appsId @@ -8884,7 +8978,7 @@ func (c *AppsServicesVersionsPatchCall) Do(opts ...googleapi.CallOption) (*Opera } return ret, nil // { - // "description": "Updates the specified Version resource. You can specify the following fields depending on the App Engine environment and type of scaling that the version resource uses:\nserving_status (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1/apps.services.versions#Version.FIELDS.serving_status): For Version resources that use basic scaling, manual scaling, or run in the App Engine flexible environment.\ninstance_class (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1/apps.services.versions#Version.FIELDS.instance_class): For Version resources that run in the App Engine standard environment.\nautomatic_scaling.min_idle_instances (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1/apps.services.versions#Version.FIELDS.automatic_scaling): For Version resources that use automatic scaling and run in the App Engine standard environment.\nautomatic_scaling.max_idle_instances (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1/apps.services.versions#Version.FIELDS.automatic_scaling): For Version resources that use automatic scaling and run in the App Engine standard environment.\nautomatic_scaling.min_total_instances (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1/apps.services.versions#Version.FIELDS.automatic_scaling): For Version resources that use automatic scaling and run in the App Engine Flexible environment.\nautomatic_scaling.max_total_instances (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1/apps.services.versions#Version.FIELDS.automatic_scaling): For Version resources that use automatic scaling and run in the App Engine Flexible environment.\nautomatic_scaling.cool_down_period_sec (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1/apps.services.versions#Version.FIELDS.automatic_scaling): For Version resources that use automatic scaling and run in the App Engine Flexible environment.\nautomatic_scaling.cpu_utilization.target_utilization (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1/apps.services.versions#Version.FIELDS.automatic_scaling): For Version resources that use automatic scaling and run in the App Engine Flexible environment.", + // "description": "Updates the specified Version resource. You can specify the following fields depending on the App Engine environment and type of scaling that the version resource uses:\nserving_status (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1/apps.services.versions#Version.FIELDS.serving_status): For Version resources that use basic scaling, manual scaling, or run in the App Engine flexible environment.\ninstance_class (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1/apps.services.versions#Version.FIELDS.instance_class): For Version resources that run in the App Engine standard environment.\nautomatic_scaling.min_idle_instances (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1/apps.services.versions#Version.FIELDS.automatic_scaling): For Version resources that use automatic scaling and run in the App Engine standard environment.\nautomatic_scaling.max_idle_instances (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1/apps.services.versions#Version.FIELDS.automatic_scaling): For Version resources that use automatic scaling and run in the App Engine standard environment.\nautomatic_scaling.min_total_instances (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1/apps.services.versions#Version.FIELDS.automatic_scaling): For Version resources that use automatic scaling and run in the App Engine flexible environment.\nautomatic_scaling.max_total_instances (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1/apps.services.versions#Version.FIELDS.automatic_scaling): For Version resources that use automatic scaling and run in the App Engine flexible environment.\nautomatic_scaling.cool_down_period_sec (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1/apps.services.versions#Version.FIELDS.automatic_scaling): For Version resources that use automatic scaling and run in the App Engine flexible environment.\nautomatic_scaling.cpu_utilization.target_utilization (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1/apps.services.versions#Version.FIELDS.automatic_scaling): For Version resources that use automatic scaling and run in the App Engine flexible environment.", // "flatPath": "v1/apps/{appsId}/services/{servicesId}/versions/{versionsId}", // "httpMethod": "PATCH", // "id": "appengine.apps.services.versions.patch", diff --git a/vendor/google.golang.org/api/appengine/v1alpha/appengine-api.json b/vendor/google.golang.org/api/appengine/v1alpha/appengine-api.json index ee3554f03..0e9e941be 100644 --- a/vendor/google.golang.org/api/appengine/v1alpha/appengine-api.json +++ b/vendor/google.golang.org/api/appengine/v1alpha/appengine-api.json @@ -1,889 +1,934 @@ { - "resources": { - "apps": { - "resources": { - "authorizedDomains": { - "methods": { - "list": { - "path": "v1alpha/apps/{appsId}/authorizedDomains", - "id": "appengine.apps.authorizedDomains.list", - "description": "Lists all domains the user is authorized to administer.", - "response": { - "$ref": "ListAuthorizedDomainsResponse" - }, - "parameterOrder": [ - "appsId" - ], - "httpMethod": "GET", - "parameters": { - "appsId": { - "description": "Part of `parent`. Name of the parent Application resource. Example: apps/myapp.", - "required": true, - "type": "string", - "location": "path" - }, - "pageToken": { - "location": "query", - "description": "Continuation token for fetching the next page of results.", - "type": "string" - }, - "pageSize": { - "location": "query", - "description": "Maximum results to return per page.", - "format": "int32", - "type": "integer" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/appengine.admin", - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ], - "flatPath": "v1alpha/apps/{appsId}/authorizedDomains" - } - } + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/appengine.admin": { + "description": "View and manage your applications deployed on Google App Engine" }, - "operations": { - "methods": { - "list": { - "path": "v1alpha/apps/{appsId}/operations", - "id": "appengine.apps.operations.list", - "description": "Lists operations that match the specified filter in the request. If the server doesn't support this method, it returns UNIMPLEMENTED.NOTE: the name binding allows API services to override the binding to use different resource name schemes, such as users/*/operations. To override the binding, API services can add a binding such as \"/v1/{name=users/*}/operations\" to their service configuration. For backwards compatibility, the default name includes the operations collection id, however overriding users must ensure the name binding is the parent resource, without the operations collection id.", - "response": { - "$ref": "ListOperationsResponse" - }, - "parameterOrder": [ - "appsId" - ], - "httpMethod": "GET", - "parameters": { - "appsId": { - "location": "path", - "description": "Part of `name`. The name of the operation's parent resource.", - "required": true, - "type": "string" - }, - "pageToken": { - "location": "query", - "description": "The standard list page token.", - "type": "string" - }, - "pageSize": { - "description": "The standard list page size.", - "format": "int32", - "type": "integer", - "location": "query" - }, - "filter": { - "location": "query", - "description": "The standard list filter.", - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/appengine.admin", - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ], - "flatPath": "v1alpha/apps/{appsId}/operations" - }, - "get": { - "description": "Gets the latest state of a long-running operation. Clients can use this method to poll the operation result at intervals as recommended by the API service.", - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "appsId", - "operationsId" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/appengine.admin", - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ], - "parameters": { - "appsId": { - "description": "Part of `name`. The name of the operation resource.", - "required": true, - "type": "string", - "location": "path" - }, - "operationsId": { - "description": "Part of `name`. See documentation of `appsId`.", - "required": true, - "type": "string", - "location": "path" - } - }, - "flatPath": "v1alpha/apps/{appsId}/operations/{operationsId}", - "path": "v1alpha/apps/{appsId}/operations/{operationsId}", - "id": "appengine.apps.operations.get" - } - } + "https://www.googleapis.com/auth/cloud-platform": { + "description": "View and manage your data across Google Cloud Platform services" }, - "locations": { - "methods": { - "list": { - "parameters": { - "filter": { - "description": "The standard list filter.", - "type": "string", - "location": "query" - }, - "appsId": { - "location": "path", - "description": "Part of `name`. The resource that owns the locations collection, if applicable.", - "required": true, - "type": "string" - }, - "pageToken": { - "location": "query", - "description": "The standard list page token.", - "type": "string" - }, - "pageSize": { - "description": "The standard list page size.", - "format": "int32", - "type": "integer", - "location": "query" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/appengine.admin", - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ], - "flatPath": "v1alpha/apps/{appsId}/locations", - "id": "appengine.apps.locations.list", - "path": "v1alpha/apps/{appsId}/locations", - "description": "Lists information about the supported locations for this service.", - "httpMethod": "GET", - "parameterOrder": [ - "appsId" - ], - "response": { - "$ref": "ListLocationsResponse" - } - }, - "get": { - "response": { - "$ref": "Location" - }, - "parameterOrder": [ - "appsId", - "locationsId" - ], - "httpMethod": "GET", - "parameters": { - "appsId": { - "location": "path", - "description": "Part of `name`. Resource name for the location.", - "required": true, - "type": "string" - }, - "locationsId": { - "location": "path", - "description": "Part of `name`. See documentation of `appsId`.", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/appengine.admin", - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ], - "flatPath": "v1alpha/apps/{appsId}/locations/{locationsId}", - "path": "v1alpha/apps/{appsId}/locations/{locationsId}", - "id": "appengine.apps.locations.get", - "description": "Get information about a location." - } - } - }, - "domainMappings": { - "methods": { - "delete": { - "httpMethod": "DELETE", - "parameterOrder": [ - "appsId", - "domainMappingsId" - ], - "response": { - "$ref": "Operation" - }, - "parameters": { - "appsId": { - "location": "path", - "description": "Part of `name`. Name of the resource to delete. Example: apps/myapp/domainMappings/example.com.", - "required": true, - "type": "string" - }, - "domainMappingsId": { - "description": "Part of `name`. See documentation of `appsId`.", - "required": true, - "type": "string", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1alpha/apps/{appsId}/domainMappings/{domainMappingsId}", - "id": "appengine.apps.domainMappings.delete", - "path": "v1alpha/apps/{appsId}/domainMappings/{domainMappingsId}", - "description": "Deletes the specified domain mapping. A user must be authorized to administer the associated domain in order to delete a DomainMapping resource." - }, - "list": { - "parameters": { - "appsId": { - "location": "path", - "description": "Part of `parent`. Name of the parent Application resource. Example: apps/myapp.", - "required": true, - "type": "string" - }, - "pageToken": { - "description": "Continuation token for fetching the next page of results.", - "type": "string", - "location": "query" - }, - "pageSize": { - "location": "query", - "description": "Maximum results to return per page.", - "format": "int32", - "type": "integer" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/appengine.admin", - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ], - "flatPath": "v1alpha/apps/{appsId}/domainMappings", - "id": "appengine.apps.domainMappings.list", - "path": "v1alpha/apps/{appsId}/domainMappings", - "description": "Lists the domain mappings on an application.", - "httpMethod": "GET", - "parameterOrder": [ - "appsId" - ], - "response": { - "$ref": "ListDomainMappingsResponse" - } - }, - "get": { - "description": "Gets the specified domain mapping.", - "response": { - "$ref": "DomainMapping" - }, - "parameterOrder": [ - "appsId", - "domainMappingsId" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/appengine.admin", - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ], - "parameters": { - "appsId": { - "description": "Part of `name`. Name of the resource requested. Example: apps/myapp/domainMappings/example.com.", - "required": true, - "type": "string", - "location": "path" - }, - "domainMappingsId": { - "location": "path", - "description": "Part of `name`. See documentation of `appsId`.", - "required": true, - "type": "string" - } - }, - "flatPath": "v1alpha/apps/{appsId}/domainMappings/{domainMappingsId}", - "path": "v1alpha/apps/{appsId}/domainMappings/{domainMappingsId}", - "id": "appengine.apps.domainMappings.get" - }, - "patch": { - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "appsId", - "domainMappingsId" - ], - "httpMethod": "PATCH", - "parameters": { - "appsId": { - "description": "Part of `name`. Name of the resource to update. Example: apps/myapp/domainMappings/example.com.", - "required": true, - "type": "string", - "location": "path" - }, - "domainMappingsId": { - "location": "path", - "description": "Part of `name`. See documentation of `appsId`.", - "required": true, - "type": "string" - }, - "noManagedCertificate": { - "description": "Whether a managed certificate should be provided by App Engine. If true, a certificate ID must be manually set in the DomainMapping resource to configure SSL for this domain. If false, a managed certificate will be provisioned and a certificate ID will be automatically populated. Only applicable if ssl_settings.certificate_id is specified in the update mask.", - "type": "boolean", - "location": "query" - }, - "updateMask": { - "location": "query", - "description": "Standard field mask for the set of fields to be updated.", - "format": "google-fieldmask", - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1alpha/apps/{appsId}/domainMappings/{domainMappingsId}", - "path": "v1alpha/apps/{appsId}/domainMappings/{domainMappingsId}", - "id": "appengine.apps.domainMappings.patch", - "request": { - "$ref": "DomainMapping" - }, - "description": "Updates the specified domain mapping. To map an SSL certificate to a domain mapping, update certificate_id to point to an AuthorizedCertificate resource. A user must be authorized to administer the associated domain in order to update a DomainMapping resource." - }, - "create": { - "id": "appengine.apps.domainMappings.create", - "path": "v1alpha/apps/{appsId}/domainMappings", - "request": { - "$ref": "DomainMapping" - }, - "description": "Maps a domain to an application. A user must be authorized to administer a domain in order to map it to an application. For a list of available authorized domains, see AuthorizedDomains.ListAuthorizedDomains.", - "httpMethod": "POST", - "parameterOrder": [ - "appsId" - ], - "response": { - "$ref": "Operation" - }, - "parameters": { - "appsId": { - "location": "path", - "description": "Part of `parent`. Name of the parent Application resource. Example: apps/myapp.", - "required": true, - "type": "string" - }, - "overrideStrategy": { - "description": "Whether the domain creation should override any existing mappings for this domain. By default, overrides are rejected.", - "type": "string", - "location": "query", - "enum": [ - "UNSPECIFIED_DOMAIN_OVERRIDE_STRATEGY", - "STRICT", - "OVERRIDE" - ] - }, - "noManagedCertificate": { - "location": "query", - "description": "Whether a managed certificate should be provided by App Engine. If true, a certificate ID must be manaually set in the DomainMapping resource to configure SSL for this domain. If false, a managed certificate will be provisioned and a certificate ID will be automatically populated.", - "type": "boolean" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1alpha/apps/{appsId}/domainMappings" - } - } - }, - "authorizedCertificates": { - "methods": { - "delete": { - "description": "Deletes the specified SSL certificate.", - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "appsId", - "authorizedCertificatesId" - ], - "httpMethod": "DELETE", - "parameters": { - "appsId": { - "description": "Part of `name`. Name of the resource to delete. Example: apps/myapp/authorizedCertificates/12345.", - "required": true, - "type": "string", - "location": "path" - }, - "authorizedCertificatesId": { - "description": "Part of `name`. See documentation of `appsId`.", - "required": true, - "type": "string", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1alpha/apps/{appsId}/authorizedCertificates/{authorizedCertificatesId}", - "path": "v1alpha/apps/{appsId}/authorizedCertificates/{authorizedCertificatesId}", - "id": "appengine.apps.authorizedCertificates.delete" - }, - "list": { - "response": { - "$ref": "ListAuthorizedCertificatesResponse" - }, - "parameterOrder": [ - "appsId" - ], - "httpMethod": "GET", - "parameters": { - "appsId": { - "location": "path", - "description": "Part of `parent`. Name of the parent Application resource. Example: apps/myapp.", - "required": true, - "type": "string" - }, - "pageToken": { - "location": "query", - "description": "Continuation token for fetching the next page of results.", - "type": "string" - }, - "pageSize": { - "description": "Maximum results to return per page.", - "format": "int32", - "type": "integer", - "location": "query" - }, - "view": { - "location": "query", - "enum": [ - "BASIC_CERTIFICATE", - "FULL_CERTIFICATE" - ], - "description": "Controls the set of fields returned in the LIST response.", - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/appengine.admin", - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ], - "flatPath": "v1alpha/apps/{appsId}/authorizedCertificates", - "path": "v1alpha/apps/{appsId}/authorizedCertificates", - "id": "appengine.apps.authorizedCertificates.list", - "description": "Lists all SSL certificates the user is authorized to administer." - }, - "get": { - "description": "Gets the specified SSL certificate.", - "httpMethod": "GET", - "parameterOrder": [ - "appsId", - "authorizedCertificatesId" - ], - "response": { - "$ref": "AuthorizedCertificate" - }, - "parameters": { - "appsId": { - "location": "path", - "description": "Part of `name`. Name of the resource requested. Example: apps/myapp/authorizedCertificates/12345.", - "required": true, - "type": "string" - }, - "view": { - "location": "query", - "enum": [ - "BASIC_CERTIFICATE", - "FULL_CERTIFICATE" - ], - "description": "Controls the set of fields returned in the GET response.", - "type": "string" - }, - "authorizedCertificatesId": { - "description": "Part of `name`. See documentation of `appsId`.", - "required": true, - "type": "string", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/appengine.admin", - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ], - "flatPath": "v1alpha/apps/{appsId}/authorizedCertificates/{authorizedCertificatesId}", - "id": "appengine.apps.authorizedCertificates.get", - "path": "v1alpha/apps/{appsId}/authorizedCertificates/{authorizedCertificatesId}" - }, - "patch": { - "id": "appengine.apps.authorizedCertificates.patch", - "path": "v1alpha/apps/{appsId}/authorizedCertificates/{authorizedCertificatesId}", - "request": { - "$ref": "AuthorizedCertificate" - }, - "description": "Updates the specified SSL certificate. To renew a certificate and maintain its existing domain mappings, update certificate_data with a new certificate. The new certificate must be applicable to the same domains as the original certificate. The certificate display_name may also be updated.", - "httpMethod": "PATCH", - "parameterOrder": [ - "appsId", - "authorizedCertificatesId" - ], - "response": { - "$ref": "AuthorizedCertificate" - }, - "parameters": { - "appsId": { - "description": "Part of `name`. Name of the resource to update. Example: apps/myapp/authorizedCertificates/12345.", - "required": true, - "type": "string", - "location": "path" - }, - "authorizedCertificatesId": { - "description": "Part of `name`. See documentation of `appsId`.", - "required": true, - "type": "string", - "location": "path" - }, - "updateMask": { - "description": "Standard field mask for the set of fields to be updated. Updates are only supported on the certificate_raw_data and display_name fields.", - "format": "google-fieldmask", - "type": "string", - "location": "query" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1alpha/apps/{appsId}/authorizedCertificates/{authorizedCertificatesId}" - }, - "create": { - "request": { - "$ref": "AuthorizedCertificate" - }, - "description": "Uploads the specified SSL certificate.", - "response": { - "$ref": "AuthorizedCertificate" - }, - "parameterOrder": [ - "appsId" - ], - "httpMethod": "POST", - "parameters": { - "appsId": { - "location": "path", - "description": "Part of `parent`. Name of the parent Application resource. Example: apps/myapp.", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1alpha/apps/{appsId}/authorizedCertificates", - "path": "v1alpha/apps/{appsId}/authorizedCertificates", - "id": "appengine.apps.authorizedCertificates.create" - } - } + "https://www.googleapis.com/auth/cloud-platform.read-only": { + "description": "View your data across Google Cloud Platform services" } } } }, + "basePath": "", + "baseUrl": "https://appengine.googleapis.com/", + "batchPath": "batch", + "description": "The App Engine Admin API enables developers to provision and manage their App Engine applications.", + "discoveryVersion": "v1", + "documentationLink": "https://cloud.google.com/appengine/docs/admin-api/", + "icons": { + "x16": "http://www.google.com/images/icons/product/search-16.gif", + "x32": "http://www.google.com/images/icons/product/search-32.gif" + }, + "id": "appengine:v1alpha", + "kind": "discovery#restDescription", + "name": "appengine", + "ownerDomain": "google.com", + "ownerName": "Google", "parameters": { - "prettyPrint": { - "location": "query", - "description": "Returns response with indentations and line breaks.", - "type": "boolean", - "default": "true" - }, - "uploadType": { - "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", - "type": "string", - "location": "query" - }, - "fields": { - "location": "query", - "description": "Selector specifying which fields to include in a partial response.", - "type": "string" - }, - "callback": { - "location": "query", - "description": "JSONP", - "type": "string" - }, "$.xgafv": { + "description": "V1 error format.", + "enum": [ + "1", + "2" + ], "enumDescriptions": [ "v1 error format", "v2 error format" ], "location": "query", - "enum": [ - "1", - "2" - ], - "description": "V1 error format.", + "type": "string" + }, + "access_token": { + "description": "OAuth access token.", + "location": "query", "type": "string" }, "alt": { - "type": "string", + "default": "json", + "description": "Data format for response.", + "enum": [ + "json", + "media", + "proto" + ], "enumDescriptions": [ "Responses with Content-Type of application/json", "Media download with context-dependent Content-Type", "Responses with Content-Type of application/x-protobuf" ], "location": "query", - "description": "Data format for response.", - "default": "json", - "enum": [ - "json", - "media", - "proto" - ] - }, - "key": { - "location": "query", - "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.", "type": "string" }, - "access_token": { - "location": "query", - "description": "OAuth access token.", - "type": "string" - }, - "quotaUser": { - "location": "query", - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", - "type": "string" - }, - "pp": { - "description": "Pretty-print response.", - "type": "boolean", - "default": "true", - "location": "query" - }, "bearer_token": { "description": "OAuth bearer token.", - "type": "string", - "location": "query" + "location": "query", + "type": "string" + }, + "callback": { + "description": "JSONP", + "location": "query", + "type": "string" + }, + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "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.", + "location": "query", + "type": "string" }, "oauth_token": { - "location": "query", "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "pp": { + "default": "true", + "description": "Pretty-print response.", + "location": "query", + "type": "boolean" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", + "location": "query", + "type": "string" + }, + "uploadType": { + "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", + "location": "query", "type": "string" }, "upload_protocol": { - "location": "query", "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", + "location": "query", "type": "string" } }, - "schemas": { - "OperationMetadataV1Beta5": { - "id": "OperationMetadataV1Beta5", - "description": "Metadata for the given google.longrunning.Operation.", - "type": "object", - "properties": { - "method": { - "description": "API method name that initiated this operation. Example: google.appengine.v1beta5.Version.CreateVersion.@OutputOnly", - "type": "string" + "protocol": "rest", + "resources": { + "apps": { + "resources": { + "authorizedCertificates": { + "methods": { + "create": { + "description": "Uploads the specified SSL certificate.", + "flatPath": "v1alpha/apps/{appsId}/authorizedCertificates", + "httpMethod": "POST", + "id": "appengine.apps.authorizedCertificates.create", + "parameterOrder": [ + "appsId" + ], + "parameters": { + "appsId": { + "description": "Part of `parent`. Name of the parent Application resource. Example: apps/myapp.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1alpha/apps/{appsId}/authorizedCertificates", + "request": { + "$ref": "AuthorizedCertificate" + }, + "response": { + "$ref": "AuthorizedCertificate" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Deletes the specified SSL certificate.", + "flatPath": "v1alpha/apps/{appsId}/authorizedCertificates/{authorizedCertificatesId}", + "httpMethod": "DELETE", + "id": "appengine.apps.authorizedCertificates.delete", + "parameterOrder": [ + "appsId", + "authorizedCertificatesId" + ], + "parameters": { + "appsId": { + "description": "Part of `name`. Name of the resource to delete. Example: apps/myapp/authorizedCertificates/12345.", + "location": "path", + "required": true, + "type": "string" + }, + "authorizedCertificatesId": { + "description": "Part of `name`. See documentation of `appsId`.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1alpha/apps/{appsId}/authorizedCertificates/{authorizedCertificatesId}", + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Gets the specified SSL certificate.", + "flatPath": "v1alpha/apps/{appsId}/authorizedCertificates/{authorizedCertificatesId}", + "httpMethod": "GET", + "id": "appengine.apps.authorizedCertificates.get", + "parameterOrder": [ + "appsId", + "authorizedCertificatesId" + ], + "parameters": { + "appsId": { + "description": "Part of `name`. Name of the resource requested. Example: apps/myapp/authorizedCertificates/12345.", + "location": "path", + "required": true, + "type": "string" + }, + "authorizedCertificatesId": { + "description": "Part of `name`. See documentation of `appsId`.", + "location": "path", + "required": true, + "type": "string" + }, + "view": { + "description": "Controls the set of fields returned in the GET response.", + "enum": [ + "BASIC_CERTIFICATE", + "FULL_CERTIFICATE" + ], + "location": "query", + "type": "string" + } + }, + "path": "v1alpha/apps/{appsId}/authorizedCertificates/{authorizedCertificatesId}", + "response": { + "$ref": "AuthorizedCertificate" + }, + "scopes": [ + "https://www.googleapis.com/auth/appengine.admin", + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + }, + "list": { + "description": "Lists all SSL certificates the user is authorized to administer.", + "flatPath": "v1alpha/apps/{appsId}/authorizedCertificates", + "httpMethod": "GET", + "id": "appengine.apps.authorizedCertificates.list", + "parameterOrder": [ + "appsId" + ], + "parameters": { + "appsId": { + "description": "Part of `parent`. Name of the parent Application resource. Example: apps/myapp.", + "location": "path", + "required": true, + "type": "string" + }, + "pageSize": { + "description": "Maximum results to return per page.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Continuation token for fetching the next page of results.", + "location": "query", + "type": "string" + }, + "view": { + "description": "Controls the set of fields returned in the LIST response.", + "enum": [ + "BASIC_CERTIFICATE", + "FULL_CERTIFICATE" + ], + "location": "query", + "type": "string" + } + }, + "path": "v1alpha/apps/{appsId}/authorizedCertificates", + "response": { + "$ref": "ListAuthorizedCertificatesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/appengine.admin", + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + }, + "patch": { + "description": "Updates the specified SSL certificate. To renew a certificate and maintain its existing domain mappings, update certificate_data with a new certificate. The new certificate must be applicable to the same domains as the original certificate. The certificate display_name may also be updated.", + "flatPath": "v1alpha/apps/{appsId}/authorizedCertificates/{authorizedCertificatesId}", + "httpMethod": "PATCH", + "id": "appengine.apps.authorizedCertificates.patch", + "parameterOrder": [ + "appsId", + "authorizedCertificatesId" + ], + "parameters": { + "appsId": { + "description": "Part of `name`. Name of the resource to update. Example: apps/myapp/authorizedCertificates/12345.", + "location": "path", + "required": true, + "type": "string" + }, + "authorizedCertificatesId": { + "description": "Part of `name`. See documentation of `appsId`.", + "location": "path", + "required": true, + "type": "string" + }, + "updateMask": { + "description": "Standard field mask for the set of fields to be updated. Updates are only supported on the certificate_raw_data and display_name fields.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + } + }, + "path": "v1alpha/apps/{appsId}/authorizedCertificates/{authorizedCertificatesId}", + "request": { + "$ref": "AuthorizedCertificate" + }, + "response": { + "$ref": "AuthorizedCertificate" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } }, - "insertTime": { - "description": "Timestamp that this operation was created.@OutputOnly", - "format": "google-datetime", - "type": "string" + "authorizedDomains": { + "methods": { + "list": { + "description": "Lists all domains the user is authorized to administer.", + "flatPath": "v1alpha/apps/{appsId}/authorizedDomains", + "httpMethod": "GET", + "id": "appengine.apps.authorizedDomains.list", + "parameterOrder": [ + "appsId" + ], + "parameters": { + "appsId": { + "description": "Part of `parent`. Name of the parent Application resource. Example: apps/myapp.", + "location": "path", + "required": true, + "type": "string" + }, + "pageSize": { + "description": "Maximum results to return per page.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Continuation token for fetching the next page of results.", + "location": "query", + "type": "string" + } + }, + "path": "v1alpha/apps/{appsId}/authorizedDomains", + "response": { + "$ref": "ListAuthorizedDomainsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/appengine.admin", + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + } + } }, - "endTime": { - "description": "Timestamp that this operation completed.@OutputOnly", - "format": "google-datetime", - "type": "string" + "domainMappings": { + "methods": { + "create": { + "description": "Maps a domain to an application. A user must be authorized to administer a domain in order to map it to an application. For a list of available authorized domains, see AuthorizedDomains.ListAuthorizedDomains.", + "flatPath": "v1alpha/apps/{appsId}/domainMappings", + "httpMethod": "POST", + "id": "appengine.apps.domainMappings.create", + "parameterOrder": [ + "appsId" + ], + "parameters": { + "appsId": { + "description": "Part of `parent`. Name of the parent Application resource. Example: apps/myapp.", + "location": "path", + "required": true, + "type": "string" + }, + "noManagedCertificate": { + "description": "Whether a managed certificate should be provided by App Engine. If true, a certificate ID must be manaually set in the DomainMapping resource to configure SSL for this domain. If false, a managed certificate will be provisioned and a certificate ID will be automatically populated.", + "location": "query", + "type": "boolean" + }, + "overrideStrategy": { + "description": "Whether the domain creation should override any existing mappings for this domain. By default, overrides are rejected.", + "enum": [ + "UNSPECIFIED_DOMAIN_OVERRIDE_STRATEGY", + "STRICT", + "OVERRIDE" + ], + "location": "query", + "type": "string" + } + }, + "path": "v1alpha/apps/{appsId}/domainMappings", + "request": { + "$ref": "DomainMapping" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Deletes the specified domain mapping. A user must be authorized to administer the associated domain in order to delete a DomainMapping resource.", + "flatPath": "v1alpha/apps/{appsId}/domainMappings/{domainMappingsId}", + "httpMethod": "DELETE", + "id": "appengine.apps.domainMappings.delete", + "parameterOrder": [ + "appsId", + "domainMappingsId" + ], + "parameters": { + "appsId": { + "description": "Part of `name`. Name of the resource to delete. Example: apps/myapp/domainMappings/example.com.", + "location": "path", + "required": true, + "type": "string" + }, + "domainMappingsId": { + "description": "Part of `name`. See documentation of `appsId`.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1alpha/apps/{appsId}/domainMappings/{domainMappingsId}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Gets the specified domain mapping.", + "flatPath": "v1alpha/apps/{appsId}/domainMappings/{domainMappingsId}", + "httpMethod": "GET", + "id": "appengine.apps.domainMappings.get", + "parameterOrder": [ + "appsId", + "domainMappingsId" + ], + "parameters": { + "appsId": { + "description": "Part of `name`. Name of the resource requested. Example: apps/myapp/domainMappings/example.com.", + "location": "path", + "required": true, + "type": "string" + }, + "domainMappingsId": { + "description": "Part of `name`. See documentation of `appsId`.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1alpha/apps/{appsId}/domainMappings/{domainMappingsId}", + "response": { + "$ref": "DomainMapping" + }, + "scopes": [ + "https://www.googleapis.com/auth/appengine.admin", + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + }, + "list": { + "description": "Lists the domain mappings on an application.", + "flatPath": "v1alpha/apps/{appsId}/domainMappings", + "httpMethod": "GET", + "id": "appengine.apps.domainMappings.list", + "parameterOrder": [ + "appsId" + ], + "parameters": { + "appsId": { + "description": "Part of `parent`. Name of the parent Application resource. Example: apps/myapp.", + "location": "path", + "required": true, + "type": "string" + }, + "pageSize": { + "description": "Maximum results to return per page.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Continuation token for fetching the next page of results.", + "location": "query", + "type": "string" + } + }, + "path": "v1alpha/apps/{appsId}/domainMappings", + "response": { + "$ref": "ListDomainMappingsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/appengine.admin", + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + }, + "patch": { + "description": "Updates the specified domain mapping. To map an SSL certificate to a domain mapping, update certificate_id to point to an AuthorizedCertificate resource. A user must be authorized to administer the associated domain in order to update a DomainMapping resource.", + "flatPath": "v1alpha/apps/{appsId}/domainMappings/{domainMappingsId}", + "httpMethod": "PATCH", + "id": "appengine.apps.domainMappings.patch", + "parameterOrder": [ + "appsId", + "domainMappingsId" + ], + "parameters": { + "appsId": { + "description": "Part of `name`. Name of the resource to update. Example: apps/myapp/domainMappings/example.com.", + "location": "path", + "required": true, + "type": "string" + }, + "domainMappingsId": { + "description": "Part of `name`. See documentation of `appsId`.", + "location": "path", + "required": true, + "type": "string" + }, + "noManagedCertificate": { + "description": "Whether a managed certificate should be provided by App Engine. If true, a certificate ID must be manually set in the DomainMapping resource to configure SSL for this domain. If false, a managed certificate will be provisioned and a certificate ID will be automatically populated. Only applicable if ssl_settings.certificate_id is specified in the update mask.", + "location": "query", + "type": "boolean" + }, + "updateMask": { + "description": "Standard field mask for the set of fields to be updated.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + } + }, + "path": "v1alpha/apps/{appsId}/domainMappings/{domainMappingsId}", + "request": { + "$ref": "DomainMapping" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } }, - "user": { - "description": "User who requested this operation.@OutputOnly", - "type": "string" + "locations": { + "methods": { + "get": { + "description": "Gets information about a location.", + "flatPath": "v1alpha/apps/{appsId}/locations/{locationsId}", + "httpMethod": "GET", + "id": "appengine.apps.locations.get", + "parameterOrder": [ + "appsId", + "locationsId" + ], + "parameters": { + "appsId": { + "description": "Part of `name`. Resource name for the location.", + "location": "path", + "required": true, + "type": "string" + }, + "locationsId": { + "description": "Part of `name`. See documentation of `appsId`.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1alpha/apps/{appsId}/locations/{locationsId}", + "response": { + "$ref": "Location" + }, + "scopes": [ + "https://www.googleapis.com/auth/appengine.admin", + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + }, + "list": { + "description": "Lists information about the supported locations for this service.", + "flatPath": "v1alpha/apps/{appsId}/locations", + "httpMethod": "GET", + "id": "appengine.apps.locations.list", + "parameterOrder": [ + "appsId" + ], + "parameters": { + "appsId": { + "description": "Part of `name`. The resource that owns the locations collection, if applicable.", + "location": "path", + "required": true, + "type": "string" + }, + "filter": { + "description": "The standard list filter.", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "The standard list page size.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "The standard list page token.", + "location": "query", + "type": "string" + } + }, + "path": "v1alpha/apps/{appsId}/locations", + "response": { + "$ref": "ListLocationsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/appengine.admin", + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + } + } }, - "target": { - "description": "Name of the resource that this operation is acting on. Example: apps/myapp/services/default.@OutputOnly", - "type": "string" + "operations": { + "methods": { + "get": { + "description": "Gets the latest state of a long-running operation. Clients can use this method to poll the operation result at intervals as recommended by the API service.", + "flatPath": "v1alpha/apps/{appsId}/operations/{operationsId}", + "httpMethod": "GET", + "id": "appengine.apps.operations.get", + "parameterOrder": [ + "appsId", + "operationsId" + ], + "parameters": { + "appsId": { + "description": "Part of `name`. The name of the operation resource.", + "location": "path", + "required": true, + "type": "string" + }, + "operationsId": { + "description": "Part of `name`. See documentation of `appsId`.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1alpha/apps/{appsId}/operations/{operationsId}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/appengine.admin", + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + }, + "list": { + "description": "Lists operations that match the specified filter in the request. If the server doesn't support this method, it returns UNIMPLEMENTED.NOTE: the name binding allows API services to override the binding to use different resource name schemes, such as users/*/operations. To override the binding, API services can add a binding such as \"/v1/{name=users/*}/operations\" to their service configuration. For backwards compatibility, the default name includes the operations collection id, however overriding users must ensure the name binding is the parent resource, without the operations collection id.", + "flatPath": "v1alpha/apps/{appsId}/operations", + "httpMethod": "GET", + "id": "appengine.apps.operations.list", + "parameterOrder": [ + "appsId" + ], + "parameters": { + "appsId": { + "description": "Part of `name`. The name of the operation's parent resource.", + "location": "path", + "required": true, + "type": "string" + }, + "filter": { + "description": "The standard list filter.", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "The standard list page size.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "The standard list page token.", + "location": "query", + "type": "string" + } + }, + "path": "v1alpha/apps/{appsId}/operations", + "response": { + "$ref": "ListOperationsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/appengine.admin", + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + } + } } } + } + }, + "revision": "20180320", + "rootUrl": "https://appengine.googleapis.com/", + "schemas": { + "AuthorizedCertificate": { + "description": "An SSL certificate that a user has been authorized to administer. A user is authorized to administer any certificate that applies to one of their authorized domains.", + "id": "AuthorizedCertificate", + "properties": { + "certificateRawData": { + "$ref": "CertificateRawData", + "description": "The SSL certificate serving the AuthorizedCertificate resource. This must be obtained independently from a certificate authority." + }, + "displayName": { + "description": "The user-specified display name of the certificate. This is not guaranteed to be unique. Example: My Certificate.", + "type": "string" + }, + "domainMappingsCount": { + "description": "Aggregate count of the domain mappings with this certificate mapped. This count includes domain mappings on applications for which the user does not have VIEWER permissions.Only returned by GET or LIST requests when specifically requested by the view=FULL_CERTIFICATE option.@OutputOnly", + "format": "int32", + "type": "integer" + }, + "domainNames": { + "description": "Topmost applicable domains of this certificate. This certificate applies to these domains and their subdomains. Example: example.com.@OutputOnly", + "items": { + "type": "string" + }, + "type": "array" + }, + "expireTime": { + "description": "The time when this certificate expires. To update the renewal time on this certificate, upload an SSL certificate with a different expiration time using AuthorizedCertificates.UpdateAuthorizedCertificate.@OutputOnly", + "format": "google-datetime", + "type": "string" + }, + "id": { + "description": "Relative name of the certificate. This is a unique value autogenerated on AuthorizedCertificate resource creation. Example: 12345.@OutputOnly", + "type": "string" + }, + "managedCertificate": { + "$ref": "ManagedCertificate", + "description": "Only applicable if this certificate is managed by App Engine. Managed certificates are tied to the lifecycle of a DomainMapping and cannot be updated or deleted via the AuthorizedCertificates API. If this certificate is manually administered by the user, this field will be empty.@OutputOnly" + }, + "name": { + "description": "Full path to the AuthorizedCertificate resource in the API. Example: apps/myapp/authorizedCertificates/12345.@OutputOnly", + "type": "string" + }, + "visibleDomainMappings": { + "description": "The full paths to user visible Domain Mapping resources that have this certificate mapped. Example: apps/myapp/domainMappings/example.com.This may not represent the full list of mapped domain mappings if the user does not have VIEWER permissions on all of the applications that have this certificate mapped. See domain_mappings_count for a complete count.Only returned by GET or LIST requests when specifically requested by the view=FULL_CERTIFICATE option.@OutputOnly", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" }, - "CreateVersionMetadataV1Alpha": { - "id": "CreateVersionMetadataV1Alpha", - "description": "Metadata for the given google.longrunning.Operation during a google.appengine.v1alpha.CreateVersionRequest.", - "type": "object", + "AuthorizedDomain": { + "description": "A domain that a user has been authorized to administer. To authorize use of a domain, verify ownership via Webmaster Central (https://www.google.com/webmasters/verification/home).", + "id": "AuthorizedDomain", + "properties": { + "id": { + "description": "Fully qualified domain name of the domain authorized for use. Example: example.com.", + "type": "string" + }, + "name": { + "description": "Full path to the AuthorizedDomain resource in the API. Example: apps/myapp/authorizedDomains/example.com.@OutputOnly", + "type": "string" + } + }, + "type": "object" + }, + "CertificateRawData": { + "description": "An SSL certificate obtained from a certificate authority.", + "id": "CertificateRawData", + "properties": { + "privateKey": { + "description": "Unencrypted PEM encoded RSA private key. This field is set once on certificate creation and then encrypted. The key size must be 2048 bits or fewer. Must include the header and footer. Example: \u003cpre\u003e -----BEGIN RSA PRIVATE KEY----- \u003cunencrypted_key_value\u003e -----END RSA PRIVATE KEY----- \u003c/pre\u003e @InputOnly", + "type": "string" + }, + "publicCertificate": { + "description": "PEM encoded x.509 public key certificate. This field is set once on certificate creation. Must include the header and footer. Example: \u003cpre\u003e -----BEGIN CERTIFICATE----- \u003ccertificate_value\u003e -----END CERTIFICATE----- \u003c/pre\u003e", + "type": "string" + } + }, + "type": "object" + }, + "CreateVersionMetadataV1": { + "description": "Metadata for the given google.longrunning.Operation during a google.appengine.v1.CreateVersionRequest.", + "id": "CreateVersionMetadataV1", "properties": { "cloudBuildId": { "description": "The Cloud Build ID if one was created as part of the version create. @OutputOnly", "type": "string" } - } + }, + "type": "object" + }, + "CreateVersionMetadataV1Alpha": { + "description": "Metadata for the given google.longrunning.Operation during a google.appengine.v1alpha.CreateVersionRequest.", + "id": "CreateVersionMetadataV1Alpha", + "properties": { + "cloudBuildId": { + "description": "The Cloud Build ID if one was created as part of the version create. @OutputOnly", + "type": "string" + } + }, + "type": "object" + }, + "CreateVersionMetadataV1Beta": { + "description": "Metadata for the given google.longrunning.Operation during a google.appengine.v1beta.CreateVersionRequest.", + "id": "CreateVersionMetadataV1Beta", + "properties": { + "cloudBuildId": { + "description": "The Cloud Build ID if one was created as part of the version create. @OutputOnly", + "type": "string" + } + }, + "type": "object" + }, + "DomainMapping": { + "description": "A domain serving an App Engine application.", + "id": "DomainMapping", + "properties": { + "id": { + "description": "Relative name of the domain serving the application. Example: example.com.", + "type": "string" + }, + "name": { + "description": "Full path to the DomainMapping resource in the API. Example: apps/myapp/domainMapping/example.com.@OutputOnly", + "type": "string" + }, + "resourceRecords": { + "description": "The resource records required to configure this domain mapping. These records must be added to the domain's DNS configuration in order to serve the application via this domain mapping.@OutputOnly", + "items": { + "$ref": "ResourceRecord" + }, + "type": "array" + }, + "sslSettings": { + "$ref": "SslSettings", + "description": "SSL configuration for this domain. If unconfigured, this domain will not serve with SSL." + } + }, + "type": "object" + }, + "Empty": { + "description": "A generic empty message that you can re-use to avoid defining duplicated empty messages in your APIs. A typical example is to use it as the request or the response type of an API method. For instance:\nservice Foo {\n rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty);\n}\nThe JSON representation for Empty is empty JSON object {}.", + "id": "Empty", + "properties": {}, + "type": "object" + }, + "ListAuthorizedCertificatesResponse": { + "description": "Response message for AuthorizedCertificates.ListAuthorizedCertificates.", + "id": "ListAuthorizedCertificatesResponse", + "properties": { + "certificates": { + "description": "The SSL certificates the user is authorized to administer.", + "items": { + "$ref": "AuthorizedCertificate" + }, + "type": "array" + }, + "nextPageToken": { + "description": "Continuation token for fetching the next page of results.", + "type": "string" + } + }, + "type": "object" + }, + "ListAuthorizedDomainsResponse": { + "description": "Response message for AuthorizedDomains.ListAuthorizedDomains.", + "id": "ListAuthorizedDomainsResponse", + "properties": { + "domains": { + "description": "The authorized domains belonging to the user.", + "items": { + "$ref": "AuthorizedDomain" + }, + "type": "array" + }, + "nextPageToken": { + "description": "Continuation token for fetching the next page of results.", + "type": "string" + } + }, + "type": "object" + }, + "ListDomainMappingsResponse": { + "description": "Response message for DomainMappings.ListDomainMappings.", + "id": "ListDomainMappingsResponse", + "properties": { + "domainMappings": { + "description": "The domain mappings for the application.", + "items": { + "$ref": "DomainMapping" + }, + "type": "array" + }, + "nextPageToken": { + "description": "Continuation token for fetching the next page of results.", + "type": "string" + } + }, + "type": "object" }, "ListLocationsResponse": { - "id": "ListLocationsResponse", "description": "The response message for Locations.ListLocations.", - "type": "object", + "id": "ListLocationsResponse", "properties": { + "locations": { + "description": "A list of locations that matches the specified filter in the request.", + "items": { + "$ref": "Location" + }, + "type": "array" + }, "nextPageToken": { "description": "The standard List next-page token.", "type": "string" - }, - "locations": { - "description": "A list of locations that matches the specified filter in the request.", - "type": "array", - "items": { - "$ref": "Location" - } - } - } - }, - "CertificateRawData": { - "id": "CertificateRawData", - "description": "An SSL certificate obtained from a certificate authority.", - "type": "object", - "properties": { - "publicCertificate": { - "description": "PEM encoded x.509 public key certificate. This field is set once on certificate creation. Must include the header and footer. Example: \u003cpre\u003e -----BEGIN CERTIFICATE----- \u003ccertificate_value\u003e -----END CERTIFICATE----- \u003c/pre\u003e", - "type": "string" - }, - "privateKey": { - "description": "Unencrypted PEM encoded RSA private key. This field is set once on certificate creation and then encrypted. The key size must be 2048 bits or fewer. Must include the header and footer. Example: \u003cpre\u003e -----BEGIN RSA PRIVATE KEY----- \u003cunencrypted_key_value\u003e -----END RSA PRIVATE KEY----- \u003c/pre\u003e @InputOnly", - "type": "string" - } - } - }, - "Operation": { - "description": "This resource represents a long-running operation that is the result of a network API call.", - "type": "object", - "properties": { - "done": { - "description": "If the value is false, it means the operation is still in progress. If true, the operation is completed, and either error or response is available.", - "type": "boolean" - }, - "response": { - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - }, - "description": "The normal response of the operation in case of success. If the original method returns no data on success, such as Delete, the response is google.protobuf.Empty. If the original method is standard Get/Create/Update, the response should be the resource. For other methods, the response should have the type XxxResponse, where Xxx is the original method name. For example, if the original method name is TakeSnapshot(), the inferred response type is TakeSnapshotResponse.", - "type": "object" - }, - "name": { - "description": "The server-assigned name, which is only unique within the same service that originally returns it. If you use the default HTTP mapping, the name should have the format of operations/some/unique/name.", - "type": "string" - }, - "error": { - "description": "The error result of the operation in case of failure or cancellation.", - "$ref": "Status" - }, - "metadata": { - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - }, - "description": "Service-specific metadata associated with the operation. It typically contains progress information and common metadata such as create time. Some services might not provide such metadata. Any method that returns a long-running operation should document the metadata type, if any.", - "type": "object" } }, - "id": "Operation" - }, - "Status": { - "id": "Status", - "description": "The Status type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by gRPC (https://github.com/grpc). The error model is designed to be:\nSimple to use and understand for most users\nFlexible enough to meet unexpected needsOverviewThe Status message contains three pieces of data: error code, error message, and error details. The error code should be an enum value of google.rpc.Code, but it may accept additional error codes if needed. The error message should be a developer-facing English message that helps developers understand and resolve the error. If a localized user-facing error message is needed, put the localized message in the error details or localize it in the client. The optional error details may contain arbitrary information about the error. There is a predefined set of error detail types in the package google.rpc that can be used for common error conditions.Language mappingThe Status message is the logical representation of the error model, but it is not necessarily the actual wire format. When the Status message is exposed in different client libraries and different wire protocols, it can be mapped differently. For example, it will likely be mapped to some exceptions in Java, but more likely mapped to some error codes in C.Other usesThe error model and the Status message can be used in a variety of environments, either with or without APIs, to provide a consistent developer experience across different environments.Example uses of this error model include:\nPartial errors. If a service needs to return partial errors to the client, it may embed the Status in the normal response to indicate the partial errors.\nWorkflow errors. A typical workflow has multiple steps. Each step may have a Status message for error reporting.\nBatch operations. If a client uses batch request and batch response, the Status message should be used directly inside batch response, one for each error sub-response.\nAsynchronous operations. If an API call embeds asynchronous operation results in its response, the status of those operations should be represented directly using the Status message.\nLogging. If some API errors are stored in logs, the message Status could be used directly after any stripping needed for security/privacy reasons.", - "type": "object", - "properties": { - "code": { - "description": "The status code, which should be an enum value of google.rpc.Code.", - "format": "int32", - "type": "integer" - }, - "message": { - "description": "A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the google.rpc.Status.details field, or localized by the client.", - "type": "string" - }, - "details": { - "description": "A list of messages that carry the error details. There is a common set of message types for APIs to use.", - "type": "array", - "items": { - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - }, - "type": "object" - } - } - } - }, - "AuthorizedDomain": { - "description": "A domain that a user has been authorized to administer. To authorize use of a domain, verify ownership via Webmaster Central (https://www.google.com/webmasters/verification/home).", - "type": "object", - "properties": { - "name": { - "description": "Full path to the AuthorizedDomain resource in the API. Example: apps/myapp/authorizedDomains/example.com.@OutputOnly", - "type": "string" - }, - "id": { - "description": "Fully qualified domain name of the domain authorized for use. Example: example.com.", - "type": "string" - } - }, - "id": "AuthorizedDomain" - }, - "LocationMetadata": { - "description": "Metadata for the given google.cloud.location.Location.", - "type": "object", - "properties": { - "flexibleEnvironmentAvailable": { - "description": "App Engine Flexible Environment is available in the given location.@OutputOnly", - "type": "boolean" - }, - "standardEnvironmentAvailable": { - "description": "App Engine Standard Environment is available in the given location.@OutputOnly", - "type": "boolean" - } - }, - "id": "LocationMetadata" - }, - "OperationMetadataV1Beta": { - "properties": { - "warning": { - "description": "Durable messages that persist on every operation poll. @OutputOnly", - "type": "array", - "items": { - "type": "string" - } - }, - "insertTime": { - "description": "Time that this operation was created.@OutputOnly", - "format": "google-datetime", - "type": "string" - }, - "target": { - "description": "Name of the resource that this operation is acting on. Example: apps/myapp/services/default.@OutputOnly", - "type": "string" - }, - "user": { - "description": "User who requested this operation.@OutputOnly", - "type": "string" - }, - "ephemeralMessage": { - "description": "Ephemeral message that may change every time the operation is polled. @OutputOnly", - "type": "string" - }, - "method": { - "description": "API method that initiated this operation. Example: google.appengine.v1beta.Versions.CreateVersion.@OutputOnly", - "type": "string" - }, - "endTime": { - "description": "Time that this operation completed.@OutputOnly", - "format": "google-datetime", - "type": "string" - }, - "createVersionMetadata": { - "$ref": "CreateVersionMetadataV1Beta" - } - }, - "id": "OperationMetadataV1Beta", - "description": "Metadata for the given google.longrunning.Operation.", "type": "object" }, "ListOperationsResponse": { + "description": "The response message for Operations.ListOperations.", + "id": "ListOperationsResponse", "properties": { "nextPageToken": { "description": "The standard List next-page token.", @@ -891,288 +936,29 @@ }, "operations": { "description": "A list of operations that matches the specified filter in the request.", - "type": "array", "items": { "$ref": "Operation" - } + }, + "type": "array" } }, - "id": "ListOperationsResponse", - "description": "The response message for Operations.ListOperations.", "type": "object" }, - "OperationMetadata": { - "description": "Metadata for the given google.longrunning.Operation.", - "type": "object", - "properties": { - "operationType": { - "description": "Type of this operation. Deprecated, use method field instead. Example: \"create_version\".@OutputOnly", - "type": "string" - }, - "insertTime": { - "description": "Timestamp that this operation was created.@OutputOnly", - "format": "google-datetime", - "type": "string" - }, - "target": { - "description": "Name of the resource that this operation is acting on. Example: apps/myapp/modules/default.@OutputOnly", - "type": "string" - }, - "user": { - "description": "User who requested this operation.@OutputOnly", - "type": "string" - }, - "method": { - "description": "API method that initiated this operation. Example: google.appengine.v1beta4.Version.CreateVersion.@OutputOnly", - "type": "string" - }, - "endTime": { - "description": "Timestamp that this operation completed.@OutputOnly", - "format": "google-datetime", - "type": "string" - } - }, - "id": "OperationMetadata" - }, - "ListAuthorizedCertificatesResponse": { - "properties": { - "nextPageToken": { - "description": "Continuation token for fetching the next page of results.", - "type": "string" - }, - "certificates": { - "description": "The SSL certificates the user is authorized to administer.", - "type": "array", - "items": { - "$ref": "AuthorizedCertificate" - } - } - }, - "id": "ListAuthorizedCertificatesResponse", - "description": "Response message for AuthorizedCertificates.ListAuthorizedCertificates.", - "type": "object" - }, - "CreateVersionMetadataV1Beta": { - "description": "Metadata for the given google.longrunning.Operation during a google.appengine.v1beta.CreateVersionRequest.", - "type": "object", - "properties": { - "cloudBuildId": { - "description": "The Cloud Build ID if one was created as part of the version create. @OutputOnly", - "type": "string" - } - }, - "id": "CreateVersionMetadataV1Beta" - }, - "ManagedCertificate": { - "properties": { - "lastRenewalTime": { - "description": "Time at which the certificate was last renewed. The renewal process is fully managed. Certificate renewal will automatically occur before the certificate expires. Renewal errors can be tracked via ManagementStatus.@OutputOnly", - "format": "google-datetime", - "type": "string" - }, - "status": { - "enumDescriptions": [ - "", - "Certificate was successfully obtained and inserted into the serving system.", - "Certificate is under active attempts to acquire or renew.", - "Most recent renewal failed due to a system failure and will be retried. System failure is likely transient, and subsequent renewal attempts may succeed. The last successfully provisioned certificate may still be serving.", - "Most recent renewal failed due to an invalid DNS setup and will be retried. Renewal attempts will continue to fail until the certificate domain's DNS configuration is fixed. The last successfully provisioned certificate may still be serving.", - "All renewal attempts have been exhausted. Most recent renewal failed due to an invalid DNS setup and will not be retried. The last successfully provisioned certificate may still be serving.", - "Most recent renewal failed due to an explicit CAA record that does not include the in-use CA, Let's Encrypt. Renewals will continue to fail until the CAA is reconfigured. The last successfully provisioned certificate may still be serving.", - "Most recent renewal failed due to a CAA retrieval failure. This means that the domain's DNS provider does not properly handle CAA records, failing requests for CAA records when no CAA records are defined. Renewals will continue to fail until the DNS provider is changed or a CAA record is added for the given domain. The last successfully provisioned certificate may still be serving." - ], - "enum": [ - "UNSPECIFIED_STATUS", - "OK", - "PENDING", - "FAILED_RETRYING_INTERNAL", - "FAILED_RETRYING_NOT_VISIBLE", - "FAILED_PERMANENTLY_NOT_VISIBLE", - "FAILED_RETRYING_CAA_FORBIDDEN", - "FAILED_RETRYING_CAA_CHECKING" - ], - "description": "Status of certificate management. Refers to the most recent certificate acquisition or renewal attempt.@OutputOnly", - "type": "string" - } - }, - "id": "ManagedCertificate", - "description": "A certificate managed by App Engine.", - "type": "object" - }, - "SslSettings": { - "description": "SSL configuration for a DomainMapping resource.", - "type": "object", - "properties": { - "isManagedCertificate": { - "description": "Whether the mapped certificate is an App Engine managed certificate. Managed certificates are created by default with a domain mapping. To opt out, specify no_managed_certificate on a CREATE or UPDATE request.@OutputOnly", - "type": "boolean" - }, - "certificateId": { - "description": "ID of the AuthorizedCertificate resource configuring SSL for the application. Clearing this field will remove SSL support.By default, a managed certificate is automatically created for every domain mapping. To omit SSL support or to configure SSL manually, specify no_managed_certificate on a CREATE or UPDATE request. You must be authorized to administer the AuthorizedCertificate resource to manually map it to a DomainMapping resource. Example: 12345.", - "type": "string" - } - }, - "id": "SslSettings" - }, - "OperationMetadataV1": { - "id": "OperationMetadataV1", - "description": "Metadata for the given google.longrunning.Operation.", - "type": "object", - "properties": { - "target": { - "description": "Name of the resource that this operation is acting on. Example: apps/myapp/services/default.@OutputOnly", - "type": "string" - }, - "user": { - "description": "User who requested this operation.@OutputOnly", - "type": "string" - }, - "ephemeralMessage": { - "description": "Ephemeral message that may change every time the operation is polled. @OutputOnly", - "type": "string" - }, - "method": { - "description": "API method that initiated this operation. Example: google.appengine.v1.Versions.CreateVersion.@OutputOnly", - "type": "string" - }, - "endTime": { - "description": "Time that this operation completed.@OutputOnly", - "format": "google-datetime", - "type": "string" - }, - "warning": { - "description": "Durable messages that persist on every operation poll. @OutputOnly", - "type": "array", - "items": { - "type": "string" - } - }, - "insertTime": { - "description": "Time that this operation was created.@OutputOnly", - "format": "google-datetime", - "type": "string" - } - } - }, - "ListDomainMappingsResponse": { - "id": "ListDomainMappingsResponse", - "description": "Response message for DomainMappings.ListDomainMappings.", - "type": "object", - "properties": { - "domainMappings": { - "description": "The domain mappings for the application.", - "type": "array", - "items": { - "$ref": "DomainMapping" - } - }, - "nextPageToken": { - "description": "Continuation token for fetching the next page of results.", - "type": "string" - } - } - }, - "OperationMetadataV1Alpha": { - "id": "OperationMetadataV1Alpha", - "description": "Metadata for the given google.longrunning.Operation.", - "type": "object", - "properties": { - "method": { - "description": "API method that initiated this operation. Example: google.appengine.v1alpha.Versions.CreateVersion.@OutputOnly", - "type": "string" - }, - "endTime": { - "description": "Time that this operation completed.@OutputOnly", - "format": "google-datetime", - "type": "string" - }, - "createVersionMetadata": { - "$ref": "CreateVersionMetadataV1Alpha" - }, - "warning": { - "description": "Durable messages that persist on every operation poll. @OutputOnly", - "type": "array", - "items": { - "type": "string" - } - }, - "insertTime": { - "description": "Time that this operation was created.@OutputOnly", - "format": "google-datetime", - "type": "string" - }, - "target": { - "description": "Name of the resource that this operation is acting on. Example: apps/myapp/services/default.@OutputOnly", - "type": "string" - }, - "user": { - "description": "User who requested this operation.@OutputOnly", - "type": "string" - }, - "ephemeralMessage": { - "description": "Ephemeral message that may change every time the operation is polled. @OutputOnly", - "type": "string" - } - } - }, - "ListAuthorizedDomainsResponse": { - "id": "ListAuthorizedDomainsResponse", - "description": "Response message for AuthorizedDomains.ListAuthorizedDomains.", - "type": "object", - "properties": { - "domains": { - "description": "The authorized domains belonging to the user.", - "type": "array", - "items": { - "$ref": "AuthorizedDomain" - } - }, - "nextPageToken": { - "description": "Continuation token for fetching the next page of results.", - "type": "string" - } - } - }, - "DomainMapping": { - "id": "DomainMapping", - "description": "A domain serving an App Engine application.", - "type": "object", - "properties": { - "name": { - "description": "Full path to the DomainMapping resource in the API. Example: apps/myapp/domainMapping/example.com.@OutputOnly", - "type": "string" - }, - "sslSettings": { - "$ref": "SslSettings", - "description": "SSL configuration for this domain. If unconfigured, this domain will not serve with SSL." - }, - "id": { - "description": "Relative name of the domain serving the application. Example: example.com.", - "type": "string" - }, - "resourceRecords": { - "description": "The resource records required to configure this domain mapping. These records must be added to the domain's DNS configuration in order to serve the application via this domain mapping.@OutputOnly", - "type": "array", - "items": { - "$ref": "ResourceRecord" - } - } - } - }, - "Empty": { - "id": "Empty", - "description": "A generic empty message that you can re-use to avoid defining duplicated empty messages in your APIs. A typical example is to use it as the request or the response type of an API method. For instance:\nservice Foo {\n rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty);\n}\nThe JSON representation for Empty is empty JSON object {}.", - "type": "object", - "properties": {} - }, "Location": { "description": "A resource that represents Google Cloud Platform location.", - "type": "object", + "id": "Location", "properties": { - "name": { - "description": "Resource name for the location, which may vary between implementations. For example: \"projects/example-project/locations/us-east1\"", + "displayName": { + "description": "The friendly name for this location, typically a nearby city name. For example, \"Tokyo\".", "type": "string" }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Cross-service attributes for the location. For example\n{\"cloud.googleapis.com/region\": \"us-east1\"}\n", + "type": "object" + }, "locationId": { "description": "The canonical id for this location. For example: \"us-east1\".", "type": "string" @@ -1185,131 +971,363 @@ "description": "Service-specific metadata. For example the available capacity at the given location.", "type": "object" }, - "labels": { + "name": { + "description": "Resource name for the location, which may vary between implementations. For example: \"projects/example-project/locations/us-east1\"", + "type": "string" + } + }, + "type": "object" + }, + "LocationMetadata": { + "description": "Metadata for the given google.cloud.location.Location.", + "id": "LocationMetadata", + "properties": { + "flexibleEnvironmentAvailable": { + "description": "App Engine flexible environment is available in the given location.@OutputOnly", + "type": "boolean" + }, + "standardEnvironmentAvailable": { + "description": "App Engine standard environment is available in the given location.@OutputOnly", + "type": "boolean" + } + }, + "type": "object" + }, + "ManagedCertificate": { + "description": "A certificate managed by App Engine.", + "id": "ManagedCertificate", + "properties": { + "lastRenewalTime": { + "description": "Time at which the certificate was last renewed. The renewal process is fully managed. Certificate renewal will automatically occur before the certificate expires. Renewal errors can be tracked via ManagementStatus.@OutputOnly", + "format": "google-datetime", + "type": "string" + }, + "status": { + "description": "Status of certificate management. Refers to the most recent certificate acquisition or renewal attempt.@OutputOnly", + "enum": [ + "UNSPECIFIED_STATUS", + "OK", + "PENDING", + "FAILED_RETRYING_INTERNAL", + "FAILED_RETRYING_NOT_VISIBLE", + "FAILED_PERMANENTLY_NOT_VISIBLE", + "FAILED_RETRYING_CAA_FORBIDDEN", + "FAILED_RETRYING_CAA_CHECKING" + ], + "enumDescriptions": [ + "", + "Certificate was successfully obtained and inserted into the serving system.", + "Certificate is under active attempts to acquire or renew.", + "Most recent renewal failed due to a system failure and will be retried. System failure is likely transient, and subsequent renewal attempts may succeed. The last successfully provisioned certificate may still be serving.", + "Most recent renewal failed due to an invalid DNS setup and will be retried. Renewal attempts will continue to fail until the certificate domain's DNS configuration is fixed. The last successfully provisioned certificate may still be serving.", + "All renewal attempts have been exhausted. Most recent renewal failed due to an invalid DNS setup and will not be retried. The last successfully provisioned certificate may still be serving.", + "Most recent renewal failed due to an explicit CAA record that does not include the in-use CA, Let's Encrypt. Renewals will continue to fail until the CAA is reconfigured. The last successfully provisioned certificate may still be serving.", + "Most recent renewal failed due to a CAA retrieval failure. This means that the domain's DNS provider does not properly handle CAA records, failing requests for CAA records when no CAA records are defined. Renewals will continue to fail until the DNS provider is changed or a CAA record is added for the given domain. The last successfully provisioned certificate may still be serving." + ], + "type": "string" + } + }, + "type": "object" + }, + "Operation": { + "description": "This resource represents a long-running operation that is the result of a network API call.", + "id": "Operation", + "properties": { + "done": { + "description": "If the value is false, it means the operation is still in progress. If true, the operation is completed, and either error or response is available.", + "type": "boolean" + }, + "error": { + "$ref": "Status", + "description": "The error result of the operation in case of failure or cancellation." + }, + "metadata": { "additionalProperties": { - "type": "string" + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" }, - "description": "Cross-service attributes for the location. For example\n{\"cloud.googleapis.com/region\": \"us-east1\"}\n", + "description": "Service-specific metadata associated with the operation. It typically contains progress information and common metadata such as create time. Some services might not provide such metadata. Any method that returns a long-running operation should document the metadata type, if any.", + "type": "object" + }, + "name": { + "description": "The server-assigned name, which is only unique within the same service that originally returns it. If you use the default HTTP mapping, the name should have the format of operations/some/unique/name.", + "type": "string" + }, + "response": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "description": "The normal response of the operation in case of success. If the original method returns no data on success, such as Delete, the response is google.protobuf.Empty. If the original method is standard Get/Create/Update, the response should be the resource. For other methods, the response should have the type XxxResponse, where Xxx is the original method name. For example, if the original method name is TakeSnapshot(), the inferred response type is TakeSnapshotResponse.", "type": "object" } }, - "id": "Location" + "type": "object" }, - "AuthorizedCertificate": { - "description": "An SSL certificate that a user has been authorized to administer. A user is authorized to administer any certificate that applies to one of their authorized domains.", - "type": "object", + "OperationMetadata": { + "description": "Metadata for the given google.longrunning.Operation.", + "id": "OperationMetadata", "properties": { - "name": { - "description": "Full path to the AuthorizedCertificate resource in the API. Example: apps/myapp/authorizedCertificates/12345.@OutputOnly", - "type": "string" - }, - "domainMappingsCount": { - "description": "Aggregate count of the domain mappings with this certificate mapped. This count includes domain mappings on applications for which the user does not have VIEWER permissions.Only returned by GET or LIST requests when specifically requested by the view=FULL_CERTIFICATE option.@OutputOnly", - "format": "int32", - "type": "integer" - }, - "domainNames": { - "description": "Topmost applicable domains of this certificate. This certificate applies to these domains and their subdomains. Example: example.com.@OutputOnly", - "type": "array", - "items": { - "type": "string" - } - }, - "id": { - "description": "Relative name of the certificate. This is a unique value autogenerated on AuthorizedCertificate resource creation. Example: 12345.@OutputOnly", - "type": "string" - }, - "displayName": { - "description": "The user-specified display name of the certificate. This is not guaranteed to be unique. Example: My Certificate.", - "type": "string" - }, - "managedCertificate": { - "description": "Only applicable if this certificate is managed by App Engine. Managed certificates are tied to the lifecycle of a DomainMapping and cannot be updated or deleted via the AuthorizedCertificates API. If this certificate is manually administered by the user, this field will be empty.@OutputOnly", - "$ref": "ManagedCertificate" - }, - "certificateRawData": { - "$ref": "CertificateRawData", - "description": "The SSL certificate serving the AuthorizedCertificate resource. This must be obtained independently from a certificate authority." - }, - "visibleDomainMappings": { - "description": "The full paths to user visible Domain Mapping resources that have this certificate mapped. Example: apps/myapp/domainMappings/example.com.This may not represent the full list of mapped domain mappings if the user does not have VIEWER permissions on all of the applications that have this certificate mapped. See domain_mappings_count for a complete count.Only returned by GET or LIST requests when specifically requested by the view=FULL_CERTIFICATE option.@OutputOnly", - "type": "array", - "items": { - "type": "string" - } - }, - "expireTime": { - "description": "The time when this certificate expires. To update the renewal time on this certificate, upload an SSL certificate with a different expiration time using AuthorizedCertificates.UpdateAuthorizedCertificate.@OutputOnly", + "endTime": { + "description": "Timestamp that this operation completed.@OutputOnly", "format": "google-datetime", "type": "string" + }, + "insertTime": { + "description": "Timestamp that this operation was created.@OutputOnly", + "format": "google-datetime", + "type": "string" + }, + "method": { + "description": "API method that initiated this operation. Example: google.appengine.v1beta4.Version.CreateVersion.@OutputOnly", + "type": "string" + }, + "operationType": { + "description": "Type of this operation. Deprecated, use method field instead. Example: \"create_version\".@OutputOnly", + "type": "string" + }, + "target": { + "description": "Name of the resource that this operation is acting on. Example: apps/myapp/modules/default.@OutputOnly", + "type": "string" + }, + "user": { + "description": "User who requested this operation.@OutputOnly", + "type": "string" } }, - "id": "AuthorizedCertificate" + "type": "object" + }, + "OperationMetadataV1": { + "description": "Metadata for the given google.longrunning.Operation.", + "id": "OperationMetadataV1", + "properties": { + "createVersionMetadata": { + "$ref": "CreateVersionMetadataV1" + }, + "endTime": { + "description": "Time that this operation completed.@OutputOnly", + "format": "google-datetime", + "type": "string" + }, + "ephemeralMessage": { + "description": "Ephemeral message that may change every time the operation is polled. @OutputOnly", + "type": "string" + }, + "insertTime": { + "description": "Time that this operation was created.@OutputOnly", + "format": "google-datetime", + "type": "string" + }, + "method": { + "description": "API method that initiated this operation. Example: google.appengine.v1.Versions.CreateVersion.@OutputOnly", + "type": "string" + }, + "target": { + "description": "Name of the resource that this operation is acting on. Example: apps/myapp/services/default.@OutputOnly", + "type": "string" + }, + "user": { + "description": "User who requested this operation.@OutputOnly", + "type": "string" + }, + "warning": { + "description": "Durable messages that persist on every operation poll. @OutputOnly", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "OperationMetadataV1Alpha": { + "description": "Metadata for the given google.longrunning.Operation.", + "id": "OperationMetadataV1Alpha", + "properties": { + "createVersionMetadata": { + "$ref": "CreateVersionMetadataV1Alpha" + }, + "endTime": { + "description": "Time that this operation completed.@OutputOnly", + "format": "google-datetime", + "type": "string" + }, + "ephemeralMessage": { + "description": "Ephemeral message that may change every time the operation is polled. @OutputOnly", + "type": "string" + }, + "insertTime": { + "description": "Time that this operation was created.@OutputOnly", + "format": "google-datetime", + "type": "string" + }, + "method": { + "description": "API method that initiated this operation. Example: google.appengine.v1alpha.Versions.CreateVersion.@OutputOnly", + "type": "string" + }, + "target": { + "description": "Name of the resource that this operation is acting on. Example: apps/myapp/services/default.@OutputOnly", + "type": "string" + }, + "user": { + "description": "User who requested this operation.@OutputOnly", + "type": "string" + }, + "warning": { + "description": "Durable messages that persist on every operation poll. @OutputOnly", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "OperationMetadataV1Beta": { + "description": "Metadata for the given google.longrunning.Operation.", + "id": "OperationMetadataV1Beta", + "properties": { + "createVersionMetadata": { + "$ref": "CreateVersionMetadataV1Beta" + }, + "endTime": { + "description": "Time that this operation completed.@OutputOnly", + "format": "google-datetime", + "type": "string" + }, + "ephemeralMessage": { + "description": "Ephemeral message that may change every time the operation is polled. @OutputOnly", + "type": "string" + }, + "insertTime": { + "description": "Time that this operation was created.@OutputOnly", + "format": "google-datetime", + "type": "string" + }, + "method": { + "description": "API method that initiated this operation. Example: google.appengine.v1beta.Versions.CreateVersion.@OutputOnly", + "type": "string" + }, + "target": { + "description": "Name of the resource that this operation is acting on. Example: apps/myapp/services/default.@OutputOnly", + "type": "string" + }, + "user": { + "description": "User who requested this operation.@OutputOnly", + "type": "string" + }, + "warning": { + "description": "Durable messages that persist on every operation poll. @OutputOnly", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "OperationMetadataV1Beta5": { + "description": "Metadata for the given google.longrunning.Operation.", + "id": "OperationMetadataV1Beta5", + "properties": { + "endTime": { + "description": "Timestamp that this operation completed.@OutputOnly", + "format": "google-datetime", + "type": "string" + }, + "insertTime": { + "description": "Timestamp that this operation was created.@OutputOnly", + "format": "google-datetime", + "type": "string" + }, + "method": { + "description": "API method name that initiated this operation. Example: google.appengine.v1beta5.Version.CreateVersion.@OutputOnly", + "type": "string" + }, + "target": { + "description": "Name of the resource that this operation is acting on. Example: apps/myapp/services/default.@OutputOnly", + "type": "string" + }, + "user": { + "description": "User who requested this operation.@OutputOnly", + "type": "string" + } + }, + "type": "object" }, "ResourceRecord": { - "id": "ResourceRecord", "description": "A DNS resource record.", - "type": "object", + "id": "ResourceRecord", "properties": { "name": { "description": "Relative name of the object affected by this record. Only applicable for CNAME records. Example: 'www'.", "type": "string" }, + "rrdata": { + "description": "Data for this record. Values vary by record type, as defined in RFC 1035 (section 5) and RFC 1034 (section 3.6.1).", + "type": "string" + }, "type": { - "enumDescriptions": [ - "An A resource record. Data is an IPv4 address.", - "An AAAA resource record. Data is an IPv6 address.", - "A CNAME resource record. Data is a domain name to be aliased." - ], + "description": "Resource record type. Example: AAAA.", "enum": [ "A", "AAAA", "CNAME" ], - "description": "Resource record type. Example: AAAA.", - "type": "string" - }, - "rrdata": { - "description": "Data for this record. Values vary by record type, as defined in RFC 1035 (section 5) and RFC 1034 (section 3.6.1).", + "enumDescriptions": [ + "An A resource record. Data is an IPv4 address.", + "An AAAA resource record. Data is an IPv6 address.", + "A CNAME resource record. Data is a domain name to be aliased." + ], "type": "string" } - } - } - }, - "icons": { - "x16": "http://www.google.com/images/icons/product/search-16.gif", - "x32": "http://www.google.com/images/icons/product/search-32.gif" - }, - "protocol": "rest", - "version": "v1alpha", - "baseUrl": "https://appengine.googleapis.com/", - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/cloud-platform": { - "description": "View and manage your data across Google Cloud Platform services" + }, + "type": "object" + }, + "SslSettings": { + "description": "SSL configuration for a DomainMapping resource.", + "id": "SslSettings", + "properties": { + "certificateId": { + "description": "ID of the AuthorizedCertificate resource configuring SSL for the application. Clearing this field will remove SSL support.By default, a managed certificate is automatically created for every domain mapping. To omit SSL support or to configure SSL manually, specify no_managed_certificate on a CREATE or UPDATE request. You must be authorized to administer the AuthorizedCertificate resource to manually map it to a DomainMapping resource. Example: 12345.", + "type": "string" }, - "https://www.googleapis.com/auth/appengine.admin": { - "description": "View and manage your applications deployed on Google App Engine" - }, - "https://www.googleapis.com/auth/cloud-platform.read-only": { - "description": "View your data across Google Cloud Platform services" + "isManagedCertificate": { + "description": "Whether the mapped certificate is an App Engine managed certificate. Managed certificates are created by default with a domain mapping. To opt out, specify no_managed_certificate on a CREATE or UPDATE request.@OutputOnly", + "type": "boolean" } - } + }, + "type": "object" + }, + "Status": { + "description": "The Status type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by gRPC (https://github.com/grpc). The error model is designed to be:\nSimple to use and understand for most users\nFlexible enough to meet unexpected needsOverviewThe Status message contains three pieces of data: error code, error message, and error details. The error code should be an enum value of google.rpc.Code, but it may accept additional error codes if needed. The error message should be a developer-facing English message that helps developers understand and resolve the error. If a localized user-facing error message is needed, put the localized message in the error details or localize it in the client. The optional error details may contain arbitrary information about the error. There is a predefined set of error detail types in the package google.rpc that can be used for common error conditions.Language mappingThe Status message is the logical representation of the error model, but it is not necessarily the actual wire format. When the Status message is exposed in different client libraries and different wire protocols, it can be mapped differently. For example, it will likely be mapped to some exceptions in Java, but more likely mapped to some error codes in C.Other usesThe error model and the Status message can be used in a variety of environments, either with or without APIs, to provide a consistent developer experience across different environments.Example uses of this error model include:\nPartial errors. If a service needs to return partial errors to the client, it may embed the Status in the normal response to indicate the partial errors.\nWorkflow errors. A typical workflow has multiple steps. Each step may have a Status message for error reporting.\nBatch operations. If a client uses batch request and batch response, the Status message should be used directly inside batch response, one for each error sub-response.\nAsynchronous operations. If an API call embeds asynchronous operation results in its response, the status of those operations should be represented directly using the Status message.\nLogging. If some API errors are stored in logs, the message Status could be used directly after any stripping needed for security/privacy reasons.", + "id": "Status", + "properties": { + "code": { + "description": "The status code, which should be an enum value of google.rpc.Code.", + "format": "int32", + "type": "integer" + }, + "details": { + "description": "A list of messages that carry the error details. There is a common set of message types for APIs to use.", + "items": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the google.rpc.Status.details field, or localized by the client.", + "type": "string" + } + }, + "type": "object" } }, - "kind": "discovery#restDescription", - "description": "The App Engine Admin API enables developers to provision and manage their App Engine applications.", "servicePath": "", - "rootUrl": "https://appengine.googleapis.com/", - "basePath": "", - "ownerDomain": "google.com", - "name": "appengine", - "batchPath": "batch", - "id": "appengine:v1alpha", - "documentationLink": "https://cloud.google.com/appengine/docs/admin-api/", - "revision": "20180112", - "title": "Google App Engine Admin API", - "ownerName": "Google", - "discoveryVersion": "v1" -} + "title": "App Engine Admin API", + "version": "v1alpha" +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/appengine/v1alpha/appengine-gen.go b/vendor/google.golang.org/api/appengine/v1alpha/appengine-gen.go index 750a40272..532db94fd 100644 --- a/vendor/google.golang.org/api/appengine/v1alpha/appengine-gen.go +++ b/vendor/google.golang.org/api/appengine/v1alpha/appengine-gen.go @@ -1,4 +1,4 @@ -// Package appengine provides access to the Google App Engine Admin API. +// Package appengine provides access to the App Engine Admin API. // // See https://cloud.google.com/appengine/docs/admin-api/ // @@ -311,6 +311,37 @@ func (s *CertificateRawData) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// CreateVersionMetadataV1: Metadata for the given +// google.longrunning.Operation during a +// google.appengine.v1.CreateVersionRequest. +type CreateVersionMetadataV1 struct { + // CloudBuildId: The Cloud Build ID if one was created as part of the + // version create. @OutputOnly + CloudBuildId string `json:"cloudBuildId,omitempty"` + + // ForceSendFields is a list of field names (e.g. "CloudBuildId") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "CloudBuildId") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *CreateVersionMetadataV1) MarshalJSON() ([]byte, error) { + type NoMethod CreateVersionMetadataV1 + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // CreateVersionMetadataV1Alpha: Metadata for the given // google.longrunning.Operation during a // google.appengine.v1alpha.CreateVersionRequest. @@ -624,6 +655,10 @@ func (s *ListOperationsResponse) MarshalJSON() ([]byte, error) { // Location: A resource that represents Google Cloud Platform location. type Location struct { + // DisplayName: The friendly name for this location, typically a nearby + // city name. For example, "Tokyo". + DisplayName string `json:"displayName,omitempty"` + // Labels: Cross-service attributes for the location. For // example // {"cloud.googleapis.com/region": "us-east1"} @@ -647,7 +682,7 @@ type Location struct { // server. googleapi.ServerResponse `json:"-"` - // ForceSendFields is a list of field names (e.g. "Labels") to + // ForceSendFields is a list of field names (e.g. "DisplayName") to // unconditionally include in API requests. By default, fields with // empty values are omitted from API requests. However, any non-pointer, // non-interface field appearing in ForceSendFields will be sent to the @@ -655,10 +690,10 @@ type Location struct { // used to include empty fields in Patch requests. ForceSendFields []string `json:"-"` - // NullFields is a list of field names (e.g. "Labels") to include in API - // requests with the JSON null value. By default, fields with empty - // values are omitted from API requests. However, any field with an - // empty value appearing in NullFields will be sent to the server as + // NullFields is a list of field names (e.g. "DisplayName") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as // null. It is an error if a field in this list has a non-empty value. // This may be used to include null fields in Patch requests. NullFields []string `json:"-"` @@ -673,11 +708,11 @@ func (s *Location) MarshalJSON() ([]byte, error) { // LocationMetadata: Metadata for the given // google.cloud.location.Location. type LocationMetadata struct { - // FlexibleEnvironmentAvailable: App Engine Flexible Environment is + // FlexibleEnvironmentAvailable: App Engine flexible environment is // available in the given location.@OutputOnly FlexibleEnvironmentAvailable bool `json:"flexibleEnvironmentAvailable,omitempty"` - // StandardEnvironmentAvailable: App Engine Standard Environment is + // StandardEnvironmentAvailable: App Engine standard environment is // available in the given location.@OutputOnly StandardEnvironmentAvailable bool `json:"standardEnvironmentAvailable,omitempty"` @@ -885,6 +920,8 @@ func (s *OperationMetadata) MarshalJSON() ([]byte, error) { // OperationMetadataV1: Metadata for the given // google.longrunning.Operation. type OperationMetadataV1 struct { + CreateVersionMetadata *CreateVersionMetadataV1 `json:"createVersionMetadata,omitempty"` + // EndTime: Time that this operation completed.@OutputOnly EndTime string `json:"endTime,omitempty"` @@ -910,20 +947,22 @@ type OperationMetadataV1 struct { // @OutputOnly Warning []string `json:"warning,omitempty"` - // ForceSendFields is a list of field names (e.g. "EndTime") to - // unconditionally include in API requests. By default, fields with - // empty values are omitted from API requests. However, any non-pointer, - // non-interface field appearing in ForceSendFields will be sent to the - // server regardless of whether the field is empty or not. This may be - // used to include empty fields in Patch requests. + // ForceSendFields is a list of field names (e.g. + // "CreateVersionMetadata") to unconditionally include in API requests. + // By default, fields with empty values are omitted from API requests. + // However, any non-pointer, non-interface field appearing in + // ForceSendFields will be sent to the server regardless of whether the + // field is empty or not. This may be used to include empty fields in + // Patch requests. ForceSendFields []string `json:"-"` - // NullFields is a list of field names (e.g. "EndTime") to include in - // API requests with the JSON null value. By default, fields with empty - // values are omitted from API requests. However, any field with an - // empty value appearing in NullFields will be sent to the server as - // null. It is an error if a field in this list has a non-empty value. - // This may be used to include null fields in Patch requests. + // NullFields is a list of field names (e.g. "CreateVersionMetadata") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. NullFields []string `json:"-"` } @@ -3077,7 +3116,7 @@ type AppsLocationsGetCall struct { header_ http.Header } -// Get: Get information about a location. +// Get: Gets information about a location. func (r *AppsLocationsService) Get(appsId string, locationsId string) *AppsLocationsGetCall { c := &AppsLocationsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.appsId = appsId @@ -3180,7 +3219,7 @@ func (c *AppsLocationsGetCall) Do(opts ...googleapi.CallOption) (*Location, erro } return ret, nil // { - // "description": "Get information about a location.", + // "description": "Gets information about a location.", // "flatPath": "v1alpha/apps/{appsId}/locations/{locationsId}", // "httpMethod": "GET", // "id": "appengine.apps.locations.get", diff --git a/vendor/google.golang.org/api/appengine/v1beta/appengine-api.json b/vendor/google.golang.org/api/appengine/v1beta/appengine-api.json index 5eeed2c49..695c5e7de 100644 --- a/vendor/google.golang.org/api/appengine/v1beta/appengine-api.json +++ b/vendor/google.golang.org/api/appengine/v1beta/appengine-api.json @@ -1,204 +1,297 @@ { - "id": "appengine:v1beta", - "documentationLink": "https://cloud.google.com/appengine/docs/admin-api/", - "revision": "20180112", - "title": "Google App Engine Admin API", - "ownerName": "Google", + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/appengine.admin": { + "description": "View and manage your applications deployed on Google App Engine" + }, + "https://www.googleapis.com/auth/cloud-platform": { + "description": "View and manage your data across Google Cloud Platform services" + }, + "https://www.googleapis.com/auth/cloud-platform.read-only": { + "description": "View your data across Google Cloud Platform services" + } + } + } + }, + "basePath": "", + "baseUrl": "https://appengine.googleapis.com/", + "batchPath": "batch", + "description": "The App Engine Admin API enables developers to provision and manage their App Engine applications.", "discoveryVersion": "v1", + "documentationLink": "https://cloud.google.com/appengine/docs/admin-api/", + "icons": { + "x16": "http://www.google.com/images/icons/product/search-16.gif", + "x32": "http://www.google.com/images/icons/product/search-32.gif" + }, + "id": "appengine:v1beta", + "kind": "discovery#restDescription", + "name": "appengine", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "$.xgafv": { + "description": "V1 error format.", + "enum": [ + "1", + "2" + ], + "enumDescriptions": [ + "v1 error format", + "v2 error format" + ], + "location": "query", + "type": "string" + }, + "access_token": { + "description": "OAuth access token.", + "location": "query", + "type": "string" + }, + "alt": { + "default": "json", + "description": "Data format for response.", + "enum": [ + "json", + "media", + "proto" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json", + "Media download with context-dependent Content-Type", + "Responses with Content-Type of application/x-protobuf" + ], + "location": "query", + "type": "string" + }, + "bearer_token": { + "description": "OAuth bearer token.", + "location": "query", + "type": "string" + }, + "callback": { + "description": "JSONP", + "location": "query", + "type": "string" + }, + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "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.", + "location": "query", + "type": "string" + }, + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "pp": { + "default": "true", + "description": "Pretty-print response.", + "location": "query", + "type": "boolean" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", + "location": "query", + "type": "string" + }, + "uploadType": { + "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", + "location": "query", + "type": "string" + }, + "upload_protocol": { + "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", + "location": "query", + "type": "string" + } + }, + "protocol": "rest", "resources": { "apps": { "methods": { "create": { + "description": "Creates an App Engine application for a Google Cloud Platform project. Required fields:\nid - The ID of the target Cloud Platform project.\nlocation - The region (https://cloud.google.com/appengine/docs/locations) where you want the App Engine application located.For more information about App Engine applications, see Managing Projects, Applications, and Billing (https://cloud.google.com/appengine/docs/standard/python/console/).", + "flatPath": "v1beta/apps", + "httpMethod": "POST", + "id": "appengine.apps.create", + "parameterOrder": [], + "parameters": {}, + "path": "v1beta/apps", "request": { "$ref": "Application" }, - "description": "Creates an App Engine application for a Google Cloud Platform project. Required fields:\nid - The ID of the target Cloud Platform project.\nlocation - The region (https://cloud.google.com/appengine/docs/locations) where you want the App Engine application located.For more information about App Engine applications, see Managing Projects, Applications, and Billing (https://cloud.google.com/appengine/docs/python/console/).", - "httpMethod": "POST", - "parameterOrder": [], "response": { "$ref": "Operation" }, - "parameters": {}, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta/apps", - "id": "appengine.apps.create", - "path": "v1beta/apps" - }, - "repair": { - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "appsId" - ], - "httpMethod": "POST", - "parameters": { - "appsId": { - "location": "path", - "description": "Part of `name`. Name of the application to repair. Example: apps/myapp", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta/apps/{appsId}:repair", - "path": "v1beta/apps/{appsId}:repair", - "id": "appengine.apps.repair", - "request": { - "$ref": "RepairApplicationRequest" - }, - "description": "Recreates the required App Engine features for the specified App Engine application, for example a Cloud Storage bucket or App Engine service account. Use this method if you receive an error message about a missing feature, for example, Error retrieving the App Engine service account." + ] }, "get": { + "description": "Gets information about an application.", + "flatPath": "v1beta/apps/{appsId}", "httpMethod": "GET", + "id": "appengine.apps.get", "parameterOrder": [ "appsId" ], - "response": { - "$ref": "Application" - }, "parameters": { "appsId": { - "location": "path", "description": "Part of `name`. Name of the Application resource to get. Example: apps/myapp.", + "location": "path", "required": true, "type": "string" } }, + "path": "v1beta/apps/{appsId}", + "response": { + "$ref": "Application" + }, "scopes": [ "https://www.googleapis.com/auth/appengine.admin", "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/cloud-platform.read-only" - ], - "flatPath": "v1beta/apps/{appsId}", - "id": "appengine.apps.get", - "path": "v1beta/apps/{appsId}", - "description": "Gets information about an application." + ] }, "patch": { - "request": { - "$ref": "Application" - }, "description": "Updates the specified Application resource. You can update the following fields:\nauth_domain - Google authentication domain for controlling user access to the application.\ndefault_cookie_expiration - Cookie expiration policy for the application.", + "flatPath": "v1beta/apps/{appsId}", "httpMethod": "PATCH", + "id": "appengine.apps.patch", "parameterOrder": [ "appsId" ], - "response": { - "$ref": "Operation" - }, "parameters": { "appsId": { "description": "Part of `name`. Name of the Application resource to update. Example: apps/myapp.", + "location": "path", "required": true, - "type": "string", - "location": "path" + "type": "string" }, "updateMask": { "description": "Standard field mask for the set of fields to be updated.", "format": "google-fieldmask", - "type": "string", - "location": "query" + "location": "query", + "type": "string" } }, + "path": "v1beta/apps/{appsId}", + "request": { + "$ref": "Application" + }, + "response": { + "$ref": "Operation" + }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "repair": { + "description": "Recreates the required App Engine features for the specified App Engine application, for example a Cloud Storage bucket or App Engine service account. Use this method if you receive an error message about a missing feature, for example, Error retrieving the App Engine service account.", + "flatPath": "v1beta/apps/{appsId}:repair", + "httpMethod": "POST", + "id": "appengine.apps.repair", + "parameterOrder": [ + "appsId" ], - "flatPath": "v1beta/apps/{appsId}", - "id": "appengine.apps.patch", - "path": "v1beta/apps/{appsId}" + "parameters": { + "appsId": { + "description": "Part of `name`. Name of the application to repair. Example: apps/myapp", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1beta/apps/{appsId}:repair", + "request": { + "$ref": "RepairApplicationRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] } }, "resources": { "authorizedCertificates": { "methods": { - "delete": { - "path": "v1beta/apps/{appsId}/authorizedCertificates/{authorizedCertificatesId}", - "id": "appengine.apps.authorizedCertificates.delete", - "description": "Deletes the specified SSL certificate.", - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "appsId", - "authorizedCertificatesId" - ], - "httpMethod": "DELETE", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "authorizedCertificatesId": { - "location": "path", - "description": "Part of `name`. See documentation of `appsId`.", - "required": true, - "type": "string" - }, - "appsId": { - "location": "path", - "description": "Part of `name`. Name of the resource to delete. Example: apps/myapp/authorizedCertificates/12345.", - "required": true, - "type": "string" - } - }, - "flatPath": "v1beta/apps/{appsId}/authorizedCertificates/{authorizedCertificatesId}" - }, - "list": { - "description": "Lists all SSL certificates the user is authorized to administer.", - "httpMethod": "GET", - "response": { - "$ref": "ListAuthorizedCertificatesResponse" - }, + "create": { + "description": "Uploads the specified SSL certificate.", + "flatPath": "v1beta/apps/{appsId}/authorizedCertificates", + "httpMethod": "POST", + "id": "appengine.apps.authorizedCertificates.create", "parameterOrder": [ "appsId" ], "parameters": { "appsId": { "description": "Part of `parent`. Name of the parent Application resource. Example: apps/myapp.", + "location": "path", "required": true, - "type": "string", - "location": "path" - }, - "pageToken": { - "location": "query", - "description": "Continuation token for fetching the next page of results.", - "type": "string" - }, - "pageSize": { - "description": "Maximum results to return per page.", - "format": "int32", - "type": "integer", - "location": "query" - }, - "view": { - "location": "query", - "enum": [ - "BASIC_CERTIFICATE", - "FULL_CERTIFICATE" - ], - "description": "Controls the set of fields returned in the LIST response.", "type": "string" } }, - "scopes": [ - "https://www.googleapis.com/auth/appengine.admin", - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ], - "flatPath": "v1beta/apps/{appsId}/authorizedCertificates", - "id": "appengine.apps.authorizedCertificates.list", - "path": "v1beta/apps/{appsId}/authorizedCertificates" - }, - "get": { - "description": "Gets the specified SSL certificate.", - "httpMethod": "GET", + "path": "v1beta/apps/{appsId}/authorizedCertificates", + "request": { + "$ref": "AuthorizedCertificate" + }, "response": { "$ref": "AuthorizedCertificate" }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Deletes the specified SSL certificate.", + "flatPath": "v1beta/apps/{appsId}/authorizedCertificates/{authorizedCertificatesId}", + "httpMethod": "DELETE", + "id": "appengine.apps.authorizedCertificates.delete", + "parameterOrder": [ + "appsId", + "authorizedCertificatesId" + ], + "parameters": { + "appsId": { + "description": "Part of `name`. Name of the resource to delete. Example: apps/myapp/authorizedCertificates/12345.", + "location": "path", + "required": true, + "type": "string" + }, + "authorizedCertificatesId": { + "description": "Part of `name`. See documentation of `appsId`.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1beta/apps/{appsId}/authorizedCertificates/{authorizedCertificatesId}", + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Gets the specified SSL certificate.", + "flatPath": "v1beta/apps/{appsId}/authorizedCertificates/{authorizedCertificatesId}", + "httpMethod": "GET", + "id": "appengine.apps.authorizedCertificates.get", "parameterOrder": [ "appsId", "authorizedCertificatesId" @@ -206,200 +299,75 @@ "parameters": { "appsId": { "description": "Part of `name`. Name of the resource requested. Example: apps/myapp/authorizedCertificates/12345.", + "location": "path", "required": true, - "type": "string", - "location": "path" + "type": "string" + }, + "authorizedCertificatesId": { + "description": "Part of `name`. See documentation of `appsId`.", + "location": "path", + "required": true, + "type": "string" }, "view": { - "location": "query", + "description": "Controls the set of fields returned in the GET response.", "enum": [ "BASIC_CERTIFICATE", "FULL_CERTIFICATE" ], - "description": "Controls the set of fields returned in the GET response.", + "location": "query", "type": "string" - }, - "authorizedCertificatesId": { - "description": "Part of `name`. See documentation of `appsId`.", - "required": true, - "type": "string", - "location": "path" } }, + "path": "v1beta/apps/{appsId}/authorizedCertificates/{authorizedCertificatesId}", + "response": { + "$ref": "AuthorizedCertificate" + }, "scopes": [ "https://www.googleapis.com/auth/appengine.admin", "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/cloud-platform.read-only" - ], - "flatPath": "v1beta/apps/{appsId}/authorizedCertificates/{authorizedCertificatesId}", - "id": "appengine.apps.authorizedCertificates.get", - "path": "v1beta/apps/{appsId}/authorizedCertificates/{authorizedCertificatesId}" - }, - "patch": { - "response": { - "$ref": "AuthorizedCertificate" - }, - "parameterOrder": [ - "appsId", - "authorizedCertificatesId" - ], - "httpMethod": "PATCH", - "parameters": { - "authorizedCertificatesId": { - "description": "Part of `name`. See documentation of `appsId`.", - "required": true, - "type": "string", - "location": "path" - }, - "updateMask": { - "location": "query", - "description": "Standard field mask for the set of fields to be updated. Updates are only supported on the certificate_raw_data and display_name fields.", - "format": "google-fieldmask", - "type": "string" - }, - "appsId": { - "location": "path", - "description": "Part of `name`. Name of the resource to update. Example: apps/myapp/authorizedCertificates/12345.", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta/apps/{appsId}/authorizedCertificates/{authorizedCertificatesId}", - "path": "v1beta/apps/{appsId}/authorizedCertificates/{authorizedCertificatesId}", - "id": "appengine.apps.authorizedCertificates.patch", - "request": { - "$ref": "AuthorizedCertificate" - }, - "description": "Updates the specified SSL certificate. To renew a certificate and maintain its existing domain mappings, update certificate_data with a new certificate. The new certificate must be applicable to the same domains as the original certificate. The certificate display_name may also be updated." - }, - "create": { - "httpMethod": "POST", - "parameterOrder": [ - "appsId" - ], - "response": { - "$ref": "AuthorizedCertificate" - }, - "parameters": { - "appsId": { - "location": "path", - "description": "Part of `parent`. Name of the parent Application resource. Example: apps/myapp.", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta/apps/{appsId}/authorizedCertificates", - "id": "appengine.apps.authorizedCertificates.create", - "path": "v1beta/apps/{appsId}/authorizedCertificates", - "request": { - "$ref": "AuthorizedCertificate" - }, - "description": "Uploads the specified SSL certificate." - } - } - }, - "services": { - "methods": { - "delete": { - "description": "Deletes the specified service and all enclosed versions.", - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "appsId", - "servicesId" - ], - "httpMethod": "DELETE", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "servicesId": { - "description": "Part of `name`. See documentation of `appsId`.", - "required": true, - "type": "string", - "location": "path" - }, - "appsId": { - "location": "path", - "description": "Part of `name`. Name of the resource requested. Example: apps/myapp/services/default.", - "required": true, - "type": "string" - } - }, - "flatPath": "v1beta/apps/{appsId}/services/{servicesId}", - "path": "v1beta/apps/{appsId}/services/{servicesId}", - "id": "appengine.apps.services.delete" + ] }, "list": { - "description": "Lists all the services in the application.", - "response": { - "$ref": "ListServicesResponse" - }, + "description": "Lists all SSL certificates the user is authorized to administer.", + "flatPath": "v1beta/apps/{appsId}/authorizedCertificates", + "httpMethod": "GET", + "id": "appengine.apps.authorizedCertificates.list", "parameterOrder": [ "appsId" ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/appengine.admin", - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ], "parameters": { + "appsId": { + "description": "Part of `parent`. Name of the parent Application resource. Example: apps/myapp.", + "location": "path", + "required": true, + "type": "string" + }, "pageSize": { "description": "Maximum results to return per page.", "format": "int32", - "type": "integer", - "location": "query" - }, - "appsId": { - "description": "Part of `parent`. Name of the parent Application resource. Example: apps/myapp.", - "required": true, - "type": "string", - "location": "path" + "location": "query", + "type": "integer" }, "pageToken": { - "location": "query", "description": "Continuation token for fetching the next page of results.", + "location": "query", + "type": "string" + }, + "view": { + "description": "Controls the set of fields returned in the LIST response.", + "enum": [ + "BASIC_CERTIFICATE", + "FULL_CERTIFICATE" + ], + "location": "query", "type": "string" } }, - "flatPath": "v1beta/apps/{appsId}/services", - "path": "v1beta/apps/{appsId}/services", - "id": "appengine.apps.services.list" - }, - "get": { - "flatPath": "v1beta/apps/{appsId}/services/{servicesId}", - "path": "v1beta/apps/{appsId}/services/{servicesId}", - "id": "appengine.apps.services.get", - "description": "Gets the current configuration of the specified service.", + "path": "v1beta/apps/{appsId}/authorizedCertificates", "response": { - "$ref": "Service" - }, - "parameterOrder": [ - "appsId", - "servicesId" - ], - "httpMethod": "GET", - "parameters": { - "servicesId": { - "description": "Part of `name`. See documentation of `appsId`.", - "required": true, - "type": "string", - "location": "path" - }, - "appsId": { - "description": "Part of `name`. Name of the resource requested. Example: apps/myapp/services/default.", - "required": true, - "type": "string", - "location": "path" - } + "$ref": "ListAuthorizedCertificatesResponse" }, "scopes": [ "https://www.googleapis.com/auth/appengine.admin", @@ -408,473 +376,44 @@ ] }, "patch": { - "response": { - "$ref": "Operation" - }, + "description": "Updates the specified SSL certificate. To renew a certificate and maintain its existing domain mappings, update certificate_data with a new certificate. The new certificate must be applicable to the same domains as the original certificate. The certificate display_name may also be updated.", + "flatPath": "v1beta/apps/{appsId}/authorizedCertificates/{authorizedCertificatesId}", + "httpMethod": "PATCH", + "id": "appengine.apps.authorizedCertificates.patch", "parameterOrder": [ "appsId", - "servicesId" + "authorizedCertificatesId" ], - "httpMethod": "PATCH", "parameters": { "appsId": { + "description": "Part of `name`. Name of the resource to update. Example: apps/myapp/authorizedCertificates/12345.", "location": "path", - "description": "Part of `name`. Name of the resource to update. Example: apps/myapp/services/default.", "required": true, "type": "string" }, - "migrateTraffic": { - "description": "Set to true to gradually shift traffic to one or more versions that you specify. By default, traffic is shifted immediately. For gradual traffic migration, the target versions must be located within instances that are configured for both warmup requests (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1beta/apps.services.versions#inboundservicetype) and automatic scaling (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1beta/apps.services.versions#automaticscaling). You must specify the shardBy (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1beta/apps.services#shardby) field in the Service resource. Gradual traffic migration is not supported in the App Engine flexible environment. For examples, see Migrating and Splitting Traffic (https://cloud.google.com/appengine/docs/admin-api/migrating-splitting-traffic).", - "type": "boolean", - "location": "query" + "authorizedCertificatesId": { + "description": "Part of `name`. See documentation of `appsId`.", + "location": "path", + "required": true, + "type": "string" }, "updateMask": { - "location": "query", - "description": "Standard field mask for the set of fields to be updated.", + "description": "Standard field mask for the set of fields to be updated. Updates are only supported on the certificate_raw_data and display_name fields.", "format": "google-fieldmask", + "location": "query", "type": "string" - }, - "servicesId": { - "description": "Part of `name`. See documentation of `appsId`.", - "required": true, - "type": "string", - "location": "path" } }, + "path": "v1beta/apps/{appsId}/authorizedCertificates/{authorizedCertificatesId}", + "request": { + "$ref": "AuthorizedCertificate" + }, + "response": { + "$ref": "AuthorizedCertificate" + }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta/apps/{appsId}/services/{servicesId}", - "path": "v1beta/apps/{appsId}/services/{servicesId}", - "id": "appengine.apps.services.patch", - "request": { - "$ref": "Service" - }, - "description": "Updates the configuration of the specified service." - } - }, - "resources": { - "versions": { - "methods": { - "delete": { - "description": "Deletes an existing Version resource.", - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "appsId", - "servicesId", - "versionsId" - ], - "httpMethod": "DELETE", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "servicesId": { - "description": "Part of `name`. See documentation of `appsId`.", - "required": true, - "type": "string", - "location": "path" - }, - "appsId": { - "description": "Part of `name`. Name of the resource requested. Example: apps/myapp/services/default/versions/v1.", - "required": true, - "type": "string", - "location": "path" - }, - "versionsId": { - "description": "Part of `name`. See documentation of `appsId`.", - "required": true, - "type": "string", - "location": "path" - } - }, - "flatPath": "v1beta/apps/{appsId}/services/{servicesId}/versions/{versionsId}", - "path": "v1beta/apps/{appsId}/services/{servicesId}/versions/{versionsId}", - "id": "appengine.apps.services.versions.delete" - }, - "list": { - "id": "appengine.apps.services.versions.list", - "path": "v1beta/apps/{appsId}/services/{servicesId}/versions", - "description": "Lists the versions of a service.", - "httpMethod": "GET", - "parameterOrder": [ - "appsId", - "servicesId" - ], - "response": { - "$ref": "ListVersionsResponse" - }, - "parameters": { - "appsId": { - "location": "path", - "description": "Part of `parent`. Name of the parent Service resource. Example: apps/myapp/services/default.", - "required": true, - "type": "string" - }, - "pageToken": { - "description": "Continuation token for fetching the next page of results.", - "type": "string", - "location": "query" - }, - "pageSize": { - "description": "Maximum results to return per page.", - "format": "int32", - "type": "integer", - "location": "query" - }, - "view": { - "location": "query", - "enum": [ - "BASIC", - "FULL" - ], - "description": "Controls the set of fields returned in the List response.", - "type": "string" - }, - "servicesId": { - "description": "Part of `parent`. See documentation of `appsId`.", - "required": true, - "type": "string", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/appengine.admin", - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ], - "flatPath": "v1beta/apps/{appsId}/services/{servicesId}/versions" - }, - "get": { - "httpMethod": "GET", - "response": { - "$ref": "Version" - }, - "parameterOrder": [ - "appsId", - "servicesId", - "versionsId" - ], - "parameters": { - "servicesId": { - "description": "Part of `name`. See documentation of `appsId`.", - "required": true, - "type": "string", - "location": "path" - }, - "appsId": { - "description": "Part of `name`. Name of the resource requested. Example: apps/myapp/services/default/versions/v1.", - "required": true, - "type": "string", - "location": "path" - }, - "versionsId": { - "description": "Part of `name`. See documentation of `appsId`.", - "required": true, - "type": "string", - "location": "path" - }, - "view": { - "enum": [ - "BASIC", - "FULL" - ], - "description": "Controls the set of fields returned in the Get response.", - "type": "string", - "location": "query" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/appengine.admin", - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ], - "flatPath": "v1beta/apps/{appsId}/services/{servicesId}/versions/{versionsId}", - "id": "appengine.apps.services.versions.get", - "path": "v1beta/apps/{appsId}/services/{servicesId}/versions/{versionsId}", - "description": "Gets the specified Version resource. By default, only a BASIC_VIEW will be returned. Specify the FULL_VIEW parameter to get the full resource." - }, - "patch": { - "request": { - "$ref": "Version" - }, - "description": "Updates the specified Version resource. You can specify the following fields depending on the App Engine environment and type of scaling that the version resource uses:\nserving_status (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1beta/apps.services.versions#Version.FIELDS.serving_status): For Version resources that use basic scaling, manual scaling, or run in the App Engine flexible environment.\ninstance_class (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1beta/apps.services.versions#Version.FIELDS.instance_class): For Version resources that run in the App Engine standard environment.\nautomatic_scaling.min_idle_instances (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1beta/apps.services.versions#Version.FIELDS.automatic_scaling): For Version resources that use automatic scaling and run in the App Engine standard environment.\nautomatic_scaling.max_idle_instances (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1beta/apps.services.versions#Version.FIELDS.automatic_scaling): For Version resources that use automatic scaling and run in the App Engine standard environment.\nautomatic_scaling.min_total_instances (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1beta/apps.services.versions#Version.FIELDS.automatic_scaling): For Version resources that use automatic scaling and run in the App Engine Flexible environment.\nautomatic_scaling.max_total_instances (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1beta/apps.services.versions#Version.FIELDS.automatic_scaling): For Version resources that use automatic scaling and run in the App Engine Flexible environment.\nautomatic_scaling.cool_down_period_sec (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1beta/apps.services.versions#Version.FIELDS.automatic_scaling): For Version resources that use automatic scaling and run in the App Engine Flexible environment.\nautomatic_scaling.cpu_utilization.target_utilization (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1beta/apps.services.versions#Version.FIELDS.automatic_scaling): For Version resources that use automatic scaling and run in the App Engine Flexible environment.", - "httpMethod": "PATCH", - "parameterOrder": [ - "appsId", - "servicesId", - "versionsId" - ], - "response": { - "$ref": "Operation" - }, - "parameters": { - "versionsId": { - "location": "path", - "description": "Part of `name`. See documentation of `appsId`.", - "required": true, - "type": "string" - }, - "updateMask": { - "location": "query", - "description": "Standard field mask for the set of fields to be updated.", - "format": "google-fieldmask", - "type": "string" - }, - "servicesId": { - "description": "Part of `name`. See documentation of `appsId`.", - "required": true, - "type": "string", - "location": "path" - }, - "appsId": { - "description": "Part of `name`. Name of the resource to update. Example: apps/myapp/services/default/versions/1.", - "required": true, - "type": "string", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta/apps/{appsId}/services/{servicesId}/versions/{versionsId}", - "id": "appengine.apps.services.versions.patch", - "path": "v1beta/apps/{appsId}/services/{servicesId}/versions/{versionsId}" - }, - "create": { - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "appsId", - "servicesId" - ], - "httpMethod": "POST", - "parameters": { - "servicesId": { - "description": "Part of `parent`. See documentation of `appsId`.", - "required": true, - "type": "string", - "location": "path" - }, - "appsId": { - "description": "Part of `parent`. Name of the parent resource to create this version under. Example: apps/myapp/services/default.", - "required": true, - "type": "string", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta/apps/{appsId}/services/{servicesId}/versions", - "path": "v1beta/apps/{appsId}/services/{servicesId}/versions", - "id": "appengine.apps.services.versions.create", - "request": { - "$ref": "Version" - }, - "description": "Deploys code and resource files to a new version." - } - }, - "resources": { - "instances": { - "methods": { - "list": { - "httpMethod": "GET", - "parameterOrder": [ - "appsId", - "servicesId", - "versionsId" - ], - "response": { - "$ref": "ListInstancesResponse" - }, - "parameters": { - "appsId": { - "location": "path", - "description": "Part of `parent`. Name of the parent Version resource. Example: apps/myapp/services/default/versions/v1.", - "required": true, - "type": "string" - }, - "pageToken": { - "location": "query", - "description": "Continuation token for fetching the next page of results.", - "type": "string" - }, - "pageSize": { - "description": "Maximum results to return per page.", - "format": "int32", - "type": "integer", - "location": "query" - }, - "versionsId": { - "description": "Part of `parent`. See documentation of `appsId`.", - "required": true, - "type": "string", - "location": "path" - }, - "servicesId": { - "location": "path", - "description": "Part of `parent`. See documentation of `appsId`.", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/appengine.admin", - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ], - "flatPath": "v1beta/apps/{appsId}/services/{servicesId}/versions/{versionsId}/instances", - "id": "appengine.apps.services.versions.instances.list", - "path": "v1beta/apps/{appsId}/services/{servicesId}/versions/{versionsId}/instances", - "description": "Lists the instances of a version.Tip: To aggregate details about instances over time, see the Stackdriver Monitoring API (https://cloud.google.com/monitoring/api/ref_v3/rest/v3/projects.timeSeries/list)." - }, - "get": { - "id": "appengine.apps.services.versions.instances.get", - "path": "v1beta/apps/{appsId}/services/{servicesId}/versions/{versionsId}/instances/{instancesId}", - "description": "Gets instance information.", - "httpMethod": "GET", - "parameterOrder": [ - "appsId", - "servicesId", - "versionsId", - "instancesId" - ], - "response": { - "$ref": "Instance" - }, - "parameters": { - "servicesId": { - "location": "path", - "description": "Part of `name`. See documentation of `appsId`.", - "required": true, - "type": "string" - }, - "appsId": { - "location": "path", - "description": "Part of `name`. Name of the resource requested. Example: apps/myapp/services/default/versions/v1/instances/instance-1.", - "required": true, - "type": "string" - }, - "instancesId": { - "location": "path", - "description": "Part of `name`. See documentation of `appsId`.", - "required": true, - "type": "string" - }, - "versionsId": { - "description": "Part of `name`. See documentation of `appsId`.", - "required": true, - "type": "string", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/appengine.admin", - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ], - "flatPath": "v1beta/apps/{appsId}/services/{servicesId}/versions/{versionsId}/instances/{instancesId}" - }, - "debug": { - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "appsId", - "servicesId", - "versionsId", - "instancesId" - ], - "httpMethod": "POST", - "parameters": { - "servicesId": { - "location": "path", - "description": "Part of `name`. See documentation of `appsId`.", - "required": true, - "type": "string" - }, - "appsId": { - "description": "Part of `name`. Name of the resource requested. Example: apps/myapp/services/default/versions/v1/instances/instance-1.", - "required": true, - "type": "string", - "location": "path" - }, - "instancesId": { - "location": "path", - "description": "Part of `name`. See documentation of `appsId`.", - "required": true, - "type": "string" - }, - "versionsId": { - "description": "Part of `name`. See documentation of `appsId`.", - "required": true, - "type": "string", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta/apps/{appsId}/services/{servicesId}/versions/{versionsId}/instances/{instancesId}:debug", - "path": "v1beta/apps/{appsId}/services/{servicesId}/versions/{versionsId}/instances/{instancesId}:debug", - "id": "appengine.apps.services.versions.instances.debug", - "request": { - "$ref": "DebugInstanceRequest" - }, - "description": "Enables debugging on a VM instance. This allows you to use the SSH command to connect to the virtual machine where the instance lives. While in \"debug mode\", the instance continues to serve live traffic. You should delete the instance when you are done debugging and then allow the system to take over and determine if another instance should be started.Only applicable for instances in App Engine flexible environment." - }, - "delete": { - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "appsId", - "servicesId", - "versionsId", - "instancesId" - ], - "httpMethod": "DELETE", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "servicesId": { - "description": "Part of `name`. See documentation of `appsId`.", - "required": true, - "type": "string", - "location": "path" - }, - "appsId": { - "location": "path", - "description": "Part of `name`. Name of the resource requested. Example: apps/myapp/services/default/versions/v1/instances/instance-1.", - "required": true, - "type": "string" - }, - "instancesId": { - "description": "Part of `name`. See documentation of `appsId`.", - "required": true, - "type": "string", - "location": "path" - }, - "versionsId": { - "location": "path", - "description": "Part of `name`. See documentation of `appsId`.", - "required": true, - "type": "string" - } - }, - "flatPath": "v1beta/apps/{appsId}/services/{servicesId}/versions/{versionsId}/instances/{instancesId}", - "path": "v1beta/apps/{appsId}/services/{servicesId}/versions/{versionsId}/instances/{instancesId}", - "id": "appengine.apps.services.versions.instances.delete", - "description": "Stops a running instance." - } - } - } - } + ] } } }, @@ -882,301 +421,222 @@ "methods": { "list": { "description": "Lists all domains the user is authorized to administer.", - "response": { - "$ref": "ListAuthorizedDomainsResponse" - }, + "flatPath": "v1beta/apps/{appsId}/authorizedDomains", + "httpMethod": "GET", + "id": "appengine.apps.authorizedDomains.list", "parameterOrder": [ "appsId" ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/appengine.admin", - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ], "parameters": { "appsId": { "description": "Part of `parent`. Name of the parent Application resource. Example: apps/myapp.", + "location": "path", "required": true, - "type": "string", - "location": "path" + "type": "string" + }, + "pageSize": { + "description": "Maximum results to return per page.", + "format": "int32", + "location": "query", + "type": "integer" }, "pageToken": { "description": "Continuation token for fetching the next page of results.", - "type": "string", - "location": "query" - }, - "pageSize": { "location": "query", - "description": "Maximum results to return per page.", - "format": "int32", - "type": "integer" + "type": "string" } }, - "flatPath": "v1beta/apps/{appsId}/authorizedDomains", "path": "v1beta/apps/{appsId}/authorizedDomains", - "id": "appengine.apps.authorizedDomains.list" - } - } - }, - "operations": { - "methods": { - "list": { - "httpMethod": "GET", "response": { - "$ref": "ListOperationsResponse" - }, - "parameterOrder": [ - "appsId" - ], - "parameters": { - "filter": { - "description": "The standard list filter.", - "type": "string", - "location": "query" - }, - "appsId": { - "location": "path", - "description": "Part of `name`. The name of the operation's parent resource.", - "required": true, - "type": "string" - }, - "pageToken": { - "location": "query", - "description": "The standard list page token.", - "type": "string" - }, - "pageSize": { - "location": "query", - "description": "The standard list page size.", - "format": "int32", - "type": "integer" - } + "$ref": "ListAuthorizedDomainsResponse" }, "scopes": [ "https://www.googleapis.com/auth/appengine.admin", "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/cloud-platform.read-only" - ], - "flatPath": "v1beta/apps/{appsId}/operations", - "id": "appengine.apps.operations.list", - "path": "v1beta/apps/{appsId}/operations", - "description": "Lists operations that match the specified filter in the request. If the server doesn't support this method, it returns UNIMPLEMENTED.NOTE: the name binding allows API services to override the binding to use different resource name schemes, such as users/*/operations. To override the binding, API services can add a binding such as \"/v1/{name=users/*}/operations\" to their service configuration. For backwards compatibility, the default name includes the operations collection id, however overriding users must ensure the name binding is the parent resource, without the operations collection id." - }, - "get": { - "path": "v1beta/apps/{appsId}/operations/{operationsId}", - "id": "appengine.apps.operations.get", - "description": "Gets the latest state of a long-running operation. Clients can use this method to poll the operation result at intervals as recommended by the API service.", - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "appsId", - "operationsId" - ], - "httpMethod": "GET", - "parameters": { - "appsId": { - "description": "Part of `name`. The name of the operation resource.", - "required": true, - "type": "string", - "location": "path" - }, - "operationsId": { - "description": "Part of `name`. See documentation of `appsId`.", - "required": true, - "type": "string", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/appengine.admin", - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ], - "flatPath": "v1beta/apps/{appsId}/operations/{operationsId}" + ] } } }, "domainMappings": { "methods": { "create": { + "description": "Maps a domain to an application. A user must be authorized to administer a domain in order to map it to an application. For a list of available authorized domains, see AuthorizedDomains.ListAuthorizedDomains.", + "flatPath": "v1beta/apps/{appsId}/domainMappings", "httpMethod": "POST", + "id": "appengine.apps.domainMappings.create", "parameterOrder": [ "appsId" ], - "response": { - "$ref": "Operation" - }, "parameters": { "appsId": { "description": "Part of `parent`. Name of the parent Application resource. Example: apps/myapp.", + "location": "path", "required": true, - "type": "string", - "location": "path" + "type": "string" }, "overrideStrategy": { "description": "Whether the domain creation should override any existing mappings for this domain. By default, overrides are rejected.", - "type": "string", - "location": "query", "enum": [ "UNSPECIFIED_DOMAIN_OVERRIDE_STRATEGY", "STRICT", "OVERRIDE" - ] + ], + "location": "query", + "type": "string" } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta/apps/{appsId}/domainMappings", - "id": "appengine.apps.domainMappings.create", "path": "v1beta/apps/{appsId}/domainMappings", "request": { "$ref": "DomainMapping" }, - "description": "Maps a domain to an application. A user must be authorized to administer a domain in order to map it to an application. For a list of available authorized domains, see AuthorizedDomains.ListAuthorizedDomains." - }, - "delete": { - "description": "Deletes the specified domain mapping. A user must be authorized to administer the associated domain in order to delete a DomainMapping resource.", "response": { "$ref": "Operation" }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Deletes the specified domain mapping. A user must be authorized to administer the associated domain in order to delete a DomainMapping resource.", + "flatPath": "v1beta/apps/{appsId}/domainMappings/{domainMappingsId}", + "httpMethod": "DELETE", + "id": "appengine.apps.domainMappings.delete", "parameterOrder": [ "appsId", "domainMappingsId" ], - "httpMethod": "DELETE", "parameters": { "appsId": { "description": "Part of `name`. Name of the resource to delete. Example: apps/myapp/domainMappings/example.com.", - "required": true, - "type": "string", - "location": "path" - }, - "domainMappingsId": { - "description": "Part of `name`. See documentation of `appsId`.", - "required": true, - "type": "string", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta/apps/{appsId}/domainMappings/{domainMappingsId}", - "path": "v1beta/apps/{appsId}/domainMappings/{domainMappingsId}", - "id": "appengine.apps.domainMappings.delete" - }, - "list": { - "response": { - "$ref": "ListDomainMappingsResponse" - }, - "parameterOrder": [ - "appsId" - ], - "httpMethod": "GET", - "parameters": { - "appsId": { "location": "path", - "description": "Part of `parent`. Name of the parent Application resource. Example: apps/myapp.", "required": true, "type": "string" }, - "pageToken": { - "description": "Continuation token for fetching the next page of results.", - "type": "string", - "location": "query" + "domainMappingsId": { + "description": "Part of `name`. See documentation of `appsId`.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1beta/apps/{appsId}/domainMappings/{domainMappingsId}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Gets the specified domain mapping.", + "flatPath": "v1beta/apps/{appsId}/domainMappings/{domainMappingsId}", + "httpMethod": "GET", + "id": "appengine.apps.domainMappings.get", + "parameterOrder": [ + "appsId", + "domainMappingsId" + ], + "parameters": { + "appsId": { + "description": "Part of `name`. Name of the resource requested. Example: apps/myapp/domainMappings/example.com.", + "location": "path", + "required": true, + "type": "string" + }, + "domainMappingsId": { + "description": "Part of `name`. See documentation of `appsId`.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1beta/apps/{appsId}/domainMappings/{domainMappingsId}", + "response": { + "$ref": "DomainMapping" + }, + "scopes": [ + "https://www.googleapis.com/auth/appengine.admin", + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + }, + "list": { + "description": "Lists the domain mappings on an application.", + "flatPath": "v1beta/apps/{appsId}/domainMappings", + "httpMethod": "GET", + "id": "appengine.apps.domainMappings.list", + "parameterOrder": [ + "appsId" + ], + "parameters": { + "appsId": { + "description": "Part of `parent`. Name of the parent Application resource. Example: apps/myapp.", + "location": "path", + "required": true, + "type": "string" }, "pageSize": { "description": "Maximum results to return per page.", "format": "int32", - "type": "integer", - "location": "query" + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Continuation token for fetching the next page of results.", + "location": "query", + "type": "string" } }, + "path": "v1beta/apps/{appsId}/domainMappings", + "response": { + "$ref": "ListDomainMappingsResponse" + }, "scopes": [ "https://www.googleapis.com/auth/appengine.admin", "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/cloud-platform.read-only" - ], - "flatPath": "v1beta/apps/{appsId}/domainMappings", - "path": "v1beta/apps/{appsId}/domainMappings", - "id": "appengine.apps.domainMappings.list", - "description": "Lists the domain mappings on an application." + ] }, - "get": { - "response": { - "$ref": "DomainMapping" - }, + "patch": { + "description": "Updates the specified domain mapping. To map an SSL certificate to a domain mapping, update certificate_id to point to an AuthorizedCertificate resource. A user must be authorized to administer the associated domain in order to update a DomainMapping resource.", + "flatPath": "v1beta/apps/{appsId}/domainMappings/{domainMappingsId}", + "httpMethod": "PATCH", + "id": "appengine.apps.domainMappings.patch", "parameterOrder": [ "appsId", "domainMappingsId" ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/appengine.admin", - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ], "parameters": { + "appsId": { + "description": "Part of `name`. Name of the resource to update. Example: apps/myapp/domainMappings/example.com.", + "location": "path", + "required": true, + "type": "string" + }, "domainMappingsId": { "description": "Part of `name`. See documentation of `appsId`.", - "required": true, - "type": "string", - "location": "path" - }, - "appsId": { "location": "path", - "description": "Part of `name`. Name of the resource requested. Example: apps/myapp/domainMappings/example.com.", "required": true, "type": "string" + }, + "updateMask": { + "description": "Standard field mask for the set of fields to be updated.", + "format": "google-fieldmask", + "location": "query", + "type": "string" } }, - "flatPath": "v1beta/apps/{appsId}/domainMappings/{domainMappingsId}", "path": "v1beta/apps/{appsId}/domainMappings/{domainMappingsId}", - "id": "appengine.apps.domainMappings.get", - "description": "Gets the specified domain mapping." - }, - "patch": { - "path": "v1beta/apps/{appsId}/domainMappings/{domainMappingsId}", - "id": "appengine.apps.domainMappings.patch", - "description": "Updates the specified domain mapping. To map an SSL certificate to a domain mapping, update certificate_id to point to an AuthorizedCertificate resource. A user must be authorized to administer the associated domain in order to update a DomainMapping resource.", "request": { "$ref": "DomainMapping" }, "response": { "$ref": "Operation" }, - "parameterOrder": [ - "appsId", - "domainMappingsId" - ], - "httpMethod": "PATCH", "scopes": [ "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "appsId": { - "location": "path", - "description": "Part of `name`. Name of the resource to update. Example: apps/myapp/domainMappings/example.com.", - "required": true, - "type": "string" - }, - "domainMappingsId": { - "location": "path", - "description": "Part of `name`. See documentation of `appsId`.", - "required": true, - "type": "string" - }, - "updateMask": { - "location": "query", - "description": "Standard field mask for the set of fields to be updated.", - "format": "google-fieldmask", - "type": "string" - } - }, - "flatPath": "v1beta/apps/{appsId}/domainMappings/{domainMappingsId}" + ] } } }, @@ -1185,204 +645,204 @@ "ingressRules": { "methods": { "batchUpdate": { - "response": { - "$ref": "BatchUpdateIngressRulesResponse" - }, + "description": "Replaces the entire firewall ruleset in one bulk operation. This overrides and replaces the rules of an existing firewall with the new rules.If the final rule does not match traffic with the '*' wildcard IP range, then an \"allow all\" rule is explicitly added to the end of the list.", + "flatPath": "v1beta/apps/{appsId}/firewall/ingressRules:batchUpdate", + "httpMethod": "POST", + "id": "appengine.apps.firewall.ingressRules.batchUpdate", "parameterOrder": [ "appsId" ], - "httpMethod": "POST", "parameters": { "appsId": { - "location": "path", "description": "Part of `name`. Name of the Firewall collection to set. Example: apps/myapp/firewall/ingressRules.", + "location": "path", "required": true, "type": "string" } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta/apps/{appsId}/firewall/ingressRules:batchUpdate", "path": "v1beta/apps/{appsId}/firewall/ingressRules:batchUpdate", - "id": "appengine.apps.firewall.ingressRules.batchUpdate", "request": { "$ref": "BatchUpdateIngressRulesRequest" }, - "description": "Replaces the entire firewall ruleset in one bulk operation. This overrides and replaces the rules of an existing firewall with the new rules.If the final rule does not match traffic with the '*' wildcard IP range, then an \"allow all\" rule is explicitly added to the end of the list." + "response": { + "$ref": "BatchUpdateIngressRulesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "create": { + "description": "Creates a firewall rule for the application.", + "flatPath": "v1beta/apps/{appsId}/firewall/ingressRules", + "httpMethod": "POST", + "id": "appengine.apps.firewall.ingressRules.create", + "parameterOrder": [ + "appsId" + ], + "parameters": { + "appsId": { + "description": "Part of `parent`. Name of the parent Firewall collection in which to create a new rule. Example: apps/myapp/firewall/ingressRules.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1beta/apps/{appsId}/firewall/ingressRules", + "request": { + "$ref": "FirewallRule" + }, + "response": { + "$ref": "FirewallRule" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] }, "delete": { - "path": "v1beta/apps/{appsId}/firewall/ingressRules/{ingressRulesId}", - "id": "appengine.apps.firewall.ingressRules.delete", "description": "Deletes the specified firewall rule.", - "response": { - "$ref": "Empty" - }, + "flatPath": "v1beta/apps/{appsId}/firewall/ingressRules/{ingressRulesId}", + "httpMethod": "DELETE", + "id": "appengine.apps.firewall.ingressRules.delete", "parameterOrder": [ "appsId", "ingressRulesId" ], - "httpMethod": "DELETE", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], "parameters": { "appsId": { - "location": "path", "description": "Part of `name`. Name of the Firewall resource to delete. Example: apps/myapp/firewall/ingressRules/100.", + "location": "path", "required": true, "type": "string" }, "ingressRulesId": { - "location": "path", "description": "Part of `name`. See documentation of `appsId`.", - "required": true, - "type": "string" - } - }, - "flatPath": "v1beta/apps/{appsId}/firewall/ingressRules/{ingressRulesId}" - }, - "list": { - "flatPath": "v1beta/apps/{appsId}/firewall/ingressRules", - "path": "v1beta/apps/{appsId}/firewall/ingressRules", - "id": "appengine.apps.firewall.ingressRules.list", - "description": "Lists the firewall rules of an application.", - "response": { - "$ref": "ListIngressRulesResponse" - }, - "parameterOrder": [ - "appsId" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/appengine.admin", - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ], - "parameters": { - "pageSize": { - "location": "query", - "description": "Maximum results to return per page.", - "format": "int32", - "type": "integer" - }, - "matchingAddress": { - "description": "A valid IP Address. If set, only rules matching this address will be returned. The first returned rule will be the rule that fires on requests from this IP.", - "type": "string", - "location": "query" - }, - "appsId": { "location": "path", - "description": "Part of `parent`. Name of the Firewall collection to retrieve. Example: apps/myapp/firewall/ingressRules.", "required": true, "type": "string" - }, - "pageToken": { - "description": "Continuation token for fetching the next page of results.", - "type": "string", - "location": "query" } - } - }, - "create": { - "request": { - "$ref": "FirewallRule" }, - "description": "Creates a firewall rule for the application.", + "path": "v1beta/apps/{appsId}/firewall/ingressRules/{ingressRulesId}", "response": { - "$ref": "FirewallRule" - }, - "parameterOrder": [ - "appsId" - ], - "httpMethod": "POST", - "parameters": { - "appsId": { - "description": "Part of `parent`. Name of the parent Firewall collection in which to create a new rule. Example: apps/myapp/firewall/ingressRules.", - "required": true, - "type": "string", - "location": "path" - } + "$ref": "Empty" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta/apps/{appsId}/firewall/ingressRules", - "path": "v1beta/apps/{appsId}/firewall/ingressRules", - "id": "appengine.apps.firewall.ingressRules.create" + ] }, "get": { - "response": { - "$ref": "FirewallRule" - }, + "description": "Gets the specified firewall rule.", + "flatPath": "v1beta/apps/{appsId}/firewall/ingressRules/{ingressRulesId}", + "httpMethod": "GET", + "id": "appengine.apps.firewall.ingressRules.get", "parameterOrder": [ "appsId", "ingressRulesId" ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/appengine.admin", - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ], "parameters": { "appsId": { "description": "Part of `name`. Name of the Firewall resource to retrieve. Example: apps/myapp/firewall/ingressRules/100.", + "location": "path", "required": true, - "type": "string", - "location": "path" + "type": "string" }, "ingressRulesId": { "description": "Part of `name`. See documentation of `appsId`.", + "location": "path", "required": true, - "type": "string", - "location": "path" + "type": "string" } }, - "flatPath": "v1beta/apps/{appsId}/firewall/ingressRules/{ingressRulesId}", "path": "v1beta/apps/{appsId}/firewall/ingressRules/{ingressRulesId}", - "id": "appengine.apps.firewall.ingressRules.get", - "description": "Gets the specified firewall rule." - }, - "patch": { - "request": { - "$ref": "FirewallRule" - }, - "description": "Updates the specified firewall rule.", "response": { "$ref": "FirewallRule" }, + "scopes": [ + "https://www.googleapis.com/auth/appengine.admin", + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + }, + "list": { + "description": "Lists the firewall rules of an application.", + "flatPath": "v1beta/apps/{appsId}/firewall/ingressRules", + "httpMethod": "GET", + "id": "appengine.apps.firewall.ingressRules.list", + "parameterOrder": [ + "appsId" + ], + "parameters": { + "appsId": { + "description": "Part of `parent`. Name of the Firewall collection to retrieve. Example: apps/myapp/firewall/ingressRules.", + "location": "path", + "required": true, + "type": "string" + }, + "matchingAddress": { + "description": "A valid IP Address. If set, only rules matching this address will be returned. The first returned rule will be the rule that fires on requests from this IP.", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "Maximum results to return per page.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Continuation token for fetching the next page of results.", + "location": "query", + "type": "string" + } + }, + "path": "v1beta/apps/{appsId}/firewall/ingressRules", + "response": { + "$ref": "ListIngressRulesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/appengine.admin", + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + }, + "patch": { + "description": "Updates the specified firewall rule.", + "flatPath": "v1beta/apps/{appsId}/firewall/ingressRules/{ingressRulesId}", + "httpMethod": "PATCH", + "id": "appengine.apps.firewall.ingressRules.patch", "parameterOrder": [ "appsId", "ingressRulesId" ], - "httpMethod": "PATCH", "parameters": { - "updateMask": { - "location": "query", - "description": "Standard field mask for the set of fields to be updated.", - "format": "google-fieldmask", - "type": "string" - }, "appsId": { - "location": "path", "description": "Part of `name`. Name of the Firewall resource to update. Example: apps/myapp/firewall/ingressRules/100.", + "location": "path", "required": true, "type": "string" }, "ingressRulesId": { "description": "Part of `name`. See documentation of `appsId`.", + "location": "path", "required": true, - "type": "string", - "location": "path" + "type": "string" + }, + "updateMask": { + "description": "Standard field mask for the set of fields to be updated.", + "format": "google-fieldmask", + "location": "query", + "type": "string" } }, + "path": "v1beta/apps/{appsId}/firewall/ingressRules/{ingressRulesId}", + "request": { + "$ref": "FirewallRule" + }, + "response": { + "$ref": "FirewallRule" + }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta/apps/{appsId}/firewall/ingressRules/{ingressRulesId}", - "path": "v1beta/apps/{appsId}/firewall/ingressRules/{ingressRulesId}", - "id": "appengine.apps.firewall.ingressRules.patch" + ] } } } @@ -1390,552 +850,1590 @@ }, "locations": { "methods": { - "list": { - "response": { - "$ref": "ListLocationsResponse" - }, - "parameterOrder": [ - "appsId" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/appengine.admin", - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ], - "parameters": { - "appsId": { - "description": "Part of `name`. The resource that owns the locations collection, if applicable.", - "required": true, - "type": "string", - "location": "path" - }, - "pageToken": { - "description": "The standard list page token.", - "type": "string", - "location": "query" - }, - "pageSize": { - "location": "query", - "description": "The standard list page size.", - "format": "int32", - "type": "integer" - }, - "filter": { - "location": "query", - "description": "The standard list filter.", - "type": "string" - } - }, - "flatPath": "v1beta/apps/{appsId}/locations", - "path": "v1beta/apps/{appsId}/locations", - "id": "appengine.apps.locations.list", - "description": "Lists information about the supported locations for this service." - }, "get": { - "response": { - "$ref": "Location" - }, + "description": "Gets information about a location.", + "flatPath": "v1beta/apps/{appsId}/locations/{locationsId}", + "httpMethod": "GET", + "id": "appengine.apps.locations.get", "parameterOrder": [ "appsId", "locationsId" ], - "httpMethod": "GET", "parameters": { - "locationsId": { + "appsId": { + "description": "Part of `name`. Resource name for the location.", "location": "path", - "description": "Part of `name`. See documentation of `appsId`.", "required": true, "type": "string" }, - "appsId": { - "description": "Part of `name`. Resource name for the location.", + "locationsId": { + "description": "Part of `name`. See documentation of `appsId`.", + "location": "path", "required": true, - "type": "string", - "location": "path" + "type": "string" } }, + "path": "v1beta/apps/{appsId}/locations/{locationsId}", + "response": { + "$ref": "Location" + }, "scopes": [ "https://www.googleapis.com/auth/appengine.admin", "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + }, + "list": { + "description": "Lists information about the supported locations for this service.", + "flatPath": "v1beta/apps/{appsId}/locations", + "httpMethod": "GET", + "id": "appengine.apps.locations.list", + "parameterOrder": [ + "appsId" ], - "flatPath": "v1beta/apps/{appsId}/locations/{locationsId}", - "path": "v1beta/apps/{appsId}/locations/{locationsId}", - "id": "appengine.apps.locations.get", - "description": "Get information about a location." + "parameters": { + "appsId": { + "description": "Part of `name`. The resource that owns the locations collection, if applicable.", + "location": "path", + "required": true, + "type": "string" + }, + "filter": { + "description": "The standard list filter.", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "The standard list page size.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "The standard list page token.", + "location": "query", + "type": "string" + } + }, + "path": "v1beta/apps/{appsId}/locations", + "response": { + "$ref": "ListLocationsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/appengine.admin", + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + } + } + }, + "operations": { + "methods": { + "get": { + "description": "Gets the latest state of a long-running operation. Clients can use this method to poll the operation result at intervals as recommended by the API service.", + "flatPath": "v1beta/apps/{appsId}/operations/{operationsId}", + "httpMethod": "GET", + "id": "appengine.apps.operations.get", + "parameterOrder": [ + "appsId", + "operationsId" + ], + "parameters": { + "appsId": { + "description": "Part of `name`. The name of the operation resource.", + "location": "path", + "required": true, + "type": "string" + }, + "operationsId": { + "description": "Part of `name`. See documentation of `appsId`.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1beta/apps/{appsId}/operations/{operationsId}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/appengine.admin", + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + }, + "list": { + "description": "Lists operations that match the specified filter in the request. If the server doesn't support this method, it returns UNIMPLEMENTED.NOTE: the name binding allows API services to override the binding to use different resource name schemes, such as users/*/operations. To override the binding, API services can add a binding such as \"/v1/{name=users/*}/operations\" to their service configuration. For backwards compatibility, the default name includes the operations collection id, however overriding users must ensure the name binding is the parent resource, without the operations collection id.", + "flatPath": "v1beta/apps/{appsId}/operations", + "httpMethod": "GET", + "id": "appengine.apps.operations.list", + "parameterOrder": [ + "appsId" + ], + "parameters": { + "appsId": { + "description": "Part of `name`. The name of the operation's parent resource.", + "location": "path", + "required": true, + "type": "string" + }, + "filter": { + "description": "The standard list filter.", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "The standard list page size.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "The standard list page token.", + "location": "query", + "type": "string" + } + }, + "path": "v1beta/apps/{appsId}/operations", + "response": { + "$ref": "ListOperationsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/appengine.admin", + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + } + } + }, + "services": { + "methods": { + "delete": { + "description": "Deletes the specified service and all enclosed versions.", + "flatPath": "v1beta/apps/{appsId}/services/{servicesId}", + "httpMethod": "DELETE", + "id": "appengine.apps.services.delete", + "parameterOrder": [ + "appsId", + "servicesId" + ], + "parameters": { + "appsId": { + "description": "Part of `name`. Name of the resource requested. Example: apps/myapp/services/default.", + "location": "path", + "required": true, + "type": "string" + }, + "servicesId": { + "description": "Part of `name`. See documentation of `appsId`.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1beta/apps/{appsId}/services/{servicesId}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Gets the current configuration of the specified service.", + "flatPath": "v1beta/apps/{appsId}/services/{servicesId}", + "httpMethod": "GET", + "id": "appengine.apps.services.get", + "parameterOrder": [ + "appsId", + "servicesId" + ], + "parameters": { + "appsId": { + "description": "Part of `name`. Name of the resource requested. Example: apps/myapp/services/default.", + "location": "path", + "required": true, + "type": "string" + }, + "servicesId": { + "description": "Part of `name`. See documentation of `appsId`.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1beta/apps/{appsId}/services/{servicesId}", + "response": { + "$ref": "Service" + }, + "scopes": [ + "https://www.googleapis.com/auth/appengine.admin", + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + }, + "list": { + "description": "Lists all the services in the application.", + "flatPath": "v1beta/apps/{appsId}/services", + "httpMethod": "GET", + "id": "appengine.apps.services.list", + "parameterOrder": [ + "appsId" + ], + "parameters": { + "appsId": { + "description": "Part of `parent`. Name of the parent Application resource. Example: apps/myapp.", + "location": "path", + "required": true, + "type": "string" + }, + "pageSize": { + "description": "Maximum results to return per page.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Continuation token for fetching the next page of results.", + "location": "query", + "type": "string" + } + }, + "path": "v1beta/apps/{appsId}/services", + "response": { + "$ref": "ListServicesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/appengine.admin", + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + }, + "patch": { + "description": "Updates the configuration of the specified service.", + "flatPath": "v1beta/apps/{appsId}/services/{servicesId}", + "httpMethod": "PATCH", + "id": "appengine.apps.services.patch", + "parameterOrder": [ + "appsId", + "servicesId" + ], + "parameters": { + "appsId": { + "description": "Part of `name`. Name of the resource to update. Example: apps/myapp/services/default.", + "location": "path", + "required": true, + "type": "string" + }, + "migrateTraffic": { + "description": "Set to true to gradually shift traffic to one or more versions that you specify. By default, traffic is shifted immediately. For gradual traffic migration, the target versions must be located within instances that are configured for both warmup requests (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1beta/apps.services.versions#inboundservicetype) and automatic scaling (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1beta/apps.services.versions#automaticscaling). You must specify the shardBy (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1beta/apps.services#shardby) field in the Service resource. Gradual traffic migration is not supported in the App Engine flexible environment. For examples, see Migrating and Splitting Traffic (https://cloud.google.com/appengine/docs/admin-api/migrating-splitting-traffic).", + "location": "query", + "type": "boolean" + }, + "servicesId": { + "description": "Part of `name`. See documentation of `appsId`.", + "location": "path", + "required": true, + "type": "string" + }, + "updateMask": { + "description": "Standard field mask for the set of fields to be updated.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + } + }, + "path": "v1beta/apps/{appsId}/services/{servicesId}", + "request": { + "$ref": "Service" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + }, + "resources": { + "versions": { + "methods": { + "create": { + "description": "Deploys code and resource files to a new version.", + "flatPath": "v1beta/apps/{appsId}/services/{servicesId}/versions", + "httpMethod": "POST", + "id": "appengine.apps.services.versions.create", + "parameterOrder": [ + "appsId", + "servicesId" + ], + "parameters": { + "appsId": { + "description": "Part of `parent`. Name of the parent resource to create this version under. Example: apps/myapp/services/default.", + "location": "path", + "required": true, + "type": "string" + }, + "servicesId": { + "description": "Part of `parent`. See documentation of `appsId`.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1beta/apps/{appsId}/services/{servicesId}/versions", + "request": { + "$ref": "Version" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Deletes an existing Version resource.", + "flatPath": "v1beta/apps/{appsId}/services/{servicesId}/versions/{versionsId}", + "httpMethod": "DELETE", + "id": "appengine.apps.services.versions.delete", + "parameterOrder": [ + "appsId", + "servicesId", + "versionsId" + ], + "parameters": { + "appsId": { + "description": "Part of `name`. Name of the resource requested. Example: apps/myapp/services/default/versions/v1.", + "location": "path", + "required": true, + "type": "string" + }, + "servicesId": { + "description": "Part of `name`. See documentation of `appsId`.", + "location": "path", + "required": true, + "type": "string" + }, + "versionsId": { + "description": "Part of `name`. See documentation of `appsId`.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1beta/apps/{appsId}/services/{servicesId}/versions/{versionsId}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Gets the specified Version resource. By default, only a BASIC_VIEW will be returned. Specify the FULL_VIEW parameter to get the full resource.", + "flatPath": "v1beta/apps/{appsId}/services/{servicesId}/versions/{versionsId}", + "httpMethod": "GET", + "id": "appengine.apps.services.versions.get", + "parameterOrder": [ + "appsId", + "servicesId", + "versionsId" + ], + "parameters": { + "appsId": { + "description": "Part of `name`. Name of the resource requested. Example: apps/myapp/services/default/versions/v1.", + "location": "path", + "required": true, + "type": "string" + }, + "servicesId": { + "description": "Part of `name`. See documentation of `appsId`.", + "location": "path", + "required": true, + "type": "string" + }, + "versionsId": { + "description": "Part of `name`. See documentation of `appsId`.", + "location": "path", + "required": true, + "type": "string" + }, + "view": { + "description": "Controls the set of fields returned in the Get response.", + "enum": [ + "BASIC", + "FULL" + ], + "location": "query", + "type": "string" + } + }, + "path": "v1beta/apps/{appsId}/services/{servicesId}/versions/{versionsId}", + "response": { + "$ref": "Version" + }, + "scopes": [ + "https://www.googleapis.com/auth/appengine.admin", + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + }, + "list": { + "description": "Lists the versions of a service.", + "flatPath": "v1beta/apps/{appsId}/services/{servicesId}/versions", + "httpMethod": "GET", + "id": "appengine.apps.services.versions.list", + "parameterOrder": [ + "appsId", + "servicesId" + ], + "parameters": { + "appsId": { + "description": "Part of `parent`. Name of the parent Service resource. Example: apps/myapp/services/default.", + "location": "path", + "required": true, + "type": "string" + }, + "pageSize": { + "description": "Maximum results to return per page.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Continuation token for fetching the next page of results.", + "location": "query", + "type": "string" + }, + "servicesId": { + "description": "Part of `parent`. See documentation of `appsId`.", + "location": "path", + "required": true, + "type": "string" + }, + "view": { + "description": "Controls the set of fields returned in the List response.", + "enum": [ + "BASIC", + "FULL" + ], + "location": "query", + "type": "string" + } + }, + "path": "v1beta/apps/{appsId}/services/{servicesId}/versions", + "response": { + "$ref": "ListVersionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/appengine.admin", + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + }, + "patch": { + "description": "Updates the specified Version resource. You can specify the following fields depending on the App Engine environment and type of scaling that the version resource uses:\nserving_status (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1beta/apps.services.versions#Version.FIELDS.serving_status): For Version resources that use basic scaling, manual scaling, or run in the App Engine flexible environment.\ninstance_class (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1beta/apps.services.versions#Version.FIELDS.instance_class): For Version resources that run in the App Engine standard environment.\nautomatic_scaling.min_idle_instances (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1beta/apps.services.versions#Version.FIELDS.automatic_scaling): For Version resources that use automatic scaling and run in the App Engine standard environment.\nautomatic_scaling.max_idle_instances (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1beta/apps.services.versions#Version.FIELDS.automatic_scaling): For Version resources that use automatic scaling and run in the App Engine standard environment.\nautomatic_scaling.min_total_instances (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1beta/apps.services.versions#Version.FIELDS.automatic_scaling): For Version resources that use automatic scaling and run in the App Engine flexible environment.\nautomatic_scaling.max_total_instances (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1beta/apps.services.versions#Version.FIELDS.automatic_scaling): For Version resources that use automatic scaling and run in the App Engine flexible environment.\nautomatic_scaling.cool_down_period_sec (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1beta/apps.services.versions#Version.FIELDS.automatic_scaling): For Version resources that use automatic scaling and run in the App Engine flexible environment.\nautomatic_scaling.cpu_utilization.target_utilization (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1beta/apps.services.versions#Version.FIELDS.automatic_scaling): For Version resources that use automatic scaling and run in the App Engine flexible environment.", + "flatPath": "v1beta/apps/{appsId}/services/{servicesId}/versions/{versionsId}", + "httpMethod": "PATCH", + "id": "appengine.apps.services.versions.patch", + "parameterOrder": [ + "appsId", + "servicesId", + "versionsId" + ], + "parameters": { + "appsId": { + "description": "Part of `name`. Name of the resource to update. Example: apps/myapp/services/default/versions/1.", + "location": "path", + "required": true, + "type": "string" + }, + "servicesId": { + "description": "Part of `name`. See documentation of `appsId`.", + "location": "path", + "required": true, + "type": "string" + }, + "updateMask": { + "description": "Standard field mask for the set of fields to be updated.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + }, + "versionsId": { + "description": "Part of `name`. See documentation of `appsId`.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1beta/apps/{appsId}/services/{servicesId}/versions/{versionsId}", + "request": { + "$ref": "Version" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + }, + "resources": { + "instances": { + "methods": { + "debug": { + "description": "Enables debugging on a VM instance. This allows you to use the SSH command to connect to the virtual machine where the instance lives. While in \"debug mode\", the instance continues to serve live traffic. You should delete the instance when you are done debugging and then allow the system to take over and determine if another instance should be started.Only applicable for instances in App Engine flexible environment.", + "flatPath": "v1beta/apps/{appsId}/services/{servicesId}/versions/{versionsId}/instances/{instancesId}:debug", + "httpMethod": "POST", + "id": "appengine.apps.services.versions.instances.debug", + "parameterOrder": [ + "appsId", + "servicesId", + "versionsId", + "instancesId" + ], + "parameters": { + "appsId": { + "description": "Part of `name`. Name of the resource requested. Example: apps/myapp/services/default/versions/v1/instances/instance-1.", + "location": "path", + "required": true, + "type": "string" + }, + "instancesId": { + "description": "Part of `name`. See documentation of `appsId`.", + "location": "path", + "required": true, + "type": "string" + }, + "servicesId": { + "description": "Part of `name`. See documentation of `appsId`.", + "location": "path", + "required": true, + "type": "string" + }, + "versionsId": { + "description": "Part of `name`. See documentation of `appsId`.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1beta/apps/{appsId}/services/{servicesId}/versions/{versionsId}/instances/{instancesId}:debug", + "request": { + "$ref": "DebugInstanceRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Stops a running instance.", + "flatPath": "v1beta/apps/{appsId}/services/{servicesId}/versions/{versionsId}/instances/{instancesId}", + "httpMethod": "DELETE", + "id": "appengine.apps.services.versions.instances.delete", + "parameterOrder": [ + "appsId", + "servicesId", + "versionsId", + "instancesId" + ], + "parameters": { + "appsId": { + "description": "Part of `name`. Name of the resource requested. Example: apps/myapp/services/default/versions/v1/instances/instance-1.", + "location": "path", + "required": true, + "type": "string" + }, + "instancesId": { + "description": "Part of `name`. See documentation of `appsId`.", + "location": "path", + "required": true, + "type": "string" + }, + "servicesId": { + "description": "Part of `name`. See documentation of `appsId`.", + "location": "path", + "required": true, + "type": "string" + }, + "versionsId": { + "description": "Part of `name`. See documentation of `appsId`.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1beta/apps/{appsId}/services/{servicesId}/versions/{versionsId}/instances/{instancesId}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Gets instance information.", + "flatPath": "v1beta/apps/{appsId}/services/{servicesId}/versions/{versionsId}/instances/{instancesId}", + "httpMethod": "GET", + "id": "appengine.apps.services.versions.instances.get", + "parameterOrder": [ + "appsId", + "servicesId", + "versionsId", + "instancesId" + ], + "parameters": { + "appsId": { + "description": "Part of `name`. Name of the resource requested. Example: apps/myapp/services/default/versions/v1/instances/instance-1.", + "location": "path", + "required": true, + "type": "string" + }, + "instancesId": { + "description": "Part of `name`. See documentation of `appsId`.", + "location": "path", + "required": true, + "type": "string" + }, + "servicesId": { + "description": "Part of `name`. See documentation of `appsId`.", + "location": "path", + "required": true, + "type": "string" + }, + "versionsId": { + "description": "Part of `name`. See documentation of `appsId`.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1beta/apps/{appsId}/services/{servicesId}/versions/{versionsId}/instances/{instancesId}", + "response": { + "$ref": "Instance" + }, + "scopes": [ + "https://www.googleapis.com/auth/appengine.admin", + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + }, + "list": { + "description": "Lists the instances of a version.Tip: To aggregate details about instances over time, see the Stackdriver Monitoring API (https://cloud.google.com/monitoring/api/ref_v3/rest/v3/projects.timeSeries/list).", + "flatPath": "v1beta/apps/{appsId}/services/{servicesId}/versions/{versionsId}/instances", + "httpMethod": "GET", + "id": "appengine.apps.services.versions.instances.list", + "parameterOrder": [ + "appsId", + "servicesId", + "versionsId" + ], + "parameters": { + "appsId": { + "description": "Part of `parent`. Name of the parent Version resource. Example: apps/myapp/services/default/versions/v1.", + "location": "path", + "required": true, + "type": "string" + }, + "pageSize": { + "description": "Maximum results to return per page.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Continuation token for fetching the next page of results.", + "location": "query", + "type": "string" + }, + "servicesId": { + "description": "Part of `parent`. See documentation of `appsId`.", + "location": "path", + "required": true, + "type": "string" + }, + "versionsId": { + "description": "Part of `parent`. See documentation of `appsId`.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1beta/apps/{appsId}/services/{servicesId}/versions/{versionsId}/instances", + "response": { + "$ref": "ListInstancesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/appengine.admin", + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + } + } + } + } } } } } } }, - "parameters": { - "access_token": { - "location": "query", - "description": "OAuth access token.", - "type": "string" - }, - "key": { - "location": "query", - "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.", - "type": "string" - }, - "quotaUser": { - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", - "type": "string", - "location": "query" - }, - "pp": { - "location": "query", - "description": "Pretty-print response.", - "type": "boolean", - "default": "true" - }, - "bearer_token": { - "description": "OAuth bearer token.", - "type": "string", - "location": "query" - }, - "oauth_token": { - "description": "OAuth 2.0 token for the current user.", - "type": "string", - "location": "query" - }, - "upload_protocol": { - "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", - "type": "string", - "location": "query" - }, - "prettyPrint": { - "description": "Returns response with indentations and line breaks.", - "type": "boolean", - "default": "true", - "location": "query" - }, - "fields": { - "location": "query", - "description": "Selector specifying which fields to include in a partial response.", - "type": "string" - }, - "uploadType": { - "location": "query", - "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", - "type": "string" - }, - "callback": { - "description": "JSONP", - "type": "string", - "location": "query" - }, - "$.xgafv": { - "enumDescriptions": [ - "v1 error format", - "v2 error format" - ], - "location": "query", - "enum": [ - "1", - "2" - ], - "description": "V1 error format.", - "type": "string" - }, - "alt": { - "type": "string", - "enumDescriptions": [ - "Responses with Content-Type of application/json", - "Media download with context-dependent Content-Type", - "Responses with Content-Type of application/x-protobuf" - ], - "location": "query", - "description": "Data format for response.", - "default": "json", - "enum": [ - "json", - "media", - "proto" - ] - } - }, + "revision": "20180320", + "rootUrl": "https://appengine.googleapis.com/", "schemas": { - "ManagedCertificate": { - "description": "A certificate managed by App Engine.", - "type": "object", + "ApiConfigHandler": { + "description": "Google Cloud Endpoints (https://cloud.google.com/appengine/docs/python/endpoints/) configuration for API handlers.", + "id": "ApiConfigHandler", "properties": { - "lastRenewalTime": { - "description": "Time at which the certificate was last renewed. The renewal process is fully managed. Certificate renewal will automatically occur before the certificate expires. Renewal errors can be tracked via ManagementStatus.@OutputOnly", - "format": "google-datetime", - "type": "string" - }, - "status": { - "enumDescriptions": [ - "", - "Certificate was successfully obtained and inserted into the serving system.", - "Certificate is under active attempts to acquire or renew.", - "Most recent renewal failed due to an invalid DNS setup and will be retried. Renewal attempts will continue to fail until the certificate domain's DNS configuration is fixed. The last successfully provisioned certificate may still be serving.", - "All renewal attempts have been exhausted, likely due to an invalid DNS setup.", - "Most recent renewal failed due to an explicit CAA record that does not include the in-use CA, Let's Encrypt. Renewals will continue to fail until the CAA is reconfigured. The last successfully provisioned certificate may still be serving.", - "Most recent renewal failed due to a CAA retrieval failure. This means that the domain's DNS provider does not properly handle CAA records, failing requests for CAA records when no CAA records are defined. Renewals will continue to fail until the DNS provider is changed or a CAA record is added for the given domain. The last successfully provisioned certificate may still be serving." - ], + "authFailAction": { + "description": "Action to take when users access resources that require authentication. Defaults to redirect.", "enum": [ - "MANAGEMENT_STATUS_UNSPECIFIED", - "OK", - "PENDING", - "FAILED_RETRYING_NOT_VISIBLE", - "FAILED_PERMANENT", - "FAILED_RETRYING_CAA_FORBIDDEN", - "FAILED_RETRYING_CAA_CHECKING" + "AUTH_FAIL_ACTION_UNSPECIFIED", + "AUTH_FAIL_ACTION_REDIRECT", + "AUTH_FAIL_ACTION_UNAUTHORIZED" ], - "description": "Status of certificate management. Refers to the most recent certificate acquisition or renewal attempt.@OutputOnly", + "enumDescriptions": [ + "Not specified. AUTH_FAIL_ACTION_REDIRECT is assumed.", + "Redirects user to \"accounts.google.com\". The user is redirected back to the application URL after signing in or creating an account.", + "Rejects request with a 401 HTTP status code and an error message." + ], + "type": "string" + }, + "login": { + "description": "Level of login required to access this resource. Defaults to optional.", + "enum": [ + "LOGIN_UNSPECIFIED", + "LOGIN_OPTIONAL", + "LOGIN_ADMIN", + "LOGIN_REQUIRED" + ], + "enumDescriptions": [ + "Not specified. LOGIN_OPTIONAL is assumed.", + "Does not require that the user is signed in.", + "If the user is not signed in, the auth_fail_action is taken. In addition, if the user is not an administrator for the application, they are given an error message regardless of auth_fail_action. If the user is an administrator, the handler proceeds.", + "If the user has signed in, the handler proceeds normally. Otherwise, the auth_fail_action is taken." + ], + "type": "string" + }, + "script": { + "description": "Path to the script from the application root directory.", + "type": "string" + }, + "securityLevel": { + "description": "Security (HTTPS) enforcement for this URL.", + "enum": [ + "SECURE_UNSPECIFIED", + "SECURE_DEFAULT", + "SECURE_NEVER", + "SECURE_OPTIONAL", + "SECURE_ALWAYS" + ], + "enumDescriptions": [ + "Not specified.", + "Both HTTP and HTTPS requests with URLs that match the handler succeed without redirects. The application can examine the request to determine which protocol was used, and respond accordingly.", + "Requests for a URL that match this handler that use HTTPS are automatically redirected to the HTTP equivalent URL.", + "Both HTTP and HTTPS requests with URLs that match the handler succeed without redirects. The application can examine the request to determine which protocol was used and respond accordingly.", + "Requests for a URL that match this handler that do not use HTTPS are automatically redirected to the HTTPS URL with the same path. Query parameters are reserved for the redirect." + ], + "type": "string" + }, + "url": { + "description": "URL to serve the endpoint at.", "type": "string" } }, - "id": "ManagedCertificate" - }, - "ListInstancesResponse": { - "properties": { - "instances": { - "description": "The instances belonging to the requested version.", - "type": "array", - "items": { - "$ref": "Instance" - } - }, - "nextPageToken": { - "description": "Continuation token for fetching the next page of results.", - "type": "string" - } - }, - "id": "ListInstancesResponse", - "description": "Response message for Instances.ListInstances.", - "type": "object" - }, - "ListDomainMappingsResponse": { - "properties": { - "nextPageToken": { - "description": "Continuation token for fetching the next page of results.", - "type": "string" - }, - "domainMappings": { - "description": "The domain mappings for the application.", - "type": "array", - "items": { - "$ref": "DomainMapping" - } - } - }, - "id": "ListDomainMappingsResponse", - "description": "Response message for DomainMappings.ListDomainMappings.", - "type": "object" - }, - "OperationMetadataV1Alpha": { - "description": "Metadata for the given google.longrunning.Operation.", - "type": "object", - "properties": { - "createVersionMetadata": { - "$ref": "CreateVersionMetadataV1Alpha" - }, - "warning": { - "description": "Durable messages that persist on every operation poll. @OutputOnly", - "type": "array", - "items": { - "type": "string" - } - }, - "insertTime": { - "description": "Time that this operation was created.@OutputOnly", - "format": "google-datetime", - "type": "string" - }, - "user": { - "description": "User who requested this operation.@OutputOnly", - "type": "string" - }, - "target": { - "description": "Name of the resource that this operation is acting on. Example: apps/myapp/services/default.@OutputOnly", - "type": "string" - }, - "ephemeralMessage": { - "description": "Ephemeral message that may change every time the operation is polled. @OutputOnly", - "type": "string" - }, - "method": { - "description": "API method that initiated this operation. Example: google.appengine.v1alpha.Versions.CreateVersion.@OutputOnly", - "type": "string" - }, - "endTime": { - "description": "Time that this operation completed.@OutputOnly", - "format": "google-datetime", - "type": "string" - } - }, - "id": "OperationMetadataV1Alpha" - }, - "UrlDispatchRule": { - "description": "Rules to match an HTTP request and dispatch that request to a service.", - "type": "object", - "properties": { - "path": { - "description": "Pathname within the host. Must start with a \"/\". A single \"*\" can be included at the end of the path.The sum of the lengths of the domain and path may not exceed 100 characters.", - "type": "string" - }, - "domain": { - "description": "Domain name to match against. The wildcard \"*\" is supported if specified before a period: \"*.\".Defaults to matching all domains: \"*\".", - "type": "string" - }, - "service": { - "description": "Resource ID of a service in this application that should serve the matched request. The service must already exist. Example: default.", - "type": "string" - } - }, - "id": "UrlDispatchRule" - }, - "ListVersionsResponse": { - "description": "Response message for Versions.ListVersions.", - "type": "object", - "properties": { - "versions": { - "description": "The versions belonging to the requested service.", - "type": "array", - "items": { - "$ref": "Version" - } - }, - "nextPageToken": { - "description": "Continuation token for fetching the next page of results.", - "type": "string" - } - }, - "id": "ListVersionsResponse" - }, - "ListAuthorizedDomainsResponse": { - "properties": { - "nextPageToken": { - "description": "Continuation token for fetching the next page of results.", - "type": "string" - }, - "domains": { - "description": "The authorized domains belonging to the user.", - "type": "array", - "items": { - "$ref": "AuthorizedDomain" - } - } - }, - "id": "ListAuthorizedDomainsResponse", - "description": "Response message for AuthorizedDomains.ListAuthorizedDomains.", "type": "object" }, "ApiEndpointHandler": { "description": "Uses Google Cloud Endpoints to handle requests.", - "type": "object", + "id": "ApiEndpointHandler", "properties": { "scriptPath": { "description": "Path to the script from the application root directory.", "type": "string" } }, - "id": "ApiEndpointHandler" + "type": "object" }, - "DomainMapping": { - "description": "A domain serving an App Engine application.", - "type": "object", + "Application": { + "description": "An Application resource contains the top-level configuration of an App Engine application.", + "id": "Application", "properties": { - "id": { - "description": "Relative name of the domain serving the application. Example: example.com.", + "authDomain": { + "description": "Google Apps authentication domain that controls which users can access this application.Defaults to open access for any Google Account.", "type": "string" }, - "resourceRecords": { - "description": "The resource records required to configure this domain mapping. These records must be added to the domain's DNS configuration in order to serve the application via this domain mapping.@OutputOnly", - "type": "array", - "items": { - "$ref": "ResourceRecord" - } - }, - "name": { - "description": "Full path to the DomainMapping resource in the API. Example: apps/myapp/domainMapping/example.com.@OutputOnly", + "codeBucket": { + "description": "Google Cloud Storage bucket that can be used for storing files associated with this application. This bucket is associated with the application and can be used by the gcloud deployment commands.@OutputOnly", "type": "string" }, - "sslSettings": { - "description": "SSL configuration for this domain. If unconfigured, this domain will not serve with SSL.", - "$ref": "SslSettings" - } - }, - "id": "DomainMapping" - }, - "Empty": { - "description": "A generic empty message that you can re-use to avoid defining duplicated empty messages in your APIs. A typical example is to use it as the request or the response type of an API method. For instance:\nservice Foo {\n rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty);\n}\nThe JSON representation for Empty is empty JSON object {}.", - "type": "object", - "properties": {}, - "id": "Empty" - }, - "ZipInfo": { - "description": "The zip file information for a zip deployment.", - "type": "object", - "properties": { - "filesCount": { - "description": "An estimate of the number of files in a zip for a zip deployment. If set, must be greater than or equal to the actual number of files. Used for optimizing performance; if not provided, deployment may be slow.", - "format": "int32", - "type": "integer" - }, - "sourceUrl": { - "description": "URL of the zip file to deploy from. Must be a URL to a resource in Google Cloud Storage in the form 'http(s)://storage.googleapis.com/\u003cbucket\u003e/\u003cobject\u003e'.", + "defaultBucket": { + "description": "Google Cloud Storage bucket that can be used by this application to store content.@OutputOnly", "type": "string" - } - }, - "id": "ZipInfo" - }, - "AutomaticScaling": { - "properties": { - "minPendingLatency": { - "description": "Minimum amount of time a request should wait in the pending queue before starting a new instance to handle it.", + }, + "defaultCookieExpiration": { + "description": "Cookie expiration policy for this application.", "format": "google-duration", "type": "string" }, - "standardSchedulerSettings": { - "$ref": "StandardSchedulerSettings", - "description": "Scheduler settings for standard environment." + "defaultHostname": { + "description": "Hostname used to reach this application, as resolved by App Engine.@OutputOnly", + "type": "string" }, - "maxIdleInstances": { - "description": "Maximum number of idle instances that should be maintained for this version.", + "dispatchRules": { + "description": "HTTP path dispatch rules for requests to the application that do not explicitly target a service or version. Rules are order-dependent. Up to 20 dispatch rules can be supported.@OutputOnly", + "items": { + "$ref": "UrlDispatchRule" + }, + "type": "array" + }, + "featureSettings": { + "$ref": "FeatureSettings", + "description": "The feature specific settings to be used in the application." + }, + "gcrDomain": { + "description": "The Google Container Registry domain used for storing managed build docker images for this application.", + "type": "string" + }, + "iap": { + "$ref": "IdentityAwareProxy" + }, + "id": { + "description": "Identifier of the Application resource. This identifier is equivalent to the project ID of the Google Cloud Platform project where you want to deploy your application. Example: myapp.", + "type": "string" + }, + "locationId": { + "description": "Location from which this application runs. Application instances run out of the data centers in the specified location, which is also where all of the application's end user content is stored.Defaults to us-central.View the list of supported locations (https://cloud.google.com/appengine/docs/locations).", + "type": "string" + }, + "name": { + "description": "Full path to the Application resource in the API. Example: apps/myapp.@OutputOnly", + "type": "string" + }, + "servingStatus": { + "description": "Serving status of this application.", + "enum": [ + "UNSPECIFIED", + "SERVING", + "USER_DISABLED", + "SYSTEM_DISABLED" + ], + "enumDescriptions": [ + "Serving status is unspecified.", + "Application is serving.", + "Application has been disabled by the user.", + "Application has been disabled by the system." + ], + "type": "string" + } + }, + "type": "object" + }, + "AuthorizedCertificate": { + "description": "An SSL certificate that a user has been authorized to administer. A user is authorized to administer any certificate that applies to one of their authorized domains.", + "id": "AuthorizedCertificate", + "properties": { + "certificateRawData": { + "$ref": "CertificateRawData", + "description": "The SSL certificate serving the AuthorizedCertificate resource. This must be obtained independently from a certificate authority." + }, + "displayName": { + "description": "The user-specified display name of the certificate. This is not guaranteed to be unique. Example: My Certificate.", + "type": "string" + }, + "domainMappingsCount": { + "description": "Aggregate count of the domain mappings with this certificate mapped. This count includes domain mappings on applications for which the user does not have VIEWER permissions.Only returned by GET or LIST requests when specifically requested by the view=FULL_CERTIFICATE option.@OutputOnly", "format": "int32", "type": "integer" }, - "requestUtilization": { - "description": "Target scaling by request utilization.", - "$ref": "RequestUtilization" + "domainNames": { + "description": "Topmost applicable domains of this certificate. This certificate applies to these domains and their subdomains. Example: example.com.@OutputOnly", + "items": { + "type": "string" + }, + "type": "array" }, - "minIdleInstances": { - "description": "Minimum number of idle instances that should be maintained for this version. Only applicable for the default version of a service.", - "format": "int32", - "type": "integer" + "expireTime": { + "description": "The time when this certificate expires. To update the renewal time on this certificate, upload an SSL certificate with a different expiration time using AuthorizedCertificates.UpdateAuthorizedCertificate.@OutputOnly", + "format": "google-datetime", + "type": "string" }, - "maxTotalInstances": { - "description": "Maximum number of instances that should be started to handle requests.", - "format": "int32", - "type": "integer" + "id": { + "description": "Relative name of the certificate. This is a unique value autogenerated on AuthorizedCertificate resource creation. Example: 12345.@OutputOnly", + "type": "string" }, - "minTotalInstances": { - "description": "Minimum number of instances that should be maintained for this version.", - "format": "int32", - "type": "integer" + "managedCertificate": { + "$ref": "ManagedCertificate", + "description": "Only applicable if this certificate is managed by App Engine. Managed certificates are tied to the lifecycle of a DomainMapping and cannot be updated or deleted via the AuthorizedCertificates API. If this certificate is manually administered by the user, this field will be empty.@OutputOnly" }, - "networkUtilization": { - "description": "Target scaling by network usage.", - "$ref": "NetworkUtilization" + "name": { + "description": "Full path to the AuthorizedCertificate resource in the API. Example: apps/myapp/authorizedCertificates/12345.@OutputOnly", + "type": "string" }, + "visibleDomainMappings": { + "description": "The full paths to user visible Domain Mapping resources that have this certificate mapped. Example: apps/myapp/domainMappings/example.com.This may not represent the full list of mapped domain mappings if the user does not have VIEWER permissions on all of the applications that have this certificate mapped. See domain_mappings_count for a complete count.Only returned by GET or LIST requests when specifically requested by the view=FULL_CERTIFICATE option.@OutputOnly", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "AuthorizedDomain": { + "description": "A domain that a user has been authorized to administer. To authorize use of a domain, verify ownership via Webmaster Central (https://www.google.com/webmasters/verification/home).", + "id": "AuthorizedDomain", + "properties": { + "id": { + "description": "Fully qualified domain name of the domain authorized for use. Example: example.com.", + "type": "string" + }, + "name": { + "description": "Full path to the AuthorizedDomain resource in the API. Example: apps/myapp/authorizedDomains/example.com.@OutputOnly", + "type": "string" + } + }, + "type": "object" + }, + "AutomaticScaling": { + "description": "Automatic scaling is based on request rate, response latencies, and other application metrics.", + "id": "AutomaticScaling", + "properties": { "coolDownPeriod": { "description": "Amount of time that the Autoscaler (https://cloud.google.com/compute/docs/autoscaler/) should wait between changes to the number of virtual machines. Only applicable in the App Engine flexible environment.", "format": "google-duration", "type": "string" }, + "cpuUtilization": { + "$ref": "CpuUtilization", + "description": "Target scaling by CPU usage." + }, + "customMetrics": { + "description": "Target scaling by user-provided metrics.", + "items": { + "$ref": "CustomMetric" + }, + "type": "array" + }, + "diskUtilization": { + "$ref": "DiskUtilization", + "description": "Target scaling by disk usage." + }, "maxConcurrentRequests": { "description": "Number of concurrent requests an automatic scaling instance can accept before the scheduler spawns a new instance.Defaults to a runtime-specific value.", "format": "int32", "type": "integer" }, + "maxIdleInstances": { + "description": "Maximum number of idle instances that should be maintained for this version.", + "format": "int32", + "type": "integer" + }, "maxPendingLatency": { "description": "Maximum amount of time that a request should wait in the pending queue before starting a new instance to handle it.", "format": "google-duration", "type": "string" }, - "cpuUtilization": { - "$ref": "CpuUtilization", - "description": "Target scaling by CPU usage." - }, - "diskUtilization": { - "$ref": "DiskUtilization", - "description": "Target scaling by disk usage." - } - }, - "id": "AutomaticScaling", - "description": "Automatic scaling is based on request rate, response latencies, and other application metrics.", - "type": "object" - }, - "AuthorizedCertificate": { - "description": "An SSL certificate that a user has been authorized to administer. A user is authorized to administer any certificate that applies to one of their authorized domains.", - "type": "object", - "properties": { - "domainMappingsCount": { - "description": "Aggregate count of the domain mappings with this certificate mapped. This count includes domain mappings on applications for which the user does not have VIEWER permissions.Only returned by GET or LIST requests when specifically requested by the view=FULL_CERTIFICATE option.@OutputOnly", + "maxTotalInstances": { + "description": "Maximum number of instances that should be started to handle requests for this version.", "format": "int32", "type": "integer" }, - "domainNames": { - "description": "Topmost applicable domains of this certificate. This certificate applies to these domains and their subdomains. Example: example.com.@OutputOnly", - "type": "array", + "minIdleInstances": { + "description": "Minimum number of idle instances that should be maintained for this version. Only applicable for the default version of a service.", + "format": "int32", + "type": "integer" + }, + "minPendingLatency": { + "description": "Minimum amount of time a request should wait in the pending queue before starting a new instance to handle it.", + "format": "google-duration", + "type": "string" + }, + "minTotalInstances": { + "description": "Minimum number of running instances that should be maintained for this version.", + "format": "int32", + "type": "integer" + }, + "networkUtilization": { + "$ref": "NetworkUtilization", + "description": "Target scaling by network usage." + }, + "requestUtilization": { + "$ref": "RequestUtilization", + "description": "Target scaling by request utilization." + }, + "standardSchedulerSettings": { + "$ref": "StandardSchedulerSettings", + "description": "Scheduler settings for standard environment." + } + }, + "type": "object" + }, + "BasicScaling": { + "description": "A service with basic scaling will create an instance when the application receives a request. The instance will be turned down when the app becomes idle. Basic scaling is ideal for work that is intermittent or driven by user activity.", + "id": "BasicScaling", + "properties": { + "idleTimeout": { + "description": "Duration of time after the last request that an instance must wait before the instance is shut down.", + "format": "google-duration", + "type": "string" + }, + "maxInstances": { + "description": "Maximum number of instances to create for this version.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "BatchUpdateIngressRulesRequest": { + "description": "Request message for Firewall.BatchUpdateIngressRules.", + "id": "BatchUpdateIngressRulesRequest", + "properties": { + "ingressRules": { + "description": "A list of FirewallRules to replace the existing set.", "items": { - "type": "string" - } + "$ref": "FirewallRule" + }, + "type": "array" + } + }, + "type": "object" + }, + "BatchUpdateIngressRulesResponse": { + "description": "Response message for Firewall.UpdateAllIngressRules.", + "id": "BatchUpdateIngressRulesResponse", + "properties": { + "ingressRules": { + "description": "The full list of ingress FirewallRules for this application.", + "items": { + "$ref": "FirewallRule" + }, + "type": "array" + } + }, + "type": "object" + }, + "BuildInfo": { + "description": "Google Cloud Container Builder build information.", + "id": "BuildInfo", + "properties": { + "cloudBuildId": { + "description": "The Google Cloud Container Builder build id. Example: \"f966068f-08b2-42c8-bdfe-74137dff2bf9\"", + "type": "string" + } + }, + "type": "object" + }, + "CertificateRawData": { + "description": "An SSL certificate obtained from a certificate authority.", + "id": "CertificateRawData", + "properties": { + "privateKey": { + "description": "Unencrypted PEM encoded RSA private key. This field is set once on certificate creation and then encrypted. The key size must be 2048 bits or fewer. Must include the header and footer. Example: \u003cpre\u003e -----BEGIN RSA PRIVATE KEY----- \u003cunencrypted_key_value\u003e -----END RSA PRIVATE KEY----- \u003c/pre\u003e @InputOnly", + "type": "string" + }, + "publicCertificate": { + "description": "PEM encoded x.509 public key certificate. This field is set once on certificate creation. Must include the header and footer. Example: \u003cpre\u003e -----BEGIN CERTIFICATE----- \u003ccertificate_value\u003e -----END CERTIFICATE----- \u003c/pre\u003e", + "type": "string" + } + }, + "type": "object" + }, + "CloudBuildOptions": { + "description": "Options for the build operations performed as a part of the version deployment. Only applicable for App Engine flexible environment when creating a version using source code directly.", + "id": "CloudBuildOptions", + "properties": { + "appYamlPath": { + "description": "Path to the yaml file used in deployment, used to determine runtime configuration details.Required for flexible environment builds.See https://cloud.google.com/appengine/docs/standard/python/config/appref for more details.", + "type": "string" + }, + "cloudBuildTimeout": { + "description": "The Cloud Build timeout used as part of any dependent builds performed by version creation. Defaults to 10 minutes.", + "format": "google-duration", + "type": "string" + } + }, + "type": "object" + }, + "ContainerInfo": { + "description": "Docker image that is used to create a container and start a VM instance for the version that you deploy. Only applicable for instances running in the App Engine flexible environment.", + "id": "ContainerInfo", + "properties": { + "image": { + "description": "URI to the hosted container image in Google Container Registry. The URI must be fully qualified and include a tag or digest. Examples: \"gcr.io/my-project/image:tag\" or \"gcr.io/my-project/image@digest\"", + "type": "string" + } + }, + "type": "object" + }, + "CpuUtilization": { + "description": "Target scaling by CPU usage.", + "id": "CpuUtilization", + "properties": { + "aggregationWindowLength": { + "description": "Period of time over which CPU utilization is calculated.", + "format": "google-duration", + "type": "string" + }, + "targetUtilization": { + "description": "Target CPU utilization ratio to maintain when scaling. Must be between 0 and 1.", + "format": "double", + "type": "number" + } + }, + "type": "object" + }, + "CreateVersionMetadataV1": { + "description": "Metadata for the given google.longrunning.Operation during a google.appengine.v1.CreateVersionRequest.", + "id": "CreateVersionMetadataV1", + "properties": { + "cloudBuildId": { + "description": "The Cloud Build ID if one was created as part of the version create. @OutputOnly", + "type": "string" + } + }, + "type": "object" + }, + "CreateVersionMetadataV1Alpha": { + "description": "Metadata for the given google.longrunning.Operation during a google.appengine.v1alpha.CreateVersionRequest.", + "id": "CreateVersionMetadataV1Alpha", + "properties": { + "cloudBuildId": { + "description": "The Cloud Build ID if one was created as part of the version create. @OutputOnly", + "type": "string" + } + }, + "type": "object" + }, + "CreateVersionMetadataV1Beta": { + "description": "Metadata for the given google.longrunning.Operation during a google.appengine.v1beta.CreateVersionRequest.", + "id": "CreateVersionMetadataV1Beta", + "properties": { + "cloudBuildId": { + "description": "The Cloud Build ID if one was created as part of the version create. @OutputOnly", + "type": "string" + } + }, + "type": "object" + }, + "CustomMetric": { + "description": "Allows autoscaling based on Stackdriver metrics.", + "id": "CustomMetric", + "properties": { + "filter": { + "description": "Allows filtering on the metric's fields.", + "type": "string" + }, + "metricName": { + "description": "The name of the metric.", + "type": "string" + }, + "singleInstanceAssignment": { + "description": "May be used instead of target_utilization when an instance can handle a specific amount of work/resources and the metric value is equal to the current amount of work remaining. The autoscaler will try to keep the number of instances equal to the metric value divided by single_instance_assignment.", + "format": "double", + "type": "number" + }, + "targetType": { + "description": "The type of the metric. Must be a string representing a Stackdriver metric type e.g. GAGUE, DELTA_PER_SECOND, etc.", + "type": "string" + }, + "targetUtilization": { + "description": "The target value for the metric.", + "format": "double", + "type": "number" + } + }, + "type": "object" + }, + "DebugInstanceRequest": { + "description": "Request message for Instances.DebugInstance.", + "id": "DebugInstanceRequest", + "properties": { + "sshKey": { + "description": "Public SSH key to add to the instance. Examples:\n[USERNAME]:ssh-rsa [KEY_VALUE] [USERNAME]\n[USERNAME]:ssh-rsa [KEY_VALUE] google-ssh {\"userName\":\"[USERNAME]\",\"expireOn\":\"[EXPIRE_TIME]\"}For more information, see Adding and Removing SSH Keys (https://cloud.google.com/compute/docs/instances/adding-removing-ssh-keys).", + "type": "string" + } + }, + "type": "object" + }, + "Deployment": { + "description": "Code and application artifacts used to deploy a version to App Engine.", + "id": "Deployment", + "properties": { + "build": { + "$ref": "BuildInfo", + "description": "Google Cloud Container Builder build information. Only applicable for instances running in the App Engine flexible environment." + }, + "cloudBuildOptions": { + "$ref": "CloudBuildOptions", + "description": "Options for any Google Cloud Container Builder builds created as a part of this deployment.Note that this is orthogonal to the build parameter, where the deployment depends on an already existing cloud build. These options will only be used if a new build is created, such as when deploying to the App Engine flexible environment using files or zip." + }, + "container": { + "$ref": "ContainerInfo", + "description": "The Docker image for the container that runs the version. Only applicable for instances running in the App Engine flexible environment." + }, + "files": { + "additionalProperties": { + "$ref": "FileInfo" + }, + "description": "Manifest of the files stored in Google Cloud Storage that are included as part of this version. All files must be readable using the credentials supplied with this call.", + "type": "object" + }, + "zip": { + "$ref": "ZipInfo", + "description": "The zip file for this deployment, if this is a zip deployment." + } + }, + "type": "object" + }, + "DiskUtilization": { + "description": "Target scaling by disk usage. Only applicable in the App Engine flexible environment.", + "id": "DiskUtilization", + "properties": { + "targetReadBytesPerSecond": { + "description": "Target bytes read per second.", + "format": "int32", + "type": "integer" + }, + "targetReadOpsPerSecond": { + "description": "Target ops read per seconds.", + "format": "int32", + "type": "integer" + }, + "targetWriteBytesPerSecond": { + "description": "Target bytes written per second.", + "format": "int32", + "type": "integer" + }, + "targetWriteOpsPerSecond": { + "description": "Target ops written per second.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "DomainMapping": { + "description": "A domain serving an App Engine application.", + "id": "DomainMapping", + "properties": { + "id": { + "description": "Relative name of the domain serving the application. Example: example.com.", + "type": "string" + }, + "name": { + "description": "Full path to the DomainMapping resource in the API. Example: apps/myapp/domainMapping/example.com.@OutputOnly", + "type": "string" + }, + "resourceRecords": { + "description": "The resource records required to configure this domain mapping. These records must be added to the domain's DNS configuration in order to serve the application via this domain mapping.@OutputOnly", + "items": { + "$ref": "ResourceRecord" + }, + "type": "array" + }, + "sslSettings": { + "$ref": "SslSettings", + "description": "SSL configuration for this domain. If unconfigured, this domain will not serve with SSL." + } + }, + "type": "object" + }, + "Empty": { + "description": "A generic empty message that you can re-use to avoid defining duplicated empty messages in your APIs. A typical example is to use it as the request or the response type of an API method. For instance:\nservice Foo {\n rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty);\n}\nThe JSON representation for Empty is empty JSON object {}.", + "id": "Empty", + "properties": {}, + "type": "object" + }, + "EndpointsApiService": { + "description": "Cloud Endpoints (https://cloud.google.com/endpoints) configuration. The Endpoints API Service provides tooling for serving Open API and gRPC endpoints via an NGINX proxy. Only valid for App Engine Flexible environment deployments.The fields here refer to the name and configuration id of a \"service\" resource in the Service Management API (https://cloud.google.com/service-management/overview).", + "id": "EndpointsApiService", + "properties": { + "configId": { + "description": "Endpoints service configuration id as specified by the Service Management API. For example \"2016-09-19r1\"By default, the Endpoints service configuration id is fixed and config_id must be specified. To keep the Endpoints service configuration id updated with each rollout, specify RolloutStrategy.MANAGED and omit config_id.", + "type": "string" + }, + "name": { + "description": "Endpoints service name which is the name of the \"service\" resource in the Service Management API. For example \"myapi.endpoints.myproject.cloud.goog\"", + "type": "string" + }, + "rolloutStrategy": { + "description": "Endpoints rollout strategy. If FIXED, config_id must be specified. If MANAGED, config_id must be omitted.", + "enum": [ + "UNSPECIFIED_ROLLOUT_STRATEGY", + "FIXED", + "MANAGED" + ], + "enumDescriptions": [ + "Not specified. Defaults to FIXED.", + "Endpoints service configuration id will be fixed to the configuration id specified by config_id.", + "Endpoints service configuration id will be updated with each rollout." + ], + "type": "string" + } + }, + "type": "object" + }, + "ErrorHandler": { + "description": "Custom static error page to be served when an error occurs.", + "id": "ErrorHandler", + "properties": { + "errorCode": { + "description": "Error condition this handler applies to.", + "enum": [ + "ERROR_CODE_UNSPECIFIED", + "ERROR_CODE_DEFAULT", + "ERROR_CODE_OVER_QUOTA", + "ERROR_CODE_DOS_API_DENIAL", + "ERROR_CODE_TIMEOUT" + ], + "enumDescriptions": [ + "Not specified. ERROR_CODE_DEFAULT is assumed.", + "All other error types.", + "Application has exceeded a resource quota.", + "Client blocked by the application's Denial of Service protection configuration.", + "Deadline reached before the application responds." + ], + "type": "string" + }, + "mimeType": { + "description": "MIME type of file. Defaults to text/html.", + "type": "string" + }, + "staticFile": { + "description": "Static file content to be served for this error.", + "type": "string" + } + }, + "type": "object" + }, + "FeatureSettings": { + "description": "The feature specific settings to be used in the application. These define behaviors that are user configurable.", + "id": "FeatureSettings", + "properties": { + "splitHealthChecks": { + "description": "Boolean value indicating if split health checks should be used instead of the legacy health checks. At an app.yaml level, this means defaulting to 'readiness_check' and 'liveness_check' values instead of 'health_check' ones. Once the legacy 'health_check' behavior is deprecated, and this value is always true, this setting can be removed.", + "type": "boolean" + }, + "useContainerOptimizedOs": { + "description": "If true, use Container-Optimized OS (https://cloud.google.com/container-optimized-os/) base image for VMs, rather than a base Debian image.", + "type": "boolean" + } + }, + "type": "object" + }, + "FileInfo": { + "description": "Single source file that is part of the version to be deployed. Each source file that is deployed must be specified separately.", + "id": "FileInfo", + "properties": { + "mimeType": { + "description": "The MIME type of the file.Defaults to the value from Google Cloud Storage.", + "type": "string" + }, + "sha1Sum": { + "description": "The SHA1 hash of the file, in hex.", + "type": "string" + }, + "sourceUrl": { + "description": "URL source to use to fetch this file. Must be a URL to a resource in Google Cloud Storage in the form 'http(s)://storage.googleapis.com/\u003cbucket\u003e/\u003cobject\u003e'.", + "type": "string" + } + }, + "type": "object" + }, + "FirewallRule": { + "description": "A single firewall rule that is evaluated against incoming traffic and provides an action to take on matched requests.", + "id": "FirewallRule", + "properties": { + "action": { + "description": "The action to take on matched requests.", + "enum": [ + "UNSPECIFIED_ACTION", + "ALLOW", + "DENY" + ], + "enumDescriptions": [ + "", + "Matching requests are allowed.", + "Matching requests are denied." + ], + "type": "string" + }, + "description": { + "description": "An optional string description of this rule. This field has a maximum length of 100 characters.", + "type": "string" + }, + "priority": { + "description": "A positive integer between 1, Int32.MaxValue-1 that defines the order of rule evaluation. Rules with the lowest priority are evaluated first.A default rule at priority Int32.MaxValue matches all IPv4 and IPv6 traffic when no previous rule matches. Only the action of this rule can be modified by the user.", + "format": "int32", + "type": "integer" + }, + "sourceRange": { + "description": "IP address or range, defined using CIDR notation, of requests that this rule applies to. You can use the wildcard character \"*\" to match all IPs equivalent to \"0/0\" and \"::/0\" together. Examples: 192.168.1.1 or 192.168.0.0/16 or 2001:db8::/32 or 2001:0db8:0000:0042:0000:8a2e:0370:7334.\u003cp\u003eTruncation will be silently performed on addresses which are not properly truncated. For example, 1.2.3.4/24 is accepted as the same address as 1.2.3.0/24. Similarly, for IPv6, 2001:db8::1/32 is accepted as the same address as 2001:db8::/32.", + "type": "string" + } + }, + "type": "object" + }, + "HealthCheck": { + "description": "Health checking configuration for VM instances. Unhealthy instances are killed and replaced with new instances. Only applicable for instances in App Engine flexible environment.", + "id": "HealthCheck", + "properties": { + "checkInterval": { + "description": "Interval between health checks.", + "format": "google-duration", + "type": "string" + }, + "disableHealthCheck": { + "description": "Whether to explicitly disable health checks for this instance.", + "type": "boolean" + }, + "healthyThreshold": { + "description": "Number of consecutive successful health checks required before receiving traffic.", + "format": "uint32", + "type": "integer" + }, + "host": { + "description": "Host header to send when performing an HTTP health check. Example: \"myapp.appspot.com\"", + "type": "string" + }, + "restartThreshold": { + "description": "Number of consecutive failed health checks required before an instance is restarted.", + "format": "uint32", + "type": "integer" + }, + "timeout": { + "description": "Time before the health check is considered failed.", + "format": "google-duration", + "type": "string" + }, + "unhealthyThreshold": { + "description": "Number of consecutive failed health checks required before removing traffic.", + "format": "uint32", + "type": "integer" + } + }, + "type": "object" + }, + "IdentityAwareProxy": { + "description": "Identity-Aware Proxy", + "id": "IdentityAwareProxy", + "properties": { + "enabled": { + "description": "Whether the serving infrastructure will authenticate and authorize all incoming requests.If true, the oauth2_client_id and oauth2_client_secret fields must be non-empty.", + "type": "boolean" + }, + "oauth2ClientId": { + "description": "OAuth2 client ID to use for the authentication flow.", + "type": "string" + }, + "oauth2ClientSecret": { + "description": "OAuth2 client secret to use for the authentication flow.For security reasons, this value cannot be retrieved via the API. Instead, the SHA-256 hash of the value is returned in the oauth2_client_secret_sha256 field.@InputOnly", + "type": "string" + }, + "oauth2ClientSecretSha256": { + "description": "Hex-encoded SHA-256 hash of the client secret.@OutputOnly", + "type": "string" + } + }, + "type": "object" + }, + "Instance": { + "description": "An Instance resource is the computing unit that App Engine uses to automatically scale an application.", + "id": "Instance", + "properties": { + "appEngineRelease": { + "description": "App Engine release this instance is running on.@OutputOnly", + "type": "string" + }, + "availability": { + "description": "Availability of the instance.@OutputOnly", + "enum": [ + "UNSPECIFIED", + "RESIDENT", + "DYNAMIC" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, + "averageLatency": { + "description": "Average latency (ms) over the last minute.@OutputOnly", + "format": "int32", + "type": "integer" + }, + "errors": { + "description": "Number of errors since this instance was started.@OutputOnly", + "format": "int32", + "type": "integer" }, "id": { - "description": "Relative name of the certificate. This is a unique value autogenerated on AuthorizedCertificate resource creation. Example: 12345.@OutputOnly", + "description": "Relative name of the instance within the version. Example: instance-1.@OutputOnly", "type": "string" }, - "displayName": { - "description": "The user-specified display name of the certificate. This is not guaranteed to be unique. Example: My Certificate.", + "memoryUsage": { + "description": "Total memory in use (bytes).@OutputOnly", + "format": "int64", "type": "string" }, - "managedCertificate": { - "description": "Only applicable if this certificate is managed by App Engine. Managed certificates are tied to the lifecycle of a DomainMapping and cannot be updated or deleted via the AuthorizedCertificates API. If this certificate is manually administered by the user, this field will be empty.@OutputOnly", - "$ref": "ManagedCertificate" + "name": { + "description": "Full path to the Instance resource in the API. Example: apps/myapp/services/default/versions/v1/instances/instance-1.@OutputOnly", + "type": "string" }, - "certificateRawData": { - "description": "The SSL certificate serving the AuthorizedCertificate resource. This must be obtained independently from a certificate authority.", - "$ref": "CertificateRawData" + "qps": { + "description": "Average queries per second (QPS) over the last minute.@OutputOnly", + "format": "float", + "type": "number" }, - "visibleDomainMappings": { - "description": "The full paths to user visible Domain Mapping resources that have this certificate mapped. Example: apps/myapp/domainMappings/example.com.This may not represent the full list of mapped domain mappings if the user does not have VIEWER permissions on all of the applications that have this certificate mapped. See domain_mappings_count for a complete count.Only returned by GET or LIST requests when specifically requested by the view=FULL_CERTIFICATE option.@OutputOnly", - "type": "array", - "items": { - "type": "string" - } + "requests": { + "description": "Number of requests since this instance was started.@OutputOnly", + "format": "int32", + "type": "integer" }, - "expireTime": { - "description": "The time when this certificate expires. To update the renewal time on this certificate, upload an SSL certificate with a different expiration time using AuthorizedCertificates.UpdateAuthorizedCertificate.@OutputOnly", + "startTime": { + "description": "Time that this instance was started.@OutputOnly", "format": "google-datetime", "type": "string" }, - "name": { - "description": "Full path to the AuthorizedCertificate resource in the API. Example: apps/myapp/authorizedCertificates/12345.@OutputOnly", + "vmDebugEnabled": { + "description": "Whether this instance is in debug mode. Only applicable for instances in App Engine flexible environment.@OutputOnly", + "type": "boolean" + }, + "vmId": { + "description": "Virtual machine ID of this instance. Only applicable for instances in App Engine flexible environment.@OutputOnly", + "type": "string" + }, + "vmIp": { + "description": "The IP address of this instance. Only applicable for instances in App Engine flexible environment.@OutputOnly", + "type": "string" + }, + "vmName": { + "description": "Name of the virtual machine where this instance lives. Only applicable for instances in App Engine flexible environment.@OutputOnly", + "type": "string" + }, + "vmStatus": { + "description": "Status of the virtual machine where this instance lives. Only applicable for instances in App Engine flexible environment.@OutputOnly", + "type": "string" + }, + "vmZoneName": { + "description": "Zone where the virtual machine is located. Only applicable for instances in App Engine flexible environment.@OutputOnly", "type": "string" } }, - "id": "AuthorizedCertificate" - }, - "ResourceRecord": { - "description": "A DNS resource record.", - "type": "object", - "properties": { - "rrdata": { - "description": "Data for this record. Values vary by record type, as defined in RFC 1035 (section 5) and RFC 1034 (section 3.6.1).", - "type": "string" - }, - "name": { - "description": "Relative name of the object affected by this record. Only applicable for CNAME records. Example: 'www'.", - "type": "string" - }, - "type": { - "description": "Resource record type. Example: AAAA.", - "type": "string", - "enumDescriptions": [ - "An A resource record. Data is an IPv4 address.", - "An AAAA resource record. Data is an IPv6 address.", - "A CNAME resource record. Data is a domain name to be aliased." - ], - "enum": [ - "A", - "AAAA", - "CNAME" - ] - } - }, - "id": "ResourceRecord" + "type": "object" }, "Library": { "description": "Third-party Python runtime library that is required by the application.", - "type": "object", + "id": "Library", "properties": { "name": { "description": "Name of the library. Example: \"django\".", @@ -1946,166 +2444,386 @@ "type": "string" } }, - "id": "Library" + "type": "object" + }, + "ListAuthorizedCertificatesResponse": { + "description": "Response message for AuthorizedCertificates.ListAuthorizedCertificates.", + "id": "ListAuthorizedCertificatesResponse", + "properties": { + "certificates": { + "description": "The SSL certificates the user is authorized to administer.", + "items": { + "$ref": "AuthorizedCertificate" + }, + "type": "array" + }, + "nextPageToken": { + "description": "Continuation token for fetching the next page of results.", + "type": "string" + } + }, + "type": "object" + }, + "ListAuthorizedDomainsResponse": { + "description": "Response message for AuthorizedDomains.ListAuthorizedDomains.", + "id": "ListAuthorizedDomainsResponse", + "properties": { + "domains": { + "description": "The authorized domains belonging to the user.", + "items": { + "$ref": "AuthorizedDomain" + }, + "type": "array" + }, + "nextPageToken": { + "description": "Continuation token for fetching the next page of results.", + "type": "string" + } + }, + "type": "object" + }, + "ListDomainMappingsResponse": { + "description": "Response message for DomainMappings.ListDomainMappings.", + "id": "ListDomainMappingsResponse", + "properties": { + "domainMappings": { + "description": "The domain mappings for the application.", + "items": { + "$ref": "DomainMapping" + }, + "type": "array" + }, + "nextPageToken": { + "description": "Continuation token for fetching the next page of results.", + "type": "string" + } + }, + "type": "object" + }, + "ListIngressRulesResponse": { + "description": "Response message for Firewall.ListIngressRules.", + "id": "ListIngressRulesResponse", + "properties": { + "ingressRules": { + "description": "The ingress FirewallRules for this application.", + "items": { + "$ref": "FirewallRule" + }, + "type": "array" + }, + "nextPageToken": { + "description": "Continuation token for fetching the next page of results.", + "type": "string" + } + }, + "type": "object" + }, + "ListInstancesResponse": { + "description": "Response message for Instances.ListInstances.", + "id": "ListInstancesResponse", + "properties": { + "instances": { + "description": "The instances belonging to the requested version.", + "items": { + "$ref": "Instance" + }, + "type": "array" + }, + "nextPageToken": { + "description": "Continuation token for fetching the next page of results.", + "type": "string" + } + }, + "type": "object" }, "ListLocationsResponse": { "description": "The response message for Locations.ListLocations.", - "type": "object", + "id": "ListLocationsResponse", + "properties": { + "locations": { + "description": "A list of locations that matches the specified filter in the request.", + "items": { + "$ref": "Location" + }, + "type": "array" + }, + "nextPageToken": { + "description": "The standard List next-page token.", + "type": "string" + } + }, + "type": "object" + }, + "ListOperationsResponse": { + "description": "The response message for Operations.ListOperations.", + "id": "ListOperationsResponse", "properties": { "nextPageToken": { "description": "The standard List next-page token.", "type": "string" }, - "locations": { - "description": "A list of locations that matches the specified filter in the request.", - "type": "array", + "operations": { + "description": "A list of operations that matches the specified filter in the request.", "items": { - "$ref": "Location" - } + "$ref": "Operation" + }, + "type": "array" } }, - "id": "ListLocationsResponse" + "type": "object" }, - "ContainerInfo": { - "description": "Docker image that is used to create a container and start a VM instance for the version that you deploy. Only applicable for instances running in the App Engine flexible environment.", - "type": "object", + "ListServicesResponse": { + "description": "Response message for Services.ListServices.", + "id": "ListServicesResponse", "properties": { - "image": { - "description": "URI to the hosted container image in Google Container Registry. The URI must be fully qualified and include a tag or digest. Examples: \"gcr.io/my-project/image:tag\" or \"gcr.io/my-project/image@digest\"", + "nextPageToken": { + "description": "Continuation token for fetching the next page of results.", + "type": "string" + }, + "services": { + "description": "The services belonging to the requested application.", + "items": { + "$ref": "Service" + }, + "type": "array" + } + }, + "type": "object" + }, + "ListVersionsResponse": { + "description": "Response message for Versions.ListVersions.", + "id": "ListVersionsResponse", + "properties": { + "nextPageToken": { + "description": "Continuation token for fetching the next page of results.", + "type": "string" + }, + "versions": { + "description": "The versions belonging to the requested service.", + "items": { + "$ref": "Version" + }, + "type": "array" + } + }, + "type": "object" + }, + "LivenessCheck": { + "description": "Health checking configuration for VM instances. Unhealthy instances are killed and replaced with new instances.", + "id": "LivenessCheck", + "properties": { + "checkInterval": { + "description": "Interval between health checks.", + "format": "google-duration", + "type": "string" + }, + "failureThreshold": { + "description": "Number of consecutive failed checks required before considering the VM unhealthy.", + "format": "uint32", + "type": "integer" + }, + "host": { + "description": "Host header to send when performing a HTTP Liveness check. Example: \"myapp.appspot.com\"", + "type": "string" + }, + "initialDelay": { + "description": "The initial delay before starting to execute the checks.", + "format": "google-duration", + "type": "string" + }, + "path": { + "description": "The request path.", + "type": "string" + }, + "successThreshold": { + "description": "Number of consecutive successful checks required before considering the VM healthy.", + "format": "uint32", + "type": "integer" + }, + "timeout": { + "description": "Time before the check is considered failed.", + "format": "google-duration", "type": "string" } }, - "id": "ContainerInfo" + "type": "object" }, - "RequestUtilization": { - "description": "Target scaling by request utilization. Only applicable in the App Engine flexible environment.", - "type": "object", + "Location": { + "description": "A resource that represents Google Cloud Platform location.", + "id": "Location", "properties": { - "targetRequestCountPerSecond": { - "description": "Target requests per second.", - "format": "int32", - "type": "integer" + "displayName": { + "description": "The friendly name for this location, typically a nearby city name. For example, \"Tokyo\".", + "type": "string" + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Cross-service attributes for the location. For example\n{\"cloud.googleapis.com/region\": \"us-east1\"}\n", + "type": "object" + }, + "locationId": { + "description": "The canonical id for this location. For example: \"us-east1\".", + "type": "string" + }, + "metadata": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "description": "Service-specific metadata. For example the available capacity at the given location.", + "type": "object" }, - "targetConcurrentRequests": { - "description": "Target number of concurrent requests.", - "format": "int32", - "type": "integer" - } - }, - "id": "RequestUtilization" - }, - "EndpointsApiService": { - "description": "Cloud Endpoints (https://cloud.google.com/endpoints) configuration. The Endpoints API Service provides tooling for serving Open API and gRPC endpoints via an NGINX proxy.The fields here refer to the name and configuration id of a \"service\" resource in the Service Management API (https://cloud.google.com/service-management/overview).", - "type": "object", - "properties": { "name": { - "description": "Endpoints service name which is the name of the \"service\" resource in the Service Management API. For example \"myapi.endpoints.myproject.cloud.goog\"", - "type": "string" - }, - "configId": { - "description": "Endpoints service configuration id as specified by the Service Management API. For example \"2016-09-19r1\"By default, the Endpoints service configuration id is fixed and config_id must be specified. To keep the Endpoints service configuration id updated with each rollout, specify RolloutStrategy.MANAGED and omit config_id.", + "description": "Resource name for the location, which may vary between implementations. For example: \"projects/example-project/locations/us-east1\"", "type": "string" } }, - "id": "EndpointsApiService" + "type": "object" }, - "UrlMap": { - "description": "URL pattern and description of how the URL should be handled. App Engine can handle URLs by executing application code or by serving static files uploaded with the version, such as images, CSS, or JavaScript.", - "type": "object", + "LocationMetadata": { + "description": "Metadata for the given google.cloud.location.Location.", + "id": "LocationMetadata", "properties": { - "securityLevel": { - "enumDescriptions": [ - "Not specified.", - "Both HTTP and HTTPS requests with URLs that match the handler succeed without redirects. The application can examine the request to determine which protocol was used, and respond accordingly.", - "Requests for a URL that match this handler that use HTTPS are automatically redirected to the HTTP equivalent URL.", - "Both HTTP and HTTPS requests with URLs that match the handler succeed without redirects. The application can examine the request to determine which protocol was used and respond accordingly.", - "Requests for a URL that match this handler that do not use HTTPS are automatically redirected to the HTTPS URL with the same path. Query parameters are reserved for the redirect." - ], - "enum": [ - "SECURE_UNSPECIFIED", - "SECURE_DEFAULT", - "SECURE_NEVER", - "SECURE_OPTIONAL", - "SECURE_ALWAYS" - ], - "description": "Security (HTTPS) enforcement for this URL.", - "type": "string" + "flexibleEnvironmentAvailable": { + "description": "App Engine flexible environment is available in the given location.@OutputOnly", + "type": "boolean" }, - "authFailAction": { - "enumDescriptions": [ - "Not specified. AUTH_FAIL_ACTION_REDIRECT is assumed.", - "Redirects user to \"accounts.google.com\". The user is redirected back to the application URL after signing in or creating an account.", - "Rejects request with a 401 HTTP status code and an error message." - ], - "enum": [ - "AUTH_FAIL_ACTION_UNSPECIFIED", - "AUTH_FAIL_ACTION_REDIRECT", - "AUTH_FAIL_ACTION_UNAUTHORIZED" - ], - "description": "Action to take when users access resources that require authentication. Defaults to redirect.", - "type": "string" - }, - "script": { - "description": "Executes a script to handle the request that matches this URL pattern.", - "$ref": "ScriptHandler" - }, - "urlRegex": { - "description": "URL prefix. Uses regular expression syntax, which means regexp special characters must be escaped, but should not contain groupings. All URLs that begin with this prefix are handled by this handler, using the portion of the URL after the prefix as part of the file path.", - "type": "string" - }, - "login": { - "enumDescriptions": [ - "Not specified. LOGIN_OPTIONAL is assumed.", - "Does not require that the user is signed in.", - "If the user is not signed in, the auth_fail_action is taken. In addition, if the user is not an administrator for the application, they are given an error message regardless of auth_fail_action. If the user is an administrator, the handler proceeds.", - "If the user has signed in, the handler proceeds normally. Otherwise, the auth_fail_action is taken." - ], - "enum": [ - "LOGIN_UNSPECIFIED", - "LOGIN_OPTIONAL", - "LOGIN_ADMIN", - "LOGIN_REQUIRED" - ], - "description": "Level of login required to access this resource.", - "type": "string" - }, - "apiEndpoint": { - "description": "Uses API Endpoints to handle requests.", - "$ref": "ApiEndpointHandler" - }, - "staticFiles": { - "description": "Returns the contents of a file, such as an image, as the response.", - "$ref": "StaticFilesHandler" - }, - "redirectHttpResponseCode": { - "enum": [ - "REDIRECT_HTTP_RESPONSE_CODE_UNSPECIFIED", - "REDIRECT_HTTP_RESPONSE_CODE_301", - "REDIRECT_HTTP_RESPONSE_CODE_302", - "REDIRECT_HTTP_RESPONSE_CODE_303", - "REDIRECT_HTTP_RESPONSE_CODE_307" - ], - "description": "30x code to use when performing redirects for the secure field. Defaults to 302.", - "type": "string", - "enumDescriptions": [ - "Not specified. 302 is assumed.", - "301 Moved Permanently code.", - "302 Moved Temporarily code.", - "303 See Other code.", - "307 Temporary Redirect code." - ] + "standardEnvironmentAvailable": { + "description": "App Engine standard environment is available in the given location.@OutputOnly", + "type": "boolean" } }, - "id": "UrlMap" + "type": "object" + }, + "ManagedCertificate": { + "description": "A certificate managed by App Engine.", + "id": "ManagedCertificate", + "properties": { + "lastRenewalTime": { + "description": "Time at which the certificate was last renewed. The renewal process is fully managed. Certificate renewal will automatically occur before the certificate expires. Renewal errors can be tracked via ManagementStatus.@OutputOnly", + "format": "google-datetime", + "type": "string" + }, + "status": { + "description": "Status of certificate management. Refers to the most recent certificate acquisition or renewal attempt.@OutputOnly", + "enum": [ + "MANAGEMENT_STATUS_UNSPECIFIED", + "OK", + "PENDING", + "FAILED_RETRYING_NOT_VISIBLE", + "FAILED_PERMANENT", + "FAILED_RETRYING_CAA_FORBIDDEN", + "FAILED_RETRYING_CAA_CHECKING" + ], + "enumDescriptions": [ + "", + "Certificate was successfully obtained and inserted into the serving system.", + "Certificate is under active attempts to acquire or renew.", + "Most recent renewal failed due to an invalid DNS setup and will be retried. Renewal attempts will continue to fail until the certificate domain's DNS configuration is fixed. The last successfully provisioned certificate may still be serving.", + "All renewal attempts have been exhausted, likely due to an invalid DNS setup.", + "Most recent renewal failed due to an explicit CAA record that does not include the in-use CA, Let's Encrypt. Renewals will continue to fail until the CAA is reconfigured. The last successfully provisioned certificate may still be serving.", + "Most recent renewal failed due to a CAA retrieval failure. This means that the domain's DNS provider does not properly handle CAA records, failing requests for CAA records when no CAA records are defined. Renewals will continue to fail until the DNS provider is changed or a CAA record is added for the given domain. The last successfully provisioned certificate may still be serving." + ], + "type": "string" + } + }, + "type": "object" + }, + "ManualScaling": { + "description": "A service with manual scaling runs continuously, allowing you to perform complex initialization and rely on the state of its memory over time.", + "id": "ManualScaling", + "properties": { + "instances": { + "description": "Number of instances to assign to the service at the start. This number can later be altered by using the Modules API (https://cloud.google.com/appengine/docs/python/modules/functions) set_num_instances() function.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "Network": { + "description": "Extra network settings. Only applicable in the App Engine flexible environment.", + "id": "Network", + "properties": { + "forwardedPorts": { + "description": "List of ports, or port pairs, to forward from the virtual machine to the application container. Only applicable in the App Engine flexible environment.", + "items": { + "type": "string" + }, + "type": "array" + }, + "instanceTag": { + "description": "Tag to apply to the instance during creation. Only applicable in the App Engine flexible environment.", + "type": "string" + }, + "name": { + "description": "Google Compute Engine network where the virtual machines are created. Specify the short name, not the resource path.Defaults to default.", + "type": "string" + }, + "sessionAffinity": { + "description": "Enable session affinity.", + "type": "boolean" + }, + "subnetworkName": { + "description": "Google Cloud Platform sub-network where the virtual machines are created. Specify the short name, not the resource path.If a subnetwork name is specified, a network name will also be required unless it is for the default network.\nIf the network that the instance is being created in is a Legacy network, then the IP address is allocated from the IPv4Range.\nIf the network that the instance is being created in is an auto Subnet Mode Network, then only network name should be specified (not the subnetwork_name) and the IP address is created from the IPCidrRange of the subnetwork that exists in that zone for that network.\nIf the network that the instance is being created in is a custom Subnet Mode Network, then the subnetwork_name must be specified and the IP address is created from the IPCidrRange of the subnetwork.If specified, the subnetwork must exist in the same region as the App Engine flexible environment application.", + "type": "string" + } + }, + "type": "object" + }, + "NetworkUtilization": { + "description": "Target scaling by network usage. Only applicable in the App Engine flexible environment.", + "id": "NetworkUtilization", + "properties": { + "targetReceivedBytesPerSecond": { + "description": "Target bytes received per second.", + "format": "int32", + "type": "integer" + }, + "targetReceivedPacketsPerSecond": { + "description": "Target packets received per second.", + "format": "int32", + "type": "integer" + }, + "targetSentBytesPerSecond": { + "description": "Target bytes sent per second.", + "format": "int32", + "type": "integer" + }, + "targetSentPacketsPerSecond": { + "description": "Target packets sent per second.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" }, "Operation": { "description": "This resource represents a long-running operation that is the result of a network API call.", - "type": "object", + "id": "Operation", "properties": { "done": { "description": "If the value is false, it means the operation is still in progress. If true, the operation is completed, and either error or response is available.", "type": "boolean" }, + "error": { + "$ref": "Status", + "description": "The error result of the operation in case of failure or cancellation." + }, + "metadata": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "description": "Service-specific metadata associated with the operation. It typically contains progress information and common metadata such as create time. Some services might not provide such metadata. Any method that returns a long-running operation should document the metadata type, if any.", + "type": "object" + }, + "name": { + "description": "The server-assigned name, which is only unique within the same service that originally returns it. If you use the default HTTP mapping, the name should have the format of operations/some/unique/name.", + "type": "string" + }, "response": { "additionalProperties": { "description": "Properties of the object. Contains field @type with type URL.", @@ -2113,93 +2831,412 @@ }, "description": "The normal response of the operation in case of success. If the original method returns no data on success, such as Delete, the response is google.protobuf.Empty. If the original method is standard Get/Create/Update, the response should be the resource. For other methods, the response should have the type XxxResponse, where Xxx is the original method name. For example, if the original method name is TakeSnapshot(), the inferred response type is TakeSnapshotResponse.", "type": "object" - }, - "name": { - "description": "The server-assigned name, which is only unique within the same service that originally returns it. If you use the default HTTP mapping, the name should have the format of operations/some/unique/name.", - "type": "string" - }, - "error": { - "description": "The error result of the operation in case of failure or cancellation.", - "$ref": "Status" - }, - "metadata": { - "description": "Service-specific metadata associated with the operation. It typically contains progress information and common metadata such as create time. Some services might not provide such metadata. Any method that returns a long-running operation should document the metadata type, if any.", - "type": "object", - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - } } }, - "id": "Operation" + "type": "object" }, - "ApiConfigHandler": { - "description": "Google Cloud Endpoints (https://cloud.google.com/appengine/docs/python/endpoints/) configuration for API handlers.", - "type": "object", + "OperationMetadata": { + "description": "Metadata for the given google.longrunning.Operation.", + "id": "OperationMetadata", "properties": { - "script": { + "endTime": { + "description": "Timestamp that this operation completed.@OutputOnly", + "format": "google-datetime", + "type": "string" + }, + "insertTime": { + "description": "Timestamp that this operation was created.@OutputOnly", + "format": "google-datetime", + "type": "string" + }, + "method": { + "description": "API method that initiated this operation. Example: google.appengine.v1beta4.Version.CreateVersion.@OutputOnly", + "type": "string" + }, + "operationType": { + "description": "Type of this operation. Deprecated, use method field instead. Example: \"create_version\".@OutputOnly", + "type": "string" + }, + "target": { + "description": "Name of the resource that this operation is acting on. Example: apps/myapp/modules/default.@OutputOnly", + "type": "string" + }, + "user": { + "description": "User who requested this operation.@OutputOnly", + "type": "string" + } + }, + "type": "object" + }, + "OperationMetadataV1": { + "description": "Metadata for the given google.longrunning.Operation.", + "id": "OperationMetadataV1", + "properties": { + "createVersionMetadata": { + "$ref": "CreateVersionMetadataV1" + }, + "endTime": { + "description": "Time that this operation completed.@OutputOnly", + "format": "google-datetime", + "type": "string" + }, + "ephemeralMessage": { + "description": "Ephemeral message that may change every time the operation is polled. @OutputOnly", + "type": "string" + }, + "insertTime": { + "description": "Time that this operation was created.@OutputOnly", + "format": "google-datetime", + "type": "string" + }, + "method": { + "description": "API method that initiated this operation. Example: google.appengine.v1.Versions.CreateVersion.@OutputOnly", + "type": "string" + }, + "target": { + "description": "Name of the resource that this operation is acting on. Example: apps/myapp/services/default.@OutputOnly", + "type": "string" + }, + "user": { + "description": "User who requested this operation.@OutputOnly", + "type": "string" + }, + "warning": { + "description": "Durable messages that persist on every operation poll. @OutputOnly", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "OperationMetadataV1Alpha": { + "description": "Metadata for the given google.longrunning.Operation.", + "id": "OperationMetadataV1Alpha", + "properties": { + "createVersionMetadata": { + "$ref": "CreateVersionMetadataV1Alpha" + }, + "endTime": { + "description": "Time that this operation completed.@OutputOnly", + "format": "google-datetime", + "type": "string" + }, + "ephemeralMessage": { + "description": "Ephemeral message that may change every time the operation is polled. @OutputOnly", + "type": "string" + }, + "insertTime": { + "description": "Time that this operation was created.@OutputOnly", + "format": "google-datetime", + "type": "string" + }, + "method": { + "description": "API method that initiated this operation. Example: google.appengine.v1alpha.Versions.CreateVersion.@OutputOnly", + "type": "string" + }, + "target": { + "description": "Name of the resource that this operation is acting on. Example: apps/myapp/services/default.@OutputOnly", + "type": "string" + }, + "user": { + "description": "User who requested this operation.@OutputOnly", + "type": "string" + }, + "warning": { + "description": "Durable messages that persist on every operation poll. @OutputOnly", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "OperationMetadataV1Beta": { + "description": "Metadata for the given google.longrunning.Operation.", + "id": "OperationMetadataV1Beta", + "properties": { + "createVersionMetadata": { + "$ref": "CreateVersionMetadataV1Beta" + }, + "endTime": { + "description": "Time that this operation completed.@OutputOnly", + "format": "google-datetime", + "type": "string" + }, + "ephemeralMessage": { + "description": "Ephemeral message that may change every time the operation is polled. @OutputOnly", + "type": "string" + }, + "insertTime": { + "description": "Time that this operation was created.@OutputOnly", + "format": "google-datetime", + "type": "string" + }, + "method": { + "description": "API method that initiated this operation. Example: google.appengine.v1beta.Versions.CreateVersion.@OutputOnly", + "type": "string" + }, + "target": { + "description": "Name of the resource that this operation is acting on. Example: apps/myapp/services/default.@OutputOnly", + "type": "string" + }, + "user": { + "description": "User who requested this operation.@OutputOnly", + "type": "string" + }, + "warning": { + "description": "Durable messages that persist on every operation poll. @OutputOnly", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "OperationMetadataV1Beta5": { + "description": "Metadata for the given google.longrunning.Operation.", + "id": "OperationMetadataV1Beta5", + "properties": { + "endTime": { + "description": "Timestamp that this operation completed.@OutputOnly", + "format": "google-datetime", + "type": "string" + }, + "insertTime": { + "description": "Timestamp that this operation was created.@OutputOnly", + "format": "google-datetime", + "type": "string" + }, + "method": { + "description": "API method name that initiated this operation. Example: google.appengine.v1beta5.Version.CreateVersion.@OutputOnly", + "type": "string" + }, + "target": { + "description": "Name of the resource that this operation is acting on. Example: apps/myapp/services/default.@OutputOnly", + "type": "string" + }, + "user": { + "description": "User who requested this operation.@OutputOnly", + "type": "string" + } + }, + "type": "object" + }, + "ReadinessCheck": { + "description": "Readiness checking configuration for VM instances. Unhealthy instances are removed from traffic rotation.", + "id": "ReadinessCheck", + "properties": { + "appStartTimeout": { + "description": "A maximum time limit on application initialization, measured from moment the application successfully replies to a healthcheck until it is ready to serve traffic.", + "format": "google-duration", + "type": "string" + }, + "checkInterval": { + "description": "Interval between health checks.", + "format": "google-duration", + "type": "string" + }, + "failureThreshold": { + "description": "Number of consecutive failed checks required before removing traffic.", + "format": "uint32", + "type": "integer" + }, + "host": { + "description": "Host header to send when performing a HTTP Readiness check. Example: \"myapp.appspot.com\"", + "type": "string" + }, + "path": { + "description": "The request path.", + "type": "string" + }, + "successThreshold": { + "description": "Number of consecutive successful checks required before receiving traffic.", + "format": "uint32", + "type": "integer" + }, + "timeout": { + "description": "Time before the check is considered failed.", + "format": "google-duration", + "type": "string" + } + }, + "type": "object" + }, + "RepairApplicationRequest": { + "description": "Request message for 'Applications.RepairApplication'.", + "id": "RepairApplicationRequest", + "properties": {}, + "type": "object" + }, + "RequestUtilization": { + "description": "Target scaling by request utilization. Only applicable in the App Engine flexible environment.", + "id": "RequestUtilization", + "properties": { + "targetConcurrentRequests": { + "description": "Target number of concurrent requests.", + "format": "int32", + "type": "integer" + }, + "targetRequestCountPerSecond": { + "description": "Target requests per second.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "ResourceRecord": { + "description": "A DNS resource record.", + "id": "ResourceRecord", + "properties": { + "name": { + "description": "Relative name of the object affected by this record. Only applicable for CNAME records. Example: 'www'.", + "type": "string" + }, + "rrdata": { + "description": "Data for this record. Values vary by record type, as defined in RFC 1035 (section 5) and RFC 1034 (section 3.6.1).", + "type": "string" + }, + "type": { + "description": "Resource record type. Example: AAAA.", + "enum": [ + "A", + "AAAA", + "CNAME" + ], + "enumDescriptions": [ + "An A resource record. Data is an IPv4 address.", + "An AAAA resource record. Data is an IPv6 address.", + "A CNAME resource record. Data is a domain name to be aliased." + ], + "type": "string" + } + }, + "type": "object" + }, + "Resources": { + "description": "Machine resources for a version.", + "id": "Resources", + "properties": { + "cpu": { + "description": "Number of CPU cores needed.", + "format": "double", + "type": "number" + }, + "diskGb": { + "description": "Disk size (GB) needed.", + "format": "double", + "type": "number" + }, + "memoryGb": { + "description": "Memory (GB) needed.", + "format": "double", + "type": "number" + }, + "volumes": { + "description": "User specified volumes.", + "items": { + "$ref": "Volume" + }, + "type": "array" + } + }, + "type": "object" + }, + "ScriptHandler": { + "description": "Executes a script to handle the request that matches the URL pattern.", + "id": "ScriptHandler", + "properties": { + "scriptPath": { "description": "Path to the script from the application root directory.", "type": "string" - }, - "login": { - "enumDescriptions": [ - "Not specified. LOGIN_OPTIONAL is assumed.", - "Does not require that the user is signed in.", - "If the user is not signed in, the auth_fail_action is taken. In addition, if the user is not an administrator for the application, they are given an error message regardless of auth_fail_action. If the user is an administrator, the handler proceeds.", - "If the user has signed in, the handler proceeds normally. Otherwise, the auth_fail_action is taken." - ], - "enum": [ - "LOGIN_UNSPECIFIED", - "LOGIN_OPTIONAL", - "LOGIN_ADMIN", - "LOGIN_REQUIRED" - ], - "description": "Level of login required to access this resource. Defaults to optional.", - "type": "string" - }, - "url": { - "description": "URL to serve the endpoint at.", - "type": "string" - }, - "securityLevel": { - "enum": [ - "SECURE_UNSPECIFIED", - "SECURE_DEFAULT", - "SECURE_NEVER", - "SECURE_OPTIONAL", - "SECURE_ALWAYS" - ], - "description": "Security (HTTPS) enforcement for this URL.", - "type": "string", - "enumDescriptions": [ - "Not specified.", - "Both HTTP and HTTPS requests with URLs that match the handler succeed without redirects. The application can examine the request to determine which protocol was used, and respond accordingly.", - "Requests for a URL that match this handler that use HTTPS are automatically redirected to the HTTP equivalent URL.", - "Both HTTP and HTTPS requests with URLs that match the handler succeed without redirects. The application can examine the request to determine which protocol was used and respond accordingly.", - "Requests for a URL that match this handler that do not use HTTPS are automatically redirected to the HTTPS URL with the same path. Query parameters are reserved for the redirect." - ] - }, - "authFailAction": { - "description": "Action to take when users access resources that require authentication. Defaults to redirect.", - "type": "string", - "enumDescriptions": [ - "Not specified. AUTH_FAIL_ACTION_REDIRECT is assumed.", - "Redirects user to \"accounts.google.com\". The user is redirected back to the application URL after signing in or creating an account.", - "Rejects request with a 401 HTTP status code and an error message." - ], - "enum": [ - "AUTH_FAIL_ACTION_UNSPECIFIED", - "AUTH_FAIL_ACTION_REDIRECT", - "AUTH_FAIL_ACTION_UNAUTHORIZED" - ] } }, - "id": "ApiConfigHandler" + "type": "object" + }, + "Service": { + "description": "A Service resource is a logical component of an application that can share state and communicate in a secure fashion with other services. For example, an application that handles customer requests might include separate services to handle tasks such as backend data analysis or API requests from mobile devices. Each service has a collection of versions that define a specific set of code used to implement the functionality of that service.", + "id": "Service", + "properties": { + "id": { + "description": "Relative name of the service within the application. Example: default.@OutputOnly", + "type": "string" + }, + "name": { + "description": "Full path to the Service resource in the API. Example: apps/myapp/services/default.@OutputOnly", + "type": "string" + }, + "split": { + "$ref": "TrafficSplit", + "description": "Mapping that defines fractional HTTP traffic diversion to different versions within the service." + } + }, + "type": "object" + }, + "SslSettings": { + "description": "SSL configuration for a DomainMapping resource.", + "id": "SslSettings", + "properties": { + "certificateId": { + "description": "ID of the AuthorizedCertificate resource configuring SSL for the application. Clearing this field will remove SSL support.By default, a managed certificate is automatically created for every domain mapping. To omit SSL support or to configure SSL manually, specify SslManagementType.MANUAL on a CREATE or UPDATE request. You must be authorized to administer the AuthorizedCertificate resource to manually map it to a DomainMapping resource. Example: 12345.", + "type": "string" + }, + "pendingManagedCertificateId": { + "description": "ID of the managed AuthorizedCertificate resource currently being provisioned, if applicable. Until the new managed certificate has been successfully provisioned, the previous SSL state will be preserved. Once the provisioning process completes, the certificate_id field will reflect the new managed certificate and this field will be left empty. To remove SSL support while there is still a pending managed certificate, clear the certificate_id field with an UpdateDomainMappingRequest.@OutputOnly", + "type": "string" + }, + "sslManagementType": { + "description": "SSL management type for this domain. If AUTOMATIC, a managed certificate is automatically provisioned. If MANUAL, certificate_id must be manually specified in order to configure SSL for this domain.", + "enum": [ + "AUTOMATIC", + "MANUAL" + ], + "enumDescriptions": [ + "SSL support for this domain is configured automatically. The mapped SSL certificate will be automatically renewed.", + "SSL support for this domain is configured manually by the user. Either the domain has no SSL support or a user-obtained SSL certificate has been explictly mapped to this domain." + ], + "type": "string" + } + }, + "type": "object" + }, + "StandardSchedulerSettings": { + "description": "Scheduler settings for standard environment.", + "id": "StandardSchedulerSettings", + "properties": { + "maxInstances": { + "description": "Maximum number of instances to run for this version. Set to zero to disable max_instances configuration.", + "format": "int32", + "type": "integer" + }, + "minInstances": { + "description": "Minimum number of instances to run for this version. Set to zero to disable min_instances configuration.", + "format": "int32", + "type": "integer" + }, + "targetCpuUtilization": { + "description": "Target CPU utilization ratio to maintain when scaling.", + "format": "double", + "type": "number" + }, + "targetThroughputUtilization": { + "description": "Target throughput utilization ratio to maintain when scaling", + "format": "double", + "type": "number" + } + }, + "type": "object" }, "StaticFilesHandler": { + "description": "Files served directly to the user for a given URL, such as images, CSS stylesheets, or JavaScript source files. Static file handlers describe which files in the application directory are static files, and which URLs serve them.", + "id": "StaticFilesHandler", "properties": { - "requireMatchingFile": { - "description": "Whether this handler should match the request if the file referenced by the handler does not exist.", + "applicationReadable": { + "description": "Whether files should also be uploaded as code data. By default, files declared in static file handlers are uploaded as static data and are only served to end users; they cannot be read by the application. If enabled, uploads are charged against both your code and static data storage resource quotas.", "type": "boolean" }, "expiration": { @@ -2214,968 +3251,287 @@ "description": "HTTP headers to use for all responses from these URLs.", "type": "object" }, - "applicationReadable": { - "description": "Whether files should also be uploaded as code data. By default, files declared in static file handlers are uploaded as static data and are only served to end users; they cannot be read by the application. If enabled, uploads are charged against both your code and static data storage resource quotas.", - "type": "boolean" - }, - "uploadPathRegex": { - "description": "Regular expression that matches the file paths for all files that should be referenced by this handler.", + "mimeType": { + "description": "MIME type used to serve all files served by this handler.Defaults to file-specific MIME types, which are derived from each file's filename extension.", "type": "string" }, "path": { "description": "Path to the static files matched by the URL pattern, from the application root directory. The path can refer to text matched in groupings in the URL pattern.", "type": "string" }, - "mimeType": { - "description": "MIME type used to serve all files served by this handler.Defaults to file-specific MIME types, which are derived from each file's filename extension.", + "requireMatchingFile": { + "description": "Whether this handler should match the request if the file referenced by the handler does not exist.", + "type": "boolean" + }, + "uploadPathRegex": { + "description": "Regular expression that matches the file paths for all files that should be referenced by this handler.", "type": "string" } }, - "id": "StaticFilesHandler", - "description": "Files served directly to the user for a given URL, such as images, CSS stylesheets, or JavaScript source files. Static file handlers describe which files in the application directory are static files, and which URLs serve them.", "type": "object" }, - "BasicScaling": { - "description": "A service with basic scaling will create an instance when the application receives a request. The instance will be turned down when the app becomes idle. Basic scaling is ideal for work that is intermittent or driven by user activity.", - "type": "object", - "properties": { - "maxInstances": { - "description": "Maximum number of instances to create for this version.", - "format": "int32", - "type": "integer" - }, - "idleTimeout": { - "description": "Duration of time after the last request that an instance must wait before the instance is shut down.", - "format": "google-duration", - "type": "string" - } - }, - "id": "BasicScaling" - }, - "DiskUtilization": { - "description": "Target scaling by disk usage. Only applicable in the App Engine flexible environment.", - "type": "object", - "properties": { - "targetReadBytesPerSecond": { - "description": "Target bytes read per second.", - "format": "int32", - "type": "integer" - }, - "targetReadOpsPerSecond": { - "description": "Target ops read per seconds.", - "format": "int32", - "type": "integer" - }, - "targetWriteOpsPerSecond": { - "description": "Target ops written per second.", - "format": "int32", - "type": "integer" - }, - "targetWriteBytesPerSecond": { - "description": "Target bytes written per second.", - "format": "int32", - "type": "integer" - } - }, - "id": "DiskUtilization" - }, - "CpuUtilization": { - "description": "Target scaling by CPU usage.", - "type": "object", - "properties": { - "aggregationWindowLength": { - "description": "Period of time over which CPU utilization is calculated.", - "format": "google-duration", - "type": "string" - }, - "targetUtilization": { - "description": "Target CPU utilization ratio to maintain when scaling. Must be between 0 and 1.", - "format": "double", - "type": "number" - } - }, - "id": "CpuUtilization" - }, "Status": { "description": "The Status type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by gRPC (https://github.com/grpc). The error model is designed to be:\nSimple to use and understand for most users\nFlexible enough to meet unexpected needsOverviewThe Status message contains three pieces of data: error code, error message, and error details. The error code should be an enum value of google.rpc.Code, but it may accept additional error codes if needed. The error message should be a developer-facing English message that helps developers understand and resolve the error. If a localized user-facing error message is needed, put the localized message in the error details or localize it in the client. The optional error details may contain arbitrary information about the error. There is a predefined set of error detail types in the package google.rpc that can be used for common error conditions.Language mappingThe Status message is the logical representation of the error model, but it is not necessarily the actual wire format. When the Status message is exposed in different client libraries and different wire protocols, it can be mapped differently. For example, it will likely be mapped to some exceptions in Java, but more likely mapped to some error codes in C.Other usesThe error model and the Status message can be used in a variety of environments, either with or without APIs, to provide a consistent developer experience across different environments.Example uses of this error model include:\nPartial errors. If a service needs to return partial errors to the client, it may embed the Status in the normal response to indicate the partial errors.\nWorkflow errors. A typical workflow has multiple steps. Each step may have a Status message for error reporting.\nBatch operations. If a client uses batch request and batch response, the Status message should be used directly inside batch response, one for each error sub-response.\nAsynchronous operations. If an API call embeds asynchronous operation results in its response, the status of those operations should be represented directly using the Status message.\nLogging. If some API errors are stored in logs, the message Status could be used directly after any stripping needed for security/privacy reasons.", - "type": "object", + "id": "Status", "properties": { + "code": { + "description": "The status code, which should be an enum value of google.rpc.Code.", + "format": "int32", + "type": "integer" + }, "details": { "description": "A list of messages that carry the error details. There is a common set of message types for APIs to use.", - "type": "array", "items": { "additionalProperties": { "description": "Properties of the object. Contains field @type with type URL.", "type": "any" }, "type": "object" - } - }, - "code": { - "description": "The status code, which should be an enum value of google.rpc.Code.", - "format": "int32", - "type": "integer" + }, + "type": "array" }, "message": { "description": "A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the google.rpc.Status.details field, or localized by the client.", "type": "string" } }, - "id": "Status" - }, - "IdentityAwareProxy": { - "description": "Identity-Aware Proxy", - "type": "object", - "properties": { - "enabled": { - "description": "Whether the serving infrastructure will authenticate and authorize all incoming requests.If true, the oauth2_client_id and oauth2_client_secret fields must be non-empty.", - "type": "boolean" - }, - "oauth2ClientSecret": { - "description": "OAuth2 client secret to use for the authentication flow.For security reasons, this value cannot be retrieved via the API. Instead, the SHA-256 hash of the value is returned in the oauth2_client_secret_sha256 field.@InputOnly", - "type": "string" - }, - "oauth2ClientId": { - "description": "OAuth2 client ID to use for the authentication flow.", - "type": "string" - }, - "oauth2ClientSecretSha256": { - "description": "Hex-encoded SHA-256 hash of the client secret.@OutputOnly", - "type": "string" - } - }, - "id": "IdentityAwareProxy" - }, - "ManualScaling": { - "description": "A service with manual scaling runs continuously, allowing you to perform complex initialization and rely on the state of its memory over time.", - "type": "object", - "properties": { - "instances": { - "description": "Number of instances to assign to the service at the start. This number can later be altered by using the Modules API (https://cloud.google.com/appengine/docs/python/modules/functions) set_num_instances() function.", - "format": "int32", - "type": "integer" - } - }, - "id": "ManualScaling" - }, - "LocationMetadata": { - "properties": { - "standardEnvironmentAvailable": { - "description": "App Engine Standard Environment is available in the given location.@OutputOnly", - "type": "boolean" - }, - "flexibleEnvironmentAvailable": { - "description": "App Engine Flexible Environment is available in the given location.@OutputOnly", - "type": "boolean" - } - }, - "id": "LocationMetadata", - "description": "Metadata for the given google.cloud.location.Location.", "type": "object" }, - "Service": { - "description": "A Service resource is a logical component of an application that can share state and communicate in a secure fashion with other services. For example, an application that handles customer requests might include separate services to handle tasks such as backend data analysis or API requests from mobile devices. Each service has a collection of versions that define a specific set of code used to implement the functionality of that service.", - "type": "object", + "TrafficSplit": { + "description": "Traffic routing configuration for versions within a single service. Traffic splits define how traffic directed to the service is assigned to versions.", + "id": "TrafficSplit", "properties": { - "name": { - "description": "Full path to the Service resource in the API. Example: apps/myapp/services/default.@OutputOnly", - "type": "string" + "allocations": { + "additionalProperties": { + "format": "double", + "type": "number" + }, + "description": "Mapping from version IDs within the service to fractional (0.000, 1] allocations of traffic for that version. Each version can be specified only once, but some versions in the service may not have any traffic allocation. Services that have traffic allocated cannot be deleted until either the service is deleted or their traffic allocation is removed. Allocations must sum to 1. Up to two decimal place precision is supported for IP-based splits and up to three decimal places is supported for cookie-based splits.", + "type": "object" }, - "split": { - "description": "Mapping that defines fractional HTTP traffic diversion to different versions within the service.", - "$ref": "TrafficSplit" - }, - "id": { - "description": "Relative name of the service within the application. Example: default.@OutputOnly", - "type": "string" - } - }, - "id": "Service" - }, - "ListOperationsResponse": { - "description": "The response message for Operations.ListOperations.", - "type": "object", - "properties": { - "nextPageToken": { - "description": "The standard List next-page token.", - "type": "string" - }, - "operations": { - "description": "A list of operations that matches the specified filter in the request.", - "type": "array", - "items": { - "$ref": "Operation" - } - } - }, - "id": "ListOperationsResponse" - }, - "OperationMetadata": { - "description": "Metadata for the given google.longrunning.Operation.", - "type": "object", - "properties": { - "method": { - "description": "API method that initiated this operation. Example: google.appengine.v1beta4.Version.CreateVersion.@OutputOnly", - "type": "string" - }, - "endTime": { - "description": "Timestamp that this operation completed.@OutputOnly", - "format": "google-datetime", - "type": "string" - }, - "operationType": { - "description": "Type of this operation. Deprecated, use method field instead. Example: \"create_version\".@OutputOnly", - "type": "string" - }, - "insertTime": { - "description": "Timestamp that this operation was created.@OutputOnly", - "format": "google-datetime", - "type": "string" - }, - "user": { - "description": "User who requested this operation.@OutputOnly", - "type": "string" - }, - "target": { - "description": "Name of the resource that this operation is acting on. Example: apps/myapp/modules/default.@OutputOnly", - "type": "string" - } - }, - "id": "OperationMetadata" - }, - "FirewallRule": { - "properties": { - "sourceRange": { - "description": "IP address or range, defined using CIDR notation, of requests that this rule applies to. You can use the wildcard character \"*\" to match all IPs equivalent to \"0/0\" and \"::/0\" together. Examples: 192.168.1.1 or 192.168.0.0/16 or 2001:db8::/32 or 2001:0db8:0000:0042:0000:8a2e:0370:7334.\u003cp\u003eTruncation will be silently performed on addresses which are not properly truncated. For example, 1.2.3.4/24 is accepted as the same address as 1.2.3.0/24. Similarly, for IPv6, 2001:db8::1/32 is accepted as the same address as 2001:db8::/32.", - "type": "string" - }, - "priority": { - "description": "A positive integer between 1, Int32.MaxValue-1 that defines the order of rule evaluation. Rules with the lowest priority are evaluated first.A default rule at priority Int32.MaxValue matches all IPv4 and IPv6 traffic when no previous rule matches. Only the action of this rule can be modified by the user.", - "format": "int32", - "type": "integer" - }, - "action": { - "enum": [ - "UNSPECIFIED_ACTION", - "ALLOW", - "DENY" - ], - "description": "The action to take on matched requests.", - "type": "string", - "enumDescriptions": [ - "", - "Matching requests are allowed.", - "Matching requests are denied." - ] - }, - "description": { - "description": "An optional string description of this rule. This field has a maximum length of 100 characters.", - "type": "string" - } - }, - "id": "FirewallRule", - "description": "A single firewall rule that is evaluated against incoming traffic and provides an action to take on matched requests.", - "type": "object" - }, - "ListAuthorizedCertificatesResponse": { - "description": "Response message for AuthorizedCertificates.ListAuthorizedCertificates.", - "type": "object", - "properties": { - "nextPageToken": { - "description": "Continuation token for fetching the next page of results.", - "type": "string" - }, - "certificates": { - "description": "The SSL certificates the user is authorized to administer.", - "type": "array", - "items": { - "$ref": "AuthorizedCertificate" - } - } - }, - "id": "ListAuthorizedCertificatesResponse" - }, - "CreateVersionMetadataV1Beta": { - "description": "Metadata for the given google.longrunning.Operation during a google.appengine.v1beta.CreateVersionRequest.", - "type": "object", - "properties": { - "cloudBuildId": { - "description": "The Cloud Build ID if one was created as part of the version create. @OutputOnly", - "type": "string" - } - }, - "id": "CreateVersionMetadataV1Beta" - }, - "FeatureSettings": { - "description": "The feature specific settings to be used in the application. These define behaviors that are user configurable.", - "type": "object", - "properties": { - "useContainerOptimizedOs": { - "description": "If true, use Container-Optimized OS (https://cloud.google.com/container-optimized-os/) base image for VMs, rather than a base Debian image.", - "type": "boolean" - }, - "splitHealthChecks": { - "description": "Boolean value indicating if split health checks should be used instead of the legacy health checks. At an app.yaml level, this means defaulting to 'readiness_check' and 'liveness_check' values instead of 'health_check' ones. Once the legacy 'health_check' behavior is deprecated, and this value is always true, this setting can be removed.", - "type": "boolean" - } - }, - "id": "FeatureSettings" - }, - "OperationMetadataV1": { - "description": "Metadata for the given google.longrunning.Operation.", - "type": "object", - "properties": { - "endTime": { - "description": "Time that this operation completed.@OutputOnly", - "format": "google-datetime", - "type": "string" - }, - "warning": { - "description": "Durable messages that persist on every operation poll. @OutputOnly", - "type": "array", - "items": { - "type": "string" - } - }, - "insertTime": { - "description": "Time that this operation was created.@OutputOnly", - "format": "google-datetime", - "type": "string" - }, - "user": { - "description": "User who requested this operation.@OutputOnly", - "type": "string" - }, - "target": { - "description": "Name of the resource that this operation is acting on. Example: apps/myapp/services/default.@OutputOnly", - "type": "string" - }, - "ephemeralMessage": { - "description": "Ephemeral message that may change every time the operation is polled. @OutputOnly", - "type": "string" - }, - "method": { - "description": "API method that initiated this operation. Example: google.appengine.v1.Versions.CreateVersion.@OutputOnly", - "type": "string" - } - }, - "id": "OperationMetadataV1" - }, - "SslSettings": { - "properties": { - "pendingManagedCertificateId": { - "description": "ID of the managed AuthorizedCertificate resource currently being provisioned, if applicable. Until the new managed certificate has been successfully provisioned, the previous SSL state will be preserved. Once the provisioning process completes, the certificate_id field will reflect the new managed certificate and this field will be left empty. To remove SSL support while there is still a pending managed certificate, clear the certificate_id field with an UpdateDomainMappingRequest.@OutputOnly", - "type": "string" - }, - "certificateId": { - "description": "ID of the AuthorizedCertificate resource configuring SSL for the application. Clearing this field will remove SSL support.By default, a managed certificate is automatically created for every domain mapping. To omit SSL support or to configure SSL manually, specify SslManagementType.MANUAL on a CREATE or UPDATE request. You must be authorized to administer the AuthorizedCertificate resource to manually map it to a DomainMapping resource. Example: 12345.", - "type": "string" - }, - "sslManagementType": { - "description": "SSL management type for this domain. If AUTOMATIC, a managed certificate is automatically provisioned. If MANUAL, certificate_id must be manually specified in order to configure SSL for this domain.", - "type": "string", - "enumDescriptions": [ - "SSL support for this domain is configured automatically. The mapped SSL certificate will be automatically renewed.", - "SSL support for this domain is configured manually by the user. Either the domain has no SSL support or a user-obtained SSL certificate has been explictly mapped to this domain." - ], - "enum": [ - "AUTOMATIC", - "MANUAL" - ] - } - }, - "id": "SslSettings", - "description": "SSL configuration for a DomainMapping resource.", - "type": "object" - }, - "ErrorHandler": { - "properties": { - "errorCode": { - "description": "Error condition this handler applies to.", - "type": "string", - "enumDescriptions": [ - "Not specified. ERROR_CODE_DEFAULT is assumed.", - "All other error types.", - "Application has exceeded a resource quota.", - "Client blocked by the application's Denial of Service protection configuration.", - "Deadline reached before the application responds." - ], - "enum": [ - "ERROR_CODE_UNSPECIFIED", - "ERROR_CODE_DEFAULT", - "ERROR_CODE_OVER_QUOTA", - "ERROR_CODE_DOS_API_DENIAL", - "ERROR_CODE_TIMEOUT" - ] - }, - "mimeType": { - "description": "MIME type of file. Defaults to text/html.", - "type": "string" - }, - "staticFile": { - "description": "Static file content to be served for this error.", - "type": "string" - } - }, - "id": "ErrorHandler", - "description": "Custom static error page to be served when an error occurs.", - "type": "object" - }, - "Network": { - "properties": { - "forwardedPorts": { - "description": "List of ports, or port pairs, to forward from the virtual machine to the application container. Only applicable in the App Engine flexible environment.", - "type": "array", - "items": { - "type": "string" - } - }, - "instanceTag": { - "description": "Tag to apply to the VM instance during creation. for Only applicable in the App Engine flexible environment.", - "type": "string" - }, - "subnetworkName": { - "description": "Google Cloud Platform sub-network where the virtual machines are created. Specify the short name, not the resource path.If a subnetwork name is specified, a network name will also be required unless it is for the default network.\nIf the network the VM instance is being created in is a Legacy network, then the IP address is allocated from the IPv4Range.\nIf the network the VM instance is being created in is an auto Subnet Mode Network, then only network name should be specified (not the subnetwork_name) and the IP address is created from the IPCidrRange of the subnetwork that exists in that zone for that network.\nIf the network the VM instance is being created in is a custom Subnet Mode Network, then the subnetwork_name must be specified and the IP address is created from the IPCidrRange of the subnetwork.If specified, the subnetwork must exist in the same region as the App Engine flexible environment application.", - "type": "string" - }, - "name": { - "description": "Google Compute Engine network where the virtual machines are created. Specify the short name, not the resource path.Defaults to default.", - "type": "string" - } - }, - "id": "Network", - "description": "Extra network settings. Only applicable in the App Engine flexible environment.", - "type": "object" - }, - "Application": { - "properties": { - "featureSettings": { - "description": "The feature specific settings to be used in the application.", - "$ref": "FeatureSettings" - }, - "authDomain": { - "description": "Google Apps authentication domain that controls which users can access this application.Defaults to open access for any Google Account.", - "type": "string" - }, - "iap": { - "$ref": "IdentityAwareProxy" - }, - "codeBucket": { - "description": "Google Cloud Storage bucket that can be used for storing files associated with this application. This bucket is associated with the application and can be used by the gcloud deployment commands.@OutputOnly", - "type": "string" - }, - "defaultBucket": { - "description": "Google Cloud Storage bucket that can be used by this application to store content.@OutputOnly", - "type": "string" - }, - "dispatchRules": { - "description": "HTTP path dispatch rules for requests to the application that do not explicitly target a service or version. Rules are order-dependent. Up to 20 dispatch rules can be supported.@OutputOnly", - "type": "array", - "items": { - "$ref": "UrlDispatchRule" - } - }, - "gcrDomain": { - "description": "The Google Container Registry domain used for storing managed build docker images for this application.", - "type": "string" - }, - "name": { - "description": "Full path to the Application resource in the API. Example: apps/myapp.@OutputOnly", - "type": "string" - }, - "defaultCookieExpiration": { - "description": "Cookie expiration policy for this application.", - "format": "google-duration", - "type": "string" - }, - "id": { - "description": "Identifier of the Application resource. This identifier is equivalent to the project ID of the Google Cloud Platform project where you want to deploy your application. Example: myapp.", - "type": "string" - }, - "locationId": { - "description": "Location from which this application will be run. Application instances will run out of data centers in the chosen location, which is also where all of the application's end user content is stored.Defaults to us-central.Options are:us-central - Central USeurope-west - Western Europeus-east1 - Eastern US", - "type": "string" - }, - "servingStatus": { - "description": "Serving status of this application.", - "type": "string", - "enumDescriptions": [ - "Serving status is unspecified.", - "Application is serving.", - "Application has been disabled by the user.", - "Application has been disabled by the system." - ], + "shardBy": { + "description": "Mechanism used to determine which version a request is sent to. The traffic selection algorithm will be stable for either type until allocations are changed.", "enum": [ "UNSPECIFIED", - "SERVING", - "USER_DISABLED", - "SYSTEM_DISABLED" - ] - }, - "defaultHostname": { - "description": "Hostname used to reach this application, as resolved by App Engine.@OutputOnly", - "type": "string" - } - }, - "id": "Application", - "description": "An Application resource contains the top-level configuration of an App Engine application.", - "type": "object" - }, - "Instance": { - "properties": { - "qps": { - "description": "Average queries per second (QPS) over the last minute.@OutputOnly", - "format": "float", - "type": "number" - }, - "vmId": { - "description": "Virtual machine ID of this instance. Only applicable for instances in App Engine flexible environment.@OutputOnly", - "type": "string" - }, - "vmZoneName": { - "description": "Zone where the virtual machine is located. Only applicable for instances in App Engine flexible environment.@OutputOnly", - "type": "string" - }, - "name": { - "description": "Full path to the Instance resource in the API. Example: apps/myapp/services/default/versions/v1/instances/instance-1.@OutputOnly", - "type": "string" - }, - "averageLatency": { - "description": "Average latency (ms) over the last minute.@OutputOnly", - "format": "int32", - "type": "integer" - }, - "vmIp": { - "description": "The IP address of this instance. Only applicable for instances in App Engine flexible environment.@OutputOnly", - "type": "string" - }, - "memoryUsage": { - "description": "Total memory in use (bytes).@OutputOnly", - "format": "int64", - "type": "string" - }, - "id": { - "description": "Relative name of the instance within the version. Example: instance-1.@OutputOnly", - "type": "string" - }, - "vmStatus": { - "description": "Status of the virtual machine where this instance lives. Only applicable for instances in App Engine flexible environment.@OutputOnly", - "type": "string" - }, - "availability": { + "COOKIE", + "IP", + "RANDOM" + ], "enumDescriptions": [ - "", - "", - "" + "Diversion method unspecified.", + "Diversion based on a specially named cookie, \"GOOGAPPUID.\" The cookie must be set by the application itself or no diversion will occur.", + "Diversion based on applying the modulus operation to a fingerprint of the IP address.", + "Diversion based on weighted random assignment. An incoming request is randomly routed to a version in the traffic split, with probability proportional to the version's traffic share." ], - "enum": [ - "UNSPECIFIED", - "RESIDENT", - "DYNAMIC" - ], - "description": "Availability of the instance.@OutputOnly", - "type": "string" - }, - "errors": { - "description": "Number of errors since this instance was started.@OutputOnly", - "format": "int32", - "type": "integer" - }, - "startTime": { - "description": "Time that this instance was started.@OutputOnly", - "format": "google-datetime", - "type": "string" - }, - "vmDebugEnabled": { - "description": "Whether this instance is in debug mode. Only applicable for instances in App Engine flexible environment.@OutputOnly", - "type": "boolean" - }, - "requests": { - "description": "Number of requests since this instance was started.@OutputOnly", - "format": "int32", - "type": "integer" - }, - "appEngineRelease": { - "description": "App Engine release this instance is running on.@OutputOnly", - "type": "string" - }, - "vmName": { - "description": "Name of the virtual machine where this instance lives. Only applicable for instances in App Engine flexible environment.@OutputOnly", "type": "string" } }, - "id": "Instance", - "description": "An Instance resource is the computing unit that App Engine uses to automatically scale an application.", "type": "object" }, - "LivenessCheck": { - "description": "Health checking configuration for VM instances. Unhealthy instances are killed and replaced with new instances.", - "type": "object", + "UrlDispatchRule": { + "description": "Rules to match an HTTP request and dispatch that request to a service.", + "id": "UrlDispatchRule", "properties": { - "host": { - "description": "Host header to send when performing a HTTP Liveness check. Example: \"myapp.appspot.com\"", - "type": "string" - }, - "successThreshold": { - "description": "Number of consecutive successful checks required before considering the VM healthy.", - "format": "uint32", - "type": "integer" - }, - "checkInterval": { - "description": "Interval between health checks.", - "format": "google-duration", - "type": "string" - }, - "timeout": { - "description": "Time before the check is considered failed.", - "format": "google-duration", - "type": "string" - }, - "failureThreshold": { - "description": "Number of consecutive failed checks required before considering the VM unhealthy.", - "format": "uint32", - "type": "integer" - }, - "initialDelay": { - "description": "The initial delay before starting to execute the checks.", - "format": "google-duration", + "domain": { + "description": "Domain name to match against. The wildcard \"*\" is supported if specified before a period: \"*.\".Defaults to matching all domains: \"*\".", "type": "string" }, "path": { - "description": "The request path.", + "description": "Pathname within the host. Must start with a \"/\". A single \"*\" can be included at the end of the path.The sum of the lengths of the domain and path may not exceed 100 characters.", + "type": "string" + }, + "service": { + "description": "Resource ID of a service in this application that should serve the matched request. The service must already exist. Example: default.", "type": "string" } }, - "id": "LivenessCheck" - }, - "BatchUpdateIngressRulesRequest": { - "description": "Request message for Firewall.BatchUpdateIngressRules.", - "type": "object", - "properties": { - "ingressRules": { - "description": "A list of FirewallRules to replace the existing set.", - "type": "array", - "items": { - "$ref": "FirewallRule" - } - } - }, - "id": "BatchUpdateIngressRulesRequest" - }, - "CloudBuildOptions": { - "description": "Options for the build operations performed as a part of the version deployment. Only applicable for App Engine flexible environment when creating a version using source code directly.", - "type": "object", - "properties": { - "appYamlPath": { - "description": "Path to the yaml file used in deployment, used to determine runtime configuration details.Required for flexible environment builds.See https://cloud.google.com/appengine/docs/standard/python/config/appref for more details.", - "type": "string" - }, - "cloudBuildTimeout": { - "description": "The Cloud Build timeout used as part of any dependent builds performed by version creation. Defaults to 10 minutes.", - "format": "google-duration", - "type": "string" - } - }, - "id": "CloudBuildOptions" - }, - "NetworkUtilization": { - "description": "Target scaling by network usage. Only applicable in the App Engine flexible environment.", - "type": "object", - "properties": { - "targetSentBytesPerSecond": { - "description": "Target bytes sent per second.", - "format": "int32", - "type": "integer" - }, - "targetSentPacketsPerSecond": { - "description": "Target packets sent per second.", - "format": "int32", - "type": "integer" - }, - "targetReceivedBytesPerSecond": { - "description": "Target bytes received per second.", - "format": "int32", - "type": "integer" - }, - "targetReceivedPacketsPerSecond": { - "description": "Target packets received per second.", - "format": "int32", - "type": "integer" - } - }, - "id": "NetworkUtilization" - }, - "Location": { - "description": "A resource that represents Google Cloud Platform location.", - "type": "object", - "properties": { - "labels": { - "additionalProperties": { - "type": "string" - }, - "description": "Cross-service attributes for the location. For example\n{\"cloud.googleapis.com/region\": \"us-east1\"}\n", - "type": "object" - }, - "name": { - "description": "Resource name for the location, which may vary between implementations. For example: \"projects/example-project/locations/us-east1\"", - "type": "string" - }, - "locationId": { - "description": "The canonical id for this location. For example: \"us-east1\".", - "type": "string" - }, - "metadata": { - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - }, - "description": "Service-specific metadata. For example the available capacity at the given location.", - "type": "object" - } - }, - "id": "Location" - }, - "HealthCheck": { - "properties": { - "checkInterval": { - "description": "Interval between health checks.", - "format": "google-duration", - "type": "string" - }, - "timeout": { - "description": "Time before the health check is considered failed.", - "format": "google-duration", - "type": "string" - }, - "unhealthyThreshold": { - "description": "Number of consecutive failed health checks required before removing traffic.", - "format": "uint32", - "type": "integer" - }, - "disableHealthCheck": { - "description": "Whether to explicitly disable health checks for this instance.", - "type": "boolean" - }, - "host": { - "description": "Host header to send when performing an HTTP health check. Example: \"myapp.appspot.com\"", - "type": "string" - }, - "restartThreshold": { - "description": "Number of consecutive failed health checks required before an instance is restarted.", - "format": "uint32", - "type": "integer" - }, - "healthyThreshold": { - "description": "Number of consecutive successful health checks required before receiving traffic.", - "format": "uint32", - "type": "integer" - } - }, - "id": "HealthCheck", - "description": "Health checking configuration for VM instances. Unhealthy instances are killed and replaced with new instances. Only applicable for instances in App Engine flexible environment.", "type": "object" }, - "ReadinessCheck": { - "description": "Readiness checking configuration for VM instances. Unhealthy instances are removed from traffic rotation.", - "type": "object", + "UrlMap": { + "description": "URL pattern and description of how the URL should be handled. App Engine can handle URLs by executing application code or by serving static files uploaded with the version, such as images, CSS, or JavaScript.", + "id": "UrlMap", "properties": { - "failureThreshold": { - "description": "Number of consecutive failed checks required before removing traffic.", - "format": "uint32", - "type": "integer" + "apiEndpoint": { + "$ref": "ApiEndpointHandler", + "description": "Uses API Endpoints to handle requests." }, - "timeout": { - "description": "Time before the check is considered failed.", - "format": "google-duration", + "authFailAction": { + "description": "Action to take when users access resources that require authentication. Defaults to redirect.", + "enum": [ + "AUTH_FAIL_ACTION_UNSPECIFIED", + "AUTH_FAIL_ACTION_REDIRECT", + "AUTH_FAIL_ACTION_UNAUTHORIZED" + ], + "enumDescriptions": [ + "Not specified. AUTH_FAIL_ACTION_REDIRECT is assumed.", + "Redirects user to \"accounts.google.com\". The user is redirected back to the application URL after signing in or creating an account.", + "Rejects request with a 401 HTTP status code and an error message." + ], "type": "string" }, - "appStartTimeout": { - "description": "A maximum time limit on application initialization, measured from moment the application successfully replies to a healthcheck until it is ready to serve traffic.", - "format": "google-duration", + "login": { + "description": "Level of login required to access this resource.", + "enum": [ + "LOGIN_UNSPECIFIED", + "LOGIN_OPTIONAL", + "LOGIN_ADMIN", + "LOGIN_REQUIRED" + ], + "enumDescriptions": [ + "Not specified. LOGIN_OPTIONAL is assumed.", + "Does not require that the user is signed in.", + "If the user is not signed in, the auth_fail_action is taken. In addition, if the user is not an administrator for the application, they are given an error message regardless of auth_fail_action. If the user is an administrator, the handler proceeds.", + "If the user has signed in, the handler proceeds normally. Otherwise, the auth_fail_action is taken." + ], "type": "string" }, - "path": { - "description": "The request path.", + "redirectHttpResponseCode": { + "description": "30x code to use when performing redirects for the secure field. Defaults to 302.", + "enum": [ + "REDIRECT_HTTP_RESPONSE_CODE_UNSPECIFIED", + "REDIRECT_HTTP_RESPONSE_CODE_301", + "REDIRECT_HTTP_RESPONSE_CODE_302", + "REDIRECT_HTTP_RESPONSE_CODE_303", + "REDIRECT_HTTP_RESPONSE_CODE_307" + ], + "enumDescriptions": [ + "Not specified. 302 is assumed.", + "301 Moved Permanently code.", + "302 Moved Temporarily code.", + "303 See Other code.", + "307 Temporary Redirect code." + ], "type": "string" }, - "host": { - "description": "Host header to send when performing a HTTP Readiness check. Example: \"myapp.appspot.com\"", + "script": { + "$ref": "ScriptHandler", + "description": "Executes a script to handle the request that matches this URL pattern." + }, + "securityLevel": { + "description": "Security (HTTPS) enforcement for this URL.", + "enum": [ + "SECURE_UNSPECIFIED", + "SECURE_DEFAULT", + "SECURE_NEVER", + "SECURE_OPTIONAL", + "SECURE_ALWAYS" + ], + "enumDescriptions": [ + "Not specified.", + "Both HTTP and HTTPS requests with URLs that match the handler succeed without redirects. The application can examine the request to determine which protocol was used, and respond accordingly.", + "Requests for a URL that match this handler that use HTTPS are automatically redirected to the HTTP equivalent URL.", + "Both HTTP and HTTPS requests with URLs that match the handler succeed without redirects. The application can examine the request to determine which protocol was used and respond accordingly.", + "Requests for a URL that match this handler that do not use HTTPS are automatically redirected to the HTTPS URL with the same path. Query parameters are reserved for the redirect." + ], "type": "string" }, - "successThreshold": { - "description": "Number of consecutive successful checks required before receiving traffic.", - "format": "uint32", - "type": "integer" + "staticFiles": { + "$ref": "StaticFilesHandler", + "description": "Returns the contents of a file, such as an image, as the response." }, - "checkInterval": { - "description": "Interval between health checks.", - "format": "google-duration", + "urlRegex": { + "description": "URL prefix. Uses regular expression syntax, which means regexp special characters must be escaped, but should not contain groupings. All URLs that begin with this prefix are handled by this handler, using the portion of the URL after the prefix as part of the file path.", "type": "string" } }, - "id": "ReadinessCheck" - }, - "DebugInstanceRequest": { - "properties": { - "sshKey": { - "description": "Public SSH key to add to the instance. Examples:\n[USERNAME]:ssh-rsa [KEY_VALUE] [USERNAME]\n[USERNAME]:ssh-rsa [KEY_VALUE] google-ssh {\"userName\":\"[USERNAME]\",\"expireOn\":\"[EXPIRE_TIME]\"}For more information, see Adding and Removing SSH Keys (https://cloud.google.com/compute/docs/instances/adding-removing-ssh-keys).", - "type": "string" - } - }, - "id": "DebugInstanceRequest", - "description": "Request message for Instances.DebugInstance.", "type": "object" }, - "StandardSchedulerSettings": { - "description": "Scheduler settings for standard environment.", - "type": "object", - "properties": { - "targetThroughputUtilization": { - "description": "Target throughput utilization ratio to maintain when scaling", - "format": "double", - "type": "number" - }, - "maxInstances": { - "description": "Maximum number of instances for an app version. Set to zero to disable max_instances configuration.", - "format": "int32", - "type": "integer" - }, - "minInstances": { - "description": "Minimum number of instances for an app version. Set to zero to disable min_instances configuration.", - "format": "int32", - "type": "integer" - }, - "targetCpuUtilization": { - "description": "Target CPU utilization ratio to maintain when scaling.", - "format": "double", - "type": "number" - } - }, - "id": "StandardSchedulerSettings" - }, - "OperationMetadataV1Beta5": { - "description": "Metadata for the given google.longrunning.Operation.", - "type": "object", - "properties": { - "insertTime": { - "description": "Timestamp that this operation was created.@OutputOnly", - "format": "google-datetime", - "type": "string" - }, - "endTime": { - "description": "Timestamp that this operation completed.@OutputOnly", - "format": "google-datetime", - "type": "string" - }, - "user": { - "description": "User who requested this operation.@OutputOnly", - "type": "string" - }, - "target": { - "description": "Name of the resource that this operation is acting on. Example: apps/myapp/services/default.@OutputOnly", - "type": "string" - }, - "method": { - "description": "API method name that initiated this operation. Example: google.appengine.v1beta5.Version.CreateVersion.@OutputOnly", - "type": "string" - } - }, - "id": "OperationMetadataV1Beta5" - }, - "CreateVersionMetadataV1Alpha": { - "description": "Metadata for the given google.longrunning.Operation during a google.appengine.v1alpha.CreateVersionRequest.", - "type": "object", - "properties": { - "cloudBuildId": { - "description": "The Cloud Build ID if one was created as part of the version create. @OutputOnly", - "type": "string" - } - }, - "id": "CreateVersionMetadataV1Alpha" - }, "Version": { "description": "A Version resource is a specific set of source code and configuration files that are deployed into a service.", - "type": "object", + "id": "Version", "properties": { - "automaticScaling": { - "$ref": "AutomaticScaling", - "description": "Automatic scaling is based on request rate, response latencies, and other application metrics." - }, - "diskUsageBytes": { - "description": "Total size in bytes of all the files that are included in this version and currently hosted on the App Engine disk.@OutputOnly", - "format": "int64", - "type": "string" - }, - "healthCheck": { - "description": "Configures health checking for VM instances. Unhealthy instances are stopped and replaced with new instances. Only applicable in the App Engine flexible environment.Only returned in GET requests if view=FULL is set.", - "$ref": "HealthCheck" - }, - "threadsafe": { - "description": "Whether multiple requests can be dispatched to this version at once.", - "type": "boolean" - }, - "readinessCheck": { - "$ref": "ReadinessCheck", - "description": "Configures readiness health checking for VM instances. Unhealthy instances are not put into the backend traffic rotation.Only returned in GET requests if view=FULL is set." - }, - "manualScaling": { - "$ref": "ManualScaling", - "description": "A service with manual scaling runs continuously, allowing you to perform complex initialization and rely on the state of its memory over time." - }, - "name": { - "description": "Full path to the Version resource in the API. Example: apps/myapp/services/default/versions/v1.@OutputOnly", - "type": "string" - }, "apiConfig": { "$ref": "ApiConfigHandler", "description": "Serving configuration for Google Cloud Endpoints (https://cloud.google.com/appengine/docs/python/endpoints/).Only returned in GET requests if view=FULL is set." }, - "endpointsApiService": { - "$ref": "EndpointsApiService", - "description": "Cloud Endpoints configuration.If endpoints_api_service is set, the Cloud Endpoints Extensible Service Proxy will be provided to serve the API implemented by the app." + "automaticScaling": { + "$ref": "AutomaticScaling", + "description": "Automatic scaling is based on request rate, response latencies, and other application metrics." }, - "versionUrl": { - "description": "Serving URL for this version. Example: \"https://myversion-dot-myservice-dot-myapp.appspot.com\"@OutputOnly", - "type": "string" + "basicScaling": { + "$ref": "BasicScaling", + "description": "A service with basic scaling will create an instance when the application receives a request. The instance will be turned down when the app becomes idle. Basic scaling is ideal for work that is intermittent or driven by user activity." }, - "vm": { - "description": "Whether to deploy this version in a container on a virtual machine.", - "type": "boolean" - }, - "instanceClass": { - "description": "Instance class that is used to run this version. Valid values are:\nAutomaticScaling: F1, F2, F4, F4_1G\nManualScaling or BasicScaling: B1, B2, B4, B8, B4_1GDefaults to F1 for AutomaticScaling and B1 for ManualScaling or BasicScaling.", - "type": "string" - }, - "servingStatus": { - "description": "Current serving status of this version. Only the versions with a SERVING status create instances and can be billed.SERVING_STATUS_UNSPECIFIED is an invalid value. Defaults to SERVING.", - "type": "string", - "enumDescriptions": [ - "Not specified.", - "Currently serving. Instances are created according to the scaling settings of the version.", - "Disabled. No instances will be created and the scaling settings are ignored until the state of the version changes to SERVING." - ], - "enum": [ - "SERVING_STATUS_UNSPECIFIED", - "SERVING", - "STOPPED" - ] - }, - "runtimeApiVersion": { - "description": "The version of the API in the given runtime environment. Please see the app.yaml reference for valid values at https://cloud.google.com/appengine/docs/standard/\u003clanguage\u003e/config/appref", - "type": "string" - }, - "deployment": { - "$ref": "Deployment", - "description": "Code and application artifacts that make up this version.Only returned in GET requests if view=FULL is set." + "betaSettings": { + "additionalProperties": { + "type": "string" + }, + "description": "Metadata settings that are supplied to this version to enable beta runtime features.", + "type": "object" }, "createTime": { "description": "Time that this version was created.@OutputOnly", "format": "google-datetime", "type": "string" }, + "createdBy": { + "description": "Email address of the user who created this version.@OutputOnly", + "type": "string" + }, + "defaultExpiration": { + "description": "Duration that static files should be cached by web proxies and browsers. Only applicable if the corresponding StaticFilesHandler (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1beta/apps.services.versions#staticfileshandler) does not specify its own expiration time.Only returned in GET requests if view=FULL is set.", + "format": "google-duration", + "type": "string" + }, + "deployment": { + "$ref": "Deployment", + "description": "Code and application artifacts that make up this version.Only returned in GET requests if view=FULL is set." + }, + "diskUsageBytes": { + "description": "Total size in bytes of all the files that are included in this version and currently hosted on the App Engine disk.@OutputOnly", + "format": "int64", + "type": "string" + }, + "endpointsApiService": { + "$ref": "EndpointsApiService", + "description": "Cloud Endpoints configuration.If endpoints_api_service is set, the Cloud Endpoints Extensible Service Proxy will be provided to serve the API implemented by the app." + }, + "env": { + "description": "App Engine execution environment for this version.Defaults to standard.", + "type": "string" + }, + "envVariables": { + "additionalProperties": { + "type": "string" + }, + "description": "Environment variables available to the application.Only returned in GET requests if view=FULL is set.", + "type": "object" + }, + "errorHandlers": { + "description": "Custom static error pages. Limited to 10KB per page.Only returned in GET requests if view=FULL is set.", + "items": { + "$ref": "ErrorHandler" + }, + "type": "array" + }, + "handlers": { + "description": "An ordered list of URL-matching patterns that should be applied to incoming requests. The first matching URL handles the request and other request handlers are not attempted.Only returned in GET requests if view=FULL is set.", + "items": { + "$ref": "UrlMap" + }, + "type": "array" + }, + "healthCheck": { + "$ref": "HealthCheck", + "description": "Configures health checking for instances. Unhealthy instances are stopped and replaced with new instances. Only applicable in the App Engine flexible environment.Only returned in GET requests if view=FULL is set." + }, + "id": { + "description": "Relative name of the version within the service. Example: v1. Version names can contain only lowercase letters, numbers, or hyphens. Reserved names: \"default\", \"latest\", and any name with the prefix \"ah-\".", + "type": "string" + }, "inboundServices": { "description": "Before an application can receive email or XMPP messages, the application must be configured to enable the service.", - "type": "array", + "enumDescriptions": [ + "Not specified.", + "Allows an application to receive mail.", + "Allows an application to receive email-bound notifications.", + "Allows an application to receive error stanzas.", + "Allows an application to receive instant messages.", + "Allows an application to receive user subscription POSTs.", + "Allows an application to receive a user's chat presence.", + "Registers an application for notifications when a client connects or disconnects from a channel.", + "Enables warmup requests." + ], "items": { "enum": [ "INBOUND_SERVICE_UNSPECIFIED", @@ -3190,356 +3546,101 @@ ], "type": "string" }, - "enumDescriptions": [ - "Not specified.", - "Allows an application to receive mail.", - "Allows an application to receive email-bound notifications.", - "Allows an application to receive error stanzas.", - "Allows an application to receive instant messages.", - "Allows an application to receive user subscription POSTs.", - "Allows an application to receive a user's chat presence.", - "Registers an application for notifications when a client connects or disconnects from a channel.", - "Enables warmup requests." - ] + "type": "array" }, - "resources": { - "description": "Machine resources for this version. Only applicable for VM runtimes.", - "$ref": "Resources" - }, - "errorHandlers": { - "description": "Custom static error pages. Limited to 10KB per page.Only returned in GET requests if view=FULL is set.", - "type": "array", - "items": { - "$ref": "ErrorHandler" - } - }, - "defaultExpiration": { - "description": "Duration that static files should be cached by web proxies and browsers. Only applicable if the corresponding StaticFilesHandler (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1beta/apps.services.versions#staticfileshandler) does not specify its own expiration time.Only returned in GET requests if view=FULL is set.", - "format": "google-duration", + "instanceClass": { + "description": "Instance class that is used to run this version. Valid values are:\nAutomaticScaling: F1, F2, F4, F4_1G\nManualScaling or BasicScaling: B1, B2, B4, B8, B4_1GDefaults to F1 for AutomaticScaling and B1 for ManualScaling or BasicScaling.", "type": "string" }, "libraries": { "description": "Configuration for third-party Python runtime libraries that are required by the application.Only returned in GET requests if view=FULL is set.", - "type": "array", "items": { "$ref": "Library" - } - }, - "nobuildFilesRegex": { - "description": "Files that match this pattern will not be built into this version. Only applicable for Go runtimes.Only returned in GET requests if view=FULL is set.", - "type": "string" - }, - "basicScaling": { - "$ref": "BasicScaling", - "description": "A service with basic scaling will create an instance when the application receives a request. The instance will be turned down when the app becomes idle. Basic scaling is ideal for work that is intermittent or driven by user activity." - }, - "runtime": { - "description": "Desired runtime. Example: python27.", - "type": "string" - }, - "id": { - "description": "Relative name of the version within the service. Example: v1. Version names can contain only lowercase letters, numbers, or hyphens. Reserved names: \"default\", \"latest\", and any name with the prefix \"ah-\".", - "type": "string" - }, - "createdBy": { - "description": "Email address of the user who created this version.@OutputOnly", - "type": "string" - }, - "envVariables": { - "additionalProperties": { - "type": "string" }, - "description": "Environment variables available to the application.Only returned in GET requests if view=FULL is set.", - "type": "object" + "type": "array" }, "livenessCheck": { - "description": "Configures liveness health checking for VM instances. Unhealthy instances are stopped and replaced with new instancesOnly returned in GET requests if view=FULL is set.", - "$ref": "LivenessCheck" + "$ref": "LivenessCheck", + "description": "Configures liveness health checking for instances. Unhealthy instances are stopped and replaced with new instancesOnly returned in GET requests if view=FULL is set." + }, + "manualScaling": { + "$ref": "ManualScaling", + "description": "A service with manual scaling runs continuously, allowing you to perform complex initialization and rely on the state of its memory over time." + }, + "name": { + "description": "Full path to the Version resource in the API. Example: apps/myapp/services/default/versions/v1.@OutputOnly", + "type": "string" }, "network": { "$ref": "Network", "description": "Extra network settings. Only applicable in the App Engine flexible environment." }, - "betaSettings": { - "additionalProperties": { - "type": "string" - }, - "description": "Metadata settings that are supplied to this version to enable beta runtime features.", - "type": "object" - }, - "env": { - "description": "App Engine execution environment for this version.Defaults to standard.", + "nobuildFilesRegex": { + "description": "Files that match this pattern will not be built into this version. Only applicable for Go runtimes.Only returned in GET requests if view=FULL is set.", "type": "string" }, - "handlers": { - "description": "An ordered list of URL-matching patterns that should be applied to incoming requests. The first matching URL handles the request and other request handlers are not attempted.Only returned in GET requests if view=FULL is set.", - "type": "array", - "items": { - "$ref": "UrlMap" - } + "readinessCheck": { + "$ref": "ReadinessCheck", + "description": "Configures readiness health checking for instances. Unhealthy instances are not put into the backend traffic rotation.Only returned in GET requests if view=FULL is set." + }, + "resources": { + "$ref": "Resources", + "description": "Machine resources for this version. Only applicable in the App Engine flexible environment." + }, + "runtime": { + "description": "Desired runtime. Example: python27.", + "type": "string" + }, + "runtimeApiVersion": { + "description": "The version of the API in the given runtime environment. Please see the app.yaml reference for valid values at https://cloud.google.com/appengine/docs/standard/\u003clanguage\u003e/config/appref", + "type": "string" + }, + "runtimeChannel": { + "description": "The channel of the runtime to use. Only available for some runtimes. Defaults to the default channel.", + "type": "string" + }, + "servingStatus": { + "description": "Current serving status of this version. Only the versions with a SERVING status create instances and can be billed.SERVING_STATUS_UNSPECIFIED is an invalid value. Defaults to SERVING.", + "enum": [ + "SERVING_STATUS_UNSPECIFIED", + "SERVING", + "STOPPED" + ], + "enumDescriptions": [ + "Not specified.", + "Currently serving. Instances are created according to the scaling settings of the version.", + "Disabled. No instances will be created and the scaling settings are ignored until the state of the version changes to SERVING." + ], + "type": "string" + }, + "threadsafe": { + "description": "Whether multiple requests can be dispatched to this version at once.", + "type": "boolean" + }, + "versionUrl": { + "description": "Serving URL for this version. Example: \"https://myversion-dot-myservice-dot-myapp.appspot.com\"@OutputOnly", + "type": "string" + }, + "vm": { + "description": "Whether to deploy this version in a container on a virtual machine.", + "type": "boolean" }, "zones": { - "description": "The choice of gce zones to use for this App Engine Flexible version.", - "type": "array", + "description": "The Google Compute Engine zones that are supported by this version in the App Engine flexible environment.", "items": { "type": "string" - } - } - }, - "id": "Version" - }, - "RepairApplicationRequest": { - "description": "Request message for 'Applications.RepairApplication'.", - "type": "object", - "properties": {}, - "id": "RepairApplicationRequest" - }, - "BuildInfo": { - "description": "Google Cloud Container Builder build information.", - "type": "object", - "properties": { - "cloudBuildId": { - "description": "The Google Cloud Container Builder build id. Example: \"f966068f-08b2-42c8-bdfe-74137dff2bf9\"", - "type": "string" - } - }, - "id": "BuildInfo" - }, - "CertificateRawData": { - "description": "An SSL certificate obtained from a certificate authority.", - "type": "object", - "properties": { - "publicCertificate": { - "description": "PEM encoded x.509 public key certificate. This field is set once on certificate creation. Must include the header and footer. Example: \u003cpre\u003e -----BEGIN CERTIFICATE----- \u003ccertificate_value\u003e -----END CERTIFICATE----- \u003c/pre\u003e", - "type": "string" - }, - "privateKey": { - "description": "Unencrypted PEM encoded RSA private key. This field is set once on certificate creation and then encrypted. The key size must be 2048 bits or fewer. Must include the header and footer. Example: \u003cpre\u003e -----BEGIN RSA PRIVATE KEY----- \u003cunencrypted_key_value\u003e -----END RSA PRIVATE KEY----- \u003c/pre\u003e @InputOnly", - "type": "string" - } - }, - "id": "CertificateRawData" - }, - "FileInfo": { - "description": "Single source file that is part of the version to be deployed. Each source file that is deployed must be specified separately.", - "type": "object", - "properties": { - "sha1Sum": { - "description": "The SHA1 hash of the file, in hex.", - "type": "string" - }, - "mimeType": { - "description": "The MIME type of the file.Defaults to the value from Google Cloud Storage.", - "type": "string" - }, - "sourceUrl": { - "description": "URL source to use to fetch this file. Must be a URL to a resource in Google Cloud Storage in the form 'http(s)://storage.googleapis.com/\u003cbucket\u003e/\u003cobject\u003e'.", - "type": "string" - } - }, - "id": "FileInfo" - }, - "ScriptHandler": { - "description": "Executes a script to handle the request that matches the URL pattern.", - "type": "object", - "properties": { - "scriptPath": { - "description": "Path to the script from the application root directory.", - "type": "string" - } - }, - "id": "ScriptHandler" - }, - "AuthorizedDomain": { - "properties": { - "name": { - "description": "Full path to the AuthorizedDomain resource in the API. Example: apps/myapp/authorizedDomains/example.com.@OutputOnly", - "type": "string" - }, - "id": { - "description": "Fully qualified domain name of the domain authorized for use. Example: example.com.", - "type": "string" - } - }, - "id": "AuthorizedDomain", - "description": "A domain that a user has been authorized to administer. To authorize use of a domain, verify ownership via Webmaster Central (https://www.google.com/webmasters/verification/home).", - "type": "object" - }, - "TrafficSplit": { - "properties": { - "shardBy": { - "description": "Mechanism used to determine which version a request is sent to. The traffic selection algorithm will be stable for either type until allocations are changed.", - "type": "string", - "enumDescriptions": [ - "Diversion method unspecified.", - "Diversion based on a specially named cookie, \"GOOGAPPUID.\" The cookie must be set by the application itself or no diversion will occur.", - "Diversion based on applying the modulus operation to a fingerprint of the IP address.", - "Diversion based on weighted random assignment. An incoming request is randomly routed to a version in the traffic split, with probability proportional to the version's traffic share." - ], - "enum": [ - "UNSPECIFIED", - "COOKIE", - "IP", - "RANDOM" - ] - }, - "allocations": { - "additionalProperties": { - "format": "double", - "type": "number" }, - "description": "Mapping from version IDs within the service to fractional (0.000, 1] allocations of traffic for that version. Each version can be specified only once, but some versions in the service may not have any traffic allocation. Services that have traffic allocated cannot be deleted until either the service is deleted or their traffic allocation is removed. Allocations must sum to 1. Up to two decimal place precision is supported for IP-based splits and up to three decimal places is supported for cookie-based splits.", - "type": "object" + "type": "array" } }, - "id": "TrafficSplit", - "description": "Traffic routing configuration for versions within a single service. Traffic splits define how traffic directed to the service is assigned to versions.", "type": "object" }, - "OperationMetadataV1Beta": { - "properties": { - "endTime": { - "description": "Time that this operation completed.@OutputOnly", - "format": "google-datetime", - "type": "string" - }, - "createVersionMetadata": { - "$ref": "CreateVersionMetadataV1Beta" - }, - "warning": { - "description": "Durable messages that persist on every operation poll. @OutputOnly", - "type": "array", - "items": { - "type": "string" - } - }, - "insertTime": { - "description": "Time that this operation was created.@OutputOnly", - "format": "google-datetime", - "type": "string" - }, - "user": { - "description": "User who requested this operation.@OutputOnly", - "type": "string" - }, - "target": { - "description": "Name of the resource that this operation is acting on. Example: apps/myapp/services/default.@OutputOnly", - "type": "string" - }, - "ephemeralMessage": { - "description": "Ephemeral message that may change every time the operation is polled. @OutputOnly", - "type": "string" - }, - "method": { - "description": "API method that initiated this operation. Example: google.appengine.v1beta.Versions.CreateVersion.@OutputOnly", - "type": "string" - } - }, - "id": "OperationMetadataV1Beta", - "description": "Metadata for the given google.longrunning.Operation.", - "type": "object" - }, - "ListIngressRulesResponse": { - "description": "Response message for Firewall.ListIngressRules.", - "type": "object", - "properties": { - "ingressRules": { - "description": "The ingress FirewallRules for this application.", - "type": "array", - "items": { - "$ref": "FirewallRule" - } - }, - "nextPageToken": { - "description": "Continuation token for fetching the next page of results.", - "type": "string" - } - }, - "id": "ListIngressRulesResponse" - }, - "ListServicesResponse": { - "properties": { - "services": { - "description": "The services belonging to the requested application.", - "type": "array", - "items": { - "$ref": "Service" - } - }, - "nextPageToken": { - "description": "Continuation token for fetching the next page of results.", - "type": "string" - } - }, - "id": "ListServicesResponse", - "description": "Response message for Services.ListServices.", - "type": "object" - }, - "Deployment": { - "description": "Code and application artifacts used to deploy a version to App Engine.", - "type": "object", - "properties": { - "zip": { - "$ref": "ZipInfo", - "description": "The zip file for this deployment, if this is a zip deployment." - }, - "container": { - "description": "The Docker image for the container that runs the version. Only applicable for instances running in the App Engine flexible environment.", - "$ref": "ContainerInfo" - }, - "build": { - "$ref": "BuildInfo", - "description": "Google Cloud Container Builder build information. Only applicable for instances running in the App Engine flexible environment." - }, - "files": { - "additionalProperties": { - "$ref": "FileInfo" - }, - "description": "Manifest of the files stored in Google Cloud Storage that are included as part of this version. All files must be readable using the credentials supplied with this call.", - "type": "object" - }, - "cloudBuildOptions": { - "description": "Options for any Google Cloud Container Builder builds created as a part of this deployment.Note that this is orthogonal to the build parameter, where the deployment depends on an already existing cloud build. These options will only be used if a new build is created, such as when deploying to the App Engine flexible environment using files or zip.", - "$ref": "CloudBuildOptions" - } - }, - "id": "Deployment" - }, - "Resources": { - "description": "Machine resources for a version.", - "type": "object", - "properties": { - "volumes": { - "description": "User specified volumes.", - "type": "array", - "items": { - "$ref": "Volume" - } - }, - "diskGb": { - "description": "Disk size (GB) needed.", - "format": "double", - "type": "number" - }, - "cpu": { - "description": "Number of CPU cores needed.", - "format": "double", - "type": "number" - }, - "memoryGb": { - "description": "Memory (GB) needed.", - "format": "double", - "type": "number" - } - }, - "id": "Resources" - }, "Volume": { "description": "Volumes mounted within the app container. Only applicable in the App Engine flexible environment.", - "type": "object", + "id": "Volume", "properties": { - "volumeType": { - "description": "Underlying volume type, e.g. 'tmpfs'.", + "name": { + "description": "Unique name for the volume.", "type": "string" }, "sizeGb": { @@ -3547,56 +3648,31 @@ "format": "double", "type": "number" }, - "name": { - "description": "Unique name for the volume.", + "volumeType": { + "description": "Underlying volume type, e.g. 'tmpfs'.", "type": "string" } }, - "id": "Volume" + "type": "object" }, - "BatchUpdateIngressRulesResponse": { + "ZipInfo": { + "description": "The zip file information for a zip deployment.", + "id": "ZipInfo", "properties": { - "ingressRules": { - "description": "The full list of ingress FirewallRules for this application.", - "type": "array", - "items": { - "$ref": "FirewallRule" - } + "filesCount": { + "description": "An estimate of the number of files in a zip for a zip deployment. If set, must be greater than or equal to the actual number of files. Used for optimizing performance; if not provided, deployment may be slow.", + "format": "int32", + "type": "integer" + }, + "sourceUrl": { + "description": "URL of the zip file to deploy from. Must be a URL to a resource in Google Cloud Storage in the form 'http(s)://storage.googleapis.com/\u003cbucket\u003e/\u003cobject\u003e'.", + "type": "string" } }, - "id": "BatchUpdateIngressRulesResponse", - "description": "Response message for Firewall.UpdateAllIngressRules.", "type": "object" } }, - "icons": { - "x32": "http://www.google.com/images/icons/product/search-32.gif", - "x16": "http://www.google.com/images/icons/product/search-16.gif" - }, - "protocol": "rest", - "version": "v1beta", - "baseUrl": "https://appengine.googleapis.com/", - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/cloud-platform": { - "description": "View and manage your data across Google Cloud Platform services" - }, - "https://www.googleapis.com/auth/appengine.admin": { - "description": "View and manage your applications deployed on Google App Engine" - }, - "https://www.googleapis.com/auth/cloud-platform.read-only": { - "description": "View your data across Google Cloud Platform services" - } - } - } - }, - "kind": "discovery#restDescription", - "description": "The App Engine Admin API enables developers to provision and manage their App Engine applications.", "servicePath": "", - "rootUrl": "https://appengine.googleapis.com/", - "basePath": "", - "ownerDomain": "google.com", - "name": "appengine", - "batchPath": "batch" -} + "title": "App Engine Admin API", + "version": "v1beta" +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/appengine/v1beta/appengine-gen.go b/vendor/google.golang.org/api/appengine/v1beta/appengine-gen.go index 037286b28..61ab6ac2b 100644 --- a/vendor/google.golang.org/api/appengine/v1beta/appengine-gen.go +++ b/vendor/google.golang.org/api/appengine/v1beta/appengine-gen.go @@ -1,4 +1,4 @@ -// Package appengine provides access to the Google App Engine Admin API. +// Package appengine provides access to the App Engine Admin API. // // See https://cloud.google.com/appengine/docs/admin-api/ // @@ -366,11 +366,11 @@ type Application struct { // where you want to deploy your application. Example: myapp. Id string `json:"id,omitempty"` - // LocationId: Location from which this application will be run. - // Application instances will run out of data centers in the chosen - // location, which is also where all of the application's end user - // content is stored.Defaults to us-central.Options are:us-central - - // Central USeurope-west - Western Europeus-east1 - Eastern US + // LocationId: Location from which this application runs. Application + // instances run out of the data centers in the specified location, + // which is also where all of the application's end user content is + // stored.Defaults to us-central.View the list of supported locations + // (https://cloud.google.com/appengine/docs/locations). LocationId string `json:"locationId,omitempty"` // Name: Full path to the Application resource in the API. Example: @@ -546,6 +546,9 @@ type AutomaticScaling struct { // CpuUtilization: Target scaling by CPU usage. CpuUtilization *CpuUtilization `json:"cpuUtilization,omitempty"` + // CustomMetrics: Target scaling by user-provided metrics. + CustomMetrics []*CustomMetric `json:"customMetrics,omitempty"` + // DiskUtilization: Target scaling by disk usage. DiskUtilization *DiskUtilization `json:"diskUtilization,omitempty"` @@ -563,7 +566,7 @@ type AutomaticScaling struct { MaxPendingLatency string `json:"maxPendingLatency,omitempty"` // MaxTotalInstances: Maximum number of instances that should be started - // to handle requests. + // to handle requests for this version. MaxTotalInstances int64 `json:"maxTotalInstances,omitempty"` // MinIdleInstances: Minimum number of idle instances that should be @@ -575,7 +578,7 @@ type AutomaticScaling struct { // the pending queue before starting a new instance to handle it. MinPendingLatency string `json:"minPendingLatency,omitempty"` - // MinTotalInstances: Minimum number of instances that should be + // MinTotalInstances: Minimum number of running instances that should be // maintained for this version. MinTotalInstances int64 `json:"minTotalInstances,omitempty"` @@ -902,6 +905,37 @@ func (s *CpuUtilization) UnmarshalJSON(data []byte) error { return nil } +// CreateVersionMetadataV1: Metadata for the given +// google.longrunning.Operation during a +// google.appengine.v1.CreateVersionRequest. +type CreateVersionMetadataV1 struct { + // CloudBuildId: The Cloud Build ID if one was created as part of the + // version create. @OutputOnly + CloudBuildId string `json:"cloudBuildId,omitempty"` + + // ForceSendFields is a list of field names (e.g. "CloudBuildId") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "CloudBuildId") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *CreateVersionMetadataV1) MarshalJSON() ([]byte, error) { + type NoMethod CreateVersionMetadataV1 + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // CreateVersionMetadataV1Alpha: Metadata for the given // google.longrunning.Operation during a // google.appengine.v1alpha.CreateVersionRequest. @@ -964,6 +998,67 @@ func (s *CreateVersionMetadataV1Beta) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// CustomMetric: Allows autoscaling based on Stackdriver metrics. +type CustomMetric struct { + // Filter: Allows filtering on the metric's fields. + Filter string `json:"filter,omitempty"` + + // MetricName: The name of the metric. + MetricName string `json:"metricName,omitempty"` + + // SingleInstanceAssignment: May be used instead of target_utilization + // when an instance can handle a specific amount of work/resources and + // the metric value is equal to the current amount of work remaining. + // The autoscaler will try to keep the number of instances equal to the + // metric value divided by single_instance_assignment. + SingleInstanceAssignment float64 `json:"singleInstanceAssignment,omitempty"` + + // TargetType: The type of the metric. Must be a string representing a + // Stackdriver metric type e.g. GAGUE, DELTA_PER_SECOND, etc. + TargetType string `json:"targetType,omitempty"` + + // TargetUtilization: The target value for the metric. + TargetUtilization float64 `json:"targetUtilization,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Filter") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Filter") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *CustomMetric) MarshalJSON() ([]byte, error) { + type NoMethod CustomMetric + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +func (s *CustomMetric) UnmarshalJSON(data []byte) error { + type NoMethod CustomMetric + var s1 struct { + SingleInstanceAssignment gensupport.JSONFloat64 `json:"singleInstanceAssignment"` + TargetUtilization gensupport.JSONFloat64 `json:"targetUtilization"` + *NoMethod + } + s1.NoMethod = (*NoMethod)(s) + if err := json.Unmarshal(data, &s1); err != nil { + return err + } + s.SingleInstanceAssignment = float64(s1.SingleInstanceAssignment) + s.TargetUtilization = float64(s1.TargetUtilization) + return nil +} + // DebugInstanceRequest: Request message for Instances.DebugInstance. type DebugInstanceRequest struct { // SshKey: Public SSH key to add to the instance. @@ -1156,8 +1251,9 @@ type Empty struct { // EndpointsApiService: Cloud Endpoints // (https://cloud.google.com/endpoints) configuration. The Endpoints API // Service provides tooling for serving Open API and gRPC endpoints via -// an NGINX proxy.The fields here refer to the name and configuration id -// of a "service" resource in the Service Management API +// an NGINX proxy. Only valid for App Engine Flexible environment +// deployments.The fields here refer to the name and configuration id of +// a "service" resource in the Service Management API // (https://cloud.google.com/service-management/overview). type EndpointsApiService struct { // ConfigId: Endpoints service configuration id as specified by the @@ -1173,6 +1269,17 @@ type EndpointsApiService struct { // "myapi.endpoints.myproject.cloud.goog" Name string `json:"name,omitempty"` + // RolloutStrategy: Endpoints rollout strategy. If FIXED, config_id must + // be specified. If MANAGED, config_id must be omitted. + // + // Possible values: + // "UNSPECIFIED_ROLLOUT_STRATEGY" - Not specified. Defaults to FIXED. + // "FIXED" - Endpoints service configuration id will be fixed to the + // configuration id specified by config_id. + // "MANAGED" - Endpoints service configuration id will be updated with + // each rollout. + RolloutStrategy string `json:"rolloutStrategy,omitempty"` + // ForceSendFields is a list of field names (e.g. "ConfigId") to // unconditionally include in API requests. By default, fields with // empty values are omitted from API requests. However, any non-pointer, @@ -2008,6 +2115,10 @@ func (s *LivenessCheck) MarshalJSON() ([]byte, error) { // Location: A resource that represents Google Cloud Platform location. type Location struct { + // DisplayName: The friendly name for this location, typically a nearby + // city name. For example, "Tokyo". + DisplayName string `json:"displayName,omitempty"` + // Labels: Cross-service attributes for the location. For // example // {"cloud.googleapis.com/region": "us-east1"} @@ -2031,7 +2142,7 @@ type Location struct { // server. googleapi.ServerResponse `json:"-"` - // ForceSendFields is a list of field names (e.g. "Labels") to + // ForceSendFields is a list of field names (e.g. "DisplayName") to // unconditionally include in API requests. By default, fields with // empty values are omitted from API requests. However, any non-pointer, // non-interface field appearing in ForceSendFields will be sent to the @@ -2039,10 +2150,10 @@ type Location struct { // used to include empty fields in Patch requests. ForceSendFields []string `json:"-"` - // NullFields is a list of field names (e.g. "Labels") to include in API - // requests with the JSON null value. By default, fields with empty - // values are omitted from API requests. However, any field with an - // empty value appearing in NullFields will be sent to the server as + // NullFields is a list of field names (e.g. "DisplayName") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as // null. It is an error if a field in this list has a non-empty value. // This may be used to include null fields in Patch requests. NullFields []string `json:"-"` @@ -2057,11 +2168,11 @@ func (s *Location) MarshalJSON() ([]byte, error) { // LocationMetadata: Metadata for the given // google.cloud.location.Location. type LocationMetadata struct { - // FlexibleEnvironmentAvailable: App Engine Flexible Environment is + // FlexibleEnvironmentAvailable: App Engine flexible environment is // available in the given location.@OutputOnly FlexibleEnvironmentAvailable bool `json:"flexibleEnvironmentAvailable,omitempty"` - // StandardEnvironmentAvailable: App Engine Standard Environment is + // StandardEnvironmentAvailable: App Engine standard environment is // available in the given location.@OutputOnly StandardEnvironmentAvailable bool `json:"standardEnvironmentAvailable,omitempty"` @@ -2193,8 +2304,8 @@ type Network struct { // App Engine flexible environment. ForwardedPorts []string `json:"forwardedPorts,omitempty"` - // InstanceTag: Tag to apply to the VM instance during creation. for - // Only applicable in the App Engine flexible environment. + // InstanceTag: Tag to apply to the instance during creation. Only + // applicable in the App Engine flexible environment. InstanceTag string `json:"instanceTag,omitempty"` // Name: Google Compute Engine network where the virtual machines are @@ -2202,19 +2313,23 @@ type Network struct { // default. Name string `json:"name,omitempty"` + // SessionAffinity: Enable session affinity. + SessionAffinity bool `json:"sessionAffinity,omitempty"` + // SubnetworkName: Google Cloud Platform sub-network where the virtual // machines are created. Specify the short name, not the resource // path.If a subnetwork name is specified, a network name will also be // required unless it is for the default network. - // If the network the VM instance is being created in is a Legacy + // If the network that the instance is being created in is a Legacy // network, then the IP address is allocated from the IPv4Range. - // If the network the VM instance is being created in is an auto Subnet - // Mode Network, then only network name should be specified (not the - // subnetwork_name) and the IP address is created from the IPCidrRange - // of the subnetwork that exists in that zone for that network. - // If the network the VM instance is being created in is a custom Subnet - // Mode Network, then the subnetwork_name must be specified and the IP - // address is created from the IPCidrRange of the subnetwork.If + // If the network that the instance is being created in is an auto + // Subnet Mode Network, then only network name should be specified (not + // the subnetwork_name) and the IP address is created from the + // IPCidrRange of the subnetwork that exists in that zone for that + // network. + // If the network that the instance is being created in is a custom + // Subnet Mode Network, then the subnetwork_name must be specified and + // the IP address is created from the IPCidrRange of the subnetwork.If // specified, the subnetwork must exist in the same region as the App // Engine flexible environment application. SubnetworkName string `json:"subnetworkName,omitempty"` @@ -2394,6 +2509,8 @@ func (s *OperationMetadata) MarshalJSON() ([]byte, error) { // OperationMetadataV1: Metadata for the given // google.longrunning.Operation. type OperationMetadataV1 struct { + CreateVersionMetadata *CreateVersionMetadataV1 `json:"createVersionMetadata,omitempty"` + // EndTime: Time that this operation completed.@OutputOnly EndTime string `json:"endTime,omitempty"` @@ -2419,20 +2536,22 @@ type OperationMetadataV1 struct { // @OutputOnly Warning []string `json:"warning,omitempty"` - // ForceSendFields is a list of field names (e.g. "EndTime") to - // unconditionally include in API requests. By default, fields with - // empty values are omitted from API requests. However, any non-pointer, - // non-interface field appearing in ForceSendFields will be sent to the - // server regardless of whether the field is empty or not. This may be - // used to include empty fields in Patch requests. + // ForceSendFields is a list of field names (e.g. + // "CreateVersionMetadata") to unconditionally include in API requests. + // By default, fields with empty values are omitted from API requests. + // However, any non-pointer, non-interface field appearing in + // ForceSendFields will be sent to the server regardless of whether the + // field is empty or not. This may be used to include empty fields in + // Patch requests. ForceSendFields []string `json:"-"` - // NullFields is a list of field names (e.g. "EndTime") to include in - // API requests with the JSON null value. By default, fields with empty - // values are omitted from API requests. However, any field with an - // empty value appearing in NullFields will be sent to the server as - // null. It is an error if a field in this list has a non-empty value. - // This may be used to include null fields in Patch requests. + // NullFields is a list of field names (e.g. "CreateVersionMetadata") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. NullFields []string `json:"-"` } @@ -2922,12 +3041,12 @@ func (s *SslSettings) MarshalJSON() ([]byte, error) { // StandardSchedulerSettings: Scheduler settings for standard // environment. type StandardSchedulerSettings struct { - // MaxInstances: Maximum number of instances for an app version. Set to - // zero to disable max_instances configuration. + // MaxInstances: Maximum number of instances to run for this version. + // Set to zero to disable max_instances configuration. MaxInstances int64 `json:"maxInstances,omitempty"` - // MinInstances: Minimum number of instances for an app version. Set to - // zero to disable min_instances configuration. + // MinInstances: Minimum number of instances to run for this version. + // Set to zero to disable min_instances configuration. MinInstances int64 `json:"minInstances,omitempty"` // TargetCpuUtilization: Target CPU utilization ratio to maintain when @@ -3382,7 +3501,7 @@ type Version struct { // GET requests if view=FULL is set. Handlers []*UrlMap `json:"handlers,omitempty"` - // HealthCheck: Configures health checking for VM instances. Unhealthy + // HealthCheck: Configures health checking for instances. Unhealthy // instances are stopped and replaced with new instances. Only // applicable in the App Engine flexible environment.Only returned in // GET requests if view=FULL is set. @@ -3427,7 +3546,7 @@ type Version struct { // view=FULL is set. Libraries []*Library `json:"libraries,omitempty"` - // LivenessCheck: Configures liveness health checking for VM instances. + // LivenessCheck: Configures liveness health checking for instances. // Unhealthy instances are stopped and replaced with new instancesOnly // returned in GET requests if view=FULL is set. LivenessCheck *LivenessCheck `json:"livenessCheck,omitempty"` @@ -3450,13 +3569,13 @@ type Version struct { // GET requests if view=FULL is set. NobuildFilesRegex string `json:"nobuildFilesRegex,omitempty"` - // ReadinessCheck: Configures readiness health checking for VM - // instances. Unhealthy instances are not put into the backend traffic + // ReadinessCheck: Configures readiness health checking for instances. + // Unhealthy instances are not put into the backend traffic // rotation.Only returned in GET requests if view=FULL is set. ReadinessCheck *ReadinessCheck `json:"readinessCheck,omitempty"` - // Resources: Machine resources for this version. Only applicable for VM - // runtimes. + // Resources: Machine resources for this version. Only applicable in the + // App Engine flexible environment. Resources *Resources `json:"resources,omitempty"` // Runtime: Desired runtime. Example: python27. @@ -3467,6 +3586,10 @@ type Version struct { // https://cloud.google.com/appengine/docs/standard//config/appref RuntimeApiVersion string `json:"runtimeApiVersion,omitempty"` + // RuntimeChannel: The channel of the runtime to use. Only available for + // some runtimes. Defaults to the default channel. + RuntimeChannel string `json:"runtimeChannel,omitempty"` + // ServingStatus: Current serving status of this version. Only the // versions with a SERVING status create instances and can be // billed.SERVING_STATUS_UNSPECIFIED is an invalid value. Defaults to @@ -3493,8 +3616,8 @@ type Version struct { // machine. Vm bool `json:"vm,omitempty"` - // Zones: The choice of gce zones to use for this App Engine Flexible - // version. + // Zones: The Google Compute Engine zones that are supported by this + // version in the App Engine flexible environment. Zones []string `json:"zones,omitempty"` // ServerResponse contains the HTTP response code and headers from the @@ -3626,7 +3749,7 @@ type AppsCreateCall struct { // (https://cloud.google.com/appengine/docs/locations) where you want // the App Engine application located.For more information about App // Engine applications, see Managing Projects, Applications, and Billing -// (https://cloud.google.com/appengine/docs/python/console/). +// (https://cloud.google.com/appengine/docs/standard/python/console/). func (r *AppsService) Create(application *Application) *AppsCreateCall { c := &AppsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.application = application @@ -3716,7 +3839,7 @@ func (c *AppsCreateCall) Do(opts ...googleapi.CallOption) (*Operation, error) { } return ret, nil // { - // "description": "Creates an App Engine application for a Google Cloud Platform project. Required fields:\nid - The ID of the target Cloud Platform project.\nlocation - The region (https://cloud.google.com/appengine/docs/locations) where you want the App Engine application located.For more information about App Engine applications, see Managing Projects, Applications, and Billing (https://cloud.google.com/appengine/docs/python/console/).", + // "description": "Creates an App Engine application for a Google Cloud Platform project. Required fields:\nid - The ID of the target Cloud Platform project.\nlocation - The region (https://cloud.google.com/appengine/docs/locations) where you want the App Engine application located.For more information about App Engine applications, see Managing Projects, Applications, and Billing (https://cloud.google.com/appengine/docs/standard/python/console/).", // "flatPath": "v1beta/apps", // "httpMethod": "POST", // "id": "appengine.apps.create", @@ -6878,7 +7001,7 @@ type AppsLocationsGetCall struct { header_ http.Header } -// Get: Get information about a location. +// Get: Gets information about a location. func (r *AppsLocationsService) Get(appsId string, locationsId string) *AppsLocationsGetCall { c := &AppsLocationsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.appsId = appsId @@ -6981,7 +7104,7 @@ func (c *AppsLocationsGetCall) Do(opts ...googleapi.CallOption) (*Location, erro } return ret, nil // { - // "description": "Get information about a location.", + // "description": "Gets information about a location.", // "flatPath": "v1beta/apps/{appsId}/locations/{locationsId}", // "httpMethod": "GET", // "id": "appengine.apps.locations.get", @@ -8953,23 +9076,23 @@ type AppsServicesVersionsPatchCall struct { // (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1be // ta/apps.services.versions#Version.FIELDS.automatic_scaling): For // Version resources that use automatic scaling and run in the App -// Engine Flexible environment. +// Engine flexible environment. // automatic_scaling.max_total_instances // (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1be // ta/apps.services.versions#Version.FIELDS.automatic_scaling): For // Version resources that use automatic scaling and run in the App -// Engine Flexible environment. +// Engine flexible environment. // automatic_scaling.cool_down_period_sec // (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1be // ta/apps.services.versions#Version.FIELDS.automatic_scaling): For // Version resources that use automatic scaling and run in the App -// Engine Flexible +// Engine flexible // environment. // automatic_scaling.cpu_utilization.target_utilization // (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1be // ta/apps.services.versions#Version.FIELDS.automatic_scaling): For // Version resources that use automatic scaling and run in the App -// Engine Flexible environment. +// Engine flexible environment. func (r *AppsServicesVersionsService) Patch(appsId string, servicesId string, versionsId string, version *Version) *AppsServicesVersionsPatchCall { c := &AppsServicesVersionsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.appsId = appsId @@ -9074,7 +9197,7 @@ func (c *AppsServicesVersionsPatchCall) Do(opts ...googleapi.CallOption) (*Opera } return ret, nil // { - // "description": "Updates the specified Version resource. You can specify the following fields depending on the App Engine environment and type of scaling that the version resource uses:\nserving_status (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1beta/apps.services.versions#Version.FIELDS.serving_status): For Version resources that use basic scaling, manual scaling, or run in the App Engine flexible environment.\ninstance_class (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1beta/apps.services.versions#Version.FIELDS.instance_class): For Version resources that run in the App Engine standard environment.\nautomatic_scaling.min_idle_instances (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1beta/apps.services.versions#Version.FIELDS.automatic_scaling): For Version resources that use automatic scaling and run in the App Engine standard environment.\nautomatic_scaling.max_idle_instances (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1beta/apps.services.versions#Version.FIELDS.automatic_scaling): For Version resources that use automatic scaling and run in the App Engine standard environment.\nautomatic_scaling.min_total_instances (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1beta/apps.services.versions#Version.FIELDS.automatic_scaling): For Version resources that use automatic scaling and run in the App Engine Flexible environment.\nautomatic_scaling.max_total_instances (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1beta/apps.services.versions#Version.FIELDS.automatic_scaling): For Version resources that use automatic scaling and run in the App Engine Flexible environment.\nautomatic_scaling.cool_down_period_sec (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1beta/apps.services.versions#Version.FIELDS.automatic_scaling): For Version resources that use automatic scaling and run in the App Engine Flexible environment.\nautomatic_scaling.cpu_utilization.target_utilization (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1beta/apps.services.versions#Version.FIELDS.automatic_scaling): For Version resources that use automatic scaling and run in the App Engine Flexible environment.", + // "description": "Updates the specified Version resource. You can specify the following fields depending on the App Engine environment and type of scaling that the version resource uses:\nserving_status (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1beta/apps.services.versions#Version.FIELDS.serving_status): For Version resources that use basic scaling, manual scaling, or run in the App Engine flexible environment.\ninstance_class (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1beta/apps.services.versions#Version.FIELDS.instance_class): For Version resources that run in the App Engine standard environment.\nautomatic_scaling.min_idle_instances (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1beta/apps.services.versions#Version.FIELDS.automatic_scaling): For Version resources that use automatic scaling and run in the App Engine standard environment.\nautomatic_scaling.max_idle_instances (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1beta/apps.services.versions#Version.FIELDS.automatic_scaling): For Version resources that use automatic scaling and run in the App Engine standard environment.\nautomatic_scaling.min_total_instances (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1beta/apps.services.versions#Version.FIELDS.automatic_scaling): For Version resources that use automatic scaling and run in the App Engine flexible environment.\nautomatic_scaling.max_total_instances (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1beta/apps.services.versions#Version.FIELDS.automatic_scaling): For Version resources that use automatic scaling and run in the App Engine flexible environment.\nautomatic_scaling.cool_down_period_sec (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1beta/apps.services.versions#Version.FIELDS.automatic_scaling): For Version resources that use automatic scaling and run in the App Engine flexible environment.\nautomatic_scaling.cpu_utilization.target_utilization (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1beta/apps.services.versions#Version.FIELDS.automatic_scaling): For Version resources that use automatic scaling and run in the App Engine flexible environment.", // "flatPath": "v1beta/apps/{appsId}/services/{servicesId}/versions/{versionsId}", // "httpMethod": "PATCH", // "id": "appengine.apps.services.versions.patch", diff --git a/vendor/google.golang.org/api/appengine/v1beta4/appengine-api.json b/vendor/google.golang.org/api/appengine/v1beta4/appengine-api.json index 6011cc60e..37ec8ac98 100644 --- a/vendor/google.golang.org/api/appengine/v1beta4/appengine-api.json +++ b/vendor/google.golang.org/api/appengine/v1beta4/appengine-api.json @@ -1,347 +1,762 @@ { - "id": "appengine:v1beta4", - "documentationLink": "https://cloud.google.com/appengine/docs/admin-api/", - "revision": "20180112", - "title": "Google App Engine Admin API", + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/appengine.admin": { + "description": "View and manage your applications deployed on Google App Engine" + }, + "https://www.googleapis.com/auth/cloud-platform": { + "description": "View and manage your data across Google Cloud Platform services" + }, + "https://www.googleapis.com/auth/cloud-platform.read-only": { + "description": "View your data across Google Cloud Platform services" + } + } + } + }, + "basePath": "", + "baseUrl": "https://appengine.googleapis.com/", + "batchPath": "batch", + "description": "The App Engine Admin API enables developers to provision and manage their App Engine applications.", "discoveryVersion": "v1", + "documentationLink": "https://cloud.google.com/appengine/docs/admin-api/", + "icons": { + "x16": "http://www.google.com/images/icons/product/search-16.gif", + "x32": "http://www.google.com/images/icons/product/search-32.gif" + }, + "id": "appengine:v1beta4", + "kind": "discovery#restDescription", + "name": "appengine", + "ownerDomain": "google.com", "ownerName": "Google", + "parameters": { + "$.xgafv": { + "description": "V1 error format.", + "enum": [ + "1", + "2" + ], + "enumDescriptions": [ + "v1 error format", + "v2 error format" + ], + "location": "query", + "type": "string" + }, + "access_token": { + "description": "OAuth access token.", + "location": "query", + "type": "string" + }, + "alt": { + "default": "json", + "description": "Data format for response.", + "enum": [ + "json", + "media", + "proto" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json", + "Media download with context-dependent Content-Type", + "Responses with Content-Type of application/x-protobuf" + ], + "location": "query", + "type": "string" + }, + "bearer_token": { + "description": "OAuth bearer token.", + "location": "query", + "type": "string" + }, + "callback": { + "description": "JSONP", + "location": "query", + "type": "string" + }, + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "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.", + "location": "query", + "type": "string" + }, + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "pp": { + "default": "true", + "description": "Pretty-print response.", + "location": "query", + "type": "boolean" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", + "location": "query", + "type": "string" + }, + "uploadType": { + "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", + "location": "query", + "type": "string" + }, + "upload_protocol": { + "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", + "location": "query", + "type": "string" + } + }, + "protocol": "rest", "resources": { "apps": { "methods": { - "get": { - "response": { - "$ref": "Application" - }, - "parameterOrder": [ - "appsId" - ], - "httpMethod": "GET", - "parameters": { - "ensureResourcesExist": { - "description": "Certain resources associated with an application are created on-demand. Controls whether these resources should be created when performing the GET operation. If specified and any resources could not be created, the request will fail with an error code. Additionally, this parameter can cause the request to take longer to complete.", - "type": "boolean", - "location": "query" - }, - "appsId": { - "location": "path", - "description": "Part of `name`. Name of the application to get. Example: apps/myapp.", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta4/apps/{appsId}", - "path": "v1beta4/apps/{appsId}", - "id": "appengine.apps.get", - "description": "Gets information about an application." - }, - "patch": { - "id": "appengine.apps.patch", - "path": "v1beta4/apps/{appsId}", - "request": { - "$ref": "Application" - }, - "description": "Updates the specified Application resource. You can update the following fields:\nauth_domain (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1beta4/apps#Application.FIELDS.auth_domain)\ndefault_cookie_expiration (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1beta4/apps#Application.FIELDS.default_cookie_expiration)", - "httpMethod": "PATCH", - "parameterOrder": [ - "appsId" - ], - "response": { - "$ref": "Operation" - }, - "parameters": { - "mask": { - "location": "query", - "description": "Standard field mask for the set of fields to be updated.", - "format": "google-fieldmask", - "type": "string" - }, - "appsId": { - "description": "Part of `name`. Name of the Application resource to update. Example: apps/myapp.", - "required": true, - "type": "string", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta4/apps/{appsId}" - }, "create": { "description": "Creates an App Engine application for a Google Cloud Platform project. Required fields:\nid - The ID of the target Cloud Platform project.\nlocation - The region (https://cloud.google.com/appengine/docs/locations) where you want the App Engine application located.For more information about App Engine applications, see Managing Projects, Applications, and Billing (https://cloud.google.com/appengine/docs/python/console/).", + "flatPath": "v1beta4/apps", + "httpMethod": "POST", + "id": "appengine.apps.create", + "parameterOrder": [], + "parameters": {}, + "path": "v1beta4/apps", "request": { "$ref": "Application" }, "response": { "$ref": "Operation" }, - "parameterOrder": [], - "httpMethod": "POST", "scopes": [ "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Gets information about an application.", + "flatPath": "v1beta4/apps/{appsId}", + "httpMethod": "GET", + "id": "appengine.apps.get", + "parameterOrder": [ + "appsId" ], - "parameters": {}, - "flatPath": "v1beta4/apps", - "path": "v1beta4/apps", - "id": "appengine.apps.create" + "parameters": { + "appsId": { + "description": "Part of `name`. Name of the application to get. Example: apps/myapp.", + "location": "path", + "required": true, + "type": "string" + }, + "ensureResourcesExist": { + "description": "Certain resources associated with an application are created on-demand. Controls whether these resources should be created when performing the GET operation. If specified and any resources could not be created, the request will fail with an error code. Additionally, this parameter can cause the request to take longer to complete.", + "location": "query", + "type": "boolean" + } + }, + "path": "v1beta4/apps/{appsId}", + "response": { + "$ref": "Application" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "patch": { + "description": "Updates the specified Application resource. You can update the following fields:\nauth_domain (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1beta4/apps#Application.FIELDS.auth_domain)\ndefault_cookie_expiration (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1beta4/apps#Application.FIELDS.default_cookie_expiration)", + "flatPath": "v1beta4/apps/{appsId}", + "httpMethod": "PATCH", + "id": "appengine.apps.patch", + "parameterOrder": [ + "appsId" + ], + "parameters": { + "appsId": { + "description": "Part of `name`. Name of the Application resource to update. Example: apps/myapp.", + "location": "path", + "required": true, + "type": "string" + }, + "mask": { + "description": "Standard field mask for the set of fields to be updated.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + } + }, + "path": "v1beta4/apps/{appsId}", + "request": { + "$ref": "Application" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] } }, "resources": { - "modules": { + "locations": { "methods": { - "delete": { - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "appsId", - "modulesId" - ], - "httpMethod": "DELETE", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "appsId": { - "description": "Part of `name`. Name of the resource requested. Example: apps/myapp/modules/default.", - "required": true, - "type": "string", - "location": "path" - }, - "modulesId": { - "description": "Part of `name`. See documentation of `appsId`.", - "required": true, - "type": "string", - "location": "path" - } - }, - "flatPath": "v1beta4/apps/{appsId}/modules/{modulesId}", - "path": "v1beta4/apps/{appsId}/modules/{modulesId}", - "id": "appengine.apps.modules.delete", - "description": "Deletes the specified module and all enclosed versions." - }, "get": { - "response": { - "$ref": "Module" - }, + "description": "Gets information about a location.", + "flatPath": "v1beta4/apps/{appsId}/locations/{locationsId}", + "httpMethod": "GET", + "id": "appengine.apps.locations.get", "parameterOrder": [ "appsId", - "modulesId" + "locationsId" ], - "httpMethod": "GET", "parameters": { "appsId": { - "description": "Part of `name`. Name of the resource requested. Example: apps/myapp/modules/default.", + "description": "Part of `name`. Resource name for the location.", + "location": "path", "required": true, - "type": "string", - "location": "path" + "type": "string" }, - "modulesId": { + "locationsId": { "description": "Part of `name`. See documentation of `appsId`.", + "location": "path", "required": true, - "type": "string", - "location": "path" + "type": "string" } }, + "path": "v1beta4/apps/{appsId}/locations/{locationsId}", + "response": { + "$ref": "Location" + }, "scopes": [ "https://www.googleapis.com/auth/appengine.admin", "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/cloud-platform.read-only" - ], - "flatPath": "v1beta4/apps/{appsId}/modules/{modulesId}", - "path": "v1beta4/apps/{appsId}/modules/{modulesId}", - "id": "appengine.apps.modules.get", - "description": "Gets the current configuration of the specified module." + ] }, "list": { - "description": "Lists all the modules in the application.", - "response": { - "$ref": "ListModulesResponse" - }, + "description": "Lists information about the supported locations for this service.", + "flatPath": "v1beta4/apps/{appsId}/locations", + "httpMethod": "GET", + "id": "appengine.apps.locations.list", "parameterOrder": [ "appsId" ], - "httpMethod": "GET", "parameters": { - "pageSize": { - "description": "Maximum results to return per page.", - "format": "int32", - "type": "integer", - "location": "query" - }, "appsId": { + "description": "Part of `name`. The resource that owns the locations collection, if applicable.", "location": "path", - "description": "Part of `name`. Name of the resource requested. Example: apps/myapp.", "required": true, "type": "string" }, - "pageToken": { + "filter": { + "description": "The standard list filter.", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "The standard list page size.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "The standard list page token.", "location": "query", - "description": "Continuation token for fetching the next page of results.", "type": "string" } }, + "path": "v1beta4/apps/{appsId}/locations", + "response": { + "$ref": "ListLocationsResponse" + }, "scopes": [ "https://www.googleapis.com/auth/appengine.admin", "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/cloud-platform.read-only" - ], - "flatPath": "v1beta4/apps/{appsId}/modules", - "path": "v1beta4/apps/{appsId}/modules", - "id": "appengine.apps.modules.list" - }, - "patch": { - "response": { - "$ref": "Operation" - }, + ] + } + } + }, + "modules": { + "methods": { + "delete": { + "description": "Deletes the specified module and all enclosed versions.", + "flatPath": "v1beta4/apps/{appsId}/modules/{modulesId}", + "httpMethod": "DELETE", + "id": "appengine.apps.modules.delete", "parameterOrder": [ "appsId", "modulesId" ], + "parameters": { + "appsId": { + "description": "Part of `name`. Name of the resource requested. Example: apps/myapp/modules/default.", + "location": "path", + "required": true, + "type": "string" + }, + "modulesId": { + "description": "Part of `name`. See documentation of `appsId`.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1beta4/apps/{appsId}/modules/{modulesId}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Gets the current configuration of the specified module.", + "flatPath": "v1beta4/apps/{appsId}/modules/{modulesId}", + "httpMethod": "GET", + "id": "appengine.apps.modules.get", + "parameterOrder": [ + "appsId", + "modulesId" + ], + "parameters": { + "appsId": { + "description": "Part of `name`. Name of the resource requested. Example: apps/myapp/modules/default.", + "location": "path", + "required": true, + "type": "string" + }, + "modulesId": { + "description": "Part of `name`. See documentation of `appsId`.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1beta4/apps/{appsId}/modules/{modulesId}", + "response": { + "$ref": "Module" + }, + "scopes": [ + "https://www.googleapis.com/auth/appengine.admin", + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + }, + "list": { + "description": "Lists all the modules in the application.", + "flatPath": "v1beta4/apps/{appsId}/modules", + "httpMethod": "GET", + "id": "appengine.apps.modules.list", + "parameterOrder": [ + "appsId" + ], + "parameters": { + "appsId": { + "description": "Part of `name`. Name of the resource requested. Example: apps/myapp.", + "location": "path", + "required": true, + "type": "string" + }, + "pageSize": { + "description": "Maximum results to return per page.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Continuation token for fetching the next page of results.", + "location": "query", + "type": "string" + } + }, + "path": "v1beta4/apps/{appsId}/modules", + "response": { + "$ref": "ListModulesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/appengine.admin", + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + }, + "patch": { + "description": "Updates the configuration of the specified module.", + "flatPath": "v1beta4/apps/{appsId}/modules/{modulesId}", "httpMethod": "PATCH", + "id": "appengine.apps.modules.patch", + "parameterOrder": [ + "appsId", + "modulesId" + ], "parameters": { "appsId": { "description": "Part of `name`. Name of the resource to update. Example: apps/myapp/modules/default.", + "location": "path", "required": true, - "type": "string", - "location": "path" + "type": "string" + }, + "mask": { + "description": "Standard field mask for the set of fields to be updated.", + "format": "google-fieldmask", + "location": "query", + "type": "string" }, "migrateTraffic": { - "location": "query", "description": "Set to true to gradually shift traffic to one or more versions that you specify. By default, traffic is shifted immediately. For gradual traffic migration, the target versions must be located within instances that are configured for both warmup requests (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1beta4/apps.modules.versions#inboundservicetype) and automatic scaling (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1beta4/apps.modules.versions#automaticscaling). You must specify the shardBy (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1beta4/apps.modules#shardby) field in the Module resource. Gradual traffic migration is not supported in the App Engine flexible environment. For examples, see Migrating and Splitting Traffic (https://cloud.google.com/appengine/docs/admin-api/migrating-splitting-traffic).", + "location": "query", "type": "boolean" }, "modulesId": { "description": "Part of `name`. See documentation of `appsId`.", + "location": "path", "required": true, - "type": "string", - "location": "path" - }, - "mask": { - "location": "query", - "description": "Standard field mask for the set of fields to be updated.", - "format": "google-fieldmask", "type": "string" } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta4/apps/{appsId}/modules/{modulesId}", "path": "v1beta4/apps/{appsId}/modules/{modulesId}", - "id": "appengine.apps.modules.patch", "request": { "$ref": "Module" }, - "description": "Updates the configuration of the specified module." + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] } }, "resources": { "versions": { + "methods": { + "create": { + "description": "Deploys code and resource files to a new version.", + "flatPath": "v1beta4/apps/{appsId}/modules/{modulesId}/versions", + "httpMethod": "POST", + "id": "appengine.apps.modules.versions.create", + "parameterOrder": [ + "appsId", + "modulesId" + ], + "parameters": { + "appsId": { + "description": "Part of `name`. Name of the resource to update. Example: apps/myapp/modules/default.", + "location": "path", + "required": true, + "type": "string" + }, + "modulesId": { + "description": "Part of `name`. See documentation of `appsId`.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1beta4/apps/{appsId}/modules/{modulesId}/versions", + "request": { + "$ref": "Version" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Deletes an existing version.", + "flatPath": "v1beta4/apps/{appsId}/modules/{modulesId}/versions/{versionsId}", + "httpMethod": "DELETE", + "id": "appengine.apps.modules.versions.delete", + "parameterOrder": [ + "appsId", + "modulesId", + "versionsId" + ], + "parameters": { + "appsId": { + "description": "Part of `name`. Name of the resource requested. Example: apps/myapp/modules/default/versions/v1.", + "location": "path", + "required": true, + "type": "string" + }, + "modulesId": { + "description": "Part of `name`. See documentation of `appsId`.", + "location": "path", + "required": true, + "type": "string" + }, + "versionsId": { + "description": "Part of `name`. See documentation of `appsId`.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1beta4/apps/{appsId}/modules/{modulesId}/versions/{versionsId}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Gets the specified Version resource. By default, only a BASIC_VIEW will be returned. Specify the FULL_VIEW parameter to get the full resource.", + "flatPath": "v1beta4/apps/{appsId}/modules/{modulesId}/versions/{versionsId}", + "httpMethod": "GET", + "id": "appengine.apps.modules.versions.get", + "parameterOrder": [ + "appsId", + "modulesId", + "versionsId" + ], + "parameters": { + "appsId": { + "description": "Part of `name`. Name of the resource requested. Example: apps/myapp/modules/default/versions/v1.", + "location": "path", + "required": true, + "type": "string" + }, + "modulesId": { + "description": "Part of `name`. See documentation of `appsId`.", + "location": "path", + "required": true, + "type": "string" + }, + "versionsId": { + "description": "Part of `name`. See documentation of `appsId`.", + "location": "path", + "required": true, + "type": "string" + }, + "view": { + "description": "Controls the set of fields returned in the Get response.", + "enum": [ + "BASIC", + "FULL" + ], + "location": "query", + "type": "string" + } + }, + "path": "v1beta4/apps/{appsId}/modules/{modulesId}/versions/{versionsId}", + "response": { + "$ref": "Version" + }, + "scopes": [ + "https://www.googleapis.com/auth/appengine.admin", + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + }, + "list": { + "description": "Lists the versions of a module.", + "flatPath": "v1beta4/apps/{appsId}/modules/{modulesId}/versions", + "httpMethod": "GET", + "id": "appengine.apps.modules.versions.list", + "parameterOrder": [ + "appsId", + "modulesId" + ], + "parameters": { + "appsId": { + "description": "Part of `name`. Name of the resource requested. Example: apps/myapp/modules/default.", + "location": "path", + "required": true, + "type": "string" + }, + "modulesId": { + "description": "Part of `name`. See documentation of `appsId`.", + "location": "path", + "required": true, + "type": "string" + }, + "pageSize": { + "description": "Maximum results to return per page.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Continuation token for fetching the next page of results.", + "location": "query", + "type": "string" + }, + "view": { + "description": "Controls the set of fields returned in the List response.", + "enum": [ + "BASIC", + "FULL" + ], + "location": "query", + "type": "string" + } + }, + "path": "v1beta4/apps/{appsId}/modules/{modulesId}/versions", + "response": { + "$ref": "ListVersionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/appengine.admin", + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + }, + "patch": { + "description": "Updates the specified Version resource. You can specify the following fields depending on the App Engine environment and type of scaling that the version resource uses:\nserving_status (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1beta4/apps.modules.versions#Version.FIELDS.serving_status): For Version resources that use basic scaling, manual scaling, or run in the App Engine flexible environment.\ninstance_class (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1beta4/apps.modules.versions#Version.FIELDS.instance_class): For Version resources that run in the App Engine standard environment.\nautomatic_scaling.min_idle_instances (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1beta4/apps.modules.versions#Version.FIELDS.automatic_scaling): For Version resources that use automatic scaling and run in the App Engine standard environment.\nautomatic_scaling.max_idle_instances (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1beta4/apps.modules.versions#Version.FIELDS.automatic_scaling): For Version resources that use automatic scaling and run in the App Engine standard environment.", + "flatPath": "v1beta4/apps/{appsId}/modules/{modulesId}/versions/{versionsId}", + "httpMethod": "PATCH", + "id": "appengine.apps.modules.versions.patch", + "parameterOrder": [ + "appsId", + "modulesId", + "versionsId" + ], + "parameters": { + "appsId": { + "description": "Part of `name`. Name of the resource to update. Example: apps/myapp/modules/default/versions/1.", + "location": "path", + "required": true, + "type": "string" + }, + "mask": { + "description": "Standard field mask for the set of fields to be updated.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + }, + "modulesId": { + "description": "Part of `name`. See documentation of `appsId`.", + "location": "path", + "required": true, + "type": "string" + }, + "versionsId": { + "description": "Part of `name`. See documentation of `appsId`.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1beta4/apps/{appsId}/modules/{modulesId}/versions/{versionsId}", + "request": { + "$ref": "Version" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + }, "resources": { "instances": { "methods": { "debug": { + "description": "Enables debugging on a VM instance. This allows you to use the SSH command to connect to the virtual machine where the instance lives. While in \"debug mode\", the instance continues to serve live traffic. You should delete the instance when you are done debugging and then allow the system to take over and determine if another instance should be started.Only applicable for instances in App Engine flexible environment.", + "flatPath": "v1beta4/apps/{appsId}/modules/{modulesId}/versions/{versionsId}/instances/{instancesId}:debug", + "httpMethod": "POST", + "id": "appengine.apps.modules.versions.instances.debug", + "parameterOrder": [ + "appsId", + "modulesId", + "versionsId", + "instancesId" + ], + "parameters": { + "appsId": { + "description": "Part of `name`. Name of the resource requested. Example: apps/myapp/modules/default/versions/v1/instances/instance-1.", + "location": "path", + "required": true, + "type": "string" + }, + "instancesId": { + "description": "Part of `name`. See documentation of `appsId`.", + "location": "path", + "required": true, + "type": "string" + }, + "modulesId": { + "description": "Part of `name`. See documentation of `appsId`.", + "location": "path", + "required": true, + "type": "string" + }, + "versionsId": { + "description": "Part of `name`. See documentation of `appsId`.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1beta4/apps/{appsId}/modules/{modulesId}/versions/{versionsId}/instances/{instancesId}:debug", "request": { "$ref": "DebugInstanceRequest" }, - "description": "Enables debugging on a VM instance. This allows you to use the SSH command to connect to the virtual machine where the instance lives. While in \"debug mode\", the instance continues to serve live traffic. You should delete the instance when you are done debugging and then allow the system to take over and determine if another instance should be started.Only applicable for instances in App Engine flexible environment.", "response": { "$ref": "Operation" }, - "parameterOrder": [ - "appsId", - "modulesId", - "versionsId", - "instancesId" - ], - "httpMethod": "POST", - "parameters": { - "appsId": { - "location": "path", - "description": "Part of `name`. Name of the resource requested. Example: apps/myapp/modules/default/versions/v1/instances/instance-1.", - "required": true, - "type": "string" - }, - "instancesId": { - "location": "path", - "description": "Part of `name`. See documentation of `appsId`.", - "required": true, - "type": "string" - }, - "modulesId": { - "location": "path", - "description": "Part of `name`. See documentation of `appsId`.", - "required": true, - "type": "string" - }, - "versionsId": { - "description": "Part of `name`. See documentation of `appsId`.", - "required": true, - "type": "string", - "location": "path" - } - }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta4/apps/{appsId}/modules/{modulesId}/versions/{versionsId}/instances/{instancesId}:debug", - "path": "v1beta4/apps/{appsId}/modules/{modulesId}/versions/{versionsId}/instances/{instancesId}:debug", - "id": "appengine.apps.modules.versions.instances.debug" + ] }, "delete": { "description": "Stops a running instance.", + "flatPath": "v1beta4/apps/{appsId}/modules/{modulesId}/versions/{versionsId}/instances/{instancesId}", + "httpMethod": "DELETE", + "id": "appengine.apps.modules.versions.instances.delete", + "parameterOrder": [ + "appsId", + "modulesId", + "versionsId", + "instancesId" + ], + "parameters": { + "appsId": { + "description": "Part of `name`. Name of the resource requested. Example: apps/myapp/modules/default/versions/v1/instances/instance-1.", + "location": "path", + "required": true, + "type": "string" + }, + "instancesId": { + "description": "Part of `name`. See documentation of `appsId`.", + "location": "path", + "required": true, + "type": "string" + }, + "modulesId": { + "description": "Part of `name`. See documentation of `appsId`.", + "location": "path", + "required": true, + "type": "string" + }, + "versionsId": { + "description": "Part of `name`. See documentation of `appsId`.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1beta4/apps/{appsId}/modules/{modulesId}/versions/{versionsId}/instances/{instancesId}", "response": { "$ref": "Operation" }, - "parameterOrder": [ - "appsId", - "modulesId", - "versionsId", - "instancesId" - ], - "httpMethod": "DELETE", "scopes": [ "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "appsId": { - "location": "path", - "description": "Part of `name`. Name of the resource requested. Example: apps/myapp/modules/default/versions/v1/instances/instance-1.", - "required": true, - "type": "string" - }, - "instancesId": { - "description": "Part of `name`. See documentation of `appsId`.", - "required": true, - "type": "string", - "location": "path" - }, - "modulesId": { - "description": "Part of `name`. See documentation of `appsId`.", - "required": true, - "type": "string", - "location": "path" - }, - "versionsId": { - "description": "Part of `name`. See documentation of `appsId`.", - "required": true, - "type": "string", - "location": "path" - } - }, - "flatPath": "v1beta4/apps/{appsId}/modules/{modulesId}/versions/{versionsId}/instances/{instancesId}", - "path": "v1beta4/apps/{appsId}/modules/{modulesId}/versions/{versionsId}/instances/{instancesId}", - "id": "appengine.apps.modules.versions.instances.delete" + ] }, "get": { + "description": "Gets instance information.", + "flatPath": "v1beta4/apps/{appsId}/modules/{modulesId}/versions/{versionsId}/instances/{instancesId}", "httpMethod": "GET", - "response": { - "$ref": "Instance" - }, + "id": "appengine.apps.modules.versions.instances.get", "parameterOrder": [ "appsId", "modulesId", @@ -351,45 +766,44 @@ "parameters": { "appsId": { "description": "Part of `name`. Name of the resource requested. Example: apps/myapp/modules/default/versions/v1/instances/instance-1.", + "location": "path", "required": true, - "type": "string", - "location": "path" + "type": "string" }, "instancesId": { - "location": "path", "description": "Part of `name`. See documentation of `appsId`.", + "location": "path", "required": true, "type": "string" }, "modulesId": { "description": "Part of `name`. See documentation of `appsId`.", + "location": "path", "required": true, - "type": "string", - "location": "path" + "type": "string" }, "versionsId": { "description": "Part of `name`. See documentation of `appsId`.", + "location": "path", "required": true, - "type": "string", - "location": "path" + "type": "string" } }, + "path": "v1beta4/apps/{appsId}/modules/{modulesId}/versions/{versionsId}/instances/{instancesId}", + "response": { + "$ref": "Instance" + }, "scopes": [ "https://www.googleapis.com/auth/appengine.admin", "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/cloud-platform.read-only" - ], - "flatPath": "v1beta4/apps/{appsId}/modules/{modulesId}/versions/{versionsId}/instances/{instancesId}", - "id": "appengine.apps.modules.versions.instances.get", - "path": "v1beta4/apps/{appsId}/modules/{modulesId}/versions/{versionsId}/instances/{instancesId}", - "description": "Gets instance information." + ] }, "list": { "description": "Lists the instances of a version.Tip: To aggregate details about instances over time, see the Stackdriver Monitoring API (https://cloud.google.com/monitoring/api/ref_v3/rest/v3/projects.timeSeries/list).", + "flatPath": "v1beta4/apps/{appsId}/modules/{modulesId}/versions/{versionsId}/instances", "httpMethod": "GET", - "response": { - "$ref": "ListInstancesResponse" - }, + "id": "appengine.apps.modules.versions.instances.list", "parameterOrder": [ "appsId", "modulesId", @@ -398,544 +812,419 @@ "parameters": { "appsId": { "description": "Part of `name`. Name of the resource requested. Example: apps/myapp/modules/default/versions/v1.", + "location": "path", "required": true, - "type": "string", - "location": "path" + "type": "string" }, - "pageToken": { - "location": "query", - "description": "Continuation token for fetching the next page of results.", + "modulesId": { + "description": "Part of `name`. See documentation of `appsId`.", + "location": "path", + "required": true, "type": "string" }, "pageSize": { - "location": "query", "description": "Maximum results to return per page.", "format": "int32", + "location": "query", "type": "integer" }, - "modulesId": { - "location": "path", - "description": "Part of `name`. See documentation of `appsId`.", - "required": true, + "pageToken": { + "description": "Continuation token for fetching the next page of results.", + "location": "query", "type": "string" }, "versionsId": { "description": "Part of `name`. See documentation of `appsId`.", + "location": "path", "required": true, - "type": "string", - "location": "path" + "type": "string" } }, + "path": "v1beta4/apps/{appsId}/modules/{modulesId}/versions/{versionsId}/instances", + "response": { + "$ref": "ListInstancesResponse" + }, "scopes": [ "https://www.googleapis.com/auth/appengine.admin", "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/cloud-platform.read-only" - ], - "flatPath": "v1beta4/apps/{appsId}/modules/{modulesId}/versions/{versionsId}/instances", - "id": "appengine.apps.modules.versions.instances.list", - "path": "v1beta4/apps/{appsId}/modules/{modulesId}/versions/{versionsId}/instances" + ] } } } - }, - "methods": { - "delete": { - "description": "Deletes an existing version.", - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "appsId", - "modulesId", - "versionsId" - ], - "httpMethod": "DELETE", - "parameters": { - "appsId": { - "description": "Part of `name`. Name of the resource requested. Example: apps/myapp/modules/default/versions/v1.", - "required": true, - "type": "string", - "location": "path" - }, - "modulesId": { - "description": "Part of `name`. See documentation of `appsId`.", - "required": true, - "type": "string", - "location": "path" - }, - "versionsId": { - "description": "Part of `name`. See documentation of `appsId`.", - "required": true, - "type": "string", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta4/apps/{appsId}/modules/{modulesId}/versions/{versionsId}", - "path": "v1beta4/apps/{appsId}/modules/{modulesId}/versions/{versionsId}", - "id": "appengine.apps.modules.versions.delete" - }, - "get": { - "description": "Gets the specified Version resource. By default, only a BASIC_VIEW will be returned. Specify the FULL_VIEW parameter to get the full resource.", - "response": { - "$ref": "Version" - }, - "parameterOrder": [ - "appsId", - "modulesId", - "versionsId" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/appengine.admin", - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ], - "parameters": { - "appsId": { - "location": "path", - "description": "Part of `name`. Name of the resource requested. Example: apps/myapp/modules/default/versions/v1.", - "required": true, - "type": "string" - }, - "modulesId": { - "description": "Part of `name`. See documentation of `appsId`.", - "required": true, - "type": "string", - "location": "path" - }, - "versionsId": { - "location": "path", - "description": "Part of `name`. See documentation of `appsId`.", - "required": true, - "type": "string" - }, - "view": { - "enum": [ - "BASIC", - "FULL" - ], - "description": "Controls the set of fields returned in the Get response.", - "type": "string", - "location": "query" - } - }, - "flatPath": "v1beta4/apps/{appsId}/modules/{modulesId}/versions/{versionsId}", - "path": "v1beta4/apps/{appsId}/modules/{modulesId}/versions/{versionsId}", - "id": "appengine.apps.modules.versions.get" - }, - "list": { - "httpMethod": "GET", - "response": { - "$ref": "ListVersionsResponse" - }, - "parameterOrder": [ - "appsId", - "modulesId" - ], - "parameters": { - "pageSize": { - "description": "Maximum results to return per page.", - "format": "int32", - "type": "integer", - "location": "query" - }, - "modulesId": { - "description": "Part of `name`. See documentation of `appsId`.", - "required": true, - "type": "string", - "location": "path" - }, - "view": { - "enum": [ - "BASIC", - "FULL" - ], - "description": "Controls the set of fields returned in the List response.", - "type": "string", - "location": "query" - }, - "appsId": { - "location": "path", - "description": "Part of `name`. Name of the resource requested. Example: apps/myapp/modules/default.", - "required": true, - "type": "string" - }, - "pageToken": { - "description": "Continuation token for fetching the next page of results.", - "type": "string", - "location": "query" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/appengine.admin", - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ], - "flatPath": "v1beta4/apps/{appsId}/modules/{modulesId}/versions", - "id": "appengine.apps.modules.versions.list", - "path": "v1beta4/apps/{appsId}/modules/{modulesId}/versions", - "description": "Lists the versions of a module." - }, - "patch": { - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "appsId", - "modulesId", - "versionsId" - ], - "httpMethod": "PATCH", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "appsId": { - "description": "Part of `name`. Name of the resource to update. Example: apps/myapp/modules/default/versions/1.", - "required": true, - "type": "string", - "location": "path" - }, - "modulesId": { - "description": "Part of `name`. See documentation of `appsId`.", - "required": true, - "type": "string", - "location": "path" - }, - "versionsId": { - "description": "Part of `name`. See documentation of `appsId`.", - "required": true, - "type": "string", - "location": "path" - }, - "mask": { - "location": "query", - "description": "Standard field mask for the set of fields to be updated.", - "format": "google-fieldmask", - "type": "string" - } - }, - "flatPath": "v1beta4/apps/{appsId}/modules/{modulesId}/versions/{versionsId}", - "path": "v1beta4/apps/{appsId}/modules/{modulesId}/versions/{versionsId}", - "id": "appengine.apps.modules.versions.patch", - "description": "Updates the specified Version resource. You can specify the following fields depending on the App Engine environment and type of scaling that the version resource uses:\nserving_status (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1beta4/apps.modules.versions#Version.FIELDS.serving_status): For Version resources that use basic scaling, manual scaling, or run in the App Engine flexible environment.\ninstance_class (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1beta4/apps.modules.versions#Version.FIELDS.instance_class): For Version resources that run in the App Engine standard environment.\nautomatic_scaling.min_idle_instances (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1beta4/apps.modules.versions#Version.FIELDS.automatic_scaling): For Version resources that use automatic scaling and run in the App Engine standard environment.\nautomatic_scaling.max_idle_instances (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1beta4/apps.modules.versions#Version.FIELDS.automatic_scaling): For Version resources that use automatic scaling and run in the App Engine standard environment.", - "request": { - "$ref": "Version" - } - }, - "create": { - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "appsId", - "modulesId" - ], - "httpMethod": "POST", - "parameters": { - "modulesId": { - "description": "Part of `name`. See documentation of `appsId`.", - "required": true, - "type": "string", - "location": "path" - }, - "appsId": { - "description": "Part of `name`. Name of the resource to update. Example: apps/myapp/modules/default.", - "required": true, - "type": "string", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta4/apps/{appsId}/modules/{modulesId}/versions", - "path": "v1beta4/apps/{appsId}/modules/{modulesId}/versions", - "id": "appengine.apps.modules.versions.create", - "request": { - "$ref": "Version" - }, - "description": "Deploys code and resource files to a new version." - } } } } }, "operations": { "methods": { - "list": { - "response": { - "$ref": "ListOperationsResponse" - }, - "parameterOrder": [ - "appsId" - ], - "httpMethod": "GET", - "parameters": { - "pageSize": { - "description": "The standard list page size.", - "format": "int32", - "type": "integer", - "location": "query" - }, - "filter": { - "location": "query", - "description": "The standard list filter.", - "type": "string" - }, - "appsId": { - "description": "Part of `name`. The name of the operation's parent resource.", - "required": true, - "type": "string", - "location": "path" - }, - "pageToken": { - "description": "The standard list page token.", - "type": "string", - "location": "query" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/appengine.admin", - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ], - "flatPath": "v1beta4/apps/{appsId}/operations", - "path": "v1beta4/apps/{appsId}/operations", - "id": "appengine.apps.operations.list", - "description": "Lists operations that match the specified filter in the request. If the server doesn't support this method, it returns UNIMPLEMENTED.NOTE: the name binding allows API services to override the binding to use different resource name schemes, such as users/*/operations. To override the binding, API services can add a binding such as \"/v1/{name=users/*}/operations\" to their service configuration. For backwards compatibility, the default name includes the operations collection id, however overriding users must ensure the name binding is the parent resource, without the operations collection id." - }, "get": { - "response": { - "$ref": "Operation" - }, + "description": "Gets the latest state of a long-running operation. Clients can use this method to poll the operation result at intervals as recommended by the API service.", + "flatPath": "v1beta4/apps/{appsId}/operations/{operationsId}", + "httpMethod": "GET", + "id": "appengine.apps.operations.get", "parameterOrder": [ "appsId", "operationsId" ], - "httpMethod": "GET", "parameters": { "appsId": { "description": "Part of `name`. The name of the operation resource.", + "location": "path", "required": true, - "type": "string", - "location": "path" + "type": "string" }, "operationsId": { "description": "Part of `name`. See documentation of `appsId`.", + "location": "path", "required": true, - "type": "string", - "location": "path" + "type": "string" } }, + "path": "v1beta4/apps/{appsId}/operations/{operationsId}", + "response": { + "$ref": "Operation" + }, "scopes": [ "https://www.googleapis.com/auth/appengine.admin", "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/cloud-platform.read-only" - ], - "flatPath": "v1beta4/apps/{appsId}/operations/{operationsId}", - "path": "v1beta4/apps/{appsId}/operations/{operationsId}", - "id": "appengine.apps.operations.get", - "description": "Gets the latest state of a long-running operation. Clients can use this method to poll the operation result at intervals as recommended by the API service." - } - } - }, - "locations": { - "methods": { + ] + }, "list": { - "description": "Lists information about the supported locations for this service.", - "response": { - "$ref": "ListLocationsResponse" - }, + "description": "Lists operations that match the specified filter in the request. If the server doesn't support this method, it returns UNIMPLEMENTED.NOTE: the name binding allows API services to override the binding to use different resource name schemes, such as users/*/operations. To override the binding, API services can add a binding such as \"/v1/{name=users/*}/operations\" to their service configuration. For backwards compatibility, the default name includes the operations collection id, however overriding users must ensure the name binding is the parent resource, without the operations collection id.", + "flatPath": "v1beta4/apps/{appsId}/operations", + "httpMethod": "GET", + "id": "appengine.apps.operations.list", "parameterOrder": [ "appsId" ], - "httpMethod": "GET", "parameters": { "appsId": { + "description": "Part of `name`. The name of the operation's parent resource.", "location": "path", - "description": "Part of `name`. The resource that owns the locations collection, if applicable.", "required": true, "type": "string" }, - "pageToken": { - "description": "The standard list page token.", - "type": "string", - "location": "query" + "filter": { + "description": "The standard list filter.", + "location": "query", + "type": "string" }, "pageSize": { "description": "The standard list page size.", "format": "int32", - "type": "integer", - "location": "query" - }, - "filter": { "location": "query", - "description": "The standard list filter.", - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/appengine.admin", - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ], - "flatPath": "v1beta4/apps/{appsId}/locations", - "path": "v1beta4/apps/{appsId}/locations", - "id": "appengine.apps.locations.list" - }, - "get": { - "description": "Get information about a location.", - "response": { - "$ref": "Location" - }, - "parameterOrder": [ - "appsId", - "locationsId" - ], - "httpMethod": "GET", - "parameters": { - "appsId": { - "location": "path", - "description": "Part of `name`. Resource name for the location.", - "required": true, - "type": "string" + "type": "integer" }, - "locationsId": { - "description": "Part of `name`. See documentation of `appsId`.", - "required": true, - "type": "string", - "location": "path" + "pageToken": { + "description": "The standard list page token.", + "location": "query", + "type": "string" } }, + "path": "v1beta4/apps/{appsId}/operations", + "response": { + "$ref": "ListOperationsResponse" + }, "scopes": [ "https://www.googleapis.com/auth/appengine.admin", "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/cloud-platform.read-only" - ], - "flatPath": "v1beta4/apps/{appsId}/locations/{locationsId}", - "path": "v1beta4/apps/{appsId}/locations/{locationsId}", - "id": "appengine.apps.locations.get" + ] } } } } } }, - "parameters": { - "upload_protocol": { - "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", - "type": "string", - "location": "query" - }, - "prettyPrint": { - "description": "Returns response with indentations and line breaks.", - "type": "boolean", - "default": "true", - "location": "query" - }, - "fields": { - "description": "Selector specifying which fields to include in a partial response.", - "type": "string", - "location": "query" - }, - "uploadType": { - "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", - "type": "string", - "location": "query" - }, - "$.xgafv": { - "description": "V1 error format.", - "type": "string", - "enumDescriptions": [ - "v1 error format", - "v2 error format" - ], - "location": "query", - "enum": [ - "1", - "2" - ] - }, - "callback": { - "description": "JSONP", - "type": "string", - "location": "query" - }, - "alt": { - "enum": [ - "json", - "media", - "proto" - ], - "type": "string", - "enumDescriptions": [ - "Responses with Content-Type of application/json", - "Media download with context-dependent Content-Type", - "Responses with Content-Type of application/x-protobuf" - ], - "location": "query", - "description": "Data format for response.", - "default": "json" - }, - "access_token": { - "description": "OAuth access token.", - "type": "string", - "location": "query" - }, - "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.", - "type": "string", - "location": "query" - }, - "quotaUser": { - "location": "query", - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", - "type": "string" - }, - "pp": { - "description": "Pretty-print response.", - "type": "boolean", - "default": "true", - "location": "query" - }, - "oauth_token": { - "description": "OAuth 2.0 token for the current user.", - "type": "string", - "location": "query" - }, - "bearer_token": { - "location": "query", - "description": "OAuth bearer token.", - "type": "string" - } - }, + "revision": "20180320", + "rootUrl": "https://appengine.googleapis.com/", "schemas": { - "ListModulesResponse": { + "ApiConfigHandler": { + "description": "Google Cloud Endpoints (https://cloud.google.com/appengine/docs/python/endpoints/) configuration for API handlers.", + "id": "ApiConfigHandler", "properties": { - "nextPageToken": { - "description": "Continuation token for fetching the next page of results.", + "authFailAction": { + "description": "Action to take when users access resources that require authentication. Defaults to redirect.", + "enum": [ + "AUTH_FAIL_ACTION_UNSPECIFIED", + "AUTH_FAIL_ACTION_REDIRECT", + "AUTH_FAIL_ACTION_UNAUTHORIZED" + ], + "enumDescriptions": [ + "Not specified. AUTH_FAIL_ACTION_REDIRECT is assumed.", + "Redirects user to \"accounts.google.com\". The user is redirected back to the application URL after signing in or creating an account.", + "Rejects request with a 401 HTTP status code and an error message." + ], "type": "string" }, - "modules": { - "description": "The modules belonging to the requested application.", - "type": "array", - "items": { - "$ref": "Module" - } + "login": { + "description": "Level of login required to access this resource. Defaults to optional.", + "enum": [ + "LOGIN_UNSPECIFIED", + "LOGIN_OPTIONAL", + "LOGIN_ADMIN", + "LOGIN_REQUIRED" + ], + "enumDescriptions": [ + "Not specified. LOGIN_OPTIONAL is assumed.", + "Does not require that the user is signed in.", + "If the user is not signed in, the auth_fail_action is taken. In addition, if the user is not an administrator for the application, they are given an error message regardless of auth_fail_action. If the user is an administrator, the handler proceeds.", + "If the user has signed in, the handler proceeds normally. Otherwise, the auth_fail_action is taken." + ], + "type": "string" + }, + "script": { + "description": "Path to the script from the application root directory.", + "type": "string" + }, + "securityLevel": { + "description": "Security (HTTPS) enforcement for this URL.", + "enum": [ + "SECURE_UNSPECIFIED", + "SECURE_DEFAULT", + "SECURE_NEVER", + "SECURE_OPTIONAL", + "SECURE_ALWAYS" + ], + "enumDescriptions": [ + "Not specified.", + "Both HTTP and HTTPS requests with URLs that match the handler succeed without redirects. The application can examine the request to determine which protocol was used, and respond accordingly.", + "Requests for a URL that match this handler that use HTTPS are automatically redirected to the HTTP equivalent URL.", + "Both HTTP and HTTPS requests with URLs that match the handler succeed without redirects. The application can examine the request to determine which protocol was used and respond accordingly.", + "Requests for a URL that match this handler that do not use HTTPS are automatically redirected to the HTTPS URL with the same path. Query parameters are reserved for the redirect." + ], + "type": "string" + }, + "url": { + "description": "URL to serve the endpoint at.", + "type": "string" + } + }, + "type": "object" + }, + "ApiEndpointHandler": { + "description": "Uses Google Cloud Endpoints to handle requests.", + "id": "ApiEndpointHandler", + "properties": { + "scriptPath": { + "description": "Path to the script from the application root directory.", + "type": "string" + } + }, + "type": "object" + }, + "Application": { + "description": "An Application resource contains the top-level configuration of an App Engine application.", + "id": "Application", + "properties": { + "authDomain": { + "description": "Google Apps authentication domain that controls which users can access this application.Defaults to open access for any Google Account.", + "type": "string" + }, + "codeBucket": { + "description": "Google Cloud Storage bucket that can be used for storing files associated with this application. This bucket is associated with the application and can be used by the gcloud deployment commands.@OutputOnly", + "type": "string" + }, + "defaultBucket": { + "description": "Google Cloud Storage bucket that can be used by this application to store content.@OutputOnly", + "type": "string" + }, + "defaultCookieExpiration": { + "description": "Cookie expiration policy for this application.", + "format": "google-duration", + "type": "string" + }, + "defaultHostname": { + "description": "Hostname used to reach the application, as resolved by App Engine.@OutputOnly", + "type": "string" + }, + "dispatchRules": { + "description": "HTTP path dispatch rules for requests to the application that do not explicitly target a module or version. Rules are order-dependent.@OutputOnly", + "items": { + "$ref": "UrlDispatchRule" + }, + "type": "array" + }, + "iap": { + "$ref": "IdentityAwareProxy" + }, + "id": { + "description": "Identifier of the Application resource. This identifier is equivalent to the project ID of the Google Cloud Platform project where you want to deploy your application. Example: myapp.", + "type": "string" + }, + "location": { + "description": "Location from which this application will be run. Application instances will run out of data centers in the chosen location, which is also where all of the application's end user content is stored.Defaults to us-central.Options are:us-central - Central USeurope-west - Western Europeus-east1 - Eastern US", + "type": "string" + }, + "name": { + "description": "Full path to the Application resource in the API. Example: apps/myapp.@OutputOnly", + "type": "string" + } + }, + "type": "object" + }, + "AutomaticScaling": { + "description": "Automatic scaling is based on request rate, response latencies, and other application metrics.", + "id": "AutomaticScaling", + "properties": { + "coolDownPeriod": { + "description": "Amount of time that the Autoscaler (https://cloud.google.com/compute/docs/autoscaler/) should wait between changes to the number of virtual machines. Only applicable for VM runtimes.", + "format": "google-duration", + "type": "string" + }, + "cpuUtilization": { + "$ref": "CpuUtilization", + "description": "Target scaling by CPU usage." + }, + "diskUtilization": { + "$ref": "DiskUtilization", + "description": "Target scaling by disk usage." + }, + "maxConcurrentRequests": { + "description": "Number of concurrent requests an automatic scaling instance can accept before the scheduler spawns a new instance.Defaults to a runtime-specific value.", + "format": "int32", + "type": "integer" + }, + "maxIdleInstances": { + "description": "Maximum number of idle instances that should be maintained for this version.", + "format": "int32", + "type": "integer" + }, + "maxPendingLatency": { + "description": "Maximum amount of time that a request should wait in the pending queue before starting a new instance to handle it.", + "format": "google-duration", + "type": "string" + }, + "maxTotalInstances": { + "description": "Maximum number of instances that should be started to handle requests.", + "format": "int32", + "type": "integer" + }, + "minIdleInstances": { + "description": "Minimum number of idle instances that should be maintained for this version. Only applicable for the default version of a module.", + "format": "int32", + "type": "integer" + }, + "minPendingLatency": { + "description": "Minimum amount of time a request should wait in the pending queue before starting a new instance to handle it.", + "format": "google-duration", + "type": "string" + }, + "minTotalInstances": { + "description": "Minimum number of instances that should be maintained for this version.", + "format": "int32", + "type": "integer" + }, + "networkUtilization": { + "$ref": "NetworkUtilization", + "description": "Target scaling by network usage." + }, + "requestUtilization": { + "$ref": "RequestUtilization", + "description": "Target scaling by request utilization." + } + }, + "type": "object" + }, + "BasicScaling": { + "description": "A module with basic scaling will create an instance when the application receives a request. The instance will be turned down when the app becomes idle. Basic scaling is ideal for work that is intermittent or driven by user activity.", + "id": "BasicScaling", + "properties": { + "idleTimeout": { + "description": "Duration of time after the last request that an instance must wait before the instance is shut down.", + "format": "google-duration", + "type": "string" + }, + "maxInstances": { + "description": "Maximum number of instances to create for this version.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "ContainerInfo": { + "description": "Docker image that is used to create a container and start a VM instance for the version that you deploy. Only applicable for instances running in the App Engine flexible environment.", + "id": "ContainerInfo", + "properties": { + "image": { + "description": "URI to the hosted container image in Google Container Registry. The URI must be fully qualified and include a tag or digest. Examples: \"gcr.io/my-project/image:tag\" or \"gcr.io/my-project/image@digest\"", + "type": "string" + } + }, + "type": "object" + }, + "CpuUtilization": { + "description": "Target scaling by CPU usage.", + "id": "CpuUtilization", + "properties": { + "aggregationWindowLength": { + "description": "Period of time over which CPU utilization is calculated.", + "format": "google-duration", + "type": "string" + }, + "targetUtilization": { + "description": "Target CPU utilization ratio to maintain when scaling. Must be between 0 and 1.", + "format": "double", + "type": "number" + } + }, + "type": "object" + }, + "CreateVersionMetadataV1": { + "description": "Metadata for the given google.longrunning.Operation during a google.appengine.v1.CreateVersionRequest.", + "id": "CreateVersionMetadataV1", + "properties": { + "cloudBuildId": { + "description": "The Cloud Build ID if one was created as part of the version create. @OutputOnly", + "type": "string" + } + }, + "type": "object" + }, + "CreateVersionMetadataV1Alpha": { + "description": "Metadata for the given google.longrunning.Operation during a google.appengine.v1alpha.CreateVersionRequest.", + "id": "CreateVersionMetadataV1Alpha", + "properties": { + "cloudBuildId": { + "description": "The Cloud Build ID if one was created as part of the version create. @OutputOnly", + "type": "string" + } + }, + "type": "object" + }, + "CreateVersionMetadataV1Beta": { + "description": "Metadata for the given google.longrunning.Operation during a google.appengine.v1beta.CreateVersionRequest.", + "id": "CreateVersionMetadataV1Beta", + "properties": { + "cloudBuildId": { + "description": "The Cloud Build ID if one was created as part of the version create. @OutputOnly", + "type": "string" + } + }, + "type": "object" + }, + "DebugInstanceRequest": { + "description": "Request message for Instances.DebugInstance.", + "id": "DebugInstanceRequest", + "properties": { + "sshKey": { + "description": "Public SSH key to add to the instance. Examples:\n[USERNAME]:ssh-rsa [KEY_VALUE] [USERNAME]\n[USERNAME]:ssh-rsa [KEY_VALUE] google-ssh {\"userName\":\"[USERNAME]\",\"expireOn\":\"[EXPIRE_TIME]\"}For more information, see Adding and Removing SSH Keys (https://cloud.google.com/compute/docs/instances/adding-removing-ssh-keys).", + "type": "string" } }, - "id": "ListModulesResponse", - "description": "Response message for Modules.ListModules.", "type": "object" }, "Deployment": { "description": "Code and application artifacts used to deploy a version to App Engine.", - "type": "object", + "id": "Deployment", "properties": { + "container": { + "$ref": "ContainerInfo", + "description": "The Docker image for the container that runs the version. Only applicable for instances running in the App Engine flexible environment." + }, "files": { "additionalProperties": { "$ref": "FileInfo" @@ -943,29 +1232,765 @@ "description": "Manifest of the files stored in Google Cloud Storage that are included as part of this version. All files must be readable using the credentials supplied with this call.", "type": "object" }, - "container": { - "description": "The Docker image for the container that runs the version. Only applicable for instances running in the App Engine flexible environment.", - "$ref": "ContainerInfo" - }, "sourceReferences": { "description": "Origin of the source code for this deployment. There can be more than one source reference per version if source code is distributed among multiple repositories.", - "type": "array", "items": { "$ref": "SourceReference" - } + }, + "type": "array" } }, - "id": "Deployment" + "type": "object" + }, + "DiskUtilization": { + "description": "Target scaling by disk usage. Only applicable for VM runtimes.", + "id": "DiskUtilization", + "properties": { + "targetReadBytesPerSec": { + "description": "Target bytes read per second.", + "format": "int32", + "type": "integer" + }, + "targetReadOpsPerSec": { + "description": "Target ops read per second.", + "format": "int32", + "type": "integer" + }, + "targetWriteBytesPerSec": { + "description": "Target bytes written per second.", + "format": "int32", + "type": "integer" + }, + "targetWriteOpsPerSec": { + "description": "Target ops written per second.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "EndpointsApiService": { + "description": "Cloud Endpoints (https://cloud.google.com/endpoints) configuration. The Endpoints API Service provides tooling for serving Open API and gRPC endpoints via an NGINX proxy. Only valid for App Engine Flexible environment deployments..The fields here refer to the name and configuration id of a \"service\" resource in the Service Management API (https://cloud.google.com/service-management/overview).", + "id": "EndpointsApiService", + "properties": { + "configId": { + "description": "Endpoints service configuration id as specified by the Service Management API. For example \"2016-09-19r1\"By default, the Endpoints service configuration id is fixed and config_id must be specified. To keep the Endpoints service configuration id updated with each rollout, specify RolloutStrategy.MANAGED and omit config_id.", + "type": "string" + }, + "name": { + "description": "Endpoints service name which is the name of the \"service\" resource in the Service Management API. For example \"myapi.endpoints.myproject.cloud.goog\"", + "type": "string" + }, + "rolloutStrategy": { + "description": "Endpoints rollout strategy. If FIXED, config_id must be specified. If MANAGED, config_id must be omitted.", + "enum": [ + "UNSPECIFIED_ROLLOUT_STRATEGY", + "FIXED", + "MANAGED" + ], + "enumDescriptions": [ + "Not specified. Defaults to FIXED.", + "Endpoints service configuration id will be fixed to the configuration id specified by config_id.", + "Endpoints service configuration id will be updated with each rollout." + ], + "type": "string" + } + }, + "type": "object" + }, + "ErrorHandler": { + "description": "Custom static error page to be served when an error occurs.", + "id": "ErrorHandler", + "properties": { + "errorCode": { + "description": "Error condition this handler applies to.", + "enum": [ + "ERROR_CODE_UNSPECIFIED", + "ERROR_CODE_DEFAULT", + "ERROR_CODE_OVER_QUOTA", + "ERROR_CODE_DOS_API_DENIAL", + "ERROR_CODE_TIMEOUT" + ], + "enumDescriptions": [ + "Not specified. ERROR_CODE_DEFAULT is assumed.", + "All other error types.", + "Application has exceeded a resource quota.", + "Client blocked by the application's Denial of Service protection configuration.", + "Deadline reached before the application responds." + ], + "type": "string" + }, + "mimeType": { + "description": "MIME type of file. Defaults to text/html.", + "type": "string" + }, + "staticFile": { + "description": "Static file content to be served for this error.", + "type": "string" + } + }, + "type": "object" + }, + "FileInfo": { + "description": "Single source file that is part of the version to be deployed. Each source file that is deployed must be specified separately.", + "id": "FileInfo", + "properties": { + "mimeType": { + "description": "The MIME type of the file.Defaults to the value from Google Cloud Storage.", + "type": "string" + }, + "sha1Sum": { + "description": "The SHA1 hash of the file, in hex.", + "type": "string" + }, + "sourceUrl": { + "description": "URL source to use to fetch this file. Must be a URL to a resource in Google Cloud Storage in the form 'http(s)://storage.googleapis.com/\u003cbucket\u003e/\u003cobject\u003e'.", + "type": "string" + } + }, + "type": "object" + }, + "HealthCheck": { + "description": "Health checking configuration for VM instances. Unhealthy instances are killed and replaced with new instances. Only applicable for instances in App Engine flexible environment.", + "id": "HealthCheck", + "properties": { + "checkInterval": { + "description": "Interval between health checks.", + "format": "google-duration", + "type": "string" + }, + "disableHealthCheck": { + "description": "Whether to explicitly disable health checks for this instance.", + "type": "boolean" + }, + "healthyThreshold": { + "description": "Number of consecutive successful health checks required before receiving traffic.", + "format": "uint32", + "type": "integer" + }, + "host": { + "description": "Host header to send when performing an HTTP health check. Example: \"myapp.appspot.com\"", + "type": "string" + }, + "restartThreshold": { + "description": "Number of consecutive failed health checks required before an instance is restarted.", + "format": "uint32", + "type": "integer" + }, + "timeout": { + "description": "Time before the health check is considered failed.", + "format": "google-duration", + "type": "string" + }, + "unhealthyThreshold": { + "description": "Number of consecutive failed health checks required before removing traffic.", + "format": "uint32", + "type": "integer" + } + }, + "type": "object" + }, + "IdentityAwareProxy": { + "description": "Identity-Aware Proxy", + "id": "IdentityAwareProxy", + "properties": { + "enabled": { + "description": "Whether the serving infrastructure will authenticate and authorize all incoming requests.If true, the oauth2_client_id and oauth2_client_secret fields must be non-empty.", + "type": "boolean" + }, + "oauth2ClientId": { + "description": "OAuth2 client ID to use for the authentication flow.", + "type": "string" + }, + "oauth2ClientSecret": { + "description": "For security reasons, this value cannot be retrieved via the API. Instead, the SHA-256 hash of the value is returned in the oauth2_client_secret_sha256 field.@InputOnly", + "type": "string" + }, + "oauth2ClientSecretSha256": { + "description": "Hex-encoded SHA-256 hash of the client secret.@OutputOnly", + "type": "string" + } + }, + "type": "object" + }, + "Instance": { + "description": "An Instance resource is the computing unit that App Engine uses to automatically scale an application.", + "id": "Instance", + "properties": { + "appEngineRelease": { + "description": "App Engine release this instance is running on.@OutputOnly", + "type": "string" + }, + "availability": { + "description": "Availability of the instance.@OutputOnly", + "enum": [ + "UNSPECIFIED", + "RESIDENT", + "DYNAMIC" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, + "averageLatency": { + "description": "Average latency (ms) over the last minute.@OutputOnly", + "format": "int32", + "type": "integer" + }, + "errors": { + "description": "Number of errors since this instance was started.@OutputOnly", + "format": "uint32", + "type": "integer" + }, + "id": { + "description": "Relative name of the instance within the version. Example: instance-1.@OutputOnly", + "type": "string" + }, + "memoryUsage": { + "description": "Total memory in use (bytes).@OutputOnly", + "format": "int64", + "type": "string" + }, + "name": { + "description": "Full path to the Instance resource in the API. Example: apps/myapp/modules/default/versions/v1/instances/instance-1.@OutputOnly", + "type": "string" + }, + "qps": { + "description": "Average queries per second (QPS) over the last minute.@OutputOnly", + "format": "float", + "type": "number" + }, + "requests": { + "description": "Number of requests since this instance was started.@OutputOnly", + "format": "int32", + "type": "integer" + }, + "startTimestamp": { + "description": "Time that this instance was started.@OutputOnly", + "format": "google-datetime", + "type": "string" + }, + "vmId": { + "description": "Virtual machine ID of this instance. Only applicable for instances in App Engine flexible environment.@OutputOnly", + "type": "string" + }, + "vmIp": { + "description": "The IP address of this instance. Only applicable for instances in App Engine flexible environment.@OutputOnly", + "type": "string" + }, + "vmName": { + "description": "Name of the virtual machine where this instance lives. Only applicable for instances in App Engine flexible environment.@OutputOnly", + "type": "string" + }, + "vmStatus": { + "description": "Status of the virtual machine where this instance lives. Only applicable for instances in App Engine flexible environment.@OutputOnly", + "type": "string" + }, + "vmUnlocked": { + "description": "Whether this instance is in debug mode. Only applicable for instances in App Engine flexible environment.@OutputOnly", + "type": "boolean" + }, + "vmZoneName": { + "description": "Zone where the virtual machine is located. Only applicable for instances in App Engine flexible environment.@OutputOnly", + "type": "string" + } + }, + "type": "object" + }, + "Library": { + "description": "Third-party Python runtime library that is required by the application.", + "id": "Library", + "properties": { + "name": { + "description": "Name of the library. Example: \"django\".", + "type": "string" + }, + "version": { + "description": "Version of the library to select, or \"latest\".", + "type": "string" + } + }, + "type": "object" + }, + "ListInstancesResponse": { + "description": "Response message for Instances.ListInstances.", + "id": "ListInstancesResponse", + "properties": { + "instances": { + "description": "The instances belonging to the requested version.", + "items": { + "$ref": "Instance" + }, + "type": "array" + }, + "nextPageToken": { + "description": "Continuation token for fetching the next page of results.", + "type": "string" + } + }, + "type": "object" + }, + "ListLocationsResponse": { + "description": "The response message for Locations.ListLocations.", + "id": "ListLocationsResponse", + "properties": { + "locations": { + "description": "A list of locations that matches the specified filter in the request.", + "items": { + "$ref": "Location" + }, + "type": "array" + }, + "nextPageToken": { + "description": "The standard List next-page token.", + "type": "string" + } + }, + "type": "object" + }, + "ListModulesResponse": { + "description": "Response message for Modules.ListModules.", + "id": "ListModulesResponse", + "properties": { + "modules": { + "description": "The modules belonging to the requested application.", + "items": { + "$ref": "Module" + }, + "type": "array" + }, + "nextPageToken": { + "description": "Continuation token for fetching the next page of results.", + "type": "string" + } + }, + "type": "object" + }, + "ListOperationsResponse": { + "description": "The response message for Operations.ListOperations.", + "id": "ListOperationsResponse", + "properties": { + "nextPageToken": { + "description": "The standard List next-page token.", + "type": "string" + }, + "operations": { + "description": "A list of operations that matches the specified filter in the request.", + "items": { + "$ref": "Operation" + }, + "type": "array" + } + }, + "type": "object" + }, + "ListVersionsResponse": { + "description": "Response message for Versions.ListVersions.", + "id": "ListVersionsResponse", + "properties": { + "nextPageToken": { + "description": "Continuation token for fetching the next page of results.", + "type": "string" + }, + "versions": { + "description": "The versions belonging to the requested module.", + "items": { + "$ref": "Version" + }, + "type": "array" + } + }, + "type": "object" + }, + "Location": { + "description": "A resource that represents Google Cloud Platform location.", + "id": "Location", + "properties": { + "displayName": { + "description": "The friendly name for this location, typically a nearby city name. For example, \"Tokyo\".", + "type": "string" + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Cross-service attributes for the location. For example\n{\"cloud.googleapis.com/region\": \"us-east1\"}\n", + "type": "object" + }, + "locationId": { + "description": "The canonical id for this location. For example: \"us-east1\".", + "type": "string" + }, + "metadata": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "description": "Service-specific metadata. For example the available capacity at the given location.", + "type": "object" + }, + "name": { + "description": "Resource name for the location, which may vary between implementations. For example: \"projects/example-project/locations/us-east1\"", + "type": "string" + } + }, + "type": "object" + }, + "LocationMetadata": { + "description": "Metadata for the given google.cloud.location.Location.", + "id": "LocationMetadata", + "properties": { + "flexibleEnvironmentAvailable": { + "description": "App Engine flexible environment is available in the given location.@OutputOnly", + "type": "boolean" + }, + "standardEnvironmentAvailable": { + "description": "App Engine standard environment is available in the given location.@OutputOnly", + "type": "boolean" + } + }, + "type": "object" + }, + "ManualScaling": { + "description": "A module with manual scaling runs continuously, allowing you to perform complex initialization and rely on the state of its memory over time.", + "id": "ManualScaling", + "properties": { + "instances": { + "description": "Number of instances to assign to the module at the start. This number can later be altered by using the Modules API (https://cloud.google.com/appengine/docs/python/modules/functions) set_num_instances() function.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "Module": { + "description": "A Module resource is a logical component of an application that can share state and communicate in a secure fashion with other modules. For example, an application that handles customer requests might include separate modules to handle tasks such as backend data analysis or API requests from mobile devices. Each module has a collection of versions that define a specific set of code used to implement the functionality of that module.", + "id": "Module", + "properties": { + "id": { + "description": "Relative name of the module within the application. Example: default.@OutputOnly", + "type": "string" + }, + "name": { + "description": "Full path to the Module resource in the API. Example: apps/myapp/modules/default.@OutputOnly", + "type": "string" + }, + "split": { + "$ref": "TrafficSplit", + "description": "Mapping that defines fractional HTTP traffic diversion to different versions within the module." + } + }, + "type": "object" + }, + "Network": { + "description": "Extra network settings. Only applicable for VM runtimes.", + "id": "Network", + "properties": { + "forwardedPorts": { + "description": "List of ports, or port pairs, to forward from the virtual machine to the application container.", + "items": { + "type": "string" + }, + "type": "array" + }, + "instanceTag": { + "description": "Tag to apply to the VM instance during creation.", + "type": "string" + }, + "name": { + "description": "Google Cloud Platform network where the virtual machines are created. Specify the short name, not the resource path.Defaults to default.", + "type": "string" + } + }, + "type": "object" + }, + "NetworkUtilization": { + "description": "Target scaling by network usage. Only applicable for VM runtimes.", + "id": "NetworkUtilization", + "properties": { + "targetReceivedBytesPerSec": { + "description": "Target bytes received per second.", + "format": "int32", + "type": "integer" + }, + "targetReceivedPacketsPerSec": { + "description": "Target packets received per second.", + "format": "int32", + "type": "integer" + }, + "targetSentBytesPerSec": { + "description": "Target bytes sent per second.", + "format": "int32", + "type": "integer" + }, + "targetSentPacketsPerSec": { + "description": "Target packets sent per second.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "Operation": { + "description": "This resource represents a long-running operation that is the result of a network API call.", + "id": "Operation", + "properties": { + "done": { + "description": "If the value is false, it means the operation is still in progress. If true, the operation is completed, and either error or response is available.", + "type": "boolean" + }, + "error": { + "$ref": "Status", + "description": "The error result of the operation in case of failure or cancellation." + }, + "metadata": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "description": "Service-specific metadata associated with the operation. It typically contains progress information and common metadata such as create time. Some services might not provide such metadata. Any method that returns a long-running operation should document the metadata type, if any.", + "type": "object" + }, + "name": { + "description": "The server-assigned name, which is only unique within the same service that originally returns it. If you use the default HTTP mapping, the name should have the format of operations/some/unique/name.", + "type": "string" + }, + "response": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "description": "The normal response of the operation in case of success. If the original method returns no data on success, such as Delete, the response is google.protobuf.Empty. If the original method is standard Get/Create/Update, the response should be the resource. For other methods, the response should have the type XxxResponse, where Xxx is the original method name. For example, if the original method name is TakeSnapshot(), the inferred response type is TakeSnapshotResponse.", + "type": "object" + } + }, + "type": "object" + }, + "OperationMetadata": { + "description": "Metadata for the given google.longrunning.Operation.", + "id": "OperationMetadata", + "properties": { + "endTime": { + "description": "Timestamp that this operation completed.@OutputOnly", + "format": "google-datetime", + "type": "string" + }, + "insertTime": { + "description": "Timestamp that this operation was created.@OutputOnly", + "format": "google-datetime", + "type": "string" + }, + "method": { + "description": "API method that initiated this operation. Example: google.appengine.v1beta4.Version.CreateVersion.@OutputOnly", + "type": "string" + }, + "operationType": { + "description": "Type of this operation. Deprecated, use method field instead. Example: \"create_version\".@OutputOnly", + "type": "string" + }, + "target": { + "description": "Name of the resource that this operation is acting on. Example: apps/myapp/modules/default.@OutputOnly", + "type": "string" + }, + "user": { + "description": "User who requested this operation.@OutputOnly", + "type": "string" + } + }, + "type": "object" + }, + "OperationMetadataV1": { + "description": "Metadata for the given google.longrunning.Operation.", + "id": "OperationMetadataV1", + "properties": { + "createVersionMetadata": { + "$ref": "CreateVersionMetadataV1" + }, + "endTime": { + "description": "Time that this operation completed.@OutputOnly", + "format": "google-datetime", + "type": "string" + }, + "ephemeralMessage": { + "description": "Ephemeral message that may change every time the operation is polled. @OutputOnly", + "type": "string" + }, + "insertTime": { + "description": "Time that this operation was created.@OutputOnly", + "format": "google-datetime", + "type": "string" + }, + "method": { + "description": "API method that initiated this operation. Example: google.appengine.v1.Versions.CreateVersion.@OutputOnly", + "type": "string" + }, + "target": { + "description": "Name of the resource that this operation is acting on. Example: apps/myapp/services/default.@OutputOnly", + "type": "string" + }, + "user": { + "description": "User who requested this operation.@OutputOnly", + "type": "string" + }, + "warning": { + "description": "Durable messages that persist on every operation poll. @OutputOnly", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "OperationMetadataV1Alpha": { + "description": "Metadata for the given google.longrunning.Operation.", + "id": "OperationMetadataV1Alpha", + "properties": { + "createVersionMetadata": { + "$ref": "CreateVersionMetadataV1Alpha" + }, + "endTime": { + "description": "Time that this operation completed.@OutputOnly", + "format": "google-datetime", + "type": "string" + }, + "ephemeralMessage": { + "description": "Ephemeral message that may change every time the operation is polled. @OutputOnly", + "type": "string" + }, + "insertTime": { + "description": "Time that this operation was created.@OutputOnly", + "format": "google-datetime", + "type": "string" + }, + "method": { + "description": "API method that initiated this operation. Example: google.appengine.v1alpha.Versions.CreateVersion.@OutputOnly", + "type": "string" + }, + "target": { + "description": "Name of the resource that this operation is acting on. Example: apps/myapp/services/default.@OutputOnly", + "type": "string" + }, + "user": { + "description": "User who requested this operation.@OutputOnly", + "type": "string" + }, + "warning": { + "description": "Durable messages that persist on every operation poll. @OutputOnly", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "OperationMetadataV1Beta": { + "description": "Metadata for the given google.longrunning.Operation.", + "id": "OperationMetadataV1Beta", + "properties": { + "createVersionMetadata": { + "$ref": "CreateVersionMetadataV1Beta" + }, + "endTime": { + "description": "Time that this operation completed.@OutputOnly", + "format": "google-datetime", + "type": "string" + }, + "ephemeralMessage": { + "description": "Ephemeral message that may change every time the operation is polled. @OutputOnly", + "type": "string" + }, + "insertTime": { + "description": "Time that this operation was created.@OutputOnly", + "format": "google-datetime", + "type": "string" + }, + "method": { + "description": "API method that initiated this operation. Example: google.appengine.v1beta.Versions.CreateVersion.@OutputOnly", + "type": "string" + }, + "target": { + "description": "Name of the resource that this operation is acting on. Example: apps/myapp/services/default.@OutputOnly", + "type": "string" + }, + "user": { + "description": "User who requested this operation.@OutputOnly", + "type": "string" + }, + "warning": { + "description": "Durable messages that persist on every operation poll. @OutputOnly", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "OperationMetadataV1Beta5": { + "description": "Metadata for the given google.longrunning.Operation.", + "id": "OperationMetadataV1Beta5", + "properties": { + "endTime": { + "description": "Timestamp that this operation completed.@OutputOnly", + "format": "google-datetime", + "type": "string" + }, + "insertTime": { + "description": "Timestamp that this operation was created.@OutputOnly", + "format": "google-datetime", + "type": "string" + }, + "method": { + "description": "API method name that initiated this operation. Example: google.appengine.v1beta5.Version.CreateVersion.@OutputOnly", + "type": "string" + }, + "target": { + "description": "Name of the resource that this operation is acting on. Example: apps/myapp/services/default.@OutputOnly", + "type": "string" + }, + "user": { + "description": "User who requested this operation.@OutputOnly", + "type": "string" + } + }, + "type": "object" + }, + "RequestUtilization": { + "description": "Target scaling by request utilization. Only applicable for VM runtimes.", + "id": "RequestUtilization", + "properties": { + "targetConcurrentRequests": { + "description": "Target number of concurrent requests.", + "format": "int32", + "type": "integer" + }, + "targetRequestCountPerSec": { + "description": "Target requests per second.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" }, "Resources": { "description": "Machine resources for a version.", - "type": "object", + "id": "Resources", "properties": { "cpu": { "description": "Number of CPU cores needed.", "format": "double", "type": "number" }, + "diskGb": { + "description": "Disk size (GB) needed.", + "format": "double", + "type": "number" + }, "memoryGb": { "description": "Memory (GB) needed.", "format": "double", @@ -973,103 +1998,173 @@ }, "volumes": { "description": "User specified volumes.", - "type": "array", "items": { "$ref": "Volume" - } - }, - "diskGb": { - "description": "Disk size (GB) needed.", - "format": "double", - "type": "number" + }, + "type": "array" } }, - "id": "Resources" + "type": "object" }, - "Volume": { - "description": "Volumes mounted within the app container. Only applicable for VM runtimes.", - "type": "object", + "ScriptHandler": { + "description": "Executes a script to handle the request that matches the URL pattern.", + "id": "ScriptHandler", "properties": { - "volumeType": { - "description": "Underlying volume type, e.g. 'tmpfs'.", - "type": "string" - }, - "sizeGb": { - "description": "Volume size in gigabytes.", - "format": "double", - "type": "number" - }, - "name": { - "description": "Unique name for the volume.", + "scriptPath": { + "description": "Path to the script from the application root directory.", "type": "string" } }, - "id": "Volume" + "type": "object" }, - "ListInstancesResponse": { - "description": "Response message for Instances.ListInstances.", - "type": "object", + "SourceReference": { + "description": "Reference to a particular snapshot of the source tree used to build and deploy the application.", + "id": "SourceReference", "properties": { - "nextPageToken": { - "description": "Continuation token for fetching the next page of results.", + "repository": { + "description": "URI string identifying the repository. Example: \"https://source.developers.google.com/p/app-123/r/default\"", "type": "string" }, - "instances": { - "description": "The instances belonging to the requested version.", - "type": "array", - "items": { - "$ref": "Instance" - } + "revisionId": { + "description": "The canonical, persistent identifier of the deployed revision. Aliases that include tags or branch names are not allowed. Example (git): \"2198322f89e0bb2e25021667c2ed489d1fd34e6b\"", + "type": "string" } }, - "id": "ListInstancesResponse" + "type": "object" }, - "OperationMetadataV1Alpha": { - "description": "Metadata for the given google.longrunning.Operation.", - "type": "object", + "StaticDirectoryHandler": { + "description": "Files served directly to the user for a given URL, such as images, CSS stylesheets, or JavaScript source files. Static directory handlers make it easy to serve the entire contents of a directory as static files.", + "id": "StaticDirectoryHandler", "properties": { - "user": { - "description": "User who requested this operation.@OutputOnly", + "applicationReadable": { + "description": "Whether files should also be uploaded as code data. By default, files declared in static directory handlers are uploaded as static data and are only served to end users; they cannot be read by the application. If enabled, uploads are charged against both your code and static data storage resource quotas.", + "type": "boolean" + }, + "directory": { + "description": "Path to the directory containing the static files from the application root directory. Everything after the end of the matched URL pattern is appended to static_dir to form the full path to the requested file.", "type": "string" }, - "target": { - "description": "Name of the resource that this operation is acting on. Example: apps/myapp/services/default.@OutputOnly", + "expiration": { + "description": "Time a static file served by this handler should be cached.", + "format": "google-duration", "type": "string" }, - "ephemeralMessage": { - "description": "Ephemeral message that may change every time the operation is polled. @OutputOnly", - "type": "string" - }, - "method": { - "description": "API method that initiated this operation. Example: google.appengine.v1alpha.Versions.CreateVersion.@OutputOnly", - "type": "string" - }, - "endTime": { - "description": "Time that this operation completed.@OutputOnly", - "format": "google-datetime", - "type": "string" - }, - "createVersionMetadata": { - "$ref": "CreateVersionMetadataV1Alpha" - }, - "warning": { - "description": "Durable messages that persist on every operation poll. @OutputOnly", - "type": "array", - "items": { + "httpHeaders": { + "additionalProperties": { "type": "string" - } + }, + "description": "HTTP headers to use for all responses from these URLs.", + "type": "object" }, - "insertTime": { - "description": "Time that this operation was created.@OutputOnly", - "format": "google-datetime", + "mimeType": { + "description": "MIME type used to serve all files served by this handler. Defaults to file-specific MIME types, which are direved from each file's filename extension.", + "type": "string" + }, + "requireMatchingFile": { + "description": "Whether this handler should match the request if the file referenced by the handler does not exist.", + "type": "boolean" + } + }, + "type": "object" + }, + "StaticFilesHandler": { + "description": "Files served directly to the user for a given URL, such as images, CSS stylesheets, or JavaScript source files. Static file handlers describe which files in the application directory are static files, and which URLs serve them.", + "id": "StaticFilesHandler", + "properties": { + "applicationReadable": { + "description": "Whether files should also be uploaded as code data. By default, files declared in static file handlers are uploaded as static data and are only served to end users; they cannot be read by the application. If enabled, uploads are charged against both your code and static data storage resource quotas.", + "type": "boolean" + }, + "expiration": { + "description": "Time a static file served by this handler should be cached.", + "format": "google-duration", + "type": "string" + }, + "httpHeaders": { + "additionalProperties": { + "type": "string" + }, + "description": "HTTP headers to use for all responses from these URLs.", + "type": "object" + }, + "mimeType": { + "description": "MIME type used to serve all files served by this handler. Defaults to file-specific MIME types, which are derived from each file's filename extension.", + "type": "string" + }, + "path": { + "description": "Path to the static files matched by the URL pattern, from the application root directory. The path can refer to text matched in groupings in the URL pattern.", + "type": "string" + }, + "requireMatchingFile": { + "description": "Whether this handler should match the request if the file referenced by the handler does not exist.", + "type": "boolean" + }, + "uploadPathRegex": { + "description": "Regular expression that matches the file paths for all files that should be referenced by this handler.", "type": "string" } }, - "id": "OperationMetadataV1Alpha" + "type": "object" + }, + "Status": { + "description": "The Status type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by gRPC (https://github.com/grpc). The error model is designed to be:\nSimple to use and understand for most users\nFlexible enough to meet unexpected needsOverviewThe Status message contains three pieces of data: error code, error message, and error details. The error code should be an enum value of google.rpc.Code, but it may accept additional error codes if needed. The error message should be a developer-facing English message that helps developers understand and resolve the error. If a localized user-facing error message is needed, put the localized message in the error details or localize it in the client. The optional error details may contain arbitrary information about the error. There is a predefined set of error detail types in the package google.rpc that can be used for common error conditions.Language mappingThe Status message is the logical representation of the error model, but it is not necessarily the actual wire format. When the Status message is exposed in different client libraries and different wire protocols, it can be mapped differently. For example, it will likely be mapped to some exceptions in Java, but more likely mapped to some error codes in C.Other usesThe error model and the Status message can be used in a variety of environments, either with or without APIs, to provide a consistent developer experience across different environments.Example uses of this error model include:\nPartial errors. If a service needs to return partial errors to the client, it may embed the Status in the normal response to indicate the partial errors.\nWorkflow errors. A typical workflow has multiple steps. Each step may have a Status message for error reporting.\nBatch operations. If a client uses batch request and batch response, the Status message should be used directly inside batch response, one for each error sub-response.\nAsynchronous operations. If an API call embeds asynchronous operation results in its response, the status of those operations should be represented directly using the Status message.\nLogging. If some API errors are stored in logs, the message Status could be used directly after any stripping needed for security/privacy reasons.", + "id": "Status", + "properties": { + "code": { + "description": "The status code, which should be an enum value of google.rpc.Code.", + "format": "int32", + "type": "integer" + }, + "details": { + "description": "A list of messages that carry the error details. There is a common set of message types for APIs to use.", + "items": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the google.rpc.Status.details field, or localized by the client.", + "type": "string" + } + }, + "type": "object" + }, + "TrafficSplit": { + "description": "Traffic routing configuration for versions within a single module. Traffic splits define how traffic directed to the module is assigned to versions.", + "id": "TrafficSplit", + "properties": { + "allocations": { + "additionalProperties": { + "format": "double", + "type": "number" + }, + "description": "Mapping from version IDs within the module to fractional (0.000, 1] allocations of traffic for that version. Each version can be specified only once, but some versions in the module may not have any traffic allocation. Modules that have traffic allocated cannot be deleted until either the module is deleted or their traffic allocation is removed. Allocations must sum to 1. Up to two decimal place precision is supported for IP-based splits and up to three decimal places is supported for cookie-based splits.", + "type": "object" + }, + "shardBy": { + "description": "Mechanism used to determine which version a request is sent to. The traffic selection algorithm will be stable for either type until allocations are changed.", + "enum": [ + "UNSPECIFIED", + "COOKIE", + "IP" + ], + "enumDescriptions": [ + "Diversion method unspecified.", + "Diversion based on a specially named cookie, \"GOOGAPPUID.\" The cookie must be set by the application itself or else no diversion will occur.", + "Diversion based on applying the modulus operation to a fingerprint of the IP address." + ], + "type": "string" + } + }, + "type": "object" }, "UrlDispatchRule": { "description": "Rules to match an HTTP request and dispatch that request to a module.", - "type": "object", + "id": "UrlDispatchRule", "properties": { "domain": { "description": "Domain name to match against. The wildcard \"*\" is supported if specified before a period: \"*.\".Defaults to matching all domains: \"*\".", @@ -1084,230 +2179,55 @@ "type": "string" } }, - "id": "UrlDispatchRule" - }, - "ListVersionsResponse": { - "description": "Response message for Versions.ListVersions.", - "type": "object", - "properties": { - "nextPageToken": { - "description": "Continuation token for fetching the next page of results.", - "type": "string" - }, - "versions": { - "description": "The versions belonging to the requested module.", - "type": "array", - "items": { - "$ref": "Version" - } - } - }, - "id": "ListVersionsResponse" - }, - "Module": { - "description": "A Module resource is a logical component of an application that can share state and communicate in a secure fashion with other modules. For example, an application that handles customer requests might include separate modules to handle tasks such as backend data analysis or API requests from mobile devices. Each module has a collection of versions that define a specific set of code used to implement the functionality of that module.", - "type": "object", - "properties": { - "split": { - "description": "Mapping that defines fractional HTTP traffic diversion to different versions within the module.", - "$ref": "TrafficSplit" - }, - "id": { - "description": "Relative name of the module within the application. Example: default.@OutputOnly", - "type": "string" - }, - "name": { - "description": "Full path to the Module resource in the API. Example: apps/myapp/modules/default.@OutputOnly", - "type": "string" - } - }, - "id": "Module" - }, - "ApiEndpointHandler": { - "description": "Uses Google Cloud Endpoints to handle requests.", - "type": "object", - "properties": { - "scriptPath": { - "description": "Path to the script from the application root directory.", - "type": "string" - } - }, - "id": "ApiEndpointHandler" - }, - "StaticDirectoryHandler": { - "description": "Files served directly to the user for a given URL, such as images, CSS stylesheets, or JavaScript source files. Static directory handlers make it easy to serve the entire contents of a directory as static files.", - "type": "object", - "properties": { - "expiration": { - "description": "Time a static file served by this handler should be cached.", - "format": "google-duration", - "type": "string" - }, - "httpHeaders": { - "additionalProperties": { - "type": "string" - }, - "description": "HTTP headers to use for all responses from these URLs.", - "type": "object" - }, - "applicationReadable": { - "description": "Whether files should also be uploaded as code data. By default, files declared in static directory handlers are uploaded as static data and are only served to end users; they cannot be read by the application. If enabled, uploads are charged against both your code and static data storage resource quotas.", - "type": "boolean" - }, - "directory": { - "description": "Path to the directory containing the static files from the application root directory. Everything after the end of the matched URL pattern is appended to static_dir to form the full path to the requested file.", - "type": "string" - }, - "mimeType": { - "description": "MIME type used to serve all files served by this handler. Defaults to file-specific MIME types, which are direved from each file's filename extension.", - "type": "string" - }, - "requireMatchingFile": { - "description": "Whether this handler should match the request if the file referenced by the handler does not exist.", - "type": "boolean" - } - }, - "id": "StaticDirectoryHandler" - }, - "AutomaticScaling": { - "description": "Automatic scaling is based on request rate, response latencies, and other application metrics.", - "type": "object", - "properties": { - "diskUtilization": { - "description": "Target scaling by disk usage.", - "$ref": "DiskUtilization" - }, - "minPendingLatency": { - "description": "Minimum amount of time a request should wait in the pending queue before starting a new instance to handle it.", - "format": "google-duration", - "type": "string" - }, - "requestUtilization": { - "$ref": "RequestUtilization", - "description": "Target scaling by request utilization." - }, - "maxIdleInstances": { - "description": "Maximum number of idle instances that should be maintained for this version.", - "format": "int32", - "type": "integer" - }, - "minIdleInstances": { - "description": "Minimum number of idle instances that should be maintained for this version. Only applicable for the default version of a module.", - "format": "int32", - "type": "integer" - }, - "maxTotalInstances": { - "description": "Maximum number of instances that should be started to handle requests.", - "format": "int32", - "type": "integer" - }, - "minTotalInstances": { - "description": "Minimum number of instances that should be maintained for this version.", - "format": "int32", - "type": "integer" - }, - "networkUtilization": { - "description": "Target scaling by network usage.", - "$ref": "NetworkUtilization" - }, - "maxConcurrentRequests": { - "description": "Number of concurrent requests an automatic scaling instance can accept before the scheduler spawns a new instance.Defaults to a runtime-specific value.", - "format": "int32", - "type": "integer" - }, - "coolDownPeriod": { - "description": "Amount of time that the Autoscaler (https://cloud.google.com/compute/docs/autoscaler/) should wait between changes to the number of virtual machines. Only applicable for VM runtimes.", - "format": "google-duration", - "type": "string" - }, - "maxPendingLatency": { - "description": "Maximum amount of time that a request should wait in the pending queue before starting a new instance to handle it.", - "format": "google-duration", - "type": "string" - }, - "cpuUtilization": { - "description": "Target scaling by CPU usage.", - "$ref": "CpuUtilization" - } - }, - "id": "AutomaticScaling" - }, - "Library": { - "description": "Third-party Python runtime library that is required by the application.", - "type": "object", - "properties": { - "version": { - "description": "Version of the library to select, or \"latest\".", - "type": "string" - }, - "name": { - "description": "Name of the library. Example: \"django\".", - "type": "string" - } - }, - "id": "Library" - }, - "ListLocationsResponse": { - "properties": { - "locations": { - "description": "A list of locations that matches the specified filter in the request.", - "type": "array", - "items": { - "$ref": "Location" - } - }, - "nextPageToken": { - "description": "The standard List next-page token.", - "type": "string" - } - }, - "id": "ListLocationsResponse", - "description": "The response message for Locations.ListLocations.", - "type": "object" - }, - "ContainerInfo": { - "description": "Docker image that is used to create a container and start a VM instance for the version that you deploy. Only applicable for instances running in the App Engine flexible environment.", - "type": "object", - "properties": { - "image": { - "description": "URI to the hosted container image in Google Container Registry. The URI must be fully qualified and include a tag or digest. Examples: \"gcr.io/my-project/image:tag\" or \"gcr.io/my-project/image@digest\"", - "type": "string" - } - }, - "id": "ContainerInfo" - }, - "RequestUtilization": { - "properties": { - "targetRequestCountPerSec": { - "description": "Target requests per second.", - "format": "int32", - "type": "integer" - }, - "targetConcurrentRequests": { - "description": "Target number of concurrent requests.", - "format": "int32", - "type": "integer" - } - }, - "id": "RequestUtilization", - "description": "Target scaling by request utilization. Only applicable for VM runtimes.", "type": "object" }, "UrlMap": { "description": "URL pattern and description of how the URL should be handled. App Engine can handle URLs by executing application code, or by serving static files uploaded with the version, such as images, CSS, or JavaScript.", - "type": "object", + "id": "UrlMap", "properties": { - "staticDirectory": { - "description": "Serves the entire contents of a directory as static files.This attribute is deprecated. You can mimic the behavior of static directories using static files.", - "$ref": "StaticDirectoryHandler" + "apiEndpoint": { + "$ref": "ApiEndpointHandler", + "description": "Uses API Endpoints to handle requests." }, - "staticFiles": { - "description": "Returns the contents of a file, such as an image, as the response.", - "$ref": "StaticFilesHandler" + "authFailAction": { + "description": "Action to take when users access resources that require authentication. Defaults to redirect.", + "enum": [ + "AUTH_FAIL_ACTION_UNSPECIFIED", + "AUTH_FAIL_ACTION_REDIRECT", + "AUTH_FAIL_ACTION_UNAUTHORIZED" + ], + "enumDescriptions": [ + "Not specified. AUTH_FAIL_ACTION_REDIRECT is assumed.", + "Redirects user to \"accounts.google.com\". The user is redirected back to the application URL after signing in or creating an account.", + "Rejects request with a 401 HTTP status code and an error message." + ], + "type": "string" + }, + "login": { + "description": "Level of login required to access this resource.", + "enum": [ + "LOGIN_UNSPECIFIED", + "LOGIN_OPTIONAL", + "LOGIN_ADMIN", + "LOGIN_REQUIRED" + ], + "enumDescriptions": [ + "Not specified. LOGIN_OPTIONAL is assumed.", + "Does not require that the user is signed in.", + "If the user is not signed in, the auth_fail_action is taken. In addition, if the user is not an administrator for the application, they are given an error message regardless of auth_fail_action. If the user is an administrator, the handler proceeds.", + "If the user has signed in, the handler proceeds normally. Otherwise, the auth_fail_action is taken." + ], + "type": "string" }, "redirectHttpResponseCode": { "description": "30x code to use when performing redirects for the secure field. Defaults to 302.", - "type": "string", + "enum": [ + "REDIRECT_HTTP_RESPONSE_CODE_UNSPECIFIED", + "REDIRECT_HTTP_RESPONSE_CODE_301", + "REDIRECT_HTTP_RESPONSE_CODE_302", + "REDIRECT_HTTP_RESPONSE_CODE_303", + "REDIRECT_HTTP_RESPONSE_CODE_307" + ], "enumDescriptions": [ "Not specified. 302 is assumed.", "301 Moved Permanently code.", @@ -1315,15 +2235,14 @@ "303 See Other code.", "307 Temporary Redirect code." ], - "enum": [ - "REDIRECT_HTTP_RESPONSE_CODE_UNSPECIFIED", - "REDIRECT_HTTP_RESPONSE_CODE_301", - "REDIRECT_HTTP_RESPONSE_CODE_302", - "REDIRECT_HTTP_RESPONSE_CODE_303", - "REDIRECT_HTTP_RESPONSE_CODE_307" - ] + "type": "string" + }, + "script": { + "$ref": "ScriptHandler", + "description": "Executes a script to handle the request that matches this URL pattern." }, "securityLevel": { + "description": "Security (HTTPS) enforcement for this URL.", "enum": [ "SECURE_UNSPECIFIED", "SECURE_DEFAULT", @@ -1331,812 +2250,46 @@ "SECURE_OPTIONAL", "SECURE_ALWAYS" ], - "description": "Security (HTTPS) enforcement for this URL.", - "type": "string", "enumDescriptions": [ "Not specified.", "Both HTTP and HTTPS requests with URLs that match the handler succeed without redirects. The application can examine the request to determine which protocol was used, and respond accordingly.", "Requests for a URL that match this handler that use HTTPS are automatically redirected to the HTTP equivalent URL.", "Both HTTP and HTTPS requests with URLs that match the handler succeed without redirects. The application can examine the request to determine which protocol was used and respond accordingly.", "Requests for a URL that match this handler that do not use HTTPS are automatically redirected to the HTTPS URL with the same path. Query parameters are reserved for the redirect." - ] - }, - "authFailAction": { - "enumDescriptions": [ - "Not specified. AUTH_FAIL_ACTION_REDIRECT is assumed.", - "Redirects user to \"accounts.google.com\". The user is redirected back to the application URL after signing in or creating an account.", - "Rejects request with a 401 HTTP status code and an error message." ], - "enum": [ - "AUTH_FAIL_ACTION_UNSPECIFIED", - "AUTH_FAIL_ACTION_REDIRECT", - "AUTH_FAIL_ACTION_UNAUTHORIZED" - ], - "description": "Action to take when users access resources that require authentication. Defaults to redirect.", "type": "string" }, - "script": { - "description": "Executes a script to handle the request that matches this URL pattern.", - "$ref": "ScriptHandler" + "staticDirectory": { + "$ref": "StaticDirectoryHandler", + "description": "Serves the entire contents of a directory as static files.This attribute is deprecated. You can mimic the behavior of static directories using static files." + }, + "staticFiles": { + "$ref": "StaticFilesHandler", + "description": "Returns the contents of a file, such as an image, as the response." }, "urlRegex": { "description": "A URL prefix. Uses regular expression syntax, which means regexp special characters must be escaped, but should not contain groupings. All URLs that begin with this prefix are handled by this handler, using the portion of the URL after the prefix as part of the file path.", "type": "string" - }, - "login": { - "enum": [ - "LOGIN_UNSPECIFIED", - "LOGIN_OPTIONAL", - "LOGIN_ADMIN", - "LOGIN_REQUIRED" - ], - "description": "Level of login required to access this resource.", - "type": "string", - "enumDescriptions": [ - "Not specified. LOGIN_OPTIONAL is assumed.", - "Does not require that the user is signed in.", - "If the user is not signed in, the auth_fail_action is taken. In addition, if the user is not an administrator for the application, they are given an error message regardless of auth_fail_action. If the user is an administrator, the handler proceeds.", - "If the user has signed in, the handler proceeds normally. Otherwise, the auth_fail_action is taken." - ] - }, - "apiEndpoint": { - "description": "Uses API Endpoints to handle requests.", - "$ref": "ApiEndpointHandler" } }, - "id": "UrlMap" - }, - "EndpointsApiService": { - "description": "Cloud Endpoints (https://cloud.google.com/endpoints) configuration. The Endpoints API Service provides tooling for serving Open API and gRPC endpoints via an NGINX proxy.The fields here refer to the name and configuration id of a \"service\" resource in the Service Management API (https://cloud.google.com/service-management/overview).", - "type": "object", - "properties": { - "name": { - "description": "Endpoints service name which is the name of the \"service\" resource in the Service Management API. For example \"myapi.endpoints.myproject.cloud.goog\"", - "type": "string" - }, - "configId": { - "description": "Endpoints service configuration id as specified by the Service Management API. For example \"2016-09-19r1\"By default, the Endpoints service configuration id is fixed and config_id must be specified. To keep the Endpoints service configuration id updated with each rollout, specify RolloutStrategy.MANAGED and omit config_id.", - "type": "string" - } - }, - "id": "EndpointsApiService" - }, - "Operation": { - "description": "This resource represents a long-running operation that is the result of a network API call.", - "type": "object", - "properties": { - "done": { - "description": "If the value is false, it means the operation is still in progress. If true, the operation is completed, and either error or response is available.", - "type": "boolean" - }, - "response": { - "description": "The normal response of the operation in case of success. If the original method returns no data on success, such as Delete, the response is google.protobuf.Empty. If the original method is standard Get/Create/Update, the response should be the resource. For other methods, the response should have the type XxxResponse, where Xxx is the original method name. For example, if the original method name is TakeSnapshot(), the inferred response type is TakeSnapshotResponse.", - "type": "object", - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - } - }, - "name": { - "description": "The server-assigned name, which is only unique within the same service that originally returns it. If you use the default HTTP mapping, the name should have the format of operations/some/unique/name.", - "type": "string" - }, - "error": { - "$ref": "Status", - "description": "The error result of the operation in case of failure or cancellation." - }, - "metadata": { - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - }, - "description": "Service-specific metadata associated with the operation. It typically contains progress information and common metadata such as create time. Some services might not provide such metadata. Any method that returns a long-running operation should document the metadata type, if any.", - "type": "object" - } - }, - "id": "Operation" - }, - "ApiConfigHandler": { - "description": "Google Cloud Endpoints (https://cloud.google.com/appengine/docs/python/endpoints/) configuration for API handlers.", - "type": "object", - "properties": { - "url": { - "description": "URL to serve the endpoint at.", - "type": "string" - }, - "securityLevel": { - "description": "Security (HTTPS) enforcement for this URL.", - "type": "string", - "enumDescriptions": [ - "Not specified.", - "Both HTTP and HTTPS requests with URLs that match the handler succeed without redirects. The application can examine the request to determine which protocol was used, and respond accordingly.", - "Requests for a URL that match this handler that use HTTPS are automatically redirected to the HTTP equivalent URL.", - "Both HTTP and HTTPS requests with URLs that match the handler succeed without redirects. The application can examine the request to determine which protocol was used and respond accordingly.", - "Requests for a URL that match this handler that do not use HTTPS are automatically redirected to the HTTPS URL with the same path. Query parameters are reserved for the redirect." - ], - "enum": [ - "SECURE_UNSPECIFIED", - "SECURE_DEFAULT", - "SECURE_NEVER", - "SECURE_OPTIONAL", - "SECURE_ALWAYS" - ] - }, - "authFailAction": { - "enumDescriptions": [ - "Not specified. AUTH_FAIL_ACTION_REDIRECT is assumed.", - "Redirects user to \"accounts.google.com\". The user is redirected back to the application URL after signing in or creating an account.", - "Rejects request with a 401 HTTP status code and an error message." - ], - "enum": [ - "AUTH_FAIL_ACTION_UNSPECIFIED", - "AUTH_FAIL_ACTION_REDIRECT", - "AUTH_FAIL_ACTION_UNAUTHORIZED" - ], - "description": "Action to take when users access resources that require authentication. Defaults to redirect.", - "type": "string" - }, - "script": { - "description": "Path to the script from the application root directory.", - "type": "string" - }, - "login": { - "enumDescriptions": [ - "Not specified. LOGIN_OPTIONAL is assumed.", - "Does not require that the user is signed in.", - "If the user is not signed in, the auth_fail_action is taken. In addition, if the user is not an administrator for the application, they are given an error message regardless of auth_fail_action. If the user is an administrator, the handler proceeds.", - "If the user has signed in, the handler proceeds normally. Otherwise, the auth_fail_action is taken." - ], - "enum": [ - "LOGIN_UNSPECIFIED", - "LOGIN_OPTIONAL", - "LOGIN_ADMIN", - "LOGIN_REQUIRED" - ], - "description": "Level of login required to access this resource. Defaults to optional.", - "type": "string" - } - }, - "id": "ApiConfigHandler" - }, - "StaticFilesHandler": { - "description": "Files served directly to the user for a given URL, such as images, CSS stylesheets, or JavaScript source files. Static file handlers describe which files in the application directory are static files, and which URLs serve them.", - "type": "object", - "properties": { - "applicationReadable": { - "description": "Whether files should also be uploaded as code data. By default, files declared in static file handlers are uploaded as static data and are only served to end users; they cannot be read by the application. If enabled, uploads are charged against both your code and static data storage resource quotas.", - "type": "boolean" - }, - "httpHeaders": { - "additionalProperties": { - "type": "string" - }, - "description": "HTTP headers to use for all responses from these URLs.", - "type": "object" - }, - "uploadPathRegex": { - "description": "Regular expression that matches the file paths for all files that should be referenced by this handler.", - "type": "string" - }, - "path": { - "description": "Path to the static files matched by the URL pattern, from the application root directory. The path can refer to text matched in groupings in the URL pattern.", - "type": "string" - }, - "mimeType": { - "description": "MIME type used to serve all files served by this handler. Defaults to file-specific MIME types, which are derived from each file's filename extension.", - "type": "string" - }, - "requireMatchingFile": { - "description": "Whether this handler should match the request if the file referenced by the handler does not exist.", - "type": "boolean" - }, - "expiration": { - "description": "Time a static file served by this handler should be cached.", - "format": "google-duration", - "type": "string" - } - }, - "id": "StaticFilesHandler" - }, - "BasicScaling": { - "description": "A module with basic scaling will create an instance when the application receives a request. The instance will be turned down when the app becomes idle. Basic scaling is ideal for work that is intermittent or driven by user activity.", - "type": "object", - "properties": { - "idleTimeout": { - "description": "Duration of time after the last request that an instance must wait before the instance is shut down.", - "format": "google-duration", - "type": "string" - }, - "maxInstances": { - "description": "Maximum number of instances to create for this version.", - "format": "int32", - "type": "integer" - } - }, - "id": "BasicScaling" - }, - "DiskUtilization": { - "description": "Target scaling by disk usage. Only applicable for VM runtimes.", - "type": "object", - "properties": { - "targetReadBytesPerSec": { - "description": "Target bytes read per second.", - "format": "int32", - "type": "integer" - }, - "targetWriteOpsPerSec": { - "description": "Target ops written per second.", - "format": "int32", - "type": "integer" - }, - "targetWriteBytesPerSec": { - "description": "Target bytes written per second.", - "format": "int32", - "type": "integer" - }, - "targetReadOpsPerSec": { - "description": "Target ops read per second.", - "format": "int32", - "type": "integer" - } - }, - "id": "DiskUtilization" - }, - "CpuUtilization": { - "description": "Target scaling by CPU usage.", - "type": "object", - "properties": { - "aggregationWindowLength": { - "description": "Period of time over which CPU utilization is calculated.", - "format": "google-duration", - "type": "string" - }, - "targetUtilization": { - "description": "Target CPU utilization ratio to maintain when scaling. Must be between 0 and 1.", - "format": "double", - "type": "number" - } - }, - "id": "CpuUtilization" - }, - "Status": { - "description": "The Status type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by gRPC (https://github.com/grpc). The error model is designed to be:\nSimple to use and understand for most users\nFlexible enough to meet unexpected needsOverviewThe Status message contains three pieces of data: error code, error message, and error details. The error code should be an enum value of google.rpc.Code, but it may accept additional error codes if needed. The error message should be a developer-facing English message that helps developers understand and resolve the error. If a localized user-facing error message is needed, put the localized message in the error details or localize it in the client. The optional error details may contain arbitrary information about the error. There is a predefined set of error detail types in the package google.rpc that can be used for common error conditions.Language mappingThe Status message is the logical representation of the error model, but it is not necessarily the actual wire format. When the Status message is exposed in different client libraries and different wire protocols, it can be mapped differently. For example, it will likely be mapped to some exceptions in Java, but more likely mapped to some error codes in C.Other usesThe error model and the Status message can be used in a variety of environments, either with or without APIs, to provide a consistent developer experience across different environments.Example uses of this error model include:\nPartial errors. If a service needs to return partial errors to the client, it may embed the Status in the normal response to indicate the partial errors.\nWorkflow errors. A typical workflow has multiple steps. Each step may have a Status message for error reporting.\nBatch operations. If a client uses batch request and batch response, the Status message should be used directly inside batch response, one for each error sub-response.\nAsynchronous operations. If an API call embeds asynchronous operation results in its response, the status of those operations should be represented directly using the Status message.\nLogging. If some API errors are stored in logs, the message Status could be used directly after any stripping needed for security/privacy reasons.", - "type": "object", - "properties": { - "details": { - "description": "A list of messages that carry the error details. There is a common set of message types for APIs to use.", - "type": "array", - "items": { - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - }, - "type": "object" - } - }, - "code": { - "description": "The status code, which should be an enum value of google.rpc.Code.", - "format": "int32", - "type": "integer" - }, - "message": { - "description": "A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the google.rpc.Status.details field, or localized by the client.", - "type": "string" - } - }, - "id": "Status" - }, - "IdentityAwareProxy": { - "description": "Identity-Aware Proxy", - "type": "object", - "properties": { - "oauth2ClientSecret": { - "description": "For security reasons, this value cannot be retrieved via the API. Instead, the SHA-256 hash of the value is returned in the oauth2_client_secret_sha256 field.@InputOnly", - "type": "string" - }, - "oauth2ClientId": { - "description": "OAuth2 client ID to use for the authentication flow.", - "type": "string" - }, - "oauth2ClientSecretSha256": { - "description": "Hex-encoded SHA-256 hash of the client secret.@OutputOnly", - "type": "string" - }, - "enabled": { - "description": "Whether the serving infrastructure will authenticate and authorize all incoming requests.If true, the oauth2_client_id and oauth2_client_secret fields must be non-empty.", - "type": "boolean" - } - }, - "id": "IdentityAwareProxy" - }, - "ManualScaling": { - "properties": { - "instances": { - "description": "Number of instances to assign to the module at the start. This number can later be altered by using the Modules API (https://cloud.google.com/appengine/docs/python/modules/functions) set_num_instances() function.", - "format": "int32", - "type": "integer" - } - }, - "id": "ManualScaling", - "description": "A module with manual scaling runs continuously, allowing you to perform complex initialization and rely on the state of its memory over time.", "type": "object" }, - "LocationMetadata": { - "description": "Metadata for the given google.cloud.location.Location.", - "type": "object", - "properties": { - "flexibleEnvironmentAvailable": { - "description": "App Engine Flexible Environment is available in the given location.@OutputOnly", - "type": "boolean" - }, - "standardEnvironmentAvailable": { - "description": "App Engine Standard Environment is available in the given location.@OutputOnly", - "type": "boolean" - } - }, - "id": "LocationMetadata" - }, - "ListOperationsResponse": { - "description": "The response message for Operations.ListOperations.", - "type": "object", - "properties": { - "nextPageToken": { - "description": "The standard List next-page token.", - "type": "string" - }, - "operations": { - "description": "A list of operations that matches the specified filter in the request.", - "type": "array", - "items": { - "$ref": "Operation" - } - } - }, - "id": "ListOperationsResponse" - }, - "OperationMetadata": { - "description": "Metadata for the given google.longrunning.Operation.", - "type": "object", - "properties": { - "insertTime": { - "description": "Timestamp that this operation was created.@OutputOnly", - "format": "google-datetime", - "type": "string" - }, - "user": { - "description": "User who requested this operation.@OutputOnly", - "type": "string" - }, - "target": { - "description": "Name of the resource that this operation is acting on. Example: apps/myapp/modules/default.@OutputOnly", - "type": "string" - }, - "method": { - "description": "API method that initiated this operation. Example: google.appengine.v1beta4.Version.CreateVersion.@OutputOnly", - "type": "string" - }, - "endTime": { - "description": "Timestamp that this operation completed.@OutputOnly", - "format": "google-datetime", - "type": "string" - }, - "operationType": { - "description": "Type of this operation. Deprecated, use method field instead. Example: \"create_version\".@OutputOnly", - "type": "string" - } - }, - "id": "OperationMetadata" - }, - "CreateVersionMetadataV1Beta": { - "description": "Metadata for the given google.longrunning.Operation during a google.appengine.v1beta.CreateVersionRequest.", - "type": "object", - "properties": { - "cloudBuildId": { - "description": "The Cloud Build ID if one was created as part of the version create. @OutputOnly", - "type": "string" - } - }, - "id": "CreateVersionMetadataV1Beta" - }, - "OperationMetadataV1": { - "properties": { - "endTime": { - "description": "Time that this operation completed.@OutputOnly", - "format": "google-datetime", - "type": "string" - }, - "warning": { - "description": "Durable messages that persist on every operation poll. @OutputOnly", - "type": "array", - "items": { - "type": "string" - } - }, - "insertTime": { - "description": "Time that this operation was created.@OutputOnly", - "format": "google-datetime", - "type": "string" - }, - "user": { - "description": "User who requested this operation.@OutputOnly", - "type": "string" - }, - "target": { - "description": "Name of the resource that this operation is acting on. Example: apps/myapp/services/default.@OutputOnly", - "type": "string" - }, - "ephemeralMessage": { - "description": "Ephemeral message that may change every time the operation is polled. @OutputOnly", - "type": "string" - }, - "method": { - "description": "API method that initiated this operation. Example: google.appengine.v1.Versions.CreateVersion.@OutputOnly", - "type": "string" - } - }, - "id": "OperationMetadataV1", - "description": "Metadata for the given google.longrunning.Operation.", - "type": "object" - }, - "ErrorHandler": { - "description": "Custom static error page to be served when an error occurs.", - "type": "object", - "properties": { - "errorCode": { - "enumDescriptions": [ - "Not specified. ERROR_CODE_DEFAULT is assumed.", - "All other error types.", - "Application has exceeded a resource quota.", - "Client blocked by the application's Denial of Service protection configuration.", - "Deadline reached before the application responds." - ], - "enum": [ - "ERROR_CODE_UNSPECIFIED", - "ERROR_CODE_DEFAULT", - "ERROR_CODE_OVER_QUOTA", - "ERROR_CODE_DOS_API_DENIAL", - "ERROR_CODE_TIMEOUT" - ], - "description": "Error condition this handler applies to.", - "type": "string" - }, - "mimeType": { - "description": "MIME type of file. Defaults to text/html.", - "type": "string" - }, - "staticFile": { - "description": "Static file content to be served for this error.", - "type": "string" - } - }, - "id": "ErrorHandler" - }, - "Application": { - "description": "An Application resource contains the top-level configuration of an App Engine application.", - "type": "object", - "properties": { - "defaultBucket": { - "description": "Google Cloud Storage bucket that can be used by this application to store content.@OutputOnly", - "type": "string" - }, - "dispatchRules": { - "description": "HTTP path dispatch rules for requests to the application that do not explicitly target a module or version. Rules are order-dependent.@OutputOnly", - "type": "array", - "items": { - "$ref": "UrlDispatchRule" - } - }, - "defaultHostname": { - "description": "Hostname used to reach the application, as resolved by App Engine.@OutputOnly", - "type": "string" - }, - "name": { - "description": "Full path to the Application resource in the API. Example: apps/myapp.@OutputOnly", - "type": "string" - }, - "iap": { - "$ref": "IdentityAwareProxy" - }, - "authDomain": { - "description": "Google Apps authentication domain that controls which users can access this application.Defaults to open access for any Google Account.", - "type": "string" - }, - "defaultCookieExpiration": { - "description": "Cookie expiration policy for this application.", - "format": "google-duration", - "type": "string" - }, - "id": { - "description": "Identifier of the Application resource. This identifier is equivalent to the project ID of the Google Cloud Platform project where you want to deploy your application. Example: myapp.", - "type": "string" - }, - "codeBucket": { - "description": "Google Cloud Storage bucket that can be used for storing files associated with this application. This bucket is associated with the application and can be used by the gcloud deployment commands.@OutputOnly", - "type": "string" - }, - "location": { - "description": "Location from which this application will be run. Application instances will run out of data centers in the chosen location, which is also where all of the application's end user content is stored.Defaults to us-central.Options are:us-central - Central USeurope-west - Western Europeus-east1 - Eastern US", - "type": "string" - } - }, - "id": "Application" - }, - "Network": { - "properties": { - "forwardedPorts": { - "description": "List of ports, or port pairs, to forward from the virtual machine to the application container.", - "type": "array", - "items": { - "type": "string" - } - }, - "instanceTag": { - "description": "Tag to apply to the VM instance during creation.", - "type": "string" - }, - "name": { - "description": "Google Cloud Platform network where the virtual machines are created. Specify the short name, not the resource path.Defaults to default.", - "type": "string" - } - }, - "id": "Network", - "description": "Extra network settings. Only applicable for VM runtimes.", - "type": "object" - }, - "Instance": { - "description": "An Instance resource is the computing unit that App Engine uses to automatically scale an application.", - "type": "object", - "properties": { - "vmId": { - "description": "Virtual machine ID of this instance. Only applicable for instances in App Engine flexible environment.@OutputOnly", - "type": "string" - }, - "qps": { - "description": "Average queries per second (QPS) over the last minute.@OutputOnly", - "format": "float", - "type": "number" - }, - "vmUnlocked": { - "description": "Whether this instance is in debug mode. Only applicable for instances in App Engine flexible environment.@OutputOnly", - "type": "boolean" - }, - "name": { - "description": "Full path to the Instance resource in the API. Example: apps/myapp/modules/default/versions/v1/instances/instance-1.@OutputOnly", - "type": "string" - }, - "vmZoneName": { - "description": "Zone where the virtual machine is located. Only applicable for instances in App Engine flexible environment.@OutputOnly", - "type": "string" - }, - "averageLatency": { - "description": "Average latency (ms) over the last minute.@OutputOnly", - "format": "int32", - "type": "integer" - }, - "id": { - "description": "Relative name of the instance within the version. Example: instance-1.@OutputOnly", - "type": "string" - }, - "memoryUsage": { - "description": "Total memory in use (bytes).@OutputOnly", - "format": "int64", - "type": "string" - }, - "vmIp": { - "description": "The IP address of this instance. Only applicable for instances in App Engine flexible environment.@OutputOnly", - "type": "string" - }, - "errors": { - "description": "Number of errors since this instance was started.@OutputOnly", - "format": "uint32", - "type": "integer" - }, - "availability": { - "enumDescriptions": [ - "", - "", - "" - ], - "enum": [ - "UNSPECIFIED", - "RESIDENT", - "DYNAMIC" - ], - "description": "Availability of the instance.@OutputOnly", - "type": "string" - }, - "vmStatus": { - "description": "Status of the virtual machine where this instance lives. Only applicable for instances in App Engine flexible environment.@OutputOnly", - "type": "string" - }, - "requests": { - "description": "Number of requests since this instance was started.@OutputOnly", - "format": "int32", - "type": "integer" - }, - "appEngineRelease": { - "description": "App Engine release this instance is running on.@OutputOnly", - "type": "string" - }, - "startTimestamp": { - "description": "Time that this instance was started.@OutputOnly", - "format": "google-datetime", - "type": "string" - }, - "vmName": { - "description": "Name of the virtual machine where this instance lives. Only applicable for instances in App Engine flexible environment.@OutputOnly", - "type": "string" - } - }, - "id": "Instance" - }, - "NetworkUtilization": { - "description": "Target scaling by network usage. Only applicable for VM runtimes.", - "type": "object", - "properties": { - "targetSentBytesPerSec": { - "description": "Target bytes sent per second.", - "format": "int32", - "type": "integer" - }, - "targetReceivedPacketsPerSec": { - "description": "Target packets received per second.", - "format": "int32", - "type": "integer" - }, - "targetReceivedBytesPerSec": { - "description": "Target bytes received per second.", - "format": "int32", - "type": "integer" - }, - "targetSentPacketsPerSec": { - "description": "Target packets sent per second.", - "format": "int32", - "type": "integer" - } - }, - "id": "NetworkUtilization" - }, - "Location": { - "properties": { - "name": { - "description": "Resource name for the location, which may vary between implementations. For example: \"projects/example-project/locations/us-east1\"", - "type": "string" - }, - "locationId": { - "description": "The canonical id for this location. For example: \"us-east1\".", - "type": "string" - }, - "metadata": { - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - }, - "description": "Service-specific metadata. For example the available capacity at the given location.", - "type": "object" - }, - "labels": { - "additionalProperties": { - "type": "string" - }, - "description": "Cross-service attributes for the location. For example\n{\"cloud.googleapis.com/region\": \"us-east1\"}\n", - "type": "object" - } - }, - "id": "Location", - "description": "A resource that represents Google Cloud Platform location.", - "type": "object" - }, - "HealthCheck": { - "description": "Health checking configuration for VM instances. Unhealthy instances are killed and replaced with new instances. Only applicable for instances in App Engine flexible environment.", - "type": "object", - "properties": { - "timeout": { - "description": "Time before the health check is considered failed.", - "format": "google-duration", - "type": "string" - }, - "unhealthyThreshold": { - "description": "Number of consecutive failed health checks required before removing traffic.", - "format": "uint32", - "type": "integer" - }, - "disableHealthCheck": { - "description": "Whether to explicitly disable health checks for this instance.", - "type": "boolean" - }, - "host": { - "description": "Host header to send when performing an HTTP health check. Example: \"myapp.appspot.com\"", - "type": "string" - }, - "restartThreshold": { - "description": "Number of consecutive failed health checks required before an instance is restarted.", - "format": "uint32", - "type": "integer" - }, - "healthyThreshold": { - "description": "Number of consecutive successful health checks required before receiving traffic.", - "format": "uint32", - "type": "integer" - }, - "checkInterval": { - "description": "Interval between health checks.", - "format": "google-duration", - "type": "string" - } - }, - "id": "HealthCheck" - }, - "SourceReference": { - "description": "Reference to a particular snapshot of the source tree used to build and deploy the application.", - "type": "object", - "properties": { - "repository": { - "description": "URI string identifying the repository. Example: \"https://source.developers.google.com/p/app-123/r/default\"", - "type": "string" - }, - "revisionId": { - "description": "The canonical, persistent identifier of the deployed revision. Aliases that include tags or branch names are not allowed. Example (git): \"2198322f89e0bb2e25021667c2ed489d1fd34e6b\"", - "type": "string" - } - }, - "id": "SourceReference" - }, - "DebugInstanceRequest": { - "description": "Request message for Instances.DebugInstance.", - "type": "object", - "properties": { - "sshKey": { - "description": "Public SSH key to add to the instance. Examples:\n[USERNAME]:ssh-rsa [KEY_VALUE] [USERNAME]\n[USERNAME]:ssh-rsa [KEY_VALUE] google-ssh {\"userName\":\"[USERNAME]\",\"expireOn\":\"[EXPIRE_TIME]\"}For more information, see Adding and Removing SSH Keys (https://cloud.google.com/compute/docs/instances/adding-removing-ssh-keys).", - "type": "string" - } - }, - "id": "DebugInstanceRequest" - }, - "CreateVersionMetadataV1Alpha": { - "description": "Metadata for the given google.longrunning.Operation during a google.appengine.v1alpha.CreateVersionRequest.", - "type": "object", - "properties": { - "cloudBuildId": { - "description": "The Cloud Build ID if one was created as part of the version create. @OutputOnly", - "type": "string" - } - }, - "id": "CreateVersionMetadataV1Alpha" - }, - "OperationMetadataV1Beta5": { - "description": "Metadata for the given google.longrunning.Operation.", - "type": "object", - "properties": { - "user": { - "description": "User who requested this operation.@OutputOnly", - "type": "string" - }, - "target": { - "description": "Name of the resource that this operation is acting on. Example: apps/myapp/services/default.@OutputOnly", - "type": "string" - }, - "method": { - "description": "API method name that initiated this operation. Example: google.appengine.v1beta5.Version.CreateVersion.@OutputOnly", - "type": "string" - }, - "insertTime": { - "description": "Timestamp that this operation was created.@OutputOnly", - "format": "google-datetime", - "type": "string" - }, - "endTime": { - "description": "Timestamp that this operation completed.@OutputOnly", - "format": "google-datetime", - "type": "string" - } - }, - "id": "OperationMetadataV1Beta5" - }, "Version": { "description": "A Version resource is a specific set of source code and configuration files that are deployed into a module.", - "type": "object", + "id": "Version", "properties": { + "apiConfig": { + "$ref": "ApiConfigHandler", + "description": "Serving configuration for Google Cloud Endpoints (https://cloud.google.com/appengine/docs/python/endpoints/).Only returned in GET requests if view=FULL is set." + }, + "automaticScaling": { + "$ref": "AutomaticScaling", + "description": "Automatic scaling is based on request rate, response latencies, and other application metrics." + }, + "basicScaling": { + "$ref": "BasicScaling", + "description": "A module with basic scaling will create an instance when the application receives a request. The instance will be turned down when the app becomes idle. Basic scaling is ideal for work that is intermittent or driven by user activity." + }, "betaSettings": { "additionalProperties": { "type": "string" @@ -2144,84 +2297,63 @@ "description": "Metadata settings that are supplied to this version to enable beta runtime features.", "type": "object" }, - "env": { - "description": "App Engine execution environment to use for this version.Defaults to 1.", + "creationTime": { + "description": "Time that this version was created.@OutputOnly", + "format": "google-datetime", "type": "string" }, - "handlers": { - "description": "An ordered list of URL-matching patterns that should be applied to incoming requests. The first matching URL handles the request and other request handlers are not attempted.Only returned in GET requests if view=FULL is set.", - "type": "array", - "items": { - "$ref": "UrlMap" - } + "defaultExpiration": { + "description": "Duration that static files should be cached by web proxies and browsers. Only applicable if the corresponding StaticFilesHandler (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1/apps.services.versions#staticfileshandler) does not specify its own expiration time.Only returned in GET requests if view=FULL is set.", + "format": "google-duration", + "type": "string" }, "deployer": { "description": "Email address of the user who created this version.@OutputOnly", "type": "string" }, - "automaticScaling": { - "description": "Automatic scaling is based on request rate, response latencies, and other application metrics.", - "$ref": "AutomaticScaling" - }, - "healthCheck": { - "description": "Configures health checking for VM instances. Unhealthy instances are stopped and replaced with new instances. Only applicable for VM runtimes.Only returned in GET requests if view=FULL is set.", - "$ref": "HealthCheck" - }, - "threadsafe": { - "description": "Whether multiple requests can be dispatched to this version at once.", - "type": "boolean" - }, - "manualScaling": { - "$ref": "ManualScaling", - "description": "A module with manual scaling runs continuously, allowing you to perform complex initialization and rely on the state of its memory over time." - }, - "name": { - "description": "Full path to the Version resource in the API. Example: apps/myapp/modules/default/versions/v1.@OutputOnly", - "type": "string" - }, - "apiConfig": { - "description": "Serving configuration for Google Cloud Endpoints (https://cloud.google.com/appengine/docs/python/endpoints/).Only returned in GET requests if view=FULL is set.", - "$ref": "ApiConfigHandler" + "deployment": { + "$ref": "Deployment", + "description": "Code and application artifacts that make up this version.Only returned in GET requests if view=FULL is set." }, "endpointsApiService": { "$ref": "EndpointsApiService", "description": "Cloud Endpoints configuration.If endpoints_api_service is set, the Cloud Endpoints Extensible Service Proxy will be provided to serve the API implemented by the app." }, - "vm": { - "description": "Whether to deploy this version in a container on a virtual machine.", - "type": "boolean" - }, - "instanceClass": { - "description": "Instance class that is used to run this version. Valid values are:\nAutomaticScaling: F1, F2, F4, F4_1G\nManualScaling or BasicScaling: B1, B2, B4, B8, B4_1GDefaults to F1 for AutomaticScaling and B1 for ManualScaling or BasicScaling.", + "env": { + "description": "App Engine execution environment to use for this version.Defaults to 1.", "type": "string" }, - "servingStatus": { - "enum": [ - "SERVING_STATUS_UNSPECIFIED", - "SERVING", - "STOPPED" - ], - "description": "Current serving status of this version. Only the versions with a SERVING status create instances and can be billed.SERVING_STATUS_UNSPECIFIED is an invalid value. Defaults to SERVING.", - "type": "string", - "enumDescriptions": [ - "Not specified.", - "Currently serving. Instances are created according to the scaling settings of the version.", - "Disabled. No instances will be created and the scaling settings are ignored until the state of the version changes to SERVING." - ] + "envVariables": { + "additionalProperties": { + "type": "string" + }, + "description": "Environment variables made available to the application.Only returned in GET requests if view=FULL is set.", + "type": "object" }, - "runtimeApiVersion": { - "description": "The version of the API in the given runtime environment. Please see the app.yaml reference for valid values at https://cloud.google.com/appengine/docs/standard/\u003clanguage\u003e/config/appref", + "errorHandlers": { + "description": "Custom static error pages. Limited to 10KB per page.Only returned in GET requests if view=FULL is set.", + "items": { + "$ref": "ErrorHandler" + }, + "type": "array" + }, + "handlers": { + "description": "An ordered list of URL-matching patterns that should be applied to incoming requests. The first matching URL handles the request and other request handlers are not attempted.Only returned in GET requests if view=FULL is set.", + "items": { + "$ref": "UrlMap" + }, + "type": "array" + }, + "healthCheck": { + "$ref": "HealthCheck", + "description": "Configures health checking for VM instances. Unhealthy instances are stopped and replaced with new instances. Only applicable for VM runtimes.Only returned in GET requests if view=FULL is set." + }, + "id": { + "description": "Relative name of the version within the module. Example: v1. Version names can contain only lowercase letters, numbers, or hyphens. Reserved names: \"default\", \"latest\", and any name with the prefix \"ah-\".", "type": "string" }, - "deployment": { - "description": "Code and application artifacts that make up this version.Only returned in GET requests if view=FULL is set.", - "$ref": "Deployment" - }, - "resources": { - "$ref": "Resources", - "description": "Machine resources for this version. Only applicable for VM runtimes." - }, "inboundServices": { + "description": "Before an application can receive email or XMPP messages, the application must be configured to enable the service.", "enumDescriptions": [ "Not specified.", "Allows an application to receive mail.", @@ -2233,10 +2365,7 @@ "Registers an application for notifications when a client connects or disconnects from a channel.", "Enables warmup requests." ], - "description": "Before an application can receive email or XMPP messages, the application must be configured to enable the service.", - "type": "array", "items": { - "type": "string", "enum": [ "INBOUND_SERVICE_UNSPECIFIED", "INBOUND_SERVICE_MAIL", @@ -2247,194 +2376,97 @@ "INBOUND_SERVICE_XMPP_PRESENCE", "INBOUND_SERVICE_CHANNEL_PRESENCE", "INBOUND_SERVICE_WARMUP" - ] - } + ], + "type": "string" + }, + "type": "array" }, - "errorHandlers": { - "description": "Custom static error pages. Limited to 10KB per page.Only returned in GET requests if view=FULL is set.", - "type": "array", - "items": { - "$ref": "ErrorHandler" - } - }, - "defaultExpiration": { - "description": "Duration that static files should be cached by web proxies and browsers. Only applicable if the corresponding StaticFilesHandler (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1/apps.services.versions#staticfileshandler) does not specify its own expiration time.Only returned in GET requests if view=FULL is set.", - "format": "google-duration", + "instanceClass": { + "description": "Instance class that is used to run this version. Valid values are:\nAutomaticScaling: F1, F2, F4, F4_1G\nManualScaling or BasicScaling: B1, B2, B4, B8, B4_1GDefaults to F1 for AutomaticScaling and B1 for ManualScaling or BasicScaling.", "type": "string" }, "libraries": { "description": "Configuration for third-party Python runtime libraries required by the application.Only returned in GET requests if view=FULL is set.", - "type": "array", "items": { "$ref": "Library" - } + }, + "type": "array" }, - "creationTime": { - "description": "Time that this version was created.@OutputOnly", - "format": "google-datetime", + "manualScaling": { + "$ref": "ManualScaling", + "description": "A module with manual scaling runs continuously, allowing you to perform complex initialization and rely on the state of its memory over time." + }, + "name": { + "description": "Full path to the Version resource in the API. Example: apps/myapp/modules/default/versions/v1.@OutputOnly", "type": "string" }, + "network": { + "$ref": "Network", + "description": "Extra network settings. Only applicable for VM runtimes." + }, "nobuildFilesRegex": { "description": "Files that match this pattern will not be built into this version. Only applicable for Go runtimes.Only returned in GET requests if view=FULL is set.", "type": "string" }, - "basicScaling": { - "description": "A module with basic scaling will create an instance when the application receives a request. The instance will be turned down when the app becomes idle. Basic scaling is ideal for work that is intermittent or driven by user activity.", - "$ref": "BasicScaling" + "resources": { + "$ref": "Resources", + "description": "Machine resources for this version. Only applicable for VM runtimes." }, "runtime": { "description": "Desired runtime. Example: python27.", "type": "string" }, - "id": { - "description": "Relative name of the version within the module. Example: v1. Version names can contain only lowercase letters, numbers, or hyphens. Reserved names: \"default\", \"latest\", and any name with the prefix \"ah-\".", + "runtimeApiVersion": { + "description": "The version of the API in the given runtime environment. Please see the app.yaml reference for valid values at https://cloud.google.com/appengine/docs/standard/\u003clanguage\u003e/config/appref", "type": "string" }, - "envVariables": { - "additionalProperties": { - "type": "string" - }, - "description": "Environment variables made available to the application.Only returned in GET requests if view=FULL is set.", - "type": "object" - }, - "network": { - "description": "Extra network settings. Only applicable for VM runtimes.", - "$ref": "Network" - } - }, - "id": "Version" - }, - "FileInfo": { - "description": "Single source file that is part of the version to be deployed. Each source file that is deployed must be specified separately.", - "type": "object", - "properties": { - "sourceUrl": { - "description": "URL source to use to fetch this file. Must be a URL to a resource in Google Cloud Storage in the form 'http(s)://storage.googleapis.com/\u003cbucket\u003e/\u003cobject\u003e'.", - "type": "string" - }, - "sha1Sum": { - "description": "The SHA1 hash of the file, in hex.", - "type": "string" - }, - "mimeType": { - "description": "The MIME type of the file.Defaults to the value from Google Cloud Storage.", - "type": "string" - } - }, - "id": "FileInfo" - }, - "ScriptHandler": { - "description": "Executes a script to handle the request that matches the URL pattern.", - "type": "object", - "properties": { - "scriptPath": { - "description": "Path to the script from the application root directory.", - "type": "string" - } - }, - "id": "ScriptHandler" - }, - "TrafficSplit": { - "description": "Traffic routing configuration for versions within a single module. Traffic splits define how traffic directed to the module is assigned to versions.", - "type": "object", - "properties": { - "shardBy": { - "enumDescriptions": [ - "Diversion method unspecified.", - "Diversion based on a specially named cookie, \"GOOGAPPUID.\" The cookie must be set by the application itself or else no diversion will occur.", - "Diversion based on applying the modulus operation to a fingerprint of the IP address." - ], + "servingStatus": { + "description": "Current serving status of this version. Only the versions with a SERVING status create instances and can be billed.SERVING_STATUS_UNSPECIFIED is an invalid value. Defaults to SERVING.", "enum": [ - "UNSPECIFIED", - "COOKIE", - "IP" + "SERVING_STATUS_UNSPECIFIED", + "SERVING", + "STOPPED" + ], + "enumDescriptions": [ + "Not specified.", + "Currently serving. Instances are created according to the scaling settings of the version.", + "Disabled. No instances will be created and the scaling settings are ignored until the state of the version changes to SERVING." ], - "description": "Mechanism used to determine which version a request is sent to. The traffic selection algorithm will be stable for either type until allocations are changed.", "type": "string" }, - "allocations": { - "additionalProperties": { - "format": "double", - "type": "number" - }, - "description": "Mapping from version IDs within the module to fractional (0.000, 1] allocations of traffic for that version. Each version can be specified only once, but some versions in the module may not have any traffic allocation. Modules that have traffic allocated cannot be deleted until either the module is deleted or their traffic allocation is removed. Allocations must sum to 1. Up to two decimal place precision is supported for IP-based splits and up to three decimal places is supported for cookie-based splits.", - "type": "object" + "threadsafe": { + "description": "Whether multiple requests can be dispatched to this version at once.", + "type": "boolean" + }, + "vm": { + "description": "Whether to deploy this version in a container on a virtual machine.", + "type": "boolean" } }, - "id": "TrafficSplit" + "type": "object" }, - "OperationMetadataV1Beta": { - "description": "Metadata for the given google.longrunning.Operation.", - "type": "object", + "Volume": { + "description": "Volumes mounted within the app container. Only applicable for VM runtimes.", + "id": "Volume", "properties": { - "warning": { - "description": "Durable messages that persist on every operation poll. @OutputOnly", - "type": "array", - "items": { - "type": "string" - } - }, - "insertTime": { - "description": "Time that this operation was created.@OutputOnly", - "format": "google-datetime", + "name": { + "description": "Unique name for the volume.", "type": "string" }, - "user": { - "description": "User who requested this operation.@OutputOnly", - "type": "string" + "sizeGb": { + "description": "Volume size in gigabytes.", + "format": "double", + "type": "number" }, - "target": { - "description": "Name of the resource that this operation is acting on. Example: apps/myapp/services/default.@OutputOnly", + "volumeType": { + "description": "Underlying volume type, e.g. 'tmpfs'.", "type": "string" - }, - "ephemeralMessage": { - "description": "Ephemeral message that may change every time the operation is polled. @OutputOnly", - "type": "string" - }, - "method": { - "description": "API method that initiated this operation. Example: google.appengine.v1beta.Versions.CreateVersion.@OutputOnly", - "type": "string" - }, - "endTime": { - "description": "Time that this operation completed.@OutputOnly", - "format": "google-datetime", - "type": "string" - }, - "createVersionMetadata": { - "$ref": "CreateVersionMetadataV1Beta" } }, - "id": "OperationMetadataV1Beta" + "type": "object" } }, - "icons": { - "x32": "http://www.google.com/images/icons/product/search-32.gif", - "x16": "http://www.google.com/images/icons/product/search-16.gif" - }, - "protocol": "rest", - "version": "v1beta4", - "baseUrl": "https://appengine.googleapis.com/", - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/appengine.admin": { - "description": "View and manage your applications deployed on Google App Engine" - }, - "https://www.googleapis.com/auth/cloud-platform.read-only": { - "description": "View your data across Google Cloud Platform services" - }, - "https://www.googleapis.com/auth/cloud-platform": { - "description": "View and manage your data across Google Cloud Platform services" - } - } - } - }, - "kind": "discovery#restDescription", - "description": "The App Engine Admin API enables developers to provision and manage their App Engine applications.", "servicePath": "", - "rootUrl": "https://appengine.googleapis.com/", - "basePath": "", - "ownerDomain": "google.com", - "name": "appengine", - "batchPath": "batch" -} + "title": "App Engine Admin API", + "version": "v1beta4" +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/appengine/v1beta4/appengine-gen.go b/vendor/google.golang.org/api/appengine/v1beta4/appengine-gen.go index 78514d50c..0a29d0ebd 100644 --- a/vendor/google.golang.org/api/appengine/v1beta4/appengine-gen.go +++ b/vendor/google.golang.org/api/appengine/v1beta4/appengine-gen.go @@ -1,4 +1,4 @@ -// Package appengine provides access to the Google App Engine Admin API. +// Package appengine provides access to the App Engine Admin API. // // See https://cloud.google.com/appengine/docs/admin-api/ // @@ -527,6 +527,37 @@ func (s *CpuUtilization) UnmarshalJSON(data []byte) error { return nil } +// CreateVersionMetadataV1: Metadata for the given +// google.longrunning.Operation during a +// google.appengine.v1.CreateVersionRequest. +type CreateVersionMetadataV1 struct { + // CloudBuildId: The Cloud Build ID if one was created as part of the + // version create. @OutputOnly + CloudBuildId string `json:"cloudBuildId,omitempty"` + + // ForceSendFields is a list of field names (e.g. "CloudBuildId") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "CloudBuildId") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *CreateVersionMetadataV1) MarshalJSON() ([]byte, error) { + type NoMethod CreateVersionMetadataV1 + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // CreateVersionMetadataV1Alpha: Metadata for the given // google.longrunning.Operation during a // google.appengine.v1alpha.CreateVersionRequest. @@ -708,7 +739,8 @@ func (s *DiskUtilization) MarshalJSON() ([]byte, error) { // EndpointsApiService: Cloud Endpoints // (https://cloud.google.com/endpoints) configuration. The Endpoints API // Service provides tooling for serving Open API and gRPC endpoints via -// an NGINX proxy.The fields here refer to the name and configuration id +// an NGINX proxy. Only valid for App Engine Flexible environment +// deployments..The fields here refer to the name and configuration id // of a "service" resource in the Service Management API // (https://cloud.google.com/service-management/overview). type EndpointsApiService struct { @@ -725,6 +757,17 @@ type EndpointsApiService struct { // "myapi.endpoints.myproject.cloud.goog" Name string `json:"name,omitempty"` + // RolloutStrategy: Endpoints rollout strategy. If FIXED, config_id must + // be specified. If MANAGED, config_id must be omitted. + // + // Possible values: + // "UNSPECIFIED_ROLLOUT_STRATEGY" - Not specified. Defaults to FIXED. + // "FIXED" - Endpoints service configuration id will be fixed to the + // configuration id specified by config_id. + // "MANAGED" - Endpoints service configuration id will be updated with + // each rollout. + RolloutStrategy string `json:"rolloutStrategy,omitempty"` + // ForceSendFields is a list of field names (e.g. "ConfigId") to // unconditionally include in API requests. By default, fields with // empty values are omitted from API requests. However, any non-pointer, @@ -1257,6 +1300,10 @@ func (s *ListVersionsResponse) MarshalJSON() ([]byte, error) { // Location: A resource that represents Google Cloud Platform location. type Location struct { + // DisplayName: The friendly name for this location, typically a nearby + // city name. For example, "Tokyo". + DisplayName string `json:"displayName,omitempty"` + // Labels: Cross-service attributes for the location. For // example // {"cloud.googleapis.com/region": "us-east1"} @@ -1280,7 +1327,7 @@ type Location struct { // server. googleapi.ServerResponse `json:"-"` - // ForceSendFields is a list of field names (e.g. "Labels") to + // ForceSendFields is a list of field names (e.g. "DisplayName") to // unconditionally include in API requests. By default, fields with // empty values are omitted from API requests. However, any non-pointer, // non-interface field appearing in ForceSendFields will be sent to the @@ -1288,10 +1335,10 @@ type Location struct { // used to include empty fields in Patch requests. ForceSendFields []string `json:"-"` - // NullFields is a list of field names (e.g. "Labels") to include in API - // requests with the JSON null value. By default, fields with empty - // values are omitted from API requests. However, any field with an - // empty value appearing in NullFields will be sent to the server as + // NullFields is a list of field names (e.g. "DisplayName") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as // null. It is an error if a field in this list has a non-empty value. // This may be used to include null fields in Patch requests. NullFields []string `json:"-"` @@ -1306,11 +1353,11 @@ func (s *Location) MarshalJSON() ([]byte, error) { // LocationMetadata: Metadata for the given // google.cloud.location.Location. type LocationMetadata struct { - // FlexibleEnvironmentAvailable: App Engine Flexible Environment is + // FlexibleEnvironmentAvailable: App Engine flexible environment is // available in the given location.@OutputOnly FlexibleEnvironmentAvailable bool `json:"flexibleEnvironmentAvailable,omitempty"` - // StandardEnvironmentAvailable: App Engine Standard Environment is + // StandardEnvironmentAvailable: App Engine standard environment is // available in the given location.@OutputOnly StandardEnvironmentAvailable bool `json:"standardEnvironmentAvailable,omitempty"` @@ -1608,6 +1655,8 @@ func (s *OperationMetadata) MarshalJSON() ([]byte, error) { // OperationMetadataV1: Metadata for the given // google.longrunning.Operation. type OperationMetadataV1 struct { + CreateVersionMetadata *CreateVersionMetadataV1 `json:"createVersionMetadata,omitempty"` + // EndTime: Time that this operation completed.@OutputOnly EndTime string `json:"endTime,omitempty"` @@ -1633,20 +1682,22 @@ type OperationMetadataV1 struct { // @OutputOnly Warning []string `json:"warning,omitempty"` - // ForceSendFields is a list of field names (e.g. "EndTime") to - // unconditionally include in API requests. By default, fields with - // empty values are omitted from API requests. However, any non-pointer, - // non-interface field appearing in ForceSendFields will be sent to the - // server regardless of whether the field is empty or not. This may be - // used to include empty fields in Patch requests. + // ForceSendFields is a list of field names (e.g. + // "CreateVersionMetadata") to unconditionally include in API requests. + // By default, fields with empty values are omitted from API requests. + // However, any non-pointer, non-interface field appearing in + // ForceSendFields will be sent to the server regardless of whether the + // field is empty or not. This may be used to include empty fields in + // Patch requests. ForceSendFields []string `json:"-"` - // NullFields is a list of field names (e.g. "EndTime") to include in - // API requests with the JSON null value. By default, fields with empty - // values are omitted from API requests. However, any field with an - // empty value appearing in NullFields will be sent to the server as - // null. It is an error if a field in this list has a non-empty value. - // This may be used to include null fields in Patch requests. + // NullFields is a list of field names (e.g. "CreateVersionMetadata") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. NullFields []string `json:"-"` } @@ -3040,7 +3091,7 @@ type AppsLocationsGetCall struct { header_ http.Header } -// Get: Get information about a location. +// Get: Gets information about a location. func (r *AppsLocationsService) Get(appsId string, locationsId string) *AppsLocationsGetCall { c := &AppsLocationsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.appsId = appsId @@ -3143,7 +3194,7 @@ func (c *AppsLocationsGetCall) Do(opts ...googleapi.CallOption) (*Location, erro } return ret, nil // { - // "description": "Get information about a location.", + // "description": "Gets information about a location.", // "flatPath": "v1beta4/apps/{appsId}/locations/{locationsId}", // "httpMethod": "GET", // "id": "appengine.apps.locations.get", diff --git a/vendor/google.golang.org/api/appengine/v1beta5/appengine-api.json b/vendor/google.golang.org/api/appengine/v1beta5/appengine-api.json index fb2dc4b95..1849dd3e9 100644 --- a/vendor/google.golang.org/api/appengine/v1beta5/appengine-api.json +++ b/vendor/google.golang.org/api/appengine/v1beta5/appengine-api.json @@ -1,660 +1,748 @@ { - "version": "v1beta5", - "baseUrl": "https://appengine.googleapis.com/", "auth": { "oauth2": { "scopes": { - "https://www.googleapis.com/auth/cloud-platform": { - "description": "View and manage your data across Google Cloud Platform services" - }, "https://www.googleapis.com/auth/appengine.admin": { "description": "View and manage your applications deployed on Google App Engine" }, + "https://www.googleapis.com/auth/cloud-platform": { + "description": "View and manage your data across Google Cloud Platform services" + }, "https://www.googleapis.com/auth/cloud-platform.read-only": { "description": "View your data across Google Cloud Platform services" } } } }, - "kind": "discovery#restDescription", - "description": "The App Engine Admin API enables developers to provision and manage their App Engine applications.", - "servicePath": "", - "rootUrl": "https://appengine.googleapis.com/", "basePath": "", - "ownerDomain": "google.com", - "name": "appengine", + "baseUrl": "https://appengine.googleapis.com/", "batchPath": "batch", - "documentationLink": "https://cloud.google.com/appengine/docs/admin-api/", - "id": "appengine:v1beta5", - "revision": "20180112", - "title": "Google App Engine Admin API", - "ownerName": "Google", + "description": "The App Engine Admin API enables developers to provision and manage their App Engine applications.", "discoveryVersion": "v1", + "documentationLink": "https://cloud.google.com/appengine/docs/admin-api/", + "icons": { + "x16": "http://www.google.com/images/icons/product/search-16.gif", + "x32": "http://www.google.com/images/icons/product/search-32.gif" + }, + "id": "appengine:v1beta5", + "kind": "discovery#restDescription", + "name": "appengine", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "$.xgafv": { + "description": "V1 error format.", + "enum": [ + "1", + "2" + ], + "enumDescriptions": [ + "v1 error format", + "v2 error format" + ], + "location": "query", + "type": "string" + }, + "access_token": { + "description": "OAuth access token.", + "location": "query", + "type": "string" + }, + "alt": { + "default": "json", + "description": "Data format for response.", + "enum": [ + "json", + "media", + "proto" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json", + "Media download with context-dependent Content-Type", + "Responses with Content-Type of application/x-protobuf" + ], + "location": "query", + "type": "string" + }, + "bearer_token": { + "description": "OAuth bearer token.", + "location": "query", + "type": "string" + }, + "callback": { + "description": "JSONP", + "location": "query", + "type": "string" + }, + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "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.", + "location": "query", + "type": "string" + }, + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "pp": { + "default": "true", + "description": "Pretty-print response.", + "location": "query", + "type": "boolean" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", + "location": "query", + "type": "string" + }, + "uploadType": { + "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", + "location": "query", + "type": "string" + }, + "upload_protocol": { + "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", + "location": "query", + "type": "string" + } + }, + "protocol": "rest", "resources": { "apps": { "methods": { - "get": { - "httpMethod": "GET", - "response": { + "create": { + "description": "Creates an App Engine application for a Google Cloud Platform project. Required fields:\nid - The ID of the target Cloud Platform project.\nlocation - The region (https://cloud.google.com/appengine/docs/locations) where you want the App Engine application located.For more information about App Engine applications, see Managing Projects, Applications, and Billing (https://cloud.google.com/appengine/docs/python/console/).", + "flatPath": "v1beta5/apps", + "httpMethod": "POST", + "id": "appengine.apps.create", + "parameterOrder": [], + "parameters": {}, + "path": "v1beta5/apps", + "request": { "$ref": "Application" }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Gets information about an application.", + "flatPath": "v1beta5/apps/{appsId}", + "httpMethod": "GET", + "id": "appengine.apps.get", "parameterOrder": [ "appsId" ], "parameters": { - "ensureResourcesExist": { - "description": "Certain resources associated with an application are created on-demand. Controls whether these resources should be created when performing the GET operation. If specified and any resources could not be created, the request will fail with an error code. Additionally, this parameter can cause the request to take longer to complete. Note: This parameter will be deprecated in a future version of the API.", - "type": "boolean", - "location": "query" - }, "appsId": { - "location": "path", "description": "Part of `name`. Name of the application to get. Example: apps/myapp.", + "location": "path", "required": true, "type": "string" + }, + "ensureResourcesExist": { + "description": "Certain resources associated with an application are created on-demand. Controls whether these resources should be created when performing the GET operation. If specified and any resources could not be created, the request will fail with an error code. Additionally, this parameter can cause the request to take longer to complete. Note: This parameter will be deprecated in a future version of the API.", + "location": "query", + "type": "boolean" } }, + "path": "v1beta5/apps/{appsId}", + "response": { + "$ref": "Application" + }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta5/apps/{appsId}", - "id": "appengine.apps.get", - "path": "v1beta5/apps/{appsId}", - "description": "Gets information about an application." + ] }, "patch": { - "response": { - "$ref": "Operation" - }, + "description": "Updates the specified Application resource. You can update the following fields:\nauth_domain (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1beta5/apps#Application.FIELDS.auth_domain)\ndefault_cookie_expiration (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1beta5/apps#Application.FIELDS.default_cookie_expiration)", + "flatPath": "v1beta5/apps/{appsId}", + "httpMethod": "PATCH", + "id": "appengine.apps.patch", "parameterOrder": [ "appsId" ], - "httpMethod": "PATCH", "parameters": { "appsId": { "description": "Part of `name`. Name of the Application resource to update. Example: apps/myapp.", + "location": "path", "required": true, - "type": "string", - "location": "path" + "type": "string" }, "mask": { - "location": "query", "description": "Standard field mask for the set of fields to be updated.", "format": "google-fieldmask", + "location": "query", "type": "string" } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta5/apps/{appsId}", "path": "v1beta5/apps/{appsId}", - "id": "appengine.apps.patch", "request": { "$ref": "Application" }, - "description": "Updates the specified Application resource. You can update the following fields:\nauth_domain (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1beta5/apps#Application.FIELDS.auth_domain)\ndefault_cookie_expiration (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1beta5/apps#Application.FIELDS.default_cookie_expiration)" - }, - "create": { - "request": { - "$ref": "Application" - }, - "description": "Creates an App Engine application for a Google Cloud Platform project. Required fields:\nid - The ID of the target Cloud Platform project.\nlocation - The region (https://cloud.google.com/appengine/docs/locations) where you want the App Engine application located.For more information about App Engine applications, see Managing Projects, Applications, and Billing (https://cloud.google.com/appengine/docs/python/console/).", - "httpMethod": "POST", - "parameterOrder": [], "response": { "$ref": "Operation" }, - "parameters": {}, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta5/apps", - "id": "appengine.apps.create", - "path": "v1beta5/apps" + ] } }, "resources": { - "operations": { - "methods": { - "list": { - "response": { - "$ref": "ListOperationsResponse" - }, - "parameterOrder": [ - "appsId" - ], - "httpMethod": "GET", - "parameters": { - "filter": { - "description": "The standard list filter.", - "type": "string", - "location": "query" - }, - "appsId": { - "location": "path", - "description": "Part of `name`. The name of the operation's parent resource.", - "required": true, - "type": "string" - }, - "pageToken": { - "location": "query", - "description": "The standard list page token.", - "type": "string" - }, - "pageSize": { - "description": "The standard list page size.", - "format": "int32", - "type": "integer", - "location": "query" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/appengine.admin", - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ], - "flatPath": "v1beta5/apps/{appsId}/operations", - "path": "v1beta5/apps/{appsId}/operations", - "id": "appengine.apps.operations.list", - "description": "Lists operations that match the specified filter in the request. If the server doesn't support this method, it returns UNIMPLEMENTED.NOTE: the name binding allows API services to override the binding to use different resource name schemes, such as users/*/operations. To override the binding, API services can add a binding such as \"/v1/{name=users/*}/operations\" to their service configuration. For backwards compatibility, the default name includes the operations collection id, however overriding users must ensure the name binding is the parent resource, without the operations collection id." - }, - "get": { - "description": "Gets the latest state of a long-running operation. Clients can use this method to poll the operation result at intervals as recommended by the API service.", - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "appsId", - "operationsId" - ], - "httpMethod": "GET", - "parameters": { - "appsId": { - "description": "Part of `name`. The name of the operation resource.", - "required": true, - "type": "string", - "location": "path" - }, - "operationsId": { - "location": "path", - "description": "Part of `name`. See documentation of `appsId`.", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/appengine.admin", - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ], - "flatPath": "v1beta5/apps/{appsId}/operations/{operationsId}", - "path": "v1beta5/apps/{appsId}/operations/{operationsId}", - "id": "appengine.apps.operations.get" - } - } - }, "locations": { "methods": { - "list": { - "id": "appengine.apps.locations.list", - "path": "v1beta5/apps/{appsId}/locations", - "description": "Lists information about the supported locations for this service.", - "httpMethod": "GET", - "response": { - "$ref": "ListLocationsResponse" - }, - "parameterOrder": [ - "appsId" - ], - "parameters": { - "pageSize": { - "location": "query", - "description": "The standard list page size.", - "format": "int32", - "type": "integer" - }, - "filter": { - "location": "query", - "description": "The standard list filter.", - "type": "string" - }, - "appsId": { - "description": "Part of `name`. The resource that owns the locations collection, if applicable.", - "required": true, - "type": "string", - "location": "path" - }, - "pageToken": { - "location": "query", - "description": "The standard list page token.", - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/appengine.admin", - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ], - "flatPath": "v1beta5/apps/{appsId}/locations" - }, "get": { - "path": "v1beta5/apps/{appsId}/locations/{locationsId}", + "description": "Gets information about a location.", + "flatPath": "v1beta5/apps/{appsId}/locations/{locationsId}", + "httpMethod": "GET", "id": "appengine.apps.locations.get", - "description": "Get information about a location.", - "response": { - "$ref": "Location" - }, "parameterOrder": [ "appsId", "locationsId" ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/appengine.admin", - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ], "parameters": { "appsId": { - "location": "path", "description": "Part of `name`. Resource name for the location.", + "location": "path", "required": true, "type": "string" }, "locationsId": { "description": "Part of `name`. See documentation of `appsId`.", + "location": "path", "required": true, - "type": "string", - "location": "path" + "type": "string" } }, - "flatPath": "v1beta5/apps/{appsId}/locations/{locationsId}" + "path": "v1beta5/apps/{appsId}/locations/{locationsId}", + "response": { + "$ref": "Location" + }, + "scopes": [ + "https://www.googleapis.com/auth/appengine.admin", + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + }, + "list": { + "description": "Lists information about the supported locations for this service.", + "flatPath": "v1beta5/apps/{appsId}/locations", + "httpMethod": "GET", + "id": "appengine.apps.locations.list", + "parameterOrder": [ + "appsId" + ], + "parameters": { + "appsId": { + "description": "Part of `name`. The resource that owns the locations collection, if applicable.", + "location": "path", + "required": true, + "type": "string" + }, + "filter": { + "description": "The standard list filter.", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "The standard list page size.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "The standard list page token.", + "location": "query", + "type": "string" + } + }, + "path": "v1beta5/apps/{appsId}/locations", + "response": { + "$ref": "ListLocationsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/appengine.admin", + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + } + } + }, + "operations": { + "methods": { + "get": { + "description": "Gets the latest state of a long-running operation. Clients can use this method to poll the operation result at intervals as recommended by the API service.", + "flatPath": "v1beta5/apps/{appsId}/operations/{operationsId}", + "httpMethod": "GET", + "id": "appengine.apps.operations.get", + "parameterOrder": [ + "appsId", + "operationsId" + ], + "parameters": { + "appsId": { + "description": "Part of `name`. The name of the operation resource.", + "location": "path", + "required": true, + "type": "string" + }, + "operationsId": { + "description": "Part of `name`. See documentation of `appsId`.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1beta5/apps/{appsId}/operations/{operationsId}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/appengine.admin", + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + }, + "list": { + "description": "Lists operations that match the specified filter in the request. If the server doesn't support this method, it returns UNIMPLEMENTED.NOTE: the name binding allows API services to override the binding to use different resource name schemes, such as users/*/operations. To override the binding, API services can add a binding such as \"/v1/{name=users/*}/operations\" to their service configuration. For backwards compatibility, the default name includes the operations collection id, however overriding users must ensure the name binding is the parent resource, without the operations collection id.", + "flatPath": "v1beta5/apps/{appsId}/operations", + "httpMethod": "GET", + "id": "appengine.apps.operations.list", + "parameterOrder": [ + "appsId" + ], + "parameters": { + "appsId": { + "description": "Part of `name`. The name of the operation's parent resource.", + "location": "path", + "required": true, + "type": "string" + }, + "filter": { + "description": "The standard list filter.", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "The standard list page size.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "The standard list page token.", + "location": "query", + "type": "string" + } + }, + "path": "v1beta5/apps/{appsId}/operations", + "response": { + "$ref": "ListOperationsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/appengine.admin", + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] } } }, "services": { "methods": { - "get": { - "description": "Gets the current configuration of the specified service.", - "response": { - "$ref": "Service" - }, + "delete": { + "description": "Deletes the specified service and all enclosed versions.", + "flatPath": "v1beta5/apps/{appsId}/services/{servicesId}", + "httpMethod": "DELETE", + "id": "appengine.apps.services.delete", "parameterOrder": [ "appsId", "servicesId" ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/appengine.admin", - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ], "parameters": { "appsId": { "description": "Part of `name`. Name of the resource requested. Example: apps/myapp/services/default.", - "required": true, - "type": "string", - "location": "path" - }, - "servicesId": { - "description": "Part of `name`. See documentation of `appsId`.", - "required": true, - "type": "string", - "location": "path" - } - }, - "flatPath": "v1beta5/apps/{appsId}/services/{servicesId}", - "path": "v1beta5/apps/{appsId}/services/{servicesId}", - "id": "appengine.apps.services.get" - }, - "list": { - "response": { - "$ref": "ListServicesResponse" - }, - "parameterOrder": [ - "appsId" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/appengine.admin", - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ], - "parameters": { - "appsId": { "location": "path", - "description": "Part of `name`. Name of the resource requested. Example: apps/myapp.", "required": true, "type": "string" }, - "pageToken": { - "description": "Continuation token for fetching the next page of results.", - "type": "string", - "location": "query" - }, - "pageSize": { - "location": "query", - "description": "Maximum results to return per page.", - "format": "int32", - "type": "integer" + "servicesId": { + "description": "Part of `name`. See documentation of `appsId`.", + "location": "path", + "required": true, + "type": "string" } }, - "flatPath": "v1beta5/apps/{appsId}/services", - "path": "v1beta5/apps/{appsId}/services", - "id": "appengine.apps.services.list", - "description": "Lists all the services in the application." - }, - "patch": { - "id": "appengine.apps.services.patch", "path": "v1beta5/apps/{appsId}/services/{servicesId}", - "request": { - "$ref": "Service" + "response": { + "$ref": "Operation" }, - "description": "Updates the configuration of the specified service.", - "httpMethod": "PATCH", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Gets the current configuration of the specified service.", + "flatPath": "v1beta5/apps/{appsId}/services/{servicesId}", + "httpMethod": "GET", + "id": "appengine.apps.services.get", "parameterOrder": [ "appsId", "servicesId" ], - "response": { - "$ref": "Operation" - }, "parameters": { - "migrateTraffic": { + "appsId": { + "description": "Part of `name`. Name of the resource requested. Example: apps/myapp/services/default.", + "location": "path", + "required": true, + "type": "string" + }, + "servicesId": { + "description": "Part of `name`. See documentation of `appsId`.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1beta5/apps/{appsId}/services/{servicesId}", + "response": { + "$ref": "Service" + }, + "scopes": [ + "https://www.googleapis.com/auth/appengine.admin", + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + }, + "list": { + "description": "Lists all the services in the application.", + "flatPath": "v1beta5/apps/{appsId}/services", + "httpMethod": "GET", + "id": "appengine.apps.services.list", + "parameterOrder": [ + "appsId" + ], + "parameters": { + "appsId": { + "description": "Part of `name`. Name of the resource requested. Example: apps/myapp.", + "location": "path", + "required": true, + "type": "string" + }, + "pageSize": { + "description": "Maximum results to return per page.", + "format": "int32", "location": "query", - "description": "Set to true to gradually shift traffic to one or more versions that you specify. By default, traffic is shifted immediately. For gradual traffic migration, the target versions must be located within instances that are configured for both warmup requests (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1beta5/apps.services.versions#inboundservicetype) and automatic scaling (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1beta5/apps.services.versions#automaticscaling). You must specify the shardBy (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1beta5/apps.services#shardby) field in the Service resource. Gradual traffic migration is not supported in the App Engine flexible environment. For examples, see Migrating and Splitting Traffic (https://cloud.google.com/appengine/docs/admin-api/migrating-splitting-traffic).", - "type": "boolean" + "type": "integer" + }, + "pageToken": { + "description": "Continuation token for fetching the next page of results.", + "location": "query", + "type": "string" + } + }, + "path": "v1beta5/apps/{appsId}/services", + "response": { + "$ref": "ListServicesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/appengine.admin", + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + }, + "patch": { + "description": "Updates the configuration of the specified service.", + "flatPath": "v1beta5/apps/{appsId}/services/{servicesId}", + "httpMethod": "PATCH", + "id": "appengine.apps.services.patch", + "parameterOrder": [ + "appsId", + "servicesId" + ], + "parameters": { + "appsId": { + "description": "Part of `name`. Name of the resource to update. Example: apps/myapp/services/default.", + "location": "path", + "required": true, + "type": "string" }, "mask": { "description": "Standard field mask for the set of fields to be updated.", "format": "google-fieldmask", - "type": "string", - "location": "query" - }, - "servicesId": { - "location": "path", - "description": "Part of `name`. See documentation of `appsId`.", - "required": true, + "location": "query", "type": "string" }, - "appsId": { - "description": "Part of `name`. Name of the resource to update. Example: apps/myapp/services/default.", + "migrateTraffic": { + "description": "Set to true to gradually shift traffic to one or more versions that you specify. By default, traffic is shifted immediately. For gradual traffic migration, the target versions must be located within instances that are configured for both warmup requests (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1beta5/apps.services.versions#inboundservicetype) and automatic scaling (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1beta5/apps.services.versions#automaticscaling). You must specify the shardBy (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1beta5/apps.services#shardby) field in the Service resource. Gradual traffic migration is not supported in the App Engine flexible environment. For examples, see Migrating and Splitting Traffic (https://cloud.google.com/appengine/docs/admin-api/migrating-splitting-traffic).", + "location": "query", + "type": "boolean" + }, + "servicesId": { + "description": "Part of `name`. See documentation of `appsId`.", + "location": "path", "required": true, - "type": "string", - "location": "path" + "type": "string" } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta5/apps/{appsId}/services/{servicesId}" - }, - "delete": { - "description": "Deletes the specified service and all enclosed versions.", + "path": "v1beta5/apps/{appsId}/services/{servicesId}", + "request": { + "$ref": "Service" + }, "response": { "$ref": "Operation" }, - "parameterOrder": [ - "appsId", - "servicesId" - ], - "httpMethod": "DELETE", - "parameters": { - "appsId": { - "location": "path", - "description": "Part of `name`. Name of the resource requested. Example: apps/myapp/services/default.", - "required": true, - "type": "string" - }, - "servicesId": { - "description": "Part of `name`. See documentation of `appsId`.", - "required": true, - "type": "string", - "location": "path" - } - }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta5/apps/{appsId}/services/{servicesId}", - "path": "v1beta5/apps/{appsId}/services/{servicesId}", - "id": "appengine.apps.services.delete" + ] } }, "resources": { "versions": { "methods": { "create": { - "response": { - "$ref": "Operation" - }, + "description": "Deploys new code and resource files to a new version.", + "flatPath": "v1beta5/apps/{appsId}/services/{servicesId}/versions", + "httpMethod": "POST", + "id": "appengine.apps.services.versions.create", "parameterOrder": [ "appsId", "servicesId" ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], "parameters": { - "servicesId": { + "appsId": { + "description": "Part of `name`. Name of the resource to update. For example: \"apps/myapp/services/default\".", "location": "path", - "description": "Part of `name`. See documentation of `appsId`.", "required": true, "type": "string" }, - "appsId": { + "servicesId": { + "description": "Part of `name`. See documentation of `appsId`.", "location": "path", - "description": "Part of `name`. Name of the resource to update. For example: \"apps/myapp/services/default\".", "required": true, "type": "string" } }, - "flatPath": "v1beta5/apps/{appsId}/services/{servicesId}/versions", "path": "v1beta5/apps/{appsId}/services/{servicesId}/versions", - "id": "appengine.apps.services.versions.create", - "description": "Deploys new code and resource files to a new version.", "request": { "$ref": "Version" - } + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] }, "delete": { "description": "Deletes an existing version.", - "response": { - "$ref": "Operation" - }, + "flatPath": "v1beta5/apps/{appsId}/services/{servicesId}/versions/{versionsId}", + "httpMethod": "DELETE", + "id": "appengine.apps.services.versions.delete", "parameterOrder": [ "appsId", "servicesId", "versionsId" ], - "httpMethod": "DELETE", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], "parameters": { "appsId": { "description": "Part of `name`. Name of the resource requested. Example: apps/myapp/services/default/versions/v1.", + "location": "path", "required": true, - "type": "string", - "location": "path" + "type": "string" + }, + "servicesId": { + "description": "Part of `name`. See documentation of `appsId`.", + "location": "path", + "required": true, + "type": "string" }, "versionsId": { "description": "Part of `name`. See documentation of `appsId`.", - "required": true, - "type": "string", - "location": "path" - }, - "servicesId": { "location": "path", - "description": "Part of `name`. See documentation of `appsId`.", "required": true, "type": "string" } }, - "flatPath": "v1beta5/apps/{appsId}/services/{servicesId}/versions/{versionsId}", "path": "v1beta5/apps/{appsId}/services/{servicesId}/versions/{versionsId}", - "id": "appengine.apps.services.versions.delete" + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] }, "get": { "description": "Gets the specified Version resource. By default, only a BASIC_VIEW will be returned. Specify the FULL_VIEW parameter to get the full resource.", - "response": { - "$ref": "Version" - }, + "flatPath": "v1beta5/apps/{appsId}/services/{servicesId}/versions/{versionsId}", + "httpMethod": "GET", + "id": "appengine.apps.services.versions.get", "parameterOrder": [ "appsId", "servicesId", "versionsId" ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/appengine.admin", - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ], "parameters": { + "appsId": { + "description": "Part of `name`. Name of the resource requested. Example: apps/myapp/services/default/versions/v1.", + "location": "path", + "required": true, + "type": "string" + }, "servicesId": { "description": "Part of `name`. See documentation of `appsId`.", - "required": true, - "type": "string", - "location": "path" - }, - "appsId": { "location": "path", - "description": "Part of `name`. Name of the resource requested. Example: apps/myapp/services/default/versions/v1.", "required": true, "type": "string" }, "versionsId": { - "location": "path", "description": "Part of `name`. See documentation of `appsId`.", + "location": "path", "required": true, "type": "string" }, "view": { + "description": "Controls the set of fields returned in the Get response.", "enum": [ "BASIC", "FULL" ], - "description": "Controls the set of fields returned in the Get response.", - "type": "string", - "location": "query" + "location": "query", + "type": "string" } }, - "flatPath": "v1beta5/apps/{appsId}/services/{servicesId}/versions/{versionsId}", "path": "v1beta5/apps/{appsId}/services/{servicesId}/versions/{versionsId}", - "id": "appengine.apps.services.versions.get" + "response": { + "$ref": "Version" + }, + "scopes": [ + "https://www.googleapis.com/auth/appengine.admin", + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] }, "list": { "description": "Lists the versions of a service.", + "flatPath": "v1beta5/apps/{appsId}/services/{servicesId}/versions", "httpMethod": "GET", - "response": { - "$ref": "ListVersionsResponse" - }, + "id": "appengine.apps.services.versions.list", "parameterOrder": [ "appsId", "servicesId" ], "parameters": { - "servicesId": { - "location": "path", - "description": "Part of `name`. See documentation of `appsId`.", - "required": true, - "type": "string" - }, "appsId": { - "location": "path", "description": "Part of `name`. Name of the resource requested. Example: apps/myapp/services/default.", + "location": "path", "required": true, "type": "string" }, - "pageToken": { - "location": "query", - "description": "Continuation token for fetching the next page of results.", - "type": "string" - }, "pageSize": { - "location": "query", "description": "Maximum results to return per page.", "format": "int32", + "location": "query", "type": "integer" }, - "view": { + "pageToken": { + "description": "Continuation token for fetching the next page of results.", "location": "query", + "type": "string" + }, + "servicesId": { + "description": "Part of `name`. See documentation of `appsId`.", + "location": "path", + "required": true, + "type": "string" + }, + "view": { + "description": "Controls the set of fields returned in the List response.", "enum": [ "BASIC", "FULL" ], - "description": "Controls the set of fields returned in the List response.", + "location": "query", "type": "string" } }, + "path": "v1beta5/apps/{appsId}/services/{servicesId}/versions", + "response": { + "$ref": "ListVersionsResponse" + }, "scopes": [ "https://www.googleapis.com/auth/appengine.admin", "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/cloud-platform.read-only" - ], - "flatPath": "v1beta5/apps/{appsId}/services/{servicesId}/versions", - "id": "appengine.apps.services.versions.list", - "path": "v1beta5/apps/{appsId}/services/{servicesId}/versions" + ] }, "patch": { "description": "Updates the specified Version resource. You can specify the following fields depending on the App Engine environment and type of scaling that the version resource uses:\nserving_status (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1beta5/apps.services.versions#Version.FIELDS.serving_status): For Version resources that use basic scaling, manual scaling, or run in the App Engine flexible environment.\ninstance_class (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1beta5/apps.services.versions#Version.FIELDS.instance_class): For Version resources that run in the App Engine standard environment.\nautomatic_scaling.min_idle_instances (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1beta5/apps.services.versions#Version.FIELDS.automatic_scaling): For Version resources that use automatic scaling and run in the App Engine standard environment.\nautomatic_scaling.max_idle_instances (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1beta5/apps.services.versions#Version.FIELDS.automatic_scaling): For Version resources that use automatic scaling and run in the App Engine standard environment.", + "flatPath": "v1beta5/apps/{appsId}/services/{servicesId}/versions/{versionsId}", + "httpMethod": "PATCH", + "id": "appengine.apps.services.versions.patch", + "parameterOrder": [ + "appsId", + "servicesId", + "versionsId" + ], + "parameters": { + "appsId": { + "description": "Part of `name`. Name of the resource to update. Example: apps/myapp/services/default/versions/1.", + "location": "path", + "required": true, + "type": "string" + }, + "mask": { + "description": "Standard field mask for the set of fields to be updated.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + }, + "servicesId": { + "description": "Part of `name`. See documentation of `appsId`.", + "location": "path", + "required": true, + "type": "string" + }, + "versionsId": { + "description": "Part of `name`. See documentation of `appsId`.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1beta5/apps/{appsId}/services/{servicesId}/versions/{versionsId}", "request": { "$ref": "Version" }, "response": { "$ref": "Operation" }, - "parameterOrder": [ - "appsId", - "servicesId", - "versionsId" - ], - "httpMethod": "PATCH", "scopes": [ "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "versionsId": { - "description": "Part of `name`. See documentation of `appsId`.", - "required": true, - "type": "string", - "location": "path" - }, - "mask": { - "location": "query", - "description": "Standard field mask for the set of fields to be updated.", - "format": "google-fieldmask", - "type": "string" - }, - "servicesId": { - "location": "path", - "description": "Part of `name`. See documentation of `appsId`.", - "required": true, - "type": "string" - }, - "appsId": { - "description": "Part of `name`. Name of the resource to update. Example: apps/myapp/services/default/versions/1.", - "required": true, - "type": "string", - "location": "path" - } - }, - "flatPath": "v1beta5/apps/{appsId}/services/{servicesId}/versions/{versionsId}", - "path": "v1beta5/apps/{appsId}/services/{servicesId}/versions/{versionsId}", - "id": "appengine.apps.services.versions.patch" + ] } }, "resources": { "instances": { "methods": { - "delete": { - "httpMethod": "DELETE", - "response": { - "$ref": "Operation" - }, + "debug": { + "description": "Enables debugging on a VM instance. This allows you to use the SSH command to connect to the virtual machine where the instance lives. While in \"debug mode\", the instance continues to serve live traffic. You should delete the instance when you are done debugging and then allow the system to take over and determine if another instance should be started.Only applicable for instances in App Engine flexible environment.", + "flatPath": "v1beta5/apps/{appsId}/services/{servicesId}/versions/{versionsId}/instances/{instancesId}:debug", + "httpMethod": "POST", + "id": "appengine.apps.services.versions.instances.debug", "parameterOrder": [ "appsId", "servicesId", @@ -662,184 +750,184 @@ "instancesId" ], "parameters": { - "servicesId": { - "location": "path", - "description": "Part of `name`. See documentation of `appsId`.", - "required": true, - "type": "string" - }, "appsId": { + "description": "Part of `name`. Name of the resource requested. Example: apps/myapp/services/default/versions/v1/instances/instance-1.", "location": "path", - "description": "Part of `name`. Name of the resource requested. For example: \"apps/myapp/services/default/versions/v1/instances/instance-1\".", "required": true, "type": "string" }, "instancesId": { - "location": "path", "description": "Part of `name`. See documentation of `appsId`.", + "location": "path", + "required": true, + "type": "string" + }, + "servicesId": { + "description": "Part of `name`. See documentation of `appsId`.", + "location": "path", "required": true, "type": "string" }, "versionsId": { "description": "Part of `name`. See documentation of `appsId`.", + "location": "path", "required": true, - "type": "string", - "location": "path" + "type": "string" } }, + "path": "v1beta5/apps/{appsId}/services/{servicesId}/versions/{versionsId}/instances/{instancesId}:debug", + "request": { + "$ref": "DebugInstanceRequest" + }, + "response": { + "$ref": "Operation" + }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta5/apps/{appsId}/services/{servicesId}/versions/{versionsId}/instances/{instancesId}", - "id": "appengine.apps.services.versions.instances.delete", - "path": "v1beta5/apps/{appsId}/services/{servicesId}/versions/{versionsId}/instances/{instancesId}", - "description": "Stops a running instance." + ] }, - "get": { - "description": "Gets instance information.", - "response": { - "$ref": "Instance" - }, + "delete": { + "description": "Stops a running instance.", + "flatPath": "v1beta5/apps/{appsId}/services/{servicesId}/versions/{versionsId}/instances/{instancesId}", + "httpMethod": "DELETE", + "id": "appengine.apps.services.versions.instances.delete", "parameterOrder": [ "appsId", "servicesId", "versionsId", "instancesId" ], + "parameters": { + "appsId": { + "description": "Part of `name`. Name of the resource requested. For example: \"apps/myapp/services/default/versions/v1/instances/instance-1\".", + "location": "path", + "required": true, + "type": "string" + }, + "instancesId": { + "description": "Part of `name`. See documentation of `appsId`.", + "location": "path", + "required": true, + "type": "string" + }, + "servicesId": { + "description": "Part of `name`. See documentation of `appsId`.", + "location": "path", + "required": true, + "type": "string" + }, + "versionsId": { + "description": "Part of `name`. See documentation of `appsId`.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1beta5/apps/{appsId}/services/{servicesId}/versions/{versionsId}/instances/{instancesId}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Gets instance information.", + "flatPath": "v1beta5/apps/{appsId}/services/{servicesId}/versions/{versionsId}/instances/{instancesId}", "httpMethod": "GET", + "id": "appengine.apps.services.versions.instances.get", + "parameterOrder": [ + "appsId", + "servicesId", + "versionsId", + "instancesId" + ], + "parameters": { + "appsId": { + "description": "Part of `name`. Name of the resource requested. Example: apps/myapp/services/default/versions/v1/instances/instance-1.", + "location": "path", + "required": true, + "type": "string" + }, + "instancesId": { + "description": "Part of `name`. See documentation of `appsId`.", + "location": "path", + "required": true, + "type": "string" + }, + "servicesId": { + "description": "Part of `name`. See documentation of `appsId`.", + "location": "path", + "required": true, + "type": "string" + }, + "versionsId": { + "description": "Part of `name`. See documentation of `appsId`.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1beta5/apps/{appsId}/services/{servicesId}/versions/{versionsId}/instances/{instancesId}", + "response": { + "$ref": "Instance" + }, "scopes": [ "https://www.googleapis.com/auth/appengine.admin", "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/cloud-platform.read-only" - ], - "parameters": { - "servicesId": { - "description": "Part of `name`. See documentation of `appsId`.", - "required": true, - "type": "string", - "location": "path" - }, - "appsId": { - "location": "path", - "description": "Part of `name`. Name of the resource requested. Example: apps/myapp/services/default/versions/v1/instances/instance-1.", - "required": true, - "type": "string" - }, - "instancesId": { - "location": "path", - "description": "Part of `name`. See documentation of `appsId`.", - "required": true, - "type": "string" - }, - "versionsId": { - "description": "Part of `name`. See documentation of `appsId`.", - "required": true, - "type": "string", - "location": "path" - } - }, - "flatPath": "v1beta5/apps/{appsId}/services/{servicesId}/versions/{versionsId}/instances/{instancesId}", - "path": "v1beta5/apps/{appsId}/services/{servicesId}/versions/{versionsId}/instances/{instancesId}", - "id": "appengine.apps.services.versions.instances.get" + ] }, "list": { "description": "Lists the instances of a version.Tip: To aggregate details about instances over time, see the Stackdriver Monitoring API (https://cloud.google.com/monitoring/api/ref_v3/rest/v3/projects.timeSeries/list).", - "response": { - "$ref": "ListInstancesResponse" - }, + "flatPath": "v1beta5/apps/{appsId}/services/{servicesId}/versions/{versionsId}/instances", + "httpMethod": "GET", + "id": "appengine.apps.services.versions.instances.list", "parameterOrder": [ "appsId", "servicesId", "versionsId" ], - "httpMethod": "GET", "parameters": { "appsId": { "description": "Part of `name`. Name of the resource requested. Example: apps/myapp/services/default/versions/v1.", + "location": "path", "required": true, - "type": "string", - "location": "path" - }, - "pageToken": { - "location": "query", - "description": "Continuation token for fetching the next page of results.", "type": "string" }, "pageSize": { "description": "Maximum results to return per page.", "format": "int32", - "type": "integer", - "location": "query" + "location": "query", + "type": "integer" }, - "versionsId": { - "location": "path", - "description": "Part of `name`. See documentation of `appsId`.", - "required": true, + "pageToken": { + "description": "Continuation token for fetching the next page of results.", + "location": "query", "type": "string" }, "servicesId": { "description": "Part of `name`. See documentation of `appsId`.", + "location": "path", "required": true, - "type": "string", - "location": "path" + "type": "string" + }, + "versionsId": { + "description": "Part of `name`. See documentation of `appsId`.", + "location": "path", + "required": true, + "type": "string" } }, + "path": "v1beta5/apps/{appsId}/services/{servicesId}/versions/{versionsId}/instances", + "response": { + "$ref": "ListInstancesResponse" + }, "scopes": [ "https://www.googleapis.com/auth/appengine.admin", "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/cloud-platform.read-only" - ], - "flatPath": "v1beta5/apps/{appsId}/services/{servicesId}/versions/{versionsId}/instances", - "path": "v1beta5/apps/{appsId}/services/{servicesId}/versions/{versionsId}/instances", - "id": "appengine.apps.services.versions.instances.list" - }, - "debug": { - "path": "v1beta5/apps/{appsId}/services/{servicesId}/versions/{versionsId}/instances/{instancesId}:debug", - "id": "appengine.apps.services.versions.instances.debug", - "request": { - "$ref": "DebugInstanceRequest" - }, - "description": "Enables debugging on a VM instance. This allows you to use the SSH command to connect to the virtual machine where the instance lives. While in \"debug mode\", the instance continues to serve live traffic. You should delete the instance when you are done debugging and then allow the system to take over and determine if another instance should be started.Only applicable for instances in App Engine flexible environment.", - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "appsId", - "servicesId", - "versionsId", - "instancesId" - ], - "httpMethod": "POST", - "parameters": { - "versionsId": { - "description": "Part of `name`. See documentation of `appsId`.", - "required": true, - "type": "string", - "location": "path" - }, - "servicesId": { - "location": "path", - "description": "Part of `name`. See documentation of `appsId`.", - "required": true, - "type": "string" - }, - "appsId": { - "location": "path", - "description": "Part of `name`. Name of the resource requested. Example: apps/myapp/services/default/versions/v1/instances/instance-1.", - "required": true, - "type": "string" - }, - "instancesId": { - "location": "path", - "description": "Part of `name`. See documentation of `appsId`.", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta5/apps/{appsId}/services/{servicesId}/versions/{versionsId}/instances/{instancesId}:debug" + ] } } } @@ -850,122 +938,445 @@ } } }, - "parameters": { - "pp": { - "location": "query", - "description": "Pretty-print response.", - "type": "boolean", - "default": "true" - }, - "bearer_token": { - "location": "query", - "description": "OAuth bearer token.", - "type": "string" - }, - "oauth_token": { - "location": "query", - "description": "OAuth 2.0 token for the current user.", - "type": "string" - }, - "upload_protocol": { - "location": "query", - "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", - "type": "string" - }, - "prettyPrint": { - "location": "query", - "description": "Returns response with indentations and line breaks.", - "type": "boolean", - "default": "true" - }, - "fields": { - "description": "Selector specifying which fields to include in a partial response.", - "type": "string", - "location": "query" - }, - "uploadType": { - "location": "query", - "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", - "type": "string" - }, - "callback": { - "location": "query", - "description": "JSONP", - "type": "string" - }, - "$.xgafv": { - "enum": [ - "1", - "2" - ], - "description": "V1 error format.", - "type": "string", - "enumDescriptions": [ - "v1 error format", - "v2 error format" - ], - "location": "query" - }, - "alt": { - "description": "Data format for response.", - "default": "json", - "enum": [ - "json", - "media", - "proto" - ], - "type": "string", - "enumDescriptions": [ - "Responses with Content-Type of application/json", - "Media download with context-dependent Content-Type", - "Responses with Content-Type of application/x-protobuf" - ], - "location": "query" - }, - "access_token": { - "location": "query", - "description": "OAuth access token.", - "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.", - "type": "string", - "location": "query" - }, - "quotaUser": { - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", - "type": "string", - "location": "query" - } - }, + "revision": "20180320", + "rootUrl": "https://appengine.googleapis.com/", "schemas": { + "ApiConfigHandler": { + "description": "Google Cloud Endpoints (https://cloud.google.com/appengine/docs/python/endpoints/) configuration for API handlers.", + "id": "ApiConfigHandler", + "properties": { + "authFailAction": { + "description": "Action to take when users access resources that require authentication. Defaults to redirect.", + "enum": [ + "AUTH_FAIL_ACTION_UNSPECIFIED", + "AUTH_FAIL_ACTION_REDIRECT", + "AUTH_FAIL_ACTION_UNAUTHORIZED" + ], + "enumDescriptions": [ + "Not specified. AUTH_FAIL_ACTION_REDIRECT is assumed.", + "Redirects user to \"accounts.google.com\". The user is redirected back to the application URL after signing in or creating an account.", + "Rejects request with an401 HTTP status code and an error message." + ], + "type": "string" + }, + "login": { + "description": "Level of login required to access this resource. Defaults to optional.", + "enum": [ + "LOGIN_UNSPECIFIED", + "LOGIN_OPTIONAL", + "LOGIN_ADMIN", + "LOGIN_REQUIRED" + ], + "enumDescriptions": [ + "Not specified. LOGIN_OPTIONAL is assumed.", + "Does not require that the user is signed in.", + "If the user is not signed in, the auth_fail_action is taken. In addition, if the user is not an administrator for the application, they are given an error message regardless of auth_fail_action. If the user is an administrator, the handler proceeds.", + "If the user has signed in, the handler proceeds normally. Otherwise, the action given in auth_fail_action is taken." + ], + "type": "string" + }, + "script": { + "description": "Path to the script from the application root directory.", + "type": "string" + }, + "securityLevel": { + "description": "Security (HTTPS) enforcement for this URL.", + "enum": [ + "SECURE_UNSPECIFIED", + "SECURE_DEFAULT", + "SECURE_NEVER", + "SECURE_OPTIONAL", + "SECURE_ALWAYS" + ], + "enumDescriptions": [ + "Not specified.", + "Both HTTP and HTTPS requests with URLs that match the handler succeed without redirects. The application can examine the request to determine which protocol was used, and respond accordingly.", + "Requests for a URL that match this handler that use HTTPS are automatically redirected to the HTTP equivalent URL.", + "Both HTTP and HTTPS requests with URLs that match the handler succeed without redirects. The application can examine the request to determine which protocol was used and respond accordingly.", + "Requests for a URL that match this handler that do not use HTTPS are automatically redirected to the HTTPS URL with the same path. Query parameters are reserved for the redirect." + ], + "type": "string" + }, + "url": { + "description": "URL to serve the endpoint at.", + "type": "string" + } + }, + "type": "object" + }, + "ApiEndpointHandler": { + "description": "Uses Google Cloud Endpoints to handle requests.", + "id": "ApiEndpointHandler", + "properties": { + "scriptPath": { + "description": "Path to the script from the application root directory.", + "type": "string" + } + }, + "type": "object" + }, + "Application": { + "description": "An Application resource contains the top-level configuration of an App Engine application.", + "id": "Application", + "properties": { + "authDomain": { + "description": "Google Apps authentication domain that controls which users can access this application.Defaults to open access for any Google Account.", + "type": "string" + }, + "codeBucket": { + "description": "A Google Cloud Storage bucket that can be used for storing files associated with this application. This bucket is associated with the application and can be used by the gcloud deployment commands.@OutputOnly", + "type": "string" + }, + "defaultBucket": { + "description": "A Google Cloud Storage bucket that can be used by the application to store content.@OutputOnly", + "type": "string" + }, + "defaultCookieExpiration": { + "description": "Cookie expiration policy for this application.", + "format": "google-duration", + "type": "string" + }, + "defaultHostname": { + "description": "Hostname used to reach the application, as resolved by App Engine.@OutputOnly", + "type": "string" + }, + "dispatchRules": { + "description": "HTTP path dispatch rules for requests to the application that do not explicitly target a service or version. Rules are order-dependent.@OutputOnly", + "items": { + "$ref": "UrlDispatchRule" + }, + "type": "array" + }, + "iap": { + "$ref": "IdentityAwareProxy" + }, + "id": { + "description": "Identifier of the Application resource. This identifier is equivalent to the project ID of the Google Cloud Platform project where you want to deploy your application. Example: myapp.", + "type": "string" + }, + "location": { + "description": "Location from which this application will be run. Application instances will run out of data centers in the chosen location, which is also where all of the application's end user content is stored.Defaults to us-central.Options are:us-central - Central USeurope-west - Western Europeus-east1 - Eastern US", + "type": "string" + }, + "name": { + "description": "Full path to the Application resource in the API. Example: apps/myapp.@OutputOnly", + "type": "string" + } + }, + "type": "object" + }, + "AutomaticScaling": { + "description": "Automatic scaling is based on request rate, response latencies, and other application metrics.", + "id": "AutomaticScaling", + "properties": { + "coolDownPeriod": { + "description": "Amount of time that the Autoscaler (https://cloud.google.com/compute/docs/autoscaler/) should wait between changes to the number of virtual machines. Only applicable for VM runtimes.", + "format": "google-duration", + "type": "string" + }, + "cpuUtilization": { + "$ref": "CpuUtilization", + "description": "Target scaling by CPU usage." + }, + "diskUtilization": { + "$ref": "DiskUtilization", + "description": "Target scaling by disk usage." + }, + "maxConcurrentRequests": { + "description": "Number of concurrent requests an automatic scaling instance can accept before the scheduler spawns a new instance.Defaults to a runtime-specific value.", + "format": "int32", + "type": "integer" + }, + "maxIdleInstances": { + "description": "Maximum number of idle instances that should be maintained for this version.", + "format": "int32", + "type": "integer" + }, + "maxPendingLatency": { + "description": "Maximum amount of time that a request should wait in the pending queue before starting a new instance to handle it.", + "format": "google-duration", + "type": "string" + }, + "maxTotalInstances": { + "description": "Maximum number of instances that should be started to handle requests.", + "format": "int32", + "type": "integer" + }, + "minIdleInstances": { + "description": "Minimum number of idle instances that should be maintained for this version. Only applicable for the default version of a module.", + "format": "int32", + "type": "integer" + }, + "minPendingLatency": { + "description": "Minimum amount of time a request should wait in the pending queue before starting a new instance to handle it.", + "format": "google-duration", + "type": "string" + }, + "minTotalInstances": { + "description": "Minimum number of instances that should be maintained for this version.", + "format": "int32", + "type": "integer" + }, + "networkUtilization": { + "$ref": "NetworkUtilization", + "description": "Target scaling by network usage." + }, + "requestUtilization": { + "$ref": "RequestUtilization", + "description": "Target scaling by request utilization." + } + }, + "type": "object" + }, + "BasicScaling": { + "description": "A service with basic scaling will create an instance when the application receives a request. The instance will be turned down when the app becomes idle. Basic scaling is ideal for work that is intermittent or driven by user activity.", + "id": "BasicScaling", + "properties": { + "idleTimeout": { + "description": "Duration of time after the last request that an instance must wait before the instance is shut down.", + "format": "google-duration", + "type": "string" + }, + "maxInstances": { + "description": "Maximum number of instances to create for this version.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "ContainerInfo": { + "description": "Docker image that is used to create a container and start a VM instance for the version that you deploy. Only applicable for instances running in the App Engine flexible environment.", + "id": "ContainerInfo", + "properties": { + "image": { + "description": "URI to the hosted container image in Google Container Registry. The URI must be fully qualified and include a tag or digest. Examples: \"gcr.io/my-project/image:tag\" or \"gcr.io/my-project/image@digest\"", + "type": "string" + } + }, + "type": "object" + }, + "CpuUtilization": { + "description": "Target scaling by CPU usage.", + "id": "CpuUtilization", + "properties": { + "aggregationWindowLength": { + "description": "Period of time over which CPU utilization is calculated.", + "format": "google-duration", + "type": "string" + }, + "targetUtilization": { + "description": "Target CPU utilization ratio to maintain when scaling. Must be between 0 and 1.", + "format": "double", + "type": "number" + } + }, + "type": "object" + }, + "CreateVersionMetadataV1": { + "description": "Metadata for the given google.longrunning.Operation during a google.appengine.v1.CreateVersionRequest.", + "id": "CreateVersionMetadataV1", + "properties": { + "cloudBuildId": { + "description": "The Cloud Build ID if one was created as part of the version create. @OutputOnly", + "type": "string" + } + }, + "type": "object" + }, + "CreateVersionMetadataV1Alpha": { + "description": "Metadata for the given google.longrunning.Operation during a google.appengine.v1alpha.CreateVersionRequest.", + "id": "CreateVersionMetadataV1Alpha", + "properties": { + "cloudBuildId": { + "description": "The Cloud Build ID if one was created as part of the version create. @OutputOnly", + "type": "string" + } + }, + "type": "object" + }, + "CreateVersionMetadataV1Beta": { + "description": "Metadata for the given google.longrunning.Operation during a google.appengine.v1beta.CreateVersionRequest.", + "id": "CreateVersionMetadataV1Beta", + "properties": { + "cloudBuildId": { + "description": "The Cloud Build ID if one was created as part of the version create. @OutputOnly", + "type": "string" + } + }, + "type": "object" + }, + "DebugInstanceRequest": { + "description": "Request message for Instances.DebugInstance.", + "id": "DebugInstanceRequest", + "properties": { + "sshKey": { + "description": "Public SSH key to add to the instance. Examples:\n[USERNAME]:ssh-rsa [KEY_VALUE] [USERNAME]\n[USERNAME]:ssh-rsa [KEY_VALUE] google-ssh {\"userName\":\"[USERNAME]\",\"expireOn\":\"[EXPIRE_TIME]\"}For more information, see Adding and Removing SSH Keys (https://cloud.google.com/compute/docs/instances/adding-removing-ssh-keys).", + "type": "string" + } + }, + "type": "object" + }, + "Deployment": { + "description": "Code and application artifacts used to deploy a version to App Engine.", + "id": "Deployment", + "properties": { + "container": { + "$ref": "ContainerInfo", + "description": "The Docker image for the container that runs the version. Only applicable for instances running in the App Engine flexible environment." + }, + "files": { + "additionalProperties": { + "$ref": "FileInfo" + }, + "description": "Manifest of the files stored in Google Cloud Storage that are included as part of this version. All files must be readable using the credentials supplied with this call.", + "type": "object" + }, + "sourceReferences": { + "description": "Origin of the source code for this deployment. There can be more than one source reference per version if source code is distributed among multiple repositories.", + "items": { + "$ref": "SourceReference" + }, + "type": "array" + } + }, + "type": "object" + }, + "DiskUtilization": { + "description": "Target scaling by disk usage. Only applicable for VM runtimes.", + "id": "DiskUtilization", + "properties": { + "targetReadBytesPerSec": { + "description": "Target bytes read per second.", + "format": "int32", + "type": "integer" + }, + "targetReadOpsPerSec": { + "description": "Target ops read per second.", + "format": "int32", + "type": "integer" + }, + "targetWriteBytesPerSec": { + "description": "Target bytes written per second.", + "format": "int32", + "type": "integer" + }, + "targetWriteOpsPerSec": { + "description": "Target ops written per second.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "EndpointsApiService": { + "description": "Cloud Endpoints (https://cloud.google.com/endpoints) configuration. The Endpoints API Service provides tooling for serving Open API and gRPC endpoints via an NGINX proxy. Only valid for App Engine Flexible environment deployments.The fields here refer to the name and configuration id of a \"service\" resource in the Service Management API (https://cloud.google.com/service-management/overview).", + "id": "EndpointsApiService", + "properties": { + "configId": { + "description": "Endpoints service configuration id as specified by the Service Management API. For example \"2016-09-19r1\"By default, the Endpoints service configuration id is fixed and config_id must be specified. To keep the Endpoints service configuration id updated with each rollout, specify RolloutStrategy.MANAGED and omit config_id.", + "type": "string" + }, + "name": { + "description": "Endpoints service name which is the name of the \"service\" resource in the Service Management API. For example \"myapi.endpoints.myproject.cloud.goog\"", + "type": "string" + }, + "rolloutStrategy": { + "description": "Endpoints rollout strategy. If FIXED, config_id must be specified. If MANAGED, config_id must be omitted.", + "enum": [ + "UNSPECIFIED_ROLLOUT_STRATEGY", + "FIXED", + "MANAGED" + ], + "enumDescriptions": [ + "Not specified. Defaults to FIXED.", + "Endpoints service configuration id will be fixed to the configuration id specified by config_id.", + "Endpoints service configuration id will be updated with each rollout." + ], + "type": "string" + } + }, + "type": "object" + }, + "ErrorHandler": { + "description": "Custom static error page to be served when an error occurs.", + "id": "ErrorHandler", + "properties": { + "errorCode": { + "description": "Error condition this handler applies to.", + "enum": [ + "ERROR_CODE_UNSPECIFIED", + "ERROR_CODE_DEFAULT", + "ERROR_CODE_OVER_QUOTA", + "ERROR_CODE_DOS_API_DENIAL", + "ERROR_CODE_TIMEOUT" + ], + "enumDescriptions": [ + "Not specified. ERROR_CODE_DEFAULT is assumed.", + "All other error types.", + "Application has exceeded a resource quota.", + "Client blocked by the application's Denial of Service protection configuration.", + "Deadline reached before the application responds." + ], + "type": "string" + }, + "mimeType": { + "description": "MIME type of file. Defaults to text/html.", + "type": "string" + }, + "staticFile": { + "description": "Static file content to be served for this error.", + "type": "string" + } + }, + "type": "object" + }, + "FileInfo": { + "description": "Single source file that is part of the version to be deployed. Each source file that is deployed must be specified separately.", + "id": "FileInfo", + "properties": { + "mimeType": { + "description": "The MIME type of the file.Defaults to the value from Google Cloud Storage.", + "type": "string" + }, + "sha1Sum": { + "description": "The SHA1 hash of the file, in hex.", + "type": "string" + }, + "sourceUrl": { + "description": "URL source to use to fetch this file. Must be a URL to a resource in Google Cloud Storage in the form 'http(s)://storage.googleapis.com/\u003cbucket\u003e/\u003cobject\u003e'.", + "type": "string" + } + }, + "type": "object" + }, "HealthCheck": { "description": "Health checking configuration for VM instances. Unhealthy instances are killed and replaced with new instances. Only applicable for instances in App Engine flexible environment.", - "type": "object", + "id": "HealthCheck", "properties": { + "checkInterval": { + "description": "Interval between health checks.", + "format": "google-duration", + "type": "string" + }, "disableHealthCheck": { "description": "Whether to explicitly disable health checks for this instance.", "type": "boolean" }, - "host": { - "description": "Host header to send when performing an HTTP health check. Example: \"myapp.appspot.com\"", - "type": "string" - }, "healthyThreshold": { "description": "Number of consecutive successful health checks required before receiving traffic.", "format": "uint32", "type": "integer" }, + "host": { + "description": "Host header to send when performing an HTTP health check. Example: \"myapp.appspot.com\"", + "type": "string" + }, "restartThreshold": { "description": "Number of consecutive failed health checks required before an instance is restarted.", "format": "uint32", "type": "integer" }, - "checkInterval": { - "description": "Interval between health checks.", - "format": "google-duration", - "type": "string" - }, "timeout": { "description": "Time before the health check is considered failed.", "format": "google-duration", @@ -977,49 +1388,379 @@ "type": "integer" } }, - "id": "HealthCheck" - }, - "DebugInstanceRequest": { - "properties": { - "sshKey": { - "description": "Public SSH key to add to the instance. Examples:\n[USERNAME]:ssh-rsa [KEY_VALUE] [USERNAME]\n[USERNAME]:ssh-rsa [KEY_VALUE] google-ssh {\"userName\":\"[USERNAME]\",\"expireOn\":\"[EXPIRE_TIME]\"}For more information, see Adding and Removing SSH Keys (https://cloud.google.com/compute/docs/instances/adding-removing-ssh-keys).", - "type": "string" - } - }, - "id": "DebugInstanceRequest", - "description": "Request message for Instances.DebugInstance.", "type": "object" }, - "SourceReference": { + "IdentityAwareProxy": { + "description": "Identity-Aware Proxy", + "id": "IdentityAwareProxy", "properties": { - "revisionId": { - "description": "The canonical, persistent identifier of the deployed revision. Aliases that include tags or branch names are not allowed. Example (git): \"2198322f89e0bb2e25021667c2ed489d1fd34e6b\"", + "enabled": { + "description": "Whether the serving infrastructure will authenticate and authorize all incoming requests.If true, the oauth2_client_id and oauth2_client_secret fields must be non-empty.", + "type": "boolean" + }, + "oauth2ClientId": { + "description": "OAuth2 client ID to use for the authentication flow.", "type": "string" }, - "repository": { - "description": "URI string identifying the repository. Example: \"https://source.developers.google.com/p/app-123/r/default\"", + "oauth2ClientSecret": { + "description": "For security reasons, this value cannot be retrieved via the API. Instead, the SHA-256 hash of the value is returned in the oauth2_client_secret_sha256 field.@InputOnly", + "type": "string" + }, + "oauth2ClientSecretSha256": { + "description": "Hex-encoded SHA-256 hash of the client secret.@OutputOnly", "type": "string" } }, - "id": "SourceReference", - "description": "Reference to a particular snapshot of the source tree used to build and deploy the application.", "type": "object" }, - "CreateVersionMetadataV1Alpha": { + "Instance": { + "description": "An Instance resource is the computing unit that App Engine uses to automatically scale an application.", + "id": "Instance", "properties": { - "cloudBuildId": { - "description": "The Cloud Build ID if one was created as part of the version create. @OutputOnly", + "appEngineRelease": { + "description": "App Engine release this instance is running on.@OutputOnly", + "type": "string" + }, + "availability": { + "description": "Availability of the instance.@OutputOnly", + "enum": [ + "UNSPECIFIED", + "RESIDENT", + "DYNAMIC" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, + "averageLatency": { + "description": "Average latency (ms) over the last minute.@OutputOnly", + "format": "int32", + "type": "integer" + }, + "errors": { + "description": "Number of errors since this instance was started.@OutputOnly", + "format": "uint32", + "type": "integer" + }, + "id": { + "description": "Relative name of the instance within the version. Example: instance-1.@OutputOnly", + "type": "string" + }, + "memoryUsage": { + "description": "Total memory in use (bytes).@OutputOnly", + "format": "int64", + "type": "string" + }, + "name": { + "description": "Full path to the Instance resource in the API. Example: apps/myapp/services/default/versions/v1/instances/instance-1.@OutputOnly", + "type": "string" + }, + "qps": { + "description": "Average queries per second (QPS) over the last minute.@OutputOnly", + "format": "float", + "type": "number" + }, + "requests": { + "description": "Number of requests since this instance was started.@OutputOnly", + "format": "int32", + "type": "integer" + }, + "startTimestamp": { + "description": "Time that this instance was started.@OutputOnly", + "format": "google-datetime", + "type": "string" + }, + "vmId": { + "description": "Virtual machine ID of this instance. Only applicable for instances in App Engine flexible environment.@OutputOnly", + "type": "string" + }, + "vmIp": { + "description": "The IP address of this instance. Only applicable for instances in App Engine flexible environment.@OutputOnly", + "type": "string" + }, + "vmName": { + "description": "Name of the virtual machine where this instance lives. Only applicable for instances in App Engine flexible environment.@OutputOnly", + "type": "string" + }, + "vmStatus": { + "description": "Status of the virtual machine where this instance lives. Only applicable for instances in App Engine flexible environment.@OutputOnly", + "type": "string" + }, + "vmUnlocked": { + "description": "Whether this instance is in debug mode. Only applicable for instances in App Engine flexible environment.@OutputOnly", + "type": "boolean" + }, + "vmZoneName": { + "description": "Zone where the virtual machine is located. Only applicable for instances in App Engine flexible environment.@OutputOnly", "type": "string" } }, - "id": "CreateVersionMetadataV1Alpha", - "description": "Metadata for the given google.longrunning.Operation during a google.appengine.v1alpha.CreateVersionRequest.", "type": "object" }, - "OperationMetadataV1Beta5": { + "Library": { + "description": "Third-party Python runtime library that is required by the application.", + "id": "Library", "properties": { - "method": { - "description": "API method name that initiated this operation. Example: google.appengine.v1beta5.Version.CreateVersion.@OutputOnly", + "name": { + "description": "Name of the library. Example: \"django\".", + "type": "string" + }, + "version": { + "description": "Version of the library to select, or \"latest\".", + "type": "string" + } + }, + "type": "object" + }, + "ListInstancesResponse": { + "description": "Response message for Instances.ListInstances.", + "id": "ListInstancesResponse", + "properties": { + "instances": { + "description": "The instances belonging to the requested version.", + "items": { + "$ref": "Instance" + }, + "type": "array" + }, + "nextPageToken": { + "description": "Continuation token for fetching the next page of results.", + "type": "string" + } + }, + "type": "object" + }, + "ListLocationsResponse": { + "description": "The response message for Locations.ListLocations.", + "id": "ListLocationsResponse", + "properties": { + "locations": { + "description": "A list of locations that matches the specified filter in the request.", + "items": { + "$ref": "Location" + }, + "type": "array" + }, + "nextPageToken": { + "description": "The standard List next-page token.", + "type": "string" + } + }, + "type": "object" + }, + "ListOperationsResponse": { + "description": "The response message for Operations.ListOperations.", + "id": "ListOperationsResponse", + "properties": { + "nextPageToken": { + "description": "The standard List next-page token.", + "type": "string" + }, + "operations": { + "description": "A list of operations that matches the specified filter in the request.", + "items": { + "$ref": "Operation" + }, + "type": "array" + } + }, + "type": "object" + }, + "ListServicesResponse": { + "description": "Response message for Services.ListServices.", + "id": "ListServicesResponse", + "properties": { + "nextPageToken": { + "description": "Continuation token for fetching the next page of results.", + "type": "string" + }, + "services": { + "description": "The services belonging to the requested application.", + "items": { + "$ref": "Service" + }, + "type": "array" + } + }, + "type": "object" + }, + "ListVersionsResponse": { + "description": "Response message for Versions.ListVersions.", + "id": "ListVersionsResponse", + "properties": { + "nextPageToken": { + "description": "Continuation token for fetching the next page of results.", + "type": "string" + }, + "versions": { + "description": "The versions belonging to the requested service.", + "items": { + "$ref": "Version" + }, + "type": "array" + } + }, + "type": "object" + }, + "Location": { + "description": "A resource that represents Google Cloud Platform location.", + "id": "Location", + "properties": { + "displayName": { + "description": "The friendly name for this location, typically a nearby city name. For example, \"Tokyo\".", + "type": "string" + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Cross-service attributes for the location. For example\n{\"cloud.googleapis.com/region\": \"us-east1\"}\n", + "type": "object" + }, + "locationId": { + "description": "The canonical id for this location. For example: \"us-east1\".", + "type": "string" + }, + "metadata": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "description": "Service-specific metadata. For example the available capacity at the given location.", + "type": "object" + }, + "name": { + "description": "Resource name for the location, which may vary between implementations. For example: \"projects/example-project/locations/us-east1\"", + "type": "string" + } + }, + "type": "object" + }, + "LocationMetadata": { + "description": "Metadata for the given google.cloud.location.Location.", + "id": "LocationMetadata", + "properties": { + "flexibleEnvironmentAvailable": { + "description": "App Engine flexible environment is available in the given location.@OutputOnly", + "type": "boolean" + }, + "standardEnvironmentAvailable": { + "description": "App Engine standard environment is available in the given location.@OutputOnly", + "type": "boolean" + } + }, + "type": "object" + }, + "ManualScaling": { + "description": "A service with manual scaling runs continuously, allowing you to perform complex initialization and rely on the state of its memory over time.", + "id": "ManualScaling", + "properties": { + "instances": { + "description": "Number of instances to assign to the service at the start. This number can later be altered by using the Modules API (https://cloud.google.com/appengine/docs/python/modules/functions) set_num_instances() function.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "Network": { + "description": "Extra network settings. Only applicable for VM runtimes.", + "id": "Network", + "properties": { + "forwardedPorts": { + "description": "List of ports, or port pairs, to forward from the virtual machine to the application container.", + "items": { + "type": "string" + }, + "type": "array" + }, + "instanceTag": { + "description": "Tag to apply to the VM instance during creation.", + "type": "string" + }, + "name": { + "description": "Google Cloud Platform network where the virtual machines are created. Specify the short name, not the resource path.Defaults to default.", + "type": "string" + }, + "subnetworkName": { + "description": "Google Cloud Platform sub-network where the virtual machines are created. Specify the short name, not the resource path.If a subnetwork name is specified, a network name will also be required unless it is for the default network.\nIf the network the VM instance is being created in is a Legacy network, then the IP address is allocated from the IPv4Range.\nIf the network the VM instance is being created in is an auto Subnet Mode Network, then only network name should be specified (not the subnetwork_name) and the IP address is created from the IPCidrRange of the subnetwork that exists in that zone for that network.\nIf the network the VM instance is being created in is a custom Subnet Mode Network, then the subnetwork_name must be specified and the IP address is created from the IPCidrRange of the subnetwork.If specified, the subnetwork must exist in the same region as the Flex app.", + "type": "string" + } + }, + "type": "object" + }, + "NetworkUtilization": { + "description": "Target scaling by network usage. Only applicable for VM runtimes.", + "id": "NetworkUtilization", + "properties": { + "targetReceivedBytesPerSec": { + "description": "Target bytes received per second.", + "format": "int32", + "type": "integer" + }, + "targetReceivedPacketsPerSec": { + "description": "Target packets received per second.", + "format": "int32", + "type": "integer" + }, + "targetSentBytesPerSec": { + "description": "Target bytes sent per second.", + "format": "int32", + "type": "integer" + }, + "targetSentPacketsPerSec": { + "description": "Target packets sent per second.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "Operation": { + "description": "This resource represents a long-running operation that is the result of a network API call.", + "id": "Operation", + "properties": { + "done": { + "description": "If the value is false, it means the operation is still in progress. If true, the operation is completed, and either error or response is available.", + "type": "boolean" + }, + "error": { + "$ref": "Status", + "description": "The error result of the operation in case of failure or cancellation." + }, + "metadata": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "description": "Service-specific metadata associated with the operation. It typically contains progress information and common metadata such as create time. Some services might not provide such metadata. Any method that returns a long-running operation should document the metadata type, if any.", + "type": "object" + }, + "name": { + "description": "The server-assigned name, which is only unique within the same service that originally returns it. If you use the default HTTP mapping, the name should have the format of operations/some/unique/name.", + "type": "string" + }, + "response": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "description": "The normal response of the operation in case of success. If the original method returns no data on success, such as Delete, the response is google.protobuf.Empty. If the original method is standard Get/Create/Update, the response should be the resource. For other methods, the response should have the type XxxResponse, where Xxx is the original method name. For example, if the original method name is TakeSnapshot(), the inferred response type is TakeSnapshotResponse.", + "type": "object" + } + }, + "type": "object" + }, + "OperationMetadata": { + "description": "Metadata for the given google.longrunning.Operation.", + "id": "OperationMetadata", + "properties": { + "endTime": { + "description": "Timestamp that this operation completed.@OutputOnly", + "format": "google-datetime", "type": "string" }, "insertTime": { @@ -1027,82 +1768,529 @@ "format": "google-datetime", "type": "string" }, + "method": { + "description": "API method that initiated this operation. Example: google.appengine.v1beta4.Version.CreateVersion.@OutputOnly", + "type": "string" + }, + "operationType": { + "description": "Type of this operation. Deprecated, use method field instead. Example: \"create_version\".@OutputOnly", + "type": "string" + }, + "target": { + "description": "Name of the resource that this operation is acting on. Example: apps/myapp/modules/default.@OutputOnly", + "type": "string" + }, + "user": { + "description": "User who requested this operation.@OutputOnly", + "type": "string" + } + }, + "type": "object" + }, + "OperationMetadataV1": { + "description": "Metadata for the given google.longrunning.Operation.", + "id": "OperationMetadataV1", + "properties": { + "createVersionMetadata": { + "$ref": "CreateVersionMetadataV1" + }, "endTime": { - "description": "Timestamp that this operation completed.@OutputOnly", + "description": "Time that this operation completed.@OutputOnly", "format": "google-datetime", "type": "string" }, + "ephemeralMessage": { + "description": "Ephemeral message that may change every time the operation is polled. @OutputOnly", + "type": "string" + }, + "insertTime": { + "description": "Time that this operation was created.@OutputOnly", + "format": "google-datetime", + "type": "string" + }, + "method": { + "description": "API method that initiated this operation. Example: google.appengine.v1.Versions.CreateVersion.@OutputOnly", + "type": "string" + }, + "target": { + "description": "Name of the resource that this operation is acting on. Example: apps/myapp/services/default.@OutputOnly", + "type": "string" + }, "user": { "description": "User who requested this operation.@OutputOnly", "type": "string" }, + "warning": { + "description": "Durable messages that persist on every operation poll. @OutputOnly", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "OperationMetadataV1Alpha": { + "description": "Metadata for the given google.longrunning.Operation.", + "id": "OperationMetadataV1Alpha", + "properties": { + "createVersionMetadata": { + "$ref": "CreateVersionMetadataV1Alpha" + }, + "endTime": { + "description": "Time that this operation completed.@OutputOnly", + "format": "google-datetime", + "type": "string" + }, + "ephemeralMessage": { + "description": "Ephemeral message that may change every time the operation is polled. @OutputOnly", + "type": "string" + }, + "insertTime": { + "description": "Time that this operation was created.@OutputOnly", + "format": "google-datetime", + "type": "string" + }, + "method": { + "description": "API method that initiated this operation. Example: google.appengine.v1alpha.Versions.CreateVersion.@OutputOnly", + "type": "string" + }, "target": { "description": "Name of the resource that this operation is acting on. Example: apps/myapp/services/default.@OutputOnly", "type": "string" + }, + "user": { + "description": "User who requested this operation.@OutputOnly", + "type": "string" + }, + "warning": { + "description": "Durable messages that persist on every operation poll. @OutputOnly", + "items": { + "type": "string" + }, + "type": "array" } }, - "id": "OperationMetadataV1Beta5", - "description": "Metadata for the given google.longrunning.Operation.", "type": "object" }, - "Library": { - "description": "Third-party Python runtime library that is required by the application.", - "type": "object", + "OperationMetadataV1Beta": { + "description": "Metadata for the given google.longrunning.Operation.", + "id": "OperationMetadataV1Beta", "properties": { - "version": { - "description": "Version of the library to select, or \"latest\".", + "createVersionMetadata": { + "$ref": "CreateVersionMetadataV1Beta" + }, + "endTime": { + "description": "Time that this operation completed.@OutputOnly", + "format": "google-datetime", + "type": "string" + }, + "ephemeralMessage": { + "description": "Ephemeral message that may change every time the operation is polled. @OutputOnly", + "type": "string" + }, + "insertTime": { + "description": "Time that this operation was created.@OutputOnly", + "format": "google-datetime", + "type": "string" + }, + "method": { + "description": "API method that initiated this operation. Example: google.appengine.v1beta.Versions.CreateVersion.@OutputOnly", + "type": "string" + }, + "target": { + "description": "Name of the resource that this operation is acting on. Example: apps/myapp/services/default.@OutputOnly", + "type": "string" + }, + "user": { + "description": "User who requested this operation.@OutputOnly", + "type": "string" + }, + "warning": { + "description": "Durable messages that persist on every operation poll. @OutputOnly", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "OperationMetadataV1Beta5": { + "description": "Metadata for the given google.longrunning.Operation.", + "id": "OperationMetadataV1Beta5", + "properties": { + "endTime": { + "description": "Timestamp that this operation completed.@OutputOnly", + "format": "google-datetime", + "type": "string" + }, + "insertTime": { + "description": "Timestamp that this operation was created.@OutputOnly", + "format": "google-datetime", + "type": "string" + }, + "method": { + "description": "API method name that initiated this operation. Example: google.appengine.v1beta5.Version.CreateVersion.@OutputOnly", + "type": "string" + }, + "target": { + "description": "Name of the resource that this operation is acting on. Example: apps/myapp/services/default.@OutputOnly", + "type": "string" + }, + "user": { + "description": "User who requested this operation.@OutputOnly", + "type": "string" + } + }, + "type": "object" + }, + "RequestUtilization": { + "description": "Target scaling by request utilization. Only applicable for VM runtimes.", + "id": "RequestUtilization", + "properties": { + "targetConcurrentRequests": { + "description": "Target number of concurrent requests.", + "format": "int32", + "type": "integer" + }, + "targetRequestCountPerSec": { + "description": "Target requests per second.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "Resources": { + "description": "Machine resources for a version.", + "id": "Resources", + "properties": { + "cpu": { + "description": "Number of CPU cores needed.", + "format": "double", + "type": "number" + }, + "diskGb": { + "description": "Disk size (GB) needed.", + "format": "double", + "type": "number" + }, + "memoryGb": { + "description": "Memory (GB) needed.", + "format": "double", + "type": "number" + }, + "volumes": { + "description": "Volumes mounted within the app container.", + "items": { + "$ref": "Volume" + }, + "type": "array" + } + }, + "type": "object" + }, + "ScriptHandler": { + "description": "Executes a script to handle the request that matches the URL pattern.", + "id": "ScriptHandler", + "properties": { + "scriptPath": { + "description": "Path to the script from the application root directory.", + "type": "string" + } + }, + "type": "object" + }, + "Service": { + "description": "A Service resource is a logical component of an application that can share state and communicate in a secure fashion with other services. For example, an application that handles customer requests might include separate services to handle other tasks such as API requests from mobile devices or backend data analysis. Each service has a collection of versions that define a specific set of code used to implement the functionality of that service.", + "id": "Service", + "properties": { + "id": { + "description": "Relative name of the service within the application. Example: default.@OutputOnly", "type": "string" }, "name": { - "description": "Name of the library. Example: \"django\".", + "description": "Full path to the Service resource in the API. Example: apps/myapp/services/default.@OutputOnly", "type": "string" - } - }, - "id": "Library" - }, - "ListLocationsResponse": { - "description": "The response message for Locations.ListLocations.", - "type": "object", - "properties": { - "locations": { - "description": "A list of locations that matches the specified filter in the request.", - "type": "array", - "items": { - "$ref": "Location" - } }, - "nextPageToken": { - "description": "The standard List next-page token.", - "type": "string" + "split": { + "$ref": "TrafficSplit", + "description": "Mapping that defines fractional HTTP traffic diversion to different versions within the service." } }, - "id": "ListLocationsResponse" + "type": "object" }, - "ContainerInfo": { + "SourceReference": { + "description": "Reference to a particular snapshot of the source tree used to build and deploy the application.", + "id": "SourceReference", "properties": { - "image": { - "description": "URI to the hosted container image in Google Container Registry. The URI must be fully qualified and include a tag or digest. Examples: \"gcr.io/my-project/image:tag\" or \"gcr.io/my-project/image@digest\"", + "repository": { + "description": "URI string identifying the repository. Example: \"https://source.developers.google.com/p/app-123/r/default\"", + "type": "string" + }, + "revisionId": { + "description": "The canonical, persistent identifier of the deployed revision. Aliases that include tags or branch names are not allowed. Example (git): \"2198322f89e0bb2e25021667c2ed489d1fd34e6b\"", + "type": "string" + } + }, + "type": "object" + }, + "StaticFilesHandler": { + "description": "Files served directly to the user for a given URL, such as images, CSS stylesheets, or JavaScript source files. Static file handlers describe which files in the application directory are static files, and which URLs serve them.", + "id": "StaticFilesHandler", + "properties": { + "applicationReadable": { + "description": "Whether files should also be uploaded as code data. By default, files declared in static file handlers are uploaded as static data and are only served to end users; they cannot be read by the application. If enabled, uploads are charged against both your code and static data storage resource quotas.", + "type": "boolean" + }, + "expiration": { + "description": "Time a static file served by this handler should be cached.", + "format": "google-duration", + "type": "string" + }, + "httpHeaders": { + "additionalProperties": { + "type": "string" + }, + "description": "HTTP headers to use for all responses from these URLs.", + "type": "object" + }, + "mimeType": { + "description": "MIME type used to serve all files served by this handler. Defaults to file-specific MIME types, which are derived from each file's filename extension.", + "type": "string" + }, + "path": { + "description": "Path to the static files matched by the URL pattern, from the application root directory. The path can refer to text matched in groupings in the URL pattern.", + "type": "string" + }, + "requireMatchingFile": { + "description": "Whether this handler should match the request if the file referenced by the handler does not exist.", + "type": "boolean" + }, + "uploadPathRegex": { + "description": "Regular expression that matches the file paths for all files that should be referenced by this handler.", + "type": "string" + } + }, + "type": "object" + }, + "Status": { + "description": "The Status type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by gRPC (https://github.com/grpc). The error model is designed to be:\nSimple to use and understand for most users\nFlexible enough to meet unexpected needsOverviewThe Status message contains three pieces of data: error code, error message, and error details. The error code should be an enum value of google.rpc.Code, but it may accept additional error codes if needed. The error message should be a developer-facing English message that helps developers understand and resolve the error. If a localized user-facing error message is needed, put the localized message in the error details or localize it in the client. The optional error details may contain arbitrary information about the error. There is a predefined set of error detail types in the package google.rpc that can be used for common error conditions.Language mappingThe Status message is the logical representation of the error model, but it is not necessarily the actual wire format. When the Status message is exposed in different client libraries and different wire protocols, it can be mapped differently. For example, it will likely be mapped to some exceptions in Java, but more likely mapped to some error codes in C.Other usesThe error model and the Status message can be used in a variety of environments, either with or without APIs, to provide a consistent developer experience across different environments.Example uses of this error model include:\nPartial errors. If a service needs to return partial errors to the client, it may embed the Status in the normal response to indicate the partial errors.\nWorkflow errors. A typical workflow has multiple steps. Each step may have a Status message for error reporting.\nBatch operations. If a client uses batch request and batch response, the Status message should be used directly inside batch response, one for each error sub-response.\nAsynchronous operations. If an API call embeds asynchronous operation results in its response, the status of those operations should be represented directly using the Status message.\nLogging. If some API errors are stored in logs, the message Status could be used directly after any stripping needed for security/privacy reasons.", + "id": "Status", + "properties": { + "code": { + "description": "The status code, which should be an enum value of google.rpc.Code.", + "format": "int32", + "type": "integer" + }, + "details": { + "description": "A list of messages that carry the error details. There is a common set of message types for APIs to use.", + "items": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the google.rpc.Status.details field, or localized by the client.", + "type": "string" + } + }, + "type": "object" + }, + "TrafficSplit": { + "description": "Traffic routing configuration for versions within a single service. Traffic splits define how traffic directed to the service is assigned to versions.", + "id": "TrafficSplit", + "properties": { + "allocations": { + "additionalProperties": { + "format": "double", + "type": "number" + }, + "description": "Mapping from version IDs within the service to fractional (0.000, 1] allocations of traffic for that version. Each version can be specified only once, but some versions in the service may not have any traffic allocation. Services that have traffic allocated cannot be deleted until either the service is deleted or their traffic allocation is removed. Allocations must sum to 1. Up to two decimal place precision is supported for IP-based splits and up to three decimal places is supported for cookie-based splits.", + "type": "object" + }, + "shardBy": { + "description": "Mechanism used to determine which version a request is sent to. The traffic selection algorithm will be stable for either type until allocations are changed.", + "enum": [ + "UNSPECIFIED", + "COOKIE", + "IP" + ], + "enumDescriptions": [ + "Diversion method unspecified.", + "Diversion based on a specially named cookie, \"GOOGAPPUID.\" The cookie must be set by the application itself or else no diversion will occur.", + "Diversion based on applying the modulus operation to a fingerprint of the IP address." + ], + "type": "string" + } + }, + "type": "object" + }, + "UrlDispatchRule": { + "description": "Rules to match an HTTP request and dispatch that request to a service.", + "id": "UrlDispatchRule", + "properties": { + "domain": { + "description": "Domain name to match against. The wildcard \"*\" is supported if specified before a period: \"*.\".Defaults to matching all domains: \"*\".", + "type": "string" + }, + "path": { + "description": "Pathname within the host. Must start with a \"/\". A single \"*\" can be included at the end of the path. The sum of the lengths of the domain and path may not exceed 100 characters.", + "type": "string" + }, + "service": { + "description": "Resource id of a service in this application that should serve the matched request. The service must already exist. Example: default.", + "type": "string" + } + }, + "type": "object" + }, + "UrlMap": { + "description": "URL pattern and description of how the URL should be handled. App Engine can handle URLs by executing application code, or by serving static files uploaded with the version, such as images, CSS, or JavaScript.", + "id": "UrlMap", + "properties": { + "apiEndpoint": { + "$ref": "ApiEndpointHandler", + "description": "Uses API Endpoints to handle requests." + }, + "authFailAction": { + "description": "Action to take when users access resources that require authentication. Defaults to redirect.", + "enum": [ + "AUTH_FAIL_ACTION_UNSPECIFIED", + "AUTH_FAIL_ACTION_REDIRECT", + "AUTH_FAIL_ACTION_UNAUTHORIZED" + ], + "enumDescriptions": [ + "Not specified. AUTH_FAIL_ACTION_REDIRECT is assumed.", + "Redirects user to \"accounts.google.com\". The user is redirected back to the application URL after signing in or creating an account.", + "Rejects request with an401 HTTP status code and an error message." + ], + "type": "string" + }, + "login": { + "description": "Level of login required to access this resource.", + "enum": [ + "LOGIN_UNSPECIFIED", + "LOGIN_OPTIONAL", + "LOGIN_ADMIN", + "LOGIN_REQUIRED" + ], + "enumDescriptions": [ + "Not specified. LOGIN_OPTIONAL is assumed.", + "Does not require that the user is signed in.", + "If the user is not signed in, the auth_fail_action is taken. In addition, if the user is not an administrator for the application, they are given an error message regardless of auth_fail_action. If the user is an administrator, the handler proceeds.", + "If the user has signed in, the handler proceeds normally. Otherwise, the action given in auth_fail_action is taken." + ], + "type": "string" + }, + "redirectHttpResponseCode": { + "description": "30x code to use when performing redirects for the secure field. Defaults to 302.", + "enum": [ + "REDIRECT_HTTP_RESPONSE_CODE_UNSPECIFIED", + "REDIRECT_HTTP_RESPONSE_CODE_301", + "REDIRECT_HTTP_RESPONSE_CODE_302", + "REDIRECT_HTTP_RESPONSE_CODE_303", + "REDIRECT_HTTP_RESPONSE_CODE_307" + ], + "enumDescriptions": [ + "Not specified. 302 is assumed.", + "301 Moved Permanently code.", + "302 Moved Temporarily code.", + "303 See Other code.", + "307 Temporary Redirect code." + ], + "type": "string" + }, + "script": { + "$ref": "ScriptHandler", + "description": "Executes a script to handle the request that matches this URL pattern." + }, + "securityLevel": { + "description": "Security (HTTPS) enforcement for this URL.", + "enum": [ + "SECURE_UNSPECIFIED", + "SECURE_DEFAULT", + "SECURE_NEVER", + "SECURE_OPTIONAL", + "SECURE_ALWAYS" + ], + "enumDescriptions": [ + "Not specified.", + "Both HTTP and HTTPS requests with URLs that match the handler succeed without redirects. The application can examine the request to determine which protocol was used, and respond accordingly.", + "Requests for a URL that match this handler that use HTTPS are automatically redirected to the HTTP equivalent URL.", + "Both HTTP and HTTPS requests with URLs that match the handler succeed without redirects. The application can examine the request to determine which protocol was used and respond accordingly.", + "Requests for a URL that match this handler that do not use HTTPS are automatically redirected to the HTTPS URL with the same path. Query parameters are reserved for the redirect." + ], + "type": "string" + }, + "staticFiles": { + "$ref": "StaticFilesHandler", + "description": "Returns the contents of a file, such as an image, as the response." + }, + "urlRegex": { + "description": "A URL prefix. Uses regular expression syntax, which means regexp special characters must be escaped, but should not contain groupings. All URLs that begin with this prefix are handled by this handler, using the portion of the URL after the prefix as part of the file path.", "type": "string" } }, - "id": "ContainerInfo", - "description": "Docker image that is used to create a container and start a VM instance for the version that you deploy. Only applicable for instances running in the App Engine flexible environment.", "type": "object" }, "Version": { "description": "A Version resource is a specific set of source code and configuration files that are deployed into a service.", - "type": "object", + "id": "Version", "properties": { - "basicScaling": { - "description": "A service with basic scaling will create an instance when the application receives a request. The instance will be turned down when the app becomes idle. Basic scaling is ideal for work that is intermittent or driven by user activity.", - "$ref": "BasicScaling" + "apiConfig": { + "$ref": "ApiConfigHandler", + "description": "Serving configuration for Google Cloud Endpoints (https://cloud.google.com/appengine/docs/python/endpoints/).Only returned in GET requests if view=FULL is set." }, - "runtime": { - "description": "Desired runtime. Example: python27.", + "automaticScaling": { + "$ref": "AutomaticScaling", + "description": "Automatic scaling is based on request rate, response latencies, and other application metrics." + }, + "basicScaling": { + "$ref": "BasicScaling", + "description": "A service with basic scaling will create an instance when the application receives a request. The instance will be turned down when the app becomes idle. Basic scaling is ideal for work that is intermittent or driven by user activity." + }, + "betaSettings": { + "additionalProperties": { + "type": "string" + }, + "description": "Metadata settings that are supplied to this version to enable beta runtime features.", + "type": "object" + }, + "creationTime": { + "description": "Time that this version was created.@OutputOnly", + "format": "google-datetime", "type": "string" }, - "id": { - "description": "Relative name of the version within the module. Example: v1. Version names can contain only lowercase letters, numbers, or hyphens. Reserved names: \"default\", \"latest\", and any name with the prefix \"ah-\".", + "defaultExpiration": { + "description": "Duration that static files should be cached by web proxies and browsers. Only applicable if the corresponding StaticFilesHandler (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1/apps.services.versions#staticfileshandler) does not specify its own expiration time.Only returned in GET requests if view=FULL is set.", + "format": "google-duration", + "type": "string" + }, + "deployer": { + "description": "Email address of the user who created this version.@OutputOnly", + "type": "string" + }, + "deployment": { + "$ref": "Deployment", + "description": "Code and application artifacts that make up this version.Only returned in GET requests if view=FULL is set." + }, + "diskUsageBytes": { + "description": "Total size of version files hosted on App Engine disk in bytes.@OutputOnly", + "format": "int64", + "type": "string" + }, + "endpointsApiService": { + "$ref": "EndpointsApiService", + "description": "Cloud Endpoints configuration.If endpoints_api_service is set, the Cloud Endpoints Extensible Service Proxy will be provided to serve the API implemented by the app." + }, + "env": { + "description": "App Engine execution environment to use for this version.Defaults to 1.", "type": "string" }, "envVariables": { @@ -1112,98 +2300,41 @@ "description": "Environment variables made available to the application.Only returned in GET requests if view=FULL is set.", "type": "object" }, - "network": { - "description": "Extra network settings. Only applicable for VM runtimes.", - "$ref": "Network" - }, - "betaSettings": { - "description": "Metadata settings that are supplied to this version to enable beta runtime features.", - "type": "object", - "additionalProperties": { - "type": "string" - } - }, - "env": { - "description": "App Engine execution environment to use for this version.Defaults to 1.", - "type": "string" + "errorHandlers": { + "description": "Custom static error pages. Limited to 10KB per page.Only returned in GET requests if view=FULL is set.", + "items": { + "$ref": "ErrorHandler" + }, + "type": "array" }, "handlers": { "description": "An ordered list of URL-matching patterns that should be applied to incoming requests. The first matching URL handles the request and other request handlers are not attempted.Only returned in GET requests if view=FULL is set.", - "type": "array", "items": { "$ref": "UrlMap" - } - }, - "deployer": { - "description": "Email address of the user who created this version.@OutputOnly", - "type": "string" - }, - "automaticScaling": { - "$ref": "AutomaticScaling", - "description": "Automatic scaling is based on request rate, response latencies, and other application metrics." - }, - "diskUsageBytes": { - "description": "Total size of version files hosted on App Engine disk in bytes.@OutputOnly", - "format": "int64", - "type": "string" + }, + "type": "array" }, "healthCheck": { "$ref": "HealthCheck", "description": "Configures health checking for VM instances. Unhealthy instances are be stopped and replaced with new instances. Only applicable for VM runtimes.Only returned in GET requests if view=FULL is set." }, - "threadsafe": { - "description": "Whether multiple requests can be dispatched to this version at once.", - "type": "boolean" - }, - "manualScaling": { - "$ref": "ManualScaling", - "description": "A service with manual scaling runs continuously, allowing you to perform complex initialization and rely on the state of its memory over time." - }, - "name": { - "description": "Full path to the Version resource in the API. Example: apps/myapp/services/default/versions/v1.@OutputOnly", + "id": { + "description": "Relative name of the version within the module. Example: v1. Version names can contain only lowercase letters, numbers, or hyphens. Reserved names: \"default\", \"latest\", and any name with the prefix \"ah-\".", "type": "string" }, - "apiConfig": { - "$ref": "ApiConfigHandler", - "description": "Serving configuration for Google Cloud Endpoints (https://cloud.google.com/appengine/docs/python/endpoints/).Only returned in GET requests if view=FULL is set." - }, - "endpointsApiService": { - "$ref": "EndpointsApiService", - "description": "Cloud Endpoints configuration.If endpoints_api_service is set, the Cloud Endpoints Extensible Service Proxy will be provided to serve the API implemented by the app." - }, - "vm": { - "description": "Whether to deploy this version in a container on a virtual machine.", - "type": "boolean" - }, - "instanceClass": { - "description": "Instance class that is used to run this version. Valid values are:\nAutomaticScaling: F1, F2, F4, F4_1G\nManualScaling or BasicScaling: B1, B2, B4, B8, B4_1GDefaults to F1 for AutomaticScaling and B1 for ManualScaling or BasicScaling.", - "type": "string" - }, - "servingStatus": { - "enum": [ - "SERVING_STATUS_UNSPECIFIED", - "SERVING", - "STOPPED" - ], - "description": "Current serving status of this version. Only the versions with a SERVING status create instances and can be billed.SERVING_STATUS_UNSPECIFIED is an invalid value. Defaults to SERVING.", - "type": "string", - "enumDescriptions": [ - "Not specified.", - "Currently serving. Instances are created according to the scaling settings of the version.", - "Disabled from serving. No instances will be created and the scaling settings are ignored until the state of the version changes to SERVING." - ] - }, - "runtimeApiVersion": { - "description": "The version of the API in the given runtime environment. Please see the app.yaml reference for valid values at https://cloud.google.com/appengine/docs/standard/\u003clanguage\u003e/config/appref", - "type": "string" - }, - "deployment": { - "$ref": "Deployment", - "description": "Code and application artifacts that make up this version.Only returned in GET requests if view=FULL is set." - }, "inboundServices": { "description": "Before an application can receive email or XMPP messages, the application must be configured to enable the service.", - "type": "array", + "enumDescriptions": [ + "Not specified.", + "Allows an application to receive mail.", + "Allows an application to receive email-bound notifications.", + "Allows an application to receive error stanzas.", + "Allows an application to receive instant messages.", + "Allows an application to receive user subscription POSTs.", + "Allows an application to receive a user's chat presence.", + "Registers an application for notifications when a client connects or disconnects from a channel.", + "Enables warmup requests." + ], "items": { "enum": [ "INBOUND_SERVICE_UNSPECIFIED", @@ -1218,629 +2349,78 @@ ], "type": "string" }, - "enumDescriptions": [ - "Not specified.", - "Allows an application to receive mail.", - "Allows an application to receive email-bound notifications.", - "Allows an application to receive error stanzas.", - "Allows an application to receive instant messages.", - "Allows an application to receive user subscription POSTs.", - "Allows an application to receive a user's chat presence.", - "Registers an application for notifications when a client connects or disconnects from a channel.", - "Enables warmup requests." - ] + "type": "array" }, - "resources": { - "$ref": "Resources", - "description": "Machine resources for this version. Only applicable for VM runtimes." - }, - "errorHandlers": { - "description": "Custom static error pages. Limited to 10KB per page.Only returned in GET requests if view=FULL is set.", - "type": "array", - "items": { - "$ref": "ErrorHandler" - } - }, - "defaultExpiration": { - "description": "Duration that static files should be cached by web proxies and browsers. Only applicable if the corresponding StaticFilesHandler (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1/apps.services.versions#staticfileshandler) does not specify its own expiration time.Only returned in GET requests if view=FULL is set.", - "format": "google-duration", + "instanceClass": { + "description": "Instance class that is used to run this version. Valid values are:\nAutomaticScaling: F1, F2, F4, F4_1G\nManualScaling or BasicScaling: B1, B2, B4, B8, B4_1GDefaults to F1 for AutomaticScaling and B1 for ManualScaling or BasicScaling.", "type": "string" }, "libraries": { "description": "Configuration for third-party Python runtime libraries required by the application.Only returned in GET requests if view=FULL is set.", - "type": "array", "items": { "$ref": "Library" - } + }, + "type": "array" + }, + "manualScaling": { + "$ref": "ManualScaling", + "description": "A service with manual scaling runs continuously, allowing you to perform complex initialization and rely on the state of its memory over time." + }, + "name": { + "description": "Full path to the Version resource in the API. Example: apps/myapp/services/default/versions/v1.@OutputOnly", + "type": "string" + }, + "network": { + "$ref": "Network", + "description": "Extra network settings. Only applicable for VM runtimes." }, "nobuildFilesRegex": { "description": "Files that match this pattern will not be built into this version. Only applicable for Go runtimes.Only returned in GET requests if view=FULL is set.", "type": "string" }, - "creationTime": { - "description": "Time that this version was created.@OutputOnly", - "format": "google-datetime", - "type": "string" - } - }, - "id": "Version" - }, - "RequestUtilization": { - "description": "Target scaling by request utilization. Only applicable for VM runtimes.", - "type": "object", - "properties": { - "targetRequestCountPerSec": { - "description": "Target requests per second.", - "format": "int32", - "type": "integer" + "resources": { + "$ref": "Resources", + "description": "Machine resources for this version. Only applicable for VM runtimes." }, - "targetConcurrentRequests": { - "description": "Target number of concurrent requests.", - "format": "int32", - "type": "integer" - } - }, - "id": "RequestUtilization" - }, - "EndpointsApiService": { - "properties": { - "name": { - "description": "Endpoints service name which is the name of the \"service\" resource in the Service Management API. For example \"myapi.endpoints.myproject.cloud.goog\"", + "runtime": { + "description": "Desired runtime. Example: python27.", "type": "string" }, - "configId": { - "description": "Endpoints service configuration id as specified by the Service Management API. For example \"2016-09-19r1\"By default, the Endpoints service configuration id is fixed and config_id must be specified. To keep the Endpoints service configuration id updated with each rollout, specify RolloutStrategy.MANAGED and omit config_id.", + "runtimeApiVersion": { + "description": "The version of the API in the given runtime environment. Please see the app.yaml reference for valid values at https://cloud.google.com/appengine/docs/standard/\u003clanguage\u003e/config/appref", "type": "string" - } - }, - "id": "EndpointsApiService", - "description": "Cloud Endpoints (https://cloud.google.com/endpoints) configuration. The Endpoints API Service provides tooling for serving Open API and gRPC endpoints via an NGINX proxy.The fields here refer to the name and configuration id of a \"service\" resource in the Service Management API (https://cloud.google.com/service-management/overview).", - "type": "object" - }, - "UrlMap": { - "properties": { - "securityLevel": { + }, + "servingStatus": { + "description": "Current serving status of this version. Only the versions with a SERVING status create instances and can be billed.SERVING_STATUS_UNSPECIFIED is an invalid value. Defaults to SERVING.", "enum": [ - "SECURE_UNSPECIFIED", - "SECURE_DEFAULT", - "SECURE_NEVER", - "SECURE_OPTIONAL", - "SECURE_ALWAYS" + "SERVING_STATUS_UNSPECIFIED", + "SERVING", + "STOPPED" ], - "description": "Security (HTTPS) enforcement for this URL.", - "type": "string", "enumDescriptions": [ "Not specified.", - "Both HTTP and HTTPS requests with URLs that match the handler succeed without redirects. The application can examine the request to determine which protocol was used, and respond accordingly.", - "Requests for a URL that match this handler that use HTTPS are automatically redirected to the HTTP equivalent URL.", - "Both HTTP and HTTPS requests with URLs that match the handler succeed without redirects. The application can examine the request to determine which protocol was used and respond accordingly.", - "Requests for a URL that match this handler that do not use HTTPS are automatically redirected to the HTTPS URL with the same path. Query parameters are reserved for the redirect." - ] - }, - "authFailAction": { - "enum": [ - "AUTH_FAIL_ACTION_UNSPECIFIED", - "AUTH_FAIL_ACTION_REDIRECT", - "AUTH_FAIL_ACTION_UNAUTHORIZED" + "Currently serving. Instances are created according to the scaling settings of the version.", + "Disabled from serving. No instances will be created and the scaling settings are ignored until the state of the version changes to SERVING." ], - "description": "Action to take when users access resources that require authentication. Defaults to redirect.", - "type": "string", - "enumDescriptions": [ - "Not specified. AUTH_FAIL_ACTION_REDIRECT is assumed.", - "Redirects user to \"accounts.google.com\". The user is redirected back to the application URL after signing in or creating an account.", - "Rejects request with an401 HTTP status code and an error message." - ] - }, - "script": { - "description": "Executes a script to handle the request that matches this URL pattern.", - "$ref": "ScriptHandler" - }, - "urlRegex": { - "description": "A URL prefix. Uses regular expression syntax, which means regexp special characters must be escaped, but should not contain groupings. All URLs that begin with this prefix are handled by this handler, using the portion of the URL after the prefix as part of the file path.", "type": "string" }, - "login": { - "description": "Level of login required to access this resource.", - "type": "string", - "enumDescriptions": [ - "Not specified. LOGIN_OPTIONAL is assumed.", - "Does not require that the user is signed in.", - "If the user is not signed in, the auth_fail_action is taken. In addition, if the user is not an administrator for the application, they are given an error message regardless of auth_fail_action. If the user is an administrator, the handler proceeds.", - "If the user has signed in, the handler proceeds normally. Otherwise, the action given in auth_fail_action is taken." - ], - "enum": [ - "LOGIN_UNSPECIFIED", - "LOGIN_OPTIONAL", - "LOGIN_ADMIN", - "LOGIN_REQUIRED" - ] - }, - "apiEndpoint": { - "$ref": "ApiEndpointHandler", - "description": "Uses API Endpoints to handle requests." - }, - "staticFiles": { - "description": "Returns the contents of a file, such as an image, as the response.", - "$ref": "StaticFilesHandler" - }, - "redirectHttpResponseCode": { - "enumDescriptions": [ - "Not specified. 302 is assumed.", - "301 Moved Permanently code.", - "302 Moved Temporarily code.", - "303 See Other code.", - "307 Temporary Redirect code." - ], - "enum": [ - "REDIRECT_HTTP_RESPONSE_CODE_UNSPECIFIED", - "REDIRECT_HTTP_RESPONSE_CODE_301", - "REDIRECT_HTTP_RESPONSE_CODE_302", - "REDIRECT_HTTP_RESPONSE_CODE_303", - "REDIRECT_HTTP_RESPONSE_CODE_307" - ], - "description": "30x code to use when performing redirects for the secure field. Defaults to 302.", - "type": "string" - } - }, - "id": "UrlMap", - "description": "URL pattern and description of how the URL should be handled. App Engine can handle URLs by executing application code, or by serving static files uploaded with the version, such as images, CSS, or JavaScript.", - "type": "object" - }, - "Operation": { - "description": "This resource represents a long-running operation that is the result of a network API call.", - "type": "object", - "properties": { - "error": { - "$ref": "Status", - "description": "The error result of the operation in case of failure or cancellation." - }, - "metadata": { - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - }, - "description": "Service-specific metadata associated with the operation. It typically contains progress information and common metadata such as create time. Some services might not provide such metadata. Any method that returns a long-running operation should document the metadata type, if any.", - "type": "object" - }, - "done": { - "description": "If the value is false, it means the operation is still in progress. If true, the operation is completed, and either error or response is available.", + "threadsafe": { + "description": "Whether multiple requests can be dispatched to this version at once.", "type": "boolean" }, - "response": { - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - }, - "description": "The normal response of the operation in case of success. If the original method returns no data on success, such as Delete, the response is google.protobuf.Empty. If the original method is standard Get/Create/Update, the response should be the resource. For other methods, the response should have the type XxxResponse, where Xxx is the original method name. For example, if the original method name is TakeSnapshot(), the inferred response type is TakeSnapshotResponse.", - "type": "object" - }, - "name": { - "description": "The server-assigned name, which is only unique within the same service that originally returns it. If you use the default HTTP mapping, the name should have the format of operations/some/unique/name.", - "type": "string" - } - }, - "id": "Operation" - }, - "ApiConfigHandler": { - "description": "Google Cloud Endpoints (https://cloud.google.com/appengine/docs/python/endpoints/) configuration for API handlers.", - "type": "object", - "properties": { - "securityLevel": { - "enumDescriptions": [ - "Not specified.", - "Both HTTP and HTTPS requests with URLs that match the handler succeed without redirects. The application can examine the request to determine which protocol was used, and respond accordingly.", - "Requests for a URL that match this handler that use HTTPS are automatically redirected to the HTTP equivalent URL.", - "Both HTTP and HTTPS requests with URLs that match the handler succeed without redirects. The application can examine the request to determine which protocol was used and respond accordingly.", - "Requests for a URL that match this handler that do not use HTTPS are automatically redirected to the HTTPS URL with the same path. Query parameters are reserved for the redirect." - ], - "enum": [ - "SECURE_UNSPECIFIED", - "SECURE_DEFAULT", - "SECURE_NEVER", - "SECURE_OPTIONAL", - "SECURE_ALWAYS" - ], - "description": "Security (HTTPS) enforcement for this URL.", - "type": "string" - }, - "authFailAction": { - "enumDescriptions": [ - "Not specified. AUTH_FAIL_ACTION_REDIRECT is assumed.", - "Redirects user to \"accounts.google.com\". The user is redirected back to the application URL after signing in or creating an account.", - "Rejects request with an401 HTTP status code and an error message." - ], - "enum": [ - "AUTH_FAIL_ACTION_UNSPECIFIED", - "AUTH_FAIL_ACTION_REDIRECT", - "AUTH_FAIL_ACTION_UNAUTHORIZED" - ], - "description": "Action to take when users access resources that require authentication. Defaults to redirect.", - "type": "string" - }, - "script": { - "description": "Path to the script from the application root directory.", - "type": "string" - }, - "login": { - "enumDescriptions": [ - "Not specified. LOGIN_OPTIONAL is assumed.", - "Does not require that the user is signed in.", - "If the user is not signed in, the auth_fail_action is taken. In addition, if the user is not an administrator for the application, they are given an error message regardless of auth_fail_action. If the user is an administrator, the handler proceeds.", - "If the user has signed in, the handler proceeds normally. Otherwise, the action given in auth_fail_action is taken." - ], - "enum": [ - "LOGIN_UNSPECIFIED", - "LOGIN_OPTIONAL", - "LOGIN_ADMIN", - "LOGIN_REQUIRED" - ], - "description": "Level of login required to access this resource. Defaults to optional.", - "type": "string" - }, - "url": { - "description": "URL to serve the endpoint at.", - "type": "string" - } - }, - "id": "ApiConfigHandler" - }, - "ScriptHandler": { - "properties": { - "scriptPath": { - "description": "Path to the script from the application root directory.", - "type": "string" - } - }, - "id": "ScriptHandler", - "description": "Executes a script to handle the request that matches the URL pattern.", - "type": "object" - }, - "StaticFilesHandler": { - "properties": { - "uploadPathRegex": { - "description": "Regular expression that matches the file paths for all files that should be referenced by this handler.", - "type": "string" - }, - "path": { - "description": "Path to the static files matched by the URL pattern, from the application root directory. The path can refer to text matched in groupings in the URL pattern.", - "type": "string" - }, - "mimeType": { - "description": "MIME type used to serve all files served by this handler. Defaults to file-specific MIME types, which are derived from each file's filename extension.", - "type": "string" - }, - "requireMatchingFile": { - "description": "Whether this handler should match the request if the file referenced by the handler does not exist.", - "type": "boolean" - }, - "expiration": { - "description": "Time a static file served by this handler should be cached.", - "format": "google-duration", - "type": "string" - }, - "applicationReadable": { - "description": "Whether files should also be uploaded as code data. By default, files declared in static file handlers are uploaded as static data and are only served to end users; they cannot be read by the application. If enabled, uploads are charged against both your code and static data storage resource quotas.", - "type": "boolean" - }, - "httpHeaders": { - "additionalProperties": { - "type": "string" - }, - "description": "HTTP headers to use for all responses from these URLs.", - "type": "object" - } - }, - "id": "StaticFilesHandler", - "description": "Files served directly to the user for a given URL, such as images, CSS stylesheets, or JavaScript source files. Static file handlers describe which files in the application directory are static files, and which URLs serve them.", - "type": "object" - }, - "FileInfo": { - "description": "Single source file that is part of the version to be deployed. Each source file that is deployed must be specified separately.", - "type": "object", - "properties": { - "sha1Sum": { - "description": "The SHA1 hash of the file, in hex.", - "type": "string" - }, - "mimeType": { - "description": "The MIME type of the file.Defaults to the value from Google Cloud Storage.", - "type": "string" - }, - "sourceUrl": { - "description": "URL source to use to fetch this file. Must be a URL to a resource in Google Cloud Storage in the form 'http(s)://storage.googleapis.com/\u003cbucket\u003e/\u003cobject\u003e'.", - "type": "string" - } - }, - "id": "FileInfo" - }, - "BasicScaling": { - "properties": { - "maxInstances": { - "description": "Maximum number of instances to create for this version.", - "format": "int32", - "type": "integer" - }, - "idleTimeout": { - "description": "Duration of time after the last request that an instance must wait before the instance is shut down.", - "format": "google-duration", - "type": "string" - } - }, - "id": "BasicScaling", - "description": "A service with basic scaling will create an instance when the application receives a request. The instance will be turned down when the app becomes idle. Basic scaling is ideal for work that is intermittent or driven by user activity.", - "type": "object" - }, - "DiskUtilization": { - "description": "Target scaling by disk usage. Only applicable for VM runtimes.", - "type": "object", - "properties": { - "targetReadBytesPerSec": { - "description": "Target bytes read per second.", - "format": "int32", - "type": "integer" - }, - "targetWriteOpsPerSec": { - "description": "Target ops written per second.", - "format": "int32", - "type": "integer" - }, - "targetWriteBytesPerSec": { - "description": "Target bytes written per second.", - "format": "int32", - "type": "integer" - }, - "targetReadOpsPerSec": { - "description": "Target ops read per second.", - "format": "int32", - "type": "integer" - } - }, - "id": "DiskUtilization" - }, - "CpuUtilization": { - "description": "Target scaling by CPU usage.", - "type": "object", - "properties": { - "aggregationWindowLength": { - "description": "Period of time over which CPU utilization is calculated.", - "format": "google-duration", - "type": "string" - }, - "targetUtilization": { - "description": "Target CPU utilization ratio to maintain when scaling. Must be between 0 and 1.", - "format": "double", - "type": "number" - } - }, - "id": "CpuUtilization" - }, - "Status": { - "description": "The Status type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by gRPC (https://github.com/grpc). The error model is designed to be:\nSimple to use and understand for most users\nFlexible enough to meet unexpected needsOverviewThe Status message contains three pieces of data: error code, error message, and error details. The error code should be an enum value of google.rpc.Code, but it may accept additional error codes if needed. The error message should be a developer-facing English message that helps developers understand and resolve the error. If a localized user-facing error message is needed, put the localized message in the error details or localize it in the client. The optional error details may contain arbitrary information about the error. There is a predefined set of error detail types in the package google.rpc that can be used for common error conditions.Language mappingThe Status message is the logical representation of the error model, but it is not necessarily the actual wire format. When the Status message is exposed in different client libraries and different wire protocols, it can be mapped differently. For example, it will likely be mapped to some exceptions in Java, but more likely mapped to some error codes in C.Other usesThe error model and the Status message can be used in a variety of environments, either with or without APIs, to provide a consistent developer experience across different environments.Example uses of this error model include:\nPartial errors. If a service needs to return partial errors to the client, it may embed the Status in the normal response to indicate the partial errors.\nWorkflow errors. A typical workflow has multiple steps. Each step may have a Status message for error reporting.\nBatch operations. If a client uses batch request and batch response, the Status message should be used directly inside batch response, one for each error sub-response.\nAsynchronous operations. If an API call embeds asynchronous operation results in its response, the status of those operations should be represented directly using the Status message.\nLogging. If some API errors are stored in logs, the message Status could be used directly after any stripping needed for security/privacy reasons.", - "type": "object", - "properties": { - "code": { - "description": "The status code, which should be an enum value of google.rpc.Code.", - "format": "int32", - "type": "integer" - }, - "message": { - "description": "A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the google.rpc.Status.details field, or localized by the client.", - "type": "string" - }, - "details": { - "description": "A list of messages that carry the error details. There is a common set of message types for APIs to use.", - "type": "array", - "items": { - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - }, - "type": "object" - } - } - }, - "id": "Status" - }, - "IdentityAwareProxy": { - "description": "Identity-Aware Proxy", - "type": "object", - "properties": { - "oauth2ClientSecret": { - "description": "For security reasons, this value cannot be retrieved via the API. Instead, the SHA-256 hash of the value is returned in the oauth2_client_secret_sha256 field.@InputOnly", - "type": "string" - }, - "oauth2ClientId": { - "description": "OAuth2 client ID to use for the authentication flow.", - "type": "string" - }, - "oauth2ClientSecretSha256": { - "description": "Hex-encoded SHA-256 hash of the client secret.@OutputOnly", - "type": "string" - }, - "enabled": { - "description": "Whether the serving infrastructure will authenticate and authorize all incoming requests.If true, the oauth2_client_id and oauth2_client_secret fields must be non-empty.", + "vm": { + "description": "Whether to deploy this version in a container on a virtual machine.", "type": "boolean" } }, - "id": "IdentityAwareProxy" - }, - "ManualScaling": { - "description": "A service with manual scaling runs continuously, allowing you to perform complex initialization and rely on the state of its memory over time.", - "type": "object", - "properties": { - "instances": { - "description": "Number of instances to assign to the service at the start. This number can later be altered by using the Modules API (https://cloud.google.com/appengine/docs/python/modules/functions) set_num_instances() function.", - "format": "int32", - "type": "integer" - } - }, - "id": "ManualScaling" - }, - "TrafficSplit": { - "properties": { - "shardBy": { - "enumDescriptions": [ - "Diversion method unspecified.", - "Diversion based on a specially named cookie, \"GOOGAPPUID.\" The cookie must be set by the application itself or else no diversion will occur.", - "Diversion based on applying the modulus operation to a fingerprint of the IP address." - ], - "enum": [ - "UNSPECIFIED", - "COOKIE", - "IP" - ], - "description": "Mechanism used to determine which version a request is sent to. The traffic selection algorithm will be stable for either type until allocations are changed.", - "type": "string" - }, - "allocations": { - "additionalProperties": { - "format": "double", - "type": "number" - }, - "description": "Mapping from version IDs within the service to fractional (0.000, 1] allocations of traffic for that version. Each version can be specified only once, but some versions in the service may not have any traffic allocation. Services that have traffic allocated cannot be deleted until either the service is deleted or their traffic allocation is removed. Allocations must sum to 1. Up to two decimal place precision is supported for IP-based splits and up to three decimal places is supported for cookie-based splits.", - "type": "object" - } - }, - "id": "TrafficSplit", - "description": "Traffic routing configuration for versions within a single service. Traffic splits define how traffic directed to the service is assigned to versions.", "type": "object" }, - "LocationMetadata": { - "properties": { - "flexibleEnvironmentAvailable": { - "description": "App Engine Flexible Environment is available in the given location.@OutputOnly", - "type": "boolean" - }, - "standardEnvironmentAvailable": { - "description": "App Engine Standard Environment is available in the given location.@OutputOnly", - "type": "boolean" - } - }, - "id": "LocationMetadata", - "description": "Metadata for the given google.cloud.location.Location.", - "type": "object" - }, - "OperationMetadataV1Beta": { - "properties": { - "method": { - "description": "API method that initiated this operation. Example: google.appengine.v1beta.Versions.CreateVersion.@OutputOnly", - "type": "string" - }, - "endTime": { - "description": "Time that this operation completed.@OutputOnly", - "format": "google-datetime", - "type": "string" - }, - "createVersionMetadata": { - "$ref": "CreateVersionMetadataV1Beta" - }, - "insertTime": { - "description": "Time that this operation was created.@OutputOnly", - "format": "google-datetime", - "type": "string" - }, - "warning": { - "description": "Durable messages that persist on every operation poll. @OutputOnly", - "type": "array", - "items": { - "type": "string" - } - }, - "target": { - "description": "Name of the resource that this operation is acting on. Example: apps/myapp/services/default.@OutputOnly", - "type": "string" - }, - "user": { - "description": "User who requested this operation.@OutputOnly", - "type": "string" - }, - "ephemeralMessage": { - "description": "Ephemeral message that may change every time the operation is polled. @OutputOnly", - "type": "string" - } - }, - "id": "OperationMetadataV1Beta", - "description": "Metadata for the given google.longrunning.Operation.", - "type": "object" - }, - "ListServicesResponse": { - "properties": { - "services": { - "description": "The services belonging to the requested application.", - "type": "array", - "items": { - "$ref": "Service" - } - }, - "nextPageToken": { - "description": "Continuation token for fetching the next page of results.", - "type": "string" - } - }, - "id": "ListServicesResponse", - "description": "Response message for Services.ListServices.", - "type": "object" - }, - "Resources": { - "description": "Machine resources for a version.", - "type": "object", - "properties": { - "volumes": { - "description": "Volumes mounted within the app container.", - "type": "array", - "items": { - "$ref": "Volume" - } - }, - "diskGb": { - "description": "Disk size (GB) needed.", - "format": "double", - "type": "number" - }, - "cpu": { - "description": "Number of CPU cores needed.", - "format": "double", - "type": "number" - }, - "memoryGb": { - "description": "Memory (GB) needed.", - "format": "double", - "type": "number" - } - }, - "id": "Resources" - }, - "Deployment": { - "description": "Code and application artifacts used to deploy a version to App Engine.", - "type": "object", - "properties": { - "container": { - "description": "The Docker image for the container that runs the version. Only applicable for instances running in the App Engine flexible environment.", - "$ref": "ContainerInfo" - }, - "sourceReferences": { - "description": "Origin of the source code for this deployment. There can be more than one source reference per version if source code is distributed among multiple repositories.", - "type": "array", - "items": { - "$ref": "SourceReference" - } - }, - "files": { - "additionalProperties": { - "$ref": "FileInfo" - }, - "description": "Manifest of the files stored in Google Cloud Storage that are included as part of this version. All files must be readable using the credentials supplied with this call.", - "type": "object" - } - }, - "id": "Deployment" - }, "Volume": { "description": "Volumes mounted within the app container. Only applicable for VM runtimes.", - "type": "object", + "id": "Volume", "properties": { - "volumeType": { - "description": "Underlying volume type, e.g. 'tmpfs'.", + "name": { + "description": "Unique name for the volume.", "type": "string" }, "sizeGb": { @@ -1848,563 +2428,15 @@ "format": "double", "type": "number" }, - "name": { - "description": "Unique name for the volume.", + "volumeType": { + "description": "Underlying volume type, e.g. 'tmpfs'.", "type": "string" } }, - "id": "Volume" - }, - "Service": { - "description": "A Service resource is a logical component of an application that can share state and communicate in a secure fashion with other services. For example, an application that handles customer requests might include separate services to handle other tasks such as API requests from mobile devices or backend data analysis. Each service has a collection of versions that define a specific set of code used to implement the functionality of that service.", - "type": "object", - "properties": { - "id": { - "description": "Relative name of the service within the application. Example: default.@OutputOnly", - "type": "string" - }, - "name": { - "description": "Full path to the Service resource in the API. Example: apps/myapp/services/default.@OutputOnly", - "type": "string" - }, - "split": { - "description": "Mapping that defines fractional HTTP traffic diversion to different versions within the service.", - "$ref": "TrafficSplit" - } - }, - "id": "Service" - }, - "ListOperationsResponse": { - "description": "The response message for Operations.ListOperations.", - "type": "object", - "properties": { - "nextPageToken": { - "description": "The standard List next-page token.", - "type": "string" - }, - "operations": { - "description": "A list of operations that matches the specified filter in the request.", - "type": "array", - "items": { - "$ref": "Operation" - } - } - }, - "id": "ListOperationsResponse" - }, - "OperationMetadata": { - "description": "Metadata for the given google.longrunning.Operation.", - "type": "object", - "properties": { - "insertTime": { - "description": "Timestamp that this operation was created.@OutputOnly", - "format": "google-datetime", - "type": "string" - }, - "user": { - "description": "User who requested this operation.@OutputOnly", - "type": "string" - }, - "target": { - "description": "Name of the resource that this operation is acting on. Example: apps/myapp/modules/default.@OutputOnly", - "type": "string" - }, - "method": { - "description": "API method that initiated this operation. Example: google.appengine.v1beta4.Version.CreateVersion.@OutputOnly", - "type": "string" - }, - "endTime": { - "description": "Timestamp that this operation completed.@OutputOnly", - "format": "google-datetime", - "type": "string" - }, - "operationType": { - "description": "Type of this operation. Deprecated, use method field instead. Example: \"create_version\".@OutputOnly", - "type": "string" - } - }, - "id": "OperationMetadata" - }, - "CreateVersionMetadataV1Beta": { - "description": "Metadata for the given google.longrunning.Operation during a google.appengine.v1beta.CreateVersionRequest.", - "type": "object", - "properties": { - "cloudBuildId": { - "description": "The Cloud Build ID if one was created as part of the version create. @OutputOnly", - "type": "string" - } - }, - "id": "CreateVersionMetadataV1Beta" - }, - "ListInstancesResponse": { - "description": "Response message for Instances.ListInstances.", - "type": "object", - "properties": { - "instances": { - "description": "The instances belonging to the requested version.", - "type": "array", - "items": { - "$ref": "Instance" - } - }, - "nextPageToken": { - "description": "Continuation token for fetching the next page of results.", - "type": "string" - } - }, - "id": "ListInstancesResponse" - }, - "ErrorHandler": { - "description": "Custom static error page to be served when an error occurs.", - "type": "object", - "properties": { - "errorCode": { - "description": "Error condition this handler applies to.", - "type": "string", - "enumDescriptions": [ - "Not specified. ERROR_CODE_DEFAULT is assumed.", - "All other error types.", - "Application has exceeded a resource quota.", - "Client blocked by the application's Denial of Service protection configuration.", - "Deadline reached before the application responds." - ], - "enum": [ - "ERROR_CODE_UNSPECIFIED", - "ERROR_CODE_DEFAULT", - "ERROR_CODE_OVER_QUOTA", - "ERROR_CODE_DOS_API_DENIAL", - "ERROR_CODE_TIMEOUT" - ] - }, - "mimeType": { - "description": "MIME type of file. Defaults to text/html.", - "type": "string" - }, - "staticFile": { - "description": "Static file content to be served for this error.", - "type": "string" - } - }, - "id": "ErrorHandler" - }, - "OperationMetadataV1": { - "description": "Metadata for the given google.longrunning.Operation.", - "type": "object", - "properties": { - "warning": { - "description": "Durable messages that persist on every operation poll. @OutputOnly", - "type": "array", - "items": { - "type": "string" - } - }, - "insertTime": { - "description": "Time that this operation was created.@OutputOnly", - "format": "google-datetime", - "type": "string" - }, - "user": { - "description": "User who requested this operation.@OutputOnly", - "type": "string" - }, - "target": { - "description": "Name of the resource that this operation is acting on. Example: apps/myapp/services/default.@OutputOnly", - "type": "string" - }, - "ephemeralMessage": { - "description": "Ephemeral message that may change every time the operation is polled. @OutputOnly", - "type": "string" - }, - "method": { - "description": "API method that initiated this operation. Example: google.appengine.v1.Versions.CreateVersion.@OutputOnly", - "type": "string" - }, - "endTime": { - "description": "Time that this operation completed.@OutputOnly", - "format": "google-datetime", - "type": "string" - } - }, - "id": "OperationMetadataV1" - }, - "OperationMetadataV1Alpha": { - "properties": { - "insertTime": { - "description": "Time that this operation was created.@OutputOnly", - "format": "google-datetime", - "type": "string" - }, - "warning": { - "description": "Durable messages that persist on every operation poll. @OutputOnly", - "type": "array", - "items": { - "type": "string" - } - }, - "user": { - "description": "User who requested this operation.@OutputOnly", - "type": "string" - }, - "target": { - "description": "Name of the resource that this operation is acting on. Example: apps/myapp/services/default.@OutputOnly", - "type": "string" - }, - "ephemeralMessage": { - "description": "Ephemeral message that may change every time the operation is polled. @OutputOnly", - "type": "string" - }, - "method": { - "description": "API method that initiated this operation. Example: google.appengine.v1alpha.Versions.CreateVersion.@OutputOnly", - "type": "string" - }, - "endTime": { - "description": "Time that this operation completed.@OutputOnly", - "format": "google-datetime", - "type": "string" - }, - "createVersionMetadata": { - "$ref": "CreateVersionMetadataV1Alpha" - } - }, - "id": "OperationMetadataV1Alpha", - "description": "Metadata for the given google.longrunning.Operation.", "type": "object" - }, - "Application": { - "description": "An Application resource contains the top-level configuration of an App Engine application.", - "type": "object", - "properties": { - "authDomain": { - "description": "Google Apps authentication domain that controls which users can access this application.Defaults to open access for any Google Account.", - "type": "string" - }, - "iap": { - "$ref": "IdentityAwareProxy" - }, - "id": { - "description": "Identifier of the Application resource. This identifier is equivalent to the project ID of the Google Cloud Platform project where you want to deploy your application. Example: myapp.", - "type": "string" - }, - "defaultCookieExpiration": { - "description": "Cookie expiration policy for this application.", - "format": "google-duration", - "type": "string" - }, - "codeBucket": { - "description": "A Google Cloud Storage bucket that can be used for storing files associated with this application. This bucket is associated with the application and can be used by the gcloud deployment commands.@OutputOnly", - "type": "string" - }, - "location": { - "description": "Location from which this application will be run. Application instances will run out of data centers in the chosen location, which is also where all of the application's end user content is stored.Defaults to us-central.Options are:us-central - Central USeurope-west - Western Europeus-east1 - Eastern US", - "type": "string" - }, - "defaultBucket": { - "description": "A Google Cloud Storage bucket that can be used by the application to store content.@OutputOnly", - "type": "string" - }, - "dispatchRules": { - "description": "HTTP path dispatch rules for requests to the application that do not explicitly target a service or version. Rules are order-dependent.@OutputOnly", - "type": "array", - "items": { - "$ref": "UrlDispatchRule" - } - }, - "defaultHostname": { - "description": "Hostname used to reach the application, as resolved by App Engine.@OutputOnly", - "type": "string" - }, - "name": { - "description": "Full path to the Application resource in the API. Example: apps/myapp.@OutputOnly", - "type": "string" - } - }, - "id": "Application" - }, - "Network": { - "description": "Extra network settings. Only applicable for VM runtimes.", - "type": "object", - "properties": { - "forwardedPorts": { - "description": "List of ports, or port pairs, to forward from the virtual machine to the application container.", - "type": "array", - "items": { - "type": "string" - } - }, - "instanceTag": { - "description": "Tag to apply to the VM instance during creation.", - "type": "string" - }, - "subnetworkName": { - "description": "Google Cloud Platform sub-network where the virtual machines are created. Specify the short name, not the resource path.If a subnetwork name is specified, a network name will also be required unless it is for the default network.\nIf the network the VM instance is being created in is a Legacy network, then the IP address is allocated from the IPv4Range.\nIf the network the VM instance is being created in is an auto Subnet Mode Network, then only network name should be specified (not the subnetwork_name) and the IP address is created from the IPCidrRange of the subnetwork that exists in that zone for that network.\nIf the network the VM instance is being created in is a custom Subnet Mode Network, then the subnetwork_name must be specified and the IP address is created from the IPCidrRange of the subnetwork.If specified, the subnetwork must exist in the same region as the Flex app.", - "type": "string" - }, - "name": { - "description": "Google Cloud Platform network where the virtual machines are created. Specify the short name, not the resource path.Defaults to default.", - "type": "string" - } - }, - "id": "Network" - }, - "Instance": { - "properties": { - "requests": { - "description": "Number of requests since this instance was started.@OutputOnly", - "format": "int32", - "type": "integer" - }, - "appEngineRelease": { - "description": "App Engine release this instance is running on.@OutputOnly", - "type": "string" - }, - "startTimestamp": { - "description": "Time that this instance was started.@OutputOnly", - "format": "google-datetime", - "type": "string" - }, - "vmName": { - "description": "Name of the virtual machine where this instance lives. Only applicable for instances in App Engine flexible environment.@OutputOnly", - "type": "string" - }, - "vmId": { - "description": "Virtual machine ID of this instance. Only applicable for instances in App Engine flexible environment.@OutputOnly", - "type": "string" - }, - "qps": { - "description": "Average queries per second (QPS) over the last minute.@OutputOnly", - "format": "float", - "type": "number" - }, - "vmUnlocked": { - "description": "Whether this instance is in debug mode. Only applicable for instances in App Engine flexible environment.@OutputOnly", - "type": "boolean" - }, - "name": { - "description": "Full path to the Instance resource in the API. Example: apps/myapp/services/default/versions/v1/instances/instance-1.@OutputOnly", - "type": "string" - }, - "vmZoneName": { - "description": "Zone where the virtual machine is located. Only applicable for instances in App Engine flexible environment.@OutputOnly", - "type": "string" - }, - "averageLatency": { - "description": "Average latency (ms) over the last minute.@OutputOnly", - "format": "int32", - "type": "integer" - }, - "id": { - "description": "Relative name of the instance within the version. Example: instance-1.@OutputOnly", - "type": "string" - }, - "memoryUsage": { - "description": "Total memory in use (bytes).@OutputOnly", - "format": "int64", - "type": "string" - }, - "vmIp": { - "description": "The IP address of this instance. Only applicable for instances in App Engine flexible environment.@OutputOnly", - "type": "string" - }, - "errors": { - "description": "Number of errors since this instance was started.@OutputOnly", - "format": "uint32", - "type": "integer" - }, - "availability": { - "description": "Availability of the instance.@OutputOnly", - "type": "string", - "enumDescriptions": [ - "", - "", - "" - ], - "enum": [ - "UNSPECIFIED", - "RESIDENT", - "DYNAMIC" - ] - }, - "vmStatus": { - "description": "Status of the virtual machine where this instance lives. Only applicable for instances in App Engine flexible environment.@OutputOnly", - "type": "string" - } - }, - "id": "Instance", - "description": "An Instance resource is the computing unit that App Engine uses to automatically scale an application.", - "type": "object" - }, - "UrlDispatchRule": { - "properties": { - "path": { - "description": "Pathname within the host. Must start with a \"/\". A single \"*\" can be included at the end of the path. The sum of the lengths of the domain and path may not exceed 100 characters.", - "type": "string" - }, - "domain": { - "description": "Domain name to match against. The wildcard \"*\" is supported if specified before a period: \"*.\".Defaults to matching all domains: \"*\".", - "type": "string" - }, - "service": { - "description": "Resource id of a service in this application that should serve the matched request. The service must already exist. Example: default.", - "type": "string" - } - }, - "id": "UrlDispatchRule", - "description": "Rules to match an HTTP request and dispatch that request to a service.", - "type": "object" - }, - "ListVersionsResponse": { - "description": "Response message for Versions.ListVersions.", - "type": "object", - "properties": { - "nextPageToken": { - "description": "Continuation token for fetching the next page of results.", - "type": "string" - }, - "versions": { - "description": "The versions belonging to the requested service.", - "type": "array", - "items": { - "$ref": "Version" - } - } - }, - "id": "ListVersionsResponse" - }, - "ApiEndpointHandler": { - "description": "Uses Google Cloud Endpoints to handle requests.", - "type": "object", - "properties": { - "scriptPath": { - "description": "Path to the script from the application root directory.", - "type": "string" - } - }, - "id": "ApiEndpointHandler" - }, - "AutomaticScaling": { - "description": "Automatic scaling is based on request rate, response latencies, and other application metrics.", - "type": "object", - "properties": { - "minPendingLatency": { - "description": "Minimum amount of time a request should wait in the pending queue before starting a new instance to handle it.", - "format": "google-duration", - "type": "string" - }, - "requestUtilization": { - "$ref": "RequestUtilization", - "description": "Target scaling by request utilization." - }, - "maxIdleInstances": { - "description": "Maximum number of idle instances that should be maintained for this version.", - "format": "int32", - "type": "integer" - }, - "minIdleInstances": { - "description": "Minimum number of idle instances that should be maintained for this version. Only applicable for the default version of a module.", - "format": "int32", - "type": "integer" - }, - "maxTotalInstances": { - "description": "Maximum number of instances that should be started to handle requests.", - "format": "int32", - "type": "integer" - }, - "minTotalInstances": { - "description": "Minimum number of instances that should be maintained for this version.", - "format": "int32", - "type": "integer" - }, - "networkUtilization": { - "description": "Target scaling by network usage.", - "$ref": "NetworkUtilization" - }, - "maxConcurrentRequests": { - "description": "Number of concurrent requests an automatic scaling instance can accept before the scheduler spawns a new instance.Defaults to a runtime-specific value.", - "format": "int32", - "type": "integer" - }, - "coolDownPeriod": { - "description": "Amount of time that the Autoscaler (https://cloud.google.com/compute/docs/autoscaler/) should wait between changes to the number of virtual machines. Only applicable for VM runtimes.", - "format": "google-duration", - "type": "string" - }, - "maxPendingLatency": { - "description": "Maximum amount of time that a request should wait in the pending queue before starting a new instance to handle it.", - "format": "google-duration", - "type": "string" - }, - "cpuUtilization": { - "$ref": "CpuUtilization", - "description": "Target scaling by CPU usage." - }, - "diskUtilization": { - "$ref": "DiskUtilization", - "description": "Target scaling by disk usage." - } - }, - "id": "AutomaticScaling" - }, - "NetworkUtilization": { - "properties": { - "targetReceivedBytesPerSec": { - "description": "Target bytes received per second.", - "format": "int32", - "type": "integer" - }, - "targetSentPacketsPerSec": { - "description": "Target packets sent per second.", - "format": "int32", - "type": "integer" - }, - "targetSentBytesPerSec": { - "description": "Target bytes sent per second.", - "format": "int32", - "type": "integer" - }, - "targetReceivedPacketsPerSec": { - "description": "Target packets received per second.", - "format": "int32", - "type": "integer" - } - }, - "id": "NetworkUtilization", - "description": "Target scaling by network usage. Only applicable for VM runtimes.", - "type": "object" - }, - "Location": { - "description": "A resource that represents Google Cloud Platform location.", - "type": "object", - "properties": { - "locationId": { - "description": "The canonical id for this location. For example: \"us-east1\".", - "type": "string" - }, - "metadata": { - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - }, - "description": "Service-specific metadata. For example the available capacity at the given location.", - "type": "object" - }, - "labels": { - "description": "Cross-service attributes for the location. For example\n{\"cloud.googleapis.com/region\": \"us-east1\"}\n", - "type": "object", - "additionalProperties": { - "type": "string" - } - }, - "name": { - "description": "Resource name for the location, which may vary between implementations. For example: \"projects/example-project/locations/us-east1\"", - "type": "string" - } - }, - "id": "Location" } }, - "icons": { - "x16": "http://www.google.com/images/icons/product/search-16.gif", - "x32": "http://www.google.com/images/icons/product/search-32.gif" - }, - "protocol": "rest" -} + "servicePath": "", + "title": "App Engine Admin API", + "version": "v1beta5" +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/appengine/v1beta5/appengine-gen.go b/vendor/google.golang.org/api/appengine/v1beta5/appengine-gen.go index b661e317e..4310a83b4 100644 --- a/vendor/google.golang.org/api/appengine/v1beta5/appengine-gen.go +++ b/vendor/google.golang.org/api/appengine/v1beta5/appengine-gen.go @@ -1,4 +1,4 @@ -// Package appengine provides access to the Google App Engine Admin API. +// Package appengine provides access to the App Engine Admin API. // // See https://cloud.google.com/appengine/docs/admin-api/ // @@ -527,6 +527,37 @@ func (s *CpuUtilization) UnmarshalJSON(data []byte) error { return nil } +// CreateVersionMetadataV1: Metadata for the given +// google.longrunning.Operation during a +// google.appengine.v1.CreateVersionRequest. +type CreateVersionMetadataV1 struct { + // CloudBuildId: The Cloud Build ID if one was created as part of the + // version create. @OutputOnly + CloudBuildId string `json:"cloudBuildId,omitempty"` + + // ForceSendFields is a list of field names (e.g. "CloudBuildId") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "CloudBuildId") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *CreateVersionMetadataV1) MarshalJSON() ([]byte, error) { + type NoMethod CreateVersionMetadataV1 + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // CreateVersionMetadataV1Alpha: Metadata for the given // google.longrunning.Operation during a // google.appengine.v1alpha.CreateVersionRequest. @@ -708,8 +739,9 @@ func (s *DiskUtilization) MarshalJSON() ([]byte, error) { // EndpointsApiService: Cloud Endpoints // (https://cloud.google.com/endpoints) configuration. The Endpoints API // Service provides tooling for serving Open API and gRPC endpoints via -// an NGINX proxy.The fields here refer to the name and configuration id -// of a "service" resource in the Service Management API +// an NGINX proxy. Only valid for App Engine Flexible environment +// deployments.The fields here refer to the name and configuration id of +// a "service" resource in the Service Management API // (https://cloud.google.com/service-management/overview). type EndpointsApiService struct { // ConfigId: Endpoints service configuration id as specified by the @@ -725,6 +757,17 @@ type EndpointsApiService struct { // "myapi.endpoints.myproject.cloud.goog" Name string `json:"name,omitempty"` + // RolloutStrategy: Endpoints rollout strategy. If FIXED, config_id must + // be specified. If MANAGED, config_id must be omitted. + // + // Possible values: + // "UNSPECIFIED_ROLLOUT_STRATEGY" - Not specified. Defaults to FIXED. + // "FIXED" - Endpoints service configuration id will be fixed to the + // configuration id specified by config_id. + // "MANAGED" - Endpoints service configuration id will be updated with + // each rollout. + RolloutStrategy string `json:"rolloutStrategy,omitempty"` + // ForceSendFields is a list of field names (e.g. "ConfigId") to // unconditionally include in API requests. By default, fields with // empty values are omitted from API requests. However, any non-pointer, @@ -1257,6 +1300,10 @@ func (s *ListVersionsResponse) MarshalJSON() ([]byte, error) { // Location: A resource that represents Google Cloud Platform location. type Location struct { + // DisplayName: The friendly name for this location, typically a nearby + // city name. For example, "Tokyo". + DisplayName string `json:"displayName,omitempty"` + // Labels: Cross-service attributes for the location. For // example // {"cloud.googleapis.com/region": "us-east1"} @@ -1280,7 +1327,7 @@ type Location struct { // server. googleapi.ServerResponse `json:"-"` - // ForceSendFields is a list of field names (e.g. "Labels") to + // ForceSendFields is a list of field names (e.g. "DisplayName") to // unconditionally include in API requests. By default, fields with // empty values are omitted from API requests. However, any non-pointer, // non-interface field appearing in ForceSendFields will be sent to the @@ -1288,10 +1335,10 @@ type Location struct { // used to include empty fields in Patch requests. ForceSendFields []string `json:"-"` - // NullFields is a list of field names (e.g. "Labels") to include in API - // requests with the JSON null value. By default, fields with empty - // values are omitted from API requests. However, any field with an - // empty value appearing in NullFields will be sent to the server as + // NullFields is a list of field names (e.g. "DisplayName") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as // null. It is an error if a field in this list has a non-empty value. // This may be used to include null fields in Patch requests. NullFields []string `json:"-"` @@ -1306,11 +1353,11 @@ func (s *Location) MarshalJSON() ([]byte, error) { // LocationMetadata: Metadata for the given // google.cloud.location.Location. type LocationMetadata struct { - // FlexibleEnvironmentAvailable: App Engine Flexible Environment is + // FlexibleEnvironmentAvailable: App Engine flexible environment is // available in the given location.@OutputOnly FlexibleEnvironmentAvailable bool `json:"flexibleEnvironmentAvailable,omitempty"` - // StandardEnvironmentAvailable: App Engine Standard Environment is + // StandardEnvironmentAvailable: App Engine standard environment is // available in the given location.@OutputOnly StandardEnvironmentAvailable bool `json:"standardEnvironmentAvailable,omitempty"` @@ -1578,6 +1625,8 @@ func (s *OperationMetadata) MarshalJSON() ([]byte, error) { // OperationMetadataV1: Metadata for the given // google.longrunning.Operation. type OperationMetadataV1 struct { + CreateVersionMetadata *CreateVersionMetadataV1 `json:"createVersionMetadata,omitempty"` + // EndTime: Time that this operation completed.@OutputOnly EndTime string `json:"endTime,omitempty"` @@ -1603,20 +1652,22 @@ type OperationMetadataV1 struct { // @OutputOnly Warning []string `json:"warning,omitempty"` - // ForceSendFields is a list of field names (e.g. "EndTime") to - // unconditionally include in API requests. By default, fields with - // empty values are omitted from API requests. However, any non-pointer, - // non-interface field appearing in ForceSendFields will be sent to the - // server regardless of whether the field is empty or not. This may be - // used to include empty fields in Patch requests. + // ForceSendFields is a list of field names (e.g. + // "CreateVersionMetadata") to unconditionally include in API requests. + // By default, fields with empty values are omitted from API requests. + // However, any non-pointer, non-interface field appearing in + // ForceSendFields will be sent to the server regardless of whether the + // field is empty or not. This may be used to include empty fields in + // Patch requests. ForceSendFields []string `json:"-"` - // NullFields is a list of field names (e.g. "EndTime") to include in - // API requests with the JSON null value. By default, fields with empty - // values are omitted from API requests. However, any field with an - // empty value appearing in NullFields will be sent to the server as - // null. It is an error if a field in this list has a non-empty value. - // This may be used to include null fields in Patch requests. + // NullFields is a list of field names (e.g. "CreateVersionMetadata") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. NullFields []string `json:"-"` } @@ -3000,7 +3051,7 @@ type AppsLocationsGetCall struct { header_ http.Header } -// Get: Get information about a location. +// Get: Gets information about a location. func (r *AppsLocationsService) Get(appsId string, locationsId string) *AppsLocationsGetCall { c := &AppsLocationsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.appsId = appsId @@ -3103,7 +3154,7 @@ func (c *AppsLocationsGetCall) Do(opts ...googleapi.CallOption) (*Location, erro } return ret, nil // { - // "description": "Get information about a location.", + // "description": "Gets information about a location.", // "flatPath": "v1beta5/apps/{appsId}/locations/{locationsId}", // "httpMethod": "GET", // "id": "appengine.apps.locations.get", diff --git a/vendor/google.golang.org/api/appsactivity/v1/appsactivity-api.json b/vendor/google.golang.org/api/appsactivity/v1/appsactivity-api.json index 99cce6836..e12316d2f 100644 --- a/vendor/google.golang.org/api/appsactivity/v1/appsactivity-api.json +++ b/vendor/google.golang.org/api/appsactivity/v1/appsactivity-api.json @@ -1,489 +1,475 @@ { - "kind": "discovery#restDescription", - "etag": "\"YWOzh2SDasdU84ArJnpYek-OMdg/pDZ7o52oB1KPiP4jc8rmQ24ThMo\"", - "discoveryVersion": "v1", - "id": "appsactivity:v1", - "name": "appsactivity", - "version": "v1", - "revision": "20170619", - "title": "G Suite Activity API", - "description": "Provides a historical view of activity.", - "ownerDomain": "google.com", - "ownerName": "Google", - "icons": { - "x16": "https://www.gstatic.com/images/branding/product/1x/googleg_16dp.png", - "x32": "https://www.gstatic.com/images/branding/product/1x/googleg_32dp.png" - }, - "documentationLink": "https://developers.google.com/google-apps/activity/", - "protocol": "rest", - "baseUrl": "https://www.googleapis.com/appsactivity/v1/", - "basePath": "/appsactivity/v1/", - "rootUrl": "https://www.googleapis.com/", - "servicePath": "appsactivity/v1/", - "batchPath": "batch/appsactivity/v1", - "parameters": { - "alt": { - "type": "string", - "description": "Data format for the response.", - "default": "json", - "enum": [ - "json" - ], - "enumDescriptions": [ - "Responses with Content-Type of application/json" - ], - "location": "query" - }, - "fields": { - "type": "string", - "description": "Selector specifying which fields to include in a partial response.", - "location": "query" - }, - "key": { - "type": "string", - "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" - }, - "oauth_token": { - "type": "string", - "description": "OAuth 2.0 token for the current user.", - "location": "query" - }, - "prettyPrint": { - "type": "boolean", - "description": "Returns response with indentations and line breaks.", - "default": "true", - "location": "query" - }, - "quotaUser": { - "type": "string", - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", - "location": "query" - }, - "userIp": { - "type": "string", - "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", - "location": "query" - } - }, - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/activity": { - "description": "View the activity history of your Google apps" - }, - "https://www.googleapis.com/auth/drive": { - "description": "View and manage the files in your Google Drive" - }, - "https://www.googleapis.com/auth/drive.metadata": { - "description": "View and manage metadata of files in your Google Drive" - }, - "https://www.googleapis.com/auth/drive.metadata.readonly": { - "description": "View metadata for files in your Google Drive" - }, - "https://www.googleapis.com/auth/drive.readonly": { - "description": "View the files in your Google Drive" + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/activity": { + "description": "View the activity history of your Google apps" + } + } } - } - } - }, - "schemas": { - "Activity": { - "id": "Activity", - "type": "object", - "description": "An Activity resource is a combined view of multiple events. An activity has a list of individual events and a combined view of the common fields among all events.", - "properties": { - "combinedEvent": { - "$ref": "Event", - "description": "The fields common to all of the singleEvents that make up the Activity." - }, - "singleEvents": { - "type": "array", - "description": "A list of all the Events that make up the Activity.", - "items": { - "$ref": "Event" - } - } - } }, - "Event": { - "id": "Event", - "type": "object", - "description": "Represents the changes associated with an action taken by a user.", - "properties": { - "additionalEventTypes": { - "type": "array", - "description": "Additional event types. Some events may have multiple types when multiple actions are part of a single event. For example, creating a document, renaming it, and sharing it may be part of a single file-creation event.", - "items": { - "type": "string", + "basePath": "/appsactivity/v1/", + "baseUrl": "https://www.googleapis.com/appsactivity/v1/", + "batchPath": "batch/appsactivity/v1", + "description": "Provides a historical view of activity.", + "discoveryVersion": "v1", + "documentationLink": "https://developers.google.com/google-apps/activity/", + "etag": "\"-iA1DTNe4s-I6JZXPt1t1Ypy8IU/i2G9IjUY6hcmy1d1bAWQZIc125s\"", + "icons": { + "x16": "https://www.gstatic.com/images/branding/product/1x/googleg_16dp.png", + "x32": "https://www.gstatic.com/images/branding/product/1x/googleg_32dp.png" + }, + "id": "appsactivity:v1", + "kind": "discovery#restDescription", + "name": "appsactivity", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "alt": { + "default": "json", + "description": "Data format for the response.", "enum": [ - "comment", - "create", - "edit", - "emptyTrash", - "move", - "permissionChange", - "rename", - "trash", - "unknown", - "untrash", - "upload" + "json" ], "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - } + "Responses with Content-Type of application/json" + ], + "location": "query", + "type": "string" }, - "eventTimeMillis": { - "type": "string", - "description": "The time at which the event occurred formatted as Unix time in milliseconds.", - "format": "uint64" + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "location": "query", + "type": "string" }, - "fromUserDeletion": { - "type": "boolean", - "description": "Whether this event is caused by a user being deleted." + "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" }, - "move": { - "$ref": "Move", - "description": "Extra information for move type events, such as changes in an object's parents." + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" }, - "permissionChanges": { - "type": "array", - "description": "Extra information for permissionChange type events, such as the user or group the new permission applies to.", - "items": { - "$ref": "PermissionChange" - } + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" }, - "primaryEventType": { - "type": "string", - "description": "The main type of event that occurred.", - "enum": [ - "comment", - "create", - "edit", - "emptyTrash", - "move", - "permissionChange", - "rename", - "trash", - "unknown", - "untrash", - "upload" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", + "location": "query", + "type": "string" }, - "rename": { - "$ref": "Rename", - "description": "Extra information for rename type events, such as the old and new names." - }, - "target": { - "$ref": "Target", - "description": "Information specific to the Target object modified by the event." - }, - "user": { - "$ref": "User", - "description": "Represents the user responsible for the event." + "userIp": { + "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", + "location": "query", + "type": "string" } - } }, - "ListActivitiesResponse": { - "id": "ListActivitiesResponse", - "type": "object", - "description": "The response from the list request. Contains a list of activities and a token to retrieve the next page of results.", - "properties": { + "protocol": "rest", + "resources": { "activities": { - "type": "array", - "description": "List of activities.", - "items": { - "$ref": "Activity" - } - }, - "nextPageToken": { - "type": "string", - "description": "Token for the next page of results." - } - } - }, - "Move": { - "id": "Move", - "type": "object", - "description": "Contains information about changes in an object's parents as a result of a move type event.", - "properties": { - "addedParents": { - "type": "array", - "description": "The added parent(s).", - "items": { - "$ref": "Parent" - } - }, - "removedParents": { - "type": "array", - "description": "The removed parent(s).", - "items": { - "$ref": "Parent" - } - } - } - }, - "Parent": { - "id": "Parent", - "type": "object", - "description": "Contains information about a parent object. For example, a folder in Drive is a parent for all files within it.", - "properties": { - "id": { - "type": "string", - "description": "The parent's ID." - }, - "isRoot": { - "type": "boolean", - "description": "Whether this is the root folder." - }, - "title": { - "type": "string", - "description": "The parent's title." - } - } - }, - "Permission": { - "id": "Permission", - "type": "object", - "description": "Contains information about the permissions and type of access allowed with regards to a Google Drive object. This is a subset of the fields contained in a corresponding Drive Permissions object.", - "properties": { - "name": { - "type": "string", - "description": "The name of the user or group the permission applies to." - }, - "permissionId": { - "type": "string", - "description": "The ID for this permission. Corresponds to the Drive API's permission ID returned as part of the Drive Permissions resource." - }, - "role": { - "type": "string", - "description": "Indicates the Google Drive permissions role. The role determines a user's ability to read, write, or comment on the file.", - "enum": [ - "commenter", - "owner", - "reader", - "writer" - ], - "enumDescriptions": [ - "", - "", - "", - "" - ] - }, - "type": { - "type": "string", - "description": "Indicates how widely permissions are granted.", - "enum": [ - "anyone", - "domain", - "group", - "user" - ], - "enumDescriptions": [ - "", - "", - "", - "" - ] - }, - "user": { - "$ref": "User", - "description": "The user's information if the type is USER." - }, - "withLink": { - "type": "boolean", - "description": "Whether the permission requires a link to the file." - } - } - }, - "PermissionChange": { - "id": "PermissionChange", - "type": "object", - "description": "Contains information about a Drive object's permissions that changed as a result of a permissionChange type event.", - "properties": { - "addedPermissions": { - "type": "array", - "description": "Lists all Permission objects added.", - "items": { - "$ref": "Permission" - } - }, - "removedPermissions": { - "type": "array", - "description": "Lists all Permission objects removed.", - "items": { - "$ref": "Permission" - } - } - } - }, - "Photo": { - "id": "Photo", - "type": "object", - "description": "Photo information for a user.", - "properties": { - "url": { - "type": "string", - "description": "The URL of the photo." - } - } - }, - "Rename": { - "id": "Rename", - "type": "object", - "description": "Contains information about a renametype event.", - "properties": { - "newTitle": { - "type": "string", - "description": "The new title." - }, - "oldTitle": { - "type": "string", - "description": "The old title." - } - } - }, - "Target": { - "id": "Target", - "type": "object", - "description": "Information about the object modified by the event.", - "properties": { - "id": { - "type": "string", - "description": "The ID of the target. For example, in Google Drive, this is the file or folder ID." - }, - "mimeType": { - "type": "string", - "description": "The MIME type of the target." - }, - "name": { - "type": "string", - "description": "The name of the target. For example, in Google Drive, this is the title of the file." - } - } - }, - "User": { - "id": "User", - "type": "object", - "description": "A representation of a user.", - "properties": { - "isDeleted": { - "type": "boolean", - "description": "A boolean which indicates whether the specified User was deleted. If true, name, photo and permission_id will be omitted." - }, - "isMe": { - "type": "boolean", - "description": "Whether the user is the authenticated user." - }, - "name": { - "type": "string", - "description": "The displayable name of the user." - }, - "permissionId": { - "type": "string", - "description": "The permission ID associated with this user. Equivalent to the Drive API's permission ID for this user, returned as part of the Drive Permissions resource." - }, - "photo": { - "$ref": "Photo", - "description": "The profile photo of the user. Not present if the user has no profile photo." - } - } - } - }, - "resources": { - "activities": { - "methods": { - "list": { - "id": "appsactivity.activities.list", - "path": "activities", - "httpMethod": "GET", - "description": "Returns a list of activities visible to the current logged in user. Visible activities are determined by the visiblity settings of the object that was acted on, e.g. Drive files a user can see. An activity is a record of past events. Multiple events may be merged if they are similar. A request is scoped to activities from a given Google service using the source parameter.", - "parameters": { - "drive.ancestorId": { - "type": "string", - "description": "Identifies the Drive folder containing the items for which to return activities.", - "location": "query" - }, - "drive.fileId": { - "type": "string", - "description": "Identifies the Drive item to return activities for.", - "location": "query" - }, - "groupingStrategy": { - "type": "string", - "description": "Indicates the strategy to use when grouping singleEvents items in the associated combinedEvent object.", - "default": "driveUi", - "enum": [ - "driveUi", - "none" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - }, - "pageSize": { - "type": "integer", - "description": "The maximum number of events to return on a page. The response includes a continuation token if there are more events.", - "default": "50", - "format": "int32", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "A token to retrieve a specific page of results.", - "location": "query" - }, - "source": { - "type": "string", - "description": "The Google service from which to return activities. Possible values of source are: \n- drive.google.com", - "location": "query" - }, - "userId": { - "type": "string", - "description": "Indicates the user to return activity for. Use the special value me to indicate the currently authenticated user.", - "default": "me", - "location": "query" + "methods": { + "list": { + "description": "Returns a list of activities visible to the current logged in user. Visible activities are determined by the visiblity settings of the object that was acted on, e.g. Drive files a user can see. An activity is a record of past events. Multiple events may be merged if they are similar. A request is scoped to activities from a given Google service using the source parameter.", + "httpMethod": "GET", + "id": "appsactivity.activities.list", + "parameters": { + "drive.ancestorId": { + "description": "Identifies the Drive folder containing the items for which to return activities.", + "location": "query", + "type": "string" + }, + "drive.fileId": { + "description": "Identifies the Drive item to return activities for.", + "location": "query", + "type": "string" + }, + "groupingStrategy": { + "default": "driveUi", + "description": "Indicates the strategy to use when grouping singleEvents items in the associated combinedEvent object.", + "enum": [ + "driveUi", + "none" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + }, + "pageSize": { + "default": "50", + "description": "The maximum number of events to return on a page. The response includes a continuation token if there are more events.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "A token to retrieve a specific page of results.", + "location": "query", + "type": "string" + }, + "source": { + "description": "The Google service from which to return activities. Possible values of source are: \n- drive.google.com", + "location": "query", + "type": "string" + }, + "userId": { + "default": "me", + "description": "Indicates the user to return activity for. Use the special value me to indicate the currently authenticated user.", + "location": "query", + "type": "string" + } + }, + "path": "activities", + "response": { + "$ref": "ListActivitiesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/activity" + ] + } } - }, - "response": { - "$ref": "ListActivitiesResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/activity", - "https://www.googleapis.com/auth/drive", - "https://www.googleapis.com/auth/drive.metadata", - "https://www.googleapis.com/auth/drive.metadata.readonly", - "https://www.googleapis.com/auth/drive.readonly" - ] } - } - } - } -} + }, + "revision": "20180204", + "rootUrl": "https://www.googleapis.com/", + "schemas": { + "Activity": { + "description": "An Activity resource is a combined view of multiple events. An activity has a list of individual events and a combined view of the common fields among all events.", + "id": "Activity", + "properties": { + "combinedEvent": { + "$ref": "Event", + "description": "The fields common to all of the singleEvents that make up the Activity." + }, + "singleEvents": { + "description": "A list of all the Events that make up the Activity.", + "items": { + "$ref": "Event" + }, + "type": "array" + } + }, + "type": "object" + }, + "Event": { + "description": "Represents the changes associated with an action taken by a user.", + "id": "Event", + "properties": { + "additionalEventTypes": { + "description": "Additional event types. Some events may have multiple types when multiple actions are part of a single event. For example, creating a document, renaming it, and sharing it may be part of a single file-creation event.", + "items": { + "enum": [ + "comment", + "create", + "edit", + "emptyTrash", + "move", + "permissionChange", + "rename", + "trash", + "unknown", + "untrash", + "upload" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "type": "array" + }, + "eventTimeMillis": { + "description": "The time at which the event occurred formatted as Unix time in milliseconds.", + "format": "uint64", + "type": "string" + }, + "fromUserDeletion": { + "description": "Whether this event is caused by a user being deleted.", + "type": "boolean" + }, + "move": { + "$ref": "Move", + "description": "Extra information for move type events, such as changes in an object's parents." + }, + "permissionChanges": { + "description": "Extra information for permissionChange type events, such as the user or group the new permission applies to.", + "items": { + "$ref": "PermissionChange" + }, + "type": "array" + }, + "primaryEventType": { + "description": "The main type of event that occurred.", + "enum": [ + "comment", + "create", + "edit", + "emptyTrash", + "move", + "permissionChange", + "rename", + "trash", + "unknown", + "untrash", + "upload" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "rename": { + "$ref": "Rename", + "description": "Extra information for rename type events, such as the old and new names." + }, + "target": { + "$ref": "Target", + "description": "Information specific to the Target object modified by the event." + }, + "user": { + "$ref": "User", + "description": "Represents the user responsible for the event." + } + }, + "type": "object" + }, + "ListActivitiesResponse": { + "description": "The response from the list request. Contains a list of activities and a token to retrieve the next page of results.", + "id": "ListActivitiesResponse", + "properties": { + "activities": { + "description": "List of activities.", + "items": { + "$ref": "Activity" + }, + "type": "array" + }, + "nextPageToken": { + "description": "Token for the next page of results.", + "type": "string" + } + }, + "type": "object" + }, + "Move": { + "description": "Contains information about changes in an object's parents as a result of a move type event.", + "id": "Move", + "properties": { + "addedParents": { + "description": "The added parent(s).", + "items": { + "$ref": "Parent" + }, + "type": "array" + }, + "removedParents": { + "description": "The removed parent(s).", + "items": { + "$ref": "Parent" + }, + "type": "array" + } + }, + "type": "object" + }, + "Parent": { + "description": "Contains information about a parent object. For example, a folder in Drive is a parent for all files within it.", + "id": "Parent", + "properties": { + "id": { + "description": "The parent's ID.", + "type": "string" + }, + "isRoot": { + "description": "Whether this is the root folder.", + "type": "boolean" + }, + "title": { + "description": "The parent's title.", + "type": "string" + } + }, + "type": "object" + }, + "Permission": { + "description": "Contains information about the permissions and type of access allowed with regards to a Google Drive object. This is a subset of the fields contained in a corresponding Drive Permissions object.", + "id": "Permission", + "properties": { + "name": { + "description": "The name of the user or group the permission applies to.", + "type": "string" + }, + "permissionId": { + "description": "The ID for this permission. Corresponds to the Drive API's permission ID returned as part of the Drive Permissions resource.", + "type": "string" + }, + "role": { + "description": "Indicates the Google Drive permissions role. The role determines a user's ability to read, write, or comment on the file.", + "enum": [ + "commenter", + "owner", + "publishedReader", + "reader", + "writer" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "type": { + "description": "Indicates how widely permissions are granted.", + "enum": [ + "anyone", + "domain", + "group", + "user" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ], + "type": "string" + }, + "user": { + "$ref": "User", + "description": "The user's information if the type is USER." + }, + "withLink": { + "description": "Whether the permission requires a link to the file.", + "type": "boolean" + } + }, + "type": "object" + }, + "PermissionChange": { + "description": "Contains information about a Drive object's permissions that changed as a result of a permissionChange type event.", + "id": "PermissionChange", + "properties": { + "addedPermissions": { + "description": "Lists all Permission objects added.", + "items": { + "$ref": "Permission" + }, + "type": "array" + }, + "removedPermissions": { + "description": "Lists all Permission objects removed.", + "items": { + "$ref": "Permission" + }, + "type": "array" + } + }, + "type": "object" + }, + "Photo": { + "description": "Photo information for a user.", + "id": "Photo", + "properties": { + "url": { + "description": "The URL of the photo.", + "type": "string" + } + }, + "type": "object" + }, + "Rename": { + "description": "Contains information about a renametype event.", + "id": "Rename", + "properties": { + "newTitle": { + "description": "The new title.", + "type": "string" + }, + "oldTitle": { + "description": "The old title.", + "type": "string" + } + }, + "type": "object" + }, + "Target": { + "description": "Information about the object modified by the event.", + "id": "Target", + "properties": { + "id": { + "description": "The ID of the target. For example, in Google Drive, this is the file or folder ID.", + "type": "string" + }, + "mimeType": { + "description": "The MIME type of the target.", + "type": "string" + }, + "name": { + "description": "The name of the target. For example, in Google Drive, this is the title of the file.", + "type": "string" + } + }, + "type": "object" + }, + "User": { + "description": "A representation of a user.", + "id": "User", + "properties": { + "isDeleted": { + "description": "A boolean which indicates whether the specified User was deleted. If true, name, photo and permission_id will be omitted.", + "type": "boolean" + }, + "isMe": { + "description": "Whether the user is the authenticated user.", + "type": "boolean" + }, + "name": { + "description": "The displayable name of the user.", + "type": "string" + }, + "permissionId": { + "description": "The permission ID associated with this user. Equivalent to the Drive API's permission ID for this user, returned as part of the Drive Permissions resource.", + "type": "string" + }, + "photo": { + "$ref": "Photo", + "description": "The profile photo of the user. Not present if the user has no profile photo." + } + }, + "type": "object" + } + }, + "servicePath": "appsactivity/v1/", + "title": "G Suite Activity API", + "version": "v1" +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/appsactivity/v1/appsactivity-gen.go b/vendor/google.golang.org/api/appsactivity/v1/appsactivity-gen.go index 2c0096f74..c28c023ff 100644 --- a/vendor/google.golang.org/api/appsactivity/v1/appsactivity-gen.go +++ b/vendor/google.golang.org/api/appsactivity/v1/appsactivity-gen.go @@ -49,18 +49,6 @@ const basePath = "https://www.googleapis.com/appsactivity/v1/" const ( // View the activity history of your Google apps ActivityScope = "https://www.googleapis.com/auth/activity" - - // View and manage the files in your Google Drive - DriveScope = "https://www.googleapis.com/auth/drive" - - // View and manage metadata of files in your Google Drive - DriveMetadataScope = "https://www.googleapis.com/auth/drive.metadata" - - // View metadata for files in your Google Drive - DriveMetadataReadonlyScope = "https://www.googleapis.com/auth/drive.metadata.readonly" - - // View the files in your Google Drive - DriveReadonlyScope = "https://www.googleapis.com/auth/drive.readonly" ) func New(client *http.Client) (*Service, error) { @@ -343,6 +331,7 @@ type Permission struct { // Possible values: // "commenter" // "owner" + // "publishedReader" // "reader" // "writer" Role string `json:"role,omitempty"` @@ -785,11 +774,7 @@ func (c *ActivitiesListCall) Do(opts ...googleapi.CallOption) (*ListActivitiesRe // "$ref": "ListActivitiesResponse" // }, // "scopes": [ - // "https://www.googleapis.com/auth/activity", - // "https://www.googleapis.com/auth/drive", - // "https://www.googleapis.com/auth/drive.metadata", - // "https://www.googleapis.com/auth/drive.metadata.readonly", - // "https://www.googleapis.com/auth/drive.readonly" + // "https://www.googleapis.com/auth/activity" // ] // } diff --git a/vendor/google.golang.org/api/appstate/v1/appstate-api.json b/vendor/google.golang.org/api/appstate/v1/appstate-api.json index 700a95d47..42da1d28e 100644 --- a/vendor/google.golang.org/api/appstate/v1/appstate-api.json +++ b/vendor/google.golang.org/api/appstate/v1/appstate-api.json @@ -1,307 +1,307 @@ { - "kind": "discovery#restDescription", - "etag": "\"YWOzh2SDasdU84ArJnpYek-OMdg/ANNk7azl5zRYtDCCrlgSBbC8-4Y\"", - "discoveryVersion": "v1", - "id": "appstate:v1", - "name": "appstate", - "canonicalName": "App State", - "version": "v1", - "revision": "20170911", - "title": "Google App State API", - "description": "The Google App State API.", - "ownerDomain": "google.com", - "ownerName": "Google", - "icons": { - "x16": "https://www.gstatic.com/images/branding/product/1x/googleg_16dp.png", - "x32": "https://www.gstatic.com/images/branding/product/1x/googleg_32dp.png" - }, - "documentationLink": "https://developers.google.com/games/services/web/api/states", - "protocol": "rest", - "baseUrl": "https://www.googleapis.com/appstate/v1/", - "basePath": "/appstate/v1/", - "rootUrl": "https://www.googleapis.com/", - "servicePath": "appstate/v1/", - "batchPath": "batch/appstate/v1", - "parameters": { - "alt": { - "type": "string", - "description": "Data format for the response.", - "default": "json", - "enum": [ - "json" - ], - "enumDescriptions": [ - "Responses with Content-Type of application/json" - ], - "location": "query" - }, - "fields": { - "type": "string", - "description": "Selector specifying which fields to include in a partial response.", - "location": "query" - }, - "key": { - "type": "string", - "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" - }, - "oauth_token": { - "type": "string", - "description": "OAuth 2.0 token for the current user.", - "location": "query" - }, - "prettyPrint": { - "type": "boolean", - "description": "Returns response with indentations and line breaks.", - "default": "true", - "location": "query" - }, - "quotaUser": { - "type": "string", - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", - "location": "query" - }, - "userIp": { - "type": "string", - "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", - "location": "query" - } - }, - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/appstate": { - "description": "View and manage your data for this application" + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/appstate": { + "description": "View and manage your data for this application" + } + } } - } - } - }, - "schemas": { - "GetResponse": { - "id": "GetResponse", - "type": "object", - "description": "This is a JSON template for an app state resource.", - "properties": { - "currentStateVersion": { - "type": "string", - "description": "The current app state version." - }, - "data": { - "type": "string", - "description": "The requested data." - }, - "kind": { - "type": "string", - "description": "Uniquely identifies the type of this resource. Value is always the fixed string appstate#getResponse.", - "default": "appstate#getResponse" - }, - "stateKey": { - "type": "integer", - "description": "The key for the data.", - "format": "int32" - } - } }, - "ListResponse": { - "id": "ListResponse", - "type": "object", - "description": "This is a JSON template to convert a list-response for app state.", - "properties": { - "items": { - "type": "array", - "description": "The app state data.", - "items": { - "$ref": "GetResponse" - } - }, - "kind": { - "type": "string", - "description": "Uniquely identifies the type of this resource. Value is always the fixed string appstate#listResponse.", - "default": "appstate#listResponse" - }, - "maximumKeyCount": { - "type": "integer", - "description": "The maximum number of keys allowed for this user.", - "format": "int32" - } - } + "basePath": "/appstate/v1/", + "baseUrl": "https://www.googleapis.com/appstate/v1/", + "batchPath": "batch/appstate/v1", + "canonicalName": "App State", + "description": "The Google App State API.", + "discoveryVersion": "v1", + "documentationLink": "https://developers.google.com/games/services/web/api/states", + "etag": "\"-iA1DTNe4s-I6JZXPt1t1Ypy8IU/X8tji3M7ero0WaIAGRtuwW2FqYo\"", + "icons": { + "x16": "https://www.gstatic.com/images/branding/product/1x/googleg_16dp.png", + "x32": "https://www.gstatic.com/images/branding/product/1x/googleg_32dp.png" }, - "UpdateRequest": { - "id": "UpdateRequest", - "type": "object", - "description": "This is a JSON template for a requests which update app state", - "properties": { - "data": { - "type": "string", - "description": "The new app state data that your application is trying to update with." + "id": "appstate:v1", + "kind": "discovery#restDescription", + "name": "appstate", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "alt": { + "default": "json", + "description": "Data format for the response.", + "enum": [ + "json" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json" + ], + "location": "query", + "type": "string" }, - "kind": { - "type": "string", - "description": "Uniquely identifies the type of this resource. Value is always the fixed string appstate#updateRequest.", - "default": "appstate#updateRequest" + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "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.", + "location": "query", + "type": "string" + }, + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", + "location": "query", + "type": "string" + }, + "userIp": { + "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", + "location": "query", + "type": "string" } - } }, - "WriteResult": { - "id": "WriteResult", - "type": "object", - "description": "This is a JSON template for an app state write result.", - "properties": { - "currentStateVersion": { - "type": "string", - "description": "The version of the data for this key on the server." - }, - "kind": { - "type": "string", - "description": "Uniquely identifies the type of this resource. Value is always the fixed string appstate#writeResult.", - "default": "appstate#writeResult" - }, - "stateKey": { - "type": "integer", - "description": "The written key.", - "format": "int32" + "protocol": "rest", + "resources": { + "states": { + "methods": { + "clear": { + "description": "Clears (sets to empty) the data for the passed key if and only if the passed version matches the currently stored version. This method results in a conflict error on version mismatch.", + "httpMethod": "POST", + "id": "appstate.states.clear", + "parameterOrder": [ + "stateKey" + ], + "parameters": { + "currentDataVersion": { + "description": "The version of the data to be cleared. Version strings are returned by the server.", + "location": "query", + "type": "string" + }, + "stateKey": { + "description": "The key for the data to be retrieved.", + "format": "int32", + "location": "path", + "maximum": "3", + "minimum": "0", + "required": true, + "type": "integer" + } + }, + "path": "states/{stateKey}/clear", + "response": { + "$ref": "WriteResult" + }, + "scopes": [ + "https://www.googleapis.com/auth/appstate" + ] + }, + "delete": { + "description": "Deletes a key and the data associated with it. The key is removed and no longer counts against the key quota. Note that since this method is not safe in the face of concurrent modifications, it should only be used for development and testing purposes. Invoking this method in shipping code can result in data loss and data corruption.", + "httpMethod": "DELETE", + "id": "appstate.states.delete", + "parameterOrder": [ + "stateKey" + ], + "parameters": { + "stateKey": { + "description": "The key for the data to be retrieved.", + "format": "int32", + "location": "path", + "maximum": "3", + "minimum": "0", + "required": true, + "type": "integer" + } + }, + "path": "states/{stateKey}", + "scopes": [ + "https://www.googleapis.com/auth/appstate" + ] + }, + "get": { + "description": "Retrieves the data corresponding to the passed key. If the key does not exist on the server, an HTTP 404 will be returned.", + "httpMethod": "GET", + "id": "appstate.states.get", + "parameterOrder": [ + "stateKey" + ], + "parameters": { + "stateKey": { + "description": "The key for the data to be retrieved.", + "format": "int32", + "location": "path", + "maximum": "3", + "minimum": "0", + "required": true, + "type": "integer" + } + }, + "path": "states/{stateKey}", + "response": { + "$ref": "GetResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/appstate" + ] + }, + "list": { + "description": "Lists all the states keys, and optionally the state data.", + "httpMethod": "GET", + "id": "appstate.states.list", + "parameters": { + "includeData": { + "default": "false", + "description": "Whether to include the full data in addition to the version number", + "location": "query", + "type": "boolean" + } + }, + "path": "states", + "response": { + "$ref": "ListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/appstate" + ] + }, + "update": { + "description": "Update the data associated with the input key if and only if the passed version matches the currently stored version. This method is safe in the face of concurrent writes. Maximum per-key size is 128KB.", + "httpMethod": "PUT", + "id": "appstate.states.update", + "parameterOrder": [ + "stateKey" + ], + "parameters": { + "currentStateVersion": { + "description": "The version of the app state your application is attempting to update. If this does not match the current version, this method will return a conflict error. If there is no data stored on the server for this key, the update will succeed irrespective of the value of this parameter.", + "location": "query", + "type": "string" + }, + "stateKey": { + "description": "The key for the data to be retrieved.", + "format": "int32", + "location": "path", + "maximum": "3", + "minimum": "0", + "required": true, + "type": "integer" + } + }, + "path": "states/{stateKey}", + "request": { + "$ref": "UpdateRequest" + }, + "response": { + "$ref": "WriteResult" + }, + "scopes": [ + "https://www.googleapis.com/auth/appstate" + ] + } + } } - } - } - }, - "resources": { - "states": { - "methods": { - "clear": { - "id": "appstate.states.clear", - "path": "states/{stateKey}/clear", - "httpMethod": "POST", - "description": "Clears (sets to empty) the data for the passed key if and only if the passed version matches the currently stored version. This method results in a conflict error on version mismatch.", - "parameters": { - "currentDataVersion": { - "type": "string", - "description": "The version of the data to be cleared. Version strings are returned by the server.", - "location": "query" + }, + "revision": "20180122", + "rootUrl": "https://www.googleapis.com/", + "schemas": { + "GetResponse": { + "description": "This is a JSON template for an app state resource.", + "id": "GetResponse", + "properties": { + "currentStateVersion": { + "description": "The current app state version.", + "type": "string" + }, + "data": { + "description": "The requested data.", + "type": "string" + }, + "kind": { + "default": "appstate#getResponse", + "description": "Uniquely identifies the type of this resource. Value is always the fixed string appstate#getResponse.", + "type": "string" + }, + "stateKey": { + "description": "The key for the data.", + "format": "int32", + "type": "integer" + } }, - "stateKey": { - "type": "integer", - "description": "The key for the data to be retrieved.", - "required": true, - "format": "int32", - "minimum": "0", - "maximum": "3", - "location": "path" - } - }, - "parameterOrder": [ - "stateKey" - ], - "response": { - "$ref": "WriteResult" - }, - "scopes": [ - "https://www.googleapis.com/auth/appstate" - ] + "type": "object" }, - "delete": { - "id": "appstate.states.delete", - "path": "states/{stateKey}", - "httpMethod": "DELETE", - "description": "Deletes a key and the data associated with it. The key is removed and no longer counts against the key quota. Note that since this method is not safe in the face of concurrent modifications, it should only be used for development and testing purposes. Invoking this method in shipping code can result in data loss and data corruption.", - "parameters": { - "stateKey": { - "type": "integer", - "description": "The key for the data to be retrieved.", - "required": true, - "format": "int32", - "minimum": "0", - "maximum": "3", - "location": "path" - } - }, - "parameterOrder": [ - "stateKey" - ], - "scopes": [ - "https://www.googleapis.com/auth/appstate" - ] - }, - "get": { - "id": "appstate.states.get", - "path": "states/{stateKey}", - "httpMethod": "GET", - "description": "Retrieves the data corresponding to the passed key. If the key does not exist on the server, an HTTP 404 will be returned.", - "parameters": { - "stateKey": { - "type": "integer", - "description": "The key for the data to be retrieved.", - "required": true, - "format": "int32", - "minimum": "0", - "maximum": "3", - "location": "path" - } - }, - "parameterOrder": [ - "stateKey" - ], - "response": { - "$ref": "GetResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/appstate" - ] - }, - "list": { - "id": "appstate.states.list", - "path": "states", - "httpMethod": "GET", - "description": "Lists all the states keys, and optionally the state data.", - "parameters": { - "includeData": { - "type": "boolean", - "description": "Whether to include the full data in addition to the version number", - "default": "false", - "location": "query" - } - }, - "response": { - "$ref": "ListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/appstate" - ] - }, - "update": { - "id": "appstate.states.update", - "path": "states/{stateKey}", - "httpMethod": "PUT", - "description": "Update the data associated with the input key if and only if the passed version matches the currently stored version. This method is safe in the face of concurrent writes. Maximum per-key size is 128KB.", - "parameters": { - "currentStateVersion": { - "type": "string", - "description": "The version of the app state your application is attempting to update. If this does not match the current version, this method will return a conflict error. If there is no data stored on the server for this key, the update will succeed irrespective of the value of this parameter.", - "location": "query" + "ListResponse": { + "description": "This is a JSON template to convert a list-response for app state.", + "id": "ListResponse", + "properties": { + "items": { + "description": "The app state data.", + "items": { + "$ref": "GetResponse" + }, + "type": "array" + }, + "kind": { + "default": "appstate#listResponse", + "description": "Uniquely identifies the type of this resource. Value is always the fixed string appstate#listResponse.", + "type": "string" + }, + "maximumKeyCount": { + "description": "The maximum number of keys allowed for this user.", + "format": "int32", + "type": "integer" + } }, - "stateKey": { - "type": "integer", - "description": "The key for the data to be retrieved.", - "required": true, - "format": "int32", - "minimum": "0", - "maximum": "3", - "location": "path" - } - }, - "parameterOrder": [ - "stateKey" - ], - "request": { - "$ref": "UpdateRequest" - }, - "response": { - "$ref": "WriteResult" - }, - "scopes": [ - "https://www.googleapis.com/auth/appstate" - ] + "type": "object" + }, + "UpdateRequest": { + "description": "This is a JSON template for a requests which update app state", + "id": "UpdateRequest", + "properties": { + "data": { + "description": "The new app state data that your application is trying to update with.", + "type": "string" + }, + "kind": { + "default": "appstate#updateRequest", + "description": "Uniquely identifies the type of this resource. Value is always the fixed string appstate#updateRequest.", + "type": "string" + } + }, + "type": "object" + }, + "WriteResult": { + "description": "This is a JSON template for an app state write result.", + "id": "WriteResult", + "properties": { + "currentStateVersion": { + "description": "The version of the data for this key on the server.", + "type": "string" + }, + "kind": { + "default": "appstate#writeResult", + "description": "Uniquely identifies the type of this resource. Value is always the fixed string appstate#writeResult.", + "type": "string" + }, + "stateKey": { + "description": "The written key.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" } - } - } - } -} + }, + "servicePath": "appstate/v1/", + "title": "Google App State API", + "version": "v1" +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/bigquery/v2/bigquery-api.json b/vendor/google.golang.org/api/bigquery/v2/bigquery-api.json index 195db9c0f..9a8bd8431 100644 --- a/vendor/google.golang.org/api/bigquery/v2/bigquery-api.json +++ b/vendor/google.golang.org/api/bigquery/v2/bigquery-api.json @@ -1,3016 +1,3106 @@ { - "kind": "discovery#restDescription", - "etag": "\"-iA1DTNe4s-I6JZXPt1t1Ypy8IU/c0qLh4qGPc7aXt4DhEPUAWdS164\"", - "discoveryVersion": "v1", - "id": "bigquery:v2", - "name": "bigquery", - "version": "v2", - "revision": "20180112", - "title": "BigQuery API", - "description": "A data platform for customers to create, manage, share and query data.", - "ownerDomain": "google.com", - "ownerName": "Google", - "icons": { - "x16": "https://www.google.com/images/icons/product/search-16.gif", - "x32": "https://www.google.com/images/icons/product/search-32.gif" - }, - "documentationLink": "https://cloud.google.com/bigquery/", - "protocol": "rest", - "baseUrl": "https://www.googleapis.com/bigquery/v2/", - "basePath": "/bigquery/v2/", - "rootUrl": "https://www.googleapis.com/", - "servicePath": "bigquery/v2/", - "batchPath": "batch/bigquery/v2", - "parameters": { - "alt": { - "type": "string", - "description": "Data format for the response.", - "default": "json", - "enum": [ - "json" - ], - "enumDescriptions": [ - "Responses with Content-Type of application/json" - ], - "location": "query" - }, - "fields": { - "type": "string", - "description": "Selector specifying which fields to include in a partial response.", - "location": "query" - }, - "key": { - "type": "string", - "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" - }, - "oauth_token": { - "type": "string", - "description": "OAuth 2.0 token for the current user.", - "location": "query" - }, - "prettyPrint": { - "type": "boolean", - "description": "Returns response with indentations and line breaks.", - "default": "true", - "location": "query" - }, - "quotaUser": { - "type": "string", - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", - "location": "query" - }, - "userIp": { - "type": "string", - "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", - "location": "query" - } - }, - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/bigquery": { - "description": "View and manage your data in Google BigQuery" - }, - "https://www.googleapis.com/auth/bigquery.insertdata": { - "description": "Insert data into Google BigQuery" - }, - "https://www.googleapis.com/auth/cloud-platform": { - "description": "View and manage your data across Google Cloud Platform services" - }, - "https://www.googleapis.com/auth/cloud-platform.read-only": { - "description": "View your data across Google Cloud Platform services" - }, - "https://www.googleapis.com/auth/devstorage.full_control": { - "description": "Manage your data and permissions in Google Cloud Storage" - }, - "https://www.googleapis.com/auth/devstorage.read_only": { - "description": "View your data in Google Cloud Storage" - }, - "https://www.googleapis.com/auth/devstorage.read_write": { - "description": "Manage your data in Google Cloud Storage" - } - } - } - }, - "schemas": { - "BigtableColumn": { - "id": "BigtableColumn", - "type": "object", - "properties": { - "encoding": { - "type": "string", - "description": "[Optional] The encoding of the values when the type is not STRING. Acceptable encoding values are: TEXT - indicates values are alphanumeric text strings. BINARY - indicates values are encoded using HBase Bytes.toBytes family of functions. 'encoding' can also be set at the column family level. However, the setting at this level takes precedence if 'encoding' is set at both levels." - }, - "fieldName": { - "type": "string", - "description": "[Optional] If the qualifier is not a valid BigQuery field identifier i.e. does not match [a-zA-Z][a-zA-Z0-9_]*, a valid identifier must be provided as the column field name and is used as field name in queries." - }, - "onlyReadLatest": { - "type": "boolean", - "description": "[Optional] If this is set, only the latest version of value in this column are exposed. 'onlyReadLatest' can also be set at the column family level. However, the setting at this level takes precedence if 'onlyReadLatest' is set at both levels." - }, - "qualifierEncoded": { - "type": "string", - "description": "[Required] Qualifier of the column. Columns in the parent column family that has this exact qualifier are exposed as . field. If the qualifier is valid UTF-8 string, it can be specified in the qualifier_string field. Otherwise, a base-64 encoded value must be set to qualifier_encoded. The column field name is the same as the column qualifier. However, if the qualifier is not a valid BigQuery field identifier i.e. does not match [a-zA-Z][a-zA-Z0-9_]*, a valid identifier must be provided as field_name.", - "format": "byte" - }, - "qualifierString": { - "type": "string" - }, - "type": { - "type": "string", - "description": "[Optional] The type to convert the value in cells of this column. The values are expected to be encoded using HBase Bytes.toBytes function when using the BINARY encoding value. Following BigQuery types are allowed (case-sensitive) - BYTES STRING INTEGER FLOAT BOOLEAN Default type is BYTES. 'type' can also be set at the column family level. However, the setting at this level takes precedence if 'type' is set at both levels." - } - } - }, - "BigtableColumnFamily": { - "id": "BigtableColumnFamily", - "type": "object", - "properties": { - "columns": { - "type": "array", - "description": "[Optional] Lists of columns that should be exposed as individual fields as opposed to a list of (column name, value) pairs. All columns whose qualifier matches a qualifier in this list can be accessed as .. Other columns can be accessed as a list through .Column field.", - "items": { - "$ref": "BigtableColumn" - } - }, - "encoding": { - "type": "string", - "description": "[Optional] The encoding of the values when the type is not STRING. Acceptable encoding values are: TEXT - indicates values are alphanumeric text strings. BINARY - indicates values are encoded using HBase Bytes.toBytes family of functions. This can be overridden for a specific column by listing that column in 'columns' and specifying an encoding for it." - }, - "familyId": { - "type": "string", - "description": "Identifier of the column family." - }, - "onlyReadLatest": { - "type": "boolean", - "description": "[Optional] If this is set only the latest version of value are exposed for all columns in this column family. This can be overridden for a specific column by listing that column in 'columns' and specifying a different setting for that column." - }, - "type": { - "type": "string", - "description": "[Optional] The type to convert the value in cells of this column family. The values are expected to be encoded using HBase Bytes.toBytes function when using the BINARY encoding value. Following BigQuery types are allowed (case-sensitive) - BYTES STRING INTEGER FLOAT BOOLEAN Default type is BYTES. This can be overridden for a specific column by listing that column in 'columns' and specifying a type for it." - } - } - }, - "BigtableOptions": { - "id": "BigtableOptions", - "type": "object", - "properties": { - "columnFamilies": { - "type": "array", - "description": "[Optional] List of column families to expose in the table schema along with their types. This list restricts the column families that can be referenced in queries and specifies their value types. You can use this list to do type conversions - see the 'type' field for more details. If you leave this list empty, all column families are present in the table schema and their values are read as BYTES. During a query only the column families referenced in that query are read from Bigtable.", - "items": { - "$ref": "BigtableColumnFamily" - } - }, - "ignoreUnspecifiedColumnFamilies": { - "type": "boolean", - "description": "[Optional] If field is true, then the column families that are not specified in columnFamilies list are not exposed in the table schema. Otherwise, they are read with BYTES type values. The default value is false." - }, - "readRowkeyAsString": { - "type": "boolean", - "description": "[Optional] If field is true, then the rowkey column families will be read and converted to string. Otherwise they are read with BYTES type values and users need to manually cast them with CAST if necessary. The default value is false." - } - } - }, - "CsvOptions": { - "id": "CsvOptions", - "type": "object", - "properties": { - "allowJaggedRows": { - "type": "boolean", - "description": "[Optional] Indicates if BigQuery should accept rows that are missing trailing optional columns. If true, BigQuery treats missing trailing columns as null values. If false, records with missing trailing columns are treated as bad records, and if there are too many bad records, an invalid error is returned in the job result. The default value is false." - }, - "allowQuotedNewlines": { - "type": "boolean", - "description": "[Optional] Indicates if BigQuery should allow quoted data sections that contain newline characters in a CSV file. The default value is false." - }, - "encoding": { - "type": "string", - "description": "[Optional] The character encoding of the data. The supported values are UTF-8 or ISO-8859-1. The default value is UTF-8. BigQuery decodes the data after the raw, binary data has been split using the values of the quote and fieldDelimiter properties." - }, - "fieldDelimiter": { - "type": "string", - "description": "[Optional] The separator for fields in a CSV file. BigQuery converts the string to ISO-8859-1 encoding, and then uses the first byte of the encoded string to split the data in its raw, binary state. BigQuery also supports the escape sequence \"\\t\" to specify a tab separator. The default value is a comma (',')." - }, - "quote": { - "type": "string", - "description": "[Optional] The value that is used to quote data sections in a CSV file. BigQuery converts the string to ISO-8859-1 encoding, and then uses the first byte of the encoded string to split the data in its raw, binary state. The default value is a double-quote ('\"'). If your data does not contain quoted sections, set the property value to an empty string. If your data contains quoted newline characters, you must also set the allowQuotedNewlines property to true.", - "default": "\"", - "pattern": ".?" - }, - "skipLeadingRows": { - "type": "string", - "description": "[Optional] The number of rows at the top of a CSV file that BigQuery will skip when reading the data. The default value is 0. This property is useful if you have header rows in the file that should be skipped.", - "format": "int64" - } - } - }, - "Dataset": { - "id": "Dataset", - "type": "object", - "properties": { - "access": { - "type": "array", - "description": "[Optional] An array of objects that define dataset access for one or more entities. You can set this property when inserting or updating a dataset in order to control who is allowed to access the data. If unspecified at dataset creation time, BigQuery adds default dataset access for the following entities: access.specialGroup: projectReaders; access.role: READER; access.specialGroup: projectWriters; access.role: WRITER; access.specialGroup: projectOwners; access.role: OWNER; access.userByEmail: [dataset creator email]; access.role: OWNER;", - "items": { - "type": "object", - "properties": { - "domain": { - "type": "string", - "description": "[Pick one] A domain to grant access to. Any users signed in with the domain specified will be granted the specified access. Example: \"example.com\"." - }, - "groupByEmail": { - "type": "string", - "description": "[Pick one] An email address of a Google Group to grant access to." - }, - "role": { - "type": "string", - "description": "[Required] Describes the rights granted to the user specified by the other member of the access object. The following string values are supported: READER, WRITER, OWNER." - }, - "specialGroup": { - "type": "string", - "description": "[Pick one] A special group to grant access to. Possible values include: projectOwners: Owners of the enclosing project. projectReaders: Readers of the enclosing project. projectWriters: Writers of the enclosing project. allAuthenticatedUsers: All authenticated BigQuery users." - }, - "userByEmail": { - "type": "string", - "description": "[Pick one] An email address of a user to grant access to. For example: fred@example.com." - }, - "view": { - "$ref": "TableReference", - "description": "[Pick one] A view from a different dataset to grant access to. Queries executed against that view will have read access to tables in this dataset. The role field is not required when this field is set. If that view is updated by any user, access to the view needs to be granted again via an update operation." - } - } - } - }, - "creationTime": { - "type": "string", - "description": "[Output-only] The time when this dataset was created, in milliseconds since the epoch.", - "format": "int64" - }, - "datasetReference": { - "$ref": "DatasetReference", - "description": "[Required] A reference that identifies the dataset." - }, - "defaultTableExpirationMs": { - "type": "string", - "description": "[Optional] The default lifetime of all tables in the dataset, in milliseconds. The minimum value is 3600000 milliseconds (one hour). Once this property is set, all newly-created tables in the dataset will have an expirationTime property set to the creation time plus the value in this property, and changing the value will only affect new tables, not existing ones. When the expirationTime for a given table is reached, that table will be deleted automatically. If a table's expirationTime is modified or removed before the table expires, or if you provide an explicit expirationTime when creating a table, that value takes precedence over the default expiration time indicated by this property.", - "format": "int64" - }, - "description": { - "type": "string", - "description": "[Optional] A user-friendly description of the dataset." - }, - "etag": { - "type": "string", - "description": "[Output-only] A hash of the resource." - }, - "friendlyName": { - "type": "string", - "description": "[Optional] A descriptive name for the dataset." - }, - "id": { - "type": "string", - "description": "[Output-only] The fully-qualified unique name of the dataset in the format projectId:datasetId. The dataset name without the project name is given in the datasetId field. When creating a new dataset, leave this field blank, and instead specify the datasetId field." - }, - "kind": { - "type": "string", - "description": "[Output-only] The resource type.", - "default": "bigquery#dataset" - }, - "labels": { - "type": "object", - "description": "The labels associated with this dataset. You can use these to organize and group your datasets. You can set this property when inserting or updating a dataset. See Labeling Datasets for more information.", - "additionalProperties": { - "type": "string" - } - }, - "lastModifiedTime": { - "type": "string", - "description": "[Output-only] The date when this dataset or any of its tables was last modified, in milliseconds since the epoch.", - "format": "int64" - }, - "location": { - "type": "string", - "description": "The geographic location where the dataset should reside. Possible values include EU and US. The default value is US." - }, - "selfLink": { - "type": "string", - "description": "[Output-only] A URL that can be used to access the resource again. You can use this URL in Get or Update requests to the resource." - } - } - }, - "DatasetList": { - "id": "DatasetList", - "type": "object", - "properties": { - "datasets": { - "type": "array", - "description": "An array of the dataset resources in the project. Each resource contains basic information. For full information about a particular dataset resource, use the Datasets: get method. This property is omitted when there are no datasets in the project.", - "items": { - "type": "object", - "properties": { - "datasetReference": { - "$ref": "DatasetReference", - "description": "The dataset reference. Use this property to access specific parts of the dataset's ID, such as project ID or dataset ID." - }, - "friendlyName": { - "type": "string", - "description": "A descriptive name for the dataset, if one exists." - }, - "id": { - "type": "string", - "description": "The fully-qualified, unique, opaque ID of the dataset." - }, - "kind": { - "type": "string", - "description": "The resource type. This property always returns the value \"bigquery#dataset\".", - "default": "bigquery#dataset" - }, - "labels": { - "type": "object", - "description": "The labels associated with this dataset. You can use these to organize and group your datasets.", - "additionalProperties": { - "type": "string" + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/bigquery": { + "description": "View and manage your data in Google BigQuery" + }, + "https://www.googleapis.com/auth/bigquery.insertdata": { + "description": "Insert data into Google BigQuery" + }, + "https://www.googleapis.com/auth/cloud-platform": { + "description": "View and manage your data across Google Cloud Platform services" + }, + "https://www.googleapis.com/auth/cloud-platform.read-only": { + "description": "View your data across Google Cloud Platform services" + }, + "https://www.googleapis.com/auth/devstorage.full_control": { + "description": "Manage your data and permissions in Google Cloud Storage" + }, + "https://www.googleapis.com/auth/devstorage.read_only": { + "description": "View your data in Google Cloud Storage" + }, + "https://www.googleapis.com/auth/devstorage.read_write": { + "description": "Manage your data in Google Cloud Storage" } - } } - } - }, - "etag": { - "type": "string", - "description": "A hash value of the results page. You can use this property to determine if the page has changed since the last request." - }, - "kind": { - "type": "string", - "description": "The list type. This property always returns the value \"bigquery#datasetList\".", - "default": "bigquery#datasetList" - }, - "nextPageToken": { - "type": "string", - "description": "A token that can be used to request the next results page. This property is omitted on the final results page." } - } }, - "DatasetReference": { - "id": "DatasetReference", - "type": "object", - "properties": { - "datasetId": { - "type": "string", - "description": "[Required] A unique ID for this dataset, without the project name. The ID must contain only letters (a-z, A-Z), numbers (0-9), or underscores (_). The maximum length is 1,024 characters.", - "annotations": { - "required": [ - "bigquery.datasets.update" - ] - } - }, - "projectId": { - "type": "string", - "description": "[Optional] The ID of the project containing this dataset.", - "annotations": { - "required": [ - "bigquery.datasets.update" - ] - } - } - } + "basePath": "/bigquery/v2/", + "baseUrl": "https://www.googleapis.com/bigquery/v2/", + "batchPath": "batch/bigquery/v2", + "description": "A data platform for customers to create, manage, share and query data.", + "discoveryVersion": "v1", + "documentationLink": "https://cloud.google.com/bigquery/", + "etag": "\"-iA1DTNe4s-I6JZXPt1t1Ypy8IU/77sYFu0di9EzzwuBGmUFES4JWbE\"", + "icons": { + "x16": "https://www.google.com/images/icons/product/search-16.gif", + "x32": "https://www.google.com/images/icons/product/search-32.gif" }, - "EncryptionConfiguration": { - "id": "EncryptionConfiguration", - "type": "object", - "properties": { - "kmsKeyName": { - "type": "string", - "description": "[Optional] Describes the Cloud KMS encryption key that will be used to protect destination BigQuery table. The BigQuery Service Account associated with your project requires access to this encryption key." - } - } - }, - "ErrorProto": { - "id": "ErrorProto", - "type": "object", - "properties": { - "debugInfo": { - "type": "string", - "description": "Debugging information. This property is internal to Google and should not be used." - }, - "location": { - "type": "string", - "description": "Specifies where the error occurred, if present." - }, - "message": { - "type": "string", - "description": "A human-readable description of the error." - }, - "reason": { - "type": "string", - "description": "A short error code that summarizes the error." - } - } - }, - "ExplainQueryStage": { - "id": "ExplainQueryStage", - "type": "object", - "properties": { - "completedParallelInputs": { - "type": "string", - "description": "Number of parallel input segments completed.", - "format": "int64" - }, - "computeMsAvg": { - "type": "string", - "description": "Milliseconds the average shard spent on CPU-bound tasks.", - "format": "int64" - }, - "computeMsMax": { - "type": "string", - "description": "Milliseconds the slowest shard spent on CPU-bound tasks.", - "format": "int64" - }, - "computeRatioAvg": { - "type": "number", - "description": "Relative amount of time the average shard spent on CPU-bound tasks.", - "format": "double" - }, - "computeRatioMax": { - "type": "number", - "description": "Relative amount of time the slowest shard spent on CPU-bound tasks.", - "format": "double" - }, - "id": { - "type": "string", - "description": "Unique ID for stage within plan.", - "format": "int64" - }, - "name": { - "type": "string", - "description": "Human-readable name for stage." - }, - "parallelInputs": { - "type": "string", - "description": "Number of parallel input segments to be processed.", - "format": "int64" - }, - "readMsAvg": { - "type": "string", - "description": "Milliseconds the average shard spent reading input.", - "format": "int64" - }, - "readMsMax": { - "type": "string", - "description": "Milliseconds the slowest shard spent reading input.", - "format": "int64" - }, - "readRatioAvg": { - "type": "number", - "description": "Relative amount of time the average shard spent reading input.", - "format": "double" - }, - "readRatioMax": { - "type": "number", - "description": "Relative amount of time the slowest shard spent reading input.", - "format": "double" - }, - "recordsRead": { - "type": "string", - "description": "Number of records read into the stage.", - "format": "int64" - }, - "recordsWritten": { - "type": "string", - "description": "Number of records written by the stage.", - "format": "int64" - }, - "shuffleOutputBytes": { - "type": "string", - "description": "Total number of bytes written to shuffle.", - "format": "int64" - }, - "shuffleOutputBytesSpilled": { - "type": "string", - "description": "Total number of bytes written to shuffle and spilled to disk.", - "format": "int64" - }, - "status": { - "type": "string", - "description": "Current status for the stage." - }, - "steps": { - "type": "array", - "description": "List of operations within the stage in dependency order (approximately chronological).", - "items": { - "$ref": "ExplainQueryStep" - } - }, - "waitMsAvg": { - "type": "string", - "description": "Milliseconds the average shard spent waiting to be scheduled.", - "format": "int64" - }, - "waitMsMax": { - "type": "string", - "description": "Milliseconds the slowest shard spent waiting to be scheduled.", - "format": "int64" - }, - "waitRatioAvg": { - "type": "number", - "description": "Relative amount of time the average shard spent waiting to be scheduled.", - "format": "double" - }, - "waitRatioMax": { - "type": "number", - "description": "Relative amount of time the slowest shard spent waiting to be scheduled.", - "format": "double" - }, - "writeMsAvg": { - "type": "string", - "description": "Milliseconds the average shard spent on writing output.", - "format": "int64" - }, - "writeMsMax": { - "type": "string", - "description": "Milliseconds the slowest shard spent on writing output.", - "format": "int64" - }, - "writeRatioAvg": { - "type": "number", - "description": "Relative amount of time the average shard spent on writing output.", - "format": "double" - }, - "writeRatioMax": { - "type": "number", - "description": "Relative amount of time the slowest shard spent on writing output.", - "format": "double" - } - } - }, - "ExplainQueryStep": { - "id": "ExplainQueryStep", - "type": "object", - "properties": { - "kind": { - "type": "string", - "description": "Machine-readable operation type." - }, - "substeps": { - "type": "array", - "description": "Human-readable stage descriptions.", - "items": { + "id": "bigquery:v2", + "kind": "discovery#restDescription", + "name": "bigquery", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "alt": { + "default": "json", + "description": "Data format for the response.", + "enum": [ + "json" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json" + ], + "location": "query", "type": "string" - } - } - } - }, - "ExternalDataConfiguration": { - "id": "ExternalDataConfiguration", - "type": "object", - "properties": { - "autodetect": { - "type": "boolean", - "description": "Try to detect schema and format options automatically. Any option specified explicitly will be honored." }, - "bigtableOptions": { - "$ref": "BigtableOptions", - "description": "[Optional] Additional options if sourceFormat is set to BIGTABLE." - }, - "compression": { - "type": "string", - "description": "[Optional] The compression type of the data source. Possible values include GZIP and NONE. The default value is NONE. This setting is ignored for Google Cloud Bigtable, Google Cloud Datastore backups and Avro formats." - }, - "csvOptions": { - "$ref": "CsvOptions", - "description": "Additional properties to set if sourceFormat is set to CSV." - }, - "googleSheetsOptions": { - "$ref": "GoogleSheetsOptions", - "description": "[Optional] Additional options if sourceFormat is set to GOOGLE_SHEETS." - }, - "ignoreUnknownValues": { - "type": "boolean", - "description": "[Optional] Indicates if BigQuery should allow extra values that are not represented in the table schema. If true, the extra values are ignored. If false, records with extra columns are treated as bad records, and if there are too many bad records, an invalid error is returned in the job result. The default value is false. The sourceFormat property determines what BigQuery treats as an extra value: CSV: Trailing columns JSON: Named values that don't match any column names Google Cloud Bigtable: This setting is ignored. Google Cloud Datastore backups: This setting is ignored. Avro: This setting is ignored." - }, - "maxBadRecords": { - "type": "integer", - "description": "[Optional] The maximum number of bad records that BigQuery can ignore when reading data. If the number of bad records exceeds this value, an invalid error is returned in the job result. The default value is 0, which requires that all records are valid. This setting is ignored for Google Cloud Bigtable, Google Cloud Datastore backups and Avro formats.", - "format": "int32" - }, - "schema": { - "$ref": "TableSchema", - "description": "[Optional] The schema for the data. Schema is required for CSV and JSON formats. Schema is disallowed for Google Cloud Bigtable, Cloud Datastore backups, and Avro formats." - }, - "sourceFormat": { - "type": "string", - "description": "[Required] The data format. For CSV files, specify \"CSV\". For Google sheets, specify \"GOOGLE_SHEETS\". For newline-delimited JSON, specify \"NEWLINE_DELIMITED_JSON\". For Avro files, specify \"AVRO\". For Google Cloud Datastore backups, specify \"DATASTORE_BACKUP\". [Beta] For Google Cloud Bigtable, specify \"BIGTABLE\"." - }, - "sourceUris": { - "type": "array", - "description": "[Required] The fully-qualified URIs that point to your data in Google Cloud. For Google Cloud Storage URIs: Each URI can contain one '*' wildcard character and it must come after the 'bucket' name. Size limits related to load jobs apply to external data sources. For Google Cloud Bigtable URIs: Exactly one URI can be specified and it has be a fully specified and valid HTTPS URL for a Google Cloud Bigtable table. For Google Cloud Datastore backups, exactly one URI can be specified. Also, the '*' wildcard character is not allowed.", - "items": { + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "location": "query", "type": "string" - } - } - } - }, - "GetQueryResultsResponse": { - "id": "GetQueryResultsResponse", - "type": "object", - "properties": { - "cacheHit": { - "type": "boolean", - "description": "Whether the query result was fetched from the query cache." }, - "errors": { - "type": "array", - "description": "[Output-only] The first errors or warnings encountered during the running of the job. The final message includes the number of errors that caused the process to stop. Errors here do not necessarily mean that the job has completed or was unsuccessful.", - "items": { - "$ref": "ErrorProto" - } - }, - "etag": { - "type": "string", - "description": "A hash of this response." - }, - "jobComplete": { - "type": "boolean", - "description": "Whether the query has completed or not. If rows or totalRows are present, this will always be true. If this is false, totalRows will not be available." - }, - "jobReference": { - "$ref": "JobReference", - "description": "Reference to the BigQuery Job that was created to run the query. This field will be present even if the original request timed out, in which case GetQueryResults can be used to read the results once the query has completed. Since this API only returns the first page of results, subsequent pages can be fetched via the same mechanism (GetQueryResults)." - }, - "kind": { - "type": "string", - "description": "The resource type of the response.", - "default": "bigquery#getQueryResultsResponse" - }, - "numDmlAffectedRows": { - "type": "string", - "description": "[Output-only] The number of rows affected by a DML statement. Present only for DML statements INSERT, UPDATE or DELETE.", - "format": "int64" - }, - "pageToken": { - "type": "string", - "description": "A token used for paging results." - }, - "rows": { - "type": "array", - "description": "An object with as many results as can be contained within the maximum permitted reply size. To get any additional rows, you can call GetQueryResults and specify the jobReference returned above. Present only when the query completes successfully.", - "items": { - "$ref": "TableRow" - } - }, - "schema": { - "$ref": "TableSchema", - "description": "The schema of the results. Present only when the query completes successfully." - }, - "totalBytesProcessed": { - "type": "string", - "description": "The total number of bytes processed for this query.", - "format": "int64" - }, - "totalRows": { - "type": "string", - "description": "The total number of rows in the complete query result set, which can be more than the number of rows in this single page of results. Present only when the query completes successfully.", - "format": "uint64" - } - } - }, - "GetServiceAccountResponse": { - "id": "GetServiceAccountResponse", - "type": "object", - "properties": { - "email": { - "type": "string", - "description": "The service account email address." - }, - "kind": { - "type": "string", - "description": "The resource type of the response.", - "default": "bigquery#getServiceAccountResponse" - } - } - }, - "GoogleSheetsOptions": { - "id": "GoogleSheetsOptions", - "type": "object", - "properties": { - "skipLeadingRows": { - "type": "string", - "description": "[Optional] The number of rows at the top of a sheet that BigQuery will skip when reading the data. The default value is 0. This property is useful if you have header rows that should be skipped. When autodetect is on, behavior is the following: * skipLeadingRows unspecified - Autodetect tries to detect headers in the first row. If they are not detected, the row is read as data. Otherwise data is read starting from the second row. * skipLeadingRows is 0 - Instructs autodetect that there are no headers and data should be read starting from the first row. * skipLeadingRows = N \u003e 0 - Autodetect skips N-1 rows and tries to detect headers in row N. If headers are not detected, row N is just skipped. Otherwise row N is used to extract column names for the detected schema.", - "format": "int64" - } - } - }, - "Job": { - "id": "Job", - "type": "object", - "properties": { - "configuration": { - "$ref": "JobConfiguration", - "description": "[Required] Describes the job configuration." - }, - "etag": { - "type": "string", - "description": "[Output-only] A hash of this resource." - }, - "id": { - "type": "string", - "description": "[Output-only] Opaque ID field of the job" - }, - "jobReference": { - "$ref": "JobReference", - "description": "[Optional] Reference describing the unique-per-user name of the job." - }, - "kind": { - "type": "string", - "description": "[Output-only] The type of the resource.", - "default": "bigquery#job" - }, - "selfLink": { - "type": "string", - "description": "[Output-only] A URL that can be used to access this resource again." - }, - "statistics": { - "$ref": "JobStatistics", - "description": "[Output-only] Information about the job, including starting time and ending time of the job." - }, - "status": { - "$ref": "JobStatus", - "description": "[Output-only] The status of this job. Examine this value when polling an asynchronous job to see if the job is complete." - }, - "user_email": { - "type": "string", - "description": "[Output-only] Email address of the user who ran the job." - } - } - }, - "JobCancelResponse": { - "id": "JobCancelResponse", - "type": "object", - "properties": { - "job": { - "$ref": "Job", - "description": "The final state of the job." - }, - "kind": { - "type": "string", - "description": "The resource type of the response.", - "default": "bigquery#jobCancelResponse" - } - } - }, - "JobConfiguration": { - "id": "JobConfiguration", - "type": "object", - "properties": { - "copy": { - "$ref": "JobConfigurationTableCopy", - "description": "[Pick one] Copies a table." - }, - "dryRun": { - "type": "boolean", - "description": "[Optional] If set, don't actually run this job. A valid query will return a mostly empty response with some processing statistics, while an invalid query will return the same error it would if it wasn't a dry run. Behavior of non-query jobs is undefined." - }, - "extract": { - "$ref": "JobConfigurationExtract", - "description": "[Pick one] Configures an extract job." - }, - "labels": { - "type": "object", - "description": "The labels associated with this job. You can use these to organize and group your jobs. Label keys and values can be no longer than 63 characters, can only contain lowercase letters, numeric characters, underscores and dashes. International characters are allowed. Label values are optional. Label keys must start with a letter and each label in the list must have a different key.", - "additionalProperties": { + "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" - } }, - "load": { - "$ref": "JobConfigurationLoad", - "description": "[Pick one] Configures a load job." - }, - "query": { - "$ref": "JobConfigurationQuery", - "description": "[Pick one] Configures a query job." - } - } - }, - "JobConfigurationExtract": { - "id": "JobConfigurationExtract", - "type": "object", - "properties": { - "compression": { - "type": "string", - "description": "[Optional] The compression type to use for exported files. Possible values include GZIP and NONE. The default value is NONE." - }, - "destinationFormat": { - "type": "string", - "description": "[Optional] The exported file format. Possible values include CSV, NEWLINE_DELIMITED_JSON and AVRO. The default value is CSV. Tables with nested or repeated fields cannot be exported as CSV." - }, - "destinationUri": { - "type": "string", - "description": "[Pick one] DEPRECATED: Use destinationUris instead, passing only one URI as necessary. The fully-qualified Google Cloud Storage URI where the extracted table should be written." - }, - "destinationUris": { - "type": "array", - "description": "[Pick one] A list of fully-qualified Google Cloud Storage URIs where the extracted table should be written.", - "items": { + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", "type": "string" - } }, - "fieldDelimiter": { - "type": "string", - "description": "[Optional] Delimiter to use between fields in the exported data. Default is ','" + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" }, - "printHeader": { - "type": "boolean", - "description": "[Optional] Whether to print out a header row in the results. Default is true.", - "default": "true" - }, - "sourceTable": { - "$ref": "TableReference", - "description": "[Required] A reference to the table being exported." - } - } - }, - "JobConfigurationLoad": { - "id": "JobConfigurationLoad", - "type": "object", - "properties": { - "allowJaggedRows": { - "type": "boolean", - "description": "[Optional] Accept rows that are missing trailing optional columns. The missing values are treated as nulls. If false, records with missing trailing columns are treated as bad records, and if there are too many bad records, an invalid error is returned in the job result. The default value is false. Only applicable to CSV, ignored for other formats." - }, - "allowQuotedNewlines": { - "type": "boolean", - "description": "Indicates if BigQuery should allow quoted data sections that contain newline characters in a CSV file. The default value is false." - }, - "autodetect": { - "type": "boolean", - "description": "Indicates if we should automatically infer the options and schema for CSV and JSON sources." - }, - "createDisposition": { - "type": "string", - "description": "[Optional] Specifies whether the job is allowed to create new tables. The following values are supported: CREATE_IF_NEEDED: If the table does not exist, BigQuery creates the table. CREATE_NEVER: The table must already exist. If it does not, a 'notFound' error is returned in the job result. The default value is CREATE_IF_NEEDED. Creation, truncation and append actions occur as one atomic update upon job completion." - }, - "destinationEncryptionConfiguration": { - "$ref": "EncryptionConfiguration", - "description": "[Experimental] Custom encryption configuration (e.g., Cloud KMS keys)." - }, - "destinationTable": { - "$ref": "TableReference", - "description": "[Required] The destination table to load the data into." - }, - "encoding": { - "type": "string", - "description": "[Optional] The character encoding of the data. The supported values are UTF-8 or ISO-8859-1. The default value is UTF-8. BigQuery decodes the data after the raw, binary data has been split using the values of the quote and fieldDelimiter properties." - }, - "fieldDelimiter": { - "type": "string", - "description": "[Optional] The separator for fields in a CSV file. The separator can be any ISO-8859-1 single-byte character. To use a character in the range 128-255, you must encode the character as UTF8. BigQuery converts the string to ISO-8859-1 encoding, and then uses the first byte of the encoded string to split the data in its raw, binary state. BigQuery also supports the escape sequence \"\\t\" to specify a tab separator. The default value is a comma (',')." - }, - "ignoreUnknownValues": { - "type": "boolean", - "description": "[Optional] Indicates if BigQuery should allow extra values that are not represented in the table schema. If true, the extra values are ignored. If false, records with extra columns are treated as bad records, and if there are too many bad records, an invalid error is returned in the job result. The default value is false. The sourceFormat property determines what BigQuery treats as an extra value: CSV: Trailing columns JSON: Named values that don't match any column names" - }, - "maxBadRecords": { - "type": "integer", - "description": "[Optional] The maximum number of bad records that BigQuery can ignore when running the job. If the number of bad records exceeds this value, an invalid error is returned in the job result. The default value is 0, which requires that all records are valid.", - "format": "int32" - }, - "nullMarker": { - "type": "string", - "description": "[Optional] Specifies a string that represents a null value in a CSV file. For example, if you specify \"\\N\", BigQuery interprets \"\\N\" as a null value when loading a CSV file. The default value is the empty string. If you set this property to a custom value, BigQuery throws an error if an empty string is present for all data types except for STRING and BYTE. For STRING and BYTE columns, BigQuery interprets the empty string as an empty value." - }, - "projectionFields": { - "type": "array", - "description": "If sourceFormat is set to \"DATASTORE_BACKUP\", indicates which entity properties to load into BigQuery from a Cloud Datastore backup. Property names are case sensitive and must be top-level properties. If no properties are specified, BigQuery loads all properties. If any named property isn't found in the Cloud Datastore backup, an invalid error is returned in the job result.", - "items": { + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", + "location": "query", "type": "string" - } }, - "quote": { - "type": "string", - "description": "[Optional] The value that is used to quote data sections in a CSV file. BigQuery converts the string to ISO-8859-1 encoding, and then uses the first byte of the encoded string to split the data in its raw, binary state. The default value is a double-quote ('\"'). If your data does not contain quoted sections, set the property value to an empty string. If your data contains quoted newline characters, you must also set the allowQuotedNewlines property to true.", - "default": "\"", - "pattern": ".?" - }, - "schema": { - "$ref": "TableSchema", - "description": "[Optional] The schema for the destination table. The schema can be omitted if the destination table already exists, or if you're loading data from Google Cloud Datastore." - }, - "schemaInline": { - "type": "string", - "description": "[Deprecated] The inline schema. For CSV schemas, specify as \"Field1:Type1[,Field2:Type2]*\". For example, \"foo:STRING, bar:INTEGER, baz:FLOAT\"." - }, - "schemaInlineFormat": { - "type": "string", - "description": "[Deprecated] The format of the schemaInline property." - }, - "schemaUpdateOptions": { - "type": "array", - "description": "Allows the schema of the destination table to be updated as a side effect of the load job if a schema is autodetected or supplied in the job configuration. Schema update options are supported in two cases: when writeDisposition is WRITE_APPEND; when writeDisposition is WRITE_TRUNCATE and the destination table is a partition of a table, specified by partition decorators. For normal tables, WRITE_TRUNCATE will always overwrite the schema. One or more of the following values are specified: ALLOW_FIELD_ADDITION: allow adding a nullable field to the schema. ALLOW_FIELD_RELAXATION: allow relaxing a required field in the original schema to nullable.", - "items": { + "userIp": { + "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", + "location": "query", "type": "string" - } - }, - "skipLeadingRows": { - "type": "integer", - "description": "[Optional] The number of rows at the top of a CSV file that BigQuery will skip when loading the data. The default value is 0. This property is useful if you have header rows in the file that should be skipped.", - "format": "int32" - }, - "sourceFormat": { - "type": "string", - "description": "[Optional] The format of the data files. For CSV files, specify \"CSV\". For datastore backups, specify \"DATASTORE_BACKUP\". For newline-delimited JSON, specify \"NEWLINE_DELIMITED_JSON\". For Avro, specify \"AVRO\". The default value is CSV." - }, - "sourceUris": { - "type": "array", - "description": "[Required] The fully-qualified URIs that point to your data in Google Cloud. For Google Cloud Storage URIs: Each URI can contain one '*' wildcard character and it must come after the 'bucket' name. Size limits related to load jobs apply to external data sources. For Google Cloud Bigtable URIs: Exactly one URI can be specified and it has be a fully specified and valid HTTPS URL for a Google Cloud Bigtable table. For Google Cloud Datastore backups: Exactly one URI can be specified. Also, the '*' wildcard character is not allowed.", - "items": { - "type": "string" - } - }, - "timePartitioning": { - "$ref": "TimePartitioning", - "description": "If specified, configures time-based partitioning for the destination table." - }, - "writeDisposition": { - "type": "string", - "description": "[Optional] Specifies the action that occurs if the destination table already exists. The following values are supported: WRITE_TRUNCATE: If the table already exists, BigQuery overwrites the table data. WRITE_APPEND: If the table already exists, BigQuery appends the data to the table. WRITE_EMPTY: If the table already exists and contains data, a 'duplicate' error is returned in the job result. The default value is WRITE_APPEND. Each action is atomic and only occurs if BigQuery is able to complete the job successfully. Creation, truncation and append actions occur as one atomic update upon job completion." } - } }, - "JobConfigurationQuery": { - "id": "JobConfigurationQuery", - "type": "object", - "properties": { - "allowLargeResults": { - "type": "boolean", - "description": "[Optional] If true and query uses legacy SQL dialect, allows the query to produce arbitrarily large result tables at a slight cost in performance. Requires destinationTable to be set. For standard SQL queries, this flag is ignored and large results are always allowed. However, you must still set destinationTable when result size exceeds the allowed maximum response size.", - "default": "false" - }, - "createDisposition": { - "type": "string", - "description": "[Optional] Specifies whether the job is allowed to create new tables. The following values are supported: CREATE_IF_NEEDED: If the table does not exist, BigQuery creates the table. CREATE_NEVER: The table must already exist. If it does not, a 'notFound' error is returned in the job result. The default value is CREATE_IF_NEEDED. Creation, truncation and append actions occur as one atomic update upon job completion." - }, - "defaultDataset": { - "$ref": "DatasetReference", - "description": "[Optional] Specifies the default dataset to use for unqualified table names in the query." - }, - "destinationEncryptionConfiguration": { - "$ref": "EncryptionConfiguration", - "description": "[Experimental] Custom encryption configuration (e.g., Cloud KMS keys)." - }, - "destinationTable": { - "$ref": "TableReference", - "description": "[Optional] Describes the table where the query results should be stored. If not present, a new table will be created to store the results. This property must be set for large results that exceed the maximum response size." - }, - "flattenResults": { - "type": "boolean", - "description": "[Optional] If true and query uses legacy SQL dialect, flattens all nested and repeated fields in the query results. allowLargeResults must be true if this is set to false. For standard SQL queries, this flag is ignored and results are never flattened.", - "default": "true" - }, - "maximumBillingTier": { - "type": "integer", - "description": "[Optional] Limits the billing tier for this job. Queries that have resource usage beyond this tier will fail (without incurring a charge). If unspecified, this will be set to your project default.", - "default": "1", - "format": "int32" - }, - "maximumBytesBilled": { - "type": "string", - "description": "[Optional] Limits the bytes billed for this job. Queries that will have bytes billed beyond this limit will fail (without incurring a charge). If unspecified, this will be set to your project default.", - "format": "int64" - }, - "parameterMode": { - "type": "string", - "description": "Standard SQL only. Set to POSITIONAL to use positional (?) query parameters or to NAMED to use named (@myparam) query parameters in this query." - }, - "preserveNulls": { - "type": "boolean", - "description": "[Deprecated] This property is deprecated." - }, - "priority": { - "type": "string", - "description": "[Optional] Specifies a priority for the query. Possible values include INTERACTIVE and BATCH. The default value is INTERACTIVE." - }, - "query": { - "type": "string", - "description": "[Required] SQL query text to execute. The useLegacySql field can be used to indicate whether the query uses legacy SQL or standard SQL." - }, - "queryParameters": { - "type": "array", - "description": "Query parameters for standard SQL queries.", - "items": { - "$ref": "QueryParameter" - } - }, - "schemaUpdateOptions": { - "type": "array", - "description": "Allows the schema of the destination table to be updated as a side effect of the query job. Schema update options are supported in two cases: when writeDisposition is WRITE_APPEND; when writeDisposition is WRITE_TRUNCATE and the destination table is a partition of a table, specified by partition decorators. For normal tables, WRITE_TRUNCATE will always overwrite the schema. One or more of the following values are specified: ALLOW_FIELD_ADDITION: allow adding a nullable field to the schema. ALLOW_FIELD_RELAXATION: allow relaxing a required field in the original schema to nullable.", - "items": { - "type": "string" - } - }, - "tableDefinitions": { - "type": "object", - "description": "[Optional] If querying an external data source outside of BigQuery, describes the data format, location and other properties of the data source. By defining these properties, the data source can then be queried as if it were a standard BigQuery table.", - "additionalProperties": { - "$ref": "ExternalDataConfiguration" - } - }, - "timePartitioning": { - "$ref": "TimePartitioning", - "description": "If specified, configures time-based partitioning for the destination table." - }, - "useLegacySql": { - "type": "boolean", - "description": "Specifies whether to use BigQuery's legacy SQL dialect for this query. The default value is true. If set to false, the query will use BigQuery's standard SQL: https://cloud.google.com/bigquery/sql-reference/ When useLegacySql is set to false, the value of flattenResults is ignored; query will be run as if flattenResults is false." - }, - "useQueryCache": { - "type": "boolean", - "description": "[Optional] Whether to look for the result in the query cache. The query cache is a best-effort cache that will be flushed whenever tables in the query are modified. Moreover, the query cache is only available when a query does not have a destination table specified. The default value is true.", - "default": "true" - }, - "userDefinedFunctionResources": { - "type": "array", - "description": "Describes user-defined function resources used in the query.", - "items": { - "$ref": "UserDefinedFunctionResource" - } - }, - "writeDisposition": { - "type": "string", - "description": "[Optional] Specifies the action that occurs if the destination table already exists. The following values are supported: WRITE_TRUNCATE: If the table already exists, BigQuery overwrites the table data and uses the schema from the query result. WRITE_APPEND: If the table already exists, BigQuery appends the data to the table. WRITE_EMPTY: If the table already exists and contains data, a 'duplicate' error is returned in the job result. The default value is WRITE_EMPTY. Each action is atomic and only occurs if BigQuery is able to complete the job successfully. Creation, truncation and append actions occur as one atomic update upon job completion." - } - } - }, - "JobConfigurationTableCopy": { - "id": "JobConfigurationTableCopy", - "type": "object", - "properties": { - "createDisposition": { - "type": "string", - "description": "[Optional] Specifies whether the job is allowed to create new tables. The following values are supported: CREATE_IF_NEEDED: If the table does not exist, BigQuery creates the table. CREATE_NEVER: The table must already exist. If it does not, a 'notFound' error is returned in the job result. The default value is CREATE_IF_NEEDED. Creation, truncation and append actions occur as one atomic update upon job completion." - }, - "destinationEncryptionConfiguration": { - "$ref": "EncryptionConfiguration", - "description": "[Experimental] Custom encryption configuration (e.g., Cloud KMS keys)." - }, - "destinationTable": { - "$ref": "TableReference", - "description": "[Required] The destination table" - }, - "sourceTable": { - "$ref": "TableReference", - "description": "[Pick one] Source table to copy." - }, - "sourceTables": { - "type": "array", - "description": "[Pick one] Source tables to copy.", - "items": { - "$ref": "TableReference" - } - }, - "writeDisposition": { - "type": "string", - "description": "[Optional] Specifies the action that occurs if the destination table already exists. The following values are supported: WRITE_TRUNCATE: If the table already exists, BigQuery overwrites the table data. WRITE_APPEND: If the table already exists, BigQuery appends the data to the table. WRITE_EMPTY: If the table already exists and contains data, a 'duplicate' error is returned in the job result. The default value is WRITE_EMPTY. Each action is atomic and only occurs if BigQuery is able to complete the job successfully. Creation, truncation and append actions occur as one atomic update upon job completion." - } - } - }, - "JobList": { - "id": "JobList", - "type": "object", - "properties": { - "etag": { - "type": "string", - "description": "A hash of this page of results." + "protocol": "rest", + "resources": { + "datasets": { + "methods": { + "delete": { + "description": "Deletes the dataset specified by the datasetId value. Before you can delete a dataset, you must delete all its tables, either manually or by specifying deleteContents. Immediately after deletion, you can create another dataset with the same name.", + "httpMethod": "DELETE", + "id": "bigquery.datasets.delete", + "parameterOrder": [ + "projectId", + "datasetId" + ], + "parameters": { + "datasetId": { + "description": "Dataset ID of dataset being deleted", + "location": "path", + "required": true, + "type": "string" + }, + "deleteContents": { + "description": "If True, delete all the tables in the dataset. If False and the dataset contains tables, the request will fail. Default is False", + "location": "query", + "type": "boolean" + }, + "projectId": { + "description": "Project ID of the dataset being deleted", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "projects/{projectId}/datasets/{datasetId}", + "scopes": [ + "https://www.googleapis.com/auth/bigquery", + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Returns the dataset specified by datasetID.", + "httpMethod": "GET", + "id": "bigquery.datasets.get", + "parameterOrder": [ + "projectId", + "datasetId" + ], + "parameters": { + "datasetId": { + "description": "Dataset ID of the requested dataset", + "location": "path", + "required": true, + "type": "string" + }, + "projectId": { + "description": "Project ID of the requested dataset", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "projects/{projectId}/datasets/{datasetId}", + "response": { + "$ref": "Dataset" + }, + "scopes": [ + "https://www.googleapis.com/auth/bigquery", + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + }, + "insert": { + "description": "Creates a new empty dataset.", + "httpMethod": "POST", + "id": "bigquery.datasets.insert", + "parameterOrder": [ + "projectId" + ], + "parameters": { + "projectId": { + "description": "Project ID of the new dataset", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "projects/{projectId}/datasets", + "request": { + "$ref": "Dataset" + }, + "response": { + "$ref": "Dataset" + }, + "scopes": [ + "https://www.googleapis.com/auth/bigquery", + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists all datasets in the specified project to which you have been granted the READER dataset role.", + "httpMethod": "GET", + "id": "bigquery.datasets.list", + "parameterOrder": [ + "projectId" + ], + "parameters": { + "all": { + "description": "Whether to list all datasets, including hidden ones", + "location": "query", + "type": "boolean" + }, + "filter": { + "description": "An expression for filtering the results of the request by label. The syntax is \"labels.\u003cname\u003e[:\u003cvalue\u003e]\". Multiple filters can be ANDed together by connecting with a space. Example: \"labels.department:receiving labels.active\". See Filtering datasets using labels for details.", + "location": "query", + "type": "string" + }, + "maxResults": { + "description": "The maximum number of results to return", + "format": "uint32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Page token, returned by a previous call, to request the next page of results", + "location": "query", + "type": "string" + }, + "projectId": { + "description": "Project ID of the datasets to be listed", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "projects/{projectId}/datasets", + "response": { + "$ref": "DatasetList" + }, + "scopes": [ + "https://www.googleapis.com/auth/bigquery", + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + }, + "patch": { + "description": "Updates information in an existing dataset. The update method replaces the entire dataset resource, whereas the patch method only replaces fields that are provided in the submitted dataset resource. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "bigquery.datasets.patch", + "parameterOrder": [ + "projectId", + "datasetId" + ], + "parameters": { + "datasetId": { + "description": "Dataset ID of the dataset being updated", + "location": "path", + "required": true, + "type": "string" + }, + "projectId": { + "description": "Project ID of the dataset being updated", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "projects/{projectId}/datasets/{datasetId}", + "request": { + "$ref": "Dataset" + }, + "response": { + "$ref": "Dataset" + }, + "scopes": [ + "https://www.googleapis.com/auth/bigquery", + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "update": { + "description": "Updates information in an existing dataset. The update method replaces the entire dataset resource, whereas the patch method only replaces fields that are provided in the submitted dataset resource.", + "httpMethod": "PUT", + "id": "bigquery.datasets.update", + "parameterOrder": [ + "projectId", + "datasetId" + ], + "parameters": { + "datasetId": { + "description": "Dataset ID of the dataset being updated", + "location": "path", + "required": true, + "type": "string" + }, + "projectId": { + "description": "Project ID of the dataset being updated", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "projects/{projectId}/datasets/{datasetId}", + "request": { + "$ref": "Dataset" + }, + "response": { + "$ref": "Dataset" + }, + "scopes": [ + "https://www.googleapis.com/auth/bigquery", + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } }, "jobs": { - "type": "array", - "description": "List of jobs that were requested.", - "items": { - "type": "object", - "properties": { - "configuration": { - "$ref": "JobConfiguration", - "description": "[Full-projection-only] Specifies the job configuration." - }, - "errorResult": { - "$ref": "ErrorProto", - "description": "A result object that will be present only if the job has failed." - }, - "id": { - "type": "string", - "description": "Unique opaque ID of the job." - }, - "jobReference": { - "$ref": "JobReference", - "description": "Job reference uniquely identifying the job." - }, - "kind": { - "type": "string", - "description": "The resource type.", - "default": "bigquery#job" - }, - "state": { - "type": "string", - "description": "Running state of the job. When the state is DONE, errorResult can be checked to determine whether the job succeeded or failed." - }, - "statistics": { - "$ref": "JobStatistics", - "description": "[Output-only] Information about the job, including starting time and ending time of the job." - }, - "status": { - "$ref": "JobStatus", - "description": "[Full-projection-only] Describes the state of the job." - }, - "user_email": { - "type": "string", - "description": "[Full-projection-only] Email address of the user who ran the job." - } + "methods": { + "cancel": { + "description": "Requests that a job be cancelled. This call will return immediately, and the client will need to poll for the job status to see if the cancel completed successfully. Cancelled jobs may still incur costs.", + "httpMethod": "POST", + "id": "bigquery.jobs.cancel", + "parameterOrder": [ + "projectId", + "jobId" + ], + "parameters": { + "jobId": { + "description": "[Required] Job ID of the job to cancel", + "location": "path", + "required": true, + "type": "string" + }, + "location": { + "description": "[Experimental] The geographic location of the job. Required except for US and EU.", + "location": "query", + "type": "string" + }, + "projectId": { + "description": "[Required] Project ID of the job to cancel", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "projects/{projectId}/jobs/{jobId}/cancel", + "response": { + "$ref": "JobCancelResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/bigquery", + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Returns information about a specific job. Job information is available for a six month period after creation. Requires that you're the person who ran the job, or have the Is Owner project role.", + "httpMethod": "GET", + "id": "bigquery.jobs.get", + "parameterOrder": [ + "projectId", + "jobId" + ], + "parameters": { + "jobId": { + "description": "[Required] Job ID of the requested job", + "location": "path", + "required": true, + "type": "string" + }, + "location": { + "description": "[Experimental] The geographic location of the job. Required except for US and EU.", + "location": "query", + "type": "string" + }, + "projectId": { + "description": "[Required] Project ID of the requested job", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "projects/{projectId}/jobs/{jobId}", + "response": { + "$ref": "Job" + }, + "scopes": [ + "https://www.googleapis.com/auth/bigquery", + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + }, + "getQueryResults": { + "description": "Retrieves the results of a query job.", + "httpMethod": "GET", + "id": "bigquery.jobs.getQueryResults", + "parameterOrder": [ + "projectId", + "jobId" + ], + "parameters": { + "jobId": { + "description": "[Required] Job ID of the query job", + "location": "path", + "required": true, + "type": "string" + }, + "location": { + "description": "[Experimental] The geographic location where the job should run. Required except for US and EU.", + "location": "query", + "type": "string" + }, + "maxResults": { + "description": "Maximum number of results to read", + "format": "uint32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Page token, returned by a previous call, to request the next page of results", + "location": "query", + "type": "string" + }, + "projectId": { + "description": "[Required] Project ID of the query job", + "location": "path", + "required": true, + "type": "string" + }, + "startIndex": { + "description": "Zero-based index of the starting row", + "format": "uint64", + "location": "query", + "type": "string" + }, + "timeoutMs": { + "description": "How long to wait for the query to complete, in milliseconds, before returning. Default is 10 seconds. If the timeout passes before the job completes, the 'jobComplete' field in the response will be false", + "format": "uint32", + "location": "query", + "type": "integer" + } + }, + "path": "projects/{projectId}/queries/{jobId}", + "response": { + "$ref": "GetQueryResultsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/bigquery", + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + }, + "insert": { + "description": "Starts a new asynchronous job. Requires the Can View project role.", + "httpMethod": "POST", + "id": "bigquery.jobs.insert", + "mediaUpload": { + "accept": [ + "*/*" + ], + "protocols": { + "resumable": { + "multipart": true, + "path": "/resumable/upload/bigquery/v2/projects/{projectId}/jobs" + }, + "simple": { + "multipart": true, + "path": "/upload/bigquery/v2/projects/{projectId}/jobs" + } + } + }, + "parameterOrder": [ + "projectId" + ], + "parameters": { + "projectId": { + "description": "Project ID of the project that will be billed for the job", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "projects/{projectId}/jobs", + "request": { + "$ref": "Job" + }, + "response": { + "$ref": "Job" + }, + "scopes": [ + "https://www.googleapis.com/auth/bigquery", + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/devstorage.full_control", + "https://www.googleapis.com/auth/devstorage.read_only", + "https://www.googleapis.com/auth/devstorage.read_write" + ], + "supportsMediaUpload": true + }, + "list": { + "description": "Lists all jobs that you started in the specified project. Job information is available for a six month period after creation. The job list is sorted in reverse chronological order, by job creation time. Requires the Can View project role, or the Is Owner project role if you set the allUsers property.", + "httpMethod": "GET", + "id": "bigquery.jobs.list", + "parameterOrder": [ + "projectId" + ], + "parameters": { + "allUsers": { + "description": "Whether to display jobs owned by all users in the project. Default false", + "location": "query", + "type": "boolean" + }, + "maxCreationTime": { + "description": "Max value for job creation time, in milliseconds since the POSIX epoch. If set, only jobs created before or at this timestamp are returned", + "format": "uint64", + "location": "query", + "type": "string" + }, + "maxResults": { + "description": "Maximum number of results to return", + "format": "uint32", + "location": "query", + "type": "integer" + }, + "minCreationTime": { + "description": "Min value for job creation time, in milliseconds since the POSIX epoch. If set, only jobs created after or at this timestamp are returned", + "format": "uint64", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Page token, returned by a previous call, to request the next page of results", + "location": "query", + "type": "string" + }, + "projectId": { + "description": "Project ID of the jobs to list", + "location": "path", + "required": true, + "type": "string" + }, + "projection": { + "description": "Restrict information returned to a set of selected fields", + "enum": [ + "full", + "minimal" + ], + "enumDescriptions": [ + "Includes all job data", + "Does not include the job configuration" + ], + "location": "query", + "type": "string" + }, + "stateFilter": { + "description": "Filter for job state", + "enum": [ + "done", + "pending", + "running" + ], + "enumDescriptions": [ + "Finished jobs", + "Pending jobs", + "Running jobs" + ], + "location": "query", + "repeated": true, + "type": "string" + } + }, + "path": "projects/{projectId}/jobs", + "response": { + "$ref": "JobList" + }, + "scopes": [ + "https://www.googleapis.com/auth/bigquery", + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + }, + "query": { + "description": "Runs a BigQuery SQL query synchronously and returns query results if the query completes within a specified timeout.", + "httpMethod": "POST", + "id": "bigquery.jobs.query", + "parameterOrder": [ + "projectId" + ], + "parameters": { + "projectId": { + "description": "Project ID of the project billed for the query", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "projects/{projectId}/queries", + "request": { + "$ref": "QueryRequest" + }, + "response": { + "$ref": "QueryResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/bigquery", + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + } } - } - }, - "kind": { - "type": "string", - "description": "The resource type of the response.", - "default": "bigquery#jobList" - }, - "nextPageToken": { - "type": "string", - "description": "A token to request the next page of results." - } - } - }, - "JobReference": { - "id": "JobReference", - "type": "object", - "properties": { - "jobId": { - "type": "string", - "description": "[Required] The ID of the job. The ID must contain only letters (a-z, A-Z), numbers (0-9), underscores (_), or dashes (-). The maximum length is 1,024 characters.", - "annotations": { - "required": [ - "bigquery.jobs.getQueryResults" - ] - } - }, - "projectId": { - "type": "string", - "description": "[Required] The ID of the project containing this job.", - "annotations": { - "required": [ - "bigquery.jobs.getQueryResults" - ] - } - } - } - }, - "JobStatistics": { - "id": "JobStatistics", - "type": "object", - "properties": { - "creationTime": { - "type": "string", - "description": "[Output-only] Creation time of this job, in milliseconds since the epoch. This field will be present on all jobs.", - "format": "int64" - }, - "endTime": { - "type": "string", - "description": "[Output-only] End time of this job, in milliseconds since the epoch. This field will be present whenever a job is in the DONE state.", - "format": "int64" - }, - "extract": { - "$ref": "JobStatistics4", - "description": "[Output-only] Statistics for an extract job." - }, - "load": { - "$ref": "JobStatistics3", - "description": "[Output-only] Statistics for a load job." - }, - "query": { - "$ref": "JobStatistics2", - "description": "[Output-only] Statistics for a query job." - }, - "startTime": { - "type": "string", - "description": "[Output-only] Start time of this job, in milliseconds since the epoch. This field will be present when the job transitions from the PENDING state to either RUNNING or DONE.", - "format": "int64" - }, - "totalBytesProcessed": { - "type": "string", - "description": "[Output-only] [Deprecated] Use the bytes processed in the query statistics instead.", - "format": "int64" - } - } - }, - "JobStatistics2": { - "id": "JobStatistics2", - "type": "object", - "properties": { - "billingTier": { - "type": "integer", - "description": "[Output-only] Billing tier for the job.", - "format": "int32" - }, - "cacheHit": { - "type": "boolean", - "description": "[Output-only] Whether the query result was fetched from the query cache." - }, - "ddlOperationPerformed": { - "type": "string", - "description": "[Output-only, Experimental] The DDL operation performed, possibly dependent on the pre-existence of the DDL target. Possible values (new values might be added in the future): \"CREATE\": The query created the DDL target. \"SKIP\": No-op. Example cases: the query is CREATE TABLE IF NOT EXISTS while the table already exists, or the query is DROP TABLE IF EXISTS while the table does not exist. \"REPLACE\": The query replaced the DDL target. Example case: the query is CREATE OR REPLACE TABLE, and the table already exists. \"DROP\": The query deleted the DDL target." - }, - "ddlTargetTable": { - "$ref": "TableReference", - "description": "[Output-only, Experimental] The DDL target table. Present only for CREATE/DROP TABLE/VIEW queries." - }, - "estimatedBytesProcessed": { - "type": "string", - "description": "[Output-only] The original estimate of bytes processed for the job.", - "format": "int64" - }, - "numDmlAffectedRows": { - "type": "string", - "description": "[Output-only] The number of rows affected by a DML statement. Present only for DML statements INSERT, UPDATE or DELETE.", - "format": "int64" - }, - "queryPlan": { - "type": "array", - "description": "[Output-only] Describes execution plan for the query.", - "items": { - "$ref": "ExplainQueryStage" - } - }, - "referencedTables": { - "type": "array", - "description": "[Output-only, Experimental] Referenced tables for the job. Queries that reference more than 50 tables will not have a complete list.", - "items": { - "$ref": "TableReference" - } - }, - "schema": { - "$ref": "TableSchema", - "description": "[Output-only, Experimental] The schema of the results. Present only for successful dry run of non-legacy SQL queries." - }, - "statementType": { - "type": "string", - "description": "[Output-only, Experimental] The type of query statement, if valid. Possible values (new values might be added in the future): \"SELECT\": SELECT query. \"INSERT\": INSERT query; see https://cloud.google.com/bigquery/docs/reference/standard-sql/data-manipulation-language \"UPDATE\": UPDATE query; see https://cloud.google.com/bigquery/docs/reference/standard-sql/data-manipulation-language \"DELETE\": DELETE query; see https://cloud.google.com/bigquery/docs/reference/standard-sql/data-manipulation-language \"CREATE_TABLE\": CREATE [OR REPLACE] TABLE without AS SELECT. \"CREATE_TABLE_AS_SELECT\": CREATE [OR REPLACE] TABLE ... AS SELECT ... \"DROP_TABLE\": DROP TABLE query. \"CREATE_VIEW\": CREATE [OR REPLACE] VIEW ... AS SELECT ... \"DROP_VIEW\": DROP VIEW query." - }, - "timeline": { - "type": "array", - "description": "[Output-only] Describes a timeline of job execution.", - "items": { - "$ref": "QueryTimelineSample" - } - }, - "totalBytesBilled": { - "type": "string", - "description": "[Output-only] Total bytes billed for the job.", - "format": "int64" - }, - "totalBytesProcessed": { - "type": "string", - "description": "[Output-only] Total bytes processed for the job.", - "format": "int64" - }, - "totalSlotMs": { - "type": "string", - "description": "[Output-only] Slot-milliseconds for the job.", - "format": "int64" - }, - "undeclaredQueryParameters": { - "type": "array", - "description": "[Output-only, Experimental] Standard SQL only: list of undeclared query parameters detected during a dry run validation.", - "items": { - "$ref": "QueryParameter" - } - } - } - }, - "JobStatistics3": { - "id": "JobStatistics3", - "type": "object", - "properties": { - "badRecords": { - "type": "string", - "description": "[Output-only] The number of bad records encountered. Note that if the job has failed because of more bad records encountered than the maximum allowed in the load job configuration, then this number can be less than the total number of bad records present in the input data.", - "format": "int64" - }, - "inputFileBytes": { - "type": "string", - "description": "[Output-only] Number of bytes of source data in a load job.", - "format": "int64" - }, - "inputFiles": { - "type": "string", - "description": "[Output-only] Number of source files in a load job.", - "format": "int64" - }, - "outputBytes": { - "type": "string", - "description": "[Output-only] Size of the loaded data in bytes. Note that while a load job is in the running state, this value may change.", - "format": "int64" - }, - "outputRows": { - "type": "string", - "description": "[Output-only] Number of rows imported in a load job. Note that while an import job is in the running state, this value may change.", - "format": "int64" - } - } - }, - "JobStatistics4": { - "id": "JobStatistics4", - "type": "object", - "properties": { - "destinationUriFileCounts": { - "type": "array", - "description": "[Output-only] Number of files per destination URI or URI pattern specified in the extract configuration. These values will be in the same order as the URIs specified in the 'destinationUris' field.", - "items": { - "type": "string", - "format": "int64" - } - } - } - }, - "JobStatus": { - "id": "JobStatus", - "type": "object", - "properties": { - "errorResult": { - "$ref": "ErrorProto", - "description": "[Output-only] Final error result of the job. If present, indicates that the job has completed and was unsuccessful." - }, - "errors": { - "type": "array", - "description": "[Output-only] The first errors encountered during the running of the job. The final message includes the number of errors that caused the process to stop. Errors here do not necessarily mean that the job has completed or was unsuccessful.", - "items": { - "$ref": "ErrorProto" - } - }, - "state": { - "type": "string", - "description": "[Output-only] Running state of the job." - } - } - }, - "JsonObject": { - "id": "JsonObject", - "type": "object", - "description": "Represents a single JSON object.", - "additionalProperties": { - "$ref": "JsonValue" - } - }, - "JsonValue": { - "id": "JsonValue", - "type": "any" - }, - "ProjectList": { - "id": "ProjectList", - "type": "object", - "properties": { - "etag": { - "type": "string", - "description": "A hash of the page of results" - }, - "kind": { - "type": "string", - "description": "The type of list.", - "default": "bigquery#projectList" - }, - "nextPageToken": { - "type": "string", - "description": "A token to request the next page of results." }, "projects": { - "type": "array", - "description": "Projects to which you have at least READ access.", - "items": { - "type": "object", - "properties": { - "friendlyName": { - "type": "string", - "description": "A descriptive name for this project." - }, - "id": { - "type": "string", - "description": "An opaque ID of this project." - }, - "kind": { - "type": "string", - "description": "The resource type.", - "default": "bigquery#project" - }, - "numericId": { - "type": "string", - "description": "The numeric ID of this project.", - "format": "uint64" - }, - "projectReference": { - "$ref": "ProjectReference", - "description": "A unique reference to this project." - } - } - } - }, - "totalItems": { - "type": "integer", - "description": "The total number of projects in the list.", - "format": "int32" - } - } - }, - "ProjectReference": { - "id": "ProjectReference", - "type": "object", - "properties": { - "projectId": { - "type": "string", - "description": "[Required] ID of the project. Can be either the numeric ID or the assigned ID of the project." - } - } - }, - "QueryParameter": { - "id": "QueryParameter", - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "[Optional] If unset, this is a positional parameter. Otherwise, should be unique within a query." - }, - "parameterType": { - "$ref": "QueryParameterType", - "description": "[Required] The type of this parameter." - }, - "parameterValue": { - "$ref": "QueryParameterValue", - "description": "[Required] The value of this parameter." - } - } - }, - "QueryParameterType": { - "id": "QueryParameterType", - "type": "object", - "properties": { - "arrayType": { - "$ref": "QueryParameterType", - "description": "[Optional] The type of the array's elements, if this is an array." - }, - "structTypes": { - "type": "array", - "description": "[Optional] The types of the fields of this struct, in order, if this is a struct.", - "items": { - "type": "object", - "properties": { - "description": { - "type": "string", - "description": "[Optional] Human-oriented description of the field." - }, - "name": { - "type": "string", - "description": "[Optional] The name of this field." - }, - "type": { - "$ref": "QueryParameterType", - "description": "[Required] The type of this field." - } - } - } - }, - "type": { - "type": "string", - "description": "[Required] The top level type of this field." - } - } - }, - "QueryParameterValue": { - "id": "QueryParameterValue", - "type": "object", - "properties": { - "arrayValues": { - "type": "array", - "description": "[Optional] The array values, if this is an array type.", - "items": { - "$ref": "QueryParameterValue" - } - }, - "structValues": { - "type": "object", - "description": "[Optional] The struct field values, in order of the struct type's declaration.", - "additionalProperties": { - "$ref": "QueryParameterValue" - } - }, - "value": { - "type": "string", - "description": "[Optional] The value of this value, if a simple scalar type." - } - } - }, - "QueryRequest": { - "id": "QueryRequest", - "type": "object", - "properties": { - "defaultDataset": { - "$ref": "DatasetReference", - "description": "[Optional] Specifies the default datasetId and projectId to assume for any unqualified table names in the query. If not set, all table names in the query string must be qualified in the format 'datasetId.tableId'." - }, - "dryRun": { - "type": "boolean", - "description": "[Optional] If set to true, BigQuery doesn't run the job. Instead, if the query is valid, BigQuery returns statistics about the job such as how many bytes would be processed. If the query is invalid, an error returns. The default value is false." - }, - "kind": { - "type": "string", - "description": "The resource type of the request.", - "default": "bigquery#queryRequest" - }, - "maxResults": { - "type": "integer", - "description": "[Optional] The maximum number of rows of data to return per page of results. Setting this flag to a small value such as 1000 and then paging through results might improve reliability when the query result set is large. In addition to this limit, responses are also limited to 10 MB. By default, there is no maximum row count, and only the byte limit applies.", - "format": "uint32" - }, - "parameterMode": { - "type": "string", - "description": "Standard SQL only. Set to POSITIONAL to use positional (?) query parameters or to NAMED to use named (@myparam) query parameters in this query." - }, - "preserveNulls": { - "type": "boolean", - "description": "[Deprecated] This property is deprecated." - }, - "query": { - "type": "string", - "description": "[Required] A query string, following the BigQuery query syntax, of the query to execute. Example: \"SELECT count(f1) FROM [myProjectId:myDatasetId.myTableId]\".", - "annotations": { - "required": [ - "bigquery.jobs.query" - ] - } - }, - "queryParameters": { - "type": "array", - "description": "Query parameters for Standard SQL queries.", - "items": { - "$ref": "QueryParameter" - } - }, - "timeoutMs": { - "type": "integer", - "description": "[Optional] How long to wait for the query to complete, in milliseconds, before the request times out and returns. Note that this is only a timeout for the request, not the query. If the query takes longer to run than the timeout value, the call returns without any results and with the 'jobComplete' flag set to false. You can call GetQueryResults() to wait for the query to complete and read the results. The default value is 10000 milliseconds (10 seconds).", - "format": "uint32" - }, - "useLegacySql": { - "type": "boolean", - "description": "Specifies whether to use BigQuery's legacy SQL dialect for this query. The default value is true. If set to false, the query will use BigQuery's standard SQL: https://cloud.google.com/bigquery/sql-reference/ When useLegacySql is set to false, the value of flattenResults is ignored; query will be run as if flattenResults is false.", - "default": "true" - }, - "useQueryCache": { - "type": "boolean", - "description": "[Optional] Whether to look for the result in the query cache. The query cache is a best-effort cache that will be flushed whenever tables in the query are modified. The default value is true.", - "default": "true" - } - } - }, - "QueryResponse": { - "id": "QueryResponse", - "type": "object", - "properties": { - "cacheHit": { - "type": "boolean", - "description": "Whether the query result was fetched from the query cache." - }, - "errors": { - "type": "array", - "description": "[Output-only] The first errors or warnings encountered during the running of the job. The final message includes the number of errors that caused the process to stop. Errors here do not necessarily mean that the job has completed or was unsuccessful.", - "items": { - "$ref": "ErrorProto" - } - }, - "jobComplete": { - "type": "boolean", - "description": "Whether the query has completed or not. If rows or totalRows are present, this will always be true. If this is false, totalRows will not be available." - }, - "jobReference": { - "$ref": "JobReference", - "description": "Reference to the Job that was created to run the query. This field will be present even if the original request timed out, in which case GetQueryResults can be used to read the results once the query has completed. Since this API only returns the first page of results, subsequent pages can be fetched via the same mechanism (GetQueryResults)." - }, - "kind": { - "type": "string", - "description": "The resource type.", - "default": "bigquery#queryResponse" - }, - "numDmlAffectedRows": { - "type": "string", - "description": "[Output-only] The number of rows affected by a DML statement. Present only for DML statements INSERT, UPDATE or DELETE.", - "format": "int64" - }, - "pageToken": { - "type": "string", - "description": "A token used for paging results." - }, - "rows": { - "type": "array", - "description": "An object with as many results as can be contained within the maximum permitted reply size. To get any additional rows, you can call GetQueryResults and specify the jobReference returned above.", - "items": { - "$ref": "TableRow" - } - }, - "schema": { - "$ref": "TableSchema", - "description": "The schema of the results. Present only when the query completes successfully." - }, - "totalBytesProcessed": { - "type": "string", - "description": "The total number of bytes processed for this query. If this query was a dry run, this is the number of bytes that would be processed if the query were run.", - "format": "int64" - }, - "totalRows": { - "type": "string", - "description": "The total number of rows in the complete query result set, which can be more than the number of rows in this single page of results.", - "format": "uint64" - } - } - }, - "QueryTimelineSample": { - "id": "QueryTimelineSample", - "type": "object", - "properties": { - "activeInputs": { - "type": "integer", - "description": "Total number of active workers. This does not correspond directly to slot usage. This is the largest value observed since the last sample.", - "format": "int32" - }, - "completedInputs": { - "type": "integer", - "description": "Total parallel units of work completed by this query.", - "format": "int32" - }, - "completedInputsForActiveStages": { - "type": "integer", - "description": "Total parallel units of work completed by the currently active stages.", - "format": "int32" - }, - "elapsedMs": { - "type": "string", - "description": "Milliseconds elapsed since the start of query execution.", - "format": "int64" - }, - "pendingInputs": { - "type": "string", - "description": "Total parallel units of work remaining for the active stages.", - "format": "int64" - }, - "totalSlotMs": { - "type": "string", - "description": "Cumulative slot-ms consumed by the query.", - "format": "int64" - } - } - }, - "Streamingbuffer": { - "id": "Streamingbuffer", - "type": "object", - "properties": { - "estimatedBytes": { - "type": "string", - "description": "[Output-only] A lower-bound estimate of the number of bytes currently in the streaming buffer.", - "format": "uint64" - }, - "estimatedRows": { - "type": "string", - "description": "[Output-only] A lower-bound estimate of the number of rows currently in the streaming buffer.", - "format": "uint64" - }, - "oldestEntryTime": { - "type": "string", - "description": "[Output-only] Contains the timestamp of the oldest entry in the streaming buffer, in milliseconds since the epoch, if the streaming buffer is available.", - "format": "uint64" - } - } - }, - "Table": { - "id": "Table", - "type": "object", - "properties": { - "creationTime": { - "type": "string", - "description": "[Output-only] The time when this table was created, in milliseconds since the epoch.", - "format": "int64" - }, - "description": { - "type": "string", - "description": "[Optional] A user-friendly description of this table." - }, - "encryptionConfiguration": { - "$ref": "EncryptionConfiguration", - "description": "[Experimental] Custom encryption configuration (e.g., Cloud KMS keys)." - }, - "etag": { - "type": "string", - "description": "[Output-only] A hash of this resource." - }, - "expirationTime": { - "type": "string", - "description": "[Optional] The time when this table expires, in milliseconds since the epoch. If not present, the table will persist indefinitely. Expired tables will be deleted and their storage reclaimed. The defaultTableExpirationMs property of the encapsulating dataset can be used to set a default expirationTime on newly created tables.", - "format": "int64" - }, - "externalDataConfiguration": { - "$ref": "ExternalDataConfiguration", - "description": "[Optional] Describes the data format, location, and other properties of a table stored outside of BigQuery. By defining these properties, the data source can then be queried as if it were a standard BigQuery table." - }, - "friendlyName": { - "type": "string", - "description": "[Optional] A descriptive name for this table." - }, - "id": { - "type": "string", - "description": "[Output-only] An opaque ID uniquely identifying the table." - }, - "kind": { - "type": "string", - "description": "[Output-only] The type of the resource.", - "default": "bigquery#table" - }, - "labels": { - "type": "object", - "description": "The labels associated with this table. You can use these to organize and group your tables. Label keys and values can be no longer than 63 characters, can only contain lowercase letters, numeric characters, underscores and dashes. International characters are allowed. Label values are optional. Label keys must start with a letter and each label in the list must have a different key.", - "additionalProperties": { - "type": "string" - } - }, - "lastModifiedTime": { - "type": "string", - "description": "[Output-only] The time when this table was last modified, in milliseconds since the epoch.", - "format": "uint64" - }, - "location": { - "type": "string", - "description": "[Output-only] The geographic location where the table resides. This value is inherited from the dataset." - }, - "numBytes": { - "type": "string", - "description": "[Output-only] The size of this table in bytes, excluding any data in the streaming buffer.", - "format": "int64" - }, - "numLongTermBytes": { - "type": "string", - "description": "[Output-only] The number of bytes in the table that are considered \"long-term storage\".", - "format": "int64" - }, - "numRows": { - "type": "string", - "description": "[Output-only] The number of rows of data in this table, excluding any data in the streaming buffer.", - "format": "uint64" - }, - "schema": { - "$ref": "TableSchema", - "description": "[Optional] Describes the schema of this table." - }, - "selfLink": { - "type": "string", - "description": "[Output-only] A URL that can be used to access this resource again." - }, - "streamingBuffer": { - "$ref": "Streamingbuffer", - "description": "[Output-only] Contains information regarding this table's streaming buffer, if one is present. This field will be absent if the table is not being streamed to or if there is no data in the streaming buffer." - }, - "tableReference": { - "$ref": "TableReference", - "description": "[Required] Reference describing the ID of this table." - }, - "timePartitioning": { - "$ref": "TimePartitioning", - "description": "If specified, configures time-based partitioning for this table." - }, - "type": { - "type": "string", - "description": "[Output-only] Describes the table type. The following values are supported: TABLE: A normal BigQuery table. VIEW: A virtual table defined by a SQL query. EXTERNAL: A table that references data stored in an external storage system, such as Google Cloud Storage. The default value is TABLE." - }, - "view": { - "$ref": "ViewDefinition", - "description": "[Optional] The view definition." - } - } - }, - "TableCell": { - "id": "TableCell", - "type": "object", - "properties": { - "v": { - "type": "any" - } - } - }, - "TableDataInsertAllRequest": { - "id": "TableDataInsertAllRequest", - "type": "object", - "properties": { - "ignoreUnknownValues": { - "type": "boolean", - "description": "[Optional] Accept rows that contain values that do not match the schema. The unknown values are ignored. Default is false, which treats unknown values as errors." - }, - "kind": { - "type": "string", - "description": "The resource type of the response.", - "default": "bigquery#tableDataInsertAllRequest" - }, - "rows": { - "type": "array", - "description": "The rows to insert.", - "items": { - "type": "object", - "properties": { - "insertId": { - "type": "string", - "description": "[Optional] A unique ID for each row. BigQuery uses this property to detect duplicate insertion requests on a best-effort basis." - }, - "json": { - "$ref": "JsonObject", - "description": "[Required] A JSON object that contains a row of data. The object's properties and values must match the destination table's schema." - } - } - } - }, - "skipInvalidRows": { - "type": "boolean", - "description": "[Optional] Insert all valid rows of a request, even if invalid rows exist. The default value is false, which causes the entire request to fail if any invalid rows exist." - }, - "templateSuffix": { - "type": "string", - "description": "[Experimental] If specified, treats the destination table as a base template, and inserts the rows into an instance table named \"{destination}{templateSuffix}\". BigQuery will manage creation of the instance table, using the schema of the base template table. See https://cloud.google.com/bigquery/streaming-data-into-bigquery#template-tables for considerations when working with templates tables." - } - } - }, - "TableDataInsertAllResponse": { - "id": "TableDataInsertAllResponse", - "type": "object", - "properties": { - "insertErrors": { - "type": "array", - "description": "An array of errors for rows that were not inserted.", - "items": { - "type": "object", - "properties": { - "errors": { - "type": "array", - "description": "Error information for the row indicated by the index property.", - "items": { - "$ref": "ErrorProto" + "methods": { + "getServiceAccount": { + "description": "Returns the email address of the service account for your project used for interactions with Google Cloud KMS.", + "httpMethod": "GET", + "id": "bigquery.projects.getServiceAccount", + "parameterOrder": [ + "projectId" + ], + "parameters": { + "projectId": { + "description": "Project ID for which the service account is requested.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "projects/{projectId}/serviceAccount", + "response": { + "$ref": "GetServiceAccountResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/bigquery", + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + }, + "list": { + "description": "Lists all projects to which you have been granted any project role.", + "httpMethod": "GET", + "id": "bigquery.projects.list", + "parameters": { + "maxResults": { + "description": "Maximum number of results to return", + "format": "uint32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Page token, returned by a previous call, to request the next page of results", + "location": "query", + "type": "string" + } + }, + "path": "projects", + "response": { + "$ref": "ProjectList" + }, + "scopes": [ + "https://www.googleapis.com/auth/bigquery", + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] } - }, - "index": { - "type": "integer", - "description": "The index of the row that error applies to.", - "format": "uint32" - } } - } }, - "kind": { - "type": "string", - "description": "The resource type of the response.", - "default": "bigquery#tableDataInsertAllResponse" - } - } - }, - "TableDataList": { - "id": "TableDataList", - "type": "object", - "properties": { - "etag": { - "type": "string", - "description": "A hash of this page of results." - }, - "kind": { - "type": "string", - "description": "The resource type of the response.", - "default": "bigquery#tableDataList" - }, - "pageToken": { - "type": "string", - "description": "A token used for paging results. Providing this token instead of the startIndex parameter can help you retrieve stable results when an underlying table is changing." - }, - "rows": { - "type": "array", - "description": "Rows of results.", - "items": { - "$ref": "TableRow" - } - }, - "totalRows": { - "type": "string", - "description": "The total number of rows in the complete table.", - "format": "int64" - } - } - }, - "TableFieldSchema": { - "id": "TableFieldSchema", - "type": "object", - "properties": { - "description": { - "type": "string", - "description": "[Optional] The field description. The maximum length is 1,024 characters." - }, - "fields": { - "type": "array", - "description": "[Optional] Describes the nested schema fields if the type property is set to RECORD.", - "items": { - "$ref": "TableFieldSchema" - } - }, - "mode": { - "type": "string", - "description": "[Optional] The field mode. Possible values include NULLABLE, REQUIRED and REPEATED. The default value is NULLABLE." - }, - "name": { - "type": "string", - "description": "[Required] The field name. The name must contain only letters (a-z, A-Z), numbers (0-9), or underscores (_), and must start with a letter or underscore. The maximum length is 128 characters." - }, - "type": { - "type": "string", - "description": "[Required] The field data type. Possible values include STRING, BYTES, INTEGER, INT64 (same as INTEGER), FLOAT, FLOAT64 (same as FLOAT), BOOLEAN, BOOL (same as BOOLEAN), TIMESTAMP, DATE, TIME, DATETIME, RECORD (where RECORD indicates that the field contains a nested schema) or STRUCT (same as RECORD)." - } - } - }, - "TableList": { - "id": "TableList", - "type": "object", - "properties": { - "etag": { - "type": "string", - "description": "A hash of this page of results." - }, - "kind": { - "type": "string", - "description": "The type of list.", - "default": "bigquery#tableList" - }, - "nextPageToken": { - "type": "string", - "description": "A token to request the next page of results." + "tabledata": { + "methods": { + "insertAll": { + "description": "Streams data into BigQuery one record at a time without needing to run a load job. Requires the WRITER dataset role.", + "httpMethod": "POST", + "id": "bigquery.tabledata.insertAll", + "parameterOrder": [ + "projectId", + "datasetId", + "tableId" + ], + "parameters": { + "datasetId": { + "description": "Dataset ID of the destination table.", + "location": "path", + "required": true, + "type": "string" + }, + "projectId": { + "description": "Project ID of the destination table.", + "location": "path", + "required": true, + "type": "string" + }, + "tableId": { + "description": "Table ID of the destination table.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "projects/{projectId}/datasets/{datasetId}/tables/{tableId}/insertAll", + "request": { + "$ref": "TableDataInsertAllRequest" + }, + "response": { + "$ref": "TableDataInsertAllResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/bigquery", + "https://www.googleapis.com/auth/bigquery.insertdata", + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Retrieves table data from a specified set of rows. Requires the READER dataset role.", + "httpMethod": "GET", + "id": "bigquery.tabledata.list", + "parameterOrder": [ + "projectId", + "datasetId", + "tableId" + ], + "parameters": { + "datasetId": { + "description": "Dataset ID of the table to read", + "location": "path", + "required": true, + "type": "string" + }, + "maxResults": { + "description": "Maximum number of results to return", + "format": "uint32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Page token, returned by a previous call, identifying the result set", + "location": "query", + "type": "string" + }, + "projectId": { + "description": "Project ID of the table to read", + "location": "path", + "required": true, + "type": "string" + }, + "selectedFields": { + "description": "List of fields to return (comma-separated). If unspecified, all fields are returned", + "location": "query", + "type": "string" + }, + "startIndex": { + "description": "Zero-based index of the starting row to read", + "format": "uint64", + "location": "query", + "type": "string" + }, + "tableId": { + "description": "Table ID of the table to read", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "projects/{projectId}/datasets/{datasetId}/tables/{tableId}/data", + "response": { + "$ref": "TableDataList" + }, + "scopes": [ + "https://www.googleapis.com/auth/bigquery", + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + } + } }, "tables": { - "type": "array", - "description": "Tables in the requested dataset.", - "items": { - "type": "object", + "methods": { + "delete": { + "description": "Deletes the table specified by tableId from the dataset. If the table contains data, all the data will be deleted.", + "httpMethod": "DELETE", + "id": "bigquery.tables.delete", + "parameterOrder": [ + "projectId", + "datasetId", + "tableId" + ], + "parameters": { + "datasetId": { + "description": "Dataset ID of the table to delete", + "location": "path", + "required": true, + "type": "string" + }, + "projectId": { + "description": "Project ID of the table to delete", + "location": "path", + "required": true, + "type": "string" + }, + "tableId": { + "description": "Table ID of the table to delete", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "projects/{projectId}/datasets/{datasetId}/tables/{tableId}", + "scopes": [ + "https://www.googleapis.com/auth/bigquery", + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Gets the specified table resource by table ID. This method does not return the data in the table, it only returns the table resource, which describes the structure of this table.", + "httpMethod": "GET", + "id": "bigquery.tables.get", + "parameterOrder": [ + "projectId", + "datasetId", + "tableId" + ], + "parameters": { + "datasetId": { + "description": "Dataset ID of the requested table", + "location": "path", + "required": true, + "type": "string" + }, + "projectId": { + "description": "Project ID of the requested table", + "location": "path", + "required": true, + "type": "string" + }, + "selectedFields": { + "description": "List of fields to return (comma-separated). If unspecified, all fields are returned", + "location": "query", + "type": "string" + }, + "tableId": { + "description": "Table ID of the requested table", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "projects/{projectId}/datasets/{datasetId}/tables/{tableId}", + "response": { + "$ref": "Table" + }, + "scopes": [ + "https://www.googleapis.com/auth/bigquery", + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + }, + "insert": { + "description": "Creates a new, empty table in the dataset.", + "httpMethod": "POST", + "id": "bigquery.tables.insert", + "parameterOrder": [ + "projectId", + "datasetId" + ], + "parameters": { + "datasetId": { + "description": "Dataset ID of the new table", + "location": "path", + "required": true, + "type": "string" + }, + "projectId": { + "description": "Project ID of the new table", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "projects/{projectId}/datasets/{datasetId}/tables", + "request": { + "$ref": "Table" + }, + "response": { + "$ref": "Table" + }, + "scopes": [ + "https://www.googleapis.com/auth/bigquery", + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists all tables in the specified dataset. Requires the READER dataset role.", + "httpMethod": "GET", + "id": "bigquery.tables.list", + "parameterOrder": [ + "projectId", + "datasetId" + ], + "parameters": { + "datasetId": { + "description": "Dataset ID of the tables to list", + "location": "path", + "required": true, + "type": "string" + }, + "maxResults": { + "description": "Maximum number of results to return", + "format": "uint32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Page token, returned by a previous call, to request the next page of results", + "location": "query", + "type": "string" + }, + "projectId": { + "description": "Project ID of the tables to list", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "projects/{projectId}/datasets/{datasetId}/tables", + "response": { + "$ref": "TableList" + }, + "scopes": [ + "https://www.googleapis.com/auth/bigquery", + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + }, + "patch": { + "description": "Updates information in an existing table. The update method replaces the entire table resource, whereas the patch method only replaces fields that are provided in the submitted table resource. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "bigquery.tables.patch", + "parameterOrder": [ + "projectId", + "datasetId", + "tableId" + ], + "parameters": { + "datasetId": { + "description": "Dataset ID of the table to update", + "location": "path", + "required": true, + "type": "string" + }, + "projectId": { + "description": "Project ID of the table to update", + "location": "path", + "required": true, + "type": "string" + }, + "tableId": { + "description": "Table ID of the table to update", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "projects/{projectId}/datasets/{datasetId}/tables/{tableId}", + "request": { + "$ref": "Table" + }, + "response": { + "$ref": "Table" + }, + "scopes": [ + "https://www.googleapis.com/auth/bigquery", + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "update": { + "description": "Updates information in an existing table. The update method replaces the entire table resource, whereas the patch method only replaces fields that are provided in the submitted table resource.", + "httpMethod": "PUT", + "id": "bigquery.tables.update", + "parameterOrder": [ + "projectId", + "datasetId", + "tableId" + ], + "parameters": { + "datasetId": { + "description": "Dataset ID of the table to update", + "location": "path", + "required": true, + "type": "string" + }, + "projectId": { + "description": "Project ID of the table to update", + "location": "path", + "required": true, + "type": "string" + }, + "tableId": { + "description": "Table ID of the table to update", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "projects/{projectId}/datasets/{datasetId}/tables/{tableId}", + "request": { + "$ref": "Table" + }, + "response": { + "$ref": "Table" + }, + "scopes": [ + "https://www.googleapis.com/auth/bigquery", + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + } + }, + "revision": "20180311", + "rootUrl": "https://www.googleapis.com/", + "schemas": { + "BigtableColumn": { + "id": "BigtableColumn", "properties": { - "creationTime": { - "type": "string", - "description": "The time when this table was created, in milliseconds since the epoch.", - "format": "int64" - }, - "expirationTime": { - "type": "string", - "description": "[Optional] The time when this table expires, in milliseconds since the epoch. If not present, the table will persist indefinitely. Expired tables will be deleted and their storage reclaimed.", - "format": "int64" - }, - "friendlyName": { - "type": "string", - "description": "The user-friendly name for this table." - }, - "id": { - "type": "string", - "description": "An opaque ID of the table" - }, - "kind": { - "type": "string", - "description": "The resource type.", - "default": "bigquery#table" - }, - "labels": { - "type": "object", - "description": "The labels associated with this table. You can use these to organize and group your tables.", - "additionalProperties": { - "type": "string" + "encoding": { + "description": "[Optional] The encoding of the values when the type is not STRING. Acceptable encoding values are: TEXT - indicates values are alphanumeric text strings. BINARY - indicates values are encoded using HBase Bytes.toBytes family of functions. 'encoding' can also be set at the column family level. However, the setting at this level takes precedence if 'encoding' is set at both levels.", + "type": "string" + }, + "fieldName": { + "description": "[Optional] If the qualifier is not a valid BigQuery field identifier i.e. does not match [a-zA-Z][a-zA-Z0-9_]*, a valid identifier must be provided as the column field name and is used as field name in queries.", + "type": "string" + }, + "onlyReadLatest": { + "description": "[Optional] If this is set, only the latest version of value in this column are exposed. 'onlyReadLatest' can also be set at the column family level. However, the setting at this level takes precedence if 'onlyReadLatest' is set at both levels.", + "type": "boolean" + }, + "qualifierEncoded": { + "description": "[Required] Qualifier of the column. Columns in the parent column family that has this exact qualifier are exposed as . field. If the qualifier is valid UTF-8 string, it can be specified in the qualifier_string field. Otherwise, a base-64 encoded value must be set to qualifier_encoded. The column field name is the same as the column qualifier. However, if the qualifier is not a valid BigQuery field identifier i.e. does not match [a-zA-Z][a-zA-Z0-9_]*, a valid identifier must be provided as field_name.", + "format": "byte", + "type": "string" + }, + "qualifierString": { + "type": "string" + }, + "type": { + "description": "[Optional] The type to convert the value in cells of this column. The values are expected to be encoded using HBase Bytes.toBytes function when using the BINARY encoding value. Following BigQuery types are allowed (case-sensitive) - BYTES STRING INTEGER FLOAT BOOLEAN Default type is BYTES. 'type' can also be set at the column family level. However, the setting at this level takes precedence if 'type' is set at both levels.", + "type": "string" } - }, - "tableReference": { - "$ref": "TableReference", - "description": "A reference uniquely identifying the table." - }, - "timePartitioning": { - "$ref": "TimePartitioning", - "description": "The time-based partitioning for this table." - }, - "type": { - "type": "string", - "description": "The type of table. Possible values are: TABLE, VIEW." - }, - "view": { - "type": "object", - "description": "Additional details for a view.", - "properties": { - "useLegacySql": { - "type": "boolean", - "description": "True if view is defined in legacy SQL dialect, false if in standard SQL." - } + }, + "type": "object" + }, + "BigtableColumnFamily": { + "id": "BigtableColumnFamily", + "properties": { + "columns": { + "description": "[Optional] Lists of columns that should be exposed as individual fields as opposed to a list of (column name, value) pairs. All columns whose qualifier matches a qualifier in this list can be accessed as .. Other columns can be accessed as a list through .Column field.", + "items": { + "$ref": "BigtableColumn" + }, + "type": "array" + }, + "encoding": { + "description": "[Optional] The encoding of the values when the type is not STRING. Acceptable encoding values are: TEXT - indicates values are alphanumeric text strings. BINARY - indicates values are encoded using HBase Bytes.toBytes family of functions. This can be overridden for a specific column by listing that column in 'columns' and specifying an encoding for it.", + "type": "string" + }, + "familyId": { + "description": "Identifier of the column family.", + "type": "string" + }, + "onlyReadLatest": { + "description": "[Optional] If this is set only the latest version of value are exposed for all columns in this column family. This can be overridden for a specific column by listing that column in 'columns' and specifying a different setting for that column.", + "type": "boolean" + }, + "type": { + "description": "[Optional] The type to convert the value in cells of this column family. The values are expected to be encoded using HBase Bytes.toBytes function when using the BINARY encoding value. Following BigQuery types are allowed (case-sensitive) - BYTES STRING INTEGER FLOAT BOOLEAN Default type is BYTES. This can be overridden for a specific column by listing that column in 'columns' and specifying a type for it.", + "type": "string" } - } - } - } + }, + "type": "object" }, - "totalItems": { - "type": "integer", - "description": "The total number of tables in the dataset.", - "format": "int32" + "BigtableOptions": { + "id": "BigtableOptions", + "properties": { + "columnFamilies": { + "description": "[Optional] List of column families to expose in the table schema along with their types. This list restricts the column families that can be referenced in queries and specifies their value types. You can use this list to do type conversions - see the 'type' field for more details. If you leave this list empty, all column families are present in the table schema and their values are read as BYTES. During a query only the column families referenced in that query are read from Bigtable.", + "items": { + "$ref": "BigtableColumnFamily" + }, + "type": "array" + }, + "ignoreUnspecifiedColumnFamilies": { + "description": "[Optional] If field is true, then the column families that are not specified in columnFamilies list are not exposed in the table schema. Otherwise, they are read with BYTES type values. The default value is false.", + "type": "boolean" + }, + "readRowkeyAsString": { + "description": "[Optional] If field is true, then the rowkey column families will be read and converted to string. Otherwise they are read with BYTES type values and users need to manually cast them with CAST if necessary. The default value is false.", + "type": "boolean" + } + }, + "type": "object" + }, + "CsvOptions": { + "id": "CsvOptions", + "properties": { + "allowJaggedRows": { + "description": "[Optional] Indicates if BigQuery should accept rows that are missing trailing optional columns. If true, BigQuery treats missing trailing columns as null values. If false, records with missing trailing columns are treated as bad records, and if there are too many bad records, an invalid error is returned in the job result. The default value is false.", + "type": "boolean" + }, + "allowQuotedNewlines": { + "description": "[Optional] Indicates if BigQuery should allow quoted data sections that contain newline characters in a CSV file. The default value is false.", + "type": "boolean" + }, + "encoding": { + "description": "[Optional] The character encoding of the data. The supported values are UTF-8 or ISO-8859-1. The default value is UTF-8. BigQuery decodes the data after the raw, binary data has been split using the values of the quote and fieldDelimiter properties.", + "type": "string" + }, + "fieldDelimiter": { + "description": "[Optional] The separator for fields in a CSV file. BigQuery converts the string to ISO-8859-1 encoding, and then uses the first byte of the encoded string to split the data in its raw, binary state. BigQuery also supports the escape sequence \"\\t\" to specify a tab separator. The default value is a comma (',').", + "type": "string" + }, + "quote": { + "default": "\"", + "description": "[Optional] The value that is used to quote data sections in a CSV file. BigQuery converts the string to ISO-8859-1 encoding, and then uses the first byte of the encoded string to split the data in its raw, binary state. The default value is a double-quote ('\"'). If your data does not contain quoted sections, set the property value to an empty string. If your data contains quoted newline characters, you must also set the allowQuotedNewlines property to true.", + "pattern": ".?", + "type": "string" + }, + "skipLeadingRows": { + "description": "[Optional] The number of rows at the top of a CSV file that BigQuery will skip when reading the data. The default value is 0. This property is useful if you have header rows in the file that should be skipped.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "Dataset": { + "id": "Dataset", + "properties": { + "access": { + "description": "[Optional] An array of objects that define dataset access for one or more entities. You can set this property when inserting or updating a dataset in order to control who is allowed to access the data. If unspecified at dataset creation time, BigQuery adds default dataset access for the following entities: access.specialGroup: projectReaders; access.role: READER; access.specialGroup: projectWriters; access.role: WRITER; access.specialGroup: projectOwners; access.role: OWNER; access.userByEmail: [dataset creator email]; access.role: OWNER;", + "items": { + "properties": { + "domain": { + "description": "[Pick one] A domain to grant access to. Any users signed in with the domain specified will be granted the specified access. Example: \"example.com\".", + "type": "string" + }, + "groupByEmail": { + "description": "[Pick one] An email address of a Google Group to grant access to.", + "type": "string" + }, + "role": { + "description": "[Required] Describes the rights granted to the user specified by the other member of the access object. The following string values are supported: READER, WRITER, OWNER.", + "type": "string" + }, + "specialGroup": { + "description": "[Pick one] A special group to grant access to. Possible values include: projectOwners: Owners of the enclosing project. projectReaders: Readers of the enclosing project. projectWriters: Writers of the enclosing project. allAuthenticatedUsers: All authenticated BigQuery users.", + "type": "string" + }, + "userByEmail": { + "description": "[Pick one] An email address of a user to grant access to. For example: fred@example.com.", + "type": "string" + }, + "view": { + "$ref": "TableReference", + "description": "[Pick one] A view from a different dataset to grant access to. Queries executed against that view will have read access to tables in this dataset. The role field is not required when this field is set. If that view is updated by any user, access to the view needs to be granted again via an update operation." + } + }, + "type": "object" + }, + "type": "array" + }, + "creationTime": { + "description": "[Output-only] The time when this dataset was created, in milliseconds since the epoch.", + "format": "int64", + "type": "string" + }, + "datasetReference": { + "$ref": "DatasetReference", + "description": "[Required] A reference that identifies the dataset." + }, + "defaultTableExpirationMs": { + "description": "[Optional] The default lifetime of all tables in the dataset, in milliseconds. The minimum value is 3600000 milliseconds (one hour). Once this property is set, all newly-created tables in the dataset will have an expirationTime property set to the creation time plus the value in this property, and changing the value will only affect new tables, not existing ones. When the expirationTime for a given table is reached, that table will be deleted automatically. If a table's expirationTime is modified or removed before the table expires, or if you provide an explicit expirationTime when creating a table, that value takes precedence over the default expiration time indicated by this property.", + "format": "int64", + "type": "string" + }, + "description": { + "description": "[Optional] A user-friendly description of the dataset.", + "type": "string" + }, + "etag": { + "description": "[Output-only] A hash of the resource.", + "type": "string" + }, + "friendlyName": { + "description": "[Optional] A descriptive name for the dataset.", + "type": "string" + }, + "id": { + "description": "[Output-only] The fully-qualified unique name of the dataset in the format projectId:datasetId. The dataset name without the project name is given in the datasetId field. When creating a new dataset, leave this field blank, and instead specify the datasetId field.", + "type": "string" + }, + "kind": { + "default": "bigquery#dataset", + "description": "[Output-only] The resource type.", + "type": "string" + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "The labels associated with this dataset. You can use these to organize and group your datasets. You can set this property when inserting or updating a dataset. See Labeling Datasets for more information.", + "type": "object" + }, + "lastModifiedTime": { + "description": "[Output-only] The date when this dataset or any of its tables was last modified, in milliseconds since the epoch.", + "format": "int64", + "type": "string" + }, + "location": { + "description": "The geographic location where the dataset should reside. Possible values include EU and US. The default value is US.", + "type": "string" + }, + "selfLink": { + "description": "[Output-only] A URL that can be used to access the resource again. You can use this URL in Get or Update requests to the resource.", + "type": "string" + } + }, + "type": "object" + }, + "DatasetList": { + "id": "DatasetList", + "properties": { + "datasets": { + "description": "An array of the dataset resources in the project. Each resource contains basic information. For full information about a particular dataset resource, use the Datasets: get method. This property is omitted when there are no datasets in the project.", + "items": { + "properties": { + "datasetReference": { + "$ref": "DatasetReference", + "description": "The dataset reference. Use this property to access specific parts of the dataset's ID, such as project ID or dataset ID." + }, + "friendlyName": { + "description": "A descriptive name for the dataset, if one exists.", + "type": "string" + }, + "id": { + "description": "The fully-qualified, unique, opaque ID of the dataset.", + "type": "string" + }, + "kind": { + "default": "bigquery#dataset", + "description": "The resource type. This property always returns the value \"bigquery#dataset\".", + "type": "string" + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "The labels associated with this dataset. You can use these to organize and group your datasets.", + "type": "object" + }, + "location": { + "description": "[Experimental] The geographic location where the data resides.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "etag": { + "description": "A hash value of the results page. You can use this property to determine if the page has changed since the last request.", + "type": "string" + }, + "kind": { + "default": "bigquery#datasetList", + "description": "The list type. This property always returns the value \"bigquery#datasetList\".", + "type": "string" + }, + "nextPageToken": { + "description": "A token that can be used to request the next results page. This property is omitted on the final results page.", + "type": "string" + } + }, + "type": "object" + }, + "DatasetReference": { + "id": "DatasetReference", + "properties": { + "datasetId": { + "annotations": { + "required": [ + "bigquery.datasets.update" + ] + }, + "description": "[Required] A unique ID for this dataset, without the project name. The ID must contain only letters (a-z, A-Z), numbers (0-9), or underscores (_). The maximum length is 1,024 characters.", + "type": "string" + }, + "projectId": { + "annotations": { + "required": [ + "bigquery.datasets.update" + ] + }, + "description": "[Optional] The ID of the project containing this dataset.", + "type": "string" + } + }, + "type": "object" + }, + "DestinationTableProperties": { + "id": "DestinationTableProperties", + "properties": { + "description": { + "description": "[Optional] The description for the destination table. This will only be used if the destination table is newly created. If the table already exists and a value different than the current description is provided, the job will fail.", + "type": "string" + }, + "friendlyName": { + "description": "[Optional] The friendly name for the destination table. This will only be used if the destination table is newly created. If the table already exists and a value different than the current friendly name is provided, the job will fail.", + "type": "string" + } + }, + "type": "object" + }, + "EncryptionConfiguration": { + "id": "EncryptionConfiguration", + "properties": { + "kmsKeyName": { + "description": "[Optional] Describes the Cloud KMS encryption key that will be used to protect destination BigQuery table. The BigQuery Service Account associated with your project requires access to this encryption key.", + "type": "string" + } + }, + "type": "object" + }, + "ErrorProto": { + "id": "ErrorProto", + "properties": { + "debugInfo": { + "description": "Debugging information. This property is internal to Google and should not be used.", + "type": "string" + }, + "location": { + "description": "Specifies where the error occurred, if present.", + "type": "string" + }, + "message": { + "description": "A human-readable description of the error.", + "type": "string" + }, + "reason": { + "description": "A short error code that summarizes the error.", + "type": "string" + } + }, + "type": "object" + }, + "ExplainQueryStage": { + "id": "ExplainQueryStage", + "properties": { + "completedParallelInputs": { + "description": "Number of parallel input segments completed.", + "format": "int64", + "type": "string" + }, + "computeMsAvg": { + "description": "Milliseconds the average shard spent on CPU-bound tasks.", + "format": "int64", + "type": "string" + }, + "computeMsMax": { + "description": "Milliseconds the slowest shard spent on CPU-bound tasks.", + "format": "int64", + "type": "string" + }, + "computeRatioAvg": { + "description": "Relative amount of time the average shard spent on CPU-bound tasks.", + "format": "double", + "type": "number" + }, + "computeRatioMax": { + "description": "Relative amount of time the slowest shard spent on CPU-bound tasks.", + "format": "double", + "type": "number" + }, + "endMs": { + "description": "Stage end time in milliseconds.", + "format": "int64", + "type": "string" + }, + "id": { + "description": "Unique ID for stage within plan.", + "format": "int64", + "type": "string" + }, + "inputStages": { + "description": "IDs for stages that are inputs to this stage.", + "items": { + "format": "int64", + "type": "string" + }, + "type": "array" + }, + "name": { + "description": "Human-readable name for stage.", + "type": "string" + }, + "parallelInputs": { + "description": "Number of parallel input segments to be processed.", + "format": "int64", + "type": "string" + }, + "readMsAvg": { + "description": "Milliseconds the average shard spent reading input.", + "format": "int64", + "type": "string" + }, + "readMsMax": { + "description": "Milliseconds the slowest shard spent reading input.", + "format": "int64", + "type": "string" + }, + "readRatioAvg": { + "description": "Relative amount of time the average shard spent reading input.", + "format": "double", + "type": "number" + }, + "readRatioMax": { + "description": "Relative amount of time the slowest shard spent reading input.", + "format": "double", + "type": "number" + }, + "recordsRead": { + "description": "Number of records read into the stage.", + "format": "int64", + "type": "string" + }, + "recordsWritten": { + "description": "Number of records written by the stage.", + "format": "int64", + "type": "string" + }, + "shuffleOutputBytes": { + "description": "Total number of bytes written to shuffle.", + "format": "int64", + "type": "string" + }, + "shuffleOutputBytesSpilled": { + "description": "Total number of bytes written to shuffle and spilled to disk.", + "format": "int64", + "type": "string" + }, + "startMs": { + "description": "Stage start time in milliseconds.", + "format": "int64", + "type": "string" + }, + "status": { + "description": "Current status for the stage.", + "type": "string" + }, + "steps": { + "description": "List of operations within the stage in dependency order (approximately chronological).", + "items": { + "$ref": "ExplainQueryStep" + }, + "type": "array" + }, + "waitMsAvg": { + "description": "Milliseconds the average shard spent waiting to be scheduled.", + "format": "int64", + "type": "string" + }, + "waitMsMax": { + "description": "Milliseconds the slowest shard spent waiting to be scheduled.", + "format": "int64", + "type": "string" + }, + "waitRatioAvg": { + "description": "Relative amount of time the average shard spent waiting to be scheduled.", + "format": "double", + "type": "number" + }, + "waitRatioMax": { + "description": "Relative amount of time the slowest shard spent waiting to be scheduled.", + "format": "double", + "type": "number" + }, + "writeMsAvg": { + "description": "Milliseconds the average shard spent on writing output.", + "format": "int64", + "type": "string" + }, + "writeMsMax": { + "description": "Milliseconds the slowest shard spent on writing output.", + "format": "int64", + "type": "string" + }, + "writeRatioAvg": { + "description": "Relative amount of time the average shard spent on writing output.", + "format": "double", + "type": "number" + }, + "writeRatioMax": { + "description": "Relative amount of time the slowest shard spent on writing output.", + "format": "double", + "type": "number" + } + }, + "type": "object" + }, + "ExplainQueryStep": { + "id": "ExplainQueryStep", + "properties": { + "kind": { + "description": "Machine-readable operation type.", + "type": "string" + }, + "substeps": { + "description": "Human-readable stage descriptions.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "ExternalDataConfiguration": { + "id": "ExternalDataConfiguration", + "properties": { + "autodetect": { + "description": "Try to detect schema and format options automatically. Any option specified explicitly will be honored.", + "type": "boolean" + }, + "bigtableOptions": { + "$ref": "BigtableOptions", + "description": "[Optional] Additional options if sourceFormat is set to BIGTABLE." + }, + "compression": { + "description": "[Optional] The compression type of the data source. Possible values include GZIP and NONE. The default value is NONE. This setting is ignored for Google Cloud Bigtable, Google Cloud Datastore backups and Avro formats.", + "type": "string" + }, + "csvOptions": { + "$ref": "CsvOptions", + "description": "Additional properties to set if sourceFormat is set to CSV." + }, + "googleSheetsOptions": { + "$ref": "GoogleSheetsOptions", + "description": "[Optional] Additional options if sourceFormat is set to GOOGLE_SHEETS." + }, + "ignoreUnknownValues": { + "description": "[Optional] Indicates if BigQuery should allow extra values that are not represented in the table schema. If true, the extra values are ignored. If false, records with extra columns are treated as bad records, and if there are too many bad records, an invalid error is returned in the job result. The default value is false. The sourceFormat property determines what BigQuery treats as an extra value: CSV: Trailing columns JSON: Named values that don't match any column names Google Cloud Bigtable: This setting is ignored. Google Cloud Datastore backups: This setting is ignored. Avro: This setting is ignored.", + "type": "boolean" + }, + "maxBadRecords": { + "description": "[Optional] The maximum number of bad records that BigQuery can ignore when reading data. If the number of bad records exceeds this value, an invalid error is returned in the job result. The default value is 0, which requires that all records are valid. This setting is ignored for Google Cloud Bigtable, Google Cloud Datastore backups and Avro formats.", + "format": "int32", + "type": "integer" + }, + "schema": { + "$ref": "TableSchema", + "description": "[Optional] The schema for the data. Schema is required for CSV and JSON formats. Schema is disallowed for Google Cloud Bigtable, Cloud Datastore backups, and Avro formats." + }, + "sourceFormat": { + "description": "[Required] The data format. For CSV files, specify \"CSV\". For Google sheets, specify \"GOOGLE_SHEETS\". For newline-delimited JSON, specify \"NEWLINE_DELIMITED_JSON\". For Avro files, specify \"AVRO\". For Google Cloud Datastore backups, specify \"DATASTORE_BACKUP\". [Beta] For Google Cloud Bigtable, specify \"BIGTABLE\".", + "type": "string" + }, + "sourceUris": { + "description": "[Required] The fully-qualified URIs that point to your data in Google Cloud. For Google Cloud Storage URIs: Each URI can contain one '*' wildcard character and it must come after the 'bucket' name. Size limits related to load jobs apply to external data sources. For Google Cloud Bigtable URIs: Exactly one URI can be specified and it has be a fully specified and valid HTTPS URL for a Google Cloud Bigtable table. For Google Cloud Datastore backups, exactly one URI can be specified. Also, the '*' wildcard character is not allowed.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "GetQueryResultsResponse": { + "id": "GetQueryResultsResponse", + "properties": { + "cacheHit": { + "description": "Whether the query result was fetched from the query cache.", + "type": "boolean" + }, + "errors": { + "description": "[Output-only] The first errors or warnings encountered during the running of the job. The final message includes the number of errors that caused the process to stop. Errors here do not necessarily mean that the job has completed or was unsuccessful.", + "items": { + "$ref": "ErrorProto" + }, + "type": "array" + }, + "etag": { + "description": "A hash of this response.", + "type": "string" + }, + "jobComplete": { + "description": "Whether the query has completed or not. If rows or totalRows are present, this will always be true. If this is false, totalRows will not be available.", + "type": "boolean" + }, + "jobReference": { + "$ref": "JobReference", + "description": "Reference to the BigQuery Job that was created to run the query. This field will be present even if the original request timed out, in which case GetQueryResults can be used to read the results once the query has completed. Since this API only returns the first page of results, subsequent pages can be fetched via the same mechanism (GetQueryResults)." + }, + "kind": { + "default": "bigquery#getQueryResultsResponse", + "description": "The resource type of the response.", + "type": "string" + }, + "numDmlAffectedRows": { + "description": "[Output-only] The number of rows affected by a DML statement. Present only for DML statements INSERT, UPDATE or DELETE.", + "format": "int64", + "type": "string" + }, + "pageToken": { + "description": "A token used for paging results.", + "type": "string" + }, + "rows": { + "description": "An object with as many results as can be contained within the maximum permitted reply size. To get any additional rows, you can call GetQueryResults and specify the jobReference returned above. Present only when the query completes successfully.", + "items": { + "$ref": "TableRow" + }, + "type": "array" + }, + "schema": { + "$ref": "TableSchema", + "description": "The schema of the results. Present only when the query completes successfully." + }, + "totalBytesProcessed": { + "description": "The total number of bytes processed for this query.", + "format": "int64", + "type": "string" + }, + "totalRows": { + "description": "The total number of rows in the complete query result set, which can be more than the number of rows in this single page of results. Present only when the query completes successfully.", + "format": "uint64", + "type": "string" + } + }, + "type": "object" + }, + "GetServiceAccountResponse": { + "id": "GetServiceAccountResponse", + "properties": { + "email": { + "description": "The service account email address.", + "type": "string" + }, + "kind": { + "default": "bigquery#getServiceAccountResponse", + "description": "The resource type of the response.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleSheetsOptions": { + "id": "GoogleSheetsOptions", + "properties": { + "skipLeadingRows": { + "description": "[Optional] The number of rows at the top of a sheet that BigQuery will skip when reading the data. The default value is 0. This property is useful if you have header rows that should be skipped. When autodetect is on, behavior is the following: * skipLeadingRows unspecified - Autodetect tries to detect headers in the first row. If they are not detected, the row is read as data. Otherwise data is read starting from the second row. * skipLeadingRows is 0 - Instructs autodetect that there are no headers and data should be read starting from the first row. * skipLeadingRows = N \u003e 0 - Autodetect skips N-1 rows and tries to detect headers in row N. If headers are not detected, row N is just skipped. Otherwise row N is used to extract column names for the detected schema.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "Job": { + "id": "Job", + "properties": { + "configuration": { + "$ref": "JobConfiguration", + "description": "[Required] Describes the job configuration." + }, + "etag": { + "description": "[Output-only] A hash of this resource.", + "type": "string" + }, + "id": { + "description": "[Output-only] Opaque ID field of the job", + "type": "string" + }, + "jobReference": { + "$ref": "JobReference", + "description": "[Optional] Reference describing the unique-per-user name of the job." + }, + "kind": { + "default": "bigquery#job", + "description": "[Output-only] The type of the resource.", + "type": "string" + }, + "selfLink": { + "description": "[Output-only] A URL that can be used to access this resource again.", + "type": "string" + }, + "statistics": { + "$ref": "JobStatistics", + "description": "[Output-only] Information about the job, including starting time and ending time of the job." + }, + "status": { + "$ref": "JobStatus", + "description": "[Output-only] The status of this job. Examine this value when polling an asynchronous job to see if the job is complete." + }, + "user_email": { + "description": "[Output-only] Email address of the user who ran the job.", + "type": "string" + } + }, + "type": "object" + }, + "JobCancelResponse": { + "id": "JobCancelResponse", + "properties": { + "job": { + "$ref": "Job", + "description": "The final state of the job." + }, + "kind": { + "default": "bigquery#jobCancelResponse", + "description": "The resource type of the response.", + "type": "string" + } + }, + "type": "object" + }, + "JobConfiguration": { + "id": "JobConfiguration", + "properties": { + "copy": { + "$ref": "JobConfigurationTableCopy", + "description": "[Pick one] Copies a table." + }, + "dryRun": { + "description": "[Optional] If set, don't actually run this job. A valid query will return a mostly empty response with some processing statistics, while an invalid query will return the same error it would if it wasn't a dry run. Behavior of non-query jobs is undefined.", + "type": "boolean" + }, + "extract": { + "$ref": "JobConfigurationExtract", + "description": "[Pick one] Configures an extract job." + }, + "jobTimeoutMs": { + "description": "[Optional] Job timeout in milliseconds. If this time limit is exceeded, BigQuery may attempt to terminate the job.", + "format": "int64", + "type": "string" + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "The labels associated with this job. You can use these to organize and group your jobs. Label keys and values can be no longer than 63 characters, can only contain lowercase letters, numeric characters, underscores and dashes. International characters are allowed. Label values are optional. Label keys must start with a letter and each label in the list must have a different key.", + "type": "object" + }, + "load": { + "$ref": "JobConfigurationLoad", + "description": "[Pick one] Configures a load job." + }, + "query": { + "$ref": "JobConfigurationQuery", + "description": "[Pick one] Configures a query job." + } + }, + "type": "object" + }, + "JobConfigurationExtract": { + "id": "JobConfigurationExtract", + "properties": { + "compression": { + "description": "[Optional] The compression type to use for exported files. Possible values include GZIP, DEFLATE, SNAPPY, and NONE. The default value is NONE. DEFLATE and SNAPPY are only supported for Avro.", + "type": "string" + }, + "destinationFormat": { + "description": "[Optional] The exported file format. Possible values include CSV, NEWLINE_DELIMITED_JSON and AVRO. The default value is CSV. Tables with nested or repeated fields cannot be exported as CSV.", + "type": "string" + }, + "destinationUri": { + "description": "[Pick one] DEPRECATED: Use destinationUris instead, passing only one URI as necessary. The fully-qualified Google Cloud Storage URI where the extracted table should be written.", + "type": "string" + }, + "destinationUris": { + "description": "[Pick one] A list of fully-qualified Google Cloud Storage URIs where the extracted table should be written.", + "items": { + "type": "string" + }, + "type": "array" + }, + "fieldDelimiter": { + "description": "[Optional] Delimiter to use between fields in the exported data. Default is ','", + "type": "string" + }, + "printHeader": { + "default": "true", + "description": "[Optional] Whether to print out a header row in the results. Default is true.", + "type": "boolean" + }, + "sourceTable": { + "$ref": "TableReference", + "description": "[Required] A reference to the table being exported." + } + }, + "type": "object" + }, + "JobConfigurationLoad": { + "id": "JobConfigurationLoad", + "properties": { + "allowJaggedRows": { + "description": "[Optional] Accept rows that are missing trailing optional columns. The missing values are treated as nulls. If false, records with missing trailing columns are treated as bad records, and if there are too many bad records, an invalid error is returned in the job result. The default value is false. Only applicable to CSV, ignored for other formats.", + "type": "boolean" + }, + "allowQuotedNewlines": { + "description": "Indicates if BigQuery should allow quoted data sections that contain newline characters in a CSV file. The default value is false.", + "type": "boolean" + }, + "autodetect": { + "description": "Indicates if we should automatically infer the options and schema for CSV and JSON sources.", + "type": "boolean" + }, + "createDisposition": { + "description": "[Optional] Specifies whether the job is allowed to create new tables. The following values are supported: CREATE_IF_NEEDED: If the table does not exist, BigQuery creates the table. CREATE_NEVER: The table must already exist. If it does not, a 'notFound' error is returned in the job result. The default value is CREATE_IF_NEEDED. Creation, truncation and append actions occur as one atomic update upon job completion.", + "type": "string" + }, + "destinationEncryptionConfiguration": { + "$ref": "EncryptionConfiguration", + "description": "Custom encryption configuration (e.g., Cloud KMS keys)." + }, + "destinationTable": { + "$ref": "TableReference", + "description": "[Required] The destination table to load the data into." + }, + "destinationTableProperties": { + "$ref": "DestinationTableProperties", + "description": "[Experimental] [Optional] Properties with which to create the destination table if it is new." + }, + "encoding": { + "description": "[Optional] The character encoding of the data. The supported values are UTF-8 or ISO-8859-1. The default value is UTF-8. BigQuery decodes the data after the raw, binary data has been split using the values of the quote and fieldDelimiter properties.", + "type": "string" + }, + "fieldDelimiter": { + "description": "[Optional] The separator for fields in a CSV file. The separator can be any ISO-8859-1 single-byte character. To use a character in the range 128-255, you must encode the character as UTF8. BigQuery converts the string to ISO-8859-1 encoding, and then uses the first byte of the encoded string to split the data in its raw, binary state. BigQuery also supports the escape sequence \"\\t\" to specify a tab separator. The default value is a comma (',').", + "type": "string" + }, + "ignoreUnknownValues": { + "description": "[Optional] Indicates if BigQuery should allow extra values that are not represented in the table schema. If true, the extra values are ignored. If false, records with extra columns are treated as bad records, and if there are too many bad records, an invalid error is returned in the job result. The default value is false. The sourceFormat property determines what BigQuery treats as an extra value: CSV: Trailing columns JSON: Named values that don't match any column names", + "type": "boolean" + }, + "maxBadRecords": { + "description": "[Optional] The maximum number of bad records that BigQuery can ignore when running the job. If the number of bad records exceeds this value, an invalid error is returned in the job result. The default value is 0, which requires that all records are valid.", + "format": "int32", + "type": "integer" + }, + "nullMarker": { + "description": "[Optional] Specifies a string that represents a null value in a CSV file. For example, if you specify \"\\N\", BigQuery interprets \"\\N\" as a null value when loading a CSV file. The default value is the empty string. If you set this property to a custom value, BigQuery throws an error if an empty string is present for all data types except for STRING and BYTE. For STRING and BYTE columns, BigQuery interprets the empty string as an empty value.", + "type": "string" + }, + "projectionFields": { + "description": "If sourceFormat is set to \"DATASTORE_BACKUP\", indicates which entity properties to load into BigQuery from a Cloud Datastore backup. Property names are case sensitive and must be top-level properties. If no properties are specified, BigQuery loads all properties. If any named property isn't found in the Cloud Datastore backup, an invalid error is returned in the job result.", + "items": { + "type": "string" + }, + "type": "array" + }, + "quote": { + "default": "\"", + "description": "[Optional] The value that is used to quote data sections in a CSV file. BigQuery converts the string to ISO-8859-1 encoding, and then uses the first byte of the encoded string to split the data in its raw, binary state. The default value is a double-quote ('\"'). If your data does not contain quoted sections, set the property value to an empty string. If your data contains quoted newline characters, you must also set the allowQuotedNewlines property to true.", + "pattern": ".?", + "type": "string" + }, + "schema": { + "$ref": "TableSchema", + "description": "[Optional] The schema for the destination table. The schema can be omitted if the destination table already exists, or if you're loading data from Google Cloud Datastore." + }, + "schemaInline": { + "description": "[Deprecated] The inline schema. For CSV schemas, specify as \"Field1:Type1[,Field2:Type2]*\". For example, \"foo:STRING, bar:INTEGER, baz:FLOAT\".", + "type": "string" + }, + "schemaInlineFormat": { + "description": "[Deprecated] The format of the schemaInline property.", + "type": "string" + }, + "schemaUpdateOptions": { + "description": "Allows the schema of the destination table to be updated as a side effect of the load job if a schema is autodetected or supplied in the job configuration. Schema update options are supported in two cases: when writeDisposition is WRITE_APPEND; when writeDisposition is WRITE_TRUNCATE and the destination table is a partition of a table, specified by partition decorators. For normal tables, WRITE_TRUNCATE will always overwrite the schema. One or more of the following values are specified: ALLOW_FIELD_ADDITION: allow adding a nullable field to the schema. ALLOW_FIELD_RELAXATION: allow relaxing a required field in the original schema to nullable.", + "items": { + "type": "string" + }, + "type": "array" + }, + "skipLeadingRows": { + "description": "[Optional] The number of rows at the top of a CSV file that BigQuery will skip when loading the data. The default value is 0. This property is useful if you have header rows in the file that should be skipped.", + "format": "int32", + "type": "integer" + }, + "sourceFormat": { + "description": "[Optional] The format of the data files. For CSV files, specify \"CSV\". For datastore backups, specify \"DATASTORE_BACKUP\". For newline-delimited JSON, specify \"NEWLINE_DELIMITED_JSON\". For Avro, specify \"AVRO\". For parquet, specify \"PARQUET\". For orc, specify \"ORC\". The default value is CSV.", + "type": "string" + }, + "sourceUris": { + "description": "[Required] The fully-qualified URIs that point to your data in Google Cloud. For Google Cloud Storage URIs: Each URI can contain one '*' wildcard character and it must come after the 'bucket' name. Size limits related to load jobs apply to external data sources. For Google Cloud Bigtable URIs: Exactly one URI can be specified and it has be a fully specified and valid HTTPS URL for a Google Cloud Bigtable table. For Google Cloud Datastore backups: Exactly one URI can be specified. Also, the '*' wildcard character is not allowed.", + "items": { + "type": "string" + }, + "type": "array" + }, + "timePartitioning": { + "$ref": "TimePartitioning", + "description": "If specified, configures time-based partitioning for the destination table." + }, + "writeDisposition": { + "description": "[Optional] Specifies the action that occurs if the destination table already exists. The following values are supported: WRITE_TRUNCATE: If the table already exists, BigQuery overwrites the table data. WRITE_APPEND: If the table already exists, BigQuery appends the data to the table. WRITE_EMPTY: If the table already exists and contains data, a 'duplicate' error is returned in the job result. The default value is WRITE_APPEND. Each action is atomic and only occurs if BigQuery is able to complete the job successfully. Creation, truncation and append actions occur as one atomic update upon job completion.", + "type": "string" + } + }, + "type": "object" + }, + "JobConfigurationQuery": { + "id": "JobConfigurationQuery", + "properties": { + "allowLargeResults": { + "default": "false", + "description": "[Optional] If true and query uses legacy SQL dialect, allows the query to produce arbitrarily large result tables at a slight cost in performance. Requires destinationTable to be set. For standard SQL queries, this flag is ignored and large results are always allowed. However, you must still set destinationTable when result size exceeds the allowed maximum response size.", + "type": "boolean" + }, + "createDisposition": { + "description": "[Optional] Specifies whether the job is allowed to create new tables. The following values are supported: CREATE_IF_NEEDED: If the table does not exist, BigQuery creates the table. CREATE_NEVER: The table must already exist. If it does not, a 'notFound' error is returned in the job result. The default value is CREATE_IF_NEEDED. Creation, truncation and append actions occur as one atomic update upon job completion.", + "type": "string" + }, + "defaultDataset": { + "$ref": "DatasetReference", + "description": "[Optional] Specifies the default dataset to use for unqualified table names in the query." + }, + "destinationEncryptionConfiguration": { + "$ref": "EncryptionConfiguration", + "description": "Custom encryption configuration (e.g., Cloud KMS keys)." + }, + "destinationTable": { + "$ref": "TableReference", + "description": "[Optional] Describes the table where the query results should be stored. If not present, a new table will be created to store the results. This property must be set for large results that exceed the maximum response size." + }, + "flattenResults": { + "default": "true", + "description": "[Optional] If true and query uses legacy SQL dialect, flattens all nested and repeated fields in the query results. allowLargeResults must be true if this is set to false. For standard SQL queries, this flag is ignored and results are never flattened.", + "type": "boolean" + }, + "maximumBillingTier": { + "default": "1", + "description": "[Optional] Limits the billing tier for this job. Queries that have resource usage beyond this tier will fail (without incurring a charge). If unspecified, this will be set to your project default.", + "format": "int32", + "type": "integer" + }, + "maximumBytesBilled": { + "description": "[Optional] Limits the bytes billed for this job. Queries that will have bytes billed beyond this limit will fail (without incurring a charge). If unspecified, this will be set to your project default.", + "format": "int64", + "type": "string" + }, + "parameterMode": { + "description": "Standard SQL only. Set to POSITIONAL to use positional (?) query parameters or to NAMED to use named (@myparam) query parameters in this query.", + "type": "string" + }, + "preserveNulls": { + "description": "[Deprecated] This property is deprecated.", + "type": "boolean" + }, + "priority": { + "description": "[Optional] Specifies a priority for the query. Possible values include INTERACTIVE and BATCH. The default value is INTERACTIVE.", + "type": "string" + }, + "query": { + "description": "[Required] SQL query text to execute. The useLegacySql field can be used to indicate whether the query uses legacy SQL or standard SQL.", + "type": "string" + }, + "queryParameters": { + "description": "Query parameters for standard SQL queries.", + "items": { + "$ref": "QueryParameter" + }, + "type": "array" + }, + "schemaUpdateOptions": { + "description": "Allows the schema of the destination table to be updated as a side effect of the query job. Schema update options are supported in two cases: when writeDisposition is WRITE_APPEND; when writeDisposition is WRITE_TRUNCATE and the destination table is a partition of a table, specified by partition decorators. For normal tables, WRITE_TRUNCATE will always overwrite the schema. One or more of the following values are specified: ALLOW_FIELD_ADDITION: allow adding a nullable field to the schema. ALLOW_FIELD_RELAXATION: allow relaxing a required field in the original schema to nullable.", + "items": { + "type": "string" + }, + "type": "array" + }, + "tableDefinitions": { + "additionalProperties": { + "$ref": "ExternalDataConfiguration" + }, + "description": "[Optional] If querying an external data source outside of BigQuery, describes the data format, location and other properties of the data source. By defining these properties, the data source can then be queried as if it were a standard BigQuery table.", + "type": "object" + }, + "timePartitioning": { + "$ref": "TimePartitioning", + "description": "If specified, configures time-based partitioning for the destination table." + }, + "useLegacySql": { + "description": "Specifies whether to use BigQuery's legacy SQL dialect for this query. The default value is true. If set to false, the query will use BigQuery's standard SQL: https://cloud.google.com/bigquery/sql-reference/ When useLegacySql is set to false, the value of flattenResults is ignored; query will be run as if flattenResults is false.", + "type": "boolean" + }, + "useQueryCache": { + "default": "true", + "description": "[Optional] Whether to look for the result in the query cache. The query cache is a best-effort cache that will be flushed whenever tables in the query are modified. Moreover, the query cache is only available when a query does not have a destination table specified. The default value is true.", + "type": "boolean" + }, + "userDefinedFunctionResources": { + "description": "Describes user-defined function resources used in the query.", + "items": { + "$ref": "UserDefinedFunctionResource" + }, + "type": "array" + }, + "writeDisposition": { + "description": "[Optional] Specifies the action that occurs if the destination table already exists. The following values are supported: WRITE_TRUNCATE: If the table already exists, BigQuery overwrites the table data and uses the schema from the query result. WRITE_APPEND: If the table already exists, BigQuery appends the data to the table. WRITE_EMPTY: If the table already exists and contains data, a 'duplicate' error is returned in the job result. The default value is WRITE_EMPTY. Each action is atomic and only occurs if BigQuery is able to complete the job successfully. Creation, truncation and append actions occur as one atomic update upon job completion.", + "type": "string" + } + }, + "type": "object" + }, + "JobConfigurationTableCopy": { + "id": "JobConfigurationTableCopy", + "properties": { + "createDisposition": { + "description": "[Optional] Specifies whether the job is allowed to create new tables. The following values are supported: CREATE_IF_NEEDED: If the table does not exist, BigQuery creates the table. CREATE_NEVER: The table must already exist. If it does not, a 'notFound' error is returned in the job result. The default value is CREATE_IF_NEEDED. Creation, truncation and append actions occur as one atomic update upon job completion.", + "type": "string" + }, + "destinationEncryptionConfiguration": { + "$ref": "EncryptionConfiguration", + "description": "Custom encryption configuration (e.g., Cloud KMS keys)." + }, + "destinationTable": { + "$ref": "TableReference", + "description": "[Required] The destination table" + }, + "sourceTable": { + "$ref": "TableReference", + "description": "[Pick one] Source table to copy." + }, + "sourceTables": { + "description": "[Pick one] Source tables to copy.", + "items": { + "$ref": "TableReference" + }, + "type": "array" + }, + "writeDisposition": { + "description": "[Optional] Specifies the action that occurs if the destination table already exists. The following values are supported: WRITE_TRUNCATE: If the table already exists, BigQuery overwrites the table data. WRITE_APPEND: If the table already exists, BigQuery appends the data to the table. WRITE_EMPTY: If the table already exists and contains data, a 'duplicate' error is returned in the job result. The default value is WRITE_EMPTY. Each action is atomic and only occurs if BigQuery is able to complete the job successfully. Creation, truncation and append actions occur as one atomic update upon job completion.", + "type": "string" + } + }, + "type": "object" + }, + "JobList": { + "id": "JobList", + "properties": { + "etag": { + "description": "A hash of this page of results.", + "type": "string" + }, + "jobs": { + "description": "List of jobs that were requested.", + "items": { + "properties": { + "configuration": { + "$ref": "JobConfiguration", + "description": "[Full-projection-only] Specifies the job configuration." + }, + "errorResult": { + "$ref": "ErrorProto", + "description": "A result object that will be present only if the job has failed." + }, + "id": { + "description": "Unique opaque ID of the job.", + "type": "string" + }, + "jobReference": { + "$ref": "JobReference", + "description": "Job reference uniquely identifying the job." + }, + "kind": { + "default": "bigquery#job", + "description": "The resource type.", + "type": "string" + }, + "state": { + "description": "Running state of the job. When the state is DONE, errorResult can be checked to determine whether the job succeeded or failed.", + "type": "string" + }, + "statistics": { + "$ref": "JobStatistics", + "description": "[Output-only] Information about the job, including starting time and ending time of the job." + }, + "status": { + "$ref": "JobStatus", + "description": "[Full-projection-only] Describes the state of the job." + }, + "user_email": { + "description": "[Full-projection-only] Email address of the user who ran the job.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "kind": { + "default": "bigquery#jobList", + "description": "The resource type of the response.", + "type": "string" + }, + "nextPageToken": { + "description": "A token to request the next page of results.", + "type": "string" + } + }, + "type": "object" + }, + "JobReference": { + "id": "JobReference", + "properties": { + "jobId": { + "annotations": { + "required": [ + "bigquery.jobs.getQueryResults" + ] + }, + "description": "[Required] The ID of the job. The ID must contain only letters (a-z, A-Z), numbers (0-9), underscores (_), or dashes (-). The maximum length is 1,024 characters.", + "type": "string" + }, + "location": { + "description": "[Experimental] The geographic location of the job. Required except for US and EU.", + "type": "string" + }, + "projectId": { + "annotations": { + "required": [ + "bigquery.jobs.getQueryResults" + ] + }, + "description": "[Required] The ID of the project containing this job.", + "type": "string" + } + }, + "type": "object" + }, + "JobStatistics": { + "id": "JobStatistics", + "properties": { + "completionRatio": { + "description": "[Experimental] [Output-only] Job progress (0.0 -\u003e 1.0) for LOAD and EXTRACT jobs.", + "format": "double", + "type": "number" + }, + "creationTime": { + "description": "[Output-only] Creation time of this job, in milliseconds since the epoch. This field will be present on all jobs.", + "format": "int64", + "type": "string" + }, + "endTime": { + "description": "[Output-only] End time of this job, in milliseconds since the epoch. This field will be present whenever a job is in the DONE state.", + "format": "int64", + "type": "string" + }, + "extract": { + "$ref": "JobStatistics4", + "description": "[Output-only] Statistics for an extract job." + }, + "load": { + "$ref": "JobStatistics3", + "description": "[Output-only] Statistics for a load job." + }, + "query": { + "$ref": "JobStatistics2", + "description": "[Output-only] Statistics for a query job." + }, + "startTime": { + "description": "[Output-only] Start time of this job, in milliseconds since the epoch. This field will be present when the job transitions from the PENDING state to either RUNNING or DONE.", + "format": "int64", + "type": "string" + }, + "totalBytesProcessed": { + "description": "[Output-only] [Deprecated] Use the bytes processed in the query statistics instead.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "JobStatistics2": { + "id": "JobStatistics2", + "properties": { + "billingTier": { + "description": "[Output-only] Billing tier for the job.", + "format": "int32", + "type": "integer" + }, + "cacheHit": { + "description": "[Output-only] Whether the query result was fetched from the query cache.", + "type": "boolean" + }, + "ddlOperationPerformed": { + "description": "[Output-only, Experimental] The DDL operation performed, possibly dependent on the pre-existence of the DDL target. Possible values (new values might be added in the future): \"CREATE\": The query created the DDL target. \"SKIP\": No-op. Example cases: the query is CREATE TABLE IF NOT EXISTS while the table already exists, or the query is DROP TABLE IF EXISTS while the table does not exist. \"REPLACE\": The query replaced the DDL target. Example case: the query is CREATE OR REPLACE TABLE, and the table already exists. \"DROP\": The query deleted the DDL target.", + "type": "string" + }, + "ddlTargetTable": { + "$ref": "TableReference", + "description": "[Output-only, Experimental] The DDL target table. Present only for CREATE/DROP TABLE/VIEW queries." + }, + "estimatedBytesProcessed": { + "description": "[Output-only] The original estimate of bytes processed for the job.", + "format": "int64", + "type": "string" + }, + "numDmlAffectedRows": { + "description": "[Output-only] The number of rows affected by a DML statement. Present only for DML statements INSERT, UPDATE or DELETE.", + "format": "int64", + "type": "string" + }, + "queryPlan": { + "description": "[Output-only] Describes execution plan for the query.", + "items": { + "$ref": "ExplainQueryStage" + }, + "type": "array" + }, + "referencedTables": { + "description": "[Output-only] Referenced tables for the job. Queries that reference more than 50 tables will not have a complete list.", + "items": { + "$ref": "TableReference" + }, + "type": "array" + }, + "schema": { + "$ref": "TableSchema", + "description": "[Output-only] The schema of the results. Present only for successful dry run of non-legacy SQL queries." + }, + "statementType": { + "description": "[Output-only, Experimental] The type of query statement, if valid. Possible values (new values might be added in the future): \"SELECT\": SELECT query. \"INSERT\": INSERT query; see https://cloud.google.com/bigquery/docs/reference/standard-sql/data-manipulation-language \"UPDATE\": UPDATE query; see https://cloud.google.com/bigquery/docs/reference/standard-sql/data-manipulation-language \"DELETE\": DELETE query; see https://cloud.google.com/bigquery/docs/reference/standard-sql/data-manipulation-language \"CREATE_TABLE\": CREATE [OR REPLACE] TABLE without AS SELECT. \"CREATE_TABLE_AS_SELECT\": CREATE [OR REPLACE] TABLE ... AS SELECT ... \"DROP_TABLE\": DROP TABLE query. \"CREATE_VIEW\": CREATE [OR REPLACE] VIEW ... AS SELECT ... \"DROP_VIEW\": DROP VIEW query.", + "type": "string" + }, + "timeline": { + "description": "[Output-only] [Experimental] Describes a timeline of job execution.", + "items": { + "$ref": "QueryTimelineSample" + }, + "type": "array" + }, + "totalBytesBilled": { + "description": "[Output-only] Total bytes billed for the job.", + "format": "int64", + "type": "string" + }, + "totalBytesProcessed": { + "description": "[Output-only] Total bytes processed for the job.", + "format": "int64", + "type": "string" + }, + "totalPartitionsProcessed": { + "description": "[Output-only] Total number of partitions processed from all partitioned tables referenced in the job.", + "format": "int64", + "type": "string" + }, + "totalSlotMs": { + "description": "[Output-only] Slot-milliseconds for the job.", + "format": "int64", + "type": "string" + }, + "undeclaredQueryParameters": { + "description": "[Output-only, Experimental] Standard SQL only: list of undeclared query parameters detected during a dry run validation.", + "items": { + "$ref": "QueryParameter" + }, + "type": "array" + } + }, + "type": "object" + }, + "JobStatistics3": { + "id": "JobStatistics3", + "properties": { + "badRecords": { + "description": "[Output-only] The number of bad records encountered. Note that if the job has failed because of more bad records encountered than the maximum allowed in the load job configuration, then this number can be less than the total number of bad records present in the input data.", + "format": "int64", + "type": "string" + }, + "inputFileBytes": { + "description": "[Output-only] Number of bytes of source data in a load job.", + "format": "int64", + "type": "string" + }, + "inputFiles": { + "description": "[Output-only] Number of source files in a load job.", + "format": "int64", + "type": "string" + }, + "outputBytes": { + "description": "[Output-only] Size of the loaded data in bytes. Note that while a load job is in the running state, this value may change.", + "format": "int64", + "type": "string" + }, + "outputRows": { + "description": "[Output-only] Number of rows imported in a load job. Note that while an import job is in the running state, this value may change.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "JobStatistics4": { + "id": "JobStatistics4", + "properties": { + "destinationUriFileCounts": { + "description": "[Output-only] Number of files per destination URI or URI pattern specified in the extract configuration. These values will be in the same order as the URIs specified in the 'destinationUris' field.", + "items": { + "format": "int64", + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "JobStatus": { + "id": "JobStatus", + "properties": { + "errorResult": { + "$ref": "ErrorProto", + "description": "[Output-only] Final error result of the job. If present, indicates that the job has completed and was unsuccessful." + }, + "errors": { + "description": "[Output-only] The first errors encountered during the running of the job. The final message includes the number of errors that caused the process to stop. Errors here do not necessarily mean that the job has completed or was unsuccessful.", + "items": { + "$ref": "ErrorProto" + }, + "type": "array" + }, + "state": { + "description": "[Output-only] Running state of the job.", + "type": "string" + } + }, + "type": "object" + }, + "JsonObject": { + "additionalProperties": { + "$ref": "JsonValue" + }, + "description": "Represents a single JSON object.", + "id": "JsonObject", + "type": "object" + }, + "JsonValue": { + "id": "JsonValue", + "type": "any" + }, + "ProjectList": { + "id": "ProjectList", + "properties": { + "etag": { + "description": "A hash of the page of results", + "type": "string" + }, + "kind": { + "default": "bigquery#projectList", + "description": "The type of list.", + "type": "string" + }, + "nextPageToken": { + "description": "A token to request the next page of results.", + "type": "string" + }, + "projects": { + "description": "Projects to which you have at least READ access.", + "items": { + "properties": { + "friendlyName": { + "description": "A descriptive name for this project.", + "type": "string" + }, + "id": { + "description": "An opaque ID of this project.", + "type": "string" + }, + "kind": { + "default": "bigquery#project", + "description": "The resource type.", + "type": "string" + }, + "numericId": { + "description": "The numeric ID of this project.", + "format": "uint64", + "type": "string" + }, + "projectReference": { + "$ref": "ProjectReference", + "description": "A unique reference to this project." + } + }, + "type": "object" + }, + "type": "array" + }, + "totalItems": { + "description": "The total number of projects in the list.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "ProjectReference": { + "id": "ProjectReference", + "properties": { + "projectId": { + "description": "[Required] ID of the project. Can be either the numeric ID or the assigned ID of the project.", + "type": "string" + } + }, + "type": "object" + }, + "QueryParameter": { + "id": "QueryParameter", + "properties": { + "name": { + "description": "[Optional] If unset, this is a positional parameter. Otherwise, should be unique within a query.", + "type": "string" + }, + "parameterType": { + "$ref": "QueryParameterType", + "description": "[Required] The type of this parameter." + }, + "parameterValue": { + "$ref": "QueryParameterValue", + "description": "[Required] The value of this parameter." + } + }, + "type": "object" + }, + "QueryParameterType": { + "id": "QueryParameterType", + "properties": { + "arrayType": { + "$ref": "QueryParameterType", + "description": "[Optional] The type of the array's elements, if this is an array." + }, + "structTypes": { + "description": "[Optional] The types of the fields of this struct, in order, if this is a struct.", + "items": { + "properties": { + "description": { + "description": "[Optional] Human-oriented description of the field.", + "type": "string" + }, + "name": { + "description": "[Optional] The name of this field.", + "type": "string" + }, + "type": { + "$ref": "QueryParameterType", + "description": "[Required] The type of this field." + } + }, + "type": "object" + }, + "type": "array" + }, + "type": { + "description": "[Required] The top level type of this field.", + "type": "string" + } + }, + "type": "object" + }, + "QueryParameterValue": { + "id": "QueryParameterValue", + "properties": { + "arrayValues": { + "description": "[Optional] The array values, if this is an array type.", + "items": { + "$ref": "QueryParameterValue" + }, + "type": "array" + }, + "structValues": { + "additionalProperties": { + "$ref": "QueryParameterValue" + }, + "description": "[Optional] The struct field values, in order of the struct type's declaration.", + "type": "object" + }, + "value": { + "description": "[Optional] The value of this value, if a simple scalar type.", + "type": "string" + } + }, + "type": "object" + }, + "QueryRequest": { + "id": "QueryRequest", + "properties": { + "defaultDataset": { + "$ref": "DatasetReference", + "description": "[Optional] Specifies the default datasetId and projectId to assume for any unqualified table names in the query. If not set, all table names in the query string must be qualified in the format 'datasetId.tableId'." + }, + "dryRun": { + "description": "[Optional] If set to true, BigQuery doesn't run the job. Instead, if the query is valid, BigQuery returns statistics about the job such as how many bytes would be processed. If the query is invalid, an error returns. The default value is false.", + "type": "boolean" + }, + "kind": { + "default": "bigquery#queryRequest", + "description": "The resource type of the request.", + "type": "string" + }, + "location": { + "description": "[Experimental] The geographic location where the job should run. Required except for US and EU.", + "type": "string" + }, + "maxResults": { + "description": "[Optional] The maximum number of rows of data to return per page of results. Setting this flag to a small value such as 1000 and then paging through results might improve reliability when the query result set is large. In addition to this limit, responses are also limited to 10 MB. By default, there is no maximum row count, and only the byte limit applies.", + "format": "uint32", + "type": "integer" + }, + "parameterMode": { + "description": "Standard SQL only. Set to POSITIONAL to use positional (?) query parameters or to NAMED to use named (@myparam) query parameters in this query.", + "type": "string" + }, + "preserveNulls": { + "description": "[Deprecated] This property is deprecated.", + "type": "boolean" + }, + "query": { + "annotations": { + "required": [ + "bigquery.jobs.query" + ] + }, + "description": "[Required] A query string, following the BigQuery query syntax, of the query to execute. Example: \"SELECT count(f1) FROM [myProjectId:myDatasetId.myTableId]\".", + "type": "string" + }, + "queryParameters": { + "description": "Query parameters for Standard SQL queries.", + "items": { + "$ref": "QueryParameter" + }, + "type": "array" + }, + "timeoutMs": { + "description": "[Optional] How long to wait for the query to complete, in milliseconds, before the request times out and returns. Note that this is only a timeout for the request, not the query. If the query takes longer to run than the timeout value, the call returns without any results and with the 'jobComplete' flag set to false. You can call GetQueryResults() to wait for the query to complete and read the results. The default value is 10000 milliseconds (10 seconds).", + "format": "uint32", + "type": "integer" + }, + "useLegacySql": { + "default": "true", + "description": "Specifies whether to use BigQuery's legacy SQL dialect for this query. The default value is true. If set to false, the query will use BigQuery's standard SQL: https://cloud.google.com/bigquery/sql-reference/ When useLegacySql is set to false, the value of flattenResults is ignored; query will be run as if flattenResults is false.", + "type": "boolean" + }, + "useQueryCache": { + "default": "true", + "description": "[Optional] Whether to look for the result in the query cache. The query cache is a best-effort cache that will be flushed whenever tables in the query are modified. The default value is true.", + "type": "boolean" + } + }, + "type": "object" + }, + "QueryResponse": { + "id": "QueryResponse", + "properties": { + "cacheHit": { + "description": "Whether the query result was fetched from the query cache.", + "type": "boolean" + }, + "errors": { + "description": "[Output-only] The first errors or warnings encountered during the running of the job. The final message includes the number of errors that caused the process to stop. Errors here do not necessarily mean that the job has completed or was unsuccessful.", + "items": { + "$ref": "ErrorProto" + }, + "type": "array" + }, + "jobComplete": { + "description": "Whether the query has completed or not. If rows or totalRows are present, this will always be true. If this is false, totalRows will not be available.", + "type": "boolean" + }, + "jobReference": { + "$ref": "JobReference", + "description": "Reference to the Job that was created to run the query. This field will be present even if the original request timed out, in which case GetQueryResults can be used to read the results once the query has completed. Since this API only returns the first page of results, subsequent pages can be fetched via the same mechanism (GetQueryResults)." + }, + "kind": { + "default": "bigquery#queryResponse", + "description": "The resource type.", + "type": "string" + }, + "numDmlAffectedRows": { + "description": "[Output-only] The number of rows affected by a DML statement. Present only for DML statements INSERT, UPDATE or DELETE.", + "format": "int64", + "type": "string" + }, + "pageToken": { + "description": "A token used for paging results.", + "type": "string" + }, + "rows": { + "description": "An object with as many results as can be contained within the maximum permitted reply size. To get any additional rows, you can call GetQueryResults and specify the jobReference returned above.", + "items": { + "$ref": "TableRow" + }, + "type": "array" + }, + "schema": { + "$ref": "TableSchema", + "description": "The schema of the results. Present only when the query completes successfully." + }, + "totalBytesProcessed": { + "description": "The total number of bytes processed for this query. If this query was a dry run, this is the number of bytes that would be processed if the query were run.", + "format": "int64", + "type": "string" + }, + "totalRows": { + "description": "The total number of rows in the complete query result set, which can be more than the number of rows in this single page of results.", + "format": "uint64", + "type": "string" + } + }, + "type": "object" + }, + "QueryTimelineSample": { + "id": "QueryTimelineSample", + "properties": { + "activeInputs": { + "description": "Total number of active workers. This does not correspond directly to slot usage. This is the largest value observed since the last sample.", + "format": "int64", + "type": "string" + }, + "completedInputs": { + "description": "Total parallel units of work completed by this query.", + "format": "int64", + "type": "string" + }, + "elapsedMs": { + "description": "Milliseconds elapsed since the start of query execution.", + "format": "int64", + "type": "string" + }, + "pendingInputs": { + "description": "Total parallel units of work remaining for the active stages.", + "format": "int64", + "type": "string" + }, + "totalSlotMs": { + "description": "Cumulative slot-ms consumed by the query.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "Streamingbuffer": { + "id": "Streamingbuffer", + "properties": { + "estimatedBytes": { + "description": "[Output-only] A lower-bound estimate of the number of bytes currently in the streaming buffer.", + "format": "uint64", + "type": "string" + }, + "estimatedRows": { + "description": "[Output-only] A lower-bound estimate of the number of rows currently in the streaming buffer.", + "format": "uint64", + "type": "string" + }, + "oldestEntryTime": { + "description": "[Output-only] Contains the timestamp of the oldest entry in the streaming buffer, in milliseconds since the epoch, if the streaming buffer is available.", + "format": "uint64", + "type": "string" + } + }, + "type": "object" + }, + "Table": { + "id": "Table", + "properties": { + "creationTime": { + "description": "[Output-only] The time when this table was created, in milliseconds since the epoch.", + "format": "int64", + "type": "string" + }, + "description": { + "description": "[Optional] A user-friendly description of this table.", + "type": "string" + }, + "encryptionConfiguration": { + "$ref": "EncryptionConfiguration", + "description": "Custom encryption configuration (e.g., Cloud KMS keys)." + }, + "etag": { + "description": "[Output-only] A hash of this resource.", + "type": "string" + }, + "expirationTime": { + "description": "[Optional] The time when this table expires, in milliseconds since the epoch. If not present, the table will persist indefinitely. Expired tables will be deleted and their storage reclaimed. The defaultTableExpirationMs property of the encapsulating dataset can be used to set a default expirationTime on newly created tables.", + "format": "int64", + "type": "string" + }, + "externalDataConfiguration": { + "$ref": "ExternalDataConfiguration", + "description": "[Optional] Describes the data format, location, and other properties of a table stored outside of BigQuery. By defining these properties, the data source can then be queried as if it were a standard BigQuery table." + }, + "friendlyName": { + "description": "[Optional] A descriptive name for this table.", + "type": "string" + }, + "id": { + "description": "[Output-only] An opaque ID uniquely identifying the table.", + "type": "string" + }, + "kind": { + "default": "bigquery#table", + "description": "[Output-only] The type of the resource.", + "type": "string" + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "The labels associated with this table. You can use these to organize and group your tables. Label keys and values can be no longer than 63 characters, can only contain lowercase letters, numeric characters, underscores and dashes. International characters are allowed. Label values are optional. Label keys must start with a letter and each label in the list must have a different key.", + "type": "object" + }, + "lastModifiedTime": { + "description": "[Output-only] The time when this table was last modified, in milliseconds since the epoch.", + "format": "uint64", + "type": "string" + }, + "location": { + "description": "[Output-only] The geographic location where the table resides. This value is inherited from the dataset.", + "type": "string" + }, + "numBytes": { + "description": "[Output-only] The size of this table in bytes, excluding any data in the streaming buffer.", + "format": "int64", + "type": "string" + }, + "numLongTermBytes": { + "description": "[Output-only] The number of bytes in the table that are considered \"long-term storage\".", + "format": "int64", + "type": "string" + }, + "numRows": { + "description": "[Output-only] The number of rows of data in this table, excluding any data in the streaming buffer.", + "format": "uint64", + "type": "string" + }, + "schema": { + "$ref": "TableSchema", + "description": "[Optional] Describes the schema of this table." + }, + "selfLink": { + "description": "[Output-only] A URL that can be used to access this resource again.", + "type": "string" + }, + "streamingBuffer": { + "$ref": "Streamingbuffer", + "description": "[Output-only] Contains information regarding this table's streaming buffer, if one is present. This field will be absent if the table is not being streamed to or if there is no data in the streaming buffer." + }, + "tableReference": { + "$ref": "TableReference", + "description": "[Required] Reference describing the ID of this table." + }, + "timePartitioning": { + "$ref": "TimePartitioning", + "description": "If specified, configures time-based partitioning for this table." + }, + "type": { + "description": "[Output-only] Describes the table type. The following values are supported: TABLE: A normal BigQuery table. VIEW: A virtual table defined by a SQL query. EXTERNAL: A table that references data stored in an external storage system, such as Google Cloud Storage. The default value is TABLE.", + "type": "string" + }, + "view": { + "$ref": "ViewDefinition", + "description": "[Optional] The view definition." + } + }, + "type": "object" + }, + "TableCell": { + "id": "TableCell", + "properties": { + "v": { + "type": "any" + } + }, + "type": "object" + }, + "TableDataInsertAllRequest": { + "id": "TableDataInsertAllRequest", + "properties": { + "ignoreUnknownValues": { + "description": "[Optional] Accept rows that contain values that do not match the schema. The unknown values are ignored. Default is false, which treats unknown values as errors.", + "type": "boolean" + }, + "kind": { + "default": "bigquery#tableDataInsertAllRequest", + "description": "The resource type of the response.", + "type": "string" + }, + "rows": { + "description": "The rows to insert.", + "items": { + "properties": { + "insertId": { + "description": "[Optional] A unique ID for each row. BigQuery uses this property to detect duplicate insertion requests on a best-effort basis.", + "type": "string" + }, + "json": { + "$ref": "JsonObject", + "description": "[Required] A JSON object that contains a row of data. The object's properties and values must match the destination table's schema." + } + }, + "type": "object" + }, + "type": "array" + }, + "skipInvalidRows": { + "description": "[Optional] Insert all valid rows of a request, even if invalid rows exist. The default value is false, which causes the entire request to fail if any invalid rows exist.", + "type": "boolean" + }, + "templateSuffix": { + "description": "[Experimental] If specified, treats the destination table as a base template, and inserts the rows into an instance table named \"{destination}{templateSuffix}\". BigQuery will manage creation of the instance table, using the schema of the base template table. See https://cloud.google.com/bigquery/streaming-data-into-bigquery#template-tables for considerations when working with templates tables.", + "type": "string" + } + }, + "type": "object" + }, + "TableDataInsertAllResponse": { + "id": "TableDataInsertAllResponse", + "properties": { + "insertErrors": { + "description": "An array of errors for rows that were not inserted.", + "items": { + "properties": { + "errors": { + "description": "Error information for the row indicated by the index property.", + "items": { + "$ref": "ErrorProto" + }, + "type": "array" + }, + "index": { + "description": "The index of the row that error applies to.", + "format": "uint32", + "type": "integer" + } + }, + "type": "object" + }, + "type": "array" + }, + "kind": { + "default": "bigquery#tableDataInsertAllResponse", + "description": "The resource type of the response.", + "type": "string" + } + }, + "type": "object" + }, + "TableDataList": { + "id": "TableDataList", + "properties": { + "etag": { + "description": "A hash of this page of results.", + "type": "string" + }, + "kind": { + "default": "bigquery#tableDataList", + "description": "The resource type of the response.", + "type": "string" + }, + "pageToken": { + "description": "A token used for paging results. Providing this token instead of the startIndex parameter can help you retrieve stable results when an underlying table is changing.", + "type": "string" + }, + "rows": { + "description": "Rows of results.", + "items": { + "$ref": "TableRow" + }, + "type": "array" + }, + "totalRows": { + "description": "The total number of rows in the complete table.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "TableFieldSchema": { + "id": "TableFieldSchema", + "properties": { + "description": { + "description": "[Optional] The field description. The maximum length is 1,024 characters.", + "type": "string" + }, + "fields": { + "description": "[Optional] Describes the nested schema fields if the type property is set to RECORD.", + "items": { + "$ref": "TableFieldSchema" + }, + "type": "array" + }, + "mode": { + "description": "[Optional] The field mode. Possible values include NULLABLE, REQUIRED and REPEATED. The default value is NULLABLE.", + "type": "string" + }, + "name": { + "description": "[Required] The field name. The name must contain only letters (a-z, A-Z), numbers (0-9), or underscores (_), and must start with a letter or underscore. The maximum length is 128 characters.", + "type": "string" + }, + "type": { + "description": "[Required] The field data type. Possible values include STRING, BYTES, INTEGER, INT64 (same as INTEGER), FLOAT, FLOAT64 (same as FLOAT), BOOLEAN, BOOL (same as BOOLEAN), TIMESTAMP, DATE, TIME, DATETIME, RECORD (where RECORD indicates that the field contains a nested schema) or STRUCT (same as RECORD).", + "type": "string" + } + }, + "type": "object" + }, + "TableList": { + "id": "TableList", + "properties": { + "etag": { + "description": "A hash of this page of results.", + "type": "string" + }, + "kind": { + "default": "bigquery#tableList", + "description": "The type of list.", + "type": "string" + }, + "nextPageToken": { + "description": "A token to request the next page of results.", + "type": "string" + }, + "tables": { + "description": "Tables in the requested dataset.", + "items": { + "properties": { + "creationTime": { + "description": "The time when this table was created, in milliseconds since the epoch.", + "format": "int64", + "type": "string" + }, + "expirationTime": { + "description": "[Optional] The time when this table expires, in milliseconds since the epoch. If not present, the table will persist indefinitely. Expired tables will be deleted and their storage reclaimed.", + "format": "int64", + "type": "string" + }, + "friendlyName": { + "description": "The user-friendly name for this table.", + "type": "string" + }, + "id": { + "description": "An opaque ID of the table", + "type": "string" + }, + "kind": { + "default": "bigquery#table", + "description": "The resource type.", + "type": "string" + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "The labels associated with this table. You can use these to organize and group your tables.", + "type": "object" + }, + "tableReference": { + "$ref": "TableReference", + "description": "A reference uniquely identifying the table." + }, + "timePartitioning": { + "$ref": "TimePartitioning", + "description": "The time-based partitioning for this table." + }, + "type": { + "description": "The type of table. Possible values are: TABLE, VIEW.", + "type": "string" + }, + "view": { + "description": "Additional details for a view.", + "properties": { + "useLegacySql": { + "description": "True if view is defined in legacy SQL dialect, false if in standard SQL.", + "type": "boolean" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "type": "array" + }, + "totalItems": { + "description": "The total number of tables in the dataset.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "TableReference": { + "id": "TableReference", + "properties": { + "datasetId": { + "annotations": { + "required": [ + "bigquery.tables.update" + ] + }, + "description": "[Required] The ID of the dataset containing this table.", + "type": "string" + }, + "projectId": { + "annotations": { + "required": [ + "bigquery.tables.update" + ] + }, + "description": "[Required] The ID of the project containing this table.", + "type": "string" + }, + "tableId": { + "annotations": { + "required": [ + "bigquery.tables.update" + ] + }, + "description": "[Required] The ID of the table. The ID must contain only letters (a-z, A-Z), numbers (0-9), or underscores (_). The maximum length is 1,024 characters.", + "type": "string" + } + }, + "type": "object" + }, + "TableRow": { + "id": "TableRow", + "properties": { + "f": { + "description": "Represents a single row in the result set, consisting of one or more fields.", + "items": { + "$ref": "TableCell" + }, + "type": "array" + } + }, + "type": "object" + }, + "TableSchema": { + "id": "TableSchema", + "properties": { + "fields": { + "description": "Describes the fields in a table.", + "items": { + "$ref": "TableFieldSchema" + }, + "type": "array" + } + }, + "type": "object" + }, + "TimePartitioning": { + "id": "TimePartitioning", + "properties": { + "expirationMs": { + "description": "[Optional] Number of milliseconds for which to keep the storage for a partition.", + "format": "int64", + "type": "string" + }, + "field": { + "description": "[Experimental] [Optional] If not set, the table is partitioned by pseudo column '_PARTITIONTIME'; if set, the table is partitioned by this field. The field must be a top-level TIMESTAMP or DATE field. Its mode must be NULLABLE or REQUIRED.", + "type": "string" + }, + "requirePartitionFilter": { + "default": "false", + "description": "[Experimental] [Optional] If set to true, queries over this table require a partition filter that can be used for partition elimination to be specified.", + "type": "boolean" + }, + "type": { + "description": "[Required] The only type supported is DAY, which will generate one partition per day.", + "type": "string" + } + }, + "type": "object" + }, + "UserDefinedFunctionResource": { + "id": "UserDefinedFunctionResource", + "properties": { + "inlineCode": { + "description": "[Pick one] An inline resource that contains code for a user-defined function (UDF). Providing a inline code resource is equivalent to providing a URI for a file containing the same code.", + "type": "string" + }, + "resourceUri": { + "description": "[Pick one] A code resource to load from a Google Cloud Storage URI (gs://bucket/path).", + "type": "string" + } + }, + "type": "object" + }, + "ViewDefinition": { + "id": "ViewDefinition", + "properties": { + "query": { + "description": "[Required] A query that BigQuery executes when the view is referenced.", + "type": "string" + }, + "useLegacySql": { + "description": "Specifies whether to use BigQuery's legacy SQL for this view. The default value is true. If set to false, the view will use BigQuery's standard SQL: https://cloud.google.com/bigquery/sql-reference/ Queries and views that reference this view must use the same flag value.", + "type": "boolean" + }, + "userDefinedFunctionResources": { + "description": "Describes user-defined function resources used in the query.", + "items": { + "$ref": "UserDefinedFunctionResource" + }, + "type": "array" + } + }, + "type": "object" } - } }, - "TableReference": { - "id": "TableReference", - "type": "object", - "properties": { - "datasetId": { - "type": "string", - "description": "[Required] The ID of the dataset containing this table.", - "annotations": { - "required": [ - "bigquery.tables.update" - ] - } - }, - "projectId": { - "type": "string", - "description": "[Required] The ID of the project containing this table.", - "annotations": { - "required": [ - "bigquery.tables.update" - ] - } - }, - "tableId": { - "type": "string", - "description": "[Required] The ID of the table. The ID must contain only letters (a-z, A-Z), numbers (0-9), or underscores (_). The maximum length is 1,024 characters.", - "annotations": { - "required": [ - "bigquery.tables.update" - ] - } - } - } - }, - "TableRow": { - "id": "TableRow", - "type": "object", - "properties": { - "f": { - "type": "array", - "description": "Represents a single row in the result set, consisting of one or more fields.", - "items": { - "$ref": "TableCell" - } - } - } - }, - "TableSchema": { - "id": "TableSchema", - "type": "object", - "properties": { - "fields": { - "type": "array", - "description": "Describes the fields in a table.", - "items": { - "$ref": "TableFieldSchema" - } - } - } - }, - "TimePartitioning": { - "id": "TimePartitioning", - "type": "object", - "properties": { - "expirationMs": { - "type": "string", - "description": "[Optional] Number of milliseconds for which to keep the storage for a partition.", - "format": "int64" - }, - "field": { - "type": "string", - "description": "[Experimental] [Optional] If not set, the table is partitioned by pseudo column '_PARTITIONTIME'; if set, the table is partitioned by this field. The field must be a top-level TIMESTAMP or DATE field. Its mode must be NULLABLE or REQUIRED." - }, - "type": { - "type": "string", - "description": "[Required] The only type supported is DAY, which will generate one partition per day." - } - } - }, - "UserDefinedFunctionResource": { - "id": "UserDefinedFunctionResource", - "type": "object", - "properties": { - "inlineCode": { - "type": "string", - "description": "[Pick one] An inline resource that contains code for a user-defined function (UDF). Providing a inline code resource is equivalent to providing a URI for a file containing the same code." - }, - "resourceUri": { - "type": "string", - "description": "[Pick one] A code resource to load from a Google Cloud Storage URI (gs://bucket/path)." - } - } - }, - "ViewDefinition": { - "id": "ViewDefinition", - "type": "object", - "properties": { - "query": { - "type": "string", - "description": "[Required] A query that BigQuery executes when the view is referenced." - }, - "useLegacySql": { - "type": "boolean", - "description": "Specifies whether to use BigQuery's legacy SQL for this view. The default value is true. If set to false, the view will use BigQuery's standard SQL: https://cloud.google.com/bigquery/sql-reference/ Queries and views that reference this view must use the same flag value." - }, - "userDefinedFunctionResources": { - "type": "array", - "description": "Describes user-defined function resources used in the query.", - "items": { - "$ref": "UserDefinedFunctionResource" - } - } - } - } - }, - "resources": { - "datasets": { - "methods": { - "delete": { - "id": "bigquery.datasets.delete", - "path": "projects/{projectId}/datasets/{datasetId}", - "httpMethod": "DELETE", - "description": "Deletes the dataset specified by the datasetId value. Before you can delete a dataset, you must delete all its tables, either manually or by specifying deleteContents. Immediately after deletion, you can create another dataset with the same name.", - "parameters": { - "datasetId": { - "type": "string", - "description": "Dataset ID of dataset being deleted", - "required": true, - "location": "path" - }, - "deleteContents": { - "type": "boolean", - "description": "If True, delete all the tables in the dataset. If False and the dataset contains tables, the request will fail. Default is False", - "location": "query" - }, - "projectId": { - "type": "string", - "description": "Project ID of the dataset being deleted", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "projectId", - "datasetId" - ], - "scopes": [ - "https://www.googleapis.com/auth/bigquery", - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "get": { - "id": "bigquery.datasets.get", - "path": "projects/{projectId}/datasets/{datasetId}", - "httpMethod": "GET", - "description": "Returns the dataset specified by datasetID.", - "parameters": { - "datasetId": { - "type": "string", - "description": "Dataset ID of the requested dataset", - "required": true, - "location": "path" - }, - "projectId": { - "type": "string", - "description": "Project ID of the requested dataset", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "projectId", - "datasetId" - ], - "response": { - "$ref": "Dataset" - }, - "scopes": [ - "https://www.googleapis.com/auth/bigquery", - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ] - }, - "insert": { - "id": "bigquery.datasets.insert", - "path": "projects/{projectId}/datasets", - "httpMethod": "POST", - "description": "Creates a new empty dataset.", - "parameters": { - "projectId": { - "type": "string", - "description": "Project ID of the new dataset", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "projectId" - ], - "request": { - "$ref": "Dataset" - }, - "response": { - "$ref": "Dataset" - }, - "scopes": [ - "https://www.googleapis.com/auth/bigquery", - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "list": { - "id": "bigquery.datasets.list", - "path": "projects/{projectId}/datasets", - "httpMethod": "GET", - "description": "Lists all datasets in the specified project to which you have been granted the READER dataset role.", - "parameters": { - "all": { - "type": "boolean", - "description": "Whether to list all datasets, including hidden ones", - "location": "query" - }, - "filter": { - "type": "string", - "description": "An expression for filtering the results of the request by label. The syntax is \"labels.\u003cname\u003e[:\u003cvalue\u003e]\". Multiple filters can be ANDed together by connecting with a space. Example: \"labels.department:receiving labels.active\". See Filtering datasets using labels for details.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results to return", - "format": "uint32", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Page token, returned by a previous call, to request the next page of results", - "location": "query" - }, - "projectId": { - "type": "string", - "description": "Project ID of the datasets to be listed", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "projectId" - ], - "response": { - "$ref": "DatasetList" - }, - "scopes": [ - "https://www.googleapis.com/auth/bigquery", - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ] - }, - "patch": { - "id": "bigquery.datasets.patch", - "path": "projects/{projectId}/datasets/{datasetId}", - "httpMethod": "PATCH", - "description": "Updates information in an existing dataset. The update method replaces the entire dataset resource, whereas the patch method only replaces fields that are provided in the submitted dataset resource. This method supports patch semantics.", - "parameters": { - "datasetId": { - "type": "string", - "description": "Dataset ID of the dataset being updated", - "required": true, - "location": "path" - }, - "projectId": { - "type": "string", - "description": "Project ID of the dataset being updated", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "projectId", - "datasetId" - ], - "request": { - "$ref": "Dataset" - }, - "response": { - "$ref": "Dataset" - }, - "scopes": [ - "https://www.googleapis.com/auth/bigquery", - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "update": { - "id": "bigquery.datasets.update", - "path": "projects/{projectId}/datasets/{datasetId}", - "httpMethod": "PUT", - "description": "Updates information in an existing dataset. The update method replaces the entire dataset resource, whereas the patch method only replaces fields that are provided in the submitted dataset resource.", - "parameters": { - "datasetId": { - "type": "string", - "description": "Dataset ID of the dataset being updated", - "required": true, - "location": "path" - }, - "projectId": { - "type": "string", - "description": "Project ID of the dataset being updated", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "projectId", - "datasetId" - ], - "request": { - "$ref": "Dataset" - }, - "response": { - "$ref": "Dataset" - }, - "scopes": [ - "https://www.googleapis.com/auth/bigquery", - "https://www.googleapis.com/auth/cloud-platform" - ] - } - } - }, - "jobs": { - "methods": { - "cancel": { - "id": "bigquery.jobs.cancel", - "path": "projects/{projectId}/jobs/{jobId}/cancel", - "httpMethod": "POST", - "description": "Requests that a job be cancelled. This call will return immediately, and the client will need to poll for the job status to see if the cancel completed successfully. Cancelled jobs may still incur costs.", - "parameters": { - "jobId": { - "type": "string", - "description": "[Required] Job ID of the job to cancel", - "required": true, - "location": "path" - }, - "projectId": { - "type": "string", - "description": "[Required] Project ID of the job to cancel", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "projectId", - "jobId" - ], - "response": { - "$ref": "JobCancelResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/bigquery", - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "get": { - "id": "bigquery.jobs.get", - "path": "projects/{projectId}/jobs/{jobId}", - "httpMethod": "GET", - "description": "Returns information about a specific job. Job information is available for a six month period after creation. Requires that you're the person who ran the job, or have the Is Owner project role.", - "parameters": { - "jobId": { - "type": "string", - "description": "[Required] Job ID of the requested job", - "required": true, - "location": "path" - }, - "projectId": { - "type": "string", - "description": "[Required] Project ID of the requested job", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "projectId", - "jobId" - ], - "response": { - "$ref": "Job" - }, - "scopes": [ - "https://www.googleapis.com/auth/bigquery", - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ] - }, - "getQueryResults": { - "id": "bigquery.jobs.getQueryResults", - "path": "projects/{projectId}/queries/{jobId}", - "httpMethod": "GET", - "description": "Retrieves the results of a query job.", - "parameters": { - "jobId": { - "type": "string", - "description": "[Required] Job ID of the query job", - "required": true, - "location": "path" - }, - "maxResults": { - "type": "integer", - "description": "Maximum number of results to read", - "format": "uint32", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Page token, returned by a previous call, to request the next page of results", - "location": "query" - }, - "projectId": { - "type": "string", - "description": "[Required] Project ID of the query job", - "required": true, - "location": "path" - }, - "startIndex": { - "type": "string", - "description": "Zero-based index of the starting row", - "format": "uint64", - "location": "query" - }, - "timeoutMs": { - "type": "integer", - "description": "How long to wait for the query to complete, in milliseconds, before returning. Default is 10 seconds. If the timeout passes before the job completes, the 'jobComplete' field in the response will be false", - "format": "uint32", - "location": "query" - } - }, - "parameterOrder": [ - "projectId", - "jobId" - ], - "response": { - "$ref": "GetQueryResultsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/bigquery", - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ] - }, - "insert": { - "id": "bigquery.jobs.insert", - "path": "projects/{projectId}/jobs", - "httpMethod": "POST", - "description": "Starts a new asynchronous job. Requires the Can View project role.", - "parameters": { - "projectId": { - "type": "string", - "description": "Project ID of the project that will be billed for the job", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "projectId" - ], - "request": { - "$ref": "Job" - }, - "response": { - "$ref": "Job" - }, - "scopes": [ - "https://www.googleapis.com/auth/bigquery", - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/devstorage.full_control", - "https://www.googleapis.com/auth/devstorage.read_only", - "https://www.googleapis.com/auth/devstorage.read_write" - ], - "supportsMediaUpload": true, - "mediaUpload": { - "accept": [ - "*/*" - ], - "protocols": { - "simple": { - "multipart": true, - "path": "/upload/bigquery/v2/projects/{projectId}/jobs" - }, - "resumable": { - "multipart": true, - "path": "/resumable/upload/bigquery/v2/projects/{projectId}/jobs" - } - } - } - }, - "list": { - "id": "bigquery.jobs.list", - "path": "projects/{projectId}/jobs", - "httpMethod": "GET", - "description": "Lists all jobs that you started in the specified project. Job information is available for a six month period after creation. The job list is sorted in reverse chronological order, by job creation time. Requires the Can View project role, or the Is Owner project role if you set the allUsers property.", - "parameters": { - "allUsers": { - "type": "boolean", - "description": "Whether to display jobs owned by all users in the project. Default false", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "Maximum number of results to return", - "format": "uint32", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Page token, returned by a previous call, to request the next page of results", - "location": "query" - }, - "projectId": { - "type": "string", - "description": "Project ID of the jobs to list", - "required": true, - "location": "path" - }, - "projection": { - "type": "string", - "description": "Restrict information returned to a set of selected fields", - "enum": [ - "full", - "minimal" - ], - "enumDescriptions": [ - "Includes all job data", - "Does not include the job configuration" - ], - "location": "query" - }, - "stateFilter": { - "type": "string", - "description": "Filter for job state", - "enum": [ - "done", - "pending", - "running" - ], - "enumDescriptions": [ - "Finished jobs", - "Pending jobs", - "Running jobs" - ], - "repeated": true, - "location": "query" - } - }, - "parameterOrder": [ - "projectId" - ], - "response": { - "$ref": "JobList" - }, - "scopes": [ - "https://www.googleapis.com/auth/bigquery", - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ] - }, - "query": { - "id": "bigquery.jobs.query", - "path": "projects/{projectId}/queries", - "httpMethod": "POST", - "description": "Runs a BigQuery SQL query synchronously and returns query results if the query completes within a specified timeout.", - "parameters": { - "projectId": { - "type": "string", - "description": "Project ID of the project billed for the query", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "projectId" - ], - "request": { - "$ref": "QueryRequest" - }, - "response": { - "$ref": "QueryResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/bigquery", - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ] - } - } - }, - "projects": { - "methods": { - "getServiceAccount": { - "id": "bigquery.projects.getServiceAccount", - "path": "projects/{projectId}/serviceAccount", - "httpMethod": "GET", - "description": "Returns the email address of the service account for your project used for interactions with Google Cloud KMS.", - "parameters": { - "projectId": { - "type": "string", - "description": "Project ID for which the service account is requested.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "projectId" - ], - "response": { - "$ref": "GetServiceAccountResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/bigquery", - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ] - }, - "list": { - "id": "bigquery.projects.list", - "path": "projects", - "httpMethod": "GET", - "description": "Lists all projects to which you have been granted any project role.", - "parameters": { - "maxResults": { - "type": "integer", - "description": "Maximum number of results to return", - "format": "uint32", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Page token, returned by a previous call, to request the next page of results", - "location": "query" - } - }, - "response": { - "$ref": "ProjectList" - }, - "scopes": [ - "https://www.googleapis.com/auth/bigquery", - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ] - } - } - }, - "tabledata": { - "methods": { - "insertAll": { - "id": "bigquery.tabledata.insertAll", - "path": "projects/{projectId}/datasets/{datasetId}/tables/{tableId}/insertAll", - "httpMethod": "POST", - "description": "Streams data into BigQuery one record at a time without needing to run a load job. Requires the WRITER dataset role.", - "parameters": { - "datasetId": { - "type": "string", - "description": "Dataset ID of the destination table.", - "required": true, - "location": "path" - }, - "projectId": { - "type": "string", - "description": "Project ID of the destination table.", - "required": true, - "location": "path" - }, - "tableId": { - "type": "string", - "description": "Table ID of the destination table.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "projectId", - "datasetId", - "tableId" - ], - "request": { - "$ref": "TableDataInsertAllRequest" - }, - "response": { - "$ref": "TableDataInsertAllResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/bigquery", - "https://www.googleapis.com/auth/bigquery.insertdata", - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "list": { - "id": "bigquery.tabledata.list", - "path": "projects/{projectId}/datasets/{datasetId}/tables/{tableId}/data", - "httpMethod": "GET", - "description": "Retrieves table data from a specified set of rows. Requires the READER dataset role.", - "parameters": { - "datasetId": { - "type": "string", - "description": "Dataset ID of the table to read", - "required": true, - "location": "path" - }, - "maxResults": { - "type": "integer", - "description": "Maximum number of results to return", - "format": "uint32", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Page token, returned by a previous call, identifying the result set", - "location": "query" - }, - "projectId": { - "type": "string", - "description": "Project ID of the table to read", - "required": true, - "location": "path" - }, - "selectedFields": { - "type": "string", - "description": "List of fields to return (comma-separated). If unspecified, all fields are returned", - "location": "query" - }, - "startIndex": { - "type": "string", - "description": "Zero-based index of the starting row to read", - "format": "uint64", - "location": "query" - }, - "tableId": { - "type": "string", - "description": "Table ID of the table to read", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "projectId", - "datasetId", - "tableId" - ], - "response": { - "$ref": "TableDataList" - }, - "scopes": [ - "https://www.googleapis.com/auth/bigquery", - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ] - } - } - }, - "tables": { - "methods": { - "delete": { - "id": "bigquery.tables.delete", - "path": "projects/{projectId}/datasets/{datasetId}/tables/{tableId}", - "httpMethod": "DELETE", - "description": "Deletes the table specified by tableId from the dataset. If the table contains data, all the data will be deleted.", - "parameters": { - "datasetId": { - "type": "string", - "description": "Dataset ID of the table to delete", - "required": true, - "location": "path" - }, - "projectId": { - "type": "string", - "description": "Project ID of the table to delete", - "required": true, - "location": "path" - }, - "tableId": { - "type": "string", - "description": "Table ID of the table to delete", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "projectId", - "datasetId", - "tableId" - ], - "scopes": [ - "https://www.googleapis.com/auth/bigquery", - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "get": { - "id": "bigquery.tables.get", - "path": "projects/{projectId}/datasets/{datasetId}/tables/{tableId}", - "httpMethod": "GET", - "description": "Gets the specified table resource by table ID. This method does not return the data in the table, it only returns the table resource, which describes the structure of this table.", - "parameters": { - "datasetId": { - "type": "string", - "description": "Dataset ID of the requested table", - "required": true, - "location": "path" - }, - "projectId": { - "type": "string", - "description": "Project ID of the requested table", - "required": true, - "location": "path" - }, - "selectedFields": { - "type": "string", - "description": "List of fields to return (comma-separated). If unspecified, all fields are returned", - "location": "query" - }, - "tableId": { - "type": "string", - "description": "Table ID of the requested table", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "projectId", - "datasetId", - "tableId" - ], - "response": { - "$ref": "Table" - }, - "scopes": [ - "https://www.googleapis.com/auth/bigquery", - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ] - }, - "insert": { - "id": "bigquery.tables.insert", - "path": "projects/{projectId}/datasets/{datasetId}/tables", - "httpMethod": "POST", - "description": "Creates a new, empty table in the dataset.", - "parameters": { - "datasetId": { - "type": "string", - "description": "Dataset ID of the new table", - "required": true, - "location": "path" - }, - "projectId": { - "type": "string", - "description": "Project ID of the new table", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "projectId", - "datasetId" - ], - "request": { - "$ref": "Table" - }, - "response": { - "$ref": "Table" - }, - "scopes": [ - "https://www.googleapis.com/auth/bigquery", - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "list": { - "id": "bigquery.tables.list", - "path": "projects/{projectId}/datasets/{datasetId}/tables", - "httpMethod": "GET", - "description": "Lists all tables in the specified dataset. Requires the READER dataset role.", - "parameters": { - "datasetId": { - "type": "string", - "description": "Dataset ID of the tables to list", - "required": true, - "location": "path" - }, - "maxResults": { - "type": "integer", - "description": "Maximum number of results to return", - "format": "uint32", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Page token, returned by a previous call, to request the next page of results", - "location": "query" - }, - "projectId": { - "type": "string", - "description": "Project ID of the tables to list", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "projectId", - "datasetId" - ], - "response": { - "$ref": "TableList" - }, - "scopes": [ - "https://www.googleapis.com/auth/bigquery", - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ] - }, - "patch": { - "id": "bigquery.tables.patch", - "path": "projects/{projectId}/datasets/{datasetId}/tables/{tableId}", - "httpMethod": "PATCH", - "description": "Updates information in an existing table. The update method replaces the entire table resource, whereas the patch method only replaces fields that are provided in the submitted table resource. This method supports patch semantics.", - "parameters": { - "datasetId": { - "type": "string", - "description": "Dataset ID of the table to update", - "required": true, - "location": "path" - }, - "projectId": { - "type": "string", - "description": "Project ID of the table to update", - "required": true, - "location": "path" - }, - "tableId": { - "type": "string", - "description": "Table ID of the table to update", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "projectId", - "datasetId", - "tableId" - ], - "request": { - "$ref": "Table" - }, - "response": { - "$ref": "Table" - }, - "scopes": [ - "https://www.googleapis.com/auth/bigquery", - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "update": { - "id": "bigquery.tables.update", - "path": "projects/{projectId}/datasets/{datasetId}/tables/{tableId}", - "httpMethod": "PUT", - "description": "Updates information in an existing table. The update method replaces the entire table resource, whereas the patch method only replaces fields that are provided in the submitted table resource.", - "parameters": { - "datasetId": { - "type": "string", - "description": "Dataset ID of the table to update", - "required": true, - "location": "path" - }, - "projectId": { - "type": "string", - "description": "Project ID of the table to update", - "required": true, - "location": "path" - }, - "tableId": { - "type": "string", - "description": "Table ID of the table to update", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "projectId", - "datasetId", - "tableId" - ], - "request": { - "$ref": "Table" - }, - "response": { - "$ref": "Table" - }, - "scopes": [ - "https://www.googleapis.com/auth/bigquery", - "https://www.googleapis.com/auth/cloud-platform" - ] - } - } - } - } -} + "servicePath": "bigquery/v2/", + "title": "BigQuery API", + "version": "v2" +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/bigquery/v2/bigquery-gen.go b/vendor/google.golang.org/api/bigquery/v2/bigquery-gen.go index e382f4daf..a129d81be 100644 --- a/vendor/google.golang.org/api/bigquery/v2/bigquery-gen.go +++ b/vendor/google.golang.org/api/bigquery/v2/bigquery-gen.go @@ -604,6 +604,10 @@ type DatasetListDatasets struct { // organize and group your datasets. Labels map[string]string `json:"labels,omitempty"` + // Location: [Experimental] The geographic location where the data + // resides. + Location string `json:"location,omitempty"` + // ForceSendFields is a list of field names (e.g. "DatasetReference") to // unconditionally include in API requests. By default, fields with // empty values are omitted from API requests. However, any non-pointer, @@ -660,6 +664,42 @@ func (s *DatasetReference) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +type DestinationTableProperties struct { + // Description: [Optional] The description for the destination table. + // This will only be used if the destination table is newly created. If + // the table already exists and a value different than the current + // description is provided, the job will fail. + Description string `json:"description,omitempty"` + + // FriendlyName: [Optional] The friendly name for the destination table. + // This will only be used if the destination table is newly created. If + // the table already exists and a value different than the current + // friendly name is provided, the job will fail. + FriendlyName string `json:"friendlyName,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Description") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Description") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *DestinationTableProperties) MarshalJSON() ([]byte, error) { + type NoMethod DestinationTableProperties + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + type EncryptionConfiguration struct { // KmsKeyName: [Optional] Describes the Cloud KMS encryption key that // will be used to protect destination BigQuery table. The BigQuery @@ -747,9 +787,15 @@ type ExplainQueryStage struct { // CPU-bound tasks. ComputeRatioMax float64 `json:"computeRatioMax,omitempty"` + // EndMs: Stage end time in milliseconds. + EndMs int64 `json:"endMs,omitempty,string"` + // Id: Unique ID for stage within plan. Id int64 `json:"id,omitempty,string"` + // InputStages: IDs for stages that are inputs to this stage. + InputStages googleapi.Int64s `json:"inputStages,omitempty"` + // Name: Human-readable name for stage. Name string `json:"name,omitempty"` @@ -783,6 +829,9 @@ type ExplainQueryStage struct { // and spilled to disk. ShuffleOutputBytesSpilled int64 `json:"shuffleOutputBytesSpilled,omitempty,string"` + // StartMs: Stage start time in milliseconds. + StartMs int64 `json:"startMs,omitempty,string"` + // Status: Current status for the stage. Status string `json:"status,omitempty"` @@ -1256,6 +1305,10 @@ type JobConfiguration struct { // Extract: [Pick one] Configures an extract job. Extract *JobConfigurationExtract `json:"extract,omitempty"` + // JobTimeoutMs: [Optional] Job timeout in milliseconds. If this time + // limit is exceeded, BigQuery may attempt to terminate the job. + JobTimeoutMs int64 `json:"jobTimeoutMs,omitempty,string"` + // Labels: The labels associated with this job. You can use these to // organize and group your jobs. Label keys and values can be no longer // than 63 characters, can only contain lowercase letters, numeric @@ -1295,8 +1348,9 @@ func (s *JobConfiguration) MarshalJSON() ([]byte, error) { type JobConfigurationExtract struct { // Compression: [Optional] The compression type to use for exported - // files. Possible values include GZIP and NONE. The default value is - // NONE. + // files. Possible values include GZIP, DEFLATE, SNAPPY, and NONE. The + // default value is NONE. DEFLATE and SNAPPY are only supported for + // Avro. Compression string `json:"compression,omitempty"` // DestinationFormat: [Optional] The exported file format. Possible @@ -1377,14 +1431,18 @@ type JobConfigurationLoad struct { // one atomic update upon job completion. CreateDisposition string `json:"createDisposition,omitempty"` - // DestinationEncryptionConfiguration: [Experimental] Custom encryption - // configuration (e.g., Cloud KMS keys). + // DestinationEncryptionConfiguration: Custom encryption configuration + // (e.g., Cloud KMS keys). DestinationEncryptionConfiguration *EncryptionConfiguration `json:"destinationEncryptionConfiguration,omitempty"` // DestinationTable: [Required] The destination table to load the data // into. DestinationTable *TableReference `json:"destinationTable,omitempty"` + // DestinationTableProperties: [Experimental] [Optional] Properties with + // which to create the destination table if it is new. + DestinationTableProperties *DestinationTableProperties `json:"destinationTableProperties,omitempty"` + // Encoding: [Optional] The character encoding of the data. The // supported values are UTF-8 or ISO-8859-1. The default value is UTF-8. // BigQuery decodes the data after the raw, binary data has been split @@ -1480,7 +1538,8 @@ type JobConfigurationLoad struct { // SourceFormat: [Optional] The format of the data files. For CSV files, // specify "CSV". For datastore backups, specify "DATASTORE_BACKUP". For // newline-delimited JSON, specify "NEWLINE_DELIMITED_JSON". For Avro, - // specify "AVRO". The default value is CSV. + // specify "AVRO". For parquet, specify "PARQUET". For orc, specify + // "ORC". The default value is CSV. SourceFormat string `json:"sourceFormat,omitempty"` // SourceUris: [Required] The fully-qualified URIs that point to your @@ -1556,8 +1615,8 @@ type JobConfigurationQuery struct { // unqualified table names in the query. DefaultDataset *DatasetReference `json:"defaultDataset,omitempty"` - // DestinationEncryptionConfiguration: [Experimental] Custom encryption - // configuration (e.g., Cloud KMS keys). + // DestinationEncryptionConfiguration: Custom encryption configuration + // (e.g., Cloud KMS keys). DestinationEncryptionConfiguration *EncryptionConfiguration `json:"destinationEncryptionConfiguration,omitempty"` // DestinationTable: [Optional] Describes the table where the query @@ -1697,8 +1756,8 @@ type JobConfigurationTableCopy struct { // one atomic update upon job completion. CreateDisposition string `json:"createDisposition,omitempty"` - // DestinationEncryptionConfiguration: [Experimental] Custom encryption - // configuration (e.g., Cloud KMS keys). + // DestinationEncryptionConfiguration: Custom encryption configuration + // (e.g., Cloud KMS keys). DestinationEncryptionConfiguration *EncryptionConfiguration `json:"destinationEncryptionConfiguration,omitempty"` // DestinationTable: [Required] The destination table @@ -1848,6 +1907,10 @@ type JobReference struct { // maximum length is 1,024 characters. JobId string `json:"jobId,omitempty"` + // Location: [Experimental] The geographic location of the job. Required + // except for US and EU. + Location string `json:"location,omitempty"` + // ProjectId: [Required] The ID of the project containing this job. ProjectId string `json:"projectId,omitempty"` @@ -1875,6 +1938,10 @@ func (s *JobReference) MarshalJSON() ([]byte, error) { } type JobStatistics struct { + // CompletionRatio: [Experimental] [Output-only] Job progress (0.0 -> + // 1.0) for LOAD and EXTRACT jobs. + CompletionRatio float64 `json:"completionRatio,omitempty"` + // CreationTime: [Output-only] Creation time of this job, in // milliseconds since the epoch. This field will be present on all jobs. CreationTime int64 `json:"creationTime,omitempty,string"` @@ -1902,7 +1969,7 @@ type JobStatistics struct { // processed in the query statistics instead. TotalBytesProcessed int64 `json:"totalBytesProcessed,omitempty,string"` - // ForceSendFields is a list of field names (e.g. "CreationTime") to + // ForceSendFields is a list of field names (e.g. "CompletionRatio") to // unconditionally include in API requests. By default, fields with // empty values are omitted from API requests. However, any non-pointer, // non-interface field appearing in ForceSendFields will be sent to the @@ -1910,12 +1977,13 @@ type JobStatistics struct { // used to include empty fields in Patch requests. ForceSendFields []string `json:"-"` - // NullFields is a list of field names (e.g. "CreationTime") to include - // in API requests with the JSON null value. By default, fields with - // empty values are omitted from API requests. However, any field with - // an empty value appearing in NullFields will be sent to the server as - // null. It is an error if a field in this list has a non-empty value. - // This may be used to include null fields in Patch requests. + // NullFields is a list of field names (e.g. "CompletionRatio") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. NullFields []string `json:"-"` } @@ -1925,6 +1993,20 @@ func (s *JobStatistics) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +func (s *JobStatistics) UnmarshalJSON(data []byte) error { + type NoMethod JobStatistics + var s1 struct { + CompletionRatio gensupport.JSONFloat64 `json:"completionRatio"` + *NoMethod + } + s1.NoMethod = (*NoMethod)(s) + if err := json.Unmarshal(data, &s1); err != nil { + return err + } + s.CompletionRatio = float64(s1.CompletionRatio) + return nil +} + type JobStatistics2 struct { // BillingTier: [Output-only] Billing tier for the job. BillingTier int64 `json:"billingTier,omitempty"` @@ -1960,13 +2042,13 @@ type JobStatistics2 struct { // QueryPlan: [Output-only] Describes execution plan for the query. QueryPlan []*ExplainQueryStage `json:"queryPlan,omitempty"` - // ReferencedTables: [Output-only, Experimental] Referenced tables for - // the job. Queries that reference more than 50 tables will not have a - // complete list. + // ReferencedTables: [Output-only] Referenced tables for the job. + // Queries that reference more than 50 tables will not have a complete + // list. ReferencedTables []*TableReference `json:"referencedTables,omitempty"` - // Schema: [Output-only, Experimental] The schema of the results. - // Present only for successful dry run of non-legacy SQL queries. + // Schema: [Output-only] The schema of the results. Present only for + // successful dry run of non-legacy SQL queries. Schema *TableSchema `json:"schema,omitempty"` // StatementType: [Output-only, Experimental] The type of query @@ -1976,7 +2058,8 @@ type JobStatistics2 struct { // query. StatementType string `json:"statementType,omitempty"` - // Timeline: [Output-only] Describes a timeline of job execution. + // Timeline: [Output-only] [Experimental] Describes a timeline of job + // execution. Timeline []*QueryTimelineSample `json:"timeline,omitempty"` // TotalBytesBilled: [Output-only] Total bytes billed for the job. @@ -1985,6 +2068,10 @@ type JobStatistics2 struct { // TotalBytesProcessed: [Output-only] Total bytes processed for the job. TotalBytesProcessed int64 `json:"totalBytesProcessed,omitempty,string"` + // TotalPartitionsProcessed: [Output-only] Total number of partitions + // processed from all partitioned tables referenced in the job. + TotalPartitionsProcessed int64 `json:"totalPartitionsProcessed,omitempty,string"` + // TotalSlotMs: [Output-only] Slot-milliseconds for the job. TotalSlotMs int64 `json:"totalSlotMs,omitempty,string"` @@ -2396,6 +2483,10 @@ type QueryRequest struct { // Kind: The resource type of the request. Kind string `json:"kind,omitempty"` + // Location: [Experimental] The geographic location where the job should + // run. Required except for US and EU. + Location string `json:"location,omitempty"` + // MaxResults: [Optional] The maximum number of rows of data to return // per page of results. Setting this flag to a small value such as 1000 // and then paging through results might improve reliability when the @@ -2554,15 +2645,11 @@ type QueryTimelineSample struct { // ActiveInputs: Total number of active workers. This does not // correspond directly to slot usage. This is the largest value observed // since the last sample. - ActiveInputs int64 `json:"activeInputs,omitempty"` + ActiveInputs int64 `json:"activeInputs,omitempty,string"` // CompletedInputs: Total parallel units of work completed by this // query. - CompletedInputs int64 `json:"completedInputs,omitempty"` - - // CompletedInputsForActiveStages: Total parallel units of work - // completed by the currently active stages. - CompletedInputsForActiveStages int64 `json:"completedInputsForActiveStages,omitempty"` + CompletedInputs int64 `json:"completedInputs,omitempty,string"` // ElapsedMs: Milliseconds elapsed since the start of query execution. ElapsedMs int64 `json:"elapsedMs,omitempty,string"` @@ -2643,8 +2730,8 @@ type Table struct { // Description: [Optional] A user-friendly description of this table. Description string `json:"description,omitempty"` - // EncryptionConfiguration: [Experimental] Custom encryption - // configuration (e.g., Cloud KMS keys). + // EncryptionConfiguration: Custom encryption configuration (e.g., Cloud + // KMS keys). EncryptionConfiguration *EncryptionConfiguration `json:"encryptionConfiguration,omitempty"` // Etag: [Output-only] A hash of this resource. @@ -3258,6 +3345,11 @@ type TimePartitioning struct { // Its mode must be NULLABLE or REQUIRED. Field string `json:"field,omitempty"` + // RequirePartitionFilter: [Experimental] [Optional] If set to true, + // queries over this table require a partition filter that can be used + // for partition elimination to be specified. + RequirePartitionFilter bool `json:"requirePartitionFilter,omitempty"` + // Type: [Required] The only type supported is DAY, which will generate // one partition per day. Type string `json:"type,omitempty"` @@ -4290,6 +4382,13 @@ func (r *JobsService) Cancel(projectId string, jobId string) *JobsCancelCall { return c } +// Location sets the optional parameter "location": [Experimental] The +// geographic location of the job. Required except for US and EU. +func (c *JobsCancelCall) Location(location string) *JobsCancelCall { + c.urlParams_.Set("location", location) + return c +} + // Fields allows partial responses to be retrieved. See // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse // for more information. @@ -4386,6 +4485,11 @@ func (c *JobsCancelCall) Do(opts ...googleapi.CallOption) (*JobCancelResponse, e // "required": true, // "type": "string" // }, + // "location": { + // "description": "[Experimental] The geographic location of the job. Required except for US and EU.", + // "location": "query", + // "type": "string" + // }, // "projectId": { // "description": "[Required] Project ID of the job to cancel", // "location": "path", @@ -4427,6 +4531,13 @@ func (r *JobsService) Get(projectId string, jobId string) *JobsGetCall { return c } +// Location sets the optional parameter "location": [Experimental] The +// geographic location of the job. Required except for US and EU. +func (c *JobsGetCall) Location(location string) *JobsGetCall { + c.urlParams_.Set("location", location) + return c +} + // Fields allows partial responses to be retrieved. See // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse // for more information. @@ -4536,6 +4647,11 @@ func (c *JobsGetCall) Do(opts ...googleapi.CallOption) (*Job, error) { // "required": true, // "type": "string" // }, + // "location": { + // "description": "[Experimental] The geographic location of the job. Required except for US and EU.", + // "location": "query", + // "type": "string" + // }, // "projectId": { // "description": "[Required] Project ID of the requested job", // "location": "path", @@ -4576,6 +4692,14 @@ func (r *JobsService) GetQueryResults(projectId string, jobId string) *JobsGetQu return c } +// Location sets the optional parameter "location": [Experimental] The +// geographic location where the job should run. Required except for US +// and EU. +func (c *JobsGetQueryResultsCall) Location(location string) *JobsGetQueryResultsCall { + c.urlParams_.Set("location", location) + return c +} + // MaxResults sets the optional parameter "maxResults": Maximum number // of results to read func (c *JobsGetQueryResultsCall) MaxResults(maxResults int64) *JobsGetQueryResultsCall { @@ -4715,6 +4839,11 @@ func (c *JobsGetQueryResultsCall) Do(opts ...googleapi.CallOption) (*GetQueryRes // "required": true, // "type": "string" // }, + // "location": { + // "description": "[Experimental] The geographic location where the job should run. Required except for US and EU.", + // "location": "query", + // "type": "string" + // }, // "maxResults": { // "description": "Maximum number of results to read", // "format": "uint32", @@ -4886,11 +5015,12 @@ func (c *JobsInsertCall) doRequest(alt string) (*http.Response, error) { body = new(bytes.Buffer) reqHeaders.Set("Content-Type", "application/json") } - body, cleanup := c.mediaInfo_.UploadRequest(reqHeaders, body) + body, getBody, cleanup := c.mediaInfo_.UploadRequest(reqHeaders, body) defer cleanup() urls += "?" + c.urlParams_.Encode() req, _ := http.NewRequest("POST", urls, body) req.Header = reqHeaders + gensupport.SetGetBody(req, getBody) googleapi.Expand(req.URL, map[string]string{ "projectId": c.projectId, }) @@ -5029,6 +5159,14 @@ func (c *JobsListCall) AllUsers(allUsers bool) *JobsListCall { return c } +// MaxCreationTime sets the optional parameter "maxCreationTime": Max +// value for job creation time, in milliseconds since the POSIX epoch. +// If set, only jobs created before or at this timestamp are returned +func (c *JobsListCall) MaxCreationTime(maxCreationTime uint64) *JobsListCall { + c.urlParams_.Set("maxCreationTime", fmt.Sprint(maxCreationTime)) + return c +} + // MaxResults sets the optional parameter "maxResults": Maximum number // of results to return func (c *JobsListCall) MaxResults(maxResults int64) *JobsListCall { @@ -5036,6 +5174,14 @@ func (c *JobsListCall) MaxResults(maxResults int64) *JobsListCall { return c } +// MinCreationTime sets the optional parameter "minCreationTime": Min +// value for job creation time, in milliseconds since the POSIX epoch. +// If set, only jobs created after or at this timestamp are returned +func (c *JobsListCall) MinCreationTime(minCreationTime uint64) *JobsListCall { + c.urlParams_.Set("minCreationTime", fmt.Sprint(minCreationTime)) + return c +} + // PageToken sets the optional parameter "pageToken": Page token, // returned by a previous call, to request the next page of results func (c *JobsListCall) PageToken(pageToken string) *JobsListCall { @@ -5172,12 +5318,24 @@ func (c *JobsListCall) Do(opts ...googleapi.CallOption) (*JobList, error) { // "location": "query", // "type": "boolean" // }, + // "maxCreationTime": { + // "description": "Max value for job creation time, in milliseconds since the POSIX epoch. If set, only jobs created before or at this timestamp are returned", + // "format": "uint64", + // "location": "query", + // "type": "string" + // }, // "maxResults": { // "description": "Maximum number of results to return", // "format": "uint32", // "location": "query", // "type": "integer" // }, + // "minCreationTime": { + // "description": "Min value for job creation time, in milliseconds since the POSIX epoch. If set, only jobs created after or at this timestamp are returned", + // "format": "uint64", + // "location": "query", + // "type": "string" + // }, // "pageToken": { // "description": "Page token, returned by a previous call, to request the next page of results", // "location": "query", diff --git a/vendor/google.golang.org/api/bigquerydatatransfer/v1/bigquerydatatransfer-api.json b/vendor/google.golang.org/api/bigquerydatatransfer/v1/bigquerydatatransfer-api.json index dadd20cf9..0741a3492 100644 --- a/vendor/google.golang.org/api/bigquerydatatransfer/v1/bigquerydatatransfer-api.json +++ b/vendor/google.golang.org/api/bigquerydatatransfer/v1/bigquerydatatransfer-api.json @@ -1,1029 +1,599 @@ { - "basePath": "", - "revision": "20180114", - "documentationLink": "https://cloud.google.com/bigquery/", - "id": "bigquerydatatransfer:v1", - "discoveryVersion": "v1", - "version_module": true, - "schemas": { - "DataSource": { - "description": "Represents data source metadata. Metadata is sufficient to\nrender UI and request proper OAuth tokens.", - "type": "object", - "properties": { - "defaultSchedule": { - "description": "Default data transfer schedule.\nExamples of valid schedules include:\n`1st,3rd monday of month 15:30`,\n`every wed,fri of jan,jun 13:15`, and\n`first sunday of quarter 00:00`.", - "type": "string" - }, - "supportsMultipleTransfers": { - "description": "Indicates whether the data source supports multiple transfers\nto different BigQuery targets.", - "type": "boolean" - }, - "defaultDataRefreshWindowDays": { - "description": "Default data refresh window on days.\nOnly meaningful when `data_refresh_type` = `SLIDING_WINDOW`.", - "format": "int32", - "type": "integer" - }, - "manualRunsDisabled": { - "description": "Disables backfilling and manual run scheduling\nfor the data source.", - "type": "boolean" - }, - "transferType": { - "enumDescriptions": [ - "Invalid or Unknown transfer type placeholder.", - "Batch data transfer.", - "Streaming data transfer. Streaming data source currently doesn't\nsupport multiple transfer configs per project." - ], - "enum": [ - "TRANSFER_TYPE_UNSPECIFIED", - "BATCH", - "STREAMING" - ], - "description": "Transfer type. Currently supports only batch transfers,\nwhich are transfers that use the BigQuery batch APIs (load or\nquery) to ingest the data.", - "type": "string" - }, - "description": { - "description": "User friendly data source description string.", - "type": "string" - }, - "dataSourceId": { - "description": "Data source id.", - "type": "string" - }, - "scopes": { - "description": "Api auth scopes for which refresh token needs to be obtained. Only valid\nwhen `client_id` is specified. Ignored otherwise. These are scopes needed\nby a data source to prepare data and ingest them into BigQuery,\ne.g., https://www.googleapis.com/auth/bigquery", - "type": "array", - "items": { - "type": "string" - } - }, - "name": { - "description": "Data source resource name.", - "type": "string" - }, - "minimumScheduleInterval": { - "description": "The minimum interval for scheduler to schedule runs.", - "format": "google-duration", - "type": "string" - }, - "clientId": { - "description": "Data source client id which should be used to receive refresh token.\nWhen not supplied, no offline credentials are populated for data transfer.", - "type": "string" - }, - "authorizationType": { - "enumDescriptions": [ - "Type unspecified.", - "Use OAuth 2 authorization codes that can be exchanged\nfor a refresh token on the backend.", - "Return an authorization code for a given Google+ page that can then be\nexchanged for a refresh token on the backend." - ], - "enum": [ - "AUTHORIZATION_TYPE_UNSPECIFIED", - "AUTHORIZATION_CODE", - "GOOGLE_PLUS_AUTHORIZATION_CODE" - ], - "description": "Indicates the type of authorization.", - "type": "string" - }, - "supportsCustomSchedule": { - "description": "Specifies whether the data source supports a user defined schedule, or\noperates on the default schedule.\nWhen set to `true`, user can override default schedule.", - "type": "boolean" - }, - "displayName": { - "description": "User friendly data source name.", - "type": "string" - }, - "updateDeadlineSeconds": { - "description": "The number of seconds to wait for an update from the data source\nbefore BigQuery marks the transfer as failed.", - "format": "int32", - "type": "integer" - }, - "dataRefreshType": { - "enumDescriptions": [ - "The data source won't support data auto refresh, which is default value.", - "The data source supports data auto refresh, and runs will be scheduled\nfor the past few days. Does not allow custom values to be set for each\ntransfer config.", - "The data source supports data auto refresh, and runs will be scheduled\nfor the past few days. Allows custom values to be set for each transfer\nconfig." - ], - "enum": [ - "DATA_REFRESH_TYPE_UNSPECIFIED", - "SLIDING_WINDOW", - "CUSTOM_SLIDING_WINDOW" - ], - "description": "Specifies whether the data source supports automatic data refresh for the\npast few days, and how it's supported.\nFor some data sources, data might not be complete until a few days later,\nso it's useful to refresh data automatically.", - "type": "string" - }, - "parameters": { - "description": "Data source parameters.", - "type": "array", - "items": { - "$ref": "DataSourceParameter" - } - }, - "helpUrl": { - "description": "Url for the help document for this data source.", - "type": "string" - } - }, - "id": "DataSource" - }, - "Status": { - "description": "The `Status` type defines a logical error model that is suitable for different\nprogramming environments, including REST APIs and RPC APIs. It is used by\n[gRPC](https://github.com/grpc). The error model is designed to be:\n\n- Simple to use and understand for most users\n- Flexible enough to meet unexpected needs\n\n# Overview\n\nThe `Status` message contains three pieces of data: error code, error message,\nand error details. The error code should be an enum value of\ngoogle.rpc.Code, but it may accept additional error codes if needed. The\nerror message should be a developer-facing English message that helps\ndevelopers *understand* and *resolve* the error. If a localized user-facing\nerror message is needed, put the localized message in the error details or\nlocalize it in the client. The optional error details may contain arbitrary\ninformation about the error. There is a predefined set of error detail types\nin the package `google.rpc` that can be used for common error conditions.\n\n# Language mapping\n\nThe `Status` message is the logical representation of the error model, but it\nis not necessarily the actual wire format. When the `Status` message is\nexposed in different client libraries and different wire protocols, it can be\nmapped differently. For example, it will likely be mapped to some exceptions\nin Java, but more likely mapped to some error codes in C.\n\n# Other uses\n\nThe error model and the `Status` message can be used in a variety of\nenvironments, either with or without APIs, to provide a\nconsistent developer experience across different environments.\n\nExample uses of this error model include:\n\n- Partial errors. If a service needs to return partial errors to the client,\n it may embed the `Status` in the normal response to indicate the partial\n errors.\n\n- Workflow errors. A typical workflow has multiple steps. Each step may\n have a `Status` message for error reporting.\n\n- Batch operations. If a client uses batch request and batch response, the\n `Status` message should be used directly inside batch response, one for\n each error sub-response.\n\n- Asynchronous operations. If an API call embeds asynchronous operation\n results in its response, the status of those operations should be\n represented directly using the `Status` message.\n\n- Logging. If some API errors are stored in logs, the message `Status` could\n be used directly after any stripping needed for security/privacy reasons.", - "type": "object", - "properties": { - "message": { - "description": "A developer-facing error message, which should be in English. Any\nuser-facing error message should be localized and sent in the\ngoogle.rpc.Status.details field, or localized by the client.", - "type": "string" - }, - "details": { - "description": "A list of messages that carry the error details. There is a common set of\nmessage types for APIs to use.", - "type": "array", - "items": { - "type": "object", - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - } - } - }, - "code": { - "description": "The status code, which should be an enum value of google.rpc.Code.", - "format": "int32", - "type": "integer" - } - }, - "id": "Status" - }, - "ScheduleTransferRunsRequest": { - "description": "A request to schedule transfer runs for a time range.", - "type": "object", - "properties": { - "startTime": { - "description": "Start time of the range of transfer runs. For example,\n`\"2017-05-25T00:00:00+00:00\"`.", - "format": "google-datetime", - "type": "string" - }, - "endTime": { - "description": "End time of the range of transfer runs. For example,\n`\"2017-05-30T00:00:00+00:00\"`.", - "format": "google-datetime", - "type": "string" - } - }, - "id": "ScheduleTransferRunsRequest" - }, - "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 `{}`.", - "type": "object", - "properties": {}, - "id": "Empty" - }, - "Location": { - "description": "A resource that represents Google Cloud Platform location.", - "type": "object", - "properties": { - "labels": { - "additionalProperties": { - "type": "string" - }, - "description": "Cross-service attributes for the location. For example\n\n {\"cloud.googleapis.com/region\": \"us-east1\"}", - "type": "object" - }, - "name": { - "description": "Resource name for the location, which may vary between implementations.\nFor example: `\"projects/example-project/locations/us-east1\"`", - "type": "string" - }, - "locationId": { - "description": "The canonical id for this location. For example: `\"us-east1\"`.", - "type": "string" - }, - "metadata": { - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - }, - "description": "Service-specific metadata. For example the available capacity at the given\nlocation.", - "type": "object" - } - }, - "id": "Location" - }, - "TransferConfig": { - "description": "Represents a data transfer configuration. A transfer configuration\ncontains all metadata needed to perform a data transfer. For example,\n`destination_dataset_id` specifies where data should be stored.\nWhen a new transfer configuration is created, the specified\n`destination_dataset_id` is created when needed and shared with the\nappropriate data source service account.", - "type": "object", - "properties": { - "dataSourceId": { - "description": "Data source id. Cannot be changed once data transfer is created.", - "type": "string" - }, - "state": { - "description": "Output only. State of the most recently updated transfer run.", - "type": "string", - "enumDescriptions": [ - "State placeholder.", - "Data transfer is scheduled and is waiting to be picked up by\ndata transfer backend.", - "Data transfer is in progress.", - "Data transfer completed successsfully.", - "Data transfer failed.", - "Data transfer is cancelled." - ], - "enum": [ - "TRANSFER_STATE_UNSPECIFIED", - "PENDING", - "RUNNING", - "SUCCEEDED", - "FAILED", - "CANCELLED" - ] - }, - "userId": { - "description": "Output only. Unique ID of the user on whose behalf transfer is done.\nApplicable only to data sources that do not support service accounts.\nWhen set to 0, the data source service account credentials are used.\nMay be negative. Note, that this identifier is not stable.\nIt may change over time even for the same user.", - "format": "int64", - "type": "string" - }, - "destinationDatasetId": { - "description": "The BigQuery target dataset id.", - "type": "string" - }, - "name": { - "description": "The resource name of the transfer config.\nTransfer config names have the form\n`projects/{project_id}/transferConfigs/{config_id}`.\nWhere `config_id` is usually a uuid, even though it is not\nguaranteed or required. The name is ignored when creating a transfer\nconfig.", - "type": "string" - }, - "params": { - "additionalProperties": { - "description": "Properties of the object.", - "type": "any" - }, - "description": "Data transfer specific parameters.", - "type": "object" - }, - "datasetRegion": { - "description": "Output only. Region in which BigQuery dataset is located.", - "type": "string" - }, - "displayName": { - "description": "User specified display name for the data transfer.", - "type": "string" - }, - "nextRunTime": { - "description": "Output only. Next time when data transfer will run.", - "format": "google-datetime", - "type": "string" - }, - "disabled": { - "description": "Is this config disabled. When set to true, no runs are scheduled\nfor a given transfer.", - "type": "boolean" - }, - "updateTime": { - "description": "Output only. Data transfer modification time. Ignored by server on input.", - "format": "google-datetime", - "type": "string" - }, - "schedule": { - "description": "Data transfer schedule.\nIf the data source does not support a custom schedule, this should be\nempty. If it is empty, the default value for the data source will be\nused.\nThe specified times are in UTC.\nExamples of valid format:\n`1st,3rd monday of month 15:30`,\n`every wed,fri of jan,jun 13:15`, and\n`first sunday of quarter 00:00`.\nSee more explanation about the format here:\nhttps://cloud.google.com/appengine/docs/flexible/python/scheduling-jobs-with-cron-yaml#the_schedule_format\nNOTE: the granularity should be at least 8 hours, or less frequent.", - "type": "string" - }, - "dataRefreshWindowDays": { - "description": "The number of days to look back to automatically refresh the data.\nFor example, if `data_refresh_window_days = 10`, then every day\nBigQuery reingests data for [today-10, today-1], rather than ingesting data\nfor just [today-1].\nOnly valid if the data source supports the feature. Set the value to 0\nto use the default value.", - "format": "int32", - "type": "integer" - } - }, - "id": "TransferConfig" - }, - "TransferRun": { - "description": "Represents a data transfer run.\nNext id: 27", - "type": "object", - "properties": { - "state": { - "enumDescriptions": [ - "State placeholder.", - "Data transfer is scheduled and is waiting to be picked up by\ndata transfer backend.", - "Data transfer is in progress.", - "Data transfer completed successsfully.", - "Data transfer failed.", - "Data transfer is cancelled." - ], - "enum": [ - "TRANSFER_STATE_UNSPECIFIED", - "PENDING", - "RUNNING", - "SUCCEEDED", - "FAILED", - "CANCELLED" - ], - "description": "Data transfer run state. Ignored for input requests.", - "type": "string" - }, - "userId": { - "description": "Output only. Unique ID of the user on whose behalf transfer is done.\nApplicable only to data sources that do not support service accounts.\nWhen set to 0, the data source service account credentials are used.\nMay be negative. Note, that this identifier is not stable.\nIt may change over time even for the same user.", - "format": "int64", - "type": "string" - }, - "name": { - "description": "The resource name of the transfer run.\nTransfer run names have the form\n`projects/{project_id}/locations/{location}/transferConfigs/{config_id}/runs/{run_id}`.\nThe name is ignored when creating a transfer run.", - "type": "string" - }, - "destinationDatasetId": { - "description": "Output only. The BigQuery target dataset id.", - "type": "string" - }, - "params": { - "description": "Output only. Data transfer specific parameters.", - "type": "object", - "additionalProperties": { - "description": "Properties of the object.", - "type": "any" - } - }, - "endTime": { - "description": "Output only. Time when transfer run ended.\nParameter ignored by server for input requests.", - "format": "google-datetime", - "type": "string" - }, - "startTime": { - "description": "Output only. Time when transfer run was started.\nParameter ignored by server for input requests.", - "format": "google-datetime", - "type": "string" - }, - "scheduleTime": { - "description": "Minimum time after which a transfer run can be started.", - "format": "google-datetime", - "type": "string" - }, - "errorStatus": { - "description": "Status of the transfer run.", - "$ref": "Status" - }, - "updateTime": { - "description": "Output only. Last time the data transfer run state was updated.", - "format": "google-datetime", - "type": "string" - }, - "schedule": { - "description": "Output only. Describes the schedule of this transfer run if it was\ncreated as part of a regular schedule. For batch transfer runs that are\nscheduled manually, this is empty.\nNOTE: the system might choose to delay the schedule depending on the\ncurrent load, so `schedule_time` doesn't always matches this.", - "type": "string" - }, - "runTime": { - "description": "For batch transfer runs, specifies the date and time that\ndata should be ingested.", - "format": "google-datetime", - "type": "string" - }, - "dataSourceId": { - "description": "Output only. Data source id.", - "type": "string" - } - }, - "id": "TransferRun" - }, - "CheckValidCredsRequest": { - "description": "A request to determine whether the user has valid credentials. This method\nis used to limit the number of OAuth popups in the user interface. The\nuser id is inferred from the API call context.\nIf the data source has the Google+ authorization type, this method\nreturns false, as it cannot be determined whether the credentials are\nalready valid merely based on the user id.", - "type": "object", - "properties": {}, - "id": "CheckValidCredsRequest" - }, - "CheckValidCredsResponse": { - "description": "A response indicating whether the credentials exist and are valid.", - "type": "object", - "properties": { - "hasValidCreds": { - "description": "If set to `true`, the credentials exist and are valid.", - "type": "boolean" - } - }, - "id": "CheckValidCredsResponse" - }, - "ScheduleTransferRunsResponse": { - "description": "A response to schedule transfer runs for a time range.", - "type": "object", - "properties": { - "runs": { - "description": "The transfer runs that were scheduled.", - "type": "array", - "items": { - "$ref": "TransferRun" - } - } - }, - "id": "ScheduleTransferRunsResponse" - }, - "ListTransferLogsResponse": { - "description": "The returned list transfer run messages.", - "type": "object", - "properties": { - "nextPageToken": { - "description": "Output only. The next-pagination token. For multiple-page list results,\nthis token can be used as the\n`GetTransferRunLogRequest.page_token`\nto request the next page of list results.", - "type": "string" - }, - "transferMessages": { - "description": "Output only. The stored pipeline transfer messages.", - "type": "array", - "items": { - "$ref": "TransferMessage" - } - } - }, - "id": "ListTransferLogsResponse" - }, - "TransferMessage": { - "description": "Represents a user facing message for a particular data transfer run.", - "type": "object", - "properties": { - "messageTime": { - "description": "Time when message was logged.", - "format": "google-datetime", - "type": "string" - }, - "severity": { - "enumDescriptions": [ - "No severity specified.", - "Informational message.", - "Warning message.", - "Error message." - ], - "enum": [ - "MESSAGE_SEVERITY_UNSPECIFIED", - "INFO", - "WARNING", - "ERROR" - ], - "description": "Message severity.", - "type": "string" - }, - "messageText": { - "description": "Message text.", - "type": "string" - } - }, - "id": "TransferMessage" - }, - "ListDataSourcesResponse": { - "description": "Returns list of supported data sources and their metadata.", - "type": "object", - "properties": { - "nextPageToken": { - "description": "Output only. The next-pagination token. For multiple-page list results,\nthis token can be used as the\n`ListDataSourcesRequest.page_token`\nto request the next page of list results.", - "type": "string" - }, - "dataSources": { - "description": "List of supported data sources and their transfer settings.", - "type": "array", - "items": { - "$ref": "DataSource" - } - } - }, - "id": "ListDataSourcesResponse" - }, - "DataSourceParameter": { - "description": "Represents a data source parameter with validation rules, so that\nparameters can be rendered in the UI. These parameters are given to us by\nsupported data sources, and include all needed information for rendering\nand validation.\nThus, whoever uses this api can decide to generate either generic ui,\nor custom data source specific forms.", - "type": "object", - "properties": { - "fields": { - "description": "When parameter is a record, describes child fields.", - "type": "array", - "items": { - "$ref": "DataSourceParameter" - } - }, - "maxValue": { - "description": "For integer and double values specifies maxminum allowed value.", - "format": "double", - "type": "number" - }, - "type": { - "enumDescriptions": [ - "Type unspecified.", - "String parameter.", - "Integer parameter (64-bits).\nWill be serialized to json as string.", - "Double precision floating point parameter.", - "Boolean parameter.", - "Record parameter.", - "Page ID for a Google+ Page." - ], - "enum": [ - "TYPE_UNSPECIFIED", - "STRING", - "INTEGER", - "DOUBLE", - "BOOLEAN", - "RECORD", - "PLUS_PAGE" - ], - "description": "Parameter type.", - "type": "string" - }, - "recurse": { - "description": "If set to true, schema should be taken from the parent with the same\nparameter_id. Only applicable when parameter type is RECORD.", - "type": "boolean" - }, - "description": { - "description": "Parameter description.", - "type": "string" - }, - "allowedValues": { - "description": "All possible values for the parameter.", - "type": "array", - "items": { - "type": "string" - } - }, - "validationHelpUrl": { - "description": "URL to a help document to further explain the naming requirements.", - "type": "string" - }, - "minValue": { - "description": "For integer and double values specifies minimum allowed value.", - "format": "double", - "type": "number" - }, - "validationRegex": { - "description": "Regular expression which can be used for parameter validation.", - "type": "string" - }, - "paramId": { - "description": "Parameter identifier.", - "type": "string" - }, - "required": { - "description": "Is parameter required.", - "type": "boolean" - }, - "repeated": { - "description": "Can parameter have multiple values.", - "type": "boolean" - }, - "displayName": { - "description": "Parameter display name in the user interface.", - "type": "string" - }, - "validationDescription": { - "description": "Description of the requirements for this field, in case the user input does\nnot fulfill the regex pattern or min/max values.", - "type": "string" - }, - "immutable": { - "description": "Cannot be changed after initial creation.", - "type": "boolean" - } - }, - "id": "DataSourceParameter" - }, - "ListTransferRunsResponse": { - "properties": { - "transferRuns": { - "description": "Output only. The stored pipeline transfer runs.", - "type": "array", - "items": { - "$ref": "TransferRun" - } - }, - "nextPageToken": { - "description": "Output only. The next-pagination token. For multiple-page list results,\nthis token can be used as the\n`ListTransferRunsRequest.page_token`\nto request the next page of list results.", - "type": "string" - } - }, - "id": "ListTransferRunsResponse", - "description": "The returned list of pipelines in the project.", - "type": "object" - }, - "ListLocationsResponse": { - "properties": { - "locations": { - "description": "A list of locations that matches the specified filter in the request.", - "type": "array", - "items": { - "$ref": "Location" - } - }, - "nextPageToken": { - "description": "The standard List next-page token.", - "type": "string" - } - }, - "id": "ListLocationsResponse", - "description": "The response message for Locations.ListLocations.", - "type": "object" - }, - "ListTransferConfigsResponse": { - "properties": { - "transferConfigs": { - "description": "Output only. The stored pipeline transfer configurations.", - "type": "array", - "items": { - "$ref": "TransferConfig" - } - }, - "nextPageToken": { - "description": "Output only. The next-pagination token. For multiple-page list results,\nthis token can be used as the\n`ListTransferConfigsRequest.page_token`\nto request the next page of list results.", - "type": "string" - } - }, - "id": "ListTransferConfigsResponse", - "description": "The returned list of pipelines in the project.", - "type": "object" - } - }, - "protocol": "rest", - "icons": { - "x32": "http://www.google.com/images/icons/product/search-32.gif", - "x16": "http://www.google.com/images/icons/product/search-16.gif" - }, - "canonicalName": "BigQuery Data Transfer", "auth": { "oauth2": { "scopes": { - "https://www.googleapis.com/auth/cloud-platform.read-only": { - "description": "View your data across Google Cloud Platform services" + "https://www.googleapis.com/auth/bigquery": { + "description": "View and manage your data in Google BigQuery" }, "https://www.googleapis.com/auth/cloud-platform": { "description": "View and manage your data across Google Cloud Platform services" }, - "https://www.googleapis.com/auth/bigquery": { - "description": "View and manage your data in Google BigQuery" + "https://www.googleapis.com/auth/cloud-platform.read-only": { + "description": "View your data across Google Cloud Platform services" } } } }, - "rootUrl": "https://bigquerydatatransfer.googleapis.com/", - "ownerDomain": "google.com", - "name": "bigquerydatatransfer", + "basePath": "", + "baseUrl": "https://bigquerydatatransfer.googleapis.com/", "batchPath": "batch", + "canonicalName": "BigQuery Data Transfer", + "description": "Transfers data from partner SaaS applications to Google BigQuery on a scheduled, managed basis.", + "discoveryVersion": "v1", + "documentationLink": "https://cloud.google.com/bigquery/", "fullyEncodeReservedExpansion": true, - "title": "BigQuery Data Transfer API", + "icons": { + "x16": "http://www.google.com/images/icons/product/search-16.gif", + "x32": "http://www.google.com/images/icons/product/search-32.gif" + }, + "id": "bigquerydatatransfer:v1", + "kind": "discovery#restDescription", + "name": "bigquerydatatransfer", + "ownerDomain": "google.com", "ownerName": "Google", + "parameters": { + "$.xgafv": { + "description": "V1 error format.", + "enum": [ + "1", + "2" + ], + "enumDescriptions": [ + "v1 error format", + "v2 error format" + ], + "location": "query", + "type": "string" + }, + "access_token": { + "description": "OAuth access token.", + "location": "query", + "type": "string" + }, + "alt": { + "default": "json", + "description": "Data format for response.", + "enum": [ + "json", + "media", + "proto" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json", + "Media download with context-dependent Content-Type", + "Responses with Content-Type of application/x-protobuf" + ], + "location": "query", + "type": "string" + }, + "bearer_token": { + "description": "OAuth bearer token.", + "location": "query", + "type": "string" + }, + "callback": { + "description": "JSONP", + "location": "query", + "type": "string" + }, + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "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.", + "location": "query", + "type": "string" + }, + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "pp": { + "default": "true", + "description": "Pretty-print response.", + "location": "query", + "type": "boolean" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", + "location": "query", + "type": "string" + }, + "uploadType": { + "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", + "location": "query", + "type": "string" + }, + "upload_protocol": { + "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", + "location": "query", + "type": "string" + } + }, + "protocol": "rest", "resources": { "projects": { "resources": { - "locations": { + "dataSources": { "methods": { - "list": { - "description": "Lists information about the supported locations for this service.", - "response": { - "$ref": "ListLocationsResponse" - }, + "checkValidCreds": { + "description": "Returns true if valid credentials exist for the given data source and\nrequesting user.\nSome data sources doesn't support service account, so we need to talk to\nthem on behalf of the end user. This API just checks whether we have OAuth\ntoken for the particular user, which is a pre-requisite before user can\ncreate a transfer config.", + "flatPath": "v1/projects/{projectsId}/dataSources/{dataSourcesId}:checkValidCreds", + "httpMethod": "POST", + "id": "bigquerydatatransfer.projects.dataSources.checkValidCreds", "parameterOrder": [ "name" ], + "parameters": { + "name": { + "description": "The data source in the form:\n`projects/{project_id}/dataSources/{data_source_id}`", + "location": "path", + "pattern": "^projects/[^/]+/dataSources/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}:checkValidCreds", + "request": { + "$ref": "CheckValidCredsRequest" + }, + "response": { + "$ref": "CheckValidCredsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/bigquery", + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + }, + "get": { + "description": "Retrieves a supported data source and returns its settings,\nwhich can be used for UI rendering.", + "flatPath": "v1/projects/{projectsId}/dataSources/{dataSourcesId}", "httpMethod": "GET", + "id": "bigquerydatatransfer.projects.dataSources.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The field will contain name of the resource requested, for example:\n`projects/{project_id}/dataSources/{data_source_id}`", + "location": "path", + "pattern": "^projects/[^/]+/dataSources/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "DataSource" + }, + "scopes": [ + "https://www.googleapis.com/auth/bigquery", + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + }, + "list": { + "description": "Lists supported data sources and returns their settings,\nwhich can be used for UI rendering.", + "flatPath": "v1/projects/{projectsId}/dataSources", + "httpMethod": "GET", + "id": "bigquerydatatransfer.projects.dataSources.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "pageSize": { + "description": "Page size. The default page size is the maximum value of 1000 results.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Pagination token, which can be used to request a specific page\nof `ListDataSourcesRequest` list results. For multiple-page\nresults, `ListDataSourcesResponse` outputs\na `next_page` token, which can be used as the\n`page_token` value to request the next page of list results.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "The BigQuery project id for which data sources should be returned.\nMust be in the form: `projects/{project_id}`", + "location": "path", + "pattern": "^projects/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+parent}/dataSources", + "response": { + "$ref": "ListDataSourcesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/bigquery", + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + } + } + }, + "locations": { + "methods": { + "get": { + "description": "Gets information about a location.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}", + "httpMethod": "GET", + "id": "bigquerydatatransfer.projects.locations.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Resource name for the location.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "Location" + }, + "scopes": [ + "https://www.googleapis.com/auth/bigquery", + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + }, + "list": { + "description": "Lists information about the supported locations for this service.", + "flatPath": "v1/projects/{projectsId}/locations", + "httpMethod": "GET", + "id": "bigquerydatatransfer.projects.locations.list", + "parameterOrder": [ + "name" + ], "parameters": { "filter": { - "location": "query", "description": "The standard list filter.", + "location": "query", "type": "string" }, "name": { "description": "The resource that owns the locations collection, if applicable.", - "required": true, - "type": "string", + "location": "path", "pattern": "^projects/[^/]+$", - "location": "path" + "required": true, + "type": "string" + }, + "pageSize": { + "description": "The standard list page size.", + "format": "int32", + "location": "query", + "type": "integer" }, "pageToken": { "description": "The standard list page token.", - "type": "string", - "location": "query" - }, - "pageSize": { "location": "query", - "description": "The standard list page size.", - "format": "int32", - "type": "integer" + "type": "string" } }, - "scopes": [ - "https://www.googleapis.com/auth/bigquery", - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ], - "flatPath": "v1/projects/{projectsId}/locations", "path": "v1/{+name}/locations", - "id": "bigquerydatatransfer.projects.locations.list" - }, - "get": { "response": { - "$ref": "Location" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "GET", - "parameters": { - "name": { - "description": "Resource name for the location.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+$", - "location": "path" - } + "$ref": "ListLocationsResponse" }, "scopes": [ "https://www.googleapis.com/auth/bigquery", "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/cloud-platform.read-only" - ], - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}", - "path": "v1/{+name}", - "id": "bigquerydatatransfer.projects.locations.get", - "description": "Get information about a location." + ] } }, "resources": { "dataSources": { "methods": { - "get": { - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/dataSources/{dataSourcesId}", - "path": "v1/{+name}", - "id": "bigquerydatatransfer.projects.locations.dataSources.get", - "description": "Retrieves a supported data source and returns its settings,\nwhich can be used for UI rendering.", - "response": { - "$ref": "DataSource" - }, + "checkValidCreds": { + "description": "Returns true if valid credentials exist for the given data source and\nrequesting user.\nSome data sources doesn't support service account, so we need to talk to\nthem on behalf of the end user. This API just checks whether we have OAuth\ntoken for the particular user, which is a pre-requisite before user can\ncreate a transfer config.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/dataSources/{dataSourcesId}:checkValidCreds", + "httpMethod": "POST", + "id": "bigquerydatatransfer.projects.locations.dataSources.checkValidCreds", "parameterOrder": [ "name" ], - "httpMethod": "GET", "parameters": { "name": { - "pattern": "^projects/[^/]+/locations/[^/]+/dataSources/[^/]+$", + "description": "The data source in the form:\n`projects/{project_id}/dataSources/{data_source_id}`", "location": "path", - "description": "The field will contain name of the resource requested, for example:\n`projects/{project_id}/dataSources/{data_source_id}`", + "pattern": "^projects/[^/]+/locations/[^/]+/dataSources/[^/]+$", "required": true, "type": "string" } }, - "scopes": [ - "https://www.googleapis.com/auth/bigquery", - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ] - }, - "list": { - "id": "bigquerydatatransfer.projects.locations.dataSources.list", - "path": "v1/{+parent}/dataSources", - "description": "Lists supported data sources and returns their settings,\nwhich can be used for UI rendering.", - "httpMethod": "GET", - "parameterOrder": [ - "parent" - ], - "response": { - "$ref": "ListDataSourcesResponse" - }, - "parameters": { - "pageSize": { - "location": "query", - "description": "Page size. The default page size is the maximum value of 1000 results.", - "format": "int32", - "type": "integer" - }, - "parent": { - "description": "The BigQuery project id for which data sources should be returned.\nMust be in the form: `projects/{project_id}`", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+$", - "location": "path" - }, - "pageToken": { - "location": "query", - "description": "Pagination token, which can be used to request a specific page\nof `ListDataSourcesRequest` list results. For multiple-page\nresults, `ListDataSourcesResponse` outputs\na `next_page` token, which can be used as the\n`page_token` value to request the next page of list results.", - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/bigquery", - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ], - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/dataSources" - }, - "checkValidCreds": { "path": "v1/{+name}:checkValidCreds", - "id": "bigquerydatatransfer.projects.locations.dataSources.checkValidCreds", - "description": "Returns true if valid credentials exist for the given data source and\nrequesting user.\nSome data sources doesn't support service account, so we need to talk to\nthem on behalf of the end user. This API just checks whether we have OAuth\ntoken for the particular user, which is a pre-requisite before user can\ncreate a transfer config.", "request": { "$ref": "CheckValidCredsRequest" }, "response": { "$ref": "CheckValidCredsResponse" }, - "parameterOrder": [ - "name" - ], - "httpMethod": "POST", "scopes": [ "https://www.googleapis.com/auth/bigquery", "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + }, + "get": { + "description": "Retrieves a supported data source and returns its settings,\nwhich can be used for UI rendering.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/dataSources/{dataSourcesId}", + "httpMethod": "GET", + "id": "bigquerydatatransfer.projects.locations.dataSources.get", + "parameterOrder": [ + "name" ], "parameters": { "name": { + "description": "The field will contain name of the resource requested, for example:\n`projects/{project_id}/dataSources/{data_source_id}`", "location": "path", - "description": "The data source in the form:\n`projects/{project_id}/dataSources/{data_source_id}`", + "pattern": "^projects/[^/]+/locations/[^/]+/dataSources/[^/]+$", "required": true, - "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+/dataSources/[^/]+$" + "type": "string" } }, - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/dataSources/{dataSourcesId}:checkValidCreds" + "path": "v1/{+name}", + "response": { + "$ref": "DataSource" + }, + "scopes": [ + "https://www.googleapis.com/auth/bigquery", + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + }, + "list": { + "description": "Lists supported data sources and returns their settings,\nwhich can be used for UI rendering.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/dataSources", + "httpMethod": "GET", + "id": "bigquerydatatransfer.projects.locations.dataSources.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "pageSize": { + "description": "Page size. The default page size is the maximum value of 1000 results.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Pagination token, which can be used to request a specific page\nof `ListDataSourcesRequest` list results. For multiple-page\nresults, `ListDataSourcesResponse` outputs\na `next_page` token, which can be used as the\n`page_token` value to request the next page of list results.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "The BigQuery project id for which data sources should be returned.\nMust be in the form: `projects/{project_id}`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+parent}/dataSources", + "response": { + "$ref": "ListDataSourcesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/bigquery", + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] } } }, "transferConfigs": { "methods": { - "scheduleRuns": { - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/transferConfigs/{transferConfigsId}:scheduleRuns", - "id": "bigquerydatatransfer.projects.locations.transferConfigs.scheduleRuns", - "path": "v1/{+parent}:scheduleRuns", - "request": { - "$ref": "ScheduleTransferRunsRequest" - }, - "description": "Creates transfer runs for a time range [start_time, end_time].\nFor each date - or whatever granularity the data source supports - in the\nrange, one transfer run is created.\nNote that runs are created per UTC time in the time range.", + "create": { + "description": "Creates a new data transfer configuration.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/transferConfigs", "httpMethod": "POST", + "id": "bigquerydatatransfer.projects.locations.transferConfigs.create", "parameterOrder": [ "parent" ], - "response": { - "$ref": "ScheduleTransferRunsResponse" - }, "parameters": { + "authorizationCode": { + "description": "Optional OAuth2 authorization code to use with this transfer configuration.\nThis is required if new credentials are needed, as indicated by\n`CheckValidCreds`.\nIn order to obtain authorization_code, please make a\nrequest to\nhttps://www.gstatic.com/bigquerydatatransfer/oauthz/auth?client_id=\u003cdatatransferapiclientid\u003e\u0026scope=\u003cdata_source_scopes\u003e\u0026redirect_uri=\u003credirect_uri\u003e\n\n* client_id should be OAuth client_id of BigQuery DTS API for the given\n data source returned by ListDataSources method.\n* data_source_scopes are the scopes returned by ListDataSources method.\n* redirect_uri is an optional parameter. If not specified, then\n authorization code is posted to the opener of authorization flow window.\n Otherwise it will be sent to the redirect uri. A special value of\n urn:ietf:wg:oauth:2.0:oob means that authorization code should be\n returned in the title bar of the browser, with the page text prompting\n the user to copy the code and paste it in the application.", + "location": "query", + "type": "string" + }, "parent": { - "description": "Transfer configuration name in the form:\n`projects/{project_id}/transferConfigs/{config_id}`.", + "description": "The BigQuery project id where the transfer configuration should be created.\nMust be in the format /projects/{project_id}/locations/{location_id}\nIf specified location and location of the destination bigquery dataset\ndo not match - the request will fail.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", "required": true, - "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+/transferConfigs/[^/]+$", - "location": "path" + "type": "string" } }, + "path": "v1/{+parent}/transferConfigs", + "request": { + "$ref": "TransferConfig" + }, + "response": { + "$ref": "TransferConfig" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Deletes a data transfer configuration,\nincluding any associated transfer runs and logs.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/transferConfigs/{transferConfigsId}", + "httpMethod": "DELETE", + "id": "bigquerydatatransfer.projects.locations.transferConfigs.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The field will contain name of the resource requested, for example:\n`projects/{project_id}/transferConfigs/{config_id}`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/transferConfigs/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "Empty" + }, "scopes": [ "https://www.googleapis.com/auth/bigquery", "https://www.googleapis.com/auth/cloud-platform" ] }, - "patch": { - "request": { - "$ref": "TransferConfig" - }, - "description": "Updates a data transfer configuration.\nAll fields must be set, even if they are not updated.", - "response": { - "$ref": "TransferConfig" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "PATCH", - "parameters": { - "name": { - "location": "path", - "description": "The resource name of the transfer config.\nTransfer config names have the form\n`projects/{project_id}/transferConfigs/{config_id}`.\nWhere `config_id` is usually a uuid, even though it is not\nguaranteed or required. The name is ignored when creating a transfer\nconfig.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+/transferConfigs/[^/]+$" - }, - "authorizationCode": { - "location": "query", - "description": "Optional OAuth2 authorization code to use with this transfer configuration.\nIf it is provided, the transfer configuration will be associated with the\nauthorizing user.\nIn order to obtain authorization_code, please make a\nrequest to\nhttps://www.gstatic.com/bigquerydatatransfer/oauthz/auth?client_id=\u003cdatatransferapiclientid\u003e&scope=\u003cdata_source_scopes\u003e&redirect_uri=\u003credirect_uri\u003e\n\n* client_id should be OAuth client_id of BigQuery DTS API for the given\n data source returned by ListDataSources method.\n* data_source_scopes are the scopes returned by ListDataSources method.\n* redirect_uri is an optional parameter. If not specified, then\n authorization code is posted to the opener of authorization flow window.\n Otherwise it will be sent to the redirect uri. A special value of\n urn:ietf:wg:oauth:2.0:oob means that authorization code should be\n returned in the title bar of the browser, with the page text prompting\n the user to copy the code and paste it in the application.", - "type": "string" - }, - "updateMask": { - "location": "query", - "description": "Required list of fields to be updated in this request.", - "format": "google-fieldmask", - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/bigquery", - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/transferConfigs/{transferConfigsId}", - "path": "v1/{+name}", - "id": "bigquerydatatransfer.projects.locations.transferConfigs.patch" - }, "get": { - "response": { - "$ref": "TransferConfig" - }, + "description": "Returns information about a data transfer config.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/transferConfigs/{transferConfigsId}", + "httpMethod": "GET", + "id": "bigquerydatatransfer.projects.locations.transferConfigs.get", "parameterOrder": [ "name" ], - "httpMethod": "GET", "parameters": { "name": { "description": "The field will contain name of the resource requested, for example:\n`projects/{project_id}/transferConfigs/{config_id}`", - "required": true, - "type": "string", + "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+/transferConfigs/[^/]+$", - "location": "path" + "required": true, + "type": "string" } }, + "path": "v1/{+name}", + "response": { + "$ref": "TransferConfig" + }, "scopes": [ "https://www.googleapis.com/auth/bigquery", "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/cloud-platform.read-only" - ], - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/transferConfigs/{transferConfigsId}", - "path": "v1/{+name}", - "id": "bigquerydatatransfer.projects.locations.transferConfigs.get", - "description": "Returns information about a data transfer config." - }, - "delete": { - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "DELETE", - "parameters": { - "name": { - "location": "path", - "description": "The field will contain name of the resource requested, for example:\n`projects/{project_id}/transferConfigs/{config_id}`", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+/transferConfigs/[^/]+$" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/bigquery", - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/transferConfigs/{transferConfigsId}", - "path": "v1/{+name}", - "id": "bigquerydatatransfer.projects.locations.transferConfigs.delete", - "description": "Deletes a data transfer configuration,\nincluding any associated transfer runs and logs." + ] }, "list": { - "path": "v1/{+parent}/transferConfigs", - "id": "bigquerydatatransfer.projects.locations.transferConfigs.list", "description": "Returns information about all data transfers in the project.", - "response": { - "$ref": "ListTransferConfigsResponse" - }, + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/transferConfigs", + "httpMethod": "GET", + "id": "bigquerydatatransfer.projects.locations.transferConfigs.list", "parameterOrder": [ "parent" ], - "httpMethod": "GET", "parameters": { + "dataSourceIds": { + "description": "When specified, only configurations of requested data sources are returned.", + "location": "query", + "repeated": true, + "type": "string" + }, "pageSize": { "description": "Page size. The default page size is the maximum value of 1000 results.", "format": "int32", - "type": "integer", - "location": "query" - }, - "parent": { - "pattern": "^projects/[^/]+/locations/[^/]+$", - "location": "path", - "description": "The BigQuery project id for which data sources\nshould be returned: `projects/{project_id}`.", - "required": true, - "type": "string" - }, - "dataSourceIds": { - "repeated": true, "location": "query", - "description": "When specified, only configurations of requested data sources are returned.", - "type": "string" + "type": "integer" }, "pageToken": { - "location": "query", "description": "Pagination token, which can be used to request a specific page\nof `ListTransfersRequest` list results. For multiple-page\nresults, `ListTransfersResponse` outputs\na `next_page` token, which can be used as the\n`page_token` value to request the next page of list results.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "The BigQuery project id for which data sources\nshould be returned: `projects/{project_id}`.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, "type": "string" } }, + "path": "v1/{+parent}/transferConfigs", + "response": { + "$ref": "ListTransferConfigsResponse" + }, "scopes": [ "https://www.googleapis.com/auth/bigquery", "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/cloud-platform.read-only" - ], - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/transferConfigs" + ] }, - "create": { - "response": { - "$ref": "TransferConfig" - }, + "patch": { + "description": "Updates a data transfer configuration.\nAll fields must be set, even if they are not updated.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/transferConfigs/{transferConfigsId}", + "httpMethod": "PATCH", + "id": "bigquerydatatransfer.projects.locations.transferConfigs.patch", "parameterOrder": [ - "parent" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/bigquery", - "https://www.googleapis.com/auth/cloud-platform" + "name" ], "parameters": { "authorizationCode": { - "description": "Optional OAuth2 authorization code to use with this transfer configuration.\nThis is required if new credentials are needed, as indicated by\n`CheckValidCreds`.\nIn order to obtain authorization_code, please make a\nrequest to\nhttps://www.gstatic.com/bigquerydatatransfer/oauthz/auth?client_id=\u003cdatatransferapiclientid\u003e&scope=\u003cdata_source_scopes\u003e&redirect_uri=\u003credirect_uri\u003e\n\n* client_id should be OAuth client_id of BigQuery DTS API for the given\n data source returned by ListDataSources method.\n* data_source_scopes are the scopes returned by ListDataSources method.\n* redirect_uri is an optional parameter. If not specified, then\n authorization code is posted to the opener of authorization flow window.\n Otherwise it will be sent to the redirect uri. A special value of\n urn:ietf:wg:oauth:2.0:oob means that authorization code should be\n returned in the title bar of the browser, with the page text prompting\n the user to copy the code and paste it in the application.", - "type": "string", - "location": "query" + "description": "Optional OAuth2 authorization code to use with this transfer configuration.\nIf it is provided, the transfer configuration will be associated with the\nauthorizing user.\nIn order to obtain authorization_code, please make a\nrequest to\nhttps://www.gstatic.com/bigquerydatatransfer/oauthz/auth?client_id=\u003cdatatransferapiclientid\u003e\u0026scope=\u003cdata_source_scopes\u003e\u0026redirect_uri=\u003credirect_uri\u003e\n\n* client_id should be OAuth client_id of BigQuery DTS API for the given\n data source returned by ListDataSources method.\n* data_source_scopes are the scopes returned by ListDataSources method.\n* redirect_uri is an optional parameter. If not specified, then\n authorization code is posted to the opener of authorization flow window.\n Otherwise it will be sent to the redirect uri. A special value of\n urn:ietf:wg:oauth:2.0:oob means that authorization code should be\n returned in the title bar of the browser, with the page text prompting\n the user to copy the code and paste it in the application.", + "location": "query", + "type": "string" }, - "parent": { - "description": "The BigQuery project id where the transfer configuration should be created.\nMust be in the format /projects/{project_id}/locations/{location_id}\nIf specified location and location of the destination bigquery dataset\ndo not match - the request will fail.", + "name": { + "description": "The resource name of the transfer config.\nTransfer config names have the form\n`projects/{project_id}/transferConfigs/{config_id}`.\nWhere `config_id` is usually a uuid, even though it is not\nguaranteed or required. The name is ignored when creating a transfer\nconfig.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/transferConfigs/[^/]+$", "required": true, - "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+$", - "location": "path" + "type": "string" + }, + "updateMask": { + "description": "Required list of fields to be updated in this request.", + "format": "google-fieldmask", + "location": "query", + "type": "string" } }, - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/transferConfigs", - "path": "v1/{+parent}/transferConfigs", - "id": "bigquerydatatransfer.projects.locations.transferConfigs.create", - "description": "Creates a new data transfer configuration.", + "path": "v1/{+name}", "request": { "$ref": "TransferConfig" - } + }, + "response": { + "$ref": "TransferConfig" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "scheduleRuns": { + "description": "Creates transfer runs for a time range [start_time, end_time].\nFor each date - or whatever granularity the data source supports - in the\nrange, one transfer run is created.\nNote that runs are created per UTC time in the time range.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/transferConfigs/{transferConfigsId}:scheduleRuns", + "httpMethod": "POST", + "id": "bigquerydatatransfer.projects.locations.transferConfigs.scheduleRuns", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Transfer configuration name in the form:\n`projects/{project_id}/transferConfigs/{config_id}`.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/transferConfigs/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+parent}:scheduleRuns", + "request": { + "$ref": "ScheduleTransferRunsRequest" + }, + "response": { + "$ref": "ScheduleTransferRunsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/bigquery", + "https://www.googleapis.com/auth/cloud-platform" + ] } }, "resources": { @@ -1031,93 +601,95 @@ "methods": { "delete": { "description": "Deletes the specified transfer run.", - "response": { - "$ref": "Empty" - }, + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/transferConfigs/{transferConfigsId}/runs/{runsId}", + "httpMethod": "DELETE", + "id": "bigquerydatatransfer.projects.locations.transferConfigs.runs.delete", "parameterOrder": [ "name" ], - "httpMethod": "DELETE", "parameters": { "name": { - "pattern": "^projects/[^/]+/locations/[^/]+/transferConfigs/[^/]+/runs/[^/]+$", - "location": "path", "description": "The field will contain name of the resource requested, for example:\n`projects/{project_id}/transferConfigs/{config_id}/runs/{run_id}`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/transferConfigs/[^/]+/runs/[^/]+$", "required": true, "type": "string" } }, + "path": "v1/{+name}", + "response": { + "$ref": "Empty" + }, "scopes": [ "https://www.googleapis.com/auth/bigquery", "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/transferConfigs/{transferConfigsId}/runs/{runsId}", - "path": "v1/{+name}", - "id": "bigquerydatatransfer.projects.locations.transferConfigs.runs.delete" + ] }, "get": { - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/transferConfigs/{transferConfigsId}/runs/{runsId}", - "path": "v1/{+name}", - "id": "bigquerydatatransfer.projects.locations.transferConfigs.runs.get", "description": "Returns information about the particular transfer run.", - "response": { - "$ref": "TransferRun" - }, + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/transferConfigs/{transferConfigsId}/runs/{runsId}", + "httpMethod": "GET", + "id": "bigquerydatatransfer.projects.locations.transferConfigs.runs.get", "parameterOrder": [ "name" ], - "httpMethod": "GET", + "parameters": { + "name": { + "description": "The field will contain name of the resource requested, for example:\n`projects/{project_id}/transferConfigs/{config_id}/runs/{run_id}`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/transferConfigs/[^/]+/runs/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "TransferRun" + }, "scopes": [ "https://www.googleapis.com/auth/bigquery", "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/cloud-platform.read-only" - ], - "parameters": { - "name": { - "location": "path", - "description": "The field will contain name of the resource requested, for example:\n`projects/{project_id}/transferConfigs/{config_id}/runs/{run_id}`", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+/transferConfigs/[^/]+/runs/[^/]+$" - } - } + ] }, "list": { - "response": { - "$ref": "ListTransferRunsResponse" - }, + "description": "Returns information about running and completed jobs.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/transferConfigs/{transferConfigsId}/runs", + "httpMethod": "GET", + "id": "bigquerydatatransfer.projects.locations.transferConfigs.runs.list", "parameterOrder": [ "parent" ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/bigquery", - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ], "parameters": { - "runAttempt": { + "pageSize": { + "description": "Page size. The default page size is the maximum value of 1000 results.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Pagination token, which can be used to request a specific page\nof `ListTransferRunsRequest` list results. For multiple-page\nresults, `ListTransferRunsResponse` outputs\na `next_page` token, which can be used as the\n`page_token` value to request the next page of list results.", "location": "query", - "enum": [ - "RUN_ATTEMPT_UNSPECIFIED", - "LATEST" - ], - "description": "Indicates how run attempts are to be pulled.", "type": "string" }, "parent": { "description": "Name of transfer configuration for which transfer runs should be retrieved.\nFormat of transfer configuration resource name is:\n`projects/{project_id}/transferConfigs/{config_id}`.", - "required": true, - "type": "string", + "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+/transferConfigs/[^/]+$", - "location": "path" + "required": true, + "type": "string" }, - "pageToken": { - "description": "Pagination token, which can be used to request a specific page\nof `ListTransferRunsRequest` list results. For multiple-page\nresults, `ListTransferRunsResponse` outputs\na `next_page` token, which can be used as the\n`page_token` value to request the next page of list results.", - "type": "string", - "location": "query" + "runAttempt": { + "description": "Indicates how run attempts are to be pulled.", + "enum": [ + "RUN_ATTEMPT_UNSPECIFIED", + "LATEST" + ], + "location": "query", + "type": "string" }, "states": { + "description": "When specified, only transfer runs with requested states are returned.", "enum": [ "TRANSFER_STATE_UNSPECIFIED", "PENDING", @@ -1126,76 +698,74 @@ "FAILED", "CANCELLED" ], - "description": "When specified, only transfer runs with requested states are returned.", - "type": "string", + "location": "query", "repeated": true, - "location": "query" - }, - "pageSize": { - "description": "Page size. The default page size is the maximum value of 1000 results.", - "format": "int32", - "type": "integer", - "location": "query" + "type": "string" } }, - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/transferConfigs/{transferConfigsId}/runs", "path": "v1/{+parent}/runs", - "id": "bigquerydatatransfer.projects.locations.transferConfigs.runs.list", - "description": "Returns information about running and completed jobs." + "response": { + "$ref": "ListTransferRunsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/bigquery", + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] } }, "resources": { "transferLogs": { "methods": { "list": { - "path": "v1/{+parent}/transferLogs", - "id": "bigquerydatatransfer.projects.locations.transferConfigs.runs.transferLogs.list", "description": "Returns user facing log messages for the data transfer run.", - "response": { - "$ref": "ListTransferLogsResponse" - }, + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/transferConfigs/{transferConfigsId}/runs/{runsId}/transferLogs", + "httpMethod": "GET", + "id": "bigquerydatatransfer.projects.locations.transferConfigs.runs.transferLogs.list", "parameterOrder": [ "parent" ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/bigquery", - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ], "parameters": { - "parent": { - "description": "Transfer run name in the form:\n`projects/{project_id}/transferConfigs/{config_Id}/runs/{run_id}`.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+/transferConfigs/[^/]+/runs/[^/]+$", - "location": "path" - }, - "pageToken": { - "description": "Pagination token, which can be used to request a specific page\nof `ListTransferLogsRequest` list results. For multiple-page\nresults, `ListTransferLogsResponse` outputs\na `next_page` token, which can be used as the\n`page_token` value to request the next page of list results.", - "type": "string", - "location": "query" - }, - "pageSize": { - "description": "Page size. The default page size is the maximum value of 1000 results.", - "format": "int32", - "type": "integer", - "location": "query" - }, "messageTypes": { - "repeated": true, - "location": "query", + "description": "Message types to return. If not populated - INFO, WARNING and ERROR\nmessages are returned.", "enum": [ "MESSAGE_SEVERITY_UNSPECIFIED", "INFO", "WARNING", "ERROR" ], - "description": "Message types to return. If not populated - INFO, WARNING and ERROR\nmessages are returned.", + "location": "query", + "repeated": true, + "type": "string" + }, + "pageSize": { + "description": "Page size. The default page size is the maximum value of 1000 results.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Pagination token, which can be used to request a specific page\nof `ListTransferLogsRequest` list results. For multiple-page\nresults, `ListTransferLogsResponse` outputs\na `next_page` token, which can be used as the\n`page_token` value to request the next page of list results.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Transfer run name in the form:\n`projects/{project_id}/transferConfigs/{config_Id}/runs/{run_id}`.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/transferConfigs/[^/]+/runs/[^/]+$", + "required": true, "type": "string" } }, - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/transferConfigs/{transferConfigsId}/runs/{runsId}/transferLogs" + "path": "v1/{+parent}/transferLogs", + "response": { + "$ref": "ListTransferLogsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/bigquery", + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] } } } @@ -1205,306 +775,205 @@ } } }, - "dataSources": { - "methods": { - "checkValidCreds": { - "request": { - "$ref": "CheckValidCredsRequest" - }, - "description": "Returns true if valid credentials exist for the given data source and\nrequesting user.\nSome data sources doesn't support service account, so we need to talk to\nthem on behalf of the end user. This API just checks whether we have OAuth\ntoken for the particular user, which is a pre-requisite before user can\ncreate a transfer config.", - "httpMethod": "POST", - "parameterOrder": [ - "name" - ], - "response": { - "$ref": "CheckValidCredsResponse" - }, - "parameters": { - "name": { - "location": "path", - "description": "The data source in the form:\n`projects/{project_id}/dataSources/{data_source_id}`", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/dataSources/[^/]+$" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/bigquery", - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ], - "flatPath": "v1/projects/{projectsId}/dataSources/{dataSourcesId}:checkValidCreds", - "id": "bigquerydatatransfer.projects.dataSources.checkValidCreds", - "path": "v1/{+name}:checkValidCreds" - }, - "get": { - "id": "bigquerydatatransfer.projects.dataSources.get", - "path": "v1/{+name}", - "description": "Retrieves a supported data source and returns its settings,\nwhich can be used for UI rendering.", - "httpMethod": "GET", - "response": { - "$ref": "DataSource" - }, - "parameterOrder": [ - "name" - ], - "parameters": { - "name": { - "description": "The field will contain name of the resource requested, for example:\n`projects/{project_id}/dataSources/{data_source_id}`", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/dataSources/[^/]+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/bigquery", - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ], - "flatPath": "v1/projects/{projectsId}/dataSources/{dataSourcesId}" - }, - "list": { - "description": "Lists supported data sources and returns their settings,\nwhich can be used for UI rendering.", - "response": { - "$ref": "ListDataSourcesResponse" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/bigquery", - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ], - "parameters": { - "parent": { - "location": "path", - "description": "The BigQuery project id for which data sources should be returned.\nMust be in the form: `projects/{project_id}`", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+$" - }, - "pageToken": { - "description": "Pagination token, which can be used to request a specific page\nof `ListDataSourcesRequest` list results. For multiple-page\nresults, `ListDataSourcesResponse` outputs\na `next_page` token, which can be used as the\n`page_token` value to request the next page of list results.", - "type": "string", - "location": "query" - }, - "pageSize": { - "location": "query", - "description": "Page size. The default page size is the maximum value of 1000 results.", - "format": "int32", - "type": "integer" - } - }, - "flatPath": "v1/projects/{projectsId}/dataSources", - "path": "v1/{+parent}/dataSources", - "id": "bigquerydatatransfer.projects.dataSources.list" - } - } - }, "transferConfigs": { "methods": { - "scheduleRuns": { - "request": { - "$ref": "ScheduleTransferRunsRequest" - }, - "description": "Creates transfer runs for a time range [start_time, end_time].\nFor each date - or whatever granularity the data source supports - in the\nrange, one transfer run is created.\nNote that runs are created per UTC time in the time range.", - "response": { - "$ref": "ScheduleTransferRunsResponse" - }, + "create": { + "description": "Creates a new data transfer configuration.", + "flatPath": "v1/projects/{projectsId}/transferConfigs", + "httpMethod": "POST", + "id": "bigquerydatatransfer.projects.transferConfigs.create", "parameterOrder": [ "parent" ], - "httpMethod": "POST", "parameters": { + "authorizationCode": { + "description": "Optional OAuth2 authorization code to use with this transfer configuration.\nThis is required if new credentials are needed, as indicated by\n`CheckValidCreds`.\nIn order to obtain authorization_code, please make a\nrequest to\nhttps://www.gstatic.com/bigquerydatatransfer/oauthz/auth?client_id=\u003cdatatransferapiclientid\u003e\u0026scope=\u003cdata_source_scopes\u003e\u0026redirect_uri=\u003credirect_uri\u003e\n\n* client_id should be OAuth client_id of BigQuery DTS API for the given\n data source returned by ListDataSources method.\n* data_source_scopes are the scopes returned by ListDataSources method.\n* redirect_uri is an optional parameter. If not specified, then\n authorization code is posted to the opener of authorization flow window.\n Otherwise it will be sent to the redirect uri. A special value of\n urn:ietf:wg:oauth:2.0:oob means that authorization code should be\n returned in the title bar of the browser, with the page text prompting\n the user to copy the code and paste it in the application.", + "location": "query", + "type": "string" + }, "parent": { - "description": "Transfer configuration name in the form:\n`projects/{project_id}/transferConfigs/{config_id}`.", + "description": "The BigQuery project id where the transfer configuration should be created.\nMust be in the format /projects/{project_id}/locations/{location_id}\nIf specified location and location of the destination bigquery dataset\ndo not match - the request will fail.", + "location": "path", + "pattern": "^projects/[^/]+$", "required": true, - "type": "string", - "pattern": "^projects/[^/]+/transferConfigs/[^/]+$", - "location": "path" + "type": "string" } }, + "path": "v1/{+parent}/transferConfigs", + "request": { + "$ref": "TransferConfig" + }, + "response": { + "$ref": "TransferConfig" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Deletes a data transfer configuration,\nincluding any associated transfer runs and logs.", + "flatPath": "v1/projects/{projectsId}/transferConfigs/{transferConfigsId}", + "httpMethod": "DELETE", + "id": "bigquerydatatransfer.projects.transferConfigs.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The field will contain name of the resource requested, for example:\n`projects/{project_id}/transferConfigs/{config_id}`", + "location": "path", + "pattern": "^projects/[^/]+/transferConfigs/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "Empty" + }, "scopes": [ "https://www.googleapis.com/auth/bigquery", "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/projects/{projectsId}/transferConfigs/{transferConfigsId}:scheduleRuns", - "path": "v1/{+parent}:scheduleRuns", - "id": "bigquerydatatransfer.projects.transferConfigs.scheduleRuns" + ] }, "get": { "description": "Returns information about a data transfer config.", - "response": { - "$ref": "TransferConfig" - }, + "flatPath": "v1/projects/{projectsId}/transferConfigs/{transferConfigsId}", + "httpMethod": "GET", + "id": "bigquerydatatransfer.projects.transferConfigs.get", "parameterOrder": [ "name" ], - "httpMethod": "GET", "parameters": { "name": { - "location": "path", "description": "The field will contain name of the resource requested, for example:\n`projects/{project_id}/transferConfigs/{config_id}`", + "location": "path", + "pattern": "^projects/[^/]+/transferConfigs/[^/]+$", "required": true, - "type": "string", - "pattern": "^projects/[^/]+/transferConfigs/[^/]+$" + "type": "string" } }, + "path": "v1/{+name}", + "response": { + "$ref": "TransferConfig" + }, "scopes": [ "https://www.googleapis.com/auth/bigquery", "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + }, + "list": { + "description": "Returns information about all data transfers in the project.", + "flatPath": "v1/projects/{projectsId}/transferConfigs", + "httpMethod": "GET", + "id": "bigquerydatatransfer.projects.transferConfigs.list", + "parameterOrder": [ + "parent" ], - "flatPath": "v1/projects/{projectsId}/transferConfigs/{transferConfigsId}", - "path": "v1/{+name}", - "id": "bigquerydatatransfer.projects.transferConfigs.get" + "parameters": { + "dataSourceIds": { + "description": "When specified, only configurations of requested data sources are returned.", + "location": "query", + "repeated": true, + "type": "string" + }, + "pageSize": { + "description": "Page size. The default page size is the maximum value of 1000 results.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Pagination token, which can be used to request a specific page\nof `ListTransfersRequest` list results. For multiple-page\nresults, `ListTransfersResponse` outputs\na `next_page` token, which can be used as the\n`page_token` value to request the next page of list results.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "The BigQuery project id for which data sources\nshould be returned: `projects/{project_id}`.", + "location": "path", + "pattern": "^projects/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+parent}/transferConfigs", + "response": { + "$ref": "ListTransferConfigsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/bigquery", + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] }, "patch": { - "request": { - "$ref": "TransferConfig" - }, "description": "Updates a data transfer configuration.\nAll fields must be set, even if they are not updated.", + "flatPath": "v1/projects/{projectsId}/transferConfigs/{transferConfigsId}", "httpMethod": "PATCH", + "id": "bigquerydatatransfer.projects.transferConfigs.patch", "parameterOrder": [ "name" ], - "response": { - "$ref": "TransferConfig" - }, "parameters": { "authorizationCode": { - "description": "Optional OAuth2 authorization code to use with this transfer configuration.\nIf it is provided, the transfer configuration will be associated with the\nauthorizing user.\nIn order to obtain authorization_code, please make a\nrequest to\nhttps://www.gstatic.com/bigquerydatatransfer/oauthz/auth?client_id=\u003cdatatransferapiclientid\u003e&scope=\u003cdata_source_scopes\u003e&redirect_uri=\u003credirect_uri\u003e\n\n* client_id should be OAuth client_id of BigQuery DTS API for the given\n data source returned by ListDataSources method.\n* data_source_scopes are the scopes returned by ListDataSources method.\n* redirect_uri is an optional parameter. If not specified, then\n authorization code is posted to the opener of authorization flow window.\n Otherwise it will be sent to the redirect uri. A special value of\n urn:ietf:wg:oauth:2.0:oob means that authorization code should be\n returned in the title bar of the browser, with the page text prompting\n the user to copy the code and paste it in the application.", - "type": "string", - "location": "query" - }, - "updateMask": { + "description": "Optional OAuth2 authorization code to use with this transfer configuration.\nIf it is provided, the transfer configuration will be associated with the\nauthorizing user.\nIn order to obtain authorization_code, please make a\nrequest to\nhttps://www.gstatic.com/bigquerydatatransfer/oauthz/auth?client_id=\u003cdatatransferapiclientid\u003e\u0026scope=\u003cdata_source_scopes\u003e\u0026redirect_uri=\u003credirect_uri\u003e\n\n* client_id should be OAuth client_id of BigQuery DTS API for the given\n data source returned by ListDataSources method.\n* data_source_scopes are the scopes returned by ListDataSources method.\n* redirect_uri is an optional parameter. If not specified, then\n authorization code is posted to the opener of authorization flow window.\n Otherwise it will be sent to the redirect uri. A special value of\n urn:ietf:wg:oauth:2.0:oob means that authorization code should be\n returned in the title bar of the browser, with the page text prompting\n the user to copy the code and paste it in the application.", "location": "query", - "description": "Required list of fields to be updated in this request.", - "format": "google-fieldmask", "type": "string" }, "name": { "description": "The resource name of the transfer config.\nTransfer config names have the form\n`projects/{project_id}/transferConfigs/{config_id}`.\nWhere `config_id` is usually a uuid, even though it is not\nguaranteed or required. The name is ignored when creating a transfer\nconfig.", - "required": true, - "type": "string", + "location": "path", "pattern": "^projects/[^/]+/transferConfigs/[^/]+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/bigquery", - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/projects/{projectsId}/transferConfigs/{transferConfigsId}", - "id": "bigquerydatatransfer.projects.transferConfigs.patch", - "path": "v1/{+name}" - }, - "delete": { - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "DELETE", - "scopes": [ - "https://www.googleapis.com/auth/bigquery", - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "name": { - "location": "path", - "description": "The field will contain name of the resource requested, for example:\n`projects/{project_id}/transferConfigs/{config_id}`", "required": true, - "type": "string", - "pattern": "^projects/[^/]+/transferConfigs/[^/]+$" + "type": "string" + }, + "updateMask": { + "description": "Required list of fields to be updated in this request.", + "format": "google-fieldmask", + "location": "query", + "type": "string" } }, - "flatPath": "v1/projects/{projectsId}/transferConfigs/{transferConfigsId}", "path": "v1/{+name}", - "id": "bigquerydatatransfer.projects.transferConfigs.delete", - "description": "Deletes a data transfer configuration,\nincluding any associated transfer runs and logs." - }, - "list": { - "flatPath": "v1/projects/{projectsId}/transferConfigs", - "path": "v1/{+parent}/transferConfigs", - "id": "bigquerydatatransfer.projects.transferConfigs.list", - "description": "Returns information about all data transfers in the project.", - "response": { - "$ref": "ListTransferConfigsResponse" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/bigquery", - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ], - "parameters": { - "pageSize": { - "description": "Page size. The default page size is the maximum value of 1000 results.", - "format": "int32", - "type": "integer", - "location": "query" - }, - "parent": { - "location": "path", - "description": "The BigQuery project id for which data sources\nshould be returned: `projects/{project_id}`.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+$" - }, - "dataSourceIds": { - "description": "When specified, only configurations of requested data sources are returned.", - "type": "string", - "repeated": true, - "location": "query" - }, - "pageToken": { - "location": "query", - "description": "Pagination token, which can be used to request a specific page\nof `ListTransfersRequest` list results. For multiple-page\nresults, `ListTransfersResponse` outputs\na `next_page` token, which can be used as the\n`page_token` value to request the next page of list results.", - "type": "string" - } - } - }, - "create": { - "response": { - "$ref": "TransferConfig" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/bigquery", - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "authorizationCode": { - "location": "query", - "description": "Optional OAuth2 authorization code to use with this transfer configuration.\nThis is required if new credentials are needed, as indicated by\n`CheckValidCreds`.\nIn order to obtain authorization_code, please make a\nrequest to\nhttps://www.gstatic.com/bigquerydatatransfer/oauthz/auth?client_id=\u003cdatatransferapiclientid\u003e&scope=\u003cdata_source_scopes\u003e&redirect_uri=\u003credirect_uri\u003e\n\n* client_id should be OAuth client_id of BigQuery DTS API for the given\n data source returned by ListDataSources method.\n* data_source_scopes are the scopes returned by ListDataSources method.\n* redirect_uri is an optional parameter. If not specified, then\n authorization code is posted to the opener of authorization flow window.\n Otherwise it will be sent to the redirect uri. A special value of\n urn:ietf:wg:oauth:2.0:oob means that authorization code should be\n returned in the title bar of the browser, with the page text prompting\n the user to copy the code and paste it in the application.", - "type": "string" - }, - "parent": { - "location": "path", - "description": "The BigQuery project id where the transfer configuration should be created.\nMust be in the format /projects/{project_id}/locations/{location_id}\nIf specified location and location of the destination bigquery dataset\ndo not match - the request will fail.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+$" - } - }, - "flatPath": "v1/projects/{projectsId}/transferConfigs", - "path": "v1/{+parent}/transferConfigs", - "id": "bigquerydatatransfer.projects.transferConfigs.create", - "description": "Creates a new data transfer configuration.", "request": { "$ref": "TransferConfig" - } + }, + "response": { + "$ref": "TransferConfig" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "scheduleRuns": { + "description": "Creates transfer runs for a time range [start_time, end_time].\nFor each date - or whatever granularity the data source supports - in the\nrange, one transfer run is created.\nNote that runs are created per UTC time in the time range.", + "flatPath": "v1/projects/{projectsId}/transferConfigs/{transferConfigsId}:scheduleRuns", + "httpMethod": "POST", + "id": "bigquerydatatransfer.projects.transferConfigs.scheduleRuns", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Transfer configuration name in the form:\n`projects/{project_id}/transferConfigs/{config_id}`.", + "location": "path", + "pattern": "^projects/[^/]+/transferConfigs/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+parent}:scheduleRuns", + "request": { + "$ref": "ScheduleTransferRunsRequest" + }, + "response": { + "$ref": "ScheduleTransferRunsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/bigquery", + "https://www.googleapis.com/auth/cloud-platform" + ] } }, "resources": { @@ -1512,83 +981,95 @@ "methods": { "delete": { "description": "Deletes the specified transfer run.", - "response": { - "$ref": "Empty" - }, + "flatPath": "v1/projects/{projectsId}/transferConfigs/{transferConfigsId}/runs/{runsId}", + "httpMethod": "DELETE", + "id": "bigquerydatatransfer.projects.transferConfigs.runs.delete", "parameterOrder": [ "name" ], - "httpMethod": "DELETE", "parameters": { "name": { - "location": "path", "description": "The field will contain name of the resource requested, for example:\n`projects/{project_id}/transferConfigs/{config_id}/runs/{run_id}`", + "location": "path", + "pattern": "^projects/[^/]+/transferConfigs/[^/]+/runs/[^/]+$", "required": true, - "type": "string", - "pattern": "^projects/[^/]+/transferConfigs/[^/]+/runs/[^/]+$" + "type": "string" } }, + "path": "v1/{+name}", + "response": { + "$ref": "Empty" + }, "scopes": [ "https://www.googleapis.com/auth/bigquery", "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/projects/{projectsId}/transferConfigs/{transferConfigsId}/runs/{runsId}", - "path": "v1/{+name}", - "id": "bigquerydatatransfer.projects.transferConfigs.runs.delete" + ] }, "get": { - "response": { - "$ref": "TransferRun" - }, + "description": "Returns information about the particular transfer run.", + "flatPath": "v1/projects/{projectsId}/transferConfigs/{transferConfigsId}/runs/{runsId}", + "httpMethod": "GET", + "id": "bigquerydatatransfer.projects.transferConfigs.runs.get", "parameterOrder": [ "name" ], - "httpMethod": "GET", "parameters": { "name": { - "location": "path", "description": "The field will contain name of the resource requested, for example:\n`projects/{project_id}/transferConfigs/{config_id}/runs/{run_id}`", + "location": "path", + "pattern": "^projects/[^/]+/transferConfigs/[^/]+/runs/[^/]+$", "required": true, - "type": "string", - "pattern": "^projects/[^/]+/transferConfigs/[^/]+/runs/[^/]+$" + "type": "string" } }, + "path": "v1/{+name}", + "response": { + "$ref": "TransferRun" + }, "scopes": [ "https://www.googleapis.com/auth/bigquery", "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/cloud-platform.read-only" - ], - "flatPath": "v1/projects/{projectsId}/transferConfigs/{transferConfigsId}/runs/{runsId}", - "path": "v1/{+name}", - "id": "bigquerydatatransfer.projects.transferConfigs.runs.get", - "description": "Returns information about the particular transfer run." + ] }, "list": { - "flatPath": "v1/projects/{projectsId}/transferConfigs/{transferConfigsId}/runs", - "path": "v1/{+parent}/runs", - "id": "bigquerydatatransfer.projects.transferConfigs.runs.list", "description": "Returns information about running and completed jobs.", - "response": { - "$ref": "ListTransferRunsResponse" - }, + "flatPath": "v1/projects/{projectsId}/transferConfigs/{transferConfigsId}/runs", + "httpMethod": "GET", + "id": "bigquerydatatransfer.projects.transferConfigs.runs.list", "parameterOrder": [ "parent" ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/bigquery", - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ], "parameters": { + "pageSize": { + "description": "Page size. The default page size is the maximum value of 1000 results.", + "format": "int32", + "location": "query", + "type": "integer" + }, "pageToken": { "description": "Pagination token, which can be used to request a specific page\nof `ListTransferRunsRequest` list results. For multiple-page\nresults, `ListTransferRunsResponse` outputs\na `next_page` token, which can be used as the\n`page_token` value to request the next page of list results.", - "type": "string", - "location": "query" + "location": "query", + "type": "string" + }, + "parent": { + "description": "Name of transfer configuration for which transfer runs should be retrieved.\nFormat of transfer configuration resource name is:\n`projects/{project_id}/transferConfigs/{config_id}`.", + "location": "path", + "pattern": "^projects/[^/]+/transferConfigs/[^/]+$", + "required": true, + "type": "string" + }, + "runAttempt": { + "description": "Indicates how run attempts are to be pulled.", + "enum": [ + "RUN_ATTEMPT_UNSPECIFIED", + "LATEST" + ], + "location": "query", + "type": "string" }, "states": { - "repeated": true, - "location": "query", + "description": "When specified, only transfer runs with requested states are returned.", "enum": [ "TRANSFER_STATE_UNSPECIFIED", "PENDING", @@ -1597,81 +1078,69 @@ "FAILED", "CANCELLED" ], - "description": "When specified, only transfer runs with requested states are returned.", - "type": "string" - }, - "pageSize": { "location": "query", - "description": "Page size. The default page size is the maximum value of 1000 results.", - "format": "int32", - "type": "integer" - }, - "runAttempt": { - "enum": [ - "RUN_ATTEMPT_UNSPECIFIED", - "LATEST" - ], - "description": "Indicates how run attempts are to be pulled.", - "type": "string", - "location": "query" - }, - "parent": { - "location": "path", - "description": "Name of transfer configuration for which transfer runs should be retrieved.\nFormat of transfer configuration resource name is:\n`projects/{project_id}/transferConfigs/{config_id}`.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/transferConfigs/[^/]+$" + "repeated": true, + "type": "string" } - } + }, + "path": "v1/{+parent}/runs", + "response": { + "$ref": "ListTransferRunsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/bigquery", + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] } }, "resources": { "transferLogs": { "methods": { "list": { - "flatPath": "v1/projects/{projectsId}/transferConfigs/{transferConfigsId}/runs/{runsId}/transferLogs", - "path": "v1/{+parent}/transferLogs", - "id": "bigquerydatatransfer.projects.transferConfigs.runs.transferLogs.list", "description": "Returns user facing log messages for the data transfer run.", - "response": { - "$ref": "ListTransferLogsResponse" - }, + "flatPath": "v1/projects/{projectsId}/transferConfigs/{transferConfigsId}/runs/{runsId}/transferLogs", + "httpMethod": "GET", + "id": "bigquerydatatransfer.projects.transferConfigs.runs.transferLogs.list", "parameterOrder": [ "parent" ], - "httpMethod": "GET", "parameters": { - "pageSize": { - "description": "Page size. The default page size is the maximum value of 1000 results.", - "format": "int32", - "type": "integer", - "location": "query" - }, "messageTypes": { + "description": "Message types to return. If not populated - INFO, WARNING and ERROR\nmessages are returned.", "enum": [ "MESSAGE_SEVERITY_UNSPECIFIED", "INFO", "WARNING", "ERROR" ], - "description": "Message types to return. If not populated - INFO, WARNING and ERROR\nmessages are returned.", - "type": "string", + "location": "query", "repeated": true, - "location": "query" + "type": "string" + }, + "pageSize": { + "description": "Page size. The default page size is the maximum value of 1000 results.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Pagination token, which can be used to request a specific page\nof `ListTransferLogsRequest` list results. For multiple-page\nresults, `ListTransferLogsResponse` outputs\na `next_page` token, which can be used as the\n`page_token` value to request the next page of list results.", + "location": "query", + "type": "string" }, "parent": { "description": "Transfer run name in the form:\n`projects/{project_id}/transferConfigs/{config_Id}/runs/{run_id}`.", - "required": true, - "type": "string", + "location": "path", "pattern": "^projects/[^/]+/transferConfigs/[^/]+/runs/[^/]+$", - "location": "path" - }, - "pageToken": { - "location": "query", - "description": "Pagination token, which can be used to request a specific page\nof `ListTransferLogsRequest` list results. For multiple-page\nresults, `ListTransferLogsResponse` outputs\na `next_page` token, which can be used as the\n`page_token` value to request the next page of list results.", + "required": true, "type": "string" } }, + "path": "v1/{+parent}/transferLogs", + "response": { + "$ref": "ListTransferLogsResponse" + }, "scopes": [ "https://www.googleapis.com/auth/bigquery", "https://www.googleapis.com/auth/cloud-platform", @@ -1687,97 +1156,628 @@ } } }, - "parameters": { - "quotaUser": { - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", - "type": "string", - "location": "query" + "revision": "20180317", + "rootUrl": "https://bigquerydatatransfer.googleapis.com/", + "schemas": { + "CheckValidCredsRequest": { + "description": "A request to determine whether the user has valid credentials. This method\nis used to limit the number of OAuth popups in the user interface. The\nuser id is inferred from the API call context.\nIf the data source has the Google+ authorization type, this method\nreturns false, as it cannot be determined whether the credentials are\nalready valid merely based on the user id.", + "id": "CheckValidCredsRequest", + "properties": {}, + "type": "object" }, - "pp": { - "description": "Pretty-print response.", - "type": "boolean", - "default": "true", - "location": "query" + "CheckValidCredsResponse": { + "description": "A response indicating whether the credentials exist and are valid.", + "id": "CheckValidCredsResponse", + "properties": { + "hasValidCreds": { + "description": "If set to `true`, the credentials exist and are valid.", + "type": "boolean" + } + }, + "type": "object" }, - "oauth_token": { - "location": "query", - "description": "OAuth 2.0 token for the current user.", - "type": "string" + "DataSource": { + "description": "Represents data source metadata. Metadata is sufficient to\nrender UI and request proper OAuth tokens.", + "id": "DataSource", + "properties": { + "authorizationType": { + "description": "Indicates the type of authorization.", + "enum": [ + "AUTHORIZATION_TYPE_UNSPECIFIED", + "AUTHORIZATION_CODE", + "GOOGLE_PLUS_AUTHORIZATION_CODE" + ], + "enumDescriptions": [ + "Type unspecified.", + "Use OAuth 2 authorization codes that can be exchanged\nfor a refresh token on the backend.", + "Return an authorization code for a given Google+ page that can then be\nexchanged for a refresh token on the backend." + ], + "type": "string" + }, + "clientId": { + "description": "Data source client id which should be used to receive refresh token.\nWhen not supplied, no offline credentials are populated for data transfer.", + "type": "string" + }, + "dataRefreshType": { + "description": "Specifies whether the data source supports automatic data refresh for the\npast few days, and how it's supported.\nFor some data sources, data might not be complete until a few days later,\nso it's useful to refresh data automatically.", + "enum": [ + "DATA_REFRESH_TYPE_UNSPECIFIED", + "SLIDING_WINDOW", + "CUSTOM_SLIDING_WINDOW" + ], + "enumDescriptions": [ + "The data source won't support data auto refresh, which is default value.", + "The data source supports data auto refresh, and runs will be scheduled\nfor the past few days. Does not allow custom values to be set for each\ntransfer config.", + "The data source supports data auto refresh, and runs will be scheduled\nfor the past few days. Allows custom values to be set for each transfer\nconfig." + ], + "type": "string" + }, + "dataSourceId": { + "description": "Data source id.", + "type": "string" + }, + "defaultDataRefreshWindowDays": { + "description": "Default data refresh window on days.\nOnly meaningful when `data_refresh_type` = `SLIDING_WINDOW`.", + "format": "int32", + "type": "integer" + }, + "defaultSchedule": { + "description": "Default data transfer schedule.\nExamples of valid schedules include:\n`1st,3rd monday of month 15:30`,\n`every wed,fri of jan,jun 13:15`, and\n`first sunday of quarter 00:00`.", + "type": "string" + }, + "description": { + "description": "User friendly data source description string.", + "type": "string" + }, + "displayName": { + "description": "User friendly data source name.", + "type": "string" + }, + "helpUrl": { + "description": "Url for the help document for this data source.", + "type": "string" + }, + "manualRunsDisabled": { + "description": "Disables backfilling and manual run scheduling\nfor the data source.", + "type": "boolean" + }, + "minimumScheduleInterval": { + "description": "The minimum interval for scheduler to schedule runs.", + "format": "google-duration", + "type": "string" + }, + "name": { + "description": "Data source resource name.", + "type": "string" + }, + "parameters": { + "description": "Data source parameters.", + "items": { + "$ref": "DataSourceParameter" + }, + "type": "array" + }, + "scopes": { + "description": "Api auth scopes for which refresh token needs to be obtained. Only valid\nwhen `client_id` is specified. Ignored otherwise. These are scopes needed\nby a data source to prepare data and ingest them into BigQuery,\ne.g., https://www.googleapis.com/auth/bigquery", + "items": { + "type": "string" + }, + "type": "array" + }, + "supportsCustomSchedule": { + "description": "Specifies whether the data source supports a user defined schedule, or\noperates on the default schedule.\nWhen set to `true`, user can override default schedule.", + "type": "boolean" + }, + "supportsMultipleTransfers": { + "description": "Indicates whether the data source supports multiple transfers\nto different BigQuery targets.", + "type": "boolean" + }, + "transferType": { + "description": "Deprecated. This field has no effect.", + "enum": [ + "TRANSFER_TYPE_UNSPECIFIED", + "BATCH", + "STREAMING" + ], + "enumDescriptions": [ + "Invalid or Unknown transfer type placeholder.", + "Batch data transfer.", + "Streaming data transfer. Streaming data source currently doesn't\nsupport multiple transfer configs per project." + ], + "type": "string" + }, + "updateDeadlineSeconds": { + "description": "The number of seconds to wait for an update from the data source\nbefore BigQuery marks the transfer as failed.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" }, - "bearer_token": { - "description": "OAuth bearer token.", - "type": "string", - "location": "query" + "DataSourceParameter": { + "description": "Represents a data source parameter with validation rules, so that\nparameters can be rendered in the UI. These parameters are given to us by\nsupported data sources, and include all needed information for rendering\nand validation.\nThus, whoever uses this api can decide to generate either generic ui,\nor custom data source specific forms.", + "id": "DataSourceParameter", + "properties": { + "allowedValues": { + "description": "All possible values for the parameter.", + "items": { + "type": "string" + }, + "type": "array" + }, + "description": { + "description": "Parameter description.", + "type": "string" + }, + "displayName": { + "description": "Parameter display name in the user interface.", + "type": "string" + }, + "fields": { + "description": "When parameter is a record, describes child fields.", + "items": { + "$ref": "DataSourceParameter" + }, + "type": "array" + }, + "immutable": { + "description": "Cannot be changed after initial creation.", + "type": "boolean" + }, + "maxValue": { + "description": "For integer and double values specifies maxminum allowed value.", + "format": "double", + "type": "number" + }, + "minValue": { + "description": "For integer and double values specifies minimum allowed value.", + "format": "double", + "type": "number" + }, + "paramId": { + "description": "Parameter identifier.", + "type": "string" + }, + "recurse": { + "description": "If set to true, schema should be taken from the parent with the same\nparameter_id. Only applicable when parameter type is RECORD.", + "type": "boolean" + }, + "repeated": { + "description": "Can parameter have multiple values.", + "type": "boolean" + }, + "required": { + "description": "Is parameter required.", + "type": "boolean" + }, + "type": { + "description": "Parameter type.", + "enum": [ + "TYPE_UNSPECIFIED", + "STRING", + "INTEGER", + "DOUBLE", + "BOOLEAN", + "RECORD", + "PLUS_PAGE" + ], + "enumDescriptions": [ + "Type unspecified.", + "String parameter.", + "Integer parameter (64-bits).\nWill be serialized to json as string.", + "Double precision floating point parameter.", + "Boolean parameter.", + "Record parameter.", + "Page ID for a Google+ Page." + ], + "type": "string" + }, + "validationDescription": { + "description": "Description of the requirements for this field, in case the user input does\nnot fulfill the regex pattern or min/max values.", + "type": "string" + }, + "validationHelpUrl": { + "description": "URL to a help document to further explain the naming requirements.", + "type": "string" + }, + "validationRegex": { + "description": "Regular expression which can be used for parameter validation.", + "type": "string" + } + }, + "type": "object" }, - "upload_protocol": { - "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", - "type": "string", - "location": "query" + "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" }, - "prettyPrint": { - "description": "Returns response with indentations and line breaks.", - "type": "boolean", - "default": "true", - "location": "query" + "ListDataSourcesResponse": { + "description": "Returns list of supported data sources and their metadata.", + "id": "ListDataSourcesResponse", + "properties": { + "dataSources": { + "description": "List of supported data sources and their transfer settings.", + "items": { + "$ref": "DataSource" + }, + "type": "array" + }, + "nextPageToken": { + "description": "Output only. The next-pagination token. For multiple-page list results,\nthis token can be used as the\n`ListDataSourcesRequest.page_token`\nto request the next page of list results.", + "type": "string" + } + }, + "type": "object" }, - "fields": { - "location": "query", - "description": "Selector specifying which fields to include in a partial response.", - "type": "string" + "ListLocationsResponse": { + "description": "The response message for Locations.ListLocations.", + "id": "ListLocationsResponse", + "properties": { + "locations": { + "description": "A list of locations that matches the specified filter in the request.", + "items": { + "$ref": "Location" + }, + "type": "array" + }, + "nextPageToken": { + "description": "The standard List next-page token.", + "type": "string" + } + }, + "type": "object" }, - "uploadType": { - "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", - "type": "string", - "location": "query" + "ListTransferConfigsResponse": { + "description": "The returned list of pipelines in the project.", + "id": "ListTransferConfigsResponse", + "properties": { + "nextPageToken": { + "description": "Output only. The next-pagination token. For multiple-page list results,\nthis token can be used as the\n`ListTransferConfigsRequest.page_token`\nto request the next page of list results.", + "type": "string" + }, + "transferConfigs": { + "description": "Output only. The stored pipeline transfer configurations.", + "items": { + "$ref": "TransferConfig" + }, + "type": "array" + } + }, + "type": "object" }, - "$.xgafv": { - "enum": [ - "1", - "2" - ], - "description": "V1 error format.", - "type": "string", - "enumDescriptions": [ - "v1 error format", - "v2 error format" - ], - "location": "query" + "ListTransferLogsResponse": { + "description": "The returned list transfer run messages.", + "id": "ListTransferLogsResponse", + "properties": { + "nextPageToken": { + "description": "Output only. The next-pagination token. For multiple-page list results,\nthis token can be used as the\n`GetTransferRunLogRequest.page_token`\nto request the next page of list results.", + "type": "string" + }, + "transferMessages": { + "description": "Output only. The stored pipeline transfer messages.", + "items": { + "$ref": "TransferMessage" + }, + "type": "array" + } + }, + "type": "object" }, - "callback": { - "location": "query", - "description": "JSONP", - "type": "string" + "ListTransferRunsResponse": { + "description": "The returned list of pipelines in the project.", + "id": "ListTransferRunsResponse", + "properties": { + "nextPageToken": { + "description": "Output only. The next-pagination token. For multiple-page list results,\nthis token can be used as the\n`ListTransferRunsRequest.page_token`\nto request the next page of list results.", + "type": "string" + }, + "transferRuns": { + "description": "Output only. The stored pipeline transfer runs.", + "items": { + "$ref": "TransferRun" + }, + "type": "array" + } + }, + "type": "object" }, - "alt": { - "enum": [ - "json", - "media", - "proto" - ], - "type": "string", - "enumDescriptions": [ - "Responses with Content-Type of application/json", - "Media download with context-dependent Content-Type", - "Responses with Content-Type of application/x-protobuf" - ], - "location": "query", - "description": "Data format for response.", - "default": "json" + "Location": { + "description": "A resource that represents Google Cloud Platform location.", + "id": "Location", + "properties": { + "displayName": { + "description": "The friendly name for this location, typically a nearby city name.\nFor example, \"Tokyo\".", + "type": "string" + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Cross-service attributes for the location. For example\n\n {\"cloud.googleapis.com/region\": \"us-east1\"}", + "type": "object" + }, + "locationId": { + "description": "The canonical id for this location. For example: `\"us-east1\"`.", + "type": "string" + }, + "metadata": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "description": "Service-specific metadata. For example the available capacity at the given\nlocation.", + "type": "object" + }, + "name": { + "description": "Resource name for the location, which may vary between implementations.\nFor example: `\"projects/example-project/locations/us-east1\"`", + "type": "string" + } + }, + "type": "object" }, - "access_token": { - "location": "query", - "description": "OAuth access token.", - "type": "string" + "ScheduleTransferRunsRequest": { + "description": "A request to schedule transfer runs for a time range.", + "id": "ScheduleTransferRunsRequest", + "properties": { + "endTime": { + "description": "End time of the range of transfer runs. For example,\n`\"2017-05-30T00:00:00+00:00\"`.", + "format": "google-datetime", + "type": "string" + }, + "startTime": { + "description": "Start time of the range of transfer runs. For example,\n`\"2017-05-25T00:00:00+00:00\"`.", + "format": "google-datetime", + "type": "string" + } + }, + "type": "object" }, - "key": { - "location": "query", - "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.", - "type": "string" + "ScheduleTransferRunsResponse": { + "description": "A response to schedule transfer runs for a time range.", + "id": "ScheduleTransferRunsResponse", + "properties": { + "runs": { + "description": "The transfer runs that were scheduled.", + "items": { + "$ref": "TransferRun" + }, + "type": "array" + } + }, + "type": "object" + }, + "Status": { + "description": "The `Status` type defines a logical error model that is suitable for different\nprogramming environments, including REST APIs and RPC APIs. It is used by\n[gRPC](https://github.com/grpc). The error model is designed to be:\n\n- Simple to use and understand for most users\n- Flexible enough to meet unexpected needs\n\n# Overview\n\nThe `Status` message contains three pieces of data: error code, error message,\nand error details. The error code should be an enum value of\ngoogle.rpc.Code, but it may accept additional error codes if needed. The\nerror message should be a developer-facing English message that helps\ndevelopers *understand* and *resolve* the error. If a localized user-facing\nerror message is needed, put the localized message in the error details or\nlocalize it in the client. The optional error details may contain arbitrary\ninformation about the error. There is a predefined set of error detail types\nin the package `google.rpc` that can be used for common error conditions.\n\n# Language mapping\n\nThe `Status` message is the logical representation of the error model, but it\nis not necessarily the actual wire format. When the `Status` message is\nexposed in different client libraries and different wire protocols, it can be\nmapped differently. For example, it will likely be mapped to some exceptions\nin Java, but more likely mapped to some error codes in C.\n\n# Other uses\n\nThe error model and the `Status` message can be used in a variety of\nenvironments, either with or without APIs, to provide a\nconsistent developer experience across different environments.\n\nExample uses of this error model include:\n\n- Partial errors. If a service needs to return partial errors to the client,\n it may embed the `Status` in the normal response to indicate the partial\n errors.\n\n- Workflow errors. A typical workflow has multiple steps. Each step may\n have a `Status` message for error reporting.\n\n- Batch operations. If a client uses batch request and batch response, the\n `Status` message should be used directly inside batch response, one for\n each error sub-response.\n\n- Asynchronous operations. If an API call embeds asynchronous operation\n results in its response, the status of those operations should be\n represented directly using the `Status` message.\n\n- Logging. If some API errors are stored in logs, the message `Status` could\n be used directly after any stripping needed for security/privacy reasons.", + "id": "Status", + "properties": { + "code": { + "description": "The status code, which should be an enum value of google.rpc.Code.", + "format": "int32", + "type": "integer" + }, + "details": { + "description": "A list of messages that carry the error details. There is a common set of\nmessage types for APIs to use.", + "items": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "A developer-facing error message, which should be in English. Any\nuser-facing error message should be localized and sent in the\ngoogle.rpc.Status.details field, or localized by the client.", + "type": "string" + } + }, + "type": "object" + }, + "TransferConfig": { + "description": "Represents a data transfer configuration. A transfer configuration\ncontains all metadata needed to perform a data transfer. For example,\n`destination_dataset_id` specifies where data should be stored.\nWhen a new transfer configuration is created, the specified\n`destination_dataset_id` is created when needed and shared with the\nappropriate data source service account.\nNext id: 21", + "id": "TransferConfig", + "properties": { + "dataRefreshWindowDays": { + "description": "The number of days to look back to automatically refresh the data.\nFor example, if `data_refresh_window_days = 10`, then every day\nBigQuery reingests data for [today-10, today-1], rather than ingesting data\nfor just [today-1].\nOnly valid if the data source supports the feature. Set the value to 0\nto use the default value.", + "format": "int32", + "type": "integer" + }, + "dataSourceId": { + "description": "Data source id. Cannot be changed once data transfer is created.", + "type": "string" + }, + "datasetRegion": { + "description": "Output only. Region in which BigQuery dataset is located.", + "type": "string" + }, + "destinationDatasetId": { + "description": "The BigQuery target dataset id.", + "type": "string" + }, + "disabled": { + "description": "Is this config disabled. When set to true, no runs are scheduled\nfor a given transfer.", + "type": "boolean" + }, + "displayName": { + "description": "User specified display name for the data transfer.", + "type": "string" + }, + "name": { + "description": "The resource name of the transfer config.\nTransfer config names have the form\n`projects/{project_id}/transferConfigs/{config_id}`.\nWhere `config_id` is usually a uuid, even though it is not\nguaranteed or required. The name is ignored when creating a transfer\nconfig.", + "type": "string" + }, + "nextRunTime": { + "description": "Output only. Next time when data transfer will run.", + "format": "google-datetime", + "type": "string" + }, + "params": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "description": "Data transfer specific parameters.", + "type": "object" + }, + "schedule": { + "description": "Data transfer schedule.\nIf the data source does not support a custom schedule, this should be\nempty. If it is empty, the default value for the data source will be\nused.\nThe specified times are in UTC.\nExamples of valid format:\n`1st,3rd monday of month 15:30`,\n`every wed,fri of jan,jun 13:15`, and\n`first sunday of quarter 00:00`.\nSee more explanation about the format here:\nhttps://cloud.google.com/appengine/docs/flexible/python/scheduling-jobs-with-cron-yaml#the_schedule_format\nNOTE: the granularity should be at least 8 hours, or less frequent.", + "type": "string" + }, + "state": { + "description": "Output only. State of the most recently updated transfer run.", + "enum": [ + "TRANSFER_STATE_UNSPECIFIED", + "PENDING", + "RUNNING", + "SUCCEEDED", + "FAILED", + "CANCELLED" + ], + "enumDescriptions": [ + "State placeholder.", + "Data transfer is scheduled and is waiting to be picked up by\ndata transfer backend.", + "Data transfer is in progress.", + "Data transfer completed successsfully.", + "Data transfer failed.", + "Data transfer is cancelled." + ], + "type": "string" + }, + "updateTime": { + "description": "Output only. Data transfer modification time. Ignored by server on input.", + "format": "google-datetime", + "type": "string" + }, + "userId": { + "description": "Output only. Unique ID of the user on whose behalf transfer is done.\nApplicable only to data sources that do not support service accounts.\nWhen set to 0, the data source service account credentials are used.\nMay be negative. Note, that this identifier is not stable.\nIt may change over time even for the same user.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "TransferMessage": { + "description": "Represents a user facing message for a particular data transfer run.", + "id": "TransferMessage", + "properties": { + "messageText": { + "description": "Message text.", + "type": "string" + }, + "messageTime": { + "description": "Time when message was logged.", + "format": "google-datetime", + "type": "string" + }, + "severity": { + "description": "Message severity.", + "enum": [ + "MESSAGE_SEVERITY_UNSPECIFIED", + "INFO", + "WARNING", + "ERROR" + ], + "enumDescriptions": [ + "No severity specified.", + "Informational message.", + "Warning message.", + "Error message." + ], + "type": "string" + } + }, + "type": "object" + }, + "TransferRun": { + "description": "Represents a data transfer run.\nNext id: 27", + "id": "TransferRun", + "properties": { + "dataSourceId": { + "description": "Output only. Data source id.", + "type": "string" + }, + "destinationDatasetId": { + "description": "Output only. The BigQuery target dataset id.", + "type": "string" + }, + "endTime": { + "description": "Output only. Time when transfer run ended.\nParameter ignored by server for input requests.", + "format": "google-datetime", + "type": "string" + }, + "errorStatus": { + "$ref": "Status", + "description": "Status of the transfer run." + }, + "name": { + "description": "The resource name of the transfer run.\nTransfer run names have the form\n`projects/{project_id}/locations/{location}/transferConfigs/{config_id}/runs/{run_id}`.\nThe name is ignored when creating a transfer run.", + "type": "string" + }, + "params": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "description": "Output only. Data transfer specific parameters.", + "type": "object" + }, + "runTime": { + "description": "For batch transfer runs, specifies the date and time that\ndata should be ingested.", + "format": "google-datetime", + "type": "string" + }, + "schedule": { + "description": "Output only. Describes the schedule of this transfer run if it was\ncreated as part of a regular schedule. For batch transfer runs that are\nscheduled manually, this is empty.\nNOTE: the system might choose to delay the schedule depending on the\ncurrent load, so `schedule_time` doesn't always matches this.", + "type": "string" + }, + "scheduleTime": { + "description": "Minimum time after which a transfer run can be started.", + "format": "google-datetime", + "type": "string" + }, + "startTime": { + "description": "Output only. Time when transfer run was started.\nParameter ignored by server for input requests.", + "format": "google-datetime", + "type": "string" + }, + "state": { + "description": "Data transfer run state. Ignored for input requests.", + "enum": [ + "TRANSFER_STATE_UNSPECIFIED", + "PENDING", + "RUNNING", + "SUCCEEDED", + "FAILED", + "CANCELLED" + ], + "enumDescriptions": [ + "State placeholder.", + "Data transfer is scheduled and is waiting to be picked up by\ndata transfer backend.", + "Data transfer is in progress.", + "Data transfer completed successsfully.", + "Data transfer failed.", + "Data transfer is cancelled." + ], + "type": "string" + }, + "updateTime": { + "description": "Output only. Last time the data transfer run state was updated.", + "format": "google-datetime", + "type": "string" + }, + "userId": { + "description": "Output only. Unique ID of the user on whose behalf transfer is done.\nApplicable only to data sources that do not support service accounts.\nWhen set to 0, the data source service account credentials are used.\nMay be negative. Note, that this identifier is not stable.\nIt may change over time even for the same user.", + "format": "int64", + "type": "string" + } + }, + "type": "object" } }, + "servicePath": "", + "title": "BigQuery Data Transfer API", "version": "v1", - "baseUrl": "https://bigquerydatatransfer.googleapis.com/", - "kind": "discovery#restDescription", - "description": "Transfers data from partner SaaS applications to Google BigQuery on a scheduled, managed basis.", - "servicePath": "" -} + "version_module": true +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/bigquerydatatransfer/v1/bigquerydatatransfer-gen.go b/vendor/google.golang.org/api/bigquerydatatransfer/v1/bigquerydatatransfer-gen.go index 908c508f0..b28484300 100644 --- a/vendor/google.golang.org/api/bigquerydatatransfer/v1/bigquerydatatransfer-gen.go +++ b/vendor/google.golang.org/api/bigquerydatatransfer/v1/bigquerydatatransfer-gen.go @@ -346,10 +346,7 @@ type DataSource struct { // to different BigQuery targets. SupportsMultipleTransfers bool `json:"supportsMultipleTransfers,omitempty"` - // TransferType: Transfer type. Currently supports only batch - // transfers, - // which are transfers that use the BigQuery batch APIs (load or - // query) to ingest the data. + // TransferType: Deprecated. This field has no effect. // // Possible values: // "TRANSFER_TYPE_UNSPECIFIED" - Invalid or Unknown transfer type @@ -726,6 +723,11 @@ func (s *ListTransferRunsResponse) MarshalJSON() ([]byte, error) { // Location: A resource that represents Google Cloud Platform location. type Location struct { + // DisplayName: The friendly name for this location, typically a nearby + // city name. + // For example, "Tokyo". + DisplayName string `json:"displayName,omitempty"` + // Labels: Cross-service attributes for the location. For example // // {"cloud.googleapis.com/region": "us-east1"} @@ -749,7 +751,7 @@ type Location struct { // server. googleapi.ServerResponse `json:"-"` - // ForceSendFields is a list of field names (e.g. "Labels") to + // ForceSendFields is a list of field names (e.g. "DisplayName") to // unconditionally include in API requests. By default, fields with // empty values are omitted from API requests. However, any non-pointer, // non-interface field appearing in ForceSendFields will be sent to the @@ -757,10 +759,10 @@ type Location struct { // used to include empty fields in Patch requests. ForceSendFields []string `json:"-"` - // NullFields is a list of field names (e.g. "Labels") to include in API - // requests with the JSON null value. By default, fields with empty - // values are omitted from API requests. However, any field with an - // empty value appearing in NullFields will be sent to the server as + // NullFields is a list of field names (e.g. "DisplayName") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as // null. It is an error if a field in this list has a non-empty value. // This may be used to include null fields in Patch requests. NullFields []string `json:"-"` @@ -970,6 +972,7 @@ func (s *Status) MarshalJSON() ([]byte, error) { // `destination_dataset_id` is created when needed and shared with // the // appropriate data source service account. +// Next id: 21 type TransferConfig struct { // DataRefreshWindowDays: The number of days to look back to // automatically refresh the data. @@ -1728,7 +1731,7 @@ type ProjectsLocationsGetCall struct { header_ http.Header } -// Get: Get information about a location. +// Get: Gets information about a location. func (r *ProjectsLocationsService) Get(name string) *ProjectsLocationsGetCall { c := &ProjectsLocationsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.name = name @@ -1829,7 +1832,7 @@ func (c *ProjectsLocationsGetCall) Do(opts ...googleapi.CallOption) (*Location, } return ret, nil // { - // "description": "Get information about a location.", + // "description": "Gets information about a location.", // "flatPath": "v1/projects/{projectsId}/locations/{locationsId}", // "httpMethod": "GET", // "id": "bigquerydatatransfer.projects.locations.get", @@ -2704,7 +2707,6 @@ func (c *ProjectsLocationsTransferConfigsCreateCall) Do(opts ...googleapi.CallOp // "$ref": "TransferConfig" // }, // "scopes": [ - // "https://www.googleapis.com/auth/bigquery", // "https://www.googleapis.com/auth/cloud-platform" // ] // } @@ -3363,7 +3365,6 @@ func (c *ProjectsLocationsTransferConfigsPatchCall) Do(opts ...googleapi.CallOpt // "$ref": "TransferConfig" // }, // "scopes": [ - // "https://www.googleapis.com/auth/bigquery", // "https://www.googleapis.com/auth/cloud-platform" // ] // } @@ -4400,7 +4401,6 @@ func (c *ProjectsTransferConfigsCreateCall) Do(opts ...googleapi.CallOption) (*T // "$ref": "TransferConfig" // }, // "scopes": [ - // "https://www.googleapis.com/auth/bigquery", // "https://www.googleapis.com/auth/cloud-platform" // ] // } @@ -5059,7 +5059,6 @@ func (c *ProjectsTransferConfigsPatchCall) Do(opts ...googleapi.CallOption) (*Tr // "$ref": "TransferConfig" // }, // "scopes": [ - // "https://www.googleapis.com/auth/bigquery", // "https://www.googleapis.com/auth/cloud-platform" // ] // } diff --git a/vendor/google.golang.org/api/blogger/v2/blogger-api.json b/vendor/google.golang.org/api/blogger/v2/blogger-api.json index 74e820248..731ba13fa 100644 --- a/vendor/google.golang.org/api/blogger/v2/blogger-api.json +++ b/vendor/google.golang.org/api/blogger/v2/blogger-api.json @@ -1,923 +1,923 @@ { - "kind": "discovery#restDescription", - "etag": "\"YWOzh2SDasdU84ArJnpYek-OMdg/Mm4a0u3lPNBqEzKCYhfhIpC2Mw4\"", - "discoveryVersion": "v1", - "id": "blogger:v2", - "name": "blogger", - "version": "v2", - "revision": "20150422", - "title": "Blogger API", - "description": "API for access to the data within Blogger.", - "ownerDomain": "google.com", - "ownerName": "Google", - "icons": { - "x16": "https://www.google.com/images/icons/product/blogger-16.png", - "x32": "https://www.google.com/images/icons/product/blogger-32.png" - }, - "documentationLink": "https://developers.google.com/blogger/docs/2.0/json/getting_started", - "labels": [ - "limited_availability" - ], - "protocol": "rest", - "baseUrl": "https://www.googleapis.com/blogger/v2/", - "basePath": "/blogger/v2/", - "rootUrl": "https://www.googleapis.com/", - "servicePath": "blogger/v2/", - "batchPath": "batch/blogger/v2", - "parameters": { - "alt": { - "type": "string", - "description": "Data format for the response.", - "default": "json", - "enum": [ - "json" - ], - "enumDescriptions": [ - "Responses with Content-Type of application/json" - ], - "location": "query" - }, - "fields": { - "type": "string", - "description": "Selector specifying which fields to include in a partial response.", - "location": "query" - }, - "key": { - "type": "string", - "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" - }, - "oauth_token": { - "type": "string", - "description": "OAuth 2.0 token for the current user.", - "location": "query" - }, - "prettyPrint": { - "type": "boolean", - "description": "Returns response with indentations and line breaks.", - "default": "true", - "location": "query" - }, - "quotaUser": { - "type": "string", - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", - "location": "query" - }, - "userIp": { - "type": "string", - "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", - "location": "query" - } - }, - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/blogger": { - "description": "Manage your Blogger account" - } - } - } - }, - "schemas": { - "Blog": { - "id": "Blog", - "type": "object", - "properties": { - "description": { - "type": "string", - "description": "The description of this blog. This is displayed underneath the title." - }, - "id": { - "type": "string", - "description": "The identifier for this resource.", - "format": "int64" - }, - "kind": { - "type": "string", - "description": "The kind of this entry. Always blogger#blog", - "default": "blogger#blog" - }, - "locale": { - "type": "object", - "description": "The locale this Blog is set to.", - "properties": { - "country": { - "type": "string", - "description": "The country this blog's locale is set to." - }, - "language": { - "type": "string", - "description": "The language this blog is authored in." - }, - "variant": { - "type": "string", - "description": "The language variant this blog is authored in." + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/blogger": { + "description": "Manage your Blogger account" + } } - } + } + }, + "basePath": "/blogger/v2/", + "baseUrl": "https://www.googleapis.com/blogger/v2/", + "batchPath": "batch/blogger/v2", + "description": "API for access to the data within Blogger.", + "discoveryVersion": "v1", + "documentationLink": "https://developers.google.com/blogger/docs/2.0/json/getting_started", + "etag": "\"-iA1DTNe4s-I6JZXPt1t1Ypy8IU/Mm4a0u3lPNBqEzKCYhfhIpC2Mw4\"", + "icons": { + "x16": "https://www.google.com/images/icons/product/blogger-16.png", + "x32": "https://www.google.com/images/icons/product/blogger-32.png" + }, + "id": "blogger:v2", + "kind": "discovery#restDescription", + "labels": [ + "limited_availability" + ], + "name": "blogger", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "alt": { + "default": "json", + "description": "Data format for the response.", + "enum": [ + "json" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json" + ], + "location": "query", + "type": "string" }, - "name": { - "type": "string", - "description": "The name of this blog. This is displayed as the title." + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "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.", + "location": "query", + "type": "string" + }, + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", + "location": "query", + "type": "string" + }, + "userIp": { + "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", + "location": "query", + "type": "string" + } + }, + "protocol": "rest", + "resources": { + "blogs": { + "methods": { + "get": { + "description": "Gets one blog by id.", + "httpMethod": "GET", + "id": "blogger.blogs.get", + "parameterOrder": [ + "blogId" + ], + "parameters": { + "blogId": { + "description": "The ID of the blog to get.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "blogs/{blogId}", + "response": { + "$ref": "Blog" + }, + "scopes": [ + "https://www.googleapis.com/auth/blogger" + ] + } + } + }, + "comments": { + "methods": { + "get": { + "description": "Gets one comment by id.", + "httpMethod": "GET", + "id": "blogger.comments.get", + "parameterOrder": [ + "blogId", + "postId", + "commentId" + ], + "parameters": { + "blogId": { + "description": "ID of the blog to containing the comment.", + "location": "path", + "required": true, + "type": "string" + }, + "commentId": { + "description": "The ID of the comment to get.", + "location": "path", + "required": true, + "type": "string" + }, + "postId": { + "description": "ID of the post to fetch posts from.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "blogs/{blogId}/posts/{postId}/comments/{commentId}", + "response": { + "$ref": "Comment" + }, + "scopes": [ + "https://www.googleapis.com/auth/blogger" + ] + }, + "list": { + "description": "Retrieves the comments for a blog, possibly filtered.", + "httpMethod": "GET", + "id": "blogger.comments.list", + "parameterOrder": [ + "blogId", + "postId" + ], + "parameters": { + "blogId": { + "description": "ID of the blog to fetch comments from.", + "location": "path", + "required": true, + "type": "string" + }, + "fetchBodies": { + "description": "Whether the body content of the comments is included.", + "location": "query", + "type": "boolean" + }, + "maxResults": { + "description": "Maximum number of comments to include in the result.", + "format": "uint32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Continuation token if request is paged.", + "location": "query", + "type": "string" + }, + "postId": { + "description": "ID of the post to fetch posts from.", + "location": "path", + "required": true, + "type": "string" + }, + "startDate": { + "description": "Earliest date of comment to fetch, a date-time with RFC 3339 formatting.", + "format": "date-time", + "location": "query", + "type": "string" + } + }, + "path": "blogs/{blogId}/posts/{postId}/comments", + "response": { + "$ref": "CommentList" + }, + "scopes": [ + "https://www.googleapis.com/auth/blogger" + ] + } + } }, "pages": { - "type": "object", - "description": "The container of pages in this blog.", - "properties": { - "selfLink": { - "type": "string", - "description": "The URL of the container for pages in this blog." - }, - "totalItems": { - "type": "integer", - "description": "The count of pages in this blog.", - "format": "int32" + "methods": { + "get": { + "description": "Gets one blog page by id.", + "httpMethod": "GET", + "id": "blogger.pages.get", + "parameterOrder": [ + "blogId", + "pageId" + ], + "parameters": { + "blogId": { + "description": "ID of the blog containing the page.", + "location": "path", + "required": true, + "type": "string" + }, + "pageId": { + "description": "The ID of the page to get.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "blogs/{blogId}/pages/{pageId}", + "response": { + "$ref": "Page" + }, + "scopes": [ + "https://www.googleapis.com/auth/blogger" + ] + }, + "list": { + "description": "Retrieves pages for a blog, possibly filtered.", + "httpMethod": "GET", + "id": "blogger.pages.list", + "parameterOrder": [ + "blogId" + ], + "parameters": { + "blogId": { + "description": "ID of the blog to fetch pages from.", + "location": "path", + "required": true, + "type": "string" + }, + "fetchBodies": { + "description": "Whether to retrieve the Page bodies.", + "location": "query", + "type": "boolean" + } + }, + "path": "blogs/{blogId}/pages", + "response": { + "$ref": "PageList" + }, + "scopes": [ + "https://www.googleapis.com/auth/blogger" + ] + } } - } }, "posts": { - "type": "object", - "description": "The container of posts in this blog.", - "properties": { - "selfLink": { - "type": "string", - "description": "The URL of the container for posts in this blog." - }, - "totalItems": { - "type": "integer", - "description": "The count of posts in this blog.", - "format": "int32" + "methods": { + "get": { + "description": "Get a post by id.", + "httpMethod": "GET", + "id": "blogger.posts.get", + "parameterOrder": [ + "blogId", + "postId" + ], + "parameters": { + "blogId": { + "description": "ID of the blog to fetch the post from.", + "location": "path", + "required": true, + "type": "string" + }, + "postId": { + "description": "The ID of the post", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "blogs/{blogId}/posts/{postId}", + "response": { + "$ref": "Post" + }, + "scopes": [ + "https://www.googleapis.com/auth/blogger" + ] + }, + "list": { + "description": "Retrieves a list of posts, possibly filtered.", + "httpMethod": "GET", + "id": "blogger.posts.list", + "parameterOrder": [ + "blogId" + ], + "parameters": { + "blogId": { + "description": "ID of the blog to fetch posts from.", + "location": "path", + "required": true, + "type": "string" + }, + "fetchBodies": { + "description": "Whether the body content of posts is included.", + "location": "query", + "type": "boolean" + }, + "maxResults": { + "description": "Maximum number of posts to fetch.", + "format": "uint32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Continuation token if the request is paged.", + "location": "query", + "type": "string" + }, + "startDate": { + "description": "Earliest post date to fetch, a date-time with RFC 3339 formatting.", + "format": "date-time", + "location": "query", + "type": "string" + } + }, + "path": "blogs/{blogId}/posts", + "response": { + "$ref": "PostList" + }, + "scopes": [ + "https://www.googleapis.com/auth/blogger" + ] + } } - } }, - "published": { - "type": "string", - "description": "RFC 3339 date-time when this blog was published.", - "format": "date-time" - }, - "selfLink": { - "type": "string", - "description": "The API REST URL to fetch this resource from." - }, - "updated": { - "type": "string", - "description": "RFC 3339 date-time when this blog was last updated.", - "format": "date-time" - }, - "url": { - "type": "string", - "description": "The URL where this blog is published." - } - } - }, - "BlogList": { - "id": "BlogList", - "type": "object", - "properties": { - "items": { - "type": "array", - "description": "The list of Blogs this user has Authorship or Admin rights over.", - "items": { - "$ref": "Blog" - } - }, - "kind": { - "type": "string", - "description": "The kind of this entity. Always blogger#blogList", - "default": "blogger#blogList" - } - } - }, - "Comment": { - "id": "Comment", - "type": "object", - "properties": { - "author": { - "type": "object", - "description": "The author of this Comment.", - "properties": { - "displayName": { - "type": "string", - "description": "The display name." + "users": { + "methods": { + "get": { + "description": "Gets one user by id.", + "httpMethod": "GET", + "id": "blogger.users.get", + "parameterOrder": [ + "userId" + ], + "parameters": { + "userId": { + "description": "The ID of the user to get.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "users/{userId}", + "response": { + "$ref": "User" + }, + "scopes": [ + "https://www.googleapis.com/auth/blogger" + ] + } }, - "id": { - "type": "string", - "description": "The identifier of the Comment creator." - }, - "image": { - "type": "object", - "description": "The comment creator's avatar.", - "properties": { + "resources": { + "blogs": { + "methods": { + "list": { + "description": "Retrieves a list of blogs, possibly filtered.", + "httpMethod": "GET", + "id": "blogger.users.blogs.list", + "parameterOrder": [ + "userId" + ], + "parameters": { + "userId": { + "description": "ID of the user whose blogs are to be fetched. Either the word 'self' (sans quote marks) or the user's profile identifier.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "users/{userId}/blogs", + "response": { + "$ref": "BlogList" + }, + "scopes": [ + "https://www.googleapis.com/auth/blogger" + ] + } + } + } + } + } + }, + "revision": "20150422", + "rootUrl": "https://www.googleapis.com/", + "schemas": { + "Blog": { + "id": "Blog", + "properties": { + "description": { + "description": "The description of this blog. This is displayed underneath the title.", + "type": "string" + }, + "id": { + "description": "The identifier for this resource.", + "format": "int64", + "type": "string" + }, + "kind": { + "default": "blogger#blog", + "description": "The kind of this entry. Always blogger#blog", + "type": "string" + }, + "locale": { + "description": "The locale this Blog is set to.", + "properties": { + "country": { + "description": "The country this blog's locale is set to.", + "type": "string" + }, + "language": { + "description": "The language this blog is authored in.", + "type": "string" + }, + "variant": { + "description": "The language variant this blog is authored in.", + "type": "string" + } + }, + "type": "object" + }, + "name": { + "description": "The name of this blog. This is displayed as the title.", + "type": "string" + }, + "pages": { + "description": "The container of pages in this blog.", + "properties": { + "selfLink": { + "description": "The URL of the container for pages in this blog.", + "type": "string" + }, + "totalItems": { + "description": "The count of pages in this blog.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "posts": { + "description": "The container of posts in this blog.", + "properties": { + "selfLink": { + "description": "The URL of the container for posts in this blog.", + "type": "string" + }, + "totalItems": { + "description": "The count of posts in this blog.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "published": { + "description": "RFC 3339 date-time when this blog was published.", + "format": "date-time", + "type": "string" + }, + "selfLink": { + "description": "The API REST URL to fetch this resource from.", + "type": "string" + }, + "updated": { + "description": "RFC 3339 date-time when this blog was last updated.", + "format": "date-time", + "type": "string" + }, "url": { - "type": "string", - "description": "The comment creator's avatar URL." + "description": "The URL where this blog is published.", + "type": "string" } - } }, - "url": { - "type": "string", - "description": "The URL of the Comment creator's Profile page." - } - } + "type": "object" }, - "blog": { - "type": "object", - "description": "Data about the blog containing this comment.", - "properties": { - "id": { - "type": "string", - "description": "The identifier of the blog containing this comment.", - "format": "int64" - } - } - }, - "content": { - "type": "string", - "description": "The actual content of the comment. May include HTML markup." - }, - "id": { - "type": "string", - "description": "The identifier for this resource.", - "format": "int64" - }, - "inReplyTo": { - "type": "object", - "description": "Data about the comment this is in reply to.", - "properties": { - "id": { - "type": "string", - "description": "The identified of the parent of this comment.", - "format": "int64" - } - } - }, - "kind": { - "type": "string", - "description": "The kind of this entry. Always blogger#comment", - "default": "blogger#comment" - }, - "post": { - "type": "object", - "description": "Data about the post containing this comment.", - "properties": { - "id": { - "type": "string", - "description": "The identifier of the post containing this comment.", - "format": "int64" - } - } - }, - "published": { - "type": "string", - "description": "RFC 3339 date-time when this comment was published.", - "format": "date-time" - }, - "selfLink": { - "type": "string", - "description": "The API REST URL to fetch this resource from." - }, - "updated": { - "type": "string", - "description": "RFC 3339 date-time when this comment was last updated.", - "format": "date-time" - } - } - }, - "CommentList": { - "id": "CommentList", - "type": "object", - "properties": { - "items": { - "type": "array", - "description": "The List of Comments for a Post.", - "items": { - "$ref": "Comment" - } - }, - "kind": { - "type": "string", - "description": "The kind of this entry. Always blogger#commentList", - "default": "blogger#commentList" - }, - "nextPageToken": { - "type": "string", - "description": "Pagination token to fetch the next page, if one exists." - }, - "prevPageToken": { - "type": "string", - "description": "Pagination token to fetch the previous page, if one exists." - } - } - }, - "Page": { - "id": "Page", - "type": "object", - "properties": { - "author": { - "type": "object", - "description": "The author of this Page.", - "properties": { - "displayName": { - "type": "string", - "description": "The display name." + "BlogList": { + "id": "BlogList", + "properties": { + "items": { + "description": "The list of Blogs this user has Authorship or Admin rights over.", + "items": { + "$ref": "Blog" + }, + "type": "array" + }, + "kind": { + "default": "blogger#blogList", + "description": "The kind of this entity. Always blogger#blogList", + "type": "string" + } }, - "id": { - "type": "string", - "description": "The identifier of the Page creator." + "type": "object" + }, + "Comment": { + "id": "Comment", + "properties": { + "author": { + "description": "The author of this Comment.", + "properties": { + "displayName": { + "description": "The display name.", + "type": "string" + }, + "id": { + "description": "The identifier of the Comment creator.", + "type": "string" + }, + "image": { + "description": "The comment creator's avatar.", + "properties": { + "url": { + "description": "The comment creator's avatar URL.", + "type": "string" + } + }, + "type": "object" + }, + "url": { + "description": "The URL of the Comment creator's Profile page.", + "type": "string" + } + }, + "type": "object" + }, + "blog": { + "description": "Data about the blog containing this comment.", + "properties": { + "id": { + "description": "The identifier of the blog containing this comment.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "content": { + "description": "The actual content of the comment. May include HTML markup.", + "type": "string" + }, + "id": { + "description": "The identifier for this resource.", + "format": "int64", + "type": "string" + }, + "inReplyTo": { + "description": "Data about the comment this is in reply to.", + "properties": { + "id": { + "description": "The identified of the parent of this comment.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "kind": { + "default": "blogger#comment", + "description": "The kind of this entry. Always blogger#comment", + "type": "string" + }, + "post": { + "description": "Data about the post containing this comment.", + "properties": { + "id": { + "description": "The identifier of the post containing this comment.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "published": { + "description": "RFC 3339 date-time when this comment was published.", + "format": "date-time", + "type": "string" + }, + "selfLink": { + "description": "The API REST URL to fetch this resource from.", + "type": "string" + }, + "updated": { + "description": "RFC 3339 date-time when this comment was last updated.", + "format": "date-time", + "type": "string" + } }, - "image": { - "type": "object", - "description": "The page author's avatar.", - "properties": { + "type": "object" + }, + "CommentList": { + "id": "CommentList", + "properties": { + "items": { + "description": "The List of Comments for a Post.", + "items": { + "$ref": "Comment" + }, + "type": "array" + }, + "kind": { + "default": "blogger#commentList", + "description": "The kind of this entry. Always blogger#commentList", + "type": "string" + }, + "nextPageToken": { + "description": "Pagination token to fetch the next page, if one exists.", + "type": "string" + }, + "prevPageToken": { + "description": "Pagination token to fetch the previous page, if one exists.", + "type": "string" + } + }, + "type": "object" + }, + "Page": { + "id": "Page", + "properties": { + "author": { + "description": "The author of this Page.", + "properties": { + "displayName": { + "description": "The display name.", + "type": "string" + }, + "id": { + "description": "The identifier of the Page creator.", + "type": "string" + }, + "image": { + "description": "The page author's avatar.", + "properties": { + "url": { + "description": "The page author's avatar URL.", + "type": "string" + } + }, + "type": "object" + }, + "url": { + "description": "The URL of the Page creator's Profile page.", + "type": "string" + } + }, + "type": "object" + }, + "blog": { + "description": "Data about the blog containing this Page.", + "properties": { + "id": { + "description": "The identifier of the blog containing this page.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "content": { + "description": "The body content of this Page, in HTML.", + "type": "string" + }, + "id": { + "description": "The identifier for this resource.", + "format": "int64", + "type": "string" + }, + "kind": { + "default": "blogger#page", + "description": "The kind of this entity. Always blogger#page", + "type": "string" + }, + "published": { + "description": "RFC 3339 date-time when this Page was published.", + "format": "date-time", + "type": "string" + }, + "selfLink": { + "description": "The API REST URL to fetch this resource from.", + "type": "string" + }, + "title": { + "description": "The title of this entity. This is the name displayed in the Admin user interface.", + "type": "string" + }, + "updated": { + "description": "RFC 3339 date-time when this Page was last updated.", + "format": "date-time", + "type": "string" + }, "url": { - "type": "string", - "description": "The page author's avatar URL." + "description": "The URL that this Page is displayed at.", + "type": "string" } - } }, - "url": { - "type": "string", - "description": "The URL of the Page creator's Profile page." - } - } + "type": "object" }, - "blog": { - "type": "object", - "description": "Data about the blog containing this Page.", - "properties": { - "id": { - "type": "string", - "description": "The identifier of the blog containing this page.", - "format": "int64" - } - } - }, - "content": { - "type": "string", - "description": "The body content of this Page, in HTML." - }, - "id": { - "type": "string", - "description": "The identifier for this resource.", - "format": "int64" - }, - "kind": { - "type": "string", - "description": "The kind of this entity. Always blogger#page", - "default": "blogger#page" - }, - "published": { - "type": "string", - "description": "RFC 3339 date-time when this Page was published.", - "format": "date-time" - }, - "selfLink": { - "type": "string", - "description": "The API REST URL to fetch this resource from." - }, - "title": { - "type": "string", - "description": "The title of this entity. This is the name displayed in the Admin user interface." - }, - "updated": { - "type": "string", - "description": "RFC 3339 date-time when this Page was last updated.", - "format": "date-time" - }, - "url": { - "type": "string", - "description": "The URL that this Page is displayed at." - } - } - }, - "PageList": { - "id": "PageList", - "type": "object", - "properties": { - "items": { - "type": "array", - "description": "The list of Pages for a Blog.", - "items": { - "$ref": "Page" - } - }, - "kind": { - "type": "string", - "description": "The kind of this entity. Always blogger#pageList", - "default": "blogger#pageList" - } - } - }, - "Post": { - "id": "Post", - "type": "object", - "properties": { - "author": { - "type": "object", - "description": "The author of this Post.", - "properties": { - "displayName": { - "type": "string", - "description": "The display name." + "PageList": { + "id": "PageList", + "properties": { + "items": { + "description": "The list of Pages for a Blog.", + "items": { + "$ref": "Page" + }, + "type": "array" + }, + "kind": { + "default": "blogger#pageList", + "description": "The kind of this entity. Always blogger#pageList", + "type": "string" + } }, - "id": { - "type": "string", - "description": "The identifier of the Post creator." - }, - "image": { - "type": "object", - "description": "The Post author's avatar.", - "properties": { + "type": "object" + }, + "Post": { + "id": "Post", + "properties": { + "author": { + "description": "The author of this Post.", + "properties": { + "displayName": { + "description": "The display name.", + "type": "string" + }, + "id": { + "description": "The identifier of the Post creator.", + "type": "string" + }, + "image": { + "description": "The Post author's avatar.", + "properties": { + "url": { + "description": "The Post author's avatar URL.", + "type": "string" + } + }, + "type": "object" + }, + "url": { + "description": "The URL of the Post creator's Profile page.", + "type": "string" + } + }, + "type": "object" + }, + "blog": { + "description": "Data about the blog containing this Post.", + "properties": { + "id": { + "description": "The identifier of the Blog that contains this Post.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "content": { + "description": "The content of the Post. May contain HTML markup.", + "type": "string" + }, + "id": { + "description": "The identifier of this Post.", + "format": "int64", + "type": "string" + }, + "kind": { + "default": "blogger#post", + "description": "The kind of this entity. Always blogger#post", + "type": "string" + }, + "labels": { + "description": "The list of labels this Post was tagged with.", + "items": { + "type": "string" + }, + "type": "array" + }, + "published": { + "description": "RFC 3339 date-time when this Post was published.", + "format": "date-time", + "type": "string" + }, + "replies": { + "description": "The container of comments on this Post.", + "properties": { + "selfLink": { + "description": "The URL of the comments on this post.", + "type": "string" + }, + "totalItems": { + "description": "The count of comments on this post.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "selfLink": { + "description": "The API REST URL to fetch this resource from.", + "type": "string" + }, + "title": { + "description": "The title of the Post.", + "type": "string" + }, + "updated": { + "description": "RFC 3339 date-time when this Post was last updated.", + "format": "date-time", + "type": "string" + }, "url": { - "type": "string", - "description": "The Post author's avatar URL." + "description": "The URL where this Post is displayed.", + "type": "string" } - } }, - "url": { - "type": "string", - "description": "The URL of the Post creator's Profile page." - } - } + "type": "object" }, - "blog": { - "type": "object", - "description": "Data about the blog containing this Post.", - "properties": { - "id": { - "type": "string", - "description": "The identifier of the Blog that contains this Post.", - "format": "int64" - } - } - }, - "content": { - "type": "string", - "description": "The content of the Post. May contain HTML markup." - }, - "id": { - "type": "string", - "description": "The identifier of this Post.", - "format": "int64" - }, - "kind": { - "type": "string", - "description": "The kind of this entity. Always blogger#post", - "default": "blogger#post" - }, - "labels": { - "type": "array", - "description": "The list of labels this Post was tagged with.", - "items": { - "type": "string" - } - }, - "published": { - "type": "string", - "description": "RFC 3339 date-time when this Post was published.", - "format": "date-time" - }, - "replies": { - "type": "object", - "description": "The container of comments on this Post.", - "properties": { - "selfLink": { - "type": "string", - "description": "The URL of the comments on this post." - }, - "totalItems": { - "type": "string", - "description": "The count of comments on this post.", - "format": "int64" - } - } - }, - "selfLink": { - "type": "string", - "description": "The API REST URL to fetch this resource from." - }, - "title": { - "type": "string", - "description": "The title of the Post." - }, - "updated": { - "type": "string", - "description": "RFC 3339 date-time when this Post was last updated.", - "format": "date-time" - }, - "url": { - "type": "string", - "description": "The URL where this Post is displayed." - } - } - }, - "PostList": { - "id": "PostList", - "type": "object", - "properties": { - "items": { - "type": "array", - "description": "The list of Posts for this Blog.", - "items": { - "$ref": "Post" - } - }, - "kind": { - "type": "string", - "description": "The kind of this entity. Always blogger#postList", - "default": "blogger#postList" - }, - "nextPageToken": { - "type": "string", - "description": "Pagination token to fetch the next page, if one exists." - }, - "prevPageToken": { - "type": "string", - "description": "Pagination token to fetch the previous page, if one exists." - } - } - }, - "User": { - "id": "User", - "type": "object", - "properties": { - "about": { - "type": "string", - "description": "Profile summary information." - }, - "blogs": { - "type": "object", - "description": "The container of blogs for this user.", - "properties": { - "selfLink": { - "type": "string", - "description": "The URL of the Blogs for this user." - } - } - }, - "created": { - "type": "string", - "description": "The timestamp of when this profile was created, in seconds since epoch.", - "format": "date-time" - }, - "displayName": { - "type": "string", - "description": "The display name." - }, - "id": { - "type": "string", - "description": "The identifier for this User." - }, - "kind": { - "type": "string", - "description": "The kind of this entity. Always blogger#user", - "default": "blogger#user" - }, - "locale": { - "type": "object", - "description": "This user's locale", - "properties": { - "country": { - "type": "string", - "description": "The user's country setting." - }, - "language": { - "type": "string", - "description": "The user's language setting." - }, - "variant": { - "type": "string", - "description": "The user's language variant setting." - } - } - }, - "selfLink": { - "type": "string", - "description": "The API REST URL to fetch this resource from." - }, - "url": { - "type": "string", - "description": "The user's profile page." - } - } - } - }, - "resources": { - "blogs": { - "methods": { - "get": { - "id": "blogger.blogs.get", - "path": "blogs/{blogId}", - "httpMethod": "GET", - "description": "Gets one blog by id.", - "parameters": { - "blogId": { - "type": "string", - "description": "The ID of the blog to get.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "blogId" - ], - "response": { - "$ref": "Blog" - }, - "scopes": [ - "https://www.googleapis.com/auth/blogger" - ] - } - } - }, - "comments": { - "methods": { - "get": { - "id": "blogger.comments.get", - "path": "blogs/{blogId}/posts/{postId}/comments/{commentId}", - "httpMethod": "GET", - "description": "Gets one comment by id.", - "parameters": { - "blogId": { - "type": "string", - "description": "ID of the blog to containing the comment.", - "required": true, - "location": "path" - }, - "commentId": { - "type": "string", - "description": "The ID of the comment to get.", - "required": true, - "location": "path" - }, - "postId": { - "type": "string", - "description": "ID of the post to fetch posts from.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "blogId", - "postId", - "commentId" - ], - "response": { - "$ref": "Comment" - }, - "scopes": [ - "https://www.googleapis.com/auth/blogger" - ] - }, - "list": { - "id": "blogger.comments.list", - "path": "blogs/{blogId}/posts/{postId}/comments", - "httpMethod": "GET", - "description": "Retrieves the comments for a blog, possibly filtered.", - "parameters": { - "blogId": { - "type": "string", - "description": "ID of the blog to fetch comments from.", - "required": true, - "location": "path" - }, - "fetchBodies": { - "type": "boolean", - "description": "Whether the body content of the comments is included.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "Maximum number of comments to include in the result.", - "format": "uint32", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Continuation token if request is paged.", - "location": "query" - }, - "postId": { - "type": "string", - "description": "ID of the post to fetch posts from.", - "required": true, - "location": "path" - }, - "startDate": { - "type": "string", - "description": "Earliest date of comment to fetch, a date-time with RFC 3339 formatting.", - "format": "date-time", - "location": "query" - } - }, - "parameterOrder": [ - "blogId", - "postId" - ], - "response": { - "$ref": "CommentList" - }, - "scopes": [ - "https://www.googleapis.com/auth/blogger" - ] - } - } - }, - "pages": { - "methods": { - "get": { - "id": "blogger.pages.get", - "path": "blogs/{blogId}/pages/{pageId}", - "httpMethod": "GET", - "description": "Gets one blog page by id.", - "parameters": { - "blogId": { - "type": "string", - "description": "ID of the blog containing the page.", - "required": true, - "location": "path" - }, - "pageId": { - "type": "string", - "description": "The ID of the page to get.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "blogId", - "pageId" - ], - "response": { - "$ref": "Page" - }, - "scopes": [ - "https://www.googleapis.com/auth/blogger" - ] - }, - "list": { - "id": "blogger.pages.list", - "path": "blogs/{blogId}/pages", - "httpMethod": "GET", - "description": "Retrieves pages for a blog, possibly filtered.", - "parameters": { - "blogId": { - "type": "string", - "description": "ID of the blog to fetch pages from.", - "required": true, - "location": "path" - }, - "fetchBodies": { - "type": "boolean", - "description": "Whether to retrieve the Page bodies.", - "location": "query" - } - }, - "parameterOrder": [ - "blogId" - ], - "response": { - "$ref": "PageList" - }, - "scopes": [ - "https://www.googleapis.com/auth/blogger" - ] - } - } - }, - "posts": { - "methods": { - "get": { - "id": "blogger.posts.get", - "path": "blogs/{blogId}/posts/{postId}", - "httpMethod": "GET", - "description": "Get a post by id.", - "parameters": { - "blogId": { - "type": "string", - "description": "ID of the blog to fetch the post from.", - "required": true, - "location": "path" - }, - "postId": { - "type": "string", - "description": "The ID of the post", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "blogId", - "postId" - ], - "response": { - "$ref": "Post" - }, - "scopes": [ - "https://www.googleapis.com/auth/blogger" - ] - }, - "list": { - "id": "blogger.posts.list", - "path": "blogs/{blogId}/posts", - "httpMethod": "GET", - "description": "Retrieves a list of posts, possibly filtered.", - "parameters": { - "blogId": { - "type": "string", - "description": "ID of the blog to fetch posts from.", - "required": true, - "location": "path" - }, - "fetchBodies": { - "type": "boolean", - "description": "Whether the body content of posts is included.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "Maximum number of posts to fetch.", - "format": "uint32", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Continuation token if the request is paged.", - "location": "query" - }, - "startDate": { - "type": "string", - "description": "Earliest post date to fetch, a date-time with RFC 3339 formatting.", - "format": "date-time", - "location": "query" - } - }, - "parameterOrder": [ - "blogId" - ], - "response": { - "$ref": "PostList" - }, - "scopes": [ - "https://www.googleapis.com/auth/blogger" - ] - } - } - }, - "users": { - "methods": { - "get": { - "id": "blogger.users.get", - "path": "users/{userId}", - "httpMethod": "GET", - "description": "Gets one user by id.", - "parameters": { - "userId": { - "type": "string", - "description": "The ID of the user to get.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "userId" - ], - "response": { - "$ref": "User" - }, - "scopes": [ - "https://www.googleapis.com/auth/blogger" - ] - } - }, - "resources": { - "blogs": { - "methods": { - "list": { - "id": "blogger.users.blogs.list", - "path": "users/{userId}/blogs", - "httpMethod": "GET", - "description": "Retrieves a list of blogs, possibly filtered.", - "parameters": { - "userId": { - "type": "string", - "description": "ID of the user whose blogs are to be fetched. Either the word 'self' (sans quote marks) or the user's profile identifier.", - "required": true, - "location": "path" + "PostList": { + "id": "PostList", + "properties": { + "items": { + "description": "The list of Posts for this Blog.", + "items": { + "$ref": "Post" + }, + "type": "array" + }, + "kind": { + "default": "blogger#postList", + "description": "The kind of this entity. Always blogger#postList", + "type": "string" + }, + "nextPageToken": { + "description": "Pagination token to fetch the next page, if one exists.", + "type": "string" + }, + "prevPageToken": { + "description": "Pagination token to fetch the previous page, if one exists.", + "type": "string" } - }, - "parameterOrder": [ - "userId" - ], - "response": { - "$ref": "BlogList" - }, - "scopes": [ - "https://www.googleapis.com/auth/blogger" - ] - } - } + }, + "type": "object" + }, + "User": { + "id": "User", + "properties": { + "about": { + "description": "Profile summary information.", + "type": "string" + }, + "blogs": { + "description": "The container of blogs for this user.", + "properties": { + "selfLink": { + "description": "The URL of the Blogs for this user.", + "type": "string" + } + }, + "type": "object" + }, + "created": { + "description": "The timestamp of when this profile was created, in seconds since epoch.", + "format": "date-time", + "type": "string" + }, + "displayName": { + "description": "The display name.", + "type": "string" + }, + "id": { + "description": "The identifier for this User.", + "type": "string" + }, + "kind": { + "default": "blogger#user", + "description": "The kind of this entity. Always blogger#user", + "type": "string" + }, + "locale": { + "description": "This user's locale", + "properties": { + "country": { + "description": "The user's country setting.", + "type": "string" + }, + "language": { + "description": "The user's language setting.", + "type": "string" + }, + "variant": { + "description": "The user's language variant setting.", + "type": "string" + } + }, + "type": "object" + }, + "selfLink": { + "description": "The API REST URL to fetch this resource from.", + "type": "string" + }, + "url": { + "description": "The user's profile page.", + "type": "string" + } + }, + "type": "object" } - } - } - } -} + }, + "servicePath": "blogger/v2/", + "title": "Blogger API", + "version": "v2" +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/blogger/v3/blogger-api.json b/vendor/google.golang.org/api/blogger/v3/blogger-api.json index 795f53243..39b70c175 100644 --- a/vendor/google.golang.org/api/blogger/v3/blogger-api.json +++ b/vendor/google.golang.org/api/blogger/v3/blogger-api.json @@ -1,2507 +1,2507 @@ { - "kind": "discovery#restDescription", - "etag": "\"YWOzh2SDasdU84ArJnpYek-OMdg/Goh5bsNuqq7lTY-yMf_QcKSL760\"", - "discoveryVersion": "v1", - "id": "blogger:v3", - "name": "blogger", - "version": "v3", - "revision": "20150422", - "title": "Blogger API", - "description": "API for access to the data within Blogger.", - "ownerDomain": "google.com", - "ownerName": "Google", - "icons": { - "x16": "https://www.google.com/images/icons/product/blogger-16.png", - "x32": "https://www.google.com/images/icons/product/blogger-32.png" - }, - "documentationLink": "https://developers.google.com/blogger/docs/3.0/getting_started", - "labels": [ - "limited_availability" - ], - "protocol": "rest", - "baseUrl": "https://www.googleapis.com/blogger/v3/", - "basePath": "/blogger/v3/", - "rootUrl": "https://www.googleapis.com/", - "servicePath": "blogger/v3/", - "batchPath": "batch/blogger/v3", - "parameters": { - "alt": { - "type": "string", - "description": "Data format for the response.", - "default": "json", - "enum": [ - "json" - ], - "enumDescriptions": [ - "Responses with Content-Type of application/json" - ], - "location": "query" - }, - "fields": { - "type": "string", - "description": "Selector specifying which fields to include in a partial response.", - "location": "query" - }, - "key": { - "type": "string", - "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" - }, - "oauth_token": { - "type": "string", - "description": "OAuth 2.0 token for the current user.", - "location": "query" - }, - "prettyPrint": { - "type": "boolean", - "description": "Returns response with indentations and line breaks.", - "default": "true", - "location": "query" - }, - "quotaUser": { - "type": "string", - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", - "location": "query" - }, - "userIp": { - "type": "string", - "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", - "location": "query" - } - }, - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/blogger": { - "description": "Manage your Blogger account" - }, - "https://www.googleapis.com/auth/blogger.readonly": { - "description": "View your Blogger account" - } - } - } - }, - "schemas": { - "Blog": { - "id": "Blog", - "type": "object", - "properties": { - "customMetaData": { - "type": "string", - "description": "The JSON custom meta-data for the Blog" - }, - "description": { - "type": "string", - "description": "The description of this blog. This is displayed underneath the title." - }, - "id": { - "type": "string", - "description": "The identifier for this resource." - }, - "kind": { - "type": "string", - "description": "The kind of this entry. Always blogger#blog", - "default": "blogger#blog" - }, - "locale": { - "type": "object", - "description": "The locale this Blog is set to.", - "properties": { - "country": { - "type": "string", - "description": "The country this blog's locale is set to." - }, - "language": { - "type": "string", - "description": "The language this blog is authored in." - }, - "variant": { - "type": "string", - "description": "The language variant this blog is authored in." - } - } - }, - "name": { - "type": "string", - "description": "The name of this blog. This is displayed as the title." - }, - "pages": { - "type": "object", - "description": "The container of pages in this blog.", - "properties": { - "selfLink": { - "type": "string", - "description": "The URL of the container for pages in this blog." - }, - "totalItems": { - "type": "integer", - "description": "The count of pages in this blog.", - "format": "int32" - } - } - }, - "posts": { - "type": "object", - "description": "The container of posts in this blog.", - "properties": { - "items": { - "type": "array", - "description": "The List of Posts for this Blog.", - "items": { - "$ref": "Post" - } - }, - "selfLink": { - "type": "string", - "description": "The URL of the container for posts in this blog." - }, - "totalItems": { - "type": "integer", - "description": "The count of posts in this blog.", - "format": "int32" - } - } - }, - "published": { - "type": "string", - "description": "RFC 3339 date-time when this blog was published.", - "format": "date-time" - }, - "selfLink": { - "type": "string", - "description": "The API REST URL to fetch this resource from." - }, - "status": { - "type": "string", - "description": "The status of the blog." - }, - "updated": { - "type": "string", - "description": "RFC 3339 date-time when this blog was last updated.", - "format": "date-time" - }, - "url": { - "type": "string", - "description": "The URL where this blog is published." - } - } - }, - "BlogList": { - "id": "BlogList", - "type": "object", - "properties": { - "blogUserInfos": { - "type": "array", - "description": "Admin level list of blog per-user information", - "items": { - "$ref": "BlogUserInfo" - } - }, - "items": { - "type": "array", - "description": "The list of Blogs this user has Authorship or Admin rights over.", - "items": { - "$ref": "Blog" - } - }, - "kind": { - "type": "string", - "description": "The kind of this entity. Always blogger#blogList", - "default": "blogger#blogList" - } - } - }, - "BlogPerUserInfo": { - "id": "BlogPerUserInfo", - "type": "object", - "properties": { - "blogId": { - "type": "string", - "description": "ID of the Blog resource" - }, - "hasAdminAccess": { - "type": "boolean", - "description": "True if the user has Admin level access to the blog." - }, - "kind": { - "type": "string", - "description": "The kind of this entity. Always blogger#blogPerUserInfo", - "default": "blogger#blogPerUserInfo" - }, - "photosAlbumKey": { - "type": "string", - "description": "The Photo Album Key for the user when adding photos to the blog" - }, - "role": { - "type": "string", - "description": "Access permissions that the user has for the blog (ADMIN, AUTHOR, or READER)." - }, - "userId": { - "type": "string", - "description": "ID of the User" - } - } - }, - "BlogUserInfo": { - "id": "BlogUserInfo", - "type": "object", - "properties": { - "blog": { - "$ref": "Blog", - "description": "The Blog resource." - }, - "blog_user_info": { - "$ref": "BlogPerUserInfo", - "description": "Information about a User for the Blog." - }, - "kind": { - "type": "string", - "description": "The kind of this entity. Always blogger#blogUserInfo", - "default": "blogger#blogUserInfo" - } - } - }, - "Comment": { - "id": "Comment", - "type": "object", - "properties": { - "author": { - "type": "object", - "description": "The author of this Comment.", - "properties": { - "displayName": { - "type": "string", - "description": "The display name." - }, - "id": { - "type": "string", - "description": "The identifier of the Comment creator." - }, - "image": { - "type": "object", - "description": "The comment creator's avatar.", - "properties": { - "url": { - "type": "string", - "description": "The comment creator's avatar URL." + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/blogger": { + "description": "Manage your Blogger account" + }, + "https://www.googleapis.com/auth/blogger.readonly": { + "description": "View your Blogger account" } - } - }, - "url": { - "type": "string", - "description": "The URL of the Comment creator's Profile page." } - } - }, - "blog": { - "type": "object", - "description": "Data about the blog containing this comment.", - "properties": { - "id": { - "type": "string", - "description": "The identifier of the blog containing this comment." - } - } - }, - "content": { - "type": "string", - "description": "The actual content of the comment. May include HTML markup." - }, - "id": { - "type": "string", - "description": "The identifier for this resource." - }, - "inReplyTo": { - "type": "object", - "description": "Data about the comment this is in reply to.", - "properties": { - "id": { - "type": "string", - "description": "The identified of the parent of this comment." - } - } - }, - "kind": { - "type": "string", - "description": "The kind of this entry. Always blogger#comment", - "default": "blogger#comment" - }, - "post": { - "type": "object", - "description": "Data about the post containing this comment.", - "properties": { - "id": { - "type": "string", - "description": "The identifier of the post containing this comment." - } - } - }, - "published": { - "type": "string", - "description": "RFC 3339 date-time when this comment was published.", - "format": "date-time" - }, - "selfLink": { - "type": "string", - "description": "The API REST URL to fetch this resource from." - }, - "status": { - "type": "string", - "description": "The status of the comment (only populated for admin users)" - }, - "updated": { - "type": "string", - "description": "RFC 3339 date-time when this comment was last updated.", - "format": "date-time" } - } }, - "CommentList": { - "id": "CommentList", - "type": "object", - "properties": { - "etag": { - "type": "string", - "description": "Etag of the response." - }, - "items": { - "type": "array", - "description": "The List of Comments for a Post.", - "items": { - "$ref": "Comment" - } - }, - "kind": { - "type": "string", - "description": "The kind of this entry. Always blogger#commentList", - "default": "blogger#commentList" - }, - "nextPageToken": { - "type": "string", - "description": "Pagination token to fetch the next page, if one exists." - }, - "prevPageToken": { - "type": "string", - "description": "Pagination token to fetch the previous page, if one exists." - } - } + "basePath": "/blogger/v3/", + "baseUrl": "https://www.googleapis.com/blogger/v3/", + "batchPath": "batch/blogger/v3", + "description": "API for access to the data within Blogger.", + "discoveryVersion": "v1", + "documentationLink": "https://developers.google.com/blogger/docs/3.0/getting_started", + "etag": "\"-iA1DTNe4s-I6JZXPt1t1Ypy8IU/Goh5bsNuqq7lTY-yMf_QcKSL760\"", + "icons": { + "x16": "https://www.google.com/images/icons/product/blogger-16.png", + "x32": "https://www.google.com/images/icons/product/blogger-32.png" }, - "Page": { - "id": "Page", - "type": "object", - "properties": { - "author": { - "type": "object", - "description": "The author of this Page.", - "properties": { - "displayName": { - "type": "string", - "description": "The display name." - }, - "id": { - "type": "string", - "description": "The identifier of the Page creator." - }, - "image": { - "type": "object", - "description": "The page author's avatar.", - "properties": { - "url": { - "type": "string", - "description": "The page author's avatar URL." - } - } - }, - "url": { - "type": "string", - "description": "The URL of the Page creator's Profile page." - } - } - }, - "blog": { - "type": "object", - "description": "Data about the blog containing this Page.", - "properties": { - "id": { - "type": "string", - "description": "The identifier of the blog containing this page." - } - } - }, - "content": { - "type": "string", - "description": "The body content of this Page, in HTML." - }, - "etag": { - "type": "string", - "description": "Etag of the resource." - }, - "id": { - "type": "string", - "description": "The identifier for this resource." - }, - "kind": { - "type": "string", - "description": "The kind of this entity. Always blogger#page", - "default": "blogger#page" - }, - "published": { - "type": "string", - "description": "RFC 3339 date-time when this Page was published.", - "format": "date-time" - }, - "selfLink": { - "type": "string", - "description": "The API REST URL to fetch this resource from." - }, - "status": { - "type": "string", - "description": "The status of the page for admin resources (either LIVE or DRAFT)." - }, - "title": { - "type": "string", - "description": "The title of this entity. This is the name displayed in the Admin user interface." - }, - "updated": { - "type": "string", - "description": "RFC 3339 date-time when this Page was last updated.", - "format": "date-time" - }, - "url": { - "type": "string", - "description": "The URL that this Page is displayed at." - } - } - }, - "PageList": { - "id": "PageList", - "type": "object", - "properties": { - "etag": { - "type": "string", - "description": "Etag of the response." - }, - "items": { - "type": "array", - "description": "The list of Pages for a Blog.", - "items": { - "$ref": "Page" - } - }, - "kind": { - "type": "string", - "description": "The kind of this entity. Always blogger#pageList", - "default": "blogger#pageList" - }, - "nextPageToken": { - "type": "string", - "description": "Pagination token to fetch the next page, if one exists." - } - } - }, - "Pageviews": { - "id": "Pageviews", - "type": "object", - "properties": { - "blogId": { - "type": "string", - "description": "Blog Id" - }, - "counts": { - "type": "array", - "description": "The container of posts in this blog.", - "items": { - "type": "object", - "properties": { - "count": { - "type": "string", - "description": "Count of page views for the given time range", - "format": "int64" - }, - "timeRange": { - "type": "string", - "description": "Time range the given count applies to" - } - } - } - }, - "kind": { - "type": "string", - "description": "The kind of this entry. Always blogger#page_views", - "default": "blogger#page_views" - } - } - }, - "Post": { - "id": "Post", - "type": "object", - "properties": { - "author": { - "type": "object", - "description": "The author of this Post.", - "properties": { - "displayName": { - "type": "string", - "description": "The display name." - }, - "id": { - "type": "string", - "description": "The identifier of the Post creator." - }, - "image": { - "type": "object", - "description": "The Post author's avatar.", - "properties": { - "url": { - "type": "string", - "description": "The Post author's avatar URL." - } - } - }, - "url": { - "type": "string", - "description": "The URL of the Post creator's Profile page." - } - } - }, - "blog": { - "type": "object", - "description": "Data about the blog containing this Post.", - "properties": { - "id": { - "type": "string", - "description": "The identifier of the Blog that contains this Post." - } - } - }, - "content": { - "type": "string", - "description": "The content of the Post. May contain HTML markup." - }, - "customMetaData": { - "type": "string", - "description": "The JSON meta-data for the Post." - }, - "etag": { - "type": "string", - "description": "Etag of the resource." - }, - "id": { - "type": "string", - "description": "The identifier of this Post." - }, - "images": { - "type": "array", - "description": "Display image for the Post.", - "items": { - "type": "object", - "properties": { - "url": { - "type": "string" - } - } - } - }, - "kind": { - "type": "string", - "description": "The kind of this entity. Always blogger#post", - "default": "blogger#post" - }, - "labels": { - "type": "array", - "description": "The list of labels this Post was tagged with.", - "items": { + "id": "blogger:v3", + "kind": "discovery#restDescription", + "labels": [ + "limited_availability" + ], + "name": "blogger", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "alt": { + "default": "json", + "description": "Data format for the response.", + "enum": [ + "json" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json" + ], + "location": "query", "type": "string" - } }, - "location": { - "type": "object", - "description": "The location for geotagged posts.", - "properties": { - "lat": { - "type": "number", - "description": "Location's latitude.", - "format": "double" - }, - "lng": { - "type": "number", - "description": "Location's longitude.", - "format": "double" - }, - "name": { - "type": "string", - "description": "Location name." - }, - "span": { - "type": "string", - "description": "Location's viewport span. Can be used when rendering a map preview." + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "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.", + "location": "query", + "type": "string" + }, + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", + "location": "query", + "type": "string" + }, + "userIp": { + "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", + "location": "query", + "type": "string" + } + }, + "protocol": "rest", + "resources": { + "blogUserInfos": { + "methods": { + "get": { + "description": "Gets one blog and user info pair by blogId and userId.", + "httpMethod": "GET", + "id": "blogger.blogUserInfos.get", + "parameterOrder": [ + "userId", + "blogId" + ], + "parameters": { + "blogId": { + "description": "The ID of the blog to get.", + "location": "path", + "required": true, + "type": "string" + }, + "maxPosts": { + "description": "Maximum number of posts to pull back with the blog.", + "format": "uint32", + "location": "query", + "type": "integer" + }, + "userId": { + "description": "ID of the user whose blogs are to be fetched. Either the word 'self' (sans quote marks) or the user's profile identifier.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "users/{userId}/blogs/{blogId}", + "response": { + "$ref": "BlogUserInfo" + }, + "scopes": [ + "https://www.googleapis.com/auth/blogger", + "https://www.googleapis.com/auth/blogger.readonly" + ] + } } - } - }, - "published": { - "type": "string", - "description": "RFC 3339 date-time when this Post was published.", - "format": "date-time" - }, - "readerComments": { - "type": "string", - "description": "Comment control and display setting for readers of this post." - }, - "replies": { - "type": "object", - "description": "The container of comments on this Post.", - "properties": { - "items": { - "type": "array", - "description": "The List of Comments for this Post.", - "items": { - "$ref": "Comment" - } - }, - "selfLink": { - "type": "string", - "description": "The URL of the comments on this post." - }, - "totalItems": { - "type": "string", - "description": "The count of comments on this post.", - "format": "int64" - } - } - }, - "selfLink": { - "type": "string", - "description": "The API REST URL to fetch this resource from." - }, - "status": { - "type": "string", - "description": "Status of the post. Only set for admin-level requests" - }, - "title": { - "type": "string", - "description": "The title of the Post." - }, - "titleLink": { - "type": "string", - "description": "The title link URL, similar to atom's related link." - }, - "updated": { - "type": "string", - "description": "RFC 3339 date-time when this Post was last updated.", - "format": "date-time" - }, - "url": { - "type": "string", - "description": "The URL where this Post is displayed." - } - } - }, - "PostList": { - "id": "PostList", - "type": "object", - "properties": { - "etag": { - "type": "string", - "description": "Etag of the response." - }, - "items": { - "type": "array", - "description": "The list of Posts for this Blog.", - "items": { - "$ref": "Post" - } - }, - "kind": { - "type": "string", - "description": "The kind of this entity. Always blogger#postList", - "default": "blogger#postList" - }, - "nextPageToken": { - "type": "string", - "description": "Pagination token to fetch the next page, if one exists." - } - } - }, - "PostPerUserInfo": { - "id": "PostPerUserInfo", - "type": "object", - "properties": { - "blogId": { - "type": "string", - "description": "ID of the Blog that the post resource belongs to." - }, - "hasEditAccess": { - "type": "boolean", - "description": "True if the user has Author level access to the post." - }, - "kind": { - "type": "string", - "description": "The kind of this entity. Always blogger#postPerUserInfo", - "default": "blogger#postPerUserInfo" - }, - "postId": { - "type": "string", - "description": "ID of the Post resource." - }, - "userId": { - "type": "string", - "description": "ID of the User." - } - } - }, - "PostUserInfo": { - "id": "PostUserInfo", - "type": "object", - "properties": { - "kind": { - "type": "string", - "description": "The kind of this entity. Always blogger#postUserInfo", - "default": "blogger#postUserInfo" - }, - "post": { - "$ref": "Post", - "description": "The Post resource." - }, - "post_user_info": { - "$ref": "PostPerUserInfo", - "description": "Information about a User for the Post." - } - } - }, - "PostUserInfosList": { - "id": "PostUserInfosList", - "type": "object", - "properties": { - "items": { - "type": "array", - "description": "The list of Posts with User information for the post, for this Blog.", - "items": { - "$ref": "PostUserInfo" - } - }, - "kind": { - "type": "string", - "description": "The kind of this entity. Always blogger#postList", - "default": "blogger#postUserInfosList" - }, - "nextPageToken": { - "type": "string", - "description": "Pagination token to fetch the next page, if one exists." - } - } - }, - "User": { - "id": "User", - "type": "object", - "properties": { - "about": { - "type": "string", - "description": "Profile summary information." }, "blogs": { - "type": "object", - "description": "The container of blogs for this user.", - "properties": { - "selfLink": { - "type": "string", - "description": "The URL of the Blogs for this user." + "methods": { + "get": { + "description": "Gets one blog by ID.", + "httpMethod": "GET", + "id": "blogger.blogs.get", + "parameterOrder": [ + "blogId" + ], + "parameters": { + "blogId": { + "description": "The ID of the blog to get.", + "location": "path", + "required": true, + "type": "string" + }, + "maxPosts": { + "description": "Maximum number of posts to pull back with the blog.", + "format": "uint32", + "location": "query", + "type": "integer" + }, + "view": { + "description": "Access level with which to view the blog. Note that some fields require elevated access.", + "enum": [ + "ADMIN", + "AUTHOR", + "READER" + ], + "enumDescriptions": [ + "Admin level detail.", + "Author level detail.", + "Reader level detail." + ], + "location": "query", + "type": "string" + } + }, + "path": "blogs/{blogId}", + "response": { + "$ref": "Blog" + }, + "scopes": [ + "https://www.googleapis.com/auth/blogger", + "https://www.googleapis.com/auth/blogger.readonly" + ] + }, + "getByUrl": { + "description": "Retrieve a Blog by URL.", + "httpMethod": "GET", + "id": "blogger.blogs.getByUrl", + "parameterOrder": [ + "url" + ], + "parameters": { + "url": { + "description": "The URL of the blog to retrieve.", + "location": "query", + "required": true, + "type": "string" + }, + "view": { + "description": "Access level with which to view the blog. Note that some fields require elevated access.", + "enum": [ + "ADMIN", + "AUTHOR", + "READER" + ], + "enumDescriptions": [ + "Admin level detail.", + "Author level detail.", + "Reader level detail." + ], + "location": "query", + "type": "string" + } + }, + "path": "blogs/byurl", + "response": { + "$ref": "Blog" + }, + "scopes": [ + "https://www.googleapis.com/auth/blogger", + "https://www.googleapis.com/auth/blogger.readonly" + ] + }, + "listByUser": { + "description": "Retrieves a list of blogs, possibly filtered.", + "httpMethod": "GET", + "id": "blogger.blogs.listByUser", + "parameterOrder": [ + "userId" + ], + "parameters": { + "fetchUserInfo": { + "description": "Whether the response is a list of blogs with per-user information instead of just blogs.", + "location": "query", + "type": "boolean" + }, + "role": { + "description": "User access types for blogs to include in the results, e.g. AUTHOR will return blogs where the user has author level access. If no roles are specified, defaults to ADMIN and AUTHOR roles.", + "enum": [ + "ADMIN", + "AUTHOR", + "READER" + ], + "enumDescriptions": [ + "Admin role - Blogs where the user has Admin level access.", + "Author role - Blogs where the user has Author level access.", + "Reader role - Blogs where the user has Reader level access (to a private blog)." + ], + "location": "query", + "repeated": true, + "type": "string" + }, + "status": { + "default": "LIVE", + "description": "Blog statuses to include in the result (default: Live blogs only). Note that ADMIN access is required to view deleted blogs.", + "enum": [ + "DELETED", + "LIVE" + ], + "enumDescriptions": [ + "Blog has been deleted by an administrator.", + "Blog is currently live." + ], + "location": "query", + "repeated": true, + "type": "string" + }, + "userId": { + "description": "ID of the user whose blogs are to be fetched. Either the word 'self' (sans quote marks) or the user's profile identifier.", + "location": "path", + "required": true, + "type": "string" + }, + "view": { + "description": "Access level with which to view the blogs. Note that some fields require elevated access.", + "enum": [ + "ADMIN", + "AUTHOR", + "READER" + ], + "enumDescriptions": [ + "Admin level detail.", + "Author level detail.", + "Reader level detail." + ], + "location": "query", + "type": "string" + } + }, + "path": "users/{userId}/blogs", + "response": { + "$ref": "BlogList" + }, + "scopes": [ + "https://www.googleapis.com/auth/blogger", + "https://www.googleapis.com/auth/blogger.readonly" + ] + } } - } }, - "created": { - "type": "string", - "description": "The timestamp of when this profile was created, in seconds since epoch.", - "format": "date-time" - }, - "displayName": { - "type": "string", - "description": "The display name." - }, - "id": { - "type": "string", - "description": "The identifier for this User." - }, - "kind": { - "type": "string", - "description": "The kind of this entity. Always blogger#user", - "default": "blogger#user" - }, - "locale": { - "type": "object", - "description": "This user's locale", - "properties": { - "country": { - "type": "string", - "description": "The user's country setting." - }, - "language": { - "type": "string", - "description": "The user's language setting." - }, - "variant": { - "type": "string", - "description": "The user's language variant setting." + "comments": { + "methods": { + "approve": { + "description": "Marks a comment as not spam.", + "httpMethod": "POST", + "id": "blogger.comments.approve", + "parameterOrder": [ + "blogId", + "postId", + "commentId" + ], + "parameters": { + "blogId": { + "description": "The ID of the Blog.", + "location": "path", + "required": true, + "type": "string" + }, + "commentId": { + "description": "The ID of the comment to mark as not spam.", + "location": "path", + "required": true, + "type": "string" + }, + "postId": { + "description": "The ID of the Post.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "blogs/{blogId}/posts/{postId}/comments/{commentId}/approve", + "response": { + "$ref": "Comment" + }, + "scopes": [ + "https://www.googleapis.com/auth/blogger" + ] + }, + "delete": { + "description": "Delete a comment by ID.", + "httpMethod": "DELETE", + "id": "blogger.comments.delete", + "parameterOrder": [ + "blogId", + "postId", + "commentId" + ], + "parameters": { + "blogId": { + "description": "The ID of the Blog.", + "location": "path", + "required": true, + "type": "string" + }, + "commentId": { + "description": "The ID of the comment to delete.", + "location": "path", + "required": true, + "type": "string" + }, + "postId": { + "description": "The ID of the Post.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "blogs/{blogId}/posts/{postId}/comments/{commentId}", + "scopes": [ + "https://www.googleapis.com/auth/blogger" + ] + }, + "get": { + "description": "Gets one comment by ID.", + "httpMethod": "GET", + "id": "blogger.comments.get", + "parameterOrder": [ + "blogId", + "postId", + "commentId" + ], + "parameters": { + "blogId": { + "description": "ID of the blog to containing the comment.", + "location": "path", + "required": true, + "type": "string" + }, + "commentId": { + "description": "The ID of the comment to get.", + "location": "path", + "required": true, + "type": "string" + }, + "postId": { + "description": "ID of the post to fetch posts from.", + "location": "path", + "required": true, + "type": "string" + }, + "view": { + "description": "Access level for the requested comment (default: READER). Note that some comments will require elevated permissions, for example comments where the parent posts which is in a draft state, or comments that are pending moderation.", + "enum": [ + "ADMIN", + "AUTHOR", + "READER" + ], + "enumDescriptions": [ + "Admin level detail", + "Author level detail", + "Admin level detail" + ], + "location": "query", + "type": "string" + } + }, + "path": "blogs/{blogId}/posts/{postId}/comments/{commentId}", + "response": { + "$ref": "Comment" + }, + "scopes": [ + "https://www.googleapis.com/auth/blogger", + "https://www.googleapis.com/auth/blogger.readonly" + ] + }, + "list": { + "description": "Retrieves the comments for a post, possibly filtered.", + "httpMethod": "GET", + "id": "blogger.comments.list", + "parameterOrder": [ + "blogId", + "postId" + ], + "parameters": { + "blogId": { + "description": "ID of the blog to fetch comments from.", + "location": "path", + "required": true, + "type": "string" + }, + "endDate": { + "description": "Latest date of comment to fetch, a date-time with RFC 3339 formatting.", + "format": "date-time", + "location": "query", + "type": "string" + }, + "fetchBodies": { + "description": "Whether the body content of the comments is included.", + "location": "query", + "type": "boolean" + }, + "maxResults": { + "description": "Maximum number of comments to include in the result.", + "format": "uint32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Continuation token if request is paged.", + "location": "query", + "type": "string" + }, + "postId": { + "description": "ID of the post to fetch posts from.", + "location": "path", + "required": true, + "type": "string" + }, + "startDate": { + "description": "Earliest date of comment to fetch, a date-time with RFC 3339 formatting.", + "format": "date-time", + "location": "query", + "type": "string" + }, + "status": { + "enum": [ + "emptied", + "live", + "pending", + "spam" + ], + "enumDescriptions": [ + "Comments that have had their content removed", + "Comments that are publicly visible", + "Comments that are awaiting administrator approval", + "Comments marked as spam by the administrator" + ], + "location": "query", + "repeated": true, + "type": "string" + }, + "view": { + "description": "Access level with which to view the returned result. Note that some fields require elevated access.", + "enum": [ + "ADMIN", + "AUTHOR", + "READER" + ], + "enumDescriptions": [ + "Admin level detail", + "Author level detail", + "Reader level detail" + ], + "location": "query", + "type": "string" + } + }, + "path": "blogs/{blogId}/posts/{postId}/comments", + "response": { + "$ref": "CommentList" + }, + "scopes": [ + "https://www.googleapis.com/auth/blogger", + "https://www.googleapis.com/auth/blogger.readonly" + ] + }, + "listByBlog": { + "description": "Retrieves the comments for a blog, across all posts, possibly filtered.", + "httpMethod": "GET", + "id": "blogger.comments.listByBlog", + "parameterOrder": [ + "blogId" + ], + "parameters": { + "blogId": { + "description": "ID of the blog to fetch comments from.", + "location": "path", + "required": true, + "type": "string" + }, + "endDate": { + "description": "Latest date of comment to fetch, a date-time with RFC 3339 formatting.", + "format": "date-time", + "location": "query", + "type": "string" + }, + "fetchBodies": { + "description": "Whether the body content of the comments is included.", + "location": "query", + "type": "boolean" + }, + "maxResults": { + "description": "Maximum number of comments to include in the result.", + "format": "uint32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Continuation token if request is paged.", + "location": "query", + "type": "string" + }, + "startDate": { + "description": "Earliest date of comment to fetch, a date-time with RFC 3339 formatting.", + "format": "date-time", + "location": "query", + "type": "string" + }, + "status": { + "enum": [ + "emptied", + "live", + "pending", + "spam" + ], + "enumDescriptions": [ + "Comments that have had their content removed", + "Comments that are publicly visible", + "Comments that are awaiting administrator approval", + "Comments marked as spam by the administrator" + ], + "location": "query", + "repeated": true, + "type": "string" + } + }, + "path": "blogs/{blogId}/comments", + "response": { + "$ref": "CommentList" + }, + "scopes": [ + "https://www.googleapis.com/auth/blogger", + "https://www.googleapis.com/auth/blogger.readonly" + ] + }, + "markAsSpam": { + "description": "Marks a comment as spam.", + "httpMethod": "POST", + "id": "blogger.comments.markAsSpam", + "parameterOrder": [ + "blogId", + "postId", + "commentId" + ], + "parameters": { + "blogId": { + "description": "The ID of the Blog.", + "location": "path", + "required": true, + "type": "string" + }, + "commentId": { + "description": "The ID of the comment to mark as spam.", + "location": "path", + "required": true, + "type": "string" + }, + "postId": { + "description": "The ID of the Post.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "blogs/{blogId}/posts/{postId}/comments/{commentId}/spam", + "response": { + "$ref": "Comment" + }, + "scopes": [ + "https://www.googleapis.com/auth/blogger" + ] + }, + "removeContent": { + "description": "Removes the content of a comment.", + "httpMethod": "POST", + "id": "blogger.comments.removeContent", + "parameterOrder": [ + "blogId", + "postId", + "commentId" + ], + "parameters": { + "blogId": { + "description": "The ID of the Blog.", + "location": "path", + "required": true, + "type": "string" + }, + "commentId": { + "description": "The ID of the comment to delete content from.", + "location": "path", + "required": true, + "type": "string" + }, + "postId": { + "description": "The ID of the Post.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "blogs/{blogId}/posts/{postId}/comments/{commentId}/removecontent", + "response": { + "$ref": "Comment" + }, + "scopes": [ + "https://www.googleapis.com/auth/blogger" + ] + } } - } }, - "selfLink": { - "type": "string", - "description": "The API REST URL to fetch this resource from." + "pageViews": { + "methods": { + "get": { + "description": "Retrieve pageview stats for a Blog.", + "httpMethod": "GET", + "id": "blogger.pageViews.get", + "parameterOrder": [ + "blogId" + ], + "parameters": { + "blogId": { + "description": "The ID of the blog to get.", + "location": "path", + "required": true, + "type": "string" + }, + "range": { + "enum": [ + "30DAYS", + "7DAYS", + "all" + ], + "enumDescriptions": [ + "Page view counts from the last thirty days.", + "Page view counts from the last seven days.", + "Total page view counts from all time." + ], + "location": "query", + "repeated": true, + "type": "string" + } + }, + "path": "blogs/{blogId}/pageviews", + "response": { + "$ref": "Pageviews" + }, + "scopes": [ + "https://www.googleapis.com/auth/blogger" + ] + } + } }, - "url": { - "type": "string", - "description": "The user's profile page." + "pages": { + "methods": { + "delete": { + "description": "Delete a page by ID.", + "httpMethod": "DELETE", + "id": "blogger.pages.delete", + "parameterOrder": [ + "blogId", + "pageId" + ], + "parameters": { + "blogId": { + "description": "The ID of the Blog.", + "location": "path", + "required": true, + "type": "string" + }, + "pageId": { + "description": "The ID of the Page.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "blogs/{blogId}/pages/{pageId}", + "scopes": [ + "https://www.googleapis.com/auth/blogger" + ] + }, + "get": { + "description": "Gets one blog page by ID.", + "httpMethod": "GET", + "id": "blogger.pages.get", + "parameterOrder": [ + "blogId", + "pageId" + ], + "parameters": { + "blogId": { + "description": "ID of the blog containing the page.", + "location": "path", + "required": true, + "type": "string" + }, + "pageId": { + "description": "The ID of the page to get.", + "location": "path", + "required": true, + "type": "string" + }, + "view": { + "enum": [ + "ADMIN", + "AUTHOR", + "READER" + ], + "enumDescriptions": [ + "Admin level detail", + "Author level detail", + "Reader level detail" + ], + "location": "query", + "type": "string" + } + }, + "path": "blogs/{blogId}/pages/{pageId}", + "response": { + "$ref": "Page" + }, + "scopes": [ + "https://www.googleapis.com/auth/blogger", + "https://www.googleapis.com/auth/blogger.readonly" + ] + }, + "insert": { + "description": "Add a page.", + "httpMethod": "POST", + "id": "blogger.pages.insert", + "parameterOrder": [ + "blogId" + ], + "parameters": { + "blogId": { + "description": "ID of the blog to add the page to.", + "location": "path", + "required": true, + "type": "string" + }, + "isDraft": { + "description": "Whether to create the page as a draft (default: false).", + "location": "query", + "type": "boolean" + } + }, + "path": "blogs/{blogId}/pages", + "request": { + "$ref": "Page" + }, + "response": { + "$ref": "Page" + }, + "scopes": [ + "https://www.googleapis.com/auth/blogger" + ] + }, + "list": { + "description": "Retrieves the pages for a blog, optionally including non-LIVE statuses.", + "httpMethod": "GET", + "id": "blogger.pages.list", + "parameterOrder": [ + "blogId" + ], + "parameters": { + "blogId": { + "description": "ID of the blog to fetch Pages from.", + "location": "path", + "required": true, + "type": "string" + }, + "fetchBodies": { + "description": "Whether to retrieve the Page bodies.", + "location": "query", + "type": "boolean" + }, + "maxResults": { + "description": "Maximum number of Pages to fetch.", + "format": "uint32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Continuation token if the request is paged.", + "location": "query", + "type": "string" + }, + "status": { + "enum": [ + "draft", + "live" + ], + "enumDescriptions": [ + "Draft (unpublished) Pages", + "Pages that are publicly visible" + ], + "location": "query", + "repeated": true, + "type": "string" + }, + "view": { + "description": "Access level with which to view the returned result. Note that some fields require elevated access.", + "enum": [ + "ADMIN", + "AUTHOR", + "READER" + ], + "enumDescriptions": [ + "Admin level detail", + "Author level detail", + "Reader level detail" + ], + "location": "query", + "type": "string" + } + }, + "path": "blogs/{blogId}/pages", + "response": { + "$ref": "PageList" + }, + "scopes": [ + "https://www.googleapis.com/auth/blogger", + "https://www.googleapis.com/auth/blogger.readonly" + ] + }, + "patch": { + "description": "Update a page. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "blogger.pages.patch", + "parameterOrder": [ + "blogId", + "pageId" + ], + "parameters": { + "blogId": { + "description": "The ID of the Blog.", + "location": "path", + "required": true, + "type": "string" + }, + "pageId": { + "description": "The ID of the Page.", + "location": "path", + "required": true, + "type": "string" + }, + "publish": { + "description": "Whether a publish action should be performed when the page is updated (default: false).", + "location": "query", + "type": "boolean" + }, + "revert": { + "description": "Whether a revert action should be performed when the page is updated (default: false).", + "location": "query", + "type": "boolean" + } + }, + "path": "blogs/{blogId}/pages/{pageId}", + "request": { + "$ref": "Page" + }, + "response": { + "$ref": "Page" + }, + "scopes": [ + "https://www.googleapis.com/auth/blogger" + ] + }, + "publish": { + "description": "Publishes a draft page.", + "httpMethod": "POST", + "id": "blogger.pages.publish", + "parameterOrder": [ + "blogId", + "pageId" + ], + "parameters": { + "blogId": { + "description": "The ID of the blog.", + "location": "path", + "required": true, + "type": "string" + }, + "pageId": { + "description": "The ID of the page.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "blogs/{blogId}/pages/{pageId}/publish", + "response": { + "$ref": "Page" + }, + "scopes": [ + "https://www.googleapis.com/auth/blogger" + ] + }, + "revert": { + "description": "Revert a published or scheduled page to draft state.", + "httpMethod": "POST", + "id": "blogger.pages.revert", + "parameterOrder": [ + "blogId", + "pageId" + ], + "parameters": { + "blogId": { + "description": "The ID of the blog.", + "location": "path", + "required": true, + "type": "string" + }, + "pageId": { + "description": "The ID of the page.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "blogs/{blogId}/pages/{pageId}/revert", + "response": { + "$ref": "Page" + }, + "scopes": [ + "https://www.googleapis.com/auth/blogger" + ] + }, + "update": { + "description": "Update a page.", + "httpMethod": "PUT", + "id": "blogger.pages.update", + "parameterOrder": [ + "blogId", + "pageId" + ], + "parameters": { + "blogId": { + "description": "The ID of the Blog.", + "location": "path", + "required": true, + "type": "string" + }, + "pageId": { + "description": "The ID of the Page.", + "location": "path", + "required": true, + "type": "string" + }, + "publish": { + "description": "Whether a publish action should be performed when the page is updated (default: false).", + "location": "query", + "type": "boolean" + }, + "revert": { + "description": "Whether a revert action should be performed when the page is updated (default: false).", + "location": "query", + "type": "boolean" + } + }, + "path": "blogs/{blogId}/pages/{pageId}", + "request": { + "$ref": "Page" + }, + "response": { + "$ref": "Page" + }, + "scopes": [ + "https://www.googleapis.com/auth/blogger" + ] + } + } + }, + "postUserInfos": { + "methods": { + "get": { + "description": "Gets one post and user info pair, by post ID and user ID. The post user info contains per-user information about the post, such as access rights, specific to the user.", + "httpMethod": "GET", + "id": "blogger.postUserInfos.get", + "parameterOrder": [ + "userId", + "blogId", + "postId" + ], + "parameters": { + "blogId": { + "description": "The ID of the blog.", + "location": "path", + "required": true, + "type": "string" + }, + "maxComments": { + "description": "Maximum number of comments to pull back on a post.", + "format": "uint32", + "location": "query", + "type": "integer" + }, + "postId": { + "description": "The ID of the post to get.", + "location": "path", + "required": true, + "type": "string" + }, + "userId": { + "description": "ID of the user for the per-user information to be fetched. Either the word 'self' (sans quote marks) or the user's profile identifier.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "users/{userId}/blogs/{blogId}/posts/{postId}", + "response": { + "$ref": "PostUserInfo" + }, + "scopes": [ + "https://www.googleapis.com/auth/blogger", + "https://www.googleapis.com/auth/blogger.readonly" + ] + }, + "list": { + "description": "Retrieves a list of post and post user info pairs, possibly filtered. The post user info contains per-user information about the post, such as access rights, specific to the user.", + "httpMethod": "GET", + "id": "blogger.postUserInfos.list", + "parameterOrder": [ + "userId", + "blogId" + ], + "parameters": { + "blogId": { + "description": "ID of the blog to fetch posts from.", + "location": "path", + "required": true, + "type": "string" + }, + "endDate": { + "description": "Latest post date to fetch, a date-time with RFC 3339 formatting.", + "format": "date-time", + "location": "query", + "type": "string" + }, + "fetchBodies": { + "default": "false", + "description": "Whether the body content of posts is included. Default is false.", + "location": "query", + "type": "boolean" + }, + "labels": { + "description": "Comma-separated list of labels to search for.", + "location": "query", + "type": "string" + }, + "maxResults": { + "description": "Maximum number of posts to fetch.", + "format": "uint32", + "location": "query", + "type": "integer" + }, + "orderBy": { + "default": "PUBLISHED", + "description": "Sort order applied to search results. Default is published.", + "enum": [ + "published", + "updated" + ], + "enumDescriptions": [ + "Order by the date the post was published", + "Order by the date the post was last updated" + ], + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Continuation token if the request is paged.", + "location": "query", + "type": "string" + }, + "startDate": { + "description": "Earliest post date to fetch, a date-time with RFC 3339 formatting.", + "format": "date-time", + "location": "query", + "type": "string" + }, + "status": { + "enum": [ + "draft", + "live", + "scheduled" + ], + "enumDescriptions": [ + "Draft posts", + "Published posts", + "Posts that are scheduled to publish in future." + ], + "location": "query", + "repeated": true, + "type": "string" + }, + "userId": { + "description": "ID of the user for the per-user information to be fetched. Either the word 'self' (sans quote marks) or the user's profile identifier.", + "location": "path", + "required": true, + "type": "string" + }, + "view": { + "description": "Access level with which to view the returned result. Note that some fields require elevated access.", + "enum": [ + "ADMIN", + "AUTHOR", + "READER" + ], + "enumDescriptions": [ + "Admin level detail", + "Author level detail", + "Reader level detail" + ], + "location": "query", + "type": "string" + } + }, + "path": "users/{userId}/blogs/{blogId}/posts", + "response": { + "$ref": "PostUserInfosList" + }, + "scopes": [ + "https://www.googleapis.com/auth/blogger", + "https://www.googleapis.com/auth/blogger.readonly" + ] + } + } + }, + "posts": { + "methods": { + "delete": { + "description": "Delete a post by ID.", + "httpMethod": "DELETE", + "id": "blogger.posts.delete", + "parameterOrder": [ + "blogId", + "postId" + ], + "parameters": { + "blogId": { + "description": "The ID of the Blog.", + "location": "path", + "required": true, + "type": "string" + }, + "postId": { + "description": "The ID of the Post.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "blogs/{blogId}/posts/{postId}", + "scopes": [ + "https://www.googleapis.com/auth/blogger" + ] + }, + "get": { + "description": "Get a post by ID.", + "httpMethod": "GET", + "id": "blogger.posts.get", + "parameterOrder": [ + "blogId", + "postId" + ], + "parameters": { + "blogId": { + "description": "ID of the blog to fetch the post from.", + "location": "path", + "required": true, + "type": "string" + }, + "fetchBody": { + "default": "true", + "description": "Whether the body content of the post is included (default: true). This should be set to false when the post bodies are not required, to help minimize traffic.", + "location": "query", + "type": "boolean" + }, + "fetchImages": { + "description": "Whether image URL metadata for each post is included (default: false).", + "location": "query", + "type": "boolean" + }, + "maxComments": { + "description": "Maximum number of comments to pull back on a post.", + "format": "uint32", + "location": "query", + "type": "integer" + }, + "postId": { + "description": "The ID of the post", + "location": "path", + "required": true, + "type": "string" + }, + "view": { + "description": "Access level with which to view the returned result. Note that some fields require elevated access.", + "enum": [ + "ADMIN", + "AUTHOR", + "READER" + ], + "enumDescriptions": [ + "Admin level detail", + "Author level detail", + "Reader level detail" + ], + "location": "query", + "type": "string" + } + }, + "path": "blogs/{blogId}/posts/{postId}", + "response": { + "$ref": "Post" + }, + "scopes": [ + "https://www.googleapis.com/auth/blogger", + "https://www.googleapis.com/auth/blogger.readonly" + ] + }, + "getByPath": { + "description": "Retrieve a Post by Path.", + "httpMethod": "GET", + "id": "blogger.posts.getByPath", + "parameterOrder": [ + "blogId", + "path" + ], + "parameters": { + "blogId": { + "description": "ID of the blog to fetch the post from.", + "location": "path", + "required": true, + "type": "string" + }, + "maxComments": { + "description": "Maximum number of comments to pull back on a post.", + "format": "uint32", + "location": "query", + "type": "integer" + }, + "path": { + "description": "Path of the Post to retrieve.", + "location": "query", + "required": true, + "type": "string" + }, + "view": { + "description": "Access level with which to view the returned result. Note that some fields require elevated access.", + "enum": [ + "ADMIN", + "AUTHOR", + "READER" + ], + "enumDescriptions": [ + "Admin level detail", + "Author level detail", + "Reader level detail" + ], + "location": "query", + "type": "string" + } + }, + "path": "blogs/{blogId}/posts/bypath", + "response": { + "$ref": "Post" + }, + "scopes": [ + "https://www.googleapis.com/auth/blogger", + "https://www.googleapis.com/auth/blogger.readonly" + ] + }, + "insert": { + "description": "Add a post.", + "httpMethod": "POST", + "id": "blogger.posts.insert", + "parameterOrder": [ + "blogId" + ], + "parameters": { + "blogId": { + "description": "ID of the blog to add the post to.", + "location": "path", + "required": true, + "type": "string" + }, + "fetchBody": { + "default": "true", + "description": "Whether the body content of the post is included with the result (default: true).", + "location": "query", + "type": "boolean" + }, + "fetchImages": { + "description": "Whether image URL metadata for each post is included in the returned result (default: false).", + "location": "query", + "type": "boolean" + }, + "isDraft": { + "description": "Whether to create the post as a draft (default: false).", + "location": "query", + "type": "boolean" + } + }, + "path": "blogs/{blogId}/posts", + "request": { + "$ref": "Post" + }, + "response": { + "$ref": "Post" + }, + "scopes": [ + "https://www.googleapis.com/auth/blogger" + ] + }, + "list": { + "description": "Retrieves a list of posts, possibly filtered.", + "httpMethod": "GET", + "id": "blogger.posts.list", + "parameterOrder": [ + "blogId" + ], + "parameters": { + "blogId": { + "description": "ID of the blog to fetch posts from.", + "location": "path", + "required": true, + "type": "string" + }, + "endDate": { + "description": "Latest post date to fetch, a date-time with RFC 3339 formatting.", + "format": "date-time", + "location": "query", + "type": "string" + }, + "fetchBodies": { + "default": "true", + "description": "Whether the body content of posts is included (default: true). This should be set to false when the post bodies are not required, to help minimize traffic.", + "location": "query", + "type": "boolean" + }, + "fetchImages": { + "description": "Whether image URL metadata for each post is included.", + "location": "query", + "type": "boolean" + }, + "labels": { + "description": "Comma-separated list of labels to search for.", + "location": "query", + "type": "string" + }, + "maxResults": { + "description": "Maximum number of posts to fetch.", + "format": "uint32", + "location": "query", + "type": "integer" + }, + "orderBy": { + "default": "PUBLISHED", + "description": "Sort search results", + "enum": [ + "published", + "updated" + ], + "enumDescriptions": [ + "Order by the date the post was published", + "Order by the date the post was last updated" + ], + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Continuation token if the request is paged.", + "location": "query", + "type": "string" + }, + "startDate": { + "description": "Earliest post date to fetch, a date-time with RFC 3339 formatting.", + "format": "date-time", + "location": "query", + "type": "string" + }, + "status": { + "description": "Statuses to include in the results.", + "enum": [ + "draft", + "live", + "scheduled" + ], + "enumDescriptions": [ + "Draft (non-published) posts.", + "Published posts", + "Posts that are scheduled to publish in the future." + ], + "location": "query", + "repeated": true, + "type": "string" + }, + "view": { + "description": "Access level with which to view the returned result. Note that some fields require escalated access.", + "enum": [ + "ADMIN", + "AUTHOR", + "READER" + ], + "enumDescriptions": [ + "Admin level detail", + "Author level detail", + "Reader level detail" + ], + "location": "query", + "type": "string" + } + }, + "path": "blogs/{blogId}/posts", + "response": { + "$ref": "PostList" + }, + "scopes": [ + "https://www.googleapis.com/auth/blogger", + "https://www.googleapis.com/auth/blogger.readonly" + ] + }, + "patch": { + "description": "Update a post. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "blogger.posts.patch", + "parameterOrder": [ + "blogId", + "postId" + ], + "parameters": { + "blogId": { + "description": "The ID of the Blog.", + "location": "path", + "required": true, + "type": "string" + }, + "fetchBody": { + "default": "true", + "description": "Whether the body content of the post is included with the result (default: true).", + "location": "query", + "type": "boolean" + }, + "fetchImages": { + "description": "Whether image URL metadata for each post is included in the returned result (default: false).", + "location": "query", + "type": "boolean" + }, + "maxComments": { + "description": "Maximum number of comments to retrieve with the returned post.", + "format": "uint32", + "location": "query", + "type": "integer" + }, + "postId": { + "description": "The ID of the Post.", + "location": "path", + "required": true, + "type": "string" + }, + "publish": { + "description": "Whether a publish action should be performed when the post is updated (default: false).", + "location": "query", + "type": "boolean" + }, + "revert": { + "description": "Whether a revert action should be performed when the post is updated (default: false).", + "location": "query", + "type": "boolean" + } + }, + "path": "blogs/{blogId}/posts/{postId}", + "request": { + "$ref": "Post" + }, + "response": { + "$ref": "Post" + }, + "scopes": [ + "https://www.googleapis.com/auth/blogger" + ] + }, + "publish": { + "description": "Publishes a draft post, optionally at the specific time of the given publishDate parameter.", + "httpMethod": "POST", + "id": "blogger.posts.publish", + "parameterOrder": [ + "blogId", + "postId" + ], + "parameters": { + "blogId": { + "description": "The ID of the Blog.", + "location": "path", + "required": true, + "type": "string" + }, + "postId": { + "description": "The ID of the Post.", + "location": "path", + "required": true, + "type": "string" + }, + "publishDate": { + "description": "Optional date and time to schedule the publishing of the Blog. If no publishDate parameter is given, the post is either published at the a previously saved schedule date (if present), or the current time. If a future date is given, the post will be scheduled to be published.", + "format": "date-time", + "location": "query", + "type": "string" + } + }, + "path": "blogs/{blogId}/posts/{postId}/publish", + "response": { + "$ref": "Post" + }, + "scopes": [ + "https://www.googleapis.com/auth/blogger" + ] + }, + "revert": { + "description": "Revert a published or scheduled post to draft state.", + "httpMethod": "POST", + "id": "blogger.posts.revert", + "parameterOrder": [ + "blogId", + "postId" + ], + "parameters": { + "blogId": { + "description": "The ID of the Blog.", + "location": "path", + "required": true, + "type": "string" + }, + "postId": { + "description": "The ID of the Post.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "blogs/{blogId}/posts/{postId}/revert", + "response": { + "$ref": "Post" + }, + "scopes": [ + "https://www.googleapis.com/auth/blogger" + ] + }, + "search": { + "description": "Search for a post.", + "httpMethod": "GET", + "id": "blogger.posts.search", + "parameterOrder": [ + "blogId", + "q" + ], + "parameters": { + "blogId": { + "description": "ID of the blog to fetch the post from.", + "location": "path", + "required": true, + "type": "string" + }, + "fetchBodies": { + "default": "true", + "description": "Whether the body content of posts is included (default: true). This should be set to false when the post bodies are not required, to help minimize traffic.", + "location": "query", + "type": "boolean" + }, + "orderBy": { + "default": "PUBLISHED", + "description": "Sort search results", + "enum": [ + "published", + "updated" + ], + "enumDescriptions": [ + "Order by the date the post was published", + "Order by the date the post was last updated" + ], + "location": "query", + "type": "string" + }, + "q": { + "description": "Query terms to search this blog for matching posts.", + "location": "query", + "required": true, + "type": "string" + } + }, + "path": "blogs/{blogId}/posts/search", + "response": { + "$ref": "PostList" + }, + "scopes": [ + "https://www.googleapis.com/auth/blogger", + "https://www.googleapis.com/auth/blogger.readonly" + ] + }, + "update": { + "description": "Update a post.", + "httpMethod": "PUT", + "id": "blogger.posts.update", + "parameterOrder": [ + "blogId", + "postId" + ], + "parameters": { + "blogId": { + "description": "The ID of the Blog.", + "location": "path", + "required": true, + "type": "string" + }, + "fetchBody": { + "default": "true", + "description": "Whether the body content of the post is included with the result (default: true).", + "location": "query", + "type": "boolean" + }, + "fetchImages": { + "description": "Whether image URL metadata for each post is included in the returned result (default: false).", + "location": "query", + "type": "boolean" + }, + "maxComments": { + "description": "Maximum number of comments to retrieve with the returned post.", + "format": "uint32", + "location": "query", + "type": "integer" + }, + "postId": { + "description": "The ID of the Post.", + "location": "path", + "required": true, + "type": "string" + }, + "publish": { + "description": "Whether a publish action should be performed when the post is updated (default: false).", + "location": "query", + "type": "boolean" + }, + "revert": { + "description": "Whether a revert action should be performed when the post is updated (default: false).", + "location": "query", + "type": "boolean" + } + }, + "path": "blogs/{blogId}/posts/{postId}", + "request": { + "$ref": "Post" + }, + "response": { + "$ref": "Post" + }, + "scopes": [ + "https://www.googleapis.com/auth/blogger" + ] + } + } + }, + "users": { + "methods": { + "get": { + "description": "Gets one user by ID.", + "httpMethod": "GET", + "id": "blogger.users.get", + "parameterOrder": [ + "userId" + ], + "parameters": { + "userId": { + "description": "The ID of the user to get.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "users/{userId}", + "response": { + "$ref": "User" + }, + "scopes": [ + "https://www.googleapis.com/auth/blogger", + "https://www.googleapis.com/auth/blogger.readonly" + ] + } + } } - } - } - }, - "resources": { - "blogUserInfos": { - "methods": { - "get": { - "id": "blogger.blogUserInfos.get", - "path": "users/{userId}/blogs/{blogId}", - "httpMethod": "GET", - "description": "Gets one blog and user info pair by blogId and userId.", - "parameters": { - "blogId": { - "type": "string", - "description": "The ID of the blog to get.", - "required": true, - "location": "path" - }, - "maxPosts": { - "type": "integer", - "description": "Maximum number of posts to pull back with the blog.", - "format": "uint32", - "location": "query" - }, - "userId": { - "type": "string", - "description": "ID of the user whose blogs are to be fetched. Either the word 'self' (sans quote marks) or the user's profile identifier.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "userId", - "blogId" - ], - "response": { - "$ref": "BlogUserInfo" - }, - "scopes": [ - "https://www.googleapis.com/auth/blogger", - "https://www.googleapis.com/auth/blogger.readonly" - ] - } - } }, - "blogs": { - "methods": { - "get": { - "id": "blogger.blogs.get", - "path": "blogs/{blogId}", - "httpMethod": "GET", - "description": "Gets one blog by ID.", - "parameters": { - "blogId": { - "type": "string", - "description": "The ID of the blog to get.", - "required": true, - "location": "path" + "revision": "20150422", + "rootUrl": "https://www.googleapis.com/", + "schemas": { + "Blog": { + "id": "Blog", + "properties": { + "customMetaData": { + "description": "The JSON custom meta-data for the Blog", + "type": "string" + }, + "description": { + "description": "The description of this blog. This is displayed underneath the title.", + "type": "string" + }, + "id": { + "description": "The identifier for this resource.", + "type": "string" + }, + "kind": { + "default": "blogger#blog", + "description": "The kind of this entry. Always blogger#blog", + "type": "string" + }, + "locale": { + "description": "The locale this Blog is set to.", + "properties": { + "country": { + "description": "The country this blog's locale is set to.", + "type": "string" + }, + "language": { + "description": "The language this blog is authored in.", + "type": "string" + }, + "variant": { + "description": "The language variant this blog is authored in.", + "type": "string" + } + }, + "type": "object" + }, + "name": { + "description": "The name of this blog. This is displayed as the title.", + "type": "string" + }, + "pages": { + "description": "The container of pages in this blog.", + "properties": { + "selfLink": { + "description": "The URL of the container for pages in this blog.", + "type": "string" + }, + "totalItems": { + "description": "The count of pages in this blog.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "posts": { + "description": "The container of posts in this blog.", + "properties": { + "items": { + "description": "The List of Posts for this Blog.", + "items": { + "$ref": "Post" + }, + "type": "array" + }, + "selfLink": { + "description": "The URL of the container for posts in this blog.", + "type": "string" + }, + "totalItems": { + "description": "The count of posts in this blog.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "published": { + "description": "RFC 3339 date-time when this blog was published.", + "format": "date-time", + "type": "string" + }, + "selfLink": { + "description": "The API REST URL to fetch this resource from.", + "type": "string" + }, + "status": { + "description": "The status of the blog.", + "type": "string" + }, + "updated": { + "description": "RFC 3339 date-time when this blog was last updated.", + "format": "date-time", + "type": "string" + }, + "url": { + "description": "The URL where this blog is published.", + "type": "string" + } }, - "maxPosts": { - "type": "integer", - "description": "Maximum number of posts to pull back with the blog.", - "format": "uint32", - "location": "query" - }, - "view": { - "type": "string", - "description": "Access level with which to view the blog. Note that some fields require elevated access.", - "enum": [ - "ADMIN", - "AUTHOR", - "READER" - ], - "enumDescriptions": [ - "Admin level detail.", - "Author level detail.", - "Reader level detail." - ], - "location": "query" - } - }, - "parameterOrder": [ - "blogId" - ], - "response": { - "$ref": "Blog" - }, - "scopes": [ - "https://www.googleapis.com/auth/blogger", - "https://www.googleapis.com/auth/blogger.readonly" - ] + "type": "object" }, - "getByUrl": { - "id": "blogger.blogs.getByUrl", - "path": "blogs/byurl", - "httpMethod": "GET", - "description": "Retrieve a Blog by URL.", - "parameters": { - "url": { - "type": "string", - "description": "The URL of the blog to retrieve.", - "required": true, - "location": "query" + "BlogList": { + "id": "BlogList", + "properties": { + "blogUserInfos": { + "description": "Admin level list of blog per-user information", + "items": { + "$ref": "BlogUserInfo" + }, + "type": "array" + }, + "items": { + "description": "The list of Blogs this user has Authorship or Admin rights over.", + "items": { + "$ref": "Blog" + }, + "type": "array" + }, + "kind": { + "default": "blogger#blogList", + "description": "The kind of this entity. Always blogger#blogList", + "type": "string" + } }, - "view": { - "type": "string", - "description": "Access level with which to view the blog. Note that some fields require elevated access.", - "enum": [ - "ADMIN", - "AUTHOR", - "READER" - ], - "enumDescriptions": [ - "Admin level detail.", - "Author level detail.", - "Reader level detail." - ], - "location": "query" - } - }, - "parameterOrder": [ - "url" - ], - "response": { - "$ref": "Blog" - }, - "scopes": [ - "https://www.googleapis.com/auth/blogger", - "https://www.googleapis.com/auth/blogger.readonly" - ] + "type": "object" }, - "listByUser": { - "id": "blogger.blogs.listByUser", - "path": "users/{userId}/blogs", - "httpMethod": "GET", - "description": "Retrieves a list of blogs, possibly filtered.", - "parameters": { - "fetchUserInfo": { - "type": "boolean", - "description": "Whether the response is a list of blogs with per-user information instead of just blogs.", - "location": "query" + "BlogPerUserInfo": { + "id": "BlogPerUserInfo", + "properties": { + "blogId": { + "description": "ID of the Blog resource", + "type": "string" + }, + "hasAdminAccess": { + "description": "True if the user has Admin level access to the blog.", + "type": "boolean" + }, + "kind": { + "default": "blogger#blogPerUserInfo", + "description": "The kind of this entity. Always blogger#blogPerUserInfo", + "type": "string" + }, + "photosAlbumKey": { + "description": "The Photo Album Key for the user when adding photos to the blog", + "type": "string" + }, + "role": { + "description": "Access permissions that the user has for the blog (ADMIN, AUTHOR, or READER).", + "type": "string" + }, + "userId": { + "description": "ID of the User", + "type": "string" + } }, - "role": { - "type": "string", - "description": "User access types for blogs to include in the results, e.g. AUTHOR will return blogs where the user has author level access. If no roles are specified, defaults to ADMIN and AUTHOR roles.", - "enum": [ - "ADMIN", - "AUTHOR", - "READER" - ], - "enumDescriptions": [ - "Admin role - Blogs where the user has Admin level access.", - "Author role - Blogs where the user has Author level access.", - "Reader role - Blogs where the user has Reader level access (to a private blog)." - ], - "repeated": true, - "location": "query" + "type": "object" + }, + "BlogUserInfo": { + "id": "BlogUserInfo", + "properties": { + "blog": { + "$ref": "Blog", + "description": "The Blog resource." + }, + "blog_user_info": { + "$ref": "BlogPerUserInfo", + "description": "Information about a User for the Blog." + }, + "kind": { + "default": "blogger#blogUserInfo", + "description": "The kind of this entity. Always blogger#blogUserInfo", + "type": "string" + } }, - "status": { - "type": "string", - "description": "Blog statuses to include in the result (default: Live blogs only). Note that ADMIN access is required to view deleted blogs.", - "default": "LIVE", - "enum": [ - "DELETED", - "LIVE" - ], - "enumDescriptions": [ - "Blog has been deleted by an administrator.", - "Blog is currently live." - ], - "repeated": true, - "location": "query" + "type": "object" + }, + "Comment": { + "id": "Comment", + "properties": { + "author": { + "description": "The author of this Comment.", + "properties": { + "displayName": { + "description": "The display name.", + "type": "string" + }, + "id": { + "description": "The identifier of the Comment creator.", + "type": "string" + }, + "image": { + "description": "The comment creator's avatar.", + "properties": { + "url": { + "description": "The comment creator's avatar URL.", + "type": "string" + } + }, + "type": "object" + }, + "url": { + "description": "The URL of the Comment creator's Profile page.", + "type": "string" + } + }, + "type": "object" + }, + "blog": { + "description": "Data about the blog containing this comment.", + "properties": { + "id": { + "description": "The identifier of the blog containing this comment.", + "type": "string" + } + }, + "type": "object" + }, + "content": { + "description": "The actual content of the comment. May include HTML markup.", + "type": "string" + }, + "id": { + "description": "The identifier for this resource.", + "type": "string" + }, + "inReplyTo": { + "description": "Data about the comment this is in reply to.", + "properties": { + "id": { + "description": "The identified of the parent of this comment.", + "type": "string" + } + }, + "type": "object" + }, + "kind": { + "default": "blogger#comment", + "description": "The kind of this entry. Always blogger#comment", + "type": "string" + }, + "post": { + "description": "Data about the post containing this comment.", + "properties": { + "id": { + "description": "The identifier of the post containing this comment.", + "type": "string" + } + }, + "type": "object" + }, + "published": { + "description": "RFC 3339 date-time when this comment was published.", + "format": "date-time", + "type": "string" + }, + "selfLink": { + "description": "The API REST URL to fetch this resource from.", + "type": "string" + }, + "status": { + "description": "The status of the comment (only populated for admin users)", + "type": "string" + }, + "updated": { + "description": "RFC 3339 date-time when this comment was last updated.", + "format": "date-time", + "type": "string" + } }, - "userId": { - "type": "string", - "description": "ID of the user whose blogs are to be fetched. Either the word 'self' (sans quote marks) or the user's profile identifier.", - "required": true, - "location": "path" + "type": "object" + }, + "CommentList": { + "id": "CommentList", + "properties": { + "etag": { + "description": "Etag of the response.", + "type": "string" + }, + "items": { + "description": "The List of Comments for a Post.", + "items": { + "$ref": "Comment" + }, + "type": "array" + }, + "kind": { + "default": "blogger#commentList", + "description": "The kind of this entry. Always blogger#commentList", + "type": "string" + }, + "nextPageToken": { + "description": "Pagination token to fetch the next page, if one exists.", + "type": "string" + }, + "prevPageToken": { + "description": "Pagination token to fetch the previous page, if one exists.", + "type": "string" + } }, - "view": { - "type": "string", - "description": "Access level with which to view the blogs. Note that some fields require elevated access.", - "enum": [ - "ADMIN", - "AUTHOR", - "READER" - ], - "enumDescriptions": [ - "Admin level detail.", - "Author level detail.", - "Reader level detail." - ], - "location": "query" - } - }, - "parameterOrder": [ - "userId" - ], - "response": { - "$ref": "BlogList" - }, - "scopes": [ - "https://www.googleapis.com/auth/blogger", - "https://www.googleapis.com/auth/blogger.readonly" - ] + "type": "object" + }, + "Page": { + "id": "Page", + "properties": { + "author": { + "description": "The author of this Page.", + "properties": { + "displayName": { + "description": "The display name.", + "type": "string" + }, + "id": { + "description": "The identifier of the Page creator.", + "type": "string" + }, + "image": { + "description": "The page author's avatar.", + "properties": { + "url": { + "description": "The page author's avatar URL.", + "type": "string" + } + }, + "type": "object" + }, + "url": { + "description": "The URL of the Page creator's Profile page.", + "type": "string" + } + }, + "type": "object" + }, + "blog": { + "description": "Data about the blog containing this Page.", + "properties": { + "id": { + "description": "The identifier of the blog containing this page.", + "type": "string" + } + }, + "type": "object" + }, + "content": { + "description": "The body content of this Page, in HTML.", + "type": "string" + }, + "etag": { + "description": "Etag of the resource.", + "type": "string" + }, + "id": { + "description": "The identifier for this resource.", + "type": "string" + }, + "kind": { + "default": "blogger#page", + "description": "The kind of this entity. Always blogger#page", + "type": "string" + }, + "published": { + "description": "RFC 3339 date-time when this Page was published.", + "format": "date-time", + "type": "string" + }, + "selfLink": { + "description": "The API REST URL to fetch this resource from.", + "type": "string" + }, + "status": { + "description": "The status of the page for admin resources (either LIVE or DRAFT).", + "type": "string" + }, + "title": { + "description": "The title of this entity. This is the name displayed in the Admin user interface.", + "type": "string" + }, + "updated": { + "description": "RFC 3339 date-time when this Page was last updated.", + "format": "date-time", + "type": "string" + }, + "url": { + "description": "The URL that this Page is displayed at.", + "type": "string" + } + }, + "type": "object" + }, + "PageList": { + "id": "PageList", + "properties": { + "etag": { + "description": "Etag of the response.", + "type": "string" + }, + "items": { + "description": "The list of Pages for a Blog.", + "items": { + "$ref": "Page" + }, + "type": "array" + }, + "kind": { + "default": "blogger#pageList", + "description": "The kind of this entity. Always blogger#pageList", + "type": "string" + }, + "nextPageToken": { + "description": "Pagination token to fetch the next page, if one exists.", + "type": "string" + } + }, + "type": "object" + }, + "Pageviews": { + "id": "Pageviews", + "properties": { + "blogId": { + "description": "Blog Id", + "type": "string" + }, + "counts": { + "description": "The container of posts in this blog.", + "items": { + "properties": { + "count": { + "description": "Count of page views for the given time range", + "format": "int64", + "type": "string" + }, + "timeRange": { + "description": "Time range the given count applies to", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "kind": { + "default": "blogger#page_views", + "description": "The kind of this entry. Always blogger#page_views", + "type": "string" + } + }, + "type": "object" + }, + "Post": { + "id": "Post", + "properties": { + "author": { + "description": "The author of this Post.", + "properties": { + "displayName": { + "description": "The display name.", + "type": "string" + }, + "id": { + "description": "The identifier of the Post creator.", + "type": "string" + }, + "image": { + "description": "The Post author's avatar.", + "properties": { + "url": { + "description": "The Post author's avatar URL.", + "type": "string" + } + }, + "type": "object" + }, + "url": { + "description": "The URL of the Post creator's Profile page.", + "type": "string" + } + }, + "type": "object" + }, + "blog": { + "description": "Data about the blog containing this Post.", + "properties": { + "id": { + "description": "The identifier of the Blog that contains this Post.", + "type": "string" + } + }, + "type": "object" + }, + "content": { + "description": "The content of the Post. May contain HTML markup.", + "type": "string" + }, + "customMetaData": { + "description": "The JSON meta-data for the Post.", + "type": "string" + }, + "etag": { + "description": "Etag of the resource.", + "type": "string" + }, + "id": { + "description": "The identifier of this Post.", + "type": "string" + }, + "images": { + "description": "Display image for the Post.", + "items": { + "properties": { + "url": { + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "kind": { + "default": "blogger#post", + "description": "The kind of this entity. Always blogger#post", + "type": "string" + }, + "labels": { + "description": "The list of labels this Post was tagged with.", + "items": { + "type": "string" + }, + "type": "array" + }, + "location": { + "description": "The location for geotagged posts.", + "properties": { + "lat": { + "description": "Location's latitude.", + "format": "double", + "type": "number" + }, + "lng": { + "description": "Location's longitude.", + "format": "double", + "type": "number" + }, + "name": { + "description": "Location name.", + "type": "string" + }, + "span": { + "description": "Location's viewport span. Can be used when rendering a map preview.", + "type": "string" + } + }, + "type": "object" + }, + "published": { + "description": "RFC 3339 date-time when this Post was published.", + "format": "date-time", + "type": "string" + }, + "readerComments": { + "description": "Comment control and display setting for readers of this post.", + "type": "string" + }, + "replies": { + "description": "The container of comments on this Post.", + "properties": { + "items": { + "description": "The List of Comments for this Post.", + "items": { + "$ref": "Comment" + }, + "type": "array" + }, + "selfLink": { + "description": "The URL of the comments on this post.", + "type": "string" + }, + "totalItems": { + "description": "The count of comments on this post.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "selfLink": { + "description": "The API REST URL to fetch this resource from.", + "type": "string" + }, + "status": { + "description": "Status of the post. Only set for admin-level requests", + "type": "string" + }, + "title": { + "description": "The title of the Post.", + "type": "string" + }, + "titleLink": { + "description": "The title link URL, similar to atom's related link.", + "type": "string" + }, + "updated": { + "description": "RFC 3339 date-time when this Post was last updated.", + "format": "date-time", + "type": "string" + }, + "url": { + "description": "The URL where this Post is displayed.", + "type": "string" + } + }, + "type": "object" + }, + "PostList": { + "id": "PostList", + "properties": { + "etag": { + "description": "Etag of the response.", + "type": "string" + }, + "items": { + "description": "The list of Posts for this Blog.", + "items": { + "$ref": "Post" + }, + "type": "array" + }, + "kind": { + "default": "blogger#postList", + "description": "The kind of this entity. Always blogger#postList", + "type": "string" + }, + "nextPageToken": { + "description": "Pagination token to fetch the next page, if one exists.", + "type": "string" + } + }, + "type": "object" + }, + "PostPerUserInfo": { + "id": "PostPerUserInfo", + "properties": { + "blogId": { + "description": "ID of the Blog that the post resource belongs to.", + "type": "string" + }, + "hasEditAccess": { + "description": "True if the user has Author level access to the post.", + "type": "boolean" + }, + "kind": { + "default": "blogger#postPerUserInfo", + "description": "The kind of this entity. Always blogger#postPerUserInfo", + "type": "string" + }, + "postId": { + "description": "ID of the Post resource.", + "type": "string" + }, + "userId": { + "description": "ID of the User.", + "type": "string" + } + }, + "type": "object" + }, + "PostUserInfo": { + "id": "PostUserInfo", + "properties": { + "kind": { + "default": "blogger#postUserInfo", + "description": "The kind of this entity. Always blogger#postUserInfo", + "type": "string" + }, + "post": { + "$ref": "Post", + "description": "The Post resource." + }, + "post_user_info": { + "$ref": "PostPerUserInfo", + "description": "Information about a User for the Post." + } + }, + "type": "object" + }, + "PostUserInfosList": { + "id": "PostUserInfosList", + "properties": { + "items": { + "description": "The list of Posts with User information for the post, for this Blog.", + "items": { + "$ref": "PostUserInfo" + }, + "type": "array" + }, + "kind": { + "default": "blogger#postUserInfosList", + "description": "The kind of this entity. Always blogger#postList", + "type": "string" + }, + "nextPageToken": { + "description": "Pagination token to fetch the next page, if one exists.", + "type": "string" + } + }, + "type": "object" + }, + "User": { + "id": "User", + "properties": { + "about": { + "description": "Profile summary information.", + "type": "string" + }, + "blogs": { + "description": "The container of blogs for this user.", + "properties": { + "selfLink": { + "description": "The URL of the Blogs for this user.", + "type": "string" + } + }, + "type": "object" + }, + "created": { + "description": "The timestamp of when this profile was created, in seconds since epoch.", + "format": "date-time", + "type": "string" + }, + "displayName": { + "description": "The display name.", + "type": "string" + }, + "id": { + "description": "The identifier for this User.", + "type": "string" + }, + "kind": { + "default": "blogger#user", + "description": "The kind of this entity. Always blogger#user", + "type": "string" + }, + "locale": { + "description": "This user's locale", + "properties": { + "country": { + "description": "The user's country setting.", + "type": "string" + }, + "language": { + "description": "The user's language setting.", + "type": "string" + }, + "variant": { + "description": "The user's language variant setting.", + "type": "string" + } + }, + "type": "object" + }, + "selfLink": { + "description": "The API REST URL to fetch this resource from.", + "type": "string" + }, + "url": { + "description": "The user's profile page.", + "type": "string" + } + }, + "type": "object" } - } }, - "comments": { - "methods": { - "approve": { - "id": "blogger.comments.approve", - "path": "blogs/{blogId}/posts/{postId}/comments/{commentId}/approve", - "httpMethod": "POST", - "description": "Marks a comment as not spam.", - "parameters": { - "blogId": { - "type": "string", - "description": "The ID of the Blog.", - "required": true, - "location": "path" - }, - "commentId": { - "type": "string", - "description": "The ID of the comment to mark as not spam.", - "required": true, - "location": "path" - }, - "postId": { - "type": "string", - "description": "The ID of the Post.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "blogId", - "postId", - "commentId" - ], - "response": { - "$ref": "Comment" - }, - "scopes": [ - "https://www.googleapis.com/auth/blogger" - ] - }, - "delete": { - "id": "blogger.comments.delete", - "path": "blogs/{blogId}/posts/{postId}/comments/{commentId}", - "httpMethod": "DELETE", - "description": "Delete a comment by ID.", - "parameters": { - "blogId": { - "type": "string", - "description": "The ID of the Blog.", - "required": true, - "location": "path" - }, - "commentId": { - "type": "string", - "description": "The ID of the comment to delete.", - "required": true, - "location": "path" - }, - "postId": { - "type": "string", - "description": "The ID of the Post.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "blogId", - "postId", - "commentId" - ], - "scopes": [ - "https://www.googleapis.com/auth/blogger" - ] - }, - "get": { - "id": "blogger.comments.get", - "path": "blogs/{blogId}/posts/{postId}/comments/{commentId}", - "httpMethod": "GET", - "description": "Gets one comment by ID.", - "parameters": { - "blogId": { - "type": "string", - "description": "ID of the blog to containing the comment.", - "required": true, - "location": "path" - }, - "commentId": { - "type": "string", - "description": "The ID of the comment to get.", - "required": true, - "location": "path" - }, - "postId": { - "type": "string", - "description": "ID of the post to fetch posts from.", - "required": true, - "location": "path" - }, - "view": { - "type": "string", - "description": "Access level for the requested comment (default: READER). Note that some comments will require elevated permissions, for example comments where the parent posts which is in a draft state, or comments that are pending moderation.", - "enum": [ - "ADMIN", - "AUTHOR", - "READER" - ], - "enumDescriptions": [ - "Admin level detail", - "Author level detail", - "Admin level detail" - ], - "location": "query" - } - }, - "parameterOrder": [ - "blogId", - "postId", - "commentId" - ], - "response": { - "$ref": "Comment" - }, - "scopes": [ - "https://www.googleapis.com/auth/blogger", - "https://www.googleapis.com/auth/blogger.readonly" - ] - }, - "list": { - "id": "blogger.comments.list", - "path": "blogs/{blogId}/posts/{postId}/comments", - "httpMethod": "GET", - "description": "Retrieves the comments for a post, possibly filtered.", - "parameters": { - "blogId": { - "type": "string", - "description": "ID of the blog to fetch comments from.", - "required": true, - "location": "path" - }, - "endDate": { - "type": "string", - "description": "Latest date of comment to fetch, a date-time with RFC 3339 formatting.", - "format": "date-time", - "location": "query" - }, - "fetchBodies": { - "type": "boolean", - "description": "Whether the body content of the comments is included.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "Maximum number of comments to include in the result.", - "format": "uint32", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Continuation token if request is paged.", - "location": "query" - }, - "postId": { - "type": "string", - "description": "ID of the post to fetch posts from.", - "required": true, - "location": "path" - }, - "startDate": { - "type": "string", - "description": "Earliest date of comment to fetch, a date-time with RFC 3339 formatting.", - "format": "date-time", - "location": "query" - }, - "status": { - "type": "string", - "enum": [ - "emptied", - "live", - "pending", - "spam" - ], - "enumDescriptions": [ - "Comments that have had their content removed", - "Comments that are publicly visible", - "Comments that are awaiting administrator approval", - "Comments marked as spam by the administrator" - ], - "repeated": true, - "location": "query" - }, - "view": { - "type": "string", - "description": "Access level with which to view the returned result. Note that some fields require elevated access.", - "enum": [ - "ADMIN", - "AUTHOR", - "READER" - ], - "enumDescriptions": [ - "Admin level detail", - "Author level detail", - "Reader level detail" - ], - "location": "query" - } - }, - "parameterOrder": [ - "blogId", - "postId" - ], - "response": { - "$ref": "CommentList" - }, - "scopes": [ - "https://www.googleapis.com/auth/blogger", - "https://www.googleapis.com/auth/blogger.readonly" - ] - }, - "listByBlog": { - "id": "blogger.comments.listByBlog", - "path": "blogs/{blogId}/comments", - "httpMethod": "GET", - "description": "Retrieves the comments for a blog, across all posts, possibly filtered.", - "parameters": { - "blogId": { - "type": "string", - "description": "ID of the blog to fetch comments from.", - "required": true, - "location": "path" - }, - "endDate": { - "type": "string", - "description": "Latest date of comment to fetch, a date-time with RFC 3339 formatting.", - "format": "date-time", - "location": "query" - }, - "fetchBodies": { - "type": "boolean", - "description": "Whether the body content of the comments is included.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "Maximum number of comments to include in the result.", - "format": "uint32", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Continuation token if request is paged.", - "location": "query" - }, - "startDate": { - "type": "string", - "description": "Earliest date of comment to fetch, a date-time with RFC 3339 formatting.", - "format": "date-time", - "location": "query" - }, - "status": { - "type": "string", - "enum": [ - "emptied", - "live", - "pending", - "spam" - ], - "enumDescriptions": [ - "Comments that have had their content removed", - "Comments that are publicly visible", - "Comments that are awaiting administrator approval", - "Comments marked as spam by the administrator" - ], - "repeated": true, - "location": "query" - } - }, - "parameterOrder": [ - "blogId" - ], - "response": { - "$ref": "CommentList" - }, - "scopes": [ - "https://www.googleapis.com/auth/blogger", - "https://www.googleapis.com/auth/blogger.readonly" - ] - }, - "markAsSpam": { - "id": "blogger.comments.markAsSpam", - "path": "blogs/{blogId}/posts/{postId}/comments/{commentId}/spam", - "httpMethod": "POST", - "description": "Marks a comment as spam.", - "parameters": { - "blogId": { - "type": "string", - "description": "The ID of the Blog.", - "required": true, - "location": "path" - }, - "commentId": { - "type": "string", - "description": "The ID of the comment to mark as spam.", - "required": true, - "location": "path" - }, - "postId": { - "type": "string", - "description": "The ID of the Post.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "blogId", - "postId", - "commentId" - ], - "response": { - "$ref": "Comment" - }, - "scopes": [ - "https://www.googleapis.com/auth/blogger" - ] - }, - "removeContent": { - "id": "blogger.comments.removeContent", - "path": "blogs/{blogId}/posts/{postId}/comments/{commentId}/removecontent", - "httpMethod": "POST", - "description": "Removes the content of a comment.", - "parameters": { - "blogId": { - "type": "string", - "description": "The ID of the Blog.", - "required": true, - "location": "path" - }, - "commentId": { - "type": "string", - "description": "The ID of the comment to delete content from.", - "required": true, - "location": "path" - }, - "postId": { - "type": "string", - "description": "The ID of the Post.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "blogId", - "postId", - "commentId" - ], - "response": { - "$ref": "Comment" - }, - "scopes": [ - "https://www.googleapis.com/auth/blogger" - ] - } - } - }, - "pageViews": { - "methods": { - "get": { - "id": "blogger.pageViews.get", - "path": "blogs/{blogId}/pageviews", - "httpMethod": "GET", - "description": "Retrieve pageview stats for a Blog.", - "parameters": { - "blogId": { - "type": "string", - "description": "The ID of the blog to get.", - "required": true, - "location": "path" - }, - "range": { - "type": "string", - "enum": [ - "30DAYS", - "7DAYS", - "all" - ], - "enumDescriptions": [ - "Page view counts from the last thirty days.", - "Page view counts from the last seven days.", - "Total page view counts from all time." - ], - "repeated": true, - "location": "query" - } - }, - "parameterOrder": [ - "blogId" - ], - "response": { - "$ref": "Pageviews" - }, - "scopes": [ - "https://www.googleapis.com/auth/blogger" - ] - } - } - }, - "pages": { - "methods": { - "delete": { - "id": "blogger.pages.delete", - "path": "blogs/{blogId}/pages/{pageId}", - "httpMethod": "DELETE", - "description": "Delete a page by ID.", - "parameters": { - "blogId": { - "type": "string", - "description": "The ID of the Blog.", - "required": true, - "location": "path" - }, - "pageId": { - "type": "string", - "description": "The ID of the Page.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "blogId", - "pageId" - ], - "scopes": [ - "https://www.googleapis.com/auth/blogger" - ] - }, - "get": { - "id": "blogger.pages.get", - "path": "blogs/{blogId}/pages/{pageId}", - "httpMethod": "GET", - "description": "Gets one blog page by ID.", - "parameters": { - "blogId": { - "type": "string", - "description": "ID of the blog containing the page.", - "required": true, - "location": "path" - }, - "pageId": { - "type": "string", - "description": "The ID of the page to get.", - "required": true, - "location": "path" - }, - "view": { - "type": "string", - "enum": [ - "ADMIN", - "AUTHOR", - "READER" - ], - "enumDescriptions": [ - "Admin level detail", - "Author level detail", - "Reader level detail" - ], - "location": "query" - } - }, - "parameterOrder": [ - "blogId", - "pageId" - ], - "response": { - "$ref": "Page" - }, - "scopes": [ - "https://www.googleapis.com/auth/blogger", - "https://www.googleapis.com/auth/blogger.readonly" - ] - }, - "insert": { - "id": "blogger.pages.insert", - "path": "blogs/{blogId}/pages", - "httpMethod": "POST", - "description": "Add a page.", - "parameters": { - "blogId": { - "type": "string", - "description": "ID of the blog to add the page to.", - "required": true, - "location": "path" - }, - "isDraft": { - "type": "boolean", - "description": "Whether to create the page as a draft (default: false).", - "location": "query" - } - }, - "parameterOrder": [ - "blogId" - ], - "request": { - "$ref": "Page" - }, - "response": { - "$ref": "Page" - }, - "scopes": [ - "https://www.googleapis.com/auth/blogger" - ] - }, - "list": { - "id": "blogger.pages.list", - "path": "blogs/{blogId}/pages", - "httpMethod": "GET", - "description": "Retrieves the pages for a blog, optionally including non-LIVE statuses.", - "parameters": { - "blogId": { - "type": "string", - "description": "ID of the blog to fetch Pages from.", - "required": true, - "location": "path" - }, - "fetchBodies": { - "type": "boolean", - "description": "Whether to retrieve the Page bodies.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "Maximum number of Pages to fetch.", - "format": "uint32", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Continuation token if the request is paged.", - "location": "query" - }, - "status": { - "type": "string", - "enum": [ - "draft", - "live" - ], - "enumDescriptions": [ - "Draft (unpublished) Pages", - "Pages that are publicly visible" - ], - "repeated": true, - "location": "query" - }, - "view": { - "type": "string", - "description": "Access level with which to view the returned result. Note that some fields require elevated access.", - "enum": [ - "ADMIN", - "AUTHOR", - "READER" - ], - "enumDescriptions": [ - "Admin level detail", - "Author level detail", - "Reader level detail" - ], - "location": "query" - } - }, - "parameterOrder": [ - "blogId" - ], - "response": { - "$ref": "PageList" - }, - "scopes": [ - "https://www.googleapis.com/auth/blogger", - "https://www.googleapis.com/auth/blogger.readonly" - ] - }, - "patch": { - "id": "blogger.pages.patch", - "path": "blogs/{blogId}/pages/{pageId}", - "httpMethod": "PATCH", - "description": "Update a page. This method supports patch semantics.", - "parameters": { - "blogId": { - "type": "string", - "description": "The ID of the Blog.", - "required": true, - "location": "path" - }, - "pageId": { - "type": "string", - "description": "The ID of the Page.", - "required": true, - "location": "path" - }, - "publish": { - "type": "boolean", - "description": "Whether a publish action should be performed when the page is updated (default: false).", - "location": "query" - }, - "revert": { - "type": "boolean", - "description": "Whether a revert action should be performed when the page is updated (default: false).", - "location": "query" - } - }, - "parameterOrder": [ - "blogId", - "pageId" - ], - "request": { - "$ref": "Page" - }, - "response": { - "$ref": "Page" - }, - "scopes": [ - "https://www.googleapis.com/auth/blogger" - ] - }, - "publish": { - "id": "blogger.pages.publish", - "path": "blogs/{blogId}/pages/{pageId}/publish", - "httpMethod": "POST", - "description": "Publishes a draft page.", - "parameters": { - "blogId": { - "type": "string", - "description": "The ID of the blog.", - "required": true, - "location": "path" - }, - "pageId": { - "type": "string", - "description": "The ID of the page.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "blogId", - "pageId" - ], - "response": { - "$ref": "Page" - }, - "scopes": [ - "https://www.googleapis.com/auth/blogger" - ] - }, - "revert": { - "id": "blogger.pages.revert", - "path": "blogs/{blogId}/pages/{pageId}/revert", - "httpMethod": "POST", - "description": "Revert a published or scheduled page to draft state.", - "parameters": { - "blogId": { - "type": "string", - "description": "The ID of the blog.", - "required": true, - "location": "path" - }, - "pageId": { - "type": "string", - "description": "The ID of the page.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "blogId", - "pageId" - ], - "response": { - "$ref": "Page" - }, - "scopes": [ - "https://www.googleapis.com/auth/blogger" - ] - }, - "update": { - "id": "blogger.pages.update", - "path": "blogs/{blogId}/pages/{pageId}", - "httpMethod": "PUT", - "description": "Update a page.", - "parameters": { - "blogId": { - "type": "string", - "description": "The ID of the Blog.", - "required": true, - "location": "path" - }, - "pageId": { - "type": "string", - "description": "The ID of the Page.", - "required": true, - "location": "path" - }, - "publish": { - "type": "boolean", - "description": "Whether a publish action should be performed when the page is updated (default: false).", - "location": "query" - }, - "revert": { - "type": "boolean", - "description": "Whether a revert action should be performed when the page is updated (default: false).", - "location": "query" - } - }, - "parameterOrder": [ - "blogId", - "pageId" - ], - "request": { - "$ref": "Page" - }, - "response": { - "$ref": "Page" - }, - "scopes": [ - "https://www.googleapis.com/auth/blogger" - ] - } - } - }, - "postUserInfos": { - "methods": { - "get": { - "id": "blogger.postUserInfos.get", - "path": "users/{userId}/blogs/{blogId}/posts/{postId}", - "httpMethod": "GET", - "description": "Gets one post and user info pair, by post ID and user ID. The post user info contains per-user information about the post, such as access rights, specific to the user.", - "parameters": { - "blogId": { - "type": "string", - "description": "The ID of the blog.", - "required": true, - "location": "path" - }, - "maxComments": { - "type": "integer", - "description": "Maximum number of comments to pull back on a post.", - "format": "uint32", - "location": "query" - }, - "postId": { - "type": "string", - "description": "The ID of the post to get.", - "required": true, - "location": "path" - }, - "userId": { - "type": "string", - "description": "ID of the user for the per-user information to be fetched. Either the word 'self' (sans quote marks) or the user's profile identifier.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "userId", - "blogId", - "postId" - ], - "response": { - "$ref": "PostUserInfo" - }, - "scopes": [ - "https://www.googleapis.com/auth/blogger", - "https://www.googleapis.com/auth/blogger.readonly" - ] - }, - "list": { - "id": "blogger.postUserInfos.list", - "path": "users/{userId}/blogs/{blogId}/posts", - "httpMethod": "GET", - "description": "Retrieves a list of post and post user info pairs, possibly filtered. The post user info contains per-user information about the post, such as access rights, specific to the user.", - "parameters": { - "blogId": { - "type": "string", - "description": "ID of the blog to fetch posts from.", - "required": true, - "location": "path" - }, - "endDate": { - "type": "string", - "description": "Latest post date to fetch, a date-time with RFC 3339 formatting.", - "format": "date-time", - "location": "query" - }, - "fetchBodies": { - "type": "boolean", - "description": "Whether the body content of posts is included. Default is false.", - "default": "false", - "location": "query" - }, - "labels": { - "type": "string", - "description": "Comma-separated list of labels to search for.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "Maximum number of posts to fetch.", - "format": "uint32", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sort order applied to search results. Default is published.", - "default": "PUBLISHED", - "enum": [ - "published", - "updated" - ], - "enumDescriptions": [ - "Order by the date the post was published", - "Order by the date the post was last updated" - ], - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Continuation token if the request is paged.", - "location": "query" - }, - "startDate": { - "type": "string", - "description": "Earliest post date to fetch, a date-time with RFC 3339 formatting.", - "format": "date-time", - "location": "query" - }, - "status": { - "type": "string", - "enum": [ - "draft", - "live", - "scheduled" - ], - "enumDescriptions": [ - "Draft posts", - "Published posts", - "Posts that are scheduled to publish in future." - ], - "repeated": true, - "location": "query" - }, - "userId": { - "type": "string", - "description": "ID of the user for the per-user information to be fetched. Either the word 'self' (sans quote marks) or the user's profile identifier.", - "required": true, - "location": "path" - }, - "view": { - "type": "string", - "description": "Access level with which to view the returned result. Note that some fields require elevated access.", - "enum": [ - "ADMIN", - "AUTHOR", - "READER" - ], - "enumDescriptions": [ - "Admin level detail", - "Author level detail", - "Reader level detail" - ], - "location": "query" - } - }, - "parameterOrder": [ - "userId", - "blogId" - ], - "response": { - "$ref": "PostUserInfosList" - }, - "scopes": [ - "https://www.googleapis.com/auth/blogger", - "https://www.googleapis.com/auth/blogger.readonly" - ] - } - } - }, - "posts": { - "methods": { - "delete": { - "id": "blogger.posts.delete", - "path": "blogs/{blogId}/posts/{postId}", - "httpMethod": "DELETE", - "description": "Delete a post by ID.", - "parameters": { - "blogId": { - "type": "string", - "description": "The ID of the Blog.", - "required": true, - "location": "path" - }, - "postId": { - "type": "string", - "description": "The ID of the Post.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "blogId", - "postId" - ], - "scopes": [ - "https://www.googleapis.com/auth/blogger" - ] - }, - "get": { - "id": "blogger.posts.get", - "path": "blogs/{blogId}/posts/{postId}", - "httpMethod": "GET", - "description": "Get a post by ID.", - "parameters": { - "blogId": { - "type": "string", - "description": "ID of the blog to fetch the post from.", - "required": true, - "location": "path" - }, - "fetchBody": { - "type": "boolean", - "description": "Whether the body content of the post is included (default: true). This should be set to false when the post bodies are not required, to help minimize traffic.", - "default": "true", - "location": "query" - }, - "fetchImages": { - "type": "boolean", - "description": "Whether image URL metadata for each post is included (default: false).", - "location": "query" - }, - "maxComments": { - "type": "integer", - "description": "Maximum number of comments to pull back on a post.", - "format": "uint32", - "location": "query" - }, - "postId": { - "type": "string", - "description": "The ID of the post", - "required": true, - "location": "path" - }, - "view": { - "type": "string", - "description": "Access level with which to view the returned result. Note that some fields require elevated access.", - "enum": [ - "ADMIN", - "AUTHOR", - "READER" - ], - "enumDescriptions": [ - "Admin level detail", - "Author level detail", - "Reader level detail" - ], - "location": "query" - } - }, - "parameterOrder": [ - "blogId", - "postId" - ], - "response": { - "$ref": "Post" - }, - "scopes": [ - "https://www.googleapis.com/auth/blogger", - "https://www.googleapis.com/auth/blogger.readonly" - ] - }, - "getByPath": { - "id": "blogger.posts.getByPath", - "path": "blogs/{blogId}/posts/bypath", - "httpMethod": "GET", - "description": "Retrieve a Post by Path.", - "parameters": { - "blogId": { - "type": "string", - "description": "ID of the blog to fetch the post from.", - "required": true, - "location": "path" - }, - "maxComments": { - "type": "integer", - "description": "Maximum number of comments to pull back on a post.", - "format": "uint32", - "location": "query" - }, - "path": { - "type": "string", - "description": "Path of the Post to retrieve.", - "required": true, - "location": "query" - }, - "view": { - "type": "string", - "description": "Access level with which to view the returned result. Note that some fields require elevated access.", - "enum": [ - "ADMIN", - "AUTHOR", - "READER" - ], - "enumDescriptions": [ - "Admin level detail", - "Author level detail", - "Reader level detail" - ], - "location": "query" - } - }, - "parameterOrder": [ - "blogId", - "path" - ], - "response": { - "$ref": "Post" - }, - "scopes": [ - "https://www.googleapis.com/auth/blogger", - "https://www.googleapis.com/auth/blogger.readonly" - ] - }, - "insert": { - "id": "blogger.posts.insert", - "path": "blogs/{blogId}/posts", - "httpMethod": "POST", - "description": "Add a post.", - "parameters": { - "blogId": { - "type": "string", - "description": "ID of the blog to add the post to.", - "required": true, - "location": "path" - }, - "fetchBody": { - "type": "boolean", - "description": "Whether the body content of the post is included with the result (default: true).", - "default": "true", - "location": "query" - }, - "fetchImages": { - "type": "boolean", - "description": "Whether image URL metadata for each post is included in the returned result (default: false).", - "location": "query" - }, - "isDraft": { - "type": "boolean", - "description": "Whether to create the post as a draft (default: false).", - "location": "query" - } - }, - "parameterOrder": [ - "blogId" - ], - "request": { - "$ref": "Post" - }, - "response": { - "$ref": "Post" - }, - "scopes": [ - "https://www.googleapis.com/auth/blogger" - ] - }, - "list": { - "id": "blogger.posts.list", - "path": "blogs/{blogId}/posts", - "httpMethod": "GET", - "description": "Retrieves a list of posts, possibly filtered.", - "parameters": { - "blogId": { - "type": "string", - "description": "ID of the blog to fetch posts from.", - "required": true, - "location": "path" - }, - "endDate": { - "type": "string", - "description": "Latest post date to fetch, a date-time with RFC 3339 formatting.", - "format": "date-time", - "location": "query" - }, - "fetchBodies": { - "type": "boolean", - "description": "Whether the body content of posts is included (default: true). This should be set to false when the post bodies are not required, to help minimize traffic.", - "default": "true", - "location": "query" - }, - "fetchImages": { - "type": "boolean", - "description": "Whether image URL metadata for each post is included.", - "location": "query" - }, - "labels": { - "type": "string", - "description": "Comma-separated list of labels to search for.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "Maximum number of posts to fetch.", - "format": "uint32", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sort search results", - "default": "PUBLISHED", - "enum": [ - "published", - "updated" - ], - "enumDescriptions": [ - "Order by the date the post was published", - "Order by the date the post was last updated" - ], - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Continuation token if the request is paged.", - "location": "query" - }, - "startDate": { - "type": "string", - "description": "Earliest post date to fetch, a date-time with RFC 3339 formatting.", - "format": "date-time", - "location": "query" - }, - "status": { - "type": "string", - "description": "Statuses to include in the results.", - "enum": [ - "draft", - "live", - "scheduled" - ], - "enumDescriptions": [ - "Draft (non-published) posts.", - "Published posts", - "Posts that are scheduled to publish in the future." - ], - "repeated": true, - "location": "query" - }, - "view": { - "type": "string", - "description": "Access level with which to view the returned result. Note that some fields require escalated access.", - "enum": [ - "ADMIN", - "AUTHOR", - "READER" - ], - "enumDescriptions": [ - "Admin level detail", - "Author level detail", - "Reader level detail" - ], - "location": "query" - } - }, - "parameterOrder": [ - "blogId" - ], - "response": { - "$ref": "PostList" - }, - "scopes": [ - "https://www.googleapis.com/auth/blogger", - "https://www.googleapis.com/auth/blogger.readonly" - ] - }, - "patch": { - "id": "blogger.posts.patch", - "path": "blogs/{blogId}/posts/{postId}", - "httpMethod": "PATCH", - "description": "Update a post. This method supports patch semantics.", - "parameters": { - "blogId": { - "type": "string", - "description": "The ID of the Blog.", - "required": true, - "location": "path" - }, - "fetchBody": { - "type": "boolean", - "description": "Whether the body content of the post is included with the result (default: true).", - "default": "true", - "location": "query" - }, - "fetchImages": { - "type": "boolean", - "description": "Whether image URL metadata for each post is included in the returned result (default: false).", - "location": "query" - }, - "maxComments": { - "type": "integer", - "description": "Maximum number of comments to retrieve with the returned post.", - "format": "uint32", - "location": "query" - }, - "postId": { - "type": "string", - "description": "The ID of the Post.", - "required": true, - "location": "path" - }, - "publish": { - "type": "boolean", - "description": "Whether a publish action should be performed when the post is updated (default: false).", - "location": "query" - }, - "revert": { - "type": "boolean", - "description": "Whether a revert action should be performed when the post is updated (default: false).", - "location": "query" - } - }, - "parameterOrder": [ - "blogId", - "postId" - ], - "request": { - "$ref": "Post" - }, - "response": { - "$ref": "Post" - }, - "scopes": [ - "https://www.googleapis.com/auth/blogger" - ] - }, - "publish": { - "id": "blogger.posts.publish", - "path": "blogs/{blogId}/posts/{postId}/publish", - "httpMethod": "POST", - "description": "Publishes a draft post, optionally at the specific time of the given publishDate parameter.", - "parameters": { - "blogId": { - "type": "string", - "description": "The ID of the Blog.", - "required": true, - "location": "path" - }, - "postId": { - "type": "string", - "description": "The ID of the Post.", - "required": true, - "location": "path" - }, - "publishDate": { - "type": "string", - "description": "Optional date and time to schedule the publishing of the Blog. If no publishDate parameter is given, the post is either published at the a previously saved schedule date (if present), or the current time. If a future date is given, the post will be scheduled to be published.", - "format": "date-time", - "location": "query" - } - }, - "parameterOrder": [ - "blogId", - "postId" - ], - "response": { - "$ref": "Post" - }, - "scopes": [ - "https://www.googleapis.com/auth/blogger" - ] - }, - "revert": { - "id": "blogger.posts.revert", - "path": "blogs/{blogId}/posts/{postId}/revert", - "httpMethod": "POST", - "description": "Revert a published or scheduled post to draft state.", - "parameters": { - "blogId": { - "type": "string", - "description": "The ID of the Blog.", - "required": true, - "location": "path" - }, - "postId": { - "type": "string", - "description": "The ID of the Post.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "blogId", - "postId" - ], - "response": { - "$ref": "Post" - }, - "scopes": [ - "https://www.googleapis.com/auth/blogger" - ] - }, - "search": { - "id": "blogger.posts.search", - "path": "blogs/{blogId}/posts/search", - "httpMethod": "GET", - "description": "Search for a post.", - "parameters": { - "blogId": { - "type": "string", - "description": "ID of the blog to fetch the post from.", - "required": true, - "location": "path" - }, - "fetchBodies": { - "type": "boolean", - "description": "Whether the body content of posts is included (default: true). This should be set to false when the post bodies are not required, to help minimize traffic.", - "default": "true", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sort search results", - "default": "PUBLISHED", - "enum": [ - "published", - "updated" - ], - "enumDescriptions": [ - "Order by the date the post was published", - "Order by the date the post was last updated" - ], - "location": "query" - }, - "q": { - "type": "string", - "description": "Query terms to search this blog for matching posts.", - "required": true, - "location": "query" - } - }, - "parameterOrder": [ - "blogId", - "q" - ], - "response": { - "$ref": "PostList" - }, - "scopes": [ - "https://www.googleapis.com/auth/blogger", - "https://www.googleapis.com/auth/blogger.readonly" - ] - }, - "update": { - "id": "blogger.posts.update", - "path": "blogs/{blogId}/posts/{postId}", - "httpMethod": "PUT", - "description": "Update a post.", - "parameters": { - "blogId": { - "type": "string", - "description": "The ID of the Blog.", - "required": true, - "location": "path" - }, - "fetchBody": { - "type": "boolean", - "description": "Whether the body content of the post is included with the result (default: true).", - "default": "true", - "location": "query" - }, - "fetchImages": { - "type": "boolean", - "description": "Whether image URL metadata for each post is included in the returned result (default: false).", - "location": "query" - }, - "maxComments": { - "type": "integer", - "description": "Maximum number of comments to retrieve with the returned post.", - "format": "uint32", - "location": "query" - }, - "postId": { - "type": "string", - "description": "The ID of the Post.", - "required": true, - "location": "path" - }, - "publish": { - "type": "boolean", - "description": "Whether a publish action should be performed when the post is updated (default: false).", - "location": "query" - }, - "revert": { - "type": "boolean", - "description": "Whether a revert action should be performed when the post is updated (default: false).", - "location": "query" - } - }, - "parameterOrder": [ - "blogId", - "postId" - ], - "request": { - "$ref": "Post" - }, - "response": { - "$ref": "Post" - }, - "scopes": [ - "https://www.googleapis.com/auth/blogger" - ] - } - } - }, - "users": { - "methods": { - "get": { - "id": "blogger.users.get", - "path": "users/{userId}", - "httpMethod": "GET", - "description": "Gets one user by ID.", - "parameters": { - "userId": { - "type": "string", - "description": "The ID of the user to get.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "userId" - ], - "response": { - "$ref": "User" - }, - "scopes": [ - "https://www.googleapis.com/auth/blogger", - "https://www.googleapis.com/auth/blogger.readonly" - ] - } - } - } - } -} + "servicePath": "blogger/v3/", + "title": "Blogger API", + "version": "v3" +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/books/v1/books-api.json b/vendor/google.golang.org/api/books/v1/books-api.json index b23b59299..0bcc27029 100644 --- a/vendor/google.golang.org/api/books/v1/books-api.json +++ b/vendor/google.golang.org/api/books/v1/books-api.json @@ -1,4745 +1,4745 @@ { - "kind": "discovery#restDescription", - "etag": "\"YWOzh2SDasdU84ArJnpYek-OMdg/grKqkiLaDaBaqW7ezJtDaKmrU78\"", - "discoveryVersion": "v1", - "id": "books:v1", - "name": "books", - "version": "v1", - "revision": "20171127", - "title": "Books API", - "description": "Searches for books and manages your Google Books library.", - "ownerDomain": "google.com", - "ownerName": "Google", - "icons": { - "x16": "https://www.google.com/images/icons/product/ebooks-16.png", - "x32": "https://www.google.com/images/icons/product/ebooks-32.png" - }, - "documentationLink": "https://developers.google.com/books/docs/v1/getting_started", - "protocol": "rest", - "baseUrl": "https://www.googleapis.com/books/v1/", - "basePath": "/books/v1/", - "rootUrl": "https://www.googleapis.com/", - "servicePath": "books/v1/", - "batchPath": "batch/books/v1", - "parameters": { - "alt": { - "type": "string", - "description": "Data format for the response.", - "default": "json", - "enum": [ - "json" - ], - "enumDescriptions": [ - "Responses with Content-Type of application/json" - ], - "location": "query" - }, - "fields": { - "type": "string", - "description": "Selector specifying which fields to include in a partial response.", - "location": "query" - }, - "key": { - "type": "string", - "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" - }, - "oauth_token": { - "type": "string", - "description": "OAuth 2.0 token for the current user.", - "location": "query" - }, - "prettyPrint": { - "type": "boolean", - "description": "Returns response with indentations and line breaks.", - "default": "true", - "location": "query" - }, - "quotaUser": { - "type": "string", - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", - "location": "query" - }, - "userIp": { - "type": "string", - "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", - "location": "query" - } - }, - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/books": { - "description": "Manage your books" + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/books": { + "description": "Manage your books" + } + } } - } - } - }, - "schemas": { - "Annotation": { - "id": "Annotation", - "type": "object", - "properties": { - "afterSelectedText": { - "type": "string", - "description": "Anchor text after excerpt. For requests, if the user bookmarked a screen that has no flowing text on it, then this field should be empty." - }, - "beforeSelectedText": { - "type": "string", - "description": "Anchor text before excerpt. For requests, if the user bookmarked a screen that has no flowing text on it, then this field should be empty." - }, - "clientVersionRanges": { - "type": "object", - "description": "Selection ranges sent from the client.", - "properties": { - "cfiRange": { - "$ref": "BooksAnnotationsRange", - "description": "Range in CFI format for this annotation sent by client." - }, - "contentVersion": { - "type": "string", - "description": "Content version the client sent in." - }, - "gbImageRange": { - "$ref": "BooksAnnotationsRange", - "description": "Range in GB image format for this annotation sent by client." - }, - "gbTextRange": { - "$ref": "BooksAnnotationsRange", - "description": "Range in GB text format for this annotation sent by client." - }, - "imageCfiRange": { - "$ref": "BooksAnnotationsRange", - "description": "Range in image CFI format for this annotation sent by client." - } - } - }, - "created": { - "type": "string", - "description": "Timestamp for the created time of this annotation.", - "format": "date-time" - }, - "currentVersionRanges": { - "type": "object", - "description": "Selection ranges for the most recent content version.", - "properties": { - "cfiRange": { - "$ref": "BooksAnnotationsRange", - "description": "Range in CFI format for this annotation for version above." - }, - "contentVersion": { - "type": "string", - "description": "Content version applicable to ranges below." - }, - "gbImageRange": { - "$ref": "BooksAnnotationsRange", - "description": "Range in GB image format for this annotation for version above." - }, - "gbTextRange": { - "$ref": "BooksAnnotationsRange", - "description": "Range in GB text format for this annotation for version above." - }, - "imageCfiRange": { - "$ref": "BooksAnnotationsRange", - "description": "Range in image CFI format for this annotation for version above." - } - } - }, - "data": { - "type": "string", - "description": "User-created data for this annotation." - }, - "deleted": { - "type": "boolean", - "description": "Indicates that this annotation is deleted." - }, - "highlightStyle": { - "type": "string", - "description": "The highlight style for this annotation." - }, - "id": { - "type": "string", - "description": "Id of this annotation, in the form of a GUID." - }, - "kind": { - "type": "string", - "description": "Resource type.", - "default": "books#annotation" - }, - "layerId": { - "type": "string", - "description": "The layer this annotation is for." - }, - "layerSummary": { - "type": "object", - "properties": { - "allowedCharacterCount": { - "type": "integer", - "description": "Maximum allowed characters on this layer, especially for the \"copy\" layer.", - "format": "int32" - }, - "limitType": { - "type": "string", - "description": "Type of limitation on this layer. \"limited\" or \"unlimited\" for the \"copy\" layer." - }, - "remainingCharacterCount": { - "type": "integer", - "description": "Remaining allowed characters on this layer, especially for the \"copy\" layer.", - "format": "int32" - } - } - }, - "pageIds": { - "type": "array", - "description": "Pages that this annotation spans.", - "items": { + }, + "basePath": "/books/v1/", + "baseUrl": "https://www.googleapis.com/books/v1/", + "batchPath": "batch/books/v1", + "description": "Searches for books and manages your Google Books library.", + "discoveryVersion": "v1", + "documentationLink": "https://developers.google.com/books/docs/v1/getting_started", + "etag": "\"-iA1DTNe4s-I6JZXPt1t1Ypy8IU/grKqkiLaDaBaqW7ezJtDaKmrU78\"", + "icons": { + "x16": "https://www.google.com/images/icons/product/ebooks-16.png", + "x32": "https://www.google.com/images/icons/product/ebooks-32.png" + }, + "id": "books:v1", + "kind": "discovery#restDescription", + "name": "books", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "alt": { + "default": "json", + "description": "Data format for the response.", + "enum": [ + "json" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json" + ], + "location": "query", "type": "string" - } }, - "selectedText": { - "type": "string", - "description": "Excerpt from the volume." + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "location": "query", + "type": "string" }, - "selfLink": { - "type": "string", - "description": "URL to this resource." + "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" }, - "updated": { - "type": "string", - "description": "Timestamp for the last time this annotation was modified.", - "format": "date-time" + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" }, - "volumeId": { - "type": "string", - "description": "The volume that this annotation belongs to." + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", + "location": "query", + "type": "string" + }, + "userIp": { + "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", + "location": "query", + "type": "string" } - } }, - "Annotationdata": { - "id": "Annotationdata", - "type": "object", - "properties": { - "annotationType": { - "type": "string", - "description": "The type of annotation this data is for." + "protocol": "rest", + "resources": { + "bookshelves": { + "methods": { + "get": { + "description": "Retrieves metadata for a specific bookshelf for the specified user.", + "httpMethod": "GET", + "id": "books.bookshelves.get", + "parameterOrder": [ + "userId", + "shelf" + ], + "parameters": { + "shelf": { + "description": "ID of bookshelf to retrieve.", + "location": "path", + "required": true, + "type": "string" + }, + "source": { + "description": "String to identify the originator of this request.", + "location": "query", + "type": "string" + }, + "userId": { + "description": "ID of user for whom to retrieve bookshelves.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "users/{userId}/bookshelves/{shelf}", + "response": { + "$ref": "Bookshelf" + }, + "scopes": [ + "https://www.googleapis.com/auth/books" + ] + }, + "list": { + "description": "Retrieves a list of public bookshelves for the specified user.", + "httpMethod": "GET", + "id": "books.bookshelves.list", + "parameterOrder": [ + "userId" + ], + "parameters": { + "source": { + "description": "String to identify the originator of this request.", + "location": "query", + "type": "string" + }, + "userId": { + "description": "ID of user for whom to retrieve bookshelves.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "users/{userId}/bookshelves", + "response": { + "$ref": "Bookshelves" + }, + "scopes": [ + "https://www.googleapis.com/auth/books" + ] + } + }, + "resources": { + "volumes": { + "methods": { + "list": { + "description": "Retrieves volumes in a specific bookshelf for the specified user.", + "httpMethod": "GET", + "id": "books.bookshelves.volumes.list", + "parameterOrder": [ + "userId", + "shelf" + ], + "parameters": { + "maxResults": { + "description": "Maximum number of results to return", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "shelf": { + "description": "ID of bookshelf to retrieve volumes.", + "location": "path", + "required": true, + "type": "string" + }, + "showPreorders": { + "description": "Set to true to show pre-ordered books. Defaults to false.", + "location": "query", + "type": "boolean" + }, + "source": { + "description": "String to identify the originator of this request.", + "location": "query", + "type": "string" + }, + "startIndex": { + "description": "Index of the first element to return (starts at 0)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "userId": { + "description": "ID of user for whom to retrieve bookshelf volumes.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "users/{userId}/bookshelves/{shelf}/volumes", + "response": { + "$ref": "Volumes" + }, + "scopes": [ + "https://www.googleapis.com/auth/books" + ] + } + } + } + } }, - "data": { - "type": "any" + "cloudloading": { + "methods": { + "addBook": { + "description": "", + "httpMethod": "POST", + "id": "books.cloudloading.addBook", + "parameters": { + "drive_document_id": { + "description": "A drive document id. The upload_client_token must not be set.", + "location": "query", + "type": "string" + }, + "mime_type": { + "description": "The document MIME type. It can be set only if the drive_document_id is set.", + "location": "query", + "type": "string" + }, + "name": { + "description": "The document name. It can be set only if the drive_document_id is set.", + "location": "query", + "type": "string" + }, + "upload_client_token": { + "location": "query", + "type": "string" + } + }, + "path": "cloudloading/addBook", + "response": { + "$ref": "BooksCloudloadingResource" + }, + "scopes": [ + "https://www.googleapis.com/auth/books" + ] + }, + "deleteBook": { + "description": "Remove the book and its contents", + "httpMethod": "POST", + "id": "books.cloudloading.deleteBook", + "parameterOrder": [ + "volumeId" + ], + "parameters": { + "volumeId": { + "description": "The id of the book to be removed.", + "location": "query", + "required": true, + "type": "string" + } + }, + "path": "cloudloading/deleteBook", + "scopes": [ + "https://www.googleapis.com/auth/books" + ] + }, + "updateBook": { + "description": "", + "httpMethod": "POST", + "id": "books.cloudloading.updateBook", + "path": "cloudloading/updateBook", + "request": { + "$ref": "BooksCloudloadingResource" + }, + "response": { + "$ref": "BooksCloudloadingResource" + }, + "scopes": [ + "https://www.googleapis.com/auth/books" + ] + } + } }, - "encoded_data": { - "type": "string", - "description": "Base64 encoded data for this annotation data.", - "format": "byte" + "dictionary": { + "methods": { + "listOfflineMetadata": { + "description": "Returns a list of offline dictionary metadata available", + "httpMethod": "GET", + "id": "books.dictionary.listOfflineMetadata", + "parameterOrder": [ + "cpksver" + ], + "parameters": { + "cpksver": { + "description": "The device/version ID from which to request the data.", + "location": "query", + "required": true, + "type": "string" + } + }, + "path": "dictionary/listOfflineMetadata", + "response": { + "$ref": "Metadata" + }, + "scopes": [ + "https://www.googleapis.com/auth/books" + ] + } + } }, - "id": { - "type": "string", - "description": "Unique id for this annotation data." - }, - "kind": { - "type": "string", - "description": "Resource Type", - "default": "books#annotationdata" - }, - "layerId": { - "type": "string", - "description": "The Layer id for this data. *" - }, - "selfLink": { - "type": "string", - "description": "URL for this resource. *" - }, - "updated": { - "type": "string", - "description": "Timestamp for the last time this data was updated. (RFC 3339 UTC date-time format).", - "format": "date-time" - }, - "volumeId": { - "type": "string", - "description": "The volume id for this data. *" - } - } - }, - "Annotations": { - "id": "Annotations", - "type": "object", - "properties": { - "items": { - "type": "array", - "description": "A list of annotations.", - "items": { - "$ref": "Annotation" - } - }, - "kind": { - "type": "string", - "description": "Resource type.", - "default": "books#annotations" - }, - "nextPageToken": { - "type": "string", - "description": "Token to pass in for pagination for the next page. This will not be present if this request does not have more results." - }, - "totalItems": { - "type": "integer", - "description": "Total number of annotations found. This may be greater than the number of notes returned in this response if results have been paginated.", - "format": "int32" - } - } - }, - "AnnotationsSummary": { - "id": "AnnotationsSummary", - "type": "object", - "properties": { - "kind": { - "type": "string", - "default": "books#annotationsSummary" + "familysharing": { + "methods": { + "getFamilyInfo": { + "description": "Gets information regarding the family that the user is part of.", + "httpMethod": "GET", + "id": "books.familysharing.getFamilyInfo", + "parameters": { + "source": { + "description": "String to identify the originator of this request.", + "location": "query", + "type": "string" + } + }, + "path": "familysharing/getFamilyInfo", + "response": { + "$ref": "FamilyInfo" + }, + "scopes": [ + "https://www.googleapis.com/auth/books" + ] + }, + "share": { + "description": "Initiates sharing of the content with the user's family. Empty response indicates success.", + "httpMethod": "POST", + "id": "books.familysharing.share", + "parameters": { + "docId": { + "description": "The docid to share.", + "location": "query", + "type": "string" + }, + "source": { + "description": "String to identify the originator of this request.", + "location": "query", + "type": "string" + }, + "volumeId": { + "description": "The volume to share.", + "location": "query", + "type": "string" + } + }, + "path": "familysharing/share", + "scopes": [ + "https://www.googleapis.com/auth/books" + ] + }, + "unshare": { + "description": "Initiates revoking content that has already been shared with the user's family. Empty response indicates success.", + "httpMethod": "POST", + "id": "books.familysharing.unshare", + "parameters": { + "docId": { + "description": "The docid to unshare.", + "location": "query", + "type": "string" + }, + "source": { + "description": "String to identify the originator of this request.", + "location": "query", + "type": "string" + }, + "volumeId": { + "description": "The volume to unshare.", + "location": "query", + "type": "string" + } + }, + "path": "familysharing/unshare", + "scopes": [ + "https://www.googleapis.com/auth/books" + ] + } + } }, "layers": { - "type": "array", - "items": { - "type": "object", - "properties": { - "allowedCharacterCount": { - "type": "integer", - "format": "int32" - }, - "layerId": { - "type": "string" - }, - "limitType": { - "type": "string" - }, - "remainingCharacterCount": { - "type": "integer", - "format": "int32" - }, - "updated": { - "type": "string", - "format": "date-time" - } - } - } - } - } - }, - "Annotationsdata": { - "id": "Annotationsdata", - "type": "object", - "properties": { - "items": { - "type": "array", - "description": "A list of Annotation Data.", - "items": { - "$ref": "Annotationdata" - } - }, - "kind": { - "type": "string", - "description": "Resource type", - "default": "books#annotationsdata" - }, - "nextPageToken": { - "type": "string", - "description": "Token to pass in for pagination for the next page. This will not be present if this request does not have more results." - }, - "totalItems": { - "type": "integer", - "description": "The total number of volume annotations found.", - "format": "int32" - } - } - }, - "BooksAnnotationsRange": { - "id": "BooksAnnotationsRange", - "type": "object", - "properties": { - "endOffset": { - "type": "string", - "description": "The offset from the ending position." - }, - "endPosition": { - "type": "string", - "description": "The ending position for the range." - }, - "startOffset": { - "type": "string", - "description": "The offset from the starting position." - }, - "startPosition": { - "type": "string", - "description": "The starting position for the range." - } - } - }, - "BooksCloudloadingResource": { - "id": "BooksCloudloadingResource", - "type": "object", - "properties": { - "author": { - "type": "string" - }, - "processingState": { - "type": "string" - }, - "title": { - "type": "string" - }, - "volumeId": { - "type": "string" - } - } - }, - "BooksVolumesRecommendedRateResponse": { - "id": "BooksVolumesRecommendedRateResponse", - "type": "object", - "properties": { - "consistency_token": { - "type": "string" - } - } - }, - "Bookshelf": { - "id": "Bookshelf", - "type": "object", - "properties": { - "access": { - "type": "string", - "description": "Whether this bookshelf is PUBLIC or PRIVATE." - }, - "created": { - "type": "string", - "description": "Created time for this bookshelf (formatted UTC timestamp with millisecond resolution).", - "format": "date-time" - }, - "description": { - "type": "string", - "description": "Description of this bookshelf." - }, - "id": { - "type": "integer", - "description": "Id of this bookshelf, only unique by user.", - "format": "int32" - }, - "kind": { - "type": "string", - "description": "Resource type for bookshelf metadata.", - "default": "books#bookshelf" - }, - "selfLink": { - "type": "string", - "description": "URL to this resource." - }, - "title": { - "type": "string", - "description": "Title of this bookshelf." - }, - "updated": { - "type": "string", - "description": "Last modified time of this bookshelf (formatted UTC timestamp with millisecond resolution).", - "format": "date-time" - }, - "volumeCount": { - "type": "integer", - "description": "Number of volumes in this bookshelf.", - "format": "int32" - }, - "volumesLastUpdated": { - "type": "string", - "description": "Last time a volume was added or removed from this bookshelf (formatted UTC timestamp with millisecond resolution).", - "format": "date-time" - } - } - }, - "Bookshelves": { - "id": "Bookshelves", - "type": "object", - "properties": { - "items": { - "type": "array", - "description": "A list of bookshelves.", - "items": { - "$ref": "Bookshelf" - } - }, - "kind": { - "type": "string", - "description": "Resource type.", - "default": "books#bookshelves" - } - } - }, - "Category": { - "id": "Category", - "type": "object", - "properties": { - "items": { - "type": "array", - "description": "A list of onboarding categories.", - "items": { - "type": "object", - "properties": { - "badgeUrl": { - "type": "string" - }, - "categoryId": { - "type": "string" - }, - "name": { - "type": "string" - } - } - } - }, - "kind": { - "type": "string", - "description": "Resource type.", - "default": "onboarding#category" - } - } - }, - "ConcurrentAccessRestriction": { - "id": "ConcurrentAccessRestriction", - "type": "object", - "properties": { - "deviceAllowed": { - "type": "boolean", - "description": "Whether access is granted for this (user, device, volume)." - }, - "kind": { - "type": "string", - "description": "Resource type.", - "default": "books#concurrentAccessRestriction" - }, - "maxConcurrentDevices": { - "type": "integer", - "description": "The maximum number of concurrent access licenses for this volume.", - "format": "int32" - }, - "message": { - "type": "string", - "description": "Error/warning message." - }, - "nonce": { - "type": "string", - "description": "Client nonce for verification. Download access and client-validation only." - }, - "reasonCode": { - "type": "string", - "description": "Error/warning reason code." - }, - "restricted": { - "type": "boolean", - "description": "Whether this volume has any concurrent access restrictions." - }, - "signature": { - "type": "string", - "description": "Response signature." - }, - "source": { - "type": "string", - "description": "Client app identifier for verification. Download access and client-validation only." - }, - "timeWindowSeconds": { - "type": "integer", - "description": "Time in seconds for license auto-expiration.", - "format": "int32" - }, - "volumeId": { - "type": "string", - "description": "Identifies the volume for which this entry applies." - } - } - }, - "Dictlayerdata": { - "id": "Dictlayerdata", - "type": "object", - "properties": { - "common": { - "type": "object", - "properties": { - "title": { - "type": "string", - "description": "The display title and localized canonical name to use when searching for this entity on Google search." - } - } - }, - "dict": { - "type": "object", - "properties": { - "source": { - "type": "object", - "description": "The source, url and attribution for this dictionary data.", - "properties": { - "attribution": { - "type": "string" + "methods": { + "get": { + "description": "Gets the layer summary for a volume.", + "httpMethod": "GET", + "id": "books.layers.get", + "parameterOrder": [ + "volumeId", + "summaryId" + ], + "parameters": { + "contentVersion": { + "description": "The content version for the requested volume.", + "location": "query", + "type": "string" + }, + "source": { + "description": "String to identify the originator of this request.", + "location": "query", + "type": "string" + }, + "summaryId": { + "description": "The ID for the layer to get the summary for.", + "location": "path", + "required": true, + "type": "string" + }, + "volumeId": { + "description": "The volume to retrieve layers for.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "volumes/{volumeId}/layersummary/{summaryId}", + "response": { + "$ref": "Layersummary" + }, + "scopes": [ + "https://www.googleapis.com/auth/books" + ] }, - "url": { - "type": "string" + "list": { + "description": "List the layer summaries for a volume.", + "httpMethod": "GET", + "id": "books.layers.list", + "parameterOrder": [ + "volumeId" + ], + "parameters": { + "contentVersion": { + "description": "The content version for the requested volume.", + "location": "query", + "type": "string" + }, + "maxResults": { + "description": "Maximum number of results to return", + "format": "uint32", + "location": "query", + "maximum": "200", + "minimum": "0", + "type": "integer" + }, + "pageToken": { + "description": "The value of the nextToken from the previous page.", + "location": "query", + "type": "string" + }, + "source": { + "description": "String to identify the originator of this request.", + "location": "query", + "type": "string" + }, + "volumeId": { + "description": "The volume to retrieve layers for.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "volumes/{volumeId}/layersummary", + "response": { + "$ref": "Layersummaries" + }, + "scopes": [ + "https://www.googleapis.com/auth/books" + ] } - } }, - "words": { - "type": "array", - "items": { - "type": "object", - "properties": { - "derivatives": { - "type": "array", - "items": { - "type": "object", - "properties": { - "source": { - "type": "object", - "properties": { - "attribution": { - "type": "string" + "resources": { + "annotationData": { + "methods": { + "get": { + "description": "Gets the annotation data.", + "httpMethod": "GET", + "id": "books.layers.annotationData.get", + "parameterOrder": [ + "volumeId", + "layerId", + "annotationDataId", + "contentVersion" + ], + "parameters": { + "allowWebDefinitions": { + "description": "For the dictionary layer. Whether or not to allow web definitions.", + "location": "query", + "type": "boolean" + }, + "annotationDataId": { + "description": "The ID of the annotation data to retrieve.", + "location": "path", + "required": true, + "type": "string" + }, + "contentVersion": { + "description": "The content version for the volume you are trying to retrieve.", + "location": "query", + "required": true, + "type": "string" + }, + "h": { + "description": "The requested pixel height for any images. If height is provided width must also be provided.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "layerId": { + "description": "The ID for the layer to get the annotations.", + "location": "path", + "required": true, + "type": "string" + }, + "locale": { + "description": "The locale information for the data. ISO-639-1 language and ISO-3166-1 country code. Ex: 'en_US'.", + "location": "query", + "type": "string" + }, + "scale": { + "description": "The requested scale for the image.", + "format": "int32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "source": { + "description": "String to identify the originator of this request.", + "location": "query", + "type": "string" + }, + "volumeId": { + "description": "The volume to retrieve annotations for.", + "location": "path", + "required": true, + "type": "string" + }, + "w": { + "description": "The requested pixel width for any images. If width is provided height must also be provided.", + "format": "int32", + "location": "query", + "type": "integer" + } }, - "url": { - "type": "string" - } - } - }, - "text": { - "type": "string" - } - } - } - }, - "examples": { - "type": "array", - "items": { - "type": "object", - "properties": { - "source": { - "type": "object", - "properties": { - "attribution": { - "type": "string" + "path": "volumes/{volumeId}/layers/{layerId}/data/{annotationDataId}", + "response": { + "$ref": "Annotationdata" }, - "url": { - "type": "string" - } - } + "scopes": [ + "https://www.googleapis.com/auth/books" + ] }, - "text": { - "type": "string" + "list": { + "description": "Gets the annotation data for a volume and layer.", + "httpMethod": "GET", + "id": "books.layers.annotationData.list", + "parameterOrder": [ + "volumeId", + "layerId", + "contentVersion" + ], + "parameters": { + "annotationDataId": { + "description": "The list of Annotation Data Ids to retrieve. Pagination is ignored if this is set.", + "location": "query", + "repeated": true, + "type": "string" + }, + "contentVersion": { + "description": "The content version for the requested volume.", + "location": "query", + "required": true, + "type": "string" + }, + "h": { + "description": "The requested pixel height for any images. If height is provided width must also be provided.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "layerId": { + "description": "The ID for the layer to get the annotation data.", + "location": "path", + "required": true, + "type": "string" + }, + "locale": { + "description": "The locale information for the data. ISO-639-1 language and ISO-3166-1 country code. Ex: 'en_US'.", + "location": "query", + "type": "string" + }, + "maxResults": { + "description": "Maximum number of results to return", + "format": "uint32", + "location": "query", + "maximum": "200", + "minimum": "0", + "type": "integer" + }, + "pageToken": { + "description": "The value of the nextToken from the previous page.", + "location": "query", + "type": "string" + }, + "scale": { + "description": "The requested scale for the image.", + "format": "int32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "source": { + "description": "String to identify the originator of this request.", + "location": "query", + "type": "string" + }, + "updatedMax": { + "description": "RFC 3339 timestamp to restrict to items updated prior to this timestamp (exclusive).", + "location": "query", + "type": "string" + }, + "updatedMin": { + "description": "RFC 3339 timestamp to restrict to items updated since this timestamp (inclusive).", + "location": "query", + "type": "string" + }, + "volumeId": { + "description": "The volume to retrieve annotation data for.", + "location": "path", + "required": true, + "type": "string" + }, + "w": { + "description": "The requested pixel width for any images. If width is provided height must also be provided.", + "format": "int32", + "location": "query", + "type": "integer" + } + }, + "path": "volumes/{volumeId}/layers/{layerId}/data", + "response": { + "$ref": "Annotationsdata" + }, + "scopes": [ + "https://www.googleapis.com/auth/books" + ] } - } } - }, - "senses": { - "type": "array", - "items": { - "type": "object", - "properties": { - "conjugations": { - "type": "array", - "items": { - "type": "object", - "properties": { - "type": { - "type": "string" - }, - "value": { - "type": "string" - } - } - } + }, + "volumeAnnotations": { + "methods": { + "get": { + "description": "Gets the volume annotation.", + "httpMethod": "GET", + "id": "books.layers.volumeAnnotations.get", + "parameterOrder": [ + "volumeId", + "layerId", + "annotationId" + ], + "parameters": { + "annotationId": { + "description": "The ID of the volume annotation to retrieve.", + "location": "path", + "required": true, + "type": "string" + }, + "layerId": { + "description": "The ID for the layer to get the annotations.", + "location": "path", + "required": true, + "type": "string" + }, + "locale": { + "description": "The locale information for the data. ISO-639-1 language and ISO-3166-1 country code. Ex: 'en_US'.", + "location": "query", + "type": "string" + }, + "source": { + "description": "String to identify the originator of this request.", + "location": "query", + "type": "string" + }, + "volumeId": { + "description": "The volume to retrieve annotations for.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "volumes/{volumeId}/layers/{layerId}/annotations/{annotationId}", + "response": { + "$ref": "Volumeannotation" + }, + "scopes": [ + "https://www.googleapis.com/auth/books" + ] }, - "definitions": { - "type": "array", - "items": { - "type": "object", - "properties": { - "definition": { - "type": "string" - }, - "examples": { - "type": "array", - "items": { - "type": "object", - "properties": { - "source": { - "type": "object", - "properties": { - "attribution": { - "type": "string" + "list": { + "description": "Gets the volume annotations for a volume and layer.", + "httpMethod": "GET", + "id": "books.layers.volumeAnnotations.list", + "parameterOrder": [ + "volumeId", + "layerId", + "contentVersion" + ], + "parameters": { + "contentVersion": { + "description": "The content version for the requested volume.", + "location": "query", + "required": true, + "type": "string" + }, + "endOffset": { + "description": "The end offset to end retrieving data from.", + "location": "query", + "type": "string" + }, + "endPosition": { + "description": "The end position to end retrieving data from.", + "location": "query", + "type": "string" + }, + "layerId": { + "description": "The ID for the layer to get the annotations.", + "location": "path", + "required": true, + "type": "string" + }, + "locale": { + "description": "The locale information for the data. ISO-639-1 language and ISO-3166-1 country code. Ex: 'en_US'.", + "location": "query", + "type": "string" + }, + "maxResults": { + "description": "Maximum number of results to return", + "format": "uint32", + "location": "query", + "maximum": "200", + "minimum": "0", + "type": "integer" + }, + "pageToken": { + "description": "The value of the nextToken from the previous page.", + "location": "query", + "type": "string" + }, + "showDeleted": { + "description": "Set to true to return deleted annotations. updatedMin must be in the request to use this. Defaults to false.", + "location": "query", + "type": "boolean" + }, + "source": { + "description": "String to identify the originator of this request.", + "location": "query", + "type": "string" + }, + "startOffset": { + "description": "The start offset to start retrieving data from.", + "location": "query", + "type": "string" + }, + "startPosition": { + "description": "The start position to start retrieving data from.", + "location": "query", + "type": "string" + }, + "updatedMax": { + "description": "RFC 3339 timestamp to restrict to items updated prior to this timestamp (exclusive).", + "location": "query", + "type": "string" + }, + "updatedMin": { + "description": "RFC 3339 timestamp to restrict to items updated since this timestamp (inclusive).", + "location": "query", + "type": "string" + }, + "volumeAnnotationsVersion": { + "description": "The version of the volume annotations that you are requesting.", + "location": "query", + "type": "string" + }, + "volumeId": { + "description": "The volume to retrieve annotations for.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "volumes/{volumeId}/layers/{layerId}", + "response": { + "$ref": "Volumeannotations" + }, + "scopes": [ + "https://www.googleapis.com/auth/books" + ] + } + } + } + } + }, + "myconfig": { + "methods": { + "getUserSettings": { + "description": "Gets the current settings for the user.", + "httpMethod": "GET", + "id": "books.myconfig.getUserSettings", + "path": "myconfig/getUserSettings", + "response": { + "$ref": "Usersettings" + }, + "scopes": [ + "https://www.googleapis.com/auth/books" + ] + }, + "releaseDownloadAccess": { + "description": "Release downloaded content access restriction.", + "httpMethod": "POST", + "id": "books.myconfig.releaseDownloadAccess", + "parameterOrder": [ + "volumeIds", + "cpksver" + ], + "parameters": { + "cpksver": { + "description": "The device/version ID from which to release the restriction.", + "location": "query", + "required": true, + "type": "string" + }, + "locale": { + "description": "ISO-639-1, ISO-3166-1 codes for message localization, i.e. en_US.", + "location": "query", + "type": "string" + }, + "source": { + "description": "String to identify the originator of this request.", + "location": "query", + "type": "string" + }, + "volumeIds": { + "description": "The volume(s) to release restrictions for.", + "location": "query", + "repeated": true, + "required": true, + "type": "string" + } + }, + "path": "myconfig/releaseDownloadAccess", + "response": { + "$ref": "DownloadAccesses" + }, + "scopes": [ + "https://www.googleapis.com/auth/books" + ] + }, + "requestAccess": { + "description": "Request concurrent and download access restrictions.", + "httpMethod": "POST", + "id": "books.myconfig.requestAccess", + "parameterOrder": [ + "source", + "volumeId", + "nonce", + "cpksver" + ], + "parameters": { + "cpksver": { + "description": "The device/version ID from which to request the restrictions.", + "location": "query", + "required": true, + "type": "string" + }, + "licenseTypes": { + "description": "The type of access license to request. If not specified, the default is BOTH.", + "enum": [ + "BOTH", + "CONCURRENT", + "DOWNLOAD" + ], + "enumDescriptions": [ + "Both concurrent and download licenses.", + "Concurrent access license.", + "Offline download access license." + ], + "location": "query", + "type": "string" + }, + "locale": { + "description": "ISO-639-1, ISO-3166-1 codes for message localization, i.e. en_US.", + "location": "query", + "type": "string" + }, + "nonce": { + "description": "The client nonce value.", + "location": "query", + "required": true, + "type": "string" + }, + "source": { + "description": "String to identify the originator of this request.", + "location": "query", + "required": true, + "type": "string" + }, + "volumeId": { + "description": "The volume to request concurrent/download restrictions for.", + "location": "query", + "required": true, + "type": "string" + } + }, + "path": "myconfig/requestAccess", + "response": { + "$ref": "RequestAccess" + }, + "scopes": [ + "https://www.googleapis.com/auth/books" + ] + }, + "syncVolumeLicenses": { + "description": "Request downloaded content access for specified volumes on the My eBooks shelf.", + "httpMethod": "POST", + "id": "books.myconfig.syncVolumeLicenses", + "parameterOrder": [ + "source", + "nonce", + "cpksver" + ], + "parameters": { + "cpksver": { + "description": "The device/version ID from which to release the restriction.", + "location": "query", + "required": true, + "type": "string" + }, + "features": { + "description": "List of features supported by the client, i.e., 'RENTALS'", + "enum": [ + "RENTALS" + ], + "enumDescriptions": [ + "Client supports rentals." + ], + "location": "query", + "repeated": true, + "type": "string" + }, + "includeNonComicsSeries": { + "description": "Set to true to include non-comics series. Defaults to false.", + "location": "query", + "type": "boolean" + }, + "locale": { + "description": "ISO-639-1, ISO-3166-1 codes for message localization, i.e. en_US.", + "location": "query", + "type": "string" + }, + "nonce": { + "description": "The client nonce value.", + "location": "query", + "required": true, + "type": "string" + }, + "showPreorders": { + "description": "Set to true to show pre-ordered books. Defaults to false.", + "location": "query", + "type": "boolean" + }, + "source": { + "description": "String to identify the originator of this request.", + "location": "query", + "required": true, + "type": "string" + }, + "volumeIds": { + "description": "The volume(s) to request download restrictions for.", + "location": "query", + "repeated": true, + "type": "string" + } + }, + "path": "myconfig/syncVolumeLicenses", + "response": { + "$ref": "Volumes" + }, + "scopes": [ + "https://www.googleapis.com/auth/books" + ] + }, + "updateUserSettings": { + "description": "Sets the settings for the user. If a sub-object is specified, it will overwrite the existing sub-object stored in the server. Unspecified sub-objects will retain the existing value.", + "httpMethod": "POST", + "id": "books.myconfig.updateUserSettings", + "path": "myconfig/updateUserSettings", + "request": { + "$ref": "Usersettings" + }, + "response": { + "$ref": "Usersettings" + }, + "scopes": [ + "https://www.googleapis.com/auth/books" + ] + } + } + }, + "mylibrary": { + "resources": { + "annotations": { + "methods": { + "delete": { + "description": "Deletes an annotation.", + "httpMethod": "DELETE", + "id": "books.mylibrary.annotations.delete", + "parameterOrder": [ + "annotationId" + ], + "parameters": { + "annotationId": { + "description": "The ID for the annotation to delete.", + "location": "path", + "required": true, + "type": "string" + }, + "source": { + "description": "String to identify the originator of this request.", + "location": "query", + "type": "string" + } + }, + "path": "mylibrary/annotations/{annotationId}", + "scopes": [ + "https://www.googleapis.com/auth/books" + ] + }, + "insert": { + "description": "Inserts a new annotation.", + "httpMethod": "POST", + "id": "books.mylibrary.annotations.insert", + "parameters": { + "annotationId": { + "description": "The ID for the annotation to insert.", + "location": "query", + "type": "string" + }, + "country": { + "description": "ISO-3166-1 code to override the IP-based location.", + "location": "query", + "type": "string" + }, + "showOnlySummaryInResponse": { + "description": "Requests that only the summary of the specified layer be provided in the response.", + "location": "query", + "type": "boolean" + }, + "source": { + "description": "String to identify the originator of this request.", + "location": "query", + "type": "string" + } + }, + "path": "mylibrary/annotations", + "request": { + "$ref": "Annotation" + }, + "response": { + "$ref": "Annotation" + }, + "scopes": [ + "https://www.googleapis.com/auth/books" + ] + }, + "list": { + "description": "Retrieves a list of annotations, possibly filtered.", + "httpMethod": "GET", + "id": "books.mylibrary.annotations.list", + "parameters": { + "contentVersion": { + "description": "The content version for the requested volume.", + "location": "query", + "type": "string" + }, + "layerId": { + "description": "The layer ID to limit annotation by.", + "location": "query", + "type": "string" + }, + "layerIds": { + "description": "The layer ID(s) to limit annotation by.", + "location": "query", + "repeated": true, + "type": "string" + }, + "maxResults": { + "description": "Maximum number of results to return", + "format": "uint32", + "location": "query", + "maximum": "40", + "minimum": "0", + "type": "integer" + }, + "pageToken": { + "description": "The value of the nextToken from the previous page.", + "location": "query", + "type": "string" + }, + "showDeleted": { + "description": "Set to true to return deleted annotations. updatedMin must be in the request to use this. Defaults to false.", + "location": "query", + "type": "boolean" + }, + "source": { + "description": "String to identify the originator of this request.", + "location": "query", + "type": "string" + }, + "updatedMax": { + "description": "RFC 3339 timestamp to restrict to items updated prior to this timestamp (exclusive).", + "location": "query", + "type": "string" + }, + "updatedMin": { + "description": "RFC 3339 timestamp to restrict to items updated since this timestamp (inclusive).", + "location": "query", + "type": "string" + }, + "volumeId": { + "description": "The volume to restrict annotations to.", + "location": "query", + "type": "string" + } + }, + "path": "mylibrary/annotations", + "response": { + "$ref": "Annotations" + }, + "scopes": [ + "https://www.googleapis.com/auth/books" + ] + }, + "summary": { + "description": "Gets the summary of specified layers.", + "httpMethod": "POST", + "id": "books.mylibrary.annotations.summary", + "parameterOrder": [ + "layerIds", + "volumeId" + ], + "parameters": { + "layerIds": { + "description": "Array of layer IDs to get the summary for.", + "location": "query", + "repeated": true, + "required": true, + "type": "string" + }, + "volumeId": { + "description": "Volume id to get the summary for.", + "location": "query", + "required": true, + "type": "string" + } + }, + "path": "mylibrary/annotations/summary", + "response": { + "$ref": "AnnotationsSummary" + }, + "scopes": [ + "https://www.googleapis.com/auth/books" + ] + }, + "update": { + "description": "Updates an existing annotation.", + "httpMethod": "PUT", + "id": "books.mylibrary.annotations.update", + "parameterOrder": [ + "annotationId" + ], + "parameters": { + "annotationId": { + "description": "The ID for the annotation to update.", + "location": "path", + "required": true, + "type": "string" + }, + "source": { + "description": "String to identify the originator of this request.", + "location": "query", + "type": "string" + } + }, + "path": "mylibrary/annotations/{annotationId}", + "request": { + "$ref": "Annotation" + }, + "response": { + "$ref": "Annotation" + }, + "scopes": [ + "https://www.googleapis.com/auth/books" + ] + } + } + }, + "bookshelves": { + "methods": { + "addVolume": { + "description": "Adds a volume to a bookshelf.", + "httpMethod": "POST", + "id": "books.mylibrary.bookshelves.addVolume", + "parameterOrder": [ + "shelf", + "volumeId" + ], + "parameters": { + "reason": { + "description": "The reason for which the book is added to the library.", + "enum": [ + "IOS_PREX", + "IOS_SEARCH", + "ONBOARDING" + ], + "enumDescriptions": [ + "Volumes added from the PREX flow on iOS.", + "Volumes added from the Search flow on iOS.", + "Volumes added from the Onboarding flow." + ], + "location": "query", + "type": "string" + }, + "shelf": { + "description": "ID of bookshelf to which to add a volume.", + "location": "path", + "required": true, + "type": "string" + }, + "source": { + "description": "String to identify the originator of this request.", + "location": "query", + "type": "string" + }, + "volumeId": { + "description": "ID of volume to add.", + "location": "query", + "required": true, + "type": "string" + } + }, + "path": "mylibrary/bookshelves/{shelf}/addVolume", + "scopes": [ + "https://www.googleapis.com/auth/books" + ] + }, + "clearVolumes": { + "description": "Clears all volumes from a bookshelf.", + "httpMethod": "POST", + "id": "books.mylibrary.bookshelves.clearVolumes", + "parameterOrder": [ + "shelf" + ], + "parameters": { + "shelf": { + "description": "ID of bookshelf from which to remove a volume.", + "location": "path", + "required": true, + "type": "string" + }, + "source": { + "description": "String to identify the originator of this request.", + "location": "query", + "type": "string" + } + }, + "path": "mylibrary/bookshelves/{shelf}/clearVolumes", + "scopes": [ + "https://www.googleapis.com/auth/books" + ] + }, + "get": { + "description": "Retrieves metadata for a specific bookshelf belonging to the authenticated user.", + "httpMethod": "GET", + "id": "books.mylibrary.bookshelves.get", + "parameterOrder": [ + "shelf" + ], + "parameters": { + "shelf": { + "description": "ID of bookshelf to retrieve.", + "location": "path", + "required": true, + "type": "string" + }, + "source": { + "description": "String to identify the originator of this request.", + "location": "query", + "type": "string" + } + }, + "path": "mylibrary/bookshelves/{shelf}", + "response": { + "$ref": "Bookshelf" + }, + "scopes": [ + "https://www.googleapis.com/auth/books" + ] + }, + "list": { + "description": "Retrieves a list of bookshelves belonging to the authenticated user.", + "httpMethod": "GET", + "id": "books.mylibrary.bookshelves.list", + "parameters": { + "source": { + "description": "String to identify the originator of this request.", + "location": "query", + "type": "string" + } + }, + "path": "mylibrary/bookshelves", + "response": { + "$ref": "Bookshelves" + }, + "scopes": [ + "https://www.googleapis.com/auth/books" + ] + }, + "moveVolume": { + "description": "Moves a volume within a bookshelf.", + "httpMethod": "POST", + "id": "books.mylibrary.bookshelves.moveVolume", + "parameterOrder": [ + "shelf", + "volumeId", + "volumePosition" + ], + "parameters": { + "shelf": { + "description": "ID of bookshelf with the volume.", + "location": "path", + "required": true, + "type": "string" + }, + "source": { + "description": "String to identify the originator of this request.", + "location": "query", + "type": "string" + }, + "volumeId": { + "description": "ID of volume to move.", + "location": "query", + "required": true, + "type": "string" + }, + "volumePosition": { + "description": "Position on shelf to move the item (0 puts the item before the current first item, 1 puts it between the first and the second and so on.)", + "format": "int32", + "location": "query", + "required": true, + "type": "integer" + } + }, + "path": "mylibrary/bookshelves/{shelf}/moveVolume", + "scopes": [ + "https://www.googleapis.com/auth/books" + ] + }, + "removeVolume": { + "description": "Removes a volume from a bookshelf.", + "httpMethod": "POST", + "id": "books.mylibrary.bookshelves.removeVolume", + "parameterOrder": [ + "shelf", + "volumeId" + ], + "parameters": { + "reason": { + "description": "The reason for which the book is removed from the library.", + "enum": [ + "ONBOARDING" + ], + "enumDescriptions": [ + "Samples removed from the Onboarding flow." + ], + "location": "query", + "type": "string" + }, + "shelf": { + "description": "ID of bookshelf from which to remove a volume.", + "location": "path", + "required": true, + "type": "string" + }, + "source": { + "description": "String to identify the originator of this request.", + "location": "query", + "type": "string" + }, + "volumeId": { + "description": "ID of volume to remove.", + "location": "query", + "required": true, + "type": "string" + } + }, + "path": "mylibrary/bookshelves/{shelf}/removeVolume", + "scopes": [ + "https://www.googleapis.com/auth/books" + ] + } + }, + "resources": { + "volumes": { + "methods": { + "list": { + "description": "Gets volume information for volumes on a bookshelf.", + "httpMethod": "GET", + "id": "books.mylibrary.bookshelves.volumes.list", + "parameterOrder": [ + "shelf" + ], + "parameters": { + "country": { + "description": "ISO-3166-1 code to override the IP-based location.", + "location": "query", + "type": "string" }, - "url": { - "type": "string" + "maxResults": { + "description": "Maximum number of results to return", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "projection": { + "description": "Restrict information returned to a set of selected fields.", + "enum": [ + "full", + "lite" + ], + "enumDescriptions": [ + "Includes all volume data.", + "Includes a subset of fields in volumeInfo and accessInfo." + ], + "location": "query", + "type": "string" + }, + "q": { + "description": "Full-text search query string in this bookshelf.", + "location": "query", + "type": "string" + }, + "shelf": { + "description": "The bookshelf ID or name retrieve volumes for.", + "location": "path", + "required": true, + "type": "string" + }, + "showPreorders": { + "description": "Set to true to show pre-ordered books. Defaults to false.", + "location": "query", + "type": "boolean" + }, + "source": { + "description": "String to identify the originator of this request.", + "location": "query", + "type": "string" + }, + "startIndex": { + "description": "Index of the first element to return (starts at 0)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" } - } }, - "text": { - "type": "string" - } - } + "path": "mylibrary/bookshelves/{shelf}/volumes", + "response": { + "$ref": "Volumes" + }, + "scopes": [ + "https://www.googleapis.com/auth/books" + ] } - } } - } - }, - "partOfSpeech": { - "type": "string" - }, - "pronunciation": { - "type": "string" - }, - "pronunciationUrl": { - "type": "string" - }, - "source": { - "type": "object", - "properties": { - "attribution": { - "type": "string" - }, - "url": { - "type": "string" - } - } - }, - "syllabification": { - "type": "string" - }, - "synonyms": { - "type": "array", - "items": { - "type": "object", - "properties": { - "source": { - "type": "object", - "properties": { - "attribution": { - "type": "string" - }, - "url": { - "type": "string" - } - } - }, - "text": { - "type": "string" - } - } - } } - } } - }, - "source": { - "type": "object", - "description": "The words with different meanings but not related words, e.g. \"go\" (game) and \"go\" (verb).", - "properties": { - "attribution": { - "type": "string" - }, - "url": { - "type": "string" - } - } - } - } - } - } - } - }, - "kind": { - "type": "string", - "default": "books#dictlayerdata" - } - } - }, - "Discoveryclusters": { - "id": "Discoveryclusters", - "type": "object", - "properties": { - "clusters": { - "type": "array", - "items": { - "type": "object", - "properties": { - "banner_with_content_container": { - "type": "object", - "properties": { - "fillColorArgb": { - "type": "string" - }, - "imageUrl": { - "type": "string" - }, - "maskColorArgb": { - "type": "string" - }, - "moreButtonText": { - "type": "string" - }, - "moreButtonUrl": { - "type": "string" - }, - "textColorArgb": { - "type": "string" - } - } - }, - "subTitle": { - "type": "string" - }, - "title": { - "type": "string" - }, - "totalVolumes": { - "type": "integer", - "format": "int32" - }, - "uid": { - "type": "string" - }, - "volumes": { - "type": "array", - "items": { - "$ref": "Volume" - } - } - } - } - }, - "kind": { - "type": "string", - "description": "Resorce type.", - "default": "books#discovery#clusters" - }, - "totalClusters": { - "type": "integer", - "format": "int32" - } - } - }, - "DownloadAccessRestriction": { - "id": "DownloadAccessRestriction", - "type": "object", - "properties": { - "deviceAllowed": { - "type": "boolean", - "description": "If restricted, whether access is granted for this (user, device, volume)." - }, - "downloadsAcquired": { - "type": "integer", - "description": "If restricted, the number of content download licenses already acquired (including the requesting client, if licensed).", - "format": "int32" - }, - "justAcquired": { - "type": "boolean", - "description": "If deviceAllowed, whether access was just acquired with this request." - }, - "kind": { - "type": "string", - "description": "Resource type.", - "default": "books#downloadAccessRestriction" - }, - "maxDownloadDevices": { - "type": "integer", - "description": "If restricted, the maximum number of content download licenses for this volume.", - "format": "int32" - }, - "message": { - "type": "string", - "description": "Error/warning message." - }, - "nonce": { - "type": "string", - "description": "Client nonce for verification. Download access and client-validation only." - }, - "reasonCode": { - "type": "string", - "description": "Error/warning reason code. Additional codes may be added in the future. 0 OK 100 ACCESS_DENIED_PUBLISHER_LIMIT 101 ACCESS_DENIED_LIMIT 200 WARNING_USED_LAST_ACCESS" - }, - "restricted": { - "type": "boolean", - "description": "Whether this volume has any download access restrictions." - }, - "signature": { - "type": "string", - "description": "Response signature." - }, - "source": { - "type": "string", - "description": "Client app identifier for verification. Download access and client-validation only." - }, - "volumeId": { - "type": "string", - "description": "Identifies the volume for which this entry applies." - } - } - }, - "DownloadAccesses": { - "id": "DownloadAccesses", - "type": "object", - "properties": { - "downloadAccessList": { - "type": "array", - "description": "A list of download access responses.", - "items": { - "$ref": "DownloadAccessRestriction" - } - }, - "kind": { - "type": "string", - "description": "Resource type.", - "default": "books#downloadAccesses" - } - } - }, - "FamilyInfo": { - "id": "FamilyInfo", - "type": "object", - "properties": { - "kind": { - "type": "string", - "description": "Resource type.", - "default": "books#familyInfo" - }, - "membership": { - "type": "object", - "description": "Family membership info of the user that made the request.", - "properties": { - "acquirePermission": { - "type": "string", - "description": "Restrictions on user buying and acquiring content." - }, - "ageGroup": { - "type": "string", - "description": "The age group of the user." - }, - "allowedMaturityRating": { - "type": "string", - "description": "The maximum allowed maturity rating for the user." - }, - "isInFamily": { - "type": "boolean" - }, - "role": { - "type": "string", - "description": "The role of the user in the family." - } - } - } - } - }, - "Geolayerdata": { - "id": "Geolayerdata", - "type": "object", - "properties": { - "common": { - "type": "object", - "properties": { - "lang": { - "type": "string", - "description": "The language of the information url and description." - }, - "previewImageUrl": { - "type": "string", - "description": "The URL for the preview image information." - }, - "snippet": { - "type": "string", - "description": "The description for this location." - }, - "snippetUrl": { - "type": "string", - "description": "The URL for information for this location. Ex: wikipedia link." - }, - "title": { - "type": "string", - "description": "The display title and localized canonical name to use when searching for this entity on Google search." - } - } - }, - "geo": { - "type": "object", - "properties": { - "boundary": { - "type": "array", - "description": "The boundary of the location as a set of loops containing pairs of latitude, longitude coordinates.", - "items": { - "type": "array", - "items": { - "type": "object", - "properties": { - "latitude": { - "type": "integer", - "format": "uint32" - }, - "longitude": { - "type": "integer", - "format": "uint32" - } - } - } - } - }, - "cachePolicy": { - "type": "string", - "description": "The cache policy active for this data. EX: UNRESTRICTED, RESTRICTED, NEVER" - }, - "countryCode": { - "type": "string", - "description": "The country code of the location." - }, - "latitude": { - "type": "number", - "description": "The latitude of the location.", - "format": "double" - }, - "longitude": { - "type": "number", - "description": "The longitude of the location.", - "format": "double" - }, - "mapType": { - "type": "string", - "description": "The type of map that should be used for this location. EX: HYBRID, ROADMAP, SATELLITE, TERRAIN" - }, - "viewport": { - "type": "object", - "description": "The viewport for showing this location. This is a latitude, longitude rectangle.", - "properties": { - "hi": { - "type": "object", - "properties": { - "latitude": { - "type": "number", - "format": "double" - }, - "longitude": { - "type": "number", - "format": "double" - } - } }, - "lo": { - "type": "object", - "properties": { - "latitude": { - "type": "number", - "format": "double" - }, - "longitude": { - "type": "number", - "format": "double" + "readingpositions": { + "methods": { + "get": { + "description": "Retrieves my reading position information for a volume.", + "httpMethod": "GET", + "id": "books.mylibrary.readingpositions.get", + "parameterOrder": [ + "volumeId" + ], + "parameters": { + "contentVersion": { + "description": "Volume content version for which this reading position is requested.", + "location": "query", + "type": "string" + }, + "source": { + "description": "String to identify the originator of this request.", + "location": "query", + "type": "string" + }, + "volumeId": { + "description": "ID of volume for which to retrieve a reading position.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "mylibrary/readingpositions/{volumeId}", + "response": { + "$ref": "ReadingPosition" + }, + "scopes": [ + "https://www.googleapis.com/auth/books" + ] + }, + "setPosition": { + "description": "Sets my reading position information for a volume.", + "httpMethod": "POST", + "id": "books.mylibrary.readingpositions.setPosition", + "parameterOrder": [ + "volumeId", + "timestamp", + "position" + ], + "parameters": { + "action": { + "description": "Action that caused this reading position to be set.", + "enum": [ + "bookmark", + "chapter", + "next-page", + "prev-page", + "scroll", + "search" + ], + "enumDescriptions": [ + "User chose bookmark within volume.", + "User selected chapter from list.", + "Next page event.", + "Previous page event.", + "User navigated to page.", + "User chose search results within volume." + ], + "location": "query", + "type": "string" + }, + "contentVersion": { + "description": "Volume content version for which this reading position applies.", + "location": "query", + "type": "string" + }, + "deviceCookie": { + "description": "Random persistent device cookie optional on set position.", + "location": "query", + "type": "string" + }, + "position": { + "description": "Position string for the new volume reading position.", + "location": "query", + "required": true, + "type": "string" + }, + "source": { + "description": "String to identify the originator of this request.", + "location": "query", + "type": "string" + }, + "timestamp": { + "description": "RFC 3339 UTC format timestamp associated with this reading position.", + "location": "query", + "required": true, + "type": "string" + }, + "volumeId": { + "description": "ID of volume for which to update the reading position.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "mylibrary/readingpositions/{volumeId}/setPosition", + "scopes": [ + "https://www.googleapis.com/auth/books" + ] + } } - } } - } - }, - "zoom": { - "type": "integer", - "description": "The Zoom level to use for the map. Zoom levels between 0 (the lowest zoom level, in which the entire world can be seen on one map) to 21+ (down to individual buildings). See: https://developers.google.com/maps/documentation/staticmaps/#Zoomlevels", - "format": "int32" } - } - }, - "kind": { - "type": "string", - "default": "books#geolayerdata" - } - } - }, - "Layersummaries": { - "id": "Layersummaries", - "type": "object", - "properties": { - "items": { - "type": "array", - "description": "A list of layer summary items.", - "items": { - "$ref": "Layersummary" - } - }, - "kind": { - "type": "string", - "description": "Resource type.", - "default": "books#layersummaries" - }, - "totalItems": { - "type": "integer", - "description": "The total number of layer summaries found.", - "format": "int32" - } - } - }, - "Layersummary": { - "id": "Layersummary", - "type": "object", - "properties": { - "annotationCount": { - "type": "integer", - "description": "The number of annotations for this layer.", - "format": "int32" - }, - "annotationTypes": { - "type": "array", - "description": "The list of annotation types contained for this layer.", - "items": { - "type": "string" - } - }, - "annotationsDataLink": { - "type": "string", - "description": "Link to get data for this annotation." - }, - "annotationsLink": { - "type": "string", - "description": "The link to get the annotations for this layer." - }, - "contentVersion": { - "type": "string", - "description": "The content version this resource is for." - }, - "dataCount": { - "type": "integer", - "description": "The number of data items for this layer.", - "format": "int32" - }, - "id": { - "type": "string", - "description": "Unique id of this layer summary." - }, - "kind": { - "type": "string", - "description": "Resource Type", - "default": "books#layersummary" - }, - "layerId": { - "type": "string", - "description": "The layer id for this summary." - }, - "selfLink": { - "type": "string", - "description": "URL to this resource." - }, - "updated": { - "type": "string", - "description": "Timestamp for the last time an item in this layer was updated. (RFC 3339 UTC date-time format).", - "format": "date-time" - }, - "volumeAnnotationsVersion": { - "type": "string", - "description": "The current version of this layer's volume annotations. Note that this version applies only to the data in the books.layers.volumeAnnotations.* responses. The actual annotation data is versioned separately." - }, - "volumeId": { - "type": "string", - "description": "The volume id this resource is for." - } - } - }, - "Metadata": { - "id": "Metadata", - "type": "object", - "properties": { - "items": { - "type": "array", - "description": "A list of offline dictionary metadata.", - "items": { - "type": "object", - "properties": { - "download_url": { - "type": "string" - }, - "encrypted_key": { - "type": "string" - }, - "language": { - "type": "string" - }, - "size": { - "type": "string", - "format": "int64" - }, - "version": { - "type": "string", - "format": "int64" - } - } - } - }, - "kind": { - "type": "string", - "description": "Resource type.", - "default": "dictionary#metadata" - } - } - }, - "Notification": { - "id": "Notification", - "type": "object", - "properties": { - "body": { - "type": "string" - }, - "crmExperimentIds": { - "type": "array", - "description": "The list of crm experiment ids.", - "items": { - "type": "string", - "format": "int64" - } - }, - "doc_id": { - "type": "string" - }, - "doc_type": { - "type": "string" - }, - "dont_show_notification": { - "type": "boolean" - }, - "iconUrl": { - "type": "string" - }, - "kind": { - "type": "string", - "description": "Resource type.", - "default": "books#notification" - }, - "notificationGroup": { - "type": "string" - }, - "notification_type": { - "type": "string" - }, - "pcampaign_id": { - "type": "string" - }, - "reason": { - "type": "string" - }, - "show_notification_settings_action": { - "type": "boolean" - }, - "targetUrl": { - "type": "string" - }, - "title": { - "type": "string" - } - } - }, - "Offers": { - "id": "Offers", - "type": "object", - "properties": { - "items": { - "type": "array", - "description": "A list of offers.", - "items": { - "type": "object", - "properties": { - "artUrl": { - "type": "string" - }, - "gservicesKey": { - "type": "string" - }, - "id": { - "type": "string" - }, - "items": { - "type": "array", - "items": { - "type": "object", - "properties": { - "author": { - "type": "string" - }, - "canonicalVolumeLink": { - "type": "string" - }, - "coverUrl": { - "type": "string" - }, - "description": { - "type": "string" - }, - "title": { - "type": "string" - }, - "volumeId": { - "type": "string" - } - } - } - } - } - } - }, - "kind": { - "type": "string", - "description": "Resource type.", - "default": "promooffer#offers" - } - } - }, - "ReadingPosition": { - "id": "ReadingPosition", - "type": "object", - "properties": { - "epubCfiPosition": { - "type": "string", - "description": "Position in an EPUB as a CFI." - }, - "gbImagePosition": { - "type": "string", - "description": "Position in a volume for image-based content." - }, - "gbTextPosition": { - "type": "string", - "description": "Position in a volume for text-based content." - }, - "kind": { - "type": "string", - "description": "Resource type for a reading position.", - "default": "books#readingPosition" - }, - "pdfPosition": { - "type": "string", - "description": "Position in a PDF file." - }, - "updated": { - "type": "string", - "description": "Timestamp when this reading position was last updated (formatted UTC timestamp with millisecond resolution).", - "format": "date-time" - }, - "volumeId": { - "type": "string", - "description": "Volume id associated with this reading position." - } - } - }, - "RequestAccess": { - "id": "RequestAccess", - "type": "object", - "properties": { - "concurrentAccess": { - "$ref": "ConcurrentAccessRestriction", - "description": "A concurrent access response." - }, - "downloadAccess": { - "$ref": "DownloadAccessRestriction", - "description": "A download access response." - }, - "kind": { - "type": "string", - "description": "Resource type.", - "default": "books#requestAccess" - } - } - }, - "Review": { - "id": "Review", - "type": "object", - "properties": { - "author": { - "type": "object", - "description": "Author of this review.", - "properties": { - "displayName": { - "type": "string", - "description": "Name of this person." - } - } - }, - "content": { - "type": "string", - "description": "Review text." - }, - "date": { - "type": "string", - "description": "Date of this review." - }, - "fullTextUrl": { - "type": "string", - "description": "URL for the full review text, for reviews gathered from the web." - }, - "kind": { - "type": "string", - "description": "Resource type for a review.", - "default": "books#review" - }, - "rating": { - "type": "string", - "description": "Star rating for this review. Possible values are ONE, TWO, THREE, FOUR, FIVE or NOT_RATED." - }, - "source": { - "type": "object", - "description": "Information regarding the source of this review, when the review is not from a Google Books user.", - "properties": { - "description": { - "type": "string", - "description": "Name of the source." - }, - "extraDescription": { - "type": "string", - "description": "Extra text about the source of the review." - }, - "url": { - "type": "string", - "description": "URL of the source of the review." - } - } - }, - "title": { - "type": "string", - "description": "Title for this review." - }, - "type": { - "type": "string", - "description": "Source type for this review. Possible values are EDITORIAL, WEB_USER or GOOGLE_USER." - }, - "volumeId": { - "type": "string", - "description": "Volume that this review is for." - } - } - }, - "Series": { - "id": "Series", - "type": "object", - "properties": { - "kind": { - "type": "string", - "description": "Resource type.", - "default": "books#series" - }, - "series": { - "type": "array", - "items": { - "type": "object", - "properties": { - "bannerImageUrl": { - "type": "string" - }, - "imageUrl": { - "type": "string" - }, - "seriesId": { - "type": "string" - }, - "seriesType": { - "type": "string" - }, - "title": { - "type": "string" - } - } - } - } - } - }, - "Seriesmembership": { - "id": "Seriesmembership", - "type": "object", - "properties": { - "kind": { - "type": "string", - "description": "Resorce type.", - "default": "books#series#membership" - }, - "member": { - "type": "array", - "items": { - "$ref": "Volume" - } - }, - "nextPageToken": { - "type": "string" - } - } - }, - "Usersettings": { - "id": "Usersettings", - "type": "object", - "properties": { - "kind": { - "type": "string", - "description": "Resource type.", - "default": "books#usersettings" - }, - "notesExport": { - "type": "object", - "description": "User settings in sub-objects, each for different purposes.", - "properties": { - "folderName": { - "type": "string" - }, - "isEnabled": { - "type": "boolean" - } - } }, "notification": { - "type": "object", - "properties": { - "matchMyInterests": { - "type": "object", - "properties": { - "opted_state": { - "type": "string" + "methods": { + "get": { + "description": "Returns notification details for a given notification id.", + "httpMethod": "GET", + "id": "books.notification.get", + "parameterOrder": [ + "notification_id" + ], + "parameters": { + "locale": { + "description": "ISO-639-1 language and ISO-3166-1 country code. Ex: 'en_US'. Used for generating notification title and body.", + "location": "query", + "type": "string" + }, + "notification_id": { + "description": "String to identify the notification.", + "location": "query", + "required": true, + "type": "string" + }, + "source": { + "description": "String to identify the originator of this request.", + "location": "query", + "type": "string" + } + }, + "path": "notification/get", + "response": { + "$ref": "Notification" + }, + "scopes": [ + "https://www.googleapis.com/auth/books" + ] + } + } + }, + "onboarding": { + "methods": { + "listCategories": { + "description": "List categories for onboarding experience.", + "httpMethod": "GET", + "id": "books.onboarding.listCategories", + "parameters": { + "locale": { + "description": "ISO-639-1 language and ISO-3166-1 country code. Default is en-US if unset.", + "location": "query", + "type": "string" + } + }, + "path": "onboarding/listCategories", + "response": { + "$ref": "Category" + }, + "scopes": [ + "https://www.googleapis.com/auth/books" + ] + }, + "listCategoryVolumes": { + "description": "List available volumes under categories for onboarding experience.", + "httpMethod": "GET", + "id": "books.onboarding.listCategoryVolumes", + "parameters": { + "categoryId": { + "description": "List of category ids requested.", + "location": "query", + "repeated": true, + "type": "string" + }, + "locale": { + "description": "ISO-639-1 language and ISO-3166-1 country code. Default is en-US if unset.", + "location": "query", + "type": "string" + }, + "maxAllowedMaturityRating": { + "description": "The maximum allowed maturity rating of returned volumes. Books with a higher maturity rating are filtered out.", + "enum": [ + "mature", + "not-mature" + ], + "enumDescriptions": [ + "Show books which are rated mature or lower.", + "Show books which are rated not mature." + ], + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "Number of maximum results per page to be included in the response.", + "format": "uint32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "The value of the nextToken from the previous page.", + "location": "query", + "type": "string" + } + }, + "path": "onboarding/listCategoryVolumes", + "response": { + "$ref": "Volume2" + }, + "scopes": [ + "https://www.googleapis.com/auth/books" + ] + } + } + }, + "personalizedstream": { + "methods": { + "get": { + "description": "Returns a stream of personalized book clusters", + "httpMethod": "GET", + "id": "books.personalizedstream.get", + "parameters": { + "locale": { + "description": "ISO-639-1 language and ISO-3166-1 country code. Ex: 'en_US'. Used for generating recommendations.", + "location": "query", + "type": "string" + }, + "maxAllowedMaturityRating": { + "description": "The maximum allowed maturity rating of returned recommendations. Books with a higher maturity rating are filtered out.", + "enum": [ + "mature", + "not-mature" + ], + "enumDescriptions": [ + "Show books which are rated mature or lower.", + "Show books which are rated not mature." + ], + "location": "query", + "type": "string" + }, + "source": { + "description": "String to identify the originator of this request.", + "location": "query", + "type": "string" + } + }, + "path": "personalizedstream/get", + "response": { + "$ref": "Discoveryclusters" + }, + "scopes": [ + "https://www.googleapis.com/auth/books" + ] + } + } + }, + "promooffer": { + "methods": { + "accept": { + "description": "", + "httpMethod": "POST", + "id": "books.promooffer.accept", + "parameters": { + "androidId": { + "description": "device android_id", + "location": "query", + "type": "string" + }, + "device": { + "description": "device device", + "location": "query", + "type": "string" + }, + "manufacturer": { + "description": "device manufacturer", + "location": "query", + "type": "string" + }, + "model": { + "description": "device model", + "location": "query", + "type": "string" + }, + "offerId": { + "location": "query", + "type": "string" + }, + "product": { + "description": "device product", + "location": "query", + "type": "string" + }, + "serial": { + "description": "device serial", + "location": "query", + "type": "string" + }, + "volumeId": { + "description": "Volume id to exercise the offer", + "location": "query", + "type": "string" + } + }, + "path": "promooffer/accept", + "scopes": [ + "https://www.googleapis.com/auth/books" + ] + }, + "dismiss": { + "description": "", + "httpMethod": "POST", + "id": "books.promooffer.dismiss", + "parameters": { + "androidId": { + "description": "device android_id", + "location": "query", + "type": "string" + }, + "device": { + "description": "device device", + "location": "query", + "type": "string" + }, + "manufacturer": { + "description": "device manufacturer", + "location": "query", + "type": "string" + }, + "model": { + "description": "device model", + "location": "query", + "type": "string" + }, + "offerId": { + "description": "Offer to dimiss", + "location": "query", + "type": "string" + }, + "product": { + "description": "device product", + "location": "query", + "type": "string" + }, + "serial": { + "description": "device serial", + "location": "query", + "type": "string" + } + }, + "path": "promooffer/dismiss", + "scopes": [ + "https://www.googleapis.com/auth/books" + ] + }, + "get": { + "description": "Returns a list of promo offers available to the user", + "httpMethod": "GET", + "id": "books.promooffer.get", + "parameters": { + "androidId": { + "description": "device android_id", + "location": "query", + "type": "string" + }, + "device": { + "description": "device device", + "location": "query", + "type": "string" + }, + "manufacturer": { + "description": "device manufacturer", + "location": "query", + "type": "string" + }, + "model": { + "description": "device model", + "location": "query", + "type": "string" + }, + "product": { + "description": "device product", + "location": "query", + "type": "string" + }, + "serial": { + "description": "device serial", + "location": "query", + "type": "string" + } + }, + "path": "promooffer/get", + "response": { + "$ref": "Offers" + }, + "scopes": [ + "https://www.googleapis.com/auth/books" + ] + } + } + }, + "series": { + "methods": { + "get": { + "description": "Returns Series metadata for the given series ids.", + "httpMethod": "GET", + "id": "books.series.get", + "parameterOrder": [ + "series_id" + ], + "parameters": { + "series_id": { + "description": "String that identifies the series", + "location": "query", + "repeated": true, + "required": true, + "type": "string" + } + }, + "path": "series/get", + "response": { + "$ref": "Series" + }, + "scopes": [ + "https://www.googleapis.com/auth/books" + ] + } + }, + "resources": { + "membership": { + "methods": { + "get": { + "description": "Returns Series membership data given the series id.", + "httpMethod": "GET", + "id": "books.series.membership.get", + "parameterOrder": [ + "series_id" + ], + "parameters": { + "page_size": { + "description": "Number of maximum results per page to be included in the response.", + "format": "uint32", + "location": "query", + "type": "integer" + }, + "page_token": { + "description": "The value of the nextToken from the previous page.", + "location": "query", + "type": "string" + }, + "series_id": { + "description": "String that identifies the series", + "location": "query", + "required": true, + "type": "string" + } + }, + "path": "series/membership/get", + "response": { + "$ref": "Seriesmembership" + }, + "scopes": [ + "https://www.googleapis.com/auth/books" + ] + } + } + } + } + }, + "volumes": { + "methods": { + "get": { + "description": "Gets volume information for a single volume.", + "httpMethod": "GET", + "id": "books.volumes.get", + "parameterOrder": [ + "volumeId" + ], + "parameters": { + "country": { + "description": "ISO-3166-1 code to override the IP-based location.", + "location": "query", + "type": "string" + }, + "includeNonComicsSeries": { + "description": "Set to true to include non-comics series. Defaults to false.", + "location": "query", + "type": "boolean" + }, + "partner": { + "description": "Brand results for partner ID.", + "location": "query", + "type": "string" + }, + "projection": { + "description": "Restrict information returned to a set of selected fields.", + "enum": [ + "full", + "lite" + ], + "enumDescriptions": [ + "Includes all volume data.", + "Includes a subset of fields in volumeInfo and accessInfo." + ], + "location": "query", + "type": "string" + }, + "source": { + "description": "String to identify the originator of this request.", + "location": "query", + "type": "string" + }, + "user_library_consistent_read": { + "location": "query", + "type": "boolean" + }, + "volumeId": { + "description": "ID of volume to retrieve.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "volumes/{volumeId}", + "response": { + "$ref": "Volume" + }, + "scopes": [ + "https://www.googleapis.com/auth/books" + ] + }, + "list": { + "description": "Performs a book search.", + "httpMethod": "GET", + "id": "books.volumes.list", + "parameterOrder": [ + "q" + ], + "parameters": { + "download": { + "description": "Restrict to volumes by download availability.", + "enum": [ + "epub" + ], + "enumDescriptions": [ + "All volumes with epub." + ], + "location": "query", + "type": "string" + }, + "filter": { + "description": "Filter search results.", + "enum": [ + "ebooks", + "free-ebooks", + "full", + "paid-ebooks", + "partial" + ], + "enumDescriptions": [ + "All Google eBooks.", + "Google eBook with full volume text viewability.", + "Public can view entire volume text.", + "Google eBook with a price.", + "Public able to see parts of text." + ], + "location": "query", + "type": "string" + }, + "langRestrict": { + "description": "Restrict results to books with this language code.", + "location": "query", + "type": "string" + }, + "libraryRestrict": { + "description": "Restrict search to this user's library.", + "enum": [ + "my-library", + "no-restrict" + ], + "enumDescriptions": [ + "Restrict to the user's library, any shelf.", + "Do not restrict based on user's library." + ], + "location": "query", + "type": "string" + }, + "maxAllowedMaturityRating": { + "description": "The maximum allowed maturity rating of returned recommendations. Books with a higher maturity rating are filtered out.", + "enum": [ + "mature", + "not-mature" + ], + "enumDescriptions": [ + "Show books which are rated mature or lower.", + "Show books which are rated not mature." + ], + "location": "query", + "type": "string" + }, + "maxResults": { + "description": "Maximum number of results to return.", + "format": "uint32", + "location": "query", + "maximum": "40", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sort search results.", + "enum": [ + "newest", + "relevance" + ], + "enumDescriptions": [ + "Most recently published.", + "Relevance to search terms." + ], + "location": "query", + "type": "string" + }, + "partner": { + "description": "Restrict and brand results for partner ID.", + "location": "query", + "type": "string" + }, + "printType": { + "description": "Restrict to books or magazines.", + "enum": [ + "all", + "books", + "magazines" + ], + "enumDescriptions": [ + "All volume content types.", + "Just books.", + "Just magazines." + ], + "location": "query", + "type": "string" + }, + "projection": { + "description": "Restrict information returned to a set of selected fields.", + "enum": [ + "full", + "lite" + ], + "enumDescriptions": [ + "Includes all volume data.", + "Includes a subset of fields in volumeInfo and accessInfo." + ], + "location": "query", + "type": "string" + }, + "q": { + "description": "Full-text search query string.", + "location": "query", + "required": true, + "type": "string" + }, + "showPreorders": { + "description": "Set to true to show books available for preorder. Defaults to false.", + "location": "query", + "type": "boolean" + }, + "source": { + "description": "String to identify the originator of this request.", + "location": "query", + "type": "string" + }, + "startIndex": { + "description": "Index of the first result to return (starts at 0)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + } + }, + "path": "volumes", + "response": { + "$ref": "Volumes" + }, + "scopes": [ + "https://www.googleapis.com/auth/books" + ] + } + }, + "resources": { + "associated": { + "methods": { + "list": { + "description": "Return a list of associated books.", + "httpMethod": "GET", + "id": "books.volumes.associated.list", + "parameterOrder": [ + "volumeId" + ], + "parameters": { + "association": { + "description": "Association type.", + "enum": [ + "end-of-sample", + "end-of-volume", + "related-for-play" + ], + "enumDescriptions": [ + "Recommendations for display end-of-sample.", + "Recommendations for display end-of-volume.", + "Related volumes for Play Store." + ], + "location": "query", + "type": "string" + }, + "locale": { + "description": "ISO-639-1 language and ISO-3166-1 country code. Ex: 'en_US'. Used for generating recommendations.", + "location": "query", + "type": "string" + }, + "maxAllowedMaturityRating": { + "description": "The maximum allowed maturity rating of returned recommendations. Books with a higher maturity rating are filtered out.", + "enum": [ + "mature", + "not-mature" + ], + "enumDescriptions": [ + "Show books which are rated mature or lower.", + "Show books which are rated not mature." + ], + "location": "query", + "type": "string" + }, + "source": { + "description": "String to identify the originator of this request.", + "location": "query", + "type": "string" + }, + "volumeId": { + "description": "ID of the source volume.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "volumes/{volumeId}/associated", + "response": { + "$ref": "Volumes" + }, + "scopes": [ + "https://www.googleapis.com/auth/books" + ] + } + } + }, + "mybooks": { + "methods": { + "list": { + "description": "Return a list of books in My Library.", + "httpMethod": "GET", + "id": "books.volumes.mybooks.list", + "parameters": { + "acquireMethod": { + "description": "How the book was acquired", + "enum": [ + "FAMILY_SHARED", + "PREORDERED", + "PREVIOUSLY_RENTED", + "PUBLIC_DOMAIN", + "PURCHASED", + "RENTED", + "SAMPLE", + "UPLOADED" + ], + "enumDescriptions": [ + "Books acquired via Family Sharing", + "Preordered books (not yet available)", + "User-rented books past their expiration time", + "Public domain books", + "Purchased books", + "User-rented books", + "Sample books", + "User uploaded books" + ], + "location": "query", + "repeated": true, + "type": "string" + }, + "country": { + "description": "ISO-3166-1 code to override the IP-based location.", + "location": "query", + "type": "string" + }, + "locale": { + "description": "ISO-639-1 language and ISO-3166-1 country code. Ex:'en_US'. Used for generating recommendations.", + "location": "query", + "type": "string" + }, + "maxResults": { + "description": "Maximum number of results to return.", + "format": "uint32", + "location": "query", + "maximum": "100", + "minimum": "0", + "type": "integer" + }, + "processingState": { + "description": "The processing state of the user uploaded volumes to be returned. Applicable only if the UPLOADED is specified in the acquireMethod.", + "enum": [ + "COMPLETED_FAILED", + "COMPLETED_SUCCESS", + "RUNNING" + ], + "enumDescriptions": [ + "The volume processing hase failed.", + "The volume processing was completed.", + "The volume processing is not completed." + ], + "location": "query", + "repeated": true, + "type": "string" + }, + "source": { + "description": "String to identify the originator of this request.", + "location": "query", + "type": "string" + }, + "startIndex": { + "description": "Index of the first result to return (starts at 0)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + } + }, + "path": "volumes/mybooks", + "response": { + "$ref": "Volumes" + }, + "scopes": [ + "https://www.googleapis.com/auth/books" + ] + } + } + }, + "recommended": { + "methods": { + "list": { + "description": "Return a list of recommended books for the current user.", + "httpMethod": "GET", + "id": "books.volumes.recommended.list", + "parameters": { + "locale": { + "description": "ISO-639-1 language and ISO-3166-1 country code. Ex: 'en_US'. Used for generating recommendations.", + "location": "query", + "type": "string" + }, + "maxAllowedMaturityRating": { + "description": "The maximum allowed maturity rating of returned recommendations. Books with a higher maturity rating are filtered out.", + "enum": [ + "mature", + "not-mature" + ], + "enumDescriptions": [ + "Show books which are rated mature or lower.", + "Show books which are rated not mature." + ], + "location": "query", + "type": "string" + }, + "source": { + "description": "String to identify the originator of this request.", + "location": "query", + "type": "string" + } + }, + "path": "volumes/recommended", + "response": { + "$ref": "Volumes" + }, + "scopes": [ + "https://www.googleapis.com/auth/books" + ] + }, + "rate": { + "description": "Rate a recommended book for the current user.", + "httpMethod": "POST", + "id": "books.volumes.recommended.rate", + "parameterOrder": [ + "rating", + "volumeId" + ], + "parameters": { + "locale": { + "description": "ISO-639-1 language and ISO-3166-1 country code. Ex: 'en_US'. Used for generating recommendations.", + "location": "query", + "type": "string" + }, + "rating": { + "description": "Rating to be given to the volume.", + "enum": [ + "HAVE_IT", + "NOT_INTERESTED" + ], + "enumDescriptions": [ + "Rating indicating a dismissal due to ownership.", + "Rating indicating a negative dismissal of a volume." + ], + "location": "query", + "required": true, + "type": "string" + }, + "source": { + "description": "String to identify the originator of this request.", + "location": "query", + "type": "string" + }, + "volumeId": { + "description": "ID of the source volume.", + "location": "query", + "required": true, + "type": "string" + } + }, + "path": "volumes/recommended/rate", + "response": { + "$ref": "BooksVolumesRecommendedRateResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/books" + ] + } + } + }, + "useruploaded": { + "methods": { + "list": { + "description": "Return a list of books uploaded by the current user.", + "httpMethod": "GET", + "id": "books.volumes.useruploaded.list", + "parameters": { + "locale": { + "description": "ISO-639-1 language and ISO-3166-1 country code. Ex: 'en_US'. Used for generating recommendations.", + "location": "query", + "type": "string" + }, + "maxResults": { + "description": "Maximum number of results to return.", + "format": "uint32", + "location": "query", + "maximum": "40", + "minimum": "0", + "type": "integer" + }, + "processingState": { + "description": "The processing state of the user uploaded volumes to be returned.", + "enum": [ + "COMPLETED_FAILED", + "COMPLETED_SUCCESS", + "RUNNING" + ], + "enumDescriptions": [ + "The volume processing hase failed.", + "The volume processing was completed.", + "The volume processing is not completed." + ], + "location": "query", + "repeated": true, + "type": "string" + }, + "source": { + "description": "String to identify the originator of this request.", + "location": "query", + "type": "string" + }, + "startIndex": { + "description": "Index of the first result to return (starts at 0)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "volumeId": { + "description": "The ids of the volumes to be returned. If not specified all that match the processingState are returned.", + "location": "query", + "repeated": true, + "type": "string" + } + }, + "path": "volumes/useruploaded", + "response": { + "$ref": "Volumes" + }, + "scopes": [ + "https://www.googleapis.com/auth/books" + ] + } + } } - } - }, - "moreFromAuthors": { - "type": "object", - "properties": { - "opted_state": { - "type": "string" - } - } - }, - "moreFromSeries": { - "type": "object", - "properties": { - "opted_state": { - "type": "string" - } - } - }, - "priceDrop": { - "type": "object", - "properties": { - "opted_state": { - "type": "string" - } - } - }, - "rewardExpirations": { - "type": "object", - "properties": { - "opted_state": { - "type": "string" - } - } } - } } - } }, - "Volume": { - "id": "Volume", - "type": "object", - "properties": { - "accessInfo": { - "type": "object", - "description": "Any information about a volume related to reading or obtaining that volume text. This information can depend on country (books may be public domain in one country but not in another, e.g.).", - "properties": { - "accessViewStatus": { - "type": "string", - "description": "Combines the access and viewability of this volume into a single status field for this user. Values can be FULL_PURCHASED, FULL_PUBLIC_DOMAIN, SAMPLE or NONE. (In LITE projection.)" - }, - "country": { - "type": "string", - "description": "The two-letter ISO_3166-1 country code for which this access information is valid. (In LITE projection.)" - }, - "downloadAccess": { - "$ref": "DownloadAccessRestriction", - "description": "Information about a volume's download license access restrictions." - }, - "driveImportedContentLink": { - "type": "string", - "description": "URL to the Google Drive viewer if this volume is uploaded by the user by selecting the file from Google Drive." - }, - "embeddable": { - "type": "boolean", - "description": "Whether this volume can be embedded in a viewport using the Embedded Viewer API." - }, - "epub": { - "type": "object", - "description": "Information about epub content. (In LITE projection.)", - "properties": { - "acsTokenLink": { - "type": "string", - "description": "URL to retrieve ACS token for epub download. (In LITE projection.)" + "revision": "20171127", + "rootUrl": "https://www.googleapis.com/", + "schemas": { + "Annotation": { + "id": "Annotation", + "properties": { + "afterSelectedText": { + "description": "Anchor text after excerpt. For requests, if the user bookmarked a screen that has no flowing text on it, then this field should be empty.", + "type": "string" }, - "downloadLink": { - "type": "string", - "description": "URL to download epub. (In LITE projection.)" + "beforeSelectedText": { + "description": "Anchor text before excerpt. For requests, if the user bookmarked a screen that has no flowing text on it, then this field should be empty.", + "type": "string" }, - "isAvailable": { - "type": "boolean", - "description": "Is a flowing text epub available either as public domain or for purchase. (In LITE projection.)" - } - } - }, - "explicitOfflineLicenseManagement": { - "type": "boolean", - "description": "Whether this volume requires that the client explicitly request offline download license rather than have it done automatically when loading the content, if the client supports it." - }, - "pdf": { - "type": "object", - "description": "Information about pdf content. (In LITE projection.)", - "properties": { - "acsTokenLink": { - "type": "string", - "description": "URL to retrieve ACS token for pdf download. (In LITE projection.)" - }, - "downloadLink": { - "type": "string", - "description": "URL to download pdf. (In LITE projection.)" - }, - "isAvailable": { - "type": "boolean", - "description": "Is a scanned image pdf available either as public domain or for purchase. (In LITE projection.)" - } - } - }, - "publicDomain": { - "type": "boolean", - "description": "Whether or not this book is public domain in the country listed above." - }, - "quoteSharingAllowed": { - "type": "boolean", - "description": "Whether quote sharing is allowed for this volume." - }, - "textToSpeechPermission": { - "type": "string", - "description": "Whether text-to-speech is permitted for this volume. Values can be ALLOWED, ALLOWED_FOR_ACCESSIBILITY, or NOT_ALLOWED." - }, - "viewOrderUrl": { - "type": "string", - "description": "For ordered but not yet processed orders, we give a URL that can be used to go to the appropriate Google Wallet page." - }, - "viewability": { - "type": "string", - "description": "The read access of a volume. Possible values are PARTIAL, ALL_PAGES, NO_PAGES or UNKNOWN. This value depends on the country listed above. A value of PARTIAL means that the publisher has allowed some portion of the volume to be viewed publicly, without purchase. This can apply to eBooks as well as non-eBooks. Public domain books will always have a value of ALL_PAGES." - }, - "webReaderLink": { - "type": "string", - "description": "URL to read this volume on the Google Books site. Link will not allow users to read non-viewable volumes." - } - } - }, - "etag": { - "type": "string", - "description": "Opaque identifier for a specific version of a volume resource. (In LITE projection)" - }, - "id": { - "type": "string", - "description": "Unique identifier for a volume. (In LITE projection.)" - }, - "kind": { - "type": "string", - "description": "Resource type for a volume. (In LITE projection.)", - "default": "books#volume" - }, - "layerInfo": { - "type": "object", - "description": "What layers exist in this volume and high level information about them.", - "properties": { - "layers": { - "type": "array", - "description": "A layer should appear here if and only if the layer exists for this book.", - "items": { - "type": "object", - "properties": { - "layerId": { - "type": "string", - "description": "The layer id of this layer (e.g. \"geo\")." - }, - "volumeAnnotationsVersion": { - "type": "string", - "description": "The current version of this layer's volume annotations. Note that this version applies only to the data in the books.layers.volumeAnnotations.* responses. The actual annotation data is versioned separately." - } - } - } - } - } - }, - "recommendedInfo": { - "type": "object", - "description": "Recommendation related information for this volume.", - "properties": { - "explanation": { - "type": "string", - "description": "A text explaining why this volume is recommended." - } - } - }, - "saleInfo": { - "type": "object", - "description": "Any information about a volume related to the eBookstore and/or purchaseability. This information can depend on the country where the request originates from (i.e. books may not be for sale in certain countries).", - "properties": { - "buyLink": { - "type": "string", - "description": "URL to purchase this volume on the Google Books site. (In LITE projection)" - }, - "country": { - "type": "string", - "description": "The two-letter ISO_3166-1 country code for which this sale information is valid. (In LITE projection.)" - }, - "isEbook": { - "type": "boolean", - "description": "Whether or not this volume is an eBook (can be added to the My eBooks shelf)." - }, - "listPrice": { - "type": "object", - "description": "Suggested retail price. (In LITE projection.)", - "properties": { - "amount": { - "type": "number", - "description": "Amount in the currency listed below. (In LITE projection.)", - "format": "double" - }, - "currencyCode": { - "type": "string", - "description": "An ISO 4217, three-letter currency code. (In LITE projection.)" - } - } - }, - "offers": { - "type": "array", - "description": "Offers available for this volume (sales and rentals).", - "items": { - "type": "object", - "properties": { - "finskyOfferType": { - "type": "integer", - "description": "The finsky offer type (e.g., PURCHASE=0 RENTAL=3)", - "format": "int32" - }, - "giftable": { - "type": "boolean", - "description": "Indicates whether the offer is giftable." - }, - "listPrice": { - "type": "object", - "description": "Offer list (=undiscounted) price in Micros.", + "clientVersionRanges": { + "description": "Selection ranges sent from the client.", "properties": { - "amountInMicros": { - "type": "number", - "format": "double" - }, - "currencyCode": { - "type": "string" - } - } - }, - "rentalDuration": { - "type": "object", - "description": "The rental duration (for rental offers only).", + "cfiRange": { + "$ref": "BooksAnnotationsRange", + "description": "Range in CFI format for this annotation sent by client." + }, + "contentVersion": { + "description": "Content version the client sent in.", + "type": "string" + }, + "gbImageRange": { + "$ref": "BooksAnnotationsRange", + "description": "Range in GB image format for this annotation sent by client." + }, + "gbTextRange": { + "$ref": "BooksAnnotationsRange", + "description": "Range in GB text format for this annotation sent by client." + }, + "imageCfiRange": { + "$ref": "BooksAnnotationsRange", + "description": "Range in image CFI format for this annotation sent by client." + } + }, + "type": "object" + }, + "created": { + "description": "Timestamp for the created time of this annotation.", + "format": "date-time", + "type": "string" + }, + "currentVersionRanges": { + "description": "Selection ranges for the most recent content version.", "properties": { - "count": { - "type": "number", - "format": "double" - }, - "unit": { - "type": "string" - } - } - }, - "retailPrice": { - "type": "object", - "description": "Offer retail (=discounted) price in Micros", + "cfiRange": { + "$ref": "BooksAnnotationsRange", + "description": "Range in CFI format for this annotation for version above." + }, + "contentVersion": { + "description": "Content version applicable to ranges below.", + "type": "string" + }, + "gbImageRange": { + "$ref": "BooksAnnotationsRange", + "description": "Range in GB image format for this annotation for version above." + }, + "gbTextRange": { + "$ref": "BooksAnnotationsRange", + "description": "Range in GB text format for this annotation for version above." + }, + "imageCfiRange": { + "$ref": "BooksAnnotationsRange", + "description": "Range in image CFI format for this annotation for version above." + } + }, + "type": "object" + }, + "data": { + "description": "User-created data for this annotation.", + "type": "string" + }, + "deleted": { + "description": "Indicates that this annotation is deleted.", + "type": "boolean" + }, + "highlightStyle": { + "description": "The highlight style for this annotation.", + "type": "string" + }, + "id": { + "description": "Id of this annotation, in the form of a GUID.", + "type": "string" + }, + "kind": { + "default": "books#annotation", + "description": "Resource type.", + "type": "string" + }, + "layerId": { + "description": "The layer this annotation is for.", + "type": "string" + }, + "layerSummary": { "properties": { - "amountInMicros": { - "type": "number", - "format": "double" - }, - "currencyCode": { + "allowedCharacterCount": { + "description": "Maximum allowed characters on this layer, especially for the \"copy\" layer.", + "format": "int32", + "type": "integer" + }, + "limitType": { + "description": "Type of limitation on this layer. \"limited\" or \"unlimited\" for the \"copy\" layer.", + "type": "string" + }, + "remainingCharacterCount": { + "description": "Remaining allowed characters on this layer, especially for the \"copy\" layer.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "pageIds": { + "description": "Pages that this annotation spans.", + "items": { "type": "string" - } - } - } - } - } - }, - "onSaleDate": { - "type": "string", - "description": "The date on which this book is available for sale.", - "format": "date-time" - }, - "retailPrice": { - "type": "object", - "description": "The actual selling price of the book. This is the same as the suggested retail or list price unless there are offers or discounts on this volume. (In LITE projection.)", - "properties": { - "amount": { - "type": "number", - "description": "Amount in the currency listed below. (In LITE projection.)", - "format": "double" + }, + "type": "array" }, - "currencyCode": { - "type": "string", - "description": "An ISO 4217, three-letter currency code. (In LITE projection.)" - } - } - }, - "saleability": { - "type": "string", - "description": "Whether or not this book is available for sale or offered for free in the Google eBookstore for the country listed above. Possible values are FOR_SALE, FOR_RENTAL_ONLY, FOR_SALE_AND_RENTAL, FREE, NOT_FOR_SALE, or FOR_PREORDER." - } - } - }, - "searchInfo": { - "type": "object", - "description": "Search result information related to this volume.", - "properties": { - "textSnippet": { - "type": "string", - "description": "A text snippet containing the search query." - } - } - }, - "selfLink": { - "type": "string", - "description": "URL to this resource. (In LITE projection.)" - }, - "userInfo": { - "type": "object", - "description": "User specific information related to this volume. (e.g. page this user last read or whether they purchased this book)", - "properties": { - "acquiredTime": { - "type": "string", - "description": "Timestamp when this volume was acquired by the user. (RFC 3339 UTC date-time format) Acquiring includes purchase, user upload, receiving family sharing, etc.", - "format": "date-time" - }, - "acquisitionType": { - "type": "integer", - "description": "How this volume was acquired.", - "format": "int32" - }, - "copy": { - "type": "object", - "description": "Copy/Paste accounting information.", - "properties": { - "allowedCharacterCount": { - "type": "integer", - "format": "int32" + "selectedText": { + "description": "Excerpt from the volume.", + "type": "string" }, - "limitType": { - "type": "string" - }, - "remainingCharacterCount": { - "type": "integer", - "format": "int32" + "selfLink": { + "description": "URL to this resource.", + "type": "string" }, "updated": { - "type": "string", - "format": "date-time" + "description": "Timestamp for the last time this annotation was modified.", + "format": "date-time", + "type": "string" + }, + "volumeId": { + "description": "The volume that this annotation belongs to.", + "type": "string" } - } }, - "entitlementType": { - "type": "integer", - "description": "Whether this volume is purchased, sample, pd download etc.", - "format": "int32" - }, - "familySharing": { - "type": "object", - "description": "Information on the ability to share with the family.", - "properties": { - "familyRole": { - "type": "string", - "description": "The role of the user in the family." - }, - "isSharingAllowed": { - "type": "boolean", - "description": "Whether or not this volume can be shared with the family by the user. This includes sharing eligibility of both the volume and the user. If the value is true, the user can initiate a family sharing action." - }, - "isSharingDisabledByFop": { - "type": "boolean", - "description": "Whether or not sharing this volume is temporarily disabled due to issues with the Family Wallet." - } - } - }, - "isFamilySharedFromUser": { - "type": "boolean", - "description": "Whether or not the user shared this volume with the family." - }, - "isFamilySharedToUser": { - "type": "boolean", - "description": "Whether or not the user received this volume through family sharing." - }, - "isFamilySharingAllowed": { - "type": "boolean", - "description": "Deprecated: Replaced by familySharing." - }, - "isFamilySharingDisabledByFop": { - "type": "boolean", - "description": "Deprecated: Replaced by familySharing." - }, - "isInMyBooks": { - "type": "boolean", - "description": "Whether or not this volume is currently in \"my books.\"" - }, - "isPreordered": { - "type": "boolean", - "description": "Whether or not this volume was pre-ordered by the authenticated user making the request. (In LITE projection.)" - }, - "isPurchased": { - "type": "boolean", - "description": "Whether or not this volume was purchased by the authenticated user making the request. (In LITE projection.)" - }, - "isUploaded": { - "type": "boolean", - "description": "Whether or not this volume was user uploaded." - }, - "readingPosition": { - "$ref": "ReadingPosition", - "description": "The user's current reading position in the volume, if one is available. (In LITE projection.)" - }, - "rentalPeriod": { - "type": "object", - "description": "Period during this book is/was a valid rental.", - "properties": { - "endUtcSec": { - "type": "string", - "format": "int64" - }, - "startUtcSec": { - "type": "string", - "format": "int64" - } - } - }, - "rentalState": { - "type": "string", - "description": "Whether this book is an active or an expired rental." - }, - "review": { - "$ref": "Review", - "description": "This user's review of this volume, if one exists." - }, - "updated": { - "type": "string", - "description": "Timestamp when this volume was last modified by a user action, such as a reading position update, volume purchase or writing a review. (RFC 3339 UTC date-time format).", - "format": "date-time" - }, - "userUploadedVolumeInfo": { - "type": "object", - "properties": { - "processingState": { - "type": "string" - } - } - } - } + "type": "object" }, - "volumeInfo": { - "type": "object", - "description": "General volume information.", - "properties": { - "allowAnonLogging": { - "type": "boolean", - "description": "Whether anonymous logging should be allowed." - }, - "authors": { - "type": "array", - "description": "The names of the authors and/or editors for this volume. (In LITE projection)", - "items": { - "type": "string" - } - }, - "averageRating": { - "type": "number", - "description": "The mean review rating for this volume. (min = 1.0, max = 5.0)", - "format": "double" - }, - "canonicalVolumeLink": { - "type": "string", - "description": "Canonical URL for a volume. (In LITE projection.)" - }, - "categories": { - "type": "array", - "description": "A list of subject categories, such as \"Fiction\", \"Suspense\", etc.", - "items": { - "type": "string" - } - }, - "contentVersion": { - "type": "string", - "description": "An identifier for the version of the volume content (text & images). (In LITE projection)" - }, - "description": { - "type": "string", - "description": "A synopsis of the volume. The text of the description is formatted in HTML and includes simple formatting elements, such as b, i, and br tags. (In LITE projection.)" - }, - "dimensions": { - "type": "object", - "description": "Physical dimensions of this volume.", - "properties": { - "height": { - "type": "string", - "description": "Height or length of this volume (in cm)." - }, - "thickness": { - "type": "string", - "description": "Thickness of this volume (in cm)." - }, - "width": { - "type": "string", - "description": "Width of this volume (in cm)." - } - } - }, - "imageLinks": { - "type": "object", - "description": "A list of image links for all the sizes that are available. (In LITE projection.)", - "properties": { - "extraLarge": { - "type": "string", - "description": "Image link for extra large size (width of ~1280 pixels). (In LITE projection)" - }, - "large": { - "type": "string", - "description": "Image link for large size (width of ~800 pixels). (In LITE projection)" - }, - "medium": { - "type": "string", - "description": "Image link for medium size (width of ~575 pixels). (In LITE projection)" - }, - "small": { - "type": "string", - "description": "Image link for small size (width of ~300 pixels). (In LITE projection)" - }, - "smallThumbnail": { - "type": "string", - "description": "Image link for small thumbnail size (width of ~80 pixels). (In LITE projection)" - }, - "thumbnail": { - "type": "string", - "description": "Image link for thumbnail size (width of ~128 pixels). (In LITE projection)" - } - } - }, - "industryIdentifiers": { - "type": "array", - "description": "Industry standard identifiers for this volume.", - "items": { - "type": "object", - "properties": { - "identifier": { - "type": "string", - "description": "Industry specific volume identifier." - }, - "type": { - "type": "string", - "description": "Identifier type. Possible values are ISBN_10, ISBN_13, ISSN and OTHER." - } - } - } - }, - "infoLink": { - "type": "string", - "description": "URL to view information about this volume on the Google Books site. (In LITE projection)" - }, - "language": { - "type": "string", - "description": "Best language for this volume (based on content). It is the two-letter ISO 639-1 code such as 'fr', 'en', etc." - }, - "mainCategory": { - "type": "string", - "description": "The main category to which this volume belongs. It will be the category from the categories list returned below that has the highest weight." - }, - "maturityRating": { - "type": "string" - }, - "pageCount": { - "type": "integer", - "description": "Total number of pages as per publisher metadata.", - "format": "int32" - }, - "panelizationSummary": { - "type": "object", - "description": "A top-level summary of the panelization info in this volume.", - "properties": { - "containsEpubBubbles": { - "type": "boolean" - }, - "containsImageBubbles": { - "type": "boolean" - }, - "epubBubbleVersion": { - "type": "string" - }, - "imageBubbleVersion": { - "type": "string" - } - } - }, - "previewLink": { - "type": "string", - "description": "URL to preview this volume on the Google Books site." - }, - "printType": { - "type": "string", - "description": "Type of publication of this volume. Possible values are BOOK or MAGAZINE." - }, - "printedPageCount": { - "type": "integer", - "description": "Total number of printed pages in generated pdf representation.", - "format": "int32" - }, - "publishedDate": { - "type": "string", - "description": "Date of publication. (In LITE projection.)" - }, - "publisher": { - "type": "string", - "description": "Publisher of this volume. (In LITE projection.)" - }, - "ratingsCount": { - "type": "integer", - "description": "The number of review ratings for this volume.", - "format": "int32" - }, - "readingModes": { - "type": "any", - "description": "The reading modes available for this volume." - }, - "samplePageCount": { - "type": "integer", - "description": "Total number of sample pages as per publisher metadata.", - "format": "int32" - }, - "seriesInfo": { - "$ref": "Volumeseriesinfo" - }, - "subtitle": { - "type": "string", - "description": "Volume subtitle. (In LITE projection.)" - }, - "title": { - "type": "string", - "description": "Volume title. (In LITE projection.)" - } - } - } - } - }, - "Volume2": { - "id": "Volume2", - "type": "object", - "properties": { - "items": { - "type": "array", - "description": "A list of volumes.", - "items": { - "$ref": "Volume" - } - }, - "kind": { - "type": "string", - "description": "Resource type.", - "default": "onboarding#volume" - }, - "nextPageToken": { - "type": "string" - } - } - }, - "Volumeannotation": { - "id": "Volumeannotation", - "type": "object", - "properties": { - "annotationDataId": { - "type": "string", - "description": "The annotation data id for this volume annotation." - }, - "annotationDataLink": { - "type": "string", - "description": "Link to get data for this annotation." - }, - "annotationType": { - "type": "string", - "description": "The type of annotation this is." - }, - "contentRanges": { - "type": "object", - "description": "The content ranges to identify the selected text.", - "properties": { - "cfiRange": { - "$ref": "BooksAnnotationsRange", - "description": "Range in CFI format for this annotation for version above." - }, - "contentVersion": { - "type": "string", - "description": "Content version applicable to ranges below." - }, - "gbImageRange": { - "$ref": "BooksAnnotationsRange", - "description": "Range in GB image format for this annotation for version above." - }, - "gbTextRange": { - "$ref": "BooksAnnotationsRange", - "description": "Range in GB text format for this annotation for version above." - } - } - }, - "data": { - "type": "string", - "description": "Data for this annotation." - }, - "deleted": { - "type": "boolean", - "description": "Indicates that this annotation is deleted." - }, - "id": { - "type": "string", - "description": "Unique id of this volume annotation." - }, - "kind": { - "type": "string", - "description": "Resource Type", - "default": "books#volumeannotation" - }, - "layerId": { - "type": "string", - "description": "The Layer this annotation is for." - }, - "pageIds": { - "type": "array", - "description": "Pages the annotation spans.", - "items": { - "type": "string" - } - }, - "selectedText": { - "type": "string", - "description": "Excerpt from the volume." - }, - "selfLink": { - "type": "string", - "description": "URL to this resource." - }, - "updated": { - "type": "string", - "description": "Timestamp for the last time this anntoation was updated. (RFC 3339 UTC date-time format).", - "format": "date-time" - }, - "volumeId": { - "type": "string", - "description": "The Volume this annotation is for." - } - } - }, - "Volumeannotations": { - "id": "Volumeannotations", - "type": "object", - "properties": { - "items": { - "type": "array", - "description": "A list of volume annotations.", - "items": { - "$ref": "Volumeannotation" - } - }, - "kind": { - "type": "string", - "description": "Resource type", - "default": "books#volumeannotations" - }, - "nextPageToken": { - "type": "string", - "description": "Token to pass in for pagination for the next page. This will not be present if this request does not have more results." - }, - "totalItems": { - "type": "integer", - "description": "The total number of volume annotations found.", - "format": "int32" - }, - "version": { - "type": "string", - "description": "The version string for all of the volume annotations in this layer (not just the ones in this response). Note: the version string doesn't apply to the annotation data, just the information in this response (e.g. the location of annotations in the book)." - } - } - }, - "Volumes": { - "id": "Volumes", - "type": "object", - "properties": { - "items": { - "type": "array", - "description": "A list of volumes.", - "items": { - "$ref": "Volume" - } - }, - "kind": { - "type": "string", - "description": "Resource type.", - "default": "books#volumes" - }, - "totalItems": { - "type": "integer", - "description": "Total number of volumes found. This might be greater than the number of volumes returned in this response if results have been paginated.", - "format": "int32" - } - } - }, - "Volumeseriesinfo": { - "id": "Volumeseriesinfo", - "type": "object", - "properties": { - "bookDisplayNumber": { - "type": "string", - "description": "The display number string. This should be used only for display purposes and the actual sequence should be inferred from the below orderNumber." - }, - "kind": { - "type": "string", - "description": "Resource type.", - "default": "books#volume_series_info" - }, - "shortSeriesBookTitle": { - "type": "string", - "description": "Short book title in the context of the series." - }, - "volumeSeries": { - "type": "array", - "items": { - "type": "object", + "Annotationdata": { + "id": "Annotationdata", + "properties": { + "annotationType": { + "description": "The type of annotation this data is for.", + "type": "string" + }, + "data": { + "type": "any" + }, + "encoded_data": { + "description": "Base64 encoded data for this annotation data.", + "format": "byte", + "type": "string" + }, + "id": { + "description": "Unique id for this annotation data.", + "type": "string" + }, + "kind": { + "default": "books#annotationdata", + "description": "Resource Type", + "type": "string" + }, + "layerId": { + "description": "The Layer id for this data. *", + "type": "string" + }, + "selfLink": { + "description": "URL for this resource. *", + "type": "string" + }, + "updated": { + "description": "Timestamp for the last time this data was updated. (RFC 3339 UTC date-time format).", + "format": "date-time", + "type": "string" + }, + "volumeId": { + "description": "The volume id for this data. *", + "type": "string" + } + }, + "type": "object" + }, + "Annotations": { + "id": "Annotations", "properties": { - "issue": { - "type": "array", - "description": "List of issues. Applicable only for Collection Edition and Omnibus.", "items": { - "type": "object", - "properties": { - "issueDisplayNumber": { - "type": "string" + "description": "A list of annotations.", + "items": { + "$ref": "Annotation" }, - "issueOrderNumber": { - "type": "integer", - "format": "int32" - } - } + "type": "array" + }, + "kind": { + "default": "books#annotations", + "description": "Resource type.", + "type": "string" + }, + "nextPageToken": { + "description": "Token to pass in for pagination for the next page. This will not be present if this request does not have more results.", + "type": "string" + }, + "totalItems": { + "description": "Total number of annotations found. This may be greater than the number of notes returned in this response if results have been paginated.", + "format": "int32", + "type": "integer" } - }, - "orderNumber": { - "type": "integer", - "description": "The book order number in the series.", - "format": "int32" - }, - "seriesBookType": { - "type": "string", - "description": "The book type in the context of series. Examples - Single Issue, Collection Edition, etc." - }, - "seriesId": { - "type": "string", - "description": "The series id." - } - } - } - } - } - } - }, - "resources": { - "bookshelves": { - "methods": { - "get": { - "id": "books.bookshelves.get", - "path": "users/{userId}/bookshelves/{shelf}", - "httpMethod": "GET", - "description": "Retrieves metadata for a specific bookshelf for the specified user.", - "parameters": { - "shelf": { - "type": "string", - "description": "ID of bookshelf to retrieve.", - "required": true, - "location": "path" }, - "source": { - "type": "string", - "description": "String to identify the originator of this request.", - "location": "query" - }, - "userId": { - "type": "string", - "description": "ID of user for whom to retrieve bookshelves.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "userId", - "shelf" - ], - "response": { - "$ref": "Bookshelf" - }, - "scopes": [ - "https://www.googleapis.com/auth/books" - ] + "type": "object" }, - "list": { - "id": "books.bookshelves.list", - "path": "users/{userId}/bookshelves", - "httpMethod": "GET", - "description": "Retrieves a list of public bookshelves for the specified user.", - "parameters": { - "source": { - "type": "string", - "description": "String to identify the originator of this request.", - "location": "query" - }, - "userId": { - "type": "string", - "description": "ID of user for whom to retrieve bookshelves.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "userId" - ], - "response": { - "$ref": "Bookshelves" - }, - "scopes": [ - "https://www.googleapis.com/auth/books" - ] - } - }, - "resources": { - "volumes": { - "methods": { - "list": { - "id": "books.bookshelves.volumes.list", - "path": "users/{userId}/bookshelves/{shelf}/volumes", - "httpMethod": "GET", - "description": "Retrieves volumes in a specific bookshelf for the specified user.", - "parameters": { - "maxResults": { - "type": "integer", - "description": "Maximum number of results to return", - "format": "uint32", - "minimum": "0", - "location": "query" + "AnnotationsSummary": { + "id": "AnnotationsSummary", + "properties": { + "kind": { + "default": "books#annotationsSummary", + "type": "string" }, - "shelf": { - "type": "string", - "description": "ID of bookshelf to retrieve volumes.", - "required": true, - "location": "path" - }, - "showPreorders": { - "type": "boolean", - "description": "Set to true to show pre-ordered books. Defaults to false.", - "location": "query" - }, - "source": { - "type": "string", - "description": "String to identify the originator of this request.", - "location": "query" - }, - "startIndex": { - "type": "integer", - "description": "Index of the first element to return (starts at 0)", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "userId": { - "type": "string", - "description": "ID of user for whom to retrieve bookshelf volumes.", - "required": true, - "location": "path" + "layers": { + "items": { + "properties": { + "allowedCharacterCount": { + "format": "int32", + "type": "integer" + }, + "layerId": { + "type": "string" + }, + "limitType": { + "type": "string" + }, + "remainingCharacterCount": { + "format": "int32", + "type": "integer" + }, + "updated": { + "format": "date-time", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" } - }, - "parameterOrder": [ - "userId", - "shelf" - ], - "response": { - "$ref": "Volumes" - }, - "scopes": [ - "https://www.googleapis.com/auth/books" - ] - } - } - } - } - }, - "cloudloading": { - "methods": { - "addBook": { - "id": "books.cloudloading.addBook", - "path": "cloudloading/addBook", - "httpMethod": "POST", - "description": "", - "parameters": { - "drive_document_id": { - "type": "string", - "description": "A drive document id. The upload_client_token must not be set.", - "location": "query" }, - "mime_type": { - "type": "string", - "description": "The document MIME type. It can be set only if the drive_document_id is set.", - "location": "query" - }, - "name": { - "type": "string", - "description": "The document name. It can be set only if the drive_document_id is set.", - "location": "query" - }, - "upload_client_token": { - "type": "string", - "location": "query" - } - }, - "response": { - "$ref": "BooksCloudloadingResource" - }, - "scopes": [ - "https://www.googleapis.com/auth/books" - ] + "type": "object" }, - "deleteBook": { - "id": "books.cloudloading.deleteBook", - "path": "cloudloading/deleteBook", - "httpMethod": "POST", - "description": "Remove the book and its contents", - "parameters": { - "volumeId": { - "type": "string", - "description": "The id of the book to be removed.", - "required": true, - "location": "query" - } - }, - "parameterOrder": [ - "volumeId" - ], - "scopes": [ - "https://www.googleapis.com/auth/books" - ] - }, - "updateBook": { - "id": "books.cloudloading.updateBook", - "path": "cloudloading/updateBook", - "httpMethod": "POST", - "description": "", - "request": { - "$ref": "BooksCloudloadingResource" - }, - "response": { - "$ref": "BooksCloudloadingResource" - }, - "scopes": [ - "https://www.googleapis.com/auth/books" - ] - } - } - }, - "dictionary": { - "methods": { - "listOfflineMetadata": { - "id": "books.dictionary.listOfflineMetadata", - "path": "dictionary/listOfflineMetadata", - "httpMethod": "GET", - "description": "Returns a list of offline dictionary metadata available", - "parameters": { - "cpksver": { - "type": "string", - "description": "The device/version ID from which to request the data.", - "required": true, - "location": "query" - } - }, - "parameterOrder": [ - "cpksver" - ], - "response": { - "$ref": "Metadata" - }, - "scopes": [ - "https://www.googleapis.com/auth/books" - ] - } - } - }, - "familysharing": { - "methods": { - "getFamilyInfo": { - "id": "books.familysharing.getFamilyInfo", - "path": "familysharing/getFamilyInfo", - "httpMethod": "GET", - "description": "Gets information regarding the family that the user is part of.", - "parameters": { - "source": { - "type": "string", - "description": "String to identify the originator of this request.", - "location": "query" - } - }, - "response": { - "$ref": "FamilyInfo" - }, - "scopes": [ - "https://www.googleapis.com/auth/books" - ] - }, - "share": { - "id": "books.familysharing.share", - "path": "familysharing/share", - "httpMethod": "POST", - "description": "Initiates sharing of the content with the user's family. Empty response indicates success.", - "parameters": { - "docId": { - "type": "string", - "description": "The docid to share.", - "location": "query" - }, - "source": { - "type": "string", - "description": "String to identify the originator of this request.", - "location": "query" - }, - "volumeId": { - "type": "string", - "description": "The volume to share.", - "location": "query" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/books" - ] - }, - "unshare": { - "id": "books.familysharing.unshare", - "path": "familysharing/unshare", - "httpMethod": "POST", - "description": "Initiates revoking content that has already been shared with the user's family. Empty response indicates success.", - "parameters": { - "docId": { - "type": "string", - "description": "The docid to unshare.", - "location": "query" - }, - "source": { - "type": "string", - "description": "String to identify the originator of this request.", - "location": "query" - }, - "volumeId": { - "type": "string", - "description": "The volume to unshare.", - "location": "query" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/books" - ] - } - } - }, - "layers": { - "methods": { - "get": { - "id": "books.layers.get", - "path": "volumes/{volumeId}/layersummary/{summaryId}", - "httpMethod": "GET", - "description": "Gets the layer summary for a volume.", - "parameters": { - "contentVersion": { - "type": "string", - "description": "The content version for the requested volume.", - "location": "query" - }, - "source": { - "type": "string", - "description": "String to identify the originator of this request.", - "location": "query" - }, - "summaryId": { - "type": "string", - "description": "The ID for the layer to get the summary for.", - "required": true, - "location": "path" - }, - "volumeId": { - "type": "string", - "description": "The volume to retrieve layers for.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "volumeId", - "summaryId" - ], - "response": { - "$ref": "Layersummary" - }, - "scopes": [ - "https://www.googleapis.com/auth/books" - ] - }, - "list": { - "id": "books.layers.list", - "path": "volumes/{volumeId}/layersummary", - "httpMethod": "GET", - "description": "List the layer summaries for a volume.", - "parameters": { - "contentVersion": { - "type": "string", - "description": "The content version for the requested volume.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "Maximum number of results to return", - "format": "uint32", - "minimum": "0", - "maximum": "200", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "The value of the nextToken from the previous page.", - "location": "query" - }, - "source": { - "type": "string", - "description": "String to identify the originator of this request.", - "location": "query" - }, - "volumeId": { - "type": "string", - "description": "The volume to retrieve layers for.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "volumeId" - ], - "response": { - "$ref": "Layersummaries" - }, - "scopes": [ - "https://www.googleapis.com/auth/books" - ] - } - }, - "resources": { - "annotationData": { - "methods": { - "get": { - "id": "books.layers.annotationData.get", - "path": "volumes/{volumeId}/layers/{layerId}/data/{annotationDataId}", - "httpMethod": "GET", - "description": "Gets the annotation data.", - "parameters": { - "allowWebDefinitions": { - "type": "boolean", - "description": "For the dictionary layer. Whether or not to allow web definitions.", - "location": "query" + "Annotationsdata": { + "id": "Annotationsdata", + "properties": { + "items": { + "description": "A list of Annotation Data.", + "items": { + "$ref": "Annotationdata" + }, + "type": "array" }, - "annotationDataId": { - "type": "string", - "description": "The ID of the annotation data to retrieve.", - "required": true, - "location": "path" + "kind": { + "default": "books#annotationsdata", + "description": "Resource type", + "type": "string" }, - "contentVersion": { - "type": "string", - "description": "The content version for the volume you are trying to retrieve.", - "required": true, - "location": "query" + "nextPageToken": { + "description": "Token to pass in for pagination for the next page. This will not be present if this request does not have more results.", + "type": "string" }, - "h": { - "type": "integer", - "description": "The requested pixel height for any images. If height is provided width must also be provided.", - "format": "int32", - "location": "query" - }, - "layerId": { - "type": "string", - "description": "The ID for the layer to get the annotations.", - "required": true, - "location": "path" - }, - "locale": { - "type": "string", - "description": "The locale information for the data. ISO-639-1 language and ISO-3166-1 country code. Ex: 'en_US'.", - "location": "query" - }, - "scale": { - "type": "integer", - "description": "The requested scale for the image.", - "format": "int32", - "minimum": "0", - "location": "query" - }, - "source": { - "type": "string", - "description": "String to identify the originator of this request.", - "location": "query" - }, - "volumeId": { - "type": "string", - "description": "The volume to retrieve annotations for.", - "required": true, - "location": "path" - }, - "w": { - "type": "integer", - "description": "The requested pixel width for any images. If width is provided height must also be provided.", - "format": "int32", - "location": "query" + "totalItems": { + "description": "The total number of volume annotations found.", + "format": "int32", + "type": "integer" } - }, - "parameterOrder": [ - "volumeId", - "layerId", - "annotationDataId", - "contentVersion" - ], - "response": { - "$ref": "Annotationdata" - }, - "scopes": [ - "https://www.googleapis.com/auth/books" - ] }, - "list": { - "id": "books.layers.annotationData.list", - "path": "volumes/{volumeId}/layers/{layerId}/data", - "httpMethod": "GET", - "description": "Gets the annotation data for a volume and layer.", - "parameters": { - "annotationDataId": { - "type": "string", - "description": "The list of Annotation Data Ids to retrieve. Pagination is ignored if this is set.", - "repeated": true, - "location": "query" - }, - "contentVersion": { - "type": "string", - "description": "The content version for the requested volume.", - "required": true, - "location": "query" - }, - "h": { - "type": "integer", - "description": "The requested pixel height for any images. If height is provided width must also be provided.", - "format": "int32", - "location": "query" - }, - "layerId": { - "type": "string", - "description": "The ID for the layer to get the annotation data.", - "required": true, - "location": "path" - }, - "locale": { - "type": "string", - "description": "The locale information for the data. ISO-639-1 language and ISO-3166-1 country code. Ex: 'en_US'.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "Maximum number of results to return", - "format": "uint32", - "minimum": "0", - "maximum": "200", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "The value of the nextToken from the previous page.", - "location": "query" - }, - "scale": { - "type": "integer", - "description": "The requested scale for the image.", - "format": "int32", - "minimum": "0", - "location": "query" - }, - "source": { - "type": "string", - "description": "String to identify the originator of this request.", - "location": "query" - }, - "updatedMax": { - "type": "string", - "description": "RFC 3339 timestamp to restrict to items updated prior to this timestamp (exclusive).", - "location": "query" - }, - "updatedMin": { - "type": "string", - "description": "RFC 3339 timestamp to restrict to items updated since this timestamp (inclusive).", - "location": "query" - }, - "volumeId": { - "type": "string", - "description": "The volume to retrieve annotation data for.", - "required": true, - "location": "path" - }, - "w": { - "type": "integer", - "description": "The requested pixel width for any images. If width is provided height must also be provided.", - "format": "int32", - "location": "query" - } - }, - "parameterOrder": [ - "volumeId", - "layerId", - "contentVersion" - ], - "response": { - "$ref": "Annotationsdata" - }, - "scopes": [ - "https://www.googleapis.com/auth/books" - ] - } - } + "type": "object" }, - "volumeAnnotations": { - "methods": { - "get": { - "id": "books.layers.volumeAnnotations.get", - "path": "volumes/{volumeId}/layers/{layerId}/annotations/{annotationId}", - "httpMethod": "GET", - "description": "Gets the volume annotation.", - "parameters": { - "annotationId": { - "type": "string", - "description": "The ID of the volume annotation to retrieve.", - "required": true, - "location": "path" - }, - "layerId": { - "type": "string", - "description": "The ID for the layer to get the annotations.", - "required": true, - "location": "path" - }, - "locale": { - "type": "string", - "description": "The locale information for the data. ISO-639-1 language and ISO-3166-1 country code. Ex: 'en_US'.", - "location": "query" - }, - "source": { - "type": "string", - "description": "String to identify the originator of this request.", - "location": "query" - }, - "volumeId": { - "type": "string", - "description": "The volume to retrieve annotations for.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "volumeId", - "layerId", - "annotationId" - ], - "response": { - "$ref": "Volumeannotation" - }, - "scopes": [ - "https://www.googleapis.com/auth/books" - ] - }, - "list": { - "id": "books.layers.volumeAnnotations.list", - "path": "volumes/{volumeId}/layers/{layerId}", - "httpMethod": "GET", - "description": "Gets the volume annotations for a volume and layer.", - "parameters": { - "contentVersion": { - "type": "string", - "description": "The content version for the requested volume.", - "required": true, - "location": "query" - }, + "BooksAnnotationsRange": { + "id": "BooksAnnotationsRange", + "properties": { "endOffset": { - "type": "string", - "description": "The end offset to end retrieving data from.", - "location": "query" + "description": "The offset from the ending position.", + "type": "string" }, "endPosition": { - "type": "string", - "description": "The end position to end retrieving data from.", - "location": "query" - }, - "layerId": { - "type": "string", - "description": "The ID for the layer to get the annotations.", - "required": true, - "location": "path" - }, - "locale": { - "type": "string", - "description": "The locale information for the data. ISO-639-1 language and ISO-3166-1 country code. Ex: 'en_US'.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "Maximum number of results to return", - "format": "uint32", - "minimum": "0", - "maximum": "200", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "The value of the nextToken from the previous page.", - "location": "query" - }, - "showDeleted": { - "type": "boolean", - "description": "Set to true to return deleted annotations. updatedMin must be in the request to use this. Defaults to false.", - "location": "query" - }, - "source": { - "type": "string", - "description": "String to identify the originator of this request.", - "location": "query" + "description": "The ending position for the range.", + "type": "string" }, "startOffset": { - "type": "string", - "description": "The start offset to start retrieving data from.", - "location": "query" + "description": "The offset from the starting position.", + "type": "string" }, "startPosition": { - "type": "string", - "description": "The start position to start retrieving data from.", - "location": "query" + "description": "The starting position for the range.", + "type": "string" + } + }, + "type": "object" + }, + "BooksCloudloadingResource": { + "id": "BooksCloudloadingResource", + "properties": { + "author": { + "type": "string" }, - "updatedMax": { - "type": "string", - "description": "RFC 3339 timestamp to restrict to items updated prior to this timestamp (exclusive).", - "location": "query" + "processingState": { + "type": "string" }, - "updatedMin": { - "type": "string", - "description": "RFC 3339 timestamp to restrict to items updated since this timestamp (inclusive).", - "location": "query" - }, - "volumeAnnotationsVersion": { - "type": "string", - "description": "The version of the volume annotations that you are requesting.", - "location": "query" + "title": { + "type": "string" }, "volumeId": { - "type": "string", - "description": "The volume to retrieve annotations for.", - "required": true, - "location": "path" + "type": "string" } - }, - "parameterOrder": [ - "volumeId", - "layerId", - "contentVersion" - ], - "response": { - "$ref": "Volumeannotations" - }, - "scopes": [ - "https://www.googleapis.com/auth/books" - ] - } - } - } - } - }, - "myconfig": { - "methods": { - "getUserSettings": { - "id": "books.myconfig.getUserSettings", - "path": "myconfig/getUserSettings", - "httpMethod": "GET", - "description": "Gets the current settings for the user.", - "response": { - "$ref": "Usersettings" - }, - "scopes": [ - "https://www.googleapis.com/auth/books" - ] + }, + "type": "object" }, - "releaseDownloadAccess": { - "id": "books.myconfig.releaseDownloadAccess", - "path": "myconfig/releaseDownloadAccess", - "httpMethod": "POST", - "description": "Release downloaded content access restriction.", - "parameters": { - "cpksver": { - "type": "string", - "description": "The device/version ID from which to release the restriction.", - "required": true, - "location": "query" + "BooksVolumesRecommendedRateResponse": { + "id": "BooksVolumesRecommendedRateResponse", + "properties": { + "consistency_token": { + "type": "string" + } }, - "locale": { - "type": "string", - "description": "ISO-639-1, ISO-3166-1 codes for message localization, i.e. en_US.", - "location": "query" - }, - "source": { - "type": "string", - "description": "String to identify the originator of this request.", - "location": "query" - }, - "volumeIds": { - "type": "string", - "description": "The volume(s) to release restrictions for.", - "required": true, - "repeated": true, - "location": "query" - } - }, - "parameterOrder": [ - "volumeIds", - "cpksver" - ], - "response": { - "$ref": "DownloadAccesses" - }, - "scopes": [ - "https://www.googleapis.com/auth/books" - ] + "type": "object" }, - "requestAccess": { - "id": "books.myconfig.requestAccess", - "path": "myconfig/requestAccess", - "httpMethod": "POST", - "description": "Request concurrent and download access restrictions.", - "parameters": { - "cpksver": { - "type": "string", - "description": "The device/version ID from which to request the restrictions.", - "required": true, - "location": "query" + "Bookshelf": { + "id": "Bookshelf", + "properties": { + "access": { + "description": "Whether this bookshelf is PUBLIC or PRIVATE.", + "type": "string" + }, + "created": { + "description": "Created time for this bookshelf (formatted UTC timestamp with millisecond resolution).", + "format": "date-time", + "type": "string" + }, + "description": { + "description": "Description of this bookshelf.", + "type": "string" + }, + "id": { + "description": "Id of this bookshelf, only unique by user.", + "format": "int32", + "type": "integer" + }, + "kind": { + "default": "books#bookshelf", + "description": "Resource type for bookshelf metadata.", + "type": "string" + }, + "selfLink": { + "description": "URL to this resource.", + "type": "string" + }, + "title": { + "description": "Title of this bookshelf.", + "type": "string" + }, + "updated": { + "description": "Last modified time of this bookshelf (formatted UTC timestamp with millisecond resolution).", + "format": "date-time", + "type": "string" + }, + "volumeCount": { + "description": "Number of volumes in this bookshelf.", + "format": "int32", + "type": "integer" + }, + "volumesLastUpdated": { + "description": "Last time a volume was added or removed from this bookshelf (formatted UTC timestamp with millisecond resolution).", + "format": "date-time", + "type": "string" + } }, - "licenseTypes": { - "type": "string", - "description": "The type of access license to request. If not specified, the default is BOTH.", - "enum": [ - "BOTH", - "CONCURRENT", - "DOWNLOAD" - ], - "enumDescriptions": [ - "Both concurrent and download licenses.", - "Concurrent access license.", - "Offline download access license." - ], - "location": "query" - }, - "locale": { - "type": "string", - "description": "ISO-639-1, ISO-3166-1 codes for message localization, i.e. en_US.", - "location": "query" - }, - "nonce": { - "type": "string", - "description": "The client nonce value.", - "required": true, - "location": "query" - }, - "source": { - "type": "string", - "description": "String to identify the originator of this request.", - "required": true, - "location": "query" - }, - "volumeId": { - "type": "string", - "description": "The volume to request concurrent/download restrictions for.", - "required": true, - "location": "query" - } - }, - "parameterOrder": [ - "source", - "volumeId", - "nonce", - "cpksver" - ], - "response": { - "$ref": "RequestAccess" - }, - "scopes": [ - "https://www.googleapis.com/auth/books" - ] + "type": "object" }, - "syncVolumeLicenses": { - "id": "books.myconfig.syncVolumeLicenses", - "path": "myconfig/syncVolumeLicenses", - "httpMethod": "POST", - "description": "Request downloaded content access for specified volumes on the My eBooks shelf.", - "parameters": { - "cpksver": { - "type": "string", - "description": "The device/version ID from which to release the restriction.", - "required": true, - "location": "query" + "Bookshelves": { + "id": "Bookshelves", + "properties": { + "items": { + "description": "A list of bookshelves.", + "items": { + "$ref": "Bookshelf" + }, + "type": "array" + }, + "kind": { + "default": "books#bookshelves", + "description": "Resource type.", + "type": "string" + } }, - "features": { - "type": "string", - "description": "List of features supported by the client, i.e., 'RENTALS'", - "enum": [ - "RENTALS" - ], - "enumDescriptions": [ - "Client supports rentals." - ], - "repeated": true, - "location": "query" - }, - "includeNonComicsSeries": { - "type": "boolean", - "description": "Set to true to include non-comics series. Defaults to false.", - "location": "query" - }, - "locale": { - "type": "string", - "description": "ISO-639-1, ISO-3166-1 codes for message localization, i.e. en_US.", - "location": "query" - }, - "nonce": { - "type": "string", - "description": "The client nonce value.", - "required": true, - "location": "query" - }, - "showPreorders": { - "type": "boolean", - "description": "Set to true to show pre-ordered books. Defaults to false.", - "location": "query" - }, - "source": { - "type": "string", - "description": "String to identify the originator of this request.", - "required": true, - "location": "query" - }, - "volumeIds": { - "type": "string", - "description": "The volume(s) to request download restrictions for.", - "repeated": true, - "location": "query" - } - }, - "parameterOrder": [ - "source", - "nonce", - "cpksver" - ], - "response": { - "$ref": "Volumes" - }, - "scopes": [ - "https://www.googleapis.com/auth/books" - ] + "type": "object" }, - "updateUserSettings": { - "id": "books.myconfig.updateUserSettings", - "path": "myconfig/updateUserSettings", - "httpMethod": "POST", - "description": "Sets the settings for the user. If a sub-object is specified, it will overwrite the existing sub-object stored in the server. Unspecified sub-objects will retain the existing value.", - "request": { - "$ref": "Usersettings" - }, - "response": { - "$ref": "Usersettings" - }, - "scopes": [ - "https://www.googleapis.com/auth/books" - ] - } - } - }, - "mylibrary": { - "resources": { - "annotations": { - "methods": { - "delete": { - "id": "books.mylibrary.annotations.delete", - "path": "mylibrary/annotations/{annotationId}", - "httpMethod": "DELETE", - "description": "Deletes an annotation.", - "parameters": { - "annotationId": { - "type": "string", - "description": "The ID for the annotation to delete.", - "required": true, - "location": "path" + "Category": { + "id": "Category", + "properties": { + "items": { + "description": "A list of onboarding categories.", + "items": { + "properties": { + "badgeUrl": { + "type": "string" + }, + "categoryId": { + "type": "string" + }, + "name": { + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "kind": { + "default": "onboarding#category", + "description": "Resource type.", + "type": "string" + } + }, + "type": "object" + }, + "ConcurrentAccessRestriction": { + "id": "ConcurrentAccessRestriction", + "properties": { + "deviceAllowed": { + "description": "Whether access is granted for this (user, device, volume).", + "type": "boolean" + }, + "kind": { + "default": "books#concurrentAccessRestriction", + "description": "Resource type.", + "type": "string" + }, + "maxConcurrentDevices": { + "description": "The maximum number of concurrent access licenses for this volume.", + "format": "int32", + "type": "integer" + }, + "message": { + "description": "Error/warning message.", + "type": "string" + }, + "nonce": { + "description": "Client nonce for verification. Download access and client-validation only.", + "type": "string" + }, + "reasonCode": { + "description": "Error/warning reason code.", + "type": "string" + }, + "restricted": { + "description": "Whether this volume has any concurrent access restrictions.", + "type": "boolean" + }, + "signature": { + "description": "Response signature.", + "type": "string" }, "source": { - "type": "string", - "description": "String to identify the originator of this request.", - "location": "query" + "description": "Client app identifier for verification. Download access and client-validation only.", + "type": "string" + }, + "timeWindowSeconds": { + "description": "Time in seconds for license auto-expiration.", + "format": "int32", + "type": "integer" + }, + "volumeId": { + "description": "Identifies the volume for which this entry applies.", + "type": "string" } - }, - "parameterOrder": [ - "annotationId" - ], - "scopes": [ - "https://www.googleapis.com/auth/books" - ] }, - "insert": { - "id": "books.mylibrary.annotations.insert", - "path": "mylibrary/annotations", - "httpMethod": "POST", - "description": "Inserts a new annotation.", - "parameters": { - "annotationId": { - "type": "string", - "description": "The ID for the annotation to insert.", - "location": "query" + "type": "object" + }, + "Dictlayerdata": { + "id": "Dictlayerdata", + "properties": { + "common": { + "properties": { + "title": { + "description": "The display title and localized canonical name to use when searching for this entity on Google search.", + "type": "string" + } + }, + "type": "object" }, - "country": { - "type": "string", - "description": "ISO-3166-1 code to override the IP-based location.", - "location": "query" + "dict": { + "properties": { + "source": { + "description": "The source, url and attribution for this dictionary data.", + "properties": { + "attribution": { + "type": "string" + }, + "url": { + "type": "string" + } + }, + "type": "object" + }, + "words": { + "items": { + "properties": { + "derivatives": { + "items": { + "properties": { + "source": { + "properties": { + "attribution": { + "type": "string" + }, + "url": { + "type": "string" + } + }, + "type": "object" + }, + "text": { + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "examples": { + "items": { + "properties": { + "source": { + "properties": { + "attribution": { + "type": "string" + }, + "url": { + "type": "string" + } + }, + "type": "object" + }, + "text": { + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "senses": { + "items": { + "properties": { + "conjugations": { + "items": { + "properties": { + "type": { + "type": "string" + }, + "value": { + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "definitions": { + "items": { + "properties": { + "definition": { + "type": "string" + }, + "examples": { + "items": { + "properties": { + "source": { + "properties": { + "attribution": { + "type": "string" + }, + "url": { + "type": "string" + } + }, + "type": "object" + }, + "text": { + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + } + }, + "type": "object" + }, + "type": "array" + }, + "partOfSpeech": { + "type": "string" + }, + "pronunciation": { + "type": "string" + }, + "pronunciationUrl": { + "type": "string" + }, + "source": { + "properties": { + "attribution": { + "type": "string" + }, + "url": { + "type": "string" + } + }, + "type": "object" + }, + "syllabification": { + "type": "string" + }, + "synonyms": { + "items": { + "properties": { + "source": { + "properties": { + "attribution": { + "type": "string" + }, + "url": { + "type": "string" + } + }, + "type": "object" + }, + "text": { + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + } + }, + "type": "object" + }, + "type": "array" + }, + "source": { + "description": "The words with different meanings but not related words, e.g. \"go\" (game) and \"go\" (verb).", + "properties": { + "attribution": { + "type": "string" + }, + "url": { + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "type": "array" + } + }, + "type": "object" }, - "showOnlySummaryInResponse": { - "type": "boolean", - "description": "Requests that only the summary of the specified layer be provided in the response.", - "location": "query" + "kind": { + "default": "books#dictlayerdata", + "type": "string" + } + }, + "type": "object" + }, + "Discoveryclusters": { + "id": "Discoveryclusters", + "properties": { + "clusters": { + "items": { + "properties": { + "banner_with_content_container": { + "properties": { + "fillColorArgb": { + "type": "string" + }, + "imageUrl": { + "type": "string" + }, + "maskColorArgb": { + "type": "string" + }, + "moreButtonText": { + "type": "string" + }, + "moreButtonUrl": { + "type": "string" + }, + "textColorArgb": { + "type": "string" + } + }, + "type": "object" + }, + "subTitle": { + "type": "string" + }, + "title": { + "type": "string" + }, + "totalVolumes": { + "format": "int32", + "type": "integer" + }, + "uid": { + "type": "string" + }, + "volumes": { + "items": { + "$ref": "Volume" + }, + "type": "array" + } + }, + "type": "object" + }, + "type": "array" + }, + "kind": { + "default": "books#discovery#clusters", + "description": "Resorce type.", + "type": "string" + }, + "totalClusters": { + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "DownloadAccessRestriction": { + "id": "DownloadAccessRestriction", + "properties": { + "deviceAllowed": { + "description": "If restricted, whether access is granted for this (user, device, volume).", + "type": "boolean" + }, + "downloadsAcquired": { + "description": "If restricted, the number of content download licenses already acquired (including the requesting client, if licensed).", + "format": "int32", + "type": "integer" + }, + "justAcquired": { + "description": "If deviceAllowed, whether access was just acquired with this request.", + "type": "boolean" + }, + "kind": { + "default": "books#downloadAccessRestriction", + "description": "Resource type.", + "type": "string" + }, + "maxDownloadDevices": { + "description": "If restricted, the maximum number of content download licenses for this volume.", + "format": "int32", + "type": "integer" + }, + "message": { + "description": "Error/warning message.", + "type": "string" + }, + "nonce": { + "description": "Client nonce for verification. Download access and client-validation only.", + "type": "string" + }, + "reasonCode": { + "description": "Error/warning reason code. Additional codes may be added in the future. 0 OK 100 ACCESS_DENIED_PUBLISHER_LIMIT 101 ACCESS_DENIED_LIMIT 200 WARNING_USED_LAST_ACCESS", + "type": "string" + }, + "restricted": { + "description": "Whether this volume has any download access restrictions.", + "type": "boolean" + }, + "signature": { + "description": "Response signature.", + "type": "string" }, "source": { - "type": "string", - "description": "String to identify the originator of this request.", - "location": "query" + "description": "Client app identifier for verification. Download access and client-validation only.", + "type": "string" + }, + "volumeId": { + "description": "Identifies the volume for which this entry applies.", + "type": "string" } - }, - "request": { - "$ref": "Annotation" - }, - "response": { - "$ref": "Annotation" - }, - "scopes": [ - "https://www.googleapis.com/auth/books" - ] }, - "list": { - "id": "books.mylibrary.annotations.list", - "path": "mylibrary/annotations", - "httpMethod": "GET", - "description": "Retrieves a list of annotations, possibly filtered.", - "parameters": { + "type": "object" + }, + "DownloadAccesses": { + "id": "DownloadAccesses", + "properties": { + "downloadAccessList": { + "description": "A list of download access responses.", + "items": { + "$ref": "DownloadAccessRestriction" + }, + "type": "array" + }, + "kind": { + "default": "books#downloadAccesses", + "description": "Resource type.", + "type": "string" + } + }, + "type": "object" + }, + "FamilyInfo": { + "id": "FamilyInfo", + "properties": { + "kind": { + "default": "books#familyInfo", + "description": "Resource type.", + "type": "string" + }, + "membership": { + "description": "Family membership info of the user that made the request.", + "properties": { + "acquirePermission": { + "description": "Restrictions on user buying and acquiring content.", + "type": "string" + }, + "ageGroup": { + "description": "The age group of the user.", + "type": "string" + }, + "allowedMaturityRating": { + "description": "The maximum allowed maturity rating for the user.", + "type": "string" + }, + "isInFamily": { + "type": "boolean" + }, + "role": { + "description": "The role of the user in the family.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "Geolayerdata": { + "id": "Geolayerdata", + "properties": { + "common": { + "properties": { + "lang": { + "description": "The language of the information url and description.", + "type": "string" + }, + "previewImageUrl": { + "description": "The URL for the preview image information.", + "type": "string" + }, + "snippet": { + "description": "The description for this location.", + "type": "string" + }, + "snippetUrl": { + "description": "The URL for information for this location. Ex: wikipedia link.", + "type": "string" + }, + "title": { + "description": "The display title and localized canonical name to use when searching for this entity on Google search.", + "type": "string" + } + }, + "type": "object" + }, + "geo": { + "properties": { + "boundary": { + "description": "The boundary of the location as a set of loops containing pairs of latitude, longitude coordinates.", + "items": { + "items": { + "properties": { + "latitude": { + "format": "uint32", + "type": "integer" + }, + "longitude": { + "format": "uint32", + "type": "integer" + } + }, + "type": "object" + }, + "type": "array" + }, + "type": "array" + }, + "cachePolicy": { + "description": "The cache policy active for this data. EX: UNRESTRICTED, RESTRICTED, NEVER", + "type": "string" + }, + "countryCode": { + "description": "The country code of the location.", + "type": "string" + }, + "latitude": { + "description": "The latitude of the location.", + "format": "double", + "type": "number" + }, + "longitude": { + "description": "The longitude of the location.", + "format": "double", + "type": "number" + }, + "mapType": { + "description": "The type of map that should be used for this location. EX: HYBRID, ROADMAP, SATELLITE, TERRAIN", + "type": "string" + }, + "viewport": { + "description": "The viewport for showing this location. This is a latitude, longitude rectangle.", + "properties": { + "hi": { + "properties": { + "latitude": { + "format": "double", + "type": "number" + }, + "longitude": { + "format": "double", + "type": "number" + } + }, + "type": "object" + }, + "lo": { + "properties": { + "latitude": { + "format": "double", + "type": "number" + }, + "longitude": { + "format": "double", + "type": "number" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "zoom": { + "description": "The Zoom level to use for the map. Zoom levels between 0 (the lowest zoom level, in which the entire world can be seen on one map) to 21+ (down to individual buildings). See: https://developers.google.com/maps/documentation/staticmaps/#Zoomlevels", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "kind": { + "default": "books#geolayerdata", + "type": "string" + } + }, + "type": "object" + }, + "Layersummaries": { + "id": "Layersummaries", + "properties": { + "items": { + "description": "A list of layer summary items.", + "items": { + "$ref": "Layersummary" + }, + "type": "array" + }, + "kind": { + "default": "books#layersummaries", + "description": "Resource type.", + "type": "string" + }, + "totalItems": { + "description": "The total number of layer summaries found.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "Layersummary": { + "id": "Layersummary", + "properties": { + "annotationCount": { + "description": "The number of annotations for this layer.", + "format": "int32", + "type": "integer" + }, + "annotationTypes": { + "description": "The list of annotation types contained for this layer.", + "items": { + "type": "string" + }, + "type": "array" + }, + "annotationsDataLink": { + "description": "Link to get data for this annotation.", + "type": "string" + }, + "annotationsLink": { + "description": "The link to get the annotations for this layer.", + "type": "string" + }, "contentVersion": { - "type": "string", - "description": "The content version for the requested volume.", - "location": "query" + "description": "The content version this resource is for.", + "type": "string" + }, + "dataCount": { + "description": "The number of data items for this layer.", + "format": "int32", + "type": "integer" + }, + "id": { + "description": "Unique id of this layer summary.", + "type": "string" + }, + "kind": { + "default": "books#layersummary", + "description": "Resource Type", + "type": "string" }, "layerId": { - "type": "string", - "description": "The layer ID to limit annotation by.", - "location": "query" + "description": "The layer id for this summary.", + "type": "string" }, - "layerIds": { - "type": "string", - "description": "The layer ID(s) to limit annotation by.", - "repeated": true, - "location": "query" + "selfLink": { + "description": "URL to this resource.", + "type": "string" }, - "maxResults": { - "type": "integer", - "description": "Maximum number of results to return", - "format": "uint32", - "minimum": "0", - "maximum": "40", - "location": "query" + "updated": { + "description": "Timestamp for the last time an item in this layer was updated. (RFC 3339 UTC date-time format).", + "format": "date-time", + "type": "string" }, - "pageToken": { - "type": "string", - "description": "The value of the nextToken from the previous page.", - "location": "query" - }, - "showDeleted": { - "type": "boolean", - "description": "Set to true to return deleted annotations. updatedMin must be in the request to use this. Defaults to false.", - "location": "query" - }, - "source": { - "type": "string", - "description": "String to identify the originator of this request.", - "location": "query" - }, - "updatedMax": { - "type": "string", - "description": "RFC 3339 timestamp to restrict to items updated prior to this timestamp (exclusive).", - "location": "query" - }, - "updatedMin": { - "type": "string", - "description": "RFC 3339 timestamp to restrict to items updated since this timestamp (inclusive).", - "location": "query" + "volumeAnnotationsVersion": { + "description": "The current version of this layer's volume annotations. Note that this version applies only to the data in the books.layers.volumeAnnotations.* responses. The actual annotation data is versioned separately.", + "type": "string" }, "volumeId": { - "type": "string", - "description": "The volume to restrict annotations to.", - "location": "query" + "description": "The volume id this resource is for.", + "type": "string" } - }, - "response": { - "$ref": "Annotations" - }, - "scopes": [ - "https://www.googleapis.com/auth/books" - ] }, - "summary": { - "id": "books.mylibrary.annotations.summary", - "path": "mylibrary/annotations/summary", - "httpMethod": "POST", - "description": "Gets the summary of specified layers.", - "parameters": { - "layerIds": { - "type": "string", - "description": "Array of layer IDs to get the summary for.", - "required": true, - "repeated": true, - "location": "query" - }, - "volumeId": { - "type": "string", - "description": "Volume id to get the summary for.", - "required": true, - "location": "query" - } - }, - "parameterOrder": [ - "layerIds", - "volumeId" - ], - "response": { - "$ref": "AnnotationsSummary" - }, - "scopes": [ - "https://www.googleapis.com/auth/books" - ] - }, - "update": { - "id": "books.mylibrary.annotations.update", - "path": "mylibrary/annotations/{annotationId}", - "httpMethod": "PUT", - "description": "Updates an existing annotation.", - "parameters": { - "annotationId": { - "type": "string", - "description": "The ID for the annotation to update.", - "required": true, - "location": "path" - }, - "source": { - "type": "string", - "description": "String to identify the originator of this request.", - "location": "query" - } - }, - "parameterOrder": [ - "annotationId" - ], - "request": { - "$ref": "Annotation" - }, - "response": { - "$ref": "Annotation" - }, - "scopes": [ - "https://www.googleapis.com/auth/books" - ] - } - } + "type": "object" }, - "bookshelves": { - "methods": { - "addVolume": { - "id": "books.mylibrary.bookshelves.addVolume", - "path": "mylibrary/bookshelves/{shelf}/addVolume", - "httpMethod": "POST", - "description": "Adds a volume to a bookshelf.", - "parameters": { + "Metadata": { + "id": "Metadata", + "properties": { + "items": { + "description": "A list of offline dictionary metadata.", + "items": { + "properties": { + "download_url": { + "type": "string" + }, + "encrypted_key": { + "type": "string" + }, + "language": { + "type": "string" + }, + "size": { + "format": "int64", + "type": "string" + }, + "version": { + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "kind": { + "default": "dictionary#metadata", + "description": "Resource type.", + "type": "string" + } + }, + "type": "object" + }, + "Notification": { + "id": "Notification", + "properties": { + "body": { + "type": "string" + }, + "crmExperimentIds": { + "description": "The list of crm experiment ids.", + "items": { + "format": "int64", + "type": "string" + }, + "type": "array" + }, + "doc_id": { + "type": "string" + }, + "doc_type": { + "type": "string" + }, + "dont_show_notification": { + "type": "boolean" + }, + "iconUrl": { + "type": "string" + }, + "kind": { + "default": "books#notification", + "description": "Resource type.", + "type": "string" + }, + "notificationGroup": { + "type": "string" + }, + "notification_type": { + "type": "string" + }, + "pcampaign_id": { + "type": "string" + }, "reason": { - "type": "string", - "description": "The reason for which the book is added to the library.", - "enum": [ - "IOS_PREX", - "IOS_SEARCH", - "ONBOARDING" - ], - "enumDescriptions": [ - "Volumes added from the PREX flow on iOS.", - "Volumes added from the Search flow on iOS.", - "Volumes added from the Onboarding flow." - ], - "location": "query" + "type": "string" }, - "shelf": { - "type": "string", - "description": "ID of bookshelf to which to add a volume.", - "required": true, - "location": "path" + "show_notification_settings_action": { + "type": "boolean" }, - "source": { - "type": "string", - "description": "String to identify the originator of this request.", - "location": "query" + "targetUrl": { + "type": "string" + }, + "title": { + "type": "string" + } + }, + "type": "object" + }, + "Offers": { + "id": "Offers", + "properties": { + "items": { + "description": "A list of offers.", + "items": { + "properties": { + "artUrl": { + "type": "string" + }, + "gservicesKey": { + "type": "string" + }, + "id": { + "type": "string" + }, + "items": { + "items": { + "properties": { + "author": { + "type": "string" + }, + "canonicalVolumeLink": { + "type": "string" + }, + "coverUrl": { + "type": "string" + }, + "description": { + "type": "string" + }, + "title": { + "type": "string" + }, + "volumeId": { + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + } + }, + "type": "object" + }, + "type": "array" + }, + "kind": { + "default": "promooffer#offers", + "description": "Resource type.", + "type": "string" + } + }, + "type": "object" + }, + "ReadingPosition": { + "id": "ReadingPosition", + "properties": { + "epubCfiPosition": { + "description": "Position in an EPUB as a CFI.", + "type": "string" + }, + "gbImagePosition": { + "description": "Position in a volume for image-based content.", + "type": "string" + }, + "gbTextPosition": { + "description": "Position in a volume for text-based content.", + "type": "string" + }, + "kind": { + "default": "books#readingPosition", + "description": "Resource type for a reading position.", + "type": "string" + }, + "pdfPosition": { + "description": "Position in a PDF file.", + "type": "string" + }, + "updated": { + "description": "Timestamp when this reading position was last updated (formatted UTC timestamp with millisecond resolution).", + "format": "date-time", + "type": "string" }, "volumeId": { - "type": "string", - "description": "ID of volume to add.", - "required": true, - "location": "query" + "description": "Volume id associated with this reading position.", + "type": "string" } - }, - "parameterOrder": [ - "shelf", - "volumeId" - ], - "scopes": [ - "https://www.googleapis.com/auth/books" - ] }, - "clearVolumes": { - "id": "books.mylibrary.bookshelves.clearVolumes", - "path": "mylibrary/bookshelves/{shelf}/clearVolumes", - "httpMethod": "POST", - "description": "Clears all volumes from a bookshelf.", - "parameters": { - "shelf": { - "type": "string", - "description": "ID of bookshelf from which to remove a volume.", - "required": true, - "location": "path" - }, - "source": { - "type": "string", - "description": "String to identify the originator of this request.", - "location": "query" - } - }, - "parameterOrder": [ - "shelf" - ], - "scopes": [ - "https://www.googleapis.com/auth/books" - ] - }, - "get": { - "id": "books.mylibrary.bookshelves.get", - "path": "mylibrary/bookshelves/{shelf}", - "httpMethod": "GET", - "description": "Retrieves metadata for a specific bookshelf belonging to the authenticated user.", - "parameters": { - "shelf": { - "type": "string", - "description": "ID of bookshelf to retrieve.", - "required": true, - "location": "path" - }, - "source": { - "type": "string", - "description": "String to identify the originator of this request.", - "location": "query" - } - }, - "parameterOrder": [ - "shelf" - ], - "response": { - "$ref": "Bookshelf" - }, - "scopes": [ - "https://www.googleapis.com/auth/books" - ] - }, - "list": { - "id": "books.mylibrary.bookshelves.list", - "path": "mylibrary/bookshelves", - "httpMethod": "GET", - "description": "Retrieves a list of bookshelves belonging to the authenticated user.", - "parameters": { - "source": { - "type": "string", - "description": "String to identify the originator of this request.", - "location": "query" - } - }, - "response": { - "$ref": "Bookshelves" - }, - "scopes": [ - "https://www.googleapis.com/auth/books" - ] - }, - "moveVolume": { - "id": "books.mylibrary.bookshelves.moveVolume", - "path": "mylibrary/bookshelves/{shelf}/moveVolume", - "httpMethod": "POST", - "description": "Moves a volume within a bookshelf.", - "parameters": { - "shelf": { - "type": "string", - "description": "ID of bookshelf with the volume.", - "required": true, - "location": "path" - }, - "source": { - "type": "string", - "description": "String to identify the originator of this request.", - "location": "query" - }, - "volumeId": { - "type": "string", - "description": "ID of volume to move.", - "required": true, - "location": "query" - }, - "volumePosition": { - "type": "integer", - "description": "Position on shelf to move the item (0 puts the item before the current first item, 1 puts it between the first and the second and so on.)", - "required": true, - "format": "int32", - "location": "query" - } - }, - "parameterOrder": [ - "shelf", - "volumeId", - "volumePosition" - ], - "scopes": [ - "https://www.googleapis.com/auth/books" - ] - }, - "removeVolume": { - "id": "books.mylibrary.bookshelves.removeVolume", - "path": "mylibrary/bookshelves/{shelf}/removeVolume", - "httpMethod": "POST", - "description": "Removes a volume from a bookshelf.", - "parameters": { - "reason": { - "type": "string", - "description": "The reason for which the book is removed from the library.", - "enum": [ - "ONBOARDING" - ], - "enumDescriptions": [ - "Samples removed from the Onboarding flow." - ], - "location": "query" - }, - "shelf": { - "type": "string", - "description": "ID of bookshelf from which to remove a volume.", - "required": true, - "location": "path" - }, - "source": { - "type": "string", - "description": "String to identify the originator of this request.", - "location": "query" - }, - "volumeId": { - "type": "string", - "description": "ID of volume to remove.", - "required": true, - "location": "query" - } - }, - "parameterOrder": [ - "shelf", - "volumeId" - ], - "scopes": [ - "https://www.googleapis.com/auth/books" - ] - } - }, - "resources": { - "volumes": { - "methods": { - "list": { - "id": "books.mylibrary.bookshelves.volumes.list", - "path": "mylibrary/bookshelves/{shelf}/volumes", - "httpMethod": "GET", - "description": "Gets volume information for volumes on a bookshelf.", - "parameters": { - "country": { - "type": "string", - "description": "ISO-3166-1 code to override the IP-based location.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "Maximum number of results to return", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "projection": { - "type": "string", - "description": "Restrict information returned to a set of selected fields.", - "enum": [ - "full", - "lite" - ], - "enumDescriptions": [ - "Includes all volume data.", - "Includes a subset of fields in volumeInfo and accessInfo." - ], - "location": "query" - }, - "q": { - "type": "string", - "description": "Full-text search query string in this bookshelf.", - "location": "query" - }, - "shelf": { - "type": "string", - "description": "The bookshelf ID or name retrieve volumes for.", - "required": true, - "location": "path" - }, - "showPreorders": { - "type": "boolean", - "description": "Set to true to show pre-ordered books. Defaults to false.", - "location": "query" - }, - "source": { - "type": "string", - "description": "String to identify the originator of this request.", - "location": "query" - }, - "startIndex": { - "type": "integer", - "description": "Index of the first element to return (starts at 0)", - "format": "uint32", - "minimum": "0", - "location": "query" - } - }, - "parameterOrder": [ - "shelf" - ], - "response": { - "$ref": "Volumes" - }, - "scopes": [ - "https://www.googleapis.com/auth/books" - ] - } - } - } - } + "type": "object" }, - "readingpositions": { - "methods": { - "get": { - "id": "books.mylibrary.readingpositions.get", - "path": "mylibrary/readingpositions/{volumeId}", - "httpMethod": "GET", - "description": "Retrieves my reading position information for a volume.", - "parameters": { - "contentVersion": { - "type": "string", - "description": "Volume content version for which this reading position is requested.", - "location": "query" + "RequestAccess": { + "id": "RequestAccess", + "properties": { + "concurrentAccess": { + "$ref": "ConcurrentAccessRestriction", + "description": "A concurrent access response." }, - "source": { - "type": "string", - "description": "String to identify the originator of this request.", - "location": "query" + "downloadAccess": { + "$ref": "DownloadAccessRestriction", + "description": "A download access response." }, - "volumeId": { - "type": "string", - "description": "ID of volume for which to retrieve a reading position.", - "required": true, - "location": "path" + "kind": { + "default": "books#requestAccess", + "description": "Resource type.", + "type": "string" } - }, - "parameterOrder": [ - "volumeId" - ], - "response": { - "$ref": "ReadingPosition" - }, - "scopes": [ - "https://www.googleapis.com/auth/books" - ] }, - "setPosition": { - "id": "books.mylibrary.readingpositions.setPosition", - "path": "mylibrary/readingpositions/{volumeId}/setPosition", - "httpMethod": "POST", - "description": "Sets my reading position information for a volume.", - "parameters": { - "action": { - "type": "string", - "description": "Action that caused this reading position to be set.", - "enum": [ - "bookmark", - "chapter", - "next-page", - "prev-page", - "scroll", - "search" - ], - "enumDescriptions": [ - "User chose bookmark within volume.", - "User selected chapter from list.", - "Next page event.", - "Previous page event.", - "User navigated to page.", - "User chose search results within volume." - ], - "location": "query" - }, - "contentVersion": { - "type": "string", - "description": "Volume content version for which this reading position applies.", - "location": "query" - }, - "deviceCookie": { - "type": "string", - "description": "Random persistent device cookie optional on set position.", - "location": "query" - }, - "position": { - "type": "string", - "description": "Position string for the new volume reading position.", - "required": true, - "location": "query" - }, - "source": { - "type": "string", - "description": "String to identify the originator of this request.", - "location": "query" - }, - "timestamp": { - "type": "string", - "description": "RFC 3339 UTC format timestamp associated with this reading position.", - "required": true, - "location": "query" - }, - "volumeId": { - "type": "string", - "description": "ID of volume for which to update the reading position.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "volumeId", - "timestamp", - "position" - ], - "scopes": [ - "https://www.googleapis.com/auth/books" - ] - } - } - } - } - }, - "notification": { - "methods": { - "get": { - "id": "books.notification.get", - "path": "notification/get", - "httpMethod": "GET", - "description": "Returns notification details for a given notification id.", - "parameters": { - "locale": { - "type": "string", - "description": "ISO-639-1 language and ISO-3166-1 country code. Ex: 'en_US'. Used for generating notification title and body.", - "location": "query" - }, - "notification_id": { - "type": "string", - "description": "String to identify the notification.", - "required": true, - "location": "query" - }, - "source": { - "type": "string", - "description": "String to identify the originator of this request.", - "location": "query" - } - }, - "parameterOrder": [ - "notification_id" - ], - "response": { - "$ref": "Notification" - }, - "scopes": [ - "https://www.googleapis.com/auth/books" - ] - } - } - }, - "onboarding": { - "methods": { - "listCategories": { - "id": "books.onboarding.listCategories", - "path": "onboarding/listCategories", - "httpMethod": "GET", - "description": "List categories for onboarding experience.", - "parameters": { - "locale": { - "type": "string", - "description": "ISO-639-1 language and ISO-3166-1 country code. Default is en-US if unset.", - "location": "query" - } - }, - "response": { - "$ref": "Category" - }, - "scopes": [ - "https://www.googleapis.com/auth/books" - ] + "type": "object" }, - "listCategoryVolumes": { - "id": "books.onboarding.listCategoryVolumes", - "path": "onboarding/listCategoryVolumes", - "httpMethod": "GET", - "description": "List available volumes under categories for onboarding experience.", - "parameters": { - "categoryId": { - "type": "string", - "description": "List of category ids requested.", - "repeated": true, - "location": "query" - }, - "locale": { - "type": "string", - "description": "ISO-639-1 language and ISO-3166-1 country code. Default is en-US if unset.", - "location": "query" - }, - "maxAllowedMaturityRating": { - "type": "string", - "description": "The maximum allowed maturity rating of returned volumes. Books with a higher maturity rating are filtered out.", - "enum": [ - "mature", - "not-mature" - ], - "enumDescriptions": [ - "Show books which are rated mature or lower.", - "Show books which are rated not mature." - ], - "location": "query" - }, - "pageSize": { - "type": "integer", - "description": "Number of maximum results per page to be included in the response.", - "format": "uint32", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "The value of the nextToken from the previous page.", - "location": "query" - } - }, - "response": { - "$ref": "Volume2" - }, - "scopes": [ - "https://www.googleapis.com/auth/books" - ] - } - } - }, - "personalizedstream": { - "methods": { - "get": { - "id": "books.personalizedstream.get", - "path": "personalizedstream/get", - "httpMethod": "GET", - "description": "Returns a stream of personalized book clusters", - "parameters": { - "locale": { - "type": "string", - "description": "ISO-639-1 language and ISO-3166-1 country code. Ex: 'en_US'. Used for generating recommendations.", - "location": "query" - }, - "maxAllowedMaturityRating": { - "type": "string", - "description": "The maximum allowed maturity rating of returned recommendations. Books with a higher maturity rating are filtered out.", - "enum": [ - "mature", - "not-mature" - ], - "enumDescriptions": [ - "Show books which are rated mature or lower.", - "Show books which are rated not mature." - ], - "location": "query" - }, - "source": { - "type": "string", - "description": "String to identify the originator of this request.", - "location": "query" - } - }, - "response": { - "$ref": "Discoveryclusters" - }, - "scopes": [ - "https://www.googleapis.com/auth/books" - ] - } - } - }, - "promooffer": { - "methods": { - "accept": { - "id": "books.promooffer.accept", - "path": "promooffer/accept", - "httpMethod": "POST", - "description": "", - "parameters": { - "androidId": { - "type": "string", - "description": "device android_id", - "location": "query" - }, - "device": { - "type": "string", - "description": "device device", - "location": "query" - }, - "manufacturer": { - "type": "string", - "description": "device manufacturer", - "location": "query" - }, - "model": { - "type": "string", - "description": "device model", - "location": "query" - }, - "offerId": { - "type": "string", - "location": "query" - }, - "product": { - "type": "string", - "description": "device product", - "location": "query" - }, - "serial": { - "type": "string", - "description": "device serial", - "location": "query" - }, - "volumeId": { - "type": "string", - "description": "Volume id to exercise the offer", - "location": "query" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/books" - ] - }, - "dismiss": { - "id": "books.promooffer.dismiss", - "path": "promooffer/dismiss", - "httpMethod": "POST", - "description": "", - "parameters": { - "androidId": { - "type": "string", - "description": "device android_id", - "location": "query" - }, - "device": { - "type": "string", - "description": "device device", - "location": "query" - }, - "manufacturer": { - "type": "string", - "description": "device manufacturer", - "location": "query" - }, - "model": { - "type": "string", - "description": "device model", - "location": "query" - }, - "offerId": { - "type": "string", - "description": "Offer to dimiss", - "location": "query" - }, - "product": { - "type": "string", - "description": "device product", - "location": "query" - }, - "serial": { - "type": "string", - "description": "device serial", - "location": "query" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/books" - ] - }, - "get": { - "id": "books.promooffer.get", - "path": "promooffer/get", - "httpMethod": "GET", - "description": "Returns a list of promo offers available to the user", - "parameters": { - "androidId": { - "type": "string", - "description": "device android_id", - "location": "query" - }, - "device": { - "type": "string", - "description": "device device", - "location": "query" - }, - "manufacturer": { - "type": "string", - "description": "device manufacturer", - "location": "query" - }, - "model": { - "type": "string", - "description": "device model", - "location": "query" - }, - "product": { - "type": "string", - "description": "device product", - "location": "query" - }, - "serial": { - "type": "string", - "description": "device serial", - "location": "query" - } - }, - "response": { - "$ref": "Offers" - }, - "scopes": [ - "https://www.googleapis.com/auth/books" - ] - } - } - }, - "series": { - "methods": { - "get": { - "id": "books.series.get", - "path": "series/get", - "httpMethod": "GET", - "description": "Returns Series metadata for the given series ids.", - "parameters": { - "series_id": { - "type": "string", - "description": "String that identifies the series", - "required": true, - "repeated": true, - "location": "query" - } - }, - "parameterOrder": [ - "series_id" - ], - "response": { - "$ref": "Series" - }, - "scopes": [ - "https://www.googleapis.com/auth/books" - ] - } - }, - "resources": { - "membership": { - "methods": { - "get": { - "id": "books.series.membership.get", - "path": "series/membership/get", - "httpMethod": "GET", - "description": "Returns Series membership data given the series id.", - "parameters": { - "page_size": { - "type": "integer", - "description": "Number of maximum results per page to be included in the response.", - "format": "uint32", - "location": "query" + "Review": { + "id": "Review", + "properties": { + "author": { + "description": "Author of this review.", + "properties": { + "displayName": { + "description": "Name of this person.", + "type": "string" + } + }, + "type": "object" }, - "page_token": { - "type": "string", - "description": "The value of the nextToken from the previous page.", - "location": "query" + "content": { + "description": "Review text.", + "type": "string" }, - "series_id": { - "type": "string", - "description": "String that identifies the series", - "required": true, - "location": "query" - } - }, - "parameterOrder": [ - "series_id" - ], - "response": { - "$ref": "Seriesmembership" - }, - "scopes": [ - "https://www.googleapis.com/auth/books" - ] - } - } - } - } - }, - "volumes": { - "methods": { - "get": { - "id": "books.volumes.get", - "path": "volumes/{volumeId}", - "httpMethod": "GET", - "description": "Gets volume information for a single volume.", - "parameters": { - "country": { - "type": "string", - "description": "ISO-3166-1 code to override the IP-based location.", - "location": "query" - }, - "includeNonComicsSeries": { - "type": "boolean", - "description": "Set to true to include non-comics series. Defaults to false.", - "location": "query" - }, - "partner": { - "type": "string", - "description": "Brand results for partner ID.", - "location": "query" - }, - "projection": { - "type": "string", - "description": "Restrict information returned to a set of selected fields.", - "enum": [ - "full", - "lite" - ], - "enumDescriptions": [ - "Includes all volume data.", - "Includes a subset of fields in volumeInfo and accessInfo." - ], - "location": "query" - }, - "source": { - "type": "string", - "description": "String to identify the originator of this request.", - "location": "query" - }, - "user_library_consistent_read": { - "type": "boolean", - "location": "query" - }, - "volumeId": { - "type": "string", - "description": "ID of volume to retrieve.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "volumeId" - ], - "response": { - "$ref": "Volume" - }, - "scopes": [ - "https://www.googleapis.com/auth/books" - ] - }, - "list": { - "id": "books.volumes.list", - "path": "volumes", - "httpMethod": "GET", - "description": "Performs a book search.", - "parameters": { - "download": { - "type": "string", - "description": "Restrict to volumes by download availability.", - "enum": [ - "epub" - ], - "enumDescriptions": [ - "All volumes with epub." - ], - "location": "query" - }, - "filter": { - "type": "string", - "description": "Filter search results.", - "enum": [ - "ebooks", - "free-ebooks", - "full", - "paid-ebooks", - "partial" - ], - "enumDescriptions": [ - "All Google eBooks.", - "Google eBook with full volume text viewability.", - "Public can view entire volume text.", - "Google eBook with a price.", - "Public able to see parts of text." - ], - "location": "query" - }, - "langRestrict": { - "type": "string", - "description": "Restrict results to books with this language code.", - "location": "query" - }, - "libraryRestrict": { - "type": "string", - "description": "Restrict search to this user's library.", - "enum": [ - "my-library", - "no-restrict" - ], - "enumDescriptions": [ - "Restrict to the user's library, any shelf.", - "Do not restrict based on user's library." - ], - "location": "query" - }, - "maxAllowedMaturityRating": { - "type": "string", - "description": "The maximum allowed maturity rating of returned recommendations. Books with a higher maturity rating are filtered out.", - "enum": [ - "mature", - "not-mature" - ], - "enumDescriptions": [ - "Show books which are rated mature or lower.", - "Show books which are rated not mature." - ], - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "Maximum number of results to return.", - "format": "uint32", - "minimum": "0", - "maximum": "40", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sort search results.", - "enum": [ - "newest", - "relevance" - ], - "enumDescriptions": [ - "Most recently published.", - "Relevance to search terms." - ], - "location": "query" - }, - "partner": { - "type": "string", - "description": "Restrict and brand results for partner ID.", - "location": "query" - }, - "printType": { - "type": "string", - "description": "Restrict to books or magazines.", - "enum": [ - "all", - "books", - "magazines" - ], - "enumDescriptions": [ - "All volume content types.", - "Just books.", - "Just magazines." - ], - "location": "query" - }, - "projection": { - "type": "string", - "description": "Restrict information returned to a set of selected fields.", - "enum": [ - "full", - "lite" - ], - "enumDescriptions": [ - "Includes all volume data.", - "Includes a subset of fields in volumeInfo and accessInfo." - ], - "location": "query" - }, - "q": { - "type": "string", - "description": "Full-text search query string.", - "required": true, - "location": "query" - }, - "showPreorders": { - "type": "boolean", - "description": "Set to true to show books available for preorder. Defaults to false.", - "location": "query" - }, - "source": { - "type": "string", - "description": "String to identify the originator of this request.", - "location": "query" - }, - "startIndex": { - "type": "integer", - "description": "Index of the first result to return (starts at 0)", - "format": "uint32", - "minimum": "0", - "location": "query" - } - }, - "parameterOrder": [ - "q" - ], - "response": { - "$ref": "Volumes" - }, - "scopes": [ - "https://www.googleapis.com/auth/books" - ] - } - }, - "resources": { - "associated": { - "methods": { - "list": { - "id": "books.volumes.associated.list", - "path": "volumes/{volumeId}/associated", - "httpMethod": "GET", - "description": "Return a list of associated books.", - "parameters": { - "association": { - "type": "string", - "description": "Association type.", - "enum": [ - "end-of-sample", - "end-of-volume", - "related-for-play" - ], - "enumDescriptions": [ - "Recommendations for display end-of-sample.", - "Recommendations for display end-of-volume.", - "Related volumes for Play Store." - ], - "location": "query" + "date": { + "description": "Date of this review.", + "type": "string" }, - "locale": { - "type": "string", - "description": "ISO-639-1 language and ISO-3166-1 country code. Ex: 'en_US'. Used for generating recommendations.", - "location": "query" + "fullTextUrl": { + "description": "URL for the full review text, for reviews gathered from the web.", + "type": "string" }, - "maxAllowedMaturityRating": { - "type": "string", - "description": "The maximum allowed maturity rating of returned recommendations. Books with a higher maturity rating are filtered out.", - "enum": [ - "mature", - "not-mature" - ], - "enumDescriptions": [ - "Show books which are rated mature or lower.", - "Show books which are rated not mature." - ], - "location": "query" - }, - "source": { - "type": "string", - "description": "String to identify the originator of this request.", - "location": "query" - }, - "volumeId": { - "type": "string", - "description": "ID of the source volume.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "volumeId" - ], - "response": { - "$ref": "Volumes" - }, - "scopes": [ - "https://www.googleapis.com/auth/books" - ] - } - } - }, - "mybooks": { - "methods": { - "list": { - "id": "books.volumes.mybooks.list", - "path": "volumes/mybooks", - "httpMethod": "GET", - "description": "Return a list of books in My Library.", - "parameters": { - "acquireMethod": { - "type": "string", - "description": "How the book was acquired", - "enum": [ - "FAMILY_SHARED", - "PREORDERED", - "PREVIOUSLY_RENTED", - "PUBLIC_DOMAIN", - "PURCHASED", - "RENTED", - "SAMPLE", - "UPLOADED" - ], - "enumDescriptions": [ - "Books acquired via Family Sharing", - "Preordered books (not yet available)", - "User-rented books past their expiration time", - "Public domain books", - "Purchased books", - "User-rented books", - "Sample books", - "User uploaded books" - ], - "repeated": true, - "location": "query" - }, - "country": { - "type": "string", - "description": "ISO-3166-1 code to override the IP-based location.", - "location": "query" - }, - "locale": { - "type": "string", - "description": "ISO-639-1 language and ISO-3166-1 country code. Ex:'en_US'. Used for generating recommendations.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "Maximum number of results to return.", - "format": "uint32", - "minimum": "0", - "maximum": "100", - "location": "query" - }, - "processingState": { - "type": "string", - "description": "The processing state of the user uploaded volumes to be returned. Applicable only if the UPLOADED is specified in the acquireMethod.", - "enum": [ - "COMPLETED_FAILED", - "COMPLETED_SUCCESS", - "RUNNING" - ], - "enumDescriptions": [ - "The volume processing hase failed.", - "The volume processing was completed.", - "The volume processing is not completed." - ], - "repeated": true, - "location": "query" - }, - "source": { - "type": "string", - "description": "String to identify the originator of this request.", - "location": "query" - }, - "startIndex": { - "type": "integer", - "description": "Index of the first result to return (starts at 0)", - "format": "uint32", - "minimum": "0", - "location": "query" - } - }, - "response": { - "$ref": "Volumes" - }, - "scopes": [ - "https://www.googleapis.com/auth/books" - ] - } - } - }, - "recommended": { - "methods": { - "list": { - "id": "books.volumes.recommended.list", - "path": "volumes/recommended", - "httpMethod": "GET", - "description": "Return a list of recommended books for the current user.", - "parameters": { - "locale": { - "type": "string", - "description": "ISO-639-1 language and ISO-3166-1 country code. Ex: 'en_US'. Used for generating recommendations.", - "location": "query" - }, - "maxAllowedMaturityRating": { - "type": "string", - "description": "The maximum allowed maturity rating of returned recommendations. Books with a higher maturity rating are filtered out.", - "enum": [ - "mature", - "not-mature" - ], - "enumDescriptions": [ - "Show books which are rated mature or lower.", - "Show books which are rated not mature." - ], - "location": "query" - }, - "source": { - "type": "string", - "description": "String to identify the originator of this request.", - "location": "query" - } - }, - "response": { - "$ref": "Volumes" - }, - "scopes": [ - "https://www.googleapis.com/auth/books" - ] - }, - "rate": { - "id": "books.volumes.recommended.rate", - "path": "volumes/recommended/rate", - "httpMethod": "POST", - "description": "Rate a recommended book for the current user.", - "parameters": { - "locale": { - "type": "string", - "description": "ISO-639-1 language and ISO-3166-1 country code. Ex: 'en_US'. Used for generating recommendations.", - "location": "query" + "kind": { + "default": "books#review", + "description": "Resource type for a review.", + "type": "string" }, "rating": { - "type": "string", - "description": "Rating to be given to the volume.", - "required": true, - "enum": [ - "HAVE_IT", - "NOT_INTERESTED" - ], - "enumDescriptions": [ - "Rating indicating a dismissal due to ownership.", - "Rating indicating a negative dismissal of a volume." - ], - "location": "query" + "description": "Star rating for this review. Possible values are ONE, TWO, THREE, FOUR, FIVE or NOT_RATED.", + "type": "string" }, "source": { - "type": "string", - "description": "String to identify the originator of this request.", - "location": "query" + "description": "Information regarding the source of this review, when the review is not from a Google Books user.", + "properties": { + "description": { + "description": "Name of the source.", + "type": "string" + }, + "extraDescription": { + "description": "Extra text about the source of the review.", + "type": "string" + }, + "url": { + "description": "URL of the source of the review.", + "type": "string" + } + }, + "type": "object" + }, + "title": { + "description": "Title for this review.", + "type": "string" + }, + "type": { + "description": "Source type for this review. Possible values are EDITORIAL, WEB_USER or GOOGLE_USER.", + "type": "string" }, "volumeId": { - "type": "string", - "description": "ID of the source volume.", - "required": true, - "location": "query" + "description": "Volume that this review is for.", + "type": "string" } - }, - "parameterOrder": [ - "rating", - "volumeId" - ], - "response": { - "$ref": "BooksVolumesRecommendedRateResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/books" - ] - } - } + }, + "type": "object" }, - "useruploaded": { - "methods": { - "list": { - "id": "books.volumes.useruploaded.list", - "path": "volumes/useruploaded", - "httpMethod": "GET", - "description": "Return a list of books uploaded by the current user.", - "parameters": { - "locale": { - "type": "string", - "description": "ISO-639-1 language and ISO-3166-1 country code. Ex: 'en_US'. Used for generating recommendations.", - "location": "query" + "Series": { + "id": "Series", + "properties": { + "kind": { + "default": "books#series", + "description": "Resource type.", + "type": "string" }, - "maxResults": { - "type": "integer", - "description": "Maximum number of results to return.", - "format": "uint32", - "minimum": "0", - "maximum": "40", - "location": "query" + "series": { + "items": { + "properties": { + "bannerImageUrl": { + "type": "string" + }, + "imageUrl": { + "type": "string" + }, + "seriesId": { + "type": "string" + }, + "seriesType": { + "type": "string" + }, + "title": { + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + } + }, + "type": "object" + }, + "Seriesmembership": { + "id": "Seriesmembership", + "properties": { + "kind": { + "default": "books#series#membership", + "description": "Resorce type.", + "type": "string" }, - "processingState": { - "type": "string", - "description": "The processing state of the user uploaded volumes to be returned.", - "enum": [ - "COMPLETED_FAILED", - "COMPLETED_SUCCESS", - "RUNNING" - ], - "enumDescriptions": [ - "The volume processing hase failed.", - "The volume processing was completed.", - "The volume processing is not completed." - ], - "repeated": true, - "location": "query" + "member": { + "items": { + "$ref": "Volume" + }, + "type": "array" }, - "source": { - "type": "string", - "description": "String to identify the originator of this request.", - "location": "query" + "nextPageToken": { + "type": "string" + } + }, + "type": "object" + }, + "Usersettings": { + "id": "Usersettings", + "properties": { + "kind": { + "default": "books#usersettings", + "description": "Resource type.", + "type": "string" }, - "startIndex": { - "type": "integer", - "description": "Index of the first result to return (starts at 0)", - "format": "uint32", - "minimum": "0", - "location": "query" + "notesExport": { + "description": "User settings in sub-objects, each for different purposes.", + "properties": { + "folderName": { + "type": "string" + }, + "isEnabled": { + "type": "boolean" + } + }, + "type": "object" + }, + "notification": { + "properties": { + "matchMyInterests": { + "properties": { + "opted_state": { + "type": "string" + } + }, + "type": "object" + }, + "moreFromAuthors": { + "properties": { + "opted_state": { + "type": "string" + } + }, + "type": "object" + }, + "moreFromSeries": { + "properties": { + "opted_state": { + "type": "string" + } + }, + "type": "object" + }, + "priceDrop": { + "properties": { + "opted_state": { + "type": "string" + } + }, + "type": "object" + }, + "rewardExpirations": { + "properties": { + "opted_state": { + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "Volume": { + "id": "Volume", + "properties": { + "accessInfo": { + "description": "Any information about a volume related to reading or obtaining that volume text. This information can depend on country (books may be public domain in one country but not in another, e.g.).", + "properties": { + "accessViewStatus": { + "description": "Combines the access and viewability of this volume into a single status field for this user. Values can be FULL_PURCHASED, FULL_PUBLIC_DOMAIN, SAMPLE or NONE. (In LITE projection.)", + "type": "string" + }, + "country": { + "description": "The two-letter ISO_3166-1 country code for which this access information is valid. (In LITE projection.)", + "type": "string" + }, + "downloadAccess": { + "$ref": "DownloadAccessRestriction", + "description": "Information about a volume's download license access restrictions." + }, + "driveImportedContentLink": { + "description": "URL to the Google Drive viewer if this volume is uploaded by the user by selecting the file from Google Drive.", + "type": "string" + }, + "embeddable": { + "description": "Whether this volume can be embedded in a viewport using the Embedded Viewer API.", + "type": "boolean" + }, + "epub": { + "description": "Information about epub content. (In LITE projection.)", + "properties": { + "acsTokenLink": { + "description": "URL to retrieve ACS token for epub download. (In LITE projection.)", + "type": "string" + }, + "downloadLink": { + "description": "URL to download epub. (In LITE projection.)", + "type": "string" + }, + "isAvailable": { + "description": "Is a flowing text epub available either as public domain or for purchase. (In LITE projection.)", + "type": "boolean" + } + }, + "type": "object" + }, + "explicitOfflineLicenseManagement": { + "description": "Whether this volume requires that the client explicitly request offline download license rather than have it done automatically when loading the content, if the client supports it.", + "type": "boolean" + }, + "pdf": { + "description": "Information about pdf content. (In LITE projection.)", + "properties": { + "acsTokenLink": { + "description": "URL to retrieve ACS token for pdf download. (In LITE projection.)", + "type": "string" + }, + "downloadLink": { + "description": "URL to download pdf. (In LITE projection.)", + "type": "string" + }, + "isAvailable": { + "description": "Is a scanned image pdf available either as public domain or for purchase. (In LITE projection.)", + "type": "boolean" + } + }, + "type": "object" + }, + "publicDomain": { + "description": "Whether or not this book is public domain in the country listed above.", + "type": "boolean" + }, + "quoteSharingAllowed": { + "description": "Whether quote sharing is allowed for this volume.", + "type": "boolean" + }, + "textToSpeechPermission": { + "description": "Whether text-to-speech is permitted for this volume. Values can be ALLOWED, ALLOWED_FOR_ACCESSIBILITY, or NOT_ALLOWED.", + "type": "string" + }, + "viewOrderUrl": { + "description": "For ordered but not yet processed orders, we give a URL that can be used to go to the appropriate Google Wallet page.", + "type": "string" + }, + "viewability": { + "description": "The read access of a volume. Possible values are PARTIAL, ALL_PAGES, NO_PAGES or UNKNOWN. This value depends on the country listed above. A value of PARTIAL means that the publisher has allowed some portion of the volume to be viewed publicly, without purchase. This can apply to eBooks as well as non-eBooks. Public domain books will always have a value of ALL_PAGES.", + "type": "string" + }, + "webReaderLink": { + "description": "URL to read this volume on the Google Books site. Link will not allow users to read non-viewable volumes.", + "type": "string" + } + }, + "type": "object" + }, + "etag": { + "description": "Opaque identifier for a specific version of a volume resource. (In LITE projection)", + "type": "string" + }, + "id": { + "description": "Unique identifier for a volume. (In LITE projection.)", + "type": "string" + }, + "kind": { + "default": "books#volume", + "description": "Resource type for a volume. (In LITE projection.)", + "type": "string" + }, + "layerInfo": { + "description": "What layers exist in this volume and high level information about them.", + "properties": { + "layers": { + "description": "A layer should appear here if and only if the layer exists for this book.", + "items": { + "properties": { + "layerId": { + "description": "The layer id of this layer (e.g. \"geo\").", + "type": "string" + }, + "volumeAnnotationsVersion": { + "description": "The current version of this layer's volume annotations. Note that this version applies only to the data in the books.layers.volumeAnnotations.* responses. The actual annotation data is versioned separately.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + } + }, + "type": "object" + }, + "recommendedInfo": { + "description": "Recommendation related information for this volume.", + "properties": { + "explanation": { + "description": "A text explaining why this volume is recommended.", + "type": "string" + } + }, + "type": "object" + }, + "saleInfo": { + "description": "Any information about a volume related to the eBookstore and/or purchaseability. This information can depend on the country where the request originates from (i.e. books may not be for sale in certain countries).", + "properties": { + "buyLink": { + "description": "URL to purchase this volume on the Google Books site. (In LITE projection)", + "type": "string" + }, + "country": { + "description": "The two-letter ISO_3166-1 country code for which this sale information is valid. (In LITE projection.)", + "type": "string" + }, + "isEbook": { + "description": "Whether or not this volume is an eBook (can be added to the My eBooks shelf).", + "type": "boolean" + }, + "listPrice": { + "description": "Suggested retail price. (In LITE projection.)", + "properties": { + "amount": { + "description": "Amount in the currency listed below. (In LITE projection.)", + "format": "double", + "type": "number" + }, + "currencyCode": { + "description": "An ISO 4217, three-letter currency code. (In LITE projection.)", + "type": "string" + } + }, + "type": "object" + }, + "offers": { + "description": "Offers available for this volume (sales and rentals).", + "items": { + "properties": { + "finskyOfferType": { + "description": "The finsky offer type (e.g., PURCHASE=0 RENTAL=3)", + "format": "int32", + "type": "integer" + }, + "giftable": { + "description": "Indicates whether the offer is giftable.", + "type": "boolean" + }, + "listPrice": { + "description": "Offer list (=undiscounted) price in Micros.", + "properties": { + "amountInMicros": { + "format": "double", + "type": "number" + }, + "currencyCode": { + "type": "string" + } + }, + "type": "object" + }, + "rentalDuration": { + "description": "The rental duration (for rental offers only).", + "properties": { + "count": { + "format": "double", + "type": "number" + }, + "unit": { + "type": "string" + } + }, + "type": "object" + }, + "retailPrice": { + "description": "Offer retail (=discounted) price in Micros", + "properties": { + "amountInMicros": { + "format": "double", + "type": "number" + }, + "currencyCode": { + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "type": "array" + }, + "onSaleDate": { + "description": "The date on which this book is available for sale.", + "format": "date-time", + "type": "string" + }, + "retailPrice": { + "description": "The actual selling price of the book. This is the same as the suggested retail or list price unless there are offers or discounts on this volume. (In LITE projection.)", + "properties": { + "amount": { + "description": "Amount in the currency listed below. (In LITE projection.)", + "format": "double", + "type": "number" + }, + "currencyCode": { + "description": "An ISO 4217, three-letter currency code. (In LITE projection.)", + "type": "string" + } + }, + "type": "object" + }, + "saleability": { + "description": "Whether or not this book is available for sale or offered for free in the Google eBookstore for the country listed above. Possible values are FOR_SALE, FOR_RENTAL_ONLY, FOR_SALE_AND_RENTAL, FREE, NOT_FOR_SALE, or FOR_PREORDER.", + "type": "string" + } + }, + "type": "object" + }, + "searchInfo": { + "description": "Search result information related to this volume.", + "properties": { + "textSnippet": { + "description": "A text snippet containing the search query.", + "type": "string" + } + }, + "type": "object" + }, + "selfLink": { + "description": "URL to this resource. (In LITE projection.)", + "type": "string" + }, + "userInfo": { + "description": "User specific information related to this volume. (e.g. page this user last read or whether they purchased this book)", + "properties": { + "acquiredTime": { + "description": "Timestamp when this volume was acquired by the user. (RFC 3339 UTC date-time format) Acquiring includes purchase, user upload, receiving family sharing, etc.", + "format": "date-time", + "type": "string" + }, + "acquisitionType": { + "description": "How this volume was acquired.", + "format": "int32", + "type": "integer" + }, + "copy": { + "description": "Copy/Paste accounting information.", + "properties": { + "allowedCharacterCount": { + "format": "int32", + "type": "integer" + }, + "limitType": { + "type": "string" + }, + "remainingCharacterCount": { + "format": "int32", + "type": "integer" + }, + "updated": { + "format": "date-time", + "type": "string" + } + }, + "type": "object" + }, + "entitlementType": { + "description": "Whether this volume is purchased, sample, pd download etc.", + "format": "int32", + "type": "integer" + }, + "familySharing": { + "description": "Information on the ability to share with the family.", + "properties": { + "familyRole": { + "description": "The role of the user in the family.", + "type": "string" + }, + "isSharingAllowed": { + "description": "Whether or not this volume can be shared with the family by the user. This includes sharing eligibility of both the volume and the user. If the value is true, the user can initiate a family sharing action.", + "type": "boolean" + }, + "isSharingDisabledByFop": { + "description": "Whether or not sharing this volume is temporarily disabled due to issues with the Family Wallet.", + "type": "boolean" + } + }, + "type": "object" + }, + "isFamilySharedFromUser": { + "description": "Whether or not the user shared this volume with the family.", + "type": "boolean" + }, + "isFamilySharedToUser": { + "description": "Whether or not the user received this volume through family sharing.", + "type": "boolean" + }, + "isFamilySharingAllowed": { + "description": "Deprecated: Replaced by familySharing.", + "type": "boolean" + }, + "isFamilySharingDisabledByFop": { + "description": "Deprecated: Replaced by familySharing.", + "type": "boolean" + }, + "isInMyBooks": { + "description": "Whether or not this volume is currently in \"my books.\"", + "type": "boolean" + }, + "isPreordered": { + "description": "Whether or not this volume was pre-ordered by the authenticated user making the request. (In LITE projection.)", + "type": "boolean" + }, + "isPurchased": { + "description": "Whether or not this volume was purchased by the authenticated user making the request. (In LITE projection.)", + "type": "boolean" + }, + "isUploaded": { + "description": "Whether or not this volume was user uploaded.", + "type": "boolean" + }, + "readingPosition": { + "$ref": "ReadingPosition", + "description": "The user's current reading position in the volume, if one is available. (In LITE projection.)" + }, + "rentalPeriod": { + "description": "Period during this book is/was a valid rental.", + "properties": { + "endUtcSec": { + "format": "int64", + "type": "string" + }, + "startUtcSec": { + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "rentalState": { + "description": "Whether this book is an active or an expired rental.", + "type": "string" + }, + "review": { + "$ref": "Review", + "description": "This user's review of this volume, if one exists." + }, + "updated": { + "description": "Timestamp when this volume was last modified by a user action, such as a reading position update, volume purchase or writing a review. (RFC 3339 UTC date-time format).", + "format": "date-time", + "type": "string" + }, + "userUploadedVolumeInfo": { + "properties": { + "processingState": { + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "volumeInfo": { + "description": "General volume information.", + "properties": { + "allowAnonLogging": { + "description": "Whether anonymous logging should be allowed.", + "type": "boolean" + }, + "authors": { + "description": "The names of the authors and/or editors for this volume. (In LITE projection)", + "items": { + "type": "string" + }, + "type": "array" + }, + "averageRating": { + "description": "The mean review rating for this volume. (min = 1.0, max = 5.0)", + "format": "double", + "type": "number" + }, + "canonicalVolumeLink": { + "description": "Canonical URL for a volume. (In LITE projection.)", + "type": "string" + }, + "categories": { + "description": "A list of subject categories, such as \"Fiction\", \"Suspense\", etc.", + "items": { + "type": "string" + }, + "type": "array" + }, + "contentVersion": { + "description": "An identifier for the version of the volume content (text \u0026 images). (In LITE projection)", + "type": "string" + }, + "description": { + "description": "A synopsis of the volume. The text of the description is formatted in HTML and includes simple formatting elements, such as b, i, and br tags. (In LITE projection.)", + "type": "string" + }, + "dimensions": { + "description": "Physical dimensions of this volume.", + "properties": { + "height": { + "description": "Height or length of this volume (in cm).", + "type": "string" + }, + "thickness": { + "description": "Thickness of this volume (in cm).", + "type": "string" + }, + "width": { + "description": "Width of this volume (in cm).", + "type": "string" + } + }, + "type": "object" + }, + "imageLinks": { + "description": "A list of image links for all the sizes that are available. (In LITE projection.)", + "properties": { + "extraLarge": { + "description": "Image link for extra large size (width of ~1280 pixels). (In LITE projection)", + "type": "string" + }, + "large": { + "description": "Image link for large size (width of ~800 pixels). (In LITE projection)", + "type": "string" + }, + "medium": { + "description": "Image link for medium size (width of ~575 pixels). (In LITE projection)", + "type": "string" + }, + "small": { + "description": "Image link for small size (width of ~300 pixels). (In LITE projection)", + "type": "string" + }, + "smallThumbnail": { + "description": "Image link for small thumbnail size (width of ~80 pixels). (In LITE projection)", + "type": "string" + }, + "thumbnail": { + "description": "Image link for thumbnail size (width of ~128 pixels). (In LITE projection)", + "type": "string" + } + }, + "type": "object" + }, + "industryIdentifiers": { + "description": "Industry standard identifiers for this volume.", + "items": { + "properties": { + "identifier": { + "description": "Industry specific volume identifier.", + "type": "string" + }, + "type": { + "description": "Identifier type. Possible values are ISBN_10, ISBN_13, ISSN and OTHER.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "infoLink": { + "description": "URL to view information about this volume on the Google Books site. (In LITE projection)", + "type": "string" + }, + "language": { + "description": "Best language for this volume (based on content). It is the two-letter ISO 639-1 code such as 'fr', 'en', etc.", + "type": "string" + }, + "mainCategory": { + "description": "The main category to which this volume belongs. It will be the category from the categories list returned below that has the highest weight.", + "type": "string" + }, + "maturityRating": { + "type": "string" + }, + "pageCount": { + "description": "Total number of pages as per publisher metadata.", + "format": "int32", + "type": "integer" + }, + "panelizationSummary": { + "description": "A top-level summary of the panelization info in this volume.", + "properties": { + "containsEpubBubbles": { + "type": "boolean" + }, + "containsImageBubbles": { + "type": "boolean" + }, + "epubBubbleVersion": { + "type": "string" + }, + "imageBubbleVersion": { + "type": "string" + } + }, + "type": "object" + }, + "previewLink": { + "description": "URL to preview this volume on the Google Books site.", + "type": "string" + }, + "printType": { + "description": "Type of publication of this volume. Possible values are BOOK or MAGAZINE.", + "type": "string" + }, + "printedPageCount": { + "description": "Total number of printed pages in generated pdf representation.", + "format": "int32", + "type": "integer" + }, + "publishedDate": { + "description": "Date of publication. (In LITE projection.)", + "type": "string" + }, + "publisher": { + "description": "Publisher of this volume. (In LITE projection.)", + "type": "string" + }, + "ratingsCount": { + "description": "The number of review ratings for this volume.", + "format": "int32", + "type": "integer" + }, + "readingModes": { + "description": "The reading modes available for this volume.", + "type": "any" + }, + "samplePageCount": { + "description": "Total number of sample pages as per publisher metadata.", + "format": "int32", + "type": "integer" + }, + "seriesInfo": { + "$ref": "Volumeseriesinfo" + }, + "subtitle": { + "description": "Volume subtitle. (In LITE projection.)", + "type": "string" + }, + "title": { + "description": "Volume title. (In LITE projection.)", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "Volume2": { + "id": "Volume2", + "properties": { + "items": { + "description": "A list of volumes.", + "items": { + "$ref": "Volume" + }, + "type": "array" + }, + "kind": { + "default": "onboarding#volume", + "description": "Resource type.", + "type": "string" + }, + "nextPageToken": { + "type": "string" + } + }, + "type": "object" + }, + "Volumeannotation": { + "id": "Volumeannotation", + "properties": { + "annotationDataId": { + "description": "The annotation data id for this volume annotation.", + "type": "string" + }, + "annotationDataLink": { + "description": "Link to get data for this annotation.", + "type": "string" + }, + "annotationType": { + "description": "The type of annotation this is.", + "type": "string" + }, + "contentRanges": { + "description": "The content ranges to identify the selected text.", + "properties": { + "cfiRange": { + "$ref": "BooksAnnotationsRange", + "description": "Range in CFI format for this annotation for version above." + }, + "contentVersion": { + "description": "Content version applicable to ranges below.", + "type": "string" + }, + "gbImageRange": { + "$ref": "BooksAnnotationsRange", + "description": "Range in GB image format for this annotation for version above." + }, + "gbTextRange": { + "$ref": "BooksAnnotationsRange", + "description": "Range in GB text format for this annotation for version above." + } + }, + "type": "object" + }, + "data": { + "description": "Data for this annotation.", + "type": "string" + }, + "deleted": { + "description": "Indicates that this annotation is deleted.", + "type": "boolean" + }, + "id": { + "description": "Unique id of this volume annotation.", + "type": "string" + }, + "kind": { + "default": "books#volumeannotation", + "description": "Resource Type", + "type": "string" + }, + "layerId": { + "description": "The Layer this annotation is for.", + "type": "string" + }, + "pageIds": { + "description": "Pages the annotation spans.", + "items": { + "type": "string" + }, + "type": "array" + }, + "selectedText": { + "description": "Excerpt from the volume.", + "type": "string" + }, + "selfLink": { + "description": "URL to this resource.", + "type": "string" + }, + "updated": { + "description": "Timestamp for the last time this anntoation was updated. (RFC 3339 UTC date-time format).", + "format": "date-time", + "type": "string" }, "volumeId": { - "type": "string", - "description": "The ids of the volumes to be returned. If not specified all that match the processingState are returned.", - "repeated": true, - "location": "query" + "description": "The Volume this annotation is for.", + "type": "string" } - }, - "response": { - "$ref": "Volumes" - }, - "scopes": [ - "https://www.googleapis.com/auth/books" - ] - } - } + }, + "type": "object" + }, + "Volumeannotations": { + "id": "Volumeannotations", + "properties": { + "items": { + "description": "A list of volume annotations.", + "items": { + "$ref": "Volumeannotation" + }, + "type": "array" + }, + "kind": { + "default": "books#volumeannotations", + "description": "Resource type", + "type": "string" + }, + "nextPageToken": { + "description": "Token to pass in for pagination for the next page. This will not be present if this request does not have more results.", + "type": "string" + }, + "totalItems": { + "description": "The total number of volume annotations found.", + "format": "int32", + "type": "integer" + }, + "version": { + "description": "The version string for all of the volume annotations in this layer (not just the ones in this response). Note: the version string doesn't apply to the annotation data, just the information in this response (e.g. the location of annotations in the book).", + "type": "string" + } + }, + "type": "object" + }, + "Volumes": { + "id": "Volumes", + "properties": { + "items": { + "description": "A list of volumes.", + "items": { + "$ref": "Volume" + }, + "type": "array" + }, + "kind": { + "default": "books#volumes", + "description": "Resource type.", + "type": "string" + }, + "totalItems": { + "description": "Total number of volumes found. This might be greater than the number of volumes returned in this response if results have been paginated.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "Volumeseriesinfo": { + "id": "Volumeseriesinfo", + "properties": { + "bookDisplayNumber": { + "description": "The display number string. This should be used only for display purposes and the actual sequence should be inferred from the below orderNumber.", + "type": "string" + }, + "kind": { + "default": "books#volume_series_info", + "description": "Resource type.", + "type": "string" + }, + "shortSeriesBookTitle": { + "description": "Short book title in the context of the series.", + "type": "string" + }, + "volumeSeries": { + "items": { + "properties": { + "issue": { + "description": "List of issues. Applicable only for Collection Edition and Omnibus.", + "items": { + "properties": { + "issueDisplayNumber": { + "type": "string" + }, + "issueOrderNumber": { + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "type": "array" + }, + "orderNumber": { + "description": "The book order number in the series.", + "format": "int32", + "type": "integer" + }, + "seriesBookType": { + "description": "The book type in the context of series. Examples - Single Issue, Collection Edition, etc.", + "type": "string" + }, + "seriesId": { + "description": "The series id.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + } + }, + "type": "object" } - } - } - } -} + }, + "servicePath": "books/v1/", + "title": "Books API", + "version": "v1" +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/calendar/v3/calendar-api.json b/vendor/google.golang.org/api/calendar/v3/calendar-api.json index 0203c781f..1240c04c4 100644 --- a/vendor/google.golang.org/api/calendar/v3/calendar-api.json +++ b/vendor/google.golang.org/api/calendar/v3/calendar-api.json @@ -1,2867 +1,2893 @@ { - "kind": "discovery#restDescription", - "etag": "\"YWOzh2SDasdU84ArJnpYek-OMdg/BXRSlYDfsDJfIj56UYVQoal0GSY\"", - "discoveryVersion": "v1", - "id": "calendar:v3", - "name": "calendar", - "version": "v3", - "revision": "20180107", - "title": "Calendar API", - "description": "Manipulates events and other calendar data.", - "ownerDomain": "google.com", - "ownerName": "Google", - "icons": { - "x16": "http://www.google.com/images/icons/product/calendar-16.png", - "x32": "http://www.google.com/images/icons/product/calendar-32.png" - }, - "documentationLink": "https://developers.google.com/google-apps/calendar/firstapp", - "protocol": "rest", - "baseUrl": "https://www.googleapis.com/calendar/v3/", - "basePath": "/calendar/v3/", - "rootUrl": "https://www.googleapis.com/", - "servicePath": "calendar/v3/", - "batchPath": "batch/calendar/v3", - "parameters": { - "alt": { - "type": "string", - "description": "Data format for the response.", - "default": "json", - "enum": [ - "json" - ], - "enumDescriptions": [ - "Responses with Content-Type of application/json" - ], - "location": "query" - }, - "fields": { - "type": "string", - "description": "Selector specifying which fields to include in a partial response.", - "location": "query" - }, - "key": { - "type": "string", - "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" - }, - "oauth_token": { - "type": "string", - "description": "OAuth 2.0 token for the current user.", - "location": "query" - }, - "prettyPrint": { - "type": "boolean", - "description": "Returns response with indentations and line breaks.", - "default": "true", - "location": "query" - }, - "quotaUser": { - "type": "string", - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", - "location": "query" - }, - "userIp": { - "type": "string", - "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", - "location": "query" - } - }, - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/calendar": { - "description": "Manage your calendars" - }, - "https://www.googleapis.com/auth/calendar.readonly": { - "description": "View your calendars" - } - } - } - }, - "schemas": { - "Acl": { - "id": "Acl", - "type": "object", - "properties": { - "etag": { - "type": "string", - "description": "ETag of the collection." - }, - "items": { - "type": "array", - "description": "List of rules on the access control list.", - "items": { - "$ref": "AclRule" - } - }, - "kind": { - "type": "string", - "description": "Type of the collection (\"calendar#acl\").", - "default": "calendar#acl" - }, - "nextPageToken": { - "type": "string", - "description": "Token used to access the next page of this result. Omitted if no further results are available, in which case nextSyncToken is provided." - }, - "nextSyncToken": { - "type": "string", - "description": "Token used at a later point in time to retrieve only the entries that have changed since this result was returned. Omitted if further results are available, in which case nextPageToken is provided." - } - } - }, - "AclRule": { - "id": "AclRule", - "type": "object", - "properties": { - "etag": { - "type": "string", - "description": "ETag of the resource." - }, - "id": { - "type": "string", - "description": "Identifier of the ACL rule." - }, - "kind": { - "type": "string", - "description": "Type of the resource (\"calendar#aclRule\").", - "default": "calendar#aclRule" - }, - "role": { - "type": "string", - "description": "The role assigned to the scope. Possible values are: \n- \"none\" - Provides no access. \n- \"freeBusyReader\" - Provides read access to free/busy information. \n- \"reader\" - Provides read access to the calendar. Private events will appear to users with reader access, but event details will be hidden. \n- \"writer\" - Provides read and write access to the calendar. Private events will appear to users with writer access, and event details will be visible. \n- \"owner\" - Provides ownership of the calendar. This role has all of the permissions of the writer role with the additional ability to see and manipulate ACLs.", - "annotations": { - "required": [ - "calendar.acl.insert" - ] - } - }, - "scope": { - "type": "object", - "description": "The scope of the rule.", - "properties": { - "type": { - "type": "string", - "description": "The type of the scope. Possible values are: \n- \"default\" - The public scope. This is the default value. \n- \"user\" - Limits the scope to a single user. \n- \"group\" - Limits the scope to a group. \n- \"domain\" - Limits the scope to a domain. Note: The permissions granted to the \"default\", or public, scope apply to any user, authenticated or not.", - "annotations": { - "required": [ - "calendar.acl.insert" - ] - } - }, - "value": { - "type": "string", - "description": "The email address of a user or group, or the name of a domain, depending on the scope type. Omitted for type \"default\"." + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/calendar": { + "description": "Manage your calendars" + }, + "https://www.googleapis.com/auth/calendar.readonly": { + "description": "View your calendars" + } } - }, - "annotations": { - "required": [ - "calendar.acl.insert" - ] - } } - } }, - "Calendar": { - "id": "Calendar", - "type": "object", - "properties": { - "conferenceProperties": { - "$ref": "ConferenceProperties", - "description": "Conferencing properties for this calendar, for example what types of conferences are allowed." - }, - "description": { - "type": "string", - "description": "Description of the calendar. Optional." - }, - "etag": { - "type": "string", - "description": "ETag of the resource." - }, - "id": { - "type": "string", - "description": "Identifier of the calendar. To retrieve IDs call the calendarList.list() method." - }, - "kind": { - "type": "string", - "description": "Type of the resource (\"calendar#calendar\").", - "default": "calendar#calendar" - }, - "location": { - "type": "string", - "description": "Geographic location of the calendar as free-form text. Optional." - }, - "summary": { - "type": "string", - "description": "Title of the calendar.", - "annotations": { - "required": [ - "calendar.calendars.insert" - ] - } - }, - "timeZone": { - "type": "string", - "description": "The time zone of the calendar. (Formatted as an IANA Time Zone Database name, e.g. \"Europe/Zurich\".) Optional." - } - } + "basePath": "/calendar/v3/", + "baseUrl": "https://www.googleapis.com/calendar/v3/", + "batchPath": "batch/calendar/v3", + "description": "Manipulates events and other calendar data.", + "discoveryVersion": "v1", + "documentationLink": "https://developers.google.com/google-apps/calendar/firstapp", + "etag": "\"-iA1DTNe4s-I6JZXPt1t1Ypy8IU/kSq0jkvZ-MPIEPJItiswQ2txlEk\"", + "icons": { + "x16": "http://www.google.com/images/icons/product/calendar-16.png", + "x32": "http://www.google.com/images/icons/product/calendar-32.png" }, - "CalendarList": { - "id": "CalendarList", - "type": "object", - "properties": { - "etag": { - "type": "string", - "description": "ETag of the collection." - }, - "items": { - "type": "array", - "description": "Calendars that are present on the user's calendar list.", - "items": { - "$ref": "CalendarListEntry" - } - }, - "kind": { - "type": "string", - "description": "Type of the collection (\"calendar#calendarList\").", - "default": "calendar#calendarList" - }, - "nextPageToken": { - "type": "string", - "description": "Token used to access the next page of this result. Omitted if no further results are available, in which case nextSyncToken is provided." - }, - "nextSyncToken": { - "type": "string", - "description": "Token used at a later point in time to retrieve only the entries that have changed since this result was returned. Omitted if further results are available, in which case nextPageToken is provided." - } - } - }, - "CalendarListEntry": { - "id": "CalendarListEntry", - "type": "object", - "properties": { - "accessRole": { - "type": "string", - "description": "The effective access role that the authenticated user has on the calendar. Read-only. Possible values are: \n- \"freeBusyReader\" - Provides read access to free/busy information. \n- \"reader\" - Provides read access to the calendar. Private events will appear to users with reader access, but event details will be hidden. \n- \"writer\" - Provides read and write access to the calendar. Private events will appear to users with writer access, and event details will be visible. \n- \"owner\" - Provides ownership of the calendar. This role has all of the permissions of the writer role with the additional ability to see and manipulate ACLs." - }, - "backgroundColor": { - "type": "string", - "description": "The main color of the calendar in the hexadecimal format \"#0088aa\". This property supersedes the index-based colorId property. To set or change this property, you need to specify colorRgbFormat=true in the parameters of the insert, update and patch methods. Optional." - }, - "colorId": { - "type": "string", - "description": "The color of the calendar. This is an ID referring to an entry in the calendar section of the colors definition (see the colors endpoint). This property is superseded by the backgroundColor and foregroundColor properties and can be ignored when using these properties. Optional." - }, - "conferenceProperties": { - "$ref": "ConferenceProperties", - "description": "Conferencing properties for this calendar, for example what types of conferences are allowed." - }, - "defaultReminders": { - "type": "array", - "description": "The default reminders that the authenticated user has for this calendar.", - "items": { - "$ref": "EventReminder" - } - }, - "deleted": { - "type": "boolean", - "description": "Whether this calendar list entry has been deleted from the calendar list. Read-only. Optional. The default is False.", - "default": "false" - }, - "description": { - "type": "string", - "description": "Description of the calendar. Optional. Read-only." - }, - "etag": { - "type": "string", - "description": "ETag of the resource." - }, - "foregroundColor": { - "type": "string", - "description": "The foreground color of the calendar in the hexadecimal format \"#ffffff\". This property supersedes the index-based colorId property. To set or change this property, you need to specify colorRgbFormat=true in the parameters of the insert, update and patch methods. Optional." - }, - "hidden": { - "type": "boolean", - "description": "Whether the calendar has been hidden from the list. Optional. The default is False.", - "default": "false" - }, - "id": { - "type": "string", - "description": "Identifier of the calendar.", - "annotations": { - "required": [ - "calendar.calendarList.insert" - ] - } - }, - "kind": { - "type": "string", - "description": "Type of the resource (\"calendar#calendarListEntry\").", - "default": "calendar#calendarListEntry" - }, - "location": { - "type": "string", - "description": "Geographic location of the calendar as free-form text. Optional. Read-only." - }, - "notificationSettings": { - "type": "object", - "description": "The notifications that the authenticated user is receiving for this calendar.", - "properties": { - "notifications": { - "type": "array", - "description": "The list of notifications set for this calendar.", - "items": { - "$ref": "CalendarNotification" - } - } - } - }, - "primary": { - "type": "boolean", - "description": "Whether the calendar is the primary calendar of the authenticated user. Read-only. Optional. The default is False.", - "default": "false" - }, - "selected": { - "type": "boolean", - "description": "Whether the calendar content shows up in the calendar UI. Optional. The default is False.", - "default": "false" - }, - "summary": { - "type": "string", - "description": "Title of the calendar. Read-only." - }, - "summaryOverride": { - "type": "string", - "description": "The summary that the authenticated user has set for this calendar. Optional." - }, - "timeZone": { - "type": "string", - "description": "The time zone of the calendar. Optional. Read-only." - } - } - }, - "CalendarNotification": { - "id": "CalendarNotification", - "type": "object", - "properties": { - "method": { - "type": "string", - "description": "The method used to deliver the notification. Possible values are: \n- \"email\" - Reminders are sent via email. \n- \"sms\" - Reminders are sent via SMS. This value is read-only and is ignored on inserts and updates. SMS reminders are only available for G Suite customers.", - "annotations": { - "required": [ - "calendar.calendarList.insert", - "calendar.calendarList.update" - ] - } - }, - "type": { - "type": "string", - "description": "The type of notification. Possible values are: \n- \"eventCreation\" - Notification sent when a new event is put on the calendar. \n- \"eventChange\" - Notification sent when an event is changed. \n- \"eventCancellation\" - Notification sent when an event is cancelled. \n- \"eventResponse\" - Notification sent when an event is changed. \n- \"agenda\" - An agenda with the events of the day (sent out in the morning).", - "annotations": { - "required": [ - "calendar.calendarList.insert", - "calendar.calendarList.update" - ] - } - } - } - }, - "Channel": { - "id": "Channel", - "type": "object", - "properties": { - "address": { - "type": "string", - "description": "The address where notifications are delivered for this channel." - }, - "expiration": { - "type": "string", - "description": "Date and time of notification channel expiration, expressed as a Unix timestamp, in milliseconds. Optional.", - "format": "int64" - }, - "id": { - "type": "string", - "description": "A UUID or similar unique string that identifies this channel." - }, - "kind": { - "type": "string", - "description": "Identifies this as a notification channel used to watch for changes to a resource. Value: the fixed string \"api#channel\".", - "default": "api#channel" - }, - "params": { - "type": "object", - "description": "Additional parameters controlling delivery channel behavior. Optional.", - "additionalProperties": { - "type": "string", - "description": "Declares a new parameter by name." - } - }, - "payload": { - "type": "boolean", - "description": "A Boolean value to indicate whether payload is wanted. Optional." - }, - "resourceId": { - "type": "string", - "description": "An opaque ID that identifies the resource being watched on this channel. Stable across different API versions." - }, - "resourceUri": { - "type": "string", - "description": "A version-specific identifier for the watched resource." - }, - "token": { - "type": "string", - "description": "An arbitrary string delivered to the target address with each notification delivered over this channel. Optional." - }, - "type": { - "type": "string", - "description": "The type of delivery mechanism used for this channel." - } - } - }, - "ColorDefinition": { - "id": "ColorDefinition", - "type": "object", - "properties": { - "background": { - "type": "string", - "description": "The background color associated with this color definition." - }, - "foreground": { - "type": "string", - "description": "The foreground color that can be used to write on top of a background with 'background' color." - } - } - }, - "Colors": { - "id": "Colors", - "type": "object", - "properties": { - "calendar": { - "type": "object", - "description": "A global palette of calendar colors, mapping from the color ID to its definition. A calendarListEntry resource refers to one of these color IDs in its color field. Read-only.", - "additionalProperties": { - "$ref": "ColorDefinition", - "description": "A calendar color defintion." - } - }, - "event": { - "type": "object", - "description": "A global palette of event colors, mapping from the color ID to its definition. An event resource may refer to one of these color IDs in its color field. Read-only.", - "additionalProperties": { - "$ref": "ColorDefinition", - "description": "An event color definition." - } - }, - "kind": { - "type": "string", - "description": "Type of the resource (\"calendar#colors\").", - "default": "calendar#colors" - }, - "updated": { - "type": "string", - "description": "Last modification time of the color palette (as a RFC3339 timestamp). Read-only.", - "format": "date-time" - } - } - }, - "ConferenceData": { - "id": "ConferenceData", - "type": "object", - "properties": { - "conferenceId": { - "type": "string", - "description": "The ID of the conference.\nCan be used by developers to keep track of conferences, should not be displayed to users.\nValues for solution types: \n- \"eventHangout\": unset.\n- \"eventNamedHangout\": the name of the Hangout.\n- \"hangoutsMeet\": the 10-letter meeting code, for example \"aaa-bbbb-ccc\". Optional." - }, - "conferenceSolution": { - "$ref": "ConferenceSolution", - "description": "The conference solution, such as Hangouts or Hangouts Meet.\nUnset for a conference with a failed create request.\nEither conferenceSolution and at least one entryPoint, or createRequest is required." - }, - "createRequest": { - "$ref": "CreateConferenceRequest", - "description": "A request to generate a new conference and attach it to the event. The data is generated asynchronously. To see whether the data is present check the status field.\nEither conferenceSolution and at least one entryPoint, or createRequest is required." - }, - "entryPoints": { - "type": "array", - "description": "Information about individual conference entry points, such as URLs or phone numbers.\nAll of them must belong to the same conference.\nEither conferenceSolution and at least one entryPoint, or createRequest is required.", - "items": { - "$ref": "EntryPoint" - } - }, - "notes": { - "type": "string", - "description": "Additional notes (such as instructions from the domain administrator, legal notices) to display to the user. Can contain HTML. The maximum length is 2048 characters. Optional." - }, - "signature": { - "type": "string", - "description": "The signature of the conference data.\nGenereated on server side. Must be preserved while copying the conference data between events, otherwise the conference data will not be copied.\nUnset for a conference with a failed create request.\nOptional for a conference with a pending create request." - } - } - }, - "ConferenceProperties": { - "id": "ConferenceProperties", - "type": "object", - "properties": { - "allowedConferenceSolutionTypes": { - "type": "array", - "description": "The types of conference solutions that are supported for this calendar.\nThe possible values are: \n- \"eventHangout\" \n- \"eventNamedHangout\" \n- \"hangoutsMeet\" Optional.", - "items": { + "id": "calendar:v3", + "kind": "discovery#restDescription", + "name": "calendar", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "alt": { + "default": "json", + "description": "Data format for the response.", + "enum": [ + "json" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json" + ], + "location": "query", + "type": "string" + }, + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "location": "query", "type": "string" - } - } - } - }, - "ConferenceRequestStatus": { - "id": "ConferenceRequestStatus", - "type": "object", - "properties": { - "statusCode": { - "type": "string", - "description": "The current status of the conference create request. Read-only.\nThe possible values are: \n- \"pending\": the conference create request is still being processed.\n- \"success\": the conference create request succeeded, the entry points are populated.\n- \"failure\": the conference create request failed, there are no entry points." - } - } - }, - "ConferenceSolution": { - "id": "ConferenceSolution", - "type": "object", - "properties": { - "iconUri": { - "type": "string", - "description": "The user-visible icon for this solution." }, "key": { - "$ref": "ConferenceSolutionKey", - "description": "The key which can uniquely identify the conference solution for this event." - }, - "name": { - "type": "string", - "description": "The user-visible name of this solution. Not localized." - } - } - }, - "ConferenceSolutionKey": { - "id": "ConferenceSolutionKey", - "type": "object", - "properties": { - "type": { - "type": "string", - "description": "The conference solution type.\nIf a client encounters an unfamiliar or empty type, it should still be able to display the entry points. However, it should disallow modifications.\nThe possible values are: \n- \"eventHangout\" for Hangouts for consumers (http://hangouts.google.com)\n- \"eventNamedHangout\" for classic Hangouts for G Suite users (http://hangouts.google.com)\n- \"hangoutsMeet\" for Hangouts Meet (http://meet.google.com)" - } - } - }, - "CreateConferenceRequest": { - "id": "CreateConferenceRequest", - "type": "object", - "properties": { - "conferenceSolutionKey": { - "$ref": "ConferenceSolutionKey", - "description": "The conference solution, such as Hangouts or Hangouts Meet." - }, - "requestId": { - "type": "string", - "description": "The client-generated unique ID for this request.\nClients should regenerate this ID for every new request. If an ID provided is the same as for the previous request, the request is ignored." - }, - "status": { - "$ref": "ConferenceRequestStatus", - "description": "The status of the conference create request." - } - } - }, - "EntryPoint": { - "id": "EntryPoint", - "type": "object", - "properties": { - "accessCode": { - "type": "string", - "description": "The access code to access the conference. The maximum length is 128 characters.\nWhen creating new conference data, populate only the subset of {meetingCode, accessCode, passcode, password, pin} fields that match the terminology that the conference provider uses. Only the populated fields should be displayed.\nOptional." - }, - "entryPointType": { - "type": "string", - "description": "The type of the conference entry point.\nPossible values are: \n- \"video\" - joining a conference over HTTP. A conference can have zero or one video entry point.\n- \"phone\" - joining a conference by dialing a phone number. A conference can have zero or more phone entry points.\n- \"sip\" - joining a conference over SIP. A conference can have zero or one sip entry point.\n- \"more\" - further conference joining instructions, for example additional phone numbers. A conference can have zero or one more entry point. A conference with only a more entry point is not a valid conference." - }, - "label": { - "type": "string", - "description": "The label for the URI. Visible to end users. Not localized. The maximum length is 512 characters.\nExamples: \n- for video: meet.google.com/aaa-bbbb-ccc\n- for phone: +1 123 268 2601\n- for sip: 12345678@altostrat.com\n- for more: should not be filled \nOptional." - }, - "meetingCode": { - "type": "string", - "description": "The meeting code to access the conference. The maximum length is 128 characters.\nWhen creating new conference data, populate only the subset of {meetingCode, accessCode, passcode, password, pin} fields that match the terminology that the conference provider uses. Only the populated fields should be displayed.\nOptional." - }, - "passcode": { - "type": "string", - "description": "The passcode to access the conference. The maximum length is 128 characters.\nWhen creating new conference data, populate only the subset of {meetingCode, accessCode, passcode, password, pin} fields that match the terminology that the conference provider uses. Only the populated fields should be displayed." - }, - "password": { - "type": "string", - "description": "The password to access the conference. The maximum length is 128 characters.\nWhen creating new conference data, populate only the subset of {meetingCode, accessCode, passcode, password, pin} fields that match the terminology that the conference provider uses. Only the populated fields should be displayed.\nOptional." - }, - "pin": { - "type": "string", - "description": "The PIN to access the conference. The maximum length is 128 characters.\nWhen creating new conference data, populate only the subset of {meetingCode, accessCode, passcode, password, pin} fields that match the terminology that the conference provider uses. Only the populated fields should be displayed.\nOptional." - }, - "uri": { - "type": "string", - "description": "The URI of the entry point. The maximum length is 1300 characters.\nFormat: \n- for video, http: or https: schema is required.\n- for phone, tel: schema is required. The URI should include the entire dial sequence (e.g., tel:+12345678900,,,123456789;1234).\n- for sip, sip: schema is required, e.g., sip:12345678@myprovider.com.\n- for more, http: or https: schema is required." - } - } - }, - "Error": { - "id": "Error", - "type": "object", - "properties": { - "domain": { - "type": "string", - "description": "Domain, or broad category, of the error." - }, - "reason": { - "type": "string", - "description": "Specific reason for the error. Some of the possible values are: \n- \"groupTooBig\" - The group of users requested is too large for a single query. \n- \"tooManyCalendarsRequested\" - The number of calendars requested is too large for a single query. \n- \"notFound\" - The requested resource was not found. \n- \"internalError\" - The API service has encountered an internal error. Additional error types may be added in the future, so clients should gracefully handle additional error statuses not included in this list." - } - } - }, - "Event": { - "id": "Event", - "type": "object", - "properties": { - "anyoneCanAddSelf": { - "type": "boolean", - "description": "Whether anyone can invite themselves to the event (currently works for Google+ events only). Optional. The default is False.", - "default": "false" - }, - "attachments": { - "type": "array", - "description": "File attachments for the event. Currently only Google Drive attachments are supported.\nIn order to modify attachments the supportsAttachments request parameter should be set to true.\nThere can be at most 25 attachments per event,", - "items": { - "$ref": "EventAttachment" - } - }, - "attendees": { - "type": "array", - "description": "The attendees of the event. See the Events with attendees guide for more information on scheduling events with other calendar users.", - "items": { - "$ref": "EventAttendee" - } - }, - "attendeesOmitted": { - "type": "boolean", - "description": "Whether attendees may have been omitted from the event's representation. When retrieving an event, this may be due to a restriction specified by the maxAttendee query parameter. When updating an event, this can be used to only update the participant's response. Optional. The default is False.", - "default": "false" - }, - "colorId": { - "type": "string", - "description": "The color of the event. This is an ID referring to an entry in the event section of the colors definition (see the colors endpoint). Optional." - }, - "conferenceData": { - "$ref": "ConferenceData", - "description": "The conference-related information, such as details of a Hangouts Meet conference. To create new conference details use the createRequest field. To persist your changes, remember to set the conferenceDataVersion request parameter to 1 for all event modification requests." - }, - "created": { - "type": "string", - "description": "Creation time of the event (as a RFC3339 timestamp). Read-only.", - "format": "date-time" - }, - "creator": { - "type": "object", - "description": "The creator of the event. Read-only.", - "properties": { - "displayName": { - "type": "string", - "description": "The creator's name, if available." - }, - "email": { - "type": "string", - "description": "The creator's email address, if available." - }, - "id": { - "type": "string", - "description": "The creator's Profile ID, if available. It corresponds to theid field in the People collection of the Google+ API" - }, - "self": { - "type": "boolean", - "description": "Whether the creator corresponds to the calendar on which this copy of the event appears. Read-only. The default is False.", - "default": "false" - } - } - }, - "description": { - "type": "string", - "description": "Description of the event. Optional." - }, - "end": { - "$ref": "EventDateTime", - "description": "The (exclusive) end time of the event. For a recurring event, this is the end time of the first instance.", - "annotations": { - "required": [ - "calendar.events.import", - "calendar.events.insert", - "calendar.events.update" - ] - } - }, - "endTimeUnspecified": { - "type": "boolean", - "description": "Whether the end time is actually unspecified. An end time is still provided for compatibility reasons, even if this attribute is set to True. The default is False.", - "default": "false" - }, - "etag": { - "type": "string", - "description": "ETag of the resource." - }, - "extendedProperties": { - "type": "object", - "description": "Extended properties of the event.", - "properties": { - "private": { - "type": "object", - "description": "Properties that are private to the copy of the event that appears on this calendar.", - "additionalProperties": { - "type": "string", - "description": "The name of the private property and the corresponding value." - } - }, - "shared": { - "type": "object", - "description": "Properties that are shared between copies of the event on other attendees' calendars.", - "additionalProperties": { - "type": "string", - "description": "The name of the shared property and the corresponding value." - } - } - } - }, - "gadget": { - "type": "object", - "description": "A gadget that extends this event.", - "properties": { - "display": { - "type": "string", - "description": "The gadget's display mode. Optional. Possible values are: \n- \"icon\" - The gadget displays next to the event's title in the calendar view. \n- \"chip\" - The gadget displays when the event is clicked." - }, - "height": { - "type": "integer", - "description": "The gadget's height in pixels. The height must be an integer greater than 0. Optional.", - "format": "int32" - }, - "iconLink": { - "type": "string", - "description": "The gadget's icon URL. The URL scheme must be HTTPS." - }, - "link": { - "type": "string", - "description": "The gadget's URL. The URL scheme must be HTTPS." - }, - "preferences": { - "type": "object", - "description": "Preferences.", - "additionalProperties": { - "type": "string", - "description": "The preference name and corresponding value." - } - }, - "title": { - "type": "string", - "description": "The gadget's title." - }, - "type": { - "type": "string", - "description": "The gadget's type." - }, - "width": { - "type": "integer", - "description": "The gadget's width in pixels. The width must be an integer greater than 0. Optional.", - "format": "int32" - } - } - }, - "guestsCanInviteOthers": { - "type": "boolean", - "description": "Whether attendees other than the organizer can invite others to the event. Optional. The default is True.", - "default": "true" - }, - "guestsCanModify": { - "type": "boolean", - "description": "Whether attendees other than the organizer can modify the event. Optional. The default is False.", - "default": "false" - }, - "guestsCanSeeOtherGuests": { - "type": "boolean", - "description": "Whether attendees other than the organizer can see who the event's attendees are. Optional. The default is True.", - "default": "true" - }, - "hangoutLink": { - "type": "string", - "description": "An absolute link to the Google+ hangout associated with this event. Read-only." - }, - "htmlLink": { - "type": "string", - "description": "An absolute link to this event in the Google Calendar Web UI. Read-only." - }, - "iCalUID": { - "type": "string", - "description": "Event unique identifier as defined in RFC5545. It is used to uniquely identify events accross calendaring systems and must be supplied when importing events via the import method.\nNote that the icalUID and the id are not identical and only one of them should be supplied at event creation time. One difference in their semantics is that in recurring events, all occurrences of one event have different ids while they all share the same icalUIDs.", - "annotations": { - "required": [ - "calendar.events.import" - ] - } - }, - "id": { - "type": "string", - "description": "Opaque identifier of the event. When creating new single or recurring events, you can specify their IDs. Provided IDs must follow these rules: \n- characters allowed in the ID are those used in base32hex encoding, i.e. lowercase letters a-v and digits 0-9, see section 3.1.2 in RFC2938 \n- the length of the ID must be between 5 and 1024 characters \n- the ID must be unique per calendar Due to the globally distributed nature of the system, we cannot guarantee that ID collisions will be detected at event creation time. To minimize the risk of collisions we recommend using an established UUID algorithm such as one described in RFC4122.\nIf you do not specify an ID, it will be automatically generated by the server.\nNote that the icalUID and the id are not identical and only one of them should be supplied at event creation time. One difference in their semantics is that in recurring events, all occurrences of one event have different ids while they all share the same icalUIDs." - }, - "kind": { - "type": "string", - "description": "Type of the resource (\"calendar#event\").", - "default": "calendar#event" - }, - "location": { - "type": "string", - "description": "Geographic location of the event as free-form text. Optional." - }, - "locked": { - "type": "boolean", - "description": "Whether this is a locked event copy where no changes can be made to the main event fields \"summary\", \"description\", \"location\", \"start\", \"end\" or \"recurrence\". The default is False. Read-Only.", - "default": "false" - }, - "organizer": { - "type": "object", - "description": "The organizer of the event. If the organizer is also an attendee, this is indicated with a separate entry in attendees with the organizer field set to True. To change the organizer, use the move operation. Read-only, except when importing an event.", - "properties": { - "displayName": { - "type": "string", - "description": "The organizer's name, if available." - }, - "email": { - "type": "string", - "description": "The organizer's email address, if available. It must be a valid email address as per RFC5322." - }, - "id": { - "type": "string", - "description": "The organizer's Profile ID, if available. It corresponds to theid field in the People collection of the Google+ API" - }, - "self": { - "type": "boolean", - "description": "Whether the organizer corresponds to the calendar on which this copy of the event appears. Read-only. The default is False.", - "default": "false" - } - } - }, - "originalStartTime": { - "$ref": "EventDateTime", - "description": "For an instance of a recurring event, this is the time at which this event would start according to the recurrence data in the recurring event identified by recurringEventId. Immutable." - }, - "privateCopy": { - "type": "boolean", - "description": "Whether this is a private event copy where changes are not shared with other copies on other calendars. Optional. Immutable. The default is False.", - "default": "false" - }, - "recurrence": { - "type": "array", - "description": "List of RRULE, EXRULE, RDATE and EXDATE lines for a recurring event, as specified in RFC5545. Note that DTSTART and DTEND lines are not allowed in this field; event start and end times are specified in the start and end fields. This field is omitted for single events or instances of recurring events.", - "items": { + "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" - } }, - "recurringEventId": { - "type": "string", - "description": "For an instance of a recurring event, this is the id of the recurring event to which this instance belongs. Immutable." - }, - "reminders": { - "type": "object", - "description": "Information about the event's reminders for the authenticated user.", - "properties": { - "overrides": { - "type": "array", - "description": "If the event doesn't use the default reminders, this lists the reminders specific to the event, or, if not set, indicates that no reminders are set for this event. The maximum number of override reminders is 5.", - "items": { - "$ref": "EventReminder" - } - }, - "useDefault": { - "type": "boolean", - "description": "Whether the default reminders of the calendar apply to the event." - } - } - }, - "sequence": { - "type": "integer", - "description": "Sequence number as per iCalendar.", - "format": "int32" - }, - "source": { - "type": "object", - "description": "Source from which the event was created. For example, a web page, an email message or any document identifiable by an URL with HTTP or HTTPS scheme. Can only be seen or modified by the creator of the event.", - "properties": { - "title": { - "type": "string", - "description": "Title of the source; for example a title of a web page or an email subject." - }, - "url": { - "type": "string", - "description": "URL of the source pointing to a resource. The URL scheme must be HTTP or HTTPS." - } - } - }, - "start": { - "$ref": "EventDateTime", - "description": "The (inclusive) start time of the event. For a recurring event, this is the start time of the first instance.", - "annotations": { - "required": [ - "calendar.events.import", - "calendar.events.insert", - "calendar.events.update" - ] - } - }, - "status": { - "type": "string", - "description": "Status of the event. Optional. Possible values are: \n- \"confirmed\" - The event is confirmed. This is the default status. \n- \"tentative\" - The event is tentatively confirmed. \n- \"cancelled\" - The event is cancelled." - }, - "summary": { - "type": "string", - "description": "Title of the event." - }, - "transparency": { - "type": "string", - "description": "Whether the event blocks time on the calendar. Optional. Possible values are: \n- \"opaque\" - Default value. The event does block time on the calendar. This is equivalent to setting Show me as to Busy in the Calendar UI. \n- \"transparent\" - The event does not block time on the calendar. This is equivalent to setting Show me as to Available in the Calendar UI.", - "default": "opaque" - }, - "updated": { - "type": "string", - "description": "Last modification time of the event (as a RFC3339 timestamp). Read-only.", - "format": "date-time" - }, - "visibility": { - "type": "string", - "description": "Visibility of the event. Optional. Possible values are: \n- \"default\" - Uses the default visibility for events on the calendar. This is the default value. \n- \"public\" - The event is public and event details are visible to all readers of the calendar. \n- \"private\" - The event is private and only event attendees may view event details. \n- \"confidential\" - The event is private. This value is provided for compatibility reasons.", - "default": "default" - } - } - }, - "EventAttachment": { - "id": "EventAttachment", - "type": "object", - "properties": { - "fileId": { - "type": "string", - "description": "ID of the attached file. Read-only.\nFor Google Drive files, this is the ID of the corresponding Files resource entry in the Drive API." - }, - "fileUrl": { - "type": "string", - "description": "URL link to the attachment.\nFor adding Google Drive file attachments use the same format as in alternateLink property of the Files resource in the Drive API.", - "annotations": { - "required": [ - "calendar.events.import", - "calendar.events.insert", - "calendar.events.update" - ] - } - }, - "iconLink": { - "type": "string", - "description": "URL link to the attachment's icon. Read-only." - }, - "mimeType": { - "type": "string", - "description": "Internet media type (MIME type) of the attachment." - }, - "title": { - "type": "string", - "description": "Attachment title." - } - } - }, - "EventAttendee": { - "id": "EventAttendee", - "type": "object", - "properties": { - "additionalGuests": { - "type": "integer", - "description": "Number of additional guests. Optional. The default is 0.", - "default": "0", - "format": "int32" - }, - "comment": { - "type": "string", - "description": "The attendee's response comment. Optional." - }, - "displayName": { - "type": "string", - "description": "The attendee's name, if available. Optional." - }, - "email": { - "type": "string", - "description": "The attendee's email address, if available. This field must be present when adding an attendee. It must be a valid email address as per RFC5322.", - "annotations": { - "required": [ - "calendar.events.import", - "calendar.events.insert", - "calendar.events.update" - ] - } - }, - "id": { - "type": "string", - "description": "The attendee's Profile ID, if available. It corresponds to theid field in the People collection of the Google+ API" - }, - "optional": { - "type": "boolean", - "description": "Whether this is an optional attendee. Optional. The default is False.", - "default": "false" - }, - "organizer": { - "type": "boolean", - "description": "Whether the attendee is the organizer of the event. Read-only. The default is False." - }, - "resource": { - "type": "boolean", - "description": "Whether the attendee is a resource. Read-only. The default is False.", - "default": "false" - }, - "responseStatus": { - "type": "string", - "description": "The attendee's response status. Possible values are: \n- \"needsAction\" - The attendee has not responded to the invitation. \n- \"declined\" - The attendee has declined the invitation. \n- \"tentative\" - The attendee has tentatively accepted the invitation. \n- \"accepted\" - The attendee has accepted the invitation." - }, - "self": { - "type": "boolean", - "description": "Whether this entry represents the calendar on which this copy of the event appears. Read-only. The default is False.", - "default": "false" - } - } - }, - "EventDateTime": { - "id": "EventDateTime", - "type": "object", - "properties": { - "date": { - "type": "string", - "description": "The date, in the format \"yyyy-mm-dd\", if this is an all-day event.", - "format": "date" - }, - "dateTime": { - "type": "string", - "description": "The time, as a combined date-time value (formatted according to RFC3339). A time zone offset is required unless a time zone is explicitly specified in timeZone.", - "format": "date-time" - }, - "timeZone": { - "type": "string", - "description": "The time zone in which the time is specified. (Formatted as an IANA Time Zone Database name, e.g. \"Europe/Zurich\".) For recurring events this field is required and specifies the time zone in which the recurrence is expanded. For single events this field is optional and indicates a custom time zone for the event start/end." - } - } - }, - "EventReminder": { - "id": "EventReminder", - "type": "object", - "properties": { - "method": { - "type": "string", - "description": "The method used by this reminder. Possible values are: \n- \"email\" - Reminders are sent via email. \n- \"sms\" - Reminders are sent via SMS. These are only available for G Suite customers. Requests to set SMS reminders for other account types are ignored. \n- \"popup\" - Reminders are sent via a UI popup.", - "annotations": { - "required": [ - "calendar.calendarList.insert", - "calendar.calendarList.update", - "calendar.events.import", - "calendar.events.insert", - "calendar.events.update" - ] - } - }, - "minutes": { - "type": "integer", - "description": "Number of minutes before the start of the event when the reminder should trigger. Valid values are between 0 and 40320 (4 weeks in minutes).", - "format": "int32", - "annotations": { - "required": [ - "calendar.calendarList.insert", - "calendar.calendarList.update", - "calendar.events.import", - "calendar.events.insert", - "calendar.events.update" - ] - } - } - } - }, - "Events": { - "id": "Events", - "type": "object", - "properties": { - "accessRole": { - "type": "string", - "description": "The user's access role for this calendar. Read-only. Possible values are: \n- \"none\" - The user has no access. \n- \"freeBusyReader\" - The user has read access to free/busy information. \n- \"reader\" - The user has read access to the calendar. Private events will appear to users with reader access, but event details will be hidden. \n- \"writer\" - The user has read and write access to the calendar. Private events will appear to users with writer access, and event details will be visible. \n- \"owner\" - The user has ownership of the calendar. This role has all of the permissions of the writer role with the additional ability to see and manipulate ACLs." - }, - "defaultReminders": { - "type": "array", - "description": "The default reminders on the calendar for the authenticated user. These reminders apply to all events on this calendar that do not explicitly override them (i.e. do not have reminders.useDefault set to True).", - "items": { - "$ref": "EventReminder" - } - }, - "description": { - "type": "string", - "description": "Description of the calendar. Read-only." - }, - "etag": { - "type": "string", - "description": "ETag of the collection." - }, - "items": { - "type": "array", - "description": "List of events on the calendar.", - "items": { - "$ref": "Event" - } - }, - "kind": { - "type": "string", - "description": "Type of the collection (\"calendar#events\").", - "default": "calendar#events" - }, - "nextPageToken": { - "type": "string", - "description": "Token used to access the next page of this result. Omitted if no further results are available, in which case nextSyncToken is provided." - }, - "nextSyncToken": { - "type": "string", - "description": "Token used at a later point in time to retrieve only the entries that have changed since this result was returned. Omitted if further results are available, in which case nextPageToken is provided." - }, - "summary": { - "type": "string", - "description": "Title of the calendar. Read-only." - }, - "timeZone": { - "type": "string", - "description": "The time zone of the calendar. Read-only." - }, - "updated": { - "type": "string", - "description": "Last modification time of the calendar (as a RFC3339 timestamp). Read-only.", - "format": "date-time" - } - } - }, - "FreeBusyCalendar": { - "id": "FreeBusyCalendar", - "type": "object", - "properties": { - "busy": { - "type": "array", - "description": "List of time ranges during which this calendar should be regarded as busy.", - "items": { - "$ref": "TimePeriod" - } - }, - "errors": { - "type": "array", - "description": "Optional error(s) (if computation for the calendar failed).", - "items": { - "$ref": "Error" - } - } - } - }, - "FreeBusyGroup": { - "id": "FreeBusyGroup", - "type": "object", - "properties": { - "calendars": { - "type": "array", - "description": "List of calendars' identifiers within a group.", - "items": { + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", "type": "string" - } }, - "errors": { - "type": "array", - "description": "Optional error(s) (if computation for the group failed).", - "items": { - "$ref": "Error" - } + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", + "location": "query", + "type": "string" + }, + "userIp": { + "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", + "location": "query", + "type": "string" } - } }, - "FreeBusyRequest": { - "id": "FreeBusyRequest", - "type": "object", - "properties": { - "calendarExpansionMax": { - "type": "integer", - "description": "Maximal number of calendars for which FreeBusy information is to be provided. Optional.", - "format": "int32" + "protocol": "rest", + "resources": { + "acl": { + "methods": { + "delete": { + "description": "Deletes an access control rule.", + "httpMethod": "DELETE", + "id": "calendar.acl.delete", + "parameterOrder": [ + "calendarId", + "ruleId" + ], + "parameters": { + "calendarId": { + "description": "Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the \"primary\" keyword.", + "location": "path", + "required": true, + "type": "string" + }, + "ruleId": { + "description": "ACL rule identifier.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "calendars/{calendarId}/acl/{ruleId}", + "scopes": [ + "https://www.googleapis.com/auth/calendar" + ] + }, + "get": { + "description": "Returns an access control rule.", + "httpMethod": "GET", + "id": "calendar.acl.get", + "parameterOrder": [ + "calendarId", + "ruleId" + ], + "parameters": { + "calendarId": { + "description": "Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the \"primary\" keyword.", + "location": "path", + "required": true, + "type": "string" + }, + "ruleId": { + "description": "ACL rule identifier.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "calendars/{calendarId}/acl/{ruleId}", + "response": { + "$ref": "AclRule" + }, + "scopes": [ + "https://www.googleapis.com/auth/calendar", + "https://www.googleapis.com/auth/calendar.readonly" + ] + }, + "insert": { + "description": "Creates an access control rule.", + "httpMethod": "POST", + "id": "calendar.acl.insert", + "parameterOrder": [ + "calendarId" + ], + "parameters": { + "calendarId": { + "description": "Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the \"primary\" keyword.", + "location": "path", + "required": true, + "type": "string" + }, + "sendNotifications": { + "description": "Whether to send notifications about the calendar sharing change. Optional. The default is True.", + "location": "query", + "type": "boolean" + } + }, + "path": "calendars/{calendarId}/acl", + "request": { + "$ref": "AclRule" + }, + "response": { + "$ref": "AclRule" + }, + "scopes": [ + "https://www.googleapis.com/auth/calendar" + ] + }, + "list": { + "description": "Returns the rules in the access control list for the calendar.", + "httpMethod": "GET", + "id": "calendar.acl.list", + "parameterOrder": [ + "calendarId" + ], + "parameters": { + "calendarId": { + "description": "Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the \"primary\" keyword.", + "location": "path", + "required": true, + "type": "string" + }, + "maxResults": { + "description": "Maximum number of entries returned on one result page. By default the value is 100 entries. The page size can never be larger than 250 entries. Optional.", + "format": "int32", + "location": "query", + "minimum": "1", + "type": "integer" + }, + "pageToken": { + "description": "Token specifying which result page to return. Optional.", + "location": "query", + "type": "string" + }, + "showDeleted": { + "description": "Whether to include deleted ACLs in the result. Deleted ACLs are represented by role equal to \"none\". Deleted ACLs will always be included if syncToken is provided. Optional. The default is False.", + "location": "query", + "type": "boolean" + }, + "syncToken": { + "description": "Token obtained from the nextSyncToken field returned on the last page of results from the previous list request. It makes the result of this list request contain only entries that have changed since then. All entries deleted since the previous list request will always be in the result set and it is not allowed to set showDeleted to False.\nIf the syncToken expires, the server will respond with a 410 GONE response code and the client should clear its storage and perform a full synchronization without any syncToken.\nLearn more about incremental synchronization.\nOptional. The default is to return all entries.", + "location": "query", + "type": "string" + } + }, + "path": "calendars/{calendarId}/acl", + "response": { + "$ref": "Acl" + }, + "scopes": [ + "https://www.googleapis.com/auth/calendar" + ], + "supportsSubscription": true + }, + "patch": { + "description": "Updates an access control rule. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "calendar.acl.patch", + "parameterOrder": [ + "calendarId", + "ruleId" + ], + "parameters": { + "calendarId": { + "description": "Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the \"primary\" keyword.", + "location": "path", + "required": true, + "type": "string" + }, + "ruleId": { + "description": "ACL rule identifier.", + "location": "path", + "required": true, + "type": "string" + }, + "sendNotifications": { + "description": "Whether to send notifications about the calendar sharing change. Note that there are no notifications on access removal. Optional. The default is True.", + "location": "query", + "type": "boolean" + } + }, + "path": "calendars/{calendarId}/acl/{ruleId}", + "request": { + "$ref": "AclRule" + }, + "response": { + "$ref": "AclRule" + }, + "scopes": [ + "https://www.googleapis.com/auth/calendar" + ] + }, + "update": { + "description": "Updates an access control rule.", + "httpMethod": "PUT", + "id": "calendar.acl.update", + "parameterOrder": [ + "calendarId", + "ruleId" + ], + "parameters": { + "calendarId": { + "description": "Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the \"primary\" keyword.", + "location": "path", + "required": true, + "type": "string" + }, + "ruleId": { + "description": "ACL rule identifier.", + "location": "path", + "required": true, + "type": "string" + }, + "sendNotifications": { + "description": "Whether to send notifications about the calendar sharing change. Note that there are no notifications on access removal. Optional. The default is True.", + "location": "query", + "type": "boolean" + } + }, + "path": "calendars/{calendarId}/acl/{ruleId}", + "request": { + "$ref": "AclRule" + }, + "response": { + "$ref": "AclRule" + }, + "scopes": [ + "https://www.googleapis.com/auth/calendar" + ] + }, + "watch": { + "description": "Watch for changes to ACL resources.", + "httpMethod": "POST", + "id": "calendar.acl.watch", + "parameterOrder": [ + "calendarId" + ], + "parameters": { + "calendarId": { + "description": "Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the \"primary\" keyword.", + "location": "path", + "required": true, + "type": "string" + }, + "maxResults": { + "description": "Maximum number of entries returned on one result page. By default the value is 100 entries. The page size can never be larger than 250 entries. Optional.", + "format": "int32", + "location": "query", + "minimum": "1", + "type": "integer" + }, + "pageToken": { + "description": "Token specifying which result page to return. Optional.", + "location": "query", + "type": "string" + }, + "showDeleted": { + "description": "Whether to include deleted ACLs in the result. Deleted ACLs are represented by role equal to \"none\". Deleted ACLs will always be included if syncToken is provided. Optional. The default is False.", + "location": "query", + "type": "boolean" + }, + "syncToken": { + "description": "Token obtained from the nextSyncToken field returned on the last page of results from the previous list request. It makes the result of this list request contain only entries that have changed since then. All entries deleted since the previous list request will always be in the result set and it is not allowed to set showDeleted to False.\nIf the syncToken expires, the server will respond with a 410 GONE response code and the client should clear its storage and perform a full synchronization without any syncToken.\nLearn more about incremental synchronization.\nOptional. The default is to return all entries.", + "location": "query", + "type": "string" + } + }, + "path": "calendars/{calendarId}/acl/watch", + "request": { + "$ref": "Channel", + "parameterName": "resource" + }, + "response": { + "$ref": "Channel" + }, + "scopes": [ + "https://www.googleapis.com/auth/calendar" + ], + "supportsSubscription": true + } + } }, - "groupExpansionMax": { - "type": "integer", - "description": "Maximal number of calendar identifiers to be provided for a single group. Optional. An error will be returned for a group with more members than this value.", - "format": "int32" + "calendarList": { + "methods": { + "delete": { + "description": "Deletes an entry on the user's calendar list.", + "httpMethod": "DELETE", + "id": "calendar.calendarList.delete", + "parameterOrder": [ + "calendarId" + ], + "parameters": { + "calendarId": { + "description": "Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the \"primary\" keyword.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "users/me/calendarList/{calendarId}", + "scopes": [ + "https://www.googleapis.com/auth/calendar" + ] + }, + "get": { + "description": "Returns an entry on the user's calendar list.", + "httpMethod": "GET", + "id": "calendar.calendarList.get", + "parameterOrder": [ + "calendarId" + ], + "parameters": { + "calendarId": { + "description": "Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the \"primary\" keyword.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "users/me/calendarList/{calendarId}", + "response": { + "$ref": "CalendarListEntry" + }, + "scopes": [ + "https://www.googleapis.com/auth/calendar", + "https://www.googleapis.com/auth/calendar.readonly" + ] + }, + "insert": { + "description": "Adds an entry to the user's calendar list.", + "httpMethod": "POST", + "id": "calendar.calendarList.insert", + "parameters": { + "colorRgbFormat": { + "description": "Whether to use the foregroundColor and backgroundColor fields to write the calendar colors (RGB). If this feature is used, the index-based colorId field will be set to the best matching option automatically. Optional. The default is False.", + "location": "query", + "type": "boolean" + } + }, + "path": "users/me/calendarList", + "request": { + "$ref": "CalendarListEntry" + }, + "response": { + "$ref": "CalendarListEntry" + }, + "scopes": [ + "https://www.googleapis.com/auth/calendar" + ] + }, + "list": { + "description": "Returns entries on the user's calendar list.", + "httpMethod": "GET", + "id": "calendar.calendarList.list", + "parameters": { + "maxResults": { + "description": "Maximum number of entries returned on one result page. By default the value is 100 entries. The page size can never be larger than 250 entries. Optional.", + "format": "int32", + "location": "query", + "minimum": "1", + "type": "integer" + }, + "minAccessRole": { + "description": "The minimum access role for the user in the returned entries. Optional. The default is no restriction.", + "enum": [ + "freeBusyReader", + "owner", + "reader", + "writer" + ], + "enumDescriptions": [ + "The user can read free/busy information.", + "The user can read and modify events and access control lists.", + "The user can read events that are not private.", + "The user can read and modify events." + ], + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Token specifying which result page to return. Optional.", + "location": "query", + "type": "string" + }, + "showDeleted": { + "description": "Whether to include deleted calendar list entries in the result. Optional. The default is False.", + "location": "query", + "type": "boolean" + }, + "showHidden": { + "description": "Whether to show hidden entries. Optional. The default is False.", + "location": "query", + "type": "boolean" + }, + "syncToken": { + "description": "Token obtained from the nextSyncToken field returned on the last page of results from the previous list request. It makes the result of this list request contain only entries that have changed since then. If only read-only fields such as calendar properties or ACLs have changed, the entry won't be returned. All entries deleted and hidden since the previous list request will always be in the result set and it is not allowed to set showDeleted neither showHidden to False.\nTo ensure client state consistency minAccessRole query parameter cannot be specified together with nextSyncToken.\nIf the syncToken expires, the server will respond with a 410 GONE response code and the client should clear its storage and perform a full synchronization without any syncToken.\nLearn more about incremental synchronization.\nOptional. The default is to return all entries.", + "location": "query", + "type": "string" + } + }, + "path": "users/me/calendarList", + "response": { + "$ref": "CalendarList" + }, + "scopes": [ + "https://www.googleapis.com/auth/calendar", + "https://www.googleapis.com/auth/calendar.readonly" + ], + "supportsSubscription": true + }, + "patch": { + "description": "Updates an entry on the user's calendar list. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "calendar.calendarList.patch", + "parameterOrder": [ + "calendarId" + ], + "parameters": { + "calendarId": { + "description": "Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the \"primary\" keyword.", + "location": "path", + "required": true, + "type": "string" + }, + "colorRgbFormat": { + "description": "Whether to use the foregroundColor and backgroundColor fields to write the calendar colors (RGB). If this feature is used, the index-based colorId field will be set to the best matching option automatically. Optional. The default is False.", + "location": "query", + "type": "boolean" + } + }, + "path": "users/me/calendarList/{calendarId}", + "request": { + "$ref": "CalendarListEntry" + }, + "response": { + "$ref": "CalendarListEntry" + }, + "scopes": [ + "https://www.googleapis.com/auth/calendar" + ] + }, + "update": { + "description": "Updates an entry on the user's calendar list.", + "httpMethod": "PUT", + "id": "calendar.calendarList.update", + "parameterOrder": [ + "calendarId" + ], + "parameters": { + "calendarId": { + "description": "Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the \"primary\" keyword.", + "location": "path", + "required": true, + "type": "string" + }, + "colorRgbFormat": { + "description": "Whether to use the foregroundColor and backgroundColor fields to write the calendar colors (RGB). If this feature is used, the index-based colorId field will be set to the best matching option automatically. Optional. The default is False.", + "location": "query", + "type": "boolean" + } + }, + "path": "users/me/calendarList/{calendarId}", + "request": { + "$ref": "CalendarListEntry" + }, + "response": { + "$ref": "CalendarListEntry" + }, + "scopes": [ + "https://www.googleapis.com/auth/calendar" + ] + }, + "watch": { + "description": "Watch for changes to CalendarList resources.", + "httpMethod": "POST", + "id": "calendar.calendarList.watch", + "parameters": { + "maxResults": { + "description": "Maximum number of entries returned on one result page. By default the value is 100 entries. The page size can never be larger than 250 entries. Optional.", + "format": "int32", + "location": "query", + "minimum": "1", + "type": "integer" + }, + "minAccessRole": { + "description": "The minimum access role for the user in the returned entries. Optional. The default is no restriction.", + "enum": [ + "freeBusyReader", + "owner", + "reader", + "writer" + ], + "enumDescriptions": [ + "The user can read free/busy information.", + "The user can read and modify events and access control lists.", + "The user can read events that are not private.", + "The user can read and modify events." + ], + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Token specifying which result page to return. Optional.", + "location": "query", + "type": "string" + }, + "showDeleted": { + "description": "Whether to include deleted calendar list entries in the result. Optional. The default is False.", + "location": "query", + "type": "boolean" + }, + "showHidden": { + "description": "Whether to show hidden entries. Optional. The default is False.", + "location": "query", + "type": "boolean" + }, + "syncToken": { + "description": "Token obtained from the nextSyncToken field returned on the last page of results from the previous list request. It makes the result of this list request contain only entries that have changed since then. If only read-only fields such as calendar properties or ACLs have changed, the entry won't be returned. All entries deleted and hidden since the previous list request will always be in the result set and it is not allowed to set showDeleted neither showHidden to False.\nTo ensure client state consistency minAccessRole query parameter cannot be specified together with nextSyncToken.\nIf the syncToken expires, the server will respond with a 410 GONE response code and the client should clear its storage and perform a full synchronization without any syncToken.\nLearn more about incremental synchronization.\nOptional. The default is to return all entries.", + "location": "query", + "type": "string" + } + }, + "path": "users/me/calendarList/watch", + "request": { + "$ref": "Channel", + "parameterName": "resource" + }, + "response": { + "$ref": "Channel" + }, + "scopes": [ + "https://www.googleapis.com/auth/calendar", + "https://www.googleapis.com/auth/calendar.readonly" + ], + "supportsSubscription": true + } + } }, - "items": { - "type": "array", - "description": "List of calendars and/or groups to query.", - "items": { - "$ref": "FreeBusyRequestItem" - } - }, - "timeMax": { - "type": "string", - "description": "The end of the interval for the query.", - "format": "date-time" - }, - "timeMin": { - "type": "string", - "description": "The start of the interval for the query.", - "format": "date-time" - }, - "timeZone": { - "type": "string", - "description": "Time zone used in the response. Optional. The default is UTC.", - "default": "UTC" - } - } - }, - "FreeBusyRequestItem": { - "id": "FreeBusyRequestItem", - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "The identifier of a calendar or a group." - } - } - }, - "FreeBusyResponse": { - "id": "FreeBusyResponse", - "type": "object", - "properties": { "calendars": { - "type": "object", - "description": "List of free/busy information for calendars.", - "additionalProperties": { - "$ref": "FreeBusyCalendar", - "description": "Free/busy expansions for a single calendar." - } + "methods": { + "clear": { + "description": "Clears a primary calendar. This operation deletes all events associated with the primary calendar of an account.", + "httpMethod": "POST", + "id": "calendar.calendars.clear", + "parameterOrder": [ + "calendarId" + ], + "parameters": { + "calendarId": { + "description": "Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the \"primary\" keyword.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "calendars/{calendarId}/clear", + "scopes": [ + "https://www.googleapis.com/auth/calendar" + ] + }, + "delete": { + "description": "Deletes a secondary calendar. Use calendars.clear for clearing all events on primary calendars.", + "httpMethod": "DELETE", + "id": "calendar.calendars.delete", + "parameterOrder": [ + "calendarId" + ], + "parameters": { + "calendarId": { + "description": "Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the \"primary\" keyword.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "calendars/{calendarId}", + "scopes": [ + "https://www.googleapis.com/auth/calendar" + ] + }, + "get": { + "description": "Returns metadata for a calendar.", + "httpMethod": "GET", + "id": "calendar.calendars.get", + "parameterOrder": [ + "calendarId" + ], + "parameters": { + "calendarId": { + "description": "Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the \"primary\" keyword.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "calendars/{calendarId}", + "response": { + "$ref": "Calendar" + }, + "scopes": [ + "https://www.googleapis.com/auth/calendar", + "https://www.googleapis.com/auth/calendar.readonly" + ] + }, + "insert": { + "description": "Creates a secondary calendar.", + "httpMethod": "POST", + "id": "calendar.calendars.insert", + "path": "calendars", + "request": { + "$ref": "Calendar" + }, + "response": { + "$ref": "Calendar" + }, + "scopes": [ + "https://www.googleapis.com/auth/calendar" + ] + }, + "patch": { + "description": "Updates metadata for a calendar. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "calendar.calendars.patch", + "parameterOrder": [ + "calendarId" + ], + "parameters": { + "calendarId": { + "description": "Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the \"primary\" keyword.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "calendars/{calendarId}", + "request": { + "$ref": "Calendar" + }, + "response": { + "$ref": "Calendar" + }, + "scopes": [ + "https://www.googleapis.com/auth/calendar" + ] + }, + "update": { + "description": "Updates metadata for a calendar.", + "httpMethod": "PUT", + "id": "calendar.calendars.update", + "parameterOrder": [ + "calendarId" + ], + "parameters": { + "calendarId": { + "description": "Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the \"primary\" keyword.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "calendars/{calendarId}", + "request": { + "$ref": "Calendar" + }, + "response": { + "$ref": "Calendar" + }, + "scopes": [ + "https://www.googleapis.com/auth/calendar" + ] + } + } }, - "groups": { - "type": "object", - "description": "Expansion of groups.", - "additionalProperties": { - "$ref": "FreeBusyGroup", - "description": "List of calendars that are members of this group." - } + "channels": { + "methods": { + "stop": { + "description": "Stop watching resources through this channel", + "httpMethod": "POST", + "id": "calendar.channels.stop", + "path": "channels/stop", + "request": { + "$ref": "Channel", + "parameterName": "resource" + }, + "scopes": [ + "https://www.googleapis.com/auth/calendar", + "https://www.googleapis.com/auth/calendar.readonly" + ] + } + } }, - "kind": { - "type": "string", - "description": "Type of the resource (\"calendar#freeBusy\").", - "default": "calendar#freeBusy" + "colors": { + "methods": { + "get": { + "description": "Returns the color definitions for calendars and events.", + "httpMethod": "GET", + "id": "calendar.colors.get", + "path": "colors", + "response": { + "$ref": "Colors" + }, + "scopes": [ + "https://www.googleapis.com/auth/calendar", + "https://www.googleapis.com/auth/calendar.readonly" + ] + } + } }, - "timeMax": { - "type": "string", - "description": "The end of the interval.", - "format": "date-time" + "events": { + "methods": { + "delete": { + "description": "Deletes an event.", + "httpMethod": "DELETE", + "id": "calendar.events.delete", + "parameterOrder": [ + "calendarId", + "eventId" + ], + "parameters": { + "calendarId": { + "description": "Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the \"primary\" keyword.", + "location": "path", + "required": true, + "type": "string" + }, + "eventId": { + "description": "Event identifier.", + "location": "path", + "required": true, + "type": "string" + }, + "sendNotifications": { + "description": "Whether to send notifications about the deletion of the event. Optional. The default is False.", + "location": "query", + "type": "boolean" + } + }, + "path": "calendars/{calendarId}/events/{eventId}", + "scopes": [ + "https://www.googleapis.com/auth/calendar" + ] + }, + "get": { + "description": "Returns an event.", + "httpMethod": "GET", + "id": "calendar.events.get", + "parameterOrder": [ + "calendarId", + "eventId" + ], + "parameters": { + "alwaysIncludeEmail": { + "description": "Whether to always include a value in the email field for the organizer, creator and attendees, even if no real email is available (i.e. a generated, non-working value will be provided). The use of this option is discouraged and should only be used by clients which cannot handle the absence of an email address value in the mentioned places. Optional. The default is False.", + "location": "query", + "type": "boolean" + }, + "calendarId": { + "description": "Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the \"primary\" keyword.", + "location": "path", + "required": true, + "type": "string" + }, + "eventId": { + "description": "Event identifier.", + "location": "path", + "required": true, + "type": "string" + }, + "maxAttendees": { + "description": "The maximum number of attendees to include in the response. If there are more than the specified number of attendees, only the participant is returned. Optional.", + "format": "int32", + "location": "query", + "minimum": "1", + "type": "integer" + }, + "timeZone": { + "description": "Time zone used in the response. Optional. The default is the time zone of the calendar.", + "location": "query", + "type": "string" + } + }, + "path": "calendars/{calendarId}/events/{eventId}", + "response": { + "$ref": "Event" + }, + "scopes": [ + "https://www.googleapis.com/auth/calendar", + "https://www.googleapis.com/auth/calendar.readonly" + ] + }, + "import": { + "description": "Imports an event. This operation is used to add a private copy of an existing event to a calendar.", + "httpMethod": "POST", + "id": "calendar.events.import", + "parameterOrder": [ + "calendarId" + ], + "parameters": { + "calendarId": { + "description": "Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the \"primary\" keyword.", + "location": "path", + "required": true, + "type": "string" + }, + "conferenceDataVersion": { + "description": "Version number of conference data supported by the API client. Version 0 assumes no conference data support and ignores conference data in the event's body. Version 1 enables support for copying of ConferenceData as well as for creating new conferences using the createRequest field of conferenceData. The default is 0.", + "format": "int32", + "location": "query", + "maximum": "1", + "minimum": "0", + "type": "integer" + }, + "supportsAttachments": { + "description": "Whether API client performing operation supports event attachments. Optional. The default is False.", + "location": "query", + "type": "boolean" + } + }, + "path": "calendars/{calendarId}/events/import", + "request": { + "$ref": "Event" + }, + "response": { + "$ref": "Event" + }, + "scopes": [ + "https://www.googleapis.com/auth/calendar" + ] + }, + "insert": { + "description": "Creates an event.", + "httpMethod": "POST", + "id": "calendar.events.insert", + "parameterOrder": [ + "calendarId" + ], + "parameters": { + "calendarId": { + "description": "Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the \"primary\" keyword.", + "location": "path", + "required": true, + "type": "string" + }, + "conferenceDataVersion": { + "description": "Version number of conference data supported by the API client. Version 0 assumes no conference data support and ignores conference data in the event's body. Version 1 enables support for copying of ConferenceData as well as for creating new conferences using the createRequest field of conferenceData. The default is 0.", + "format": "int32", + "location": "query", + "maximum": "1", + "minimum": "0", + "type": "integer" + }, + "maxAttendees": { + "description": "The maximum number of attendees to include in the response. If there are more than the specified number of attendees, only the participant is returned. Optional.", + "format": "int32", + "location": "query", + "minimum": "1", + "type": "integer" + }, + "sendNotifications": { + "description": "Whether to send notifications about the creation of the new event. Optional. The default is False.", + "location": "query", + "type": "boolean" + }, + "supportsAttachments": { + "description": "Whether API client performing operation supports event attachments. Optional. The default is False.", + "location": "query", + "type": "boolean" + } + }, + "path": "calendars/{calendarId}/events", + "request": { + "$ref": "Event" + }, + "response": { + "$ref": "Event" + }, + "scopes": [ + "https://www.googleapis.com/auth/calendar" + ] + }, + "instances": { + "description": "Returns instances of the specified recurring event.", + "httpMethod": "GET", + "id": "calendar.events.instances", + "parameterOrder": [ + "calendarId", + "eventId" + ], + "parameters": { + "alwaysIncludeEmail": { + "description": "Whether to always include a value in the email field for the organizer, creator and attendees, even if no real email is available (i.e. a generated, non-working value will be provided). The use of this option is discouraged and should only be used by clients which cannot handle the absence of an email address value in the mentioned places. Optional. The default is False.", + "location": "query", + "type": "boolean" + }, + "calendarId": { + "description": "Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the \"primary\" keyword.", + "location": "path", + "required": true, + "type": "string" + }, + "eventId": { + "description": "Recurring event identifier.", + "location": "path", + "required": true, + "type": "string" + }, + "maxAttendees": { + "description": "The maximum number of attendees to include in the response. If there are more than the specified number of attendees, only the participant is returned. Optional.", + "format": "int32", + "location": "query", + "minimum": "1", + "type": "integer" + }, + "maxResults": { + "description": "Maximum number of events returned on one result page. By default the value is 250 events. The page size can never be larger than 2500 events. Optional.", + "format": "int32", + "location": "query", + "minimum": "1", + "type": "integer" + }, + "originalStart": { + "description": "The original start time of the instance in the result. Optional.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Token specifying which result page to return. Optional.", + "location": "query", + "type": "string" + }, + "showDeleted": { + "description": "Whether to include deleted events (with status equals \"cancelled\") in the result. Cancelled instances of recurring events will still be included if singleEvents is False. Optional. The default is False.", + "location": "query", + "type": "boolean" + }, + "timeMax": { + "description": "Upper bound (exclusive) for an event's start time to filter by. Optional. The default is not to filter by start time. Must be an RFC3339 timestamp with mandatory time zone offset.", + "format": "date-time", + "location": "query", + "type": "string" + }, + "timeMin": { + "description": "Lower bound (inclusive) for an event's end time to filter by. Optional. The default is not to filter by end time. Must be an RFC3339 timestamp with mandatory time zone offset.", + "format": "date-time", + "location": "query", + "type": "string" + }, + "timeZone": { + "description": "Time zone used in the response. Optional. The default is the time zone of the calendar.", + "location": "query", + "type": "string" + } + }, + "path": "calendars/{calendarId}/events/{eventId}/instances", + "response": { + "$ref": "Events" + }, + "scopes": [ + "https://www.googleapis.com/auth/calendar", + "https://www.googleapis.com/auth/calendar.readonly" + ], + "supportsSubscription": true + }, + "list": { + "description": "Returns events on the specified calendar.", + "httpMethod": "GET", + "id": "calendar.events.list", + "parameterOrder": [ + "calendarId" + ], + "parameters": { + "alwaysIncludeEmail": { + "description": "Whether to always include a value in the email field for the organizer, creator and attendees, even if no real email is available (i.e. a generated, non-working value will be provided). The use of this option is discouraged and should only be used by clients which cannot handle the absence of an email address value in the mentioned places. Optional. The default is False.", + "location": "query", + "type": "boolean" + }, + "calendarId": { + "description": "Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the \"primary\" keyword.", + "location": "path", + "required": true, + "type": "string" + }, + "iCalUID": { + "description": "Specifies event ID in the iCalendar format to be included in the response. Optional.", + "location": "query", + "type": "string" + }, + "maxAttendees": { + "description": "The maximum number of attendees to include in the response. If there are more than the specified number of attendees, only the participant is returned. Optional.", + "format": "int32", + "location": "query", + "minimum": "1", + "type": "integer" + }, + "maxResults": { + "default": "250", + "description": "Maximum number of events returned on one result page. The number of events in the resulting page may be less than this value, or none at all, even if there are more events matching the query. Incomplete pages can be detected by a non-empty nextPageToken field in the response. By default the value is 250 events. The page size can never be larger than 2500 events. Optional.", + "format": "int32", + "location": "query", + "minimum": "1", + "type": "integer" + }, + "orderBy": { + "description": "The order of the events returned in the result. Optional. The default is an unspecified, stable order.", + "enum": [ + "startTime", + "updated" + ], + "enumDescriptions": [ + "Order by the start date/time (ascending). This is only available when querying single events (i.e. the parameter singleEvents is True)", + "Order by last modification time (ascending)." + ], + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Token specifying which result page to return. Optional.", + "location": "query", + "type": "string" + }, + "privateExtendedProperty": { + "description": "Extended properties constraint specified as propertyName=value. Matches only private properties. This parameter might be repeated multiple times to return events that match all given constraints.", + "location": "query", + "repeated": true, + "type": "string" + }, + "q": { + "description": "Free text search terms to find events that match these terms in any field, except for extended properties. Optional.", + "location": "query", + "type": "string" + }, + "sharedExtendedProperty": { + "description": "Extended properties constraint specified as propertyName=value. Matches only shared properties. This parameter might be repeated multiple times to return events that match all given constraints.", + "location": "query", + "repeated": true, + "type": "string" + }, + "showDeleted": { + "description": "Whether to include deleted events (with status equals \"cancelled\") in the result. Cancelled instances of recurring events (but not the underlying recurring event) will still be included if showDeleted and singleEvents are both False. If showDeleted and singleEvents are both True, only single instances of deleted events (but not the underlying recurring events) are returned. Optional. The default is False.", + "location": "query", + "type": "boolean" + }, + "showHiddenInvitations": { + "description": "Whether to include hidden invitations in the result. Optional. The default is False.", + "location": "query", + "type": "boolean" + }, + "singleEvents": { + "description": "Whether to expand recurring events into instances and only return single one-off events and instances of recurring events, but not the underlying recurring events themselves. Optional. The default is False.", + "location": "query", + "type": "boolean" + }, + "syncToken": { + "description": "Token obtained from the nextSyncToken field returned on the last page of results from the previous list request. It makes the result of this list request contain only entries that have changed since then. All events deleted since the previous list request will always be in the result set and it is not allowed to set showDeleted to False.\nThere are several query parameters that cannot be specified together with nextSyncToken to ensure consistency of the client state.\n\nThese are: \n- iCalUID \n- orderBy \n- privateExtendedProperty \n- q \n- sharedExtendedProperty \n- timeMin \n- timeMax \n- updatedMin If the syncToken expires, the server will respond with a 410 GONE response code and the client should clear its storage and perform a full synchronization without any syncToken.\nLearn more about incremental synchronization.\nOptional. The default is to return all entries.", + "location": "query", + "type": "string" + }, + "timeMax": { + "description": "Upper bound (exclusive) for an event's start time to filter by. Optional. The default is not to filter by start time. Must be an RFC3339 timestamp with mandatory time zone offset, e.g., 2011-06-03T10:00:00-07:00, 2011-06-03T10:00:00Z. Milliseconds may be provided but will be ignored. If timeMin is set, timeMax must be greater than timeMin.", + "format": "date-time", + "location": "query", + "type": "string" + }, + "timeMin": { + "description": "Lower bound (inclusive) for an event's end time to filter by. Optional. The default is not to filter by end time. Must be an RFC3339 timestamp with mandatory time zone offset, e.g., 2011-06-03T10:00:00-07:00, 2011-06-03T10:00:00Z. Milliseconds may be provided but will be ignored. If timeMax is set, timeMin must be smaller than timeMax.", + "format": "date-time", + "location": "query", + "type": "string" + }, + "timeZone": { + "description": "Time zone used in the response. Optional. The default is the time zone of the calendar.", + "location": "query", + "type": "string" + }, + "updatedMin": { + "description": "Lower bound for an event's last modification time (as a RFC3339 timestamp) to filter by. When specified, entries deleted since this time will always be included regardless of showDeleted. Optional. The default is not to filter by last modification time.", + "format": "date-time", + "location": "query", + "type": "string" + } + }, + "path": "calendars/{calendarId}/events", + "response": { + "$ref": "Events" + }, + "scopes": [ + "https://www.googleapis.com/auth/calendar", + "https://www.googleapis.com/auth/calendar.readonly" + ], + "supportsSubscription": true + }, + "move": { + "description": "Moves an event to another calendar, i.e. changes an event's organizer.", + "httpMethod": "POST", + "id": "calendar.events.move", + "parameterOrder": [ + "calendarId", + "eventId", + "destination" + ], + "parameters": { + "calendarId": { + "description": "Calendar identifier of the source calendar where the event currently is on.", + "location": "path", + "required": true, + "type": "string" + }, + "destination": { + "description": "Calendar identifier of the target calendar where the event is to be moved to.", + "location": "query", + "required": true, + "type": "string" + }, + "eventId": { + "description": "Event identifier.", + "location": "path", + "required": true, + "type": "string" + }, + "sendNotifications": { + "description": "Whether to send notifications about the change of the event's organizer. Optional. The default is False.", + "location": "query", + "type": "boolean" + } + }, + "path": "calendars/{calendarId}/events/{eventId}/move", + "response": { + "$ref": "Event" + }, + "scopes": [ + "https://www.googleapis.com/auth/calendar" + ] + }, + "patch": { + "description": "Updates an event. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "calendar.events.patch", + "parameterOrder": [ + "calendarId", + "eventId" + ], + "parameters": { + "alwaysIncludeEmail": { + "description": "Whether to always include a value in the email field for the organizer, creator and attendees, even if no real email is available (i.e. a generated, non-working value will be provided). The use of this option is discouraged and should only be used by clients which cannot handle the absence of an email address value in the mentioned places. Optional. The default is False.", + "location": "query", + "type": "boolean" + }, + "calendarId": { + "description": "Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the \"primary\" keyword.", + "location": "path", + "required": true, + "type": "string" + }, + "conferenceDataVersion": { + "description": "Version number of conference data supported by the API client. Version 0 assumes no conference data support and ignores conference data in the event's body. Version 1 enables support for copying of ConferenceData as well as for creating new conferences using the createRequest field of conferenceData. The default is 0.", + "format": "int32", + "location": "query", + "maximum": "1", + "minimum": "0", + "type": "integer" + }, + "eventId": { + "description": "Event identifier.", + "location": "path", + "required": true, + "type": "string" + }, + "maxAttendees": { + "description": "The maximum number of attendees to include in the response. If there are more than the specified number of attendees, only the participant is returned. Optional.", + "format": "int32", + "location": "query", + "minimum": "1", + "type": "integer" + }, + "sendNotifications": { + "description": "Whether to send notifications about the event update (e.g. attendee's responses, title changes, etc.). Optional. The default is False.", + "location": "query", + "type": "boolean" + }, + "supportsAttachments": { + "description": "Whether API client performing operation supports event attachments. Optional. The default is False.", + "location": "query", + "type": "boolean" + } + }, + "path": "calendars/{calendarId}/events/{eventId}", + "request": { + "$ref": "Event" + }, + "response": { + "$ref": "Event" + }, + "scopes": [ + "https://www.googleapis.com/auth/calendar" + ] + }, + "quickAdd": { + "description": "Creates an event based on a simple text string.", + "httpMethod": "POST", + "id": "calendar.events.quickAdd", + "parameterOrder": [ + "calendarId", + "text" + ], + "parameters": { + "calendarId": { + "description": "Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the \"primary\" keyword.", + "location": "path", + "required": true, + "type": "string" + }, + "sendNotifications": { + "description": "Whether to send notifications about the creation of the event. Optional. The default is False.", + "location": "query", + "type": "boolean" + }, + "text": { + "description": "The text describing the event to be created.", + "location": "query", + "required": true, + "type": "string" + } + }, + "path": "calendars/{calendarId}/events/quickAdd", + "response": { + "$ref": "Event" + }, + "scopes": [ + "https://www.googleapis.com/auth/calendar" + ] + }, + "update": { + "description": "Updates an event.", + "httpMethod": "PUT", + "id": "calendar.events.update", + "parameterOrder": [ + "calendarId", + "eventId" + ], + "parameters": { + "alwaysIncludeEmail": { + "description": "Whether to always include a value in the email field for the organizer, creator and attendees, even if no real email is available (i.e. a generated, non-working value will be provided). The use of this option is discouraged and should only be used by clients which cannot handle the absence of an email address value in the mentioned places. Optional. The default is False.", + "location": "query", + "type": "boolean" + }, + "calendarId": { + "description": "Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the \"primary\" keyword.", + "location": "path", + "required": true, + "type": "string" + }, + "conferenceDataVersion": { + "description": "Version number of conference data supported by the API client. Version 0 assumes no conference data support and ignores conference data in the event's body. Version 1 enables support for copying of ConferenceData as well as for creating new conferences using the createRequest field of conferenceData. The default is 0.", + "format": "int32", + "location": "query", + "maximum": "1", + "minimum": "0", + "type": "integer" + }, + "eventId": { + "description": "Event identifier.", + "location": "path", + "required": true, + "type": "string" + }, + "maxAttendees": { + "description": "The maximum number of attendees to include in the response. If there are more than the specified number of attendees, only the participant is returned. Optional.", + "format": "int32", + "location": "query", + "minimum": "1", + "type": "integer" + }, + "sendNotifications": { + "description": "Whether to send notifications about the event update (e.g. attendee's responses, title changes, etc.). Optional. The default is False.", + "location": "query", + "type": "boolean" + }, + "supportsAttachments": { + "description": "Whether API client performing operation supports event attachments. Optional. The default is False.", + "location": "query", + "type": "boolean" + } + }, + "path": "calendars/{calendarId}/events/{eventId}", + "request": { + "$ref": "Event" + }, + "response": { + "$ref": "Event" + }, + "scopes": [ + "https://www.googleapis.com/auth/calendar" + ] + }, + "watch": { + "description": "Watch for changes to Events resources.", + "httpMethod": "POST", + "id": "calendar.events.watch", + "parameterOrder": [ + "calendarId" + ], + "parameters": { + "alwaysIncludeEmail": { + "description": "Whether to always include a value in the email field for the organizer, creator and attendees, even if no real email is available (i.e. a generated, non-working value will be provided). The use of this option is discouraged and should only be used by clients which cannot handle the absence of an email address value in the mentioned places. Optional. The default is False.", + "location": "query", + "type": "boolean" + }, + "calendarId": { + "description": "Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the \"primary\" keyword.", + "location": "path", + "required": true, + "type": "string" + }, + "iCalUID": { + "description": "Specifies event ID in the iCalendar format to be included in the response. Optional.", + "location": "query", + "type": "string" + }, + "maxAttendees": { + "description": "The maximum number of attendees to include in the response. If there are more than the specified number of attendees, only the participant is returned. Optional.", + "format": "int32", + "location": "query", + "minimum": "1", + "type": "integer" + }, + "maxResults": { + "default": "250", + "description": "Maximum number of events returned on one result page. The number of events in the resulting page may be less than this value, or none at all, even if there are more events matching the query. Incomplete pages can be detected by a non-empty nextPageToken field in the response. By default the value is 250 events. The page size can never be larger than 2500 events. Optional.", + "format": "int32", + "location": "query", + "minimum": "1", + "type": "integer" + }, + "orderBy": { + "description": "The order of the events returned in the result. Optional. The default is an unspecified, stable order.", + "enum": [ + "startTime", + "updated" + ], + "enumDescriptions": [ + "Order by the start date/time (ascending). This is only available when querying single events (i.e. the parameter singleEvents is True)", + "Order by last modification time (ascending)." + ], + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Token specifying which result page to return. Optional.", + "location": "query", + "type": "string" + }, + "privateExtendedProperty": { + "description": "Extended properties constraint specified as propertyName=value. Matches only private properties. This parameter might be repeated multiple times to return events that match all given constraints.", + "location": "query", + "repeated": true, + "type": "string" + }, + "q": { + "description": "Free text search terms to find events that match these terms in any field, except for extended properties. Optional.", + "location": "query", + "type": "string" + }, + "sharedExtendedProperty": { + "description": "Extended properties constraint specified as propertyName=value. Matches only shared properties. This parameter might be repeated multiple times to return events that match all given constraints.", + "location": "query", + "repeated": true, + "type": "string" + }, + "showDeleted": { + "description": "Whether to include deleted events (with status equals \"cancelled\") in the result. Cancelled instances of recurring events (but not the underlying recurring event) will still be included if showDeleted and singleEvents are both False. If showDeleted and singleEvents are both True, only single instances of deleted events (but not the underlying recurring events) are returned. Optional. The default is False.", + "location": "query", + "type": "boolean" + }, + "showHiddenInvitations": { + "description": "Whether to include hidden invitations in the result. Optional. The default is False.", + "location": "query", + "type": "boolean" + }, + "singleEvents": { + "description": "Whether to expand recurring events into instances and only return single one-off events and instances of recurring events, but not the underlying recurring events themselves. Optional. The default is False.", + "location": "query", + "type": "boolean" + }, + "syncToken": { + "description": "Token obtained from the nextSyncToken field returned on the last page of results from the previous list request. It makes the result of this list request contain only entries that have changed since then. All events deleted since the previous list request will always be in the result set and it is not allowed to set showDeleted to False.\nThere are several query parameters that cannot be specified together with nextSyncToken to ensure consistency of the client state.\n\nThese are: \n- iCalUID \n- orderBy \n- privateExtendedProperty \n- q \n- sharedExtendedProperty \n- timeMin \n- timeMax \n- updatedMin If the syncToken expires, the server will respond with a 410 GONE response code and the client should clear its storage and perform a full synchronization without any syncToken.\nLearn more about incremental synchronization.\nOptional. The default is to return all entries.", + "location": "query", + "type": "string" + }, + "timeMax": { + "description": "Upper bound (exclusive) for an event's start time to filter by. Optional. The default is not to filter by start time. Must be an RFC3339 timestamp with mandatory time zone offset, e.g., 2011-06-03T10:00:00-07:00, 2011-06-03T10:00:00Z. Milliseconds may be provided but will be ignored. If timeMin is set, timeMax must be greater than timeMin.", + "format": "date-time", + "location": "query", + "type": "string" + }, + "timeMin": { + "description": "Lower bound (inclusive) for an event's end time to filter by. Optional. The default is not to filter by end time. Must be an RFC3339 timestamp with mandatory time zone offset, e.g., 2011-06-03T10:00:00-07:00, 2011-06-03T10:00:00Z. Milliseconds may be provided but will be ignored. If timeMax is set, timeMin must be smaller than timeMax.", + "format": "date-time", + "location": "query", + "type": "string" + }, + "timeZone": { + "description": "Time zone used in the response. Optional. The default is the time zone of the calendar.", + "location": "query", + "type": "string" + }, + "updatedMin": { + "description": "Lower bound for an event's last modification time (as a RFC3339 timestamp) to filter by. When specified, entries deleted since this time will always be included regardless of showDeleted. Optional. The default is not to filter by last modification time.", + "format": "date-time", + "location": "query", + "type": "string" + } + }, + "path": "calendars/{calendarId}/events/watch", + "request": { + "$ref": "Channel", + "parameterName": "resource" + }, + "response": { + "$ref": "Channel" + }, + "scopes": [ + "https://www.googleapis.com/auth/calendar", + "https://www.googleapis.com/auth/calendar.readonly" + ], + "supportsSubscription": true + } + } }, - "timeMin": { - "type": "string", - "description": "The start of the interval.", - "format": "date-time" + "freebusy": { + "methods": { + "query": { + "description": "Returns free/busy information for a set of calendars.", + "httpMethod": "POST", + "id": "calendar.freebusy.query", + "path": "freeBusy", + "request": { + "$ref": "FreeBusyRequest" + }, + "response": { + "$ref": "FreeBusyResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/calendar", + "https://www.googleapis.com/auth/calendar.readonly" + ] + } + } + }, + "settings": { + "methods": { + "get": { + "description": "Returns a single user setting.", + "httpMethod": "GET", + "id": "calendar.settings.get", + "parameterOrder": [ + "setting" + ], + "parameters": { + "setting": { + "description": "The id of the user setting.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "users/me/settings/{setting}", + "response": { + "$ref": "Setting" + }, + "scopes": [ + "https://www.googleapis.com/auth/calendar", + "https://www.googleapis.com/auth/calendar.readonly" + ] + }, + "list": { + "description": "Returns all user settings for the authenticated user.", + "httpMethod": "GET", + "id": "calendar.settings.list", + "parameters": { + "maxResults": { + "description": "Maximum number of entries returned on one result page. By default the value is 100 entries. The page size can never be larger than 250 entries. Optional.", + "format": "int32", + "location": "query", + "minimum": "1", + "type": "integer" + }, + "pageToken": { + "description": "Token specifying which result page to return. Optional.", + "location": "query", + "type": "string" + }, + "syncToken": { + "description": "Token obtained from the nextSyncToken field returned on the last page of results from the previous list request. It makes the result of this list request contain only entries that have changed since then.\nIf the syncToken expires, the server will respond with a 410 GONE response code and the client should clear its storage and perform a full synchronization without any syncToken.\nLearn more about incremental synchronization.\nOptional. The default is to return all entries.", + "location": "query", + "type": "string" + } + }, + "path": "users/me/settings", + "response": { + "$ref": "Settings" + }, + "scopes": [ + "https://www.googleapis.com/auth/calendar", + "https://www.googleapis.com/auth/calendar.readonly" + ], + "supportsSubscription": true + }, + "watch": { + "description": "Watch for changes to Settings resources.", + "httpMethod": "POST", + "id": "calendar.settings.watch", + "parameters": { + "maxResults": { + "description": "Maximum number of entries returned on one result page. By default the value is 100 entries. The page size can never be larger than 250 entries. Optional.", + "format": "int32", + "location": "query", + "minimum": "1", + "type": "integer" + }, + "pageToken": { + "description": "Token specifying which result page to return. Optional.", + "location": "query", + "type": "string" + }, + "syncToken": { + "description": "Token obtained from the nextSyncToken field returned on the last page of results from the previous list request. It makes the result of this list request contain only entries that have changed since then.\nIf the syncToken expires, the server will respond with a 410 GONE response code and the client should clear its storage and perform a full synchronization without any syncToken.\nLearn more about incremental synchronization.\nOptional. The default is to return all entries.", + "location": "query", + "type": "string" + } + }, + "path": "users/me/settings/watch", + "request": { + "$ref": "Channel", + "parameterName": "resource" + }, + "response": { + "$ref": "Channel" + }, + "scopes": [ + "https://www.googleapis.com/auth/calendar", + "https://www.googleapis.com/auth/calendar.readonly" + ], + "supportsSubscription": true + } + } } - } }, - "Setting": { - "id": "Setting", - "type": "object", - "properties": { - "etag": { - "type": "string", - "description": "ETag of the resource." + "revision": "20180325", + "rootUrl": "https://www.googleapis.com/", + "schemas": { + "Acl": { + "id": "Acl", + "properties": { + "etag": { + "description": "ETag of the collection.", + "type": "string" + }, + "items": { + "description": "List of rules on the access control list.", + "items": { + "$ref": "AclRule" + }, + "type": "array" + }, + "kind": { + "default": "calendar#acl", + "description": "Type of the collection (\"calendar#acl\").", + "type": "string" + }, + "nextPageToken": { + "description": "Token used to access the next page of this result. Omitted if no further results are available, in which case nextSyncToken is provided.", + "type": "string" + }, + "nextSyncToken": { + "description": "Token used at a later point in time to retrieve only the entries that have changed since this result was returned. Omitted if further results are available, in which case nextPageToken is provided.", + "type": "string" + } + }, + "type": "object" }, - "id": { - "type": "string", - "description": "The id of the user setting." + "AclRule": { + "id": "AclRule", + "properties": { + "etag": { + "description": "ETag of the resource.", + "type": "string" + }, + "id": { + "description": "Identifier of the ACL rule.", + "type": "string" + }, + "kind": { + "default": "calendar#aclRule", + "description": "Type of the resource (\"calendar#aclRule\").", + "type": "string" + }, + "role": { + "annotations": { + "required": [ + "calendar.acl.insert" + ] + }, + "description": "The role assigned to the scope. Possible values are: \n- \"none\" - Provides no access. \n- \"freeBusyReader\" - Provides read access to free/busy information. \n- \"reader\" - Provides read access to the calendar. Private events will appear to users with reader access, but event details will be hidden. \n- \"writer\" - Provides read and write access to the calendar. Private events will appear to users with writer access, and event details will be visible. \n- \"owner\" - Provides ownership of the calendar. This role has all of the permissions of the writer role with the additional ability to see and manipulate ACLs.", + "type": "string" + }, + "scope": { + "annotations": { + "required": [ + "calendar.acl.insert" + ] + }, + "description": "The scope of the rule.", + "properties": { + "type": { + "annotations": { + "required": [ + "calendar.acl.insert" + ] + }, + "description": "The type of the scope. Possible values are: \n- \"default\" - The public scope. This is the default value. \n- \"user\" - Limits the scope to a single user. \n- \"group\" - Limits the scope to a group. \n- \"domain\" - Limits the scope to a domain. Note: The permissions granted to the \"default\", or public, scope apply to any user, authenticated or not.", + "type": "string" + }, + "value": { + "description": "The email address of a user or group, or the name of a domain, depending on the scope type. Omitted for type \"default\".", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" }, - "kind": { - "type": "string", - "description": "Type of the resource (\"calendar#setting\").", - "default": "calendar#setting" + "Calendar": { + "id": "Calendar", + "properties": { + "conferenceProperties": { + "$ref": "ConferenceProperties", + "description": "Conferencing properties for this calendar, for example what types of conferences are allowed." + }, + "description": { + "description": "Description of the calendar. Optional.", + "type": "string" + }, + "etag": { + "description": "ETag of the resource.", + "type": "string" + }, + "id": { + "description": "Identifier of the calendar. To retrieve IDs call the calendarList.list() method.", + "type": "string" + }, + "kind": { + "default": "calendar#calendar", + "description": "Type of the resource (\"calendar#calendar\").", + "type": "string" + }, + "location": { + "description": "Geographic location of the calendar as free-form text. Optional.", + "type": "string" + }, + "summary": { + "annotations": { + "required": [ + "calendar.calendars.insert" + ] + }, + "description": "Title of the calendar.", + "type": "string" + }, + "timeZone": { + "description": "The time zone of the calendar. (Formatted as an IANA Time Zone Database name, e.g. \"Europe/Zurich\".) Optional.", + "type": "string" + } + }, + "type": "object" }, - "value": { - "type": "string", - "description": "Value of the user setting. The format of the value depends on the ID of the setting. It must always be a UTF-8 string of length up to 1024 characters." + "CalendarList": { + "id": "CalendarList", + "properties": { + "etag": { + "description": "ETag of the collection.", + "type": "string" + }, + "items": { + "description": "Calendars that are present on the user's calendar list.", + "items": { + "$ref": "CalendarListEntry" + }, + "type": "array" + }, + "kind": { + "default": "calendar#calendarList", + "description": "Type of the collection (\"calendar#calendarList\").", + "type": "string" + }, + "nextPageToken": { + "description": "Token used to access the next page of this result. Omitted if no further results are available, in which case nextSyncToken is provided.", + "type": "string" + }, + "nextSyncToken": { + "description": "Token used at a later point in time to retrieve only the entries that have changed since this result was returned. Omitted if further results are available, in which case nextPageToken is provided.", + "type": "string" + } + }, + "type": "object" + }, + "CalendarListEntry": { + "id": "CalendarListEntry", + "properties": { + "accessRole": { + "description": "The effective access role that the authenticated user has on the calendar. Read-only. Possible values are: \n- \"freeBusyReader\" - Provides read access to free/busy information. \n- \"reader\" - Provides read access to the calendar. Private events will appear to users with reader access, but event details will be hidden. \n- \"writer\" - Provides read and write access to the calendar. Private events will appear to users with writer access, and event details will be visible. \n- \"owner\" - Provides ownership of the calendar. This role has all of the permissions of the writer role with the additional ability to see and manipulate ACLs.", + "type": "string" + }, + "backgroundColor": { + "description": "The main color of the calendar in the hexadecimal format \"#0088aa\". This property supersedes the index-based colorId property. To set or change this property, you need to specify colorRgbFormat=true in the parameters of the insert, update and patch methods. Optional.", + "type": "string" + }, + "colorId": { + "description": "The color of the calendar. This is an ID referring to an entry in the calendar section of the colors definition (see the colors endpoint). This property is superseded by the backgroundColor and foregroundColor properties and can be ignored when using these properties. Optional.", + "type": "string" + }, + "conferenceProperties": { + "$ref": "ConferenceProperties", + "description": "Conferencing properties for this calendar, for example what types of conferences are allowed." + }, + "defaultReminders": { + "description": "The default reminders that the authenticated user has for this calendar.", + "items": { + "$ref": "EventReminder" + }, + "type": "array" + }, + "deleted": { + "default": "false", + "description": "Whether this calendar list entry has been deleted from the calendar list. Read-only. Optional. The default is False.", + "type": "boolean" + }, + "description": { + "description": "Description of the calendar. Optional. Read-only.", + "type": "string" + }, + "etag": { + "description": "ETag of the resource.", + "type": "string" + }, + "foregroundColor": { + "description": "The foreground color of the calendar in the hexadecimal format \"#ffffff\". This property supersedes the index-based colorId property. To set or change this property, you need to specify colorRgbFormat=true in the parameters of the insert, update and patch methods. Optional.", + "type": "string" + }, + "hidden": { + "default": "false", + "description": "Whether the calendar has been hidden from the list. Optional. The default is False.", + "type": "boolean" + }, + "id": { + "annotations": { + "required": [ + "calendar.calendarList.insert" + ] + }, + "description": "Identifier of the calendar.", + "type": "string" + }, + "kind": { + "default": "calendar#calendarListEntry", + "description": "Type of the resource (\"calendar#calendarListEntry\").", + "type": "string" + }, + "location": { + "description": "Geographic location of the calendar as free-form text. Optional. Read-only.", + "type": "string" + }, + "notificationSettings": { + "description": "The notifications that the authenticated user is receiving for this calendar.", + "properties": { + "notifications": { + "description": "The list of notifications set for this calendar.", + "items": { + "$ref": "CalendarNotification" + }, + "type": "array" + } + }, + "type": "object" + }, + "primary": { + "default": "false", + "description": "Whether the calendar is the primary calendar of the authenticated user. Read-only. Optional. The default is False.", + "type": "boolean" + }, + "selected": { + "default": "false", + "description": "Whether the calendar content shows up in the calendar UI. Optional. The default is False.", + "type": "boolean" + }, + "summary": { + "description": "Title of the calendar. Read-only.", + "type": "string" + }, + "summaryOverride": { + "description": "The summary that the authenticated user has set for this calendar. Optional.", + "type": "string" + }, + "timeZone": { + "description": "The time zone of the calendar. Optional. Read-only.", + "type": "string" + } + }, + "type": "object" + }, + "CalendarNotification": { + "id": "CalendarNotification", + "properties": { + "method": { + "annotations": { + "required": [ + "calendar.calendarList.insert", + "calendar.calendarList.update" + ] + }, + "description": "The method used to deliver the notification. Possible values are: \n- \"email\" - Reminders are sent via email. \n- \"sms\" - Reminders are sent via SMS. This value is read-only and is ignored on inserts and updates. SMS reminders are only available for G Suite customers.", + "type": "string" + }, + "type": { + "annotations": { + "required": [ + "calendar.calendarList.insert", + "calendar.calendarList.update" + ] + }, + "description": "The type of notification. Possible values are: \n- \"eventCreation\" - Notification sent when a new event is put on the calendar. \n- \"eventChange\" - Notification sent when an event is changed. \n- \"eventCancellation\" - Notification sent when an event is cancelled. \n- \"eventResponse\" - Notification sent when an event is changed. \n- \"agenda\" - An agenda with the events of the day (sent out in the morning).", + "type": "string" + } + }, + "type": "object" + }, + "Channel": { + "id": "Channel", + "properties": { + "address": { + "description": "The address where notifications are delivered for this channel.", + "type": "string" + }, + "expiration": { + "description": "Date and time of notification channel expiration, expressed as a Unix timestamp, in milliseconds. Optional.", + "format": "int64", + "type": "string" + }, + "id": { + "description": "A UUID or similar unique string that identifies this channel.", + "type": "string" + }, + "kind": { + "default": "api#channel", + "description": "Identifies this as a notification channel used to watch for changes to a resource. Value: the fixed string \"api#channel\".", + "type": "string" + }, + "params": { + "additionalProperties": { + "description": "Declares a new parameter by name.", + "type": "string" + }, + "description": "Additional parameters controlling delivery channel behavior. Optional.", + "type": "object" + }, + "payload": { + "description": "A Boolean value to indicate whether payload is wanted. Optional.", + "type": "boolean" + }, + "resourceId": { + "description": "An opaque ID that identifies the resource being watched on this channel. Stable across different API versions.", + "type": "string" + }, + "resourceUri": { + "description": "A version-specific identifier for the watched resource.", + "type": "string" + }, + "token": { + "description": "An arbitrary string delivered to the target address with each notification delivered over this channel. Optional.", + "type": "string" + }, + "type": { + "description": "The type of delivery mechanism used for this channel.", + "type": "string" + } + }, + "type": "object" + }, + "ColorDefinition": { + "id": "ColorDefinition", + "properties": { + "background": { + "description": "The background color associated with this color definition.", + "type": "string" + }, + "foreground": { + "description": "The foreground color that can be used to write on top of a background with 'background' color.", + "type": "string" + } + }, + "type": "object" + }, + "Colors": { + "id": "Colors", + "properties": { + "calendar": { + "additionalProperties": { + "$ref": "ColorDefinition", + "description": "A calendar color defintion." + }, + "description": "A global palette of calendar colors, mapping from the color ID to its definition. A calendarListEntry resource refers to one of these color IDs in its color field. Read-only.", + "type": "object" + }, + "event": { + "additionalProperties": { + "$ref": "ColorDefinition", + "description": "An event color definition." + }, + "description": "A global palette of event colors, mapping from the color ID to its definition. An event resource may refer to one of these color IDs in its color field. Read-only.", + "type": "object" + }, + "kind": { + "default": "calendar#colors", + "description": "Type of the resource (\"calendar#colors\").", + "type": "string" + }, + "updated": { + "description": "Last modification time of the color palette (as a RFC3339 timestamp). Read-only.", + "format": "date-time", + "type": "string" + } + }, + "type": "object" + }, + "ConferenceData": { + "id": "ConferenceData", + "properties": { + "conferenceId": { + "description": "The ID of the conference.\nCan be used by developers to keep track of conferences, should not be displayed to users.\nValues for solution types: \n- \"eventHangout\": unset.\n- \"eventNamedHangout\": the name of the Hangout.\n- \"hangoutsMeet\": the 10-letter meeting code, for example \"aaa-bbbb-ccc\". Optional.", + "type": "string" + }, + "conferenceSolution": { + "$ref": "ConferenceSolution", + "description": "The conference solution, such as Hangouts or Hangouts Meet.\nUnset for a conference with a failed create request.\nEither conferenceSolution and at least one entryPoint, or createRequest is required." + }, + "createRequest": { + "$ref": "CreateConferenceRequest", + "description": "A request to generate a new conference and attach it to the event. The data is generated asynchronously. To see whether the data is present check the status field.\nEither conferenceSolution and at least one entryPoint, or createRequest is required." + }, + "entryPoints": { + "description": "Information about individual conference entry points, such as URLs or phone numbers.\nAll of them must belong to the same conference.\nEither conferenceSolution and at least one entryPoint, or createRequest is required.", + "items": { + "$ref": "EntryPoint" + }, + "type": "array" + }, + "notes": { + "description": "Additional notes (such as instructions from the domain administrator, legal notices) to display to the user. Can contain HTML. The maximum length is 2048 characters. Optional.", + "type": "string" + }, + "parameters": { + "$ref": "ConferenceParameters", + "description": "Additional properties related to a conference. An example would be a solution-specific setting for enabling video streaming." + }, + "signature": { + "description": "The signature of the conference data.\nGenereated on server side. Must be preserved while copying the conference data between events, otherwise the conference data will not be copied.\nUnset for a conference with a failed create request.\nOptional for a conference with a pending create request.", + "type": "string" + } + }, + "type": "object" + }, + "ConferenceParameters": { + "id": "ConferenceParameters", + "properties": { + "addOnParameters": { + "$ref": "ConferenceParametersAddOnParameters", + "description": "Additional add-on specific data." + } + }, + "type": "object" + }, + "ConferenceParametersAddOnParameters": { + "id": "ConferenceParametersAddOnParameters", + "properties": { + "parameters": { + "additionalProperties": { + "type": "string" + }, + "type": "object" + } + }, + "type": "object" + }, + "ConferenceProperties": { + "id": "ConferenceProperties", + "properties": { + "allowedConferenceSolutionTypes": { + "description": "The types of conference solutions that are supported for this calendar.\nThe possible values are: \n- \"eventHangout\" \n- \"eventNamedHangout\" \n- \"hangoutsMeet\" Optional.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "ConferenceRequestStatus": { + "id": "ConferenceRequestStatus", + "properties": { + "statusCode": { + "description": "The current status of the conference create request. Read-only.\nThe possible values are: \n- \"pending\": the conference create request is still being processed.\n- \"success\": the conference create request succeeded, the entry points are populated.\n- \"failure\": the conference create request failed, there are no entry points.", + "type": "string" + } + }, + "type": "object" + }, + "ConferenceSolution": { + "id": "ConferenceSolution", + "properties": { + "iconUri": { + "description": "The user-visible icon for this solution.", + "type": "string" + }, + "key": { + "$ref": "ConferenceSolutionKey", + "description": "The key which can uniquely identify the conference solution for this event." + }, + "name": { + "description": "The user-visible name of this solution. Not localized.", + "type": "string" + } + }, + "type": "object" + }, + "ConferenceSolutionKey": { + "id": "ConferenceSolutionKey", + "properties": { + "type": { + "description": "The conference solution type.\nIf a client encounters an unfamiliar or empty type, it should still be able to display the entry points. However, it should disallow modifications.\nThe possible values are: \n- \"eventHangout\" for Hangouts for consumers (http://hangouts.google.com)\n- \"eventNamedHangout\" for classic Hangouts for G Suite users (http://hangouts.google.com)\n- \"hangoutsMeet\" for Hangouts Meet (http://meet.google.com)", + "type": "string" + } + }, + "type": "object" + }, + "CreateConferenceRequest": { + "id": "CreateConferenceRequest", + "properties": { + "conferenceSolutionKey": { + "$ref": "ConferenceSolutionKey", + "description": "The conference solution, such as Hangouts or Hangouts Meet." + }, + "requestId": { + "description": "The client-generated unique ID for this request.\nClients should regenerate this ID for every new request. If an ID provided is the same as for the previous request, the request is ignored.", + "type": "string" + }, + "status": { + "$ref": "ConferenceRequestStatus", + "description": "The status of the conference create request." + } + }, + "type": "object" + }, + "EntryPoint": { + "id": "EntryPoint", + "properties": { + "accessCode": { + "description": "The access code to access the conference. The maximum length is 128 characters.\nWhen creating new conference data, populate only the subset of {meetingCode, accessCode, passcode, password, pin} fields that match the terminology that the conference provider uses. Only the populated fields should be displayed.\nOptional.", + "type": "string" + }, + "entryPointType": { + "description": "The type of the conference entry point.\nPossible values are: \n- \"video\" - joining a conference over HTTP. A conference can have zero or one video entry point.\n- \"phone\" - joining a conference by dialing a phone number. A conference can have zero or more phone entry points.\n- \"sip\" - joining a conference over SIP. A conference can have zero or one sip entry point.\n- \"more\" - further conference joining instructions, for example additional phone numbers. A conference can have zero or one more entry point. A conference with only a more entry point is not a valid conference.", + "type": "string" + }, + "label": { + "description": "The label for the URI. Visible to end users. Not localized. The maximum length is 512 characters.\nExamples: \n- for video: meet.google.com/aaa-bbbb-ccc\n- for phone: +1 123 268 2601\n- for sip: 12345678@altostrat.com\n- for more: should not be filled \nOptional.", + "type": "string" + }, + "meetingCode": { + "description": "The meeting code to access the conference. The maximum length is 128 characters.\nWhen creating new conference data, populate only the subset of {meetingCode, accessCode, passcode, password, pin} fields that match the terminology that the conference provider uses. Only the populated fields should be displayed.\nOptional.", + "type": "string" + }, + "passcode": { + "description": "The passcode to access the conference. The maximum length is 128 characters.\nWhen creating new conference data, populate only the subset of {meetingCode, accessCode, passcode, password, pin} fields that match the terminology that the conference provider uses. Only the populated fields should be displayed.", + "type": "string" + }, + "password": { + "description": "The password to access the conference. The maximum length is 128 characters.\nWhen creating new conference data, populate only the subset of {meetingCode, accessCode, passcode, password, pin} fields that match the terminology that the conference provider uses. Only the populated fields should be displayed.\nOptional.", + "type": "string" + }, + "pin": { + "description": "The PIN to access the conference. The maximum length is 128 characters.\nWhen creating new conference data, populate only the subset of {meetingCode, accessCode, passcode, password, pin} fields that match the terminology that the conference provider uses. Only the populated fields should be displayed.\nOptional.", + "type": "string" + }, + "uri": { + "description": "The URI of the entry point. The maximum length is 1300 characters.\nFormat: \n- for video, http: or https: schema is required.\n- for phone, tel: schema is required. The URI should include the entire dial sequence (e.g., tel:+12345678900,,,123456789;1234).\n- for sip, sip: schema is required, e.g., sip:12345678@myprovider.com.\n- for more, http: or https: schema is required.", + "type": "string" + } + }, + "type": "object" + }, + "Error": { + "id": "Error", + "properties": { + "domain": { + "description": "Domain, or broad category, of the error.", + "type": "string" + }, + "reason": { + "description": "Specific reason for the error. Some of the possible values are: \n- \"groupTooBig\" - The group of users requested is too large for a single query. \n- \"tooManyCalendarsRequested\" - The number of calendars requested is too large for a single query. \n- \"notFound\" - The requested resource was not found. \n- \"internalError\" - The API service has encountered an internal error. Additional error types may be added in the future, so clients should gracefully handle additional error statuses not included in this list.", + "type": "string" + } + }, + "type": "object" + }, + "Event": { + "id": "Event", + "properties": { + "anyoneCanAddSelf": { + "default": "false", + "description": "Whether anyone can invite themselves to the event (currently works for Google+ events only). Optional. The default is False.", + "type": "boolean" + }, + "attachments": { + "description": "File attachments for the event. Currently only Google Drive attachments are supported.\nIn order to modify attachments the supportsAttachments request parameter should be set to true.\nThere can be at most 25 attachments per event,", + "items": { + "$ref": "EventAttachment" + }, + "type": "array" + }, + "attendees": { + "description": "The attendees of the event. See the Events with attendees guide for more information on scheduling events with other calendar users.", + "items": { + "$ref": "EventAttendee" + }, + "type": "array" + }, + "attendeesOmitted": { + "default": "false", + "description": "Whether attendees may have been omitted from the event's representation. When retrieving an event, this may be due to a restriction specified by the maxAttendee query parameter. When updating an event, this can be used to only update the participant's response. Optional. The default is False.", + "type": "boolean" + }, + "colorId": { + "description": "The color of the event. This is an ID referring to an entry in the event section of the colors definition (see the colors endpoint). Optional.", + "type": "string" + }, + "conferenceData": { + "$ref": "ConferenceData", + "description": "The conference-related information, such as details of a Hangouts Meet conference. To create new conference details use the createRequest field. To persist your changes, remember to set the conferenceDataVersion request parameter to 1 for all event modification requests." + }, + "created": { + "description": "Creation time of the event (as a RFC3339 timestamp). Read-only.", + "format": "date-time", + "type": "string" + }, + "creator": { + "description": "The creator of the event. Read-only.", + "properties": { + "displayName": { + "description": "The creator's name, if available.", + "type": "string" + }, + "email": { + "description": "The creator's email address, if available.", + "type": "string" + }, + "id": { + "description": "The creator's Profile ID, if available. It corresponds to theid field in the People collection of the Google+ API", + "type": "string" + }, + "self": { + "default": "false", + "description": "Whether the creator corresponds to the calendar on which this copy of the event appears. Read-only. The default is False.", + "type": "boolean" + } + }, + "type": "object" + }, + "description": { + "description": "Description of the event. Optional.", + "type": "string" + }, + "end": { + "$ref": "EventDateTime", + "annotations": { + "required": [ + "calendar.events.import", + "calendar.events.insert", + "calendar.events.update" + ] + }, + "description": "The (exclusive) end time of the event. For a recurring event, this is the end time of the first instance." + }, + "endTimeUnspecified": { + "default": "false", + "description": "Whether the end time is actually unspecified. An end time is still provided for compatibility reasons, even if this attribute is set to True. The default is False.", + "type": "boolean" + }, + "etag": { + "description": "ETag of the resource.", + "type": "string" + }, + "extendedProperties": { + "description": "Extended properties of the event.", + "properties": { + "private": { + "additionalProperties": { + "description": "The name of the private property and the corresponding value.", + "type": "string" + }, + "description": "Properties that are private to the copy of the event that appears on this calendar.", + "type": "object" + }, + "shared": { + "additionalProperties": { + "description": "The name of the shared property and the corresponding value.", + "type": "string" + }, + "description": "Properties that are shared between copies of the event on other attendees' calendars.", + "type": "object" + } + }, + "type": "object" + }, + "gadget": { + "description": "A gadget that extends this event.", + "properties": { + "display": { + "description": "The gadget's display mode. Optional. Possible values are: \n- \"icon\" - The gadget displays next to the event's title in the calendar view. \n- \"chip\" - The gadget displays when the event is clicked.", + "type": "string" + }, + "height": { + "description": "The gadget's height in pixels. The height must be an integer greater than 0. Optional.", + "format": "int32", + "type": "integer" + }, + "iconLink": { + "description": "The gadget's icon URL. The URL scheme must be HTTPS.", + "type": "string" + }, + "link": { + "description": "The gadget's URL. The URL scheme must be HTTPS.", + "type": "string" + }, + "preferences": { + "additionalProperties": { + "description": "The preference name and corresponding value.", + "type": "string" + }, + "description": "Preferences.", + "type": "object" + }, + "title": { + "description": "The gadget's title.", + "type": "string" + }, + "type": { + "description": "The gadget's type.", + "type": "string" + }, + "width": { + "description": "The gadget's width in pixels. The width must be an integer greater than 0. Optional.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "guestsCanInviteOthers": { + "default": "true", + "description": "Whether attendees other than the organizer can invite others to the event. Optional. The default is True.", + "type": "boolean" + }, + "guestsCanModify": { + "default": "false", + "description": "Whether attendees other than the organizer can modify the event. Optional. The default is False.", + "type": "boolean" + }, + "guestsCanSeeOtherGuests": { + "default": "true", + "description": "Whether attendees other than the organizer can see who the event's attendees are. Optional. The default is True.", + "type": "boolean" + }, + "hangoutLink": { + "description": "An absolute link to the Google+ hangout associated with this event. Read-only.", + "type": "string" + }, + "htmlLink": { + "description": "An absolute link to this event in the Google Calendar Web UI. Read-only.", + "type": "string" + }, + "iCalUID": { + "annotations": { + "required": [ + "calendar.events.import" + ] + }, + "description": "Event unique identifier as defined in RFC5545. It is used to uniquely identify events accross calendaring systems and must be supplied when importing events via the import method.\nNote that the icalUID and the id are not identical and only one of them should be supplied at event creation time. One difference in their semantics is that in recurring events, all occurrences of one event have different ids while they all share the same icalUIDs.", + "type": "string" + }, + "id": { + "description": "Opaque identifier of the event. When creating new single or recurring events, you can specify their IDs. Provided IDs must follow these rules: \n- characters allowed in the ID are those used in base32hex encoding, i.e. lowercase letters a-v and digits 0-9, see section 3.1.2 in RFC2938 \n- the length of the ID must be between 5 and 1024 characters \n- the ID must be unique per calendar Due to the globally distributed nature of the system, we cannot guarantee that ID collisions will be detected at event creation time. To minimize the risk of collisions we recommend using an established UUID algorithm such as one described in RFC4122.\nIf you do not specify an ID, it will be automatically generated by the server.\nNote that the icalUID and the id are not identical and only one of them should be supplied at event creation time. One difference in their semantics is that in recurring events, all occurrences of one event have different ids while they all share the same icalUIDs.", + "type": "string" + }, + "kind": { + "default": "calendar#event", + "description": "Type of the resource (\"calendar#event\").", + "type": "string" + }, + "location": { + "description": "Geographic location of the event as free-form text. Optional.", + "type": "string" + }, + "locked": { + "default": "false", + "description": "Whether this is a locked event copy where no changes can be made to the main event fields \"summary\", \"description\", \"location\", \"start\", \"end\" or \"recurrence\". The default is False. Read-Only.", + "type": "boolean" + }, + "organizer": { + "description": "The organizer of the event. If the organizer is also an attendee, this is indicated with a separate entry in attendees with the organizer field set to True. To change the organizer, use the move operation. Read-only, except when importing an event.", + "properties": { + "displayName": { + "description": "The organizer's name, if available.", + "type": "string" + }, + "email": { + "description": "The organizer's email address, if available. It must be a valid email address as per RFC5322.", + "type": "string" + }, + "id": { + "description": "The organizer's Profile ID, if available. It corresponds to theid field in the People collection of the Google+ API", + "type": "string" + }, + "self": { + "default": "false", + "description": "Whether the organizer corresponds to the calendar on which this copy of the event appears. Read-only. The default is False.", + "type": "boolean" + } + }, + "type": "object" + }, + "originalStartTime": { + "$ref": "EventDateTime", + "description": "For an instance of a recurring event, this is the time at which this event would start according to the recurrence data in the recurring event identified by recurringEventId. Immutable." + }, + "privateCopy": { + "default": "false", + "description": "Whether this is a private event copy where changes are not shared with other copies on other calendars. Optional. Immutable. The default is False.", + "type": "boolean" + }, + "recurrence": { + "description": "List of RRULE, EXRULE, RDATE and EXDATE lines for a recurring event, as specified in RFC5545. Note that DTSTART and DTEND lines are not allowed in this field; event start and end times are specified in the start and end fields. This field is omitted for single events or instances of recurring events.", + "items": { + "type": "string" + }, + "type": "array" + }, + "recurringEventId": { + "description": "For an instance of a recurring event, this is the id of the recurring event to which this instance belongs. Immutable.", + "type": "string" + }, + "reminders": { + "description": "Information about the event's reminders for the authenticated user.", + "properties": { + "overrides": { + "description": "If the event doesn't use the default reminders, this lists the reminders specific to the event, or, if not set, indicates that no reminders are set for this event. The maximum number of override reminders is 5.", + "items": { + "$ref": "EventReminder" + }, + "type": "array" + }, + "useDefault": { + "description": "Whether the default reminders of the calendar apply to the event.", + "type": "boolean" + } + }, + "type": "object" + }, + "sequence": { + "description": "Sequence number as per iCalendar.", + "format": "int32", + "type": "integer" + }, + "source": { + "description": "Source from which the event was created. For example, a web page, an email message or any document identifiable by an URL with HTTP or HTTPS scheme. Can only be seen or modified by the creator of the event.", + "properties": { + "title": { + "description": "Title of the source; for example a title of a web page or an email subject.", + "type": "string" + }, + "url": { + "description": "URL of the source pointing to a resource. The URL scheme must be HTTP or HTTPS.", + "type": "string" + } + }, + "type": "object" + }, + "start": { + "$ref": "EventDateTime", + "annotations": { + "required": [ + "calendar.events.import", + "calendar.events.insert", + "calendar.events.update" + ] + }, + "description": "The (inclusive) start time of the event. For a recurring event, this is the start time of the first instance." + }, + "status": { + "description": "Status of the event. Optional. Possible values are: \n- \"confirmed\" - The event is confirmed. This is the default status. \n- \"tentative\" - The event is tentatively confirmed. \n- \"cancelled\" - The event is cancelled.", + "type": "string" + }, + "summary": { + "description": "Title of the event.", + "type": "string" + }, + "transparency": { + "default": "opaque", + "description": "Whether the event blocks time on the calendar. Optional. Possible values are: \n- \"opaque\" - Default value. The event does block time on the calendar. This is equivalent to setting Show me as to Busy in the Calendar UI. \n- \"transparent\" - The event does not block time on the calendar. This is equivalent to setting Show me as to Available in the Calendar UI.", + "type": "string" + }, + "updated": { + "description": "Last modification time of the event (as a RFC3339 timestamp). Read-only.", + "format": "date-time", + "type": "string" + }, + "visibility": { + "default": "default", + "description": "Visibility of the event. Optional. Possible values are: \n- \"default\" - Uses the default visibility for events on the calendar. This is the default value. \n- \"public\" - The event is public and event details are visible to all readers of the calendar. \n- \"private\" - The event is private and only event attendees may view event details. \n- \"confidential\" - The event is private. This value is provided for compatibility reasons.", + "type": "string" + } + }, + "type": "object" + }, + "EventAttachment": { + "id": "EventAttachment", + "properties": { + "fileId": { + "description": "ID of the attached file. Read-only.\nFor Google Drive files, this is the ID of the corresponding Files resource entry in the Drive API.", + "type": "string" + }, + "fileUrl": { + "annotations": { + "required": [ + "calendar.events.import", + "calendar.events.insert", + "calendar.events.update" + ] + }, + "description": "URL link to the attachment.\nFor adding Google Drive file attachments use the same format as in alternateLink property of the Files resource in the Drive API.", + "type": "string" + }, + "iconLink": { + "description": "URL link to the attachment's icon. Read-only.", + "type": "string" + }, + "mimeType": { + "description": "Internet media type (MIME type) of the attachment.", + "type": "string" + }, + "title": { + "description": "Attachment title.", + "type": "string" + } + }, + "type": "object" + }, + "EventAttendee": { + "id": "EventAttendee", + "properties": { + "additionalGuests": { + "default": "0", + "description": "Number of additional guests. Optional. The default is 0.", + "format": "int32", + "type": "integer" + }, + "comment": { + "description": "The attendee's response comment. Optional.", + "type": "string" + }, + "displayName": { + "description": "The attendee's name, if available. Optional.", + "type": "string" + }, + "email": { + "annotations": { + "required": [ + "calendar.events.import", + "calendar.events.insert", + "calendar.events.update" + ] + }, + "description": "The attendee's email address, if available. This field must be present when adding an attendee. It must be a valid email address as per RFC5322.", + "type": "string" + }, + "id": { + "description": "The attendee's Profile ID, if available. It corresponds to theid field in the People collection of the Google+ API", + "type": "string" + }, + "optional": { + "default": "false", + "description": "Whether this is an optional attendee. Optional. The default is False.", + "type": "boolean" + }, + "organizer": { + "description": "Whether the attendee is the organizer of the event. Read-only. The default is False.", + "type": "boolean" + }, + "resource": { + "default": "false", + "description": "Whether the attendee is a resource. Can only be set when the attendee is added to the event for the first time. Subsequent modifications are ignored. Optional. The default is False.", + "type": "boolean" + }, + "responseStatus": { + "description": "The attendee's response status. Possible values are: \n- \"needsAction\" - The attendee has not responded to the invitation. \n- \"declined\" - The attendee has declined the invitation. \n- \"tentative\" - The attendee has tentatively accepted the invitation. \n- \"accepted\" - The attendee has accepted the invitation.", + "type": "string" + }, + "self": { + "default": "false", + "description": "Whether this entry represents the calendar on which this copy of the event appears. Read-only. The default is False.", + "type": "boolean" + } + }, + "type": "object" + }, + "EventDateTime": { + "id": "EventDateTime", + "properties": { + "date": { + "description": "The date, in the format \"yyyy-mm-dd\", if this is an all-day event.", + "format": "date", + "type": "string" + }, + "dateTime": { + "description": "The time, as a combined date-time value (formatted according to RFC3339). A time zone offset is required unless a time zone is explicitly specified in timeZone.", + "format": "date-time", + "type": "string" + }, + "timeZone": { + "description": "The time zone in which the time is specified. (Formatted as an IANA Time Zone Database name, e.g. \"Europe/Zurich\".) For recurring events this field is required and specifies the time zone in which the recurrence is expanded. For single events this field is optional and indicates a custom time zone for the event start/end.", + "type": "string" + } + }, + "type": "object" + }, + "EventReminder": { + "id": "EventReminder", + "properties": { + "method": { + "annotations": { + "required": [ + "calendar.calendarList.insert", + "calendar.calendarList.update", + "calendar.events.import", + "calendar.events.insert", + "calendar.events.update" + ] + }, + "description": "The method used by this reminder. Possible values are: \n- \"email\" - Reminders are sent via email. \n- \"sms\" - Reminders are sent via SMS. These are only available for G Suite customers. Requests to set SMS reminders for other account types are ignored. \n- \"popup\" - Reminders are sent via a UI popup.", + "type": "string" + }, + "minutes": { + "annotations": { + "required": [ + "calendar.calendarList.insert", + "calendar.calendarList.update", + "calendar.events.import", + "calendar.events.insert", + "calendar.events.update" + ] + }, + "description": "Number of minutes before the start of the event when the reminder should trigger. Valid values are between 0 and 40320 (4 weeks in minutes).", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "Events": { + "id": "Events", + "properties": { + "accessRole": { + "description": "The user's access role for this calendar. Read-only. Possible values are: \n- \"none\" - The user has no access. \n- \"freeBusyReader\" - The user has read access to free/busy information. \n- \"reader\" - The user has read access to the calendar. Private events will appear to users with reader access, but event details will be hidden. \n- \"writer\" - The user has read and write access to the calendar. Private events will appear to users with writer access, and event details will be visible. \n- \"owner\" - The user has ownership of the calendar. This role has all of the permissions of the writer role with the additional ability to see and manipulate ACLs.", + "type": "string" + }, + "defaultReminders": { + "description": "The default reminders on the calendar for the authenticated user. These reminders apply to all events on this calendar that do not explicitly override them (i.e. do not have reminders.useDefault set to True).", + "items": { + "$ref": "EventReminder" + }, + "type": "array" + }, + "description": { + "description": "Description of the calendar. Read-only.", + "type": "string" + }, + "etag": { + "description": "ETag of the collection.", + "type": "string" + }, + "items": { + "description": "List of events on the calendar.", + "items": { + "$ref": "Event" + }, + "type": "array" + }, + "kind": { + "default": "calendar#events", + "description": "Type of the collection (\"calendar#events\").", + "type": "string" + }, + "nextPageToken": { + "description": "Token used to access the next page of this result. Omitted if no further results are available, in which case nextSyncToken is provided.", + "type": "string" + }, + "nextSyncToken": { + "description": "Token used at a later point in time to retrieve only the entries that have changed since this result was returned. Omitted if further results are available, in which case nextPageToken is provided.", + "type": "string" + }, + "summary": { + "description": "Title of the calendar. Read-only.", + "type": "string" + }, + "timeZone": { + "description": "The time zone of the calendar. Read-only.", + "type": "string" + }, + "updated": { + "description": "Last modification time of the calendar (as a RFC3339 timestamp). Read-only.", + "format": "date-time", + "type": "string" + } + }, + "type": "object" + }, + "FreeBusyCalendar": { + "id": "FreeBusyCalendar", + "properties": { + "busy": { + "description": "List of time ranges during which this calendar should be regarded as busy.", + "items": { + "$ref": "TimePeriod" + }, + "type": "array" + }, + "errors": { + "description": "Optional error(s) (if computation for the calendar failed).", + "items": { + "$ref": "Error" + }, + "type": "array" + } + }, + "type": "object" + }, + "FreeBusyGroup": { + "id": "FreeBusyGroup", + "properties": { + "calendars": { + "description": "List of calendars' identifiers within a group.", + "items": { + "type": "string" + }, + "type": "array" + }, + "errors": { + "description": "Optional error(s) (if computation for the group failed).", + "items": { + "$ref": "Error" + }, + "type": "array" + } + }, + "type": "object" + }, + "FreeBusyRequest": { + "id": "FreeBusyRequest", + "properties": { + "calendarExpansionMax": { + "description": "Maximal number of calendars for which FreeBusy information is to be provided. Optional.", + "format": "int32", + "type": "integer" + }, + "groupExpansionMax": { + "description": "Maximal number of calendar identifiers to be provided for a single group. Optional. An error will be returned for a group with more members than this value.", + "format": "int32", + "type": "integer" + }, + "items": { + "description": "List of calendars and/or groups to query.", + "items": { + "$ref": "FreeBusyRequestItem" + }, + "type": "array" + }, + "timeMax": { + "description": "The end of the interval for the query.", + "format": "date-time", + "type": "string" + }, + "timeMin": { + "description": "The start of the interval for the query.", + "format": "date-time", + "type": "string" + }, + "timeZone": { + "default": "UTC", + "description": "Time zone used in the response. Optional. The default is UTC.", + "type": "string" + } + }, + "type": "object" + }, + "FreeBusyRequestItem": { + "id": "FreeBusyRequestItem", + "properties": { + "id": { + "description": "The identifier of a calendar or a group.", + "type": "string" + } + }, + "type": "object" + }, + "FreeBusyResponse": { + "id": "FreeBusyResponse", + "properties": { + "calendars": { + "additionalProperties": { + "$ref": "FreeBusyCalendar", + "description": "Free/busy expansions for a single calendar." + }, + "description": "List of free/busy information for calendars.", + "type": "object" + }, + "groups": { + "additionalProperties": { + "$ref": "FreeBusyGroup", + "description": "List of calendars that are members of this group." + }, + "description": "Expansion of groups.", + "type": "object" + }, + "kind": { + "default": "calendar#freeBusy", + "description": "Type of the resource (\"calendar#freeBusy\").", + "type": "string" + }, + "timeMax": { + "description": "The end of the interval.", + "format": "date-time", + "type": "string" + }, + "timeMin": { + "description": "The start of the interval.", + "format": "date-time", + "type": "string" + } + }, + "type": "object" + }, + "Setting": { + "id": "Setting", + "properties": { + "etag": { + "description": "ETag of the resource.", + "type": "string" + }, + "id": { + "description": "The id of the user setting.", + "type": "string" + }, + "kind": { + "default": "calendar#setting", + "description": "Type of the resource (\"calendar#setting\").", + "type": "string" + }, + "value": { + "description": "Value of the user setting. The format of the value depends on the ID of the setting. It must always be a UTF-8 string of length up to 1024 characters.", + "type": "string" + } + }, + "type": "object" + }, + "Settings": { + "id": "Settings", + "properties": { + "etag": { + "description": "Etag of the collection.", + "type": "string" + }, + "items": { + "description": "List of user settings.", + "items": { + "$ref": "Setting" + }, + "type": "array" + }, + "kind": { + "default": "calendar#settings", + "description": "Type of the collection (\"calendar#settings\").", + "type": "string" + }, + "nextPageToken": { + "description": "Token used to access the next page of this result. Omitted if no further results are available, in which case nextSyncToken is provided.", + "type": "string" + }, + "nextSyncToken": { + "description": "Token used at a later point in time to retrieve only the entries that have changed since this result was returned. Omitted if further results are available, in which case nextPageToken is provided.", + "type": "string" + } + }, + "type": "object" + }, + "TimePeriod": { + "id": "TimePeriod", + "properties": { + "end": { + "description": "The (exclusive) end of the time period.", + "format": "date-time", + "type": "string" + }, + "start": { + "description": "The (inclusive) start of the time period.", + "format": "date-time", + "type": "string" + } + }, + "type": "object" } - } }, - "Settings": { - "id": "Settings", - "type": "object", - "properties": { - "etag": { - "type": "string", - "description": "Etag of the collection." - }, - "items": { - "type": "array", - "description": "List of user settings.", - "items": { - "$ref": "Setting" - } - }, - "kind": { - "type": "string", - "description": "Type of the collection (\"calendar#settings\").", - "default": "calendar#settings" - }, - "nextPageToken": { - "type": "string", - "description": "Token used to access the next page of this result. Omitted if no further results are available, in which case nextSyncToken is provided." - }, - "nextSyncToken": { - "type": "string", - "description": "Token used at a later point in time to retrieve only the entries that have changed since this result was returned. Omitted if further results are available, in which case nextPageToken is provided." - } - } - }, - "TimePeriod": { - "id": "TimePeriod", - "type": "object", - "properties": { - "end": { - "type": "string", - "description": "The (exclusive) end of the time period.", - "format": "date-time" - }, - "start": { - "type": "string", - "description": "The (inclusive) start of the time period.", - "format": "date-time" - } - } - } - }, - "resources": { - "acl": { - "methods": { - "delete": { - "id": "calendar.acl.delete", - "path": "calendars/{calendarId}/acl/{ruleId}", - "httpMethod": "DELETE", - "description": "Deletes an access control rule.", - "parameters": { - "calendarId": { - "type": "string", - "description": "Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the \"primary\" keyword.", - "required": true, - "location": "path" - }, - "ruleId": { - "type": "string", - "description": "ACL rule identifier.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "calendarId", - "ruleId" - ], - "scopes": [ - "https://www.googleapis.com/auth/calendar" - ] - }, - "get": { - "id": "calendar.acl.get", - "path": "calendars/{calendarId}/acl/{ruleId}", - "httpMethod": "GET", - "description": "Returns an access control rule.", - "parameters": { - "calendarId": { - "type": "string", - "description": "Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the \"primary\" keyword.", - "required": true, - "location": "path" - }, - "ruleId": { - "type": "string", - "description": "ACL rule identifier.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "calendarId", - "ruleId" - ], - "response": { - "$ref": "AclRule" - }, - "scopes": [ - "https://www.googleapis.com/auth/calendar", - "https://www.googleapis.com/auth/calendar.readonly" - ] - }, - "insert": { - "id": "calendar.acl.insert", - "path": "calendars/{calendarId}/acl", - "httpMethod": "POST", - "description": "Creates an access control rule.", - "parameters": { - "calendarId": { - "type": "string", - "description": "Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the \"primary\" keyword.", - "required": true, - "location": "path" - }, - "sendNotifications": { - "type": "boolean", - "description": "Whether to send notifications about the calendar sharing change. Optional. The default is True.", - "location": "query" - } - }, - "parameterOrder": [ - "calendarId" - ], - "request": { - "$ref": "AclRule" - }, - "response": { - "$ref": "AclRule" - }, - "scopes": [ - "https://www.googleapis.com/auth/calendar" - ] - }, - "list": { - "id": "calendar.acl.list", - "path": "calendars/{calendarId}/acl", - "httpMethod": "GET", - "description": "Returns the rules in the access control list for the calendar.", - "parameters": { - "calendarId": { - "type": "string", - "description": "Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the \"primary\" keyword.", - "required": true, - "location": "path" - }, - "maxResults": { - "type": "integer", - "description": "Maximum number of entries returned on one result page. By default the value is 100 entries. The page size can never be larger than 250 entries. Optional.", - "format": "int32", - "minimum": "1", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Token specifying which result page to return. Optional.", - "location": "query" - }, - "showDeleted": { - "type": "boolean", - "description": "Whether to include deleted ACLs in the result. Deleted ACLs are represented by role equal to \"none\". Deleted ACLs will always be included if syncToken is provided. Optional. The default is False.", - "location": "query" - }, - "syncToken": { - "type": "string", - "description": "Token obtained from the nextSyncToken field returned on the last page of results from the previous list request. It makes the result of this list request contain only entries that have changed since then. All entries deleted since the previous list request will always be in the result set and it is not allowed to set showDeleted to False.\nIf the syncToken expires, the server will respond with a 410 GONE response code and the client should clear its storage and perform a full synchronization without any syncToken.\nLearn more about incremental synchronization.\nOptional. The default is to return all entries.", - "location": "query" - } - }, - "parameterOrder": [ - "calendarId" - ], - "response": { - "$ref": "Acl" - }, - "scopes": [ - "https://www.googleapis.com/auth/calendar" - ], - "supportsSubscription": true - }, - "patch": { - "id": "calendar.acl.patch", - "path": "calendars/{calendarId}/acl/{ruleId}", - "httpMethod": "PATCH", - "description": "Updates an access control rule. This method supports patch semantics.", - "parameters": { - "calendarId": { - "type": "string", - "description": "Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the \"primary\" keyword.", - "required": true, - "location": "path" - }, - "ruleId": { - "type": "string", - "description": "ACL rule identifier.", - "required": true, - "location": "path" - }, - "sendNotifications": { - "type": "boolean", - "description": "Whether to send notifications about the calendar sharing change. Note that there are no notifications on access removal. Optional. The default is True.", - "location": "query" - } - }, - "parameterOrder": [ - "calendarId", - "ruleId" - ], - "request": { - "$ref": "AclRule" - }, - "response": { - "$ref": "AclRule" - }, - "scopes": [ - "https://www.googleapis.com/auth/calendar" - ] - }, - "update": { - "id": "calendar.acl.update", - "path": "calendars/{calendarId}/acl/{ruleId}", - "httpMethod": "PUT", - "description": "Updates an access control rule.", - "parameters": { - "calendarId": { - "type": "string", - "description": "Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the \"primary\" keyword.", - "required": true, - "location": "path" - }, - "ruleId": { - "type": "string", - "description": "ACL rule identifier.", - "required": true, - "location": "path" - }, - "sendNotifications": { - "type": "boolean", - "description": "Whether to send notifications about the calendar sharing change. Note that there are no notifications on access removal. Optional. The default is True.", - "location": "query" - } - }, - "parameterOrder": [ - "calendarId", - "ruleId" - ], - "request": { - "$ref": "AclRule" - }, - "response": { - "$ref": "AclRule" - }, - "scopes": [ - "https://www.googleapis.com/auth/calendar" - ] - }, - "watch": { - "id": "calendar.acl.watch", - "path": "calendars/{calendarId}/acl/watch", - "httpMethod": "POST", - "description": "Watch for changes to ACL resources.", - "parameters": { - "calendarId": { - "type": "string", - "description": "Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the \"primary\" keyword.", - "required": true, - "location": "path" - }, - "maxResults": { - "type": "integer", - "description": "Maximum number of entries returned on one result page. By default the value is 100 entries. The page size can never be larger than 250 entries. Optional.", - "format": "int32", - "minimum": "1", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Token specifying which result page to return. Optional.", - "location": "query" - }, - "showDeleted": { - "type": "boolean", - "description": "Whether to include deleted ACLs in the result. Deleted ACLs are represented by role equal to \"none\". Deleted ACLs will always be included if syncToken is provided. Optional. The default is False.", - "location": "query" - }, - "syncToken": { - "type": "string", - "description": "Token obtained from the nextSyncToken field returned on the last page of results from the previous list request. It makes the result of this list request contain only entries that have changed since then. All entries deleted since the previous list request will always be in the result set and it is not allowed to set showDeleted to False.\nIf the syncToken expires, the server will respond with a 410 GONE response code and the client should clear its storage and perform a full synchronization without any syncToken.\nLearn more about incremental synchronization.\nOptional. The default is to return all entries.", - "location": "query" - } - }, - "parameterOrder": [ - "calendarId" - ], - "request": { - "$ref": "Channel", - "parameterName": "resource" - }, - "response": { - "$ref": "Channel" - }, - "scopes": [ - "https://www.googleapis.com/auth/calendar" - ], - "supportsSubscription": true - } - } - }, - "calendarList": { - "methods": { - "delete": { - "id": "calendar.calendarList.delete", - "path": "users/me/calendarList/{calendarId}", - "httpMethod": "DELETE", - "description": "Deletes an entry on the user's calendar list.", - "parameters": { - "calendarId": { - "type": "string", - "description": "Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the \"primary\" keyword.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "calendarId" - ], - "scopes": [ - "https://www.googleapis.com/auth/calendar" - ] - }, - "get": { - "id": "calendar.calendarList.get", - "path": "users/me/calendarList/{calendarId}", - "httpMethod": "GET", - "description": "Returns an entry on the user's calendar list.", - "parameters": { - "calendarId": { - "type": "string", - "description": "Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the \"primary\" keyword.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "calendarId" - ], - "response": { - "$ref": "CalendarListEntry" - }, - "scopes": [ - "https://www.googleapis.com/auth/calendar", - "https://www.googleapis.com/auth/calendar.readonly" - ] - }, - "insert": { - "id": "calendar.calendarList.insert", - "path": "users/me/calendarList", - "httpMethod": "POST", - "description": "Adds an entry to the user's calendar list.", - "parameters": { - "colorRgbFormat": { - "type": "boolean", - "description": "Whether to use the foregroundColor and backgroundColor fields to write the calendar colors (RGB). If this feature is used, the index-based colorId field will be set to the best matching option automatically. Optional. The default is False.", - "location": "query" - } - }, - "request": { - "$ref": "CalendarListEntry" - }, - "response": { - "$ref": "CalendarListEntry" - }, - "scopes": [ - "https://www.googleapis.com/auth/calendar" - ] - }, - "list": { - "id": "calendar.calendarList.list", - "path": "users/me/calendarList", - "httpMethod": "GET", - "description": "Returns entries on the user's calendar list.", - "parameters": { - "maxResults": { - "type": "integer", - "description": "Maximum number of entries returned on one result page. By default the value is 100 entries. The page size can never be larger than 250 entries. Optional.", - "format": "int32", - "minimum": "1", - "location": "query" - }, - "minAccessRole": { - "type": "string", - "description": "The minimum access role for the user in the returned entries. Optional. The default is no restriction.", - "enum": [ - "freeBusyReader", - "owner", - "reader", - "writer" - ], - "enumDescriptions": [ - "The user can read free/busy information.", - "The user can read and modify events and access control lists.", - "The user can read events that are not private.", - "The user can read and modify events." - ], - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Token specifying which result page to return. Optional.", - "location": "query" - }, - "showDeleted": { - "type": "boolean", - "description": "Whether to include deleted calendar list entries in the result. Optional. The default is False.", - "location": "query" - }, - "showHidden": { - "type": "boolean", - "description": "Whether to show hidden entries. Optional. The default is False.", - "location": "query" - }, - "syncToken": { - "type": "string", - "description": "Token obtained from the nextSyncToken field returned on the last page of results from the previous list request. It makes the result of this list request contain only entries that have changed since then. If only read-only fields such as calendar properties or ACLs have changed, the entry won't be returned. All entries deleted and hidden since the previous list request will always be in the result set and it is not allowed to set showDeleted neither showHidden to False.\nTo ensure client state consistency minAccessRole query parameter cannot be specified together with nextSyncToken.\nIf the syncToken expires, the server will respond with a 410 GONE response code and the client should clear its storage and perform a full synchronization without any syncToken.\nLearn more about incremental synchronization.\nOptional. The default is to return all entries.", - "location": "query" - } - }, - "response": { - "$ref": "CalendarList" - }, - "scopes": [ - "https://www.googleapis.com/auth/calendar", - "https://www.googleapis.com/auth/calendar.readonly" - ], - "supportsSubscription": true - }, - "patch": { - "id": "calendar.calendarList.patch", - "path": "users/me/calendarList/{calendarId}", - "httpMethod": "PATCH", - "description": "Updates an entry on the user's calendar list. This method supports patch semantics.", - "parameters": { - "calendarId": { - "type": "string", - "description": "Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the \"primary\" keyword.", - "required": true, - "location": "path" - }, - "colorRgbFormat": { - "type": "boolean", - "description": "Whether to use the foregroundColor and backgroundColor fields to write the calendar colors (RGB). If this feature is used, the index-based colorId field will be set to the best matching option automatically. Optional. The default is False.", - "location": "query" - } - }, - "parameterOrder": [ - "calendarId" - ], - "request": { - "$ref": "CalendarListEntry" - }, - "response": { - "$ref": "CalendarListEntry" - }, - "scopes": [ - "https://www.googleapis.com/auth/calendar" - ] - }, - "update": { - "id": "calendar.calendarList.update", - "path": "users/me/calendarList/{calendarId}", - "httpMethod": "PUT", - "description": "Updates an entry on the user's calendar list.", - "parameters": { - "calendarId": { - "type": "string", - "description": "Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the \"primary\" keyword.", - "required": true, - "location": "path" - }, - "colorRgbFormat": { - "type": "boolean", - "description": "Whether to use the foregroundColor and backgroundColor fields to write the calendar colors (RGB). If this feature is used, the index-based colorId field will be set to the best matching option automatically. Optional. The default is False.", - "location": "query" - } - }, - "parameterOrder": [ - "calendarId" - ], - "request": { - "$ref": "CalendarListEntry" - }, - "response": { - "$ref": "CalendarListEntry" - }, - "scopes": [ - "https://www.googleapis.com/auth/calendar" - ] - }, - "watch": { - "id": "calendar.calendarList.watch", - "path": "users/me/calendarList/watch", - "httpMethod": "POST", - "description": "Watch for changes to CalendarList resources.", - "parameters": { - "maxResults": { - "type": "integer", - "description": "Maximum number of entries returned on one result page. By default the value is 100 entries. The page size can never be larger than 250 entries. Optional.", - "format": "int32", - "minimum": "1", - "location": "query" - }, - "minAccessRole": { - "type": "string", - "description": "The minimum access role for the user in the returned entries. Optional. The default is no restriction.", - "enum": [ - "freeBusyReader", - "owner", - "reader", - "writer" - ], - "enumDescriptions": [ - "The user can read free/busy information.", - "The user can read and modify events and access control lists.", - "The user can read events that are not private.", - "The user can read and modify events." - ], - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Token specifying which result page to return. Optional.", - "location": "query" - }, - "showDeleted": { - "type": "boolean", - "description": "Whether to include deleted calendar list entries in the result. Optional. The default is False.", - "location": "query" - }, - "showHidden": { - "type": "boolean", - "description": "Whether to show hidden entries. Optional. The default is False.", - "location": "query" - }, - "syncToken": { - "type": "string", - "description": "Token obtained from the nextSyncToken field returned on the last page of results from the previous list request. It makes the result of this list request contain only entries that have changed since then. If only read-only fields such as calendar properties or ACLs have changed, the entry won't be returned. All entries deleted and hidden since the previous list request will always be in the result set and it is not allowed to set showDeleted neither showHidden to False.\nTo ensure client state consistency minAccessRole query parameter cannot be specified together with nextSyncToken.\nIf the syncToken expires, the server will respond with a 410 GONE response code and the client should clear its storage and perform a full synchronization without any syncToken.\nLearn more about incremental synchronization.\nOptional. The default is to return all entries.", - "location": "query" - } - }, - "request": { - "$ref": "Channel", - "parameterName": "resource" - }, - "response": { - "$ref": "Channel" - }, - "scopes": [ - "https://www.googleapis.com/auth/calendar", - "https://www.googleapis.com/auth/calendar.readonly" - ], - "supportsSubscription": true - } - } - }, - "calendars": { - "methods": { - "clear": { - "id": "calendar.calendars.clear", - "path": "calendars/{calendarId}/clear", - "httpMethod": "POST", - "description": "Clears a primary calendar. This operation deletes all events associated with the primary calendar of an account.", - "parameters": { - "calendarId": { - "type": "string", - "description": "Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the \"primary\" keyword.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "calendarId" - ], - "scopes": [ - "https://www.googleapis.com/auth/calendar" - ] - }, - "delete": { - "id": "calendar.calendars.delete", - "path": "calendars/{calendarId}", - "httpMethod": "DELETE", - "description": "Deletes a secondary calendar. Use calendars.clear for clearing all events on primary calendars.", - "parameters": { - "calendarId": { - "type": "string", - "description": "Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the \"primary\" keyword.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "calendarId" - ], - "scopes": [ - "https://www.googleapis.com/auth/calendar" - ] - }, - "get": { - "id": "calendar.calendars.get", - "path": "calendars/{calendarId}", - "httpMethod": "GET", - "description": "Returns metadata for a calendar.", - "parameters": { - "calendarId": { - "type": "string", - "description": "Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the \"primary\" keyword.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "calendarId" - ], - "response": { - "$ref": "Calendar" - }, - "scopes": [ - "https://www.googleapis.com/auth/calendar", - "https://www.googleapis.com/auth/calendar.readonly" - ] - }, - "insert": { - "id": "calendar.calendars.insert", - "path": "calendars", - "httpMethod": "POST", - "description": "Creates a secondary calendar.", - "request": { - "$ref": "Calendar" - }, - "response": { - "$ref": "Calendar" - }, - "scopes": [ - "https://www.googleapis.com/auth/calendar" - ] - }, - "patch": { - "id": "calendar.calendars.patch", - "path": "calendars/{calendarId}", - "httpMethod": "PATCH", - "description": "Updates metadata for a calendar. This method supports patch semantics.", - "parameters": { - "calendarId": { - "type": "string", - "description": "Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the \"primary\" keyword.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "calendarId" - ], - "request": { - "$ref": "Calendar" - }, - "response": { - "$ref": "Calendar" - }, - "scopes": [ - "https://www.googleapis.com/auth/calendar" - ] - }, - "update": { - "id": "calendar.calendars.update", - "path": "calendars/{calendarId}", - "httpMethod": "PUT", - "description": "Updates metadata for a calendar.", - "parameters": { - "calendarId": { - "type": "string", - "description": "Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the \"primary\" keyword.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "calendarId" - ], - "request": { - "$ref": "Calendar" - }, - "response": { - "$ref": "Calendar" - }, - "scopes": [ - "https://www.googleapis.com/auth/calendar" - ] - } - } - }, - "channels": { - "methods": { - "stop": { - "id": "calendar.channels.stop", - "path": "channels/stop", - "httpMethod": "POST", - "description": "Stop watching resources through this channel", - "request": { - "$ref": "Channel", - "parameterName": "resource" - }, - "scopes": [ - "https://www.googleapis.com/auth/calendar", - "https://www.googleapis.com/auth/calendar.readonly" - ] - } - } - }, - "colors": { - "methods": { - "get": { - "id": "calendar.colors.get", - "path": "colors", - "httpMethod": "GET", - "description": "Returns the color definitions for calendars and events.", - "response": { - "$ref": "Colors" - }, - "scopes": [ - "https://www.googleapis.com/auth/calendar", - "https://www.googleapis.com/auth/calendar.readonly" - ] - } - } - }, - "events": { - "methods": { - "delete": { - "id": "calendar.events.delete", - "path": "calendars/{calendarId}/events/{eventId}", - "httpMethod": "DELETE", - "description": "Deletes an event.", - "parameters": { - "calendarId": { - "type": "string", - "description": "Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the \"primary\" keyword.", - "required": true, - "location": "path" - }, - "eventId": { - "type": "string", - "description": "Event identifier.", - "required": true, - "location": "path" - }, - "sendNotifications": { - "type": "boolean", - "description": "Whether to send notifications about the deletion of the event. Optional. The default is False.", - "location": "query" - } - }, - "parameterOrder": [ - "calendarId", - "eventId" - ], - "scopes": [ - "https://www.googleapis.com/auth/calendar" - ] - }, - "get": { - "id": "calendar.events.get", - "path": "calendars/{calendarId}/events/{eventId}", - "httpMethod": "GET", - "description": "Returns an event.", - "parameters": { - "alwaysIncludeEmail": { - "type": "boolean", - "description": "Whether to always include a value in the email field for the organizer, creator and attendees, even if no real email is available (i.e. a generated, non-working value will be provided). The use of this option is discouraged and should only be used by clients which cannot handle the absence of an email address value in the mentioned places. Optional. The default is False.", - "location": "query" - }, - "calendarId": { - "type": "string", - "description": "Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the \"primary\" keyword.", - "required": true, - "location": "path" - }, - "eventId": { - "type": "string", - "description": "Event identifier.", - "required": true, - "location": "path" - }, - "maxAttendees": { - "type": "integer", - "description": "The maximum number of attendees to include in the response. If there are more than the specified number of attendees, only the participant is returned. Optional.", - "format": "int32", - "minimum": "1", - "location": "query" - }, - "timeZone": { - "type": "string", - "description": "Time zone used in the response. Optional. The default is the time zone of the calendar.", - "location": "query" - } - }, - "parameterOrder": [ - "calendarId", - "eventId" - ], - "response": { - "$ref": "Event" - }, - "scopes": [ - "https://www.googleapis.com/auth/calendar", - "https://www.googleapis.com/auth/calendar.readonly" - ] - }, - "import": { - "id": "calendar.events.import", - "path": "calendars/{calendarId}/events/import", - "httpMethod": "POST", - "description": "Imports an event. This operation is used to add a private copy of an existing event to a calendar.", - "parameters": { - "calendarId": { - "type": "string", - "description": "Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the \"primary\" keyword.", - "required": true, - "location": "path" - }, - "conferenceDataVersion": { - "type": "integer", - "description": "Version number of conference data supported by the API client. Version 0 assumes no conference data support and ignores conference data in the event's body. Version 1 enables support for copying of ConferenceData as well as for creating new conferences using the createRequest field of conferenceData. The default is 0.", - "format": "int32", - "minimum": "0", - "maximum": "1", - "location": "query" - }, - "supportsAttachments": { - "type": "boolean", - "description": "Whether API client performing operation supports event attachments. Optional. The default is False.", - "location": "query" - } - }, - "parameterOrder": [ - "calendarId" - ], - "request": { - "$ref": "Event" - }, - "response": { - "$ref": "Event" - }, - "scopes": [ - "https://www.googleapis.com/auth/calendar" - ] - }, - "insert": { - "id": "calendar.events.insert", - "path": "calendars/{calendarId}/events", - "httpMethod": "POST", - "description": "Creates an event.", - "parameters": { - "calendarId": { - "type": "string", - "description": "Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the \"primary\" keyword.", - "required": true, - "location": "path" - }, - "conferenceDataVersion": { - "type": "integer", - "description": "Version number of conference data supported by the API client. Version 0 assumes no conference data support and ignores conference data in the event's body. Version 1 enables support for copying of ConferenceData as well as for creating new conferences using the createRequest field of conferenceData. The default is 0.", - "format": "int32", - "minimum": "0", - "maximum": "1", - "location": "query" - }, - "maxAttendees": { - "type": "integer", - "description": "The maximum number of attendees to include in the response. If there are more than the specified number of attendees, only the participant is returned. Optional.", - "format": "int32", - "minimum": "1", - "location": "query" - }, - "sendNotifications": { - "type": "boolean", - "description": "Whether to send notifications about the creation of the new event. Optional. The default is False.", - "location": "query" - }, - "supportsAttachments": { - "type": "boolean", - "description": "Whether API client performing operation supports event attachments. Optional. The default is False.", - "location": "query" - } - }, - "parameterOrder": [ - "calendarId" - ], - "request": { - "$ref": "Event" - }, - "response": { - "$ref": "Event" - }, - "scopes": [ - "https://www.googleapis.com/auth/calendar" - ] - }, - "instances": { - "id": "calendar.events.instances", - "path": "calendars/{calendarId}/events/{eventId}/instances", - "httpMethod": "GET", - "description": "Returns instances of the specified recurring event.", - "parameters": { - "alwaysIncludeEmail": { - "type": "boolean", - "description": "Whether to always include a value in the email field for the organizer, creator and attendees, even if no real email is available (i.e. a generated, non-working value will be provided). The use of this option is discouraged and should only be used by clients which cannot handle the absence of an email address value in the mentioned places. Optional. The default is False.", - "location": "query" - }, - "calendarId": { - "type": "string", - "description": "Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the \"primary\" keyword.", - "required": true, - "location": "path" - }, - "eventId": { - "type": "string", - "description": "Recurring event identifier.", - "required": true, - "location": "path" - }, - "maxAttendees": { - "type": "integer", - "description": "The maximum number of attendees to include in the response. If there are more than the specified number of attendees, only the participant is returned. Optional.", - "format": "int32", - "minimum": "1", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "Maximum number of events returned on one result page. By default the value is 250 events. The page size can never be larger than 2500 events. Optional.", - "format": "int32", - "minimum": "1", - "location": "query" - }, - "originalStart": { - "type": "string", - "description": "The original start time of the instance in the result. Optional.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Token specifying which result page to return. Optional.", - "location": "query" - }, - "showDeleted": { - "type": "boolean", - "description": "Whether to include deleted events (with status equals \"cancelled\") in the result. Cancelled instances of recurring events will still be included if singleEvents is False. Optional. The default is False.", - "location": "query" - }, - "timeMax": { - "type": "string", - "description": "Upper bound (exclusive) for an event's start time to filter by. Optional. The default is not to filter by start time. Must be an RFC3339 timestamp with mandatory time zone offset.", - "format": "date-time", - "location": "query" - }, - "timeMin": { - "type": "string", - "description": "Lower bound (inclusive) for an event's end time to filter by. Optional. The default is not to filter by end time. Must be an RFC3339 timestamp with mandatory time zone offset.", - "format": "date-time", - "location": "query" - }, - "timeZone": { - "type": "string", - "description": "Time zone used in the response. Optional. The default is the time zone of the calendar.", - "location": "query" - } - }, - "parameterOrder": [ - "calendarId", - "eventId" - ], - "response": { - "$ref": "Events" - }, - "scopes": [ - "https://www.googleapis.com/auth/calendar", - "https://www.googleapis.com/auth/calendar.readonly" - ], - "supportsSubscription": true - }, - "list": { - "id": "calendar.events.list", - "path": "calendars/{calendarId}/events", - "httpMethod": "GET", - "description": "Returns events on the specified calendar.", - "parameters": { - "alwaysIncludeEmail": { - "type": "boolean", - "description": "Whether to always include a value in the email field for the organizer, creator and attendees, even if no real email is available (i.e. a generated, non-working value will be provided). The use of this option is discouraged and should only be used by clients which cannot handle the absence of an email address value in the mentioned places. Optional. The default is False.", - "location": "query" - }, - "calendarId": { - "type": "string", - "description": "Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the \"primary\" keyword.", - "required": true, - "location": "path" - }, - "iCalUID": { - "type": "string", - "description": "Specifies event ID in the iCalendar format to be included in the response. Optional.", - "location": "query" - }, - "maxAttendees": { - "type": "integer", - "description": "The maximum number of attendees to include in the response. If there are more than the specified number of attendees, only the participant is returned. Optional.", - "format": "int32", - "minimum": "1", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "Maximum number of events returned on one result page. The number of events in the resulting page may be less than this value, or none at all, even if there are more events matching the query. Incomplete pages can be detected by a non-empty nextPageToken field in the response. By default the value is 250 events. The page size can never be larger than 2500 events. Optional.", - "default": "250", - "format": "int32", - "minimum": "1", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "The order of the events returned in the result. Optional. The default is an unspecified, stable order.", - "enum": [ - "startTime", - "updated" - ], - "enumDescriptions": [ - "Order by the start date/time (ascending). This is only available when querying single events (i.e. the parameter singleEvents is True)", - "Order by last modification time (ascending)." - ], - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Token specifying which result page to return. Optional.", - "location": "query" - }, - "privateExtendedProperty": { - "type": "string", - "description": "Extended properties constraint specified as propertyName=value. Matches only private properties. This parameter might be repeated multiple times to return events that match all given constraints.", - "repeated": true, - "location": "query" - }, - "q": { - "type": "string", - "description": "Free text search terms to find events that match these terms in any field, except for extended properties. Optional.", - "location": "query" - }, - "sharedExtendedProperty": { - "type": "string", - "description": "Extended properties constraint specified as propertyName=value. Matches only shared properties. This parameter might be repeated multiple times to return events that match all given constraints.", - "repeated": true, - "location": "query" - }, - "showDeleted": { - "type": "boolean", - "description": "Whether to include deleted events (with status equals \"cancelled\") in the result. Cancelled instances of recurring events (but not the underlying recurring event) will still be included if showDeleted and singleEvents are both False. If showDeleted and singleEvents are both True, only single instances of deleted events (but not the underlying recurring events) are returned. Optional. The default is False.", - "location": "query" - }, - "showHiddenInvitations": { - "type": "boolean", - "description": "Whether to include hidden invitations in the result. Optional. The default is False.", - "location": "query" - }, - "singleEvents": { - "type": "boolean", - "description": "Whether to expand recurring events into instances and only return single one-off events and instances of recurring events, but not the underlying recurring events themselves. Optional. The default is False.", - "location": "query" - }, - "syncToken": { - "type": "string", - "description": "Token obtained from the nextSyncToken field returned on the last page of results from the previous list request. It makes the result of this list request contain only entries that have changed since then. All events deleted since the previous list request will always be in the result set and it is not allowed to set showDeleted to False.\nThere are several query parameters that cannot be specified together with nextSyncToken to ensure consistency of the client state.\n\nThese are: \n- iCalUID \n- orderBy \n- privateExtendedProperty \n- q \n- sharedExtendedProperty \n- timeMin \n- timeMax \n- updatedMin If the syncToken expires, the server will respond with a 410 GONE response code and the client should clear its storage and perform a full synchronization without any syncToken.\nLearn more about incremental synchronization.\nOptional. The default is to return all entries.", - "location": "query" - }, - "timeMax": { - "type": "string", - "description": "Upper bound (exclusive) for an event's start time to filter by. Optional. The default is not to filter by start time. Must be an RFC3339 timestamp with mandatory time zone offset, e.g., 2011-06-03T10:00:00-07:00, 2011-06-03T10:00:00Z. Milliseconds may be provided but will be ignored. If timeMin is set, timeMax must be greater than timeMin.", - "format": "date-time", - "location": "query" - }, - "timeMin": { - "type": "string", - "description": "Lower bound (inclusive) for an event's end time to filter by. Optional. The default is not to filter by end time. Must be an RFC3339 timestamp with mandatory time zone offset, e.g., 2011-06-03T10:00:00-07:00, 2011-06-03T10:00:00Z. Milliseconds may be provided but will be ignored. If timeMax is set, timeMin must be smaller than timeMax.", - "format": "date-time", - "location": "query" - }, - "timeZone": { - "type": "string", - "description": "Time zone used in the response. Optional. The default is the time zone of the calendar.", - "location": "query" - }, - "updatedMin": { - "type": "string", - "description": "Lower bound for an event's last modification time (as a RFC3339 timestamp) to filter by. When specified, entries deleted since this time will always be included regardless of showDeleted. Optional. The default is not to filter by last modification time.", - "format": "date-time", - "location": "query" - } - }, - "parameterOrder": [ - "calendarId" - ], - "response": { - "$ref": "Events" - }, - "scopes": [ - "https://www.googleapis.com/auth/calendar", - "https://www.googleapis.com/auth/calendar.readonly" - ], - "supportsSubscription": true - }, - "move": { - "id": "calendar.events.move", - "path": "calendars/{calendarId}/events/{eventId}/move", - "httpMethod": "POST", - "description": "Moves an event to another calendar, i.e. changes an event's organizer.", - "parameters": { - "calendarId": { - "type": "string", - "description": "Calendar identifier of the source calendar where the event currently is on.", - "required": true, - "location": "path" - }, - "destination": { - "type": "string", - "description": "Calendar identifier of the target calendar where the event is to be moved to.", - "required": true, - "location": "query" - }, - "eventId": { - "type": "string", - "description": "Event identifier.", - "required": true, - "location": "path" - }, - "sendNotifications": { - "type": "boolean", - "description": "Whether to send notifications about the change of the event's organizer. Optional. The default is False.", - "location": "query" - } - }, - "parameterOrder": [ - "calendarId", - "eventId", - "destination" - ], - "response": { - "$ref": "Event" - }, - "scopes": [ - "https://www.googleapis.com/auth/calendar" - ] - }, - "patch": { - "id": "calendar.events.patch", - "path": "calendars/{calendarId}/events/{eventId}", - "httpMethod": "PATCH", - "description": "Updates an event. This method supports patch semantics.", - "parameters": { - "alwaysIncludeEmail": { - "type": "boolean", - "description": "Whether to always include a value in the email field for the organizer, creator and attendees, even if no real email is available (i.e. a generated, non-working value will be provided). The use of this option is discouraged and should only be used by clients which cannot handle the absence of an email address value in the mentioned places. Optional. The default is False.", - "location": "query" - }, - "calendarId": { - "type": "string", - "description": "Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the \"primary\" keyword.", - "required": true, - "location": "path" - }, - "conferenceDataVersion": { - "type": "integer", - "description": "Version number of conference data supported by the API client. Version 0 assumes no conference data support and ignores conference data in the event's body. Version 1 enables support for copying of ConferenceData as well as for creating new conferences using the createRequest field of conferenceData. The default is 0.", - "format": "int32", - "minimum": "0", - "maximum": "1", - "location": "query" - }, - "eventId": { - "type": "string", - "description": "Event identifier.", - "required": true, - "location": "path" - }, - "maxAttendees": { - "type": "integer", - "description": "The maximum number of attendees to include in the response. If there are more than the specified number of attendees, only the participant is returned. Optional.", - "format": "int32", - "minimum": "1", - "location": "query" - }, - "sendNotifications": { - "type": "boolean", - "description": "Whether to send notifications about the event update (e.g. attendee's responses, title changes, etc.). Optional. The default is False.", - "location": "query" - }, - "supportsAttachments": { - "type": "boolean", - "description": "Whether API client performing operation supports event attachments. Optional. The default is False.", - "location": "query" - } - }, - "parameterOrder": [ - "calendarId", - "eventId" - ], - "request": { - "$ref": "Event" - }, - "response": { - "$ref": "Event" - }, - "scopes": [ - "https://www.googleapis.com/auth/calendar" - ] - }, - "quickAdd": { - "id": "calendar.events.quickAdd", - "path": "calendars/{calendarId}/events/quickAdd", - "httpMethod": "POST", - "description": "Creates an event based on a simple text string.", - "parameters": { - "calendarId": { - "type": "string", - "description": "Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the \"primary\" keyword.", - "required": true, - "location": "path" - }, - "sendNotifications": { - "type": "boolean", - "description": "Whether to send notifications about the creation of the event. Optional. The default is False.", - "location": "query" - }, - "text": { - "type": "string", - "description": "The text describing the event to be created.", - "required": true, - "location": "query" - } - }, - "parameterOrder": [ - "calendarId", - "text" - ], - "response": { - "$ref": "Event" - }, - "scopes": [ - "https://www.googleapis.com/auth/calendar" - ] - }, - "update": { - "id": "calendar.events.update", - "path": "calendars/{calendarId}/events/{eventId}", - "httpMethod": "PUT", - "description": "Updates an event.", - "parameters": { - "alwaysIncludeEmail": { - "type": "boolean", - "description": "Whether to always include a value in the email field for the organizer, creator and attendees, even if no real email is available (i.e. a generated, non-working value will be provided). The use of this option is discouraged and should only be used by clients which cannot handle the absence of an email address value in the mentioned places. Optional. The default is False.", - "location": "query" - }, - "calendarId": { - "type": "string", - "description": "Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the \"primary\" keyword.", - "required": true, - "location": "path" - }, - "conferenceDataVersion": { - "type": "integer", - "description": "Version number of conference data supported by the API client. Version 0 assumes no conference data support and ignores conference data in the event's body. Version 1 enables support for copying of ConferenceData as well as for creating new conferences using the createRequest field of conferenceData. The default is 0.", - "format": "int32", - "minimum": "0", - "maximum": "1", - "location": "query" - }, - "eventId": { - "type": "string", - "description": "Event identifier.", - "required": true, - "location": "path" - }, - "maxAttendees": { - "type": "integer", - "description": "The maximum number of attendees to include in the response. If there are more than the specified number of attendees, only the participant is returned. Optional.", - "format": "int32", - "minimum": "1", - "location": "query" - }, - "sendNotifications": { - "type": "boolean", - "description": "Whether to send notifications about the event update (e.g. attendee's responses, title changes, etc.). Optional. The default is False.", - "location": "query" - }, - "supportsAttachments": { - "type": "boolean", - "description": "Whether API client performing operation supports event attachments. Optional. The default is False.", - "location": "query" - } - }, - "parameterOrder": [ - "calendarId", - "eventId" - ], - "request": { - "$ref": "Event" - }, - "response": { - "$ref": "Event" - }, - "scopes": [ - "https://www.googleapis.com/auth/calendar" - ] - }, - "watch": { - "id": "calendar.events.watch", - "path": "calendars/{calendarId}/events/watch", - "httpMethod": "POST", - "description": "Watch for changes to Events resources.", - "parameters": { - "alwaysIncludeEmail": { - "type": "boolean", - "description": "Whether to always include a value in the email field for the organizer, creator and attendees, even if no real email is available (i.e. a generated, non-working value will be provided). The use of this option is discouraged and should only be used by clients which cannot handle the absence of an email address value in the mentioned places. Optional. The default is False.", - "location": "query" - }, - "calendarId": { - "type": "string", - "description": "Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the \"primary\" keyword.", - "required": true, - "location": "path" - }, - "iCalUID": { - "type": "string", - "description": "Specifies event ID in the iCalendar format to be included in the response. Optional.", - "location": "query" - }, - "maxAttendees": { - "type": "integer", - "description": "The maximum number of attendees to include in the response. If there are more than the specified number of attendees, only the participant is returned. Optional.", - "format": "int32", - "minimum": "1", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "Maximum number of events returned on one result page. The number of events in the resulting page may be less than this value, or none at all, even if there are more events matching the query. Incomplete pages can be detected by a non-empty nextPageToken field in the response. By default the value is 250 events. The page size can never be larger than 2500 events. Optional.", - "default": "250", - "format": "int32", - "minimum": "1", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "The order of the events returned in the result. Optional. The default is an unspecified, stable order.", - "enum": [ - "startTime", - "updated" - ], - "enumDescriptions": [ - "Order by the start date/time (ascending). This is only available when querying single events (i.e. the parameter singleEvents is True)", - "Order by last modification time (ascending)." - ], - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Token specifying which result page to return. Optional.", - "location": "query" - }, - "privateExtendedProperty": { - "type": "string", - "description": "Extended properties constraint specified as propertyName=value. Matches only private properties. This parameter might be repeated multiple times to return events that match all given constraints.", - "repeated": true, - "location": "query" - }, - "q": { - "type": "string", - "description": "Free text search terms to find events that match these terms in any field, except for extended properties. Optional.", - "location": "query" - }, - "sharedExtendedProperty": { - "type": "string", - "description": "Extended properties constraint specified as propertyName=value. Matches only shared properties. This parameter might be repeated multiple times to return events that match all given constraints.", - "repeated": true, - "location": "query" - }, - "showDeleted": { - "type": "boolean", - "description": "Whether to include deleted events (with status equals \"cancelled\") in the result. Cancelled instances of recurring events (but not the underlying recurring event) will still be included if showDeleted and singleEvents are both False. If showDeleted and singleEvents are both True, only single instances of deleted events (but not the underlying recurring events) are returned. Optional. The default is False.", - "location": "query" - }, - "showHiddenInvitations": { - "type": "boolean", - "description": "Whether to include hidden invitations in the result. Optional. The default is False.", - "location": "query" - }, - "singleEvents": { - "type": "boolean", - "description": "Whether to expand recurring events into instances and only return single one-off events and instances of recurring events, but not the underlying recurring events themselves. Optional. The default is False.", - "location": "query" - }, - "syncToken": { - "type": "string", - "description": "Token obtained from the nextSyncToken field returned on the last page of results from the previous list request. It makes the result of this list request contain only entries that have changed since then. All events deleted since the previous list request will always be in the result set and it is not allowed to set showDeleted to False.\nThere are several query parameters that cannot be specified together with nextSyncToken to ensure consistency of the client state.\n\nThese are: \n- iCalUID \n- orderBy \n- privateExtendedProperty \n- q \n- sharedExtendedProperty \n- timeMin \n- timeMax \n- updatedMin If the syncToken expires, the server will respond with a 410 GONE response code and the client should clear its storage and perform a full synchronization without any syncToken.\nLearn more about incremental synchronization.\nOptional. The default is to return all entries.", - "location": "query" - }, - "timeMax": { - "type": "string", - "description": "Upper bound (exclusive) for an event's start time to filter by. Optional. The default is not to filter by start time. Must be an RFC3339 timestamp with mandatory time zone offset, e.g., 2011-06-03T10:00:00-07:00, 2011-06-03T10:00:00Z. Milliseconds may be provided but will be ignored. If timeMin is set, timeMax must be greater than timeMin.", - "format": "date-time", - "location": "query" - }, - "timeMin": { - "type": "string", - "description": "Lower bound (inclusive) for an event's end time to filter by. Optional. The default is not to filter by end time. Must be an RFC3339 timestamp with mandatory time zone offset, e.g., 2011-06-03T10:00:00-07:00, 2011-06-03T10:00:00Z. Milliseconds may be provided but will be ignored. If timeMax is set, timeMin must be smaller than timeMax.", - "format": "date-time", - "location": "query" - }, - "timeZone": { - "type": "string", - "description": "Time zone used in the response. Optional. The default is the time zone of the calendar.", - "location": "query" - }, - "updatedMin": { - "type": "string", - "description": "Lower bound for an event's last modification time (as a RFC3339 timestamp) to filter by. When specified, entries deleted since this time will always be included regardless of showDeleted. Optional. The default is not to filter by last modification time.", - "format": "date-time", - "location": "query" - } - }, - "parameterOrder": [ - "calendarId" - ], - "request": { - "$ref": "Channel", - "parameterName": "resource" - }, - "response": { - "$ref": "Channel" - }, - "scopes": [ - "https://www.googleapis.com/auth/calendar", - "https://www.googleapis.com/auth/calendar.readonly" - ], - "supportsSubscription": true - } - } - }, - "freebusy": { - "methods": { - "query": { - "id": "calendar.freebusy.query", - "path": "freeBusy", - "httpMethod": "POST", - "description": "Returns free/busy information for a set of calendars.", - "request": { - "$ref": "FreeBusyRequest" - }, - "response": { - "$ref": "FreeBusyResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/calendar", - "https://www.googleapis.com/auth/calendar.readonly" - ] - } - } - }, - "settings": { - "methods": { - "get": { - "id": "calendar.settings.get", - "path": "users/me/settings/{setting}", - "httpMethod": "GET", - "description": "Returns a single user setting.", - "parameters": { - "setting": { - "type": "string", - "description": "The id of the user setting.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "setting" - ], - "response": { - "$ref": "Setting" - }, - "scopes": [ - "https://www.googleapis.com/auth/calendar", - "https://www.googleapis.com/auth/calendar.readonly" - ] - }, - "list": { - "id": "calendar.settings.list", - "path": "users/me/settings", - "httpMethod": "GET", - "description": "Returns all user settings for the authenticated user.", - "parameters": { - "maxResults": { - "type": "integer", - "description": "Maximum number of entries returned on one result page. By default the value is 100 entries. The page size can never be larger than 250 entries. Optional.", - "format": "int32", - "minimum": "1", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Token specifying which result page to return. Optional.", - "location": "query" - }, - "syncToken": { - "type": "string", - "description": "Token obtained from the nextSyncToken field returned on the last page of results from the previous list request. It makes the result of this list request contain only entries that have changed since then.\nIf the syncToken expires, the server will respond with a 410 GONE response code and the client should clear its storage and perform a full synchronization without any syncToken.\nLearn more about incremental synchronization.\nOptional. The default is to return all entries.", - "location": "query" - } - }, - "response": { - "$ref": "Settings" - }, - "scopes": [ - "https://www.googleapis.com/auth/calendar", - "https://www.googleapis.com/auth/calendar.readonly" - ], - "supportsSubscription": true - }, - "watch": { - "id": "calendar.settings.watch", - "path": "users/me/settings/watch", - "httpMethod": "POST", - "description": "Watch for changes to Settings resources.", - "parameters": { - "maxResults": { - "type": "integer", - "description": "Maximum number of entries returned on one result page. By default the value is 100 entries. The page size can never be larger than 250 entries. Optional.", - "format": "int32", - "minimum": "1", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Token specifying which result page to return. Optional.", - "location": "query" - }, - "syncToken": { - "type": "string", - "description": "Token obtained from the nextSyncToken field returned on the last page of results from the previous list request. It makes the result of this list request contain only entries that have changed since then.\nIf the syncToken expires, the server will respond with a 410 GONE response code and the client should clear its storage and perform a full synchronization without any syncToken.\nLearn more about incremental synchronization.\nOptional. The default is to return all entries.", - "location": "query" - } - }, - "request": { - "$ref": "Channel", - "parameterName": "resource" - }, - "response": { - "$ref": "Channel" - }, - "scopes": [ - "https://www.googleapis.com/auth/calendar", - "https://www.googleapis.com/auth/calendar.readonly" - ], - "supportsSubscription": true - } - } - } - } -} + "servicePath": "calendar/v3/", + "title": "Calendar API", + "version": "v3" +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/calendar/v3/calendar-gen.go b/vendor/google.golang.org/api/calendar/v3/calendar-gen.go index f9877250e..191b88061 100644 --- a/vendor/google.golang.org/api/calendar/v3/calendar-gen.go +++ b/vendor/google.golang.org/api/calendar/v3/calendar-gen.go @@ -787,6 +787,10 @@ type ConferenceData struct { // HTML. The maximum length is 2048 characters. Optional. Notes string `json:"notes,omitempty"` + // Parameters: Additional properties related to a conference. An example + // would be a solution-specific setting for enabling video streaming. + Parameters *ConferenceParameters `json:"parameters,omitempty"` + // Signature: The signature of the conference data. // Genereated on server side. Must be preserved while copying the // conference data between events, otherwise the conference data will @@ -818,6 +822,60 @@ func (s *ConferenceData) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +type ConferenceParameters struct { + // AddOnParameters: Additional add-on specific data. + AddOnParameters *ConferenceParametersAddOnParameters `json:"addOnParameters,omitempty"` + + // ForceSendFields is a list of field names (e.g. "AddOnParameters") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "AddOnParameters") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *ConferenceParameters) MarshalJSON() ([]byte, error) { + type NoMethod ConferenceParameters + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +type ConferenceParametersAddOnParameters struct { + Parameters map[string]string `json:"parameters,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Parameters") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Parameters") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *ConferenceParametersAddOnParameters) MarshalJSON() ([]byte, error) { + type NoMethod ConferenceParametersAddOnParameters + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + type ConferenceProperties struct { // AllowedConferenceSolutionTypes: The types of conference solutions // that are supported for this calendar. @@ -1689,8 +1747,9 @@ type EventAttendee struct { // Read-only. The default is False. Organizer bool `json:"organizer,omitempty"` - // Resource: Whether the attendee is a resource. Read-only. The default - // is False. + // Resource: Whether the attendee is a resource. Can only be set when + // the attendee is added to the event for the first time. Subsequent + // modifications are ignored. Optional. The default is False. Resource bool `json:"resource,omitempty"` // ResponseStatus: The attendee's response status. Possible values are: diff --git a/vendor/google.golang.org/api/chat/v1/chat-api.json b/vendor/google.golang.org/api/chat/v1/chat-api.json new file mode 100644 index 000000000..1b7036c6a --- /dev/null +++ b/vendor/google.golang.org/api/chat/v1/chat-api.json @@ -0,0 +1,1059 @@ +{ + "basePath": "", + "baseUrl": "https://chat.googleapis.com/", + "batchPath": "batch", + "canonicalName": "Hangouts Chat", + "description": "Enables bots to fetch information and perform actions in the new Hangouts Chat.", + "discoveryVersion": "v1", + "documentationLink": "https://developers.google.com/hangouts/chat", + "fullyEncodeReservedExpansion": true, + "icons": { + "x16": "http://www.google.com/images/icons/product/search-16.gif", + "x32": "http://www.google.com/images/icons/product/search-32.gif" + }, + "id": "chat:v1", + "kind": "discovery#restDescription", + "name": "chat", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "$.xgafv": { + "description": "V1 error format.", + "enum": [ + "1", + "2" + ], + "enumDescriptions": [ + "v1 error format", + "v2 error format" + ], + "location": "query", + "type": "string" + }, + "access_token": { + "description": "OAuth access token.", + "location": "query", + "type": "string" + }, + "alt": { + "default": "json", + "description": "Data format for response.", + "enum": [ + "json", + "media", + "proto" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json", + "Media download with context-dependent Content-Type", + "Responses with Content-Type of application/x-protobuf" + ], + "location": "query", + "type": "string" + }, + "bearer_token": { + "description": "OAuth bearer token.", + "location": "query", + "type": "string" + }, + "callback": { + "description": "JSONP", + "location": "query", + "type": "string" + }, + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "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.", + "location": "query", + "type": "string" + }, + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "pp": { + "default": "true", + "description": "Pretty-print response.", + "location": "query", + "type": "boolean" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", + "location": "query", + "type": "string" + }, + "uploadType": { + "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", + "location": "query", + "type": "string" + }, + "upload_protocol": { + "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", + "location": "query", + "type": "string" + } + }, + "protocol": "rest", + "resources": { + "spaces": { + "methods": { + "get": { + "description": "Returns a space.", + "flatPath": "v1/spaces/{spacesId}", + "httpMethod": "GET", + "id": "chat.spaces.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. Resource name of the space, in the form \"spaces/*\".\n\nExample: spaces/AAAAMpdlehY", + "location": "path", + "pattern": "^spaces/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "Space" + } + }, + "list": { + "description": "Lists spaces the caller is a member of.", + "flatPath": "v1/spaces", + "httpMethod": "GET", + "id": "chat.spaces.list", + "parameterOrder": [], + "parameters": { + "pageSize": { + "description": "Requested page size. The value is capped at 1000.\nServer may return fewer results than requested.\nIf unspecified, server will default to 100.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "A token identifying a page of results the server should return.", + "location": "query", + "type": "string" + } + }, + "path": "v1/spaces", + "response": { + "$ref": "ListSpacesResponse" + } + } + }, + "resources": { + "members": { + "methods": { + "get": { + "description": "Returns a membership.", + "flatPath": "v1/spaces/{spacesId}/members/{membersId}", + "httpMethod": "GET", + "id": "chat.spaces.members.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. Resource name of the membership to be retrieved, in the form\n\"spaces/*/members/*\".\n\nExample: spaces/AAAAMpdlehY/members/105115627578887013105", + "location": "path", + "pattern": "^spaces/[^/]+/members/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "Membership" + } + }, + "list": { + "description": "Lists human memberships in a space.", + "flatPath": "v1/spaces/{spacesId}/members", + "httpMethod": "GET", + "id": "chat.spaces.members.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "pageSize": { + "description": "Requested page size. The value is capped at 1000.\nServer may return fewer results than requested.\nIf unspecified, server will default to 100.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "A token identifying a page of results the server should return.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The resource name of the space for which membership list is to be\nfetched, in the form \"spaces/*\".\n\nExample: spaces/AAAAMpdlehY", + "location": "path", + "pattern": "^spaces/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+parent}/members", + "response": { + "$ref": "ListMembershipsResponse" + } + } + } + }, + "messages": { + "methods": { + "create": { + "description": "Creates a message.", + "flatPath": "v1/spaces/{spacesId}/messages", + "httpMethod": "POST", + "id": "chat.spaces.messages.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. Space resource name, in the form \"spaces/*\".\nExample: spaces/AAAAMpdlehY", + "location": "path", + "pattern": "^spaces/[^/]+$", + "required": true, + "type": "string" + }, + "threadKey": { + "description": "Opaque thread identifier string that can be specified to group messages\ninto a single thread. If this is the first message with a given thread\nidentifier, a new thread is created. Subsequent messages with the same\nthread identifier will be posted into the same thread. This relieves bots\nand webhooks from having to store the Hangouts Chat thread ID of a thread (created earlier by them) to post\nfurther updates to it.\n\nHas no effect if thread field,\ncorresponding to an existing thread, is set in message.", + "location": "query", + "type": "string" + } + }, + "path": "v1/{+parent}/messages", + "request": { + "$ref": "Message" + }, + "response": { + "$ref": "Message" + } + }, + "delete": { + "description": "Deletes a message.", + "flatPath": "v1/spaces/{spacesId}/messages/{messagesId}", + "httpMethod": "DELETE", + "id": "chat.spaces.messages.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. Resource name of the message to be deleted, in the form\n\"spaces/*/messages/*\"\n\nExample: spaces/AAAAMpdlehY/messages/UMxbHmzDlr4.UMxbHmzDlr4", + "location": "path", + "pattern": "^spaces/[^/]+/messages/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "Empty" + } + }, + "get": { + "description": "Returns a message.", + "flatPath": "v1/spaces/{spacesId}/messages/{messagesId}", + "httpMethod": "GET", + "id": "chat.spaces.messages.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. Resource name of the message to be retrieved, in the form\n\"spaces/*/messages/*\".\n\nExample: spaces/AAAAMpdlehY/messages/UMxbHmzDlr4.UMxbHmzDlr4", + "location": "path", + "pattern": "^spaces/[^/]+/messages/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "Message" + } + }, + "update": { + "description": "Updates a message.", + "flatPath": "v1/spaces/{spacesId}/messages/{messagesId}", + "httpMethod": "PUT", + "id": "chat.spaces.messages.update", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Resource name, in the form \"spaces/*/messages/*\".\n\nExample: spaces/AAAAMpdlehY/messages/UMxbHmzDlr4.UMxbHmzDlr4", + "location": "path", + "pattern": "^spaces/[^/]+/messages/[^/]+$", + "required": true, + "type": "string" + }, + "updateMask": { + "description": "Required. The field paths to be updated.\n\nCurrently supported field paths: \"text\", \"cards\".", + "format": "google-fieldmask", + "location": "query", + "type": "string" + } + }, + "path": "v1/{+name}", + "request": { + "$ref": "Message" + }, + "response": { + "$ref": "Message" + } + } + } + } + } + } + }, + "revision": "20180326", + "rootUrl": "https://chat.googleapis.com/", + "schemas": { + "ActionParameter": { + "description": "List of string parameters to supply when the action method is invoked.\nFor example, consider three snooze buttons: snooze now, snooze 1 day,\nsnooze next week. You might use action method = snooze(), passing the\nsnooze type and snooze time in the list of string parameters.", + "id": "ActionParameter", + "properties": { + "key": { + "description": "The name of the parameter for the action script.", + "type": "string" + }, + "value": { + "description": "The value of the parameter.", + "type": "string" + } + }, + "type": "object" + }, + "ActionResponse": { + "description": "Parameters that a bot can use to configure how it's response is posted.", + "id": "ActionResponse", + "properties": { + "type": { + "description": "The type of bot response.", + "enum": [ + "TYPE_UNSPECIFIED", + "NEW_MESSAGE", + "UPDATE_MESSAGE", + "REQUEST_CONFIG" + ], + "enumDescriptions": [ + "Default type; will be handled as NEW_MESSAGE.", + "Post as a new message in the topic.", + "Update the bot's own message. (Only after CARD_CLICKED events.)", + "Privately ask the user for additional auth or config." + ], + "type": "string" + }, + "url": { + "description": "URL for users to auth or config. (Only for REQUEST_CONFIG response types.)", + "type": "string" + } + }, + "type": "object" + }, + "Annotation": { + "description": "Annotations associated with the plain-text body of the message.\n\nExample plain-text message body:\n```\nHello @FooBot how are you!\"\n```\n\nThe corresponding annotations metadata:\n```\n\"annotations\":[{\n \"type\":\"USER_MENTION\",\n \"startIndex\":6,\n \"length\":7,\n \"userMention\": {\n \"user\": {\n \"name\":\"users/107946847022116401880\",\n \"displayName\":\"FooBot\",\n \"avatarUrl\":\"https://goo.gl/aeDtrS\",\n \"type\":\"BOT\"\n },\n \"type\":\"MENTION\"\n }\n}]\n```", + "id": "Annotation", + "properties": { + "length": { + "description": "Length of the substring in the plain-text message body this annotation\ncorresponds to.", + "format": "int32", + "type": "integer" + }, + "startIndex": { + "description": "Start index (0-based, inclusive) in the plain-text message body this\nannotation corresponds to.", + "format": "int32", + "type": "integer" + }, + "type": { + "description": "The type of this annotation.", + "enum": [ + "ANNOTATION_TYPE_UNSPECIFIED", + "USER_MENTION" + ], + "enumDescriptions": [ + "Default value for the enum. DO NOT USE.", + "A user is mentioned." + ], + "type": "string" + }, + "userMention": { + "$ref": "UserMentionMetadata", + "description": "The metadata of user mention." + } + }, + "type": "object" + }, + "Button": { + "description": "A button. Can be a text button or an image button.", + "id": "Button", + "properties": { + "imageButton": { + "$ref": "ImageButton", + "description": "A button with image and onclick action." + }, + "textButton": { + "$ref": "TextButton", + "description": "A button with text and onclick action." + } + }, + "type": "object" + }, + "Card": { + "description": "A card is a UI element that can contain UI widgets such as texts, images.", + "id": "Card", + "properties": { + "cardActions": { + "description": "The actions of this card.", + "items": { + "$ref": "CardAction" + }, + "type": "array" + }, + "header": { + "$ref": "CardHeader", + "description": "The header of the card. A header usually contains a title and an image." + }, + "name": { + "description": "Name of the card.", + "type": "string" + }, + "sections": { + "description": "Sections are separated by a line divider.", + "items": { + "$ref": "Section" + }, + "type": "array" + } + }, + "type": "object" + }, + "CardAction": { + "description": "A card action is\nthe action associated with the card. For an invoice card, a\ntypical action would be: delete invoice, email invoice or open the\ninvoice in browser.", + "id": "CardAction", + "properties": { + "actionLabel": { + "description": "The label used to be displayed in the action menu item.", + "type": "string" + }, + "onClick": { + "$ref": "OnClick", + "description": "The onclick action for this action item." + } + }, + "type": "object" + }, + "CardHeader": { + "id": "CardHeader", + "properties": { + "imageStyle": { + "description": "The image's type (e.g. square border or circular border).", + "enum": [ + "IMAGE_STYLE_UNSPECIFIED", + "IMAGE", + "AVATAR" + ], + "enumDescriptions": [ + "", + "Square border.", + "Circular border." + ], + "type": "string" + }, + "imageUrl": { + "description": "The URL of the image in the card header.", + "type": "string" + }, + "subtitle": { + "description": "The subtitle of the card header.", + "type": "string" + }, + "title": { + "description": "The title must be specified. The header has a fixed height: if both a\ntitle and subtitle is specified, each will take up 1 line. If only the\ntitle is specified, it will take up both lines.", + "type": "string" + } + }, + "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" + }, + "FormAction": { + "description": "A form action describes the behavior when the form is submitted.\nFor example, an Apps Script can be invoked to handle the form.", + "id": "FormAction", + "properties": { + "actionMethodName": { + "description": "Apps Script function to invoke when the containing element is\nclicked/activated.", + "type": "string" + }, + "parameters": { + "description": "List of action parameters.", + "items": { + "$ref": "ActionParameter" + }, + "type": "array" + } + }, + "type": "object" + }, + "Image": { + "description": "An image that is specified by a URL and can have an onclick action.", + "id": "Image", + "properties": { + "aspectRatio": { + "description": "The aspect ratio of this image (width/height).", + "format": "double", + "type": "number" + }, + "imageUrl": { + "description": "The URL of the image.", + "type": "string" + }, + "onClick": { + "$ref": "OnClick", + "description": "The onclick action." + } + }, + "type": "object" + }, + "ImageButton": { + "description": "An image button with an onclick action.", + "id": "ImageButton", + "properties": { + "icon": { + "description": "The icon specified by an enum that indices to an icon provided by Chat\nAPI.", + "enum": [ + "ICON_UNSPECIFIED", + "AIRPLANE", + "BOOKMARK", + "BUS", + "CAR", + "CLOCK", + "CONFIRMATION_NUMBER_ICON", + "DOLLAR", + "DESCRIPTION", + "EMAIL", + "EVENT_PERFORMER", + "EVENT_SEAT", + "FLIGHT_ARRIVAL", + "FLIGHT_DEPARTURE", + "HOTEL", + "HOTEL_ROOM_TYPE", + "INVITE", + "MAP_PIN", + "MEMBERSHIP", + "MULTIPLE_PEOPLE", + "OFFER", + "PERSON", + "PHONE", + "RESTAURANT_ICON", + "SHOPPING_CART", + "STAR", + "STORE", + "TICKET", + "TRAIN", + "VIDEO_CAMERA", + "VIDEO_PLAY" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "iconUrl": { + "description": "The icon specified by a URL.", + "type": "string" + }, + "name": { + "description": "The name of this image_button which will be used for accessibility.\nDefault value will be provided if developers don't specify.", + "type": "string" + }, + "onClick": { + "$ref": "OnClick", + "description": "The onclick action." + } + }, + "type": "object" + }, + "KeyValue": { + "description": "A UI element contains a key (label) and a value (content). And this\nelement may also contain some actions such as onclick button.", + "id": "KeyValue", + "properties": { + "bottomLabel": { + "description": "The text of the bottom label. Formatted text supported.", + "type": "string" + }, + "button": { + "$ref": "Button", + "description": "A button that can be clicked to trigger an action." + }, + "content": { + "description": "The text of the content. Formatted text supported and always required.", + "type": "string" + }, + "contentMultiline": { + "description": "If the content should be multiline.", + "type": "boolean" + }, + "icon": { + "description": "An enum value that will be replaced by the Chat API with the\ncorresponding icon image.", + "enum": [ + "ICON_UNSPECIFIED", + "AIRPLANE", + "BOOKMARK", + "BUS", + "CAR", + "CLOCK", + "CONFIRMATION_NUMBER_ICON", + "DOLLAR", + "DESCRIPTION", + "EMAIL", + "EVENT_PERFORMER", + "EVENT_SEAT", + "FLIGHT_ARRIVAL", + "FLIGHT_DEPARTURE", + "HOTEL", + "HOTEL_ROOM_TYPE", + "INVITE", + "MAP_PIN", + "MEMBERSHIP", + "MULTIPLE_PEOPLE", + "OFFER", + "PERSON", + "PHONE", + "RESTAURANT_ICON", + "SHOPPING_CART", + "STAR", + "STORE", + "TICKET", + "TRAIN", + "VIDEO_CAMERA", + "VIDEO_PLAY" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "iconUrl": { + "description": "The icon specified by a URL.", + "type": "string" + }, + "onClick": { + "$ref": "OnClick", + "description": "The onclick action. Only the top label, bottom label and content region\nare clickable." + }, + "topLabel": { + "description": "The text of the top label. Formatted text supported.", + "type": "string" + } + }, + "type": "object" + }, + "ListMembershipsResponse": { + "id": "ListMembershipsResponse", + "properties": { + "memberships": { + "description": "List of memberships in the requested (or first) page.", + "items": { + "$ref": "Membership" + }, + "type": "array" + }, + "nextPageToken": { + "description": "Continuation token to retrieve the next page of results. It will be empty\nfor the last page of results.", + "type": "string" + } + }, + "type": "object" + }, + "ListSpacesResponse": { + "id": "ListSpacesResponse", + "properties": { + "nextPageToken": { + "description": "Continuation token to retrieve the next page of results. It will be empty\nfor the last page of results. Tokens expire in an hour. An error is thrown\nif an expired token is passed.", + "type": "string" + }, + "spaces": { + "description": "List of spaces in the requested (or first) page.", + "items": { + "$ref": "Space" + }, + "type": "array" + } + }, + "type": "object" + }, + "Membership": { + "description": "Represents a membership relation in Hangouts Chat.", + "id": "Membership", + "properties": { + "createTime": { + "description": "The creation time of the membership a.k.a the time at which the member\njoined the space, if applicable.", + "format": "google-datetime", + "type": "string" + }, + "member": { + "$ref": "User", + "description": "Member details." + }, + "name": { + "description": "Resource name of the membership, in the form \"spaces/*/members/*\".\n\nExample: spaces/AAAAMpdlehY/members/105115627578887013105", + "type": "string" + }, + "state": { + "description": "State of the membership.", + "enum": [ + "MEMBERSHIP_STATE_UNSPECIFIED", + "JOINED", + "INVITED", + "NOT_A_MEMBER" + ], + "enumDescriptions": [ + "Default, do not use.", + "The user has joined the space.", + "The user has been invited, is able to join the space, but currently has\nnot joined.", + "The user is not a member of the space, has not been invited and is not\nable to join the space." + ], + "type": "string" + } + }, + "type": "object" + }, + "Message": { + "description": "A message in Hangouts Chat.", + "id": "Message", + "properties": { + "actionResponse": { + "$ref": "ActionResponse", + "description": "Input only. Parameters that a bot can use to configure how its response is\nposted." + }, + "annotations": { + "description": "Output only. Annotations associated with the text in this message.", + "items": { + "$ref": "Annotation" + }, + "type": "array" + }, + "cards": { + "description": "Rich, formatted and interactive cards that can be used to display UI\nelements such as: formatted texts, buttons, clickable images. Cards are\nnormally displayed below the plain-text body of the message.", + "items": { + "$ref": "Card" + }, + "type": "array" + }, + "createTime": { + "description": "Output only. The time at which the message was created in Hangouts Chat\nserver.", + "format": "google-datetime", + "type": "string" + }, + "fallbackText": { + "description": "A plain-text description of the message's cards, used when the actual cards\ncannot be displayed (e.g. mobile notifications).", + "type": "string" + }, + "name": { + "description": "Resource name, in the form \"spaces/*/messages/*\".\n\nExample: spaces/AAAAMpdlehY/messages/UMxbHmzDlr4.UMxbHmzDlr4", + "type": "string" + }, + "previewText": { + "description": "Text for generating preview chips. This text will not be displayed to the\nuser, but any links to images, web pages, videos, etc. included here will\ngenerate preview chips.", + "type": "string" + }, + "sender": { + "$ref": "User", + "description": "The user who created the message." + }, + "space": { + "$ref": "Space", + "description": "The space the message belongs to." + }, + "text": { + "description": "Plain-text body of the message.", + "type": "string" + }, + "thread": { + "$ref": "Thread", + "description": "The thread the message belongs to." + } + }, + "type": "object" + }, + "OnClick": { + "description": "An onclick action (e.g. open a link).", + "id": "OnClick", + "properties": { + "action": { + "$ref": "FormAction", + "description": "A form action will be trigger by this onclick if specified." + }, + "openLink": { + "$ref": "OpenLink", + "description": "This onclick triggers an open link action if specified." + } + }, + "type": "object" + }, + "OpenLink": { + "description": "A link that opens a new window.", + "id": "OpenLink", + "properties": { + "url": { + "description": "The URL to open.", + "type": "string" + } + }, + "type": "object" + }, + "Section": { + "description": "A section contains a collection of widgets that are rendered\n(vertically) in the order that they are specified. Across all platforms,\ncards have a narrow fixed width, so\nthere is currently no need for layout properties (e.g. float).", + "id": "Section", + "properties": { + "header": { + "description": "The header of the section, text formatted supported.", + "type": "string" + }, + "widgets": { + "description": "A section must contain at least 1 widget.", + "items": { + "$ref": "WidgetMarkup" + }, + "type": "array" + } + }, + "type": "object" + }, + "Space": { + "description": "A room or DM in Hangouts Chat.", + "id": "Space", + "properties": { + "displayName": { + "description": "Output only. The display name (only if the space is a room).", + "type": "string" + }, + "name": { + "description": "Resource name of the space, in the form \"spaces/*\".\n\nExample: spaces/AAAAMpdlehYs", + "type": "string" + }, + "type": { + "description": "Output only. The type of a space.", + "enum": [ + "TYPE_UNSPECIFIED", + "ROOM", + "DM" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "TextButton": { + "description": "A button with text and onclick action.", + "id": "TextButton", + "properties": { + "onClick": { + "$ref": "OnClick", + "description": "The onclick action of the button." + }, + "text": { + "description": "The text of the button.", + "type": "string" + } + }, + "type": "object" + }, + "TextParagraph": { + "description": "A paragraph of text. Formatted text supported.", + "id": "TextParagraph", + "properties": { + "text": { + "type": "string" + } + }, + "type": "object" + }, + "Thread": { + "description": "A thread in Hangouts Chat.", + "id": "Thread", + "properties": { + "name": { + "description": "Resource name, in the form \"spaces/*/threads/*\".\n\nExample: spaces/AAAAMpdlehY/threads/UMxbHmzDlr4", + "type": "string" + } + }, + "type": "object" + }, + "User": { + "description": "A user in Hangouts Chat.", + "id": "User", + "properties": { + "displayName": { + "description": "The user's display name.", + "type": "string" + }, + "name": { + "description": "Resource name, in the format \"users/*\".", + "type": "string" + }, + "type": { + "description": "User type.", + "enum": [ + "TYPE_UNSPECIFIED", + "HUMAN", + "BOT" + ], + "enumDescriptions": [ + "Default value for the enum. DO NOT USE.", + "Human user.", + "Bot user." + ], + "type": "string" + } + }, + "type": "object" + }, + "UserMentionMetadata": { + "description": "Annotation metadata for user mentions (@).", + "id": "UserMentionMetadata", + "properties": { + "type": { + "description": "The type of user mention.", + "enum": [ + "TYPE_UNSPECIFIED", + "ADD", + "MENTION" + ], + "enumDescriptions": [ + "Default value for the enum. DO NOT USE.", + "Add user to space.", + "Mention user in space." + ], + "type": "string" + }, + "user": { + "$ref": "User", + "description": "The user mentioned." + } + }, + "type": "object" + }, + "WidgetMarkup": { + "description": "A widget is a UI element that presents texts, images, etc.", + "id": "WidgetMarkup", + "properties": { + "buttons": { + "description": "A list of buttons. Buttons is also oneof data and only one of these\nfields should be set.", + "items": { + "$ref": "Button" + }, + "type": "array" + }, + "image": { + "$ref": "Image", + "description": "Display an image in this widget." + }, + "keyValue": { + "$ref": "KeyValue", + "description": "Display a key value item in this widget." + }, + "textParagraph": { + "$ref": "TextParagraph", + "description": "Display a text paragraph in this widget." + } + }, + "type": "object" + } + }, + "servicePath": "", + "title": "Hangouts Chat API", + "version": "v1", + "version_module": true +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/chat/v1/chat-gen.go b/vendor/google.golang.org/api/chat/v1/chat-gen.go new file mode 100644 index 000000000..cedf8991f --- /dev/null +++ b/vendor/google.golang.org/api/chat/v1/chat-gen.go @@ -0,0 +1,2408 @@ +// Package chat provides access to the Hangouts Chat API. +// +// See https://developers.google.com/hangouts/chat +// +// Usage example: +// +// import "google.golang.org/api/chat/v1" +// ... +// chatService, err := chat.New(oauthHttpClient) +package chat // import "google.golang.org/api/chat/v1" + +import ( + "bytes" + "encoding/json" + "errors" + "fmt" + context "golang.org/x/net/context" + ctxhttp "golang.org/x/net/context/ctxhttp" + gensupport "google.golang.org/api/gensupport" + googleapi "google.golang.org/api/googleapi" + "io" + "net/http" + "net/url" + "strconv" + "strings" +) + +// Always reference these packages, just in case the auto-generated code +// below doesn't. +var _ = bytes.NewBuffer +var _ = strconv.Itoa +var _ = fmt.Sprintf +var _ = json.NewDecoder +var _ = io.Copy +var _ = url.Parse +var _ = gensupport.MarshalJSON +var _ = googleapi.Version +var _ = errors.New +var _ = strings.Replace +var _ = context.Canceled +var _ = ctxhttp.Do + +const apiId = "chat:v1" +const apiName = "chat" +const apiVersion = "v1" +const basePath = "https://chat.googleapis.com/" + +func New(client *http.Client) (*Service, error) { + if client == nil { + return nil, errors.New("client is nil") + } + s := &Service{client: client, BasePath: basePath} + s.Spaces = NewSpacesService(s) + return s, nil +} + +type Service struct { + client *http.Client + BasePath string // API endpoint base URL + UserAgent string // optional additional User-Agent fragment + + Spaces *SpacesService +} + +func (s *Service) userAgent() string { + if s.UserAgent == "" { + return googleapi.UserAgent + } + return googleapi.UserAgent + " " + s.UserAgent +} + +func NewSpacesService(s *Service) *SpacesService { + rs := &SpacesService{s: s} + rs.Members = NewSpacesMembersService(s) + rs.Messages = NewSpacesMessagesService(s) + return rs +} + +type SpacesService struct { + s *Service + + Members *SpacesMembersService + + Messages *SpacesMessagesService +} + +func NewSpacesMembersService(s *Service) *SpacesMembersService { + rs := &SpacesMembersService{s: s} + return rs +} + +type SpacesMembersService struct { + s *Service +} + +func NewSpacesMessagesService(s *Service) *SpacesMessagesService { + rs := &SpacesMessagesService{s: s} + return rs +} + +type SpacesMessagesService struct { + s *Service +} + +// ActionParameter: List of string parameters to supply when the action +// method is invoked. +// For example, consider three snooze buttons: snooze now, snooze 1 +// day, +// snooze next week. You might use action method = snooze(), passing +// the +// snooze type and snooze time in the list of string parameters. +type ActionParameter struct { + // Key: The name of the parameter for the action script. + Key string `json:"key,omitempty"` + + // Value: The value of the parameter. + Value string `json:"value,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Key") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Key") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *ActionParameter) MarshalJSON() ([]byte, error) { + type NoMethod ActionParameter + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// ActionResponse: Parameters that a bot can use to configure how it's +// response is posted. +type ActionResponse struct { + // Type: The type of bot response. + // + // Possible values: + // "TYPE_UNSPECIFIED" - Default type; will be handled as NEW_MESSAGE. + // "NEW_MESSAGE" - Post as a new message in the topic. + // "UPDATE_MESSAGE" - Update the bot's own message. (Only after + // CARD_CLICKED events.) + // "REQUEST_CONFIG" - Privately ask the user for additional auth or + // config. + Type string `json:"type,omitempty"` + + // Url: URL for users to auth or config. (Only for REQUEST_CONFIG + // response types.) + Url string `json:"url,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Type") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Type") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *ActionResponse) MarshalJSON() ([]byte, error) { + type NoMethod ActionResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// Annotation: Annotations associated with the plain-text body of the +// message. +// +// Example plain-text message body: +// ``` +// Hello @FooBot how are you!" +// ``` +// +// The corresponding annotations metadata: +// ``` +// "annotations":[{ +// "type":"USER_MENTION", +// "startIndex":6, +// "length":7, +// "userMention": { +// "user": { +// "name":"users/107946847022116401880", +// "displayName":"FooBot", +// "avatarUrl":"https://goo.gl/aeDtrS", +// "type":"BOT" +// }, +// "type":"MENTION" +// } +// }] +// ``` +type Annotation struct { + // Length: Length of the substring in the plain-text message body this + // annotation + // corresponds to. + Length int64 `json:"length,omitempty"` + + // StartIndex: Start index (0-based, inclusive) in the plain-text + // message body this + // annotation corresponds to. + StartIndex int64 `json:"startIndex,omitempty"` + + // Type: The type of this annotation. + // + // Possible values: + // "ANNOTATION_TYPE_UNSPECIFIED" - Default value for the enum. DO NOT + // USE. + // "USER_MENTION" - A user is mentioned. + Type string `json:"type,omitempty"` + + // UserMention: The metadata of user mention. + UserMention *UserMentionMetadata `json:"userMention,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Length") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Length") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *Annotation) MarshalJSON() ([]byte, error) { + type NoMethod Annotation + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// Button: A button. Can be a text button or an image button. +type Button struct { + // ImageButton: A button with image and onclick action. + ImageButton *ImageButton `json:"imageButton,omitempty"` + + // TextButton: A button with text and onclick action. + TextButton *TextButton `json:"textButton,omitempty"` + + // ForceSendFields is a list of field names (e.g. "ImageButton") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "ImageButton") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *Button) MarshalJSON() ([]byte, error) { + type NoMethod Button + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// Card: A card is a UI element that can contain UI widgets such as +// texts, images. +type Card struct { + // CardActions: The actions of this card. + CardActions []*CardAction `json:"cardActions,omitempty"` + + // Header: The header of the card. A header usually contains a title and + // an image. + Header *CardHeader `json:"header,omitempty"` + + // Name: Name of the card. + Name string `json:"name,omitempty"` + + // Sections: Sections are separated by a line divider. + Sections []*Section `json:"sections,omitempty"` + + // ForceSendFields is a list of field names (e.g. "CardActions") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "CardActions") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *Card) MarshalJSON() ([]byte, error) { + type NoMethod Card + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// CardAction: A card action is +// the action associated with the card. For an invoice card, a +// typical action would be: delete invoice, email invoice or open +// the +// invoice in browser. +type CardAction struct { + // ActionLabel: The label used to be displayed in the action menu item. + ActionLabel string `json:"actionLabel,omitempty"` + + // OnClick: The onclick action for this action item. + OnClick *OnClick `json:"onClick,omitempty"` + + // ForceSendFields is a list of field names (e.g. "ActionLabel") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "ActionLabel") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *CardAction) MarshalJSON() ([]byte, error) { + type NoMethod CardAction + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +type CardHeader struct { + // ImageStyle: The image's type (e.g. square border or circular border). + // + // Possible values: + // "IMAGE_STYLE_UNSPECIFIED" + // "IMAGE" - Square border. + // "AVATAR" - Circular border. + ImageStyle string `json:"imageStyle,omitempty"` + + // ImageUrl: The URL of the image in the card header. + ImageUrl string `json:"imageUrl,omitempty"` + + // Subtitle: The subtitle of the card header. + Subtitle string `json:"subtitle,omitempty"` + + // Title: The title must be specified. The header has a fixed height: if + // both a + // title and subtitle is specified, each will take up 1 line. If only + // the + // title is specified, it will take up both lines. + Title string `json:"title,omitempty"` + + // ForceSendFields is a list of field names (e.g. "ImageStyle") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "ImageStyle") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *CardHeader) MarshalJSON() ([]byte, error) { + type NoMethod CardHeader + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// Empty: A generic empty message that you can re-use to avoid defining +// duplicated +// empty messages in your APIs. A typical example is to use it as the +// request +// or the response type of an API method. For instance: +// +// service Foo { +// rpc Bar(google.protobuf.Empty) returns +// (google.protobuf.Empty); +// } +// +// The JSON representation for `Empty` is empty JSON object `{}`. +type Empty struct { + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` +} + +// FormAction: A form action describes the behavior when the form is +// submitted. +// For example, an Apps Script can be invoked to handle the form. +type FormAction struct { + // ActionMethodName: Apps Script function to invoke when the containing + // element is + // clicked/activated. + ActionMethodName string `json:"actionMethodName,omitempty"` + + // Parameters: List of action parameters. + Parameters []*ActionParameter `json:"parameters,omitempty"` + + // ForceSendFields is a list of field names (e.g. "ActionMethodName") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "ActionMethodName") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *FormAction) MarshalJSON() ([]byte, error) { + type NoMethod FormAction + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// Image: An image that is specified by a URL and can have an onclick +// action. +type Image struct { + // AspectRatio: The aspect ratio of this image (width/height). + AspectRatio float64 `json:"aspectRatio,omitempty"` + + // ImageUrl: The URL of the image. + ImageUrl string `json:"imageUrl,omitempty"` + + // OnClick: The onclick action. + OnClick *OnClick `json:"onClick,omitempty"` + + // ForceSendFields is a list of field names (e.g. "AspectRatio") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "AspectRatio") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *Image) MarshalJSON() ([]byte, error) { + type NoMethod Image + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +func (s *Image) UnmarshalJSON(data []byte) error { + type NoMethod Image + var s1 struct { + AspectRatio gensupport.JSONFloat64 `json:"aspectRatio"` + *NoMethod + } + s1.NoMethod = (*NoMethod)(s) + if err := json.Unmarshal(data, &s1); err != nil { + return err + } + s.AspectRatio = float64(s1.AspectRatio) + return nil +} + +// ImageButton: An image button with an onclick action. +type ImageButton struct { + // Icon: The icon specified by an enum that indices to an icon provided + // by Chat + // API. + // + // Possible values: + // "ICON_UNSPECIFIED" + // "AIRPLANE" + // "BOOKMARK" + // "BUS" + // "CAR" + // "CLOCK" + // "CONFIRMATION_NUMBER_ICON" + // "DOLLAR" + // "DESCRIPTION" + // "EMAIL" + // "EVENT_PERFORMER" + // "EVENT_SEAT" + // "FLIGHT_ARRIVAL" + // "FLIGHT_DEPARTURE" + // "HOTEL" + // "HOTEL_ROOM_TYPE" + // "INVITE" + // "MAP_PIN" + // "MEMBERSHIP" + // "MULTIPLE_PEOPLE" + // "OFFER" + // "PERSON" + // "PHONE" + // "RESTAURANT_ICON" + // "SHOPPING_CART" + // "STAR" + // "STORE" + // "TICKET" + // "TRAIN" + // "VIDEO_CAMERA" + // "VIDEO_PLAY" + Icon string `json:"icon,omitempty"` + + // IconUrl: The icon specified by a URL. + IconUrl string `json:"iconUrl,omitempty"` + + // Name: The name of this image_button which will be used for + // accessibility. + // Default value will be provided if developers don't specify. + Name string `json:"name,omitempty"` + + // OnClick: The onclick action. + OnClick *OnClick `json:"onClick,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Icon") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Icon") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *ImageButton) MarshalJSON() ([]byte, error) { + type NoMethod ImageButton + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// KeyValue: A UI element contains a key (label) and a value (content). +// And this +// element may also contain some actions such as onclick button. +type KeyValue struct { + // BottomLabel: The text of the bottom label. Formatted text supported. + BottomLabel string `json:"bottomLabel,omitempty"` + + // Button: A button that can be clicked to trigger an action. + Button *Button `json:"button,omitempty"` + + // Content: The text of the content. Formatted text supported and always + // required. + Content string `json:"content,omitempty"` + + // ContentMultiline: If the content should be multiline. + ContentMultiline bool `json:"contentMultiline,omitempty"` + + // Icon: An enum value that will be replaced by the Chat API with + // the + // corresponding icon image. + // + // Possible values: + // "ICON_UNSPECIFIED" + // "AIRPLANE" + // "BOOKMARK" + // "BUS" + // "CAR" + // "CLOCK" + // "CONFIRMATION_NUMBER_ICON" + // "DOLLAR" + // "DESCRIPTION" + // "EMAIL" + // "EVENT_PERFORMER" + // "EVENT_SEAT" + // "FLIGHT_ARRIVAL" + // "FLIGHT_DEPARTURE" + // "HOTEL" + // "HOTEL_ROOM_TYPE" + // "INVITE" + // "MAP_PIN" + // "MEMBERSHIP" + // "MULTIPLE_PEOPLE" + // "OFFER" + // "PERSON" + // "PHONE" + // "RESTAURANT_ICON" + // "SHOPPING_CART" + // "STAR" + // "STORE" + // "TICKET" + // "TRAIN" + // "VIDEO_CAMERA" + // "VIDEO_PLAY" + Icon string `json:"icon,omitempty"` + + // IconUrl: The icon specified by a URL. + IconUrl string `json:"iconUrl,omitempty"` + + // OnClick: The onclick action. Only the top label, bottom label and + // content region + // are clickable. + OnClick *OnClick `json:"onClick,omitempty"` + + // TopLabel: The text of the top label. Formatted text supported. + TopLabel string `json:"topLabel,omitempty"` + + // ForceSendFields is a list of field names (e.g. "BottomLabel") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "BottomLabel") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *KeyValue) MarshalJSON() ([]byte, error) { + type NoMethod KeyValue + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +type ListMembershipsResponse struct { + // Memberships: List of memberships in the requested (or first) page. + Memberships []*Membership `json:"memberships,omitempty"` + + // NextPageToken: Continuation token to retrieve the next page of + // results. It will be empty + // for the last page of results. + NextPageToken string `json:"nextPageToken,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "Memberships") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Memberships") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *ListMembershipsResponse) MarshalJSON() ([]byte, error) { + type NoMethod ListMembershipsResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +type ListSpacesResponse struct { + // NextPageToken: Continuation token to retrieve the next page of + // results. It will be empty + // for the last page of results. Tokens expire in an hour. An error is + // thrown + // if an expired token is passed. + NextPageToken string `json:"nextPageToken,omitempty"` + + // Spaces: List of spaces in the requested (or first) page. + Spaces []*Space `json:"spaces,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "NextPageToken") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "NextPageToken") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *ListSpacesResponse) MarshalJSON() ([]byte, error) { + type NoMethod ListSpacesResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// Membership: Represents a membership relation in Hangouts Chat. +type Membership struct { + // CreateTime: The creation time of the membership a.k.a the time at + // which the member + // joined the space, if applicable. + CreateTime string `json:"createTime,omitempty"` + + // Member: Member details. + Member *User `json:"member,omitempty"` + + // Name: Resource name of the membership, in the form + // "spaces/*/members/*". + // + // Example: spaces/AAAAMpdlehY/members/105115627578887013105 + Name string `json:"name,omitempty"` + + // State: State of the membership. + // + // Possible values: + // "MEMBERSHIP_STATE_UNSPECIFIED" - Default, do not use. + // "JOINED" - The user has joined the space. + // "INVITED" - The user has been invited, is able to join the space, + // but currently has + // not joined. + // "NOT_A_MEMBER" - The user is not a member of the space, has not + // been invited and is not + // able to join the space. + State string `json:"state,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "CreateTime") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "CreateTime") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *Membership) MarshalJSON() ([]byte, error) { + type NoMethod Membership + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// Message: A message in Hangouts Chat. +type Message struct { + // ActionResponse: Input only. Parameters that a bot can use to + // configure how its response is + // posted. + ActionResponse *ActionResponse `json:"actionResponse,omitempty"` + + // Annotations: Output only. Annotations associated with the text in + // this message. + Annotations []*Annotation `json:"annotations,omitempty"` + + // Cards: Rich, formatted and interactive cards that can be used to + // display UI + // elements such as: formatted texts, buttons, clickable images. Cards + // are + // normally displayed below the plain-text body of the message. + Cards []*Card `json:"cards,omitempty"` + + // CreateTime: Output only. The time at which the message was created in + // Hangouts Chat + // server. + CreateTime string `json:"createTime,omitempty"` + + // FallbackText: A plain-text description of the message's cards, used + // when the actual cards + // cannot be displayed (e.g. mobile notifications). + FallbackText string `json:"fallbackText,omitempty"` + + // Name: Resource name, in the form "spaces/*/messages/*". + // + // Example: spaces/AAAAMpdlehY/messages/UMxbHmzDlr4.UMxbHmzDlr4 + Name string `json:"name,omitempty"` + + // PreviewText: Text for generating preview chips. This text will not be + // displayed to the + // user, but any links to images, web pages, videos, etc. included here + // will + // generate preview chips. + PreviewText string `json:"previewText,omitempty"` + + // Sender: The user who created the message. + Sender *User `json:"sender,omitempty"` + + // Space: The space the message belongs to. + Space *Space `json:"space,omitempty"` + + // Text: Plain-text body of the message. + Text string `json:"text,omitempty"` + + // Thread: The thread the message belongs to. + Thread *Thread `json:"thread,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "ActionResponse") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "ActionResponse") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *Message) MarshalJSON() ([]byte, error) { + type NoMethod Message + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// OnClick: An onclick action (e.g. open a link). +type OnClick struct { + // Action: A form action will be trigger by this onclick if specified. + Action *FormAction `json:"action,omitempty"` + + // OpenLink: This onclick triggers an open link action if specified. + OpenLink *OpenLink `json:"openLink,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Action") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Action") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *OnClick) MarshalJSON() ([]byte, error) { + type NoMethod OnClick + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// OpenLink: A link that opens a new window. +type OpenLink struct { + // Url: The URL to open. + Url string `json:"url,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Url") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Url") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *OpenLink) MarshalJSON() ([]byte, error) { + type NoMethod OpenLink + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// Section: A section contains a collection of widgets that are +// rendered +// (vertically) in the order that they are specified. Across all +// platforms, +// cards have a narrow fixed width, so +// there is currently no need for layout properties (e.g. float). +type Section struct { + // Header: The header of the section, text formatted supported. + Header string `json:"header,omitempty"` + + // Widgets: A section must contain at least 1 widget. + Widgets []*WidgetMarkup `json:"widgets,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Header") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Header") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *Section) MarshalJSON() ([]byte, error) { + type NoMethod Section + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// Space: A room or DM in Hangouts Chat. +type Space struct { + // DisplayName: Output only. The display name (only if the space is a + // room). + DisplayName string `json:"displayName,omitempty"` + + // Name: Resource name of the space, in the form "spaces/*". + // + // Example: spaces/AAAAMpdlehYs + Name string `json:"name,omitempty"` + + // Type: Output only. The type of a space. + // + // Possible values: + // "TYPE_UNSPECIFIED" + // "ROOM" + // "DM" + Type string `json:"type,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "DisplayName") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "DisplayName") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *Space) MarshalJSON() ([]byte, error) { + type NoMethod Space + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// TextButton: A button with text and onclick action. +type TextButton struct { + // OnClick: The onclick action of the button. + OnClick *OnClick `json:"onClick,omitempty"` + + // Text: The text of the button. + Text string `json:"text,omitempty"` + + // ForceSendFields is a list of field names (e.g. "OnClick") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "OnClick") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *TextButton) MarshalJSON() ([]byte, error) { + type NoMethod TextButton + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// TextParagraph: A paragraph of text. Formatted text supported. +type TextParagraph struct { + Text string `json:"text,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Text") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Text") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *TextParagraph) MarshalJSON() ([]byte, error) { + type NoMethod TextParagraph + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// Thread: A thread in Hangouts Chat. +type Thread struct { + // Name: Resource name, in the form "spaces/*/threads/*". + // + // Example: spaces/AAAAMpdlehY/threads/UMxbHmzDlr4 + Name string `json:"name,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Name") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Name") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *Thread) MarshalJSON() ([]byte, error) { + type NoMethod Thread + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// User: A user in Hangouts Chat. +type User struct { + // DisplayName: The user's display name. + DisplayName string `json:"displayName,omitempty"` + + // Name: Resource name, in the format "users/*". + Name string `json:"name,omitempty"` + + // Type: User type. + // + // Possible values: + // "TYPE_UNSPECIFIED" - Default value for the enum. DO NOT USE. + // "HUMAN" - Human user. + // "BOT" - Bot user. + Type string `json:"type,omitempty"` + + // ForceSendFields is a list of field names (e.g. "DisplayName") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "DisplayName") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *User) MarshalJSON() ([]byte, error) { + type NoMethod User + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// UserMentionMetadata: Annotation metadata for user mentions (@). +type UserMentionMetadata struct { + // Type: The type of user mention. + // + // Possible values: + // "TYPE_UNSPECIFIED" - Default value for the enum. DO NOT USE. + // "ADD" - Add user to space. + // "MENTION" - Mention user in space. + Type string `json:"type,omitempty"` + + // User: The user mentioned. + User *User `json:"user,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Type") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Type") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *UserMentionMetadata) MarshalJSON() ([]byte, error) { + type NoMethod UserMentionMetadata + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// WidgetMarkup: A widget is a UI element that presents texts, images, +// etc. +type WidgetMarkup struct { + // Buttons: A list of buttons. Buttons is also oneof data and only one + // of these + // fields should be set. + Buttons []*Button `json:"buttons,omitempty"` + + // Image: Display an image in this widget. + Image *Image `json:"image,omitempty"` + + // KeyValue: Display a key value item in this widget. + KeyValue *KeyValue `json:"keyValue,omitempty"` + + // TextParagraph: Display a text paragraph in this widget. + TextParagraph *TextParagraph `json:"textParagraph,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Buttons") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Buttons") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *WidgetMarkup) MarshalJSON() ([]byte, error) { + type NoMethod WidgetMarkup + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// method id "chat.spaces.get": + +type SpacesGetCall struct { + s *Service + name string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// Get: Returns a space. +func (r *SpacesService) Get(name string) *SpacesGetCall { + c := &SpacesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *SpacesGetCall) Fields(s ...googleapi.Field) *SpacesGetCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// IfNoneMatch sets the optional parameter which makes the operation +// fail if the object's ETag matches the given value. This is useful for +// getting updates only after the object has changed since the last +// request. Use googleapi.IsNotModified to check whether the response +// error from Do is the result of In-None-Match. +func (c *SpacesGetCall) IfNoneMatch(entityTag string) *SpacesGetCall { + c.ifNoneMatch_ = entityTag + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *SpacesGetCall) Context(ctx context.Context) *SpacesGetCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *SpacesGetCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *SpacesGetCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + if c.ifNoneMatch_ != "" { + reqHeaders.Set("If-None-Match", c.ifNoneMatch_) + } + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("GET", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "chat.spaces.get" call. +// Exactly one of *Space or error will be non-nil. Any non-2xx status +// code is an error. Response headers are in either +// *Space.ServerResponse.Header or (if a response was returned at all) +// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to +// check whether the returned error was because http.StatusNotModified +// was returned. +func (c *SpacesGetCall) Do(opts ...googleapi.CallOption) (*Space, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &Space{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Returns a space.", + // "flatPath": "v1/spaces/{spacesId}", + // "httpMethod": "GET", + // "id": "chat.spaces.get", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "Required. Resource name of the space, in the form \"spaces/*\".\n\nExample: spaces/AAAAMpdlehY", + // "location": "path", + // "pattern": "^spaces/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1/{+name}", + // "response": { + // "$ref": "Space" + // } + // } + +} + +// method id "chat.spaces.list": + +type SpacesListCall struct { + s *Service + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// List: Lists spaces the caller is a member of. +func (r *SpacesService) List() *SpacesListCall { + c := &SpacesListCall{s: r.s, urlParams_: make(gensupport.URLParams)} + return c +} + +// PageSize sets the optional parameter "pageSize": Requested page size. +// The value is capped at 1000. +// Server may return fewer results than requested. +// If unspecified, server will default to 100. +func (c *SpacesListCall) PageSize(pageSize int64) *SpacesListCall { + c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) + return c +} + +// PageToken sets the optional parameter "pageToken": A token +// identifying a page of results the server should return. +func (c *SpacesListCall) PageToken(pageToken string) *SpacesListCall { + c.urlParams_.Set("pageToken", pageToken) + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *SpacesListCall) Fields(s ...googleapi.Field) *SpacesListCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// IfNoneMatch sets the optional parameter which makes the operation +// fail if the object's ETag matches the given value. This is useful for +// getting updates only after the object has changed since the last +// request. Use googleapi.IsNotModified to check whether the response +// error from Do is the result of In-None-Match. +func (c *SpacesListCall) IfNoneMatch(entityTag string) *SpacesListCall { + c.ifNoneMatch_ = entityTag + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *SpacesListCall) Context(ctx context.Context) *SpacesListCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *SpacesListCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *SpacesListCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + if c.ifNoneMatch_ != "" { + reqHeaders.Set("If-None-Match", c.ifNoneMatch_) + } + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v1/spaces") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("GET", urls, body) + req.Header = reqHeaders + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "chat.spaces.list" call. +// Exactly one of *ListSpacesResponse or error will be non-nil. Any +// non-2xx status code is an error. Response headers are in either +// *ListSpacesResponse.ServerResponse.Header or (if a response was +// returned at all) in error.(*googleapi.Error).Header. Use +// googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *SpacesListCall) Do(opts ...googleapi.CallOption) (*ListSpacesResponse, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &ListSpacesResponse{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Lists spaces the caller is a member of.", + // "flatPath": "v1/spaces", + // "httpMethod": "GET", + // "id": "chat.spaces.list", + // "parameterOrder": [], + // "parameters": { + // "pageSize": { + // "description": "Requested page size. The value is capped at 1000.\nServer may return fewer results than requested.\nIf unspecified, server will default to 100.", + // "format": "int32", + // "location": "query", + // "type": "integer" + // }, + // "pageToken": { + // "description": "A token identifying a page of results the server should return.", + // "location": "query", + // "type": "string" + // } + // }, + // "path": "v1/spaces", + // "response": { + // "$ref": "ListSpacesResponse" + // } + // } + +} + +// Pages invokes f for each page of results. +// A non-nil error returned from f will halt the iteration. +// The provided context supersedes any context provided to the Context method. +func (c *SpacesListCall) Pages(ctx context.Context, f func(*ListSpacesResponse) error) error { + c.ctx_ = ctx + defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point + for { + x, err := c.Do() + if err != nil { + return err + } + if err := f(x); err != nil { + return err + } + if x.NextPageToken == "" { + return nil + } + c.PageToken(x.NextPageToken) + } +} + +// method id "chat.spaces.members.get": + +type SpacesMembersGetCall struct { + s *Service + name string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// Get: Returns a membership. +func (r *SpacesMembersService) Get(name string) *SpacesMembersGetCall { + c := &SpacesMembersGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *SpacesMembersGetCall) Fields(s ...googleapi.Field) *SpacesMembersGetCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// IfNoneMatch sets the optional parameter which makes the operation +// fail if the object's ETag matches the given value. This is useful for +// getting updates only after the object has changed since the last +// request. Use googleapi.IsNotModified to check whether the response +// error from Do is the result of In-None-Match. +func (c *SpacesMembersGetCall) IfNoneMatch(entityTag string) *SpacesMembersGetCall { + c.ifNoneMatch_ = entityTag + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *SpacesMembersGetCall) Context(ctx context.Context) *SpacesMembersGetCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *SpacesMembersGetCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *SpacesMembersGetCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + if c.ifNoneMatch_ != "" { + reqHeaders.Set("If-None-Match", c.ifNoneMatch_) + } + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("GET", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "chat.spaces.members.get" call. +// Exactly one of *Membership or error will be non-nil. Any non-2xx +// status code is an error. Response headers are in either +// *Membership.ServerResponse.Header or (if a response was returned at +// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified +// to check whether the returned error was because +// http.StatusNotModified was returned. +func (c *SpacesMembersGetCall) Do(opts ...googleapi.CallOption) (*Membership, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &Membership{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Returns a membership.", + // "flatPath": "v1/spaces/{spacesId}/members/{membersId}", + // "httpMethod": "GET", + // "id": "chat.spaces.members.get", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "Required. Resource name of the membership to be retrieved, in the form\n\"spaces/*/members/*\".\n\nExample: spaces/AAAAMpdlehY/members/105115627578887013105", + // "location": "path", + // "pattern": "^spaces/[^/]+/members/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1/{+name}", + // "response": { + // "$ref": "Membership" + // } + // } + +} + +// method id "chat.spaces.members.list": + +type SpacesMembersListCall struct { + s *Service + parent string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// List: Lists human memberships in a space. +func (r *SpacesMembersService) List(parent string) *SpacesMembersListCall { + c := &SpacesMembersListCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.parent = parent + return c +} + +// PageSize sets the optional parameter "pageSize": Requested page size. +// The value is capped at 1000. +// Server may return fewer results than requested. +// If unspecified, server will default to 100. +func (c *SpacesMembersListCall) PageSize(pageSize int64) *SpacesMembersListCall { + c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) + return c +} + +// PageToken sets the optional parameter "pageToken": A token +// identifying a page of results the server should return. +func (c *SpacesMembersListCall) PageToken(pageToken string) *SpacesMembersListCall { + c.urlParams_.Set("pageToken", pageToken) + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *SpacesMembersListCall) Fields(s ...googleapi.Field) *SpacesMembersListCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// IfNoneMatch sets the optional parameter which makes the operation +// fail if the object's ETag matches the given value. This is useful for +// getting updates only after the object has changed since the last +// request. Use googleapi.IsNotModified to check whether the response +// error from Do is the result of In-None-Match. +func (c *SpacesMembersListCall) IfNoneMatch(entityTag string) *SpacesMembersListCall { + c.ifNoneMatch_ = entityTag + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *SpacesMembersListCall) Context(ctx context.Context) *SpacesMembersListCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *SpacesMembersListCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *SpacesMembersListCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + if c.ifNoneMatch_ != "" { + reqHeaders.Set("If-None-Match", c.ifNoneMatch_) + } + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/members") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("GET", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "parent": c.parent, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "chat.spaces.members.list" call. +// Exactly one of *ListMembershipsResponse or error will be non-nil. Any +// non-2xx status code is an error. Response headers are in either +// *ListMembershipsResponse.ServerResponse.Header or (if a response was +// returned at all) in error.(*googleapi.Error).Header. Use +// googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *SpacesMembersListCall) Do(opts ...googleapi.CallOption) (*ListMembershipsResponse, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &ListMembershipsResponse{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Lists human memberships in a space.", + // "flatPath": "v1/spaces/{spacesId}/members", + // "httpMethod": "GET", + // "id": "chat.spaces.members.list", + // "parameterOrder": [ + // "parent" + // ], + // "parameters": { + // "pageSize": { + // "description": "Requested page size. The value is capped at 1000.\nServer may return fewer results than requested.\nIf unspecified, server will default to 100.", + // "format": "int32", + // "location": "query", + // "type": "integer" + // }, + // "pageToken": { + // "description": "A token identifying a page of results the server should return.", + // "location": "query", + // "type": "string" + // }, + // "parent": { + // "description": "Required. The resource name of the space for which membership list is to be\nfetched, in the form \"spaces/*\".\n\nExample: spaces/AAAAMpdlehY", + // "location": "path", + // "pattern": "^spaces/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1/{+parent}/members", + // "response": { + // "$ref": "ListMembershipsResponse" + // } + // } + +} + +// Pages invokes f for each page of results. +// A non-nil error returned from f will halt the iteration. +// The provided context supersedes any context provided to the Context method. +func (c *SpacesMembersListCall) Pages(ctx context.Context, f func(*ListMembershipsResponse) error) error { + c.ctx_ = ctx + defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point + for { + x, err := c.Do() + if err != nil { + return err + } + if err := f(x); err != nil { + return err + } + if x.NextPageToken == "" { + return nil + } + c.PageToken(x.NextPageToken) + } +} + +// method id "chat.spaces.messages.create": + +type SpacesMessagesCreateCall struct { + s *Service + parent string + message *Message + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Create: Creates a message. +func (r *SpacesMessagesService) Create(parent string, message *Message) *SpacesMessagesCreateCall { + c := &SpacesMessagesCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.parent = parent + c.message = message + return c +} + +// ThreadKey sets the optional parameter "threadKey": Opaque thread +// identifier string that can be specified to group messages +// into a single thread. If this is the first message with a given +// thread +// identifier, a new thread is created. Subsequent messages with the +// same +// thread identifier will be posted into the same thread. This relieves +// bots +// and webhooks from having to store the Hangouts Chat thread ID of a +// thread (created earlier by them) to post +// further updates to it. +// +// Has no effect if thread field, +// corresponding to an existing thread, is set in message. +func (c *SpacesMessagesCreateCall) ThreadKey(threadKey string) *SpacesMessagesCreateCall { + c.urlParams_.Set("threadKey", threadKey) + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *SpacesMessagesCreateCall) Fields(s ...googleapi.Field) *SpacesMessagesCreateCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *SpacesMessagesCreateCall) Context(ctx context.Context) *SpacesMessagesCreateCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *SpacesMessagesCreateCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *SpacesMessagesCreateCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.message) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/messages") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("POST", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "parent": c.parent, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "chat.spaces.messages.create" call. +// Exactly one of *Message or error will be non-nil. Any non-2xx status +// code is an error. Response headers are in either +// *Message.ServerResponse.Header or (if a response was returned at all) +// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to +// check whether the returned error was because http.StatusNotModified +// was returned. +func (c *SpacesMessagesCreateCall) Do(opts ...googleapi.CallOption) (*Message, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &Message{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Creates a message.", + // "flatPath": "v1/spaces/{spacesId}/messages", + // "httpMethod": "POST", + // "id": "chat.spaces.messages.create", + // "parameterOrder": [ + // "parent" + // ], + // "parameters": { + // "parent": { + // "description": "Required. Space resource name, in the form \"spaces/*\".\nExample: spaces/AAAAMpdlehY", + // "location": "path", + // "pattern": "^spaces/[^/]+$", + // "required": true, + // "type": "string" + // }, + // "threadKey": { + // "description": "Opaque thread identifier string that can be specified to group messages\ninto a single thread. If this is the first message with a given thread\nidentifier, a new thread is created. Subsequent messages with the same\nthread identifier will be posted into the same thread. This relieves bots\nand webhooks from having to store the Hangouts Chat thread ID of a thread (created earlier by them) to post\nfurther updates to it.\n\nHas no effect if thread field,\ncorresponding to an existing thread, is set in message.", + // "location": "query", + // "type": "string" + // } + // }, + // "path": "v1/{+parent}/messages", + // "request": { + // "$ref": "Message" + // }, + // "response": { + // "$ref": "Message" + // } + // } + +} + +// method id "chat.spaces.messages.delete": + +type SpacesMessagesDeleteCall struct { + s *Service + name string + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Delete: Deletes a message. +func (r *SpacesMessagesService) Delete(name string) *SpacesMessagesDeleteCall { + c := &SpacesMessagesDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *SpacesMessagesDeleteCall) Fields(s ...googleapi.Field) *SpacesMessagesDeleteCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *SpacesMessagesDeleteCall) Context(ctx context.Context) *SpacesMessagesDeleteCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *SpacesMessagesDeleteCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *SpacesMessagesDeleteCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("DELETE", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "chat.spaces.messages.delete" call. +// Exactly one of *Empty or error will be non-nil. Any non-2xx status +// code is an error. Response headers are in either +// *Empty.ServerResponse.Header or (if a response was returned at all) +// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to +// check whether the returned error was because http.StatusNotModified +// was returned. +func (c *SpacesMessagesDeleteCall) Do(opts ...googleapi.CallOption) (*Empty, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &Empty{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Deletes a message.", + // "flatPath": "v1/spaces/{spacesId}/messages/{messagesId}", + // "httpMethod": "DELETE", + // "id": "chat.spaces.messages.delete", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "Required. Resource name of the message to be deleted, in the form\n\"spaces/*/messages/*\"\n\nExample: spaces/AAAAMpdlehY/messages/UMxbHmzDlr4.UMxbHmzDlr4", + // "location": "path", + // "pattern": "^spaces/[^/]+/messages/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1/{+name}", + // "response": { + // "$ref": "Empty" + // } + // } + +} + +// method id "chat.spaces.messages.get": + +type SpacesMessagesGetCall struct { + s *Service + name string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// Get: Returns a message. +func (r *SpacesMessagesService) Get(name string) *SpacesMessagesGetCall { + c := &SpacesMessagesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *SpacesMessagesGetCall) Fields(s ...googleapi.Field) *SpacesMessagesGetCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// IfNoneMatch sets the optional parameter which makes the operation +// fail if the object's ETag matches the given value. This is useful for +// getting updates only after the object has changed since the last +// request. Use googleapi.IsNotModified to check whether the response +// error from Do is the result of In-None-Match. +func (c *SpacesMessagesGetCall) IfNoneMatch(entityTag string) *SpacesMessagesGetCall { + c.ifNoneMatch_ = entityTag + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *SpacesMessagesGetCall) Context(ctx context.Context) *SpacesMessagesGetCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *SpacesMessagesGetCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *SpacesMessagesGetCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + if c.ifNoneMatch_ != "" { + reqHeaders.Set("If-None-Match", c.ifNoneMatch_) + } + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("GET", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "chat.spaces.messages.get" call. +// Exactly one of *Message or error will be non-nil. Any non-2xx status +// code is an error. Response headers are in either +// *Message.ServerResponse.Header or (if a response was returned at all) +// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to +// check whether the returned error was because http.StatusNotModified +// was returned. +func (c *SpacesMessagesGetCall) Do(opts ...googleapi.CallOption) (*Message, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &Message{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Returns a message.", + // "flatPath": "v1/spaces/{spacesId}/messages/{messagesId}", + // "httpMethod": "GET", + // "id": "chat.spaces.messages.get", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "Required. Resource name of the message to be retrieved, in the form\n\"spaces/*/messages/*\".\n\nExample: spaces/AAAAMpdlehY/messages/UMxbHmzDlr4.UMxbHmzDlr4", + // "location": "path", + // "pattern": "^spaces/[^/]+/messages/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1/{+name}", + // "response": { + // "$ref": "Message" + // } + // } + +} + +// method id "chat.spaces.messages.update": + +type SpacesMessagesUpdateCall struct { + s *Service + name string + message *Message + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Update: Updates a message. +func (r *SpacesMessagesService) Update(name string, message *Message) *SpacesMessagesUpdateCall { + c := &SpacesMessagesUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + c.message = message + return c +} + +// UpdateMask sets the optional parameter "updateMask": Required. The +// field paths to be updated. +// +// Currently supported field paths: "text", "cards". +func (c *SpacesMessagesUpdateCall) UpdateMask(updateMask string) *SpacesMessagesUpdateCall { + c.urlParams_.Set("updateMask", updateMask) + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *SpacesMessagesUpdateCall) Fields(s ...googleapi.Field) *SpacesMessagesUpdateCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *SpacesMessagesUpdateCall) Context(ctx context.Context) *SpacesMessagesUpdateCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *SpacesMessagesUpdateCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *SpacesMessagesUpdateCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.message) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("PUT", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "chat.spaces.messages.update" call. +// Exactly one of *Message or error will be non-nil. Any non-2xx status +// code is an error. Response headers are in either +// *Message.ServerResponse.Header or (if a response was returned at all) +// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to +// check whether the returned error was because http.StatusNotModified +// was returned. +func (c *SpacesMessagesUpdateCall) Do(opts ...googleapi.CallOption) (*Message, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &Message{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Updates a message.", + // "flatPath": "v1/spaces/{spacesId}/messages/{messagesId}", + // "httpMethod": "PUT", + // "id": "chat.spaces.messages.update", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "Resource name, in the form \"spaces/*/messages/*\".\n\nExample: spaces/AAAAMpdlehY/messages/UMxbHmzDlr4.UMxbHmzDlr4", + // "location": "path", + // "pattern": "^spaces/[^/]+/messages/[^/]+$", + // "required": true, + // "type": "string" + // }, + // "updateMask": { + // "description": "Required. The field paths to be updated.\n\nCurrently supported field paths: \"text\", \"cards\".", + // "format": "google-fieldmask", + // "location": "query", + // "type": "string" + // } + // }, + // "path": "v1/{+name}", + // "request": { + // "$ref": "Message" + // }, + // "response": { + // "$ref": "Message" + // } + // } + +} diff --git a/vendor/google.golang.org/api/civicinfo/v2/civicinfo-api.json b/vendor/google.golang.org/api/civicinfo/v2/civicinfo-api.json index f09c4eb4c..318f4f430 100644 --- a/vendor/google.golang.org/api/civicinfo/v2/civicinfo-api.json +++ b/vendor/google.golang.org/api/civicinfo/v2/civicinfo-api.json @@ -1,1281 +1,1281 @@ { - "kind": "discovery#restDescription", - "etag": "\"YWOzh2SDasdU84ArJnpYek-OMdg/sNrwy4GBJh0JDl02KcW1-1MdJOM\"", - "discoveryVersion": "v1", - "id": "civicinfo:v2", - "name": "civicinfo", - "canonicalName": "Civic Info", - "version": "v2", - "revision": "20161102", - "title": "Google Civic Information API", - "description": "Provides polling places, early vote locations, contest data, election officials, and government representatives for U.S. residential addresses.", - "ownerDomain": "google.com", - "ownerName": "Google", - "icons": { - "x16": "https://www.gstatic.com/images/branding/product/1x/googleg_16dp.png", - "x32": "https://www.gstatic.com/images/branding/product/1x/googleg_32dp.png" - }, - "documentationLink": "https://developers.google.com/civic-information", - "protocol": "rest", - "baseUrl": "https://www.googleapis.com/civicinfo/v2/", - "basePath": "/civicinfo/v2/", - "rootUrl": "https://www.googleapis.com/", - "servicePath": "civicinfo/v2/", - "batchPath": "batch/civicinfo/v2", - "parameters": { - "alt": { - "type": "string", - "description": "Data format for the response.", - "default": "json", - "enum": [ - "json" - ], - "enumDescriptions": [ - "Responses with Content-Type of application/json" - ], - "location": "query" + "basePath": "/civicinfo/v2/", + "baseUrl": "https://www.googleapis.com/civicinfo/v2/", + "batchPath": "batch/civicinfo/v2", + "canonicalName": "Civic Info", + "description": "Provides polling places, early vote locations, contest data, election officials, and government representatives for U.S. residential addresses.", + "discoveryVersion": "v1", + "documentationLink": "https://developers.google.com/civic-information", + "etag": "\"-iA1DTNe4s-I6JZXPt1t1Ypy8IU/sNrwy4GBJh0JDl02KcW1-1MdJOM\"", + "icons": { + "x16": "https://www.gstatic.com/images/branding/product/1x/googleg_16dp.png", + "x32": "https://www.gstatic.com/images/branding/product/1x/googleg_32dp.png" }, - "fields": { - "type": "string", - "description": "Selector specifying which fields to include in a partial response.", - "location": "query" - }, - "key": { - "type": "string", - "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" - }, - "oauth_token": { - "type": "string", - "description": "OAuth 2.0 token for the current user.", - "location": "query" - }, - "prettyPrint": { - "type": "boolean", - "description": "Returns response with indentations and line breaks.", - "default": "true", - "location": "query" - }, - "quotaUser": { - "type": "string", - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", - "location": "query" - }, - "userIp": { - "type": "string", - "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", - "location": "query" - } - }, - "schemas": { - "AdministrationRegion": { - "id": "AdministrationRegion", - "type": "object", - "description": "Describes information about a regional election administrative area.", - "properties": { - "electionAdministrationBody": { - "$ref": "AdministrativeBody", - "description": "The election administration body for this area." - }, - "id": { - "type": "string", - "description": "An ID for this object. IDs may change in future requests and should not be cached. Access to this field requires special access that can be requested from the Request more link on the Quotas page." - }, - "local_jurisdiction": { - "$ref": "AdministrationRegion", - "description": "The city or county that provides election information for this voter. This object can have the same elements as state." - }, - "name": { - "type": "string", - "description": "The name of the jurisdiction." - }, - "sources": { - "type": "array", - "description": "A list of sources for this area. If multiple sources are listed the data has been aggregated from those sources.", - "items": { - "$ref": "Source" - } - } - } - }, - "AdministrativeBody": { - "id": "AdministrativeBody", - "type": "object", - "description": "Information about an election administrative body (e.g. County Board of Elections).", - "properties": { - "absenteeVotingInfoUrl": { - "type": "string", - "description": "A URL provided by this administrative body for information on absentee voting." - }, - "addressLines": { - "type": "array", - "items": { + "id": "civicinfo:v2", + "kind": "discovery#restDescription", + "name": "civicinfo", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "alt": { + "default": "json", + "description": "Data format for the response.", + "enum": [ + "json" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json" + ], + "location": "query", "type": "string" - } }, - "ballotInfoUrl": { - "type": "string", - "description": "A URL provided by this administrative body to give contest information to the voter." - }, - "correspondenceAddress": { - "$ref": "SimpleAddressType", - "description": "The mailing address of this administrative body." - }, - "electionInfoUrl": { - "type": "string", - "description": "A URL provided by this administrative body for looking up general election information." - }, - "electionOfficials": { - "type": "array", - "description": "The election officials for this election administrative body.", - "items": { - "$ref": "ElectionOfficial" - } - }, - "electionRegistrationConfirmationUrl": { - "type": "string", - "description": "A URL provided by this administrative body for confirming that the voter is registered to vote." - }, - "electionRegistrationUrl": { - "type": "string", - "description": "A URL provided by this administrative body for looking up how to register to vote." - }, - "electionRulesUrl": { - "type": "string", - "description": "A URL provided by this administrative body describing election rules to the voter." - }, - "hoursOfOperation": { - "type": "string", - "description": "A description of the hours of operation for this administrative body." - }, - "name": { - "type": "string", - "description": "The name of this election administrative body." - }, - "physicalAddress": { - "$ref": "SimpleAddressType", - "description": "The physical address of this administrative body." - }, - "voter_services": { - "type": "array", - "description": "A description of the services this administrative body may provide.", - "items": { + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "location": "query", "type": "string" - } }, - "votingLocationFinderUrl": { - "type": "string", - "description": "A URL provided by this administrative body for looking up where to vote." - } - } - }, - "Candidate": { - "id": "Candidate", - "type": "object", - "description": "Information about a candidate running for elected office.", - "properties": { - "candidateUrl": { - "type": "string", - "description": "The URL for the candidate's campaign web site." - }, - "channels": { - "type": "array", - "description": "A list of known (social) media channels for this candidate.", - "items": { - "$ref": "Channel" - } - }, - "email": { - "type": "string", - "description": "The email address for the candidate's campaign." - }, - "name": { - "type": "string", - "description": "The candidate's name. If this is a joint ticket it will indicate the name of the candidate at the top of a ticket followed by a / and that name of candidate at the bottom of the ticket. e.g. \"Mitt Romney / Paul Ryan\"" - }, - "orderOnBallot": { - "type": "string", - "description": "The order the candidate appears on the ballot for this contest.", - "format": "int64" - }, - "party": { - "type": "string", - "description": "The full name of the party the candidate is a member of." - }, - "phone": { - "type": "string", - "description": "The voice phone number for the candidate's campaign office." - }, - "photoUrl": { - "type": "string", - "description": "A URL for a photo of the candidate." - } - } - }, - "Channel": { - "id": "Channel", - "type": "object", - "description": "A social media or web channel for a candidate.", - "properties": { - "id": { - "type": "string", - "description": "The unique public identifier for the candidate's channel." - }, - "type": { - "type": "string", - "description": "The type of channel. The following is a list of types of channels, but is not exhaustive. More channel types may be added at a later time. One of: GooglePlus, YouTube, Facebook, Twitter" - } - } - }, - "Contest": { - "id": "Contest", - "type": "object", - "description": "Information about a contest that appears on a voter's ballot.", - "properties": { - "ballotPlacement": { - "type": "string", - "description": "A number specifying the position of this contest on the voter's ballot.", - "format": "int64" - }, - "candidates": { - "type": "array", - "description": "The candidate choices for this contest.", - "items": { - "$ref": "Candidate" - } - }, - "district": { - "$ref": "ElectoralDistrict", - "description": "Information about the electoral district that this contest is in." - }, - "electorateSpecifications": { - "type": "string", - "description": "A description of any additional eligibility requirements for voting in this contest." - }, - "id": { - "type": "string", - "description": "An ID for this object. IDs may change in future requests and should not be cached. Access to this field requires special access that can be requested from the Request more link on the Quotas page." - }, - "level": { - "type": "array", - "description": "The levels of government of the office for this contest. There may be more than one in cases where a jurisdiction effectively acts at two different levels of government; for example, the mayor of the District of Columbia acts at \"locality\" level, but also effectively at both \"administrative-area-2\" and \"administrative-area-1\".", - "items": { + "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" - } }, - "numberElected": { - "type": "string", - "description": "The number of candidates that will be elected to office in this contest.", - "format": "int64" - }, - "numberVotingFor": { - "type": "string", - "description": "The number of candidates that a voter may vote for in this contest.", - "format": "int64" - }, - "office": { - "type": "string", - "description": "The name of the office for this contest." - }, - "primaryParty": { - "type": "string", - "description": "If this is a partisan election, the name of the party it is for." - }, - "referendumBallotResponses": { - "type": "array", - "description": "The set of ballot responses for the referendum. A ballot response represents a line on the ballot. Common examples might include \"yes\" or \"no\" for referenda. This field is only populated for contests of type 'Referendum'.", - "items": { + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", "type": "string" - } }, - "referendumBrief": { - "type": "string", - "description": "Specifies a short summary of the referendum that is typically on the ballot below the title but above the text. This field is only populated for contests of type 'Referendum'." + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" }, - "referendumConStatement": { - "type": "string", - "description": "A statement in opposition to the referendum. It does not necessarily appear on the ballot. This field is only populated for contests of type 'Referendum'." - }, - "referendumEffectOfAbstain": { - "type": "string", - "description": "Specifies what effect abstaining (not voting) on the proposition will have (i.e. whether abstaining is considered a vote against it). This field is only populated for contests of type 'Referendum'." - }, - "referendumPassageThreshold": { - "type": "string", - "description": "The threshold of votes that the referendum needs in order to pass, e.g. \"two-thirds\". This field is only populated for contests of type 'Referendum'." - }, - "referendumProStatement": { - "type": "string", - "description": "A statement in favor of the referendum. It does not necessarily appear on the ballot. This field is only populated for contests of type 'Referendum'." - }, - "referendumSubtitle": { - "type": "string", - "description": "A brief description of the referendum. This field is only populated for contests of type 'Referendum'." - }, - "referendumText": { - "type": "string", - "description": "The full text of the referendum. This field is only populated for contests of type 'Referendum'." - }, - "referendumTitle": { - "type": "string", - "description": "The title of the referendum (e.g. 'Proposition 42'). This field is only populated for contests of type 'Referendum'." - }, - "referendumUrl": { - "type": "string", - "description": "A link to the referendum. This field is only populated for contests of type 'Referendum'." - }, - "roles": { - "type": "array", - "description": "The roles which this office fulfills.", - "items": { + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", + "location": "query", "type": "string" - } }, - "sources": { - "type": "array", - "description": "A list of sources for this contest. If multiple sources are listed, the data has been aggregated from those sources.", - "items": { - "$ref": "Source" - } - }, - "special": { - "type": "string", - "description": "\"Yes\" or \"No\" depending on whether this a contest being held outside the normal election cycle." - }, - "type": { - "type": "string", - "description": "The type of contest. Usually this will be 'General', 'Primary', or 'Run-off' for contests with candidates. For referenda this will be 'Referendum'. For Retention contests this will typically be 'Retention'." - } - } - }, - "ContextParams": { - "id": "ContextParams", - "type": "object", - "properties": { - "clientProfile": { - "type": "string" - } - } - }, - "DivisionRepresentativeInfoRequest": { - "id": "DivisionRepresentativeInfoRequest", - "type": "object", - "description": "A request to look up representative information for a single division.", - "properties": { - "contextParams": { - "$ref": "ContextParams" - } - } - }, - "DivisionSearchRequest": { - "id": "DivisionSearchRequest", - "type": "object", - "description": "A search request for political geographies.", - "properties": { - "contextParams": { - "$ref": "ContextParams" - } - } - }, - "DivisionSearchResponse": { - "id": "DivisionSearchResponse", - "type": "object", - "description": "The result of a division search query.", - "properties": { - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"civicinfo#divisionSearchResponse\".", - "default": "civicinfo#divisionSearchResponse" - }, - "results": { - "type": "array", - "items": { - "$ref": "DivisionSearchResult" - } - } - } - }, - "DivisionSearchResult": { - "id": "DivisionSearchResult", - "type": "object", - "description": "Represents a political geographic division that matches the requested query.", - "properties": { - "aliases": { - "type": "array", - "description": "Other Open Civic Data identifiers that refer to the same division -- for example, those that refer to other political divisions whose boundaries are defined to be coterminous with this one. For example, ocd-division/country:us/state:wy will include an alias of ocd-division/country:us/state:wy/cd:1, since Wyoming has only one Congressional district.", - "items": { + "userIp": { + "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", + "location": "query", "type": "string" - } - }, - "name": { - "type": "string", - "description": "The name of the division." - }, - "ocdId": { - "type": "string", - "description": "The unique Open Civic Data identifier for this division." } - } }, - "Election": { - "id": "Election", - "type": "object", - "description": "Information about the election that was queried.", - "properties": { - "electionDay": { - "type": "string", - "description": "Day of the election in YYYY-MM-DD format." + "protocol": "rest", + "resources": { + "divisions": { + "methods": { + "search": { + "description": "Searches for political divisions by their natural name or OCD ID.", + "httpMethod": "GET", + "id": "civicinfo.divisions.search", + "parameters": { + "query": { + "description": "The search query. Queries can cover any parts of a OCD ID or a human readable division name. All words given in the query are treated as required patterns. In addition to that, most query operators of the Apache Lucene library are supported. See http://lucene.apache.org/core/2_9_4/queryparsersyntax.html", + "location": "query", + "type": "string" + } + }, + "path": "divisions", + "request": { + "$ref": "DivisionSearchRequest" + }, + "response": { + "$ref": "DivisionSearchResponse" + } + } + } }, - "id": { - "type": "string", - "description": "The unique ID of this election.", - "format": "int64" - }, - "name": { - "type": "string", - "description": "A displayable name for the election." - }, - "ocdDivisionId": { - "type": "string", - "description": "The political division of the election. Represented as an OCD Division ID. Voters within these political jurisdictions are covered by this election. This is typically a state such as ocd-division/country:us/state:ca or for the midterms or general election the entire US (i.e. ocd-division/country:us)." - } - } - }, - "ElectionOfficial": { - "id": "ElectionOfficial", - "type": "object", - "description": "Information about individual election officials.", - "properties": { - "emailAddress": { - "type": "string", - "description": "The email address of the election official." - }, - "faxNumber": { - "type": "string", - "description": "The fax number of the election official." - }, - "name": { - "type": "string", - "description": "The full name of the election official." - }, - "officePhoneNumber": { - "type": "string", - "description": "The office phone number of the election official." - }, - "title": { - "type": "string", - "description": "The title of the election official." - } - } - }, - "ElectionsQueryRequest": { - "id": "ElectionsQueryRequest", - "type": "object", - "properties": { - "contextParams": { - "$ref": "ContextParams" - } - } - }, - "ElectionsQueryResponse": { - "id": "ElectionsQueryResponse", - "type": "object", - "description": "The list of elections available for this version of the API.", - "properties": { "elections": { - "type": "array", - "description": "A list of available elections", - "items": { - "$ref": "Election" - } - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"civicinfo#electionsQueryResponse\".", - "default": "civicinfo#electionsQueryResponse" - } - } - }, - "ElectoralDistrict": { - "id": "ElectoralDistrict", - "type": "object", - "description": "Describes the geographic scope of a contest.", - "properties": { - "id": { - "type": "string", - "description": "An identifier for this district, relative to its scope. For example, the 34th State Senate district would have id \"34\" and a scope of stateUpper." - }, - "kgForeignKey": { - "type": "string" - }, - "name": { - "type": "string", - "description": "The name of the district." - }, - "scope": { - "type": "string", - "description": "The geographic scope of this district. If unspecified the district's geography is not known. One of: national, statewide, congressional, stateUpper, stateLower, countywide, judicial, schoolBoard, cityWide, township, countyCouncil, cityCouncil, ward, special" - } - } - }, - "GeographicDivision": { - "id": "GeographicDivision", - "type": "object", - "description": "Describes a political geography.", - "properties": { - "alsoKnownAs": { - "type": "array", - "description": "Any other valid OCD IDs that refer to the same division.\n\nBecause OCD IDs are meant to be human-readable and at least somewhat predictable, there are occasionally several identifiers for a single division. These identifiers are defined to be equivalent to one another, and one is always indicated as the primary identifier. The primary identifier will be returned in ocd_id above, and any other equivalent valid identifiers will be returned in this list.\n\nFor example, if this division's OCD ID is ocd-division/country:us/district:dc, this will contain ocd-division/country:us/state:dc.", - "items": { - "type": "string" - } - }, - "name": { - "type": "string", - "description": "The name of the division." - }, - "officeIndices": { - "type": "array", - "description": "List of indices in the offices array, one for each office elected from this division. Will only be present if includeOffices was true (or absent) in the request.", - "items": { - "type": "integer", - "format": "uint32" - } - } - } - }, - "Office": { - "id": "Office", - "type": "object", - "description": "Information about an Office held by one or more Officials.", - "properties": { - "divisionId": { - "type": "string", - "description": "The OCD ID of the division with which this office is associated." - }, - "levels": { - "type": "array", - "description": "The levels of government of which this office is part. There may be more than one in cases where a jurisdiction effectively acts at two different levels of government; for example, the mayor of the District of Columbia acts at \"locality\" level, but also effectively at both \"administrative-area-2\" and \"administrative-area-1\".", - "items": { - "type": "string" - } - }, - "name": { - "type": "string", - "description": "The human-readable name of the office." - }, - "officialIndices": { - "type": "array", - "description": "List of indices in the officials array of people who presently hold this office.", - "items": { - "type": "integer", - "format": "uint32" - } - }, - "roles": { - "type": "array", - "description": "The roles which this office fulfills. Roles are not meant to be exhaustive, or to exactly specify the entire set of responsibilities of a given office, but are meant to be rough categories that are useful for general selection from or sorting of a list of offices.", - "items": { - "type": "string" - } - }, - "sources": { - "type": "array", - "description": "A list of sources for this office. If multiple sources are listed, the data has been aggregated from those sources.", - "items": { - "$ref": "Source" - } - } - } - }, - "Official": { - "id": "Official", - "type": "object", - "description": "Information about a person holding an elected office.", - "properties": { - "address": { - "type": "array", - "description": "Addresses at which to contact the official.", - "items": { - "$ref": "SimpleAddressType" - } - }, - "channels": { - "type": "array", - "description": "A list of known (social) media channels for this official.", - "items": { - "$ref": "Channel" - } - }, - "emails": { - "type": "array", - "description": "The direct email addresses for the official.", - "items": { - "type": "string" - } - }, - "name": { - "type": "string", - "description": "The official's name." - }, - "party": { - "type": "string", - "description": "The full name of the party the official belongs to." - }, - "phones": { - "type": "array", - "description": "The official's public contact phone numbers.", - "items": { - "type": "string" - } - }, - "photoUrl": { - "type": "string", - "description": "A URL for a photo of the official." - }, - "urls": { - "type": "array", - "description": "The official's public website URLs.", - "items": { - "type": "string" - } - } - } - }, - "PollingLocation": { - "id": "PollingLocation", - "type": "object", - "description": "A location where a voter can vote. This may be an early vote site, an election day voting location, or a drop off location for a completed ballot.", - "properties": { - "address": { - "$ref": "SimpleAddressType", - "description": "The address of the location." - }, - "endDate": { - "type": "string", - "description": "The last date that this early vote site or drop off location may be used. This field is not populated for polling locations." - }, - "id": { - "type": "string", - "description": "An ID for this object. IDs may change in future requests and should not be cached. Access to this field requires special access that can be requested from the Request more link on the Quotas page." - }, - "name": { - "type": "string", - "description": "The name of the early vote site or drop off location. This field is not populated for polling locations." - }, - "notes": { - "type": "string", - "description": "Notes about this location (e.g. accessibility ramp or entrance to use)." - }, - "pollingHours": { - "type": "string", - "description": "A description of when this location is open." - }, - "sources": { - "type": "array", - "description": "A list of sources for this location. If multiple sources are listed the data has been aggregated from those sources.", - "items": { - "$ref": "Source" - } - }, - "startDate": { - "type": "string", - "description": "The first date that this early vote site or drop off location may be used. This field is not populated for polling locations." - }, - "voterServices": { - "type": "string", - "description": "The services provided by this early vote site or drop off location. This field is not populated for polling locations." - } - } - }, - "PostalAddress": { - "id": "PostalAddress", - "type": "object", - "properties": { - "addressLines": { - "type": "array", - "items": { - "type": "string" - } - }, - "administrativeAreaName": { - "type": "string" - }, - "countryName": { - "type": "string" - }, - "countryNameCode": { - "type": "string" - }, - "dependentLocalityName": { - "type": "string" - }, - "dependentThoroughfareLeadingType": { - "type": "string" - }, - "dependentThoroughfareName": { - "type": "string" - }, - "dependentThoroughfarePostDirection": { - "type": "string" - }, - "dependentThoroughfarePreDirection": { - "type": "string" - }, - "dependentThoroughfareTrailingType": { - "type": "string" - }, - "dependentThoroughfaresConnector": { - "type": "string" - }, - "dependentThoroughfaresIndicator": { - "type": "string" - }, - "dependentThoroughfaresType": { - "type": "string" - }, - "firmName": { - "type": "string" - }, - "isDisputed": { - "type": "boolean" - }, - "languageCode": { - "type": "string" - }, - "localityName": { - "type": "string" - }, - "postBoxNumber": { - "type": "string" - }, - "postalCodeNumber": { - "type": "string" - }, - "postalCodeNumberExtension": { - "type": "string" - }, - "premiseName": { - "type": "string" - }, - "recipientName": { - "type": "string" - }, - "sortingCode": { - "type": "string" - }, - "subAdministrativeAreaName": { - "type": "string" - }, - "subPremiseName": { - "type": "string" - }, - "thoroughfareLeadingType": { - "type": "string" - }, - "thoroughfareName": { - "type": "string" - }, - "thoroughfareNumber": { - "type": "string" - }, - "thoroughfarePostDirection": { - "type": "string" - }, - "thoroughfarePreDirection": { - "type": "string" - }, - "thoroughfareTrailingType": { - "type": "string" - } - } - }, - "RepresentativeInfoData": { - "id": "RepresentativeInfoData", - "type": "object", - "properties": { - "divisions": { - "type": "object", - "description": "Political geographic divisions that contain the requested address.", - "additionalProperties": { - "$ref": "GeographicDivision", - "description": "The unique Open Civic Data identifier for this division." - } - }, - "offices": { - "type": "array", - "description": "Elected offices referenced by the divisions listed above. Will only be present if includeOffices was true in the request.", - "items": { - "$ref": "Office" - } - }, - "officials": { - "type": "array", - "description": "Officials holding the offices listed above. Will only be present if includeOffices was true in the request.", - "items": { - "$ref": "Official" - } - } - } - }, - "RepresentativeInfoRequest": { - "id": "RepresentativeInfoRequest", - "type": "object", - "description": "A request for political geography and representative information for an address.", - "properties": { - "contextParams": { - "$ref": "ContextParams" - } - } - }, - "RepresentativeInfoResponse": { - "id": "RepresentativeInfoResponse", - "type": "object", - "description": "The result of a representative info lookup query.", - "properties": { - "divisions": { - "type": "object", - "description": "Political geographic divisions that contain the requested address.", - "additionalProperties": { - "$ref": "GeographicDivision", - "description": "The unique Open Civic Data identifier for this division." - } - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"civicinfo#representativeInfoResponse\".", - "default": "civicinfo#representativeInfoResponse" - }, - "normalizedInput": { - "$ref": "SimpleAddressType", - "description": "The normalized version of the requested address" - }, - "offices": { - "type": "array", - "description": "Elected offices referenced by the divisions listed above. Will only be present if includeOffices was true in the request.", - "items": { - "$ref": "Office" - } - }, - "officials": { - "type": "array", - "description": "Officials holding the offices listed above. Will only be present if includeOffices was true in the request.", - "items": { - "$ref": "Official" - } - } - } - }, - "SimpleAddressType": { - "id": "SimpleAddressType", - "type": "object", - "description": "A simple representation of an address.", - "properties": { - "city": { - "type": "string", - "description": "The city or town for the address." - }, - "line1": { - "type": "string", - "description": "The street name and number of this address." - }, - "line2": { - "type": "string", - "description": "The second line the address, if needed." - }, - "line3": { - "type": "string", - "description": "The third line of the address, if needed." - }, - "locationName": { - "type": "string", - "description": "The name of the location." - }, - "state": { - "type": "string", - "description": "The US two letter state abbreviation of the address." - }, - "zip": { - "type": "string", - "description": "The US Postal Zip Code of the address." - } - } - }, - "Source": { - "id": "Source", - "type": "object", - "description": "Contains information about the data source for the element containing it.", - "properties": { - "name": { - "type": "string", - "description": "The name of the data source." - }, - "official": { - "type": "boolean", - "description": "Whether this data comes from an official government source." - } - } - }, - "VoterInfoRequest": { - "id": "VoterInfoRequest", - "type": "object", - "description": "A request for information about a voter.", - "properties": { - "contextParams": { - "$ref": "ContextParams" - }, - "voterInfoSegmentResult": { - "$ref": "VoterInfoSegmentResult" - } - } - }, - "VoterInfoResponse": { - "id": "VoterInfoResponse", - "type": "object", - "description": "The result of a voter info lookup query.", - "properties": { - "contests": { - "type": "array", - "description": "Contests that will appear on the voter's ballot.", - "items": { - "$ref": "Contest" - } - }, - "dropOffLocations": { - "type": "array", - "description": "Locations where a voter is eligible to drop off a completed ballot. The voter must have received and completed a ballot prior to arriving at the location. The location may not have ballots available on the premises. These locations could be open on or before election day as indicated in the pollingHours field.", - "items": { - "$ref": "PollingLocation" - } - }, - "earlyVoteSites": { - "type": "array", - "description": "Locations where the voter is eligible to vote early, prior to election day.", - "items": { - "$ref": "PollingLocation" - } - }, - "election": { - "$ref": "Election", - "description": "The election that was queried." - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"civicinfo#voterInfoResponse\".", - "default": "civicinfo#voterInfoResponse" - }, - "mailOnly": { - "type": "boolean", - "description": "Specifies whether voters in the precinct vote only by mailing their ballots (with the possible option of dropping off their ballots as well)." - }, - "normalizedInput": { - "$ref": "SimpleAddressType", - "description": "The normalized version of the requested address" - }, - "otherElections": { - "type": "array", - "description": "If no election ID was specified in the query, and there was more than one election with data for the given voter, this will contain information about the other elections that could apply.", - "items": { - "$ref": "Election" - } - }, - "pollingLocations": { - "type": "array", - "description": "Locations where the voter is eligible to vote on election day.", - "items": { - "$ref": "PollingLocation" - } - }, - "precinctId": { - "type": "string" - }, - "state": { - "type": "array", - "description": "Local Election Information for the state that the voter votes in. For the US, there will only be one element in this array.", - "items": { - "$ref": "AdministrationRegion" - } - } - } - }, - "VoterInfoSegmentResult": { - "id": "VoterInfoSegmentResult", - "type": "object", - "properties": { - "generatedMillis": { - "type": "string", - "format": "int64" - }, - "postalAddress": { - "$ref": "PostalAddress" - }, - "request": { - "$ref": "VoterInfoRequest" - }, - "response": { - "$ref": "VoterInfoResponse" - } - } - } - }, - "resources": { - "divisions": { - "methods": { - "search": { - "id": "civicinfo.divisions.search", - "path": "divisions", - "httpMethod": "GET", - "description": "Searches for political divisions by their natural name or OCD ID.", - "parameters": { - "query": { - "type": "string", - "description": "The search query. Queries can cover any parts of a OCD ID or a human readable division name. All words given in the query are treated as required patterns. In addition to that, most query operators of the Apache Lucene library are supported. See http://lucene.apache.org/core/2_9_4/queryparsersyntax.html", - "location": "query" + "methods": { + "electionQuery": { + "description": "List of available elections to query.", + "httpMethod": "GET", + "id": "civicinfo.elections.electionQuery", + "path": "elections", + "request": { + "$ref": "ElectionsQueryRequest" + }, + "response": { + "$ref": "ElectionsQueryResponse" + } + }, + "voterInfoQuery": { + "description": "Looks up information relevant to a voter based on the voter's registered address.", + "httpMethod": "GET", + "id": "civicinfo.elections.voterInfoQuery", + "parameterOrder": [ + "address" + ], + "parameters": { + "address": { + "description": "The registered address of the voter to look up.", + "location": "query", + "required": true, + "type": "string" + }, + "electionId": { + "default": "0", + "description": "The unique ID of the election to look up. A list of election IDs can be obtained at https://www.googleapis.com/civicinfo/{version}/elections", + "format": "int64", + "location": "query", + "type": "string" + }, + "officialOnly": { + "default": "false", + "description": "If set to true, only data from official state sources will be returned.", + "location": "query", + "type": "boolean" + }, + "returnAllAvailableData": { + "default": "false", + "description": "If set to true, the query will return the success codeand include any partial information when it is unable to determine a matching address or unable to determine the election for electionId=0 queries.", + "location": "query", + "type": "boolean" + } + }, + "path": "voterinfo", + "request": { + "$ref": "VoterInfoRequest" + }, + "response": { + "$ref": "VoterInfoResponse" + } + } } - }, - "request": { - "$ref": "DivisionSearchRequest" - }, - "response": { - "$ref": "DivisionSearchResponse" - } - } - } - }, - "elections": { - "methods": { - "electionQuery": { - "id": "civicinfo.elections.electionQuery", - "path": "elections", - "httpMethod": "GET", - "description": "List of available elections to query.", - "request": { - "$ref": "ElectionsQueryRequest" - }, - "response": { - "$ref": "ElectionsQueryResponse" - } }, - "voterInfoQuery": { - "id": "civicinfo.elections.voterInfoQuery", - "path": "voterinfo", - "httpMethod": "GET", - "description": "Looks up information relevant to a voter based on the voter's registered address.", - "parameters": { - "address": { - "type": "string", - "description": "The registered address of the voter to look up.", - "required": true, - "location": "query" - }, - "electionId": { - "type": "string", - "description": "The unique ID of the election to look up. A list of election IDs can be obtained at https://www.googleapis.com/civicinfo/{version}/elections", - "default": "0", - "format": "int64", - "location": "query" - }, - "officialOnly": { - "type": "boolean", - "description": "If set to true, only data from official state sources will be returned.", - "default": "false", - "location": "query" - }, - "returnAllAvailableData": { - "type": "boolean", - "description": "If set to true, the query will return the success codeand include any partial information when it is unable to determine a matching address or unable to determine the election for electionId=0 queries.", - "default": "false", - "location": "query" + "representatives": { + "methods": { + "representativeInfoByAddress": { + "description": "Looks up political geography and representative information for a single address.", + "httpMethod": "GET", + "id": "civicinfo.representatives.representativeInfoByAddress", + "parameters": { + "address": { + "description": "The address to look up. May only be specified if the field ocdId is not given in the URL.", + "location": "query", + "type": "string" + }, + "includeOffices": { + "default": "true", + "description": "Whether to return information about offices and officials. If false, only the top-level district information will be returned.", + "location": "query", + "type": "boolean" + }, + "levels": { + "description": "A list of office levels to filter by. Only offices that serve at least one of these levels will be returned. Divisions that don't contain a matching office will not be returned.", + "enum": [ + "administrativeArea1", + "administrativeArea2", + "country", + "international", + "locality", + "regional", + "special", + "subLocality1", + "subLocality2" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "location": "query", + "repeated": true, + "type": "string" + }, + "roles": { + "description": "A list of office roles to filter by. Only offices fulfilling one of these roles will be returned. Divisions that don't contain a matching office will not be returned.", + "enum": [ + "deputyHeadOfGovernment", + "executiveCouncil", + "governmentOfficer", + "headOfGovernment", + "headOfState", + "highestCourtJudge", + "judge", + "legislatorLowerBody", + "legislatorUpperBody", + "schoolBoard", + "specialPurposeOfficer" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "location": "query", + "repeated": true, + "type": "string" + } + }, + "path": "representatives", + "request": { + "$ref": "RepresentativeInfoRequest" + }, + "response": { + "$ref": "RepresentativeInfoResponse" + } + }, + "representativeInfoByDivision": { + "description": "Looks up representative information for a single geographic division.", + "httpMethod": "GET", + "id": "civicinfo.representatives.representativeInfoByDivision", + "parameterOrder": [ + "ocdId" + ], + "parameters": { + "levels": { + "description": "A list of office levels to filter by. Only offices that serve at least one of these levels will be returned. Divisions that don't contain a matching office will not be returned.", + "enum": [ + "administrativeArea1", + "administrativeArea2", + "country", + "international", + "locality", + "regional", + "special", + "subLocality1", + "subLocality2" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "location": "query", + "repeated": true, + "type": "string" + }, + "ocdId": { + "description": "The Open Civic Data division identifier of the division to look up.", + "location": "path", + "required": true, + "type": "string" + }, + "recursive": { + "description": "If true, information about all divisions contained in the division requested will be included as well. For example, if querying ocd-division/country:us/district:dc, this would also return all DC's wards and ANCs.", + "location": "query", + "type": "boolean" + }, + "roles": { + "description": "A list of office roles to filter by. Only offices fulfilling one of these roles will be returned. Divisions that don't contain a matching office will not be returned.", + "enum": [ + "deputyHeadOfGovernment", + "executiveCouncil", + "governmentOfficer", + "headOfGovernment", + "headOfState", + "highestCourtJudge", + "judge", + "legislatorLowerBody", + "legislatorUpperBody", + "schoolBoard", + "specialPurposeOfficer" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "location": "query", + "repeated": true, + "type": "string" + } + }, + "path": "representatives/{ocdId}", + "request": { + "$ref": "DivisionRepresentativeInfoRequest" + }, + "response": { + "$ref": "RepresentativeInfoData" + } + } } - }, - "parameterOrder": [ - "address" - ], - "request": { - "$ref": "VoterInfoRequest" - }, - "response": { - "$ref": "VoterInfoResponse" - } } - } }, - "representatives": { - "methods": { - "representativeInfoByAddress": { - "id": "civicinfo.representatives.representativeInfoByAddress", - "path": "representatives", - "httpMethod": "GET", - "description": "Looks up political geography and representative information for a single address.", - "parameters": { - "address": { - "type": "string", - "description": "The address to look up. May only be specified if the field ocdId is not given in the URL.", - "location": "query" + "revision": "20161102", + "rootUrl": "https://www.googleapis.com/", + "schemas": { + "AdministrationRegion": { + "description": "Describes information about a regional election administrative area.", + "id": "AdministrationRegion", + "properties": { + "electionAdministrationBody": { + "$ref": "AdministrativeBody", + "description": "The election administration body for this area." + }, + "id": { + "description": "An ID for this object. IDs may change in future requests and should not be cached. Access to this field requires special access that can be requested from the Request more link on the Quotas page.", + "type": "string" + }, + "local_jurisdiction": { + "$ref": "AdministrationRegion", + "description": "The city or county that provides election information for this voter. This object can have the same elements as state." + }, + "name": { + "description": "The name of the jurisdiction.", + "type": "string" + }, + "sources": { + "description": "A list of sources for this area. If multiple sources are listed the data has been aggregated from those sources.", + "items": { + "$ref": "Source" + }, + "type": "array" + } }, - "includeOffices": { - "type": "boolean", - "description": "Whether to return information about offices and officials. If false, only the top-level district information will be returned.", - "default": "true", - "location": "query" - }, - "levels": { - "type": "string", - "description": "A list of office levels to filter by. Only offices that serve at least one of these levels will be returned. Divisions that don't contain a matching office will not be returned.", - "enum": [ - "administrativeArea1", - "administrativeArea2", - "country", - "international", - "locality", - "regional", - "special", - "subLocality1", - "subLocality2" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "" - ], - "repeated": true, - "location": "query" - }, - "roles": { - "type": "string", - "description": "A list of office roles to filter by. Only offices fulfilling one of these roles will be returned. Divisions that don't contain a matching office will not be returned.", - "enum": [ - "deputyHeadOfGovernment", - "executiveCouncil", - "governmentOfficer", - "headOfGovernment", - "headOfState", - "highestCourtJudge", - "judge", - "legislatorLowerBody", - "legislatorUpperBody", - "schoolBoard", - "specialPurposeOfficer" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ], - "repeated": true, - "location": "query" - } - }, - "request": { - "$ref": "RepresentativeInfoRequest" - }, - "response": { - "$ref": "RepresentativeInfoResponse" - } + "type": "object" }, - "representativeInfoByDivision": { - "id": "civicinfo.representatives.representativeInfoByDivision", - "path": "representatives/{ocdId}", - "httpMethod": "GET", - "description": "Looks up representative information for a single geographic division.", - "parameters": { - "levels": { - "type": "string", - "description": "A list of office levels to filter by. Only offices that serve at least one of these levels will be returned. Divisions that don't contain a matching office will not be returned.", - "enum": [ - "administrativeArea1", - "administrativeArea2", - "country", - "international", - "locality", - "regional", - "special", - "subLocality1", - "subLocality2" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "" - ], - "repeated": true, - "location": "query" + "AdministrativeBody": { + "description": "Information about an election administrative body (e.g. County Board of Elections).", + "id": "AdministrativeBody", + "properties": { + "absenteeVotingInfoUrl": { + "description": "A URL provided by this administrative body for information on absentee voting.", + "type": "string" + }, + "addressLines": { + "items": { + "type": "string" + }, + "type": "array" + }, + "ballotInfoUrl": { + "description": "A URL provided by this administrative body to give contest information to the voter.", + "type": "string" + }, + "correspondenceAddress": { + "$ref": "SimpleAddressType", + "description": "The mailing address of this administrative body." + }, + "electionInfoUrl": { + "description": "A URL provided by this administrative body for looking up general election information.", + "type": "string" + }, + "electionOfficials": { + "description": "The election officials for this election administrative body.", + "items": { + "$ref": "ElectionOfficial" + }, + "type": "array" + }, + "electionRegistrationConfirmationUrl": { + "description": "A URL provided by this administrative body for confirming that the voter is registered to vote.", + "type": "string" + }, + "electionRegistrationUrl": { + "description": "A URL provided by this administrative body for looking up how to register to vote.", + "type": "string" + }, + "electionRulesUrl": { + "description": "A URL provided by this administrative body describing election rules to the voter.", + "type": "string" + }, + "hoursOfOperation": { + "description": "A description of the hours of operation for this administrative body.", + "type": "string" + }, + "name": { + "description": "The name of this election administrative body.", + "type": "string" + }, + "physicalAddress": { + "$ref": "SimpleAddressType", + "description": "The physical address of this administrative body." + }, + "voter_services": { + "description": "A description of the services this administrative body may provide.", + "items": { + "type": "string" + }, + "type": "array" + }, + "votingLocationFinderUrl": { + "description": "A URL provided by this administrative body for looking up where to vote.", + "type": "string" + } }, - "ocdId": { - "type": "string", - "description": "The Open Civic Data division identifier of the division to look up.", - "required": true, - "location": "path" + "type": "object" + }, + "Candidate": { + "description": "Information about a candidate running for elected office.", + "id": "Candidate", + "properties": { + "candidateUrl": { + "description": "The URL for the candidate's campaign web site.", + "type": "string" + }, + "channels": { + "description": "A list of known (social) media channels for this candidate.", + "items": { + "$ref": "Channel" + }, + "type": "array" + }, + "email": { + "description": "The email address for the candidate's campaign.", + "type": "string" + }, + "name": { + "description": "The candidate's name. If this is a joint ticket it will indicate the name of the candidate at the top of a ticket followed by a / and that name of candidate at the bottom of the ticket. e.g. \"Mitt Romney / Paul Ryan\"", + "type": "string" + }, + "orderOnBallot": { + "description": "The order the candidate appears on the ballot for this contest.", + "format": "int64", + "type": "string" + }, + "party": { + "description": "The full name of the party the candidate is a member of.", + "type": "string" + }, + "phone": { + "description": "The voice phone number for the candidate's campaign office.", + "type": "string" + }, + "photoUrl": { + "description": "A URL for a photo of the candidate.", + "type": "string" + } }, - "recursive": { - "type": "boolean", - "description": "If true, information about all divisions contained in the division requested will be included as well. For example, if querying ocd-division/country:us/district:dc, this would also return all DC's wards and ANCs.", - "location": "query" + "type": "object" + }, + "Channel": { + "description": "A social media or web channel for a candidate.", + "id": "Channel", + "properties": { + "id": { + "description": "The unique public identifier for the candidate's channel.", + "type": "string" + }, + "type": { + "description": "The type of channel. The following is a list of types of channels, but is not exhaustive. More channel types may be added at a later time. One of: GooglePlus, YouTube, Facebook, Twitter", + "type": "string" + } }, - "roles": { - "type": "string", - "description": "A list of office roles to filter by. Only offices fulfilling one of these roles will be returned. Divisions that don't contain a matching office will not be returned.", - "enum": [ - "deputyHeadOfGovernment", - "executiveCouncil", - "governmentOfficer", - "headOfGovernment", - "headOfState", - "highestCourtJudge", - "judge", - "legislatorLowerBody", - "legislatorUpperBody", - "schoolBoard", - "specialPurposeOfficer" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ], - "repeated": true, - "location": "query" - } - }, - "parameterOrder": [ - "ocdId" - ], - "request": { - "$ref": "DivisionRepresentativeInfoRequest" - }, - "response": { - "$ref": "RepresentativeInfoData" - } + "type": "object" + }, + "Contest": { + "description": "Information about a contest that appears on a voter's ballot.", + "id": "Contest", + "properties": { + "ballotPlacement": { + "description": "A number specifying the position of this contest on the voter's ballot.", + "format": "int64", + "type": "string" + }, + "candidates": { + "description": "The candidate choices for this contest.", + "items": { + "$ref": "Candidate" + }, + "type": "array" + }, + "district": { + "$ref": "ElectoralDistrict", + "description": "Information about the electoral district that this contest is in." + }, + "electorateSpecifications": { + "description": "A description of any additional eligibility requirements for voting in this contest.", + "type": "string" + }, + "id": { + "description": "An ID for this object. IDs may change in future requests and should not be cached. Access to this field requires special access that can be requested from the Request more link on the Quotas page.", + "type": "string" + }, + "level": { + "description": "The levels of government of the office for this contest. There may be more than one in cases where a jurisdiction effectively acts at two different levels of government; for example, the mayor of the District of Columbia acts at \"locality\" level, but also effectively at both \"administrative-area-2\" and \"administrative-area-1\".", + "items": { + "type": "string" + }, + "type": "array" + }, + "numberElected": { + "description": "The number of candidates that will be elected to office in this contest.", + "format": "int64", + "type": "string" + }, + "numberVotingFor": { + "description": "The number of candidates that a voter may vote for in this contest.", + "format": "int64", + "type": "string" + }, + "office": { + "description": "The name of the office for this contest.", + "type": "string" + }, + "primaryParty": { + "description": "If this is a partisan election, the name of the party it is for.", + "type": "string" + }, + "referendumBallotResponses": { + "description": "The set of ballot responses for the referendum. A ballot response represents a line on the ballot. Common examples might include \"yes\" or \"no\" for referenda. This field is only populated for contests of type 'Referendum'.", + "items": { + "type": "string" + }, + "type": "array" + }, + "referendumBrief": { + "description": "Specifies a short summary of the referendum that is typically on the ballot below the title but above the text. This field is only populated for contests of type 'Referendum'.", + "type": "string" + }, + "referendumConStatement": { + "description": "A statement in opposition to the referendum. It does not necessarily appear on the ballot. This field is only populated for contests of type 'Referendum'.", + "type": "string" + }, + "referendumEffectOfAbstain": { + "description": "Specifies what effect abstaining (not voting) on the proposition will have (i.e. whether abstaining is considered a vote against it). This field is only populated for contests of type 'Referendum'.", + "type": "string" + }, + "referendumPassageThreshold": { + "description": "The threshold of votes that the referendum needs in order to pass, e.g. \"two-thirds\". This field is only populated for contests of type 'Referendum'.", + "type": "string" + }, + "referendumProStatement": { + "description": "A statement in favor of the referendum. It does not necessarily appear on the ballot. This field is only populated for contests of type 'Referendum'.", + "type": "string" + }, + "referendumSubtitle": { + "description": "A brief description of the referendum. This field is only populated for contests of type 'Referendum'.", + "type": "string" + }, + "referendumText": { + "description": "The full text of the referendum. This field is only populated for contests of type 'Referendum'.", + "type": "string" + }, + "referendumTitle": { + "description": "The title of the referendum (e.g. 'Proposition 42'). This field is only populated for contests of type 'Referendum'.", + "type": "string" + }, + "referendumUrl": { + "description": "A link to the referendum. This field is only populated for contests of type 'Referendum'.", + "type": "string" + }, + "roles": { + "description": "The roles which this office fulfills.", + "items": { + "type": "string" + }, + "type": "array" + }, + "sources": { + "description": "A list of sources for this contest. If multiple sources are listed, the data has been aggregated from those sources.", + "items": { + "$ref": "Source" + }, + "type": "array" + }, + "special": { + "description": "\"Yes\" or \"No\" depending on whether this a contest being held outside the normal election cycle.", + "type": "string" + }, + "type": { + "description": "The type of contest. Usually this will be 'General', 'Primary', or 'Run-off' for contests with candidates. For referenda this will be 'Referendum'. For Retention contests this will typically be 'Retention'.", + "type": "string" + } + }, + "type": "object" + }, + "ContextParams": { + "id": "ContextParams", + "properties": { + "clientProfile": { + "type": "string" + } + }, + "type": "object" + }, + "DivisionRepresentativeInfoRequest": { + "description": "A request to look up representative information for a single division.", + "id": "DivisionRepresentativeInfoRequest", + "properties": { + "contextParams": { + "$ref": "ContextParams" + } + }, + "type": "object" + }, + "DivisionSearchRequest": { + "description": "A search request for political geographies.", + "id": "DivisionSearchRequest", + "properties": { + "contextParams": { + "$ref": "ContextParams" + } + }, + "type": "object" + }, + "DivisionSearchResponse": { + "description": "The result of a division search query.", + "id": "DivisionSearchResponse", + "properties": { + "kind": { + "default": "civicinfo#divisionSearchResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"civicinfo#divisionSearchResponse\".", + "type": "string" + }, + "results": { + "items": { + "$ref": "DivisionSearchResult" + }, + "type": "array" + } + }, + "type": "object" + }, + "DivisionSearchResult": { + "description": "Represents a political geographic division that matches the requested query.", + "id": "DivisionSearchResult", + "properties": { + "aliases": { + "description": "Other Open Civic Data identifiers that refer to the same division -- for example, those that refer to other political divisions whose boundaries are defined to be coterminous with this one. For example, ocd-division/country:us/state:wy will include an alias of ocd-division/country:us/state:wy/cd:1, since Wyoming has only one Congressional district.", + "items": { + "type": "string" + }, + "type": "array" + }, + "name": { + "description": "The name of the division.", + "type": "string" + }, + "ocdId": { + "description": "The unique Open Civic Data identifier for this division.", + "type": "string" + } + }, + "type": "object" + }, + "Election": { + "description": "Information about the election that was queried.", + "id": "Election", + "properties": { + "electionDay": { + "description": "Day of the election in YYYY-MM-DD format.", + "type": "string" + }, + "id": { + "description": "The unique ID of this election.", + "format": "int64", + "type": "string" + }, + "name": { + "description": "A displayable name for the election.", + "type": "string" + }, + "ocdDivisionId": { + "description": "The political division of the election. Represented as an OCD Division ID. Voters within these political jurisdictions are covered by this election. This is typically a state such as ocd-division/country:us/state:ca or for the midterms or general election the entire US (i.e. ocd-division/country:us).", + "type": "string" + } + }, + "type": "object" + }, + "ElectionOfficial": { + "description": "Information about individual election officials.", + "id": "ElectionOfficial", + "properties": { + "emailAddress": { + "description": "The email address of the election official.", + "type": "string" + }, + "faxNumber": { + "description": "The fax number of the election official.", + "type": "string" + }, + "name": { + "description": "The full name of the election official.", + "type": "string" + }, + "officePhoneNumber": { + "description": "The office phone number of the election official.", + "type": "string" + }, + "title": { + "description": "The title of the election official.", + "type": "string" + } + }, + "type": "object" + }, + "ElectionsQueryRequest": { + "id": "ElectionsQueryRequest", + "properties": { + "contextParams": { + "$ref": "ContextParams" + } + }, + "type": "object" + }, + "ElectionsQueryResponse": { + "description": "The list of elections available for this version of the API.", + "id": "ElectionsQueryResponse", + "properties": { + "elections": { + "description": "A list of available elections", + "items": { + "$ref": "Election" + }, + "type": "array" + }, + "kind": { + "default": "civicinfo#electionsQueryResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"civicinfo#electionsQueryResponse\".", + "type": "string" + } + }, + "type": "object" + }, + "ElectoralDistrict": { + "description": "Describes the geographic scope of a contest.", + "id": "ElectoralDistrict", + "properties": { + "id": { + "description": "An identifier for this district, relative to its scope. For example, the 34th State Senate district would have id \"34\" and a scope of stateUpper.", + "type": "string" + }, + "kgForeignKey": { + "type": "string" + }, + "name": { + "description": "The name of the district.", + "type": "string" + }, + "scope": { + "description": "The geographic scope of this district. If unspecified the district's geography is not known. One of: national, statewide, congressional, stateUpper, stateLower, countywide, judicial, schoolBoard, cityWide, township, countyCouncil, cityCouncil, ward, special", + "type": "string" + } + }, + "type": "object" + }, + "GeographicDivision": { + "description": "Describes a political geography.", + "id": "GeographicDivision", + "properties": { + "alsoKnownAs": { + "description": "Any other valid OCD IDs that refer to the same division.\n\nBecause OCD IDs are meant to be human-readable and at least somewhat predictable, there are occasionally several identifiers for a single division. These identifiers are defined to be equivalent to one another, and one is always indicated as the primary identifier. The primary identifier will be returned in ocd_id above, and any other equivalent valid identifiers will be returned in this list.\n\nFor example, if this division's OCD ID is ocd-division/country:us/district:dc, this will contain ocd-division/country:us/state:dc.", + "items": { + "type": "string" + }, + "type": "array" + }, + "name": { + "description": "The name of the division.", + "type": "string" + }, + "officeIndices": { + "description": "List of indices in the offices array, one for each office elected from this division. Will only be present if includeOffices was true (or absent) in the request.", + "items": { + "format": "uint32", + "type": "integer" + }, + "type": "array" + } + }, + "type": "object" + }, + "Office": { + "description": "Information about an Office held by one or more Officials.", + "id": "Office", + "properties": { + "divisionId": { + "description": "The OCD ID of the division with which this office is associated.", + "type": "string" + }, + "levels": { + "description": "The levels of government of which this office is part. There may be more than one in cases where a jurisdiction effectively acts at two different levels of government; for example, the mayor of the District of Columbia acts at \"locality\" level, but also effectively at both \"administrative-area-2\" and \"administrative-area-1\".", + "items": { + "type": "string" + }, + "type": "array" + }, + "name": { + "description": "The human-readable name of the office.", + "type": "string" + }, + "officialIndices": { + "description": "List of indices in the officials array of people who presently hold this office.", + "items": { + "format": "uint32", + "type": "integer" + }, + "type": "array" + }, + "roles": { + "description": "The roles which this office fulfills. Roles are not meant to be exhaustive, or to exactly specify the entire set of responsibilities of a given office, but are meant to be rough categories that are useful for general selection from or sorting of a list of offices.", + "items": { + "type": "string" + }, + "type": "array" + }, + "sources": { + "description": "A list of sources for this office. If multiple sources are listed, the data has been aggregated from those sources.", + "items": { + "$ref": "Source" + }, + "type": "array" + } + }, + "type": "object" + }, + "Official": { + "description": "Information about a person holding an elected office.", + "id": "Official", + "properties": { + "address": { + "description": "Addresses at which to contact the official.", + "items": { + "$ref": "SimpleAddressType" + }, + "type": "array" + }, + "channels": { + "description": "A list of known (social) media channels for this official.", + "items": { + "$ref": "Channel" + }, + "type": "array" + }, + "emails": { + "description": "The direct email addresses for the official.", + "items": { + "type": "string" + }, + "type": "array" + }, + "name": { + "description": "The official's name.", + "type": "string" + }, + "party": { + "description": "The full name of the party the official belongs to.", + "type": "string" + }, + "phones": { + "description": "The official's public contact phone numbers.", + "items": { + "type": "string" + }, + "type": "array" + }, + "photoUrl": { + "description": "A URL for a photo of the official.", + "type": "string" + }, + "urls": { + "description": "The official's public website URLs.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "PollingLocation": { + "description": "A location where a voter can vote. This may be an early vote site, an election day voting location, or a drop off location for a completed ballot.", + "id": "PollingLocation", + "properties": { + "address": { + "$ref": "SimpleAddressType", + "description": "The address of the location." + }, + "endDate": { + "description": "The last date that this early vote site or drop off location may be used. This field is not populated for polling locations.", + "type": "string" + }, + "id": { + "description": "An ID for this object. IDs may change in future requests and should not be cached. Access to this field requires special access that can be requested from the Request more link on the Quotas page.", + "type": "string" + }, + "name": { + "description": "The name of the early vote site or drop off location. This field is not populated for polling locations.", + "type": "string" + }, + "notes": { + "description": "Notes about this location (e.g. accessibility ramp or entrance to use).", + "type": "string" + }, + "pollingHours": { + "description": "A description of when this location is open.", + "type": "string" + }, + "sources": { + "description": "A list of sources for this location. If multiple sources are listed the data has been aggregated from those sources.", + "items": { + "$ref": "Source" + }, + "type": "array" + }, + "startDate": { + "description": "The first date that this early vote site or drop off location may be used. This field is not populated for polling locations.", + "type": "string" + }, + "voterServices": { + "description": "The services provided by this early vote site or drop off location. This field is not populated for polling locations.", + "type": "string" + } + }, + "type": "object" + }, + "PostalAddress": { + "id": "PostalAddress", + "properties": { + "addressLines": { + "items": { + "type": "string" + }, + "type": "array" + }, + "administrativeAreaName": { + "type": "string" + }, + "countryName": { + "type": "string" + }, + "countryNameCode": { + "type": "string" + }, + "dependentLocalityName": { + "type": "string" + }, + "dependentThoroughfareLeadingType": { + "type": "string" + }, + "dependentThoroughfareName": { + "type": "string" + }, + "dependentThoroughfarePostDirection": { + "type": "string" + }, + "dependentThoroughfarePreDirection": { + "type": "string" + }, + "dependentThoroughfareTrailingType": { + "type": "string" + }, + "dependentThoroughfaresConnector": { + "type": "string" + }, + "dependentThoroughfaresIndicator": { + "type": "string" + }, + "dependentThoroughfaresType": { + "type": "string" + }, + "firmName": { + "type": "string" + }, + "isDisputed": { + "type": "boolean" + }, + "languageCode": { + "type": "string" + }, + "localityName": { + "type": "string" + }, + "postBoxNumber": { + "type": "string" + }, + "postalCodeNumber": { + "type": "string" + }, + "postalCodeNumberExtension": { + "type": "string" + }, + "premiseName": { + "type": "string" + }, + "recipientName": { + "type": "string" + }, + "sortingCode": { + "type": "string" + }, + "subAdministrativeAreaName": { + "type": "string" + }, + "subPremiseName": { + "type": "string" + }, + "thoroughfareLeadingType": { + "type": "string" + }, + "thoroughfareName": { + "type": "string" + }, + "thoroughfareNumber": { + "type": "string" + }, + "thoroughfarePostDirection": { + "type": "string" + }, + "thoroughfarePreDirection": { + "type": "string" + }, + "thoroughfareTrailingType": { + "type": "string" + } + }, + "type": "object" + }, + "RepresentativeInfoData": { + "id": "RepresentativeInfoData", + "properties": { + "divisions": { + "additionalProperties": { + "$ref": "GeographicDivision", + "description": "The unique Open Civic Data identifier for this division." + }, + "description": "Political geographic divisions that contain the requested address.", + "type": "object" + }, + "offices": { + "description": "Elected offices referenced by the divisions listed above. Will only be present if includeOffices was true in the request.", + "items": { + "$ref": "Office" + }, + "type": "array" + }, + "officials": { + "description": "Officials holding the offices listed above. Will only be present if includeOffices was true in the request.", + "items": { + "$ref": "Official" + }, + "type": "array" + } + }, + "type": "object" + }, + "RepresentativeInfoRequest": { + "description": "A request for political geography and representative information for an address.", + "id": "RepresentativeInfoRequest", + "properties": { + "contextParams": { + "$ref": "ContextParams" + } + }, + "type": "object" + }, + "RepresentativeInfoResponse": { + "description": "The result of a representative info lookup query.", + "id": "RepresentativeInfoResponse", + "properties": { + "divisions": { + "additionalProperties": { + "$ref": "GeographicDivision", + "description": "The unique Open Civic Data identifier for this division." + }, + "description": "Political geographic divisions that contain the requested address.", + "type": "object" + }, + "kind": { + "default": "civicinfo#representativeInfoResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"civicinfo#representativeInfoResponse\".", + "type": "string" + }, + "normalizedInput": { + "$ref": "SimpleAddressType", + "description": "The normalized version of the requested address" + }, + "offices": { + "description": "Elected offices referenced by the divisions listed above. Will only be present if includeOffices was true in the request.", + "items": { + "$ref": "Office" + }, + "type": "array" + }, + "officials": { + "description": "Officials holding the offices listed above. Will only be present if includeOffices was true in the request.", + "items": { + "$ref": "Official" + }, + "type": "array" + } + }, + "type": "object" + }, + "SimpleAddressType": { + "description": "A simple representation of an address.", + "id": "SimpleAddressType", + "properties": { + "city": { + "description": "The city or town for the address.", + "type": "string" + }, + "line1": { + "description": "The street name and number of this address.", + "type": "string" + }, + "line2": { + "description": "The second line the address, if needed.", + "type": "string" + }, + "line3": { + "description": "The third line of the address, if needed.", + "type": "string" + }, + "locationName": { + "description": "The name of the location.", + "type": "string" + }, + "state": { + "description": "The US two letter state abbreviation of the address.", + "type": "string" + }, + "zip": { + "description": "The US Postal Zip Code of the address.", + "type": "string" + } + }, + "type": "object" + }, + "Source": { + "description": "Contains information about the data source for the element containing it.", + "id": "Source", + "properties": { + "name": { + "description": "The name of the data source.", + "type": "string" + }, + "official": { + "description": "Whether this data comes from an official government source.", + "type": "boolean" + } + }, + "type": "object" + }, + "VoterInfoRequest": { + "description": "A request for information about a voter.", + "id": "VoterInfoRequest", + "properties": { + "contextParams": { + "$ref": "ContextParams" + }, + "voterInfoSegmentResult": { + "$ref": "VoterInfoSegmentResult" + } + }, + "type": "object" + }, + "VoterInfoResponse": { + "description": "The result of a voter info lookup query.", + "id": "VoterInfoResponse", + "properties": { + "contests": { + "description": "Contests that will appear on the voter's ballot.", + "items": { + "$ref": "Contest" + }, + "type": "array" + }, + "dropOffLocations": { + "description": "Locations where a voter is eligible to drop off a completed ballot. The voter must have received and completed a ballot prior to arriving at the location. The location may not have ballots available on the premises. These locations could be open on or before election day as indicated in the pollingHours field.", + "items": { + "$ref": "PollingLocation" + }, + "type": "array" + }, + "earlyVoteSites": { + "description": "Locations where the voter is eligible to vote early, prior to election day.", + "items": { + "$ref": "PollingLocation" + }, + "type": "array" + }, + "election": { + "$ref": "Election", + "description": "The election that was queried." + }, + "kind": { + "default": "civicinfo#voterInfoResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"civicinfo#voterInfoResponse\".", + "type": "string" + }, + "mailOnly": { + "description": "Specifies whether voters in the precinct vote only by mailing their ballots (with the possible option of dropping off their ballots as well).", + "type": "boolean" + }, + "normalizedInput": { + "$ref": "SimpleAddressType", + "description": "The normalized version of the requested address" + }, + "otherElections": { + "description": "If no election ID was specified in the query, and there was more than one election with data for the given voter, this will contain information about the other elections that could apply.", + "items": { + "$ref": "Election" + }, + "type": "array" + }, + "pollingLocations": { + "description": "Locations where the voter is eligible to vote on election day.", + "items": { + "$ref": "PollingLocation" + }, + "type": "array" + }, + "precinctId": { + "type": "string" + }, + "state": { + "description": "Local Election Information for the state that the voter votes in. For the US, there will only be one element in this array.", + "items": { + "$ref": "AdministrationRegion" + }, + "type": "array" + } + }, + "type": "object" + }, + "VoterInfoSegmentResult": { + "id": "VoterInfoSegmentResult", + "properties": { + "generatedMillis": { + "format": "int64", + "type": "string" + }, + "postalAddress": { + "$ref": "PostalAddress" + }, + "request": { + "$ref": "VoterInfoRequest" + }, + "response": { + "$ref": "VoterInfoResponse" + } + }, + "type": "object" } - } - } - } -} + }, + "servicePath": "civicinfo/v2/", + "title": "Google Civic Information API", + "version": "v2" +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/classroom/v1/classroom-api.json b/vendor/google.golang.org/api/classroom/v1/classroom-api.json index 48960fec3..500737315 100644 --- a/vendor/google.golang.org/api/classroom/v1/classroom-api.json +++ b/vendor/google.golang.org/api/classroom/v1/classroom-api.json @@ -1,165 +1,247 @@ { - "ownerDomain": "google.com", - "name": "classroom", - "batchPath": "batch", - "id": "classroom:v1", - "documentationLink": "https://developers.google.com/classroom/", - "revision": "20180114", - "title": "Google Classroom API", - "discoveryVersion": "v1", - "ownerName": "Google", - "resources": { - "invitations": { - "methods": { - "create": { - "httpMethod": "POST", - "parameterOrder": [], - "response": { - "$ref": "Invitation" - }, - "parameters": {}, - "scopes": [ - "https://www.googleapis.com/auth/classroom.rosters" - ], - "flatPath": "v1/invitations", - "id": "classroom.invitations.create", - "path": "v1/invitations", - "request": { - "$ref": "Invitation" - }, - "description": "Creates an invitation. Only one invitation for a user and course may exist\nat a time. Delete and re-create an invitation to make changes.\n\nThis method returns the following error codes:\n\n* `PERMISSION_DENIED` if the requesting user is not permitted to create\ninvitations for this course or for access errors.\n* `NOT_FOUND` if the course or the user does not exist.\n* `FAILED_PRECONDITION` if the requested user's account is disabled or if\nthe user already has this role or a role with greater permissions.\n* `ALREADY_EXISTS` if an invitation for the specified user and course\nalready exists." + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/classroom.announcements": { + "description": "View and manage announcements in Google Classroom" }, - "accept": { - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "id" - ], - "httpMethod": "POST", - "parameters": { - "id": { - "required": true, - "type": "string", - "location": "path", - "description": "Identifier of the invitation to accept." - } - }, - "scopes": [ - "https://www.googleapis.com/auth/classroom.rosters" - ], - "flatPath": "v1/invitations/{id}:accept", - "path": "v1/invitations/{id}:accept", - "id": "classroom.invitations.accept", - "description": "Accepts an invitation, removing it and adding the invited user to the\nteachers or students (as appropriate) of the specified course. Only the\ninvited user may accept an invitation.\n\nThis method returns the following error codes:\n\n* `PERMISSION_DENIED` if the requesting user is not permitted to accept the\nrequested invitation or for access errors.\n* `FAILED_PRECONDITION` for the following request errors:\n * CourseMemberLimitReached\n * CourseNotModifiable\n * CourseTeacherLimitReached\n * UserGroupsMembershipLimitReached\n* `NOT_FOUND` if no invitation exists with the requested ID." + "https://www.googleapis.com/auth/classroom.announcements.readonly": { + "description": "View announcements in Google Classroom" }, - "delete": { - "description": "Deletes an invitation.\n\nThis method returns the following error codes:\n\n* `PERMISSION_DENIED` if the requesting user is not permitted to delete the\nrequested invitation or for access errors.\n* `NOT_FOUND` if no invitation exists with the requested ID.", - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "id" - ], - "httpMethod": "DELETE", - "scopes": [ - "https://www.googleapis.com/auth/classroom.rosters" - ], - "parameters": { - "id": { - "location": "path", - "description": "Identifier of the invitation to delete.", - "required": true, - "type": "string" - } - }, - "flatPath": "v1/invitations/{id}", - "path": "v1/invitations/{id}", - "id": "classroom.invitations.delete" + "https://www.googleapis.com/auth/classroom.courses": { + "description": "Manage your Google Classroom classes" }, - "get": { - "description": "Returns an invitation.\n\nThis method returns the following error codes:\n\n* `PERMISSION_DENIED` if the requesting user is not permitted to view the\nrequested invitation or for access errors.\n* `NOT_FOUND` if no invitation exists with the requested ID.", - "response": { - "$ref": "Invitation" - }, - "parameterOrder": [ - "id" - ], - "httpMethod": "GET", - "parameters": { - "id": { - "location": "path", - "description": "Identifier of the invitation to return.", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/classroom.rosters", - "https://www.googleapis.com/auth/classroom.rosters.readonly" - ], - "flatPath": "v1/invitations/{id}", - "path": "v1/invitations/{id}", - "id": "classroom.invitations.get" + "https://www.googleapis.com/auth/classroom.courses.readonly": { + "description": "View your Google Classroom classes" }, - "list": { - "description": "Returns a list of invitations that the requesting user is permitted to\nview, restricted to those that match the list request.\n\n*Note:* At least one of `user_id` or `course_id` must be supplied. Both\nfields can be supplied.\n\nThis method returns the following error codes:\n\n* `PERMISSION_DENIED` for access errors.", - "response": { - "$ref": "ListInvitationsResponse" - }, - "parameterOrder": [], - "httpMethod": "GET", - "parameters": { - "pageSize": { - "description": "Maximum number of items to return. Zero means no maximum.\n\nThe server may return fewer than the specified number of results.", - "format": "int32", - "type": "integer", - "location": "query" - }, - "courseId": { - "location": "query", - "description": "Restricts returned invitations to those for a course with the specified\nidentifier.", - "type": "string" - }, - "userId": { - "description": "Restricts returned invitations to those for a specific user. The identifier\ncan be one of the following:\n\n* the numeric identifier for the user\n* the email address of the user\n* the string literal `\"me\"`, indicating the requesting user", - "type": "string", - "location": "query" - }, - "pageToken": { - "location": "query", - "description": "nextPageToken\nvalue returned from a previous\nlist call, indicating\nthat the subsequent page of results should be returned.\n\nThe list request must be\notherwise identical to the one that resulted in this token.", - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/classroom.rosters", - "https://www.googleapis.com/auth/classroom.rosters.readonly" - ], - "flatPath": "v1/invitations", - "path": "v1/invitations", - "id": "classroom.invitations.list" + "https://www.googleapis.com/auth/classroom.coursework.me": { + "description": "Manage your course work and view your grades in Google Classroom" + }, + "https://www.googleapis.com/auth/classroom.coursework.me.readonly": { + "description": "View your course work and grades in Google Classroom" + }, + "https://www.googleapis.com/auth/classroom.coursework.students": { + "description": "Manage course work and grades for students in the Google Classroom classes you teach and view the course work and grades for classes you administer" + }, + "https://www.googleapis.com/auth/classroom.coursework.students.readonly": { + "description": "View course work and grades for students in the Google Classroom classes you teach or administer" + }, + "https://www.googleapis.com/auth/classroom.guardianlinks.me.readonly": { + "description": "View your Google Classroom guardians" + }, + "https://www.googleapis.com/auth/classroom.guardianlinks.students": { + "description": "View and manage guardians for students in your Google Classroom classes" + }, + "https://www.googleapis.com/auth/classroom.guardianlinks.students.readonly": { + "description": "View guardians for students in your Google Classroom classes" + }, + "https://www.googleapis.com/auth/classroom.profile.emails": { + "description": "View the email addresses of people in your classes" + }, + "https://www.googleapis.com/auth/classroom.profile.photos": { + "description": "View the profile photos of people in your classes" + }, + "https://www.googleapis.com/auth/classroom.push-notifications": { + "description": "Receive notifications about your Google Classroom data" + }, + "https://www.googleapis.com/auth/classroom.rosters": { + "description": "Manage your Google Classroom class rosters" + }, + "https://www.googleapis.com/auth/classroom.rosters.readonly": { + "description": "View your Google Classroom class rosters" + }, + "https://www.googleapis.com/auth/classroom.student-submissions.me.readonly": { + "description": "View your course work and grades in Google Classroom" + }, + "https://www.googleapis.com/auth/classroom.student-submissions.students.readonly": { + "description": "View course work and grades for students in the Google Classroom classes you teach or administer" } } + } + }, + "basePath": "", + "baseUrl": "https://classroom.googleapis.com/", + "batchPath": "batch", + "description": "Manages classes, rosters, and invitations in Google Classroom.", + "discoveryVersion": "v1", + "documentationLink": "https://developers.google.com/classroom/", + "icons": { + "x16": "http://www.google.com/images/icons/product/search-16.gif", + "x32": "http://www.google.com/images/icons/product/search-32.gif" + }, + "id": "classroom:v1", + "kind": "discovery#restDescription", + "name": "classroom", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "$.xgafv": { + "description": "V1 error format.", + "enum": [ + "1", + "2" + ], + "enumDescriptions": [ + "v1 error format", + "v2 error format" + ], + "location": "query", + "type": "string" }, + "access_token": { + "description": "OAuth access token.", + "location": "query", + "type": "string" + }, + "alt": { + "default": "json", + "description": "Data format for response.", + "enum": [ + "json", + "media", + "proto" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json", + "Media download with context-dependent Content-Type", + "Responses with Content-Type of application/x-protobuf" + ], + "location": "query", + "type": "string" + }, + "bearer_token": { + "description": "OAuth bearer token.", + "location": "query", + "type": "string" + }, + "callback": { + "description": "JSONP", + "location": "query", + "type": "string" + }, + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "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.", + "location": "query", + "type": "string" + }, + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "pp": { + "default": "true", + "description": "Pretty-print response.", + "location": "query", + "type": "boolean" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", + "location": "query", + "type": "string" + }, + "uploadType": { + "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", + "location": "query", + "type": "string" + }, + "upload_protocol": { + "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", + "location": "query", + "type": "string" + } + }, + "protocol": "rest", + "resources": { "courses": { "methods": { - "list": { - "response": { - "$ref": "ListCoursesResponse" - }, + "create": { + "description": "Creates a course.\n\nThe user specified in `ownerId` is the owner of the created course\nand added as a teacher.\n\nThis method returns the following error codes:\n\n* `PERMISSION_DENIED` if the requesting user is not permitted to create\ncourses or for access errors.\n* `NOT_FOUND` if the primary teacher is not a valid user.\n* `FAILED_PRECONDITION` if the course owner's account is disabled or for\nthe following request errors:\n * UserGroupsMembershipLimitReached\n* `ALREADY_EXISTS` if an alias was specified in the `id` and\nalready exists.", + "flatPath": "v1/courses", + "httpMethod": "POST", + "id": "classroom.courses.create", + "parameterOrder": [], + "parameters": {}, + "path": "v1/courses", + "request": { + "$ref": "Course" + }, + "response": { + "$ref": "Course" + }, + "scopes": [ + "https://www.googleapis.com/auth/classroom.courses" + ] + }, + "delete": { + "description": "Deletes a course.\n\nThis method returns the following error codes:\n\n* `PERMISSION_DENIED` if the requesting user is not permitted to delete the\nrequested course or for access errors.\n* `NOT_FOUND` if no course exists with the requested ID.", + "flatPath": "v1/courses/{id}", + "httpMethod": "DELETE", + "id": "classroom.courses.delete", + "parameterOrder": [ + "id" + ], + "parameters": { + "id": { + "description": "Identifier of the course to delete.\nThis identifier can be either the Classroom-assigned identifier or an\nalias.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/courses/{id}", + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/classroom.courses" + ] + }, + "get": { + "description": "Returns a course.\n\nThis method returns the following error codes:\n\n* `PERMISSION_DENIED` if the requesting user is not permitted to access the\nrequested course or for access errors.\n* `NOT_FOUND` if no course exists with the requested ID.", + "flatPath": "v1/courses/{id}", + "httpMethod": "GET", + "id": "classroom.courses.get", + "parameterOrder": [ + "id" + ], + "parameters": { + "id": { + "description": "Identifier of the course to return.\nThis identifier can be either the Classroom-assigned identifier or an\nalias.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/courses/{id}", + "response": { + "$ref": "Course" + }, + "scopes": [ + "https://www.googleapis.com/auth/classroom.courses", + "https://www.googleapis.com/auth/classroom.courses.readonly" + ] + }, + "list": { + "description": "Returns a list of courses that the requesting user is permitted to view,\nrestricted to those that match the request. Returned courses are ordered by\ncreation time, with the most recently created coming first.\n\nThis method returns the following error codes:\n\n* `PERMISSION_DENIED` for access errors.\n* `INVALID_ARGUMENT` if the query argument is malformed.\n* `NOT_FOUND` if any users specified in the query arguments do not exist.", + "flatPath": "v1/courses", + "httpMethod": "GET", + "id": "classroom.courses.list", "parameterOrder": [], - "httpMethod": "GET", "parameters": { - "teacherId": { - "type": "string", - "location": "query", - "description": "Restricts returned courses to those having a teacher with the specified\nidentifier. The identifier can be one of the following:\n\n* the numeric identifier for the user\n* the email address of the user\n* the string literal `\"me\"`, indicating the requesting user" - }, "courseStates": { - "type": "string", - "repeated": true, - "location": "query", + "description": "Restricts returned courses to those in one of the specified states\nThe default value is ACTIVE, ARCHIVED, PROVISIONED, DECLINED.", "enum": [ "COURSE_STATE_UNSPECIFIED", "ACTIVE", @@ -168,936 +250,683 @@ "DECLINED", "SUSPENDED" ], - "description": "Restricts returned courses to those in one of the specified states\nThe default value is ACTIVE, ARCHIVED, PROVISIONED, DECLINED." - }, - "studentId": { - "description": "Restricts returned courses to those having a student with the specified\nidentifier. The identifier can be one of the following:\n\n* the numeric identifier for the user\n* the email address of the user\n* the string literal `\"me\"`, indicating the requesting user", - "type": "string", - "location": "query" - }, - "pageToken": { "location": "query", - "description": "nextPageToken\nvalue returned from a previous\nlist call,\nindicating that the subsequent page of results should be returned.\n\nThe list request must be\notherwise identical to the one that resulted in this token.", + "repeated": true, "type": "string" }, "pageSize": { - "location": "query", "description": "Maximum number of items to return. Zero or unspecified indicates that the\nserver may assign a maximum.\n\nThe server may return fewer than the specified number of results.", "format": "int32", + "location": "query", "type": "integer" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/classroom.courses", - "https://www.googleapis.com/auth/classroom.courses.readonly" - ], - "flatPath": "v1/courses", - "path": "v1/courses", - "id": "classroom.courses.list", - "description": "Returns a list of courses that the requesting user is permitted to view,\nrestricted to those that match the request. Returned courses are ordered by\ncreation time, with the most recently created coming first.\n\nThis method returns the following error codes:\n\n* `PERMISSION_DENIED` for access errors.\n* `INVALID_ARGUMENT` if the query argument is malformed.\n* `NOT_FOUND` if any users specified in the query arguments do not exist." - }, - "create": { - "response": { - "$ref": "Course" - }, - "parameterOrder": [], - "httpMethod": "POST", - "parameters": {}, - "scopes": [ - "https://www.googleapis.com/auth/classroom.courses" - ], - "flatPath": "v1/courses", - "path": "v1/courses", - "id": "classroom.courses.create", - "request": { - "$ref": "Course" - }, - "description": "Creates a course.\n\nThe user specified in `ownerId` is the owner of the created course\nand added as a teacher.\n\nThis method returns the following error codes:\n\n* `PERMISSION_DENIED` if the requesting user is not permitted to create\ncourses or for access errors.\n* `NOT_FOUND` if the primary teacher is not a valid user.\n* `FAILED_PRECONDITION` if the course owner's account is disabled or for\nthe following request errors:\n * UserGroupsMembershipLimitReached\n* `ALREADY_EXISTS` if an alias was specified in the `id` and\nalready exists." - }, - "get": { - "parameters": { - "id": { - "location": "path", - "description": "Identifier of the course to return.\nThis identifier can be either the Classroom-assigned identifier or an\nalias.", - "required": true, + }, + "pageToken": { + "description": "nextPageToken\nvalue returned from a previous\nlist call,\nindicating that the subsequent page of results should be returned.\n\nThe list request must be\notherwise identical to the one that resulted in this token.", + "location": "query", + "type": "string" + }, + "studentId": { + "description": "Restricts returned courses to those having a student with the specified\nidentifier. The identifier can be one of the following:\n\n* the numeric identifier for the user\n* the email address of the user\n* the string literal `\"me\"`, indicating the requesting user", + "location": "query", + "type": "string" + }, + "teacherId": { + "description": "Restricts returned courses to those having a teacher with the specified\nidentifier. The identifier can be one of the following:\n\n* the numeric identifier for the user\n* the email address of the user\n* the string literal `\"me\"`, indicating the requesting user", + "location": "query", "type": "string" } }, + "path": "v1/courses", + "response": { + "$ref": "ListCoursesResponse" + }, "scopes": [ "https://www.googleapis.com/auth/classroom.courses", "https://www.googleapis.com/auth/classroom.courses.readonly" - ], - "flatPath": "v1/courses/{id}", - "path": "v1/courses/{id}", - "id": "classroom.courses.get", - "description": "Returns a course.\n\nThis method returns the following error codes:\n\n* `PERMISSION_DENIED` if the requesting user is not permitted to access the\nrequested course or for access errors.\n* `NOT_FOUND` if no course exists with the requested ID.", - "response": { - "$ref": "Course" - }, - "parameterOrder": [ - "id" - ], - "httpMethod": "GET" + ] }, "patch": { - "flatPath": "v1/courses/{id}", - "path": "v1/courses/{id}", - "id": "classroom.courses.patch", - "request": { - "$ref": "Course" - }, "description": "Updates one or more fields in a course.\n\nThis method returns the following error codes:\n\n* `PERMISSION_DENIED` if the requesting user is not permitted to modify the\nrequested course or for access errors.\n* `NOT_FOUND` if no course exists with the requested ID.\n* `INVALID_ARGUMENT` if invalid fields are specified in the update mask or\nif no update mask is supplied.\n* `FAILED_PRECONDITION` for the following request errors:\n * CourseNotModifiable", - "response": { - "$ref": "Course" - }, + "flatPath": "v1/courses/{id}", + "httpMethod": "PATCH", + "id": "classroom.courses.patch", "parameterOrder": [ "id" ], - "httpMethod": "PATCH", "parameters": { "id": { - "location": "path", "description": "Identifier of the course to update.\nThis identifier can be either the Classroom-assigned identifier or an\nalias.", + "location": "path", "required": true, "type": "string" }, "updateMask": { - "location": "query", "description": "Mask that identifies which fields on the course to update.\nThis field is required to do an update. The update will fail if invalid\nfields are specified. The following fields are valid:\n\n* `name`\n* `section`\n* `descriptionHeading`\n* `description`\n* `room`\n* `courseState`\n* `ownerId`\n\nNote: patches to ownerId are treated as being effective immediately, but in\npractice it may take some time for the ownership transfer of all affected\nresources to complete.\n\nWhen set in a query parameter, this field should be specified as\n\n`updateMask=\u003cfield1\u003e,\u003cfield2\u003e,...`", "format": "google-fieldmask", + "location": "query", "type": "string" } }, + "path": "v1/courses/{id}", + "request": { + "$ref": "Course" + }, + "response": { + "$ref": "Course" + }, "scopes": [ "https://www.googleapis.com/auth/classroom.courses" ] }, "update": { - "path": "v1/courses/{id}", - "id": "classroom.courses.update", "description": "Updates a course.\n\nThis method returns the following error codes:\n\n* `PERMISSION_DENIED` if the requesting user is not permitted to modify the\nrequested course or for access errors.\n* `NOT_FOUND` if no course exists with the requested ID.\n* `FAILED_PRECONDITION` for the following request errors:\n * CourseNotModifiable", + "flatPath": "v1/courses/{id}", + "httpMethod": "PUT", + "id": "classroom.courses.update", + "parameterOrder": [ + "id" + ], + "parameters": { + "id": { + "description": "Identifier of the course to update.\nThis identifier can be either the Classroom-assigned identifier or an\nalias.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/courses/{id}", "request": { "$ref": "Course" }, "response": { "$ref": "Course" }, - "parameterOrder": [ - "id" - ], - "httpMethod": "PUT", - "scopes": [ - "https://www.googleapis.com/auth/classroom.courses" - ], - "parameters": { - "id": { - "required": true, - "type": "string", - "location": "path", - "description": "Identifier of the course to update.\nThis identifier can be either the Classroom-assigned identifier or an\nalias." - } - }, - "flatPath": "v1/courses/{id}" - }, - "delete": { - "flatPath": "v1/courses/{id}", - "path": "v1/courses/{id}", - "id": "classroom.courses.delete", - "description": "Deletes a course.\n\nThis method returns the following error codes:\n\n* `PERMISSION_DENIED` if the requesting user is not permitted to delete the\nrequested course or for access errors.\n* `NOT_FOUND` if no course exists with the requested ID.", - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "id" - ], - "httpMethod": "DELETE", - "parameters": { - "id": { - "location": "path", - "description": "Identifier of the course to delete.\nThis identifier can be either the Classroom-assigned identifier or an\nalias.", - "required": true, - "type": "string" - } - }, "scopes": [ "https://www.googleapis.com/auth/classroom.courses" ] } }, "resources": { - "announcements": { + "aliases": { "methods": { - "list": { - "description": "Returns a list of announcements that the requester is permitted to view.\n\nCourse students may only view `PUBLISHED` announcements. Course teachers\nand domain administrators may view all announcements.\n\nThis method returns the following error codes:\n\n* `PERMISSION_DENIED` if the requesting user is not permitted to access\nthe requested course or for access errors.\n* `INVALID_ARGUMENT` if the request is malformed.\n* `NOT_FOUND` if the requested course does not exist.", - "response": { - "$ref": "ListAnnouncementsResponse" - }, + "create": { + "description": "Creates an alias for a course.\n\nThis method returns the following error codes:\n\n* `PERMISSION_DENIED` if the requesting user is not permitted to create the\nalias or for access errors.\n* `NOT_FOUND` if the course does not exist.\n* `ALREADY_EXISTS` if the alias already exists.\n* `FAILED_PRECONDITION` if the alias requested does not make sense for the\n requesting user or course (for example, if a user not in a domain\n attempts to access a domain-scoped alias).", + "flatPath": "v1/courses/{courseId}/aliases", + "httpMethod": "POST", + "id": "classroom.courses.aliases.create", "parameterOrder": [ "courseId" ], - "httpMethod": "GET", "parameters": { - "orderBy": { - "type": "string", - "location": "query", - "description": "Optional sort ordering for results. A comma-separated list of fields with\nan optional sort direction keyword. Supported field is `updateTime`.\nSupported direction keywords are `asc` and `desc`.\nIf not specified, `updateTime desc` is the default behavior.\nExamples: `updateTime asc`, `updateTime`" - }, - "pageToken": { - "type": "string", - "location": "query", - "description": "nextPageToken\nvalue returned from a previous\nlist call,\nindicating that the subsequent page of results should be returned.\n\nThe list request\nmust be otherwise identical to the one that resulted in this token." - }, - "pageSize": { - "location": "query", - "description": "Maximum number of items to return. Zero or unspecified indicates that the\nserver may assign a maximum.\n\nThe server may return fewer than the specified number of results.", - "format": "int32", - "type": "integer" + "courseId": { + "description": "Identifier of the course to alias.\nThis identifier can be either the Classroom-assigned identifier or an\nalias.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/courses/{courseId}/aliases", + "request": { + "$ref": "CourseAlias" + }, + "response": { + "$ref": "CourseAlias" + }, + "scopes": [ + "https://www.googleapis.com/auth/classroom.courses" + ] + }, + "delete": { + "description": "Deletes an alias of a course.\n\nThis method returns the following error codes:\n\n* `PERMISSION_DENIED` if the requesting user is not permitted to remove the\nalias or for access errors.\n* `NOT_FOUND` if the alias does not exist.\n* `FAILED_PRECONDITION` if the alias requested does not make sense for the\n requesting user or course (for example, if a user not in a domain\n attempts to delete a domain-scoped alias).", + "flatPath": "v1/courses/{courseId}/aliases/{alias}", + "httpMethod": "DELETE", + "id": "classroom.courses.aliases.delete", + "parameterOrder": [ + "courseId", + "alias" + ], + "parameters": { + "alias": { + "description": "Alias to delete.\nThis may not be the Classroom-assigned identifier.", + "location": "path", + "required": true, + "type": "string" }, "courseId": { - "description": "Identifier of the course.\nThis identifier can be either the Classroom-assigned identifier or an\nalias.", + "description": "Identifier of the course whose alias should be deleted.\nThis identifier can be either the Classroom-assigned identifier or an\nalias.", + "location": "path", "required": true, - "type": "string", - "location": "path" + "type": "string" + } + }, + "path": "v1/courses/{courseId}/aliases/{alias}", + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/classroom.courses" + ] + }, + "list": { + "description": "Returns a list of aliases for a course.\n\nThis method returns the following error codes:\n\n* `PERMISSION_DENIED` if the requesting user is not permitted to access the\ncourse or for access errors.\n* `NOT_FOUND` if the course does not exist.", + "flatPath": "v1/courses/{courseId}/aliases", + "httpMethod": "GET", + "id": "classroom.courses.aliases.list", + "parameterOrder": [ + "courseId" + ], + "parameters": { + "courseId": { + "description": "The identifier of the course.\nThis identifier can be either the Classroom-assigned identifier or an\nalias.", + "location": "path", + "required": true, + "type": "string" }, - "announcementStates": { - "type": "string", - "repeated": true, + "pageSize": { + "description": "Maximum number of items to return. Zero or unspecified indicates that the\nserver may assign a maximum.\n\nThe server may return fewer than the specified number of results.", + "format": "int32", "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "nextPageToken\nvalue returned from a previous\nlist call,\nindicating that the subsequent page of results should be returned.\n\nThe list request\nmust be otherwise identical to the one that resulted in this token.", + "location": "query", + "type": "string" + } + }, + "path": "v1/courses/{courseId}/aliases", + "response": { + "$ref": "ListCourseAliasesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/classroom.courses", + "https://www.googleapis.com/auth/classroom.courses.readonly" + ] + } + } + }, + "announcements": { + "methods": { + "create": { + "description": "Creates an announcement.\n\nThis method returns the following error codes:\n\n* `PERMISSION_DENIED` if the requesting user is not permitted to access the\nrequested course, create announcements in the requested course, share a\nDrive attachment, or for access errors.\n* `INVALID_ARGUMENT` if the request is malformed.\n* `NOT_FOUND` if the requested course does not exist.\n* `FAILED_PRECONDITION` for the following request error:\n * AttachmentNotVisible", + "flatPath": "v1/courses/{courseId}/announcements", + "httpMethod": "POST", + "id": "classroom.courses.announcements.create", + "parameterOrder": [ + "courseId" + ], + "parameters": { + "courseId": { + "description": "Identifier of the course.\nThis identifier can be either the Classroom-assigned identifier or an\nalias.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/courses/{courseId}/announcements", + "request": { + "$ref": "Announcement" + }, + "response": { + "$ref": "Announcement" + }, + "scopes": [ + "https://www.googleapis.com/auth/classroom.announcements" + ] + }, + "delete": { + "description": "Deletes an announcement.\n\nThis request must be made by the Developer Console project of the\n[OAuth client ID](https://support.google.com/cloud/answer/6158849) used to\ncreate the corresponding announcement item.\n\nThis method returns the following error codes:\n\n* `PERMISSION_DENIED` if the requesting developer project did not create\nthe corresponding announcement, if the requesting user is not permitted\nto delete the requested course or for access errors.\n* `FAILED_PRECONDITION` if the requested announcement has already been\ndeleted.\n* `NOT_FOUND` if no course exists with the requested ID.", + "flatPath": "v1/courses/{courseId}/announcements/{id}", + "httpMethod": "DELETE", + "id": "classroom.courses.announcements.delete", + "parameterOrder": [ + "courseId", + "id" + ], + "parameters": { + "courseId": { + "description": "Identifier of the course.\nThis identifier can be either the Classroom-assigned identifier or an\nalias.", + "location": "path", + "required": true, + "type": "string" + }, + "id": { + "description": "Identifier of the announcement to delete.\nThis identifier is a Classroom-assigned identifier.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/courses/{courseId}/announcements/{id}", + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/classroom.announcements" + ] + }, + "get": { + "description": "Returns an announcement.\n\nThis method returns the following error codes:\n\n* `PERMISSION_DENIED` if the requesting user is not permitted to access the\nrequested course or announcement, or for access errors.\n* `INVALID_ARGUMENT` if the request is malformed.\n* `NOT_FOUND` if the requested course or announcement does not exist.", + "flatPath": "v1/courses/{courseId}/announcements/{id}", + "httpMethod": "GET", + "id": "classroom.courses.announcements.get", + "parameterOrder": [ + "courseId", + "id" + ], + "parameters": { + "courseId": { + "description": "Identifier of the course.\nThis identifier can be either the Classroom-assigned identifier or an\nalias.", + "location": "path", + "required": true, + "type": "string" + }, + "id": { + "description": "Identifier of the announcement.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/courses/{courseId}/announcements/{id}", + "response": { + "$ref": "Announcement" + }, + "scopes": [ + "https://www.googleapis.com/auth/classroom.announcements", + "https://www.googleapis.com/auth/classroom.announcements.readonly" + ] + }, + "list": { + "description": "Returns a list of announcements that the requester is permitted to view.\n\nCourse students may only view `PUBLISHED` announcements. Course teachers\nand domain administrators may view all announcements.\n\nThis method returns the following error codes:\n\n* `PERMISSION_DENIED` if the requesting user is not permitted to access\nthe requested course or for access errors.\n* `INVALID_ARGUMENT` if the request is malformed.\n* `NOT_FOUND` if the requested course does not exist.", + "flatPath": "v1/courses/{courseId}/announcements", + "httpMethod": "GET", + "id": "classroom.courses.announcements.list", + "parameterOrder": [ + "courseId" + ], + "parameters": { + "announcementStates": { + "description": "Restriction on the `state` of announcements returned.\nIf this argument is left unspecified, the default value is `PUBLISHED`.", "enum": [ "ANNOUNCEMENT_STATE_UNSPECIFIED", "PUBLISHED", "DRAFT", "DELETED" ], - "description": "Restriction on the `state` of announcements returned.\nIf this argument is left unspecified, the default value is `PUBLISHED`." + "location": "query", + "repeated": true, + "type": "string" + }, + "courseId": { + "description": "Identifier of the course.\nThis identifier can be either the Classroom-assigned identifier or an\nalias.", + "location": "path", + "required": true, + "type": "string" + }, + "orderBy": { + "description": "Optional sort ordering for results. A comma-separated list of fields with\nan optional sort direction keyword. Supported field is `updateTime`.\nSupported direction keywords are `asc` and `desc`.\nIf not specified, `updateTime desc` is the default behavior.\nExamples: `updateTime asc`, `updateTime`", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "Maximum number of items to return. Zero or unspecified indicates that the\nserver may assign a maximum.\n\nThe server may return fewer than the specified number of results.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "nextPageToken\nvalue returned from a previous\nlist call,\nindicating that the subsequent page of results should be returned.\n\nThe list request\nmust be otherwise identical to the one that resulted in this token.", + "location": "query", + "type": "string" } }, + "path": "v1/courses/{courseId}/announcements", + "response": { + "$ref": "ListAnnouncementsResponse" + }, "scopes": [ "https://www.googleapis.com/auth/classroom.announcements", "https://www.googleapis.com/auth/classroom.announcements.readonly" - ], - "flatPath": "v1/courses/{courseId}/announcements", - "path": "v1/courses/{courseId}/announcements", - "id": "classroom.courses.announcements.list" + ] }, - "create": { - "request": { - "$ref": "Announcement" - }, - "description": "Creates an announcement.\n\nThis method returns the following error codes:\n\n* `PERMISSION_DENIED` if the requesting user is not permitted to access the\nrequested course, create announcements in the requested course, share a\nDrive attachment, or for access errors.\n* `INVALID_ARGUMENT` if the request is malformed.\n* `NOT_FOUND` if the requested course does not exist.\n* `FAILED_PRECONDITION` for the following request error:\n * AttachmentNotVisible", + "modifyAssignees": { + "description": "Modifies assignee mode and options of an announcement.\n\nOnly a teacher of the course that contains the announcement may\ncall this method.\n\nThis method returns the following error codes:\n\n* `PERMISSION_DENIED` if the requesting user is not permitted to access the\nrequested course or course work or for access errors.\n* `INVALID_ARGUMENT` if the request is malformed.\n* `NOT_FOUND` if the requested course or course work does not exist.", + "flatPath": "v1/courses/{courseId}/announcements/{id}:modifyAssignees", "httpMethod": "POST", + "id": "classroom.courses.announcements.modifyAssignees", "parameterOrder": [ - "courseId" + "courseId", + "id" ], - "response": { - "$ref": "Announcement" - }, "parameters": { "courseId": { - "location": "path", "description": "Identifier of the course.\nThis identifier can be either the Classroom-assigned identifier or an\nalias.", + "location": "path", + "required": true, + "type": "string" + }, + "id": { + "description": "Identifier of the announcement.", + "location": "path", "required": true, "type": "string" } }, - "scopes": [ - "https://www.googleapis.com/auth/classroom.announcements" - ], - "flatPath": "v1/courses/{courseId}/announcements", - "id": "classroom.courses.announcements.create", - "path": "v1/courses/{courseId}/announcements" - }, - "modifyAssignees": { "path": "v1/courses/{courseId}/announcements/{id}:modifyAssignees", - "id": "classroom.courses.announcements.modifyAssignees", "request": { "$ref": "ModifyAnnouncementAssigneesRequest" }, - "description": "Modifies assignee mode and options of an announcement.\n\nOnly a teacher of the course that contains the announcement may\ncall this method.\n\nThis method returns the following error codes:\n\n* `PERMISSION_DENIED` if the requesting user is not permitted to access the\nrequested course or course work or for access errors.\n* `INVALID_ARGUMENT` if the request is malformed.\n* `NOT_FOUND` if the requested course or course work does not exist.", "response": { "$ref": "Announcement" }, - "parameterOrder": [ - "courseId", - "id" - ], - "httpMethod": "POST", - "parameters": { - "courseId": { - "location": "path", - "description": "Identifier of the course.\nThis identifier can be either the Classroom-assigned identifier or an\nalias.", - "required": true, - "type": "string" - }, - "id": { - "description": "Identifier of the announcement.", - "required": true, - "type": "string", - "location": "path" - } - }, "scopes": [ "https://www.googleapis.com/auth/classroom.announcements" - ], - "flatPath": "v1/courses/{courseId}/announcements/{id}:modifyAssignees" - }, - "get": { - "response": { - "$ref": "Announcement" - }, - "parameterOrder": [ - "courseId", - "id" - ], - "httpMethod": "GET", - "parameters": { - "courseId": { - "description": "Identifier of the course.\nThis identifier can be either the Classroom-assigned identifier or an\nalias.", - "required": true, - "type": "string", - "location": "path" - }, - "id": { - "location": "path", - "description": "Identifier of the announcement.", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/classroom.announcements", - "https://www.googleapis.com/auth/classroom.announcements.readonly" - ], - "flatPath": "v1/courses/{courseId}/announcements/{id}", - "path": "v1/courses/{courseId}/announcements/{id}", - "id": "classroom.courses.announcements.get", - "description": "Returns an announcement.\n\nThis method returns the following error codes:\n\n* `PERMISSION_DENIED` if the requesting user is not permitted to access the\nrequested course or announcement, or for access errors.\n* `INVALID_ARGUMENT` if the request is malformed.\n* `NOT_FOUND` if the requested course or announcement does not exist." + ] }, "patch": { - "request": { - "$ref": "Announcement" - }, "description": "Updates one or more fields of an announcement.\n\nThis method returns the following error codes:\n\n* `PERMISSION_DENIED` if the requesting developer project did not create\nthe corresponding announcement or for access errors.\n* `INVALID_ARGUMENT` if the request is malformed.\n* `FAILED_PRECONDITION` if the requested announcement has already been\ndeleted.\n* `NOT_FOUND` if the requested course or announcement does not exist", - "response": { - "$ref": "Announcement" - }, + "flatPath": "v1/courses/{courseId}/announcements/{id}", + "httpMethod": "PATCH", + "id": "classroom.courses.announcements.patch", "parameterOrder": [ "courseId", "id" ], - "httpMethod": "PATCH", "parameters": { + "courseId": { + "description": "Identifier of the course.\nThis identifier can be either the Classroom-assigned identifier or an\nalias.", + "location": "path", + "required": true, + "type": "string" + }, "id": { "description": "Identifier of the announcement.", + "location": "path", "required": true, - "type": "string", - "location": "path" + "type": "string" }, "updateMask": { - "location": "query", "description": "Mask that identifies which fields on the announcement to update.\nThis field is required to do an update. The update fails if invalid\nfields are specified. If a field supports empty values, it can be cleared\nby specifying it in the update mask and not in the Announcement object. If\na field that does not support empty values is included in the update mask\nand not set in the Announcement object, an `INVALID_ARGUMENT` error will be\nreturned.\n\nThe following fields may be specified by teachers:\n\n* `text`\n* `state`\n* `scheduled_time`", "format": "google-fieldmask", - "type": "string" - }, - "courseId": { - "location": "path", - "description": "Identifier of the course.\nThis identifier can be either the Classroom-assigned identifier or an\nalias.", - "required": true, + "location": "query", "type": "string" } }, + "path": "v1/courses/{courseId}/announcements/{id}", + "request": { + "$ref": "Announcement" + }, + "response": { + "$ref": "Announcement" + }, "scopes": [ "https://www.googleapis.com/auth/classroom.announcements" - ], - "flatPath": "v1/courses/{courseId}/announcements/{id}", - "path": "v1/courses/{courseId}/announcements/{id}", - "id": "classroom.courses.announcements.patch" - }, - "delete": { - "httpMethod": "DELETE", - "parameterOrder": [ - "courseId", - "id" - ], - "response": { - "$ref": "Empty" - }, - "parameters": { - "courseId": { - "location": "path", - "description": "Identifier of the course.\nThis identifier can be either the Classroom-assigned identifier or an\nalias.", - "required": true, - "type": "string" - }, - "id": { - "description": "Identifier of the announcement to delete.\nThis identifier is a Classroom-assigned identifier.", - "required": true, - "type": "string", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/classroom.announcements" - ], - "flatPath": "v1/courses/{courseId}/announcements/{id}", - "id": "classroom.courses.announcements.delete", - "path": "v1/courses/{courseId}/announcements/{id}", - "description": "Deletes an announcement.\n\nThis request must be made by the Developer Console project of the\n[OAuth client ID](https://support.google.com/cloud/answer/6158849) used to\ncreate the corresponding announcement item.\n\nThis method returns the following error codes:\n\n* `PERMISSION_DENIED` if the requesting developer project did not create\nthe corresponding announcement, if the requesting user is not permitted\nto delete the requested course or for access errors.\n* `FAILED_PRECONDITION` if the requested announcement has already been\ndeleted.\n* `NOT_FOUND` if no course exists with the requested ID." - } - } - }, - "students": { - "methods": { - "get": { - "response": { - "$ref": "Student" - }, - "parameterOrder": [ - "courseId", - "userId" - ], - "httpMethod": "GET", - "parameters": { - "userId": { - "location": "path", - "description": "Identifier of the student to return. The identifier can be one of the\nfollowing:\n\n* the numeric identifier for the user\n* the email address of the user\n* the string literal `\"me\"`, indicating the requesting user", - "required": true, - "type": "string" - }, - "courseId": { - "description": "Identifier of the course.\nThis identifier can be either the Classroom-assigned identifier or an\nalias.", - "required": true, - "type": "string", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/classroom.profile.emails", - "https://www.googleapis.com/auth/classroom.profile.photos", - "https://www.googleapis.com/auth/classroom.rosters", - "https://www.googleapis.com/auth/classroom.rosters.readonly" - ], - "flatPath": "v1/courses/{courseId}/students/{userId}", - "path": "v1/courses/{courseId}/students/{userId}", - "id": "classroom.courses.students.get", - "description": "Returns a student of a course.\n\nThis method returns the following error codes:\n\n* `PERMISSION_DENIED` if the requesting user is not permitted to view\nstudents of this course or for access errors.\n* `NOT_FOUND` if no student of this course has the requested ID or if the\ncourse does not exist." - }, - "list": { - "id": "classroom.courses.students.list", - "path": "v1/courses/{courseId}/students", - "description": "Returns a list of students of this course that the requester\nis permitted to view.\n\nThis method returns the following error codes:\n\n* `NOT_FOUND` if the course does not exist.\n* `PERMISSION_DENIED` for access errors.", - "httpMethod": "GET", - "parameterOrder": [ - "courseId" - ], - "response": { - "$ref": "ListStudentsResponse" - }, - "parameters": { - "pageSize": { - "location": "query", - "description": "Maximum number of items to return. Zero means no maximum.\n\nThe server may return fewer than the specified number of results.", - "format": "int32", - "type": "integer" - }, - "courseId": { - "description": "Identifier of the course.\nThis identifier can be either the Classroom-assigned identifier or an\nalias.", - "required": true, - "type": "string", - "location": "path" - }, - "pageToken": { - "description": "nextPageToken\nvalue returned from a previous\nlist call, indicating that\nthe subsequent page of results should be returned.\n\nThe list request must be\notherwise identical to the one that resulted in this token.", - "type": "string", - "location": "query" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/classroom.profile.emails", - "https://www.googleapis.com/auth/classroom.profile.photos", - "https://www.googleapis.com/auth/classroom.rosters", - "https://www.googleapis.com/auth/classroom.rosters.readonly" - ], - "flatPath": "v1/courses/{courseId}/students" - }, - "create": { - "response": { - "$ref": "Student" - }, - "parameterOrder": [ - "courseId" - ], - "httpMethod": "POST", - "parameters": { - "enrollmentCode": { - "location": "query", - "description": "Enrollment code of the course to create the student in.\nThis code is required if userId\ncorresponds to the requesting user; it may be omitted if the requesting\nuser has administrative permissions to create students for any user.", - "type": "string" - }, - "courseId": { - "description": "Identifier of the course to create the student in.\nThis identifier can be either the Classroom-assigned identifier or an\nalias.", - "required": true, - "type": "string", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/classroom.profile.emails", - "https://www.googleapis.com/auth/classroom.profile.photos", - "https://www.googleapis.com/auth/classroom.rosters" - ], - "flatPath": "v1/courses/{courseId}/students", - "path": "v1/courses/{courseId}/students", - "id": "classroom.courses.students.create", - "request": { - "$ref": "Student" - }, - "description": "Adds a user as a student of a course.\n\nThis method returns the following error codes:\n\n* `PERMISSION_DENIED` if the requesting user is not permitted to create\nstudents in this course or for access errors.\n* `NOT_FOUND` if the requested course ID does not exist.\n* `FAILED_PRECONDITION` if the requested user's account is disabled,\nfor the following request errors:\n * CourseMemberLimitReached\n * CourseNotModifiable\n * UserGroupsMembershipLimitReached\n* `ALREADY_EXISTS` if the user is already a student or teacher in the\ncourse." - }, - "delete": { - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "courseId", - "userId" - ], - "httpMethod": "DELETE", - "scopes": [ - "https://www.googleapis.com/auth/classroom.rosters" - ], - "parameters": { - "courseId": { - "location": "path", - "description": "Identifier of the course.\nThis identifier can be either the Classroom-assigned identifier or an\nalias.", - "required": true, - "type": "string" - }, - "userId": { - "description": "Identifier of the student to delete. The identifier can be one of the\nfollowing:\n\n* the numeric identifier for the user\n* the email address of the user\n* the string literal `\"me\"`, indicating the requesting user", - "required": true, - "type": "string", - "location": "path" - } - }, - "flatPath": "v1/courses/{courseId}/students/{userId}", - "path": "v1/courses/{courseId}/students/{userId}", - "id": "classroom.courses.students.delete", - "description": "Deletes a student of a course.\n\nThis method returns the following error codes:\n\n* `PERMISSION_DENIED` if the requesting user is not permitted to delete\nstudents of this course or for access errors.\n* `NOT_FOUND` if no student of this course has the requested ID or if the\ncourse does not exist." - } - } - }, - "topics": { - "methods": { - "get": { - "id": "classroom.courses.topics.get", - "path": "v1/courses/{courseId}/topics/{id}", - "description": "Returns a topic.\n\nThis method returns the following error codes:\n\n* `PERMISSION_DENIED` if the requesting user is not permitted to access the\nrequested course or topic, or for access errors.\n* `INVALID_ARGUMENT` if the request is malformed.\n* `NOT_FOUND` if the requested course or topic does not exist.", - "httpMethod": "GET", - "parameterOrder": [ - "courseId", - "id" - ], - "response": { - "$ref": "Topic" - }, - "parameters": { - "courseId": { - "location": "path", - "description": "Identifier of the course.", - "required": true, - "type": "string" - }, - "id": { - "description": "Identifier of the topic.", - "required": true, - "type": "string", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/classroom.coursework.me", - "https://www.googleapis.com/auth/classroom.coursework.me.readonly", - "https://www.googleapis.com/auth/classroom.coursework.students", - "https://www.googleapis.com/auth/classroom.coursework.students.readonly" - ], - "flatPath": "v1/courses/{courseId}/topics/{id}" - }, - "list": { - "description": "Returns the list of topics that the requester is permitted to view.\n\nThis method returns the following error codes:\n\n* `PERMISSION_DENIED` if the requesting user is not permitted to access\nthe requested course or for access errors.\n* `INVALID_ARGUMENT` if the request is malformed.\n* `NOT_FOUND` if the requested course does not exist.", - "response": { - "$ref": "ListTopicResponse" - }, - "parameterOrder": [ - "courseId" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/classroom.coursework.me", - "https://www.googleapis.com/auth/classroom.coursework.me.readonly", - "https://www.googleapis.com/auth/classroom.coursework.students", - "https://www.googleapis.com/auth/classroom.coursework.students.readonly" - ], - "parameters": { - "pageToken": { - "location": "query", - "description": "nextPageToken\nvalue returned from a previous\nlist call,\nindicating that the subsequent page of results should be returned.\n\nThe list request\nmust be otherwise identical to the one that resulted in this token.", - "type": "string" - }, - "pageSize": { - "location": "query", - "description": "Maximum number of items to return. Zero or unspecified indicates that the\nserver may assign a maximum.\n\nThe server may return fewer than the specified number of results.", - "format": "int32", - "type": "integer" - }, - "courseId": { - "required": true, - "type": "string", - "location": "path", - "description": "Identifier of the course.\nThis identifier can be either the Classroom-assigned identifier or an\nalias." - } - }, - "flatPath": "v1/courses/{courseId}/topics", - "path": "v1/courses/{courseId}/topics", - "id": "classroom.courses.topics.list" - } - } - }, - "aliases": { - "methods": { - "delete": { - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "courseId", - "alias" - ], - "httpMethod": "DELETE", - "parameters": { - "alias": { - "description": "Alias to delete.\nThis may not be the Classroom-assigned identifier.", - "required": true, - "type": "string", - "location": "path" - }, - "courseId": { - "description": "Identifier of the course whose alias should be deleted.\nThis identifier can be either the Classroom-assigned identifier or an\nalias.", - "required": true, - "type": "string", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/classroom.courses" - ], - "flatPath": "v1/courses/{courseId}/aliases/{alias}", - "path": "v1/courses/{courseId}/aliases/{alias}", - "id": "classroom.courses.aliases.delete", - "description": "Deletes an alias of a course.\n\nThis method returns the following error codes:\n\n* `PERMISSION_DENIED` if the requesting user is not permitted to remove the\nalias or for access errors.\n* `NOT_FOUND` if the alias does not exist.\n* `FAILED_PRECONDITION` if the alias requested does not make sense for the\n requesting user or course (for example, if a user not in a domain\n attempts to delete a domain-scoped alias)." - }, - "list": { - "description": "Returns a list of aliases for a course.\n\nThis method returns the following error codes:\n\n* `PERMISSION_DENIED` if the requesting user is not permitted to access the\ncourse or for access errors.\n* `NOT_FOUND` if the course does not exist.", - "response": { - "$ref": "ListCourseAliasesResponse" - }, - "parameterOrder": [ - "courseId" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/classroom.courses", - "https://www.googleapis.com/auth/classroom.courses.readonly" - ], - "parameters": { - "pageToken": { - "location": "query", - "description": "nextPageToken\nvalue returned from a previous\nlist call,\nindicating that the subsequent page of results should be returned.\n\nThe list request\nmust be otherwise identical to the one that resulted in this token.", - "type": "string" - }, - "pageSize": { - "location": "query", - "description": "Maximum number of items to return. Zero or unspecified indicates that the\nserver may assign a maximum.\n\nThe server may return fewer than the specified number of results.", - "format": "int32", - "type": "integer" - }, - "courseId": { - "location": "path", - "description": "The identifier of the course.\nThis identifier can be either the Classroom-assigned identifier or an\nalias.", - "required": true, - "type": "string" - } - }, - "flatPath": "v1/courses/{courseId}/aliases", - "path": "v1/courses/{courseId}/aliases", - "id": "classroom.courses.aliases.list" - }, - "create": { - "flatPath": "v1/courses/{courseId}/aliases", - "path": "v1/courses/{courseId}/aliases", - "id": "classroom.courses.aliases.create", - "description": "Creates an alias for a course.\n\nThis method returns the following error codes:\n\n* `PERMISSION_DENIED` if the requesting user is not permitted to create the\nalias or for access errors.\n* `NOT_FOUND` if the course does not exist.\n* `ALREADY_EXISTS` if the alias already exists.\n* `FAILED_PRECONDITION` if the alias requested does not make sense for the\n requesting user or course (for example, if a user not in a domain\n attempts to access a domain-scoped alias).", - "request": { - "$ref": "CourseAlias" - }, - "response": { - "$ref": "CourseAlias" - }, - "parameterOrder": [ - "courseId" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/classroom.courses" - ], - "parameters": { - "courseId": { - "required": true, - "type": "string", - "location": "path", - "description": "Identifier of the course to alias.\nThis identifier can be either the Classroom-assigned identifier or an\nalias." - } - } + ] } } }, "courseWork": { "methods": { - "modifyAssignees": { - "response": { - "$ref": "CourseWork" - }, - "parameterOrder": [ - "courseId", - "id" - ], + "create": { + "description": "Creates course work.\n\nThe resulting course work (and corresponding student submissions) are\nassociated with the Developer Console project of the\n[OAuth client ID](https://support.google.com/cloud/answer/6158849) used to\nmake the request. Classroom API requests to modify course work and student\nsubmissions must be made with an OAuth client ID from the associated\nDeveloper Console project.\n\nThis method returns the following error codes:\n\n* `PERMISSION_DENIED` if the requesting user is not permitted to access the\nrequested course, create course work in the requested course, share a\nDrive attachment, or for access errors.\n* `INVALID_ARGUMENT` if the request is malformed.\n* `NOT_FOUND` if the requested course does not exist.\n* `FAILED_PRECONDITION` for the following request error:\n * AttachmentNotVisible", + "flatPath": "v1/courses/{courseId}/courseWork", "httpMethod": "POST", + "id": "classroom.courses.courseWork.create", + "parameterOrder": [ + "courseId" + ], "parameters": { "courseId": { "description": "Identifier of the course.\nThis identifier can be either the Classroom-assigned identifier or an\nalias.", + "location": "path", "required": true, - "type": "string", - "location": "path" - }, - "id": { - "description": "Identifier of the coursework.", - "required": true, - "type": "string", - "location": "path" + "type": "string" } }, - "scopes": [ - "https://www.googleapis.com/auth/classroom.coursework.students" - ], - "flatPath": "v1/courses/{courseId}/courseWork/{id}:modifyAssignees", - "path": "v1/courses/{courseId}/courseWork/{id}:modifyAssignees", - "id": "classroom.courses.courseWork.modifyAssignees", + "path": "v1/courses/{courseId}/courseWork", "request": { - "$ref": "ModifyCourseWorkAssigneesRequest" + "$ref": "CourseWork" }, - "description": "Modifies assignee mode and options of a coursework.\n\nOnly a teacher of the course that contains the coursework may\ncall this method.\n\nThis method returns the following error codes:\n\n* `PERMISSION_DENIED` if the requesting user is not permitted to access the\nrequested course or course work or for access errors.\n* `INVALID_ARGUMENT` if the request is malformed.\n* `NOT_FOUND` if the requested course or course work does not exist." - }, - "patch": { "response": { "$ref": "CourseWork" }, + "scopes": [ + "https://www.googleapis.com/auth/classroom.coursework.students" + ] + }, + "delete": { + "description": "Deletes a course work.\n\nThis request must be made by the Developer Console project of the\n[OAuth client ID](https://support.google.com/cloud/answer/6158849) used to\ncreate the corresponding course work item.\n\nThis method returns the following error codes:\n\n* `PERMISSION_DENIED` if the requesting developer project did not create\nthe corresponding course work, if the requesting user is not permitted\nto delete the requested course or for access errors.\n* `FAILED_PRECONDITION` if the requested course work has already been\ndeleted.\n* `NOT_FOUND` if no course exists with the requested ID.", + "flatPath": "v1/courses/{courseId}/courseWork/{id}", + "httpMethod": "DELETE", + "id": "classroom.courses.courseWork.delete", "parameterOrder": [ "courseId", "id" ], - "httpMethod": "PATCH", "parameters": { "courseId": { - "location": "path", "description": "Identifier of the course.\nThis identifier can be either the Classroom-assigned identifier or an\nalias.", + "location": "path", "required": true, "type": "string" }, "id": { + "description": "Identifier of the course work to delete.\nThis identifier is a Classroom-assigned identifier.", "location": "path", - "description": "Identifier of the course work.", "required": true, "type": "string" - }, - "updateMask": { - "location": "query", - "description": "Mask that identifies which fields on the course work to update.\nThis field is required to do an update. The update fails if invalid\nfields are specified. If a field supports empty values, it can be cleared\nby specifying it in the update mask and not in the CourseWork object. If a\nfield that does not support empty values is included in the update mask and\nnot set in the CourseWork object, an `INVALID_ARGUMENT` error will be\nreturned.\n\nThe following fields may be specified by teachers:\n\n* `title`\n* `description`\n* `state`\n* `due_date`\n* `due_time`\n* `max_points`\n* `scheduled_time`\n* `submission_modification_mode`", - "format": "google-fieldmask", - "type": "string" } }, + "path": "v1/courses/{courseId}/courseWork/{id}", + "response": { + "$ref": "Empty" + }, "scopes": [ "https://www.googleapis.com/auth/classroom.coursework.students" - ], - "flatPath": "v1/courses/{courseId}/courseWork/{id}", - "path": "v1/courses/{courseId}/courseWork/{id}", - "id": "classroom.courses.courseWork.patch", - "request": { - "$ref": "CourseWork" - }, - "description": "Updates one or more fields of a course work.\n\nSee google.classroom.v1.CourseWork for details\nof which fields may be updated and who may change them.\n\nThis request must be made by the Developer Console project of the\n[OAuth client ID](https://support.google.com/cloud/answer/6158849) used to\ncreate the corresponding course work item.\n\nThis method returns the following error codes:\n\n* `PERMISSION_DENIED` if the requesting developer project did not create\nthe corresponding course work, if the user is not permitted to make the\nrequested modification to the student submission, or for\naccess errors.\n* `INVALID_ARGUMENT` if the request is malformed.\n* `FAILED_PRECONDITION` if the requested course work has already been\ndeleted.\n* `NOT_FOUND` if the requested course, course work, or student submission\ndoes not exist." + ] }, "get": { "description": "Returns course work.\n\nThis method returns the following error codes:\n\n* `PERMISSION_DENIED` if the requesting user is not permitted to access the\nrequested course or course work, or for access errors.\n* `INVALID_ARGUMENT` if the request is malformed.\n* `NOT_FOUND` if the requested course or course work does not exist.", + "flatPath": "v1/courses/{courseId}/courseWork/{id}", "httpMethod": "GET", + "id": "classroom.courses.courseWork.get", "parameterOrder": [ "courseId", "id" ], - "response": { - "$ref": "CourseWork" - }, "parameters": { "courseId": { "description": "Identifier of the course.\nThis identifier can be either the Classroom-assigned identifier or an\nalias.", + "location": "path", "required": true, - "type": "string", - "location": "path" + "type": "string" }, "id": { "description": "Identifier of the course work.", + "location": "path", "required": true, - "type": "string", - "location": "path" + "type": "string" } }, + "path": "v1/courses/{courseId}/courseWork/{id}", + "response": { + "$ref": "CourseWork" + }, "scopes": [ "https://www.googleapis.com/auth/classroom.coursework.me", "https://www.googleapis.com/auth/classroom.coursework.me.readonly", "https://www.googleapis.com/auth/classroom.coursework.students", "https://www.googleapis.com/auth/classroom.coursework.students.readonly" - ], - "flatPath": "v1/courses/{courseId}/courseWork/{id}", - "id": "classroom.courses.courseWork.get", - "path": "v1/courses/{courseId}/courseWork/{id}" - }, - "delete": { - "path": "v1/courses/{courseId}/courseWork/{id}", - "id": "classroom.courses.courseWork.delete", - "description": "Deletes a course work.\n\nThis request must be made by the Developer Console project of the\n[OAuth client ID](https://support.google.com/cloud/answer/6158849) used to\ncreate the corresponding course work item.\n\nThis method returns the following error codes:\n\n* `PERMISSION_DENIED` if the requesting developer project did not create\nthe corresponding course work, if the requesting user is not permitted\nto delete the requested course or for access errors.\n* `FAILED_PRECONDITION` if the requested course work has already been\ndeleted.\n* `NOT_FOUND` if no course exists with the requested ID.", - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "courseId", - "id" - ], - "httpMethod": "DELETE", - "parameters": { - "courseId": { - "location": "path", - "description": "Identifier of the course.\nThis identifier can be either the Classroom-assigned identifier or an\nalias.", - "required": true, - "type": "string" - }, - "id": { - "location": "path", - "description": "Identifier of the course work to delete.\nThis identifier is a Classroom-assigned identifier.", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/classroom.coursework.students" - ], - "flatPath": "v1/courses/{courseId}/courseWork/{id}" + ] }, "list": { - "response": { - "$ref": "ListCourseWorkResponse" - }, + "description": "Returns a list of course work that the requester is permitted to view.\n\nCourse students may only view `PUBLISHED` course work. Course teachers\nand domain administrators may view all course work.\n\nThis method returns the following error codes:\n\n* `PERMISSION_DENIED` if the requesting user is not permitted to access\nthe requested course or for access errors.\n* `INVALID_ARGUMENT` if the request is malformed.\n* `NOT_FOUND` if the requested course does not exist.", + "flatPath": "v1/courses/{courseId}/courseWork", + "httpMethod": "GET", + "id": "classroom.courses.courseWork.list", "parameterOrder": [ "courseId" ], - "httpMethod": "GET", "parameters": { "courseId": { "description": "Identifier of the course.\nThis identifier can be either the Classroom-assigned identifier or an\nalias.", + "location": "path", "required": true, - "type": "string", - "location": "path" - }, - "orderBy": { - "location": "query", - "description": "Optional sort ordering for results. A comma-separated list of fields with\nan optional sort direction keyword. Supported fields are `updateTime`\nand `dueDate`. Supported direction keywords are `asc` and `desc`.\nIf not specified, `updateTime desc` is the default behavior.\nExamples: `dueDate asc,updateTime desc`, `updateTime,dueDate desc`", "type": "string" }, - "pageToken": { - "description": "nextPageToken\nvalue returned from a previous\nlist call,\nindicating that the subsequent page of results should be returned.\n\nThe list request\nmust be otherwise identical to the one that resulted in this token.", - "type": "string", - "location": "query" - }, - "pageSize": { - "type": "integer", - "location": "query", - "description": "Maximum number of items to return. Zero or unspecified indicates that the\nserver may assign a maximum.\n\nThe server may return fewer than the specified number of results.", - "format": "int32" - }, "courseWorkStates": { "description": "Restriction on the work status to return. Only courseWork that matches\nis returned. If unspecified, items with a work status of `PUBLISHED`\nis returned.", - "type": "string", - "repeated": true, - "location": "query", "enum": [ "COURSE_WORK_STATE_UNSPECIFIED", "PUBLISHED", "DRAFT", "DELETED" - ] + ], + "location": "query", + "repeated": true, + "type": "string" + }, + "orderBy": { + "description": "Optional sort ordering for results. A comma-separated list of fields with\nan optional sort direction keyword. Supported fields are `updateTime`\nand `dueDate`. Supported direction keywords are `asc` and `desc`.\nIf not specified, `updateTime desc` is the default behavior.\nExamples: `dueDate asc,updateTime desc`, `updateTime,dueDate desc`", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "Maximum number of items to return. Zero or unspecified indicates that the\nserver may assign a maximum.\n\nThe server may return fewer than the specified number of results.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "nextPageToken\nvalue returned from a previous\nlist call,\nindicating that the subsequent page of results should be returned.\n\nThe list request\nmust be otherwise identical to the one that resulted in this token.", + "location": "query", + "type": "string" } }, + "path": "v1/courses/{courseId}/courseWork", + "response": { + "$ref": "ListCourseWorkResponse" + }, "scopes": [ "https://www.googleapis.com/auth/classroom.coursework.me", "https://www.googleapis.com/auth/classroom.coursework.me.readonly", "https://www.googleapis.com/auth/classroom.coursework.students", "https://www.googleapis.com/auth/classroom.coursework.students.readonly" - ], - "flatPath": "v1/courses/{courseId}/courseWork", - "path": "v1/courses/{courseId}/courseWork", - "id": "classroom.courses.courseWork.list", - "description": "Returns a list of course work that the requester is permitted to view.\n\nCourse students may only view `PUBLISHED` course work. Course teachers\nand domain administrators may view all course work.\n\nThis method returns the following error codes:\n\n* `PERMISSION_DENIED` if the requesting user is not permitted to access\nthe requested course or for access errors.\n* `INVALID_ARGUMENT` if the request is malformed.\n* `NOT_FOUND` if the requested course does not exist." + ] }, - "create": { - "response": { - "$ref": "CourseWork" - }, - "parameterOrder": [ - "courseId" - ], + "modifyAssignees": { + "description": "Modifies assignee mode and options of a coursework.\n\nOnly a teacher of the course that contains the coursework may\ncall this method.\n\nThis method returns the following error codes:\n\n* `PERMISSION_DENIED` if the requesting user is not permitted to access the\nrequested course or course work or for access errors.\n* `INVALID_ARGUMENT` if the request is malformed.\n* `NOT_FOUND` if the requested course or course work does not exist.", + "flatPath": "v1/courses/{courseId}/courseWork/{id}:modifyAssignees", "httpMethod": "POST", + "id": "classroom.courses.courseWork.modifyAssignees", + "parameterOrder": [ + "courseId", + "id" + ], "parameters": { "courseId": { - "location": "path", "description": "Identifier of the course.\nThis identifier can be either the Classroom-assigned identifier or an\nalias.", + "location": "path", + "required": true, + "type": "string" + }, + "id": { + "description": "Identifier of the coursework.", + "location": "path", "required": true, "type": "string" } }, + "path": "v1/courses/{courseId}/courseWork/{id}:modifyAssignees", + "request": { + "$ref": "ModifyCourseWorkAssigneesRequest" + }, + "response": { + "$ref": "CourseWork" + }, "scopes": [ "https://www.googleapis.com/auth/classroom.coursework.students" + ] + }, + "patch": { + "description": "Updates one or more fields of a course work.\n\nSee google.classroom.v1.CourseWork for details\nof which fields may be updated and who may change them.\n\nThis request must be made by the Developer Console project of the\n[OAuth client ID](https://support.google.com/cloud/answer/6158849) used to\ncreate the corresponding course work item.\n\nThis method returns the following error codes:\n\n* `PERMISSION_DENIED` if the requesting developer project did not create\nthe corresponding course work, if the user is not permitted to make the\nrequested modification to the student submission, or for\naccess errors.\n* `INVALID_ARGUMENT` if the request is malformed.\n* `FAILED_PRECONDITION` if the requested course work has already been\ndeleted.\n* `NOT_FOUND` if the requested course, course work, or student submission\ndoes not exist.", + "flatPath": "v1/courses/{courseId}/courseWork/{id}", + "httpMethod": "PATCH", + "id": "classroom.courses.courseWork.patch", + "parameterOrder": [ + "courseId", + "id" ], - "flatPath": "v1/courses/{courseId}/courseWork", - "path": "v1/courses/{courseId}/courseWork", - "id": "classroom.courses.courseWork.create", + "parameters": { + "courseId": { + "description": "Identifier of the course.\nThis identifier can be either the Classroom-assigned identifier or an\nalias.", + "location": "path", + "required": true, + "type": "string" + }, + "id": { + "description": "Identifier of the course work.", + "location": "path", + "required": true, + "type": "string" + }, + "updateMask": { + "description": "Mask that identifies which fields on the course work to update.\nThis field is required to do an update. The update fails if invalid\nfields are specified. If a field supports empty values, it can be cleared\nby specifying it in the update mask and not in the CourseWork object. If a\nfield that does not support empty values is included in the update mask and\nnot set in the CourseWork object, an `INVALID_ARGUMENT` error will be\nreturned.\n\nThe following fields may be specified by teachers:\n\n* `title`\n* `description`\n* `state`\n* `due_date`\n* `due_time`\n* `max_points`\n* `scheduled_time`\n* `submission_modification_mode`", + "format": "google-fieldmask", + "location": "query", + "type": "string" + } + }, + "path": "v1/courses/{courseId}/courseWork/{id}", "request": { "$ref": "CourseWork" }, - "description": "Creates course work.\n\nThe resulting course work (and corresponding student submissions) are\nassociated with the Developer Console project of the\n[OAuth client ID](https://support.google.com/cloud/answer/6158849) used to\nmake the request. Classroom API requests to modify course work and student\nsubmissions must be made with an OAuth client ID from the associated\nDeveloper Console project.\n\nThis method returns the following error codes:\n\n* `PERMISSION_DENIED` if the requesting user is not permitted to access the\nrequested course, create course work in the requested course, share a\nDrive attachment, or for access errors.\n* `INVALID_ARGUMENT` if the request is malformed.\n* `NOT_FOUND` if the requested course does not exist.\n* `FAILED_PRECONDITION` for the following request error:\n * AttachmentNotVisible" + "response": { + "$ref": "CourseWork" + }, + "scopes": [ + "https://www.googleapis.com/auth/classroom.coursework.students" + ] } }, "resources": { "studentSubmissions": { "methods": { "get": { - "response": { - "$ref": "StudentSubmission" - }, + "description": "Returns a student submission.\n\n* `PERMISSION_DENIED` if the requesting user is not permitted to access the\nrequested course, course work, or student submission or for\naccess errors.\n* `INVALID_ARGUMENT` if the request is malformed.\n* `NOT_FOUND` if the requested course, course work, or student submission\ndoes not exist.", + "flatPath": "v1/courses/{courseId}/courseWork/{courseWorkId}/studentSubmissions/{id}", + "httpMethod": "GET", + "id": "classroom.courses.courseWork.studentSubmissions.get", "parameterOrder": [ "courseId", "courseWorkId", "id" ], - "httpMethod": "GET", + "parameters": { + "courseId": { + "description": "Identifier of the course.\nThis identifier can be either the Classroom-assigned identifier or an\nalias.", + "location": "path", + "required": true, + "type": "string" + }, + "courseWorkId": { + "description": "Identifier of the course work.", + "location": "path", + "required": true, + "type": "string" + }, + "id": { + "description": "Identifier of the student submission.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/courses/{courseId}/courseWork/{courseWorkId}/studentSubmissions/{id}", + "response": { + "$ref": "StudentSubmission" + }, "scopes": [ "https://www.googleapis.com/auth/classroom.coursework.me", "https://www.googleapis.com/auth/classroom.coursework.me.readonly", @@ -1105,272 +934,53 @@ "https://www.googleapis.com/auth/classroom.coursework.students.readonly", "https://www.googleapis.com/auth/classroom.student-submissions.me.readonly", "https://www.googleapis.com/auth/classroom.student-submissions.students.readonly" - ], - "parameters": { - "id": { - "location": "path", - "description": "Identifier of the student submission.", - "required": true, - "type": "string" - }, - "courseWorkId": { - "description": "Identifier of the course work.", - "required": true, - "type": "string", - "location": "path" - }, - "courseId": { - "location": "path", - "description": "Identifier of the course.\nThis identifier can be either the Classroom-assigned identifier or an\nalias.", - "required": true, - "type": "string" - } - }, - "flatPath": "v1/courses/{courseId}/courseWork/{courseWorkId}/studentSubmissions/{id}", - "path": "v1/courses/{courseId}/courseWork/{courseWorkId}/studentSubmissions/{id}", - "id": "classroom.courses.courseWork.studentSubmissions.get", - "description": "Returns a student submission.\n\n* `PERMISSION_DENIED` if the requesting user is not permitted to access the\nrequested course, course work, or student submission or for\naccess errors.\n* `INVALID_ARGUMENT` if the request is malformed.\n* `NOT_FOUND` if the requested course, course work, or student submission\ndoes not exist." - }, - "patch": { - "response": { - "$ref": "StudentSubmission" - }, - "parameterOrder": [ - "courseId", - "courseWorkId", - "id" - ], - "httpMethod": "PATCH", - "parameters": { - "courseId": { - "location": "path", - "description": "Identifier of the course.\nThis identifier can be either the Classroom-assigned identifier or an\nalias.", - "required": true, - "type": "string" - }, - "id": { - "location": "path", - "description": "Identifier of the student submission.", - "required": true, - "type": "string" - }, - "updateMask": { - "location": "query", - "description": "Mask that identifies which fields on the student submission to update.\nThis field is required to do an update. The update fails if invalid\nfields are specified.\n\nThe following fields may be specified by teachers:\n\n* `draft_grade`\n* `assigned_grade`", - "format": "google-fieldmask", - "type": "string" - }, - "courseWorkId": { - "description": "Identifier of the course work.", - "required": true, - "type": "string", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/classroom.coursework.me", - "https://www.googleapis.com/auth/classroom.coursework.students" - ], - "flatPath": "v1/courses/{courseId}/courseWork/{courseWorkId}/studentSubmissions/{id}", - "path": "v1/courses/{courseId}/courseWork/{courseWorkId}/studentSubmissions/{id}", - "id": "classroom.courses.courseWork.studentSubmissions.patch", - "request": { - "$ref": "StudentSubmission" - }, - "description": "Updates one or more fields of a student submission.\n\nSee google.classroom.v1.StudentSubmission for details\nof which fields may be updated and who may change them.\n\nThis request must be made by the Developer Console project of the\n[OAuth client ID](https://support.google.com/cloud/answer/6158849) used to\ncreate the corresponding course work item.\n\nThis method returns the following error codes:\n\n* `PERMISSION_DENIED` if the requesting developer project did not create\nthe corresponding course work, if the user is not permitted to make the\nrequested modification to the student submission, or for\naccess errors.\n* `INVALID_ARGUMENT` if the request is malformed.\n* `NOT_FOUND` if the requested course, course work, or student submission\ndoes not exist." - }, - "return": { - "scopes": [ - "https://www.googleapis.com/auth/classroom.coursework.students" - ], - "parameters": { - "id": { - "location": "path", - "description": "Identifier of the student submission.", - "required": true, - "type": "string" - }, - "courseWorkId": { - "description": "Identifier of the course work.", - "required": true, - "type": "string", - "location": "path" - }, - "courseId": { - "location": "path", - "description": "Identifier of the course.\nThis identifier can be either the Classroom-assigned identifier or an\nalias.", - "required": true, - "type": "string" - } - }, - "flatPath": "v1/courses/{courseId}/courseWork/{courseWorkId}/studentSubmissions/{id}:return", - "path": "v1/courses/{courseId}/courseWork/{courseWorkId}/studentSubmissions/{id}:return", - "id": "classroom.courses.courseWork.studentSubmissions.return", - "description": "Returns a student submission.\n\nReturning a student submission transfers ownership of attached Drive\nfiles to the student and may also update the submission state.\nUnlike the Classroom application, returning a student submission does not\nset assignedGrade to the draftGrade value.\n\nOnly a teacher of the course that contains the requested student submission\nmay call this method.\n\nThis request must be made by the Developer Console project of the\n[OAuth client ID](https://support.google.com/cloud/answer/6158849) used to\ncreate the corresponding course work item.\n\nThis method returns the following error codes:\n\n* `PERMISSION_DENIED` if the requesting user is not permitted to access the\nrequested course or course work, return the requested student submission,\nor for access errors.\n* `INVALID_ARGUMENT` if the request is malformed.\n* `NOT_FOUND` if the requested course, course work, or student submission\ndoes not exist.", - "request": { - "$ref": "ReturnStudentSubmissionRequest" - }, - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "courseId", - "courseWorkId", - "id" - ], - "httpMethod": "POST" - }, - "reclaim": { - "httpMethod": "POST", - "parameterOrder": [ - "courseId", - "courseWorkId", - "id" - ], - "response": { - "$ref": "Empty" - }, - "parameters": { - "courseId": { - "location": "path", - "description": "Identifier of the course.\nThis identifier can be either the Classroom-assigned identifier or an\nalias.", - "required": true, - "type": "string" - }, - "id": { - "location": "path", - "description": "Identifier of the student submission.", - "required": true, - "type": "string" - }, - "courseWorkId": { - "location": "path", - "description": "Identifier of the course work.", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/classroom.coursework.me" - ], - "flatPath": "v1/courses/{courseId}/courseWork/{courseWorkId}/studentSubmissions/{id}:reclaim", - "id": "classroom.courses.courseWork.studentSubmissions.reclaim", - "path": "v1/courses/{courseId}/courseWork/{courseWorkId}/studentSubmissions/{id}:reclaim", - "request": { - "$ref": "ReclaimStudentSubmissionRequest" - }, - "description": "Reclaims a student submission on behalf of the student that owns it.\n\nReclaiming a student submission transfers ownership of attached Drive\nfiles to the student and update the submission state.\n\nOnly the student that owns the requested student submission may call this\nmethod, and only for a student submission that has been turned in.\n\nThis request must be made by the Developer Console project of the\n[OAuth client ID](https://support.google.com/cloud/answer/6158849) used to\ncreate the corresponding course work item.\n\nThis method returns the following error codes:\n\n* `PERMISSION_DENIED` if the requesting user is not permitted to access the\nrequested course or course work, unsubmit the requested student submission,\nor for access errors.\n* `FAILED_PRECONDITION` if the student submission has not been turned in.\n* `INVALID_ARGUMENT` if the request is malformed.\n* `NOT_FOUND` if the requested course, course work, or student submission\ndoes not exist." - }, - "turnIn": { - "description": "Turns in a student submission.\n\nTurning in a student submission transfers ownership of attached Drive\nfiles to the teacher and may also update the submission state.\n\nThis may only be called by the student that owns the specified student\nsubmission.\n\nThis request must be made by the Developer Console project of the\n[OAuth client ID](https://support.google.com/cloud/answer/6158849) used to\ncreate the corresponding course work item.\n\nThis method returns the following error codes:\n\n* `PERMISSION_DENIED` if the requesting user is not permitted to access the\nrequested course or course work, turn in the requested student submission,\nor for access errors.\n* `INVALID_ARGUMENT` if the request is malformed.\n* `NOT_FOUND` if the requested course, course work, or student submission\ndoes not exist.", - "request": { - "$ref": "TurnInStudentSubmissionRequest" - }, - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "courseId", - "courseWorkId", - "id" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/classroom.coursework.me" - ], - "parameters": { - "courseWorkId": { - "location": "path", - "description": "Identifier of the course work.", - "required": true, - "type": "string" - }, - "courseId": { - "location": "path", - "description": "Identifier of the course.\nThis identifier can be either the Classroom-assigned identifier or an\nalias.", - "required": true, - "type": "string" - }, - "id": { - "location": "path", - "description": "Identifier of the student submission.", - "required": true, - "type": "string" - } - }, - "flatPath": "v1/courses/{courseId}/courseWork/{courseWorkId}/studentSubmissions/{id}:turnIn", - "path": "v1/courses/{courseId}/courseWork/{courseWorkId}/studentSubmissions/{id}:turnIn", - "id": "classroom.courses.courseWork.studentSubmissions.turnIn" - }, - "modifyAttachments": { - "scopes": [ - "https://www.googleapis.com/auth/classroom.coursework.me", - "https://www.googleapis.com/auth/classroom.coursework.students" - ], - "parameters": { - "courseWorkId": { - "location": "path", - "description": "Identifier of the course work.", - "required": true, - "type": "string" - }, - "courseId": { - "description": "Identifier of the course.\nThis identifier can be either the Classroom-assigned identifier or an\nalias.", - "required": true, - "type": "string", - "location": "path" - }, - "id": { - "description": "Identifier of the student submission.", - "required": true, - "type": "string", - "location": "path" - } - }, - "flatPath": "v1/courses/{courseId}/courseWork/{courseWorkId}/studentSubmissions/{id}:modifyAttachments", - "path": "v1/courses/{courseId}/courseWork/{courseWorkId}/studentSubmissions/{id}:modifyAttachments", - "id": "classroom.courses.courseWork.studentSubmissions.modifyAttachments", - "description": "Modifies attachments of student submission.\n\nAttachments may only be added to student submissions belonging to course\nwork objects with a `workType` of `ASSIGNMENT`.\n\nThis request must be made by the Developer Console project of the\n[OAuth client ID](https://support.google.com/cloud/answer/6158849) used to\ncreate the corresponding course work item.\n\nThis method returns the following error codes:\n\n* `PERMISSION_DENIED` if the requesting user is not permitted to access the\nrequested course or course work, if the user is not permitted to modify\nattachments on the requested student submission, or for\naccess errors.\n* `INVALID_ARGUMENT` if the request is malformed.\n* `NOT_FOUND` if the requested course, course work, or student submission\ndoes not exist.", - "request": { - "$ref": "ModifyAttachmentsRequest" - }, - "response": { - "$ref": "StudentSubmission" - }, - "parameterOrder": [ - "courseId", - "courseWorkId", - "id" - ], - "httpMethod": "POST" + ] }, "list": { "description": "Returns a list of student submissions that the requester is permitted to\nview, factoring in the OAuth scopes of the request.\n`-` may be specified as the `course_work_id` to include student\nsubmissions for multiple course work items.\n\nCourse students may only view their own work. Course teachers\nand domain administrators may view all student submissions.\n\nThis method returns the following error codes:\n\n* `PERMISSION_DENIED` if the requesting user is not permitted to access the\nrequested course or course work, or for access errors.\n* `INVALID_ARGUMENT` if the request is malformed.\n* `NOT_FOUND` if the requested course does not exist.", + "flatPath": "v1/courses/{courseId}/courseWork/{courseWorkId}/studentSubmissions", "httpMethod": "GET", + "id": "classroom.courses.courseWork.studentSubmissions.list", "parameterOrder": [ "courseId", "courseWorkId" ], - "response": { - "$ref": "ListStudentSubmissionsResponse" - }, "parameters": { - "pageToken": { + "courseId": { + "description": "Identifier of the course.\nThis identifier can be either the Classroom-assigned identifier or an\nalias.", + "location": "path", + "required": true, + "type": "string" + }, + "courseWorkId": { + "description": "Identifier of the student work to request.\nThis may be set to the string literal `\"-\"` to request student work for\nall course work in the specified course.", + "location": "path", + "required": true, + "type": "string" + }, + "late": { + "description": "Requested lateness value. If specified, returned student submissions are\nrestricted by the requested value.\nIf unspecified, submissions are returned regardless of `late` value.", + "enum": [ + "LATE_VALUES_UNSPECIFIED", + "LATE_ONLY", + "NOT_LATE_ONLY" + ], "location": "query", - "description": "nextPageToken\nvalue returned from a previous\nlist call,\nindicating that the subsequent page of results should be returned.\n\nThe list request\nmust be otherwise identical to the one that resulted in this token.", "type": "string" }, "pageSize": { - "type": "integer", - "location": "query", "description": "Maximum number of items to return. Zero or unspecified indicates that the\nserver may assign a maximum.\n\nThe server may return fewer than the specified number of results.", - "format": "int32" + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "nextPageToken\nvalue returned from a previous\nlist call,\nindicating that the subsequent page of results should be returned.\n\nThe list request\nmust be otherwise identical to the one that resulted in this token.", + "location": "query", + "type": "string" }, "states": { "description": "Requested submission states. If specified, returned student submissions\nmatch one of the specified submission states.", - "type": "string", - "repeated": true, - "location": "query", "enum": [ "SUBMISSION_STATE_UNSPECIFIED", "NEW", @@ -1378,36 +988,21 @@ "TURNED_IN", "RETURNED", "RECLAIMED_BY_STUDENT" - ] - }, - "userId": { - "type": "string", + ], "location": "query", - "description": "Optional argument to restrict returned student work to those owned by the\nstudent with the specified identifier. The identifier can be one of the\nfollowing:\n\n* the numeric identifier for the user\n* the email address of the user\n* the string literal `\"me\"`, indicating the requesting user" - }, - "courseWorkId": { - "description": "Identifier of the student work to request.\nThis may be set to the string literal `\"-\"` to request student work for\nall course work in the specified course.", - "required": true, - "type": "string", - "location": "path" - }, - "courseId": { - "location": "path", - "description": "Identifier of the course.\nThis identifier can be either the Classroom-assigned identifier or an\nalias.", - "required": true, + "repeated": true, "type": "string" }, - "late": { - "description": "Requested lateness value. If specified, returned student submissions are\nrestricted by the requested value.\nIf unspecified, submissions are returned regardless of `late` value.", - "type": "string", + "userId": { + "description": "Optional argument to restrict returned student work to those owned by the\nstudent with the specified identifier. The identifier can be one of the\nfollowing:\n\n* the numeric identifier for the user\n* the email address of the user\n* the string literal `\"me\"`, indicating the requesting user", "location": "query", - "enum": [ - "LATE_VALUES_UNSPECIFIED", - "LATE_ONLY", - "NOT_LATE_ONLY" - ] + "type": "string" } }, + "path": "v1/courses/{courseId}/courseWork/{courseWorkId}/studentSubmissions", + "response": { + "$ref": "ListStudentSubmissionsResponse" + }, "scopes": [ "https://www.googleapis.com/auth/classroom.coursework.me", "https://www.googleapis.com/auth/classroom.coursework.me.readonly", @@ -1415,150 +1010,760 @@ "https://www.googleapis.com/auth/classroom.coursework.students.readonly", "https://www.googleapis.com/auth/classroom.student-submissions.me.readonly", "https://www.googleapis.com/auth/classroom.student-submissions.students.readonly" + ] + }, + "modifyAttachments": { + "description": "Modifies attachments of student submission.\n\nAttachments may only be added to student submissions belonging to course\nwork objects with a `workType` of `ASSIGNMENT`.\n\nThis request must be made by the Developer Console project of the\n[OAuth client ID](https://support.google.com/cloud/answer/6158849) used to\ncreate the corresponding course work item.\n\nThis method returns the following error codes:\n\n* `PERMISSION_DENIED` if the requesting user is not permitted to access the\nrequested course or course work, if the user is not permitted to modify\nattachments on the requested student submission, or for\naccess errors.\n* `INVALID_ARGUMENT` if the request is malformed.\n* `NOT_FOUND` if the requested course, course work, or student submission\ndoes not exist.", + "flatPath": "v1/courses/{courseId}/courseWork/{courseWorkId}/studentSubmissions/{id}:modifyAttachments", + "httpMethod": "POST", + "id": "classroom.courses.courseWork.studentSubmissions.modifyAttachments", + "parameterOrder": [ + "courseId", + "courseWorkId", + "id" ], - "flatPath": "v1/courses/{courseId}/courseWork/{courseWorkId}/studentSubmissions", - "id": "classroom.courses.courseWork.studentSubmissions.list", - "path": "v1/courses/{courseId}/courseWork/{courseWorkId}/studentSubmissions" + "parameters": { + "courseId": { + "description": "Identifier of the course.\nThis identifier can be either the Classroom-assigned identifier or an\nalias.", + "location": "path", + "required": true, + "type": "string" + }, + "courseWorkId": { + "description": "Identifier of the course work.", + "location": "path", + "required": true, + "type": "string" + }, + "id": { + "description": "Identifier of the student submission.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/courses/{courseId}/courseWork/{courseWorkId}/studentSubmissions/{id}:modifyAttachments", + "request": { + "$ref": "ModifyAttachmentsRequest" + }, + "response": { + "$ref": "StudentSubmission" + }, + "scopes": [ + "https://www.googleapis.com/auth/classroom.coursework.me", + "https://www.googleapis.com/auth/classroom.coursework.students" + ] + }, + "patch": { + "description": "Updates one or more fields of a student submission.\n\nSee google.classroom.v1.StudentSubmission for details\nof which fields may be updated and who may change them.\n\nThis request must be made by the Developer Console project of the\n[OAuth client ID](https://support.google.com/cloud/answer/6158849) used to\ncreate the corresponding course work item.\n\nThis method returns the following error codes:\n\n* `PERMISSION_DENIED` if the requesting developer project did not create\nthe corresponding course work, if the user is not permitted to make the\nrequested modification to the student submission, or for\naccess errors.\n* `INVALID_ARGUMENT` if the request is malformed.\n* `NOT_FOUND` if the requested course, course work, or student submission\ndoes not exist.", + "flatPath": "v1/courses/{courseId}/courseWork/{courseWorkId}/studentSubmissions/{id}", + "httpMethod": "PATCH", + "id": "classroom.courses.courseWork.studentSubmissions.patch", + "parameterOrder": [ + "courseId", + "courseWorkId", + "id" + ], + "parameters": { + "courseId": { + "description": "Identifier of the course.\nThis identifier can be either the Classroom-assigned identifier or an\nalias.", + "location": "path", + "required": true, + "type": "string" + }, + "courseWorkId": { + "description": "Identifier of the course work.", + "location": "path", + "required": true, + "type": "string" + }, + "id": { + "description": "Identifier of the student submission.", + "location": "path", + "required": true, + "type": "string" + }, + "updateMask": { + "description": "Mask that identifies which fields on the student submission to update.\nThis field is required to do an update. The update fails if invalid\nfields are specified.\n\nThe following fields may be specified by teachers:\n\n* `draft_grade`\n* `assigned_grade`", + "format": "google-fieldmask", + "location": "query", + "type": "string" + } + }, + "path": "v1/courses/{courseId}/courseWork/{courseWorkId}/studentSubmissions/{id}", + "request": { + "$ref": "StudentSubmission" + }, + "response": { + "$ref": "StudentSubmission" + }, + "scopes": [ + "https://www.googleapis.com/auth/classroom.coursework.me", + "https://www.googleapis.com/auth/classroom.coursework.students" + ] + }, + "reclaim": { + "description": "Reclaims a student submission on behalf of the student that owns it.\n\nReclaiming a student submission transfers ownership of attached Drive\nfiles to the student and update the submission state.\n\nOnly the student that owns the requested student submission may call this\nmethod, and only for a student submission that has been turned in.\n\nThis request must be made by the Developer Console project of the\n[OAuth client ID](https://support.google.com/cloud/answer/6158849) used to\ncreate the corresponding course work item.\n\nThis method returns the following error codes:\n\n* `PERMISSION_DENIED` if the requesting user is not permitted to access the\nrequested course or course work, unsubmit the requested student submission,\nor for access errors.\n* `FAILED_PRECONDITION` if the student submission has not been turned in.\n* `INVALID_ARGUMENT` if the request is malformed.\n* `NOT_FOUND` if the requested course, course work, or student submission\ndoes not exist.", + "flatPath": "v1/courses/{courseId}/courseWork/{courseWorkId}/studentSubmissions/{id}:reclaim", + "httpMethod": "POST", + "id": "classroom.courses.courseWork.studentSubmissions.reclaim", + "parameterOrder": [ + "courseId", + "courseWorkId", + "id" + ], + "parameters": { + "courseId": { + "description": "Identifier of the course.\nThis identifier can be either the Classroom-assigned identifier or an\nalias.", + "location": "path", + "required": true, + "type": "string" + }, + "courseWorkId": { + "description": "Identifier of the course work.", + "location": "path", + "required": true, + "type": "string" + }, + "id": { + "description": "Identifier of the student submission.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/courses/{courseId}/courseWork/{courseWorkId}/studentSubmissions/{id}:reclaim", + "request": { + "$ref": "ReclaimStudentSubmissionRequest" + }, + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/classroom.coursework.me" + ] + }, + "return": { + "description": "Returns a student submission.\n\nReturning a student submission transfers ownership of attached Drive\nfiles to the student and may also update the submission state.\nUnlike the Classroom application, returning a student submission does not\nset assignedGrade to the draftGrade value.\n\nOnly a teacher of the course that contains the requested student submission\nmay call this method.\n\nThis request must be made by the Developer Console project of the\n[OAuth client ID](https://support.google.com/cloud/answer/6158849) used to\ncreate the corresponding course work item.\n\nThis method returns the following error codes:\n\n* `PERMISSION_DENIED` if the requesting user is not permitted to access the\nrequested course or course work, return the requested student submission,\nor for access errors.\n* `INVALID_ARGUMENT` if the request is malformed.\n* `NOT_FOUND` if the requested course, course work, or student submission\ndoes not exist.", + "flatPath": "v1/courses/{courseId}/courseWork/{courseWorkId}/studentSubmissions/{id}:return", + "httpMethod": "POST", + "id": "classroom.courses.courseWork.studentSubmissions.return", + "parameterOrder": [ + "courseId", + "courseWorkId", + "id" + ], + "parameters": { + "courseId": { + "description": "Identifier of the course.\nThis identifier can be either the Classroom-assigned identifier or an\nalias.", + "location": "path", + "required": true, + "type": "string" + }, + "courseWorkId": { + "description": "Identifier of the course work.", + "location": "path", + "required": true, + "type": "string" + }, + "id": { + "description": "Identifier of the student submission.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/courses/{courseId}/courseWork/{courseWorkId}/studentSubmissions/{id}:return", + "request": { + "$ref": "ReturnStudentSubmissionRequest" + }, + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/classroom.coursework.students" + ] + }, + "turnIn": { + "description": "Turns in a student submission.\n\nTurning in a student submission transfers ownership of attached Drive\nfiles to the teacher and may also update the submission state.\n\nThis may only be called by the student that owns the specified student\nsubmission.\n\nThis request must be made by the Developer Console project of the\n[OAuth client ID](https://support.google.com/cloud/answer/6158849) used to\ncreate the corresponding course work item.\n\nThis method returns the following error codes:\n\n* `PERMISSION_DENIED` if the requesting user is not permitted to access the\nrequested course or course work, turn in the requested student submission,\nor for access errors.\n* `INVALID_ARGUMENT` if the request is malformed.\n* `NOT_FOUND` if the requested course, course work, or student submission\ndoes not exist.", + "flatPath": "v1/courses/{courseId}/courseWork/{courseWorkId}/studentSubmissions/{id}:turnIn", + "httpMethod": "POST", + "id": "classroom.courses.courseWork.studentSubmissions.turnIn", + "parameterOrder": [ + "courseId", + "courseWorkId", + "id" + ], + "parameters": { + "courseId": { + "description": "Identifier of the course.\nThis identifier can be either the Classroom-assigned identifier or an\nalias.", + "location": "path", + "required": true, + "type": "string" + }, + "courseWorkId": { + "description": "Identifier of the course work.", + "location": "path", + "required": true, + "type": "string" + }, + "id": { + "description": "Identifier of the student submission.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/courses/{courseId}/courseWork/{courseWorkId}/studentSubmissions/{id}:turnIn", + "request": { + "$ref": "TurnInStudentSubmissionRequest" + }, + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/classroom.coursework.me" + ] } } } } }, - "teachers": { + "students": { "methods": { - "delete": { - "flatPath": "v1/courses/{courseId}/teachers/{userId}", - "path": "v1/courses/{courseId}/teachers/{userId}", - "id": "classroom.courses.teachers.delete", - "description": "Deletes a teacher of a course.\n\nThis method returns the following error codes:\n\n* `PERMISSION_DENIED` if the requesting user is not permitted to delete\nteachers of this course or for access errors.\n* `NOT_FOUND` if no teacher of this course has the requested ID or if the\ncourse does not exist.\n* `FAILED_PRECONDITION` if the requested ID belongs to the primary teacher\nof this course.", - "response": { - "$ref": "Empty" + "create": { + "description": "Adds a user as a student of a course.\n\nThis method returns the following error codes:\n\n* `PERMISSION_DENIED` if the requesting user is not permitted to create\nstudents in this course or for access errors.\n* `NOT_FOUND` if the requested course ID does not exist.\n* `FAILED_PRECONDITION` if the requested user's account is disabled,\nfor the following request errors:\n * CourseMemberLimitReached\n * CourseNotModifiable\n * UserGroupsMembershipLimitReached\n* `ALREADY_EXISTS` if the user is already a student or teacher in the\ncourse.", + "flatPath": "v1/courses/{courseId}/students", + "httpMethod": "POST", + "id": "classroom.courses.students.create", + "parameterOrder": [ + "courseId" + ], + "parameters": { + "courseId": { + "description": "Identifier of the course to create the student in.\nThis identifier can be either the Classroom-assigned identifier or an\nalias.", + "location": "path", + "required": true, + "type": "string" + }, + "enrollmentCode": { + "description": "Enrollment code of the course to create the student in.\nThis code is required if userId\ncorresponds to the requesting user; it may be omitted if the requesting\nuser has administrative permissions to create students for any user.", + "location": "query", + "type": "string" + } }, + "path": "v1/courses/{courseId}/students", + "request": { + "$ref": "Student" + }, + "response": { + "$ref": "Student" + }, + "scopes": [ + "https://www.googleapis.com/auth/classroom.profile.emails", + "https://www.googleapis.com/auth/classroom.profile.photos", + "https://www.googleapis.com/auth/classroom.rosters" + ] + }, + "delete": { + "description": "Deletes a student of a course.\n\nThis method returns the following error codes:\n\n* `PERMISSION_DENIED` if the requesting user is not permitted to delete\nstudents of this course or for access errors.\n* `NOT_FOUND` if no student of this course has the requested ID or if the\ncourse does not exist.", + "flatPath": "v1/courses/{courseId}/students/{userId}", + "httpMethod": "DELETE", + "id": "classroom.courses.students.delete", "parameterOrder": [ "courseId", "userId" ], - "httpMethod": "DELETE", "parameters": { - "userId": { + "courseId": { + "description": "Identifier of the course.\nThis identifier can be either the Classroom-assigned identifier or an\nalias.", "location": "path", - "description": "Identifier of the teacher to delete. The identifier can be one of the\nfollowing:\n\n* the numeric identifier for the user\n* the email address of the user\n* the string literal `\"me\"`, indicating the requesting user", "required": true, "type": "string" }, - "courseId": { - "description": "Identifier of the course.\nThis identifier can be either the Classroom-assigned identifier or an\nalias.", + "userId": { + "description": "Identifier of the student to delete. The identifier can be one of the\nfollowing:\n\n* the numeric identifier for the user\n* the email address of the user\n* the string literal `\"me\"`, indicating the requesting user", + "location": "path", "required": true, - "type": "string", - "location": "path" + "type": "string" } }, + "path": "v1/courses/{courseId}/students/{userId}", + "response": { + "$ref": "Empty" + }, "scopes": [ "https://www.googleapis.com/auth/classroom.rosters" ] }, "get": { - "response": { - "$ref": "Teacher" - }, + "description": "Returns a student of a course.\n\nThis method returns the following error codes:\n\n* `PERMISSION_DENIED` if the requesting user is not permitted to view\nstudents of this course or for access errors.\n* `NOT_FOUND` if no student of this course has the requested ID or if the\ncourse does not exist.", + "flatPath": "v1/courses/{courseId}/students/{userId}", + "httpMethod": "GET", + "id": "classroom.courses.students.get", "parameterOrder": [ "courseId", "userId" ], - "httpMethod": "GET", "parameters": { - "userId": { - "required": true, - "type": "string", - "location": "path", - "description": "Identifier of the teacher to return. The identifier can be one of the\nfollowing:\n\n* the numeric identifier for the user\n* the email address of the user\n* the string literal `\"me\"`, indicating the requesting user" - }, "courseId": { - "location": "path", "description": "Identifier of the course.\nThis identifier can be either the Classroom-assigned identifier or an\nalias.", + "location": "path", + "required": true, + "type": "string" + }, + "userId": { + "description": "Identifier of the student to return. The identifier can be one of the\nfollowing:\n\n* the numeric identifier for the user\n* the email address of the user\n* the string literal `\"me\"`, indicating the requesting user", + "location": "path", "required": true, "type": "string" } }, + "path": "v1/courses/{courseId}/students/{userId}", + "response": { + "$ref": "Student" + }, "scopes": [ "https://www.googleapis.com/auth/classroom.profile.emails", "https://www.googleapis.com/auth/classroom.profile.photos", "https://www.googleapis.com/auth/classroom.rosters", "https://www.googleapis.com/auth/classroom.rosters.readonly" - ], - "flatPath": "v1/courses/{courseId}/teachers/{userId}", - "path": "v1/courses/{courseId}/teachers/{userId}", - "id": "classroom.courses.teachers.get", - "description": "Returns a teacher of a course.\n\nThis method returns the following error codes:\n\n* `PERMISSION_DENIED` if the requesting user is not permitted to view\nteachers of this course or for access errors.\n* `NOT_FOUND` if no teacher of this course has the requested ID or if the\ncourse does not exist." + ] }, "list": { - "flatPath": "v1/courses/{courseId}/teachers", - "path": "v1/courses/{courseId}/teachers", - "id": "classroom.courses.teachers.list", - "description": "Returns a list of teachers of this course that the requester\nis permitted to view.\n\nThis method returns the following error codes:\n\n* `NOT_FOUND` if the course does not exist.\n* `PERMISSION_DENIED` for access errors.", - "response": { - "$ref": "ListTeachersResponse" - }, + "description": "Returns a list of students of this course that the requester\nis permitted to view.\n\nThis method returns the following error codes:\n\n* `NOT_FOUND` if the course does not exist.\n* `PERMISSION_DENIED` for access errors.", + "flatPath": "v1/courses/{courseId}/students", + "httpMethod": "GET", + "id": "classroom.courses.students.list", "parameterOrder": [ "courseId" ], - "httpMethod": "GET", + "parameters": { + "courseId": { + "description": "Identifier of the course.\nThis identifier can be either the Classroom-assigned identifier or an\nalias.", + "location": "path", + "required": true, + "type": "string" + }, + "pageSize": { + "description": "Maximum number of items to return. Zero means no maximum.\n\nThe server may return fewer than the specified number of results.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "nextPageToken\nvalue returned from a previous\nlist call, indicating that\nthe subsequent page of results should be returned.\n\nThe list request must be\notherwise identical to the one that resulted in this token.", + "location": "query", + "type": "string" + } + }, + "path": "v1/courses/{courseId}/students", + "response": { + "$ref": "ListStudentsResponse" + }, "scopes": [ "https://www.googleapis.com/auth/classroom.profile.emails", "https://www.googleapis.com/auth/classroom.profile.photos", "https://www.googleapis.com/auth/classroom.rosters", "https://www.googleapis.com/auth/classroom.rosters.readonly" + ] + } + } + }, + "teachers": { + "methods": { + "create": { + "description": "Creates a teacher of a course.\n\nThis method returns the following error codes:\n\n* `PERMISSION_DENIED` if the requesting user is not permitted to create\nteachers in this course or for access errors.\n* `NOT_FOUND` if the requested course ID does not exist.\n* `FAILED_PRECONDITION` if the requested user's account is disabled,\nfor the following request errors:\n * CourseMemberLimitReached\n * CourseNotModifiable\n * CourseTeacherLimitReached\n * UserGroupsMembershipLimitReached\n* `ALREADY_EXISTS` if the user is already a teacher or student in the\ncourse.", + "flatPath": "v1/courses/{courseId}/teachers", + "httpMethod": "POST", + "id": "classroom.courses.teachers.create", + "parameterOrder": [ + "courseId" ], "parameters": { - "pageToken": { - "description": "nextPageToken\nvalue returned from a previous\nlist call, indicating that\nthe subsequent page of results should be returned.\n\nThe list request must be\notherwise identical to the one that resulted in this token.", - "type": "string", - "location": "query" - }, - "pageSize": { - "location": "query", - "description": "Maximum number of items to return. Zero means no maximum.\n\nThe server may return fewer than the specified number of results.", - "format": "int32", - "type": "integer" - }, "courseId": { "description": "Identifier of the course.\nThis identifier can be either the Classroom-assigned identifier or an\nalias.", + "location": "path", "required": true, - "type": "string", - "location": "path" + "type": "string" } - } - }, - "create": { + }, + "path": "v1/courses/{courseId}/teachers", + "request": { + "$ref": "Teacher" + }, "response": { "$ref": "Teacher" }, - "parameterOrder": [ - "courseId" - ], - "httpMethod": "POST", "scopes": [ "https://www.googleapis.com/auth/classroom.profile.emails", "https://www.googleapis.com/auth/classroom.profile.photos", "https://www.googleapis.com/auth/classroom.rosters" + ] + }, + "delete": { + "description": "Deletes a teacher of a course.\n\nThis method returns the following error codes:\n\n* `PERMISSION_DENIED` if the requesting user is not permitted to delete\nteachers of this course or for access errors.\n* `NOT_FOUND` if no teacher of this course has the requested ID or if the\ncourse does not exist.\n* `FAILED_PRECONDITION` if the requested ID belongs to the primary teacher\nof this course.", + "flatPath": "v1/courses/{courseId}/teachers/{userId}", + "httpMethod": "DELETE", + "id": "classroom.courses.teachers.delete", + "parameterOrder": [ + "courseId", + "userId" ], "parameters": { "courseId": { - "location": "path", "description": "Identifier of the course.\nThis identifier can be either the Classroom-assigned identifier or an\nalias.", + "location": "path", + "required": true, + "type": "string" + }, + "userId": { + "description": "Identifier of the teacher to delete. The identifier can be one of the\nfollowing:\n\n* the numeric identifier for the user\n* the email address of the user\n* the string literal `\"me\"`, indicating the requesting user", + "location": "path", "required": true, "type": "string" } }, - "flatPath": "v1/courses/{courseId}/teachers", - "path": "v1/courses/{courseId}/teachers", - "id": "classroom.courses.teachers.create", - "description": "Creates a teacher of a course.\n\nThis method returns the following error codes:\n\n* `PERMISSION_DENIED` if the requesting user is not permitted to create\nteachers in this course or for access errors.\n* `NOT_FOUND` if the requested course ID does not exist.\n* `FAILED_PRECONDITION` if the requested user's account is disabled,\nfor the following request errors:\n * CourseMemberLimitReached\n * CourseNotModifiable\n * CourseTeacherLimitReached\n * UserGroupsMembershipLimitReached\n* `ALREADY_EXISTS` if the user is already a teacher or student in the\ncourse.", - "request": { + "path": "v1/courses/{courseId}/teachers/{userId}", + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/classroom.rosters" + ] + }, + "get": { + "description": "Returns a teacher of a course.\n\nThis method returns the following error codes:\n\n* `PERMISSION_DENIED` if the requesting user is not permitted to view\nteachers of this course or for access errors.\n* `NOT_FOUND` if no teacher of this course has the requested ID or if the\ncourse does not exist.", + "flatPath": "v1/courses/{courseId}/teachers/{userId}", + "httpMethod": "GET", + "id": "classroom.courses.teachers.get", + "parameterOrder": [ + "courseId", + "userId" + ], + "parameters": { + "courseId": { + "description": "Identifier of the course.\nThis identifier can be either the Classroom-assigned identifier or an\nalias.", + "location": "path", + "required": true, + "type": "string" + }, + "userId": { + "description": "Identifier of the teacher to return. The identifier can be one of the\nfollowing:\n\n* the numeric identifier for the user\n* the email address of the user\n* the string literal `\"me\"`, indicating the requesting user", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/courses/{courseId}/teachers/{userId}", + "response": { "$ref": "Teacher" - } + }, + "scopes": [ + "https://www.googleapis.com/auth/classroom.profile.emails", + "https://www.googleapis.com/auth/classroom.profile.photos", + "https://www.googleapis.com/auth/classroom.rosters", + "https://www.googleapis.com/auth/classroom.rosters.readonly" + ] + }, + "list": { + "description": "Returns a list of teachers of this course that the requester\nis permitted to view.\n\nThis method returns the following error codes:\n\n* `NOT_FOUND` if the course does not exist.\n* `PERMISSION_DENIED` for access errors.", + "flatPath": "v1/courses/{courseId}/teachers", + "httpMethod": "GET", + "id": "classroom.courses.teachers.list", + "parameterOrder": [ + "courseId" + ], + "parameters": { + "courseId": { + "description": "Identifier of the course.\nThis identifier can be either the Classroom-assigned identifier or an\nalias.", + "location": "path", + "required": true, + "type": "string" + }, + "pageSize": { + "description": "Maximum number of items to return. Zero means no maximum.\n\nThe server may return fewer than the specified number of results.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "nextPageToken\nvalue returned from a previous\nlist call, indicating that\nthe subsequent page of results should be returned.\n\nThe list request must be\notherwise identical to the one that resulted in this token.", + "location": "query", + "type": "string" + } + }, + "path": "v1/courses/{courseId}/teachers", + "response": { + "$ref": "ListTeachersResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/classroom.profile.emails", + "https://www.googleapis.com/auth/classroom.profile.photos", + "https://www.googleapis.com/auth/classroom.rosters", + "https://www.googleapis.com/auth/classroom.rosters.readonly" + ] } } + }, + "topics": { + "methods": { + "get": { + "description": "Returns a topic.\n\nThis method returns the following error codes:\n\n* `PERMISSION_DENIED` if the requesting user is not permitted to access the\nrequested course or topic, or for access errors.\n* `INVALID_ARGUMENT` if the request is malformed.\n* `NOT_FOUND` if the requested course or topic does not exist.", + "flatPath": "v1/courses/{courseId}/topics/{id}", + "httpMethod": "GET", + "id": "classroom.courses.topics.get", + "parameterOrder": [ + "courseId", + "id" + ], + "parameters": { + "courseId": { + "description": "Identifier of the course.", + "location": "path", + "required": true, + "type": "string" + }, + "id": { + "description": "Identifier of the topic.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/courses/{courseId}/topics/{id}", + "response": { + "$ref": "Topic" + }, + "scopes": [ + "https://www.googleapis.com/auth/classroom.coursework.me", + "https://www.googleapis.com/auth/classroom.coursework.me.readonly", + "https://www.googleapis.com/auth/classroom.coursework.students", + "https://www.googleapis.com/auth/classroom.coursework.students.readonly" + ] + }, + "list": { + "description": "Returns the list of topics that the requester is permitted to view.\n\nThis method returns the following error codes:\n\n* `PERMISSION_DENIED` if the requesting user is not permitted to access\nthe requested course or for access errors.\n* `INVALID_ARGUMENT` if the request is malformed.\n* `NOT_FOUND` if the requested course does not exist.", + "flatPath": "v1/courses/{courseId}/topics", + "httpMethod": "GET", + "id": "classroom.courses.topics.list", + "parameterOrder": [ + "courseId" + ], + "parameters": { + "courseId": { + "description": "Identifier of the course.\nThis identifier can be either the Classroom-assigned identifier or an\nalias.", + "location": "path", + "required": true, + "type": "string" + }, + "pageSize": { + "description": "Maximum number of items to return. Zero or unspecified indicates that the\nserver may assign a maximum.\n\nThe server may return fewer than the specified number of results.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "nextPageToken\nvalue returned from a previous\nlist call,\nindicating that the subsequent page of results should be returned.\n\nThe list request\nmust be otherwise identical to the one that resulted in this token.", + "location": "query", + "type": "string" + } + }, + "path": "v1/courses/{courseId}/topics", + "response": { + "$ref": "ListTopicResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/classroom.coursework.me", + "https://www.googleapis.com/auth/classroom.coursework.me.readonly", + "https://www.googleapis.com/auth/classroom.coursework.students", + "https://www.googleapis.com/auth/classroom.coursework.students.readonly" + ] + } + } + } + } + }, + "invitations": { + "methods": { + "accept": { + "description": "Accepts an invitation, removing it and adding the invited user to the\nteachers or students (as appropriate) of the specified course. Only the\ninvited user may accept an invitation.\n\nThis method returns the following error codes:\n\n* `PERMISSION_DENIED` if the requesting user is not permitted to accept the\nrequested invitation or for access errors.\n* `FAILED_PRECONDITION` for the following request errors:\n * CourseMemberLimitReached\n * CourseNotModifiable\n * CourseTeacherLimitReached\n * UserGroupsMembershipLimitReached\n* `NOT_FOUND` if no invitation exists with the requested ID.", + "flatPath": "v1/invitations/{id}:accept", + "httpMethod": "POST", + "id": "classroom.invitations.accept", + "parameterOrder": [ + "id" + ], + "parameters": { + "id": { + "description": "Identifier of the invitation to accept.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/invitations/{id}:accept", + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/classroom.rosters" + ] + }, + "create": { + "description": "Creates an invitation. Only one invitation for a user and course may exist\nat a time. Delete and re-create an invitation to make changes.\n\nThis method returns the following error codes:\n\n* `PERMISSION_DENIED` if the requesting user is not permitted to create\ninvitations for this course or for access errors.\n* `NOT_FOUND` if the course or the user does not exist.\n* `FAILED_PRECONDITION` if the requested user's account is disabled or if\nthe user already has this role or a role with greater permissions.\n* `ALREADY_EXISTS` if an invitation for the specified user and course\nalready exists.", + "flatPath": "v1/invitations", + "httpMethod": "POST", + "id": "classroom.invitations.create", + "parameterOrder": [], + "parameters": {}, + "path": "v1/invitations", + "request": { + "$ref": "Invitation" + }, + "response": { + "$ref": "Invitation" + }, + "scopes": [ + "https://www.googleapis.com/auth/classroom.rosters" + ] + }, + "delete": { + "description": "Deletes an invitation.\n\nThis method returns the following error codes:\n\n* `PERMISSION_DENIED` if the requesting user is not permitted to delete the\nrequested invitation or for access errors.\n* `NOT_FOUND` if no invitation exists with the requested ID.", + "flatPath": "v1/invitations/{id}", + "httpMethod": "DELETE", + "id": "classroom.invitations.delete", + "parameterOrder": [ + "id" + ], + "parameters": { + "id": { + "description": "Identifier of the invitation to delete.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/invitations/{id}", + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/classroom.rosters" + ] + }, + "get": { + "description": "Returns an invitation.\n\nThis method returns the following error codes:\n\n* `PERMISSION_DENIED` if the requesting user is not permitted to view the\nrequested invitation or for access errors.\n* `NOT_FOUND` if no invitation exists with the requested ID.", + "flatPath": "v1/invitations/{id}", + "httpMethod": "GET", + "id": "classroom.invitations.get", + "parameterOrder": [ + "id" + ], + "parameters": { + "id": { + "description": "Identifier of the invitation to return.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/invitations/{id}", + "response": { + "$ref": "Invitation" + }, + "scopes": [ + "https://www.googleapis.com/auth/classroom.rosters", + "https://www.googleapis.com/auth/classroom.rosters.readonly" + ] + }, + "list": { + "description": "Returns a list of invitations that the requesting user is permitted to\nview, restricted to those that match the list request.\n\n*Note:* At least one of `user_id` or `course_id` must be supplied. Both\nfields can be supplied.\n\nThis method returns the following error codes:\n\n* `PERMISSION_DENIED` for access errors.", + "flatPath": "v1/invitations", + "httpMethod": "GET", + "id": "classroom.invitations.list", + "parameterOrder": [], + "parameters": { + "courseId": { + "description": "Restricts returned invitations to those for a course with the specified\nidentifier.", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "Maximum number of items to return. Zero means no maximum.\n\nThe server may return fewer than the specified number of results.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "nextPageToken\nvalue returned from a previous\nlist call, indicating\nthat the subsequent page of results should be returned.\n\nThe list request must be\notherwise identical to the one that resulted in this token.", + "location": "query", + "type": "string" + }, + "userId": { + "description": "Restricts returned invitations to those for a specific user. The identifier\ncan be one of the following:\n\n* the numeric identifier for the user\n* the email address of the user\n* the string literal `\"me\"`, indicating the requesting user", + "location": "query", + "type": "string" + } + }, + "path": "v1/invitations", + "response": { + "$ref": "ListInvitationsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/classroom.rosters", + "https://www.googleapis.com/auth/classroom.rosters.readonly" + ] + } + } + }, + "registrations": { + "methods": { + "create": { + "description": "Creates a `Registration`, causing Classroom to start sending notifications\nfrom the provided `feed` to the provided `destination`.\n\nReturns the created `Registration`. Currently, this will be the same as\nthe argument, but with server-assigned fields such as `expiry_time` and\n`id` filled in.\n\nNote that any value specified for the `expiry_time` or `id` fields will be\nignored.\n\nWhile Classroom may validate the `destination` and return errors on a best\neffort basis, it is the caller's responsibility to ensure that it exists\nand that Classroom has permission to publish to it.\n\nThis method may return the following error codes:\n\n* `PERMISSION_DENIED` if:\n * the authenticated user does not have permission to receive\n notifications from the requested field; or\n * the credential provided does not include the appropriate scope for the\n requested feed.\n * another access error is encountered.\n* `INVALID_ARGUMENT` if:\n * no `destination` is specified, or the specified `destination` is not\n valid; or\n * no `feed` is specified, or the specified `feed` is not valid.\n* `NOT_FOUND` if:\n * the specified `feed` cannot be located, or the requesting user does not\n have permission to determine whether or not it exists; or\n * the specified `destination` cannot be located, or Classroom has not\n been granted permission to publish to it.", + "flatPath": "v1/registrations", + "httpMethod": "POST", + "id": "classroom.registrations.create", + "parameterOrder": [], + "parameters": {}, + "path": "v1/registrations", + "request": { + "$ref": "Registration" + }, + "response": { + "$ref": "Registration" + }, + "scopes": [ + "https://www.googleapis.com/auth/classroom.push-notifications", + "https://www.googleapis.com/auth/classroom.rosters", + "https://www.googleapis.com/auth/classroom.rosters.readonly" + ] + }, + "delete": { + "description": "Deletes a `Registration`, causing Classroom to stop sending notifications\nfor that `Registration`.", + "flatPath": "v1/registrations/{registrationId}", + "httpMethod": "DELETE", + "id": "classroom.registrations.delete", + "parameterOrder": [ + "registrationId" + ], + "parameters": { + "registrationId": { + "description": "The `registration_id` of the `Registration` to be deleted.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/registrations/{registrationId}", + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/classroom.push-notifications", + "https://www.googleapis.com/auth/classroom.rosters", + "https://www.googleapis.com/auth/classroom.rosters.readonly" + ] } } }, @@ -1566,185 +1771,185 @@ "methods": { "get": { "description": "Returns a user profile.\n\nThis method returns the following error codes:\n\n* `PERMISSION_DENIED` if the requesting user is not permitted to access\nthis user profile, if no profile exists with the requested ID, or for\naccess errors.", - "response": { - "$ref": "UserProfile" - }, + "flatPath": "v1/userProfiles/{userId}", + "httpMethod": "GET", + "id": "classroom.userProfiles.get", "parameterOrder": [ "userId" ], - "httpMethod": "GET", + "parameters": { + "userId": { + "description": "Identifier of the profile to return. The identifier can be one of the\nfollowing:\n\n* the numeric identifier for the user\n* the email address of the user\n* the string literal `\"me\"`, indicating the requesting user", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/userProfiles/{userId}", + "response": { + "$ref": "UserProfile" + }, "scopes": [ "https://www.googleapis.com/auth/classroom.profile.emails", "https://www.googleapis.com/auth/classroom.profile.photos", "https://www.googleapis.com/auth/classroom.rosters", "https://www.googleapis.com/auth/classroom.rosters.readonly" - ], - "parameters": { - "userId": { - "required": true, - "type": "string", - "location": "path", - "description": "Identifier of the profile to return. The identifier can be one of the\nfollowing:\n\n* the numeric identifier for the user\n* the email address of the user\n* the string literal `\"me\"`, indicating the requesting user" - } - }, - "flatPath": "v1/userProfiles/{userId}", - "path": "v1/userProfiles/{userId}", - "id": "classroom.userProfiles.get" + ] } }, "resources": { "guardianInvitations": { "methods": { "create": { - "request": { - "$ref": "GuardianInvitation" - }, "description": "Creates a guardian invitation, and sends an email to the guardian asking\nthem to confirm that they are the student's guardian.\n\nOnce the guardian accepts the invitation, their `state` will change to\n`COMPLETED` and they will start receiving guardian notifications. A\n`Guardian` resource will also be created to represent the active guardian.\n\nThe request object must have the `student_id` and\n`invited_email_address` fields set. Failing to set these fields, or\nsetting any other fields in the request, will result in an error.\n\nThis method returns the following error codes:\n\n* `PERMISSION_DENIED` if the current user does not have permission to\n manage guardians, if the guardian in question has already rejected\n too many requests for that student, if guardians are not enabled for the\n domain in question, or for other access errors.\n* `RESOURCE_EXHAUSTED` if the student or guardian has exceeded the guardian\n link limit.\n* `INVALID_ARGUMENT` if the guardian email address is not valid (for\n example, if it is too long), or if the format of the student ID provided\n cannot be recognized (it is not an email address, nor a `user_id` from\n this API). This error will also be returned if read-only fields are set,\n or if the `state` field is set to to a value other than `PENDING`.\n* `NOT_FOUND` if the student ID provided is a valid student ID, but\n Classroom has no record of that student.\n* `ALREADY_EXISTS` if there is already a pending guardian invitation for\n the student and `invited_email_address` provided, or if the provided\n `invited_email_address` matches the Google account of an existing\n `Guardian` for this user.", - "response": { - "$ref": "GuardianInvitation" - }, + "flatPath": "v1/userProfiles/{studentId}/guardianInvitations", + "httpMethod": "POST", + "id": "classroom.userProfiles.guardianInvitations.create", "parameterOrder": [ "studentId" ], - "httpMethod": "POST", "parameters": { "studentId": { "description": "ID of the student (in standard format)", + "location": "path", "required": true, - "type": "string", - "location": "path" + "type": "string" } }, + "path": "v1/userProfiles/{studentId}/guardianInvitations", + "request": { + "$ref": "GuardianInvitation" + }, + "response": { + "$ref": "GuardianInvitation" + }, "scopes": [ "https://www.googleapis.com/auth/classroom.guardianlinks.students" + ] + }, + "get": { + "description": "Returns a specific guardian invitation.\n\nThis method returns the following error codes:\n\n* `PERMISSION_DENIED` if the requesting user is not permitted to view\n guardian invitations for the student identified by the `student_id`, if\n guardians are not enabled for the domain in question, or for other\n access errors.\n* `INVALID_ARGUMENT` if a `student_id` is specified, but its format cannot\n be recognized (it is not an email address, nor a `student_id` from the\n API, nor the literal string `me`).\n* `NOT_FOUND` if Classroom cannot find any record of the given student or\n `invitation_id`. May also be returned if the student exists, but the\n requesting user does not have access to see that student.", + "flatPath": "v1/userProfiles/{studentId}/guardianInvitations/{invitationId}", + "httpMethod": "GET", + "id": "classroom.userProfiles.guardianInvitations.get", + "parameterOrder": [ + "studentId", + "invitationId" ], - "flatPath": "v1/userProfiles/{studentId}/guardianInvitations", - "path": "v1/userProfiles/{studentId}/guardianInvitations", - "id": "classroom.userProfiles.guardianInvitations.create" + "parameters": { + "invitationId": { + "description": "The `id` field of the `GuardianInvitation` being requested.", + "location": "path", + "required": true, + "type": "string" + }, + "studentId": { + "description": "The ID of the student whose guardian invitation is being requested.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/userProfiles/{studentId}/guardianInvitations/{invitationId}", + "response": { + "$ref": "GuardianInvitation" + }, + "scopes": [ + "https://www.googleapis.com/auth/classroom.guardianlinks.students", + "https://www.googleapis.com/auth/classroom.guardianlinks.students.readonly" + ] }, "list": { - "response": { - "$ref": "ListGuardianInvitationsResponse" - }, + "description": "Returns a list of guardian invitations that the requesting user is\npermitted to view, filtered by the parameters provided.\n\nThis method returns the following error codes:\n\n* `PERMISSION_DENIED` if a `student_id` is specified, and the requesting\n user is not permitted to view guardian invitations for that student, if\n `\"-\"` is specified as the `student_id` and the user is not a domain\n administrator, if guardians are not enabled for the domain in question,\n or for other access errors.\n* `INVALID_ARGUMENT` if a `student_id` is specified, but its format cannot\n be recognized (it is not an email address, nor a `student_id` from the\n API, nor the literal string `me`). May also be returned if an invalid\n `page_token` or `state` is provided.\n* `NOT_FOUND` if a `student_id` is specified, and its format can be\n recognized, but Classroom has no record of that student.", + "flatPath": "v1/userProfiles/{studentId}/guardianInvitations", + "httpMethod": "GET", + "id": "classroom.userProfiles.guardianInvitations.list", "parameterOrder": [ "studentId" ], - "httpMethod": "GET", "parameters": { - "studentId": { - "description": "The ID of the student whose guardian invitations are to be returned.\nThe identifier can be one of the following:\n\n* the numeric identifier for the user\n* the email address of the user\n* the string literal `\"me\"`, indicating the requesting user\n* the string literal `\"-\"`, indicating that results should be returned for\n all students that the requesting user is permitted to view guardian\n invitations.", - "required": true, - "type": "string", - "location": "path" - }, - "pageToken": { - "description": "nextPageToken\nvalue returned from a previous\nlist call,\nindicating that the subsequent page of results should be returned.\n\nThe list request\nmust be otherwise identical to the one that resulted in this token.", - "type": "string", - "location": "query" - }, "invitedEmailAddress": { - "location": "query", "description": "If specified, only results with the specified `invited_email_address`\nwill be returned.", - "type": "string" - }, - "states": { - "repeated": true, "location": "query", - "enum": [ - "GUARDIAN_INVITATION_STATE_UNSPECIFIED", - "PENDING", - "COMPLETE" - ], - "description": "If specified, only results with the specified `state` values will be\nreturned. Otherwise, results with a `state` of `PENDING` will be returned.", "type": "string" }, "pageSize": { "description": "Maximum number of items to return. Zero or unspecified indicates that the\nserver may assign a maximum.\n\nThe server may return fewer than the specified number of results.", "format": "int32", - "type": "integer", - "location": "query" + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "nextPageToken\nvalue returned from a previous\nlist call,\nindicating that the subsequent page of results should be returned.\n\nThe list request\nmust be otherwise identical to the one that resulted in this token.", + "location": "query", + "type": "string" + }, + "states": { + "description": "If specified, only results with the specified `state` values will be\nreturned. Otherwise, results with a `state` of `PENDING` will be returned.", + "enum": [ + "GUARDIAN_INVITATION_STATE_UNSPECIFIED", + "PENDING", + "COMPLETE" + ], + "location": "query", + "repeated": true, + "type": "string" + }, + "studentId": { + "description": "The ID of the student whose guardian invitations are to be returned.\nThe identifier can be one of the following:\n\n* the numeric identifier for the user\n* the email address of the user\n* the string literal `\"me\"`, indicating the requesting user\n* the string literal `\"-\"`, indicating that results should be returned for\n all students that the requesting user is permitted to view guardian\n invitations.", + "location": "path", + "required": true, + "type": "string" } }, + "path": "v1/userProfiles/{studentId}/guardianInvitations", + "response": { + "$ref": "ListGuardianInvitationsResponse" + }, "scopes": [ "https://www.googleapis.com/auth/classroom.guardianlinks.students", "https://www.googleapis.com/auth/classroom.guardianlinks.students.readonly" - ], - "flatPath": "v1/userProfiles/{studentId}/guardianInvitations", - "path": "v1/userProfiles/{studentId}/guardianInvitations", - "id": "classroom.userProfiles.guardianInvitations.list", - "description": "Returns a list of guardian invitations that the requesting user is\npermitted to view, filtered by the parameters provided.\n\nThis method returns the following error codes:\n\n* `PERMISSION_DENIED` if a `student_id` is specified, and the requesting\n user is not permitted to view guardian invitations for that student, if\n `\"-\"` is specified as the `student_id` and the user is not a domain\n administrator, if guardians are not enabled for the domain in question,\n or for other access errors.\n* `INVALID_ARGUMENT` if a `student_id` is specified, but its format cannot\n be recognized (it is not an email address, nor a `student_id` from the\n API, nor the literal string `me`). May also be returned if an invalid\n `page_token` or `state` is provided.\n* `NOT_FOUND` if a `student_id` is specified, and its format can be\n recognized, but Classroom has no record of that student." + ] }, - "get": { - "id": "classroom.userProfiles.guardianInvitations.get", - "path": "v1/userProfiles/{studentId}/guardianInvitations/{invitationId}", - "description": "Returns a specific guardian invitation.\n\nThis method returns the following error codes:\n\n* `PERMISSION_DENIED` if the requesting user is not permitted to view\n guardian invitations for the student identified by the `student_id`, if\n guardians are not enabled for the domain in question, or for other\n access errors.\n* `INVALID_ARGUMENT` if a `student_id` is specified, but its format cannot\n be recognized (it is not an email address, nor a `student_id` from the\n API, nor the literal string `me`).\n* `NOT_FOUND` if Classroom cannot find any record of the given student or\n `invitation_id`. May also be returned if the student exists, but the\n requesting user does not have access to see that student.", - "httpMethod": "GET", + "patch": { + "description": "Modifies a guardian invitation.\n\nCurrently, the only valid modification is to change the `state` from\n`PENDING` to `COMPLETE`. This has the effect of withdrawing the invitation.\n\nThis method returns the following error codes:\n\n* `PERMISSION_DENIED` if the current user does not have permission to\n manage guardians, if guardians are not enabled for the domain in question\n or for other access errors.\n* `FAILED_PRECONDITION` if the guardian link is not in the `PENDING` state.\n* `INVALID_ARGUMENT` if the format of the student ID provided\n cannot be recognized (it is not an email address, nor a `user_id` from\n this API), or if the passed `GuardianInvitation` has a `state` other than\n `COMPLETE`, or if it modifies fields other than `state`.\n* `NOT_FOUND` if the student ID provided is a valid student ID, but\n Classroom has no record of that student, or if the `id` field does not\n refer to a guardian invitation known to Classroom.", + "flatPath": "v1/userProfiles/{studentId}/guardianInvitations/{invitationId}", + "httpMethod": "PATCH", + "id": "classroom.userProfiles.guardianInvitations.patch", "parameterOrder": [ "studentId", "invitationId" ], - "response": { - "$ref": "GuardianInvitation" - }, "parameters": { - "studentId": { + "invitationId": { + "description": "The `id` field of the `GuardianInvitation` to be modified.", "location": "path", - "description": "The ID of the student whose guardian invitation is being requested.", "required": true, "type": "string" }, - "invitationId": { - "required": true, - "type": "string", + "studentId": { + "description": "The ID of the student whose guardian invitation is to be modified.", "location": "path", - "description": "The `id` field of the `GuardianInvitation` being requested." + "required": true, + "type": "string" + }, + "updateMask": { + "description": "Mask that identifies which fields on the course to update.\nThis field is required to do an update. The update will fail if invalid\nfields are specified. The following fields are valid:\n\n* `state`\n\nWhen set in a query parameter, this field should be specified as\n\n`updateMask=\u003cfield1\u003e,\u003cfield2\u003e,...`", + "format": "google-fieldmask", + "location": "query", + "type": "string" } }, - "scopes": [ - "https://www.googleapis.com/auth/classroom.guardianlinks.students", - "https://www.googleapis.com/auth/classroom.guardianlinks.students.readonly" - ], - "flatPath": "v1/userProfiles/{studentId}/guardianInvitations/{invitationId}" - }, - "patch": { - "flatPath": "v1/userProfiles/{studentId}/guardianInvitations/{invitationId}", "path": "v1/userProfiles/{studentId}/guardianInvitations/{invitationId}", - "id": "classroom.userProfiles.guardianInvitations.patch", - "description": "Modifies a guardian invitation.\n\nCurrently, the only valid modification is to change the `state` from\n`PENDING` to `COMPLETE`. This has the effect of withdrawing the invitation.\n\nThis method returns the following error codes:\n\n* `PERMISSION_DENIED` if the current user does not have permission to\n manage guardians, if guardians are not enabled for the domain in question\n or for other access errors.\n* `FAILED_PRECONDITION` if the guardian link is not in the `PENDING` state.\n* `INVALID_ARGUMENT` if the format of the student ID provided\n cannot be recognized (it is not an email address, nor a `user_id` from\n this API), or if the passed `GuardianInvitation` has a `state` other than\n `COMPLETE`, or if it modifies fields other than `state`.\n* `NOT_FOUND` if the student ID provided is a valid student ID, but\n Classroom has no record of that student, or if the `id` field does not\n refer to a guardian invitation known to Classroom.", "request": { "$ref": "GuardianInvitation" }, "response": { "$ref": "GuardianInvitation" }, - "parameterOrder": [ - "studentId", - "invitationId" - ], - "httpMethod": "PATCH", "scopes": [ "https://www.googleapis.com/auth/classroom.guardianlinks.students" - ], - "parameters": { - "invitationId": { - "required": true, - "type": "string", - "location": "path", - "description": "The `id` field of the `GuardianInvitation` to be modified." - }, - "updateMask": { - "description": "Mask that identifies which fields on the course to update.\nThis field is required to do an update. The update will fail if invalid\nfields are specified. The following fields are valid:\n\n* `state`\n\nWhen set in a query parameter, this field should be specified as\n\n`updateMask=\u003cfield1\u003e,\u003cfield2\u003e,...`", - "format": "google-fieldmask", - "type": "string", - "location": "query" - }, - "studentId": { - "required": true, - "type": "string", - "location": "path", - "description": "The ID of the student whose guardian invitation is to be modified." - } - } + ] } } }, @@ -1752,104 +1957,104 @@ "methods": { "delete": { "description": "Deletes a guardian.\n\nThe guardian will no longer receive guardian notifications and the guardian\nwill no longer be accessible via the API.\n\nThis method returns the following error codes:\n\n* `PERMISSION_DENIED` if no user that matches the provided `student_id`\n is visible to the requesting user, if the requesting user is not\n permitted to manage guardians for the student identified by the\n `student_id`, if guardians are not enabled for the domain in question,\n or for other access errors.\n* `INVALID_ARGUMENT` if a `student_id` is specified, but its format cannot\n be recognized (it is not an email address, nor a `student_id` from the\n API).\n* `NOT_FOUND` if the requesting user is permitted to modify guardians for\n the requested `student_id`, but no `Guardian` record exists for that\n student with the provided `guardian_id`.", - "response": { - "$ref": "Empty" - }, + "flatPath": "v1/userProfiles/{studentId}/guardians/{guardianId}", + "httpMethod": "DELETE", + "id": "classroom.userProfiles.guardians.delete", "parameterOrder": [ "studentId", "guardianId" ], - "httpMethod": "DELETE", "parameters": { - "studentId": { + "guardianId": { + "description": "The `id` field from a `Guardian`.", "location": "path", - "description": "The student whose guardian is to be deleted. One of the following:\n\n* the numeric identifier for the user\n* the email address of the user\n* the string literal `\"me\"`, indicating the requesting user", "required": true, "type": "string" }, - "guardianId": { - "description": "The `id` field from a `Guardian`.", + "studentId": { + "description": "The student whose guardian is to be deleted. One of the following:\n\n* the numeric identifier for the user\n* the email address of the user\n* the string literal `\"me\"`, indicating the requesting user", + "location": "path", "required": true, - "type": "string", - "location": "path" + "type": "string" } }, + "path": "v1/userProfiles/{studentId}/guardians/{guardianId}", + "response": { + "$ref": "Empty" + }, "scopes": [ "https://www.googleapis.com/auth/classroom.guardianlinks.students" - ], - "flatPath": "v1/userProfiles/{studentId}/guardians/{guardianId}", - "path": "v1/userProfiles/{studentId}/guardians/{guardianId}", - "id": "classroom.userProfiles.guardians.delete" + ] }, - "list": { - "description": "Returns a list of guardians that the requesting user is permitted to\nview, restricted to those that match the request.\n\nTo list guardians for any student that the requesting user may view\nguardians for, use the literal character `-` for the student ID.\n\nThis method returns the following error codes:\n\n* `PERMISSION_DENIED` if a `student_id` is specified, and the requesting\n user is not permitted to view guardian information for that student, if\n `\"-\"` is specified as the `student_id` and the user is not a domain\n administrator, if guardians are not enabled for the domain in question,\n if the `invited_email_address` filter is set by a user who is not a\n domain administrator, or for other access errors.\n* `INVALID_ARGUMENT` if a `student_id` is specified, but its format cannot\n be recognized (it is not an email address, nor a `student_id` from the\n API, nor the literal string `me`). May also be returned if an invalid\n `page_token` is provided.\n* `NOT_FOUND` if a `student_id` is specified, and its format can be\n recognized, but Classroom has no record of that student.", - "response": { - "$ref": "ListGuardiansResponse" - }, - "parameterOrder": [ - "studentId" - ], + "get": { + "description": "Returns a specific guardian.\n\nThis method returns the following error codes:\n\n* `PERMISSION_DENIED` if no user that matches the provided `student_id`\n is visible to the requesting user, if the requesting user is not\n permitted to view guardian information for the student identified by the\n `student_id`, if guardians are not enabled for the domain in question,\n or for other access errors.\n* `INVALID_ARGUMENT` if a `student_id` is specified, but its format cannot\n be recognized (it is not an email address, nor a `student_id` from the\n API, nor the literal string `me`).\n* `NOT_FOUND` if the requesting user is permitted to view guardians for\n the requested `student_id`, but no `Guardian` record exists for that\n student that matches the provided `guardian_id`.", + "flatPath": "v1/userProfiles/{studentId}/guardians/{guardianId}", "httpMethod": "GET", + "id": "classroom.userProfiles.guardians.get", + "parameterOrder": [ + "studentId", + "guardianId" + ], + "parameters": { + "guardianId": { + "description": "The `id` field from a `Guardian`.", + "location": "path", + "required": true, + "type": "string" + }, + "studentId": { + "description": "The student whose guardian is being requested. One of the following:\n\n* the numeric identifier for the user\n* the email address of the user\n* the string literal `\"me\"`, indicating the requesting user", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/userProfiles/{studentId}/guardians/{guardianId}", + "response": { + "$ref": "Guardian" + }, "scopes": [ "https://www.googleapis.com/auth/classroom.guardianlinks.me.readonly", "https://www.googleapis.com/auth/classroom.guardianlinks.students", "https://www.googleapis.com/auth/classroom.guardianlinks.students.readonly" + ] + }, + "list": { + "description": "Returns a list of guardians that the requesting user is permitted to\nview, restricted to those that match the request.\n\nTo list guardians for any student that the requesting user may view\nguardians for, use the literal character `-` for the student ID.\n\nThis method returns the following error codes:\n\n* `PERMISSION_DENIED` if a `student_id` is specified, and the requesting\n user is not permitted to view guardian information for that student, if\n `\"-\"` is specified as the `student_id` and the user is not a domain\n administrator, if guardians are not enabled for the domain in question,\n if the `invited_email_address` filter is set by a user who is not a\n domain administrator, or for other access errors.\n* `INVALID_ARGUMENT` if a `student_id` is specified, but its format cannot\n be recognized (it is not an email address, nor a `student_id` from the\n API, nor the literal string `me`). May also be returned if an invalid\n `page_token` is provided.\n* `NOT_FOUND` if a `student_id` is specified, and its format can be\n recognized, but Classroom has no record of that student.", + "flatPath": "v1/userProfiles/{studentId}/guardians", + "httpMethod": "GET", + "id": "classroom.userProfiles.guardians.list", + "parameterOrder": [ + "studentId" ], "parameters": { - "studentId": { - "description": "Filter results by the student who the guardian is linked to.\nThe identifier can be one of the following:\n\n* the numeric identifier for the user\n* the email address of the user\n* the string literal `\"me\"`, indicating the requesting user\n* the string literal `\"-\"`, indicating that results should be returned for\n all students that the requesting user has access to view.", - "required": true, - "type": "string", - "location": "path" + "invitedEmailAddress": { + "description": "Filter results by the email address that the original invitation was sent\nto, resulting in this guardian link.\nThis filter can only be used by domain administrators.", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "Maximum number of items to return. Zero or unspecified indicates that the\nserver may assign a maximum.\n\nThe server may return fewer than the specified number of results.", + "format": "int32", + "location": "query", + "type": "integer" }, "pageToken": { "description": "nextPageToken\nvalue returned from a previous\nlist call,\nindicating that the subsequent page of results should be returned.\n\nThe list request\nmust be otherwise identical to the one that resulted in this token.", - "type": "string", - "location": "query" - }, - "invitedEmailAddress": { - "description": "Filter results by the email address that the original invitation was sent\nto, resulting in this guardian link.\nThis filter can only be used by domain administrators.", - "type": "string", - "location": "query" - }, - "pageSize": { "location": "query", - "description": "Maximum number of items to return. Zero or unspecified indicates that the\nserver may assign a maximum.\n\nThe server may return fewer than the specified number of results.", - "format": "int32", - "type": "integer" - } - }, - "flatPath": "v1/userProfiles/{studentId}/guardians", - "path": "v1/userProfiles/{studentId}/guardians", - "id": "classroom.userProfiles.guardians.list" - }, - "get": { - "flatPath": "v1/userProfiles/{studentId}/guardians/{guardianId}", - "id": "classroom.userProfiles.guardians.get", - "path": "v1/userProfiles/{studentId}/guardians/{guardianId}", - "description": "Returns a specific guardian.\n\nThis method returns the following error codes:\n\n* `PERMISSION_DENIED` if no user that matches the provided `student_id`\n is visible to the requesting user, if the requesting user is not\n permitted to view guardian information for the student identified by the\n `student_id`, if guardians are not enabled for the domain in question,\n or for other access errors.\n* `INVALID_ARGUMENT` if a `student_id` is specified, but its format cannot\n be recognized (it is not an email address, nor a `student_id` from the\n API, nor the literal string `me`).\n* `NOT_FOUND` if the requesting user is permitted to view guardians for\n the requested `student_id`, but no `Guardian` record exists for that\n student that matches the provided `guardian_id`.", - "httpMethod": "GET", - "parameterOrder": [ - "studentId", - "guardianId" - ], - "response": { - "$ref": "Guardian" - }, - "parameters": { - "studentId": { - "required": true, - "type": "string", - "location": "path", - "description": "The student whose guardian is being requested. One of the following:\n\n* the numeric identifier for the user\n* the email address of the user\n* the string literal `\"me\"`, indicating the requesting user" + "type": "string" }, - "guardianId": { + "studentId": { + "description": "Filter results by the student who the guardian is linked to.\nThe identifier can be one of the following:\n\n* the numeric identifier for the user\n* the email address of the user\n* the string literal `\"me\"`, indicating the requesting user\n* the string literal `\"-\"`, indicating that results should be returned for\n all students that the requesting user has access to view.", "location": "path", - "description": "The `id` field from a `Guardian`.", "required": true, "type": "string" } }, + "path": "v1/userProfiles/{studentId}/guardians", + "response": { + "$ref": "ListGuardiansResponse" + }, "scopes": [ "https://www.googleapis.com/auth/classroom.guardianlinks.me.readonly", "https://www.googleapis.com/auth/classroom.guardianlinks.students", @@ -1859,152 +2064,467 @@ } } } - }, - "registrations": { - "methods": { - "create": { - "request": { - "$ref": "Registration" - }, - "description": "Creates a `Registration`, causing Classroom to start sending notifications\nfrom the provided `feed` to the provided `destination`.\n\nReturns the created `Registration`. Currently, this will be the same as\nthe argument, but with server-assigned fields such as `expiry_time` and\n`id` filled in.\n\nNote that any value specified for the `expiry_time` or `id` fields will be\nignored.\n\nWhile Classroom may validate the `destination` and return errors on a best\neffort basis, it is the caller's responsibility to ensure that it exists\nand that Classroom has permission to publish to it.\n\nThis method may return the following error codes:\n\n* `PERMISSION_DENIED` if:\n * the authenticated user does not have permission to receive\n notifications from the requested field; or\n * the credential provided does not include the appropriate scope for the\n requested feed.\n * another access error is encountered.\n* `INVALID_ARGUMENT` if:\n * no `destination` is specified, or the specified `destination` is not\n valid; or\n * no `feed` is specified, or the specified `feed` is not valid.\n* `NOT_FOUND` if:\n * the specified `feed` cannot be located, or the requesting user does not\n have permission to determine whether or not it exists; or\n * the specified `destination` cannot be located, or Classroom has not\n been granted permission to publish to it.", - "response": { - "$ref": "Registration" - }, - "parameterOrder": [], - "httpMethod": "POST", - "parameters": {}, - "scopes": [ - "https://www.googleapis.com/auth/classroom.push-notifications", - "https://www.googleapis.com/auth/classroom.rosters", - "https://www.googleapis.com/auth/classroom.rosters.readonly" - ], - "flatPath": "v1/registrations", - "path": "v1/registrations", - "id": "classroom.registrations.create" - }, - "delete": { - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "registrationId" - ], - "httpMethod": "DELETE", - "scopes": [ - "https://www.googleapis.com/auth/classroom.push-notifications", - "https://www.googleapis.com/auth/classroom.rosters", - "https://www.googleapis.com/auth/classroom.rosters.readonly" - ], - "parameters": { - "registrationId": { - "description": "The `registration_id` of the `Registration` to be deleted.", - "required": true, - "type": "string", - "location": "path" - } - }, - "flatPath": "v1/registrations/{registrationId}", - "path": "v1/registrations/{registrationId}", - "id": "classroom.registrations.delete", - "description": "Deletes a `Registration`, causing Classroom to stop sending notifications\nfor that `Registration`." - } - } - } - }, - "parameters": { - "key": { - "type": "string", - "location": "query", - "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": { - "location": "query", - "description": "OAuth access token.", - "type": "string" - }, - "quotaUser": { - "location": "query", - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", - "type": "string" - }, - "pp": { - "description": "Pretty-print response.", - "type": "boolean", - "default": "true", - "location": "query" - }, - "bearer_token": { - "location": "query", - "description": "OAuth bearer token.", - "type": "string" - }, - "oauth_token": { - "location": "query", - "description": "OAuth 2.0 token for the current user.", - "type": "string" - }, - "upload_protocol": { - "type": "string", - "location": "query", - "description": "Upload protocol for media (e.g. \"raw\", \"multipart\")." - }, - "prettyPrint": { - "location": "query", - "description": "Returns response with indentations and line breaks.", - "type": "boolean", - "default": "true" - }, - "fields": { - "description": "Selector specifying which fields to include in a partial response.", - "type": "string", - "location": "query" - }, - "uploadType": { - "location": "query", - "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", - "type": "string" - }, - "callback": { - "location": "query", - "description": "JSONP", - "type": "string" - }, - "$.xgafv": { - "type": "string", - "enumDescriptions": [ - "v1 error format", - "v2 error format" - ], - "location": "query", - "enum": [ - "1", - "2" - ], - "description": "V1 error format." - }, - "alt": { - "enum": [ - "json", - "media", - "proto" - ], - "type": "string", - "enumDescriptions": [ - "Responses with Content-Type of application/json", - "Media download with context-dependent Content-Type", - "Responses with Content-Type of application/x-protobuf" - ], - "location": "query", - "description": "Data format for response.", - "default": "json" } }, + "revision": "20180203", + "rootUrl": "https://classroom.googleapis.com/", "schemas": { - "Date": { - "id": "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`.", - "type": "object", + "Announcement": { + "description": "Announcement created by a teacher for students of the course", + "id": "Announcement", "properties": { + "alternateLink": { + "description": "Absolute link to this announcement in the Classroom web UI.\nThis is only populated if `state` is `PUBLISHED`.\n\nRead-only.", + "type": "string" + }, + "assigneeMode": { + "description": "Assignee mode of the announcement.\nIf unspecified, the default value is `ALL_STUDENTS`.", + "enum": [ + "ASSIGNEE_MODE_UNSPECIFIED", + "ALL_STUDENTS", + "INDIVIDUAL_STUDENTS" + ], + "enumDescriptions": [ + "No mode specified. This is never returned.", + "All students can see the item.\nThis is the default state.", + "A subset of the students can see the item." + ], + "type": "string" + }, + "courseId": { + "description": "Identifier of the course.\n\nRead-only.", + "type": "string" + }, + "creationTime": { + "description": "Timestamp when this announcement was created.\n\nRead-only.", + "format": "google-datetime", + "type": "string" + }, + "creatorUserId": { + "description": "Identifier for the user that created the announcement.\n\nRead-only.", + "type": "string" + }, + "id": { + "description": "Classroom-assigned identifier of this announcement, unique per course.\n\nRead-only.", + "type": "string" + }, + "individualStudentsOptions": { + "$ref": "IndividualStudentsOptions", + "description": "Identifiers of students with access to the announcement.\nThis field is set only if `assigneeMode` is `INDIVIDUAL_STUDENTS`.\nIf the `assigneeMode` is `INDIVIDUAL_STUDENTS`, then only students specified in this\nfield will be able to see the announcement." + }, + "materials": { + "description": "Additional materials.\n\nAnnouncements must have no more than 20 material items.", + "items": { + "$ref": "Material" + }, + "type": "array" + }, + "scheduledTime": { + "description": "Optional timestamp when this announcement is scheduled to be published.", + "format": "google-datetime", + "type": "string" + }, + "state": { + "description": "Status of this announcement.\nIf unspecified, the default state is `DRAFT`.", + "enum": [ + "ANNOUNCEMENT_STATE_UNSPECIFIED", + "PUBLISHED", + "DRAFT", + "DELETED" + ], + "enumDescriptions": [ + "No state specified. This is never returned.", + "Status for announcement that has been published.\nThis is the default state.", + "Status for an announcement that is not yet published.\nAnnouncement in this state is visible only to course teachers and domain\nadministrators.", + "Status for announcement that was published but is now deleted.\nAnnouncement in this state is visible only to course teachers and domain\nadministrators.\nAnnouncement in this state is deleted after some time." + ], + "type": "string" + }, + "text": { + "description": "Description of this announcement.\nThe text must be a valid UTF-8 string containing no more\nthan 30,000 characters.", + "type": "string" + }, + "updateTime": { + "description": "Timestamp of the most recent change to this announcement.\n\nRead-only.", + "format": "google-datetime", + "type": "string" + } + }, + "type": "object" + }, + "Assignment": { + "description": "Additional details for assignments.", + "id": "Assignment", + "properties": { + "studentWorkFolder": { + "$ref": "DriveFolder", + "description": "Drive folder where attachments from student submissions are placed.\nThis is only populated for course teachers and administrators." + } + }, + "type": "object" + }, + "AssignmentSubmission": { + "description": "Student work for an assignment.", + "id": "AssignmentSubmission", + "properties": { + "attachments": { + "description": "Attachments added by the student.\nDrive files that correspond to materials with a share mode of\nSTUDENT_COPY may not exist yet if the student has not accessed the\nassignment in Classroom.\n\nSome attachment metadata is only populated if the requesting user has\npermission to access it. Identifier and alternate_link fields are always\navailable, but others (e.g. title) may not be.", + "items": { + "$ref": "Attachment" + }, + "type": "array" + } + }, + "type": "object" + }, + "Attachment": { + "description": "Attachment added to student assignment work.\n\nWhen creating attachments, setting the `form` field is not supported.", + "id": "Attachment", + "properties": { + "driveFile": { + "$ref": "DriveFile", + "description": "Google Drive file attachment." + }, + "form": { + "$ref": "Form", + "description": "Google Forms attachment." + }, + "link": { + "$ref": "Link", + "description": "Link attachment." + }, + "youTubeVideo": { + "$ref": "YouTubeVideo", + "description": "Youtube video attachment." + } + }, + "type": "object" + }, + "CloudPubsubTopic": { + "description": "A reference to a Cloud Pub/Sub topic.\n\nTo register for notifications, the owner of the topic must grant\n`classroom-notifications@system.gserviceaccount.com` the\n `projects.topics.publish` permission.", + "id": "CloudPubsubTopic", + "properties": { + "topicName": { + "description": "The `name` field of a Cloud Pub/Sub\n[Topic](https://cloud.google.com/pubsub/docs/reference/rest/v1/projects.topics#Topic).", + "type": "string" + } + }, + "type": "object" + }, + "Course": { + "description": "A Course in Classroom.", + "id": "Course", + "properties": { + "alternateLink": { + "description": "Absolute link to this course in the Classroom web UI.\n\nRead-only.", + "type": "string" + }, + "calendarId": { + "description": "The Calendar ID for a calendar that all course members can see, to which\nClassroom adds events for course work and announcements in the course.\n\nRead-only.", + "type": "string" + }, + "courseGroupEmail": { + "description": "The email address of a Google group containing all members of the course.\nThis group does not accept email and can only be used for permissions.\n\nRead-only.", + "type": "string" + }, + "courseMaterialSets": { + "description": "Sets of materials that appear on the \"about\" page of this course.\n\nRead-only.", + "items": { + "$ref": "CourseMaterialSet" + }, + "type": "array" + }, + "courseState": { + "description": "State of the course.\nIf unspecified, the default state is `PROVISIONED`.", + "enum": [ + "COURSE_STATE_UNSPECIFIED", + "ACTIVE", + "ARCHIVED", + "PROVISIONED", + "DECLINED", + "SUSPENDED" + ], + "enumDescriptions": [ + "No course state. No returned Course message will use this value.", + "The course is active.", + "The course has been archived. You cannot modify it except to change it\nto a different state.", + "The course has been created, but not yet activated. It is accessible by\nthe primary teacher and domain administrators, who may modify it or\nchange it to the `ACTIVE` or `DECLINED` states.\nA course may only be changed to `PROVISIONED` if it is in the `DECLINED`\nstate.", + "The course has been created, but declined. It is accessible by the\ncourse owner and domain administrators, though it will not be\ndisplayed in the web UI. You cannot modify the course except to change it\nto the `PROVISIONED` state.\nA course may only be changed to `DECLINED` if it is in the `PROVISIONED`\nstate.", + "The course has been suspended. You cannot modify the course, and only the\nuser identified by the `owner_id` can view the course.\nA course may be placed in this state if it potentially violates the\nTerms of Service." + ], + "type": "string" + }, + "creationTime": { + "description": "Creation time of the course.\nSpecifying this field in a course update mask results in an error.\n\nRead-only.", + "format": "google-datetime", + "type": "string" + }, + "description": { + "description": "Optional description.\nFor example, \"We'll be learning about the structure of living\ncreatures from a combination of textbooks, guest lectures, and lab work.\nExpect to be excited!\"\nIf set, this field must be a valid UTF-8 string and no longer than 30,000\ncharacters.", + "type": "string" + }, + "descriptionHeading": { + "description": "Optional heading for the description.\nFor example, \"Welcome to 10th Grade Biology.\"\nIf set, this field must be a valid UTF-8 string and no longer than 3600\ncharacters.", + "type": "string" + }, + "enrollmentCode": { + "description": "Enrollment code to use when joining this course.\nSpecifying this field in a course update mask results in an error.\n\nRead-only.", + "type": "string" + }, + "guardiansEnabled": { + "description": "Whether or not guardian notifications are enabled for this course.\n\nRead-only.", + "type": "boolean" + }, + "id": { + "description": "Identifier for this course assigned by Classroom.\n\nWhen\ncreating a course,\nyou may optionally set this identifier to an\nalias string in the\nrequest to create a corresponding alias. The `id` is still assigned by\nClassroom and cannot be updated after the course is created.\n\nSpecifying this field in a course update mask results in an error.", + "type": "string" + }, + "name": { + "description": "Name of the course.\nFor example, \"10th Grade Biology\".\nThe name is required. It must be between 1 and 750 characters and a valid\nUTF-8 string.", + "type": "string" + }, + "ownerId": { + "description": "The identifier of the owner of a course.\n\nWhen specified as a parameter of a\ncreate course request, this\nfield is required.\nThe identifier can be one of the following:\n\n* the numeric identifier for the user\n* the email address of the user\n* the string literal `\"me\"`, indicating the requesting user\n\nThis must be set in a create request. Admins can also specify this field\nin a patch course request to\ntransfer ownership. In other contexts, it is read-only.", + "type": "string" + }, + "room": { + "description": "Optional room location.\nFor example, \"301\".\nIf set, this field must be a valid UTF-8 string and no longer than 650\ncharacters.", + "type": "string" + }, + "section": { + "description": "Section of the course.\nFor example, \"Period 2\".\nIf set, this field must be a valid UTF-8 string and no longer than 2800\ncharacters.", + "type": "string" + }, + "teacherFolder": { + "$ref": "DriveFolder", + "description": "Information about a Drive Folder that is shared with all teachers of the\ncourse.\n\nThis field will only be set for teachers of the course and domain administrators.\n\nRead-only." + }, + "teacherGroupEmail": { + "description": "The email address of a Google group containing all teachers of the course.\nThis group does not accept email and can only be used for permissions.\n\nRead-only.", + "type": "string" + }, + "updateTime": { + "description": "Time of the most recent update to this course.\nSpecifying this field in a course update mask results in an error.\n\nRead-only.", + "format": "google-datetime", + "type": "string" + } + }, + "type": "object" + }, + "CourseAlias": { + "description": "Alternative identifier for a course.\n\nAn alias uniquely identifies a course. It must be unique within one of the\nfollowing scopes:\n\n* domain: A domain-scoped alias is visible to all users within the alias\ncreator's domain and can be created only by a domain admin. A domain-scoped\nalias is often used when a course has an identifier external to Classroom.\n\n* project: A project-scoped alias is visible to any request from an\napplication using the Developer Console project ID that created the alias\nand can be created by any project. A project-scoped alias is often used when\nan application has alternative identifiers. A random value can also be used\nto avoid duplicate courses in the event of transmission failures, as retrying\na request will return `ALREADY_EXISTS` if a previous one has succeeded.", + "id": "CourseAlias", + "properties": { + "alias": { + "description": "Alias string. The format of the string indicates the desired alias scoping.\n\n* `d:\u003cname\u003e` indicates a domain-scoped alias.\n Example: `d:math_101`\n* `p:\u003cname\u003e` indicates a project-scoped alias.\n Example: `p:abc123`\n\nThis field has a maximum length of 256 characters.", + "type": "string" + } + }, + "type": "object" + }, + "CourseMaterial": { + "description": "A material attached to a course as part of a material set.", + "id": "CourseMaterial", + "properties": { + "driveFile": { + "$ref": "DriveFile", + "description": "Google Drive file attachment." + }, + "form": { + "$ref": "Form", + "description": "Google Forms attachment." + }, + "link": { + "$ref": "Link", + "description": "Link atatchment." + }, + "youTubeVideo": { + "$ref": "YouTubeVideo", + "description": "Youtube video attachment." + } + }, + "type": "object" + }, + "CourseMaterialSet": { + "description": "A set of materials that appears on the \"About\" page of the course.\nThese materials might include a syllabus, schedule, or other background\ninformation relating to the course as a whole.", + "id": "CourseMaterialSet", + "properties": { + "materials": { + "description": "Materials attached to this set.", + "items": { + "$ref": "CourseMaterial" + }, + "type": "array" + }, + "title": { + "description": "Title for this set.", + "type": "string" + } + }, + "type": "object" + }, + "CourseRosterChangesInfo": { + "description": "Information about a `Feed` with a `feed_type` of `COURSE_ROSTER_CHANGES`.", + "id": "CourseRosterChangesInfo", + "properties": { + "courseId": { + "description": "The `course_id` of the course to subscribe to roster changes for.", + "type": "string" + } + }, + "type": "object" + }, + "CourseWork": { + "description": "Course work created by a teacher for students of the course.", + "id": "CourseWork", + "properties": { + "alternateLink": { + "description": "Absolute link to this course work in the Classroom web UI.\nThis is only populated if `state` is `PUBLISHED`.\n\nRead-only.", + "type": "string" + }, + "assigneeMode": { + "description": "Assignee mode of the coursework.\nIf unspecified, the default value is `ALL_STUDENTS`.", + "enum": [ + "ASSIGNEE_MODE_UNSPECIFIED", + "ALL_STUDENTS", + "INDIVIDUAL_STUDENTS" + ], + "enumDescriptions": [ + "No mode specified. This is never returned.", + "All students can see the item.\nThis is the default state.", + "A subset of the students can see the item." + ], + "type": "string" + }, + "assignment": { + "$ref": "Assignment", + "description": "Assignment details.\nThis is populated only when `work_type` is `ASSIGNMENT`.\n\nRead-only." + }, + "associatedWithDeveloper": { + "description": "Whether this course work item is associated with the Developer Console\nproject making the request.\n\nSee google.classroom.Work.CreateCourseWork for more\ndetails.\n\nRead-only.", + "type": "boolean" + }, + "courseId": { + "description": "Identifier of the course.\n\nRead-only.", + "type": "string" + }, + "creationTime": { + "description": "Timestamp when this course work was created.\n\nRead-only.", + "format": "google-datetime", + "type": "string" + }, + "creatorUserId": { + "description": "Identifier for the user that created the coursework.\n\nRead-only.", + "type": "string" + }, + "description": { + "description": "Optional description of this course work.\nIf set, the description must be a valid UTF-8 string containing no more\nthan 30,000 characters.", + "type": "string" + }, + "dueDate": { + "$ref": "Date", + "description": "Optional date, in UTC, that submissions for this this course work are due.\nThis must be specified if `due_time` is specified." + }, + "dueTime": { + "$ref": "TimeOfDay", + "description": "Optional time of day, in UTC, that submissions for this this course work\nare due.\nThis must be specified if `due_date` is specified." + }, + "id": { + "description": "Classroom-assigned identifier of this course work, unique per course.\n\nRead-only.", + "type": "string" + }, + "individualStudentsOptions": { + "$ref": "IndividualStudentsOptions", + "description": "Identifiers of students with access to the coursework.\nThis field is set only if `assigneeMode` is `INDIVIDUAL_STUDENTS`.\nIf the `assigneeMode` is `INDIVIDUAL_STUDENTS`, then only students\nspecified in this field will be assigned the coursework." + }, + "materials": { + "description": "Additional materials.\n\nCourseWork must have no more than 20 material items.", + "items": { + "$ref": "Material" + }, + "type": "array" + }, + "maxPoints": { + "description": "Maximum grade for this course work.\nIf zero or unspecified, this assignment is considered ungraded.\nThis must be a non-negative integer value.", + "format": "double", + "type": "number" + }, + "multipleChoiceQuestion": { + "$ref": "MultipleChoiceQuestion", + "description": "Multiple choice question details.\nFor read operations, this field is populated only when `work_type` is\n`MULTIPLE_CHOICE_QUESTION`.\nFor write operations, this field must be specified when creating course\nwork with a `work_type` of `MULTIPLE_CHOICE_QUESTION`, and it must not be\nset otherwise." + }, + "scheduledTime": { + "description": "Optional timestamp when this course work is scheduled to be published.", + "format": "google-datetime", + "type": "string" + }, + "state": { + "description": "Status of this course work.\nIf unspecified, the default state is `DRAFT`.", + "enum": [ + "COURSE_WORK_STATE_UNSPECIFIED", + "PUBLISHED", + "DRAFT", + "DELETED" + ], + "enumDescriptions": [ + "No state specified. This is never returned.", + "Status for work that has been published.\nThis is the default state.", + "Status for work that is not yet published.\nWork in this state is visible only to course teachers and domain\nadministrators.", + "Status for work that was published but is now deleted.\nWork in this state is visible only to course teachers and domain\nadministrators.\nWork in this state is deleted after some time." + ], + "type": "string" + }, + "submissionModificationMode": { + "description": "Setting to determine when students are allowed to modify submissions.\nIf unspecified, the default value is `MODIFIABLE_UNTIL_TURNED_IN`.", + "enum": [ + "SUBMISSION_MODIFICATION_MODE_UNSPECIFIED", + "MODIFIABLE_UNTIL_TURNED_IN", + "MODIFIABLE" + ], + "enumDescriptions": [ + "No modification mode specified. This is never returned.", + "Submisisons can be modified before being turned in.", + "Submisisons can be modified at any time." + ], + "type": "string" + }, + "title": { + "description": "Title of this course work.\nThe title must be a valid UTF-8 string containing between 1 and 3000\ncharacters.", + "type": "string" + }, + "updateTime": { + "description": "Timestamp of the most recent change to this course work.\n\nRead-only.", + "format": "google-datetime", + "type": "string" + }, + "workType": { + "description": "Type of this course work.\n\nThe type is set when the course work is created and cannot be changed.", + "enum": [ + "COURSE_WORK_TYPE_UNSPECIFIED", + "ASSIGNMENT", + "SHORT_ANSWER_QUESTION", + "MULTIPLE_CHOICE_QUESTION" + ], + "enumDescriptions": [ + "No work type specified. This is never returned.", + "An assignment.", + "A short answer question.", + "A multiple-choice question." + ], + "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": { + "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" + }, "month": { "description": "Month of year. Must be from 1 to 12.", "format": "int32", @@ -2014,168 +2534,153 @@ "description": "Year of date. Must be from 1 to 9999, or 0 if specifying a date without\na year.", "format": "int32", "type": "integer" - }, - "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" }, - "Name": { - "description": "Details of the user's name.", - "type": "object", + "DriveFile": { + "description": "Representation of a Google Drive file.", + "id": "DriveFile", "properties": { - "givenName": { - "description": "The user's first name.\n\nRead-only.", + "alternateLink": { + "description": "URL that can be used to access the Drive item.\n\nRead-only.", "type": "string" }, - "familyName": { - "description": "The user's last name.\n\nRead-only.", + "id": { + "description": "Drive API resource ID.", "type": "string" }, - "fullName": { - "description": "The user's full name formed by concatenating the first and last name\nvalues.\n\nRead-only.", + "thumbnailUrl": { + "description": "URL of a thumbnail image of the Drive item.\n\nRead-only.", + "type": "string" + }, + "title": { + "description": "Title of the Drive item.\n\nRead-only.", "type": "string" } }, - "id": "Name" + "type": "object" }, - "Assignment": { - "description": "Additional details for assignments.", - "type": "object", + "DriveFolder": { + "description": "Representation of a Google Drive folder.", + "id": "DriveFolder", "properties": { - "studentWorkFolder": { - "$ref": "DriveFolder", - "description": "Drive folder where attachments from student submissions are placed.\nThis is only populated for course teachers and administrators." - } - }, - "id": "Assignment" - }, - "SharedDriveFile": { - "description": "Drive file that is used as material for course work.", - "type": "object", - "properties": { - "driveFile": { - "description": "Drive file details.", - "$ref": "DriveFile" + "alternateLink": { + "description": "URL that can be used to access the Drive folder.\n\nRead-only.", + "type": "string" }, - "shareMode": { - "enum": [ - "UNKNOWN_SHARE_MODE", - "VIEW", - "EDIT", - "STUDENT_COPY" - ], - "description": "Mechanism by which students access the Drive item.", - "type": "string", - "enumDescriptions": [ - "No sharing mode specified. This should never be returned.", - "Students can view the shared file.", - "Students can edit the shared file.", - "Students have a personal copy of the shared file." - ] + "id": { + "description": "Drive API resource ID.", + "type": "string" + }, + "title": { + "description": "Title of the Drive folder.\n\nRead-only.", + "type": "string" } }, - "id": "SharedDriveFile" + "type": "object" }, "Empty": { - "id": "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 `{}`.", - "type": "object", - "properties": {} + "id": "Empty", + "properties": {}, + "type": "object" + }, + "Feed": { + "description": "A class of notifications that an application can register to receive.\nFor example: \"all roster changes for a domain\".", + "id": "Feed", + "properties": { + "courseRosterChangesInfo": { + "$ref": "CourseRosterChangesInfo", + "description": "Information about a `Feed` with a `feed_type` of `COURSE_ROSTER_CHANGES`.\nThis field must be specified if `feed_type` is `COURSE_ROSTER_CHANGES`." + }, + "feedType": { + "description": "The type of feed.", + "enum": [ + "FEED_TYPE_UNSPECIFIED", + "DOMAIN_ROSTER_CHANGES", + "COURSE_ROSTER_CHANGES" + ], + "enumDescriptions": [ + "Should never be returned or provided.", + "All roster changes for a particular domain.\n\nNotifications will be generated whenever a user joins or leaves a course.\n\nNo notifications will be generated when an invitation is created or\ndeleted, but notifications will be generated when a user joins a course\nby accepting an invitation.", + "All roster changes for a particular course.\n\nNotifications will be generated whenever a user joins or leaves a course.\n\nNo notifications will be generated when an invitation is created or\ndeleted, but notifications will be generated when a user joins a course\nby accepting an invitation." + ], + "type": "string" + } + }, + "type": "object" + }, + "Form": { + "description": "Google Forms item.", + "id": "Form", + "properties": { + "formUrl": { + "description": "URL of the form.", + "type": "string" + }, + "responseUrl": { + "description": "URL of the form responses document.\nOnly set if respsonses have been recorded and only when the\nrequesting user is an editor of the form.\n\nRead-only.", + "type": "string" + }, + "thumbnailUrl": { + "description": "URL of a thumbnail image of the Form.\n\nRead-only.", + "type": "string" + }, + "title": { + "description": "Title of the Form.\n\nRead-only.", + "type": "string" + } + }, + "type": "object" }, "GlobalPermission": { - "type": "object", + "description": "Global user permission description.", + "id": "GlobalPermission", "properties": { "permission": { - "enumDescriptions": [ - "No permission is specified. This is not returned and is not a\nvalid value.", - "User is permitted to create a course." - ], + "description": "Permission value.", "enum": [ "PERMISSION_UNSPECIFIED", "CREATE_COURSE" ], - "description": "Permission value.", - "type": "string" - } - }, - "id": "GlobalPermission", - "description": "Global user permission description." - }, - "ModifyAnnouncementAssigneesRequest": { - "description": "Request to modify assignee mode and options of an announcement.", - "type": "object", - "properties": { - "assigneeMode": { - "description": "Mode of the announcement describing whether it will be accessible by all\nstudents or specified individual students.", - "type": "string", "enumDescriptions": [ - "No mode specified. This is never returned.", - "All students can see the item.\nThis is the default state.", - "A subset of the students can see the item." + "No permission is specified. This is not returned and is not a\nvalid value.", + "User is permitted to create a course." ], - "enum": [ - "ASSIGNEE_MODE_UNSPECIFIED", - "ALL_STUDENTS", - "INDIVIDUAL_STUDENTS" - ] - }, - "modifyIndividualStudentsOptions": { - "description": "Set which students can view or cannot view the announcement.\nMust be specified only when `assigneeMode` is `INDIVIDUAL_STUDENTS`.", - "$ref": "ModifyIndividualStudentsOptions" - } - }, - "id": "ModifyAnnouncementAssigneesRequest" - }, - "Teacher": { - "id": "Teacher", - "description": "Teacher of a course.", - "type": "object", - "properties": { - "courseId": { - "type": "string", - "description": "Identifier of the course.\n\nRead-only." - }, - "profile": { - "description": "Global user information for the teacher.\n\nRead-only.", - "$ref": "UserProfile" - }, - "userId": { - "description": "Identifier of the user.\n\nWhen specified as a parameter of a request, this identifier can be one of\nthe following:\n\n* the numeric identifier for the user\n* the email address of the user\n* the string literal `\"me\"`, indicating the requesting user", "type": "string" } - } + }, + "type": "object" }, "GradeHistory": { "description": "The history of each grade on this submission.", - "type": "object", + "id": "GradeHistory", "properties": { "actorUserId": { "description": "The teacher who made the grade change.", "type": "string" }, - "gradeTimestamp": { - "type": "string", - "description": "When the grade of the submission was changed.", - "format": "google-datetime" - }, "gradeChangeType": { "description": "The type of grade change at this time in the submission grade history.", - "type": "string", + "enum": [ + "UNKNOWN_GRADE_CHANGE_TYPE", + "DRAFT_GRADE_POINTS_EARNED_CHANGE", + "ASSIGNED_GRADE_POINTS_EARNED_CHANGE", + "MAX_POINTS_CHANGE" + ], "enumDescriptions": [ "No grade change type specified. This should never be returned.", "A change in the numerator of the draft grade.", "A change in the numerator of the assigned grade.", "A change in the denominator of the grade." ], - "enum": [ - "UNKNOWN_GRADE_CHANGE_TYPE", - "DRAFT_GRADE_POINTS_EARNED_CHANGE", - "ASSIGNED_GRADE_POINTS_EARNED_CHANGE", - "MAX_POINTS_CHANGE" - ] + "type": "string" + }, + "gradeTimestamp": { + "description": "When the grade of the submission was changed.", + "format": "google-datetime", + "type": "string" }, "maxPoints": { "description": "The denominator of the grade at this time in the submission grade\nhistory.", @@ -2188,1187 +2693,34 @@ "type": "number" } }, - "id": "GradeHistory" - }, - "AssignmentSubmission": { - "description": "Student work for an assignment.", - "type": "object", - "properties": { - "attachments": { - "description": "Attachments added by the student.\nDrive files that correspond to materials with a share mode of\nSTUDENT_COPY may not exist yet if the student has not accessed the\nassignment in Classroom.\n\nSome attachment metadata is only populated if the requesting user has\npermission to access it. Identifier and alternate_link fields are always\navailable, but others (e.g. title) may not be.", - "type": "array", - "items": { - "$ref": "Attachment" - } - } - }, - "id": "AssignmentSubmission" - }, - "Material": { - "description": "Material attached to course work.\n\nWhen creating attachments, setting the `form` field is not supported.", - "type": "object", - "properties": { - "form": { - "$ref": "Form", - "description": "Google Forms material." - }, - "link": { - "description": "Link material. On creation, will be upgraded to a more appropriate type\nif possible, and this will be reflected in the response.", - "$ref": "Link" - }, - "youtubeVideo": { - "description": "YouTube video material.", - "$ref": "YouTubeVideo" - }, - "driveFile": { - "description": "Google Drive file material.", - "$ref": "SharedDriveFile" - } - }, - "id": "Material" - }, - "Feed": { - "properties": { - "feedType": { - "enumDescriptions": [ - "Should never be returned or provided.", - "All roster changes for a particular domain.\n\nNotifications will be generated whenever a user joins or leaves a course.\n\nNo notifications will be generated when an invitation is created or\ndeleted, but notifications will be generated when a user joins a course\nby accepting an invitation.", - "All roster changes for a particular course.\n\nNotifications will be generated whenever a user joins or leaves a course.\n\nNo notifications will be generated when an invitation is created or\ndeleted, but notifications will be generated when a user joins a course\nby accepting an invitation." - ], - "enum": [ - "FEED_TYPE_UNSPECIFIED", - "DOMAIN_ROSTER_CHANGES", - "COURSE_ROSTER_CHANGES" - ], - "description": "The type of feed.", - "type": "string" - }, - "courseRosterChangesInfo": { - "description": "Information about a `Feed` with a `feed_type` of `COURSE_ROSTER_CHANGES`.\nThis field must be specified if `feed_type` is `COURSE_ROSTER_CHANGES`.", - "$ref": "CourseRosterChangesInfo" - } - }, - "id": "Feed", - "description": "A class of notifications that an application can register to receive.\nFor example: \"all roster changes for a domain\".", "type": "object" }, - "Student": { - "type": "object", - "properties": { - "userId": { - "description": "Identifier of the user.\n\nWhen specified as a parameter of a request, this identifier can be one of\nthe following:\n\n* the numeric identifier for the user\n* the email address of the user\n* the string literal `\"me\"`, indicating the requesting user", - "type": "string" - }, - "courseId": { - "type": "string", - "description": "Identifier of the course.\n\nRead-only." - }, - "profile": { - "$ref": "UserProfile", - "description": "Global user information for the student.\n\nRead-only." - }, - "studentWorkFolder": { - "$ref": "DriveFolder", - "description": "Information about a Drive Folder for this student's work in this course.\nOnly visible to the student and domain administrators.\n\nRead-only." - } - }, - "id": "Student", - "description": "Student in a course." - }, - "Invitation": { - "properties": { - "courseId": { - "description": "Identifier of the course to invite the user to.", - "type": "string" - }, - "id": { - "description": "Identifier assigned by Classroom.\n\nRead-only.", - "type": "string" - }, - "role": { - "enumDescriptions": [ - "No course role.", - "Student in the course.", - "Teacher of the course.", - "Owner of the course." - ], - "enum": [ - "COURSE_ROLE_UNSPECIFIED", - "STUDENT", - "TEACHER", - "OWNER" - ], - "description": "Role to invite the user to have.\nMust not be `COURSE_ROLE_UNSPECIFIED`.", - "type": "string" - }, - "userId": { - "description": "Identifier of the invited user.\n\nWhen specified as a parameter of a request, this identifier can be set to\none of the following:\n\n* the numeric identifier for the user\n* the email address of the user\n* the string literal `\"me\"`, indicating the requesting user", - "type": "string" - } - }, - "id": "Invitation", - "description": "An invitation to join a course.", - "type": "object" - }, - "TurnInStudentSubmissionRequest": { - "description": "Request to turn in a student submission.", - "type": "object", - "properties": {}, - "id": "TurnInStudentSubmissionRequest" - }, - "ListCourseWorkResponse": { - "description": "Response when listing course work.", - "type": "object", - "properties": { - "nextPageToken": { - "description": "Token identifying the next page of results to return. If empty, no further\nresults are available.", - "type": "string" - }, - "courseWork": { - "description": "Course work items that match the request.", - "type": "array", - "items": { - "$ref": "CourseWork" - } - } - }, - "id": "ListCourseWorkResponse" - }, - "Attachment": { - "description": "Attachment added to student assignment work.\n\nWhen creating attachments, setting the `form` field is not supported.", - "type": "object", - "properties": { - "driveFile": { - "$ref": "DriveFile", - "description": "Google Drive file attachment." - }, - "youTubeVideo": { - "$ref": "YouTubeVideo", - "description": "Youtube video attachment." - }, - "form": { - "$ref": "Form", - "description": "Google Forms attachment." - }, - "link": { - "$ref": "Link", - "description": "Link attachment." - } - }, - "id": "Attachment" - }, - "ListTopicResponse": { - "description": "Response when listing topics.", - "type": "object", - "properties": { - "topic": { - "description": "Topic items that match the request.", - "type": "array", - "items": { - "$ref": "Topic" - } - }, - "nextPageToken": { - "description": "Token identifying the next page of results to return. If empty, no further\nresults are available.", - "type": "string" - } - }, - "id": "ListTopicResponse" - }, - "ListAnnouncementsResponse": { - "description": "Response when listing course work.", - "type": "object", - "properties": { - "announcements": { - "type": "array", - "items": { - "$ref": "Announcement" - }, - "description": "Announcement items that match the request." - }, - "nextPageToken": { - "description": "Token identifying the next page of results to return. If empty, no further\nresults are available.", - "type": "string" - } - }, - "id": "ListAnnouncementsResponse" - }, - "TimeOfDay": { - "description": "Represents a time of day. The date and time zone are either not significant\nor are specified elsewhere. An API may choose to allow leap seconds. Related\ntypes are google.type.Date and `google.protobuf.Timestamp`.", - "type": "object", - "properties": { - "minutes": { - "description": "Minutes of hour of day. Must be from 0 to 59.", - "format": "int32", - "type": "integer" - }, - "hours": { - "description": "Hours of day in 24 hour format. Should be from 0 to 23. An API may choose\nto allow the value \"24:00:00\" for scenarios like business closing time.", - "format": "int32", - "type": "integer" - }, - "nanos": { - "description": "Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999.", - "format": "int32", - "type": "integer" - }, - "seconds": { - "type": "integer", - "description": "Seconds of minutes of the time. Must normally be from 0 to 59. An API may\nallow the value 60 if it allows leap-seconds.", - "format": "int32" - } - }, - "id": "TimeOfDay" - }, - "ListCoursesResponse": { - "description": "Response when listing courses.", - "type": "object", - "properties": { - "courses": { - "description": "Courses that match the list request.", - "type": "array", - "items": { - "$ref": "Course" - } - }, - "nextPageToken": { - "description": "Token identifying the next page of results to return. If empty, no further\nresults are available.", - "type": "string" - } - }, - "id": "ListCoursesResponse" - }, - "Form": { - "description": "Google Forms item.", - "type": "object", - "properties": { - "title": { - "description": "Title of the Form.\n\nRead-only.", - "type": "string" - }, - "thumbnailUrl": { - "type": "string", - "description": "URL of a thumbnail image of the Form.\n\nRead-only." - }, - "responseUrl": { - "description": "URL of the form responses document.\nOnly set if respsonses have been recorded and only when the\nrequesting user is an editor of the form.\n\nRead-only.", - "type": "string" - }, - "formUrl": { - "description": "URL of the form.", - "type": "string" - } - }, - "id": "Form" - }, - "ModifyCourseWorkAssigneesRequest": { - "properties": { - "modifyIndividualStudentsOptions": { - "$ref": "ModifyIndividualStudentsOptions", - "description": "Set which students are assigned or not assigned to the coursework.\nMust be specified only when `assigneeMode` is `INDIVIDUAL_STUDENTS`." - }, - "assigneeMode": { - "description": "Mode of the coursework describing whether it will be assigned to all\nstudents or specified individual students.", - "type": "string", - "enumDescriptions": [ - "No mode specified. This is never returned.", - "All students can see the item.\nThis is the default state.", - "A subset of the students can see the item." - ], - "enum": [ - "ASSIGNEE_MODE_UNSPECIFIED", - "ALL_STUDENTS", - "INDIVIDUAL_STUDENTS" - ] - } - }, - "id": "ModifyCourseWorkAssigneesRequest", - "description": "Request to modify assignee mode and options of a coursework.", - "type": "object" - }, - "ListGuardiansResponse": { - "properties": { - "guardians": { - "description": "Guardians on this page of results that met the criteria specified in\nthe request.", - "type": "array", - "items": { - "$ref": "Guardian" - } - }, - "nextPageToken": { - "description": "Token identifying the next page of results to return. If empty, no further\nresults are available.", - "type": "string" - } - }, - "id": "ListGuardiansResponse", - "description": "Response when listing guardians.", - "type": "object" - }, - "CourseAlias": { - "description": "Alternative identifier for a course.\n\nAn alias uniquely identifies a course. It must be unique within one of the\nfollowing scopes:\n\n* domain: A domain-scoped alias is visible to all users within the alias\ncreator's domain and can be created only by a domain admin. A domain-scoped\nalias is often used when a course has an identifier external to Classroom.\n\n* project: A project-scoped alias is visible to any request from an\napplication using the Developer Console project ID that created the alias\nand can be created by any project. A project-scoped alias is often used when\nan application has alternative identifiers. A random value can also be used\nto avoid duplicate courses in the event of transmission failures, as retrying\na request will return `ALREADY_EXISTS` if a previous one has succeeded.", - "type": "object", - "properties": { - "alias": { - "description": "Alias string. The format of the string indicates the desired alias scoping.\n\n* `d:\u003cname\u003e` indicates a domain-scoped alias.\n Example: `d:math_101`\n* `p:\u003cname\u003e` indicates a project-scoped alias.\n Example: `p:abc123`\n\nThis field has a maximum length of 256 characters.", - "type": "string" - } - }, - "id": "CourseAlias" - }, - "ListCourseAliasesResponse": { - "description": "Response when listing course aliases.", - "type": "object", - "properties": { - "aliases": { - "description": "The course aliases.", - "type": "array", - "items": { - "$ref": "CourseAlias" - } - }, - "nextPageToken": { - "description": "Token identifying the next page of results to return. If empty, no further\nresults are available.", - "type": "string" - } - }, - "id": "ListCourseAliasesResponse" - }, - "ListGuardianInvitationsResponse": { - "properties": { - "nextPageToken": { - "description": "Token identifying the next page of results to return. If empty, no further\nresults are available.", - "type": "string" - }, - "guardianInvitations": { - "description": "Guardian invitations that matched the list request.", - "type": "array", - "items": { - "$ref": "GuardianInvitation" - } - } - }, - "id": "ListGuardianInvitationsResponse", - "description": "Response when listing guardian invitations.", - "type": "object" - }, - "IndividualStudentsOptions": { - "description": "Assignee details about a coursework/announcement.\nThis field is set if and only if `assigneeMode` is `INDIVIDUAL_STUDENTS`.", - "type": "object", - "properties": { - "studentIds": { - "description": "Identifiers for the students that have access to the\ncoursework/announcement.", - "type": "array", - "items": { - "type": "string" - } - } - }, - "id": "IndividualStudentsOptions" - }, - "MultipleChoiceSubmission": { - "description": "Student work for a multiple-choice question.", - "type": "object", - "properties": { - "answer": { - "description": "Student's select choice.", - "type": "string" - } - }, - "id": "MultipleChoiceSubmission" - }, - "Registration": { - "type": "object", - "properties": { - "registrationId": { - "description": "A server-generated unique identifier for this `Registration`.\n\nRead-only.", - "type": "string" - }, - "cloudPubsubTopic": { - "$ref": "CloudPubsubTopic", - "description": "The Cloud Pub/Sub topic that notifications are to be sent to." - }, - "expiryTime": { - "description": "The time until which the `Registration` is effective.\n\nThis is a read-only field assigned by the server.", - "format": "google-datetime", - "type": "string" - }, - "feed": { - "description": "Specification for the class of notifications that Classroom should deliver\nto the `destination`.", - "$ref": "Feed" - } - }, - "id": "Registration", - "description": "An instruction to Classroom to send notifications from the `feed` to the\nprovided `destination`." - }, - "CourseMaterial": { - "description": "A material attached to a course as part of a material set.", - "type": "object", - "properties": { - "driveFile": { - "$ref": "DriveFile", - "description": "Google Drive file attachment." - }, - "youTubeVideo": { - "description": "Youtube video attachment.", - "$ref": "YouTubeVideo" - }, - "form": { - "description": "Google Forms attachment.", - "$ref": "Form" - }, - "link": { - "$ref": "Link", - "description": "Link atatchment." - } - }, - "id": "CourseMaterial" - }, - "MultipleChoiceQuestion": { - "id": "MultipleChoiceQuestion", - "description": "Additional details for multiple-choice questions.", - "type": "object", - "properties": { - "choices": { - "description": "Possible choices.", - "type": "array", - "items": { - "type": "string" - } - } - } - }, - "Course": { - "type": "object", - "properties": { - "calendarId": { - "description": "The Calendar ID for a calendar that all course members can see, to which\nClassroom adds events for course work and announcements in the course.\n\nRead-only.", - "type": "string" - }, - "updateTime": { - "description": "Time of the most recent update to this course.\nSpecifying this field in a course update mask results in an error.\n\nRead-only.", - "format": "google-datetime", - "type": "string" - }, - "alternateLink": { - "description": "Absolute link to this course in the Classroom web UI.\n\nRead-only.", - "type": "string" - }, - "guardiansEnabled": { - "description": "Whether or not guardian notifications are enabled for this course.\n\nRead-only.", - "type": "boolean" - }, - "courseState": { - "enumDescriptions": [ - "No course state. No returned Course message will use this value.", - "The course is active.", - "The course has been archived. You cannot modify it except to change it\nto a different state.", - "The course has been created, but not yet activated. It is accessible by\nthe primary teacher and domain administrators, who may modify it or\nchange it to the `ACTIVE` or `DECLINED` states.\nA course may only be changed to `PROVISIONED` if it is in the `DECLINED`\nstate.", - "The course has been created, but declined. It is accessible by the\ncourse owner and domain administrators, though it will not be\ndisplayed in the web UI. You cannot modify the course except to change it\nto the `PROVISIONED` state.\nA course may only be changed to `DECLINED` if it is in the `PROVISIONED`\nstate.", - "The course has been suspended. You cannot modify the course, and only the\nuser identified by the `owner_id` can view the course.\nA course may be placed in this state if it potentially violates the\nTerms of Service." - ], - "enum": [ - "COURSE_STATE_UNSPECIFIED", - "ACTIVE", - "ARCHIVED", - "PROVISIONED", - "DECLINED", - "SUSPENDED" - ], - "description": "State of the course.\nIf unspecified, the default state is `PROVISIONED`.", - "type": "string" - }, - "ownerId": { - "type": "string", - "description": "The identifier of the owner of a course.\n\nWhen specified as a parameter of a\ncreate course request, this\nfield is required.\nThe identifier can be one of the following:\n\n* the numeric identifier for the user\n* the email address of the user\n* the string literal `\"me\"`, indicating the requesting user\n\nThis must be set in a create request. Admins can also specify this field\nin a patch course request to\ntransfer ownership. In other contexts, it is read-only." - }, - "description": { - "description": "Optional description.\nFor example, \"We'll be learning about the structure of living\ncreatures from a combination of textbooks, guest lectures, and lab work.\nExpect to be excited!\"\nIf set, this field must be a valid UTF-8 string and no longer than 30,000\ncharacters.", - "type": "string" - }, - "teacherGroupEmail": { - "description": "The email address of a Google group containing all teachers of the course.\nThis group does not accept email and can only be used for permissions.\n\nRead-only.", - "type": "string" - }, - "creationTime": { - "description": "Creation time of the course.\nSpecifying this field in a course update mask results in an error.\n\nRead-only.", - "format": "google-datetime", - "type": "string" - }, - "name": { - "type": "string", - "description": "Name of the course.\nFor example, \"10th Grade Biology\".\nThe name is required. It must be between 1 and 750 characters and a valid\nUTF-8 string." - }, - "teacherFolder": { - "$ref": "DriveFolder", - "description": "Information about a Drive Folder that is shared with all teachers of the\ncourse.\n\nThis field will only be set for teachers of the course and domain administrators.\n\nRead-only." - }, - "section": { - "description": "Section of the course.\nFor example, \"Period 2\".\nIf set, this field must be a valid UTF-8 string and no longer than 2800\ncharacters.", - "type": "string" - }, - "id": { - "description": "Identifier for this course assigned by Classroom.\n\nWhen\ncreating a course,\nyou may optionally set this identifier to an\nalias string in the\nrequest to create a corresponding alias. The `id` is still assigned by\nClassroom and cannot be updated after the course is created.\n\nSpecifying this field in a course update mask results in an error.", - "type": "string" - }, - "room": { - "description": "Optional room location.\nFor example, \"301\".\nIf set, this field must be a valid UTF-8 string and no longer than 650\ncharacters.", - "type": "string" - }, - "courseGroupEmail": { - "description": "The email address of a Google group containing all members of the course.\nThis group does not accept email and can only be used for permissions.\n\nRead-only.", - "type": "string" - }, - "courseMaterialSets": { - "description": "Sets of materials that appear on the \"about\" page of this course.\n\nRead-only.", - "type": "array", - "items": { - "$ref": "CourseMaterialSet" - } - }, - "enrollmentCode": { - "description": "Enrollment code to use when joining this course.\nSpecifying this field in a course update mask results in an error.\n\nRead-only.", - "type": "string" - }, - "descriptionHeading": { - "description": "Optional heading for the description.\nFor example, \"Welcome to 10th Grade Biology.\"\nIf set, this field must be a valid UTF-8 string and no longer than 3600\ncharacters.", - "type": "string" - } - }, - "id": "Course", - "description": "A Course in Classroom." - }, - "DriveFile": { - "description": "Representation of a Google Drive file.", - "type": "object", - "properties": { - "id": { - "description": "Drive API resource ID.", - "type": "string" - }, - "title": { - "description": "Title of the Drive item.\n\nRead-only.", - "type": "string" - }, - "alternateLink": { - "description": "URL that can be used to access the Drive item.\n\nRead-only.", - "type": "string" - }, - "thumbnailUrl": { - "description": "URL of a thumbnail image of the Drive item.\n\nRead-only.", - "type": "string" - } - }, - "id": "DriveFile" - }, - "ReturnStudentSubmissionRequest": { - "description": "Request to return a student submission.", - "type": "object", - "properties": {}, - "id": "ReturnStudentSubmissionRequest" - }, - "ReclaimStudentSubmissionRequest": { - "description": "Request to reclaim a student submission.", - "type": "object", - "properties": {}, - "id": "ReclaimStudentSubmissionRequest" - }, - "CourseRosterChangesInfo": { - "description": "Information about a `Feed` with a `feed_type` of `COURSE_ROSTER_CHANGES`.", - "type": "object", - "properties": { - "courseId": { - "description": "The `course_id` of the course to subscribe to roster changes for.", - "type": "string" - } - }, - "id": "CourseRosterChangesInfo" - }, - "Topic": { - "description": "Topic created by a teacher for the course", - "type": "object", - "properties": { - "updateTime": { - "description": "The time the topic was last updated by the system.\n\nRead-only.", - "format": "google-datetime", - "type": "string" - }, - "name": { - "description": "The name of the topic, generated by the user.\nLeading and trailing whitespaces, if any, will be trimmed. Also, multiple\nconsecutive whitespaces will be collapsed into one inside the name.\nTopic names are case sensitive, and must be no longer than 100 characters.", - "type": "string" - }, - "topicId": { - "description": "Unique identifier for the topic.\n\nRead-only.", - "type": "string" - }, - "courseId": { - "description": "Identifier of the course.\n\nRead-only.", - "type": "string" - } - }, - "id": "Topic" - }, - "CourseWork": { - "type": "object", - "properties": { - "materials": { - "description": "Additional materials.\n\nCourseWork must have no more than 20 material items.", - "type": "array", - "items": { - "$ref": "Material" - } - }, - "associatedWithDeveloper": { - "description": "Whether this course work item is associated with the Developer Console\nproject making the request.\n\nSee google.classroom.Work.CreateCourseWork for more\ndetails.\n\nRead-only.", - "type": "boolean" - }, - "updateTime": { - "description": "Timestamp of the most recent change to this course work.\n\nRead-only.", - "format": "google-datetime", - "type": "string" - }, - "alternateLink": { - "description": "Absolute link to this course work in the Classroom web UI.\nThis is only populated if `state` is `PUBLISHED`.\n\nRead-only.", - "type": "string" - }, - "assigneeMode": { - "enumDescriptions": [ - "No mode specified. This is never returned.", - "All students can see the item.\nThis is the default state.", - "A subset of the students can see the item." - ], - "enum": [ - "ASSIGNEE_MODE_UNSPECIFIED", - "ALL_STUDENTS", - "INDIVIDUAL_STUDENTS" - ], - "description": "Assignee mode of the coursework.\nIf unspecified, the default value is `ALL_STUDENTS`.", - "type": "string" - }, - "maxPoints": { - "description": "Maximum grade for this course work.\nIf zero or unspecified, this assignment is considered ungraded.\nThis must be a non-negative integer value.", - "format": "double", - "type": "number" - }, - "multipleChoiceQuestion": { - "$ref": "MultipleChoiceQuestion", - "description": "Multiple choice question details.\nFor read operations, this field is populated only when `work_type` is\n`MULTIPLE_CHOICE_QUESTION`.\nFor write operations, this field must be specified when creating course\nwork with a `work_type` of `MULTIPLE_CHOICE_QUESTION`, and it must not be\nset otherwise." - }, - "assignment": { - "description": "Assignment details.\nThis is populated only when `work_type` is `ASSIGNMENT`.\n\nRead-only.", - "$ref": "Assignment" - }, - "workType": { - "enumDescriptions": [ - "No work type specified. This is never returned.", - "An assignment.", - "A short answer question.", - "A multiple-choice question." - ], - "enum": [ - "COURSE_WORK_TYPE_UNSPECIFIED", - "ASSIGNMENT", - "SHORT_ANSWER_QUESTION", - "MULTIPLE_CHOICE_QUESTION" - ], - "description": "Type of this course work.\n\nThe type is set when the course work is created and cannot be changed.", - "type": "string" - }, - "scheduledTime": { - "description": "Optional timestamp when this course work is scheduled to be published.", - "format": "google-datetime", - "type": "string" - }, - "description": { - "description": "Optional description of this course work.\nIf set, the description must be a valid UTF-8 string containing no more\nthan 30,000 characters.", - "type": "string" - }, - "creationTime": { - "description": "Timestamp when this course work was created.\n\nRead-only.", - "format": "google-datetime", - "type": "string" - }, - "dueDate": { - "description": "Optional date, in UTC, that submissions for this this course work are due.\nThis must be specified if `due_time` is specified.", - "$ref": "Date" - }, - "individualStudentsOptions": { - "description": "Identifiers of students with access to the coursework.\nThis field is set only if `assigneeMode` is `INDIVIDUAL_STUDENTS`.\nIf the `assigneeMode` is `INDIVIDUAL_STUDENTS`, then only students\nspecified in this field will be assigned the coursework.", - "$ref": "IndividualStudentsOptions" - }, - "creatorUserId": { - "description": "Identifier for the user that created the coursework.\n\nRead-only.", - "type": "string" - }, - "state": { - "enumDescriptions": [ - "No state specified. This is never returned.", - "Status for work that has been published.\nThis is the default state.", - "Status for work that is not yet published.\nWork in this state is visible only to course teachers and domain\nadministrators.", - "Status for work that was published but is now deleted.\nWork in this state is visible only to course teachers and domain\nadministrators.\nWork in this state is deleted after some time." - ], - "enum": [ - "COURSE_WORK_STATE_UNSPECIFIED", - "PUBLISHED", - "DRAFT", - "DELETED" - ], - "description": "Status of this course work.\nIf unspecified, the default state is `DRAFT`.", - "type": "string" - }, - "submissionModificationMode": { - "enumDescriptions": [ - "No modification mode specified. This is never returned.", - "Submisisons can be modified before being turned in.", - "Submisisons can be modified at any time." - ], - "enum": [ - "SUBMISSION_MODIFICATION_MODE_UNSPECIFIED", - "MODIFIABLE_UNTIL_TURNED_IN", - "MODIFIABLE" - ], - "description": "Setting to determine when students are allowed to modify submissions.\nIf unspecified, the default value is `MODIFIABLE_UNTIL_TURNED_IN`.", - "type": "string" - }, - "courseId": { - "description": "Identifier of the course.\n\nRead-only.", - "type": "string" - }, - "id": { - "description": "Classroom-assigned identifier of this course work, unique per course.\n\nRead-only.", - "type": "string" - }, - "dueTime": { - "description": "Optional time of day, in UTC, that submissions for this this course work\nare due.\nThis must be specified if `due_date` is specified.", - "$ref": "TimeOfDay" - }, - "title": { - "description": "Title of this course work.\nThe title must be a valid UTF-8 string containing between 1 and 3000\ncharacters.", - "type": "string" - } - }, - "id": "CourseWork", - "description": "Course work created by a teacher for students of the course." - }, "Guardian": { - "type": "object", + "description": "Association between a student and a guardian of that student. The guardian\nmay receive information about the student's course work.", + "id": "Guardian", "properties": { - "studentId": { - "description": "Identifier for the student to whom the guardian relationship applies.", - "type": "string" - }, "guardianId": { "description": "Identifier for the guardian.", "type": "string" }, + "guardianProfile": { + "$ref": "UserProfile", + "description": "User profile for the guardian." + }, "invitedEmailAddress": { "description": "The email address to which the initial guardian invitation was sent.\nThis field is only visible to domain administrators.", "type": "string" }, - "guardianProfile": { - "description": "User profile for the guardian.", - "$ref": "UserProfile" - } - }, - "id": "Guardian", - "description": "Association between a student and a guardian of that student. The guardian\nmay receive information about the student's course work." - }, - "ListStudentsResponse": { - "type": "object", - "properties": { - "students": { - "description": "Students who match the list request.", - "type": "array", - "items": { - "$ref": "Student" - } - }, - "nextPageToken": { - "type": "string", - "description": "Token identifying the next page of results to return. If empty, no further\nresults are available." - } - }, - "id": "ListStudentsResponse", - "description": "Response when listing students." - }, - "UserProfile": { - "properties": { - "photoUrl": { - "description": "URL of user's profile photo.\n\nRead-only.", - "type": "string" - }, - "permissions": { - "description": "Global permissions of the user.\n\nRead-only.", - "type": "array", - "items": { - "$ref": "GlobalPermission" - } - }, - "name": { - "description": "Name of the user.\n\nRead-only.", - "$ref": "Name" - }, - "id": { - "description": "Identifier of the user.\n\nRead-only.", - "type": "string" - }, - "verifiedTeacher": { - "description": "Represents whether a G Suite for Education user's domain administrator has\nexplicitly verified them as being a teacher. If the user is not a member of\na G Suite for Education domain, than this field will always be false.\n\nRead-only", - "type": "boolean" - }, - "emailAddress": { - "description": "Email address of the user.\n\nRead-only.", + "studentId": { + "description": "Identifier for the student to whom the guardian relationship applies.", "type": "string" } }, - "id": "UserProfile", - "description": "Global information for a user.", "type": "object" }, - "Announcement": { - "description": "Announcement created by a teacher for students of the course", - "type": "object", - "properties": { - "scheduledTime": { - "description": "Optional timestamp when this announcement is scheduled to be published.", - "format": "google-datetime", - "type": "string" - }, - "creationTime": { - "description": "Timestamp when this announcement was created.\n\nRead-only.", - "format": "google-datetime", - "type": "string" - }, - "individualStudentsOptions": { - "$ref": "IndividualStudentsOptions", - "description": "Identifiers of students with access to the announcement.\nThis field is set only if `assigneeMode` is `INDIVIDUAL_STUDENTS`.\nIf the `assigneeMode` is `INDIVIDUAL_STUDENTS`, then only students specified in this\nfield will be able to see the announcement." - }, - "creatorUserId": { - "description": "Identifier for the user that created the announcement.\n\nRead-only.", - "type": "string" - }, - "state": { - "enum": [ - "ANNOUNCEMENT_STATE_UNSPECIFIED", - "PUBLISHED", - "DRAFT", - "DELETED" - ], - "description": "Status of this announcement.\nIf unspecified, the default state is `DRAFT`.", - "type": "string", - "enumDescriptions": [ - "No state specified. This is never returned.", - "Status for announcement that has been published.\nThis is the default state.", - "Status for an announcement that is not yet published.\nAnnouncement in this state is visible only to course teachers and domain\nadministrators.", - "Status for announcement that was published but is now deleted.\nAnnouncement in this state is visible only to course teachers and domain\nadministrators.\nAnnouncement in this state is deleted after some time." - ] - }, - "text": { - "description": "Description of this announcement.\nThe text must be a valid UTF-8 string containing no more\nthan 30,000 characters.", - "type": "string" - }, - "courseId": { - "description": "Identifier of the course.\n\nRead-only.", - "type": "string" - }, - "id": { - "description": "Classroom-assigned identifier of this announcement, unique per course.\n\nRead-only.", - "type": "string" - }, - "materials": { - "description": "Additional materials.\n\nAnnouncements must have no more than 20 material items.", - "type": "array", - "items": { - "$ref": "Material" - } - }, - "updateTime": { - "description": "Timestamp of the most recent change to this announcement.\n\nRead-only.", - "format": "google-datetime", - "type": "string" - }, - "assigneeMode": { - "enumDescriptions": [ - "No mode specified. This is never returned.", - "All students can see the item.\nThis is the default state.", - "A subset of the students can see the item." - ], - "enum": [ - "ASSIGNEE_MODE_UNSPECIFIED", - "ALL_STUDENTS", - "INDIVIDUAL_STUDENTS" - ], - "description": "Assignee mode of the announcement.\nIf unspecified, the default value is `ALL_STUDENTS`.", - "type": "string" - }, - "alternateLink": { - "description": "Absolute link to this announcement in the Classroom web UI.\nThis is only populated if `state` is `PUBLISHED`.\n\nRead-only.", - "type": "string" - } - }, - "id": "Announcement" - }, - "ModifyIndividualStudentsOptions": { - "description": "Contains fields to add or remove students from a course work or announcement\nwhere the `assigneeMode` is set to `INDIVIDUAL_STUDENTS`.", - "type": "object", - "properties": { - "addStudentIds": { - "description": "Ids of students to be added as having access to this\ncoursework/announcement.", - "type": "array", - "items": { - "type": "string" - } - }, - "removeStudentIds": { - "description": "Ids of students to be removed from having access to this\ncoursework/announcement.", - "type": "array", - "items": { - "type": "string" - } - } - }, - "id": "ModifyIndividualStudentsOptions" - }, - "DriveFolder": { - "description": "Representation of a Google Drive folder.", - "type": "object", - "properties": { - "id": { - "description": "Drive API resource ID.", - "type": "string" - }, - "title": { - "description": "Title of the Drive folder.\n\nRead-only.", - "type": "string" - }, - "alternateLink": { - "description": "URL that can be used to access the Drive folder.\n\nRead-only.", - "type": "string" - } - }, - "id": "DriveFolder" - }, - "SubmissionHistory": { - "description": "The history of the submission. This currently includes state and grade\nhistories.", - "type": "object", - "properties": { - "gradeHistory": { - "$ref": "GradeHistory", - "description": "The grade history information of the submission, if present." - }, - "stateHistory": { - "description": "The state history information of the submission, if present.", - "$ref": "StateHistory" - } - }, - "id": "SubmissionHistory" - }, - "ShortAnswerSubmission": { - "type": "object", - "properties": { - "answer": { - "description": "Student response to a short-answer question.", - "type": "string" - } - }, - "id": "ShortAnswerSubmission", - "description": "Student work for a short answer question." - }, - "StudentSubmission": { - "id": "StudentSubmission", - "description": "Student submission for course work.\n\nStudentSubmission items are generated when a CourseWork item is created.\n\nStudentSubmissions that have never been accessed (i.e. with `state` = NEW)\nmay not have a creation time or update time.", - "type": "object", - "properties": { - "state": { - "enumDescriptions": [ - "No state specified. This should never be returned.", - "The student has never accessed this submission. Attachments are not\nreturned and timestamps is not set.", - "Has been created.", - "Has been turned in to the teacher.", - "Has been returned to the student.", - "Student chose to \"unsubmit\" the assignment." - ], - "enum": [ - "SUBMISSION_STATE_UNSPECIFIED", - "NEW", - "CREATED", - "TURNED_IN", - "RETURNED", - "RECLAIMED_BY_STUDENT" - ], - "description": "State of this submission.\n\nRead-only.", - "type": "string" - }, - "userId": { - "description": "Identifier for the student that owns this submission.\n\nRead-only.", - "type": "string" - }, - "courseWorkId": { - "description": "Identifier for the course work this corresponds to.\n\nRead-only.", - "type": "string" - }, - "courseId": { - "description": "Identifier of the course.\n\nRead-only.", - "type": "string" - }, - "id": { - "description": "Classroom-assigned Identifier for the student submission.\nThis is unique among submissions for the relevant course work.\n\nRead-only.", - "type": "string" - }, - "submissionHistory": { - "description": "The history of the submission (includes state and grade histories).\n\nRead-only.", - "type": "array", - "items": { - "$ref": "SubmissionHistory" - } - }, - "assignedGrade": { - "description": "Optional grade. If unset, no grade was set.\nThis value must be non-negative. Decimal (i.e. non-integer) values are\nallowed, but will be rounded to two decimal places.\n\nThis may be modified only by course teachers.", - "format": "double", - "type": "number" - }, - "multipleChoiceSubmission": { - "description": "Submission content when course_work_type is MULTIPLE_CHOICE_QUESTION.", - "$ref": "MultipleChoiceSubmission" - }, - "assignmentSubmission": { - "$ref": "AssignmentSubmission", - "description": "Submission content when course_work_type is ASSIGNMENT.\n\nStudents can modify this content using\ngoogle.classroom.Work.ModifyAttachments." - }, - "shortAnswerSubmission": { - "description": "Submission content when course_work_type is SHORT_ANSWER_QUESTION.", - "$ref": "ShortAnswerSubmission" - }, - "associatedWithDeveloper": { - "description": "Whether this student submission is associated with the Developer Console\nproject making the request.\n\nSee google.classroom.Work.CreateCourseWork for more\ndetails.\n\nRead-only.", - "type": "boolean" - }, - "updateTime": { - "description": "Last update time of this submission.\nThis may be unset if the student has not accessed this item.\n\nRead-only.", - "format": "google-datetime", - "type": "string" - }, - "alternateLink": { - "description": "Absolute link to the submission in the Classroom web UI.\n\nRead-only.", - "type": "string" - }, - "draftGrade": { - "description": "Optional pending grade. If unset, no grade was set.\nThis value must be non-negative. Decimal (i.e. non-integer) values are\nallowed, but will be rounded to two decimal places.\n\nThis is only visible to and modifiable by course teachers.", - "format": "double", - "type": "number" - }, - "late": { - "type": "boolean", - "description": "Whether this submission is late.\n\nRead-only." - }, - "courseWorkType": { - "description": "Type of course work this submission is for.\n\nRead-only.", - "type": "string", - "enumDescriptions": [ - "No work type specified. This is never returned.", - "An assignment.", - "A short answer question.", - "A multiple-choice question." - ], - "enum": [ - "COURSE_WORK_TYPE_UNSPECIFIED", - "ASSIGNMENT", - "SHORT_ANSWER_QUESTION", - "MULTIPLE_CHOICE_QUESTION" - ] - }, - "creationTime": { - "description": "Creation time of this submission.\nThis may be unset if the student has not accessed this item.\n\nRead-only.", - "format": "google-datetime", - "type": "string" - } - } - }, - "ListStudentSubmissionsResponse": { - "type": "object", - "properties": { - "nextPageToken": { - "type": "string", - "description": "Token identifying the next page of results to return. If empty, no further\nresults are available." - }, - "studentSubmissions": { - "description": "Student work that matches the request.", - "type": "array", - "items": { - "$ref": "StudentSubmission" - } - } - }, - "id": "ListStudentSubmissionsResponse", - "description": "Response when listing student submissions." - }, - "ModifyAttachmentsRequest": { - "description": "Request to modify the attachments of a student submission.", - "type": "object", - "properties": { - "addAttachments": { - "description": "Attachments to add.\nA student submission may not have more than 20 attachments.\n\nForm attachments are not supported.", - "type": "array", - "items": { - "$ref": "Attachment" - } - } - }, - "id": "ModifyAttachmentsRequest" - }, - "YouTubeVideo": { - "description": "YouTube video item.", - "type": "object", - "properties": { - "alternateLink": { - "description": "URL that can be used to view the YouTube video.\n\nRead-only.", - "type": "string" - }, - "thumbnailUrl": { - "description": "URL of a thumbnail image of the YouTube video.\n\nRead-only.", - "type": "string" - }, - "id": { - "description": "YouTube API resource ID.", - "type": "string" - }, - "title": { - "type": "string", - "description": "Title of the YouTube video.\n\nRead-only." - } - }, - "id": "YouTubeVideo" - }, - "ListInvitationsResponse": { - "description": "Response when listing invitations.", - "type": "object", - "properties": { - "nextPageToken": { - "description": "Token identifying the next page of results to return. If empty, no further\nresults are available.", - "type": "string" - }, - "invitations": { - "description": "Invitations that match the list request.", - "type": "array", - "items": { - "$ref": "Invitation" - } - } - }, - "id": "ListInvitationsResponse" - }, - "CloudPubsubTopic": { - "type": "object", - "properties": { - "topicName": { - "description": "The `name` field of a Cloud Pub/Sub\n[Topic](https://cloud.google.com/pubsub/docs/reference/rest/v1/projects.topics#Topic).", - "type": "string" - } - }, - "id": "CloudPubsubTopic", - "description": "A reference to a Cloud Pub/Sub topic.\n\nTo register for notifications, the owner of the topic must grant\n`classroom-notifications@system.gserviceaccount.com` the\n `projects.topics.publish` permission." - }, "GuardianInvitation": { - "type": "object", + "description": "An invitation to become the guardian of a specified user, sent to a specified\nemail address.", + "id": "GuardianInvitation", "properties": { "creationTime": { "description": "The time that this invitation was created.\n\nRead-only.", @@ -3379,37 +2731,533 @@ "description": "Unique identifier for this invitation.\n\nRead-only.", "type": "string" }, - "studentId": { - "description": "ID of the student (in standard format)", + "invitedEmailAddress": { + "description": "Email address that the invitation was sent to.\nThis field is only visible to domain administrators.", "type": "string" }, "state": { "description": "The state that this invitation is in.", - "type": "string", + "enum": [ + "GUARDIAN_INVITATION_STATE_UNSPECIFIED", + "PENDING", + "COMPLETE" + ], "enumDescriptions": [ "Should never be returned.", "The invitation is active and awaiting a response.", "The invitation is no longer active. It may have been accepted, declined,\nwithdrawn or it may have expired." ], - "enum": [ - "GUARDIAN_INVITATION_STATE_UNSPECIFIED", - "PENDING", - "COMPLETE" - ] + "type": "string" }, - "invitedEmailAddress": { - "description": "Email address that the invitation was sent to.\nThis field is only visible to domain administrators.", + "studentId": { + "description": "ID of the student (in standard format)", "type": "string" } }, - "id": "GuardianInvitation", - "description": "An invitation to become the guardian of a specified user, sent to a specified\nemail address." + "type": "object" + }, + "IndividualStudentsOptions": { + "description": "Assignee details about a coursework/announcement.\nThis field is set if and only if `assigneeMode` is `INDIVIDUAL_STUDENTS`.", + "id": "IndividualStudentsOptions", + "properties": { + "studentIds": { + "description": "Identifiers for the students that have access to the\ncoursework/announcement.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "Invitation": { + "description": "An invitation to join a course.", + "id": "Invitation", + "properties": { + "courseId": { + "description": "Identifier of the course to invite the user to.", + "type": "string" + }, + "id": { + "description": "Identifier assigned by Classroom.\n\nRead-only.", + "type": "string" + }, + "role": { + "description": "Role to invite the user to have.\nMust not be `COURSE_ROLE_UNSPECIFIED`.", + "enum": [ + "COURSE_ROLE_UNSPECIFIED", + "STUDENT", + "TEACHER", + "OWNER" + ], + "enumDescriptions": [ + "No course role.", + "Student in the course.", + "Teacher of the course.", + "Owner of the course." + ], + "type": "string" + }, + "userId": { + "description": "Identifier of the invited user.\n\nWhen specified as a parameter of a request, this identifier can be set to\none of the following:\n\n* the numeric identifier for the user\n* the email address of the user\n* the string literal `\"me\"`, indicating the requesting user", + "type": "string" + } + }, + "type": "object" + }, + "Link": { + "description": "URL item.", + "id": "Link", + "properties": { + "thumbnailUrl": { + "description": "URL of a thumbnail image of the target URL.\n\nRead-only.", + "type": "string" + }, + "title": { + "description": "Title of the target of the URL.\n\nRead-only.", + "type": "string" + }, + "url": { + "description": "URL to link to.\nThis must be a valid UTF-8 string containing between 1 and 2024 characters.", + "type": "string" + } + }, + "type": "object" + }, + "ListAnnouncementsResponse": { + "description": "Response when listing course work.", + "id": "ListAnnouncementsResponse", + "properties": { + "announcements": { + "description": "Announcement items that match the request.", + "items": { + "$ref": "Announcement" + }, + "type": "array" + }, + "nextPageToken": { + "description": "Token identifying the next page of results to return. If empty, no further\nresults are available.", + "type": "string" + } + }, + "type": "object" + }, + "ListCourseAliasesResponse": { + "description": "Response when listing course aliases.", + "id": "ListCourseAliasesResponse", + "properties": { + "aliases": { + "description": "The course aliases.", + "items": { + "$ref": "CourseAlias" + }, + "type": "array" + }, + "nextPageToken": { + "description": "Token identifying the next page of results to return. If empty, no further\nresults are available.", + "type": "string" + } + }, + "type": "object" + }, + "ListCourseWorkResponse": { + "description": "Response when listing course work.", + "id": "ListCourseWorkResponse", + "properties": { + "courseWork": { + "description": "Course work items that match the request.", + "items": { + "$ref": "CourseWork" + }, + "type": "array" + }, + "nextPageToken": { + "description": "Token identifying the next page of results to return. If empty, no further\nresults are available.", + "type": "string" + } + }, + "type": "object" + }, + "ListCoursesResponse": { + "description": "Response when listing courses.", + "id": "ListCoursesResponse", + "properties": { + "courses": { + "description": "Courses that match the list request.", + "items": { + "$ref": "Course" + }, + "type": "array" + }, + "nextPageToken": { + "description": "Token identifying the next page of results to return. If empty, no further\nresults are available.", + "type": "string" + } + }, + "type": "object" + }, + "ListGuardianInvitationsResponse": { + "description": "Response when listing guardian invitations.", + "id": "ListGuardianInvitationsResponse", + "properties": { + "guardianInvitations": { + "description": "Guardian invitations that matched the list request.", + "items": { + "$ref": "GuardianInvitation" + }, + "type": "array" + }, + "nextPageToken": { + "description": "Token identifying the next page of results to return. If empty, no further\nresults are available.", + "type": "string" + } + }, + "type": "object" + }, + "ListGuardiansResponse": { + "description": "Response when listing guardians.", + "id": "ListGuardiansResponse", + "properties": { + "guardians": { + "description": "Guardians on this page of results that met the criteria specified in\nthe request.", + "items": { + "$ref": "Guardian" + }, + "type": "array" + }, + "nextPageToken": { + "description": "Token identifying the next page of results to return. If empty, no further\nresults are available.", + "type": "string" + } + }, + "type": "object" + }, + "ListInvitationsResponse": { + "description": "Response when listing invitations.", + "id": "ListInvitationsResponse", + "properties": { + "invitations": { + "description": "Invitations that match the list request.", + "items": { + "$ref": "Invitation" + }, + "type": "array" + }, + "nextPageToken": { + "description": "Token identifying the next page of results to return. If empty, no further\nresults are available.", + "type": "string" + } + }, + "type": "object" + }, + "ListStudentSubmissionsResponse": { + "description": "Response when listing student submissions.", + "id": "ListStudentSubmissionsResponse", + "properties": { + "nextPageToken": { + "description": "Token identifying the next page of results to return. If empty, no further\nresults are available.", + "type": "string" + }, + "studentSubmissions": { + "description": "Student work that matches the request.", + "items": { + "$ref": "StudentSubmission" + }, + "type": "array" + } + }, + "type": "object" + }, + "ListStudentsResponse": { + "description": "Response when listing students.", + "id": "ListStudentsResponse", + "properties": { + "nextPageToken": { + "description": "Token identifying the next page of results to return. If empty, no further\nresults are available.", + "type": "string" + }, + "students": { + "description": "Students who match the list request.", + "items": { + "$ref": "Student" + }, + "type": "array" + } + }, + "type": "object" + }, + "ListTeachersResponse": { + "description": "Response when listing teachers.", + "id": "ListTeachersResponse", + "properties": { + "nextPageToken": { + "description": "Token identifying the next page of results to return. If empty, no further\nresults are available.", + "type": "string" + }, + "teachers": { + "description": "Teachers who match the list request.", + "items": { + "$ref": "Teacher" + }, + "type": "array" + } + }, + "type": "object" + }, + "ListTopicResponse": { + "description": "Response when listing topics.", + "id": "ListTopicResponse", + "properties": { + "nextPageToken": { + "description": "Token identifying the next page of results to return. If empty, no further\nresults are available.", + "type": "string" + }, + "topic": { + "description": "Topic items that match the request.", + "items": { + "$ref": "Topic" + }, + "type": "array" + } + }, + "type": "object" + }, + "Material": { + "description": "Material attached to course work.\n\nWhen creating attachments, setting the `form` field is not supported.", + "id": "Material", + "properties": { + "driveFile": { + "$ref": "SharedDriveFile", + "description": "Google Drive file material." + }, + "form": { + "$ref": "Form", + "description": "Google Forms material." + }, + "link": { + "$ref": "Link", + "description": "Link material. On creation, will be upgraded to a more appropriate type\nif possible, and this will be reflected in the response." + }, + "youtubeVideo": { + "$ref": "YouTubeVideo", + "description": "YouTube video material." + } + }, + "type": "object" + }, + "ModifyAnnouncementAssigneesRequest": { + "description": "Request to modify assignee mode and options of an announcement.", + "id": "ModifyAnnouncementAssigneesRequest", + "properties": { + "assigneeMode": { + "description": "Mode of the announcement describing whether it will be accessible by all\nstudents or specified individual students.", + "enum": [ + "ASSIGNEE_MODE_UNSPECIFIED", + "ALL_STUDENTS", + "INDIVIDUAL_STUDENTS" + ], + "enumDescriptions": [ + "No mode specified. This is never returned.", + "All students can see the item.\nThis is the default state.", + "A subset of the students can see the item." + ], + "type": "string" + }, + "modifyIndividualStudentsOptions": { + "$ref": "ModifyIndividualStudentsOptions", + "description": "Set which students can view or cannot view the announcement.\nMust be specified only when `assigneeMode` is `INDIVIDUAL_STUDENTS`." + } + }, + "type": "object" + }, + "ModifyAttachmentsRequest": { + "description": "Request to modify the attachments of a student submission.", + "id": "ModifyAttachmentsRequest", + "properties": { + "addAttachments": { + "description": "Attachments to add.\nA student submission may not have more than 20 attachments.\n\nForm attachments are not supported.", + "items": { + "$ref": "Attachment" + }, + "type": "array" + } + }, + "type": "object" + }, + "ModifyCourseWorkAssigneesRequest": { + "description": "Request to modify assignee mode and options of a coursework.", + "id": "ModifyCourseWorkAssigneesRequest", + "properties": { + "assigneeMode": { + "description": "Mode of the coursework describing whether it will be assigned to all\nstudents or specified individual students.", + "enum": [ + "ASSIGNEE_MODE_UNSPECIFIED", + "ALL_STUDENTS", + "INDIVIDUAL_STUDENTS" + ], + "enumDescriptions": [ + "No mode specified. This is never returned.", + "All students can see the item.\nThis is the default state.", + "A subset of the students can see the item." + ], + "type": "string" + }, + "modifyIndividualStudentsOptions": { + "$ref": "ModifyIndividualStudentsOptions", + "description": "Set which students are assigned or not assigned to the coursework.\nMust be specified only when `assigneeMode` is `INDIVIDUAL_STUDENTS`." + } + }, + "type": "object" + }, + "ModifyIndividualStudentsOptions": { + "description": "Contains fields to add or remove students from a course work or announcement\nwhere the `assigneeMode` is set to `INDIVIDUAL_STUDENTS`.", + "id": "ModifyIndividualStudentsOptions", + "properties": { + "addStudentIds": { + "description": "Ids of students to be added as having access to this\ncoursework/announcement.", + "items": { + "type": "string" + }, + "type": "array" + }, + "removeStudentIds": { + "description": "Ids of students to be removed from having access to this\ncoursework/announcement.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "MultipleChoiceQuestion": { + "description": "Additional details for multiple-choice questions.", + "id": "MultipleChoiceQuestion", + "properties": { + "choices": { + "description": "Possible choices.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "MultipleChoiceSubmission": { + "description": "Student work for a multiple-choice question.", + "id": "MultipleChoiceSubmission", + "properties": { + "answer": { + "description": "Student's select choice.", + "type": "string" + } + }, + "type": "object" + }, + "Name": { + "description": "Details of the user's name.", + "id": "Name", + "properties": { + "familyName": { + "description": "The user's last name.\n\nRead-only.", + "type": "string" + }, + "fullName": { + "description": "The user's full name formed by concatenating the first and last name\nvalues.\n\nRead-only.", + "type": "string" + }, + "givenName": { + "description": "The user's first name.\n\nRead-only.", + "type": "string" + } + }, + "type": "object" + }, + "ReclaimStudentSubmissionRequest": { + "description": "Request to reclaim a student submission.", + "id": "ReclaimStudentSubmissionRequest", + "properties": {}, + "type": "object" + }, + "Registration": { + "description": "An instruction to Classroom to send notifications from the `feed` to the\nprovided `destination`.", + "id": "Registration", + "properties": { + "cloudPubsubTopic": { + "$ref": "CloudPubsubTopic", + "description": "The Cloud Pub/Sub topic that notifications are to be sent to." + }, + "expiryTime": { + "description": "The time until which the `Registration` is effective.\n\nThis is a read-only field assigned by the server.", + "format": "google-datetime", + "type": "string" + }, + "feed": { + "$ref": "Feed", + "description": "Specification for the class of notifications that Classroom should deliver\nto the `destination`." + }, + "registrationId": { + "description": "A server-generated unique identifier for this `Registration`.\n\nRead-only.", + "type": "string" + } + }, + "type": "object" + }, + "ReturnStudentSubmissionRequest": { + "description": "Request to return a student submission.", + "id": "ReturnStudentSubmissionRequest", + "properties": {}, + "type": "object" + }, + "SharedDriveFile": { + "description": "Drive file that is used as material for course work.", + "id": "SharedDriveFile", + "properties": { + "driveFile": { + "$ref": "DriveFile", + "description": "Drive file details." + }, + "shareMode": { + "description": "Mechanism by which students access the Drive item.", + "enum": [ + "UNKNOWN_SHARE_MODE", + "VIEW", + "EDIT", + "STUDENT_COPY" + ], + "enumDescriptions": [ + "No sharing mode specified. This should never be returned.", + "Students can view the shared file.", + "Students can edit the shared file.", + "Students have a personal copy of the shared file." + ], + "type": "string" + } + }, + "type": "object" + }, + "ShortAnswerSubmission": { + "description": "Student work for a short answer question.", + "id": "ShortAnswerSubmission", + "properties": { + "answer": { + "description": "Student response to a short-answer question.", + "type": "string" + } + }, + "type": "object" }, "StateHistory": { "description": "The history of each state this submission has been in.", - "type": "object", + "id": "StateHistory", "properties": { + "actorUserId": { + "description": "The teacher or student who made the change", + "type": "string" + }, "state": { + "description": "The workflow pipeline stage.", "enum": [ "STATE_UNSPECIFIED", "CREATED", @@ -3418,8 +3266,6 @@ "RECLAIMED_BY_STUDENT", "STUDENT_EDITED_AFTER_TURN_IN" ], - "description": "The workflow pipeline stage.", - "type": "string", "enumDescriptions": [ "No state specified. This should never be returned.", "The Submission has been created.", @@ -3427,146 +3273,300 @@ "The teacher has returned the assigned document to the student.", "The student turned in the assigned document, and then chose to\n\"unsubmit\" the assignment, giving the student control again as the\nowner.", "The student edited their submission after turning it in. Currently,\nonly used by Questions, when the student edits their answer." - ] + ], + "type": "string" }, "stateTimestamp": { "description": "When the submission entered this state.", "format": "google-datetime", "type": "string" + } + }, + "type": "object" + }, + "Student": { + "description": "Student in a course.", + "id": "Student", + "properties": { + "courseId": { + "description": "Identifier of the course.\n\nRead-only.", + "type": "string" }, - "actorUserId": { - "description": "The teacher or student who made the change", + "profile": { + "$ref": "UserProfile", + "description": "Global user information for the student.\n\nRead-only." + }, + "studentWorkFolder": { + "$ref": "DriveFolder", + "description": "Information about a Drive Folder for this student's work in this course.\nOnly visible to the student and domain administrators.\n\nRead-only." + }, + "userId": { + "description": "Identifier of the user.\n\nWhen specified as a parameter of a request, this identifier can be one of\nthe following:\n\n* the numeric identifier for the user\n* the email address of the user\n* the string literal `\"me\"`, indicating the requesting user", "type": "string" } }, - "id": "StateHistory" + "type": "object" }, - "CourseMaterialSet": { - "description": "A set of materials that appears on the \"About\" page of the course.\nThese materials might include a syllabus, schedule, or other background\ninformation relating to the course as a whole.", - "type": "object", + "StudentSubmission": { + "description": "Student submission for course work.\n\nStudentSubmission items are generated when a CourseWork item is created.\n\nStudentSubmissions that have never been accessed (i.e. with `state` = NEW)\nmay not have a creation time or update time.", + "id": "StudentSubmission", "properties": { - "title": { - "description": "Title for this set.", + "alternateLink": { + "description": "Absolute link to the submission in the Classroom web UI.\n\nRead-only.", "type": "string" }, - "materials": { - "description": "Materials attached to this set.", - "type": "array", + "assignedGrade": { + "description": "Optional grade. If unset, no grade was set.\nThis value must be non-negative. Decimal (i.e. non-integer) values are\nallowed, but will be rounded to two decimal places.\n\nThis may be modified only by course teachers.", + "format": "double", + "type": "number" + }, + "assignmentSubmission": { + "$ref": "AssignmentSubmission", + "description": "Submission content when course_work_type is ASSIGNMENT.\n\nStudents can modify this content using\ngoogle.classroom.Work.ModifyAttachments." + }, + "associatedWithDeveloper": { + "description": "Whether this student submission is associated with the Developer Console\nproject making the request.\n\nSee google.classroom.Work.CreateCourseWork for more\ndetails.\n\nRead-only.", + "type": "boolean" + }, + "courseId": { + "description": "Identifier of the course.\n\nRead-only.", + "type": "string" + }, + "courseWorkId": { + "description": "Identifier for the course work this corresponds to.\n\nRead-only.", + "type": "string" + }, + "courseWorkType": { + "description": "Type of course work this submission is for.\n\nRead-only.", + "enum": [ + "COURSE_WORK_TYPE_UNSPECIFIED", + "ASSIGNMENT", + "SHORT_ANSWER_QUESTION", + "MULTIPLE_CHOICE_QUESTION" + ], + "enumDescriptions": [ + "No work type specified. This is never returned.", + "An assignment.", + "A short answer question.", + "A multiple-choice question." + ], + "type": "string" + }, + "creationTime": { + "description": "Creation time of this submission.\nThis may be unset if the student has not accessed this item.\n\nRead-only.", + "format": "google-datetime", + "type": "string" + }, + "draftGrade": { + "description": "Optional pending grade. If unset, no grade was set.\nThis value must be non-negative. Decimal (i.e. non-integer) values are\nallowed, but will be rounded to two decimal places.\n\nThis is only visible to and modifiable by course teachers.", + "format": "double", + "type": "number" + }, + "id": { + "description": "Classroom-assigned Identifier for the student submission.\nThis is unique among submissions for the relevant course work.\n\nRead-only.", + "type": "string" + }, + "late": { + "description": "Whether this submission is late.\n\nRead-only.", + "type": "boolean" + }, + "multipleChoiceSubmission": { + "$ref": "MultipleChoiceSubmission", + "description": "Submission content when course_work_type is MULTIPLE_CHOICE_QUESTION." + }, + "shortAnswerSubmission": { + "$ref": "ShortAnswerSubmission", + "description": "Submission content when course_work_type is SHORT_ANSWER_QUESTION." + }, + "state": { + "description": "State of this submission.\n\nRead-only.", + "enum": [ + "SUBMISSION_STATE_UNSPECIFIED", + "NEW", + "CREATED", + "TURNED_IN", + "RETURNED", + "RECLAIMED_BY_STUDENT" + ], + "enumDescriptions": [ + "No state specified. This should never be returned.", + "The student has never accessed this submission. Attachments are not\nreturned and timestamps is not set.", + "Has been created.", + "Has been turned in to the teacher.", + "Has been returned to the student.", + "Student chose to \"unsubmit\" the assignment." + ], + "type": "string" + }, + "submissionHistory": { + "description": "The history of the submission (includes state and grade histories).\n\nRead-only.", "items": { - "$ref": "CourseMaterial" - } - } - }, - "id": "CourseMaterialSet" - }, - "ListTeachersResponse": { - "description": "Response when listing teachers.", - "type": "object", - "properties": { - "nextPageToken": { - "description": "Token identifying the next page of results to return. If empty, no further\nresults are available.", + "$ref": "SubmissionHistory" + }, + "type": "array" + }, + "updateTime": { + "description": "Last update time of this submission.\nThis may be unset if the student has not accessed this item.\n\nRead-only.", + "format": "google-datetime", "type": "string" }, - "teachers": { - "description": "Teachers who match the list request.", - "type": "array", - "items": { - "$ref": "Teacher" - } + "userId": { + "description": "Identifier for the student that owns this submission.\n\nRead-only.", + "type": "string" } }, - "id": "ListTeachersResponse" + "type": "object" }, - "Link": { - "description": "URL item.", - "type": "object", + "SubmissionHistory": { + "description": "The history of the submission. This currently includes state and grade\nhistories.", + "id": "SubmissionHistory", "properties": { + "gradeHistory": { + "$ref": "GradeHistory", + "description": "The grade history information of the submission, if present." + }, + "stateHistory": { + "$ref": "StateHistory", + "description": "The state history information of the submission, if present." + } + }, + "type": "object" + }, + "Teacher": { + "description": "Teacher of a course.", + "id": "Teacher", + "properties": { + "courseId": { + "description": "Identifier of the course.\n\nRead-only.", + "type": "string" + }, + "profile": { + "$ref": "UserProfile", + "description": "Global user information for the teacher.\n\nRead-only." + }, + "userId": { + "description": "Identifier of the user.\n\nWhen specified as a parameter of a request, this identifier can be one of\nthe following:\n\n* the numeric identifier for the user\n* the email address of the user\n* the string literal `\"me\"`, indicating the requesting user", + "type": "string" + } + }, + "type": "object" + }, + "TimeOfDay": { + "description": "Represents a time of day. The date and time zone are either not significant\nor are specified elsewhere. An API may choose to allow leap seconds. Related\ntypes are google.type.Date and `google.protobuf.Timestamp`.", + "id": "TimeOfDay", + "properties": { + "hours": { + "description": "Hours of day in 24 hour format. Should be from 0 to 23. An API may choose\nto allow the value \"24:00:00\" for scenarios like business closing time.", + "format": "int32", + "type": "integer" + }, + "minutes": { + "description": "Minutes of hour of day. Must be from 0 to 59.", + "format": "int32", + "type": "integer" + }, + "nanos": { + "description": "Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999.", + "format": "int32", + "type": "integer" + }, + "seconds": { + "description": "Seconds of minutes of the time. Must normally be from 0 to 59. An API may\nallow the value 60 if it allows leap-seconds.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "Topic": { + "description": "Topic created by a teacher for the course", + "id": "Topic", + "properties": { + "courseId": { + "description": "Identifier of the course.\n\nRead-only.", + "type": "string" + }, + "name": { + "description": "The name of the topic, generated by the user.\nLeading and trailing whitespaces, if any, will be trimmed. Also, multiple\nconsecutive whitespaces will be collapsed into one inside the name.\nTopic names are case sensitive, and must be no longer than 100 characters.", + "type": "string" + }, + "topicId": { + "description": "Unique identifier for the topic.\n\nRead-only.", + "type": "string" + }, + "updateTime": { + "description": "The time the topic was last updated by the system.\n\nRead-only.", + "format": "google-datetime", + "type": "string" + } + }, + "type": "object" + }, + "TurnInStudentSubmissionRequest": { + "description": "Request to turn in a student submission.", + "id": "TurnInStudentSubmissionRequest", + "properties": {}, + "type": "object" + }, + "UserProfile": { + "description": "Global information for a user.", + "id": "UserProfile", + "properties": { + "emailAddress": { + "description": "Email address of the user.\n\nRead-only.", + "type": "string" + }, + "id": { + "description": "Identifier of the user.\n\nRead-only.", + "type": "string" + }, + "name": { + "$ref": "Name", + "description": "Name of the user.\n\nRead-only." + }, + "permissions": { + "description": "Global permissions of the user.\n\nRead-only.", + "items": { + "$ref": "GlobalPermission" + }, + "type": "array" + }, + "photoUrl": { + "description": "URL of user's profile photo.\n\nRead-only.", + "type": "string" + }, + "verifiedTeacher": { + "description": "Represents whether a G Suite for Education user's domain administrator has\nexplicitly verified them as being a teacher. If the user is not a member of\na G Suite for Education domain, than this field will always be false.\n\nRead-only", + "type": "boolean" + } + }, + "type": "object" + }, + "YouTubeVideo": { + "description": "YouTube video item.", + "id": "YouTubeVideo", + "properties": { + "alternateLink": { + "description": "URL that can be used to view the YouTube video.\n\nRead-only.", + "type": "string" + }, + "id": { + "description": "YouTube API resource ID.", + "type": "string" + }, "thumbnailUrl": { - "description": "URL of a thumbnail image of the target URL.\n\nRead-only.", - "type": "string" - }, - "url": { - "description": "URL to link to.\nThis must be a valid UTF-8 string containing between 1 and 2024 characters.", + "description": "URL of a thumbnail image of the YouTube video.\n\nRead-only.", "type": "string" }, "title": { - "description": "Title of the target of the URL.\n\nRead-only.", + "description": "Title of the YouTube video.\n\nRead-only.", "type": "string" } }, - "id": "Link" + "type": "object" } }, - "icons": { - "x32": "http://www.google.com/images/icons/product/search-32.gif", - "x16": "http://www.google.com/images/icons/product/search-16.gif" - }, - "protocol": "rest", - "version": "v1", - "baseUrl": "https://classroom.googleapis.com/", - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/classroom.courses.readonly": { - "description": "View your Google Classroom classes" - }, - "https://www.googleapis.com/auth/classroom.announcements": { - "description": "View and manage announcements in Google Classroom" - }, - "https://www.googleapis.com/auth/classroom.profile.photos": { - "description": "View the profile photos of people in your classes" - }, - "https://www.googleapis.com/auth/classroom.rosters.readonly": { - "description": "View your Google Classroom class rosters" - }, - "https://www.googleapis.com/auth/classroom.guardianlinks.students": { - "description": "View and manage guardians for students in your Google Classroom classes" - }, - "https://www.googleapis.com/auth/classroom.announcements.readonly": { - "description": "View announcements in Google Classroom" - }, - "https://www.googleapis.com/auth/classroom.student-submissions.me.readonly": { - "description": "View your course work and grades in Google Classroom" - }, - "https://www.googleapis.com/auth/classroom.coursework.students.readonly": { - "description": "View course work and grades for students in the Google Classroom classes you teach or administer" - }, - "https://www.googleapis.com/auth/classroom.coursework.students": { - "description": "Manage course work and grades for students in the Google Classroom classes you teach and view the course work and grades for classes you administer" - }, - "https://www.googleapis.com/auth/classroom.guardianlinks.me.readonly": { - "description": "View your Google Classroom guardians" - }, - "https://www.googleapis.com/auth/classroom.coursework.me.readonly": { - "description": "View your course work and grades in Google Classroom" - }, - "https://www.googleapis.com/auth/classroom.profile.emails": { - "description": "View the email addresses of people in your classes" - }, - "https://www.googleapis.com/auth/classroom.coursework.me": { - "description": "Manage your course work and view your grades in Google Classroom" - }, - "https://www.googleapis.com/auth/classroom.rosters": { - "description": "Manage your Google Classroom class rosters" - }, - "https://www.googleapis.com/auth/classroom.push-notifications": { - "description": "Receive notifications about your Google Classroom data" - }, - "https://www.googleapis.com/auth/classroom.student-submissions.students.readonly": { - "description": "View course work and grades for students in the Google Classroom classes you teach or administer" - }, - "https://www.googleapis.com/auth/classroom.guardianlinks.students.readonly": { - "description": "View guardians for students in your Google Classroom classes" - }, - "https://www.googleapis.com/auth/classroom.courses": { - "description": "Manage your Google Classroom classes" - } - } - } - }, - "kind": "discovery#restDescription", - "description": "Manages classes, rosters, and invitations in Google Classroom.", "servicePath": "", - "rootUrl": "https://classroom.googleapis.com/", - "basePath": "" -} + "title": "Google Classroom API", + "version": "v1" +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/cloudbilling/v1/cloudbilling-api.json b/vendor/google.golang.org/api/cloudbilling/v1/cloudbilling-api.json index 33733c261..4022f823a 100644 --- a/vendor/google.golang.org/api/cloudbilling/v1/cloudbilling-api.json +++ b/vendor/google.golang.org/api/cloudbilling/v1/cloudbilling-api.json @@ -1,116 +1,308 @@ { - "batchPath": "batch", - "fullyEncodeReservedExpansion": true, - "title": "Google Cloud Billing API", - "ownerName": "Google", - "resources": { - "projects": { - "methods": { - "getBillingInfo": { - "response": { - "$ref": "ProjectBillingInfo" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "GET", - "parameters": { - "name": { - "location": "path", - "description": "The resource name of the project for which billing information is\nretrieved. For example, `projects/tokyo-rain-123`.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+$" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/projects/{projectsId}/billingInfo", - "path": "v1/{+name}/billingInfo", - "id": "cloudbilling.projects.getBillingInfo", - "description": "Gets the billing information for a project. The current authenticated user\nmust have [permission to view the\nproject](https://cloud.google.com/docs/permissions-overview#h.bgs0oxofvnoo\n)." - }, - "updateBillingInfo": { - "request": { - "$ref": "ProjectBillingInfo" - }, - "description": "Sets or updates the billing account associated with a project. You specify\nthe new billing account by setting the `billing_account_name` in the\n`ProjectBillingInfo` resource to the resource name of a billing account.\nAssociating a project with an open billing account enables billing on the\nproject and allows charges for resource usage. If the project already had a\nbilling account, this method changes the billing account used for resource\nusage charges.\n\n*Note:* Incurred charges that have not yet been reported in the transaction\nhistory of the Google Cloud Console may be billed to the new billing\naccount, even if the charge occurred before the new billing account was\nassigned to the project.\n\nThe current authenticated user must have ownership privileges for both the\n[project](https://cloud.google.com/docs/permissions-overview#h.bgs0oxofvnoo\n) and the [billing\naccount](https://support.google.com/cloud/answer/4430947).\n\nYou can disable billing on the project by setting the\n`billing_account_name` field to empty. This action disassociates the\ncurrent billing account from the project. Any billable activity of your\nin-use services will stop, and your application could stop functioning as\nexpected. Any unbilled charges to date will be billed to the previously\nassociated account. The current authenticated user must be either an owner\nof the project or an owner of the billing account for the project.\n\nNote that associating a project with a *closed* billing account will have\nmuch the same effect as disabling billing on the project: any paid\nresources used by the project will be shut down. Thus, unless you wish to\ndisable billing, you should always call this method with the name of an\n*open* billing account.", - "response": { - "$ref": "ProjectBillingInfo" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "PUT", - "parameters": { - "name": { - "location": "path", - "description": "The resource name of the project associated with the billing information\nthat you want to update. For example, `projects/tokyo-rain-123`.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+$" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/projects/{projectsId}/billingInfo", - "path": "v1/{+name}/billingInfo", - "id": "cloudbilling.projects.updateBillingInfo" + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/cloud-platform": { + "description": "View and manage your data across Google Cloud Platform services" } } + } + }, + "basePath": "", + "baseUrl": "https://cloudbilling.googleapis.com/", + "batchPath": "batch", + "canonicalName": "Cloudbilling", + "description": "Allows developers to manage billing for their Google Cloud Platform projects\n programmatically.", + "discoveryVersion": "v1", + "documentationLink": "https://cloud.google.com/billing/", + "fullyEncodeReservedExpansion": true, + "icons": { + "x16": "http://www.google.com/images/icons/product/search-16.gif", + "x32": "http://www.google.com/images/icons/product/search-32.gif" + }, + "id": "cloudbilling:v1", + "kind": "discovery#restDescription", + "name": "cloudbilling", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "$.xgafv": { + "description": "V1 error format.", + "enum": [ + "1", + "2" + ], + "enumDescriptions": [ + "v1 error format", + "v2 error format" + ], + "location": "query", + "type": "string" }, + "access_token": { + "description": "OAuth access token.", + "location": "query", + "type": "string" + }, + "alt": { + "default": "json", + "description": "Data format for response.", + "enum": [ + "json", + "media", + "proto" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json", + "Media download with context-dependent Content-Type", + "Responses with Content-Type of application/x-protobuf" + ], + "location": "query", + "type": "string" + }, + "bearer_token": { + "description": "OAuth bearer token.", + "location": "query", + "type": "string" + }, + "callback": { + "description": "JSONP", + "location": "query", + "type": "string" + }, + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "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.", + "location": "query", + "type": "string" + }, + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "pp": { + "default": "true", + "description": "Pretty-print response.", + "location": "query", + "type": "boolean" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", + "location": "query", + "type": "string" + }, + "uploadType": { + "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", + "location": "query", + "type": "string" + }, + "upload_protocol": { + "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", + "location": "query", + "type": "string" + } + }, + "protocol": "rest", + "resources": { "billingAccounts": { "methods": { - "get": { - "description": "Gets information about a billing account. The current authenticated user\nmust be an [owner of the billing\naccount](https://support.google.com/cloud/answer/4430947).", - "httpMethod": "GET", - "parameterOrder": [ - "name" - ], + "create": { + "description": "Creates a billing account.\nThis method can only be used to create\n[billing subaccounts](https://cloud.google.com/billing/docs/concepts).\nWhen creating a subaccount, the current authenticated user must have the\n`billing.accounts.update` IAM permission on the master account, which is\ntypically given to billing account\n[administrators](https://cloud.google.com/billing/docs/how-to/billing-access).\n\n\u003e This method is currently in\n\u003e [Beta](https://cloud.google.com/terms/launch-stages).", + "flatPath": "v1/billingAccounts", + "httpMethod": "POST", + "id": "cloudbilling.billingAccounts.create", + "parameterOrder": [], + "parameters": {}, + "path": "v1/billingAccounts", + "request": { + "$ref": "BillingAccount" + }, "response": { "$ref": "BillingAccount" }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Gets information about a billing account. The current authenticated user\nmust be a [viewer of the billing\naccount](https://cloud.google.com/billing/docs/how-to/billing-access).", + "flatPath": "v1/billingAccounts/{billingAccountsId}", + "httpMethod": "GET", + "id": "cloudbilling.billingAccounts.get", + "parameterOrder": [ + "name" + ], "parameters": { "name": { - "required": true, - "type": "string", - "pattern": "^billingAccounts/[^/]+$", + "description": "The resource name of the billing account to retrieve. For example,\n`billingAccounts/012345-567890-ABCDEF`.", "location": "path", - "description": "The resource name of the billing account to retrieve. For example,\n`billingAccounts/012345-567890-ABCDEF`." + "pattern": "^billingAccounts/[^/]+$", + "required": true, + "type": "string" } }, + "path": "v1/{+name}", + "response": { + "$ref": "BillingAccount" + }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "getIamPolicy": { + "description": "Gets the access control policy for a billing account.\nThe caller must have the `billing.accounts.getIamPolicy` permission on the\naccount, which is often given to billing account\n[viewers](https://cloud.google.com/billing/docs/how-to/billing-access).\n\n\u003e This method is currently in\n\u003e [Beta](https://cloud.google.com/terms/launch-stages).", + "flatPath": "v1/billingAccounts/{billingAccountsId}:getIamPolicy", + "httpMethod": "GET", + "id": "cloudbilling.billingAccounts.getIamPolicy", + "parameterOrder": [ + "resource" ], - "flatPath": "v1/billingAccounts/{billingAccountsId}", - "id": "cloudbilling.billingAccounts.get", - "path": "v1/{+name}" + "parameters": { + "resource": { + "description": "REQUIRED: The resource for which the policy is being requested.\nSee the operation documentation for the appropriate value for this field.", + "location": "path", + "pattern": "^billingAccounts/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+resource}:getIamPolicy", + "response": { + "$ref": "Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] }, "list": { + "description": "Lists the billing accounts that the current authenticated user has\npermission to [view](https://cloud.google.com/billing/docs/how-to/billing-access).", "flatPath": "v1/billingAccounts", - "path": "v1/billingAccounts", + "httpMethod": "GET", "id": "cloudbilling.billingAccounts.list", - "description": "Lists the billing accounts that the current authenticated user\n[owns](https://support.google.com/cloud/answer/4430947).", + "parameterOrder": [], + "parameters": { + "filter": { + "description": "Options for how to filter the returned billing accounts.\nCurrently this only supports filtering for\n[subaccounts](https://cloud.google.com/billing/docs/concepts) under a\nsingle provided reseller billing account.\n(e.g. \"master_billing_account=billingAccounts/012345-678901-ABCDEF\").\nBoolean algebra and other fields are not currently supported.\n\n\u003e This field is currently in\n\u003e [Beta](https://cloud.google.com/terms/launch-stages).", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "Requested page size. The maximum page size is 100; this is also the\ndefault.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "A token identifying a page of results to return. This should be a\n`next_page_token` value returned from a previous `ListBillingAccounts`\ncall. If unspecified, the first page of results is returned.", + "location": "query", + "type": "string" + } + }, + "path": "v1/billingAccounts", "response": { "$ref": "ListBillingAccountsResponse" }, - "parameterOrder": [], - "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "patch": { + "description": "Updates a billing account's fields.\nCurrently the only field that can be edited is `display_name`.\nThe current authenticated user must have the `billing.accounts.update`\nIAM permission, which is typically given to the\n[administrator](https://cloud.google.com/billing/docs/how-to/billing-access)\nof the billing account.\n\n\u003e This method is currently in\n\u003e [Beta](https://cloud.google.com/terms/launch-stages).", + "flatPath": "v1/billingAccounts/{billingAccountsId}", + "httpMethod": "PATCH", + "id": "cloudbilling.billingAccounts.patch", + "parameterOrder": [ + "name" + ], "parameters": { - "pageToken": { - "type": "string", - "location": "query", - "description": "A token identifying a page of results to return. This should be a\n`next_page_token` value returned from a previous `ListBillingAccounts`\ncall. If unspecified, the first page of results is returned." + "name": { + "description": "The name of the billing account resource to be updated.", + "location": "path", + "pattern": "^billingAccounts/[^/]+$", + "required": true, + "type": "string" }, - "pageSize": { - "type": "integer", + "updateMask": { + "description": "The update mask applied to the resource.\nOnly \"display_name\" is currently supported.", + "format": "google-fieldmask", "location": "query", - "description": "Requested page size. The maximum page size is 100; this is also the\ndefault.", - "format": "int32" + "type": "string" } }, + "path": "v1/{+name}", + "request": { + "$ref": "BillingAccount" + }, + "response": { + "$ref": "BillingAccount" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "setIamPolicy": { + "description": "Sets the access control policy for a billing account. Replaces any existing\npolicy.\nThe caller must have the `billing.accounts.setIamPolicy` permission on the\naccount, which is often given to billing account\n[administrators](https://cloud.google.com/billing/docs/how-to/billing-access).\n\n\u003e This method is currently in\n\u003e [Beta](https://cloud.google.com/terms/launch-stages).", + "flatPath": "v1/billingAccounts/{billingAccountsId}:setIamPolicy", + "httpMethod": "POST", + "id": "cloudbilling.billingAccounts.setIamPolicy", + "parameterOrder": [ + "resource" + ], + "parameters": { + "resource": { + "description": "REQUIRED: The resource for which the policy is being specified.\nSee the operation documentation for the appropriate value for this field.", + "location": "path", + "pattern": "^billingAccounts/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+resource}:setIamPolicy", + "request": { + "$ref": "SetIamPolicyRequest" + }, + "response": { + "$ref": "Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "testIamPermissions": { + "description": "Tests the access control policy for a billing account. This method takes\nthe resource and a set of permissions as input and returns the subset of\nthe input permissions that the caller is allowed for that resource.\n\n\u003e This method is currently in\n\u003e [Beta](https://cloud.google.com/terms/launch-stages).", + "flatPath": "v1/billingAccounts/{billingAccountsId}:testIamPermissions", + "httpMethod": "POST", + "id": "cloudbilling.billingAccounts.testIamPermissions", + "parameterOrder": [ + "resource" + ], + "parameters": { + "resource": { + "description": "REQUIRED: The resource for which the policy detail is being requested.\nSee the operation documentation for the appropriate value for this field.", + "location": "path", + "pattern": "^billingAccounts/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+resource}:testIamPermissions", + "request": { + "$ref": "TestIamPermissionsRequest" + }, + "response": { + "$ref": "TestIamPermissionsResponse" + }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ] @@ -120,69 +312,126 @@ "projects": { "methods": { "list": { - "response": { - "$ref": "ListProjectBillingInfoResponse" - }, + "description": "Lists the projects associated with a billing account. The current\nauthenticated user must have the `billing.resourceAssociations.list` IAM\npermission, which is often given to billing account\n[viewers](https://cloud.google.com/billing/docs/how-to/billing-access).", + "flatPath": "v1/billingAccounts/{billingAccountsId}/projects", + "httpMethod": "GET", + "id": "cloudbilling.billingAccounts.projects.list", "parameterOrder": [ "name" ], - "httpMethod": "GET", "parameters": { "name": { - "location": "path", "description": "The resource name of the billing account associated with the projects that\nyou want to list. For example, `billingAccounts/012345-567890-ABCDEF`.", + "location": "path", + "pattern": "^billingAccounts/[^/]+$", "required": true, - "type": "string", - "pattern": "^billingAccounts/[^/]+$" - }, - "pageToken": { - "type": "string", - "location": "query", - "description": "A token identifying a page of results to be returned. This should be a\n`next_page_token` value returned from a previous `ListProjectBillingInfo`\ncall. If unspecified, the first page of results is returned." + "type": "string" }, "pageSize": { - "type": "integer", - "location": "query", "description": "Requested page size. The maximum page size is 100; this is also the\ndefault.", - "format": "int32" + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "A token identifying a page of results to be returned. This should be a\n`next_page_token` value returned from a previous `ListProjectBillingInfo`\ncall. If unspecified, the first page of results is returned.", + "location": "query", + "type": "string" } }, + "path": "v1/{+name}/projects", + "response": { + "$ref": "ListProjectBillingInfoResponse" + }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/billingAccounts/{billingAccountsId}/projects", - "path": "v1/{+name}/projects", - "id": "cloudbilling.billingAccounts.projects.list", - "description": "Lists the projects associated with a billing account. The current\nauthenticated user must have the \"billing.resourceAssociations.list\" IAM\npermission, which is often given to billing account\n[viewers](https://support.google.com/cloud/answer/4430947)." + ] } } } } }, + "projects": { + "methods": { + "getBillingInfo": { + "description": "Gets the billing information for a project. The current authenticated user\nmust have [permission to view the\nproject](https://cloud.google.com/docs/permissions-overview#h.bgs0oxofvnoo\n).", + "flatPath": "v1/projects/{projectsId}/billingInfo", + "httpMethod": "GET", + "id": "cloudbilling.projects.getBillingInfo", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The resource name of the project for which billing information is\nretrieved. For example, `projects/tokyo-rain-123`.", + "location": "path", + "pattern": "^projects/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}/billingInfo", + "response": { + "$ref": "ProjectBillingInfo" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "updateBillingInfo": { + "description": "Sets or updates the billing account associated with a project. You specify\nthe new billing account by setting the `billing_account_name` in the\n`ProjectBillingInfo` resource to the resource name of a billing account.\nAssociating a project with an open billing account enables billing on the\nproject and allows charges for resource usage. If the project already had a\nbilling account, this method changes the billing account used for resource\nusage charges.\n\n*Note:* Incurred charges that have not yet been reported in the transaction\nhistory of the GCP Console might be billed to the new billing\naccount, even if the charge occurred before the new billing account was\nassigned to the project.\n\nThe current authenticated user must have ownership privileges for both the\n[project](https://cloud.google.com/docs/permissions-overview#h.bgs0oxofvnoo\n) and the [billing\naccount](https://cloud.google.com/billing/docs/how-to/billing-access).\n\nYou can disable billing on the project by setting the\n`billing_account_name` field to empty. This action disassociates the\ncurrent billing account from the project. Any billable activity of your\nin-use services will stop, and your application could stop functioning as\nexpected. Any unbilled charges to date will be billed to the previously\nassociated account. The current authenticated user must be either an owner\nof the project or an owner of the billing account for the project.\n\nNote that associating a project with a *closed* billing account will have\nmuch the same effect as disabling billing on the project: any paid\nresources used by the project will be shut down. Thus, unless you wish to\ndisable billing, you should always call this method with the name of an\n*open* billing account.", + "flatPath": "v1/projects/{projectsId}/billingInfo", + "httpMethod": "PUT", + "id": "cloudbilling.projects.updateBillingInfo", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The resource name of the project associated with the billing information\nthat you want to update. For example, `projects/tokyo-rain-123`.", + "location": "path", + "pattern": "^projects/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}/billingInfo", + "request": { + "$ref": "ProjectBillingInfo" + }, + "response": { + "$ref": "ProjectBillingInfo" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + }, "services": { "methods": { "list": { - "flatPath": "v1/services", - "path": "v1/services", - "id": "cloudbilling.services.list", "description": "Lists all public cloud services.", - "response": { - "$ref": "ListServicesResponse" - }, - "parameterOrder": [], + "flatPath": "v1/services", "httpMethod": "GET", + "id": "cloudbilling.services.list", + "parameterOrder": [], "parameters": { - "pageToken": { - "location": "query", - "description": "A token identifying a page of results to return. This should be a\n`next_page_token` value returned from a previous `ListServices`\ncall. If unspecified, the first page of results is returned.", - "type": "string" - }, "pageSize": { - "location": "query", "description": "Requested page size. Defaults to 5000.", "format": "int32", + "location": "query", "type": "integer" + }, + "pageToken": { + "description": "A token identifying a page of results to return. This should be a\n`next_page_token` value returned from a previous `ListServices`\ncall. If unspecified, the first page of results is returned.", + "location": "query", + "type": "string" } + }, + "path": "v1/services", + "response": { + "$ref": "ListServicesResponse" } } }, @@ -191,230 +440,83 @@ "methods": { "list": { "description": "Lists all publicly available SKUs for a given cloud service.", - "response": { - "$ref": "ListSkusResponse" - }, + "flatPath": "v1/services/{servicesId}/skus", + "httpMethod": "GET", + "id": "cloudbilling.services.skus.list", "parameterOrder": [ "parent" ], - "httpMethod": "GET", "parameters": { "currencyCode": { - "type": "string", + "description": "The ISO 4217 currency code for the pricing info in the response proto.\nWill use the conversion rate as of start_time.\nOptional. If not specified USD will be used.", "location": "query", - "description": "The ISO 4217 currency code for the pricing info in the response proto.\nWill use the conversion rate as of start_time.\nOptional. If not specified USD will be used." - }, - "endTime": { - "location": "query", - "description": "Optional exclusive end time of the time range for which the pricing\nversions will be returned. Timestamps in the future are not allowed.\nThe time range has to be within a single calendar month in\nAmerica/Los_Angeles timezone. Time range as a whole is optional. If not\nspecified, the latest pricing will be returned (up to 12 hours old at\nmost).", - "format": "google-datetime", "type": "string" }, - "pageToken": { + "endTime": { + "description": "Optional exclusive end time of the time range for which the pricing\nversions will be returned. Timestamps in the future are not allowed.\nThe time range has to be within a single calendar month in\nAmerica/Los_Angeles timezone. Time range as a whole is optional. If not\nspecified, the latest pricing will be returned (up to 12 hours old at\nmost).", + "format": "google-datetime", "location": "query", + "type": "string" + }, + "pageSize": { + "description": "Requested page size. Defaults to 5000.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { "description": "A token identifying a page of results to return. This should be a\n`next_page_token` value returned from a previous `ListSkus`\ncall. If unspecified, the first page of results is returned.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "The name of the service.\nExample: \"services/DA34-426B-A397\"", + "location": "path", + "pattern": "^services/[^/]+$", + "required": true, "type": "string" }, "startTime": { - "type": "string", - "location": "query", "description": "Optional inclusive start time of the time range for which the pricing\nversions will be returned. Timestamps in the future are not allowed.\nThe time range has to be within a single calendar month in\nAmerica/Los_Angeles timezone. Time range as a whole is optional. If not\nspecified, the latest pricing will be returned (up to 12 hours old at\nmost).", - "format": "google-datetime" - }, - "pageSize": { + "format": "google-datetime", "location": "query", - "description": "Requested page size. Defaults to 5000.", - "format": "int32", - "type": "integer" - }, - "parent": { - "location": "path", - "description": "The name of the service.\nExample: \"services/DA34-426B-A397\"", - "required": true, - "type": "string", - "pattern": "^services/[^/]+$" + "type": "string" } }, - "flatPath": "v1/services/{servicesId}/skus", "path": "v1/{+parent}/skus", - "id": "cloudbilling.services.skus.list" + "response": { + "$ref": "ListSkusResponse" + } } } } } } }, - "parameters": { - "pp": { - "location": "query", - "description": "Pretty-print response.", - "type": "boolean", - "default": "true" - }, - "bearer_token": { - "type": "string", - "location": "query", - "description": "OAuth bearer token." - }, - "oauth_token": { - "location": "query", - "description": "OAuth 2.0 token for the current user.", - "type": "string" - }, - "upload_protocol": { - "location": "query", - "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", - "type": "string" - }, - "prettyPrint": { - "type": "boolean", - "default": "true", - "location": "query", - "description": "Returns response with indentations and line breaks." - }, - "fields": { - "type": "string", - "location": "query", - "description": "Selector specifying which fields to include in a partial response." - }, - "uploadType": { - "type": "string", - "location": "query", - "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\")." - }, - "callback": { - "type": "string", - "location": "query", - "description": "JSONP" - }, - "$.xgafv": { - "location": "query", - "enum": [ - "1", - "2" - ], - "description": "V1 error format.", - "type": "string", - "enumDescriptions": [ - "v1 error format", - "v2 error format" - ] - }, - "alt": { - "default": "json", - "enum": [ - "json", - "media", - "proto" - ], - "type": "string", - "enumDescriptions": [ - "Responses with Content-Type of application/json", - "Media download with context-dependent Content-Type", - "Responses with Content-Type of application/x-protobuf" - ], - "location": "query", - "description": "Data format for response." - }, - "key": { - "type": "string", - "location": "query", - "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": { - "type": "string", - "location": "query", - "description": "OAuth access token." - }, - "quotaUser": { - "location": "query", - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", - "type": "string" - } - }, - "version": "v1", - "baseUrl": "https://cloudbilling.googleapis.com/", - "servicePath": "", - "description": "Allows developers to manage billing for their Google Cloud Platform projects\n programmatically.", - "kind": "discovery#restDescription", - "basePath": "", - "revision": "20180116", - "documentationLink": "https://cloud.google.com/billing/", - "id": "cloudbilling:v1", - "discoveryVersion": "v1", + "revision": "20180307", + "rootUrl": "https://cloudbilling.googleapis.com/", "schemas": { - "TierRate": { - "description": "The price rate indicating starting usage and its corresponding price.", - "type": "object", - "properties": { - "unitPrice": { - "$ref": "Money", - "description": "The price per unit of usage.\nExample: unit_price of amount $10 indicates that each unit will cost $10." - }, - "startUsageAmount": { - "type": "number", - "description": "Usage is priced at this rate only after this amount.\nExample: start_usage_amount of 10 indicates that the usage will be priced\nat the unit_price after the first 10 usage_units.", - "format": "double" - } - }, - "id": "TierRate" - }, - "ListServicesResponse": { - "type": "object", - "properties": { - "services": { - "type": "array", - "items": { - "$ref": "Service" - }, - "description": "A list of services." - }, - "nextPageToken": { - "type": "string", - "description": "A token to retrieve the next page of results. To retrieve the next page,\ncall `ListServices` again with the `page_token` field set to this\nvalue. This field is empty if there are no more results to retrieve." - } - }, - "id": "ListServicesResponse", - "description": "Response message for `ListServices`." - }, - "ListBillingAccountsResponse": { - "description": "Response message for `ListBillingAccounts`.", - "type": "object", - "properties": { - "billingAccounts": { - "description": "A list of billing accounts.", - "type": "array", - "items": { - "$ref": "BillingAccount" - } - }, - "nextPageToken": { - "type": "string", - "description": "A token to retrieve the next page of results. To retrieve the next page,\ncall `ListBillingAccounts` again with the `page_token` field set to this\nvalue. This field is empty if there are no more results to retrieve." - } - }, - "id": "ListBillingAccountsResponse" - }, "AggregationInfo": { - "type": "object", + "description": "Represents the aggregation level and interval for pricing of a single SKU.", + "id": "AggregationInfo", "properties": { + "aggregationCount": { + "description": "The number of intervals to aggregate over.\nExample: If aggregation_level is \"DAILY\" and aggregation_count is 14,\naggregation will be over 14 days.", + "format": "int32", + "type": "integer" + }, "aggregationInterval": { "enum": [ "AGGREGATION_INTERVAL_UNSPECIFIED", "DAILY", "MONTHLY" ], - "type": "string", "enumDescriptions": [ "", "", "" - ] - }, - "aggregationCount": { - "description": "The number of intervals to aggregate over.\nExample: If aggregation_level is \"DAILY\" and aggregation_count is 14,\naggregation will be over 14 days.", - "format": "int32", - "type": "integer" + ], + "type": "string" }, "aggregationLevel": { "enum": [ @@ -422,147 +524,112 @@ "ACCOUNT", "PROJECT" ], - "type": "string", "enumDescriptions": [ "", "", "" - ] - } - }, - "id": "AggregationInfo", - "description": "Represents the aggregation level and interval for pricing of a single SKU." - }, - "Service": { - "description": "Encapsulates a single service in Google Cloud Platform.", - "type": "object", - "properties": { - "serviceId": { - "description": "The identifier for the service.\nExample: \"DA34-426B-A397\"", - "type": "string" - }, - "name": { - "type": "string", - "description": "The resource name for the service.\nExample: \"services/DA34-426B-A397\"" - }, - "displayName": { - "type": "string", - "description": "A human readable display name for this service." - } - }, - "id": "Service" - }, - "ProjectBillingInfo": { - "description": "Encapsulation of billing information for a Cloud Console project. A project\nhas at most one associated billing account at a time (but a billing account\ncan be assigned to multiple projects).", - "type": "object", - "properties": { - "projectId": { - "type": "string", - "description": "The ID of the project that this `ProjectBillingInfo` represents, such as\n`tokyo-rain-123`. This is a convenience field so that you don't need to\nparse the `name` field to obtain a project ID. This field is read-only." - }, - "billingAccountName": { - "description": "The resource name of the billing account associated with the project, if\nany. For example, `billingAccounts/012345-567890-ABCDEF`.", - "type": "string" - }, - "name": { - "type": "string", - "description": "The resource name for the `ProjectBillingInfo`; has the form\n`projects/{project_id}/billingInfo`. For example, the resource name for the\nbilling information for project `tokyo-rain-123` would be\n`projects/tokyo-rain-123/billingInfo`. This field is read-only." - }, - "billingEnabled": { - "type": "boolean", - "description": "True if the project is associated with an open billing account, to which\nusage on the project is charged. False if the project is associated with a\nclosed billing account, or no billing account at all, and therefore cannot\nuse paid services. This field is read-only." - } - }, - "id": "ProjectBillingInfo" - }, - "Money": { - "description": "Represents an amount of money with its currency type.", - "type": "object", - "properties": { - "units": { - "description": "The whole units of the amount.\nFor example if `currencyCode` is `\"USD\"`, then 1 unit is one US dollar.", - "format": "int64", - "type": "string" - }, - "currencyCode": { - "type": "string", - "description": "The 3-letter currency code defined in ISO 4217." - }, - "nanos": { - "type": "integer", - "description": "Number of nano (10^-9) units of the amount.\nThe value must be between -999,999,999 and +999,999,999 inclusive.\nIf `units` is positive, `nanos` must be positive or zero.\nIf `units` is zero, `nanos` can be positive, zero, or negative.\nIf `units` is negative, `nanos` must be negative or zero.\nFor example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.", - "format": "int32" - } - }, - "id": "Money" - }, - "BillingAccount": { - "description": "A billing account in [Google Cloud\nConsole](https://console.cloud.google.com/). You can assign a billing account\nto one or more projects.", - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "The resource name of the billing account. The resource name has the form\n`billingAccounts/{billing_account_id}`. For example,\n`billingAccounts/012345-567890-ABCDEF` would be the resource name for\nbilling account `012345-567890-ABCDEF`." - }, - "open": { - "type": "boolean", - "description": "True if the billing account is open, and will therefore be charged for any\nusage on associated projects. False if the billing account is closed, and\ntherefore projects associated with it will be unable to use paid services." - }, - "displayName": { - "description": "The display name given to the billing account, such as `My Billing\nAccount`. This name is displayed in the Google Cloud Console.", + ], "type": "string" } }, - "id": "BillingAccount" + "type": "object" }, - "Sku": { - "description": "Encapsulates a single SKU in Google Cloud Platform", - "type": "object", + "AuditConfig": { + "description": "Specifies the audit configuration for a service.\nThe configuration determines which permission types are logged, and what\nidentities, if any, are exempted from logging.\nAn AuditConfig must have one or more AuditLogConfigs.\n\nIf there are AuditConfigs for both `allServices` and a specific service,\nthe union of the two AuditConfigs is used for that service: the log_types\nspecified in each AuditConfig are enabled, and the exempted_members in each\nAuditLogConfig are exempted.\n\nExample Policy with multiple AuditConfigs:\n\n {\n \"audit_configs\": [\n {\n \"service\": \"allServices\"\n \"audit_log_configs\": [\n {\n \"log_type\": \"DATA_READ\",\n \"exempted_members\": [\n \"user:foo@gmail.com\"\n ]\n },\n {\n \"log_type\": \"DATA_WRITE\",\n },\n {\n \"log_type\": \"ADMIN_READ\",\n }\n ]\n },\n {\n \"service\": \"fooservice.googleapis.com\"\n \"audit_log_configs\": [\n {\n \"log_type\": \"DATA_READ\",\n },\n {\n \"log_type\": \"DATA_WRITE\",\n \"exempted_members\": [\n \"user:bar@gmail.com\"\n ]\n }\n ]\n }\n ]\n }\n\nFor fooservice, this policy enables DATA_READ, DATA_WRITE and ADMIN_READ\nlogging. It also exempts foo@gmail.com from DATA_READ logging, and\nbar@gmail.com from DATA_WRITE logging.", + "id": "AuditConfig", "properties": { - "name": { - "type": "string", - "description": "The resource name for the SKU.\nExample: \"services/DA34-426B-A397/skus/AA95-CD31-42FE\"" - }, - "pricingInfo": { - "description": "A timeline of pricing info for this SKU in chronological order.", - "type": "array", + "auditLogConfigs": { + "description": "The configuration for logging of each type of permission.\nNext ID: 4", "items": { - "$ref": "PricingInfo" - } + "$ref": "AuditLogConfig" + }, + "type": "array" }, - "category": { - "$ref": "Category", - "description": "The category hierarchy of this SKU, purely for organizational purpose." - }, - "skuId": { - "description": "The identifier for the SKU.\nExample: \"AA95-CD31-42FE\"", + "service": { + "description": "Specifies a service that will be enabled for audit logging.\nFor example, `storage.googleapis.com`, `cloudsql.googleapis.com`.\n`allServices` is a special value that covers all services.", "type": "string" - }, - "description": { - "description": "A human readable description of the SKU, has a maximum length of 256\ncharacters.", - "type": "string" - }, - "serviceProviderName": { - "description": "Identifies the service provider.\nThis is 'Google' for first party services in Google Cloud Platform.", - "type": "string" - }, - "serviceRegions": { - "type": "array", + } + }, + "type": "object" + }, + "AuditLogConfig": { + "description": "Provides the configuration for logging a type of permissions.\nExample:\n\n {\n \"audit_log_configs\": [\n {\n \"log_type\": \"DATA_READ\",\n \"exempted_members\": [\n \"user:foo@gmail.com\"\n ]\n },\n {\n \"log_type\": \"DATA_WRITE\",\n }\n ]\n }\n\nThis enables 'DATA_READ' and 'DATA_WRITE' logging, while exempting\nfoo@gmail.com from DATA_READ logging.", + "id": "AuditLogConfig", + "properties": { + "exemptedMembers": { + "description": "Specifies the identities that do not cause logging for this type of\npermission.\nFollows the same format of Binding.members.", "items": { "type": "string" }, - "description": "List of service regions this SKU is offered at.\nExample: \"asia-east1\"\nService regions can be found at https://cloud.google.com/about/locations/" + "type": "array" + }, + "logType": { + "description": "The log type that this config enables.", + "enum": [ + "LOG_TYPE_UNSPECIFIED", + "ADMIN_READ", + "DATA_WRITE", + "DATA_READ" + ], + "enumDescriptions": [ + "Default case. Should never be this.", + "Admin reads. Example: CloudIAM getIamPolicy", + "Data writes. Example: CloudSQL Users create", + "Data reads. Example: CloudSQL Users list" + ], + "type": "string" } }, - "id": "Sku" + "type": "object" + }, + "BillingAccount": { + "description": "A billing account in [GCP Console](https://console.cloud.google.com/).\nYou can assign a billing account to one or more projects.", + "id": "BillingAccount", + "properties": { + "displayName": { + "description": "The display name given to the billing account, such as `My Billing\nAccount`. This name is displayed in the GCP Console.", + "type": "string" + }, + "masterBillingAccount": { + "description": "If this account is a\n[subaccount](https://cloud.google.com/billing/docs/concepts), then this\nwill be the resource name of the master billing account that it is being\nresold through.\nOtherwise this will be empty.\n\n\u003e This field is currently in\n\u003e [Beta](https://cloud.google.com/terms/launch-stages).", + "type": "string" + }, + "name": { + "description": "The resource name of the billing account. The resource name has the form\n`billingAccounts/{billing_account_id}`. For example,\n`billingAccounts/012345-567890-ABCDEF` would be the resource name for\nbilling account `012345-567890-ABCDEF`.", + "type": "string" + }, + "open": { + "description": "True if the billing account is open, and will therefore be charged for any\nusage on associated projects. False if the billing account is closed, and\ntherefore projects associated with it will be unable to use paid services.", + "type": "boolean" + } + }, + "type": "object" + }, + "Binding": { + "description": "Associates `members` with a `role`.", + "id": "Binding", + "properties": { + "members": { + "description": "Specifies the identities requesting access for a Cloud Platform resource.\n`members` can have the following values:\n\n* `allUsers`: A special identifier that represents anyone who is\n on the internet; with or without a Google account.\n\n* `allAuthenticatedUsers`: A special identifier that represents anyone\n who is authenticated with a Google account or a service account.\n\n* `user:{emailid}`: An email address that represents a specific Google\n account. For example, `alice@gmail.com` or `joe@example.com`.\n\n\n* `serviceAccount:{emailid}`: An email address that represents a service\n account. For example, `my-other-app@appspot.gserviceaccount.com`.\n\n* `group:{emailid}`: An email address that represents a Google group.\n For example, `admins@example.com`.\n\n\n* `domain:{domain}`: A Google Apps domain name that represents all the\n users of that domain. For example, `google.com` or `example.com`.\n\n", + "items": { + "type": "string" + }, + "type": "array" + }, + "role": { + "description": "Role that is assigned to `members`.\nFor example, `roles/viewer`, `roles/editor`, or `roles/owner`.\nRequired", + "type": "string" + } + }, + "type": "object" }, "Category": { "description": "Represents the category hierarchy of a SKU.", - "type": "object", + "id": "Category", "properties": { "resourceFamily": { - "type": "string", - "description": "The type of product the SKU refers to.\nExample: \"Compute\", \"Storage\", \"Network\", \"ApplicationServices\" etc." + "description": "The type of product the SKU refers to.\nExample: \"Compute\", \"Storage\", \"Network\", \"ApplicationServices\" etc.", + "type": "string" }, "resourceGroup": { "description": "A group classification for related SKUs.\nExample: \"RAM\", \"GPU\", \"Prediction\", \"Ops\", \"GoogleEgress\" etc.", @@ -573,134 +640,350 @@ "type": "string" }, "usageType": { - "type": "string", - "description": "Represents how the SKU is consumed.\nExample: \"OnDemand\", \"Preemptible\", \"Commit1Mo\", \"Commit1Yr\" etc." + "description": "Represents how the SKU is consumed.\nExample: \"OnDemand\", \"Preemptible\", \"Commit1Mo\", \"Commit1Yr\" etc.", + "type": "string" } }, - "id": "Category" + "type": "object" + }, + "ListBillingAccountsResponse": { + "description": "Response message for `ListBillingAccounts`.", + "id": "ListBillingAccountsResponse", + "properties": { + "billingAccounts": { + "description": "A list of billing accounts.", + "items": { + "$ref": "BillingAccount" + }, + "type": "array" + }, + "nextPageToken": { + "description": "A token to retrieve the next page of results. To retrieve the next page,\ncall `ListBillingAccounts` again with the `page_token` field set to this\nvalue. This field is empty if there are no more results to retrieve.", + "type": "string" + } + }, + "type": "object" + }, + "ListProjectBillingInfoResponse": { + "description": "Request message for `ListProjectBillingInfoResponse`.", + "id": "ListProjectBillingInfoResponse", + "properties": { + "nextPageToken": { + "description": "A token to retrieve the next page of results. To retrieve the next page,\ncall `ListProjectBillingInfo` again with the `page_token` field set to this\nvalue. This field is empty if there are no more results to retrieve.", + "type": "string" + }, + "projectBillingInfo": { + "description": "A list of `ProjectBillingInfo` resources representing the projects\nassociated with the billing account.", + "items": { + "$ref": "ProjectBillingInfo" + }, + "type": "array" + } + }, + "type": "object" + }, + "ListServicesResponse": { + "description": "Response message for `ListServices`.", + "id": "ListServicesResponse", + "properties": { + "nextPageToken": { + "description": "A token to retrieve the next page of results. To retrieve the next page,\ncall `ListServices` again with the `page_token` field set to this\nvalue. This field is empty if there are no more results to retrieve.", + "type": "string" + }, + "services": { + "description": "A list of services.", + "items": { + "$ref": "Service" + }, + "type": "array" + } + }, + "type": "object" }, "ListSkusResponse": { "description": "Response message for `ListSkus`.", - "type": "object", + "id": "ListSkusResponse", "properties": { + "nextPageToken": { + "description": "A token to retrieve the next page of results. To retrieve the next page,\ncall `ListSkus` again with the `page_token` field set to this\nvalue. This field is empty if there are no more results to retrieve.", + "type": "string" + }, "skus": { "description": "The list of public SKUs of the given service.", - "type": "array", "items": { "$ref": "Sku" - } - }, - "nextPageToken": { - "type": "string", - "description": "A token to retrieve the next page of results. To retrieve the next page,\ncall `ListSkus` again with the `page_token` field set to this\nvalue. This field is empty if there are no more results to retrieve." + }, + "type": "array" } }, - "id": "ListSkusResponse" + "type": "object" + }, + "Money": { + "description": "Represents an amount of money with its currency type.", + "id": "Money", + "properties": { + "currencyCode": { + "description": "The 3-letter currency code defined in ISO 4217.", + "type": "string" + }, + "nanos": { + "description": "Number of nano (10^-9) units of the amount.\nThe value must be between -999,999,999 and +999,999,999 inclusive.\nIf `units` is positive, `nanos` must be positive or zero.\nIf `units` is zero, `nanos` can be positive, zero, or negative.\nIf `units` is negative, `nanos` must be negative or zero.\nFor example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.", + "format": "int32", + "type": "integer" + }, + "units": { + "description": "The whole units of the amount.\nFor example if `currencyCode` is `\"USD\"`, then 1 unit is one US dollar.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "Policy": { + "description": "Defines an Identity and Access Management (IAM) policy. It is used to\nspecify access control policies for Cloud Platform resources.\n\n\nA `Policy` consists of a list of `bindings`. A `Binding` binds a list of\n`members` to a `role`, where the members can be user accounts, Google groups,\nGoogle domains, and service accounts. A `role` is a named list of permissions\ndefined by IAM.\n\n**Example**\n\n {\n \"bindings\": [\n {\n \"role\": \"roles/owner\",\n \"members\": [\n \"user:mike@example.com\",\n \"group:admins@example.com\",\n \"domain:google.com\",\n \"serviceAccount:my-other-app@appspot.gserviceaccount.com\",\n ]\n },\n {\n \"role\": \"roles/viewer\",\n \"members\": [\"user:sean@example.com\"]\n }\n ]\n }\n\nFor a description of IAM and its features, see the\n[IAM developer's guide](https://cloud.google.com/iam/docs).", + "id": "Policy", + "properties": { + "auditConfigs": { + "description": "Specifies cloud audit logging configuration for this policy.", + "items": { + "$ref": "AuditConfig" + }, + "type": "array" + }, + "bindings": { + "description": "Associates a list of `members` to a `role`.\n`bindings` with no members will result in an error.", + "items": { + "$ref": "Binding" + }, + "type": "array" + }, + "etag": { + "description": "`etag` is used for optimistic concurrency control as a way to help\nprevent simultaneous updates of a policy from overwriting each other.\nIt is strongly suggested that systems make use of the `etag` in the\nread-modify-write cycle to perform policy updates in order to avoid race\nconditions: An `etag` is returned in the response to `getIamPolicy`, and\nsystems are expected to put that etag in the request to `setIamPolicy` to\nensure that their change will be applied to the same version of the policy.\n\nIf no `etag` is provided in the call to `setIamPolicy`, then the existing\npolicy is overwritten blindly.", + "format": "byte", + "type": "string" + }, + "version": { + "description": "Deprecated.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "PricingExpression": { + "description": "Expresses a mathematical pricing formula. For Example:-\n\n`usage_unit: GBy`\n`tiered_rates:`\n `[start_usage_amount: 20, unit_price: $10]`\n `[start_usage_amount: 100, unit_price: $5]`\n\nThe above expresses a pricing formula where the first 20GB is free, the\nnext 80GB is priced at $10 per GB followed by $5 per GB for additional\nusage.", + "id": "PricingExpression", + "properties": { + "baseUnit": { + "description": "The base unit for the SKU which is the unit used in usage exports.\nExample: \"By\"", + "type": "string" + }, + "baseUnitConversionFactor": { + "description": "Conversion factor for converting from price per usage_unit to price per\nbase_unit, and start_usage_amount to start_usage_amount in base_unit.\nunit_price / base_unit_conversion_factor = price per base_unit.\nstart_usage_amount * base_unit_conversion_factor = start_usage_amount in\nbase_unit.", + "format": "double", + "type": "number" + }, + "baseUnitDescription": { + "description": "The base unit in human readable form.\nExample: \"byte\".", + "type": "string" + }, + "displayQuantity": { + "description": "The recommended quantity of units for displaying pricing info. When\ndisplaying pricing info it is recommended to display:\n(unit_price * display_quantity) per display_quantity usage_unit.\nThis field does not affect the pricing formula and is for display purposes\nonly.\nExample: If the unit_price is \"0.0001 USD\", the usage_unit is \"GB\" and\nthe display_quantity is \"1000\" then the recommended way of displaying the\npricing info is \"0.10 USD per 1000 GB\"", + "format": "double", + "type": "number" + }, + "tieredRates": { + "description": "The list of tiered rates for this pricing. The total cost is computed by\napplying each of the tiered rates on usage. This repeated list is sorted\nby ascending order of start_usage_amount.", + "items": { + "$ref": "TierRate" + }, + "type": "array" + }, + "usageUnit": { + "description": "The short hand for unit of usage this pricing is specified in.\nExample: usage_unit of \"GiBy\" means that usage is specified in \"Gibi Byte\".", + "type": "string" + }, + "usageUnitDescription": { + "description": "The unit of usage in human readable form.\nExample: \"gibi byte\".", + "type": "string" + } + }, + "type": "object" }, "PricingInfo": { "description": "Represents the pricing information for a SKU at a single point of time.", - "type": "object", + "id": "PricingInfo", "properties": { - "effectiveTime": { - "type": "string", - "description": "The timestamp from which this pricing was effective within the requested\ntime range. This is guaranteed to be greater than or equal to the\nstart_time field in the request and less than the end_time field in the\nrequest. If a time range was not specified in the request this field will\nbe equivalent to a time within the last 12 hours, indicating the latest\npricing info.", - "format": "google-datetime" + "aggregationInfo": { + "$ref": "AggregationInfo", + "description": "Aggregation Info. This can be left unspecified if the pricing expression\ndoesn't require aggregation." }, "currencyConversionRate": { - "type": "number", "description": "Conversion rate used for currency conversion, from USD to the currency\nspecified in the request. This includes any surcharge collected for billing\nin non USD currency. If a currency is not specified in the request this\ndefaults to 1.0.\nExample: USD * currency_conversion_rate = JPY", - "format": "double" + "format": "double", + "type": "number" + }, + "effectiveTime": { + "description": "The timestamp from which this pricing was effective within the requested\ntime range. This is guaranteed to be greater than or equal to the\nstart_time field in the request and less than the end_time field in the\nrequest. If a time range was not specified in the request this field will\nbe equivalent to a time within the last 12 hours, indicating the latest\npricing info.", + "format": "google-datetime", + "type": "string" }, "pricingExpression": { "$ref": "PricingExpression", "description": "Expresses the pricing formula. See `PricingExpression` for an example." }, - "aggregationInfo": { - "$ref": "AggregationInfo", - "description": "Aggregation Info. This can be left unspecified if the pricing expression\ndoesn't require aggregation." - }, "summary": { - "type": "string", - "description": "An optional human readable summary of the pricing information, has a\nmaximum length of 256 characters." + "description": "An optional human readable summary of the pricing information, has a\nmaximum length of 256 characters.", + "type": "string" } }, - "id": "PricingInfo" + "type": "object" }, - "ListProjectBillingInfoResponse": { - "type": "object", + "ProjectBillingInfo": { + "description": "Encapsulation of billing information for a GCP Console project. A project\nhas at most one associated billing account at a time (but a billing account\ncan be assigned to multiple projects).", + "id": "ProjectBillingInfo", "properties": { - "nextPageToken": { - "type": "string", - "description": "A token to retrieve the next page of results. To retrieve the next page,\ncall `ListProjectBillingInfo` again with the `page_token` field set to this\nvalue. This field is empty if there are no more results to retrieve." - }, - "projectBillingInfo": { - "description": "A list of `ProjectBillingInfo` resources representing the projects\nassociated with the billing account.", - "type": "array", - "items": { - "$ref": "ProjectBillingInfo" - } - } - }, - "id": "ListProjectBillingInfoResponse", - "description": "Request message for `ListProjectBillingInfoResponse`." - }, - "PricingExpression": { - "description": "Expresses a mathematical pricing formula. For Example:-\n\n`usage_unit: GBy`\n`tiered_rates:`\n `[start_usage_amount: 20, unit_price: $10]`\n `[start_usage_amount: 100, unit_price: $5]`\n\nThe above expresses a pricing formula where the first 20GB is free, the\nnext 80GB is priced at $10 per GB followed by $5 per GB for additional\nusage.", - "type": "object", - "properties": { - "baseUnitDescription": { - "description": "The base unit in human readable form.\nExample: \"byte\".", + "billingAccountName": { + "description": "The resource name of the billing account associated with the project, if\nany. For example, `billingAccounts/012345-567890-ABCDEF`.", "type": "string" }, - "tieredRates": { - "type": "array", + "billingEnabled": { + "description": "True if the project is associated with an open billing account, to which\nusage on the project is charged. False if the project is associated with a\nclosed billing account, or no billing account at all, and therefore cannot\nuse paid services. This field is read-only.", + "type": "boolean" + }, + "name": { + "description": "The resource name for the `ProjectBillingInfo`; has the form\n`projects/{project_id}/billingInfo`. For example, the resource name for the\nbilling information for project `tokyo-rain-123` would be\n`projects/tokyo-rain-123/billingInfo`. This field is read-only.", + "type": "string" + }, + "projectId": { + "description": "The ID of the project that this `ProjectBillingInfo` represents, such as\n`tokyo-rain-123`. This is a convenience field so that you don't need to\nparse the `name` field to obtain a project ID. This field is read-only.", + "type": "string" + } + }, + "type": "object" + }, + "Service": { + "description": "Encapsulates a single service in Google Cloud Platform.", + "id": "Service", + "properties": { + "displayName": { + "description": "A human readable display name for this service.", + "type": "string" + }, + "name": { + "description": "The resource name for the service.\nExample: \"services/DA34-426B-A397\"", + "type": "string" + }, + "serviceId": { + "description": "The identifier for the service.\nExample: \"DA34-426B-A397\"", + "type": "string" + } + }, + "type": "object" + }, + "SetIamPolicyRequest": { + "description": "Request message for `SetIamPolicy` method.", + "id": "SetIamPolicyRequest", + "properties": { + "policy": { + "$ref": "Policy", + "description": "REQUIRED: The complete policy to be applied to the `resource`. The size of\nthe policy is limited to a few 10s of KB. An empty policy is a\nvalid policy but certain Cloud Platform services (such as Projects)\nmight reject them." + }, + "updateMask": { + "description": "OPTIONAL: A FieldMask specifying which fields of the policy to modify. Only\nthe fields in the mask will be modified. If no mask is provided, the\nfollowing default mask is used:\npaths: \"bindings, etag\"\nThis field is only used by Cloud IAM.", + "format": "google-fieldmask", + "type": "string" + } + }, + "type": "object" + }, + "Sku": { + "description": "Encapsulates a single SKU in Google Cloud Platform", + "id": "Sku", + "properties": { + "category": { + "$ref": "Category", + "description": "The category hierarchy of this SKU, purely for organizational purpose." + }, + "description": { + "description": "A human readable description of the SKU, has a maximum length of 256\ncharacters.", + "type": "string" + }, + "name": { + "description": "The resource name for the SKU.\nExample: \"services/DA34-426B-A397/skus/AA95-CD31-42FE\"", + "type": "string" + }, + "pricingInfo": { + "description": "A timeline of pricing info for this SKU in chronological order.", "items": { - "$ref": "TierRate" + "$ref": "PricingInfo" }, - "description": "The list of tiered rates for this pricing. The total cost is computed by\napplying each of the tiered rates on usage. This repeated list is sorted\nby ascending order of start_usage_amount." + "type": "array" }, - "usageUnit": { - "type": "string", - "description": "The short hand for unit of usage this pricing is specified in.\nExample: usage_unit of \"GiBy\" means that usage is specified in \"Gibi Byte\"." - }, - "baseUnitConversionFactor": { - "type": "number", - "description": "Conversion factor for converting from price per usage_unit to price per\nbase_unit, and start_usage_amount to start_usage_amount in base_unit.\nunit_price / base_unit_conversion_factor = price per base_unit.\nstart_usage_amount * base_unit_conversion_factor = start_usage_amount in\nbase_unit.", - "format": "double" - }, - "usageUnitDescription": { - "description": "The unit of usage in human readable form.\nExample: \"gibi byte\".", + "serviceProviderName": { + "description": "Identifies the service provider.\nThis is 'Google' for first party services in Google Cloud Platform.", "type": "string" }, - "displayQuantity": { - "type": "number", - "description": "The recommended quantity of units for displaying pricing info. When\ndisplaying pricing info it is recommended to display:\n(unit_price * display_quantity) per display_quantity usage_unit.\nThis field does not affect the pricing formula and is for display purposes\nonly.\nExample: If the unit_price is \"0.0001 USD\", the usage_unit is \"GB\" and\nthe display_quantity is \"1000\" then the recommended way of displaying the\npricing info is \"0.10 USD per 1000 GB\"", - "format": "double" + "serviceRegions": { + "description": "List of service regions this SKU is offered at.\nExample: \"asia-east1\"\nService regions can be found at https://cloud.google.com/about/locations/", + "items": { + "type": "string" + }, + "type": "array" }, - "baseUnit": { - "type": "string", - "description": "The base unit for the SKU which is the unit used in usage exports.\nExample: \"By\"" + "skuId": { + "description": "The identifier for the SKU.\nExample: \"AA95-CD31-42FE\"", + "type": "string" } }, - "id": "PricingExpression" - } - }, - "icons": { - "x16": "http://www.google.com/images/icons/product/search-16.gif", - "x32": "http://www.google.com/images/icons/product/search-32.gif" - }, - "protocol": "rest", - "canonicalName": "Cloudbilling", - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/cloud-platform": { - "description": "View and manage your data across Google Cloud Platform services" + "type": "object" + }, + "TestIamPermissionsRequest": { + "description": "Request message for `TestIamPermissions` method.", + "id": "TestIamPermissionsRequest", + "properties": { + "permissions": { + "description": "The set of permissions to check for the `resource`. Permissions with\nwildcards (such as '*' or 'storage.*') are not allowed. For more\ninformation see\n[IAM Overview](https://cloud.google.com/iam/docs/overview#permissions).", + "items": { + "type": "string" + }, + "type": "array" } - } + }, + "type": "object" + }, + "TestIamPermissionsResponse": { + "description": "Response message for `TestIamPermissions` method.", + "id": "TestIamPermissionsResponse", + "properties": { + "permissions": { + "description": "A subset of `TestPermissionsRequest.permissions` that the caller is\nallowed.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "TierRate": { + "description": "The price rate indicating starting usage and its corresponding price.", + "id": "TierRate", + "properties": { + "startUsageAmount": { + "description": "Usage is priced at this rate only after this amount.\nExample: start_usage_amount of 10 indicates that the usage will be priced\nat the unit_price after the first 10 usage_units.", + "format": "double", + "type": "number" + }, + "unitPrice": { + "$ref": "Money", + "description": "The price per unit of usage.\nExample: unit_price of amount $10 indicates that each unit will cost $10." + } + }, + "type": "object" } }, - "rootUrl": "https://cloudbilling.googleapis.com/", - "ownerDomain": "google.com", - "name": "cloudbilling" -} + "servicePath": "", + "title": "Cloud Billing API", + "version": "v1" +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/cloudbilling/v1/cloudbilling-gen.go b/vendor/google.golang.org/api/cloudbilling/v1/cloudbilling-gen.go index 239ffeb28..f85561fe4 100644 --- a/vendor/google.golang.org/api/cloudbilling/v1/cloudbilling-gen.go +++ b/vendor/google.golang.org/api/cloudbilling/v1/cloudbilling-gen.go @@ -1,4 +1,4 @@ -// Package cloudbilling provides access to the Google Cloud Billing API. +// Package cloudbilling provides access to the Cloud Billing API. // // See https://cloud.google.com/billing/ // @@ -177,17 +177,183 @@ func (s *AggregationInfo) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -// BillingAccount: A billing account in [Google -// Cloud -// Console](https://console.cloud.google.com/). You can assign a billing -// account -// to one or more projects. +// AuditConfig: Specifies the audit configuration for a service. +// The configuration determines which permission types are logged, and +// what +// identities, if any, are exempted from logging. +// An AuditConfig must have one or more AuditLogConfigs. +// +// If there are AuditConfigs for both `allServices` and a specific +// service, +// the union of the two AuditConfigs is used for that service: the +// log_types +// specified in each AuditConfig are enabled, and the exempted_members +// in each +// AuditLogConfig are exempted. +// +// Example Policy with multiple AuditConfigs: +// +// { +// "audit_configs": [ +// { +// "service": "allServices" +// "audit_log_configs": [ +// { +// "log_type": "DATA_READ", +// "exempted_members": [ +// "user:foo@gmail.com" +// ] +// }, +// { +// "log_type": "DATA_WRITE", +// }, +// { +// "log_type": "ADMIN_READ", +// } +// ] +// }, +// { +// "service": "fooservice.googleapis.com" +// "audit_log_configs": [ +// { +// "log_type": "DATA_READ", +// }, +// { +// "log_type": "DATA_WRITE", +// "exempted_members": [ +// "user:bar@gmail.com" +// ] +// } +// ] +// } +// ] +// } +// +// For fooservice, this policy enables DATA_READ, DATA_WRITE and +// ADMIN_READ +// logging. It also exempts foo@gmail.com from DATA_READ logging, +// and +// bar@gmail.com from DATA_WRITE logging. +type AuditConfig struct { + // AuditLogConfigs: The configuration for logging of each type of + // permission. + // Next ID: 4 + AuditLogConfigs []*AuditLogConfig `json:"auditLogConfigs,omitempty"` + + // Service: Specifies a service that will be enabled for audit + // logging. + // For example, `storage.googleapis.com`, + // `cloudsql.googleapis.com`. + // `allServices` is a special value that covers all services. + Service string `json:"service,omitempty"` + + // ForceSendFields is a list of field names (e.g. "AuditLogConfigs") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "AuditLogConfigs") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *AuditConfig) MarshalJSON() ([]byte, error) { + type NoMethod AuditConfig + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// AuditLogConfig: Provides the configuration for logging a type of +// permissions. +// Example: +// +// { +// "audit_log_configs": [ +// { +// "log_type": "DATA_READ", +// "exempted_members": [ +// "user:foo@gmail.com" +// ] +// }, +// { +// "log_type": "DATA_WRITE", +// } +// ] +// } +// +// This enables 'DATA_READ' and 'DATA_WRITE' logging, while +// exempting +// foo@gmail.com from DATA_READ logging. +type AuditLogConfig struct { + // ExemptedMembers: Specifies the identities that do not cause logging + // for this type of + // permission. + // Follows the same format of Binding.members. + ExemptedMembers []string `json:"exemptedMembers,omitempty"` + + // LogType: The log type that this config enables. + // + // Possible values: + // "LOG_TYPE_UNSPECIFIED" - Default case. Should never be this. + // "ADMIN_READ" - Admin reads. Example: CloudIAM getIamPolicy + // "DATA_WRITE" - Data writes. Example: CloudSQL Users create + // "DATA_READ" - Data reads. Example: CloudSQL Users list + LogType string `json:"logType,omitempty"` + + // ForceSendFields is a list of field names (e.g. "ExemptedMembers") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "ExemptedMembers") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *AuditLogConfig) MarshalJSON() ([]byte, error) { + type NoMethod AuditLogConfig + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// BillingAccount: A billing account in [GCP +// Console](https://console.cloud.google.com/). +// You can assign a billing account to one or more projects. type BillingAccount struct { // DisplayName: The display name given to the billing account, such as // `My Billing - // Account`. This name is displayed in the Google Cloud Console. + // Account`. This name is displayed in the GCP Console. DisplayName string `json:"displayName,omitempty"` + // MasterBillingAccount: If this account is + // a + // [subaccount](https://cloud.google.com/billing/docs/concepts), then + // this + // will be the resource name of the master billing account that it is + // being + // resold through. + // Otherwise this will be empty. + // + // > This field is currently in + // > [Beta](https://cloud.google.com/terms/launch-stages). + MasterBillingAccount string `json:"masterBillingAccount,omitempty"` + // Name: The resource name of the billing account. The resource name has // the form // `billingAccounts/{billing_account_id}`. For @@ -232,6 +398,72 @@ func (s *BillingAccount) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// Binding: Associates `members` with a `role`. +type Binding struct { + // Members: Specifies the identities requesting access for a Cloud + // Platform resource. + // `members` can have the following values: + // + // * `allUsers`: A special identifier that represents anyone who is + // on the internet; with or without a Google account. + // + // * `allAuthenticatedUsers`: A special identifier that represents + // anyone + // who is authenticated with a Google account or a service + // account. + // + // * `user:{emailid}`: An email address that represents a specific + // Google + // account. For example, `alice@gmail.com` or `joe@example.com`. + // + // + // * `serviceAccount:{emailid}`: An email address that represents a + // service + // account. For example, + // `my-other-app@appspot.gserviceaccount.com`. + // + // * `group:{emailid}`: An email address that represents a Google + // group. + // For example, `admins@example.com`. + // + // + // * `domain:{domain}`: A Google Apps domain name that represents all + // the + // users of that domain. For example, `google.com` or + // `example.com`. + // + // + Members []string `json:"members,omitempty"` + + // Role: Role that is assigned to `members`. + // For example, `roles/viewer`, `roles/editor`, or + // `roles/owner`. + // Required + Role string `json:"role,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Members") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Members") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *Binding) MarshalJSON() ([]byte, error) { + type NoMethod Binding + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // Category: Represents the category hierarchy of a SKU. type Category struct { // ResourceFamily: The type of product the SKU refers to. @@ -476,6 +708,101 @@ func (s *Money) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// Policy: Defines an Identity and Access Management (IAM) policy. It is +// used to +// specify access control policies for Cloud Platform resources. +// +// +// A `Policy` consists of a list of `bindings`. A `Binding` binds a list +// of +// `members` to a `role`, where the members can be user accounts, Google +// groups, +// Google domains, and service accounts. A `role` is a named list of +// permissions +// defined by IAM. +// +// **Example** +// +// { +// "bindings": [ +// { +// "role": "roles/owner", +// "members": [ +// "user:mike@example.com", +// "group:admins@example.com", +// "domain:google.com", +// +// "serviceAccount:my-other-app@appspot.gserviceaccount.com", +// ] +// }, +// { +// "role": "roles/viewer", +// "members": ["user:sean@example.com"] +// } +// ] +// } +// +// For a description of IAM and its features, see the +// [IAM developer's guide](https://cloud.google.com/iam/docs). +type Policy struct { + // AuditConfigs: Specifies cloud audit logging configuration for this + // policy. + AuditConfigs []*AuditConfig `json:"auditConfigs,omitempty"` + + // Bindings: Associates a list of `members` to a `role`. + // `bindings` with no members will result in an error. + Bindings []*Binding `json:"bindings,omitempty"` + + // Etag: `etag` is used for optimistic concurrency control as a way to + // help + // prevent simultaneous updates of a policy from overwriting each + // other. + // It is strongly suggested that systems make use of the `etag` in + // the + // read-modify-write cycle to perform policy updates in order to avoid + // race + // conditions: An `etag` is returned in the response to `getIamPolicy`, + // and + // systems are expected to put that etag in the request to + // `setIamPolicy` to + // ensure that their change will be applied to the same version of the + // policy. + // + // If no `etag` is provided in the call to `setIamPolicy`, then the + // existing + // policy is overwritten blindly. + Etag string `json:"etag,omitempty"` + + // Version: Deprecated. + Version int64 `json:"version,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "AuditConfigs") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "AuditConfigs") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *Policy) MarshalJSON() ([]byte, error) { + type NoMethod Policy + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // PricingExpression: Expresses a mathematical pricing formula. For // Example:- // @@ -659,7 +986,7 @@ func (s *PricingInfo) UnmarshalJSON(data []byte) error { return nil } -// ProjectBillingInfo: Encapsulation of billing information for a Cloud +// ProjectBillingInfo: Encapsulation of billing information for a GCP // Console project. A project // has at most one associated billing account at a time (but a billing // account @@ -760,6 +1087,48 @@ func (s *Service) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// SetIamPolicyRequest: Request message for `SetIamPolicy` method. +type SetIamPolicyRequest struct { + // Policy: REQUIRED: The complete policy to be applied to the + // `resource`. The size of + // the policy is limited to a few 10s of KB. An empty policy is a + // valid policy but certain Cloud Platform services (such as + // Projects) + // might reject them. + Policy *Policy `json:"policy,omitempty"` + + // UpdateMask: OPTIONAL: A FieldMask specifying which fields of the + // policy to modify. Only + // the fields in the mask will be modified. If no mask is provided, + // the + // following default mask is used: + // paths: "bindings, etag" + // This field is only used by Cloud IAM. + UpdateMask string `json:"updateMask,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Policy") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Policy") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *SetIamPolicyRequest) MarshalJSON() ([]byte, error) { + type NoMethod SetIamPolicyRequest + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // Sku: Encapsulates a single SKU in Google Cloud Platform type Sku struct { // Category: The category hierarchy of this SKU, purely for @@ -817,6 +1186,76 @@ func (s *Sku) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// TestIamPermissionsRequest: Request message for `TestIamPermissions` +// method. +type TestIamPermissionsRequest struct { + // Permissions: The set of permissions to check for the `resource`. + // Permissions with + // wildcards (such as '*' or 'storage.*') are not allowed. For + // more + // information see + // [IAM + // Overview](https://cloud.google.com/iam/docs/overview#permissions). + Permissions []string `json:"permissions,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Permissions") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Permissions") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *TestIamPermissionsRequest) MarshalJSON() ([]byte, error) { + type NoMethod TestIamPermissionsRequest + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// TestIamPermissionsResponse: Response message for `TestIamPermissions` +// method. +type TestIamPermissionsResponse struct { + // Permissions: A subset of `TestPermissionsRequest.permissions` that + // the caller is + // allowed. + Permissions []string `json:"permissions,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "Permissions") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Permissions") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *TestIamPermissionsResponse) MarshalJSON() ([]byte, error) { + type NoMethod TestIamPermissionsResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // TierRate: The price rate indicating starting usage and its // corresponding price. type TierRate struct { @@ -870,6 +1309,140 @@ func (s *TierRate) UnmarshalJSON(data []byte) error { return nil } +// method id "cloudbilling.billingAccounts.create": + +type BillingAccountsCreateCall struct { + s *APIService + billingaccount *BillingAccount + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Create: Creates a billing account. +// This method can only be used to create +// [billing +// subaccounts](https://cloud.google.com/billing/docs/concepts). +// When creating a subaccount, the current authenticated user must have +// the +// `billing.accounts.update` IAM permission on the master account, which +// is +// typically given to billing +// account +// [administrators](https://cloud.google.com/billing/docs/how-to/ +// billing-access). +// +// > This method is currently in +// > [Beta](https://cloud.google.com/terms/launch-stages). +func (r *BillingAccountsService) Create(billingaccount *BillingAccount) *BillingAccountsCreateCall { + c := &BillingAccountsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.billingaccount = billingaccount + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *BillingAccountsCreateCall) Fields(s ...googleapi.Field) *BillingAccountsCreateCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *BillingAccountsCreateCall) Context(ctx context.Context) *BillingAccountsCreateCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *BillingAccountsCreateCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *BillingAccountsCreateCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.billingaccount) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v1/billingAccounts") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("POST", urls, body) + req.Header = reqHeaders + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "cloudbilling.billingAccounts.create" call. +// Exactly one of *BillingAccount or error will be non-nil. Any non-2xx +// status code is an error. Response headers are in either +// *BillingAccount.ServerResponse.Header or (if a response was returned +// at all) in error.(*googleapi.Error).Header. Use +// googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *BillingAccountsCreateCall) Do(opts ...googleapi.CallOption) (*BillingAccount, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &BillingAccount{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Creates a billing account.\nThis method can only be used to create\n[billing subaccounts](https://cloud.google.com/billing/docs/concepts).\nWhen creating a subaccount, the current authenticated user must have the\n`billing.accounts.update` IAM permission on the master account, which is\ntypically given to billing account\n[administrators](https://cloud.google.com/billing/docs/how-to/billing-access).\n\n\u003e This method is currently in\n\u003e [Beta](https://cloud.google.com/terms/launch-stages).", + // "flatPath": "v1/billingAccounts", + // "httpMethod": "POST", + // "id": "cloudbilling.billingAccounts.create", + // "parameterOrder": [], + // "parameters": {}, + // "path": "v1/billingAccounts", + // "request": { + // "$ref": "BillingAccount" + // }, + // "response": { + // "$ref": "BillingAccount" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + // method id "cloudbilling.billingAccounts.get": type BillingAccountsGetCall struct { @@ -883,9 +1456,10 @@ type BillingAccountsGetCall struct { // Get: Gets information about a billing account. The current // authenticated user -// must be an [owner of the +// must be a [viewer of the // billing -// account](https://support.google.com/cloud/answer/4430947). +// account](https://cloud.google.com/billing/docs/how-to/billing- +// access). func (r *BillingAccountsService) Get(name string) *BillingAccountsGetCall { c := &BillingAccountsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.name = name @@ -986,7 +1560,7 @@ func (c *BillingAccountsGetCall) Do(opts ...googleapi.CallOption) (*BillingAccou } return ret, nil // { - // "description": "Gets information about a billing account. The current authenticated user\nmust be an [owner of the billing\naccount](https://support.google.com/cloud/answer/4430947).", + // "description": "Gets information about a billing account. The current authenticated user\nmust be a [viewer of the billing\naccount](https://cloud.google.com/billing/docs/how-to/billing-access).", // "flatPath": "v1/billingAccounts/{billingAccountsId}", // "httpMethod": "GET", // "id": "cloudbilling.billingAccounts.get", @@ -1013,6 +1587,155 @@ func (c *BillingAccountsGetCall) Do(opts ...googleapi.CallOption) (*BillingAccou } +// method id "cloudbilling.billingAccounts.getIamPolicy": + +type BillingAccountsGetIamPolicyCall struct { + s *APIService + resource string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// GetIamPolicy: Gets the access control policy for a billing +// account. +// The caller must have the `billing.accounts.getIamPolicy` permission +// on the +// account, which is often given to billing +// account +// [viewers](https://cloud.google.com/billing/docs/how-to/billing +// -access). +// +// > This method is currently in +// > [Beta](https://cloud.google.com/terms/launch-stages). +func (r *BillingAccountsService) GetIamPolicy(resource string) *BillingAccountsGetIamPolicyCall { + c := &BillingAccountsGetIamPolicyCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.resource = resource + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *BillingAccountsGetIamPolicyCall) Fields(s ...googleapi.Field) *BillingAccountsGetIamPolicyCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// IfNoneMatch sets the optional parameter which makes the operation +// fail if the object's ETag matches the given value. This is useful for +// getting updates only after the object has changed since the last +// request. Use googleapi.IsNotModified to check whether the response +// error from Do is the result of In-None-Match. +func (c *BillingAccountsGetIamPolicyCall) IfNoneMatch(entityTag string) *BillingAccountsGetIamPolicyCall { + c.ifNoneMatch_ = entityTag + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *BillingAccountsGetIamPolicyCall) Context(ctx context.Context) *BillingAccountsGetIamPolicyCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *BillingAccountsGetIamPolicyCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *BillingAccountsGetIamPolicyCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + if c.ifNoneMatch_ != "" { + reqHeaders.Set("If-None-Match", c.ifNoneMatch_) + } + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+resource}:getIamPolicy") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("GET", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "resource": c.resource, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "cloudbilling.billingAccounts.getIamPolicy" call. +// Exactly one of *Policy or error will be non-nil. Any non-2xx status +// code is an error. Response headers are in either +// *Policy.ServerResponse.Header or (if a response was returned at all) +// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to +// check whether the returned error was because http.StatusNotModified +// was returned. +func (c *BillingAccountsGetIamPolicyCall) Do(opts ...googleapi.CallOption) (*Policy, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &Policy{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Gets the access control policy for a billing account.\nThe caller must have the `billing.accounts.getIamPolicy` permission on the\naccount, which is often given to billing account\n[viewers](https://cloud.google.com/billing/docs/how-to/billing-access).\n\n\u003e This method is currently in\n\u003e [Beta](https://cloud.google.com/terms/launch-stages).", + // "flatPath": "v1/billingAccounts/{billingAccountsId}:getIamPolicy", + // "httpMethod": "GET", + // "id": "cloudbilling.billingAccounts.getIamPolicy", + // "parameterOrder": [ + // "resource" + // ], + // "parameters": { + // "resource": { + // "description": "REQUIRED: The resource for which the policy is being requested.\nSee the operation documentation for the appropriate value for this field.", + // "location": "path", + // "pattern": "^billingAccounts/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1/{+resource}:getIamPolicy", + // "response": { + // "$ref": "Policy" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + // method id "cloudbilling.billingAccounts.list": type BillingAccountsListCall struct { @@ -1023,14 +1746,34 @@ type BillingAccountsListCall struct { header_ http.Header } -// List: Lists the billing accounts that the current authenticated -// user -// [owns](https://support.google.com/cloud/answer/4430947). +// List: Lists the billing accounts that the current authenticated user +// has +// permission to +// [view](https://cloud.google.com/billing/docs/how-to/billing-access). func (r *BillingAccountsService) List() *BillingAccountsListCall { c := &BillingAccountsListCall{s: r.s, urlParams_: make(gensupport.URLParams)} return c } +// Filter sets the optional parameter "filter": Options for how to +// filter the returned billing accounts. +// Currently this only supports filtering +// for +// [subaccounts](https://cloud.google.com/billing/docs/concepts) under +// a +// single provided reseller billing account. +// (e.g. +// "master_billing_account=billingAccounts/012345-678901-ABCDEF"). +// Boolea +// n algebra and other fields are not currently supported. +// +// > This field is currently in +// > [Beta](https://cloud.google.com/terms/launch-stages). +func (c *BillingAccountsListCall) Filter(filter string) *BillingAccountsListCall { + c.urlParams_.Set("filter", filter) + return c +} + // PageSize sets the optional parameter "pageSize": Requested page size. // The maximum page size is 100; this is also the // default. @@ -1141,12 +1884,17 @@ func (c *BillingAccountsListCall) Do(opts ...googleapi.CallOption) (*ListBilling } return ret, nil // { - // "description": "Lists the billing accounts that the current authenticated user\n[owns](https://support.google.com/cloud/answer/4430947).", + // "description": "Lists the billing accounts that the current authenticated user has\npermission to [view](https://cloud.google.com/billing/docs/how-to/billing-access).", // "flatPath": "v1/billingAccounts", // "httpMethod": "GET", // "id": "cloudbilling.billingAccounts.list", // "parameterOrder": [], // "parameters": { + // "filter": { + // "description": "Options for how to filter the returned billing accounts.\nCurrently this only supports filtering for\n[subaccounts](https://cloud.google.com/billing/docs/concepts) under a\nsingle provided reseller billing account.\n(e.g. \"master_billing_account=billingAccounts/012345-678901-ABCDEF\").\nBoolean algebra and other fields are not currently supported.\n\n\u003e This field is currently in\n\u003e [Beta](https://cloud.google.com/terms/launch-stages).", + // "location": "query", + // "type": "string" + // }, // "pageSize": { // "description": "Requested page size. The maximum page size is 100; this is also the\ndefault.", // "format": "int32", @@ -1191,6 +1939,455 @@ func (c *BillingAccountsListCall) Pages(ctx context.Context, f func(*ListBilling } } +// method id "cloudbilling.billingAccounts.patch": + +type BillingAccountsPatchCall struct { + s *APIService + name string + billingaccount *BillingAccount + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Patch: Updates a billing account's fields. +// Currently the only field that can be edited is `display_name`. +// The current authenticated user must have the +// `billing.accounts.update` +// IAM permission, which is typically given to +// the +// [administrator](https://cloud.google.com/billing/docs/how-to/billi +// ng-access) +// of the billing account. +// +// > This method is currently in +// > [Beta](https://cloud.google.com/terms/launch-stages). +func (r *BillingAccountsService) Patch(name string, billingaccount *BillingAccount) *BillingAccountsPatchCall { + c := &BillingAccountsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + c.billingaccount = billingaccount + return c +} + +// UpdateMask sets the optional parameter "updateMask": The update mask +// applied to the resource. +// Only "display_name" is currently supported. +func (c *BillingAccountsPatchCall) UpdateMask(updateMask string) *BillingAccountsPatchCall { + c.urlParams_.Set("updateMask", updateMask) + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *BillingAccountsPatchCall) Fields(s ...googleapi.Field) *BillingAccountsPatchCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *BillingAccountsPatchCall) Context(ctx context.Context) *BillingAccountsPatchCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *BillingAccountsPatchCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *BillingAccountsPatchCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.billingaccount) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("PATCH", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "cloudbilling.billingAccounts.patch" call. +// Exactly one of *BillingAccount or error will be non-nil. Any non-2xx +// status code is an error. Response headers are in either +// *BillingAccount.ServerResponse.Header or (if a response was returned +// at all) in error.(*googleapi.Error).Header. Use +// googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *BillingAccountsPatchCall) Do(opts ...googleapi.CallOption) (*BillingAccount, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &BillingAccount{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Updates a billing account's fields.\nCurrently the only field that can be edited is `display_name`.\nThe current authenticated user must have the `billing.accounts.update`\nIAM permission, which is typically given to the\n[administrator](https://cloud.google.com/billing/docs/how-to/billing-access)\nof the billing account.\n\n\u003e This method is currently in\n\u003e [Beta](https://cloud.google.com/terms/launch-stages).", + // "flatPath": "v1/billingAccounts/{billingAccountsId}", + // "httpMethod": "PATCH", + // "id": "cloudbilling.billingAccounts.patch", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "The name of the billing account resource to be updated.", + // "location": "path", + // "pattern": "^billingAccounts/[^/]+$", + // "required": true, + // "type": "string" + // }, + // "updateMask": { + // "description": "The update mask applied to the resource.\nOnly \"display_name\" is currently supported.", + // "format": "google-fieldmask", + // "location": "query", + // "type": "string" + // } + // }, + // "path": "v1/{+name}", + // "request": { + // "$ref": "BillingAccount" + // }, + // "response": { + // "$ref": "BillingAccount" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "cloudbilling.billingAccounts.setIamPolicy": + +type BillingAccountsSetIamPolicyCall struct { + s *APIService + resource string + setiampolicyrequest *SetIamPolicyRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// SetIamPolicy: Sets the access control policy for a billing account. +// Replaces any existing +// policy. +// The caller must have the `billing.accounts.setIamPolicy` permission +// on the +// account, which is often given to billing +// account +// [administrators](https://cloud.google.com/billing/docs/how-to/ +// billing-access). +// +// > This method is currently in +// > [Beta](https://cloud.google.com/terms/launch-stages). +func (r *BillingAccountsService) SetIamPolicy(resource string, setiampolicyrequest *SetIamPolicyRequest) *BillingAccountsSetIamPolicyCall { + c := &BillingAccountsSetIamPolicyCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.resource = resource + c.setiampolicyrequest = setiampolicyrequest + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *BillingAccountsSetIamPolicyCall) Fields(s ...googleapi.Field) *BillingAccountsSetIamPolicyCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *BillingAccountsSetIamPolicyCall) Context(ctx context.Context) *BillingAccountsSetIamPolicyCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *BillingAccountsSetIamPolicyCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *BillingAccountsSetIamPolicyCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.setiampolicyrequest) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+resource}:setIamPolicy") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("POST", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "resource": c.resource, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "cloudbilling.billingAccounts.setIamPolicy" call. +// Exactly one of *Policy or error will be non-nil. Any non-2xx status +// code is an error. Response headers are in either +// *Policy.ServerResponse.Header or (if a response was returned at all) +// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to +// check whether the returned error was because http.StatusNotModified +// was returned. +func (c *BillingAccountsSetIamPolicyCall) Do(opts ...googleapi.CallOption) (*Policy, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &Policy{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Sets the access control policy for a billing account. Replaces any existing\npolicy.\nThe caller must have the `billing.accounts.setIamPolicy` permission on the\naccount, which is often given to billing account\n[administrators](https://cloud.google.com/billing/docs/how-to/billing-access).\n\n\u003e This method is currently in\n\u003e [Beta](https://cloud.google.com/terms/launch-stages).", + // "flatPath": "v1/billingAccounts/{billingAccountsId}:setIamPolicy", + // "httpMethod": "POST", + // "id": "cloudbilling.billingAccounts.setIamPolicy", + // "parameterOrder": [ + // "resource" + // ], + // "parameters": { + // "resource": { + // "description": "REQUIRED: The resource for which the policy is being specified.\nSee the operation documentation for the appropriate value for this field.", + // "location": "path", + // "pattern": "^billingAccounts/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1/{+resource}:setIamPolicy", + // "request": { + // "$ref": "SetIamPolicyRequest" + // }, + // "response": { + // "$ref": "Policy" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "cloudbilling.billingAccounts.testIamPermissions": + +type BillingAccountsTestIamPermissionsCall struct { + s *APIService + resource string + testiampermissionsrequest *TestIamPermissionsRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// TestIamPermissions: Tests the access control policy for a billing +// account. This method takes +// the resource and a set of permissions as input and returns the subset +// of +// the input permissions that the caller is allowed for that +// resource. +// +// > This method is currently in +// > [Beta](https://cloud.google.com/terms/launch-stages). +func (r *BillingAccountsService) TestIamPermissions(resource string, testiampermissionsrequest *TestIamPermissionsRequest) *BillingAccountsTestIamPermissionsCall { + c := &BillingAccountsTestIamPermissionsCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.resource = resource + c.testiampermissionsrequest = testiampermissionsrequest + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *BillingAccountsTestIamPermissionsCall) Fields(s ...googleapi.Field) *BillingAccountsTestIamPermissionsCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *BillingAccountsTestIamPermissionsCall) Context(ctx context.Context) *BillingAccountsTestIamPermissionsCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *BillingAccountsTestIamPermissionsCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *BillingAccountsTestIamPermissionsCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.testiampermissionsrequest) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+resource}:testIamPermissions") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("POST", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "resource": c.resource, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "cloudbilling.billingAccounts.testIamPermissions" call. +// Exactly one of *TestIamPermissionsResponse or error will be non-nil. +// Any non-2xx status code is an error. Response headers are in either +// *TestIamPermissionsResponse.ServerResponse.Header or (if a response +// was returned at all) in error.(*googleapi.Error).Header. Use +// googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *BillingAccountsTestIamPermissionsCall) Do(opts ...googleapi.CallOption) (*TestIamPermissionsResponse, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &TestIamPermissionsResponse{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Tests the access control policy for a billing account. This method takes\nthe resource and a set of permissions as input and returns the subset of\nthe input permissions that the caller is allowed for that resource.\n\n\u003e This method is currently in\n\u003e [Beta](https://cloud.google.com/terms/launch-stages).", + // "flatPath": "v1/billingAccounts/{billingAccountsId}:testIamPermissions", + // "httpMethod": "POST", + // "id": "cloudbilling.billingAccounts.testIamPermissions", + // "parameterOrder": [ + // "resource" + // ], + // "parameters": { + // "resource": { + // "description": "REQUIRED: The resource for which the policy detail is being requested.\nSee the operation documentation for the appropriate value for this field.", + // "location": "path", + // "pattern": "^billingAccounts/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1/{+resource}:testIamPermissions", + // "request": { + // "$ref": "TestIamPermissionsRequest" + // }, + // "response": { + // "$ref": "TestIamPermissionsResponse" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + // method id "cloudbilling.billingAccounts.projects.list": type BillingAccountsProjectsListCall struct { @@ -1204,11 +2401,12 @@ type BillingAccountsProjectsListCall struct { // List: Lists the projects associated with a billing account. The // current -// authenticated user must have the "billing.resourceAssociations.list" +// authenticated user must have the `billing.resourceAssociations.list` // IAM // permission, which is often given to billing // account -// [viewers](https://support.google.com/cloud/answer/4430947). +// [viewers](https://cloud.google.com/billing/docs/how-to/billing +// -access). func (r *BillingAccountsProjectsService) List(name string) *BillingAccountsProjectsListCall { c := &BillingAccountsProjectsListCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.name = name @@ -1328,7 +2526,7 @@ func (c *BillingAccountsProjectsListCall) Do(opts ...googleapi.CallOption) (*Lis } return ret, nil // { - // "description": "Lists the projects associated with a billing account. The current\nauthenticated user must have the \"billing.resourceAssociations.list\" IAM\npermission, which is often given to billing account\n[viewers](https://support.google.com/cloud/answer/4430947).", + // "description": "Lists the projects associated with a billing account. The current\nauthenticated user must have the `billing.resourceAssociations.list` IAM\npermission, which is often given to billing account\n[viewers](https://cloud.google.com/billing/docs/how-to/billing-access).", // "flatPath": "v1/billingAccounts/{billingAccountsId}/projects", // "httpMethod": "GET", // "id": "cloudbilling.billingAccounts.projects.list", @@ -1559,7 +2757,7 @@ type ProjectsUpdateBillingInfoCall struct { // // *Note:* Incurred charges that have not yet been reported in the // transaction -// history of the Google Cloud Console may be billed to the new +// history of the GCP Console might be billed to the new // billing // account, even if the charge occurred before the new billing account // was @@ -1572,10 +2770,10 @@ type ProjectsUpdateBillingInfoCall struct { // 0oxofvnoo // ) and the // [billing -// account](https://support.google.com/cloud/answer/4430947). +// account](https://cloud.google.com/billing/docs/how-to/billing +// -access). // -// Y -// ou can disable billing on the project by setting +// You can disable billing on the project by setting // the // `billing_account_name` field to empty. This action disassociates // the @@ -1692,7 +2890,7 @@ func (c *ProjectsUpdateBillingInfoCall) Do(opts ...googleapi.CallOption) (*Proje } return ret, nil // { - // "description": "Sets or updates the billing account associated with a project. You specify\nthe new billing account by setting the `billing_account_name` in the\n`ProjectBillingInfo` resource to the resource name of a billing account.\nAssociating a project with an open billing account enables billing on the\nproject and allows charges for resource usage. If the project already had a\nbilling account, this method changes the billing account used for resource\nusage charges.\n\n*Note:* Incurred charges that have not yet been reported in the transaction\nhistory of the Google Cloud Console may be billed to the new billing\naccount, even if the charge occurred before the new billing account was\nassigned to the project.\n\nThe current authenticated user must have ownership privileges for both the\n[project](https://cloud.google.com/docs/permissions-overview#h.bgs0oxofvnoo\n) and the [billing\naccount](https://support.google.com/cloud/answer/4430947).\n\nYou can disable billing on the project by setting the\n`billing_account_name` field to empty. This action disassociates the\ncurrent billing account from the project. Any billable activity of your\nin-use services will stop, and your application could stop functioning as\nexpected. Any unbilled charges to date will be billed to the previously\nassociated account. The current authenticated user must be either an owner\nof the project or an owner of the billing account for the project.\n\nNote that associating a project with a *closed* billing account will have\nmuch the same effect as disabling billing on the project: any paid\nresources used by the project will be shut down. Thus, unless you wish to\ndisable billing, you should always call this method with the name of an\n*open* billing account.", + // "description": "Sets or updates the billing account associated with a project. You specify\nthe new billing account by setting the `billing_account_name` in the\n`ProjectBillingInfo` resource to the resource name of a billing account.\nAssociating a project with an open billing account enables billing on the\nproject and allows charges for resource usage. If the project already had a\nbilling account, this method changes the billing account used for resource\nusage charges.\n\n*Note:* Incurred charges that have not yet been reported in the transaction\nhistory of the GCP Console might be billed to the new billing\naccount, even if the charge occurred before the new billing account was\nassigned to the project.\n\nThe current authenticated user must have ownership privileges for both the\n[project](https://cloud.google.com/docs/permissions-overview#h.bgs0oxofvnoo\n) and the [billing\naccount](https://cloud.google.com/billing/docs/how-to/billing-access).\n\nYou can disable billing on the project by setting the\n`billing_account_name` field to empty. This action disassociates the\ncurrent billing account from the project. Any billable activity of your\nin-use services will stop, and your application could stop functioning as\nexpected. Any unbilled charges to date will be billed to the previously\nassociated account. The current authenticated user must be either an owner\nof the project or an owner of the billing account for the project.\n\nNote that associating a project with a *closed* billing account will have\nmuch the same effect as disabling billing on the project: any paid\nresources used by the project will be shut down. Thus, unless you wish to\ndisable billing, you should always call this method with the name of an\n*open* billing account.", // "flatPath": "v1/projects/{projectsId}/billingInfo", // "httpMethod": "PUT", // "id": "cloudbilling.projects.updateBillingInfo", diff --git a/vendor/google.golang.org/api/cloudbuild/v1/cloudbuild-api.json b/vendor/google.golang.org/api/cloudbuild/v1/cloudbuild-api.json index 62c1e0c1b..f2883f928 100644 --- a/vendor/google.golang.org/api/cloudbuild/v1/cloudbuild-api.json +++ b/vendor/google.golang.org/api/cloudbuild/v1/cloudbuild-api.json @@ -1,611 +1,1110 @@ { - "ownerDomain": "google.com", - "name": "cloudbuild", - "batchPath": "batch", - "title": "Google Cloud Container Builder API", - "ownerName": "Google", - "resources": { - "projects": { - "resources": { - "builds": { - "methods": { - "cancel": { - "description": "Cancels a requested build in progress.", - "request": { - "$ref": "CancelBuildRequest" - }, - "response": { - "$ref": "Build" - }, - "parameterOrder": [ - "projectId", - "id" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "projectId": { - "description": "ID of the project.", - "required": true, - "type": "string", - "location": "path" - }, - "id": { - "description": "ID of the build.", - "required": true, - "type": "string", - "location": "path" - } - }, - "flatPath": "v1/projects/{projectId}/builds/{id}:cancel", - "path": "v1/projects/{projectId}/builds/{id}:cancel", - "id": "cloudbuild.projects.builds.cancel" - }, - "retry": { - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "projectId", - "id" - ], - "httpMethod": "POST", - "parameters": { - "projectId": { - "description": "ID of the project.", - "required": true, - "type": "string", - "location": "path" - }, - "id": { - "location": "path", - "description": "Build ID of the original build.", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/projects/{projectId}/builds/{id}:retry", - "path": "v1/projects/{projectId}/builds/{id}:retry", - "id": "cloudbuild.projects.builds.retry", - "request": { - "$ref": "RetryBuildRequest" - }, - "description": "Creates a new build based on the given build.\n\nThis API creates a new build using the original build request, which may\nor may not result in an identical build.\n\nFor triggered builds:\n\n* Triggered builds resolve to a precise revision, so a retry of a triggered\nbuild will result in a build that uses the same revision.\n\nFor non-triggered builds that specify RepoSource:\n\n* If the original build built from the tip of a branch, the retried build\nwill build from the tip of that branch, which may not be the same revision\nas the original build.\n* If the original build specified a commit sha or revision ID, the retried\nbuild will use the identical source.\n\nFor builds that specify StorageSource:\n\n* If the original build pulled source from Cloud Storage without specifying\nthe generation of the object, the new build will use the current object,\nwhich may be different from the original build source.\n* If the original build pulled source from Cloud Storage and specified the\ngeneration of the object, the new build will attempt to use the same\nobject, which may or may not be available depending on the bucket's\nlifecycle management settings." - }, - "get": { - "id": "cloudbuild.projects.builds.get", - "path": "v1/projects/{projectId}/builds/{id}", - "description": "Returns information about a previously requested build.\n\nThe Build that is returned includes its status (e.g., success or failure,\nor in-progress), and timing information.", - "httpMethod": "GET", - "response": { - "$ref": "Build" - }, - "parameterOrder": [ - "projectId", - "id" - ], - "parameters": { - "projectId": { - "description": "ID of the project.", - "required": true, - "type": "string", - "location": "path" - }, - "id": { - "location": "path", - "description": "ID of the build.", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/projects/{projectId}/builds/{id}" - }, - "list": { - "flatPath": "v1/projects/{projectId}/builds", - "path": "v1/projects/{projectId}/builds", - "id": "cloudbuild.projects.builds.list", - "description": "Lists previously requested builds.\n\nPreviously requested builds may still be in-progress, or may have finished\nsuccessfully or unsuccessfully.", - "response": { - "$ref": "ListBuildsResponse" - }, - "parameterOrder": [ - "projectId" - ], - "httpMethod": "GET", - "parameters": { - "filter": { - "description": "The raw filter text to constrain the results.", - "type": "string", - "location": "query" - }, - "pageToken": { - "location": "query", - "description": "Token to provide to skip to a particular spot in the list.", - "type": "string" - }, - "pageSize": { - "location": "query", - "description": "Number of results to return in the list.", - "format": "int32", - "type": "integer" - }, - "projectId": { - "description": "ID of the project.", - "required": true, - "type": "string", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "create": { - "request": { - "$ref": "Build" - }, - "description": "Starts a build with the specified configuration.\n\nThe long-running Operation returned by this method will include the ID of\nthe build, which can be passed to GetBuild to determine its status (e.g.,\nsuccess or failure).", - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "projectId" - ], - "httpMethod": "POST", - "parameters": { - "projectId": { - "location": "path", - "description": "ID of the project.", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/projects/{projectId}/builds", - "path": "v1/projects/{projectId}/builds", - "id": "cloudbuild.projects.builds.create" - } - } - }, - "triggers": { - "methods": { - "get": { - "response": { - "$ref": "BuildTrigger" - }, - "parameterOrder": [ - "projectId", - "triggerId" - ], - "httpMethod": "GET", - "parameters": { - "triggerId": { - "description": "ID of the BuildTrigger to get.", - "required": true, - "type": "string", - "location": "path" - }, - "projectId": { - "description": "ID of the project that owns the trigger.", - "required": true, - "type": "string", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/projects/{projectId}/triggers/{triggerId}", - "path": "v1/projects/{projectId}/triggers/{triggerId}", - "id": "cloudbuild.projects.triggers.get", - "description": "Gets information about a BuildTrigger.\n\nThis API is experimental." - }, - "patch": { - "response": { - "$ref": "BuildTrigger" - }, - "parameterOrder": [ - "projectId", - "triggerId" - ], - "httpMethod": "PATCH", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "triggerId": { - "description": "ID of the BuildTrigger to update.", - "required": true, - "type": "string", - "location": "path" - }, - "projectId": { - "description": "ID of the project that owns the trigger.", - "required": true, - "type": "string", - "location": "path" - } - }, - "flatPath": "v1/projects/{projectId}/triggers/{triggerId}", - "path": "v1/projects/{projectId}/triggers/{triggerId}", - "id": "cloudbuild.projects.triggers.patch", - "description": "Updates an BuildTrigger by its project ID and trigger ID.\n\nThis API is experimental.", - "request": { - "$ref": "BuildTrigger" - } - }, - "delete": { - "path": "v1/projects/{projectId}/triggers/{triggerId}", - "id": "cloudbuild.projects.triggers.delete", - "description": "Deletes an BuildTrigger by its project ID and trigger ID.\n\nThis API is experimental.", - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "projectId", - "triggerId" - ], - "httpMethod": "DELETE", - "parameters": { - "triggerId": { - "location": "path", - "description": "ID of the BuildTrigger to delete.", - "required": true, - "type": "string" - }, - "projectId": { - "description": "ID of the project that owns the trigger.", - "required": true, - "type": "string", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/projects/{projectId}/triggers/{triggerId}" - }, - "list": { - "response": { - "$ref": "ListBuildTriggersResponse" - }, - "parameterOrder": [ - "projectId" - ], - "httpMethod": "GET", - "parameters": { - "projectId": { - "location": "path", - "description": "ID of the project for which to list BuildTriggers.", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/projects/{projectId}/triggers", - "path": "v1/projects/{projectId}/triggers", - "id": "cloudbuild.projects.triggers.list", - "description": "Lists existing BuildTrigger.\n\nThis API is experimental." - }, - "create": { - "flatPath": "v1/projects/{projectId}/triggers", - "path": "v1/projects/{projectId}/triggers", - "id": "cloudbuild.projects.triggers.create", - "description": "Creates a new BuildTrigger.\n\nThis API is experimental.", - "request": { - "$ref": "BuildTrigger" - }, - "response": { - "$ref": "BuildTrigger" - }, - "parameterOrder": [ - "projectId" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "projectId": { - "description": "ID of the project for which to configure automatic builds.", - "required": true, - "type": "string", - "location": "path" - } - } - }, - "run": { - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "projectId", - "triggerId" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "triggerId": { - "location": "path", - "description": "ID of the trigger.", - "required": true, - "type": "string" - }, - "projectId": { - "location": "path", - "description": "ID of the project.", - "required": true, - "type": "string" - } - }, - "flatPath": "v1/projects/{projectId}/triggers/{triggerId}:run", - "path": "v1/projects/{projectId}/triggers/{triggerId}:run", - "id": "cloudbuild.projects.triggers.run", - "description": "Runs a BuildTrigger at a particular source revision.", - "request": { - "$ref": "RepoSource" - } - } - } - } - } - }, - "operations": { - "methods": { - "cancel": { - "request": { - "$ref": "CancelOperationRequest" - }, - "description": "Starts asynchronous cancellation on a long-running operation. The server\nmakes a best effort to cancel the operation, but success is not\nguaranteed. If the server doesn't support this method, it returns\n`google.rpc.Code.UNIMPLEMENTED`. Clients can use\nOperations.GetOperation or\nother methods to check whether the cancellation succeeded or whether the\noperation completed despite cancellation. On successful cancellation,\nthe operation is not deleted; instead, it becomes an operation with\nan Operation.error value with a google.rpc.Status.code of 1,\ncorresponding to `Code.CANCELLED`.", - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "POST", - "parameters": { - "name": { - "pattern": "^operations/.+$", - "location": "path", - "description": "The name of the operation resource to be cancelled.", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/operations/{operationsId}:cancel", - "path": "v1/{+name}:cancel", - "id": "cloudbuild.operations.cancel" - }, - "list": { - "httpMethod": "GET", - "response": { - "$ref": "ListOperationsResponse" - }, - "parameterOrder": [ - "name" - ], - "parameters": { - "filter": { - "description": "The standard list filter.", - "type": "string", - "location": "query" - }, - "name": { - "location": "path", - "description": "The name of the operation's parent resource.", - "required": true, - "type": "string", - "pattern": "^operations$" - }, - "pageToken": { - "description": "The standard list page token.", - "type": "string", - "location": "query" - }, - "pageSize": { - "location": "query", - "description": "The standard list page size.", - "format": "int32", - "type": "integer" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/operations", - "id": "cloudbuild.operations.list", - "path": "v1/{+name}", - "description": "Lists operations that match the specified filter in the request. If the\nserver doesn't support this method, it returns `UNIMPLEMENTED`.\n\nNOTE: the `name` binding allows API services to override the binding\nto use different resource name schemes, such as `users/*/operations`. To\noverride the binding, API services can add a binding such as\n`\"/v1/{name=users/*}/operations\"` to their service configuration.\nFor backwards compatibility, the default name includes the operations\ncollection id, however overriding users must ensure the name binding\nis the parent resource, without the operations collection id." - }, - "get": { - "description": "Gets the latest state of a long-running operation. Clients can use this\nmethod to poll the operation result at intervals as recommended by the API\nservice.", - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "name": { - "description": "The name of the operation resource.", - "required": true, - "type": "string", - "pattern": "^operations/.+$", - "location": "path" - } - }, - "flatPath": "v1/operations/{operationsId}", - "path": "v1/{+name}", - "id": "cloudbuild.operations.get" + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/cloud-platform": { + "description": "View and manage your data across Google Cloud Platform services" } } } }, + "basePath": "", + "baseUrl": "https://cloudbuild.googleapis.com/", + "batchPath": "batch", + "canonicalName": "Cloud Build", + "description": "Builds container images in the cloud.", + "discoveryVersion": "v1", + "documentationLink": "https://cloud.google.com/container-builder/docs/", + "icons": { + "x16": "http://www.google.com/images/icons/product/search-16.gif", + "x32": "http://www.google.com/images/icons/product/search-32.gif" + }, + "id": "cloudbuild:v1", + "kind": "discovery#restDescription", + "name": "cloudbuild", + "ownerDomain": "google.com", + "ownerName": "Google", "parameters": { - "upload_protocol": { - "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", - "type": "string", - "location": "query" - }, - "prettyPrint": { - "location": "query", - "description": "Returns response with indentations and line breaks.", - "type": "boolean", - "default": "true" - }, - "fields": { - "description": "Selector specifying which fields to include in a partial response.", - "type": "string", - "location": "query" - }, - "uploadType": { - "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", - "type": "string", - "location": "query" - }, "$.xgafv": { + "description": "V1 error format.", + "enum": [ + "1", + "2" + ], "enumDescriptions": [ "v1 error format", "v2 error format" ], "location": "query", - "enum": [ - "1", - "2" - ], - "description": "V1 error format.", "type": "string" }, - "callback": { - "description": "JSONP", - "type": "string", - "location": "query" + "access_token": { + "description": "OAuth access token.", + "location": "query", + "type": "string" }, "alt": { - "type": "string", + "default": "json", + "description": "Data format for response.", + "enum": [ + "json", + "media", + "proto" + ], "enumDescriptions": [ "Responses with Content-Type of application/json", "Media download with context-dependent Content-Type", "Responses with Content-Type of application/x-protobuf" ], "location": "query", - "description": "Data format for response.", - "default": "json", - "enum": [ - "json", - "media", - "proto" - ] - }, - "access_token": { - "description": "OAuth access token.", - "type": "string", - "location": "query" - }, - "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.", - "type": "string", - "location": "query" - }, - "quotaUser": { - "location": "query", - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", - "type": "string" - }, - "pp": { - "description": "Pretty-print response.", - "type": "boolean", - "default": "true", - "location": "query" - }, - "oauth_token": { - "location": "query", - "description": "OAuth 2.0 token for the current user.", "type": "string" }, "bearer_token": { "description": "OAuth bearer token.", - "type": "string", - "location": "query" + "location": "query", + "type": "string" + }, + "callback": { + "description": "JSONP", + "location": "query", + "type": "string" + }, + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "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.", + "location": "query", + "type": "string" + }, + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "pp": { + "default": "true", + "description": "Pretty-print response.", + "location": "query", + "type": "boolean" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", + "location": "query", + "type": "string" + }, + "uploadType": { + "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", + "location": "query", + "type": "string" + }, + "upload_protocol": { + "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", + "location": "query", + "type": "string" } }, - "version": "v1", - "baseUrl": "https://cloudbuild.googleapis.com/", - "kind": "discovery#restDescription", - "description": "Builds container images in the cloud.", - "servicePath": "", - "basePath": "", - "revision": "20180121", - "documentationLink": "https://cloud.google.com/container-builder/docs/", - "id": "cloudbuild:v1", - "discoveryVersion": "v1", - "version_module": true, + "protocol": "rest", + "resources": { + "operations": { + "methods": { + "cancel": { + "description": "Starts asynchronous cancellation on a long-running operation. The server\nmakes a best effort to cancel the operation, but success is not\nguaranteed. If the server doesn't support this method, it returns\n`google.rpc.Code.UNIMPLEMENTED`. Clients can use\nOperations.GetOperation or\nother methods to check whether the cancellation succeeded or whether the\noperation completed despite cancellation. On successful cancellation,\nthe operation is not deleted; instead, it becomes an operation with\nan Operation.error value with a google.rpc.Status.code of 1,\ncorresponding to `Code.CANCELLED`.", + "flatPath": "v1/operations/{operationsId}:cancel", + "httpMethod": "POST", + "id": "cloudbuild.operations.cancel", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource to be cancelled.", + "location": "path", + "pattern": "^operations/.+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}:cancel", + "request": { + "$ref": "CancelOperationRequest" + }, + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Gets the latest state of a long-running operation. Clients can use this\nmethod to poll the operation result at intervals as recommended by the API\nservice.", + "flatPath": "v1/operations/{operationsId}", + "httpMethod": "GET", + "id": "cloudbuild.operations.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource.", + "location": "path", + "pattern": "^operations/.+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists operations that match the specified filter in the request. If the\nserver doesn't support this method, it returns `UNIMPLEMENTED`.\n\nNOTE: the `name` binding allows API services to override the binding\nto use different resource name schemes, such as `users/*/operations`. To\noverride the binding, API services can add a binding such as\n`\"/v1/{name=users/*}/operations\"` to their service configuration.\nFor backwards compatibility, the default name includes the operations\ncollection id, however overriding users must ensure the name binding\nis the parent resource, without the operations collection id.", + "flatPath": "v1/operations", + "httpMethod": "GET", + "id": "cloudbuild.operations.list", + "parameterOrder": [ + "name" + ], + "parameters": { + "filter": { + "description": "The standard list filter.", + "location": "query", + "type": "string" + }, + "name": { + "description": "The name of the operation's parent resource.", + "location": "path", + "pattern": "^operations$", + "required": true, + "type": "string" + }, + "pageSize": { + "description": "The standard list page size.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "The standard list page token.", + "location": "query", + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "ListOperationsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + }, + "projects": { + "resources": { + "builds": { + "methods": { + "cancel": { + "description": "Cancels a build in progress.", + "flatPath": "v1/projects/{projectId}/builds/{id}:cancel", + "httpMethod": "POST", + "id": "cloudbuild.projects.builds.cancel", + "parameterOrder": [ + "projectId", + "id" + ], + "parameters": { + "id": { + "description": "ID of the build.", + "location": "path", + "required": true, + "type": "string" + }, + "projectId": { + "description": "ID of the project.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/projects/{projectId}/builds/{id}:cancel", + "request": { + "$ref": "CancelBuildRequest" + }, + "response": { + "$ref": "Build" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "create": { + "description": "Starts a build with the specified configuration.\n\nThis method returns a long-running `Operation`, which includes the build\nID. Pass the build ID to `GetBuild` to determine the build status (such as\n`SUCCESS` or `FAILURE`).", + "flatPath": "v1/projects/{projectId}/builds", + "httpMethod": "POST", + "id": "cloudbuild.projects.builds.create", + "parameterOrder": [ + "projectId" + ], + "parameters": { + "projectId": { + "description": "ID of the project.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/projects/{projectId}/builds", + "request": { + "$ref": "Build" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Returns information about a previously requested build.\n\nThe `Build` that is returned includes its status (such as `SUCCESS`,\n`FAILURE`, or `WORKING`), and timing information.", + "flatPath": "v1/projects/{projectId}/builds/{id}", + "httpMethod": "GET", + "id": "cloudbuild.projects.builds.get", + "parameterOrder": [ + "projectId", + "id" + ], + "parameters": { + "id": { + "description": "ID of the build.", + "location": "path", + "required": true, + "type": "string" + }, + "projectId": { + "description": "ID of the project.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/projects/{projectId}/builds/{id}", + "response": { + "$ref": "Build" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists previously requested builds.\n\nPreviously requested builds may still be in-progress, or may have finished\nsuccessfully or unsuccessfully.", + "flatPath": "v1/projects/{projectId}/builds", + "httpMethod": "GET", + "id": "cloudbuild.projects.builds.list", + "parameterOrder": [ + "projectId" + ], + "parameters": { + "filter": { + "description": "The raw filter text to constrain the results.", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "Number of results to return in the list.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Token to provide to skip to a particular spot in the list.", + "location": "query", + "type": "string" + }, + "projectId": { + "description": "ID of the project.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/projects/{projectId}/builds", + "response": { + "$ref": "ListBuildsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "retry": { + "description": "Creates a new build based on the specified build.\n\nThis method creates a new build using the original build request, which may\nor may not result in an identical build.\n\nFor triggered builds:\n\n* Triggered builds resolve to a precise revision; therefore a retry of a\ntriggered build will result in a build that uses the same revision.\n\nFor non-triggered builds that specify `RepoSource`:\n\n* If the original build built from the tip of a branch, the retried build\nwill build from the tip of that branch, which may not be the same revision\nas the original build.\n* If the original build specified a commit sha or revision ID, the retried\nbuild will use the identical source.\n\nFor builds that specify `StorageSource`:\n\n* If the original build pulled source from Google Cloud Storage without\nspecifying the generation of the object, the new build will use the current\nobject, which may be different from the original build source.\n* If the original build pulled source from Cloud Storage and specified the\ngeneration of the object, the new build will attempt to use the same\nobject, which may or may not be available depending on the bucket's\nlifecycle management settings.", + "flatPath": "v1/projects/{projectId}/builds/{id}:retry", + "httpMethod": "POST", + "id": "cloudbuild.projects.builds.retry", + "parameterOrder": [ + "projectId", + "id" + ], + "parameters": { + "id": { + "description": "Build ID of the original build.", + "location": "path", + "required": true, + "type": "string" + }, + "projectId": { + "description": "ID of the project.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/projects/{projectId}/builds/{id}:retry", + "request": { + "$ref": "RetryBuildRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + }, + "triggers": { + "methods": { + "create": { + "description": "Creates a new `BuildTrigger`.\n\nThis API is experimental.", + "flatPath": "v1/projects/{projectId}/triggers", + "httpMethod": "POST", + "id": "cloudbuild.projects.triggers.create", + "parameterOrder": [ + "projectId" + ], + "parameters": { + "projectId": { + "description": "ID of the project for which to configure automatic builds.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/projects/{projectId}/triggers", + "request": { + "$ref": "BuildTrigger" + }, + "response": { + "$ref": "BuildTrigger" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Deletes a `BuildTrigger` by its project ID and trigger ID.\n\nThis API is experimental.", + "flatPath": "v1/projects/{projectId}/triggers/{triggerId}", + "httpMethod": "DELETE", + "id": "cloudbuild.projects.triggers.delete", + "parameterOrder": [ + "projectId", + "triggerId" + ], + "parameters": { + "projectId": { + "description": "ID of the project that owns the trigger.", + "location": "path", + "required": true, + "type": "string" + }, + "triggerId": { + "description": "ID of the `BuildTrigger` to delete.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/projects/{projectId}/triggers/{triggerId}", + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Returns information about a `BuildTrigger`.\n\nThis API is experimental.", + "flatPath": "v1/projects/{projectId}/triggers/{triggerId}", + "httpMethod": "GET", + "id": "cloudbuild.projects.triggers.get", + "parameterOrder": [ + "projectId", + "triggerId" + ], + "parameters": { + "projectId": { + "description": "ID of the project that owns the trigger.", + "location": "path", + "required": true, + "type": "string" + }, + "triggerId": { + "description": "ID of the `BuildTrigger` to get.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/projects/{projectId}/triggers/{triggerId}", + "response": { + "$ref": "BuildTrigger" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists existing `BuildTrigger`s.\n\nThis API is experimental.", + "flatPath": "v1/projects/{projectId}/triggers", + "httpMethod": "GET", + "id": "cloudbuild.projects.triggers.list", + "parameterOrder": [ + "projectId" + ], + "parameters": { + "projectId": { + "description": "ID of the project for which to list BuildTriggers.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/projects/{projectId}/triggers", + "response": { + "$ref": "ListBuildTriggersResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "patch": { + "description": "Updates a `BuildTrigger` by its project ID and trigger ID.\n\nThis API is experimental.", + "flatPath": "v1/projects/{projectId}/triggers/{triggerId}", + "httpMethod": "PATCH", + "id": "cloudbuild.projects.triggers.patch", + "parameterOrder": [ + "projectId", + "triggerId" + ], + "parameters": { + "projectId": { + "description": "ID of the project that owns the trigger.", + "location": "path", + "required": true, + "type": "string" + }, + "triggerId": { + "description": "ID of the `BuildTrigger` to update.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/projects/{projectId}/triggers/{triggerId}", + "request": { + "$ref": "BuildTrigger" + }, + "response": { + "$ref": "BuildTrigger" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "run": { + "description": "Runs a `BuildTrigger` at a particular source revision.", + "flatPath": "v1/projects/{projectId}/triggers/{triggerId}:run", + "httpMethod": "POST", + "id": "cloudbuild.projects.triggers.run", + "parameterOrder": [ + "projectId", + "triggerId" + ], + "parameters": { + "projectId": { + "description": "ID of the project.", + "location": "path", + "required": true, + "type": "string" + }, + "triggerId": { + "description": "ID of the trigger.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/projects/{projectId}/triggers/{triggerId}:run", + "request": { + "$ref": "RepoSource" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + } + } + } + }, + "revision": "20180329", + "rootUrl": "https://cloudbuild.googleapis.com/", "schemas": { - "BuildOperationMetadata": { - "description": "Metadata for build operations.", - "type": "object", + "ArtifactObjects": { + "description": "Files in the workspace to upload to Cloud Storage upon successful\ncompletion of all build steps.", + "id": "ArtifactObjects", "properties": { - "build": { - "description": "The build that the operation is tracking.", - "$ref": "Build" + "location": { + "description": "Cloud Storage bucket and optional object path, in the form\n\"gs://bucket/path/to/somewhere/\". (see [Bucket Name\nRequirements](https://cloud.google.com/storage/docs/bucket-naming#requirements)).\n\nFiles in the workspace matching any path pattern will be uploaded to\nCloud Storage with this location as a prefix.", + "type": "string" + }, + "paths": { + "description": "Path globs used to match files in the build's workspace.", + "items": { + "type": "string" + }, + "type": "array" } }, - "id": "BuildOperationMetadata" + "type": "object" }, - "SourceProvenance": { - "description": "Provenance of the source. Ways to find the original source, or verify that\nsome source was used for this build.", - "type": "object", + "Artifacts": { + "description": "Artifacts produced by a build that should be uploaded upon\nsuccessful completion of all build steps.", + "id": "Artifacts", "properties": { - "fileHashes": { - "additionalProperties": { - "$ref": "FileHashes" + "images": { + "description": "A list of images to be pushed upon the successful completion of all build\nsteps.\n\nThe images will be pushed using the builder service account's credentials.\n\nThe digests of the pushed images will be stored in the Build resource's\nresults field.\n\nIf any of the images fail to be pushed, the build is marked FAILURE.", + "items": { + "type": "string" }, - "description": "Hash(es) of the build source, which can be used to verify that the original\nsource integrity was maintained in the build. Note that FileHashes will\nonly be populated if BuildOptions has requested a SourceProvenanceHash.\n\nThe keys to this map are file paths used as build source and the values\ncontain the hash values for those files.\n\nIf the build source came in a single package such as a gzipped tarfile\n(.tar.gz), the FileHash will be for the single path to that file.\n@OutputOnly", + "type": "array" + }, + "objects": { + "$ref": "ArtifactObjects", + "description": "A list of objects to be uploaded to Cloud Storage upon successful\ncompletion of all build steps.\n\nFiles in the workspace matching specified paths globs will be uploaded to\nthe specified Cloud Storage location using the builder service account's\ncredentials.\n\nThe location and generation of the uploaded objects will be stored in the\nBuild resource's results field.\n\nIf any objects fail to be pushed, the build is marked FAILURE." + } + }, + "type": "object" + }, + "Build": { + "description": "A build resource in the Container Builder API.\n\nAt a high level, a `Build` describes where to find source code, how to build\nit (for example, the builder image to run on the source), and where to store\nthe built artifacts.\n\nFields can include the following variables, which will be expanded when the\nbuild is created:\n\n- $PROJECT_ID: the project ID of the build.\n- $BUILD_ID: the autogenerated ID of the build.\n- $REPO_NAME: the source repository name specified by RepoSource.\n- $BRANCH_NAME: the branch name specified by RepoSource.\n- $TAG_NAME: the tag name specified by RepoSource.\n- $REVISION_ID or $COMMIT_SHA: the commit SHA specified by RepoSource or\n resolved from the specified branch or tag.\n- $SHORT_SHA: first 7 characters of $REVISION_ID or $COMMIT_SHA.", + "id": "Build", + "properties": { + "artifacts": { + "$ref": "Artifacts", + "description": "Artifacts produced by the build that should be uploaded upon\nsuccessful completion of all build steps." + }, + "buildTriggerId": { + "description": "The ID of the `BuildTrigger` that triggered this build, if it was\ntriggered automatically.\n@OutputOnly", + "type": "string" + }, + "createTime": { + "description": "Time at which the request to create the build was received.\n@OutputOnly", + "format": "google-datetime", + "type": "string" + }, + "finishTime": { + "description": "Time at which execution of the build was finished.\n\nThe difference between finish_time and start_time is the duration of the\nbuild's execution.\n@OutputOnly", + "format": "google-datetime", + "type": "string" + }, + "id": { + "description": "Unique identifier of the build.\n@OutputOnly", + "type": "string" + }, + "images": { + "description": "A list of images to be pushed upon the successful completion of all build\nsteps.\n\nThe images are pushed using the builder service account's credentials.\n\nThe digests of the pushed images will be stored in the `Build` resource's\nresults field.\n\nIf any of the images fail to be pushed, the build status is marked\n`FAILURE`.", + "items": { + "type": "string" + }, + "type": "array" + }, + "logUrl": { + "description": "URL to logs for this build in Google Cloud Console.\n@OutputOnly", + "type": "string" + }, + "logsBucket": { + "description": "Google Cloud Storage bucket where logs should be written (see\n[Bucket Name\nRequirements](https://cloud.google.com/storage/docs/bucket-naming#requirements)).\nLogs file names will be of the format `${logs_bucket}/log-${build_id}.txt`.", + "type": "string" + }, + "options": { + "$ref": "BuildOptions", + "description": "Special options for this build." + }, + "projectId": { + "description": "ID of the project.\n@OutputOnly.", + "type": "string" + }, + "results": { + "$ref": "Results", + "description": "Results of the build.\n@OutputOnly" + }, + "secrets": { + "description": "Secrets to decrypt using Cloud Key Management Service.", + "items": { + "$ref": "Secret" + }, + "type": "array" + }, + "source": { + "$ref": "Source", + "description": "The location of the source files to build." + }, + "sourceProvenance": { + "$ref": "SourceProvenance", + "description": "A permanent fixed identifier for source.\n@OutputOnly" + }, + "startTime": { + "description": "Time at which execution of the build was started.\n@OutputOnly", + "format": "google-datetime", + "type": "string" + }, + "status": { + "description": "Status of the build.\n@OutputOnly", + "enum": [ + "STATUS_UNKNOWN", + "QUEUED", + "WORKING", + "SUCCESS", + "FAILURE", + "INTERNAL_ERROR", + "TIMEOUT", + "CANCELLED" + ], + "enumDescriptions": [ + "Status of the build is unknown.", + "Build or step is queued; work has not yet begun.", + "Build or step is being executed.", + "Build or step finished successfully.", + "Build or step failed to complete successfully.", + "Build or step failed due to an internal cause.", + "Build or step took longer than was allowed.", + "Build or step was canceled by a user." + ], + "type": "string" + }, + "statusDetail": { + "description": "Customer-readable message about the current status.\n@OutputOnly", + "type": "string" + }, + "steps": { + "description": "Required. The operations to be performed on the workspace.", + "items": { + "$ref": "BuildStep" + }, + "type": "array" + }, + "substitutions": { + "additionalProperties": { + "type": "string" + }, + "description": "Substitutions data for `Build` resource.", "type": "object" }, - "resolvedRepoSource": { - "description": "A copy of the build's source.repo_source, if exists, with any\nrevisions resolved.", - "$ref": "RepoSource" + "tags": { + "description": "Tags for annotation of a `Build`. These are not docker tags.", + "items": { + "type": "string" + }, + "type": "array" }, - "resolvedStorageSource": { - "$ref": "StorageSource", - "description": "A copy of the build's source.storage_source, if exists, with any\ngenerations resolved." + "timeout": { + "description": "Amount of time that this build should be allowed to run, to second\ngranularity. If this amount of time elapses, work on the build will cease\nand the build status will be `TIMEOUT`.\n\nDefault time is ten minutes.", + "format": "google-duration", + "type": "string" + }, + "timing": { + "additionalProperties": { + "$ref": "TimeSpan" + }, + "description": "Stores timing information for phases of the build. Valid keys are:\n\n* BUILD: time to execute all build steps\n* PUSH: time to push all specified images.\n* FETCHSOURCE: time to fetch source.\n\nIf the build does not specify source or images,\nthese keys will not be included.\n@OutputOnly", + "type": "object" } }, - "id": "SourceProvenance" + "type": "object" + }, + "BuildOperationMetadata": { + "description": "Metadata for build operations.", + "id": "BuildOperationMetadata", + "properties": { + "build": { + "$ref": "Build", + "description": "The build that the operation is tracking." + } + }, + "type": "object" + }, + "BuildOptions": { + "description": "Optional arguments to enable specific features of builds.", + "id": "BuildOptions", + "properties": { + "diskSizeGb": { + "description": "Requested disk size for the VM that runs the build. Note that this is *NOT*\n\"disk free\"; some of the space will be used by the operating system and\nbuild utilities. Also note that this is the minimum disk size that will be\nallocated for the build -- the build may run with a larger disk than\nrequested. At present, the maximum disk size is 1000GB; builds that request\nmore than the maximum are rejected with an error.", + "format": "int64", + "type": "string" + }, + "logStreamingOption": { + "description": "Option to define build log streaming behavior to Google Cloud\nStorage.", + "enum": [ + "STREAM_DEFAULT", + "STREAM_ON", + "STREAM_OFF" + ], + "enumDescriptions": [ + "Service may automatically determine build log streaming behavior.", + "Build logs should be streamed to Google Cloud Storage.", + "Build logs should not be streamed to Google Cloud Storage; they will be\nwritten when the build is completed." + ], + "type": "string" + }, + "machineType": { + "description": "Compute Engine machine type on which to run the build.", + "enum": [ + "UNSPECIFIED", + "N1_HIGHCPU_8", + "N1_HIGHCPU_32" + ], + "enumDescriptions": [ + "Standard machine type.", + "Highcpu machine with 8 CPUs.", + "Highcpu machine with 32 CPUs." + ], + "type": "string" + }, + "requestedVerifyOption": { + "description": "Requested verifiability options.", + "enum": [ + "NOT_VERIFIED", + "VERIFIED" + ], + "enumDescriptions": [ + "Not a verifiable build. (default)", + "Verified build." + ], + "type": "string" + }, + "sourceProvenanceHash": { + "description": "Requested hash for SourceProvenance.", + "enumDescriptions": [ + "No hash requested.", + "Use a sha256 hash." + ], + "items": { + "enum": [ + "NONE", + "SHA256" + ], + "type": "string" + }, + "type": "array" + }, + "substitutionOption": { + "description": "Option to specify behavior when there is an error in the substitution\nchecks.", + "enum": [ + "MUST_MATCH", + "ALLOW_LOOSE" + ], + "enumDescriptions": [ + "Fails the build if error in substitutions checks, like missing\na substitution in the template or in the map.", + "Do not fail the build if error in substitutions checks." + ], + "type": "string" + } + }, + "type": "object" + }, + "BuildStep": { + "description": "A step in the build pipeline.", + "id": "BuildStep", + "properties": { + "args": { + "description": "A list of arguments that will be presented to the step when it is started.\n\nIf the image used to run the step's container has an entrypoint, the `args`\nare used as arguments to that entrypoint. If the image does not define\nan entrypoint, the first element in args is used as the entrypoint,\nand the remainder will be used as arguments.", + "items": { + "type": "string" + }, + "type": "array" + }, + "dir": { + "description": "Working directory to use when running this step's container.\n\nIf this value is a relative path, it is relative to the build's working\ndirectory. If this value is absolute, it may be outside the build's working\ndirectory, in which case the contents of the path may not be persisted\nacross build step executions, unless a `volume` for that path is specified.\n\nIf the build specifies a `RepoSource` with `dir` and a step with a `dir`,\nwhich specifies an absolute path, the `RepoSource` `dir` is ignored for\nthe step's execution.", + "type": "string" + }, + "entrypoint": { + "description": "Entrypoint to be used instead of the build step image's default entrypoint.\nIf unset, the image's default entrypoint is used.", + "type": "string" + }, + "env": { + "description": "A list of environment variable definitions to be used when running a step.\n\nThe elements are of the form \"KEY=VALUE\" for the environment variable \"KEY\"\nbeing given the value \"VALUE\".", + "items": { + "type": "string" + }, + "type": "array" + }, + "id": { + "description": "Unique identifier for this build step, used in `wait_for` to\nreference this build step as a dependency.", + "type": "string" + }, + "name": { + "description": "Required. The name of the container image that will run this particular\nbuild step.\n\nIf the image is available in the host's Docker daemon's cache, it\nwill be run directly. If not, the host will attempt to pull the image\nfirst, using the builder service account's credentials if necessary.\n\nThe Docker daemon's cache will already have the latest versions of all of\nthe officially supported build steps\n([https://github.com/GoogleCloudPlatform/cloud-builders](https://github.com/GoogleCloudPlatform/cloud-builders)).\nThe Docker daemon will also have cached many of the layers for some popular\nimages, like \"ubuntu\", \"debian\", but they will be refreshed at the time you\nattempt to use them.\n\nIf you built an image in a previous build step, it will be stored in the\nhost's Docker daemon's cache and is available to use as the name for a\nlater build step.", + "type": "string" + }, + "secretEnv": { + "description": "A list of environment variables which are encrypted using a Cloud Key\nManagement Service crypto key. These values must be specified in the\nbuild's `Secret`.", + "items": { + "type": "string" + }, + "type": "array" + }, + "status": { + "description": "Status of the build step. At this time, build step status is only updated\non build completion; step status is not updated in real-time as the build\nprogresses.\n@OutputOnly", + "enum": [ + "STATUS_UNKNOWN", + "QUEUED", + "WORKING", + "SUCCESS", + "FAILURE", + "INTERNAL_ERROR", + "TIMEOUT", + "CANCELLED" + ], + "enumDescriptions": [ + "Status of the build is unknown.", + "Build or step is queued; work has not yet begun.", + "Build or step is being executed.", + "Build or step finished successfully.", + "Build or step failed to complete successfully.", + "Build or step failed due to an internal cause.", + "Build or step took longer than was allowed.", + "Build or step was canceled by a user." + ], + "type": "string" + }, + "timeout": { + "description": "Time limit for executing this build step. If not defined, the step has no\ntime limit and will be allowed to continue to run until either it completes\nor the build itself times out.", + "format": "google-duration", + "type": "string" + }, + "timing": { + "$ref": "TimeSpan", + "description": "Stores timing information for executing this build step.\n@OutputOnly" + }, + "volumes": { + "description": "List of volumes to mount into the build step.\n\nEach volume will be created as an empty volume prior to execution of the\nbuild step. Upon completion of the build, volumes and their contents will\nbe discarded.\n\nUsing a named volume in only one step is not valid as it is indicative\nof a mis-configured build request.", + "items": { + "$ref": "Volume" + }, + "type": "array" + }, + "waitFor": { + "description": "The ID(s) of the step(s) that this build step depends on.\nThis build step will not start until all the build steps in `wait_for`\nhave completed successfully. If `wait_for` is empty, this build step will\nstart when all previous build steps in the `Build.Steps` list have\ncompleted successfully.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "BuildTrigger": { + "description": "Configuration for an automated build in response to source repository\nchanges.", + "id": "BuildTrigger", + "properties": { + "build": { + "$ref": "Build", + "description": "Contents of the build template." + }, + "createTime": { + "description": "Time when the trigger was created.\n\n@OutputOnly", + "format": "google-datetime", + "type": "string" + }, + "description": { + "description": "Human-readable description of this trigger.", + "type": "string" + }, + "disabled": { + "description": "If true, the trigger will never result in a build.", + "type": "boolean" + }, + "filename": { + "description": "Path, from the source root, to a file whose contents is used for the\ntemplate.", + "type": "string" + }, + "id": { + "description": "Unique identifier of the trigger.\n\n@OutputOnly", + "type": "string" + }, + "substitutions": { + "additionalProperties": { + "type": "string" + }, + "description": "Substitutions data for Build resource.", + "type": "object" + }, + "triggerTemplate": { + "$ref": "RepoSource", + "description": "Template describing the types of source changes to trigger a build.\n\nBranch and tag names in trigger templates are interpreted as regular\nexpressions. Any branch or tag change that matches that regular expression\nwill trigger a build." + } + }, + "type": "object" + }, + "BuiltImage": { + "description": "An image built by the pipeline.", + "id": "BuiltImage", + "properties": { + "digest": { + "description": "Docker Registry 2.0 digest.", + "type": "string" + }, + "name": { + "description": "Name used to push the container image to Google Container Registry, as\npresented to `docker push`.", + "type": "string" + }, + "pushTiming": { + "$ref": "TimeSpan", + "description": "Stores timing information for pushing the specified image.\n@OutputOnly" + } + }, + "type": "object" + }, + "CancelBuildRequest": { + "description": "Request to cancel an ongoing build.", + "id": "CancelBuildRequest", + "properties": {}, + "type": "object" }, "CancelOperationRequest": { "description": "The request message for Operations.CancelOperation.", - "type": "object", + "id": "CancelOperationRequest", "properties": {}, - "id": "CancelOperationRequest" + "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" + }, + "FileHashes": { + "description": "Container message for hashes of byte content of files, used in\nSourceProvenance messages to verify integrity of source input to the build.", + "id": "FileHashes", + "properties": { + "fileHash": { + "description": "Collection of file hashes.", + "items": { + "$ref": "Hash" + }, + "type": "array" + } + }, + "type": "object" + }, + "Hash": { + "description": "Container message for hash values.", + "id": "Hash", + "properties": { + "type": { + "description": "The type of hash that was performed.", + "enum": [ + "NONE", + "SHA256" + ], + "enumDescriptions": [ + "No hash requested.", + "Use a sha256 hash." + ], + "type": "string" + }, + "value": { + "description": "The hash value.", + "format": "byte", + "type": "string" + } + }, + "type": "object" + }, + "ListBuildTriggersResponse": { + "description": "Response containing existing `BuildTriggers`.", + "id": "ListBuildTriggersResponse", + "properties": { + "triggers": { + "description": "`BuildTriggers` for the project, sorted by `create_time` descending.", + "items": { + "$ref": "BuildTrigger" + }, + "type": "array" + } + }, + "type": "object" + }, + "ListBuildsResponse": { + "description": "Response including listed builds.", + "id": "ListBuildsResponse", + "properties": { + "builds": { + "description": "Builds will be sorted by `create_time`, descending.", + "items": { + "$ref": "Build" + }, + "type": "array" + }, + "nextPageToken": { + "description": "Token to receive the next page of results.", + "type": "string" + } + }, + "type": "object" + }, + "ListOperationsResponse": { + "description": "The response message for Operations.ListOperations.", + "id": "ListOperationsResponse", + "properties": { + "nextPageToken": { + "description": "The standard List next-page token.", + "type": "string" + }, + "operations": { + "description": "A list of operations that matches the specified filter in the request.", + "items": { + "$ref": "Operation" + }, + "type": "array" + } + }, + "type": "object" }, "Operation": { "description": "This resource represents a long-running operation that is the result of a\nnetwork API call.", - "type": "object", + "id": "Operation", "properties": { + "done": { + "description": "If the value is `false`, it means the operation is still in progress.\nIf `true`, the operation is completed, and either `error` or `response` is\navailable.", + "type": "boolean" + }, "error": { "$ref": "Status", "description": "The error result of the operation in case of failure or cancellation." @@ -618,9 +1117,9 @@ "description": "Service-specific metadata associated with the operation. It typically\ncontains progress information and common metadata such as create time.\nSome services might not provide such metadata. Any method that returns a\nlong-running operation should document the metadata type, if any.", "type": "object" }, - "done": { - "description": "If the value is `false`, it means the operation is still in progress.\nIf `true`, the operation is completed, and either `error` or `response` is\navailable.", - "type": "boolean" + "name": { + "description": "The server-assigned name, which is only unique within the same service that\noriginally returns it. If you use the default HTTP mapping, the\n`name` should have the format of `operations/some/unique/name`.", + "type": "string" }, "response": { "additionalProperties": { @@ -629,88 +1128,16 @@ }, "description": "The normal response of the operation in case of success. If the original\nmethod returns no data on success, such as `Delete`, the response is\n`google.protobuf.Empty`. If the original method is standard\n`Get`/`Create`/`Update`, the response should be the resource. For other\nmethods, the response should have the type `XxxResponse`, where `Xxx`\nis the original method name. For example, if the original method name\nis `TakeSnapshot()`, the inferred response type is\n`TakeSnapshotResponse`.", "type": "object" - }, - "name": { - "description": "The server-assigned name, which is only unique within the same service that\noriginally returns it. If you use the default HTTP mapping, the\n`name` should have the format of `operations/some/unique/name`.", - "type": "string" } }, - "id": "Operation" - }, - "BuildStep": { - "properties": { - "volumes": { - "description": "List of volumes to mount into the build step.\n\nEach volume will be created as an empty volume prior to execution of the\nbuild step. Upon completion of the build, volumes and their contents will\nbe discarded.\n\nUsing a named volume in only one step is not valid as it is indicative\nof a mis-configured build request.", - "type": "array", - "items": { - "$ref": "Volume" - } - }, - "dir": { - "description": "Working directory (relative to project source root) to use when running\nthis operation's container.", - "type": "string" - }, - "env": { - "description": "A list of environment variable definitions to be used when running a step.\n\nThe elements are of the form \"KEY=VALUE\" for the environment variable \"KEY\"\nbeing given the value \"VALUE\".", - "type": "array", - "items": { - "type": "string" - } - }, - "waitFor": { - "description": "The ID(s) of the step(s) that this build step depends on.\nThis build step will not start until all the build steps in wait_for\nhave completed successfully. If wait_for is empty, this build step will\nstart when all previous build steps in the Build.Steps list have completed\nsuccessfully.", - "type": "array", - "items": { - "type": "string" - } - }, - "timing": { - "description": "Stores timing information for executing this build step.", - "$ref": "TimeSpan" - }, - "args": { - "description": "A list of arguments that will be presented to the step when it is started.\n\nIf the image used to run the step's container has an entrypoint, these args\nwill be used as arguments to that entrypoint. If the image does not define\nan entrypoint, the first element in args will be used as the entrypoint,\nand the remainder will be used as arguments.", - "type": "array", - "items": { - "type": "string" - } - }, - "name": { - "description": "The name of the container image that will run this particular build step.\n\nIf the image is already available in the host's Docker daemon's cache, it\nwill be run directly. If not, the host will attempt to pull the image\nfirst, using the builder service account's credentials if necessary.\n\nThe Docker daemon's cache will already have the latest versions of all of\nthe officially supported build steps\n([https://github.com/GoogleCloudPlatform/cloud-builders](https://github.com/GoogleCloudPlatform/cloud-builders)).\nThe Docker daemon will also have cached many of the layers for some popular\nimages, like \"ubuntu\", \"debian\", but they will be refreshed at the time you\nattempt to use them.\n\nIf you built an image in a previous build step, it will be stored in the\nhost's Docker daemon's cache and is available to use as the name for a\nlater build step.", - "type": "string" - }, - "entrypoint": { - "description": "Optional entrypoint to be used instead of the build step image's default\nIf unset, the image's default will be used.", - "type": "string" - }, - "secretEnv": { - "description": "A list of environment variables which are encrypted using a Cloud KMS\ncrypto key. These values must be specified in the build's secrets.", - "type": "array", - "items": { - "type": "string" - } - }, - "id": { - "description": "Optional unique identifier for this build step, used in wait_for to\nreference this build step as a dependency.", - "type": "string" - } - }, - "id": "BuildStep", - "description": "BuildStep describes a step to perform in the build pipeline.", "type": "object" }, "RepoSource": { + "description": "Location of the source in a Google Cloud Source Repository.", + "id": "RepoSource", "properties": { - "tagName": { - "description": "Name of the tag to build.", - "type": "string" - }, - "projectId": { - "description": "ID of the project that owns the repo. If omitted, the project ID requesting\nthe build is assumed.", - "type": "string" - }, - "repoName": { - "description": "Name of the repo. If omitted, the name \"default\" is assumed.", + "branchName": { + "description": "Name of the branch to build.", "type": "string" }, "commitSha": { @@ -718,489 +1145,63 @@ "type": "string" }, "dir": { - "description": "Directory, relative to the source root, in which to run the build.", + "description": "Directory, relative to the source root, in which to run the build.\n\nThis must be a relative path. If a step's `dir` is specified and is an\nabsolute path, this value is ignored for that step's execution.", "type": "string" }, - "branchName": { - "description": "Name of the branch to build.", - "type": "string" - } - }, - "id": "RepoSource", - "description": "RepoSource describes the location of the source in a Google Cloud Source\nRepository.", - "type": "object" - }, - "FileHashes": { - "description": "Container message for hashes of byte content of files, used in\nSourceProvenance messages to verify integrity of source input to the build.", - "type": "object", - "properties": { - "fileHash": { - "description": "Collection of file hashes.", - "type": "array", - "items": { - "$ref": "Hash" - } - } - }, - "id": "FileHashes" - }, - "Status": { - "properties": { - "details": { - "description": "A list of messages that carry the error details. There is a common set of\nmessage types for APIs to use.", - "type": "array", - "items": { - "type": "object", - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - } - } - }, - "code": { - "description": "The status code, which should be an enum value of google.rpc.Code.", - "format": "int32", - "type": "integer" - }, - "message": { - "description": "A developer-facing error message, which should be in English. Any\nuser-facing error message should be localized and sent in the\ngoogle.rpc.Status.details field, or localized by the client.", - "type": "string" - } - }, - "id": "Status", - "description": "The `Status` type defines a logical error model that is suitable for different\nprogramming environments, including REST APIs and RPC APIs. It is used by\n[gRPC](https://github.com/grpc). The error model is designed to be:\n\n- Simple to use and understand for most users\n- Flexible enough to meet unexpected needs\n\n# Overview\n\nThe `Status` message contains three pieces of data: error code, error message,\nand error details. The error code should be an enum value of\ngoogle.rpc.Code, but it may accept additional error codes if needed. The\nerror message should be a developer-facing English message that helps\ndevelopers *understand* and *resolve* the error. If a localized user-facing\nerror message is needed, put the localized message in the error details or\nlocalize it in the client. The optional error details may contain arbitrary\ninformation about the error. There is a predefined set of error detail types\nin the package `google.rpc` that can be used for common error conditions.\n\n# Language mapping\n\nThe `Status` message is the logical representation of the error model, but it\nis not necessarily the actual wire format. When the `Status` message is\nexposed in different client libraries and different wire protocols, it can be\nmapped differently. For example, it will likely be mapped to some exceptions\nin Java, but more likely mapped to some error codes in C.\n\n# Other uses\n\nThe error model and the `Status` message can be used in a variety of\nenvironments, either with or without APIs, to provide a\nconsistent developer experience across different environments.\n\nExample uses of this error model include:\n\n- Partial errors. If a service needs to return partial errors to the client,\n it may embed the `Status` in the normal response to indicate the partial\n errors.\n\n- Workflow errors. A typical workflow has multiple steps. Each step may\n have a `Status` message for error reporting.\n\n- Batch operations. If a client uses batch request and batch response, the\n `Status` message should be used directly inside batch response, one for\n each error sub-response.\n\n- Asynchronous operations. If an API call embeds asynchronous operation\n results in its response, the status of those operations should be\n represented directly using the `Status` message.\n\n- Logging. If some API errors are stored in logs, the message `Status` could\n be used directly after any stripping needed for security/privacy reasons.", - "type": "object" - }, - "BuildTrigger": { - "properties": { - "triggerTemplate": { - "description": "Template describing the types of source changes to trigger a build.\n\nBranch and tag names in trigger templates are interpreted as regular\nexpressions. Any branch or tag change that matches that regular expression\nwill trigger a build.", - "$ref": "RepoSource" - }, - "filename": { - "description": "Path, from the source root, to a file whose contents is used for the\ntemplate.", - "type": "string" - }, - "id": { - "description": "Unique identifier of the trigger.\n\n@OutputOnly", - "type": "string" - }, - "build": { - "$ref": "Build", - "description": "Contents of the build template." - }, - "substitutions": { - "additionalProperties": { - "type": "string" - }, - "description": "Substitutions data for Build resource.", - "type": "object" - }, - "description": { - "description": "Human-readable description of this trigger.", - "type": "string" - }, - "createTime": { - "description": "Time when the trigger was created.\n\n@OutputOnly", - "format": "google-datetime", - "type": "string" - }, - "disabled": { - "description": "If true, the trigger will never result in a build.", - "type": "boolean" - } - }, - "id": "BuildTrigger", - "description": "Configuration for an automated build in response to source repository\nchanges.", - "type": "object" - }, - "Build": { - "description": "A build resource in the Container Builder API.\n\nAt a high level, a Build describes where to find source code, how to build\nit (for example, the builder image to run on the source), and what tag to\napply to the built image when it is pushed to Google Container Registry.\n\nFields can include the following variables which will be expanded when the\nbuild is created:\n\n- $PROJECT_ID: the project ID of the build.\n- $BUILD_ID: the autogenerated ID of the build.\n- $REPO_NAME: the source repository name specified by RepoSource.\n- $BRANCH_NAME: the branch name specified by RepoSource.\n- $TAG_NAME: the tag name specified by RepoSource.\n- $REVISION_ID or $COMMIT_SHA: the commit SHA specified by RepoSource or\n resolved from the specified branch or tag.\n- $SHORT_SHA: first 7 characters of $REVISION_ID or $COMMIT_SHA.", - "type": "object", - "properties": { - "buildTriggerId": { - "description": "The ID of the BuildTrigger that triggered this build, if it was\ntriggered automatically.\n@OutputOnly", - "type": "string" - }, - "tags": { - "description": "Tags for annotation of a Build. These are not docker tags.", - "type": "array", - "items": { - "type": "string" - } - }, - "id": { - "description": "Unique identifier of the build.\n@OutputOnly", - "type": "string" - }, - "substitutions": { - "additionalProperties": { - "type": "string" - }, - "description": "Substitutions data for Build resource.", - "type": "object" - }, - "startTime": { - "description": "Time at which execution of the build was started.\n@OutputOnly", - "format": "google-datetime", - "type": "string" - }, - "timing": { - "additionalProperties": { - "$ref": "TimeSpan" - }, - "description": "Stores timing information for phases of the build. Valid keys are:\n\n* BUILD: time to execute all build steps\n* PUSH: time to push all specified images.\n* FETCHSOURCE: time to fetch source.\n\nIf the build does not specify source, or does not specify images,\nthese keys will not be included.", - "type": "object" - }, - "createTime": { - "description": "Time at which the request to create the build was received.\n@OutputOnly", - "format": "google-datetime", - "type": "string" - }, - "sourceProvenance": { - "$ref": "SourceProvenance", - "description": "A permanent fixed identifier for source.\n@OutputOnly" - }, - "images": { - "description": "A list of images to be pushed upon the successful completion of all build\nsteps.\n\nThe images will be pushed using the builder service account's credentials.\n\nThe digests of the pushed images will be stored in the Build resource's\nresults field.\n\nIf any of the images fail to be pushed, the build is marked FAILURE.", - "type": "array", - "items": { - "type": "string" - } - }, "projectId": { - "description": "ID of the project.\n@OutputOnly.", + "description": "ID of the project that owns the Cloud Source Repository. If omitted, the\nproject ID requesting the build is assumed.", "type": "string" }, - "finishTime": { - "description": "Time at which execution of the build was finished.\n\nThe difference between finish_time and start_time is the duration of the\nbuild's execution.\n@OutputOnly", - "format": "google-datetime", + "repoName": { + "description": "Name of the Cloud Source Repository. If omitted, the name \"default\" is\nassumed.", "type": "string" }, - "logUrl": { - "description": "URL to logs for this build in Google Cloud Logging.\n@OutputOnly", - "type": "string" - }, - "source": { - "$ref": "Source", - "description": "Describes where to find the source files to build." - }, - "options": { - "$ref": "BuildOptions", - "description": "Special options for this build." - }, - "timeout": { - "description": "Amount of time that this build should be allowed to run, to second\ngranularity. If this amount of time elapses, work on the build will cease\nand the build status will be TIMEOUT.\n\nDefault time is ten minutes.", - "format": "google-duration", - "type": "string" - }, - "status": { - "description": "Status of the build.\n@OutputOnly", - "type": "string", - "enumDescriptions": [ - "Status of the build is unknown.", - "Build is queued; work has not yet begun.", - "Build is being executed.", - "Build finished successfully.", - "Build failed to complete successfully.", - "Build failed due to an internal cause.", - "Build took longer than was allowed.", - "Build was canceled by a user." - ], - "enum": [ - "STATUS_UNKNOWN", - "QUEUED", - "WORKING", - "SUCCESS", - "FAILURE", - "INTERNAL_ERROR", - "TIMEOUT", - "CANCELLED" - ] - }, - "statusDetail": { - "description": "Customer-readable message about the current status.\n@OutputOnly", - "type": "string" - }, - "secrets": { - "description": "Secrets to decrypt using Cloud KMS.", - "type": "array", - "items": { - "$ref": "Secret" - } - }, - "results": { - "description": "Results of the build.\n@OutputOnly", - "$ref": "Results" - }, - "logsBucket": { - "description": "Google Cloud Storage bucket where logs should be written (see\n[Bucket Name\nRequirements](https://cloud.google.com/storage/docs/bucket-naming#requirements)).\nLogs file names will be of the format `${logs_bucket}/log-${build_id}.txt`.", - "type": "string" - }, - "steps": { - "description": "Describes the operations to be performed on the workspace.", - "type": "array", - "items": { - "$ref": "BuildStep" - } - } - }, - "id": "Build" - }, - "CancelBuildRequest": { - "description": "Request to cancel an ongoing build.", - "type": "object", - "properties": {}, - "id": "CancelBuildRequest" - }, - "Volume": { - "properties": { - "name": { - "description": "Name of the volume to mount.\n\nVolume names must be unique per build step and must be valid names for\nDocker volumes. Each named volume must be used by at least two build steps.", - "type": "string" - }, - "path": { - "description": "Path at which to mount the volume.\n\nPaths must be absolute and cannot conflict with other volume paths on the\nsame build step or with certain reserved volume paths.", + "tagName": { + "description": "Name of the tag to build.", "type": "string" } }, - "id": "Volume", - "description": "Volume describes a Docker container volume which is mounted into build steps\nin order to persist files across build step execution.", "type": "object" }, - "ListBuildsResponse": { - "description": "Response including listed builds.", - "type": "object", - "properties": { - "nextPageToken": { - "description": "Token to receive the next page of results.", - "type": "string" - }, - "builds": { - "description": "Builds will be sorted by create_time, descending.", - "type": "array", - "items": { - "$ref": "Build" - } - } - }, - "id": "ListBuildsResponse" - }, - "ListOperationsResponse": { - "description": "The response message for Operations.ListOperations.", - "type": "object", - "properties": { - "nextPageToken": { - "description": "The standard List next-page token.", - "type": "string" - }, - "operations": { - "description": "A list of operations that matches the specified filter in the request.", - "type": "array", - "items": { - "$ref": "Operation" - } - } - }, - "id": "ListOperationsResponse" - }, - "TimeSpan": { - "properties": { - "endTime": { - "description": "End of time span.", - "format": "google-datetime", - "type": "string" - }, - "startTime": { - "description": "Start of time span.", - "format": "google-datetime", - "type": "string" - } - }, - "id": "TimeSpan", - "description": "Stores start and end times for a build execution phase.", - "type": "object" - }, - "BuildOptions": { - "description": "Optional arguments to enable specific features of builds.", - "type": "object", - "properties": { - "requestedVerifyOption": { - "enum": [ - "NOT_VERIFIED", - "VERIFIED" - ], - "description": "Requested verifiability options.", - "type": "string", - "enumDescriptions": [ - "Not a verifiable build. (default)", - "Verified build." - ] - }, - "substitutionOption": { - "enumDescriptions": [ - "Fails the build if error in substitutions checks, like missing\na substitution in the template or in the map.", - "Do not fail the build if error in substitutions checks." - ], - "enum": [ - "MUST_MATCH", - "ALLOW_LOOSE" - ], - "description": "SubstitutionOption to allow unmatch substitutions.", - "type": "string" - }, - "diskSizeGb": { - "description": "Requested disk size for the VM that runs the build. Note that this is *NOT*\n\"disk free\"; some of the space will be used by the operating system and\nbuild utilities. Also note that this is the minimum disk size that will be\nallocated for the build -- the build may run with a larger disk than\nrequested. At present, the maximum disk size is 1000GB; builds that request\nmore than the maximum are rejected with an error.", - "format": "int64", - "type": "string" - }, - "sourceProvenanceHash": { - "enumDescriptions": [ - "No hash requested.", - "Use a sha256 hash." - ], - "description": "Requested hash for SourceProvenance.", - "type": "array", - "items": { - "enum": [ - "NONE", - "SHA256" - ], - "type": "string" - } - }, - "machineType": { - "enum": [ - "UNSPECIFIED", - "N1_HIGHCPU_8", - "N1_HIGHCPU_32" - ], - "description": "Compute Engine machine type on which to run the build.", - "type": "string", - "enumDescriptions": [ - "Standard machine type.", - "Highcpu machine with 8 CPUs.", - "Highcpu machine with 32 CPUs." - ] - }, - "logStreamingOption": { - "enum": [ - "STREAM_DEFAULT", - "STREAM_ON", - "STREAM_OFF" - ], - "description": "LogStreamingOption to define build log streaming behavior to Google Cloud\nStorage.", - "type": "string", - "enumDescriptions": [ - "Service may automatically determine build log streaming behavior.", - "Build logs should be streamed to Google Cloud Storage.", - "Build logs should not be streamed to Google Cloud Storage; they will be\nwritten when the build is completed." - ] - } - }, - "id": "BuildOptions" - }, - "StorageSource": { - "description": "StorageSource describes the location of the source in an archive file in\nGoogle Cloud Storage.", - "type": "object", - "properties": { - "bucket": { - "description": "Google Cloud Storage bucket containing source (see\n[Bucket Name\nRequirements](https://cloud.google.com/storage/docs/bucket-naming#requirements)).", - "type": "string" - }, - "object": { - "description": "Google Cloud Storage object containing source.\n\nThis object must be a gzipped archive file (.tar.gz) containing source to\nbuild.", - "type": "string" - }, - "generation": { - "description": "Google Cloud Storage generation for the object. If the generation is\nomitted, the latest generation will be used.", - "format": "int64", - "type": "string" - } - }, - "id": "StorageSource" - }, "Results": { - "description": "Results describes the artifacts created by the build pipeline.", - "type": "object", + "description": "Artifacts created by the build pipeline.", + "id": "Results", "properties": { + "artifactManifest": { + "description": "Path to the artifact manifest. Only populated when artifacts are uploaded.", + "type": "string" + }, "buildStepImages": { - "description": "List of build step digests, in order corresponding to build step indices.", - "type": "array", + "description": "List of build step digests, in the order corresponding to build step\nindices.", "items": { "type": "string" - } + }, + "type": "array" }, "images": { - "description": "Images that were built as a part of the build.", - "type": "array", + "description": "Container images that were built as a part of the build.", "items": { "$ref": "BuiltImage" - } - } - }, - "id": "Results" - }, - "ListBuildTriggersResponse": { - "description": "Response containing existing BuildTriggers.", - "type": "object", - "properties": { - "triggers": { - "description": "BuildTriggers for the project, sorted by create_time descending.", - "type": "array", - "items": { - "$ref": "BuildTrigger" - } - } - }, - "id": "ListBuildTriggersResponse" - }, - "BuiltImage": { - "description": "BuiltImage describes an image built by the pipeline.", - "type": "object", - "properties": { - "digest": { - "description": "Docker Registry 2.0 digest.", - "type": "string" + }, + "type": "array" }, - "pushTiming": { - "description": "Stores timing information for pushing the specified image.", - "$ref": "TimeSpan" - }, - "name": { - "description": "Name used to push the container image to Google Container Registry, as\npresented to `docker push`.", + "numArtifacts": { + "description": "Number of artifacts uploaded. Only populated when artifacts are uploaded.", + "format": "int64", "type": "string" } }, - "id": "BuiltImage" + "type": "object" }, - "Hash": { - "description": "Container message for hash values.", - "type": "object", - "properties": { - "value": { - "description": "The hash value.", - "format": "byte", - "type": "string" - }, - "type": { - "description": "The type of hash that was performed.", - "type": "string", - "enumDescriptions": [ - "No hash requested.", - "Use a sha256 hash." - ], - "enum": [ - "NONE", - "SHA256" - ] - } - }, - "id": "Hash" + "RetryBuildRequest": { + "description": "Specifies a build to retry.", + "id": "RetryBuildRequest", + "properties": {}, + "type": "object" }, "Secret": { - "description": "Secret pairs a set of secret environment variables containing encrypted\nvalues with the Cloud KMS key to use to decrypt the value.", - "type": "object", + "description": "Pairs a set of secret environment variables containing encrypted\nvalues with the Cloud KMS key to use to decrypt the value.", + "id": "Secret", "properties": { "kmsKeyName": { "description": "Cloud KMS key name to use to decrypt these envs.", @@ -1215,50 +1216,127 @@ "type": "object" } }, - "id": "Secret" - }, - "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 `{}`.", - "type": "object", - "properties": {}, - "id": "Empty" + "type": "object" }, "Source": { - "description": "Source describes the location of the source in a supported storage\nservice.", - "type": "object", + "description": "Location of the source in a supported storage service.", + "id": "Source", "properties": { + "repoSource": { + "$ref": "RepoSource", + "description": "If provided, get the source from this location in a Cloud Source\nRepository." + }, "storageSource": { "$ref": "StorageSource", "description": "If provided, get the source from this location in Google Cloud Storage." - }, - "repoSource": { - "$ref": "RepoSource", - "description": "If provided, get source from this location in a Cloud Repo." } }, - "id": "Source" + "type": "object" }, - "RetryBuildRequest": { - "description": "RetryBuildRequest specifies a build to retry.", - "type": "object", - "properties": {}, - "id": "RetryBuildRequest" - } - }, - "icons": { - "x16": "http://www.google.com/images/icons/product/search-16.gif", - "x32": "http://www.google.com/images/icons/product/search-32.gif" - }, - "protocol": "rest", - "canonicalName": "Cloud Build", - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/cloud-platform": { - "description": "View and manage your data across Google Cloud Platform services" + "SourceProvenance": { + "description": "Provenance of the source. Ways to find the original source, or verify that\nsome source was used for this build.", + "id": "SourceProvenance", + "properties": { + "fileHashes": { + "additionalProperties": { + "$ref": "FileHashes" + }, + "description": "Hash(es) of the build source, which can be used to verify that the original\nsource integrity was maintained in the build. Note that `FileHashes` will\nonly be populated if `BuildOptions` has requested a `SourceProvenanceHash`.\n\nThe keys to this map are file paths used as build source and the values\ncontain the hash values for those files.\n\nIf the build source came in a single package such as a gzipped tarfile\n(`.tar.gz`), the `FileHash` will be for the single path to that file.\n@OutputOnly", + "type": "object" + }, + "resolvedRepoSource": { + "$ref": "RepoSource", + "description": "A copy of the build's `source.repo_source`, if exists, with any\nrevisions resolved." + }, + "resolvedStorageSource": { + "$ref": "StorageSource", + "description": "A copy of the build's `source.storage_source`, if exists, with any\ngenerations resolved." } - } + }, + "type": "object" + }, + "Status": { + "description": "The `Status` type defines a logical error model that is suitable for different\nprogramming environments, including REST APIs and RPC APIs. It is used by\n[gRPC](https://github.com/grpc). The error model is designed to be:\n\n- Simple to use and understand for most users\n- Flexible enough to meet unexpected needs\n\n# Overview\n\nThe `Status` message contains three pieces of data: error code, error message,\nand error details. The error code should be an enum value of\ngoogle.rpc.Code, but it may accept additional error codes if needed. The\nerror message should be a developer-facing English message that helps\ndevelopers *understand* and *resolve* the error. If a localized user-facing\nerror message is needed, put the localized message in the error details or\nlocalize it in the client. The optional error details may contain arbitrary\ninformation about the error. There is a predefined set of error detail types\nin the package `google.rpc` that can be used for common error conditions.\n\n# Language mapping\n\nThe `Status` message is the logical representation of the error model, but it\nis not necessarily the actual wire format. When the `Status` message is\nexposed in different client libraries and different wire protocols, it can be\nmapped differently. For example, it will likely be mapped to some exceptions\nin Java, but more likely mapped to some error codes in C.\n\n# Other uses\n\nThe error model and the `Status` message can be used in a variety of\nenvironments, either with or without APIs, to provide a\nconsistent developer experience across different environments.\n\nExample uses of this error model include:\n\n- Partial errors. If a service needs to return partial errors to the client,\n it may embed the `Status` in the normal response to indicate the partial\n errors.\n\n- Workflow errors. A typical workflow has multiple steps. Each step may\n have a `Status` message for error reporting.\n\n- Batch operations. If a client uses batch request and batch response, the\n `Status` message should be used directly inside batch response, one for\n each error sub-response.\n\n- Asynchronous operations. If an API call embeds asynchronous operation\n results in its response, the status of those operations should be\n represented directly using the `Status` message.\n\n- Logging. If some API errors are stored in logs, the message `Status` could\n be used directly after any stripping needed for security/privacy reasons.", + "id": "Status", + "properties": { + "code": { + "description": "The status code, which should be an enum value of google.rpc.Code.", + "format": "int32", + "type": "integer" + }, + "details": { + "description": "A list of messages that carry the error details. There is a common set of\nmessage types for APIs to use.", + "items": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "A developer-facing error message, which should be in English. Any\nuser-facing error message should be localized and sent in the\ngoogle.rpc.Status.details field, or localized by the client.", + "type": "string" + } + }, + "type": "object" + }, + "StorageSource": { + "description": "Location of the source in an archive file in Google Cloud Storage.", + "id": "StorageSource", + "properties": { + "bucket": { + "description": "Google Cloud Storage bucket containing the source (see\n[Bucket Name\nRequirements](https://cloud.google.com/storage/docs/bucket-naming#requirements)).", + "type": "string" + }, + "generation": { + "description": "Google Cloud Storage generation for the object. If the generation is\nomitted, the latest generation will be used.", + "format": "int64", + "type": "string" + }, + "object": { + "description": "Google Cloud Storage object containing the source.\n\nThis object must be a gzipped archive file (`.tar.gz`) containing source to\nbuild.", + "type": "string" + } + }, + "type": "object" + }, + "TimeSpan": { + "description": "Start and end times for a build execution phase.", + "id": "TimeSpan", + "properties": { + "endTime": { + "description": "End of time span.", + "format": "google-datetime", + "type": "string" + }, + "startTime": { + "description": "Start of time span.", + "format": "google-datetime", + "type": "string" + } + }, + "type": "object" + }, + "Volume": { + "description": "Volume describes a Docker container volume which is mounted into build steps\nin order to persist files across build step execution.", + "id": "Volume", + "properties": { + "name": { + "description": "Name of the volume to mount.\n\nVolume names must be unique per build step and must be valid names for\nDocker volumes. Each named volume must be used by at least two build steps.", + "type": "string" + }, + "path": { + "description": "Path at which to mount the volume.\n\nPaths must be absolute and cannot conflict with other volume paths on the\nsame build step or with certain reserved volume paths.", + "type": "string" + } + }, + "type": "object" } }, - "rootUrl": "https://cloudbuild.googleapis.com/" -} + "servicePath": "", + "title": "Cloud Container Builder API", + "version": "v1", + "version_module": true +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/cloudbuild/v1/cloudbuild-gen.go b/vendor/google.golang.org/api/cloudbuild/v1/cloudbuild-gen.go index 205616fc6..683cd700b 100644 --- a/vendor/google.golang.org/api/cloudbuild/v1/cloudbuild-gen.go +++ b/vendor/google.golang.org/api/cloudbuild/v1/cloudbuild-gen.go @@ -1,4 +1,4 @@ -// Package cloudbuild provides access to the Google Cloud Container Builder API. +// Package cloudbuild provides access to the Cloud Container Builder API. // // See https://cloud.google.com/container-builder/docs/ // @@ -120,16 +120,115 @@ type ProjectsTriggersService struct { s *Service } +// ArtifactObjects: Files in the workspace to upload to Cloud Storage +// upon successful +// completion of all build steps. +type ArtifactObjects struct { + // Location: Cloud Storage bucket and optional object path, in the + // form + // "gs://bucket/path/to/somewhere/". (see [Bucket + // Name + // Requirements](https://cloud.google.com/storage/docs/bucket-naming + // #requirements)). + // + // Files in the workspace matching any path pattern will be uploaded + // to + // Cloud Storage with this location as a prefix. + Location string `json:"location,omitempty"` + + // Paths: Path globs used to match files in the build's workspace. + Paths []string `json:"paths,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Location") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Location") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *ArtifactObjects) MarshalJSON() ([]byte, error) { + type NoMethod ArtifactObjects + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// Artifacts: Artifacts produced by a build that should be uploaded +// upon +// successful completion of all build steps. +type Artifacts struct { + // Images: A list of images to be pushed upon the successful completion + // of all build + // steps. + // + // The images will be pushed using the builder service account's + // credentials. + // + // The digests of the pushed images will be stored in the Build + // resource's + // results field. + // + // If any of the images fail to be pushed, the build is marked FAILURE. + Images []string `json:"images,omitempty"` + + // Objects: A list of objects to be uploaded to Cloud Storage upon + // successful + // completion of all build steps. + // + // Files in the workspace matching specified paths globs will be + // uploaded to + // the specified Cloud Storage location using the builder service + // account's + // credentials. + // + // The location and generation of the uploaded objects will be stored in + // the + // Build resource's results field. + // + // If any objects fail to be pushed, the build is marked FAILURE. + Objects *ArtifactObjects `json:"objects,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Images") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Images") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *Artifacts) MarshalJSON() ([]byte, error) { + type NoMethod Artifacts + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // Build: A build resource in the Container Builder API. // -// At a high level, a Build describes where to find source code, how to -// build -// it (for example, the builder image to run on the source), and what -// tag to -// apply to the built image when it is pushed to Google Container -// Registry. +// At a high level, a `Build` describes where to find source code, how +// to build +// it (for example, the builder image to run on the source), and where +// to store +// the built artifacts. // -// Fields can include the following variables which will be expanded +// Fields can include the following variables, which will be expanded // when the // build is created: // @@ -143,8 +242,13 @@ type ProjectsTriggersService struct { // resolved from the specified branch or tag. // - $SHORT_SHA: first 7 characters of $REVISION_ID or $COMMIT_SHA. type Build struct { - // BuildTriggerId: The ID of the BuildTrigger that triggered this build, - // if it was + // Artifacts: Artifacts produced by the build that should be uploaded + // upon + // successful completion of all build steps. + Artifacts *Artifacts `json:"artifacts,omitempty"` + + // BuildTriggerId: The ID of the `BuildTrigger` that triggered this + // build, if it was // triggered automatically. // @OutputOnly BuildTriggerId string `json:"buildTriggerId,omitempty"` @@ -170,18 +274,20 @@ type Build struct { // of all build // steps. // - // The images will be pushed using the builder service account's + // The images are pushed using the builder service account's // credentials. // - // The digests of the pushed images will be stored in the Build + // The digests of the pushed images will be stored in the `Build` // resource's // results field. // - // If any of the images fail to be pushed, the build is marked FAILURE. + // If any of the images fail to be pushed, the build status is + // marked + // `FAILURE`. Images []string `json:"images,omitempty"` // LogUrl: URL to logs for this build in Google Cloud - // Logging. + // Console. // @OutputOnly LogUrl string `json:"logUrl,omitempty"` @@ -206,10 +312,10 @@ type Build struct { // @OutputOnly Results *Results `json:"results,omitempty"` - // Secrets: Secrets to decrypt using Cloud KMS. + // Secrets: Secrets to decrypt using Cloud Key Management Service. Secrets []*Secret `json:"secrets,omitempty"` - // Source: Describes where to find the source files to build. + // Source: The location of the source files to build. Source *Source `json:"source,omitempty"` // SourceProvenance: A permanent fixed identifier for @@ -227,13 +333,13 @@ type Build struct { // // Possible values: // "STATUS_UNKNOWN" - Status of the build is unknown. - // "QUEUED" - Build is queued; work has not yet begun. - // "WORKING" - Build is being executed. - // "SUCCESS" - Build finished successfully. - // "FAILURE" - Build failed to complete successfully. - // "INTERNAL_ERROR" - Build failed due to an internal cause. - // "TIMEOUT" - Build took longer than was allowed. - // "CANCELLED" - Build was canceled by a user. + // "QUEUED" - Build or step is queued; work has not yet begun. + // "WORKING" - Build or step is being executed. + // "SUCCESS" - Build or step finished successfully. + // "FAILURE" - Build or step failed to complete successfully. + // "INTERNAL_ERROR" - Build or step failed due to an internal cause. + // "TIMEOUT" - Build or step took longer than was allowed. + // "CANCELLED" - Build or step was canceled by a user. Status string `json:"status,omitempty"` // StatusDetail: Customer-readable message about the current @@ -241,20 +347,20 @@ type Build struct { // @OutputOnly StatusDetail string `json:"statusDetail,omitempty"` - // Steps: Describes the operations to be performed on the workspace. + // Steps: Required. The operations to be performed on the workspace. Steps []*BuildStep `json:"steps,omitempty"` - // Substitutions: Substitutions data for Build resource. + // Substitutions: Substitutions data for `Build` resource. Substitutions map[string]string `json:"substitutions,omitempty"` - // Tags: Tags for annotation of a Build. These are not docker tags. + // Tags: Tags for annotation of a `Build`. These are not docker tags. Tags []string `json:"tags,omitempty"` // Timeout: Amount of time that this build should be allowed to run, to // second // granularity. If this amount of time elapses, work on the build will // cease - // and the build status will be TIMEOUT. + // and the build status will be `TIMEOUT`. // // Default time is ten minutes. Timeout string `json:"timeout,omitempty"` @@ -266,16 +372,16 @@ type Build struct { // * PUSH: time to push all specified images. // * FETCHSOURCE: time to fetch source. // - // If the build does not specify source, or does not specify - // images, + // If the build does not specify source or images, // these keys will not be included. + // @OutputOnly Timing map[string]TimeSpan `json:"timing,omitempty"` // ServerResponse contains the HTTP response code and headers from the // server. googleapi.ServerResponse `json:"-"` - // ForceSendFields is a list of field names (e.g. "BuildTriggerId") to + // ForceSendFields is a list of field names (e.g. "Artifacts") to // unconditionally include in API requests. By default, fields with // empty values are omitted from API requests. However, any non-pointer, // non-interface field appearing in ForceSendFields will be sent to the @@ -283,13 +389,12 @@ type Build struct { // used to include empty fields in Patch requests. ForceSendFields []string `json:"-"` - // NullFields is a list of field names (e.g. "BuildTriggerId") to - // include in API requests with the JSON null value. By default, fields - // with empty values are omitted from API requests. However, any field - // with an empty value appearing in NullFields will be sent to the - // server as null. It is an error if a field in this list has a - // non-empty value. This may be used to include null fields in Patch - // requests. + // NullFields is a list of field names (e.g. "Artifacts") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. NullFields []string `json:"-"` } @@ -343,8 +448,8 @@ type BuildOptions struct { // more than the maximum are rejected with an error. DiskSizeGb int64 `json:"diskSizeGb,omitempty,string"` - // LogStreamingOption: LogStreamingOption to define build log streaming - // behavior to Google Cloud + // LogStreamingOption: Option to define build log streaming behavior to + // Google Cloud // Storage. // // Possible values: @@ -379,8 +484,9 @@ type BuildOptions struct { // "SHA256" - Use a sha256 hash. SourceProvenanceHash []string `json:"sourceProvenanceHash,omitempty"` - // SubstitutionOption: SubstitutionOption to allow unmatch - // substitutions. + // SubstitutionOption: Option to specify behavior when there is an error + // in the substitution + // checks. // // Possible values: // "MUST_MATCH" - Fails the build if error in substitutions checks, @@ -413,29 +519,41 @@ func (s *BuildOptions) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -// BuildStep: BuildStep describes a step to perform in the build -// pipeline. +// BuildStep: A step in the build pipeline. type BuildStep struct { // Args: A list of arguments that will be presented to the step when it // is started. // - // If the image used to run the step's container has an entrypoint, - // these args - // will be used as arguments to that entrypoint. If the image does not + // If the image used to run the step's container has an entrypoint, the + // `args` + // are used as arguments to that entrypoint. If the image does not // define - // an entrypoint, the first element in args will be used as the + // an entrypoint, the first element in args is used as the // entrypoint, // and the remainder will be used as arguments. Args []string `json:"args,omitempty"` - // Dir: Working directory (relative to project source root) to use when - // running - // this operation's container. + // Dir: Working directory to use when running this step's container. + // + // If this value is a relative path, it is relative to the build's + // working + // directory. If this value is absolute, it may be outside the build's + // working + // directory, in which case the contents of the path may not be + // persisted + // across build step executions, unless a `volume` for that path is + // specified. + // + // If the build specifies a `RepoSource` with `dir` and a step with a + // `dir`, + // which specifies an absolute path, the `RepoSource` `dir` is ignored + // for + // the step's execution. Dir string `json:"dir,omitempty"` - // Entrypoint: Optional entrypoint to be used instead of the build step - // image's default - // If unset, the image's default will be used. + // Entrypoint: Entrypoint to be used instead of the build step image's + // default entrypoint. + // If unset, the image's default entrypoint is used. Entrypoint string `json:"entrypoint,omitempty"` // Env: A list of environment variable definitions to be used when @@ -446,16 +564,17 @@ type BuildStep struct { // being given the value "VALUE". Env []string `json:"env,omitempty"` - // Id: Optional unique identifier for this build step, used in wait_for + // Id: Unique identifier for this build step, used in `wait_for` // to // reference this build step as a dependency. Id string `json:"id,omitempty"` - // Name: The name of the container image that will run this particular + // Name: Required. The name of the container image that will run this + // particular // build step. // - // If the image is already available in the host's Docker daemon's - // cache, it + // If the image is available in the host's Docker daemon's cache, + // it // will be run directly. If not, the host will attempt to pull the // image // first, using the builder service account's credentials if @@ -481,11 +600,40 @@ type BuildStep struct { Name string `json:"name,omitempty"` // SecretEnv: A list of environment variables which are encrypted using - // a Cloud KMS - // crypto key. These values must be specified in the build's secrets. + // a Cloud Key + // Management Service crypto key. These values must be specified in + // the + // build's `Secret`. SecretEnv []string `json:"secretEnv,omitempty"` - // Timing: Stores timing information for executing this build step. + // Status: Status of the build step. At this time, build step status is + // only updated + // on build completion; step status is not updated in real-time as the + // build + // progresses. + // @OutputOnly + // + // Possible values: + // "STATUS_UNKNOWN" - Status of the build is unknown. + // "QUEUED" - Build or step is queued; work has not yet begun. + // "WORKING" - Build or step is being executed. + // "SUCCESS" - Build or step finished successfully. + // "FAILURE" - Build or step failed to complete successfully. + // "INTERNAL_ERROR" - Build or step failed due to an internal cause. + // "TIMEOUT" - Build or step took longer than was allowed. + // "CANCELLED" - Build or step was canceled by a user. + Status string `json:"status,omitempty"` + + // Timeout: Time limit for executing this build step. If not defined, + // the step has no + // time limit and will be allowed to continue to run until either it + // completes + // or the build itself times out. + Timeout string `json:"timeout,omitempty"` + + // Timing: Stores timing information for executing this build + // step. + // @OutputOnly Timing *TimeSpan `json:"timing,omitempty"` // Volumes: List of volumes to mount into the build step. @@ -504,12 +652,12 @@ type BuildStep struct { // WaitFor: The ID(s) of the step(s) that this build step depends // on. // This build step will not start until all the build steps in - // wait_for - // have completed successfully. If wait_for is empty, this build step + // `wait_for` + // have completed successfully. If `wait_for` is empty, this build step // will - // start when all previous build steps in the Build.Steps list have - // completed - // successfully. + // start when all previous build steps in the `Build.Steps` list + // have + // completed successfully. WaitFor []string `json:"waitFor,omitempty"` // ForceSendFields is a list of field names (e.g. "Args") to @@ -603,7 +751,7 @@ func (s *BuildTrigger) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -// BuiltImage: BuiltImage describes an image built by the pipeline. +// BuiltImage: An image built by the pipeline. type BuiltImage struct { // Digest: Docker Registry 2.0 digest. Digest string `json:"digest,omitempty"` @@ -615,6 +763,7 @@ type BuiltImage struct { // PushTiming: Stores timing information for pushing the specified // image. + // @OutputOnly PushTiming *TimeSpan `json:"pushTiming,omitempty"` // ForceSendFields is a list of field names (e.g. "Digest") to @@ -734,9 +883,9 @@ func (s *Hash) MarshalJSON() ([]byte, error) { } // ListBuildTriggersResponse: Response containing existing -// BuildTriggers. +// `BuildTriggers`. type ListBuildTriggersResponse struct { - // Triggers: BuildTriggers for the project, sorted by create_time + // Triggers: `BuildTriggers` for the project, sorted by `create_time` // descending. Triggers []*BuildTrigger `json:"triggers,omitempty"` @@ -769,7 +918,7 @@ func (s *ListBuildTriggersResponse) MarshalJSON() ([]byte, error) { // ListBuildsResponse: Response including listed builds. type ListBuildsResponse struct { - // Builds: Builds will be sorted by create_time, descending. + // Builds: Builds will be sorted by `create_time`, descending. Builds []*Build `json:"builds,omitempty"` // NextPageToken: Token to receive the next page of results. @@ -914,8 +1063,7 @@ func (s *Operation) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -// RepoSource: RepoSource describes the location of the source in a -// Google Cloud Source +// RepoSource: Location of the source in a Google Cloud Source // Repository. type RepoSource struct { // BranchName: Name of the branch to build. @@ -926,14 +1074,19 @@ type RepoSource struct { // Dir: Directory, relative to the source root, in which to run the // build. + // + // This must be a relative path. If a step's `dir` is specified and is + // an + // absolute path, this value is ignored for that step's execution. Dir string `json:"dir,omitempty"` - // ProjectId: ID of the project that owns the repo. If omitted, the - // project ID requesting - // the build is assumed. + // ProjectId: ID of the project that owns the Cloud Source Repository. + // If omitted, the + // project ID requesting the build is assumed. ProjectId string `json:"projectId,omitempty"` - // RepoName: Name of the repo. If omitted, the name "default" is + // RepoName: Name of the Cloud Source Repository. If omitted, the name + // "default" is // assumed. RepoName string `json:"repoName,omitempty"` @@ -963,17 +1116,25 @@ func (s *RepoSource) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -// Results: Results describes the artifacts created by the build -// pipeline. +// Results: Artifacts created by the build pipeline. type Results struct { - // BuildStepImages: List of build step digests, in order corresponding - // to build step indices. + // ArtifactManifest: Path to the artifact manifest. Only populated when + // artifacts are uploaded. + ArtifactManifest string `json:"artifactManifest,omitempty"` + + // BuildStepImages: List of build step digests, in the order + // corresponding to build step + // indices. BuildStepImages []string `json:"buildStepImages,omitempty"` - // Images: Images that were built as a part of the build. + // Images: Container images that were built as a part of the build. Images []*BuiltImage `json:"images,omitempty"` - // ForceSendFields is a list of field names (e.g. "BuildStepImages") to + // NumArtifacts: Number of artifacts uploaded. Only populated when + // artifacts are uploaded. + NumArtifacts int64 `json:"numArtifacts,omitempty,string"` + + // ForceSendFields is a list of field names (e.g. "ArtifactManifest") to // unconditionally include in API requests. By default, fields with // empty values are omitted from API requests. However, any non-pointer, // non-interface field appearing in ForceSendFields will be sent to the @@ -981,7 +1142,7 @@ type Results struct { // used to include empty fields in Patch requests. ForceSendFields []string `json:"-"` - // NullFields is a list of field names (e.g. "BuildStepImages") to + // NullFields is a list of field names (e.g. "ArtifactManifest") to // include in API requests with the JSON null value. By default, fields // with empty values are omitted from API requests. However, any field // with an empty value appearing in NullFields will be sent to the @@ -997,11 +1158,11 @@ func (s *Results) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -// RetryBuildRequest: RetryBuildRequest specifies a build to retry. +// RetryBuildRequest: Specifies a build to retry. type RetryBuildRequest struct { } -// Secret: Secret pairs a set of secret environment variables containing +// Secret: Pairs a set of secret environment variables containing // encrypted // values with the Cloud KMS key to use to decrypt the value. type Secret struct { @@ -1043,12 +1204,11 @@ func (s *Secret) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -// Source: Source describes the location of the source in a supported -// storage -// service. +// Source: Location of the source in a supported storage service. type Source struct { - // RepoSource: If provided, get source from this location in a Cloud - // Repo. + // RepoSource: If provided, get the source from this location in a Cloud + // Source + // Repository. RepoSource *RepoSource `json:"repoSource,omitempty"` // StorageSource: If provided, get the source from this location in @@ -1084,10 +1244,10 @@ func (s *Source) MarshalJSON() ([]byte, error) { type SourceProvenance struct { // FileHashes: Hash(es) of the build source, which can be used to verify // that the original - // source integrity was maintained in the build. Note that FileHashes + // source integrity was maintained in the build. Note that `FileHashes` // will - // only be populated if BuildOptions has requested a - // SourceProvenanceHash. + // only be populated if `BuildOptions` has requested a + // `SourceProvenanceHash`. // // The keys to this map are file paths used as build source and the // values @@ -1095,17 +1255,17 @@ type SourceProvenance struct { // // If the build source came in a single package such as a gzipped // tarfile - // (.tar.gz), the FileHash will be for the single path to that + // (`.tar.gz`), the `FileHash` will be for the single path to that // file. // @OutputOnly FileHashes map[string]FileHashes `json:"fileHashes,omitempty"` - // ResolvedRepoSource: A copy of the build's source.repo_source, if + // ResolvedRepoSource: A copy of the build's `source.repo_source`, if // exists, with any // revisions resolved. ResolvedRepoSource *RepoSource `json:"resolvedRepoSource,omitempty"` - // ResolvedStorageSource: A copy of the build's source.storage_source, + // ResolvedStorageSource: A copy of the build's `source.storage_source`, // if exists, with any // generations resolved. ResolvedStorageSource *StorageSource `json:"resolvedStorageSource,omitempty"` @@ -1252,11 +1412,11 @@ func (s *Status) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -// StorageSource: StorageSource describes the location of the source in -// an archive file in -// Google Cloud Storage. +// StorageSource: Location of the source in an archive file in Google +// Cloud Storage. type StorageSource struct { - // Bucket: Google Cloud Storage bucket containing source (see + // Bucket: Google Cloud Storage bucket containing the source + // (see // [Bucket // Name // Requirements](https://cloud.google.com/storage/docs/bucket-naming @@ -1268,9 +1428,9 @@ type StorageSource struct { // omitted, the latest generation will be used. Generation int64 `json:"generation,omitempty,string"` - // Object: Google Cloud Storage object containing source. + // Object: Google Cloud Storage object containing the source. // - // This object must be a gzipped archive file (.tar.gz) containing + // This object must be a gzipped archive file (`.tar.gz`) containing // source to // build. Object string `json:"object,omitempty"` @@ -1298,7 +1458,7 @@ func (s *StorageSource) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -// TimeSpan: Stores start and end times for a build execution phase. +// TimeSpan: Start and end times for a build execution phase. type TimeSpan struct { // EndTime: End of time span. EndTime string `json:"endTime,omitempty"` @@ -1891,7 +2051,7 @@ type ProjectsBuildsCancelCall struct { header_ http.Header } -// Cancel: Cancels a requested build in progress. +// Cancel: Cancels a build in progress. func (r *ProjectsBuildsService) Cancel(projectId string, id string, cancelbuildrequest *CancelBuildRequest) *ProjectsBuildsCancelCall { c := &ProjectsBuildsCancelCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.projectId = projectId @@ -1987,7 +2147,7 @@ func (c *ProjectsBuildsCancelCall) Do(opts ...googleapi.CallOption) (*Build, err } return ret, nil // { - // "description": "Cancels a requested build in progress.", + // "description": "Cancels a build in progress.", // "flatPath": "v1/projects/{projectId}/builds/{id}:cancel", // "httpMethod": "POST", // "id": "cloudbuild.projects.builds.cancel", @@ -2036,11 +2196,11 @@ type ProjectsBuildsCreateCall struct { // Create: Starts a build with the specified configuration. // -// The long-running Operation returned by this method will include the -// ID of -// the build, which can be passed to GetBuild to determine its status -// (e.g., -// success or failure). +// This method returns a long-running `Operation`, which includes the +// build +// ID. Pass the build ID to `GetBuild` to determine the build status +// (such as +// `SUCCESS` or `FAILURE`). func (r *ProjectsBuildsService) Create(projectId string, build *Build) *ProjectsBuildsCreateCall { c := &ProjectsBuildsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.projectId = projectId @@ -2134,7 +2294,7 @@ func (c *ProjectsBuildsCreateCall) Do(opts ...googleapi.CallOption) (*Operation, } return ret, nil // { - // "description": "Starts a build with the specified configuration.\n\nThe long-running Operation returned by this method will include the ID of\nthe build, which can be passed to GetBuild to determine its status (e.g.,\nsuccess or failure).", + // "description": "Starts a build with the specified configuration.\n\nThis method returns a long-running `Operation`, which includes the build\nID. Pass the build ID to `GetBuild` to determine the build status (such as\n`SUCCESS` or `FAILURE`).", // "flatPath": "v1/projects/{projectId}/builds", // "httpMethod": "POST", // "id": "cloudbuild.projects.builds.create", @@ -2177,9 +2337,9 @@ type ProjectsBuildsGetCall struct { // Get: Returns information about a previously requested build. // -// The Build that is returned includes its status (e.g., success or -// failure, -// or in-progress), and timing information. +// The `Build` that is returned includes its status (such as +// `SUCCESS`, +// `FAILURE`, or `WORKING`), and timing information. func (r *ProjectsBuildsService) Get(projectId string, id string) *ProjectsBuildsGetCall { c := &ProjectsBuildsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.projectId = projectId @@ -2282,7 +2442,7 @@ func (c *ProjectsBuildsGetCall) Do(opts ...googleapi.CallOption) (*Build, error) } return ret, nil // { - // "description": "Returns information about a previously requested build.\n\nThe Build that is returned includes its status (e.g., success or failure,\nor in-progress), and timing information.", + // "description": "Returns information about a previously requested build.\n\nThe `Build` that is returned includes its status (such as `SUCCESS`,\n`FAILURE`, or `WORKING`), and timing information.", // "flatPath": "v1/projects/{projectId}/builds/{id}", // "httpMethod": "GET", // "id": "cloudbuild.projects.builds.get", @@ -2527,19 +2687,20 @@ type ProjectsBuildsRetryCall struct { header_ http.Header } -// Retry: Creates a new build based on the given build. +// Retry: Creates a new build based on the specified build. // -// This API creates a new build using the original build request, which -// may +// This method creates a new build using the original build request, +// which may // or may not result in an identical build. // // For triggered builds: // -// * Triggered builds resolve to a precise revision, so a retry of a -// triggered -// build will result in a build that uses the same revision. +// * Triggered builds resolve to a precise revision; therefore a retry +// of a +// triggered build will result in a build that uses the same +// revision. // -// For non-triggered builds that specify RepoSource: +// For non-triggered builds that specify `RepoSource`: // // * If the original build built from the tip of a branch, the retried // build @@ -2550,13 +2711,13 @@ type ProjectsBuildsRetryCall struct { // retried // build will use the identical source. // -// For builds that specify StorageSource: +// For builds that specify `StorageSource`: // -// * If the original build pulled source from Cloud Storage without -// specifying -// the generation of the object, the new build will use the current -// object, -// which may be different from the original build source. +// * If the original build pulled source from Google Cloud Storage +// without +// specifying the generation of the object, the new build will use the +// current +// object, which may be different from the original build source. // * If the original build pulled source from Cloud Storage and // specified the // generation of the object, the new build will attempt to use the @@ -2659,7 +2820,7 @@ func (c *ProjectsBuildsRetryCall) Do(opts ...googleapi.CallOption) (*Operation, } return ret, nil // { - // "description": "Creates a new build based on the given build.\n\nThis API creates a new build using the original build request, which may\nor may not result in an identical build.\n\nFor triggered builds:\n\n* Triggered builds resolve to a precise revision, so a retry of a triggered\nbuild will result in a build that uses the same revision.\n\nFor non-triggered builds that specify RepoSource:\n\n* If the original build built from the tip of a branch, the retried build\nwill build from the tip of that branch, which may not be the same revision\nas the original build.\n* If the original build specified a commit sha or revision ID, the retried\nbuild will use the identical source.\n\nFor builds that specify StorageSource:\n\n* If the original build pulled source from Cloud Storage without specifying\nthe generation of the object, the new build will use the current object,\nwhich may be different from the original build source.\n* If the original build pulled source from Cloud Storage and specified the\ngeneration of the object, the new build will attempt to use the same\nobject, which may or may not be available depending on the bucket's\nlifecycle management settings.", + // "description": "Creates a new build based on the specified build.\n\nThis method creates a new build using the original build request, which may\nor may not result in an identical build.\n\nFor triggered builds:\n\n* Triggered builds resolve to a precise revision; therefore a retry of a\ntriggered build will result in a build that uses the same revision.\n\nFor non-triggered builds that specify `RepoSource`:\n\n* If the original build built from the tip of a branch, the retried build\nwill build from the tip of that branch, which may not be the same revision\nas the original build.\n* If the original build specified a commit sha or revision ID, the retried\nbuild will use the identical source.\n\nFor builds that specify `StorageSource`:\n\n* If the original build pulled source from Google Cloud Storage without\nspecifying the generation of the object, the new build will use the current\nobject, which may be different from the original build source.\n* If the original build pulled source from Cloud Storage and specified the\ngeneration of the object, the new build will attempt to use the same\nobject, which may or may not be available depending on the bucket's\nlifecycle management settings.", // "flatPath": "v1/projects/{projectId}/builds/{id}:retry", // "httpMethod": "POST", // "id": "cloudbuild.projects.builds.retry", @@ -2706,7 +2867,7 @@ type ProjectsTriggersCreateCall struct { header_ http.Header } -// Create: Creates a new BuildTrigger. +// Create: Creates a new `BuildTrigger`. // // This API is experimental. func (r *ProjectsTriggersService) Create(projectId string, buildtrigger *BuildTrigger) *ProjectsTriggersCreateCall { @@ -2802,7 +2963,7 @@ func (c *ProjectsTriggersCreateCall) Do(opts ...googleapi.CallOption) (*BuildTri } return ret, nil // { - // "description": "Creates a new BuildTrigger.\n\nThis API is experimental.", + // "description": "Creates a new `BuildTrigger`.\n\nThis API is experimental.", // "flatPath": "v1/projects/{projectId}/triggers", // "httpMethod": "POST", // "id": "cloudbuild.projects.triggers.create", @@ -2842,7 +3003,7 @@ type ProjectsTriggersDeleteCall struct { header_ http.Header } -// Delete: Deletes an BuildTrigger by its project ID and trigger +// Delete: Deletes a `BuildTrigger` by its project ID and trigger // ID. // // This API is experimental. @@ -2935,7 +3096,7 @@ func (c *ProjectsTriggersDeleteCall) Do(opts ...googleapi.CallOption) (*Empty, e } return ret, nil // { - // "description": "Deletes an BuildTrigger by its project ID and trigger ID.\n\nThis API is experimental.", + // "description": "Deletes a `BuildTrigger` by its project ID and trigger ID.\n\nThis API is experimental.", // "flatPath": "v1/projects/{projectId}/triggers/{triggerId}", // "httpMethod": "DELETE", // "id": "cloudbuild.projects.triggers.delete", @@ -2951,7 +3112,7 @@ func (c *ProjectsTriggersDeleteCall) Do(opts ...googleapi.CallOption) (*Empty, e // "type": "string" // }, // "triggerId": { - // "description": "ID of the BuildTrigger to delete.", + // "description": "ID of the `BuildTrigger` to delete.", // "location": "path", // "required": true, // "type": "string" @@ -2980,7 +3141,7 @@ type ProjectsTriggersGetCall struct { header_ http.Header } -// Get: Gets information about a BuildTrigger. +// Get: Returns information about a `BuildTrigger`. // // This API is experimental. func (r *ProjectsTriggersService) Get(projectId string, triggerId string) *ProjectsTriggersGetCall { @@ -3085,7 +3246,7 @@ func (c *ProjectsTriggersGetCall) Do(opts ...googleapi.CallOption) (*BuildTrigge } return ret, nil // { - // "description": "Gets information about a BuildTrigger.\n\nThis API is experimental.", + // "description": "Returns information about a `BuildTrigger`.\n\nThis API is experimental.", // "flatPath": "v1/projects/{projectId}/triggers/{triggerId}", // "httpMethod": "GET", // "id": "cloudbuild.projects.triggers.get", @@ -3101,7 +3262,7 @@ func (c *ProjectsTriggersGetCall) Do(opts ...googleapi.CallOption) (*BuildTrigge // "type": "string" // }, // "triggerId": { - // "description": "ID of the BuildTrigger to get.", + // "description": "ID of the `BuildTrigger` to get.", // "location": "path", // "required": true, // "type": "string" @@ -3129,7 +3290,7 @@ type ProjectsTriggersListCall struct { header_ http.Header } -// List: Lists existing BuildTrigger. +// List: Lists existing `BuildTrigger`s. // // This API is experimental. func (r *ProjectsTriggersService) List(projectId string) *ProjectsTriggersListCall { @@ -3232,7 +3393,7 @@ func (c *ProjectsTriggersListCall) Do(opts ...googleapi.CallOption) (*ListBuildT } return ret, nil // { - // "description": "Lists existing BuildTrigger.\n\nThis API is experimental.", + // "description": "Lists existing `BuildTrigger`s.\n\nThis API is experimental.", // "flatPath": "v1/projects/{projectId}/triggers", // "httpMethod": "GET", // "id": "cloudbuild.projects.triggers.list", @@ -3270,7 +3431,7 @@ type ProjectsTriggersPatchCall struct { header_ http.Header } -// Patch: Updates an BuildTrigger by its project ID and trigger +// Patch: Updates a `BuildTrigger` by its project ID and trigger // ID. // // This API is experimental. @@ -3369,7 +3530,7 @@ func (c *ProjectsTriggersPatchCall) Do(opts ...googleapi.CallOption) (*BuildTrig } return ret, nil // { - // "description": "Updates an BuildTrigger by its project ID and trigger ID.\n\nThis API is experimental.", + // "description": "Updates a `BuildTrigger` by its project ID and trigger ID.\n\nThis API is experimental.", // "flatPath": "v1/projects/{projectId}/triggers/{triggerId}", // "httpMethod": "PATCH", // "id": "cloudbuild.projects.triggers.patch", @@ -3385,7 +3546,7 @@ func (c *ProjectsTriggersPatchCall) Do(opts ...googleapi.CallOption) (*BuildTrig // "type": "string" // }, // "triggerId": { - // "description": "ID of the BuildTrigger to update.", + // "description": "ID of the `BuildTrigger` to update.", // "location": "path", // "required": true, // "type": "string" @@ -3417,7 +3578,7 @@ type ProjectsTriggersRunCall struct { header_ http.Header } -// Run: Runs a BuildTrigger at a particular source revision. +// Run: Runs a `BuildTrigger` at a particular source revision. func (r *ProjectsTriggersService) Run(projectId string, triggerId string, reposource *RepoSource) *ProjectsTriggersRunCall { c := &ProjectsTriggersRunCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.projectId = projectId @@ -3513,7 +3674,7 @@ func (c *ProjectsTriggersRunCall) Do(opts ...googleapi.CallOption) (*Operation, } return ret, nil // { - // "description": "Runs a BuildTrigger at a particular source revision.", + // "description": "Runs a `BuildTrigger` at a particular source revision.", // "flatPath": "v1/projects/{projectId}/triggers/{triggerId}:run", // "httpMethod": "POST", // "id": "cloudbuild.projects.triggers.run", diff --git a/vendor/google.golang.org/api/clouddebugger/v2/clouddebugger-api.json b/vendor/google.golang.org/api/clouddebugger/v2/clouddebugger-api.json index 8cf6d915c..ce194ca57 100644 --- a/vendor/google.golang.org/api/clouddebugger/v2/clouddebugger-api.json +++ b/vendor/google.golang.org/api/clouddebugger/v2/clouddebugger-api.json @@ -1,573 +1,696 @@ { - "resources": { - "debugger": { - "resources": { - "debuggees": { - "methods": { - "list": { - "description": "Lists all the debuggees that the user has access to.", - "response": { - "$ref": "ListDebuggeesResponse" - }, - "parameterOrder": [], - "httpMethod": "GET", - "parameters": { - "includeInactive": { - "location": "query", - "description": "When set to `true`, the result includes all debuggees. Otherwise, the\nresult includes only debuggees that are active.", - "type": "boolean" - }, - "project": { - "location": "query", - "description": "Project number of a Google Cloud project whose debuggees to list.", - "type": "string" - }, - "clientVersion": { - "location": "query", - "description": "The client version making the call.\nSchema: `domain/type/version` (e.g., `google.com/intellij/v1`).", - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud_debugger" - ], - "flatPath": "v2/debugger/debuggees", - "path": "v2/debugger/debuggees", - "id": "clouddebugger.debugger.debuggees.list" - } - }, - "resources": { - "breakpoints": { - "methods": { - "set": { - "httpMethod": "POST", - "parameterOrder": [ - "debuggeeId" - ], - "response": { - "$ref": "SetBreakpointResponse" - }, - "parameters": { - "clientVersion": { - "location": "query", - "description": "The client version making the call.\nSchema: `domain/type/version` (e.g., `google.com/intellij/v1`).", - "type": "string" - }, - "debuggeeId": { - "location": "path", - "description": "ID of the debuggee where the breakpoint is to be set.", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud_debugger" - ], - "flatPath": "v2/debugger/debuggees/{debuggeeId}/breakpoints/set", - "id": "clouddebugger.debugger.debuggees.breakpoints.set", - "path": "v2/debugger/debuggees/{debuggeeId}/breakpoints/set", - "request": { - "$ref": "Breakpoint" - }, - "description": "Sets the breakpoint to the debuggee." - }, - "delete": { - "id": "clouddebugger.debugger.debuggees.breakpoints.delete", - "path": "v2/debugger/debuggees/{debuggeeId}/breakpoints/{breakpointId}", - "description": "Deletes the breakpoint from the debuggee.", - "httpMethod": "DELETE", - "parameterOrder": [ - "debuggeeId", - "breakpointId" - ], - "response": { - "$ref": "Empty" - }, - "parameters": { - "clientVersion": { - "location": "query", - "description": "The client version making the call.\nSchema: `domain/type/version` (e.g., `google.com/intellij/v1`).", - "type": "string" - }, - "breakpointId": { - "description": "ID of the breakpoint to delete.", - "required": true, - "type": "string", - "location": "path" - }, - "debuggeeId": { - "location": "path", - "description": "ID of the debuggee whose breakpoint to delete.", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud_debugger" - ], - "flatPath": "v2/debugger/debuggees/{debuggeeId}/breakpoints/{breakpointId}" - }, - "get": { - "description": "Gets breakpoint information.", - "response": { - "$ref": "GetBreakpointResponse" - }, - "parameterOrder": [ - "debuggeeId", - "breakpointId" - ], - "httpMethod": "GET", - "parameters": { - "clientVersion": { - "description": "The client version making the call.\nSchema: `domain/type/version` (e.g., `google.com/intellij/v1`).", - "type": "string", - "location": "query" - }, - "breakpointId": { - "location": "path", - "description": "ID of the breakpoint to get.", - "required": true, - "type": "string" - }, - "debuggeeId": { - "description": "ID of the debuggee whose breakpoint to get.", - "required": true, - "type": "string", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud_debugger" - ], - "flatPath": "v2/debugger/debuggees/{debuggeeId}/breakpoints/{breakpointId}", - "path": "v2/debugger/debuggees/{debuggeeId}/breakpoints/{breakpointId}", - "id": "clouddebugger.debugger.debuggees.breakpoints.get" - }, - "list": { - "description": "Lists all breakpoints for the debuggee.", - "response": { - "$ref": "ListBreakpointsResponse" - }, - "parameterOrder": [ - "debuggeeId" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud_debugger" - ], - "parameters": { - "waitToken": { - "description": "A wait token that, if specified, blocks the call until the breakpoints\nlist has changed, or a server selected timeout has expired. The value\nshould be set from the last response. The error code\n`google.rpc.Code.ABORTED` (RPC) is returned on wait timeout, which\nshould be called again with the same `wait_token`.", - "type": "string", - "location": "query" - }, - "clientVersion": { - "location": "query", - "description": "The client version making the call.\nSchema: `domain/type/version` (e.g., `google.com/intellij/v1`).", - "type": "string" - }, - "action.value": { - "enum": [ - "CAPTURE", - "LOG" - ], - "description": "Only breakpoints with the specified action will pass the filter.", - "type": "string", - "location": "query" - }, - "includeAllUsers": { - "location": "query", - "description": "When set to `true`, the response includes the list of breakpoints set by\nany user. Otherwise, it includes only breakpoints set by the caller.", - "type": "boolean" - }, - "includeInactive": { - "description": "When set to `true`, the response includes active and inactive\nbreakpoints. Otherwise, it includes only active breakpoints.", - "type": "boolean", - "location": "query" - }, - "stripResults": { - "description": "This field is deprecated. The following fields are always stripped out of\nthe result: `stack_frames`, `evaluated_expressions` and `variable_table`.", - "type": "boolean", - "location": "query" - }, - "debuggeeId": { - "description": "ID of the debuggee whose breakpoints to list.", - "required": true, - "type": "string", - "location": "path" - } - }, - "flatPath": "v2/debugger/debuggees/{debuggeeId}/breakpoints", - "path": "v2/debugger/debuggees/{debuggeeId}/breakpoints", - "id": "clouddebugger.debugger.debuggees.breakpoints.list" - } - } - } - } - } - } - }, - "controller": { - "resources": { - "debuggees": { - "methods": { - "register": { - "response": { - "$ref": "RegisterDebuggeeResponse" - }, - "parameterOrder": [], - "httpMethod": "POST", - "parameters": {}, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud_debugger" - ], - "flatPath": "v2/controller/debuggees/register", - "path": "v2/controller/debuggees/register", - "id": "clouddebugger.controller.debuggees.register", - "request": { - "$ref": "RegisterDebuggeeRequest" - }, - "description": "Registers the debuggee with the controller service.\n\nAll agents attached to the same application must call this method with\nexactly the same request content to get back the same stable `debuggee_id`.\nAgents should call this method again whenever `google.rpc.Code.NOT_FOUND`\nis returned from any controller method.\n\nThis protocol allows the controller service to disable debuggees, recover\nfrom data loss, or change the `debuggee_id` format. Agents must handle\n`debuggee_id` value changing upon re-registration." - } - }, - "resources": { - "breakpoints": { - "methods": { - "list": { - "path": "v2/controller/debuggees/{debuggeeId}/breakpoints", - "id": "clouddebugger.controller.debuggees.breakpoints.list", - "description": "Returns the list of all active breakpoints for the debuggee.\n\nThe breakpoint specification (`location`, `condition`, and `expressions`\nfields) is semantically immutable, although the field values may\nchange. For example, an agent may update the location line number\nto reflect the actual line where the breakpoint was set, but this\ndoesn't change the breakpoint semantics.\n\nThis means that an agent does not need to check if a breakpoint has changed\nwhen it encounters the same breakpoint on a successive call.\nMoreover, an agent should remember the breakpoints that are completed\nuntil the controller removes them from the active list to avoid\nsetting those breakpoints again.", - "response": { - "$ref": "ListActiveBreakpointsResponse" - }, - "parameterOrder": [ - "debuggeeId" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud_debugger" - ], - "parameters": { - "waitToken": { - "location": "query", - "description": "A token that, if specified, blocks the method call until the list\nof active breakpoints has changed, or a server-selected timeout has\nexpired. The value should be set from the `next_wait_token` field in\nthe last response. The initial value should be set to `\"init\"`.", - "type": "string" - }, - "debuggeeId": { - "description": "Identifies the debuggee.", - "required": true, - "type": "string", - "location": "path" - }, - "successOnTimeout": { - "description": "If set to `true` (recommended), returns `google.rpc.Code.OK` status and\nsets the `wait_expired` response field to `true` when the server-selected\ntimeout has expired.\n\nIf set to `false` (deprecated), returns `google.rpc.Code.ABORTED` status\nwhen the server-selected timeout has expired.", - "type": "boolean", - "location": "query" - } - }, - "flatPath": "v2/controller/debuggees/{debuggeeId}/breakpoints" - }, - "update": { - "response": { - "$ref": "UpdateActiveBreakpointResponse" - }, - "parameterOrder": [ - "debuggeeId", - "id" - ], - "httpMethod": "PUT", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud_debugger" - ], - "parameters": { - "id": { - "location": "path", - "description": "Breakpoint identifier, unique in the scope of the debuggee.", - "required": true, - "type": "string" - }, - "debuggeeId": { - "description": "Identifies the debuggee being debugged.", - "required": true, - "type": "string", - "location": "path" - } - }, - "flatPath": "v2/controller/debuggees/{debuggeeId}/breakpoints/{id}", - "path": "v2/controller/debuggees/{debuggeeId}/breakpoints/{id}", - "id": "clouddebugger.controller.debuggees.breakpoints.update", - "description": "Updates the breakpoint state or mutable fields.\nThe entire Breakpoint message must be sent back to the controller service.\n\nUpdates to active breakpoint fields are only allowed if the new value\ndoes not change the breakpoint specification. Updates to the `location`,\n`condition` and `expressions` fields should not alter the breakpoint\nsemantics. These may only make changes such as canonicalizing a value\nor snapping the location to the correct line of code.", - "request": { - "$ref": "UpdateActiveBreakpointRequest" - } - } - } - } - } + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/cloud-platform": { + "description": "View and manage your data across Google Cloud Platform services" + }, + "https://www.googleapis.com/auth/cloud_debugger": { + "description": "Use Stackdriver Debugger" } } } }, + "basePath": "", + "baseUrl": "https://clouddebugger.googleapis.com/", + "batchPath": "batch", + "canonicalName": "Cloud Debugger", + "description": "Examines the call stack and variables of a running application without stopping or slowing it down.\n", + "discoveryVersion": "v1", + "documentationLink": "http://cloud.google.com/debugger", + "icons": { + "x16": "http://www.google.com/images/icons/product/search-16.gif", + "x32": "http://www.google.com/images/icons/product/search-32.gif" + }, + "id": "clouddebugger:v2", + "kind": "discovery#restDescription", + "name": "clouddebugger", + "ownerDomain": "google.com", + "ownerName": "Google", "parameters": { - "fields": { - "location": "query", - "description": "Selector specifying which fields to include in a partial response.", - "type": "string" - }, - "uploadType": { - "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", - "type": "string", - "location": "query" - }, - "callback": { - "description": "JSONP", - "type": "string", - "location": "query" - }, "$.xgafv": { + "description": "V1 error format.", + "enum": [ + "1", + "2" + ], "enumDescriptions": [ "v1 error format", "v2 error format" ], "location": "query", - "enum": [ - "1", - "2" - ], - "description": "V1 error format.", + "type": "string" + }, + "access_token": { + "description": "OAuth access token.", + "location": "query", "type": "string" }, "alt": { + "default": "json", + "description": "Data format for response.", "enum": [ "json", "media", "proto" ], - "type": "string", "enumDescriptions": [ "Responses with Content-Type of application/json", "Media download with context-dependent Content-Type", "Responses with Content-Type of application/x-protobuf" ], "location": "query", - "description": "Data format for response.", - "default": "json" - }, - "key": { - "location": "query", - "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.", "type": "string" }, - "access_token": { - "description": "OAuth access token.", - "type": "string", - "location": "query" - }, - "quotaUser": { - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", - "type": "string", - "location": "query" - }, - "pp": { - "location": "query", - "description": "Pretty-print response.", - "type": "boolean", - "default": "true" - }, "bearer_token": { "description": "OAuth bearer token.", - "type": "string", - "location": "query" + "location": "query", + "type": "string" + }, + "callback": { + "description": "JSONP", + "location": "query", + "type": "string" + }, + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "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.", + "location": "query", + "type": "string" }, "oauth_token": { - "location": "query", "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "pp": { + "default": "true", + "description": "Pretty-print response.", + "location": "query", + "type": "boolean" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", + "location": "query", + "type": "string" + }, + "uploadType": { + "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", + "location": "query", "type": "string" }, "upload_protocol": { "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", - "type": "string", - "location": "query" - }, - "prettyPrint": { "location": "query", - "description": "Returns response with indentations and line breaks.", - "type": "boolean", - "default": "true" + "type": "string" } }, - "version": "v2", - "baseUrl": "https://clouddebugger.googleapis.com/", - "kind": "discovery#restDescription", - "description": "Examines the call stack and variables of a running application without stopping or slowing it down.\n", - "servicePath": "", - "basePath": "", - "id": "clouddebugger:v2", - "documentationLink": "http://cloud.google.com/debugger", - "revision": "20180112", - "discoveryVersion": "v1", - "version_module": true, - "schemas": { - "StatusMessage": { - "properties": { - "isError": { - "description": "Distinguishes errors from informational messages.", - "type": "boolean" - }, - "description": { - "$ref": "FormatMessage", - "description": "Status message text." - }, - "refersTo": { - "enumDescriptions": [ - "Status doesn't refer to any particular input.", - "Status applies to the breakpoint and is related to its location.", - "Status applies to the breakpoint and is related to its condition.", - "Status applies to the breakpoint and is related to its expressions.", - "Status applies to the breakpoint and is related to its age.", - "Status applies to the entire variable.", - "Status applies to variable value (variable name is valid)." - ], - "enum": [ - "UNSPECIFIED", - "BREAKPOINT_SOURCE_LOCATION", - "BREAKPOINT_CONDITION", - "BREAKPOINT_EXPRESSION", - "BREAKPOINT_AGE", - "VARIABLE_NAME", - "VARIABLE_VALUE" - ], - "description": "Reference to which the message applies.", - "type": "string" - } - }, - "id": "StatusMessage", - "description": "Represents a contextual status message.\nThe message can indicate an error or informational status, and refer to\nspecific parts of the containing object.\nFor example, the `Breakpoint.status` field can indicate an error referring\nto the `BREAKPOINT_SOURCE_LOCATION` with the message `Location not found`.", - "type": "object" - }, - "GitSourceContext": { - "description": "A GitSourceContext denotes a particular revision in a third party Git\nrepository (e.g. GitHub).", - "type": "object", - "properties": { - "revisionId": { - "description": "Git commit hash.\nrequired.", - "type": "string" - }, - "url": { - "description": "Git repository URL.", - "type": "string" - } - }, - "id": "GitSourceContext" - }, - "Variable": { - "properties": { - "varTableIndex": { - "description": "Reference to a variable in the shared variable table. More than\none variable can reference the same variable in the table. The\n`var_table_index` field is an index into `variable_table` in Breakpoint.", - "format": "int32", - "type": "integer" - }, - "value": { - "description": "Simple value of the variable.", - "type": "string" - }, - "members": { - "description": "Members contained or pointed to by the variable.", - "type": "array", - "items": { - "$ref": "Variable" + "protocol": "rest", + "resources": { + "controller": { + "resources": { + "debuggees": { + "methods": { + "register": { + "description": "Registers the debuggee with the controller service.\n\nAll agents attached to the same application must call this method with\nexactly the same request content to get back the same stable `debuggee_id`.\nAgents should call this method again whenever `google.rpc.Code.NOT_FOUND`\nis returned from any controller method.\n\nThis protocol allows the controller service to disable debuggees, recover\nfrom data loss, or change the `debuggee_id` format. Agents must handle\n`debuggee_id` value changing upon re-registration.", + "flatPath": "v2/controller/debuggees/register", + "httpMethod": "POST", + "id": "clouddebugger.controller.debuggees.register", + "parameterOrder": [], + "parameters": {}, + "path": "v2/controller/debuggees/register", + "request": { + "$ref": "RegisterDebuggeeRequest" + }, + "response": { + "$ref": "RegisterDebuggeeResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud_debugger" + ] + } + }, + "resources": { + "breakpoints": { + "methods": { + "list": { + "description": "Returns the list of all active breakpoints for the debuggee.\n\nThe breakpoint specification (`location`, `condition`, and `expressions`\nfields) is semantically immutable, although the field values may\nchange. For example, an agent may update the location line number\nto reflect the actual line where the breakpoint was set, but this\ndoesn't change the breakpoint semantics.\n\nThis means that an agent does not need to check if a breakpoint has changed\nwhen it encounters the same breakpoint on a successive call.\nMoreover, an agent should remember the breakpoints that are completed\nuntil the controller removes them from the active list to avoid\nsetting those breakpoints again.", + "flatPath": "v2/controller/debuggees/{debuggeeId}/breakpoints", + "httpMethod": "GET", + "id": "clouddebugger.controller.debuggees.breakpoints.list", + "parameterOrder": [ + "debuggeeId" + ], + "parameters": { + "debuggeeId": { + "description": "Identifies the debuggee.", + "location": "path", + "required": true, + "type": "string" + }, + "successOnTimeout": { + "description": "If set to `true` (recommended), returns `google.rpc.Code.OK` status and\nsets the `wait_expired` response field to `true` when the server-selected\ntimeout has expired.\n\nIf set to `false` (deprecated), returns `google.rpc.Code.ABORTED` status\nwhen the server-selected timeout has expired.", + "location": "query", + "type": "boolean" + }, + "waitToken": { + "description": "A token that, if specified, blocks the method call until the list\nof active breakpoints has changed, or a server-selected timeout has\nexpired. The value should be set from the `next_wait_token` field in\nthe last response. The initial value should be set to `\"init\"`.", + "location": "query", + "type": "string" + } + }, + "path": "v2/controller/debuggees/{debuggeeId}/breakpoints", + "response": { + "$ref": "ListActiveBreakpointsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud_debugger" + ] + }, + "update": { + "description": "Updates the breakpoint state or mutable fields.\nThe entire Breakpoint message must be sent back to the controller service.\n\nUpdates to active breakpoint fields are only allowed if the new value\ndoes not change the breakpoint specification. Updates to the `location`,\n`condition` and `expressions` fields should not alter the breakpoint\nsemantics. These may only make changes such as canonicalizing a value\nor snapping the location to the correct line of code.", + "flatPath": "v2/controller/debuggees/{debuggeeId}/breakpoints/{id}", + "httpMethod": "PUT", + "id": "clouddebugger.controller.debuggees.breakpoints.update", + "parameterOrder": [ + "debuggeeId", + "id" + ], + "parameters": { + "debuggeeId": { + "description": "Identifies the debuggee being debugged.", + "location": "path", + "required": true, + "type": "string" + }, + "id": { + "description": "Breakpoint identifier, unique in the scope of the debuggee.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v2/controller/debuggees/{debuggeeId}/breakpoints/{id}", + "request": { + "$ref": "UpdateActiveBreakpointRequest" + }, + "response": { + "$ref": "UpdateActiveBreakpointResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud_debugger" + ] + } + } + } } - }, - "status": { - "description": "Status associated with the variable. This field will usually stay\nunset. A status of a single variable only applies to that variable or\nexpression. The rest of breakpoint data still remains valid. Variables\nmight be reported in error state even when breakpoint is not in final\nstate.\n\nThe message may refer to variable name with `refers_to` set to\n`VARIABLE_NAME`. Alternatively `refers_to` will be set to `VARIABLE_VALUE`.\nIn either case variable value and members will be unset.\n\nExample of error message applied to name: `Invalid expression syntax`.\n\nExample of information message applied to value: `Not captured`.\n\nExamples of error message applied to value:\n\n* `Malformed string`,\n* `Field f not found in class C`\n* `Null pointer dereference`", - "$ref": "StatusMessage" + } + } + }, + "debugger": { + "resources": { + "debuggees": { + "methods": { + "list": { + "description": "Lists all the debuggees that the user has access to.", + "flatPath": "v2/debugger/debuggees", + "httpMethod": "GET", + "id": "clouddebugger.debugger.debuggees.list", + "parameterOrder": [], + "parameters": { + "clientVersion": { + "description": "The client version making the call.\nSchema: `domain/type/version` (e.g., `google.com/intellij/v1`).", + "location": "query", + "type": "string" + }, + "includeInactive": { + "description": "When set to `true`, the result includes all debuggees. Otherwise, the\nresult includes only debuggees that are active.", + "location": "query", + "type": "boolean" + }, + "project": { + "description": "Project number of a Google Cloud project whose debuggees to list.", + "location": "query", + "type": "string" + } + }, + "path": "v2/debugger/debuggees", + "response": { + "$ref": "ListDebuggeesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud_debugger" + ] + } + }, + "resources": { + "breakpoints": { + "methods": { + "delete": { + "description": "Deletes the breakpoint from the debuggee.", + "flatPath": "v2/debugger/debuggees/{debuggeeId}/breakpoints/{breakpointId}", + "httpMethod": "DELETE", + "id": "clouddebugger.debugger.debuggees.breakpoints.delete", + "parameterOrder": [ + "debuggeeId", + "breakpointId" + ], + "parameters": { + "breakpointId": { + "description": "ID of the breakpoint to delete.", + "location": "path", + "required": true, + "type": "string" + }, + "clientVersion": { + "description": "The client version making the call.\nSchema: `domain/type/version` (e.g., `google.com/intellij/v1`).", + "location": "query", + "type": "string" + }, + "debuggeeId": { + "description": "ID of the debuggee whose breakpoint to delete.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v2/debugger/debuggees/{debuggeeId}/breakpoints/{breakpointId}", + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud_debugger" + ] + }, + "get": { + "description": "Gets breakpoint information.", + "flatPath": "v2/debugger/debuggees/{debuggeeId}/breakpoints/{breakpointId}", + "httpMethod": "GET", + "id": "clouddebugger.debugger.debuggees.breakpoints.get", + "parameterOrder": [ + "debuggeeId", + "breakpointId" + ], + "parameters": { + "breakpointId": { + "description": "ID of the breakpoint to get.", + "location": "path", + "required": true, + "type": "string" + }, + "clientVersion": { + "description": "The client version making the call.\nSchema: `domain/type/version` (e.g., `google.com/intellij/v1`).", + "location": "query", + "type": "string" + }, + "debuggeeId": { + "description": "ID of the debuggee whose breakpoint to get.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v2/debugger/debuggees/{debuggeeId}/breakpoints/{breakpointId}", + "response": { + "$ref": "GetBreakpointResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud_debugger" + ] + }, + "list": { + "description": "Lists all breakpoints for the debuggee.", + "flatPath": "v2/debugger/debuggees/{debuggeeId}/breakpoints", + "httpMethod": "GET", + "id": "clouddebugger.debugger.debuggees.breakpoints.list", + "parameterOrder": [ + "debuggeeId" + ], + "parameters": { + "action.value": { + "description": "Only breakpoints with the specified action will pass the filter.", + "enum": [ + "CAPTURE", + "LOG" + ], + "location": "query", + "type": "string" + }, + "clientVersion": { + "description": "The client version making the call.\nSchema: `domain/type/version` (e.g., `google.com/intellij/v1`).", + "location": "query", + "type": "string" + }, + "debuggeeId": { + "description": "ID of the debuggee whose breakpoints to list.", + "location": "path", + "required": true, + "type": "string" + }, + "includeAllUsers": { + "description": "When set to `true`, the response includes the list of breakpoints set by\nany user. Otherwise, it includes only breakpoints set by the caller.", + "location": "query", + "type": "boolean" + }, + "includeInactive": { + "description": "When set to `true`, the response includes active and inactive\nbreakpoints. Otherwise, it includes only active breakpoints.", + "location": "query", + "type": "boolean" + }, + "stripResults": { + "description": "This field is deprecated. The following fields are always stripped out of\nthe result: `stack_frames`, `evaluated_expressions` and `variable_table`.", + "location": "query", + "type": "boolean" + }, + "waitToken": { + "description": "A wait token that, if specified, blocks the call until the breakpoints\nlist has changed, or a server selected timeout has expired. The value\nshould be set from the last response. The error code\n`google.rpc.Code.ABORTED` (RPC) is returned on wait timeout, which\nshould be called again with the same `wait_token`.", + "location": "query", + "type": "string" + } + }, + "path": "v2/debugger/debuggees/{debuggeeId}/breakpoints", + "response": { + "$ref": "ListBreakpointsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud_debugger" + ] + }, + "set": { + "description": "Sets the breakpoint to the debuggee.", + "flatPath": "v2/debugger/debuggees/{debuggeeId}/breakpoints/set", + "httpMethod": "POST", + "id": "clouddebugger.debugger.debuggees.breakpoints.set", + "parameterOrder": [ + "debuggeeId" + ], + "parameters": { + "clientVersion": { + "description": "The client version making the call.\nSchema: `domain/type/version` (e.g., `google.com/intellij/v1`).", + "location": "query", + "type": "string" + }, + "debuggeeId": { + "description": "ID of the debuggee where the breakpoint is to be set.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v2/debugger/debuggees/{debuggeeId}/breakpoints/set", + "request": { + "$ref": "Breakpoint" + }, + "response": { + "$ref": "SetBreakpointResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud_debugger" + ] + } + } + } + } + } + } + } + }, + "revision": "20180131", + "rootUrl": "https://clouddebugger.googleapis.com/", + "schemas": { + "AliasContext": { + "description": "An alias to a repo revision.", + "id": "AliasContext", + "properties": { + "kind": { + "description": "The alias kind.", + "enum": [ + "ANY", + "FIXED", + "MOVABLE", + "OTHER" + ], + "enumDescriptions": [ + "Do not use.", + "Git tag", + "Git branch", + "OTHER is used to specify non-standard aliases, those not of the kinds\nabove. For example, if a Git repo has a ref named \"refs/foo/bar\", it\nis considered to be of kind OTHER." + ], + "type": "string" }, "name": { - "description": "Name of the variable, if any.", - "type": "string" - }, - "type": { - "description": "Variable type (e.g. `MyClass`). If the variable is split with\n`var_table_index`, `type` goes next to `value`. The interpretation of\na type is agent specific. It is recommended to include the dynamic type\nrather than a static type of an object.", + "description": "The alias name.", "type": "string" } }, - "id": "Variable", - "description": "Represents a variable or an argument possibly of a compound object type.\nNote how the following variables are represented:\n\n1) A simple variable:\n\n int x = 5\n\n { name: \"x\", value: \"5\", type: \"int\" } // Captured variable\n\n2) A compound object:\n\n struct T {\n int m1;\n int m2;\n };\n T x = { 3, 7 };\n\n { // Captured variable\n name: \"x\",\n type: \"T\",\n members { name: \"m1\", value: \"3\", type: \"int\" },\n members { name: \"m2\", value: \"7\", type: \"int\" }\n }\n\n3) A pointer where the pointee was captured:\n\n T x = { 3, 7 };\n T* p = &x;\n\n { // Captured variable\n name: \"p\",\n type: \"T*\",\n value: \"0x00500500\",\n members { name: \"m1\", value: \"3\", type: \"int\" },\n members { name: \"m2\", value: \"7\", type: \"int\" }\n }\n\n4) A pointer where the pointee was not captured:\n\n T* p = new T;\n\n { // Captured variable\n name: \"p\",\n type: \"T*\",\n value: \"0x00400400\"\n status { is_error: true, description { format: \"unavailable\" } }\n }\n\nThe status should describe the reason for the missing value,\nsuch as `\u003coptimized out\u003e`, `\u003cinaccessible\u003e`, `\u003cpointers limit reached\u003e`.\n\nNote that a null pointer should not have members.\n\n5) An unnamed value:\n\n int* p = new int(7);\n\n { // Captured variable\n name: \"p\",\n value: \"0x00500500\",\n type: \"int*\",\n members { value: \"7\", type: \"int\" } }\n\n6) An unnamed pointer where the pointee was not captured:\n\n int* p = new int(7);\n int** pp = &p;\n\n { // Captured variable\n name: \"pp\",\n value: \"0x00500500\",\n type: \"int**\",\n members {\n value: \"0x00400400\",\n type: \"int*\"\n status {\n is_error: true,\n description: { format: \"unavailable\" } }\n }\n }\n }\n\nTo optimize computation, memory and network traffic, variables that\nrepeat in the output multiple times can be stored once in a shared\nvariable table and be referenced using the `var_table_index` field. The\nvariables stored in the shared table are nameless and are essentially\na partition of the complete variable. To reconstruct the complete\nvariable, merge the referencing variable with the referenced variable.\n\nWhen using the shared variable table, the following variables:\n\n T x = { 3, 7 };\n T* p = &x;\n T& r = x;\n\n { name: \"x\", var_table_index: 3, type: \"T\" } // Captured variables\n { name: \"p\", value \"0x00500500\", type=\"T*\", var_table_index: 3 }\n { name: \"r\", type=\"T&\", var_table_index: 3 }\n\n { // Shared variable table entry #3:\n members { name: \"m1\", value: \"3\", type: \"int\" },\n members { name: \"m2\", value: \"7\", type: \"int\" }\n }\n\nNote that the pointer address is stored with the referencing variable\nand not with the referenced variable. This allows the referenced variable\nto be shared between pointers and references.\n\nThe type field is optional. The debugger agent may or may not support it.", "type": "object" }, - "StackFrame": { + "Breakpoint": { + "description": "Represents the breakpoint specification, status and results.", + "id": "Breakpoint", "properties": { - "function": { - "description": "Demangled function name at the call site.", + "action": { + "description": "Action that the agent should perform when the code at the\nbreakpoint location is hit.", + "enum": [ + "CAPTURE", + "LOG" + ], + "enumDescriptions": [ + "Capture stack frame and variables and update the breakpoint.\nThe data is only captured once. After that the breakpoint is set\nin a final state.", + "Log each breakpoint hit. The breakpoint remains active until\ndeleted or expired." + ], "type": "string" }, - "arguments": { - "description": "Set of arguments passed to this function.\nNote that this might not be populated for all stack frames.", - "type": "array", - "items": { - "$ref": "Variable" - } + "condition": { + "description": "Condition that triggers the breakpoint.\nThe condition is a compound boolean expression composed using expressions\nin a programming language at the source location.", + "type": "string" }, - "locals": { - "description": "Set of local variables at the stack frame location.\nNote that this might not be populated for all stack frames.", - "type": "array", + "createTime": { + "description": "Time this breakpoint was created by the server in seconds resolution.", + "format": "google-datetime", + "type": "string" + }, + "evaluatedExpressions": { + "description": "Values of evaluated expressions at breakpoint time.\nThe evaluated expressions appear in exactly the same order they\nare listed in the `expressions` field.\nThe `name` field holds the original expression text, the `value` or\n`members` field holds the result of the evaluated expression.\nIf the expression cannot be evaluated, the `status` inside the `Variable`\nwill indicate an error and contain the error text.", "items": { "$ref": "Variable" - } + }, + "type": "array" + }, + "expressions": { + "description": "List of read-only expressions to evaluate at the breakpoint location.\nThe expressions are composed using expressions in the programming language\nat the source location. If the breakpoint action is `LOG`, the evaluated\nexpressions are included in log statements.", + "items": { + "type": "string" + }, + "type": "array" + }, + "finalTime": { + "description": "Time this breakpoint was finalized as seen by the server in seconds\nresolution.", + "format": "google-datetime", + "type": "string" + }, + "id": { + "description": "Breakpoint identifier, unique in the scope of the debuggee.", + "type": "string" + }, + "isFinalState": { + "description": "When true, indicates that this is a final result and the\nbreakpoint state will not change from here on.", + "type": "boolean" + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "A set of custom breakpoint properties, populated by the agent, to be\ndisplayed to the user.", + "type": "object" }, "location": { "$ref": "SourceLocation", - "description": "Source location of the call site." + "description": "Breakpoint source location." + }, + "logLevel": { + "description": "Indicates the severity of the log. Only relevant when action is `LOG`.", + "enum": [ + "INFO", + "WARNING", + "ERROR" + ], + "enumDescriptions": [ + "Information log message.", + "Warning log message.", + "Error log message." + ], + "type": "string" + }, + "logMessageFormat": { + "description": "Only relevant when action is `LOG`. Defines the message to log when\nthe breakpoint hits. The message may include parameter placeholders `$0`,\n`$1`, etc. These placeholders are replaced with the evaluated value\nof the appropriate expression. Expressions not referenced in\n`log_message_format` are not logged.\n\nExample: `Message received, id = $0, count = $1` with\n`expressions` = `[ message.id, message.count ]`.", + "type": "string" + }, + "stackFrames": { + "description": "The stack at breakpoint time.", + "items": { + "$ref": "StackFrame" + }, + "type": "array" + }, + "status": { + "$ref": "StatusMessage", + "description": "Breakpoint status.\n\nThe status includes an error flag and a human readable message.\nThis field is usually unset. The message can be either\ninformational or an error message. Regardless, clients should always\ndisplay the text message back to the user.\n\nError status indicates complete failure of the breakpoint.\n\nExample (non-final state): `Still loading symbols...`\n\nExamples (final state):\n\n* `Invalid line number` referring to location\n* `Field f not found in class C` referring to condition" + }, + "userEmail": { + "description": "E-mail address of the user that created this breakpoint", + "type": "string" + }, + "variableTable": { + "description": "The `variable_table` exists to aid with computation, memory and network\ntraffic optimization. It enables storing a variable once and reference\nit from multiple variables, including variables stored in the\n`variable_table` itself.\nFor example, the same `this` object, which may appear at many levels of\nthe stack, can have all of its data stored once in this table. The\nstack frame variables then would hold only a reference to it.\n\nThe variable `var_table_index` field is an index into this repeated field.\nThe stored objects are nameless and get their name from the referencing\nvariable. The effective variable is a merge of the referencing variable\nand the referenced variable.", + "items": { + "$ref": "Variable" + }, + "type": "array" } }, - "id": "StackFrame", - "description": "Represents a stack frame context.", "type": "object" }, - "RepoId": { - "description": "A unique identifier for a cloud repo.", - "type": "object", + "CloudRepoSourceContext": { + "description": "A CloudRepoSourceContext denotes a particular revision in a cloud\nrepo (a repo hosted by the Google Cloud Platform).", + "id": "CloudRepoSourceContext", "properties": { - "projectRepoId": { - "$ref": "ProjectRepoId", - "description": "A combination of a project ID and a repo name." + "aliasContext": { + "$ref": "AliasContext", + "description": "An alias, which may be a branch or tag." }, - "uid": { - "description": "A server-assigned, globally unique identifier.", + "aliasName": { + "description": "The name of an alias (branch, tag, etc.).", + "type": "string" + }, + "repoId": { + "$ref": "RepoId", + "description": "The ID of the repo." + }, + "revisionId": { + "description": "A revision ID.", "type": "string" } }, - "id": "RepoId" + "type": "object" }, - "FormatMessage": { - "description": "Represents a message with parameters.", - "type": "object", + "CloudWorkspaceId": { + "description": "A CloudWorkspaceId is a unique identifier for a cloud workspace.\nA cloud workspace is a place associated with a repo where modified files\ncan be stored before they are committed.", + "id": "CloudWorkspaceId", "properties": { - "parameters": { - "description": "Optional parameters to be embedded into the message.", - "type": "array", - "items": { - "type": "string" - } + "name": { + "description": "The unique name of the workspace within the repo. This is the name\nchosen by the client in the Source API's CreateWorkspace method.", + "type": "string" }, - "format": { - "description": "Format template for the message. The `format` uses placeholders `$0`,\n`$1`, etc. to reference parameters. `$$` can be used to denote the `$`\ncharacter.\n\nExamples:\n\n* `Failed to load '$0' which helps debug $1 the first time it\n is loaded. Again, $0 is very important.`\n* `Please pay $$10 to use $0 instead of $1.`", + "repoId": { + "$ref": "RepoId", + "description": "The ID of the repo containing the workspace." + } + }, + "type": "object" + }, + "CloudWorkspaceSourceContext": { + "description": "A CloudWorkspaceSourceContext denotes a workspace at a particular snapshot.", + "id": "CloudWorkspaceSourceContext", + "properties": { + "snapshotId": { + "description": "The ID of the snapshot.\nAn empty snapshot_id refers to the most recent snapshot.", + "type": "string" + }, + "workspaceId": { + "$ref": "CloudWorkspaceId", + "description": "The ID of the workspace." + } + }, + "type": "object" + }, + "Debuggee": { + "description": "Represents the debugged application. The application may include one or more\nreplicated processes executing the same code. Each of these processes is\nattached with a debugger agent, carrying out the debugging commands.\nAgents attached to the same debuggee identify themselves as such by using\nexactly the same Debuggee message value when registering.", + "id": "Debuggee", + "properties": { + "agentVersion": { + "description": "Version ID of the agent.\nSchema: `domain/language-platform/vmajor.minor` (for example\n`google.com/java-gcp/v1.1`).", + "type": "string" + }, + "description": { + "description": "Human readable description of the debuggee.\nIncluding a human-readable project name, environment name and version\ninformation is recommended.", + "type": "string" + }, + "extSourceContexts": { + "description": "References to the locations and revisions of the source code used in the\ndeployed application.", + "items": { + "$ref": "ExtendedSourceContext" + }, + "type": "array" + }, + "id": { + "description": "Unique identifier for the debuggee generated by the controller service.", + "type": "string" + }, + "isDisabled": { + "description": "If set to `true`, indicates that the agent should disable itself and\ndetach from the debuggee.", + "type": "boolean" + }, + "isInactive": { + "description": "If set to `true`, indicates that Controller service does not detect any\nactivity from the debuggee agents and the application is possibly stopped.", + "type": "boolean" + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "A set of custom debuggee properties, populated by the agent, to be\ndisplayed to the user.", + "type": "object" + }, + "project": { + "description": "Project the debuggee is associated with.\nUse project number or id when registering a Google Cloud Platform project.", + "type": "string" + }, + "sourceContexts": { + "description": "References to the locations and revisions of the source code used in the\ndeployed application.", + "items": { + "$ref": "SourceContext" + }, + "type": "array" + }, + "status": { + "$ref": "StatusMessage", + "description": "Human readable message to be displayed to the user about this debuggee.\nAbsence of this field indicates no status. The message can be either\ninformational or an error status." + }, + "uniquifier": { + "description": "Uniquifier to further distiguish the application.\nIt is possible that different applications might have identical values in\nthe debuggee message, thus, incorrectly identified as a single application\nby the Controller service. This field adds salt to further distiguish the\napplication. Agents should consider seeding this field with value that\nidentifies the code, binary, configuration and environment.", "type": "string" } }, - "id": "FormatMessage" + "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" }, "ExtendedSourceContext": { "description": "An ExtendedSourceContext is a SourceContext combined with additional\ndetails describing the context.", - "type": "object", + "id": "ExtendedSourceContext", "properties": { "context": { "$ref": "SourceContext", @@ -581,56 +704,222 @@ "type": "object" } }, - "id": "ExtendedSourceContext" + "type": "object" }, - "AliasContext": { + "FormatMessage": { + "description": "Represents a message with parameters.", + "id": "FormatMessage", "properties": { - "name": { - "description": "The alias name.", + "format": { + "description": "Format template for the message. The `format` uses placeholders `$0`,\n`$1`, etc. to reference parameters. `$$` can be used to denote the `$`\ncharacter.\n\nExamples:\n\n* `Failed to load '$0' which helps debug $1 the first time it\n is loaded. Again, $0 is very important.`\n* `Please pay $$10 to use $0 instead of $1.`", "type": "string" }, - "kind": { - "enumDescriptions": [ - "Do not use.", - "Git tag", - "Git branch", - "OTHER is used to specify non-standard aliases, those not of the kinds\nabove. For example, if a Git repo has a ref named \"refs/foo/bar\", it\nis considered to be of kind OTHER." - ], - "enum": [ - "ANY", - "FIXED", - "MOVABLE", - "OTHER" - ], - "description": "The alias kind.", + "parameters": { + "description": "Optional parameters to be embedded into the message.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "GerritSourceContext": { + "description": "A SourceContext referring to a Gerrit project.", + "id": "GerritSourceContext", + "properties": { + "aliasContext": { + "$ref": "AliasContext", + "description": "An alias, which may be a branch or tag." + }, + "aliasName": { + "description": "The name of an alias (branch, tag, etc.).", + "type": "string" + }, + "gerritProject": { + "description": "The full project name within the host. Projects may be nested, so\n\"project/subproject\" is a valid project name.\nThe \"repo name\" is hostURI/project.", + "type": "string" + }, + "hostUri": { + "description": "The URI of a running Gerrit instance.", + "type": "string" + }, + "revisionId": { + "description": "A revision (commit) ID.", + "type": "string" + } + }, + "type": "object" + }, + "GetBreakpointResponse": { + "description": "Response for getting breakpoint information.", + "id": "GetBreakpointResponse", + "properties": { + "breakpoint": { + "$ref": "Breakpoint", + "description": "Complete breakpoint state.\nThe fields `id` and `location` are guaranteed to be set." + } + }, + "type": "object" + }, + "GitSourceContext": { + "description": "A GitSourceContext denotes a particular revision in a third party Git\nrepository (e.g. GitHub).", + "id": "GitSourceContext", + "properties": { + "revisionId": { + "description": "Git commit hash.\nrequired.", + "type": "string" + }, + "url": { + "description": "Git repository URL.", + "type": "string" + } + }, + "type": "object" + }, + "ListActiveBreakpointsResponse": { + "description": "Response for listing active breakpoints.", + "id": "ListActiveBreakpointsResponse", + "properties": { + "breakpoints": { + "description": "List of all active breakpoints.\nThe fields `id` and `location` are guaranteed to be set on each breakpoint.", + "items": { + "$ref": "Breakpoint" + }, + "type": "array" + }, + "nextWaitToken": { + "description": "A token that can be used in the next method call to block until\nthe list of breakpoints changes.", + "type": "string" + }, + "waitExpired": { + "description": "If set to `true`, indicates that there is no change to the\nlist of active breakpoints and the server-selected timeout has expired.\nThe `breakpoints` field would be empty and should be ignored.", + "type": "boolean" + } + }, + "type": "object" + }, + "ListBreakpointsResponse": { + "description": "Response for listing breakpoints.", + "id": "ListBreakpointsResponse", + "properties": { + "breakpoints": { + "description": "List of breakpoints matching the request.\nThe fields `id` and `location` are guaranteed to be set on each breakpoint.\nThe fields: `stack_frames`, `evaluated_expressions` and `variable_table`\nare cleared on each breakpoint regardless of its status.", + "items": { + "$ref": "Breakpoint" + }, + "type": "array" + }, + "nextWaitToken": { + "description": "A wait token that can be used in the next call to `list` (REST) or\n`ListBreakpoints` (RPC) to block until the list of breakpoints has changes.", "type": "string" } }, - "id": "AliasContext", - "description": "An alias to a repo revision.", "type": "object" }, "ListDebuggeesResponse": { + "description": "Response for listing debuggees.", + "id": "ListDebuggeesResponse", "properties": { "debuggees": { "description": "List of debuggees accessible to the calling user.\nThe fields `debuggee.id` and `description` are guaranteed to be set.\nThe `description` field is a human readable field provided by agents and\ncan be displayed to users.", - "type": "array", "items": { "$ref": "Debuggee" - } + }, + "type": "array" } }, - "id": "ListDebuggeesResponse", - "description": "Response for listing debuggees.", "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 `{}`.", - "type": "object", - "properties": {}, - "id": "Empty" + "ProjectRepoId": { + "description": "Selects a repo using a Google Cloud Platform project ID\n(e.g. winged-cargo-31) and a repo name within that project.", + "id": "ProjectRepoId", + "properties": { + "projectId": { + "description": "The ID of the project.", + "type": "string" + }, + "repoName": { + "description": "The name of the repo. Leave empty for the default repo.", + "type": "string" + } + }, + "type": "object" + }, + "RegisterDebuggeeRequest": { + "description": "Request to register a debuggee.", + "id": "RegisterDebuggeeRequest", + "properties": { + "debuggee": { + "$ref": "Debuggee", + "description": "Debuggee information to register.\nThe fields `project`, `uniquifier`, `description` and `agent_version`\nof the debuggee must be set." + } + }, + "type": "object" + }, + "RegisterDebuggeeResponse": { + "description": "Response for registering a debuggee.", + "id": "RegisterDebuggeeResponse", + "properties": { + "debuggee": { + "$ref": "Debuggee", + "description": "Debuggee resource.\nThe field `id` is guranteed to be set (in addition to the echoed fields).\nIf the field `is_disabled` is set to `true`, the agent should disable\nitself by removing all breakpoints and detaching from the application.\nIt should however continue to poll `RegisterDebuggee` until reenabled." + } + }, + "type": "object" + }, + "RepoId": { + "description": "A unique identifier for a cloud repo.", + "id": "RepoId", + "properties": { + "projectRepoId": { + "$ref": "ProjectRepoId", + "description": "A combination of a project ID and a repo name." + }, + "uid": { + "description": "A server-assigned, globally unique identifier.", + "type": "string" + } + }, + "type": "object" + }, + "SetBreakpointResponse": { + "description": "Response for setting a breakpoint.", + "id": "SetBreakpointResponse", + "properties": { + "breakpoint": { + "$ref": "Breakpoint", + "description": "Breakpoint resource.\nThe field `id` is guaranteed to be set (in addition to the echoed fileds)." + } + }, + "type": "object" + }, + "SourceContext": { + "description": "A SourceContext is a reference to a tree of files. A SourceContext together\nwith a path point to a unique revision of a single file or directory.", + "id": "SourceContext", + "properties": { + "cloudRepo": { + "$ref": "CloudRepoSourceContext", + "description": "A SourceContext referring to a revision in a cloud repo." + }, + "cloudWorkspace": { + "$ref": "CloudWorkspaceSourceContext", + "description": "A SourceContext referring to a snapshot in a cloud workspace." + }, + "gerrit": { + "$ref": "GerritSourceContext", + "description": "A SourceContext referring to a Gerrit project." + }, + "git": { + "$ref": "GitSourceContext", + "description": "A SourceContext referring to any third party Git repo (e.g. GitHub)." + } + }, + "type": "object" }, "SourceLocation": { + "description": "Represents a location in the source code.", + "id": "SourceLocation", "properties": { "line": { "description": "Line inside the file. The first line in the file has the value `1`.", @@ -642,418 +931,129 @@ "type": "string" } }, - "id": "SourceLocation", - "description": "Represents a location in the source code.", "type": "object" }, - "Debuggee": { - "description": "Represents the debugged application. The application may include one or more\nreplicated processes executing the same code. Each of these processes is\nattached with a debugger agent, carrying out the debugging commands.\nAgents attached to the same debuggee identify themselves as such by using\nexactly the same Debuggee message value when registering.", - "type": "object", + "StackFrame": { + "description": "Represents a stack frame context.", + "id": "StackFrame", "properties": { - "id": { - "description": "Unique identifier for the debuggee generated by the controller service.", - "type": "string" - }, - "agentVersion": { - "description": "Version ID of the agent.\nSchema: `domain/language-platform/vmajor.minor` (for example\n`google.com/java-gcp/v1.1`).", - "type": "string" - }, - "isDisabled": { - "description": "If set to `true`, indicates that the agent should disable itself and\ndetach from the debuggee.", - "type": "boolean" - }, - "description": { - "description": "Human readable description of the debuggee.\nIncluding a human-readable project name, environment name and version\ninformation is recommended.", - "type": "string" - }, - "uniquifier": { - "description": "Uniquifier to further distiguish the application.\nIt is possible that different applications might have identical values in\nthe debuggee message, thus, incorrectly identified as a single application\nby the Controller service. This field adds salt to further distiguish the\napplication. Agents should consider seeding this field with value that\nidentifies the code, binary, configuration and environment.", - "type": "string" - }, - "sourceContexts": { - "description": "References to the locations and revisions of the source code used in the\ndeployed application.", - "type": "array", + "arguments": { + "description": "Set of arguments passed to this function.\nNote that this might not be populated for all stack frames.", "items": { - "$ref": "SourceContext" - } - }, - "extSourceContexts": { - "description": "References to the locations and revisions of the source code used in the\ndeployed application.", - "type": "array", - "items": { - "$ref": "ExtendedSourceContext" - } - }, - "labels": { - "additionalProperties": { - "type": "string" + "$ref": "Variable" }, - "description": "A set of custom debuggee properties, populated by the agent, to be\ndisplayed to the user.", - "type": "object" + "type": "array" }, - "status": { - "description": "Human readable message to be displayed to the user about this debuggee.\nAbsence of this field indicates no status. The message can be either\ninformational or an error status.", - "$ref": "StatusMessage" - }, - "isInactive": { - "description": "If set to `true`, indicates that Controller service does not detect any\nactivity from the debuggee agents and the application is possibly stopped.", - "type": "boolean" - }, - "project": { - "description": "Project the debuggee is associated with.\nUse project number or id when registering a Google Cloud Platform project.", - "type": "string" - } - }, - "id": "Debuggee" - }, - "ProjectRepoId": { - "description": "Selects a repo using a Google Cloud Platform project ID\n(e.g. winged-cargo-31) and a repo name within that project.", - "type": "object", - "properties": { - "projectId": { - "description": "The ID of the project.", + "function": { + "description": "Demangled function name at the call site.", "type": "string" }, - "repoName": { - "description": "The name of the repo. Leave empty for the default repo.", - "type": "string" - } - }, - "id": "ProjectRepoId" - }, - "ListActiveBreakpointsResponse": { - "properties": { - "nextWaitToken": { - "description": "A token that can be used in the next method call to block until\nthe list of breakpoints changes.", - "type": "string" - }, - "breakpoints": { - "description": "List of all active breakpoints.\nThe fields `id` and `location` are guaranteed to be set on each breakpoint.", - "type": "array", + "locals": { + "description": "Set of local variables at the stack frame location.\nNote that this might not be populated for all stack frames.", "items": { - "$ref": "Breakpoint" - } - }, - "waitExpired": { - "description": "If set to `true`, indicates that there is no change to the\nlist of active breakpoints and the server-selected timeout has expired.\nThe `breakpoints` field would be empty and should be ignored.", - "type": "boolean" - } - }, - "id": "ListActiveBreakpointsResponse", - "description": "Response for listing active breakpoints.", - "type": "object" - }, - "CloudWorkspaceSourceContext": { - "description": "A CloudWorkspaceSourceContext denotes a workspace at a particular snapshot.", - "type": "object", - "properties": { - "snapshotId": { - "description": "The ID of the snapshot.\nAn empty snapshot_id refers to the most recent snapshot.", - "type": "string" - }, - "workspaceId": { - "$ref": "CloudWorkspaceId", - "description": "The ID of the workspace." - } - }, - "id": "CloudWorkspaceSourceContext" - }, - "UpdateActiveBreakpointResponse": { - "properties": {}, - "id": "UpdateActiveBreakpointResponse", - "description": "Response for updating an active breakpoint.\nThe message is defined to allow future extensions.", - "type": "object" - }, - "GerritSourceContext": { - "description": "A SourceContext referring to a Gerrit project.", - "type": "object", - "properties": { - "hostUri": { - "description": "The URI of a running Gerrit instance.", - "type": "string" - }, - "revisionId": { - "description": "A revision (commit) ID.", - "type": "string" - }, - "aliasName": { - "description": "The name of an alias (branch, tag, etc.).", - "type": "string" - }, - "gerritProject": { - "description": "The full project name within the host. Projects may be nested, so\n\"project/subproject\" is a valid project name.\nThe \"repo name\" is hostURI/project.", - "type": "string" - }, - "aliasContext": { - "description": "An alias, which may be a branch or tag.", - "$ref": "AliasContext" - } - }, - "id": "GerritSourceContext" - }, - "CloudWorkspaceId": { - "description": "A CloudWorkspaceId is a unique identifier for a cloud workspace.\nA cloud workspace is a place associated with a repo where modified files\ncan be stored before they are committed.", - "type": "object", - "properties": { - "name": { - "description": "The unique name of the workspace within the repo. This is the name\nchosen by the client in the Source API's CreateWorkspace method.", - "type": "string" - }, - "repoId": { - "$ref": "RepoId", - "description": "The ID of the repo containing the workspace." - } - }, - "id": "CloudWorkspaceId" - }, - "ListBreakpointsResponse": { - "properties": { - "breakpoints": { - "description": "List of breakpoints matching the request.\nThe fields `id` and `location` are guaranteed to be set on each breakpoint.\nThe fields: `stack_frames`, `evaluated_expressions` and `variable_table`\nare cleared on each breakpoint regardless of its status.", - "type": "array", - "items": { - "$ref": "Breakpoint" - } - }, - "nextWaitToken": { - "description": "A wait token that can be used in the next call to `list` (REST) or\n`ListBreakpoints` (RPC) to block until the list of breakpoints has changes.", - "type": "string" - } - }, - "id": "ListBreakpointsResponse", - "description": "Response for listing breakpoints.", - "type": "object" - }, - "Breakpoint": { - "description": "Represents the breakpoint specification, status and results.", - "type": "object", - "properties": { - "isFinalState": { - "description": "When true, indicates that this is a final result and the\nbreakpoint state will not change from here on.", - "type": "boolean" - }, - "stackFrames": { - "description": "The stack at breakpoint time.", - "type": "array", - "items": { - "$ref": "StackFrame" - } - }, - "condition": { - "description": "Condition that triggers the breakpoint.\nThe condition is a compound boolean expression composed using expressions\nin a programming language at the source location.", - "type": "string" - }, - "status": { - "description": "Breakpoint status.\n\nThe status includes an error flag and a human readable message.\nThis field is usually unset. The message can be either\ninformational or an error message. Regardless, clients should always\ndisplay the text message back to the user.\n\nError status indicates complete failure of the breakpoint.\n\nExample (non-final state): `Still loading symbols...`\n\nExamples (final state):\n\n* `Invalid line number` referring to location\n* `Field f not found in class C` referring to condition", - "$ref": "StatusMessage" - }, - "userEmail": { - "description": "E-mail address of the user that created this breakpoint", - "type": "string" - }, - "action": { - "enumDescriptions": [ - "Capture stack frame and variables and update the breakpoint.\nThe data is only captured once. After that the breakpoint is set\nin a final state.", - "Log each breakpoint hit. The breakpoint remains active until\ndeleted or expired." - ], - "enum": [ - "CAPTURE", - "LOG" - ], - "description": "Action that the agent should perform when the code at the\nbreakpoint location is hit.", - "type": "string" - }, - "logLevel": { - "enumDescriptions": [ - "Information log message.", - "Warning log message.", - "Error log message." - ], - "enum": [ - "INFO", - "WARNING", - "ERROR" - ], - "description": "Indicates the severity of the log. Only relevant when action is `LOG`.", - "type": "string" - }, - "id": { - "description": "Breakpoint identifier, unique in the scope of the debuggee.", - "type": "string" + "$ref": "Variable" + }, + "type": "array" }, "location": { "$ref": "SourceLocation", - "description": "Breakpoint source location." - }, - "finalTime": { - "description": "Time this breakpoint was finalized as seen by the server in seconds\nresolution.", - "format": "google-datetime", - "type": "string" - }, - "variableTable": { - "description": "The `variable_table` exists to aid with computation, memory and network\ntraffic optimization. It enables storing a variable once and reference\nit from multiple variables, including variables stored in the\n`variable_table` itself.\nFor example, the same `this` object, which may appear at many levels of\nthe stack, can have all of its data stored once in this table. The\nstack frame variables then would hold only a reference to it.\n\nThe variable `var_table_index` field is an index into this repeated field.\nThe stored objects are nameless and get their name from the referencing\nvariable. The effective variable is a merge of the referencing variable\nand the referenced variable.", - "type": "array", - "items": { - "$ref": "Variable" - } - }, - "createTime": { - "description": "Time this breakpoint was created by the server in seconds resolution.", - "format": "google-datetime", - "type": "string" - }, - "logMessageFormat": { - "description": "Only relevant when action is `LOG`. Defines the message to log when\nthe breakpoint hits. The message may include parameter placeholders `$0`,\n`$1`, etc. These placeholders are replaced with the evaluated value\nof the appropriate expression. Expressions not referenced in\n`log_message_format` are not logged.\n\nExample: `Message received, id = $0, count = $1` with\n`expressions` = `[ message.id, message.count ]`.", - "type": "string" - }, - "labels": { - "additionalProperties": { - "type": "string" - }, - "description": "A set of custom breakpoint properties, populated by the agent, to be\ndisplayed to the user.", - "type": "object" - }, - "expressions": { - "description": "List of read-only expressions to evaluate at the breakpoint location.\nThe expressions are composed using expressions in the programming language\nat the source location. If the breakpoint action is `LOG`, the evaluated\nexpressions are included in log statements.", - "type": "array", - "items": { - "type": "string" - } - }, - "evaluatedExpressions": { - "description": "Values of evaluated expressions at breakpoint time.\nThe evaluated expressions appear in exactly the same order they\nare listed in the `expressions` field.\nThe `name` field holds the original expression text, the `value` or\n`members` field holds the result of the evaluated expression.\nIf the expression cannot be evaluated, the `status` inside the `Variable`\nwill indicate an error and contain the error text.", - "type": "array", - "items": { - "$ref": "Variable" - } + "description": "Source location of the call site." } }, - "id": "Breakpoint" + "type": "object" + }, + "StatusMessage": { + "description": "Represents a contextual status message.\nThe message can indicate an error or informational status, and refer to\nspecific parts of the containing object.\nFor example, the `Breakpoint.status` field can indicate an error referring\nto the `BREAKPOINT_SOURCE_LOCATION` with the message `Location not found`.", + "id": "StatusMessage", + "properties": { + "description": { + "$ref": "FormatMessage", + "description": "Status message text." + }, + "isError": { + "description": "Distinguishes errors from informational messages.", + "type": "boolean" + }, + "refersTo": { + "description": "Reference to which the message applies.", + "enum": [ + "UNSPECIFIED", + "BREAKPOINT_SOURCE_LOCATION", + "BREAKPOINT_CONDITION", + "BREAKPOINT_EXPRESSION", + "BREAKPOINT_AGE", + "VARIABLE_NAME", + "VARIABLE_VALUE" + ], + "enumDescriptions": [ + "Status doesn't refer to any particular input.", + "Status applies to the breakpoint and is related to its location.", + "Status applies to the breakpoint and is related to its condition.", + "Status applies to the breakpoint and is related to its expressions.", + "Status applies to the breakpoint and is related to its age.", + "Status applies to the entire variable.", + "Status applies to variable value (variable name is valid)." + ], + "type": "string" + } + }, + "type": "object" }, "UpdateActiveBreakpointRequest": { + "description": "Request to update an active breakpoint.", + "id": "UpdateActiveBreakpointRequest", "properties": { "breakpoint": { "$ref": "Breakpoint", "description": "Updated breakpoint information.\nThe field `id` must be set.\nThe agent must echo all Breakpoint specification fields in the update." } }, - "id": "UpdateActiveBreakpointRequest", - "description": "Request to update an active breakpoint.", "type": "object" }, - "SetBreakpointResponse": { - "properties": { - "breakpoint": { - "$ref": "Breakpoint", - "description": "Breakpoint resource.\nThe field `id` is guaranteed to be set (in addition to the echoed fileds)." - } - }, - "id": "SetBreakpointResponse", - "description": "Response for setting a breakpoint.", + "UpdateActiveBreakpointResponse": { + "description": "Response for updating an active breakpoint.\nThe message is defined to allow future extensions.", + "id": "UpdateActiveBreakpointResponse", + "properties": {}, "type": "object" }, - "SourceContext": { - "description": "A SourceContext is a reference to a tree of files. A SourceContext together\nwith a path point to a unique revision of a single file or directory.", - "type": "object", + "Variable": { + "description": "Represents a variable or an argument possibly of a compound object type.\nNote how the following variables are represented:\n\n1) A simple variable:\n\n int x = 5\n\n { name: \"x\", value: \"5\", type: \"int\" } // Captured variable\n\n2) A compound object:\n\n struct T {\n int m1;\n int m2;\n };\n T x = { 3, 7 };\n\n { // Captured variable\n name: \"x\",\n type: \"T\",\n members { name: \"m1\", value: \"3\", type: \"int\" },\n members { name: \"m2\", value: \"7\", type: \"int\" }\n }\n\n3) A pointer where the pointee was captured:\n\n T x = { 3, 7 };\n T* p = \u0026x;\n\n { // Captured variable\n name: \"p\",\n type: \"T*\",\n value: \"0x00500500\",\n members { name: \"m1\", value: \"3\", type: \"int\" },\n members { name: \"m2\", value: \"7\", type: \"int\" }\n }\n\n4) A pointer where the pointee was not captured:\n\n T* p = new T;\n\n { // Captured variable\n name: \"p\",\n type: \"T*\",\n value: \"0x00400400\"\n status { is_error: true, description { format: \"unavailable\" } }\n }\n\nThe status should describe the reason for the missing value,\nsuch as `\u003coptimized out\u003e`, `\u003cinaccessible\u003e`, `\u003cpointers limit reached\u003e`.\n\nNote that a null pointer should not have members.\n\n5) An unnamed value:\n\n int* p = new int(7);\n\n { // Captured variable\n name: \"p\",\n value: \"0x00500500\",\n type: \"int*\",\n members { value: \"7\", type: \"int\" } }\n\n6) An unnamed pointer where the pointee was not captured:\n\n int* p = new int(7);\n int** pp = \u0026p;\n\n { // Captured variable\n name: \"pp\",\n value: \"0x00500500\",\n type: \"int**\",\n members {\n value: \"0x00400400\",\n type: \"int*\"\n status {\n is_error: true,\n description: { format: \"unavailable\" } }\n }\n }\n }\n\nTo optimize computation, memory and network traffic, variables that\nrepeat in the output multiple times can be stored once in a shared\nvariable table and be referenced using the `var_table_index` field. The\nvariables stored in the shared table are nameless and are essentially\na partition of the complete variable. To reconstruct the complete\nvariable, merge the referencing variable with the referenced variable.\n\nWhen using the shared variable table, the following variables:\n\n T x = { 3, 7 };\n T* p = \u0026x;\n T\u0026 r = x;\n\n { name: \"x\", var_table_index: 3, type: \"T\" } // Captured variables\n { name: \"p\", value \"0x00500500\", type=\"T*\", var_table_index: 3 }\n { name: \"r\", type=\"T\u0026\", var_table_index: 3 }\n\n { // Shared variable table entry #3:\n members { name: \"m1\", value: \"3\", type: \"int\" },\n members { name: \"m2\", value: \"7\", type: \"int\" }\n }\n\nNote that the pointer address is stored with the referencing variable\nand not with the referenced variable. This allows the referenced variable\nto be shared between pointers and references.\n\nThe type field is optional. The debugger agent may or may not support it.", + "id": "Variable", "properties": { - "gerrit": { - "$ref": "GerritSourceContext", - "description": "A SourceContext referring to a Gerrit project." + "members": { + "description": "Members contained or pointed to by the variable.", + "items": { + "$ref": "Variable" + }, + "type": "array" }, - "cloudRepo": { - "description": "A SourceContext referring to a revision in a cloud repo.", - "$ref": "CloudRepoSourceContext" - }, - "cloudWorkspace": { - "$ref": "CloudWorkspaceSourceContext", - "description": "A SourceContext referring to a snapshot in a cloud workspace." - }, - "git": { - "$ref": "GitSourceContext", - "description": "A SourceContext referring to any third party Git repo (e.g. GitHub)." - } - }, - "id": "SourceContext" - }, - "CloudRepoSourceContext": { - "properties": { - "aliasContext": { - "$ref": "AliasContext", - "description": "An alias, which may be a branch or tag." - }, - "revisionId": { - "description": "A revision ID.", + "name": { + "description": "Name of the variable, if any.", "type": "string" }, - "aliasName": { - "description": "The name of an alias (branch, tag, etc.).", + "status": { + "$ref": "StatusMessage", + "description": "Status associated with the variable. This field will usually stay\nunset. A status of a single variable only applies to that variable or\nexpression. The rest of breakpoint data still remains valid. Variables\nmight be reported in error state even when breakpoint is not in final\nstate.\n\nThe message may refer to variable name with `refers_to` set to\n`VARIABLE_NAME`. Alternatively `refers_to` will be set to `VARIABLE_VALUE`.\nIn either case variable value and members will be unset.\n\nExample of error message applied to name: `Invalid expression syntax`.\n\nExample of information message applied to value: `Not captured`.\n\nExamples of error message applied to value:\n\n* `Malformed string`,\n* `Field f not found in class C`\n* `Null pointer dereference`" + }, + "type": { + "description": "Variable type (e.g. `MyClass`). If the variable is split with\n`var_table_index`, `type` goes next to `value`. The interpretation of\na type is agent specific. It is recommended to include the dynamic type\nrather than a static type of an object.", "type": "string" }, - "repoId": { - "description": "The ID of the repo.", - "$ref": "RepoId" + "value": { + "description": "Simple value of the variable.", + "type": "string" + }, + "varTableIndex": { + "description": "Reference to a variable in the shared variable table. More than\none variable can reference the same variable in the table. The\n`var_table_index` field is an index into `variable_table` in Breakpoint.", + "format": "int32", + "type": "integer" } }, - "id": "CloudRepoSourceContext", - "description": "A CloudRepoSourceContext denotes a particular revision in a cloud\nrepo (a repo hosted by the Google Cloud Platform).", - "type": "object" - }, - "RegisterDebuggeeRequest": { - "description": "Request to register a debuggee.", - "type": "object", - "properties": { - "debuggee": { - "$ref": "Debuggee", - "description": "Debuggee information to register.\nThe fields `project`, `uniquifier`, `description` and `agent_version`\nof the debuggee must be set." - } - }, - "id": "RegisterDebuggeeRequest" - }, - "RegisterDebuggeeResponse": { - "properties": { - "debuggee": { - "description": "Debuggee resource.\nThe field `id` is guranteed to be set (in addition to the echoed fields).\nIf the field `is_disabled` is set to `true`, the agent should disable\nitself by removing all breakpoints and detaching from the application.\nIt should however continue to poll `RegisterDebuggee` until reenabled.", - "$ref": "Debuggee" - } - }, - "id": "RegisterDebuggeeResponse", - "description": "Response for registering a debuggee.", - "type": "object" - }, - "GetBreakpointResponse": { - "properties": { - "breakpoint": { - "description": "Complete breakpoint state.\nThe fields `id` and `location` are guaranteed to be set.", - "$ref": "Breakpoint" - } - }, - "id": "GetBreakpointResponse", - "description": "Response for getting breakpoint information.", "type": "object" } }, - "icons": { - "x16": "http://www.google.com/images/icons/product/search-16.gif", - "x32": "http://www.google.com/images/icons/product/search-32.gif" - }, - "protocol": "rest", - "canonicalName": "Cloud Debugger", - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/cloud-platform": { - "description": "View and manage your data across Google Cloud Platform services" - }, - "https://www.googleapis.com/auth/cloud_debugger": { - "description": "Use Stackdriver Debugger" - } - } - } - }, - "rootUrl": "https://clouddebugger.googleapis.com/", - "ownerDomain": "google.com", - "name": "clouddebugger", - "batchPath": "batch", + "servicePath": "", "title": "Stackdriver Debugger API", - "ownerName": "Google" -} + "version": "v2", + "version_module": true +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/clouderrorreporting/v1beta1/clouderrorreporting-api.json b/vendor/google.golang.org/api/clouderrorreporting/v1beta1/clouderrorreporting-api.json index d34ed55e7..75e537b88 100644 --- a/vendor/google.golang.org/api/clouderrorreporting/v1beta1/clouderrorreporting-api.json +++ b/vendor/google.golang.org/api/clouderrorreporting/v1beta1/clouderrorreporting-api.json @@ -1,249 +1,512 @@ { - "revision": "20180112", - "documentationLink": "https://cloud.google.com/error-reporting/", - "id": "clouderrorreporting:v1beta1", + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/cloud-platform": { + "description": "View and manage your data across Google Cloud Platform services" + } + } + } + }, + "basePath": "", + "baseUrl": "https://clouderrorreporting.googleapis.com/", + "batchPath": "batch", + "canonicalName": "Clouderrorreporting", + "description": "Groups and counts similar errors from cloud services and applications, reports new errors, and provides access to error groups and their associated errors.\n", "discoveryVersion": "v1", - "version_module": true, + "documentationLink": "https://cloud.google.com/error-reporting/", + "icons": { + "x16": "http://www.google.com/images/icons/product/search-16.gif", + "x32": "http://www.google.com/images/icons/product/search-32.gif" + }, + "id": "clouderrorreporting:v1beta1", + "kind": "discovery#restDescription", + "name": "clouderrorreporting", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "$.xgafv": { + "description": "V1 error format.", + "enum": [ + "1", + "2" + ], + "enumDescriptions": [ + "v1 error format", + "v2 error format" + ], + "location": "query", + "type": "string" + }, + "access_token": { + "description": "OAuth access token.", + "location": "query", + "type": "string" + }, + "alt": { + "default": "json", + "description": "Data format for response.", + "enum": [ + "json", + "media", + "proto" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json", + "Media download with context-dependent Content-Type", + "Responses with Content-Type of application/x-protobuf" + ], + "location": "query", + "type": "string" + }, + "bearer_token": { + "description": "OAuth bearer token.", + "location": "query", + "type": "string" + }, + "callback": { + "description": "JSONP", + "location": "query", + "type": "string" + }, + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "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.", + "location": "query", + "type": "string" + }, + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "pp": { + "default": "true", + "description": "Pretty-print response.", + "location": "query", + "type": "boolean" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", + "location": "query", + "type": "string" + }, + "uploadType": { + "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", + "location": "query", + "type": "string" + }, + "upload_protocol": { + "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", + "location": "query", + "type": "string" + } + }, + "protocol": "rest", + "resources": { + "projects": { + "methods": { + "deleteEvents": { + "description": "Deletes all error events of a given project.", + "flatPath": "v1beta1/projects/{projectsId}/events", + "httpMethod": "DELETE", + "id": "clouderrorreporting.projects.deleteEvents", + "parameterOrder": [ + "projectName" + ], + "parameters": { + "projectName": { + "description": "[Required] The resource name of the Google Cloud Platform project. Written\nas `projects/` plus the\n[Google Cloud Platform project\nID](https://support.google.com/cloud/answer/6158840).\nExample: `projects/my-project-123`.", + "location": "path", + "pattern": "^projects/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+projectName}/events", + "response": { + "$ref": "DeleteEventsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + }, + "resources": { + "events": { + "methods": { + "list": { + "description": "Lists the specified events.", + "flatPath": "v1beta1/projects/{projectsId}/events", + "httpMethod": "GET", + "id": "clouderrorreporting.projects.events.list", + "parameterOrder": [ + "projectName" + ], + "parameters": { + "groupId": { + "description": "[Required] The group for which events shall be returned.", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "[Optional] The maximum number of results to return per response.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "[Optional] A `next_page_token` provided by a previous response.", + "location": "query", + "type": "string" + }, + "projectName": { + "description": "[Required] The resource name of the Google Cloud Platform project. Written\nas `projects/` plus the\n[Google Cloud Platform project\nID](https://support.google.com/cloud/answer/6158840).\nExample: `projects/my-project-123`.", + "location": "path", + "pattern": "^projects/[^/]+$", + "required": true, + "type": "string" + }, + "serviceFilter.resourceType": { + "description": "[Optional] The exact value to match against\n[`ServiceContext.resource_type`](/error-reporting/reference/rest/v1beta1/ServiceContext#FIELDS.resource_type).", + "location": "query", + "type": "string" + }, + "serviceFilter.service": { + "description": "[Optional] The exact value to match against\n[`ServiceContext.service`](/error-reporting/reference/rest/v1beta1/ServiceContext#FIELDS.service).", + "location": "query", + "type": "string" + }, + "serviceFilter.version": { + "description": "[Optional] The exact value to match against\n[`ServiceContext.version`](/error-reporting/reference/rest/v1beta1/ServiceContext#FIELDS.version).", + "location": "query", + "type": "string" + }, + "timeRange.period": { + "description": "Restricts the query to the specified time range.", + "enum": [ + "PERIOD_UNSPECIFIED", + "PERIOD_1_HOUR", + "PERIOD_6_HOURS", + "PERIOD_1_DAY", + "PERIOD_1_WEEK", + "PERIOD_30_DAYS" + ], + "location": "query", + "type": "string" + } + }, + "path": "v1beta1/{+projectName}/events", + "response": { + "$ref": "ListEventsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "report": { + "description": "Report an individual error event.\n\nThis endpoint accepts \u003cstrong\u003eeither\u003c/strong\u003e an OAuth token,\n\u003cstrong\u003eor\u003c/strong\u003e an\n\u003ca href=\"https://support.google.com/cloud/answer/6158862\"\u003eAPI key\u003c/a\u003e\nfor authentication. To use an API key, append it to the URL as the value of\na `key` parameter. For example:\n\u003cpre\u003ePOST https://clouderrorreporting.googleapis.com/v1beta1/projects/example-project/events:report?key=123ABC456\u003c/pre\u003e", + "flatPath": "v1beta1/projects/{projectsId}/events:report", + "httpMethod": "POST", + "id": "clouderrorreporting.projects.events.report", + "parameterOrder": [ + "projectName" + ], + "parameters": { + "projectName": { + "description": "[Required] The resource name of the Google Cloud Platform project. Written\nas `projects/` plus the\n[Google Cloud Platform project ID](https://support.google.com/cloud/answer/6158840).\nExample: `projects/my-project-123`.", + "location": "path", + "pattern": "^projects/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+projectName}/events:report", + "request": { + "$ref": "ReportedErrorEvent" + }, + "response": { + "$ref": "ReportErrorEventResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + }, + "groupStats": { + "methods": { + "list": { + "description": "Lists the specified groups.", + "flatPath": "v1beta1/projects/{projectsId}/groupStats", + "httpMethod": "GET", + "id": "clouderrorreporting.projects.groupStats.list", + "parameterOrder": [ + "projectName" + ], + "parameters": { + "alignment": { + "description": "[Optional] The alignment of the timed counts to be returned.\nDefault is `ALIGNMENT_EQUAL_AT_END`.", + "enum": [ + "ERROR_COUNT_ALIGNMENT_UNSPECIFIED", + "ALIGNMENT_EQUAL_ROUNDED", + "ALIGNMENT_EQUAL_AT_END" + ], + "location": "query", + "type": "string" + }, + "alignmentTime": { + "description": "[Optional] Time where the timed counts shall be aligned if rounded\nalignment is chosen. Default is 00:00 UTC.", + "format": "google-datetime", + "location": "query", + "type": "string" + }, + "groupId": { + "description": "[Optional] List all \u003ccode\u003eErrorGroupStats\u003c/code\u003e with these IDs.", + "location": "query", + "repeated": true, + "type": "string" + }, + "order": { + "description": "[Optional] The sort order in which the results are returned.\nDefault is `COUNT_DESC`.", + "enum": [ + "GROUP_ORDER_UNSPECIFIED", + "COUNT_DESC", + "LAST_SEEN_DESC", + "CREATED_DESC", + "AFFECTED_USERS_DESC" + ], + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "[Optional] The maximum number of results to return per response.\nDefault is 20.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "[Optional] A `next_page_token` provided by a previous response. To view\nadditional results, pass this token along with the identical query\nparameters as the first request.", + "location": "query", + "type": "string" + }, + "projectName": { + "description": "[Required] The resource name of the Google Cloud Platform project. Written\nas \u003ccode\u003eprojects/\u003c/code\u003e plus the\n\u003ca href=\"https://support.google.com/cloud/answer/6158840\"\u003eGoogle Cloud\nPlatform project ID\u003c/a\u003e.\n\nExample: \u003ccode\u003eprojects/my-project-123\u003c/code\u003e.", + "location": "path", + "pattern": "^projects/[^/]+$", + "required": true, + "type": "string" + }, + "serviceFilter.resourceType": { + "description": "[Optional] The exact value to match against\n[`ServiceContext.resource_type`](/error-reporting/reference/rest/v1beta1/ServiceContext#FIELDS.resource_type).", + "location": "query", + "type": "string" + }, + "serviceFilter.service": { + "description": "[Optional] The exact value to match against\n[`ServiceContext.service`](/error-reporting/reference/rest/v1beta1/ServiceContext#FIELDS.service).", + "location": "query", + "type": "string" + }, + "serviceFilter.version": { + "description": "[Optional] The exact value to match against\n[`ServiceContext.version`](/error-reporting/reference/rest/v1beta1/ServiceContext#FIELDS.version).", + "location": "query", + "type": "string" + }, + "timeRange.period": { + "description": "Restricts the query to the specified time range.", + "enum": [ + "PERIOD_UNSPECIFIED", + "PERIOD_1_HOUR", + "PERIOD_6_HOURS", + "PERIOD_1_DAY", + "PERIOD_1_WEEK", + "PERIOD_30_DAYS" + ], + "location": "query", + "type": "string" + }, + "timedCountDuration": { + "description": "[Optional] The preferred duration for a single returned `TimedCount`.\nIf not set, no timed counts are returned.", + "format": "google-duration", + "location": "query", + "type": "string" + } + }, + "path": "v1beta1/{+projectName}/groupStats", + "response": { + "$ref": "ListGroupStatsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + }, + "groups": { + "methods": { + "get": { + "description": "Get the specified group.", + "flatPath": "v1beta1/projects/{projectsId}/groups/{groupsId}", + "httpMethod": "GET", + "id": "clouderrorreporting.projects.groups.get", + "parameterOrder": [ + "groupName" + ], + "parameters": { + "groupName": { + "description": "[Required] The group resource name. Written as\n\u003ccode\u003eprojects/\u003cvar\u003eprojectID\u003c/var\u003e/groups/\u003cvar\u003egroup_name\u003c/var\u003e\u003c/code\u003e.\nCall\n\u003ca href=\"/error-reporting/reference/rest/v1beta1/projects.groupStats/list\"\u003e\n\u003ccode\u003egroupStats.list\u003c/code\u003e\u003c/a\u003e to return a list of groups belonging to\nthis project.\n\nExample: \u003ccode\u003eprojects/my-project-123/groups/my-group\u003c/code\u003e", + "location": "path", + "pattern": "^projects/[^/]+/groups/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+groupName}", + "response": { + "$ref": "ErrorGroup" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "update": { + "description": "Replace the data for the specified group.\nFails if the group does not exist.", + "flatPath": "v1beta1/projects/{projectsId}/groups/{groupsId}", + "httpMethod": "PUT", + "id": "clouderrorreporting.projects.groups.update", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The group resource name.\nExample: \u003ccode\u003eprojects/my-project-123/groups/my-groupid\u003c/code\u003e", + "location": "path", + "pattern": "^projects/[^/]+/groups/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "request": { + "$ref": "ErrorGroup" + }, + "response": { + "$ref": "ErrorGroup" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + } + } + } + }, + "revision": "20180126", + "rootUrl": "https://clouderrorreporting.googleapis.com/", "schemas": { - "ErrorGroup": { - "description": "Description of a group of similar error events.", - "type": "object", - "properties": { - "groupId": { - "description": "Group IDs are unique for a given project. If the same kind of error\noccurs in different service contexts, it will receive the same group ID.", - "type": "string" - }, - "trackingIssues": { - "description": "Associated tracking issues.", - "type": "array", - "items": { - "$ref": "TrackingIssue" - } - }, - "name": { - "description": "The group resource name.\nExample: \u003ccode\u003eprojects/my-project-123/groups/my-groupid\u003c/code\u003e", - "type": "string" - } - }, - "id": "ErrorGroup" - }, - "ServiceContext": { - "description": "Describes a running service that sends errors.\nIts version changes over time and multiple versions can run in parallel.", - "type": "object", - "properties": { - "service": { - "description": "An identifier of the service, such as the name of the\nexecutable, job, or Google App Engine service name. This field is expected\nto have a low number of values that are relatively stable over time, as\nopposed to `version`, which can be changed whenever new code is deployed.\n\nContains the service name for error reports extracted from Google\nApp Engine logs or `default` if the App Engine default service is used.", - "type": "string" - }, - "resourceType": { - "description": "Type of the MonitoredResource. List of possible values:\nhttps://cloud.google.com/monitoring/api/resources\n\nValue is set automatically for incoming errors and must not be set when\nreporting errors.", - "type": "string" - }, - "version": { - "description": "Represents the source code version that the developer provided,\nwhich could represent a version label or a Git SHA-1 hash, for example.\nFor App Engine standard environment, the version is set to the version of\nthe app.", - "type": "string" - } - }, - "id": "ServiceContext" - }, - "SourceLocation": { - "description": "Indicates a location in the source code of the service for which errors are\nreported. `functionName` must be provided by the application when reporting\nan error, unless the error report contains a `message` with a supported\nexception stack trace. All fields are optional for the later case.", - "type": "object", - "properties": { - "functionName": { - "description": "Human-readable name of a function or method.\nThe value can include optional context like the class or package name.\nFor example, `my.package.MyClass.method` in case of Java.", - "type": "string" - }, - "filePath": { - "description": "The source code filename, which can include a truncated relative\npath, or a full path from a production machine.", - "type": "string" - }, - "lineNumber": { - "description": "1-based. 0 indicates that the line number is unknown.", - "format": "int32", - "type": "integer" - } - }, - "id": "SourceLocation" - }, - "ReportErrorEventResponse": { - "description": "Response for reporting an individual error event.\nData may be added to this message in the future.", - "type": "object", - "properties": {}, - "id": "ReportErrorEventResponse" - }, - "HttpRequestContext": { - "description": "HTTP request data that is related to a reported error.\nThis data should be provided by the application when reporting an error,\nunless the\nerror report has been generated automatically from Google App Engine logs.", - "type": "object", - "properties": { - "responseStatusCode": { - "description": "The HTTP response status code for the request.", - "format": "int32", - "type": "integer" - }, - "method": { - "description": "The type of HTTP request, such as `GET`, `POST`, etc.", - "type": "string" - }, - "remoteIp": { - "description": "The IP address from which the request originated.\nThis can be IPv4, IPv6, or a token which is derived from the\nIP address, depending on the data that has been provided\nin the error report.", - "type": "string" - }, - "referrer": { - "description": "The referrer information that is provided with the request.", - "type": "string" - }, - "userAgent": { - "description": "The user agent information that is provided with the request.", - "type": "string" - }, - "url": { - "description": "The URL of the request.", - "type": "string" - } - }, - "id": "HttpRequestContext" - }, - "ListGroupStatsResponse": { - "description": "Contains a set of requested error group stats.", - "type": "object", - "properties": { - "nextPageToken": { - "description": "If non-empty, more results are available.\nPass this token, along with the same query parameters as the first\nrequest, to view the next page of results.", - "type": "string" - }, - "timeRangeBegin": { - "description": "The timestamp specifies the start time to which the request was restricted.\nThe start time is set based on the requested time range. It may be adjusted\nto a later time if a project has exceeded the storage quota and older data\nhas been deleted.", - "format": "google-datetime", - "type": "string" - }, - "errorGroupStats": { - "description": "The error group stats which match the given request.", - "type": "array", - "items": { - "$ref": "ErrorGroupStats" - } - } - }, - "id": "ListGroupStatsResponse" - }, - "SourceReference": { - "description": "A reference to a particular snapshot of the source tree used to build and\ndeploy an application.", - "type": "object", - "properties": { - "revisionId": { - "description": "The canonical and persistent identifier of the deployed revision.\nExample (git): \"0035781c50ec7aa23385dc841529ce8a4b70db1b\"", - "type": "string" - }, - "repository": { - "description": "Optional. A URI string identifying the repository.\nExample: \"https://github.com/GoogleCloudPlatform/kubernetes.git\"", - "type": "string" - } - }, - "id": "SourceReference" - }, "DeleteEventsResponse": { "description": "Response message for deleting error events.", - "type": "object", + "id": "DeleteEventsResponse", "properties": {}, - "id": "DeleteEventsResponse" - }, - "ErrorEvent": { - "description": "An error event which is returned by the Error Reporting system.", - "type": "object", - "properties": { - "serviceContext": { - "description": "The `ServiceContext` for which this error was reported.", - "$ref": "ServiceContext" - }, - "eventTime": { - "description": "Time when the event occurred as provided in the error report.\nIf the report did not contain a timestamp, the time the error was received\nby the Error Reporting system is used.", - "format": "google-datetime", - "type": "string" - }, - "context": { - "$ref": "ErrorContext", - "description": "Data about the context in which the error occurred." - }, - "message": { - "description": "The stack trace that was reported or logged by the service.", - "type": "string" - } - }, - "id": "ErrorEvent" - }, - "ReportedErrorEvent": { - "description": "An error event which is reported to the Error Reporting system.", - "type": "object", - "properties": { - "serviceContext": { - "description": "[Required] The service context in which this error has occurred.", - "$ref": "ServiceContext" - }, - "eventTime": { - "description": "[Optional] Time when the event occurred.\nIf not provided, the time when the event was received by the\nError Reporting system will be used.", - "format": "google-datetime", - "type": "string" - }, - "context": { - "$ref": "ErrorContext", - "description": "[Optional] A description of the context in which the error occurred." - }, - "message": { - "description": "[Required] The error message.\nIf no `context.reportLocation` is provided, the message must contain a\nheader (typically consisting of the exception type name and an error\nmessage) and an exception stack trace in one of the supported programming\nlanguages and formats.\nSupported languages are Java, Python, JavaScript, Ruby, C#, PHP, and Go.\nSupported stack trace formats are:\n\n* **Java**: Must be the return value of [`Throwable.printStackTrace()`](https://docs.oracle.com/javase/7/docs/api/java/lang/Throwable.html#printStackTrace%28%29).\n* **Python**: Must be the return value of [`traceback.format_exc()`](https://docs.python.org/2/library/traceback.html#traceback.format_exc).\n* **JavaScript**: Must be the value of [`error.stack`](https://github.com/v8/v8/wiki/Stack-Trace-API)\nas returned by V8.\n* **Ruby**: Must contain frames returned by [`Exception.backtrace`](https://ruby-doc.org/core-2.2.0/Exception.html#method-i-backtrace).\n* **C#**: Must be the return value of [`Exception.ToString()`](https://msdn.microsoft.com/en-us/library/system.exception.tostring.aspx).\n* **PHP**: Must start with `PHP (Notice|Parse error|Fatal error|Warning)`\nand contain the result of [`(string)$exception`](http://php.net/manual/en/exception.tostring.php).\n* **Go**: Must be the return value of [`runtime.Stack()`](https://golang.org/pkg/runtime/debug/#Stack).", - "type": "string" - } - }, - "id": "ReportedErrorEvent" + "type": "object" }, "ErrorContext": { "description": "A description of the context in which an error occurred.\nThis data should be provided by the application when reporting an error,\nunless the\nerror report has been generated automatically from Google App Engine logs.", - "type": "object", + "id": "ErrorContext", "properties": { + "httpRequest": { + "$ref": "HttpRequestContext", + "description": "The HTTP request which was processed when the error was\ntriggered." + }, "reportLocation": { "$ref": "SourceLocation", "description": "The location in the source code where the decision was made to\nreport the error, usually the place where it was logged.\nFor a logged exception this would be the source line where the\nexception is logged, usually close to the place where it was\ncaught." }, "sourceReferences": { "description": "Source code that was used to build the executable which has\ncaused the given error message.", - "type": "array", "items": { "$ref": "SourceReference" - } - }, - "httpRequest": { - "$ref": "HttpRequestContext", - "description": "The HTTP request which was processed when the error was\ntriggered." + }, + "type": "array" }, "user": { "description": "The user who caused or was affected by the crash.\nThis can be a user ID, an email address, or an arbitrary token that\nuniquely identifies the user.\nWhen sending an error report, leave this field empty if the user was not\nlogged in. In this case the\nError Reporting system will use other data, such as remote IP address, to\ndistinguish affected users. See `affected_users_count` in\n`ErrorGroupStats`.", "type": "string" } }, - "id": "ErrorContext" + "type": "object" }, - "TrackingIssue": { - "description": "Information related to tracking the progress on resolving the error.", - "type": "object", + "ErrorEvent": { + "description": "An error event which is returned by the Error Reporting system.", + "id": "ErrorEvent", "properties": { - "url": { - "description": "A URL pointing to a related entry in an issue tracking system.\nExample: https://github.com/user/project/issues/4", + "context": { + "$ref": "ErrorContext", + "description": "Data about the context in which the error occurred." + }, + "eventTime": { + "description": "Time when the event occurred as provided in the error report.\nIf the report did not contain a timestamp, the time the error was received\nby the Error Reporting system is used.", + "format": "google-datetime", "type": "string" + }, + "message": { + "description": "The stack trace that was reported or logged by the service.", + "type": "string" + }, + "serviceContext": { + "$ref": "ServiceContext", + "description": "The `ServiceContext` for which this error was reported." } }, - "id": "TrackingIssue" + "type": "object" + }, + "ErrorGroup": { + "description": "Description of a group of similar error events.", + "id": "ErrorGroup", + "properties": { + "groupId": { + "description": "Group IDs are unique for a given project. If the same kind of error\noccurs in different service contexts, it will receive the same group ID.", + "type": "string" + }, + "name": { + "description": "The group resource name.\nExample: \u003ccode\u003eprojects/my-project-123/groups/my-groupid\u003c/code\u003e", + "type": "string" + }, + "trackingIssues": { + "description": "Associated tracking issues.", + "items": { + "$ref": "TrackingIssue" + }, + "type": "array" + } + }, + "type": "object" }, "ErrorGroupStats": { "description": "Data extracted for a specific group based on certain filter criteria,\nsuch as a given time period and/or service filter.", - "type": "object", + "id": "ErrorGroupStats", "properties": { - "group": { - "description": "Group data that is independent of the filter criteria.", - "$ref": "ErrorGroup" + "affectedServices": { + "description": "Service contexts with a non-zero error count for the given filter\ncriteria. This list can be truncated if multiple services are affected.\nRefer to `num_affected_services` for the total count.", + "items": { + "$ref": "ServiceContext" + }, + "type": "array" }, - "firstSeenTime": { - "description": "Approximate first occurrence that was ever seen for this group\nand which matches the given filter criteria, ignoring the\ntime_range that was specified in the request.", - "format": "google-datetime", + "affectedUsersCount": { + "description": "Approximate number of affected users in the given group that\nmatch the filter criteria.\nUsers are distinguished by data in the `ErrorContext` of the\nindividual error events, such as their login name or their remote\nIP address in case of HTTP requests.\nThe number of affected users can be zero even if the number of\nerrors is non-zero if no data was provided from which the\naffected user could be deduced.\nUsers are counted based on data in the request\ncontext that was provided in the error report. If more users are\nimplicitly affected, such as due to a crash of the whole service,\nthis is not reflected here.", + "format": "int64", "type": "string" }, "count": { @@ -251,23 +514,20 @@ "format": "int64", "type": "string" }, - "affectedUsersCount": { - "description": "Approximate number of affected users in the given group that\nmatch the filter criteria.\nUsers are distinguished by data in the `ErrorContext` of the\nindividual error events, such as their login name or their remote\nIP address in case of HTTP requests.\nThe number of affected users can be zero even if the number of\nerrors is non-zero if no data was provided from which the\naffected user could be deduced.\nUsers are counted based on data in the request\ncontext that was provided in the error report. If more users are\nimplicitly affected, such as due to a crash of the whole service,\nthis is not reflected here.", - "format": "int64", + "firstSeenTime": { + "description": "Approximate first occurrence that was ever seen for this group\nand which matches the given filter criteria, ignoring the\ntime_range that was specified in the request.", + "format": "google-datetime", "type": "string" }, + "group": { + "$ref": "ErrorGroup", + "description": "Group data that is independent of the filter criteria." + }, "lastSeenTime": { "description": "Approximate last occurrence that was ever seen for this group and\nwhich matches the given filter criteria, ignoring the time_range\nthat was specified in the request.", "format": "google-datetime", "type": "string" }, - "affectedServices": { - "description": "Service contexts with a non-zero error count for the given filter\ncriteria. This list can be truncated if multiple services are affected.\nRefer to `num_affected_services` for the total count.", - "type": "array", - "items": { - "$ref": "ServiceContext" - } - }, "numAffectedServices": { "description": "The total number of services with a non-zero error count for the given\nfilter criteria.", "format": "int32", @@ -279,472 +539,212 @@ }, "timedCounts": { "description": "Approximate number of occurrences over time.\nTimed counts returned by ListGroups are guaranteed to be:\n\n- Inside the requested time interval\n- Non-overlapping, and\n- Ordered by ascending time.", - "type": "array", "items": { "$ref": "TimedCount" - } + }, + "type": "array" } }, - "id": "ErrorGroupStats" + "type": "object" + }, + "HttpRequestContext": { + "description": "HTTP request data that is related to a reported error.\nThis data should be provided by the application when reporting an error,\nunless the\nerror report has been generated automatically from Google App Engine logs.", + "id": "HttpRequestContext", + "properties": { + "method": { + "description": "The type of HTTP request, such as `GET`, `POST`, etc.", + "type": "string" + }, + "referrer": { + "description": "The referrer information that is provided with the request.", + "type": "string" + }, + "remoteIp": { + "description": "The IP address from which the request originated.\nThis can be IPv4, IPv6, or a token which is derived from the\nIP address, depending on the data that has been provided\nin the error report.", + "type": "string" + }, + "responseStatusCode": { + "description": "The HTTP response status code for the request.", + "format": "int32", + "type": "integer" + }, + "url": { + "description": "The URL of the request.", + "type": "string" + }, + "userAgent": { + "description": "The user agent information that is provided with the request.", + "type": "string" + } + }, + "type": "object" }, "ListEventsResponse": { "description": "Contains a set of requested error events.", - "type": "object", + "id": "ListEventsResponse", "properties": { - "timeRangeBegin": { - "description": "The timestamp specifies the start time to which the request was restricted.", - "format": "google-datetime", - "type": "string" - }, "errorEvents": { "description": "The error events which match the given request.", - "type": "array", "items": { "$ref": "ErrorEvent" - } + }, + "type": "array" }, "nextPageToken": { "description": "If non-empty, more results are available.\nPass this token, along with the same query parameters as the first\nrequest, to view the next page of results.", "type": "string" + }, + "timeRangeBegin": { + "description": "The timestamp specifies the start time to which the request was restricted.", + "format": "google-datetime", + "type": "string" } }, - "id": "ListEventsResponse" + "type": "object" }, - "TimedCount": { - "description": "The number of errors in a given time period.\nAll numbers are approximate since the error events are sampled\nbefore counting them.", - "type": "object", + "ListGroupStatsResponse": { + "description": "Contains a set of requested error group stats.", + "id": "ListGroupStatsResponse", "properties": { - "endTime": { - "description": "End of the time period to which `count` refers (excluded).", + "errorGroupStats": { + "description": "The error group stats which match the given request.", + "items": { + "$ref": "ErrorGroupStats" + }, + "type": "array" + }, + "nextPageToken": { + "description": "If non-empty, more results are available.\nPass this token, along with the same query parameters as the first\nrequest, to view the next page of results.", + "type": "string" + }, + "timeRangeBegin": { + "description": "The timestamp specifies the start time to which the request was restricted.\nThe start time is set based on the requested time range. It may be adjusted\nto a later time if a project has exceeded the storage quota and older data\nhas been deleted.", + "format": "google-datetime", + "type": "string" + } + }, + "type": "object" + }, + "ReportErrorEventResponse": { + "description": "Response for reporting an individual error event.\nData may be added to this message in the future.", + "id": "ReportErrorEventResponse", + "properties": {}, + "type": "object" + }, + "ReportedErrorEvent": { + "description": "An error event which is reported to the Error Reporting system.", + "id": "ReportedErrorEvent", + "properties": { + "context": { + "$ref": "ErrorContext", + "description": "[Optional] A description of the context in which the error occurred." + }, + "eventTime": { + "description": "[Optional] Time when the event occurred.\nIf not provided, the time when the event was received by the\nError Reporting system will be used.", "format": "google-datetime", "type": "string" }, + "message": { + "description": "[Required] The error message.\nIf no `context.reportLocation` is provided, the message must contain a\nheader (typically consisting of the exception type name and an error\nmessage) and an exception stack trace in one of the supported programming\nlanguages and formats.\nSupported languages are Java, Python, JavaScript, Ruby, C#, PHP, and Go.\nSupported stack trace formats are:\n\n* **Java**: Must be the return value of [`Throwable.printStackTrace()`](https://docs.oracle.com/javase/7/docs/api/java/lang/Throwable.html#printStackTrace%28%29).\n* **Python**: Must be the return value of [`traceback.format_exc()`](https://docs.python.org/2/library/traceback.html#traceback.format_exc).\n* **JavaScript**: Must be the value of [`error.stack`](https://github.com/v8/v8/wiki/Stack-Trace-API)\nas returned by V8.\n* **Ruby**: Must contain frames returned by [`Exception.backtrace`](https://ruby-doc.org/core-2.2.0/Exception.html#method-i-backtrace).\n* **C#**: Must be the return value of [`Exception.ToString()`](https://msdn.microsoft.com/en-us/library/system.exception.tostring.aspx).\n* **PHP**: Must start with `PHP (Notice|Parse error|Fatal error|Warning)`\nand contain the result of [`(string)$exception`](http://php.net/manual/en/exception.tostring.php).\n* **Go**: Must be the return value of [`runtime.Stack()`](https://golang.org/pkg/runtime/debug/#Stack).", + "type": "string" + }, + "serviceContext": { + "$ref": "ServiceContext", + "description": "[Required] The service context in which this error has occurred." + } + }, + "type": "object" + }, + "ServiceContext": { + "description": "Describes a running service that sends errors.\nIts version changes over time and multiple versions can run in parallel.", + "id": "ServiceContext", + "properties": { + "resourceType": { + "description": "Type of the MonitoredResource. List of possible values:\nhttps://cloud.google.com/monitoring/api/resources\n\nValue is set automatically for incoming errors and must not be set when\nreporting errors.", + "type": "string" + }, + "service": { + "description": "An identifier of the service, such as the name of the\nexecutable, job, or Google App Engine service name. This field is expected\nto have a low number of values that are relatively stable over time, as\nopposed to `version`, which can be changed whenever new code is deployed.\n\nContains the service name for error reports extracted from Google\nApp Engine logs or `default` if the App Engine default service is used.", + "type": "string" + }, + "version": { + "description": "Represents the source code version that the developer provided,\nwhich could represent a version label or a Git SHA-1 hash, for example.\nFor App Engine standard environment, the version is set to the version of\nthe app.", + "type": "string" + } + }, + "type": "object" + }, + "SourceLocation": { + "description": "Indicates a location in the source code of the service for which errors are\nreported. `functionName` must be provided by the application when reporting\nan error, unless the error report contains a `message` with a supported\nexception stack trace. All fields are optional for the later case.", + "id": "SourceLocation", + "properties": { + "filePath": { + "description": "The source code filename, which can include a truncated relative\npath, or a full path from a production machine.", + "type": "string" + }, + "functionName": { + "description": "Human-readable name of a function or method.\nThe value can include optional context like the class or package name.\nFor example, `my.package.MyClass.method` in case of Java.", + "type": "string" + }, + "lineNumber": { + "description": "1-based. 0 indicates that the line number is unknown.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "SourceReference": { + "description": "A reference to a particular snapshot of the source tree used to build and\ndeploy an application.", + "id": "SourceReference", + "properties": { + "repository": { + "description": "Optional. A URI string identifying the repository.\nExample: \"https://github.com/GoogleCloudPlatform/kubernetes.git\"", + "type": "string" + }, + "revisionId": { + "description": "The canonical and persistent identifier of the deployed revision.\nExample (git): \"0035781c50ec7aa23385dc841529ce8a4b70db1b\"", + "type": "string" + } + }, + "type": "object" + }, + "TimedCount": { + "description": "The number of errors in a given time period.\nAll numbers are approximate since the error events are sampled\nbefore counting them.", + "id": "TimedCount", + "properties": { "count": { "description": "Approximate number of occurrences in the given time period.", "format": "int64", "type": "string" }, + "endTime": { + "description": "End of the time period to which `count` refers (excluded).", + "format": "google-datetime", + "type": "string" + }, "startTime": { "description": "Start of the time period to which `count` refers (included).", "format": "google-datetime", "type": "string" } }, - "id": "TimedCount" - } - }, - "protocol": "rest", - "icons": { - "x32": "http://www.google.com/images/icons/product/search-32.gif", - "x16": "http://www.google.com/images/icons/product/search-16.gif" - }, - "canonicalName": "Clouderrorreporting", - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/cloud-platform": { - "description": "View and manage your data across Google Cloud Platform services" - } - } - } - }, - "rootUrl": "https://clouderrorreporting.googleapis.com/", - "ownerDomain": "google.com", - "name": "clouderrorreporting", - "batchPath": "batch", - "title": "Stackdriver Error Reporting API", - "ownerName": "Google", - "resources": { - "projects": { - "methods": { - "deleteEvents": { - "flatPath": "v1beta1/projects/{projectsId}/events", - "path": "v1beta1/{+projectName}/events", - "id": "clouderrorreporting.projects.deleteEvents", - "description": "Deletes all error events of a given project.", - "response": { - "$ref": "DeleteEventsResponse" - }, - "parameterOrder": [ - "projectName" - ], - "httpMethod": "DELETE", - "parameters": { - "projectName": { - "location": "path", - "description": "[Required] The resource name of the Google Cloud Platform project. Written\nas `projects/` plus the\n[Google Cloud Platform project\nID](https://support.google.com/cloud/answer/6158840).\nExample: `projects/my-project-123`.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+$" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] + "type": "object" + }, + "TrackingIssue": { + "description": "Information related to tracking the progress on resolving the error.", + "id": "TrackingIssue", + "properties": { + "url": { + "description": "A URL pointing to a related entry in an issue tracking system.\nExample: https://github.com/user/project/issues/4", + "type": "string" } }, - "resources": { - "groups": { - "methods": { - "get": { - "response": { - "$ref": "ErrorGroup" - }, - "parameterOrder": [ - "groupName" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "groupName": { - "description": "[Required] The group resource name. Written as\n\u003ccode\u003eprojects/\u003cvar\u003eprojectID\u003c/var\u003e/groups/\u003cvar\u003egroup_name\u003c/var\u003e\u003c/code\u003e.\nCall\n\u003ca href=\"/error-reporting/reference/rest/v1beta1/projects.groupStats/list\"\u003e\n\u003ccode\u003egroupStats.list\u003c/code\u003e\u003c/a\u003e to return a list of groups belonging to\nthis project.\n\nExample: \u003ccode\u003eprojects/my-project-123/groups/my-group\u003c/code\u003e", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/groups/[^/]+$", - "location": "path" - } - }, - "flatPath": "v1beta1/projects/{projectsId}/groups/{groupsId}", - "path": "v1beta1/{+groupName}", - "id": "clouderrorreporting.projects.groups.get", - "description": "Get the specified group." - }, - "update": { - "request": { - "$ref": "ErrorGroup" - }, - "description": "Replace the data for the specified group.\nFails if the group does not exist.", - "response": { - "$ref": "ErrorGroup" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "PUT", - "parameters": { - "name": { - "description": "The group resource name.\nExample: \u003ccode\u003eprojects/my-project-123/groups/my-groupid\u003c/code\u003e", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/groups/[^/]+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta1/projects/{projectsId}/groups/{groupsId}", - "path": "v1beta1/{+name}", - "id": "clouderrorreporting.projects.groups.update" - } - } - }, - "groupStats": { - "methods": { - "list": { - "description": "Lists the specified groups.", - "response": { - "$ref": "ListGroupStatsResponse" - }, - "parameterOrder": [ - "projectName" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "serviceFilter.service": { - "location": "query", - "description": "[Optional] The exact value to match against\n[`ServiceContext.service`](/error-reporting/reference/rest/v1beta1/ServiceContext#FIELDS.service).", - "type": "string" - }, - "pageSize": { - "location": "query", - "description": "[Optional] The maximum number of results to return per response.\nDefault is 20.", - "format": "int32", - "type": "integer" - }, - "order": { - "location": "query", - "enum": [ - "GROUP_ORDER_UNSPECIFIED", - "COUNT_DESC", - "LAST_SEEN_DESC", - "CREATED_DESC", - "AFFECTED_USERS_DESC" - ], - "description": "[Optional] The sort order in which the results are returned.\nDefault is `COUNT_DESC`.", - "type": "string" - }, - "serviceFilter.version": { - "location": "query", - "description": "[Optional] The exact value to match against\n[`ServiceContext.version`](/error-reporting/reference/rest/v1beta1/ServiceContext#FIELDS.version).", - "type": "string" - }, - "serviceFilter.resourceType": { - "description": "[Optional] The exact value to match against\n[`ServiceContext.resource_type`](/error-reporting/reference/rest/v1beta1/ServiceContext#FIELDS.resource_type).", - "type": "string", - "location": "query" - }, - "alignmentTime": { - "description": "[Optional] Time where the timed counts shall be aligned if rounded\nalignment is chosen. Default is 00:00 UTC.", - "format": "google-datetime", - "type": "string", - "location": "query" - }, - "projectName": { - "description": "[Required] The resource name of the Google Cloud Platform project. Written\nas \u003ccode\u003eprojects/\u003c/code\u003e plus the\n\u003ca href=\"https://support.google.com/cloud/answer/6158840\"\u003eGoogle Cloud\nPlatform project ID\u003c/a\u003e.\n\nExample: \u003ccode\u003eprojects/my-project-123\u003c/code\u003e.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+$", - "location": "path" - }, - "timedCountDuration": { - "description": "[Optional] The preferred duration for a single returned `TimedCount`.\nIf not set, no timed counts are returned.", - "format": "google-duration", - "type": "string", - "location": "query" - }, - "pageToken": { - "description": "[Optional] A `next_page_token` provided by a previous response. To view\nadditional results, pass this token along with the identical query\nparameters as the first request.", - "type": "string", - "location": "query" - }, - "timeRange.period": { - "location": "query", - "enum": [ - "PERIOD_UNSPECIFIED", - "PERIOD_1_HOUR", - "PERIOD_6_HOURS", - "PERIOD_1_DAY", - "PERIOD_1_WEEK", - "PERIOD_30_DAYS" - ], - "description": "Restricts the query to the specified time range.", - "type": "string" - }, - "alignment": { - "description": "[Optional] The alignment of the timed counts to be returned.\nDefault is `ALIGNMENT_EQUAL_AT_END`.", - "type": "string", - "location": "query", - "enum": [ - "ERROR_COUNT_ALIGNMENT_UNSPECIFIED", - "ALIGNMENT_EQUAL_ROUNDED", - "ALIGNMENT_EQUAL_AT_END" - ] - }, - "groupId": { - "location": "query", - "description": "[Optional] List all \u003ccode\u003eErrorGroupStats\u003c/code\u003e with these IDs.", - "type": "string", - "repeated": true - } - }, - "flatPath": "v1beta1/projects/{projectsId}/groupStats", - "path": "v1beta1/{+projectName}/groupStats", - "id": "clouderrorreporting.projects.groupStats.list" - } - } - }, - "events": { - "methods": { - "list": { - "httpMethod": "GET", - "response": { - "$ref": "ListEventsResponse" - }, - "parameterOrder": [ - "projectName" - ], - "parameters": { - "pageSize": { - "location": "query", - "description": "[Optional] The maximum number of results to return per response.", - "format": "int32", - "type": "integer" - }, - "serviceFilter.version": { - "description": "[Optional] The exact value to match against\n[`ServiceContext.version`](/error-reporting/reference/rest/v1beta1/ServiceContext#FIELDS.version).", - "type": "string", - "location": "query" - }, - "serviceFilter.resourceType": { - "location": "query", - "description": "[Optional] The exact value to match against\n[`ServiceContext.resource_type`](/error-reporting/reference/rest/v1beta1/ServiceContext#FIELDS.resource_type).", - "type": "string" - }, - "timeRange.period": { - "location": "query", - "enum": [ - "PERIOD_UNSPECIFIED", - "PERIOD_1_HOUR", - "PERIOD_6_HOURS", - "PERIOD_1_DAY", - "PERIOD_1_WEEK", - "PERIOD_30_DAYS" - ], - "description": "Restricts the query to the specified time range.", - "type": "string" - }, - "projectName": { - "description": "[Required] The resource name of the Google Cloud Platform project. Written\nas `projects/` plus the\n[Google Cloud Platform project\nID](https://support.google.com/cloud/answer/6158840).\nExample: `projects/my-project-123`.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+$", - "location": "path" - }, - "groupId": { - "location": "query", - "description": "[Required] The group for which events shall be returned.", - "type": "string" - }, - "pageToken": { - "location": "query", - "description": "[Optional] A `next_page_token` provided by a previous response.", - "type": "string" - }, - "serviceFilter.service": { - "location": "query", - "description": "[Optional] The exact value to match against\n[`ServiceContext.service`](/error-reporting/reference/rest/v1beta1/ServiceContext#FIELDS.service).", - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta1/projects/{projectsId}/events", - "id": "clouderrorreporting.projects.events.list", - "path": "v1beta1/{+projectName}/events", - "description": "Lists the specified events." - }, - "report": { - "description": "Report an individual error event.\n\nThis endpoint accepts \u003cstrong\u003eeither\u003c/strong\u003e an OAuth token,\n\u003cstrong\u003eor\u003c/strong\u003e an\n\u003ca href=\"https://support.google.com/cloud/answer/6158862\"\u003eAPI key\u003c/a\u003e\nfor authentication. To use an API key, append it to the URL as the value of\na `key` parameter. For example:\n\u003cpre\u003ePOST https://clouderrorreporting.googleapis.com/v1beta1/projects/example-project/events:report?key=123ABC456\u003c/pre\u003e", - "request": { - "$ref": "ReportedErrorEvent" - }, - "response": { - "$ref": "ReportErrorEventResponse" - }, - "parameterOrder": [ - "projectName" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "projectName": { - "description": "[Required] The resource name of the Google Cloud Platform project. Written\nas `projects/` plus the\n[Google Cloud Platform project ID](https://support.google.com/cloud/answer/6158840).\nExample: `projects/my-project-123`.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+$", - "location": "path" - } - }, - "flatPath": "v1beta1/projects/{projectsId}/events:report", - "path": "v1beta1/{+projectName}/events:report", - "id": "clouderrorreporting.projects.events.report" - } - } - } - } + "type": "object" } }, - "parameters": { - "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.", - "type": "string", - "location": "query" - }, - "access_token": { - "description": "OAuth access token.", - "type": "string", - "location": "query" - }, - "quotaUser": { - "location": "query", - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", - "type": "string" - }, - "pp": { - "description": "Pretty-print response.", - "type": "boolean", - "default": "true", - "location": "query" - }, - "bearer_token": { - "description": "OAuth bearer token.", - "type": "string", - "location": "query" - }, - "oauth_token": { - "location": "query", - "description": "OAuth 2.0 token for the current user.", - "type": "string" - }, - "upload_protocol": { - "location": "query", - "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", - "type": "string" - }, - "prettyPrint": { - "location": "query", - "description": "Returns response with indentations and line breaks.", - "type": "boolean", - "default": "true" - }, - "uploadType": { - "location": "query", - "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", - "type": "string" - }, - "fields": { - "description": "Selector specifying which fields to include in a partial response.", - "type": "string", - "location": "query" - }, - "callback": { - "location": "query", - "description": "JSONP", - "type": "string" - }, - "$.xgafv": { - "description": "V1 error format.", - "type": "string", - "enumDescriptions": [ - "v1 error format", - "v2 error format" - ], - "location": "query", - "enum": [ - "1", - "2" - ] - }, - "alt": { - "enum": [ - "json", - "media", - "proto" - ], - "type": "string", - "enumDescriptions": [ - "Responses with Content-Type of application/json", - "Media download with context-dependent Content-Type", - "Responses with Content-Type of application/x-protobuf" - ], - "location": "query", - "description": "Data format for response.", - "default": "json" - } - }, - "version": "v1beta1", - "baseUrl": "https://clouderrorreporting.googleapis.com/", "servicePath": "", - "kind": "discovery#restDescription", - "description": "Groups and counts similar errors from cloud services and applications, reports new errors, and provides access to error groups and their associated errors.\n", - "basePath": "" -} + "title": "Stackdriver Error Reporting API", + "version": "v1beta1", + "version_module": true +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/cloudfunctions/v1/cloudfunctions-api.json b/vendor/google.golang.org/api/cloudfunctions/v1/cloudfunctions-api.json index f08f4102a..c3316eaf3 100644 --- a/vendor/google.golang.org/api/cloudfunctions/v1/cloudfunctions-api.json +++ b/vendor/google.golang.org/api/cloudfunctions/v1/cloudfunctions-api.json @@ -1,40 +1,496 @@ { - "discoveryVersion": "v1", - "version_module": true, - "schemas": { - "GenerateUploadUrlResponse": { - "description": "Response of `GenerateSourceUploadUrl` method.", - "type": "object", - "properties": { - "uploadUrl": { - "description": "The generated Google Cloud Storage signed URL that should be used for a\nfunction source code upload. The uploaded file should be a zip archive\nwhich contains a function.", - "type": "string" + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/cloud-platform": { + "description": "View and manage your data across Google Cloud Platform services" } - }, - "id": "GenerateUploadUrlResponse" + } + } + }, + "basePath": "", + "baseUrl": "https://cloudfunctions.googleapis.com/", + "batchPath": "batch", + "canonicalName": "Cloud Functions", + "description": "API for managing lightweight user-provided functions executed in response to events.", + "discoveryVersion": "v1", + "documentationLink": "https://cloud.google.com/functions", + "fullyEncodeReservedExpansion": true, + "icons": { + "x16": "http://www.google.com/images/icons/product/search-16.gif", + "x32": "http://www.google.com/images/icons/product/search-32.gif" + }, + "id": "cloudfunctions:v1", + "kind": "discovery#restDescription", + "name": "cloudfunctions", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "$.xgafv": { + "description": "V1 error format.", + "enum": [ + "1", + "2" + ], + "enumDescriptions": [ + "v1 error format", + "v2 error format" + ], + "location": "query", + "type": "string" }, - "ListFunctionsResponse": { - "properties": { - "nextPageToken": { - "description": "If not empty, indicates that there may be more functions that match\nthe request; this value should be passed in a new\ngoogle.cloud.functions.v1.ListFunctionsRequest\nto get more functions.", - "type": "string" + "access_token": { + "description": "OAuth access token.", + "location": "query", + "type": "string" + }, + "alt": { + "default": "json", + "description": "Data format for response.", + "enum": [ + "json", + "media", + "proto" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json", + "Media download with context-dependent Content-Type", + "Responses with Content-Type of application/x-protobuf" + ], + "location": "query", + "type": "string" + }, + "bearer_token": { + "description": "OAuth bearer token.", + "location": "query", + "type": "string" + }, + "callback": { + "description": "JSONP", + "location": "query", + "type": "string" + }, + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "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.", + "location": "query", + "type": "string" + }, + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "pp": { + "default": "true", + "description": "Pretty-print response.", + "location": "query", + "type": "boolean" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", + "location": "query", + "type": "string" + }, + "uploadType": { + "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", + "location": "query", + "type": "string" + }, + "upload_protocol": { + "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", + "location": "query", + "type": "string" + } + }, + "protocol": "rest", + "resources": { + "operations": { + "methods": { + "get": { + "description": "Gets the latest state of a long-running operation. Clients can use this\nmethod to poll the operation result at intervals as recommended by the API\nservice.", + "flatPath": "v1/operations/{operationsId}", + "httpMethod": "GET", + "id": "cloudfunctions.operations.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource.", + "location": "path", + "pattern": "^operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] }, - "functions": { - "description": "The functions that match the request.", - "type": "array", - "items": { - "$ref": "CloudFunction" + "list": { + "description": "Lists operations that match the specified filter in the request. If the\nserver doesn't support this method, it returns `UNIMPLEMENTED`.\n\nNOTE: the `name` binding allows API services to override the binding\nto use different resource name schemes, such as `users/*/operations`. To\noverride the binding, API services can add a binding such as\n`\"/v1/{name=users/*}/operations\"` to their service configuration.\nFor backwards compatibility, the default name includes the operations\ncollection id, however overriding users must ensure the name binding\nis the parent resource, without the operations collection id.", + "flatPath": "v1/operations", + "httpMethod": "GET", + "id": "cloudfunctions.operations.list", + "parameterOrder": [], + "parameters": { + "filter": { + "description": "The standard list filter.", + "location": "query", + "type": "string" + }, + "name": { + "description": "The name of the operation's parent resource.", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "The standard list page size.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "The standard list page token.", + "location": "query", + "type": "string" + } + }, + "path": "v1/operations", + "response": { + "$ref": "ListOperationsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + }, + "projects": { + "resources": { + "locations": { + "methods": { + "list": { + "description": "Lists information about the supported locations for this service.", + "flatPath": "v1/projects/{projectsId}/locations", + "httpMethod": "GET", + "id": "cloudfunctions.projects.locations.list", + "parameterOrder": [ + "name" + ], + "parameters": { + "filter": { + "description": "The standard list filter.", + "location": "query", + "type": "string" + }, + "name": { + "description": "The resource that owns the locations collection, if applicable.", + "location": "path", + "pattern": "^projects/[^/]+$", + "required": true, + "type": "string" + }, + "pageSize": { + "description": "The standard list page size.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "The standard list page token.", + "location": "query", + "type": "string" + } + }, + "path": "v1/{+name}/locations", + "response": { + "$ref": "ListLocationsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + }, + "resources": { + "functions": { + "methods": { + "call": { + "description": "Invokes synchronously deployed function. To be used for testing, very\nlimited traffic allowed.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/functions/{functionsId}:call", + "httpMethod": "POST", + "id": "cloudfunctions.projects.locations.functions.call", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the function to be called.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/functions/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}:call", + "request": { + "$ref": "CallFunctionRequest" + }, + "response": { + "$ref": "CallFunctionResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "create": { + "description": "Creates a new function. If a function with the given name already exists in\nthe specified project, the long running operation will return\n`ALREADY_EXISTS` error.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/functions", + "httpMethod": "POST", + "id": "cloudfunctions.projects.locations.functions.create", + "parameterOrder": [ + "location" + ], + "parameters": { + "location": { + "description": "The project and location in which the function should be created, specified\nin the format `projects/*/locations/*`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+location}/functions", + "request": { + "$ref": "CloudFunction" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Deletes a function with the given name from the specified project. If the\ngiven function is used by some trigger, the trigger will be updated to\nremove this function.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/functions/{functionsId}", + "httpMethod": "DELETE", + "id": "cloudfunctions.projects.locations.functions.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the function which should be deleted.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/functions/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "generateDownloadUrl": { + "description": "Returns a signed URL for downloading deployed function source code.\nThe URL is only valid for a limited period and should be used within\nminutes after generation.\nFor more information about the signed URL usage see:\nhttps://cloud.google.com/storage/docs/access-control/signed-urls", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/functions/{functionsId}:generateDownloadUrl", + "httpMethod": "POST", + "id": "cloudfunctions.projects.locations.functions.generateDownloadUrl", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of function for which source code Google Cloud Storage signed\nURL should be generated.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/functions/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}:generateDownloadUrl", + "request": { + "$ref": "GenerateDownloadUrlRequest" + }, + "response": { + "$ref": "GenerateDownloadUrlResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "generateUploadUrl": { + "description": "Returns a signed URL for uploading a function source code.\nFor more information about the signed URL usage see:\nhttps://cloud.google.com/storage/docs/access-control/signed-urls.\nOnce the function source code upload is complete, the used signed\nURL should be provided in CreateFunction or UpdateFunction request\nas a reference to the function source code.\n\nWhen uploading source code to the generated signed URL, please follow\nthese restrictions:\n\n* Source file type should be a zip file.\n* Source file size should not exceed 100MB limit.\n\nWhen making a HTTP PUT request, these two headers need to be specified:\n\n* `content-type: application/zip`\n* `x-google-content-length-range: 0,104857600`", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/functions:generateUploadUrl", + "httpMethod": "POST", + "id": "cloudfunctions.projects.locations.functions.generateUploadUrl", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "The project and location in which the Google Cloud Storage signed URL\nshould be generated, specified in the format `projects/*/locations/*`.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+parent}/functions:generateUploadUrl", + "request": { + "$ref": "GenerateUploadUrlRequest" + }, + "response": { + "$ref": "GenerateUploadUrlResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Returns a function with the given name from the requested project.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/functions/{functionsId}", + "httpMethod": "GET", + "id": "cloudfunctions.projects.locations.functions.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the function which details should be obtained.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/functions/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "CloudFunction" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Returns a list of functions that belong to the requested project.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/functions", + "httpMethod": "GET", + "id": "cloudfunctions.projects.locations.functions.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "pageSize": { + "description": "Maximum number of functions to return per call.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "The value returned by the last\n`ListFunctionsResponse`; indicates that\nthis is a continuation of a prior `ListFunctions` call, and that the\nsystem should return the next page of data.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "The project and location from which the function should be listed,\nspecified in the format `projects/*/locations/*`\nIf you want to list functions in all locations, use \"-\" in place of a\nlocation.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+parent}/functions", + "response": { + "$ref": "ListFunctionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "patch": { + "description": "Updates existing function.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/functions/{functionsId}", + "httpMethod": "PATCH", + "id": "cloudfunctions.projects.locations.functions.patch", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "A user-defined name of the function. Function names must be unique\nglobally and match pattern `projects/*/locations/*/functions/*`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/functions/[^/]+$", + "required": true, + "type": "string" + }, + "updateMask": { + "description": "Required list of fields to be updated in this request.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + } + }, + "path": "v1/{+name}", + "request": { + "$ref": "CloudFunction" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + } } } + } + } + }, + "revision": "20180120", + "rootUrl": "https://cloudfunctions.googleapis.com/", + "schemas": { + "CallFunctionRequest": { + "description": "Request for the `CallFunction` method.", + "id": "CallFunctionRequest", + "properties": { + "data": { + "description": "Input to be passed to the function.", + "type": "string" + } }, - "id": "ListFunctionsResponse", - "description": "Response for the `ListFunctions` method.", "type": "object" }, "CallFunctionResponse": { "description": "Response of `CallFunction` method.", - "type": "object", + "id": "CallFunctionResponse", "properties": { + "error": { + "description": "Either system or user-function generated error. Set if execution\nwas not successful.", + "type": "string" + }, "executionId": { "description": "Execution id of function invocation.", "type": "string" @@ -42,69 +498,137 @@ "result": { "description": "Result populated for successful execution of synchronous function. Will\nnot be populated if function does not return a result through context.", "type": "string" - }, - "error": { - "description": "Either system or user-function generated error. Set if execution\nwas not successful.", - "type": "string" } }, - "id": "CallFunctionResponse" + "type": "object" }, - "ListLocationsResponse": { - "description": "The response message for Locations.ListLocations.", - "type": "object", + "CloudFunction": { + "description": "Describes a Cloud Function that contains user computation executed in\nresponse to an event. It encapsulate function and triggers configurations.", + "id": "CloudFunction", "properties": { - "nextPageToken": { - "description": "The standard List next-page token.", + "availableMemoryMb": { + "description": "The amount of memory in MB available for a function.\nDefaults to 256MB.", + "format": "int32", + "type": "integer" + }, + "description": { + "description": "User-provided description of a function.", "type": "string" }, - "locations": { - "description": "A list of locations that matches the specified filter in the request.", - "type": "array", - "items": { - "$ref": "Location" - } + "entryPoint": { + "description": "The name of the function (as defined in source code) that will be\nexecuted. Defaults to the resource name suffix, if not specified. For\nbackward compatibility, if function with given name is not found, then the\nsystem will try to use function named \"function\".\nFor Node.js this is name of a function exported by the module specified\nin `source_location`.", + "type": "string" + }, + "eventTrigger": { + "$ref": "EventTrigger", + "description": "A source that fires events in response to a condition in another service." + }, + "httpsTrigger": { + "$ref": "HttpsTrigger", + "description": "An HTTPS endpoint type of source that can be triggered via URL." + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Labels associated with this Cloud Function.", + "type": "object" + }, + "name": { + "description": "A user-defined name of the function. Function names must be unique\nglobally and match pattern `projects/*/locations/*/functions/*`", + "type": "string" + }, + "serviceAccountEmail": { + "description": "Output only. The email of the function's service account.", + "type": "string" + }, + "sourceArchiveUrl": { + "description": "The Google Cloud Storage URL, starting with gs://, pointing to the zip\narchive which contains the function.", + "type": "string" + }, + "sourceRepository": { + "$ref": "SourceRepository", + "description": "**Beta Feature**\n\nThe source repository where a function is hosted." + }, + "sourceUploadUrl": { + "description": "The Google Cloud Storage signed URL used for source uploading, generated\nby google.cloud.functions.v1.GenerateUploadUrl", + "type": "string" + }, + "status": { + "description": "Output only. Status of the function deployment.", + "enum": [ + "CLOUD_FUNCTION_STATUS_UNSPECIFIED", + "ACTIVE", + "OFFLINE", + "DEPLOY_IN_PROGRESS", + "DELETE_IN_PROGRESS", + "UNKNOWN" + ], + "enumDescriptions": [ + "Not specified. Invalid state.", + "Function has been succesfully deployed and is serving.", + "Function deployment failed and the function isn’t serving.", + "Function is being created or updated.", + "Function is being deleted.", + "Function deployment failed and the function serving state is undefined.\nThe function should be updated or deleted to move it out of this state." + ], + "type": "string" + }, + "timeout": { + "description": "The function execution timeout. Execution is considered failed and\ncan be terminated if the function is not completed at the end of the\ntimeout period. Defaults to 60 seconds.", + "format": "google-duration", + "type": "string" + }, + "updateTime": { + "description": "Output only. The last update timestamp of a Cloud Function.", + "format": "google-datetime", + "type": "string" + }, + "versionId": { + "description": "Output only.\nThe version identifier of the Cloud Function. Each deployment attempt\nresults in a new version of a function being created.", + "format": "int64", + "type": "string" } }, - "id": "ListLocationsResponse" + "type": "object" }, "EventTrigger": { "description": "Describes EventTrigger, used to request events be sent from another\nservice.", - "type": "object", + "id": "EventTrigger", "properties": { - "service": { - "description": "The hostname of the service that should be observed.\n\nIf no string is provided, the default service implementing the API will\nbe used. For example, `storage.googleapis.com` is the default for all\nevent types in the `google.storage` namespace.", - "type": "string" - }, - "failurePolicy": { - "description": "Specifies policy for failed executions.", - "$ref": "FailurePolicy" - }, "eventType": { "description": "Required. The type of event to observe. For example:\n`providers/cloud.storage/eventTypes/object.change` and\n`providers/cloud.pubsub/eventTypes/topic.publish`.\n\nEvent types match pattern `providers/*/eventTypes/*.*`.\nThe pattern contains:\n\n1. namespace: For example, `cloud.storage` and\n `google.firebase.analytics`.\n2. resource type: The type of resource on which event occurs. For\n example, the Google Cloud Storage API includes the type `object`.\n3. action: The action that generates the event. For example, action for\n a Google Cloud Storage Object is 'change'.\nThese parts are lower case.", "type": "string" }, + "failurePolicy": { + "$ref": "FailurePolicy", + "description": "Specifies policy for failed executions." + }, "resource": { "description": "Required. The resource(s) from which to observe events, for example,\n`projects/_/buckets/myBucket`.\n\nNot all syntactically correct values are accepted by all services. For\nexample:\n\n1. The authorization model must support it. Google Cloud Functions\n only allows EventTriggers to be deployed that observe resources in the\n same project as the `CloudFunction`.\n2. The resource type must match the pattern expected for an\n `event_type`. For example, an `EventTrigger` that has an\n `event_type` of \"google.pubsub.topic.publish\" should have a resource\n that matches Google Cloud Pub/Sub topics.\n\nAdditionally, some services may support short names when creating an\n`EventTrigger`. These will always be returned in the normalized \"long\"\nformat.\n\nSee each *service's* documentation for supported formats.", "type": "string" + }, + "service": { + "description": "The hostname of the service that should be observed.\n\nIf no string is provided, the default service implementing the API will\nbe used. For example, `storage.googleapis.com` is the default for all\nevent types in the `google.storage` namespace.", + "type": "string" } }, - "id": "EventTrigger" + "type": "object" }, "FailurePolicy": { "description": "Describes the policy in case of function's execution failure.\nIf empty, then defaults to ignoring failures (i.e. not retrying them).", - "type": "object", + "id": "FailurePolicy", "properties": { "retry": { "$ref": "Retry", "description": "If specified, then the function will be retried in case of a failure." } }, - "id": "FailurePolicy" + "type": "object" }, "GenerateDownloadUrlRequest": { "description": "Request of `GenerateDownloadUrl` method.", - "type": "object", + "id": "GenerateDownloadUrlRequest", "properties": { "versionId": { "description": "The optional version of function. If not set, default, current version\nis used.", @@ -112,70 +636,138 @@ "type": "string" } }, - "id": "GenerateDownloadUrlRequest" + "type": "object" }, - "OperationMetadataV1": { - "description": "Metadata describing an Operation", - "type": "object", + "GenerateDownloadUrlResponse": { + "description": "Response of `GenerateDownloadUrl` method.", + "id": "GenerateDownloadUrlResponse", "properties": { - "updateTime": { - "description": "The last update timestamp of the operation.", - "format": "google-datetime", + "downloadUrl": { + "description": "The generated Google Cloud Storage signed URL that should be used for\nfunction source code download.", "type": "string" - }, - "target": { - "description": "Target of the operation - for example\nprojects/project-1/locations/region-1/functions/function-1", - "type": "string" - }, - "request": { - "description": "The original request that started the operation.", - "type": "object", - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - } - }, - "versionId": { - "description": "Version id of the function created or updated by an API call.\nThis field is only pupulated for Create and Update operations.", - "format": "int64", - "type": "string" - }, - "type": { - "enum": [ - "OPERATION_UNSPECIFIED", - "CREATE_FUNCTION", - "UPDATE_FUNCTION", - "DELETE_FUNCTION" - ], - "description": "Type of operation.", - "type": "string", - "enumDescriptions": [ - "Unknown operation type.", - "Triggered by CreateFunction call", - "Triggered by UpdateFunction call", - "Triggered by DeleteFunction call." - ] } }, - "id": "OperationMetadataV1" + "type": "object" }, - "Operation": { + "GenerateUploadUrlRequest": { + "description": "Request of `GenerateSourceUploadUrl` method.", + "id": "GenerateUploadUrlRequest", + "properties": {}, + "type": "object" + }, + "GenerateUploadUrlResponse": { + "description": "Response of `GenerateSourceUploadUrl` method.", + "id": "GenerateUploadUrlResponse", "properties": { - "done": { - "description": "If the value is `false`, it means the operation is still in progress.\nIf `true`, the operation is completed, and either `error` or `response` is\navailable.", - "type": "boolean" + "uploadUrl": { + "description": "The generated Google Cloud Storage signed URL that should be used for a\nfunction source code upload. The uploaded file should be a zip archive\nwhich contains a function.", + "type": "string" + } + }, + "type": "object" + }, + "HttpsTrigger": { + "description": "Describes HttpsTrigger, could be used to connect web hooks to function.", + "id": "HttpsTrigger", + "properties": { + "url": { + "description": "Output only. The deployed url for the function.", + "type": "string" + } + }, + "type": "object" + }, + "ListFunctionsResponse": { + "description": "Response for the `ListFunctions` method.", + "id": "ListFunctionsResponse", + "properties": { + "functions": { + "description": "The functions that match the request.", + "items": { + "$ref": "CloudFunction" + }, + "type": "array" }, - "response": { + "nextPageToken": { + "description": "If not empty, indicates that there may be more functions that match\nthe request; this value should be passed in a new\ngoogle.cloud.functions.v1.ListFunctionsRequest\nto get more functions.", + "type": "string" + } + }, + "type": "object" + }, + "ListLocationsResponse": { + "description": "The response message for Locations.ListLocations.", + "id": "ListLocationsResponse", + "properties": { + "locations": { + "description": "A list of locations that matches the specified filter in the request.", + "items": { + "$ref": "Location" + }, + "type": "array" + }, + "nextPageToken": { + "description": "The standard List next-page token.", + "type": "string" + } + }, + "type": "object" + }, + "ListOperationsResponse": { + "description": "The response message for Operations.ListOperations.", + "id": "ListOperationsResponse", + "properties": { + "nextPageToken": { + "description": "The standard List next-page token.", + "type": "string" + }, + "operations": { + "description": "A list of operations that matches the specified filter in the request.", + "items": { + "$ref": "Operation" + }, + "type": "array" + } + }, + "type": "object" + }, + "Location": { + "description": "A resource that represents Google Cloud Platform location.", + "id": "Location", + "properties": { + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Cross-service attributes for the location. For example\n\n {\"cloud.googleapis.com/region\": \"us-east1\"}", + "type": "object" + }, + "locationId": { + "description": "The canonical id for this location. For example: `\"us-east1\"`.", + "type": "string" + }, + "metadata": { "additionalProperties": { "description": "Properties of the object. Contains field @type with type URL.", "type": "any" }, - "description": "The normal response of the operation in case of success. If the original\nmethod returns no data on success, such as `Delete`, the response is\n`google.protobuf.Empty`. If the original method is standard\n`Get`/`Create`/`Update`, the response should be the resource. For other\nmethods, the response should have the type `XxxResponse`, where `Xxx`\nis the original method name. For example, if the original method name\nis `TakeSnapshot()`, the inferred response type is\n`TakeSnapshotResponse`.", + "description": "Service-specific metadata. For example the available capacity at the given\nlocation.", "type": "object" }, "name": { - "description": "The server-assigned name, which is only unique within the same service that\noriginally returns it. If you use the default HTTP mapping, the\n`name` should have the format of `operations/some/unique/name`.", + "description": "Resource name for the location, which may vary between implementations.\nFor example: `\"projects/example-project/locations/us-east1\"`", "type": "string" + } + }, + "type": "object" + }, + "Operation": { + "description": "This resource represents a long-running operation that is the result of a\nnetwork API call.", + "id": "Operation", + "properties": { + "done": { + "description": "If the value is `false`, it means the operation is still in progress.\nIf `true`, the operation is completed, and either `error` or `response` is\navailable.", + "type": "boolean" }, "error": { "$ref": "Status", @@ -188,25 +780,26 @@ }, "description": "Service-specific metadata associated with the operation. It typically\ncontains progress information and common metadata such as create time.\nSome services might not provide such metadata. Any method that returns a\nlong-running operation should document the metadata type, if any.", "type": "object" + }, + "name": { + "description": "The server-assigned name, which is only unique within the same service that\noriginally returns it. If you use the default HTTP mapping, the\n`name` should have the format of `operations/some/unique/name`.", + "type": "string" + }, + "response": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "description": "The normal response of the operation in case of success. If the original\nmethod returns no data on success, such as `Delete`, the response is\n`google.protobuf.Empty`. If the original method is standard\n`Get`/`Create`/`Update`, the response should be the resource. For other\nmethods, the response should have the type `XxxResponse`, where `Xxx`\nis the original method name. For example, if the original method name\nis `TakeSnapshot()`, the inferred response type is\n`TakeSnapshotResponse`.", + "type": "object" } }, - "id": "Operation", - "description": "This resource represents a long-running operation that is the result of a\nnetwork API call.", "type": "object" }, - "OperationMetadataV1Beta2": { + "OperationMetadataV1": { "description": "Metadata describing an Operation", - "type": "object", + "id": "OperationMetadataV1", "properties": { - "updateTime": { - "description": "The last update timestamp of the operation.", - "format": "google-datetime", - "type": "string" - }, - "target": { - "description": "Target of the operation - for example\nprojects/project-1/locations/region-1/functions/function-1", - "type": "string" - }, "request": { "additionalProperties": { "description": "Properties of the object. Contains field @type with type URL.", @@ -215,728 +808,135 @@ "description": "The original request that started the operation.", "type": "object" }, - "versionId": { - "description": "Version id of the function created or updated by an API call.\nThis field is only pupulated for Create and Update operations.", - "format": "int64", + "target": { + "description": "Target of the operation - for example\nprojects/project-1/locations/region-1/functions/function-1", "type": "string" }, "type": { + "description": "Type of operation.", "enum": [ "OPERATION_UNSPECIFIED", "CREATE_FUNCTION", "UPDATE_FUNCTION", "DELETE_FUNCTION" ], - "description": "Type of operation.", - "type": "string", "enumDescriptions": [ "Unknown operation type.", "Triggered by CreateFunction call", "Triggered by UpdateFunction call", "Triggered by DeleteFunction call." - ] + ], + "type": "string" + }, + "updateTime": { + "description": "The last update timestamp of the operation.", + "format": "google-datetime", + "type": "string" + }, + "versionId": { + "description": "Version id of the function created or updated by an API call.\nThis field is only pupulated for Create and Update operations.", + "format": "int64", + "type": "string" } }, - "id": "OperationMetadataV1Beta2" + "type": "object" + }, + "OperationMetadataV1Beta2": { + "description": "Metadata describing an Operation", + "id": "OperationMetadataV1Beta2", + "properties": { + "request": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "description": "The original request that started the operation.", + "type": "object" + }, + "target": { + "description": "Target of the operation - for example\nprojects/project-1/locations/region-1/functions/function-1", + "type": "string" + }, + "type": { + "description": "Type of operation.", + "enum": [ + "OPERATION_UNSPECIFIED", + "CREATE_FUNCTION", + "UPDATE_FUNCTION", + "DELETE_FUNCTION" + ], + "enumDescriptions": [ + "Unknown operation type.", + "Triggered by CreateFunction call", + "Triggered by UpdateFunction call", + "Triggered by DeleteFunction call." + ], + "type": "string" + }, + "updateTime": { + "description": "The last update timestamp of the operation.", + "format": "google-datetime", + "type": "string" + }, + "versionId": { + "description": "Version id of the function created or updated by an API call.\nThis field is only pupulated for Create and Update operations.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "Retry": { + "description": "Describes the retry policy in case of function's execution failure.\nA function execution will be retried on any failure.\nA failed execution will be retried up to 7 days with an exponential backoff\n(capped at 10 seconds).\nRetried execution is charged as any other execution.", + "id": "Retry", + "properties": {}, + "type": "object" + }, + "SourceRepository": { + "description": "Describes SourceRepository, used to represent parameters related to\nsource repository where a function is hosted.", + "id": "SourceRepository", + "properties": { + "deployedUrl": { + "description": "Output only. The URL pointing to the hosted repository where the function\nwere defined at the time of deployment. It always points to a specific\ncommit in the format described above.", + "type": "string" + }, + "url": { + "description": "The URL pointing to the hosted repository where the function is defined.\nThere are supported Cloud Source Repository URLs in the following\nformats:\n\nTo refer to a specific commit:\n`https://source.developers.google.com/projects/*/repos/*/revisions/*/paths/*`\nTo refer to a moveable alias (branch):\n`https://source.developers.google.com/projects/*/repos/*/moveable-aliases/*/paths/*`\nIn particular, to refer to HEAD use `master` moveable alias.\nTo refer to a specific fixed alias (tag):\n`https://source.developers.google.com/projects/*/repos/*/fixed-aliases/*/paths/*`\n\nYou may omit `paths/*` if you want to use the main directory.", + "type": "string" + } + }, + "type": "object" }, "Status": { "description": "The `Status` type defines a logical error model that is suitable for different\nprogramming environments, including REST APIs and RPC APIs. It is used by\n[gRPC](https://github.com/grpc). The error model is designed to be:\n\n- Simple to use and understand for most users\n- Flexible enough to meet unexpected needs\n\n# Overview\n\nThe `Status` message contains three pieces of data: error code, error message,\nand error details. The error code should be an enum value of\ngoogle.rpc.Code, but it may accept additional error codes if needed. The\nerror message should be a developer-facing English message that helps\ndevelopers *understand* and *resolve* the error. If a localized user-facing\nerror message is needed, put the localized message in the error details or\nlocalize it in the client. The optional error details may contain arbitrary\ninformation about the error. There is a predefined set of error detail types\nin the package `google.rpc` that can be used for common error conditions.\n\n# Language mapping\n\nThe `Status` message is the logical representation of the error model, but it\nis not necessarily the actual wire format. When the `Status` message is\nexposed in different client libraries and different wire protocols, it can be\nmapped differently. For example, it will likely be mapped to some exceptions\nin Java, but more likely mapped to some error codes in C.\n\n# Other uses\n\nThe error model and the `Status` message can be used in a variety of\nenvironments, either with or without APIs, to provide a\nconsistent developer experience across different environments.\n\nExample uses of this error model include:\n\n- Partial errors. If a service needs to return partial errors to the client,\n it may embed the `Status` in the normal response to indicate the partial\n errors.\n\n- Workflow errors. A typical workflow has multiple steps. Each step may\n have a `Status` message for error reporting.\n\n- Batch operations. If a client uses batch request and batch response, the\n `Status` message should be used directly inside batch response, one for\n each error sub-response.\n\n- Asynchronous operations. If an API call embeds asynchronous operation\n results in its response, the status of those operations should be\n represented directly using the `Status` message.\n\n- Logging. If some API errors are stored in logs, the message `Status` could\n be used directly after any stripping needed for security/privacy reasons.", - "type": "object", + "id": "Status", "properties": { - "details": { - "description": "A list of messages that carry the error details. There is a common set of\nmessage types for APIs to use.", - "type": "array", - "items": { - "type": "object", - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - } - } - }, "code": { "description": "The status code, which should be an enum value of google.rpc.Code.", "format": "int32", "type": "integer" }, + "details": { + "description": "A list of messages that carry the error details. There is a common set of\nmessage types for APIs to use.", + "items": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "type": "object" + }, + "type": "array" + }, "message": { "description": "A developer-facing error message, which should be in English. Any\nuser-facing error message should be localized and sent in the\ngoogle.rpc.Status.details field, or localized by the client.", "type": "string" } }, - "id": "Status" - }, - "SourceRepository": { - "description": "Describes SourceRepository, used to represent parameters related to\nsource repository where a function is hosted.", - "type": "object", - "properties": { - "url": { - "description": "The URL pointing to the hosted repository where the function is defined.\nThere are supported Cloud Source Repository URLs in the following\nformats:\n\nTo refer to a specific commit:\n`https://source.developers.google.com/projects/*/repos/*/revisions/*/paths/*`\nTo refer to a moveable alias (branch):\n`https://source.developers.google.com/projects/*/repos/*/moveable-aliases/*/paths/*`\nIn particular, to refer to HEAD use `master` moveable alias.\nTo refer to a specific fixed alias (tag):\n`https://source.developers.google.com/projects/*/repos/*/fixed-aliases/*/paths/*`\n\nYou may omit `paths/*` if you want to use the main directory.", - "type": "string" - }, - "deployedUrl": { - "description": "Output only. The URL pointing to the hosted repository where the function\nwere defined at the time of deployment. It always points to a specific\ncommit in the format described above.", - "type": "string" - } - }, - "id": "SourceRepository" - }, - "CallFunctionRequest": { - "description": "Request for the `CallFunction` method.", - "type": "object", - "properties": { - "data": { - "description": "Input to be passed to the function.", - "type": "string" - } - }, - "id": "CallFunctionRequest" - }, - "CloudFunction": { - "description": "Describes a Cloud Function that contains user computation executed in\nresponse to an event. It encapsulate function and triggers configurations.", - "type": "object", - "properties": { - "versionId": { - "description": "Output only.\nThe version identifier of the Cloud Function. Each deployment attempt\nresults in a new version of a function being created.", - "format": "int64", - "type": "string" - }, - "sourceArchiveUrl": { - "description": "The Google Cloud Storage URL, starting with gs://, pointing to the zip\narchive which contains the function.", - "type": "string" - }, - "sourceRepository": { - "$ref": "SourceRepository", - "description": "**Beta Feature**\n\nThe source repository where a function is hosted." - }, - "entryPoint": { - "description": "The name of the function (as defined in source code) that will be\nexecuted. Defaults to the resource name suffix, if not specified. For\nbackward compatibility, if function with given name is not found, then the\nsystem will try to use function named \"function\".\nFor Node.js this is name of a function exported by the module specified\nin `source_location`.", - "type": "string" - }, - "labels": { - "description": "Labels associated with this Cloud Function.", - "type": "object", - "additionalProperties": { - "type": "string" - } - }, - "updateTime": { - "description": "Output only. The last update timestamp of a Cloud Function.", - "format": "google-datetime", - "type": "string" - }, - "httpsTrigger": { - "description": "An HTTPS endpoint type of source that can be triggered via URL.", - "$ref": "HttpsTrigger" - }, - "serviceAccountEmail": { - "description": "Output only. The email of the function's service account.", - "type": "string" - }, - "description": { - "description": "User-provided description of a function.", - "type": "string" - }, - "eventTrigger": { - "description": "A source that fires events in response to a condition in another service.", - "$ref": "EventTrigger" - }, - "sourceUploadUrl": { - "description": "The Google Cloud Storage signed URL used for source uploading, generated\nby google.cloud.functions.v1.GenerateUploadUrl", - "type": "string" - }, - "status": { - "enumDescriptions": [ - "Not specified. Invalid state.", - "Function has been succesfully deployed and is serving.", - "Function deployment failed and the function isn’t serving.", - "Function is being created or updated.", - "Function is being deleted.", - "Function deployment failed and the function serving state is undefined.\nThe function should be updated or deleted to move it out of this state." - ], - "enum": [ - "CLOUD_FUNCTION_STATUS_UNSPECIFIED", - "ACTIVE", - "OFFLINE", - "DEPLOY_IN_PROGRESS", - "DELETE_IN_PROGRESS", - "UNKNOWN" - ], - "description": "Output only. Status of the function deployment.", - "type": "string" - }, - "timeout": { - "description": "The function execution timeout. Execution is considered failed and\ncan be terminated if the function is not completed at the end of the\ntimeout period. Defaults to 60 seconds.", - "format": "google-duration", - "type": "string" - }, - "availableMemoryMb": { - "description": "The amount of memory in MB available for a function.\nDefaults to 256MB.", - "format": "int32", - "type": "integer" - }, - "name": { - "description": "A user-defined name of the function. Function names must be unique\nglobally and match pattern `projects/*/locations/*/functions/*`", - "type": "string" - } - }, - "id": "CloudFunction" - }, - "HttpsTrigger": { - "description": "Describes HttpsTrigger, could be used to connect web hooks to function.", - "type": "object", - "properties": { - "url": { - "description": "Output only. The deployed url for the function.", - "type": "string" - } - }, - "id": "HttpsTrigger" - }, - "Location": { - "description": "A resource that represents Google Cloud Platform location.", - "type": "object", - "properties": { - "labels": { - "additionalProperties": { - "type": "string" - }, - "description": "Cross-service attributes for the location. For example\n\n {\"cloud.googleapis.com/region\": \"us-east1\"}", - "type": "object" - }, - "name": { - "description": "Resource name for the location, which may vary between implementations.\nFor example: `\"projects/example-project/locations/us-east1\"`", - "type": "string" - }, - "locationId": { - "description": "The canonical id for this location. For example: `\"us-east1\"`.", - "type": "string" - }, - "metadata": { - "description": "Service-specific metadata. For example the available capacity at the given\nlocation.", - "type": "object", - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - } - } - }, - "id": "Location" - }, - "GenerateDownloadUrlResponse": { - "properties": { - "downloadUrl": { - "description": "The generated Google Cloud Storage signed URL that should be used for\nfunction source code download.", - "type": "string" - } - }, - "id": "GenerateDownloadUrlResponse", - "description": "Response of `GenerateDownloadUrl` method.", "type": "object" - }, - "Retry": { - "properties": {}, - "id": "Retry", - "description": "Describes the retry policy in case of function's execution failure.\nA function execution will be retried on any failure.\nA failed execution will be retried up to 7 days with an exponential backoff\n(capped at 10 seconds).\nRetried execution is charged as any other execution.", - "type": "object" - }, - "GenerateUploadUrlRequest": { - "properties": {}, - "id": "GenerateUploadUrlRequest", - "description": "Request of `GenerateSourceUploadUrl` method.", - "type": "object" - }, - "ListOperationsResponse": { - "description": "The response message for Operations.ListOperations.", - "type": "object", - "properties": { - "operations": { - "description": "A list of operations that matches the specified filter in the request.", - "type": "array", - "items": { - "$ref": "Operation" - } - }, - "nextPageToken": { - "description": "The standard List next-page token.", - "type": "string" - } - }, - "id": "ListOperationsResponse" } }, - "icons": { - "x16": "http://www.google.com/images/icons/product/search-16.gif", - "x32": "http://www.google.com/images/icons/product/search-32.gif" - }, - "protocol": "rest", - "canonicalName": "Cloud Functions", - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/cloud-platform": { - "description": "View and manage your data across Google Cloud Platform services" - } - } - } - }, - "rootUrl": "https://cloudfunctions.googleapis.com/", - "ownerDomain": "google.com", - "name": "cloudfunctions", - "batchPath": "batch", - "fullyEncodeReservedExpansion": true, - "title": "Google Cloud Functions API", - "ownerName": "Google", - "resources": { - "projects": { - "resources": { - "locations": { - "methods": { - "list": { - "response": { - "$ref": "ListLocationsResponse" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "GET", - "parameters": { - "pageSize": { - "location": "query", - "description": "The standard list page size.", - "format": "int32", - "type": "integer" - }, - "filter": { - "description": "The standard list filter.", - "type": "string", - "location": "query" - }, - "name": { - "description": "The resource that owns the locations collection, if applicable.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+$", - "location": "path" - }, - "pageToken": { - "location": "query", - "description": "The standard list page token.", - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/projects/{projectsId}/locations", - "path": "v1/{+name}/locations", - "id": "cloudfunctions.projects.locations.list", - "description": "Lists information about the supported locations for this service." - } - }, - "resources": { - "functions": { - "methods": { - "list": { - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/functions", - "id": "cloudfunctions.projects.locations.functions.list", - "path": "v1/{+parent}/functions", - "description": "Returns a list of functions that belong to the requested project.", - "httpMethod": "GET", - "response": { - "$ref": "ListFunctionsResponse" - }, - "parameterOrder": [ - "parent" - ], - "parameters": { - "pageToken": { - "description": "The value returned by the last\n`ListFunctionsResponse`; indicates that\nthis is a continuation of a prior `ListFunctions` call, and that the\nsystem should return the next page of data.", - "type": "string", - "location": "query" - }, - "pageSize": { - "location": "query", - "description": "Maximum number of functions to return per call.", - "format": "int32", - "type": "integer" - }, - "parent": { - "description": "The project and location from which the function should be listed,\nspecified in the format `projects/*/locations/*`\nIf you want to list functions in all locations, use \"-\" in place of a\nlocation.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "call": { - "response": { - "$ref": "CallFunctionResponse" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "name": { - "pattern": "^projects/[^/]+/locations/[^/]+/functions/[^/]+$", - "location": "path", - "description": "The name of the function to be called.", - "required": true, - "type": "string" - } - }, - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/functions/{functionsId}:call", - "path": "v1/{+name}:call", - "id": "cloudfunctions.projects.locations.functions.call", - "description": "Invokes synchronously deployed function. To be used for testing, very\nlimited traffic allowed.", - "request": { - "$ref": "CallFunctionRequest" - } - }, - "create": { - "request": { - "$ref": "CloudFunction" - }, - "description": "Creates a new function. If a function with the given name already exists in\nthe specified project, the long running operation will return\n`ALREADY_EXISTS` error.", - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "location" - ], - "httpMethod": "POST", - "parameters": { - "location": { - "description": "The project and location in which the function should be created, specified\nin the format `projects/*/locations/*`", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/functions", - "path": "v1/{+location}/functions", - "id": "cloudfunctions.projects.locations.functions.create" - }, - "generateUploadUrl": { - "description": "Returns a signed URL for uploading a function source code.\nFor more information about the signed URL usage see:\nhttps://cloud.google.com/storage/docs/access-control/signed-urls.\nOnce the function source code upload is complete, the used signed\nURL should be provided in CreateFunction or UpdateFunction request\nas a reference to the function source code.\n\nWhen uploading source code to the generated signed URL, please follow\nthese restrictions:\n\n* Source file type should be a zip file.\n* Source file size should not exceed 100MB limit.\n\nWhen making a HTTP PUT request, these two headers need to be specified:\n\n* `content-type: application/zip`\n* `x-google-content-length-range: 0,104857600`", - "request": { - "$ref": "GenerateUploadUrlRequest" - }, - "response": { - "$ref": "GenerateUploadUrlResponse" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "parent": { - "description": "The project and location in which the Google Cloud Storage signed URL\nshould be generated, specified in the format `projects/*/locations/*`.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+$", - "location": "path" - } - }, - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/functions:generateUploadUrl", - "path": "v1/{+parent}/functions:generateUploadUrl", - "id": "cloudfunctions.projects.locations.functions.generateUploadUrl" - }, - "generateDownloadUrl": { - "request": { - "$ref": "GenerateDownloadUrlRequest" - }, - "description": "Returns a signed URL for downloading deployed function source code.\nThe URL is only valid for a limited period and should be used within\nminutes after generation.\nFor more information about the signed URL usage see:\nhttps://cloud.google.com/storage/docs/access-control/signed-urls", - "response": { - "$ref": "GenerateDownloadUrlResponse" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "POST", - "parameters": { - "name": { - "location": "path", - "description": "The name of function for which source code Google Cloud Storage signed\nURL should be generated.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+/functions/[^/]+$" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/functions/{functionsId}:generateDownloadUrl", - "path": "v1/{+name}:generateDownloadUrl", - "id": "cloudfunctions.projects.locations.functions.generateDownloadUrl" - }, - "patch": { - "request": { - "$ref": "CloudFunction" - }, - "description": "Updates existing function.", - "httpMethod": "PATCH", - "parameterOrder": [ - "name" - ], - "response": { - "$ref": "Operation" - }, - "parameters": { - "updateMask": { - "location": "query", - "description": "Required list of fields to be updated in this request.", - "format": "google-fieldmask", - "type": "string" - }, - "name": { - "location": "path", - "description": "A user-defined name of the function. Function names must be unique\nglobally and match pattern `projects/*/locations/*/functions/*`", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+/functions/[^/]+$" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/functions/{functionsId}", - "id": "cloudfunctions.projects.locations.functions.patch", - "path": "v1/{+name}" - }, - "get": { - "response": { - "$ref": "CloudFunction" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "name": { - "description": "The name of the function which details should be obtained.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+/functions/[^/]+$", - "location": "path" - } - }, - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/functions/{functionsId}", - "path": "v1/{+name}", - "id": "cloudfunctions.projects.locations.functions.get", - "description": "Returns a function with the given name from the requested project." - }, - "delete": { - "httpMethod": "DELETE", - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "name" - ], - "parameters": { - "name": { - "pattern": "^projects/[^/]+/locations/[^/]+/functions/[^/]+$", - "location": "path", - "description": "The name of the function which should be deleted.", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/functions/{functionsId}", - "id": "cloudfunctions.projects.locations.functions.delete", - "path": "v1/{+name}", - "description": "Deletes a function with the given name from the specified project. If the\ngiven function is used by some trigger, the trigger will be updated to\nremove this function." - } - } - } - } - } - } - }, - "operations": { - "methods": { - "list": { - "httpMethod": "GET", - "response": { - "$ref": "ListOperationsResponse" - }, - "parameterOrder": [], - "parameters": { - "name": { - "location": "query", - "description": "The name of the operation's parent resource.", - "type": "string" - }, - "pageToken": { - "location": "query", - "description": "The standard list page token.", - "type": "string" - }, - "pageSize": { - "location": "query", - "description": "The standard list page size.", - "format": "int32", - "type": "integer" - }, - "filter": { - "location": "query", - "description": "The standard list filter.", - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/operations", - "id": "cloudfunctions.operations.list", - "path": "v1/operations", - "description": "Lists operations that match the specified filter in the request. If the\nserver doesn't support this method, it returns `UNIMPLEMENTED`.\n\nNOTE: the `name` binding allows API services to override the binding\nto use different resource name schemes, such as `users/*/operations`. To\noverride the binding, API services can add a binding such as\n`\"/v1/{name=users/*}/operations\"` to their service configuration.\nFor backwards compatibility, the default name includes the operations\ncollection id, however overriding users must ensure the name binding\nis the parent resource, without the operations collection id." - }, - "get": { - "flatPath": "v1/operations/{operationsId}", - "id": "cloudfunctions.operations.get", - "path": "v1/{+name}", - "description": "Gets the latest state of a long-running operation. Clients can use this\nmethod to poll the operation result at intervals as recommended by the API\nservice.", - "httpMethod": "GET", - "parameterOrder": [ - "name" - ], - "response": { - "$ref": "Operation" - }, - "parameters": { - "name": { - "location": "path", - "description": "The name of the operation resource.", - "required": true, - "type": "string", - "pattern": "^operations/[^/]+$" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - } - } - } - }, - "parameters": { - "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.", - "type": "string", - "location": "query" - }, - "access_token": { - "location": "query", - "description": "OAuth access token.", - "type": "string" - }, - "quotaUser": { - "location": "query", - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", - "type": "string" - }, - "pp": { - "location": "query", - "description": "Pretty-print response.", - "type": "boolean", - "default": "true" - }, - "oauth_token": { - "location": "query", - "description": "OAuth 2.0 token for the current user.", - "type": "string" - }, - "bearer_token": { - "location": "query", - "description": "OAuth bearer token.", - "type": "string" - }, - "upload_protocol": { - "location": "query", - "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", - "type": "string" - }, - "prettyPrint": { - "location": "query", - "description": "Returns response with indentations and line breaks.", - "type": "boolean", - "default": "true" - }, - "uploadType": { - "location": "query", - "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", - "type": "string" - }, - "fields": { - "description": "Selector specifying which fields to include in a partial response.", - "type": "string", - "location": "query" - }, - "$.xgafv": { - "description": "V1 error format.", - "type": "string", - "enumDescriptions": [ - "v1 error format", - "v2 error format" - ], - "location": "query", - "enum": [ - "1", - "2" - ] - }, - "callback": { - "location": "query", - "description": "JSONP", - "type": "string" - }, - "alt": { - "enumDescriptions": [ - "Responses with Content-Type of application/json", - "Media download with context-dependent Content-Type", - "Responses with Content-Type of application/x-protobuf" - ], - "location": "query", - "description": "Data format for response.", - "default": "json", - "enum": [ - "json", - "media", - "proto" - ], - "type": "string" - } - }, - "version": "v1", - "baseUrl": "https://cloudfunctions.googleapis.com/", "servicePath": "", - "description": "API for managing lightweight user-provided functions executed in response to events.", - "kind": "discovery#restDescription", - "basePath": "", - "id": "cloudfunctions:v1", - "documentationLink": "https://cloud.google.com/functions", - "revision": "20180102" -} + "title": "Google Cloud Functions API", + "version": "v1", + "version_module": true +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/cloudfunctions/v1beta2/cloudfunctions-api.json b/vendor/google.golang.org/api/cloudfunctions/v1beta2/cloudfunctions-api.json index 3d842f704..f961fcfe8 100644 --- a/vendor/google.golang.org/api/cloudfunctions/v1beta2/cloudfunctions-api.json +++ b/vendor/google.golang.org/api/cloudfunctions/v1beta2/cloudfunctions-api.json @@ -1,78 +1,535 @@ { - "kind": "discovery#restDescription", - "description": "API for managing lightweight user-provided functions executed in response to events.", - "servicePath": "", + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/cloud-platform": { + "description": "View and manage your data across Google Cloud Platform services" + } + } + } + }, "basePath": "", - "id": "cloudfunctions:v1beta2", - "documentationLink": "https://cloud.google.com/functions", - "revision": "20180102", + "baseUrl": "https://cloudfunctions.googleapis.com/", + "batchPath": "batch", + "canonicalName": "Cloud Functions", + "description": "API for managing lightweight user-provided functions executed in response to events.", "discoveryVersion": "v1", - "version_module": true, - "schemas": { - "CloudFunction": { - "description": "Describes a Cloud Function that contains user computation executed in\nresponse to an event. It encapsulate function and triggers configurations.", - "type": "object", - "properties": { - "sourceRepositoryUrl": { - "description": "The URL pointing to the hosted repository where the function is defined.\nThere are supported Cloud Source Repository URLs in the following\nformats:\n\nTo refer to a specific commit:\n`https://source.developers.google.com/projects/*/repos/*/revisions/*/paths/*`\nTo refer to a moveable alias (branch):\n`https://source.developers.google.com/projects/*/repos/*/moveable-aliases/*/paths/*`\nIn particular, to refer to HEAD use `master` moveable alias.\nTo refer to a specific fixed alias (tag):\n`https://source.developers.google.com/projects/*/repos/*/fixed-aliases/*/paths/*`\n\nYou may omit `paths/*` if you want to use the main directory.", - "type": "string" - }, - "updateTime": { - "description": "Output only. The last update timestamp of a Cloud Function.", - "format": "google-datetime", - "type": "string" - }, - "latestOperation": { - "description": "Output only. Name of the most recent operation modifying the function. If\nthe function status is `DEPLOYING` or `DELETING`, then it points to the\nactive operation.", - "type": "string" - }, - "httpsTrigger": { - "$ref": "HTTPSTrigger", - "description": "An HTTPS endpoint type of source that can be triggered via URL." - }, - "sourceUploadUrl": { - "description": "The Google Cloud Storage signed URL used for source uploading, generated\nby google.cloud.functions.v1beta2.GenerateUploadUrl", - "type": "string" - }, - "eventTrigger": { - "description": "A source that fires events in response to a condition in another service.", - "$ref": "EventTrigger" - }, - "status": { - "enum": [ - "STATUS_UNSPECIFIED", - "READY", - "FAILED", - "DEPLOYING", - "DELETING" + "documentationLink": "https://cloud.google.com/functions", + "fullyEncodeReservedExpansion": true, + "icons": { + "x16": "http://www.google.com/images/icons/product/search-16.gif", + "x32": "http://www.google.com/images/icons/product/search-32.gif" + }, + "id": "cloudfunctions:v1beta2", + "kind": "discovery#restDescription", + "name": "cloudfunctions", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "$.xgafv": { + "description": "V1 error format.", + "enum": [ + "1", + "2" + ], + "enumDescriptions": [ + "v1 error format", + "v2 error format" + ], + "location": "query", + "type": "string" + }, + "access_token": { + "description": "OAuth access token.", + "location": "query", + "type": "string" + }, + "alt": { + "default": "json", + "description": "Data format for response.", + "enum": [ + "json", + "media", + "proto" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json", + "Media download with context-dependent Content-Type", + "Responses with Content-Type of application/x-protobuf" + ], + "location": "query", + "type": "string" + }, + "bearer_token": { + "description": "OAuth bearer token.", + "location": "query", + "type": "string" + }, + "callback": { + "description": "JSONP", + "location": "query", + "type": "string" + }, + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "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.", + "location": "query", + "type": "string" + }, + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "pp": { + "default": "true", + "description": "Pretty-print response.", + "location": "query", + "type": "boolean" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", + "location": "query", + "type": "string" + }, + "uploadType": { + "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", + "location": "query", + "type": "string" + }, + "upload_protocol": { + "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", + "location": "query", + "type": "string" + } + }, + "protocol": "rest", + "resources": { + "operations": { + "methods": { + "get": { + "description": "Gets the latest state of a long-running operation. Clients can use this\nmethod to poll the operation result at intervals as recommended by the API\nservice.", + "flatPath": "v1beta2/operations/{operationsId}", + "httpMethod": "GET", + "id": "cloudfunctions.operations.get", + "parameterOrder": [ + "name" ], - "description": "Output only. Status of the function deployment.", - "type": "string", - "enumDescriptions": [ - "Status not specified.", - "Successfully deployed.", - "Not deployed correctly - behavior is undefined. The item should be updated\nor deleted to move it out of this state.", - "Creation or update in progress.", - "Deletion in progress." + "parameters": { + "name": { + "description": "The name of the operation resource.", + "location": "path", + "pattern": "^operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta2/{+name}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" ] }, - "timeout": { - "description": "The function execution timeout. Execution is considered failed and\ncan be terminated if the function is not completed at the end of the\ntimeout period. Defaults to 60 seconds.", - "format": "google-duration", + "list": { + "description": "Lists operations that match the specified filter in the request. If the\nserver doesn't support this method, it returns `UNIMPLEMENTED`.\n\nNOTE: the `name` binding allows API services to override the binding\nto use different resource name schemes, such as `users/*/operations`. To\noverride the binding, API services can add a binding such as\n`\"/v1/{name=users/*}/operations\"` to their service configuration.\nFor backwards compatibility, the default name includes the operations\ncollection id, however overriding users must ensure the name binding\nis the parent resource, without the operations collection id.", + "flatPath": "v1beta2/operations", + "httpMethod": "GET", + "id": "cloudfunctions.operations.list", + "parameterOrder": [], + "parameters": { + "filter": { + "description": "The standard list filter.", + "location": "query", + "type": "string" + }, + "name": { + "description": "The name of the operation's parent resource.", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "The standard list page size.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "The standard list page token.", + "location": "query", + "type": "string" + } + }, + "path": "v1beta2/operations", + "response": { + "$ref": "ListOperationsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + }, + "projects": { + "resources": { + "locations": { + "methods": { + "list": { + "description": "Lists information about the supported locations for this service.", + "flatPath": "v1beta2/projects/{projectsId}/locations", + "httpMethod": "GET", + "id": "cloudfunctions.projects.locations.list", + "parameterOrder": [ + "name" + ], + "parameters": { + "filter": { + "description": "The standard list filter.", + "location": "query", + "type": "string" + }, + "name": { + "description": "The resource that owns the locations collection, if applicable.", + "location": "path", + "pattern": "^projects/[^/]+$", + "required": true, + "type": "string" + }, + "pageSize": { + "description": "The standard list page size.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "The standard list page token.", + "location": "query", + "type": "string" + } + }, + "path": "v1beta2/{+name}/locations", + "response": { + "$ref": "ListLocationsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + }, + "resources": { + "functions": { + "methods": { + "call": { + "description": "Invokes synchronously deployed function. To be used for testing, very\nlimited traffic allowed.", + "flatPath": "v1beta2/projects/{projectsId}/locations/{locationsId}/functions/{functionsId}:call", + "httpMethod": "POST", + "id": "cloudfunctions.projects.locations.functions.call", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the function to be called.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/functions/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta2/{+name}:call", + "request": { + "$ref": "CallFunctionRequest" + }, + "response": { + "$ref": "CallFunctionResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "create": { + "description": "Creates a new function. If a function with the given name already exists in\nthe specified project, the long running operation will return\n`ALREADY_EXISTS` error.", + "flatPath": "v1beta2/projects/{projectsId}/locations/{locationsId}/functions", + "httpMethod": "POST", + "id": "cloudfunctions.projects.locations.functions.create", + "parameterOrder": [ + "location" + ], + "parameters": { + "location": { + "description": "The project and location in which the function should be created, specified\nin the format `projects/*/locations/*`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta2/{+location}/functions", + "request": { + "$ref": "CloudFunction" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Deletes a function with the given name from the specified project. If the\ngiven function is used by some trigger, the trigger will be updated to\nremove this function.", + "flatPath": "v1beta2/projects/{projectsId}/locations/{locationsId}/functions/{functionsId}", + "httpMethod": "DELETE", + "id": "cloudfunctions.projects.locations.functions.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the function which should be deleted.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/functions/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta2/{+name}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "generateDownloadUrl": { + "description": "Returns a signed URL for downloading deployed function source code.\nThe URL is only valid for a limited period and should be used within\nminutes after generation.\nFor more information about the signed URL usage see:\nhttps://cloud.google.com/storage/docs/access-control/signed-urls", + "flatPath": "v1beta2/projects/{projectsId}/locations/{locationsId}/functions/{functionsId}:generateDownloadUrl", + "httpMethod": "POST", + "id": "cloudfunctions.projects.locations.functions.generateDownloadUrl", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of function for which source code Google Cloud Storage signed\nURL should be generated.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/functions/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta2/{+name}:generateDownloadUrl", + "request": { + "$ref": "GenerateDownloadUrlRequest" + }, + "response": { + "$ref": "GenerateDownloadUrlResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "generateUploadUrl": { + "description": "Returns a signed URL for uploading a function source code.\nFor more information about the signed URL usage see:\nhttps://cloud.google.com/storage/docs/access-control/signed-urls\nOnce the function source code upload is complete, the used signed\nURL should be provided in CreateFunction or UpdateFunction request\nas a reference to the function source code.\n\nWhen uploading source code to the generated signed URL, please follow\nthese restrictions:\n\n* Source file type should be a zip file.\n* Source file size should not exceed 100MB limit.\n\nWhen making a HTTP PUT request, these two headers need to be specified:\n\n* `content-type: application/zip`\n* `x-google-content-length-range: 0,104857600`", + "flatPath": "v1beta2/projects/{projectsId}/locations/{locationsId}/functions:generateUploadUrl", + "httpMethod": "POST", + "id": "cloudfunctions.projects.locations.functions.generateUploadUrl", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "The project and location in which the Google Cloud Storage signed URL\nshould be generated, specified in the format `projects/*/locations/*`.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta2/{+parent}/functions:generateUploadUrl", + "request": { + "$ref": "GenerateUploadUrlRequest" + }, + "response": { + "$ref": "GenerateUploadUrlResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Returns a function with the given name from the requested project.", + "flatPath": "v1beta2/projects/{projectsId}/locations/{locationsId}/functions/{functionsId}", + "httpMethod": "GET", + "id": "cloudfunctions.projects.locations.functions.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the function which details should be obtained.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/functions/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta2/{+name}", + "response": { + "$ref": "CloudFunction" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Returns a list of functions that belong to the requested project.", + "flatPath": "v1beta2/projects/{projectsId}/locations/{locationsId}/functions", + "httpMethod": "GET", + "id": "cloudfunctions.projects.locations.functions.list", + "parameterOrder": [ + "location" + ], + "parameters": { + "location": { + "description": "The project and location from which the function should be listed,\nspecified in the format `projects/*/locations/*`\nIf you want to list functions in all locations, use \"-\" in place of a\nlocation.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + }, + "pageSize": { + "description": "Maximum number of functions to return per call.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "The value returned by the last\n`ListFunctionsResponse`; indicates that\nthis is a continuation of a prior `ListFunctions` call, and that the\nsystem should return the next page of data.", + "location": "query", + "type": "string" + } + }, + "path": "v1beta2/{+location}/functions", + "response": { + "$ref": "ListFunctionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "update": { + "description": "Updates existing function.", + "flatPath": "v1beta2/projects/{projectsId}/locations/{locationsId}/functions/{functionsId}", + "httpMethod": "PUT", + "id": "cloudfunctions.projects.locations.functions.update", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the function to be updated.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/functions/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta2/{+name}", + "request": { + "$ref": "CloudFunction" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + } + } + } + } + } + }, + "revision": "20180120", + "rootUrl": "https://cloudfunctions.googleapis.com/", + "schemas": { + "CallFunctionRequest": { + "description": "Request for the `CallFunction` method.", + "id": "CallFunctionRequest", + "properties": { + "data": { + "description": "Input to be passed to the function.", + "type": "string" + } + }, + "type": "object" + }, + "CallFunctionResponse": { + "description": "Response of `CallFunction` method.", + "id": "CallFunctionResponse", + "properties": { + "error": { + "description": "Either system or user-function generated error. Set if execution\nwas not successful.", "type": "string" }, + "executionId": { + "description": "Execution id of function invocation.", + "type": "string" + }, + "result": { + "description": "Result populated for successful execution of synchronous function. Will\nnot be populated if function does not return a result through context.", + "type": "string" + } + }, + "type": "object" + }, + "CloudFunction": { + "description": "Describes a Cloud Function that contains user computation executed in\nresponse to an event. It encapsulate function and triggers configurations.", + "id": "CloudFunction", + "properties": { "availableMemoryMb": { "description": "The amount of memory in MB available for a function.\nDefaults to 256MB.", "format": "int32", "type": "integer" }, - "name": { - "description": "A user-defined name of the function. Function names must be unique\nglobally and match pattern `projects/*/locations/*/functions/*`", + "entryPoint": { + "description": "The name of the function (as defined in source code) that will be\nexecuted. Defaults to the resource name suffix, if not specified. For\nbackward compatibility, if function with given name is not found, then the\nsystem will try to use function named \"function\".\nFor Node.js this is name of a function exported by the module specified\nin `source_location`.", "type": "string" }, - "versionId": { - "description": "Output only.\nThe version identifier of the Cloud Function. Each deployment attempt\nresults in a new version of a function being created.", - "format": "int64", + "eventTrigger": { + "$ref": "EventTrigger", + "description": "A source that fires events in response to a condition in another service." + }, + "httpsTrigger": { + "$ref": "HTTPSTrigger", + "description": "An HTTPS endpoint type of source that can be triggered via URL." + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Labels associated with this Cloud Function.", + "type": "object" + }, + "latestOperation": { + "description": "Output only. Name of the most recent operation modifying the function. If\nthe function status is `DEPLOYING` or `DELETING`, then it points to the\nactive operation.", + "type": "string" + }, + "name": { + "description": "A user-defined name of the function. Function names must be unique\nglobally and match pattern `projects/*/locations/*/functions/*`", "type": "string" }, "serviceAccount": { @@ -84,35 +541,202 @@ "type": "string" }, "sourceRepository": { - "description": "The hosted repository where the function is defined.", - "$ref": "SourceRepository" + "$ref": "SourceRepository", + "description": "The hosted repository where the function is defined." }, - "entryPoint": { - "description": "The name of the function (as defined in source code) that will be\nexecuted. Defaults to the resource name suffix, if not specified. For\nbackward compatibility, if function with given name is not found, then the\nsystem will try to use function named \"function\".\nFor Node.js this is name of a function exported by the module specified\nin `source_location`.", + "sourceRepositoryUrl": { + "description": "The URL pointing to the hosted repository where the function is defined.\nThere are supported Cloud Source Repository URLs in the following\nformats:\n\nTo refer to a specific commit:\n`https://source.developers.google.com/projects/*/repos/*/revisions/*/paths/*`\nTo refer to a moveable alias (branch):\n`https://source.developers.google.com/projects/*/repos/*/moveable-aliases/*/paths/*`\nIn particular, to refer to HEAD use `master` moveable alias.\nTo refer to a specific fixed alias (tag):\n`https://source.developers.google.com/projects/*/repos/*/fixed-aliases/*/paths/*`\n\nYou may omit `paths/*` if you want to use the main directory.", "type": "string" }, + "sourceUploadUrl": { + "description": "The Google Cloud Storage signed URL used for source uploading, generated\nby google.cloud.functions.v1beta2.GenerateUploadUrl", + "type": "string" + }, + "status": { + "description": "Output only. Status of the function deployment.", + "enum": [ + "STATUS_UNSPECIFIED", + "READY", + "FAILED", + "DEPLOYING", + "DELETING" + ], + "enumDescriptions": [ + "Status not specified.", + "Successfully deployed.", + "Not deployed correctly - behavior is undefined. The item should be updated\nor deleted to move it out of this state.", + "Creation or update in progress.", + "Deletion in progress." + ], + "type": "string" + }, + "timeout": { + "description": "The function execution timeout. Execution is considered failed and\ncan be terminated if the function is not completed at the end of the\ntimeout period. Defaults to 60 seconds.", + "format": "google-duration", + "type": "string" + }, + "updateTime": { + "description": "Output only. The last update timestamp of a Cloud Function.", + "format": "google-datetime", + "type": "string" + }, + "versionId": { + "description": "Output only.\nThe version identifier of the Cloud Function. Each deployment attempt\nresults in a new version of a function being created.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "EventTrigger": { + "description": "Describes EventTrigger, used to request events be sent from another\nservice.", + "id": "EventTrigger", + "properties": { + "eventType": { + "description": "`event_type` names contain the service that is sending an event and the\nkind of event that was fired. Must be of the form\n`providers/*/eventTypes/*` e.g. Directly handle a Message published to\nGoogle Cloud Pub/Sub `providers/cloud.pubsub/eventTypes/topic.publish`.\n\nHandle an object changing in Google Cloud Storage:\n`providers/cloud.storage/eventTypes/object.change`\n\nHandle a write to the Firebase Realtime Database:\n`providers/google.firebase.database/eventTypes/ref.write`", + "type": "string" + }, + "failurePolicy": { + "$ref": "FailurePolicy", + "description": "Specifies policy for failed executions." + }, + "resource": { + "description": "Which instance of the source's service should send events. E.g. for Pub/Sub\nthis would be a Pub/Sub topic at `projects/*/topics/*`. For Google Cloud\nStorage this would be a bucket at `projects/*/buckets/*`. For any source\nthat only supports one instance per-project, this should be the name of the\nproject (`projects/*`)", + "type": "string" + }, + "service": { + "description": "The hostname of the service that should be observed.\n\nIf no string is provided, the default service implementing the API will\nbe used. For example, `storage.googleapis.com` is the default for all\nevent types in the `google.storage` namespace.", + "type": "string" + } + }, + "type": "object" + }, + "FailurePolicy": { + "description": "Describes the policy in case of function's execution failure.\nIf empty, then defaults to ignoring failures (i.e. not retrying them).", + "id": "FailurePolicy", + "properties": { + "retry": { + "$ref": "Retry", + "description": "If specified, then the function will be retried in case of a failure." + } + }, + "type": "object" + }, + "GenerateDownloadUrlRequest": { + "description": "Request of `GenerateDownloadUrl` method.", + "id": "GenerateDownloadUrlRequest", + "properties": { + "versionId": { + "description": "The optional version of function.", + "format": "uint64", + "type": "string" + } + }, + "type": "object" + }, + "GenerateDownloadUrlResponse": { + "description": "Response of `GenerateDownloadUrl` method.", + "id": "GenerateDownloadUrlResponse", + "properties": { + "downloadUrl": { + "description": "The generated Google Cloud Storage signed URL that should be used for\nfunction source code download.", + "type": "string" + } + }, + "type": "object" + }, + "GenerateUploadUrlRequest": { + "description": "Request of `GenerateUploadUrl` method.", + "id": "GenerateUploadUrlRequest", + "properties": {}, + "type": "object" + }, + "GenerateUploadUrlResponse": { + "description": "Response of `GenerateUploadUrl` method.", + "id": "GenerateUploadUrlResponse", + "properties": { + "uploadUrl": { + "description": "The generated Google Cloud Storage signed URL that should be used for a\nfunction source code upload. The uploaded file should be a zip archive\nwhich contains a function.", + "type": "string" + } + }, + "type": "object" + }, + "HTTPSTrigger": { + "description": "Describes HTTPSTrigger, could be used to connect web hooks to function.", + "id": "HTTPSTrigger", + "properties": { + "url": { + "description": "Output only. The deployed url for the function.", + "type": "string" + } + }, + "type": "object" + }, + "ListFunctionsResponse": { + "description": "Response for the `ListFunctions` method.", + "id": "ListFunctionsResponse", + "properties": { + "functions": { + "description": "The functions that match the request.", + "items": { + "$ref": "CloudFunction" + }, + "type": "array" + }, + "nextPageToken": { + "description": "If not empty, indicates that there may be more functions that match\nthe request; this value should be passed in a new\ngoogle.cloud.functions.v1beta2.ListFunctionsRequest\nto get more functions.", + "type": "string" + } + }, + "type": "object" + }, + "ListLocationsResponse": { + "description": "The response message for Locations.ListLocations.", + "id": "ListLocationsResponse", + "properties": { + "locations": { + "description": "A list of locations that matches the specified filter in the request.", + "items": { + "$ref": "Location" + }, + "type": "array" + }, + "nextPageToken": { + "description": "The standard List next-page token.", + "type": "string" + } + }, + "type": "object" + }, + "ListOperationsResponse": { + "description": "The response message for Operations.ListOperations.", + "id": "ListOperationsResponse", + "properties": { + "nextPageToken": { + "description": "The standard List next-page token.", + "type": "string" + }, + "operations": { + "description": "A list of operations that matches the specified filter in the request.", + "items": { + "$ref": "Operation" + }, + "type": "array" + } + }, + "type": "object" + }, + "Location": { + "description": "A resource that represents Google Cloud Platform location.", + "id": "Location", + "properties": { "labels": { "additionalProperties": { "type": "string" }, - "description": "Labels associated with this Cloud Function.", - "type": "object" - } - }, - "id": "CloudFunction" - }, - "Location": { - "properties": { - "labels": { "description": "Cross-service attributes for the location. For example\n\n {\"cloud.googleapis.com/region\": \"us-east1\"}", - "type": "object", - "additionalProperties": { - "type": "string" - } - }, - "name": { - "description": "Resource name for the location, which may vary between implementations.\nFor example: `\"projects/example-project/locations/us-east1\"`", - "type": "string" + "type": "object" }, "locationId": { "description": "The canonical id for this location. For example: `\"us-east1\"`.", @@ -125,229 +749,38 @@ }, "description": "Service-specific metadata. For example the available capacity at the given\nlocation.", "type": "object" - } - }, - "id": "Location", - "description": "A resource that represents Google Cloud Platform location.", - "type": "object" - }, - "GenerateDownloadUrlResponse": { - "description": "Response of `GenerateDownloadUrl` method.", - "type": "object", - "properties": { - "downloadUrl": { - "description": "The generated Google Cloud Storage signed URL that should be used for\nfunction source code download.", + }, + "name": { + "description": "Resource name for the location, which may vary between implementations.\nFor example: `\"projects/example-project/locations/us-east1\"`", "type": "string" } }, - "id": "GenerateDownloadUrlResponse" - }, - "Retry": { - "description": "Describes the retry policy in case of function's execution failure.\nA function execution will be retried on any failure.\nA failed execution will be retried up to 7 days with an exponential backoff\n(capped at 10 seconds).\nRetried execution is charged as any other execution.", - "type": "object", - "properties": {}, - "id": "Retry" - }, - "GenerateUploadUrlRequest": { - "properties": {}, - "id": "GenerateUploadUrlRequest", - "description": "Request of `GenerateUploadUrl` method.", - "type": "object" - }, - "ListOperationsResponse": { - "properties": { - "nextPageToken": { - "description": "The standard List next-page token.", - "type": "string" - }, - "operations": { - "description": "A list of operations that matches the specified filter in the request.", - "type": "array", - "items": { - "$ref": "Operation" - } - } - }, - "id": "ListOperationsResponse", - "description": "The response message for Operations.ListOperations.", - "type": "object" - }, - "GenerateUploadUrlResponse": { - "description": "Response of `GenerateUploadUrl` method.", - "type": "object", - "properties": { - "uploadUrl": { - "description": "The generated Google Cloud Storage signed URL that should be used for a\nfunction source code upload. The uploaded file should be a zip archive\nwhich contains a function.", - "type": "string" - } - }, - "id": "GenerateUploadUrlResponse" - }, - "ListFunctionsResponse": { - "properties": { - "nextPageToken": { - "description": "If not empty, indicates that there may be more functions that match\nthe request; this value should be passed in a new\ngoogle.cloud.functions.v1beta2.ListFunctionsRequest\nto get more functions.", - "type": "string" - }, - "functions": { - "description": "The functions that match the request.", - "type": "array", - "items": { - "$ref": "CloudFunction" - } - } - }, - "id": "ListFunctionsResponse", - "description": "Response for the `ListFunctions` method.", - "type": "object" - }, - "CallFunctionResponse": { - "description": "Response of `CallFunction` method.", - "type": "object", - "properties": { - "executionId": { - "description": "Execution id of function invocation.", - "type": "string" - }, - "result": { - "description": "Result populated for successful execution of synchronous function. Will\nnot be populated if function does not return a result through context.", - "type": "string" - }, - "error": { - "description": "Either system or user-function generated error. Set if execution\nwas not successful.", - "type": "string" - } - }, - "id": "CallFunctionResponse" - }, - "ListLocationsResponse": { - "description": "The response message for Locations.ListLocations.", - "type": "object", - "properties": { - "locations": { - "description": "A list of locations that matches the specified filter in the request.", - "type": "array", - "items": { - "$ref": "Location" - } - }, - "nextPageToken": { - "description": "The standard List next-page token.", - "type": "string" - } - }, - "id": "ListLocationsResponse" - }, - "EventTrigger": { - "description": "Describes EventTrigger, used to request events be sent from another\nservice.", - "type": "object", - "properties": { - "failurePolicy": { - "description": "Specifies policy for failed executions.", - "$ref": "FailurePolicy" - }, - "eventType": { - "description": "`event_type` names contain the service that is sending an event and the\nkind of event that was fired. Must be of the form\n`providers/*/eventTypes/*` e.g. Directly handle a Message published to\nGoogle Cloud Pub/Sub `providers/cloud.pubsub/eventTypes/topic.publish`.\n\nHandle an object changing in Google Cloud Storage:\n`providers/cloud.storage/eventTypes/object.change`\n\nHandle a write to the Firebase Realtime Database:\n`providers/google.firebase.database/eventTypes/ref.write`", - "type": "string" - }, - "resource": { - "description": "Which instance of the source's service should send events. E.g. for Pub/Sub\nthis would be a Pub/Sub topic at `projects/*/topics/*`. For Google Cloud\nStorage this would be a bucket at `projects/*/buckets/*`. For any source\nthat only supports one instance per-project, this should be the name of the\nproject (`projects/*`)", - "type": "string" - }, - "service": { - "description": "The hostname of the service that should be observed.\n\nIf no string is provided, the default service implementing the API will\nbe used. For example, `storage.googleapis.com` is the default for all\nevent types in the `google.storage` namespace.", - "type": "string" - } - }, - "id": "EventTrigger" - }, - "HTTPSTrigger": { - "description": "Describes HTTPSTrigger, could be used to connect web hooks to function.", - "type": "object", - "properties": { - "url": { - "description": "Output only. The deployed url for the function.", - "type": "string" - } - }, - "id": "HTTPSTrigger" - }, - "FailurePolicy": { - "description": "Describes the policy in case of function's execution failure.\nIf empty, then defaults to ignoring failures (i.e. not retrying them).", - "type": "object", - "properties": { - "retry": { - "$ref": "Retry", - "description": "If specified, then the function will be retried in case of a failure." - } - }, - "id": "FailurePolicy" - }, - "GenerateDownloadUrlRequest": { - "description": "Request of `GenerateDownloadUrl` method.", - "type": "object", - "properties": { - "versionId": { - "description": "The optional version of function.", - "format": "uint64", - "type": "string" - } - }, - "id": "GenerateDownloadUrlRequest" - }, - "OperationMetadataV1": { - "properties": { - "updateTime": { - "description": "The last update timestamp of the operation.", - "format": "google-datetime", - "type": "string" - }, - "target": { - "description": "Target of the operation - for example\nprojects/project-1/locations/region-1/functions/function-1", - "type": "string" - }, - "request": { - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - }, - "description": "The original request that started the operation.", - "type": "object" - }, - "versionId": { - "description": "Version id of the function created or updated by an API call.\nThis field is only pupulated for Create and Update operations.", - "format": "int64", - "type": "string" - }, - "type": { - "enum": [ - "OPERATION_UNSPECIFIED", - "CREATE_FUNCTION", - "UPDATE_FUNCTION", - "DELETE_FUNCTION" - ], - "description": "Type of operation.", - "type": "string", - "enumDescriptions": [ - "Unknown operation type.", - "Triggered by CreateFunction call", - "Triggered by UpdateFunction call", - "Triggered by DeleteFunction call." - ] - } - }, - "id": "OperationMetadataV1", - "description": "Metadata describing an Operation", "type": "object" }, "Operation": { "description": "This resource represents a long-running operation that is the result of a\nnetwork API call.", - "type": "object", + "id": "Operation", "properties": { "done": { "description": "If the value is `false`, it means the operation is still in progress.\nIf `true`, the operation is completed, and either `error` or `response` is\navailable.", "type": "boolean" }, + "error": { + "$ref": "Status", + "description": "The error result of the operation in case of failure or cancellation." + }, + "metadata": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "description": "Service-specific metadata associated with the operation. It typically\ncontains progress information and common metadata such as create time.\nSome services might not provide such metadata. Any method that returns a\nlong-running operation should document the metadata type, if any.", + "type": "object" + }, + "name": { + "description": "The server-assigned name, which is only unique within the same service that\noriginally returns it. If you use the default HTTP mapping, the\n`name` should have the format of `operations/some/unique/name`.", + "type": "string" + }, "response": { "additionalProperties": { "description": "Properties of the object. Contains field @type with type URL.", @@ -355,39 +788,14 @@ }, "description": "The normal response of the operation in case of success. If the original\nmethod returns no data on success, such as `Delete`, the response is\n`google.protobuf.Empty`. If the original method is standard\n`Get`/`Create`/`Update`, the response should be the resource. For other\nmethods, the response should have the type `XxxResponse`, where `Xxx`\nis the original method name. For example, if the original method name\nis `TakeSnapshot()`, the inferred response type is\n`TakeSnapshotResponse`.", "type": "object" - }, - "name": { - "description": "The server-assigned name, which is only unique within the same service that\noriginally returns it. If you use the default HTTP mapping, the\n`name` should have the format of `operations/some/unique/name`.", - "type": "string" - }, - "error": { - "description": "The error result of the operation in case of failure or cancellation.", - "$ref": "Status" - }, - "metadata": { - "description": "Service-specific metadata associated with the operation. It typically\ncontains progress information and common metadata such as create time.\nSome services might not provide such metadata. Any method that returns a\nlong-running operation should document the metadata type, if any.", - "type": "object", - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - } } }, - "id": "Operation" + "type": "object" }, - "OperationMetadataV1Beta2": { + "OperationMetadataV1": { "description": "Metadata describing an Operation", - "type": "object", + "id": "OperationMetadataV1", "properties": { - "updateTime": { - "description": "The last update timestamp of the operation.", - "format": "google-datetime", - "type": "string" - }, - "target": { - "description": "Target of the operation - for example\nprojects/project-1/locations/region-1/functions/function-1", - "type": "string" - }, "request": { "additionalProperties": { "description": "Properties of the object. Contains field @type with type URL.", @@ -396,73 +804,94 @@ "description": "The original request that started the operation.", "type": "object" }, - "versionId": { - "description": "Version id of the function created or updated by an API call.\nThis field is only pupulated for Create and Update operations.", - "format": "int64", + "target": { + "description": "Target of the operation - for example\nprojects/project-1/locations/region-1/functions/function-1", "type": "string" }, "type": { - "enumDescriptions": [ - "Unknown operation type.", - "Triggered by CreateFunction call", - "Triggered by UpdateFunction call", - "Triggered by DeleteFunction call." - ], + "description": "Type of operation.", "enum": [ "OPERATION_UNSPECIFIED", "CREATE_FUNCTION", "UPDATE_FUNCTION", "DELETE_FUNCTION" ], - "description": "Type of operation.", + "enumDescriptions": [ + "Unknown operation type.", + "Triggered by CreateFunction call", + "Triggered by UpdateFunction call", + "Triggered by DeleteFunction call." + ], + "type": "string" + }, + "updateTime": { + "description": "The last update timestamp of the operation.", + "format": "google-datetime", + "type": "string" + }, + "versionId": { + "description": "Version id of the function created or updated by an API call.\nThis field is only pupulated for Create and Update operations.", + "format": "int64", "type": "string" } }, - "id": "OperationMetadataV1Beta2" + "type": "object" }, - "Status": { - "description": "The `Status` type defines a logical error model that is suitable for different\nprogramming environments, including REST APIs and RPC APIs. It is used by\n[gRPC](https://github.com/grpc). The error model is designed to be:\n\n- Simple to use and understand for most users\n- Flexible enough to meet unexpected needs\n\n# Overview\n\nThe `Status` message contains three pieces of data: error code, error message,\nand error details. The error code should be an enum value of\ngoogle.rpc.Code, but it may accept additional error codes if needed. The\nerror message should be a developer-facing English message that helps\ndevelopers *understand* and *resolve* the error. If a localized user-facing\nerror message is needed, put the localized message in the error details or\nlocalize it in the client. The optional error details may contain arbitrary\ninformation about the error. There is a predefined set of error detail types\nin the package `google.rpc` that can be used for common error conditions.\n\n# Language mapping\n\nThe `Status` message is the logical representation of the error model, but it\nis not necessarily the actual wire format. When the `Status` message is\nexposed in different client libraries and different wire protocols, it can be\nmapped differently. For example, it will likely be mapped to some exceptions\nin Java, but more likely mapped to some error codes in C.\n\n# Other uses\n\nThe error model and the `Status` message can be used in a variety of\nenvironments, either with or without APIs, to provide a\nconsistent developer experience across different environments.\n\nExample uses of this error model include:\n\n- Partial errors. If a service needs to return partial errors to the client,\n it may embed the `Status` in the normal response to indicate the partial\n errors.\n\n- Workflow errors. A typical workflow has multiple steps. Each step may\n have a `Status` message for error reporting.\n\n- Batch operations. If a client uses batch request and batch response, the\n `Status` message should be used directly inside batch response, one for\n each error sub-response.\n\n- Asynchronous operations. If an API call embeds asynchronous operation\n results in its response, the status of those operations should be\n represented directly using the `Status` message.\n\n- Logging. If some API errors are stored in logs, the message `Status` could\n be used directly after any stripping needed for security/privacy reasons.", - "type": "object", + "OperationMetadataV1Beta2": { + "description": "Metadata describing an Operation", + "id": "OperationMetadataV1Beta2", "properties": { - "message": { - "description": "A developer-facing error message, which should be in English. Any\nuser-facing error message should be localized and sent in the\ngoogle.rpc.Status.details field, or localized by the client.", + "request": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "description": "The original request that started the operation.", + "type": "object" + }, + "target": { + "description": "Target of the operation - for example\nprojects/project-1/locations/region-1/functions/function-1", "type": "string" }, - "details": { - "description": "A list of messages that carry the error details. There is a common set of\nmessage types for APIs to use.", - "type": "array", - "items": { - "type": "object", - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - } - } + "type": { + "description": "Type of operation.", + "enum": [ + "OPERATION_UNSPECIFIED", + "CREATE_FUNCTION", + "UPDATE_FUNCTION", + "DELETE_FUNCTION" + ], + "enumDescriptions": [ + "Unknown operation type.", + "Triggered by CreateFunction call", + "Triggered by UpdateFunction call", + "Triggered by DeleteFunction call." + ], + "type": "string" }, - "code": { - "description": "The status code, which should be an enum value of google.rpc.Code.", - "format": "int32", - "type": "integer" + "updateTime": { + "description": "The last update timestamp of the operation.", + "format": "google-datetime", + "type": "string" + }, + "versionId": { + "description": "Version id of the function created or updated by an API call.\nThis field is only pupulated for Create and Update operations.", + "format": "int64", + "type": "string" } }, - "id": "Status" + "type": "object" + }, + "Retry": { + "description": "Describes the retry policy in case of function's execution failure.\nA function execution will be retried on any failure.\nA failed execution will be retried up to 7 days with an exponential backoff\n(capped at 10 seconds).\nRetried execution is charged as any other execution.", + "id": "Retry", + "properties": {}, + "type": "object" }, "SourceRepository": { "description": "Describes the location of the function source in a remote repository.", - "type": "object", + "id": "SourceRepository", "properties": { - "revision": { - "description": "The id of the revision that captures the state of the repository from\nwhich the function should be fetched.", - "type": "string" - }, - "repositoryUrl": { - "description": "URL to the hosted repository where the function is defined. Only paths in\nhttps://source.developers.google.com domain are supported. The path should\ncontain the name of the repository.", - "type": "string" - }, - "tag": { - "description": "The name of the tag that captures the state of the repository from\nwhich the function should be fetched.", - "type": "string" - }, "branch": { "description": "The name of the branch from which the function should be fetched.", "type": "string" @@ -471,484 +900,55 @@ "description": "Output only. The id of the revision that was resolved at the moment of\nfunction creation or update. For example when a user deployed from a\nbranch, it will be the revision id of the latest change on this branch at\nthat time. If user deployed from revision then this value will be always\nequal to the revision specified by the user.", "type": "string" }, + "repositoryUrl": { + "description": "URL to the hosted repository where the function is defined. Only paths in\nhttps://source.developers.google.com domain are supported. The path should\ncontain the name of the repository.", + "type": "string" + }, + "revision": { + "description": "The id of the revision that captures the state of the repository from\nwhich the function should be fetched.", + "type": "string" + }, "sourcePath": { "description": "The path within the repository where the function is defined. The path\nshould point to the directory where Cloud Functions files are located. Use\n\"/\" if the function is defined directly in the root directory of a\nrepository.", "type": "string" - } - }, - "id": "SourceRepository" - }, - "CallFunctionRequest": { - "description": "Request for the `CallFunction` method.", - "type": "object", - "properties": { - "data": { - "description": "Input to be passed to the function.", + }, + "tag": { + "description": "The name of the tag that captures the state of the repository from\nwhich the function should be fetched.", "type": "string" } }, - "id": "CallFunctionRequest" - } - }, - "protocol": "rest", - "icons": { - "x32": "http://www.google.com/images/icons/product/search-32.gif", - "x16": "http://www.google.com/images/icons/product/search-16.gif" - }, - "canonicalName": "Cloud Functions", - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/cloud-platform": { - "description": "View and manage your data across Google Cloud Platform services" - } - } - } - }, - "rootUrl": "https://cloudfunctions.googleapis.com/", - "ownerDomain": "google.com", - "name": "cloudfunctions", - "batchPath": "batch", - "fullyEncodeReservedExpansion": true, - "title": "Google Cloud Functions API", - "ownerName": "Google", - "resources": { - "projects": { - "resources": { - "locations": { - "resources": { - "functions": { - "methods": { - "generateUploadUrl": { - "httpMethod": "POST", - "parameterOrder": [ - "parent" - ], - "response": { - "$ref": "GenerateUploadUrlResponse" - }, - "parameters": { - "parent": { - "description": "The project and location in which the Google Cloud Storage signed URL\nshould be generated, specified in the format `projects/*/locations/*`.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta2/projects/{projectsId}/locations/{locationsId}/functions:generateUploadUrl", - "id": "cloudfunctions.projects.locations.functions.generateUploadUrl", - "path": "v1beta2/{+parent}/functions:generateUploadUrl", - "request": { - "$ref": "GenerateUploadUrlRequest" - }, - "description": "Returns a signed URL for uploading a function source code.\nFor more information about the signed URL usage see:\nhttps://cloud.google.com/storage/docs/access-control/signed-urls\nOnce the function source code upload is complete, the used signed\nURL should be provided in CreateFunction or UpdateFunction request\nas a reference to the function source code.\n\nWhen uploading source code to the generated signed URL, please follow\nthese restrictions:\n\n* Source file type should be a zip file.\n* Source file size should not exceed 100MB limit.\n\nWhen making a HTTP PUT request, these two headers need to be specified:\n\n* `content-type: application/zip`\n* `x-google-content-length-range: 0,104857600`" - }, - "generateDownloadUrl": { - "flatPath": "v1beta2/projects/{projectsId}/locations/{locationsId}/functions/{functionsId}:generateDownloadUrl", - "path": "v1beta2/{+name}:generateDownloadUrl", - "id": "cloudfunctions.projects.locations.functions.generateDownloadUrl", - "request": { - "$ref": "GenerateDownloadUrlRequest" - }, - "description": "Returns a signed URL for downloading deployed function source code.\nThe URL is only valid for a limited period and should be used within\nminutes after generation.\nFor more information about the signed URL usage see:\nhttps://cloud.google.com/storage/docs/access-control/signed-urls", - "response": { - "$ref": "GenerateDownloadUrlResponse" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "POST", - "parameters": { - "name": { - "location": "path", - "description": "The name of function for which source code Google Cloud Storage signed\nURL should be generated.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+/functions/[^/]+$" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "get": { - "response": { - "$ref": "CloudFunction" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "GET", - "parameters": { - "name": { - "pattern": "^projects/[^/]+/locations/[^/]+/functions/[^/]+$", - "location": "path", - "description": "The name of the function which details should be obtained.", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta2/projects/{projectsId}/locations/{locationsId}/functions/{functionsId}", - "path": "v1beta2/{+name}", - "id": "cloudfunctions.projects.locations.functions.get", - "description": "Returns a function with the given name from the requested project." - }, - "update": { - "flatPath": "v1beta2/projects/{projectsId}/locations/{locationsId}/functions/{functionsId}", - "id": "cloudfunctions.projects.locations.functions.update", - "path": "v1beta2/{+name}", - "request": { - "$ref": "CloudFunction" - }, - "description": "Updates existing function.", - "httpMethod": "PUT", - "parameterOrder": [ - "name" - ], - "response": { - "$ref": "Operation" - }, - "parameters": { - "name": { - "location": "path", - "description": "The name of the function to be updated.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+/functions/[^/]+$" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "delete": { - "flatPath": "v1beta2/projects/{projectsId}/locations/{locationsId}/functions/{functionsId}", - "id": "cloudfunctions.projects.locations.functions.delete", - "path": "v1beta2/{+name}", - "description": "Deletes a function with the given name from the specified project. If the\ngiven function is used by some trigger, the trigger will be updated to\nremove this function.", - "httpMethod": "DELETE", - "parameterOrder": [ - "name" - ], - "response": { - "$ref": "Operation" - }, - "parameters": { - "name": { - "pattern": "^projects/[^/]+/locations/[^/]+/functions/[^/]+$", - "location": "path", - "description": "The name of the function which should be deleted.", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "list": { - "response": { - "$ref": "ListFunctionsResponse" - }, - "parameterOrder": [ - "location" - ], - "httpMethod": "GET", - "parameters": { - "pageToken": { - "description": "The value returned by the last\n`ListFunctionsResponse`; indicates that\nthis is a continuation of a prior `ListFunctions` call, and that the\nsystem should return the next page of data.", - "type": "string", - "location": "query" - }, - "pageSize": { - "description": "Maximum number of functions to return per call.", - "format": "int32", - "type": "integer", - "location": "query" - }, - "location": { - "description": "The project and location from which the function should be listed,\nspecified in the format `projects/*/locations/*`\nIf you want to list functions in all locations, use \"-\" in place of a\nlocation.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta2/projects/{projectsId}/locations/{locationsId}/functions", - "path": "v1beta2/{+location}/functions", - "id": "cloudfunctions.projects.locations.functions.list", - "description": "Returns a list of functions that belong to the requested project." - }, - "call": { - "path": "v1beta2/{+name}:call", - "id": "cloudfunctions.projects.locations.functions.call", - "request": { - "$ref": "CallFunctionRequest" - }, - "description": "Invokes synchronously deployed function. To be used for testing, very\nlimited traffic allowed.", - "response": { - "$ref": "CallFunctionResponse" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "POST", - "parameters": { - "name": { - "location": "path", - "description": "The name of the function to be called.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+/functions/[^/]+$" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta2/projects/{projectsId}/locations/{locationsId}/functions/{functionsId}:call" - }, - "create": { - "description": "Creates a new function. If a function with the given name already exists in\nthe specified project, the long running operation will return\n`ALREADY_EXISTS` error.", - "request": { - "$ref": "CloudFunction" - }, - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "location" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "location": { - "location": "path", - "description": "The project and location in which the function should be created, specified\nin the format `projects/*/locations/*`", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+$" - } - }, - "flatPath": "v1beta2/projects/{projectsId}/locations/{locationsId}/functions", - "path": "v1beta2/{+location}/functions", - "id": "cloudfunctions.projects.locations.functions.create" - } - } - } - }, - "methods": { - "list": { - "httpMethod": "GET", - "response": { - "$ref": "ListLocationsResponse" - }, - "parameterOrder": [ - "name" - ], - "parameters": { - "filter": { - "description": "The standard list filter.", - "type": "string", - "location": "query" - }, - "name": { - "description": "The resource that owns the locations collection, if applicable.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+$", - "location": "path" - }, - "pageToken": { - "location": "query", - "description": "The standard list page token.", - "type": "string" - }, - "pageSize": { - "description": "The standard list page size.", - "format": "int32", - "type": "integer", - "location": "query" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta2/projects/{projectsId}/locations", - "id": "cloudfunctions.projects.locations.list", - "path": "v1beta2/{+name}/locations", - "description": "Lists information about the supported locations for this service." - } - } - } - } + "type": "object" }, - "operations": { - "methods": { - "list": { - "description": "Lists operations that match the specified filter in the request. If the\nserver doesn't support this method, it returns `UNIMPLEMENTED`.\n\nNOTE: the `name` binding allows API services to override the binding\nto use different resource name schemes, such as `users/*/operations`. To\noverride the binding, API services can add a binding such as\n`\"/v1/{name=users/*}/operations\"` to their service configuration.\nFor backwards compatibility, the default name includes the operations\ncollection id, however overriding users must ensure the name binding\nis the parent resource, without the operations collection id.", - "httpMethod": "GET", - "response": { - "$ref": "ListOperationsResponse" - }, - "parameterOrder": [], - "parameters": { - "name": { - "description": "The name of the operation's parent resource.", - "type": "string", - "location": "query" - }, - "pageToken": { - "location": "query", - "description": "The standard list page token.", - "type": "string" - }, - "pageSize": { - "description": "The standard list page size.", - "format": "int32", - "type": "integer", - "location": "query" - }, - "filter": { - "description": "The standard list filter.", - "type": "string", - "location": "query" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta2/operations", - "id": "cloudfunctions.operations.list", - "path": "v1beta2/operations" + "Status": { + "description": "The `Status` type defines a logical error model that is suitable for different\nprogramming environments, including REST APIs and RPC APIs. It is used by\n[gRPC](https://github.com/grpc). The error model is designed to be:\n\n- Simple to use and understand for most users\n- Flexible enough to meet unexpected needs\n\n# Overview\n\nThe `Status` message contains three pieces of data: error code, error message,\nand error details. The error code should be an enum value of\ngoogle.rpc.Code, but it may accept additional error codes if needed. The\nerror message should be a developer-facing English message that helps\ndevelopers *understand* and *resolve* the error. If a localized user-facing\nerror message is needed, put the localized message in the error details or\nlocalize it in the client. The optional error details may contain arbitrary\ninformation about the error. There is a predefined set of error detail types\nin the package `google.rpc` that can be used for common error conditions.\n\n# Language mapping\n\nThe `Status` message is the logical representation of the error model, but it\nis not necessarily the actual wire format. When the `Status` message is\nexposed in different client libraries and different wire protocols, it can be\nmapped differently. For example, it will likely be mapped to some exceptions\nin Java, but more likely mapped to some error codes in C.\n\n# Other uses\n\nThe error model and the `Status` message can be used in a variety of\nenvironments, either with or without APIs, to provide a\nconsistent developer experience across different environments.\n\nExample uses of this error model include:\n\n- Partial errors. If a service needs to return partial errors to the client,\n it may embed the `Status` in the normal response to indicate the partial\n errors.\n\n- Workflow errors. A typical workflow has multiple steps. Each step may\n have a `Status` message for error reporting.\n\n- Batch operations. If a client uses batch request and batch response, the\n `Status` message should be used directly inside batch response, one for\n each error sub-response.\n\n- Asynchronous operations. If an API call embeds asynchronous operation\n results in its response, the status of those operations should be\n represented directly using the `Status` message.\n\n- Logging. If some API errors are stored in logs, the message `Status` could\n be used directly after any stripping needed for security/privacy reasons.", + "id": "Status", + "properties": { + "code": { + "description": "The status code, which should be an enum value of google.rpc.Code.", + "format": "int32", + "type": "integer" }, - "get": { - "httpMethod": "GET", - "response": { - "$ref": "Operation" + "details": { + "description": "A list of messages that carry the error details. There is a common set of\nmessage types for APIs to use.", + "items": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "type": "object" }, - "parameterOrder": [ - "name" - ], - "parameters": { - "name": { - "pattern": "^operations/[^/]+$", - "location": "path", - "description": "The name of the operation resource.", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta2/operations/{operationsId}", - "id": "cloudfunctions.operations.get", - "path": "v1beta2/{+name}", - "description": "Gets the latest state of a long-running operation. Clients can use this\nmethod to poll the operation result at intervals as recommended by the API\nservice." + "type": "array" + }, + "message": { + "description": "A developer-facing error message, which should be in English. Any\nuser-facing error message should be localized and sent in the\ngoogle.rpc.Status.details field, or localized by the client.", + "type": "string" } - } - } - }, - "parameters": { - "pp": { - "location": "query", - "description": "Pretty-print response.", - "type": "boolean", - "default": "true" - }, - "oauth_token": { - "description": "OAuth 2.0 token for the current user.", - "type": "string", - "location": "query" - }, - "bearer_token": { - "description": "OAuth bearer token.", - "type": "string", - "location": "query" - }, - "upload_protocol": { - "location": "query", - "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", - "type": "string" - }, - "prettyPrint": { - "location": "query", - "description": "Returns response with indentations and line breaks.", - "type": "boolean", - "default": "true" - }, - "fields": { - "location": "query", - "description": "Selector specifying which fields to include in a partial response.", - "type": "string" - }, - "uploadType": { - "location": "query", - "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", - "type": "string" - }, - "$.xgafv": { - "description": "V1 error format.", - "type": "string", - "enumDescriptions": [ - "v1 error format", - "v2 error format" - ], - "location": "query", - "enum": [ - "1", - "2" - ] - }, - "callback": { - "description": "JSONP", - "type": "string", - "location": "query" - }, - "alt": { - "enum": [ - "json", - "media", - "proto" - ], - "type": "string", - "enumDescriptions": [ - "Responses with Content-Type of application/json", - "Media download with context-dependent Content-Type", - "Responses with Content-Type of application/x-protobuf" - ], - "location": "query", - "description": "Data format for response.", - "default": "json" - }, - "access_token": { - "description": "OAuth access token.", - "type": "string", - "location": "query" - }, - "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.", - "type": "string", - "location": "query" - }, - "quotaUser": { - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", - "type": "string", - "location": "query" + }, + "type": "object" } }, + "servicePath": "", + "title": "Google Cloud Functions API", "version": "v1beta2", - "baseUrl": "https://cloudfunctions.googleapis.com/" -} + "version_module": true +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/cloudiot/v1/cloudiot-api.json b/vendor/google.golang.org/api/cloudiot/v1/cloudiot-api.json index f4e856c5d..97c1757f5 100644 --- a/vendor/google.golang.org/api/cloudiot/v1/cloudiot-api.json +++ b/vendor/google.golang.org/api/cloudiot/v1/cloudiot-api.json @@ -1,20 +1,709 @@ { - "servicePath": "", - "kind": "discovery#restDescription", - "description": "Registers and manages IoT (Internet of Things) devices that connect to the Google Cloud Platform.\n", + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/cloud-platform": { + "description": "View and manage your data across Google Cloud Platform services" + }, + "https://www.googleapis.com/auth/cloudiot": { + "description": "Register and manage devices in the Google Cloud IoT service" + } + } + } + }, "basePath": "", - "revision": "20180111", - "documentationLink": "https://cloud.google.com/iot", - "id": "cloudiot:v1", + "baseUrl": "https://cloudiot.googleapis.com/", + "batchPath": "batch", + "canonicalName": "Cloud Iot", + "description": "Registers and manages IoT (Internet of Things) devices that connect to the Google Cloud Platform.\n", "discoveryVersion": "v1", - "version_module": true, + "documentationLink": "https://cloud.google.com/iot", + "fullyEncodeReservedExpansion": true, + "icons": { + "x16": "http://www.google.com/images/icons/product/search-16.gif", + "x32": "http://www.google.com/images/icons/product/search-32.gif" + }, + "id": "cloudiot:v1", + "kind": "discovery#restDescription", + "name": "cloudiot", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "$.xgafv": { + "description": "V1 error format.", + "enum": [ + "1", + "2" + ], + "enumDescriptions": [ + "v1 error format", + "v2 error format" + ], + "location": "query", + "type": "string" + }, + "access_token": { + "description": "OAuth access token.", + "location": "query", + "type": "string" + }, + "alt": { + "default": "json", + "description": "Data format for response.", + "enum": [ + "json", + "media", + "proto" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json", + "Media download with context-dependent Content-Type", + "Responses with Content-Type of application/x-protobuf" + ], + "location": "query", + "type": "string" + }, + "bearer_token": { + "description": "OAuth bearer token.", + "location": "query", + "type": "string" + }, + "callback": { + "description": "JSONP", + "location": "query", + "type": "string" + }, + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "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.", + "location": "query", + "type": "string" + }, + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "pp": { + "default": "true", + "description": "Pretty-print response.", + "location": "query", + "type": "boolean" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", + "location": "query", + "type": "string" + }, + "uploadType": { + "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", + "location": "query", + "type": "string" + }, + "upload_protocol": { + "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", + "location": "query", + "type": "string" + } + }, + "protocol": "rest", + "resources": { + "projects": { + "resources": { + "locations": { + "resources": { + "registries": { + "methods": { + "create": { + "description": "Creates a device registry that contains devices.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/registries", + "httpMethod": "POST", + "id": "cloudiot.projects.locations.registries.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "The project and cloud region where this device registry must be created.\nFor example, `projects/example-project/locations/us-central1`.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+parent}/registries", + "request": { + "$ref": "DeviceRegistry" + }, + "response": { + "$ref": "DeviceRegistry" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloudiot" + ] + }, + "delete": { + "description": "Deletes a device registry configuration.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/registries/{registriesId}", + "httpMethod": "DELETE", + "id": "cloudiot.projects.locations.registries.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the device registry. For example,\n`projects/example-project/locations/us-central1/registries/my-registry`.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/registries/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloudiot" + ] + }, + "get": { + "description": "Gets a device registry configuration.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/registries/{registriesId}", + "httpMethod": "GET", + "id": "cloudiot.projects.locations.registries.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the device registry. For example,\n`projects/example-project/locations/us-central1/registries/my-registry`.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/registries/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "DeviceRegistry" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloudiot" + ] + }, + "getIamPolicy": { + "description": "Gets the access control policy for a resource.\nReturns an empty policy if the resource exists and does not have a policy\nset.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/registries/{registriesId}:getIamPolicy", + "httpMethod": "POST", + "id": "cloudiot.projects.locations.registries.getIamPolicy", + "parameterOrder": [ + "resource" + ], + "parameters": { + "resource": { + "description": "REQUIRED: The resource for which the policy is being requested.\nSee the operation documentation for the appropriate value for this field.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/registries/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+resource}:getIamPolicy", + "request": { + "$ref": "GetIamPolicyRequest" + }, + "response": { + "$ref": "Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloudiot" + ] + }, + "list": { + "description": "Lists device registries.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/registries", + "httpMethod": "GET", + "id": "cloudiot.projects.locations.registries.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "pageSize": { + "description": "The maximum number of registries to return in the response. If this value\nis zero, the service will select a default size. A call may return fewer\nobjects than requested, but if there is a non-empty `page_token`, it\nindicates that more entries are available.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "The value returned by the last `ListDeviceRegistriesResponse`; indicates\nthat this is a continuation of a prior `ListDeviceRegistries` call, and\nthat the system should return the next page of data.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "The project and cloud region path. For example,\n`projects/example-project/locations/us-central1`.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+parent}/registries", + "response": { + "$ref": "ListDeviceRegistriesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloudiot" + ] + }, + "patch": { + "description": "Updates a device registry configuration.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/registries/{registriesId}", + "httpMethod": "PATCH", + "id": "cloudiot.projects.locations.registries.patch", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The resource path name. For example,\n`projects/example-project/locations/us-central1/registries/my-registry`.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/registries/[^/]+$", + "required": true, + "type": "string" + }, + "updateMask": { + "description": "Only updates the `device_registry` fields indicated by this mask.\nThe field mask must not be empty, and it must not contain fields that\nare immutable or only set by the server.\nMutable top-level fields: `event_notification_config`, `http_config`,\n`mqtt_config`, and `state_notification_config`.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + } + }, + "path": "v1/{+name}", + "request": { + "$ref": "DeviceRegistry" + }, + "response": { + "$ref": "DeviceRegistry" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloudiot" + ] + }, + "setIamPolicy": { + "description": "Sets the access control policy on the specified resource. Replaces any\nexisting policy.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/registries/{registriesId}:setIamPolicy", + "httpMethod": "POST", + "id": "cloudiot.projects.locations.registries.setIamPolicy", + "parameterOrder": [ + "resource" + ], + "parameters": { + "resource": { + "description": "REQUIRED: The resource for which the policy is being specified.\nSee the operation documentation for the appropriate value for this field.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/registries/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+resource}:setIamPolicy", + "request": { + "$ref": "SetIamPolicyRequest" + }, + "response": { + "$ref": "Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloudiot" + ] + }, + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource.\nIf the resource does not exist, this will return an empty set of\npermissions, not a NOT_FOUND error.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/registries/{registriesId}:testIamPermissions", + "httpMethod": "POST", + "id": "cloudiot.projects.locations.registries.testIamPermissions", + "parameterOrder": [ + "resource" + ], + "parameters": { + "resource": { + "description": "REQUIRED: The resource for which the policy detail is being requested.\nSee the operation documentation for the appropriate value for this field.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/registries/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+resource}:testIamPermissions", + "request": { + "$ref": "TestIamPermissionsRequest" + }, + "response": { + "$ref": "TestIamPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloudiot" + ] + } + }, + "resources": { + "devices": { + "methods": { + "create": { + "description": "Creates a device in a device registry.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/registries/{registriesId}/devices", + "httpMethod": "POST", + "id": "cloudiot.projects.locations.registries.devices.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "The name of the device registry where this device should be created.\nFor example,\n`projects/example-project/locations/us-central1/registries/my-registry`.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/registries/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+parent}/devices", + "request": { + "$ref": "Device" + }, + "response": { + "$ref": "Device" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloudiot" + ] + }, + "delete": { + "description": "Deletes a device.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/registries/{registriesId}/devices/{devicesId}", + "httpMethod": "DELETE", + "id": "cloudiot.projects.locations.registries.devices.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the device. For example,\n`projects/p0/locations/us-central1/registries/registry0/devices/device0` or\n`projects/p0/locations/us-central1/registries/registry0/devices/{num_id}`.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/registries/[^/]+/devices/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloudiot" + ] + }, + "get": { + "description": "Gets details about a device.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/registries/{registriesId}/devices/{devicesId}", + "httpMethod": "GET", + "id": "cloudiot.projects.locations.registries.devices.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "fieldMask": { + "description": "The fields of the `Device` resource to be returned in the response. If the\nfield mask is unset or empty, all fields are returned.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + }, + "name": { + "description": "The name of the device. For example,\n`projects/p0/locations/us-central1/registries/registry0/devices/device0` or\n`projects/p0/locations/us-central1/registries/registry0/devices/{num_id}`.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/registries/[^/]+/devices/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "Device" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloudiot" + ] + }, + "list": { + "description": "List devices in a device registry.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/registries/{registriesId}/devices", + "httpMethod": "GET", + "id": "cloudiot.projects.locations.registries.devices.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "deviceIds": { + "description": "A list of device string identifiers. If empty, it will ignore this field.\nFor example, `['device0', 'device12']`. This field cannot hold more than\n10,000 entries.", + "location": "query", + "repeated": true, + "type": "string" + }, + "deviceNumIds": { + "description": "A list of device numerical ids. If empty, it will ignore this field. This\nfield cannot hold more than 10,000 entries.", + "format": "uint64", + "location": "query", + "repeated": true, + "type": "string" + }, + "fieldMask": { + "description": "The fields of the `Device` resource to be returned in the response. The\nfields `id`, and `num_id` are always returned by default, along with any\nother fields specified.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "The maximum number of devices to return in the response. If this value\nis zero, the service will select a default size. A call may return fewer\nobjects than requested, but if there is a non-empty `page_token`, it\nindicates that more entries are available.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "The value returned by the last `ListDevicesResponse`; indicates\nthat this is a continuation of a prior `ListDevices` call, and\nthat the system should return the next page of data.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "The device registry path. Required. For example,\n`projects/my-project/locations/us-central1/registries/my-registry`.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/registries/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+parent}/devices", + "response": { + "$ref": "ListDevicesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloudiot" + ] + }, + "modifyCloudToDeviceConfig": { + "description": "Modifies the configuration for the device, which is eventually sent from\nthe Cloud IoT Core servers. Returns the modified configuration version and\nits metadata.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/registries/{registriesId}/devices/{devicesId}:modifyCloudToDeviceConfig", + "httpMethod": "POST", + "id": "cloudiot.projects.locations.registries.devices.modifyCloudToDeviceConfig", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the device. For example,\n`projects/p0/locations/us-central1/registries/registry0/devices/device0` or\n`projects/p0/locations/us-central1/registries/registry0/devices/{num_id}`.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/registries/[^/]+/devices/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}:modifyCloudToDeviceConfig", + "request": { + "$ref": "ModifyCloudToDeviceConfigRequest" + }, + "response": { + "$ref": "DeviceConfig" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloudiot" + ] + }, + "patch": { + "description": "Updates a device.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/registries/{registriesId}/devices/{devicesId}", + "httpMethod": "PATCH", + "id": "cloudiot.projects.locations.registries.devices.patch", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The resource path name. For example,\n`projects/p1/locations/us-central1/registries/registry0/devices/dev0` or\n`projects/p1/locations/us-central1/registries/registry0/devices/{num_id}`.\nWhen `name` is populated as a response from the service, it always ends\nin the device numeric ID.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/registries/[^/]+/devices/[^/]+$", + "required": true, + "type": "string" + }, + "updateMask": { + "description": "Only updates the `device` fields indicated by this mask.\nThe field mask must not be empty, and it must not contain fields that\nare immutable or only set by the server.\nMutable top-level fields: `credentials`, `blocked`, and `metadata`", + "format": "google-fieldmask", + "location": "query", + "type": "string" + } + }, + "path": "v1/{+name}", + "request": { + "$ref": "Device" + }, + "response": { + "$ref": "Device" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloudiot" + ] + } + }, + "resources": { + "configVersions": { + "methods": { + "list": { + "description": "Lists the last few versions of the device configuration in descending\norder (i.e.: newest first).", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/registries/{registriesId}/devices/{devicesId}/configVersions", + "httpMethod": "GET", + "id": "cloudiot.projects.locations.registries.devices.configVersions.list", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the device. For example,\n`projects/p0/locations/us-central1/registries/registry0/devices/device0` or\n`projects/p0/locations/us-central1/registries/registry0/devices/{num_id}`.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/registries/[^/]+/devices/[^/]+$", + "required": true, + "type": "string" + }, + "numVersions": { + "description": "The number of versions to list. Versions are listed in decreasing order of\nthe version number. The maximum number of versions retained is 10. If this\nvalue is zero, it will return all the versions available.", + "format": "int32", + "location": "query", + "type": "integer" + } + }, + "path": "v1/{+name}/configVersions", + "response": { + "$ref": "ListDeviceConfigVersionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloudiot" + ] + } + } + }, + "states": { + "methods": { + "list": { + "description": "Lists the last few versions of the device state in descending order (i.e.:\nnewest first).", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/registries/{registriesId}/devices/{devicesId}/states", + "httpMethod": "GET", + "id": "cloudiot.projects.locations.registries.devices.states.list", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the device. For example,\n`projects/p0/locations/us-central1/registries/registry0/devices/device0` or\n`projects/p0/locations/us-central1/registries/registry0/devices/{num_id}`.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/registries/[^/]+/devices/[^/]+$", + "required": true, + "type": "string" + }, + "numStates": { + "description": "The number of states to list. States are listed in descending order of\nupdate time. The maximum number of states retained is 10. If this\nvalue is zero, it will return all the states available.", + "format": "int32", + "location": "query", + "type": "integer" + } + }, + "path": "v1/{+name}/states", + "response": { + "$ref": "ListDeviceStatesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloudiot" + ] + } + } + } + } + } + } + } + } + } + } + } + }, + "revision": "20180314", + "rootUrl": "https://cloudiot.googleapis.com/", "schemas": { + "Binding": { + "description": "Associates `members` with a `role`.", + "id": "Binding", + "properties": { + "members": { + "description": "Specifies the identities requesting access for a Cloud Platform resource.\n`members` can have the following values:\n\n* `allUsers`: A special identifier that represents anyone who is\n on the internet; with or without a Google account.\n\n* `allAuthenticatedUsers`: A special identifier that represents anyone\n who is authenticated with a Google account or a service account.\n\n* `user:{emailid}`: An email address that represents a specific Google\n account. For example, `alice@gmail.com` or `joe@example.com`.\n\n\n* `serviceAccount:{emailid}`: An email address that represents a service\n account. For example, `my-other-app@appspot.gserviceaccount.com`.\n\n* `group:{emailid}`: An email address that represents a Google group.\n For example, `admins@example.com`.\n\n\n* `domain:{domain}`: A Google Apps domain name that represents all the\n users of that domain. For example, `google.com` or `example.com`.\n\n", + "items": { + "type": "string" + }, + "type": "array" + }, + "role": { + "description": "Role that is assigned to `members`.\nFor example, `roles/viewer`, `roles/editor`, or `roles/owner`.\nRequired", + "type": "string" + } + }, + "type": "object" + }, "Device": { "description": "The device resource.", - "type": "object", + "id": "Device", "properties": { - "lastEventTime": { - "description": "[Output only] The last time a telemetry event was received. Timestamps are\nperiodically collected and written to storage; they may be stale by a few\nminutes.", + "blocked": { + "description": "If a device is blocked, connections or requests from this device will fail.\nCan be used to temporarily prevent the device from connecting if, for\nexample, the sensor is generating bad data and needs maintenance.", + "type": "boolean" + }, + "config": { + "$ref": "DeviceConfig", + "description": "The most recent device configuration, which is eventually sent from\nCloud IoT Core to the device. If not present on creation, the\nconfiguration will be initialized with an empty payload and version value\nof `1`. To update this field after creation, use the\n`DeviceManager.ModifyCloudToDeviceConfig` method." + }, + "credentials": { + "description": "The credentials used to authenticate this device. To allow credential\nrotation without interruption, multiple device credentials can be bound to\nthis device. No more than 3 credentials can be bound to a single device at\na time. When new credentials are added to a device, they are verified\nagainst the registry credentials. For details, see the description of the\n`DeviceRegistry.credentials` field.", + "items": { + "$ref": "DeviceCredential" + }, + "type": "array" + }, + "id": { + "description": "The user-defined device identifier. The device ID must be unique\nwithin a device registry.", + "type": "string" + }, + "lastConfigAckTime": { + "description": "[Output only] The last time a cloud-to-device config version acknowledgment\nwas received from the device. This field is only for configurations\nsent through MQTT.", "format": "google-datetime", "type": "string" }, @@ -27,32 +716,23 @@ "$ref": "Status", "description": "[Output only] The error message of the most recent error, such as a failure\nto publish to Cloud Pub/Sub. 'last_error_time' is the timestamp of this\nfield. If no errors have occurred, this field has an empty message\nand the status code 0 == OK. Otherwise, this field is expected to have a\nstatus code other than OK." }, - "lastStateTime": { - "description": "[Output only] The last time a state event was received. Timestamps are\nperiodically collected and written to storage; they may be stale by a few\nminutes.", + "lastErrorTime": { + "description": "[Output only] The time the most recent error occurred, such as a failure to\npublish to Cloud Pub/Sub. This field is the timestamp of\n'last_error_status'.", "format": "google-datetime", "type": "string" }, - "state": { - "$ref": "DeviceState", - "description": "[Output only] The state most recently received from the device. If no state\nhas been reported, this field is not present." - }, - "config": { - "$ref": "DeviceConfig", - "description": "The most recent device configuration, which is eventually sent from\nCloud IoT Core to the device. If not present on creation, the\nconfiguration will be initialized with an empty payload and version value\nof `1`. To update this field after creation, use the\n`DeviceManager.ModifyCloudToDeviceConfig` method." - }, - "credentials": { - "description": "The credentials used to authenticate this device. To allow credential\nrotation without interruption, multiple device credentials can be bound to\nthis device. No more than 3 credentials can be bound to a single device at\na time. When new credentials are added to a device, they are verified\nagainst the registry credentials. For details, see the description of the\n`DeviceRegistry.credentials` field.", - "type": "array", - "items": { - "$ref": "DeviceCredential" - } - }, - "name": { - "description": "The resource path name. For example,\n`projects/p1/locations/us-central1/registries/registry0/devices/dev0` or\n`projects/p1/locations/us-central1/registries/registry0/devices/{num_id}`.\nWhen `name` is populated as a response from the service, it always ends\nin the device numeric ID.", + "lastEventTime": { + "description": "[Output only] The last time a telemetry event was received. Timestamps are\nperiodically collected and written to storage; they may be stale by a few\nminutes.", + "format": "google-datetime", "type": "string" }, - "lastErrorTime": { - "description": "[Output only] The time the most recent error occurred, such as a failure to\npublish to Cloud Pub/Sub. This field is the timestamp of\n'last_error_status'.", + "lastHeartbeatTime": { + "description": "[Output only] The last time an MQTT `PINGREQ` was received. This field\napplies only to devices connecting through MQTT. MQTT clients usually only\nsend `PINGREQ` messages if the connection is idle, and no other messages\nhave been sent. Timestamps are periodically collected and written to\nstorage; they may be stale by a few minutes.", + "format": "google-datetime", + "type": "string" + }, + "lastStateTime": { + "description": "[Output only] The last time a state event was received. Timestamps are\nperiodically collected and written to storage; they may be stale by a few\nminutes.", "format": "google-datetime", "type": "string" }, @@ -60,16 +740,11 @@ "additionalProperties": { "type": "string" }, - "description": "The metadata key-value pairs assigned to the device. This metadata is not\ninterpreted or indexed by Cloud IoT Core. It can be used to add contextual\ninformation for the device.\n\nKeys must conform to the regular expression [a-zA-Z0-9-_]+ and be less than\n128 bytes in length.\n\nValues are free-form strings. Each value must be less than or equal to 32\nKB in size.\n\nThe total size of all keys and values must be less than 256 KB, and the\nmaximum number of key-value pairs is 500.", + "description": "The metadata key-value pairs assigned to the device. This metadata is not\ninterpreted or indexed by Cloud IoT Core. It can be used to add contextual\ninformation for the device.\n\nKeys must conform to the regular expression a-zA-Z+ and\nbe less than 128 bytes in length.\n\nValues are free-form strings. Each value must be less than or equal to 32\nKB in size.\n\nThe total size of all keys and values must be less than 256 KB, and the\nmaximum number of key-value pairs is 500.", "type": "object" }, - "id": { - "type": "string", - "description": "The user-defined device identifier. The device ID must be unique\nwithin a device registry." - }, - "lastConfigAckTime": { - "description": "[Output only] The last time a cloud-to-device config version acknowledgment\nwas received from the device. This field is only for configurations\nsent through MQTT.", - "format": "google-datetime", + "name": { + "description": "The resource path name. For example,\n`projects/p1/locations/us-central1/registries/registry0/devices/dev0` or\n`projects/p1/locations/us-central1/registries/registry0/devices/{num_id}`.\nWhen `name` is populated as a response from the service, it always ends\nin the device numeric ID.", "type": "string" }, "numId": { @@ -77,415 +752,20 @@ "format": "uint64", "type": "string" }, - "blocked": { - "description": "If a device is blocked, connections or requests from this device will fail.\nCan be used to temporarily prevent the device from connecting if, for\nexample, the sensor is generating bad data and needs maintenance.", - "type": "boolean" - }, - "lastHeartbeatTime": { - "description": "[Output only] The last time a heartbeat was received. Timestamps are\nperiodically collected and written to storage; they may be stale by a few\nminutes. This field is only for devices connecting through MQTT.", - "format": "google-datetime", - "type": "string" + "state": { + "$ref": "DeviceState", + "description": "[Output only] The state most recently received from the device. If no state\nhas been reported, this field is not present." } }, - "id": "Device" - }, - "ListDeviceConfigVersionsResponse": { - "description": "Response for `ListDeviceConfigVersions`.", - "type": "object", - "properties": { - "deviceConfigs": { - "description": "The device configuration for the last few versions. Versions are listed\nin decreasing order, starting from the most recent one.", - "type": "array", - "items": { - "$ref": "DeviceConfig" - } - } - }, - "id": "ListDeviceConfigVersionsResponse" - }, - "X509CertificateDetails": { - "type": "object", - "properties": { - "publicKeyType": { - "description": "The type of public key in the certificate.", - "type": "string" - }, - "signatureAlgorithm": { - "type": "string", - "description": "The algorithm used to sign the certificate." - }, - "startTime": { - "description": "The time the certificate becomes valid.", - "format": "google-datetime", - "type": "string" - }, - "expiryTime": { - "type": "string", - "description": "The time the certificate becomes invalid.", - "format": "google-datetime" - }, - "subject": { - "description": "The entity the certificate and public key belong to.", - "type": "string" - }, - "issuer": { - "description": "The entity that signed the certificate.", - "type": "string" - } - }, - "id": "X509CertificateDetails", - "description": "Details of an X.509 certificate. For informational purposes only." - }, - "EventNotificationConfig": { - "description": "The configuration to forward telemetry events.", - "type": "object", - "properties": { - "pubsubTopicName": { - "description": "A Cloud Pub/Sub topic name. For example,\n`projects/myProject/topics/deviceEvents`.", - "type": "string" - } - }, - "id": "EventNotificationConfig" - }, - "SetIamPolicyRequest": { - "description": "Request message for `SetIamPolicy` method.", - "type": "object", - "properties": { - "policy": { - "$ref": "Policy", - "description": "REQUIRED: The complete policy to be applied to the `resource`. The size of\nthe policy is limited to a few 10s of KB. An empty policy is a\nvalid policy but certain Cloud Platform services (such as Projects)\nmight reject them." - }, - "updateMask": { - "description": "OPTIONAL: A FieldMask specifying which fields of the policy to modify. Only\nthe fields in the mask will be modified. If no mask is provided, the\nfollowing default mask is used:\npaths: \"bindings, etag\"\nThis field is only used by Cloud IAM.", - "format": "google-fieldmask", - "type": "string" - } - }, - "id": "SetIamPolicyRequest" - }, - "Empty": { - "type": "object", - "properties": {}, - "id": "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 `{}`." - }, - "PublicKeyCredential": { - "description": "A public key format and data.", - "type": "object", - "properties": { - "key": { - "description": "The key data.", - "type": "string" - }, - "format": { - "enumDescriptions": [ - "The format has not been specified. This is an invalid default value and\nmust not be used.", - "An RSA public key encoded in base64, and wrapped by\n`-----BEGIN PUBLIC KEY-----` and `-----END PUBLIC KEY-----`. This can be\nused to verify `RS256` signatures in JWT tokens ([RFC7518](\nhttps://www.ietf.org/rfc/rfc7518.txt)).", - "As RSA_PEM, but wrapped in an X.509v3 certificate ([RFC5280](\nhttps://www.ietf.org/rfc/rfc5280.txt)), encoded in base64, and wrapped by\n`-----BEGIN CERTIFICATE-----` and `-----END CERTIFICATE-----`.", - "Public key for the ECDSA algorithm using P-256 and SHA-256, encoded in\nbase64, and wrapped by `-----BEGIN PUBLIC KEY-----` and `-----END\nPUBLIC KEY-----`. This can be used to verify JWT tokens with the `ES256`\nalgorithm ([RFC7518](https://www.ietf.org/rfc/rfc7518.txt)). This curve is\ndefined in [OpenSSL](https://www.openssl.org/) as the `prime256v1` curve.", - "As ES256_PEM, but wrapped in an X.509v3 certificate ([RFC5280](\nhttps://www.ietf.org/rfc/rfc5280.txt)), encoded in base64, and wrapped by\n`-----BEGIN CERTIFICATE-----` and `-----END CERTIFICATE-----`." - ], - "enum": [ - "UNSPECIFIED_PUBLIC_KEY_FORMAT", - "RSA_PEM", - "RSA_X509_PEM", - "ES256_PEM", - "ES256_X509_PEM" - ], - "description": "The format of the key.", - "type": "string" - } - }, - "id": "PublicKeyCredential" - }, - "PublicKeyCertificate": { - "type": "object", - "properties": { - "x509Details": { - "$ref": "X509CertificateDetails", - "description": "[Output only] The certificate details. Used only for X.509 certificates." - }, - "format": { - "description": "The certificate format.", - "type": "string", - "enumDescriptions": [ - "The format has not been specified. This is an invalid default value and\nmust not be used.", - "An X.509v3 certificate ([RFC5280](https://www.ietf.org/rfc/rfc5280.txt)),\nencoded in base64, and wrapped by `-----BEGIN CERTIFICATE-----` and\n`-----END CERTIFICATE-----`." - ], - "enum": [ - "UNSPECIFIED_PUBLIC_KEY_CERTIFICATE_FORMAT", - "X509_CERTIFICATE_PEM" - ] - }, - "certificate": { - "description": "The certificate data.", - "type": "string" - } - }, - "id": "PublicKeyCertificate", - "description": "A public key certificate format and data." - }, - "DeviceState": { - "description": "The device state, as reported by the device.", - "type": "object", - "properties": { - "binaryData": { - "description": "The device state data.", - "format": "byte", - "type": "string" - }, - "updateTime": { - "description": "[Output only] The time at which this state version was updated in Cloud\nIoT Core.", - "format": "google-datetime", - "type": "string" - } - }, - "id": "DeviceState" - }, - "AuditLogConfig": { - "description": "Provides the configuration for logging a type of permissions.\nExample:\n\n {\n \"audit_log_configs\": [\n {\n \"log_type\": \"DATA_READ\",\n \"exempted_members\": [\n \"user:foo@gmail.com\"\n ]\n },\n {\n \"log_type\": \"DATA_WRITE\",\n }\n ]\n }\n\nThis enables 'DATA_READ' and 'DATA_WRITE' logging, while exempting\nfoo@gmail.com from DATA_READ logging.", - "type": "object", - "properties": { - "exemptedMembers": { - "description": "Specifies the identities that do not cause logging for this type of\npermission.\nFollows the same format of Binding.members.", - "type": "array", - "items": { - "type": "string" - } - }, - "logType": { - "enumDescriptions": [ - "Default case. Should never be this.", - "Admin reads. Example: CloudIAM getIamPolicy", - "Data writes. Example: CloudSQL Users create", - "Data reads. Example: CloudSQL Users list" - ], - "enum": [ - "LOG_TYPE_UNSPECIFIED", - "ADMIN_READ", - "DATA_WRITE", - "DATA_READ" - ], - "description": "The log type that this config enables.", - "type": "string" - } - }, - "id": "AuditLogConfig" - }, - "StateNotificationConfig": { - "type": "object", - "properties": { - "pubsubTopicName": { - "description": "A Cloud Pub/Sub topic name. For example,\n`projects/myProject/topics/deviceEvents`.", - "type": "string" - } - }, - "id": "StateNotificationConfig", - "description": "The configuration for notification of new states received from the device." - }, - "TestIamPermissionsRequest": { - "description": "Request message for `TestIamPermissions` method.", - "type": "object", - "properties": { - "permissions": { - "description": "The set of permissions to check for the `resource`. Permissions with\nwildcards (such as '*' or 'storage.*') are not allowed. For more\ninformation see\n[IAM Overview](https://cloud.google.com/iam/docs/overview#permissions).", - "type": "array", - "items": { - "type": "string" - } - } - }, - "id": "TestIamPermissionsRequest" - }, - "Policy": { - "properties": { - "etag": { - "description": "`etag` is used for optimistic concurrency control as a way to help\nprevent simultaneous updates of a policy from overwriting each other.\nIt is strongly suggested that systems make use of the `etag` in the\nread-modify-write cycle to perform policy updates in order to avoid race\nconditions: An `etag` is returned in the response to `getIamPolicy`, and\nsystems are expected to put that etag in the request to `setIamPolicy` to\nensure that their change will be applied to the same version of the policy.\n\nIf no `etag` is provided in the call to `setIamPolicy`, then the existing\npolicy is overwritten blindly.", - "format": "byte", - "type": "string" - }, - "version": { - "description": "Deprecated.", - "format": "int32", - "type": "integer" - }, - "auditConfigs": { - "description": "Specifies cloud audit logging configuration for this policy.", - "type": "array", - "items": { - "$ref": "AuditConfig" - } - }, - "bindings": { - "description": "Associates a list of `members` to a `role`.\n`bindings` with no members will result in an error.", - "type": "array", - "items": { - "$ref": "Binding" - } - }, - "iamOwned": { - "type": "boolean" - } - }, - "id": "Policy", - "description": "Defines an Identity and Access Management (IAM) policy. It is used to\nspecify access control policies for Cloud Platform resources.\n\n\nA `Policy` consists of a list of `bindings`. A `Binding` binds a list of\n`members` to a `role`, where the members can be user accounts, Google groups,\nGoogle domains, and service accounts. A `role` is a named list of permissions\ndefined by IAM.\n\n**Example**\n\n {\n \"bindings\": [\n {\n \"role\": \"roles/owner\",\n \"members\": [\n \"user:mike@example.com\",\n \"group:admins@example.com\",\n \"domain:google.com\",\n \"serviceAccount:my-other-app@appspot.gserviceaccount.com\",\n ]\n },\n {\n \"role\": \"roles/viewer\",\n \"members\": [\"user:sean@example.com\"]\n }\n ]\n }\n\nFor a description of IAM and its features, see the\n[IAM developer's guide](https://cloud.google.com/iam/docs).", "type": "object" }, - "RegistryCredential": { - "description": "A server-stored registry credential used to validate device credentials.", - "type": "object", - "properties": { - "publicKeyCertificate": { - "$ref": "PublicKeyCertificate", - "description": "A public key certificate used to verify the device credentials." - } - }, - "id": "RegistryCredential" - }, - "ListDeviceRegistriesResponse": { - "description": "Response for `ListDeviceRegistries`.", - "type": "object", - "properties": { - "deviceRegistries": { - "description": "The registries that matched the query.", - "type": "array", - "items": { - "$ref": "DeviceRegistry" - } - }, - "nextPageToken": { - "description": "If not empty, indicates that there may be more registries that match the\nrequest; this value should be passed in a new\n`ListDeviceRegistriesRequest`.", - "type": "string" - } - }, - "id": "ListDeviceRegistriesResponse" - }, - "DeviceRegistry": { - "properties": { - "mqttConfig": { - "$ref": "MqttConfig", - "description": "The MQTT configuration for this device registry." - }, - "stateNotificationConfig": { - "$ref": "StateNotificationConfig", - "description": "The configuration for notification of new states received from the device.\nState updates are guaranteed to be stored in the state history, but\nnotifications to Cloud Pub/Sub are not guaranteed. For example, if\npermissions are misconfigured or the specified topic doesn't exist, no\nnotification will be published but the state will still be stored in Cloud\nIoT Core." - }, - "credentials": { - "description": "The credentials used to verify the device credentials. No more than 10\ncredentials can be bound to a single registry at a time. The verification\nprocess occurs at the time of device creation or update. If this field is\nempty, no verification is performed. Otherwise, the credentials of a newly\ncreated device or added credentials of an updated device should be signed\nwith one of these registry credentials.\n\nNote, however, that existing devices will never be affected by\nmodifications to this list of credentials: after a device has been\nsuccessfully created in a registry, it should be able to connect even if\nits registry credentials are revoked, deleted, or modified.", - "type": "array", - "items": { - "$ref": "RegistryCredential" - } - }, - "name": { - "description": "The resource path name. For example,\n`projects/example-project/locations/us-central1/registries/my-registry`.", - "type": "string" - }, - "eventNotificationConfigs": { - "description": "The configuration for notification of telemetry events received from the\ndevice. All telemetry events that were successfully published by the\ndevice and acknowledged by Cloud IoT Core are guaranteed to be\ndelivered to Cloud Pub/Sub. Only the first configuration is used. If you\ntry to publish a device telemetry event using MQTT without specifying a\nCloud Pub/Sub topic for the device's registry, the connection closes\nautomatically. If you try to do so using an HTTP connection, an error\nis returned.", - "type": "array", - "items": { - "$ref": "EventNotificationConfig" - } - }, - "httpConfig": { - "$ref": "HttpConfig", - "description": "The DeviceService (HTTP) configuration for this device registry." - }, - "id": { - "type": "string", - "description": "The identifier of this device registry. For example, `myRegistry`." - } - }, - "id": "DeviceRegistry", - "description": "A container for a group of devices.", - "type": "object" - }, - "ListDevicesResponse": { - "properties": { - "devices": { - "type": "array", - "items": { - "$ref": "Device" - }, - "description": "The devices that match the request." - }, - "nextPageToken": { - "description": "If not empty, indicates that there may be more devices that match the\nrequest; this value should be passed in a new `ListDevicesRequest`.", - "type": "string" - } - }, - "id": "ListDevicesResponse", - "description": "Response for `ListDevices`.", - "type": "object" - }, - "AuditConfig": { - "description": "Specifies the audit configuration for a service.\nThe configuration determines which permission types are logged, and what\nidentities, if any, are exempted from logging.\nAn AuditConfig must have one or more AuditLogConfigs.\n\nIf there are AuditConfigs for both `allServices` and a specific service,\nthe union of the two AuditConfigs is used for that service: the log_types\nspecified in each AuditConfig are enabled, and the exempted_members in each\nAuditConfig are exempted.\n\nExample Policy with multiple AuditConfigs:\n\n {\n \"audit_configs\": [\n {\n \"service\": \"allServices\"\n \"audit_log_configs\": [\n {\n \"log_type\": \"DATA_READ\",\n \"exempted_members\": [\n \"user:foo@gmail.com\"\n ]\n },\n {\n \"log_type\": \"DATA_WRITE\",\n },\n {\n \"log_type\": \"ADMIN_READ\",\n }\n ]\n },\n {\n \"service\": \"fooservice.googleapis.com\"\n \"audit_log_configs\": [\n {\n \"log_type\": \"DATA_READ\",\n },\n {\n \"log_type\": \"DATA_WRITE\",\n \"exempted_members\": [\n \"user:bar@gmail.com\"\n ]\n }\n ]\n }\n ]\n }\n\nFor fooservice, this policy enables DATA_READ, DATA_WRITE and ADMIN_READ\nlogging. It also exempts foo@gmail.com from DATA_READ logging, and\nbar@gmail.com from DATA_WRITE logging.", - "type": "object", - "properties": { - "auditLogConfigs": { - "description": "The configuration for logging of each type of permission.\nNext ID: 4", - "type": "array", - "items": { - "$ref": "AuditLogConfig" - } - }, - "exemptedMembers": { - "type": "array", - "items": { - "type": "string" - } - }, - "service": { - "description": "Specifies a service that will be enabled for audit logging.\nFor example, `storage.googleapis.com`, `cloudsql.googleapis.com`.\n`allServices` is a special value that covers all services.", - "type": "string" - } - }, - "id": "AuditConfig" - }, - "HttpConfig": { - "description": "The configuration of the HTTP bridge for a device registry.", - "type": "object", - "properties": { - "httpEnabledState": { - "enum": [ - "HTTP_STATE_UNSPECIFIED", - "HTTP_ENABLED", - "HTTP_DISABLED" - ], - "description": "If enabled, allows devices to use DeviceService via the HTTP protocol.\nOtherwise, any requests to DeviceService will fail for this registry.", - "type": "string", - "enumDescriptions": [ - "No HTTP state specified. If not specified, DeviceService will be\nenabled by default.", - "Enables DeviceService (HTTP) service for the registry.", - "Disables DeviceService (HTTP) service for the registry." - ] - } - }, - "id": "HttpConfig" - }, - "DeviceCredential": { - "description": "A server-stored device credential used for authentication.", - "type": "object", - "properties": { - "expirationTime": { - "description": "[Optional] The time at which this credential becomes invalid. This\ncredential will be ignored for new client authentication requests after\nthis timestamp; however, it will not be automatically deleted.", - "format": "google-datetime", - "type": "string" - }, - "publicKey": { - "description": "A public key used to verify the signature of JSON Web Tokens (JWTs).\nWhen adding a new device credential, either via device creation or via\nmodifications, this public key credential may be required to be signed by\none of the registry level certificates. More specifically, if the\nregistry contains at least one certificate, any new device credential\nmust be signed by one of the registry certificates. As a result,\nwhen the registry contains certificates, only X.509 certificates are\naccepted as device credentials. However, if the registry does\nnot contain a certificate, self-signed certificates and public keys will\nbe accepted. New device credentials must be different from every\nregistry-level certificate.", - "$ref": "PublicKeyCredential" - } - }, - "id": "DeviceCredential" - }, "DeviceConfig": { - "type": "object", + "description": "The device configuration. Eventually delivered to devices.", + "id": "DeviceConfig", "properties": { - "version": { - "description": "[Output only] The version of this update. The version number is assigned by\nthe server, and is always greater than 0 after device creation. The\nversion must be 0 on the `CreateDevice` request if a `config` is\nspecified; the response of `CreateDevice` will always have a value of 1.", - "format": "int64", + "binaryData": { + "description": "The device configuration data.", + "format": "byte", "type": "string" }, "cloudUpdateTime": { @@ -498,814 +778,442 @@ "format": "google-datetime", "type": "string" }, - "binaryData": { - "description": "The device configuration data.", - "format": "byte", + "version": { + "description": "[Output only] The version of this update. The version number is assigned by\nthe server, and is always greater than 0 after device creation. The\nversion must be 0 on the `CreateDevice` request if a `config` is\nspecified; the response of `CreateDevice` will always have a value of 1.", + "format": "int64", "type": "string" } }, - "id": "DeviceConfig", - "description": "The device configuration. Eventually delivered to devices." + "type": "object" + }, + "DeviceCredential": { + "description": "A server-stored device credential used for authentication.", + "id": "DeviceCredential", + "properties": { + "expirationTime": { + "description": "[Optional] The time at which this credential becomes invalid. This\ncredential will be ignored for new client authentication requests after\nthis timestamp; however, it will not be automatically deleted.", + "format": "google-datetime", + "type": "string" + }, + "publicKey": { + "$ref": "PublicKeyCredential", + "description": "A public key used to verify the signature of JSON Web Tokens (JWTs).\nWhen adding a new device credential, either via device creation or via\nmodifications, this public key credential may be required to be signed by\none of the registry level certificates. More specifically, if the\nregistry contains at least one certificate, any new device credential\nmust be signed by one of the registry certificates. As a result,\nwhen the registry contains certificates, only X.509 certificates are\naccepted as device credentials. However, if the registry does\nnot contain a certificate, self-signed certificates and public keys will\nbe accepted. New device credentials must be different from every\nregistry-level certificate." + } + }, + "type": "object" + }, + "DeviceRegistry": { + "description": "A container for a group of devices.", + "id": "DeviceRegistry", + "properties": { + "credentials": { + "description": "The credentials used to verify the device credentials. No more than 10\ncredentials can be bound to a single registry at a time. The verification\nprocess occurs at the time of device creation or update. If this field is\nempty, no verification is performed. Otherwise, the credentials of a newly\ncreated device or added credentials of an updated device should be signed\nwith one of these registry credentials.\n\nNote, however, that existing devices will never be affected by\nmodifications to this list of credentials: after a device has been\nsuccessfully created in a registry, it should be able to connect even if\nits registry credentials are revoked, deleted, or modified.", + "items": { + "$ref": "RegistryCredential" + }, + "type": "array" + }, + "eventNotificationConfigs": { + "description": "The configuration for notification of telemetry events received from the\ndevice. All telemetry events that were successfully published by the\ndevice and acknowledged by Cloud IoT Core are guaranteed to be\ndelivered to Cloud Pub/Sub. If multiple configurations match a message,\nonly the first matching configuration is used. If you try to publish a\ndevice telemetry event using MQTT without specifying a Cloud Pub/Sub topic\nfor the device's registry, the connection closes automatically. If you try\nto do so using an HTTP connection, an error is returned. Up to 10\nconfigurations may be provided.", + "items": { + "$ref": "EventNotificationConfig" + }, + "type": "array" + }, + "httpConfig": { + "$ref": "HttpConfig", + "description": "The DeviceService (HTTP) configuration for this device registry." + }, + "id": { + "description": "The identifier of this device registry. For example, `myRegistry`.", + "type": "string" + }, + "mqttConfig": { + "$ref": "MqttConfig", + "description": "The MQTT configuration for this device registry." + }, + "name": { + "description": "The resource path name. For example,\n`projects/example-project/locations/us-central1/registries/my-registry`.", + "type": "string" + }, + "stateNotificationConfig": { + "$ref": "StateNotificationConfig", + "description": "The configuration for notification of new states received from the device.\nState updates are guaranteed to be stored in the state history, but\nnotifications to Cloud Pub/Sub are not guaranteed. For example, if\npermissions are misconfigured or the specified topic doesn't exist, no\nnotification will be published but the state will still be stored in Cloud\nIoT Core." + } + }, + "type": "object" + }, + "DeviceState": { + "description": "The device state, as reported by the device.", + "id": "DeviceState", + "properties": { + "binaryData": { + "description": "The device state data.", + "format": "byte", + "type": "string" + }, + "updateTime": { + "description": "[Output only] The time at which this state version was updated in Cloud\nIoT Core.", + "format": "google-datetime", + "type": "string" + } + }, + "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" + }, + "EventNotificationConfig": { + "description": "The configuration for forwarding telemetry events.", + "id": "EventNotificationConfig", + "properties": { + "pubsubTopicName": { + "description": "A Cloud Pub/Sub topic name. For example,\n`projects/myProject/topics/deviceEvents`.", + "type": "string" + }, + "subfolderMatches": { + "description": "If the subfolder name matches this string exactly, this configuration will\nbe used. The string must not include the leading '/' character. If empty,\nall strings are matched. This field is used only for telemetry events;\nsubfolders are not supported for state changes.", + "type": "string" + } + }, + "type": "object" + }, + "GetIamPolicyRequest": { + "description": "Request message for `GetIamPolicy` method.", + "id": "GetIamPolicyRequest", + "properties": {}, + "type": "object" + }, + "HttpConfig": { + "description": "The configuration of the HTTP bridge for a device registry.", + "id": "HttpConfig", + "properties": { + "httpEnabledState": { + "description": "If enabled, allows devices to use DeviceService via the HTTP protocol.\nOtherwise, any requests to DeviceService will fail for this registry.", + "enum": [ + "HTTP_STATE_UNSPECIFIED", + "HTTP_ENABLED", + "HTTP_DISABLED" + ], + "enumDescriptions": [ + "No HTTP state specified. If not specified, DeviceService will be\nenabled by default.", + "Enables DeviceService (HTTP) service for the registry.", + "Disables DeviceService (HTTP) service for the registry." + ], + "type": "string" + } + }, + "type": "object" + }, + "ListDeviceConfigVersionsResponse": { + "description": "Response for `ListDeviceConfigVersions`.", + "id": "ListDeviceConfigVersionsResponse", + "properties": { + "deviceConfigs": { + "description": "The device configuration for the last few versions. Versions are listed\nin decreasing order, starting from the most recent one.", + "items": { + "$ref": "DeviceConfig" + }, + "type": "array" + } + }, + "type": "object" + }, + "ListDeviceRegistriesResponse": { + "description": "Response for `ListDeviceRegistries`.", + "id": "ListDeviceRegistriesResponse", + "properties": { + "deviceRegistries": { + "description": "The registries that matched the query.", + "items": { + "$ref": "DeviceRegistry" + }, + "type": "array" + }, + "nextPageToken": { + "description": "If not empty, indicates that there may be more registries that match the\nrequest; this value should be passed in a new\n`ListDeviceRegistriesRequest`.", + "type": "string" + } + }, + "type": "object" + }, + "ListDeviceStatesResponse": { + "description": "Response for `ListDeviceStates`.", + "id": "ListDeviceStatesResponse", + "properties": { + "deviceStates": { + "description": "The last few device states. States are listed in descending order of server\nupdate time, starting from the most recent one.", + "items": { + "$ref": "DeviceState" + }, + "type": "array" + } + }, + "type": "object" + }, + "ListDevicesResponse": { + "description": "Response for `ListDevices`.", + "id": "ListDevicesResponse", + "properties": { + "devices": { + "description": "The devices that match the request.", + "items": { + "$ref": "Device" + }, + "type": "array" + }, + "nextPageToken": { + "description": "If not empty, indicates that there may be more devices that match the\nrequest; this value should be passed in a new `ListDevicesRequest`.", + "type": "string" + } + }, + "type": "object" + }, + "ModifyCloudToDeviceConfigRequest": { + "description": "Request for `ModifyCloudToDeviceConfig`.", + "id": "ModifyCloudToDeviceConfigRequest", + "properties": { + "binaryData": { + "description": "The configuration data for the device.", + "format": "byte", + "type": "string" + }, + "versionToUpdate": { + "description": "The version number to update. If this value is zero, it will not check the\nversion number of the server and will always update the current version;\notherwise, this update will fail if the version number found on the server\ndoes not match this version number. This is used to support multiple\nsimultaneous updates without losing data.", + "format": "int64", + "type": "string" + } + }, + "type": "object" }, "MqttConfig": { "description": "The configuration of MQTT for a device registry.", - "type": "object", + "id": "MqttConfig", "properties": { "mqttEnabledState": { - "enumDescriptions": [ - "No MQTT state specified. If not specified, MQTT will be enabled by default.", - "Enables a MQTT connection.", - "Disables a MQTT connection." - ], + "description": "If enabled, allows connections using the MQTT protocol. Otherwise, MQTT\nconnections to this registry will fail.", "enum": [ "MQTT_STATE_UNSPECIFIED", "MQTT_ENABLED", "MQTT_DISABLED" ], - "description": "If enabled, allows connections using the MQTT protocol. Otherwise, MQTT\nconnections to this registry will fail.", + "enumDescriptions": [ + "No MQTT state specified. If not specified, MQTT will be enabled by default.", + "Enables a MQTT connection.", + "Disables a MQTT connection." + ], "type": "string" } }, - "id": "MqttConfig" + "type": "object" }, - "Status": { - "description": "The `Status` type defines a logical error model that is suitable for different\nprogramming environments, including REST APIs and RPC APIs. It is used by\n[gRPC](https://github.com/grpc). The error model is designed to be:\n\n- Simple to use and understand for most users\n- Flexible enough to meet unexpected needs\n\n# Overview\n\nThe `Status` message contains three pieces of data: error code, error message,\nand error details. The error code should be an enum value of\ngoogle.rpc.Code, but it may accept additional error codes if needed. The\nerror message should be a developer-facing English message that helps\ndevelopers *understand* and *resolve* the error. If a localized user-facing\nerror message is needed, put the localized message in the error details or\nlocalize it in the client. The optional error details may contain arbitrary\ninformation about the error. There is a predefined set of error detail types\nin the package `google.rpc` that can be used for common error conditions.\n\n# Language mapping\n\nThe `Status` message is the logical representation of the error model, but it\nis not necessarily the actual wire format. When the `Status` message is\nexposed in different client libraries and different wire protocols, it can be\nmapped differently. For example, it will likely be mapped to some exceptions\nin Java, but more likely mapped to some error codes in C.\n\n# Other uses\n\nThe error model and the `Status` message can be used in a variety of\nenvironments, either with or without APIs, to provide a\nconsistent developer experience across different environments.\n\nExample uses of this error model include:\n\n- Partial errors. If a service needs to return partial errors to the client,\n it may embed the `Status` in the normal response to indicate the partial\n errors.\n\n- Workflow errors. A typical workflow has multiple steps. Each step may\n have a `Status` message for error reporting.\n\n- Batch operations. If a client uses batch request and batch response, the\n `Status` message should be used directly inside batch response, one for\n each error sub-response.\n\n- Asynchronous operations. If an API call embeds asynchronous operation\n results in its response, the status of those operations should be\n represented directly using the `Status` message.\n\n- Logging. If some API errors are stored in logs, the message `Status` could\n be used directly after any stripping needed for security/privacy reasons.", - "type": "object", + "Policy": { + "description": "Defines an Identity and Access Management (IAM) policy. It is used to\nspecify access control policies for Cloud Platform resources.\n\n\nA `Policy` consists of a list of `bindings`. A `Binding` binds a list of\n`members` to a `role`, where the members can be user accounts, Google groups,\nGoogle domains, and service accounts. A `role` is a named list of permissions\ndefined by IAM.\n\n**Example**\n\n {\n \"bindings\": [\n {\n \"role\": \"roles/owner\",\n \"members\": [\n \"user:mike@example.com\",\n \"group:admins@example.com\",\n \"domain:google.com\",\n \"serviceAccount:my-other-app@appspot.gserviceaccount.com\",\n ]\n },\n {\n \"role\": \"roles/viewer\",\n \"members\": [\"user:sean@example.com\"]\n }\n ]\n }\n\nFor a description of IAM and its features, see the\n[IAM developer's guide](https://cloud.google.com/iam/docs).", + "id": "Policy", "properties": { - "message": { - "description": "A developer-facing error message, which should be in English. Any\nuser-facing error message should be localized and sent in the\ngoogle.rpc.Status.details field, or localized by the client.", + "bindings": { + "description": "Associates a list of `members` to a `role`.\n`bindings` with no members will result in an error.", + "items": { + "$ref": "Binding" + }, + "type": "array" + }, + "etag": { + "description": "`etag` is used for optimistic concurrency control as a way to help\nprevent simultaneous updates of a policy from overwriting each other.\nIt is strongly suggested that systems make use of the `etag` in the\nread-modify-write cycle to perform policy updates in order to avoid race\nconditions: An `etag` is returned in the response to `getIamPolicy`, and\nsystems are expected to put that etag in the request to `setIamPolicy` to\nensure that their change will be applied to the same version of the policy.\n\nIf no `etag` is provided in the call to `setIamPolicy`, then the existing\npolicy is overwritten blindly.", + "format": "byte", "type": "string" }, - "details": { - "description": "A list of messages that carry the error details. There is a common set of\nmessage types for APIs to use.", - "type": "array", - "items": { - "type": "object", - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - } - } - }, - "code": { - "description": "The status code, which should be an enum value of google.rpc.Code.", + "version": { + "description": "Deprecated.", "format": "int32", "type": "integer" } }, - "id": "Status" + "type": "object" }, - "Binding": { - "description": "Associates `members` with a `role`.", - "type": "object", + "PublicKeyCertificate": { + "description": "A public key certificate format and data.", + "id": "PublicKeyCertificate", "properties": { - "condition": { - "$ref": "Expr", - "description": "The condition that is associated with this binding.\nNOTE: an unsatisfied condition will not allow user access via current\nbinding. Different bindings, including their conditions, are examined\nindependently.\nThis field is GOOGLE_INTERNAL." + "certificate": { + "description": "The certificate data.", + "type": "string" }, - "members": { - "type": "array", + "format": { + "description": "The certificate format.", + "enum": [ + "UNSPECIFIED_PUBLIC_KEY_CERTIFICATE_FORMAT", + "X509_CERTIFICATE_PEM" + ], + "enumDescriptions": [ + "The format has not been specified. This is an invalid default value and\nmust not be used.", + "An X.509v3 certificate ([RFC5280](https://www.ietf.org/rfc/rfc5280.txt)),\nencoded in base64, and wrapped by `-----BEGIN CERTIFICATE-----` and\n`-----END CERTIFICATE-----`." + ], + "type": "string" + }, + "x509Details": { + "$ref": "X509CertificateDetails", + "description": "[Output only] The certificate details. Used only for X.509 certificates." + } + }, + "type": "object" + }, + "PublicKeyCredential": { + "description": "A public key format and data.", + "id": "PublicKeyCredential", + "properties": { + "format": { + "description": "The format of the key.", + "enum": [ + "UNSPECIFIED_PUBLIC_KEY_FORMAT", + "RSA_PEM", + "RSA_X509_PEM", + "ES256_PEM", + "ES256_X509_PEM" + ], + "enumDescriptions": [ + "The format has not been specified. This is an invalid default value and\nmust not be used.", + "An RSA public key encoded in base64, and wrapped by\n`-----BEGIN PUBLIC KEY-----` and `-----END PUBLIC KEY-----`. This can be\nused to verify `RS256` signatures in JWT tokens ([RFC7518](\nhttps://www.ietf.org/rfc/rfc7518.txt)).", + "As RSA_PEM, but wrapped in an X.509v3 certificate ([RFC5280](\nhttps://www.ietf.org/rfc/rfc5280.txt)), encoded in base64, and wrapped by\n`-----BEGIN CERTIFICATE-----` and `-----END CERTIFICATE-----`.", + "Public key for the ECDSA algorithm using P-256 and SHA-256, encoded in\nbase64, and wrapped by `-----BEGIN PUBLIC KEY-----` and `-----END\nPUBLIC KEY-----`. This can be used to verify JWT tokens with the `ES256`\nalgorithm ([RFC7518](https://www.ietf.org/rfc/rfc7518.txt)). This curve is\ndefined in [OpenSSL](https://www.openssl.org/) as the `prime256v1` curve.", + "As ES256_PEM, but wrapped in an X.509v3 certificate ([RFC5280](\nhttps://www.ietf.org/rfc/rfc5280.txt)), encoded in base64, and wrapped by\n`-----BEGIN CERTIFICATE-----` and `-----END CERTIFICATE-----`." + ], + "type": "string" + }, + "key": { + "description": "The key data.", + "type": "string" + } + }, + "type": "object" + }, + "RegistryCredential": { + "description": "A server-stored registry credential used to validate device credentials.", + "id": "RegistryCredential", + "properties": { + "publicKeyCertificate": { + "$ref": "PublicKeyCertificate", + "description": "A public key certificate used to verify the device credentials." + } + }, + "type": "object" + }, + "SetIamPolicyRequest": { + "description": "Request message for `SetIamPolicy` method.", + "id": "SetIamPolicyRequest", + "properties": { + "policy": { + "$ref": "Policy", + "description": "REQUIRED: The complete policy to be applied to the `resource`. The size of\nthe policy is limited to a few 10s of KB. An empty policy is a\nvalid policy but certain Cloud Platform services (such as Projects)\nmight reject them." + } + }, + "type": "object" + }, + "StateNotificationConfig": { + "description": "The configuration for notification of new states received from the device.", + "id": "StateNotificationConfig", + "properties": { + "pubsubTopicName": { + "description": "A Cloud Pub/Sub topic name. For example,\n`projects/myProject/topics/deviceEvents`.", + "type": "string" + } + }, + "type": "object" + }, + "Status": { + "description": "The `Status` type defines a logical error model that is suitable for different\nprogramming environments, including REST APIs and RPC APIs. It is used by\n[gRPC](https://github.com/grpc). The error model is designed to be:\n\n- Simple to use and understand for most users\n- Flexible enough to meet unexpected needs\n\n# Overview\n\nThe `Status` message contains three pieces of data: error code, error message,\nand error details. The error code should be an enum value of\ngoogle.rpc.Code, but it may accept additional error codes if needed. The\nerror message should be a developer-facing English message that helps\ndevelopers *understand* and *resolve* the error. If a localized user-facing\nerror message is needed, put the localized message in the error details or\nlocalize it in the client. The optional error details may contain arbitrary\ninformation about the error. There is a predefined set of error detail types\nin the package `google.rpc` that can be used for common error conditions.\n\n# Language mapping\n\nThe `Status` message is the logical representation of the error model, but it\nis not necessarily the actual wire format. When the `Status` message is\nexposed in different client libraries and different wire protocols, it can be\nmapped differently. For example, it will likely be mapped to some exceptions\nin Java, but more likely mapped to some error codes in C.\n\n# Other uses\n\nThe error model and the `Status` message can be used in a variety of\nenvironments, either with or without APIs, to provide a\nconsistent developer experience across different environments.\n\nExample uses of this error model include:\n\n- Partial errors. If a service needs to return partial errors to the client,\n it may embed the `Status` in the normal response to indicate the partial\n errors.\n\n- Workflow errors. A typical workflow has multiple steps. Each step may\n have a `Status` message for error reporting.\n\n- Batch operations. If a client uses batch request and batch response, the\n `Status` message should be used directly inside batch response, one for\n each error sub-response.\n\n- Asynchronous operations. If an API call embeds asynchronous operation\n results in its response, the status of those operations should be\n represented directly using the `Status` message.\n\n- Logging. If some API errors are stored in logs, the message `Status` could\n be used directly after any stripping needed for security/privacy reasons.", + "id": "Status", + "properties": { + "code": { + "description": "The status code, which should be an enum value of google.rpc.Code.", + "format": "int32", + "type": "integer" + }, + "details": { + "description": "A list of messages that carry the error details. There is a common set of\nmessage types for APIs to use.", + "items": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "A developer-facing error message, which should be in English. Any\nuser-facing error message should be localized and sent in the\ngoogle.rpc.Status.details field, or localized by the client.", + "type": "string" + } + }, + "type": "object" + }, + "TestIamPermissionsRequest": { + "description": "Request message for `TestIamPermissions` method.", + "id": "TestIamPermissionsRequest", + "properties": { + "permissions": { + "description": "The set of permissions to check for the `resource`. Permissions with\nwildcards (such as '*' or 'storage.*') are not allowed. For more\ninformation see\n[IAM Overview](https://cloud.google.com/iam/docs/overview#permissions).", "items": { "type": "string" }, - "description": "Specifies the identities requesting access for a Cloud Platform resource.\n`members` can have the following values:\n\n* `allUsers`: A special identifier that represents anyone who is\n on the internet; with or without a Google account.\n\n* `allAuthenticatedUsers`: A special identifier that represents anyone\n who is authenticated with a Google account or a service account.\n\n* `user:{emailid}`: An email address that represents a specific Google\n account. For example, `alice@gmail.com` or `joe@example.com`.\n\n\n* `serviceAccount:{emailid}`: An email address that represents a service\n account. For example, `my-other-app@appspot.gserviceaccount.com`.\n\n* `group:{emailid}`: An email address that represents a Google group.\n For example, `admins@example.com`.\n\n\n* `domain:{domain}`: A Google Apps domain name that represents all the\n users of that domain. For example, `google.com` or `example.com`.\n\n" - }, - "role": { - "description": "Role that is assigned to `members`.\nFor example, `roles/viewer`, `roles/editor`, or `roles/owner`.\nRequired", - "type": "string" + "type": "array" } }, - "id": "Binding" - }, - "Expr": { - "description": "Represents an expression text. Example:\n\n title: \"User account presence\"\n description: \"Determines whether the request has a user account\"\n expression: \"size(request.user) \u003e 0\"", - "type": "object", - "properties": { - "description": { - "description": "An optional description of the expression. This is a longer text which\ndescribes the expression, e.g. when hovered over it in a UI.", - "type": "string" - }, - "expression": { - "description": "Textual representation of an expression in\nCommon Expression Language syntax.\n\nThe application context of the containing message determines which\nwell-known feature set of CEL is supported.", - "type": "string" - }, - "title": { - "description": "An optional title for the expression, i.e. a short string describing\nits purpose. This can be used e.g. in UIs which allow to enter the\nexpression.", - "type": "string" - }, - "location": { - "description": "An optional string indicating the location of the expression for error\nreporting, e.g. a file name and a position in the file.", - "type": "string" - } - }, - "id": "Expr" - }, - "ModifyCloudToDeviceConfigRequest": { - "properties": { - "versionToUpdate": { - "description": "The version number to update. If this value is zero, it will not check the\nversion number of the server and will always update the current version;\notherwise, this update will fail if the version number found on the server\ndoes not match this version number. This is used to support multiple\nsimultaneous updates without losing data.", - "format": "int64", - "type": "string" - }, - "binaryData": { - "description": "The configuration data for the device.", - "format": "byte", - "type": "string" - } - }, - "id": "ModifyCloudToDeviceConfigRequest", - "description": "Request for `ModifyCloudToDeviceConfig`.", "type": "object" }, - "ListDeviceStatesResponse": { - "id": "ListDeviceStatesResponse", - "description": "Response for `ListDeviceStates`.", - "type": "object", - "properties": { - "deviceStates": { - "description": "The last few device states. States are listed in descending order of server\nupdate time, starting from the most recent one.", - "type": "array", - "items": { - "$ref": "DeviceState" - } - } - } - }, "TestIamPermissionsResponse": { + "description": "Response message for `TestIamPermissions` method.", + "id": "TestIamPermissionsResponse", "properties": { "permissions": { "description": "A subset of `TestPermissionsRequest.permissions` that the caller is\nallowed.", - "type": "array", "items": { "type": "string" - } + }, + "type": "array" } }, - "id": "TestIamPermissionsResponse", - "description": "Response message for `TestIamPermissions` method.", "type": "object" }, - "GetIamPolicyRequest": { - "id": "GetIamPolicyRequest", - "description": "Request message for `GetIamPolicy` method.", - "type": "object", - "properties": {} - } - }, - "protocol": "rest", - "icons": { - "x16": "http://www.google.com/images/icons/product/search-16.gif", - "x32": "http://www.google.com/images/icons/product/search-32.gif" - }, - "canonicalName": "Cloud Iot", - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/cloudiot": { - "description": "Register and manage devices in the Google Cloud IoT service" + "X509CertificateDetails": { + "description": "Details of an X.509 certificate. For informational purposes only.", + "id": "X509CertificateDetails", + "properties": { + "expiryTime": { + "description": "The time the certificate becomes invalid.", + "format": "google-datetime", + "type": "string" }, - "https://www.googleapis.com/auth/cloud-platform": { - "description": "View and manage your data across Google Cloud Platform services" + "issuer": { + "description": "The entity that signed the certificate.", + "type": "string" + }, + "publicKeyType": { + "description": "The type of public key in the certificate.", + "type": "string" + }, + "signatureAlgorithm": { + "description": "The algorithm used to sign the certificate.", + "type": "string" + }, + "startTime": { + "description": "The time the certificate becomes valid.", + "format": "google-datetime", + "type": "string" + }, + "subject": { + "description": "The entity the certificate and public key belong to.", + "type": "string" } - } - } - }, - "rootUrl": "https://cloudiot.googleapis.com/", - "ownerDomain": "google.com", - "name": "cloudiot", - "batchPath": "batch", - "fullyEncodeReservedExpansion": true, - "title": "Google Cloud IoT API", - "ownerName": "Google", - "resources": { - "projects": { - "resources": { - "locations": { - "resources": { - "registries": { - "methods": { - "list": { - "description": "Lists device registries.", - "httpMethod": "GET", - "response": { - "$ref": "ListDeviceRegistriesResponse" - }, - "parameterOrder": [ - "parent" - ], - "parameters": { - "parent": { - "description": "The project and cloud region path. For example,\n`projects/example-project/locations/us-central1`.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+$", - "location": "path" - }, - "pageToken": { - "type": "string", - "location": "query", - "description": "The value returned by the last `ListDeviceRegistriesResponse`; indicates\nthat this is a continuation of a prior `ListDeviceRegistries` call, and\nthat the system should return the next page of data." - }, - "pageSize": { - "location": "query", - "description": "The maximum number of registries to return in the response. If this value\nis zero, the service will select a default size. A call may return fewer\nobjects than requested, but if there is a non-empty `page_token`, it\nindicates that more entries are available.", - "format": "int32", - "type": "integer" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloudiot" - ], - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/registries", - "id": "cloudiot.projects.locations.registries.list", - "path": "v1/{+parent}/registries" - }, - "setIamPolicy": { - "request": { - "$ref": "SetIamPolicyRequest" - }, - "description": "Sets the access control policy on the specified resource. Replaces any\nexisting policy.", - "response": { - "$ref": "Policy" - }, - "parameterOrder": [ - "resource" - ], - "httpMethod": "POST", - "parameters": { - "resource": { - "description": "REQUIRED: The resource for which the policy is being specified.\nSee the operation documentation for the appropriate value for this field.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+/registries/[^/]+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloudiot" - ], - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/registries/{registriesId}:setIamPolicy", - "path": "v1/{+resource}:setIamPolicy", - "id": "cloudiot.projects.locations.registries.setIamPolicy" - }, - "create": { - "id": "cloudiot.projects.locations.registries.create", - "path": "v1/{+parent}/registries", - "request": { - "$ref": "DeviceRegistry" - }, - "description": "Creates a device registry that contains devices.", - "httpMethod": "POST", - "parameterOrder": [ - "parent" - ], - "response": { - "$ref": "DeviceRegistry" - }, - "parameters": { - "parent": { - "location": "path", - "description": "The project and cloud region where this device registry must be created.\nFor example, `projects/example-project/locations/us-central1`.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+$" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloudiot" - ], - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/registries" - }, - "getIamPolicy": { - "request": { - "$ref": "GetIamPolicyRequest" - }, - "description": "Gets the access control policy for a resource.\nReturns an empty policy if the resource exists and does not have a policy\nset.", - "httpMethod": "POST", - "parameterOrder": [ - "resource" - ], - "response": { - "$ref": "Policy" - }, - "parameters": { - "resource": { - "description": "REQUIRED: The resource for which the policy is being requested.\nSee the operation documentation for the appropriate value for this field.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+/registries/[^/]+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloudiot" - ], - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/registries/{registriesId}:getIamPolicy", - "id": "cloudiot.projects.locations.registries.getIamPolicy", - "path": "v1/{+resource}:getIamPolicy" - }, - "patch": { - "httpMethod": "PATCH", - "parameterOrder": [ - "name" - ], - "response": { - "$ref": "DeviceRegistry" - }, - "parameters": { - "name": { - "pattern": "^projects/[^/]+/locations/[^/]+/registries/[^/]+$", - "location": "path", - "description": "The resource path name. For example,\n`projects/example-project/locations/us-central1/registries/my-registry`.", - "required": true, - "type": "string" - }, - "updateMask": { - "location": "query", - "description": "Only updates the `device_registry` fields indicated by this mask.\nThe field mask must not be empty, and it must not contain fields that\nare immutable or only set by the server.\nMutable top-level fields: `event_notification_config`, `http_config`,\n`mqtt_config`, and `state_notification_config`.", - "format": "google-fieldmask", - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloudiot" - ], - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/registries/{registriesId}", - "id": "cloudiot.projects.locations.registries.patch", - "path": "v1/{+name}", - "request": { - "$ref": "DeviceRegistry" - }, - "description": "Updates a device registry configuration." - }, - "get": { - "description": "Gets a device registry configuration.", - "response": { - "$ref": "DeviceRegistry" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "GET", - "parameters": { - "name": { - "description": "The name of the device registry. For example,\n`projects/example-project/locations/us-central1/registries/my-registry`.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+/registries/[^/]+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloudiot" - ], - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/registries/{registriesId}", - "path": "v1/{+name}", - "id": "cloudiot.projects.locations.registries.get" - }, - "testIamPermissions": { - "response": { - "$ref": "TestIamPermissionsResponse" - }, - "parameterOrder": [ - "resource" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloudiot" - ], - "parameters": { - "resource": { - "description": "REQUIRED: The resource for which the policy detail is being requested.\nSee the operation documentation for the appropriate value for this field.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+/registries/[^/]+$", - "location": "path" - } - }, - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/registries/{registriesId}:testIamPermissions", - "path": "v1/{+resource}:testIamPermissions", - "id": "cloudiot.projects.locations.registries.testIamPermissions", - "description": "Returns permissions that a caller has on the specified resource.\nIf the resource does not exist, this will return an empty set of\npermissions, not a NOT_FOUND error.", - "request": { - "$ref": "TestIamPermissionsRequest" - } - }, - "delete": { - "path": "v1/{+name}", - "id": "cloudiot.projects.locations.registries.delete", - "description": "Deletes a device registry configuration.", - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "DELETE", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloudiot" - ], - "parameters": { - "name": { - "pattern": "^projects/[^/]+/locations/[^/]+/registries/[^/]+$", - "location": "path", - "description": "The name of the device registry. For example,\n`projects/example-project/locations/us-central1/registries/my-registry`.", - "required": true, - "type": "string" - } - }, - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/registries/{registriesId}" - } - }, - "resources": { - "devices": { - "resources": { - "configVersions": { - "methods": { - "list": { - "description": "Lists the last few versions of the device configuration in descending\norder (i.e.: newest first).", - "response": { - "$ref": "ListDeviceConfigVersionsResponse" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloudiot" - ], - "parameters": { - "numVersions": { - "location": "query", - "description": "The number of versions to list. Versions are listed in decreasing order of\nthe version number. The maximum number of versions retained is 10. If this\nvalue is zero, it will return all the versions available.", - "format": "int32", - "type": "integer" - }, - "name": { - "pattern": "^projects/[^/]+/locations/[^/]+/registries/[^/]+/devices/[^/]+$", - "location": "path", - "description": "The name of the device. For example,\n`projects/p0/locations/us-central1/registries/registry0/devices/device0` or\n`projects/p0/locations/us-central1/registries/registry0/devices/{num_id}`.", - "required": true, - "type": "string" - } - }, - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/registries/{registriesId}/devices/{devicesId}/configVersions", - "path": "v1/{+name}/configVersions", - "id": "cloudiot.projects.locations.registries.devices.configVersions.list" - } - } - }, - "states": { - "methods": { - "list": { - "path": "v1/{+name}/states", - "id": "cloudiot.projects.locations.registries.devices.states.list", - "description": "Lists the last few versions of the device state in descending order (i.e.:\nnewest first).", - "response": { - "$ref": "ListDeviceStatesResponse" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "GET", - "parameters": { - "name": { - "description": "The name of the device. For example,\n`projects/p0/locations/us-central1/registries/registry0/devices/device0` or\n`projects/p0/locations/us-central1/registries/registry0/devices/{num_id}`.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+/registries/[^/]+/devices/[^/]+$", - "location": "path" - }, - "numStates": { - "type": "integer", - "location": "query", - "description": "The number of states to list. States are listed in descending order of\nupdate time. The maximum number of states retained is 10. If this\nvalue is zero, it will return all the states available.", - "format": "int32" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloudiot" - ], - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/registries/{registriesId}/devices/{devicesId}/states" - } - } - } - }, - "methods": { - "delete": { - "httpMethod": "DELETE", - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "name" - ], - "parameters": { - "name": { - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+/registries/[^/]+/devices/[^/]+$", - "location": "path", - "description": "The name of the device. For example,\n`projects/p0/locations/us-central1/registries/registry0/devices/device0` or\n`projects/p0/locations/us-central1/registries/registry0/devices/{num_id}`." - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloudiot" - ], - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/registries/{registriesId}/devices/{devicesId}", - "id": "cloudiot.projects.locations.registries.devices.delete", - "path": "v1/{+name}", - "description": "Deletes a device." - }, - "list": { - "id": "cloudiot.projects.locations.registries.devices.list", - "path": "v1/{+parent}/devices", - "description": "List devices in a device registry.", - "httpMethod": "GET", - "response": { - "$ref": "ListDevicesResponse" - }, - "parameterOrder": [ - "parent" - ], - "parameters": { - "pageToken": { - "description": "The value returned by the last `ListDevicesResponse`; indicates\nthat this is a continuation of a prior `ListDevices` call, and\nthat the system should return the next page of data.", - "type": "string", - "location": "query" - }, - "fieldMask": { - "type": "string", - "location": "query", - "description": "The fields of the `Device` resource to be returned in the response. The\nfields `id`, and `num_id` are always returned by default, along with any\nother fields specified.", - "format": "google-fieldmask" - }, - "pageSize": { - "location": "query", - "description": "The maximum number of devices to return in the response. If this value\nis zero, the service will select a default size. A call may return fewer\nobjects than requested, but if there is a non-empty `page_token`, it\nindicates that more entries are available.", - "format": "int32", - "type": "integer" - }, - "deviceIds": { - "repeated": true, - "location": "query", - "description": "A list of device string identifiers. If empty, it will ignore this field.\nFor example, `['device0', 'device12']`. This field cannot hold more than\n10,000 entries.", - "type": "string" - }, - "parent": { - "location": "path", - "description": "The device registry path. Required. For example,\n`projects/my-project/locations/us-central1/registries/my-registry`.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+/registries/[^/]+$" - }, - "deviceNumIds": { - "location": "query", - "description": "A list of device numerical ids. If empty, it will ignore this field. This\nfield cannot hold more than 10,000 entries.", - "format": "uint64", - "type": "string", - "repeated": true - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloudiot" - ], - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/registries/{registriesId}/devices" - }, - "create": { - "request": { - "$ref": "Device" - }, - "description": "Creates a device in a device registry.", - "response": { - "$ref": "Device" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "POST", - "parameters": { - "parent": { - "pattern": "^projects/[^/]+/locations/[^/]+/registries/[^/]+$", - "location": "path", - "description": "The name of the device registry where this device should be created.\nFor example,\n`projects/example-project/locations/us-central1/registries/my-registry`.", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloudiot" - ], - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/registries/{registriesId}/devices", - "path": "v1/{+parent}/devices", - "id": "cloudiot.projects.locations.registries.devices.create" - }, - "modifyCloudToDeviceConfig": { - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloudiot" - ], - "parameters": { - "name": { - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+/registries/[^/]+/devices/[^/]+$", - "location": "path", - "description": "The name of the device. For example,\n`projects/p0/locations/us-central1/registries/registry0/devices/device0` or\n`projects/p0/locations/us-central1/registries/registry0/devices/{num_id}`." - } - }, - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/registries/{registriesId}/devices/{devicesId}:modifyCloudToDeviceConfig", - "path": "v1/{+name}:modifyCloudToDeviceConfig", - "id": "cloudiot.projects.locations.registries.devices.modifyCloudToDeviceConfig", - "description": "Modifies the configuration for the device, which is eventually sent from\nthe Cloud IoT Core servers. Returns the modified configuration version and\nits metadata.", - "request": { - "$ref": "ModifyCloudToDeviceConfigRequest" - }, - "response": { - "$ref": "DeviceConfig" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "POST" - }, - "patch": { - "response": { - "$ref": "Device" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "PATCH", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloudiot" - ], - "parameters": { - "updateMask": { - "location": "query", - "description": "Only updates the `device` fields indicated by this mask.\nThe field mask must not be empty, and it must not contain fields that\nare immutable or only set by the server.\nMutable top-level fields: `credentials`, `enabled_state`, and `metadata`", - "format": "google-fieldmask", - "type": "string" - }, - "name": { - "description": "The resource path name. For example,\n`projects/p1/locations/us-central1/registries/registry0/devices/dev0` or\n`projects/p1/locations/us-central1/registries/registry0/devices/{num_id}`.\nWhen `name` is populated as a response from the service, it always ends\nin the device numeric ID.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+/registries/[^/]+/devices/[^/]+$", - "location": "path" - } - }, - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/registries/{registriesId}/devices/{devicesId}", - "path": "v1/{+name}", - "id": "cloudiot.projects.locations.registries.devices.patch", - "description": "Updates a device.", - "request": { - "$ref": "Device" - } - }, - "get": { - "response": { - "$ref": "Device" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "GET", - "parameters": { - "name": { - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+/registries/[^/]+/devices/[^/]+$", - "location": "path", - "description": "The name of the device. For example,\n`projects/p0/locations/us-central1/registries/registry0/devices/device0` or\n`projects/p0/locations/us-central1/registries/registry0/devices/{num_id}`." - }, - "fieldMask": { - "description": "The fields of the `Device` resource to be returned in the response. If the\nfield mask is unset or empty, all fields are returned.", - "format": "google-fieldmask", - "type": "string", - "location": "query" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloudiot" - ], - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/registries/{registriesId}/devices/{devicesId}", - "path": "v1/{+name}", - "id": "cloudiot.projects.locations.registries.devices.get", - "description": "Gets details about a device." - } - } - } - } - } - } - } - } - } - }, - "parameters": { - "pp": { - "description": "Pretty-print response.", - "type": "boolean", - "default": "true", - "location": "query" - }, - "oauth_token": { - "location": "query", - "description": "OAuth 2.0 token for the current user.", - "type": "string" - }, - "bearer_token": { - "description": "OAuth bearer token.", - "type": "string", - "location": "query" - }, - "upload_protocol": { - "location": "query", - "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", - "type": "string" - }, - "prettyPrint": { - "location": "query", - "description": "Returns response with indentations and line breaks.", - "type": "boolean", - "default": "true" - }, - "uploadType": { - "location": "query", - "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", - "type": "string" - }, - "fields": { - "description": "Selector specifying which fields to include in a partial response.", - "type": "string", - "location": "query" - }, - "$.xgafv": { - "enumDescriptions": [ - "v1 error format", - "v2 error format" - ], - "location": "query", - "enum": [ - "1", - "2" - ], - "description": "V1 error format.", - "type": "string" - }, - "callback": { - "location": "query", - "description": "JSONP", - "type": "string" - }, - "alt": { - "enum": [ - "json", - "media", - "proto" - ], - "type": "string", - "enumDescriptions": [ - "Responses with Content-Type of application/json", - "Media download with context-dependent Content-Type", - "Responses with Content-Type of application/x-protobuf" - ], - "location": "query", - "description": "Data format for response.", - "default": "json" - }, - "access_token": { - "location": "query", - "description": "OAuth access token.", - "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.", - "type": "string", - "location": "query" - }, - "quotaUser": { - "location": "query", - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", - "type": "string" + }, + "type": "object" } }, + "servicePath": "", + "title": "Cloud IoT API", "version": "v1", - "baseUrl": "https://cloudiot.googleapis.com/" -} + "version_module": true +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/cloudiot/v1/cloudiot-gen.go b/vendor/google.golang.org/api/cloudiot/v1/cloudiot-gen.go index fc1d8462b..51dcf6d06 100644 --- a/vendor/google.golang.org/api/cloudiot/v1/cloudiot-gen.go +++ b/vendor/google.golang.org/api/cloudiot/v1/cloudiot-gen.go @@ -1,4 +1,4 @@ -// Package cloudiot provides access to the Google Cloud IoT API. +// Package cloudiot provides access to the Cloud IoT API. // // See https://cloud.google.com/iot // @@ -147,174 +147,8 @@ type ProjectsLocationsRegistriesDevicesStatesService struct { s *Service } -// AuditConfig: Specifies the audit configuration for a service. -// The configuration determines which permission types are logged, and -// what -// identities, if any, are exempted from logging. -// An AuditConfig must have one or more AuditLogConfigs. -// -// If there are AuditConfigs for both `allServices` and a specific -// service, -// the union of the two AuditConfigs is used for that service: the -// log_types -// specified in each AuditConfig are enabled, and the exempted_members -// in each -// AuditConfig are exempted. -// -// Example Policy with multiple AuditConfigs: -// -// { -// "audit_configs": [ -// { -// "service": "allServices" -// "audit_log_configs": [ -// { -// "log_type": "DATA_READ", -// "exempted_members": [ -// "user:foo@gmail.com" -// ] -// }, -// { -// "log_type": "DATA_WRITE", -// }, -// { -// "log_type": "ADMIN_READ", -// } -// ] -// }, -// { -// "service": "fooservice.googleapis.com" -// "audit_log_configs": [ -// { -// "log_type": "DATA_READ", -// }, -// { -// "log_type": "DATA_WRITE", -// "exempted_members": [ -// "user:bar@gmail.com" -// ] -// } -// ] -// } -// ] -// } -// -// For fooservice, this policy enables DATA_READ, DATA_WRITE and -// ADMIN_READ -// logging. It also exempts foo@gmail.com from DATA_READ logging, -// and -// bar@gmail.com from DATA_WRITE logging. -type AuditConfig struct { - // AuditLogConfigs: The configuration for logging of each type of - // permission. - // Next ID: 4 - AuditLogConfigs []*AuditLogConfig `json:"auditLogConfigs,omitempty"` - - ExemptedMembers []string `json:"exemptedMembers,omitempty"` - - // Service: Specifies a service that will be enabled for audit - // logging. - // For example, `storage.googleapis.com`, - // `cloudsql.googleapis.com`. - // `allServices` is a special value that covers all services. - Service string `json:"service,omitempty"` - - // ForceSendFields is a list of field names (e.g. "AuditLogConfigs") to - // unconditionally include in API requests. By default, fields with - // empty values are omitted from API requests. However, any non-pointer, - // non-interface field appearing in ForceSendFields will be sent to the - // server regardless of whether the field is empty or not. This may be - // used to include empty fields in Patch requests. - ForceSendFields []string `json:"-"` - - // NullFields is a list of field names (e.g. "AuditLogConfigs") to - // include in API requests with the JSON null value. By default, fields - // with empty values are omitted from API requests. However, any field - // with an empty value appearing in NullFields will be sent to the - // server as null. It is an error if a field in this list has a - // non-empty value. This may be used to include null fields in Patch - // requests. - NullFields []string `json:"-"` -} - -func (s *AuditConfig) MarshalJSON() ([]byte, error) { - type NoMethod AuditConfig - raw := NoMethod(*s) - return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) -} - -// AuditLogConfig: Provides the configuration for logging a type of -// permissions. -// Example: -// -// { -// "audit_log_configs": [ -// { -// "log_type": "DATA_READ", -// "exempted_members": [ -// "user:foo@gmail.com" -// ] -// }, -// { -// "log_type": "DATA_WRITE", -// } -// ] -// } -// -// This enables 'DATA_READ' and 'DATA_WRITE' logging, while -// exempting -// foo@gmail.com from DATA_READ logging. -type AuditLogConfig struct { - // ExemptedMembers: Specifies the identities that do not cause logging - // for this type of - // permission. - // Follows the same format of Binding.members. - ExemptedMembers []string `json:"exemptedMembers,omitempty"` - - // LogType: The log type that this config enables. - // - // Possible values: - // "LOG_TYPE_UNSPECIFIED" - Default case. Should never be this. - // "ADMIN_READ" - Admin reads. Example: CloudIAM getIamPolicy - // "DATA_WRITE" - Data writes. Example: CloudSQL Users create - // "DATA_READ" - Data reads. Example: CloudSQL Users list - LogType string `json:"logType,omitempty"` - - // ForceSendFields is a list of field names (e.g. "ExemptedMembers") to - // unconditionally include in API requests. By default, fields with - // empty values are omitted from API requests. However, any non-pointer, - // non-interface field appearing in ForceSendFields will be sent to the - // server regardless of whether the field is empty or not. This may be - // used to include empty fields in Patch requests. - ForceSendFields []string `json:"-"` - - // NullFields is a list of field names (e.g. "ExemptedMembers") to - // include in API requests with the JSON null value. By default, fields - // with empty values are omitted from API requests. However, any field - // with an empty value appearing in NullFields will be sent to the - // server as null. It is an error if a field in this list has a - // non-empty value. This may be used to include null fields in Patch - // requests. - NullFields []string `json:"-"` -} - -func (s *AuditLogConfig) MarshalJSON() ([]byte, error) { - type NoMethod AuditLogConfig - raw := NoMethod(*s) - return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) -} - // Binding: Associates `members` with a `role`. type Binding struct { - // Condition: The condition that is associated with this binding. - // NOTE: an unsatisfied condition will not allow user access via - // current - // binding. Different bindings, including their conditions, are - // examined - // independently. - // This field is GOOGLE_INTERNAL. - Condition *Expr `json:"condition,omitempty"` - // Members: Specifies the identities requesting access for a Cloud // Platform resource. // `members` can have the following values: @@ -356,7 +190,7 @@ type Binding struct { // Required Role string `json:"role,omitempty"` - // ForceSendFields is a list of field names (e.g. "Condition") to + // ForceSendFields is a list of field names (e.g. "Members") to // unconditionally include in API requests. By default, fields with // empty values are omitted from API requests. However, any non-pointer, // non-interface field appearing in ForceSendFields will be sent to the @@ -364,7 +198,7 @@ type Binding struct { // used to include empty fields in Patch requests. ForceSendFields []string `json:"-"` - // NullFields is a list of field names (e.g. "Condition") to include in + // NullFields is a list of field names (e.g. "Members") to include in // API requests with the JSON null value. By default, fields with empty // values are omitted from API requests. However, any field with an // empty value appearing in NullFields will be sent to the server as @@ -454,11 +288,15 @@ type Device struct { // minutes. LastEventTime string `json:"lastEventTime,omitempty"` - // LastHeartbeatTime: [Output only] The last time a heartbeat was - // received. Timestamps are - // periodically collected and written to storage; they may be stale by a - // few - // minutes. This field is only for devices connecting through MQTT. + // LastHeartbeatTime: [Output only] The last time an MQTT `PINGREQ` was + // received. This field + // applies only to devices connecting through MQTT. MQTT clients usually + // only + // send `PINGREQ` messages if the connection is idle, and no other + // messages + // have been sent. Timestamps are periodically collected and written + // to + // storage; they may be stale by a few minutes. LastHeartbeatTime string `json:"lastHeartbeatTime,omitempty"` // LastStateTime: [Output only] The last time a state event was @@ -474,9 +312,8 @@ type Device struct { // contextual // information for the device. // - // Keys must conform to the regular expression [a-zA-Z0-9-_]+ and be - // less than - // 128 bytes in length. + // Keys must conform to the regular expression a-zA-Z+ and + // be less than 128 bytes in length. // // Values are free-form strings. Each value must be less than or equal // to 32 @@ -687,15 +524,17 @@ type DeviceRegistry struct { // the // device and acknowledged by Cloud IoT Core are guaranteed to // be - // delivered to Cloud Pub/Sub. Only the first configuration is used. If - // you - // try to publish a device telemetry event using MQTT without specifying + // delivered to Cloud Pub/Sub. If multiple configurations match a + // message, + // only the first matching configuration is used. If you try to publish // a - // Cloud Pub/Sub topic for the device's registry, the connection - // closes - // automatically. If you try to do so using an HTTP connection, an - // error - // is returned. + // device telemetry event using MQTT without specifying a Cloud Pub/Sub + // topic + // for the device's registry, the connection closes automatically. If + // you try + // to do so using an HTTP connection, an error is returned. Up to + // 10 + // configurations may be provided. EventNotificationConfigs []*EventNotificationConfig `json:"eventNotificationConfigs,omitempty"` // HttpConfig: The DeviceService (HTTP) configuration for this device @@ -806,7 +645,7 @@ type Empty struct { googleapi.ServerResponse `json:"-"` } -// EventNotificationConfig: The configuration to forward telemetry +// EventNotificationConfig: The configuration for forwarding telemetry // events. type EventNotificationConfig struct { // PubsubTopicName: A Cloud Pub/Sub topic name. For @@ -814,6 +653,15 @@ type EventNotificationConfig struct { // `projects/myProject/topics/deviceEvents`. PubsubTopicName string `json:"pubsubTopicName,omitempty"` + // SubfolderMatches: If the subfolder name matches this string exactly, + // this configuration will + // be used. The string must not include the leading '/' character. If + // empty, + // all strings are matched. This field is used only for telemetry + // events; + // subfolders are not supported for state changes. + SubfolderMatches string `json:"subfolderMatches,omitempty"` + // ForceSendFields is a list of field names (e.g. "PubsubTopicName") to // unconditionally include in API requests. By default, fields with // empty values are omitted from API requests. However, any non-pointer, @@ -838,60 +686,6 @@ func (s *EventNotificationConfig) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -// Expr: Represents an expression text. Example: -// -// title: "User account presence" -// description: "Determines whether the request has a user account" -// expression: "size(request.user) > 0" -type Expr struct { - // Description: An optional description of the expression. This is a - // longer text which - // describes the expression, e.g. when hovered over it in a UI. - Description string `json:"description,omitempty"` - - // Expression: Textual representation of an expression in - // Common Expression Language syntax. - // - // The application context of the containing message determines - // which - // well-known feature set of CEL is supported. - Expression string `json:"expression,omitempty"` - - // Location: An optional string indicating the location of the - // expression for error - // reporting, e.g. a file name and a position in the file. - Location string `json:"location,omitempty"` - - // Title: An optional title for the expression, i.e. a short string - // describing - // its purpose. This can be used e.g. in UIs which allow to enter - // the - // expression. - Title string `json:"title,omitempty"` - - // ForceSendFields is a list of field names (e.g. "Description") to - // unconditionally include in API requests. By default, fields with - // empty values are omitted from API requests. However, any non-pointer, - // non-interface field appearing in ForceSendFields will be sent to the - // server regardless of whether the field is empty or not. This may be - // used to include empty fields in Patch requests. - ForceSendFields []string `json:"-"` - - // NullFields is a list of field names (e.g. "Description") to include - // in API requests with the JSON null value. By default, fields with - // empty values are omitted from API requests. However, any field with - // an empty value appearing in NullFields will be sent to the server as - // null. It is an error if a field in this list has a non-empty value. - // This may be used to include null fields in Patch requests. - NullFields []string `json:"-"` -} - -func (s *Expr) MarshalJSON() ([]byte, error) { - type NoMethod Expr - raw := NoMethod(*s) - return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) -} - // GetIamPolicyRequest: Request message for `GetIamPolicy` method. type GetIamPolicyRequest struct { } @@ -1197,10 +991,6 @@ func (s *MqttConfig) MarshalJSON() ([]byte, error) { // For a description of IAM and its features, see the // [IAM developer's guide](https://cloud.google.com/iam/docs). type Policy struct { - // AuditConfigs: Specifies cloud audit logging configuration for this - // policy. - AuditConfigs []*AuditConfig `json:"auditConfigs,omitempty"` - // Bindings: Associates a list of `members` to a `role`. // `bindings` with no members will result in an error. Bindings []*Binding `json:"bindings,omitempty"` @@ -1225,8 +1015,6 @@ type Policy struct { // policy is overwritten blindly. Etag string `json:"etag,omitempty"` - IamOwned bool `json:"iamOwned,omitempty"` - // Version: Deprecated. Version int64 `json:"version,omitempty"` @@ -1234,7 +1022,7 @@ type Policy struct { // server. googleapi.ServerResponse `json:"-"` - // ForceSendFields is a list of field names (e.g. "AuditConfigs") to + // ForceSendFields is a list of field names (e.g. "Bindings") to // unconditionally include in API requests. By default, fields with // empty values are omitted from API requests. However, any non-pointer, // non-interface field appearing in ForceSendFields will be sent to the @@ -1242,10 +1030,10 @@ type Policy struct { // used to include empty fields in Patch requests. ForceSendFields []string `json:"-"` - // NullFields is a list of field names (e.g. "AuditConfigs") to include - // in API requests with the JSON null value. By default, fields with - // empty values are omitted from API requests. However, any field with - // an empty value appearing in NullFields will be sent to the server as + // NullFields is a list of field names (e.g. "Bindings") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as // null. It is an error if a field in this list has a non-empty value. // This may be used to include null fields in Patch requests. NullFields []string `json:"-"` @@ -1407,15 +1195,6 @@ type SetIamPolicyRequest struct { // might reject them. Policy *Policy `json:"policy,omitempty"` - // UpdateMask: OPTIONAL: A FieldMask specifying which fields of the - // policy to modify. Only - // the fields in the mask will be modified. If no mask is provided, - // the - // following default mask is used: - // paths: "bindings, etag" - // This field is only used by Cloud IAM. - UpdateMask string `json:"updateMask,omitempty"` - // ForceSendFields is a list of field names (e.g. "Policy") to // unconditionally include in API requests. By default, fields with // empty values are omitted from API requests. However, any non-pointer, @@ -3696,8 +3475,7 @@ func (r *ProjectsLocationsRegistriesDevicesService) Patch(name string, device *D // The field mask must not be empty, and it must not contain fields // that // are immutable or only set by the server. -// Mutable top-level fields: `credentials`, `enabled_state`, and -// `metadata` +// Mutable top-level fields: `credentials`, `blocked`, and `metadata` func (c *ProjectsLocationsRegistriesDevicesPatchCall) UpdateMask(updateMask string) *ProjectsLocationsRegistriesDevicesPatchCall { c.urlParams_.Set("updateMask", updateMask) return c @@ -3805,7 +3583,7 @@ func (c *ProjectsLocationsRegistriesDevicesPatchCall) Do(opts ...googleapi.CallO // "type": "string" // }, // "updateMask": { - // "description": "Only updates the `device` fields indicated by this mask.\nThe field mask must not be empty, and it must not contain fields that\nare immutable or only set by the server.\nMutable top-level fields: `credentials`, `enabled_state`, and `metadata`", + // "description": "Only updates the `device` fields indicated by this mask.\nThe field mask must not be empty, and it must not contain fields that\nare immutable or only set by the server.\nMutable top-level fields: `credentials`, `blocked`, and `metadata`", // "format": "google-fieldmask", // "location": "query", // "type": "string" diff --git a/vendor/google.golang.org/api/cloudkms/v1/cloudkms-api.json b/vendor/google.golang.org/api/cloudkms/v1/cloudkms-api.json index ee3dc126f..93885058e 100644 --- a/vendor/google.golang.org/api/cloudkms/v1/cloudkms-api.json +++ b/vendor/google.golang.org/api/cloudkms/v1/cloudkms-api.json @@ -1,473 +1,4 @@ { - "kind": "discovery#restDescription", - "description": "Manages encryption for your cloud services the same way you do on-premises. You can generate, use, rotate, and destroy AES256 encryption keys.", - "servicePath": "", - "basePath": "", - "revision": "20180117", - "documentationLink": "https://cloud.google.com/kms/", - "id": "cloudkms:v1", - "discoveryVersion": "v1", - "version_module": true, - "schemas": { - "SetIamPolicyRequest": { - "description": "Request message for `SetIamPolicy` method.", - "type": "object", - "properties": { - "policy": { - "description": "REQUIRED: The complete policy to be applied to the `resource`. The size of\nthe policy is limited to a few 10s of KB. An empty policy is a\nvalid policy but certain Cloud Platform services (such as Projects)\nmight reject them.", - "$ref": "Policy" - }, - "updateMask": { - "description": "OPTIONAL: A FieldMask specifying which fields of the policy to modify. Only\nthe fields in the mask will be modified. If no mask is provided, the\nfollowing default mask is used:\npaths: \"bindings, etag\"\nThis field is only used by Cloud IAM.", - "format": "google-fieldmask", - "type": "string" - } - }, - "id": "SetIamPolicyRequest" - }, - "DecryptRequest": { - "description": "Request message for KeyManagementService.Decrypt.", - "type": "object", - "properties": { - "ciphertext": { - "description": "Required. The encrypted data originally returned in\nEncryptResponse.ciphertext.", - "format": "byte", - "type": "string" - }, - "additionalAuthenticatedData": { - "description": "Optional data that must match the data originally supplied in\nEncryptRequest.additional_authenticated_data.", - "format": "byte", - "type": "string" - } - }, - "id": "DecryptRequest" - }, - "Binding": { - "description": "Associates `members` with a `role`.", - "type": "object", - "properties": { - "members": { - "description": "Specifies the identities requesting access for a Cloud Platform resource.\n`members` can have the following values:\n\n* `allUsers`: A special identifier that represents anyone who is\n on the internet; with or without a Google account.\n\n* `allAuthenticatedUsers`: A special identifier that represents anyone\n who is authenticated with a Google account or a service account.\n\n* `user:{emailid}`: An email address that represents a specific Google\n account. For example, `alice@gmail.com` or `joe@example.com`.\n\n\n* `serviceAccount:{emailid}`: An email address that represents a service\n account. For example, `my-other-app@appspot.gserviceaccount.com`.\n\n* `group:{emailid}`: An email address that represents a Google group.\n For example, `admins@example.com`.\n\n\n* `domain:{domain}`: A Google Apps domain name that represents all the\n users of that domain. For example, `google.com` or `example.com`.\n\n", - "type": "array", - "items": { - "type": "string" - } - }, - "role": { - "description": "Role that is assigned to `members`.\nFor example, `roles/viewer`, `roles/editor`, or `roles/owner`.\nRequired", - "type": "string" - } - }, - "id": "Binding" - }, - "EncryptRequest": { - "description": "Request message for KeyManagementService.Encrypt.", - "type": "object", - "properties": { - "plaintext": { - "description": "Required. The data to encrypt. Must be no larger than 64KiB.", - "format": "byte", - "type": "string" - }, - "additionalAuthenticatedData": { - "description": "Optional data that, if specified, must also be provided during decryption\nthrough DecryptRequest.additional_authenticated_data. Must be no\nlarger than 64KiB.", - "format": "byte", - "type": "string" - } - }, - "id": "EncryptRequest" - }, - "ListCryptoKeyVersionsResponse": { - "description": "Response message for KeyManagementService.ListCryptoKeyVersions.", - "type": "object", - "properties": { - "cryptoKeyVersions": { - "description": "The list of CryptoKeyVersions.", - "type": "array", - "items": { - "$ref": "CryptoKeyVersion" - } - }, - "nextPageToken": { - "description": "A token to retrieve next page of results. Pass this value in\nListCryptoKeyVersionsRequest.page_token to retrieve the next page of\nresults.", - "type": "string" - }, - "totalSize": { - "description": "The total number of CryptoKeyVersions that matched the\nquery.", - "format": "int32", - "type": "integer" - } - }, - "id": "ListCryptoKeyVersionsResponse" - }, - "Location": { - "description": "A resource that represents Google Cloud Platform location.", - "type": "object", - "properties": { - "labels": { - "description": "Cross-service attributes for the location. For example\n\n {\"cloud.googleapis.com/region\": \"us-east1\"}", - "type": "object", - "additionalProperties": { - "type": "string" - } - }, - "name": { - "description": "Resource name for the location, which may vary between implementations.\nFor example: `\"projects/example-project/locations/us-east1\"`", - "type": "string" - }, - "locationId": { - "description": "The canonical id for this location. For example: `\"us-east1\"`.", - "type": "string" - }, - "metadata": { - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - }, - "description": "Service-specific metadata. For example the available capacity at the given\nlocation.", - "type": "object" - } - }, - "id": "Location" - }, - "ListCryptoKeysResponse": { - "description": "Response message for KeyManagementService.ListCryptoKeys.", - "type": "object", - "properties": { - "nextPageToken": { - "description": "A token to retrieve next page of results. Pass this value in\nListCryptoKeysRequest.page_token to retrieve the next page of results.", - "type": "string" - }, - "cryptoKeys": { - "description": "The list of CryptoKeys.", - "type": "array", - "items": { - "$ref": "CryptoKey" - } - }, - "totalSize": { - "description": "The total number of CryptoKeys that matched the query.", - "format": "int32", - "type": "integer" - } - }, - "id": "ListCryptoKeysResponse" - }, - "TestIamPermissionsResponse": { - "description": "Response message for `TestIamPermissions` method.", - "type": "object", - "properties": { - "permissions": { - "description": "A subset of `TestPermissionsRequest.permissions` that the caller is\nallowed.", - "type": "array", - "items": { - "type": "string" - } - } - }, - "id": "TestIamPermissionsResponse" - }, - "DestroyCryptoKeyVersionRequest": { - "description": "Request message for KeyManagementService.DestroyCryptoKeyVersion.", - "type": "object", - "properties": {}, - "id": "DestroyCryptoKeyVersionRequest" - }, - "AuditLogConfig": { - "description": "Provides the configuration for logging a type of permissions.\nExample:\n\n {\n \"audit_log_configs\": [\n {\n \"log_type\": \"DATA_READ\",\n \"exempted_members\": [\n \"user:foo@gmail.com\"\n ]\n },\n {\n \"log_type\": \"DATA_WRITE\",\n }\n ]\n }\n\nThis enables 'DATA_READ' and 'DATA_WRITE' logging, while exempting\nfoo@gmail.com from DATA_READ logging.", - "type": "object", - "properties": { - "logType": { - "enumDescriptions": [ - "Default case. Should never be this.", - "Admin reads. Example: CloudIAM getIamPolicy", - "Data writes. Example: CloudSQL Users create", - "Data reads. Example: CloudSQL Users list" - ], - "enum": [ - "LOG_TYPE_UNSPECIFIED", - "ADMIN_READ", - "DATA_WRITE", - "DATA_READ" - ], - "description": "The log type that this config enables.", - "type": "string" - }, - "exemptedMembers": { - "description": "Specifies the identities that do not cause logging for this type of\npermission.\nFollows the same format of Binding.members.", - "type": "array", - "items": { - "type": "string" - } - } - }, - "id": "AuditLogConfig" - }, - "CryptoKey": { - "description": "A CryptoKey represents a logical key that can be used for cryptographic\noperations.\n\nA CryptoKey is made up of one or more versions, which\nrepresent the actual key material used in cryptographic operations.", - "type": "object", - "properties": { - "purpose": { - "description": "The immutable purpose of this CryptoKey. Currently, the only acceptable\npurpose is ENCRYPT_DECRYPT.", - "type": "string", - "enumDescriptions": [ - "Not specified.", - "CryptoKeys with this purpose may be used with\nEncrypt and\nDecrypt." - ], - "enum": [ - "CRYPTO_KEY_PURPOSE_UNSPECIFIED", - "ENCRYPT_DECRYPT" - ] - }, - "nextRotationTime": { - "description": "At next_rotation_time, the Key Management Service will automatically:\n\n1. Create a new version of this CryptoKey.\n2. Mark the new version as primary.\n\nKey rotations performed manually via\nCreateCryptoKeyVersion and\nUpdateCryptoKeyPrimaryVersion\ndo not affect next_rotation_time.", - "format": "google-datetime", - "type": "string" - }, - "labels": { - "additionalProperties": { - "type": "string" - }, - "description": "Labels with user-defined metadata. For more information, see\n[Labeling Keys](/kms/docs/labeling-keys).", - "type": "object" - }, - "createTime": { - "description": "Output only. The time at which this CryptoKey was created.", - "format": "google-datetime", - "type": "string" - }, - "rotationPeriod": { - "description": "next_rotation_time will be advanced by this period when the service\nautomatically rotates a key. Must be at least one day.\n\nIf rotation_period is set, next_rotation_time must also be set.", - "format": "google-duration", - "type": "string" - }, - "primary": { - "$ref": "CryptoKeyVersion", - "description": "Output only. A copy of the \"primary\" CryptoKeyVersion that will be used\nby Encrypt when this CryptoKey is given\nin EncryptRequest.name.\n\nThe CryptoKey's primary version can be updated via\nUpdateCryptoKeyPrimaryVersion." - }, - "name": { - "description": "Output only. The resource name for this CryptoKey in the format\n`projects/*/locations/*/keyRings/*/cryptoKeys/*`.", - "type": "string" - } - }, - "id": "CryptoKey" - }, - "DecryptResponse": { - "description": "Response message for KeyManagementService.Decrypt.", - "type": "object", - "properties": { - "plaintext": { - "description": "The decrypted data originally supplied in EncryptRequest.plaintext.", - "format": "byte", - "type": "string" - } - }, - "id": "DecryptResponse" - }, - "TestIamPermissionsRequest": { - "description": "Request message for `TestIamPermissions` method.", - "type": "object", - "properties": { - "permissions": { - "description": "The set of permissions to check for the `resource`. Permissions with\nwildcards (such as '*' or 'storage.*') are not allowed. For more\ninformation see\n[IAM Overview](https://cloud.google.com/iam/docs/overview#permissions).", - "type": "array", - "items": { - "type": "string" - } - } - }, - "id": "TestIamPermissionsRequest" - }, - "EncryptResponse": { - "description": "Response message for KeyManagementService.Encrypt.", - "type": "object", - "properties": { - "ciphertext": { - "description": "The encrypted data.", - "format": "byte", - "type": "string" - }, - "name": { - "description": "The resource name of the CryptoKeyVersion used in encryption.", - "type": "string" - } - }, - "id": "EncryptResponse" - }, - "KeyRing": { - "description": "A KeyRing is a toplevel logical grouping of CryptoKeys.", - "type": "object", - "properties": { - "createTime": { - "description": "Output only. The time at which this KeyRing was created.", - "format": "google-datetime", - "type": "string" - }, - "name": { - "description": "Output only. The resource name for the KeyRing in the format\n`projects/*/locations/*/keyRings/*`.", - "type": "string" - } - }, - "id": "KeyRing" - }, - "ListLocationsResponse": { - "description": "The response message for Locations.ListLocations.", - "type": "object", - "properties": { - "nextPageToken": { - "description": "The standard List next-page token.", - "type": "string" - }, - "locations": { - "description": "A list of locations that matches the specified filter in the request.", - "type": "array", - "items": { - "$ref": "Location" - } - } - }, - "id": "ListLocationsResponse" - }, - "Policy": { - "description": "Defines an Identity and Access Management (IAM) policy. It is used to\nspecify access control policies for Cloud Platform resources.\n\n\nA `Policy` consists of a list of `bindings`. A `Binding` binds a list of\n`members` to a `role`, where the members can be user accounts, Google groups,\nGoogle domains, and service accounts. A `role` is a named list of permissions\ndefined by IAM.\n\n**Example**\n\n {\n \"bindings\": [\n {\n \"role\": \"roles/owner\",\n \"members\": [\n \"user:mike@example.com\",\n \"group:admins@example.com\",\n \"domain:google.com\",\n \"serviceAccount:my-other-app@appspot.gserviceaccount.com\",\n ]\n },\n {\n \"role\": \"roles/viewer\",\n \"members\": [\"user:sean@example.com\"]\n }\n ]\n }\n\nFor a description of IAM and its features, see the\n[IAM developer's guide](https://cloud.google.com/iam/docs).", - "type": "object", - "properties": { - "etag": { - "description": "`etag` is used for optimistic concurrency control as a way to help\nprevent simultaneous updates of a policy from overwriting each other.\nIt is strongly suggested that systems make use of the `etag` in the\nread-modify-write cycle to perform policy updates in order to avoid race\nconditions: An `etag` is returned in the response to `getIamPolicy`, and\nsystems are expected to put that etag in the request to `setIamPolicy` to\nensure that their change will be applied to the same version of the policy.\n\nIf no `etag` is provided in the call to `setIamPolicy`, then the existing\npolicy is overwritten blindly.", - "format": "byte", - "type": "string" - }, - "version": { - "description": "Deprecated.", - "format": "int32", - "type": "integer" - }, - "auditConfigs": { - "description": "Specifies cloud audit logging configuration for this policy.", - "type": "array", - "items": { - "$ref": "AuditConfig" - } - }, - "bindings": { - "description": "Associates a list of `members` to a `role`.\n`bindings` with no members will result in an error.", - "type": "array", - "items": { - "$ref": "Binding" - } - } - }, - "id": "Policy" - }, - "UpdateCryptoKeyPrimaryVersionRequest": { - "description": "Request message for KeyManagementService.UpdateCryptoKeyPrimaryVersion.", - "type": "object", - "properties": { - "cryptoKeyVersionId": { - "description": "The id of the child CryptoKeyVersion to use as primary.", - "type": "string" - } - }, - "id": "UpdateCryptoKeyPrimaryVersionRequest" - }, - "RestoreCryptoKeyVersionRequest": { - "description": "Request message for KeyManagementService.RestoreCryptoKeyVersion.", - "type": "object", - "properties": {}, - "id": "RestoreCryptoKeyVersionRequest" - }, - "ListKeyRingsResponse": { - "description": "Response message for KeyManagementService.ListKeyRings.", - "type": "object", - "properties": { - "keyRings": { - "description": "The list of KeyRings.", - "type": "array", - "items": { - "$ref": "KeyRing" - } - }, - "nextPageToken": { - "description": "A token to retrieve next page of results. Pass this value in\nListKeyRingsRequest.page_token to retrieve the next page of results.", - "type": "string" - }, - "totalSize": { - "description": "The total number of KeyRings that matched the query.", - "format": "int32", - "type": "integer" - } - }, - "id": "ListKeyRingsResponse" - }, - "AuditConfig": { - "description": "Specifies the audit configuration for a service.\nThe configuration determines which permission types are logged, and what\nidentities, if any, are exempted from logging.\nAn AuditConfig must have one or more AuditLogConfigs.\n\nIf there are AuditConfigs for both `allServices` and a specific service,\nthe union of the two AuditConfigs is used for that service: the log_types\nspecified in each AuditConfig are enabled, and the exempted_members in each\nAuditConfig are exempted.\n\nExample Policy with multiple AuditConfigs:\n\n {\n \"audit_configs\": [\n {\n \"service\": \"allServices\"\n \"audit_log_configs\": [\n {\n \"log_type\": \"DATA_READ\",\n \"exempted_members\": [\n \"user:foo@gmail.com\"\n ]\n },\n {\n \"log_type\": \"DATA_WRITE\",\n },\n {\n \"log_type\": \"ADMIN_READ\",\n }\n ]\n },\n {\n \"service\": \"fooservice.googleapis.com\"\n \"audit_log_configs\": [\n {\n \"log_type\": \"DATA_READ\",\n },\n {\n \"log_type\": \"DATA_WRITE\",\n \"exempted_members\": [\n \"user:bar@gmail.com\"\n ]\n }\n ]\n }\n ]\n }\n\nFor fooservice, this policy enables DATA_READ, DATA_WRITE and ADMIN_READ\nlogging. It also exempts foo@gmail.com from DATA_READ logging, and\nbar@gmail.com from DATA_WRITE logging.", - "type": "object", - "properties": { - "service": { - "description": "Specifies a service that will be enabled for audit logging.\nFor example, `storage.googleapis.com`, `cloudsql.googleapis.com`.\n`allServices` is a special value that covers all services.", - "type": "string" - }, - "auditLogConfigs": { - "description": "The configuration for logging of each type of permission.\nNext ID: 4", - "type": "array", - "items": { - "$ref": "AuditLogConfig" - } - } - }, - "id": "AuditConfig" - }, - "CryptoKeyVersion": { - "description": "A CryptoKeyVersion represents an individual cryptographic key, and the\nassociated key material.\n\nIt can be used for cryptographic operations either directly, or via its\nparent CryptoKey, in which case the server will choose the appropriate\nversion for the operation.\n\nFor security reasons, the raw cryptographic key material represented by a\nCryptoKeyVersion can never be viewed or exported. It can only be used to\nencrypt or decrypt data when an authorized user or application invokes Cloud\nKMS.", - "type": "object", - "properties": { - "createTime": { - "description": "Output only. The time at which this CryptoKeyVersion was created.", - "format": "google-datetime", - "type": "string" - }, - "state": { - "enumDescriptions": [ - "Not specified.", - "This version may be used in Encrypt and\nDecrypt requests.", - "This version may not be used, but the key material is still available,\nand the version can be placed back into the ENABLED state.", - "This version is destroyed, and the key material is no longer stored.\nA version may not leave this state once entered.", - "This version is scheduled for destruction, and will be destroyed soon.\nCall\nRestoreCryptoKeyVersion\nto put it back into the DISABLED state." - ], - "enum": [ - "CRYPTO_KEY_VERSION_STATE_UNSPECIFIED", - "ENABLED", - "DISABLED", - "DESTROYED", - "DESTROY_SCHEDULED" - ], - "description": "The current state of the CryptoKeyVersion.", - "type": "string" - }, - "name": { - "description": "Output only. The resource name for this CryptoKeyVersion in the format\n`projects/*/locations/*/keyRings/*/cryptoKeys/*/cryptoKeyVersions/*`.", - "type": "string" - }, - "destroyEventTime": { - "description": "Output only. The time this CryptoKeyVersion's key material was\ndestroyed. Only present if state is\nDESTROYED.", - "format": "google-datetime", - "type": "string" - }, - "destroyTime": { - "description": "Output only. The time this CryptoKeyVersion's key material is scheduled\nfor destruction. Only present if state is\nDESTROY_SCHEDULED.", - "format": "google-datetime", - "type": "string" - } - }, - "id": "CryptoKeyVersion" - } - }, - "icons": { - "x32": "http://www.google.com/images/icons/product/search-32.gif", - "x16": "http://www.google.com/images/icons/product/search-16.gif" - }, - "protocol": "rest", - "canonicalName": "Cloud KMS", "auth": { "oauth2": { "scopes": { @@ -477,78 +8,178 @@ } } }, - "rootUrl": "https://cloudkms.googleapis.com/", - "ownerDomain": "google.com", - "name": "cloudkms", + "basePath": "", + "baseUrl": "https://cloudkms.googleapis.com/", "batchPath": "batch", - "title": "Google Cloud Key Management Service (KMS) API", + "canonicalName": "Cloud KMS", + "description": "Manages encryption for your cloud services the same way you do on-premises. You can generate, use, rotate, and destroy AES256 encryption keys.", + "discoveryVersion": "v1", + "documentationLink": "https://cloud.google.com/kms/", + "fullyEncodeReservedExpansion": true, + "icons": { + "x16": "http://www.google.com/images/icons/product/search-16.gif", + "x32": "http://www.google.com/images/icons/product/search-32.gif" + }, + "id": "cloudkms:v1", + "kind": "discovery#restDescription", + "name": "cloudkms", + "ownerDomain": "google.com", "ownerName": "Google", + "parameters": { + "$.xgafv": { + "description": "V1 error format.", + "enum": [ + "1", + "2" + ], + "enumDescriptions": [ + "v1 error format", + "v2 error format" + ], + "location": "query", + "type": "string" + }, + "access_token": { + "description": "OAuth access token.", + "location": "query", + "type": "string" + }, + "alt": { + "default": "json", + "description": "Data format for response.", + "enum": [ + "json", + "media", + "proto" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json", + "Media download with context-dependent Content-Type", + "Responses with Content-Type of application/x-protobuf" + ], + "location": "query", + "type": "string" + }, + "bearer_token": { + "description": "OAuth bearer token.", + "location": "query", + "type": "string" + }, + "callback": { + "description": "JSONP", + "location": "query", + "type": "string" + }, + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "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.", + "location": "query", + "type": "string" + }, + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "pp": { + "default": "true", + "description": "Pretty-print response.", + "location": "query", + "type": "boolean" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", + "location": "query", + "type": "string" + }, + "uploadType": { + "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", + "location": "query", + "type": "string" + }, + "upload_protocol": { + "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", + "location": "query", + "type": "string" + } + }, + "protocol": "rest", "resources": { "projects": { "resources": { "locations": { "methods": { - "list": { + "get": { + "description": "Gets information about a location.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}", "httpMethod": "GET", - "response": { - "$ref": "ListLocationsResponse" + "id": "cloudkms.projects.locations.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Resource name for the location.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + } }, + "path": "v1/{+name}", + "response": { + "$ref": "Location" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists information about the supported locations for this service.", + "flatPath": "v1/projects/{projectsId}/locations", + "httpMethod": "GET", + "id": "cloudkms.projects.locations.list", "parameterOrder": [ "name" ], "parameters": { "filter": { - "location": "query", "description": "The standard list filter.", + "location": "query", "type": "string" }, "name": { "description": "The resource that owns the locations collection, if applicable.", - "required": true, - "type": "string", + "location": "path", "pattern": "^projects/[^/]+$", - "location": "path" - }, - "pageToken": { - "location": "query", - "description": "The standard list page token.", + "required": true, "type": "string" }, "pageSize": { "description": "The standard list page size.", "format": "int32", - "type": "integer", - "location": "query" + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "The standard list page token.", + "location": "query", + "type": "string" } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/projects/{projectsId}/locations", - "id": "cloudkms.projects.locations.list", "path": "v1/{+name}/locations", - "description": "Lists information about the supported locations for this service." - }, - "get": { - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}", - "path": "v1/{+name}", - "id": "cloudkms.projects.locations.get", - "description": "Get information about a location.", "response": { - "$ref": "Location" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "GET", - "parameters": { - "name": { - "description": "Resource name for the location.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+$", - "location": "path" - } + "$ref": "ListLocationsResponse" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" @@ -558,657 +189,657 @@ "resources": { "keyRings": { "methods": { - "list": { - "response": { - "$ref": "ListKeyRingsResponse" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "pageSize": { - "location": "query", - "description": "Optional limit on the number of KeyRings to include in the\nresponse. Further KeyRings can subsequently be obtained by\nincluding the ListKeyRingsResponse.next_page_token in a subsequent\nrequest. If unspecified, the server will pick an appropriate default.", - "format": "int32", - "type": "integer" - }, - "parent": { - "description": "Required. The resource name of the location associated with the\nKeyRings, in the format `projects/*/locations/*`.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+$", - "location": "path" - }, - "pageToken": { - "description": "Optional pagination token, returned earlier via\nListKeyRingsResponse.next_page_token.", - "type": "string", - "location": "query" - } - }, - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/keyRings", - "path": "v1/{+parent}/keyRings", - "id": "cloudkms.projects.locations.keyRings.list", - "description": "Lists KeyRings." - }, "create": { - "response": { - "$ref": "KeyRing" - }, + "description": "Create a new KeyRing in a given Project and Location.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/keyRings", + "httpMethod": "POST", + "id": "cloudkms.projects.locations.keyRings.create", "parameterOrder": [ "parent" ], - "httpMethod": "POST", "parameters": { + "keyRingId": { + "description": "Required. It must be unique within a location and match the regular\nexpression `[a-zA-Z0-9_-]{1,63}`", + "location": "query", + "type": "string" + }, "parent": { "description": "Required. The resource name of the location associated with the\nKeyRings, in the format `projects/*/locations/*`.", - "required": true, - "type": "string", + "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+$", - "location": "path" - }, - "keyRingId": { - "location": "query", - "description": "Required. It must be unique within a location and match the regular\nexpression `[a-zA-Z0-9_-]{1,63}`", + "required": true, "type": "string" } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/keyRings", "path": "v1/{+parent}/keyRings", - "id": "cloudkms.projects.locations.keyRings.create", "request": { "$ref": "KeyRing" }, - "description": "Create a new KeyRing in a given Project and Location." + "response": { + "$ref": "KeyRing" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Returns metadata for a given KeyRing.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/keyRings/{keyRingsId}", + "httpMethod": "GET", + "id": "cloudkms.projects.locations.keyRings.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the KeyRing to get.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/keyRings/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "KeyRing" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "getIamPolicy": { + "description": "Gets the access control policy for a resource.\nReturns an empty policy if the resource exists and does not have a policy\nset.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/keyRings/{keyRingsId}:getIamPolicy", + "httpMethod": "GET", + "id": "cloudkms.projects.locations.keyRings.getIamPolicy", + "parameterOrder": [ + "resource" + ], + "parameters": { + "resource": { + "description": "REQUIRED: The resource for which the policy is being requested.\nSee the operation documentation for the appropriate value for this field.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/keyRings/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+resource}:getIamPolicy", + "response": { + "$ref": "Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists KeyRings.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/keyRings", + "httpMethod": "GET", + "id": "cloudkms.projects.locations.keyRings.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "pageSize": { + "description": "Optional limit on the number of KeyRings to include in the\nresponse. Further KeyRings can subsequently be obtained by\nincluding the ListKeyRingsResponse.next_page_token in a subsequent\nrequest. If unspecified, the server will pick an appropriate default.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional pagination token, returned earlier via\nListKeyRingsResponse.next_page_token.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The resource name of the location associated with the\nKeyRings, in the format `projects/*/locations/*`.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+parent}/keyRings", + "response": { + "$ref": "ListKeyRingsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] }, "setIamPolicy": { "description": "Sets the access control policy on the specified resource. Replaces any\nexisting policy.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/keyRings/{keyRingsId}:setIamPolicy", + "httpMethod": "POST", + "id": "cloudkms.projects.locations.keyRings.setIamPolicy", + "parameterOrder": [ + "resource" + ], + "parameters": { + "resource": { + "description": "REQUIRED: The resource for which the policy is being specified.\nSee the operation documentation for the appropriate value for this field.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/keyRings/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+resource}:setIamPolicy", "request": { "$ref": "SetIamPolicyRequest" }, "response": { "$ref": "Policy" }, - "parameterOrder": [ - "resource" - ], - "httpMethod": "POST", "scopes": [ "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "resource": { - "location": "path", - "description": "REQUIRED: The resource for which the policy is being specified.\nSee the operation documentation for the appropriate value for this field.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+/keyRings/[^/]+$" - } - }, - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/keyRings/{keyRingsId}:setIamPolicy", - "path": "v1/{+resource}:setIamPolicy", - "id": "cloudkms.projects.locations.keyRings.setIamPolicy" - }, - "getIamPolicy": { - "description": "Gets the access control policy for a resource.\nReturns an empty policy if the resource exists and does not have a policy\nset.", - "response": { - "$ref": "Policy" - }, - "parameterOrder": [ - "resource" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "resource": { - "description": "REQUIRED: The resource for which the policy is being requested.\nSee the operation documentation for the appropriate value for this field.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+/keyRings/[^/]+$", - "location": "path" - } - }, - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/keyRings/{keyRingsId}:getIamPolicy", - "path": "v1/{+resource}:getIamPolicy", - "id": "cloudkms.projects.locations.keyRings.getIamPolicy" - }, - "get": { - "response": { - "$ref": "KeyRing" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "name": { - "description": "The name of the KeyRing to get.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+/keyRings/[^/]+$", - "location": "path" - } - }, - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/keyRings/{keyRingsId}", - "path": "v1/{+name}", - "id": "cloudkms.projects.locations.keyRings.get", - "description": "Returns metadata for a given KeyRing." + ] }, "testIamPermissions": { - "response": { - "$ref": "TestIamPermissionsResponse" - }, + "description": "Returns permissions that a caller has on the specified resource.\nIf the resource does not exist, this will return an empty set of\npermissions, not a NOT_FOUND error.\n\nNote: This operation is designed to be used for building permission-aware\nUIs and command-line tools, not for authorization checking. This operation\nmay \"fail open\" without warning.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/keyRings/{keyRingsId}:testIamPermissions", + "httpMethod": "POST", + "id": "cloudkms.projects.locations.keyRings.testIamPermissions", "parameterOrder": [ "resource" ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], "parameters": { "resource": { "description": "REQUIRED: The resource for which the policy detail is being requested.\nSee the operation documentation for the appropriate value for this field.", - "required": true, - "type": "string", + "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+/keyRings/[^/]+$", - "location": "path" + "required": true, + "type": "string" } }, - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/keyRings/{keyRingsId}:testIamPermissions", "path": "v1/{+resource}:testIamPermissions", - "id": "cloudkms.projects.locations.keyRings.testIamPermissions", - "description": "Returns permissions that a caller has on the specified resource.\nIf the resource does not exist, this will return an empty set of\npermissions, not a NOT_FOUND error.\n\nNote: This operation is designed to be used for building permission-aware\nUIs and command-line tools, not for authorization checking. This operation\nmay \"fail open\" without warning.", "request": { "$ref": "TestIamPermissionsRequest" - } + }, + "response": { + "$ref": "TestIamPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] } }, "resources": { "cryptoKeys": { "methods": { - "testIamPermissions": { - "request": { - "$ref": "TestIamPermissionsRequest" - }, - "description": "Returns permissions that a caller has on the specified resource.\nIf the resource does not exist, this will return an empty set of\npermissions, not a NOT_FOUND error.\n\nNote: This operation is designed to be used for building permission-aware\nUIs and command-line tools, not for authorization checking. This operation\nmay \"fail open\" without warning.", + "create": { + "description": "Create a new CryptoKey within a KeyRing.\n\nCryptoKey.purpose is required.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/keyRings/{keyRingsId}/cryptoKeys", "httpMethod": "POST", + "id": "cloudkms.projects.locations.keyRings.cryptoKeys.create", "parameterOrder": [ - "resource" + "parent" ], - "response": { - "$ref": "TestIamPermissionsResponse" - }, "parameters": { - "resource": { + "cryptoKeyId": { + "description": "Required. It must be unique within a KeyRing and match the regular\nexpression `[a-zA-Z0-9_-]{1,63}`", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The name of the KeyRing associated with the\nCryptoKeys.", "location": "path", - "description": "REQUIRED: The resource for which the policy detail is being requested.\nSee the operation documentation for the appropriate value for this field.", + "pattern": "^projects/[^/]+/locations/[^/]+/keyRings/[^/]+$", "required": true, - "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+/keyRings/[^/]+/cryptoKeys/[^/]+$" + "type": "string" } }, + "path": "v1/{+parent}/cryptoKeys", + "request": { + "$ref": "CryptoKey" + }, + "response": { + "$ref": "CryptoKey" + }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/keyRings/{keyRingsId}/cryptoKeys/{cryptoKeysId}:testIamPermissions", - "id": "cloudkms.projects.locations.keyRings.cryptoKeys.testIamPermissions", - "path": "v1/{+resource}:testIamPermissions" + ] }, "decrypt": { - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/keyRings/{keyRingsId}/cryptoKeys/{cryptoKeysId}:decrypt", - "path": "v1/{+name}:decrypt", - "id": "cloudkms.projects.locations.keyRings.cryptoKeys.decrypt", - "request": { - "$ref": "DecryptRequest" - }, "description": "Decrypts data that was protected by Encrypt.", - "response": { - "$ref": "DecryptResponse" - }, + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/keyRings/{keyRingsId}/cryptoKeys/{cryptoKeysId}:decrypt", + "httpMethod": "POST", + "id": "cloudkms.projects.locations.keyRings.cryptoKeys.decrypt", "parameterOrder": [ "name" ], - "httpMethod": "POST", "parameters": { "name": { "description": "Required. The resource name of the CryptoKey to use for decryption.\nThe server will choose the appropriate version.", - "required": true, - "type": "string", + "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+/keyRings/[^/]+/cryptoKeys/[^/]+$", - "location": "path" + "required": true, + "type": "string" } }, + "path": "v1/{+name}:decrypt", + "request": { + "$ref": "DecryptRequest" + }, + "response": { + "$ref": "DecryptResponse" + }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ] }, - "list": { - "description": "Lists CryptoKeys.", - "response": { - "$ref": "ListCryptoKeysResponse" - }, + "encrypt": { + "description": "Encrypts data, so that it can only be recovered by a call to Decrypt.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/keyRings/{keyRingsId}/cryptoKeys/{cryptoKeysId}:encrypt", + "httpMethod": "POST", + "id": "cloudkms.projects.locations.keyRings.cryptoKeys.encrypt", "parameterOrder": [ - "parent" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "name" ], "parameters": { - "pageToken": { - "location": "query", - "description": "Optional pagination token, returned earlier via\nListCryptoKeysResponse.next_page_token.", - "type": "string" - }, - "pageSize": { - "location": "query", - "description": "Optional limit on the number of CryptoKeys to include in the\nresponse. Further CryptoKeys can subsequently be obtained by\nincluding the ListCryptoKeysResponse.next_page_token in a subsequent\nrequest. If unspecified, the server will pick an appropriate default.", - "format": "int32", - "type": "integer" - }, - "parent": { - "description": "Required. The resource name of the KeyRing to list, in the format\n`projects/*/locations/*/keyRings/*`.", + "name": { + "description": "Required. The resource name of the CryptoKey or CryptoKeyVersion\nto use for encryption.\n\nIf a CryptoKey is specified, the server will use its\nprimary version.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/keyRings/[^/]+/cryptoKeys/.+$", "required": true, - "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+/keyRings/[^/]+$", - "location": "path" + "type": "string" } }, - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/keyRings/{keyRingsId}/cryptoKeys", - "path": "v1/{+parent}/cryptoKeys", - "id": "cloudkms.projects.locations.keyRings.cryptoKeys.list" - }, - "encrypt": { + "path": "v1/{+name}:encrypt", "request": { "$ref": "EncryptRequest" }, - "description": "Encrypts data, so that it can only be recovered by a call to Decrypt.", "response": { "$ref": "EncryptResponse" }, - "parameterOrder": [ - "name" - ], - "httpMethod": "POST", - "parameters": { - "name": { - "location": "path", - "description": "Required. The resource name of the CryptoKey or CryptoKeyVersion\nto use for encryption.\n\nIf a CryptoKey is specified, the server will use its\nprimary version.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+/keyRings/[^/]+/cryptoKeys/.+$" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/keyRings/{keyRingsId}/cryptoKeys/{cryptoKeysId}:encrypt", - "path": "v1/{+name}:encrypt", - "id": "cloudkms.projects.locations.keyRings.cryptoKeys.encrypt" - }, - "setIamPolicy": { - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/keyRings/{keyRingsId}/cryptoKeys/{cryptoKeysId}:setIamPolicy", - "id": "cloudkms.projects.locations.keyRings.cryptoKeys.setIamPolicy", - "path": "v1/{+resource}:setIamPolicy", - "request": { - "$ref": "SetIamPolicyRequest" - }, - "description": "Sets the access control policy on the specified resource. Replaces any\nexisting policy.", - "httpMethod": "POST", - "parameterOrder": [ - "resource" - ], - "response": { - "$ref": "Policy" - }, - "parameters": { - "resource": { - "description": "REQUIRED: The resource for which the policy is being specified.\nSee the operation documentation for the appropriate value for this field.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+/keyRings/[^/]+/cryptoKeys/[^/]+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "create": { - "request": { - "$ref": "CryptoKey" - }, - "description": "Create a new CryptoKey within a KeyRing.\n\nCryptoKey.purpose is required.", - "httpMethod": "POST", - "parameterOrder": [ - "parent" - ], - "response": { - "$ref": "CryptoKey" - }, - "parameters": { - "parent": { - "description": "Required. The name of the KeyRing associated with the\nCryptoKeys.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+/keyRings/[^/]+$", - "location": "path" - }, - "cryptoKeyId": { - "location": "query", - "description": "Required. It must be unique within a KeyRing and match the regular\nexpression `[a-zA-Z0-9_-]{1,63}`", - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/keyRings/{keyRingsId}/cryptoKeys", - "id": "cloudkms.projects.locations.keyRings.cryptoKeys.create", - "path": "v1/{+parent}/cryptoKeys" - }, - "updatePrimaryVersion": { - "request": { - "$ref": "UpdateCryptoKeyPrimaryVersionRequest" - }, - "description": "Update the version of a CryptoKey that will be used in Encrypt", - "httpMethod": "POST", - "parameterOrder": [ - "name" - ], - "response": { - "$ref": "CryptoKey" - }, - "parameters": { - "name": { - "description": "The resource name of the CryptoKey to update.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+/keyRings/[^/]+/cryptoKeys/[^/]+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/keyRings/{keyRingsId}/cryptoKeys/{cryptoKeysId}:updatePrimaryVersion", - "id": "cloudkms.projects.locations.keyRings.cryptoKeys.updatePrimaryVersion", - "path": "v1/{+name}:updatePrimaryVersion" - }, - "getIamPolicy": { - "description": "Gets the access control policy for a resource.\nReturns an empty policy if the resource exists and does not have a policy\nset.", - "response": { - "$ref": "Policy" - }, - "parameterOrder": [ - "resource" - ], - "httpMethod": "GET", - "parameters": { - "resource": { - "description": "REQUIRED: The resource for which the policy is being requested.\nSee the operation documentation for the appropriate value for this field.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+/keyRings/[^/]+/cryptoKeys/[^/]+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/keyRings/{keyRingsId}/cryptoKeys/{cryptoKeysId}:getIamPolicy", - "path": "v1/{+resource}:getIamPolicy", - "id": "cloudkms.projects.locations.keyRings.cryptoKeys.getIamPolicy" - }, - "patch": { - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/keyRings/{keyRingsId}/cryptoKeys/{cryptoKeysId}", - "id": "cloudkms.projects.locations.keyRings.cryptoKeys.patch", - "path": "v1/{+name}", - "request": { - "$ref": "CryptoKey" - }, - "description": "Update a CryptoKey.", - "httpMethod": "PATCH", - "parameterOrder": [ - "name" - ], - "response": { - "$ref": "CryptoKey" - }, - "parameters": { - "updateMask": { - "location": "query", - "description": "Required list of fields to be updated in this request.", - "format": "google-fieldmask", - "type": "string" - }, - "name": { - "description": "Output only. The resource name for this CryptoKey in the format\n`projects/*/locations/*/keyRings/*/cryptoKeys/*`.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+/keyRings/[^/]+/cryptoKeys/[^/]+$", - "location": "path" - } - }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ] }, "get": { "description": "Returns metadata for a given CryptoKey, as well as its\nprimary CryptoKeyVersion.", - "response": { - "$ref": "CryptoKey" - }, + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/keyRings/{keyRingsId}/cryptoKeys/{cryptoKeysId}", + "httpMethod": "GET", + "id": "cloudkms.projects.locations.keyRings.cryptoKeys.get", "parameterOrder": [ "name" ], - "httpMethod": "GET", "parameters": { "name": { - "location": "path", "description": "The name of the CryptoKey to get.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/keyRings/[^/]+/cryptoKeys/[^/]+$", "required": true, - "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+/keyRings/[^/]+/cryptoKeys/[^/]+$" + "type": "string" } }, + "path": "v1/{+name}", + "response": { + "$ref": "CryptoKey" + }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "getIamPolicy": { + "description": "Gets the access control policy for a resource.\nReturns an empty policy if the resource exists and does not have a policy\nset.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/keyRings/{keyRingsId}/cryptoKeys/{cryptoKeysId}:getIamPolicy", + "httpMethod": "GET", + "id": "cloudkms.projects.locations.keyRings.cryptoKeys.getIamPolicy", + "parameterOrder": [ + "resource" ], + "parameters": { + "resource": { + "description": "REQUIRED: The resource for which the policy is being requested.\nSee the operation documentation for the appropriate value for this field.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/keyRings/[^/]+/cryptoKeys/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+resource}:getIamPolicy", + "response": { + "$ref": "Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists CryptoKeys.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/keyRings/{keyRingsId}/cryptoKeys", + "httpMethod": "GET", + "id": "cloudkms.projects.locations.keyRings.cryptoKeys.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "pageSize": { + "description": "Optional limit on the number of CryptoKeys to include in the\nresponse. Further CryptoKeys can subsequently be obtained by\nincluding the ListCryptoKeysResponse.next_page_token in a subsequent\nrequest. If unspecified, the server will pick an appropriate default.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional pagination token, returned earlier via\nListCryptoKeysResponse.next_page_token.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The resource name of the KeyRing to list, in the format\n`projects/*/locations/*/keyRings/*`.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/keyRings/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+parent}/cryptoKeys", + "response": { + "$ref": "ListCryptoKeysResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "patch": { + "description": "Update a CryptoKey.", "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/keyRings/{keyRingsId}/cryptoKeys/{cryptoKeysId}", + "httpMethod": "PATCH", + "id": "cloudkms.projects.locations.keyRings.cryptoKeys.patch", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Output only. The resource name for this CryptoKey in the format\n`projects/*/locations/*/keyRings/*/cryptoKeys/*`.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/keyRings/[^/]+/cryptoKeys/[^/]+$", + "required": true, + "type": "string" + }, + "updateMask": { + "description": "Required list of fields to be updated in this request.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + } + }, "path": "v1/{+name}", - "id": "cloudkms.projects.locations.keyRings.cryptoKeys.get" + "request": { + "$ref": "CryptoKey" + }, + "response": { + "$ref": "CryptoKey" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "setIamPolicy": { + "description": "Sets the access control policy on the specified resource. Replaces any\nexisting policy.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/keyRings/{keyRingsId}/cryptoKeys/{cryptoKeysId}:setIamPolicy", + "httpMethod": "POST", + "id": "cloudkms.projects.locations.keyRings.cryptoKeys.setIamPolicy", + "parameterOrder": [ + "resource" + ], + "parameters": { + "resource": { + "description": "REQUIRED: The resource for which the policy is being specified.\nSee the operation documentation for the appropriate value for this field.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/keyRings/[^/]+/cryptoKeys/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+resource}:setIamPolicy", + "request": { + "$ref": "SetIamPolicyRequest" + }, + "response": { + "$ref": "Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource.\nIf the resource does not exist, this will return an empty set of\npermissions, not a NOT_FOUND error.\n\nNote: This operation is designed to be used for building permission-aware\nUIs and command-line tools, not for authorization checking. This operation\nmay \"fail open\" without warning.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/keyRings/{keyRingsId}/cryptoKeys/{cryptoKeysId}:testIamPermissions", + "httpMethod": "POST", + "id": "cloudkms.projects.locations.keyRings.cryptoKeys.testIamPermissions", + "parameterOrder": [ + "resource" + ], + "parameters": { + "resource": { + "description": "REQUIRED: The resource for which the policy detail is being requested.\nSee the operation documentation for the appropriate value for this field.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/keyRings/[^/]+/cryptoKeys/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+resource}:testIamPermissions", + "request": { + "$ref": "TestIamPermissionsRequest" + }, + "response": { + "$ref": "TestIamPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "updatePrimaryVersion": { + "description": "Update the version of a CryptoKey that will be used in Encrypt", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/keyRings/{keyRingsId}/cryptoKeys/{cryptoKeysId}:updatePrimaryVersion", + "httpMethod": "POST", + "id": "cloudkms.projects.locations.keyRings.cryptoKeys.updatePrimaryVersion", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The resource name of the CryptoKey to update.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/keyRings/[^/]+/cryptoKeys/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}:updatePrimaryVersion", + "request": { + "$ref": "UpdateCryptoKeyPrimaryVersionRequest" + }, + "response": { + "$ref": "CryptoKey" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] } }, "resources": { "cryptoKeyVersions": { "methods": { - "restore": { - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/keyRings/{keyRingsId}/cryptoKeys/{cryptoKeysId}/cryptoKeyVersions/{cryptoKeyVersionsId}:restore", - "id": "cloudkms.projects.locations.keyRings.cryptoKeys.cryptoKeyVersions.restore", - "path": "v1/{+name}:restore", - "request": { - "$ref": "RestoreCryptoKeyVersionRequest" - }, - "description": "Restore a CryptoKeyVersion in the\nDESTROY_SCHEDULED,\nstate.\n\nUpon restoration of the CryptoKeyVersion, state\nwill be set to DISABLED,\nand destroy_time will be cleared.", + "create": { + "description": "Create a new CryptoKeyVersion in a CryptoKey.\n\nThe server will assign the next sequential id. If unset,\nstate will be set to\nENABLED.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/keyRings/{keyRingsId}/cryptoKeys/{cryptoKeysId}/cryptoKeyVersions", "httpMethod": "POST", + "id": "cloudkms.projects.locations.keyRings.cryptoKeys.cryptoKeyVersions.create", "parameterOrder": [ - "name" + "parent" ], + "parameters": { + "parent": { + "description": "Required. The name of the CryptoKey associated with\nthe CryptoKeyVersions.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/keyRings/[^/]+/cryptoKeys/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+parent}/cryptoKeyVersions", + "request": { + "$ref": "CryptoKeyVersion" + }, "response": { "$ref": "CryptoKeyVersion" }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "destroy": { + "description": "Schedule a CryptoKeyVersion for destruction.\n\nUpon calling this method, CryptoKeyVersion.state will be set to\nDESTROY_SCHEDULED\nand destroy_time will be set to a time 24\nhours in the future, at which point the state\nwill be changed to\nDESTROYED, and the key\nmaterial will be irrevocably destroyed.\n\nBefore the destroy_time is reached,\nRestoreCryptoKeyVersion may be called to reverse the process.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/keyRings/{keyRingsId}/cryptoKeys/{cryptoKeysId}/cryptoKeyVersions/{cryptoKeyVersionsId}:destroy", + "httpMethod": "POST", + "id": "cloudkms.projects.locations.keyRings.cryptoKeys.cryptoKeyVersions.destroy", + "parameterOrder": [ + "name" + ], "parameters": { "name": { - "description": "The resource name of the CryptoKeyVersion to restore.", - "required": true, - "type": "string", + "description": "The resource name of the CryptoKeyVersion to destroy.", + "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+/keyRings/[^/]+/cryptoKeys/[^/]+/cryptoKeyVersions/[^/]+$", - "location": "path" + "required": true, + "type": "string" } }, + "path": "v1/{+name}:destroy", + "request": { + "$ref": "DestroyCryptoKeyVersionRequest" + }, + "response": { + "$ref": "CryptoKeyVersion" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Returns metadata for a given CryptoKeyVersion.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/keyRings/{keyRingsId}/cryptoKeys/{cryptoKeysId}/cryptoKeyVersions/{cryptoKeyVersionsId}", + "httpMethod": "GET", + "id": "cloudkms.projects.locations.keyRings.cryptoKeys.cryptoKeyVersions.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the CryptoKeyVersion to get.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/keyRings/[^/]+/cryptoKeys/[^/]+/cryptoKeyVersions/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "CryptoKeyVersion" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists CryptoKeyVersions.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/keyRings/{keyRingsId}/cryptoKeys/{cryptoKeysId}/cryptoKeyVersions", + "httpMethod": "GET", + "id": "cloudkms.projects.locations.keyRings.cryptoKeys.cryptoKeyVersions.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "pageSize": { + "description": "Optional limit on the number of CryptoKeyVersions to\ninclude in the response. Further CryptoKeyVersions can\nsubsequently be obtained by including the\nListCryptoKeyVersionsResponse.next_page_token in a subsequent request.\nIf unspecified, the server will pick an appropriate default.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional pagination token, returned earlier via\nListCryptoKeyVersionsResponse.next_page_token.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The resource name of the CryptoKey to list, in the format\n`projects/*/locations/*/keyRings/*/cryptoKeys/*`.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/keyRings/[^/]+/cryptoKeys/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+parent}/cryptoKeyVersions", + "response": { + "$ref": "ListCryptoKeyVersionsResponse" + }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ] }, "patch": { - "request": { - "$ref": "CryptoKeyVersion" - }, "description": "Update a CryptoKeyVersion's metadata.\n\nstate may be changed between\nENABLED and\nDISABLED using this\nmethod. See DestroyCryptoKeyVersion and RestoreCryptoKeyVersion to\nmove between other states.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/keyRings/{keyRingsId}/cryptoKeys/{cryptoKeysId}/cryptoKeyVersions/{cryptoKeyVersionsId}", "httpMethod": "PATCH", + "id": "cloudkms.projects.locations.keyRings.cryptoKeys.cryptoKeyVersions.patch", "parameterOrder": [ "name" ], - "response": { - "$ref": "CryptoKeyVersion" - }, "parameters": { + "name": { + "description": "Output only. The resource name for this CryptoKeyVersion in the format\n`projects/*/locations/*/keyRings/*/cryptoKeys/*/cryptoKeyVersions/*`.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/keyRings/[^/]+/cryptoKeys/[^/]+/cryptoKeyVersions/[^/]+$", + "required": true, + "type": "string" + }, "updateMask": { "description": "Required list of fields to be updated in this request.", "format": "google-fieldmask", - "type": "string", - "location": "query" - }, - "name": { - "description": "Output only. The resource name for this CryptoKeyVersion in the format\n`projects/*/locations/*/keyRings/*/cryptoKeys/*/cryptoKeyVersions/*`.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+/keyRings/[^/]+/cryptoKeys/[^/]+/cryptoKeyVersions/[^/]+$", - "location": "path" + "location": "query", + "type": "string" } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/keyRings/{keyRingsId}/cryptoKeys/{cryptoKeysId}/cryptoKeyVersions/{cryptoKeyVersionsId}", - "id": "cloudkms.projects.locations.keyRings.cryptoKeys.cryptoKeyVersions.patch", - "path": "v1/{+name}" - }, - "get": { - "response": { - "$ref": "CryptoKeyVersion" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "name": { - "location": "path", - "description": "The name of the CryptoKeyVersion to get.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+/keyRings/[^/]+/cryptoKeys/[^/]+/cryptoKeyVersions/[^/]+$" - } - }, - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/keyRings/{keyRingsId}/cryptoKeys/{cryptoKeysId}/cryptoKeyVersions/{cryptoKeyVersionsId}", "path": "v1/{+name}", - "id": "cloudkms.projects.locations.keyRings.cryptoKeys.cryptoKeyVersions.get", - "description": "Returns metadata for a given CryptoKeyVersion." - }, - "list": { - "description": "Lists CryptoKeyVersions.", - "response": { - "$ref": "ListCryptoKeyVersionsResponse" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "pageToken": { - "description": "Optional pagination token, returned earlier via\nListCryptoKeyVersionsResponse.next_page_token.", - "type": "string", - "location": "query" - }, - "pageSize": { - "description": "Optional limit on the number of CryptoKeyVersions to\ninclude in the response. Further CryptoKeyVersions can\nsubsequently be obtained by including the\nListCryptoKeyVersionsResponse.next_page_token in a subsequent request.\nIf unspecified, the server will pick an appropriate default.", - "format": "int32", - "type": "integer", - "location": "query" - }, - "parent": { - "location": "path", - "description": "Required. The resource name of the CryptoKey to list, in the format\n`projects/*/locations/*/keyRings/*/cryptoKeys/*`.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+/keyRings/[^/]+/cryptoKeys/[^/]+$" - } - }, - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/keyRings/{keyRingsId}/cryptoKeys/{cryptoKeysId}/cryptoKeyVersions", - "path": "v1/{+parent}/cryptoKeyVersions", - "id": "cloudkms.projects.locations.keyRings.cryptoKeys.cryptoKeyVersions.list" - }, - "create": { - "description": "Create a new CryptoKeyVersion in a CryptoKey.\n\nThe server will assign the next sequential id. If unset,\nstate will be set to\nENABLED.", "request": { "$ref": "CryptoKeyVersion" }, "response": { "$ref": "CryptoKeyVersion" }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "POST", "scopes": [ "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "parent": { - "description": "Required. The name of the CryptoKey associated with\nthe CryptoKeyVersions.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+/keyRings/[^/]+/cryptoKeys/[^/]+$", - "location": "path" - } - }, - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/keyRings/{keyRingsId}/cryptoKeys/{cryptoKeysId}/cryptoKeyVersions", - "path": "v1/{+parent}/cryptoKeyVersions", - "id": "cloudkms.projects.locations.keyRings.cryptoKeys.cryptoKeyVersions.create" + ] }, - "destroy": { - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/keyRings/{keyRingsId}/cryptoKeys/{cryptoKeysId}/cryptoKeyVersions/{cryptoKeyVersionsId}:destroy", - "id": "cloudkms.projects.locations.keyRings.cryptoKeys.cryptoKeyVersions.destroy", - "path": "v1/{+name}:destroy", - "request": { - "$ref": "DestroyCryptoKeyVersionRequest" - }, - "description": "Schedule a CryptoKeyVersion for destruction.\n\nUpon calling this method, CryptoKeyVersion.state will be set to\nDESTROY_SCHEDULED\nand destroy_time will be set to a time 24\nhours in the future, at which point the state\nwill be changed to\nDESTROYED, and the key\nmaterial will be irrevocably destroyed.\n\nBefore the destroy_time is reached,\nRestoreCryptoKeyVersion may be called to reverse the process.", + "restore": { + "description": "Restore a CryptoKeyVersion in the\nDESTROY_SCHEDULED,\nstate.\n\nUpon restoration of the CryptoKeyVersion, state\nwill be set to DISABLED,\nand destroy_time will be cleared.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/keyRings/{keyRingsId}/cryptoKeys/{cryptoKeysId}/cryptoKeyVersions/{cryptoKeyVersionsId}:restore", "httpMethod": "POST", + "id": "cloudkms.projects.locations.keyRings.cryptoKeys.cryptoKeyVersions.restore", "parameterOrder": [ "name" ], - "response": { - "$ref": "CryptoKeyVersion" - }, "parameters": { "name": { + "description": "The resource name of the CryptoKeyVersion to restore.", "location": "path", - "description": "The resource name of the CryptoKeyVersion to destroy.", + "pattern": "^projects/[^/]+/locations/[^/]+/keyRings/[^/]+/cryptoKeys/[^/]+/cryptoKeyVersions/[^/]+$", "required": true, - "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+/keyRings/[^/]+/cryptoKeys/[^/]+/cryptoKeyVersions/[^/]+$" + "type": "string" } }, + "path": "v1/{+name}:restore", + "request": { + "$ref": "RestoreCryptoKeyVersionRequest" + }, + "response": { + "$ref": "CryptoKeyVersion" + }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ] @@ -1224,94 +855,468 @@ } } }, - "parameters": { - "quotaUser": { - "location": "query", - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", - "type": "string" + "revision": "20180316", + "rootUrl": "https://cloudkms.googleapis.com/", + "schemas": { + "AuditConfig": { + "description": "Specifies the audit configuration for a service.\nThe configuration determines which permission types are logged, and what\nidentities, if any, are exempted from logging.\nAn AuditConfig must have one or more AuditLogConfigs.\n\nIf there are AuditConfigs for both `allServices` and a specific service,\nthe union of the two AuditConfigs is used for that service: the log_types\nspecified in each AuditConfig are enabled, and the exempted_members in each\nAuditLogConfig are exempted.\n\nExample Policy with multiple AuditConfigs:\n\n {\n \"audit_configs\": [\n {\n \"service\": \"allServices\"\n \"audit_log_configs\": [\n {\n \"log_type\": \"DATA_READ\",\n \"exempted_members\": [\n \"user:foo@gmail.com\"\n ]\n },\n {\n \"log_type\": \"DATA_WRITE\",\n },\n {\n \"log_type\": \"ADMIN_READ\",\n }\n ]\n },\n {\n \"service\": \"fooservice.googleapis.com\"\n \"audit_log_configs\": [\n {\n \"log_type\": \"DATA_READ\",\n },\n {\n \"log_type\": \"DATA_WRITE\",\n \"exempted_members\": [\n \"user:bar@gmail.com\"\n ]\n }\n ]\n }\n ]\n }\n\nFor fooservice, this policy enables DATA_READ, DATA_WRITE and ADMIN_READ\nlogging. It also exempts foo@gmail.com from DATA_READ logging, and\nbar@gmail.com from DATA_WRITE logging.", + "id": "AuditConfig", + "properties": { + "auditLogConfigs": { + "description": "The configuration for logging of each type of permission.\nNext ID: 4", + "items": { + "$ref": "AuditLogConfig" + }, + "type": "array" + }, + "service": { + "description": "Specifies a service that will be enabled for audit logging.\nFor example, `storage.googleapis.com`, `cloudsql.googleapis.com`.\n`allServices` is a special value that covers all services.", + "type": "string" + } + }, + "type": "object" }, - "pp": { - "location": "query", - "description": "Pretty-print response.", - "type": "boolean", - "default": "true" + "AuditLogConfig": { + "description": "Provides the configuration for logging a type of permissions.\nExample:\n\n {\n \"audit_log_configs\": [\n {\n \"log_type\": \"DATA_READ\",\n \"exempted_members\": [\n \"user:foo@gmail.com\"\n ]\n },\n {\n \"log_type\": \"DATA_WRITE\",\n }\n ]\n }\n\nThis enables 'DATA_READ' and 'DATA_WRITE' logging, while exempting\nfoo@gmail.com from DATA_READ logging.", + "id": "AuditLogConfig", + "properties": { + "exemptedMembers": { + "description": "Specifies the identities that do not cause logging for this type of\npermission.\nFollows the same format of Binding.members.", + "items": { + "type": "string" + }, + "type": "array" + }, + "logType": { + "description": "The log type that this config enables.", + "enum": [ + "LOG_TYPE_UNSPECIFIED", + "ADMIN_READ", + "DATA_WRITE", + "DATA_READ" + ], + "enumDescriptions": [ + "Default case. Should never be this.", + "Admin reads. Example: CloudIAM getIamPolicy", + "Data writes. Example: CloudSQL Users create", + "Data reads. Example: CloudSQL Users list" + ], + "type": "string" + } + }, + "type": "object" }, - "bearer_token": { - "description": "OAuth bearer token.", - "type": "string", - "location": "query" + "Binding": { + "description": "Associates `members` with a `role`.", + "id": "Binding", + "properties": { + "members": { + "description": "Specifies the identities requesting access for a Cloud Platform resource.\n`members` can have the following values:\n\n* `allUsers`: A special identifier that represents anyone who is\n on the internet; with or without a Google account.\n\n* `allAuthenticatedUsers`: A special identifier that represents anyone\n who is authenticated with a Google account or a service account.\n\n* `user:{emailid}`: An email address that represents a specific Google\n account. For example, `alice@gmail.com` or `joe@example.com`.\n\n\n* `serviceAccount:{emailid}`: An email address that represents a service\n account. For example, `my-other-app@appspot.gserviceaccount.com`.\n\n* `group:{emailid}`: An email address that represents a Google group.\n For example, `admins@example.com`.\n\n\n* `domain:{domain}`: A Google Apps domain name that represents all the\n users of that domain. For example, `google.com` or `example.com`.\n\n", + "items": { + "type": "string" + }, + "type": "array" + }, + "role": { + "description": "Role that is assigned to `members`.\nFor example, `roles/viewer`, `roles/editor`, or `roles/owner`.\nRequired", + "type": "string" + } + }, + "type": "object" }, - "oauth_token": { - "location": "query", - "description": "OAuth 2.0 token for the current user.", - "type": "string" + "CryptoKey": { + "description": "A CryptoKey represents a logical key that can be used for cryptographic\noperations.\n\nA CryptoKey is made up of one or more versions, which\nrepresent the actual key material used in cryptographic operations.", + "id": "CryptoKey", + "properties": { + "createTime": { + "description": "Output only. The time at which this CryptoKey was created.", + "format": "google-datetime", + "type": "string" + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Labels with user-defined metadata. For more information, see\n[Labeling Keys](/kms/docs/labeling-keys).", + "type": "object" + }, + "name": { + "description": "Output only. The resource name for this CryptoKey in the format\n`projects/*/locations/*/keyRings/*/cryptoKeys/*`.", + "type": "string" + }, + "nextRotationTime": { + "description": "At next_rotation_time, the Key Management Service will automatically:\n\n1. Create a new version of this CryptoKey.\n2. Mark the new version as primary.\n\nKey rotations performed manually via\nCreateCryptoKeyVersion and\nUpdateCryptoKeyPrimaryVersion\ndo not affect next_rotation_time.", + "format": "google-datetime", + "type": "string" + }, + "primary": { + "$ref": "CryptoKeyVersion", + "description": "Output only. A copy of the \"primary\" CryptoKeyVersion that will be used\nby Encrypt when this CryptoKey is given\nin EncryptRequest.name.\n\nThe CryptoKey's primary version can be updated via\nUpdateCryptoKeyPrimaryVersion." + }, + "purpose": { + "description": "The immutable purpose of this CryptoKey. Currently, the only acceptable\npurpose is ENCRYPT_DECRYPT.", + "enum": [ + "CRYPTO_KEY_PURPOSE_UNSPECIFIED", + "ENCRYPT_DECRYPT" + ], + "enumDescriptions": [ + "Not specified.", + "CryptoKeys with this purpose may be used with\nEncrypt and\nDecrypt." + ], + "type": "string" + }, + "rotationPeriod": { + "description": "next_rotation_time will be advanced by this period when the service\nautomatically rotates a key. Must be at least one day.\n\nIf rotation_period is set, next_rotation_time must also be set.", + "format": "google-duration", + "type": "string" + } + }, + "type": "object" }, - "upload_protocol": { - "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", - "type": "string", - "location": "query" + "CryptoKeyVersion": { + "description": "A CryptoKeyVersion represents an individual cryptographic key, and the\nassociated key material.\n\nIt can be used for cryptographic operations either directly, or via its\nparent CryptoKey, in which case the server will choose the appropriate\nversion for the operation.\n\nFor security reasons, the raw cryptographic key material represented by a\nCryptoKeyVersion can never be viewed or exported. It can only be used to\nencrypt or decrypt data when an authorized user or application invokes Cloud\nKMS.", + "id": "CryptoKeyVersion", + "properties": { + "createTime": { + "description": "Output only. The time at which this CryptoKeyVersion was created.", + "format": "google-datetime", + "type": "string" + }, + "destroyEventTime": { + "description": "Output only. The time this CryptoKeyVersion's key material was\ndestroyed. Only present if state is\nDESTROYED.", + "format": "google-datetime", + "type": "string" + }, + "destroyTime": { + "description": "Output only. The time this CryptoKeyVersion's key material is scheduled\nfor destruction. Only present if state is\nDESTROY_SCHEDULED.", + "format": "google-datetime", + "type": "string" + }, + "name": { + "description": "Output only. The resource name for this CryptoKeyVersion in the format\n`projects/*/locations/*/keyRings/*/cryptoKeys/*/cryptoKeyVersions/*`.", + "type": "string" + }, + "state": { + "description": "The current state of the CryptoKeyVersion.", + "enum": [ + "CRYPTO_KEY_VERSION_STATE_UNSPECIFIED", + "ENABLED", + "DISABLED", + "DESTROYED", + "DESTROY_SCHEDULED" + ], + "enumDescriptions": [ + "Not specified.", + "This version may be used in Encrypt and\nDecrypt requests.", + "This version may not be used, but the key material is still available,\nand the version can be placed back into the ENABLED state.", + "This version is destroyed, and the key material is no longer stored.\nA version may not leave this state once entered.", + "This version is scheduled for destruction, and will be destroyed soon.\nCall\nRestoreCryptoKeyVersion\nto put it back into the DISABLED state." + ], + "type": "string" + } + }, + "type": "object" }, - "prettyPrint": { - "description": "Returns response with indentations and line breaks.", - "type": "boolean", - "default": "true", - "location": "query" + "DecryptRequest": { + "description": "Request message for KeyManagementService.Decrypt.", + "id": "DecryptRequest", + "properties": { + "additionalAuthenticatedData": { + "description": "Optional data that must match the data originally supplied in\nEncryptRequest.additional_authenticated_data.", + "format": "byte", + "type": "string" + }, + "ciphertext": { + "description": "Required. The encrypted data originally returned in\nEncryptResponse.ciphertext.", + "format": "byte", + "type": "string" + } + }, + "type": "object" }, - "uploadType": { - "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", - "type": "string", - "location": "query" + "DecryptResponse": { + "description": "Response message for KeyManagementService.Decrypt.", + "id": "DecryptResponse", + "properties": { + "plaintext": { + "description": "The decrypted data originally supplied in EncryptRequest.plaintext.", + "format": "byte", + "type": "string" + } + }, + "type": "object" }, - "fields": { - "description": "Selector specifying which fields to include in a partial response.", - "type": "string", - "location": "query" + "DestroyCryptoKeyVersionRequest": { + "description": "Request message for KeyManagementService.DestroyCryptoKeyVersion.", + "id": "DestroyCryptoKeyVersionRequest", + "properties": {}, + "type": "object" }, - "callback": { - "description": "JSONP", - "type": "string", - "location": "query" + "EncryptRequest": { + "description": "Request message for KeyManagementService.Encrypt.", + "id": "EncryptRequest", + "properties": { + "additionalAuthenticatedData": { + "description": "Optional data that, if specified, must also be provided during decryption\nthrough DecryptRequest.additional_authenticated_data. Must be no\nlarger than 64KiB.", + "format": "byte", + "type": "string" + }, + "plaintext": { + "description": "Required. The data to encrypt. Must be no larger than 64KiB.", + "format": "byte", + "type": "string" + } + }, + "type": "object" }, - "$.xgafv": { - "description": "V1 error format.", - "type": "string", - "enumDescriptions": [ - "v1 error format", - "v2 error format" - ], - "location": "query", - "enum": [ - "1", - "2" - ] + "EncryptResponse": { + "description": "Response message for KeyManagementService.Encrypt.", + "id": "EncryptResponse", + "properties": { + "ciphertext": { + "description": "The encrypted data.", + "format": "byte", + "type": "string" + }, + "name": { + "description": "The resource name of the CryptoKeyVersion used in encryption.", + "type": "string" + } + }, + "type": "object" }, - "alt": { - "description": "Data format for response.", - "default": "json", - "enum": [ - "json", - "media", - "proto" - ], - "type": "string", - "enumDescriptions": [ - "Responses with Content-Type of application/json", - "Media download with context-dependent Content-Type", - "Responses with Content-Type of application/x-protobuf" - ], - "location": "query" + "KeyRing": { + "description": "A KeyRing is a toplevel logical grouping of CryptoKeys.", + "id": "KeyRing", + "properties": { + "createTime": { + "description": "Output only. The time at which this KeyRing was created.", + "format": "google-datetime", + "type": "string" + }, + "name": { + "description": "Output only. The resource name for the KeyRing in the format\n`projects/*/locations/*/keyRings/*`.", + "type": "string" + } + }, + "type": "object" }, - "key": { - "location": "query", - "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.", - "type": "string" + "ListCryptoKeyVersionsResponse": { + "description": "Response message for KeyManagementService.ListCryptoKeyVersions.", + "id": "ListCryptoKeyVersionsResponse", + "properties": { + "cryptoKeyVersions": { + "description": "The list of CryptoKeyVersions.", + "items": { + "$ref": "CryptoKeyVersion" + }, + "type": "array" + }, + "nextPageToken": { + "description": "A token to retrieve next page of results. Pass this value in\nListCryptoKeyVersionsRequest.page_token to retrieve the next page of\nresults.", + "type": "string" + }, + "totalSize": { + "description": "The total number of CryptoKeyVersions that matched the\nquery.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" }, - "access_token": { - "description": "OAuth access token.", - "type": "string", - "location": "query" + "ListCryptoKeysResponse": { + "description": "Response message for KeyManagementService.ListCryptoKeys.", + "id": "ListCryptoKeysResponse", + "properties": { + "cryptoKeys": { + "description": "The list of CryptoKeys.", + "items": { + "$ref": "CryptoKey" + }, + "type": "array" + }, + "nextPageToken": { + "description": "A token to retrieve next page of results. Pass this value in\nListCryptoKeysRequest.page_token to retrieve the next page of results.", + "type": "string" + }, + "totalSize": { + "description": "The total number of CryptoKeys that matched the query.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "ListKeyRingsResponse": { + "description": "Response message for KeyManagementService.ListKeyRings.", + "id": "ListKeyRingsResponse", + "properties": { + "keyRings": { + "description": "The list of KeyRings.", + "items": { + "$ref": "KeyRing" + }, + "type": "array" + }, + "nextPageToken": { + "description": "A token to retrieve next page of results. Pass this value in\nListKeyRingsRequest.page_token to retrieve the next page of results.", + "type": "string" + }, + "totalSize": { + "description": "The total number of KeyRings that matched the query.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "ListLocationsResponse": { + "description": "The response message for Locations.ListLocations.", + "id": "ListLocationsResponse", + "properties": { + "locations": { + "description": "A list of locations that matches the specified filter in the request.", + "items": { + "$ref": "Location" + }, + "type": "array" + }, + "nextPageToken": { + "description": "The standard List next-page token.", + "type": "string" + } + }, + "type": "object" + }, + "Location": { + "description": "A resource that represents Google Cloud Platform location.", + "id": "Location", + "properties": { + "displayName": { + "description": "The friendly name for this location, typically a nearby city name.\nFor example, \"Tokyo\".", + "type": "string" + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Cross-service attributes for the location. For example\n\n {\"cloud.googleapis.com/region\": \"us-east1\"}", + "type": "object" + }, + "locationId": { + "description": "The canonical id for this location. For example: `\"us-east1\"`.", + "type": "string" + }, + "metadata": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "description": "Service-specific metadata. For example the available capacity at the given\nlocation.", + "type": "object" + }, + "name": { + "description": "Resource name for the location, which may vary between implementations.\nFor example: `\"projects/example-project/locations/us-east1\"`", + "type": "string" + } + }, + "type": "object" + }, + "Policy": { + "description": "Defines an Identity and Access Management (IAM) policy. It is used to\nspecify access control policies for Cloud Platform resources.\n\n\nA `Policy` consists of a list of `bindings`. A `Binding` binds a list of\n`members` to a `role`, where the members can be user accounts, Google groups,\nGoogle domains, and service accounts. A `role` is a named list of permissions\ndefined by IAM.\n\n**Example**\n\n {\n \"bindings\": [\n {\n \"role\": \"roles/owner\",\n \"members\": [\n \"user:mike@example.com\",\n \"group:admins@example.com\",\n \"domain:google.com\",\n \"serviceAccount:my-other-app@appspot.gserviceaccount.com\",\n ]\n },\n {\n \"role\": \"roles/viewer\",\n \"members\": [\"user:sean@example.com\"]\n }\n ]\n }\n\nFor a description of IAM and its features, see the\n[IAM developer's guide](https://cloud.google.com/iam/docs).", + "id": "Policy", + "properties": { + "auditConfigs": { + "description": "Specifies cloud audit logging configuration for this policy.", + "items": { + "$ref": "AuditConfig" + }, + "type": "array" + }, + "bindings": { + "description": "Associates a list of `members` to a `role`.\n`bindings` with no members will result in an error.", + "items": { + "$ref": "Binding" + }, + "type": "array" + }, + "etag": { + "description": "`etag` is used for optimistic concurrency control as a way to help\nprevent simultaneous updates of a policy from overwriting each other.\nIt is strongly suggested that systems make use of the `etag` in the\nread-modify-write cycle to perform policy updates in order to avoid race\nconditions: An `etag` is returned in the response to `getIamPolicy`, and\nsystems are expected to put that etag in the request to `setIamPolicy` to\nensure that their change will be applied to the same version of the policy.\n\nIf no `etag` is provided in the call to `setIamPolicy`, then the existing\npolicy is overwritten blindly.", + "format": "byte", + "type": "string" + }, + "version": { + "description": "Deprecated.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "RestoreCryptoKeyVersionRequest": { + "description": "Request message for KeyManagementService.RestoreCryptoKeyVersion.", + "id": "RestoreCryptoKeyVersionRequest", + "properties": {}, + "type": "object" + }, + "SetIamPolicyRequest": { + "description": "Request message for `SetIamPolicy` method.", + "id": "SetIamPolicyRequest", + "properties": { + "policy": { + "$ref": "Policy", + "description": "REQUIRED: The complete policy to be applied to the `resource`. The size of\nthe policy is limited to a few 10s of KB. An empty policy is a\nvalid policy but certain Cloud Platform services (such as Projects)\nmight reject them." + }, + "updateMask": { + "description": "OPTIONAL: A FieldMask specifying which fields of the policy to modify. Only\nthe fields in the mask will be modified. If no mask is provided, the\nfollowing default mask is used:\npaths: \"bindings, etag\"\nThis field is only used by Cloud IAM.", + "format": "google-fieldmask", + "type": "string" + } + }, + "type": "object" + }, + "TestIamPermissionsRequest": { + "description": "Request message for `TestIamPermissions` method.", + "id": "TestIamPermissionsRequest", + "properties": { + "permissions": { + "description": "The set of permissions to check for the `resource`. Permissions with\nwildcards (such as '*' or 'storage.*') are not allowed. For more\ninformation see\n[IAM Overview](https://cloud.google.com/iam/docs/overview#permissions).", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "TestIamPermissionsResponse": { + "description": "Response message for `TestIamPermissions` method.", + "id": "TestIamPermissionsResponse", + "properties": { + "permissions": { + "description": "A subset of `TestPermissionsRequest.permissions` that the caller is\nallowed.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "UpdateCryptoKeyPrimaryVersionRequest": { + "description": "Request message for KeyManagementService.UpdateCryptoKeyPrimaryVersion.", + "id": "UpdateCryptoKeyPrimaryVersionRequest", + "properties": { + "cryptoKeyVersionId": { + "description": "The id of the child CryptoKeyVersion to use as primary.", + "type": "string" + } + }, + "type": "object" } }, + "servicePath": "", + "title": "Google Cloud Key Management Service (KMS) API", "version": "v1", - "baseUrl": "https://cloudkms.googleapis.com/" -} + "version_module": true +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/cloudkms/v1/cloudkms-gen.go b/vendor/google.golang.org/api/cloudkms/v1/cloudkms-gen.go index 9c015ae42..7b7d769ed 100644 --- a/vendor/google.golang.org/api/cloudkms/v1/cloudkms-gen.go +++ b/vendor/google.golang.org/api/cloudkms/v1/cloudkms-gen.go @@ -144,7 +144,7 @@ type ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsService struct { // log_types // specified in each AuditConfig are enabled, and the exempted_members // in each -// AuditConfig are exempted. +// AuditLogConfig are exempted. // // Example Policy with multiple AuditConfigs: // @@ -881,6 +881,11 @@ func (s *ListLocationsResponse) MarshalJSON() ([]byte, error) { // Location: A resource that represents Google Cloud Platform location. type Location struct { + // DisplayName: The friendly name for this location, typically a nearby + // city name. + // For example, "Tokyo". + DisplayName string `json:"displayName,omitempty"` + // Labels: Cross-service attributes for the location. For example // // {"cloud.googleapis.com/region": "us-east1"} @@ -904,7 +909,7 @@ type Location struct { // server. googleapi.ServerResponse `json:"-"` - // ForceSendFields is a list of field names (e.g. "Labels") to + // ForceSendFields is a list of field names (e.g. "DisplayName") to // unconditionally include in API requests. By default, fields with // empty values are omitted from API requests. However, any non-pointer, // non-interface field appearing in ForceSendFields will be sent to the @@ -912,10 +917,10 @@ type Location struct { // used to include empty fields in Patch requests. ForceSendFields []string `json:"-"` - // NullFields is a list of field names (e.g. "Labels") to include in API - // requests with the JSON null value. By default, fields with empty - // values are omitted from API requests. However, any field with an - // empty value appearing in NullFields will be sent to the server as + // NullFields is a list of field names (e.g. "DisplayName") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as // null. It is an error if a field in this list has a non-empty value. // This may be used to include null fields in Patch requests. NullFields []string `json:"-"` @@ -1181,7 +1186,7 @@ type ProjectsLocationsGetCall struct { header_ http.Header } -// Get: Get information about a location. +// Get: Gets information about a location. func (r *ProjectsLocationsService) Get(name string) *ProjectsLocationsGetCall { c := &ProjectsLocationsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.name = name @@ -1282,7 +1287,7 @@ func (c *ProjectsLocationsGetCall) Do(opts ...googleapi.CallOption) (*Location, } return ret, nil // { - // "description": "Get information about a location.", + // "description": "Gets information about a location.", // "flatPath": "v1/projects/{projectsId}/locations/{locationsId}", // "httpMethod": "GET", // "id": "cloudkms.projects.locations.get", diff --git a/vendor/google.golang.org/api/cloudmonitoring/v2beta2/cloudmonitoring-gen.go b/vendor/google.golang.org/api/cloudmonitoring/v2beta2/cloudmonitoring-gen.go index 57208fccd..0f599614a 100644 --- a/vendor/google.golang.org/api/cloudmonitoring/v2beta2/cloudmonitoring-gen.go +++ b/vendor/google.golang.org/api/cloudmonitoring/v2beta2/cloudmonitoring-gen.go @@ -141,8 +141,8 @@ type DeleteMetricDescriptorResponse struct { } func (s *DeleteMetricDescriptorResponse) MarshalJSON() ([]byte, error) { - type noMethod DeleteMetricDescriptorResponse - raw := noMethod(*s) + type NoMethod DeleteMetricDescriptorResponse + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -171,8 +171,8 @@ type ListMetricDescriptorsRequest struct { } func (s *ListMetricDescriptorsRequest) MarshalJSON() ([]byte, error) { - type noMethod ListMetricDescriptorsRequest - raw := noMethod(*s) + type NoMethod ListMetricDescriptorsRequest + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -214,8 +214,8 @@ type ListMetricDescriptorsResponse struct { } func (s *ListMetricDescriptorsResponse) MarshalJSON() ([]byte, error) { - type noMethod ListMetricDescriptorsResponse - raw := noMethod(*s) + type NoMethod ListMetricDescriptorsResponse + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -244,8 +244,8 @@ type ListTimeseriesDescriptorsRequest struct { } func (s *ListTimeseriesDescriptorsRequest) MarshalJSON() ([]byte, error) { - type noMethod ListTimeseriesDescriptorsRequest - raw := noMethod(*s) + type NoMethod ListTimeseriesDescriptorsRequest + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -295,8 +295,8 @@ type ListTimeseriesDescriptorsResponse struct { } func (s *ListTimeseriesDescriptorsResponse) MarshalJSON() ([]byte, error) { - type noMethod ListTimeseriesDescriptorsResponse - raw := noMethod(*s) + type NoMethod ListTimeseriesDescriptorsResponse + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -324,8 +324,8 @@ type ListTimeseriesRequest struct { } func (s *ListTimeseriesRequest) MarshalJSON() ([]byte, error) { - type noMethod ListTimeseriesRequest - raw := noMethod(*s) + type NoMethod ListTimeseriesRequest + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -376,8 +376,8 @@ type ListTimeseriesResponse struct { } func (s *ListTimeseriesResponse) MarshalJSON() ([]byte, error) { - type noMethod ListTimeseriesResponse - raw := noMethod(*s) + type NoMethod ListTimeseriesResponse + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -421,8 +421,8 @@ type MetricDescriptor struct { } func (s *MetricDescriptor) MarshalJSON() ([]byte, error) { - type noMethod MetricDescriptor - raw := noMethod(*s) + type NoMethod MetricDescriptor + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -454,8 +454,8 @@ type MetricDescriptorLabelDescriptor struct { } func (s *MetricDescriptorLabelDescriptor) MarshalJSON() ([]byte, error) { - type noMethod MetricDescriptorLabelDescriptor - raw := noMethod(*s) + type NoMethod MetricDescriptorLabelDescriptor + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -489,8 +489,8 @@ type MetricDescriptorTypeDescriptor struct { } func (s *MetricDescriptorTypeDescriptor) MarshalJSON() ([]byte, error) { - type noMethod MetricDescriptorTypeDescriptor - raw := noMethod(*s) + type NoMethod MetricDescriptorTypeDescriptor + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -550,18 +550,18 @@ type Point struct { } func (s *Point) MarshalJSON() ([]byte, error) { - type noMethod Point - raw := noMethod(*s) + type NoMethod Point + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } func (s *Point) UnmarshalJSON(data []byte) error { - type noMethod Point + type NoMethod Point var s1 struct { DoubleValue *gensupport.JSONFloat64 `json:"doubleValue"` - *noMethod + *NoMethod } - s1.noMethod = (*noMethod)(s) + s1.NoMethod = (*NoMethod)(s) if err := json.Unmarshal(data, &s1); err != nil { return err } @@ -603,8 +603,8 @@ type PointDistribution struct { } func (s *PointDistribution) MarshalJSON() ([]byte, error) { - type noMethod PointDistribution - raw := noMethod(*s) + type NoMethod PointDistribution + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -643,19 +643,19 @@ type PointDistributionBucket struct { } func (s *PointDistributionBucket) MarshalJSON() ([]byte, error) { - type noMethod PointDistributionBucket - raw := noMethod(*s) + type NoMethod PointDistributionBucket + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } func (s *PointDistributionBucket) UnmarshalJSON(data []byte) error { - type noMethod PointDistributionBucket + type NoMethod PointDistributionBucket var s1 struct { LowerBound gensupport.JSONFloat64 `json:"lowerBound"` UpperBound gensupport.JSONFloat64 `json:"upperBound"` - *noMethod + *NoMethod } - s1.noMethod = (*noMethod)(s) + s1.NoMethod = (*NoMethod)(s) if err := json.Unmarshal(data, &s1); err != nil { return err } @@ -694,18 +694,18 @@ type PointDistributionOverflowBucket struct { } func (s *PointDistributionOverflowBucket) MarshalJSON() ([]byte, error) { - type noMethod PointDistributionOverflowBucket - raw := noMethod(*s) + type NoMethod PointDistributionOverflowBucket + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } func (s *PointDistributionOverflowBucket) UnmarshalJSON(data []byte) error { - type noMethod PointDistributionOverflowBucket + type NoMethod PointDistributionOverflowBucket var s1 struct { LowerBound gensupport.JSONFloat64 `json:"lowerBound"` - *noMethod + *NoMethod } - s1.noMethod = (*noMethod)(s) + s1.NoMethod = (*NoMethod)(s) if err := json.Unmarshal(data, &s1); err != nil { return err } @@ -743,18 +743,18 @@ type PointDistributionUnderflowBucket struct { } func (s *PointDistributionUnderflowBucket) MarshalJSON() ([]byte, error) { - type noMethod PointDistributionUnderflowBucket - raw := noMethod(*s) + type NoMethod PointDistributionUnderflowBucket + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } func (s *PointDistributionUnderflowBucket) UnmarshalJSON(data []byte) error { - type noMethod PointDistributionUnderflowBucket + type NoMethod PointDistributionUnderflowBucket var s1 struct { UpperBound gensupport.JSONFloat64 `json:"upperBound"` - *noMethod + *NoMethod } - s1.noMethod = (*noMethod)(s) + s1.NoMethod = (*NoMethod)(s) if err := json.Unmarshal(data, &s1); err != nil { return err } @@ -792,8 +792,8 @@ type Timeseries struct { } func (s *Timeseries) MarshalJSON() ([]byte, error) { - type noMethod Timeseries - raw := noMethod(*s) + type NoMethod Timeseries + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -828,8 +828,8 @@ type TimeseriesDescriptor struct { } func (s *TimeseriesDescriptor) MarshalJSON() ([]byte, error) { - type noMethod TimeseriesDescriptor - raw := noMethod(*s) + type NoMethod TimeseriesDescriptor + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -858,8 +858,8 @@ type TimeseriesDescriptorLabel struct { } func (s *TimeseriesDescriptorLabel) MarshalJSON() ([]byte, error) { - type noMethod TimeseriesDescriptorLabel - raw := noMethod(*s) + type NoMethod TimeseriesDescriptorLabel + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -891,8 +891,8 @@ type TimeseriesPoint struct { } func (s *TimeseriesPoint) MarshalJSON() ([]byte, error) { - type noMethod TimeseriesPoint - raw := noMethod(*s) + type NoMethod TimeseriesPoint + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -925,8 +925,8 @@ type WriteTimeseriesRequest struct { } func (s *WriteTimeseriesRequest) MarshalJSON() ([]byte, error) { - type noMethod WriteTimeseriesRequest - raw := noMethod(*s) + type NoMethod WriteTimeseriesRequest + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -959,8 +959,8 @@ type WriteTimeseriesResponse struct { } func (s *WriteTimeseriesResponse) MarshalJSON() ([]byte, error) { - type noMethod WriteTimeseriesResponse - raw := noMethod(*s) + type NoMethod WriteTimeseriesResponse + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -1064,7 +1064,7 @@ func (c *MetricDescriptorsCreateCall) Do(opts ...googleapi.CallOption) (*MetricD }, } target := &ret - if err := json.NewDecoder(res.Body).Decode(target); err != nil { + if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil @@ -1194,7 +1194,7 @@ func (c *MetricDescriptorsDeleteCall) Do(opts ...googleapi.CallOption) (*DeleteM }, } target := &ret - if err := json.NewDecoder(res.Body).Decode(target); err != nil { + if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil @@ -1373,7 +1373,7 @@ func (c *MetricDescriptorsListCall) Do(opts ...googleapi.CallOption) (*ListMetri }, } target := &ret - if err := json.NewDecoder(res.Body).Decode(target); err != nil { + if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil @@ -1651,7 +1651,7 @@ func (c *TimeseriesListCall) Do(opts ...googleapi.CallOption) (*ListTimeseriesRe }, } target := &ret - if err := json.NewDecoder(res.Body).Decode(target); err != nil { + if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil @@ -1882,7 +1882,7 @@ func (c *TimeseriesWriteCall) Do(opts ...googleapi.CallOption) (*WriteTimeseries }, } target := &ret - if err := json.NewDecoder(res.Body).Decode(target); err != nil { + if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil @@ -2122,7 +2122,7 @@ func (c *TimeseriesDescriptorsListCall) Do(opts ...googleapi.CallOption) (*ListT }, } target := &ret - if err := json.NewDecoder(res.Body).Decode(target); err != nil { + if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil diff --git a/vendor/google.golang.org/api/cloudresourcemanager/v1/cloudresourcemanager-api.json b/vendor/google.golang.org/api/cloudresourcemanager/v1/cloudresourcemanager-api.json index ba77c58db..0187a314b 100644 --- a/vendor/google.golang.org/api/cloudresourcemanager/v1/cloudresourcemanager-api.json +++ b/vendor/google.golang.org/api/cloudresourcemanager/v1/cloudresourcemanager-api.json @@ -1,90 +1,378 @@ { - "ownerDomain": "google.com", - "name": "cloudresourcemanager", + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/cloud-platform": { + "description": "View and manage your data across Google Cloud Platform services" + }, + "https://www.googleapis.com/auth/cloud-platform.read-only": { + "description": "View your data across Google Cloud Platform services" + } + } + } + }, + "basePath": "", + "baseUrl": "https://cloudresourcemanager.googleapis.com/", "batchPath": "batch", + "canonicalName": "Cloud Resource Manager", + "description": "The Google Cloud Resource Manager API provides methods for creating, reading, and updating project metadata.", + "discoveryVersion": "v1", + "documentationLink": "https://cloud.google.com/resource-manager", "fullyEncodeReservedExpansion": true, - "title": "Google Cloud Resource Manager API", + "icons": { + "x16": "http://www.google.com/images/icons/product/search-16.gif", + "x32": "http://www.google.com/images/icons/product/search-32.gif" + }, + "id": "cloudresourcemanager:v1", + "kind": "discovery#restDescription", + "name": "cloudresourcemanager", + "ownerDomain": "google.com", "ownerName": "Google", + "parameters": { + "$.xgafv": { + "description": "V1 error format.", + "enum": [ + "1", + "2" + ], + "enumDescriptions": [ + "v1 error format", + "v2 error format" + ], + "location": "query", + "type": "string" + }, + "access_token": { + "description": "OAuth access token.", + "location": "query", + "type": "string" + }, + "alt": { + "default": "json", + "description": "Data format for response.", + "enum": [ + "json", + "media", + "proto" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json", + "Media download with context-dependent Content-Type", + "Responses with Content-Type of application/x-protobuf" + ], + "location": "query", + "type": "string" + }, + "bearer_token": { + "description": "OAuth bearer token.", + "location": "query", + "type": "string" + }, + "callback": { + "description": "JSONP", + "location": "query", + "type": "string" + }, + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "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.", + "location": "query", + "type": "string" + }, + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "pp": { + "default": "true", + "description": "Pretty-print response.", + "location": "query", + "type": "boolean" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", + "location": "query", + "type": "string" + }, + "uploadType": { + "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", + "location": "query", + "type": "string" + }, + "upload_protocol": { + "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", + "location": "query", + "type": "string" + } + }, + "protocol": "rest", "resources": { - "liens": { + "folders": { "methods": { - "delete": { - "description": "Delete a Lien by `name`.\n\nCallers of this method will require permission on the `parent` resource.\nFor example, a Lien with a `parent` of `projects/1234` requires permission\n`resourcemanager.projects.updateLiens`.", - "httpMethod": "DELETE", + "clearOrgPolicy": { + "description": "Clears a `Policy` from a resource.", + "flatPath": "v1/folders/{foldersId}:clearOrgPolicy", + "httpMethod": "POST", + "id": "cloudresourcemanager.folders.clearOrgPolicy", "parameterOrder": [ - "name" + "resource" ], - "response": { - "$ref": "Empty" - }, "parameters": { - "name": { - "pattern": "^liens/.+$", + "resource": { + "description": "Name of the resource for the `Policy` to clear.", "location": "path", - "description": "The name/identifier of the Lien to delete.", + "pattern": "^folders/[^/]+$", "required": true, "type": "string" } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ], - "flatPath": "v1/liens/{liensId}", - "id": "cloudresourcemanager.liens.delete", - "path": "v1/{+name}" - }, - "list": { - "description": "List all Liens applied to the `parent` resource.\n\nCallers of this method will require permission on the `parent` resource.\nFor example, a Lien with a `parent` of `projects/1234` requires permission\n`resourcemanager.projects.get`.", - "response": { - "$ref": "ListLiensResponse" + "path": "v1/{+resource}:clearOrgPolicy", + "request": { + "$ref": "ClearOrgPolicyRequest" + }, + "response": { + "$ref": "Empty" }, - "parameterOrder": [], - "httpMethod": "GET", "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "getEffectiveOrgPolicy": { + "description": "Gets the effective `Policy` on a resource. This is the result of merging\n`Policies` in the resource hierarchy. The returned `Policy` will not have\nan `etag`set because it is a computed `Policy` across multiple resources.", + "flatPath": "v1/folders/{foldersId}:getEffectiveOrgPolicy", + "httpMethod": "POST", + "id": "cloudresourcemanager.folders.getEffectiveOrgPolicy", + "parameterOrder": [ + "resource" ], "parameters": { - "pageToken": { - "location": "query", - "description": "The `next_page_token` value returned from a previous List request, if any.", + "resource": { + "description": "The name of the resource to start computing the effective `Policy`.", + "location": "path", + "pattern": "^folders/[^/]+$", + "required": true, "type": "string" - }, - "pageSize": { - "location": "query", - "description": "The maximum number of items to return. This is a suggestion for the server.", - "format": "int32", - "type": "integer" - }, - "parent": { - "description": "The name of the resource to list all attached Liens.\nFor example, `projects/1234`.", - "type": "string", - "location": "query" } }, - "flatPath": "v1/liens", - "path": "v1/liens", - "id": "cloudresourcemanager.liens.list" + "path": "v1/{+resource}:getEffectiveOrgPolicy", + "request": { + "$ref": "GetEffectiveOrgPolicyRequest" + }, + "response": { + "$ref": "OrgPolicy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] }, + "getOrgPolicy": { + "description": "Gets a `Policy` on a resource.\n\nIf no `Policy` is set on the resource, a `Policy` is returned with default\nvalues including `POLICY_TYPE_NOT_SET` for the `policy_type oneof`. The\n`etag` value can be used with `SetOrgPolicy()` to create or update a\n`Policy` during read-modify-write.", + "flatPath": "v1/folders/{foldersId}:getOrgPolicy", + "httpMethod": "POST", + "id": "cloudresourcemanager.folders.getOrgPolicy", + "parameterOrder": [ + "resource" + ], + "parameters": { + "resource": { + "description": "Name of the resource the `Policy` is set on.", + "location": "path", + "pattern": "^folders/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+resource}:getOrgPolicy", + "request": { + "$ref": "GetOrgPolicyRequest" + }, + "response": { + "$ref": "OrgPolicy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + }, + "listAvailableOrgPolicyConstraints": { + "description": "Lists `Constraints` that could be applied on the specified resource.", + "flatPath": "v1/folders/{foldersId}:listAvailableOrgPolicyConstraints", + "httpMethod": "POST", + "id": "cloudresourcemanager.folders.listAvailableOrgPolicyConstraints", + "parameterOrder": [ + "resource" + ], + "parameters": { + "resource": { + "description": "Name of the resource to list `Constraints` for.", + "location": "path", + "pattern": "^folders/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+resource}:listAvailableOrgPolicyConstraints", + "request": { + "$ref": "ListAvailableOrgPolicyConstraintsRequest" + }, + "response": { + "$ref": "ListAvailableOrgPolicyConstraintsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + }, + "listOrgPolicies": { + "description": "Lists all the `Policies` set for a particular resource.", + "flatPath": "v1/folders/{foldersId}:listOrgPolicies", + "httpMethod": "POST", + "id": "cloudresourcemanager.folders.listOrgPolicies", + "parameterOrder": [ + "resource" + ], + "parameters": { + "resource": { + "description": "Name of the resource to list Policies for.", + "location": "path", + "pattern": "^folders/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+resource}:listOrgPolicies", + "request": { + "$ref": "ListOrgPoliciesRequest" + }, + "response": { + "$ref": "ListOrgPoliciesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + }, + "setOrgPolicy": { + "description": "Updates the specified `Policy` on the resource. Creates a new `Policy` for\nthat `Constraint` on the resource if one does not exist.\n\nNot supplying an `etag` on the request `Policy` results in an unconditional\nwrite of the `Policy`.", + "flatPath": "v1/folders/{foldersId}:setOrgPolicy", + "httpMethod": "POST", + "id": "cloudresourcemanager.folders.setOrgPolicy", + "parameterOrder": [ + "resource" + ], + "parameters": { + "resource": { + "description": "Resource name of the resource to attach the `Policy`.", + "location": "path", + "pattern": "^folders/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+resource}:setOrgPolicy", + "request": { + "$ref": "SetOrgPolicyRequest" + }, + "response": { + "$ref": "OrgPolicy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + }, + "liens": { + "methods": { "create": { + "description": "Create a Lien which applies to the resource denoted by the `parent` field.\n\nCallers of this method will require permission on the `parent` resource.\nFor example, applying to `projects/1234` requires permission\n`resourcemanager.projects.updateLiens`.\n\nNOTE: Some resources may limit the number of Liens which may be applied.", + "flatPath": "v1/liens", + "httpMethod": "POST", "id": "cloudresourcemanager.liens.create", + "parameterOrder": [], + "parameters": {}, "path": "v1/liens", "request": { "$ref": "Lien" }, - "description": "Create a Lien which applies to the resource denoted by the `parent` field.\n\nCallers of this method will require permission on the `parent` resource.\nFor example, applying to `projects/1234` requires permission\n`resourcemanager.projects.updateLiens`.\n\nNOTE: Some resources may limit the number of Liens which may be applied.", - "httpMethod": "POST", - "parameterOrder": [], "response": { "$ref": "Lien" }, - "parameters": {}, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + }, + "delete": { + "description": "Delete a Lien by `name`.\n\nCallers of this method will require permission on the `parent` resource.\nFor example, a Lien with a `parent` of `projects/1234` requires permission\n`resourcemanager.projects.updateLiens`.", + "flatPath": "v1/liens/{liensId}", + "httpMethod": "DELETE", + "id": "cloudresourcemanager.liens.delete", + "parameterOrder": [ + "name" ], - "flatPath": "v1/liens" + "parameters": { + "name": { + "description": "The name/identifier of the Lien to delete.", + "location": "path", + "pattern": "^liens/.+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + }, + "list": { + "description": "List all Liens applied to the `parent` resource.\n\nCallers of this method will require permission on the `parent` resource.\nFor example, a Lien with a `parent` of `projects/1234` requires permission\n`resourcemanager.projects.get`.", + "flatPath": "v1/liens", + "httpMethod": "GET", + "id": "cloudresourcemanager.liens.list", + "parameterOrder": [], + "parameters": { + "pageSize": { + "description": "The maximum number of items to return. This is a suggestion for the server.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "The `next_page_token` value returned from a previous List request, if any.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "The name of the resource to list all attached Liens.\nFor example, `projects/1234`.", + "location": "query", + "type": "string" + } + }, + "path": "v1/liens", + "response": { + "$ref": "ListLiensResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] } } }, @@ -92,1374 +380,997 @@ "methods": { "get": { "description": "Gets the latest state of a long-running operation. Clients can use this\nmethod to poll the operation result at intervals as recommended by the API\nservice.", - "response": { - "$ref": "Operation" - }, + "flatPath": "v1/operations/{operationsId}", + "httpMethod": "GET", + "id": "cloudresourcemanager.operations.get", "parameterOrder": [ "name" ], - "httpMethod": "GET", "parameters": { "name": { - "required": true, - "type": "string", - "pattern": "^operations/.+$", + "description": "The name of the operation resource.", "location": "path", - "description": "The name of the operation resource." + "pattern": "^operations/.+$", + "required": true, + "type": "string" } }, + "path": "v1/{+name}", + "response": { + "$ref": "Operation" + }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/cloud-platform.read-only" - ], - "flatPath": "v1/operations/{operationsId}", - "path": "v1/{+name}", - "id": "cloudresourcemanager.operations.get" + ] } } }, - "folders": { + "organizations": { "methods": { "clearOrgPolicy": { "description": "Clears a `Policy` from a resource.", + "flatPath": "v1/organizations/{organizationsId}:clearOrgPolicy", + "httpMethod": "POST", + "id": "cloudresourcemanager.organizations.clearOrgPolicy", + "parameterOrder": [ + "resource" + ], + "parameters": { + "resource": { + "description": "Name of the resource for the `Policy` to clear.", + "location": "path", + "pattern": "^organizations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+resource}:clearOrgPolicy", "request": { "$ref": "ClearOrgPolicyRequest" }, "response": { "$ref": "Empty" }, - "parameterOrder": [ - "resource" - ], - "httpMethod": "POST", "scopes": [ "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Fetches an Organization resource identified by the specified resource name.", + "flatPath": "v1/organizations/{organizationsId}", + "httpMethod": "GET", + "id": "cloudresourcemanager.organizations.get", + "parameterOrder": [ + "name" ], "parameters": { - "resource": { - "pattern": "^folders/[^/]+$", + "name": { + "description": "The resource name of the Organization to fetch, e.g. \"organizations/1234\".", "location": "path", - "description": "Name of the resource for the `Policy` to clear.", + "pattern": "^organizations/[^/]+$", "required": true, "type": "string" } }, - "flatPath": "v1/folders/{foldersId}:clearOrgPolicy", - "path": "v1/{+resource}:clearOrgPolicy", - "id": "cloudresourcemanager.folders.clearOrgPolicy" - }, - "setOrgPolicy": { + "path": "v1/{+name}", "response": { - "$ref": "OrgPolicy" - }, - "parameterOrder": [ - "resource" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "resource": { - "location": "path", - "description": "Resource name of the resource to attach the `Policy`.", - "required": true, - "type": "string", - "pattern": "^folders/[^/]+$" - } - }, - "flatPath": "v1/folders/{foldersId}:setOrgPolicy", - "path": "v1/{+resource}:setOrgPolicy", - "id": "cloudresourcemanager.folders.setOrgPolicy", - "description": "Updates the specified `Policy` on the resource. Creates a new `Policy` for\nthat `Constraint` on the resource if one does not exist.\n\nNot supplying an `etag` on the request `Policy` results in an unconditional\nwrite of the `Policy`.", - "request": { - "$ref": "SetOrgPolicyRequest" - } - }, - "listAvailableOrgPolicyConstraints": { - "description": "Lists `Constraints` that could be applied on the specified resource.", - "request": { - "$ref": "ListAvailableOrgPolicyConstraintsRequest" - }, - "response": { - "$ref": "ListAvailableOrgPolicyConstraintsResponse" - }, - "parameterOrder": [ - "resource" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ], - "parameters": { - "resource": { - "description": "Name of the resource to list `Constraints` for.", - "required": true, - "type": "string", - "pattern": "^folders/[^/]+$", - "location": "path" - } - }, - "flatPath": "v1/folders/{foldersId}:listAvailableOrgPolicyConstraints", - "path": "v1/{+resource}:listAvailableOrgPolicyConstraints", - "id": "cloudresourcemanager.folders.listAvailableOrgPolicyConstraints" - }, - "listOrgPolicies": { - "httpMethod": "POST", - "parameterOrder": [ - "resource" - ], - "response": { - "$ref": "ListOrgPoliciesResponse" - }, - "parameters": { - "resource": { - "description": "Name of the resource to list Policies for.", - "required": true, - "type": "string", - "pattern": "^folders/[^/]+$", - "location": "path" - } + "$ref": "Organization" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/cloud-platform.read-only" - ], - "flatPath": "v1/folders/{foldersId}:listOrgPolicies", - "id": "cloudresourcemanager.folders.listOrgPolicies", - "path": "v1/{+resource}:listOrgPolicies", - "request": { - "$ref": "ListOrgPoliciesRequest" - }, - "description": "Lists all the `Policies` set for a particular resource." - }, - "getOrgPolicy": { - "path": "v1/{+resource}:getOrgPolicy", - "id": "cloudresourcemanager.folders.getOrgPolicy", - "description": "Gets a `Policy` on a resource.\n\nIf no `Policy` is set on the resource, a `Policy` is returned with default\nvalues including `POLICY_TYPE_NOT_SET` for the `policy_type oneof`. The\n`etag` value can be used with `SetOrgPolicy()` to create or update a\n`Policy` during read-modify-write.", - "request": { - "$ref": "GetOrgPolicyRequest" - }, - "response": { - "$ref": "OrgPolicy" - }, - "parameterOrder": [ - "resource" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ], - "parameters": { - "resource": { - "required": true, - "type": "string", - "pattern": "^folders/[^/]+$", - "location": "path", - "description": "Name of the resource the `Policy` is set on." - } - }, - "flatPath": "v1/folders/{foldersId}:getOrgPolicy" + ] }, "getEffectiveOrgPolicy": { "description": "Gets the effective `Policy` on a resource. This is the result of merging\n`Policies` in the resource hierarchy. The returned `Policy` will not have\nan `etag`set because it is a computed `Policy` across multiple resources.", + "flatPath": "v1/organizations/{organizationsId}:getEffectiveOrgPolicy", + "httpMethod": "POST", + "id": "cloudresourcemanager.organizations.getEffectiveOrgPolicy", + "parameterOrder": [ + "resource" + ], + "parameters": { + "resource": { + "description": "The name of the resource to start computing the effective `Policy`.", + "location": "path", + "pattern": "^organizations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+resource}:getEffectiveOrgPolicy", "request": { "$ref": "GetEffectiveOrgPolicyRequest" }, "response": { "$ref": "OrgPolicy" }, - "parameterOrder": [ - "resource" - ], - "httpMethod": "POST", "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + }, + "getIamPolicy": { + "description": "Gets the access control policy for an Organization resource. May be empty\nif no such policy or resource exists. The `resource` field should be the\norganization's resource name, e.g. \"organizations/123\".\n\nAuthorization requires the Google IAM permission\n`resourcemanager.organizations.getIamPolicy` on the specified organization", + "flatPath": "v1/organizations/{organizationsId}:getIamPolicy", + "httpMethod": "POST", + "id": "cloudresourcemanager.organizations.getIamPolicy", + "parameterOrder": [ + "resource" ], "parameters": { "resource": { - "pattern": "^folders/[^/]+$", + "description": "REQUIRED: The resource for which the policy is being requested.\nSee the operation documentation for the appropriate value for this field.", "location": "path", - "description": "The name of the resource to start computing the effective `Policy`.", + "pattern": "^organizations/[^/]+$", "required": true, "type": "string" } }, - "flatPath": "v1/folders/{foldersId}:getEffectiveOrgPolicy", - "path": "v1/{+resource}:getEffectiveOrgPolicy", - "id": "cloudresourcemanager.folders.getEffectiveOrgPolicy" - } - } - }, - "projects": { - "methods": { - "list": { - "parameters": { - "filter": { - "location": "query", - "description": "An expression for filtering the results of the request. Filter rules are\ncase insensitive. The fields eligible for filtering are:\n\n+ `name`\n+ `id`\n+ \u003ccode\u003elabels.\u003cem\u003ekey\u003c/em\u003e\u003c/code\u003e where *key* is the name of a label\n\nSome examples of using labels as filters:\n\n|Filter|Description|\n|------|-----------|\n|name:how*|The project's name starts with \"how\".|\n|name:Howl|The project's name is `Howl` or `howl`.|\n|name:HOWL|Equivalent to above.|\n|NAME:howl|Equivalent to above.|\n|labels.color:*|The project has the label `color`.|\n|labels.color:red|The project's label `color` has the value `red`.|\n|labels.color:red labels.size:big|The project's label `color` has the value `red` and its label `size` has the value `big`.\n\nIf you specify a filter that has both `parent.type` and `parent.id`, then\nthe `resourcemanager.projects.list` permission is checked on the parent.\nIf the user has this permission, all projects under the parent will be\nreturned after remaining filters have been applied. If the user lacks this\npermission, then all projects for which the user has the\n`resourcemanager.projects.get` permission will be returned after remaining\nfilters have been applied. If no filter is specified, the call will return\nprojects for which the user has `resourcemanager.projects.get` permissions.\n\nOptional.", - "type": "string" - }, - "pageToken": { - "location": "query", - "description": "A pagination token returned from a previous call to ListProjects\nthat indicates from where listing should continue.\n\nOptional.", - "type": "string" - }, - "pageSize": { - "location": "query", - "description": "The maximum number of Projects to return in the response.\nThe server can return fewer Projects than requested.\nIf unspecified, server picks an appropriate default.\n\nOptional.", - "format": "int32", - "type": "integer" - } + "path": "v1/{+resource}:getIamPolicy", + "request": { + "$ref": "GetIamPolicyRequest" + }, + "response": { + "$ref": "Policy" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/cloud-platform.read-only" - ], - "flatPath": "v1/projects", - "path": "v1/projects", - "id": "cloudresourcemanager.projects.list", - "description": "Lists Projects that are visible to the user and satisfy the\nspecified filter. This method returns Projects in an unspecified order.\nThis method is eventually consistent with project mutations; this means\nthat a newly created project may not appear in the results or recent\nupdates to an existing project may not be reflected in the results. To\nretrieve the latest state of a project, use the\nGetProject method.", - "response": { - "$ref": "ListProjectsResponse" - }, - "parameterOrder": [], - "httpMethod": "GET" + ] }, - "setOrgPolicy": { - "request": { - "$ref": "SetOrgPolicyRequest" + "getOrgPolicy": { + "description": "Gets a `Policy` on a resource.\n\nIf no `Policy` is set on the resource, a `Policy` is returned with default\nvalues including `POLICY_TYPE_NOT_SET` for the `policy_type oneof`. The\n`etag` value can be used with `SetOrgPolicy()` to create or update a\n`Policy` during read-modify-write.", + "flatPath": "v1/organizations/{organizationsId}:getOrgPolicy", + "httpMethod": "POST", + "id": "cloudresourcemanager.organizations.getOrgPolicy", + "parameterOrder": [ + "resource" + ], + "parameters": { + "resource": { + "description": "Name of the resource the `Policy` is set on.", + "location": "path", + "pattern": "^organizations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+resource}:getOrgPolicy", + "request": { + "$ref": "GetOrgPolicyRequest" }, - "description": "Updates the specified `Policy` on the resource. Creates a new `Policy` for\nthat `Constraint` on the resource if one does not exist.\n\nNot supplying an `etag` on the request `Policy` results in an unconditional\nwrite of the `Policy`.", "response": { "$ref": "OrgPolicy" }, - "parameterOrder": [ - "resource" - ], - "httpMethod": "POST", - "parameters": { - "resource": { - "description": "Resource name of the resource to attach the `Policy`.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/projects/{projectsId}:setOrgPolicy", - "path": "v1/{+resource}:setOrgPolicy", - "id": "cloudresourcemanager.projects.setOrgPolicy" - }, - "create": { - "request": { - "$ref": "Project" - }, - "description": "Request that a new Project be created. The result is an Operation which\ncan be used to track the creation process. It is automatically deleted\nafter a few hours, so there is no need to call DeleteOperation.\n\nOur SLO permits Project creation to take up to 30 seconds at the 90th\npercentile. As of 2016-08-29, we are observing 6 seconds 50th percentile\nlatency. 95th percentile latency is around 11 seconds. We recommend\npolling at the 5th second with an exponential backoff.\n\nAuthorization requires the Google IAM permission\n`resourcemanager.projects.create` on the specified parent for the new\nproject.", - "httpMethod": "POST", - "parameterOrder": [], - "response": { - "$ref": "Operation" - }, - "parameters": {}, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/projects", - "id": "cloudresourcemanager.projects.create", - "path": "v1/projects" - }, - "listOrgPolicies": { - "response": { - "$ref": "ListOrgPoliciesResponse" - }, - "parameterOrder": [ - "resource" - ], - "httpMethod": "POST", - "parameters": { - "resource": { - "required": true, - "type": "string", - "pattern": "^projects/[^/]+$", - "location": "path", - "description": "Name of the resource to list Policies for." - } - }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/cloud-platform.read-only" - ], - "flatPath": "v1/projects/{projectsId}:listOrgPolicies", - "path": "v1/{+resource}:listOrgPolicies", - "id": "cloudresourcemanager.projects.listOrgPolicies", - "request": { - "$ref": "ListOrgPoliciesRequest" - }, - "description": "Lists all the `Policies` set for a particular resource." + ] }, - "get": { - "httpMethod": "GET", + "listAvailableOrgPolicyConstraints": { + "description": "Lists `Constraints` that could be applied on the specified resource.", + "flatPath": "v1/organizations/{organizationsId}:listAvailableOrgPolicyConstraints", + "httpMethod": "POST", + "id": "cloudresourcemanager.organizations.listAvailableOrgPolicyConstraints", "parameterOrder": [ - "projectId" + "resource" ], - "response": { - "$ref": "Project" - }, "parameters": { - "projectId": { + "resource": { + "description": "Name of the resource to list `Constraints` for.", "location": "path", - "description": "The Project ID (for example, `my-project-123`).\n\nRequired.", + "pattern": "^organizations/[^/]+$", "required": true, "type": "string" } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ], - "flatPath": "v1/projects/{projectId}", - "id": "cloudresourcemanager.projects.get", - "path": "v1/projects/{projectId}", - "description": "Retrieves the Project identified by the specified\n`project_id` (for example, `my-project-123`).\n\nThe caller must have read permissions for this Project." - }, - "getAncestry": { - "response": { - "$ref": "GetAncestryResponse" + "path": "v1/{+resource}:listAvailableOrgPolicyConstraints", + "request": { + "$ref": "ListAvailableOrgPolicyConstraintsRequest" + }, + "response": { + "$ref": "ListAvailableOrgPolicyConstraintsResponse" }, - "parameterOrder": [ - "projectId" - ], - "httpMethod": "POST", "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + }, + "listOrgPolicies": { + "description": "Lists all the `Policies` set for a particular resource.", + "flatPath": "v1/organizations/{organizationsId}:listOrgPolicies", + "httpMethod": "POST", + "id": "cloudresourcemanager.organizations.listOrgPolicies", + "parameterOrder": [ + "resource" ], "parameters": { - "projectId": { - "description": "The Project ID (for example, `my-project-123`).\n\nRequired.", + "resource": { + "description": "Name of the resource to list Policies for.", + "location": "path", + "pattern": "^organizations/[^/]+$", "required": true, - "type": "string", - "location": "path" + "type": "string" } }, - "flatPath": "v1/projects/{projectId}:getAncestry", - "path": "v1/projects/{projectId}:getAncestry", - "id": "cloudresourcemanager.projects.getAncestry", - "description": "Gets a list of ancestors in the resource hierarchy for the Project\nidentified by the specified `project_id` (for example, `my-project-123`).\n\nThe caller must have read permissions for this Project.", + "path": "v1/{+resource}:listOrgPolicies", "request": { - "$ref": "GetAncestryRequest" - } + "$ref": "ListOrgPoliciesRequest" + }, + "response": { + "$ref": "ListOrgPoliciesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + }, + "search": { + "description": "Searches Organization resources that are visible to the user and satisfy\nthe specified filter. This method returns Organizations in an unspecified\norder. New Organizations do not necessarily appear at the end of the\nresults.\n\nSearch will only return organizations on which the user has the permission\n`resourcemanager.organizations.get`", + "flatPath": "v1/organizations:search", + "httpMethod": "POST", + "id": "cloudresourcemanager.organizations.search", + "parameterOrder": [], + "parameters": {}, + "path": "v1/organizations:search", + "request": { + "$ref": "SearchOrganizationsRequest" + }, + "response": { + "$ref": "SearchOrganizationsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + }, + "setIamPolicy": { + "description": "Sets the access control policy on an Organization resource. Replaces any\nexisting policy. The `resource` field should be the organization's resource\nname, e.g. \"organizations/123\".\n\nAuthorization requires the Google IAM permission\n`resourcemanager.organizations.setIamPolicy` on the specified organization", + "flatPath": "v1/organizations/{organizationsId}:setIamPolicy", + "httpMethod": "POST", + "id": "cloudresourcemanager.organizations.setIamPolicy", + "parameterOrder": [ + "resource" + ], + "parameters": { + "resource": { + "description": "REQUIRED: The resource for which the policy is being specified.\nSee the operation documentation for the appropriate value for this field.", + "location": "path", + "pattern": "^organizations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+resource}:setIamPolicy", + "request": { + "$ref": "SetIamPolicyRequest" + }, + "response": { + "$ref": "Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "setOrgPolicy": { + "description": "Updates the specified `Policy` on the resource. Creates a new `Policy` for\nthat `Constraint` on the resource if one does not exist.\n\nNot supplying an `etag` on the request `Policy` results in an unconditional\nwrite of the `Policy`.", + "flatPath": "v1/organizations/{organizationsId}:setOrgPolicy", + "httpMethod": "POST", + "id": "cloudresourcemanager.organizations.setOrgPolicy", + "parameterOrder": [ + "resource" + ], + "parameters": { + "resource": { + "description": "Resource name of the resource to attach the `Policy`.", + "location": "path", + "pattern": "^organizations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+resource}:setOrgPolicy", + "request": { + "$ref": "SetOrgPolicyRequest" + }, + "response": { + "$ref": "OrgPolicy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] }, "testIamPermissions": { - "path": "v1/projects/{resource}:testIamPermissions", - "id": "cloudresourcemanager.projects.testIamPermissions", - "description": "Returns permissions that a caller has on the specified Project.\n\nThere are no permissions required for making this API call.", + "description": "Returns permissions that a caller has on the specified Organization.\nThe `resource` field should be the organization's resource name,\ne.g. \"organizations/123\".\n\nThere are no permissions required for making this API call.", + "flatPath": "v1/organizations/{organizationsId}:testIamPermissions", + "httpMethod": "POST", + "id": "cloudresourcemanager.organizations.testIamPermissions", + "parameterOrder": [ + "resource" + ], + "parameters": { + "resource": { + "description": "REQUIRED: The resource for which the policy detail is being requested.\nSee the operation documentation for the appropriate value for this field.", + "location": "path", + "pattern": "^organizations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+resource}:testIamPermissions", "request": { "$ref": "TestIamPermissionsRequest" }, "response": { "$ref": "TestIamPermissionsResponse" }, - "parameterOrder": [ - "resource" - ], - "httpMethod": "POST", "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/cloud-platform.read-only" - ], - "parameters": { - "resource": { - "location": "path", - "description": "REQUIRED: The resource for which the policy detail is being requested.\nSee the operation documentation for the appropriate value for this field.", - "required": true, - "type": "string" - } - }, - "flatPath": "v1/projects/{resource}:testIamPermissions" - }, - "delete": { - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "projectId" - ], - "httpMethod": "DELETE", - "parameters": { - "projectId": { - "location": "path", - "description": "The Project ID (for example, `foo-bar-123`).\n\nRequired.", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/projects/{projectId}", - "path": "v1/projects/{projectId}", - "id": "cloudresourcemanager.projects.delete", - "description": "Marks the Project identified by the specified\n`project_id` (for example, `my-project-123`) for deletion.\nThis method will only affect the Project if the following criteria are met:\n\n+ The Project does not have a billing account associated with it.\n+ The Project has a lifecycle state of\nACTIVE.\n\nThis method changes the Project's lifecycle state from\nACTIVE\nto DELETE_REQUESTED.\nThe deletion starts at an unspecified time,\nat which point the Project is no longer accessible.\n\nUntil the deletion completes, you can check the lifecycle state\nchecked by retrieving the Project with GetProject,\nand the Project remains visible to ListProjects.\nHowever, you cannot update the project.\n\nAfter the deletion completes, the Project is not retrievable by\nthe GetProject and\nListProjects methods.\n\nThe caller must have modify permissions for this Project." - }, + ] + } + } + }, + "projects": { + "methods": { "clearOrgPolicy": { + "description": "Clears a `Policy` from a resource.", + "flatPath": "v1/projects/{projectsId}:clearOrgPolicy", "httpMethod": "POST", + "id": "cloudresourcemanager.projects.clearOrgPolicy", "parameterOrder": [ "resource" ], - "response": { - "$ref": "Empty" - }, "parameters": { "resource": { - "pattern": "^projects/[^/]+$", - "location": "path", "description": "Name of the resource for the `Policy` to clear.", + "location": "path", + "pattern": "^projects/[^/]+$", "required": true, "type": "string" } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/projects/{projectsId}:clearOrgPolicy", - "id": "cloudresourcemanager.projects.clearOrgPolicy", "path": "v1/{+resource}:clearOrgPolicy", "request": { "$ref": "ClearOrgPolicyRequest" }, - "description": "Clears a `Policy` from a resource." - }, - "setIamPolicy": { - "request": { - "$ref": "SetIamPolicyRequest" - }, - "description": "Sets the IAM access control policy for the specified Project. Overwrites\nany existing policy.\n\nThe following constraints apply when using `setIamPolicy()`:\n\n+ Project does not support `allUsers` and `allAuthenticatedUsers` as\n`members` in a `Binding` of a `Policy`.\n\n+ The owner role can be granted only to `user` and `serviceAccount`.\n\n+ Service accounts can be made owners of a project directly\nwithout any restrictions. However, to be added as an owner, a user must be\ninvited via Cloud Platform console and must accept the invitation.\n\n+ A user cannot be granted the owner role using `setIamPolicy()`. The user\nmust be granted the owner role using the Cloud Platform Console and must\nexplicitly accept the invitation.\n\n+ Invitations to grant the owner role cannot be sent using\n`setIamPolicy()`;\nthey must be sent only using the Cloud Platform Console.\n\n+ Membership changes that leave the project without any owners that have\naccepted the Terms of Service (ToS) will be rejected.\n\n+ If the project is not part of an organization, there must be at least\none owner who has accepted the Terms of Service (ToS) agreement in the\npolicy. Calling `setIamPolicy()` to remove the last ToS-accepted owner\nfrom the policy will fail. This restriction also applies to legacy\nprojects that no longer have owners who have accepted the ToS. Edits to\nIAM policies will be rejected until the lack of a ToS-accepting owner is\nrectified.\n\n+ This method will replace the existing policy, and cannot be used to\nappend additional IAM settings.\n\nNote: Removing service accounts from policies or changing their roles\ncan render services completely inoperable. It is important to understand\nhow the service account is being used before removing or updating its\nroles.\n\nAuthorization requires the Google IAM permission\n`resourcemanager.projects.setIamPolicy` on the project", "response": { - "$ref": "Policy" - }, - "parameterOrder": [ - "resource" - ], - "httpMethod": "POST", - "parameters": { - "resource": { - "description": "REQUIRED: The resource for which the policy is being specified.\nSee the operation documentation for the appropriate value for this field.", - "required": true, - "type": "string", - "location": "path" - } + "$ref": "Empty" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "create": { + "description": "Request that a new Project be created. The result is an Operation which\ncan be used to track the creation process. It is automatically deleted\nafter a few hours, so there is no need to call DeleteOperation.\n\nOur SLO permits Project creation to take up to 30 seconds at the 90th\npercentile. As of 2016-08-29, we are observing 6 seconds 50th percentile\nlatency. 95th percentile latency is around 11 seconds. We recommend\npolling at the 5th second with an exponential backoff.\n\nAuthorization requires the Google IAM permission\n`resourcemanager.projects.create` on the specified parent for the new\nproject. The parent is identified by a specified ResourceId,\nwhich must include both an ID and a type, such as organization.", + "flatPath": "v1/projects", + "httpMethod": "POST", + "id": "cloudresourcemanager.projects.create", + "parameterOrder": [], + "parameters": {}, + "path": "v1/projects", + "request": { + "$ref": "Project" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Marks the Project identified by the specified\n`project_id` (for example, `my-project-123`) for deletion.\nThis method will only affect the Project if it has a lifecycle state of\nACTIVE.\n\nThis method changes the Project's lifecycle state from\nACTIVE\nto DELETE_REQUESTED.\nThe deletion starts at an unspecified time,\nat which point the Project is no longer accessible.\n\nUntil the deletion completes, you can check the lifecycle state\nchecked by retrieving the Project with GetProject,\nand the Project remains visible to ListProjects.\nHowever, you cannot update the project.\n\nAfter the deletion completes, the Project is not retrievable by\nthe GetProject and\nListProjects methods.\n\nThe caller must have modify permissions for this Project.", + "flatPath": "v1/projects/{projectId}", + "httpMethod": "DELETE", + "id": "cloudresourcemanager.projects.delete", + "parameterOrder": [ + "projectId" ], - "flatPath": "v1/projects/{resource}:setIamPolicy", - "path": "v1/projects/{resource}:setIamPolicy", - "id": "cloudresourcemanager.projects.setIamPolicy" + "parameters": { + "projectId": { + "description": "The Project ID (for example, `foo-bar-123`).\n\nRequired.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/projects/{projectId}", + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Retrieves the Project identified by the specified\n`project_id` (for example, `my-project-123`).\n\nThe caller must have read permissions for this Project.", + "flatPath": "v1/projects/{projectId}", + "httpMethod": "GET", + "id": "cloudresourcemanager.projects.get", + "parameterOrder": [ + "projectId" + ], + "parameters": { + "projectId": { + "description": "The Project ID (for example, `my-project-123`).\n\nRequired.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/projects/{projectId}", + "response": { + "$ref": "Project" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + }, + "getAncestry": { + "description": "Gets a list of ancestors in the resource hierarchy for the Project\nidentified by the specified `project_id` (for example, `my-project-123`).\n\nThe caller must have read permissions for this Project.", + "flatPath": "v1/projects/{projectId}:getAncestry", + "httpMethod": "POST", + "id": "cloudresourcemanager.projects.getAncestry", + "parameterOrder": [ + "projectId" + ], + "parameters": { + "projectId": { + "description": "The Project ID (for example, `my-project-123`).\n\nRequired.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/projects/{projectId}:getAncestry", + "request": { + "$ref": "GetAncestryRequest" + }, + "response": { + "$ref": "GetAncestryResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + }, + "getEffectiveOrgPolicy": { + "description": "Gets the effective `Policy` on a resource. This is the result of merging\n`Policies` in the resource hierarchy. The returned `Policy` will not have\nan `etag`set because it is a computed `Policy` across multiple resources.", + "flatPath": "v1/projects/{projectsId}:getEffectiveOrgPolicy", + "httpMethod": "POST", + "id": "cloudresourcemanager.projects.getEffectiveOrgPolicy", + "parameterOrder": [ + "resource" + ], + "parameters": { + "resource": { + "description": "The name of the resource to start computing the effective `Policy`.", + "location": "path", + "pattern": "^projects/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+resource}:getEffectiveOrgPolicy", + "request": { + "$ref": "GetEffectiveOrgPolicyRequest" + }, + "response": { + "$ref": "OrgPolicy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + }, + "getIamPolicy": { + "description": "Returns the IAM access control policy for the specified Project.\nPermission is denied if the policy or the resource does not exist.\n\nAuthorization requires the Google IAM permission\n`resourcemanager.projects.getIamPolicy` on the project.\n\nFor additional information about resource structure and identification,\nsee [Resource Names](/apis/design/resource_names).", + "flatPath": "v1/projects/{resource}:getIamPolicy", + "httpMethod": "POST", + "id": "cloudresourcemanager.projects.getIamPolicy", + "parameterOrder": [ + "resource" + ], + "parameters": { + "resource": { + "description": "REQUIRED: The resource for which the policy is being requested.\nSee the operation documentation for the appropriate value for this field.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/projects/{resource}:getIamPolicy", + "request": { + "$ref": "GetIamPolicyRequest" + }, + "response": { + "$ref": "Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + }, + "getOrgPolicy": { + "description": "Gets a `Policy` on a resource.\n\nIf no `Policy` is set on the resource, a `Policy` is returned with default\nvalues including `POLICY_TYPE_NOT_SET` for the `policy_type oneof`. The\n`etag` value can be used with `SetOrgPolicy()` to create or update a\n`Policy` during read-modify-write.", + "flatPath": "v1/projects/{projectsId}:getOrgPolicy", + "httpMethod": "POST", + "id": "cloudresourcemanager.projects.getOrgPolicy", + "parameterOrder": [ + "resource" + ], + "parameters": { + "resource": { + "description": "Name of the resource the `Policy` is set on.", + "location": "path", + "pattern": "^projects/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+resource}:getOrgPolicy", + "request": { + "$ref": "GetOrgPolicyRequest" + }, + "response": { + "$ref": "OrgPolicy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + }, + "list": { + "description": "Lists Projects that are visible to the user and satisfy the\nspecified filter. This method returns Projects in an unspecified order.\nThis method is eventually consistent with project mutations; this means\nthat a newly created project may not appear in the results or recent\nupdates to an existing project may not be reflected in the results. To\nretrieve the latest state of a project, use the\nGetProject method.", + "flatPath": "v1/projects", + "httpMethod": "GET", + "id": "cloudresourcemanager.projects.list", + "parameterOrder": [], + "parameters": { + "filter": { + "description": "An expression for filtering the results of the request. Filter rules are\ncase insensitive. The fields eligible for filtering are:\n\n+ `name`\n+ `id`\n+ \u003ccode\u003elabels.\u003cem\u003ekey\u003c/em\u003e\u003c/code\u003e where *key* is the name of a label\n\nSome examples of using labels as filters:\n\n|Filter|Description|\n|------|-----------|\n|name:how*|The project's name starts with \"how\".|\n|name:Howl|The project's name is `Howl` or `howl`.|\n|name:HOWL|Equivalent to above.|\n|NAME:howl|Equivalent to above.|\n|labels.color:*|The project has the label `color`.|\n|labels.color:red|The project's label `color` has the value `red`.|\n|labels.color:red\u0026nbsp;labels.size:big|The project's label `color` has the value `red` and its label `size` has the value `big`.\n\nIf you specify a filter that has both `parent.type` and `parent.id`, then\nthe `resourcemanager.projects.list` permission is checked on the parent.\nIf the user has this permission, all projects under the parent will be\nreturned after remaining filters have been applied. If the user lacks this\npermission, then all projects for which the user has the\n`resourcemanager.projects.get` permission will be returned after remaining\nfilters have been applied. If no filter is specified, the call will return\nprojects for which the user has `resourcemanager.projects.get` permissions.\n\nOptional.", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "The maximum number of Projects to return in the response.\nThe server can return fewer Projects than requested.\nIf unspecified, server picks an appropriate default.\n\nOptional.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "A pagination token returned from a previous call to ListProjects\nthat indicates from where listing should continue.\n\nOptional.", + "location": "query", + "type": "string" + } + }, + "path": "v1/projects", + "response": { + "$ref": "ListProjectsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] }, "listAvailableOrgPolicyConstraints": { "description": "Lists `Constraints` that could be applied on the specified resource.", + "flatPath": "v1/projects/{projectsId}:listAvailableOrgPolicyConstraints", + "httpMethod": "POST", + "id": "cloudresourcemanager.projects.listAvailableOrgPolicyConstraints", + "parameterOrder": [ + "resource" + ], + "parameters": { + "resource": { + "description": "Name of the resource to list `Constraints` for.", + "location": "path", + "pattern": "^projects/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+resource}:listAvailableOrgPolicyConstraints", "request": { "$ref": "ListAvailableOrgPolicyConstraintsRequest" }, "response": { "$ref": "ListAvailableOrgPolicyConstraintsResponse" }, - "parameterOrder": [ - "resource" - ], - "httpMethod": "POST", "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + }, + "listOrgPolicies": { + "description": "Lists all the `Policies` set for a particular resource.", + "flatPath": "v1/projects/{projectsId}:listOrgPolicies", + "httpMethod": "POST", + "id": "cloudresourcemanager.projects.listOrgPolicies", + "parameterOrder": [ + "resource" ], "parameters": { "resource": { - "pattern": "^projects/[^/]+$", + "description": "Name of the resource to list Policies for.", "location": "path", - "description": "Name of the resource to list `Constraints` for.", + "pattern": "^projects/[^/]+$", "required": true, "type": "string" } }, - "flatPath": "v1/projects/{projectsId}:listAvailableOrgPolicyConstraints", - "path": "v1/{+resource}:listAvailableOrgPolicyConstraints", - "id": "cloudresourcemanager.projects.listAvailableOrgPolicyConstraints" + "path": "v1/{+resource}:listOrgPolicies", + "request": { + "$ref": "ListOrgPoliciesRequest" + }, + "response": { + "$ref": "ListOrgPoliciesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] }, - "getIamPolicy": { + "setIamPolicy": { + "description": "Sets the IAM access control policy for the specified Project. Overwrites\nany existing policy.\n\nThe following constraints apply when using `setIamPolicy()`:\n\n+ Project does not support `allUsers` and `allAuthenticatedUsers` as\n`members` in a `Binding` of a `Policy`.\n\n+ The owner role can be granted only to `user` and `serviceAccount`.\n\n+ Service accounts can be made owners of a project directly\nwithout any restrictions. However, to be added as an owner, a user must be\ninvited via Cloud Platform console and must accept the invitation.\n\n+ A user cannot be granted the owner role using `setIamPolicy()`. The user\nmust be granted the owner role using the Cloud Platform Console and must\nexplicitly accept the invitation.\n\n+ Invitations to grant the owner role cannot be sent using\n`setIamPolicy()`;\nthey must be sent only using the Cloud Platform Console.\n\n+ Membership changes that leave the project without any owners that have\naccepted the Terms of Service (ToS) will be rejected.\n\n+ If the project is not part of an organization, there must be at least\none owner who has accepted the Terms of Service (ToS) agreement in the\npolicy. Calling `setIamPolicy()` to remove the last ToS-accepted owner\nfrom the policy will fail. This restriction also applies to legacy\nprojects that no longer have owners who have accepted the ToS. Edits to\nIAM policies will be rejected until the lack of a ToS-accepting owner is\nrectified.\n\n+ This method will replace the existing policy, and cannot be used to\nappend additional IAM settings.\n\nNote: Removing service accounts from policies or changing their roles\ncan render services completely inoperable. It is important to understand\nhow the service account is being used before removing or updating its\nroles.\n\nAuthorization requires the Google IAM permission\n`resourcemanager.projects.setIamPolicy` on the project", + "flatPath": "v1/projects/{resource}:setIamPolicy", "httpMethod": "POST", + "id": "cloudresourcemanager.projects.setIamPolicy", "parameterOrder": [ "resource" ], + "parameters": { + "resource": { + "description": "REQUIRED: The resource for which the policy is being specified.\nSee the operation documentation for the appropriate value for this field.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/projects/{resource}:setIamPolicy", + "request": { + "$ref": "SetIamPolicyRequest" + }, "response": { "$ref": "Policy" }, - "parameters": { - "resource": { - "required": true, - "type": "string", - "location": "path", - "description": "REQUIRED: The resource for which the policy is being requested.\nSee the operation documentation for the appropriate value for this field." - } - }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ], - "flatPath": "v1/projects/{resource}:getIamPolicy", - "id": "cloudresourcemanager.projects.getIamPolicy", - "path": "v1/projects/{resource}:getIamPolicy", - "request": { - "$ref": "GetIamPolicyRequest" - }, - "description": "Returns the IAM access control policy for the specified Project.\nPermission is denied if the policy or the resource does not exist.\n\nAuthorization requires the Google IAM permission\n`resourcemanager.projects.getIamPolicy` on the project.\n\nFor additional information about resource structure and identification,\nsee [Resource Names](/apis/design/resource_names)." + "https://www.googleapis.com/auth/cloud-platform" + ] }, - "getOrgPolicy": { - "response": { - "$ref": "OrgPolicy" - }, + "setOrgPolicy": { + "description": "Updates the specified `Policy` on the resource. Creates a new `Policy` for\nthat `Constraint` on the resource if one does not exist.\n\nNot supplying an `etag` on the request `Policy` results in an unconditional\nwrite of the `Policy`.", + "flatPath": "v1/projects/{projectsId}:setOrgPolicy", + "httpMethod": "POST", + "id": "cloudresourcemanager.projects.setOrgPolicy", "parameterOrder": [ "resource" ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ], "parameters": { "resource": { - "pattern": "^projects/[^/]+$", + "description": "Resource name of the resource to attach the `Policy`.", "location": "path", - "description": "Name of the resource the `Policy` is set on.", + "pattern": "^projects/[^/]+$", "required": true, "type": "string" } }, - "flatPath": "v1/projects/{projectsId}:getOrgPolicy", - "path": "v1/{+resource}:getOrgPolicy", - "id": "cloudresourcemanager.projects.getOrgPolicy", - "description": "Gets a `Policy` on a resource.\n\nIf no `Policy` is set on the resource, a `Policy` is returned with default\nvalues including `POLICY_TYPE_NOT_SET` for the `policy_type oneof`. The\n`etag` value can be used with `SetOrgPolicy()` to create or update a\n`Policy` during read-modify-write.", + "path": "v1/{+resource}:setOrgPolicy", "request": { - "$ref": "GetOrgPolicyRequest" - } - }, - "getEffectiveOrgPolicy": { - "flatPath": "v1/projects/{projectsId}:getEffectiveOrgPolicy", - "id": "cloudresourcemanager.projects.getEffectiveOrgPolicy", - "path": "v1/{+resource}:getEffectiveOrgPolicy", - "request": { - "$ref": "GetEffectiveOrgPolicyRequest" + "$ref": "SetOrgPolicyRequest" }, - "description": "Gets the effective `Policy` on a resource. This is the result of merging\n`Policies` in the resource hierarchy. The returned `Policy` will not have\nan `etag`set because it is a computed `Policy` across multiple resources.", - "httpMethod": "POST", - "parameterOrder": [ - "resource" - ], "response": { "$ref": "OrgPolicy" }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified Project.\n\nThere are no permissions required for making this API call.", + "flatPath": "v1/projects/{resource}:testIamPermissions", + "httpMethod": "POST", + "id": "cloudresourcemanager.projects.testIamPermissions", + "parameterOrder": [ + "resource" + ], "parameters": { "resource": { - "description": "The name of the resource to start computing the effective `Policy`.", + "description": "REQUIRED: The resource for which the policy detail is being requested.\nSee the operation documentation for the appropriate value for this field.", + "location": "path", "required": true, - "type": "string", - "pattern": "^projects/[^/]+$", - "location": "path" + "type": "string" } }, + "path": "v1/projects/{resource}:testIamPermissions", + "request": { + "$ref": "TestIamPermissionsRequest" + }, + "response": { + "$ref": "TestIamPermissionsResponse" + }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/cloud-platform.read-only" ] }, "undelete": { + "description": "Restores the Project identified by the specified\n`project_id` (for example, `my-project-123`).\nYou can only use this method for a Project that has a lifecycle state of\nDELETE_REQUESTED.\nAfter deletion starts, the Project cannot be restored.\n\nThe caller must have modify permissions for this Project.", + "flatPath": "v1/projects/{projectId}:undelete", + "httpMethod": "POST", + "id": "cloudresourcemanager.projects.undelete", + "parameterOrder": [ + "projectId" + ], "parameters": { "projectId": { - "required": true, - "type": "string", + "description": "The project ID (for example, `foo-bar-123`).\n\nRequired.", "location": "path", - "description": "The project ID (for example, `foo-bar-123`).\n\nRequired." + "required": true, + "type": "string" } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/projects/{projectId}:undelete", - "id": "cloudresourcemanager.projects.undelete", "path": "v1/projects/{projectId}:undelete", "request": { "$ref": "UndeleteProjectRequest" }, - "description": "Restores the Project identified by the specified\n`project_id` (for example, `my-project-123`).\nYou can only use this method for a Project that has a lifecycle state of\nDELETE_REQUESTED.\nAfter deletion starts, the Project cannot be restored.\n\nThe caller must have modify permissions for this Project.", - "httpMethod": "POST", - "parameterOrder": [ - "projectId" - ], "response": { "$ref": "Empty" - } - }, - "update": { - "httpMethod": "PUT", - "parameterOrder": [ - "projectId" - ], - "response": { - "$ref": "Project" - }, - "parameters": { - "projectId": { - "location": "path", - "description": "The project ID (for example, `my-project-123`).\n\nRequired.", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/projects/{projectId}", - "id": "cloudresourcemanager.projects.update", - "path": "v1/projects/{projectId}", - "request": { - "$ref": "Project" - }, - "description": "Updates the attributes of the Project identified by the specified\n`project_id` (for example, `my-project-123`).\n\nThe caller must have modify permissions for this Project." - } - } - }, - "organizations": { - "methods": { - "listOrgPolicies": { - "response": { - "$ref": "ListOrgPoliciesResponse" - }, - "parameterOrder": [ - "resource" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ], - "parameters": { - "resource": { - "required": true, - "type": "string", - "pattern": "^organizations/[^/]+$", - "location": "path", - "description": "Name of the resource to list Policies for." - } - }, - "flatPath": "v1/organizations/{organizationsId}:listOrgPolicies", - "path": "v1/{+resource}:listOrgPolicies", - "id": "cloudresourcemanager.organizations.listOrgPolicies", - "description": "Lists all the `Policies` set for a particular resource.", - "request": { - "$ref": "ListOrgPoliciesRequest" - } - }, - "listAvailableOrgPolicyConstraints": { - "path": "v1/{+resource}:listAvailableOrgPolicyConstraints", - "id": "cloudresourcemanager.organizations.listAvailableOrgPolicyConstraints", - "request": { - "$ref": "ListAvailableOrgPolicyConstraintsRequest" - }, - "description": "Lists `Constraints` that could be applied on the specified resource.", - "response": { - "$ref": "ListAvailableOrgPolicyConstraintsResponse" - }, - "parameterOrder": [ - "resource" - ], - "httpMethod": "POST", - "parameters": { - "resource": { - "description": "Name of the resource to list `Constraints` for.", - "required": true, - "type": "string", - "pattern": "^organizations/[^/]+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ], - "flatPath": "v1/organizations/{organizationsId}:listAvailableOrgPolicyConstraints" - }, - "getIamPolicy": { - "response": { - "$ref": "Policy" - }, - "parameterOrder": [ - "resource" - ], - "httpMethod": "POST", - "parameters": { - "resource": { - "description": "REQUIRED: The resource for which the policy is being requested.\nSee the operation documentation for the appropriate value for this field.", - "required": true, - "type": "string", - "pattern": "^organizations/[^/]+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ], - "flatPath": "v1/organizations/{organizationsId}:getIamPolicy", - "path": "v1/{+resource}:getIamPolicy", - "id": "cloudresourcemanager.organizations.getIamPolicy", - "request": { - "$ref": "GetIamPolicyRequest" - }, - "description": "Gets the access control policy for an Organization resource. May be empty\nif no such policy or resource exists. The `resource` field should be the\norganization's resource name, e.g. \"organizations/123\".\n\nAuthorization requires the Google IAM permission\n`resourcemanager.organizations.getIamPolicy` on the specified organization" - }, - "getOrgPolicy": { - "response": { - "$ref": "OrgPolicy" - }, - "parameterOrder": [ - "resource" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ], - "parameters": { - "resource": { - "location": "path", - "description": "Name of the resource the `Policy` is set on.", - "required": true, - "type": "string", - "pattern": "^organizations/[^/]+$" - } - }, - "flatPath": "v1/organizations/{organizationsId}:getOrgPolicy", - "path": "v1/{+resource}:getOrgPolicy", - "id": "cloudresourcemanager.organizations.getOrgPolicy", - "description": "Gets a `Policy` on a resource.\n\nIf no `Policy` is set on the resource, a `Policy` is returned with default\nvalues including `POLICY_TYPE_NOT_SET` for the `policy_type oneof`. The\n`etag` value can be used with `SetOrgPolicy()` to create or update a\n`Policy` during read-modify-write.", - "request": { - "$ref": "GetOrgPolicyRequest" - } - }, - "search": { - "response": { - "$ref": "SearchOrganizationsResponse" - }, - "parameterOrder": [], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ], - "parameters": {}, - "flatPath": "v1/organizations:search", - "path": "v1/organizations:search", - "id": "cloudresourcemanager.organizations.search", - "description": "Searches Organization resources that are visible to the user and satisfy\nthe specified filter. This method returns Organizations in an unspecified\norder. New Organizations do not necessarily appear at the end of the\nresults.\n\nSearch will only return organizations on which the user has the permission\n`resourcemanager.organizations.get`", - "request": { - "$ref": "SearchOrganizationsRequest" - } - }, - "get": { - "response": { - "$ref": "Organization" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ], - "parameters": { - "name": { - "pattern": "^organizations/[^/]+$", - "location": "path", - "description": "The resource name of the Organization to fetch, e.g. \"organizations/1234\".", - "required": true, - "type": "string" - } - }, - "flatPath": "v1/organizations/{organizationsId}", - "path": "v1/{+name}", - "id": "cloudresourcemanager.organizations.get", - "description": "Fetches an Organization resource identified by the specified resource name." - }, - "getEffectiveOrgPolicy": { - "request": { - "$ref": "GetEffectiveOrgPolicyRequest" - }, - "description": "Gets the effective `Policy` on a resource. This is the result of merging\n`Policies` in the resource hierarchy. The returned `Policy` will not have\nan `etag`set because it is a computed `Policy` across multiple resources.", - "httpMethod": "POST", - "parameterOrder": [ - "resource" - ], - "response": { - "$ref": "OrgPolicy" - }, - "parameters": { - "resource": { - "pattern": "^organizations/[^/]+$", - "location": "path", - "description": "The name of the resource to start computing the effective `Policy`.", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ], - "flatPath": "v1/organizations/{organizationsId}:getEffectiveOrgPolicy", - "id": "cloudresourcemanager.organizations.getEffectiveOrgPolicy", - "path": "v1/{+resource}:getEffectiveOrgPolicy" - }, - "testIamPermissions": { - "id": "cloudresourcemanager.organizations.testIamPermissions", - "path": "v1/{+resource}:testIamPermissions", - "request": { - "$ref": "TestIamPermissionsRequest" - }, - "description": "Returns permissions that a caller has on the specified Organization.\nThe `resource` field should be the organization's resource name,\ne.g. \"organizations/123\".\n\nThere are no permissions required for making this API call.", - "httpMethod": "POST", - "parameterOrder": [ - "resource" - ], - "response": { - "$ref": "TestIamPermissionsResponse" - }, - "parameters": { - "resource": { - "location": "path", - "description": "REQUIRED: The resource for which the policy detail is being requested.\nSee the operation documentation for the appropriate value for this field.", - "required": true, - "type": "string", - "pattern": "^organizations/[^/]+$" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ], - "flatPath": "v1/organizations/{organizationsId}:testIamPermissions" - }, - "clearOrgPolicy": { - "flatPath": "v1/organizations/{organizationsId}:clearOrgPolicy", - "path": "v1/{+resource}:clearOrgPolicy", - "id": "cloudresourcemanager.organizations.clearOrgPolicy", - "request": { - "$ref": "ClearOrgPolicyRequest" - }, - "description": "Clears a `Policy` from a resource.", - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "resource" - ], - "httpMethod": "POST", - "parameters": { - "resource": { - "description": "Name of the resource for the `Policy` to clear.", - "required": true, - "type": "string", - "pattern": "^organizations/[^/]+$", - "location": "path" - } }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ] }, - "setOrgPolicy": { - "response": { - "$ref": "OrgPolicy" - }, + "update": { + "description": "Updates the attributes of the Project identified by the specified\n`project_id` (for example, `my-project-123`).\n\nThe caller must have modify permissions for this Project.", + "flatPath": "v1/projects/{projectId}", + "httpMethod": "PUT", + "id": "cloudresourcemanager.projects.update", "parameterOrder": [ - "resource" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "projectId" ], "parameters": { - "resource": { - "description": "Resource name of the resource to attach the `Policy`.", - "required": true, - "type": "string", - "pattern": "^organizations/[^/]+$", - "location": "path" - } - }, - "flatPath": "v1/organizations/{organizationsId}:setOrgPolicy", - "path": "v1/{+resource}:setOrgPolicy", - "id": "cloudresourcemanager.organizations.setOrgPolicy", - "description": "Updates the specified `Policy` on the resource. Creates a new `Policy` for\nthat `Constraint` on the resource if one does not exist.\n\nNot supplying an `etag` on the request `Policy` results in an unconditional\nwrite of the `Policy`.", - "request": { - "$ref": "SetOrgPolicyRequest" - } - }, - "setIamPolicy": { - "response": { - "$ref": "Policy" - }, - "parameterOrder": [ - "resource" - ], - "httpMethod": "POST", - "parameters": { - "resource": { + "projectId": { + "description": "The project ID (for example, `my-project-123`).\n\nRequired.", "location": "path", - "description": "REQUIRED: The resource for which the policy is being specified.\nSee the operation documentation for the appropriate value for this field.", "required": true, - "type": "string", - "pattern": "^organizations/[^/]+$" + "type": "string" } }, + "path": "v1/projects/{projectId}", + "request": { + "$ref": "Project" + }, + "response": { + "$ref": "Project" + }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/organizations/{organizationsId}:setIamPolicy", - "path": "v1/{+resource}:setIamPolicy", - "id": "cloudresourcemanager.organizations.setIamPolicy", - "request": { - "$ref": "SetIamPolicyRequest" - }, - "description": "Sets the access control policy on an Organization resource. Replaces any\nexisting policy. The `resource` field should be the organization's resource\nname, e.g. \"organizations/123\".\n\nAuthorization requires the Google IAM permission\n`resourcemanager.organizations.setIamPolicy` on the specified organization" + ] } } } }, - "parameters": { - "upload_protocol": { - "location": "query", - "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", - "type": "string" - }, - "prettyPrint": { - "type": "boolean", - "default": "true", - "location": "query", - "description": "Returns response with indentations and line breaks." - }, - "uploadType": { - "location": "query", - "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", - "type": "string" - }, - "fields": { - "location": "query", - "description": "Selector specifying which fields to include in a partial response.", - "type": "string" - }, - "$.xgafv": { - "enumDescriptions": [ - "v1 error format", - "v2 error format" - ], - "location": "query", - "enum": [ - "1", - "2" - ], - "description": "V1 error format.", - "type": "string" - }, - "callback": { - "type": "string", - "location": "query", - "description": "JSONP" - }, - "alt": { - "enum": [ - "json", - "media", - "proto" - ], - "type": "string", - "enumDescriptions": [ - "Responses with Content-Type of application/json", - "Media download with context-dependent Content-Type", - "Responses with Content-Type of application/x-protobuf" - ], - "location": "query", - "description": "Data format for response.", - "default": "json" - }, - "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.", - "type": "string", - "location": "query" - }, - "access_token": { - "location": "query", - "description": "OAuth access token.", - "type": "string" - }, - "quotaUser": { - "location": "query", - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", - "type": "string" - }, - "pp": { - "description": "Pretty-print response.", - "type": "boolean", - "default": "true", - "location": "query" - }, - "oauth_token": { - "location": "query", - "description": "OAuth 2.0 token for the current user.", - "type": "string" - }, - "bearer_token": { - "location": "query", - "description": "OAuth bearer token.", - "type": "string" - } - }, - "version": "v1", - "baseUrl": "https://cloudresourcemanager.googleapis.com/", - "servicePath": "", - "kind": "discovery#restDescription", - "description": "The Google Cloud Resource Manager API provides methods for creating, reading, and updating project metadata.", - "basePath": "", - "revision": "20180110", - "documentationLink": "https://cloud.google.com/resource-manager", - "id": "cloudresourcemanager:v1", - "discoveryVersion": "v1", + "revision": "20180315", + "rootUrl": "https://cloudresourcemanager.googleapis.com/", "schemas": { - "Constraint": { - "id": "Constraint", - "description": "A `Constraint` describes a way in which a resource's configuration can be\nrestricted. For example, it controls which cloud services can be activated\nacross an organization, or whether a Compute Engine instance can have\nserial port connections established. `Constraints` can be configured by the\norganization's policy adminstrator to fit the needs of the organzation by\nsetting Policies for `Constraints` at different locations in the\norganization's resource hierarchy. Policies are inherited down the resource\nhierarchy from higher levels, but can also be overridden. For details about\nthe inheritance rules please read about\nPolicies.\n\n`Constraints` have a default behavior determined by the `constraint_default`\nfield, which is the enforcement behavior that is used in the absence of a\n`Policy` being defined or inherited for the resource in question.", - "type": "object", + "Ancestor": { + "description": "Identifying information for a single ancestor of a project.", + "id": "Ancestor", "properties": { + "resourceId": { + "$ref": "ResourceId", + "description": "Resource id of the ancestor." + } + }, + "type": "object" + }, + "AuditConfig": { + "description": "Specifies the audit configuration for a service.\nThe configuration determines which permission types are logged, and what\nidentities, if any, are exempted from logging.\nAn AuditConfig must have one or more AuditLogConfigs.\n\nIf there are AuditConfigs for both `allServices` and a specific service,\nthe union of the two AuditConfigs is used for that service: the log_types\nspecified in each AuditConfig are enabled, and the exempted_members in each\nAuditLogConfig are exempted.\n\nExample Policy with multiple AuditConfigs:\n\n {\n \"audit_configs\": [\n {\n \"service\": \"allServices\"\n \"audit_log_configs\": [\n {\n \"log_type\": \"DATA_READ\",\n \"exempted_members\": [\n \"user:foo@gmail.com\"\n ]\n },\n {\n \"log_type\": \"DATA_WRITE\",\n },\n {\n \"log_type\": \"ADMIN_READ\",\n }\n ]\n },\n {\n \"service\": \"fooservice.googleapis.com\"\n \"audit_log_configs\": [\n {\n \"log_type\": \"DATA_READ\",\n },\n {\n \"log_type\": \"DATA_WRITE\",\n \"exempted_members\": [\n \"user:bar@gmail.com\"\n ]\n }\n ]\n }\n ]\n }\n\nFor fooservice, this policy enables DATA_READ, DATA_WRITE and ADMIN_READ\nlogging. It also exempts foo@gmail.com from DATA_READ logging, and\nbar@gmail.com from DATA_WRITE logging.", + "id": "AuditConfig", + "properties": { + "auditLogConfigs": { + "description": "The configuration for logging of each type of permission.\nNext ID: 4", + "items": { + "$ref": "AuditLogConfig" + }, + "type": "array" + }, + "service": { + "description": "Specifies a service that will be enabled for audit logging.\nFor example, `storage.googleapis.com`, `cloudsql.googleapis.com`.\n`allServices` is a special value that covers all services.", + "type": "string" + } + }, + "type": "object" + }, + "AuditLogConfig": { + "description": "Provides the configuration for logging a type of permissions.\nExample:\n\n {\n \"audit_log_configs\": [\n {\n \"log_type\": \"DATA_READ\",\n \"exempted_members\": [\n \"user:foo@gmail.com\"\n ]\n },\n {\n \"log_type\": \"DATA_WRITE\",\n }\n ]\n }\n\nThis enables 'DATA_READ' and 'DATA_WRITE' logging, while exempting\nfoo@gmail.com from DATA_READ logging.", + "id": "AuditLogConfig", + "properties": { + "exemptedMembers": { + "description": "Specifies the identities that do not cause logging for this type of\npermission.\nFollows the same format of Binding.members.", + "items": { + "type": "string" + }, + "type": "array" + }, + "logType": { + "description": "The log type that this config enables.", + "enum": [ + "LOG_TYPE_UNSPECIFIED", + "ADMIN_READ", + "DATA_WRITE", + "DATA_READ" + ], + "enumDescriptions": [ + "Default case. Should never be this.", + "Admin reads. Example: CloudIAM getIamPolicy", + "Data writes. Example: CloudSQL Users create", + "Data reads. Example: CloudSQL Users list" + ], + "type": "string" + } + }, + "type": "object" + }, + "Binding": { + "description": "Associates `members` with a `role`.", + "id": "Binding", + "properties": { + "members": { + "description": "Specifies the identities requesting access for a Cloud Platform resource.\n`members` can have the following values:\n\n* `allUsers`: A special identifier that represents anyone who is\n on the internet; with or without a Google account.\n\n* `allAuthenticatedUsers`: A special identifier that represents anyone\n who is authenticated with a Google account or a service account.\n\n* `user:{emailid}`: An email address that represents a specific Google\n account. For example, `alice@gmail.com` or `joe@example.com`.\n\n\n* `serviceAccount:{emailid}`: An email address that represents a service\n account. For example, `my-other-app@appspot.gserviceaccount.com`.\n\n* `group:{emailid}`: An email address that represents a Google group.\n For example, `admins@example.com`.\n\n\n* `domain:{domain}`: A Google Apps domain name that represents all the\n users of that domain. For example, `google.com` or `example.com`.\n\n", + "items": { + "type": "string" + }, + "type": "array" + }, + "role": { + "description": "Role that is assigned to `members`.\nFor example, `roles/viewer`, `roles/editor`, or `roles/owner`.\nRequired", + "type": "string" + } + }, + "type": "object" + }, + "BooleanConstraint": { + "description": "A `Constraint` that is either enforced or not.\n\nFor example a constraint `constraints/compute.disableSerialPortAccess`.\nIf it is enforced on a VM instance, serial port connections will not be\nopened to that instance.", + "id": "BooleanConstraint", + "properties": {}, + "type": "object" + }, + "BooleanPolicy": { + "description": "Used in `policy_type` to specify how `boolean_policy` will behave at this\nresource.", + "id": "BooleanPolicy", + "properties": { + "enforced": { + "description": "If `true`, then the `Policy` is enforced. If `false`, then any\nconfiguration is acceptable.\n\nSuppose you have a `Constraint` `constraints/compute.disableSerialPortAccess`\nwith `constraint_default` set to `ALLOW`. A `Policy` for that\n`Constraint` exhibits the following behavior:\n - If the `Policy` at this resource has enforced set to `false`, serial\n port connection attempts will be allowed.\n - If the `Policy` at this resource has enforced set to `true`, serial\n port connection attempts will be refused.\n - If the `Policy` at this resource is `RestoreDefault`, serial port\n connection attempts will be allowed.\n - If no `Policy` is set at this resource or anywhere higher in the\n resource hierarchy, serial port connection attempts will be allowed.\n - If no `Policy` is set at this resource, but one exists higher in the\n resource hierarchy, the behavior is as if the`Policy` were set at\n this resource.\n\nThe following examples demonstrate the different possible layerings:\n\nExample 1 (nearest `Constraint` wins):\n `organizations/foo` has a `Policy` with:\n {enforced: false}\n `projects/bar` has no `Policy` set.\nThe constraint at `projects/bar` and `organizations/foo` will not be\nenforced.\n\nExample 2 (enforcement gets replaced):\n `organizations/foo` has a `Policy` with:\n {enforced: false}\n `projects/bar` has a `Policy` with:\n {enforced: true}\nThe constraint at `organizations/foo` is not enforced.\nThe constraint at `projects/bar` is enforced.\n\nExample 3 (RestoreDefault):\n `organizations/foo` has a `Policy` with:\n {enforced: true}\n `projects/bar` has a `Policy` with:\n {RestoreDefault: {}}\nThe constraint at `organizations/foo` is enforced.\nThe constraint at `projects/bar` is not enforced, because\n`constraint_default` for the `Constraint` is `ALLOW`.", + "type": "boolean" + } + }, + "type": "object" + }, + "ClearOrgPolicyRequest": { + "description": "The request sent to the ClearOrgPolicy method.", + "id": "ClearOrgPolicyRequest", + "properties": { + "constraint": { + "description": "Name of the `Constraint` of the `Policy` to clear.", + "type": "string" + }, + "etag": { + "description": "The current version, for concurrency control. Not sending an `etag`\nwill cause the `Policy` to be cleared blindly.", + "format": "byte", + "type": "string" + } + }, + "type": "object" + }, + "Constraint": { + "description": "A `Constraint` describes a way in which a resource's configuration can be\nrestricted. For example, it controls which cloud services can be activated\nacross an organization, or whether a Compute Engine instance can have\nserial port connections established. `Constraints` can be configured by the\norganization's policy adminstrator to fit the needs of the organzation by\nsetting Policies for `Constraints` at different locations in the\norganization's resource hierarchy. Policies are inherited down the resource\nhierarchy from higher levels, but can also be overridden. For details about\nthe inheritance rules please read about\nPolicies.\n\n`Constraints` have a default behavior determined by the `constraint_default`\nfield, which is the enforcement behavior that is used in the absence of a\n`Policy` being defined or inherited for the resource in question.", + "id": "Constraint", + "properties": { + "booleanConstraint": { + "$ref": "BooleanConstraint", + "description": "Defines this constraint as being a BooleanConstraint." + }, "constraintDefault": { "description": "The evaluation behavior of this constraint in the absense of 'Policy'.", - "type": "string", + "enum": [ + "CONSTRAINT_DEFAULT_UNSPECIFIED", + "ALLOW", + "DENY" + ], "enumDescriptions": [ "This is only used for distinguishing unset values and should never be\nused.", "Indicate that all values are allowed for list constraints.\nIndicate that enforcement is off for boolean constraints.", "Indicate that all values are denied for list constraints.\nIndicate that enforcement is on for boolean constraints." ], - "enum": [ - "CONSTRAINT_DEFAULT_UNSPECIFIED", - "ALLOW", - "DENY" - ] + "type": "string" }, - "name": { - "description": "Immutable value, required to globally be unique. For example,\n`constraints/serviceuser.services`", + "description": { + "description": "Detailed description of what this `Constraint` controls as well as how and\nwhere it is enforced.\n\nMutable.", + "type": "string" + }, + "displayName": { + "description": "The human readable name.\n\nMutable.", "type": "string" }, "listConstraint": { "$ref": "ListConstraint", "description": "Defines this constraint as being a ListConstraint." }, + "name": { + "description": "Immutable value, required to globally be unique. For example,\n`constraints/serviceuser.services`", + "type": "string" + }, "version": { "description": "Version of the `Constraint`. Default version is 0;", "format": "int32", "type": "integer" - }, - "displayName": { - "type": "string", - "description": "The human readable name.\n\nMutable." - }, - "description": { - "description": "Detailed description of what this `Constraint` controls as well as how and\nwhere it is enforced.\n\nMutable.", - "type": "string" - }, - "booleanConstraint": { - "$ref": "BooleanConstraint", - "description": "Defines this constraint as being a BooleanConstraint." - } - } - }, - "ListLiensResponse": { - "description": "The response message for Liens.ListLiens.", - "type": "object", - "properties": { - "liens": { - "description": "A list of Liens.", - "type": "array", - "items": { - "$ref": "Lien" - } - }, - "nextPageToken": { - "description": "Token to retrieve the next page of results, or empty if there are no more\nresults in the list.", - "type": "string" } }, - "id": "ListLiensResponse" - }, - "Status": { - "properties": { - "message": { - "description": "A developer-facing error message, which should be in English. Any\nuser-facing error message should be localized and sent in the\ngoogle.rpc.Status.details field, or localized by the client.", - "type": "string" - }, - "details": { - "description": "A list of messages that carry the error details. There is a common set of\nmessage types for APIs to use.", - "type": "array", - "items": { - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - }, - "type": "object" - } - }, - "code": { - "description": "The status code, which should be an enum value of google.rpc.Code.", - "format": "int32", - "type": "integer" - } - }, - "id": "Status", - "description": "The `Status` type defines a logical error model that is suitable for different\nprogramming environments, including REST APIs and RPC APIs. It is used by\n[gRPC](https://github.com/grpc). The error model is designed to be:\n\n- Simple to use and understand for most users\n- Flexible enough to meet unexpected needs\n\n# Overview\n\nThe `Status` message contains three pieces of data: error code, error message,\nand error details. The error code should be an enum value of\ngoogle.rpc.Code, but it may accept additional error codes if needed. The\nerror message should be a developer-facing English message that helps\ndevelopers *understand* and *resolve* the error. If a localized user-facing\nerror message is needed, put the localized message in the error details or\nlocalize it in the client. The optional error details may contain arbitrary\ninformation about the error. There is a predefined set of error detail types\nin the package `google.rpc` that can be used for common error conditions.\n\n# Language mapping\n\nThe `Status` message is the logical representation of the error model, but it\nis not necessarily the actual wire format. When the `Status` message is\nexposed in different client libraries and different wire protocols, it can be\nmapped differently. For example, it will likely be mapped to some exceptions\nin Java, but more likely mapped to some error codes in C.\n\n# Other uses\n\nThe error model and the `Status` message can be used in a variety of\nenvironments, either with or without APIs, to provide a\nconsistent developer experience across different environments.\n\nExample uses of this error model include:\n\n- Partial errors. If a service needs to return partial errors to the client,\n it may embed the `Status` in the normal response to indicate the partial\n errors.\n\n- Workflow errors. A typical workflow has multiple steps. Each step may\n have a `Status` message for error reporting.\n\n- Batch operations. If a client uses batch request and batch response, the\n `Status` message should be used directly inside batch response, one for\n each error sub-response.\n\n- Asynchronous operations. If an API call embeds asynchronous operation\n results in its response, the status of those operations should be\n represented directly using the `Status` message.\n\n- Logging. If some API errors are stored in logs, the message `Status` could\n be used directly after any stripping needed for security/privacy reasons.", "type": "object" }, - "Binding": { - "id": "Binding", - "description": "Associates `members` with a `role`.", - "type": "object", - "properties": { - "members": { - "description": "Specifies the identities requesting access for a Cloud Platform resource.\n`members` can have the following values:\n\n* `allUsers`: A special identifier that represents anyone who is\n on the internet; with or without a Google account.\n\n* `allAuthenticatedUsers`: A special identifier that represents anyone\n who is authenticated with a Google account or a service account.\n\n* `user:{emailid}`: An email address that represents a specific Google\n account. For example, `alice@gmail.com` or `joe@example.com`.\n\n\n* `serviceAccount:{emailid}`: An email address that represents a service\n account. For example, `my-other-app@appspot.gserviceaccount.com`.\n\n* `group:{emailid}`: An email address that represents a Google group.\n For example, `admins@example.com`.\n\n\n* `domain:{domain}`: A Google Apps domain name that represents all the\n users of that domain. For example, `google.com` or `example.com`.\n\n", - "type": "array", - "items": { - "type": "string" - } - }, - "role": { - "description": "Role that is assigned to `members`.\nFor example, `roles/viewer`, `roles/editor`, or `roles/owner`.\nRequired", - "type": "string" - } - } - }, - "RestoreDefault": { - "description": "Ignores policies set above this resource and restores the\n`constraint_default` enforcement behavior of the specific `Constraint` at\nthis resource.\n\nSuppose that `constraint_default` is set to `ALLOW` for the\n`Constraint` `constraints/serviceuser.services`. Suppose that organization\nfoo.com sets a `Policy` at their Organization resource node that restricts\nthe allowed service activations to deny all service activations. They\ncould then set a `Policy` with the `policy_type` `restore_default` on\nseveral experimental projects, restoring the `constraint_default`\nenforcement of the `Constraint` for only those projects, allowing those\nprojects to have all services activated.", - "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": {}, - "id": "RestoreDefault" + "type": "object" }, - "GetOrgPolicyRequest": { - "description": "The request sent to the GetOrgPolicy method.", - "type": "object", + "FolderOperation": { + "description": "Metadata describing a long running folder operation", + "id": "FolderOperation", "properties": { - "constraint": { - "description": "Name of the `Constraint` to get the `Policy`.", - "type": "string" - } - }, - "id": "GetOrgPolicyRequest" - }, - "ClearOrgPolicyRequest": { - "type": "object", - "properties": { - "etag": { - "description": "The current version, for concurrency control. Not sending an `etag`\nwill cause the `Policy` to be cleared blindly.", - "format": "byte", + "destinationParent": { + "description": "The resource name of the folder or organization we are either creating\nthe folder under or moving the folder to.", "type": "string" }, - "constraint": { - "description": "Name of the `Constraint` of the `Policy` to clear.", - "type": "string" - } - }, - "id": "ClearOrgPolicyRequest", - "description": "The request sent to the ClearOrgPolicy method." - }, - "UndeleteProjectRequest": { - "description": "The request sent to the UndeleteProject\nmethod.", - "type": "object", - "properties": {}, - "id": "UndeleteProjectRequest" - }, - "ProjectCreationStatus": { - "description": "A status object which is used as the `metadata` field for the Operation\nreturned by CreateProject. It provides insight for when significant phases of\nProject creation have completed.", - "type": "object", - "properties": { - "createTime": { - "type": "string", - "description": "Creation time of the project creation workflow.", - "format": "google-datetime" - }, - "gettable": { - "type": "boolean", - "description": "True if the project can be retrieved using GetProject. No other operations\non the project are guaranteed to work until the project creation is\ncomplete." - }, - "ready": { - "description": "True if the project creation process is complete.", - "type": "boolean" - } - }, - "id": "ProjectCreationStatus" - }, - "BooleanConstraint": { - "description": "A `Constraint` that is either enforced or not.\n\nFor example a constraint `constraints/compute.disableSerialPortAccess`.\nIf it is enforced on a VM instance, serial port connections will not be\nopened to that instance.", - "type": "object", - "properties": {}, - "id": "BooleanConstraint" - }, - "GetIamPolicyRequest": { - "id": "GetIamPolicyRequest", - "description": "Request message for `GetIamPolicy` method.", - "type": "object", - "properties": {} - }, - "TestIamPermissionsResponse": { - "description": "Response message for `TestIamPermissions` method.", - "type": "object", - "properties": { - "permissions": { - "description": "A subset of `TestPermissionsRequest.permissions` that the caller is\nallowed.", - "type": "array", - "items": { - "type": "string" - } - } - }, - "id": "TestIamPermissionsResponse" - }, - "OrganizationOwner": { - "description": "The entity that owns an Organization. The lifetime of the Organization and\nall of its descendants are bound to the `OrganizationOwner`. If the\n`OrganizationOwner` is deleted, the Organization and all its descendants will\nbe deleted.", - "type": "object", - "properties": { - "directoryCustomerId": { - "description": "The Google for Work customer id used in the Directory API.", - "type": "string" - } - }, - "id": "OrganizationOwner" - }, - "ListProjectsResponse": { - "description": "A page of the response received from the\nListProjects\nmethod.\n\nA paginated response where more pages are available has\n`next_page_token` set. This token can be used in a subsequent request to\nretrieve the next request page.", - "type": "object", - "properties": { - "projects": { - "description": "The list of Projects that matched the list filter. This list can\nbe paginated.", - "type": "array", - "items": { - "$ref": "Project" - } - }, - "nextPageToken": { - "description": "Pagination token.\n\nIf the result set is too large to fit in a single response, this token\nis returned. It encodes the position of the current result cursor.\nFeeding this value into a new list request with the `page_token` parameter\ngives the next page of the results.\n\nWhen `next_page_token` is not filled in, there is no next page and\nthe list returned is the last page in the result set.\n\nPagination tokens have a limited lifetime.", - "type": "string" - } - }, - "id": "ListProjectsResponse" - }, - "Project": { - "description": "A Project is a high-level Google Cloud Platform entity. It is a\ncontainer for ACLs, APIs, App Engine Apps, VMs, and other\nGoogle Cloud Platform resources.", - "type": "object", - "properties": { - "projectNumber": { - "description": "The number uniquely identifying the project.\n\nExample: \u003ccode\u003e415104041262\u003c/code\u003e\nRead-only.", - "format": "int64", + "displayName": { + "description": "The display name of the folder.", "type": "string" }, - "parent": { - "description": "An optional reference to a parent Resource.\n\nSupported parent types include \"organization\" and \"folder\". Once set, the\nparent cannot be cleared. The `parent` can be set on creation or using the\n`UpdateProject` method; the end user must have the\n`resourcemanager.projects.create` permission on the parent.\n\nRead-write.", - "$ref": "ResourceId" - }, - "createTime": { - "description": "Creation time.\n\nRead-only.", - "format": "google-datetime", - "type": "string" - }, - "labels": { - "additionalProperties": { - "type": "string" - }, - "description": "The labels associated with this Project.\n\nLabel keys must be between 1 and 63 characters long and must conform\nto the following regular expression: \\[a-z\\](\\[-a-z0-9\\]*\\[a-z0-9\\])?.\n\nLabel values must be between 0 and 63 characters long and must conform\nto the regular expression (\\[a-z\\](\\[-a-z0-9\\]*\\[a-z0-9\\])?)?.\n\nNo more than 256 labels can be associated with a given resource.\n\nClients should store labels in a representation such as JSON that does not\ndepend on specific characters being disallowed.\n\nExample: \u003ccode\u003e\"environment\" : \"dev\"\u003c/code\u003e\nRead-write.", - "type": "object" - }, - "name": { - "description": "The user-assigned display name of the Project.\nIt must be 4 to 30 characters.\nAllowed characters are: lowercase and uppercase letters, numbers,\nhyphen, single-quote, double-quote, space, and exclamation point.\n\nExample: \u003ccode\u003eMy Project\u003c/code\u003e\nRead-write.", - "type": "string" - }, - "projectId": { - "type": "string", - "description": "The unique, user-assigned ID of the Project.\nIt must be 6 to 30 lowercase letters, digits, or hyphens.\nIt must start with a letter.\nTrailing hyphens are prohibited.\n\nExample: \u003ccode\u003etokyo-rain-123\u003c/code\u003e\nRead-only after creation." - }, - "lifecycleState": { - "enumDescriptions": [ - "Unspecified state. This is only used/useful for distinguishing\nunset values.", - "The normal and active state.", - "The project has been marked for deletion by the user\n(by invoking\nDeleteProject)\nor by the system (Google Cloud Platform).\nThis can generally be reversed by invoking UndeleteProject.", - "This lifecycle state is no longer used and not returned by the API." - ], + "operationType": { + "description": "The type of this operation.", "enum": [ - "LIFECYCLE_STATE_UNSPECIFIED", - "ACTIVE", - "DELETE_REQUESTED", - "DELETE_IN_PROGRESS" + "OPERATION_TYPE_UNSPECIFIED", + "CREATE", + "MOVE" + ], + "enumDescriptions": [ + "Operation type not specified.", + "A create folder operation.", + "A move folder operation." ], - "description": "The Project lifecycle state.\n\nRead-only.", - "type": "string" - } - }, - "id": "Project" - }, - "SearchOrganizationsResponse": { - "type": "object", - "properties": { - "nextPageToken": { - "description": "A pagination token to be used to retrieve the next page of results. If the\nresult is too large to fit within the page size specified in the request,\nthis field will be set with a token that can be used to fetch the next page\nof results. If this field is empty, it indicates that this response\ncontains the last page of results.", "type": "string" }, - "organizations": { - "description": "The list of Organizations that matched the search query, possibly\npaginated.", - "type": "array", - "items": { - "$ref": "Organization" - } - } - }, - "id": "SearchOrganizationsResponse", - "description": "The response returned from the `SearchOrganizations` method." - }, - "ListOrgPoliciesResponse": { - "description": "The response returned from the ListOrgPolicies method. It will be empty\nif no `Policies` are set on the resource.", - "type": "object", - "properties": { - "policies": { - "description": "The `Policies` that are set on the resource. It will be empty if no\n`Policies` are set.", - "type": "array", - "items": { - "$ref": "OrgPolicy" - } - }, - "nextPageToken": { - "description": "Page token used to retrieve the next page. This is currently not used, but\nthe server may at any point start supplying a valid token.", + "sourceParent": { + "description": "The resource name of the folder's parent.\nOnly applicable when the operation_type is MOVE.", "type": "string" } }, - "id": "ListOrgPoliciesResponse" + "type": "object" }, "FolderOperationError": { "description": "A classification of the Folder Operation error.", - "type": "object", + "id": "FolderOperationError", "properties": { "errorMessageId": { "description": "The type of operation error experienced.", - "type": "string", + "enum": [ + "ERROR_TYPE_UNSPECIFIED", + "ACTIVE_FOLDER_HEIGHT_VIOLATION", + "MAX_CHILD_FOLDERS_VIOLATION", + "FOLDER_NAME_UNIQUENESS_VIOLATION", + "RESOURCE_DELETED_VIOLATION", + "PARENT_DELETED_VIOLATION", + "CYCLE_INTRODUCED_VIOLATION", + "FOLDER_BEING_MOVED_VIOLATION", + "FOLDER_TO_DELETE_NON_EMPTY_VIOLATION", + "DELETED_FOLDER_HEIGHT_VIOLATION" + ], "enumDescriptions": [ "The error type was unrecognized or unspecified.", "The attempted action would violate the max folder depth constraint.", @@ -1472,78 +1383,63 @@ "The folder the caller is trying to delete contains active resources.", "The attempted action would violate the max deleted folder depth\nconstraint." ], - "enum": [ - "ERROR_TYPE_UNSPECIFIED", - "ACTIVE_FOLDER_HEIGHT_VIOLATION", - "MAX_CHILD_FOLDERS_VIOLATION", - "FOLDER_NAME_UNIQUENESS_VIOLATION", - "RESOURCE_DELETED_VIOLATION", - "PARENT_DELETED_VIOLATION", - "CYCLE_INTRODUCED_VIOLATION", - "FOLDER_BEING_MOVED_VIOLATION", - "FOLDER_TO_DELETE_NON_EMPTY_VIOLATION", - "DELETED_FOLDER_HEIGHT_VIOLATION" - ] + "type": "string" } }, - "id": "FolderOperationError" + "type": "object" }, - "BooleanPolicy": { - "id": "BooleanPolicy", - "description": "Used in `policy_type` to specify how `boolean_policy` will behave at this\nresource.", - "type": "object", + "GetAncestryRequest": { + "description": "The request sent to the\nGetAncestry\nmethod.", + "id": "GetAncestryRequest", + "properties": {}, + "type": "object" + }, + "GetAncestryResponse": { + "description": "Response from the GetAncestry method.", + "id": "GetAncestryResponse", "properties": { - "enforced": { - "description": "If `true`, then the `Policy` is enforced. If `false`, then any\nconfiguration is acceptable.\n\nSuppose you have a `Constraint` `constraints/compute.disableSerialPortAccess`\nwith `constraint_default` set to `ALLOW`. A `Policy` for that\n`Constraint` exhibits the following behavior:\n - If the `Policy` at this resource has enforced set to `false`, serial\n port connection attempts will be allowed.\n - If the `Policy` at this resource has enforced set to `true`, serial\n port connection attempts will be refused.\n - If the `Policy` at this resource is `RestoreDefault`, serial port\n connection attempts will be allowed.\n - If no `Policy` is set at this resource or anywhere higher in the\n resource hierarchy, serial port connection attempts will be allowed.\n - If no `Policy` is set at this resource, but one exists higher in the\n resource hierarchy, the behavior is as if the`Policy` were set at\n this resource.\n\nThe following examples demonstrate the different possible layerings:\n\nExample 1 (nearest `Constraint` wins):\n `organizations/foo` has a `Policy` with:\n {enforced: false}\n `projects/bar` has no `Policy` set.\nThe constraint at `projects/bar` and `organizations/foo` will not be\nenforced.\n\nExample 2 (enforcement gets replaced):\n `organizations/foo` has a `Policy` with:\n {enforced: false}\n `projects/bar` has a `Policy` with:\n {enforced: true}\nThe constraint at `organizations/foo` is not enforced.\nThe constraint at `projects/bar` is enforced.\n\nExample 3 (RestoreDefault):\n `organizations/foo` has a `Policy` with:\n {enforced: true}\n `projects/bar` has a `Policy` with:\n {RestoreDefault: {}}\nThe constraint at `organizations/foo` is enforced.\nThe constraint at `projects/bar` is not enforced, because\n`constraint_default` for the `Constraint` is `ALLOW`.", - "type": "boolean" + "ancestor": { + "description": "Ancestors are ordered from bottom to top of the resource hierarchy. The\nfirst ancestor is the project itself, followed by the project's parent,\netc.", + "items": { + "$ref": "Ancestor" + }, + "type": "array" } - } + }, + "type": "object" }, - "OrgPolicy": { - "id": "OrgPolicy", - "description": "Defines a Cloud Organization `Policy` which is used to specify `Constraints`\nfor configurations of Cloud Platform resources.", - "type": "object", + "GetEffectiveOrgPolicyRequest": { + "description": "The request sent to the GetEffectiveOrgPolicy method.", + "id": "GetEffectiveOrgPolicyRequest", "properties": { - "updateTime": { - "description": "The time stamp the `Policy` was previously updated. This is set by the\nserver, not specified by the caller, and represents the last time a call to\n`SetOrgPolicy` was made for that `Policy`. Any value set by the client will\nbe ignored.", - "format": "google-datetime", - "type": "string" - }, - "version": { - "description": "Version of the `Policy`. Default version is 0;", - "format": "int32", - "type": "integer" - }, - "restoreDefault": { - "$ref": "RestoreDefault", - "description": "Restores the default behavior of the constraint; independent of\n`Constraint` type." - }, - "listPolicy": { - "$ref": "ListPolicy", - "description": "List of values either allowed or disallowed." - }, - "etag": { - "description": "An opaque tag indicating the current version of the `Policy`, used for\nconcurrency control.\n\nWhen the `Policy` is returned from either a `GetPolicy` or a\n`ListOrgPolicy` request, this `etag` indicates the version of the current\n`Policy` to use when executing a read-modify-write loop.\n\nWhen the `Policy` is returned from a `GetEffectivePolicy` request, the\n`etag` will be unset.\n\nWhen the `Policy` is used in a `SetOrgPolicy` method, use the `etag` value\nthat was returned from a `GetOrgPolicy` request as part of a\nread-modify-write loop for concurrency control. Not setting the `etag`in a\n`SetOrgPolicy` request will result in an unconditional write of the\n`Policy`.", - "format": "byte", - "type": "string" - }, "constraint": { - "description": "The name of the `Constraint` the `Policy` is configuring, for example,\n`constraints/serviceuser.services`.\n\nImmutable after creation.", + "description": "The name of the `Constraint` to compute the effective `Policy`.", "type": "string" - }, - "booleanPolicy": { - "$ref": "BooleanPolicy", - "description": "For boolean `Constraints`, whether to enforce the `Constraint` or not." } - } + }, + "type": "object" + }, + "GetIamPolicyRequest": { + "description": "Request message for `GetIamPolicy` method.", + "id": "GetIamPolicyRequest", + "properties": {}, + "type": "object" + }, + "GetOrgPolicyRequest": { + "description": "The request sent to the GetOrgPolicy method.", + "id": "GetOrgPolicyRequest", + "properties": { + "constraint": { + "description": "Name of the `Constraint` to get the `Policy`.", + "type": "string" + } + }, + "type": "object" }, "Lien": { - "type": "object", + "description": "A Lien represents an encumbrance on the actions that can be performed on a\nresource.", + "id": "Lien", "properties": { - "parent": { - "description": "A reference to the resource this Lien is attached to. The server will\nvalidate the parent against those for which Liens are supported.\n\nExample: `projects/1234`", - "type": "string" - }, "createTime": { "description": "The creation time of this Lien.", "format": "google-datetime", @@ -1553,410 +1449,193 @@ "description": "A system-generated unique identifier for this Lien.\n\nExample: `liens/1234abcd`", "type": "string" }, - "reason": { - "description": "Concise user-visible strings indicating why an action cannot be performed\non a resource. Maximum lenth of 200 characters.\n\nExample: 'Holds production API key'", - "type": "string" - }, "origin": { "description": "A stable, user-visible/meaningful string identifying the origin of the\nLien, intended to be inspected programmatically. Maximum length of 200\ncharacters.\n\nExample: 'compute.googleapis.com'", "type": "string" }, + "parent": { + "description": "A reference to the resource this Lien is attached to. The server will\nvalidate the parent against those for which Liens are supported.\n\nExample: `projects/1234`", + "type": "string" + }, + "reason": { + "description": "Concise user-visible strings indicating why an action cannot be performed\non a resource. Maximum lenth of 200 characters.\n\nExample: 'Holds production API key'", + "type": "string" + }, "restrictions": { "description": "The types of operations which should be blocked as a result of this Lien.\nEach value should correspond to an IAM permission. The server will\nvalidate the permissions against those for which Liens are supported.\n\nAn empty list is meaningless and will be rejected.\n\nExample: ['resourcemanager.projects.delete']", - "type": "array", "items": { "type": "string" - } + }, + "type": "array" } }, - "id": "Lien", - "description": "A Lien represents an encumbrance on the actions that can be performed on a\nresource." - }, - "Ancestor": { - "properties": { - "resourceId": { - "$ref": "ResourceId", - "description": "Resource id of the ancestor." - } - }, - "id": "Ancestor", - "description": "Identifying information for a single ancestor of a project.", "type": "object" }, - "ListConstraint": { - "type": "object", + "ListAvailableOrgPolicyConstraintsRequest": { + "description": "The request sent to the [ListAvailableOrgPolicyConstraints]\ngoogle.cloud.OrgPolicy.v1.ListAvailableOrgPolicyConstraints] method.", + "id": "ListAvailableOrgPolicyConstraintsRequest", "properties": { - "suggestedValue": { - "description": "Optional. The Google Cloud Console will try to default to a configuration\nthat matches the value specified in this `Constraint`.", + "pageSize": { + "description": "Size of the pages to be returned. This is currently unsupported and will\nbe ignored. The server may at any point start using this field to limit\npage size.", + "format": "int32", + "type": "integer" + }, + "pageToken": { + "description": "Page token used to retrieve the next page. This is currently unsupported\nand will be ignored. The server may at any point start using this field.", "type": "string" } }, - "id": "ListConstraint", - "description": "A `Constraint` that allows or disallows a list of string values, which are\nconfigured by an Organization's policy administrator with a `Policy`." - }, - "SetOrgPolicyRequest": { - "description": "The request sent to the SetOrgPolicyRequest method.", - "type": "object", - "properties": { - "policy": { - "description": "`Policy` to set on the resource.", - "$ref": "OrgPolicy" - } - }, - "id": "SetOrgPolicyRequest" - }, - "SetIamPolicyRequest": { - "properties": { - "policy": { - "description": "REQUIRED: The complete policy to be applied to the `resource`. The size of\nthe policy is limited to a few 10s of KB. An empty policy is a\nvalid policy but certain Cloud Platform services (such as Projects)\nmight reject them.", - "$ref": "Policy" - }, - "updateMask": { - "type": "string", - "description": "OPTIONAL: A FieldMask specifying which fields of the policy to modify. Only\nthe fields in the mask will be modified. If no mask is provided, the\nfollowing default mask is used:\npaths: \"bindings, etag\"\nThis field is only used by Cloud IAM.", - "format": "google-fieldmask" - } - }, - "id": "SetIamPolicyRequest", - "description": "Request message for `SetIamPolicy` method.", "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 `{}`.", - "type": "object", - "properties": {}, - "id": "Empty" - }, - "Organization": { - "id": "Organization", - "description": "The root node in the resource hierarchy to which a particular entity's\n(e.g., company) resources belong.", - "type": "object", - "properties": { - "creationTime": { - "description": "Timestamp when the Organization was created. Assigned by the server.\n@OutputOnly", - "format": "google-datetime", - "type": "string" - }, - "owner": { - "$ref": "OrganizationOwner", - "description": "The owner of this Organization. The owner should be specified on\ncreation. Once set, it cannot be changed.\nThis field is required." - }, - "lifecycleState": { - "enumDescriptions": [ - "Unspecified state. This is only useful for distinguishing unset values.", - "The normal and active state.", - "The organization has been marked for deletion by the user." - ], - "enum": [ - "LIFECYCLE_STATE_UNSPECIFIED", - "ACTIVE", - "DELETE_REQUESTED" - ], - "description": "The organization's current lifecycle state. Assigned by the server.\n@OutputOnly", - "type": "string" - }, - "name": { - "description": "Output Only. The resource name of the organization. This is the\norganization's relative path in the API. Its format is\n\"organizations/[organization_id]\". For example, \"organizations/1234\".", - "type": "string" - }, - "displayName": { - "description": "A friendly string to be used to refer to the Organization in the UI.\nAssigned by the server, set to the primary domain of the G Suite\ncustomer that owns the organization.\n@OutputOnly", - "type": "string" - } - } - }, "ListAvailableOrgPolicyConstraintsResponse": { "description": "The response returned from the ListAvailableOrgPolicyConstraints method.\nReturns all `Constraints` that could be set at this level of the hierarchy\n(contrast with the response from `ListPolicies`, which returns all policies\nwhich are set).", - "type": "object", + "id": "ListAvailableOrgPolicyConstraintsResponse", "properties": { "constraints": { "description": "The collection of constraints that are settable on the request resource.", - "type": "array", "items": { "$ref": "Constraint" - } + }, + "type": "array" }, "nextPageToken": { "description": "Page token used to retrieve the next page. This is currently not used.", "type": "string" } }, - "id": "ListAvailableOrgPolicyConstraintsResponse" + "type": "object" + }, + "ListConstraint": { + "description": "A `Constraint` that allows or disallows a list of string values, which are\nconfigured by an Organization's policy administrator with a `Policy`.", + "id": "ListConstraint", + "properties": { + "suggestedValue": { + "description": "Optional. The Google Cloud Console will try to default to a configuration\nthat matches the value specified in this `Constraint`.", + "type": "string" + } + }, + "type": "object" + }, + "ListLiensResponse": { + "description": "The response message for Liens.ListLiens.", + "id": "ListLiensResponse", + "properties": { + "liens": { + "description": "A list of Liens.", + "items": { + "$ref": "Lien" + }, + "type": "array" + }, + "nextPageToken": { + "description": "Token to retrieve the next page of results, or empty if there are no more\nresults in the list.", + "type": "string" + } + }, + "type": "object" + }, + "ListOrgPoliciesRequest": { + "description": "The request sent to the ListOrgPolicies method.", + "id": "ListOrgPoliciesRequest", + "properties": { + "pageSize": { + "description": "Size of the pages to be returned. This is currently unsupported and will\nbe ignored. The server may at any point start using this field to limit\npage size.", + "format": "int32", + "type": "integer" + }, + "pageToken": { + "description": "Page token used to retrieve the next page. This is currently unsupported\nand will be ignored. The server may at any point start using this field.", + "type": "string" + } + }, + "type": "object" + }, + "ListOrgPoliciesResponse": { + "description": "The response returned from the ListOrgPolicies method. It will be empty\nif no `Policies` are set on the resource.", + "id": "ListOrgPoliciesResponse", + "properties": { + "nextPageToken": { + "description": "Page token used to retrieve the next page. This is currently not used, but\nthe server may at any point start supplying a valid token.", + "type": "string" + }, + "policies": { + "description": "The `Policies` that are set on the resource. It will be empty if no\n`Policies` are set.", + "items": { + "$ref": "OrgPolicy" + }, + "type": "array" + } + }, + "type": "object" }, "ListPolicy": { "description": "Used in `policy_type` to specify how `list_policy` behaves at this\nresource.\n\nA `ListPolicy` can define specific values that are allowed or denied by\nsetting either the `allowed_values` or `denied_values` fields. It can also\nbe used to allow or deny all values, by setting the `all_values` field. If\n`all_values` is `ALL_VALUES_UNSPECIFIED`, exactly one of `allowed_values`\nor `denied_values` must be set (attempting to set both or neither will\nresult in a failed request). If `all_values` is set to either `ALLOW` or\n`DENY`, `allowed_values` and `denied_values` must be unset.", - "type": "object", + "id": "ListPolicy", "properties": { - "deniedValues": { - "description": "List of values denied at this resource. Can only be set if no values are\nset for `allowed_values` and `all_values` is set to\n`ALL_VALUES_UNSPECIFIED`.", - "type": "array", - "items": { - "type": "string" - } - }, "allValues": { + "description": "The policy all_values state.", "enum": [ "ALL_VALUES_UNSPECIFIED", "ALLOW", "DENY" ], - "description": "The policy all_values state.", - "type": "string", "enumDescriptions": [ "Indicates that either allowed_values or denied_values must be set.", "A policy with this set allows all values.", "A policy with this set denies all values." - ] + ], + "type": "string" }, "allowedValues": { "description": "List of values allowed at this resource. Can only be set if no values\nare set for `denied_values` and `all_values` is set to\n`ALL_VALUES_UNSPECIFIED`.", - "type": "array", "items": { "type": "string" - } + }, + "type": "array" + }, + "deniedValues": { + "description": "List of values denied at this resource. Can only be set if no values are\nset for `allowed_values` and `all_values` is set to\n`ALL_VALUES_UNSPECIFIED`.", + "items": { + "type": "string" + }, + "type": "array" + }, + "inheritFromParent": { + "description": "Determines the inheritance behavior for this `Policy`.\n\nBy default, a `ListPolicy` set at a resource supercedes any `Policy` set\nanywhere up the resource hierarchy. However, if `inherit_from_parent` is\nset to `true`, then the values from the effective `Policy` of the parent\nresource are inherited, meaning the values set in this `Policy` are\nadded to the values inherited up the hierarchy.\n\nSetting `Policy` hierarchies that inherit both allowed values and denied\nvalues isn't recommended in most circumstances to keep the configuration\nsimple and understandable. However, it is possible to set a `Policy` with\n`allowed_values` set that inherits a `Policy` with `denied_values` set.\nIn this case, the values that are allowed must be in `allowed_values` and\nnot present in `denied_values`.\n\nFor example, suppose you have a `Constraint`\n`constraints/serviceuser.services`, which has a `constraint_type` of\n`list_constraint`, and with `constraint_default` set to `ALLOW`.\nSuppose that at the Organization level, a `Policy` is applied that\nrestricts the allowed API activations to {`E1`, `E2`}. Then, if a\n`Policy` is applied to a project below the Organization that has\n`inherit_from_parent` set to `false` and field all_values set to DENY,\nthen an attempt to activate any API will be denied.\n\nThe following examples demonstrate different possible layerings:\n\nExample 1 (no inherited values):\n `organizations/foo` has a `Policy` with values:\n {allowed_values: “E1” allowed_values:”E2”}\n ``projects/bar`` has `inherit_from_parent` `false` and values:\n {allowed_values: \"E3\" allowed_values: \"E4\"}\nThe accepted values at `organizations/foo` are `E1`, `E2`.\nThe accepted values at `projects/bar` are `E3`, and `E4`.\n\nExample 2 (inherited values):\n `organizations/foo` has a `Policy` with values:\n {allowed_values: “E1” allowed_values:”E2”}\n `projects/bar` has a `Policy` with values:\n {value: “E3” value: ”E4” inherit_from_parent: true}\nThe accepted values at `organizations/foo` are `E1`, `E2`.\nThe accepted values at `projects/bar` are `E1`, `E2`, `E3`, and `E4`.\n\nExample 3 (inheriting both allowed and denied values):\n `organizations/foo` has a `Policy` with values:\n {allowed_values: \"E1\" allowed_values: \"E2\"}\n `projects/bar` has a `Policy` with:\n {denied_values: \"E1\"}\nThe accepted values at `organizations/foo` are `E1`, `E2`.\nThe value accepted at `projects/bar` is `E2`.\n\nExample 4 (RestoreDefault):\n `organizations/foo` has a `Policy` with values:\n {allowed_values: “E1” allowed_values:”E2”}\n `projects/bar` has a `Policy` with values:\n {RestoreDefault: {}}\nThe accepted values at `organizations/foo` are `E1`, `E2`.\nThe accepted values at `projects/bar` are either all or none depending on\nthe value of `constraint_default` (if `ALLOW`, all; if\n`DENY`, none).\n\nExample 5 (no policy inherits parent policy):\n `organizations/foo` has no `Policy` set.\n `projects/bar` has no `Policy` set.\nThe accepted values at both levels are either all or none depending on\nthe value of `constraint_default` (if `ALLOW`, all; if\n`DENY`, none).\n\nExample 6 (ListConstraint allowing all):\n `organizations/foo` has a `Policy` with values:\n {allowed_values: “E1” allowed_values: ”E2”}\n `projects/bar` has a `Policy` with:\n {all: ALLOW}\nThe accepted values at `organizations/foo` are `E1`, E2`.\nAny value is accepted at `projects/bar`.\n\nExample 7 (ListConstraint allowing none):\n `organizations/foo` has a `Policy` with values:\n {allowed_values: “E1” allowed_values: ”E2”}\n `projects/bar` has a `Policy` with:\n {all: DENY}\nThe accepted values at `organizations/foo` are `E1`, E2`.\nNo value is accepted at `projects/bar`.", + "type": "boolean" }, "suggestedValue": { "description": "Optional. The Google Cloud Console will try to default to a configuration\nthat matches the value specified in this `Policy`. If `suggested_value`\nis not set, it will inherit the value specified higher in the hierarchy,\nunless `inherit_from_parent` is `false`.", "type": "string" - }, - "inheritFromParent": { - "type": "boolean", - "description": "Determines the inheritance behavior for this `Policy`.\n\nBy default, a `ListPolicy` set at a resource supercedes any `Policy` set\nanywhere up the resource hierarchy. However, if `inherit_from_parent` is\nset to `true`, then the values from the effective `Policy` of the parent\nresource are inherited, meaning the values set in this `Policy` are\nadded to the values inherited up the hierarchy.\n\nSetting `Policy` hierarchies that inherit both allowed values and denied\nvalues isn't recommended in most circumstances to keep the configuration\nsimple and understandable. However, it is possible to set a `Policy` with\n`allowed_values` set that inherits a `Policy` with `denied_values` set.\nIn this case, the values that are allowed must be in `allowed_values` and\nnot present in `denied_values`.\n\nFor example, suppose you have a `Constraint`\n`constraints/serviceuser.services`, which has a `constraint_type` of\n`list_constraint`, and with `constraint_default` set to `ALLOW`.\nSuppose that at the Organization level, a `Policy` is applied that\nrestricts the allowed API activations to {`E1`, `E2`}. Then, if a\n`Policy` is applied to a project below the Organization that has\n`inherit_from_parent` set to `false` and field all_values set to DENY,\nthen an attempt to activate any API will be denied.\n\nThe following examples demonstrate different possible layerings:\n\nExample 1 (no inherited values):\n `organizations/foo` has a `Policy` with values:\n {allowed_values: “E1” allowed_values:”E2”}\n ``projects/bar`` has `inherit_from_parent` `false` and values:\n {allowed_values: \"E3\" allowed_values: \"E4\"}\nThe accepted values at `organizations/foo` are `E1`, `E2`.\nThe accepted values at `projects/bar` are `E3`, and `E4`.\n\nExample 2 (inherited values):\n `organizations/foo` has a `Policy` with values:\n {allowed_values: “E1” allowed_values:”E2”}\n `projects/bar` has a `Policy` with values:\n {value: “E3” value: ”E4” inherit_from_parent: true}\nThe accepted values at `organizations/foo` are `E1`, `E2`.\nThe accepted values at `projects/bar` are `E1`, `E2`, `E3`, and `E4`.\n\nExample 3 (inheriting both allowed and denied values):\n `organizations/foo` has a `Policy` with values:\n {allowed_values: \"E1\" allowed_values: \"E2\"}\n `projects/bar` has a `Policy` with:\n {denied_values: \"E1\"}\nThe accepted values at `organizations/foo` are `E1`, `E2`.\nThe value accepted at `projects/bar` is `E2`.\n\nExample 4 (RestoreDefault):\n `organizations/foo` has a `Policy` with values:\n {allowed_values: “E1” allowed_values:”E2”}\n `projects/bar` has a `Policy` with values:\n {RestoreDefault: {}}\nThe accepted values at `organizations/foo` are `E1`, `E2`.\nThe accepted values at `projects/bar` are either all or none depending on\nthe value of `constraint_default` (if `ALLOW`, all; if\n`DENY`, none).\n\nExample 5 (no policy inherits parent policy):\n `organizations/foo` has no `Policy` set.\n `projects/bar` has no `Policy` set.\nThe accepted values at both levels are either all or none depending on\nthe value of `constraint_default` (if `ALLOW`, all; if\n`DENY`, none).\n\nExample 6 (ListConstraint allowing all):\n `organizations/foo` has a `Policy` with values:\n {allowed_values: “E1” allowed_values: ”E2”}\n `projects/bar` has a `Policy` with:\n {all: ALLOW}\nThe accepted values at `organizations/foo` are `E1`, E2`.\nAny value is accepted at `projects/bar`.\n\nExample 7 (ListConstraint allowing none):\n `organizations/foo` has a `Policy` with values:\n {allowed_values: “E1” allowed_values: ”E2”}\n `projects/bar` has a `Policy` with:\n {all: DENY}\nThe accepted values at `organizations/foo` are `E1`, E2`.\nNo value is accepted at `projects/bar`." } }, - "id": "ListPolicy" - }, - "GetAncestryResponse": { - "description": "Response from the GetAncestry method.", - "type": "object", - "properties": { - "ancestor": { - "description": "Ancestors are ordered from bottom to top of the resource hierarchy. The\nfirst ancestor is the project itself, followed by the project's parent,\netc.", - "type": "array", - "items": { - "$ref": "Ancestor" - } - } - }, - "id": "GetAncestryResponse" - }, - "AuditLogConfig": { - "description": "Provides the configuration for logging a type of permissions.\nExample:\n\n {\n \"audit_log_configs\": [\n {\n \"log_type\": \"DATA_READ\",\n \"exempted_members\": [\n \"user:foo@gmail.com\"\n ]\n },\n {\n \"log_type\": \"DATA_WRITE\",\n }\n ]\n }\n\nThis enables 'DATA_READ' and 'DATA_WRITE' logging, while exempting\nfoo@gmail.com from DATA_READ logging.", - "type": "object", - "properties": { - "logType": { - "enumDescriptions": [ - "Default case. Should never be this.", - "Admin reads. Example: CloudIAM getIamPolicy", - "Data writes. Example: CloudSQL Users create", - "Data reads. Example: CloudSQL Users list" - ], - "enum": [ - "LOG_TYPE_UNSPECIFIED", - "ADMIN_READ", - "DATA_WRITE", - "DATA_READ" - ], - "description": "The log type that this config enables.", - "type": "string" - }, - "exemptedMembers": { - "description": "Specifies the identities that do not cause logging for this type of\npermission.\nFollows the same format of Binding.members.", - "type": "array", - "items": { - "type": "string" - } - } - }, - "id": "AuditLogConfig" - }, - "SearchOrganizationsRequest": { - "description": "The request sent to the `SearchOrganizations` method.", - "type": "object", - "properties": { - "filter": { - "description": "An optional query string used to filter the Organizations to return in\nthe response. Filter rules are case-insensitive.\n\n\nOrganizations may be filtered by `owner.directoryCustomerId` or by\n`domain`, where the domain is a Google for Work domain, for example:\n\n|Filter|Description|\n|------|-----------|\n|owner.directorycustomerid:123456789|Organizations with\n`owner.directory_customer_id` equal to `123456789`.|\n|domain:google.com|Organizations corresponding to the domain `google.com`.|\n\nThis field is optional.", - "type": "string" - }, - "pageToken": { - "description": "A pagination token returned from a previous call to `SearchOrganizations`\nthat indicates from where listing should continue.\nThis field is optional.", - "type": "string" - }, - "pageSize": { - "description": "The maximum number of Organizations to return in the response.\nThis field is optional.", - "format": "int32", - "type": "integer" - } - }, - "id": "SearchOrganizationsRequest" - }, - "GetAncestryRequest": { - "properties": {}, - "id": "GetAncestryRequest", - "description": "The request sent to the\nGetAncestry\nmethod.", "type": "object" }, - "TestIamPermissionsRequest": { - "description": "Request message for `TestIamPermissions` method.", - "type": "object", + "ListProjectsResponse": { + "description": "A page of the response received from the\nListProjects\nmethod.\n\nA paginated response where more pages are available has\n`next_page_token` set. This token can be used in a subsequent request to\nretrieve the next request page.", + "id": "ListProjectsResponse", "properties": { - "permissions": { - "description": "The set of permissions to check for the `resource`. Permissions with\nwildcards (such as '*' or 'storage.*') are not allowed. For more\ninformation see\n[IAM Overview](https://cloud.google.com/iam/docs/overview#permissions).", - "type": "array", - "items": { - "type": "string" - } - } - }, - "id": "TestIamPermissionsRequest" - }, - "Policy": { - "description": "Defines an Identity and Access Management (IAM) policy. It is used to\nspecify access control policies for Cloud Platform resources.\n\n\nA `Policy` consists of a list of `bindings`. A `Binding` binds a list of\n`members` to a `role`, where the members can be user accounts, Google groups,\nGoogle domains, and service accounts. A `role` is a named list of permissions\ndefined by IAM.\n\n**Example**\n\n {\n \"bindings\": [\n {\n \"role\": \"roles/owner\",\n \"members\": [\n \"user:mike@example.com\",\n \"group:admins@example.com\",\n \"domain:google.com\",\n \"serviceAccount:my-other-app@appspot.gserviceaccount.com\",\n ]\n },\n {\n \"role\": \"roles/viewer\",\n \"members\": [\"user:sean@example.com\"]\n }\n ]\n }\n\nFor a description of IAM and its features, see the\n[IAM developer's guide](https://cloud.google.com/iam/docs).", - "type": "object", - "properties": { - "etag": { - "description": "`etag` is used for optimistic concurrency control as a way to help\nprevent simultaneous updates of a policy from overwriting each other.\nIt is strongly suggested that systems make use of the `etag` in the\nread-modify-write cycle to perform policy updates in order to avoid race\nconditions: An `etag` is returned in the response to `getIamPolicy`, and\nsystems are expected to put that etag in the request to `setIamPolicy` to\nensure that their change will be applied to the same version of the policy.\n\nIf no `etag` is provided in the call to `setIamPolicy`, then the existing\npolicy is overwritten blindly.", - "format": "byte", + "nextPageToken": { + "description": "Pagination token.\n\nIf the result set is too large to fit in a single response, this token\nis returned. It encodes the position of the current result cursor.\nFeeding this value into a new list request with the `page_token` parameter\ngives the next page of the results.\n\nWhen `next_page_token` is not filled in, there is no next page and\nthe list returned is the last page in the result set.\n\nPagination tokens have a limited lifetime.", "type": "string" }, - "version": { - "description": "Deprecated.", - "format": "int32", - "type": "integer" - }, - "auditConfigs": { - "description": "Specifies cloud audit logging configuration for this policy.", - "type": "array", + "projects": { + "description": "The list of Projects that matched the list filter. This list can\nbe paginated.", "items": { - "$ref": "AuditConfig" - } - }, - "bindings": { - "type": "array", - "items": { - "$ref": "Binding" + "$ref": "Project" }, - "description": "Associates a list of `members` to a `role`.\n`bindings` with no members will result in an error." + "type": "array" } }, - "id": "Policy" - }, - "FolderOperation": { - "description": "Metadata describing a long running folder operation", - "type": "object", - "properties": { - "operationType": { - "enum": [ - "OPERATION_TYPE_UNSPECIFIED", - "CREATE", - "MOVE" - ], - "description": "The type of this operation.", - "type": "string", - "enumDescriptions": [ - "Operation type not specified.", - "A create folder operation.", - "A move folder operation." - ] - }, - "displayName": { - "description": "The display name of the folder.", - "type": "string" - }, - "sourceParent": { - "description": "The resource name of the folder's parent.\nOnly applicable when the operation_type is MOVE.", - "type": "string" - }, - "destinationParent": { - "description": "The resource name of the folder or organization we are either creating\nthe folder under or moving the folder to.", - "type": "string" - } - }, - "id": "FolderOperation" - }, - "ListAvailableOrgPolicyConstraintsRequest": { - "id": "ListAvailableOrgPolicyConstraintsRequest", - "description": "The request sent to the [ListAvailableOrgPolicyConstraints]\ngoogle.cloud.OrgPolicy.v1.ListAvailableOrgPolicyConstraints] method.", - "type": "object", - "properties": { - "pageToken": { - "description": "Page token used to retrieve the next page. This is currently unsupported\nand will be ignored. The server may at any point start using this field.", - "type": "string" - }, - "pageSize": { - "description": "Size of the pages to be returned. This is currently unsupported and will\nbe ignored. The server may at any point start using this field to limit\npage size.", - "format": "int32", - "type": "integer" - } - } - }, - "ResourceId": { - "description": "A container to reference an id for any resource type. A `resource` in Google\nCloud Platform is a generic term for something you (a developer) may want to\ninteract with through one of our API's. Some examples are an App Engine app,\na Compute Engine instance, a Cloud SQL database, and so on.", - "type": "object", - "properties": { - "type": { - "description": "Required field representing the resource type this id is for.\nAt present, the valid types are: \"organization\"", - "type": "string" - }, - "id": { - "description": "Required field for the type-specific id. This should correspond to the id\nused in the type-specific API's.", - "type": "string" - } - }, - "id": "ResourceId" - }, - "GetEffectiveOrgPolicyRequest": { - "type": "object", - "properties": { - "constraint": { - "description": "The name of the `Constraint` to compute the effective `Policy`.", - "type": "string" - } - }, - "id": "GetEffectiveOrgPolicyRequest", - "description": "The request sent to the GetEffectiveOrgPolicy method." - }, - "ListOrgPoliciesRequest": { - "description": "The request sent to the ListOrgPolicies method.", - "type": "object", - "properties": { - "pageToken": { - "description": "Page token used to retrieve the next page. This is currently unsupported\nand will be ignored. The server may at any point start using this field.", - "type": "string" - }, - "pageSize": { - "description": "Size of the pages to be returned. This is currently unsupported and will\nbe ignored. The server may at any point start using this field to limit\npage size.", - "format": "int32", - "type": "integer" - } - }, - "id": "ListOrgPoliciesRequest" - }, - "AuditConfig": { - "type": "object", - "properties": { - "service": { - "type": "string", - "description": "Specifies a service that will be enabled for audit logging.\nFor example, `storage.googleapis.com`, `cloudsql.googleapis.com`.\n`allServices` is a special value that covers all services." - }, - "auditLogConfigs": { - "description": "The configuration for logging of each type of permission.\nNext ID: 4", - "type": "array", - "items": { - "$ref": "AuditLogConfig" - } - } - }, - "id": "AuditConfig", - "description": "Specifies the audit configuration for a service.\nThe configuration determines which permission types are logged, and what\nidentities, if any, are exempted from logging.\nAn AuditConfig must have one or more AuditLogConfigs.\n\nIf there are AuditConfigs for both `allServices` and a specific service,\nthe union of the two AuditConfigs is used for that service: the log_types\nspecified in each AuditConfig are enabled, and the exempted_members in each\nAuditConfig are exempted.\n\nExample Policy with multiple AuditConfigs:\n\n {\n \"audit_configs\": [\n {\n \"service\": \"allServices\"\n \"audit_log_configs\": [\n {\n \"log_type\": \"DATA_READ\",\n \"exempted_members\": [\n \"user:foo@gmail.com\"\n ]\n },\n {\n \"log_type\": \"DATA_WRITE\",\n },\n {\n \"log_type\": \"ADMIN_READ\",\n }\n ]\n },\n {\n \"service\": \"fooservice.googleapis.com\"\n \"audit_log_configs\": [\n {\n \"log_type\": \"DATA_READ\",\n },\n {\n \"log_type\": \"DATA_WRITE\",\n \"exempted_members\": [\n \"user:bar@gmail.com\"\n ]\n }\n ]\n }\n ]\n }\n\nFor fooservice, this policy enables DATA_READ, DATA_WRITE and ADMIN_READ\nlogging. It also exempts foo@gmail.com from DATA_READ logging, and\nbar@gmail.com from DATA_WRITE logging." + "type": "object" }, "Operation": { "description": "This resource represents a long-running operation that is the result of a\nnetwork API call.", - "type": "object", + "id": "Operation", "properties": { - "name": { - "description": "The server-assigned name, which is only unique within the same service that\noriginally returns it. If you use the default HTTP mapping, the\n`name` should have the format of `operations/some/unique/name`.", - "type": "string" + "done": { + "description": "If the value is `false`, it means the operation is still in progress.\nIf `true`, the operation is completed, and either `error` or `response` is\navailable.", + "type": "boolean" }, "error": { "$ref": "Status", @@ -1970,39 +1649,360 @@ "description": "Service-specific metadata associated with the operation. It typically\ncontains progress information and common metadata such as create time.\nSome services might not provide such metadata. Any method that returns a\nlong-running operation should document the metadata type, if any.", "type": "object" }, - "done": { - "description": "If the value is `false`, it means the operation is still in progress.\nIf `true`, the operation is completed, and either `error` or `response` is\navailable.", - "type": "boolean" + "name": { + "description": "The server-assigned name, which is only unique within the same service that\noriginally returns it. If you use the default HTTP mapping, the\n`name` should have the format of `operations/some/unique/name`.", + "type": "string" }, "response": { "additionalProperties": { - "type": "any", - "description": "Properties of the object. Contains field @type with type URL." + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" }, "description": "The normal response of the operation in case of success. If the original\nmethod returns no data on success, such as `Delete`, the response is\n`google.protobuf.Empty`. If the original method is standard\n`Get`/`Create`/`Update`, the response should be the resource. For other\nmethods, the response should have the type `XxxResponse`, where `Xxx`\nis the original method name. For example, if the original method name\nis `TakeSnapshot()`, the inferred response type is\n`TakeSnapshotResponse`.", "type": "object" } }, - "id": "Operation" - } - }, - "protocol": "rest", - "icons": { - "x16": "http://www.google.com/images/icons/product/search-16.gif", - "x32": "http://www.google.com/images/icons/product/search-32.gif" - }, - "canonicalName": "Cloud Resource Manager", - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/cloud-platform.read-only": { - "description": "View your data across Google Cloud Platform services" + "type": "object" + }, + "OrgPolicy": { + "description": "Defines a Cloud Organization `Policy` which is used to specify `Constraints`\nfor configurations of Cloud Platform resources.", + "id": "OrgPolicy", + "properties": { + "booleanPolicy": { + "$ref": "BooleanPolicy", + "description": "For boolean `Constraints`, whether to enforce the `Constraint` or not." }, - "https://www.googleapis.com/auth/cloud-platform": { - "description": "View and manage your data across Google Cloud Platform services" + "constraint": { + "description": "The name of the `Constraint` the `Policy` is configuring, for example,\n`constraints/serviceuser.services`.\n\nImmutable after creation.", + "type": "string" + }, + "etag": { + "description": "An opaque tag indicating the current version of the `Policy`, used for\nconcurrency control.\n\nWhen the `Policy` is returned from either a `GetPolicy` or a\n`ListOrgPolicy` request, this `etag` indicates the version of the current\n`Policy` to use when executing a read-modify-write loop.\n\nWhen the `Policy` is returned from a `GetEffectivePolicy` request, the\n`etag` will be unset.\n\nWhen the `Policy` is used in a `SetOrgPolicy` method, use the `etag` value\nthat was returned from a `GetOrgPolicy` request as part of a\nread-modify-write loop for concurrency control. Not setting the `etag`in a\n`SetOrgPolicy` request will result in an unconditional write of the\n`Policy`.", + "format": "byte", + "type": "string" + }, + "listPolicy": { + "$ref": "ListPolicy", + "description": "List of values either allowed or disallowed." + }, + "restoreDefault": { + "$ref": "RestoreDefault", + "description": "Restores the default behavior of the constraint; independent of\n`Constraint` type." + }, + "updateTime": { + "description": "The time stamp the `Policy` was previously updated. This is set by the\nserver, not specified by the caller, and represents the last time a call to\n`SetOrgPolicy` was made for that `Policy`. Any value set by the client will\nbe ignored.", + "format": "google-datetime", + "type": "string" + }, + "version": { + "description": "Version of the `Policy`. Default version is 0;", + "format": "int32", + "type": "integer" } - } + }, + "type": "object" + }, + "Organization": { + "description": "The root node in the resource hierarchy to which a particular entity's\n(e.g., company) resources belong.", + "id": "Organization", + "properties": { + "creationTime": { + "description": "Timestamp when the Organization was created. Assigned by the server.\n@OutputOnly", + "format": "google-datetime", + "type": "string" + }, + "displayName": { + "description": "A human-readable string that refers to the Organization in the\nGCP Console UI. This string is set by the server and cannot be\nchanged. The string will be set to the primary domain (for example,\n\"google.com\") of the G Suite customer that owns the organization.\n@OutputOnly", + "type": "string" + }, + "lifecycleState": { + "description": "The organization's current lifecycle state. Assigned by the server.\n@OutputOnly", + "enum": [ + "LIFECYCLE_STATE_UNSPECIFIED", + "ACTIVE", + "DELETE_REQUESTED" + ], + "enumDescriptions": [ + "Unspecified state. This is only useful for distinguishing unset values.", + "The normal and active state.", + "The organization has been marked for deletion by the user." + ], + "type": "string" + }, + "name": { + "description": "Output Only. The resource name of the organization. This is the\norganization's relative path in the API. Its format is\n\"organizations/[organization_id]\". For example, \"organizations/1234\".", + "type": "string" + }, + "owner": { + "$ref": "OrganizationOwner", + "description": "The owner of this Organization. The owner should be specified on\ncreation. Once set, it cannot be changed.\nThis field is required." + } + }, + "type": "object" + }, + "OrganizationOwner": { + "description": "The entity that owns an Organization. The lifetime of the Organization and\nall of its descendants are bound to the `OrganizationOwner`. If the\n`OrganizationOwner` is deleted, the Organization and all its descendants will\nbe deleted.", + "id": "OrganizationOwner", + "properties": { + "directoryCustomerId": { + "description": "The G Suite customer id used in the Directory API.", + "type": "string" + } + }, + "type": "object" + }, + "Policy": { + "description": "Defines an Identity and Access Management (IAM) policy. It is used to\nspecify access control policies for Cloud Platform resources.\n\n\nA `Policy` consists of a list of `bindings`. A `Binding` binds a list of\n`members` to a `role`, where the members can be user accounts, Google groups,\nGoogle domains, and service accounts. A `role` is a named list of permissions\ndefined by IAM.\n\n**Example**\n\n {\n \"bindings\": [\n {\n \"role\": \"roles/owner\",\n \"members\": [\n \"user:mike@example.com\",\n \"group:admins@example.com\",\n \"domain:google.com\",\n \"serviceAccount:my-other-app@appspot.gserviceaccount.com\",\n ]\n },\n {\n \"role\": \"roles/viewer\",\n \"members\": [\"user:sean@example.com\"]\n }\n ]\n }\n\nFor a description of IAM and its features, see the\n[IAM developer's guide](https://cloud.google.com/iam/docs).", + "id": "Policy", + "properties": { + "auditConfigs": { + "description": "Specifies cloud audit logging configuration for this policy.", + "items": { + "$ref": "AuditConfig" + }, + "type": "array" + }, + "bindings": { + "description": "Associates a list of `members` to a `role`.\n`bindings` with no members will result in an error.", + "items": { + "$ref": "Binding" + }, + "type": "array" + }, + "etag": { + "description": "`etag` is used for optimistic concurrency control as a way to help\nprevent simultaneous updates of a policy from overwriting each other.\nIt is strongly suggested that systems make use of the `etag` in the\nread-modify-write cycle to perform policy updates in order to avoid race\nconditions: An `etag` is returned in the response to `getIamPolicy`, and\nsystems are expected to put that etag in the request to `setIamPolicy` to\nensure that their change will be applied to the same version of the policy.\n\nIf no `etag` is provided in the call to `setIamPolicy`, then the existing\npolicy is overwritten blindly.", + "format": "byte", + "type": "string" + }, + "version": { + "description": "Deprecated.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "Project": { + "description": "A Project is a high-level Google Cloud Platform entity. It is a\ncontainer for ACLs, APIs, App Engine Apps, VMs, and other\nGoogle Cloud Platform resources.", + "id": "Project", + "properties": { + "createTime": { + "description": "Creation time.\n\nRead-only.", + "format": "google-datetime", + "type": "string" + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "The labels associated with this Project.\n\nLabel keys must be between 1 and 63 characters long and must conform\nto the following regular expression: \\[a-z\\](\\[-a-z0-9\\]*\\[a-z0-9\\])?.\n\nLabel values must be between 0 and 63 characters long and must conform\nto the regular expression (\\[a-z\\](\\[-a-z0-9\\]*\\[a-z0-9\\])?)?.\n\nNo more than 256 labels can be associated with a given resource.\n\nClients should store labels in a representation such as JSON that does not\ndepend on specific characters being disallowed.\n\nExample: \u003ccode\u003e\"environment\" : \"dev\"\u003c/code\u003e\nRead-write.", + "type": "object" + }, + "lifecycleState": { + "description": "The Project lifecycle state.\n\nRead-only.", + "enum": [ + "LIFECYCLE_STATE_UNSPECIFIED", + "ACTIVE", + "DELETE_REQUESTED", + "DELETE_IN_PROGRESS" + ], + "enumDescriptions": [ + "Unspecified state. This is only used/useful for distinguishing\nunset values.", + "The normal and active state.", + "The project has been marked for deletion by the user\n(by invoking\nDeleteProject)\nor by the system (Google Cloud Platform).\nThis can generally be reversed by invoking UndeleteProject.", + "This lifecycle state is no longer used and not returned by the API." + ], + "type": "string" + }, + "name": { + "description": "The user-assigned display name of the Project.\nIt must be 4 to 30 characters.\nAllowed characters are: lowercase and uppercase letters, numbers,\nhyphen, single-quote, double-quote, space, and exclamation point.\n\nExample: \u003ccode\u003eMy Project\u003c/code\u003e\nRead-write.", + "type": "string" + }, + "parent": { + "$ref": "ResourceId", + "description": "An optional reference to a parent Resource.\n\nSupported parent types include \"organization\" and \"folder\". Once set, the\nparent cannot be cleared. The `parent` can be set on creation or using the\n`UpdateProject` method; the end user must have the\n`resourcemanager.projects.create` permission on the parent.\n\nRead-write." + }, + "projectId": { + "description": "The unique, user-assigned ID of the Project.\nIt must be 6 to 30 lowercase letters, digits, or hyphens.\nIt must start with a letter.\nTrailing hyphens are prohibited.\n\nExample: \u003ccode\u003etokyo-rain-123\u003c/code\u003e\nRead-only after creation.", + "type": "string" + }, + "projectNumber": { + "description": "The number uniquely identifying the project.\n\nExample: \u003ccode\u003e415104041262\u003c/code\u003e\nRead-only.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "ProjectCreationStatus": { + "description": "A status object which is used as the `metadata` field for the Operation\nreturned by CreateProject. It provides insight for when significant phases of\nProject creation have completed.", + "id": "ProjectCreationStatus", + "properties": { + "createTime": { + "description": "Creation time of the project creation workflow.", + "format": "google-datetime", + "type": "string" + }, + "gettable": { + "description": "True if the project can be retrieved using GetProject. No other operations\non the project are guaranteed to work until the project creation is\ncomplete.", + "type": "boolean" + }, + "ready": { + "description": "True if the project creation process is complete.", + "type": "boolean" + } + }, + "type": "object" + }, + "ResourceId": { + "description": "A container to reference an id for any resource type. A `resource` in Google\nCloud Platform is a generic term for something you (a developer) may want to\ninteract with through one of our API's. Some examples are an App Engine app,\na Compute Engine instance, a Cloud SQL database, and so on.", + "id": "ResourceId", + "properties": { + "id": { + "description": "Required field for the type-specific id. This should correspond to the id\nused in the type-specific API's.", + "type": "string" + }, + "type": { + "description": "Required field representing the resource type this id is for.\nAt present, the valid types are: \"organization\"", + "type": "string" + } + }, + "type": "object" + }, + "RestoreDefault": { + "description": "Ignores policies set above this resource and restores the\n`constraint_default` enforcement behavior of the specific `Constraint` at\nthis resource.\n\nSuppose that `constraint_default` is set to `ALLOW` for the\n`Constraint` `constraints/serviceuser.services`. Suppose that organization\nfoo.com sets a `Policy` at their Organization resource node that restricts\nthe allowed service activations to deny all service activations. They\ncould then set a `Policy` with the `policy_type` `restore_default` on\nseveral experimental projects, restoring the `constraint_default`\nenforcement of the `Constraint` for only those projects, allowing those\nprojects to have all services activated.", + "id": "RestoreDefault", + "properties": {}, + "type": "object" + }, + "SearchOrganizationsRequest": { + "description": "The request sent to the `SearchOrganizations` method.", + "id": "SearchOrganizationsRequest", + "properties": { + "filter": { + "description": "An optional query string used to filter the Organizations to return in\nthe response. Filter rules are case-insensitive.\n\n\nOrganizations may be filtered by `owner.directoryCustomerId` or by\n`domain`, where the domain is a G Suite domain, for example:\n\n|Filter|Description|\n|------|-----------|\n|owner.directorycustomerid:123456789|Organizations with\n`owner.directory_customer_id` equal to `123456789`.|\n|domain:google.com|Organizations corresponding to the domain `google.com`.|\n\nThis field is optional.", + "type": "string" + }, + "pageSize": { + "description": "The maximum number of Organizations to return in the response.\nThis field is optional.", + "format": "int32", + "type": "integer" + }, + "pageToken": { + "description": "A pagination token returned from a previous call to `SearchOrganizations`\nthat indicates from where listing should continue.\nThis field is optional.", + "type": "string" + } + }, + "type": "object" + }, + "SearchOrganizationsResponse": { + "description": "The response returned from the `SearchOrganizations` method.", + "id": "SearchOrganizationsResponse", + "properties": { + "nextPageToken": { + "description": "A pagination token to be used to retrieve the next page of results. If the\nresult is too large to fit within the page size specified in the request,\nthis field will be set with a token that can be used to fetch the next page\nof results. If this field is empty, it indicates that this response\ncontains the last page of results.", + "type": "string" + }, + "organizations": { + "description": "The list of Organizations that matched the search query, possibly\npaginated.", + "items": { + "$ref": "Organization" + }, + "type": "array" + } + }, + "type": "object" + }, + "SetIamPolicyRequest": { + "description": "Request message for `SetIamPolicy` method.", + "id": "SetIamPolicyRequest", + "properties": { + "policy": { + "$ref": "Policy", + "description": "REQUIRED: The complete policy to be applied to the `resource`. The size of\nthe policy is limited to a few 10s of KB. An empty policy is a\nvalid policy but certain Cloud Platform services (such as Projects)\nmight reject them." + }, + "updateMask": { + "description": "OPTIONAL: A FieldMask specifying which fields of the policy to modify. Only\nthe fields in the mask will be modified. If no mask is provided, the\nfollowing default mask is used:\npaths: \"bindings, etag\"\nThis field is only used by Cloud IAM.", + "format": "google-fieldmask", + "type": "string" + } + }, + "type": "object" + }, + "SetOrgPolicyRequest": { + "description": "The request sent to the SetOrgPolicyRequest method.", + "id": "SetOrgPolicyRequest", + "properties": { + "policy": { + "$ref": "OrgPolicy", + "description": "`Policy` to set on the resource." + } + }, + "type": "object" + }, + "Status": { + "description": "The `Status` type defines a logical error model that is suitable for different\nprogramming environments, including REST APIs and RPC APIs. It is used by\n[gRPC](https://github.com/grpc). The error model is designed to be:\n\n- Simple to use and understand for most users\n- Flexible enough to meet unexpected needs\n\n# Overview\n\nThe `Status` message contains three pieces of data: error code, error message,\nand error details. The error code should be an enum value of\ngoogle.rpc.Code, but it may accept additional error codes if needed. The\nerror message should be a developer-facing English message that helps\ndevelopers *understand* and *resolve* the error. If a localized user-facing\nerror message is needed, put the localized message in the error details or\nlocalize it in the client. The optional error details may contain arbitrary\ninformation about the error. There is a predefined set of error detail types\nin the package `google.rpc` that can be used for common error conditions.\n\n# Language mapping\n\nThe `Status` message is the logical representation of the error model, but it\nis not necessarily the actual wire format. When the `Status` message is\nexposed in different client libraries and different wire protocols, it can be\nmapped differently. For example, it will likely be mapped to some exceptions\nin Java, but more likely mapped to some error codes in C.\n\n# Other uses\n\nThe error model and the `Status` message can be used in a variety of\nenvironments, either with or without APIs, to provide a\nconsistent developer experience across different environments.\n\nExample uses of this error model include:\n\n- Partial errors. If a service needs to return partial errors to the client,\n it may embed the `Status` in the normal response to indicate the partial\n errors.\n\n- Workflow errors. A typical workflow has multiple steps. Each step may\n have a `Status` message for error reporting.\n\n- Batch operations. If a client uses batch request and batch response, the\n `Status` message should be used directly inside batch response, one for\n each error sub-response.\n\n- Asynchronous operations. If an API call embeds asynchronous operation\n results in its response, the status of those operations should be\n represented directly using the `Status` message.\n\n- Logging. If some API errors are stored in logs, the message `Status` could\n be used directly after any stripping needed for security/privacy reasons.", + "id": "Status", + "properties": { + "code": { + "description": "The status code, which should be an enum value of google.rpc.Code.", + "format": "int32", + "type": "integer" + }, + "details": { + "description": "A list of messages that carry the error details. There is a common set of\nmessage types for APIs to use.", + "items": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "A developer-facing error message, which should be in English. Any\nuser-facing error message should be localized and sent in the\ngoogle.rpc.Status.details field, or localized by the client.", + "type": "string" + } + }, + "type": "object" + }, + "TestIamPermissionsRequest": { + "description": "Request message for `TestIamPermissions` method.", + "id": "TestIamPermissionsRequest", + "properties": { + "permissions": { + "description": "The set of permissions to check for the `resource`. Permissions with\nwildcards (such as '*' or 'storage.*') are not allowed. For more\ninformation see\n[IAM Overview](https://cloud.google.com/iam/docs/overview#permissions).", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "TestIamPermissionsResponse": { + "description": "Response message for `TestIamPermissions` method.", + "id": "TestIamPermissionsResponse", + "properties": { + "permissions": { + "description": "A subset of `TestPermissionsRequest.permissions` that the caller is\nallowed.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "UndeleteProjectRequest": { + "description": "The request sent to the UndeleteProject\nmethod.", + "id": "UndeleteProjectRequest", + "properties": {}, + "type": "object" } }, - "rootUrl": "https://cloudresourcemanager.googleapis.com/" -} + "servicePath": "", + "title": "Cloud Resource Manager API", + "version": "v1" +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/cloudresourcemanager/v1/cloudresourcemanager-gen.go b/vendor/google.golang.org/api/cloudresourcemanager/v1/cloudresourcemanager-gen.go index 4f9e5266a..f0c3b8d41 100644 --- a/vendor/google.golang.org/api/cloudresourcemanager/v1/cloudresourcemanager-gen.go +++ b/vendor/google.golang.org/api/cloudresourcemanager/v1/cloudresourcemanager-gen.go @@ -1,4 +1,4 @@ -// Package cloudresourcemanager provides access to the Google Cloud Resource Manager API. +// Package cloudresourcemanager provides access to the Cloud Resource Manager API. // // See https://cloud.google.com/resource-manager // @@ -175,7 +175,7 @@ func (s *Ancestor) MarshalJSON() ([]byte, error) { // log_types // specified in each AuditConfig are enabled, and the exempted_members // in each -// AuditConfig are exempted. +// AuditLogConfig are exempted. // // Example Policy with multiple AuditConfigs: // @@ -1542,11 +1542,14 @@ type Organization struct { // @OutputOnly CreationTime string `json:"creationTime,omitempty"` - // DisplayName: A friendly string to be used to refer to the - // Organization in the UI. - // Assigned by the server, set to the primary domain of the G - // Suite - // customer that owns the organization. + // DisplayName: A human-readable string that refers to the Organization + // in the + // GCP Console UI. This string is set by the server and cannot + // be + // changed. The string will be set to the primary domain (for + // example, + // "google.com") of the G Suite customer that owns the + // organization. // @OutputOnly DisplayName string `json:"displayName,omitempty"` @@ -1610,8 +1613,8 @@ func (s *Organization) MarshalJSON() ([]byte, error) { // descendants will // be deleted. type OrganizationOwner struct { - // DirectoryCustomerId: The Google for Work customer id used in the - // Directory API. + // DirectoryCustomerId: The G Suite customer id used in the Directory + // API. DirectoryCustomerId string `json:"directoryCustomerId,omitempty"` // ForceSendFields is a list of field names (e.g. "DirectoryCustomerId") @@ -1968,7 +1971,7 @@ type SearchOrganizationsRequest struct { // // Organizations may be filtered by `owner.directoryCustomerId` or // by - // `domain`, where the domain is a Google for Work domain, for + // `domain`, where the domain is a G Suite domain, for // example: // // |Filter|Description| @@ -5573,7 +5576,8 @@ type ProjectsCreateCall struct { // permission // `resourcemanager.projects.create` on the specified parent for the // new -// project. +// project. The parent is identified by a specified ResourceId, +// which must include both an ID and a type, such as organization. func (r *ProjectsService) Create(project *Project) *ProjectsCreateCall { c := &ProjectsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.project = project @@ -5663,7 +5667,7 @@ func (c *ProjectsCreateCall) Do(opts ...googleapi.CallOption) (*Operation, error } return ret, nil // { - // "description": "Request that a new Project be created. The result is an Operation which\ncan be used to track the creation process. It is automatically deleted\nafter a few hours, so there is no need to call DeleteOperation.\n\nOur SLO permits Project creation to take up to 30 seconds at the 90th\npercentile. As of 2016-08-29, we are observing 6 seconds 50th percentile\nlatency. 95th percentile latency is around 11 seconds. We recommend\npolling at the 5th second with an exponential backoff.\n\nAuthorization requires the Google IAM permission\n`resourcemanager.projects.create` on the specified parent for the new\nproject.", + // "description": "Request that a new Project be created. The result is an Operation which\ncan be used to track the creation process. It is automatically deleted\nafter a few hours, so there is no need to call DeleteOperation.\n\nOur SLO permits Project creation to take up to 30 seconds at the 90th\npercentile. As of 2016-08-29, we are observing 6 seconds 50th percentile\nlatency. 95th percentile latency is around 11 seconds. We recommend\npolling at the 5th second with an exponential backoff.\n\nAuthorization requires the Google IAM permission\n`resourcemanager.projects.create` on the specified parent for the new\nproject. The parent is identified by a specified ResourceId,\nwhich must include both an ID and a type, such as organization.", // "flatPath": "v1/projects", // "httpMethod": "POST", // "id": "cloudresourcemanager.projects.create", @@ -5695,11 +5699,8 @@ type ProjectsDeleteCall struct { // Delete: Marks the Project identified by the specified // `project_id` (for example, `my-project-123`) for deletion. -// This method will only affect the Project if the following criteria -// are met: -// -// + The Project does not have a billing account associated with it. -// + The Project has a lifecycle state of +// This method will only affect the Project if it has a lifecycle state +// of // ACTIVE. // // This method changes the Project's lifecycle state from @@ -5806,7 +5807,7 @@ func (c *ProjectsDeleteCall) Do(opts ...googleapi.CallOption) (*Empty, error) { } return ret, nil // { - // "description": "Marks the Project identified by the specified\n`project_id` (for example, `my-project-123`) for deletion.\nThis method will only affect the Project if the following criteria are met:\n\n+ The Project does not have a billing account associated with it.\n+ The Project has a lifecycle state of\nACTIVE.\n\nThis method changes the Project's lifecycle state from\nACTIVE\nto DELETE_REQUESTED.\nThe deletion starts at an unspecified time,\nat which point the Project is no longer accessible.\n\nUntil the deletion completes, you can check the lifecycle state\nchecked by retrieving the Project with GetProject,\nand the Project remains visible to ListProjects.\nHowever, you cannot update the project.\n\nAfter the deletion completes, the Project is not retrievable by\nthe GetProject and\nListProjects methods.\n\nThe caller must have modify permissions for this Project.", + // "description": "Marks the Project identified by the specified\n`project_id` (for example, `my-project-123`) for deletion.\nThis method will only affect the Project if it has a lifecycle state of\nACTIVE.\n\nThis method changes the Project's lifecycle state from\nACTIVE\nto DELETE_REQUESTED.\nThe deletion starts at an unspecified time,\nat which point the Project is no longer accessible.\n\nUntil the deletion completes, you can check the lifecycle state\nchecked by retrieving the Project with GetProject,\nand the Project remains visible to ListProjects.\nHowever, you cannot update the project.\n\nAfter the deletion completes, the Project is not retrievable by\nthe GetProject and\nListProjects methods.\n\nThe caller must have modify permissions for this Project.", // "flatPath": "v1/projects/{projectId}", // "httpMethod": "DELETE", // "id": "cloudresourcemanager.projects.delete", diff --git a/vendor/google.golang.org/api/cloudresourcemanager/v1beta1/cloudresourcemanager-api.json b/vendor/google.golang.org/api/cloudresourcemanager/v1beta1/cloudresourcemanager-api.json index 735ec341f..97ee2bb60 100644 --- a/vendor/google.golang.org/api/cloudresourcemanager/v1beta1/cloudresourcemanager-api.json +++ b/vendor/google.golang.org/api/cloudresourcemanager/v1beta1/cloudresourcemanager-api.json @@ -1,819 +1,718 @@ { - "resources": { - "organizations": { - "methods": { - "list": { - "parameters": { - "pageToken": { - "location": "query", - "description": "A pagination token returned from a previous call to `ListOrganizations`\nthat indicates from where listing should continue.\nThis field is optional.", - "type": "string" - }, - "pageSize": { - "location": "query", - "description": "The maximum number of Organizations to return in the response.\nThis field is optional.", - "format": "int32", - "type": "integer" - }, - "filter": { - "description": "An optional query string used to filter the Organizations to return in\nthe response. Filter rules are case-insensitive.\n\n\nOrganizations may be filtered by `owner.directoryCustomerId` or by\n`domain`, where the domain is a Google for Work domain, for example:\n\n|Filter|Description|\n|------|-----------|\n|owner.directorycustomerid:123456789|Organizations with `owner.directory_customer_id` equal to `123456789`.|\n|domain:google.com|Organizations corresponding to the domain `google.com`.|\n\nThis field is optional.", - "type": "string", - "location": "query" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ], - "flatPath": "v1beta1/organizations", - "path": "v1beta1/organizations", - "id": "cloudresourcemanager.organizations.list", - "description": "Lists Organization resources that are visible to the user and satisfy\nthe specified filter. This method returns Organizations in an unspecified\norder. New Organizations do not necessarily appear at the end of the list.", - "response": { - "$ref": "ListOrganizationsResponse" - }, - "parameterOrder": [], - "httpMethod": "GET" + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/cloud-platform": { + "description": "View and manage your data across Google Cloud Platform services" }, - "setIamPolicy": { - "path": "v1beta1/{+resource}:setIamPolicy", - "id": "cloudresourcemanager.organizations.setIamPolicy", - "request": { - "$ref": "SetIamPolicyRequest" - }, - "description": "Sets the access control policy on an Organization resource. Replaces any\nexisting policy. The `resource` field should be the organization's resource\nname, e.g. \"organizations/123\".", - "response": { - "$ref": "Policy" - }, - "parameterOrder": [ - "resource" - ], - "httpMethod": "POST", - "parameters": { - "resource": { - "description": "REQUIRED: The resource for which the policy is being specified.\nSee the operation documentation for the appropriate value for this field.", - "required": true, - "type": "string", - "pattern": "^organizations/[^/]+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta1/organizations/{organizationsId}:setIamPolicy" - }, - "getIamPolicy": { - "response": { - "$ref": "Policy" - }, - "parameterOrder": [ - "resource" - ], - "httpMethod": "POST", - "parameters": { - "resource": { - "pattern": "^organizations/[^/]+$", - "location": "path", - "description": "REQUIRED: The resource for which the policy is being requested.\nSee the operation documentation for the appropriate value for this field.", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ], - "flatPath": "v1beta1/organizations/{organizationsId}:getIamPolicy", - "path": "v1beta1/{+resource}:getIamPolicy", - "id": "cloudresourcemanager.organizations.getIamPolicy", - "request": { - "$ref": "GetIamPolicyRequest" - }, - "description": "Gets the access control policy for an Organization resource. May be empty\nif no such policy or resource exists. The `resource` field should be the\norganization's resource name, e.g. \"organizations/123\"." - }, - "get": { - "response": { - "$ref": "Organization" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ], - "parameters": { - "organizationId": { - "description": "The id of the Organization resource to fetch.\nThis field is deprecated and will be removed in v1. Use name instead.", - "type": "string", - "location": "query" - }, - "name": { - "description": "The resource name of the Organization to fetch, e.g. \"organizations/1234\".", - "required": true, - "type": "string", - "pattern": "^organizations/[^/]+$", - "location": "path" - } - }, - "flatPath": "v1beta1/organizations/{organizationsId}", - "path": "v1beta1/{+name}", - "id": "cloudresourcemanager.organizations.get", - "description": "Fetches an Organization resource identified by the specified resource name." - }, - "update": { - "response": { - "$ref": "Organization" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "PUT", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "name": { - "pattern": "^organizations/[^/]+$", - "location": "path", - "description": "Output Only. The resource name of the organization. This is the\norganization's relative path in the API. Its format is\n\"organizations/[organization_id]\". For example, \"organizations/1234\".", - "required": true, - "type": "string" - } - }, - "flatPath": "v1beta1/organizations/{organizationsId}", - "path": "v1beta1/{+name}", - "id": "cloudresourcemanager.organizations.update", - "description": "Updates an Organization resource identified by the specified resource name.", - "request": { - "$ref": "Organization" - } - }, - "testIamPermissions": { - "parameters": { - "resource": { - "pattern": "^organizations/[^/]+$", - "location": "path", - "description": "REQUIRED: The resource for which the policy detail is being requested.\nSee the operation documentation for the appropriate value for this field.", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ], - "flatPath": "v1beta1/organizations/{organizationsId}:testIamPermissions", - "path": "v1beta1/{+resource}:testIamPermissions", - "id": "cloudresourcemanager.organizations.testIamPermissions", - "request": { - "$ref": "TestIamPermissionsRequest" - }, - "description": "Returns permissions that a caller has on the specified Organization.\nThe `resource` field should be the organization's resource name,\ne.g. \"organizations/123\".", - "response": { - "$ref": "TestIamPermissionsResponse" - }, - "parameterOrder": [ - "resource" - ], - "httpMethod": "POST" - } - } - }, - "projects": { - "methods": { - "testIamPermissions": { - "parameters": { - "resource": { - "location": "path", - "description": "REQUIRED: The resource for which the policy detail is being requested.\nSee the operation documentation for the appropriate value for this field.", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ], - "flatPath": "v1beta1/projects/{resource}:testIamPermissions", - "path": "v1beta1/projects/{resource}:testIamPermissions", - "id": "cloudresourcemanager.projects.testIamPermissions", - "request": { - "$ref": "TestIamPermissionsRequest" - }, - "description": "Returns permissions that a caller has on the specified Project.", - "response": { - "$ref": "TestIamPermissionsResponse" - }, - "parameterOrder": [ - "resource" - ], - "httpMethod": "POST" - }, - "delete": { - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "projectId": { - "description": "The Project ID (for example, `foo-bar-123`).\n\nRequired.", - "required": true, - "type": "string", - "location": "path" - } - }, - "flatPath": "v1beta1/projects/{projectId}", - "path": "v1beta1/projects/{projectId}", - "id": "cloudresourcemanager.projects.delete", - "description": "Marks the Project identified by the specified\n`project_id` (for example, `my-project-123`) for deletion.\nThis method will only affect the Project if the following criteria are met:\n\n+ The Project does not have a billing account associated with it.\n+ The Project has a lifecycle state of\nACTIVE.\n\nThis method changes the Project's lifecycle state from\nACTIVE\nto DELETE_REQUESTED.\nThe deletion starts at an unspecified time, at which point the project is\nno longer accessible.\n\nUntil the deletion completes, you can check the lifecycle state\nchecked by retrieving the Project with GetProject,\nand the Project remains visible to ListProjects.\nHowever, you cannot update the project.\n\nAfter the deletion completes, the Project is not retrievable by\nthe GetProject and\nListProjects methods.\n\nThe caller must have modify permissions for this Project.", - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "projectId" - ], - "httpMethod": "DELETE" - }, - "list": { - "description": "Lists Projects that are visible to the user and satisfy the\nspecified filter. This method returns Projects in an unspecified order.\nThis method is eventually consistent with project mutations; this means\nthat a newly created project may not appear in the results or recent\nupdates to an existing project may not be reflected in the results. To\nretrieve the latest state of a project, use the GetProjectmethod.", - "response": { - "$ref": "ListProjectsResponse" - }, - "parameterOrder": [], - "httpMethod": "GET", - "parameters": { - "filter": { - "location": "query", - "description": "An expression for filtering the results of the request. Filter rules are\ncase insensitive. The fields eligible for filtering are:\n\n+ `name`\n+ `id`\n+ \u003ccode\u003elabels.\u003cem\u003ekey\u003c/em\u003e\u003c/code\u003e where *key* is the name of a label\n\nSome examples of using labels as filters:\n\n|Filter|Description|\n|------|-----------|\n|name:how*|The project's name starts with \"how\".|\n|name:Howl|The project's name is `Howl` or `howl`.|\n|name:HOWL|Equivalent to above.|\n|NAME:howl|Equivalent to above.|\n|labels.color:*|The project has the label `color`.|\n|labels.color:red|The project's label `color` has the value `red`.|\n|labels.color:red labels.size:big|The project's label `color` has the value `red` and its label `size` has the value `big`.\n\nIf you specify a filter that has both `parent.type` and `parent.id`, then\nthe `resourcemanager.projects.list` permission is checked on the parent.\nIf the user has this permission, all projects under the parent will be\nreturned after remaining filters have been applied. If the user lacks this\npermission, then all projects for which the user has the\n`resourcemanager.projects.get` permission will be returned after remaining\nfilters have been applied. If no filter is specified, the call will return\nprojects for which the user has `resourcemanager.projects.get` permissions.\n\nOptional.", - "type": "string" - }, - "pageToken": { - "location": "query", - "description": "A pagination token returned from a previous call to ListProjects\nthat indicates from where listing should continue.\n\nOptional.", - "type": "string" - }, - "pageSize": { - "description": "The maximum number of Projects to return in the response.\nThe server can return fewer Projects than requested.\nIf unspecified, server picks an appropriate default.\n\nOptional.", - "format": "int32", - "type": "integer", - "location": "query" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ], - "flatPath": "v1beta1/projects", - "path": "v1beta1/projects", - "id": "cloudresourcemanager.projects.list" - }, - "setIamPolicy": { - "response": { - "$ref": "Policy" - }, - "parameterOrder": [ - "resource" - ], - "httpMethod": "POST", - "parameters": { - "resource": { - "description": "REQUIRED: The resource for which the policy is being specified.\nSee the operation documentation for the appropriate value for this field.", - "required": true, - "type": "string", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta1/projects/{resource}:setIamPolicy", - "path": "v1beta1/projects/{resource}:setIamPolicy", - "id": "cloudresourcemanager.projects.setIamPolicy", - "request": { - "$ref": "SetIamPolicyRequest" - }, - "description": "Sets the IAM access control policy for the specified Project. Overwrites\nany existing policy.\n\nThe following constraints apply when using `setIamPolicy()`:\n\n+ Project does not support `allUsers` and `allAuthenticatedUsers` as\n`members` in a `Binding` of a `Policy`.\n\n+ The owner role can be granted only to `user` and `serviceAccount`.\n\n+ Service accounts can be made owners of a project directly\nwithout any restrictions. However, to be added as an owner, a user must be\ninvited via Cloud Platform console and must accept the invitation.\n\n+ A user cannot be granted the owner role using `setIamPolicy()`. The user\nmust be granted the owner role using the Cloud Platform Console and must\nexplicitly accept the invitation.\n\n+ Invitations to grant the owner role cannot be sent using\n`setIamPolicy()`; they must be sent only using the Cloud Platform Console.\n\n+ Membership changes that leave the project without any owners that have\naccepted the Terms of Service (ToS) will be rejected.\n\n+ If the project is not part of an organization, there must be at least\none owner who has accepted the Terms of Service (ToS) agreement in the\npolicy. Calling `setIamPolicy()` to remove the last ToS-accepted owner\nfrom the policy will fail. This restriction also applies to legacy\nprojects that no longer have owners who have accepted the ToS. Edits to\nIAM policies will be rejected until the lack of a ToS-accepting owner is\nrectified.\n\n+ This method will replace the existing policy, and cannot be used to\nappend additional IAM settings.\n\nNote: Removing service accounts from policies or changing their roles\ncan render services completely inoperable. It is important to understand\nhow the service account is being used before removing or updating its\nroles." - }, - "create": { - "path": "v1beta1/projects", - "id": "cloudresourcemanager.projects.create", - "description": "Creates a Project resource.\n\nInitially, the Project resource is owned by its creator exclusively.\nThe creator can later grant permission to others to read or update the\nProject.\n\nSeveral APIs are activated automatically for the Project, including\nGoogle Cloud Storage.", - "request": { - "$ref": "Project" - }, - "response": { - "$ref": "Project" - }, - "parameterOrder": [], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "useLegacyStack": { - "location": "query", - "description": "A safety hatch to opt out of the new reliable project creation process.", - "type": "boolean" - } - }, - "flatPath": "v1beta1/projects" - }, - "getIamPolicy": { - "path": "v1beta1/projects/{resource}:getIamPolicy", - "id": "cloudresourcemanager.projects.getIamPolicy", - "description": "Returns the IAM access control policy for the specified Project.\nPermission is denied if the policy or the resource does not exist.\n\nFor additional information about resource structure and identification,\nsee [Resource Names](/apis/design/resource_names).", - "request": { - "$ref": "GetIamPolicyRequest" - }, - "response": { - "$ref": "Policy" - }, - "parameterOrder": [ - "resource" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ], - "parameters": { - "resource": { - "description": "REQUIRED: The resource for which the policy is being requested.\nSee the operation documentation for the appropriate value for this field.", - "required": true, - "type": "string", - "location": "path" - } - }, - "flatPath": "v1beta1/projects/{resource}:getIamPolicy" - }, - "get": { - "description": "Retrieves the Project identified by the specified\n`project_id` (for example, `my-project-123`).\n\nThe caller must have read permissions for this Project.", - "response": { - "$ref": "Project" - }, - "parameterOrder": [ - "projectId" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ], - "parameters": { - "projectId": { - "location": "path", - "description": "The Project ID (for example, `my-project-123`).\n\nRequired.", - "required": true, - "type": "string" - } - }, - "flatPath": "v1beta1/projects/{projectId}", - "path": "v1beta1/projects/{projectId}", - "id": "cloudresourcemanager.projects.get" - }, - "undelete": { - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "projectId" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "projectId": { - "description": "The project ID (for example, `foo-bar-123`).\n\nRequired.", - "required": true, - "type": "string", - "location": "path" - } - }, - "flatPath": "v1beta1/projects/{projectId}:undelete", - "path": "v1beta1/projects/{projectId}:undelete", - "id": "cloudresourcemanager.projects.undelete", - "description": "Restores the Project identified by the specified\n`project_id` (for example, `my-project-123`).\nYou can only use this method for a Project that has a lifecycle state of\nDELETE_REQUESTED.\nAfter deletion starts, the Project cannot be restored.\n\nThe caller must have modify permissions for this Project.", - "request": { - "$ref": "UndeleteProjectRequest" - } - }, - "update": { - "path": "v1beta1/projects/{projectId}", - "id": "cloudresourcemanager.projects.update", - "description": "Updates the attributes of the Project identified by the specified\n`project_id` (for example, `my-project-123`).\n\nThe caller must have modify permissions for this Project.", - "request": { - "$ref": "Project" - }, - "response": { - "$ref": "Project" - }, - "parameterOrder": [ - "projectId" - ], - "httpMethod": "PUT", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "projectId": { - "location": "path", - "description": "The project ID (for example, `my-project-123`).\n\nRequired.", - "required": true, - "type": "string" - } - }, - "flatPath": "v1beta1/projects/{projectId}" - }, - "getAncestry": { - "response": { - "$ref": "GetAncestryResponse" - }, - "parameterOrder": [ - "projectId" - ], - "httpMethod": "POST", - "parameters": { - "projectId": { - "location": "path", - "description": "The Project ID (for example, `my-project-123`).\n\nRequired.", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ], - "flatPath": "v1beta1/projects/{projectId}:getAncestry", - "path": "v1beta1/projects/{projectId}:getAncestry", - "id": "cloudresourcemanager.projects.getAncestry", - "request": { - "$ref": "GetAncestryRequest" - }, - "description": "Gets a list of ancestors in the resource hierarchy for the Project\nidentified by the specified `project_id` (for example, `my-project-123`).\n\nThe caller must have read permissions for this Project." + "https://www.googleapis.com/auth/cloud-platform.read-only": { + "description": "View your data across Google Cloud Platform services" } } } }, + "basePath": "", + "baseUrl": "https://cloudresourcemanager.googleapis.com/", + "batchPath": "batch", + "canonicalName": "Cloud Resource Manager", + "description": "The Google Cloud Resource Manager API provides methods for creating, reading, and updating project metadata.", + "discoveryVersion": "v1", + "documentationLink": "https://cloud.google.com/resource-manager", + "fullyEncodeReservedExpansion": true, + "icons": { + "x16": "http://www.google.com/images/icons/product/search-16.gif", + "x32": "http://www.google.com/images/icons/product/search-32.gif" + }, + "id": "cloudresourcemanager:v1beta1", + "kind": "discovery#restDescription", + "name": "cloudresourcemanager", + "ownerDomain": "google.com", + "ownerName": "Google", "parameters": { - "quotaUser": { - "location": "query", - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", - "type": "string" - }, - "pp": { - "description": "Pretty-print response.", - "type": "boolean", - "default": "true", - "location": "query" - }, - "bearer_token": { - "description": "OAuth bearer token.", - "type": "string", - "location": "query" - }, - "oauth_token": { - "location": "query", - "description": "OAuth 2.0 token for the current user.", - "type": "string" - }, - "upload_protocol": { - "location": "query", - "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", - "type": "string" - }, - "prettyPrint": { - "location": "query", - "description": "Returns response with indentations and line breaks.", - "type": "boolean", - "default": "true" - }, - "fields": { - "description": "Selector specifying which fields to include in a partial response.", - "type": "string", - "location": "query" - }, - "uploadType": { - "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", - "type": "string", - "location": "query" - }, - "callback": { - "location": "query", - "description": "JSONP", - "type": "string" - }, "$.xgafv": { + "description": "V1 error format.", + "enum": [ + "1", + "2" + ], "enumDescriptions": [ "v1 error format", "v2 error format" ], "location": "query", - "enum": [ - "1", - "2" - ], - "description": "V1 error format.", + "type": "string" + }, + "access_token": { + "description": "OAuth access token.", + "location": "query", "type": "string" }, "alt": { + "default": "json", + "description": "Data format for response.", + "enum": [ + "json", + "media", + "proto" + ], "enumDescriptions": [ "Responses with Content-Type of application/json", "Media download with context-dependent Content-Type", "Responses with Content-Type of application/x-protobuf" ], "location": "query", - "description": "Data format for response.", - "default": "json", - "enum": [ - "json", - "media", - "proto" - ], + "type": "string" + }, + "bearer_token": { + "description": "OAuth bearer token.", + "location": "query", + "type": "string" + }, + "callback": { + "description": "JSONP", + "location": "query", + "type": "string" + }, + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "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.", - "type": "string", - "location": "query" - }, - "access_token": { "location": "query", - "description": "OAuth access token.", + "type": "string" + }, + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "pp": { + "default": "true", + "description": "Pretty-print response.", + "location": "query", + "type": "boolean" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", + "location": "query", + "type": "string" + }, + "uploadType": { + "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", + "location": "query", + "type": "string" + }, + "upload_protocol": { + "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", + "location": "query", "type": "string" } }, - "version": "v1beta1", - "baseUrl": "https://cloudresourcemanager.googleapis.com/", - "kind": "discovery#restDescription", - "description": "The Google Cloud Resource Manager API provides methods for creating, reading, and updating project metadata.", - "servicePath": "", - "basePath": "", - "id": "cloudresourcemanager:v1beta1", - "revision": "20180110", - "documentationLink": "https://cloud.google.com/resource-manager", - "discoveryVersion": "v1", - "schemas": { - "ProjectCreationStatus": { - "description": "A status object which is used as the `metadata` field for the Operation\nreturned by CreateProject. It provides insight for when significant phases of\nProject creation have completed.", - "type": "object", - "properties": { - "ready": { - "description": "True if the project creation process is complete.", - "type": "boolean" + "protocol": "rest", + "resources": { + "organizations": { + "methods": { + "get": { + "description": "Fetches an Organization resource identified by the specified resource name.", + "flatPath": "v1beta1/organizations/{organizationsId}", + "httpMethod": "GET", + "id": "cloudresourcemanager.organizations.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The resource name of the Organization to fetch, e.g. \"organizations/1234\".", + "location": "path", + "pattern": "^organizations/[^/]+$", + "required": true, + "type": "string" + }, + "organizationId": { + "description": "The id of the Organization resource to fetch.\nThis field is deprecated and will be removed in v1. Use name instead.", + "location": "query", + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "response": { + "$ref": "Organization" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] }, - "createTime": { - "description": "Creation time of the project creation workflow.", - "format": "google-datetime", - "type": "string" + "getIamPolicy": { + "description": "Gets the access control policy for an Organization resource. May be empty\nif no such policy or resource exists. The `resource` field should be the\norganization's resource name, e.g. \"organizations/123\".", + "flatPath": "v1beta1/organizations/{organizationsId}:getIamPolicy", + "httpMethod": "POST", + "id": "cloudresourcemanager.organizations.getIamPolicy", + "parameterOrder": [ + "resource" + ], + "parameters": { + "resource": { + "description": "REQUIRED: The resource for which the policy is being requested.\nSee the operation documentation for the appropriate value for this field.", + "location": "path", + "pattern": "^organizations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+resource}:getIamPolicy", + "request": { + "$ref": "GetIamPolicyRequest" + }, + "response": { + "$ref": "Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] }, - "gettable": { - "description": "True if the project can be retrieved using GetProject. No other operations\non the project are guaranteed to work until the project creation is\ncomplete.", - "type": "boolean" - } - }, - "id": "ProjectCreationStatus" - }, - "TestIamPermissionsResponse": { - "id": "TestIamPermissionsResponse", - "description": "Response message for `TestIamPermissions` method.", - "type": "object", - "properties": { - "permissions": { - "description": "A subset of `TestPermissionsRequest.permissions` that the caller is\nallowed.", - "type": "array", - "items": { - "type": "string" - } + "list": { + "description": "Lists Organization resources that are visible to the user and satisfy\nthe specified filter. This method returns Organizations in an unspecified\norder. New Organizations do not necessarily appear at the end of the list.", + "flatPath": "v1beta1/organizations", + "httpMethod": "GET", + "id": "cloudresourcemanager.organizations.list", + "parameterOrder": [], + "parameters": { + "filter": { + "description": "An optional query string used to filter the Organizations to return in\nthe response. Filter rules are case-insensitive.\n\n\nOrganizations may be filtered by `owner.directoryCustomerId` or by\n`domain`, where the domain is a G Suite domain, for example:\n\n|Filter|Description|\n|------|-----------|\n|owner.directorycustomerid:123456789|Organizations with `owner.directory_customer_id` equal to `123456789`.|\n|domain:google.com|Organizations corresponding to the domain `google.com`.|\n\nThis field is optional.", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "The maximum number of Organizations to return in the response.\nThis field is optional.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "A pagination token returned from a previous call to `ListOrganizations`\nthat indicates from where listing should continue.\nThis field is optional.", + "location": "query", + "type": "string" + } + }, + "path": "v1beta1/organizations", + "response": { + "$ref": "ListOrganizationsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + }, + "setIamPolicy": { + "description": "Sets the access control policy on an Organization resource. Replaces any\nexisting policy. The `resource` field should be the organization's resource\nname, e.g. \"organizations/123\".", + "flatPath": "v1beta1/organizations/{organizationsId}:setIamPolicy", + "httpMethod": "POST", + "id": "cloudresourcemanager.organizations.setIamPolicy", + "parameterOrder": [ + "resource" + ], + "parameters": { + "resource": { + "description": "REQUIRED: The resource for which the policy is being specified.\nSee the operation documentation for the appropriate value for this field.", + "location": "path", + "pattern": "^organizations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+resource}:setIamPolicy", + "request": { + "$ref": "SetIamPolicyRequest" + }, + "response": { + "$ref": "Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified Organization.\nThe `resource` field should be the organization's resource name,\ne.g. \"organizations/123\".", + "flatPath": "v1beta1/organizations/{organizationsId}:testIamPermissions", + "httpMethod": "POST", + "id": "cloudresourcemanager.organizations.testIamPermissions", + "parameterOrder": [ + "resource" + ], + "parameters": { + "resource": { + "description": "REQUIRED: The resource for which the policy detail is being requested.\nSee the operation documentation for the appropriate value for this field.", + "location": "path", + "pattern": "^organizations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+resource}:testIamPermissions", + "request": { + "$ref": "TestIamPermissionsRequest" + }, + "response": { + "$ref": "TestIamPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + }, + "update": { + "description": "Updates an Organization resource identified by the specified resource name.", + "flatPath": "v1beta1/organizations/{organizationsId}", + "httpMethod": "PUT", + "id": "cloudresourcemanager.organizations.update", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Output Only. The resource name of the organization. This is the\norganization's relative path in the API. Its format is\n\"organizations/[organization_id]\". For example, \"organizations/1234\".", + "location": "path", + "pattern": "^organizations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "request": { + "$ref": "Organization" + }, + "response": { + "$ref": "Organization" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] } } }, - "GetIamPolicyRequest": { - "id": "GetIamPolicyRequest", - "description": "Request message for `GetIamPolicy` method.", - "type": "object", - "properties": {} - }, - "GetAncestryResponse": { - "description": "Response from the GetAncestry method.", - "type": "object", - "properties": { - "ancestor": { - "description": "Ancestors are ordered from bottom to top of the resource hierarchy. The\nfirst ancestor is the project itself, followed by the project's parent,\netc.", - "type": "array", - "items": { - "$ref": "Ancestor" - } - } - }, - "id": "GetAncestryResponse" - }, - "OrganizationOwner": { - "id": "OrganizationOwner", - "description": "The entity that owns an Organization. The lifetime of the Organization and\nall of its descendants are bound to the `OrganizationOwner`. If the\n`OrganizationOwner` is deleted, the Organization and all its descendants will\nbe deleted.", - "type": "object", - "properties": { - "directoryCustomerId": { - "description": "The Google for Work customer id used in the Directory API.", - "type": "string" - } - } - }, - "ListProjectsResponse": { - "description": "A page of the response received from the\nListProjects\nmethod.\n\nA paginated response where more pages are available has\n`next_page_token` set. This token can be used in a subsequent request to\nretrieve the next request page.", - "type": "object", - "properties": { - "projects": { - "description": "The list of Projects that matched the list filter. This list can\nbe paginated.", - "type": "array", - "items": { + "projects": { + "methods": { + "create": { + "description": "Creates a Project resource.\n\nInitially, the Project resource is owned by its creator exclusively.\nThe creator can later grant permission to others to read or update the\nProject.\n\nSeveral APIs are activated automatically for the Project, including\nGoogle Cloud Storage. The parent is identified by a specified\nResourceId, which must include both an ID and a type, such as\nproject, folder, or organization.", + "flatPath": "v1beta1/projects", + "httpMethod": "POST", + "id": "cloudresourcemanager.projects.create", + "parameterOrder": [], + "parameters": { + "useLegacyStack": { + "description": "A safety hatch to opt out of the new reliable project creation process.", + "location": "query", + "type": "boolean" + } + }, + "path": "v1beta1/projects", + "request": { "$ref": "Project" - } + }, + "response": { + "$ref": "Project" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] }, - "nextPageToken": { - "description": "Pagination token.\n\nIf the result set is too large to fit in a single response, this token\nis returned. It encodes the position of the current result cursor.\nFeeding this value into a new list request with the `page_token` parameter\ngives the next page of the results.\n\nWhen `next_page_token` is not filled in, there is no next page and\nthe list returned is the last page in the result set.\n\nPagination tokens have a limited lifetime.", + "delete": { + "description": "Marks the Project identified by the specified\n`project_id` (for example, `my-project-123`) for deletion.\nThis method will only affect the Project if it has a lifecycle state of\nACTIVE.\n\nThis method changes the Project's lifecycle state from\nACTIVE\nto DELETE_REQUESTED.\nThe deletion starts at an unspecified time, at which point the project is\nno longer accessible.\n\nUntil the deletion completes, you can check the lifecycle state\nchecked by retrieving the Project with GetProject,\nand the Project remains visible to ListProjects.\nHowever, you cannot update the project.\n\nAfter the deletion completes, the Project is not retrievable by\nthe GetProject and\nListProjects methods.\n\nThe caller must have modify permissions for this Project.", + "flatPath": "v1beta1/projects/{projectId}", + "httpMethod": "DELETE", + "id": "cloudresourcemanager.projects.delete", + "parameterOrder": [ + "projectId" + ], + "parameters": { + "projectId": { + "description": "The Project ID (for example, `foo-bar-123`).\n\nRequired.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/projects/{projectId}", + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Retrieves the Project identified by the specified\n`project_id` (for example, `my-project-123`).\n\nThe caller must have read permissions for this Project.", + "flatPath": "v1beta1/projects/{projectId}", + "httpMethod": "GET", + "id": "cloudresourcemanager.projects.get", + "parameterOrder": [ + "projectId" + ], + "parameters": { + "projectId": { + "description": "The Project ID (for example, `my-project-123`).\n\nRequired.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/projects/{projectId}", + "response": { + "$ref": "Project" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + }, + "getAncestry": { + "description": "Gets a list of ancestors in the resource hierarchy for the Project\nidentified by the specified `project_id` (for example, `my-project-123`).\n\nThe caller must have read permissions for this Project.", + "flatPath": "v1beta1/projects/{projectId}:getAncestry", + "httpMethod": "POST", + "id": "cloudresourcemanager.projects.getAncestry", + "parameterOrder": [ + "projectId" + ], + "parameters": { + "projectId": { + "description": "The Project ID (for example, `my-project-123`).\n\nRequired.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/projects/{projectId}:getAncestry", + "request": { + "$ref": "GetAncestryRequest" + }, + "response": { + "$ref": "GetAncestryResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + }, + "getIamPolicy": { + "description": "Returns the IAM access control policy for the specified Project.\nPermission is denied if the policy or the resource does not exist.\n\nFor additional information about resource structure and identification,\nsee [Resource Names](/apis/design/resource_names).", + "flatPath": "v1beta1/projects/{resource}:getIamPolicy", + "httpMethod": "POST", + "id": "cloudresourcemanager.projects.getIamPolicy", + "parameterOrder": [ + "resource" + ], + "parameters": { + "resource": { + "description": "REQUIRED: The resource for which the policy is being requested.\nSee the operation documentation for the appropriate value for this field.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/projects/{resource}:getIamPolicy", + "request": { + "$ref": "GetIamPolicyRequest" + }, + "response": { + "$ref": "Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + }, + "list": { + "description": "Lists Projects that are visible to the user and satisfy the\nspecified filter. This method returns Projects in an unspecified order.\nThis method is eventually consistent with project mutations; this means\nthat a newly created project may not appear in the results or recent\nupdates to an existing project may not be reflected in the results. To\nretrieve the latest state of a project, use the GetProjectmethod.", + "flatPath": "v1beta1/projects", + "httpMethod": "GET", + "id": "cloudresourcemanager.projects.list", + "parameterOrder": [], + "parameters": { + "filter": { + "description": "An expression for filtering the results of the request. Filter rules are\ncase insensitive. The fields eligible for filtering are:\n\n+ `name`\n+ `id`\n+ \u003ccode\u003elabels.\u003cem\u003ekey\u003c/em\u003e\u003c/code\u003e where *key* is the name of a label\n\nSome examples of using labels as filters:\n\n|Filter|Description|\n|------|-----------|\n|name:how*|The project's name starts with \"how\".|\n|name:Howl|The project's name is `Howl` or `howl`.|\n|name:HOWL|Equivalent to above.|\n|NAME:howl|Equivalent to above.|\n|labels.color:*|The project has the label `color`.|\n|labels.color:red|The project's label `color` has the value `red`.|\n|labels.color:red\u0026nbsp;labels.size:big|The project's label `color` has the value `red` and its label `size` has the value `big`.\n\nIf you specify a filter that has both `parent.type` and `parent.id`, then\nthe `resourcemanager.projects.list` permission is checked on the parent.\nIf the user has this permission, all projects under the parent will be\nreturned after remaining filters have been applied. If the user lacks this\npermission, then all projects for which the user has the\n`resourcemanager.projects.get` permission will be returned after remaining\nfilters have been applied. If no filter is specified, the call will return\nprojects for which the user has `resourcemanager.projects.get` permissions.\n\nOptional.", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "The maximum number of Projects to return in the response.\nThe server can return fewer Projects than requested.\nIf unspecified, server picks an appropriate default.\n\nOptional.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "A pagination token returned from a previous call to ListProjects\nthat indicates from where listing should continue.\n\nOptional.", + "location": "query", + "type": "string" + } + }, + "path": "v1beta1/projects", + "response": { + "$ref": "ListProjectsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + }, + "setIamPolicy": { + "description": "Sets the IAM access control policy for the specified Project. Overwrites\nany existing policy.\n\nThe following constraints apply when using `setIamPolicy()`:\n\n+ Project does not support `allUsers` and `allAuthenticatedUsers` as\n`members` in a `Binding` of a `Policy`.\n\n+ The owner role can be granted only to `user` and `serviceAccount`.\n\n+ Service accounts can be made owners of a project directly\nwithout any restrictions. However, to be added as an owner, a user must be\ninvited via Cloud Platform console and must accept the invitation.\n\n+ A user cannot be granted the owner role using `setIamPolicy()`. The user\nmust be granted the owner role using the Cloud Platform Console and must\nexplicitly accept the invitation.\n\n+ Invitations to grant the owner role cannot be sent using\n`setIamPolicy()`; they must be sent only using the Cloud Platform Console.\n\n+ Membership changes that leave the project without any owners that have\naccepted the Terms of Service (ToS) will be rejected.\n\n+ If the project is not part of an organization, there must be at least\none owner who has accepted the Terms of Service (ToS) agreement in the\npolicy. Calling `setIamPolicy()` to remove the last ToS-accepted owner\nfrom the policy will fail. This restriction also applies to legacy\nprojects that no longer have owners who have accepted the ToS. Edits to\nIAM policies will be rejected until the lack of a ToS-accepting owner is\nrectified.\n\n+ This method will replace the existing policy, and cannot be used to\nappend additional IAM settings.\n\nNote: Removing service accounts from policies or changing their roles\ncan render services completely inoperable. It is important to understand\nhow the service account is being used before removing or updating its\nroles.", + "flatPath": "v1beta1/projects/{resource}:setIamPolicy", + "httpMethod": "POST", + "id": "cloudresourcemanager.projects.setIamPolicy", + "parameterOrder": [ + "resource" + ], + "parameters": { + "resource": { + "description": "REQUIRED: The resource for which the policy is being specified.\nSee the operation documentation for the appropriate value for this field.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/projects/{resource}:setIamPolicy", + "request": { + "$ref": "SetIamPolicyRequest" + }, + "response": { + "$ref": "Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified Project.", + "flatPath": "v1beta1/projects/{resource}:testIamPermissions", + "httpMethod": "POST", + "id": "cloudresourcemanager.projects.testIamPermissions", + "parameterOrder": [ + "resource" + ], + "parameters": { + "resource": { + "description": "REQUIRED: The resource for which the policy detail is being requested.\nSee the operation documentation for the appropriate value for this field.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/projects/{resource}:testIamPermissions", + "request": { + "$ref": "TestIamPermissionsRequest" + }, + "response": { + "$ref": "TestIamPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + }, + "undelete": { + "description": "Restores the Project identified by the specified\n`project_id` (for example, `my-project-123`).\nYou can only use this method for a Project that has a lifecycle state of\nDELETE_REQUESTED.\nAfter deletion starts, the Project cannot be restored.\n\nThe caller must have modify permissions for this Project.", + "flatPath": "v1beta1/projects/{projectId}:undelete", + "httpMethod": "POST", + "id": "cloudresourcemanager.projects.undelete", + "parameterOrder": [ + "projectId" + ], + "parameters": { + "projectId": { + "description": "The project ID (for example, `foo-bar-123`).\n\nRequired.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/projects/{projectId}:undelete", + "request": { + "$ref": "UndeleteProjectRequest" + }, + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "update": { + "description": "Updates the attributes of the Project identified by the specified\n`project_id` (for example, `my-project-123`).\n\nThe caller must have modify permissions for this Project.", + "flatPath": "v1beta1/projects/{projectId}", + "httpMethod": "PUT", + "id": "cloudresourcemanager.projects.update", + "parameterOrder": [ + "projectId" + ], + "parameters": { + "projectId": { + "description": "The project ID (for example, `my-project-123`).\n\nRequired.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/projects/{projectId}", + "request": { + "$ref": "Project" + }, + "response": { + "$ref": "Project" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + } + }, + "revision": "20180315", + "rootUrl": "https://cloudresourcemanager.googleapis.com/", + "schemas": { + "Ancestor": { + "description": "Identifying information for a single ancestor of a project.", + "id": "Ancestor", + "properties": { + "resourceId": { + "$ref": "ResourceId", + "description": "Resource id of the ancestor." + } + }, + "type": "object" + }, + "AuditConfig": { + "description": "Specifies the audit configuration for a service.\nThe configuration determines which permission types are logged, and what\nidentities, if any, are exempted from logging.\nAn AuditConfig must have one or more AuditLogConfigs.\n\nIf there are AuditConfigs for both `allServices` and a specific service,\nthe union of the two AuditConfigs is used for that service: the log_types\nspecified in each AuditConfig are enabled, and the exempted_members in each\nAuditLogConfig are exempted.\n\nExample Policy with multiple AuditConfigs:\n\n {\n \"audit_configs\": [\n {\n \"service\": \"allServices\"\n \"audit_log_configs\": [\n {\n \"log_type\": \"DATA_READ\",\n \"exempted_members\": [\n \"user:foo@gmail.com\"\n ]\n },\n {\n \"log_type\": \"DATA_WRITE\",\n },\n {\n \"log_type\": \"ADMIN_READ\",\n }\n ]\n },\n {\n \"service\": \"fooservice.googleapis.com\"\n \"audit_log_configs\": [\n {\n \"log_type\": \"DATA_READ\",\n },\n {\n \"log_type\": \"DATA_WRITE\",\n \"exempted_members\": [\n \"user:bar@gmail.com\"\n ]\n }\n ]\n }\n ]\n }\n\nFor fooservice, this policy enables DATA_READ, DATA_WRITE and ADMIN_READ\nlogging. It also exempts foo@gmail.com from DATA_READ logging, and\nbar@gmail.com from DATA_WRITE logging.", + "id": "AuditConfig", + "properties": { + "auditLogConfigs": { + "description": "The configuration for logging of each type of permission.\nNext ID: 4", + "items": { + "$ref": "AuditLogConfig" + }, + "type": "array" + }, + "service": { + "description": "Specifies a service that will be enabled for audit logging.\nFor example, `storage.googleapis.com`, `cloudsql.googleapis.com`.\n`allServices` is a special value that covers all services.", "type": "string" } }, - "id": "ListProjectsResponse" + "type": "object" }, "AuditLogConfig": { "description": "Provides the configuration for logging a type of permissions.\nExample:\n\n {\n \"audit_log_configs\": [\n {\n \"log_type\": \"DATA_READ\",\n \"exempted_members\": [\n \"user:foo@gmail.com\"\n ]\n },\n {\n \"log_type\": \"DATA_WRITE\",\n }\n ]\n }\n\nThis enables 'DATA_READ' and 'DATA_WRITE' logging, while exempting\nfoo@gmail.com from DATA_READ logging.", - "type": "object", + "id": "AuditLogConfig", "properties": { "exemptedMembers": { "description": "Specifies the identities that do not cause logging for this type of\npermission.\nFollows the same format of Binding.members.", - "type": "array", "items": { "type": "string" - } + }, + "type": "array" }, "logType": { "description": "The log type that this config enables.", - "type": "string", + "enum": [ + "LOG_TYPE_UNSPECIFIED", + "ADMIN_READ", + "DATA_WRITE", + "DATA_READ" + ], "enumDescriptions": [ "Default case. Should never be this.", "Admin reads. Example: CloudIAM getIamPolicy", "Data writes. Example: CloudSQL Users create", "Data reads. Example: CloudSQL Users list" ], - "enum": [ - "LOG_TYPE_UNSPECIFIED", - "ADMIN_READ", - "DATA_WRITE", - "DATA_READ" - ] + "type": "string" } }, - "id": "AuditLogConfig" + "type": "object" }, - "GetAncestryRequest": { - "description": "The request sent to the\nGetAncestry\nmethod.", - "type": "object", - "properties": {}, - "id": "GetAncestryRequest" - }, - "Project": { - "description": "A Project is a high-level Google Cloud Platform entity. It is a\ncontainer for ACLs, APIs, App Engine Apps, VMs, and other\nGoogle Cloud Platform resources.", - "type": "object", + "Binding": { + "description": "Associates `members` with a `role`.", + "id": "Binding", "properties": { - "name": { - "description": "The user-assigned display name of the Project.\nIt must be 4 to 30 characters.\nAllowed characters are: lowercase and uppercase letters, numbers,\nhyphen, single-quote, double-quote, space, and exclamation point.\n\nExample: \u003ccode\u003eMy Project\u003c/code\u003e\nRead-write.", - "type": "string" - }, - "projectId": { - "description": "The unique, user-assigned ID of the Project.\nIt must be 6 to 30 lowercase letters, digits, or hyphens.\nIt must start with a letter.\nTrailing hyphens are prohibited.\n\nExample: \u003ccode\u003etokyo-rain-123\u003c/code\u003e\nRead-only after creation.", - "type": "string" - }, - "lifecycleState": { - "enumDescriptions": [ - "Unspecified state. This is only used/useful for distinguishing\nunset values.", - "The normal and active state.", - "The project has been marked for deletion by the user\n(by invoking DeleteProject)\nor by the system (Google Cloud Platform).\nThis can generally be reversed by invoking UndeleteProject.", - "This lifecycle state is no longer used and is not returned by the API." - ], - "enum": [ - "LIFECYCLE_STATE_UNSPECIFIED", - "ACTIVE", - "DELETE_REQUESTED", - "DELETE_IN_PROGRESS" - ], - "description": "The Project lifecycle state.\n\nRead-only.", - "type": "string" - }, - "projectNumber": { - "description": "The number uniquely identifying the project.\n\nExample: \u003ccode\u003e415104041262\u003c/code\u003e\nRead-only.", - "format": "int64", - "type": "string" - }, - "parent": { - "$ref": "ResourceId", - "description": "An optional reference to a parent Resource.\n\nSupported parent types include \"organization\" and \"folder\". Once set, the\nparent cannot be cleared. The `parent` can be set on creation or using the\n`UpdateProject` method; the end user must have the\n`resourcemanager.projects.create` permission on the parent.\n\nRead-write." - }, - "labels": { - "additionalProperties": { + "members": { + "description": "Specifies the identities requesting access for a Cloud Platform resource.\n`members` can have the following values:\n\n* `allUsers`: A special identifier that represents anyone who is\n on the internet; with or without a Google account.\n\n* `allAuthenticatedUsers`: A special identifier that represents anyone\n who is authenticated with a Google account or a service account.\n\n* `user:{emailid}`: An email address that represents a specific Google\n account. For example, `alice@gmail.com` or `joe@example.com`.\n\n\n* `serviceAccount:{emailid}`: An email address that represents a service\n account. For example, `my-other-app@appspot.gserviceaccount.com`.\n\n* `group:{emailid}`: An email address that represents a Google group.\n For example, `admins@example.com`.\n\n\n* `domain:{domain}`: A Google Apps domain name that represents all the\n users of that domain. For example, `google.com` or `example.com`.\n\n", + "items": { "type": "string" }, - "description": "The labels associated with this Project.\n\nLabel keys must be between 1 and 63 characters long and must conform\nto the following regular expression: \\[a-z\\](\\[-a-z0-9\\]*\\[a-z0-9\\])?.\n\nLabel values must be between 0 and 63 characters long and must conform\nto the regular expression (\\[a-z\\](\\[-a-z0-9\\]*\\[a-z0-9\\])?)?.\n\nNo more than 256 labels can be associated with a given resource.\n\nClients should store labels in a representation such as JSON that does not\ndepend on specific characters being disallowed.\n\nExample: \u003ccode\u003e\"environment\" : \"dev\"\u003c/code\u003e\nRead-write.", - "type": "object" + "type": "array" }, - "createTime": { - "description": "Creation time.\n\nRead-only.", - "format": "google-datetime", + "role": { + "description": "Role that is assigned to `members`.\nFor example, `roles/viewer`, `roles/editor`, or `roles/owner`.\nRequired", "type": "string" } }, - "id": "Project" + "type": "object" }, - "TestIamPermissionsRequest": { - "description": "Request message for `TestIamPermissions` method.", - "type": "object", - "properties": { - "permissions": { - "description": "The set of permissions to check for the `resource`. Permissions with\nwildcards (such as '*' or 'storage.*') are not allowed. For more\ninformation see\n[IAM Overview](https://cloud.google.com/iam/docs/overview#permissions).", - "type": "array", - "items": { - "type": "string" - } - } - }, - "id": "TestIamPermissionsRequest" - }, - "Policy": { - "description": "Defines an Identity and Access Management (IAM) policy. It is used to\nspecify access control policies for Cloud Platform resources.\n\n\nA `Policy` consists of a list of `bindings`. A `Binding` binds a list of\n`members` to a `role`, where the members can be user accounts, Google groups,\nGoogle domains, and service accounts. A `role` is a named list of permissions\ndefined by IAM.\n\n**Example**\n\n {\n \"bindings\": [\n {\n \"role\": \"roles/owner\",\n \"members\": [\n \"user:mike@example.com\",\n \"group:admins@example.com\",\n \"domain:google.com\",\n \"serviceAccount:my-other-app@appspot.gserviceaccount.com\",\n ]\n },\n {\n \"role\": \"roles/viewer\",\n \"members\": [\"user:sean@example.com\"]\n }\n ]\n }\n\nFor a description of IAM and its features, see the\n[IAM developer's guide](https://cloud.google.com/iam/docs).", - "type": "object", - "properties": { - "etag": { - "description": "`etag` is used for optimistic concurrency control as a way to help\nprevent simultaneous updates of a policy from overwriting each other.\nIt is strongly suggested that systems make use of the `etag` in the\nread-modify-write cycle to perform policy updates in order to avoid race\nconditions: An `etag` is returned in the response to `getIamPolicy`, and\nsystems are expected to put that etag in the request to `setIamPolicy` to\nensure that their change will be applied to the same version of the policy.\n\nIf no `etag` is provided in the call to `setIamPolicy`, then the existing\npolicy is overwritten blindly.", - "format": "byte", - "type": "string" - }, - "version": { - "description": "Deprecated.", - "format": "int32", - "type": "integer" - }, - "auditConfigs": { - "description": "Specifies cloud audit logging configuration for this policy.", - "type": "array", - "items": { - "$ref": "AuditConfig" - } - }, - "bindings": { - "description": "Associates a list of `members` to a `role`.\n`bindings` with no members will result in an error.", - "type": "array", - "items": { - "$ref": "Binding" - } - } - }, - "id": "Policy" + "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" }, "FolderOperation": { - "id": "FolderOperation", "description": "Metadata describing a long running folder operation", - "type": "object", + "id": "FolderOperation", "properties": { - "displayName": { - "description": "The display name of the folder.", - "type": "string" - }, - "sourceParent": { - "description": "The resource name of the folder's parent.\nOnly applicable when the operation_type is MOVE.", - "type": "string" - }, "destinationParent": { "description": "The resource name of the folder or organization we are either creating\nthe folder under or moving the folder to.", "type": "string" }, + "displayName": { + "description": "The display name of the folder.", + "type": "string" + }, "operationType": { "description": "The type of this operation.", - "type": "string", + "enum": [ + "OPERATION_TYPE_UNSPECIFIED", + "CREATE", + "MOVE" + ], "enumDescriptions": [ "Operation type not specified.", "A create folder operation.", "A move folder operation." ], - "enum": [ - "OPERATION_TYPE_UNSPECIFIED", - "CREATE", - "MOVE" - ] + "type": "string" + }, + "sourceParent": { + "description": "The resource name of the folder's parent.\nOnly applicable when the operation_type is MOVE.", + "type": "string" } - } + }, + "type": "object" }, "FolderOperationError": { - "id": "FolderOperationError", "description": "A classification of the Folder Operation error.", - "type": "object", + "id": "FolderOperationError", "properties": { "errorMessageId": { "description": "The type of operation error experienced.", - "type": "string", + "enum": [ + "ERROR_TYPE_UNSPECIFIED", + "ACTIVE_FOLDER_HEIGHT_VIOLATION", + "MAX_CHILD_FOLDERS_VIOLATION", + "FOLDER_NAME_UNIQUENESS_VIOLATION", + "RESOURCE_DELETED_VIOLATION", + "PARENT_DELETED_VIOLATION", + "CYCLE_INTRODUCED_VIOLATION", + "FOLDER_BEING_MOVED_VIOLATION", + "FOLDER_TO_DELETE_NON_EMPTY_VIOLATION", + "DELETED_FOLDER_HEIGHT_VIOLATION" + ], "enumDescriptions": [ "The error type was unrecognized or unspecified.", "The attempted action would violate the max folder depth constraint.", @@ -826,25 +725,232 @@ "The folder the caller is trying to delete contains active resources.", "The attempted action would violate the max deleted folder depth\nconstraint." ], - "enum": [ - "ERROR_TYPE_UNSPECIFIED", - "ACTIVE_FOLDER_HEIGHT_VIOLATION", - "MAX_CHILD_FOLDERS_VIOLATION", - "FOLDER_NAME_UNIQUENESS_VIOLATION", - "RESOURCE_DELETED_VIOLATION", - "PARENT_DELETED_VIOLATION", - "CYCLE_INTRODUCED_VIOLATION", - "FOLDER_BEING_MOVED_VIOLATION", - "FOLDER_TO_DELETE_NON_EMPTY_VIOLATION", - "DELETED_FOLDER_HEIGHT_VIOLATION" - ] + "type": "string" } - } + }, + "type": "object" + }, + "GetAncestryRequest": { + "description": "The request sent to the\nGetAncestry\nmethod.", + "id": "GetAncestryRequest", + "properties": {}, + "type": "object" + }, + "GetAncestryResponse": { + "description": "Response from the GetAncestry method.", + "id": "GetAncestryResponse", + "properties": { + "ancestor": { + "description": "Ancestors are ordered from bottom to top of the resource hierarchy. The\nfirst ancestor is the project itself, followed by the project's parent,\netc.", + "items": { + "$ref": "Ancestor" + }, + "type": "array" + } + }, + "type": "object" + }, + "GetIamPolicyRequest": { + "description": "Request message for `GetIamPolicy` method.", + "id": "GetIamPolicyRequest", + "properties": {}, + "type": "object" + }, + "ListOrganizationsResponse": { + "description": "The response returned from the `ListOrganizations` method.", + "id": "ListOrganizationsResponse", + "properties": { + "nextPageToken": { + "description": "A pagination token to be used to retrieve the next page of results. If the\nresult is too large to fit within the page size specified in the request,\nthis field will be set with a token that can be used to fetch the next page\nof results. If this field is empty, it indicates that this response\ncontains the last page of results.", + "type": "string" + }, + "organizations": { + "description": "The list of Organizations that matched the list query, possibly paginated.", + "items": { + "$ref": "Organization" + }, + "type": "array" + } + }, + "type": "object" + }, + "ListProjectsResponse": { + "description": "A page of the response received from the\nListProjects\nmethod.\n\nA paginated response where more pages are available has\n`next_page_token` set. This token can be used in a subsequent request to\nretrieve the next request page.", + "id": "ListProjectsResponse", + "properties": { + "nextPageToken": { + "description": "Pagination token.\n\nIf the result set is too large to fit in a single response, this token\nis returned. It encodes the position of the current result cursor.\nFeeding this value into a new list request with the `page_token` parameter\ngives the next page of the results.\n\nWhen `next_page_token` is not filled in, there is no next page and\nthe list returned is the last page in the result set.\n\nPagination tokens have a limited lifetime.", + "type": "string" + }, + "projects": { + "description": "The list of Projects that matched the list filter. This list can\nbe paginated.", + "items": { + "$ref": "Project" + }, + "type": "array" + } + }, + "type": "object" + }, + "Organization": { + "description": "The root node in the resource hierarchy to which a particular entity's\n(e.g., company) resources belong.", + "id": "Organization", + "properties": { + "creationTime": { + "description": "Timestamp when the Organization was created. Assigned by the server.\n@OutputOnly", + "format": "google-datetime", + "type": "string" + }, + "displayName": { + "description": "A human-readable string that refers to the Organization in the\nGCP Console UI. This string is set by the server and cannot be\nchanged. The string will be set to the primary domain (for example,\n\"google.com\") of the G Suite customer that owns the organization.\n@OutputOnly", + "type": "string" + }, + "lifecycleState": { + "description": "The organization's current lifecycle state. Assigned by the server.\n@OutputOnly", + "enum": [ + "LIFECYCLE_STATE_UNSPECIFIED", + "ACTIVE", + "DELETE_REQUESTED" + ], + "enumDescriptions": [ + "Unspecified state. This is only useful for distinguishing unset values.", + "The normal and active state.", + "The organization has been marked for deletion by the user." + ], + "type": "string" + }, + "name": { + "description": "Output Only. The resource name of the organization. This is the\norganization's relative path in the API. Its format is\n\"organizations/[organization_id]\". For example, \"organizations/1234\".", + "type": "string" + }, + "organizationId": { + "description": "An immutable id for the Organization that is assigned on creation. This\nshould be omitted when creating a new Organization.\nThis field is read-only.", + "type": "string" + }, + "owner": { + "$ref": "OrganizationOwner", + "description": "The owner of this Organization. The owner should be specified on\ncreation. Once set, it cannot be changed.\nThis field is required." + } + }, + "type": "object" + }, + "OrganizationOwner": { + "description": "The entity that owns an Organization. The lifetime of the Organization and\nall of its descendants are bound to the `OrganizationOwner`. If the\n`OrganizationOwner` is deleted, the Organization and all its descendants will\nbe deleted.", + "id": "OrganizationOwner", + "properties": { + "directoryCustomerId": { + "description": "The G Suite customer id used in the Directory API.", + "type": "string" + } + }, + "type": "object" + }, + "Policy": { + "description": "Defines an Identity and Access Management (IAM) policy. It is used to\nspecify access control policies for Cloud Platform resources.\n\n\nA `Policy` consists of a list of `bindings`. A `Binding` binds a list of\n`members` to a `role`, where the members can be user accounts, Google groups,\nGoogle domains, and service accounts. A `role` is a named list of permissions\ndefined by IAM.\n\n**Example**\n\n {\n \"bindings\": [\n {\n \"role\": \"roles/owner\",\n \"members\": [\n \"user:mike@example.com\",\n \"group:admins@example.com\",\n \"domain:google.com\",\n \"serviceAccount:my-other-app@appspot.gserviceaccount.com\",\n ]\n },\n {\n \"role\": \"roles/viewer\",\n \"members\": [\"user:sean@example.com\"]\n }\n ]\n }\n\nFor a description of IAM and its features, see the\n[IAM developer's guide](https://cloud.google.com/iam/docs).", + "id": "Policy", + "properties": { + "auditConfigs": { + "description": "Specifies cloud audit logging configuration for this policy.", + "items": { + "$ref": "AuditConfig" + }, + "type": "array" + }, + "bindings": { + "description": "Associates a list of `members` to a `role`.\n`bindings` with no members will result in an error.", + "items": { + "$ref": "Binding" + }, + "type": "array" + }, + "etag": { + "description": "`etag` is used for optimistic concurrency control as a way to help\nprevent simultaneous updates of a policy from overwriting each other.\nIt is strongly suggested that systems make use of the `etag` in the\nread-modify-write cycle to perform policy updates in order to avoid race\nconditions: An `etag` is returned in the response to `getIamPolicy`, and\nsystems are expected to put that etag in the request to `setIamPolicy` to\nensure that their change will be applied to the same version of the policy.\n\nIf no `etag` is provided in the call to `setIamPolicy`, then the existing\npolicy is overwritten blindly.", + "format": "byte", + "type": "string" + }, + "version": { + "description": "Deprecated.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "Project": { + "description": "A Project is a high-level Google Cloud Platform entity. It is a\ncontainer for ACLs, APIs, App Engine Apps, VMs, and other\nGoogle Cloud Platform resources.", + "id": "Project", + "properties": { + "createTime": { + "description": "Creation time.\n\nRead-only.", + "format": "google-datetime", + "type": "string" + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "The labels associated with this Project.\n\nLabel keys must be between 1 and 63 characters long and must conform\nto the following regular expression: \\[a-z\\](\\[-a-z0-9\\]*\\[a-z0-9\\])?.\n\nLabel values must be between 0 and 63 characters long and must conform\nto the regular expression (\\[a-z\\](\\[-a-z0-9\\]*\\[a-z0-9\\])?)?.\n\nNo more than 256 labels can be associated with a given resource.\n\nClients should store labels in a representation such as JSON that does not\ndepend on specific characters being disallowed.\n\nExample: \u003ccode\u003e\"environment\" : \"dev\"\u003c/code\u003e\nRead-write.", + "type": "object" + }, + "lifecycleState": { + "description": "The Project lifecycle state.\n\nRead-only.", + "enum": [ + "LIFECYCLE_STATE_UNSPECIFIED", + "ACTIVE", + "DELETE_REQUESTED", + "DELETE_IN_PROGRESS" + ], + "enumDescriptions": [ + "Unspecified state. This is only used/useful for distinguishing\nunset values.", + "The normal and active state.", + "The project has been marked for deletion by the user\n(by invoking DeleteProject)\nor by the system (Google Cloud Platform).\nThis can generally be reversed by invoking UndeleteProject.", + "This lifecycle state is no longer used and is not returned by the API." + ], + "type": "string" + }, + "name": { + "description": "The user-assigned display name of the Project.\nIt must be 4 to 30 characters.\nAllowed characters are: lowercase and uppercase letters, numbers,\nhyphen, single-quote, double-quote, space, and exclamation point.\n\nExample: \u003ccode\u003eMy Project\u003c/code\u003e\nRead-write.", + "type": "string" + }, + "parent": { + "$ref": "ResourceId", + "description": "An optional reference to a parent Resource.\n\nSupported parent types include \"organization\" and \"folder\". Once set, the\nparent cannot be cleared. The `parent` can be set on creation or using the\n`UpdateProject` method; the end user must have the\n`resourcemanager.projects.create` permission on the parent.\n\nRead-write." + }, + "projectId": { + "description": "The unique, user-assigned ID of the Project.\nIt must be 6 to 30 lowercase letters, digits, or hyphens.\nIt must start with a letter.\nTrailing hyphens are prohibited.\n\nExample: \u003ccode\u003etokyo-rain-123\u003c/code\u003e\nRead-only after creation.", + "type": "string" + }, + "projectNumber": { + "description": "The number uniquely identifying the project.\n\nExample: \u003ccode\u003e415104041262\u003c/code\u003e\nRead-only.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "ProjectCreationStatus": { + "description": "A status object which is used as the `metadata` field for the Operation\nreturned by CreateProject. It provides insight for when significant phases of\nProject creation have completed.", + "id": "ProjectCreationStatus", + "properties": { + "createTime": { + "description": "Creation time of the project creation workflow.", + "format": "google-datetime", + "type": "string" + }, + "gettable": { + "description": "True if the project can be retrieved using GetProject. No other operations\non the project are guaranteed to work until the project creation is\ncomplete.", + "type": "boolean" + }, + "ready": { + "description": "True if the project creation process is complete.", + "type": "boolean" + } + }, + "type": "object" }, "ResourceId": { - "id": "ResourceId", "description": "A container to reference an id for any resource type. A `resource` in Google\nCloud Platform is a generic term for something you (a developer) may want to\ninteract with through one of our API's. Some examples are an App Engine app,\na Compute Engine instance, a Cloud SQL database, and so on.", - "type": "object", + "id": "ResourceId", "properties": { "id": { "description": "Required field for the type-specific id. This should correspond to the id\nused in the type-specific API's.", @@ -854,167 +960,61 @@ "description": "Required field representing the resource type this id is for.\nAt present, the valid types are \"project\", \"folder\", and \"organization\".", "type": "string" } - } - }, - "AuditConfig": { - "id": "AuditConfig", - "description": "Specifies the audit configuration for a service.\nThe configuration determines which permission types are logged, and what\nidentities, if any, are exempted from logging.\nAn AuditConfig must have one or more AuditLogConfigs.\n\nIf there are AuditConfigs for both `allServices` and a specific service,\nthe union of the two AuditConfigs is used for that service: the log_types\nspecified in each AuditConfig are enabled, and the exempted_members in each\nAuditConfig are exempted.\n\nExample Policy with multiple AuditConfigs:\n\n {\n \"audit_configs\": [\n {\n \"service\": \"allServices\"\n \"audit_log_configs\": [\n {\n \"log_type\": \"DATA_READ\",\n \"exempted_members\": [\n \"user:foo@gmail.com\"\n ]\n },\n {\n \"log_type\": \"DATA_WRITE\",\n },\n {\n \"log_type\": \"ADMIN_READ\",\n }\n ]\n },\n {\n \"service\": \"fooservice.googleapis.com\"\n \"audit_log_configs\": [\n {\n \"log_type\": \"DATA_READ\",\n },\n {\n \"log_type\": \"DATA_WRITE\",\n \"exempted_members\": [\n \"user:bar@gmail.com\"\n ]\n }\n ]\n }\n ]\n }\n\nFor fooservice, this policy enables DATA_READ, DATA_WRITE and ADMIN_READ\nlogging. It also exempts foo@gmail.com from DATA_READ logging, and\nbar@gmail.com from DATA_WRITE logging.", - "type": "object", - "properties": { - "service": { - "description": "Specifies a service that will be enabled for audit logging.\nFor example, `storage.googleapis.com`, `cloudsql.googleapis.com`.\n`allServices` is a special value that covers all services.", - "type": "string" - }, - "auditLogConfigs": { - "description": "The configuration for logging of each type of permission.\nNext ID: 4", - "type": "array", - "items": { - "$ref": "AuditLogConfig" - } - } - } - }, - "Ancestor": { - "id": "Ancestor", - "description": "Identifying information for a single ancestor of a project.", - "type": "object", - "properties": { - "resourceId": { - "$ref": "ResourceId", - "description": "Resource id of the ancestor." - } - } + }, + "type": "object" }, "SetIamPolicyRequest": { "description": "Request message for `SetIamPolicy` method.", - "type": "object", + "id": "SetIamPolicyRequest", "properties": { + "policy": { + "$ref": "Policy", + "description": "REQUIRED: The complete policy to be applied to the `resource`. The size of\nthe policy is limited to a few 10s of KB. An empty policy is a\nvalid policy but certain Cloud Platform services (such as Projects)\nmight reject them." + }, "updateMask": { "description": "OPTIONAL: A FieldMask specifying which fields of the policy to modify. Only\nthe fields in the mask will be modified. If no mask is provided, the\nfollowing default mask is used:\npaths: \"bindings, etag\"\nThis field is only used by Cloud IAM.", "format": "google-fieldmask", "type": "string" - }, - "policy": { - "$ref": "Policy", - "description": "REQUIRED: The complete policy to be applied to the `resource`. The size of\nthe policy is limited to a few 10s of KB. An empty policy is a\nvalid policy but certain Cloud Platform services (such as Projects)\nmight reject them." } }, - "id": "SetIamPolicyRequest" + "type": "object" }, - "ListOrganizationsResponse": { - "id": "ListOrganizationsResponse", - "description": "The response returned from the `ListOrganizations` method.", - "type": "object", + "TestIamPermissionsRequest": { + "description": "Request message for `TestIamPermissions` method.", + "id": "TestIamPermissionsRequest", "properties": { - "organizations": { - "description": "The list of Organizations that matched the list query, possibly paginated.", - "type": "array", - "items": { - "$ref": "Organization" - } - }, - "nextPageToken": { - "description": "A pagination token to be used to retrieve the next page of results. If the\nresult is too large to fit within the page size specified in the request,\nthis field will be set with a token that can be used to fetch the next page\nof results. If this field is empty, it indicates that this response\ncontains the last page of results.", - "type": "string" - } - } - }, - "Binding": { - "description": "Associates `members` with a `role`.", - "type": "object", - "properties": { - "members": { - "description": "Specifies the identities requesting access for a Cloud Platform resource.\n`members` can have the following values:\n\n* `allUsers`: A special identifier that represents anyone who is\n on the internet; with or without a Google account.\n\n* `allAuthenticatedUsers`: A special identifier that represents anyone\n who is authenticated with a Google account or a service account.\n\n* `user:{emailid}`: An email address that represents a specific Google\n account. For example, `alice@gmail.com` or `joe@example.com`.\n\n\n* `serviceAccount:{emailid}`: An email address that represents a service\n account. For example, `my-other-app@appspot.gserviceaccount.com`.\n\n* `group:{emailid}`: An email address that represents a Google group.\n For example, `admins@example.com`.\n\n\n* `domain:{domain}`: A Google Apps domain name that represents all the\n users of that domain. For example, `google.com` or `example.com`.\n\n", - "type": "array", + "permissions": { + "description": "The set of permissions to check for the `resource`. Permissions with\nwildcards (such as '*' or 'storage.*') are not allowed. For more\ninformation see\n[IAM Overview](https://cloud.google.com/iam/docs/overview#permissions).", "items": { "type": "string" - } - }, - "role": { - "description": "Role that is assigned to `members`.\nFor example, `roles/viewer`, `roles/editor`, or `roles/owner`.\nRequired", - "type": "string" + }, + "type": "array" } }, - "id": "Binding" + "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 `{}`.", - "type": "object", - "properties": {}, - "id": "Empty" - }, - "Organization": { - "id": "Organization", - "description": "The root node in the resource hierarchy to which a particular entity's\n(e.g., company) resources belong.", - "type": "object", + "TestIamPermissionsResponse": { + "description": "Response message for `TestIamPermissions` method.", + "id": "TestIamPermissionsResponse", "properties": { - "creationTime": { - "description": "Timestamp when the Organization was created. Assigned by the server.\n@OutputOnly", - "format": "google-datetime", - "type": "string" - }, - "owner": { - "$ref": "OrganizationOwner", - "description": "The owner of this Organization. The owner should be specified on\ncreation. Once set, it cannot be changed.\nThis field is required." - }, - "name": { - "description": "Output Only. The resource name of the organization. This is the\norganization's relative path in the API. Its format is\n\"organizations/[organization_id]\". For example, \"organizations/1234\".", - "type": "string" - }, - "organizationId": { - "description": "An immutable id for the Organization that is assigned on creation. This\nshould be omitted when creating a new Organization.\nThis field is read-only.\nThis field is deprecated and will be removed in v1. Use name instead.", - "type": "string" - }, - "lifecycleState": { - "description": "The organization's current lifecycle state. Assigned by the server.\n@OutputOnly", - "type": "string", - "enumDescriptions": [ - "Unspecified state. This is only useful for distinguishing unset values.", - "The normal and active state.", - "The organization has been marked for deletion by the user." - ], - "enum": [ - "LIFECYCLE_STATE_UNSPECIFIED", - "ACTIVE", - "DELETE_REQUESTED" - ] - }, - "displayName": { - "description": "A friendly string to be used to refer to the Organization in the UI.\nAssigned by the server, set to the primary domain of the G Suite\ncustomer that owns the organization.\n@OutputOnly", - "type": "string" + "permissions": { + "description": "A subset of `TestPermissionsRequest.permissions` that the caller is\nallowed.", + "items": { + "type": "string" + }, + "type": "array" } - } + }, + "type": "object" }, "UndeleteProjectRequest": { - "id": "UndeleteProjectRequest", "description": "The request sent to the UndeleteProject\nmethod.", - "type": "object", - "properties": {} + "id": "UndeleteProjectRequest", + "properties": {}, + "type": "object" } }, - "icons": { - "x32": "http://www.google.com/images/icons/product/search-32.gif", - "x16": "http://www.google.com/images/icons/product/search-16.gif" - }, - "protocol": "rest", - "canonicalName": "Cloud Resource Manager", - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/cloud-platform.read-only": { - "description": "View your data across Google Cloud Platform services" - }, - "https://www.googleapis.com/auth/cloud-platform": { - "description": "View and manage your data across Google Cloud Platform services" - } - } - } - }, - "rootUrl": "https://cloudresourcemanager.googleapis.com/", - "ownerDomain": "google.com", - "name": "cloudresourcemanager", - "batchPath": "batch", - "fullyEncodeReservedExpansion": true, - "title": "Google Cloud Resource Manager API", - "ownerName": "Google" -} + "servicePath": "", + "title": "Cloud Resource Manager API", + "version": "v1beta1" +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/cloudresourcemanager/v1beta1/cloudresourcemanager-gen.go b/vendor/google.golang.org/api/cloudresourcemanager/v1beta1/cloudresourcemanager-gen.go index 4ebf128d1..b7ce4a410 100644 --- a/vendor/google.golang.org/api/cloudresourcemanager/v1beta1/cloudresourcemanager-gen.go +++ b/vendor/google.golang.org/api/cloudresourcemanager/v1beta1/cloudresourcemanager-gen.go @@ -1,4 +1,4 @@ -// Package cloudresourcemanager provides access to the Google Cloud Resource Manager API. +// Package cloudresourcemanager provides access to the Cloud Resource Manager API. // // See https://cloud.google.com/resource-manager // @@ -139,7 +139,7 @@ func (s *Ancestor) MarshalJSON() ([]byte, error) { // log_types // specified in each AuditConfig are enabled, and the exempted_members // in each -// AuditConfig are exempted. +// AuditLogConfig are exempted. // // Example Policy with multiple AuditConfigs: // @@ -625,11 +625,14 @@ type Organization struct { // @OutputOnly CreationTime string `json:"creationTime,omitempty"` - // DisplayName: A friendly string to be used to refer to the - // Organization in the UI. - // Assigned by the server, set to the primary domain of the G - // Suite - // customer that owns the organization. + // DisplayName: A human-readable string that refers to the Organization + // in the + // GCP Console UI. This string is set by the server and cannot + // be + // changed. The string will be set to the primary domain (for + // example, + // "google.com") of the G Suite customer that owns the + // organization. // @OutputOnly DisplayName string `json:"displayName,omitempty"` @@ -656,7 +659,6 @@ type Organization struct { // on creation. This // should be omitted when creating a new Organization. // This field is read-only. - // This field is deprecated and will be removed in v1. Use name instead. OrganizationId string `json:"organizationId,omitempty"` // Owner: The owner of this Organization. The owner should be specified @@ -700,8 +702,8 @@ func (s *Organization) MarshalJSON() ([]byte, error) { // descendants will // be deleted. type OrganizationOwner struct { - // DirectoryCustomerId: The Google for Work customer id used in the - // Directory API. + // DirectoryCustomerId: The G Suite customer id used in the Directory + // API. DirectoryCustomerId string `json:"directoryCustomerId,omitempty"` // ForceSendFields is a list of field names (e.g. "DirectoryCustomerId") @@ -1464,7 +1466,7 @@ func (r *OrganizationsService) List() *OrganizationsListCall { // // Organizations may be filtered by `owner.directoryCustomerId` or // by -// `domain`, where the domain is a Google for Work domain, for +// `domain`, where the domain is a G Suite domain, for // example: // // |Filter|Description| @@ -1596,7 +1598,7 @@ func (c *OrganizationsListCall) Do(opts ...googleapi.CallOption) (*ListOrganizat // "parameterOrder": [], // "parameters": { // "filter": { - // "description": "An optional query string used to filter the Organizations to return in\nthe response. Filter rules are case-insensitive.\n\n\nOrganizations may be filtered by `owner.directoryCustomerId` or by\n`domain`, where the domain is a Google for Work domain, for example:\n\n|Filter|Description|\n|------|-----------|\n|owner.directorycustomerid:123456789|Organizations with `owner.directory_customer_id` equal to `123456789`.|\n|domain:google.com|Organizations corresponding to the domain `google.com`.|\n\nThis field is optional.", + // "description": "An optional query string used to filter the Organizations to return in\nthe response. Filter rules are case-insensitive.\n\n\nOrganizations may be filtered by `owner.directoryCustomerId` or by\n`domain`, where the domain is a G Suite domain, for example:\n\n|Filter|Description|\n|------|-----------|\n|owner.directorycustomerid:123456789|Organizations with `owner.directory_customer_id` equal to `123456789`.|\n|domain:google.com|Organizations corresponding to the domain `google.com`.|\n\nThis field is optional.", // "location": "query", // "type": "string" // }, @@ -2079,7 +2081,11 @@ type ProjectsCreateCall struct { // // Several APIs are activated automatically for the Project, // including -// Google Cloud Storage. +// Google Cloud Storage. The parent is identified by a +// specified +// ResourceId, which must include both an ID and a type, such +// as +// project, folder, or organization. func (r *ProjectsService) Create(project *Project) *ProjectsCreateCall { c := &ProjectsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.project = project @@ -2176,7 +2182,7 @@ func (c *ProjectsCreateCall) Do(opts ...googleapi.CallOption) (*Project, error) } return ret, nil // { - // "description": "Creates a Project resource.\n\nInitially, the Project resource is owned by its creator exclusively.\nThe creator can later grant permission to others to read or update the\nProject.\n\nSeveral APIs are activated automatically for the Project, including\nGoogle Cloud Storage.", + // "description": "Creates a Project resource.\n\nInitially, the Project resource is owned by its creator exclusively.\nThe creator can later grant permission to others to read or update the\nProject.\n\nSeveral APIs are activated automatically for the Project, including\nGoogle Cloud Storage. The parent is identified by a specified\nResourceId, which must include both an ID and a type, such as\nproject, folder, or organization.", // "flatPath": "v1beta1/projects", // "httpMethod": "POST", // "id": "cloudresourcemanager.projects.create", @@ -2214,11 +2220,8 @@ type ProjectsDeleteCall struct { // Delete: Marks the Project identified by the specified // `project_id` (for example, `my-project-123`) for deletion. -// This method will only affect the Project if the following criteria -// are met: -// -// + The Project does not have a billing account associated with it. -// + The Project has a lifecycle state of +// This method will only affect the Project if it has a lifecycle state +// of // ACTIVE. // // This method changes the Project's lifecycle state from @@ -2326,7 +2329,7 @@ func (c *ProjectsDeleteCall) Do(opts ...googleapi.CallOption) (*Empty, error) { } return ret, nil // { - // "description": "Marks the Project identified by the specified\n`project_id` (for example, `my-project-123`) for deletion.\nThis method will only affect the Project if the following criteria are met:\n\n+ The Project does not have a billing account associated with it.\n+ The Project has a lifecycle state of\nACTIVE.\n\nThis method changes the Project's lifecycle state from\nACTIVE\nto DELETE_REQUESTED.\nThe deletion starts at an unspecified time, at which point the project is\nno longer accessible.\n\nUntil the deletion completes, you can check the lifecycle state\nchecked by retrieving the Project with GetProject,\nand the Project remains visible to ListProjects.\nHowever, you cannot update the project.\n\nAfter the deletion completes, the Project is not retrievable by\nthe GetProject and\nListProjects methods.\n\nThe caller must have modify permissions for this Project.", + // "description": "Marks the Project identified by the specified\n`project_id` (for example, `my-project-123`) for deletion.\nThis method will only affect the Project if it has a lifecycle state of\nACTIVE.\n\nThis method changes the Project's lifecycle state from\nACTIVE\nto DELETE_REQUESTED.\nThe deletion starts at an unspecified time, at which point the project is\nno longer accessible.\n\nUntil the deletion completes, you can check the lifecycle state\nchecked by retrieving the Project with GetProject,\nand the Project remains visible to ListProjects.\nHowever, you cannot update the project.\n\nAfter the deletion completes, the Project is not retrievable by\nthe GetProject and\nListProjects methods.\n\nThe caller must have modify permissions for this Project.", // "flatPath": "v1beta1/projects/{projectId}", // "httpMethod": "DELETE", // "id": "cloudresourcemanager.projects.delete", diff --git a/vendor/google.golang.org/api/cloudresourcemanager/v2/cloudresourcemanager-api.json b/vendor/google.golang.org/api/cloudresourcemanager/v2/cloudresourcemanager-api.json new file mode 100644 index 000000000..1fe2d03a1 --- /dev/null +++ b/vendor/google.golang.org/api/cloudresourcemanager/v2/cloudresourcemanager-api.json @@ -0,0 +1,848 @@ +{ + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/cloud-platform": { + "description": "View and manage your data across Google Cloud Platform services" + }, + "https://www.googleapis.com/auth/cloud-platform.read-only": { + "description": "View your data across Google Cloud Platform services" + } + } + } + }, + "basePath": "", + "baseUrl": "https://cloudresourcemanager.googleapis.com/", + "batchPath": "batch", + "canonicalName": "Cloud Resource Manager", + "description": "The Google Cloud Resource Manager API provides methods for creating, reading, and updating project metadata.", + "discoveryVersion": "v1", + "documentationLink": "https://cloud.google.com/resource-manager", + "fullyEncodeReservedExpansion": true, + "icons": { + "x16": "http://www.google.com/images/icons/product/search-16.gif", + "x32": "http://www.google.com/images/icons/product/search-32.gif" + }, + "id": "cloudresourcemanager:v2", + "kind": "discovery#restDescription", + "name": "cloudresourcemanager", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "$.xgafv": { + "description": "V1 error format.", + "enum": [ + "1", + "2" + ], + "enumDescriptions": [ + "v1 error format", + "v2 error format" + ], + "location": "query", + "type": "string" + }, + "access_token": { + "description": "OAuth access token.", + "location": "query", + "type": "string" + }, + "alt": { + "default": "json", + "description": "Data format for response.", + "enum": [ + "json", + "media", + "proto" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json", + "Media download with context-dependent Content-Type", + "Responses with Content-Type of application/x-protobuf" + ], + "location": "query", + "type": "string" + }, + "bearer_token": { + "description": "OAuth bearer token.", + "location": "query", + "type": "string" + }, + "callback": { + "description": "JSONP", + "location": "query", + "type": "string" + }, + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "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.", + "location": "query", + "type": "string" + }, + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "pp": { + "default": "true", + "description": "Pretty-print response.", + "location": "query", + "type": "boolean" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", + "location": "query", + "type": "string" + }, + "uploadType": { + "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", + "location": "query", + "type": "string" + }, + "upload_protocol": { + "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", + "location": "query", + "type": "string" + } + }, + "protocol": "rest", + "resources": { + "folders": { + "methods": { + "create": { + "description": "Creates a Folder in the resource hierarchy.\nReturns an Operation which can be used to track the progress of the\nfolder creation workflow.\nUpon success the Operation.response field will be populated with the\ncreated Folder.\n\nIn order to succeed, the addition of this new Folder must not violate\nthe Folder naming, height or fanout constraints.\n\n+ The Folder's display_name must be distinct from all other Folder's that\nshare its parent.\n+ The addition of the Folder must not cause the active Folder hierarchy\nto exceed a height of 4. Note, the full active + deleted Folder hierarchy\nis allowed to reach a height of 8; this provides additional headroom when\nmoving folders that contain deleted folders.\n+ The addition of the Folder must not cause the total number of Folders\nunder its parent to exceed 100.\n\nIf the operation fails due to a folder constraint violation,\na PreconditionFailure explaining the violation will be returned.\nIf the failure occurs synchronously then the PreconditionFailure\nwill be returned via the Status.details field and if it occurs\nasynchronously then the PreconditionFailure will be returned\nvia the the Operation.error field.\n\nThe caller must have `resourcemanager.folders.create` permission on the\nidentified parent.", + "flatPath": "v2/folders", + "httpMethod": "POST", + "id": "cloudresourcemanager.folders.create", + "parameterOrder": [], + "parameters": { + "parent": { + "description": "The resource name of the new Folder's parent.\nMust be of the form `folders/{folder_id}` or `organizations/{org_id}`.", + "location": "query", + "type": "string" + } + }, + "path": "v2/folders", + "request": { + "$ref": "Folder" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Requests deletion of a Folder. The Folder is moved into the\nDELETE_REQUESTED state\nimmediately, and is deleted approximately 30 days later. This method may\nonly be called on an empty Folder in the\nACTIVE state, where a Folder is empty if\nit doesn't contain any Folders or Projects in the\nACTIVE state.\nThe caller must have `resourcemanager.folders.delete` permission on the\nidentified folder.", + "flatPath": "v2/folders/{foldersId}", + "httpMethod": "DELETE", + "id": "cloudresourcemanager.folders.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "the resource name of the Folder to be deleted.\nMust be of the form `folders/{folder_id}`.", + "location": "path", + "pattern": "^folders/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2/{+name}", + "response": { + "$ref": "Folder" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Retrieves a Folder identified by the supplied resource name.\nValid Folder resource names have the format `folders/{folder_id}`\n(for example, `folders/1234`).\nThe caller must have `resourcemanager.folders.get` permission on the\nidentified folder.", + "flatPath": "v2/folders/{foldersId}", + "httpMethod": "GET", + "id": "cloudresourcemanager.folders.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The resource name of the Folder to retrieve.\nMust be of the form `folders/{folder_id}`.", + "location": "path", + "pattern": "^folders/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2/{+name}", + "response": { + "$ref": "Folder" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + }, + "getIamPolicy": { + "description": "Gets the access control policy for a Folder. The returned policy may be\nempty if no such policy or resource exists. The `resource` field should\nbe the Folder's resource name, e.g. \"folders/1234\".\nThe caller must have `resourcemanager.folders.getIamPolicy` permission\non the identified folder.", + "flatPath": "v2/folders/{foldersId}:getIamPolicy", + "httpMethod": "POST", + "id": "cloudresourcemanager.folders.getIamPolicy", + "parameterOrder": [ + "resource" + ], + "parameters": { + "resource": { + "description": "REQUIRED: The resource for which the policy is being requested.\nSee the operation documentation for the appropriate value for this field.", + "location": "path", + "pattern": "^folders/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2/{+resource}:getIamPolicy", + "request": { + "$ref": "GetIamPolicyRequest" + }, + "response": { + "$ref": "Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + }, + "list": { + "description": "Lists the Folders that are direct descendants of supplied parent resource.\nList provides a strongly consistent view of the Folders underneath\nthe specified parent resource.\nList returns Folders sorted based upon the (ascending) lexical ordering\nof their display_name.\nThe caller must have `resourcemanager.folders.list` permission on the\nidentified parent.", + "flatPath": "v2/folders", + "httpMethod": "GET", + "id": "cloudresourcemanager.folders.list", + "parameterOrder": [], + "parameters": { + "pageSize": { + "description": "The maximum number of Folders to return in the response.\nThis field is optional.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "A pagination token returned from a previous call to `ListFolders`\nthat indicates where this listing should continue from.\nThis field is optional.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "The resource name of the Organization or Folder whose Folders are\nbeing listed.\nMust be of the form `folders/{folder_id}` or `organizations/{org_id}`.\nAccess to this method is controlled by checking the\n`resourcemanager.folders.list` permission on the `parent`.", + "location": "query", + "type": "string" + }, + "showDeleted": { + "description": "Controls whether Folders in the\nDELETE_REQUESTED\nstate should be returned. Defaults to false. This field is optional.", + "location": "query", + "type": "boolean" + } + }, + "path": "v2/folders", + "response": { + "$ref": "ListFoldersResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + }, + "move": { + "description": "Moves a Folder under a new resource parent.\nReturns an Operation which can be used to track the progress of the\nfolder move workflow.\nUpon success the Operation.response field will be populated with the\nmoved Folder.\nUpon failure, a FolderOperationError categorizing the failure cause will\nbe returned - if the failure occurs synchronously then the\nFolderOperationError will be returned via the Status.details field\nand if it occurs asynchronously then the FolderOperation will be returned\nvia the the Operation.error field.\nIn addition, the Operation.metadata field will be populated with a\nFolderOperation message as an aid to stateless clients.\nFolder moves will be rejected if they violate either the naming, height\nor fanout constraints described in the\nCreateFolder documentation.\nThe caller must have `resourcemanager.folders.move` permission on the\nfolder's current and proposed new parent.", + "flatPath": "v2/folders/{foldersId}:move", + "httpMethod": "POST", + "id": "cloudresourcemanager.folders.move", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The resource name of the Folder to move.\nMust be of the form folders/{folder_id}", + "location": "path", + "pattern": "^folders/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2/{+name}:move", + "request": { + "$ref": "MoveFolderRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "patch": { + "description": "Updates a Folder, changing its display_name.\nChanges to the folder display_name will be rejected if they violate either\nthe display_name formatting rules or naming constraints described in\nthe CreateFolder documentation.\n\nThe Folder's display name must start and end with a letter or digit,\nmay contain letters, digits, spaces, hyphens and underscores and can be\nno longer than 30 characters. This is captured by the regular expression:\n[\\p{L}\\p{N}]({\\p{L}\\p{N}_- ]{0,28}[\\p{L}\\p{N}])?.\nThe caller must have `resourcemanager.folders.update` permission on the\nidentified folder.\n\nIf the update fails due to the unique name constraint then a\nPreconditionFailure explaining this violation will be returned\nin the Status.details field.", + "flatPath": "v2/folders/{foldersId}", + "httpMethod": "PATCH", + "id": "cloudresourcemanager.folders.patch", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Output only. The resource name of the Folder.\nIts format is `folders/{folder_id}`, for example: \"folders/1234\".", + "location": "path", + "pattern": "^folders/[^/]+$", + "required": true, + "type": "string" + }, + "updateMask": { + "description": "Fields to be updated.\nOnly the `display_name` can be updated.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + } + }, + "path": "v2/{+name}", + "request": { + "$ref": "Folder" + }, + "response": { + "$ref": "Folder" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "search": { + "description": "Search for folders that match specific filter criteria.\nSearch provides an eventually consistent view of the folders a user has\naccess to which meet the specified filter criteria.\n\nThis will only return folders on which the caller has the\npermission `resourcemanager.folders.get`.", + "flatPath": "v2/folders:search", + "httpMethod": "POST", + "id": "cloudresourcemanager.folders.search", + "parameterOrder": [], + "parameters": {}, + "path": "v2/folders:search", + "request": { + "$ref": "SearchFoldersRequest" + }, + "response": { + "$ref": "SearchFoldersResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + }, + "setIamPolicy": { + "description": "Sets the access control policy on a Folder, replacing any existing policy.\nThe `resource` field should be the Folder's resource name, e.g.\n\"folders/1234\".\nThe caller must have `resourcemanager.folders.setIamPolicy` permission\non the identified folder.", + "flatPath": "v2/folders/{foldersId}:setIamPolicy", + "httpMethod": "POST", + "id": "cloudresourcemanager.folders.setIamPolicy", + "parameterOrder": [ + "resource" + ], + "parameters": { + "resource": { + "description": "REQUIRED: The resource for which the policy is being specified.\nSee the operation documentation for the appropriate value for this field.", + "location": "path", + "pattern": "^folders/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2/{+resource}:setIamPolicy", + "request": { + "$ref": "SetIamPolicyRequest" + }, + "response": { + "$ref": "Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified Folder.\nThe `resource` field should be the Folder's resource name,\ne.g. \"folders/1234\".\n\nThere are no permissions required for making this API call.", + "flatPath": "v2/folders/{foldersId}:testIamPermissions", + "httpMethod": "POST", + "id": "cloudresourcemanager.folders.testIamPermissions", + "parameterOrder": [ + "resource" + ], + "parameters": { + "resource": { + "description": "REQUIRED: The resource for which the policy detail is being requested.\nSee the operation documentation for the appropriate value for this field.", + "location": "path", + "pattern": "^folders/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2/{+resource}:testIamPermissions", + "request": { + "$ref": "TestIamPermissionsRequest" + }, + "response": { + "$ref": "TestIamPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "undelete": { + "description": "Cancels the deletion request for a Folder. This method may only be\ncalled on a Folder in the\nDELETE_REQUESTED state.\nIn order to succeed, the Folder's parent must be in the\nACTIVE state.\nIn addition, reintroducing the folder into the tree must not violate\nfolder naming, height and fanout constraints described in the\nCreateFolder documentation.\nThe caller must have `resourcemanager.folders.undelete` permission on the\nidentified folder.", + "flatPath": "v2/folders/{foldersId}:undelete", + "httpMethod": "POST", + "id": "cloudresourcemanager.folders.undelete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The resource name of the Folder to undelete.\nMust be of the form `folders/{folder_id}`.", + "location": "path", + "pattern": "^folders/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2/{+name}:undelete", + "request": { + "$ref": "UndeleteFolderRequest" + }, + "response": { + "$ref": "Folder" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + } + }, + "revision": "20180315", + "rootUrl": "https://cloudresourcemanager.googleapis.com/", + "schemas": { + "AuditConfig": { + "description": "Specifies the audit configuration for a service.\nThe configuration determines which permission types are logged, and what\nidentities, if any, are exempted from logging.\nAn AuditConfig must have one or more AuditLogConfigs.\n\nIf there are AuditConfigs for both `allServices` and a specific service,\nthe union of the two AuditConfigs is used for that service: the log_types\nspecified in each AuditConfig are enabled, and the exempted_members in each\nAuditLogConfig are exempted.\n\nExample Policy with multiple AuditConfigs:\n\n {\n \"audit_configs\": [\n {\n \"service\": \"allServices\"\n \"audit_log_configs\": [\n {\n \"log_type\": \"DATA_READ\",\n \"exempted_members\": [\n \"user:foo@gmail.com\"\n ]\n },\n {\n \"log_type\": \"DATA_WRITE\",\n },\n {\n \"log_type\": \"ADMIN_READ\",\n }\n ]\n },\n {\n \"service\": \"fooservice.googleapis.com\"\n \"audit_log_configs\": [\n {\n \"log_type\": \"DATA_READ\",\n },\n {\n \"log_type\": \"DATA_WRITE\",\n \"exempted_members\": [\n \"user:bar@gmail.com\"\n ]\n }\n ]\n }\n ]\n }\n\nFor fooservice, this policy enables DATA_READ, DATA_WRITE and ADMIN_READ\nlogging. It also exempts foo@gmail.com from DATA_READ logging, and\nbar@gmail.com from DATA_WRITE logging.", + "id": "AuditConfig", + "properties": { + "auditLogConfigs": { + "description": "The configuration for logging of each type of permission.\nNext ID: 4", + "items": { + "$ref": "AuditLogConfig" + }, + "type": "array" + }, + "service": { + "description": "Specifies a service that will be enabled for audit logging.\nFor example, `storage.googleapis.com`, `cloudsql.googleapis.com`.\n`allServices` is a special value that covers all services.", + "type": "string" + } + }, + "type": "object" + }, + "AuditLogConfig": { + "description": "Provides the configuration for logging a type of permissions.\nExample:\n\n {\n \"audit_log_configs\": [\n {\n \"log_type\": \"DATA_READ\",\n \"exempted_members\": [\n \"user:foo@gmail.com\"\n ]\n },\n {\n \"log_type\": \"DATA_WRITE\",\n }\n ]\n }\n\nThis enables 'DATA_READ' and 'DATA_WRITE' logging, while exempting\nfoo@gmail.com from DATA_READ logging.", + "id": "AuditLogConfig", + "properties": { + "exemptedMembers": { + "description": "Specifies the identities that do not cause logging for this type of\npermission.\nFollows the same format of Binding.members.", + "items": { + "type": "string" + }, + "type": "array" + }, + "logType": { + "description": "The log type that this config enables.", + "enum": [ + "LOG_TYPE_UNSPECIFIED", + "ADMIN_READ", + "DATA_WRITE", + "DATA_READ" + ], + "enumDescriptions": [ + "Default case. Should never be this.", + "Admin reads. Example: CloudIAM getIamPolicy", + "Data writes. Example: CloudSQL Users create", + "Data reads. Example: CloudSQL Users list" + ], + "type": "string" + } + }, + "type": "object" + }, + "Binding": { + "description": "Associates `members` with a `role`.", + "id": "Binding", + "properties": { + "members": { + "description": "Specifies the identities requesting access for a Cloud Platform resource.\n`members` can have the following values:\n\n* `allUsers`: A special identifier that represents anyone who is\n on the internet; with or without a Google account.\n\n* `allAuthenticatedUsers`: A special identifier that represents anyone\n who is authenticated with a Google account or a service account.\n\n* `user:{emailid}`: An email address that represents a specific Google\n account. For example, `alice@gmail.com` or `joe@example.com`.\n\n\n* `serviceAccount:{emailid}`: An email address that represents a service\n account. For example, `my-other-app@appspot.gserviceaccount.com`.\n\n* `group:{emailid}`: An email address that represents a Google group.\n For example, `admins@example.com`.\n\n\n* `domain:{domain}`: A Google Apps domain name that represents all the\n users of that domain. For example, `google.com` or `example.com`.\n\n", + "items": { + "type": "string" + }, + "type": "array" + }, + "role": { + "description": "Role that is assigned to `members`.\nFor example, `roles/viewer`, `roles/editor`, or `roles/owner`.\nRequired", + "type": "string" + } + }, + "type": "object" + }, + "Folder": { + "description": "A Folder in an Organization's resource hierarchy, used to\norganize that Organization's resources.", + "id": "Folder", + "properties": { + "createTime": { + "description": "Output only. Timestamp when the Folder was created. Assigned by the server.", + "format": "google-datetime", + "type": "string" + }, + "displayName": { + "description": "The folder’s display name.\nA folder’s display name must be unique amongst its siblings, e.g.\nno two folders with the same parent can share the same display name.\nThe display name must start and end with a letter or digit, may contain\nletters, digits, spaces, hyphens and underscores and can be no longer\nthan 30 characters. This is captured by the regular expression:\n[\\p{L}\\p{N}]({\\p{L}\\p{N}_- ]{0,28}[\\p{L}\\p{N}])?.", + "type": "string" + }, + "lifecycleState": { + "description": "Output only. The lifecycle state of the folder.\nUpdates to the lifecycle_state must be performed via\nDeleteFolder and\nUndeleteFolder.", + "enum": [ + "LIFECYCLE_STATE_UNSPECIFIED", + "ACTIVE", + "DELETE_REQUESTED" + ], + "enumDescriptions": [ + "Unspecified state.", + "The normal and active state.", + "The folder has been marked for deletion by the user." + ], + "type": "string" + }, + "name": { + "description": "Output only. The resource name of the Folder.\nIts format is `folders/{folder_id}`, for example: \"folders/1234\".", + "type": "string" + }, + "parent": { + "description": "The Folder’s parent's resource name.\nUpdates to the folder's parent must be performed via\nMoveFolder.", + "type": "string" + } + }, + "type": "object" + }, + "FolderOperation": { + "description": "Metadata describing a long running folder operation", + "id": "FolderOperation", + "properties": { + "destinationParent": { + "description": "The resource name of the folder or organization we are either creating\nthe folder under or moving the folder to.", + "type": "string" + }, + "displayName": { + "description": "The display name of the folder.", + "type": "string" + }, + "operationType": { + "description": "The type of this operation.", + "enum": [ + "OPERATION_TYPE_UNSPECIFIED", + "CREATE", + "MOVE" + ], + "enumDescriptions": [ + "Operation type not specified.", + "A create folder operation.", + "A move folder operation." + ], + "type": "string" + }, + "sourceParent": { + "description": "The resource name of the folder's parent.\nOnly applicable when the operation_type is MOVE.", + "type": "string" + } + }, + "type": "object" + }, + "FolderOperationError": { + "description": "A classification of the Folder Operation error.", + "id": "FolderOperationError", + "properties": { + "errorMessageId": { + "description": "The type of operation error experienced.", + "enum": [ + "ERROR_TYPE_UNSPECIFIED", + "ACTIVE_FOLDER_HEIGHT_VIOLATION", + "MAX_CHILD_FOLDERS_VIOLATION", + "FOLDER_NAME_UNIQUENESS_VIOLATION", + "RESOURCE_DELETED_VIOLATION", + "PARENT_DELETED_VIOLATION", + "CYCLE_INTRODUCED_VIOLATION", + "FOLDER_BEING_MOVED_VIOLATION", + "FOLDER_TO_DELETE_NON_EMPTY_VIOLATION", + "DELETED_FOLDER_HEIGHT_VIOLATION" + ], + "enumDescriptions": [ + "The error type was unrecognized or unspecified.", + "The attempted action would violate the max folder depth constraint.", + "The attempted action would violate the max child folders constraint.", + "The attempted action would violate the locally-unique folder\ndisplay_name constraint.", + "The resource being moved has been deleted.", + "The resource a folder was being added to has been deleted.", + "The attempted action would introduce cycle in resource path.", + "The attempted action would move a folder that is already being moved.", + "The folder the caller is trying to delete contains active resources.", + "The attempted action would violate the max deleted folder depth\nconstraint." + ], + "type": "string" + } + }, + "type": "object" + }, + "GetIamPolicyRequest": { + "description": "Request message for `GetIamPolicy` method.", + "id": "GetIamPolicyRequest", + "properties": {}, + "type": "object" + }, + "ListFoldersResponse": { + "description": "The ListFolders response message.", + "id": "ListFoldersResponse", + "properties": { + "folders": { + "description": "A possibly paginated list of Folders that are direct descendants of\nthe specified parent resource.", + "items": { + "$ref": "Folder" + }, + "type": "array" + }, + "nextPageToken": { + "description": "A pagination token returned from a previous call to `ListFolders`\nthat indicates from where listing should continue.\nThis field is optional.", + "type": "string" + } + }, + "type": "object" + }, + "MoveFolderRequest": { + "description": "The MoveFolder request message.", + "id": "MoveFolderRequest", + "properties": { + "destinationParent": { + "description": "The resource name of the Folder or Organization to reparent\nthe folder under.\nMust be of the form `folders/{folder_id}` or `organizations/{org_id}`.", + "type": "string" + } + }, + "type": "object" + }, + "Operation": { + "description": "This resource represents a long-running operation that is the result of a\nnetwork API call.", + "id": "Operation", + "properties": { + "done": { + "description": "If the value is `false`, it means the operation is still in progress.\nIf `true`, the operation is completed, and either `error` or `response` is\navailable.", + "type": "boolean" + }, + "error": { + "$ref": "Status", + "description": "The error result of the operation in case of failure or cancellation." + }, + "metadata": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "description": "Service-specific metadata associated with the operation. It typically\ncontains progress information and common metadata such as create time.\nSome services might not provide such metadata. Any method that returns a\nlong-running operation should document the metadata type, if any.", + "type": "object" + }, + "name": { + "description": "The server-assigned name, which is only unique within the same service that\noriginally returns it. If you use the default HTTP mapping, the\n`name` should have the format of `operations/some/unique/name`.", + "type": "string" + }, + "response": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "description": "The normal response of the operation in case of success. If the original\nmethod returns no data on success, such as `Delete`, the response is\n`google.protobuf.Empty`. If the original method is standard\n`Get`/`Create`/`Update`, the response should be the resource. For other\nmethods, the response should have the type `XxxResponse`, where `Xxx`\nis the original method name. For example, if the original method name\nis `TakeSnapshot()`, the inferred response type is\n`TakeSnapshotResponse`.", + "type": "object" + } + }, + "type": "object" + }, + "Policy": { + "description": "Defines an Identity and Access Management (IAM) policy. It is used to\nspecify access control policies for Cloud Platform resources.\n\n\nA `Policy` consists of a list of `bindings`. A `Binding` binds a list of\n`members` to a `role`, where the members can be user accounts, Google groups,\nGoogle domains, and service accounts. A `role` is a named list of permissions\ndefined by IAM.\n\n**Example**\n\n {\n \"bindings\": [\n {\n \"role\": \"roles/owner\",\n \"members\": [\n \"user:mike@example.com\",\n \"group:admins@example.com\",\n \"domain:google.com\",\n \"serviceAccount:my-other-app@appspot.gserviceaccount.com\",\n ]\n },\n {\n \"role\": \"roles/viewer\",\n \"members\": [\"user:sean@example.com\"]\n }\n ]\n }\n\nFor a description of IAM and its features, see the\n[IAM developer's guide](https://cloud.google.com/iam/docs).", + "id": "Policy", + "properties": { + "auditConfigs": { + "description": "Specifies cloud audit logging configuration for this policy.", + "items": { + "$ref": "AuditConfig" + }, + "type": "array" + }, + "bindings": { + "description": "Associates a list of `members` to a `role`.\n`bindings` with no members will result in an error.", + "items": { + "$ref": "Binding" + }, + "type": "array" + }, + "etag": { + "description": "`etag` is used for optimistic concurrency control as a way to help\nprevent simultaneous updates of a policy from overwriting each other.\nIt is strongly suggested that systems make use of the `etag` in the\nread-modify-write cycle to perform policy updates in order to avoid race\nconditions: An `etag` is returned in the response to `getIamPolicy`, and\nsystems are expected to put that etag in the request to `setIamPolicy` to\nensure that their change will be applied to the same version of the policy.\n\nIf no `etag` is provided in the call to `setIamPolicy`, then the existing\npolicy is overwritten blindly.", + "format": "byte", + "type": "string" + }, + "version": { + "description": "Deprecated.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "ProjectCreationStatus": { + "description": "A status object which is used as the `metadata` field for the Operation\nreturned by CreateProject. It provides insight for when significant phases of\nProject creation have completed.", + "id": "ProjectCreationStatus", + "properties": { + "createTime": { + "description": "Creation time of the project creation workflow.", + "format": "google-datetime", + "type": "string" + }, + "gettable": { + "description": "True if the project can be retrieved using GetProject. No other operations\non the project are guaranteed to work until the project creation is\ncomplete.", + "type": "boolean" + }, + "ready": { + "description": "True if the project creation process is complete.", + "type": "boolean" + } + }, + "type": "object" + }, + "SearchFoldersRequest": { + "description": "The request message for searching folders.", + "id": "SearchFoldersRequest", + "properties": { + "pageSize": { + "description": "The maximum number of folders to return in the response.\nThis field is optional.", + "format": "int32", + "type": "integer" + }, + "pageToken": { + "description": "A pagination token returned from a previous call to `SearchFolders`\nthat indicates from where search should continue.\nThis field is optional.", + "type": "string" + }, + "query": { + "description": "Search criteria used to select the Folders to return.\nIf no search criteria is specified then all accessible folders will be\nreturned.\n\nQuery expressions can be used to restrict results based upon displayName,\nlifecycleState and parent, where the operators `=`, `NOT`, `AND` and `OR`\ncan be used along with the suffix wildcard symbol `*`.\n\nSome example queries are:\n\n|Query | Description|\n|----- | -----------|\n|displayName=Test* | Folders whose display name starts with \"Test\".\n|lifecycleState=ACTIVE | Folders whose lifecycleState is ACTIVE.\n|parent=folders/123 | Folders whose parent is \"folders/123\".\n|parent=folders/123 AND lifecycleState=ACTIVE | Active folders whose parent is \"folders/123\".|", + "type": "string" + } + }, + "type": "object" + }, + "SearchFoldersResponse": { + "description": "The response message for searching folders.", + "id": "SearchFoldersResponse", + "properties": { + "folders": { + "description": "A possibly paginated folder search results.\nthe specified parent resource.", + "items": { + "$ref": "Folder" + }, + "type": "array" + }, + "nextPageToken": { + "description": "A pagination token returned from a previous call to `SearchFolders`\nthat indicates from where searching should continue.\nThis field is optional.", + "type": "string" + } + }, + "type": "object" + }, + "SetIamPolicyRequest": { + "description": "Request message for `SetIamPolicy` method.", + "id": "SetIamPolicyRequest", + "properties": { + "policy": { + "$ref": "Policy", + "description": "REQUIRED: The complete policy to be applied to the `resource`. The size of\nthe policy is limited to a few 10s of KB. An empty policy is a\nvalid policy but certain Cloud Platform services (such as Projects)\nmight reject them." + }, + "updateMask": { + "description": "OPTIONAL: A FieldMask specifying which fields of the policy to modify. Only\nthe fields in the mask will be modified. If no mask is provided, the\nfollowing default mask is used:\npaths: \"bindings, etag\"\nThis field is only used by Cloud IAM.", + "format": "google-fieldmask", + "type": "string" + } + }, + "type": "object" + }, + "Status": { + "description": "The `Status` type defines a logical error model that is suitable for different\nprogramming environments, including REST APIs and RPC APIs. It is used by\n[gRPC](https://github.com/grpc). The error model is designed to be:\n\n- Simple to use and understand for most users\n- Flexible enough to meet unexpected needs\n\n# Overview\n\nThe `Status` message contains three pieces of data: error code, error message,\nand error details. The error code should be an enum value of\ngoogle.rpc.Code, but it may accept additional error codes if needed. The\nerror message should be a developer-facing English message that helps\ndevelopers *understand* and *resolve* the error. If a localized user-facing\nerror message is needed, put the localized message in the error details or\nlocalize it in the client. The optional error details may contain arbitrary\ninformation about the error. There is a predefined set of error detail types\nin the package `google.rpc` that can be used for common error conditions.\n\n# Language mapping\n\nThe `Status` message is the logical representation of the error model, but it\nis not necessarily the actual wire format. When the `Status` message is\nexposed in different client libraries and different wire protocols, it can be\nmapped differently. For example, it will likely be mapped to some exceptions\nin Java, but more likely mapped to some error codes in C.\n\n# Other uses\n\nThe error model and the `Status` message can be used in a variety of\nenvironments, either with or without APIs, to provide a\nconsistent developer experience across different environments.\n\nExample uses of this error model include:\n\n- Partial errors. If a service needs to return partial errors to the client,\n it may embed the `Status` in the normal response to indicate the partial\n errors.\n\n- Workflow errors. A typical workflow has multiple steps. Each step may\n have a `Status` message for error reporting.\n\n- Batch operations. If a client uses batch request and batch response, the\n `Status` message should be used directly inside batch response, one for\n each error sub-response.\n\n- Asynchronous operations. If an API call embeds asynchronous operation\n results in its response, the status of those operations should be\n represented directly using the `Status` message.\n\n- Logging. If some API errors are stored in logs, the message `Status` could\n be used directly after any stripping needed for security/privacy reasons.", + "id": "Status", + "properties": { + "code": { + "description": "The status code, which should be an enum value of google.rpc.Code.", + "format": "int32", + "type": "integer" + }, + "details": { + "description": "A list of messages that carry the error details. There is a common set of\nmessage types for APIs to use.", + "items": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "A developer-facing error message, which should be in English. Any\nuser-facing error message should be localized and sent in the\ngoogle.rpc.Status.details field, or localized by the client.", + "type": "string" + } + }, + "type": "object" + }, + "TestIamPermissionsRequest": { + "description": "Request message for `TestIamPermissions` method.", + "id": "TestIamPermissionsRequest", + "properties": { + "permissions": { + "description": "The set of permissions to check for the `resource`. Permissions with\nwildcards (such as '*' or 'storage.*') are not allowed. For more\ninformation see\n[IAM Overview](https://cloud.google.com/iam/docs/overview#permissions).", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "TestIamPermissionsResponse": { + "description": "Response message for `TestIamPermissions` method.", + "id": "TestIamPermissionsResponse", + "properties": { + "permissions": { + "description": "A subset of `TestPermissionsRequest.permissions` that the caller is\nallowed.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "UndeleteFolderRequest": { + "description": "The UndeleteFolder request message.", + "id": "UndeleteFolderRequest", + "properties": {}, + "type": "object" + } + }, + "servicePath": "", + "title": "Cloud Resource Manager API", + "version": "v2" +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/cloudresourcemanager/v2/cloudresourcemanager-gen.go b/vendor/google.golang.org/api/cloudresourcemanager/v2/cloudresourcemanager-gen.go new file mode 100644 index 000000000..b1434544a --- /dev/null +++ b/vendor/google.golang.org/api/cloudresourcemanager/v2/cloudresourcemanager-gen.go @@ -0,0 +1,2826 @@ +// Package cloudresourcemanager provides access to the Cloud Resource Manager API. +// +// See https://cloud.google.com/resource-manager +// +// Usage example: +// +// import "google.golang.org/api/cloudresourcemanager/v2" +// ... +// cloudresourcemanagerService, err := cloudresourcemanager.New(oauthHttpClient) +package cloudresourcemanager // import "google.golang.org/api/cloudresourcemanager/v2" + +import ( + "bytes" + "encoding/json" + "errors" + "fmt" + context "golang.org/x/net/context" + ctxhttp "golang.org/x/net/context/ctxhttp" + gensupport "google.golang.org/api/gensupport" + googleapi "google.golang.org/api/googleapi" + "io" + "net/http" + "net/url" + "strconv" + "strings" +) + +// Always reference these packages, just in case the auto-generated code +// below doesn't. +var _ = bytes.NewBuffer +var _ = strconv.Itoa +var _ = fmt.Sprintf +var _ = json.NewDecoder +var _ = io.Copy +var _ = url.Parse +var _ = gensupport.MarshalJSON +var _ = googleapi.Version +var _ = errors.New +var _ = strings.Replace +var _ = context.Canceled +var _ = ctxhttp.Do + +const apiId = "cloudresourcemanager:v2" +const apiName = "cloudresourcemanager" +const apiVersion = "v2" +const basePath = "https://cloudresourcemanager.googleapis.com/" + +// OAuth2 scopes used by this API. +const ( + // View and manage your data across Google Cloud Platform services + CloudPlatformScope = "https://www.googleapis.com/auth/cloud-platform" + + // View your data across Google Cloud Platform services + CloudPlatformReadOnlyScope = "https://www.googleapis.com/auth/cloud-platform.read-only" +) + +func New(client *http.Client) (*Service, error) { + if client == nil { + return nil, errors.New("client is nil") + } + s := &Service{client: client, BasePath: basePath} + s.Folders = NewFoldersService(s) + return s, nil +} + +type Service struct { + client *http.Client + BasePath string // API endpoint base URL + UserAgent string // optional additional User-Agent fragment + + Folders *FoldersService +} + +func (s *Service) userAgent() string { + if s.UserAgent == "" { + return googleapi.UserAgent + } + return googleapi.UserAgent + " " + s.UserAgent +} + +func NewFoldersService(s *Service) *FoldersService { + rs := &FoldersService{s: s} + return rs +} + +type FoldersService struct { + s *Service +} + +// AuditConfig: Specifies the audit configuration for a service. +// The configuration determines which permission types are logged, and +// what +// identities, if any, are exempted from logging. +// An AuditConfig must have one or more AuditLogConfigs. +// +// If there are AuditConfigs for both `allServices` and a specific +// service, +// the union of the two AuditConfigs is used for that service: the +// log_types +// specified in each AuditConfig are enabled, and the exempted_members +// in each +// AuditLogConfig are exempted. +// +// Example Policy with multiple AuditConfigs: +// +// { +// "audit_configs": [ +// { +// "service": "allServices" +// "audit_log_configs": [ +// { +// "log_type": "DATA_READ", +// "exempted_members": [ +// "user:foo@gmail.com" +// ] +// }, +// { +// "log_type": "DATA_WRITE", +// }, +// { +// "log_type": "ADMIN_READ", +// } +// ] +// }, +// { +// "service": "fooservice.googleapis.com" +// "audit_log_configs": [ +// { +// "log_type": "DATA_READ", +// }, +// { +// "log_type": "DATA_WRITE", +// "exempted_members": [ +// "user:bar@gmail.com" +// ] +// } +// ] +// } +// ] +// } +// +// For fooservice, this policy enables DATA_READ, DATA_WRITE and +// ADMIN_READ +// logging. It also exempts foo@gmail.com from DATA_READ logging, +// and +// bar@gmail.com from DATA_WRITE logging. +type AuditConfig struct { + // AuditLogConfigs: The configuration for logging of each type of + // permission. + // Next ID: 4 + AuditLogConfigs []*AuditLogConfig `json:"auditLogConfigs,omitempty"` + + // Service: Specifies a service that will be enabled for audit + // logging. + // For example, `storage.googleapis.com`, + // `cloudsql.googleapis.com`. + // `allServices` is a special value that covers all services. + Service string `json:"service,omitempty"` + + // ForceSendFields is a list of field names (e.g. "AuditLogConfigs") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "AuditLogConfigs") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *AuditConfig) MarshalJSON() ([]byte, error) { + type NoMethod AuditConfig + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// AuditLogConfig: Provides the configuration for logging a type of +// permissions. +// Example: +// +// { +// "audit_log_configs": [ +// { +// "log_type": "DATA_READ", +// "exempted_members": [ +// "user:foo@gmail.com" +// ] +// }, +// { +// "log_type": "DATA_WRITE", +// } +// ] +// } +// +// This enables 'DATA_READ' and 'DATA_WRITE' logging, while +// exempting +// foo@gmail.com from DATA_READ logging. +type AuditLogConfig struct { + // ExemptedMembers: Specifies the identities that do not cause logging + // for this type of + // permission. + // Follows the same format of Binding.members. + ExemptedMembers []string `json:"exemptedMembers,omitempty"` + + // LogType: The log type that this config enables. + // + // Possible values: + // "LOG_TYPE_UNSPECIFIED" - Default case. Should never be this. + // "ADMIN_READ" - Admin reads. Example: CloudIAM getIamPolicy + // "DATA_WRITE" - Data writes. Example: CloudSQL Users create + // "DATA_READ" - Data reads. Example: CloudSQL Users list + LogType string `json:"logType,omitempty"` + + // ForceSendFields is a list of field names (e.g. "ExemptedMembers") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "ExemptedMembers") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *AuditLogConfig) MarshalJSON() ([]byte, error) { + type NoMethod AuditLogConfig + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// Binding: Associates `members` with a `role`. +type Binding struct { + // Members: Specifies the identities requesting access for a Cloud + // Platform resource. + // `members` can have the following values: + // + // * `allUsers`: A special identifier that represents anyone who is + // on the internet; with or without a Google account. + // + // * `allAuthenticatedUsers`: A special identifier that represents + // anyone + // who is authenticated with a Google account or a service + // account. + // + // * `user:{emailid}`: An email address that represents a specific + // Google + // account. For example, `alice@gmail.com` or `joe@example.com`. + // + // + // * `serviceAccount:{emailid}`: An email address that represents a + // service + // account. For example, + // `my-other-app@appspot.gserviceaccount.com`. + // + // * `group:{emailid}`: An email address that represents a Google + // group. + // For example, `admins@example.com`. + // + // + // * `domain:{domain}`: A Google Apps domain name that represents all + // the + // users of that domain. For example, `google.com` or + // `example.com`. + // + // + Members []string `json:"members,omitempty"` + + // Role: Role that is assigned to `members`. + // For example, `roles/viewer`, `roles/editor`, or + // `roles/owner`. + // Required + Role string `json:"role,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Members") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Members") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *Binding) MarshalJSON() ([]byte, error) { + type NoMethod Binding + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// Folder: A Folder in an Organization's resource hierarchy, used +// to +// organize that Organization's resources. +type Folder struct { + // CreateTime: Output only. Timestamp when the Folder was created. + // Assigned by the server. + CreateTime string `json:"createTime,omitempty"` + + // DisplayName: The folder’s display name. + // A folder’s display name must be unique amongst its siblings, + // e.g. + // no two folders with the same parent can share the same display + // name. + // The display name must start and end with a letter or digit, may + // contain + // letters, digits, spaces, hyphens and underscores and can be no + // longer + // than 30 characters. This is captured by the regular + // expression: + // [\p{L}\p{N}]({\p{L}\p{N}_- ]{0,28}[\p{L}\p{N}])?. + DisplayName string `json:"displayName,omitempty"` + + // LifecycleState: Output only. The lifecycle state of the + // folder. + // Updates to the lifecycle_state must be performed via + // DeleteFolder and + // UndeleteFolder. + // + // Possible values: + // "LIFECYCLE_STATE_UNSPECIFIED" - Unspecified state. + // "ACTIVE" - The normal and active state. + // "DELETE_REQUESTED" - The folder has been marked for deletion by the + // user. + LifecycleState string `json:"lifecycleState,omitempty"` + + // Name: Output only. The resource name of the Folder. + // Its format is `folders/{folder_id}`, for example: "folders/1234". + Name string `json:"name,omitempty"` + + // Parent: The Folder’s parent's resource name. + // Updates to the folder's parent must be performed via + // MoveFolder. + Parent string `json:"parent,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "CreateTime") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "CreateTime") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *Folder) MarshalJSON() ([]byte, error) { + type NoMethod Folder + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// FolderOperation: Metadata describing a long running folder operation +type FolderOperation struct { + // DestinationParent: The resource name of the folder or organization we + // are either creating + // the folder under or moving the folder to. + DestinationParent string `json:"destinationParent,omitempty"` + + // DisplayName: The display name of the folder. + DisplayName string `json:"displayName,omitempty"` + + // OperationType: The type of this operation. + // + // Possible values: + // "OPERATION_TYPE_UNSPECIFIED" - Operation type not specified. + // "CREATE" - A create folder operation. + // "MOVE" - A move folder operation. + OperationType string `json:"operationType,omitempty"` + + // SourceParent: The resource name of the folder's parent. + // Only applicable when the operation_type is MOVE. + SourceParent string `json:"sourceParent,omitempty"` + + // ForceSendFields is a list of field names (e.g. "DestinationParent") + // to unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "DestinationParent") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *FolderOperation) MarshalJSON() ([]byte, error) { + type NoMethod FolderOperation + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// FolderOperationError: A classification of the Folder Operation error. +type FolderOperationError struct { + // ErrorMessageId: The type of operation error experienced. + // + // Possible values: + // "ERROR_TYPE_UNSPECIFIED" - The error type was unrecognized or + // unspecified. + // "ACTIVE_FOLDER_HEIGHT_VIOLATION" - The attempted action would + // violate the max folder depth constraint. + // "MAX_CHILD_FOLDERS_VIOLATION" - The attempted action would violate + // the max child folders constraint. + // "FOLDER_NAME_UNIQUENESS_VIOLATION" - The attempted action would + // violate the locally-unique folder + // display_name constraint. + // "RESOURCE_DELETED_VIOLATION" - The resource being moved has been + // deleted. + // "PARENT_DELETED_VIOLATION" - The resource a folder was being added + // to has been deleted. + // "CYCLE_INTRODUCED_VIOLATION" - The attempted action would introduce + // cycle in resource path. + // "FOLDER_BEING_MOVED_VIOLATION" - The attempted action would move a + // folder that is already being moved. + // "FOLDER_TO_DELETE_NON_EMPTY_VIOLATION" - The folder the caller is + // trying to delete contains active resources. + // "DELETED_FOLDER_HEIGHT_VIOLATION" - The attempted action would + // violate the max deleted folder depth + // constraint. + ErrorMessageId string `json:"errorMessageId,omitempty"` + + // ForceSendFields is a list of field names (e.g. "ErrorMessageId") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "ErrorMessageId") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *FolderOperationError) MarshalJSON() ([]byte, error) { + type NoMethod FolderOperationError + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GetIamPolicyRequest: Request message for `GetIamPolicy` method. +type GetIamPolicyRequest struct { +} + +// ListFoldersResponse: The ListFolders response message. +type ListFoldersResponse struct { + // Folders: A possibly paginated list of Folders that are direct + // descendants of + // the specified parent resource. + Folders []*Folder `json:"folders,omitempty"` + + // NextPageToken: A pagination token returned from a previous call to + // `ListFolders` + // that indicates from where listing should continue. + // This field is optional. + NextPageToken string `json:"nextPageToken,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "Folders") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Folders") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *ListFoldersResponse) MarshalJSON() ([]byte, error) { + type NoMethod ListFoldersResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// MoveFolderRequest: The MoveFolder request message. +type MoveFolderRequest struct { + // DestinationParent: The resource name of the Folder or Organization to + // reparent + // the folder under. + // Must be of the form `folders/{folder_id}` or + // `organizations/{org_id}`. + DestinationParent string `json:"destinationParent,omitempty"` + + // ForceSendFields is a list of field names (e.g. "DestinationParent") + // to unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "DestinationParent") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *MoveFolderRequest) MarshalJSON() ([]byte, error) { + type NoMethod MoveFolderRequest + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// Operation: This resource represents a long-running operation that is +// the result of a +// network API call. +type Operation struct { + // Done: If the value is `false`, it means the operation is still in + // progress. + // If `true`, the operation is completed, and either `error` or + // `response` is + // available. + Done bool `json:"done,omitempty"` + + // Error: The error result of the operation in case of failure or + // cancellation. + Error *Status `json:"error,omitempty"` + + // Metadata: Service-specific metadata associated with the operation. + // It typically + // contains progress information and common metadata such as create + // time. + // Some services might not provide such metadata. Any method that + // returns a + // long-running operation should document the metadata type, if any. + Metadata googleapi.RawMessage `json:"metadata,omitempty"` + + // Name: The server-assigned name, which is only unique within the same + // service that + // originally returns it. If you use the default HTTP mapping, + // the + // `name` should have the format of `operations/some/unique/name`. + Name string `json:"name,omitempty"` + + // Response: The normal response of the operation in case of success. + // If the original + // method returns no data on success, such as `Delete`, the response + // is + // `google.protobuf.Empty`. If the original method is + // standard + // `Get`/`Create`/`Update`, the response should be the resource. For + // other + // methods, the response should have the type `XxxResponse`, where + // `Xxx` + // is the original method name. For example, if the original method + // name + // is `TakeSnapshot()`, the inferred response type + // is + // `TakeSnapshotResponse`. + Response googleapi.RawMessage `json:"response,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "Done") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Done") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *Operation) MarshalJSON() ([]byte, error) { + type NoMethod Operation + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// Policy: Defines an Identity and Access Management (IAM) policy. It is +// used to +// specify access control policies for Cloud Platform resources. +// +// +// A `Policy` consists of a list of `bindings`. A `Binding` binds a list +// of +// `members` to a `role`, where the members can be user accounts, Google +// groups, +// Google domains, and service accounts. A `role` is a named list of +// permissions +// defined by IAM. +// +// **Example** +// +// { +// "bindings": [ +// { +// "role": "roles/owner", +// "members": [ +// "user:mike@example.com", +// "group:admins@example.com", +// "domain:google.com", +// +// "serviceAccount:my-other-app@appspot.gserviceaccount.com", +// ] +// }, +// { +// "role": "roles/viewer", +// "members": ["user:sean@example.com"] +// } +// ] +// } +// +// For a description of IAM and its features, see the +// [IAM developer's guide](https://cloud.google.com/iam/docs). +type Policy struct { + // AuditConfigs: Specifies cloud audit logging configuration for this + // policy. + AuditConfigs []*AuditConfig `json:"auditConfigs,omitempty"` + + // Bindings: Associates a list of `members` to a `role`. + // `bindings` with no members will result in an error. + Bindings []*Binding `json:"bindings,omitempty"` + + // Etag: `etag` is used for optimistic concurrency control as a way to + // help + // prevent simultaneous updates of a policy from overwriting each + // other. + // It is strongly suggested that systems make use of the `etag` in + // the + // read-modify-write cycle to perform policy updates in order to avoid + // race + // conditions: An `etag` is returned in the response to `getIamPolicy`, + // and + // systems are expected to put that etag in the request to + // `setIamPolicy` to + // ensure that their change will be applied to the same version of the + // policy. + // + // If no `etag` is provided in the call to `setIamPolicy`, then the + // existing + // policy is overwritten blindly. + Etag string `json:"etag,omitempty"` + + // Version: Deprecated. + Version int64 `json:"version,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "AuditConfigs") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "AuditConfigs") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *Policy) MarshalJSON() ([]byte, error) { + type NoMethod Policy + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// ProjectCreationStatus: A status object which is used as the +// `metadata` field for the Operation +// returned by CreateProject. It provides insight for when significant +// phases of +// Project creation have completed. +type ProjectCreationStatus struct { + // CreateTime: Creation time of the project creation workflow. + CreateTime string `json:"createTime,omitempty"` + + // Gettable: True if the project can be retrieved using GetProject. No + // other operations + // on the project are guaranteed to work until the project creation + // is + // complete. + Gettable bool `json:"gettable,omitempty"` + + // Ready: True if the project creation process is complete. + Ready bool `json:"ready,omitempty"` + + // ForceSendFields is a list of field names (e.g. "CreateTime") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "CreateTime") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *ProjectCreationStatus) MarshalJSON() ([]byte, error) { + type NoMethod ProjectCreationStatus + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// SearchFoldersRequest: The request message for searching folders. +type SearchFoldersRequest struct { + // PageSize: The maximum number of folders to return in the + // response. + // This field is optional. + PageSize int64 `json:"pageSize,omitempty"` + + // PageToken: A pagination token returned from a previous call to + // `SearchFolders` + // that indicates from where search should continue. + // This field is optional. + PageToken string `json:"pageToken,omitempty"` + + // Query: Search criteria used to select the Folders to return. + // If no search criteria is specified then all accessible folders will + // be + // returned. + // + // Query expressions can be used to restrict results based upon + // displayName, + // lifecycleState and parent, where the operators `=`, `NOT`, `AND` and + // `OR` + // can be used along with the suffix wildcard symbol `*`. + // + // Some example queries are: + // + // |Query | Description| + // |----- | -----------| + // |displayName=Test* | Folders whose display name starts with + // "Test". + // |lifecycleState=ACTIVE | Folders whose lifecycleState is + // ACTIVE. + // |parent=folders/123 | Folders whose parent is + // "folders/123". + // |parent=folders/123 AND lifecycleState=ACTIVE | Active folders whose + // parent is "folders/123".| + Query string `json:"query,omitempty"` + + // ForceSendFields is a list of field names (e.g. "PageSize") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "PageSize") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *SearchFoldersRequest) MarshalJSON() ([]byte, error) { + type NoMethod SearchFoldersRequest + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// SearchFoldersResponse: The response message for searching folders. +type SearchFoldersResponse struct { + // Folders: A possibly paginated folder search results. + // the specified parent resource. + Folders []*Folder `json:"folders,omitempty"` + + // NextPageToken: A pagination token returned from a previous call to + // `SearchFolders` + // that indicates from where searching should continue. + // This field is optional. + NextPageToken string `json:"nextPageToken,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "Folders") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Folders") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *SearchFoldersResponse) MarshalJSON() ([]byte, error) { + type NoMethod SearchFoldersResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// SetIamPolicyRequest: Request message for `SetIamPolicy` method. +type SetIamPolicyRequest struct { + // Policy: REQUIRED: The complete policy to be applied to the + // `resource`. The size of + // the policy is limited to a few 10s of KB. An empty policy is a + // valid policy but certain Cloud Platform services (such as + // Projects) + // might reject them. + Policy *Policy `json:"policy,omitempty"` + + // UpdateMask: OPTIONAL: A FieldMask specifying which fields of the + // policy to modify. Only + // the fields in the mask will be modified. If no mask is provided, + // the + // following default mask is used: + // paths: "bindings, etag" + // This field is only used by Cloud IAM. + UpdateMask string `json:"updateMask,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Policy") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Policy") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *SetIamPolicyRequest) MarshalJSON() ([]byte, error) { + type NoMethod SetIamPolicyRequest + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// Status: The `Status` type defines a logical error model that is +// suitable for different +// programming environments, including REST APIs and RPC APIs. It is +// used by +// [gRPC](https://github.com/grpc). The error model is designed to +// be: +// +// - Simple to use and understand for most users +// - Flexible enough to meet unexpected needs +// +// # Overview +// +// The `Status` message contains three pieces of data: error code, error +// message, +// and error details. The error code should be an enum value +// of +// google.rpc.Code, but it may accept additional error codes if needed. +// The +// error message should be a developer-facing English message that +// helps +// developers *understand* and *resolve* the error. If a localized +// user-facing +// error message is needed, put the localized message in the error +// details or +// localize it in the client. The optional error details may contain +// arbitrary +// information about the error. There is a predefined set of error +// detail types +// in the package `google.rpc` that can be used for common error +// conditions. +// +// # Language mapping +// +// The `Status` message is the logical representation of the error +// model, but it +// is not necessarily the actual wire format. When the `Status` message +// is +// exposed in different client libraries and different wire protocols, +// it can be +// mapped differently. For example, it will likely be mapped to some +// exceptions +// in Java, but more likely mapped to some error codes in C. +// +// # Other uses +// +// The error model and the `Status` message can be used in a variety +// of +// environments, either with or without APIs, to provide a +// consistent developer experience across different +// environments. +// +// Example uses of this error model include: +// +// - Partial errors. If a service needs to return partial errors to the +// client, +// it may embed the `Status` in the normal response to indicate the +// partial +// errors. +// +// - Workflow errors. A typical workflow has multiple steps. Each step +// may +// have a `Status` message for error reporting. +// +// - Batch operations. If a client uses batch request and batch +// response, the +// `Status` message should be used directly inside batch response, +// one for +// each error sub-response. +// +// - Asynchronous operations. If an API call embeds asynchronous +// operation +// results in its response, the status of those operations should +// be +// represented directly using the `Status` message. +// +// - Logging. If some API errors are stored in logs, the message +// `Status` could +// be used directly after any stripping needed for security/privacy +// reasons. +type Status struct { + // Code: The status code, which should be an enum value of + // google.rpc.Code. + Code int64 `json:"code,omitempty"` + + // Details: A list of messages that carry the error details. There is a + // common set of + // message types for APIs to use. + Details []googleapi.RawMessage `json:"details,omitempty"` + + // Message: A developer-facing error message, which should be in + // English. Any + // user-facing error message should be localized and sent in + // the + // google.rpc.Status.details field, or localized by the client. + Message string `json:"message,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Code") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Code") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *Status) MarshalJSON() ([]byte, error) { + type NoMethod Status + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// TestIamPermissionsRequest: Request message for `TestIamPermissions` +// method. +type TestIamPermissionsRequest struct { + // Permissions: The set of permissions to check for the `resource`. + // Permissions with + // wildcards (such as '*' or 'storage.*') are not allowed. For + // more + // information see + // [IAM + // Overview](https://cloud.google.com/iam/docs/overview#permissions). + Permissions []string `json:"permissions,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Permissions") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Permissions") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *TestIamPermissionsRequest) MarshalJSON() ([]byte, error) { + type NoMethod TestIamPermissionsRequest + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// TestIamPermissionsResponse: Response message for `TestIamPermissions` +// method. +type TestIamPermissionsResponse struct { + // Permissions: A subset of `TestPermissionsRequest.permissions` that + // the caller is + // allowed. + Permissions []string `json:"permissions,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "Permissions") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Permissions") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *TestIamPermissionsResponse) MarshalJSON() ([]byte, error) { + type NoMethod TestIamPermissionsResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// UndeleteFolderRequest: The UndeleteFolder request message. +type UndeleteFolderRequest struct { +} + +// method id "cloudresourcemanager.folders.create": + +type FoldersCreateCall struct { + s *Service + folder *Folder + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Create: Creates a Folder in the resource hierarchy. +// Returns an Operation which can be used to track the progress of +// the +// folder creation workflow. +// Upon success the Operation.response field will be populated with +// the +// created Folder. +// +// In order to succeed, the addition of this new Folder must not +// violate +// the Folder naming, height or fanout constraints. +// +// + The Folder's display_name must be distinct from all other Folder's +// that +// share its parent. +// + The addition of the Folder must not cause the active Folder +// hierarchy +// to exceed a height of 4. Note, the full active + deleted Folder +// hierarchy +// is allowed to reach a height of 8; this provides additional headroom +// when +// moving folders that contain deleted folders. +// + The addition of the Folder must not cause the total number of +// Folders +// under its parent to exceed 100. +// +// If the operation fails due to a folder constraint violation, +// a PreconditionFailure explaining the violation will be returned. +// If the failure occurs synchronously then the PreconditionFailure +// will be returned via the Status.details field and if it +// occurs +// asynchronously then the PreconditionFailure will be returned +// via the the Operation.error field. +// +// The caller must have `resourcemanager.folders.create` permission on +// the +// identified parent. +func (r *FoldersService) Create(folder *Folder) *FoldersCreateCall { + c := &FoldersCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.folder = folder + return c +} + +// Parent sets the optional parameter "parent": The resource name of the +// new Folder's parent. +// Must be of the form `folders/{folder_id}` or +// `organizations/{org_id}`. +func (c *FoldersCreateCall) Parent(parent string) *FoldersCreateCall { + c.urlParams_.Set("parent", parent) + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *FoldersCreateCall) Fields(s ...googleapi.Field) *FoldersCreateCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *FoldersCreateCall) Context(ctx context.Context) *FoldersCreateCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *FoldersCreateCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *FoldersCreateCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.folder) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v2/folders") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("POST", urls, body) + req.Header = reqHeaders + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "cloudresourcemanager.folders.create" call. +// Exactly one of *Operation or error will be non-nil. Any non-2xx +// status code is an error. Response headers are in either +// *Operation.ServerResponse.Header or (if a response was returned at +// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified +// to check whether the returned error was because +// http.StatusNotModified was returned. +func (c *FoldersCreateCall) Do(opts ...googleapi.CallOption) (*Operation, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &Operation{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Creates a Folder in the resource hierarchy.\nReturns an Operation which can be used to track the progress of the\nfolder creation workflow.\nUpon success the Operation.response field will be populated with the\ncreated Folder.\n\nIn order to succeed, the addition of this new Folder must not violate\nthe Folder naming, height or fanout constraints.\n\n+ The Folder's display_name must be distinct from all other Folder's that\nshare its parent.\n+ The addition of the Folder must not cause the active Folder hierarchy\nto exceed a height of 4. Note, the full active + deleted Folder hierarchy\nis allowed to reach a height of 8; this provides additional headroom when\nmoving folders that contain deleted folders.\n+ The addition of the Folder must not cause the total number of Folders\nunder its parent to exceed 100.\n\nIf the operation fails due to a folder constraint violation,\na PreconditionFailure explaining the violation will be returned.\nIf the failure occurs synchronously then the PreconditionFailure\nwill be returned via the Status.details field and if it occurs\nasynchronously then the PreconditionFailure will be returned\nvia the the Operation.error field.\n\nThe caller must have `resourcemanager.folders.create` permission on the\nidentified parent.", + // "flatPath": "v2/folders", + // "httpMethod": "POST", + // "id": "cloudresourcemanager.folders.create", + // "parameterOrder": [], + // "parameters": { + // "parent": { + // "description": "The resource name of the new Folder's parent.\nMust be of the form `folders/{folder_id}` or `organizations/{org_id}`.", + // "location": "query", + // "type": "string" + // } + // }, + // "path": "v2/folders", + // "request": { + // "$ref": "Folder" + // }, + // "response": { + // "$ref": "Operation" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "cloudresourcemanager.folders.delete": + +type FoldersDeleteCall struct { + s *Service + name string + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Delete: Requests deletion of a Folder. The Folder is moved into +// the +// DELETE_REQUESTED state +// immediately, and is deleted approximately 30 days later. This method +// may +// only be called on an empty Folder in the +// ACTIVE state, where a Folder is empty if +// it doesn't contain any Folders or Projects in the +// ACTIVE state. +// The caller must have `resourcemanager.folders.delete` permission on +// the +// identified folder. +func (r *FoldersService) Delete(name string) *FoldersDeleteCall { + c := &FoldersDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *FoldersDeleteCall) Fields(s ...googleapi.Field) *FoldersDeleteCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *FoldersDeleteCall) Context(ctx context.Context) *FoldersDeleteCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *FoldersDeleteCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *FoldersDeleteCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v2/{+name}") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("DELETE", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "cloudresourcemanager.folders.delete" call. +// Exactly one of *Folder or error will be non-nil. Any non-2xx status +// code is an error. Response headers are in either +// *Folder.ServerResponse.Header or (if a response was returned at all) +// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to +// check whether the returned error was because http.StatusNotModified +// was returned. +func (c *FoldersDeleteCall) Do(opts ...googleapi.CallOption) (*Folder, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &Folder{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Requests deletion of a Folder. The Folder is moved into the\nDELETE_REQUESTED state\nimmediately, and is deleted approximately 30 days later. This method may\nonly be called on an empty Folder in the\nACTIVE state, where a Folder is empty if\nit doesn't contain any Folders or Projects in the\nACTIVE state.\nThe caller must have `resourcemanager.folders.delete` permission on the\nidentified folder.", + // "flatPath": "v2/folders/{foldersId}", + // "httpMethod": "DELETE", + // "id": "cloudresourcemanager.folders.delete", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "the resource name of the Folder to be deleted.\nMust be of the form `folders/{folder_id}`.", + // "location": "path", + // "pattern": "^folders/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v2/{+name}", + // "response": { + // "$ref": "Folder" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "cloudresourcemanager.folders.get": + +type FoldersGetCall struct { + s *Service + name string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// Get: Retrieves a Folder identified by the supplied resource +// name. +// Valid Folder resource names have the format +// `folders/{folder_id}` +// (for example, `folders/1234`). +// The caller must have `resourcemanager.folders.get` permission on +// the +// identified folder. +func (r *FoldersService) Get(name string) *FoldersGetCall { + c := &FoldersGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *FoldersGetCall) Fields(s ...googleapi.Field) *FoldersGetCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// IfNoneMatch sets the optional parameter which makes the operation +// fail if the object's ETag matches the given value. This is useful for +// getting updates only after the object has changed since the last +// request. Use googleapi.IsNotModified to check whether the response +// error from Do is the result of In-None-Match. +func (c *FoldersGetCall) IfNoneMatch(entityTag string) *FoldersGetCall { + c.ifNoneMatch_ = entityTag + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *FoldersGetCall) Context(ctx context.Context) *FoldersGetCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *FoldersGetCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *FoldersGetCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + if c.ifNoneMatch_ != "" { + reqHeaders.Set("If-None-Match", c.ifNoneMatch_) + } + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v2/{+name}") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("GET", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "cloudresourcemanager.folders.get" call. +// Exactly one of *Folder or error will be non-nil. Any non-2xx status +// code is an error. Response headers are in either +// *Folder.ServerResponse.Header or (if a response was returned at all) +// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to +// check whether the returned error was because http.StatusNotModified +// was returned. +func (c *FoldersGetCall) Do(opts ...googleapi.CallOption) (*Folder, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &Folder{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Retrieves a Folder identified by the supplied resource name.\nValid Folder resource names have the format `folders/{folder_id}`\n(for example, `folders/1234`).\nThe caller must have `resourcemanager.folders.get` permission on the\nidentified folder.", + // "flatPath": "v2/folders/{foldersId}", + // "httpMethod": "GET", + // "id": "cloudresourcemanager.folders.get", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "The resource name of the Folder to retrieve.\nMust be of the form `folders/{folder_id}`.", + // "location": "path", + // "pattern": "^folders/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v2/{+name}", + // "response": { + // "$ref": "Folder" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform", + // "https://www.googleapis.com/auth/cloud-platform.read-only" + // ] + // } + +} + +// method id "cloudresourcemanager.folders.getIamPolicy": + +type FoldersGetIamPolicyCall struct { + s *Service + resource string + getiampolicyrequest *GetIamPolicyRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// GetIamPolicy: Gets the access control policy for a Folder. The +// returned policy may be +// empty if no such policy or resource exists. The `resource` field +// should +// be the Folder's resource name, e.g. "folders/1234". +// The caller must have `resourcemanager.folders.getIamPolicy` +// permission +// on the identified folder. +func (r *FoldersService) GetIamPolicy(resource string, getiampolicyrequest *GetIamPolicyRequest) *FoldersGetIamPolicyCall { + c := &FoldersGetIamPolicyCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.resource = resource + c.getiampolicyrequest = getiampolicyrequest + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *FoldersGetIamPolicyCall) Fields(s ...googleapi.Field) *FoldersGetIamPolicyCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *FoldersGetIamPolicyCall) Context(ctx context.Context) *FoldersGetIamPolicyCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *FoldersGetIamPolicyCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *FoldersGetIamPolicyCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.getiampolicyrequest) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v2/{+resource}:getIamPolicy") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("POST", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "resource": c.resource, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "cloudresourcemanager.folders.getIamPolicy" call. +// Exactly one of *Policy or error will be non-nil. Any non-2xx status +// code is an error. Response headers are in either +// *Policy.ServerResponse.Header or (if a response was returned at all) +// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to +// check whether the returned error was because http.StatusNotModified +// was returned. +func (c *FoldersGetIamPolicyCall) Do(opts ...googleapi.CallOption) (*Policy, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &Policy{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Gets the access control policy for a Folder. The returned policy may be\nempty if no such policy or resource exists. The `resource` field should\nbe the Folder's resource name, e.g. \"folders/1234\".\nThe caller must have `resourcemanager.folders.getIamPolicy` permission\non the identified folder.", + // "flatPath": "v2/folders/{foldersId}:getIamPolicy", + // "httpMethod": "POST", + // "id": "cloudresourcemanager.folders.getIamPolicy", + // "parameterOrder": [ + // "resource" + // ], + // "parameters": { + // "resource": { + // "description": "REQUIRED: The resource for which the policy is being requested.\nSee the operation documentation for the appropriate value for this field.", + // "location": "path", + // "pattern": "^folders/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v2/{+resource}:getIamPolicy", + // "request": { + // "$ref": "GetIamPolicyRequest" + // }, + // "response": { + // "$ref": "Policy" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform", + // "https://www.googleapis.com/auth/cloud-platform.read-only" + // ] + // } + +} + +// method id "cloudresourcemanager.folders.list": + +type FoldersListCall struct { + s *Service + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// List: Lists the Folders that are direct descendants of supplied +// parent resource. +// List provides a strongly consistent view of the Folders +// underneath +// the specified parent resource. +// List returns Folders sorted based upon the (ascending) lexical +// ordering +// of their display_name. +// The caller must have `resourcemanager.folders.list` permission on +// the +// identified parent. +func (r *FoldersService) List() *FoldersListCall { + c := &FoldersListCall{s: r.s, urlParams_: make(gensupport.URLParams)} + return c +} + +// PageSize sets the optional parameter "pageSize": The maximum number +// of Folders to return in the response. +// This field is optional. +func (c *FoldersListCall) PageSize(pageSize int64) *FoldersListCall { + c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) + return c +} + +// PageToken sets the optional parameter "pageToken": A pagination token +// returned from a previous call to `ListFolders` +// that indicates where this listing should continue from. +// This field is optional. +func (c *FoldersListCall) PageToken(pageToken string) *FoldersListCall { + c.urlParams_.Set("pageToken", pageToken) + return c +} + +// Parent sets the optional parameter "parent": The resource name of the +// Organization or Folder whose Folders are +// being listed. +// Must be of the form `folders/{folder_id}` or +// `organizations/{org_id}`. +// Access to this method is controlled by checking +// the +// `resourcemanager.folders.list` permission on the `parent`. +func (c *FoldersListCall) Parent(parent string) *FoldersListCall { + c.urlParams_.Set("parent", parent) + return c +} + +// ShowDeleted sets the optional parameter "showDeleted": Controls +// whether Folders in the +// DELETE_REQUESTED +// state should be returned. Defaults to false. This field is optional. +func (c *FoldersListCall) ShowDeleted(showDeleted bool) *FoldersListCall { + c.urlParams_.Set("showDeleted", fmt.Sprint(showDeleted)) + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *FoldersListCall) Fields(s ...googleapi.Field) *FoldersListCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// IfNoneMatch sets the optional parameter which makes the operation +// fail if the object's ETag matches the given value. This is useful for +// getting updates only after the object has changed since the last +// request. Use googleapi.IsNotModified to check whether the response +// error from Do is the result of In-None-Match. +func (c *FoldersListCall) IfNoneMatch(entityTag string) *FoldersListCall { + c.ifNoneMatch_ = entityTag + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *FoldersListCall) Context(ctx context.Context) *FoldersListCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *FoldersListCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *FoldersListCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + if c.ifNoneMatch_ != "" { + reqHeaders.Set("If-None-Match", c.ifNoneMatch_) + } + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v2/folders") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("GET", urls, body) + req.Header = reqHeaders + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "cloudresourcemanager.folders.list" call. +// Exactly one of *ListFoldersResponse or error will be non-nil. Any +// non-2xx status code is an error. Response headers are in either +// *ListFoldersResponse.ServerResponse.Header or (if a response was +// returned at all) in error.(*googleapi.Error).Header. Use +// googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *FoldersListCall) Do(opts ...googleapi.CallOption) (*ListFoldersResponse, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &ListFoldersResponse{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Lists the Folders that are direct descendants of supplied parent resource.\nList provides a strongly consistent view of the Folders underneath\nthe specified parent resource.\nList returns Folders sorted based upon the (ascending) lexical ordering\nof their display_name.\nThe caller must have `resourcemanager.folders.list` permission on the\nidentified parent.", + // "flatPath": "v2/folders", + // "httpMethod": "GET", + // "id": "cloudresourcemanager.folders.list", + // "parameterOrder": [], + // "parameters": { + // "pageSize": { + // "description": "The maximum number of Folders to return in the response.\nThis field is optional.", + // "format": "int32", + // "location": "query", + // "type": "integer" + // }, + // "pageToken": { + // "description": "A pagination token returned from a previous call to `ListFolders`\nthat indicates where this listing should continue from.\nThis field is optional.", + // "location": "query", + // "type": "string" + // }, + // "parent": { + // "description": "The resource name of the Organization or Folder whose Folders are\nbeing listed.\nMust be of the form `folders/{folder_id}` or `organizations/{org_id}`.\nAccess to this method is controlled by checking the\n`resourcemanager.folders.list` permission on the `parent`.", + // "location": "query", + // "type": "string" + // }, + // "showDeleted": { + // "description": "Controls whether Folders in the\nDELETE_REQUESTED\nstate should be returned. Defaults to false. This field is optional.", + // "location": "query", + // "type": "boolean" + // } + // }, + // "path": "v2/folders", + // "response": { + // "$ref": "ListFoldersResponse" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform", + // "https://www.googleapis.com/auth/cloud-platform.read-only" + // ] + // } + +} + +// Pages invokes f for each page of results. +// A non-nil error returned from f will halt the iteration. +// The provided context supersedes any context provided to the Context method. +func (c *FoldersListCall) Pages(ctx context.Context, f func(*ListFoldersResponse) error) error { + c.ctx_ = ctx + defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point + for { + x, err := c.Do() + if err != nil { + return err + } + if err := f(x); err != nil { + return err + } + if x.NextPageToken == "" { + return nil + } + c.PageToken(x.NextPageToken) + } +} + +// method id "cloudresourcemanager.folders.move": + +type FoldersMoveCall struct { + s *Service + name string + movefolderrequest *MoveFolderRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Move: Moves a Folder under a new resource parent. +// Returns an Operation which can be used to track the progress of +// the +// folder move workflow. +// Upon success the Operation.response field will be populated with +// the +// moved Folder. +// Upon failure, a FolderOperationError categorizing the failure cause +// will +// be returned - if the failure occurs synchronously then +// the +// FolderOperationError will be returned via the Status.details +// field +// and if it occurs asynchronously then the FolderOperation will be +// returned +// via the the Operation.error field. +// In addition, the Operation.metadata field will be populated with +// a +// FolderOperation message as an aid to stateless clients. +// Folder moves will be rejected if they violate either the naming, +// height +// or fanout constraints described in the +// CreateFolder documentation. +// The caller must have `resourcemanager.folders.move` permission on +// the +// folder's current and proposed new parent. +func (r *FoldersService) Move(name string, movefolderrequest *MoveFolderRequest) *FoldersMoveCall { + c := &FoldersMoveCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + c.movefolderrequest = movefolderrequest + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *FoldersMoveCall) Fields(s ...googleapi.Field) *FoldersMoveCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *FoldersMoveCall) Context(ctx context.Context) *FoldersMoveCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *FoldersMoveCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *FoldersMoveCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.movefolderrequest) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v2/{+name}:move") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("POST", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "cloudresourcemanager.folders.move" call. +// Exactly one of *Operation or error will be non-nil. Any non-2xx +// status code is an error. Response headers are in either +// *Operation.ServerResponse.Header or (if a response was returned at +// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified +// to check whether the returned error was because +// http.StatusNotModified was returned. +func (c *FoldersMoveCall) Do(opts ...googleapi.CallOption) (*Operation, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &Operation{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Moves a Folder under a new resource parent.\nReturns an Operation which can be used to track the progress of the\nfolder move workflow.\nUpon success the Operation.response field will be populated with the\nmoved Folder.\nUpon failure, a FolderOperationError categorizing the failure cause will\nbe returned - if the failure occurs synchronously then the\nFolderOperationError will be returned via the Status.details field\nand if it occurs asynchronously then the FolderOperation will be returned\nvia the the Operation.error field.\nIn addition, the Operation.metadata field will be populated with a\nFolderOperation message as an aid to stateless clients.\nFolder moves will be rejected if they violate either the naming, height\nor fanout constraints described in the\nCreateFolder documentation.\nThe caller must have `resourcemanager.folders.move` permission on the\nfolder's current and proposed new parent.", + // "flatPath": "v2/folders/{foldersId}:move", + // "httpMethod": "POST", + // "id": "cloudresourcemanager.folders.move", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "The resource name of the Folder to move.\nMust be of the form folders/{folder_id}", + // "location": "path", + // "pattern": "^folders/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v2/{+name}:move", + // "request": { + // "$ref": "MoveFolderRequest" + // }, + // "response": { + // "$ref": "Operation" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "cloudresourcemanager.folders.patch": + +type FoldersPatchCall struct { + s *Service + name string + folder *Folder + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Patch: Updates a Folder, changing its display_name. +// Changes to the folder display_name will be rejected if they violate +// either +// the display_name formatting rules or naming constraints described +// in +// the CreateFolder documentation. +// +// The Folder's display name must start and end with a letter or +// digit, +// may contain letters, digits, spaces, hyphens and underscores and can +// be +// no longer than 30 characters. This is captured by the regular +// expression: +// [\p{L}\p{N}]({\p{L}\p{N}_- ]{0,28}[\p{L}\p{N}])?. +// The caller must have `resourcemanager.folders.update` permission on +// the +// identified folder. +// +// If the update fails due to the unique name constraint then +// a +// PreconditionFailure explaining this violation will be returned +// in the Status.details field. +func (r *FoldersService) Patch(name string, folder *Folder) *FoldersPatchCall { + c := &FoldersPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + c.folder = folder + return c +} + +// UpdateMask sets the optional parameter "updateMask": Fields to be +// updated. +// Only the `display_name` can be updated. +func (c *FoldersPatchCall) UpdateMask(updateMask string) *FoldersPatchCall { + c.urlParams_.Set("updateMask", updateMask) + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *FoldersPatchCall) Fields(s ...googleapi.Field) *FoldersPatchCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *FoldersPatchCall) Context(ctx context.Context) *FoldersPatchCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *FoldersPatchCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *FoldersPatchCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.folder) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v2/{+name}") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("PATCH", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "cloudresourcemanager.folders.patch" call. +// Exactly one of *Folder or error will be non-nil. Any non-2xx status +// code is an error. Response headers are in either +// *Folder.ServerResponse.Header or (if a response was returned at all) +// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to +// check whether the returned error was because http.StatusNotModified +// was returned. +func (c *FoldersPatchCall) Do(opts ...googleapi.CallOption) (*Folder, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &Folder{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Updates a Folder, changing its display_name.\nChanges to the folder display_name will be rejected if they violate either\nthe display_name formatting rules or naming constraints described in\nthe CreateFolder documentation.\n\nThe Folder's display name must start and end with a letter or digit,\nmay contain letters, digits, spaces, hyphens and underscores and can be\nno longer than 30 characters. This is captured by the regular expression:\n[\\p{L}\\p{N}]({\\p{L}\\p{N}_- ]{0,28}[\\p{L}\\p{N}])?.\nThe caller must have `resourcemanager.folders.update` permission on the\nidentified folder.\n\nIf the update fails due to the unique name constraint then a\nPreconditionFailure explaining this violation will be returned\nin the Status.details field.", + // "flatPath": "v2/folders/{foldersId}", + // "httpMethod": "PATCH", + // "id": "cloudresourcemanager.folders.patch", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "Output only. The resource name of the Folder.\nIts format is `folders/{folder_id}`, for example: \"folders/1234\".", + // "location": "path", + // "pattern": "^folders/[^/]+$", + // "required": true, + // "type": "string" + // }, + // "updateMask": { + // "description": "Fields to be updated.\nOnly the `display_name` can be updated.", + // "format": "google-fieldmask", + // "location": "query", + // "type": "string" + // } + // }, + // "path": "v2/{+name}", + // "request": { + // "$ref": "Folder" + // }, + // "response": { + // "$ref": "Folder" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "cloudresourcemanager.folders.search": + +type FoldersSearchCall struct { + s *Service + searchfoldersrequest *SearchFoldersRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Search: Search for folders that match specific filter +// criteria. +// Search provides an eventually consistent view of the folders a user +// has +// access to which meet the specified filter criteria. +// +// This will only return folders on which the caller has the +// permission `resourcemanager.folders.get`. +func (r *FoldersService) Search(searchfoldersrequest *SearchFoldersRequest) *FoldersSearchCall { + c := &FoldersSearchCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.searchfoldersrequest = searchfoldersrequest + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *FoldersSearchCall) Fields(s ...googleapi.Field) *FoldersSearchCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *FoldersSearchCall) Context(ctx context.Context) *FoldersSearchCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *FoldersSearchCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *FoldersSearchCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.searchfoldersrequest) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v2/folders:search") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("POST", urls, body) + req.Header = reqHeaders + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "cloudresourcemanager.folders.search" call. +// Exactly one of *SearchFoldersResponse or error will be non-nil. Any +// non-2xx status code is an error. Response headers are in either +// *SearchFoldersResponse.ServerResponse.Header or (if a response was +// returned at all) in error.(*googleapi.Error).Header. Use +// googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *FoldersSearchCall) Do(opts ...googleapi.CallOption) (*SearchFoldersResponse, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &SearchFoldersResponse{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Search for folders that match specific filter criteria.\nSearch provides an eventually consistent view of the folders a user has\naccess to which meet the specified filter criteria.\n\nThis will only return folders on which the caller has the\npermission `resourcemanager.folders.get`.", + // "flatPath": "v2/folders:search", + // "httpMethod": "POST", + // "id": "cloudresourcemanager.folders.search", + // "parameterOrder": [], + // "parameters": {}, + // "path": "v2/folders:search", + // "request": { + // "$ref": "SearchFoldersRequest" + // }, + // "response": { + // "$ref": "SearchFoldersResponse" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform", + // "https://www.googleapis.com/auth/cloud-platform.read-only" + // ] + // } + +} + +// Pages invokes f for each page of results. +// A non-nil error returned from f will halt the iteration. +// The provided context supersedes any context provided to the Context method. +func (c *FoldersSearchCall) Pages(ctx context.Context, f func(*SearchFoldersResponse) error) error { + c.ctx_ = ctx + defer func(pt string) { c.searchfoldersrequest.PageToken = pt }(c.searchfoldersrequest.PageToken) // reset paging to original point + for { + x, err := c.Do() + if err != nil { + return err + } + if err := f(x); err != nil { + return err + } + if x.NextPageToken == "" { + return nil + } + c.searchfoldersrequest.PageToken = x.NextPageToken + } +} + +// method id "cloudresourcemanager.folders.setIamPolicy": + +type FoldersSetIamPolicyCall struct { + s *Service + resource string + setiampolicyrequest *SetIamPolicyRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// SetIamPolicy: Sets the access control policy on a Folder, replacing +// any existing policy. +// The `resource` field should be the Folder's resource name, +// e.g. +// "folders/1234". +// The caller must have `resourcemanager.folders.setIamPolicy` +// permission +// on the identified folder. +func (r *FoldersService) SetIamPolicy(resource string, setiampolicyrequest *SetIamPolicyRequest) *FoldersSetIamPolicyCall { + c := &FoldersSetIamPolicyCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.resource = resource + c.setiampolicyrequest = setiampolicyrequest + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *FoldersSetIamPolicyCall) Fields(s ...googleapi.Field) *FoldersSetIamPolicyCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *FoldersSetIamPolicyCall) Context(ctx context.Context) *FoldersSetIamPolicyCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *FoldersSetIamPolicyCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *FoldersSetIamPolicyCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.setiampolicyrequest) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v2/{+resource}:setIamPolicy") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("POST", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "resource": c.resource, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "cloudresourcemanager.folders.setIamPolicy" call. +// Exactly one of *Policy or error will be non-nil. Any non-2xx status +// code is an error. Response headers are in either +// *Policy.ServerResponse.Header or (if a response was returned at all) +// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to +// check whether the returned error was because http.StatusNotModified +// was returned. +func (c *FoldersSetIamPolicyCall) Do(opts ...googleapi.CallOption) (*Policy, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &Policy{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Sets the access control policy on a Folder, replacing any existing policy.\nThe `resource` field should be the Folder's resource name, e.g.\n\"folders/1234\".\nThe caller must have `resourcemanager.folders.setIamPolicy` permission\non the identified folder.", + // "flatPath": "v2/folders/{foldersId}:setIamPolicy", + // "httpMethod": "POST", + // "id": "cloudresourcemanager.folders.setIamPolicy", + // "parameterOrder": [ + // "resource" + // ], + // "parameters": { + // "resource": { + // "description": "REQUIRED: The resource for which the policy is being specified.\nSee the operation documentation for the appropriate value for this field.", + // "location": "path", + // "pattern": "^folders/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v2/{+resource}:setIamPolicy", + // "request": { + // "$ref": "SetIamPolicyRequest" + // }, + // "response": { + // "$ref": "Policy" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "cloudresourcemanager.folders.testIamPermissions": + +type FoldersTestIamPermissionsCall struct { + s *Service + resource string + testiampermissionsrequest *TestIamPermissionsRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// TestIamPermissions: Returns permissions that a caller has on the +// specified Folder. +// The `resource` field should be the Folder's resource name, +// e.g. "folders/1234". +// +// There are no permissions required for making this API call. +func (r *FoldersService) TestIamPermissions(resource string, testiampermissionsrequest *TestIamPermissionsRequest) *FoldersTestIamPermissionsCall { + c := &FoldersTestIamPermissionsCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.resource = resource + c.testiampermissionsrequest = testiampermissionsrequest + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *FoldersTestIamPermissionsCall) Fields(s ...googleapi.Field) *FoldersTestIamPermissionsCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *FoldersTestIamPermissionsCall) Context(ctx context.Context) *FoldersTestIamPermissionsCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *FoldersTestIamPermissionsCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *FoldersTestIamPermissionsCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.testiampermissionsrequest) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v2/{+resource}:testIamPermissions") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("POST", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "resource": c.resource, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "cloudresourcemanager.folders.testIamPermissions" call. +// Exactly one of *TestIamPermissionsResponse or error will be non-nil. +// Any non-2xx status code is an error. Response headers are in either +// *TestIamPermissionsResponse.ServerResponse.Header or (if a response +// was returned at all) in error.(*googleapi.Error).Header. Use +// googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *FoldersTestIamPermissionsCall) Do(opts ...googleapi.CallOption) (*TestIamPermissionsResponse, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &TestIamPermissionsResponse{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Returns permissions that a caller has on the specified Folder.\nThe `resource` field should be the Folder's resource name,\ne.g. \"folders/1234\".\n\nThere are no permissions required for making this API call.", + // "flatPath": "v2/folders/{foldersId}:testIamPermissions", + // "httpMethod": "POST", + // "id": "cloudresourcemanager.folders.testIamPermissions", + // "parameterOrder": [ + // "resource" + // ], + // "parameters": { + // "resource": { + // "description": "REQUIRED: The resource for which the policy detail is being requested.\nSee the operation documentation for the appropriate value for this field.", + // "location": "path", + // "pattern": "^folders/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v2/{+resource}:testIamPermissions", + // "request": { + // "$ref": "TestIamPermissionsRequest" + // }, + // "response": { + // "$ref": "TestIamPermissionsResponse" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "cloudresourcemanager.folders.undelete": + +type FoldersUndeleteCall struct { + s *Service + name string + undeletefolderrequest *UndeleteFolderRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Undelete: Cancels the deletion request for a Folder. This method may +// only be +// called on a Folder in the +// DELETE_REQUESTED state. +// In order to succeed, the Folder's parent must be in the +// ACTIVE state. +// In addition, reintroducing the folder into the tree must not +// violate +// folder naming, height and fanout constraints described in +// the +// CreateFolder documentation. +// The caller must have `resourcemanager.folders.undelete` permission on +// the +// identified folder. +func (r *FoldersService) Undelete(name string, undeletefolderrequest *UndeleteFolderRequest) *FoldersUndeleteCall { + c := &FoldersUndeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + c.undeletefolderrequest = undeletefolderrequest + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *FoldersUndeleteCall) Fields(s ...googleapi.Field) *FoldersUndeleteCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *FoldersUndeleteCall) Context(ctx context.Context) *FoldersUndeleteCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *FoldersUndeleteCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *FoldersUndeleteCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.undeletefolderrequest) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v2/{+name}:undelete") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("POST", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "cloudresourcemanager.folders.undelete" call. +// Exactly one of *Folder or error will be non-nil. Any non-2xx status +// code is an error. Response headers are in either +// *Folder.ServerResponse.Header or (if a response was returned at all) +// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to +// check whether the returned error was because http.StatusNotModified +// was returned. +func (c *FoldersUndeleteCall) Do(opts ...googleapi.CallOption) (*Folder, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &Folder{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Cancels the deletion request for a Folder. This method may only be\ncalled on a Folder in the\nDELETE_REQUESTED state.\nIn order to succeed, the Folder's parent must be in the\nACTIVE state.\nIn addition, reintroducing the folder into the tree must not violate\nfolder naming, height and fanout constraints described in the\nCreateFolder documentation.\nThe caller must have `resourcemanager.folders.undelete` permission on the\nidentified folder.", + // "flatPath": "v2/folders/{foldersId}:undelete", + // "httpMethod": "POST", + // "id": "cloudresourcemanager.folders.undelete", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "The resource name of the Folder to undelete.\nMust be of the form `folders/{folder_id}`.", + // "location": "path", + // "pattern": "^folders/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v2/{+name}:undelete", + // "request": { + // "$ref": "UndeleteFolderRequest" + // }, + // "response": { + // "$ref": "Folder" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} diff --git a/vendor/google.golang.org/api/cloudresourcemanager/v2beta1/cloudresourcemanager-api.json b/vendor/google.golang.org/api/cloudresourcemanager/v2beta1/cloudresourcemanager-api.json index 28ebd8ba8..3e305c8fb 100644 --- a/vendor/google.golang.org/api/cloudresourcemanager/v2beta1/cloudresourcemanager-api.json +++ b/vendor/google.golang.org/api/cloudresourcemanager/v2beta1/cloudresourcemanager-api.json @@ -1,101 +1,581 @@ { - "schemas": { - "TestIamPermissionsRequest": { - "id": "TestIamPermissionsRequest", - "description": "Request message for `TestIamPermissions` method.", - "type": "object", - "properties": { - "permissions": { - "description": "The set of permissions to check for the `resource`. Permissions with\nwildcards (such as '*' or 'storage.*') are not allowed. For more\ninformation see\n[IAM Overview](https://cloud.google.com/iam/docs/overview#permissions).", - "type": "array", - "items": { - "type": "string" - } + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/cloud-platform": { + "description": "View and manage your data across Google Cloud Platform services" + }, + "https://www.googleapis.com/auth/cloud-platform.read-only": { + "description": "View your data across Google Cloud Platform services" } } + } + }, + "basePath": "", + "baseUrl": "https://cloudresourcemanager.googleapis.com/", + "batchPath": "batch", + "canonicalName": "Cloud Resource Manager", + "description": "The Google Cloud Resource Manager API provides methods for creating, reading, and updating project metadata.", + "discoveryVersion": "v1", + "documentationLink": "https://cloud.google.com/resource-manager", + "fullyEncodeReservedExpansion": true, + "icons": { + "x16": "http://www.google.com/images/icons/product/search-16.gif", + "x32": "http://www.google.com/images/icons/product/search-32.gif" + }, + "id": "cloudresourcemanager:v2beta1", + "kind": "discovery#restDescription", + "name": "cloudresourcemanager", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "$.xgafv": { + "description": "V1 error format.", + "enum": [ + "1", + "2" + ], + "enumDescriptions": [ + "v1 error format", + "v2 error format" + ], + "location": "query", + "type": "string" }, - "Policy": { - "description": "Defines an Identity and Access Management (IAM) policy. It is used to\nspecify access control policies for Cloud Platform resources.\n\n\nA `Policy` consists of a list of `bindings`. A `Binding` binds a list of\n`members` to a `role`, where the members can be user accounts, Google groups,\nGoogle domains, and service accounts. A `role` is a named list of permissions\ndefined by IAM.\n\n**Example**\n\n {\n \"bindings\": [\n {\n \"role\": \"roles/owner\",\n \"members\": [\n \"user:mike@example.com\",\n \"group:admins@example.com\",\n \"domain:google.com\",\n \"serviceAccount:my-other-app@appspot.gserviceaccount.com\",\n ]\n },\n {\n \"role\": \"roles/viewer\",\n \"members\": [\"user:sean@example.com\"]\n }\n ]\n }\n\nFor a description of IAM and its features, see the\n[IAM developer's guide](https://cloud.google.com/iam/docs).", - "type": "object", + "access_token": { + "description": "OAuth access token.", + "location": "query", + "type": "string" + }, + "alt": { + "default": "json", + "description": "Data format for response.", + "enum": [ + "json", + "media", + "proto" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json", + "Media download with context-dependent Content-Type", + "Responses with Content-Type of application/x-protobuf" + ], + "location": "query", + "type": "string" + }, + "bearer_token": { + "description": "OAuth bearer token.", + "location": "query", + "type": "string" + }, + "callback": { + "description": "JSONP", + "location": "query", + "type": "string" + }, + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "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.", + "location": "query", + "type": "string" + }, + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "pp": { + "default": "true", + "description": "Pretty-print response.", + "location": "query", + "type": "boolean" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", + "location": "query", + "type": "string" + }, + "uploadType": { + "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", + "location": "query", + "type": "string" + }, + "upload_protocol": { + "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", + "location": "query", + "type": "string" + } + }, + "protocol": "rest", + "resources": { + "folders": { + "methods": { + "create": { + "description": "Creates a Folder in the resource hierarchy.\nReturns an Operation which can be used to track the progress of the\nfolder creation workflow.\nUpon success the Operation.response field will be populated with the\ncreated Folder.\n\nIn order to succeed, the addition of this new Folder must not violate\nthe Folder naming, height or fanout constraints.\n\n+ The Folder's display_name must be distinct from all other Folder's that\nshare its parent.\n+ The addition of the Folder must not cause the active Folder hierarchy\nto exceed a height of 4. Note, the full active + deleted Folder hierarchy\nis allowed to reach a height of 8; this provides additional headroom when\nmoving folders that contain deleted folders.\n+ The addition of the Folder must not cause the total number of Folders\nunder its parent to exceed 100.\n\nIf the operation fails due to a folder constraint violation,\na PreconditionFailure explaining the violation will be returned.\nIf the failure occurs synchronously then the PreconditionFailure\nwill be returned via the Status.details field and if it occurs\nasynchronously then the PreconditionFailure will be returned\nvia the the Operation.error field.\n\nThe caller must have `resourcemanager.folders.create` permission on the\nidentified parent.", + "flatPath": "v2beta1/folders", + "httpMethod": "POST", + "id": "cloudresourcemanager.folders.create", + "parameterOrder": [], + "parameters": { + "parent": { + "description": "The resource name of the new Folder's parent.\nMust be of the form `folders/{folder_id}` or `organizations/{org_id}`.", + "location": "query", + "type": "string" + } + }, + "path": "v2beta1/folders", + "request": { + "$ref": "Folder" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Requests deletion of a Folder. The Folder is moved into the\nDELETE_REQUESTED state\nimmediately, and is deleted approximately 30 days later. This method may\nonly be called on an empty Folder in the\nACTIVE state, where a Folder is empty if\nit doesn't contain any Folders or Projects in the\nACTIVE state.\nThe caller must have `resourcemanager.folders.delete` permission on the\nidentified folder.", + "flatPath": "v2beta1/folders/{foldersId}", + "httpMethod": "DELETE", + "id": "cloudresourcemanager.folders.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "the resource name of the Folder to be deleted.\nMust be of the form `folders/{folder_id}`.", + "location": "path", + "pattern": "^folders/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2beta1/{+name}", + "response": { + "$ref": "Folder" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Retrieves a Folder identified by the supplied resource name.\nValid Folder resource names have the format `folders/{folder_id}`\n(for example, `folders/1234`).\nThe caller must have `resourcemanager.folders.get` permission on the\nidentified folder.", + "flatPath": "v2beta1/folders/{foldersId}", + "httpMethod": "GET", + "id": "cloudresourcemanager.folders.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The resource name of the Folder to retrieve.\nMust be of the form `folders/{folder_id}`.", + "location": "path", + "pattern": "^folders/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2beta1/{+name}", + "response": { + "$ref": "Folder" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + }, + "getIamPolicy": { + "description": "Gets the access control policy for a Folder. The returned policy may be\nempty if no such policy or resource exists. The `resource` field should\nbe the Folder's resource name, e.g. \"folders/1234\".\nThe caller must have `resourcemanager.folders.getIamPolicy` permission\non the identified folder.", + "flatPath": "v2beta1/folders/{foldersId}:getIamPolicy", + "httpMethod": "POST", + "id": "cloudresourcemanager.folders.getIamPolicy", + "parameterOrder": [ + "resource" + ], + "parameters": { + "resource": { + "description": "REQUIRED: The resource for which the policy is being requested.\nSee the operation documentation for the appropriate value for this field.", + "location": "path", + "pattern": "^folders/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2beta1/{+resource}:getIamPolicy", + "request": { + "$ref": "GetIamPolicyRequest" + }, + "response": { + "$ref": "Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + }, + "list": { + "description": "Lists the Folders that are direct descendants of supplied parent resource.\nList provides a strongly consistent view of the Folders underneath\nthe specified parent resource.\nList returns Folders sorted based upon the (ascending) lexical ordering\nof their display_name.\nThe caller must have `resourcemanager.folders.list` permission on the\nidentified parent.", + "flatPath": "v2beta1/folders", + "httpMethod": "GET", + "id": "cloudresourcemanager.folders.list", + "parameterOrder": [], + "parameters": { + "pageSize": { + "description": "The maximum number of Folders to return in the response.\nThis field is optional.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "A pagination token returned from a previous call to `ListFolders`\nthat indicates where this listing should continue from.\nThis field is optional.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "The resource name of the Organization or Folder whose Folders are\nbeing listed.\nMust be of the form `folders/{folder_id}` or `organizations/{org_id}`.\nAccess to this method is controlled by checking the\n`resourcemanager.folders.list` permission on the `parent`.", + "location": "query", + "type": "string" + }, + "showDeleted": { + "description": "Controls whether Folders in the\nDELETE_REQUESTED\nstate should be returned. Defaults to false. This field is optional.", + "location": "query", + "type": "boolean" + } + }, + "path": "v2beta1/folders", + "response": { + "$ref": "ListFoldersResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + }, + "move": { + "description": "Moves a Folder under a new resource parent.\nReturns an Operation which can be used to track the progress of the\nfolder move workflow.\nUpon success the Operation.response field will be populated with the\nmoved Folder.\nUpon failure, a FolderOperationError categorizing the failure cause will\nbe returned - if the failure occurs synchronously then the\nFolderOperationError will be returned via the Status.details field\nand if it occurs asynchronously then the FolderOperation will be returned\nvia the the Operation.error field.\nIn addition, the Operation.metadata field will be populated with a\nFolderOperation message as an aid to stateless clients.\nFolder moves will be rejected if they violate either the naming, height\nor fanout constraints described in the\nCreateFolder documentation.\nThe caller must have `resourcemanager.folders.move` permission on the\nfolder's current and proposed new parent.", + "flatPath": "v2beta1/folders/{foldersId}:move", + "httpMethod": "POST", + "id": "cloudresourcemanager.folders.move", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The resource name of the Folder to move.\nMust be of the form folders/{folder_id}", + "location": "path", + "pattern": "^folders/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2beta1/{+name}:move", + "request": { + "$ref": "MoveFolderRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "patch": { + "description": "Updates a Folder, changing its display_name.\nChanges to the folder display_name will be rejected if they violate either\nthe display_name formatting rules or naming constraints described in the\nCreateFolder documentation.\n\nThe Folder's display name must start and end with a letter or digit,\nmay contain letters, digits, spaces, hyphens and underscores and can be\nno longer than 30 characters. This is captured by the regular expression:\n[\\p{L}\\p{N}]({\\p{L}\\p{N}_- ]{0,28}[\\p{L}\\p{N}])?.\nThe caller must have `resourcemanager.folders.update` permission on the\nidentified folder.\n\nIf the update fails due to the unique name constraint then a\nPreconditionFailure explaining this violation will be returned\nin the Status.details field.", + "flatPath": "v2beta1/folders/{foldersId}", + "httpMethod": "PATCH", + "id": "cloudresourcemanager.folders.patch", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Output only. The resource name of the Folder.\nIts format is `folders/{folder_id}`, for example: \"folders/1234\".", + "location": "path", + "pattern": "^folders/[^/]+$", + "required": true, + "type": "string" + }, + "updateMask": { + "description": "Fields to be updated.\nOnly the `display_name` can be updated.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + } + }, + "path": "v2beta1/{+name}", + "request": { + "$ref": "Folder" + }, + "response": { + "$ref": "Folder" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "search": { + "description": "Search for folders that match specific filter criteria.\nSearch provides an eventually consistent view of the folders a user has\naccess to which meet the specified filter criteria.\n\nThis will only return folders on which the caller has the\npermission `resourcemanager.folders.get`.", + "flatPath": "v2beta1/folders:search", + "httpMethod": "POST", + "id": "cloudresourcemanager.folders.search", + "parameterOrder": [], + "parameters": {}, + "path": "v2beta1/folders:search", + "request": { + "$ref": "SearchFoldersRequest" + }, + "response": { + "$ref": "SearchFoldersResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + }, + "setIamPolicy": { + "description": "Sets the access control policy on a Folder, replacing any existing policy.\nThe `resource` field should be the Folder's resource name, e.g.\n\"folders/1234\".\nThe caller must have `resourcemanager.folders.setIamPolicy` permission\non the identified folder.", + "flatPath": "v2beta1/folders/{foldersId}:setIamPolicy", + "httpMethod": "POST", + "id": "cloudresourcemanager.folders.setIamPolicy", + "parameterOrder": [ + "resource" + ], + "parameters": { + "resource": { + "description": "REQUIRED: The resource for which the policy is being specified.\nSee the operation documentation for the appropriate value for this field.", + "location": "path", + "pattern": "^folders/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2beta1/{+resource}:setIamPolicy", + "request": { + "$ref": "SetIamPolicyRequest" + }, + "response": { + "$ref": "Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified Folder.\nThe `resource` field should be the Folder's resource name,\ne.g. \"folders/1234\".\n\nThere are no permissions required for making this API call.", + "flatPath": "v2beta1/folders/{foldersId}:testIamPermissions", + "httpMethod": "POST", + "id": "cloudresourcemanager.folders.testIamPermissions", + "parameterOrder": [ + "resource" + ], + "parameters": { + "resource": { + "description": "REQUIRED: The resource for which the policy detail is being requested.\nSee the operation documentation for the appropriate value for this field.", + "location": "path", + "pattern": "^folders/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2beta1/{+resource}:testIamPermissions", + "request": { + "$ref": "TestIamPermissionsRequest" + }, + "response": { + "$ref": "TestIamPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "undelete": { + "description": "Cancels the deletion request for a Folder. This method may only be\ncalled on a Folder in the\nDELETE_REQUESTED state.\nIn order to succeed, the Folder's parent must be in the\nACTIVE state.\nIn addition, reintroducing the folder into the tree must not violate\nfolder naming, height and fanout constraints described in the\nCreateFolder documentation.\nThe caller must have `resourcemanager.folders.undelete` permission on the\nidentified folder.", + "flatPath": "v2beta1/folders/{foldersId}:undelete", + "httpMethod": "POST", + "id": "cloudresourcemanager.folders.undelete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The resource name of the Folder to undelete.\nMust be of the form `folders/{folder_id}`.", + "location": "path", + "pattern": "^folders/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2beta1/{+name}:undelete", + "request": { + "$ref": "UndeleteFolderRequest" + }, + "response": { + "$ref": "Folder" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + } + }, + "revision": "20180315", + "rootUrl": "https://cloudresourcemanager.googleapis.com/", + "schemas": { + "AuditConfig": { + "description": "Specifies the audit configuration for a service.\nThe configuration determines which permission types are logged, and what\nidentities, if any, are exempted from logging.\nAn AuditConfig must have one or more AuditLogConfigs.\n\nIf there are AuditConfigs for both `allServices` and a specific service,\nthe union of the two AuditConfigs is used for that service: the log_types\nspecified in each AuditConfig are enabled, and the exempted_members in each\nAuditLogConfig are exempted.\n\nExample Policy with multiple AuditConfigs:\n\n {\n \"audit_configs\": [\n {\n \"service\": \"allServices\"\n \"audit_log_configs\": [\n {\n \"log_type\": \"DATA_READ\",\n \"exempted_members\": [\n \"user:foo@gmail.com\"\n ]\n },\n {\n \"log_type\": \"DATA_WRITE\",\n },\n {\n \"log_type\": \"ADMIN_READ\",\n }\n ]\n },\n {\n \"service\": \"fooservice.googleapis.com\"\n \"audit_log_configs\": [\n {\n \"log_type\": \"DATA_READ\",\n },\n {\n \"log_type\": \"DATA_WRITE\",\n \"exempted_members\": [\n \"user:bar@gmail.com\"\n ]\n }\n ]\n }\n ]\n }\n\nFor fooservice, this policy enables DATA_READ, DATA_WRITE and ADMIN_READ\nlogging. It also exempts foo@gmail.com from DATA_READ logging, and\nbar@gmail.com from DATA_WRITE logging.", + "id": "AuditConfig", "properties": { - "etag": { - "description": "`etag` is used for optimistic concurrency control as a way to help\nprevent simultaneous updates of a policy from overwriting each other.\nIt is strongly suggested that systems make use of the `etag` in the\nread-modify-write cycle to perform policy updates in order to avoid race\nconditions: An `etag` is returned in the response to `getIamPolicy`, and\nsystems are expected to put that etag in the request to `setIamPolicy` to\nensure that their change will be applied to the same version of the policy.\n\nIf no `etag` is provided in the call to `setIamPolicy`, then the existing\npolicy is overwritten blindly.", - "format": "byte", + "auditLogConfigs": { + "description": "The configuration for logging of each type of permission.\nNext ID: 4", + "items": { + "$ref": "AuditLogConfig" + }, + "type": "array" + }, + "service": { + "description": "Specifies a service that will be enabled for audit logging.\nFor example, `storage.googleapis.com`, `cloudsql.googleapis.com`.\n`allServices` is a special value that covers all services.", "type": "string" - }, - "version": { - "description": "Deprecated.", - "format": "int32", - "type": "integer" - }, - "auditConfigs": { - "description": "Specifies cloud audit logging configuration for this policy.", - "type": "array", - "items": { - "$ref": "AuditConfig" - } - }, - "bindings": { - "description": "Associates a list of `members` to a `role`.\n`bindings` with no members will result in an error.", - "type": "array", - "items": { - "$ref": "Binding" - } } }, - "id": "Policy" + "type": "object" + }, + "AuditLogConfig": { + "description": "Provides the configuration for logging a type of permissions.\nExample:\n\n {\n \"audit_log_configs\": [\n {\n \"log_type\": \"DATA_READ\",\n \"exempted_members\": [\n \"user:foo@gmail.com\"\n ]\n },\n {\n \"log_type\": \"DATA_WRITE\",\n }\n ]\n }\n\nThis enables 'DATA_READ' and 'DATA_WRITE' logging, while exempting\nfoo@gmail.com from DATA_READ logging.", + "id": "AuditLogConfig", + "properties": { + "exemptedMembers": { + "description": "Specifies the identities that do not cause logging for this type of\npermission.\nFollows the same format of Binding.members.", + "items": { + "type": "string" + }, + "type": "array" + }, + "logType": { + "description": "The log type that this config enables.", + "enum": [ + "LOG_TYPE_UNSPECIFIED", + "ADMIN_READ", + "DATA_WRITE", + "DATA_READ" + ], + "enumDescriptions": [ + "Default case. Should never be this.", + "Admin reads. Example: CloudIAM getIamPolicy", + "Data writes. Example: CloudSQL Users create", + "Data reads. Example: CloudSQL Users list" + ], + "type": "string" + } + }, + "type": "object" + }, + "Binding": { + "description": "Associates `members` with a `role`.", + "id": "Binding", + "properties": { + "members": { + "description": "Specifies the identities requesting access for a Cloud Platform resource.\n`members` can have the following values:\n\n* `allUsers`: A special identifier that represents anyone who is\n on the internet; with or without a Google account.\n\n* `allAuthenticatedUsers`: A special identifier that represents anyone\n who is authenticated with a Google account or a service account.\n\n* `user:{emailid}`: An email address that represents a specific Google\n account. For example, `alice@gmail.com` or `joe@example.com`.\n\n\n* `serviceAccount:{emailid}`: An email address that represents a service\n account. For example, `my-other-app@appspot.gserviceaccount.com`.\n\n* `group:{emailid}`: An email address that represents a Google group.\n For example, `admins@example.com`.\n\n\n* `domain:{domain}`: A Google Apps domain name that represents all the\n users of that domain. For example, `google.com` or `example.com`.\n\n", + "items": { + "type": "string" + }, + "type": "array" + }, + "role": { + "description": "Role that is assigned to `members`.\nFor example, `roles/viewer`, `roles/editor`, or `roles/owner`.\nRequired", + "type": "string" + } + }, + "type": "object" + }, + "Folder": { + "description": "A Folder in an Organization's resource hierarchy, used to\norganize that Organization's resources.", + "id": "Folder", + "properties": { + "createTime": { + "description": "Output only. Timestamp when the Folder was created. Assigned by the server.", + "format": "google-datetime", + "type": "string" + }, + "displayName": { + "description": "The folder’s display name.\nA folder’s display name must be unique amongst its siblings, e.g.\nno two folders with the same parent can share the same display name.\nThe display name must start and end with a letter or digit, may contain\nletters, digits, spaces, hyphens and underscores and can be no longer\nthan 30 characters. This is captured by the regular expression:\n[\\p{L}\\p{N}]({\\p{L}\\p{N}_- ]{0,28}[\\p{L}\\p{N}])?.", + "type": "string" + }, + "lifecycleState": { + "description": "Output only. The lifecycle state of the folder.\nUpdates to the lifecycle_state must be performed via\nDeleteFolder and\nUndeleteFolder.", + "enum": [ + "LIFECYCLE_STATE_UNSPECIFIED", + "ACTIVE", + "DELETE_REQUESTED" + ], + "enumDescriptions": [ + "Unspecified state.", + "The normal and active state.", + "The folder has been marked for deletion by the user." + ], + "type": "string" + }, + "name": { + "description": "Output only. The resource name of the Folder.\nIts format is `folders/{folder_id}`, for example: \"folders/1234\".", + "type": "string" + }, + "parent": { + "description": "The Folder’s parent's resource name.\nUpdates to the folder's parent must be performed via\nMoveFolder.", + "type": "string" + } + }, + "type": "object" }, "FolderOperation": { "description": "Metadata describing a long running folder operation", - "type": "object", + "id": "FolderOperation", "properties": { - "displayName": { - "description": "The display name of the folder.", - "type": "string" - }, - "sourceParent": { - "description": "The resource name of the folder's parent.\nOnly applicable when the operation_type is MOVE.", - "type": "string" - }, "destinationParent": { "description": "The resource name of the folder or organization we are either creating\nthe folder under or moving the folder to.", "type": "string" }, + "displayName": { + "description": "The display name of the folder.", + "type": "string" + }, "operationType": { - "enumDescriptions": [ - "Operation type not specified.", - "A create folder operation.", - "A move folder operation." - ], + "description": "The type of this operation.", "enum": [ "OPERATION_TYPE_UNSPECIFIED", "CREATE", "MOVE" ], - "description": "The type of this operation.", + "enumDescriptions": [ + "Operation type not specified.", + "A create folder operation.", + "A move folder operation." + ], + "type": "string" + }, + "sourceParent": { + "description": "The resource name of the folder's parent.\nOnly applicable when the operation_type is MOVE.", "type": "string" } }, - "id": "FolderOperation" + "type": "object" }, "FolderOperationError": { - "id": "FolderOperationError", "description": "A classification of the Folder Operation error.", - "type": "object", + "id": "FolderOperationError", "properties": { "errorMessageId": { - "enumDescriptions": [ - "The error type was unrecognized or unspecified.", - "The attempted action would violate the max folder depth constraint.", - "The attempted action would violate the max child folders constraint.", - "The attempted action would violate the locally-unique folder\ndisplay_name constraint.", - "The resource being moved has been deleted.", - "The resource a folder was being added to has been deleted.", - "The attempted action would introduce cycle in resource path.", - "The attempted action would move a folder that is already being moved.", - "The folder the caller is trying to delete contains active resources.", - "The attempted action would violate the max deleted folder depth\nconstraint." - ], + "description": "The type of operation error experienced.", "enum": [ "ERROR_TYPE_UNSPECIFIED", "ACTIVE_FOLDER_HEIGHT_VIOLATION", @@ -108,20 +588,82 @@ "FOLDER_TO_DELETE_NON_EMPTY_VIOLATION", "DELETED_FOLDER_HEIGHT_VIOLATION" ], - "description": "The type of operation error experienced.", + "enumDescriptions": [ + "The error type was unrecognized or unspecified.", + "The attempted action would violate the max folder depth constraint.", + "The attempted action would violate the max child folders constraint.", + "The attempted action would violate the locally-unique folder\ndisplay_name constraint.", + "The resource being moved has been deleted.", + "The resource a folder was being added to has been deleted.", + "The attempted action would introduce cycle in resource path.", + "The attempted action would move a folder that is already being moved.", + "The folder the caller is trying to delete contains active resources.", + "The attempted action would violate the max deleted folder depth\nconstraint." + ], "type": "string" } - } + }, + "type": "object" + }, + "GetIamPolicyRequest": { + "description": "Request message for `GetIamPolicy` method.", + "id": "GetIamPolicyRequest", + "properties": {}, + "type": "object" + }, + "ListFoldersResponse": { + "description": "The ListFolders response message.", + "id": "ListFoldersResponse", + "properties": { + "folders": { + "description": "A possibly paginated list of Folders that are direct descendants of\nthe specified parent resource.", + "items": { + "$ref": "Folder" + }, + "type": "array" + }, + "nextPageToken": { + "description": "A pagination token returned from a previous call to `ListFolders`\nthat indicates from where listing should continue.\nThis field is optional.", + "type": "string" + } + }, + "type": "object" + }, + "MoveFolderRequest": { + "description": "The MoveFolder request message.", + "id": "MoveFolderRequest", + "properties": { + "destinationParent": { + "description": "The resource name of the Folder or Organization to reparent\nthe folder under.\nMust be of the form `folders/{folder_id}` or `organizations/{org_id}`.", + "type": "string" + } + }, + "type": "object" }, "Operation": { - "id": "Operation", "description": "This resource represents a long-running operation that is the result of a\nnetwork API call.", - "type": "object", + "id": "Operation", "properties": { "done": { "description": "If the value is `false`, it means the operation is still in progress.\nIf `true`, the operation is completed, and either `error` or `response` is\navailable.", "type": "boolean" }, + "error": { + "$ref": "Status", + "description": "The error result of the operation in case of failure or cancellation." + }, + "metadata": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "description": "Service-specific metadata associated with the operation. It typically\ncontains progress information and common metadata such as create time.\nSome services might not provide such metadata. Any method that returns a\nlong-running operation should document the metadata type, if any.", + "type": "object" + }, + "name": { + "description": "The server-assigned name, which is only unique within the same service that\noriginally returns it. If you use the default HTTP mapping, the\n`name` should have the format of `operations/some/unique/name`.", + "type": "string" + }, "response": { "additionalProperties": { "description": "Properties of the object. Contains field @type with type URL.", @@ -129,174 +671,44 @@ }, "description": "The normal response of the operation in case of success. If the original\nmethod returns no data on success, such as `Delete`, the response is\n`google.protobuf.Empty`. If the original method is standard\n`Get`/`Create`/`Update`, the response should be the resource. For other\nmethods, the response should have the type `XxxResponse`, where `Xxx`\nis the original method name. For example, if the original method name\nis `TakeSnapshot()`, the inferred response type is\n`TakeSnapshotResponse`.", "type": "object" - }, - "name": { - "description": "The server-assigned name, which is only unique within the same service that\noriginally returns it. If you use the default HTTP mapping, the\n`name` should have the format of `operations/some/unique/name`.", - "type": "string" - }, - "error": { - "description": "The error result of the operation in case of failure or cancellation.", - "$ref": "Status" - }, - "metadata": { - "description": "Service-specific metadata associated with the operation. It typically\ncontains progress information and common metadata such as create time.\nSome services might not provide such metadata. Any method that returns a\nlong-running operation should document the metadata type, if any.", - "type": "object", - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - } - } - } - }, - "AuditConfig": { - "description": "Specifies the audit configuration for a service.\nThe configuration determines which permission types are logged, and what\nidentities, if any, are exempted from logging.\nAn AuditConfig must have one or more AuditLogConfigs.\n\nIf there are AuditConfigs for both `allServices` and a specific service,\nthe union of the two AuditConfigs is used for that service: the log_types\nspecified in each AuditConfig are enabled, and the exempted_members in each\nAuditConfig are exempted.\n\nExample Policy with multiple AuditConfigs:\n\n {\n \"audit_configs\": [\n {\n \"service\": \"allServices\"\n \"audit_log_configs\": [\n {\n \"log_type\": \"DATA_READ\",\n \"exempted_members\": [\n \"user:foo@gmail.com\"\n ]\n },\n {\n \"log_type\": \"DATA_WRITE\",\n },\n {\n \"log_type\": \"ADMIN_READ\",\n }\n ]\n },\n {\n \"service\": \"fooservice.googleapis.com\"\n \"audit_log_configs\": [\n {\n \"log_type\": \"DATA_READ\",\n },\n {\n \"log_type\": \"DATA_WRITE\",\n \"exempted_members\": [\n \"user:bar@gmail.com\"\n ]\n }\n ]\n }\n ]\n }\n\nFor fooservice, this policy enables DATA_READ, DATA_WRITE and ADMIN_READ\nlogging. It also exempts foo@gmail.com from DATA_READ logging, and\nbar@gmail.com from DATA_WRITE logging.", - "type": "object", - "properties": { - "auditLogConfigs": { - "description": "The configuration for logging of each type of permission.\nNext ID: 4", - "type": "array", - "items": { - "$ref": "AuditLogConfig" - } - }, - "service": { - "description": "Specifies a service that will be enabled for audit logging.\nFor example, `storage.googleapis.com`, `cloudsql.googleapis.com`.\n`allServices` is a special value that covers all services.", - "type": "string" } }, - "id": "AuditConfig" + "type": "object" }, - "ListFoldersResponse": { - "id": "ListFoldersResponse", - "description": "The ListFolders response message.", - "type": "object", + "Policy": { + "description": "Defines an Identity and Access Management (IAM) policy. It is used to\nspecify access control policies for Cloud Platform resources.\n\n\nA `Policy` consists of a list of `bindings`. A `Binding` binds a list of\n`members` to a `role`, where the members can be user accounts, Google groups,\nGoogle domains, and service accounts. A `role` is a named list of permissions\ndefined by IAM.\n\n**Example**\n\n {\n \"bindings\": [\n {\n \"role\": \"roles/owner\",\n \"members\": [\n \"user:mike@example.com\",\n \"group:admins@example.com\",\n \"domain:google.com\",\n \"serviceAccount:my-other-app@appspot.gserviceaccount.com\",\n ]\n },\n {\n \"role\": \"roles/viewer\",\n \"members\": [\"user:sean@example.com\"]\n }\n ]\n }\n\nFor a description of IAM and its features, see the\n[IAM developer's guide](https://cloud.google.com/iam/docs).", + "id": "Policy", "properties": { - "folders": { - "description": "A possibly paginated list of Folders that are direct descendants of\nthe specified parent resource.", - "type": "array", + "auditConfigs": { + "description": "Specifies cloud audit logging configuration for this policy.", "items": { - "$ref": "Folder" - } + "$ref": "AuditConfig" + }, + "type": "array" }, - "nextPageToken": { - "description": "A pagination token returned from a previous call to `ListFolders`\nthat indicates from where listing should continue.\nThis field is optional.", - "type": "string" - } - } - }, - "MoveFolderRequest": { - "id": "MoveFolderRequest", - "description": "The MoveFolder request message.", - "type": "object", - "properties": { - "destinationParent": { - "description": "The resource name of the Folder or Organization to reparent\nthe folder under.\nMust be of the form `folders/{folder_id}` or `organizations/{org_id}`.", - "type": "string" - } - } - }, - "SearchFoldersResponse": { - "id": "SearchFoldersResponse", - "description": "The response message for searching folders.", - "type": "object", - "properties": { - "folders": { - "description": "A possibly paginated folder search results.\nthe specified parent resource.", - "type": "array", + "bindings": { + "description": "Associates a list of `members` to a `role`.\n`bindings` with no members will result in an error.", "items": { - "$ref": "Folder" - } + "$ref": "Binding" + }, + "type": "array" }, - "nextPageToken": { - "description": "A pagination token returned from a previous call to `SearchFolders`\nthat indicates from where searching should continue.\nThis field is optional.", + "etag": { + "description": "`etag` is used for optimistic concurrency control as a way to help\nprevent simultaneous updates of a policy from overwriting each other.\nIt is strongly suggested that systems make use of the `etag` in the\nread-modify-write cycle to perform policy updates in order to avoid race\nconditions: An `etag` is returned in the response to `getIamPolicy`, and\nsystems are expected to put that etag in the request to `setIamPolicy` to\nensure that their change will be applied to the same version of the policy.\n\nIf no `etag` is provided in the call to `setIamPolicy`, then the existing\npolicy is overwritten blindly.", + "format": "byte", "type": "string" - } - } - }, - "SetIamPolicyRequest": { - "description": "Request message for `SetIamPolicy` method.", - "type": "object", - "properties": { - "policy": { - "description": "REQUIRED: The complete policy to be applied to the `resource`. The size of\nthe policy is limited to a few 10s of KB. An empty policy is a\nvalid policy but certain Cloud Platform services (such as Projects)\nmight reject them.", - "$ref": "Policy" }, - "updateMask": { - "description": "OPTIONAL: A FieldMask specifying which fields of the policy to modify. Only\nthe fields in the mask will be modified. If no mask is provided, the\nfollowing default mask is used:\npaths: \"bindings, etag\"\nThis field is only used by Cloud IAM.", - "format": "google-fieldmask", - "type": "string" + "version": { + "description": "Deprecated.", + "format": "int32", + "type": "integer" } }, - "id": "SetIamPolicyRequest" - }, - "Status": { - "id": "Status", - "description": "The `Status` type defines a logical error model that is suitable for different\nprogramming environments, including REST APIs and RPC APIs. It is used by\n[gRPC](https://github.com/grpc). The error model is designed to be:\n\n- Simple to use and understand for most users\n- Flexible enough to meet unexpected needs\n\n# Overview\n\nThe `Status` message contains three pieces of data: error code, error message,\nand error details. The error code should be an enum value of\ngoogle.rpc.Code, but it may accept additional error codes if needed. The\nerror message should be a developer-facing English message that helps\ndevelopers *understand* and *resolve* the error. If a localized user-facing\nerror message is needed, put the localized message in the error details or\nlocalize it in the client. The optional error details may contain arbitrary\ninformation about the error. There is a predefined set of error detail types\nin the package `google.rpc` that can be used for common error conditions.\n\n# Language mapping\n\nThe `Status` message is the logical representation of the error model, but it\nis not necessarily the actual wire format. When the `Status` message is\nexposed in different client libraries and different wire protocols, it can be\nmapped differently. For example, it will likely be mapped to some exceptions\nin Java, but more likely mapped to some error codes in C.\n\n# Other uses\n\nThe error model and the `Status` message can be used in a variety of\nenvironments, either with or without APIs, to provide a\nconsistent developer experience across different environments.\n\nExample uses of this error model include:\n\n- Partial errors. If a service needs to return partial errors to the client,\n it may embed the `Status` in the normal response to indicate the partial\n errors.\n\n- Workflow errors. A typical workflow has multiple steps. Each step may\n have a `Status` message for error reporting.\n\n- Batch operations. If a client uses batch request and batch response, the\n `Status` message should be used directly inside batch response, one for\n each error sub-response.\n\n- Asynchronous operations. If an API call embeds asynchronous operation\n results in its response, the status of those operations should be\n represented directly using the `Status` message.\n\n- Logging. If some API errors are stored in logs, the message `Status` could\n be used directly after any stripping needed for security/privacy reasons.", - "type": "object", - "properties": { - "code": { - "description": "The status code, which should be an enum value of google.rpc.Code.", - "format": "int32", - "type": "integer" - }, - "message": { - "description": "A developer-facing error message, which should be in English. Any\nuser-facing error message should be localized and sent in the\ngoogle.rpc.Status.details field, or localized by the client.", - "type": "string" - }, - "details": { - "description": "A list of messages that carry the error details. There is a common set of\nmessage types for APIs to use.", - "type": "array", - "items": { - "type": "object", - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - } - } - } - } - }, - "Binding": { - "id": "Binding", - "description": "Associates `members` with a `role`.", - "type": "object", - "properties": { - "members": { - "description": "Specifies the identities requesting access for a Cloud Platform resource.\n`members` can have the following values:\n\n* `allUsers`: A special identifier that represents anyone who is\n on the internet; with or without a Google account.\n\n* `allAuthenticatedUsers`: A special identifier that represents anyone\n who is authenticated with a Google account or a service account.\n\n* `user:{emailid}`: An email address that represents a specific Google\n account. For example, `alice@gmail.com` or `joe@example.com`.\n\n\n* `serviceAccount:{emailid}`: An email address that represents a service\n account. For example, `my-other-app@appspot.gserviceaccount.com`.\n\n* `group:{emailid}`: An email address that represents a Google group.\n For example, `admins@example.com`.\n\n\n* `domain:{domain}`: A Google Apps domain name that represents all the\n users of that domain. For example, `google.com` or `example.com`.\n\n", - "type": "array", - "items": { - "type": "string" - } - }, - "role": { - "description": "Role that is assigned to `members`.\nFor example, `roles/viewer`, `roles/editor`, or `roles/owner`.\nRequired", - "type": "string" - } - } - }, - "SearchFoldersRequest": { - "id": "SearchFoldersRequest", - "description": "The request message for searching folders.", - "type": "object", - "properties": { - "pageToken": { - "description": "A pagination token returned from a previous call to `SearchFolders`\nthat indicates from where search should continue.\nThis field is optional.", - "type": "string" - }, - "pageSize": { - "description": "The maximum number of folders to return in the response.\nThis field is optional.", - "format": "int32", - "type": "integer" - }, - "query": { - "description": "Search criteria used to select the Folders to return.\nIf no search criteria is specified then all accessible folders will be\nreturned.\n\nQuery expressions can be used to restrict results based upon displayName,\nlifecycleState and parent, where the operators `=`, `NOT`, `AND` and `OR`\ncan be used along with the suffix wildcard symbol `*`.\n\nSome example queries are:\n\n|Query | Description|\n|----- | -----------|\n|displayName=Test*|Folders whose display name starts with \"Test\".|\n|lifecycleState=ACTIVE|Folders whose lifecycleState is ACTIVE.|\n|parent=folders/123|Folders whose parent is \"folders/123\".|\n|parent=folders/123 AND lifecycleState=ACTIVE|Active folders whose parent is \"folders/123\".|", - "type": "string" - } - } + "type": "object" }, "ProjectCreationStatus": { "description": "A status object which is used as the `metadata` field for the Operation\nreturned by CreateProject. It provides insight for when significant phases of\nProject creation have completed.", - "type": "object", + "id": "ProjectCreationStatus", "properties": { "createTime": { "description": "Creation time of the project creation workflow.", @@ -312,537 +724,125 @@ "type": "boolean" } }, - "id": "ProjectCreationStatus" + "type": "object" }, - "Folder": { - "id": "Folder", - "description": "A Folder in an Organization's resource hierarchy, used to\norganize that Organization's resources.", - "type": "object", + "SearchFoldersRequest": { + "description": "The request message for searching folders.", + "id": "SearchFoldersRequest", "properties": { - "parent": { - "description": "The Folder’s parent's resource name.\nUpdates to the folder's parent must be performed via\nMoveFolder.", + "pageSize": { + "description": "The maximum number of folders to return in the response.\nThis field is optional.", + "format": "int32", + "type": "integer" + }, + "pageToken": { + "description": "A pagination token returned from a previous call to `SearchFolders`\nthat indicates from where search should continue.\nThis field is optional.", "type": "string" }, - "createTime": { - "description": "Output only. Timestamp when the Folder was created. Assigned by the server.", - "format": "google-datetime", - "type": "string" - }, - "lifecycleState": { - "enumDescriptions": [ - "Unspecified state.", - "The normal and active state.", - "The folder has been marked for deletion by the user." - ], - "enum": [ - "LIFECYCLE_STATE_UNSPECIFIED", - "ACTIVE", - "DELETE_REQUESTED" - ], - "description": "Output only. The lifecycle state of the folder.\nUpdates to the lifecycle_state must be performed via\nDeleteFolder and\nUndeleteFolder.", - "type": "string" - }, - "name": { - "description": "Output only. The resource name of the Folder.\nIts format is `folders/{folder_id}`, for example: \"folders/1234\".", - "type": "string" - }, - "displayName": { - "description": "The folder’s display name.\nA folder’s display name must be unique amongst its siblings, e.g.\nno two folders with the same parent can share the same display name.\nThe display name must start and end with a letter or digit, may contain\nletters, digits, spaces, hyphens and underscores and can be no longer\nthan 30 characters. This is captured by the regular expression:\n[\\p{L}\\p{N}]({\\p{L}\\p{N}_- ]{0,28}[\\p{L}\\p{N}])?.", + "query": { + "description": "Search criteria used to select the Folders to return.\nIf no search criteria is specified then all accessible folders will be\nreturned.\n\nQuery expressions can be used to restrict results based upon displayName,\nlifecycleState and parent, where the operators `=`, `NOT`, `AND` and `OR`\ncan be used along with the suffix wildcard symbol `*`.\n\nSome example queries are:\n\n|Query | Description|\n|----- | -----------|\n|displayName=Test*|Folders whose display name starts with \"Test\".|\n|lifecycleState=ACTIVE|Folders whose lifecycleState is ACTIVE.|\n|parent=folders/123|Folders whose parent is \"folders/123\".|\n|parent=folders/123 AND lifecycleState=ACTIVE|Active folders whose parent is \"folders/123\".|", "type": "string" } - } + }, + "type": "object" + }, + "SearchFoldersResponse": { + "description": "The response message for searching folders.", + "id": "SearchFoldersResponse", + "properties": { + "folders": { + "description": "A possibly paginated folder search results.\nthe specified parent resource.", + "items": { + "$ref": "Folder" + }, + "type": "array" + }, + "nextPageToken": { + "description": "A pagination token returned from a previous call to `SearchFolders`\nthat indicates from where searching should continue.\nThis field is optional.", + "type": "string" + } + }, + "type": "object" + }, + "SetIamPolicyRequest": { + "description": "Request message for `SetIamPolicy` method.", + "id": "SetIamPolicyRequest", + "properties": { + "policy": { + "$ref": "Policy", + "description": "REQUIRED: The complete policy to be applied to the `resource`. The size of\nthe policy is limited to a few 10s of KB. An empty policy is a\nvalid policy but certain Cloud Platform services (such as Projects)\nmight reject them." + }, + "updateMask": { + "description": "OPTIONAL: A FieldMask specifying which fields of the policy to modify. Only\nthe fields in the mask will be modified. If no mask is provided, the\nfollowing default mask is used:\npaths: \"bindings, etag\"\nThis field is only used by Cloud IAM.", + "format": "google-fieldmask", + "type": "string" + } + }, + "type": "object" + }, + "Status": { + "description": "The `Status` type defines a logical error model that is suitable for different\nprogramming environments, including REST APIs and RPC APIs. It is used by\n[gRPC](https://github.com/grpc). The error model is designed to be:\n\n- Simple to use and understand for most users\n- Flexible enough to meet unexpected needs\n\n# Overview\n\nThe `Status` message contains three pieces of data: error code, error message,\nand error details. The error code should be an enum value of\ngoogle.rpc.Code, but it may accept additional error codes if needed. The\nerror message should be a developer-facing English message that helps\ndevelopers *understand* and *resolve* the error. If a localized user-facing\nerror message is needed, put the localized message in the error details or\nlocalize it in the client. The optional error details may contain arbitrary\ninformation about the error. There is a predefined set of error detail types\nin the package `google.rpc` that can be used for common error conditions.\n\n# Language mapping\n\nThe `Status` message is the logical representation of the error model, but it\nis not necessarily the actual wire format. When the `Status` message is\nexposed in different client libraries and different wire protocols, it can be\nmapped differently. For example, it will likely be mapped to some exceptions\nin Java, but more likely mapped to some error codes in C.\n\n# Other uses\n\nThe error model and the `Status` message can be used in a variety of\nenvironments, either with or without APIs, to provide a\nconsistent developer experience across different environments.\n\nExample uses of this error model include:\n\n- Partial errors. If a service needs to return partial errors to the client,\n it may embed the `Status` in the normal response to indicate the partial\n errors.\n\n- Workflow errors. A typical workflow has multiple steps. Each step may\n have a `Status` message for error reporting.\n\n- Batch operations. If a client uses batch request and batch response, the\n `Status` message should be used directly inside batch response, one for\n each error sub-response.\n\n- Asynchronous operations. If an API call embeds asynchronous operation\n results in its response, the status of those operations should be\n represented directly using the `Status` message.\n\n- Logging. If some API errors are stored in logs, the message `Status` could\n be used directly after any stripping needed for security/privacy reasons.", + "id": "Status", + "properties": { + "code": { + "description": "The status code, which should be an enum value of google.rpc.Code.", + "format": "int32", + "type": "integer" + }, + "details": { + "description": "A list of messages that carry the error details. There is a common set of\nmessage types for APIs to use.", + "items": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "A developer-facing error message, which should be in English. Any\nuser-facing error message should be localized and sent in the\ngoogle.rpc.Status.details field, or localized by the client.", + "type": "string" + } + }, + "type": "object" + }, + "TestIamPermissionsRequest": { + "description": "Request message for `TestIamPermissions` method.", + "id": "TestIamPermissionsRequest", + "properties": { + "permissions": { + "description": "The set of permissions to check for the `resource`. Permissions with\nwildcards (such as '*' or 'storage.*') are not allowed. For more\ninformation see\n[IAM Overview](https://cloud.google.com/iam/docs/overview#permissions).", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" }, "TestIamPermissionsResponse": { "description": "Response message for `TestIamPermissions` method.", - "type": "object", + "id": "TestIamPermissionsResponse", "properties": { "permissions": { "description": "A subset of `TestPermissionsRequest.permissions` that the caller is\nallowed.", - "type": "array", "items": { "type": "string" - } + }, + "type": "array" } }, - "id": "TestIamPermissionsResponse" - }, - "GetIamPolicyRequest": { - "id": "GetIamPolicyRequest", - "description": "Request message for `GetIamPolicy` method.", - "type": "object", - "properties": {} + "type": "object" }, "UndeleteFolderRequest": { - "id": "UndeleteFolderRequest", "description": "The UndeleteFolder request message.", - "type": "object", - "properties": {} - }, - "AuditLogConfig": { - "description": "Provides the configuration for logging a type of permissions.\nExample:\n\n {\n \"audit_log_configs\": [\n {\n \"log_type\": \"DATA_READ\",\n \"exempted_members\": [\n \"user:foo@gmail.com\"\n ]\n },\n {\n \"log_type\": \"DATA_WRITE\",\n }\n ]\n }\n\nThis enables 'DATA_READ' and 'DATA_WRITE' logging, while exempting\nfoo@gmail.com from DATA_READ logging.", - "type": "object", - "properties": { - "exemptedMembers": { - "description": "Specifies the identities that do not cause logging for this type of\npermission.\nFollows the same format of Binding.members.", - "type": "array", - "items": { - "type": "string" - } - }, - "logType": { - "description": "The log type that this config enables.", - "type": "string", - "enumDescriptions": [ - "Default case. Should never be this.", - "Admin reads. Example: CloudIAM getIamPolicy", - "Data writes. Example: CloudSQL Users create", - "Data reads. Example: CloudSQL Users list" - ], - "enum": [ - "LOG_TYPE_UNSPECIFIED", - "ADMIN_READ", - "DATA_WRITE", - "DATA_READ" - ] - } - }, - "id": "AuditLogConfig" + "id": "UndeleteFolderRequest", + "properties": {}, + "type": "object" } }, - "icons": { - "x32": "http://www.google.com/images/icons/product/search-32.gif", - "x16": "http://www.google.com/images/icons/product/search-16.gif" - }, - "protocol": "rest", - "canonicalName": "Cloud Resource Manager", - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/cloud-platform.read-only": { - "description": "View your data across Google Cloud Platform services" - }, - "https://www.googleapis.com/auth/cloud-platform": { - "description": "View and manage your data across Google Cloud Platform services" - } - } - } - }, - "rootUrl": "https://cloudresourcemanager.googleapis.com/", - "ownerDomain": "google.com", - "name": "cloudresourcemanager", - "batchPath": "batch", - "fullyEncodeReservedExpansion": true, - "title": "Google Cloud Resource Manager API", - "ownerName": "Google", - "resources": { - "folders": { - "methods": { - "move": { - "id": "cloudresourcemanager.folders.move", - "path": "v2beta1/{+name}:move", - "request": { - "$ref": "MoveFolderRequest" - }, - "description": "Moves a Folder under a new resource parent.\nReturns an Operation which can be used to track the progress of the\nfolder move workflow.\nUpon success the Operation.response field will be populated with the\nmoved Folder.\nUpon failure, a FolderOperationError categorizing the failure cause will\nbe returned - if the failure occurs synchronously then the\nFolderOperationError will be returned via the Status.details field\nand if it occurs asynchronously then the FolderOperation will be returned\nvia the the Operation.error field.\nIn addition, the Operation.metadata field will be populated with a\nFolderOperation message as an aid to stateless clients.\nFolder moves will be rejected if they violate either the naming, height\nor fanout constraints described in the\nCreateFolder documentation.\nThe caller must have `resourcemanager.folders.move` permission on the\nfolder's current and proposed new parent.", - "httpMethod": "POST", - "parameterOrder": [ - "name" - ], - "response": { - "$ref": "Operation" - }, - "parameters": { - "name": { - "description": "The resource name of the Folder to move.\nMust be of the form folders/{folder_id}", - "required": true, - "type": "string", - "pattern": "^folders/[^/]+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v2beta1/folders/{foldersId}:move" - }, - "testIamPermissions": { - "path": "v2beta1/{+resource}:testIamPermissions", - "id": "cloudresourcemanager.folders.testIamPermissions", - "request": { - "$ref": "TestIamPermissionsRequest" - }, - "description": "Returns permissions that a caller has on the specified Folder.\nThe `resource` field should be the Folder's resource name,\ne.g. \"folders/1234\".\n\nThere are no permissions required for making this API call.", - "response": { - "$ref": "TestIamPermissionsResponse" - }, - "parameterOrder": [ - "resource" - ], - "httpMethod": "POST", - "parameters": { - "resource": { - "pattern": "^folders/[^/]+$", - "location": "path", - "description": "REQUIRED: The resource for which the policy detail is being requested.\nSee the operation documentation for the appropriate value for this field.", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v2beta1/folders/{foldersId}:testIamPermissions" - }, - "delete": { - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "name": { - "description": "the resource name of the Folder to be deleted.\nMust be of the form `folders/{folder_id}`.", - "required": true, - "type": "string", - "pattern": "^folders/[^/]+$", - "location": "path" - } - }, - "flatPath": "v2beta1/folders/{foldersId}", - "path": "v2beta1/{+name}", - "id": "cloudresourcemanager.folders.delete", - "description": "Requests deletion of a Folder. The Folder is moved into the\nDELETE_REQUESTED state\nimmediately, and is deleted approximately 30 days later. This method may\nonly be called on an empty Folder in the\nACTIVE state, where a Folder is empty if\nit doesn't contain any Folders or Projects in the\nACTIVE state.\nThe caller must have `resourcemanager.folders.delete` permission on the\nidentified folder.", - "response": { - "$ref": "Folder" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "DELETE" - }, - "list": { - "description": "Lists the Folders that are direct descendants of supplied parent resource.\nList provides a strongly consistent view of the Folders underneath\nthe specified parent resource.\nList returns Folders sorted based upon the (ascending) lexical ordering\nof their display_name.\nThe caller must have `resourcemanager.folders.list` permission on the\nidentified parent.", - "response": { - "$ref": "ListFoldersResponse" - }, - "parameterOrder": [], - "httpMethod": "GET", - "parameters": { - "pageToken": { - "description": "A pagination token returned from a previous call to `ListFolders`\nthat indicates where this listing should continue from.\nThis field is optional.", - "type": "string", - "location": "query" - }, - "pageSize": { - "location": "query", - "description": "The maximum number of Folders to return in the response.\nThis field is optional.", - "format": "int32", - "type": "integer" - }, - "parent": { - "description": "The resource name of the Organization or Folder whose Folders are\nbeing listed.\nMust be of the form `folders/{folder_id}` or `organizations/{org_id}`.\nAccess to this method is controlled by checking the\n`resourcemanager.folders.list` permission on the `parent`.", - "type": "string", - "location": "query" - }, - "showDeleted": { - "description": "Controls whether Folders in the\nDELETE_REQUESTED\nstate should be returned. Defaults to false. This field is optional.", - "type": "boolean", - "location": "query" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ], - "flatPath": "v2beta1/folders", - "path": "v2beta1/folders", - "id": "cloudresourcemanager.folders.list" - }, - "setIamPolicy": { - "response": { - "$ref": "Policy" - }, - "parameterOrder": [ - "resource" - ], - "httpMethod": "POST", - "parameters": { - "resource": { - "pattern": "^folders/[^/]+$", - "location": "path", - "description": "REQUIRED: The resource for which the policy is being specified.\nSee the operation documentation for the appropriate value for this field.", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v2beta1/folders/{foldersId}:setIamPolicy", - "path": "v2beta1/{+resource}:setIamPolicy", - "id": "cloudresourcemanager.folders.setIamPolicy", - "request": { - "$ref": "SetIamPolicyRequest" - }, - "description": "Sets the access control policy on a Folder, replacing any existing policy.\nThe `resource` field should be the Folder's resource name, e.g.\n\"folders/1234\".\nThe caller must have `resourcemanager.folders.setIamPolicy` permission\non the identified folder." - }, - "create": { - "description": "Creates a Folder in the resource hierarchy.\nReturns an Operation which can be used to track the progress of the\nfolder creation workflow.\nUpon success the Operation.response field will be populated with the\ncreated Folder.\n\nIn order to succeed, the addition of this new Folder must not violate\nthe Folder naming, height or fanout constraints.\n\n+ The Folder's display_name must be distinct from all other Folder's that\nshare its parent.\n+ The addition of the Folder must not cause the active Folder hierarchy\nto exceed a height of 4. Note, the full active + deleted Folder hierarchy\nis allowed to reach a height of 8; this provides additional headroom when\nmoving folders that contain deleted folders.\n+ The addition of the Folder must not cause the total number of Folders\nunder its parent to exceed 100.\n\nIf the operation fails due to a folder constraint violation,\na PreconditionFailure explaining the violation will be returned.\nIf the failure occurs synchronously then the PreconditionFailure\nwill be returned via the Status.details field and if it occurs\nasynchronously then the PreconditionFailure will be returned\nvia the the Operation.error field.\n\nThe caller must have `resourcemanager.folders.create` permission on the\nidentified parent.", - "request": { - "$ref": "Folder" - }, - "response": { - "$ref": "Operation" - }, - "parameterOrder": [], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "parent": { - "description": "The resource name of the new Folder's parent.\nMust be of the form `folders/{folder_id}` or `organizations/{org_id}`.", - "type": "string", - "location": "query" - } - }, - "flatPath": "v2beta1/folders", - "path": "v2beta1/folders", - "id": "cloudresourcemanager.folders.create" - }, - "getIamPolicy": { - "parameters": { - "resource": { - "description": "REQUIRED: The resource for which the policy is being requested.\nSee the operation documentation for the appropriate value for this field.", - "required": true, - "type": "string", - "pattern": "^folders/[^/]+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ], - "flatPath": "v2beta1/folders/{foldersId}:getIamPolicy", - "path": "v2beta1/{+resource}:getIamPolicy", - "id": "cloudresourcemanager.folders.getIamPolicy", - "request": { - "$ref": "GetIamPolicyRequest" - }, - "description": "Gets the access control policy for a Folder. The returned policy may be\nempty if no such policy or resource exists. The `resource` field should\nbe the Folder's resource name, e.g. \"folders/1234\".\nThe caller must have `resourcemanager.folders.getIamPolicy` permission\non the identified folder.", - "response": { - "$ref": "Policy" - }, - "parameterOrder": [ - "resource" - ], - "httpMethod": "POST" - }, - "search": { - "path": "v2beta1/folders:search", - "id": "cloudresourcemanager.folders.search", - "description": "Search for folders that match specific filter criteria.\nSearch provides an eventually consistent view of the folders a user has\naccess to which meet the specified filter criteria.\n\nThis will only return folders on which the caller has the\npermission `resourcemanager.folders.get`.", - "request": { - "$ref": "SearchFoldersRequest" - }, - "response": { - "$ref": "SearchFoldersResponse" - }, - "parameterOrder": [], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ], - "parameters": {}, - "flatPath": "v2beta1/folders:search" - }, - "patch": { - "request": { - "$ref": "Folder" - }, - "description": "Updates a Folder, changing its display_name.\nChanges to the folder display_name will be rejected if they violate either\nthe display_name formatting rules or naming constraints described in the\nCreateFolder documentation.\n\nThe Folder's display name must start and end with a letter or digit,\nmay contain letters, digits, spaces, hyphens and underscores and can be\nno longer than 30 characters. This is captured by the regular expression:\n[\\p{L}\\p{N}]({\\p{L}\\p{N}_- ]{0,28}[\\p{L}\\p{N}])?.\nThe caller must have `resourcemanager.folders.update` permission on the\nidentified folder.\n\nIf the update fails due to the unique name constraint then a\nPreconditionFailure explaining this violation will be returned\nin the Status.details field.", - "response": { - "$ref": "Folder" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "PATCH", - "parameters": { - "updateMask": { - "location": "query", - "description": "Fields to be updated.\nOnly the `display_name` can be updated.", - "format": "google-fieldmask", - "type": "string" - }, - "name": { - "pattern": "^folders/[^/]+$", - "location": "path", - "description": "Output only. The resource name of the Folder.\nIts format is `folders/{folder_id}`, for example: \"folders/1234\".", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v2beta1/folders/{foldersId}", - "path": "v2beta1/{+name}", - "id": "cloudresourcemanager.folders.patch" - }, - "get": { - "description": "Retrieves a Folder identified by the supplied resource name.\nValid Folder resource names have the format `folders/{folder_id}`\n(for example, `folders/1234`).\nThe caller must have `resourcemanager.folders.get` permission on the\nidentified folder.", - "httpMethod": "GET", - "parameterOrder": [ - "name" - ], - "response": { - "$ref": "Folder" - }, - "parameters": { - "name": { - "description": "The resource name of the Folder to retrieve.\nMust be of the form `folders/{folder_id}`.", - "required": true, - "type": "string", - "pattern": "^folders/[^/]+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ], - "flatPath": "v2beta1/folders/{foldersId}", - "id": "cloudresourcemanager.folders.get", - "path": "v2beta1/{+name}" - }, - "undelete": { - "httpMethod": "POST", - "parameterOrder": [ - "name" - ], - "response": { - "$ref": "Folder" - }, - "parameters": { - "name": { - "pattern": "^folders/[^/]+$", - "location": "path", - "description": "The resource name of the Folder to undelete.\nMust be of the form `folders/{folder_id}`.", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v2beta1/folders/{foldersId}:undelete", - "id": "cloudresourcemanager.folders.undelete", - "path": "v2beta1/{+name}:undelete", - "request": { - "$ref": "UndeleteFolderRequest" - }, - "description": "Cancels the deletion request for a Folder. This method may only be\ncalled on a Folder in the\nDELETE_REQUESTED state.\nIn order to succeed, the Folder's parent must be in the\nACTIVE state.\nIn addition, reintroducing the folder into the tree must not violate\nfolder naming, height and fanout constraints described in the\nCreateFolder documentation.\nThe caller must have `resourcemanager.folders.undelete` permission on the\nidentified folder." - } - } - } - }, - "parameters": { - "$.xgafv": { - "enumDescriptions": [ - "v1 error format", - "v2 error format" - ], - "location": "query", - "enum": [ - "1", - "2" - ], - "description": "V1 error format.", - "type": "string" - }, - "callback": { - "location": "query", - "description": "JSONP", - "type": "string" - }, - "alt": { - "enum": [ - "json", - "media", - "proto" - ], - "type": "string", - "enumDescriptions": [ - "Responses with Content-Type of application/json", - "Media download with context-dependent Content-Type", - "Responses with Content-Type of application/x-protobuf" - ], - "location": "query", - "description": "Data format for response.", - "default": "json" - }, - "key": { - "location": "query", - "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.", - "type": "string" - }, - "access_token": { - "description": "OAuth access token.", - "type": "string", - "location": "query" - }, - "quotaUser": { - "location": "query", - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", - "type": "string" - }, - "pp": { - "location": "query", - "description": "Pretty-print response.", - "type": "boolean", - "default": "true" - }, - "oauth_token": { - "description": "OAuth 2.0 token for the current user.", - "type": "string", - "location": "query" - }, - "bearer_token": { - "description": "OAuth bearer token.", - "type": "string", - "location": "query" - }, - "upload_protocol": { - "location": "query", - "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", - "type": "string" - }, - "prettyPrint": { - "description": "Returns response with indentations and line breaks.", - "type": "boolean", - "default": "true", - "location": "query" - }, - "uploadType": { - "location": "query", - "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", - "type": "string" - }, - "fields": { - "description": "Selector specifying which fields to include in a partial response.", - "type": "string", - "location": "query" - } - }, - "version": "v2beta1", - "baseUrl": "https://cloudresourcemanager.googleapis.com/", - "kind": "discovery#restDescription", - "description": "The Google Cloud Resource Manager API provides methods for creating, reading, and updating project metadata.", "servicePath": "", - "basePath": "", - "id": "cloudresourcemanager:v2beta1", - "revision": "20180110", - "documentationLink": "https://cloud.google.com/resource-manager", - "discoveryVersion": "v1" -} + "title": "Cloud Resource Manager API", + "version": "v2beta1" +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/cloudresourcemanager/v2beta1/cloudresourcemanager-gen.go b/vendor/google.golang.org/api/cloudresourcemanager/v2beta1/cloudresourcemanager-gen.go index 518396c2a..950faed52 100644 --- a/vendor/google.golang.org/api/cloudresourcemanager/v2beta1/cloudresourcemanager-gen.go +++ b/vendor/google.golang.org/api/cloudresourcemanager/v2beta1/cloudresourcemanager-gen.go @@ -1,4 +1,4 @@ -// Package cloudresourcemanager provides access to the Google Cloud Resource Manager API. +// Package cloudresourcemanager provides access to the Cloud Resource Manager API. // // See https://cloud.google.com/resource-manager // @@ -99,7 +99,7 @@ type FoldersService struct { // log_types // specified in each AuditConfig are enabled, and the exempted_members // in each -// AuditConfig are exempted. +// AuditLogConfig are exempted. // // Example Policy with multiple AuditConfigs: // diff --git a/vendor/google.golang.org/api/cloudshell/v1/cloudshell-api.json b/vendor/google.golang.org/api/cloudshell/v1/cloudshell-api.json index 1395c9877..623b10e71 100644 --- a/vendor/google.golang.org/api/cloudshell/v1/cloudshell-api.json +++ b/vendor/google.golang.org/api/cloudshell/v1/cloudshell-api.json @@ -1,51 +1,339 @@ { + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/cloud-platform": { + "description": "View and manage your data across Google Cloud Platform services" + } + } + } + }, + "basePath": "", + "baseUrl": "https://cloudshell.googleapis.com/", + "batchPath": "batch", + "canonicalName": "Cloud Shell", + "description": "Allows users to start, configure, and connect to interactive shell sessions running in the cloud.\n", "discoveryVersion": "v1", - "version_module": true, + "documentationLink": "https://cloud.google.com/shell/docs/", + "fullyEncodeReservedExpansion": true, + "icons": { + "x16": "http://www.google.com/images/icons/product/search-16.gif", + "x32": "http://www.google.com/images/icons/product/search-32.gif" + }, + "id": "cloudshell:v1", + "kind": "discovery#restDescription", + "name": "cloudshell", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "$.xgafv": { + "description": "V1 error format.", + "enum": [ + "1", + "2" + ], + "enumDescriptions": [ + "v1 error format", + "v2 error format" + ], + "location": "query", + "type": "string" + }, + "access_token": { + "description": "OAuth access token.", + "location": "query", + "type": "string" + }, + "alt": { + "default": "json", + "description": "Data format for response.", + "enum": [ + "json", + "media", + "proto" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json", + "Media download with context-dependent Content-Type", + "Responses with Content-Type of application/x-protobuf" + ], + "location": "query", + "type": "string" + }, + "bearer_token": { + "description": "OAuth bearer token.", + "location": "query", + "type": "string" + }, + "callback": { + "description": "JSONP", + "location": "query", + "type": "string" + }, + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "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.", + "location": "query", + "type": "string" + }, + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "pp": { + "default": "true", + "description": "Pretty-print response.", + "location": "query", + "type": "boolean" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", + "location": "query", + "type": "string" + }, + "uploadType": { + "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", + "location": "query", + "type": "string" + }, + "upload_protocol": { + "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", + "location": "query", + "type": "string" + } + }, + "protocol": "rest", + "resources": { + "operations": { + "methods": { + "cancel": { + "description": "Starts asynchronous cancellation on a long-running operation. The server\nmakes a best effort to cancel the operation, but success is not\nguaranteed. If the server doesn't support this method, it returns\n`google.rpc.Code.UNIMPLEMENTED`. Clients can use\nOperations.GetOperation or\nother methods to check whether the cancellation succeeded or whether the\noperation completed despite cancellation. On successful cancellation,\nthe operation is not deleted; instead, it becomes an operation with\nan Operation.error value with a google.rpc.Status.code of 1,\ncorresponding to `Code.CANCELLED`.", + "flatPath": "v1/operations/{operationsId}:cancel", + "httpMethod": "POST", + "id": "cloudshell.operations.cancel", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource to be cancelled.", + "location": "path", + "pattern": "^operations/.+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}:cancel", + "request": { + "$ref": "CancelOperationRequest" + }, + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Deletes a long-running operation. This method indicates that the client is\nno longer interested in the operation result. It does not cancel the\noperation. If the server doesn't support this method, it returns\n`google.rpc.Code.UNIMPLEMENTED`.", + "flatPath": "v1/operations/{operationsId}", + "httpMethod": "DELETE", + "id": "cloudshell.operations.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource to be deleted.", + "location": "path", + "pattern": "^operations/.+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Gets the latest state of a long-running operation. Clients can use this\nmethod to poll the operation result at intervals as recommended by the API\nservice.", + "flatPath": "v1/operations/{operationsId}", + "httpMethod": "GET", + "id": "cloudshell.operations.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource.", + "location": "path", + "pattern": "^operations/.+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists operations that match the specified filter in the request. If the\nserver doesn't support this method, it returns `UNIMPLEMENTED`.\n\nNOTE: the `name` binding allows API services to override the binding\nto use different resource name schemes, such as `users/*/operations`. To\noverride the binding, API services can add a binding such as\n`\"/v1/{name=users/*}/operations\"` to their service configuration.\nFor backwards compatibility, the default name includes the operations\ncollection id, however overriding users must ensure the name binding\nis the parent resource, without the operations collection id.", + "flatPath": "v1/operations", + "httpMethod": "GET", + "id": "cloudshell.operations.list", + "parameterOrder": [ + "name" + ], + "parameters": { + "filter": { + "description": "The standard list filter.", + "location": "query", + "type": "string" + }, + "name": { + "description": "The name of the operation's parent resource.", + "location": "path", + "pattern": "^operations$", + "required": true, + "type": "string" + }, + "pageSize": { + "description": "The standard list page size.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "The standard list page token.", + "location": "query", + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "ListOperationsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + } + }, + "revision": "20180203", + "rootUrl": "https://cloudshell.googleapis.com/", "schemas": { "CancelOperationRequest": { - "type": "object", - "properties": {}, + "description": "The request message for Operations.CancelOperation.", "id": "CancelOperationRequest", - "description": "The request message for Operations.CancelOperation." + "properties": {}, + "type": "object" }, - "StartEnvironmentMetadata": { - "description": "Message included in the metadata field of operations returned from\nStartEnvironment.", - "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" + }, + "Environment": { + "description": "A Cloud Shell environment, which is defined as the combination of a Docker\nimage specifying what is installed on the environment and a home directory\ncontaining the user's data that will remain across sessions. Each user has a\nsingle environment with the ID \"default\".", + "id": "Environment", "properties": { + "dockerImage": { + "description": "Required. Full path to the Docker image used to run this environment, e.g.\n\"gcr.io/dev-con/cloud-devshell:latest\".", + "type": "string" + }, + "id": { + "description": "Output only. The environment's identifier, which is always \"default\".", + "type": "string" + }, + "name": { + "description": "Output only. Full name of this resource, in the format\n`users/{owner_email}/environments/{environment_id}`. `{owner_email}` is the\nemail address of the user to whom this environment belongs, and\n`{environment_id}` is the identifier of this environment. For example,\n`users/someone@example.com/environments/default`.", + "type": "string" + }, + "publicKeys": { + "description": "Output only. Public keys associated with the environment. Clients can\nconnect to this environment via SSH only if they possess a private key\ncorresponding to at least one of these public keys. Keys can be added to or\nremoved from the environment using the CreatePublicKey and DeletePublicKey\nmethods.", + "items": { + "$ref": "PublicKey" + }, + "type": "array" + }, + "sshHost": { + "description": "Output only. Host to which clients can connect to initiate SSH sessions\nwith the environment.", + "type": "string" + }, + "sshPort": { + "description": "Output only. Port to which clients can connect to initiate SSH sessions\nwith the environment.", + "format": "int32", + "type": "integer" + }, + "sshUsername": { + "description": "Output only. Username that clients should use when initiating SSH sessions\nwith the environment.", + "type": "string" + }, "state": { - "enumDescriptions": [ - "The environment's start state is unknown.", - "The environment is in the process of being started, but no additional\ndetails are available.", - "Startup is waiting for the user's disk to be unarchived. This can happen\nwhen the user returns to Cloud Shell after not having used it for a\nwhile, and suggests that startup will take longer than normal.", - "Startup is complete and the user should be able to establish an SSH\nconnection to their environment." - ], + "description": "Output only. Current execution state of this environment.", "enum": [ "STATE_UNSPECIFIED", + "DISABLED", "STARTING", - "UNARCHIVING_DISK", - "FINISHED" + "RUNNING" + ], + "enumDescriptions": [ + "The environment's states is unknown.", + "The environment is not running and can't be connected to. Starting the\nenvironment will transition it to the STARTING state.", + "The environment is being started but is not yet ready to accept\nconnections.", + "The environment is running and ready to accept connections. It will\nautomatically transition back to DISABLED after a period of inactivity or\nif another environment is started." ], - "description": "Current state of the environment being started.", "type": "string" } }, - "id": "StartEnvironmentMetadata" + "type": "object" + }, + "ListOperationsResponse": { + "description": "The response message for Operations.ListOperations.", + "id": "ListOperationsResponse", + "properties": { + "nextPageToken": { + "description": "The standard List next-page token.", + "type": "string" + }, + "operations": { + "description": "A list of operations that matches the specified filter in the request.", + "items": { + "$ref": "Operation" + }, + "type": "array" + } + }, + "type": "object" }, "Operation": { "description": "This resource represents a long-running operation that is the result of a\nnetwork API call.", - "type": "object", + "id": "Operation", "properties": { - "response": { - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - }, - "description": "The normal response of the operation in case of success. If the original\nmethod returns no data on success, such as `Delete`, the response is\n`google.protobuf.Empty`. If the original method is standard\n`Get`/`Create`/`Update`, the response should be the resource. For other\nmethods, the response should have the type `XxxResponse`, where `Xxx`\nis the original method name. For example, if the original method name\nis `TakeSnapshot()`, the inferred response type is\n`TakeSnapshotResponse`.", - "type": "object" - }, - "name": { - "description": "The server-assigned name, which is only unique within the same service that\noriginally returns it. If you use the default HTTP mapping, the\n`name` should have the format of `operations/some/unique/name`.", - "type": "string" + "done": { + "description": "If the value is `false`, it means the operation is still in progress.\nIf `true`, the operation is completed, and either `error` or `response` is\navailable.", + "type": "boolean" }, "error": { "$ref": "Status", @@ -59,138 +347,27 @@ "description": "Service-specific metadata associated with the operation. It typically\ncontains progress information and common metadata such as create time.\nSome services might not provide such metadata. Any method that returns a\nlong-running operation should document the metadata type, if any.", "type": "object" }, - "done": { - "description": "If the value is `false`, it means the operation is still in progress.\nIf `true`, the operation is completed, and either `error` or `response` is\navailable.", - "type": "boolean" - } - }, - "id": "Operation" - }, - "ListOperationsResponse": { - "description": "The response message for Operations.ListOperations.", - "type": "object", - "properties": { - "nextPageToken": { - "description": "The standard List next-page token.", - "type": "string" - }, - "operations": { - "description": "A list of operations that matches the specified filter in the request.", - "type": "array", - "items": { - "$ref": "Operation" - } - } - }, - "id": "ListOperationsResponse" - }, - "Environment": { - "properties": { - "publicKeys": { - "description": "Output only. Public keys associated with the environment. Clients can\nconnect to this environment via SSH only if they possess a private key\ncorresponding to at least one of these public keys. Keys can be added to or\nremoved from the environment using the CreatePublicKey and DeletePublicKey\nmethods.", - "type": "array", - "items": { - "$ref": "PublicKey" - } - }, - "dockerImage": { - "type": "string", - "description": "Required. Full path to the Docker image used to run this environment, e.g.\n\"gcr.io/dev-con/cloud-devshell:latest\"." - }, - "state": { - "description": "Output only. Current execution state of this environment.", - "type": "string", - "enumDescriptions": [ - "The environment's states is unknown.", - "The environment is not running and can't be connected to. Starting the\nenvironment will transition it to the STARTING state.", - "The environment is being started but is not yet ready to accept\nconnections.", - "The environment is running and ready to accept connections. It will\nautomatically transition back to DISABLED after a period of inactivity or\nif another environment is started." - ], - "enum": [ - "STATE_UNSPECIFIED", - "DISABLED", - "STARTING", - "RUNNING" - ] - }, "name": { - "description": "Output only. Full name of this resource, in the format\n`users/{owner_email}/environments/{environment_id}`. `{owner_email}` is the\nemail address of the user to whom this environment belongs, and\n`{environment_id}` is the identifier of this environment. For example,\n`users/someone@example.com/environments/default`.", + "description": "The server-assigned name, which is only unique within the same service that\noriginally returns it. If you use the default HTTP mapping, the\n`name` should have the format of `operations/some/unique/name`.", "type": "string" }, - "sshHost": { - "description": "Output only. Host to which clients can connect to initiate SSH sessions\nwith the environment.", - "type": "string" - }, - "sshPort": { - "description": "Output only. Port to which clients can connect to initiate SSH sessions\nwith the environment.", - "format": "int32", - "type": "integer" - }, - "id": { - "description": "Output only. The environment's identifier, which is always \"default\".", - "type": "string" - }, - "sshUsername": { - "description": "Output only. Username that clients should use when initiating SSH sessions\nwith the environment.", - "type": "string" - } - }, - "id": "Environment", - "description": "A Cloud Shell environment, which is defined as the combination of a Docker\nimage specifying what is installed on the environment and a home directory\ncontaining the user's data that will remain across sessions. Each user has a\nsingle environment with the ID \"default\".", - "type": "object" - }, - "StartEnvironmentResponse": { - "description": "Message included in the response field of operations returned from\nStartEnvironment once the\noperation is complete.", - "type": "object", - "properties": { - "environment": { - "description": "Environment that was started.", - "$ref": "Environment" - } - }, - "id": "StartEnvironmentResponse" - }, - "Status": { - "description": "The `Status` type defines a logical error model that is suitable for different\nprogramming environments, including REST APIs and RPC APIs. It is used by\n[gRPC](https://github.com/grpc). The error model is designed to be:\n\n- Simple to use and understand for most users\n- Flexible enough to meet unexpected needs\n\n# Overview\n\nThe `Status` message contains three pieces of data: error code, error message,\nand error details. The error code should be an enum value of\ngoogle.rpc.Code, but it may accept additional error codes if needed. The\nerror message should be a developer-facing English message that helps\ndevelopers *understand* and *resolve* the error. If a localized user-facing\nerror message is needed, put the localized message in the error details or\nlocalize it in the client. The optional error details may contain arbitrary\ninformation about the error. There is a predefined set of error detail types\nin the package `google.rpc` that can be used for common error conditions.\n\n# Language mapping\n\nThe `Status` message is the logical representation of the error model, but it\nis not necessarily the actual wire format. When the `Status` message is\nexposed in different client libraries and different wire protocols, it can be\nmapped differently. For example, it will likely be mapped to some exceptions\nin Java, but more likely mapped to some error codes in C.\n\n# Other uses\n\nThe error model and the `Status` message can be used in a variety of\nenvironments, either with or without APIs, to provide a\nconsistent developer experience across different environments.\n\nExample uses of this error model include:\n\n- Partial errors. If a service needs to return partial errors to the client,\n it may embed the `Status` in the normal response to indicate the partial\n errors.\n\n- Workflow errors. A typical workflow has multiple steps. Each step may\n have a `Status` message for error reporting.\n\n- Batch operations. If a client uses batch request and batch response, the\n `Status` message should be used directly inside batch response, one for\n each error sub-response.\n\n- Asynchronous operations. If an API call embeds asynchronous operation\n results in its response, the status of those operations should be\n represented directly using the `Status` message.\n\n- Logging. If some API errors are stored in logs, the message `Status` could\n be used directly after any stripping needed for security/privacy reasons.", - "type": "object", - "properties": { - "code": { - "description": "The status code, which should be an enum value of google.rpc.Code.", - "format": "int32", - "type": "integer" - }, - "message": { - "description": "A developer-facing error message, which should be in English. Any\nuser-facing error message should be localized and sent in the\ngoogle.rpc.Status.details field, or localized by the client.", - "type": "string" - }, - "details": { - "type": "array", - "items": { - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - }, - "type": "object" + "response": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" }, - "description": "A list of messages that carry the error details. There is a common set of\nmessage types for APIs to use." + "description": "The normal response of the operation in case of success. If the original\nmethod returns no data on success, such as `Delete`, the response is\n`google.protobuf.Empty`. If the original method is standard\n`Get`/`Create`/`Update`, the response should be the resource. For other\nmethods, the response should have the type `XxxResponse`, where `Xxx`\nis the original method name. For example, if the original method name\nis `TakeSnapshot()`, the inferred response type is\n`TakeSnapshotResponse`.", + "type": "object" } }, - "id": "Status" + "type": "object" }, "PublicKey": { "description": "A public SSH key, corresponding to a private SSH key held by the client.", - "type": "object", + "id": "PublicKey", "properties": { - "name": { - "type": "string", - "description": "Output only. Full name of this resource, in the format\n`users/{owner_email}/environments/{environment_id}/publicKeys/{key_id}`.\n`{owner_email}` is the email address of the user to whom the key belongs.\n`{environment_id}` is the identifier of the environment to which the key\ngrants access. `{key_id}` is the unique identifier of the key. For example,\n`users/someone@example.com/environments/default/publicKeys/myKey`." - }, - "key": { - "description": "Required. Content of this key.", - "format": "byte", - "type": "string" - }, "format": { + "description": "Required. Format of this key's content.", "enum": [ "FORMAT_UNSPECIFIED", "SSH_DSS", @@ -199,8 +376,6 @@ "ECDSA_SHA2_NISTP384", "ECDSA_SHA2_NISTP521" ], - "description": "Required. Format of this key's content.", - "type": "string", "enumDescriptions": [ "Unknown format. Do not use.", "`ssh-dss` key format (see RFC4253).", @@ -208,260 +383,85 @@ "`ecdsa-sha2-nistp256` key format (see RFC5656).", "`ecdsa-sha2-nistp384` key format (see RFC5656).", "`ecdsa-sha2-nistp521` key format (see RFC5656)." - ] + ], + "type": "string" + }, + "key": { + "description": "Required. Content of this key.", + "format": "byte", + "type": "string" + }, + "name": { + "description": "Output only. Full name of this resource, in the format\n`users/{owner_email}/environments/{environment_id}/publicKeys/{key_id}`.\n`{owner_email}` is the email address of the user to whom the key belongs.\n`{environment_id}` is the identifier of the environment to which the key\ngrants access. `{key_id}` is the unique identifier of the key. For example,\n`users/someone@example.com/environments/default/publicKeys/myKey`.", + "type": "string" } }, - "id": "PublicKey" + "type": "object" }, - "Empty": { - "id": "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 `{}`.", - "type": "object", - "properties": {} - } - }, - "icons": { - "x16": "http://www.google.com/images/icons/product/search-16.gif", - "x32": "http://www.google.com/images/icons/product/search-32.gif" - }, - "protocol": "rest", - "canonicalName": "Cloud Shell", - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/cloud-platform": { - "description": "View and manage your data across Google Cloud Platform services" + "StartEnvironmentMetadata": { + "description": "Message included in the metadata field of operations returned from\nStartEnvironment.", + "id": "StartEnvironmentMetadata", + "properties": { + "state": { + "description": "Current state of the environment being started.", + "enum": [ + "STATE_UNSPECIFIED", + "STARTING", + "UNARCHIVING_DISK", + "FINISHED" + ], + "enumDescriptions": [ + "The environment's start state is unknown.", + "The environment is in the process of being started, but no additional\ndetails are available.", + "Startup is waiting for the user's disk to be unarchived. This can happen\nwhen the user returns to Cloud Shell after not having used it for a\nwhile, and suggests that startup will take longer than normal.", + "Startup is complete and the user should be able to establish an SSH\nconnection to their environment." + ], + "type": "string" } - } - } - }, - "rootUrl": "https://cloudshell.googleapis.com/", - "ownerDomain": "google.com", - "name": "cloudshell", - "batchPath": "batch", - "fullyEncodeReservedExpansion": true, - "title": "Cloud Shell API", - "ownerName": "Google", - "resources": { - "operations": { - "methods": { - "cancel": { - "id": "cloudshell.operations.cancel", - "path": "v1/{+name}:cancel", - "request": { - "$ref": "CancelOperationRequest" - }, - "description": "Starts asynchronous cancellation on a long-running operation. The server\nmakes a best effort to cancel the operation, but success is not\nguaranteed. If the server doesn't support this method, it returns\n`google.rpc.Code.UNIMPLEMENTED`. Clients can use\nOperations.GetOperation or\nother methods to check whether the cancellation succeeded or whether the\noperation completed despite cancellation. On successful cancellation,\nthe operation is not deleted; instead, it becomes an operation with\nan Operation.error value with a google.rpc.Status.code of 1,\ncorresponding to `Code.CANCELLED`.", - "httpMethod": "POST", - "parameterOrder": [ - "name" - ], - "response": { - "$ref": "Empty" - }, - "parameters": { - "name": { - "description": "The name of the operation resource to be cancelled.", - "required": true, - "type": "string", - "pattern": "^operations/.+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/operations/{operationsId}:cancel" - }, - "delete": { - "path": "v1/{+name}", - "id": "cloudshell.operations.delete", - "description": "Deletes a long-running operation. This method indicates that the client is\nno longer interested in the operation result. It does not cancel the\noperation. If the server doesn't support this method, it returns\n`google.rpc.Code.UNIMPLEMENTED`.", - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "DELETE", - "parameters": { - "name": { - "pattern": "^operations/.+$", - "location": "path", - "description": "The name of the operation resource to be deleted.", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/operations/{operationsId}" - }, - "list": { - "description": "Lists operations that match the specified filter in the request. If the\nserver doesn't support this method, it returns `UNIMPLEMENTED`.\n\nNOTE: the `name` binding allows API services to override the binding\nto use different resource name schemes, such as `users/*/operations`. To\noverride the binding, API services can add a binding such as\n`\"/v1/{name=users/*}/operations\"` to their service configuration.\nFor backwards compatibility, the default name includes the operations\ncollection id, however overriding users must ensure the name binding\nis the parent resource, without the operations collection id.", - "response": { - "$ref": "ListOperationsResponse" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "GET", - "parameters": { - "filter": { - "location": "query", - "description": "The standard list filter.", - "type": "string" - }, - "name": { - "location": "path", - "description": "The name of the operation's parent resource.", - "required": true, - "type": "string", - "pattern": "^operations$" - }, - "pageToken": { - "location": "query", - "description": "The standard list page token.", - "type": "string" - }, - "pageSize": { - "location": "query", - "description": "The standard list page size.", - "format": "int32", - "type": "integer" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/operations", - "path": "v1/{+name}", - "id": "cloudshell.operations.list" - }, - "get": { - "description": "Gets the latest state of a long-running operation. Clients can use this\nmethod to poll the operation result at intervals as recommended by the API\nservice.", - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "name": { - "pattern": "^operations/.+$", - "location": "path", - "description": "The name of the operation resource.", - "required": true, - "type": "string" - } - }, - "flatPath": "v1/operations/{operationsId}", - "path": "v1/{+name}", - "id": "cloudshell.operations.get" + }, + "type": "object" + }, + "StartEnvironmentResponse": { + "description": "Message included in the response field of operations returned from\nStartEnvironment once the\noperation is complete.", + "id": "StartEnvironmentResponse", + "properties": { + "environment": { + "$ref": "Environment", + "description": "Environment that was started." } - } + }, + "type": "object" + }, + "Status": { + "description": "The `Status` type defines a logical error model that is suitable for different\nprogramming environments, including REST APIs and RPC APIs. It is used by\n[gRPC](https://github.com/grpc). The error model is designed to be:\n\n- Simple to use and understand for most users\n- Flexible enough to meet unexpected needs\n\n# Overview\n\nThe `Status` message contains three pieces of data: error code, error message,\nand error details. The error code should be an enum value of\ngoogle.rpc.Code, but it may accept additional error codes if needed. The\nerror message should be a developer-facing English message that helps\ndevelopers *understand* and *resolve* the error. If a localized user-facing\nerror message is needed, put the localized message in the error details or\nlocalize it in the client. The optional error details may contain arbitrary\ninformation about the error. There is a predefined set of error detail types\nin the package `google.rpc` that can be used for common error conditions.\n\n# Language mapping\n\nThe `Status` message is the logical representation of the error model, but it\nis not necessarily the actual wire format. When the `Status` message is\nexposed in different client libraries and different wire protocols, it can be\nmapped differently. For example, it will likely be mapped to some exceptions\nin Java, but more likely mapped to some error codes in C.\n\n# Other uses\n\nThe error model and the `Status` message can be used in a variety of\nenvironments, either with or without APIs, to provide a\nconsistent developer experience across different environments.\n\nExample uses of this error model include:\n\n- Partial errors. If a service needs to return partial errors to the client,\n it may embed the `Status` in the normal response to indicate the partial\n errors.\n\n- Workflow errors. A typical workflow has multiple steps. Each step may\n have a `Status` message for error reporting.\n\n- Batch operations. If a client uses batch request and batch response, the\n `Status` message should be used directly inside batch response, one for\n each error sub-response.\n\n- Asynchronous operations. If an API call embeds asynchronous operation\n results in its response, the status of those operations should be\n represented directly using the `Status` message.\n\n- Logging. If some API errors are stored in logs, the message `Status` could\n be used directly after any stripping needed for security/privacy reasons.", + "id": "Status", + "properties": { + "code": { + "description": "The status code, which should be an enum value of google.rpc.Code.", + "format": "int32", + "type": "integer" + }, + "details": { + "description": "A list of messages that carry the error details. There is a common set of\nmessage types for APIs to use.", + "items": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "A developer-facing error message, which should be in English. Any\nuser-facing error message should be localized and sent in the\ngoogle.rpc.Status.details field, or localized by the client.", + "type": "string" + } + }, + "type": "object" } }, - "parameters": { - "key": { - "location": "query", - "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.", - "type": "string" - }, - "access_token": { - "type": "string", - "location": "query", - "description": "OAuth access token." - }, - "quotaUser": { - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", - "type": "string", - "location": "query" - }, - "pp": { - "location": "query", - "description": "Pretty-print response.", - "type": "boolean", - "default": "true" - }, - "bearer_token": { - "type": "string", - "location": "query", - "description": "OAuth bearer token." - }, - "oauth_token": { - "description": "OAuth 2.0 token for the current user.", - "type": "string", - "location": "query" - }, - "upload_protocol": { - "location": "query", - "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", - "type": "string" - }, - "prettyPrint": { - "location": "query", - "description": "Returns response with indentations and line breaks.", - "type": "boolean", - "default": "true" - }, - "fields": { - "description": "Selector specifying which fields to include in a partial response.", - "type": "string", - "location": "query" - }, - "uploadType": { - "location": "query", - "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", - "type": "string" - }, - "callback": { - "type": "string", - "location": "query", - "description": "JSONP" - }, - "$.xgafv": { - "enumDescriptions": [ - "v1 error format", - "v2 error format" - ], - "location": "query", - "enum": [ - "1", - "2" - ], - "description": "V1 error format.", - "type": "string" - }, - "alt": { - "enum": [ - "json", - "media", - "proto" - ], - "type": "string", - "enumDescriptions": [ - "Responses with Content-Type of application/json", - "Media download with context-dependent Content-Type", - "Responses with Content-Type of application/x-protobuf" - ], - "location": "query", - "description": "Data format for response.", - "default": "json" - } - }, - "version": "v1", - "baseUrl": "https://cloudshell.googleapis.com/", "servicePath": "", - "kind": "discovery#restDescription", - "description": "Allows users to start, configure, and connect to interactive shell sessions running in the cloud.\n", - "basePath": "", - "id": "cloudshell:v1", - "documentationLink": "https://cloud.google.com/shell/docs/", - "revision": "20180118" -} + "title": "Cloud Shell API", + "version": "v1", + "version_module": true +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/cloudshell/v1alpha1/cloudshell-api.json b/vendor/google.golang.org/api/cloudshell/v1alpha1/cloudshell-api.json index 4e4a17795..415dccf63 100644 --- a/vendor/google.golang.org/api/cloudshell/v1alpha1/cloudshell-api.json +++ b/vendor/google.golang.org/api/cloudshell/v1alpha1/cloudshell-api.json @@ -1,159 +1,267 @@ { - "rootUrl": "https://cloudshell.googleapis.com/", - "ownerDomain": "google.com", - "name": "cloudshell", + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/cloud-platform": { + "description": "View and manage your data across Google Cloud Platform services" + } + } + } + }, + "basePath": "", + "baseUrl": "https://cloudshell.googleapis.com/", "batchPath": "batch", + "canonicalName": "Cloud Shell", + "description": "Allows users to start, configure, and connect to interactive shell sessions running in the cloud.\n", + "discoveryVersion": "v1", + "documentationLink": "https://cloud.google.com/shell/docs/", "fullyEncodeReservedExpansion": true, - "title": "Cloud Shell API", + "icons": { + "x16": "http://www.google.com/images/icons/product/search-16.gif", + "x32": "http://www.google.com/images/icons/product/search-32.gif" + }, + "id": "cloudshell:v1alpha1", + "kind": "discovery#restDescription", + "name": "cloudshell", + "ownerDomain": "google.com", "ownerName": "Google", + "parameters": { + "$.xgafv": { + "description": "V1 error format.", + "enum": [ + "1", + "2" + ], + "enumDescriptions": [ + "v1 error format", + "v2 error format" + ], + "location": "query", + "type": "string" + }, + "access_token": { + "description": "OAuth access token.", + "location": "query", + "type": "string" + }, + "alt": { + "default": "json", + "description": "Data format for response.", + "enum": [ + "json", + "media", + "proto" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json", + "Media download with context-dependent Content-Type", + "Responses with Content-Type of application/x-protobuf" + ], + "location": "query", + "type": "string" + }, + "bearer_token": { + "description": "OAuth bearer token.", + "location": "query", + "type": "string" + }, + "callback": { + "description": "JSONP", + "location": "query", + "type": "string" + }, + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "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.", + "location": "query", + "type": "string" + }, + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "pp": { + "default": "true", + "description": "Pretty-print response.", + "location": "query", + "type": "boolean" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", + "location": "query", + "type": "string" + }, + "uploadType": { + "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", + "location": "query", + "type": "string" + }, + "upload_protocol": { + "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", + "location": "query", + "type": "string" + } + }, + "protocol": "rest", "resources": { "users": { "resources": { "environments": { "methods": { - "start": { - "response": { - "$ref": "Operation" - }, + "get": { + "description": "Gets an environment. Returns NOT_FOUND if the environment does not exist.", + "flatPath": "v1alpha1/users/{usersId}/environments/{environmentsId}", + "httpMethod": "GET", + "id": "cloudshell.users.environments.get", "parameterOrder": [ "name" ], - "httpMethod": "POST", + "parameters": { + "name": { + "description": "Name of the requested resource, for example `users/me/environments/default`\nor `users/someone@example.com/environments/default`.", + "location": "path", + "pattern": "^users/[^/]+/environments/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1alpha1/{+name}", + "response": { + "$ref": "Environment" + }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "patch": { + "description": "Updates an existing environment.", + "flatPath": "v1alpha1/users/{usersId}/environments/{environmentsId}", + "httpMethod": "PATCH", + "id": "cloudshell.users.environments.patch", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Name of the resource to be updated, for example\n`users/me/environments/default` or\n`users/someone@example.com/environments/default`.", + "location": "path", + "pattern": "^users/[^/]+/environments/[^/]+$", + "required": true, + "type": "string" + }, + "updateMask": { + "description": "Mask specifying which fields in the environment should be updated.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + } + }, + "path": "v1alpha1/{+name}", + "request": { + "$ref": "Environment" + }, + "response": { + "$ref": "Environment" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "start": { + "description": "Starts an existing environment, allowing clients to connect to it. The\nreturned operation will contain an instance of StartEnvironmentMetadata in\nits metadata field. Users can wait for the environment to start by polling\nthis operation via GetOperation. Once the environment has finished starting\nand is ready to accept connections, the operation will contain a\nStartEnvironmentResponse in its response field.", + "flatPath": "v1alpha1/users/{usersId}/environments/{environmentsId}:start", + "httpMethod": "POST", + "id": "cloudshell.users.environments.start", + "parameterOrder": [ + "name" ], "parameters": { "name": { "description": "Name of the resource that should be started, for example\n`users/me/environments/default` or\n`users/someone@example.com/environments/default`.", - "required": true, - "type": "string", + "location": "path", "pattern": "^users/[^/]+/environments/[^/]+$", - "location": "path" + "required": true, + "type": "string" } }, - "flatPath": "v1alpha1/users/{usersId}/environments/{environmentsId}:start", "path": "v1alpha1/{+name}:start", - "id": "cloudshell.users.environments.start", - "description": "Starts an existing environment, allowing clients to connect to it. The\nreturned operation will contain an instance of StartEnvironmentMetadata in\nits metadata field. Users can wait for the environment to start by polling\nthis operation via GetOperation. Once the environment has finished starting\nand is ready to accept connections, the operation will contain a\nStartEnvironmentResponse in its response field.", "request": { "$ref": "StartEnvironmentRequest" - } - }, - "get": { - "httpMethod": "GET", - "parameterOrder": [ - "name" - ], + }, "response": { - "$ref": "Environment" + "$ref": "Operation" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "name": { - "location": "path", - "description": "Name of the requested resource, for example `users/me/environments/default`\nor `users/someone@example.com/environments/default`.", - "required": true, - "type": "string", - "pattern": "^users/[^/]+/environments/[^/]+$" - } - }, - "flatPath": "v1alpha1/users/{usersId}/environments/{environmentsId}", - "id": "cloudshell.users.environments.get", - "path": "v1alpha1/{+name}", - "description": "Gets an environment. Returns NOT_FOUND if the environment does not exist." - }, - "patch": { - "request": { - "$ref": "Environment" - }, - "description": "Updates an existing environment.", - "httpMethod": "PATCH", - "parameterOrder": [ - "name" - ], - "response": { - "$ref": "Environment" - }, - "parameters": { - "updateMask": { - "location": "query", - "description": "Mask specifying which fields in the environment should be updated.", - "format": "google-fieldmask", - "type": "string" - }, - "name": { - "pattern": "^users/[^/]+/environments/[^/]+$", - "location": "path", - "description": "Name of the resource to be updated, for example\n`users/me/environments/default` or\n`users/someone@example.com/environments/default`.", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1alpha1/users/{usersId}/environments/{environmentsId}", - "id": "cloudshell.users.environments.patch", - "path": "v1alpha1/{+name}" + ] } }, "resources": { "publicKeys": { "methods": { "create": { - "id": "cloudshell.users.environments.publicKeys.create", - "path": "v1alpha1/{+parent}/publicKeys", "description": "Adds a public SSH key to an environment, allowing clients with the\ncorresponding private key to connect to that environment via SSH. If a key\nwith the same format and content already exists, this will return the\nexisting key.", - "request": { - "$ref": "CreatePublicKeyRequest" - }, + "flatPath": "v1alpha1/users/{usersId}/environments/{environmentsId}/publicKeys", "httpMethod": "POST", + "id": "cloudshell.users.environments.publicKeys.create", "parameterOrder": [ "parent" ], + "parameters": { + "parent": { + "description": "Parent resource name, e.g. `users/me/environments/default`.", + "location": "path", + "pattern": "^users/[^/]+/environments/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1alpha1/{+parent}/publicKeys", + "request": { + "$ref": "CreatePublicKeyRequest" + }, "response": { "$ref": "PublicKey" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Removes a public SSH key from an environment. Clients will no longer be\nable to connect to the environment using the corresponding private key.", + "flatPath": "v1alpha1/users/{usersId}/environments/{environmentsId}/publicKeys/{publicKeysId}", + "httpMethod": "DELETE", + "id": "cloudshell.users.environments.publicKeys.delete", + "parameterOrder": [ + "name" ], "parameters": { - "parent": { - "pattern": "^users/[^/]+/environments/[^/]+$", + "name": { + "description": "Name of the resource to be deleted, e.g.\n`users/me/environments/default/publicKeys/my-key`.", "location": "path", - "description": "Parent resource name, e.g. `users/me/environments/default`.", + "pattern": "^users/[^/]+/environments/[^/]+/publicKeys/[^/]+$", "required": true, "type": "string" } }, - "flatPath": "v1alpha1/users/{usersId}/environments/{environmentsId}/publicKeys" - }, - "delete": { - "flatPath": "v1alpha1/users/{usersId}/environments/{environmentsId}/publicKeys/{publicKeysId}", - "id": "cloudshell.users.environments.publicKeys.delete", "path": "v1alpha1/{+name}", - "description": "Removes a public SSH key from an environment. Clients will no longer be\nable to connect to the environment using the corresponding private key.", - "httpMethod": "DELETE", - "parameterOrder": [ - "name" - ], "response": { "$ref": "Empty" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "name": { - "description": "Name of the resource to be deleted, e.g.\n`users/me/environments/default/publicKeys/my-key`.", - "required": true, - "type": "string", - "pattern": "^users/[^/]+/environments/[^/]+/publicKeys/[^/]+$", - "location": "path" - } - } + ] } } } @@ -162,136 +270,88 @@ } } }, - "parameters": { - "quotaUser": { - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", - "type": "string", - "location": "query" - }, - "pp": { - "description": "Pretty-print response.", - "type": "boolean", - "default": "true", - "location": "query" - }, - "oauth_token": { - "description": "OAuth 2.0 token for the current user.", - "type": "string", - "location": "query" - }, - "bearer_token": { - "location": "query", - "description": "OAuth bearer token.", - "type": "string" - }, - "upload_protocol": { - "location": "query", - "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", - "type": "string" - }, - "prettyPrint": { - "location": "query", - "description": "Returns response with indentations and line breaks.", - "type": "boolean", - "default": "true" - }, - "fields": { - "location": "query", - "description": "Selector specifying which fields to include in a partial response.", - "type": "string" - }, - "uploadType": { - "location": "query", - "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", - "type": "string" - }, - "$.xgafv": { - "description": "V1 error format.", - "type": "string", - "enumDescriptions": [ - "v1 error format", - "v2 error format" - ], - "location": "query", - "enum": [ - "1", - "2" - ] - }, - "callback": { - "description": "JSONP", - "type": "string", - "location": "query" - }, - "alt": { - "enum": [ - "json", - "media", - "proto" - ], - "type": "string", - "enumDescriptions": [ - "Responses with Content-Type of application/json", - "Media download with context-dependent Content-Type", - "Responses with Content-Type of application/x-protobuf" - ], - "location": "query", - "description": "Data format for response.", - "default": "json" - }, - "access_token": { - "description": "OAuth access token.", - "type": "string", - "location": "query" - }, - "key": { - "location": "query", - "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.", - "type": "string" - } - }, - "version": "v1alpha1", - "baseUrl": "https://cloudshell.googleapis.com/", - "kind": "discovery#restDescription", - "description": "Allows users to start, configure, and connect to interactive shell sessions running in the cloud.\n", - "servicePath": "", - "basePath": "", - "revision": "20180118", - "documentationLink": "https://cloud.google.com/shell/docs/", - "id": "cloudshell:v1alpha1", - "discoveryVersion": "v1", - "version_module": true, + "revision": "20180203", + "rootUrl": "https://cloudshell.googleapis.com/", "schemas": { - "StartEnvironmentMetadata": { - "id": "StartEnvironmentMetadata", - "description": "Message included in the metadata field of operations returned from\nStartEnvironment.", - "type": "object", + "CreatePublicKeyRequest": { + "description": "Request message for CreatePublicKey.", + "id": "CreatePublicKeyRequest", "properties": { + "key": { + "$ref": "PublicKey", + "description": "Key that should be added to the environment." + } + }, + "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" + }, + "Environment": { + "description": "A Cloud Shell environment, which is defined as the combination of a Docker\nimage specifying what is installed on the environment and a home directory\ncontaining the user's data that will remain across sessions. Each user has a\nsingle environment with the ID \"default\".", + "id": "Environment", + "properties": { + "dockerImage": { + "description": "Required. Full path to the Docker image used to run this environment, e.g.\n\"gcr.io/dev-con/cloud-devshell:latest\".", + "type": "string" + }, + "id": { + "description": "Output only. The environment's identifier, which is always \"default\".", + "type": "string" + }, + "name": { + "description": "Output only. Full name of this resource, in the format\n`users/{owner_email}/environments/{environment_id}`. `{owner_email}` is the\nemail address of the user to whom this environment belongs, and\n`{environment_id}` is the identifier of this environment. For example,\n`users/someone@example.com/environments/default`.", + "type": "string" + }, + "publicKeys": { + "description": "Output only. Public keys associated with the environment. Clients can\nconnect to this environment via SSH only if they possess a private key\ncorresponding to at least one of these public keys. Keys can be added to or\nremoved from the environment using the CreatePublicKey and DeletePublicKey\nmethods.", + "items": { + "$ref": "PublicKey" + }, + "type": "array" + }, + "sshHost": { + "description": "Output only. Host to which clients can connect to initiate SSH sessions\nwith the environment.", + "type": "string" + }, + "sshPort": { + "description": "Output only. Port to which clients can connect to initiate SSH sessions\nwith the environment.", + "format": "int32", + "type": "integer" + }, + "sshUsername": { + "description": "Output only. Username that clients should use when initiating SSH sessions\nwith the environment.", + "type": "string" + }, "state": { - "enumDescriptions": [ - "The environment's start state is unknown.", - "The environment is in the process of being started, but no additional\ndetails are available.", - "Startup is waiting for the user's disk to be unarchived. This can happen\nwhen the user returns to Cloud Shell after not having used it for a\nwhile, and suggests that startup will take longer than normal.", - "Startup is complete and the user should be able to establish an SSH\nconnection to their environment." - ], + "description": "Output only. Current execution state of this environment.", "enum": [ "STATE_UNSPECIFIED", + "DISABLED", "STARTING", - "UNARCHIVING_DISK", - "FINISHED" + "RUNNING" + ], + "enumDescriptions": [ + "The environment's states is unknown.", + "The environment is not running and can't be connected to. Starting the\nenvironment will transition it to the STARTING state.", + "The environment is being started but is not yet ready to accept\nconnections.", + "The environment is running and ready to accept connections. It will\nautomatically transition back to DISABLED after a period of inactivity or\nif another environment is started." ], - "description": "Current state of the environment being started.", "type": "string" } - } + }, + "type": "object" }, "Operation": { "description": "This resource represents a long-running operation that is the result of a\nnetwork API call.", - "type": "object", + "id": "Operation", "properties": { - "name": { - "description": "The server-assigned name, which is only unique within the same service that\noriginally returns it. If you use the default HTTP mapping, the\n`name` should have the format of `operations/some/unique/name`.", - "type": "string" + "done": { + "description": "If the value is `false`, it means the operation is still in progress.\nIf `true`, the operation is completed, and either `error` or `response` is\navailable.", + "type": "boolean" }, "error": { "$ref": "Status", @@ -305,9 +365,9 @@ "description": "Service-specific metadata associated with the operation. It typically\ncontains progress information and common metadata such as create time.\nSome services might not provide such metadata. Any method that returns a\nlong-running operation should document the metadata type, if any.", "type": "object" }, - "done": { - "description": "If the value is `false`, it means the operation is still in progress.\nIf `true`, the operation is completed, and either `error` or `response` is\navailable.", - "type": "boolean" + "name": { + "description": "The server-assigned name, which is only unique within the same service that\noriginally returns it. If you use the default HTTP mapping, the\n`name` should have the format of `operations/some/unique/name`.", + "type": "string" }, "response": { "additionalProperties": { @@ -318,140 +378,22 @@ "type": "object" } }, - "id": "Operation" - }, - "Environment": { - "id": "Environment", - "description": "A Cloud Shell environment, which is defined as the combination of a Docker\nimage specifying what is installed on the environment and a home directory\ncontaining the user's data that will remain across sessions. Each user has a\nsingle environment with the ID \"default\".", - "type": "object", - "properties": { - "publicKeys": { - "description": "Output only. Public keys associated with the environment. Clients can\nconnect to this environment via SSH only if they possess a private key\ncorresponding to at least one of these public keys. Keys can be added to or\nremoved from the environment using the CreatePublicKey and DeletePublicKey\nmethods.", - "type": "array", - "items": { - "$ref": "PublicKey" - } - }, - "dockerImage": { - "description": "Required. Full path to the Docker image used to run this environment, e.g.\n\"gcr.io/dev-con/cloud-devshell:latest\".", - "type": "string" - }, - "state": { - "enumDescriptions": [ - "The environment's states is unknown.", - "The environment is not running and can't be connected to. Starting the\nenvironment will transition it to the STARTING state.", - "The environment is being started but is not yet ready to accept\nconnections.", - "The environment is running and ready to accept connections. It will\nautomatically transition back to DISABLED after a period of inactivity or\nif another environment is started." - ], - "enum": [ - "STATE_UNSPECIFIED", - "DISABLED", - "STARTING", - "RUNNING" - ], - "description": "Output only. Current execution state of this environment.", - "type": "string" - }, - "name": { - "description": "Output only. Full name of this resource, in the format\n`users/{owner_email}/environments/{environment_id}`. `{owner_email}` is the\nemail address of the user to whom this environment belongs, and\n`{environment_id}` is the identifier of this environment. For example,\n`users/someone@example.com/environments/default`.", - "type": "string" - }, - "sshHost": { - "description": "Output only. Host to which clients can connect to initiate SSH sessions\nwith the environment.", - "type": "string" - }, - "sshPort": { - "description": "Output only. Port to which clients can connect to initiate SSH sessions\nwith the environment.", - "format": "int32", - "type": "integer" - }, - "id": { - "description": "Output only. The environment's identifier, which is always \"default\".", - "type": "string" - }, - "sshUsername": { - "description": "Output only. Username that clients should use when initiating SSH sessions\nwith the environment.", - "type": "string" - } - } - }, - "CreatePublicKeyRequest": { - "description": "Request message for CreatePublicKey.", - "type": "object", - "properties": { - "key": { - "$ref": "PublicKey", - "description": "Key that should be added to the environment." - } - }, - "id": "CreatePublicKeyRequest" - }, - "Status": { - "id": "Status", - "description": "The `Status` type defines a logical error model that is suitable for different\nprogramming environments, including REST APIs and RPC APIs. It is used by\n[gRPC](https://github.com/grpc). The error model is designed to be:\n\n- Simple to use and understand for most users\n- Flexible enough to meet unexpected needs\n\n# Overview\n\nThe `Status` message contains three pieces of data: error code, error message,\nand error details. The error code should be an enum value of\ngoogle.rpc.Code, but it may accept additional error codes if needed. The\nerror message should be a developer-facing English message that helps\ndevelopers *understand* and *resolve* the error. If a localized user-facing\nerror message is needed, put the localized message in the error details or\nlocalize it in the client. The optional error details may contain arbitrary\ninformation about the error. There is a predefined set of error detail types\nin the package `google.rpc` that can be used for common error conditions.\n\n# Language mapping\n\nThe `Status` message is the logical representation of the error model, but it\nis not necessarily the actual wire format. When the `Status` message is\nexposed in different client libraries and different wire protocols, it can be\nmapped differently. For example, it will likely be mapped to some exceptions\nin Java, but more likely mapped to some error codes in C.\n\n# Other uses\n\nThe error model and the `Status` message can be used in a variety of\nenvironments, either with or without APIs, to provide a\nconsistent developer experience across different environments.\n\nExample uses of this error model include:\n\n- Partial errors. If a service needs to return partial errors to the client,\n it may embed the `Status` in the normal response to indicate the partial\n errors.\n\n- Workflow errors. A typical workflow has multiple steps. Each step may\n have a `Status` message for error reporting.\n\n- Batch operations. If a client uses batch request and batch response, the\n `Status` message should be used directly inside batch response, one for\n each error sub-response.\n\n- Asynchronous operations. If an API call embeds asynchronous operation\n results in its response, the status of those operations should be\n represented directly using the `Status` message.\n\n- Logging. If some API errors are stored in logs, the message `Status` could\n be used directly after any stripping needed for security/privacy reasons.", - "type": "object", - "properties": { - "code": { - "description": "The status code, which should be an enum value of google.rpc.Code.", - "format": "int32", - "type": "integer" - }, - "message": { - "description": "A developer-facing error message, which should be in English. Any\nuser-facing error message should be localized and sent in the\ngoogle.rpc.Status.details field, or localized by the client.", - "type": "string" - }, - "details": { - "type": "array", - "items": { - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - }, - "type": "object" - }, - "description": "A list of messages that carry the error details. There is a common set of\nmessage types for APIs to use." - } - } - }, - "StartEnvironmentResponse": { - "id": "StartEnvironmentResponse", - "description": "Message included in the response field of operations returned from\nStartEnvironment once the\noperation is complete.", - "type": "object", - "properties": { - "environment": { - "description": "Environment that was started.", - "$ref": "Environment" - } - } - }, - "StartEnvironmentRequest": { - "description": "Request message for StartEnvironment.", - "type": "object", - "properties": {}, - "id": "StartEnvironmentRequest" - }, - "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 `{}`.", - "type": "object", - "properties": {}, - "id": "Empty" + "type": "object" }, "PublicKey": { "description": "A public SSH key, corresponding to a private SSH key held by the client.", - "type": "object", + "id": "PublicKey", "properties": { - "name": { - "description": "Output only. Full name of this resource, in the format\n`users/{owner_email}/environments/{environment_id}/publicKeys/{key_id}`.\n`{owner_email}` is the email address of the user to whom the key belongs.\n`{environment_id}` is the identifier of the environment to which the key\ngrants access. `{key_id}` is the unique identifier of the key. For example,\n`users/someone@example.com/environments/default/publicKeys/myKey`.", - "type": "string" - }, - "key": { - "description": "Required. Content of this key.", - "format": "byte", - "type": "string" - }, "format": { "description": "Required. Format of this key's content.", - "type": "string", + "enum": [ + "FORMAT_UNSPECIFIED", + "SSH_DSS", + "SSH_RSA", + "ECDSA_SHA2_NISTP256", + "ECDSA_SHA2_NISTP384", + "ECDSA_SHA2_NISTP521" + ], "enumDescriptions": [ "Unknown format. Do not use.", "`ssh-dss` key format (see RFC4253).", @@ -460,32 +402,90 @@ "`ecdsa-sha2-nistp384` key format (see RFC5656).", "`ecdsa-sha2-nistp521` key format (see RFC5656)." ], - "enum": [ - "FORMAT_UNSPECIFIED", - "SSH_DSS", - "SSH_RSA", - "ECDSA_SHA2_NISTP256", - "ECDSA_SHA2_NISTP384", - "ECDSA_SHA2_NISTP521" - ] + "type": "string" + }, + "key": { + "description": "Required. Content of this key.", + "format": "byte", + "type": "string" + }, + "name": { + "description": "Output only. Full name of this resource, in the format\n`users/{owner_email}/environments/{environment_id}/publicKeys/{key_id}`.\n`{owner_email}` is the email address of the user to whom the key belongs.\n`{environment_id}` is the identifier of the environment to which the key\ngrants access. `{key_id}` is the unique identifier of the key. For example,\n`users/someone@example.com/environments/default/publicKeys/myKey`.", + "type": "string" } }, - "id": "PublicKey" - } - }, - "protocol": "rest", - "icons": { - "x32": "http://www.google.com/images/icons/product/search-32.gif", - "x16": "http://www.google.com/images/icons/product/search-16.gif" - }, - "canonicalName": "Cloud Shell", - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/cloud-platform": { - "description": "View and manage your data across Google Cloud Platform services" + "type": "object" + }, + "StartEnvironmentMetadata": { + "description": "Message included in the metadata field of operations returned from\nStartEnvironment.", + "id": "StartEnvironmentMetadata", + "properties": { + "state": { + "description": "Current state of the environment being started.", + "enum": [ + "STATE_UNSPECIFIED", + "STARTING", + "UNARCHIVING_DISK", + "FINISHED" + ], + "enumDescriptions": [ + "The environment's start state is unknown.", + "The environment is in the process of being started, but no additional\ndetails are available.", + "Startup is waiting for the user's disk to be unarchived. This can happen\nwhen the user returns to Cloud Shell after not having used it for a\nwhile, and suggests that startup will take longer than normal.", + "Startup is complete and the user should be able to establish an SSH\nconnection to their environment." + ], + "type": "string" } - } + }, + "type": "object" + }, + "StartEnvironmentRequest": { + "description": "Request message for StartEnvironment.", + "id": "StartEnvironmentRequest", + "properties": {}, + "type": "object" + }, + "StartEnvironmentResponse": { + "description": "Message included in the response field of operations returned from\nStartEnvironment once the\noperation is complete.", + "id": "StartEnvironmentResponse", + "properties": { + "environment": { + "$ref": "Environment", + "description": "Environment that was started." + } + }, + "type": "object" + }, + "Status": { + "description": "The `Status` type defines a logical error model that is suitable for different\nprogramming environments, including REST APIs and RPC APIs. It is used by\n[gRPC](https://github.com/grpc). The error model is designed to be:\n\n- Simple to use and understand for most users\n- Flexible enough to meet unexpected needs\n\n# Overview\n\nThe `Status` message contains three pieces of data: error code, error message,\nand error details. The error code should be an enum value of\ngoogle.rpc.Code, but it may accept additional error codes if needed. The\nerror message should be a developer-facing English message that helps\ndevelopers *understand* and *resolve* the error. If a localized user-facing\nerror message is needed, put the localized message in the error details or\nlocalize it in the client. The optional error details may contain arbitrary\ninformation about the error. There is a predefined set of error detail types\nin the package `google.rpc` that can be used for common error conditions.\n\n# Language mapping\n\nThe `Status` message is the logical representation of the error model, but it\nis not necessarily the actual wire format. When the `Status` message is\nexposed in different client libraries and different wire protocols, it can be\nmapped differently. For example, it will likely be mapped to some exceptions\nin Java, but more likely mapped to some error codes in C.\n\n# Other uses\n\nThe error model and the `Status` message can be used in a variety of\nenvironments, either with or without APIs, to provide a\nconsistent developer experience across different environments.\n\nExample uses of this error model include:\n\n- Partial errors. If a service needs to return partial errors to the client,\n it may embed the `Status` in the normal response to indicate the partial\n errors.\n\n- Workflow errors. A typical workflow has multiple steps. Each step may\n have a `Status` message for error reporting.\n\n- Batch operations. If a client uses batch request and batch response, the\n `Status` message should be used directly inside batch response, one for\n each error sub-response.\n\n- Asynchronous operations. If an API call embeds asynchronous operation\n results in its response, the status of those operations should be\n represented directly using the `Status` message.\n\n- Logging. If some API errors are stored in logs, the message `Status` could\n be used directly after any stripping needed for security/privacy reasons.", + "id": "Status", + "properties": { + "code": { + "description": "The status code, which should be an enum value of google.rpc.Code.", + "format": "int32", + "type": "integer" + }, + "details": { + "description": "A list of messages that carry the error details. There is a common set of\nmessage types for APIs to use.", + "items": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "A developer-facing error message, which should be in English. Any\nuser-facing error message should be localized and sent in the\ngoogle.rpc.Status.details field, or localized by the client.", + "type": "string" + } + }, + "type": "object" } - } -} + }, + "servicePath": "", + "title": "Cloud Shell API", + "version": "v1alpha1", + "version_module": true +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/cloudtasks/v2beta2/cloudtasks-api.json b/vendor/google.golang.org/api/cloudtasks/v2beta2/cloudtasks-api.json index c799508bd..f80511253 100644 --- a/vendor/google.golang.org/api/cloudtasks/v2beta2/cloudtasks-api.json +++ b/vendor/google.golang.org/api/cloudtasks/v2beta2/cloudtasks-api.json @@ -1,615 +1,839 @@ { + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/cloud-platform": { + "description": "View and manage your data across Google Cloud Platform services" + } + } + } + }, + "basePath": "", + "baseUrl": "https://cloudtasks.googleapis.com/", + "batchPath": "batch", + "canonicalName": "Cloud Tasks", + "description": "Manages the execution of large numbers of distributed requests. Cloud Tasks is in Alpha.", "discoveryVersion": "v1", - "version_module": true, - "schemas": { - "ResumeQueueRequest": { - "description": "Request message for CloudTasks.ResumeQueue.", - "type": "object", - "properties": {}, - "id": "ResumeQueueRequest" + "documentationLink": "https://cloud.google.com/cloud-tasks/", + "fullyEncodeReservedExpansion": true, + "icons": { + "x16": "http://www.google.com/images/icons/product/search-16.gif", + "x32": "http://www.google.com/images/icons/product/search-32.gif" + }, + "id": "cloudtasks:v2beta2", + "kind": "discovery#restDescription", + "name": "cloudtasks", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "$.xgafv": { + "description": "V1 error format.", + "enum": [ + "1", + "2" + ], + "enumDescriptions": [ + "v1 error format", + "v2 error format" + ], + "location": "query", + "type": "string" }, - "LeaseTasksResponse": { - "description": "Response message for leasing tasks using CloudTasks.LeaseTasks.", - "type": "object", - "properties": { - "tasks": { - "description": "The leased tasks.", - "type": "array", - "items": { - "$ref": "Task" - } - } - }, - "id": "LeaseTasksResponse" + "access_token": { + "description": "OAuth access token.", + "location": "query", + "type": "string" }, - "CreateTaskRequest": { - "description": "Request message for CloudTasks.CreateTask.", - "type": "object", - "properties": { - "task": { - "description": "Required.\n\nThe task to add.\n\nTask names have the following format:\n`projects/PROJECT_ID/locations/LOCATION_ID/queues/QUEUE_ID/tasks/TASK_ID`.\nThe user can optionally specify a name for the task in\nTask.name. If a name is not specified then the system will\ngenerate a random unique task id, which will be returned in the\nresponse's Task.name.\n\nIf Task.schedule_time is not set or is in the past then Cloud\nTasks will set it to the current time.\n\nTask De-duplication:\n\nExplicitly specifying a task ID enables task de-duplication. If\na task's ID is identical to that of an existing task or a task\nthat was deleted or completed recently then the call will fail\nwith google.rpc.Code.ALREADY_EXISTS.\nIf the task's queue was created using Cloud Tasks, then another task with\nthe same name can't be created for ~1hour after the original task was\ndeleted or completed. If the task's queue was created using queue.yaml or\nqueue.xml, then another task with the same name can't be created\nfor ~9days after the original task was deleted or completed.\n\nBecause there is an extra lookup cost to identify duplicate task\nnames, these CloudTasks.CreateTask calls have significantly\nincreased latency. Using hashed strings for the task id or for\nthe prefix of the task id is recommended. Choosing task ids that\nare sequential or have sequential prefixes, for example using a\ntimestamp, causes an increase in latency and error rates in all\ntask commands. The infrastructure relies on an approximately\nuniform distribution of task ids to store and serve tasks\nefficiently.", - "$ref": "Task" - }, - "responseView": { - "enumDescriptions": [ - "Unspecified. Defaults to BASIC.", - "The basic view omits fields which can be large or can contain\nsensitive data.\n\nThis view does not include (AppEngineHttpRequest.payload\nand PullMessage.payload). These payloads are desirable to\nreturn only when needed, because they can be large and because\nof the sensitivity of the data that you choose to store in it.", - "All information is returned.\n\nAuthorization for Task.View.FULL requires\n`cloudtasks.tasks.fullView` [Google IAM](https://cloud.google.com/iam/)\npermission on the Queue.name resource." - ], - "enum": [ - "VIEW_UNSPECIFIED", - "BASIC", - "FULL" - ], - "description": "The response_view specifies which subset of the Task will be\nreturned.\n\nBy default response_view is Task.View.BASIC; not all\ninformation is retrieved by default because some data, such as\npayloads, might be desirable to return only when needed because\nof its large size or because of the sensitivity of data that it\ncontains.\n\nAuthorization for Task.View.FULL requires `cloudtasks.tasks.fullView`\n[Google IAM](/iam/) permission on the\nTask.name resource.", - "type": "string" - } - }, - "id": "CreateTaskRequest" + "alt": { + "default": "json", + "description": "Data format for response.", + "enum": [ + "json", + "media", + "proto" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json", + "Media download with context-dependent Content-Type", + "Responses with Content-Type of application/x-protobuf" + ], + "location": "query", + "type": "string" }, - "ListTasksResponse": { - "properties": { - "tasks": { - "type": "array", - "items": { - "$ref": "Task" - }, - "description": "The list of tasks." - }, - "nextPageToken": { - "type": "string", - "description": "A token to retrieve next page of results.\n\nTo return the next page of results, call\nCloudTasks.ListTasks with this value as the\nListTasksRequest.page_token.\n\nIf the next_page_token is empty, there are no more results." - } - }, - "id": "ListTasksResponse", - "description": "Response message for listing tasks using CloudTasks.ListTasks.", - "type": "object" + "bearer_token": { + "description": "OAuth bearer token.", + "location": "query", + "type": "string" }, - "Queue": { - "id": "Queue", - "description": "A queue is a container of related tasks. Queues are configured to manage\nhow those tasks are dispatched. Configurable properties include rate limits,\nretry options, target types, and others.", - "type": "object", - "properties": { - "pullTarget": { - "$ref": "PullTarget", - "description": "Pull target.\n\nA pull queue is a queue that has a PullTarget." - }, - "appEngineHttpTarget": { - "description": "App Engine HTTP target.\n\nAn App Engine queue is a queue that has an AppEngineHttpTarget.", - "$ref": "AppEngineHttpTarget" - }, - "purgeTime": { - "description": "Output only. The last time this queue was purged.\n\nAll tasks that were created before this time\nwere purged.\n\nA queue can be purged using CloudTasks.PurgeQueue, the\n[App Engine Task Queue SDK, or the Cloud Console](/appengine/docs/standard/python/taskqueue/push/deleting-tasks-and-queues#purging_all_tasks_from_a_queue).\n\nPurge time will be truncated to the nearest microsecond. Purge\ntime will be unset if the queue has never been purged.", - "format": "google-datetime", - "type": "string" - }, - "retryConfig": { - "$ref": "RetryConfig", - "description": "Settings that determine the retry behavior.\n\n* For tasks created using Cloud Tasks: the queue-level retry settings\n apply to all tasks in the queue that were created using Cloud Tasks.\n Retry settings cannot be set on individual tasks.\n* For tasks created using the App Engine SDK: the queue-level retry\n settings apply to all tasks in the queue which do not have retry settings\n explicitly set on the task and were created by the App Engine SDK. See\n [App Engine documentation](/appengine/docs/standard/python/taskqueue/push/retrying-tasks)." - }, - "state": { - "type": "string", - "enumDescriptions": [ - "Unspecified state.", - "The queue is running. Tasks can be dispatched.\n\nIf the queue was created using Cloud Tasks and the queue has had no\nactivity (method calls or task dispatches) for 30 days, the queue may\ntake a few minutes to re-activate. Some method calls may return\ngoogle.rpc.Code.NOT_FOUND and tasks may not be dispatched for a few\nminutes until the queue has been re-activated.", - "Tasks are paused by the user. If the queue is paused then Cloud\nTasks will stop delivering tasks from it, but more tasks can\nstill be added to it by the user. When a pull queue is paused,\nall CloudTasks.LeaseTasks calls will return a\n`FAILED_PRECONDITION` error.", - "The queue is disabled.\n\nA queue becomes `DISABLED` when\n[queue.yaml](/appengine/docs/python/config/queueref) or\n[queue.xml](appengine/docs/standard/java/config/queueref) is uploaded\nwhich does not contain the queue. You cannot directly disable a queue.\n\nWhen a queue is disabled, tasks can still be added to a queue\nbut the tasks are not dispatched and CloudTasks.LeaseTasks calls\nreturn a `FAILED_PRECONDITION` error.\n\nTo permanently delete this queue and all of its tasks, call\nCloudTasks.DeleteQueue." - ], - "enum": [ - "STATE_UNSPECIFIED", - "RUNNING", - "PAUSED", - "DISABLED" - ], - "description": "Output only. The state of the queue.\n\n`state` can only be changed by called\nCloudTasks.PauseQueue, CloudTasks.ResumeQueue, or uploading\n[queue.yaml/xml](/appengine/docs/python/config/queueref).\nCloudTasks.UpdateQueue cannot be used to change `state`." - }, - "name": { - "description": "The queue name.\n\nThe queue name must have the following format:\n`projects/PROJECT_ID/locations/LOCATION_ID/queues/QUEUE_ID`\n\n* `PROJECT_ID` can contain letters ([A-Za-z]), numbers ([0-9]),\n hyphens (-), colons (:), or periods (.).\n For more information, see\n [Identifying projects](/resource-manager/docs/creating-managing-projects#identifying_projects)\n* `LOCATION_ID` is the canonical ID for the queue's location.\n The list of available locations can be obtained by calling\n google.cloud.location.Locations.ListLocations.\n For more information, see https://cloud.google.com/about/locations/.\n* `QUEUE_ID` can contain letters ([A-Za-z]), numbers ([0-9]), or\n hyphens (-). The maximum length is 100 characters.\n\nCaller-specified and required in CreateQueueRequest, after which\nit becomes output only.", - "type": "string" - }, - "rateLimits": { - "description": "Rate limits for task dispatches.\n\nQueue.rate_limits and Queue.retry_config are related because they\nboth control task attempts however they control how tasks are attempted in\ndifferent ways:\n\n* Queue.rate_limits controls the total rate of dispatches from a queue\n (i.e. all traffic dispatched from the queue, regardless of whether the\n dispatch is from a first attempt or a retry).\n* Queue.retry_config controls what happens to particular a task after\n its first attempt fails. That is, Queue.retry_config controls task\n retries (the second attempt, third attempt, etc).", - "$ref": "RateLimits" - } - } + "callback": { + "description": "JSONP", + "location": "query", + "type": "string" }, - "SetIamPolicyRequest": { - "type": "object", - "properties": { - "policy": { - "$ref": "Policy", - "description": "REQUIRED: The complete policy to be applied to the `resource`. The size of\nthe policy is limited to a few 10s of KB. An empty policy is a\nvalid policy but certain Cloud Platform services (such as Projects)\nmight reject them." - } - }, - "id": "SetIamPolicyRequest", - "description": "Request message for `SetIamPolicy` method." + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "location": "query", + "type": "string" }, - "AppEngineRouting": { - "description": "App Engine Routing.\n\nFor more information about services, versions, and instances see\n[An Overview of App Engine](/appengine/docs/python/an-overview-of-app-engine),\n[Microservices Architecture on Google App Engine](/appengine/docs/python/microservices-on-app-engine),\n[App Engine Standard request routing](/appengine/docs/standard/python/how-requests-are-routed),\nand [App Engine Flex request routing](/appengine/docs/flexible/python/how-requests-are-routed).", - "type": "object", - "properties": { - "service": { - "description": "App service.\n\nBy default, the task is sent to the service which is the default\nservice when the task is attempted (\"default\").\n\nFor some queues or tasks which were created using the App Engine Task Queue\nAPI, AppEngineRouting.host is not parsable into\nAppEngineRouting.service, AppEngineRouting.version, and\nAppEngineRouting.instance. For example, some tasks which were created\nusing the App Engine SDK use a custom domain name; custom domains are not\nparsed by Cloud Tasks. If AppEngineRouting.host is not parsable, then\nAppEngineRouting.service, AppEngineRouting.version, and\nAppEngineRouting.instance are the empty string.", - "type": "string" - }, - "instance": { - "description": "App instance.\n\nBy default, the task is sent to an instance which is available when\nthe task is attempted.\n\nRequests can only be sent to a specific instance if\n[manual scaling is used in App Engine Standard](/appengine/docs/python/an-overview-of-app-engine?hl=en_US#scaling_types_and_instance_classes).\nApp Engine Flex does not support instances. For more information, see\n[App Engine Standard request routing](/appengine/docs/standard/python/how-requests-are-routed)\nand [App Engine Flex request routing](/appengine/docs/flexible/python/how-requests-are-routed).", - "type": "string" - }, - "version": { - "description": "App version.\n\nBy default, the task is sent to the version which is the default\nversion when the task is attempted (\"default\").\n\nFor some queues or tasks which were created using the App Engine Task Queue\nAPI, AppEngineRouting.host is not parsable into\nAppEngineRouting.service, AppEngineRouting.version, and\nAppEngineRouting.instance. For example, some tasks which were created\nusing the App Engine SDK use a custom domain name; custom domains are not\nparsed by Cloud Tasks. If AppEngineRouting.host is not parsable, then\nAppEngineRouting.service, AppEngineRouting.version, and\nAppEngineRouting.instance are the empty string.", - "type": "string" - }, - "host": { - "description": "Output only. The host that the task is sent to.\n\nFor more information, see\n[How Requests are Routed](/appengine/docs/standard/python/how-requests-are-routed).\n\nThe host is constructed as:\n\n\n* `host = [application_domain_name]`\u003c/br\u003e\n `| [service] + '.' + [application_domain_name]`\u003c/br\u003e\n `| [version] + '.' + [application_domain_name]`\u003c/br\u003e\n `| [version_dot_service]+ '.' + [application_domain_name]`\u003c/br\u003e\n `| [instance] + '.' + [application_domain_name]`\u003c/br\u003e\n `| [instance_dot_service] + '.' + [application_domain_name]`\u003c/br\u003e\n `| [instance_dot_version] + '.' + [application_domain_name]`\u003c/br\u003e\n `| [instance_dot_version_dot_service] + '.' + [application_domain_name]`\n\n* `application_domain_name` = The domain name of the app, for\n example \u003capp-id\u003e.appspot.com, which is associated with the\n queue's project ID. Some tasks which were created using the App Engine\n SDK use a custom domain name.\n\n* `service =` AppEngineRouting.service\n\n* `version =` AppEngineRouting.version\n\n* `version_dot_service =`\n AppEngineRouting.version `+ '.' +` AppEngineRouting.service\n\n* `instance =` AppEngineRouting.instance\n\n* `instance_dot_service =`\n AppEngineRouting.instance `+ '.' +` AppEngineRouting.service\n\n* `instance_dot_version =`\n AppEngineRouting.instance `+ '.' +` AppEngineRouting.version\n\n* `instance_dot_version_dot_service =`\n AppEngineRouting.instance `+ '.' +`\n AppEngineRouting.version `+ '.' +` AppEngineRouting.service\n\nIf AppEngineRouting.service is empty, then the task will be sent\nto the service which is the default service when the task is attempted.\n\nIf AppEngineRouting.version is empty, then the task will be sent\nto the version which is the default version when the task is attempted.\n\nIf AppEngineRouting.instance is empty, then the task will be sent\nto an instance which is available when the task is attempted.\n\nWhen AppEngineRouting.service is \"default\",\nAppEngineRouting.version is \"default\", and\nAppEngineRouting.instance is empty, AppEngineRouting.host is\nshortened to just the `application_domain_name`.\n\nIf AppEngineRouting.service, AppEngineRouting.version, or\nAppEngineRouting.instance is invalid, then the task will be sent\nto the default version of the default service when the task is attempted.", - "type": "string" - } - }, - "id": "AppEngineRouting" + "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" }, - "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 `{}`.", - "type": "object", - "properties": {}, - "id": "Empty" + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" }, - "AppEngineHttpTarget": { - "description": "App Engine HTTP target.\n\nThe task will be delivered to the App Engine application hostname\nspecified by its AppEngineHttpTarget and AppEngineHttpRequest.\nThe documentation for AppEngineHttpRequest explains how the\ntask's host URL is constructed.\n\nUsing AppEngineHttpTarget requires\n[`appengine.applications.get`](/appengine/docs/admin-api/access-control)\nGoogle IAM permission for the project\nand the following scope:\n\n`https://www.googleapis.com/auth/cloud-platform`", - "type": "object", - "properties": { - "appEngineRoutingOverride": { - "$ref": "AppEngineRouting", - "description": "Overrides for the\ntask-level app_engine_routing.\n\nIf set, AppEngineHttpTarget.app_engine_routing_override is used for\nall tasks in the queue, no matter what the setting is for the\ntask-level app_engine_routing." - } - }, - "id": "AppEngineHttpTarget" + "pp": { + "default": "true", + "description": "Pretty-print response.", + "location": "query", + "type": "boolean" }, - "Location": { - "description": "A resource that represents Google Cloud Platform location.", - "type": "object", - "properties": { - "name": { - "description": "Resource name for the location, which may vary between implementations.\nFor example: `\"projects/example-project/locations/us-east1\"`", - "type": "string" - }, - "locationId": { - "type": "string", - "description": "The canonical id for this location. For example: `\"us-east1\"`." - }, - "metadata": { - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - }, - "description": "Service-specific metadata. For example the available capacity at the given\nlocation.", - "type": "object" - }, - "labels": { - "additionalProperties": { - "type": "string" - }, - "description": "Cross-service attributes for the location. For example\n\n {\"cloud.googleapis.com/region\": \"us-east1\"}", - "type": "object" - } - }, - "id": "Location" + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" }, - "LeaseTasksRequest": { - "description": "Request message for leasing tasks using CloudTasks.LeaseTasks.", - "type": "object", - "properties": { - "filter": { - "description": "`filter` can be used to specify a subset of tasks to lease.\n\nWhen `filter` is set to `tag=\u003cmy-tag\u003e` then the\nLeaseTasksResponse will contain only tasks whose\nPullMessage.tag is equal to `\u003cmy-tag\u003e`. `\u003cmy-tag\u003e` must be\nless than 500 characters.\n\nWhen `filter` is set to `tag_function=oldest_tag()`, only tasks which have\nthe same tag as the task with the oldest schedule_time will be returned.\n\nGrammar Syntax:\n\n* `filter = \"tag=\" tag | \"tag_function=\" function`\n\n* `tag = string`\n\n* `function = \"oldest_tag()\"`\n\nThe `oldest_tag()` function returns tasks which have the same tag as the\noldest task (ordered by schedule time).\n\nSDK compatibility: Although the SDK allows tags to be either\nstring or [bytes](/appengine/docs/standard/java/javadoc/com/google/appengine/api/taskqueue/TaskOptions.html#tag-byte:A-),\nonly UTF-8 encoded tags can be used in Cloud Tasks. Tag which aren't UTF-8\nencoded can't be used in LeaseTasksRequest.filter and won't display in\nPullMessage.tag.", - "type": "string" - }, - "maxTasks": { - "type": "integer", - "description": "The maximum number of tasks to lease. The maximum that can be\nrequested is 1000.", - "format": "int32" - }, - "leaseDuration": { - "description": "The duration of the lease.\n\nEach task returned in the LeaseTasksResponse will have its\nTask.schedule_time set to the current time plus the\n`lease_duration`. A task that has been returned in a\nLeaseTasksResponse is leased -- that task will not be\nreturned in a different LeaseTasksResponse before the\nTask.schedule_time.\n\nAfter the worker has successfully finished the work\nassociated with the task, the worker must call\nCloudTasks.AcknowledgeTask. If the task is not acknowledged\nvia CloudTasks.AcknowledgeTask before the\nTask.schedule_time then it will be returned in a later\nLeaseTasksResponse so that another worker can process\nit.\n\nThe maximum lease duration is 1 week.\n`lease_duration` will be truncated to the nearest second.", - "format": "google-duration", - "type": "string" - }, - "responseView": { - "description": "The response_view specifies which subset of the Task will be\nreturned.\n\nBy default response_view is Task.View.BASIC; not all\ninformation is retrieved by default because some data, such as\npayloads, might be desirable to return only when needed because\nof its large size or because of the sensitivity of data that it\ncontains.\n\nAuthorization for Task.View.FULL requires `cloudtasks.tasks.fullView`\n[Google IAM](/iam/) permission on the Task.name resource.", - "type": "string", - "enumDescriptions": [ - "Unspecified. Defaults to BASIC.", - "The basic view omits fields which can be large or can contain\nsensitive data.\n\nThis view does not include (AppEngineHttpRequest.payload\nand PullMessage.payload). These payloads are desirable to\nreturn only when needed, because they can be large and because\nof the sensitivity of the data that you choose to store in it.", - "All information is returned.\n\nAuthorization for Task.View.FULL requires\n`cloudtasks.tasks.fullView` [Google IAM](https://cloud.google.com/iam/)\npermission on the Queue.name resource." - ], - "enum": [ - "VIEW_UNSPECIFIED", - "BASIC", - "FULL" - ] - } - }, - "id": "LeaseTasksRequest" + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", + "location": "query", + "type": "string" }, - "AcknowledgeTaskRequest": { - "properties": { - "scheduleTime": { - "description": "Required.\n\nThe task's current schedule time, available in the Task.schedule_time\nreturned in LeaseTasksResponse.tasks or\nCloudTasks.RenewLease. This restriction is to ensure that your\nworker currently holds the lease.", - "format": "google-datetime", - "type": "string" - } - }, - "id": "AcknowledgeTaskRequest", - "description": "Request message for acknowledging a task using\nCloudTasks.AcknowledgeTask.", - "type": "object" + "uploadType": { + "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", + "location": "query", + "type": "string" }, - "ListQueuesResponse": { - "id": "ListQueuesResponse", - "description": "Response message for CloudTasks.ListQueues.", - "type": "object", - "properties": { - "nextPageToken": { - "description": "A token to retrieve next page of results.\n\nTo return the next page of results, call\nCloudTasks.ListQueues with this value as the\nListQueuesRequest.page_token.\n\nIf the next_page_token is empty, there are no more results.\n\nThe page token is valid for only 2 hours.", - "type": "string" - }, - "queues": { - "description": "The list of queues.", - "type": "array", - "items": { - "$ref": "Queue" - } - } - } - }, - "TestIamPermissionsRequest": { - "description": "Request message for `TestIamPermissions` method.", - "type": "object", - "properties": { - "permissions": { - "description": "The set of permissions to check for the `resource`. Permissions with\nwildcards (such as '*' or 'storage.*') are not allowed. For more\ninformation see\n[IAM Overview](https://cloud.google.com/iam/docs/overview#permissions).", - "type": "array", - "items": { - "type": "string" - } - } - }, - "id": "TestIamPermissionsRequest" - }, - "Policy": { - "description": "Defines an Identity and Access Management (IAM) policy. It is used to\nspecify access control policies for Cloud Platform resources.\n\n\nA `Policy` consists of a list of `bindings`. A `Binding` binds a list of\n`members` to a `role`, where the members can be user accounts, Google groups,\nGoogle domains, and service accounts. A `role` is a named list of permissions\ndefined by IAM.\n\n**Example**\n\n {\n \"bindings\": [\n {\n \"role\": \"roles/owner\",\n \"members\": [\n \"user:mike@example.com\",\n \"group:admins@example.com\",\n \"domain:google.com\",\n \"serviceAccount:my-other-app@appspot.gserviceaccount.com\",\n ]\n },\n {\n \"role\": \"roles/viewer\",\n \"members\": [\"user:sean@example.com\"]\n }\n ]\n }\n\nFor a description of IAM and its features, see the\n[IAM developer's guide](https://cloud.google.com/iam/docs).", - "type": "object", - "properties": { - "etag": { - "description": "`etag` is used for optimistic concurrency control as a way to help\nprevent simultaneous updates of a policy from overwriting each other.\nIt is strongly suggested that systems make use of the `etag` in the\nread-modify-write cycle to perform policy updates in order to avoid race\nconditions: An `etag` is returned in the response to `getIamPolicy`, and\nsystems are expected to put that etag in the request to `setIamPolicy` to\nensure that their change will be applied to the same version of the policy.\n\nIf no `etag` is provided in the call to `setIamPolicy`, then the existing\npolicy is overwritten blindly.", - "format": "byte", - "type": "string" - }, - "version": { - "description": "Deprecated.", - "format": "int32", - "type": "integer" - }, - "bindings": { - "description": "Associates a list of `members` to a `role`.\n`bindings` with no members will result in an error.", - "type": "array", - "items": { - "$ref": "Binding" - } - } - }, - "id": "Policy" - }, - "ListLocationsResponse": { - "properties": { - "nextPageToken": { - "description": "The standard List next-page token.", - "type": "string" - }, + "upload_protocol": { + "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", + "location": "query", + "type": "string" + } + }, + "protocol": "rest", + "resources": { + "projects": { + "resources": { "locations": { - "description": "A list of locations that matches the specified filter in the request.", - "type": "array", - "items": { - "$ref": "Location" - } - } - }, - "id": "ListLocationsResponse", - "description": "The response message for Locations.ListLocations.", - "type": "object" - }, - "CancelLeaseRequest": { - "description": "Request message for canceling a lease using\nCloudTasks.CancelLease.", - "type": "object", - "properties": { - "responseView": { - "enumDescriptions": [ - "Unspecified. Defaults to BASIC.", - "The basic view omits fields which can be large or can contain\nsensitive data.\n\nThis view does not include (AppEngineHttpRequest.payload\nand PullMessage.payload). These payloads are desirable to\nreturn only when needed, because they can be large and because\nof the sensitivity of the data that you choose to store in it.", - "All information is returned.\n\nAuthorization for Task.View.FULL requires\n`cloudtasks.tasks.fullView` [Google IAM](https://cloud.google.com/iam/)\npermission on the Queue.name resource." - ], - "enum": [ - "VIEW_UNSPECIFIED", - "BASIC", - "FULL" - ], - "description": "The response_view specifies which subset of the Task will be\nreturned.\n\nBy default response_view is Task.View.BASIC; not all\ninformation is retrieved by default because some data, such as\npayloads, might be desirable to return only when needed because\nof its large size or because of the sensitivity of data that it\ncontains.\n\nAuthorization for Task.View.FULL requires `cloudtasks.tasks.fullView`\n[Google IAM](/iam/) permission on the\nTask.name resource.", - "type": "string" - }, - "scheduleTime": { - "description": "Required.\n\nThe task's current schedule time, available in the Task.schedule_time\nreturned in LeaseTasksResponse.tasks or\nCloudTasks.RenewLease. This restriction is to ensure that your\nworker currently holds the lease.", - "format": "google-datetime", - "type": "string" - } - }, - "id": "CancelLeaseRequest" - }, - "AttemptStatus": { - "id": "AttemptStatus", - "description": "The status of a task attempt.", - "type": "object", - "properties": { - "responseTime": { - "description": "Output only. The time that this attempt response was received.\n\n`response_time` will be truncated to the nearest microsecond.", - "format": "google-datetime", - "type": "string" - }, - "responseStatus": { - "$ref": "Status", - "description": "Output only. The response from the target for this attempt.\n\nIf the task has not been attempted or the task is currently running\nthen the response status is unset." - }, - "scheduleTime": { - "description": "Output only. The time that this attempt was scheduled.\n\n`schedule_time` will be truncated to the nearest microsecond.", - "format": "google-datetime", - "type": "string" - }, - "dispatchTime": { - "description": "Output only. The time that this attempt was dispatched.\n\n`dispatch_time` will be truncated to the nearest microsecond.", - "format": "google-datetime", - "type": "string" - } - } - }, - "RateLimits": { - "description": "Rate limits.\n\nThis message determines the maximum rate that tasks can be dispatched by a\nqueue, regardless of whether the dispatch is a first task attempt or a retry.", - "type": "object", - "properties": { - "maxTasksDispatchedPerSecond": { - "description": "The maximum rate at which tasks are dispatched from this queue.\n\nIf unspecified when the queue is created, Cloud Tasks will pick the\ndefault.\n\n* For App Engine queues, the maximum allowed value is 500.\n* This field is output only for [pull queues](google.cloud.tasks.v2beta2.PullTarget).\n In addition to the `max_tasks_dispatched_per_second` limit, a maximum of\n 10 QPS of CloudTasks.LeaseTasks requests are allowed per pull queue.\n\n\nThis field has the same meaning as\n[rate in queue.yaml/xml](/appengine/docs/standard/python/config/queueref#rate).", - "format": "double", - "type": "number" - }, - "maxBurstSize": { - "description": "Output only. The max burst size.\n\nMax burst size limits how fast tasks in queue are processed when\nmany tasks are in the queue and the rate is high. This field\nallows the queue to have a high rate so processing starts shortly\nafter a task is enqueued, but still limits resource usage when\nmany tasks are enqueued in a short period of time.\n\nThe [token bucket](https://wikipedia.org/wiki/Token_Bucket)\nalgorithm is used to control the rate of task dispatches. Each\nqueue has a token bucket that holds tokens, up to the maximum\nspecified by `max_burst_size`. Each time a task is dispatched, a\ntoken is removed from the bucket. Tasks will be dispatched until\nthe queue's bucket runs out of tokens. The bucket will be\ncontinuously refilled with new tokens based on\nRateLimits.max_tasks_dispatched_per_second.\n\nCloud Tasks will pick the value of `max_burst_size` based on the value of\nRateLimits.max_tasks_dispatched_per_second.\n\nFor App Engine queues that were created or updated using\n`queue.yaml/xml`, `max_burst_size` is equal to\n[bucket_size](/appengine/docs/standard/python/config/queueref#bucket_size).\nSince `max_burst_size` is output only, if CloudTasks.UpdateQueue is\ncalled on a queue created by `queue.yaml/xml`, `max_burst_size` will be\nreset based on the value of RateLimits.max_tasks_dispatched_per_second,\nregardless of whether RateLimits.max_tasks_dispatched_per_second is\nupdated.\n", - "format": "int32", - "type": "integer" - }, - "maxConcurrentTasks": { - "description": "The maximum number of concurrent tasks that Cloud Tasks allows\nto be dispatched for this queue. After this threshold has been\nreached, Cloud Tasks stops dispatching tasks until the number of\nconcurrent requests decreases.\n\nIf unspecified when the queue is created, Cloud Tasks will pick the\ndefault.\n\n\nThe maximum allowed value is 5,000. -1 indicates no limit.\n\nThis field is output only for\n[pull queues](google.cloud.tasks.v2beta2.PullTarget).\n\n\nThis field has the same meaning as\n[max_concurrent_requests in queue.yaml/xml](/appengine/docs/standard/python/config/queueref#max_concurrent_requests).", - "format": "int32", - "type": "integer" - } - }, - "id": "RateLimits" - }, - "PurgeQueueRequest": { - "description": "Request message for CloudTasks.PurgeQueue.", - "type": "object", - "properties": {}, - "id": "PurgeQueueRequest" - }, - "PauseQueueRequest": { - "description": "Request message for CloudTasks.PauseQueue.", - "type": "object", - "properties": {}, - "id": "PauseQueueRequest" - }, - "RunTaskRequest": { - "id": "RunTaskRequest", - "description": "Request message for forcing a task to run now using\nCloudTasks.RunTask.", - "type": "object", - "properties": { - "responseView": { - "type": "string", - "enumDescriptions": [ - "Unspecified. Defaults to BASIC.", - "The basic view omits fields which can be large or can contain\nsensitive data.\n\nThis view does not include (AppEngineHttpRequest.payload\nand PullMessage.payload). These payloads are desirable to\nreturn only when needed, because they can be large and because\nof the sensitivity of the data that you choose to store in it.", - "All information is returned.\n\nAuthorization for Task.View.FULL requires\n`cloudtasks.tasks.fullView` [Google IAM](https://cloud.google.com/iam/)\npermission on the Queue.name resource." - ], - "enum": [ - "VIEW_UNSPECIFIED", - "BASIC", - "FULL" - ], - "description": "The response_view specifies which subset of the Task will be\nreturned.\n\nBy default response_view is Task.View.BASIC; not all\ninformation is retrieved by default because some data, such as\npayloads, might be desirable to return only when needed because\nof its large size or because of the sensitivity of data that it\ncontains.\n\nAuthorization for Task.View.FULL requires `cloudtasks.tasks.fullView`\n[Google IAM](/iam/) permission on the\nTask.name resource." - } - } - }, - "Task": { - "description": "A unit of scheduled work.", - "type": "object", - "properties": { - "appEngineHttpRequest": { - "$ref": "AppEngineHttpRequest", - "description": "App Engine HTTP request that is sent to the task's target. Can be set\nonly if Queue.app_engine_http_target is set.\n\nAn App Engine task is a task that has AppEngineHttpRequest set." - }, - "view": { - "enumDescriptions": [ - "Unspecified. Defaults to BASIC.", - "The basic view omits fields which can be large or can contain\nsensitive data.\n\nThis view does not include (AppEngineHttpRequest.payload\nand PullMessage.payload). These payloads are desirable to\nreturn only when needed, because they can be large and because\nof the sensitivity of the data that you choose to store in it.", - "All information is returned.\n\nAuthorization for Task.View.FULL requires\n`cloudtasks.tasks.fullView` [Google IAM](https://cloud.google.com/iam/)\npermission on the Queue.name resource." - ], - "enum": [ - "VIEW_UNSPECIFIED", - "BASIC", - "FULL" - ], - "description": "Output only. The view specifies which subset of the Task has\nbeen returned.", - "type": "string" - }, - "pullMessage": { - "description": "Pull message contains data that should be used by the caller of\nCloudTasks.LeaseTasks to process the task. Can be set only if\nQueue.pull_target is set.\n\nA pull task is a task that has PullMessage set.", - "$ref": "PullMessage" - }, - "scheduleTime": { - "description": "The time when the task is scheduled to be attempted.\n\nFor App Engine queues, this is when the task will be attempted or retried.\n\nFor pull queues, this is the time when the task is available to\nbe leased; if a task is currently leased, this is the time when\nthe current lease expires, that is, the time that the task was\nleased plus the LeaseTasksRequest.lease_duration.\n\n`schedule_time` will be truncated to the nearest microsecond.", - "format": "google-datetime", - "type": "string" - }, - "createTime": { - "description": "Output only. The time that the task was created.\n\n`create_time` will be truncated to the nearest second.", - "format": "google-datetime", - "type": "string" - }, - "status": { - "description": "Output only. The task status.", - "$ref": "TaskStatus" - }, - "name": { - "description": "The task name.\n\nThe task name must have the following format:\n`projects/PROJECT_ID/locations/LOCATION_ID/queues/QUEUE_ID/tasks/TASK_ID`\n\n* `PROJECT_ID` can contain letters ([A-Za-z]), numbers ([0-9]),\n hyphens (-), colons (:), or periods (.).\n For more information, see\n [Identifying projects](/resource-manager/docs/creating-managing-projects#identifying_projects)\n* `LOCATION_ID` is the canonical ID for the task's location.\n The list of available locations can be obtained by calling\n google.cloud.location.Locations.ListLocations.\n For more information, see https://cloud.google.com/about/locations/.\n* `QUEUE_ID` can contain letters ([A-Za-z]), numbers ([0-9]), or\n hyphens (-). The maximum length is 100 characters.\n* `TASK_ID` can contain only letters ([A-Za-z]), numbers ([0-9]),\n hyphens (-), or underscores (_). The maximum length is 500 characters.\n\nOptionally caller-specified in CreateTaskRequest.", - "type": "string" - } - }, - "id": "Task" - }, - "PullMessage": { - "description": "The pull message contains data that can be used by the caller of\nCloudTasks.LeaseTasks to process the task.\n\nThis proto can only be used for tasks in a queue which has\nQueue.pull_target set.", - "type": "object", - "properties": { - "payload": { - "description": "A data payload consumed by the worker to execute the task.", - "format": "byte", - "type": "string" - }, - "tag": { - "type": "string", - "description": "The task's tag.\n\nTags allow similar tasks to be processed in a batch. If you label\ntasks with a tag, your worker can lease tasks\nwith the same tag using LeaseTasksRequest.filter. For example,\nif you want to aggregate the events associated with a specific\nuser once a day, you could tag tasks with the user ID.\n\nThe task's tag can only be set when the\ntask is created.\n\nThe tag must be less than 500 characters.\n\nSDK compatibility: Although the SDK allows tags to be either\nstring or [bytes](/appengine/docs/standard/java/javadoc/com/google/appengine/api/taskqueue/TaskOptions.html#tag-byte:A-),\nonly UTF-8 encoded tags can be used in Cloud Tasks. If a tag isn't UTF-8\nencoded, the tag will be empty when the task is returned by Cloud Tasks." - } - }, - "id": "PullMessage" - }, - "Status": { - "properties": { - "code": { - "description": "The status code, which should be an enum value of google.rpc.Code.", - "format": "int32", - "type": "integer" - }, - "message": { - "description": "A developer-facing error message, which should be in English. Any\nuser-facing error message should be localized and sent in the\ngoogle.rpc.Status.details field, or localized by the client.", - "type": "string" - }, - "details": { - "description": "A list of messages that carry the error details. There is a common set of\nmessage types for APIs to use.", - "type": "array", - "items": { - "type": "object", - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" + "methods": { + "get": { + "description": "Get information about a location.", + "flatPath": "v2beta2/projects/{projectsId}/locations/{locationsId}", + "httpMethod": "GET", + "id": "cloudtasks.projects.locations.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Resource name for the location.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2beta2/{+name}", + "response": { + "$ref": "Location" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists information about the supported locations for this service.", + "flatPath": "v2beta2/projects/{projectsId}/locations", + "httpMethod": "GET", + "id": "cloudtasks.projects.locations.list", + "parameterOrder": [ + "name" + ], + "parameters": { + "filter": { + "description": "The standard list filter.", + "location": "query", + "type": "string" + }, + "name": { + "description": "The resource that owns the locations collection, if applicable.", + "location": "path", + "pattern": "^projects/[^/]+$", + "required": true, + "type": "string" + }, + "pageSize": { + "description": "The standard list page size.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "The standard list page token.", + "location": "query", + "type": "string" + } + }, + "path": "v2beta2/{+name}/locations", + "response": { + "$ref": "ListLocationsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + }, + "resources": { + "queues": { + "methods": { + "create": { + "description": "Creates a queue.\n\nQueues created with this method allow tasks to live for a maximum of 31\ndays. After a task is 31 days old, the task will be deleted regardless of whether\nit was dispatched or not.\n\nWARNING: Using this method may have unintended side effects if you are\nusing an App Engine `queue.yaml` or `queue.xml` file to manage your queues.\nRead\n[Overview of Queue Management and queue.yaml](/cloud-tasks/docs/queue-yaml)\nbefore using this method.", + "flatPath": "v2beta2/projects/{projectsId}/locations/{locationsId}/queues", + "httpMethod": "POST", + "id": "cloudtasks.projects.locations.queues.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required.\n\nThe location name in which the queue will be created.\nFor example: `projects/PROJECT_ID/locations/LOCATION_ID`\n\nThe list of allowed locations can be obtained by calling Cloud\nTasks' implementation of\nListLocations.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2beta2/{+parent}/queues", + "request": { + "$ref": "Queue" + }, + "response": { + "$ref": "Queue" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Deletes a queue.\n\nThis command will delete the queue even if it has tasks in it.\n\nNote: If you delete a queue, a queue with the same name can't be created\nfor 7 days.\n\nWARNING: Using this method may have unintended side effects if you are\nusing an App Engine `queue.yaml` or `queue.xml` file to manage your queues.\nRead\n[Overview of Queue Management and queue.yaml](/cloud-tasks/docs/queue-yaml)\nbefore using this method.", + "flatPath": "v2beta2/projects/{projectsId}/locations/{locationsId}/queues/{queuesId}", + "httpMethod": "DELETE", + "id": "cloudtasks.projects.locations.queues.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required.\n\nThe queue name. For example:\n`projects/PROJECT_ID/locations/LOCATION_ID/queues/QUEUE_ID`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/queues/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2beta2/{+name}", + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Gets a queue.", + "flatPath": "v2beta2/projects/{projectsId}/locations/{locationsId}/queues/{queuesId}", + "httpMethod": "GET", + "id": "cloudtasks.projects.locations.queues.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required.\n\nThe resource name of the queue. For example:\n`projects/PROJECT_ID/locations/LOCATION_ID/queues/QUEUE_ID`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/queues/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2beta2/{+name}", + "response": { + "$ref": "Queue" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "getIamPolicy": { + "description": "Gets the access control policy for a Queue.\nReturns an empty policy if the resource exists and does not have a policy\nset.\n\nAuthorization requires the following [Google IAM](/iam) permission on the\nspecified resource parent:\n\n* `cloudtasks.queues.getIamPolicy`", + "flatPath": "v2beta2/projects/{projectsId}/locations/{locationsId}/queues/{queuesId}:getIamPolicy", + "httpMethod": "POST", + "id": "cloudtasks.projects.locations.queues.getIamPolicy", + "parameterOrder": [ + "resource" + ], + "parameters": { + "resource": { + "description": "REQUIRED: The resource for which the policy is being requested.\nSee the operation documentation for the appropriate value for this field.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/queues/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2beta2/{+resource}:getIamPolicy", + "request": { + "$ref": "GetIamPolicyRequest" + }, + "response": { + "$ref": "Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists queues.\n\nQueues are returned in lexicographical order.", + "flatPath": "v2beta2/projects/{projectsId}/locations/{locationsId}/queues", + "httpMethod": "GET", + "id": "cloudtasks.projects.locations.queues.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "filter": { + "description": "`filter` can be used to specify a subset of queues. Any Queue\nfield can be used as a filter and several operators as supported.\nFor example: `\u003c=, \u003c, \u003e=, \u003e, !=, =, :`. The filter syntax is the same as\ndescribed in\n[Stackdriver's Advanced Logs Filters](/logging/docs/view/advanced_filters).\n\nSample filter \"app_engine_http_target: *\".\n\nNote that using filters might cause fewer queues than the\nrequested_page size to be returned.", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "Requested page size.\n\nThe maximum page size is 9800. If unspecified, the page size will\nbe the maximum. Fewer queues than requested might be returned,\neven if more queues exist; use the\nnext_page_token in the\nresponse to determine if more queues exist.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "A token identifying the page of results to return.\n\nTo request the first page results, page_token must be empty. To\nrequest the next page of results, page_token must be the value of\nnext_page_token returned\nfrom the previous call to ListQueues\nmethod. It is an error to switch the value of the\nfilter while iterating through pages.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required.\n\nThe location name.\nFor example: `projects/PROJECT_ID/locations/LOCATION_ID`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2beta2/{+parent}/queues", + "response": { + "$ref": "ListQueuesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "patch": { + "description": "Updates a queue.\n\nThis method creates the queue if it does not exist and updates\nthe queue if it does exist.\n\nQueues created with this method allow tasks to live for a maximum of 31\ndays. After a task is 31 days old, the task will be deleted regardless of whether\nit was dispatched or not.\n\nWARNING: Using this method may have unintended side effects if you are\nusing an App Engine `queue.yaml` or `queue.xml` file to manage your queues.\nRead\n[Overview of Queue Management and queue.yaml](/cloud-tasks/docs/queue-yaml)\nbefore using this method.", + "flatPath": "v2beta2/projects/{projectsId}/locations/{locationsId}/queues/{queuesId}", + "httpMethod": "PATCH", + "id": "cloudtasks.projects.locations.queues.patch", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The queue name.\n\nThe queue name must have the following format:\n`projects/PROJECT_ID/locations/LOCATION_ID/queues/QUEUE_ID`\n\n* `PROJECT_ID` can contain letters ([A-Za-z]), numbers ([0-9]),\n hyphens (-), colons (:), or periods (.).\n For more information, see\n [Identifying projects](/resource-manager/docs/creating-managing-projects#identifying_projects)\n* `LOCATION_ID` is the canonical ID for the queue's location.\n The list of available locations can be obtained by calling\n ListLocations.\n For more information, see https://cloud.google.com/about/locations/.\n* `QUEUE_ID` can contain letters ([A-Za-z]), numbers ([0-9]), or\n hyphens (-). The maximum length is 100 characters.\n\nCaller-specified and required in CreateQueue,\nafter which it becomes output only.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/queues/[^/]+$", + "required": true, + "type": "string" + }, + "updateMask": { + "description": "A mask used to specify which fields of the queue are being updated.\n\nIf empty, then all fields will be updated.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + } + }, + "path": "v2beta2/{+name}", + "request": { + "$ref": "Queue" + }, + "response": { + "$ref": "Queue" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "pause": { + "description": "Pauses the queue.\n\nIf a queue is paused then the system will stop dispatching tasks\nuntil the queue is resumed via\nResumeQueue. Tasks can still be added\nwhen the queue is paused. A queue is paused if its\nstate is PAUSED.", + "flatPath": "v2beta2/projects/{projectsId}/locations/{locationsId}/queues/{queuesId}:pause", + "httpMethod": "POST", + "id": "cloudtasks.projects.locations.queues.pause", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required.\n\nThe queue name. For example:\n`projects/PROJECT_ID/location/LOCATION_ID/queues/QUEUE_ID`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/queues/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2beta2/{+name}:pause", + "request": { + "$ref": "PauseQueueRequest" + }, + "response": { + "$ref": "Queue" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "purge": { + "description": "Purges a queue by deleting all of its tasks.\n\nAll tasks created before this method is called are permanently deleted.\n\nPurge operations can take up to one minute to take effect. Tasks\nmight be dispatched before the purge takes effect. A purge is irreversible.", + "flatPath": "v2beta2/projects/{projectsId}/locations/{locationsId}/queues/{queuesId}:purge", + "httpMethod": "POST", + "id": "cloudtasks.projects.locations.queues.purge", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required.\n\nThe queue name. For example:\n`projects/PROJECT_ID/location/LOCATION_ID/queues/QUEUE_ID`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/queues/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2beta2/{+name}:purge", + "request": { + "$ref": "PurgeQueueRequest" + }, + "response": { + "$ref": "Queue" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "resume": { + "description": "Resume a queue.\n\nThis method resumes a queue after it has been\nPAUSED or\nDISABLED. The state of a queue is stored\nin the queue's state; after calling this method it\nwill be set to RUNNING.\n\nWARNING: Resuming many high-QPS queues at the same time can\nlead to target overloading. If you are resuming high-QPS\nqueues, follow the 500/50/5 pattern described in\n[Managing Cloud Tasks Scaling Risks](/cloud-tasks/pdfs/managing-cloud-tasks-scaling-risks-2017-06-05.pdf).", + "flatPath": "v2beta2/projects/{projectsId}/locations/{locationsId}/queues/{queuesId}:resume", + "httpMethod": "POST", + "id": "cloudtasks.projects.locations.queues.resume", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required.\n\nThe queue name. For example:\n`projects/PROJECT_ID/location/LOCATION_ID/queues/QUEUE_ID`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/queues/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2beta2/{+name}:resume", + "request": { + "$ref": "ResumeQueueRequest" + }, + "response": { + "$ref": "Queue" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "setIamPolicy": { + "description": "Sets the access control policy for a Queue. Replaces any existing\npolicy.\n\nNote: The Cloud Console does not check queue-level IAM permissions yet.\nProject-level permissions are required to use the Cloud Console.\n\nAuthorization requires the following [Google IAM](/iam) permission on the\nspecified resource parent:\n\n* `cloudtasks.queues.setIamPolicy`", + "flatPath": "v2beta2/projects/{projectsId}/locations/{locationsId}/queues/{queuesId}:setIamPolicy", + "httpMethod": "POST", + "id": "cloudtasks.projects.locations.queues.setIamPolicy", + "parameterOrder": [ + "resource" + ], + "parameters": { + "resource": { + "description": "REQUIRED: The resource for which the policy is being specified.\nSee the operation documentation for the appropriate value for this field.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/queues/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2beta2/{+resource}:setIamPolicy", + "request": { + "$ref": "SetIamPolicyRequest" + }, + "response": { + "$ref": "Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "testIamPermissions": { + "description": "Returns permissions that a caller has on a Queue.\nIf the resource does not exist, this will return an empty set of\npermissions, not a NOT_FOUND error.\n\nNote: This operation is designed to be used for building permission-aware\nUIs and command-line tools, not for authorization checking. This operation\nmay \"fail open\" without warning.", + "flatPath": "v2beta2/projects/{projectsId}/locations/{locationsId}/queues/{queuesId}:testIamPermissions", + "httpMethod": "POST", + "id": "cloudtasks.projects.locations.queues.testIamPermissions", + "parameterOrder": [ + "resource" + ], + "parameters": { + "resource": { + "description": "REQUIRED: The resource for which the policy detail is being requested.\nSee the operation documentation for the appropriate value for this field.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/queues/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2beta2/{+resource}:testIamPermissions", + "request": { + "$ref": "TestIamPermissionsRequest" + }, + "response": { + "$ref": "TestIamPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + }, + "resources": { + "tasks": { + "methods": { + "acknowledge": { + "description": "Acknowledges a pull task.\n\nThe worker, that is, the entity that\nleased this task must call this method\nto indicate that the work associated with the task has finished.\n\nThe worker must acknowledge a task within the\nlease_duration or the lease\nwill expire and the task will become available to be leased\nagain. After the task is acknowledged, it will not be returned\nby a later LeaseTasks,\nGetTask, or\nListTasks.\n\nTo acknowledge multiple tasks at the same time, use\n[HTTP batching](/storage/docs/json_api/v1/how-tos/batch)\nor the batching documentation for your client library, for example\nhttps://developers.google.com/api-client-library/python/guide/batch.", + "flatPath": "v2beta2/projects/{projectsId}/locations/{locationsId}/queues/{queuesId}/tasks/{tasksId}:acknowledge", + "httpMethod": "POST", + "id": "cloudtasks.projects.locations.queues.tasks.acknowledge", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required.\n\nThe task name. For example:\n`projects/PROJECT_ID/locations/LOCATION_ID/queues/QUEUE_ID/tasks/TASK_ID`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/queues/[^/]+/tasks/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2beta2/{+name}:acknowledge", + "request": { + "$ref": "AcknowledgeTaskRequest" + }, + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "cancelLease": { + "description": "Cancel a pull task's lease.\n\nThe worker can use this method to cancel a task's lease by\nsetting its schedule_time to now. This will\nmake the task available to be leased to the next caller of\nLeaseTasks.", + "flatPath": "v2beta2/projects/{projectsId}/locations/{locationsId}/queues/{queuesId}/tasks/{tasksId}:cancelLease", + "httpMethod": "POST", + "id": "cloudtasks.projects.locations.queues.tasks.cancelLease", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required.\n\nThe task name. For example:\n`projects/PROJECT_ID/locations/LOCATION_ID/queues/QUEUE_ID/tasks/TASK_ID`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/queues/[^/]+/tasks/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2beta2/{+name}:cancelLease", + "request": { + "$ref": "CancelLeaseRequest" + }, + "response": { + "$ref": "Task" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "create": { + "description": "Creates a task and adds it to a queue.\n\nTo add multiple tasks at the same time, use\n[HTTP batching](/storage/docs/json_api/v1/how-tos/batch)\nor the batching documentation for your client library, for example\nhttps://developers.google.com/api-client-library/python/guide/batch.\n\nTasks cannot be updated after creation; there is no UpdateTask command.\n\n* For [App Engine queues](google.cloud.tasks.v2beta2.AppEngineHttpTarget),\n the maximum task size is 100KB.\n* For [pull queues](google.cloud.tasks.v2beta2.PullTarget), this\n the maximum task size is 1MB.", + "flatPath": "v2beta2/projects/{projectsId}/locations/{locationsId}/queues/{queuesId}/tasks", + "httpMethod": "POST", + "id": "cloudtasks.projects.locations.queues.tasks.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required.\n\nThe queue name. For example:\n`projects/PROJECT_ID/locations/LOCATION_ID/queues/QUEUE_ID`\n\nThe queue must already exist.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/queues/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2beta2/{+parent}/tasks", + "request": { + "$ref": "CreateTaskRequest" + }, + "response": { + "$ref": "Task" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Deletes a task.\n\nA task can be deleted if it is scheduled or dispatched. A task\ncannot be deleted if it has completed successfully or permanently\nfailed.", + "flatPath": "v2beta2/projects/{projectsId}/locations/{locationsId}/queues/{queuesId}/tasks/{tasksId}", + "httpMethod": "DELETE", + "id": "cloudtasks.projects.locations.queues.tasks.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required.\n\nThe task name. For example:\n`projects/PROJECT_ID/locations/LOCATION_ID/queues/QUEUE_ID/tasks/TASK_ID`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/queues/[^/]+/tasks/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2beta2/{+name}", + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Gets a task.", + "flatPath": "v2beta2/projects/{projectsId}/locations/{locationsId}/queues/{queuesId}/tasks/{tasksId}", + "httpMethod": "GET", + "id": "cloudtasks.projects.locations.queues.tasks.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required.\n\nThe task name. For example:\n`projects/PROJECT_ID/locations/LOCATION_ID/queues/QUEUE_ID/tasks/TASK_ID`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/queues/[^/]+/tasks/[^/]+$", + "required": true, + "type": "string" + }, + "responseView": { + "description": "The response_view specifies which subset of the Task will be\nreturned.\n\nBy default response_view is BASIC; not all\ninformation is retrieved by default because some data, such as\npayloads, might be desirable to return only when needed because\nof its large size or because of the sensitivity of data that it\ncontains.\n\nAuthorization for FULL requires\n`cloudtasks.tasks.fullView` [Google IAM](/iam/) permission on the\nTask resource.", + "enum": [ + "VIEW_UNSPECIFIED", + "BASIC", + "FULL" + ], + "location": "query", + "type": "string" + } + }, + "path": "v2beta2/{+name}", + "response": { + "$ref": "Task" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "lease": { + "description": "Leases tasks from a pull queue for\nlease_duration.\n\nThis method is invoked by the worker to obtain a lease. The\nworker must acknowledge the task via\nAcknowledgeTask after they have\nperformed the work associated with the task.\n\nThe payload is intended to store data that\nthe worker needs to perform the work associated with the task. To\nreturn the payloads in the response, set\nresponse_view to\nFULL.\n\nA maximum of 10 qps of LeaseTasks\nrequests are allowed per\nqueue. RESOURCE_EXHAUSTED\nis returned when this limit is\nexceeded. RESOURCE_EXHAUSTED\nis also returned when\nmax_tasks_dispatched_per_second\nis exceeded.", + "flatPath": "v2beta2/projects/{projectsId}/locations/{locationsId}/queues/{queuesId}/tasks:lease", + "httpMethod": "POST", + "id": "cloudtasks.projects.locations.queues.tasks.lease", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required.\n\nThe queue name. For example:\n`projects/PROJECT_ID/locations/LOCATION_ID/queues/QUEUE_ID`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/queues/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2beta2/{+parent}/tasks:lease", + "request": { + "$ref": "LeaseTasksRequest" + }, + "response": { + "$ref": "LeaseTasksResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists the tasks in a queue.\n\nBy default, only the BASIC view is retrieved\ndue to performance considerations;\nresponse_view controls the\nsubset of information which is returned.", + "flatPath": "v2beta2/projects/{projectsId}/locations/{locationsId}/queues/{queuesId}/tasks", + "httpMethod": "GET", + "id": "cloudtasks.projects.locations.queues.tasks.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "orderBy": { + "description": "Sort order used for the query. The only fields supported for sorting\nare `schedule_time` and `pull_message.tag`. All results will be\nreturned in approximately ascending order. The default ordering is by\n`schedule_time`.", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "Requested page size. Fewer tasks than requested might be returned.\n\nThe maximum page size is 1000. If unspecified, the page size will\nbe the maximum. Fewer tasks than requested might be returned,\neven if more tasks exist; use\nnext_page_token in the\nresponse to determine if more tasks exist.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "A token identifying the page of results to return.\n\nTo request the first page results, page_token must be empty. To\nrequest the next page of results, page_token must be the value of\nnext_page_token returned\nfrom the previous call to ListTasks\nmethod.\n\nThe page token is valid for only 2 hours.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required.\n\nThe queue name. For example:\n`projects/PROJECT_ID/locations/LOCATION_ID/queues/QUEUE_ID`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/queues/[^/]+$", + "required": true, + "type": "string" + }, + "responseView": { + "description": "The response_view specifies which subset of the Task will be\nreturned.\n\nBy default response_view is BASIC; not all\ninformation is retrieved by default because some data, such as\npayloads, might be desirable to return only when needed because\nof its large size or because of the sensitivity of data that it\ncontains.\n\nAuthorization for FULL requires\n`cloudtasks.tasks.fullView` [Google IAM](/iam/) permission on the\nTask resource.", + "enum": [ + "VIEW_UNSPECIFIED", + "BASIC", + "FULL" + ], + "location": "query", + "type": "string" + } + }, + "path": "v2beta2/{+parent}/tasks", + "response": { + "$ref": "ListTasksResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "renewLease": { + "description": "Renew the current lease of a pull task.\n\nThe worker can use this method to extend the lease by a new\nduration, starting from now. The new task lease will be\nreturned in the task's schedule_time.", + "flatPath": "v2beta2/projects/{projectsId}/locations/{locationsId}/queues/{queuesId}/tasks/{tasksId}:renewLease", + "httpMethod": "POST", + "id": "cloudtasks.projects.locations.queues.tasks.renewLease", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required.\n\nThe task name. For example:\n`projects/PROJECT_ID/locations/LOCATION_ID/queues/QUEUE_ID/tasks/TASK_ID`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/queues/[^/]+/tasks/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2beta2/{+name}:renewLease", + "request": { + "$ref": "RenewLeaseRequest" + }, + "response": { + "$ref": "Task" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "run": { + "description": "Forces a task to run now.\n\nThis command is meant to be used for manual debugging. For\nexample, RunTask can be used to retry a failed\ntask after a fix has been made or to manually force a task to be\ndispatched now.\n\nWhen this method is called, Cloud Tasks will dispatch the task to its\ntarget, even if the queue is PAUSED.\n\nThe dispatched task is returned. That is, the task that is returned\ncontains the status after the task is dispatched but\nbefore the task is received by its target.\n\nIf Cloud Tasks receives a successful response from the task's\nhandler, then the task will be deleted; otherwise the task's\nschedule_time will be reset to the time that\nRunTask was called plus the retry delay specified\nin the queue and task's RetryConfig.\n\nRunTask returns\nNOT_FOUND when it is called on a\ntask that has already succeeded or permanently\nfailed. FAILED_PRECONDITION\nis returned when RunTask is called on task\nthat is dispatched or already running.\n\nRunTask cannot be called on\npull tasks.", + "flatPath": "v2beta2/projects/{projectsId}/locations/{locationsId}/queues/{queuesId}/tasks/{tasksId}:run", + "httpMethod": "POST", + "id": "cloudtasks.projects.locations.queues.tasks.run", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required.\n\nThe task name. For example:\n`projects/PROJECT_ID/locations/LOCATION_ID/queues/QUEUE_ID/tasks/TASK_ID`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/queues/[^/]+/tasks/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2beta2/{+name}:run", + "request": { + "$ref": "RunTaskRequest" + }, + "response": { + "$ref": "Task" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + } + } } } } - }, - "id": "Status", - "description": "The `Status` type defines a logical error model that is suitable for different\nprogramming environments, including REST APIs and RPC APIs. It is used by\n[gRPC](https://github.com/grpc). The error model is designed to be:\n\n- Simple to use and understand for most users\n- Flexible enough to meet unexpected needs\n\n# Overview\n\nThe `Status` message contains three pieces of data: error code, error message,\nand error details. The error code should be an enum value of\ngoogle.rpc.Code, but it may accept additional error codes if needed. The\nerror message should be a developer-facing English message that helps\ndevelopers *understand* and *resolve* the error. If a localized user-facing\nerror message is needed, put the localized message in the error details or\nlocalize it in the client. The optional error details may contain arbitrary\ninformation about the error. There is a predefined set of error detail types\nin the package `google.rpc` that can be used for common error conditions.\n\n# Language mapping\n\nThe `Status` message is the logical representation of the error model, but it\nis not necessarily the actual wire format. When the `Status` message is\nexposed in different client libraries and different wire protocols, it can be\nmapped differently. For example, it will likely be mapped to some exceptions\nin Java, but more likely mapped to some error codes in C.\n\n# Other uses\n\nThe error model and the `Status` message can be used in a variety of\nenvironments, either with or without APIs, to provide a\nconsistent developer experience across different environments.\n\nExample uses of this error model include:\n\n- Partial errors. If a service needs to return partial errors to the client,\n it may embed the `Status` in the normal response to indicate the partial\n errors.\n\n- Workflow errors. A typical workflow has multiple steps. Each step may\n have a `Status` message for error reporting.\n\n- Batch operations. If a client uses batch request and batch response, the\n `Status` message should be used directly inside batch response, one for\n each error sub-response.\n\n- Asynchronous operations. If an API call embeds asynchronous operation\n results in its response, the status of those operations should be\n represented directly using the `Status` message.\n\n- Logging. If some API errors are stored in logs, the message `Status` could\n be used directly after any stripping needed for security/privacy reasons.", - "type": "object" - }, - "Binding": { - "properties": { - "members": { - "type": "array", - "items": { - "type": "string" - }, - "description": "Specifies the identities requesting access for a Cloud Platform resource.\n`members` can have the following values:\n\n* `allUsers`: A special identifier that represents anyone who is\n on the internet; with or without a Google account.\n\n* `allAuthenticatedUsers`: A special identifier that represents anyone\n who is authenticated with a Google account or a service account.\n\n* `user:{emailid}`: An email address that represents a specific Google\n account. For example, `alice@gmail.com` or `joe@example.com`.\n\n\n* `serviceAccount:{emailid}`: An email address that represents a service\n account. For example, `my-other-app@appspot.gserviceaccount.com`.\n\n* `group:{emailid}`: An email address that represents a Google group.\n For example, `admins@example.com`.\n\n\n* `domain:{domain}`: A Google Apps domain name that represents all the\n users of that domain. For example, `google.com` or `example.com`.\n\n" - }, - "role": { - "description": "Role that is assigned to `members`.\nFor example, `roles/viewer`, `roles/editor`, or `roles/owner`.\nRequired", - "type": "string" - } - }, - "id": "Binding", - "description": "Associates `members` with a `role`.", - "type": "object" - }, - "RenewLeaseRequest": { - "type": "object", + } + } + }, + "revision": "20180302", + "rootUrl": "https://cloudtasks.googleapis.com/", + "schemas": { + "AcknowledgeTaskRequest": { + "description": "Request message for acknowledging a task using\nAcknowledgeTask.", + "id": "AcknowledgeTaskRequest", "properties": { "scheduleTime": { - "description": "Required.\n\nThe task's current schedule time, available in the Task.schedule_time\nreturned in LeaseTasksResponse.tasks or\nCloudTasks.RenewLease. This restriction is to ensure that your\nworker currently holds the lease.", + "description": "Required.\n\nThe task's current schedule time, available in the\nschedule_time returned by\nLeaseTasks response or\nRenewLease response. This restriction is\nto ensure that your worker currently holds the lease.", "format": "google-datetime", "type": "string" - }, - "leaseDuration": { - "description": "Required.\n\nThe desired new lease duration, starting from now.\n\n\nThe maximum lease duration is 1 week.\n`lease_duration` will be truncated to the nearest second.", - "format": "google-duration", - "type": "string" - }, - "responseView": { - "enumDescriptions": [ - "Unspecified. Defaults to BASIC.", - "The basic view omits fields which can be large or can contain\nsensitive data.\n\nThis view does not include (AppEngineHttpRequest.payload\nand PullMessage.payload). These payloads are desirable to\nreturn only when needed, because they can be large and because\nof the sensitivity of the data that you choose to store in it.", - "All information is returned.\n\nAuthorization for Task.View.FULL requires\n`cloudtasks.tasks.fullView` [Google IAM](https://cloud.google.com/iam/)\npermission on the Queue.name resource." - ], - "enum": [ - "VIEW_UNSPECIFIED", - "BASIC", - "FULL" - ], - "description": "The response_view specifies which subset of the Task will be\nreturned.\n\nBy default response_view is Task.View.BASIC; not all\ninformation is retrieved by default because some data, such as\npayloads, might be desirable to return only when needed because\nof its large size or because of the sensitivity of data that it\ncontains.\n\nAuthorization for Task.View.FULL requires `cloudtasks.tasks.fullView`\n[Google IAM](/iam/) permission on the\nTask.name resource.", - "type": "string" } }, - "id": "RenewLeaseRequest", - "description": "Request message for renewing a lease using CloudTasks.RenewLease." - }, - "TaskStatus": { - "description": "Status of the task.", - "type": "object", - "properties": { - "attemptResponseCount": { - "type": "integer", - "description": "Output only. The number of attempts which have received a response.\n\nThis field is not calculated for\n[pull tasks](google.cloud.tasks.v2beta2.PullTaskTarget).", - "format": "int32" - }, - "lastAttemptStatus": { - "$ref": "AttemptStatus", - "description": "Output only. The status of the task's last attempt.\n\nThis field is not calculated for\n[pull tasks](google.cloud.tasks.v2beta2.PullTaskTarget)." - }, - "attemptDispatchCount": { - "description": "Output only. The number of attempts dispatched.\n\nThis count includes tasks which have been dispatched but haven't\nreceived a response.", - "format": "int32", - "type": "integer" - }, - "firstAttemptStatus": { - "description": "Output only. The status of the task's first attempt.\n\nOnly AttemptStatus.dispatch_time will be set.\nThe other AttemptStatus information is not retained by Cloud Tasks.\n\nThis field is not calculated for\n[pull tasks](google.cloud.tasks.v2beta2.PullTaskTarget).", - "$ref": "AttemptStatus" - } - }, - "id": "TaskStatus" + "type": "object" }, "AppEngineHttpRequest": { - "description": "App Engine HTTP request.\n\nThe message defines the HTTP request that is sent to an App Engine app when\nthe task is dispatched.\n\nThis proto can only be used for tasks in a queue which has\nQueue.app_engine_http_target set.\n\nUsing AppEngineHttpRequest requires\n[`appengine.applications.get`](/appengine/docs/admin-api/access-control)\nGoogle IAM permission for the project\nand the following scope:\n\n`https://www.googleapis.com/auth/cloud-platform`\n\nThe task will be delivered to the App Engine app which belongs to the same\nproject as the queue. For more information, see\n[How Requests are Routed](/appengine/docs/standard/python/how-requests-are-routed)\nand how routing is affected by\n[dispatch files](/appengine/docs/python/config/dispatchref).\n\nThe AppEngineRouting used to construct the URL that the task is\ndelivered to can be set at the queue-level or task-level:\n\n* If set, AppEngineHttpTarget.app_engine_routing_override is used for\n all tasks in the queue, no matter what the setting is for the\n task-level app_engine_routing.\n\n\nThe `url` that the task will be sent to is:\n\n* `url =` AppEngineRouting.host `+` AppEngineHttpRequest.relative_url\n\nThe task attempt has succeeded if the app's request handler returns\nan HTTP response code in the range [`200` - `299`]. `503` is\nconsidered an App Engine system error instead of an application\nerror. Requests returning error `503` will be retried regardless of\nretry configuration and not counted against retry counts.\nAny other response code or a failure to receive a response before the\ndeadline is a failed attempt.", - "type": "object", + "description": "App Engine HTTP request.\n\nThe message defines the HTTP request that is sent to an App Engine app when\nthe task is dispatched.\n\nThis proto can only be used for tasks in a queue which has\napp_engine_http_target set.\n\nUsing AppEngineHttpRequest requires\n[`appengine.applications.get`](/appengine/docs/admin-api/access-control)\nGoogle IAM permission for the project\nand the following scope:\n\n`https://www.googleapis.com/auth/cloud-platform`\n\nThe task will be delivered to the App Engine app which belongs to the same\nproject as the queue. For more information, see\n[How Requests are Routed](/appengine/docs/standard/python/how-requests-are-routed)\nand how routing is affected by\n[dispatch files](/appengine/docs/python/config/dispatchref).\n\nThe AppEngineRouting used to construct the URL that the task is\ndelivered to can be set at the queue-level or task-level:\n\n* If set,\n app_engine_routing_override\n is used for all tasks in the queue, no matter what the setting\n is for the\n task-level app_engine_routing.\n\n\nThe `url` that the task will be sent to is:\n\n* `url =` host `+`\n relative_url\n\nThe task attempt has succeeded if the app's request handler returns\nan HTTP response code in the range [`200` - `299`]. `503` is\nconsidered an App Engine system error instead of an application\nerror. Requests returning error `503` will be retried regardless of\nretry configuration and not counted against retry counts.\nAny other response code or a failure to receive a response before the\ndeadline is a failed attempt.", + "id": "AppEngineHttpRequest", "properties": { + "appEngineRouting": { + "$ref": "AppEngineRouting", + "description": "Task-level setting for App Engine routing.\n\nIf set,\napp_engine_routing_override\nis used for all tasks in the queue, no matter what the setting is for the\ntask-level app_engine_routing." + }, "headers": { "additionalProperties": { "type": "string" }, - "description": "HTTP request headers.\n\nThis map contains the header field names and values.\nHeaders can be set when the\n[task is created](google.cloud.tasks.v2beta2.CloudTasks.CreateTask).\nRepeated headers are not supported but a header value can contain commas.\n\nCloud Tasks sets some headers to default values:\n\n* `User-Agent`: By default, this header is\n `\"AppEngine-Google; (+http://code.google.com/appengine)\"`.\n This header can be modified, but Cloud Tasks will append\n `\"AppEngine-Google; (+http://code.google.com/appengine)\"` to the\n modified `User-Agent`.\n\nIf the task has an AppEngineHttpRequest.payload, Cloud Tasks sets the\nfollowing headers:\n\n* `Content-Type`: By default, the `Content-Type` header is set to\n `\"application/octet-stream\"`. The default can be overridden by explictly\n setting `Content-Type` to a particular media type when the\n [task is created](google.cloud.tasks.v2beta2.CloudTasks.CreateTask).\n For example, `Content-Type` can be set to `\"application/json\"`.\n* `Content-Length`: This is computed by Cloud Tasks. This value is\n output only. It cannot be changed.\n\nThe headers below cannot be set or overridden:\n\n* `Host`\n* `X-Google-*`\n* `X-AppEngine-*`\n\nIn addition, Cloud Tasks sets some headers when the task is dispatched,\nsuch as headers containing information about the task; see\n[request headers](/appengine/docs/python/taskqueue/push/creating-handlers#reading_request_headers).\nThese headers are set only when the task is dispatched, so they are not\nvisible when the task is returned in a Cloud Tasks response.\n\nAlthough there is no specific limit for the maximum number of headers or\nthe size, there is a limit on the maximum size of the Task. For more\ninformation, see the CloudTasks.CreateTask documentation.", + "description": "HTTP request headers.\n\nThis map contains the header field names and values.\nHeaders can be set when the\n[task is created](google.cloud.tasks.v2beta2.CloudTasks.CreateTask).\nRepeated headers are not supported but a header value can contain commas.\n\nCloud Tasks sets some headers to default values:\n\n* `User-Agent`: By default, this header is\n `\"AppEngine-Google; (+http://code.google.com/appengine)\"`.\n This header can be modified, but Cloud Tasks will append\n `\"AppEngine-Google; (+http://code.google.com/appengine)\"` to the\n modified `User-Agent`.\n\nIf the task has a payload, Cloud\nTasks sets the following headers:\n\n* `Content-Type`: By default, the `Content-Type` header is set to\n `\"application/octet-stream\"`. The default can be overridden by explicitly\n setting `Content-Type` to a particular media type when the\n [task is created](google.cloud.tasks.v2beta2.CloudTasks.CreateTask).\n For example, `Content-Type` can be set to `\"application/json\"`.\n* `Content-Length`: This is computed by Cloud Tasks. This value is\n output only. It cannot be changed.\n\nThe headers below cannot be set or overridden:\n\n* `Host`\n* `X-Google-*`\n* `X-AppEngine-*`\n\nIn addition, Cloud Tasks sets some headers when the task is dispatched,\nsuch as headers containing information about the task; see\n[request headers](/appengine/docs/python/taskqueue/push/creating-handlers#reading_request_headers).\nThese headers are set only when the task is dispatched, so they are not\nvisible when the task is returned in a Cloud Tasks response.\n\nAlthough there is no specific limit for the maximum number of headers or\nthe size, there is a limit on the maximum size of the Task. For more\ninformation, see the CreateTask documentation.", "type": "object" }, - "appEngineRouting": { - "$ref": "AppEngineRouting", - "description": "Task-level setting for App Engine routing.\n\nIf set, AppEngineHttpTarget.app_engine_routing_override is used for\nall tasks in the queue, no matter what the setting is for the\ntask-level app_engine_routing." - }, "httpMethod": { - "enumDescriptions": [ - "HTTP method unspecified", - "HTTP Post", - "HTTP Get", - "HTTP Head", - "HTTP Put", - "HTTP Delete" - ], + "description": "The HTTP method to use for the request. The default is POST.\n\nThe app's request handler for the task's target URL must be able to handle\nHTTP requests with this http_method, otherwise the task attempt will fail\nwith error code 405 (Method Not Allowed). See\n[Writing a push task request handler](/appengine/docs/java/taskqueue/push/creating-handlers#writing_a_push_task_request_handler)\nand the documentation for the request handlers in the language your app is\nwritten in e.g.\n[Python Request Handler](/appengine/docs/python/tools/webapp/requesthandlerclass).", "enum": [ "HTTP_METHOD_UNSPECIFIED", "POST", @@ -618,7 +842,14 @@ "PUT", "DELETE" ], - "description": "The HTTP method to use for the request. The default is POST.\n\nThe app's request handler for the task's target URL must be able to handle\nHTTP requests with this http_method, otherwise the task attempt will fail\nwith error code 405 (Method Not Allowed). See\n[Writing a push task request handler](/appengine/docs/java/taskqueue/push/creating-handlers#writing_a_push_task_request_handler)\nand the documentation for the request handlers in the language your app is\nwritten in e.g.\n[Python Request Handler](/appengine/docs/python/tools/webapp/requesthandlerclass).", + "enumDescriptions": [ + "HTTP method unspecified", + "HTTP Post", + "HTTP Get", + "HTTP Head", + "HTTP Put", + "HTTP Delete" + ], "type": "string" }, "payload": { @@ -631,876 +862,649 @@ "type": "string" } }, - "id": "AppEngineHttpRequest" + "type": "object" + }, + "AppEngineHttpTarget": { + "description": "App Engine HTTP target.\n\nThe task will be delivered to the App Engine application hostname\nspecified by its AppEngineHttpTarget and AppEngineHttpRequest.\nThe documentation for AppEngineHttpRequest explains how the\ntask's host URL is constructed.\n\nUsing AppEngineHttpTarget requires\n[`appengine.applications.get`](/appengine/docs/admin-api/access-control)\nGoogle IAM permission for the project\nand the following scope:\n\n`https://www.googleapis.com/auth/cloud-platform`", + "id": "AppEngineHttpTarget", + "properties": { + "appEngineRoutingOverride": { + "$ref": "AppEngineRouting", + "description": "Overrides for the\ntask-level app_engine_routing.\n\nIf set, `app_engine_routing_override` is used for all tasks in\nthe queue, no matter what the setting is for the\ntask-level app_engine_routing." + } + }, + "type": "object" + }, + "AppEngineRouting": { + "description": "App Engine Routing.\n\nFor more information about services, versions, and instances see\n[An Overview of App Engine](/appengine/docs/python/an-overview-of-app-engine),\n[Microservices Architecture on Google App Engine](/appengine/docs/python/microservices-on-app-engine),\n[App Engine Standard request routing](/appengine/docs/standard/python/how-requests-are-routed),\nand [App Engine Flex request routing](/appengine/docs/flexible/python/how-requests-are-routed).", + "id": "AppEngineRouting", + "properties": { + "host": { + "description": "Output only. The host that the task is sent to.\n\nFor more information, see\n[How Requests are Routed](/appengine/docs/standard/python/how-requests-are-routed).\n\nThe host is constructed as:\n\n\n* `host = [application_domain_name]`\u003c/br\u003e\n `| [service] + '.' + [application_domain_name]`\u003c/br\u003e\n `| [version] + '.' + [application_domain_name]`\u003c/br\u003e\n `| [version_dot_service]+ '.' + [application_domain_name]`\u003c/br\u003e\n `| [instance] + '.' + [application_domain_name]`\u003c/br\u003e\n `| [instance_dot_service] + '.' + [application_domain_name]`\u003c/br\u003e\n `| [instance_dot_version] + '.' + [application_domain_name]`\u003c/br\u003e\n `| [instance_dot_version_dot_service] + '.' + [application_domain_name]`\n\n* `application_domain_name` = The domain name of the app, for\n example \u003capp-id\u003e.appspot.com, which is associated with the\n queue's project ID. Some tasks which were created using the App Engine\n SDK use a custom domain name.\n\n* `service =` service\n\n* `version =` version\n\n* `version_dot_service =`\n version `+ '.' +`\n service\n\n* `instance =` instance\n\n* `instance_dot_service =`\n instance `+ '.' +`\n service\n\n* `instance_dot_version =`\n instance `+ '.' +`\n version\n\n* `instance_dot_version_dot_service =`\n instance `+ '.' +`\n version `+ '.' +`\n service\n\nIf service is empty, then the task will be sent\nto the service which is the default service when the task is attempted.\n\nIf version is empty, then the task will be sent\nto the version which is the default version when the task is attempted.\n\nIf instance is empty, then the task\nwill be sent to an instance which is available when the task is\nattempted.\n\nWhen service is \"default\",\nversion is \"default\", and\ninstance is empty,\nhost is shortened to just the\n`application_domain_name`.\n\nIf service,\nversion, or\ninstance is invalid, then the task\nwill be sent to the default version of the default service when\nthe task is attempted.", + "type": "string" + }, + "instance": { + "description": "App instance.\n\nBy default, the task is sent to an instance which is available when\nthe task is attempted.\n\nRequests can only be sent to a specific instance if\n[manual scaling is used in App Engine Standard](/appengine/docs/python/an-overview-of-app-engine?hl=en_US#scaling_types_and_instance_classes).\nApp Engine Flex does not support instances. For more information, see\n[App Engine Standard request routing](/appengine/docs/standard/python/how-requests-are-routed)\nand [App Engine Flex request routing](/appengine/docs/flexible/python/how-requests-are-routed).", + "type": "string" + }, + "service": { + "description": "App service.\n\nBy default, the task is sent to the service which is the default\nservice when the task is attempted (\"default\").\n\nFor some queues or tasks which were created using the App Engine\nTask Queue API, host is not parsable\ninto service,\nversion, and\ninstance. For example, some tasks\nwhich were created using the App Engine SDK use a custom domain\nname; custom domains are not parsed by Cloud Tasks. If\nhost is not parsable, then\nservice,\nversion, and\ninstance are the empty string.", + "type": "string" + }, + "version": { + "description": "App version.\n\nBy default, the task is sent to the version which is the default\nversion when the task is attempted (\"default\").\n\nFor some queues or tasks which were created using the App Engine\nTask Queue API, host is not parsable\ninto service,\nversion, and\ninstance. For example, some tasks\nwhich were created using the App Engine SDK use a custom domain\nname; custom domains are not parsed by Cloud Tasks. If\nhost is not parsable, then\nservice,\nversion, and\ninstance are the empty string.", + "type": "string" + } + }, + "type": "object" + }, + "AttemptStatus": { + "description": "The status of a task attempt.", + "id": "AttemptStatus", + "properties": { + "dispatchTime": { + "description": "Output only. The time that this attempt was dispatched.\n\n`dispatch_time` will be truncated to the nearest microsecond.", + "format": "google-datetime", + "type": "string" + }, + "responseStatus": { + "$ref": "Status", + "description": "Output only. The response from the target for this attempt.\n\nIf the task has not been attempted or the task is currently running\nthen the response status is unset." + }, + "responseTime": { + "description": "Output only. The time that this attempt response was received.\n\n`response_time` will be truncated to the nearest microsecond.", + "format": "google-datetime", + "type": "string" + }, + "scheduleTime": { + "description": "Output only. The time that this attempt was scheduled.\n\n`schedule_time` will be truncated to the nearest microsecond.", + "format": "google-datetime", + "type": "string" + } + }, + "type": "object" + }, + "Binding": { + "description": "Associates `members` with a `role`.", + "id": "Binding", + "properties": { + "members": { + "description": "Specifies the identities requesting access for a Cloud Platform resource.\n`members` can have the following values:\n\n* `allUsers`: A special identifier that represents anyone who is\n on the internet; with or without a Google account.\n\n* `allAuthenticatedUsers`: A special identifier that represents anyone\n who is authenticated with a Google account or a service account.\n\n* `user:{emailid}`: An email address that represents a specific Google\n account. For example, `alice@gmail.com` or `joe@example.com`.\n\n\n* `serviceAccount:{emailid}`: An email address that represents a service\n account. For example, `my-other-app@appspot.gserviceaccount.com`.\n\n* `group:{emailid}`: An email address that represents a Google group.\n For example, `admins@example.com`.\n\n\n* `domain:{domain}`: A Google Apps domain name that represents all the\n users of that domain. For example, `google.com` or `example.com`.\n\n", + "items": { + "type": "string" + }, + "type": "array" + }, + "role": { + "description": "Role that is assigned to `members`.\nFor example, `roles/viewer`, `roles/editor`, or `roles/owner`.\nRequired", + "type": "string" + } + }, + "type": "object" + }, + "CancelLeaseRequest": { + "description": "Request message for canceling a lease using\nCancelLease.", + "id": "CancelLeaseRequest", + "properties": { + "responseView": { + "description": "The response_view specifies which subset of the Task will be\nreturned.\n\nBy default response_view is BASIC; not all\ninformation is retrieved by default because some data, such as\npayloads, might be desirable to return only when needed because\nof its large size or because of the sensitivity of data that it\ncontains.\n\nAuthorization for FULL requires\n`cloudtasks.tasks.fullView` [Google IAM](/iam/) permission on the\nTask resource.", + "enum": [ + "VIEW_UNSPECIFIED", + "BASIC", + "FULL" + ], + "enumDescriptions": [ + "Unspecified. Defaults to BASIC.", + "The basic view omits fields which can be large or can contain\nsensitive data.\n\nThis view does not include the\n(payload in AppEngineHttpRequest and\npayload in PullMessage). These payloads are\ndesirable to return only when needed, because they can be large\nand because of the sensitivity of the data that you choose to\nstore in it.", + "All information is returned.\n\nAuthorization for FULL requires\n`cloudtasks.tasks.fullView` [Google IAM](https://cloud.google.com/iam/)\npermission on the Queue resource." + ], + "type": "string" + }, + "scheduleTime": { + "description": "Required.\n\nThe task's current schedule time, available in the\nschedule_time returned by\nLeaseTasks response or\nRenewLease response. This restriction is\nto ensure that your worker currently holds the lease.", + "format": "google-datetime", + "type": "string" + } + }, + "type": "object" + }, + "CreateTaskRequest": { + "description": "Request message for CreateTask.", + "id": "CreateTaskRequest", + "properties": { + "responseView": { + "description": "The response_view specifies which subset of the Task will be\nreturned.\n\nBy default response_view is BASIC; not all\ninformation is retrieved by default because some data, such as\npayloads, might be desirable to return only when needed because\nof its large size or because of the sensitivity of data that it\ncontains.\n\nAuthorization for FULL requires\n`cloudtasks.tasks.fullView` [Google IAM](/iam/) permission on the\nTask resource.", + "enum": [ + "VIEW_UNSPECIFIED", + "BASIC", + "FULL" + ], + "enumDescriptions": [ + "Unspecified. Defaults to BASIC.", + "The basic view omits fields which can be large or can contain\nsensitive data.\n\nThis view does not include the\n(payload in AppEngineHttpRequest and\npayload in PullMessage). These payloads are\ndesirable to return only when needed, because they can be large\nand because of the sensitivity of the data that you choose to\nstore in it.", + "All information is returned.\n\nAuthorization for FULL requires\n`cloudtasks.tasks.fullView` [Google IAM](https://cloud.google.com/iam/)\npermission on the Queue resource." + ], + "type": "string" + }, + "task": { + "$ref": "Task", + "description": "Required.\n\nThe task to add.\n\nTask names have the following format:\n`projects/PROJECT_ID/locations/LOCATION_ID/queues/QUEUE_ID/tasks/TASK_ID`.\nThe user can optionally specify a task name. If a\nname is not specified then the system will generate a random\nunique task id, which will be set in the task returned in the\nresponse.\n\nIf schedule_time is not set or is in the\npast then Cloud Tasks will set it to the current time.\n\nTask De-duplication:\n\nExplicitly specifying a task ID enables task de-duplication. If\na task's ID is identical to that of an existing task or a task\nthat was deleted or completed recently then the call will fail\nwith ALREADY_EXISTS.\nIf the task's queue was created using Cloud Tasks, then another task with\nthe same name can't be created for ~1hour after the original task was\ndeleted or completed. If the task's queue was created using queue.yaml or\nqueue.xml, then another task with the same name can't be created\nfor ~9days after the original task was deleted or completed.\n\nBecause there is an extra lookup cost to identify duplicate task\nnames, these CreateTask calls have significantly\nincreased latency. Using hashed strings for the task id or for\nthe prefix of the task id is recommended. Choosing task ids that\nare sequential or have sequential prefixes, for example using a\ntimestamp, causes an increase in latency and error rates in all\ntask commands. The infrastructure relies on an approximately\nuniform distribution of task ids to store and serve tasks\nefficiently." + } + }, + "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" }, "GetIamPolicyRequest": { "description": "Request message for `GetIamPolicy` method.", - "type": "object", + "id": "GetIamPolicyRequest", "properties": {}, - "id": "GetIamPolicyRequest" + "type": "object" }, - "TestIamPermissionsResponse": { - "description": "Response message for `TestIamPermissions` method.", - "type": "object", + "LeaseTasksRequest": { + "description": "Request message for leasing tasks using LeaseTasks.", + "id": "LeaseTasksRequest", "properties": { - "permissions": { - "description": "A subset of `TestPermissionsRequest.permissions` that the caller is\nallowed.", - "type": "array", - "items": { - "type": "string" - } + "filter": { + "description": "`filter` can be used to specify a subset of tasks to lease.\n\nWhen `filter` is set to `tag=\u003cmy-tag\u003e` then the\nresponse will contain only tasks whose\ntag is equal to `\u003cmy-tag\u003e`. `\u003cmy-tag\u003e` must be\nless than 500 characters.\n\nWhen `filter` is set to `tag_function=oldest_tag()`, only tasks which have\nthe same tag as the task with the oldest schedule_time will be returned.\n\nGrammar Syntax:\n\n* `filter = \"tag=\" tag | \"tag_function=\" function`\n\n* `tag = string`\n\n* `function = \"oldest_tag()\"`\n\nThe `oldest_tag()` function returns tasks which have the same tag as the\noldest task (ordered by schedule time).\n\nSDK compatibility: Although the SDK allows tags to be either\nstring or\n[bytes](/appengine/docs/standard/java/javadoc/com/google/appengine/api/taskqueue/TaskOptions.html#tag-byte:A-),\nonly UTF-8 encoded tags can be used in Cloud Tasks. Tag which\naren't UTF-8 encoded can't be used in the\nfilter and the task's\ntag will be displayed as empty in Cloud Tasks.", + "type": "string" + }, + "leaseDuration": { + "description": "\nAfter the worker has successfully finished the work associated\nwith the task, the worker must call via\nAcknowledgeTask before the\nschedule_time. Otherwise the task will be\nreturned to a later LeaseTasks call so\nthat another worker can retry it.\n\nThe maximum lease duration is 1 week.\n`lease_duration` will be truncated to the nearest second.", + "format": "google-duration", + "type": "string" + }, + "maxTasks": { + "description": "The maximum number of tasks to lease. The maximum that can be\nrequested is 1000.", + "format": "int32", + "type": "integer" + }, + "responseView": { + "description": "The response_view specifies which subset of the Task will be\nreturned.\n\nBy default response_view is BASIC; not all\ninformation is retrieved by default because some data, such as\npayloads, might be desirable to return only when needed because\nof its large size or because of the sensitivity of data that it\ncontains.\n\nAuthorization for FULL requires\n`cloudtasks.tasks.fullView` [Google IAM](/iam/) permission on the\nTask resource.", + "enum": [ + "VIEW_UNSPECIFIED", + "BASIC", + "FULL" + ], + "enumDescriptions": [ + "Unspecified. Defaults to BASIC.", + "The basic view omits fields which can be large or can contain\nsensitive data.\n\nThis view does not include the\n(payload in AppEngineHttpRequest and\npayload in PullMessage). These payloads are\ndesirable to return only when needed, because they can be large\nand because of the sensitivity of the data that you choose to\nstore in it.", + "All information is returned.\n\nAuthorization for FULL requires\n`cloudtasks.tasks.fullView` [Google IAM](https://cloud.google.com/iam/)\npermission on the Queue resource." + ], + "type": "string" } }, - "id": "TestIamPermissionsResponse" + "type": "object" + }, + "LeaseTasksResponse": { + "description": "Response message for leasing tasks using LeaseTasks.", + "id": "LeaseTasksResponse", + "properties": { + "tasks": { + "description": "The leased tasks.", + "items": { + "$ref": "Task" + }, + "type": "array" + } + }, + "type": "object" + }, + "ListLocationsResponse": { + "description": "The response message for Locations.ListLocations.", + "id": "ListLocationsResponse", + "properties": { + "locations": { + "description": "A list of locations that matches the specified filter in the request.", + "items": { + "$ref": "Location" + }, + "type": "array" + }, + "nextPageToken": { + "description": "The standard List next-page token.", + "type": "string" + } + }, + "type": "object" + }, + "ListQueuesResponse": { + "description": "Response message for ListQueues.", + "id": "ListQueuesResponse", + "properties": { + "nextPageToken": { + "description": "A token to retrieve next page of results.\n\nTo return the next page of results, call\nListQueues with this value as the\npage_token.\n\nIf the next_page_token is empty, there are no more results.\n\nThe page token is valid for only 2 hours.", + "type": "string" + }, + "queues": { + "description": "The list of queues.", + "items": { + "$ref": "Queue" + }, + "type": "array" + } + }, + "type": "object" + }, + "ListTasksResponse": { + "description": "Response message for listing tasks using ListTasks.", + "id": "ListTasksResponse", + "properties": { + "nextPageToken": { + "description": "A token to retrieve next page of results.\n\nTo return the next page of results, call\nListTasks with this value as the\npage_token.\n\nIf the next_page_token is empty, there are no more results.", + "type": "string" + }, + "tasks": { + "description": "The list of tasks.", + "items": { + "$ref": "Task" + }, + "type": "array" + } + }, + "type": "object" + }, + "Location": { + "description": "A resource that represents Google Cloud Platform location.", + "id": "Location", + "properties": { + "displayName": { + "description": "The friendly name for this location, typically a nearby city name.\nFor example, \"Tokyo\".", + "type": "string" + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Cross-service attributes for the location. For example\n\n {\"cloud.googleapis.com/region\": \"us-east1\"}", + "type": "object" + }, + "locationId": { + "description": "The canonical id for this location. For example: `\"us-east1\"`.", + "type": "string" + }, + "metadata": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "description": "Service-specific metadata. For example the available capacity at the given\nlocation.", + "type": "object" + }, + "name": { + "description": "Resource name for the location, which may vary between implementations.\nFor example: `\"projects/example-project/locations/us-east1\"`", + "type": "string" + } + }, + "type": "object" + }, + "PauseQueueRequest": { + "description": "Request message for PauseQueue.", + "id": "PauseQueueRequest", + "properties": {}, + "type": "object" + }, + "Policy": { + "description": "Defines an Identity and Access Management (IAM) policy. It is used to\nspecify access control policies for Cloud Platform resources.\n\n\nA `Policy` consists of a list of `bindings`. A `Binding` binds a list of\n`members` to a `role`, where the members can be user accounts, Google groups,\nGoogle domains, and service accounts. A `role` is a named list of permissions\ndefined by IAM.\n\n**Example**\n\n {\n \"bindings\": [\n {\n \"role\": \"roles/owner\",\n \"members\": [\n \"user:mike@example.com\",\n \"group:admins@example.com\",\n \"domain:google.com\",\n \"serviceAccount:my-other-app@appspot.gserviceaccount.com\",\n ]\n },\n {\n \"role\": \"roles/viewer\",\n \"members\": [\"user:sean@example.com\"]\n }\n ]\n }\n\nFor a description of IAM and its features, see the\n[IAM developer's guide](https://cloud.google.com/iam/docs).", + "id": "Policy", + "properties": { + "bindings": { + "description": "Associates a list of `members` to a `role`.\n`bindings` with no members will result in an error.", + "items": { + "$ref": "Binding" + }, + "type": "array" + }, + "etag": { + "description": "`etag` is used for optimistic concurrency control as a way to help\nprevent simultaneous updates of a policy from overwriting each other.\nIt is strongly suggested that systems make use of the `etag` in the\nread-modify-write cycle to perform policy updates in order to avoid race\nconditions: An `etag` is returned in the response to `getIamPolicy`, and\nsystems are expected to put that etag in the request to `setIamPolicy` to\nensure that their change will be applied to the same version of the policy.\n\nIf no `etag` is provided in the call to `setIamPolicy`, then the existing\npolicy is overwritten blindly.", + "format": "byte", + "type": "string" + }, + "version": { + "description": "Deprecated.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "PullMessage": { + "description": "The pull message contains data that can be used by the caller of\nLeaseTasks to process the task.\n\nThis proto can only be used for tasks in a queue which has\npull_target set.", + "id": "PullMessage", + "properties": { + "payload": { + "description": "A data payload consumed by the worker to execute the task.", + "format": "byte", + "type": "string" + }, + "tag": { + "description": "The task's tag.\n\nTags allow similar tasks to be processed in a batch. If you label\ntasks with a tag, your worker can\nlease tasks with the same tag using\nfilter. For example, if you want to\naggregate the events associated with a specific user once a day,\nyou could tag tasks with the user ID.\n\nThe task's tag can only be set when the\ntask is created.\n\nThe tag must be less than 500 characters.\n\nSDK compatibility: Although the SDK allows tags to be either\nstring or [bytes](/appengine/docs/standard/java/javadoc/com/google/appengine/api/taskqueue/TaskOptions.html#tag-byte:A-),\nonly UTF-8 encoded tags can be used in Cloud Tasks. If a tag isn't UTF-8\nencoded, the tag will be empty when the task is returned by Cloud Tasks.", + "type": "string" + } + }, + "type": "object" + }, + "PullTarget": { + "description": "Pull target.", + "id": "PullTarget", + "properties": {}, + "type": "object" + }, + "PurgeQueueRequest": { + "description": "Request message for PurgeQueue.", + "id": "PurgeQueueRequest", + "properties": {}, + "type": "object" + }, + "Queue": { + "description": "A queue is a container of related tasks. Queues are configured to manage\nhow those tasks are dispatched. Configurable properties include rate limits,\nretry options, target types, and others.", + "id": "Queue", + "properties": { + "appEngineHttpTarget": { + "$ref": "AppEngineHttpTarget", + "description": "App Engine HTTP target.\n\nAn App Engine queue is a queue that has an AppEngineHttpTarget." + }, + "name": { + "description": "The queue name.\n\nThe queue name must have the following format:\n`projects/PROJECT_ID/locations/LOCATION_ID/queues/QUEUE_ID`\n\n* `PROJECT_ID` can contain letters ([A-Za-z]), numbers ([0-9]),\n hyphens (-), colons (:), or periods (.).\n For more information, see\n [Identifying projects](/resource-manager/docs/creating-managing-projects#identifying_projects)\n* `LOCATION_ID` is the canonical ID for the queue's location.\n The list of available locations can be obtained by calling\n ListLocations.\n For more information, see https://cloud.google.com/about/locations/.\n* `QUEUE_ID` can contain letters ([A-Za-z]), numbers ([0-9]), or\n hyphens (-). The maximum length is 100 characters.\n\nCaller-specified and required in CreateQueue,\nafter which it becomes output only.", + "type": "string" + }, + "pullTarget": { + "$ref": "PullTarget", + "description": "Pull target.\n\nA pull queue is a queue that has a PullTarget." + }, + "purgeTime": { + "description": "Output only. The last time this queue was purged.\n\nAll tasks that were created before this time\nwere purged.\n\nA queue can be purged using PurgeQueue, the\n[App Engine Task Queue SDK, or the Cloud Console](/appengine/docs/standard/python/taskqueue/push/deleting-tasks-and-queues#purging_all_tasks_from_a_queue).\n\nPurge time will be truncated to the nearest microsecond. Purge\ntime will be unset if the queue has never been purged.", + "format": "google-datetime", + "type": "string" + }, + "rateLimits": { + "$ref": "RateLimits", + "description": "Rate limits for task dispatches.\n\nrate_limits and\nretry_config are related because they both\ncontrol task attempts however they control how tasks are\nattempted in different ways:\n\n* rate_limits controls the total rate of\n dispatches from a queue (i.e. all traffic dispatched from the\n queue, regardless of whether the dispatch is from a first\n attempt or a retry).\n* retry_config controls what happens to\n particular a task after its first attempt fails. That is,\n retry_config controls task retries (the\n second attempt, third attempt, etc)." + }, + "retryConfig": { + "$ref": "RetryConfig", + "description": "Settings that determine the retry behavior.\n\n* For tasks created using Cloud Tasks: the queue-level retry settings\n apply to all tasks in the queue that were created using Cloud Tasks.\n Retry settings cannot be set on individual tasks.\n* For tasks created using the App Engine SDK: the queue-level retry\n settings apply to all tasks in the queue which do not have retry settings\n explicitly set on the task and were created by the App Engine SDK. See\n [App Engine documentation](/appengine/docs/standard/python/taskqueue/push/retrying-tasks)." + }, + "state": { + "description": "Output only. The state of the queue.\n\n`state` can only be changed by called\nPauseQueue,\nResumeQueue, or uploading\n[queue.yaml/xml](/appengine/docs/python/config/queueref).\nUpdateQueue cannot be used to change `state`.", + "enum": [ + "STATE_UNSPECIFIED", + "RUNNING", + "PAUSED", + "DISABLED" + ], + "enumDescriptions": [ + "Unspecified state.", + "The queue is running. Tasks can be dispatched.\n\nIf the queue was created using Cloud Tasks and the queue has\nhad no activity (method calls or task dispatches) for 30 days,\nthe queue may take a few minutes to re-activate. Some method\ncalls may return NOT_FOUND and\ntasks may not be dispatched for a few minutes until the queue\nhas been re-activated.", + "Tasks are paused by the user. If the queue is paused then Cloud\nTasks will stop delivering tasks from it, but more tasks can\nstill be added to it by the user. When a pull queue is paused,\nall LeaseTasks calls will return a\nFAILED_PRECONDITION.", + "The queue is disabled.\n\nA queue becomes `DISABLED` when\n[queue.yaml](/appengine/docs/python/config/queueref) or\n[queue.xml](appengine/docs/standard/java/config/queueref) is uploaded\nwhich does not contain the queue. You cannot directly disable a queue.\n\nWhen a queue is disabled, tasks can still be added to a queue\nbut the tasks are not dispatched and\nLeaseTasks calls return a\n`FAILED_PRECONDITION` error.\n\nTo permanently delete this queue and all of its tasks, call\nDeleteQueue." + ], + "type": "string" + } + }, + "type": "object" + }, + "RateLimits": { + "description": "Rate limits.\n\nThis message determines the maximum rate that tasks can be dispatched by a\nqueue, regardless of whether the dispatch is a first task attempt or a retry.", + "id": "RateLimits", + "properties": { + "maxBurstSize": { + "description": "Output only. The max burst size.\n\nMax burst size limits how fast tasks in queue are processed when\nmany tasks are in the queue and the rate is high. This field\nallows the queue to have a high rate so processing starts shortly\nafter a task is enqueued, but still limits resource usage when\nmany tasks are enqueued in a short period of time.\n\nThe [token bucket](https://wikipedia.org/wiki/Token_Bucket)\nalgorithm is used to control the rate of task dispatches. Each\nqueue has a token bucket that holds tokens, up to the maximum\nspecified by `max_burst_size`. Each time a task is dispatched, a\ntoken is removed from the bucket. Tasks will be dispatched until\nthe queue's bucket runs out of tokens. The bucket will be\ncontinuously refilled with new tokens based on\nmax_tasks_dispatched_per_second.\n\nCloud Tasks will pick the value of `max_burst_size` based on the\nvalue of\nmax_tasks_dispatched_per_second.\n\nFor App Engine queues that were created or updated using\n`queue.yaml/xml`, `max_burst_size` is equal to\n[bucket_size](/appengine/docs/standard/python/config/queueref#bucket_size).\nSince `max_burst_size` is output only, if\nUpdateQueue is called on a queue\ncreated by `queue.yaml/xml`, `max_burst_size` will be reset based\non the value of\nmax_tasks_dispatched_per_second,\nregardless of whether\nmax_tasks_dispatched_per_second\nis updated.\n", + "format": "int32", + "type": "integer" + }, + "maxConcurrentTasks": { + "description": "The maximum number of concurrent tasks that Cloud Tasks allows\nto be dispatched for this queue. After this threshold has been\nreached, Cloud Tasks stops dispatching tasks until the number of\nconcurrent requests decreases.\n\nIf unspecified when the queue is created, Cloud Tasks will pick the\ndefault.\n\n\nThe maximum allowed value is 5,000. -1 indicates no limit.\n\nThis field is output only for\n[pull queues](google.cloud.tasks.v2beta2.PullTarget).\n\n\nThis field has the same meaning as\n[max_concurrent_requests in queue.yaml/xml](/appengine/docs/standard/python/config/queueref#max_concurrent_requests).", + "format": "int32", + "type": "integer" + }, + "maxTasksDispatchedPerSecond": { + "description": "The maximum rate at which tasks are dispatched from this queue.\n\nIf unspecified when the queue is created, Cloud Tasks will pick the\ndefault.\n\n* For App Engine queues, the maximum allowed value is 500.\n* This field is output only for [pull queues](google.cloud.tasks.v2beta2.PullTarget). In\n addition to the `max_tasks_dispatched_per_second` limit, a\n maximum of 10 QPS of LeaseTasks\n requests are allowed per pull queue.\n\n\nThis field has the same meaning as\n[rate in queue.yaml/xml](/appengine/docs/standard/python/config/queueref#rate).", + "format": "double", + "type": "number" + } + }, + "type": "object" + }, + "RenewLeaseRequest": { + "description": "Request message for renewing a lease using\nRenewLease.", + "id": "RenewLeaseRequest", + "properties": { + "leaseDuration": { + "description": "Required.\n\nThe desired new lease duration, starting from now.\n\n\nThe maximum lease duration is 1 week.\n`lease_duration` will be truncated to the nearest second.", + "format": "google-duration", + "type": "string" + }, + "responseView": { + "description": "The response_view specifies which subset of the Task will be\nreturned.\n\nBy default response_view is BASIC; not all\ninformation is retrieved by default because some data, such as\npayloads, might be desirable to return only when needed because\nof its large size or because of the sensitivity of data that it\ncontains.\n\nAuthorization for FULL requires\n`cloudtasks.tasks.fullView` [Google IAM](/iam/) permission on the\nTask resource.", + "enum": [ + "VIEW_UNSPECIFIED", + "BASIC", + "FULL" + ], + "enumDescriptions": [ + "Unspecified. Defaults to BASIC.", + "The basic view omits fields which can be large or can contain\nsensitive data.\n\nThis view does not include the\n(payload in AppEngineHttpRequest and\npayload in PullMessage). These payloads are\ndesirable to return only when needed, because they can be large\nand because of the sensitivity of the data that you choose to\nstore in it.", + "All information is returned.\n\nAuthorization for FULL requires\n`cloudtasks.tasks.fullView` [Google IAM](https://cloud.google.com/iam/)\npermission on the Queue resource." + ], + "type": "string" + }, + "scheduleTime": { + "description": "Required.\n\nThe task's current schedule time, available in the\nschedule_time returned by\nLeaseTasks response or\nRenewLease response. This restriction is\nto ensure that your worker currently holds the lease.", + "format": "google-datetime", + "type": "string" + } + }, + "type": "object" + }, + "ResumeQueueRequest": { + "description": "Request message for ResumeQueue.", + "id": "ResumeQueueRequest", + "properties": {}, + "type": "object" }, "RetryConfig": { + "description": "Retry config.\n\nThese settings determine how a failed task attempt is retried.", + "id": "RetryConfig", "properties": { - "minBackoff": { - "description": "A task will be [scheduled](Task.schedule_time) for retry between\nRetryConfig.min_backoff and RetryConfig.max_backoff duration after\nit fails, if the queue's RetryConfig specifies that the task should be\nretried.\n\nIf unspecified when the queue is created, Cloud Tasks will pick the\ndefault.\n\nThis field is output only for\n[pull queues](google.cloud.tasks.v2beta2.PullTarget).\n\n\n`min_backoff` will be truncated to the nearest second.\n\nThis field has the same meaning as\n[min_backoff_seconds in queue.yaml/xml](/appengine/docs/standard/python/config/queueref#retry_parameters).", - "format": "google-duration", - "type": "string" - }, - "maxBackoff": { - "description": "A task will be [scheduled](Task.schedule_time) for retry between\nRetryConfig.min_backoff and RetryConfig.max_backoff duration after\nit fails, if the queue's RetryConfig specifies that the task should be\nretried.\n\nIf unspecified when the queue is created, Cloud Tasks will pick the\ndefault.\n\nThis field is output only for\n[pull queues](google.cloud.tasks.v2beta2.PullTarget).\n\n\n`max_backoff` will be truncated to the nearest second.\n\nThis field has the same meaning as\n[max_backoff_seconds in queue.yaml/xml](/appengine/docs/standard/python/config/queueref#retry_parameters).", - "format": "google-duration", - "type": "string" - }, - "maxRetryDuration": { - "description": "If positive, `max_retry_duration` specifies the time limit for retrying a\nfailed task, measured from when the task was first attempted. Once\n`max_retry_duration` time has passed *and* the task has been attempted\nRetryConfig.max_attempts times, no further attempts will be made and\nthe task will be deleted.\n\nIf zero, then the task age is unlimited.\n\nIf unspecified when the queue is created, Cloud Tasks will pick the\ndefault.\n\nThis field is output only for\n[pull queues](google.cloud.tasks.v2beta2.PullTarget).\n\n\n`max_retry_duration` will be truncated to the nearest second.\n\nThis field has the same meaning as\n[task_age_limit in queue.yaml/xml](/appengine/docs/standard/python/config/queueref#retry_parameters).", - "format": "google-duration", - "type": "string" - }, "maxAttempts": { "description": "The maximum number of attempts for a task.\n\nCloud Tasks will attempt the task `max_attempts` times (that\nis, if the first attempt fails, then there will be\n`max_attempts - 1` retries). Must be \u003e 0.", "format": "int32", "type": "integer" }, + "maxBackoff": { + "description": "A task will be [scheduled](Task.schedule_time) for retry between\nmin_backoff and\nmax_backoff duration after it fails,\nif the queue's RetryConfig specifies that the task should be\nretried.\n\nIf unspecified when the queue is created, Cloud Tasks will pick the\ndefault.\n\nThis field is output only for\n[pull queues](google.cloud.tasks.v2beta2.PullTarget).\n\n\n`max_backoff` will be truncated to the nearest second.\n\nThis field has the same meaning as\n[max_backoff_seconds in queue.yaml/xml](/appengine/docs/standard/python/config/queueref#retry_parameters).", + "format": "google-duration", + "type": "string" + }, "maxDoublings": { - "description": "The time between retries will double `max_doublings` times.\n\nA task's retry interval starts at RetryConfig.min_backoff,\nthen doubles `max_doublings` times, then increases linearly, and\nfinally retries retries at intervals of\nRetryConfig.max_backoff up to max_attempts times.\n\nFor example, if RetryConfig.min_backoff is 10s,\nRetryConfig.max_backoff is 300s, and `max_doublings` is 3,\nthen the a task will first be retried in 10s. The retry interval\nwill double three times, and then increase linearly by 2^3 * 10s.\nFinally, the task will retry at intervals of\nRetryConfig.max_backoff until the task has been attempted\n`max_attempts` times. Thus, the requests will retry at 10s, 20s,\n40s, 80s, 160s, 240s, 300s, 300s, ....\n\nIf unspecified when the queue is created, Cloud Tasks will pick the\ndefault.\n\nThis field is output only for\n[pull queues](google.cloud.tasks.v2beta2.PullTarget).\n\n\nThis field has the same meaning as\n[max_doublings in queue.yaml/xml](/appengine/docs/standard/python/config/queueref#retry_parameters).", + "description": "The time between retries will double `max_doublings` times.\n\nA task's retry interval starts at\nmin_backoff, then doubles\n`max_doublings` times, then increases linearly, and finally\nretries retries at intervals of\nmax_backoff up to\nmax_attempts times.\n\nFor example, if min_backoff is 10s,\nmax_backoff is 300s, and\n`max_doublings` is 3, then the a task will first be retried in\n10s. The retry interval will double three times, and then\nincrease linearly by 2^3 * 10s. Finally, the task will retry at\nintervals of max_backoff until the\ntask has been attempted max_attempts\ntimes. Thus, the requests will retry at 10s, 20s, 40s, 80s, 160s,\n240s, 300s, 300s, ....\n\nIf unspecified when the queue is created, Cloud Tasks will pick the\ndefault.\n\nThis field is output only for\n[pull queues](google.cloud.tasks.v2beta2.PullTarget).\n\n\nThis field has the same meaning as\n[max_doublings in queue.yaml/xml](/appengine/docs/standard/python/config/queueref#retry_parameters).", "format": "int32", "type": "integer" }, + "maxRetryDuration": { + "description": "If positive, `max_retry_duration` specifies the time limit for\nretrying a failed task, measured from when the task was first\nattempted. Once `max_retry_duration` time has passed *and* the\ntask has been attempted max_attempts\ntimes, no further attempts will be made and the task will be\ndeleted.\n\nIf zero, then the task age is unlimited.\n\nIf unspecified when the queue is created, Cloud Tasks will pick the\ndefault.\n\nThis field is output only for\n[pull queues](google.cloud.tasks.v2beta2.PullTarget).\n\n\n`max_retry_duration` will be truncated to the nearest second.\n\nThis field has the same meaning as\n[task_age_limit in queue.yaml/xml](/appengine/docs/standard/python/config/queueref#retry_parameters).", + "format": "google-duration", + "type": "string" + }, + "minBackoff": { + "description": "A task will be [scheduled](Task.schedule_time) for retry between\nmin_backoff and\nmax_backoff duration after it fails,\nif the queue's RetryConfig specifies that the task should be\nretried.\n\nIf unspecified when the queue is created, Cloud Tasks will pick the\ndefault.\n\nThis field is output only for\n[pull queues](google.cloud.tasks.v2beta2.PullTarget).\n\n\n`min_backoff` will be truncated to the nearest second.\n\nThis field has the same meaning as\n[min_backoff_seconds in queue.yaml/xml](/appengine/docs/standard/python/config/queueref#retry_parameters).", + "format": "google-duration", + "type": "string" + }, "unlimitedAttempts": { "description": "If true, then the number of attempts is unlimited.", "type": "boolean" } }, - "id": "RetryConfig", - "description": "Retry config.\n\nThese settings determine how a failed task attempt is retried.", "type": "object" }, - "PullTarget": { - "properties": {}, - "id": "PullTarget", - "description": "Pull target.", - "type": "object" - } - }, - "protocol": "rest", - "icons": { - "x16": "http://www.google.com/images/icons/product/search-16.gif", - "x32": "http://www.google.com/images/icons/product/search-32.gif" - }, - "canonicalName": "Cloud Tasks", - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/cloud-platform": { - "description": "View and manage your data across Google Cloud Platform services" + "RunTaskRequest": { + "description": "Request message for forcing a task to run now using\nRunTask.", + "id": "RunTaskRequest", + "properties": { + "responseView": { + "description": "The response_view specifies which subset of the Task will be\nreturned.\n\nBy default response_view is BASIC; not all\ninformation is retrieved by default because some data, such as\npayloads, might be desirable to return only when needed because\nof its large size or because of the sensitivity of data that it\ncontains.\n\nAuthorization for FULL requires\n`cloudtasks.tasks.fullView` [Google IAM](/iam/) permission on the\nTask resource.", + "enum": [ + "VIEW_UNSPECIFIED", + "BASIC", + "FULL" + ], + "enumDescriptions": [ + "Unspecified. Defaults to BASIC.", + "The basic view omits fields which can be large or can contain\nsensitive data.\n\nThis view does not include the\n(payload in AppEngineHttpRequest and\npayload in PullMessage). These payloads are\ndesirable to return only when needed, because they can be large\nand because of the sensitivity of the data that you choose to\nstore in it.", + "All information is returned.\n\nAuthorization for FULL requires\n`cloudtasks.tasks.fullView` [Google IAM](https://cloud.google.com/iam/)\npermission on the Queue resource." + ], + "type": "string" } - } - } - }, - "rootUrl": "https://cloudtasks.googleapis.com/", - "ownerDomain": "google.com", - "name": "cloudtasks", - "batchPath": "batch", - "fullyEncodeReservedExpansion": true, - "title": "Cloud Tasks API", - "ownerName": "Google", - "resources": { - "projects": { - "resources": { - "locations": { - "methods": { - "list": { - "flatPath": "v2beta2/projects/{projectsId}/locations", - "path": "v2beta2/{+name}/locations", - "id": "cloudtasks.projects.locations.list", - "description": "Lists information about the supported locations for this service.", - "response": { - "$ref": "ListLocationsResponse" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "filter": { - "location": "query", - "description": "The standard list filter.", - "type": "string" - }, - "name": { - "pattern": "^projects/[^/]+$", - "location": "path", - "description": "The resource that owns the locations collection, if applicable.", - "required": true, - "type": "string" - }, - "pageToken": { - "location": "query", - "description": "The standard list page token.", - "type": "string" - }, - "pageSize": { - "description": "The standard list page size.", - "format": "int32", - "type": "integer", - "location": "query" - } - } + }, + "type": "object" + }, + "SetIamPolicyRequest": { + "description": "Request message for `SetIamPolicy` method.", + "id": "SetIamPolicyRequest", + "properties": { + "policy": { + "$ref": "Policy", + "description": "REQUIRED: The complete policy to be applied to the `resource`. The size of\nthe policy is limited to a few 10s of KB. An empty policy is a\nvalid policy but certain Cloud Platform services (such as Projects)\nmight reject them." + } + }, + "type": "object" + }, + "Status": { + "description": "The `Status` type defines a logical error model that is suitable for different\nprogramming environments, including REST APIs and RPC APIs. It is used by\n[gRPC](https://github.com/grpc). The error model is designed to be:\n\n- Simple to use and understand for most users\n- Flexible enough to meet unexpected needs\n\n# Overview\n\nThe `Status` message contains three pieces of data: error code, error message,\nand error details. The error code should be an enum value of\ngoogle.rpc.Code, but it may accept additional error codes if needed. The\nerror message should be a developer-facing English message that helps\ndevelopers *understand* and *resolve* the error. If a localized user-facing\nerror message is needed, put the localized message in the error details or\nlocalize it in the client. The optional error details may contain arbitrary\ninformation about the error. There is a predefined set of error detail types\nin the package `google.rpc` that can be used for common error conditions.\n\n# Language mapping\n\nThe `Status` message is the logical representation of the error model, but it\nis not necessarily the actual wire format. When the `Status` message is\nexposed in different client libraries and different wire protocols, it can be\nmapped differently. For example, it will likely be mapped to some exceptions\nin Java, but more likely mapped to some error codes in C.\n\n# Other uses\n\nThe error model and the `Status` message can be used in a variety of\nenvironments, either with or without APIs, to provide a\nconsistent developer experience across different environments.\n\nExample uses of this error model include:\n\n- Partial errors. If a service needs to return partial errors to the client,\n it may embed the `Status` in the normal response to indicate the partial\n errors.\n\n- Workflow errors. A typical workflow has multiple steps. Each step may\n have a `Status` message for error reporting.\n\n- Batch operations. If a client uses batch request and batch response, the\n `Status` message should be used directly inside batch response, one for\n each error sub-response.\n\n- Asynchronous operations. If an API call embeds asynchronous operation\n results in its response, the status of those operations should be\n represented directly using the `Status` message.\n\n- Logging. If some API errors are stored in logs, the message `Status` could\n be used directly after any stripping needed for security/privacy reasons.", + "id": "Status", + "properties": { + "code": { + "description": "The status code, which should be an enum value of google.rpc.Code.", + "format": "int32", + "type": "integer" + }, + "details": { + "description": "A list of messages that carry the error details. There is a common set of\nmessage types for APIs to use.", + "items": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" }, - "get": { - "flatPath": "v2beta2/projects/{projectsId}/locations/{locationsId}", - "path": "v2beta2/{+name}", - "id": "cloudtasks.projects.locations.get", - "description": "Get information about a location.", - "response": { - "$ref": "Location" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "GET", - "parameters": { - "name": { - "location": "path", - "description": "Resource name for the location.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+$" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - } + "type": "object" }, - "resources": { - "queues": { - "resources": { - "tasks": { - "methods": { - "renewLease": { - "httpMethod": "POST", - "parameterOrder": [ - "name" - ], - "response": { - "$ref": "Task" - }, - "parameters": { - "name": { - "pattern": "^projects/[^/]+/locations/[^/]+/queues/[^/]+/tasks/[^/]+$", - "location": "path", - "description": "Required.\n\nThe task name. For example:\n`projects/PROJECT_ID/locations/LOCATION_ID/queues/QUEUE_ID/tasks/TASK_ID`", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v2beta2/projects/{projectsId}/locations/{locationsId}/queues/{queuesId}/tasks/{tasksId}:renewLease", - "id": "cloudtasks.projects.locations.queues.tasks.renewLease", - "path": "v2beta2/{+name}:renewLease", - "request": { - "$ref": "RenewLeaseRequest" - }, - "description": "Renew the current lease of a pull task.\n\nThe worker can use this method to extend the lease by a new\nduration, starting from now. The new task lease will be\nreturned in Task.schedule_time." - }, - "get": { - "description": "Gets a task.", - "httpMethod": "GET", - "parameterOrder": [ - "name" - ], - "response": { - "$ref": "Task" - }, - "parameters": { - "name": { - "description": "Required.\n\nThe task name. For example:\n`projects/PROJECT_ID/locations/LOCATION_ID/queues/QUEUE_ID/tasks/TASK_ID`", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+/queues/[^/]+/tasks/[^/]+$", - "location": "path" - }, - "responseView": { - "type": "string", - "location": "query", - "enum": [ - "VIEW_UNSPECIFIED", - "BASIC", - "FULL" - ], - "description": "The response_view specifies which subset of the Task will be\nreturned.\n\nBy default response_view is Task.View.BASIC; not all\ninformation is retrieved by default because some data, such as\npayloads, might be desirable to return only when needed because\nof its large size or because of the sensitivity of data that it\ncontains.\n\nAuthorization for Task.View.FULL requires `cloudtasks.tasks.fullView`\n[Google IAM](/iam/) permission on the\nTask.name resource." - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v2beta2/projects/{projectsId}/locations/{locationsId}/queues/{queuesId}/tasks/{tasksId}", - "id": "cloudtasks.projects.locations.queues.tasks.get", - "path": "v2beta2/{+name}" - }, - "lease": { - "response": { - "$ref": "LeaseTasksResponse" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "POST", - "parameters": { - "parent": { - "location": "path", - "description": "Required.\n\nThe queue name. For example:\n`projects/PROJECT_ID/locations/LOCATION_ID/queues/QUEUE_ID`", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+/queues/[^/]+$" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v2beta2/projects/{projectsId}/locations/{locationsId}/queues/{queuesId}/tasks:lease", - "path": "v2beta2/{+parent}/tasks:lease", - "id": "cloudtasks.projects.locations.queues.tasks.lease", - "request": { - "$ref": "LeaseTasksRequest" - }, - "description": "Leases tasks from a pull queue for LeaseTasksRequest.lease_duration.\n\nThis method is invoked by the worker to obtain a\nlease. The worker must acknowledge the task via\nCloudTasks.AcknowledgeTask after they have performed the work\nassociated with the task.\n\nThe payload is intended to store data that the worker needs\nto perform the work associated with the task. To return the\npayloads in the LeaseTasksResponse, set\nLeaseTasksRequest.response_view to Task.View.FULL.\n\nA maximum of 10 qps of CloudTasks.LeaseTasks requests are allowed per\nqueue. google.rpc.Code.RESOURCE_EXHAUSTED is returned when this limit\nis exceeded. google.rpc.Code.RESOURCE_EXHAUSTED is also returned when\nRateLimits.max_tasks_dispatched_per_second is exceeded." - }, - "delete": { - "description": "Deletes a task.\n\nA task can be deleted if it is scheduled or dispatched. A task\ncannot be deleted if it has completed successfully or permanently\nfailed.", - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "DELETE", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "name": { - "description": "Required.\n\nThe task name. For example:\n`projects/PROJECT_ID/locations/LOCATION_ID/queues/QUEUE_ID/tasks/TASK_ID`", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+/queues/[^/]+/tasks/[^/]+$", - "location": "path" - } - }, - "flatPath": "v2beta2/projects/{projectsId}/locations/{locationsId}/queues/{queuesId}/tasks/{tasksId}", - "path": "v2beta2/{+name}", - "id": "cloudtasks.projects.locations.queues.tasks.delete" - }, - "list": { - "description": "Lists the tasks in a queue.\n\nBy default response_view is Task.View.BASIC; not all\ninformation is retrieved by default due to performance\nconsiderations; ListTasksRequest.response_view controls the\nsubset of information which is returned.", - "response": { - "$ref": "ListTasksResponse" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "GET", - "parameters": { - "parent": { - "pattern": "^projects/[^/]+/locations/[^/]+/queues/[^/]+$", - "location": "path", - "description": "Required.\n\nThe queue name. For example:\n`projects/PROJECT_ID/locations/LOCATION_ID/queues/QUEUE_ID`", - "required": true, - "type": "string" - }, - "responseView": { - "location": "query", - "enum": [ - "VIEW_UNSPECIFIED", - "BASIC", - "FULL" - ], - "description": "The response_view specifies which subset of the Task will be\nreturned.\n\nBy default response_view is Task.View.BASIC; not all\ninformation is retrieved by default because some data, such as\npayloads, might be desirable to return only when needed because\nof its large size or because of the sensitivity of data that it\ncontains.\n\nAuthorization for Task.View.FULL requires `cloudtasks.tasks.fullView`\n[Google IAM](/iam/) permission on the\nTask.name resource.", - "type": "string" - }, - "orderBy": { - "description": "Sort order used for the query. The only fields supported for sorting\nare `schedule_time` and `pull_message.tag`. All results will be\nreturned in approximately ascending order. The default ordering is by\n`schedule_time`.", - "type": "string", - "location": "query" - }, - "pageToken": { - "description": "A token identifying the page of results to return.\n\nTo request the first page results, page_token must be empty. To\nrequest the next page of results, page_token must be the value of\nListTasksResponse.next_page_token returned from the previous\ncall to CloudTasks.ListTasks method.\n\nThe page token is valid for only 2 hours.", - "type": "string", - "location": "query" - }, - "pageSize": { - "type": "integer", - "location": "query", - "description": "Requested page size. Fewer tasks than requested might be returned.\n\nThe maximum page size is 1000. If unspecified, the page size will\nbe the maximum. Fewer tasks than requested might be returned,\neven if more tasks exist; use\nListTasksResponse.next_page_token to determine if more tasks\nexist.", - "format": "int32" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v2beta2/projects/{projectsId}/locations/{locationsId}/queues/{queuesId}/tasks", - "path": "v2beta2/{+parent}/tasks", - "id": "cloudtasks.projects.locations.queues.tasks.list" - }, - "create": { - "response": { - "$ref": "Task" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "parent": { - "location": "path", - "description": "Required.\n\nThe queue name. For example:\n`projects/PROJECT_ID/locations/LOCATION_ID/queues/QUEUE_ID`\n\nThe queue must already exist.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+/queues/[^/]+$" - } - }, - "flatPath": "v2beta2/projects/{projectsId}/locations/{locationsId}/queues/{queuesId}/tasks", - "path": "v2beta2/{+parent}/tasks", - "id": "cloudtasks.projects.locations.queues.tasks.create", - "description": "Creates a task and adds it to a queue.\n\nTo add multiple tasks at the same time, use\n[HTTP batching](/storage/docs/json_api/v1/how-tos/batch)\nor the batching documentation for your client library, for example\nhttps://developers.google.com/api-client-library/python/guide/batch.\n\nTasks cannot be updated after creation; there is no UpdateTask command.\n\n* For [App Engine queues](google.cloud.tasks.v2beta2.AppEngineHttpTarget),\n the maximum task size is 100KB.\n* For [pull queues](google.cloud.tasks.v2beta2.PullTarget), this\n the maximum task size is 1MB.", - "request": { - "$ref": "CreateTaskRequest" - } - }, - "run": { - "request": { - "$ref": "RunTaskRequest" - }, - "description": "Forces a task to run now.\n\nThis command is meant to be used for manual debugging. For\nexample, CloudTasks.RunTask can be used to retry a failed\ntask after a fix has been made or to manually force a task to be\ndispatched now.\n\nWhen this method is called, Cloud Tasks will dispatch the task to its\ntarget, even if the queue is Queue.State.PAUSED.\n\nThe dispatched task is returned. That is, the task that is returned\ncontains the Task.status after the task is dispatched but\nbefore the task is received by its target.\n\nIf Cloud Tasks receives a successful response from the task's\nhandler, then the task will be deleted; otherwise the task's\nTask.schedule_time will be reset to the time that\nCloudTasks.RunTask was called plus the retry delay specified\nin the queue and task's RetryConfig.\n\nCloudTasks.RunTask returns google.rpc.Code.NOT_FOUND when\nit is called on a task that has already succeeded or permanently\nfailed. google.rpc.Code.FAILED_PRECONDITION is returned when\nCloudTasks.RunTask is called on task that is dispatched or\nalready running.\n\nCloudTasks.RunTask cannot be called on pull tasks.", - "response": { - "$ref": "Task" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "POST", - "parameters": { - "name": { - "pattern": "^projects/[^/]+/locations/[^/]+/queues/[^/]+/tasks/[^/]+$", - "location": "path", - "description": "Required.\n\nThe task name. For example:\n`projects/PROJECT_ID/locations/LOCATION_ID/queues/QUEUE_ID/tasks/TASK_ID`", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v2beta2/projects/{projectsId}/locations/{locationsId}/queues/{queuesId}/tasks/{tasksId}:run", - "path": "v2beta2/{+name}:run", - "id": "cloudtasks.projects.locations.queues.tasks.run" - }, - "cancelLease": { - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "name": { - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+/queues/[^/]+/tasks/[^/]+$", - "location": "path", - "description": "Required.\n\nThe task name. For example:\n`projects/PROJECT_ID/locations/LOCATION_ID/queues/QUEUE_ID/tasks/TASK_ID`" - } - }, - "flatPath": "v2beta2/projects/{projectsId}/locations/{locationsId}/queues/{queuesId}/tasks/{tasksId}:cancelLease", - "path": "v2beta2/{+name}:cancelLease", - "id": "cloudtasks.projects.locations.queues.tasks.cancelLease", - "description": "Cancel a pull task's lease.\n\nThe worker can use this method to cancel a task's lease\nby setting Task.schedule_time to now. This will make the task\navailable to be leased to the next caller of CloudTasks.LeaseTasks.", - "request": { - "$ref": "CancelLeaseRequest" - }, - "response": { - "$ref": "Task" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "POST" - }, - "acknowledge": { - "flatPath": "v2beta2/projects/{projectsId}/locations/{locationsId}/queues/{queuesId}/tasks/{tasksId}:acknowledge", - "path": "v2beta2/{+name}:acknowledge", - "id": "cloudtasks.projects.locations.queues.tasks.acknowledge", - "description": "Acknowledges a pull task.\n\nThe worker, that is, the entity that received this task in\na LeaseTasksResponse, must call this method to indicate that\nthe work associated with the task has finished.\n\nThe worker must acknowledge a task within the\nLeaseTasksRequest.lease_duration or the lease will expire and\nthe task will become ready to be returned in a different\nLeaseTasksResponse. After the task is acknowledged, it will\nnot be returned by a later CloudTasks.LeaseTasks,\nCloudTasks.GetTask, or CloudTasks.ListTasks.\n\nTo acknowledge multiple tasks at the same time, use\n[HTTP batching](/storage/docs/json_api/v1/how-tos/batch)\nor the batching documentation for your client library, for example\nhttps://developers.google.com/api-client-library/python/guide/batch.", - "request": { - "$ref": "AcknowledgeTaskRequest" - }, - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "name": { - "description": "Required.\n\nThe task name. For example:\n`projects/PROJECT_ID/locations/LOCATION_ID/queues/QUEUE_ID/tasks/TASK_ID`", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+/queues/[^/]+/tasks/[^/]+$", - "location": "path" - } - } - } - } - } - }, - "methods": { - "list": { - "flatPath": "v2beta2/projects/{projectsId}/locations/{locationsId}/queues", - "path": "v2beta2/{+parent}/queues", - "id": "cloudtasks.projects.locations.queues.list", - "description": "Lists queues.\n\nQueues are returned in lexicographical order.", - "response": { - "$ref": "ListQueuesResponse" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "GET", - "parameters": { - "pageToken": { - "description": "A token identifying the page of results to return.\n\nTo request the first page results, page_token must be empty. To\nrequest the next page of results, page_token must be the value of\nListQueuesResponse.next_page_token returned from the previous\ncall to CloudTasks.ListQueues method. It is an error to\nswitch the value of ListQueuesRequest.filter while iterating\nthrough pages.", - "type": "string", - "location": "query" - }, - "pageSize": { - "location": "query", - "description": "Requested page size.\n\nThe maximum page size is 9800. If unspecified, the page size will\nbe the maximum. Fewer queues than requested might be returned,\neven if more queues exist; use\nListQueuesResponse.next_page_token to determine if more\nqueues exist.", - "format": "int32", - "type": "integer" - }, - "parent": { - "location": "path", - "description": "Required.\n\nThe location name.\nFor example: `projects/PROJECT_ID/locations/LOCATION_ID`", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+$" - }, - "filter": { - "location": "query", - "description": "`filter` can be used to specify a subset of queues. Any Queue\nfield can be used as a filter and several operators as supported.\nFor example: `\u003c=, \u003c, \u003e=, \u003e, !=, =, :`. The filter syntax is the same as\ndescribed in\n[Stackdriver's Advanced Logs Filters](/logging/docs/view/advanced_filters).\n\nSample filter \"app_engine_http_target: *\".\n\nNote that using filters might cause fewer queues than the\nrequested_page size to be returned.", - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "create": { - "request": { - "$ref": "Queue" - }, - "description": "Creates a queue.\n\nQueues created with this method allow tasks to live for a maximum of 31\ndays. After a task is 31 days old, the task will be deleted regardless of whether\nit was dispatched or not.\n\nWARNING: Using this method may have unintended side effects if you are\nusing an App Engine `queue.yaml` or `queue.xml` file to manage your queues.\nRead\n[Overview of Queue Management and queue.yaml](/cloud-tasks/docs/queue-yaml)\ncarefully before using this method.", - "response": { - "$ref": "Queue" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "POST", - "parameters": { - "parent": { - "pattern": "^projects/[^/]+/locations/[^/]+$", - "location": "path", - "description": "Required.\n\nThe location name in which the queue will be created.\nFor example: `projects/PROJECT_ID/locations/LOCATION_ID`\n\nThe list of allowed locations can be obtained by calling Cloud\nTasks' implementation of\ngoogle.cloud.location.Locations.ListLocations.", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v2beta2/projects/{projectsId}/locations/{locationsId}/queues", - "path": "v2beta2/{+parent}/queues", - "id": "cloudtasks.projects.locations.queues.create" - }, - "setIamPolicy": { - "httpMethod": "POST", - "parameterOrder": [ - "resource" - ], - "response": { - "$ref": "Policy" - }, - "parameters": { - "resource": { - "location": "path", - "description": "REQUIRED: The resource for which the policy is being specified.\nSee the operation documentation for the appropriate value for this field.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+/queues/[^/]+$" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v2beta2/projects/{projectsId}/locations/{locationsId}/queues/{queuesId}:setIamPolicy", - "id": "cloudtasks.projects.locations.queues.setIamPolicy", - "path": "v2beta2/{+resource}:setIamPolicy", - "request": { - "$ref": "SetIamPolicyRequest" - }, - "description": "Sets the access control policy for a Queue. Replaces any existing\npolicy.\n\nNote: The Cloud Console does not check queue-level IAM permissions yet.\nProject-level permissions are required to use the Cloud Console.\n\nAuthorization requires the following [Google IAM](/iam) permission on the\nspecified resource parent:\n\n* `cloudtasks.queues.setIamPolicy`" - }, - "resume": { - "httpMethod": "POST", - "parameterOrder": [ - "name" - ], - "response": { - "$ref": "Queue" - }, - "parameters": { - "name": { - "description": "Required.\n\nThe queue name. For example:\n`projects/PROJECT_ID/location/LOCATION_ID/queues/QUEUE_ID`", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+/queues/[^/]+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v2beta2/projects/{projectsId}/locations/{locationsId}/queues/{queuesId}:resume", - "id": "cloudtasks.projects.locations.queues.resume", - "path": "v2beta2/{+name}:resume", - "request": { - "$ref": "ResumeQueueRequest" - }, - "description": "Resume a queue.\n\nThis method resumes a queue after it has been\nQueue.State.PAUSED or Queue.State.DISABLED. The state of\na queue is stored in Queue.state; after calling this method it\nwill be set to Queue.State.RUNNING.\n\nWARNING: Resuming many high-QPS queues at the same time can\nlead to target overloading. If you are resuming high-QPS\nqueues, follow the 500/50/5 pattern described in\n[Managing Cloud Tasks Scaling Risks](/cloud-tasks/pdfs/managing-cloud-tasks-scaling-risks-2017-06-05.pdf)." - }, - "getIamPolicy": { - "parameters": { - "resource": { - "location": "path", - "description": "REQUIRED: The resource for which the policy is being requested.\nSee the operation documentation for the appropriate value for this field.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+/queues/[^/]+$" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v2beta2/projects/{projectsId}/locations/{locationsId}/queues/{queuesId}:getIamPolicy", - "path": "v2beta2/{+resource}:getIamPolicy", - "id": "cloudtasks.projects.locations.queues.getIamPolicy", - "request": { - "$ref": "GetIamPolicyRequest" - }, - "description": "Gets the access control policy for a Queue.\nReturns an empty policy if the resource exists and does not have a policy\nset.\n\nAuthorization requires the following [Google IAM](/iam) permission on the\nspecified resource parent:\n\n* `cloudtasks.queues.getIamPolicy`", - "response": { - "$ref": "Policy" - }, - "parameterOrder": [ - "resource" - ], - "httpMethod": "POST" - }, - "patch": { - "description": "Updates a queue.\n\nThis method creates the queue if it does not exist and updates\nthe queue if it does exist.\n\nQueues created with this method allow tasks to live for a maximum of 31\ndays. After a task is 31 days old, the task will be deleted regardless of whether\nit was dispatched or not.\n\nWARNING: Using this method may have unintended side effects if you are\nusing an App Engine `queue.yaml` or `queue.xml` file to manage your queues.\nRead\n[Overview of Queue Management and queue.yaml](/cloud-tasks/docs/queue-yaml)\ncarefully before using this method.", - "request": { - "$ref": "Queue" - }, - "response": { - "$ref": "Queue" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "PATCH", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "name": { - "location": "path", - "description": "The queue name.\n\nThe queue name must have the following format:\n`projects/PROJECT_ID/locations/LOCATION_ID/queues/QUEUE_ID`\n\n* `PROJECT_ID` can contain letters ([A-Za-z]), numbers ([0-9]),\n hyphens (-), colons (:), or periods (.).\n For more information, see\n [Identifying projects](/resource-manager/docs/creating-managing-projects#identifying_projects)\n* `LOCATION_ID` is the canonical ID for the queue's location.\n The list of available locations can be obtained by calling\n google.cloud.location.Locations.ListLocations.\n For more information, see https://cloud.google.com/about/locations/.\n* `QUEUE_ID` can contain letters ([A-Za-z]), numbers ([0-9]), or\n hyphens (-). The maximum length is 100 characters.\n\nCaller-specified and required in CreateQueueRequest, after which\nit becomes output only.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+/queues/[^/]+$" - }, - "updateMask": { - "location": "query", - "description": "A mask used to specify which fields of the queue are being updated.\n\nIf empty, then all fields will be updated.", - "format": "google-fieldmask", - "type": "string" - } - }, - "flatPath": "v2beta2/projects/{projectsId}/locations/{locationsId}/queues/{queuesId}", - "path": "v2beta2/{+name}", - "id": "cloudtasks.projects.locations.queues.patch" - }, - "get": { - "description": "Gets a queue.", - "response": { - "$ref": "Queue" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "GET", - "parameters": { - "name": { - "pattern": "^projects/[^/]+/locations/[^/]+/queues/[^/]+$", - "location": "path", - "description": "Required.\n\nThe resource name of the queue. For example:\n`projects/PROJECT_ID/locations/LOCATION_ID/queues/QUEUE_ID`", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v2beta2/projects/{projectsId}/locations/{locationsId}/queues/{queuesId}", - "path": "v2beta2/{+name}", - "id": "cloudtasks.projects.locations.queues.get" - }, - "purge": { - "flatPath": "v2beta2/projects/{projectsId}/locations/{locationsId}/queues/{queuesId}:purge", - "id": "cloudtasks.projects.locations.queues.purge", - "path": "v2beta2/{+name}:purge", - "request": { - "$ref": "PurgeQueueRequest" - }, - "description": "Purges a queue by deleting all of its tasks.\n\nAll tasks created before this method is called are permanently deleted.\n\nPurge operations can take up to one minute to take effect. Tasks\nmight be dispatched before the purge takes effect. A purge is irreversible.", - "httpMethod": "POST", - "parameterOrder": [ - "name" - ], - "response": { - "$ref": "Queue" - }, - "parameters": { - "name": { - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+/queues/[^/]+$", - "location": "path", - "description": "Required.\n\nThe queue name. For example:\n`projects/PROJECT_ID/location/LOCATION_ID/queues/QUEUE_ID`" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "testIamPermissions": { - "response": { - "$ref": "TestIamPermissionsResponse" - }, - "parameterOrder": [ - "resource" - ], - "httpMethod": "POST", - "parameters": { - "resource": { - "description": "REQUIRED: The resource for which the policy detail is being requested.\nSee the operation documentation for the appropriate value for this field.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+/queues/[^/]+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v2beta2/projects/{projectsId}/locations/{locationsId}/queues/{queuesId}:testIamPermissions", - "path": "v2beta2/{+resource}:testIamPermissions", - "id": "cloudtasks.projects.locations.queues.testIamPermissions", - "request": { - "$ref": "TestIamPermissionsRequest" - }, - "description": "Returns permissions that a caller has on a Queue.\nIf the resource does not exist, this will return an empty set of\npermissions, not a google.rpc.Code.NOT_FOUND error.\n\nNote: This operation is designed to be used for building permission-aware\nUIs and command-line tools, not for authorization checking. This operation\nmay \"fail open\" without warning." - }, - "pause": { - "flatPath": "v2beta2/projects/{projectsId}/locations/{locationsId}/queues/{queuesId}:pause", - "id": "cloudtasks.projects.locations.queues.pause", - "path": "v2beta2/{+name}:pause", - "request": { - "$ref": "PauseQueueRequest" - }, - "description": "Pauses the queue.\n\nIf a queue is paused then the system will stop executing the\ntasks in the queue until it is resumed via\nCloudTasks.ResumeQueue. Tasks can still be added when the\nqueue is paused. The state of the queue is stored in\nQueue.state; if paused it will be set to\nQueue.State.PAUSED.", - "httpMethod": "POST", - "parameterOrder": [ - "name" - ], - "response": { - "$ref": "Queue" - }, - "parameters": { - "name": { - "pattern": "^projects/[^/]+/locations/[^/]+/queues/[^/]+$", - "location": "path", - "description": "Required.\n\nThe queue name. For example:\n`projects/PROJECT_ID/location/LOCATION_ID/queues/QUEUE_ID`", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "delete": { - "parameters": { - "name": { - "description": "Required.\n\nThe queue name. For example:\n`projects/PROJECT_ID/locations/LOCATION_ID/queues/QUEUE_ID`", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+/queues/[^/]+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v2beta2/projects/{projectsId}/locations/{locationsId}/queues/{queuesId}", - "path": "v2beta2/{+name}", - "id": "cloudtasks.projects.locations.queues.delete", - "description": "Deletes a queue.\n\nThis command will delete the queue even if it has tasks in it.\n\nNote: If you delete a queue, a queue with the same name can't be created\nfor 7 days.\n\nWARNING: Using this method may have unintended side effects if you are\nusing an App Engine `queue.yaml` or `queue.xml` file to manage your queues.\nRead\n[Overview of Queue Management and queue.yaml](/cloud-tasks/docs/queue-yaml)\ncarefully before using this method.", - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "DELETE" - } - } - } - } + "type": "array" + }, + "message": { + "description": "A developer-facing error message, which should be in English. Any\nuser-facing error message should be localized and sent in the\ngoogle.rpc.Status.details field, or localized by the client.", + "type": "string" } - } + }, + "type": "object" + }, + "Task": { + "description": "A unit of scheduled work.", + "id": "Task", + "properties": { + "appEngineHttpRequest": { + "$ref": "AppEngineHttpRequest", + "description": "App Engine HTTP request that is sent to the task's target. Can\nbe set only if\napp_engine_http_target is set\non the queue.\n\nAn App Engine task is a task that has AppEngineHttpRequest set." + }, + "createTime": { + "description": "Output only. The time that the task was created.\n\n`create_time` will be truncated to the nearest second.", + "format": "google-datetime", + "type": "string" + }, + "name": { + "description": "The task name.\n\nThe task name must have the following format:\n`projects/PROJECT_ID/locations/LOCATION_ID/queues/QUEUE_ID/tasks/TASK_ID`\n\n* `PROJECT_ID` can contain letters ([A-Za-z]), numbers ([0-9]),\n hyphens (-), colons (:), or periods (.).\n For more information, see\n [Identifying projects](/resource-manager/docs/creating-managing-projects#identifying_projects)\n* `LOCATION_ID` is the canonical ID for the task's location.\n The list of available locations can be obtained by calling\n ListLocations.\n For more information, see https://cloud.google.com/about/locations/.\n* `QUEUE_ID` can contain letters ([A-Za-z]), numbers ([0-9]), or\n hyphens (-). The maximum length is 100 characters.\n* `TASK_ID` can contain only letters ([A-Za-z]), numbers ([0-9]),\n hyphens (-), or underscores (_). The maximum length is 500 characters.\n\nOptionally caller-specified in CreateTask.", + "type": "string" + }, + "pullMessage": { + "$ref": "PullMessage", + "description": "LeaseTasks to process the task. Can be\nset only if pull_target is set on the queue.\n\nA pull task is a task that has PullMessage set." + }, + "scheduleTime": { + "description": "The time when the task is scheduled to be attempted.\n\nFor App Engine queues, this is when the task will be attempted or retried.\n\nFor pull queues, this is the time when the task is available to\nbe leased; if a task is currently leased, this is the time when\nthe current lease expires, that is, the time that the task was\nleased plus the lease_duration.\n\n`schedule_time` will be truncated to the nearest microsecond.", + "format": "google-datetime", + "type": "string" + }, + "status": { + "$ref": "TaskStatus", + "description": "Output only. The task status." + }, + "view": { + "description": "Output only. The view specifies which subset of the Task has\nbeen returned.", + "enum": [ + "VIEW_UNSPECIFIED", + "BASIC", + "FULL" + ], + "enumDescriptions": [ + "Unspecified. Defaults to BASIC.", + "The basic view omits fields which can be large or can contain\nsensitive data.\n\nThis view does not include the\n(payload in AppEngineHttpRequest and\npayload in PullMessage). These payloads are\ndesirable to return only when needed, because they can be large\nand because of the sensitivity of the data that you choose to\nstore in it.", + "All information is returned.\n\nAuthorization for FULL requires\n`cloudtasks.tasks.fullView` [Google IAM](https://cloud.google.com/iam/)\npermission on the Queue resource." + ], + "type": "string" + } + }, + "type": "object" + }, + "TaskStatus": { + "description": "Status of the task.", + "id": "TaskStatus", + "properties": { + "attemptDispatchCount": { + "description": "Output only. The number of attempts dispatched.\n\nThis count includes tasks which have been dispatched but haven't\nreceived a response.", + "format": "int32", + "type": "integer" + }, + "attemptResponseCount": { + "description": "Output only. The number of attempts which have received a response.\n\nThis field is not calculated for\n[pull tasks](google.cloud.tasks.v2beta2.PullTaskTarget).", + "format": "int32", + "type": "integer" + }, + "firstAttemptStatus": { + "$ref": "AttemptStatus", + "description": "Output only. The status of the task's first attempt.\n\nOnly dispatch_time will be set.\nThe other AttemptStatus information is not retained by Cloud Tasks.\n\nThis field is not calculated for\n[pull tasks](google.cloud.tasks.v2beta2.PullTaskTarget)." + }, + "lastAttemptStatus": { + "$ref": "AttemptStatus", + "description": "Output only. The status of the task's last attempt.\n\nThis field is not calculated for\n[pull tasks](google.cloud.tasks.v2beta2.PullTaskTarget)." + } + }, + "type": "object" + }, + "TestIamPermissionsRequest": { + "description": "Request message for `TestIamPermissions` method.", + "id": "TestIamPermissionsRequest", + "properties": { + "permissions": { + "description": "The set of permissions to check for the `resource`. Permissions with\nwildcards (such as '*' or 'storage.*') are not allowed. For more\ninformation see\n[IAM Overview](https://cloud.google.com/iam/docs/overview#permissions).", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "TestIamPermissionsResponse": { + "description": "Response message for `TestIamPermissions` method.", + "id": "TestIamPermissionsResponse", + "properties": { + "permissions": { + "description": "A subset of `TestPermissionsRequest.permissions` that the caller is\nallowed.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" } }, - "parameters": { - "prettyPrint": { - "location": "query", - "description": "Returns response with indentations and line breaks.", - "type": "boolean", - "default": "true" - }, - "fields": { - "location": "query", - "description": "Selector specifying which fields to include in a partial response.", - "type": "string" - }, - "uploadType": { - "location": "query", - "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", - "type": "string" - }, - "$.xgafv": { - "enum": [ - "1", - "2" - ], - "description": "V1 error format.", - "type": "string", - "enumDescriptions": [ - "v1 error format", - "v2 error format" - ], - "location": "query" - }, - "callback": { - "location": "query", - "description": "JSONP", - "type": "string" - }, - "alt": { - "enum": [ - "json", - "media", - "proto" - ], - "type": "string", - "enumDescriptions": [ - "Responses with Content-Type of application/json", - "Media download with context-dependent Content-Type", - "Responses with Content-Type of application/x-protobuf" - ], - "location": "query", - "description": "Data format for response.", - "default": "json" - }, - "access_token": { - "location": "query", - "description": "OAuth access token.", - "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.", - "type": "string", - "location": "query" - }, - "quotaUser": { - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", - "type": "string", - "location": "query" - }, - "pp": { - "description": "Pretty-print response.", - "type": "boolean", - "default": "true", - "location": "query" - }, - "oauth_token": { - "description": "OAuth 2.0 token for the current user.", - "type": "string", - "location": "query" - }, - "bearer_token": { - "description": "OAuth bearer token.", - "type": "string", - "location": "query" - }, - "upload_protocol": { - "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", - "type": "string", - "location": "query" - } - }, - "version": "v2beta2", - "baseUrl": "https://cloudtasks.googleapis.com/", - "kind": "discovery#restDescription", - "description": "Manages the execution of large numbers of distributed requests. Cloud Tasks is in Alpha.", "servicePath": "", - "basePath": "", - "id": "cloudtasks:v2beta2", - "documentationLink": "https://cloud.google.com/cloud-tasks/", - "revision": "20180120" -} + "title": "Cloud Tasks API", + "version": "v2beta2", + "version_module": true +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/cloudtasks/v2beta2/cloudtasks-gen.go b/vendor/google.golang.org/api/cloudtasks/v2beta2/cloudtasks-gen.go index 0731c1abb..7a6cb0184 100644 --- a/vendor/google.golang.org/api/cloudtasks/v2beta2/cloudtasks-gen.go +++ b/vendor/google.golang.org/api/cloudtasks/v2beta2/cloudtasks-gen.go @@ -122,15 +122,15 @@ type ProjectsLocationsQueuesTasksService struct { // AcknowledgeTaskRequest: Request message for acknowledging a task // using -// CloudTasks.AcknowledgeTask. +// AcknowledgeTask. type AcknowledgeTaskRequest struct { // ScheduleTime: Required. // // The task's current schedule time, available in the - // Task.schedule_time - // returned in LeaseTasksResponse.tasks or - // CloudTasks.RenewLease. This restriction is to ensure that your - // worker currently holds the lease. + // schedule_time returned by + // LeaseTasks response or + // RenewLease response. This restriction is + // to ensure that your worker currently holds the lease. ScheduleTime string `json:"scheduleTime,omitempty"` // ForceSendFields is a list of field names (e.g. "ScheduleTime") to @@ -164,7 +164,7 @@ func (s *AcknowledgeTaskRequest) MarshalJSON() ([]byte, error) { // // This proto can only be used for tasks in a queue which // has -// Queue.app_engine_http_target set. +// app_engine_http_target set. // // Using AppEngineHttpRequest // requires @@ -188,16 +188,17 @@ func (s *AcknowledgeTaskRequest) MarshalJSON() ([]byte, error) { // is // delivered to can be set at the queue-level or task-level: // -// * If set, AppEngineHttpTarget.app_engine_routing_override is used -// for -// all tasks in the queue, no matter what the setting is for the +// * If set, +// app_engine_routing_override +// is used for all tasks in the queue, no matter what the setting +// is for the // task-level app_engine_routing. // // // The `url` that the task will be sent to is: // -// * `url =` AppEngineRouting.host `+` -// AppEngineHttpRequest.relative_url +// * `url =` host `+` +// relative_url // // The task attempt has succeeded if the app's request handler // returns @@ -214,9 +215,9 @@ func (s *AcknowledgeTaskRequest) MarshalJSON() ([]byte, error) { type AppEngineHttpRequest struct { // AppEngineRouting: Task-level setting for App Engine routing. // - // If set, AppEngineHttpTarget.app_engine_routing_override is used - // for - // all tasks in the queue, no matter what the setting is for + // If set, + // app_engine_routing_override + // is used for all tasks in the queue, no matter what the setting is for // the // task-level app_engine_routing. AppEngineRouting *AppEngineRouting `json:"appEngineRouting,omitempty"` @@ -238,19 +239,18 @@ type AppEngineHttpRequest struct { // "AppEngine-Google; (+http://code.google.com/appengine)" to the // modified `User-Agent`. // - // If the task has an AppEngineHttpRequest.payload, Cloud Tasks sets - // the - // following headers: + // If the task has a payload, Cloud + // Tasks sets the following headers: // // * `Content-Type`: By default, the `Content-Type` header is set to // "application/octet-stream". The default can be overridden by - // explictly + // explicitly // setting `Content-Type` to a particular media type when the // [task is // created](google.cloud.tasks.v2beta2.CloudTasks.CreateTask). // For example, `Content-Type` can be set to "application/json". // * `Content-Length`: This is computed by Cloud Tasks. This value is - // output only. It cannot be changed. + // output only. It cannot be changed. // // The headers below cannot be set or overridden: // @@ -273,7 +273,7 @@ type AppEngineHttpRequest struct { // or // the size, there is a limit on the maximum size of the Task. For // more - // information, see the CloudTasks.CreateTask documentation. + // information, see the CreateTask documentation. Headers map[string]string `json:"headers,omitempty"` // HttpMethod: The HTTP method to use for the request. The default is @@ -365,10 +365,8 @@ type AppEngineHttpTarget struct { // AppEngineRoutingOverride: Overrides for the // task-level app_engine_routing. // - // If set, AppEngineHttpTarget.app_engine_routing_override is used - // for - // all tasks in the queue, no matter what the setting is for - // the + // If set, `app_engine_routing_override` is used for all tasks in + // the queue, no matter what the setting is for the // task-level app_engine_routing. AppEngineRoutingOverride *AppEngineRouting `json:"appEngineRoutingOverride,omitempty"` @@ -437,47 +435,53 @@ type AppEngineRouting struct { // Engine // SDK use a custom domain name. // - // * `service =` AppEngineRouting.service + // * `service =` service // - // * `version =` AppEngineRouting.version + // * `version =` version // // * `version_dot_service =` - // AppEngineRouting.version `+ '.' +` AppEngineRouting.service + // version `+ '.' +` + // service // - // * `instance =` AppEngineRouting.instance + // * `instance =` instance // // * `instance_dot_service =` - // AppEngineRouting.instance `+ '.' +` AppEngineRouting.service + // instance `+ '.' +` + // service // // * `instance_dot_version =` - // AppEngineRouting.instance `+ '.' +` AppEngineRouting.version + // instance `+ '.' +` + // version // // * `instance_dot_version_dot_service =` - // AppEngineRouting.instance `+ '.' +` - // AppEngineRouting.version `+ '.' +` AppEngineRouting.service + // instance `+ '.' +` + // version `+ '.' +` + // service // - // If AppEngineRouting.service is empty, then the task will be sent + // If service is empty, then the task will be sent // to the service which is the default service when the task is // attempted. // - // If AppEngineRouting.version is empty, then the task will be sent + // If version is empty, then the task will be sent // to the version which is the default version when the task is // attempted. // - // If AppEngineRouting.instance is empty, then the task will be sent - // to an instance which is available when the task is attempted. - // - // When AppEngineRouting.service is "default", - // AppEngineRouting.version is "default", and - // AppEngineRouting.instance is empty, AppEngineRouting.host + // If instance is empty, then the task + // will be sent to an instance which is available when the task // is - // shortened to just the `application_domain_name`. - // - // If AppEngineRouting.service, AppEngineRouting.version, - // or - // AppEngineRouting.instance is invalid, then the task will be sent - // to the default version of the default service when the task is // attempted. + // + // When service is "default", + // version is "default", and + // instance is empty, + // host is shortened to just the + // `application_domain_name`. + // + // If service, + // version, or + // instance is invalid, then the task + // will be sent to the default version of the default service when + // the task is attempted. Host string `json:"host,omitempty"` // Instance: App instance. @@ -504,21 +508,17 @@ type AppEngineRouting struct { // default // service when the task is attempted ("default"). // - // For some queues or tasks which were created using the App Engine Task - // Queue - // API, AppEngineRouting.host is not parsable - // into - // AppEngineRouting.service, AppEngineRouting.version, - // and - // AppEngineRouting.instance. For example, some tasks which were - // created - // using the App Engine SDK use a custom domain name; custom domains are - // not - // parsed by Cloud Tasks. If AppEngineRouting.host is not parsable, - // then - // AppEngineRouting.service, AppEngineRouting.version, - // and - // AppEngineRouting.instance are the empty string. + // For some queues or tasks which were created using the App Engine + // Task Queue API, host is not parsable + // into service, + // version, and + // instance. For example, some tasks + // which were created using the App Engine SDK use a custom domain + // name; custom domains are not parsed by Cloud Tasks. If + // host is not parsable, then + // service, + // version, and + // instance are the empty string. Service string `json:"service,omitempty"` // Version: App version. @@ -527,21 +527,17 @@ type AppEngineRouting struct { // default // version when the task is attempted ("default"). // - // For some queues or tasks which were created using the App Engine Task - // Queue - // API, AppEngineRouting.host is not parsable - // into - // AppEngineRouting.service, AppEngineRouting.version, - // and - // AppEngineRouting.instance. For example, some tasks which were - // created - // using the App Engine SDK use a custom domain name; custom domains are - // not - // parsed by Cloud Tasks. If AppEngineRouting.host is not parsable, - // then - // AppEngineRouting.service, AppEngineRouting.version, - // and - // AppEngineRouting.instance are the empty string. + // For some queues or tasks which were created using the App Engine + // Task Queue API, host is not parsable + // into service, + // version, and + // instance. For example, some tasks + // which were created using the App Engine SDK use a custom domain + // name; custom domains are not parsed by Cloud Tasks. If + // host is not parsable, then + // service, + // version, and + // instance are the empty string. Version string `json:"version,omitempty"` // ForceSendFields is a list of field names (e.g. "Host") to @@ -686,13 +682,13 @@ func (s *Binding) MarshalJSON() ([]byte, error) { // CancelLeaseRequest: Request message for canceling a lease // using -// CloudTasks.CancelLease. +// CancelLease. type CancelLeaseRequest struct { // ResponseView: The response_view specifies which subset of the Task // will be // returned. // - // By default response_view is Task.View.BASIC; not all + // By default response_view is BASIC; not all // information is retrieved by default because some data, such // as // payloads, might be desirable to return only when needed because @@ -700,10 +696,10 @@ type CancelLeaseRequest struct { // it // contains. // - // Authorization for Task.View.FULL requires - // `cloudtasks.tasks.fullView` - // [Google IAM](/iam/) permission on the - // Task.name resource. + // Authorization for FULL requires + // `cloudtasks.tasks.fullView` [Google IAM](/iam/) permission on + // the + // Task resource. // // Possible values: // "VIEW_UNSPECIFIED" - Unspecified. Defaults to BASIC. @@ -711,25 +707,27 @@ type CancelLeaseRequest struct { // contain // sensitive data. // - // This view does not include (AppEngineHttpRequest.payload - // and PullMessage.payload). These payloads are desirable to - // return only when needed, because they can be large and because - // of the sensitivity of the data that you choose to store in it. + // This view does not include the + // (payload in AppEngineHttpRequest and + // payload in PullMessage). These payloads are + // desirable to return only when needed, because they can be large + // and because of the sensitivity of the data that you choose to + // store in it. // "FULL" - All information is returned. // - // Authorization for Task.View.FULL requires + // Authorization for FULL requires // `cloudtasks.tasks.fullView` [Google // IAM](https://cloud.google.com/iam/) - // permission on the Queue.name resource. + // permission on the Queue resource. ResponseView string `json:"responseView,omitempty"` // ScheduleTime: Required. // // The task's current schedule time, available in the - // Task.schedule_time - // returned in LeaseTasksResponse.tasks or - // CloudTasks.RenewLease. This restriction is to ensure that your - // worker currently holds the lease. + // schedule_time returned by + // LeaseTasks response or + // RenewLease response. This restriction is + // to ensure that your worker currently holds the lease. ScheduleTime string `json:"scheduleTime,omitempty"` // ForceSendFields is a list of field names (e.g. "ResponseView") to @@ -755,13 +753,13 @@ func (s *CancelLeaseRequest) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -// CreateTaskRequest: Request message for CloudTasks.CreateTask. +// CreateTaskRequest: Request message for CreateTask. type CreateTaskRequest struct { // ResponseView: The response_view specifies which subset of the Task // will be // returned. // - // By default response_view is Task.View.BASIC; not all + // By default response_view is BASIC; not all // information is retrieved by default because some data, such // as // payloads, might be desirable to return only when needed because @@ -769,10 +767,10 @@ type CreateTaskRequest struct { // it // contains. // - // Authorization for Task.View.FULL requires - // `cloudtasks.tasks.fullView` - // [Google IAM](/iam/) permission on the - // Task.name resource. + // Authorization for FULL requires + // `cloudtasks.tasks.fullView` [Google IAM](/iam/) permission on + // the + // Task resource. // // Possible values: // "VIEW_UNSPECIFIED" - Unspecified. Defaults to BASIC. @@ -780,16 +778,18 @@ type CreateTaskRequest struct { // contain // sensitive data. // - // This view does not include (AppEngineHttpRequest.payload - // and PullMessage.payload). These payloads are desirable to - // return only when needed, because they can be large and because - // of the sensitivity of the data that you choose to store in it. + // This view does not include the + // (payload in AppEngineHttpRequest and + // payload in PullMessage). These payloads are + // desirable to return only when needed, because they can be large + // and because of the sensitivity of the data that you choose to + // store in it. // "FULL" - All information is returned. // - // Authorization for Task.View.FULL requires + // Authorization for FULL requires // `cloudtasks.tasks.fullView` [Google // IAM](https://cloud.google.com/iam/) - // permission on the Queue.name resource. + // permission on the Queue resource. ResponseView string `json:"responseView,omitempty"` // Task: Required. @@ -800,21 +800,21 @@ type CreateTaskRequest struct { // format: // `projects/PROJECT_ID/locations/LOCATION_ID/queues/QUEUE_ID/tas // ks/TASK_ID`. - // The user can optionally specify a name for the task in - // Task.name. If a name is not specified then the system will - // generate a random unique task id, which will be returned in + // The user can optionally specify a task name. If a + // name is not specified then the system will generate a random + // unique task id, which will be set in the task returned in // the - // response's Task.name. + // response. // - // If Task.schedule_time is not set or is in the past then Cloud - // Tasks will set it to the current time. + // If schedule_time is not set or is in the + // past then Cloud Tasks will set it to the current time. // // Task De-duplication: // // Explicitly specifying a task ID enables task de-duplication. If // a task's ID is identical to that of an existing task or a task // that was deleted or completed recently then the call will fail - // with google.rpc.Code.ALREADY_EXISTS. + // with ALREADY_EXISTS. // If the task's queue was created using Cloud Tasks, then another task // with // the same name can't be created for ~1hour after the original task @@ -826,7 +826,7 @@ type CreateTaskRequest struct { // // Because there is an extra lookup cost to identify duplicate // task - // names, these CloudTasks.CreateTask calls have significantly + // names, these CreateTask calls have significantly // increased latency. Using hashed strings for the task id or for // the prefix of the task id is recommended. Choosing task ids that // are sequential or have sequential prefixes, for example using @@ -884,14 +884,14 @@ type GetIamPolicyRequest struct { } // LeaseTasksRequest: Request message for leasing tasks using -// CloudTasks.LeaseTasks. +// LeaseTasks. type LeaseTasksRequest struct { // Filter: `filter` can be used to specify a subset of tasks to // lease. // // When `filter` is set to `tag=` then the - // LeaseTasksResponse will contain only tasks whose - // PullMessage.tag is equal to ``. `` must be + // response will contain only tasks whose + // tag is equal to ``. `` must be // less than 500 characters. // // When `filter` is set to `tag_function=oldest_tag()`, only tasks which @@ -912,37 +912,23 @@ type LeaseTasksRequest struct { // oldest task (ordered by schedule time). // // SDK compatibility: Although the SDK allows tags to be either - // string or - // [bytes](/appengine/docs/standard/java/javadoc/com/google/appengine/api - // /taskqueue/TaskOptions.html#tag-byte:A-), - // only UTF-8 encoded tags can be used in Cloud Tasks. Tag which aren't - // UTF-8 - // encoded can't be used in LeaseTasksRequest.filter and won't display - // in - // PullMessage.tag. + // string + // or + // [bytes](/appengine/docs/standard/java/javadoc/com/google/appengine/ + // api/taskqueue/TaskOptions.html#tag-byte:A-), + // only UTF-8 encoded tags can be used in Cloud Tasks. Tag which + // aren't UTF-8 encoded can't be used in the + // filter and the task's + // tag will be displayed as empty in Cloud Tasks. Filter string `json:"filter,omitempty"` - // LeaseDuration: The duration of the lease. - // - // Each task returned in the LeaseTasksResponse will have - // its - // Task.schedule_time set to the current time plus the - // `lease_duration`. A task that has been returned in - // a - // LeaseTasksResponse is leased -- that task will not be - // returned in a different LeaseTasksResponse before - // the - // Task.schedule_time. - // - // After the worker has successfully finished the work - // associated with the task, the worker must - // call - // CloudTasks.AcknowledgeTask. If the task is not acknowledged - // via CloudTasks.AcknowledgeTask before the - // Task.schedule_time then it will be returned in a - // later - // LeaseTasksResponse so that another worker can process - // it. + // LeaseDuration: + // After the worker has successfully finished the work associated + // with the task, the worker must call via + // AcknowledgeTask before the + // schedule_time. Otherwise the task will be + // returned to a later LeaseTasks call so + // that another worker can retry it. // // The maximum lease duration is 1 week. // `lease_duration` will be truncated to the nearest second. @@ -957,7 +943,7 @@ type LeaseTasksRequest struct { // will be // returned. // - // By default response_view is Task.View.BASIC; not all + // By default response_view is BASIC; not all // information is retrieved by default because some data, such // as // payloads, might be desirable to return only when needed because @@ -965,9 +951,10 @@ type LeaseTasksRequest struct { // it // contains. // - // Authorization for Task.View.FULL requires - // `cloudtasks.tasks.fullView` - // [Google IAM](/iam/) permission on the Task.name resource. + // Authorization for FULL requires + // `cloudtasks.tasks.fullView` [Google IAM](/iam/) permission on + // the + // Task resource. // // Possible values: // "VIEW_UNSPECIFIED" - Unspecified. Defaults to BASIC. @@ -975,16 +962,18 @@ type LeaseTasksRequest struct { // contain // sensitive data. // - // This view does not include (AppEngineHttpRequest.payload - // and PullMessage.payload). These payloads are desirable to - // return only when needed, because they can be large and because - // of the sensitivity of the data that you choose to store in it. + // This view does not include the + // (payload in AppEngineHttpRequest and + // payload in PullMessage). These payloads are + // desirable to return only when needed, because they can be large + // and because of the sensitivity of the data that you choose to + // store in it. // "FULL" - All information is returned. // - // Authorization for Task.View.FULL requires + // Authorization for FULL requires // `cloudtasks.tasks.fullView` [Google // IAM](https://cloud.google.com/iam/) - // permission on the Queue.name resource. + // permission on the Queue resource. ResponseView string `json:"responseView,omitempty"` // ForceSendFields is a list of field names (e.g. "Filter") to @@ -1011,7 +1000,7 @@ func (s *LeaseTasksRequest) MarshalJSON() ([]byte, error) { } // LeaseTasksResponse: Response message for leasing tasks using -// CloudTasks.LeaseTasks. +// LeaseTasks. type LeaseTasksResponse struct { // Tasks: The leased tasks. Tasks []*Task `json:"tasks,omitempty"` @@ -1080,14 +1069,13 @@ func (s *ListLocationsResponse) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -// ListQueuesResponse: Response message for CloudTasks.ListQueues. +// ListQueuesResponse: Response message for ListQueues. type ListQueuesResponse struct { // NextPageToken: A token to retrieve next page of results. // // To return the next page of results, call - // CloudTasks.ListQueues with this value as - // the - // ListQueuesRequest.page_token. + // ListQueues with this value as the + // page_token. // // If the next_page_token is empty, there are no more results. // @@ -1125,14 +1113,13 @@ func (s *ListQueuesResponse) MarshalJSON() ([]byte, error) { } // ListTasksResponse: Response message for listing tasks using -// CloudTasks.ListTasks. +// ListTasks. type ListTasksResponse struct { // NextPageToken: A token to retrieve next page of results. // // To return the next page of results, call - // CloudTasks.ListTasks with this value as - // the - // ListTasksRequest.page_token. + // ListTasks with this value as the + // page_token. // // If the next_page_token is empty, there are no more results. NextPageToken string `json:"nextPageToken,omitempty"` @@ -1169,6 +1156,11 @@ func (s *ListTasksResponse) MarshalJSON() ([]byte, error) { // Location: A resource that represents Google Cloud Platform location. type Location struct { + // DisplayName: The friendly name for this location, typically a nearby + // city name. + // For example, "Tokyo". + DisplayName string `json:"displayName,omitempty"` + // Labels: Cross-service attributes for the location. For example // // {"cloud.googleapis.com/region": "us-east1"} @@ -1192,7 +1184,7 @@ type Location struct { // server. googleapi.ServerResponse `json:"-"` - // ForceSendFields is a list of field names (e.g. "Labels") to + // ForceSendFields is a list of field names (e.g. "DisplayName") to // unconditionally include in API requests. By default, fields with // empty values are omitted from API requests. However, any non-pointer, // non-interface field appearing in ForceSendFields will be sent to the @@ -1200,10 +1192,10 @@ type Location struct { // used to include empty fields in Patch requests. ForceSendFields []string `json:"-"` - // NullFields is a list of field names (e.g. "Labels") to include in API - // requests with the JSON null value. By default, fields with empty - // values are omitted from API requests. However, any field with an - // empty value appearing in NullFields will be sent to the server as + // NullFields is a list of field names (e.g. "DisplayName") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as // null. It is an error if a field in this list has a non-empty value. // This may be used to include null fields in Patch requests. NullFields []string `json:"-"` @@ -1215,7 +1207,7 @@ func (s *Location) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -// PauseQueueRequest: Request message for CloudTasks.PauseQueue. +// PauseQueueRequest: Request message for PauseQueue. type PauseQueueRequest struct { } @@ -1312,11 +1304,11 @@ func (s *Policy) MarshalJSON() ([]byte, error) { // PullMessage: The pull message contains data that can be used by the // caller of -// CloudTasks.LeaseTasks to process the task. +// LeaseTasks to process the task. // // This proto can only be used for tasks in a queue which // has -// Queue.pull_target set. +// pull_target set. type PullMessage struct { // Payload: A data payload consumed by the worker to execute the task. Payload string `json:"payload,omitempty"` @@ -1325,10 +1317,11 @@ type PullMessage struct { // // Tags allow similar tasks to be processed in a batch. If you // label - // tasks with a tag, your worker can lease tasks - // with the same tag using LeaseTasksRequest.filter. For example, - // if you want to aggregate the events associated with a specific - // user once a day, you could tag tasks with the user ID. + // tasks with a tag, your worker can + // lease tasks with the same tag using + // filter. For example, if you want to + // aggregate the events associated with a specific user once a day, + // you could tag tasks with the user ID. // // The task's tag can only be set when the // task is created. @@ -1372,7 +1365,7 @@ func (s *PullMessage) MarshalJSON() ([]byte, error) { type PullTarget struct { } -// PurgeQueueRequest: Request message for CloudTasks.PurgeQueue. +// PurgeQueueRequest: Request message for PurgeQueue. type PurgeQueueRequest struct { } @@ -1402,15 +1395,15 @@ type Queue struct { // g_projects) // * `LOCATION_ID` is the canonical ID for the queue's location. // The list of available locations can be obtained by calling - // google.cloud.location.Locations.ListLocations. + // ListLocations. // For more information, see // https://cloud.google.com/about/locations/. // * `QUEUE_ID` can contain letters ([A-Za-z]), numbers ([0-9]), or // hyphens (-). The maximum length is 100 // characters. // - // Caller-specified and required in CreateQueueRequest, after which - // it becomes output only. + // Caller-specified and required in CreateQueue, + // after which it becomes output only. Name string `json:"name,omitempty"` // PullTarget: Pull target. @@ -1423,7 +1416,7 @@ type Queue struct { // All tasks that were created before this time // were purged. // - // A queue can be purged using CloudTasks.PurgeQueue, the + // A queue can be purged using PurgeQueue, the // [App Engine Task Queue SDK, or the Cloud // Console](/appengine/docs/standard/python/taskqueue/push/deleting-tasks // -and-queues#purging_all_tasks_from_a_queue). @@ -1434,21 +1427,19 @@ type Queue struct { // RateLimits: Rate limits for task dispatches. // - // Queue.rate_limits and Queue.retry_config are related because - // they - // both control task attempts however they control how tasks are - // attempted in - // different ways: + // rate_limits and + // retry_config are related because they both + // control task attempts however they control how tasks are + // attempted in different ways: // - // * Queue.rate_limits controls the total rate of dispatches from a - // queue - // (i.e. all traffic dispatched from the queue, regardless of whether - // the - // dispatch is from a first attempt or a retry). - // * Queue.retry_config controls what happens to particular a task - // after - // its first attempt fails. That is, Queue.retry_config controls task - // retries (the second attempt, third attempt, etc). + // * rate_limits controls the total rate of + // dispatches from a queue (i.e. all traffic dispatched from the + // queue, regardless of whether the dispatch is from a first + // attempt or a retry). + // * retry_config controls what happens to + // particular a task after its first attempt fails. That is, + // retry_config controls task retries (the + // second attempt, third attempt, etc). RateLimits *RateLimits `json:"rateLimits,omitempty"` // RetryConfig: Settings that determine the retry behavior. @@ -1471,31 +1462,29 @@ type Queue struct { // State: Output only. The state of the queue. // // `state` can only be changed by called - // CloudTasks.PauseQueue, CloudTasks.ResumeQueue, or + // PauseQueue, + // ResumeQueue, or // uploading // [queue.yaml/xml](/appengine/docs/python/config/queueref). - // Cl - // oudTasks.UpdateQueue cannot be used to change `state`. + // Up + // dateQueue cannot be used to change `state`. // // Possible values: // "STATE_UNSPECIFIED" - Unspecified state. // "RUNNING" - The queue is running. Tasks can be dispatched. // - // If the queue was created using Cloud Tasks and the queue has had - // no - // activity (method calls or task dispatches) for 30 days, the queue - // may - // take a few minutes to re-activate. Some method calls may - // return - // google.rpc.Code.NOT_FOUND and tasks may not be dispatched for a - // few - // minutes until the queue has been re-activated. + // If the queue was created using Cloud Tasks and the queue has + // had no activity (method calls or task dispatches) for 30 days, + // the queue may take a few minutes to re-activate. Some method + // calls may return NOT_FOUND and + // tasks may not be dispatched for a few minutes until the queue + // has been re-activated. // "PAUSED" - Tasks are paused by the user. If the queue is paused // then Cloud // Tasks will stop delivering tasks from it, but more tasks can // still be added to it by the user. When a pull queue is paused, - // all CloudTasks.LeaseTasks calls will return a - // `FAILED_PRECONDITION` error. + // all LeaseTasks calls will return a + // FAILED_PRECONDITION. // "DISABLED" - The queue is disabled. // // A queue becomes `DISABLED` @@ -1508,13 +1497,13 @@ type Queue struct { // queue. // // When a queue is disabled, tasks can still be added to a queue - // but the tasks are not dispatched and CloudTasks.LeaseTasks - // calls - // return a `FAILED_PRECONDITION` error. + // but the tasks are not dispatched and + // LeaseTasks calls return a + // `FAILED_PRECONDITION` error. // // To permanently delete this queue and all of its tasks, // call - // CloudTasks.DeleteQueue. + // DeleteQueue. State string `json:"state,omitempty"` // ServerResponse contains the HTTP response code and headers from the @@ -1572,11 +1561,12 @@ type RateLimits struct { // be // continuously refilled with new tokens based // on - // RateLimits.max_tasks_dispatched_per_second. + // max_tasks_dispatched_per_second. // - // Cloud Tasks will pick the value of `max_burst_size` based on the + // Cloud Tasks will pick the value of `max_burst_size` based on + // the // value of - // RateLimits.max_tasks_dispatched_per_second. + // max_tasks_dispatched_per_second. // // For App Engine queues that were created or updated // using @@ -1584,15 +1574,14 @@ type RateLimits struct { // to // [bucket_size](/appengine/docs/standard/python/config/queueref#bucke // t_size). - // Since `max_burst_size` is output only, if CloudTasks.UpdateQueue - // is - // called on a queue created by `queue.yaml/xml`, `max_burst_size` will - // be - // reset based on the value of - // RateLimits.max_tasks_dispatched_per_second, - // regardless of whether RateLimits.max_tasks_dispatched_per_second - // is - // updated. + // Since `max_burst_size` is output only, if + // UpdateQueue is called on a queue + // created by `queue.yaml/xml`, `max_burst_size` will be reset based + // on the value of + // max_tasks_dispatched_per_second, + // regardless of whether + // max_tasks_dispatched_per_second + // is updated. // MaxBurstSize int64 `json:"maxBurstSize,omitempty"` @@ -1630,11 +1619,10 @@ type RateLimits struct { // // * For App Engine queues, the maximum allowed value is 500. // * This field is output only for [pull - // queues](google.cloud.tasks.v2beta2.PullTarget). - // In addition to the `max_tasks_dispatched_per_second` limit, a - // maximum of - // 10 QPS of CloudTasks.LeaseTasks requests are allowed per pull - // queue. + // queues](google.cloud.tasks.v2beta2.PullTarget). In + // addition to the `max_tasks_dispatched_per_second` limit, a + // maximum of 10 QPS of LeaseTasks + // requests are allowed per pull queue. // // // This field has the same meaning as @@ -1679,8 +1667,9 @@ func (s *RateLimits) UnmarshalJSON(data []byte) error { return nil } -// RenewLeaseRequest: Request message for renewing a lease using -// CloudTasks.RenewLease. +// RenewLeaseRequest: Request message for renewing a lease +// using +// RenewLease. type RenewLeaseRequest struct { // LeaseDuration: Required. // @@ -1695,7 +1684,7 @@ type RenewLeaseRequest struct { // will be // returned. // - // By default response_view is Task.View.BASIC; not all + // By default response_view is BASIC; not all // information is retrieved by default because some data, such // as // payloads, might be desirable to return only when needed because @@ -1703,10 +1692,10 @@ type RenewLeaseRequest struct { // it // contains. // - // Authorization for Task.View.FULL requires - // `cloudtasks.tasks.fullView` - // [Google IAM](/iam/) permission on the - // Task.name resource. + // Authorization for FULL requires + // `cloudtasks.tasks.fullView` [Google IAM](/iam/) permission on + // the + // Task resource. // // Possible values: // "VIEW_UNSPECIFIED" - Unspecified. Defaults to BASIC. @@ -1714,25 +1703,27 @@ type RenewLeaseRequest struct { // contain // sensitive data. // - // This view does not include (AppEngineHttpRequest.payload - // and PullMessage.payload). These payloads are desirable to - // return only when needed, because they can be large and because - // of the sensitivity of the data that you choose to store in it. + // This view does not include the + // (payload in AppEngineHttpRequest and + // payload in PullMessage). These payloads are + // desirable to return only when needed, because they can be large + // and because of the sensitivity of the data that you choose to + // store in it. // "FULL" - All information is returned. // - // Authorization for Task.View.FULL requires + // Authorization for FULL requires // `cloudtasks.tasks.fullView` [Google // IAM](https://cloud.google.com/iam/) - // permission on the Queue.name resource. + // permission on the Queue resource. ResponseView string `json:"responseView,omitempty"` // ScheduleTime: Required. // // The task's current schedule time, available in the - // Task.schedule_time - // returned in LeaseTasksResponse.tasks or - // CloudTasks.RenewLease. This restriction is to ensure that your - // worker currently holds the lease. + // schedule_time returned by + // LeaseTasks response or + // RenewLease response. This restriction is + // to ensure that your worker currently holds the lease. ScheduleTime string `json:"scheduleTime,omitempty"` // ForceSendFields is a list of field names (e.g. "LeaseDuration") to @@ -1758,7 +1749,7 @@ func (s *RenewLeaseRequest) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -// ResumeQueueRequest: Request message for CloudTasks.ResumeQueue. +// ResumeQueueRequest: Request message for ResumeQueue. type ResumeQueueRequest struct { } @@ -1775,8 +1766,9 @@ type RetryConfig struct { // MaxBackoff: A task will be [scheduled](Task.schedule_time) for retry // between - // RetryConfig.min_backoff and RetryConfig.max_backoff duration after - // it fails, if the queue's RetryConfig specifies that the task should + // min_backoff and + // max_backoff duration after it fails, + // if the queue's RetryConfig specifies that the task should // be // retried. // @@ -1799,23 +1791,24 @@ type RetryConfig struct { // MaxDoublings: The time between retries will double `max_doublings` // times. // - // A task's retry interval starts at RetryConfig.min_backoff, - // then doubles `max_doublings` times, then increases linearly, - // and - // finally retries retries at intervals of - // RetryConfig.max_backoff up to max_attempts times. + // A task's retry interval starts at + // min_backoff, then doubles + // `max_doublings` times, then increases linearly, and finally + // retries retries at intervals of + // max_backoff up to + // max_attempts times. // - // For example, if RetryConfig.min_backoff is - // 10s, - // RetryConfig.max_backoff is 300s, and `max_doublings` is 3, - // then the a task will first be retried in 10s. The retry interval - // will double three times, and then increase linearly by 2^3 * - // 10s. - // Finally, the task will retry at intervals of - // RetryConfig.max_backoff until the task has been - // attempted - // `max_attempts` times. Thus, the requests will retry at 10s, 20s, - // 40s, 80s, 160s, 240s, 300s, 300s, .... + // For example, if min_backoff is 10s, + // max_backoff is 300s, and + // `max_doublings` is 3, then the a task will first be retried in + // 10s. The retry interval will double three times, and then + // increase linearly by 2^3 * 10s. Finally, the task will retry + // at + // intervals of max_backoff until the + // task has been attempted max_attempts + // times. Thus, the requests will retry at 10s, 20s, 40s, 80s, + // 160s, + // 240s, 300s, 300s, .... // // If unspecified when the queue is created, Cloud Tasks will pick // the @@ -1832,14 +1825,14 @@ type RetryConfig struct { MaxDoublings int64 `json:"maxDoublings,omitempty"` // MaxRetryDuration: If positive, `max_retry_duration` specifies the - // time limit for retrying a - // failed task, measured from when the task was first attempted. - // Once - // `max_retry_duration` time has passed *and* the task has been - // attempted - // RetryConfig.max_attempts times, no further attempts will be made - // and - // the task will be deleted. + // time limit for + // retrying a failed task, measured from when the task was + // first + // attempted. Once `max_retry_duration` time has passed *and* the + // task has been attempted max_attempts + // times, no further attempts will be made and the task will + // be + // deleted. // // If zero, then the task age is unlimited. // @@ -1863,8 +1856,9 @@ type RetryConfig struct { // MinBackoff: A task will be [scheduled](Task.schedule_time) for retry // between - // RetryConfig.min_backoff and RetryConfig.max_backoff duration after - // it fails, if the queue's RetryConfig specifies that the task should + // min_backoff and + // max_backoff duration after it fails, + // if the queue's RetryConfig specifies that the task should // be // retried. // @@ -1912,13 +1906,13 @@ func (s *RetryConfig) MarshalJSON() ([]byte, error) { // RunTaskRequest: Request message for forcing a task to run now // using -// CloudTasks.RunTask. +// RunTask. type RunTaskRequest struct { // ResponseView: The response_view specifies which subset of the Task // will be // returned. // - // By default response_view is Task.View.BASIC; not all + // By default response_view is BASIC; not all // information is retrieved by default because some data, such // as // payloads, might be desirable to return only when needed because @@ -1926,10 +1920,10 @@ type RunTaskRequest struct { // it // contains. // - // Authorization for Task.View.FULL requires - // `cloudtasks.tasks.fullView` - // [Google IAM](/iam/) permission on the - // Task.name resource. + // Authorization for FULL requires + // `cloudtasks.tasks.fullView` [Google IAM](/iam/) permission on + // the + // Task resource. // // Possible values: // "VIEW_UNSPECIFIED" - Unspecified. Defaults to BASIC. @@ -1937,16 +1931,18 @@ type RunTaskRequest struct { // contain // sensitive data. // - // This view does not include (AppEngineHttpRequest.payload - // and PullMessage.payload). These payloads are desirable to - // return only when needed, because they can be large and because - // of the sensitivity of the data that you choose to store in it. + // This view does not include the + // (payload in AppEngineHttpRequest and + // payload in PullMessage). These payloads are + // desirable to return only when needed, because they can be large + // and because of the sensitivity of the data that you choose to + // store in it. // "FULL" - All information is returned. // - // Authorization for Task.View.FULL requires + // Authorization for FULL requires // `cloudtasks.tasks.fullView` [Google // IAM](https://cloud.google.com/iam/) - // permission on the Queue.name resource. + // permission on the Queue resource. ResponseView string `json:"responseView,omitempty"` // ForceSendFields is a list of field names (e.g. "ResponseView") to @@ -2127,8 +2123,10 @@ func (s *Status) MarshalJSON() ([]byte, error) { // Task: A unit of scheduled work. type Task struct { // AppEngineHttpRequest: App Engine HTTP request that is sent to the - // task's target. Can be set - // only if Queue.app_engine_http_target is set. + // task's target. Can + // be set only if + // app_engine_http_target is set + // on the queue. // // An App Engine task is a task that has AppEngineHttpRequest set. AppEngineHttpRequest *AppEngineHttpRequest `json:"appEngineHttpRequest,omitempty"` @@ -2154,7 +2152,7 @@ type Task struct { // g_projects) // * `LOCATION_ID` is the canonical ID for the task's location. // The list of available locations can be obtained by calling - // google.cloud.location.Locations.ListLocations. + // ListLocations. // For more information, see // https://cloud.google.com/about/locations/. // * `QUEUE_ID` can contain letters ([A-Za-z]), numbers ([0-9]), or @@ -2163,14 +2161,11 @@ type Task struct { // hyphens (-), or underscores (_). The maximum length is 500 // characters. // - // Optionally caller-specified in CreateTaskRequest. + // Optionally caller-specified in CreateTask. Name string `json:"name,omitempty"` - // PullMessage: Pull message contains data that should be used by the - // caller of - // CloudTasks.LeaseTasks to process the task. Can be set only - // if - // Queue.pull_target is set. + // PullMessage: LeaseTasks to process the task. Can be + // set only if pull_target is set on the queue. // // A pull task is a task that has PullMessage set. PullMessage *PullMessage `json:"pullMessage,omitempty"` @@ -2184,7 +2179,7 @@ type Task struct { // For pull queues, this is the time when the task is available to // be leased; if a task is currently leased, this is the time when // the current lease expires, that is, the time that the task was - // leased plus the LeaseTasksRequest.lease_duration. + // leased plus the lease_duration. // // `schedule_time` will be truncated to the nearest microsecond. ScheduleTime string `json:"scheduleTime,omitempty"` @@ -2202,16 +2197,18 @@ type Task struct { // contain // sensitive data. // - // This view does not include (AppEngineHttpRequest.payload - // and PullMessage.payload). These payloads are desirable to - // return only when needed, because they can be large and because - // of the sensitivity of the data that you choose to store in it. + // This view does not include the + // (payload in AppEngineHttpRequest and + // payload in PullMessage). These payloads are + // desirable to return only when needed, because they can be large + // and because of the sensitivity of the data that you choose to + // store in it. // "FULL" - All information is returned. // - // Authorization for Task.View.FULL requires + // Authorization for FULL requires // `cloudtasks.tasks.fullView` [Google // IAM](https://cloud.google.com/iam/) - // permission on the Queue.name resource. + // permission on the Queue resource. View string `json:"view,omitempty"` // ServerResponse contains the HTTP response code and headers from the @@ -2263,7 +2260,7 @@ type TaskStatus struct { // FirstAttemptStatus: Output only. The status of the task's first // attempt. // - // Only AttemptStatus.dispatch_time will be set. + // Only dispatch_time will be set. // The other AttemptStatus information is not retained by Cloud // Tasks. // @@ -2736,7 +2733,7 @@ type ProjectsLocationsQueuesCreateCall struct { // Read // [Overview of Queue Management and // queue.yaml](/cloud-tasks/docs/queue-yaml) -// carefully before using this method. +// before using this method. func (r *ProjectsLocationsQueuesService) Create(parent string, queue *Queue) *ProjectsLocationsQueuesCreateCall { c := &ProjectsLocationsQueuesCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.parent = parent @@ -2830,7 +2827,7 @@ func (c *ProjectsLocationsQueuesCreateCall) Do(opts ...googleapi.CallOption) (*Q } return ret, nil // { - // "description": "Creates a queue.\n\nQueues created with this method allow tasks to live for a maximum of 31\ndays. After a task is 31 days old, the task will be deleted regardless of whether\nit was dispatched or not.\n\nWARNING: Using this method may have unintended side effects if you are\nusing an App Engine `queue.yaml` or `queue.xml` file to manage your queues.\nRead\n[Overview of Queue Management and queue.yaml](/cloud-tasks/docs/queue-yaml)\ncarefully before using this method.", + // "description": "Creates a queue.\n\nQueues created with this method allow tasks to live for a maximum of 31\ndays. After a task is 31 days old, the task will be deleted regardless of whether\nit was dispatched or not.\n\nWARNING: Using this method may have unintended side effects if you are\nusing an App Engine `queue.yaml` or `queue.xml` file to manage your queues.\nRead\n[Overview of Queue Management and queue.yaml](/cloud-tasks/docs/queue-yaml)\nbefore using this method.", // "flatPath": "v2beta2/projects/{projectsId}/locations/{locationsId}/queues", // "httpMethod": "POST", // "id": "cloudtasks.projects.locations.queues.create", @@ -2839,7 +2836,7 @@ func (c *ProjectsLocationsQueuesCreateCall) Do(opts ...googleapi.CallOption) (*Q // ], // "parameters": { // "parent": { - // "description": "Required.\n\nThe location name in which the queue will be created.\nFor example: `projects/PROJECT_ID/locations/LOCATION_ID`\n\nThe list of allowed locations can be obtained by calling Cloud\nTasks' implementation of\ngoogle.cloud.location.Locations.ListLocations.", + // "description": "Required.\n\nThe location name in which the queue will be created.\nFor example: `projects/PROJECT_ID/locations/LOCATION_ID`\n\nThe list of allowed locations can be obtained by calling Cloud\nTasks' implementation of\nListLocations.", // "location": "path", // "pattern": "^projects/[^/]+/locations/[^/]+$", // "required": true, @@ -2885,7 +2882,7 @@ type ProjectsLocationsQueuesDeleteCall struct { // Read // [Overview of Queue Management and // queue.yaml](/cloud-tasks/docs/queue-yaml) -// carefully before using this method. +// before using this method. func (r *ProjectsLocationsQueuesService) Delete(name string) *ProjectsLocationsQueuesDeleteCall { c := &ProjectsLocationsQueuesDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.name = name @@ -2973,7 +2970,7 @@ func (c *ProjectsLocationsQueuesDeleteCall) Do(opts ...googleapi.CallOption) (*E } return ret, nil // { - // "description": "Deletes a queue.\n\nThis command will delete the queue even if it has tasks in it.\n\nNote: If you delete a queue, a queue with the same name can't be created\nfor 7 days.\n\nWARNING: Using this method may have unintended side effects if you are\nusing an App Engine `queue.yaml` or `queue.xml` file to manage your queues.\nRead\n[Overview of Queue Management and queue.yaml](/cloud-tasks/docs/queue-yaml)\ncarefully before using this method.", + // "description": "Deletes a queue.\n\nThis command will delete the queue even if it has tasks in it.\n\nNote: If you delete a queue, a queue with the same name can't be created\nfor 7 days.\n\nWARNING: Using this method may have unintended side effects if you are\nusing an App Engine `queue.yaml` or `queue.xml` file to manage your queues.\nRead\n[Overview of Queue Management and queue.yaml](/cloud-tasks/docs/queue-yaml)\nbefore using this method.", // "flatPath": "v2beta2/projects/{projectsId}/locations/{locationsId}/queues/{queuesId}", // "httpMethod": "DELETE", // "id": "cloudtasks.projects.locations.queues.delete", @@ -3327,9 +3324,9 @@ func (c *ProjectsLocationsQueuesListCall) Filter(filter string) *ProjectsLocatio // // The maximum page size is 9800. If unspecified, the page size will // be the maximum. Fewer queues than requested might be returned, -// even if more queues exist; use -// ListQueuesResponse.next_page_token to determine if more -// queues exist. +// even if more queues exist; use the +// next_page_token in the +// response to determine if more queues exist. func (c *ProjectsLocationsQueuesListCall) PageSize(pageSize int64) *ProjectsLocationsQueuesListCall { c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) return c @@ -3342,10 +3339,10 @@ func (c *ProjectsLocationsQueuesListCall) PageSize(pageSize int64) *ProjectsLoca // To // request the next page of results, page_token must be the value // of -// ListQueuesResponse.next_page_token returned from the previous -// call to CloudTasks.ListQueues method. It is an error to -// switch the value of ListQueuesRequest.filter while iterating -// through pages. +// next_page_token returned +// from the previous call to ListQueues +// method. It is an error to switch the value of the +// filter while iterating through pages. func (c *ProjectsLocationsQueuesListCall) PageToken(pageToken string) *ProjectsLocationsQueuesListCall { c.urlParams_.Set("pageToken", pageToken) return c @@ -3459,13 +3456,13 @@ func (c *ProjectsLocationsQueuesListCall) Do(opts ...googleapi.CallOption) (*Lis // "type": "string" // }, // "pageSize": { - // "description": "Requested page size.\n\nThe maximum page size is 9800. If unspecified, the page size will\nbe the maximum. Fewer queues than requested might be returned,\neven if more queues exist; use\nListQueuesResponse.next_page_token to determine if more\nqueues exist.", + // "description": "Requested page size.\n\nThe maximum page size is 9800. If unspecified, the page size will\nbe the maximum. Fewer queues than requested might be returned,\neven if more queues exist; use the\nnext_page_token in the\nresponse to determine if more queues exist.", // "format": "int32", // "location": "query", // "type": "integer" // }, // "pageToken": { - // "description": "A token identifying the page of results to return.\n\nTo request the first page results, page_token must be empty. To\nrequest the next page of results, page_token must be the value of\nListQueuesResponse.next_page_token returned from the previous\ncall to CloudTasks.ListQueues method. It is an error to\nswitch the value of ListQueuesRequest.filter while iterating\nthrough pages.", + // "description": "A token identifying the page of results to return.\n\nTo request the first page results, page_token must be empty. To\nrequest the next page of results, page_token must be the value of\nnext_page_token returned\nfrom the previous call to ListQueues\nmethod. It is an error to switch the value of the\nfilter while iterating through pages.", // "location": "query", // "type": "string" // }, @@ -3538,7 +3535,7 @@ type ProjectsLocationsQueuesPatchCall struct { // Read // [Overview of Queue Management and // queue.yaml](/cloud-tasks/docs/queue-yaml) -// carefully before using this method. +// before using this method. func (r *ProjectsLocationsQueuesService) Patch(name string, queue *Queue) *ProjectsLocationsQueuesPatchCall { c := &ProjectsLocationsQueuesPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.name = name @@ -3641,7 +3638,7 @@ func (c *ProjectsLocationsQueuesPatchCall) Do(opts ...googleapi.CallOption) (*Qu } return ret, nil // { - // "description": "Updates a queue.\n\nThis method creates the queue if it does not exist and updates\nthe queue if it does exist.\n\nQueues created with this method allow tasks to live for a maximum of 31\ndays. After a task is 31 days old, the task will be deleted regardless of whether\nit was dispatched or not.\n\nWARNING: Using this method may have unintended side effects if you are\nusing an App Engine `queue.yaml` or `queue.xml` file to manage your queues.\nRead\n[Overview of Queue Management and queue.yaml](/cloud-tasks/docs/queue-yaml)\ncarefully before using this method.", + // "description": "Updates a queue.\n\nThis method creates the queue if it does not exist and updates\nthe queue if it does exist.\n\nQueues created with this method allow tasks to live for a maximum of 31\ndays. After a task is 31 days old, the task will be deleted regardless of whether\nit was dispatched or not.\n\nWARNING: Using this method may have unintended side effects if you are\nusing an App Engine `queue.yaml` or `queue.xml` file to manage your queues.\nRead\n[Overview of Queue Management and queue.yaml](/cloud-tasks/docs/queue-yaml)\nbefore using this method.", // "flatPath": "v2beta2/projects/{projectsId}/locations/{locationsId}/queues/{queuesId}", // "httpMethod": "PATCH", // "id": "cloudtasks.projects.locations.queues.patch", @@ -3650,7 +3647,7 @@ func (c *ProjectsLocationsQueuesPatchCall) Do(opts ...googleapi.CallOption) (*Qu // ], // "parameters": { // "name": { - // "description": "The queue name.\n\nThe queue name must have the following format:\n`projects/PROJECT_ID/locations/LOCATION_ID/queues/QUEUE_ID`\n\n* `PROJECT_ID` can contain letters ([A-Za-z]), numbers ([0-9]),\n hyphens (-), colons (:), or periods (.).\n For more information, see\n [Identifying projects](/resource-manager/docs/creating-managing-projects#identifying_projects)\n* `LOCATION_ID` is the canonical ID for the queue's location.\n The list of available locations can be obtained by calling\n google.cloud.location.Locations.ListLocations.\n For more information, see https://cloud.google.com/about/locations/.\n* `QUEUE_ID` can contain letters ([A-Za-z]), numbers ([0-9]), or\n hyphens (-). The maximum length is 100 characters.\n\nCaller-specified and required in CreateQueueRequest, after which\nit becomes output only.", + // "description": "The queue name.\n\nThe queue name must have the following format:\n`projects/PROJECT_ID/locations/LOCATION_ID/queues/QUEUE_ID`\n\n* `PROJECT_ID` can contain letters ([A-Za-z]), numbers ([0-9]),\n hyphens (-), colons (:), or periods (.).\n For more information, see\n [Identifying projects](/resource-manager/docs/creating-managing-projects#identifying_projects)\n* `LOCATION_ID` is the canonical ID for the queue's location.\n The list of available locations can be obtained by calling\n ListLocations.\n For more information, see https://cloud.google.com/about/locations/.\n* `QUEUE_ID` can contain letters ([A-Za-z]), numbers ([0-9]), or\n hyphens (-). The maximum length is 100 characters.\n\nCaller-specified and required in CreateQueue,\nafter which it becomes output only.", // "location": "path", // "pattern": "^projects/[^/]+/locations/[^/]+/queues/[^/]+$", // "required": true, @@ -3690,12 +3687,12 @@ type ProjectsLocationsQueuesPauseCall struct { // Pause: Pauses the queue. // -// If a queue is paused then the system will stop executing the -// tasks in the queue until it is resumed via -// CloudTasks.ResumeQueue. Tasks can still be added when the -// queue is paused. The state of the queue is stored in -// Queue.state; if paused it will be set to -// Queue.State.PAUSED. +// If a queue is paused then the system will stop dispatching +// tasks +// until the queue is resumed via +// ResumeQueue. Tasks can still be added +// when the queue is paused. A queue is paused if its +// state is PAUSED. func (r *ProjectsLocationsQueuesService) Pause(name string, pausequeuerequest *PauseQueueRequest) *ProjectsLocationsQueuesPauseCall { c := &ProjectsLocationsQueuesPauseCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.name = name @@ -3789,7 +3786,7 @@ func (c *ProjectsLocationsQueuesPauseCall) Do(opts ...googleapi.CallOption) (*Qu } return ret, nil // { - // "description": "Pauses the queue.\n\nIf a queue is paused then the system will stop executing the\ntasks in the queue until it is resumed via\nCloudTasks.ResumeQueue. Tasks can still be added when the\nqueue is paused. The state of the queue is stored in\nQueue.state; if paused it will be set to\nQueue.State.PAUSED.", + // "description": "Pauses the queue.\n\nIf a queue is paused then the system will stop dispatching tasks\nuntil the queue is resumed via\nResumeQueue. Tasks can still be added\nwhen the queue is paused. A queue is paused if its\nstate is PAUSED.", // "flatPath": "v2beta2/projects/{projectsId}/locations/{locationsId}/queues/{queuesId}:pause", // "httpMethod": "POST", // "id": "cloudtasks.projects.locations.queues.pause", @@ -3976,9 +3973,10 @@ type ProjectsLocationsQueuesResumeCall struct { // Resume: Resume a queue. // // This method resumes a queue after it has been -// Queue.State.PAUSED or Queue.State.DISABLED. The state of -// a queue is stored in Queue.state; after calling this method it -// will be set to Queue.State.RUNNING. +// PAUSED or +// DISABLED. The state of a queue is stored +// in the queue's state; after calling this method it +// will be set to RUNNING. // // WARNING: Resuming many high-QPS queues at the same time can // lead to target overloading. If you are resuming high-QPS @@ -4079,7 +4077,7 @@ func (c *ProjectsLocationsQueuesResumeCall) Do(opts ...googleapi.CallOption) (*Q } return ret, nil // { - // "description": "Resume a queue.\n\nThis method resumes a queue after it has been\nQueue.State.PAUSED or Queue.State.DISABLED. The state of\na queue is stored in Queue.state; after calling this method it\nwill be set to Queue.State.RUNNING.\n\nWARNING: Resuming many high-QPS queues at the same time can\nlead to target overloading. If you are resuming high-QPS\nqueues, follow the 500/50/5 pattern described in\n[Managing Cloud Tasks Scaling Risks](/cloud-tasks/pdfs/managing-cloud-tasks-scaling-risks-2017-06-05.pdf).", + // "description": "Resume a queue.\n\nThis method resumes a queue after it has been\nPAUSED or\nDISABLED. The state of a queue is stored\nin the queue's state; after calling this method it\nwill be set to RUNNING.\n\nWARNING: Resuming many high-QPS queues at the same time can\nlead to target overloading. If you are resuming high-QPS\nqueues, follow the 500/50/5 pattern described in\n[Managing Cloud Tasks Scaling Risks](/cloud-tasks/pdfs/managing-cloud-tasks-scaling-risks-2017-06-05.pdf).", // "flatPath": "v2beta2/projects/{projectsId}/locations/{locationsId}/queues/{queuesId}:resume", // "httpMethod": "POST", // "id": "cloudtasks.projects.locations.queues.resume", @@ -4272,7 +4270,7 @@ type ProjectsLocationsQueuesTestIamPermissionsCall struct { // Queue. // If the resource does not exist, this will return an empty set // of -// permissions, not a google.rpc.Code.NOT_FOUND error. +// permissions, not a NOT_FOUND error. // // Note: This operation is designed to be used for building // permission-aware @@ -4372,7 +4370,7 @@ func (c *ProjectsLocationsQueuesTestIamPermissionsCall) Do(opts ...googleapi.Cal } return ret, nil // { - // "description": "Returns permissions that a caller has on a Queue.\nIf the resource does not exist, this will return an empty set of\npermissions, not a google.rpc.Code.NOT_FOUND error.\n\nNote: This operation is designed to be used for building permission-aware\nUIs and command-line tools, not for authorization checking. This operation\nmay \"fail open\" without warning.", + // "description": "Returns permissions that a caller has on a Queue.\nIf the resource does not exist, this will return an empty set of\npermissions, not a NOT_FOUND error.\n\nNote: This operation is designed to be used for building permission-aware\nUIs and command-line tools, not for authorization checking. This operation\nmay \"fail open\" without warning.", // "flatPath": "v2beta2/projects/{projectsId}/locations/{locationsId}/queues/{queuesId}:testIamPermissions", // "httpMethod": "POST", // "id": "cloudtasks.projects.locations.queues.testIamPermissions", @@ -4415,18 +4413,17 @@ type ProjectsLocationsQueuesTasksAcknowledgeCall struct { // Acknowledge: Acknowledges a pull task. // -// The worker, that is, the entity that received this task in -// a LeaseTasksResponse, must call this method to indicate that -// the work associated with the task has finished. +// The worker, that is, the entity that +// leased this task must call this method +// to indicate that the work associated with the task has finished. // -// The worker must acknowledge a task within -// the -// LeaseTasksRequest.lease_duration or the lease will expire and -// the task will become ready to be returned in a -// different -// LeaseTasksResponse. After the task is acknowledged, it will -// not be returned by a later CloudTasks.LeaseTasks, -// CloudTasks.GetTask, or CloudTasks.ListTasks. +// The worker must acknowledge a task within the +// lease_duration or the lease +// will expire and the task will become available to be leased +// again. After the task is acknowledged, it will not be returned +// by a later LeaseTasks, +// GetTask, or +// ListTasks. // // To acknowledge multiple tasks at the same time, use // [HTTP batching](/storage/docs/json_api/v1/how-tos/batch) @@ -4527,7 +4524,7 @@ func (c *ProjectsLocationsQueuesTasksAcknowledgeCall) Do(opts ...googleapi.CallO } return ret, nil // { - // "description": "Acknowledges a pull task.\n\nThe worker, that is, the entity that received this task in\na LeaseTasksResponse, must call this method to indicate that\nthe work associated with the task has finished.\n\nThe worker must acknowledge a task within the\nLeaseTasksRequest.lease_duration or the lease will expire and\nthe task will become ready to be returned in a different\nLeaseTasksResponse. After the task is acknowledged, it will\nnot be returned by a later CloudTasks.LeaseTasks,\nCloudTasks.GetTask, or CloudTasks.ListTasks.\n\nTo acknowledge multiple tasks at the same time, use\n[HTTP batching](/storage/docs/json_api/v1/how-tos/batch)\nor the batching documentation for your client library, for example\nhttps://developers.google.com/api-client-library/python/guide/batch.", + // "description": "Acknowledges a pull task.\n\nThe worker, that is, the entity that\nleased this task must call this method\nto indicate that the work associated with the task has finished.\n\nThe worker must acknowledge a task within the\nlease_duration or the lease\nwill expire and the task will become available to be leased\nagain. After the task is acknowledged, it will not be returned\nby a later LeaseTasks,\nGetTask, or\nListTasks.\n\nTo acknowledge multiple tasks at the same time, use\n[HTTP batching](/storage/docs/json_api/v1/how-tos/batch)\nor the batching documentation for your client library, for example\nhttps://developers.google.com/api-client-library/python/guide/batch.", // "flatPath": "v2beta2/projects/{projectsId}/locations/{locationsId}/queues/{queuesId}/tasks/{tasksId}:acknowledge", // "httpMethod": "POST", // "id": "cloudtasks.projects.locations.queues.tasks.acknowledge", @@ -4570,10 +4567,11 @@ type ProjectsLocationsQueuesTasksCancelLeaseCall struct { // CancelLease: Cancel a pull task's lease. // -// The worker can use this method to cancel a task's lease -// by setting Task.schedule_time to now. This will make the -// task -// available to be leased to the next caller of CloudTasks.LeaseTasks. +// The worker can use this method to cancel a task's lease by +// setting its schedule_time to now. This will +// make the task available to be leased to the next caller +// of +// LeaseTasks. func (r *ProjectsLocationsQueuesTasksService) CancelLease(name string, cancelleaserequest *CancelLeaseRequest) *ProjectsLocationsQueuesTasksCancelLeaseCall { c := &ProjectsLocationsQueuesTasksCancelLeaseCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.name = name @@ -4667,7 +4665,7 @@ func (c *ProjectsLocationsQueuesTasksCancelLeaseCall) Do(opts ...googleapi.CallO } return ret, nil // { - // "description": "Cancel a pull task's lease.\n\nThe worker can use this method to cancel a task's lease\nby setting Task.schedule_time to now. This will make the task\navailable to be leased to the next caller of CloudTasks.LeaseTasks.", + // "description": "Cancel a pull task's lease.\n\nThe worker can use this method to cancel a task's lease by\nsetting its schedule_time to now. This will\nmake the task available to be leased to the next caller of\nLeaseTasks.", // "flatPath": "v2beta2/projects/{projectsId}/locations/{locationsId}/queues/{queuesId}/tasks/{tasksId}:cancelLease", // "httpMethod": "POST", // "id": "cloudtasks.projects.locations.queues.tasks.cancelLease", @@ -5001,7 +4999,7 @@ func (r *ProjectsLocationsQueuesTasksService) Get(name string) *ProjectsLocation // be // returned. // -// By default response_view is Task.View.BASIC; not all +// By default response_view is BASIC; not all // information is retrieved by default because some data, such // as // payloads, might be desirable to return only when needed because @@ -5009,10 +5007,10 @@ func (r *ProjectsLocationsQueuesTasksService) Get(name string) *ProjectsLocation // it // contains. // -// Authorization for Task.View.FULL requires -// `cloudtasks.tasks.fullView` -// [Google IAM](/iam/) permission on the -// Task.name resource. +// Authorization for FULL requires +// `cloudtasks.tasks.fullView` [Google IAM](/iam/) permission on +// the +// Task resource. // // Possible values: // "VIEW_UNSPECIFIED" @@ -5133,7 +5131,7 @@ func (c *ProjectsLocationsQueuesTasksGetCall) Do(opts ...googleapi.CallOption) ( // "type": "string" // }, // "responseView": { - // "description": "The response_view specifies which subset of the Task will be\nreturned.\n\nBy default response_view is Task.View.BASIC; not all\ninformation is retrieved by default because some data, such as\npayloads, might be desirable to return only when needed because\nof its large size or because of the sensitivity of data that it\ncontains.\n\nAuthorization for Task.View.FULL requires `cloudtasks.tasks.fullView`\n[Google IAM](/iam/) permission on the\nTask.name resource.", + // "description": "The response_view specifies which subset of the Task will be\nreturned.\n\nBy default response_view is BASIC; not all\ninformation is retrieved by default because some data, such as\npayloads, might be desirable to return only when needed because\nof its large size or because of the sensitivity of data that it\ncontains.\n\nAuthorization for FULL requires\n`cloudtasks.tasks.fullView` [Google IAM](/iam/) permission on the\nTask resource.", // "enum": [ // "VIEW_UNSPECIFIED", // "BASIC", @@ -5166,28 +5164,28 @@ type ProjectsLocationsQueuesTasksLeaseCall struct { } // Lease: Leases tasks from a pull queue for -// LeaseTasksRequest.lease_duration. +// lease_duration. // -// This method is invoked by the worker to obtain a -// lease. The worker must acknowledge the task -// via -// CloudTasks.AcknowledgeTask after they have performed the -// work -// associated with the task. +// This method is invoked by the worker to obtain a lease. The +// worker must acknowledge the task via +// AcknowledgeTask after they have +// performed the work associated with the task. // -// The payload is intended to store data that the worker needs -// to perform the work associated with the task. To return the -// payloads in the LeaseTasksResponse, -// set -// LeaseTasksRequest.response_view to Task.View.FULL. +// The payload is intended to store data that +// the worker needs to perform the work associated with the task. +// To +// return the payloads in the response, set +// response_view to +// FULL. // -// A maximum of 10 qps of CloudTasks.LeaseTasks requests are allowed -// per -// queue. google.rpc.Code.RESOURCE_EXHAUSTED is returned when this -// limit -// is exceeded. google.rpc.Code.RESOURCE_EXHAUSTED is also returned -// when -// RateLimits.max_tasks_dispatched_per_second is exceeded. +// A maximum of 10 qps of LeaseTasks +// requests are allowed per +// queue. RESOURCE_EXHAUSTED +// is returned when this limit is +// exceeded. RESOURCE_EXHAUSTED +// is also returned when +// max_tasks_dispatched_per_second +// is exceeded. func (r *ProjectsLocationsQueuesTasksService) Lease(parent string, leasetasksrequest *LeaseTasksRequest) *ProjectsLocationsQueuesTasksLeaseCall { c := &ProjectsLocationsQueuesTasksLeaseCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.parent = parent @@ -5281,7 +5279,7 @@ func (c *ProjectsLocationsQueuesTasksLeaseCall) Do(opts ...googleapi.CallOption) } return ret, nil // { - // "description": "Leases tasks from a pull queue for LeaseTasksRequest.lease_duration.\n\nThis method is invoked by the worker to obtain a\nlease. The worker must acknowledge the task via\nCloudTasks.AcknowledgeTask after they have performed the work\nassociated with the task.\n\nThe payload is intended to store data that the worker needs\nto perform the work associated with the task. To return the\npayloads in the LeaseTasksResponse, set\nLeaseTasksRequest.response_view to Task.View.FULL.\n\nA maximum of 10 qps of CloudTasks.LeaseTasks requests are allowed per\nqueue. google.rpc.Code.RESOURCE_EXHAUSTED is returned when this limit\nis exceeded. google.rpc.Code.RESOURCE_EXHAUSTED is also returned when\nRateLimits.max_tasks_dispatched_per_second is exceeded.", + // "description": "Leases tasks from a pull queue for\nlease_duration.\n\nThis method is invoked by the worker to obtain a lease. The\nworker must acknowledge the task via\nAcknowledgeTask after they have\nperformed the work associated with the task.\n\nThe payload is intended to store data that\nthe worker needs to perform the work associated with the task. To\nreturn the payloads in the response, set\nresponse_view to\nFULL.\n\nA maximum of 10 qps of LeaseTasks\nrequests are allowed per\nqueue. RESOURCE_EXHAUSTED\nis returned when this limit is\nexceeded. RESOURCE_EXHAUSTED\nis also returned when\nmax_tasks_dispatched_per_second\nis exceeded.", // "flatPath": "v2beta2/projects/{projectsId}/locations/{locationsId}/queues/{queuesId}/tasks:lease", // "httpMethod": "POST", // "id": "cloudtasks.projects.locations.queues.tasks.lease", @@ -5324,10 +5322,9 @@ type ProjectsLocationsQueuesTasksListCall struct { // List: Lists the tasks in a queue. // -// By default response_view is Task.View.BASIC; not all -// information is retrieved by default due to -// performance -// considerations; ListTasksRequest.response_view controls the +// By default, only the BASIC view is retrieved +// due to performance considerations; +// response_view controls the // subset of information which is returned. func (r *ProjectsLocationsQueuesTasksService) List(parent string) *ProjectsLocationsQueuesTasksListCall { c := &ProjectsLocationsQueuesTasksListCall{s: r.s, urlParams_: make(gensupport.URLParams)} @@ -5353,8 +5350,8 @@ func (c *ProjectsLocationsQueuesTasksListCall) OrderBy(orderBy string) *Projects // The maximum page size is 1000. If unspecified, the page size will // be the maximum. Fewer tasks than requested might be returned, // even if more tasks exist; use -// ListTasksResponse.next_page_token to determine if more tasks -// exist. +// next_page_token in the +// response to determine if more tasks exist. func (c *ProjectsLocationsQueuesTasksListCall) PageSize(pageSize int64) *ProjectsLocationsQueuesTasksListCall { c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) return c @@ -5367,8 +5364,9 @@ func (c *ProjectsLocationsQueuesTasksListCall) PageSize(pageSize int64) *Project // To // request the next page of results, page_token must be the value // of -// ListTasksResponse.next_page_token returned from the previous -// call to CloudTasks.ListTasks method. +// next_page_token returned +// from the previous call to ListTasks +// method. // // The page token is valid for only 2 hours. func (c *ProjectsLocationsQueuesTasksListCall) PageToken(pageToken string) *ProjectsLocationsQueuesTasksListCall { @@ -5381,7 +5379,7 @@ func (c *ProjectsLocationsQueuesTasksListCall) PageToken(pageToken string) *Proj // be // returned. // -// By default response_view is Task.View.BASIC; not all +// By default response_view is BASIC; not all // information is retrieved by default because some data, such // as // payloads, might be desirable to return only when needed because @@ -5389,10 +5387,10 @@ func (c *ProjectsLocationsQueuesTasksListCall) PageToken(pageToken string) *Proj // it // contains. // -// Authorization for Task.View.FULL requires -// `cloudtasks.tasks.fullView` -// [Google IAM](/iam/) permission on the -// Task.name resource. +// Authorization for FULL requires +// `cloudtasks.tasks.fullView` [Google IAM](/iam/) permission on +// the +// Task resource. // // Possible values: // "VIEW_UNSPECIFIED" @@ -5497,7 +5495,7 @@ func (c *ProjectsLocationsQueuesTasksListCall) Do(opts ...googleapi.CallOption) } return ret, nil // { - // "description": "Lists the tasks in a queue.\n\nBy default response_view is Task.View.BASIC; not all\ninformation is retrieved by default due to performance\nconsiderations; ListTasksRequest.response_view controls the\nsubset of information which is returned.", + // "description": "Lists the tasks in a queue.\n\nBy default, only the BASIC view is retrieved\ndue to performance considerations;\nresponse_view controls the\nsubset of information which is returned.", // "flatPath": "v2beta2/projects/{projectsId}/locations/{locationsId}/queues/{queuesId}/tasks", // "httpMethod": "GET", // "id": "cloudtasks.projects.locations.queues.tasks.list", @@ -5511,13 +5509,13 @@ func (c *ProjectsLocationsQueuesTasksListCall) Do(opts ...googleapi.CallOption) // "type": "string" // }, // "pageSize": { - // "description": "Requested page size. Fewer tasks than requested might be returned.\n\nThe maximum page size is 1000. If unspecified, the page size will\nbe the maximum. Fewer tasks than requested might be returned,\neven if more tasks exist; use\nListTasksResponse.next_page_token to determine if more tasks\nexist.", + // "description": "Requested page size. Fewer tasks than requested might be returned.\n\nThe maximum page size is 1000. If unspecified, the page size will\nbe the maximum. Fewer tasks than requested might be returned,\neven if more tasks exist; use\nnext_page_token in the\nresponse to determine if more tasks exist.", // "format": "int32", // "location": "query", // "type": "integer" // }, // "pageToken": { - // "description": "A token identifying the page of results to return.\n\nTo request the first page results, page_token must be empty. To\nrequest the next page of results, page_token must be the value of\nListTasksResponse.next_page_token returned from the previous\ncall to CloudTasks.ListTasks method.\n\nThe page token is valid for only 2 hours.", + // "description": "A token identifying the page of results to return.\n\nTo request the first page results, page_token must be empty. To\nrequest the next page of results, page_token must be the value of\nnext_page_token returned\nfrom the previous call to ListTasks\nmethod.\n\nThe page token is valid for only 2 hours.", // "location": "query", // "type": "string" // }, @@ -5529,7 +5527,7 @@ func (c *ProjectsLocationsQueuesTasksListCall) Do(opts ...googleapi.CallOption) // "type": "string" // }, // "responseView": { - // "description": "The response_view specifies which subset of the Task will be\nreturned.\n\nBy default response_view is Task.View.BASIC; not all\ninformation is retrieved by default because some data, such as\npayloads, might be desirable to return only when needed because\nof its large size or because of the sensitivity of data that it\ncontains.\n\nAuthorization for Task.View.FULL requires `cloudtasks.tasks.fullView`\n[Google IAM](/iam/) permission on the\nTask.name resource.", + // "description": "The response_view specifies which subset of the Task will be\nreturned.\n\nBy default response_view is BASIC; not all\ninformation is retrieved by default because some data, such as\npayloads, might be desirable to return only when needed because\nof its large size or because of the sensitivity of data that it\ncontains.\n\nAuthorization for FULL requires\n`cloudtasks.tasks.fullView` [Google IAM](/iam/) permission on the\nTask resource.", // "enum": [ // "VIEW_UNSPECIFIED", // "BASIC", @@ -5586,7 +5584,7 @@ type ProjectsLocationsQueuesTasksRenewLeaseCall struct { // // The worker can use this method to extend the lease by a new // duration, starting from now. The new task lease will be -// returned in Task.schedule_time. +// returned in the task's schedule_time. func (r *ProjectsLocationsQueuesTasksService) RenewLease(name string, renewleaserequest *RenewLeaseRequest) *ProjectsLocationsQueuesTasksRenewLeaseCall { c := &ProjectsLocationsQueuesTasksRenewLeaseCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.name = name @@ -5680,7 +5678,7 @@ func (c *ProjectsLocationsQueuesTasksRenewLeaseCall) Do(opts ...googleapi.CallOp } return ret, nil // { - // "description": "Renew the current lease of a pull task.\n\nThe worker can use this method to extend the lease by a new\nduration, starting from now. The new task lease will be\nreturned in Task.schedule_time.", + // "description": "Renew the current lease of a pull task.\n\nThe worker can use this method to extend the lease by a new\nduration, starting from now. The new task lease will be\nreturned in the task's schedule_time.", // "flatPath": "v2beta2/projects/{projectsId}/locations/{locationsId}/queues/{queuesId}/tasks/{tasksId}:renewLease", // "httpMethod": "POST", // "id": "cloudtasks.projects.locations.queues.tasks.renewLease", @@ -5724,37 +5722,37 @@ type ProjectsLocationsQueuesTasksRunCall struct { // Run: Forces a task to run now. // // This command is meant to be used for manual debugging. For -// example, CloudTasks.RunTask can be used to retry a failed +// example, RunTask can be used to retry a failed // task after a fix has been made or to manually force a task to // be // dispatched now. // // When this method is called, Cloud Tasks will dispatch the task to // its -// target, even if the queue is Queue.State.PAUSED. +// target, even if the queue is PAUSED. // // The dispatched task is returned. That is, the task that is // returned -// contains the Task.status after the task is dispatched but +// contains the status after the task is dispatched but // before the task is received by its target. // // If Cloud Tasks receives a successful response from the // task's // handler, then the task will be deleted; otherwise the // task's -// Task.schedule_time will be reset to the time that -// CloudTasks.RunTask was called plus the retry delay specified +// schedule_time will be reset to the time that +// RunTask was called plus the retry delay specified // in the queue and task's RetryConfig. // -// CloudTasks.RunTask returns google.rpc.Code.NOT_FOUND when -// it is called on a task that has already succeeded or -// permanently -// failed. google.rpc.Code.FAILED_PRECONDITION is returned -// when -// CloudTasks.RunTask is called on task that is dispatched or -// already running. +// RunTask returns +// NOT_FOUND when it is called on a +// task that has already succeeded or permanently +// failed. FAILED_PRECONDITION +// is returned when RunTask is called on task +// that is dispatched or already running. // -// CloudTasks.RunTask cannot be called on pull tasks. +// RunTask cannot be called on +// pull tasks. func (r *ProjectsLocationsQueuesTasksService) Run(name string, runtaskrequest *RunTaskRequest) *ProjectsLocationsQueuesTasksRunCall { c := &ProjectsLocationsQueuesTasksRunCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.name = name @@ -5848,7 +5846,7 @@ func (c *ProjectsLocationsQueuesTasksRunCall) Do(opts ...googleapi.CallOption) ( } return ret, nil // { - // "description": "Forces a task to run now.\n\nThis command is meant to be used for manual debugging. For\nexample, CloudTasks.RunTask can be used to retry a failed\ntask after a fix has been made or to manually force a task to be\ndispatched now.\n\nWhen this method is called, Cloud Tasks will dispatch the task to its\ntarget, even if the queue is Queue.State.PAUSED.\n\nThe dispatched task is returned. That is, the task that is returned\ncontains the Task.status after the task is dispatched but\nbefore the task is received by its target.\n\nIf Cloud Tasks receives a successful response from the task's\nhandler, then the task will be deleted; otherwise the task's\nTask.schedule_time will be reset to the time that\nCloudTasks.RunTask was called plus the retry delay specified\nin the queue and task's RetryConfig.\n\nCloudTasks.RunTask returns google.rpc.Code.NOT_FOUND when\nit is called on a task that has already succeeded or permanently\nfailed. google.rpc.Code.FAILED_PRECONDITION is returned when\nCloudTasks.RunTask is called on task that is dispatched or\nalready running.\n\nCloudTasks.RunTask cannot be called on pull tasks.", + // "description": "Forces a task to run now.\n\nThis command is meant to be used for manual debugging. For\nexample, RunTask can be used to retry a failed\ntask after a fix has been made or to manually force a task to be\ndispatched now.\n\nWhen this method is called, Cloud Tasks will dispatch the task to its\ntarget, even if the queue is PAUSED.\n\nThe dispatched task is returned. That is, the task that is returned\ncontains the status after the task is dispatched but\nbefore the task is received by its target.\n\nIf Cloud Tasks receives a successful response from the task's\nhandler, then the task will be deleted; otherwise the task's\nschedule_time will be reset to the time that\nRunTask was called plus the retry delay specified\nin the queue and task's RetryConfig.\n\nRunTask returns\nNOT_FOUND when it is called on a\ntask that has already succeeded or permanently\nfailed. FAILED_PRECONDITION\nis returned when RunTask is called on task\nthat is dispatched or already running.\n\nRunTask cannot be called on\npull tasks.", // "flatPath": "v2beta2/projects/{projectsId}/locations/{locationsId}/queues/{queuesId}/tasks/{tasksId}:run", // "httpMethod": "POST", // "id": "cloudtasks.projects.locations.queues.tasks.run", diff --git a/vendor/google.golang.org/api/cloudtrace/v1/cloudtrace-api.json b/vendor/google.golang.org/api/cloudtrace/v1/cloudtrace-api.json index ef318a270..4c4c99233 100644 --- a/vendor/google.golang.org/api/cloudtrace/v1/cloudtrace-api.json +++ b/vendor/google.golang.org/api/cloudtrace/v1/cloudtrace-api.json @@ -1,67 +1,357 @@ { + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/cloud-platform": { + "description": "View and manage your data across Google Cloud Platform services" + }, + "https://www.googleapis.com/auth/trace.append": { + "description": "Write Trace data for a project or application" + }, + "https://www.googleapis.com/auth/trace.readonly": { + "description": "Read Trace data for a project or application" + } + } + } + }, "basePath": "", - "documentationLink": "https://cloud.google.com/trace", - "id": "cloudtrace:v1", - "revision": "20180109", + "baseUrl": "https://cloudtrace.googleapis.com/", + "batchPath": "batch", + "canonicalName": "Cloud Trace", + "description": "Sends application trace data to Stackdriver Trace for viewing. Trace data is collected for all App Engine applications by default. Trace data from other applications can be provided using this API.\n", "discoveryVersion": "v1", - "version_module": true, - "schemas": { - "Traces": { - "properties": { - "traces": { - "description": "List of traces.", - "type": "array", - "items": { - "$ref": "Trace" - } + "documentationLink": "https://cloud.google.com/trace", + "fullyEncodeReservedExpansion": true, + "icons": { + "x16": "http://www.google.com/images/icons/product/search-16.gif", + "x32": "http://www.google.com/images/icons/product/search-32.gif" + }, + "id": "cloudtrace:v1", + "kind": "discovery#restDescription", + "name": "cloudtrace", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "$.xgafv": { + "description": "V1 error format.", + "enum": [ + "1", + "2" + ], + "enumDescriptions": [ + "v1 error format", + "v2 error format" + ], + "location": "query", + "type": "string" + }, + "access_token": { + "description": "OAuth access token.", + "location": "query", + "type": "string" + }, + "alt": { + "default": "json", + "description": "Data format for response.", + "enum": [ + "json", + "media", + "proto" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json", + "Media download with context-dependent Content-Type", + "Responses with Content-Type of application/x-protobuf" + ], + "location": "query", + "type": "string" + }, + "bearer_token": { + "description": "OAuth bearer token.", + "location": "query", + "type": "string" + }, + "callback": { + "description": "JSONP", + "location": "query", + "type": "string" + }, + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "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.", + "location": "query", + "type": "string" + }, + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "pp": { + "default": "true", + "description": "Pretty-print response.", + "location": "query", + "type": "boolean" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", + "location": "query", + "type": "string" + }, + "uploadType": { + "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", + "location": "query", + "type": "string" + }, + "upload_protocol": { + "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", + "location": "query", + "type": "string" + } + }, + "protocol": "rest", + "resources": { + "projects": { + "methods": { + "patchTraces": { + "description": "Sends new traces to Stackdriver Trace or updates existing traces. If the ID\nof a trace that you send matches that of an existing trace, any fields\nin the existing trace and its spans are overwritten by the provided values,\nand any new fields provided are merged with the existing trace data. If the\nID does not match, a new trace is created.", + "flatPath": "v1/projects/{projectId}/traces", + "httpMethod": "PATCH", + "id": "cloudtrace.projects.patchTraces", + "parameterOrder": [ + "projectId" + ], + "parameters": { + "projectId": { + "description": "ID of the Cloud project where the trace data is stored.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/projects/{projectId}/traces", + "request": { + "$ref": "Traces" + }, + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/trace.append" + ] + } + }, + "resources": { + "traces": { + "methods": { + "get": { + "description": "Gets a single trace by its ID.", + "flatPath": "v1/projects/{projectId}/traces/{traceId}", + "httpMethod": "GET", + "id": "cloudtrace.projects.traces.get", + "parameterOrder": [ + "projectId", + "traceId" + ], + "parameters": { + "projectId": { + "description": "ID of the Cloud project where the trace data is stored.", + "location": "path", + "required": true, + "type": "string" + }, + "traceId": { + "description": "ID of the trace to return.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/projects/{projectId}/traces/{traceId}", + "response": { + "$ref": "Trace" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/trace.readonly" + ] + }, + "list": { + "description": "Returns of a list of traces that match the specified filter conditions.", + "flatPath": "v1/projects/{projectId}/traces", + "httpMethod": "GET", + "id": "cloudtrace.projects.traces.list", + "parameterOrder": [ + "projectId" + ], + "parameters": { + "endTime": { + "description": "End of the time interval (inclusive) during which the trace data was\ncollected from the application.", + "format": "google-datetime", + "location": "query", + "type": "string" + }, + "filter": { + "description": "An optional filter against labels for the request.\n\nBy default, searches use prefix matching. To specify exact match, prepend\na plus symbol (`+`) to the search term.\nMultiple terms are ANDed. Syntax:\n\n* `root:NAME_PREFIX` or `NAME_PREFIX`: Return traces where any root\n span starts with `NAME_PREFIX`.\n* `+root:NAME` or `+NAME`: Return traces where any root span's name is\n exactly `NAME`.\n* `span:NAME_PREFIX`: Return traces where any span starts with\n `NAME_PREFIX`.\n* `+span:NAME`: Return traces where any span's name is exactly\n `NAME`.\n* `latency:DURATION`: Return traces whose overall latency is\n greater or equal to than `DURATION`. Accepted units are nanoseconds\n (`ns`), milliseconds (`ms`), and seconds (`s`). Default is `ms`. For\n example, `latency:24ms` returns traces whose overall latency\n is greater than or equal to 24 milliseconds.\n* `label:LABEL_KEY`: Return all traces containing the specified\n label key (exact match, case-sensitive) regardless of the key:value\n pair's value (including empty values).\n* `LABEL_KEY:VALUE_PREFIX`: Return all traces containing the specified\n label key (exact match, case-sensitive) whose value starts with\n `VALUE_PREFIX`. Both a key and a value must be specified.\n* `+LABEL_KEY:VALUE`: Return all traces containing a key:value pair\n exactly matching the specified text. Both a key and a value must be\n specified.\n* `method:VALUE`: Equivalent to `/http/method:VALUE`.\n* `url:VALUE`: Equivalent to `/http/url:VALUE`.", + "location": "query", + "type": "string" + }, + "orderBy": { + "description": "Field used to sort the returned traces. Optional.\nCan be one of the following:\n\n* `trace_id`\n* `name` (`name` field of root span in the trace)\n* `duration` (difference between `end_time` and `start_time` fields of\n the root span)\n* `start` (`start_time` field of the root span)\n\nDescending order can be specified by appending `desc` to the sort field\n(for example, `name desc`).\n\nOnly one sort field is permitted.", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "Maximum number of traces to return. If not specified or \u003c= 0, the\nimplementation selects a reasonable value. The implementation may\nreturn fewer traces than the requested page size. Optional.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Token identifying the page of results to return. If provided, use the\nvalue of the `next_page_token` field from a previous request. Optional.", + "location": "query", + "type": "string" + }, + "projectId": { + "description": "ID of the Cloud project where the trace data is stored.", + "location": "path", + "required": true, + "type": "string" + }, + "startTime": { + "description": "Start of the time interval (inclusive) during which the trace data was\ncollected from the application.", + "format": "google-datetime", + "location": "query", + "type": "string" + }, + "view": { + "description": "Type of data returned for traces in the list. Optional. Default is\n`MINIMAL`.", + "enum": [ + "VIEW_TYPE_UNSPECIFIED", + "MINIMAL", + "ROOTSPAN", + "COMPLETE" + ], + "location": "query", + "type": "string" + } + }, + "path": "v1/projects/{projectId}/traces", + "response": { + "$ref": "ListTracesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/trace.readonly" + ] + } + } + } + } + } + }, + "revision": "20180312", + "rootUrl": "https://cloudtrace.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" + }, + "ListTracesResponse": { + "description": "The response message for the `ListTraces` method.", + "id": "ListTracesResponse", + "properties": { + "nextPageToken": { + "description": "If defined, indicates that there are more traces that match the request\nand that this value should be passed to the next request to continue\nretrieving additional traces.", + "type": "string" + }, + "traces": { + "description": "List of trace records returned.", + "items": { + "$ref": "Trace" + }, + "type": "array" + } + }, + "type": "object" + }, + "Trace": { + "description": "A trace describes how long it takes for an application to perform an\noperation. It consists of a set of spans, each of which represent a single\ntimed event within the operation.", + "id": "Trace", + "properties": { + "projectId": { + "description": "Project ID of the Cloud project where the trace data is stored.", + "type": "string" + }, + "spans": { + "description": "Collection of spans in the trace.", + "items": { + "$ref": "TraceSpan" + }, + "type": "array" + }, + "traceId": { + "description": "Globally unique identifier for the trace. This identifier is a 128-bit\nnumeric value formatted as a 32-byte hex string.", + "type": "string" } }, - "id": "Traces", - "description": "List of new or updated traces.", "type": "object" }, "TraceSpan": { "description": "A span represents a single timed event within a trace. Spans can be nested\nand form a trace tree. Often, a trace contains a root span that describes the\nend-to-end latency of an operation and, optionally, one or more subspans for\nits suboperations. Spans do not need to be contiguous. There may be gaps\nbetween spans in a trace.", - "type": "object", + "id": "TraceSpan", "properties": { + "endTime": { + "description": "End time of the span in nanoseconds from the UNIX epoch.", + "format": "google-datetime", + "type": "string" + }, "kind": { "description": "Distinguishes between spans generated in a particular context. For example,\ntwo spans with the same name may be distinguished using `RPC_CLIENT`\nand `RPC_SERVER` to identify queueing latency associated with the span.", - "type": "string", + "enum": [ + "SPAN_KIND_UNSPECIFIED", + "RPC_SERVER", + "RPC_CLIENT" + ], "enumDescriptions": [ "Unspecified.", "Indicates that the span covers server-side handling of an RPC or other\nremote network request.", "Indicates that the span covers the client-side wrapper around an RPC or\nother remote request." ], - "enum": [ - "SPAN_KIND_UNSPECIFIED", - "RPC_SERVER", - "RPC_CLIENT" - ] + "type": "string" }, "labels": { - "description": "Collection of labels associated with the span. Label keys must be less than\n128 bytes. Label values must be less than 16 kilobytes (10MB for\n`/stacktrace` values).\n\nSome predefined label keys exist, or you may create your own. When creating\nyour own, we recommend the following formats:\n\n* `/category/product/key` for agents of well-known products (e.g.\n `/db/mongodb/read_size`).\n* `short_host/path/key` for domain-specific keys (e.g.\n `foo.com/myproduct/bar`)\n\nPredefined labels include:\n\n* `/agent`\n* `/component`\n* `/error/message`\n* `/error/name`\n* `/http/client_city`\n* `/http/client_country`\n* `/http/client_protocol`\n* `/http/client_region`\n* `/http/host`\n* `/http/method`\n* `/http/redirected_url`\n* `/http/request/size`\n* `/http/response/size`\n* `/http/status_code`\n* `/http/url`\n* `/http/user_agent`\n* `/pid`\n* `/stacktrace`\n* `/tid`", - "type": "object", "additionalProperties": { "type": "string" - } + }, + "description": "Collection of labels associated with the span. Label keys must be less than\n128 bytes. Label values must be less than 16 kilobytes (10MB for\n`/stacktrace` values).\n\nSome predefined label keys exist, or you may create your own. When creating\nyour own, we recommend the following formats:\n\n* `/category/product/key` for agents of well-known products (e.g.\n `/db/mongodb/read_size`).\n* `short_host/path/key` for domain-specific keys (e.g.\n `foo.com/myproduct/bar`)\n\nPredefined labels include:\n\n* `/agent`\n* `/component`\n* `/error/message`\n* `/error/name`\n* `/http/client_city`\n* `/http/client_country`\n* `/http/client_protocol`\n* `/http/client_region`\n* `/http/host`\n* `/http/method`\n* `/http/path`\n* `/http/redirected_url`\n* `/http/request/size`\n* `/http/response/size`\n* `/http/route`\n* `/http/status_code`\n* `/http/url`\n* `/http/user_agent`\n* `/pid`\n* `/stacktrace`\n* `/tid`", + "type": "object" }, "name": { "description": "Name of the span. Must be less than 128 bytes. The span name is sanitized\nand displayed in the Stackdriver Trace tool in the\n{% dynamic print site_values.console_name %}.\nThe name may be a method name or some other per-call site name.\nFor the same executable and the same call point, a best practice is\nto use a consistent name, which makes it easier to correlate\ncross-trace spans.", "type": "string" }, - "spanId": { - "description": "Identifier for the span. Must be a 64-bit integer other than 0 and\nunique within a trace.", - "format": "uint64", - "type": "string" - }, "parentSpanId": { "description": "ID of the parent span, if any. Optional.", "format": "uint64", "type": "string" }, - "endTime": { - "description": "End time of the span in nanoseconds from the UNIX epoch.", - "format": "google-datetime", + "spanId": { + "description": "Identifier for the span. Must be a 64-bit integer other than 0 and\nunique within a trace.", + "format": "uint64", "type": "string" }, "startTime": { @@ -70,315 +360,25 @@ "type": "string" } }, - "id": "TraceSpan" + "type": "object" }, - "ListTracesResponse": { - "description": "The response message for the `ListTraces` method.", - "type": "object", + "Traces": { + "description": "List of new or updated traces.", + "id": "Traces", "properties": { "traces": { - "description": "List of trace records returned.", - "type": "array", + "description": "List of traces.", "items": { "$ref": "Trace" - } - }, - "nextPageToken": { - "description": "If defined, indicates that there are more traces that match the request\nand that this value should be passed to the next request to continue\nretrieving additional traces.", - "type": "string" + }, + "type": "array" } }, - "id": "ListTracesResponse" - }, - "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 `{}`.", - "type": "object", - "properties": {}, - "id": "Empty" - }, - "Trace": { - "description": "A trace describes how long it takes for an application to perform an\noperation. It consists of a set of spans, each of which represent a single\ntimed event within the operation.", - "type": "object", - "properties": { - "projectId": { - "description": "Project ID of the Cloud project where the trace data is stored.", - "type": "string" - }, - "spans": { - "description": "Collection of spans in the trace.", - "type": "array", - "items": { - "$ref": "TraceSpan" - } - }, - "traceId": { - "description": "Globally unique identifier for the trace. This identifier is a 128-bit\nnumeric value formatted as a 32-byte hex string.", - "type": "string" - } - }, - "id": "Trace" + "type": "object" } }, - "protocol": "rest", - "icons": { - "x16": "http://www.google.com/images/icons/product/search-16.gif", - "x32": "http://www.google.com/images/icons/product/search-32.gif" - }, - "canonicalName": "Cloud Trace", - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/trace.readonly": { - "description": "Read Trace data for a project or application" - }, - "https://www.googleapis.com/auth/trace.append": { - "description": "Write Trace data for a project or application" - }, - "https://www.googleapis.com/auth/cloud-platform": { - "description": "View and manage your data across Google Cloud Platform services" - } - } - } - }, - "rootUrl": "https://cloudtrace.googleapis.com/", - "ownerDomain": "google.com", - "name": "cloudtrace", - "batchPath": "batch", - "fullyEncodeReservedExpansion": true, - "title": "Stackdriver Trace API", - "ownerName": "Google", - "resources": { - "projects": { - "methods": { - "patchTraces": { - "description": "Sends new traces to Stackdriver Trace or updates existing traces. If the ID\nof a trace that you send matches that of an existing trace, any fields\nin the existing trace and its spans are overwritten by the provided values,\nand any new fields provided are merged with the existing trace data. If the\nID does not match, a new trace is created.", - "request": { - "$ref": "Traces" - }, - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "projectId" - ], - "httpMethod": "PATCH", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/trace.append" - ], - "parameters": { - "projectId": { - "description": "ID of the Cloud project where the trace data is stored.", - "required": true, - "type": "string", - "location": "path" - } - }, - "flatPath": "v1/projects/{projectId}/traces", - "path": "v1/projects/{projectId}/traces", - "id": "cloudtrace.projects.patchTraces" - } - }, - "resources": { - "traces": { - "methods": { - "list": { - "path": "v1/projects/{projectId}/traces", - "id": "cloudtrace.projects.traces.list", - "description": "Returns of a list of traces that match the specified filter conditions.", - "response": { - "$ref": "ListTracesResponse" - }, - "parameterOrder": [ - "projectId" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/trace.readonly" - ], - "parameters": { - "orderBy": { - "description": "Field used to sort the returned traces. Optional.\nCan be one of the following:\n\n* `trace_id`\n* `name` (`name` field of root span in the trace)\n* `duration` (difference between `end_time` and `start_time` fields of\n the root span)\n* `start` (`start_time` field of the root span)\n\nDescending order can be specified by appending `desc` to the sort field\n(for example, `name desc`).\n\nOnly one sort field is permitted.", - "type": "string", - "location": "query" - }, - "projectId": { - "location": "path", - "description": "ID of the Cloud project where the trace data is stored.", - "required": true, - "type": "string" - }, - "filter": { - "description": "An optional filter against labels for the request.\n\nBy default, searches use prefix matching. To specify exact match, prepend\na plus symbol (`+`) to the search term.\nMultiple terms are ANDed. Syntax:\n\n* `root:NAME_PREFIX` or `NAME_PREFIX`: Return traces where any root\n span starts with `NAME_PREFIX`.\n* `+root:NAME` or `+NAME`: Return traces where any root span's name is\n exactly `NAME`.\n* `span:NAME_PREFIX`: Return traces where any span starts with\n `NAME_PREFIX`.\n* `+span:NAME`: Return traces where any span's name is exactly\n `NAME`.\n* `latency:DURATION`: Return traces whose overall latency is\n greater or equal to than `DURATION`. Accepted units are nanoseconds\n (`ns`), milliseconds (`ms`), and seconds (`s`). Default is `ms`. For\n example, `latency:24ms` returns traces whose overall latency\n is greater than or equal to 24 milliseconds.\n* `label:LABEL_KEY`: Return all traces containing the specified\n label key (exact match, case-sensitive) regardless of the key:value\n pair's value (including empty values).\n* `LABEL_KEY:VALUE_PREFIX`: Return all traces containing the specified\n label key (exact match, case-sensitive) whose value starts with\n `VALUE_PREFIX`. Both a key and a value must be specified.\n* `+LABEL_KEY:VALUE`: Return all traces containing a key:value pair\n exactly matching the specified text. Both a key and a value must be\n specified.\n* `method:VALUE`: Equivalent to `/http/method:VALUE`.\n* `url:VALUE`: Equivalent to `/http/url:VALUE`.", - "type": "string", - "location": "query" - }, - "endTime": { - "location": "query", - "description": "End of the time interval (inclusive) during which the trace data was\ncollected from the application.", - "format": "google-datetime", - "type": "string" - }, - "pageToken": { - "location": "query", - "description": "Token identifying the page of results to return. If provided, use the\nvalue of the `next_page_token` field from a previous request. Optional.", - "type": "string" - }, - "startTime": { - "description": "Start of the time interval (inclusive) during which the trace data was\ncollected from the application.", - "format": "google-datetime", - "type": "string", - "location": "query" - }, - "pageSize": { - "description": "Maximum number of traces to return. If not specified or \u003c= 0, the\nimplementation selects a reasonable value. The implementation may\nreturn fewer traces than the requested page size. Optional.", - "format": "int32", - "type": "integer", - "location": "query" - }, - "view": { - "location": "query", - "enum": [ - "VIEW_TYPE_UNSPECIFIED", - "MINIMAL", - "ROOTSPAN", - "COMPLETE" - ], - "description": "Type of data returned for traces in the list. Optional. Default is\n`MINIMAL`.", - "type": "string" - } - }, - "flatPath": "v1/projects/{projectId}/traces" - }, - "get": { - "flatPath": "v1/projects/{projectId}/traces/{traceId}", - "path": "v1/projects/{projectId}/traces/{traceId}", - "id": "cloudtrace.projects.traces.get", - "description": "Gets a single trace by its ID.", - "response": { - "$ref": "Trace" - }, - "parameterOrder": [ - "projectId", - "traceId" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/trace.readonly" - ], - "parameters": { - "traceId": { - "location": "path", - "description": "ID of the trace to return.", - "required": true, - "type": "string" - }, - "projectId": { - "description": "ID of the Cloud project where the trace data is stored.", - "required": true, - "type": "string", - "location": "path" - } - } - } - } - } - } - } - }, - "parameters": { - "oauth_token": { - "location": "query", - "description": "OAuth 2.0 token for the current user.", - "type": "string" - }, - "bearer_token": { - "location": "query", - "description": "OAuth bearer token.", - "type": "string" - }, - "upload_protocol": { - "location": "query", - "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", - "type": "string" - }, - "prettyPrint": { - "location": "query", - "description": "Returns response with indentations and line breaks.", - "type": "boolean", - "default": "true" - }, - "fields": { - "description": "Selector specifying which fields to include in a partial response.", - "type": "string", - "location": "query" - }, - "uploadType": { - "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", - "type": "string", - "location": "query" - }, - "$.xgafv": { - "enumDescriptions": [ - "v1 error format", - "v2 error format" - ], - "location": "query", - "enum": [ - "1", - "2" - ], - "description": "V1 error format.", - "type": "string" - }, - "callback": { - "location": "query", - "description": "JSONP", - "type": "string" - }, - "alt": { - "enum": [ - "json", - "media", - "proto" - ], - "type": "string", - "enumDescriptions": [ - "Responses with Content-Type of application/json", - "Media download with context-dependent Content-Type", - "Responses with Content-Type of application/x-protobuf" - ], - "location": "query", - "description": "Data format for response.", - "default": "json" - }, - "access_token": { - "location": "query", - "description": "OAuth access token.", - "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.", - "type": "string", - "location": "query" - }, - "quotaUser": { - "location": "query", - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", - "type": "string" - }, - "pp": { - "description": "Pretty-print response.", - "type": "boolean", - "default": "true", - "location": "query" - } - }, - "version": "v1", - "baseUrl": "https://cloudtrace.googleapis.com/", "servicePath": "", - "description": "Sends application trace data to Stackdriver Trace for viewing. Trace data is collected for all App Engine applications by default. Trace data from other applications can be provided using this API.\n", - "kind": "discovery#restDescription" -} + "title": "Stackdriver Trace API", + "version": "v1", + "version_module": true +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/cloudtrace/v1/cloudtrace-gen.go b/vendor/google.golang.org/api/cloudtrace/v1/cloudtrace-gen.go index d692d2ab8..39bc34064 100644 --- a/vendor/google.golang.org/api/cloudtrace/v1/cloudtrace-gen.go +++ b/vendor/google.golang.org/api/cloudtrace/v1/cloudtrace-gen.go @@ -261,9 +261,11 @@ type TraceSpan struct { // * `/http/client_region` // * `/http/host` // * `/http/method` + // * `/http/path` // * `/http/redirected_url` // * `/http/request/size` // * `/http/response/size` + // * `/http/route` // * `/http/status_code` // * `/http/url` // * `/http/user_agent` diff --git a/vendor/google.golang.org/api/cloudtrace/v2/cloudtrace-api.json b/vendor/google.golang.org/api/cloudtrace/v2/cloudtrace-api.json index 422f413a6..fd0f3b495 100644 --- a/vendor/google.golang.org/api/cloudtrace/v2/cloudtrace-api.json +++ b/vendor/google.golang.org/api/cloudtrace/v2/cloudtrace-api.json @@ -1,10 +1,237 @@ { + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/cloud-platform": { + "description": "View and manage your data across Google Cloud Platform services" + }, + "https://www.googleapis.com/auth/trace.append": { + "description": "Write Trace data for a project or application" + } + } + } + }, + "basePath": "", + "baseUrl": "https://cloudtrace.googleapis.com/", + "batchPath": "batch", + "canonicalName": "Cloud Trace", + "description": "Sends application trace data to Stackdriver Trace for viewing. Trace data is collected for all App Engine applications by default. Trace data from other applications can be provided using this API.\n", "discoveryVersion": "v1", - "version_module": true, + "documentationLink": "https://cloud.google.com/trace", + "fullyEncodeReservedExpansion": true, + "icons": { + "x16": "http://www.google.com/images/icons/product/search-16.gif", + "x32": "http://www.google.com/images/icons/product/search-32.gif" + }, + "id": "cloudtrace:v2", + "kind": "discovery#restDescription", + "name": "cloudtrace", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "$.xgafv": { + "description": "V1 error format.", + "enum": [ + "1", + "2" + ], + "enumDescriptions": [ + "v1 error format", + "v2 error format" + ], + "location": "query", + "type": "string" + }, + "access_token": { + "description": "OAuth access token.", + "location": "query", + "type": "string" + }, + "alt": { + "default": "json", + "description": "Data format for response.", + "enum": [ + "json", + "media", + "proto" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json", + "Media download with context-dependent Content-Type", + "Responses with Content-Type of application/x-protobuf" + ], + "location": "query", + "type": "string" + }, + "bearer_token": { + "description": "OAuth bearer token.", + "location": "query", + "type": "string" + }, + "callback": { + "description": "JSONP", + "location": "query", + "type": "string" + }, + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "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.", + "location": "query", + "type": "string" + }, + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "pp": { + "default": "true", + "description": "Pretty-print response.", + "location": "query", + "type": "boolean" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", + "location": "query", + "type": "string" + }, + "uploadType": { + "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", + "location": "query", + "type": "string" + }, + "upload_protocol": { + "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", + "location": "query", + "type": "string" + } + }, + "protocol": "rest", + "resources": { + "projects": { + "resources": { + "traces": { + "methods": { + "batchWrite": { + "description": "Sends new spans to new or existing traces. You cannot update\nexisting spans.", + "flatPath": "v2/projects/{projectsId}/traces:batchWrite", + "httpMethod": "POST", + "id": "cloudtrace.projects.traces.batchWrite", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the project where the spans belong. The format is\n`projects/[PROJECT_ID]`.", + "location": "path", + "pattern": "^projects/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2/{+name}/traces:batchWrite", + "request": { + "$ref": "BatchWriteSpansRequest" + }, + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/trace.append" + ] + } + }, + "resources": { + "spans": { + "methods": { + "createSpan": { + "description": "Creates a new span.", + "flatPath": "v2/projects/{projectsId}/traces/{tracesId}/spans/{spansId}", + "httpMethod": "POST", + "id": "cloudtrace.projects.traces.spans.createSpan", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The resource name of the span in the following format:\n\n projects/[PROJECT_ID]/traces/[TRACE_ID]/spans/SPAN_ID is a unique identifier for a trace within a project;\nit is a 32-character hexadecimal encoding of a 16-byte array.\n\n[SPAN_ID] is a unique identifier for a span within a trace; it\nis a 16-character hexadecimal encoding of an 8-byte array.", + "location": "path", + "pattern": "^projects/[^/]+/traces/[^/]+/spans/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2/{+name}", + "request": { + "$ref": "Span" + }, + "response": { + "$ref": "Span" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/trace.append" + ] + } + } + } + } + } + } + } + }, + "revision": "20180130", + "rootUrl": "https://cloudtrace.googleapis.com/", "schemas": { + "Annotation": { + "description": "Text annotation with a set of attributes.", + "id": "Annotation", + "properties": { + "attributes": { + "$ref": "Attributes", + "description": "A set of attributes on the annotation. You can have up to 4 attributes\nper Annotation." + }, + "description": { + "$ref": "TruncatableString", + "description": "A user-supplied message describing the event. The maximum length for\nthe description is 256 bytes." + } + }, + "type": "object" + }, + "AttributeValue": { + "description": "The allowed types for [VALUE] in a `[KEY]:[VALUE]` attribute.", + "id": "AttributeValue", + "properties": { + "boolValue": { + "description": "A Boolean value represented by `true` or `false`.", + "type": "boolean" + }, + "intValue": { + "description": "A 64-bit signed integer.", + "format": "int64", + "type": "string" + }, + "stringValue": { + "$ref": "TruncatableString", + "description": "A string up to 256 bytes long." + } + }, + "type": "object" + }, "Attributes": { "description": "A set of attributes, each in the format `[KEY]:[VALUE]`.", - "type": "object", + "id": "Attributes", "properties": { "attributeMap": { "additionalProperties": { @@ -19,11 +246,64 @@ "type": "integer" } }, - "id": "Attributes" + "type": "object" + }, + "BatchWriteSpansRequest": { + "description": "The request message for the `BatchWriteSpans` method.", + "id": "BatchWriteSpansRequest", + "properties": { + "spans": { + "description": "A list of new spans. The span names must not match existing\nspans, or the results are undefined.", + "items": { + "$ref": "Span" + }, + "type": "array" + } + }, + "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" + }, + "Link": { + "description": "A pointer from the current span to another span in the same trace or in a\ndifferent trace. For example, this can be used in batching operations,\nwhere a single batch handler processes multiple requests from different\ntraces or when the handler receives a request from a different project.", + "id": "Link", + "properties": { + "attributes": { + "$ref": "Attributes", + "description": "A set of attributes on the link. You have have up to 32 attributes per\nlink." + }, + "spanId": { + "description": "The [SPAN_ID] for a span within a trace.", + "type": "string" + }, + "traceId": { + "description": "The [TRACE_ID] for a trace within a project.", + "type": "string" + }, + "type": { + "description": "The relationship of the current span relative to the linked span.", + "enum": [ + "TYPE_UNSPECIFIED", + "CHILD_LINKED_SPAN", + "PARENT_LINKED_SPAN" + ], + "enumDescriptions": [ + "The relationship of the two spans is unknown.", + "The linked span is a child of the current span.", + "The linked span is a parent of the current span." + ], + "type": "string" + } + }, + "type": "object" }, "Links": { "description": "A collection of links, which are references from this span to a span\nin the same or different trace.", - "type": "object", + "id": "Links", "properties": { "droppedLinksCount": { "description": "The number of dropped links after the maximum size was enforced. If\nthis value is 0, then no links were dropped.", @@ -32,92 +312,40 @@ }, "link": { "description": "A collection of links.", - "type": "array", "items": { "$ref": "Link" - } + }, + "type": "array" } }, - "id": "Links" - }, - "StackTrace": { - "description": "A call stack appearing in a trace.", - "type": "object", - "properties": { - "stackTraceHashId": { - "description": "The hash ID is used to conserve network bandwidth for duplicate\nstack traces within a single trace.\n\nOften multiple spans will have identical stack traces.\nThe first occurrence of a stack trace should contain both the\n`stackFrame` content and a value in `stackTraceHashId`.\n\nSubsequent spans within the same request can refer\nto that stack trace by only setting `stackTraceHashId`.", - "format": "int64", - "type": "string" - }, - "stackFrames": { - "$ref": "StackFrames", - "description": "Stack frames in this stack trace. A maximum of 128 frames are allowed." - } - }, - "id": "StackTrace" - }, - "TruncatableString": { - "description": "Represents a string that might be shortened to a specified length.", - "type": "object", - "properties": { - "truncatedByteCount": { - "description": "The number of bytes removed from the original string. If this\nvalue is 0, then the string was not shortened.", - "format": "int32", - "type": "integer" - }, - "value": { - "description": "The shortened string. For example, if the original string is 500\nbytes long and the limit of the string is 128 bytes, then\n`value` contains the first 128 bytes of the 500-byte string.\n\nTruncation always happens on a UTF8 character boundary. If there\nare multi-byte characters in the string, then the length of the\nshortened string might be less than the size limit.", - "type": "string" - } - }, - "id": "TruncatableString" - }, - "TimeEvent": { - "description": "A time-stamped annotation or message event in the Span.", - "type": "object", - "properties": { - "messageEvent": { - "$ref": "MessageEvent", - "description": "An event describing a message sent/received between Spans." - }, - "time": { - "description": "The timestamp indicating the time the event occurred.", - "format": "google-datetime", - "type": "string" - }, - "annotation": { - "$ref": "Annotation", - "description": "Text annotation with a set of attributes." - } - }, - "id": "TimeEvent" + "type": "object" }, "MessageEvent": { "description": "An event describing a message sent/received between Spans.", - "type": "object", + "id": "MessageEvent", "properties": { - "type": { - "enum": [ - "TYPE_UNSPECIFIED", - "SENT", - "RECEIVED" - ], - "description": "Type of MessageEvent. Indicates whether the message was sent or\nreceived.", - "type": "string", - "enumDescriptions": [ - "Unknown event type.", - "Indicates a sent message.", - "Indicates a received message." - ] + "compressedSizeBytes": { + "description": "The number of compressed bytes sent or received. If missing assumed to\nbe the same size as uncompressed.", + "format": "int64", + "type": "string" }, "id": { "description": "An identifier for the MessageEvent's message that can be used to match\nSENT and RECEIVED MessageEvents. It is recommended to be unique within\na Span.", "format": "int64", "type": "string" }, - "compressedSizeBytes": { - "description": "The number of compressed bytes sent or received. If missing assumed to\nbe the same size as uncompressed.", - "format": "int64", + "type": { + "description": "Type of MessageEvent. Indicates whether the message was sent or\nreceived.", + "enum": [ + "TYPE_UNSPECIFIED", + "SENT", + "RECEIVED" + ], + "enumDescriptions": [ + "Unknown event type.", + "Indicates a sent message.", + "Indicates a received message." + ], "type": "string" }, "uncompressedSizeBytes": { @@ -126,23 +354,97 @@ "type": "string" } }, - "id": "MessageEvent" + "type": "object" + }, + "Module": { + "description": "Binary module.", + "id": "Module", + "properties": { + "buildId": { + "$ref": "TruncatableString", + "description": "A unique identifier for the module, usually a hash of its\ncontents (up to 128 bytes)." + }, + "module": { + "$ref": "TruncatableString", + "description": "For example: main binary, kernel modules, and dynamic libraries\nsuch as libc.so, sharedlib.so (up to 256 bytes)." + } + }, + "type": "object" + }, + "Span": { + "description": "A span represents a single operation within a trace. Spans can be\nnested to form a trace tree. Often, a trace contains a root span\nthat describes the end-to-end latency, and one or more subspans for\nits sub-operations. A trace can also contain multiple root spans,\nor none at all. Spans do not need to be contiguous\u0026mdash;there may be\ngaps or overlaps between spans in a trace.", + "id": "Span", + "properties": { + "attributes": { + "$ref": "Attributes", + "description": "A set of attributes on the span. You can have up to 32 attributes per\nspan." + }, + "childSpanCount": { + "description": "An optional number of child spans that were generated while this span\nwas active. If set, allows implementation to detect missing child spans.", + "format": "int32", + "type": "integer" + }, + "displayName": { + "$ref": "TruncatableString", + "description": "A description of the span's operation (up to 128 bytes).\nStackdriver Trace displays the description in the\n{% dynamic print site_values.console_name %}.\nFor example, the display name can be a qualified method name or a file name\nand a line number where the operation is called. A best practice is to use\nthe same display name within an application and at the same call point.\nThis makes it easier to correlate spans in different traces." + }, + "endTime": { + "description": "The end time of the span. On the client side, this is the time kept by\nthe local machine where the span execution ends. On the server side, this\nis the time when the server application handler stops running.", + "format": "google-datetime", + "type": "string" + }, + "links": { + "$ref": "Links", + "description": "Links associated with the span. You can have up to 128 links per Span." + }, + "name": { + "description": "The resource name of the span in the following format:\n\n projects/[PROJECT_ID]/traces/[TRACE_ID]/spans/SPAN_ID is a unique identifier for a trace within a project;\nit is a 32-character hexadecimal encoding of a 16-byte array.\n\n[SPAN_ID] is a unique identifier for a span within a trace; it\nis a 16-character hexadecimal encoding of an 8-byte array.", + "type": "string" + }, + "parentSpanId": { + "description": "The [SPAN_ID] of this span's parent span. If this is a root span,\nthen this field must be empty.", + "type": "string" + }, + "sameProcessAsParentSpan": { + "description": "(Optional) Set this parameter to indicate whether this span is in\nthe same process as its parent. If you do not set this parameter,\nStackdriver Trace is unable to take advantage of this helpful\ninformation.", + "type": "boolean" + }, + "spanId": { + "description": "The [SPAN_ID] portion of the span's resource name.", + "type": "string" + }, + "stackTrace": { + "$ref": "StackTrace", + "description": "Stack trace captured at the start of the span." + }, + "startTime": { + "description": "The start time of the span. On the client side, this is the time kept by\nthe local machine where the span execution starts. On the server side, this\nis the time when the server's application handler starts running.", + "format": "google-datetime", + "type": "string" + }, + "status": { + "$ref": "Status", + "description": "An optional final status for this span." + }, + "timeEvents": { + "$ref": "TimeEvents", + "description": "A set of time events. You can have up to 32 annotations and 128 message\nevents per span." + } + }, + "type": "object" }, "StackFrame": { "description": "Represents a single stack frame in a stack trace.", - "type": "object", + "id": "StackFrame", "properties": { + "columnNumber": { + "description": "The column number where the function call appears, if available.\nThis is important in JavaScript because of its anonymous functions.", + "format": "int64", + "type": "string" + }, "fileName": { - "description": "The name of the source file where the function call appears (up to 256\nbytes).", - "$ref": "TruncatableString" - }, - "sourceVersion": { - "description": "The version of the deployed source code (up to 128 bytes).", - "$ref": "TruncatableString" - }, - "originalFunctionName": { - "description": "An un-mangled function name, if `function_name` is\n[mangled](http://www.avabodh.com/cxxin/namemangling.html). The name can\nbe fully-qualified (up to 1024 bytes).", - "$ref": "TruncatableString" + "$ref": "TruncatableString", + "description": "The name of the source file where the function call appears (up to 256\nbytes)." }, "functionName": { "$ref": "TruncatableString", @@ -157,83 +459,108 @@ "$ref": "Module", "description": "The binary module from where the code was loaded." }, - "columnNumber": { - "description": "The column number where the function call appears, if available.\nThis is important in JavaScript because of its anonymous functions.", - "format": "int64", - "type": "string" - } - }, - "id": "StackFrame" - }, - "Link": { - "description": "A pointer from the current span to another span in the same trace or in a\ndifferent trace. For example, this can be used in batching operations,\nwhere a single batch handler processes multiple requests from different\ntraces or when the handler receives a request from a different project.", - "type": "object", - "properties": { - "type": { - "enum": [ - "TYPE_UNSPECIFIED", - "CHILD_LINKED_SPAN", - "PARENT_LINKED_SPAN" - ], - "description": "The relationship of the current span relative to the linked span.", - "type": "string", - "enumDescriptions": [ - "The relationship of the two spans is unknown.", - "The linked span is a child of the current span.", - "The linked span is a parent of the current span." - ] - }, - "traceId": { - "description": "The [TRACE_ID] for a trace within a project.", - "type": "string" - }, - "attributes": { - "description": "A set of attributes on the link. You have have up to 32 attributes per\nlink.", - "$ref": "Attributes" - }, - "spanId": { - "description": "The [SPAN_ID] for a span within a trace.", - "type": "string" - } - }, - "id": "Link" - }, - "Annotation": { - "properties": { - "attributes": { - "description": "A set of attributes on the annotation. You can have up to 4 attributes\nper Annotation.", - "$ref": "Attributes" - }, - "description": { + "originalFunctionName": { "$ref": "TruncatableString", - "description": "A user-supplied message describing the event. The maximum length for\nthe description is 256 bytes." + "description": "An un-mangled function name, if `function_name` is\n[mangled](http://www.avabodh.com/cxxin/namemangling.html). The name can\nbe fully-qualified (up to 1024 bytes)." + }, + "sourceVersion": { + "$ref": "TruncatableString", + "description": "The version of the deployed source code (up to 128 bytes)." } }, - "id": "Annotation", - "description": "Text annotation with a set of attributes.", "type": "object" }, "StackFrames": { + "description": "A collection of stack frames, which can be truncated.", + "id": "StackFrames", "properties": { - "frame": { - "description": "Stack frames in this call stack.", - "type": "array", - "items": { - "$ref": "StackFrame" - } - }, "droppedFramesCount": { "description": "The number of stack frames that were dropped because there\nwere too many stack frames.\nIf this value is 0, then no stack frames were dropped.", "format": "int32", "type": "integer" + }, + "frame": { + "description": "Stack frames in this call stack.", + "items": { + "$ref": "StackFrame" + }, + "type": "array" + } + }, + "type": "object" + }, + "StackTrace": { + "description": "A call stack appearing in a trace.", + "id": "StackTrace", + "properties": { + "stackFrames": { + "$ref": "StackFrames", + "description": "Stack frames in this stack trace. A maximum of 128 frames are allowed." + }, + "stackTraceHashId": { + "description": "The hash ID is used to conserve network bandwidth for duplicate\nstack traces within a single trace.\n\nOften multiple spans will have identical stack traces.\nThe first occurrence of a stack trace should contain both the\n`stackFrame` content and a value in `stackTraceHashId`.\n\nSubsequent spans within the same request can refer\nto that stack trace by only setting `stackTraceHashId`.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "Status": { + "description": "The `Status` type defines a logical error model that is suitable for different\nprogramming environments, including REST APIs and RPC APIs. It is used by\n[gRPC](https://github.com/grpc). The error model is designed to be:\n\n- Simple to use and understand for most users\n- Flexible enough to meet unexpected needs\n\n# Overview\n\nThe `Status` message contains three pieces of data: error code, error message,\nand error details. The error code should be an enum value of\ngoogle.rpc.Code, but it may accept additional error codes if needed. The\nerror message should be a developer-facing English message that helps\ndevelopers *understand* and *resolve* the error. If a localized user-facing\nerror message is needed, put the localized message in the error details or\nlocalize it in the client. The optional error details may contain arbitrary\ninformation about the error. There is a predefined set of error detail types\nin the package `google.rpc` that can be used for common error conditions.\n\n# Language mapping\n\nThe `Status` message is the logical representation of the error model, but it\nis not necessarily the actual wire format. When the `Status` message is\nexposed in different client libraries and different wire protocols, it can be\nmapped differently. For example, it will likely be mapped to some exceptions\nin Java, but more likely mapped to some error codes in C.\n\n# Other uses\n\nThe error model and the `Status` message can be used in a variety of\nenvironments, either with or without APIs, to provide a\nconsistent developer experience across different environments.\n\nExample uses of this error model include:\n\n- Partial errors. If a service needs to return partial errors to the client,\n it may embed the `Status` in the normal response to indicate the partial\n errors.\n\n- Workflow errors. A typical workflow has multiple steps. Each step may\n have a `Status` message for error reporting.\n\n- Batch operations. If a client uses batch request and batch response, the\n `Status` message should be used directly inside batch response, one for\n each error sub-response.\n\n- Asynchronous operations. If an API call embeds asynchronous operation\n results in its response, the status of those operations should be\n represented directly using the `Status` message.\n\n- Logging. If some API errors are stored in logs, the message `Status` could\n be used directly after any stripping needed for security/privacy reasons.", + "id": "Status", + "properties": { + "code": { + "description": "The status code, which should be an enum value of google.rpc.Code.", + "format": "int32", + "type": "integer" + }, + "details": { + "description": "A list of messages that carry the error details. There is a common set of\nmessage types for APIs to use.", + "items": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "A developer-facing error message, which should be in English. Any\nuser-facing error message should be localized and sent in the\ngoogle.rpc.Status.details field, or localized by the client.", + "type": "string" + } + }, + "type": "object" + }, + "TimeEvent": { + "description": "A time-stamped annotation or message event in the Span.", + "id": "TimeEvent", + "properties": { + "annotation": { + "$ref": "Annotation", + "description": "Text annotation with a set of attributes." + }, + "messageEvent": { + "$ref": "MessageEvent", + "description": "An event describing a message sent/received between Spans." + }, + "time": { + "description": "The timestamp indicating the time the event occurred.", + "format": "google-datetime", + "type": "string" } }, - "id": "StackFrames", - "description": "A collection of stack frames, which can be truncated.", "type": "object" }, "TimeEvents": { + "description": "A collection of `TimeEvent`s. A `TimeEvent` is a time-stamped annotation\non the span, consisting of either user-supplied key:value pairs, or\ndetails of a message sent/received between Spans.", + "id": "TimeEvents", "properties": { + "droppedAnnotationsCount": { + "description": "The number of dropped annotations in all the included time events.\nIf the value is 0, then no annotations were dropped.", + "format": "int32", + "type": "integer" + }, "droppedMessageEventsCount": { "description": "The number of dropped message events in all the included time events.\nIf the value is 0, then no message events were dropped.", "format": "int32", @@ -241,360 +568,33 @@ }, "timeEvent": { "description": "A collection of `TimeEvent`s.", - "type": "array", "items": { "$ref": "TimeEvent" - } - }, - "droppedAnnotationsCount": { - "description": "The number of dropped annotations in all the included time events.\nIf the value is 0, then no annotations were dropped.", - "format": "int32", - "type": "integer" - } - }, - "id": "TimeEvents", - "description": "A collection of `TimeEvent`s. A `TimeEvent` is a time-stamped annotation\non the span, consisting of either user-supplied key:value pairs, or\ndetails of a message sent/received between Spans.", - "type": "object" - }, - "Module": { - "description": "Binary module.", - "type": "object", - "properties": { - "module": { - "$ref": "TruncatableString", - "description": "For example: main binary, kernel modules, and dynamic libraries\nsuch as libc.so, sharedlib.so (up to 256 bytes)." - }, - "buildId": { - "description": "A unique identifier for the module, usually a hash of its\ncontents (up to 128 bytes).", - "$ref": "TruncatableString" - } - }, - "id": "Module" - }, - "Status": { - "properties": { - "details": { - "description": "A list of messages that carry the error details. There is a common set of\nmessage types for APIs to use.", - "type": "array", - "items": { - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - }, - "type": "object" - } - }, - "code": { - "description": "The status code, which should be an enum value of google.rpc.Code.", - "format": "int32", - "type": "integer" - }, - "message": { - "description": "A developer-facing error message, which should be in English. Any\nuser-facing error message should be localized and sent in the\ngoogle.rpc.Status.details field, or localized by the client.", - "type": "string" - } - }, - "id": "Status", - "description": "The `Status` type defines a logical error model that is suitable for different\nprogramming environments, including REST APIs and RPC APIs. It is used by\n[gRPC](https://github.com/grpc). The error model is designed to be:\n\n- Simple to use and understand for most users\n- Flexible enough to meet unexpected needs\n\n# Overview\n\nThe `Status` message contains three pieces of data: error code, error message,\nand error details. The error code should be an enum value of\ngoogle.rpc.Code, but it may accept additional error codes if needed. The\nerror message should be a developer-facing English message that helps\ndevelopers *understand* and *resolve* the error. If a localized user-facing\nerror message is needed, put the localized message in the error details or\nlocalize it in the client. The optional error details may contain arbitrary\ninformation about the error. There is a predefined set of error detail types\nin the package `google.rpc` that can be used for common error conditions.\n\n# Language mapping\n\nThe `Status` message is the logical representation of the error model, but it\nis not necessarily the actual wire format. When the `Status` message is\nexposed in different client libraries and different wire protocols, it can be\nmapped differently. For example, it will likely be mapped to some exceptions\nin Java, but more likely mapped to some error codes in C.\n\n# Other uses\n\nThe error model and the `Status` message can be used in a variety of\nenvironments, either with or without APIs, to provide a\nconsistent developer experience across different environments.\n\nExample uses of this error model include:\n\n- Partial errors. If a service needs to return partial errors to the client,\n it may embed the `Status` in the normal response to indicate the partial\n errors.\n\n- Workflow errors. A typical workflow has multiple steps. Each step may\n have a `Status` message for error reporting.\n\n- Batch operations. If a client uses batch request and batch response, the\n `Status` message should be used directly inside batch response, one for\n each error sub-response.\n\n- Asynchronous operations. If an API call embeds asynchronous operation\n results in its response, the status of those operations should be\n represented directly using the `Status` message.\n\n- Logging. If some API errors are stored in logs, the message `Status` could\n be used directly after any stripping needed for security/privacy reasons.", - "type": "object" - }, - "BatchWriteSpansRequest": { - "description": "The request message for the `BatchWriteSpans` method.", - "type": "object", - "properties": { - "spans": { - "description": "A list of new spans. The span names must not match existing\nspans, or the results are undefined.", - "type": "array", - "items": { - "$ref": "Span" - } - } - }, - "id": "BatchWriteSpansRequest" - }, - "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 `{}`.", - "type": "object", - "properties": {}, - "id": "Empty" - }, - "Span": { - "description": "A span represents a single operation within a trace. Spans can be\nnested to form a trace tree. Often, a trace contains a root span\nthat describes the end-to-end latency, and one or more subspans for\nits sub-operations. A trace can also contain multiple root spans,\nor none at all. Spans do not need to be contiguous—there may be\ngaps or overlaps between spans in a trace.", - "type": "object", - "properties": { - "startTime": { - "description": "The start time of the span. On the client side, this is the time kept by\nthe local machine where the span execution starts. On the server side, this\nis the time when the server's application handler starts running.", - "format": "google-datetime", - "type": "string" - }, - "displayName": { - "description": "A description of the span's operation (up to 128 bytes).\nStackdriver Trace displays the description in the\n{% dynamic print site_values.console_name %}.\nFor example, the display name can be a qualified method name or a file name\nand a line number where the operation is called. A best practice is to use\nthe same display name within an application and at the same call point.\nThis makes it easier to correlate spans in different traces.", - "$ref": "TruncatableString" - }, - "timeEvents": { - "$ref": "TimeEvents", - "description": "A set of time events. You can have up to 32 annotations and 128 message\nevents per span." - }, - "links": { - "description": "Links associated with the span. You can have up to 128 links per Span.", - "$ref": "Links" - }, - "attributes": { - "description": "A set of attributes on the span. You can have up to 32 attributes per\nspan.", - "$ref": "Attributes" - }, - "spanId": { - "description": "The [SPAN_ID] portion of the span's resource name.", - "type": "string" - }, - "childSpanCount": { - "description": "An optional number of child spans that were generated while this span\nwas active. If set, allows implementation to detect missing child spans.", - "format": "int32", - "type": "integer" - }, - "sameProcessAsParentSpan": { - "description": "(Optional) Set this parameter to indicate whether this span is in\nthe same process as its parent. If you do not set this parameter,\nStackdriver Trace is unable to take advantage of this helpful\ninformation.", - "type": "boolean" - }, - "status": { - "$ref": "Status", - "description": "An optional final status for this span." - }, - "name": { - "description": "The resource name of the span in the following format:\n\n projects/[PROJECT_ID]/traces/[TRACE_ID]/spans/SPAN_ID is a unique identifier for a trace within a project;\nit is a 32-character hexadecimal encoding of a 16-byte array.\n\n[SPAN_ID] is a unique identifier for a span within a trace; it\nis a 16-character hexadecimal encoding of an 8-byte array.", - "type": "string" - }, - "stackTrace": { - "description": "Stack trace captured at the start of the span.", - "$ref": "StackTrace" - }, - "parentSpanId": { - "description": "The [SPAN_ID] of this span's parent span. If this is a root span,\nthen this field must be empty.", - "type": "string" - }, - "endTime": { - "description": "The end time of the span. On the client side, this is the time kept by\nthe local machine where the span execution ends. On the server side, this\nis the time when the server application handler stops running.", - "format": "google-datetime", - "type": "string" - } - }, - "id": "Span" - }, - "AttributeValue": { - "description": "The allowed types for [VALUE] in a `[KEY]:[VALUE]` attribute.", - "type": "object", - "properties": { - "intValue": { - "description": "A 64-bit signed integer.", - "format": "int64", - "type": "string" - }, - "stringValue": { - "description": "A string up to 256 bytes long.", - "$ref": "TruncatableString" - }, - "boolValue": { - "description": "A Boolean value represented by `true` or `false`.", - "type": "boolean" - } - }, - "id": "AttributeValue" - } - }, - "protocol": "rest", - "icons": { - "x32": "http://www.google.com/images/icons/product/search-32.gif", - "x16": "http://www.google.com/images/icons/product/search-16.gif" - }, - "canonicalName": "Cloud Trace", - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/trace.append": { - "description": "Write Trace data for a project or application" - }, - "https://www.googleapis.com/auth/cloud-platform": { - "description": "View and manage your data across Google Cloud Platform services" - } - } - } - }, - "rootUrl": "https://cloudtrace.googleapis.com/", - "ownerDomain": "google.com", - "name": "cloudtrace", - "batchPath": "batch", - "fullyEncodeReservedExpansion": true, - "title": "Stackdriver Trace API", - "ownerName": "Google", - "resources": { - "projects": { - "resources": { - "traces": { - "methods": { - "batchWrite": { - "description": "Sends new spans to new or existing traces. You cannot update\nexisting spans.", - "request": { - "$ref": "BatchWriteSpansRequest" - }, - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/trace.append" - ], - "parameters": { - "name": { - "description": "Required. The name of the project where the spans belong. The format is\n`projects/[PROJECT_ID]`.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+$", - "location": "path" - } - }, - "flatPath": "v2/projects/{projectsId}/traces:batchWrite", - "path": "v2/{+name}/traces:batchWrite", - "id": "cloudtrace.projects.traces.batchWrite" - } }, - "resources": { - "spans": { - "methods": { - "createSpan": { - "request": { - "$ref": "Span" - }, - "description": "Creates a new span.", - "response": { - "$ref": "Span" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "POST", - "parameters": { - "name": { - "description": "The resource name of the span in the following format:\n\n projects/[PROJECT_ID]/traces/[TRACE_ID]/spans/SPAN_ID is a unique identifier for a trace within a project;\nit is a 32-character hexadecimal encoding of a 16-byte array.\n\n[SPAN_ID] is a unique identifier for a span within a trace; it\nis a 16-character hexadecimal encoding of an 8-byte array.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/traces/[^/]+/spans/[^/]+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/trace.append" - ], - "flatPath": "v2/projects/{projectsId}/traces/{tracesId}/spans/{spansId}", - "path": "v2/{+name}", - "id": "cloudtrace.projects.traces.spans.createSpan" - } - } - } - } + "type": "array" } - } + }, + "type": "object" + }, + "TruncatableString": { + "description": "Represents a string that might be shortened to a specified length.", + "id": "TruncatableString", + "properties": { + "truncatedByteCount": { + "description": "The number of bytes removed from the original string. If this\nvalue is 0, then the string was not shortened.", + "format": "int32", + "type": "integer" + }, + "value": { + "description": "The shortened string. For example, if the original string is 500\nbytes long and the limit of the string is 128 bytes, then\n`value` contains the first 128 bytes of the 500-byte string.\n\nTruncation always happens on a UTF8 character boundary. If there\nare multi-byte characters in the string, then the length of the\nshortened string might be less than the size limit.", + "type": "string" + } + }, + "type": "object" } }, - "parameters": { - "upload_protocol": { - "location": "query", - "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", - "type": "string" - }, - "prettyPrint": { - "location": "query", - "description": "Returns response with indentations and line breaks.", - "type": "boolean", - "default": "true" - }, - "fields": { - "description": "Selector specifying which fields to include in a partial response.", - "type": "string", - "location": "query" - }, - "uploadType": { - "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", - "type": "string", - "location": "query" - }, - "callback": { - "description": "JSONP", - "type": "string", - "location": "query" - }, - "$.xgafv": { - "enumDescriptions": [ - "v1 error format", - "v2 error format" - ], - "location": "query", - "enum": [ - "1", - "2" - ], - "description": "V1 error format.", - "type": "string" - }, - "alt": { - "type": "string", - "enumDescriptions": [ - "Responses with Content-Type of application/json", - "Media download with context-dependent Content-Type", - "Responses with Content-Type of application/x-protobuf" - ], - "location": "query", - "description": "Data format for response.", - "default": "json", - "enum": [ - "json", - "media", - "proto" - ] - }, - "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.", - "type": "string", - "location": "query" - }, - "access_token": { - "description": "OAuth access token.", - "type": "string", - "location": "query" - }, - "quotaUser": { - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", - "type": "string", - "location": "query" - }, - "pp": { - "description": "Pretty-print response.", - "type": "boolean", - "default": "true", - "location": "query" - }, - "bearer_token": { - "location": "query", - "description": "OAuth bearer token.", - "type": "string" - }, - "oauth_token": { - "description": "OAuth 2.0 token for the current user.", - "type": "string", - "location": "query" - } - }, - "version": "v2", - "baseUrl": "https://cloudtrace.googleapis.com/", - "kind": "discovery#restDescription", - "description": "Sends application trace data to Stackdriver Trace for viewing. Trace data is collected for all App Engine applications by default. Trace data from other applications can be provided using this API.\n", "servicePath": "", - "basePath": "", - "revision": "20180109", - "documentationLink": "https://cloud.google.com/trace", - "id": "cloudtrace:v2" -} + "title": "Stackdriver Trace API", + "version": "v2", + "version_module": true +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/clouduseraccounts/v0.alpha/clouduseraccounts-api.json b/vendor/google.golang.org/api/clouduseraccounts/v0.alpha/clouduseraccounts-api.json index 110083dcc..7680f8c0e 100644 --- a/vendor/google.golang.org/api/clouduseraccounts/v0.alpha/clouduseraccounts-api.json +++ b/vendor/google.golang.org/api/clouduseraccounts/v0.alpha/clouduseraccounts-api.json @@ -1,1853 +1,1853 @@ { - "kind": "discovery#restDescription", - "etag": "\"YWOzh2SDasdU84ArJnpYek-OMdg/lOQeocShB0dxGwrtxzB56jZ95Xk\"", - "discoveryVersion": "v1", - "id": "clouduseraccounts:alpha", - "name": "clouduseraccounts", - "canonicalName": "Cloud User Accounts", - "version": "alpha", - "revision": "20160316", - "title": "Cloud User Accounts API", - "description": "Creates and manages users and groups for accessing Google Compute Engine virtual machines.", - "ownerDomain": "google.com", - "ownerName": "Google", - "icons": { - "x16": "https://www.google.com/images/icons/product/compute_engine-16.png", - "x32": "https://www.google.com/images/icons/product/compute_engine-32.png" - }, - "documentationLink": "https://cloud.google.com/compute/docs/access/user-accounts/api/latest/", - "protocol": "rest", - "baseUrl": "https://www.googleapis.com/clouduseraccounts/alpha/projects/", - "basePath": "/clouduseraccounts/alpha/projects/", - "rootUrl": "https://www.googleapis.com/", - "servicePath": "clouduseraccounts/alpha/projects/", - "batchPath": "batch/clouduseraccounts/alpha", - "parameters": { - "alt": { - "type": "string", - "description": "Data format for the response.", - "default": "json", - "enum": [ - "json" - ], - "enumDescriptions": [ - "Responses with Content-Type of application/json" - ], - "location": "query" - }, - "fields": { - "type": "string", - "description": "Selector specifying which fields to include in a partial response.", - "location": "query" - }, - "key": { - "type": "string", - "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" - }, - "oauth_token": { - "type": "string", - "description": "OAuth 2.0 token for the current user.", - "location": "query" - }, - "prettyPrint": { - "type": "boolean", - "description": "Returns response with indentations and line breaks.", - "default": "true", - "location": "query" - }, - "quotaUser": { - "type": "string", - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", - "location": "query" - }, - "userIp": { - "type": "string", - "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", - "location": "query" - } - }, - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/cloud-platform": { - "description": "View and manage your data across Google Cloud Platform services" - }, - "https://www.googleapis.com/auth/cloud-platform.read-only": { - "description": "View your data across Google Cloud Platform services" - }, - "https://www.googleapis.com/auth/cloud.useraccounts": { - "description": "Manage your Google Cloud User Accounts" - }, - "https://www.googleapis.com/auth/cloud.useraccounts.readonly": { - "description": "View your Google Cloud User Accounts" - } - } - } - }, - "schemas": { - "AuditConfig": { - "id": "AuditConfig", - "type": "object", - "description": "Enables \"data access\" audit logging for a service and specifies a list of members that are log-exempted.", - "properties": { - "exemptedMembers": { - "type": "array", - "description": "Specifies the identities that are exempted from \"data access\" audit logging for the `service` specified above. Follows the same format of Binding.members.", - "items": { - "type": "string" - } - }, - "service": { - "type": "string", - "description": "Specifies a service that will be enabled for \"data access\" audit logging. For example, `resourcemanager`, `storage`, `compute`. `allServices` is a special value that covers all services." - } - } - }, - "AuthorizedKeysView": { - "id": "AuthorizedKeysView", - "type": "object", - "description": "A list of authorized public keys for a user account.", - "properties": { - "keys": { - "type": "array", - "description": "[Output Only] The list of authorized public keys in SSH format.", - "items": { - "type": "string" - } - }, - "sudoer": { - "type": "boolean", - "description": "[Output Only] Whether the user has the ability to elevate on the instance that requested the authorized keys." - } - } - }, - "Binding": { - "id": "Binding", - "type": "object", - "description": "Associates `members` with a `role`.", - "properties": { - "members": { - "type": "array", - "description": "Specifies the identities requesting access for a Cloud Platform resource. `members` can have the following values:\n\n* `allUsers`: A special identifier that represents anyone who is on the internet; with or without a Google account.\n\n* `allAuthenticatedUsers`: A special identifier that represents anyone who is authenticated with a Google account or a service account.\n\n* `user:{emailid}`: An email address that represents a specific Google account. For example, `alice@gmail.com` or `joe@example.com`.\n\n* `serviceAccount:{emailid}`: An email address that represents a service account. For example, `my-other-app@appspot.gserviceaccount.com`.\n\n* `group:{emailid}`: An email address that represents a Google group. For example, `admins@example.com`.\n\n* `domain:{domain}`: A Google Apps domain name that represents all the users of that domain. For example, `google.com` or `example.com`.", - "items": { - "type": "string" - } - }, - "role": { - "type": "string", - "description": "Role that is assigned to `members`. For example, `roles/viewer`, `roles/editor`, or `roles/owner`." - } - } - }, - "Condition": { - "id": "Condition", - "type": "object", - "description": "A condition to be met.", - "properties": { - "iam": { - "type": "string", - "description": "Trusted attributes supplied by the IAM system.", - "enum": [ - "ATTRIBUTION", - "AUTHORITY", - "NO_ATTR" - ], - "enumDescriptions": [ - "", - "", - "" - ] - }, - "op": { - "type": "string", - "description": "An operator to apply the subject with.", - "enum": [ - "DISCHARGED", - "EQUALS", - "IN", - "NOT_EQUALS", - "NOT_IN", - "NO_OP" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "" - ] - }, - "svc": { - "type": "string", - "description": "Trusted attributes discharged by the service." - }, - "sys": { - "type": "string", - "description": "Trusted attributes supplied by any service that owns resources and uses the IAM system for access control.", - "enum": [ - "IP", - "NAME", - "NO_ATTR", - "REGION", - "SERVICE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "" - ] - }, - "value": { - "type": "string", - "description": "The object of the condition. Exactly one of these must be set." - }, - "values": { - "type": "array", - "description": "The objects of the condition. This is mutually exclusive with 'value'.", - "items": { - "type": "string" - } - } - } - }, - "Group": { - "id": "Group", - "type": "object", - "description": "A Group resource.", - "properties": { - "creationTimestamp": { - "type": "string", - "description": "[Output Only] Creation timestamp in RFC3339 text format." - }, - "description": { - "type": "string", - "description": "An optional textual description of the resource; provided by the client when the resource is created." - }, - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server.", - "format": "uint64" - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of the resource. Always clouduseraccounts#group for groups.", - "default": "clouduseraccounts#group" - }, - "members": { - "type": "array", - "description": "[Output Only] A list of URLs to User resources who belong to the group. Users may only be members of groups in the same project.", - "items": { - "type": "string" - } - }, - "name": { - "type": "string", - "description": "Name of the resource; provided by the client when the resource is created.", - "pattern": "[a-z][-a-z0-9_]{0,31}", - "annotations": { - "required": [ - "clouduseraccounts.groups.insert" - ] - } - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server defined URL for the resource." - } - } - }, - "GroupList": { - "id": "GroupList", - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "array", - "description": "[Output Only] A list of Group resources.", - "items": { - "$ref": "Group" - } - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always clouduseraccounts#groupList for lists of groups.", - "default": "clouduseraccounts#groupList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] A token used to continue a truncated list request." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server defined URL for this resource." - } - } - }, - "GroupsAddMemberRequest": { - "id": "GroupsAddMemberRequest", - "type": "object", - "properties": { - "users": { - "type": "array", - "description": "Fully-qualified URLs of the User resources to add.", - "items": { - "type": "string" - } - } - } - }, - "GroupsRemoveMemberRequest": { - "id": "GroupsRemoveMemberRequest", - "type": "object", - "properties": { - "users": { - "type": "array", - "description": "Fully-qualified URLs of the User resources to remove.", - "items": { - "type": "string" - } - } - } - }, - "LinuxAccountViews": { - "id": "LinuxAccountViews", - "type": "object", - "description": "A list of all Linux accounts for this project. This API is only used by Compute Engine virtual machines to get information about user accounts for a project or instance. Linux resources are read-only views into users and groups managed by the Compute Engine Accounts API.", - "properties": { - "groupViews": { - "type": "array", - "description": "[Output Only] A list of all groups within a project.", - "items": { - "$ref": "LinuxGroupView" - } - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of the resource. Always clouduseraccounts#linuxAccountViews for Linux resources.", - "default": "clouduseraccounts#linuxAccountViews" - }, - "userViews": { - "type": "array", - "description": "[Output Only] A list of all users within a project.", - "items": { - "$ref": "LinuxUserView" - } - } - } - }, - "LinuxGetAuthorizedKeysViewResponse": { - "id": "LinuxGetAuthorizedKeysViewResponse", - "type": "object", - "properties": { - "resource": { - "$ref": "AuthorizedKeysView", - "description": "[Output Only] A list of authorized public keys for a user." - } - } - }, - "LinuxGetLinuxAccountViewsResponse": { - "id": "LinuxGetLinuxAccountViewsResponse", - "type": "object", - "properties": { - "resource": { - "$ref": "LinuxAccountViews", - "description": "[Output Only] A list of authorized user accounts and groups." - } - } - }, - "LinuxGroupView": { - "id": "LinuxGroupView", - "type": "object", - "description": "A detailed view of a Linux group.", - "properties": { - "gid": { - "type": "integer", - "description": "[Output Only] The Group ID.", - "format": "uint32" - }, - "groupName": { - "type": "string", - "description": "[Output Only] Group name." - }, - "members": { - "type": "array", - "description": "[Output Only] List of user accounts that belong to the group.", - "items": { - "type": "string" - } - } - } - }, - "LinuxUserView": { - "id": "LinuxUserView", - "type": "object", - "description": "A detailed view of a Linux user account.", - "properties": { - "gecos": { - "type": "string", - "description": "[Output Only] The GECOS (user information) entry for this account." - }, - "gid": { - "type": "integer", - "description": "[Output Only] User's default group ID.", - "format": "uint32" - }, - "homeDirectory": { - "type": "string", - "description": "[Output Only] The path to the home directory for this account." - }, - "shell": { - "type": "string", - "description": "[Output Only] The path to the login shell for this account." - }, - "uid": { - "type": "integer", - "description": "[Output Only] User ID.", - "format": "uint32" - }, - "username": { - "type": "string", - "description": "[Output Only] The username of the account." - } - } - }, - "LogConfig": { - "id": "LogConfig", - "type": "object", - "description": "Specifies what kind of log the caller must write", - "properties": { - "counter": { - "$ref": "LogConfigCounterOptions", - "description": "Counter options." - } - } - }, - "LogConfigCounterOptions": { - "id": "LogConfigCounterOptions", - "type": "object", - "description": "Options for counters", - "properties": { - "field": { - "type": "string", - "description": "The field value to attribute." - }, - "metric": { - "type": "string", - "description": "The metric to update." - } - } - }, - "Operation": { - "id": "Operation", - "type": "object", - "description": "An Operation resource, used to manage asynchronous API requests.", - "properties": { - "clientOperationId": { - "type": "string", - "description": "[Output Only] Reserved for future use." - }, - "creationTimestamp": { - "type": "string", - "description": "[Output Only] Creation timestamp in RFC3339 text format." - }, - "description": { - "type": "string", - "description": "[Output Only] A textual description of the operation, which is set when the operation is created." - }, - "endTime": { - "type": "string", - "description": "[Output Only] The time that this operation was completed. This value is in RFC3339 text format." - }, - "error": { - "type": "object", - "description": "[Output Only] If errors are generated during processing of the operation, this field will be populated.", - "properties": { - "errors": { - "type": "array", - "description": "[Output Only] The array of errors encountered while processing this operation.", - "items": { - "type": "object", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] The error type identifier for this error." - }, - "location": { - "type": "string", - "description": "[Output Only] Indicates the field in the request that caused the error. This property is optional." - }, - "message": { - "type": "string", - "description": "[Output Only] An optional, human-readable error message." - } + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/cloud-platform": { + "description": "View and manage your data across Google Cloud Platform services" + }, + "https://www.googleapis.com/auth/cloud-platform.read-only": { + "description": "View your data across Google Cloud Platform services" + }, + "https://www.googleapis.com/auth/cloud.useraccounts": { + "description": "Manage your Google Cloud User Accounts" + }, + "https://www.googleapis.com/auth/cloud.useraccounts.readonly": { + "description": "View your Google Cloud User Accounts" } - } } - } - }, - "httpErrorMessage": { - "type": "string", - "description": "[Output Only] If the operation fails, this field contains the HTTP error message that was returned, such as NOT FOUND." - }, - "httpErrorStatusCode": { - "type": "integer", - "description": "[Output Only] If the operation fails, this field contains the HTTP error status code that was returned. For example, a 404 means the resource was not found.", - "format": "int32" - }, - "id": { - "type": "string", - "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", - "format": "uint64" - }, - "insertTime": { - "type": "string", - "description": "[Output Only] The time that this operation was requested. This value is in RFC3339 text format." - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of the resource. Always compute#operation for Operation resources.", - "default": "clouduseraccounts#operation" - }, - "name": { - "type": "string", - "description": "[Output Only] Name of the resource." - }, - "operationType": { - "type": "string", - "description": "[Output Only] The type of operation, such as insert, update, or delete, and so on." - }, - "progress": { - "type": "integer", - "description": "[Output Only] An optional progress indicator that ranges from 0 to 100. There is no requirement that this be linear or support any granularity of operations. This should not be used to guess when the operation will be complete. This number should monotonically increase as the operation progresses.", - "format": "int32" - }, - "region": { - "type": "string", - "description": "[Output Only] The URL of the region where the operation resides. Only available when performing regional operations." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for the resource." - }, - "startTime": { - "type": "string", - "description": "[Output Only] The time that this operation was started by the server. This value is in RFC3339 text format." - }, - "status": { - "type": "string", - "description": "[Output Only] The status of the operation, which can be one of the following: PENDING, RUNNING, or DONE.", - "enum": [ - "DONE", - "PENDING", - "RUNNING" - ], - "enumDescriptions": [ - "", - "", - "" - ] - }, - "statusMessage": { - "type": "string", - "description": "[Output Only] An optional textual description of the current status of the operation." - }, - "targetId": { - "type": "string", - "description": "[Output Only] The unique target ID, which identifies a specific incarnation of the target resource.", - "format": "uint64" - }, - "targetLink": { - "type": "string", - "description": "[Output Only] The URL of the resource that the operation modifies." - }, - "user": { - "type": "string", - "description": "[Output Only] User who requested the operation, for example: user@example.com." - }, - "warnings": { - "type": "array", - "description": "[Output Only] If warning messages are generated during processing of the operation, this field will be populated.", - "items": { - "type": "object", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "INJECTED_KERNELS_DEPRECATED", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_NOT_DELETED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - }, - "zone": { - "type": "string", - "description": "[Output Only] The URL of the zone where the operation resides. Only available when performing per-zone operations." } - } }, - "OperationList": { - "id": "OperationList", - "type": "object", - "description": "Contains a list of Operation resources.", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server." - }, - "items": { - "type": "array", - "description": "[Output Only] A list of Operation resources.", - "items": { - "$ref": "Operation" - } - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#operations for Operations resource.", - "default": "clouduseraccounts#operationList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - } - } + "basePath": "/clouduseraccounts/alpha/projects/", + "baseUrl": "https://www.googleapis.com/clouduseraccounts/alpha/projects/", + "batchPath": "batch/clouduseraccounts/alpha", + "canonicalName": "Cloud User Accounts", + "description": "Creates and manages users and groups for accessing Google Compute Engine virtual machines.", + "discoveryVersion": "v1", + "documentationLink": "https://cloud.google.com/compute/docs/access/user-accounts/api/latest/", + "etag": "\"-iA1DTNe4s-I6JZXPt1t1Ypy8IU/lOQeocShB0dxGwrtxzB56jZ95Xk\"", + "icons": { + "x16": "https://www.google.com/images/icons/product/compute_engine-16.png", + "x32": "https://www.google.com/images/icons/product/compute_engine-32.png" }, - "Policy": { - "id": "Policy", - "type": "object", - "description": "Defines an Identity and Access Management (IAM) policy. It is used to specify access control policies for Cloud Platform resources.\n\n\n\nA `Policy` consists of a list of `bindings`. A `Binding` binds a list of `members` to a `role`, where the members can be user accounts, Google groups, Google domains, and service accounts. A `role` is a named list of permissions defined by IAM.\n\n**Example**\n\n{ \"bindings\": [ { \"role\": \"roles/owner\", \"members\": [ \"user:mike@example.com\", \"group:admins@example.com\", \"domain:google.com\", \"serviceAccount:my-other-app@appspot.gserviceaccount.com\", ] }, { \"role\": \"roles/viewer\", \"members\": [\"user:sean@example.com\"] } ] }\n\nFor a description of IAM and its features, see the [IAM developer's guide](https://cloud.google.com/iam).", - "properties": { - "auditConfigs": { - "type": "array", - "description": "Specifies audit logging configs for \"data access\". \"data access\": generally refers to data reads/writes and admin reads. \"admin activity\": generally refers to admin writes.\n\nNote: `AuditConfig` doesn't apply to \"admin activity\", which always enables audit logging.", - "items": { - "$ref": "AuditConfig" - } + "id": "clouduseraccounts:alpha", + "kind": "discovery#restDescription", + "name": "clouduseraccounts", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "alt": { + "default": "json", + "description": "Data format for the response.", + "enum": [ + "json" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json" + ], + "location": "query", + "type": "string" }, - "bindings": { - "type": "array", - "description": "Associates a list of `members` to a `role`. Multiple `bindings` must not be specified for the same `role`. `bindings` with no members will result in an error.", - "items": { - "$ref": "Binding" - } - }, - "etag": { - "type": "string", - "description": "`etag` is used for optimistic concurrency control as a way to help prevent simultaneous updates of a policy from overwriting each other. It is strongly suggested that systems make use of the `etag` in the read-modify-write cycle to perform policy updates in order to avoid race conditions: An `etag` is returned in the response to `getIamPolicy`, and systems are expected to put that etag in the request to `setIamPolicy` to ensure that their change will be applied to the same version of the policy.\n\nIf no `etag` is provided in the call to `setIamPolicy`, then the existing policy is overwritten blindly.", - "format": "byte" - }, - "iamOwned": { - "type": "boolean", - "description": "" - }, - "rules": { - "type": "array", - "description": "If more than one rule is specified, the rules are applied in the following manner: - All matching LOG rules are always applied. - If any DENY/DENY_WITH_LOG rule matches, permission is denied. Logging will be applied if one or more matching rule requires logging. - Otherwise, if any ALLOW/ALLOW_WITH_LOG rule matches, permission is granted. Logging will be applied if one or more matching rule requires logging. - Otherwise, if no rule applies, permission is denied.", - "items": { - "$ref": "Rule" - } - }, - "version": { - "type": "integer", - "description": "Version of the `Policy`. The default version is 0.", - "format": "int32" - } - } - }, - "PublicKey": { - "id": "PublicKey", - "type": "object", - "description": "A public key for authenticating to guests.", - "properties": { - "creationTimestamp": { - "type": "string", - "description": "[Output Only] Creation timestamp in RFC3339 text format." - }, - "description": { - "type": "string", - "description": "An optional textual description of the resource; provided by the client when the resource is created." - }, - "expirationTimestamp": { - "type": "string", - "description": "Optional expiration timestamp. If provided, the timestamp must be in RFC3339 text format. If not provided, the public key never expires." - }, - "fingerprint": { - "type": "string", - "description": "[Output Only] The fingerprint of the key is defined by RFC4716 to be the MD5 digest of the public key." + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "location": "query", + "type": "string" }, "key": { - "type": "string", - "description": "Public key text in SSH format, defined by RFC4253 section 6.6." + "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" + }, + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", + "location": "query", + "type": "string" + }, + "userIp": { + "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", + "location": "query", + "type": "string" } - } }, - "Rule": { - "id": "Rule", - "type": "object", - "description": "A rule to be applied in a Policy.", - "properties": { - "action": { - "type": "string", - "description": "Required", - "enum": [ - "ALLOW", - "ALLOW_WITH_LOG", - "DENY", - "DENY_WITH_LOG", - "LOG", - "NO_ACTION" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "" - ] - }, - "conditions": { - "type": "array", - "description": "Additional restrictions that must be met", - "items": { - "$ref": "Condition" - } - }, - "description": { - "type": "string", - "description": "Human-readable description of the rule." - }, - "ins": { - "type": "array", - "description": "The rule matches if the PRINCIPAL/AUTHORITY_SELECTOR is in this set of entries.", - "items": { - "type": "string" - } - }, - "logConfigs": { - "type": "array", - "description": "The config returned to callers of tech.iam.IAM.CheckPolicy for any entries that match the LOG action.", - "items": { - "$ref": "LogConfig" - } - }, - "notIns": { - "type": "array", - "description": "The rule matches if the PRINCIPAL/AUTHORITY_SELECTOR is not in this set of entries.", - "items": { - "type": "string" - } - }, - "permissions": { - "type": "array", - "description": "A permission is a string of form '..' (e.g., 'storage.buckets.list'). A value of '*' matches all permissions, and a verb part of '*' (e.g., 'storage.buckets.*') matches all verbs.", - "items": { - "type": "string" - } - } - } - }, - "TestPermissionsRequest": { - "id": "TestPermissionsRequest", - "type": "object", - "properties": { - "permissions": { - "type": "array", - "description": "The set of permissions to check for the 'resource'. Permissions with wildcards (such as '*' or 'storage.*') are not allowed.", - "items": { - "type": "string" - } - } - } - }, - "TestPermissionsResponse": { - "id": "TestPermissionsResponse", - "type": "object", - "properties": { - "permissions": { - "type": "array", - "description": "A subset of `TestPermissionsRequest.permissions` that the caller is allowed.", - "items": { - "type": "string" - } - } - } - }, - "User": { - "id": "User", - "type": "object", - "description": "A User resource.", - "properties": { - "creationTimestamp": { - "type": "string", - "description": "[Output Only] Creation timestamp in RFC3339 text format." - }, - "description": { - "type": "string", - "description": "An optional textual description of the resource; provided by the client when the resource is created." + "protocol": "rest", + "resources": { + "globalAccountsOperations": { + "methods": { + "delete": { + "description": "Deletes the specified operation resource.", + "httpMethod": "DELETE", + "id": "clouduseraccounts.globalAccountsOperations.delete", + "parameterOrder": [ + "project", + "operation" + ], + "parameters": { + "operation": { + "description": "Name of the Operations resource to delete.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/operations/{operation}", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud.useraccounts" + ] + }, + "get": { + "description": "Retrieves the specified operation resource.", + "httpMethod": "GET", + "id": "clouduseraccounts.globalAccountsOperations.get", + "parameterOrder": [ + "project", + "operation" + ], + "parameters": { + "operation": { + "description": "Name of the Operations resource to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/operations/{operation}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/cloud.useraccounts", + "https://www.googleapis.com/auth/cloud.useraccounts.readonly" + ] + }, + "list": { + "description": "Retrieves the list of operation resources contained within the specified project.", + "httpMethod": "GET", + "id": "clouduseraccounts.globalAccountsOperations.list", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nCompute Engine Beta API Only: If you use filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. In particular, use filtering on nested fields to take advantage of instance labels to organize and filter results based on label values.\n\nThe Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests.", + "format": "uint32", + "location": "query", + "maximum": "500", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/operations", + "response": { + "$ref": "OperationList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/cloud.useraccounts", + "https://www.googleapis.com/auth/cloud.useraccounts.readonly" + ] + } + } }, "groups": { - "type": "array", - "description": "[Output Only] A list of URLs to Group resources who contain the user. Users are only members of groups in the same project.", - "items": { - "type": "string" - } + "methods": { + "addMember": { + "description": "Adds users to the specified group.", + "httpMethod": "POST", + "id": "clouduseraccounts.groups.addMember", + "parameterOrder": [ + "project", + "groupName" + ], + "parameters": { + "groupName": { + "description": "Name of the group for this request.", + "location": "path", + "pattern": "[a-z][-a-z0-9_]{0,31}", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/groups/{groupName}/addMember", + "request": { + "$ref": "GroupsAddMemberRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud.useraccounts" + ] + }, + "delete": { + "description": "Deletes the specified Group resource.", + "httpMethod": "DELETE", + "id": "clouduseraccounts.groups.delete", + "parameterOrder": [ + "project", + "groupName" + ], + "parameters": { + "groupName": { + "description": "Name of the Group resource to delete.", + "location": "path", + "pattern": "[a-z][-a-z0-9_]{0,31}", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/groups/{groupName}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud.useraccounts" + ] + }, + "get": { + "description": "Returns the specified Group resource.", + "httpMethod": "GET", + "id": "clouduseraccounts.groups.get", + "parameterOrder": [ + "project", + "groupName" + ], + "parameters": { + "groupName": { + "description": "Name of the Group resource to return.", + "location": "path", + "pattern": "[a-z][-a-z0-9_]{0,31}", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/groups/{groupName}", + "response": { + "$ref": "Group" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/cloud.useraccounts", + "https://www.googleapis.com/auth/cloud.useraccounts.readonly" + ] + }, + "getIamPolicy": { + "description": "Gets the access control policy for a resource. May be empty if no such policy or resource exists.", + "httpMethod": "GET", + "id": "clouduseraccounts.groups.getIamPolicy", + "parameterOrder": [ + "project", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/groups/{resource}/getIamPolicy", + "response": { + "$ref": "Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/cloud.useraccounts", + "https://www.googleapis.com/auth/cloud.useraccounts.readonly" + ] + }, + "insert": { + "description": "Creates a Group resource in the specified project using the data included in the request.", + "httpMethod": "POST", + "id": "clouduseraccounts.groups.insert", + "parameterOrder": [ + "project" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/groups", + "request": { + "$ref": "Group" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud.useraccounts" + ] + }, + "list": { + "description": "Retrieves the list of groups contained within the specified project.", + "httpMethod": "GET", + "id": "clouduseraccounts.groups.list", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nCompute Engine Beta API Only: If you use filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. In particular, use filtering on nested fields to take advantage of instance labels to organize and filter results based on label values.\n\nThe Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests.", + "format": "uint32", + "location": "query", + "maximum": "500", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/groups", + "response": { + "$ref": "GroupList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/cloud.useraccounts", + "https://www.googleapis.com/auth/cloud.useraccounts.readonly" + ] + }, + "removeMember": { + "description": "Removes users from the specified group.", + "httpMethod": "POST", + "id": "clouduseraccounts.groups.removeMember", + "parameterOrder": [ + "project", + "groupName" + ], + "parameters": { + "groupName": { + "description": "Name of the group for this request.", + "location": "path", + "pattern": "[a-z][-a-z0-9_]{0,31}", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/groups/{groupName}/removeMember", + "request": { + "$ref": "GroupsRemoveMemberRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud.useraccounts" + ] + }, + "setIamPolicy": { + "description": "Sets the access control policy on the specified resource. Replaces any existing policy.", + "httpMethod": "POST", + "id": "clouduseraccounts.groups.setIamPolicy", + "parameterOrder": [ + "project", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/groups/{resource}/setIamPolicy", + "request": { + "$ref": "Policy" + }, + "response": { + "$ref": "Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/cloud.useraccounts", + "https://www.googleapis.com/auth/cloud.useraccounts.readonly" + ] + }, + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource.", + "httpMethod": "POST", + "id": "clouduseraccounts.groups.testIamPermissions", + "parameterOrder": [ + "project", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/groups/{resource}/testIamPermissions", + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/cloud.useraccounts", + "https://www.googleapis.com/auth/cloud.useraccounts.readonly" + ] + } + } }, - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server.", - "format": "uint64" + "linux": { + "methods": { + "getAuthorizedKeysView": { + "description": "Returns a list of authorized public keys for a specific user account.", + "httpMethod": "POST", + "id": "clouduseraccounts.linux.getAuthorizedKeysView", + "parameterOrder": [ + "project", + "zone", + "user", + "instance" + ], + "parameters": { + "instance": { + "description": "The fully-qualified URL of the virtual machine requesting the view.", + "location": "query", + "required": true, + "type": "string" + }, + "login": { + "description": "Whether the view was requested as part of a user-initiated login.", + "location": "query", + "type": "boolean" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "user": { + "description": "The user account for which you want to get a list of authorized public keys.", + "location": "path", + "pattern": "[a-z][-a-z0-9_]{0,31}", + "required": true, + "type": "string" + }, + "zone": { + "description": "Name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/authorizedKeysView/{user}", + "response": { + "$ref": "LinuxGetAuthorizedKeysViewResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/cloud.useraccounts", + "https://www.googleapis.com/auth/cloud.useraccounts.readonly" + ] + }, + "getLinuxAccountViews": { + "description": "Retrieves a list of user accounts for an instance within a specific project.", + "httpMethod": "POST", + "id": "clouduseraccounts.linux.getLinuxAccountViews", + "parameterOrder": [ + "project", + "zone", + "instance" + ], + "parameters": { + "filter": { + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nCompute Engine Beta API Only: If you use filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. In particular, use filtering on nested fields to take advantage of instance labels to organize and filter results based on label values.\n\nThe Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "location": "query", + "type": "string" + }, + "instance": { + "description": "The fully-qualified URL of the virtual machine requesting the views.", + "location": "query", + "required": true, + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests.", + "format": "uint32", + "location": "query", + "maximum": "500", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "zone": { + "description": "Name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/linuxAccountViews", + "response": { + "$ref": "LinuxGetLinuxAccountViewsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/cloud.useraccounts", + "https://www.googleapis.com/auth/cloud.useraccounts.readonly" + ] + } + } }, - "kind": { - "type": "string", - "description": "[Output Only] Type of the resource. Always clouduseraccounts#user for users.", - "default": "clouduseraccounts#user" - }, - "name": { - "type": "string", - "description": "Name of the resource; provided by the client when the resource is created.", - "pattern": "[a-z][-a-z0-9_]{0,31}", - "annotations": { - "required": [ - "clouduseraccounts.users.insert" - ] - } - }, - "owner": { - "type": "string", - "description": "Email address of account's owner. This account will be validated to make sure it exists. The email can belong to any domain, but it must be tied to a Google account.", - "annotations": { - "required": [ - "clouduseraccounts.users.insert" - ] - } - }, - "publicKeys": { - "type": "array", - "description": "[Output Only] Public keys that this user may use to login.", - "items": { - "$ref": "PublicKey" - } - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server defined URL for the resource." + "users": { + "methods": { + "addPublicKey": { + "description": "Adds a public key to the specified User resource with the data included in the request.", + "httpMethod": "POST", + "id": "clouduseraccounts.users.addPublicKey", + "parameterOrder": [ + "project", + "user" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "user": { + "description": "Name of the user for this request.", + "location": "path", + "pattern": "[a-z][-a-z0-9_]{0,31}", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/users/{user}/addPublicKey", + "request": { + "$ref": "PublicKey" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud.useraccounts" + ] + }, + "delete": { + "description": "Deletes the specified User resource.", + "httpMethod": "DELETE", + "id": "clouduseraccounts.users.delete", + "parameterOrder": [ + "project", + "user" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "user": { + "description": "Name of the user resource to delete.", + "location": "path", + "pattern": "[a-z][-a-z0-9_]{0,31}", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/users/{user}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud.useraccounts" + ] + }, + "get": { + "description": "Returns the specified User resource.", + "httpMethod": "GET", + "id": "clouduseraccounts.users.get", + "parameterOrder": [ + "project", + "user" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "user": { + "description": "Name of the user resource to return.", + "location": "path", + "pattern": "[a-z][-a-z0-9_]{0,31}", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/users/{user}", + "response": { + "$ref": "User" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/cloud.useraccounts", + "https://www.googleapis.com/auth/cloud.useraccounts.readonly" + ] + }, + "getIamPolicy": { + "description": "Gets the access control policy for a resource. May be empty if no such policy or resource exists.", + "httpMethod": "GET", + "id": "clouduseraccounts.users.getIamPolicy", + "parameterOrder": [ + "project", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/users/{resource}/getIamPolicy", + "response": { + "$ref": "Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/cloud.useraccounts", + "https://www.googleapis.com/auth/cloud.useraccounts.readonly" + ] + }, + "insert": { + "description": "Creates a User resource in the specified project using the data included in the request.", + "httpMethod": "POST", + "id": "clouduseraccounts.users.insert", + "parameterOrder": [ + "project" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/users", + "request": { + "$ref": "User" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud.useraccounts" + ] + }, + "list": { + "description": "Retrieves a list of users contained within the specified project.", + "httpMethod": "GET", + "id": "clouduseraccounts.users.list", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nCompute Engine Beta API Only: If you use filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. In particular, use filtering on nested fields to take advantage of instance labels to organize and filter results based on label values.\n\nThe Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests.", + "format": "uint32", + "location": "query", + "maximum": "500", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/users", + "response": { + "$ref": "UserList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/cloud.useraccounts", + "https://www.googleapis.com/auth/cloud.useraccounts.readonly" + ] + }, + "removePublicKey": { + "description": "Removes the specified public key from the user.", + "httpMethod": "POST", + "id": "clouduseraccounts.users.removePublicKey", + "parameterOrder": [ + "project", + "user", + "fingerprint" + ], + "parameters": { + "fingerprint": { + "description": "The fingerprint of the public key to delete. Public keys are identified by their fingerprint, which is defined by RFC4716 to be the MD5 digest of the public key.", + "location": "query", + "pattern": "[a-f0-9]{32}", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "user": { + "description": "Name of the user for this request.", + "location": "path", + "pattern": "[a-z][-a-z0-9_]{0,31}", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/users/{user}/removePublicKey", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud.useraccounts" + ] + }, + "setIamPolicy": { + "description": "Sets the access control policy on the specified resource. Replaces any existing policy.", + "httpMethod": "POST", + "id": "clouduseraccounts.users.setIamPolicy", + "parameterOrder": [ + "project", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/users/{resource}/setIamPolicy", + "request": { + "$ref": "Policy" + }, + "response": { + "$ref": "Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/cloud.useraccounts", + "https://www.googleapis.com/auth/cloud.useraccounts.readonly" + ] + }, + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource.", + "httpMethod": "POST", + "id": "clouduseraccounts.users.testIamPermissions", + "parameterOrder": [ + "project", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/users/{resource}/testIamPermissions", + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/cloud.useraccounts", + "https://www.googleapis.com/auth/cloud.useraccounts.readonly" + ] + } + } } - } }, - "UserList": { - "id": "UserList", - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." + "revision": "20160316", + "rootUrl": "https://www.googleapis.com/", + "schemas": { + "AuditConfig": { + "description": "Enables \"data access\" audit logging for a service and specifies a list of members that are log-exempted.", + "id": "AuditConfig", + "properties": { + "exemptedMembers": { + "description": "Specifies the identities that are exempted from \"data access\" audit logging for the `service` specified above. Follows the same format of Binding.members.", + "items": { + "type": "string" + }, + "type": "array" + }, + "service": { + "description": "Specifies a service that will be enabled for \"data access\" audit logging. For example, `resourcemanager`, `storage`, `compute`. `allServices` is a special value that covers all services.", + "type": "string" + } + }, + "type": "object" }, - "items": { - "type": "array", - "description": "[Output Only] A list of User resources.", - "items": { - "$ref": "User" - } + "AuthorizedKeysView": { + "description": "A list of authorized public keys for a user account.", + "id": "AuthorizedKeysView", + "properties": { + "keys": { + "description": "[Output Only] The list of authorized public keys in SSH format.", + "items": { + "type": "string" + }, + "type": "array" + }, + "sudoer": { + "description": "[Output Only] Whether the user has the ability to elevate on the instance that requested the authorized keys.", + "type": "boolean" + } + }, + "type": "object" }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always clouduseraccounts#userList for lists of users.", - "default": "clouduseraccounts#userList" + "Binding": { + "description": "Associates `members` with a `role`.", + "id": "Binding", + "properties": { + "members": { + "description": "Specifies the identities requesting access for a Cloud Platform resource. `members` can have the following values:\n\n* `allUsers`: A special identifier that represents anyone who is on the internet; with or without a Google account.\n\n* `allAuthenticatedUsers`: A special identifier that represents anyone who is authenticated with a Google account or a service account.\n\n* `user:{emailid}`: An email address that represents a specific Google account. For example, `alice@gmail.com` or `joe@example.com`.\n\n* `serviceAccount:{emailid}`: An email address that represents a service account. For example, `my-other-app@appspot.gserviceaccount.com`.\n\n* `group:{emailid}`: An email address that represents a Google group. For example, `admins@example.com`.\n\n* `domain:{domain}`: A Google Apps domain name that represents all the users of that domain. For example, `google.com` or `example.com`.", + "items": { + "type": "string" + }, + "type": "array" + }, + "role": { + "description": "Role that is assigned to `members`. For example, `roles/viewer`, `roles/editor`, or `roles/owner`.", + "type": "string" + } + }, + "type": "object" }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] A token used to continue a truncated list request." + "Condition": { + "description": "A condition to be met.", + "id": "Condition", + "properties": { + "iam": { + "description": "Trusted attributes supplied by the IAM system.", + "enum": [ + "ATTRIBUTION", + "AUTHORITY", + "NO_ATTR" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, + "op": { + "description": "An operator to apply the subject with.", + "enum": [ + "DISCHARGED", + "EQUALS", + "IN", + "NOT_EQUALS", + "NOT_IN", + "NO_OP" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "svc": { + "description": "Trusted attributes discharged by the service.", + "type": "string" + }, + "sys": { + "description": "Trusted attributes supplied by any service that owns resources and uses the IAM system for access control.", + "enum": [ + "IP", + "NAME", + "NO_ATTR", + "REGION", + "SERVICE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "value": { + "description": "The object of the condition. Exactly one of these must be set.", + "type": "string" + }, + "values": { + "description": "The objects of the condition. This is mutually exclusive with 'value'.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server defined URL for this resource." + "Group": { + "description": "A Group resource.", + "id": "Group", + "properties": { + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "description": { + "description": "An optional textual description of the resource; provided by the client when the resource is created.", + "type": "string" + }, + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "format": "uint64", + "type": "string" + }, + "kind": { + "default": "clouduseraccounts#group", + "description": "[Output Only] Type of the resource. Always clouduseraccounts#group for groups.", + "type": "string" + }, + "members": { + "description": "[Output Only] A list of URLs to User resources who belong to the group. Users may only be members of groups in the same project.", + "items": { + "type": "string" + }, + "type": "array" + }, + "name": { + "annotations": { + "required": [ + "clouduseraccounts.groups.insert" + ] + }, + "description": "Name of the resource; provided by the client when the resource is created.", + "pattern": "[a-z][-a-z0-9_]{0,31}", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server defined URL for the resource.", + "type": "string" + } + }, + "type": "object" + }, + "GroupList": { + "id": "GroupList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "[Output Only] A list of Group resources.", + "items": { + "$ref": "Group" + }, + "type": "array" + }, + "kind": { + "default": "clouduseraccounts#groupList", + "description": "[Output Only] Type of resource. Always clouduseraccounts#groupList for lists of groups.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] A token used to continue a truncated list request.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server defined URL for this resource.", + "type": "string" + } + }, + "type": "object" + }, + "GroupsAddMemberRequest": { + "id": "GroupsAddMemberRequest", + "properties": { + "users": { + "description": "Fully-qualified URLs of the User resources to add.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "GroupsRemoveMemberRequest": { + "id": "GroupsRemoveMemberRequest", + "properties": { + "users": { + "description": "Fully-qualified URLs of the User resources to remove.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "LinuxAccountViews": { + "description": "A list of all Linux accounts for this project. This API is only used by Compute Engine virtual machines to get information about user accounts for a project or instance. Linux resources are read-only views into users and groups managed by the Compute Engine Accounts API.", + "id": "LinuxAccountViews", + "properties": { + "groupViews": { + "description": "[Output Only] A list of all groups within a project.", + "items": { + "$ref": "LinuxGroupView" + }, + "type": "array" + }, + "kind": { + "default": "clouduseraccounts#linuxAccountViews", + "description": "[Output Only] Type of the resource. Always clouduseraccounts#linuxAccountViews for Linux resources.", + "type": "string" + }, + "userViews": { + "description": "[Output Only] A list of all users within a project.", + "items": { + "$ref": "LinuxUserView" + }, + "type": "array" + } + }, + "type": "object" + }, + "LinuxGetAuthorizedKeysViewResponse": { + "id": "LinuxGetAuthorizedKeysViewResponse", + "properties": { + "resource": { + "$ref": "AuthorizedKeysView", + "description": "[Output Only] A list of authorized public keys for a user." + } + }, + "type": "object" + }, + "LinuxGetLinuxAccountViewsResponse": { + "id": "LinuxGetLinuxAccountViewsResponse", + "properties": { + "resource": { + "$ref": "LinuxAccountViews", + "description": "[Output Only] A list of authorized user accounts and groups." + } + }, + "type": "object" + }, + "LinuxGroupView": { + "description": "A detailed view of a Linux group.", + "id": "LinuxGroupView", + "properties": { + "gid": { + "description": "[Output Only] The Group ID.", + "format": "uint32", + "type": "integer" + }, + "groupName": { + "description": "[Output Only] Group name.", + "type": "string" + }, + "members": { + "description": "[Output Only] List of user accounts that belong to the group.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "LinuxUserView": { + "description": "A detailed view of a Linux user account.", + "id": "LinuxUserView", + "properties": { + "gecos": { + "description": "[Output Only] The GECOS (user information) entry for this account.", + "type": "string" + }, + "gid": { + "description": "[Output Only] User's default group ID.", + "format": "uint32", + "type": "integer" + }, + "homeDirectory": { + "description": "[Output Only] The path to the home directory for this account.", + "type": "string" + }, + "shell": { + "description": "[Output Only] The path to the login shell for this account.", + "type": "string" + }, + "uid": { + "description": "[Output Only] User ID.", + "format": "uint32", + "type": "integer" + }, + "username": { + "description": "[Output Only] The username of the account.", + "type": "string" + } + }, + "type": "object" + }, + "LogConfig": { + "description": "Specifies what kind of log the caller must write", + "id": "LogConfig", + "properties": { + "counter": { + "$ref": "LogConfigCounterOptions", + "description": "Counter options." + } + }, + "type": "object" + }, + "LogConfigCounterOptions": { + "description": "Options for counters", + "id": "LogConfigCounterOptions", + "properties": { + "field": { + "description": "The field value to attribute.", + "type": "string" + }, + "metric": { + "description": "The metric to update.", + "type": "string" + } + }, + "type": "object" + }, + "Operation": { + "description": "An Operation resource, used to manage asynchronous API requests.", + "id": "Operation", + "properties": { + "clientOperationId": { + "description": "[Output Only] Reserved for future use.", + "type": "string" + }, + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "description": { + "description": "[Output Only] A textual description of the operation, which is set when the operation is created.", + "type": "string" + }, + "endTime": { + "description": "[Output Only] The time that this operation was completed. This value is in RFC3339 text format.", + "type": "string" + }, + "error": { + "description": "[Output Only] If errors are generated during processing of the operation, this field will be populated.", + "properties": { + "errors": { + "description": "[Output Only] The array of errors encountered while processing this operation.", + "items": { + "properties": { + "code": { + "description": "[Output Only] The error type identifier for this error.", + "type": "string" + }, + "location": { + "description": "[Output Only] Indicates the field in the request that caused the error. This property is optional.", + "type": "string" + }, + "message": { + "description": "[Output Only] An optional, human-readable error message.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + } + }, + "type": "object" + }, + "httpErrorMessage": { + "description": "[Output Only] If the operation fails, this field contains the HTTP error message that was returned, such as NOT FOUND.", + "type": "string" + }, + "httpErrorStatusCode": { + "description": "[Output Only] If the operation fails, this field contains the HTTP error status code that was returned. For example, a 404 means the resource was not found.", + "format": "int32", + "type": "integer" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64", + "type": "string" + }, + "insertTime": { + "description": "[Output Only] The time that this operation was requested. This value is in RFC3339 text format.", + "type": "string" + }, + "kind": { + "default": "clouduseraccounts#operation", + "description": "[Output Only] Type of the resource. Always compute#operation for Operation resources.", + "type": "string" + }, + "name": { + "description": "[Output Only] Name of the resource.", + "type": "string" + }, + "operationType": { + "description": "[Output Only] The type of operation, such as insert, update, or delete, and so on.", + "type": "string" + }, + "progress": { + "description": "[Output Only] An optional progress indicator that ranges from 0 to 100. There is no requirement that this be linear or support any granularity of operations. This should not be used to guess when the operation will be complete. This number should monotonically increase as the operation progresses.", + "format": "int32", + "type": "integer" + }, + "region": { + "description": "[Output Only] The URL of the region where the operation resides. Only available when performing regional operations.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + }, + "startTime": { + "description": "[Output Only] The time that this operation was started by the server. This value is in RFC3339 text format.", + "type": "string" + }, + "status": { + "description": "[Output Only] The status of the operation, which can be one of the following: PENDING, RUNNING, or DONE.", + "enum": [ + "DONE", + "PENDING", + "RUNNING" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, + "statusMessage": { + "description": "[Output Only] An optional textual description of the current status of the operation.", + "type": "string" + }, + "targetId": { + "description": "[Output Only] The unique target ID, which identifies a specific incarnation of the target resource.", + "format": "uint64", + "type": "string" + }, + "targetLink": { + "description": "[Output Only] The URL of the resource that the operation modifies.", + "type": "string" + }, + "user": { + "description": "[Output Only] User who requested the operation, for example: user@example.com.", + "type": "string" + }, + "warnings": { + "description": "[Output Only] If warning messages are generated during processing of the operation, this field will be populated.", + "items": { + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "INJECTED_KERNELS_DEPRECATED", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_NOT_DELETED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "zone": { + "description": "[Output Only] The URL of the zone where the operation resides. Only available when performing per-zone operations.", + "type": "string" + } + }, + "type": "object" + }, + "OperationList": { + "description": "Contains a list of Operation resources.", + "id": "OperationList", + "properties": { + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "type": "string" + }, + "items": { + "description": "[Output Only] A list of Operation resources.", + "items": { + "$ref": "Operation" + }, + "type": "array" + }, + "kind": { + "default": "clouduseraccounts#operationList", + "description": "[Output Only] Type of resource. Always compute#operations for Operations resource.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + } + }, + "type": "object" + }, + "Policy": { + "description": "Defines an Identity and Access Management (IAM) policy. It is used to specify access control policies for Cloud Platform resources.\n\n\n\nA `Policy` consists of a list of `bindings`. A `Binding` binds a list of `members` to a `role`, where the members can be user accounts, Google groups, Google domains, and service accounts. A `role` is a named list of permissions defined by IAM.\n\n**Example**\n\n{ \"bindings\": [ { \"role\": \"roles/owner\", \"members\": [ \"user:mike@example.com\", \"group:admins@example.com\", \"domain:google.com\", \"serviceAccount:my-other-app@appspot.gserviceaccount.com\", ] }, { \"role\": \"roles/viewer\", \"members\": [\"user:sean@example.com\"] } ] }\n\nFor a description of IAM and its features, see the [IAM developer's guide](https://cloud.google.com/iam).", + "id": "Policy", + "properties": { + "auditConfigs": { + "description": "Specifies audit logging configs for \"data access\". \"data access\": generally refers to data reads/writes and admin reads. \"admin activity\": generally refers to admin writes.\n\nNote: `AuditConfig` doesn't apply to \"admin activity\", which always enables audit logging.", + "items": { + "$ref": "AuditConfig" + }, + "type": "array" + }, + "bindings": { + "description": "Associates a list of `members` to a `role`. Multiple `bindings` must not be specified for the same `role`. `bindings` with no members will result in an error.", + "items": { + "$ref": "Binding" + }, + "type": "array" + }, + "etag": { + "description": "`etag` is used for optimistic concurrency control as a way to help prevent simultaneous updates of a policy from overwriting each other. It is strongly suggested that systems make use of the `etag` in the read-modify-write cycle to perform policy updates in order to avoid race conditions: An `etag` is returned in the response to `getIamPolicy`, and systems are expected to put that etag in the request to `setIamPolicy` to ensure that their change will be applied to the same version of the policy.\n\nIf no `etag` is provided in the call to `setIamPolicy`, then the existing policy is overwritten blindly.", + "format": "byte", + "type": "string" + }, + "iamOwned": { + "description": "", + "type": "boolean" + }, + "rules": { + "description": "If more than one rule is specified, the rules are applied in the following manner: - All matching LOG rules are always applied. - If any DENY/DENY_WITH_LOG rule matches, permission is denied. Logging will be applied if one or more matching rule requires logging. - Otherwise, if any ALLOW/ALLOW_WITH_LOG rule matches, permission is granted. Logging will be applied if one or more matching rule requires logging. - Otherwise, if no rule applies, permission is denied.", + "items": { + "$ref": "Rule" + }, + "type": "array" + }, + "version": { + "description": "Version of the `Policy`. The default version is 0.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "PublicKey": { + "description": "A public key for authenticating to guests.", + "id": "PublicKey", + "properties": { + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "description": { + "description": "An optional textual description of the resource; provided by the client when the resource is created.", + "type": "string" + }, + "expirationTimestamp": { + "description": "Optional expiration timestamp. If provided, the timestamp must be in RFC3339 text format. If not provided, the public key never expires.", + "type": "string" + }, + "fingerprint": { + "description": "[Output Only] The fingerprint of the key is defined by RFC4716 to be the MD5 digest of the public key.", + "type": "string" + }, + "key": { + "description": "Public key text in SSH format, defined by RFC4253 section 6.6.", + "type": "string" + } + }, + "type": "object" + }, + "Rule": { + "description": "A rule to be applied in a Policy.", + "id": "Rule", + "properties": { + "action": { + "description": "Required", + "enum": [ + "ALLOW", + "ALLOW_WITH_LOG", + "DENY", + "DENY_WITH_LOG", + "LOG", + "NO_ACTION" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "conditions": { + "description": "Additional restrictions that must be met", + "items": { + "$ref": "Condition" + }, + "type": "array" + }, + "description": { + "description": "Human-readable description of the rule.", + "type": "string" + }, + "ins": { + "description": "The rule matches if the PRINCIPAL/AUTHORITY_SELECTOR is in this set of entries.", + "items": { + "type": "string" + }, + "type": "array" + }, + "logConfigs": { + "description": "The config returned to callers of tech.iam.IAM.CheckPolicy for any entries that match the LOG action.", + "items": { + "$ref": "LogConfig" + }, + "type": "array" + }, + "notIns": { + "description": "The rule matches if the PRINCIPAL/AUTHORITY_SELECTOR is not in this set of entries.", + "items": { + "type": "string" + }, + "type": "array" + }, + "permissions": { + "description": "A permission is a string of form '..' (e.g., 'storage.buckets.list'). A value of '*' matches all permissions, and a verb part of '*' (e.g., 'storage.buckets.*') matches all verbs.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "TestPermissionsRequest": { + "id": "TestPermissionsRequest", + "properties": { + "permissions": { + "description": "The set of permissions to check for the 'resource'. Permissions with wildcards (such as '*' or 'storage.*') are not allowed.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "TestPermissionsResponse": { + "id": "TestPermissionsResponse", + "properties": { + "permissions": { + "description": "A subset of `TestPermissionsRequest.permissions` that the caller is allowed.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "User": { + "description": "A User resource.", + "id": "User", + "properties": { + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "description": { + "description": "An optional textual description of the resource; provided by the client when the resource is created.", + "type": "string" + }, + "groups": { + "description": "[Output Only] A list of URLs to Group resources who contain the user. Users are only members of groups in the same project.", + "items": { + "type": "string" + }, + "type": "array" + }, + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "format": "uint64", + "type": "string" + }, + "kind": { + "default": "clouduseraccounts#user", + "description": "[Output Only] Type of the resource. Always clouduseraccounts#user for users.", + "type": "string" + }, + "name": { + "annotations": { + "required": [ + "clouduseraccounts.users.insert" + ] + }, + "description": "Name of the resource; provided by the client when the resource is created.", + "pattern": "[a-z][-a-z0-9_]{0,31}", + "type": "string" + }, + "owner": { + "annotations": { + "required": [ + "clouduseraccounts.users.insert" + ] + }, + "description": "Email address of account's owner. This account will be validated to make sure it exists. The email can belong to any domain, but it must be tied to a Google account.", + "type": "string" + }, + "publicKeys": { + "description": "[Output Only] Public keys that this user may use to login.", + "items": { + "$ref": "PublicKey" + }, + "type": "array" + }, + "selfLink": { + "description": "[Output Only] Server defined URL for the resource.", + "type": "string" + } + }, + "type": "object" + }, + "UserList": { + "id": "UserList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "[Output Only] A list of User resources.", + "items": { + "$ref": "User" + }, + "type": "array" + }, + "kind": { + "default": "clouduseraccounts#userList", + "description": "[Output Only] Type of resource. Always clouduseraccounts#userList for lists of users.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] A token used to continue a truncated list request.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server defined URL for this resource.", + "type": "string" + } + }, + "type": "object" } - } - } - }, - "resources": { - "globalAccountsOperations": { - "methods": { - "delete": { - "id": "clouduseraccounts.globalAccountsOperations.delete", - "path": "{project}/global/operations/{operation}", - "httpMethod": "DELETE", - "description": "Deletes the specified operation resource.", - "parameters": { - "operation": { - "type": "string", - "description": "Name of the Operations resource to delete.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "operation" - ], - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud.useraccounts" - ] - }, - "get": { - "id": "clouduseraccounts.globalAccountsOperations.get", - "path": "{project}/global/operations/{operation}", - "httpMethod": "GET", - "description": "Retrieves the specified operation resource.", - "parameters": { - "operation": { - "type": "string", - "description": "Name of the Operations resource to return.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "operation" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/cloud.useraccounts", - "https://www.googleapis.com/auth/cloud.useraccounts.readonly" - ] - }, - "list": { - "id": "clouduseraccounts.globalAccountsOperations.list", - "path": "{project}/global/operations", - "httpMethod": "GET", - "description": "Retrieves the list of operation resources contained within the specified project.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nCompute Engine Beta API Only: If you use filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. In particular, use filtering on nested fields to take advantage of instance labels to organize and filter results based on label values.\n\nThe Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests.", - "default": "500", - "format": "uint32", - "minimum": "0", - "maximum": "500", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "OperationList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/cloud.useraccounts", - "https://www.googleapis.com/auth/cloud.useraccounts.readonly" - ] - } - } }, - "groups": { - "methods": { - "addMember": { - "id": "clouduseraccounts.groups.addMember", - "path": "{project}/global/groups/{groupName}/addMember", - "httpMethod": "POST", - "description": "Adds users to the specified group.", - "parameters": { - "groupName": { - "type": "string", - "description": "Name of the group for this request.", - "required": true, - "pattern": "[a-z][-a-z0-9_]{0,31}", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "groupName" - ], - "request": { - "$ref": "GroupsAddMemberRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud.useraccounts" - ] - }, - "delete": { - "id": "clouduseraccounts.groups.delete", - "path": "{project}/global/groups/{groupName}", - "httpMethod": "DELETE", - "description": "Deletes the specified Group resource.", - "parameters": { - "groupName": { - "type": "string", - "description": "Name of the Group resource to delete.", - "required": true, - "pattern": "[a-z][-a-z0-9_]{0,31}", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "groupName" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud.useraccounts" - ] - }, - "get": { - "id": "clouduseraccounts.groups.get", - "path": "{project}/global/groups/{groupName}", - "httpMethod": "GET", - "description": "Returns the specified Group resource.", - "parameters": { - "groupName": { - "type": "string", - "description": "Name of the Group resource to return.", - "required": true, - "pattern": "[a-z][-a-z0-9_]{0,31}", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "groupName" - ], - "response": { - "$ref": "Group" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/cloud.useraccounts", - "https://www.googleapis.com/auth/cloud.useraccounts.readonly" - ] - }, - "getIamPolicy": { - "id": "clouduseraccounts.groups.getIamPolicy", - "path": "{project}/global/groups/{resource}/getIamPolicy", - "httpMethod": "GET", - "description": "Gets the access control policy for a resource. May be empty if no such policy or resource exists.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "resource" - ], - "response": { - "$ref": "Policy" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/cloud.useraccounts", - "https://www.googleapis.com/auth/cloud.useraccounts.readonly" - ] - }, - "insert": { - "id": "clouduseraccounts.groups.insert", - "path": "{project}/global/groups", - "httpMethod": "POST", - "description": "Creates a Group resource in the specified project using the data included in the request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "request": { - "$ref": "Group" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud.useraccounts" - ] - }, - "list": { - "id": "clouduseraccounts.groups.list", - "path": "{project}/global/groups", - "httpMethod": "GET", - "description": "Retrieves the list of groups contained within the specified project.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nCompute Engine Beta API Only: If you use filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. In particular, use filtering on nested fields to take advantage of instance labels to organize and filter results based on label values.\n\nThe Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests.", - "default": "500", - "format": "uint32", - "minimum": "0", - "maximum": "500", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "GroupList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/cloud.useraccounts", - "https://www.googleapis.com/auth/cloud.useraccounts.readonly" - ] - }, - "removeMember": { - "id": "clouduseraccounts.groups.removeMember", - "path": "{project}/global/groups/{groupName}/removeMember", - "httpMethod": "POST", - "description": "Removes users from the specified group.", - "parameters": { - "groupName": { - "type": "string", - "description": "Name of the group for this request.", - "required": true, - "pattern": "[a-z][-a-z0-9_]{0,31}", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "groupName" - ], - "request": { - "$ref": "GroupsRemoveMemberRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud.useraccounts" - ] - }, - "setIamPolicy": { - "id": "clouduseraccounts.groups.setIamPolicy", - "path": "{project}/global/groups/{resource}/setIamPolicy", - "httpMethod": "POST", - "description": "Sets the access control policy on the specified resource. Replaces any existing policy.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "resource" - ], - "request": { - "$ref": "Policy" - }, - "response": { - "$ref": "Policy" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/cloud.useraccounts", - "https://www.googleapis.com/auth/cloud.useraccounts.readonly" - ] - }, - "testIamPermissions": { - "id": "clouduseraccounts.groups.testIamPermissions", - "path": "{project}/global/groups/{resource}/testIamPermissions", - "httpMethod": "POST", - "description": "Returns permissions that a caller has on the specified resource.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "resource" - ], - "request": { - "$ref": "TestPermissionsRequest" - }, - "response": { - "$ref": "TestPermissionsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/cloud.useraccounts", - "https://www.googleapis.com/auth/cloud.useraccounts.readonly" - ] - } - } - }, - "linux": { - "methods": { - "getAuthorizedKeysView": { - "id": "clouduseraccounts.linux.getAuthorizedKeysView", - "path": "{project}/zones/{zone}/authorizedKeysView/{user}", - "httpMethod": "POST", - "description": "Returns a list of authorized public keys for a specific user account.", - "parameters": { - "instance": { - "type": "string", - "description": "The fully-qualified URL of the virtual machine requesting the view.", - "required": true, - "location": "query" - }, - "login": { - "type": "boolean", - "description": "Whether the view was requested as part of a user-initiated login.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "user": { - "type": "string", - "description": "The user account for which you want to get a list of authorized public keys.", - "required": true, - "pattern": "[a-z][-a-z0-9_]{0,31}", - "location": "path" - }, - "zone": { - "type": "string", - "description": "Name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "user", - "instance" - ], - "response": { - "$ref": "LinuxGetAuthorizedKeysViewResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/cloud.useraccounts", - "https://www.googleapis.com/auth/cloud.useraccounts.readonly" - ] - }, - "getLinuxAccountViews": { - "id": "clouduseraccounts.linux.getLinuxAccountViews", - "path": "{project}/zones/{zone}/linuxAccountViews", - "httpMethod": "POST", - "description": "Retrieves a list of user accounts for an instance within a specific project.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nCompute Engine Beta API Only: If you use filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. In particular, use filtering on nested fields to take advantage of instance labels to organize and filter results based on label values.\n\nThe Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "instance": { - "type": "string", - "description": "The fully-qualified URL of the virtual machine requesting the views.", - "required": true, - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests.", - "default": "500", - "format": "uint32", - "minimum": "0", - "maximum": "500", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "zone": { - "type": "string", - "description": "Name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "instance" - ], - "response": { - "$ref": "LinuxGetLinuxAccountViewsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/cloud.useraccounts", - "https://www.googleapis.com/auth/cloud.useraccounts.readonly" - ] - } - } - }, - "users": { - "methods": { - "addPublicKey": { - "id": "clouduseraccounts.users.addPublicKey", - "path": "{project}/global/users/{user}/addPublicKey", - "httpMethod": "POST", - "description": "Adds a public key to the specified User resource with the data included in the request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "user": { - "type": "string", - "description": "Name of the user for this request.", - "required": true, - "pattern": "[a-z][-a-z0-9_]{0,31}", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "user" - ], - "request": { - "$ref": "PublicKey" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud.useraccounts" - ] - }, - "delete": { - "id": "clouduseraccounts.users.delete", - "path": "{project}/global/users/{user}", - "httpMethod": "DELETE", - "description": "Deletes the specified User resource.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "user": { - "type": "string", - "description": "Name of the user resource to delete.", - "required": true, - "pattern": "[a-z][-a-z0-9_]{0,31}", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "user" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud.useraccounts" - ] - }, - "get": { - "id": "clouduseraccounts.users.get", - "path": "{project}/global/users/{user}", - "httpMethod": "GET", - "description": "Returns the specified User resource.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "user": { - "type": "string", - "description": "Name of the user resource to return.", - "required": true, - "pattern": "[a-z][-a-z0-9_]{0,31}", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "user" - ], - "response": { - "$ref": "User" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/cloud.useraccounts", - "https://www.googleapis.com/auth/cloud.useraccounts.readonly" - ] - }, - "getIamPolicy": { - "id": "clouduseraccounts.users.getIamPolicy", - "path": "{project}/global/users/{resource}/getIamPolicy", - "httpMethod": "GET", - "description": "Gets the access control policy for a resource. May be empty if no such policy or resource exists.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "resource" - ], - "response": { - "$ref": "Policy" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/cloud.useraccounts", - "https://www.googleapis.com/auth/cloud.useraccounts.readonly" - ] - }, - "insert": { - "id": "clouduseraccounts.users.insert", - "path": "{project}/global/users", - "httpMethod": "POST", - "description": "Creates a User resource in the specified project using the data included in the request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "request": { - "$ref": "User" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud.useraccounts" - ] - }, - "list": { - "id": "clouduseraccounts.users.list", - "path": "{project}/global/users", - "httpMethod": "GET", - "description": "Retrieves a list of users contained within the specified project.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nCompute Engine Beta API Only: If you use filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. In particular, use filtering on nested fields to take advantage of instance labels to organize and filter results based on label values.\n\nThe Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests.", - "default": "500", - "format": "uint32", - "minimum": "0", - "maximum": "500", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "UserList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/cloud.useraccounts", - "https://www.googleapis.com/auth/cloud.useraccounts.readonly" - ] - }, - "removePublicKey": { - "id": "clouduseraccounts.users.removePublicKey", - "path": "{project}/global/users/{user}/removePublicKey", - "httpMethod": "POST", - "description": "Removes the specified public key from the user.", - "parameters": { - "fingerprint": { - "type": "string", - "description": "The fingerprint of the public key to delete. Public keys are identified by their fingerprint, which is defined by RFC4716 to be the MD5 digest of the public key.", - "required": true, - "pattern": "[a-f0-9]{32}", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "user": { - "type": "string", - "description": "Name of the user for this request.", - "required": true, - "pattern": "[a-z][-a-z0-9_]{0,31}", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "user", - "fingerprint" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud.useraccounts" - ] - }, - "setIamPolicy": { - "id": "clouduseraccounts.users.setIamPolicy", - "path": "{project}/global/users/{resource}/setIamPolicy", - "httpMethod": "POST", - "description": "Sets the access control policy on the specified resource. Replaces any existing policy.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "resource" - ], - "request": { - "$ref": "Policy" - }, - "response": { - "$ref": "Policy" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/cloud.useraccounts", - "https://www.googleapis.com/auth/cloud.useraccounts.readonly" - ] - }, - "testIamPermissions": { - "id": "clouduseraccounts.users.testIamPermissions", - "path": "{project}/global/users/{resource}/testIamPermissions", - "httpMethod": "POST", - "description": "Returns permissions that a caller has on the specified resource.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "resource" - ], - "request": { - "$ref": "TestPermissionsRequest" - }, - "response": { - "$ref": "TestPermissionsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/cloud.useraccounts", - "https://www.googleapis.com/auth/cloud.useraccounts.readonly" - ] - } - } - } - } -} + "servicePath": "clouduseraccounts/alpha/projects/", + "title": "Cloud User Accounts API", + "version": "alpha" +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/clouduseraccounts/v0.beta/clouduseraccounts-api.json b/vendor/google.golang.org/api/clouduseraccounts/v0.beta/clouduseraccounts-api.json index 19293aca5..097a4f78e 100644 --- a/vendor/google.golang.org/api/clouduseraccounts/v0.beta/clouduseraccounts-api.json +++ b/vendor/google.golang.org/api/clouduseraccounts/v0.beta/clouduseraccounts-api.json @@ -1,1361 +1,1361 @@ { - "kind": "discovery#restDescription", - "etag": "\"YWOzh2SDasdU84ArJnpYek-OMdg/-BiORd5nMN3AbHTR5Pi2H1JslEk\"", - "discoveryVersion": "v1", - "id": "clouduseraccounts:beta", - "name": "clouduseraccounts", - "canonicalName": "Cloud User Accounts", - "version": "beta", - "revision": "20160316", - "title": "Cloud User Accounts API", - "description": "Creates and manages users and groups for accessing Google Compute Engine virtual machines.", - "ownerDomain": "google.com", - "ownerName": "Google", - "icons": { - "x16": "https://www.google.com/images/icons/product/compute_engine-16.png", - "x32": "https://www.google.com/images/icons/product/compute_engine-32.png" - }, - "documentationLink": "https://cloud.google.com/compute/docs/access/user-accounts/api/latest/", - "protocol": "rest", - "baseUrl": "https://www.googleapis.com/clouduseraccounts/beta/projects/", - "basePath": "/clouduseraccounts/beta/projects/", - "rootUrl": "https://www.googleapis.com/", - "servicePath": "clouduseraccounts/beta/projects/", - "batchPath": "batch/clouduseraccounts/beta", - "parameters": { - "alt": { - "type": "string", - "description": "Data format for the response.", - "default": "json", - "enum": [ - "json" - ], - "enumDescriptions": [ - "Responses with Content-Type of application/json" - ], - "location": "query" - }, - "fields": { - "type": "string", - "description": "Selector specifying which fields to include in a partial response.", - "location": "query" - }, - "key": { - "type": "string", - "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" - }, - "oauth_token": { - "type": "string", - "description": "OAuth 2.0 token for the current user.", - "location": "query" - }, - "prettyPrint": { - "type": "boolean", - "description": "Returns response with indentations and line breaks.", - "default": "true", - "location": "query" - }, - "quotaUser": { - "type": "string", - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", - "location": "query" - }, - "userIp": { - "type": "string", - "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", - "location": "query" - } - }, - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/cloud-platform": { - "description": "View and manage your data across Google Cloud Platform services" - }, - "https://www.googleapis.com/auth/cloud-platform.read-only": { - "description": "View your data across Google Cloud Platform services" - }, - "https://www.googleapis.com/auth/cloud.useraccounts": { - "description": "Manage your Google Cloud User Accounts" - }, - "https://www.googleapis.com/auth/cloud.useraccounts.readonly": { - "description": "View your Google Cloud User Accounts" - } - } - } - }, - "schemas": { - "AuthorizedKeysView": { - "id": "AuthorizedKeysView", - "type": "object", - "description": "A list of authorized public keys for a user account.", - "properties": { - "keys": { - "type": "array", - "description": "[Output Only] The list of authorized public keys in SSH format.", - "items": { - "type": "string" - } - }, - "sudoer": { - "type": "boolean", - "description": "[Output Only] Whether the user has the ability to elevate on the instance that requested the authorized keys." - } - } - }, - "Group": { - "id": "Group", - "type": "object", - "description": "A Group resource.", - "properties": { - "creationTimestamp": { - "type": "string", - "description": "[Output Only] Creation timestamp in RFC3339 text format." - }, - "description": { - "type": "string", - "description": "An optional textual description of the resource; provided by the client when the resource is created." - }, - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server.", - "format": "uint64" - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of the resource. Always clouduseraccounts#group for groups.", - "default": "clouduseraccounts#group" - }, - "members": { - "type": "array", - "description": "[Output Only] A list of URLs to User resources who belong to the group. Users may only be members of groups in the same project.", - "items": { - "type": "string" - } - }, - "name": { - "type": "string", - "description": "Name of the resource; provided by the client when the resource is created.", - "pattern": "[a-z][-a-z0-9_]{0,31}", - "annotations": { - "required": [ - "clouduseraccounts.groups.insert" - ] - } - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server defined URL for the resource." - } - } - }, - "GroupList": { - "id": "GroupList", - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "array", - "description": "[Output Only] A list of Group resources.", - "items": { - "$ref": "Group" - } - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always clouduseraccounts#groupList for lists of groups.", - "default": "clouduseraccounts#groupList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] A token used to continue a truncated list request." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server defined URL for this resource." - } - } - }, - "GroupsAddMemberRequest": { - "id": "GroupsAddMemberRequest", - "type": "object", - "properties": { - "users": { - "type": "array", - "description": "Fully-qualified URLs of the User resources to add.", - "items": { - "type": "string" - } - } - } - }, - "GroupsRemoveMemberRequest": { - "id": "GroupsRemoveMemberRequest", - "type": "object", - "properties": { - "users": { - "type": "array", - "description": "Fully-qualified URLs of the User resources to remove.", - "items": { - "type": "string" - } - } - } - }, - "LinuxAccountViews": { - "id": "LinuxAccountViews", - "type": "object", - "description": "A list of all Linux accounts for this project. This API is only used by Compute Engine virtual machines to get information about user accounts for a project or instance. Linux resources are read-only views into users and groups managed by the Compute Engine Accounts API.", - "properties": { - "groupViews": { - "type": "array", - "description": "[Output Only] A list of all groups within a project.", - "items": { - "$ref": "LinuxGroupView" - } - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of the resource. Always clouduseraccounts#linuxAccountViews for Linux resources.", - "default": "clouduseraccounts#linuxAccountViews" - }, - "userViews": { - "type": "array", - "description": "[Output Only] A list of all users within a project.", - "items": { - "$ref": "LinuxUserView" - } - } - } - }, - "LinuxGetAuthorizedKeysViewResponse": { - "id": "LinuxGetAuthorizedKeysViewResponse", - "type": "object", - "properties": { - "resource": { - "$ref": "AuthorizedKeysView", - "description": "[Output Only] A list of authorized public keys for a user." - } - } - }, - "LinuxGetLinuxAccountViewsResponse": { - "id": "LinuxGetLinuxAccountViewsResponse", - "type": "object", - "properties": { - "resource": { - "$ref": "LinuxAccountViews", - "description": "[Output Only] A list of authorized user accounts and groups." - } - } - }, - "LinuxGroupView": { - "id": "LinuxGroupView", - "type": "object", - "description": "A detailed view of a Linux group.", - "properties": { - "gid": { - "type": "integer", - "description": "[Output Only] The Group ID.", - "format": "uint32" - }, - "groupName": { - "type": "string", - "description": "[Output Only] Group name." - }, - "members": { - "type": "array", - "description": "[Output Only] List of user accounts that belong to the group.", - "items": { - "type": "string" - } - } - } - }, - "LinuxUserView": { - "id": "LinuxUserView", - "type": "object", - "description": "A detailed view of a Linux user account.", - "properties": { - "gecos": { - "type": "string", - "description": "[Output Only] The GECOS (user information) entry for this account." - }, - "gid": { - "type": "integer", - "description": "[Output Only] User's default group ID.", - "format": "uint32" - }, - "homeDirectory": { - "type": "string", - "description": "[Output Only] The path to the home directory for this account." - }, - "shell": { - "type": "string", - "description": "[Output Only] The path to the login shell for this account." - }, - "uid": { - "type": "integer", - "description": "[Output Only] User ID.", - "format": "uint32" - }, - "username": { - "type": "string", - "description": "[Output Only] The username of the account." - } - } - }, - "Operation": { - "id": "Operation", - "type": "object", - "description": "An Operation resource, used to manage asynchronous API requests.", - "properties": { - "clientOperationId": { - "type": "string", - "description": "[Output Only] Reserved for future use." - }, - "creationTimestamp": { - "type": "string", - "description": "[Output Only] Creation timestamp in RFC3339 text format." - }, - "description": { - "type": "string", - "description": "[Output Only] A textual description of the operation, which is set when the operation is created." - }, - "endTime": { - "type": "string", - "description": "[Output Only] The time that this operation was completed. This value is in RFC3339 text format." - }, - "error": { - "type": "object", - "description": "[Output Only] If errors are generated during processing of the operation, this field will be populated.", - "properties": { - "errors": { - "type": "array", - "description": "[Output Only] The array of errors encountered while processing this operation.", - "items": { - "type": "object", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] The error type identifier for this error." - }, - "location": { - "type": "string", - "description": "[Output Only] Indicates the field in the request that caused the error. This property is optional." - }, - "message": { - "type": "string", - "description": "[Output Only] An optional, human-readable error message." - } + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/cloud-platform": { + "description": "View and manage your data across Google Cloud Platform services" + }, + "https://www.googleapis.com/auth/cloud-platform.read-only": { + "description": "View your data across Google Cloud Platform services" + }, + "https://www.googleapis.com/auth/cloud.useraccounts": { + "description": "Manage your Google Cloud User Accounts" + }, + "https://www.googleapis.com/auth/cloud.useraccounts.readonly": { + "description": "View your Google Cloud User Accounts" } - } } - } - }, - "httpErrorMessage": { - "type": "string", - "description": "[Output Only] If the operation fails, this field contains the HTTP error message that was returned, such as NOT FOUND." - }, - "httpErrorStatusCode": { - "type": "integer", - "description": "[Output Only] If the operation fails, this field contains the HTTP error status code that was returned. For example, a 404 means the resource was not found.", - "format": "int32" - }, - "id": { - "type": "string", - "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", - "format": "uint64" - }, - "insertTime": { - "type": "string", - "description": "[Output Only] The time that this operation was requested. This value is in RFC3339 text format." - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of the resource. Always compute#operation for Operation resources.", - "default": "clouduseraccounts#operation" - }, - "name": { - "type": "string", - "description": "[Output Only] Name of the resource." - }, - "operationType": { - "type": "string", - "description": "[Output Only] The type of operation, such as insert, update, or delete, and so on." - }, - "progress": { - "type": "integer", - "description": "[Output Only] An optional progress indicator that ranges from 0 to 100. There is no requirement that this be linear or support any granularity of operations. This should not be used to guess when the operation will be complete. This number should monotonically increase as the operation progresses.", - "format": "int32" - }, - "region": { - "type": "string", - "description": "[Output Only] The URL of the region where the operation resides. Only available when performing regional operations." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for the resource." - }, - "startTime": { - "type": "string", - "description": "[Output Only] The time that this operation was started by the server. This value is in RFC3339 text format." - }, - "status": { - "type": "string", - "description": "[Output Only] The status of the operation, which can be one of the following: PENDING, RUNNING, or DONE.", - "enum": [ - "DONE", - "PENDING", - "RUNNING" - ], - "enumDescriptions": [ - "", - "", - "" - ] - }, - "statusMessage": { - "type": "string", - "description": "[Output Only] An optional textual description of the current status of the operation." - }, - "targetId": { - "type": "string", - "description": "[Output Only] The unique target ID, which identifies a specific incarnation of the target resource.", - "format": "uint64" - }, - "targetLink": { - "type": "string", - "description": "[Output Only] The URL of the resource that the operation modifies." - }, - "user": { - "type": "string", - "description": "[Output Only] User who requested the operation, for example: user@example.com." - }, - "warnings": { - "type": "array", - "description": "[Output Only] If warning messages are generated during processing of the operation, this field will be populated.", - "items": { - "type": "object", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "INJECTED_KERNELS_DEPRECATED", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_NOT_DELETED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - }, - "zone": { - "type": "string", - "description": "[Output Only] The URL of the zone where the operation resides. Only available when performing per-zone operations." } - } }, - "OperationList": { - "id": "OperationList", - "type": "object", - "description": "Contains a list of Operation resources.", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server." - }, - "items": { - "type": "array", - "description": "[Output Only] A list of Operation resources.", - "items": { - "$ref": "Operation" - } - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#operations for Operations resource.", - "default": "clouduseraccounts#operationList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - } - } + "basePath": "/clouduseraccounts/beta/projects/", + "baseUrl": "https://www.googleapis.com/clouduseraccounts/beta/projects/", + "batchPath": "batch/clouduseraccounts/beta", + "canonicalName": "Cloud User Accounts", + "description": "Creates and manages users and groups for accessing Google Compute Engine virtual machines.", + "discoveryVersion": "v1", + "documentationLink": "https://cloud.google.com/compute/docs/access/user-accounts/api/latest/", + "etag": "\"-iA1DTNe4s-I6JZXPt1t1Ypy8IU/-BiORd5nMN3AbHTR5Pi2H1JslEk\"", + "icons": { + "x16": "https://www.google.com/images/icons/product/compute_engine-16.png", + "x32": "https://www.google.com/images/icons/product/compute_engine-32.png" }, - "PublicKey": { - "id": "PublicKey", - "type": "object", - "description": "A public key for authenticating to guests.", - "properties": { - "creationTimestamp": { - "type": "string", - "description": "[Output Only] Creation timestamp in RFC3339 text format." + "id": "clouduseraccounts:beta", + "kind": "discovery#restDescription", + "name": "clouduseraccounts", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "alt": { + "default": "json", + "description": "Data format for the response.", + "enum": [ + "json" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json" + ], + "location": "query", + "type": "string" }, - "description": { - "type": "string", - "description": "An optional textual description of the resource; provided by the client when the resource is created." - }, - "expirationTimestamp": { - "type": "string", - "description": "Optional expiration timestamp. If provided, the timestamp must be in RFC3339 text format. If not provided, the public key never expires." - }, - "fingerprint": { - "type": "string", - "description": "[Output Only] The fingerprint of the key is defined by RFC4716 to be the MD5 digest of the public key." + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "location": "query", + "type": "string" }, "key": { - "type": "string", - "description": "Public key text in SSH format, defined by RFC4253 section 6.6." - } - } - }, - "User": { - "id": "User", - "type": "object", - "description": "A User resource.", - "properties": { - "creationTimestamp": { - "type": "string", - "description": "[Output Only] Creation timestamp in RFC3339 text format." + "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" }, - "description": { - "type": "string", - "description": "An optional textual description of the resource; provided by the client when the resource is created." + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", + "location": "query", + "type": "string" + }, + "userIp": { + "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", + "location": "query", + "type": "string" + } + }, + "protocol": "rest", + "resources": { + "globalAccountsOperations": { + "methods": { + "delete": { + "description": "Deletes the specified operation resource.", + "httpMethod": "DELETE", + "id": "clouduseraccounts.globalAccountsOperations.delete", + "parameterOrder": [ + "project", + "operation" + ], + "parameters": { + "operation": { + "description": "Name of the Operations resource to delete.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/operations/{operation}", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud.useraccounts" + ] + }, + "get": { + "description": "Retrieves the specified operation resource.", + "httpMethod": "GET", + "id": "clouduseraccounts.globalAccountsOperations.get", + "parameterOrder": [ + "project", + "operation" + ], + "parameters": { + "operation": { + "description": "Name of the Operations resource to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/operations/{operation}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/cloud.useraccounts", + "https://www.googleapis.com/auth/cloud.useraccounts.readonly" + ] + }, + "list": { + "description": "Retrieves the list of operation resources contained within the specified project.", + "httpMethod": "GET", + "id": "clouduseraccounts.globalAccountsOperations.list", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nCompute Engine Beta API Only: If you use filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. In particular, use filtering on nested fields to take advantage of instance labels to organize and filter results based on label values.\n\nThe Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests.", + "format": "uint32", + "location": "query", + "maximum": "500", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/operations", + "response": { + "$ref": "OperationList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/cloud.useraccounts", + "https://www.googleapis.com/auth/cloud.useraccounts.readonly" + ] + } + } }, "groups": { - "type": "array", - "description": "[Output Only] A list of URLs to Group resources who contain the user. Users are only members of groups in the same project.", - "items": { - "type": "string" - } + "methods": { + "addMember": { + "description": "Adds users to the specified group.", + "httpMethod": "POST", + "id": "clouduseraccounts.groups.addMember", + "parameterOrder": [ + "project", + "groupName" + ], + "parameters": { + "groupName": { + "description": "Name of the group for this request.", + "location": "path", + "pattern": "[a-z][-a-z0-9_]{0,31}", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/groups/{groupName}/addMember", + "request": { + "$ref": "GroupsAddMemberRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud.useraccounts" + ] + }, + "delete": { + "description": "Deletes the specified Group resource.", + "httpMethod": "DELETE", + "id": "clouduseraccounts.groups.delete", + "parameterOrder": [ + "project", + "groupName" + ], + "parameters": { + "groupName": { + "description": "Name of the Group resource to delete.", + "location": "path", + "pattern": "[a-z][-a-z0-9_]{0,31}", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/groups/{groupName}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud.useraccounts" + ] + }, + "get": { + "description": "Returns the specified Group resource.", + "httpMethod": "GET", + "id": "clouduseraccounts.groups.get", + "parameterOrder": [ + "project", + "groupName" + ], + "parameters": { + "groupName": { + "description": "Name of the Group resource to return.", + "location": "path", + "pattern": "[a-z][-a-z0-9_]{0,31}", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/groups/{groupName}", + "response": { + "$ref": "Group" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/cloud.useraccounts", + "https://www.googleapis.com/auth/cloud.useraccounts.readonly" + ] + }, + "insert": { + "description": "Creates a Group resource in the specified project using the data included in the request.", + "httpMethod": "POST", + "id": "clouduseraccounts.groups.insert", + "parameterOrder": [ + "project" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/groups", + "request": { + "$ref": "Group" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud.useraccounts" + ] + }, + "list": { + "description": "Retrieves the list of groups contained within the specified project.", + "httpMethod": "GET", + "id": "clouduseraccounts.groups.list", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nCompute Engine Beta API Only: If you use filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. In particular, use filtering on nested fields to take advantage of instance labels to organize and filter results based on label values.\n\nThe Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests.", + "format": "uint32", + "location": "query", + "maximum": "500", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/groups", + "response": { + "$ref": "GroupList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/cloud.useraccounts", + "https://www.googleapis.com/auth/cloud.useraccounts.readonly" + ] + }, + "removeMember": { + "description": "Removes users from the specified group.", + "httpMethod": "POST", + "id": "clouduseraccounts.groups.removeMember", + "parameterOrder": [ + "project", + "groupName" + ], + "parameters": { + "groupName": { + "description": "Name of the group for this request.", + "location": "path", + "pattern": "[a-z][-a-z0-9_]{0,31}", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/groups/{groupName}/removeMember", + "request": { + "$ref": "GroupsRemoveMemberRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud.useraccounts" + ] + } + } }, - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server.", - "format": "uint64" + "linux": { + "methods": { + "getAuthorizedKeysView": { + "description": "Returns a list of authorized public keys for a specific user account.", + "httpMethod": "POST", + "id": "clouduseraccounts.linux.getAuthorizedKeysView", + "parameterOrder": [ + "project", + "zone", + "user", + "instance" + ], + "parameters": { + "instance": { + "description": "The fully-qualified URL of the virtual machine requesting the view.", + "location": "query", + "required": true, + "type": "string" + }, + "login": { + "description": "Whether the view was requested as part of a user-initiated login.", + "location": "query", + "type": "boolean" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "user": { + "description": "The user account for which you want to get a list of authorized public keys.", + "location": "path", + "pattern": "[a-z][-a-z0-9_]{0,31}", + "required": true, + "type": "string" + }, + "zone": { + "description": "Name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/authorizedKeysView/{user}", + "response": { + "$ref": "LinuxGetAuthorizedKeysViewResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/cloud.useraccounts", + "https://www.googleapis.com/auth/cloud.useraccounts.readonly" + ] + }, + "getLinuxAccountViews": { + "description": "Retrieves a list of user accounts for an instance within a specific project.", + "httpMethod": "POST", + "id": "clouduseraccounts.linux.getLinuxAccountViews", + "parameterOrder": [ + "project", + "zone", + "instance" + ], + "parameters": { + "filter": { + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nCompute Engine Beta API Only: If you use filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. In particular, use filtering on nested fields to take advantage of instance labels to organize and filter results based on label values.\n\nThe Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "location": "query", + "type": "string" + }, + "instance": { + "description": "The fully-qualified URL of the virtual machine requesting the views.", + "location": "query", + "required": true, + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests.", + "format": "uint32", + "location": "query", + "maximum": "500", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "zone": { + "description": "Name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/linuxAccountViews", + "response": { + "$ref": "LinuxGetLinuxAccountViewsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/cloud.useraccounts", + "https://www.googleapis.com/auth/cloud.useraccounts.readonly" + ] + } + } }, - "kind": { - "type": "string", - "description": "[Output Only] Type of the resource. Always clouduseraccounts#user for users.", - "default": "clouduseraccounts#user" - }, - "name": { - "type": "string", - "description": "Name of the resource; provided by the client when the resource is created.", - "pattern": "[a-z][-a-z0-9_]{0,31}", - "annotations": { - "required": [ - "clouduseraccounts.users.insert" - ] - } - }, - "owner": { - "type": "string", - "description": "Email address of account's owner. This account will be validated to make sure it exists. The email can belong to any domain, but it must be tied to a Google account.", - "annotations": { - "required": [ - "clouduseraccounts.users.insert" - ] - } - }, - "publicKeys": { - "type": "array", - "description": "[Output Only] Public keys that this user may use to login.", - "items": { - "$ref": "PublicKey" - } - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server defined URL for the resource." + "users": { + "methods": { + "addPublicKey": { + "description": "Adds a public key to the specified User resource with the data included in the request.", + "httpMethod": "POST", + "id": "clouduseraccounts.users.addPublicKey", + "parameterOrder": [ + "project", + "user" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "user": { + "description": "Name of the user for this request.", + "location": "path", + "pattern": "[a-z][-a-z0-9_]{0,31}", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/users/{user}/addPublicKey", + "request": { + "$ref": "PublicKey" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud.useraccounts" + ] + }, + "delete": { + "description": "Deletes the specified User resource.", + "httpMethod": "DELETE", + "id": "clouduseraccounts.users.delete", + "parameterOrder": [ + "project", + "user" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "user": { + "description": "Name of the user resource to delete.", + "location": "path", + "pattern": "[a-z][-a-z0-9_]{0,31}", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/users/{user}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud.useraccounts" + ] + }, + "get": { + "description": "Returns the specified User resource.", + "httpMethod": "GET", + "id": "clouduseraccounts.users.get", + "parameterOrder": [ + "project", + "user" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "user": { + "description": "Name of the user resource to return.", + "location": "path", + "pattern": "[a-z][-a-z0-9_]{0,31}", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/users/{user}", + "response": { + "$ref": "User" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/cloud.useraccounts", + "https://www.googleapis.com/auth/cloud.useraccounts.readonly" + ] + }, + "insert": { + "description": "Creates a User resource in the specified project using the data included in the request.", + "httpMethod": "POST", + "id": "clouduseraccounts.users.insert", + "parameterOrder": [ + "project" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/users", + "request": { + "$ref": "User" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud.useraccounts" + ] + }, + "list": { + "description": "Retrieves a list of users contained within the specified project.", + "httpMethod": "GET", + "id": "clouduseraccounts.users.list", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nCompute Engine Beta API Only: If you use filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. In particular, use filtering on nested fields to take advantage of instance labels to organize and filter results based on label values.\n\nThe Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests.", + "format": "uint32", + "location": "query", + "maximum": "500", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/users", + "response": { + "$ref": "UserList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/cloud.useraccounts", + "https://www.googleapis.com/auth/cloud.useraccounts.readonly" + ] + }, + "removePublicKey": { + "description": "Removes the specified public key from the user.", + "httpMethod": "POST", + "id": "clouduseraccounts.users.removePublicKey", + "parameterOrder": [ + "project", + "user", + "fingerprint" + ], + "parameters": { + "fingerprint": { + "description": "The fingerprint of the public key to delete. Public keys are identified by their fingerprint, which is defined by RFC4716 to be the MD5 digest of the public key.", + "location": "query", + "pattern": "[a-f0-9]{32}", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "user": { + "description": "Name of the user for this request.", + "location": "path", + "pattern": "[a-z][-a-z0-9_]{0,31}", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/users/{user}/removePublicKey", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud.useraccounts" + ] + } + } } - } }, - "UserList": { - "id": "UserList", - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." + "revision": "20160316", + "rootUrl": "https://www.googleapis.com/", + "schemas": { + "AuthorizedKeysView": { + "description": "A list of authorized public keys for a user account.", + "id": "AuthorizedKeysView", + "properties": { + "keys": { + "description": "[Output Only] The list of authorized public keys in SSH format.", + "items": { + "type": "string" + }, + "type": "array" + }, + "sudoer": { + "description": "[Output Only] Whether the user has the ability to elevate on the instance that requested the authorized keys.", + "type": "boolean" + } + }, + "type": "object" }, - "items": { - "type": "array", - "description": "[Output Only] A list of User resources.", - "items": { - "$ref": "User" - } + "Group": { + "description": "A Group resource.", + "id": "Group", + "properties": { + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "description": { + "description": "An optional textual description of the resource; provided by the client when the resource is created.", + "type": "string" + }, + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "format": "uint64", + "type": "string" + }, + "kind": { + "default": "clouduseraccounts#group", + "description": "[Output Only] Type of the resource. Always clouduseraccounts#group for groups.", + "type": "string" + }, + "members": { + "description": "[Output Only] A list of URLs to User resources who belong to the group. Users may only be members of groups in the same project.", + "items": { + "type": "string" + }, + "type": "array" + }, + "name": { + "annotations": { + "required": [ + "clouduseraccounts.groups.insert" + ] + }, + "description": "Name of the resource; provided by the client when the resource is created.", + "pattern": "[a-z][-a-z0-9_]{0,31}", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server defined URL for the resource.", + "type": "string" + } + }, + "type": "object" }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always clouduseraccounts#userList for lists of users.", - "default": "clouduseraccounts#userList" + "GroupList": { + "id": "GroupList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "[Output Only] A list of Group resources.", + "items": { + "$ref": "Group" + }, + "type": "array" + }, + "kind": { + "default": "clouduseraccounts#groupList", + "description": "[Output Only] Type of resource. Always clouduseraccounts#groupList for lists of groups.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] A token used to continue a truncated list request.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server defined URL for this resource.", + "type": "string" + } + }, + "type": "object" }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] A token used to continue a truncated list request." + "GroupsAddMemberRequest": { + "id": "GroupsAddMemberRequest", + "properties": { + "users": { + "description": "Fully-qualified URLs of the User resources to add.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server defined URL for this resource." + "GroupsRemoveMemberRequest": { + "id": "GroupsRemoveMemberRequest", + "properties": { + "users": { + "description": "Fully-qualified URLs of the User resources to remove.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "LinuxAccountViews": { + "description": "A list of all Linux accounts for this project. This API is only used by Compute Engine virtual machines to get information about user accounts for a project or instance. Linux resources are read-only views into users and groups managed by the Compute Engine Accounts API.", + "id": "LinuxAccountViews", + "properties": { + "groupViews": { + "description": "[Output Only] A list of all groups within a project.", + "items": { + "$ref": "LinuxGroupView" + }, + "type": "array" + }, + "kind": { + "default": "clouduseraccounts#linuxAccountViews", + "description": "[Output Only] Type of the resource. Always clouduseraccounts#linuxAccountViews for Linux resources.", + "type": "string" + }, + "userViews": { + "description": "[Output Only] A list of all users within a project.", + "items": { + "$ref": "LinuxUserView" + }, + "type": "array" + } + }, + "type": "object" + }, + "LinuxGetAuthorizedKeysViewResponse": { + "id": "LinuxGetAuthorizedKeysViewResponse", + "properties": { + "resource": { + "$ref": "AuthorizedKeysView", + "description": "[Output Only] A list of authorized public keys for a user." + } + }, + "type": "object" + }, + "LinuxGetLinuxAccountViewsResponse": { + "id": "LinuxGetLinuxAccountViewsResponse", + "properties": { + "resource": { + "$ref": "LinuxAccountViews", + "description": "[Output Only] A list of authorized user accounts and groups." + } + }, + "type": "object" + }, + "LinuxGroupView": { + "description": "A detailed view of a Linux group.", + "id": "LinuxGroupView", + "properties": { + "gid": { + "description": "[Output Only] The Group ID.", + "format": "uint32", + "type": "integer" + }, + "groupName": { + "description": "[Output Only] Group name.", + "type": "string" + }, + "members": { + "description": "[Output Only] List of user accounts that belong to the group.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "LinuxUserView": { + "description": "A detailed view of a Linux user account.", + "id": "LinuxUserView", + "properties": { + "gecos": { + "description": "[Output Only] The GECOS (user information) entry for this account.", + "type": "string" + }, + "gid": { + "description": "[Output Only] User's default group ID.", + "format": "uint32", + "type": "integer" + }, + "homeDirectory": { + "description": "[Output Only] The path to the home directory for this account.", + "type": "string" + }, + "shell": { + "description": "[Output Only] The path to the login shell for this account.", + "type": "string" + }, + "uid": { + "description": "[Output Only] User ID.", + "format": "uint32", + "type": "integer" + }, + "username": { + "description": "[Output Only] The username of the account.", + "type": "string" + } + }, + "type": "object" + }, + "Operation": { + "description": "An Operation resource, used to manage asynchronous API requests.", + "id": "Operation", + "properties": { + "clientOperationId": { + "description": "[Output Only] Reserved for future use.", + "type": "string" + }, + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "description": { + "description": "[Output Only] A textual description of the operation, which is set when the operation is created.", + "type": "string" + }, + "endTime": { + "description": "[Output Only] The time that this operation was completed. This value is in RFC3339 text format.", + "type": "string" + }, + "error": { + "description": "[Output Only] If errors are generated during processing of the operation, this field will be populated.", + "properties": { + "errors": { + "description": "[Output Only] The array of errors encountered while processing this operation.", + "items": { + "properties": { + "code": { + "description": "[Output Only] The error type identifier for this error.", + "type": "string" + }, + "location": { + "description": "[Output Only] Indicates the field in the request that caused the error. This property is optional.", + "type": "string" + }, + "message": { + "description": "[Output Only] An optional, human-readable error message.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + } + }, + "type": "object" + }, + "httpErrorMessage": { + "description": "[Output Only] If the operation fails, this field contains the HTTP error message that was returned, such as NOT FOUND.", + "type": "string" + }, + "httpErrorStatusCode": { + "description": "[Output Only] If the operation fails, this field contains the HTTP error status code that was returned. For example, a 404 means the resource was not found.", + "format": "int32", + "type": "integer" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64", + "type": "string" + }, + "insertTime": { + "description": "[Output Only] The time that this operation was requested. This value is in RFC3339 text format.", + "type": "string" + }, + "kind": { + "default": "clouduseraccounts#operation", + "description": "[Output Only] Type of the resource. Always compute#operation for Operation resources.", + "type": "string" + }, + "name": { + "description": "[Output Only] Name of the resource.", + "type": "string" + }, + "operationType": { + "description": "[Output Only] The type of operation, such as insert, update, or delete, and so on.", + "type": "string" + }, + "progress": { + "description": "[Output Only] An optional progress indicator that ranges from 0 to 100. There is no requirement that this be linear or support any granularity of operations. This should not be used to guess when the operation will be complete. This number should monotonically increase as the operation progresses.", + "format": "int32", + "type": "integer" + }, + "region": { + "description": "[Output Only] The URL of the region where the operation resides. Only available when performing regional operations.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + }, + "startTime": { + "description": "[Output Only] The time that this operation was started by the server. This value is in RFC3339 text format.", + "type": "string" + }, + "status": { + "description": "[Output Only] The status of the operation, which can be one of the following: PENDING, RUNNING, or DONE.", + "enum": [ + "DONE", + "PENDING", + "RUNNING" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, + "statusMessage": { + "description": "[Output Only] An optional textual description of the current status of the operation.", + "type": "string" + }, + "targetId": { + "description": "[Output Only] The unique target ID, which identifies a specific incarnation of the target resource.", + "format": "uint64", + "type": "string" + }, + "targetLink": { + "description": "[Output Only] The URL of the resource that the operation modifies.", + "type": "string" + }, + "user": { + "description": "[Output Only] User who requested the operation, for example: user@example.com.", + "type": "string" + }, + "warnings": { + "description": "[Output Only] If warning messages are generated during processing of the operation, this field will be populated.", + "items": { + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "INJECTED_KERNELS_DEPRECATED", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_NOT_DELETED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "zone": { + "description": "[Output Only] The URL of the zone where the operation resides. Only available when performing per-zone operations.", + "type": "string" + } + }, + "type": "object" + }, + "OperationList": { + "description": "Contains a list of Operation resources.", + "id": "OperationList", + "properties": { + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "type": "string" + }, + "items": { + "description": "[Output Only] A list of Operation resources.", + "items": { + "$ref": "Operation" + }, + "type": "array" + }, + "kind": { + "default": "clouduseraccounts#operationList", + "description": "[Output Only] Type of resource. Always compute#operations for Operations resource.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + } + }, + "type": "object" + }, + "PublicKey": { + "description": "A public key for authenticating to guests.", + "id": "PublicKey", + "properties": { + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "description": { + "description": "An optional textual description of the resource; provided by the client when the resource is created.", + "type": "string" + }, + "expirationTimestamp": { + "description": "Optional expiration timestamp. If provided, the timestamp must be in RFC3339 text format. If not provided, the public key never expires.", + "type": "string" + }, + "fingerprint": { + "description": "[Output Only] The fingerprint of the key is defined by RFC4716 to be the MD5 digest of the public key.", + "type": "string" + }, + "key": { + "description": "Public key text in SSH format, defined by RFC4253 section 6.6.", + "type": "string" + } + }, + "type": "object" + }, + "User": { + "description": "A User resource.", + "id": "User", + "properties": { + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "description": { + "description": "An optional textual description of the resource; provided by the client when the resource is created.", + "type": "string" + }, + "groups": { + "description": "[Output Only] A list of URLs to Group resources who contain the user. Users are only members of groups in the same project.", + "items": { + "type": "string" + }, + "type": "array" + }, + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "format": "uint64", + "type": "string" + }, + "kind": { + "default": "clouduseraccounts#user", + "description": "[Output Only] Type of the resource. Always clouduseraccounts#user for users.", + "type": "string" + }, + "name": { + "annotations": { + "required": [ + "clouduseraccounts.users.insert" + ] + }, + "description": "Name of the resource; provided by the client when the resource is created.", + "pattern": "[a-z][-a-z0-9_]{0,31}", + "type": "string" + }, + "owner": { + "annotations": { + "required": [ + "clouduseraccounts.users.insert" + ] + }, + "description": "Email address of account's owner. This account will be validated to make sure it exists. The email can belong to any domain, but it must be tied to a Google account.", + "type": "string" + }, + "publicKeys": { + "description": "[Output Only] Public keys that this user may use to login.", + "items": { + "$ref": "PublicKey" + }, + "type": "array" + }, + "selfLink": { + "description": "[Output Only] Server defined URL for the resource.", + "type": "string" + } + }, + "type": "object" + }, + "UserList": { + "id": "UserList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "[Output Only] A list of User resources.", + "items": { + "$ref": "User" + }, + "type": "array" + }, + "kind": { + "default": "clouduseraccounts#userList", + "description": "[Output Only] Type of resource. Always clouduseraccounts#userList for lists of users.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] A token used to continue a truncated list request.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server defined URL for this resource.", + "type": "string" + } + }, + "type": "object" } - } - } - }, - "resources": { - "globalAccountsOperations": { - "methods": { - "delete": { - "id": "clouduseraccounts.globalAccountsOperations.delete", - "path": "{project}/global/operations/{operation}", - "httpMethod": "DELETE", - "description": "Deletes the specified operation resource.", - "parameters": { - "operation": { - "type": "string", - "description": "Name of the Operations resource to delete.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "operation" - ], - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud.useraccounts" - ] - }, - "get": { - "id": "clouduseraccounts.globalAccountsOperations.get", - "path": "{project}/global/operations/{operation}", - "httpMethod": "GET", - "description": "Retrieves the specified operation resource.", - "parameters": { - "operation": { - "type": "string", - "description": "Name of the Operations resource to return.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "operation" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/cloud.useraccounts", - "https://www.googleapis.com/auth/cloud.useraccounts.readonly" - ] - }, - "list": { - "id": "clouduseraccounts.globalAccountsOperations.list", - "path": "{project}/global/operations", - "httpMethod": "GET", - "description": "Retrieves the list of operation resources contained within the specified project.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nCompute Engine Beta API Only: If you use filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. In particular, use filtering on nested fields to take advantage of instance labels to organize and filter results based on label values.\n\nThe Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests.", - "default": "500", - "format": "uint32", - "minimum": "0", - "maximum": "500", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "OperationList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/cloud.useraccounts", - "https://www.googleapis.com/auth/cloud.useraccounts.readonly" - ] - } - } }, - "groups": { - "methods": { - "addMember": { - "id": "clouduseraccounts.groups.addMember", - "path": "{project}/global/groups/{groupName}/addMember", - "httpMethod": "POST", - "description": "Adds users to the specified group.", - "parameters": { - "groupName": { - "type": "string", - "description": "Name of the group for this request.", - "required": true, - "pattern": "[a-z][-a-z0-9_]{0,31}", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "groupName" - ], - "request": { - "$ref": "GroupsAddMemberRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud.useraccounts" - ] - }, - "delete": { - "id": "clouduseraccounts.groups.delete", - "path": "{project}/global/groups/{groupName}", - "httpMethod": "DELETE", - "description": "Deletes the specified Group resource.", - "parameters": { - "groupName": { - "type": "string", - "description": "Name of the Group resource to delete.", - "required": true, - "pattern": "[a-z][-a-z0-9_]{0,31}", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "groupName" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud.useraccounts" - ] - }, - "get": { - "id": "clouduseraccounts.groups.get", - "path": "{project}/global/groups/{groupName}", - "httpMethod": "GET", - "description": "Returns the specified Group resource.", - "parameters": { - "groupName": { - "type": "string", - "description": "Name of the Group resource to return.", - "required": true, - "pattern": "[a-z][-a-z0-9_]{0,31}", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "groupName" - ], - "response": { - "$ref": "Group" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/cloud.useraccounts", - "https://www.googleapis.com/auth/cloud.useraccounts.readonly" - ] - }, - "insert": { - "id": "clouduseraccounts.groups.insert", - "path": "{project}/global/groups", - "httpMethod": "POST", - "description": "Creates a Group resource in the specified project using the data included in the request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "request": { - "$ref": "Group" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud.useraccounts" - ] - }, - "list": { - "id": "clouduseraccounts.groups.list", - "path": "{project}/global/groups", - "httpMethod": "GET", - "description": "Retrieves the list of groups contained within the specified project.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nCompute Engine Beta API Only: If you use filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. In particular, use filtering on nested fields to take advantage of instance labels to organize and filter results based on label values.\n\nThe Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests.", - "default": "500", - "format": "uint32", - "minimum": "0", - "maximum": "500", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "GroupList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/cloud.useraccounts", - "https://www.googleapis.com/auth/cloud.useraccounts.readonly" - ] - }, - "removeMember": { - "id": "clouduseraccounts.groups.removeMember", - "path": "{project}/global/groups/{groupName}/removeMember", - "httpMethod": "POST", - "description": "Removes users from the specified group.", - "parameters": { - "groupName": { - "type": "string", - "description": "Name of the group for this request.", - "required": true, - "pattern": "[a-z][-a-z0-9_]{0,31}", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "groupName" - ], - "request": { - "$ref": "GroupsRemoveMemberRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud.useraccounts" - ] - } - } - }, - "linux": { - "methods": { - "getAuthorizedKeysView": { - "id": "clouduseraccounts.linux.getAuthorizedKeysView", - "path": "{project}/zones/{zone}/authorizedKeysView/{user}", - "httpMethod": "POST", - "description": "Returns a list of authorized public keys for a specific user account.", - "parameters": { - "instance": { - "type": "string", - "description": "The fully-qualified URL of the virtual machine requesting the view.", - "required": true, - "location": "query" - }, - "login": { - "type": "boolean", - "description": "Whether the view was requested as part of a user-initiated login.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "user": { - "type": "string", - "description": "The user account for which you want to get a list of authorized public keys.", - "required": true, - "pattern": "[a-z][-a-z0-9_]{0,31}", - "location": "path" - }, - "zone": { - "type": "string", - "description": "Name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "user", - "instance" - ], - "response": { - "$ref": "LinuxGetAuthorizedKeysViewResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/cloud.useraccounts", - "https://www.googleapis.com/auth/cloud.useraccounts.readonly" - ] - }, - "getLinuxAccountViews": { - "id": "clouduseraccounts.linux.getLinuxAccountViews", - "path": "{project}/zones/{zone}/linuxAccountViews", - "httpMethod": "POST", - "description": "Retrieves a list of user accounts for an instance within a specific project.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nCompute Engine Beta API Only: If you use filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. In particular, use filtering on nested fields to take advantage of instance labels to organize and filter results based on label values.\n\nThe Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "instance": { - "type": "string", - "description": "The fully-qualified URL of the virtual machine requesting the views.", - "required": true, - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests.", - "default": "500", - "format": "uint32", - "minimum": "0", - "maximum": "500", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "zone": { - "type": "string", - "description": "Name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "instance" - ], - "response": { - "$ref": "LinuxGetLinuxAccountViewsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/cloud.useraccounts", - "https://www.googleapis.com/auth/cloud.useraccounts.readonly" - ] - } - } - }, - "users": { - "methods": { - "addPublicKey": { - "id": "clouduseraccounts.users.addPublicKey", - "path": "{project}/global/users/{user}/addPublicKey", - "httpMethod": "POST", - "description": "Adds a public key to the specified User resource with the data included in the request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "user": { - "type": "string", - "description": "Name of the user for this request.", - "required": true, - "pattern": "[a-z][-a-z0-9_]{0,31}", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "user" - ], - "request": { - "$ref": "PublicKey" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud.useraccounts" - ] - }, - "delete": { - "id": "clouduseraccounts.users.delete", - "path": "{project}/global/users/{user}", - "httpMethod": "DELETE", - "description": "Deletes the specified User resource.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "user": { - "type": "string", - "description": "Name of the user resource to delete.", - "required": true, - "pattern": "[a-z][-a-z0-9_]{0,31}", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "user" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud.useraccounts" - ] - }, - "get": { - "id": "clouduseraccounts.users.get", - "path": "{project}/global/users/{user}", - "httpMethod": "GET", - "description": "Returns the specified User resource.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "user": { - "type": "string", - "description": "Name of the user resource to return.", - "required": true, - "pattern": "[a-z][-a-z0-9_]{0,31}", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "user" - ], - "response": { - "$ref": "User" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/cloud.useraccounts", - "https://www.googleapis.com/auth/cloud.useraccounts.readonly" - ] - }, - "insert": { - "id": "clouduseraccounts.users.insert", - "path": "{project}/global/users", - "httpMethod": "POST", - "description": "Creates a User resource in the specified project using the data included in the request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "request": { - "$ref": "User" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud.useraccounts" - ] - }, - "list": { - "id": "clouduseraccounts.users.list", - "path": "{project}/global/users", - "httpMethod": "GET", - "description": "Retrieves a list of users contained within the specified project.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nCompute Engine Beta API Only: If you use filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. In particular, use filtering on nested fields to take advantage of instance labels to organize and filter results based on label values.\n\nThe Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests.", - "default": "500", - "format": "uint32", - "minimum": "0", - "maximum": "500", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "UserList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/cloud.useraccounts", - "https://www.googleapis.com/auth/cloud.useraccounts.readonly" - ] - }, - "removePublicKey": { - "id": "clouduseraccounts.users.removePublicKey", - "path": "{project}/global/users/{user}/removePublicKey", - "httpMethod": "POST", - "description": "Removes the specified public key from the user.", - "parameters": { - "fingerprint": { - "type": "string", - "description": "The fingerprint of the public key to delete. Public keys are identified by their fingerprint, which is defined by RFC4716 to be the MD5 digest of the public key.", - "required": true, - "pattern": "[a-f0-9]{32}", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "user": { - "type": "string", - "description": "Name of the user for this request.", - "required": true, - "pattern": "[a-z][-a-z0-9_]{0,31}", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "user", - "fingerprint" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud.useraccounts" - ] - } - } - } - } -} + "servicePath": "clouduseraccounts/beta/projects/", + "title": "Cloud User Accounts API", + "version": "beta" +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/clouduseraccounts/vm_alpha/clouduseraccounts-api.json b/vendor/google.golang.org/api/clouduseraccounts/vm_alpha/clouduseraccounts-api.json index 832a7fad8..4894e6ea4 100644 --- a/vendor/google.golang.org/api/clouduseraccounts/vm_alpha/clouduseraccounts-api.json +++ b/vendor/google.golang.org/api/clouduseraccounts/vm_alpha/clouduseraccounts-api.json @@ -1,1853 +1,1853 @@ { - "kind": "discovery#restDescription", - "etag": "\"YWOzh2SDasdU84ArJnpYek-OMdg/DmNFUFGhSh7oLg7RNX5k36KX4oA\"", - "discoveryVersion": "v1", - "id": "clouduseraccounts:vm_alpha", - "name": "clouduseraccounts", - "canonicalName": "Cloud User Accounts", - "version": "vm_alpha", - "revision": "20160316", - "title": "Cloud User Accounts API", - "description": "Creates and manages users and groups for accessing Google Compute Engine virtual machines.", - "ownerDomain": "google.com", - "ownerName": "Google", - "icons": { - "x16": "https://www.google.com/images/icons/product/compute_engine-16.png", - "x32": "https://www.google.com/images/icons/product/compute_engine-32.png" - }, - "documentationLink": "https://cloud.google.com/compute/docs/access/user-accounts/api/latest/", - "protocol": "rest", - "baseUrl": "https://www.googleapis.com/clouduseraccounts/vm_alpha/projects/", - "basePath": "/clouduseraccounts/vm_alpha/projects/", - "rootUrl": "https://www.googleapis.com/", - "servicePath": "clouduseraccounts/vm_alpha/projects/", - "batchPath": "batch/clouduseraccounts/vm_alpha", - "parameters": { - "alt": { - "type": "string", - "description": "Data format for the response.", - "default": "json", - "enum": [ - "json" - ], - "enumDescriptions": [ - "Responses with Content-Type of application/json" - ], - "location": "query" - }, - "fields": { - "type": "string", - "description": "Selector specifying which fields to include in a partial response.", - "location": "query" - }, - "key": { - "type": "string", - "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" - }, - "oauth_token": { - "type": "string", - "description": "OAuth 2.0 token for the current user.", - "location": "query" - }, - "prettyPrint": { - "type": "boolean", - "description": "Returns response with indentations and line breaks.", - "default": "true", - "location": "query" - }, - "quotaUser": { - "type": "string", - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", - "location": "query" - }, - "userIp": { - "type": "string", - "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", - "location": "query" - } - }, - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/cloud-platform": { - "description": "View and manage your data across Google Cloud Platform services" - }, - "https://www.googleapis.com/auth/cloud-platform.read-only": { - "description": "View your data across Google Cloud Platform services" - }, - "https://www.googleapis.com/auth/cloud.useraccounts": { - "description": "Manage your Google Cloud User Accounts" - }, - "https://www.googleapis.com/auth/cloud.useraccounts.readonly": { - "description": "View your Google Cloud User Accounts" - } - } - } - }, - "schemas": { - "AuditConfig": { - "id": "AuditConfig", - "type": "object", - "description": "Enables \"data access\" audit logging for a service and specifies a list of members that are log-exempted.", - "properties": { - "exemptedMembers": { - "type": "array", - "description": "Specifies the identities that are exempted from \"data access\" audit logging for the `service` specified above. Follows the same format of Binding.members.", - "items": { - "type": "string" - } - }, - "service": { - "type": "string", - "description": "Specifies a service that will be enabled for \"data access\" audit logging. For example, `resourcemanager`, `storage`, `compute`. `allServices` is a special value that covers all services." - } - } - }, - "AuthorizedKeysView": { - "id": "AuthorizedKeysView", - "type": "object", - "description": "A list of authorized public keys for a user account.", - "properties": { - "keys": { - "type": "array", - "description": "[Output Only] The list of authorized public keys in SSH format.", - "items": { - "type": "string" - } - }, - "sudoer": { - "type": "boolean", - "description": "[Output Only] Whether the user has the ability to elevate on the instance that requested the authorized keys." - } - } - }, - "Binding": { - "id": "Binding", - "type": "object", - "description": "Associates `members` with a `role`.", - "properties": { - "members": { - "type": "array", - "description": "Specifies the identities requesting access for a Cloud Platform resource. `members` can have the following values:\n\n* `allUsers`: A special identifier that represents anyone who is on the internet; with or without a Google account.\n\n* `allAuthenticatedUsers`: A special identifier that represents anyone who is authenticated with a Google account or a service account.\n\n* `user:{emailid}`: An email address that represents a specific Google account. For example, `alice@gmail.com` or `joe@example.com`.\n\n* `serviceAccount:{emailid}`: An email address that represents a service account. For example, `my-other-app@appspot.gserviceaccount.com`.\n\n* `group:{emailid}`: An email address that represents a Google group. For example, `admins@example.com`.\n\n* `domain:{domain}`: A Google Apps domain name that represents all the users of that domain. For example, `google.com` or `example.com`.", - "items": { - "type": "string" - } - }, - "role": { - "type": "string", - "description": "Role that is assigned to `members`. For example, `roles/viewer`, `roles/editor`, or `roles/owner`." - } - } - }, - "Condition": { - "id": "Condition", - "type": "object", - "description": "A condition to be met.", - "properties": { - "iam": { - "type": "string", - "description": "Trusted attributes supplied by the IAM system.", - "enum": [ - "ATTRIBUTION", - "AUTHORITY", - "NO_ATTR" - ], - "enumDescriptions": [ - "", - "", - "" - ] - }, - "op": { - "type": "string", - "description": "An operator to apply the subject with.", - "enum": [ - "DISCHARGED", - "EQUALS", - "IN", - "NOT_EQUALS", - "NOT_IN", - "NO_OP" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "" - ] - }, - "svc": { - "type": "string", - "description": "Trusted attributes discharged by the service." - }, - "sys": { - "type": "string", - "description": "Trusted attributes supplied by any service that owns resources and uses the IAM system for access control.", - "enum": [ - "IP", - "NAME", - "NO_ATTR", - "REGION", - "SERVICE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "" - ] - }, - "value": { - "type": "string", - "description": "The object of the condition. Exactly one of these must be set." - }, - "values": { - "type": "array", - "description": "The objects of the condition. This is mutually exclusive with 'value'.", - "items": { - "type": "string" - } - } - } - }, - "Group": { - "id": "Group", - "type": "object", - "description": "A Group resource.", - "properties": { - "creationTimestamp": { - "type": "string", - "description": "[Output Only] Creation timestamp in RFC3339 text format." - }, - "description": { - "type": "string", - "description": "An optional textual description of the resource; provided by the client when the resource is created." - }, - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server.", - "format": "uint64" - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of the resource. Always clouduseraccounts#group for groups.", - "default": "clouduseraccounts#group" - }, - "members": { - "type": "array", - "description": "[Output Only] A list of URLs to User resources who belong to the group. Users may only be members of groups in the same project.", - "items": { - "type": "string" - } - }, - "name": { - "type": "string", - "description": "Name of the resource; provided by the client when the resource is created.", - "pattern": "[a-z][-a-z0-9_]{0,31}", - "annotations": { - "required": [ - "clouduseraccounts.groups.insert" - ] - } - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server defined URL for the resource." - } - } - }, - "GroupList": { - "id": "GroupList", - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "array", - "description": "[Output Only] A list of Group resources.", - "items": { - "$ref": "Group" - } - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always clouduseraccounts#groupList for lists of groups.", - "default": "clouduseraccounts#groupList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] A token used to continue a truncated list request." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server defined URL for this resource." - } - } - }, - "GroupsAddMemberRequest": { - "id": "GroupsAddMemberRequest", - "type": "object", - "properties": { - "users": { - "type": "array", - "description": "Fully-qualified URLs of the User resources to add.", - "items": { - "type": "string" - } - } - } - }, - "GroupsRemoveMemberRequest": { - "id": "GroupsRemoveMemberRequest", - "type": "object", - "properties": { - "users": { - "type": "array", - "description": "Fully-qualified URLs of the User resources to remove.", - "items": { - "type": "string" - } - } - } - }, - "LinuxAccountViews": { - "id": "LinuxAccountViews", - "type": "object", - "description": "A list of all Linux accounts for this project. This API is only used by Compute Engine virtual machines to get information about user accounts for a project or instance. Linux resources are read-only views into users and groups managed by the Compute Engine Accounts API.", - "properties": { - "groupViews": { - "type": "array", - "description": "[Output Only] A list of all groups within a project.", - "items": { - "$ref": "LinuxGroupView" - } - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of the resource. Always clouduseraccounts#linuxAccountViews for Linux resources.", - "default": "clouduseraccounts#linuxAccountViews" - }, - "userViews": { - "type": "array", - "description": "[Output Only] A list of all users within a project.", - "items": { - "$ref": "LinuxUserView" - } - } - } - }, - "LinuxGetAuthorizedKeysViewResponse": { - "id": "LinuxGetAuthorizedKeysViewResponse", - "type": "object", - "properties": { - "resource": { - "$ref": "AuthorizedKeysView", - "description": "[Output Only] A list of authorized public keys for a user." - } - } - }, - "LinuxGetLinuxAccountViewsResponse": { - "id": "LinuxGetLinuxAccountViewsResponse", - "type": "object", - "properties": { - "resource": { - "$ref": "LinuxAccountViews", - "description": "[Output Only] A list of authorized user accounts and groups." - } - } - }, - "LinuxGroupView": { - "id": "LinuxGroupView", - "type": "object", - "description": "A detailed view of a Linux group.", - "properties": { - "gid": { - "type": "integer", - "description": "[Output Only] The Group ID.", - "format": "uint32" - }, - "groupName": { - "type": "string", - "description": "[Output Only] Group name." - }, - "members": { - "type": "array", - "description": "[Output Only] List of user accounts that belong to the group.", - "items": { - "type": "string" - } - } - } - }, - "LinuxUserView": { - "id": "LinuxUserView", - "type": "object", - "description": "A detailed view of a Linux user account.", - "properties": { - "gecos": { - "type": "string", - "description": "[Output Only] The GECOS (user information) entry for this account." - }, - "gid": { - "type": "integer", - "description": "[Output Only] User's default group ID.", - "format": "uint32" - }, - "homeDirectory": { - "type": "string", - "description": "[Output Only] The path to the home directory for this account." - }, - "shell": { - "type": "string", - "description": "[Output Only] The path to the login shell for this account." - }, - "uid": { - "type": "integer", - "description": "[Output Only] User ID.", - "format": "uint32" - }, - "username": { - "type": "string", - "description": "[Output Only] The username of the account." - } - } - }, - "LogConfig": { - "id": "LogConfig", - "type": "object", - "description": "Specifies what kind of log the caller must write", - "properties": { - "counter": { - "$ref": "LogConfigCounterOptions", - "description": "Counter options." - } - } - }, - "LogConfigCounterOptions": { - "id": "LogConfigCounterOptions", - "type": "object", - "description": "Options for counters", - "properties": { - "field": { - "type": "string", - "description": "The field value to attribute." - }, - "metric": { - "type": "string", - "description": "The metric to update." - } - } - }, - "Operation": { - "id": "Operation", - "type": "object", - "description": "An Operation resource, used to manage asynchronous API requests.", - "properties": { - "clientOperationId": { - "type": "string", - "description": "[Output Only] Reserved for future use." - }, - "creationTimestamp": { - "type": "string", - "description": "[Output Only] Creation timestamp in RFC3339 text format." - }, - "description": { - "type": "string", - "description": "[Output Only] A textual description of the operation, which is set when the operation is created." - }, - "endTime": { - "type": "string", - "description": "[Output Only] The time that this operation was completed. This value is in RFC3339 text format." - }, - "error": { - "type": "object", - "description": "[Output Only] If errors are generated during processing of the operation, this field will be populated.", - "properties": { - "errors": { - "type": "array", - "description": "[Output Only] The array of errors encountered while processing this operation.", - "items": { - "type": "object", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] The error type identifier for this error." - }, - "location": { - "type": "string", - "description": "[Output Only] Indicates the field in the request that caused the error. This property is optional." - }, - "message": { - "type": "string", - "description": "[Output Only] An optional, human-readable error message." - } + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/cloud-platform": { + "description": "View and manage your data across Google Cloud Platform services" + }, + "https://www.googleapis.com/auth/cloud-platform.read-only": { + "description": "View your data across Google Cloud Platform services" + }, + "https://www.googleapis.com/auth/cloud.useraccounts": { + "description": "Manage your Google Cloud User Accounts" + }, + "https://www.googleapis.com/auth/cloud.useraccounts.readonly": { + "description": "View your Google Cloud User Accounts" } - } } - } - }, - "httpErrorMessage": { - "type": "string", - "description": "[Output Only] If the operation fails, this field contains the HTTP error message that was returned, such as NOT FOUND." - }, - "httpErrorStatusCode": { - "type": "integer", - "description": "[Output Only] If the operation fails, this field contains the HTTP error status code that was returned. For example, a 404 means the resource was not found.", - "format": "int32" - }, - "id": { - "type": "string", - "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", - "format": "uint64" - }, - "insertTime": { - "type": "string", - "description": "[Output Only] The time that this operation was requested. This value is in RFC3339 text format." - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of the resource. Always compute#operation for Operation resources.", - "default": "clouduseraccounts#operation" - }, - "name": { - "type": "string", - "description": "[Output Only] Name of the resource." - }, - "operationType": { - "type": "string", - "description": "[Output Only] The type of operation, such as insert, update, or delete, and so on." - }, - "progress": { - "type": "integer", - "description": "[Output Only] An optional progress indicator that ranges from 0 to 100. There is no requirement that this be linear or support any granularity of operations. This should not be used to guess when the operation will be complete. This number should monotonically increase as the operation progresses.", - "format": "int32" - }, - "region": { - "type": "string", - "description": "[Output Only] The URL of the region where the operation resides. Only available when performing regional operations." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for the resource." - }, - "startTime": { - "type": "string", - "description": "[Output Only] The time that this operation was started by the server. This value is in RFC3339 text format." - }, - "status": { - "type": "string", - "description": "[Output Only] The status of the operation, which can be one of the following: PENDING, RUNNING, or DONE.", - "enum": [ - "DONE", - "PENDING", - "RUNNING" - ], - "enumDescriptions": [ - "", - "", - "" - ] - }, - "statusMessage": { - "type": "string", - "description": "[Output Only] An optional textual description of the current status of the operation." - }, - "targetId": { - "type": "string", - "description": "[Output Only] The unique target ID, which identifies a specific incarnation of the target resource.", - "format": "uint64" - }, - "targetLink": { - "type": "string", - "description": "[Output Only] The URL of the resource that the operation modifies." - }, - "user": { - "type": "string", - "description": "[Output Only] User who requested the operation, for example: user@example.com." - }, - "warnings": { - "type": "array", - "description": "[Output Only] If warning messages are generated during processing of the operation, this field will be populated.", - "items": { - "type": "object", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "INJECTED_KERNELS_DEPRECATED", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_NOT_DELETED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - }, - "zone": { - "type": "string", - "description": "[Output Only] The URL of the zone where the operation resides. Only available when performing per-zone operations." } - } }, - "OperationList": { - "id": "OperationList", - "type": "object", - "description": "Contains a list of Operation resources.", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server." - }, - "items": { - "type": "array", - "description": "[Output Only] A list of Operation resources.", - "items": { - "$ref": "Operation" - } - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#operations for Operations resource.", - "default": "clouduseraccounts#operationList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - } - } + "basePath": "/clouduseraccounts/vm_alpha/projects/", + "baseUrl": "https://www.googleapis.com/clouduseraccounts/vm_alpha/projects/", + "batchPath": "batch/clouduseraccounts/vm_alpha", + "canonicalName": "Cloud User Accounts", + "description": "Creates and manages users and groups for accessing Google Compute Engine virtual machines.", + "discoveryVersion": "v1", + "documentationLink": "https://cloud.google.com/compute/docs/access/user-accounts/api/latest/", + "etag": "\"-iA1DTNe4s-I6JZXPt1t1Ypy8IU/DmNFUFGhSh7oLg7RNX5k36KX4oA\"", + "icons": { + "x16": "https://www.google.com/images/icons/product/compute_engine-16.png", + "x32": "https://www.google.com/images/icons/product/compute_engine-32.png" }, - "Policy": { - "id": "Policy", - "type": "object", - "description": "Defines an Identity and Access Management (IAM) policy. It is used to specify access control policies for Cloud Platform resources.\n\n\n\nA `Policy` consists of a list of `bindings`. A `Binding` binds a list of `members` to a `role`, where the members can be user accounts, Google groups, Google domains, and service accounts. A `role` is a named list of permissions defined by IAM.\n\n**Example**\n\n{ \"bindings\": [ { \"role\": \"roles/owner\", \"members\": [ \"user:mike@example.com\", \"group:admins@example.com\", \"domain:google.com\", \"serviceAccount:my-other-app@appspot.gserviceaccount.com\", ] }, { \"role\": \"roles/viewer\", \"members\": [\"user:sean@example.com\"] } ] }\n\nFor a description of IAM and its features, see the [IAM developer's guide](https://cloud.google.com/iam).", - "properties": { - "auditConfigs": { - "type": "array", - "description": "Specifies audit logging configs for \"data access\". \"data access\": generally refers to data reads/writes and admin reads. \"admin activity\": generally refers to admin writes.\n\nNote: `AuditConfig` doesn't apply to \"admin activity\", which always enables audit logging.", - "items": { - "$ref": "AuditConfig" - } + "id": "clouduseraccounts:vm_alpha", + "kind": "discovery#restDescription", + "name": "clouduseraccounts", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "alt": { + "default": "json", + "description": "Data format for the response.", + "enum": [ + "json" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json" + ], + "location": "query", + "type": "string" }, - "bindings": { - "type": "array", - "description": "Associates a list of `members` to a `role`. Multiple `bindings` must not be specified for the same `role`. `bindings` with no members will result in an error.", - "items": { - "$ref": "Binding" - } - }, - "etag": { - "type": "string", - "description": "`etag` is used for optimistic concurrency control as a way to help prevent simultaneous updates of a policy from overwriting each other. It is strongly suggested that systems make use of the `etag` in the read-modify-write cycle to perform policy updates in order to avoid race conditions: An `etag` is returned in the response to `getIamPolicy`, and systems are expected to put that etag in the request to `setIamPolicy` to ensure that their change will be applied to the same version of the policy.\n\nIf no `etag` is provided in the call to `setIamPolicy`, then the existing policy is overwritten blindly.", - "format": "byte" - }, - "iamOwned": { - "type": "boolean", - "description": "" - }, - "rules": { - "type": "array", - "description": "If more than one rule is specified, the rules are applied in the following manner: - All matching LOG rules are always applied. - If any DENY/DENY_WITH_LOG rule matches, permission is denied. Logging will be applied if one or more matching rule requires logging. - Otherwise, if any ALLOW/ALLOW_WITH_LOG rule matches, permission is granted. Logging will be applied if one or more matching rule requires logging. - Otherwise, if no rule applies, permission is denied.", - "items": { - "$ref": "Rule" - } - }, - "version": { - "type": "integer", - "description": "Version of the `Policy`. The default version is 0.", - "format": "int32" - } - } - }, - "PublicKey": { - "id": "PublicKey", - "type": "object", - "description": "A public key for authenticating to guests.", - "properties": { - "creationTimestamp": { - "type": "string", - "description": "[Output Only] Creation timestamp in RFC3339 text format." - }, - "description": { - "type": "string", - "description": "An optional textual description of the resource; provided by the client when the resource is created." - }, - "expirationTimestamp": { - "type": "string", - "description": "Optional expiration timestamp. If provided, the timestamp must be in RFC3339 text format. If not provided, the public key never expires." - }, - "fingerprint": { - "type": "string", - "description": "[Output Only] The fingerprint of the key is defined by RFC4716 to be the MD5 digest of the public key." + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "location": "query", + "type": "string" }, "key": { - "type": "string", - "description": "Public key text in SSH format, defined by RFC4253 section 6.6." + "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" + }, + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", + "location": "query", + "type": "string" + }, + "userIp": { + "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", + "location": "query", + "type": "string" } - } }, - "Rule": { - "id": "Rule", - "type": "object", - "description": "A rule to be applied in a Policy.", - "properties": { - "action": { - "type": "string", - "description": "Required", - "enum": [ - "ALLOW", - "ALLOW_WITH_LOG", - "DENY", - "DENY_WITH_LOG", - "LOG", - "NO_ACTION" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "" - ] - }, - "conditions": { - "type": "array", - "description": "Additional restrictions that must be met", - "items": { - "$ref": "Condition" - } - }, - "description": { - "type": "string", - "description": "Human-readable description of the rule." - }, - "ins": { - "type": "array", - "description": "The rule matches if the PRINCIPAL/AUTHORITY_SELECTOR is in this set of entries.", - "items": { - "type": "string" - } - }, - "logConfigs": { - "type": "array", - "description": "The config returned to callers of tech.iam.IAM.CheckPolicy for any entries that match the LOG action.", - "items": { - "$ref": "LogConfig" - } - }, - "notIns": { - "type": "array", - "description": "The rule matches if the PRINCIPAL/AUTHORITY_SELECTOR is not in this set of entries.", - "items": { - "type": "string" - } - }, - "permissions": { - "type": "array", - "description": "A permission is a string of form '..' (e.g., 'storage.buckets.list'). A value of '*' matches all permissions, and a verb part of '*' (e.g., 'storage.buckets.*') matches all verbs.", - "items": { - "type": "string" - } - } - } - }, - "TestPermissionsRequest": { - "id": "TestPermissionsRequest", - "type": "object", - "properties": { - "permissions": { - "type": "array", - "description": "The set of permissions to check for the 'resource'. Permissions with wildcards (such as '*' or 'storage.*') are not allowed.", - "items": { - "type": "string" - } - } - } - }, - "TestPermissionsResponse": { - "id": "TestPermissionsResponse", - "type": "object", - "properties": { - "permissions": { - "type": "array", - "description": "A subset of `TestPermissionsRequest.permissions` that the caller is allowed.", - "items": { - "type": "string" - } - } - } - }, - "User": { - "id": "User", - "type": "object", - "description": "A User resource.", - "properties": { - "creationTimestamp": { - "type": "string", - "description": "[Output Only] Creation timestamp in RFC3339 text format." - }, - "description": { - "type": "string", - "description": "An optional textual description of the resource; provided by the client when the resource is created." + "protocol": "rest", + "resources": { + "globalAccountsOperations": { + "methods": { + "delete": { + "description": "Deletes the specified operation resource.", + "httpMethod": "DELETE", + "id": "clouduseraccounts.globalAccountsOperations.delete", + "parameterOrder": [ + "project", + "operation" + ], + "parameters": { + "operation": { + "description": "Name of the Operations resource to delete.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/operations/{operation}", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud.useraccounts" + ] + }, + "get": { + "description": "Retrieves the specified operation resource.", + "httpMethod": "GET", + "id": "clouduseraccounts.globalAccountsOperations.get", + "parameterOrder": [ + "project", + "operation" + ], + "parameters": { + "operation": { + "description": "Name of the Operations resource to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/operations/{operation}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/cloud.useraccounts", + "https://www.googleapis.com/auth/cloud.useraccounts.readonly" + ] + }, + "list": { + "description": "Retrieves the list of operation resources contained within the specified project.", + "httpMethod": "GET", + "id": "clouduseraccounts.globalAccountsOperations.list", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nCompute Engine Beta API Only: If you use filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. In particular, use filtering on nested fields to take advantage of instance labels to organize and filter results based on label values.\n\nThe Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests.", + "format": "uint32", + "location": "query", + "maximum": "500", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/operations", + "response": { + "$ref": "OperationList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/cloud.useraccounts", + "https://www.googleapis.com/auth/cloud.useraccounts.readonly" + ] + } + } }, "groups": { - "type": "array", - "description": "[Output Only] A list of URLs to Group resources who contain the user. Users are only members of groups in the same project.", - "items": { - "type": "string" - } + "methods": { + "addMember": { + "description": "Adds users to the specified group.", + "httpMethod": "POST", + "id": "clouduseraccounts.groups.addMember", + "parameterOrder": [ + "project", + "groupName" + ], + "parameters": { + "groupName": { + "description": "Name of the group for this request.", + "location": "path", + "pattern": "[a-z][-a-z0-9_]{0,31}", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/groups/{groupName}/addMember", + "request": { + "$ref": "GroupsAddMemberRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud.useraccounts" + ] + }, + "delete": { + "description": "Deletes the specified Group resource.", + "httpMethod": "DELETE", + "id": "clouduseraccounts.groups.delete", + "parameterOrder": [ + "project", + "groupName" + ], + "parameters": { + "groupName": { + "description": "Name of the Group resource to delete.", + "location": "path", + "pattern": "[a-z][-a-z0-9_]{0,31}", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/groups/{groupName}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud.useraccounts" + ] + }, + "get": { + "description": "Returns the specified Group resource.", + "httpMethod": "GET", + "id": "clouduseraccounts.groups.get", + "parameterOrder": [ + "project", + "groupName" + ], + "parameters": { + "groupName": { + "description": "Name of the Group resource to return.", + "location": "path", + "pattern": "[a-z][-a-z0-9_]{0,31}", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/groups/{groupName}", + "response": { + "$ref": "Group" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/cloud.useraccounts", + "https://www.googleapis.com/auth/cloud.useraccounts.readonly" + ] + }, + "getIamPolicy": { + "description": "Gets the access control policy for a resource. May be empty if no such policy or resource exists.", + "httpMethod": "GET", + "id": "clouduseraccounts.groups.getIamPolicy", + "parameterOrder": [ + "project", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/groups/{resource}/getIamPolicy", + "response": { + "$ref": "Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/cloud.useraccounts", + "https://www.googleapis.com/auth/cloud.useraccounts.readonly" + ] + }, + "insert": { + "description": "Creates a Group resource in the specified project using the data included in the request.", + "httpMethod": "POST", + "id": "clouduseraccounts.groups.insert", + "parameterOrder": [ + "project" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/groups", + "request": { + "$ref": "Group" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud.useraccounts" + ] + }, + "list": { + "description": "Retrieves the list of groups contained within the specified project.", + "httpMethod": "GET", + "id": "clouduseraccounts.groups.list", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nCompute Engine Beta API Only: If you use filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. In particular, use filtering on nested fields to take advantage of instance labels to organize and filter results based on label values.\n\nThe Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests.", + "format": "uint32", + "location": "query", + "maximum": "500", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/groups", + "response": { + "$ref": "GroupList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/cloud.useraccounts", + "https://www.googleapis.com/auth/cloud.useraccounts.readonly" + ] + }, + "removeMember": { + "description": "Removes users from the specified group.", + "httpMethod": "POST", + "id": "clouduseraccounts.groups.removeMember", + "parameterOrder": [ + "project", + "groupName" + ], + "parameters": { + "groupName": { + "description": "Name of the group for this request.", + "location": "path", + "pattern": "[a-z][-a-z0-9_]{0,31}", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/groups/{groupName}/removeMember", + "request": { + "$ref": "GroupsRemoveMemberRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud.useraccounts" + ] + }, + "setIamPolicy": { + "description": "Sets the access control policy on the specified resource. Replaces any existing policy.", + "httpMethod": "POST", + "id": "clouduseraccounts.groups.setIamPolicy", + "parameterOrder": [ + "project", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/groups/{resource}/setIamPolicy", + "request": { + "$ref": "Policy" + }, + "response": { + "$ref": "Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/cloud.useraccounts", + "https://www.googleapis.com/auth/cloud.useraccounts.readonly" + ] + }, + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource.", + "httpMethod": "POST", + "id": "clouduseraccounts.groups.testIamPermissions", + "parameterOrder": [ + "project", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/groups/{resource}/testIamPermissions", + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/cloud.useraccounts", + "https://www.googleapis.com/auth/cloud.useraccounts.readonly" + ] + } + } }, - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server.", - "format": "uint64" + "linux": { + "methods": { + "getAuthorizedKeysView": { + "description": "Returns a list of authorized public keys for a specific user account.", + "httpMethod": "POST", + "id": "clouduseraccounts.linux.getAuthorizedKeysView", + "parameterOrder": [ + "project", + "zone", + "user", + "instance" + ], + "parameters": { + "instance": { + "description": "The fully-qualified URL of the virtual machine requesting the view.", + "location": "query", + "required": true, + "type": "string" + }, + "login": { + "description": "Whether the view was requested as part of a user-initiated login.", + "location": "query", + "type": "boolean" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "user": { + "description": "The user account for which you want to get a list of authorized public keys.", + "location": "path", + "pattern": "[a-z][-a-z0-9_]{0,31}", + "required": true, + "type": "string" + }, + "zone": { + "description": "Name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/authorizedKeysView/{user}", + "response": { + "$ref": "LinuxGetAuthorizedKeysViewResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/cloud.useraccounts", + "https://www.googleapis.com/auth/cloud.useraccounts.readonly" + ] + }, + "getLinuxAccountViews": { + "description": "Retrieves a list of user accounts for an instance within a specific project.", + "httpMethod": "POST", + "id": "clouduseraccounts.linux.getLinuxAccountViews", + "parameterOrder": [ + "project", + "zone", + "instance" + ], + "parameters": { + "filter": { + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nCompute Engine Beta API Only: If you use filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. In particular, use filtering on nested fields to take advantage of instance labels to organize and filter results based on label values.\n\nThe Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "location": "query", + "type": "string" + }, + "instance": { + "description": "The fully-qualified URL of the virtual machine requesting the views.", + "location": "query", + "required": true, + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests.", + "format": "uint32", + "location": "query", + "maximum": "500", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "zone": { + "description": "Name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/linuxAccountViews", + "response": { + "$ref": "LinuxGetLinuxAccountViewsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/cloud.useraccounts", + "https://www.googleapis.com/auth/cloud.useraccounts.readonly" + ] + } + } }, - "kind": { - "type": "string", - "description": "[Output Only] Type of the resource. Always clouduseraccounts#user for users.", - "default": "clouduseraccounts#user" - }, - "name": { - "type": "string", - "description": "Name of the resource; provided by the client when the resource is created.", - "pattern": "[a-z][-a-z0-9_]{0,31}", - "annotations": { - "required": [ - "clouduseraccounts.users.insert" - ] - } - }, - "owner": { - "type": "string", - "description": "Email address of account's owner. This account will be validated to make sure it exists. The email can belong to any domain, but it must be tied to a Google account.", - "annotations": { - "required": [ - "clouduseraccounts.users.insert" - ] - } - }, - "publicKeys": { - "type": "array", - "description": "[Output Only] Public keys that this user may use to login.", - "items": { - "$ref": "PublicKey" - } - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server defined URL for the resource." + "users": { + "methods": { + "addPublicKey": { + "description": "Adds a public key to the specified User resource with the data included in the request.", + "httpMethod": "POST", + "id": "clouduseraccounts.users.addPublicKey", + "parameterOrder": [ + "project", + "user" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "user": { + "description": "Name of the user for this request.", + "location": "path", + "pattern": "[a-z][-a-z0-9_]{0,31}", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/users/{user}/addPublicKey", + "request": { + "$ref": "PublicKey" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud.useraccounts" + ] + }, + "delete": { + "description": "Deletes the specified User resource.", + "httpMethod": "DELETE", + "id": "clouduseraccounts.users.delete", + "parameterOrder": [ + "project", + "user" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "user": { + "description": "Name of the user resource to delete.", + "location": "path", + "pattern": "[a-z][-a-z0-9_]{0,31}", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/users/{user}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud.useraccounts" + ] + }, + "get": { + "description": "Returns the specified User resource.", + "httpMethod": "GET", + "id": "clouduseraccounts.users.get", + "parameterOrder": [ + "project", + "user" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "user": { + "description": "Name of the user resource to return.", + "location": "path", + "pattern": "[a-z][-a-z0-9_]{0,31}", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/users/{user}", + "response": { + "$ref": "User" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/cloud.useraccounts", + "https://www.googleapis.com/auth/cloud.useraccounts.readonly" + ] + }, + "getIamPolicy": { + "description": "Gets the access control policy for a resource. May be empty if no such policy or resource exists.", + "httpMethod": "GET", + "id": "clouduseraccounts.users.getIamPolicy", + "parameterOrder": [ + "project", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/users/{resource}/getIamPolicy", + "response": { + "$ref": "Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/cloud.useraccounts", + "https://www.googleapis.com/auth/cloud.useraccounts.readonly" + ] + }, + "insert": { + "description": "Creates a User resource in the specified project using the data included in the request.", + "httpMethod": "POST", + "id": "clouduseraccounts.users.insert", + "parameterOrder": [ + "project" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/users", + "request": { + "$ref": "User" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud.useraccounts" + ] + }, + "list": { + "description": "Retrieves a list of users contained within the specified project.", + "httpMethod": "GET", + "id": "clouduseraccounts.users.list", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nCompute Engine Beta API Only: If you use filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. In particular, use filtering on nested fields to take advantage of instance labels to organize and filter results based on label values.\n\nThe Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests.", + "format": "uint32", + "location": "query", + "maximum": "500", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/users", + "response": { + "$ref": "UserList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/cloud.useraccounts", + "https://www.googleapis.com/auth/cloud.useraccounts.readonly" + ] + }, + "removePublicKey": { + "description": "Removes the specified public key from the user.", + "httpMethod": "POST", + "id": "clouduseraccounts.users.removePublicKey", + "parameterOrder": [ + "project", + "user", + "fingerprint" + ], + "parameters": { + "fingerprint": { + "description": "The fingerprint of the public key to delete. Public keys are identified by their fingerprint, which is defined by RFC4716 to be the MD5 digest of the public key.", + "location": "query", + "pattern": "[a-f0-9]{32}", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "user": { + "description": "Name of the user for this request.", + "location": "path", + "pattern": "[a-z][-a-z0-9_]{0,31}", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/users/{user}/removePublicKey", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud.useraccounts" + ] + }, + "setIamPolicy": { + "description": "Sets the access control policy on the specified resource. Replaces any existing policy.", + "httpMethod": "POST", + "id": "clouduseraccounts.users.setIamPolicy", + "parameterOrder": [ + "project", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/users/{resource}/setIamPolicy", + "request": { + "$ref": "Policy" + }, + "response": { + "$ref": "Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/cloud.useraccounts", + "https://www.googleapis.com/auth/cloud.useraccounts.readonly" + ] + }, + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource.", + "httpMethod": "POST", + "id": "clouduseraccounts.users.testIamPermissions", + "parameterOrder": [ + "project", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/users/{resource}/testIamPermissions", + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/cloud.useraccounts", + "https://www.googleapis.com/auth/cloud.useraccounts.readonly" + ] + } + } } - } }, - "UserList": { - "id": "UserList", - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." + "revision": "20160316", + "rootUrl": "https://www.googleapis.com/", + "schemas": { + "AuditConfig": { + "description": "Enables \"data access\" audit logging for a service and specifies a list of members that are log-exempted.", + "id": "AuditConfig", + "properties": { + "exemptedMembers": { + "description": "Specifies the identities that are exempted from \"data access\" audit logging for the `service` specified above. Follows the same format of Binding.members.", + "items": { + "type": "string" + }, + "type": "array" + }, + "service": { + "description": "Specifies a service that will be enabled for \"data access\" audit logging. For example, `resourcemanager`, `storage`, `compute`. `allServices` is a special value that covers all services.", + "type": "string" + } + }, + "type": "object" }, - "items": { - "type": "array", - "description": "[Output Only] A list of User resources.", - "items": { - "$ref": "User" - } + "AuthorizedKeysView": { + "description": "A list of authorized public keys for a user account.", + "id": "AuthorizedKeysView", + "properties": { + "keys": { + "description": "[Output Only] The list of authorized public keys in SSH format.", + "items": { + "type": "string" + }, + "type": "array" + }, + "sudoer": { + "description": "[Output Only] Whether the user has the ability to elevate on the instance that requested the authorized keys.", + "type": "boolean" + } + }, + "type": "object" }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always clouduseraccounts#userList for lists of users.", - "default": "clouduseraccounts#userList" + "Binding": { + "description": "Associates `members` with a `role`.", + "id": "Binding", + "properties": { + "members": { + "description": "Specifies the identities requesting access for a Cloud Platform resource. `members` can have the following values:\n\n* `allUsers`: A special identifier that represents anyone who is on the internet; with or without a Google account.\n\n* `allAuthenticatedUsers`: A special identifier that represents anyone who is authenticated with a Google account or a service account.\n\n* `user:{emailid}`: An email address that represents a specific Google account. For example, `alice@gmail.com` or `joe@example.com`.\n\n* `serviceAccount:{emailid}`: An email address that represents a service account. For example, `my-other-app@appspot.gserviceaccount.com`.\n\n* `group:{emailid}`: An email address that represents a Google group. For example, `admins@example.com`.\n\n* `domain:{domain}`: A Google Apps domain name that represents all the users of that domain. For example, `google.com` or `example.com`.", + "items": { + "type": "string" + }, + "type": "array" + }, + "role": { + "description": "Role that is assigned to `members`. For example, `roles/viewer`, `roles/editor`, or `roles/owner`.", + "type": "string" + } + }, + "type": "object" }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] A token used to continue a truncated list request." + "Condition": { + "description": "A condition to be met.", + "id": "Condition", + "properties": { + "iam": { + "description": "Trusted attributes supplied by the IAM system.", + "enum": [ + "ATTRIBUTION", + "AUTHORITY", + "NO_ATTR" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, + "op": { + "description": "An operator to apply the subject with.", + "enum": [ + "DISCHARGED", + "EQUALS", + "IN", + "NOT_EQUALS", + "NOT_IN", + "NO_OP" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "svc": { + "description": "Trusted attributes discharged by the service.", + "type": "string" + }, + "sys": { + "description": "Trusted attributes supplied by any service that owns resources and uses the IAM system for access control.", + "enum": [ + "IP", + "NAME", + "NO_ATTR", + "REGION", + "SERVICE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "value": { + "description": "The object of the condition. Exactly one of these must be set.", + "type": "string" + }, + "values": { + "description": "The objects of the condition. This is mutually exclusive with 'value'.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server defined URL for this resource." + "Group": { + "description": "A Group resource.", + "id": "Group", + "properties": { + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "description": { + "description": "An optional textual description of the resource; provided by the client when the resource is created.", + "type": "string" + }, + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "format": "uint64", + "type": "string" + }, + "kind": { + "default": "clouduseraccounts#group", + "description": "[Output Only] Type of the resource. Always clouduseraccounts#group for groups.", + "type": "string" + }, + "members": { + "description": "[Output Only] A list of URLs to User resources who belong to the group. Users may only be members of groups in the same project.", + "items": { + "type": "string" + }, + "type": "array" + }, + "name": { + "annotations": { + "required": [ + "clouduseraccounts.groups.insert" + ] + }, + "description": "Name of the resource; provided by the client when the resource is created.", + "pattern": "[a-z][-a-z0-9_]{0,31}", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server defined URL for the resource.", + "type": "string" + } + }, + "type": "object" + }, + "GroupList": { + "id": "GroupList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "[Output Only] A list of Group resources.", + "items": { + "$ref": "Group" + }, + "type": "array" + }, + "kind": { + "default": "clouduseraccounts#groupList", + "description": "[Output Only] Type of resource. Always clouduseraccounts#groupList for lists of groups.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] A token used to continue a truncated list request.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server defined URL for this resource.", + "type": "string" + } + }, + "type": "object" + }, + "GroupsAddMemberRequest": { + "id": "GroupsAddMemberRequest", + "properties": { + "users": { + "description": "Fully-qualified URLs of the User resources to add.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "GroupsRemoveMemberRequest": { + "id": "GroupsRemoveMemberRequest", + "properties": { + "users": { + "description": "Fully-qualified URLs of the User resources to remove.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "LinuxAccountViews": { + "description": "A list of all Linux accounts for this project. This API is only used by Compute Engine virtual machines to get information about user accounts for a project or instance. Linux resources are read-only views into users and groups managed by the Compute Engine Accounts API.", + "id": "LinuxAccountViews", + "properties": { + "groupViews": { + "description": "[Output Only] A list of all groups within a project.", + "items": { + "$ref": "LinuxGroupView" + }, + "type": "array" + }, + "kind": { + "default": "clouduseraccounts#linuxAccountViews", + "description": "[Output Only] Type of the resource. Always clouduseraccounts#linuxAccountViews for Linux resources.", + "type": "string" + }, + "userViews": { + "description": "[Output Only] A list of all users within a project.", + "items": { + "$ref": "LinuxUserView" + }, + "type": "array" + } + }, + "type": "object" + }, + "LinuxGetAuthorizedKeysViewResponse": { + "id": "LinuxGetAuthorizedKeysViewResponse", + "properties": { + "resource": { + "$ref": "AuthorizedKeysView", + "description": "[Output Only] A list of authorized public keys for a user." + } + }, + "type": "object" + }, + "LinuxGetLinuxAccountViewsResponse": { + "id": "LinuxGetLinuxAccountViewsResponse", + "properties": { + "resource": { + "$ref": "LinuxAccountViews", + "description": "[Output Only] A list of authorized user accounts and groups." + } + }, + "type": "object" + }, + "LinuxGroupView": { + "description": "A detailed view of a Linux group.", + "id": "LinuxGroupView", + "properties": { + "gid": { + "description": "[Output Only] The Group ID.", + "format": "uint32", + "type": "integer" + }, + "groupName": { + "description": "[Output Only] Group name.", + "type": "string" + }, + "members": { + "description": "[Output Only] List of user accounts that belong to the group.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "LinuxUserView": { + "description": "A detailed view of a Linux user account.", + "id": "LinuxUserView", + "properties": { + "gecos": { + "description": "[Output Only] The GECOS (user information) entry for this account.", + "type": "string" + }, + "gid": { + "description": "[Output Only] User's default group ID.", + "format": "uint32", + "type": "integer" + }, + "homeDirectory": { + "description": "[Output Only] The path to the home directory for this account.", + "type": "string" + }, + "shell": { + "description": "[Output Only] The path to the login shell for this account.", + "type": "string" + }, + "uid": { + "description": "[Output Only] User ID.", + "format": "uint32", + "type": "integer" + }, + "username": { + "description": "[Output Only] The username of the account.", + "type": "string" + } + }, + "type": "object" + }, + "LogConfig": { + "description": "Specifies what kind of log the caller must write", + "id": "LogConfig", + "properties": { + "counter": { + "$ref": "LogConfigCounterOptions", + "description": "Counter options." + } + }, + "type": "object" + }, + "LogConfigCounterOptions": { + "description": "Options for counters", + "id": "LogConfigCounterOptions", + "properties": { + "field": { + "description": "The field value to attribute.", + "type": "string" + }, + "metric": { + "description": "The metric to update.", + "type": "string" + } + }, + "type": "object" + }, + "Operation": { + "description": "An Operation resource, used to manage asynchronous API requests.", + "id": "Operation", + "properties": { + "clientOperationId": { + "description": "[Output Only] Reserved for future use.", + "type": "string" + }, + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "description": { + "description": "[Output Only] A textual description of the operation, which is set when the operation is created.", + "type": "string" + }, + "endTime": { + "description": "[Output Only] The time that this operation was completed. This value is in RFC3339 text format.", + "type": "string" + }, + "error": { + "description": "[Output Only] If errors are generated during processing of the operation, this field will be populated.", + "properties": { + "errors": { + "description": "[Output Only] The array of errors encountered while processing this operation.", + "items": { + "properties": { + "code": { + "description": "[Output Only] The error type identifier for this error.", + "type": "string" + }, + "location": { + "description": "[Output Only] Indicates the field in the request that caused the error. This property is optional.", + "type": "string" + }, + "message": { + "description": "[Output Only] An optional, human-readable error message.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + } + }, + "type": "object" + }, + "httpErrorMessage": { + "description": "[Output Only] If the operation fails, this field contains the HTTP error message that was returned, such as NOT FOUND.", + "type": "string" + }, + "httpErrorStatusCode": { + "description": "[Output Only] If the operation fails, this field contains the HTTP error status code that was returned. For example, a 404 means the resource was not found.", + "format": "int32", + "type": "integer" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64", + "type": "string" + }, + "insertTime": { + "description": "[Output Only] The time that this operation was requested. This value is in RFC3339 text format.", + "type": "string" + }, + "kind": { + "default": "clouduseraccounts#operation", + "description": "[Output Only] Type of the resource. Always compute#operation for Operation resources.", + "type": "string" + }, + "name": { + "description": "[Output Only] Name of the resource.", + "type": "string" + }, + "operationType": { + "description": "[Output Only] The type of operation, such as insert, update, or delete, and so on.", + "type": "string" + }, + "progress": { + "description": "[Output Only] An optional progress indicator that ranges from 0 to 100. There is no requirement that this be linear or support any granularity of operations. This should not be used to guess when the operation will be complete. This number should monotonically increase as the operation progresses.", + "format": "int32", + "type": "integer" + }, + "region": { + "description": "[Output Only] The URL of the region where the operation resides. Only available when performing regional operations.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + }, + "startTime": { + "description": "[Output Only] The time that this operation was started by the server. This value is in RFC3339 text format.", + "type": "string" + }, + "status": { + "description": "[Output Only] The status of the operation, which can be one of the following: PENDING, RUNNING, or DONE.", + "enum": [ + "DONE", + "PENDING", + "RUNNING" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, + "statusMessage": { + "description": "[Output Only] An optional textual description of the current status of the operation.", + "type": "string" + }, + "targetId": { + "description": "[Output Only] The unique target ID, which identifies a specific incarnation of the target resource.", + "format": "uint64", + "type": "string" + }, + "targetLink": { + "description": "[Output Only] The URL of the resource that the operation modifies.", + "type": "string" + }, + "user": { + "description": "[Output Only] User who requested the operation, for example: user@example.com.", + "type": "string" + }, + "warnings": { + "description": "[Output Only] If warning messages are generated during processing of the operation, this field will be populated.", + "items": { + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "INJECTED_KERNELS_DEPRECATED", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_NOT_DELETED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "zone": { + "description": "[Output Only] The URL of the zone where the operation resides. Only available when performing per-zone operations.", + "type": "string" + } + }, + "type": "object" + }, + "OperationList": { + "description": "Contains a list of Operation resources.", + "id": "OperationList", + "properties": { + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "type": "string" + }, + "items": { + "description": "[Output Only] A list of Operation resources.", + "items": { + "$ref": "Operation" + }, + "type": "array" + }, + "kind": { + "default": "clouduseraccounts#operationList", + "description": "[Output Only] Type of resource. Always compute#operations for Operations resource.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + } + }, + "type": "object" + }, + "Policy": { + "description": "Defines an Identity and Access Management (IAM) policy. It is used to specify access control policies for Cloud Platform resources.\n\n\n\nA `Policy` consists of a list of `bindings`. A `Binding` binds a list of `members` to a `role`, where the members can be user accounts, Google groups, Google domains, and service accounts. A `role` is a named list of permissions defined by IAM.\n\n**Example**\n\n{ \"bindings\": [ { \"role\": \"roles/owner\", \"members\": [ \"user:mike@example.com\", \"group:admins@example.com\", \"domain:google.com\", \"serviceAccount:my-other-app@appspot.gserviceaccount.com\", ] }, { \"role\": \"roles/viewer\", \"members\": [\"user:sean@example.com\"] } ] }\n\nFor a description of IAM and its features, see the [IAM developer's guide](https://cloud.google.com/iam).", + "id": "Policy", + "properties": { + "auditConfigs": { + "description": "Specifies audit logging configs for \"data access\". \"data access\": generally refers to data reads/writes and admin reads. \"admin activity\": generally refers to admin writes.\n\nNote: `AuditConfig` doesn't apply to \"admin activity\", which always enables audit logging.", + "items": { + "$ref": "AuditConfig" + }, + "type": "array" + }, + "bindings": { + "description": "Associates a list of `members` to a `role`. Multiple `bindings` must not be specified for the same `role`. `bindings` with no members will result in an error.", + "items": { + "$ref": "Binding" + }, + "type": "array" + }, + "etag": { + "description": "`etag` is used for optimistic concurrency control as a way to help prevent simultaneous updates of a policy from overwriting each other. It is strongly suggested that systems make use of the `etag` in the read-modify-write cycle to perform policy updates in order to avoid race conditions: An `etag` is returned in the response to `getIamPolicy`, and systems are expected to put that etag in the request to `setIamPolicy` to ensure that their change will be applied to the same version of the policy.\n\nIf no `etag` is provided in the call to `setIamPolicy`, then the existing policy is overwritten blindly.", + "format": "byte", + "type": "string" + }, + "iamOwned": { + "description": "", + "type": "boolean" + }, + "rules": { + "description": "If more than one rule is specified, the rules are applied in the following manner: - All matching LOG rules are always applied. - If any DENY/DENY_WITH_LOG rule matches, permission is denied. Logging will be applied if one or more matching rule requires logging. - Otherwise, if any ALLOW/ALLOW_WITH_LOG rule matches, permission is granted. Logging will be applied if one or more matching rule requires logging. - Otherwise, if no rule applies, permission is denied.", + "items": { + "$ref": "Rule" + }, + "type": "array" + }, + "version": { + "description": "Version of the `Policy`. The default version is 0.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "PublicKey": { + "description": "A public key for authenticating to guests.", + "id": "PublicKey", + "properties": { + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "description": { + "description": "An optional textual description of the resource; provided by the client when the resource is created.", + "type": "string" + }, + "expirationTimestamp": { + "description": "Optional expiration timestamp. If provided, the timestamp must be in RFC3339 text format. If not provided, the public key never expires.", + "type": "string" + }, + "fingerprint": { + "description": "[Output Only] The fingerprint of the key is defined by RFC4716 to be the MD5 digest of the public key.", + "type": "string" + }, + "key": { + "description": "Public key text in SSH format, defined by RFC4253 section 6.6.", + "type": "string" + } + }, + "type": "object" + }, + "Rule": { + "description": "A rule to be applied in a Policy.", + "id": "Rule", + "properties": { + "action": { + "description": "Required", + "enum": [ + "ALLOW", + "ALLOW_WITH_LOG", + "DENY", + "DENY_WITH_LOG", + "LOG", + "NO_ACTION" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "conditions": { + "description": "Additional restrictions that must be met", + "items": { + "$ref": "Condition" + }, + "type": "array" + }, + "description": { + "description": "Human-readable description of the rule.", + "type": "string" + }, + "ins": { + "description": "The rule matches if the PRINCIPAL/AUTHORITY_SELECTOR is in this set of entries.", + "items": { + "type": "string" + }, + "type": "array" + }, + "logConfigs": { + "description": "The config returned to callers of tech.iam.IAM.CheckPolicy for any entries that match the LOG action.", + "items": { + "$ref": "LogConfig" + }, + "type": "array" + }, + "notIns": { + "description": "The rule matches if the PRINCIPAL/AUTHORITY_SELECTOR is not in this set of entries.", + "items": { + "type": "string" + }, + "type": "array" + }, + "permissions": { + "description": "A permission is a string of form '..' (e.g., 'storage.buckets.list'). A value of '*' matches all permissions, and a verb part of '*' (e.g., 'storage.buckets.*') matches all verbs.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "TestPermissionsRequest": { + "id": "TestPermissionsRequest", + "properties": { + "permissions": { + "description": "The set of permissions to check for the 'resource'. Permissions with wildcards (such as '*' or 'storage.*') are not allowed.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "TestPermissionsResponse": { + "id": "TestPermissionsResponse", + "properties": { + "permissions": { + "description": "A subset of `TestPermissionsRequest.permissions` that the caller is allowed.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "User": { + "description": "A User resource.", + "id": "User", + "properties": { + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "description": { + "description": "An optional textual description of the resource; provided by the client when the resource is created.", + "type": "string" + }, + "groups": { + "description": "[Output Only] A list of URLs to Group resources who contain the user. Users are only members of groups in the same project.", + "items": { + "type": "string" + }, + "type": "array" + }, + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "format": "uint64", + "type": "string" + }, + "kind": { + "default": "clouduseraccounts#user", + "description": "[Output Only] Type of the resource. Always clouduseraccounts#user for users.", + "type": "string" + }, + "name": { + "annotations": { + "required": [ + "clouduseraccounts.users.insert" + ] + }, + "description": "Name of the resource; provided by the client when the resource is created.", + "pattern": "[a-z][-a-z0-9_]{0,31}", + "type": "string" + }, + "owner": { + "annotations": { + "required": [ + "clouduseraccounts.users.insert" + ] + }, + "description": "Email address of account's owner. This account will be validated to make sure it exists. The email can belong to any domain, but it must be tied to a Google account.", + "type": "string" + }, + "publicKeys": { + "description": "[Output Only] Public keys that this user may use to login.", + "items": { + "$ref": "PublicKey" + }, + "type": "array" + }, + "selfLink": { + "description": "[Output Only] Server defined URL for the resource.", + "type": "string" + } + }, + "type": "object" + }, + "UserList": { + "id": "UserList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "[Output Only] A list of User resources.", + "items": { + "$ref": "User" + }, + "type": "array" + }, + "kind": { + "default": "clouduseraccounts#userList", + "description": "[Output Only] Type of resource. Always clouduseraccounts#userList for lists of users.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] A token used to continue a truncated list request.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server defined URL for this resource.", + "type": "string" + } + }, + "type": "object" } - } - } - }, - "resources": { - "globalAccountsOperations": { - "methods": { - "delete": { - "id": "clouduseraccounts.globalAccountsOperations.delete", - "path": "{project}/global/operations/{operation}", - "httpMethod": "DELETE", - "description": "Deletes the specified operation resource.", - "parameters": { - "operation": { - "type": "string", - "description": "Name of the Operations resource to delete.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "operation" - ], - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud.useraccounts" - ] - }, - "get": { - "id": "clouduseraccounts.globalAccountsOperations.get", - "path": "{project}/global/operations/{operation}", - "httpMethod": "GET", - "description": "Retrieves the specified operation resource.", - "parameters": { - "operation": { - "type": "string", - "description": "Name of the Operations resource to return.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "operation" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/cloud.useraccounts", - "https://www.googleapis.com/auth/cloud.useraccounts.readonly" - ] - }, - "list": { - "id": "clouduseraccounts.globalAccountsOperations.list", - "path": "{project}/global/operations", - "httpMethod": "GET", - "description": "Retrieves the list of operation resources contained within the specified project.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nCompute Engine Beta API Only: If you use filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. In particular, use filtering on nested fields to take advantage of instance labels to organize and filter results based on label values.\n\nThe Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests.", - "default": "500", - "format": "uint32", - "minimum": "0", - "maximum": "500", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "OperationList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/cloud.useraccounts", - "https://www.googleapis.com/auth/cloud.useraccounts.readonly" - ] - } - } }, - "groups": { - "methods": { - "addMember": { - "id": "clouduseraccounts.groups.addMember", - "path": "{project}/global/groups/{groupName}/addMember", - "httpMethod": "POST", - "description": "Adds users to the specified group.", - "parameters": { - "groupName": { - "type": "string", - "description": "Name of the group for this request.", - "required": true, - "pattern": "[a-z][-a-z0-9_]{0,31}", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "groupName" - ], - "request": { - "$ref": "GroupsAddMemberRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud.useraccounts" - ] - }, - "delete": { - "id": "clouduseraccounts.groups.delete", - "path": "{project}/global/groups/{groupName}", - "httpMethod": "DELETE", - "description": "Deletes the specified Group resource.", - "parameters": { - "groupName": { - "type": "string", - "description": "Name of the Group resource to delete.", - "required": true, - "pattern": "[a-z][-a-z0-9_]{0,31}", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "groupName" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud.useraccounts" - ] - }, - "get": { - "id": "clouduseraccounts.groups.get", - "path": "{project}/global/groups/{groupName}", - "httpMethod": "GET", - "description": "Returns the specified Group resource.", - "parameters": { - "groupName": { - "type": "string", - "description": "Name of the Group resource to return.", - "required": true, - "pattern": "[a-z][-a-z0-9_]{0,31}", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "groupName" - ], - "response": { - "$ref": "Group" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/cloud.useraccounts", - "https://www.googleapis.com/auth/cloud.useraccounts.readonly" - ] - }, - "getIamPolicy": { - "id": "clouduseraccounts.groups.getIamPolicy", - "path": "{project}/global/groups/{resource}/getIamPolicy", - "httpMethod": "GET", - "description": "Gets the access control policy for a resource. May be empty if no such policy or resource exists.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "resource" - ], - "response": { - "$ref": "Policy" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/cloud.useraccounts", - "https://www.googleapis.com/auth/cloud.useraccounts.readonly" - ] - }, - "insert": { - "id": "clouduseraccounts.groups.insert", - "path": "{project}/global/groups", - "httpMethod": "POST", - "description": "Creates a Group resource in the specified project using the data included in the request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "request": { - "$ref": "Group" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud.useraccounts" - ] - }, - "list": { - "id": "clouduseraccounts.groups.list", - "path": "{project}/global/groups", - "httpMethod": "GET", - "description": "Retrieves the list of groups contained within the specified project.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nCompute Engine Beta API Only: If you use filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. In particular, use filtering on nested fields to take advantage of instance labels to organize and filter results based on label values.\n\nThe Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests.", - "default": "500", - "format": "uint32", - "minimum": "0", - "maximum": "500", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "GroupList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/cloud.useraccounts", - "https://www.googleapis.com/auth/cloud.useraccounts.readonly" - ] - }, - "removeMember": { - "id": "clouduseraccounts.groups.removeMember", - "path": "{project}/global/groups/{groupName}/removeMember", - "httpMethod": "POST", - "description": "Removes users from the specified group.", - "parameters": { - "groupName": { - "type": "string", - "description": "Name of the group for this request.", - "required": true, - "pattern": "[a-z][-a-z0-9_]{0,31}", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "groupName" - ], - "request": { - "$ref": "GroupsRemoveMemberRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud.useraccounts" - ] - }, - "setIamPolicy": { - "id": "clouduseraccounts.groups.setIamPolicy", - "path": "{project}/global/groups/{resource}/setIamPolicy", - "httpMethod": "POST", - "description": "Sets the access control policy on the specified resource. Replaces any existing policy.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "resource" - ], - "request": { - "$ref": "Policy" - }, - "response": { - "$ref": "Policy" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/cloud.useraccounts", - "https://www.googleapis.com/auth/cloud.useraccounts.readonly" - ] - }, - "testIamPermissions": { - "id": "clouduseraccounts.groups.testIamPermissions", - "path": "{project}/global/groups/{resource}/testIamPermissions", - "httpMethod": "POST", - "description": "Returns permissions that a caller has on the specified resource.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "resource" - ], - "request": { - "$ref": "TestPermissionsRequest" - }, - "response": { - "$ref": "TestPermissionsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/cloud.useraccounts", - "https://www.googleapis.com/auth/cloud.useraccounts.readonly" - ] - } - } - }, - "linux": { - "methods": { - "getAuthorizedKeysView": { - "id": "clouduseraccounts.linux.getAuthorizedKeysView", - "path": "{project}/zones/{zone}/authorizedKeysView/{user}", - "httpMethod": "POST", - "description": "Returns a list of authorized public keys for a specific user account.", - "parameters": { - "instance": { - "type": "string", - "description": "The fully-qualified URL of the virtual machine requesting the view.", - "required": true, - "location": "query" - }, - "login": { - "type": "boolean", - "description": "Whether the view was requested as part of a user-initiated login.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "user": { - "type": "string", - "description": "The user account for which you want to get a list of authorized public keys.", - "required": true, - "pattern": "[a-z][-a-z0-9_]{0,31}", - "location": "path" - }, - "zone": { - "type": "string", - "description": "Name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "user", - "instance" - ], - "response": { - "$ref": "LinuxGetAuthorizedKeysViewResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/cloud.useraccounts", - "https://www.googleapis.com/auth/cloud.useraccounts.readonly" - ] - }, - "getLinuxAccountViews": { - "id": "clouduseraccounts.linux.getLinuxAccountViews", - "path": "{project}/zones/{zone}/linuxAccountViews", - "httpMethod": "POST", - "description": "Retrieves a list of user accounts for an instance within a specific project.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nCompute Engine Beta API Only: If you use filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. In particular, use filtering on nested fields to take advantage of instance labels to organize and filter results based on label values.\n\nThe Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "instance": { - "type": "string", - "description": "The fully-qualified URL of the virtual machine requesting the views.", - "required": true, - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests.", - "default": "500", - "format": "uint32", - "minimum": "0", - "maximum": "500", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "zone": { - "type": "string", - "description": "Name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "instance" - ], - "response": { - "$ref": "LinuxGetLinuxAccountViewsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/cloud.useraccounts", - "https://www.googleapis.com/auth/cloud.useraccounts.readonly" - ] - } - } - }, - "users": { - "methods": { - "addPublicKey": { - "id": "clouduseraccounts.users.addPublicKey", - "path": "{project}/global/users/{user}/addPublicKey", - "httpMethod": "POST", - "description": "Adds a public key to the specified User resource with the data included in the request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "user": { - "type": "string", - "description": "Name of the user for this request.", - "required": true, - "pattern": "[a-z][-a-z0-9_]{0,31}", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "user" - ], - "request": { - "$ref": "PublicKey" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud.useraccounts" - ] - }, - "delete": { - "id": "clouduseraccounts.users.delete", - "path": "{project}/global/users/{user}", - "httpMethod": "DELETE", - "description": "Deletes the specified User resource.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "user": { - "type": "string", - "description": "Name of the user resource to delete.", - "required": true, - "pattern": "[a-z][-a-z0-9_]{0,31}", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "user" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud.useraccounts" - ] - }, - "get": { - "id": "clouduseraccounts.users.get", - "path": "{project}/global/users/{user}", - "httpMethod": "GET", - "description": "Returns the specified User resource.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "user": { - "type": "string", - "description": "Name of the user resource to return.", - "required": true, - "pattern": "[a-z][-a-z0-9_]{0,31}", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "user" - ], - "response": { - "$ref": "User" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/cloud.useraccounts", - "https://www.googleapis.com/auth/cloud.useraccounts.readonly" - ] - }, - "getIamPolicy": { - "id": "clouduseraccounts.users.getIamPolicy", - "path": "{project}/global/users/{resource}/getIamPolicy", - "httpMethod": "GET", - "description": "Gets the access control policy for a resource. May be empty if no such policy or resource exists.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "resource" - ], - "response": { - "$ref": "Policy" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/cloud.useraccounts", - "https://www.googleapis.com/auth/cloud.useraccounts.readonly" - ] - }, - "insert": { - "id": "clouduseraccounts.users.insert", - "path": "{project}/global/users", - "httpMethod": "POST", - "description": "Creates a User resource in the specified project using the data included in the request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "request": { - "$ref": "User" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud.useraccounts" - ] - }, - "list": { - "id": "clouduseraccounts.users.list", - "path": "{project}/global/users", - "httpMethod": "GET", - "description": "Retrieves a list of users contained within the specified project.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nCompute Engine Beta API Only: If you use filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. In particular, use filtering on nested fields to take advantage of instance labels to organize and filter results based on label values.\n\nThe Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests.", - "default": "500", - "format": "uint32", - "minimum": "0", - "maximum": "500", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "UserList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/cloud.useraccounts", - "https://www.googleapis.com/auth/cloud.useraccounts.readonly" - ] - }, - "removePublicKey": { - "id": "clouduseraccounts.users.removePublicKey", - "path": "{project}/global/users/{user}/removePublicKey", - "httpMethod": "POST", - "description": "Removes the specified public key from the user.", - "parameters": { - "fingerprint": { - "type": "string", - "description": "The fingerprint of the public key to delete. Public keys are identified by their fingerprint, which is defined by RFC4716 to be the MD5 digest of the public key.", - "required": true, - "pattern": "[a-f0-9]{32}", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "user": { - "type": "string", - "description": "Name of the user for this request.", - "required": true, - "pattern": "[a-z][-a-z0-9_]{0,31}", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "user", - "fingerprint" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud.useraccounts" - ] - }, - "setIamPolicy": { - "id": "clouduseraccounts.users.setIamPolicy", - "path": "{project}/global/users/{resource}/setIamPolicy", - "httpMethod": "POST", - "description": "Sets the access control policy on the specified resource. Replaces any existing policy.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "resource" - ], - "request": { - "$ref": "Policy" - }, - "response": { - "$ref": "Policy" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/cloud.useraccounts", - "https://www.googleapis.com/auth/cloud.useraccounts.readonly" - ] - }, - "testIamPermissions": { - "id": "clouduseraccounts.users.testIamPermissions", - "path": "{project}/global/users/{resource}/testIamPermissions", - "httpMethod": "POST", - "description": "Returns permissions that a caller has on the specified resource.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "resource" - ], - "request": { - "$ref": "TestPermissionsRequest" - }, - "response": { - "$ref": "TestPermissionsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/cloud.useraccounts", - "https://www.googleapis.com/auth/cloud.useraccounts.readonly" - ] - } - } - } - } -} + "servicePath": "clouduseraccounts/vm_alpha/projects/", + "title": "Cloud User Accounts API", + "version": "vm_alpha" +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/clouduseraccounts/vm_beta/clouduseraccounts-api.json b/vendor/google.golang.org/api/clouduseraccounts/vm_beta/clouduseraccounts-api.json index 2077e5a39..53e34070c 100644 --- a/vendor/google.golang.org/api/clouduseraccounts/vm_beta/clouduseraccounts-api.json +++ b/vendor/google.golang.org/api/clouduseraccounts/vm_beta/clouduseraccounts-api.json @@ -1,1361 +1,1361 @@ { - "kind": "discovery#restDescription", - "etag": "\"YWOzh2SDasdU84ArJnpYek-OMdg/NOgAExjYfIWiV_BL3FlcslmjncY\"", - "discoveryVersion": "v1", - "id": "clouduseraccounts:vm_beta", - "name": "clouduseraccounts", - "canonicalName": "Cloud User Accounts", - "version": "vm_beta", - "revision": "20160316", - "title": "Cloud User Accounts API", - "description": "Creates and manages users and groups for accessing Google Compute Engine virtual machines.", - "ownerDomain": "google.com", - "ownerName": "Google", - "icons": { - "x16": "https://www.google.com/images/icons/product/compute_engine-16.png", - "x32": "https://www.google.com/images/icons/product/compute_engine-32.png" - }, - "documentationLink": "https://cloud.google.com/compute/docs/access/user-accounts/api/latest/", - "protocol": "rest", - "baseUrl": "https://www.googleapis.com/clouduseraccounts/vm_beta/projects/", - "basePath": "/clouduseraccounts/vm_beta/projects/", - "rootUrl": "https://www.googleapis.com/", - "servicePath": "clouduseraccounts/vm_beta/projects/", - "batchPath": "batch/clouduseraccounts/vm_beta", - "parameters": { - "alt": { - "type": "string", - "description": "Data format for the response.", - "default": "json", - "enum": [ - "json" - ], - "enumDescriptions": [ - "Responses with Content-Type of application/json" - ], - "location": "query" - }, - "fields": { - "type": "string", - "description": "Selector specifying which fields to include in a partial response.", - "location": "query" - }, - "key": { - "type": "string", - "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" - }, - "oauth_token": { - "type": "string", - "description": "OAuth 2.0 token for the current user.", - "location": "query" - }, - "prettyPrint": { - "type": "boolean", - "description": "Returns response with indentations and line breaks.", - "default": "true", - "location": "query" - }, - "quotaUser": { - "type": "string", - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", - "location": "query" - }, - "userIp": { - "type": "string", - "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", - "location": "query" - } - }, - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/cloud-platform": { - "description": "View and manage your data across Google Cloud Platform services" - }, - "https://www.googleapis.com/auth/cloud-platform.read-only": { - "description": "View your data across Google Cloud Platform services" - }, - "https://www.googleapis.com/auth/cloud.useraccounts": { - "description": "Manage your Google Cloud User Accounts" - }, - "https://www.googleapis.com/auth/cloud.useraccounts.readonly": { - "description": "View your Google Cloud User Accounts" - } - } - } - }, - "schemas": { - "AuthorizedKeysView": { - "id": "AuthorizedKeysView", - "type": "object", - "description": "A list of authorized public keys for a user account.", - "properties": { - "keys": { - "type": "array", - "description": "[Output Only] The list of authorized public keys in SSH format.", - "items": { - "type": "string" - } - }, - "sudoer": { - "type": "boolean", - "description": "[Output Only] Whether the user has the ability to elevate on the instance that requested the authorized keys." - } - } - }, - "Group": { - "id": "Group", - "type": "object", - "description": "A Group resource.", - "properties": { - "creationTimestamp": { - "type": "string", - "description": "[Output Only] Creation timestamp in RFC3339 text format." - }, - "description": { - "type": "string", - "description": "An optional textual description of the resource; provided by the client when the resource is created." - }, - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server.", - "format": "uint64" - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of the resource. Always clouduseraccounts#group for groups.", - "default": "clouduseraccounts#group" - }, - "members": { - "type": "array", - "description": "[Output Only] A list of URLs to User resources who belong to the group. Users may only be members of groups in the same project.", - "items": { - "type": "string" - } - }, - "name": { - "type": "string", - "description": "Name of the resource; provided by the client when the resource is created.", - "pattern": "[a-z][-a-z0-9_]{0,31}", - "annotations": { - "required": [ - "clouduseraccounts.groups.insert" - ] - } - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server defined URL for the resource." - } - } - }, - "GroupList": { - "id": "GroupList", - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "array", - "description": "[Output Only] A list of Group resources.", - "items": { - "$ref": "Group" - } - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always clouduseraccounts#groupList for lists of groups.", - "default": "clouduseraccounts#groupList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] A token used to continue a truncated list request." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server defined URL for this resource." - } - } - }, - "GroupsAddMemberRequest": { - "id": "GroupsAddMemberRequest", - "type": "object", - "properties": { - "users": { - "type": "array", - "description": "Fully-qualified URLs of the User resources to add.", - "items": { - "type": "string" - } - } - } - }, - "GroupsRemoveMemberRequest": { - "id": "GroupsRemoveMemberRequest", - "type": "object", - "properties": { - "users": { - "type": "array", - "description": "Fully-qualified URLs of the User resources to remove.", - "items": { - "type": "string" - } - } - } - }, - "LinuxAccountViews": { - "id": "LinuxAccountViews", - "type": "object", - "description": "A list of all Linux accounts for this project. This API is only used by Compute Engine virtual machines to get information about user accounts for a project or instance. Linux resources are read-only views into users and groups managed by the Compute Engine Accounts API.", - "properties": { - "groupViews": { - "type": "array", - "description": "[Output Only] A list of all groups within a project.", - "items": { - "$ref": "LinuxGroupView" - } - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of the resource. Always clouduseraccounts#linuxAccountViews for Linux resources.", - "default": "clouduseraccounts#linuxAccountViews" - }, - "userViews": { - "type": "array", - "description": "[Output Only] A list of all users within a project.", - "items": { - "$ref": "LinuxUserView" - } - } - } - }, - "LinuxGetAuthorizedKeysViewResponse": { - "id": "LinuxGetAuthorizedKeysViewResponse", - "type": "object", - "properties": { - "resource": { - "$ref": "AuthorizedKeysView", - "description": "[Output Only] A list of authorized public keys for a user." - } - } - }, - "LinuxGetLinuxAccountViewsResponse": { - "id": "LinuxGetLinuxAccountViewsResponse", - "type": "object", - "properties": { - "resource": { - "$ref": "LinuxAccountViews", - "description": "[Output Only] A list of authorized user accounts and groups." - } - } - }, - "LinuxGroupView": { - "id": "LinuxGroupView", - "type": "object", - "description": "A detailed view of a Linux group.", - "properties": { - "gid": { - "type": "integer", - "description": "[Output Only] The Group ID.", - "format": "uint32" - }, - "groupName": { - "type": "string", - "description": "[Output Only] Group name." - }, - "members": { - "type": "array", - "description": "[Output Only] List of user accounts that belong to the group.", - "items": { - "type": "string" - } - } - } - }, - "LinuxUserView": { - "id": "LinuxUserView", - "type": "object", - "description": "A detailed view of a Linux user account.", - "properties": { - "gecos": { - "type": "string", - "description": "[Output Only] The GECOS (user information) entry for this account." - }, - "gid": { - "type": "integer", - "description": "[Output Only] User's default group ID.", - "format": "uint32" - }, - "homeDirectory": { - "type": "string", - "description": "[Output Only] The path to the home directory for this account." - }, - "shell": { - "type": "string", - "description": "[Output Only] The path to the login shell for this account." - }, - "uid": { - "type": "integer", - "description": "[Output Only] User ID.", - "format": "uint32" - }, - "username": { - "type": "string", - "description": "[Output Only] The username of the account." - } - } - }, - "Operation": { - "id": "Operation", - "type": "object", - "description": "An Operation resource, used to manage asynchronous API requests.", - "properties": { - "clientOperationId": { - "type": "string", - "description": "[Output Only] Reserved for future use." - }, - "creationTimestamp": { - "type": "string", - "description": "[Output Only] Creation timestamp in RFC3339 text format." - }, - "description": { - "type": "string", - "description": "[Output Only] A textual description of the operation, which is set when the operation is created." - }, - "endTime": { - "type": "string", - "description": "[Output Only] The time that this operation was completed. This value is in RFC3339 text format." - }, - "error": { - "type": "object", - "description": "[Output Only] If errors are generated during processing of the operation, this field will be populated.", - "properties": { - "errors": { - "type": "array", - "description": "[Output Only] The array of errors encountered while processing this operation.", - "items": { - "type": "object", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] The error type identifier for this error." - }, - "location": { - "type": "string", - "description": "[Output Only] Indicates the field in the request that caused the error. This property is optional." - }, - "message": { - "type": "string", - "description": "[Output Only] An optional, human-readable error message." - } + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/cloud-platform": { + "description": "View and manage your data across Google Cloud Platform services" + }, + "https://www.googleapis.com/auth/cloud-platform.read-only": { + "description": "View your data across Google Cloud Platform services" + }, + "https://www.googleapis.com/auth/cloud.useraccounts": { + "description": "Manage your Google Cloud User Accounts" + }, + "https://www.googleapis.com/auth/cloud.useraccounts.readonly": { + "description": "View your Google Cloud User Accounts" } - } } - } - }, - "httpErrorMessage": { - "type": "string", - "description": "[Output Only] If the operation fails, this field contains the HTTP error message that was returned, such as NOT FOUND." - }, - "httpErrorStatusCode": { - "type": "integer", - "description": "[Output Only] If the operation fails, this field contains the HTTP error status code that was returned. For example, a 404 means the resource was not found.", - "format": "int32" - }, - "id": { - "type": "string", - "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", - "format": "uint64" - }, - "insertTime": { - "type": "string", - "description": "[Output Only] The time that this operation was requested. This value is in RFC3339 text format." - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of the resource. Always compute#operation for Operation resources.", - "default": "clouduseraccounts#operation" - }, - "name": { - "type": "string", - "description": "[Output Only] Name of the resource." - }, - "operationType": { - "type": "string", - "description": "[Output Only] The type of operation, such as insert, update, or delete, and so on." - }, - "progress": { - "type": "integer", - "description": "[Output Only] An optional progress indicator that ranges from 0 to 100. There is no requirement that this be linear or support any granularity of operations. This should not be used to guess when the operation will be complete. This number should monotonically increase as the operation progresses.", - "format": "int32" - }, - "region": { - "type": "string", - "description": "[Output Only] The URL of the region where the operation resides. Only available when performing regional operations." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for the resource." - }, - "startTime": { - "type": "string", - "description": "[Output Only] The time that this operation was started by the server. This value is in RFC3339 text format." - }, - "status": { - "type": "string", - "description": "[Output Only] The status of the operation, which can be one of the following: PENDING, RUNNING, or DONE.", - "enum": [ - "DONE", - "PENDING", - "RUNNING" - ], - "enumDescriptions": [ - "", - "", - "" - ] - }, - "statusMessage": { - "type": "string", - "description": "[Output Only] An optional textual description of the current status of the operation." - }, - "targetId": { - "type": "string", - "description": "[Output Only] The unique target ID, which identifies a specific incarnation of the target resource.", - "format": "uint64" - }, - "targetLink": { - "type": "string", - "description": "[Output Only] The URL of the resource that the operation modifies." - }, - "user": { - "type": "string", - "description": "[Output Only] User who requested the operation, for example: user@example.com." - }, - "warnings": { - "type": "array", - "description": "[Output Only] If warning messages are generated during processing of the operation, this field will be populated.", - "items": { - "type": "object", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "INJECTED_KERNELS_DEPRECATED", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_NOT_DELETED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - }, - "zone": { - "type": "string", - "description": "[Output Only] The URL of the zone where the operation resides. Only available when performing per-zone operations." } - } }, - "OperationList": { - "id": "OperationList", - "type": "object", - "description": "Contains a list of Operation resources.", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server." - }, - "items": { - "type": "array", - "description": "[Output Only] A list of Operation resources.", - "items": { - "$ref": "Operation" - } - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#operations for Operations resource.", - "default": "clouduseraccounts#operationList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - } - } + "basePath": "/clouduseraccounts/vm_beta/projects/", + "baseUrl": "https://www.googleapis.com/clouduseraccounts/vm_beta/projects/", + "batchPath": "batch/clouduseraccounts/vm_beta", + "canonicalName": "Cloud User Accounts", + "description": "Creates and manages users and groups for accessing Google Compute Engine virtual machines.", + "discoveryVersion": "v1", + "documentationLink": "https://cloud.google.com/compute/docs/access/user-accounts/api/latest/", + "etag": "\"-iA1DTNe4s-I6JZXPt1t1Ypy8IU/NOgAExjYfIWiV_BL3FlcslmjncY\"", + "icons": { + "x16": "https://www.google.com/images/icons/product/compute_engine-16.png", + "x32": "https://www.google.com/images/icons/product/compute_engine-32.png" }, - "PublicKey": { - "id": "PublicKey", - "type": "object", - "description": "A public key for authenticating to guests.", - "properties": { - "creationTimestamp": { - "type": "string", - "description": "[Output Only] Creation timestamp in RFC3339 text format." + "id": "clouduseraccounts:vm_beta", + "kind": "discovery#restDescription", + "name": "clouduseraccounts", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "alt": { + "default": "json", + "description": "Data format for the response.", + "enum": [ + "json" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json" + ], + "location": "query", + "type": "string" }, - "description": { - "type": "string", - "description": "An optional textual description of the resource; provided by the client when the resource is created." - }, - "expirationTimestamp": { - "type": "string", - "description": "Optional expiration timestamp. If provided, the timestamp must be in RFC3339 text format. If not provided, the public key never expires." - }, - "fingerprint": { - "type": "string", - "description": "[Output Only] The fingerprint of the key is defined by RFC4716 to be the MD5 digest of the public key." + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "location": "query", + "type": "string" }, "key": { - "type": "string", - "description": "Public key text in SSH format, defined by RFC4253 section 6.6." - } - } - }, - "User": { - "id": "User", - "type": "object", - "description": "A User resource.", - "properties": { - "creationTimestamp": { - "type": "string", - "description": "[Output Only] Creation timestamp in RFC3339 text format." + "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" }, - "description": { - "type": "string", - "description": "An optional textual description of the resource; provided by the client when the resource is created." + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", + "location": "query", + "type": "string" + }, + "userIp": { + "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", + "location": "query", + "type": "string" + } + }, + "protocol": "rest", + "resources": { + "globalAccountsOperations": { + "methods": { + "delete": { + "description": "Deletes the specified operation resource.", + "httpMethod": "DELETE", + "id": "clouduseraccounts.globalAccountsOperations.delete", + "parameterOrder": [ + "project", + "operation" + ], + "parameters": { + "operation": { + "description": "Name of the Operations resource to delete.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/operations/{operation}", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud.useraccounts" + ] + }, + "get": { + "description": "Retrieves the specified operation resource.", + "httpMethod": "GET", + "id": "clouduseraccounts.globalAccountsOperations.get", + "parameterOrder": [ + "project", + "operation" + ], + "parameters": { + "operation": { + "description": "Name of the Operations resource to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/operations/{operation}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/cloud.useraccounts", + "https://www.googleapis.com/auth/cloud.useraccounts.readonly" + ] + }, + "list": { + "description": "Retrieves the list of operation resources contained within the specified project.", + "httpMethod": "GET", + "id": "clouduseraccounts.globalAccountsOperations.list", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nCompute Engine Beta API Only: If you use filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. In particular, use filtering on nested fields to take advantage of instance labels to organize and filter results based on label values.\n\nThe Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests.", + "format": "uint32", + "location": "query", + "maximum": "500", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/operations", + "response": { + "$ref": "OperationList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/cloud.useraccounts", + "https://www.googleapis.com/auth/cloud.useraccounts.readonly" + ] + } + } }, "groups": { - "type": "array", - "description": "[Output Only] A list of URLs to Group resources who contain the user. Users are only members of groups in the same project.", - "items": { - "type": "string" - } + "methods": { + "addMember": { + "description": "Adds users to the specified group.", + "httpMethod": "POST", + "id": "clouduseraccounts.groups.addMember", + "parameterOrder": [ + "project", + "groupName" + ], + "parameters": { + "groupName": { + "description": "Name of the group for this request.", + "location": "path", + "pattern": "[a-z][-a-z0-9_]{0,31}", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/groups/{groupName}/addMember", + "request": { + "$ref": "GroupsAddMemberRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud.useraccounts" + ] + }, + "delete": { + "description": "Deletes the specified Group resource.", + "httpMethod": "DELETE", + "id": "clouduseraccounts.groups.delete", + "parameterOrder": [ + "project", + "groupName" + ], + "parameters": { + "groupName": { + "description": "Name of the Group resource to delete.", + "location": "path", + "pattern": "[a-z][-a-z0-9_]{0,31}", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/groups/{groupName}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud.useraccounts" + ] + }, + "get": { + "description": "Returns the specified Group resource.", + "httpMethod": "GET", + "id": "clouduseraccounts.groups.get", + "parameterOrder": [ + "project", + "groupName" + ], + "parameters": { + "groupName": { + "description": "Name of the Group resource to return.", + "location": "path", + "pattern": "[a-z][-a-z0-9_]{0,31}", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/groups/{groupName}", + "response": { + "$ref": "Group" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/cloud.useraccounts", + "https://www.googleapis.com/auth/cloud.useraccounts.readonly" + ] + }, + "insert": { + "description": "Creates a Group resource in the specified project using the data included in the request.", + "httpMethod": "POST", + "id": "clouduseraccounts.groups.insert", + "parameterOrder": [ + "project" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/groups", + "request": { + "$ref": "Group" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud.useraccounts" + ] + }, + "list": { + "description": "Retrieves the list of groups contained within the specified project.", + "httpMethod": "GET", + "id": "clouduseraccounts.groups.list", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nCompute Engine Beta API Only: If you use filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. In particular, use filtering on nested fields to take advantage of instance labels to organize and filter results based on label values.\n\nThe Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests.", + "format": "uint32", + "location": "query", + "maximum": "500", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/groups", + "response": { + "$ref": "GroupList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/cloud.useraccounts", + "https://www.googleapis.com/auth/cloud.useraccounts.readonly" + ] + }, + "removeMember": { + "description": "Removes users from the specified group.", + "httpMethod": "POST", + "id": "clouduseraccounts.groups.removeMember", + "parameterOrder": [ + "project", + "groupName" + ], + "parameters": { + "groupName": { + "description": "Name of the group for this request.", + "location": "path", + "pattern": "[a-z][-a-z0-9_]{0,31}", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/groups/{groupName}/removeMember", + "request": { + "$ref": "GroupsRemoveMemberRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud.useraccounts" + ] + } + } }, - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server.", - "format": "uint64" + "linux": { + "methods": { + "getAuthorizedKeysView": { + "description": "Returns a list of authorized public keys for a specific user account.", + "httpMethod": "POST", + "id": "clouduseraccounts.linux.getAuthorizedKeysView", + "parameterOrder": [ + "project", + "zone", + "user", + "instance" + ], + "parameters": { + "instance": { + "description": "The fully-qualified URL of the virtual machine requesting the view.", + "location": "query", + "required": true, + "type": "string" + }, + "login": { + "description": "Whether the view was requested as part of a user-initiated login.", + "location": "query", + "type": "boolean" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "user": { + "description": "The user account for which you want to get a list of authorized public keys.", + "location": "path", + "pattern": "[a-z][-a-z0-9_]{0,31}", + "required": true, + "type": "string" + }, + "zone": { + "description": "Name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/authorizedKeysView/{user}", + "response": { + "$ref": "LinuxGetAuthorizedKeysViewResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/cloud.useraccounts", + "https://www.googleapis.com/auth/cloud.useraccounts.readonly" + ] + }, + "getLinuxAccountViews": { + "description": "Retrieves a list of user accounts for an instance within a specific project.", + "httpMethod": "POST", + "id": "clouduseraccounts.linux.getLinuxAccountViews", + "parameterOrder": [ + "project", + "zone", + "instance" + ], + "parameters": { + "filter": { + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nCompute Engine Beta API Only: If you use filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. In particular, use filtering on nested fields to take advantage of instance labels to organize and filter results based on label values.\n\nThe Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "location": "query", + "type": "string" + }, + "instance": { + "description": "The fully-qualified URL of the virtual machine requesting the views.", + "location": "query", + "required": true, + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests.", + "format": "uint32", + "location": "query", + "maximum": "500", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "zone": { + "description": "Name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/linuxAccountViews", + "response": { + "$ref": "LinuxGetLinuxAccountViewsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/cloud.useraccounts", + "https://www.googleapis.com/auth/cloud.useraccounts.readonly" + ] + } + } }, - "kind": { - "type": "string", - "description": "[Output Only] Type of the resource. Always clouduseraccounts#user for users.", - "default": "clouduseraccounts#user" - }, - "name": { - "type": "string", - "description": "Name of the resource; provided by the client when the resource is created.", - "pattern": "[a-z][-a-z0-9_]{0,31}", - "annotations": { - "required": [ - "clouduseraccounts.users.insert" - ] - } - }, - "owner": { - "type": "string", - "description": "Email address of account's owner. This account will be validated to make sure it exists. The email can belong to any domain, but it must be tied to a Google account.", - "annotations": { - "required": [ - "clouduseraccounts.users.insert" - ] - } - }, - "publicKeys": { - "type": "array", - "description": "[Output Only] Public keys that this user may use to login.", - "items": { - "$ref": "PublicKey" - } - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server defined URL for the resource." + "users": { + "methods": { + "addPublicKey": { + "description": "Adds a public key to the specified User resource with the data included in the request.", + "httpMethod": "POST", + "id": "clouduseraccounts.users.addPublicKey", + "parameterOrder": [ + "project", + "user" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "user": { + "description": "Name of the user for this request.", + "location": "path", + "pattern": "[a-z][-a-z0-9_]{0,31}", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/users/{user}/addPublicKey", + "request": { + "$ref": "PublicKey" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud.useraccounts" + ] + }, + "delete": { + "description": "Deletes the specified User resource.", + "httpMethod": "DELETE", + "id": "clouduseraccounts.users.delete", + "parameterOrder": [ + "project", + "user" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "user": { + "description": "Name of the user resource to delete.", + "location": "path", + "pattern": "[a-z][-a-z0-9_]{0,31}", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/users/{user}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud.useraccounts" + ] + }, + "get": { + "description": "Returns the specified User resource.", + "httpMethod": "GET", + "id": "clouduseraccounts.users.get", + "parameterOrder": [ + "project", + "user" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "user": { + "description": "Name of the user resource to return.", + "location": "path", + "pattern": "[a-z][-a-z0-9_]{0,31}", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/users/{user}", + "response": { + "$ref": "User" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/cloud.useraccounts", + "https://www.googleapis.com/auth/cloud.useraccounts.readonly" + ] + }, + "insert": { + "description": "Creates a User resource in the specified project using the data included in the request.", + "httpMethod": "POST", + "id": "clouduseraccounts.users.insert", + "parameterOrder": [ + "project" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/users", + "request": { + "$ref": "User" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud.useraccounts" + ] + }, + "list": { + "description": "Retrieves a list of users contained within the specified project.", + "httpMethod": "GET", + "id": "clouduseraccounts.users.list", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nCompute Engine Beta API Only: If you use filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. In particular, use filtering on nested fields to take advantage of instance labels to organize and filter results based on label values.\n\nThe Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests.", + "format": "uint32", + "location": "query", + "maximum": "500", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/users", + "response": { + "$ref": "UserList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/cloud.useraccounts", + "https://www.googleapis.com/auth/cloud.useraccounts.readonly" + ] + }, + "removePublicKey": { + "description": "Removes the specified public key from the user.", + "httpMethod": "POST", + "id": "clouduseraccounts.users.removePublicKey", + "parameterOrder": [ + "project", + "user", + "fingerprint" + ], + "parameters": { + "fingerprint": { + "description": "The fingerprint of the public key to delete. Public keys are identified by their fingerprint, which is defined by RFC4716 to be the MD5 digest of the public key.", + "location": "query", + "pattern": "[a-f0-9]{32}", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "user": { + "description": "Name of the user for this request.", + "location": "path", + "pattern": "[a-z][-a-z0-9_]{0,31}", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/users/{user}/removePublicKey", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud.useraccounts" + ] + } + } } - } }, - "UserList": { - "id": "UserList", - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." + "revision": "20160316", + "rootUrl": "https://www.googleapis.com/", + "schemas": { + "AuthorizedKeysView": { + "description": "A list of authorized public keys for a user account.", + "id": "AuthorizedKeysView", + "properties": { + "keys": { + "description": "[Output Only] The list of authorized public keys in SSH format.", + "items": { + "type": "string" + }, + "type": "array" + }, + "sudoer": { + "description": "[Output Only] Whether the user has the ability to elevate on the instance that requested the authorized keys.", + "type": "boolean" + } + }, + "type": "object" }, - "items": { - "type": "array", - "description": "[Output Only] A list of User resources.", - "items": { - "$ref": "User" - } + "Group": { + "description": "A Group resource.", + "id": "Group", + "properties": { + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "description": { + "description": "An optional textual description of the resource; provided by the client when the resource is created.", + "type": "string" + }, + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "format": "uint64", + "type": "string" + }, + "kind": { + "default": "clouduseraccounts#group", + "description": "[Output Only] Type of the resource. Always clouduseraccounts#group for groups.", + "type": "string" + }, + "members": { + "description": "[Output Only] A list of URLs to User resources who belong to the group. Users may only be members of groups in the same project.", + "items": { + "type": "string" + }, + "type": "array" + }, + "name": { + "annotations": { + "required": [ + "clouduseraccounts.groups.insert" + ] + }, + "description": "Name of the resource; provided by the client when the resource is created.", + "pattern": "[a-z][-a-z0-9_]{0,31}", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server defined URL for the resource.", + "type": "string" + } + }, + "type": "object" }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always clouduseraccounts#userList for lists of users.", - "default": "clouduseraccounts#userList" + "GroupList": { + "id": "GroupList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "[Output Only] A list of Group resources.", + "items": { + "$ref": "Group" + }, + "type": "array" + }, + "kind": { + "default": "clouduseraccounts#groupList", + "description": "[Output Only] Type of resource. Always clouduseraccounts#groupList for lists of groups.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] A token used to continue a truncated list request.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server defined URL for this resource.", + "type": "string" + } + }, + "type": "object" }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] A token used to continue a truncated list request." + "GroupsAddMemberRequest": { + "id": "GroupsAddMemberRequest", + "properties": { + "users": { + "description": "Fully-qualified URLs of the User resources to add.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server defined URL for this resource." + "GroupsRemoveMemberRequest": { + "id": "GroupsRemoveMemberRequest", + "properties": { + "users": { + "description": "Fully-qualified URLs of the User resources to remove.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "LinuxAccountViews": { + "description": "A list of all Linux accounts for this project. This API is only used by Compute Engine virtual machines to get information about user accounts for a project or instance. Linux resources are read-only views into users and groups managed by the Compute Engine Accounts API.", + "id": "LinuxAccountViews", + "properties": { + "groupViews": { + "description": "[Output Only] A list of all groups within a project.", + "items": { + "$ref": "LinuxGroupView" + }, + "type": "array" + }, + "kind": { + "default": "clouduseraccounts#linuxAccountViews", + "description": "[Output Only] Type of the resource. Always clouduseraccounts#linuxAccountViews for Linux resources.", + "type": "string" + }, + "userViews": { + "description": "[Output Only] A list of all users within a project.", + "items": { + "$ref": "LinuxUserView" + }, + "type": "array" + } + }, + "type": "object" + }, + "LinuxGetAuthorizedKeysViewResponse": { + "id": "LinuxGetAuthorizedKeysViewResponse", + "properties": { + "resource": { + "$ref": "AuthorizedKeysView", + "description": "[Output Only] A list of authorized public keys for a user." + } + }, + "type": "object" + }, + "LinuxGetLinuxAccountViewsResponse": { + "id": "LinuxGetLinuxAccountViewsResponse", + "properties": { + "resource": { + "$ref": "LinuxAccountViews", + "description": "[Output Only] A list of authorized user accounts and groups." + } + }, + "type": "object" + }, + "LinuxGroupView": { + "description": "A detailed view of a Linux group.", + "id": "LinuxGroupView", + "properties": { + "gid": { + "description": "[Output Only] The Group ID.", + "format": "uint32", + "type": "integer" + }, + "groupName": { + "description": "[Output Only] Group name.", + "type": "string" + }, + "members": { + "description": "[Output Only] List of user accounts that belong to the group.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "LinuxUserView": { + "description": "A detailed view of a Linux user account.", + "id": "LinuxUserView", + "properties": { + "gecos": { + "description": "[Output Only] The GECOS (user information) entry for this account.", + "type": "string" + }, + "gid": { + "description": "[Output Only] User's default group ID.", + "format": "uint32", + "type": "integer" + }, + "homeDirectory": { + "description": "[Output Only] The path to the home directory for this account.", + "type": "string" + }, + "shell": { + "description": "[Output Only] The path to the login shell for this account.", + "type": "string" + }, + "uid": { + "description": "[Output Only] User ID.", + "format": "uint32", + "type": "integer" + }, + "username": { + "description": "[Output Only] The username of the account.", + "type": "string" + } + }, + "type": "object" + }, + "Operation": { + "description": "An Operation resource, used to manage asynchronous API requests.", + "id": "Operation", + "properties": { + "clientOperationId": { + "description": "[Output Only] Reserved for future use.", + "type": "string" + }, + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "description": { + "description": "[Output Only] A textual description of the operation, which is set when the operation is created.", + "type": "string" + }, + "endTime": { + "description": "[Output Only] The time that this operation was completed. This value is in RFC3339 text format.", + "type": "string" + }, + "error": { + "description": "[Output Only] If errors are generated during processing of the operation, this field will be populated.", + "properties": { + "errors": { + "description": "[Output Only] The array of errors encountered while processing this operation.", + "items": { + "properties": { + "code": { + "description": "[Output Only] The error type identifier for this error.", + "type": "string" + }, + "location": { + "description": "[Output Only] Indicates the field in the request that caused the error. This property is optional.", + "type": "string" + }, + "message": { + "description": "[Output Only] An optional, human-readable error message.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + } + }, + "type": "object" + }, + "httpErrorMessage": { + "description": "[Output Only] If the operation fails, this field contains the HTTP error message that was returned, such as NOT FOUND.", + "type": "string" + }, + "httpErrorStatusCode": { + "description": "[Output Only] If the operation fails, this field contains the HTTP error status code that was returned. For example, a 404 means the resource was not found.", + "format": "int32", + "type": "integer" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64", + "type": "string" + }, + "insertTime": { + "description": "[Output Only] The time that this operation was requested. This value is in RFC3339 text format.", + "type": "string" + }, + "kind": { + "default": "clouduseraccounts#operation", + "description": "[Output Only] Type of the resource. Always compute#operation for Operation resources.", + "type": "string" + }, + "name": { + "description": "[Output Only] Name of the resource.", + "type": "string" + }, + "operationType": { + "description": "[Output Only] The type of operation, such as insert, update, or delete, and so on.", + "type": "string" + }, + "progress": { + "description": "[Output Only] An optional progress indicator that ranges from 0 to 100. There is no requirement that this be linear or support any granularity of operations. This should not be used to guess when the operation will be complete. This number should monotonically increase as the operation progresses.", + "format": "int32", + "type": "integer" + }, + "region": { + "description": "[Output Only] The URL of the region where the operation resides. Only available when performing regional operations.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + }, + "startTime": { + "description": "[Output Only] The time that this operation was started by the server. This value is in RFC3339 text format.", + "type": "string" + }, + "status": { + "description": "[Output Only] The status of the operation, which can be one of the following: PENDING, RUNNING, or DONE.", + "enum": [ + "DONE", + "PENDING", + "RUNNING" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, + "statusMessage": { + "description": "[Output Only] An optional textual description of the current status of the operation.", + "type": "string" + }, + "targetId": { + "description": "[Output Only] The unique target ID, which identifies a specific incarnation of the target resource.", + "format": "uint64", + "type": "string" + }, + "targetLink": { + "description": "[Output Only] The URL of the resource that the operation modifies.", + "type": "string" + }, + "user": { + "description": "[Output Only] User who requested the operation, for example: user@example.com.", + "type": "string" + }, + "warnings": { + "description": "[Output Only] If warning messages are generated during processing of the operation, this field will be populated.", + "items": { + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "INJECTED_KERNELS_DEPRECATED", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_NOT_DELETED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "zone": { + "description": "[Output Only] The URL of the zone where the operation resides. Only available when performing per-zone operations.", + "type": "string" + } + }, + "type": "object" + }, + "OperationList": { + "description": "Contains a list of Operation resources.", + "id": "OperationList", + "properties": { + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "type": "string" + }, + "items": { + "description": "[Output Only] A list of Operation resources.", + "items": { + "$ref": "Operation" + }, + "type": "array" + }, + "kind": { + "default": "clouduseraccounts#operationList", + "description": "[Output Only] Type of resource. Always compute#operations for Operations resource.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + } + }, + "type": "object" + }, + "PublicKey": { + "description": "A public key for authenticating to guests.", + "id": "PublicKey", + "properties": { + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "description": { + "description": "An optional textual description of the resource; provided by the client when the resource is created.", + "type": "string" + }, + "expirationTimestamp": { + "description": "Optional expiration timestamp. If provided, the timestamp must be in RFC3339 text format. If not provided, the public key never expires.", + "type": "string" + }, + "fingerprint": { + "description": "[Output Only] The fingerprint of the key is defined by RFC4716 to be the MD5 digest of the public key.", + "type": "string" + }, + "key": { + "description": "Public key text in SSH format, defined by RFC4253 section 6.6.", + "type": "string" + } + }, + "type": "object" + }, + "User": { + "description": "A User resource.", + "id": "User", + "properties": { + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "description": { + "description": "An optional textual description of the resource; provided by the client when the resource is created.", + "type": "string" + }, + "groups": { + "description": "[Output Only] A list of URLs to Group resources who contain the user. Users are only members of groups in the same project.", + "items": { + "type": "string" + }, + "type": "array" + }, + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "format": "uint64", + "type": "string" + }, + "kind": { + "default": "clouduseraccounts#user", + "description": "[Output Only] Type of the resource. Always clouduseraccounts#user for users.", + "type": "string" + }, + "name": { + "annotations": { + "required": [ + "clouduseraccounts.users.insert" + ] + }, + "description": "Name of the resource; provided by the client when the resource is created.", + "pattern": "[a-z][-a-z0-9_]{0,31}", + "type": "string" + }, + "owner": { + "annotations": { + "required": [ + "clouduseraccounts.users.insert" + ] + }, + "description": "Email address of account's owner. This account will be validated to make sure it exists. The email can belong to any domain, but it must be tied to a Google account.", + "type": "string" + }, + "publicKeys": { + "description": "[Output Only] Public keys that this user may use to login.", + "items": { + "$ref": "PublicKey" + }, + "type": "array" + }, + "selfLink": { + "description": "[Output Only] Server defined URL for the resource.", + "type": "string" + } + }, + "type": "object" + }, + "UserList": { + "id": "UserList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "[Output Only] A list of User resources.", + "items": { + "$ref": "User" + }, + "type": "array" + }, + "kind": { + "default": "clouduseraccounts#userList", + "description": "[Output Only] Type of resource. Always clouduseraccounts#userList for lists of users.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] A token used to continue a truncated list request.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server defined URL for this resource.", + "type": "string" + } + }, + "type": "object" } - } - } - }, - "resources": { - "globalAccountsOperations": { - "methods": { - "delete": { - "id": "clouduseraccounts.globalAccountsOperations.delete", - "path": "{project}/global/operations/{operation}", - "httpMethod": "DELETE", - "description": "Deletes the specified operation resource.", - "parameters": { - "operation": { - "type": "string", - "description": "Name of the Operations resource to delete.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "operation" - ], - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud.useraccounts" - ] - }, - "get": { - "id": "clouduseraccounts.globalAccountsOperations.get", - "path": "{project}/global/operations/{operation}", - "httpMethod": "GET", - "description": "Retrieves the specified operation resource.", - "parameters": { - "operation": { - "type": "string", - "description": "Name of the Operations resource to return.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "operation" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/cloud.useraccounts", - "https://www.googleapis.com/auth/cloud.useraccounts.readonly" - ] - }, - "list": { - "id": "clouduseraccounts.globalAccountsOperations.list", - "path": "{project}/global/operations", - "httpMethod": "GET", - "description": "Retrieves the list of operation resources contained within the specified project.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nCompute Engine Beta API Only: If you use filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. In particular, use filtering on nested fields to take advantage of instance labels to organize and filter results based on label values.\n\nThe Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests.", - "default": "500", - "format": "uint32", - "minimum": "0", - "maximum": "500", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "OperationList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/cloud.useraccounts", - "https://www.googleapis.com/auth/cloud.useraccounts.readonly" - ] - } - } }, - "groups": { - "methods": { - "addMember": { - "id": "clouduseraccounts.groups.addMember", - "path": "{project}/global/groups/{groupName}/addMember", - "httpMethod": "POST", - "description": "Adds users to the specified group.", - "parameters": { - "groupName": { - "type": "string", - "description": "Name of the group for this request.", - "required": true, - "pattern": "[a-z][-a-z0-9_]{0,31}", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "groupName" - ], - "request": { - "$ref": "GroupsAddMemberRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud.useraccounts" - ] - }, - "delete": { - "id": "clouduseraccounts.groups.delete", - "path": "{project}/global/groups/{groupName}", - "httpMethod": "DELETE", - "description": "Deletes the specified Group resource.", - "parameters": { - "groupName": { - "type": "string", - "description": "Name of the Group resource to delete.", - "required": true, - "pattern": "[a-z][-a-z0-9_]{0,31}", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "groupName" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud.useraccounts" - ] - }, - "get": { - "id": "clouduseraccounts.groups.get", - "path": "{project}/global/groups/{groupName}", - "httpMethod": "GET", - "description": "Returns the specified Group resource.", - "parameters": { - "groupName": { - "type": "string", - "description": "Name of the Group resource to return.", - "required": true, - "pattern": "[a-z][-a-z0-9_]{0,31}", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "groupName" - ], - "response": { - "$ref": "Group" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/cloud.useraccounts", - "https://www.googleapis.com/auth/cloud.useraccounts.readonly" - ] - }, - "insert": { - "id": "clouduseraccounts.groups.insert", - "path": "{project}/global/groups", - "httpMethod": "POST", - "description": "Creates a Group resource in the specified project using the data included in the request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "request": { - "$ref": "Group" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud.useraccounts" - ] - }, - "list": { - "id": "clouduseraccounts.groups.list", - "path": "{project}/global/groups", - "httpMethod": "GET", - "description": "Retrieves the list of groups contained within the specified project.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nCompute Engine Beta API Only: If you use filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. In particular, use filtering on nested fields to take advantage of instance labels to organize and filter results based on label values.\n\nThe Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests.", - "default": "500", - "format": "uint32", - "minimum": "0", - "maximum": "500", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "GroupList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/cloud.useraccounts", - "https://www.googleapis.com/auth/cloud.useraccounts.readonly" - ] - }, - "removeMember": { - "id": "clouduseraccounts.groups.removeMember", - "path": "{project}/global/groups/{groupName}/removeMember", - "httpMethod": "POST", - "description": "Removes users from the specified group.", - "parameters": { - "groupName": { - "type": "string", - "description": "Name of the group for this request.", - "required": true, - "pattern": "[a-z][-a-z0-9_]{0,31}", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "groupName" - ], - "request": { - "$ref": "GroupsRemoveMemberRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud.useraccounts" - ] - } - } - }, - "linux": { - "methods": { - "getAuthorizedKeysView": { - "id": "clouduseraccounts.linux.getAuthorizedKeysView", - "path": "{project}/zones/{zone}/authorizedKeysView/{user}", - "httpMethod": "POST", - "description": "Returns a list of authorized public keys for a specific user account.", - "parameters": { - "instance": { - "type": "string", - "description": "The fully-qualified URL of the virtual machine requesting the view.", - "required": true, - "location": "query" - }, - "login": { - "type": "boolean", - "description": "Whether the view was requested as part of a user-initiated login.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "user": { - "type": "string", - "description": "The user account for which you want to get a list of authorized public keys.", - "required": true, - "pattern": "[a-z][-a-z0-9_]{0,31}", - "location": "path" - }, - "zone": { - "type": "string", - "description": "Name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "user", - "instance" - ], - "response": { - "$ref": "LinuxGetAuthorizedKeysViewResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/cloud.useraccounts", - "https://www.googleapis.com/auth/cloud.useraccounts.readonly" - ] - }, - "getLinuxAccountViews": { - "id": "clouduseraccounts.linux.getLinuxAccountViews", - "path": "{project}/zones/{zone}/linuxAccountViews", - "httpMethod": "POST", - "description": "Retrieves a list of user accounts for an instance within a specific project.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nCompute Engine Beta API Only: If you use filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. In particular, use filtering on nested fields to take advantage of instance labels to organize and filter results based on label values.\n\nThe Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "instance": { - "type": "string", - "description": "The fully-qualified URL of the virtual machine requesting the views.", - "required": true, - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests.", - "default": "500", - "format": "uint32", - "minimum": "0", - "maximum": "500", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "zone": { - "type": "string", - "description": "Name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "instance" - ], - "response": { - "$ref": "LinuxGetLinuxAccountViewsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/cloud.useraccounts", - "https://www.googleapis.com/auth/cloud.useraccounts.readonly" - ] - } - } - }, - "users": { - "methods": { - "addPublicKey": { - "id": "clouduseraccounts.users.addPublicKey", - "path": "{project}/global/users/{user}/addPublicKey", - "httpMethod": "POST", - "description": "Adds a public key to the specified User resource with the data included in the request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "user": { - "type": "string", - "description": "Name of the user for this request.", - "required": true, - "pattern": "[a-z][-a-z0-9_]{0,31}", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "user" - ], - "request": { - "$ref": "PublicKey" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud.useraccounts" - ] - }, - "delete": { - "id": "clouduseraccounts.users.delete", - "path": "{project}/global/users/{user}", - "httpMethod": "DELETE", - "description": "Deletes the specified User resource.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "user": { - "type": "string", - "description": "Name of the user resource to delete.", - "required": true, - "pattern": "[a-z][-a-z0-9_]{0,31}", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "user" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud.useraccounts" - ] - }, - "get": { - "id": "clouduseraccounts.users.get", - "path": "{project}/global/users/{user}", - "httpMethod": "GET", - "description": "Returns the specified User resource.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "user": { - "type": "string", - "description": "Name of the user resource to return.", - "required": true, - "pattern": "[a-z][-a-z0-9_]{0,31}", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "user" - ], - "response": { - "$ref": "User" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/cloud.useraccounts", - "https://www.googleapis.com/auth/cloud.useraccounts.readonly" - ] - }, - "insert": { - "id": "clouduseraccounts.users.insert", - "path": "{project}/global/users", - "httpMethod": "POST", - "description": "Creates a User resource in the specified project using the data included in the request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "request": { - "$ref": "User" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud.useraccounts" - ] - }, - "list": { - "id": "clouduseraccounts.users.list", - "path": "{project}/global/users", - "httpMethod": "GET", - "description": "Retrieves a list of users contained within the specified project.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nCompute Engine Beta API Only: If you use filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. In particular, use filtering on nested fields to take advantage of instance labels to organize and filter results based on label values.\n\nThe Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests.", - "default": "500", - "format": "uint32", - "minimum": "0", - "maximum": "500", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "UserList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/cloud.useraccounts", - "https://www.googleapis.com/auth/cloud.useraccounts.readonly" - ] - }, - "removePublicKey": { - "id": "clouduseraccounts.users.removePublicKey", - "path": "{project}/global/users/{user}/removePublicKey", - "httpMethod": "POST", - "description": "Removes the specified public key from the user.", - "parameters": { - "fingerprint": { - "type": "string", - "description": "The fingerprint of the public key to delete. Public keys are identified by their fingerprint, which is defined by RFC4716 to be the MD5 digest of the public key.", - "required": true, - "pattern": "[a-f0-9]{32}", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "user": { - "type": "string", - "description": "Name of the user for this request.", - "required": true, - "pattern": "[a-z][-a-z0-9_]{0,31}", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "user", - "fingerprint" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud.useraccounts" - ] - } - } - } - } -} + "servicePath": "clouduseraccounts/vm_beta/projects/", + "title": "Cloud User Accounts API", + "version": "vm_beta" +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/compute/v0.alpha/compute-api.json b/vendor/google.golang.org/api/compute/v0.alpha/compute-api.json index 71cbb0d7b..4867d303c 100644 --- a/vendor/google.golang.org/api/compute/v0.alpha/compute-api.json +++ b/vendor/google.golang.org/api/compute/v0.alpha/compute-api.json @@ -1,42499 +1,44459 @@ { - "kind": "discovery#restDescription", - "etag": "\"-iA1DTNe4s-I6JZXPt1t1Ypy8IU/GG1iBQimAqJMnQlOmz2fV9XMtWc\"", - "discoveryVersion": "v1", - "id": "compute:alpha", - "name": "compute", - "version": "alpha", - "revision": "20171228", - "title": "Compute Engine API", - "description": "Creates and runs virtual machines on Google Cloud Platform.", - "ownerDomain": "google.com", - "ownerName": "Google", - "icons": { - "x16": "https://www.google.com/images/icons/product/compute_engine-16.png", - "x32": "https://www.google.com/images/icons/product/compute_engine-32.png" - }, - "documentationLink": "https://developers.google.com/compute/docs/reference/latest/", - "protocol": "rest", - "baseUrl": "https://www.googleapis.com/compute/alpha/projects/", - "basePath": "/compute/alpha/projects/", - "rootUrl": "https://www.googleapis.com/", - "servicePath": "compute/alpha/projects/", - "batchPath": "batch/compute/alpha", - "parameters": { - "alt": { - "type": "string", - "description": "Data format for the response.", - "default": "json", - "enum": [ - "json" - ], - "enumDescriptions": [ - "Responses with Content-Type of application/json" - ], - "location": "query" - }, - "fields": { - "type": "string", - "description": "Selector specifying which fields to include in a partial response.", - "location": "query" - }, - "key": { - "type": "string", - "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" - }, - "oauth_token": { - "type": "string", - "description": "OAuth 2.0 token for the current user.", - "location": "query" - }, - "prettyPrint": { - "type": "boolean", - "description": "Returns response with indentations and line breaks.", - "default": "true", - "location": "query" - }, - "quotaUser": { - "type": "string", - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", - "location": "query" - }, - "userIp": { - "type": "string", - "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", - "location": "query" - } - }, - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/cloud-platform": { - "description": "View and manage your data across Google Cloud Platform services" - }, - "https://www.googleapis.com/auth/compute": { - "description": "View and manage your Google Compute Engine resources" - }, - "https://www.googleapis.com/auth/compute.readonly": { - "description": "View your Google Compute Engine resources" - }, - "https://www.googleapis.com/auth/devstorage.full_control": { - "description": "Manage your data and permissions in Google Cloud Storage" - }, - "https://www.googleapis.com/auth/devstorage.read_only": { - "description": "View your data in Google Cloud Storage" - }, - "https://www.googleapis.com/auth/devstorage.read_write": { - "description": "Manage your data in Google Cloud Storage" - } - } - } - }, - "schemas": { - "AcceleratorConfig": { - "id": "AcceleratorConfig", - "type": "object", - "description": "A specification of the type and number of accelerator cards attached to the instance.", - "properties": { - "acceleratorCount": { - "type": "integer", - "description": "The number of the guest accelerator cards exposed to this instance.", - "format": "int32" - }, - "acceleratorType": { - "type": "string", - "description": "Full or partial URL of the accelerator type resource to attach to this instance. If you are creating an instance template, specify only the accelerator name." - } - } - }, - "AcceleratorType": { - "id": "AcceleratorType", - "type": "object", - "description": "An Accelerator Type resource. (== resource_for beta.acceleratorTypes ==) (== resource_for v1.acceleratorTypes ==)", - "properties": { - "creationTimestamp": { - "type": "string", - "description": "[Output Only] Creation timestamp in RFC3339 text format." - }, - "deprecated": { - "$ref": "DeprecationStatus", - "description": "[Output Only] The deprecation status associated with this accelerator type." - }, - "description": { - "type": "string", - "description": "[Output Only] An optional textual description of the resource." - }, - "id": { - "type": "string", - "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", - "format": "uint64" - }, - "kind": { - "type": "string", - "description": "[Output Only] The type of the resource. Always compute#acceleratorType for accelerator types.", - "default": "compute#acceleratorType" - }, - "maximumCardsPerInstance": { - "type": "integer", - "description": "[Output Only] Maximum accelerator cards allowed per instance.", - "format": "int32" - }, - "name": { - "type": "string", - "description": "[Output Only] Name of the resource.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined fully-qualified URL for this resource." - }, - "zone": { - "type": "string", - "description": "[Output Only] The name of the zone where the accelerator type resides, such as us-central1-a." - } - } - }, - "AcceleratorTypeAggregatedList": { - "id": "AcceleratorTypeAggregatedList", - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "object", - "description": "A list of AcceleratorTypesScopedList resources.", - "additionalProperties": { - "$ref": "AcceleratorTypesScopedList", - "description": "[Output Only] Name of the scope containing this set of accelerator types." - } - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#acceleratorTypeAggregatedList for aggregated lists of accelerator types.", - "default": "compute#acceleratorTypeAggregatedList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/cloud-platform": { + "description": "View and manage your data across Google Cloud Platform services" + }, + "https://www.googleapis.com/auth/compute": { + "description": "View and manage your Google Compute Engine resources" + }, + "https://www.googleapis.com/auth/compute.readonly": { + "description": "View your Google Compute Engine resources" + }, + "https://www.googleapis.com/auth/devstorage.full_control": { + "description": "Manage your data and permissions in Google Cloud Storage" + }, + "https://www.googleapis.com/auth/devstorage.read_only": { + "description": "View your data in Google Cloud Storage" + }, + "https://www.googleapis.com/auth/devstorage.read_write": { + "description": "Manage your data in Google Cloud Storage" } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." } - } } - } }, - "AcceleratorTypeList": { - "id": "AcceleratorTypeList", - "type": "object", - "description": "Contains a list of accelerator types.", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." + "basePath": "/compute/alpha/projects/", + "baseUrl": "https://www.googleapis.com/compute/alpha/projects/", + "batchPath": "batch/compute/alpha", + "description": "Creates and runs virtual machines on Google Cloud Platform.", + "discoveryVersion": "v1", + "documentationLink": "https://developers.google.com/compute/docs/reference/latest/", + "etag": "\"-iA1DTNe4s-I6JZXPt1t1Ypy8IU/VAqwH2zdQVd7aygvmWC3of0ONyk\"", + "icons": { + "x16": "https://www.google.com/images/icons/product/compute_engine-16.png", + "x32": "https://www.google.com/images/icons/product/compute_engine-32.png" + }, + "id": "compute:alpha", + "kind": "discovery#restDescription", + "name": "compute", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "alt": { + "default": "json", + "description": "Data format for the response.", + "enum": [ + "json" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json" + ], + "location": "query", + "type": "string" }, - "items": { - "type": "array", - "description": "A list of AcceleratorType resources.", - "items": { - "$ref": "AcceleratorType" - } + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "location": "query", + "type": "string" }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#acceleratorTypeList for lists of accelerator types.", - "default": "compute#acceleratorTypeList" + "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" }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", + "location": "query", + "type": "string" + }, + "userIp": { + "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", + "location": "query", + "type": "string" } - } }, - "AcceleratorTypesScopedList": { - "id": "AcceleratorTypesScopedList", - "type": "object", - "properties": { + "protocol": "rest", + "resources": { "acceleratorTypes": { - "type": "array", - "description": "[Output Only] List of accelerator types contained in this scope.", - "items": { - "$ref": "AcceleratorType" - } - }, - "warning": { - "type": "object", - "description": "[Output Only] An informational warning that appears when the accelerator types list is empty.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } + "methods": { + "aggregatedList": { + "description": "Retrieves an aggregated list of accelerator types.", + "httpMethod": "GET", + "id": "compute.acceleratorTypes.aggregatedList", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/aggregated/acceleratorTypes", + "response": { + "$ref": "AcceleratorTypeAggregatedList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "get": { + "description": "Returns the specified accelerator type. Get a list of available accelerator types by making a list() request.", + "httpMethod": "GET", + "id": "compute.acceleratorTypes.get", + "parameterOrder": [ + "project", + "zone", + "acceleratorType" + ], + "parameters": { + "acceleratorType": { + "description": "Name of the accelerator type to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/acceleratorTypes/{acceleratorType}", + "response": { + "$ref": "AcceleratorType" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "list": { + "description": "Retrieves a list of accelerator types available to the specified project.", + "httpMethod": "GET", + "id": "compute.acceleratorTypes.list", + "parameterOrder": [ + "project", + "zone" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/acceleratorTypes", + "response": { + "$ref": "AcceleratorTypeList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." } - } - } - } - }, - "AccessConfig": { - "id": "AccessConfig", - "type": "object", - "description": "An access configuration attached to an instance's network interface. Only one access config per instance is supported.", - "properties": { - "kind": { - "type": "string", - "description": "[Output Only] Type of the resource. Always compute#accessConfig for access configs.", - "default": "compute#accessConfig" }, - "name": { - "type": "string", - "description": "The name of this access configuration. The default and recommended name is External NAT but you can use any arbitrary string you would like. For example, My external IP or Network Access." - }, - "natIP": { - "type": "string", - "description": "An external IP address associated with this instance. Specify an unused static external IP address available to the project or leave this field undefined to use an IP from a shared ephemeral IP address pool. If you specify a static external IP address, it must live in the same region as the zone of the instance." - }, - "networkTier": { - "type": "string", - "description": "This signifies the networking tier used for configuring this access configuration and can only take the following values: PREMIUM, STANDARD.\n\nIf an AccessConfig is specified without a valid external IP address, an ephemeral IP will be created with this networkTier.\n\nIf an AccessConfig with a valid external IP address is specified, it must match that of the networkTier associated with the Address resource owning that IP.", - "enum": [ - "PREMIUM", - "SELECT", - "STANDARD" - ], - "enumDescriptions": [ - "", - "", - "" - ] - }, - "publicDnsName": { - "type": "string", - "description": "[Output Only] The public DNS domain name for the instance." - }, - "publicPtrDomainName": { - "type": "string", - "description": "The DNS domain name for the public PTR record. This field can only be set when the set_public_ptr field is enabled." - }, - "setPublicDns": { - "type": "boolean", - "description": "Specifies whether a public DNS ?A? record should be created for the external IP address of this access configuration." - }, - "setPublicPtr": { - "type": "boolean", - "description": "Specifies whether a public DNS ?PTR? record should be created to map the external IP address of the instance to a DNS domain name." - }, - "type": { - "type": "string", - "description": "The type of configuration. The default and only option is ONE_TO_ONE_NAT.", - "default": "ONE_TO_ONE_NAT", - "enum": [ - "ONE_TO_ONE_NAT" - ], - "enumDescriptions": [ - "" - ] - } - } - }, - "Address": { - "id": "Address", - "type": "object", - "description": "A reserved address resource. (== resource_for beta.addresses ==) (== resource_for v1.addresses ==) (== resource_for beta.globalAddresses ==) (== resource_for v1.globalAddresses ==)", - "properties": { - "address": { - "type": "string", - "description": "The static IP address represented by this resource." - }, - "addressType": { - "type": "string", - "description": "The type of address to reserve, either INTERNAL or EXTERNAL. If unspecified, defaults to EXTERNAL.", - "enum": [ - "DNS_FORWARDING", - "EXTERNAL", - "INTERNAL", - "UNSPECIFIED_TYPE" - ], - "enumDescriptions": [ - "", - "", - "", - "" - ] - }, - "creationTimestamp": { - "type": "string", - "description": "[Output Only] Creation timestamp in RFC3339 text format." - }, - "description": { - "type": "string", - "description": "An optional description of this resource. Provide this property when you create the resource." - }, - "id": { - "type": "string", - "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", - "format": "uint64" - }, - "ipVersion": { - "type": "string", - "description": "The IP Version that will be used by this address. Valid options are IPV4 or IPV6. This can only be specified for a global address.", - "enum": [ - "IPV4", - "IPV6", - "UNSPECIFIED_VERSION" - ], - "enumDescriptions": [ - "", - "", - "" - ] - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of the resource. Always compute#address for addresses.", - "default": "compute#address" - }, - "labelFingerprint": { - "type": "string", - "description": "A fingerprint for the labels being applied to this Address, which is essentially a hash of the labels set used for optimistic locking. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update labels. You must always provide an up-to-date fingerprint hash in order to update or change labels.\n\nTo see the latest fingerprint, make a get() request to retrieve an Address.", - "format": "byte" - }, - "labels": { - "type": "object", - "description": "Labels to apply to this Address resource. These can be later modified by the setLabels method. Each label key/value must comply with RFC1035. Label values may be empty.", - "additionalProperties": { - "type": "string" - } - }, - "name": { - "type": "string", - "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "annotations": { - "required": [ - "compute.addresses.insert" - ] - } - }, - "networkTier": { - "type": "string", - "description": "This signifies the networking tier used for configuring this Address and can only take the following values: PREMIUM , STANDARD.\n\nIf this field is not specified, it is assumed to be PREMIUM.", - "enum": [ - "PREMIUM", - "SELECT", - "STANDARD" - ], - "enumDescriptions": [ - "", - "", - "" - ] - }, - "region": { - "type": "string", - "description": "[Output Only] URL of the region where the regional address resides. This field is not applicable to global addresses." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for the resource." - }, - "status": { - "type": "string", - "description": "[Output Only] The status of the address, which can be one of RESERVING, RESERVED, or IN_USE. An address that is RESERVING is currently in the process of being reserved. A RESERVED address is currently reserved and available to use. An IN_USE address is currently being used by another resource and is not available.", - "enum": [ - "IN_USE", - "RESERVED" - ], - "enumDescriptions": [ - "", - "" - ] - }, - "subnetwork": { - "type": "string", - "description": "The URL of the subnetwork in which to reserve the address. If an IP address is specified, it must be within the subnetwork's IP range. This field can only be used with INTERNAL type with GCE_ENDPOINT/DNS_RESOLVER purposes." - }, - "users": { - "type": "array", - "description": "[Output Only] The URLs of the resources that are using this address.", - "items": { - "type": "string" - } - } - } - }, - "AddressAggregatedList": { - "id": "AddressAggregatedList", - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "object", - "description": "A list of AddressesScopedList resources.", - "additionalProperties": { - "$ref": "AddressesScopedList", - "description": "[Output Only] Name of the scope containing this set of addresses." - } - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#addressAggregatedList for aggregated lists of addresses.", - "default": "compute#addressAggregatedList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "AddressList": { - "id": "AddressList", - "type": "object", - "description": "Contains a list of addresses.", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "array", - "description": "A list of Address resources.", - "items": { - "$ref": "Address" - } - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#addressList for lists of addresses.", - "default": "compute#addressList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "AddressesScopedList": { - "id": "AddressesScopedList", - "type": "object", - "properties": { "addresses": { - "type": "array", - "description": "[Output Only] List of addresses contained in this scope.", - "items": { - "$ref": "Address" - } - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning which replaces the list of addresses when the list is empty.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } + "methods": { + "aggregatedList": { + "description": "Retrieves an aggregated list of addresses.", + "httpMethod": "GET", + "id": "compute.addresses.aggregatedList", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/aggregated/addresses", + "response": { + "$ref": "AddressAggregatedList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "delete": { + "description": "Deletes the specified address resource.", + "httpMethod": "DELETE", + "id": "compute.addresses.delete", + "parameterOrder": [ + "project", + "region", + "address" + ], + "parameters": { + "address": { + "description": "Name of the address resource to delete.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/regions/{region}/addresses/{address}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Returns the specified address resource.", + "httpMethod": "GET", + "id": "compute.addresses.get", + "parameterOrder": [ + "project", + "region", + "address" + ], + "parameters": { + "address": { + "description": "Name of the address resource to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/addresses/{address}", + "response": { + "$ref": "Address" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "description": "Creates an address resource in the specified project using the data included in the request.", + "httpMethod": "POST", + "id": "compute.addresses.insert", + "parameterOrder": [ + "project", + "region" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/regions/{region}/addresses", + "request": { + "$ref": "Address" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "description": "Retrieves a list of addresses contained within the specified region.", + "httpMethod": "GET", + "id": "compute.addresses.list", + "parameterOrder": [ + "project", + "region" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/addresses", + "response": { + "$ref": "AddressList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "setLabels": { + "description": "Sets the labels on an Address. To learn more about labels, read the Labeling Resources documentation.", + "httpMethod": "POST", + "id": "compute.addresses.setLabels", + "parameterOrder": [ + "project", + "region", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "The region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/addresses/{resource}/setLabels", + "request": { + "$ref": "RegionSetLabelsRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource.", + "httpMethod": "POST", + "id": "compute.addresses.testIamPermissions", + "parameterOrder": [ + "project", + "region", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "The name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/addresses/{resource}/testIamPermissions", + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." } - } - } - } - }, - "AliasIpRange": { - "id": "AliasIpRange", - "type": "object", - "description": "An alias IP range attached to an instance's network interface.", - "properties": { - "ipCidrRange": { - "type": "string", - "description": "The IP CIDR range represented by this alias IP range. This IP CIDR range must belong to the specified subnetwork and cannot contain IP addresses reserved by system or used by other network interfaces. This range may be a single IP address (e.g. 10.2.3.4), a netmask (e.g. /24) or a CIDR format string (e.g. 10.1.2.0/24)." }, - "subnetworkRangeName": { - "type": "string", - "description": "Optional subnetwork secondary range name specifying the secondary range from which to allocate the IP CIDR range for this alias IP range. If left unspecified, the primary range of the subnetwork will be used." - } - } - }, - "AttachedDisk": { - "id": "AttachedDisk", - "type": "object", - "description": "An instance-attached disk resource.", - "properties": { - "autoDelete": { - "type": "boolean", - "description": "Specifies whether the disk will be auto-deleted when the instance is deleted (but not when the disk is detached from the instance)." - }, - "boot": { - "type": "boolean", - "description": "Indicates that this is a boot disk. The virtual machine will use the first partition of the disk for its root filesystem." - }, - "deviceName": { - "type": "string", - "description": "Specifies a unique device name of your choice that is reflected into the /dev/disk/by-id/google-* tree of a Linux operating system running within the instance. This name can be used to reference the device for mounting, resizing, and so on, from within the instance.\n\nIf not specified, the server chooses a default device name to apply to this disk, in the form persistent-disks-x, where x is a number assigned by Google Compute Engine. This field is only applicable for persistent disks." - }, - "diskEncryptionKey": { - "$ref": "CustomerEncryptionKey", - "description": "Encrypts or decrypts a disk using a customer-supplied encryption key.\n\nIf you are creating a new disk, this field encrypts the new disk using an encryption key that you provide. If you are attaching an existing disk that is already encrypted, this field decrypts the disk using the customer-supplied encryption key.\n\nIf you encrypt a disk using a customer-supplied key, you must provide the same key again when you attempt to use this resource at a later time. For example, you must provide the key when you create a snapshot or an image from the disk or when you attach the disk to a virtual machine instance.\n\nIf you do not provide an encryption key, then the disk will be encrypted using an automatically generated key and you do not need to provide a key to use the disk later.\n\nInstance templates do not store customer-supplied encryption keys, so you cannot use your own keys to encrypt disks in a managed instance group." - }, - "diskSizeGb": { - "type": "string", - "description": "The size of the disk in base-2 GB. This supersedes disk_size_gb in InitializeParams.", - "format": "int64" - }, - "guestOsFeatures": { - "type": "array", - "description": "A list of features to enable on the guest operating system. Applicable only for bootable images. Read Enabling guest operating system features to see a list of available options.", - "items": { - "$ref": "GuestOsFeature" - } - }, - "index": { - "type": "integer", - "description": "[Output Only] A zero-based index to this disk, where 0 is reserved for the boot disk. If you have many disks attached to an instance, each disk would have a unique index number.", - "format": "int32" - }, - "initializeParams": { - "$ref": "AttachedDiskInitializeParams", - "description": "[Input Only] Specifies the parameters for a new disk that will be created alongside the new instance. Use initialization parameters to create boot disks or local SSDs attached to the new instance.\n\nThis property is mutually exclusive with the source property; you can only define one or the other, but not both." - }, - "interface": { - "type": "string", - "description": "Specifies the disk interface to use for attaching this disk, which is either SCSI or NVME. The default is SCSI. Persistent disks must always use SCSI and the request will fail if you attempt to attach a persistent disk in any other format than SCSI. Local SSDs can use either NVME or SCSI. For performance characteristics of SCSI over NVMe, see Local SSD performance.", - "enum": [ - "NVME", - "SCSI" - ], - "enumDescriptions": [ - "", - "" - ] - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of the resource. Always compute#attachedDisk for attached disks.", - "default": "compute#attachedDisk" - }, - "licenses": { - "type": "array", - "description": "[Output Only] Any valid publicly visible licenses.", - "items": { - "type": "string" - } - }, - "mode": { - "type": "string", - "description": "The mode in which to attach this disk, either READ_WRITE or READ_ONLY. If not specified, the default is to attach the disk in READ_WRITE mode.", - "enum": [ - "READ_ONLY", - "READ_WRITE" - ], - "enumDescriptions": [ - "", - "" - ] - }, - "savedState": { - "type": "string", - "description": "For LocalSSD disks on VM Instances in STOPPED or SUSPENDED state, this field is set to PRESERVED iff the LocalSSD data has been saved to a persistent location by customer request. (see the discard_local_ssd option on Stop/Suspend). Read-only in the api.", - "enum": [ - "DISK_SAVED_STATE_UNSPECIFIED", - "PRESERVED" - ], - "enumDescriptions": [ - "", - "" - ] - }, - "source": { - "type": "string", - "description": "Specifies a valid partial or full URL to an existing Persistent Disk resource. When creating a new instance, one of initializeParams.sourceImage or disks.source is required except for local SSD.\n\nIf desired, you can also attach existing non-root persistent disks using this property. This field is only applicable for persistent disks.\n\nNote that for InstanceTemplate, specify the disk name, not the URL for the disk." - }, - "type": { - "type": "string", - "description": "Specifies the type of the disk, either SCRATCH or PERSISTENT. If not specified, the default is PERSISTENT.", - "enum": [ - "PERSISTENT", - "SCRATCH" - ], - "enumDescriptions": [ - "", - "" - ] - } - } - }, - "AttachedDiskInitializeParams": { - "id": "AttachedDiskInitializeParams", - "type": "object", - "description": "[Input Only] Specifies the parameters for a new disk that will be created alongside the new instance. Use initialization parameters to create boot disks or local SSDs attached to the new instance.\n\nThis property is mutually exclusive with the source property; you can only define one or the other, but not both.", - "properties": { - "diskName": { - "type": "string", - "description": "Specifies the disk name. If not specified, the default is to use the name of the instance." - }, - "diskSizeGb": { - "type": "string", - "description": "Specifies the size of the disk in base-2 GB.", - "format": "int64" - }, - "diskStorageType": { - "type": "string", - "description": "[Deprecated] Storage type of the disk.", - "enum": [ - "HDD", - "SSD" - ], - "enumDescriptions": [ - "", - "" - ] - }, - "diskType": { - "type": "string", - "description": "Specifies the disk type to use to create the instance. If not specified, the default is pd-standard, specified using the full URL. For example:\n\nhttps://www.googleapis.com/compute/v1/projects/project/zones/zone/diskTypes/pd-standard \n\nOther values include pd-ssd and local-ssd. If you define this field, you can provide either the full or partial URL. For example, the following are valid values: \n- https://www.googleapis.com/compute/v1/projects/project/zones/zone/diskTypes/diskType \n- projects/project/zones/zone/diskTypes/diskType \n- zones/zone/diskTypes/diskType Note that for InstanceTemplate, this is the name of the disk type, not URL." - }, - "labels": { - "type": "object", - "description": "Labels to apply to this disk. These can be later modified by the disks.setLabels method. This field is only applicable for persistent disks.", - "additionalProperties": { - "type": "string" - } - }, - "sourceImage": { - "type": "string", - "description": "The source image to create this disk. When creating a new instance, one of initializeParams.sourceImage or disks.source is required except for local SSD.\n\nTo create a disk with one of the public operating system images, specify the image by its family name. For example, specify family/debian-8 to use the latest Debian 8 image:\n\nprojects/debian-cloud/global/images/family/debian-8 \n\nAlternatively, use a specific version of a public operating system image:\n\nprojects/debian-cloud/global/images/debian-8-jessie-vYYYYMMDD \n\nTo create a disk with a custom image that you created, specify the image name in the following format:\n\nglobal/images/my-custom-image \n\nYou can also specify a custom image by its image family, which returns the latest version of the image in that family. Replace the image name with family/family-name:\n\nglobal/images/family/my-image-family \n\nIf the source image is deleted later, this field will not be set." - }, - "sourceImageEncryptionKey": { - "$ref": "CustomerEncryptionKey", - "description": "The customer-supplied encryption key of the source image. Required if the source image is protected by a customer-supplied encryption key.\n\nInstance templates do not store customer-supplied encryption keys, so you cannot create disks for instances in a managed instance group if the source images are encrypted with your own keys." - } - } - }, - "AuditConfig": { - "id": "AuditConfig", - "type": "object", - "description": "Specifies the audit configuration for a service. The configuration determines which permission types are logged, and what identities, if any, are exempted from logging. An AuditConfig must have one or more AuditLogConfigs.\n\nIf there are AuditConfigs for both `allServices` and a specific service, the union of the two AuditConfigs is used for that service: the log_types specified in each AuditConfig are enabled, and the exempted_members in each AuditConfig are exempted.\n\nExample Policy with multiple AuditConfigs:\n\n{ \"audit_configs\": [ { \"service\": \"allServices\" \"audit_log_configs\": [ { \"log_type\": \"DATA_READ\", \"exempted_members\": [ \"user:foo@gmail.com\" ] }, { \"log_type\": \"DATA_WRITE\", }, { \"log_type\": \"ADMIN_READ\", } ] }, { \"service\": \"fooservice.googleapis.com\" \"audit_log_configs\": [ { \"log_type\": \"DATA_READ\", }, { \"log_type\": \"DATA_WRITE\", \"exempted_members\": [ \"user:bar@gmail.com\" ] } ] } ] }\n\nFor fooservice, this policy enables DATA_READ, DATA_WRITE and ADMIN_READ logging. It also exempts foo@gmail.com from DATA_READ logging, and bar@gmail.com from DATA_WRITE logging.", - "properties": { - "auditLogConfigs": { - "type": "array", - "description": "The configuration for logging of each type of permission.", - "items": { - "$ref": "AuditLogConfig" - } - }, - "exemptedMembers": { - "type": "array", - "description": "", - "items": { - "type": "string" - } - }, - "service": { - "type": "string", - "description": "Specifies a service that will be enabled for audit logging. For example, `storage.googleapis.com`, `cloudsql.googleapis.com`. `allServices` is a special value that covers all services." - } - } - }, - "AuditLogConfig": { - "id": "AuditLogConfig", - "type": "object", - "description": "Provides the configuration for logging a type of permissions. Example:\n\n{ \"audit_log_configs\": [ { \"log_type\": \"DATA_READ\", \"exempted_members\": [ \"user:foo@gmail.com\" ] }, { \"log_type\": \"DATA_WRITE\", } ] }\n\nThis enables 'DATA_READ' and 'DATA_WRITE' logging, while exempting foo@gmail.com from DATA_READ logging.", - "properties": { - "exemptedMembers": { - "type": "array", - "description": "Specifies the identities that do not cause logging for this type of permission. Follows the same format of [Binding.members][].", - "items": { - "type": "string" - } - }, - "logType": { - "type": "string", - "description": "The log type that this config enables.", - "enum": [ - "ADMIN_READ", - "DATA_READ", - "DATA_WRITE", - "LOG_TYPE_UNSPECIFIED" - ], - "enumDescriptions": [ - "", - "", - "", - "" - ] - } - } - }, - "AuthorizationLoggingOptions": { - "id": "AuthorizationLoggingOptions", - "type": "object", - "description": "Authorization-related information used by Cloud Audit Logging.", - "properties": { - "permissionType": { - "type": "string", - "description": "The type of the permission that was checked.", - "enum": [ - "ADMIN_READ", - "ADMIN_WRITE", - "DATA_READ", - "DATA_WRITE", - "PERMISSION_TYPE_UNSPECIFIED" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "" - ] - } - } - }, - "Autoscaler": { - "id": "Autoscaler", - "type": "object", - "description": "Represents an Autoscaler resource. Autoscalers allow you to automatically scale virtual machine instances in managed instance groups according to an autoscaling policy that you define. For more information, read Autoscaling Groups of Instances. (== resource_for beta.autoscalers ==) (== resource_for v1.autoscalers ==) (== resource_for beta.regionAutoscalers ==) (== resource_for v1.regionAutoscalers ==)", - "properties": { - "autoscalingPolicy": { - "$ref": "AutoscalingPolicy", - "description": "The configuration parameters for the autoscaling algorithm. You can define one or more of the policies for an autoscaler: cpuUtilization, customMetricUtilizations, and loadBalancingUtilization.\n\nIf none of these are specified, the default will be to autoscale based on cpuUtilization to 0.6 or 60%." - }, - "creationTimestamp": { - "type": "string", - "description": "[Output Only] Creation timestamp in RFC3339 text format." - }, - "description": { - "type": "string", - "description": "An optional description of this resource. Provide this property when you create the resource." - }, - "id": { - "type": "string", - "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", - "format": "uint64" - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of the resource. Always compute#autoscaler for autoscalers.", - "default": "compute#autoscaler" - }, - "name": { - "type": "string", - "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "annotations": { - "required": [ - "compute.instanceGroups.insert" - ] - } - }, - "recommendedSize": { - "type": "integer", - "description": "[Output Only] Target recommended MIG size computed by autoscaler. Autoscaler calculates recommended MIG size even when autoscaling policy mode is different from ON. This field is empty when autoscaler is not connected to the existing managed instance group or autoscaler did not generate its first prediction.", - "format": "int32" - }, - "region": { - "type": "string", - "description": "[Output Only] URL of the region where the instance group resides (for autoscalers living in regional scope)." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for the resource." - }, - "status": { - "type": "string", - "description": "[Output Only] The status of the autoscaler configuration.", - "enum": [ - "ACTIVE", - "DELETING", - "ERROR", - "PENDING" - ], - "enumDescriptions": [ - "", - "", - "", - "" - ] - }, - "statusDetails": { - "type": "array", - "description": "[Output Only] Human-readable details about the current state of the autoscaler. Read the documentation for Commonly returned status messages for examples of status messages you might encounter.", - "items": { - "$ref": "AutoscalerStatusDetails" - } - }, - "target": { - "type": "string", - "description": "URL of the managed instance group that this autoscaler will scale." - }, - "zone": { - "type": "string", - "description": "[Output Only] URL of the zone where the instance group resides (for autoscalers living in zonal scope)." - } - } - }, - "AutoscalerAggregatedList": { - "id": "AutoscalerAggregatedList", - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "object", - "description": "A list of AutoscalersScopedList resources.", - "additionalProperties": { - "$ref": "AutoscalersScopedList", - "description": "[Output Only] Name of the scope containing this set of autoscalers." - } - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#autoscalerAggregatedList for aggregated lists of autoscalers.", - "default": "compute#autoscalerAggregatedList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "AutoscalerList": { - "id": "AutoscalerList", - "type": "object", - "description": "Contains a list of Autoscaler resources.", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "array", - "description": "A list of Autoscaler resources.", - "items": { - "$ref": "Autoscaler" - } - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#autoscalerList for lists of autoscalers.", - "default": "compute#autoscalerList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "AutoscalerStatusDetails": { - "id": "AutoscalerStatusDetails", - "type": "object", - "properties": { - "message": { - "type": "string", - "description": "The status message." - }, - "type": { - "type": "string", - "description": "The type of error returned.", - "enum": [ - "ALL_INSTANCES_UNHEALTHY", - "BACKEND_SERVICE_DOES_NOT_EXIST", - "CAPPED_AT_MAX_NUM_REPLICAS", - "CUSTOM_METRIC_DATA_POINTS_TOO_SPARSE", - "CUSTOM_METRIC_INVALID", - "MIN_EQUALS_MAX", - "MISSING_CUSTOM_METRIC_DATA_POINTS", - "MISSING_LOAD_BALANCING_DATA_POINTS", - "MORE_THAN_ONE_BACKEND_SERVICE", - "NOT_ENOUGH_QUOTA_AVAILABLE", - "REGION_RESOURCE_STOCKOUT", - "SCALING_TARGET_DOES_NOT_EXIST", - "UNKNOWN", - "UNSUPPORTED_MAX_RATE_LOAD_BALANCING_CONFIGURATION", - "ZONE_RESOURCE_STOCKOUT" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - } - } - }, - "AutoscalersScopedList": { - "id": "AutoscalersScopedList", - "type": "object", - "properties": { "autoscalers": { - "type": "array", - "description": "[Output Only] List of autoscalers contained in this scope.", - "items": { - "$ref": "Autoscaler" - } - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning which replaces the list of autoscalers when the list is empty.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } + "methods": { + "aggregatedList": { + "description": "Retrieves an aggregated list of autoscalers.", + "httpMethod": "GET", + "id": "compute.autoscalers.aggregatedList", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/aggregated/autoscalers", + "response": { + "$ref": "AutoscalerAggregatedList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "delete": { + "description": "Deletes the specified autoscaler.", + "httpMethod": "DELETE", + "id": "compute.autoscalers.delete", + "parameterOrder": [ + "project", + "zone", + "autoscaler" + ], + "parameters": { + "autoscaler": { + "description": "Name of the autoscaler to delete.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "Name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/autoscalers/{autoscaler}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Returns the specified autoscaler resource. Get a list of available autoscalers by making a list() request.", + "httpMethod": "GET", + "id": "compute.autoscalers.get", + "parameterOrder": [ + "project", + "zone", + "autoscaler" + ], + "parameters": { + "autoscaler": { + "description": "Name of the autoscaler to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "zone": { + "description": "Name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/autoscalers/{autoscaler}", + "response": { + "$ref": "Autoscaler" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "description": "Creates an autoscaler in the specified project using the data included in the request.", + "httpMethod": "POST", + "id": "compute.autoscalers.insert", + "parameterOrder": [ + "project", + "zone" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "Name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/autoscalers", + "request": { + "$ref": "Autoscaler" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "description": "Retrieves a list of autoscalers contained within the specified zone.", + "httpMethod": "GET", + "id": "compute.autoscalers.list", + "parameterOrder": [ + "project", + "zone" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "zone": { + "description": "Name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/autoscalers", + "response": { + "$ref": "AutoscalerList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "patch": { + "description": "Updates an autoscaler in the specified project using the data included in the request. This method supports PATCH semantics and uses the JSON merge patch format and processing rules.", + "httpMethod": "PATCH", + "id": "compute.autoscalers.patch", + "parameterOrder": [ + "project", + "zone" + ], + "parameters": { + "autoscaler": { + "description": "Name of the autoscaler to patch.", + "location": "query", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "Name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/autoscalers", + "request": { + "$ref": "Autoscaler" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource.", + "httpMethod": "POST", + "id": "compute.autoscalers.testIamPermissions", + "parameterOrder": [ + "project", + "zone", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/autoscalers/{resource}/testIamPermissions", + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "update": { + "description": "Updates an autoscaler in the specified project using the data included in the request.", + "httpMethod": "PUT", + "id": "compute.autoscalers.update", + "parameterOrder": [ + "project", + "zone" + ], + "parameters": { + "autoscaler": { + "description": "Name of the autoscaler to update.", + "location": "query", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "Name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/autoscalers", + "request": { + "$ref": "Autoscaler" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." } - } - } - } - }, - "AutoscalingPolicy": { - "id": "AutoscalingPolicy", - "type": "object", - "description": "Cloud Autoscaler policy.", - "properties": { - "coolDownPeriodSec": { - "type": "integer", - "description": "The number of seconds that the autoscaler should wait before it starts collecting information from a new instance. This prevents the autoscaler from collecting information when the instance is initializing, during which the collected usage would not be reliable. The default time autoscaler waits is 60 seconds.\n\nVirtual machine initialization times might vary because of numerous factors. We recommend that you test how long an instance may take to initialize. To do this, create an instance and time the startup process.", - "format": "int32" }, - "cpuUtilization": { - "$ref": "AutoscalingPolicyCpuUtilization", - "description": "Defines the CPU utilization policy that allows the autoscaler to scale based on the average CPU utilization of a managed instance group." - }, - "customMetricUtilizations": { - "type": "array", - "description": "Configuration parameters of autoscaling based on a custom metric.", - "items": { - "$ref": "AutoscalingPolicyCustomMetricUtilization" - } - }, - "loadBalancingUtilization": { - "$ref": "AutoscalingPolicyLoadBalancingUtilization", - "description": "Configuration parameters of autoscaling based on load balancer." - }, - "maxNumReplicas": { - "type": "integer", - "description": "The maximum number of instances that the autoscaler can scale up to. This is required when creating or updating an autoscaler. The maximum number of replicas should not be lower than minimal number of replicas.", - "format": "int32" - }, - "minNumReplicas": { - "type": "integer", - "description": "The minimum number of replicas that the autoscaler can scale down to. This cannot be less than 0. If not provided, autoscaler will choose a default value depending on maximum number of instances allowed.", - "format": "int32" - }, - "mode": { - "type": "string", - "description": "Defines operating mode for this policy.", - "enum": [ - "OFF", - "ON", - "ONLY_DOWN", - "ONLY_UP" - ], - "enumDescriptions": [ - "", - "", - "", - "" - ] - }, - "queueBasedScaling": { - "$ref": "AutoscalingPolicyQueueBasedScaling", - "description": "Configuration parameters of autoscaling based on queuing system." - } - } - }, - "AutoscalingPolicyCpuUtilization": { - "id": "AutoscalingPolicyCpuUtilization", - "type": "object", - "description": "CPU utilization policy.", - "properties": { - "utilizationTarget": { - "type": "number", - "description": "The target CPU utilization that the autoscaler should maintain. Must be a float value in the range (0, 1]. If not specified, the default is 0.6.\n\nIf the CPU level is below the target utilization, the autoscaler scales down the number of instances until it reaches the minimum number of instances you specified or until the average CPU of your instances reaches the target utilization.\n\nIf the average CPU is above the target utilization, the autoscaler scales up until it reaches the maximum number of instances you specified or until the average utilization reaches the target utilization.", - "format": "double" - } - } - }, - "AutoscalingPolicyCustomMetricUtilization": { - "id": "AutoscalingPolicyCustomMetricUtilization", - "type": "object", - "description": "Custom utilization metric policy.", - "properties": { - "filter": { - "type": "string", - "description": "A filter string, compatible with a Stackdriver Monitoring filter string for TimeSeries.list API call. This filter is used to select a specific TimeSeries for the purpose of autoscaling and to determine whether the metric is exporting per-instance or per-group data.\n\nFor the filter to be valid for autoscaling purposes, the following rules apply: \n- You can only use the AND operator for joining selectors. \n- You can only use direct equality comparison operator (=) without any functions for each selector. \n- You can specify the metric in both the filter string and in the metric field. However, if specified in both places, the metric must be identical. \n- The monitored resource type determines what kind of values are expected for the metric. If it is a gce_instance, the autoscaler expects the metric to include a separate TimeSeries for each instance in a group. In such a case, you cannot filter on resource labels.\nIf the resource type is any other value, the autoscaler expects this metric to contain values that apply to the entire autoscaled instance group and resource label filtering can be performed to point autoscaler at the correct TimeSeries to scale upon. This is called a per-group metric for the purpose of autoscaling.\n\nIf not specified, the type defaults to gce_instance. \n\nYou should provide a filter that is selective enough to pick just one TimeSeries for the autoscaled group or for each of the instances (if you are using gce_instance resource type). If multiple TimeSeries are returned upon the query execution, the autoscaler will sum their respective values to obtain its scaling value." - }, - "metric": { - "type": "string", - "description": "The identifier (type) of the Stackdriver Monitoring metric. The metric cannot have negative values.\n\nThe metric must have a value type of INT64 or DOUBLE." - }, - "singleInstanceAssignment": { - "type": "number", - "description": "If scaling is based on a per-group metric value that represents the total amount of work to be done or resource usage, set this value to an amount assigned for a single instance of the scaled group. Autoscaler will keep the number of instances proportional to the value of this metric, the metric itself should not change value due to group resizing.\n\nA good metric to use with the target is for example pubsub.googleapis.com/subscription/num_undelivered_messages or a custom metric exporting the total number of requests coming to your instances.\n\nA bad example would be a metric exporting an average or median latency, since this value can't include a chunk assignable to a single instance, it could be better used with utilization_target instead.", - "format": "double" - }, - "utilizationTarget": { - "type": "number", - "description": "The target value of the metric that autoscaler should maintain. This must be a positive value. A utilization metric scales number of virtual machines handling requests to increase or decrease proportionally to the metric.\n\nFor example, a good metric to use as a utilization_target is compute.googleapis.com/instance/network/received_bytes_count. The autoscaler will work to keep this value constant for each of the instances.", - "format": "double" - }, - "utilizationTargetType": { - "type": "string", - "description": "Defines how target utilization value is expressed for a Stackdriver Monitoring metric. Either GAUGE, DELTA_PER_SECOND, or DELTA_PER_MINUTE. If not specified, the default is GAUGE.", - "enum": [ - "DELTA_PER_MINUTE", - "DELTA_PER_SECOND", - "GAUGE" - ], - "enumDescriptions": [ - "", - "", - "" - ] - } - } - }, - "AutoscalingPolicyLoadBalancingUtilization": { - "id": "AutoscalingPolicyLoadBalancingUtilization", - "type": "object", - "description": "Configuration parameters of autoscaling based on load balancing.", - "properties": { - "utilizationTarget": { - "type": "number", - "description": "Fraction of backend capacity utilization (set in HTTP(s) load balancing configuration) that autoscaler should maintain. Must be a positive float value. If not defined, the default is 0.8.", - "format": "double" - } - } - }, - "AutoscalingPolicyQueueBasedScaling": { - "id": "AutoscalingPolicyQueueBasedScaling", - "type": "object", - "description": "Configuration parameters of autoscaling based on queuing system.", - "properties": { - "acceptableBacklogPerInstance": { - "type": "number", - "description": "Scaling based on the average number of tasks in the queue per each active instance. The autoscaler keeps the average number of tasks per instance below this number, based on data collected in the last couple of minutes. The autoscaler will also take into account incoming tasks when calculating when to scale.", - "format": "double" - }, - "cloudPubSub": { - "$ref": "AutoscalingPolicyQueueBasedScalingCloudPubSub", - "description": "Configuration for Cloud Pub/Sub subscription queue." - }, - "singleWorkerThroughputPerSec": { - "type": "number", - "description": "The scaling algorithm will also calculate throughput estimates on its own; if you explicitly provide this value, the autoscaler will take into account your value as well as automatic estimates when deciding how to scale.", - "format": "double" - } - } - }, - "AutoscalingPolicyQueueBasedScalingCloudPubSub": { - "id": "AutoscalingPolicyQueueBasedScalingCloudPubSub", - "type": "object", - "description": "Configuration parameters for scaling based on Cloud Pub/Sub subscription queue.", - "properties": { - "subscription": { - "type": "string", - "description": "Cloud Pub/Sub subscription used for scaling. Provide the partial URL (starting with projects/) or just the subscription name. The subscription must be assigned to the topic specified in topicName and must be in a pull configuration. The subscription must belong to the same project as the Autoscaler." - }, - "topic": { - "type": "string", - "description": "Cloud Pub/Sub topic used for scaling. Provide the partial URL or partial URL (starting with projects/) or just the topic name. The topic must belong to the same project as the Autoscaler resource." - } - } - }, - "Backend": { - "id": "Backend", - "type": "object", - "description": "Message containing information of one individual backend.", - "properties": { - "balancingMode": { - "type": "string", - "description": "Specifies the balancing mode for this backend. For global HTTP(S) or TCP/SSL load balancing, the default is UTILIZATION. Valid values are UTILIZATION, RATE (for HTTP(S)) and CONNECTION (for TCP/SSL).\n\nFor Internal Load Balancing, the default and only supported mode is CONNECTION.", - "enum": [ - "CONNECTION", - "RATE", - "UTILIZATION" - ], - "enumDescriptions": [ - "", - "", - "" - ] - }, - "capacityScaler": { - "type": "number", - "description": "A multiplier applied to the group's maximum servicing capacity (based on UTILIZATION, RATE or CONNECTION). Default value is 1, which means the group will serve up to 100% of its configured capacity (depending on balancingMode). A setting of 0 means the group is completely drained, offering 0% of its available Capacity. Valid range is [0.0,1.0].\n\nThis cannot be used for internal load balancing.", - "format": "float" - }, - "description": { - "type": "string", - "description": "An optional description of this resource. Provide this property when you create the resource." - }, - "failover": { - "type": "boolean", - "description": "This field designates whether this is a failover backend. More than one failover backend can be configured for a given BackendService." - }, - "group": { - "type": "string", - "description": "The fully-qualified URL of a Instance Group resource. This instance group defines the list of instances that serve traffic. Member virtual machine instances from each instance group must live in the same zone as the instance group itself. No two backends in a backend service are allowed to use same Instance Group resource.\n\nNote that you must specify an Instance Group resource using the fully-qualified URL, rather than a partial URL.\n\nWhen the BackendService has load balancing scheme INTERNAL, the instance group must be within the same region as the BackendService." - }, - "maxConnections": { - "type": "integer", - "description": "The max number of simultaneous connections for the group. Can be used with either CONNECTION or UTILIZATION balancing modes. For CONNECTION mode, either maxConnections or maxConnectionsPerInstance must be set.\n\nThis cannot be used for internal load balancing.", - "format": "int32" - }, - "maxConnectionsPerEndpoint": { - "type": "integer", - "description": "The max number of simultaneous connections that a single backend network endpoint can handle. This is used to calculate the capacity of the group. Can be used in either CONNECTION or UTILIZATION balancing modes. For CONNECTION mode, either maxConnections or maxConnectionsPerEndpoint must be set.\n\nThis cannot be used for internal load balancing.", - "format": "int32" - }, - "maxConnectionsPerInstance": { - "type": "integer", - "description": "The max number of simultaneous connections that a single backend instance can handle. This is used to calculate the capacity of the group. Can be used in either CONNECTION or UTILIZATION balancing modes. For CONNECTION mode, either maxConnections or maxConnectionsPerInstance must be set.\n\nThis cannot be used for internal load balancing.", - "format": "int32" - }, - "maxRate": { - "type": "integer", - "description": "The max requests per second (RPS) of the group. Can be used with either RATE or UTILIZATION balancing modes, but required if RATE mode. For RATE mode, either maxRate or maxRatePerInstance must be set.\n\nThis cannot be used for internal load balancing.", - "format": "int32" - }, - "maxRatePerEndpoint": { - "type": "number", - "description": "The max requests per second (RPS) that a single backend network endpoint can handle. This is used to calculate the capacity of the group. Can be used in either balancing mode. For RATE mode, either maxRate or maxRatePerEndpoint must be set.\n\nThis cannot be used for internal load balancing.", - "format": "float" - }, - "maxRatePerInstance": { - "type": "number", - "description": "The max requests per second (RPS) that a single backend instance can handle. This is used to calculate the capacity of the group. Can be used in either balancing mode. For RATE mode, either maxRate or maxRatePerInstance must be set.\n\nThis cannot be used for internal load balancing.", - "format": "float" - }, - "maxUtilization": { - "type": "number", - "description": "Used when balancingMode is UTILIZATION. This ratio defines the CPU utilization target for the group. The default is 0.8. Valid range is [0.0, 1.0].\n\nThis cannot be used for internal load balancing.", - "format": "float" - } - } - }, - "BackendBucket": { - "id": "BackendBucket", - "type": "object", - "description": "A BackendBucket resource. This resource defines a Cloud Storage bucket.", - "properties": { - "bucketName": { - "type": "string", - "description": "Cloud Storage bucket name." - }, - "cdnPolicy": { - "$ref": "BackendBucketCdnPolicy", - "description": "Cloud CDN Coniguration for this BackendBucket." - }, - "creationTimestamp": { - "type": "string", - "description": "[Output Only] Creation timestamp in RFC3339 text format." - }, - "description": { - "type": "string", - "description": "An optional textual description of the resource; provided by the client when the resource is created." - }, - "enableCdn": { - "type": "boolean", - "description": "If true, enable Cloud CDN for this BackendBucket." - }, - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server.", - "format": "uint64" - }, - "kind": { - "type": "string", - "description": "Type of the resource.", - "default": "compute#backendBucket" - }, - "name": { - "type": "string", - "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for the resource." - } - } - }, - "BackendBucketCdnPolicy": { - "id": "BackendBucketCdnPolicy", - "type": "object", - "description": "Message containing Cloud CDN configuration for a backend bucket.", - "properties": { - "signedUrlCacheMaxAgeSec": { - "type": "string", - "description": "Number of seconds up to which the response to a signed URL request will be cached in the CDN. After this time period, the Signed URL will be revalidated before being served. Defaults to 1hr (3600s). If this field is set, Cloud CDN will internally act as though all responses from this bucket had a ?Cache-Control: public, max-age=[TTL]? header, regardless of any existing Cache-Control header. The actual headers served in responses will not be altered.", - "format": "int64" - }, - "signedUrlKeyNames": { - "type": "array", - "description": "[Output Only] Names of the keys currently configured for Cloud CDN Signed URL on this backend bucket.", - "items": { - "type": "string" - } - } - } - }, - "BackendBucketList": { - "id": "BackendBucketList", - "type": "object", - "description": "Contains a list of BackendBucket resources.", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "array", - "description": "A list of BackendBucket resources.", - "items": { - "$ref": "BackendBucket" - } - }, - "kind": { - "type": "string", - "description": "Type of resource.", - "default": "compute#backendBucketList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } + "backendBuckets": { + "methods": { + "addSignedUrlKey": { + "description": "Adds the given Signed URL Key to the backend bucket.", + "httpMethod": "POST", + "id": "compute.backendBuckets.addSignedUrlKey", + "parameterOrder": [ + "project", + "backendBucket" + ], + "parameters": { + "backendBucket": { + "description": "Name of the BackendBucket resource to which the Signed URL Key should be added. The name should conform to RFC1035.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/backendBuckets/{backendBucket}/addSignedUrlKey", + "request": { + "$ref": "SignedUrlKey" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "delete": { + "description": "Deletes the specified BackendBucket resource.", + "httpMethod": "DELETE", + "id": "compute.backendBuckets.delete", + "parameterOrder": [ + "project", + "backendBucket" + ], + "parameters": { + "backendBucket": { + "description": "Name of the BackendBucket resource to delete.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/backendBuckets/{backendBucket}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "deleteSignedUrlKey": { + "description": "Deletes the given Signed URL Key from the backend bucket.", + "httpMethod": "POST", + "id": "compute.backendBuckets.deleteSignedUrlKey", + "parameterOrder": [ + "project", + "backendBucket", + "keyName" + ], + "parameters": { + "backendBucket": { + "description": "Name of the BackendBucket resource to which the Signed URL Key should be added. The name should conform to RFC1035.", + "location": "path", + "required": true, + "type": "string" + }, + "keyName": { + "description": "The name of the Signed URL Key to delete.", + "location": "query", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/backendBuckets/{backendBucket}/deleteSignedUrlKey", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Returns the specified BackendBucket resource. Get a list of available backend buckets by making a list() request.", + "httpMethod": "GET", + "id": "compute.backendBuckets.get", + "parameterOrder": [ + "project", + "backendBucket" + ], + "parameters": { + "backendBucket": { + "description": "Name of the BackendBucket resource to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/backendBuckets/{backendBucket}", + "response": { + "$ref": "BackendBucket" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "getIamPolicy": { + "description": "Gets the access control policy for a resource. May be empty if no such policy or resource exists.", + "httpMethod": "GET", + "id": "compute.backendBuckets.getIamPolicy", + "parameterOrder": [ + "project", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "[a-z0-9](?:[-a-z0-9_]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/backendBuckets/{resource}/getIamPolicy", + "response": { + "$ref": "Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "description": "Creates a BackendBucket resource in the specified project using the data included in the request.", + "httpMethod": "POST", + "id": "compute.backendBuckets.insert", + "parameterOrder": [ + "project" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/backendBuckets", + "request": { + "$ref": "BackendBucket" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "description": "Retrieves the list of BackendBucket resources available to the specified project.", + "httpMethod": "GET", + "id": "compute.backendBuckets.list", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/backendBuckets", + "response": { + "$ref": "BackendBucketList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "patch": { + "description": "Updates the specified BackendBucket resource with the data included in the request. This method supports PATCH semantics and uses the JSON merge patch format and processing rules.", + "httpMethod": "PATCH", + "id": "compute.backendBuckets.patch", + "parameterOrder": [ + "project", + "backendBucket" + ], + "parameters": { + "backendBucket": { + "description": "Name of the BackendBucket resource to patch.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/backendBuckets/{backendBucket}", + "request": { + "$ref": "BackendBucket" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setIamPolicy": { + "description": "Sets the access control policy on the specified resource. Replaces any existing policy.", + "httpMethod": "POST", + "id": "compute.backendBuckets.setIamPolicy", + "parameterOrder": [ + "project", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "[a-z0-9](?:[-a-z0-9_]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/backendBuckets/{resource}/setIamPolicy", + "request": { + "$ref": "Policy" + }, + "response": { + "$ref": "Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource.", + "httpMethod": "POST", + "id": "compute.backendBuckets.testIamPermissions", + "parameterOrder": [ + "project", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "(?:[-a-z0-9_]{0,62}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/backendBuckets/{resource}/testIamPermissions", + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "update": { + "description": "Updates the specified BackendBucket resource with the data included in the request.", + "httpMethod": "PUT", + "id": "compute.backendBuckets.update", + "parameterOrder": [ + "project", + "backendBucket" + ], + "parameters": { + "backendBucket": { + "description": "Name of the BackendBucket resource to update.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/backendBuckets/{backendBucket}", + "request": { + "$ref": "BackendBucket" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." } - } - } - } - }, - "BackendService": { - "id": "BackendService", - "type": "object", - "description": "A BackendService resource. This resource defines a group of backend virtual machines and their serving capacity. (== resource_for v1.backendService ==) (== resource_for beta.backendService ==)", - "properties": { - "affinityCookieTtlSec": { - "type": "integer", - "description": "Lifetime of cookies in seconds if session_affinity is GENERATED_COOKIE. If set to 0, the cookie is non-persistent and lasts only until the end of the browser session (or equivalent). The maximum allowed value for TTL is one day.\n\nWhen the load balancing scheme is INTERNAL, this field is not used.", - "format": "int32" }, - "appEngineBackend": { - "$ref": "BackendServiceAppEngineBackend", - "description": "Directs request to an App Engine app. cloudFunctionBackend and backends[] must be empty if this is set." - }, - "backends": { - "type": "array", - "description": "The list of backends that serve this BackendService.", - "items": { - "$ref": "Backend" - } - }, - "cdnPolicy": { - "$ref": "BackendServiceCdnPolicy", - "description": "Cloud CDN configuration for this BackendService." - }, - "cloudFunctionBackend": { - "$ref": "BackendServiceCloudFunctionBackend", - "description": "Directs request to a cloud function. appEngineBackend and backends[] must be empty if this is set." - }, - "connectionDraining": { - "$ref": "ConnectionDraining" - }, - "creationTimestamp": { - "type": "string", - "description": "[Output Only] Creation timestamp in RFC3339 text format." - }, - "customRequestHeaders": { - "type": "array", - "description": "Headers that the HTTP/S load balancer should add to proxied requests.", - "items": { - "type": "string" - } - }, - "description": { - "type": "string", - "description": "An optional description of this resource. Provide this property when you create the resource." - }, - "enableCDN": { - "type": "boolean", - "description": "If true, enable Cloud CDN for this BackendService.\n\nWhen the load balancing scheme is INTERNAL, this field is not used." - }, - "failoverPolicy": { - "$ref": "BackendServiceFailoverPolicy" - }, - "fingerprint": { - "type": "string", - "description": "Fingerprint of this resource. A hash of the contents stored in this object. This field is used in optimistic locking. This field will be ignored when inserting a BackendService. An up-to-date fingerprint must be provided in order to update the BackendService.", - "format": "byte" - }, - "healthChecks": { - "type": "array", - "description": "The list of URLs to the HttpHealthCheck or HttpsHealthCheck resource for health checking this BackendService. Currently at most one health check can be specified, and a health check is required for Compute Engine backend services. A health check must not be specified for App Engine backend and Cloud Function backend.\n\nFor internal load balancing, a URL to a HealthCheck resource must be specified instead.", - "items": { - "type": "string" - } - }, - "iap": { - "$ref": "BackendServiceIAP" - }, - "id": { - "type": "string", - "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", - "format": "uint64" - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#backendService for backend services.", - "default": "compute#backendService" - }, - "loadBalancingScheme": { - "type": "string", - "description": "Indicates whether the backend service will be used with internal or external load balancing. A backend service created for one type of load balancing cannot be used with the other. Possible values are INTERNAL and EXTERNAL.", - "enum": [ - "EXTERNAL", - "INTERNAL", - "INVALID_LOAD_BALANCING_SCHEME" - ], - "enumDescriptions": [ - "", - "", - "" - ] - }, - "name": { - "type": "string", - "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" - }, - "port": { - "type": "integer", - "description": "Deprecated in favor of portName. The TCP port to connect on the backend. The default value is 80.\n\nThis cannot be used for internal load balancing.", - "format": "int32" - }, - "portName": { - "type": "string", - "description": "Name of backend port. The same name should appear in the instance groups referenced by this service. Required when the load balancing scheme is EXTERNAL.\n\nWhen the load balancing scheme is INTERNAL, this field is not used." - }, - "protocol": { - "type": "string", - "description": "The protocol this BackendService uses to communicate with backends.\n\nPossible values are HTTP, HTTPS, TCP, and SSL. The default is HTTP.\n\nFor internal load balancing, the possible values are TCP and UDP, and the default is TCP.", - "enum": [ - "HTTP", - "HTTP2", - "HTTPS", - "SSL", - "TCP", - "UDP" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "" - ] - }, - "region": { - "type": "string", - "description": "[Output Only] URL of the region where the regional backend service resides. This field is not applicable to global backend services." - }, - "securityPolicy": { - "type": "string", - "description": "[Output Only] The resource URL for the security policy associated with this backend service." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for the resource." - }, - "sessionAffinity": { - "type": "string", - "description": "Type of session affinity to use. The default is NONE.\n\nWhen the load balancing scheme is EXTERNAL, can be NONE, CLIENT_IP, or GENERATED_COOKIE.\n\nWhen the load balancing scheme is INTERNAL, can be NONE, CLIENT_IP, CLIENT_IP_PROTO, or CLIENT_IP_PORT_PROTO.\n\nWhen the protocol is UDP, this field is not used.", - "enum": [ - "CLIENT_IP", - "CLIENT_IP_PORT_PROTO", - "CLIENT_IP_PROTO", - "GENERATED_COOKIE", - "NONE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "" - ] - }, - "timeoutSec": { - "type": "integer", - "description": "How many seconds to wait for the backend before considering it a failed request. Default is 30 seconds.", - "format": "int32" - } - } - }, - "BackendServiceAggregatedList": { - "id": "BackendServiceAggregatedList", - "type": "object", - "description": "Contains a list of BackendServicesScopedList.", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "object", - "description": "A list of BackendServicesScopedList resources.", - "additionalProperties": { - "$ref": "BackendServicesScopedList", - "description": "Name of the scope containing this set of BackendServices." - } - }, - "kind": { - "type": "string", - "description": "Type of resource.", - "default": "compute#backendServiceAggregatedList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "BackendServiceAppEngineBackend": { - "id": "BackendServiceAppEngineBackend", - "type": "object", - "description": "Configuration of a App Engine backend.", - "properties": { - "appEngineService": { - "type": "string", - "description": "Optional. App Engine app service name." - }, - "targetProject": { - "type": "string", - "description": "Required. Project ID of the project hosting the app. This is the project ID of this project. Reference to another project is not allowed." - }, - "version": { - "type": "string", - "description": "Optional. Version of App Engine app service. When empty, App Engine will do its normal traffic split." - } - } - }, - "BackendServiceCdnPolicy": { - "id": "BackendServiceCdnPolicy", - "type": "object", - "description": "Message containing Cloud CDN configuration for a backend service.", - "properties": { - "cacheKeyPolicy": { - "$ref": "CacheKeyPolicy", - "description": "The CacheKeyPolicy for this CdnPolicy." - }, - "signedUrlCacheMaxAgeSec": { - "type": "string", - "description": "Number of seconds up to which the response to a signed URL request will be cached in the CDN. After this time period, the Signed URL will be revalidated before being served. Defaults to 1hr (3600s). If this field is set, Cloud CDN will internally act as though all responses from this backend had a ?Cache-Control: public, max-age=[TTL]? header, regardless of any existing Cache-Control header. The actual headers served in responses will not be altered.", - "format": "int64" - }, - "signedUrlKeyNames": { - "type": "array", - "description": "[Output Only] Names of the keys currently configured for Cloud CDN Signed URL on this backend service.", - "items": { - "type": "string" - } - } - } - }, - "BackendServiceCloudFunctionBackend": { - "id": "BackendServiceCloudFunctionBackend", - "type": "object", - "description": "Configuration of a Cloud Function backend.", - "properties": { - "functionName": { - "type": "string", - "description": "Required. A cloud function name. Special value ?*? represents all cloud functions in the project." - }, - "targetProject": { - "type": "string", - "description": "Required. Project ID of the project hosting the cloud function." - } - } - }, - "BackendServiceFailoverPolicy": { - "id": "BackendServiceFailoverPolicy", - "type": "object", - "properties": { - "disableConnectionDrainOnFailover": { - "type": "boolean", - "description": "On failover or failback, this field indicates whether connection drain will be honored. Setting this to true has the following effect: connections to the old active pool are not drained. Connections to the new active pool use the timeout of 10 min (currently fixed). Setting to false has the following effect: both old and new connections will have a drain timeout of 10 min.\n\nThis can be set to true only if the protocol is TCP.\n\nThe default is false." - }, - "dropTrafficIfUnhealthy": { - "type": "boolean", - "description": "This option is used only when no healthy VMs are detected in the primary and backup instance groups. When set to true, traffic is dropped. When set to false, new connections are sent across all VMs in the primary group.\n\nThe default is false." - }, - "failoverRatio": { - "type": "number", - "description": "The value of the field must be in [0, 1]. If the ratio of the healthy VMs in the primary backend is at or below this number, traffic arriving at the load-balanced IP will be directed to the failover backend.\n\nIn case where 'failoverRatio' is not set or all the VMs in the backup backend are unhealthy, the traffic will be directed back to the primary backend in the \"force\" mode, where traffic will be spread to the healthy VMs with the best effort, or to all VMs when no VM is healthy.\n\nThis field is only used with l4 load balancing.", - "format": "float" - } - } - }, - "BackendServiceGroupHealth": { - "id": "BackendServiceGroupHealth", - "type": "object", - "properties": { - "healthStatus": { - "type": "array", - "items": { - "$ref": "HealthStatus" - } - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#backendServiceGroupHealth for the health of backend services.", - "default": "compute#backendServiceGroupHealth" - } - } - }, - "BackendServiceIAP": { - "id": "BackendServiceIAP", - "type": "object", - "description": "Identity-Aware Proxy", - "properties": { - "enabled": { - "type": "boolean" - }, - "oauth2ClientId": { - "type": "string" - }, - "oauth2ClientSecret": { - "type": "string" - }, - "oauth2ClientSecretSha256": { - "type": "string", - "description": "[Output Only] SHA256 hash value for the field oauth2_client_secret above." - } - } - }, - "BackendServiceList": { - "id": "BackendServiceList", - "type": "object", - "description": "Contains a list of BackendService resources.", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "array", - "description": "A list of BackendService resources.", - "items": { - "$ref": "BackendService" - } - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#backendServiceList for lists of backend services.", - "default": "compute#backendServiceList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "BackendServiceReference": { - "id": "BackendServiceReference", - "type": "object", - "properties": { - "backendService": { - "type": "string" - } - } - }, - "BackendServicesScopedList": { - "id": "BackendServicesScopedList", - "type": "object", - "properties": { "backendServices": { - "type": "array", - "description": "List of BackendServices contained in this scope.", - "items": { - "$ref": "BackendService" - } - }, - "warning": { - "type": "object", - "description": "Informational warning which replaces the list of backend services when the list is empty.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } + "methods": { + "addSignedUrlKey": { + "description": "Adds the given Signed URL Key to the specified backend service.", + "httpMethod": "POST", + "id": "compute.backendServices.addSignedUrlKey", + "parameterOrder": [ + "project", + "backendService" + ], + "parameters": { + "backendService": { + "description": "Name of the BackendService resource to which the Signed URL Key should be added. The name should conform to RFC1035.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/backendServices/{backendService}/addSignedUrlKey", + "request": { + "$ref": "SignedUrlKey" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "aggregatedList": { + "description": "Retrieves the list of all BackendService resources, regional and global, available to the specified project.", + "httpMethod": "GET", + "id": "compute.backendServices.aggregatedList", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Name of the project scoping this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/aggregated/backendServices", + "response": { + "$ref": "BackendServiceAggregatedList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "delete": { + "description": "Deletes the specified BackendService resource.", + "httpMethod": "DELETE", + "id": "compute.backendServices.delete", + "parameterOrder": [ + "project", + "backendService" + ], + "parameters": { + "backendService": { + "description": "Name of the BackendService resource to delete.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/backendServices/{backendService}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "deleteSignedUrlKey": { + "description": "Deletes the given Signed URL Key from the specified backend service.", + "httpMethod": "POST", + "id": "compute.backendServices.deleteSignedUrlKey", + "parameterOrder": [ + "project", + "backendService", + "keyName" + ], + "parameters": { + "backendService": { + "description": "Name of the BackendService resource to which the Signed URL Key should be added. The name should conform to RFC1035.", + "location": "path", + "required": true, + "type": "string" + }, + "keyName": { + "description": "The name of the Signed URL Key to delete.", + "location": "query", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/backendServices/{backendService}/deleteSignedUrlKey", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Returns the specified BackendService resource. Get a list of available backend services by making a list() request.", + "httpMethod": "GET", + "id": "compute.backendServices.get", + "parameterOrder": [ + "project", + "backendService" + ], + "parameters": { + "backendService": { + "description": "Name of the BackendService resource to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/backendServices/{backendService}", + "response": { + "$ref": "BackendService" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "getHealth": { + "description": "Gets the most recent health check results for this BackendService.", + "httpMethod": "POST", + "id": "compute.backendServices.getHealth", + "parameterOrder": [ + "project", + "backendService" + ], + "parameters": { + "backendService": { + "description": "Name of the BackendService resource to which the queried instance belongs.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/backendServices/{backendService}/getHealth", + "request": { + "$ref": "ResourceGroupReference" + }, + "response": { + "$ref": "BackendServiceGroupHealth" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "description": "Creates a BackendService resource in the specified project using the data included in the request. There are several restrictions and guidelines to keep in mind when creating a backend service. Read Restrictions and Guidelines for more information.", + "httpMethod": "POST", + "id": "compute.backendServices.insert", + "parameterOrder": [ + "project" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/backendServices", + "request": { + "$ref": "BackendService" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "description": "Retrieves the list of BackendService resources available to the specified project.", + "httpMethod": "GET", + "id": "compute.backendServices.list", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/backendServices", + "response": { + "$ref": "BackendServiceList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "patch": { + "description": "Patches the specified BackendService resource with the data included in the request. There are several restrictions and guidelines to keep in mind when updating a backend service. Read Restrictions and Guidelines for more information. This method supports PATCH semantics and uses the JSON merge patch format and processing rules.", + "httpMethod": "PATCH", + "id": "compute.backendServices.patch", + "parameterOrder": [ + "project", + "backendService" + ], + "parameters": { + "backendService": { + "description": "Name of the BackendService resource to patch.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/backendServices/{backendService}", + "request": { + "$ref": "BackendService" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setSecurityPolicy": { + "description": "Sets the security policy for the specified backend service.", + "httpMethod": "POST", + "id": "compute.backendServices.setSecurityPolicy", + "parameterOrder": [ + "project", + "backendService" + ], + "parameters": { + "backendService": { + "description": "Name of the BackendService resource to which the security policy should be set. The name should conform to RFC1035.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/backendServices/{backendService}/setSecurityPolicy", + "request": { + "$ref": "SecurityPolicyReference" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource.", + "httpMethod": "POST", + "id": "compute.backendServices.testIamPermissions", + "parameterOrder": [ + "project", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "(?:[-a-z0-9_]{0,62}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/backendServices/{resource}/testIamPermissions", + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "update": { + "description": "Updates the specified BackendService resource with the data included in the request. There are several restrictions and guidelines to keep in mind when updating a backend service. Read Restrictions and Guidelines for more information.", + "httpMethod": "PUT", + "id": "compute.backendServices.update", + "parameterOrder": [ + "project", + "backendService" + ], + "parameters": { + "backendService": { + "description": "Name of the BackendService resource to update.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/backendServices/{backendService}", + "request": { + "$ref": "BackendService" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." } - } - } - } - }, - "Binding": { - "id": "Binding", - "type": "object", - "description": "Associates `members` with a `role`.", - "properties": { - "condition": { - "$ref": "Expr", - "description": "The condition that is associated with this binding. NOTE: an unsatisfied condition will not allow user access via current binding. Different bindings, including their conditions, are examined independently. This field is GOOGLE_INTERNAL." }, - "members": { - "type": "array", - "description": "Specifies the identities requesting access for a Cloud Platform resource. `members` can have the following values:\n\n* `allUsers`: A special identifier that represents anyone who is on the internet; with or without a Google account.\n\n* `allAuthenticatedUsers`: A special identifier that represents anyone who is authenticated with a Google account or a service account.\n\n* `user:{emailid}`: An email address that represents a specific Google account. For example, `alice@gmail.com` or `joe@example.com`.\n\n\n\n* `serviceAccount:{emailid}`: An email address that represents a service account. For example, `my-other-app@appspot.gserviceaccount.com`.\n\n* `group:{emailid}`: An email address that represents a Google group. For example, `admins@example.com`.\n\n\n\n* `domain:{domain}`: A Google Apps domain name that represents all the users of that domain. For example, `google.com` or `example.com`.", - "items": { - "type": "string" - } - }, - "role": { - "type": "string", - "description": "Role that is assigned to `members`. For example, `roles/viewer`, `roles/editor`, or `roles/owner`." - } - } - }, - "CacheInvalidationRule": { - "id": "CacheInvalidationRule", - "type": "object", - "properties": { - "host": { - "type": "string", - "description": "If set, this invalidation rule will only apply to requests with a Host header matching host." - }, - "path": { - "type": "string" - } - } - }, - "CacheKeyPolicy": { - "id": "CacheKeyPolicy", - "type": "object", - "description": "Message containing what to include in the cache key for a request for Cloud CDN.", - "properties": { - "includeHost": { - "type": "boolean", - "description": "If true, requests to different hosts will be cached separately." - }, - "includeProtocol": { - "type": "boolean", - "description": "If true, http and https requests will be cached separately." - }, - "includeQueryString": { - "type": "boolean", - "description": "If true, include query string parameters in the cache key according to query_string_whitelist and query_string_blacklist. If neither is set, the entire query string will be included. If false, the query string will be excluded from the cache key entirely." - }, - "queryStringBlacklist": { - "type": "array", - "description": "Names of query string parameters to exclude in cache keys. All other parameters will be included. Either specify query_string_whitelist or query_string_blacklist, not both. '&' and '=' will be percent encoded and not treated as delimiters.", - "items": { - "type": "string" - } - }, - "queryStringWhitelist": { - "type": "array", - "description": "Names of query string parameters to include in cache keys. All other parameters will be excluded. Either specify query_string_whitelist or query_string_blacklist, not both. '&' and '=' will be percent encoded and not treated as delimiters.", - "items": { - "type": "string" - } - } - } - }, - "Commitment": { - "id": "Commitment", - "type": "object", - "description": "Represents a Commitment resource. Creating a Commitment resource means that you are purchasing a committed use contract with an explicit start and end time. You can create commitments based on vCPUs and memory usage and receive discounted rates. For full details, read Signing Up for Committed Use Discounts.\n\nCommitted use discounts are subject to Google Cloud Platform's Service Specific Terms. By purchasing a committed use discount, you agree to these terms. Committed use discounts will not renew, so you must purchase a new commitment to continue receiving discounts. (== resource_for beta.commitments ==) (== resource_for v1.commitments ==)", - "properties": { - "creationTimestamp": { - "type": "string", - "description": "[Output Only] Creation timestamp in RFC3339 text format." - }, - "description": { - "type": "string", - "description": "An optional description of this resource. Provide this property when you create the resource." - }, - "endTimestamp": { - "type": "string", - "description": "[Output Only] Commitment end time in RFC3339 text format." - }, - "id": { - "type": "string", - "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", - "format": "uint64" - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of the resource. Always compute#commitment for commitments.", - "default": "compute#commitment" - }, - "name": { - "type": "string", - "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" - }, - "plan": { - "type": "string", - "description": "The plan for this commitment, which determines duration and discount rate. The currently supported plans are TWELVE_MONTH (1 year), and THIRTY_SIX_MONTH (3 years).", - "enum": [ - "INVALID", - "THIRTY_SIX_MONTH", - "TWELVE_MONTH" - ], - "enumDescriptions": [ - "", - "", - "" - ] - }, - "region": { - "type": "string", - "description": "[Output Only] URL of the region where this commitment may be used." - }, - "resources": { - "type": "array", - "description": "List of commitment amounts for particular resources. Note that VCPU and MEMORY resource commitments must occur together.", - "items": { - "$ref": "ResourceCommitment" - } - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for the resource." - }, - "startTimestamp": { - "type": "string", - "description": "[Output Only] Commitment start time in RFC3339 text format." - }, - "status": { - "type": "string", - "description": "[Output Only] Status of the commitment with regards to eventual expiration (each commitment has an end date defined). One of the following values: NOT_YET_ACTIVE, ACTIVE, EXPIRED.", - "enum": [ - "ACTIVE", - "CREATING", - "EXPIRED", - "NOT_YET_ACTIVE" - ], - "enumDescriptions": [ - "", - "", - "", - "" - ] - }, - "statusMessage": { - "type": "string", - "description": "[Output Only] An optional, human-readable explanation of the status." - } - } - }, - "CommitmentAggregatedList": { - "id": "CommitmentAggregatedList", - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "object", - "description": "A list of CommitmentsScopedList resources.", - "additionalProperties": { - "$ref": "CommitmentsScopedList", - "description": "[Output Only] Name of the scope containing this set of commitments." - } - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#commitmentAggregatedList for aggregated lists of commitments.", - "default": "compute#commitmentAggregatedList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "CommitmentList": { - "id": "CommitmentList", - "type": "object", - "description": "Contains a list of Commitment resources.", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "array", - "description": "A list of Commitment resources.", - "items": { - "$ref": "Commitment" - } - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#commitmentList for lists of commitments.", - "default": "compute#commitmentList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "CommitmentsScopedList": { - "id": "CommitmentsScopedList", - "type": "object", - "properties": { - "commitments": { - "type": "array", - "description": "[Output Only] List of commitments contained in this scope.", - "items": { - "$ref": "Commitment" - } - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning which replaces the list of commitments when the list is empty.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "Condition": { - "id": "Condition", - "type": "object", - "description": "A condition to be met.", - "properties": { - "iam": { - "type": "string", - "description": "Trusted attributes supplied by the IAM system.", - "enum": [ - "APPROVER", - "ATTRIBUTION", - "AUTHORITY", - "JUSTIFICATION_TYPE", - "NO_ATTR", - "SECURITY_REALM" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "" - ] - }, - "op": { - "type": "string", - "description": "An operator to apply the subject with.", - "enum": [ - "DISCHARGED", - "EQUALS", - "IN", - "NOT_EQUALS", - "NOT_IN", - "NO_OP" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "" - ] - }, - "svc": { - "type": "string", - "description": "Trusted attributes discharged by the service." - }, - "sys": { - "type": "string", - "description": "Trusted attributes supplied by any service that owns resources and uses the IAM system for access control.", - "enum": [ - "IP", - "NAME", - "NO_ATTR", - "REGION", - "SERVICE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "" - ] - }, - "value": { - "type": "string", - "description": "DEPRECATED. Use 'values' instead." - }, - "values": { - "type": "array", - "description": "The objects of the condition. This is mutually exclusive with 'value'.", - "items": { - "type": "string" - } - } - } - }, - "ConnectionDraining": { - "id": "ConnectionDraining", - "type": "object", - "description": "Message containing connection draining configuration.", - "properties": { - "drainingTimeoutSec": { - "type": "integer", - "description": "Time for which instance will be drained (not accept new connections, but still work to finish started).", - "format": "int32" - } - } - }, - "CustomerEncryptionKey": { - "id": "CustomerEncryptionKey", - "type": "object", - "description": "Represents a customer-supplied encryption key", - "properties": { - "kmsKeyName": { - "type": "string", - "description": "The name of the encryption key that is stored in Google Cloud KMS." - }, - "rawKey": { - "type": "string", - "description": "Specifies a 256-bit customer-supplied encryption key, encoded in RFC 4648 base64 to either encrypt or decrypt this resource." - }, - "rsaEncryptedKey": { - "type": "string", - "description": "Specifies an RFC 4648 base64 encoded, RSA-wrapped 2048-bit customer-supplied encryption key to either encrypt or decrypt this resource.\n\nThe key must meet the following requirements before you can provide it to Compute Engine: \n- The key is wrapped using a RSA public key certificate provided by Google. \n- After being wrapped, the key must be encoded in RFC 4648 base64 encoding. Get the RSA public key certificate provided by Google at:\nhttps://cloud-certs.storage.googleapis.com/google-cloud-csek-ingress.pem" - }, - "sha256": { - "type": "string", - "description": "[Output only] The RFC 4648 base64 encoded SHA-256 hash of the customer-supplied encryption key that protects this resource." - } - } - }, - "CustomerEncryptionKeyProtectedDisk": { - "id": "CustomerEncryptionKeyProtectedDisk", - "type": "object", - "properties": { - "diskEncryptionKey": { - "$ref": "CustomerEncryptionKey", - "description": "Decrypts data associated with the disk with a customer-supplied encryption key." - }, - "source": { - "type": "string", - "description": "Specifies a valid partial or full URL to an existing Persistent Disk resource. This field is only applicable for persistent disks." - } - } - }, - "DailyMaintenanceWindow": { - "id": "DailyMaintenanceWindow", - "type": "object", - "description": "Time window specified for daily maintenance operations.", - "properties": { - "daysInCycle": { - "type": "integer", - "description": "Allows to define schedule that runs every nth day of the month.", - "format": "int32" - }, - "duration": { - "type": "string", - "description": "[Output only] Duration of the time window, automatically chosen to be smallest possible in the given scenario." - }, - "startTime": { - "type": "string", - "description": "Time within the maintenance window to start the maintenance operations. It must be in format \"HH:MM?, where HH : [00-23] and MM : [00-59] GMT." - } - } - }, - "DeprecationStatus": { - "id": "DeprecationStatus", - "type": "object", - "description": "Deprecation status for a public resource.", - "properties": { - "deleted": { - "type": "string", - "description": "An optional RFC3339 timestamp on or after which the state of this resource is intended to change to DELETED. This is only informational and the status will not change unless the client explicitly changes it." - }, - "deprecated": { - "type": "string", - "description": "An optional RFC3339 timestamp on or after which the state of this resource is intended to change to DEPRECATED. This is only informational and the status will not change unless the client explicitly changes it." - }, - "obsolete": { - "type": "string", - "description": "An optional RFC3339 timestamp on or after which the state of this resource is intended to change to OBSOLETE. This is only informational and the status will not change unless the client explicitly changes it." - }, - "replacement": { - "type": "string", - "description": "The URL of the suggested replacement for a deprecated resource. The suggested replacement resource must be the same kind of resource as the deprecated resource." - }, - "state": { - "type": "string", - "description": "The deprecation state of this resource. This can be DEPRECATED, OBSOLETE, or DELETED. Operations which create a new resource using a DEPRECATED resource will return successfully, but with a warning indicating the deprecated resource and recommending its replacement. Operations which use OBSOLETE or DELETED resources will be rejected and result in an error.", - "enum": [ - "DELETED", - "DEPRECATED", - "OBSOLETE" - ], - "enumDescriptions": [ - "", - "", - "" - ] - } - } - }, - "Disk": { - "id": "Disk", - "type": "object", - "description": "A Disk resource. (== resource_for beta.disks ==) (== resource_for v1.disks ==)", - "properties": { - "creationTimestamp": { - "type": "string", - "description": "[Output Only] Creation timestamp in RFC3339 text format." - }, - "description": { - "type": "string", - "description": "An optional description of this resource. Provide this property when you create the resource." - }, - "diskEncryptionKey": { - "$ref": "CustomerEncryptionKey", - "description": "Encrypts the disk using a customer-supplied encryption key.\n\nAfter you encrypt a disk with a customer-supplied key, you must provide the same key if you use the disk later (e.g. to create a disk snapshot or an image, or to attach the disk to a virtual machine).\n\nCustomer-supplied encryption keys do not protect access to metadata of the disk.\n\nIf you do not provide an encryption key when creating the disk, then the disk will be encrypted using an automatically generated key and you do not need to provide a key to use the disk later." - }, - "guestOsFeatures": { - "type": "array", - "description": "A list of features to enable on the guest operating system. Applicable only for bootable images. Read Enabling guest operating system features to see a list of available options.", - "items": { - "$ref": "GuestOsFeature" - } - }, - "id": { - "type": "string", - "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", - "format": "uint64" - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of the resource. Always compute#disk for disks.", - "default": "compute#disk" - }, - "labelFingerprint": { - "type": "string", - "description": "A fingerprint for the labels being applied to this disk, which is essentially a hash of the labels set used for optimistic locking. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update labels. You must always provide an up-to-date fingerprint hash in order to update or change labels.\n\nTo see the latest fingerprint, make a get() request to retrieve a disk.", - "format": "byte" - }, - "labels": { - "type": "object", - "description": "Labels to apply to this disk. These can be later modified by the setLabels method.", - "additionalProperties": { - "type": "string" - } - }, - "lastAttachTimestamp": { - "type": "string", - "description": "[Output Only] Last attach timestamp in RFC3339 text format." - }, - "lastDetachTimestamp": { - "type": "string", - "description": "[Output Only] Last detach timestamp in RFC3339 text format." - }, - "licenseCodes": { - "type": "array", - "description": "Integer license codes indicating which licenses are attached to this disk.", - "items": { - "type": "string", - "format": "int64" - } - }, - "licenses": { - "type": "array", - "description": "Any applicable publicly visible licenses.", - "items": { - "type": "string" - } - }, - "name": { - "type": "string", - "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "annotations": { - "required": [ - "compute.disks.insert" - ] - } - }, - "options": { - "type": "string", - "description": "Internal use only." - }, - "physicalBlockSizeBytes": { - "type": "string", - "description": "Physical block size of the persistent disk, in bytes. If not present in a request, a default value is used. Initially only 4096 is supported, but other powers of two may be added. If an unsupported value is requested, the error message will list the supported values, but even a supported value may be allowed for only some projects.", - "format": "int64" - }, - "region": { - "type": "string", - "description": "[Output Only] URL of the region where the disk resides. Only applicable for regional resources." - }, - "replicaZones": { - "type": "array", - "description": "URLs of the zones where the disk should be replicated to. Only applicable for regional resources.", - "items": { - "type": "string" - } - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined fully-qualified URL for this resource." - }, - "sizeGb": { - "type": "string", - "description": "Size of the persistent disk, specified in GB. You can specify this field when creating a persistent disk using the sourceImage or sourceSnapshot parameter, or specify it alone to create an empty persistent disk.\n\nIf you specify this field along with sourceImage or sourceSnapshot, the value of sizeGb must not be less than the size of the sourceImage or the size of the snapshot. Acceptable values are 1 to 65536, inclusive.", - "format": "int64" - }, - "sourceImage": { - "type": "string", - "description": "The source image used to create this disk. If the source image is deleted, this field will not be set.\n\nTo create a disk with one of the public operating system images, specify the image by its family name. For example, specify family/debian-8 to use the latest Debian 8 image:\n\nprojects/debian-cloud/global/images/family/debian-8 \n\nAlternatively, use a specific version of a public operating system image:\n\nprojects/debian-cloud/global/images/debian-8-jessie-vYYYYMMDD \n\nTo create a disk with a custom image that you created, specify the image name in the following format:\n\nglobal/images/my-custom-image \n\nYou can also specify a custom image by its image family, which returns the latest version of the image in that family. Replace the image name with family/family-name:\n\nglobal/images/family/my-image-family" - }, - "sourceImageEncryptionKey": { - "$ref": "CustomerEncryptionKey", - "description": "The customer-supplied encryption key of the source image. Required if the source image is protected by a customer-supplied encryption key." - }, - "sourceImageId": { - "type": "string", - "description": "[Output Only] The ID value of the image used to create this disk. This value identifies the exact image that was used to create this persistent disk. For example, if you created the persistent disk from an image that was later deleted and recreated under the same name, the source image ID would identify the exact version of the image that was used." - }, - "sourceSnapshot": { - "type": "string", - "description": "The source snapshot used to create this disk. You can provide this as a partial or full URL to the resource. For example, the following are valid values: \n- https://www.googleapis.com/compute/v1/projects/project/global/snapshots/snapshot \n- projects/project/global/snapshots/snapshot \n- global/snapshots/snapshot" - }, - "sourceSnapshotEncryptionKey": { - "$ref": "CustomerEncryptionKey", - "description": "The customer-supplied encryption key of the source snapshot. Required if the source snapshot is protected by a customer-supplied encryption key." - }, - "sourceSnapshotId": { - "type": "string", - "description": "[Output Only] The unique ID of the snapshot used to create this disk. This value identifies the exact snapshot that was used to create this persistent disk. For example, if you created the persistent disk from a snapshot that was later deleted and recreated under the same name, the source snapshot ID would identify the exact version of the snapshot that was used." - }, - "status": { - "type": "string", - "description": "[Output Only] The status of disk creation.", - "enum": [ - "CREATING", - "FAILED", - "READY", - "RESTORING" - ], - "enumDescriptions": [ - "", - "", - "", - "" - ] - }, - "storageType": { - "type": "string", - "description": "[Deprecated] Storage type of the persistent disk.", - "enum": [ - "HDD", - "SSD" - ], - "enumDescriptions": [ - "", - "" - ] - }, - "type": { - "type": "string", - "description": "URL of the disk type resource describing which disk type to use to create the disk. Provide this when creating the disk." - }, - "users": { - "type": "array", - "description": "[Output Only] Links to the users of the disk (attached instances) in form: project/zones/zone/instances/instance", - "items": { - "type": "string" - } - }, - "zone": { - "type": "string", - "description": "[Output Only] URL of the zone where the disk resides." - } - } - }, - "DiskAggregatedList": { - "id": "DiskAggregatedList", - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "object", - "description": "A list of DisksScopedList resources.", - "additionalProperties": { - "$ref": "DisksScopedList", - "description": "[Output Only] Name of the scope containing this set of disks." - } - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#diskAggregatedList for aggregated lists of persistent disks.", - "default": "compute#diskAggregatedList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "DiskInstantiationConfig": { - "id": "DiskInstantiationConfig", - "type": "object", - "description": "A specification of the desired way to instantiate a disk in the instance template when its created from a source instance.", - "properties": { - "autoDelete": { - "type": "boolean", - "description": "Specifies whether the disk will be auto-deleted when the instance is deleted (but not when the disk is detached from the instance)." - }, - "customImage": { - "type": "string", - "description": "The custom source image to be used to restore this disk when instantiating this instance template." - }, - "deviceName": { - "type": "string", - "description": "Specifies the device name of the disk to which the configurations apply to." - }, - "instantiateFrom": { - "type": "string", - "description": "Specifies whether to include the disk and what image to use.", - "enum": [ - "ATTACH_READ_ONLY", - "BLANK", - "CUSTOM_IMAGE", - "DEFAULT", - "DO_NOT_INCLUDE", - "SOURCE_IMAGE", - "SOURCE_IMAGE_FAMILY" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "" - ] - } - } - }, - "DiskList": { - "id": "DiskList", - "type": "object", - "description": "A list of Disk resources.", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "array", - "description": "A list of Disk resources.", - "items": { - "$ref": "Disk" - } - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#diskList for lists of disks.", - "default": "compute#diskList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "DiskMoveRequest": { - "id": "DiskMoveRequest", - "type": "object", - "properties": { - "destinationZone": { - "type": "string", - "description": "The URL of the destination zone to move the disk. This can be a full or partial URL. For example, the following are all valid URLs to a zone: \n- https://www.googleapis.com/compute/v1/projects/project/zones/zone \n- projects/project/zones/zone \n- zones/zone" - }, - "targetDisk": { - "type": "string", - "description": "The URL of the target disk to move. This can be a full or partial URL. For example, the following are all valid URLs to a disk: \n- https://www.googleapis.com/compute/v1/projects/project/zones/zone/disks/disk \n- projects/project/zones/zone/disks/disk \n- zones/zone/disks/disk" - } - } - }, - "DiskType": { - "id": "DiskType", - "type": "object", - "description": "A DiskType resource. (== resource_for beta.diskTypes ==) (== resource_for v1.diskTypes ==)", - "properties": { - "creationTimestamp": { - "type": "string", - "description": "[Output Only] Creation timestamp in RFC3339 text format." - }, - "defaultDiskSizeGb": { - "type": "string", - "description": "[Output Only] Server-defined default disk size in GB.", - "format": "int64" - }, - "deprecated": { - "$ref": "DeprecationStatus", - "description": "[Output Only] The deprecation status associated with this disk type." - }, - "description": { - "type": "string", - "description": "[Output Only] An optional description of this resource." - }, - "id": { - "type": "string", - "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", - "format": "uint64" - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of the resource. Always compute#diskType for disk types.", - "default": "compute#diskType" - }, - "name": { - "type": "string", - "description": "[Output Only] Name of the resource.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for the resource." - }, - "validDiskSize": { - "type": "string", - "description": "[Output Only] An optional textual description of the valid disk size, such as \"10GB-10TB\"." - }, - "zone": { - "type": "string", - "description": "[Output Only] URL of the zone where the disk type resides." - } - } - }, - "DiskTypeAggregatedList": { - "id": "DiskTypeAggregatedList", - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "object", - "description": "A list of DiskTypesScopedList resources.", - "additionalProperties": { - "$ref": "DiskTypesScopedList", - "description": "[Output Only] Name of the scope containing this set of disk types." - } - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#diskTypeAggregatedList.", - "default": "compute#diskTypeAggregatedList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "DiskTypeList": { - "id": "DiskTypeList", - "type": "object", - "description": "Contains a list of disk types.", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "array", - "description": "A list of DiskType resources.", - "items": { - "$ref": "DiskType" - } - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#diskTypeList for disk types.", - "default": "compute#diskTypeList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "DiskTypesScopedList": { - "id": "DiskTypesScopedList", - "type": "object", - "properties": { "diskTypes": { - "type": "array", - "description": "[Output Only] List of disk types contained in this scope.", - "items": { - "$ref": "DiskType" - } - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning which replaces the list of disk types when the list is empty.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } + "methods": { + "aggregatedList": { + "description": "Retrieves an aggregated list of disk types.", + "httpMethod": "GET", + "id": "compute.diskTypes.aggregatedList", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/aggregated/diskTypes", + "response": { + "$ref": "DiskTypeAggregatedList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "get": { + "description": "Returns the specified disk type. Get a list of available disk types by making a list() request.", + "httpMethod": "GET", + "id": "compute.diskTypes.get", + "parameterOrder": [ + "project", + "zone", + "diskType" + ], + "parameters": { + "diskType": { + "description": "Name of the disk type to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/diskTypes/{diskType}", + "response": { + "$ref": "DiskType" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "list": { + "description": "Retrieves a list of disk types available to the specified project.", + "httpMethod": "GET", + "id": "compute.diskTypes.list", + "parameterOrder": [ + "project", + "zone" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/diskTypes", + "response": { + "$ref": "DiskTypeList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." } - } - } - } - }, - "DisksResizeRequest": { - "id": "DisksResizeRequest", - "type": "object", - "properties": { - "sizeGb": { - "type": "string", - "description": "The new size of the persistent disk, which is specified in GB.", - "format": "int64" - } - } - }, - "DisksScopedList": { - "id": "DisksScopedList", - "type": "object", - "properties": { + }, "disks": { - "type": "array", - "description": "[Output Only] List of disks contained in this scope.", - "items": { - "$ref": "Disk" - } - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning which replaces the list of disks when the list is empty.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } + "methods": { + "aggregatedList": { + "description": "Retrieves an aggregated list of persistent disks.", + "httpMethod": "GET", + "id": "compute.disks.aggregatedList", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/aggregated/disks", + "response": { + "$ref": "DiskAggregatedList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "createSnapshot": { + "description": "Creates a snapshot of a specified persistent disk.", + "httpMethod": "POST", + "id": "compute.disks.createSnapshot", + "parameterOrder": [ + "project", + "zone", + "disk" + ], + "parameters": { + "disk": { + "description": "Name of the persistent disk to snapshot.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "guestFlush": { + "location": "query", + "type": "boolean" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/disks/{disk}/createSnapshot", + "request": { + "$ref": "Snapshot" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "delete": { + "description": "Deletes the specified persistent disk. Deleting a disk removes its data permanently and is irreversible. However, deleting a disk does not delete any snapshots previously made from the disk. You must separately delete snapshots.", + "httpMethod": "DELETE", + "id": "compute.disks.delete", + "parameterOrder": [ + "project", + "zone", + "disk" + ], + "parameters": { + "disk": { + "description": "Name of the persistent disk to delete.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/disks/{disk}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Returns a specified persistent disk. Get a list of available persistent disks by making a list() request.", + "httpMethod": "GET", + "id": "compute.disks.get", + "parameterOrder": [ + "project", + "zone", + "disk" + ], + "parameters": { + "disk": { + "description": "Name of the persistent disk to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/disks/{disk}", + "response": { + "$ref": "Disk" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "getIamPolicy": { + "description": "Gets the access control policy for a resource. May be empty if no such policy or resource exists.", + "httpMethod": "GET", + "id": "compute.disks.getIamPolicy", + "parameterOrder": [ + "project", + "zone", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/disks/{resource}/getIamPolicy", + "response": { + "$ref": "Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "description": "Creates a persistent disk in the specified project using the data in the request. You can create a disk with a sourceImage, a sourceSnapshot, or create an empty 500 GB data disk by omitting all properties. You can also create a disk that is larger than the default size by specifying the sizeGb property.", + "httpMethod": "POST", + "id": "compute.disks.insert", + "parameterOrder": [ + "project", + "zone" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "sourceImage": { + "description": "Optional. Source image to restore onto a disk.", + "location": "query", + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/disks", + "request": { + "$ref": "Disk" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "description": "Retrieves a list of persistent disks contained within the specified zone.", + "httpMethod": "GET", + "id": "compute.disks.list", + "parameterOrder": [ + "project", + "zone" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/disks", + "response": { + "$ref": "DiskList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "resize": { + "description": "Resizes the specified persistent disk. You can only increase the size of the disk.", + "httpMethod": "POST", + "id": "compute.disks.resize", + "parameterOrder": [ + "project", + "zone", + "disk" + ], + "parameters": { + "disk": { + "description": "The name of the persistent disk.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/disks/{disk}/resize", + "request": { + "$ref": "DisksResizeRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setIamPolicy": { + "description": "Sets the access control policy on the specified resource. Replaces any existing policy.", + "httpMethod": "POST", + "id": "compute.disks.setIamPolicy", + "parameterOrder": [ + "project", + "zone", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/disks/{resource}/setIamPolicy", + "request": { + "$ref": "Policy" + }, + "response": { + "$ref": "Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setLabels": { + "description": "Sets the labels on a disk. To learn more about labels, read the Labeling Resources documentation.", + "httpMethod": "POST", + "id": "compute.disks.setLabels", + "parameterOrder": [ + "project", + "zone", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/disks/{resource}/setLabels", + "request": { + "$ref": "ZoneSetLabelsRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource.", + "httpMethod": "POST", + "id": "compute.disks.testIamPermissions", + "parameterOrder": [ + "project", + "zone", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/disks/{resource}/testIamPermissions", + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." } - } - } - } - }, - "DistributionPolicy": { - "id": "DistributionPolicy", - "type": "object", - "properties": { - "zones": { - "type": "array", - "items": { - "$ref": "DistributionPolicyZoneConfiguration" - } - } - } - }, - "DistributionPolicyZoneConfiguration": { - "id": "DistributionPolicyZoneConfiguration", - "type": "object", - "properties": { - "zone": { - "type": "string", - "description": "URL of the zone where managed instance group is spawning instances (for regional resources). Zone has to belong to the region where managed instance group is located.", - "annotations": { - "required": [ - "compute.regionInstanceGroupManagers.insert", - "compute.regionInstanceGroupManagers.update" - ] - } - } - } - }, - "Expr": { - "id": "Expr", - "type": "object", - "description": "Represents an expression text. Example:\n\ntitle: \"User account presence\" description: \"Determines whether the request has a user account\" expression: \"size(request.user) \u003e 0\"", - "properties": { - "description": { - "type": "string", - "description": "An optional description of the expression. This is a longer text which describes the expression, e.g. when hovered over it in a UI." }, - "expression": { - "type": "string", - "description": "Textual representation of an expression in Common Expression Language syntax.\n\nThe application context of the containing message determines which well-known feature set of CEL is supported." - }, - "location": { - "type": "string", - "description": "An optional string indicating the location of the expression for error reporting, e.g. a file name and a position in the file." - }, - "title": { - "type": "string", - "description": "An optional title for the expression, i.e. a short string describing its purpose. This can be used e.g. in UIs which allow to enter the expression." - } - } - }, - "Firewall": { - "id": "Firewall", - "type": "object", - "description": "Represents a Firewall resource.", - "properties": { - "allowed": { - "type": "array", - "description": "The list of ALLOW rules specified by this firewall. Each rule specifies a protocol and port-range tuple that describes a permitted connection.", - "items": { - "type": "object", - "properties": { - "IPProtocol": { - "type": "string", - "description": "The IP protocol to which this rule applies. The protocol type is required when creating a firewall rule. This value can either be one of the following well known protocol strings (tcp, udp, icmp, esp, ah, ipip, sctp), or the IP protocol number." - }, - "ports": { - "type": "array", - "description": "An optional list of ports to which this rule applies. This field is only applicable for UDP or TCP protocol. Each entry must be either an integer or a range. If not specified, this rule applies to connections through any port.\n\nExample inputs include: [\"22\"], [\"80\",\"443\"], and [\"12345-12349\"].", - "items": { - "type": "string" + "firewalls": { + "methods": { + "delete": { + "description": "Deletes the specified firewall.", + "httpMethod": "DELETE", + "id": "compute.firewalls.delete", + "parameterOrder": [ + "project", + "firewall" + ], + "parameters": { + "firewall": { + "description": "Name of the firewall rule to delete.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/firewalls/{firewall}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Returns the specified firewall.", + "httpMethod": "GET", + "id": "compute.firewalls.get", + "parameterOrder": [ + "project", + "firewall" + ], + "parameters": { + "firewall": { + "description": "Name of the firewall rule to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/firewalls/{firewall}", + "response": { + "$ref": "Firewall" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "description": "Creates a firewall rule in the specified project using the data included in the request.", + "httpMethod": "POST", + "id": "compute.firewalls.insert", + "parameterOrder": [ + "project" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/firewalls", + "request": { + "$ref": "Firewall" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "description": "Retrieves the list of firewall rules available to the specified project.", + "httpMethod": "GET", + "id": "compute.firewalls.list", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/firewalls", + "response": { + "$ref": "FirewallList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "patch": { + "description": "Updates the specified firewall rule with the data included in the request. This method supports PATCH semantics and uses the JSON merge patch format and processing rules.", + "httpMethod": "PATCH", + "id": "compute.firewalls.patch", + "parameterOrder": [ + "project", + "firewall" + ], + "parameters": { + "firewall": { + "description": "Name of the firewall rule to patch.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/firewalls/{firewall}", + "request": { + "$ref": "Firewall" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource.", + "httpMethod": "POST", + "id": "compute.firewalls.testIamPermissions", + "parameterOrder": [ + "project", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "(?:[-a-z0-9_]{0,62}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/firewalls/{resource}/testIamPermissions", + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "update": { + "description": "Updates the specified firewall rule with the data included in the request. The PUT method can only update the following fields of firewall rule: allowed, description, sourceRanges, sourceTags, targetTags.", + "httpMethod": "PUT", + "id": "compute.firewalls.update", + "parameterOrder": [ + "project", + "firewall" + ], + "parameters": { + "firewall": { + "description": "Name of the firewall rule to update.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/firewalls/{firewall}", + "request": { + "$ref": "Firewall" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] } - } } - } }, - "creationTimestamp": { - "type": "string", - "description": "[Output Only] Creation timestamp in RFC3339 text format." - }, - "denied": { - "type": "array", - "description": "The list of DENY rules specified by this firewall. Each rule specifies a protocol and port-range tuple that describes a permitted connection.", - "items": { - "type": "object", - "properties": { - "IPProtocol": { - "type": "string", - "description": "The IP protocol to which this rule applies. The protocol type is required when creating a firewall rule. This value can either be one of the following well known protocol strings (tcp, udp, icmp, esp, ah, ipip, sctp), or the IP protocol number." - }, - "ports": { - "type": "array", - "description": "An optional list of ports to which this rule applies. This field is only applicable for UDP or TCP protocol. Each entry must be either an integer or a range. If not specified, this rule applies to connections through any port.\n\nExample inputs include: [\"22\"], [\"80\",\"443\"], and [\"12345-12349\"].", - "items": { - "type": "string" - } - } - } - } - }, - "description": { - "type": "string", - "description": "An optional description of this resource. Provide this property when you create the resource." - }, - "destinationRanges": { - "type": "array", - "description": "If destination ranges are specified, the firewall will apply only to traffic that has destination IP address in these ranges. These ranges must be expressed in CIDR format. Only IPv4 is supported.", - "items": { - "type": "string" - } - }, - "direction": { - "type": "string", - "description": "Direction of traffic to which this firewall applies; default is INGRESS. Note: For INGRESS traffic, it is NOT supported to specify destinationRanges; For EGRESS traffic, it is NOT supported to specify sourceRanges OR sourceTags.", - "enum": [ - "EGRESS", - "INGRESS" - ], - "enumDescriptions": [ - "", - "" - ] - }, - "disabled": { - "type": "boolean", - "description": "Denotes whether the firewall rule is disabled, i.e not applied to the network it is associated with. When set to true, the firewall rule is not enforced and the network behaves as if it did not exist. If this is unspecified, the firewall rule will be enabled." - }, - "enableLogging": { - "type": "boolean", - "description": "This field denotes whether to enable logging for a particular firewall rule. If logging is enabled, logs will be exported to the configured export destination for all firewall logs in the network. Logs may be exported to BigQuery or Pub/Sub." - }, - "id": { - "type": "string", - "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", - "format": "uint64" - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of the resource. Always compute#firewall for firewall rules.", - "default": "compute#firewall" - }, - "name": { - "type": "string", - "description": "Name of the resource; provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "annotations": { - "required": [ - "compute.firewalls.insert", - "compute.firewalls.patch" - ] - } - }, - "network": { - "type": "string", - "description": "URL of the network resource for this firewall rule. If not specified when creating a firewall rule, the default network is used:\nglobal/networks/default\nIf you choose to specify this property, you can specify the network as a full or partial URL. For example, the following are all valid URLs: \n- https://www.googleapis.com/compute/v1/projects/myproject/global/networks/my-network \n- projects/myproject/global/networks/my-network \n- global/networks/default" - }, - "priority": { - "type": "integer", - "description": "Priority for this rule. This is an integer between 0 and 65535, both inclusive. When not specified, the value assumed is 1000. Relative priorities determine precedence of conflicting rules. Lower value of priority implies higher precedence (eg, a rule with priority 0 has higher precedence than a rule with priority 1). DENY rules take precedence over ALLOW rules having equal priority.", - "format": "int32" - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for the resource." - }, - "sourceRanges": { - "type": "array", - "description": "If source ranges are specified, the firewall will apply only to traffic that has source IP address in these ranges. These ranges must be expressed in CIDR format. One or both of sourceRanges and sourceTags may be set. If both properties are set, the firewall will apply to traffic that has source IP address within sourceRanges OR the source IP that belongs to a tag listed in the sourceTags property. The connection does not need to match both properties for the firewall to apply. Only IPv4 is supported.", - "items": { - "type": "string" - } - }, - "sourceServiceAccounts": { - "type": "array", - "description": "If source service accounts are specified, the firewall will apply only to traffic originating from an instance with a service account in this list. Source service accounts cannot be used to control traffic to an instance's external IP address because service accounts are associated with an instance, not an IP address. sourceRanges can be set at the same time as sourceServiceAccounts. If both are set, the firewall will apply to traffic that has source IP address within sourceRanges OR the source IP belongs to an instance with service account listed in sourceServiceAccount. The connection does not need to match both properties for the firewall to apply. sourceServiceAccounts cannot be used at the same time as sourceTags or targetTags.", - "items": { - "type": "string" - } - }, - "sourceTags": { - "type": "array", - "description": "If source tags are specified, the firewall rule applies only to traffic with source IPs that match the primary network interfaces of VM instances that have the tag and are in the same VPC network. Source tags cannot be used to control traffic to an instance's external IP address, it only applies to traffic between instances in the same virtual network. Because tags are associated with instances, not IP addresses. One or both of sourceRanges and sourceTags may be set. If both properties are set, the firewall will apply to traffic that has source IP address within sourceRanges OR the source IP that belongs to a tag listed in the sourceTags property. The connection does not need to match both properties for the firewall to apply.", - "items": { - "type": "string" - } - }, - "targetServiceAccounts": { - "type": "array", - "description": "A list of service accounts indicating sets of instances located in the network that may make network connections as specified in allowed[]. targetServiceAccounts cannot be used at the same time as targetTags or sourceTags. If neither targetServiceAccounts nor targetTags are specified, the firewall rule applies to all instances on the specified network.", - "items": { - "type": "string" - } - }, - "targetTags": { - "type": "array", - "description": "A list of tags that controls which instances the firewall rule applies to. If targetTags are specified, then the firewall rule applies only to instances in the VPC network that have one of those tags. If no targetTags are specified, the firewall rule applies to all instances on the specified network.", - "items": { - "type": "string" - } - } - } - }, - "FirewallList": { - "id": "FirewallList", - "type": "object", - "description": "Contains a list of firewalls.", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "array", - "description": "A list of Firewall resources.", - "items": { - "$ref": "Firewall" - } - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#firewallList for lists of firewalls.", - "default": "compute#firewallList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "FixedOrPercent": { - "id": "FixedOrPercent", - "type": "object", - "description": "Encapsulates numeric value that can be either absolute or relative.", - "properties": { - "calculated": { - "type": "integer", - "description": "[Output Only] Absolute value of VM instances calculated based on the specific mode.\n\n \n- If the value is fixed, then the caculated value is equal to the fixed value. \n- If the value is a percent, then the calculated value is percent/100 * targetSize. For example, the calculated value of a 80% of a managed instance group with 150 instances would be (80/100 * 150) = 120 VM instances. If there is a remainder, the number is rounded up.", - "format": "int32" - }, - "fixed": { - "type": "integer", - "description": "Specifies a fixed number of VM instances. This must be a positive integer.", - "format": "int32" - }, - "percent": { - "type": "integer", - "description": "Specifies a percentage of instances between 0 to 100%, inclusive. For example, specify 80 for 80%.", - "format": "int32" - } - } - }, - "ForwardingRule": { - "id": "ForwardingRule", - "type": "object", - "description": "A ForwardingRule resource. A ForwardingRule resource specifies which pool of target virtual machines to forward a packet to if it matches the given [IPAddress, IPProtocol, ports] tuple. (== resource_for beta.forwardingRules ==) (== resource_for v1.forwardingRules ==) (== resource_for beta.globalForwardingRules ==) (== resource_for v1.globalForwardingRules ==) (== resource_for beta.regionForwardingRules ==) (== resource_for v1.regionForwardingRules ==)", - "properties": { - "IPAddress": { - "type": "string", - "description": "The IP address that this forwarding rule is serving on behalf of.\n\nAddresses are restricted based on the forwarding rule's load balancing scheme (EXTERNAL or INTERNAL) and scope (global or regional).\n\nWhen the load balancing scheme is EXTERNAL, for global forwarding rules, the address must be a global IP, and for regional forwarding rules, the address must live in the same region as the forwarding rule. If this field is empty, an ephemeral IPv4 address from the same scope (global or regional) will be assigned. A regional forwarding rule supports IPv4 only. A global forwarding rule supports either IPv4 or IPv6.\n\nWhen the load balancing scheme is INTERNAL, this can only be an RFC 1918 IP address belonging to the network/subnet configured for the forwarding rule. By default, if this field is empty, an ephemeral internal IP address will be automatically allocated from the IP range of the subnet or network configured for this forwarding rule.\n\nAn address can be specified either by a literal IP address or a URL reference to an existing Address resource. The following examples are all valid: \n- 100.1.2.3 \n- https://www.googleapis.com/compute/v1/projects/project/regions/region/addresses/address \n- projects/project/regions/region/addresses/address \n- regions/region/addresses/address \n- global/addresses/address \n- address" - }, - "IPProtocol": { - "type": "string", - "description": "The IP protocol to which this rule applies. Valid options are TCP, UDP, ESP, AH, SCTP or ICMP.\n\nWhen the load balancing scheme is INTERNAL, only TCP and UDP are valid.", - "enum": [ - "AH", - "ESP", - "ICMP", - "SCTP", - "TCP", - "UDP" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "" - ] - }, - "backendService": { - "type": "string", - "description": "This field is not used for external load balancing.\n\nFor internal load balancing, this field identifies the BackendService resource to receive the matched traffic." - }, - "creationTimestamp": { - "type": "string", - "description": "[Output Only] Creation timestamp in RFC3339 text format." - }, - "description": { - "type": "string", - "description": "An optional description of this resource. Provide this property when you create the resource." - }, - "fingerprint": { - "type": "string", - "description": "Fingerprint of this resource. A hash of the contents stored in this object. This field is used in optimistic locking. This field will be ignored when inserting a ForwardingRule. Include the fingerprint in patch request to ensure that you do not overwrite changes that were applied from another concurrent request.\n\nTo see the latest fingerprint, make a get() request to retrieve a ForwardingRule.", - "format": "byte" - }, - "id": { - "type": "string", - "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", - "format": "uint64" - }, - "ipVersion": { - "type": "string", - "description": "The IP Version that will be used by this forwarding rule. Valid options are IPV4 or IPV6. This can only be specified for a global forwarding rule.", - "enum": [ - "IPV4", - "IPV6", - "UNSPECIFIED_VERSION" - ], - "enumDescriptions": [ - "", - "", - "" - ] - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of the resource. Always compute#forwardingRule for Forwarding Rule resources.", - "default": "compute#forwardingRule" - }, - "labelFingerprint": { - "type": "string", - "description": "A fingerprint for the labels being applied to this resource, which is essentially a hash of the labels set used for optimistic locking. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update labels. You must always provide an up-to-date fingerprint hash in order to update or change labels.\n\nTo see the latest fingerprint, make a get() request to retrieve a ForwardingRule.", - "format": "byte" - }, - "labels": { - "type": "object", - "description": "Labels to apply to this resource. These can be later modified by the setLabels method. Each label key/value pair must comply with RFC1035. Label values may be empty.", - "additionalProperties": { - "type": "string" - } - }, - "loadBalancingScheme": { - "type": "string", - "description": "This signifies what the ForwardingRule will be used for and can only take the following values: INTERNAL, EXTERNAL The value of INTERNAL means that this will be used for Internal Network Load Balancing (TCP, UDP). The value of EXTERNAL means that this will be used for External Load Balancing (HTTP(S) LB, External TCP/UDP LB, SSL Proxy)", - "enum": [ - "EXTERNAL", - "INTERNAL", - "INVALID" - ], - "enumDescriptions": [ - "", - "", - "" - ] - }, - "name": { - "type": "string", - "description": "Name of the resource; provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" - }, - "network": { - "type": "string", - "description": "This field is not used for external load balancing.\n\nFor internal load balancing, this field identifies the network that the load balanced IP should belong to for this Forwarding Rule. If this field is not specified, the default network will be used." - }, - "networkTier": { - "type": "string", - "description": "This signifies the networking tier used for configuring this load balancer and can only take the following values: PREMIUM , STANDARD.\n\nFor regional ForwardingRule, the valid values are PREMIUM and STANDARD. For GlobalForwardingRule, the valid value is PREMIUM.\n\nIf this field is not specified, it is assumed to be PREMIUM. If IPAddress is specified, this value must be equal to the networkTier of the Address.", - "enum": [ - "PREMIUM", - "SELECT", - "STANDARD" - ], - "enumDescriptions": [ - "", - "", - "" - ] - }, - "portRange": { - "type": "string", - "description": "This field is used along with the target field for TargetHttpProxy, TargetHttpsProxy, TargetSslProxy, TargetTcpProxy, TargetVpnGateway, TargetPool, TargetInstance.\n\nApplicable only when IPProtocol is TCP, UDP, or SCTP, only packets addressed to ports in the specified range will be forwarded to target. Forwarding rules with the same [IPAddress, IPProtocol] pair must have disjoint port ranges.\n\nSome types of forwarding target have constraints on the acceptable ports: \n- TargetHttpProxy: 80, 8080 \n- TargetHttpsProxy: 443 \n- TargetTcpProxy: 25, 43, 110, 143, 195, 443, 465, 587, 700, 993, 995, 1883, 5222 \n- TargetSslProxy: 25, 43, 110, 143, 195, 443, 465, 587, 700, 993, 995, 1883, 5222 \n- TargetVpnGateway: 500, 4500\n-" - }, - "ports": { - "type": "array", - "description": "This field is used along with the backend_service field for internal load balancing.\n\nWhen the load balancing scheme is INTERNAL, a single port or a comma separated list of ports can be configured. Only packets addressed to these ports will be forwarded to the backends configured with this forwarding rule.\n\nYou may specify a maximum of up to 5 ports.", - "items": { - "type": "string" - } - }, - "region": { - "type": "string", - "description": "[Output Only] URL of the region where the regional forwarding rule resides. This field is not applicable to global forwarding rules." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for the resource." - }, - "serviceLabel": { - "type": "string", - "description": "An optional prefix to the service name for this Forwarding Rule. If specified, will be the first label of the fully qualified service name.\n\nThe label must be 1-63 characters long, and comply with RFC1035. Specifically, the label must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.\n\nThis field is only used for internal load balancing.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" - }, - "serviceName": { - "type": "string", - "description": "[Output Only] The internal fully qualified service name for this Forwarding Rule.\n\nThis field is only used for internal load balancing." - }, - "subnetwork": { - "type": "string", - "description": "This field is not used for external load balancing.\n\nFor internal load balancing, this field identifies the subnetwork that the load balanced IP should belong to for this Forwarding Rule.\n\nIf the network specified is in auto subnet mode, this field is optional. However, if the network is in custom subnet mode, a subnetwork must be specified." - }, - "target": { - "type": "string", - "description": "The URL of the target resource to receive the matched traffic. For regional forwarding rules, this target must live in the same region as the forwarding rule. For global forwarding rules, this target must be a global load balancing resource. The forwarded traffic must be of a type appropriate to the target object.\n\nThis field is not used for internal load balancing." - } - } - }, - "ForwardingRuleAggregatedList": { - "id": "ForwardingRuleAggregatedList", - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "object", - "description": "A list of ForwardingRulesScopedList resources.", - "additionalProperties": { - "$ref": "ForwardingRulesScopedList", - "description": "Name of the scope containing this set of addresses." - } - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#forwardingRuleAggregatedList for lists of forwarding rules.", - "default": "compute#forwardingRuleAggregatedList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "ForwardingRuleList": { - "id": "ForwardingRuleList", - "type": "object", - "description": "Contains a list of ForwardingRule resources.", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "array", - "description": "A list of ForwardingRule resources.", - "items": { - "$ref": "ForwardingRule" - } - }, - "kind": { - "type": "string", - "description": "Type of resource.", - "default": "compute#forwardingRuleList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "ForwardingRuleReference": { - "id": "ForwardingRuleReference", - "type": "object", - "properties": { - "forwardingRule": { - "type": "string" - } - } - }, - "ForwardingRulesScopedList": { - "id": "ForwardingRulesScopedList", - "type": "object", - "properties": { "forwardingRules": { - "type": "array", - "description": "List of forwarding rules contained in this scope.", - "items": { - "$ref": "ForwardingRule" - } - }, - "warning": { - "type": "object", - "description": "Informational warning which replaces the list of forwarding rules when the list is empty.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } + "methods": { + "aggregatedList": { + "description": "Retrieves an aggregated list of forwarding rules.", + "httpMethod": "GET", + "id": "compute.forwardingRules.aggregatedList", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/aggregated/forwardingRules", + "response": { + "$ref": "ForwardingRuleAggregatedList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "delete": { + "description": "Deletes the specified ForwardingRule resource.", + "httpMethod": "DELETE", + "id": "compute.forwardingRules.delete", + "parameterOrder": [ + "project", + "region", + "forwardingRule" + ], + "parameters": { + "forwardingRule": { + "description": "Name of the ForwardingRule resource to delete.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/regions/{region}/forwardingRules/{forwardingRule}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Returns the specified ForwardingRule resource.", + "httpMethod": "GET", + "id": "compute.forwardingRules.get", + "parameterOrder": [ + "project", + "region", + "forwardingRule" + ], + "parameters": { + "forwardingRule": { + "description": "Name of the ForwardingRule resource to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/forwardingRules/{forwardingRule}", + "response": { + "$ref": "ForwardingRule" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "description": "Creates a ForwardingRule resource in the specified project and region using the data included in the request.", + "httpMethod": "POST", + "id": "compute.forwardingRules.insert", + "parameterOrder": [ + "project", + "region" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/regions/{region}/forwardingRules", + "request": { + "$ref": "ForwardingRule" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "description": "Retrieves a list of ForwardingRule resources available to the specified project and region.", + "httpMethod": "GET", + "id": "compute.forwardingRules.list", + "parameterOrder": [ + "project", + "region" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/forwardingRules", + "response": { + "$ref": "ForwardingRuleList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "patch": { + "description": "Updates the specified forwarding rule with the data included in the request. This method supports PATCH semantics and uses the JSON merge patch format and processing rules. Currently, you can only patch the network_tier field.", + "httpMethod": "PATCH", + "id": "compute.forwardingRules.patch", + "parameterOrder": [ + "project", + "region", + "forwardingRule" + ], + "parameters": { + "forwardingRule": { + "description": "Name of the ForwardingRule resource to patch.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/regions/{region}/forwardingRules/{forwardingRule}", + "request": { + "$ref": "ForwardingRule" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setLabels": { + "description": "Sets the labels on the specified resource. To learn more about labels, read the Labeling Resources documentation.", + "httpMethod": "POST", + "id": "compute.forwardingRules.setLabels", + "parameterOrder": [ + "project", + "region", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "The region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/forwardingRules/{resource}/setLabels", + "request": { + "$ref": "RegionSetLabelsRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setTarget": { + "description": "Changes target URL for forwarding rule. The new target should be of the same type as the old target.", + "httpMethod": "POST", + "id": "compute.forwardingRules.setTarget", + "parameterOrder": [ + "project", + "region", + "forwardingRule" + ], + "parameters": { + "forwardingRule": { + "description": "Name of the ForwardingRule resource in which target is to be set.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/regions/{region}/forwardingRules/{forwardingRule}/setTarget", + "request": { + "$ref": "TargetReference" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource.", + "httpMethod": "POST", + "id": "compute.forwardingRules.testIamPermissions", + "parameterOrder": [ + "project", + "region", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "The name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/forwardingRules/{resource}/testIamPermissions", + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." } - } - } - } - }, - "GlobalSetLabelsRequest": { - "id": "GlobalSetLabelsRequest", - "type": "object", - "properties": { - "labelFingerprint": { - "type": "string", - "description": "The fingerprint of the previous set of labels for this resource, used to detect conflicts. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update labels. You must always provide an up-to-date fingerprint hash when updating or changing labels. Make a get() request to the resource to get the latest fingerprint.", - "format": "byte" }, - "labels": { - "type": "object", - "description": "A list of labels to apply for this resource. Each label key & value must comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash. For example, \"webserver-frontend\": \"images\". A label value can also be empty (e.g. \"my-label\": \"\").", - "additionalProperties": { - "type": "string" - } - } - } - }, - "GuestAttributes": { - "id": "GuestAttributes", - "type": "object", - "description": "A guest attributes entry.", - "properties": { - "kind": { - "type": "string", - "description": "[Output Only] Type of the resource. Always compute#guestAttributes for guest attributes entry.", - "default": "compute#guestAttributes" - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "variableKey": { - "type": "string", - "description": "The key to search for." - }, - "variableValue": { - "type": "string", - "description": "[Output Only] The value found for the requested key." - } - } - }, - "GuestOsFeature": { - "id": "GuestOsFeature", - "type": "object", - "description": "Guest OS features.", - "properties": { - "type": { - "type": "string", - "description": "The ID of a supported feature. Read Enabling guest operating system features to see a list of available options.", - "enum": [ - "FEATURE_TYPE_UNSPECIFIED", - "MULTI_IP_SUBNET", - "SECURE_BOOT", - "UEFI_COMPATIBLE", - "VIRTIO_SCSI_MULTIQUEUE", - "WINDOWS" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "" - ] - } - } - }, - "HTTP2HealthCheck": { - "id": "HTTP2HealthCheck", - "type": "object", - "properties": { - "host": { - "type": "string", - "description": "The value of the host header in the HTTP/2 health check request. If left empty (default value), the IP on behalf of which this health check is performed will be used." - }, - "port": { - "type": "integer", - "description": "The TCP port number for the health check request. The default value is 443. Valid values are 1 through 65535.", - "format": "int32" - }, - "portName": { - "type": "string", - "description": "Port name as defined in InstanceGroup#NamedPort#name. If both port and port_name are defined, port takes precedence." - }, - "portSpecification": { - "type": "string", - "description": "Specifies how port is selected for health checking, can be one of following values:\nUSE_FIXED_PORT: The port number in\nport\nis used for health checking.\nUSE_NAMED_PORT: The\nportName\nis used for health checking.\nUSE_SERVING_PORT: For NetworkEndpointGroup, the port specified for each network endpoint is used for health checking. For other backends, the port or named port specified in the Backend Service is used for health checking.\n\n\nIf not specified, HTTP2 health check follows behavior specified in\nport\nand\nportName\nfields.", - "enum": [ - "USE_FIXED_PORT", - "USE_NAMED_PORT", - "USE_SERVING_PORT" - ], - "enumDescriptions": [ - "", - "", - "" - ] - }, - "proxyHeader": { - "type": "string", - "description": "Specifies the type of proxy header to append before sending data to the backend, either NONE or PROXY_V1. The default is NONE.", - "enum": [ - "NONE", - "PROXY_V1" - ], - "enumDescriptions": [ - "", - "" - ] - }, - "requestPath": { - "type": "string", - "description": "The request path of the HTTP/2 health check request. The default value is /." - }, - "response": { - "type": "string", - "description": "The string to match anywhere in the first 1024 bytes of the response body. If left empty (the default value), the status code determines health. The response data can only be ASCII." - } - } - }, - "HTTPHealthCheck": { - "id": "HTTPHealthCheck", - "type": "object", - "properties": { - "host": { - "type": "string", - "description": "The value of the host header in the HTTP health check request. If left empty (default value), the IP on behalf of which this health check is performed will be used." - }, - "port": { - "type": "integer", - "description": "The TCP port number for the health check request. The default value is 80. Valid values are 1 through 65535.", - "format": "int32" - }, - "portName": { - "type": "string", - "description": "Port name as defined in InstanceGroup#NamedPort#name. If both port and port_name are defined, port takes precedence." - }, - "portSpecification": { - "type": "string", - "description": "Specifies how port is selected for health checking, can be one of following values:\nUSE_FIXED_PORT: The port number in\nport\nis used for health checking.\nUSE_NAMED_PORT: The\nportName\nis used for health checking.\nUSE_SERVING_PORT: For NetworkEndpointGroup, the port specified for each network endpoint is used for health checking. For other backends, the port or named port specified in the Backend Service is used for health checking.\n\n\nIf not specified, HTTP health check follows behavior specified in\nport\nand\nportName\nfields.", - "enum": [ - "USE_FIXED_PORT", - "USE_NAMED_PORT", - "USE_SERVING_PORT" - ], - "enumDescriptions": [ - "", - "", - "" - ] - }, - "proxyHeader": { - "type": "string", - "description": "Specifies the type of proxy header to append before sending data to the backend, either NONE or PROXY_V1. The default is NONE.", - "enum": [ - "NONE", - "PROXY_V1" - ], - "enumDescriptions": [ - "", - "" - ] - }, - "requestPath": { - "type": "string", - "description": "The request path of the HTTP health check request. The default value is /." - }, - "response": { - "type": "string", - "description": "The string to match anywhere in the first 1024 bytes of the response body. If left empty (the default value), the status code determines health. The response data can only be ASCII." - } - } - }, - "HTTPSHealthCheck": { - "id": "HTTPSHealthCheck", - "type": "object", - "properties": { - "host": { - "type": "string", - "description": "The value of the host header in the HTTPS health check request. If left empty (default value), the IP on behalf of which this health check is performed will be used." - }, - "port": { - "type": "integer", - "description": "The TCP port number for the health check request. The default value is 443. Valid values are 1 through 65535.", - "format": "int32" - }, - "portName": { - "type": "string", - "description": "Port name as defined in InstanceGroup#NamedPort#name. If both port and port_name are defined, port takes precedence." - }, - "portSpecification": { - "type": "string", - "description": "Specifies how port is selected for health checking, can be one of following values:\nUSE_FIXED_PORT: The port number in\nport\nis used for health checking.\nUSE_NAMED_PORT: The\nportName\nis used for health checking.\nUSE_SERVING_PORT: For NetworkEndpointGroup, the port specified for each network endpoint is used for health checking. For other backends, the port or named port specified in the Backend Service is used for health checking.\n\n\nIf not specified, HTTPS health check follows behavior specified in\nport\nand\nportName\nfields.", - "enum": [ - "USE_FIXED_PORT", - "USE_NAMED_PORT", - "USE_SERVING_PORT" - ], - "enumDescriptions": [ - "", - "", - "" - ] - }, - "proxyHeader": { - "type": "string", - "description": "Specifies the type of proxy header to append before sending data to the backend, either NONE or PROXY_V1. The default is NONE.", - "enum": [ - "NONE", - "PROXY_V1" - ], - "enumDescriptions": [ - "", - "" - ] - }, - "requestPath": { - "type": "string", - "description": "The request path of the HTTPS health check request. The default value is /." - }, - "response": { - "type": "string", - "description": "The string to match anywhere in the first 1024 bytes of the response body. If left empty (the default value), the status code determines health. The response data can only be ASCII." - } - } - }, - "HealthCheck": { - "id": "HealthCheck", - "type": "object", - "description": "An HealthCheck resource. This resource defines a template for how individual virtual machines should be checked for health, via one of the supported protocols.", - "properties": { - "checkIntervalSec": { - "type": "integer", - "description": "How often (in seconds) to send a health check. The default value is 5 seconds.", - "format": "int32" - }, - "creationTimestamp": { - "type": "string", - "description": "[Output Only] Creation timestamp in 3339 text format." - }, - "description": { - "type": "string", - "description": "An optional description of this resource. Provide this property when you create the resource." - }, - "healthyThreshold": { - "type": "integer", - "description": "A so-far unhealthy instance will be marked healthy after this many consecutive successes. The default value is 2.", - "format": "int32" - }, - "http2HealthCheck": { - "$ref": "HTTP2HealthCheck" - }, - "httpHealthCheck": { - "$ref": "HTTPHealthCheck" - }, - "httpsHealthCheck": { - "$ref": "HTTPSHealthCheck" - }, - "id": { - "type": "string", - "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", - "format": "uint64" - }, - "kind": { - "type": "string", - "description": "Type of the resource.", - "default": "compute#healthCheck" - }, - "name": { - "type": "string", - "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for the resource." - }, - "sslHealthCheck": { - "$ref": "SSLHealthCheck" - }, - "tcpHealthCheck": { - "$ref": "TCPHealthCheck" - }, - "timeoutSec": { - "type": "integer", - "description": "How long (in seconds) to wait before claiming failure. The default value is 5 seconds. It is invalid for timeoutSec to have greater value than checkIntervalSec.", - "format": "int32" - }, - "type": { - "type": "string", - "description": "Specifies the type of the healthCheck, either TCP, SSL, HTTP or HTTPS. If not specified, the default is TCP. Exactly one of the protocol-specific health check field must be specified, which must match type field.", - "enum": [ - "HTTP", - "HTTP2", - "HTTPS", - "INVALID", - "SSL", - "TCP", - "UDP" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "" - ] - }, - "udpHealthCheck": { - "$ref": "UDPHealthCheck" - }, - "unhealthyThreshold": { - "type": "integer", - "description": "A so-far healthy instance will be marked unhealthy after this many consecutive failures. The default value is 2.", - "format": "int32" - } - } - }, - "HealthCheckList": { - "id": "HealthCheckList", - "type": "object", - "description": "Contains a list of HealthCheck resources.", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "array", - "description": "A list of HealthCheck resources.", - "items": { - "$ref": "HealthCheck" - } - }, - "kind": { - "type": "string", - "description": "Type of resource.", - "default": "compute#healthCheckList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } + "globalAddresses": { + "methods": { + "delete": { + "description": "Deletes the specified address resource.", + "httpMethod": "DELETE", + "id": "compute.globalAddresses.delete", + "parameterOrder": [ + "project", + "address" + ], + "parameters": { + "address": { + "description": "Name of the address resource to delete.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/addresses/{address}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Returns the specified address resource. Get a list of available addresses by making a list() request.", + "httpMethod": "GET", + "id": "compute.globalAddresses.get", + "parameterOrder": [ + "project", + "address" + ], + "parameters": { + "address": { + "description": "Name of the address resource to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/addresses/{address}", + "response": { + "$ref": "Address" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "description": "Creates an address resource in the specified project using the data included in the request.", + "httpMethod": "POST", + "id": "compute.globalAddresses.insert", + "parameterOrder": [ + "project" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/addresses", + "request": { + "$ref": "Address" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "description": "Retrieves a list of global addresses.", + "httpMethod": "GET", + "id": "compute.globalAddresses.list", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/addresses", + "response": { + "$ref": "AddressList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "setLabels": { + "description": "Sets the labels on a GlobalAddress. To learn more about labels, read the Labeling Resources documentation.", + "httpMethod": "POST", + "id": "compute.globalAddresses.setLabels", + "parameterOrder": [ + "project", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/addresses/{resource}/setLabels", + "request": { + "$ref": "GlobalSetLabelsRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource.", + "httpMethod": "POST", + "id": "compute.globalAddresses.testIamPermissions", + "parameterOrder": [ + "project", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "(?:[-a-z0-9_]{0,62}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/addresses/{resource}/testIamPermissions", + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." } - } - } - } - }, - "HealthCheckReference": { - "id": "HealthCheckReference", - "type": "object", - "description": "A full or valid partial URL to a health check. For example, the following are valid URLs: \n- https://www.googleapis.com/compute/beta/projects/project-id/global/httpHealthChecks/health-check \n- projects/project-id/global/httpHealthChecks/health-check \n- global/httpHealthChecks/health-check", - "properties": { - "healthCheck": { - "type": "string" - } - } - }, - "HealthStatus": { - "id": "HealthStatus", - "type": "object", - "properties": { - "healthState": { - "type": "string", - "description": "Health state of the instance.", - "enum": [ - "HEALTHY", - "UNHEALTHY" - ], - "enumDescriptions": [ - "", - "" - ] }, - "instance": { - "type": "string", - "description": "URL of the instance resource." - }, - "ipAddress": { - "type": "string", - "description": "The IP address represented by this resource." - }, - "port": { - "type": "integer", - "description": "The port on the instance.", - "format": "int32" - } - } - }, - "HealthStatusForNetworkEndpoint": { - "id": "HealthStatusForNetworkEndpoint", - "type": "object", - "properties": { - "backendService": { - "$ref": "BackendServiceReference", - "description": "URL of the backend service associated with the health state of the network endpoint." - }, - "forwardingRule": { - "$ref": "ForwardingRuleReference", - "description": "URL of the forwarding rule associated with the health state of the network endpoint." - }, - "healthCheck": { - "$ref": "HealthCheckReference", - "description": "URL of the health check associated with the health state of the network endpoint." - }, - "healthState": { - "type": "string", - "description": "Health state of the network endpoint determined based on the health checks configured.", - "enum": [ - "DRAINING", - "HEALTHY", - "UNHEALTHY", - "UNKNOWN" - ], - "enumDescriptions": [ - "", - "", - "", - "" - ] - } - } - }, - "Host": { - "id": "Host", - "type": "object", - "properties": { - "creationTimestamp": { - "type": "string", - "description": "[Output Only] Creation timestamp in RFC3339 text format." - }, - "description": { - "type": "string", - "description": "[Output Only] An optional textual description of the resource." - }, - "hostType": { - "type": "string", - "description": "Full or partial URL of the host type resource to use for this host, in the format: zones/zone/hostTypes/host-type. This is provided by the client when the host is created. For example, the following is a valid partial url to a predefined host type:\n\nzones/us-central1-b/hostTypes/n1-host-64-416" - }, - "id": { - "type": "string", - "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", - "format": "uint64" - }, - "instances": { - "type": "array", - "description": "A list of resource URLs to the virtual machine instances in this host. They must live in zones contained in the same region as this host.", - "items": { - "type": "string" - } - }, - "kind": { - "type": "string", - "description": "[Output Only] The type of the resource. Always compute#host for host.", - "default": "compute#host" - }, - "labelFingerprint": { - "type": "string", - "description": "A fingerprint for this request, which is essentially a hash of the metadata's contents and used for optimistic locking. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update metadata. You must always provide an up-to-date fingerprint hash in order to update or change metadata.\n\nTo see the latest fingerprint, make get() request to the host.", - "format": "byte" - }, - "labels": { - "type": "object", - "description": "Labels to apply to this host.", - "additionalProperties": { - "type": "string" - } - }, - "name": { - "type": "string", - "description": "The name of the resource, provided by the client when initially creating the resource. The resource name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for the resource." - }, - "status": { - "type": "string", - "description": "[Output Only] The status of the host. One of the following values: CREATING, READY, REPAIR, and DELETING.", - "enum": [ - "CREATING", - "DELETING", - "INVALID", - "READY", - "REPAIR" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "" - ] - }, - "statusMessage": { - "type": "string", - "description": "[Output Only] An optional, human-readable explanation of the status." - }, - "zone": { - "type": "string", - "description": "[Output Only] The name of the zone where the host resides, such as us-central1-a." - } - } - }, - "HostAggregatedList": { - "id": "HostAggregatedList", - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "object", - "description": "A list of HostsScopedList resources.", - "additionalProperties": { - "$ref": "HostsScopedList", - "description": "[Output Only] Name of the scope containing this set of hosts." - } - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#hostAggregatedList for aggregated lists of hosts.", - "default": "compute#hostAggregatedList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } + "globalForwardingRules": { + "methods": { + "delete": { + "description": "Deletes the specified GlobalForwardingRule resource.", + "httpMethod": "DELETE", + "id": "compute.globalForwardingRules.delete", + "parameterOrder": [ + "project", + "forwardingRule" + ], + "parameters": { + "forwardingRule": { + "description": "Name of the ForwardingRule resource to delete.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/forwardingRules/{forwardingRule}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Returns the specified GlobalForwardingRule resource. Get a list of available forwarding rules by making a list() request.", + "httpMethod": "GET", + "id": "compute.globalForwardingRules.get", + "parameterOrder": [ + "project", + "forwardingRule" + ], + "parameters": { + "forwardingRule": { + "description": "Name of the ForwardingRule resource to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/forwardingRules/{forwardingRule}", + "response": { + "$ref": "ForwardingRule" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "description": "Creates a GlobalForwardingRule resource in the specified project using the data included in the request.", + "httpMethod": "POST", + "id": "compute.globalForwardingRules.insert", + "parameterOrder": [ + "project" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/forwardingRules", + "request": { + "$ref": "ForwardingRule" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "description": "Retrieves a list of GlobalForwardingRule resources available to the specified project.", + "httpMethod": "GET", + "id": "compute.globalForwardingRules.list", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/forwardingRules", + "response": { + "$ref": "ForwardingRuleList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "patch": { + "description": "Updates the specified forwarding rule with the data included in the request. This method supports PATCH semantics and uses the JSON merge patch format and processing rules. Currently, you can only patch the network_tier field.", + "httpMethod": "PATCH", + "id": "compute.globalForwardingRules.patch", + "parameterOrder": [ + "project", + "forwardingRule" + ], + "parameters": { + "forwardingRule": { + "description": "Name of the ForwardingRule resource to patch.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/forwardingRules/{forwardingRule}", + "request": { + "$ref": "ForwardingRule" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setLabels": { + "description": "Sets the labels on the specified resource. To learn more about labels, read the Labeling Resources documentation.", + "httpMethod": "POST", + "id": "compute.globalForwardingRules.setLabels", + "parameterOrder": [ + "project", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/forwardingRules/{resource}/setLabels", + "request": { + "$ref": "GlobalSetLabelsRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setTarget": { + "description": "Changes target URL for the GlobalForwardingRule resource. The new target should be of the same type as the old target.", + "httpMethod": "POST", + "id": "compute.globalForwardingRules.setTarget", + "parameterOrder": [ + "project", + "forwardingRule" + ], + "parameters": { + "forwardingRule": { + "description": "Name of the ForwardingRule resource in which target is to be set.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/forwardingRules/{forwardingRule}/setTarget", + "request": { + "$ref": "TargetReference" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource.", + "httpMethod": "POST", + "id": "compute.globalForwardingRules.testIamPermissions", + "parameterOrder": [ + "project", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "(?:[-a-z0-9_]{0,62}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/forwardingRules/{resource}/testIamPermissions", + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." } - } - } - } - }, - "HostList": { - "id": "HostList", - "type": "object", - "description": "Contains a list of hosts.", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." }, - "items": { - "type": "array", - "description": "A list of Host resources.", - "items": { - "$ref": "Host" - } - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#hostList for lists of hosts.", - "default": "compute#hostList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } + "globalOperations": { + "methods": { + "aggregatedList": { + "description": "Retrieves an aggregated list of all operations.", + "httpMethod": "GET", + "id": "compute.globalOperations.aggregatedList", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/aggregated/operations", + "response": { + "$ref": "OperationAggregatedList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "delete": { + "description": "Deletes the specified Operations resource.", + "httpMethod": "DELETE", + "id": "compute.globalOperations.delete", + "parameterOrder": [ + "project", + "operation" + ], + "parameters": { + "operation": { + "description": "Name of the Operations resource to delete.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/operations/{operation}", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Retrieves the specified Operations resource. Get a list of operations by making a list() request.", + "httpMethod": "GET", + "id": "compute.globalOperations.get", + "parameterOrder": [ + "project", + "operation" + ], + "parameters": { + "operation": { + "description": "Name of the Operations resource to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/operations/{operation}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "list": { + "description": "Retrieves a list of Operation resources contained within the specified project.", + "httpMethod": "GET", + "id": "compute.globalOperations.list", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/operations", + "response": { + "$ref": "OperationList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." } - } - } - } - }, - "HostRule": { - "id": "HostRule", - "type": "object", - "description": "UrlMaps A host-matching rule for a URL. If matched, will use the named PathMatcher to select the BackendService.", - "properties": { - "description": { - "type": "string", - "description": "An optional description of this resource. Provide this property when you create the resource." }, - "hosts": { - "type": "array", - "description": "The list of host patterns to match. They must be valid hostnames, except * will match any string of ([a-z0-9-.]*). In that case, * must be the first character and must be followed in the pattern by either - or ..", - "items": { - "type": "string" - } - }, - "pathMatcher": { - "type": "string", - "description": "The name of the PathMatcher to use to match the path portion of the URL if the hostRule matches the URL's host portion." - } - } - }, - "HostType": { - "id": "HostType", - "type": "object", - "description": "A Host Type resource.", - "properties": { - "cpuPlatform": { - "type": "string", - "description": "[Output Only] The CPU platform used by this host type." - }, - "creationTimestamp": { - "type": "string", - "description": "[Output Only] Creation timestamp in RFC3339 text format." - }, - "deprecated": { - "$ref": "DeprecationStatus", - "description": "[Output Only] The deprecation status associated with this host type." - }, - "description": { - "type": "string", - "description": "[Output Only] An optional textual description of the resource." - }, - "guestCpus": { - "type": "integer", - "description": "[Output Only] The number of virtual CPUs that are available to the host type.", - "format": "int32" - }, - "id": { - "type": "string", - "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", - "format": "uint64" - }, - "kind": { - "type": "string", - "description": "[Output Only] The type of the resource. Always compute#hostType for host types.", - "default": "compute#hostType" - }, - "localSsdGb": { - "type": "integer", - "description": "[Output Only] Local SSD available to the host type, defined in GB.", - "format": "int32" - }, - "memoryMb": { - "type": "integer", - "description": "[Output Only] The amount of physical memory available to the host type, defined in MB.", - "format": "int32" - }, - "name": { - "type": "string", - "description": "[Output Only] Name of the resource.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for the resource." - }, - "zone": { - "type": "string", - "description": "[Output Only] The name of the zone where the host type resides, such as us-central1-a." - } - } - }, - "HostTypeAggregatedList": { - "id": "HostTypeAggregatedList", - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "object", - "description": "A list of HostTypesScopedList resources.", - "additionalProperties": { - "$ref": "HostTypesScopedList", - "description": "[Output Only] Name of the scope containing this set of host types." - } - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource.Always compute#hostTypeAggregatedList for aggregated lists of host types.", - "default": "compute#hostTypeAggregatedList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } + "healthChecks": { + "methods": { + "aggregatedList": { + "description": "Retrieves the list of all HealthCheck resources, regional and global, available to the specified project.", + "httpMethod": "GET", + "id": "compute.healthChecks.aggregatedList", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Name of the project scoping this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/aggregated/healthChecks", + "response": { + "$ref": "HealthChecksAggregatedList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "delete": { + "description": "Deletes the specified HealthCheck resource.", + "httpMethod": "DELETE", + "id": "compute.healthChecks.delete", + "parameterOrder": [ + "project", + "healthCheck" + ], + "parameters": { + "healthCheck": { + "description": "Name of the HealthCheck resource to delete.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/healthChecks/{healthCheck}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Returns the specified HealthCheck resource. Get a list of available health checks by making a list() request.", + "httpMethod": "GET", + "id": "compute.healthChecks.get", + "parameterOrder": [ + "project", + "healthCheck" + ], + "parameters": { + "healthCheck": { + "description": "Name of the HealthCheck resource to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/healthChecks/{healthCheck}", + "response": { + "$ref": "HealthCheck" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "description": "Creates a HealthCheck resource in the specified project using the data included in the request.", + "httpMethod": "POST", + "id": "compute.healthChecks.insert", + "parameterOrder": [ + "project" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/healthChecks", + "request": { + "$ref": "HealthCheck" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "description": "Retrieves the list of HealthCheck resources available to the specified project.", + "httpMethod": "GET", + "id": "compute.healthChecks.list", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/healthChecks", + "response": { + "$ref": "HealthCheckList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "patch": { + "description": "Updates a HealthCheck resource in the specified project using the data included in the request. This method supports PATCH semantics and uses the JSON merge patch format and processing rules.", + "httpMethod": "PATCH", + "id": "compute.healthChecks.patch", + "parameterOrder": [ + "project", + "healthCheck" + ], + "parameters": { + "healthCheck": { + "description": "Name of the HealthCheck resource to patch.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/healthChecks/{healthCheck}", + "request": { + "$ref": "HealthCheck" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource.", + "httpMethod": "POST", + "id": "compute.healthChecks.testIamPermissions", + "parameterOrder": [ + "project", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "(?:[-a-z0-9_]{0,62}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/healthChecks/{resource}/testIamPermissions", + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "update": { + "description": "Updates a HealthCheck resource in the specified project using the data included in the request.", + "httpMethod": "PUT", + "id": "compute.healthChecks.update", + "parameterOrder": [ + "project", + "healthCheck" + ], + "parameters": { + "healthCheck": { + "description": "Name of the HealthCheck resource to update.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/healthChecks/{healthCheck}", + "request": { + "$ref": "HealthCheck" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." } - } - } - } - }, - "HostTypeList": { - "id": "HostTypeList", - "type": "object", - "description": "Contains a list of host types.", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." }, - "items": { - "type": "array", - "description": "A list of HostType resources.", - "items": { - "$ref": "HostType" - } - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource.Always compute#hostTypeList for lists of host types.", - "default": "compute#hostTypeList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "HostTypesScopedList": { - "id": "HostTypesScopedList", - "type": "object", - "properties": { "hostTypes": { - "type": "array", - "description": "[Output Only] List of host types contained in this scope.", - "items": { - "$ref": "HostType" - } - }, - "warning": { - "type": "object", - "description": "[Output Only] An informational warning that appears when the host types list is empty.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } + "methods": { + "aggregatedList": { + "description": "Retrieves an aggregated list of host types.", + "httpMethod": "GET", + "id": "compute.hostTypes.aggregatedList", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/aggregated/hostTypes", + "response": { + "$ref": "HostTypeAggregatedList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "get": { + "description": "Returns the specified host type. Get a list of available host types by making a list() request.", + "httpMethod": "GET", + "id": "compute.hostTypes.get", + "parameterOrder": [ + "project", + "zone", + "hostType" + ], + "parameters": { + "hostType": { + "description": "Name of the host type to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/hostTypes/{hostType}", + "response": { + "$ref": "HostType" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "list": { + "description": "Retrieves a list of host types available to the specified project.", + "httpMethod": "GET", + "id": "compute.hostTypes.list", + "parameterOrder": [ + "project", + "zone" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/hostTypes", + "response": { + "$ref": "HostTypeList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." } - } - } - } - }, - "HostsScopedList": { - "id": "HostsScopedList", - "type": "object", - "properties": { + }, "hosts": { - "type": "array", - "description": "[Output Only] List of hosts contained in this scope.", - "items": { - "$ref": "Host" - } - }, - "warning": { - "type": "object", - "description": "[Output Only] An informational warning that appears when the host list is empty.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } + "methods": { + "aggregatedList": { + "description": "Retrieves an aggregated list of hosts.", + "httpMethod": "GET", + "id": "compute.hosts.aggregatedList", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/aggregated/hosts", + "response": { + "$ref": "HostAggregatedList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "delete": { + "description": "Deletes the specified Host resource.", + "httpMethod": "DELETE", + "id": "compute.hosts.delete", + "parameterOrder": [ + "project", + "zone", + "host" + ], + "parameters": { + "host": { + "description": "Name of the Host resource to delete.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/hosts/{host}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Returns the specified host. Get a list of available hosts by making a list() request.", + "httpMethod": "GET", + "id": "compute.hosts.get", + "parameterOrder": [ + "project", + "zone", + "host" + ], + "parameters": { + "host": { + "description": "Name of the host to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/hosts/{host}", + "response": { + "$ref": "Host" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "getIamPolicy": { + "description": "Gets the access control policy for a resource. May be empty if no such policy or resource exists.", + "httpMethod": "GET", + "id": "compute.hosts.getIamPolicy", + "parameterOrder": [ + "project", + "zone", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/hosts/{resource}/getIamPolicy", + "response": { + "$ref": "Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "description": "Creates a host resource in the specified project using the data included in the request.", + "httpMethod": "POST", + "id": "compute.hosts.insert", + "parameterOrder": [ + "project", + "zone" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/hosts", + "request": { + "$ref": "Host" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "description": "Retrieves a list of hosts available to the specified project.", + "httpMethod": "GET", + "id": "compute.hosts.list", + "parameterOrder": [ + "project", + "zone" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/hosts", + "response": { + "$ref": "HostList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "setIamPolicy": { + "description": "Sets the access control policy on the specified resource. Replaces any existing policy.", + "httpMethod": "POST", + "id": "compute.hosts.setIamPolicy", + "parameterOrder": [ + "project", + "zone", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/hosts/{resource}/setIamPolicy", + "request": { + "$ref": "Policy" + }, + "response": { + "$ref": "Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource.", + "httpMethod": "POST", + "id": "compute.hosts.testIamPermissions", + "parameterOrder": [ + "project", + "zone", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/hosts/{resource}/testIamPermissions", + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." } - } - } - } - }, - "HourlyMaintenanceWindow": { - "id": "HourlyMaintenanceWindow", - "type": "object", - "description": "Time window specified for hourly maintenance operations.", - "properties": { - "duration": { - "type": "string", - "description": "[Output only] Duration of the time window, automatically chosen to be smallest possible in the given scenario." }, - "hoursInCycle": { - "type": "integer", - "description": "Allows to define schedule that runs every nth hour.", - "format": "int32" - }, - "startTime": { - "type": "string", - "description": "Time within the maintenance window to start the maintenance operations. It must be in format \"HH:MM?, where HH : [00-23] and MM : [00-59] GMT." - } - } - }, - "HttpHealthCheck": { - "id": "HttpHealthCheck", - "type": "object", - "description": "An HttpHealthCheck resource. This resource defines a template for how individual instances should be checked for health, via HTTP.", - "properties": { - "checkIntervalSec": { - "type": "integer", - "description": "How often (in seconds) to send a health check. The default value is 5 seconds.", - "format": "int32" - }, - "creationTimestamp": { - "type": "string", - "description": "[Output Only] Creation timestamp in RFC3339 text format." - }, - "description": { - "type": "string", - "description": "An optional description of this resource. Provide this property when you create the resource." - }, - "healthyThreshold": { - "type": "integer", - "description": "A so-far unhealthy instance will be marked healthy after this many consecutive successes. The default value is 2.", - "format": "int32" - }, - "host": { - "type": "string", - "description": "The value of the host header in the HTTP health check request. If left empty (default value), the public IP on behalf of which this health check is performed will be used." - }, - "id": { - "type": "string", - "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", - "format": "uint64" - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of the resource. Always compute#httpHealthCheck for HTTP health checks.", - "default": "compute#httpHealthCheck" - }, - "name": { - "type": "string", - "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" - }, - "port": { - "type": "integer", - "description": "The TCP port number for the HTTP health check request. The default value is 80.", - "format": "int32" - }, - "requestPath": { - "type": "string", - "description": "The request path of the HTTP health check request. The default value is /." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for the resource." - }, - "timeoutSec": { - "type": "integer", - "description": "How long (in seconds) to wait before claiming failure. The default value is 5 seconds. It is invalid for timeoutSec to have greater value than checkIntervalSec.", - "format": "int32" - }, - "unhealthyThreshold": { - "type": "integer", - "description": "A so-far healthy instance will be marked unhealthy after this many consecutive failures. The default value is 2.", - "format": "int32" - } - } - }, - "HttpHealthCheckList": { - "id": "HttpHealthCheckList", - "type": "object", - "description": "Contains a list of HttpHealthCheck resources.", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "array", - "description": "A list of HttpHealthCheck resources.", - "items": { - "$ref": "HttpHealthCheck" - } - }, - "kind": { - "type": "string", - "description": "Type of resource.", - "default": "compute#httpHealthCheckList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } + "httpHealthChecks": { + "methods": { + "delete": { + "description": "Deletes the specified HttpHealthCheck resource.", + "httpMethod": "DELETE", + "id": "compute.httpHealthChecks.delete", + "parameterOrder": [ + "project", + "httpHealthCheck" + ], + "parameters": { + "httpHealthCheck": { + "description": "Name of the HttpHealthCheck resource to delete.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/httpHealthChecks/{httpHealthCheck}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Returns the specified HttpHealthCheck resource. Get a list of available HTTP health checks by making a list() request.", + "httpMethod": "GET", + "id": "compute.httpHealthChecks.get", + "parameterOrder": [ + "project", + "httpHealthCheck" + ], + "parameters": { + "httpHealthCheck": { + "description": "Name of the HttpHealthCheck resource to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/httpHealthChecks/{httpHealthCheck}", + "response": { + "$ref": "HttpHealthCheck" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "description": "Creates a HttpHealthCheck resource in the specified project using the data included in the request.", + "httpMethod": "POST", + "id": "compute.httpHealthChecks.insert", + "parameterOrder": [ + "project" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/httpHealthChecks", + "request": { + "$ref": "HttpHealthCheck" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "description": "Retrieves the list of HttpHealthCheck resources available to the specified project.", + "httpMethod": "GET", + "id": "compute.httpHealthChecks.list", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/httpHealthChecks", + "response": { + "$ref": "HttpHealthCheckList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "patch": { + "description": "Updates a HttpHealthCheck resource in the specified project using the data included in the request. This method supports PATCH semantics and uses the JSON merge patch format and processing rules.", + "httpMethod": "PATCH", + "id": "compute.httpHealthChecks.patch", + "parameterOrder": [ + "project", + "httpHealthCheck" + ], + "parameters": { + "httpHealthCheck": { + "description": "Name of the HttpHealthCheck resource to patch.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/httpHealthChecks/{httpHealthCheck}", + "request": { + "$ref": "HttpHealthCheck" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource.", + "httpMethod": "POST", + "id": "compute.httpHealthChecks.testIamPermissions", + "parameterOrder": [ + "project", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "(?:[-a-z0-9_]{0,62}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/httpHealthChecks/{resource}/testIamPermissions", + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "update": { + "description": "Updates a HttpHealthCheck resource in the specified project using the data included in the request.", + "httpMethod": "PUT", + "id": "compute.httpHealthChecks.update", + "parameterOrder": [ + "project", + "httpHealthCheck" + ], + "parameters": { + "httpHealthCheck": { + "description": "Name of the HttpHealthCheck resource to update.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/httpHealthChecks/{httpHealthCheck}", + "request": { + "$ref": "HttpHealthCheck" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." } - } - } - } - }, - "HttpsHealthCheck": { - "id": "HttpsHealthCheck", - "type": "object", - "description": "An HttpsHealthCheck resource. This resource defines a template for how individual instances should be checked for health, via HTTPS.", - "properties": { - "checkIntervalSec": { - "type": "integer", - "description": "How often (in seconds) to send a health check. The default value is 5 seconds.", - "format": "int32" }, - "creationTimestamp": { - "type": "string", - "description": "[Output Only] Creation timestamp in RFC3339 text format." - }, - "description": { - "type": "string", - "description": "An optional description of this resource. Provide this property when you create the resource." - }, - "healthyThreshold": { - "type": "integer", - "description": "A so-far unhealthy instance will be marked healthy after this many consecutive successes. The default value is 2.", - "format": "int32" - }, - "host": { - "type": "string", - "description": "The value of the host header in the HTTPS health check request. If left empty (default value), the public IP on behalf of which this health check is performed will be used." - }, - "id": { - "type": "string", - "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", - "format": "uint64" - }, - "kind": { - "type": "string", - "description": "Type of the resource.", - "default": "compute#httpsHealthCheck" - }, - "name": { - "type": "string", - "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" - }, - "port": { - "type": "integer", - "description": "The TCP port number for the HTTPS health check request. The default value is 443.", - "format": "int32" - }, - "requestPath": { - "type": "string", - "description": "The request path of the HTTPS health check request. The default value is \"/\"." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for the resource." - }, - "timeoutSec": { - "type": "integer", - "description": "How long (in seconds) to wait before claiming failure. The default value is 5 seconds. It is invalid for timeoutSec to have a greater value than checkIntervalSec.", - "format": "int32" - }, - "unhealthyThreshold": { - "type": "integer", - "description": "A so-far healthy instance will be marked unhealthy after this many consecutive failures. The default value is 2.", - "format": "int32" - } - } - }, - "HttpsHealthCheckList": { - "id": "HttpsHealthCheckList", - "type": "object", - "description": "Contains a list of HttpsHealthCheck resources.", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "array", - "description": "A list of HttpsHealthCheck resources.", - "items": { - "$ref": "HttpsHealthCheck" - } - }, - "kind": { - "type": "string", - "description": "Type of resource.", - "default": "compute#httpsHealthCheckList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } + "httpsHealthChecks": { + "methods": { + "delete": { + "description": "Deletes the specified HttpsHealthCheck resource.", + "httpMethod": "DELETE", + "id": "compute.httpsHealthChecks.delete", + "parameterOrder": [ + "project", + "httpsHealthCheck" + ], + "parameters": { + "httpsHealthCheck": { + "description": "Name of the HttpsHealthCheck resource to delete.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/httpsHealthChecks/{httpsHealthCheck}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Returns the specified HttpsHealthCheck resource. Get a list of available HTTPS health checks by making a list() request.", + "httpMethod": "GET", + "id": "compute.httpsHealthChecks.get", + "parameterOrder": [ + "project", + "httpsHealthCheck" + ], + "parameters": { + "httpsHealthCheck": { + "description": "Name of the HttpsHealthCheck resource to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/httpsHealthChecks/{httpsHealthCheck}", + "response": { + "$ref": "HttpsHealthCheck" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "description": "Creates a HttpsHealthCheck resource in the specified project using the data included in the request.", + "httpMethod": "POST", + "id": "compute.httpsHealthChecks.insert", + "parameterOrder": [ + "project" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/httpsHealthChecks", + "request": { + "$ref": "HttpsHealthCheck" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "description": "Retrieves the list of HttpsHealthCheck resources available to the specified project.", + "httpMethod": "GET", + "id": "compute.httpsHealthChecks.list", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/httpsHealthChecks", + "response": { + "$ref": "HttpsHealthCheckList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "patch": { + "description": "Updates a HttpsHealthCheck resource in the specified project using the data included in the request. This method supports PATCH semantics and uses the JSON merge patch format and processing rules.", + "httpMethod": "PATCH", + "id": "compute.httpsHealthChecks.patch", + "parameterOrder": [ + "project", + "httpsHealthCheck" + ], + "parameters": { + "httpsHealthCheck": { + "description": "Name of the HttpsHealthCheck resource to patch.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/httpsHealthChecks/{httpsHealthCheck}", + "request": { + "$ref": "HttpsHealthCheck" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource.", + "httpMethod": "POST", + "id": "compute.httpsHealthChecks.testIamPermissions", + "parameterOrder": [ + "project", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "(?:[-a-z0-9_]{0,62}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/httpsHealthChecks/{resource}/testIamPermissions", + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "update": { + "description": "Updates a HttpsHealthCheck resource in the specified project using the data included in the request.", + "httpMethod": "PUT", + "id": "compute.httpsHealthChecks.update", + "parameterOrder": [ + "project", + "httpsHealthCheck" + ], + "parameters": { + "httpsHealthCheck": { + "description": "Name of the HttpsHealthCheck resource to update.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/httpsHealthChecks/{httpsHealthCheck}", + "request": { + "$ref": "HttpsHealthCheck" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." } - } - } - } - }, - "Image": { - "id": "Image", - "type": "object", - "description": "An Image resource. (== resource_for beta.images ==) (== resource_for v1.images ==)", - "properties": { - "archiveSizeBytes": { - "type": "string", - "description": "Size of the image tar.gz archive stored in Google Cloud Storage (in bytes).", - "format": "int64" }, - "creationTimestamp": { - "type": "string", - "description": "[Output Only] Creation timestamp in RFC3339 text format." + "images": { + "methods": { + "delete": { + "description": "Deletes the specified image.", + "httpMethod": "DELETE", + "id": "compute.images.delete", + "parameterOrder": [ + "project", + "image" + ], + "parameters": { + "image": { + "description": "Name of the image resource to delete.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/images/{image}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "deprecate": { + "description": "Sets the deprecation status of an image.\n\nIf an empty request body is given, clears the deprecation status instead.", + "httpMethod": "POST", + "id": "compute.images.deprecate", + "parameterOrder": [ + "project", + "image" + ], + "parameters": { + "image": { + "description": "Image name.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/images/{image}/deprecate", + "request": { + "$ref": "DeprecationStatus" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Returns the specified image. Get a list of available images by making a list() request.", + "httpMethod": "GET", + "id": "compute.images.get", + "parameterOrder": [ + "project", + "image" + ], + "parameters": { + "image": { + "description": "Name of the image resource to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/images/{image}", + "response": { + "$ref": "Image" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "getFromFamily": { + "description": "Returns the latest image that is part of an image family and is not deprecated.", + "httpMethod": "GET", + "id": "compute.images.getFromFamily", + "parameterOrder": [ + "project", + "family" + ], + "parameters": { + "family": { + "description": "Name of the image family to search for.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/images/family/{family}", + "response": { + "$ref": "Image" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "getIamPolicy": { + "description": "Gets the access control policy for a resource. May be empty if no such policy or resource exists.", + "httpMethod": "GET", + "id": "compute.images.getIamPolicy", + "parameterOrder": [ + "project", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "[a-z0-9](?:[-a-z0-9_]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/images/{resource}/getIamPolicy", + "response": { + "$ref": "Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "description": "Creates an image in the specified project using the data included in the request.", + "httpMethod": "POST", + "id": "compute.images.insert", + "parameterOrder": [ + "project" + ], + "parameters": { + "forceCreate": { + "description": "Force image creation if true.", + "location": "query", + "type": "boolean" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/images", + "request": { + "$ref": "Image" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/devstorage.full_control", + "https://www.googleapis.com/auth/devstorage.read_only", + "https://www.googleapis.com/auth/devstorage.read_write" + ] + }, + "list": { + "description": "Retrieves the list of custom images available to the specified project. Custom images are images you create that belong to your project. This method does not get any images that belong to other projects, including publicly-available images, like Debian 8. If you want to get a list of publicly-available images, use this method to make a request to the respective image project, such as debian-cloud or windows-cloud.", + "httpMethod": "GET", + "id": "compute.images.list", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/images", + "response": { + "$ref": "ImageList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "setIamPolicy": { + "description": "Sets the access control policy on the specified resource. Replaces any existing policy.", + "httpMethod": "POST", + "id": "compute.images.setIamPolicy", + "parameterOrder": [ + "project", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "[a-z0-9](?:[-a-z0-9_]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/images/{resource}/setIamPolicy", + "request": { + "$ref": "Policy" + }, + "response": { + "$ref": "Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setLabels": { + "description": "Sets the labels on an image. To learn more about labels, read the Labeling Resources documentation.", + "httpMethod": "POST", + "id": "compute.images.setLabels", + "parameterOrder": [ + "project", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/images/{resource}/setLabels", + "request": { + "$ref": "GlobalSetLabelsRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource.", + "httpMethod": "POST", + "id": "compute.images.testIamPermissions", + "parameterOrder": [ + "project", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "(?:[-a-z0-9_]{0,62}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/images/{resource}/testIamPermissions", + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + } + } }, - "deprecated": { - "$ref": "DeprecationStatus", - "description": "The deprecation status associated with this image." + "instanceGroupManagers": { + "methods": { + "abandonInstances": { + "description": "Schedules a group action to remove the specified instances from the managed instance group. Abandoning an instance does not delete the instance, but it does remove the instance from any target pools that are applied by the managed instance group. This method reduces the targetSize of the managed instance group by the number of instances that you abandon. This operation is marked as DONE when the action is scheduled even if the instances have not yet been removed from the group. You must separately verify the status of the abandoning action with the listmanagedinstances method.\n\nIf the group is part of a backend service that has enabled connection draining, it can take up to 60 seconds after the connection draining duration has elapsed before the VM instance is removed or deleted.\n\nYou can specify a maximum of 1000 instances with this method per request.", + "httpMethod": "POST", + "id": "compute.instanceGroupManagers.abandonInstances", + "parameterOrder": [ + "project", + "zone", + "instanceGroupManager" + ], + "parameters": { + "instanceGroupManager": { + "description": "The name of the managed instance group.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "The name of the zone where the managed instance group is located.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/abandonInstances", + "request": { + "$ref": "InstanceGroupManagersAbandonInstancesRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "aggregatedList": { + "description": "Retrieves the list of managed instance groups and groups them by zone.", + "httpMethod": "GET", + "id": "compute.instanceGroupManagers.aggregatedList", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/aggregated/instanceGroupManagers", + "response": { + "$ref": "InstanceGroupManagerAggregatedList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "applyUpdatesToInstances": { + "description": "Apply changes to selected instances on the managed instance group. This method can be used to apply new overrides and/or new versions.", + "httpMethod": "POST", + "id": "compute.instanceGroupManagers.applyUpdatesToInstances", + "parameterOrder": [ + "project", + "zone", + "instanceGroupManager" + ], + "parameters": { + "instanceGroupManager": { + "description": "The name of the managed instance group, should conform to RFC1035.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "zone": { + "description": "The name of the zone where the managed instance group is located. Should conform to RFC1035.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/applyUpdatesToInstances", + "request": { + "$ref": "InstanceGroupManagersApplyUpdatesRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "delete": { + "description": "Deletes the specified managed instance group and all of the instances in that group. Note that the instance group must not belong to a backend service. Read Deleting an instance group for more information.", + "httpMethod": "DELETE", + "id": "compute.instanceGroupManagers.delete", + "parameterOrder": [ + "project", + "zone", + "instanceGroupManager" + ], + "parameters": { + "instanceGroupManager": { + "description": "The name of the managed instance group to delete.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "The name of the zone where the managed instance group is located.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "deleteInstances": { + "description": "Schedules a group action to delete the specified instances in the managed instance group. The instances are also removed from any target pools of which they were a member. This method reduces the targetSize of the managed instance group by the number of instances that you delete. This operation is marked as DONE when the action is scheduled even if the instances are still being deleted. You must separately verify the status of the deleting action with the listmanagedinstances method.\n\nIf the group is part of a backend service that has enabled connection draining, it can take up to 60 seconds after the connection draining duration has elapsed before the VM instance is removed or deleted.\n\nYou can specify a maximum of 1000 instances with this method per request.", + "httpMethod": "POST", + "id": "compute.instanceGroupManagers.deleteInstances", + "parameterOrder": [ + "project", + "zone", + "instanceGroupManager" + ], + "parameters": { + "instanceGroupManager": { + "description": "The name of the managed instance group.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "The name of the zone where the managed instance group is located.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/deleteInstances", + "request": { + "$ref": "InstanceGroupManagersDeleteInstancesRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "deletePerInstanceConfigs": { + "description": "Delete selected per-instance configs for the managed instance group.", + "httpMethod": "POST", + "id": "compute.instanceGroupManagers.deletePerInstanceConfigs", + "parameterOrder": [ + "project", + "zone", + "instanceGroupManager" + ], + "parameters": { + "instanceGroupManager": { + "description": "The name of the managed instance group. It should conform to RFC1035.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "zone": { + "description": "The name of the zone where the managed instance group is located. It should conform to RFC1035.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/deletePerInstanceConfigs", + "request": { + "$ref": "InstanceGroupManagersDeletePerInstanceConfigsReq" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Returns all of the details about the specified managed instance group. Get a list of available managed instance groups by making a list() request.", + "httpMethod": "GET", + "id": "compute.instanceGroupManagers.get", + "parameterOrder": [ + "project", + "zone", + "instanceGroupManager" + ], + "parameters": { + "instanceGroupManager": { + "description": "The name of the managed instance group.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "zone": { + "description": "The name of the zone where the managed instance group is located.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}", + "response": { + "$ref": "InstanceGroupManager" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "description": "Creates a managed instance group using the information that you specify in the request. After the group is created, it schedules an action to create instances in the group using the specified instance template. This operation is marked as DONE when the group is created even if the instances in the group have not yet been created. You must separately verify the status of the individual instances with the listmanagedinstances method.\n\nA managed instance group can have up to 1000 VM instances per group. Please contact Cloud Support if you need an increase in this limit.", + "httpMethod": "POST", + "id": "compute.instanceGroupManagers.insert", + "parameterOrder": [ + "project", + "zone" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "The name of the zone where you want to create the managed instance group.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instanceGroupManagers", + "request": { + "$ref": "InstanceGroupManager" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "description": "Retrieves a list of managed instance groups that are contained within the specified project and zone.", + "httpMethod": "GET", + "id": "compute.instanceGroupManagers.list", + "parameterOrder": [ + "project", + "zone" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "zone": { + "description": "The name of the zone where the managed instance group is located.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instanceGroupManagers", + "response": { + "$ref": "InstanceGroupManagerList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "listManagedInstances": { + "description": "Lists all of the instances in the managed instance group. Each instance in the list has a currentAction, which indicates the action that the managed instance group is performing on the instance. For example, if the group is still creating an instance, the currentAction is CREATING. If a previous action failed, the list displays the errors for that failed action.", + "httpMethod": "POST", + "id": "compute.instanceGroupManagers.listManagedInstances", + "parameterOrder": [ + "project", + "zone", + "instanceGroupManager" + ], + "parameters": { + "filter": { + "location": "query", + "type": "string" + }, + "instanceGroupManager": { + "description": "The name of the managed instance group.", + "location": "path", + "required": true, + "type": "string" + }, + "maxResults": { + "default": "500", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "order_by": { + "location": "query", + "type": "string" + }, + "pageToken": { + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "zone": { + "description": "The name of the zone where the managed instance group is located.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/listManagedInstances", + "response": { + "$ref": "InstanceGroupManagersListManagedInstancesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "listPerInstanceConfigs": { + "description": "Lists all of the per-instance configs defined for the managed instance group.", + "httpMethod": "POST", + "id": "compute.instanceGroupManagers.listPerInstanceConfigs", + "parameterOrder": [ + "project", + "zone", + "instanceGroupManager" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "instanceGroupManager": { + "description": "The name of the managed instance group. It should conform to RFC1035.", + "location": "path", + "required": true, + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "zone": { + "description": "The name of the zone where the managed instance group is located. It should conform to RFC1035.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/listPerInstanceConfigs", + "response": { + "$ref": "InstanceGroupManagersListPerInstanceConfigsResp" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "patch": { + "description": "Updates a managed instance group using the information that you specify in the request. This operation is marked as DONE when the group is patched even if the instances in the group are still in the process of being patched. You must separately verify the status of the individual instances with the listManagedInstances method. This method supports PATCH semantics and uses the JSON merge patch format and processing rules.", + "httpMethod": "PATCH", + "id": "compute.instanceGroupManagers.patch", + "parameterOrder": [ + "project", + "zone", + "instanceGroupManager" + ], + "parameters": { + "instanceGroupManager": { + "description": "The name of the instance group manager.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "The name of the zone where you want to create the managed instance group.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}", + "request": { + "$ref": "InstanceGroupManager" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "recreateInstances": { + "description": "Schedules a group action to recreate the specified instances in the managed instance group. The instances are deleted and recreated using the current instance template for the managed instance group. This operation is marked as DONE when the action is scheduled even if the instances have not yet been recreated. You must separately verify the status of the recreating action with the listmanagedinstances method.\n\nIf the group is part of a backend service that has enabled connection draining, it can take up to 60 seconds after the connection draining duration has elapsed before the VM instance is removed or deleted.\n\nYou can specify a maximum of 1000 instances with this method per request.", + "httpMethod": "POST", + "id": "compute.instanceGroupManagers.recreateInstances", + "parameterOrder": [ + "project", + "zone", + "instanceGroupManager" + ], + "parameters": { + "instanceGroupManager": { + "description": "The name of the managed instance group.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "The name of the zone where the managed instance group is located.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/recreateInstances", + "request": { + "$ref": "InstanceGroupManagersRecreateInstancesRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "resize": { + "description": "Resizes the managed instance group. If you increase the size, the group creates new instances using the current instance template. If you decrease the size, the group deletes instances. The resize operation is marked DONE when the resize actions are scheduled even if the group has not yet added or deleted any instances. You must separately verify the status of the creating or deleting actions with the listmanagedinstances method.\n\nIf the group is part of a backend service that has enabled connection draining, it can take up to 60 seconds after the connection draining duration has elapsed before the VM instance is removed or deleted.", + "httpMethod": "POST", + "id": "compute.instanceGroupManagers.resize", + "parameterOrder": [ + "project", + "zone", + "instanceGroupManager", + "size" + ], + "parameters": { + "instanceGroupManager": { + "description": "The name of the managed instance group.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "size": { + "description": "The number of running instances that the managed instance group should maintain at any given time. The group automatically adds or removes instances to maintain the number of instances specified by this parameter.", + "format": "int32", + "location": "query", + "required": true, + "type": "integer" + }, + "zone": { + "description": "The name of the zone where the managed instance group is located.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/resize", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "resizeAdvanced": { + "description": "Resizes the managed instance group with advanced configuration options like disabling creation retries. This is an extended version of the resize method.\n\nIf you increase the size of the instance group, the group creates new instances using the current instance template. If you decrease the size, the group deletes instances. The resize operation is marked DONE when the resize actions are scheduled even if the group has not yet added or deleted any instances. You must separately verify the status of the creating, creatingWithoutRetries, or deleting actions with the get or listmanagedinstances method.\n\nIf the group is part of a backend service that has enabled connection draining, it can take up to 60 seconds after the connection draining duration has elapsed before the VM instance is removed or deleted.", + "httpMethod": "POST", + "id": "compute.instanceGroupManagers.resizeAdvanced", + "parameterOrder": [ + "project", + "zone", + "instanceGroupManager" + ], + "parameters": { + "instanceGroupManager": { + "description": "The name of the managed instance group.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "The name of the zone where the managed instance group is located.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/resizeAdvanced", + "request": { + "$ref": "InstanceGroupManagersResizeAdvancedRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setAutoHealingPolicies": { + "description": "Modifies the autohealing policies.", + "httpMethod": "POST", + "id": "compute.instanceGroupManagers.setAutoHealingPolicies", + "parameterOrder": [ + "project", + "zone", + "instanceGroupManager" + ], + "parameters": { + "instanceGroupManager": { + "description": "The name of the instance group manager.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "The name of the zone where the managed instance group is located.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/setAutoHealingPolicies", + "request": { + "$ref": "InstanceGroupManagersSetAutoHealingRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setInstanceTemplate": { + "description": "Specifies the instance template to use when creating new instances in this group. The templates for existing instances in the group do not change unless you recreate them.", + "httpMethod": "POST", + "id": "compute.instanceGroupManagers.setInstanceTemplate", + "parameterOrder": [ + "project", + "zone", + "instanceGroupManager" + ], + "parameters": { + "instanceGroupManager": { + "description": "The name of the managed instance group.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "The name of the zone where the managed instance group is located.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/setInstanceTemplate", + "request": { + "$ref": "InstanceGroupManagersSetInstanceTemplateRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setTargetPools": { + "description": "Modifies the target pools to which all instances in this managed instance group are assigned. The target pools automatically apply to all of the instances in the managed instance group. This operation is marked DONE when you make the request even if the instances have not yet been added to their target pools. The change might take some time to apply to all of the instances in the group depending on the size of the group.", + "httpMethod": "POST", + "id": "compute.instanceGroupManagers.setTargetPools", + "parameterOrder": [ + "project", + "zone", + "instanceGroupManager" + ], + "parameters": { + "instanceGroupManager": { + "description": "The name of the managed instance group.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "The name of the zone where the managed instance group is located.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/setTargetPools", + "request": { + "$ref": "InstanceGroupManagersSetTargetPoolsRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource.", + "httpMethod": "POST", + "id": "compute.instanceGroupManagers.testIamPermissions", + "parameterOrder": [ + "project", + "zone", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instanceGroupManagers/{resource}/testIamPermissions", + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "update": { + "description": "Updates a managed instance group using the information that you specify in the request. This operation is marked as DONE when the group is updated even if the instances in the group have not yet been updated. You must separately verify the status of the individual instances with the listManagedInstances method.", + "httpMethod": "PUT", + "id": "compute.instanceGroupManagers.update", + "parameterOrder": [ + "project", + "zone", + "instanceGroupManager" + ], + "parameters": { + "instanceGroupManager": { + "description": "The name of the instance group manager.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "The name of the zone where you want to create the managed instance group.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}", + "request": { + "$ref": "InstanceGroupManager" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "updatePerInstanceConfigs": { + "description": "Insert or patch (for the ones that already exist) per-instance configs for the managed instance group. perInstanceConfig.instance serves as a key used to distinguish whether to perform insert or patch.", + "httpMethod": "POST", + "id": "compute.instanceGroupManagers.updatePerInstanceConfigs", + "parameterOrder": [ + "project", + "zone", + "instanceGroupManager" + ], + "parameters": { + "instanceGroupManager": { + "description": "The name of the managed instance group. It should conform to RFC1035.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "The name of the zone where the managed instance group is located. It should conform to RFC1035.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/updatePerInstanceConfigs", + "request": { + "$ref": "InstanceGroupManagersUpdatePerInstanceConfigsReq" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + } + } }, - "description": { - "type": "string", - "description": "An optional description of this resource. Provide this property when you create the resource." + "instanceGroups": { + "methods": { + "addInstances": { + "description": "Adds a list of instances to the specified instance group. All of the instances in the instance group must be in the same network/subnetwork. Read Adding instances for more information.", + "httpMethod": "POST", + "id": "compute.instanceGroups.addInstances", + "parameterOrder": [ + "project", + "zone", + "instanceGroup" + ], + "parameters": { + "instanceGroup": { + "description": "The name of the instance group where you are adding instances.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "The name of the zone where the instance group is located.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instanceGroups/{instanceGroup}/addInstances", + "request": { + "$ref": "InstanceGroupsAddInstancesRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "aggregatedList": { + "description": "Retrieves the list of instance groups and sorts them by zone.", + "httpMethod": "GET", + "id": "compute.instanceGroups.aggregatedList", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/aggregated/instanceGroups", + "response": { + "$ref": "InstanceGroupAggregatedList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "delete": { + "description": "Deletes the specified instance group. The instances in the group are not deleted. Note that instance group must not belong to a backend service. Read Deleting an instance group for more information.", + "httpMethod": "DELETE", + "id": "compute.instanceGroups.delete", + "parameterOrder": [ + "project", + "zone", + "instanceGroup" + ], + "parameters": { + "instanceGroup": { + "description": "The name of the instance group to delete.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "The name of the zone where the instance group is located.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instanceGroups/{instanceGroup}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Returns the specified instance group. Get a list of available instance groups by making a list() request.", + "httpMethod": "GET", + "id": "compute.instanceGroups.get", + "parameterOrder": [ + "project", + "zone", + "instanceGroup" + ], + "parameters": { + "instanceGroup": { + "description": "The name of the instance group.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "zone": { + "description": "The name of the zone where the instance group is located.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instanceGroups/{instanceGroup}", + "response": { + "$ref": "InstanceGroup" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "description": "Creates an instance group in the specified project using the parameters that are included in the request.", + "httpMethod": "POST", + "id": "compute.instanceGroups.insert", + "parameterOrder": [ + "project", + "zone" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "The name of the zone where you want to create the instance group.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instanceGroups", + "request": { + "$ref": "InstanceGroup" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "description": "Retrieves the list of instance groups that are located in the specified project and zone.", + "httpMethod": "GET", + "id": "compute.instanceGroups.list", + "parameterOrder": [ + "project", + "zone" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "zone": { + "description": "The name of the zone where the instance group is located.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instanceGroups", + "response": { + "$ref": "InstanceGroupList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "listInstances": { + "description": "Lists the instances in the specified instance group.", + "httpMethod": "POST", + "id": "compute.instanceGroups.listInstances", + "parameterOrder": [ + "project", + "zone", + "instanceGroup" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "instanceGroup": { + "description": "The name of the instance group from which you want to generate a list of included instances.", + "location": "path", + "required": true, + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "zone": { + "description": "The name of the zone where the instance group is located.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instanceGroups/{instanceGroup}/listInstances", + "request": { + "$ref": "InstanceGroupsListInstancesRequest" + }, + "response": { + "$ref": "InstanceGroupsListInstances" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "removeInstances": { + "description": "Removes one or more instances from the specified instance group, but does not delete those instances.\n\nIf the group is part of a backend service that has enabled connection draining, it can take up to 60 seconds after the connection draining duration before the VM instance is removed or deleted.", + "httpMethod": "POST", + "id": "compute.instanceGroups.removeInstances", + "parameterOrder": [ + "project", + "zone", + "instanceGroup" + ], + "parameters": { + "instanceGroup": { + "description": "The name of the instance group where the specified instances will be removed.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "The name of the zone where the instance group is located.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instanceGroups/{instanceGroup}/removeInstances", + "request": { + "$ref": "InstanceGroupsRemoveInstancesRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setNamedPorts": { + "description": "Sets the named ports for the specified instance group.", + "httpMethod": "POST", + "id": "compute.instanceGroups.setNamedPorts", + "parameterOrder": [ + "project", + "zone", + "instanceGroup" + ], + "parameters": { + "instanceGroup": { + "description": "The name of the instance group where the named ports are updated.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "The name of the zone where the instance group is located.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instanceGroups/{instanceGroup}/setNamedPorts", + "request": { + "$ref": "InstanceGroupsSetNamedPortsRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource.", + "httpMethod": "POST", + "id": "compute.instanceGroups.testIamPermissions", + "parameterOrder": [ + "project", + "zone", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instanceGroups/{resource}/testIamPermissions", + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + } + } }, - "diskSizeGb": { - "type": "string", - "description": "Size of the image when restored onto a persistent disk (in GB).", - "format": "int64" + "instanceTemplates": { + "methods": { + "delete": { + "description": "Deletes the specified instance template. Deleting an instance template is permanent and cannot be undone. It's not possible to delete templates which are in use by an instance group.", + "httpMethod": "DELETE", + "id": "compute.instanceTemplates.delete", + "parameterOrder": [ + "project", + "instanceTemplate" + ], + "parameters": { + "instanceTemplate": { + "description": "The name of the instance template to delete.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/instanceTemplates/{instanceTemplate}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Returns the specified instance template. Get a list of available instance templates by making a list() request.", + "httpMethod": "GET", + "id": "compute.instanceTemplates.get", + "parameterOrder": [ + "project", + "instanceTemplate" + ], + "parameters": { + "instanceTemplate": { + "description": "The name of the instance template.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/instanceTemplates/{instanceTemplate}", + "response": { + "$ref": "InstanceTemplate" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "description": "Creates an instance template in the specified project using the data that is included in the request. If you are creating a new template to update an existing instance group, your new instance template must use the same network or, if applicable, the same subnetwork as the original template.", + "httpMethod": "POST", + "id": "compute.instanceTemplates.insert", + "parameterOrder": [ + "project" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/instanceTemplates", + "request": { + "$ref": "InstanceTemplate" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "description": "Retrieves a list of instance templates that are contained within the specified project and zone.", + "httpMethod": "GET", + "id": "compute.instanceTemplates.list", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/instanceTemplates", + "response": { + "$ref": "InstanceTemplateList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource.", + "httpMethod": "POST", + "id": "compute.instanceTemplates.testIamPermissions", + "parameterOrder": [ + "project", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "(?:[-a-z0-9_]{0,62}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/instanceTemplates/{resource}/testIamPermissions", + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + } + } }, - "family": { - "type": "string", - "description": "The name of the image family to which this image belongs. You can create disks by specifying an image family instead of a specific image name. The image family always returns its latest image that is not deprecated. The name of the image family must comply with RFC1035." + "instances": { + "methods": { + "addAccessConfig": { + "description": "Adds an access config to an instance's network interface.", + "httpMethod": "POST", + "id": "compute.instances.addAccessConfig", + "parameterOrder": [ + "project", + "zone", + "instance", + "networkInterface" + ], + "parameters": { + "instance": { + "description": "The instance name for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "networkInterface": { + "description": "The name of the network interface to add to this instance.", + "location": "query", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instances/{instance}/addAccessConfig", + "request": { + "$ref": "AccessConfig" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "addMaintenancePolicies": { + "description": "Adds existing maintenance policies to an instance. You can only add one policy right now which will be applied to this instance for scheduling live migrations.", + "httpMethod": "POST", + "id": "compute.instances.addMaintenancePolicies", + "parameterOrder": [ + "project", + "zone", + "instance" + ], + "parameters": { + "instance": { + "description": "The instance name for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instances/{instance}/addMaintenancePolicies", + "request": { + "$ref": "InstancesAddMaintenancePoliciesRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "aggregatedList": { + "description": "Retrieves aggregated list of instances.", + "httpMethod": "GET", + "id": "compute.instances.aggregatedList", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/aggregated/instances", + "response": { + "$ref": "InstanceAggregatedList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "attachDisk": { + "description": "Attaches an existing Disk resource to an instance. You must first create the disk before you can attach it. It is not possible to create and attach a disk at the same time. For more information, read Adding a persistent disk to your instance.", + "httpMethod": "POST", + "id": "compute.instances.attachDisk", + "parameterOrder": [ + "project", + "zone", + "instance" + ], + "parameters": { + "forceAttach": { + "description": "Whether to force attach the disk even if it's currently attached to another instance. This is only available for regional disks.", + "location": "query", + "type": "boolean" + }, + "instance": { + "description": "The instance name for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instances/{instance}/attachDisk", + "request": { + "$ref": "AttachedDisk" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "delete": { + "description": "Deletes the specified Instance resource. For more information, see Stopping or Deleting an Instance.", + "httpMethod": "DELETE", + "id": "compute.instances.delete", + "parameterOrder": [ + "project", + "zone", + "instance" + ], + "parameters": { + "instance": { + "description": "Name of the instance resource to delete.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instances/{instance}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "deleteAccessConfig": { + "description": "Deletes an access config from an instance's network interface.", + "httpMethod": "POST", + "id": "compute.instances.deleteAccessConfig", + "parameterOrder": [ + "project", + "zone", + "instance", + "accessConfig", + "networkInterface" + ], + "parameters": { + "accessConfig": { + "description": "The name of the access config to delete.", + "location": "query", + "required": true, + "type": "string" + }, + "instance": { + "description": "The instance name for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "networkInterface": { + "description": "The name of the network interface.", + "location": "query", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instances/{instance}/deleteAccessConfig", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "detachDisk": { + "description": "Detaches a disk from an instance.", + "httpMethod": "POST", + "id": "compute.instances.detachDisk", + "parameterOrder": [ + "project", + "zone", + "instance", + "deviceName" + ], + "parameters": { + "deviceName": { + "description": "Disk device name to detach.", + "location": "query", + "required": true, + "type": "string" + }, + "instance": { + "description": "Instance name.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instances/{instance}/detachDisk", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Returns the specified Instance resource. Get a list of available instances by making a list() request.", + "httpMethod": "GET", + "id": "compute.instances.get", + "parameterOrder": [ + "project", + "zone", + "instance" + ], + "parameters": { + "instance": { + "description": "Name of the instance resource to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instances/{instance}", + "response": { + "$ref": "Instance" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "getGuestAttributes": { + "description": "Returns the specified guest attributes entry.", + "httpMethod": "GET", + "id": "compute.instances.getGuestAttributes", + "parameterOrder": [ + "project", + "zone", + "instance" + ], + "parameters": { + "instance": { + "description": "Name of the instance scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "variableKey": { + "description": "Specifies the key for the guest attributes entry.", + "location": "query", + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instances/{instance}/getGuestAttributes", + "response": { + "$ref": "GuestAttributes" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "getIamPolicy": { + "description": "Gets the access control policy for a resource. May be empty if no such policy or resource exists.", + "httpMethod": "GET", + "id": "compute.instances.getIamPolicy", + "parameterOrder": [ + "project", + "zone", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instances/{resource}/getIamPolicy", + "response": { + "$ref": "Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "getSerialPortOutput": { + "description": "Returns the specified instance's serial port output.", + "httpMethod": "GET", + "id": "compute.instances.getSerialPortOutput", + "parameterOrder": [ + "project", + "zone", + "instance" + ], + "parameters": { + "instance": { + "description": "Name of the instance scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "port": { + "default": "1", + "description": "Specifies which COM or serial port to retrieve data from.", + "format": "int32", + "location": "query", + "maximum": "4", + "minimum": "1", + "type": "integer" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "start": { + "description": "Returns output starting from a specific byte position. Use this to page through output when the output is too large to return in a single request. For the initial request, leave this field unspecified. For subsequent calls, this field should be set to the next value returned in the previous call.", + "format": "int64", + "location": "query", + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instances/{instance}/serialPort", + "response": { + "$ref": "SerialPortOutput" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "description": "Creates an instance resource in the specified project using the data included in the request.", + "httpMethod": "POST", + "id": "compute.instances.insert", + "parameterOrder": [ + "project", + "zone" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "sourceInstanceTemplate": { + "description": "Specifies instance template to create the instance.\n\nThis field is optional. It can be a full or partial URL. For example, the following are all valid URLs to an instance template: \n- https://www.googleapis.com/compute/v1/projects/project/global/global/instanceTemplates/instanceTemplate \n- projects/project/global/global/instanceTemplates/instanceTemplate \n- global/instancesTemplates/instanceTemplate", + "location": "query", + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instances", + "request": { + "$ref": "Instance" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "description": "Retrieves the list of instances contained within the specified zone.", + "httpMethod": "GET", + "id": "compute.instances.list", + "parameterOrder": [ + "project", + "zone" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instances", + "response": { + "$ref": "InstanceList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "listReferrers": { + "description": "Retrieves the list of referrers to instances contained within the specified zone.", + "httpMethod": "GET", + "id": "compute.instances.listReferrers", + "parameterOrder": [ + "project", + "zone", + "instance" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "instance": { + "description": "Name of the target instance scoping this request, or '-' if the request should span over all instances in the container.", + "location": "path", + "pattern": "-|[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instances/{instance}/referrers", + "response": { + "$ref": "InstanceListReferrers" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "removeMaintenancePolicies": { + "description": "Removes maintenance policies from an instance.", + "httpMethod": "POST", + "id": "compute.instances.removeMaintenancePolicies", + "parameterOrder": [ + "project", + "zone", + "instance" + ], + "parameters": { + "instance": { + "description": "The instance name for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instances/{instance}/removeMaintenancePolicies", + "request": { + "$ref": "InstancesRemoveMaintenancePoliciesRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "reset": { + "description": "Performs a reset on the instance. For more information, see Resetting an instance.", + "httpMethod": "POST", + "id": "compute.instances.reset", + "parameterOrder": [ + "project", + "zone", + "instance" + ], + "parameters": { + "instance": { + "description": "Name of the instance scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instances/{instance}/reset", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "resume": { + "description": "Resumes an instance that was suspended using the instances().suspend method.", + "httpMethod": "POST", + "id": "compute.instances.resume", + "parameterOrder": [ + "project", + "zone", + "instance" + ], + "parameters": { + "instance": { + "description": "Name of the instance resource to resume.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instances/{instance}/resume", + "request": { + "$ref": "InstancesResumeRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setDeletionProtection": { + "description": "Sets deletion protection on the instance.", + "httpMethod": "POST", + "id": "compute.instances.setDeletionProtection", + "parameterOrder": [ + "project", + "zone", + "resource" + ], + "parameters": { + "deletionProtection": { + "default": "true", + "description": "Whether the resource should be protected against deletion.", + "location": "query", + "type": "boolean" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instances/{resource}/setDeletionProtection", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setDiskAutoDelete": { + "description": "Sets the auto-delete flag for a disk attached to an instance.", + "httpMethod": "POST", + "id": "compute.instances.setDiskAutoDelete", + "parameterOrder": [ + "project", + "zone", + "instance", + "autoDelete", + "deviceName" + ], + "parameters": { + "autoDelete": { + "description": "Whether to auto-delete the disk when the instance is deleted.", + "location": "query", + "required": true, + "type": "boolean" + }, + "deviceName": { + "description": "The device name of the disk to modify.", + "location": "query", + "pattern": "\\w[\\w.-]{0,254}", + "required": true, + "type": "string" + }, + "instance": { + "description": "The instance name.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instances/{instance}/setDiskAutoDelete", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setIamPolicy": { + "description": "Sets the access control policy on the specified resource. Replaces any existing policy.", + "httpMethod": "POST", + "id": "compute.instances.setIamPolicy", + "parameterOrder": [ + "project", + "zone", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instances/{resource}/setIamPolicy", + "request": { + "$ref": "Policy" + }, + "response": { + "$ref": "Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setLabels": { + "description": "Sets labels on an instance. To learn more about labels, read the Labeling Resources documentation.", + "httpMethod": "POST", + "id": "compute.instances.setLabels", + "parameterOrder": [ + "project", + "zone", + "instance" + ], + "parameters": { + "instance": { + "description": "Name of the instance scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instances/{instance}/setLabels", + "request": { + "$ref": "InstancesSetLabelsRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setMachineResources": { + "description": "Changes the number and/or type of accelerator for a stopped instance to the values specified in the request.", + "httpMethod": "POST", + "id": "compute.instances.setMachineResources", + "parameterOrder": [ + "project", + "zone", + "instance" + ], + "parameters": { + "instance": { + "description": "Name of the instance scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instances/{instance}/setMachineResources", + "request": { + "$ref": "InstancesSetMachineResourcesRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setMachineType": { + "description": "Changes the machine type for a stopped instance to the machine type specified in the request.", + "httpMethod": "POST", + "id": "compute.instances.setMachineType", + "parameterOrder": [ + "project", + "zone", + "instance" + ], + "parameters": { + "instance": { + "description": "Name of the instance scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instances/{instance}/setMachineType", + "request": { + "$ref": "InstancesSetMachineTypeRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setMetadata": { + "description": "Sets metadata for the specified instance to the data included in the request.", + "httpMethod": "POST", + "id": "compute.instances.setMetadata", + "parameterOrder": [ + "project", + "zone", + "instance" + ], + "parameters": { + "instance": { + "description": "Name of the instance scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instances/{instance}/setMetadata", + "request": { + "$ref": "Metadata" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setMinCpuPlatform": { + "description": "Changes the minimum CPU platform that this instance should use. This method can only be called on a stopped instance. For more information, read Specifying a Minimum CPU Platform.", + "httpMethod": "POST", + "id": "compute.instances.setMinCpuPlatform", + "parameterOrder": [ + "project", + "zone", + "instance" + ], + "parameters": { + "instance": { + "description": "Name of the instance scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instances/{instance}/setMinCpuPlatform", + "request": { + "$ref": "InstancesSetMinCpuPlatformRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setScheduling": { + "description": "Sets an instance's scheduling options.", + "httpMethod": "POST", + "id": "compute.instances.setScheduling", + "parameterOrder": [ + "project", + "zone", + "instance" + ], + "parameters": { + "instance": { + "description": "Instance name.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instances/{instance}/setScheduling", + "request": { + "$ref": "Scheduling" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setServiceAccount": { + "description": "Sets the service account on the instance. For more information, read Changing the service account and access scopes for an instance.", + "httpMethod": "POST", + "id": "compute.instances.setServiceAccount", + "parameterOrder": [ + "project", + "zone", + "instance" + ], + "parameters": { + "instance": { + "description": "Name of the instance resource to start.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instances/{instance}/setServiceAccount", + "request": { + "$ref": "InstancesSetServiceAccountRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setShieldedVmIntegrityPolicy": { + "description": "Sets the Shielded VM integrity policy for an instance. This method supports PATCH semantics and uses the JSON merge patch format and processing rules.", + "httpMethod": "PATCH", + "id": "compute.instances.setShieldedVmIntegrityPolicy", + "parameterOrder": [ + "project", + "zone", + "instance" + ], + "parameters": { + "instance": { + "description": "Name of the instance scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instances/{instance}/setShieldedVmIntegrityPolicy", + "request": { + "$ref": "ShieldedVmIntegrityPolicy" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setTags": { + "description": "Sets tags for the specified instance to the data included in the request.", + "httpMethod": "POST", + "id": "compute.instances.setTags", + "parameterOrder": [ + "project", + "zone", + "instance" + ], + "parameters": { + "instance": { + "description": "Name of the instance scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instances/{instance}/setTags", + "request": { + "$ref": "Tags" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "simulateMaintenanceEvent": { + "description": "Simulates a maintenance event on the instance.", + "httpMethod": "POST", + "id": "compute.instances.simulateMaintenanceEvent", + "parameterOrder": [ + "project", + "zone", + "instance" + ], + "parameters": { + "instance": { + "description": "Name of the instance scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instances/{instance}/simulateMaintenanceEvent", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "start": { + "description": "Starts an instance that was stopped using the using the instances().stop method. For more information, see Restart an instance.", + "httpMethod": "POST", + "id": "compute.instances.start", + "parameterOrder": [ + "project", + "zone", + "instance" + ], + "parameters": { + "instance": { + "description": "Name of the instance resource to start.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instances/{instance}/start", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "startWithEncryptionKey": { + "description": "Starts an instance that was stopped using the using the instances().stop method. For more information, see Restart an instance.", + "httpMethod": "POST", + "id": "compute.instances.startWithEncryptionKey", + "parameterOrder": [ + "project", + "zone", + "instance" + ], + "parameters": { + "instance": { + "description": "Name of the instance resource to start.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instances/{instance}/startWithEncryptionKey", + "request": { + "$ref": "InstancesStartWithEncryptionKeyRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "stop": { + "description": "Stops a running instance, shutting it down cleanly, and allows you to restart the instance at a later time. Stopped instances do not incur VM usage charges while they are stopped. However, resources that the VM is using, such as persistent disks and static IP addresses, will continue to be charged until they are deleted. For more information, see Stopping an instance.", + "httpMethod": "POST", + "id": "compute.instances.stop", + "parameterOrder": [ + "project", + "zone", + "instance" + ], + "parameters": { + "discardLocalSsd": { + "description": "If true, discard the contents of any attached localSSD partitions. Default value is false (== preserve localSSD data).", + "location": "query", + "type": "boolean" + }, + "instance": { + "description": "Name of the instance resource to stop.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instances/{instance}/stop", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "suspend": { + "description": "This method suspends a running instance, saving its state to persistent storage, and allows you to resume the instance at a later time. Suspended instances incur reduced per-minute, virtual machine usage charges while they are suspended. Any resources the virtual machine is using, such as persistent disks and static IP addresses, will continue to be charged until they are deleted.", + "httpMethod": "POST", + "id": "compute.instances.suspend", + "parameterOrder": [ + "project", + "zone", + "instance" + ], + "parameters": { + "discardLocalSsd": { + "description": "If true, discard the contents of any attached localSSD partitions. Default value is false (== preserve localSSD data).", + "location": "query", + "type": "boolean" + }, + "instance": { + "description": "Name of the instance resource to suspend.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instances/{instance}/suspend", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource.", + "httpMethod": "POST", + "id": "compute.instances.testIamPermissions", + "parameterOrder": [ + "project", + "zone", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instances/{resource}/testIamPermissions", + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "updateAccessConfig": { + "description": "Updates the specified access config from an instance's network interface with the data included in the request. This method supports PATCH semantics and uses the JSON merge patch format and processing rules.", + "httpMethod": "POST", + "id": "compute.instances.updateAccessConfig", + "parameterOrder": [ + "project", + "zone", + "instance", + "networkInterface" + ], + "parameters": { + "instance": { + "description": "The instance name for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "networkInterface": { + "description": "The name of the network interface where the access config is attached.", + "location": "query", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instances/{instance}/updateAccessConfig", + "request": { + "$ref": "AccessConfig" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "updateNetworkInterface": { + "description": "Updates an instance's network interface. This method follows PATCH semantics.", + "httpMethod": "PATCH", + "id": "compute.instances.updateNetworkInterface", + "parameterOrder": [ + "project", + "zone", + "instance", + "networkInterface" + ], + "parameters": { + "instance": { + "description": "The instance name for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "networkInterface": { + "description": "The name of the network interface to update.", + "location": "query", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instances/{instance}/updateNetworkInterface", + "request": { + "$ref": "NetworkInterface" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "updateShieldedVmConfig": { + "description": "Updates the Shielded VM config for an instance. This method supports PATCH semantics and uses the JSON merge patch format and processing rules.", + "httpMethod": "PATCH", + "id": "compute.instances.updateShieldedVmConfig", + "parameterOrder": [ + "project", + "zone", + "instance" + ], + "parameters": { + "instance": { + "description": "Name of the instance scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instances/{instance}/updateShieldedVmConfig", + "request": { + "$ref": "ShieldedVmConfig" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + } + } }, - "guestOsFeatures": { - "type": "array", - "description": "A list of features to enable on the guest operating system. Applicable only for bootable images. Read Enabling guest operating system features to see a list of available options.", - "items": { - "$ref": "GuestOsFeature" - } + "interconnectAttachments": { + "methods": { + "aggregatedList": { + "description": "Retrieves an aggregated list of interconnect attachments.", + "httpMethod": "GET", + "id": "compute.interconnectAttachments.aggregatedList", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/aggregated/interconnectAttachments", + "response": { + "$ref": "InterconnectAttachmentAggregatedList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "delete": { + "description": "Deletes the specified interconnect attachment.", + "httpMethod": "DELETE", + "id": "compute.interconnectAttachments.delete", + "parameterOrder": [ + "project", + "region", + "interconnectAttachment" + ], + "parameters": { + "interconnectAttachment": { + "description": "Name of the interconnect attachment to delete.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/regions/{region}/interconnectAttachments/{interconnectAttachment}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Returns the specified interconnect attachment.", + "httpMethod": "GET", + "id": "compute.interconnectAttachments.get", + "parameterOrder": [ + "project", + "region", + "interconnectAttachment" + ], + "parameters": { + "interconnectAttachment": { + "description": "Name of the interconnect attachment to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/interconnectAttachments/{interconnectAttachment}", + "response": { + "$ref": "InterconnectAttachment" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "getIamPolicy": { + "description": "Gets the access control policy for a resource. May be empty if no such policy or resource exists.", + "httpMethod": "GET", + "id": "compute.interconnectAttachments.getIamPolicy", + "parameterOrder": [ + "project", + "region", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "The name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/interconnectAttachments/{resource}/getIamPolicy", + "response": { + "$ref": "Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "description": "Creates an InterconnectAttachment in the specified project using the data included in the request.", + "httpMethod": "POST", + "id": "compute.interconnectAttachments.insert", + "parameterOrder": [ + "project", + "region" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/regions/{region}/interconnectAttachments", + "request": { + "$ref": "InterconnectAttachment" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "description": "Retrieves the list of interconnect attachments contained within the specified region.", + "httpMethod": "GET", + "id": "compute.interconnectAttachments.list", + "parameterOrder": [ + "project", + "region" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/interconnectAttachments", + "response": { + "$ref": "InterconnectAttachmentList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "patch": { + "description": "Updates the specified interconnect attachment with the data included in the request. This method supports PATCH semantics and uses the JSON merge patch format and processing rules.", + "httpMethod": "PATCH", + "id": "compute.interconnectAttachments.patch", + "parameterOrder": [ + "project", + "region", + "interconnectAttachment" + ], + "parameters": { + "interconnectAttachment": { + "description": "Name of the interconnect attachment to patch.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/regions/{region}/interconnectAttachments/{interconnectAttachment}", + "request": { + "$ref": "InterconnectAttachment" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setIamPolicy": { + "description": "Sets the access control policy on the specified resource. Replaces any existing policy.", + "httpMethod": "POST", + "id": "compute.interconnectAttachments.setIamPolicy", + "parameterOrder": [ + "project", + "region", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "The name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/interconnectAttachments/{resource}/setIamPolicy", + "request": { + "$ref": "Policy" + }, + "response": { + "$ref": "Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setLabels": { + "description": "Sets the labels on an InterconnectAttachment. To learn more about labels, read the Labeling Resources documentation.", + "httpMethod": "POST", + "id": "compute.interconnectAttachments.setLabels", + "parameterOrder": [ + "project", + "region", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "The region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/interconnectAttachments/{resource}/setLabels", + "request": { + "$ref": "RegionSetLabelsRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource.", + "httpMethod": "POST", + "id": "compute.interconnectAttachments.testIamPermissions", + "parameterOrder": [ + "project", + "region", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "The name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/interconnectAttachments/{resource}/testIamPermissions", + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + } + } }, - "id": { - "type": "string", - "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", - "format": "uint64" + "interconnectLocations": { + "methods": { + "get": { + "description": "Returns the details for the specified interconnect location. Get a list of available interconnect locations by making a list() request.", + "httpMethod": "GET", + "id": "compute.interconnectLocations.get", + "parameterOrder": [ + "project", + "interconnectLocation" + ], + "parameters": { + "interconnectLocation": { + "description": "Name of the interconnect location to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/interconnectLocations/{interconnectLocation}", + "response": { + "$ref": "InterconnectLocation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "list": { + "description": "Retrieves the list of interconnect locations available to the specified project.", + "httpMethod": "GET", + "id": "compute.interconnectLocations.list", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/interconnectLocations", + "response": { + "$ref": "InterconnectLocationList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource.", + "httpMethod": "POST", + "id": "compute.interconnectLocations.testIamPermissions", + "parameterOrder": [ + "project", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "(?:[-a-z0-9_]{0,62}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/interconnectLocations/{resource}/testIamPermissions", + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + } + } }, - "imageEncryptionKey": { - "$ref": "CustomerEncryptionKey", - "description": "Encrypts the image using a customer-supplied encryption key.\n\nAfter you encrypt an image with a customer-supplied key, you must provide the same key if you use the image later (e.g. to create a disk from the image).\n\nCustomer-supplied encryption keys do not protect access to metadata of the disk.\n\nIf you do not provide an encryption key when creating the image, then the disk will be encrypted using an automatically generated key and you do not need to provide a key to use the image later." - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of the resource. Always compute#image for images.", - "default": "compute#image" - }, - "labelFingerprint": { - "type": "string", - "description": "A fingerprint for the labels being applied to this image, which is essentially a hash of the labels used for optimistic locking. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update labels. You must always provide an up-to-date fingerprint hash in order to update or change labels.\n\nTo see the latest fingerprint, make a get() request to retrieve an image.", - "format": "byte" - }, - "labels": { - "type": "object", - "description": "Labels to apply to this image. These can be later modified by the setLabels method.", - "additionalProperties": { - "type": "string" - } + "interconnects": { + "methods": { + "delete": { + "description": "Deletes the specified interconnect.", + "httpMethod": "DELETE", + "id": "compute.interconnects.delete", + "parameterOrder": [ + "project", + "interconnect" + ], + "parameters": { + "interconnect": { + "description": "Name of the interconnect to delete.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/interconnects/{interconnect}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Returns the specified interconnect. Get a list of available interconnects by making a list() request.", + "httpMethod": "GET", + "id": "compute.interconnects.get", + "parameterOrder": [ + "project", + "interconnect" + ], + "parameters": { + "interconnect": { + "description": "Name of the interconnect to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/interconnects/{interconnect}", + "response": { + "$ref": "Interconnect" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "getIamPolicy": { + "description": "Gets the access control policy for a resource. May be empty if no such policy or resource exists.", + "httpMethod": "GET", + "id": "compute.interconnects.getIamPolicy", + "parameterOrder": [ + "project", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "[a-z0-9](?:[-a-z0-9_]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/interconnects/{resource}/getIamPolicy", + "response": { + "$ref": "Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "description": "Creates a Interconnect in the specified project using the data included in the request.", + "httpMethod": "POST", + "id": "compute.interconnects.insert", + "parameterOrder": [ + "project" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/interconnects", + "request": { + "$ref": "Interconnect" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "description": "Retrieves the list of interconnect available to the specified project.", + "httpMethod": "GET", + "id": "compute.interconnects.list", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/interconnects", + "response": { + "$ref": "InterconnectList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "patch": { + "description": "Updates the specified interconnect with the data included in the request. This method supports PATCH semantics and uses the JSON merge patch format and processing rules.", + "httpMethod": "PATCH", + "id": "compute.interconnects.patch", + "parameterOrder": [ + "project", + "interconnect" + ], + "parameters": { + "interconnect": { + "description": "Name of the interconnect to update.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/interconnects/{interconnect}", + "request": { + "$ref": "Interconnect" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setIamPolicy": { + "description": "Sets the access control policy on the specified resource. Replaces any existing policy.", + "httpMethod": "POST", + "id": "compute.interconnects.setIamPolicy", + "parameterOrder": [ + "project", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "[a-z0-9](?:[-a-z0-9_]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/interconnects/{resource}/setIamPolicy", + "request": { + "$ref": "Policy" + }, + "response": { + "$ref": "Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setLabels": { + "description": "Sets the labels on an Interconnect. To learn more about labels, read the Labeling Resources documentation.", + "httpMethod": "POST", + "id": "compute.interconnects.setLabels", + "parameterOrder": [ + "project", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/interconnects/{resource}/setLabels", + "request": { + "$ref": "GlobalSetLabelsRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource.", + "httpMethod": "POST", + "id": "compute.interconnects.testIamPermissions", + "parameterOrder": [ + "project", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "(?:[-a-z0-9_]{0,62}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/interconnects/{resource}/testIamPermissions", + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + } + } }, "licenseCodes": { - "type": "array", - "description": "Integer license codes indicating which licenses are attached to this image.", - "items": { - "type": "string", - "format": "int64" - } + "methods": { + "get": { + "description": "Return a specified license code. License codes are mirrored across all projects that have permissions to read the License Code.", + "httpMethod": "GET", + "id": "compute.licenseCodes.get", + "parameterOrder": [ + "project", + "licenseCode" + ], + "parameters": { + "licenseCode": { + "description": "Number corresponding to the License code resource to return.", + "location": "path", + "pattern": "[0-9]{0,61}?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/licenseCodes/{licenseCode}", + "response": { + "$ref": "LicenseCode" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "getIamPolicy": { + "description": "Gets the access control policy for a resource. May be empty if no such policy or resource exists.", + "httpMethod": "GET", + "id": "compute.licenseCodes.getIamPolicy", + "parameterOrder": [ + "project", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "[a-z0-9](?:[-a-z0-9_]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/licenseCodes/{resource}/getIamPolicy", + "response": { + "$ref": "Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "setIamPolicy": { + "description": "Sets the access control policy on the specified resource. Replaces any existing policy.", + "httpMethod": "POST", + "id": "compute.licenseCodes.setIamPolicy", + "parameterOrder": [ + "project", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "[a-z0-9](?:[-a-z0-9_]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/licenseCodes/{resource}/setIamPolicy", + "request": { + "$ref": "Policy" + }, + "response": { + "$ref": "Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource.", + "httpMethod": "POST", + "id": "compute.licenseCodes.testIamPermissions", + "parameterOrder": [ + "project", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "(?:[-a-z0-9_]{0,62}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/licenseCodes/{resource}/testIamPermissions", + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + } + } }, "licenses": { - "type": "array", - "description": "Any applicable license URI.", - "items": { - "type": "string" - } - }, - "name": { - "type": "string", - "description": "Name of the resource; provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "annotations": { - "required": [ - "compute.images.insert" - ] - } - }, - "rawDisk": { - "type": "object", - "description": "The parameters of the raw disk image.", - "properties": { - "containerType": { - "type": "string", - "description": "The format used to encode and transmit the block device, which should be TAR. This is just a container and transmission format and not a runtime format. Provided by the client when the disk image is created.", - "enum": [ - "TAR" - ], - "enumDescriptions": [ - "" - ] - }, - "sha1Checksum": { - "type": "string", - "description": "An optional SHA1 checksum of the disk image before unpackaging; provided by the client when the disk image is created.", - "pattern": "[a-f0-9]{40}" - }, - "source": { - "type": "string", - "description": "The full Google Cloud Storage URL where the disk image is stored. You must provide either this property or the sourceDisk property but not both.", - "annotations": { - "required": [ - "compute.images.insert" - ] - } - } - } - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for the resource." - }, - "sourceDisk": { - "type": "string", - "description": "URL of the source disk used to create this image. This can be a full or valid partial URL. You must provide either this property or the rawDisk.source property but not both to create an image. For example, the following are valid values: \n- https://www.googleapis.com/compute/v1/projects/project/zones/zone/disks/disk \n- projects/project/zones/zone/disks/disk \n- zones/zone/disks/disk" - }, - "sourceDiskEncryptionKey": { - "$ref": "CustomerEncryptionKey", - "description": "The customer-supplied encryption key of the source disk. Required if the source disk is protected by a customer-supplied encryption key." - }, - "sourceDiskId": { - "type": "string", - "description": "The ID value of the disk used to create this image. This value may be used to determine whether the image was taken from the current or a previous instance of a given disk name." - }, - "sourceImage": { - "type": "string", - "description": "URL of the source image used to create this image. This can be a full or valid partial URL. You must provide exactly one of: \n- this property, or \n- the rawDisk.source property, or \n- the sourceDisk property in order to create an image." - }, - "sourceImageEncryptionKey": { - "$ref": "CustomerEncryptionKey", - "description": "The customer-supplied encryption key of the source image. Required if the source image is protected by a customer-supplied encryption key." - }, - "sourceImageId": { - "type": "string", - "description": "[Output Only] The ID value of the image used to create this image. This value may be used to determine whether the image was taken from the current or a previous instance of a given image name." - }, - "sourceSnapshot": { - "type": "string", - "description": "URL of the source snapshot used to create this image. This can be a full or valid partial URL. You must provide exactly one of: \n- this property, or \n- the sourceImage property, or \n- the rawDisk.source property, or \n- the sourceDisk property in order to create an image." - }, - "sourceSnapshotEncryptionKey": { - "$ref": "CustomerEncryptionKey", - "description": "The customer-supplied encryption key of the source snapshot. Required if the source snapshot is protected by a customer-supplied encryption key." - }, - "sourceSnapshotId": { - "type": "string", - "description": "[Output Only] The ID value of the snapshot used to create this image. This value may be used to determine whether the snapshot was taken from the current or a previous instance of a given snapshot name." - }, - "sourceType": { - "type": "string", - "description": "The type of the image used to create this disk. The default and only value is RAW", - "default": "RAW", - "enum": [ - "RAW" - ], - "enumDescriptions": [ - "" - ] - }, - "status": { - "type": "string", - "description": "[Output Only] The status of the image. An image can be used to create other resources, such as instances, only after the image has been successfully created and the status is set to READY. Possible values are FAILED, PENDING, or READY.", - "enum": [ - "FAILED", - "PENDING", - "READY" - ], - "enumDescriptions": [ - "", - "", - "" - ] - } - } - }, - "ImageList": { - "id": "ImageList", - "type": "object", - "description": "Contains a list of images.", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "array", - "description": "A list of Image resources.", - "items": { - "$ref": "Image" - } - }, - "kind": { - "type": "string", - "description": "Type of resource.", - "default": "compute#imageList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } + "methods": { + "delete": { + "description": "Deletes the specified license.", + "httpMethod": "DELETE", + "id": "compute.licenses.delete", + "parameterOrder": [ + "project", + "license" + ], + "parameters": { + "license": { + "description": "Name of the license resource to delete.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/licenses/{license}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Returns the specified License resource.", + "httpMethod": "GET", + "id": "compute.licenses.get", + "parameterOrder": [ + "project", + "license" + ], + "parameters": { + "license": { + "description": "Name of the License resource to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/licenses/{license}", + "response": { + "$ref": "License" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "getIamPolicy": { + "description": "Gets the access control policy for a resource. May be empty if no such policy or resource exists.", + "httpMethod": "GET", + "id": "compute.licenses.getIamPolicy", + "parameterOrder": [ + "project", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "[a-z0-9](?:[-a-z0-9_]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/licenses/{resource}/getIamPolicy", + "response": { + "$ref": "Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "description": "Create a License resource in the specified project.", + "httpMethod": "POST", + "id": "compute.licenses.insert", + "parameterOrder": [ + "project" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/licenses", + "request": { + "$ref": "License" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/devstorage.full_control", + "https://www.googleapis.com/auth/devstorage.read_only", + "https://www.googleapis.com/auth/devstorage.read_write" + ] + }, + "list": { + "description": "Retrieves the list of licenses available in the specified project. This method does not get any licenses that belong to other projects, including licenses attached to publicly-available images, like Debian 8. If you want to get a list of publicly-available licenses, use this method to make a request to the respective image project, such as debian-cloud or windows-cloud.", + "httpMethod": "GET", + "id": "compute.licenses.list", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/licenses", + "response": { + "$ref": "LicensesListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "setIamPolicy": { + "description": "Sets the access control policy on the specified resource. Replaces any existing policy.", + "httpMethod": "POST", + "id": "compute.licenses.setIamPolicy", + "parameterOrder": [ + "project", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "[a-z0-9](?:[-a-z0-9_]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/licenses/{resource}/setIamPolicy", + "request": { + "$ref": "Policy" + }, + "response": { + "$ref": "Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource.", + "httpMethod": "POST", + "id": "compute.licenses.testIamPermissions", + "parameterOrder": [ + "project", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "(?:[-a-z0-9_]{0,62}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/licenses/{resource}/testIamPermissions", + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." } - } - } - } - }, - "Instance": { - "id": "Instance", - "type": "object", - "description": "An Instance resource. (== resource_for beta.instances ==) (== resource_for v1.instances ==)", - "properties": { - "canIpForward": { - "type": "boolean", - "description": "Allows this instance to send and receive packets with non-matching destination or source IPs. This is required if you plan to use this instance to forward routes. For more information, see Enabling IP Forwarding." }, - "cpuPlatform": { - "type": "string", - "description": "[Output Only] The CPU platform used by this instance." - }, - "creationTimestamp": { - "type": "string", - "description": "[Output Only] Creation timestamp in RFC3339 text format." - }, - "deletionProtection": { - "type": "boolean", - "description": "Whether the resource should be protected against deletion." - }, - "description": { - "type": "string", - "description": "An optional description of this resource. Provide this property when you create the resource." - }, - "disks": { - "type": "array", - "description": "Array of disks associated with this instance. Persistent disks must be created before you can assign them.", - "items": { - "$ref": "AttachedDisk" - } - }, - "guestAccelerators": { - "type": "array", - "description": "List of the type and count of accelerator cards attached to the instance.", - "items": { - "$ref": "AcceleratorConfig" - } - }, - "host": { - "type": "string", - "description": "Full or partial URL of the host resource that the instance should be placed on, in the format: zones/zone/hosts/host.\n\nOptional, sole-tenant Host (physical machine) that the instance will be placed on when it's created. The instance is guaranteed to be placed on the same machine as other instances with the same sole-tenant host.\n\nThe request will be rejected if the sole-tenant host has run out of resources." - }, - "id": { - "type": "string", - "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", - "format": "uint64" - }, - "instanceEncryptionKey": { - "$ref": "CustomerEncryptionKey", - "description": "Encrypts or decrypts data for an instance with a customer-supplied encryption key.\n\nIf you are creating a new instance, this field encrypts the local SSD and in-memory contents of the instance using a key that you provide.\n\nIf you are restarting an instance protected with a customer-supplied encryption key, you must provide the correct key in order to successfully restart the instance.\n\nIf you do not provide an encryption key when creating the instance, then the local SSD and in-memory contents will be encrypted using an automatically generated key and you do not need to provide a key to start the instance later.\n\nInstance templates do not store customer-supplied encryption keys, so you cannot use your own keys to encrypt local SSDs and in-memory content in a managed instance group." - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of the resource. Always compute#instance for instances.", - "default": "compute#instance" - }, - "labelFingerprint": { - "type": "string", - "description": "A fingerprint for this request, which is essentially a hash of the metadata's contents and used for optimistic locking. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update metadata. You must always provide an up-to-date fingerprint hash in order to update or change metadata.\n\nTo see the latest fingerprint, make get() request to the instance.", - "format": "byte" - }, - "labels": { - "type": "object", - "description": "Labels to apply to this instance. These can be later modified by the setLabels method.", - "additionalProperties": { - "type": "string" - } - }, - "machineType": { - "type": "string", - "description": "Full or partial URL of the machine type resource to use for this instance, in the format: zones/zone/machineTypes/machine-type. This is provided by the client when the instance is created. For example, the following is a valid partial url to a predefined machine type:\n\nzones/us-central1-f/machineTypes/n1-standard-1 \n\nTo create a custom machine type, provide a URL to a machine type in the following format, where CPUS is 1 or an even number up to 32 (2, 4, 6, ... 24, etc), and MEMORY is the total memory for this instance. Memory must be a multiple of 256 MB and must be supplied in MB (e.g. 5 GB of memory is 5120 MB):\n\nzones/zone/machineTypes/custom-CPUS-MEMORY \n\nFor example: zones/us-central1-f/machineTypes/custom-4-5120 \n\nFor a full list of restrictions, read the Specifications for custom machine types.", - "annotations": { - "required": [ - "compute.instances.insert" - ] - } - }, - "maintenancePolicies": { - "type": "array", - "description": "Maintenance policies applied to this instance.", - "items": { - "type": "string" - } - }, - "metadata": { - "$ref": "Metadata", - "description": "The metadata key/value pairs assigned to this instance. This includes custom metadata and predefined keys." - }, - "minCpuPlatform": { - "type": "string", - "description": "Specifies a minimum CPU platform for the VM instance. Applicable values are the friendly names of CPU platforms, such as minCpuPlatform: \"Intel Haswell\" or minCpuPlatform: \"Intel Sandy Bridge\"." - }, - "name": { - "type": "string", - "description": "The name of the resource, provided by the client when initially creating the resource. The resource name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "annotations": { - "required": [ - "compute.instances.insert" - ] - } - }, - "networkInterfaces": { - "type": "array", - "description": "An array of network configurations for this instance. These specify how interfaces are configured to interact with other network services, such as connecting to the internet. Multiple interfaces are supported per instance.", - "items": { - "$ref": "NetworkInterface" - } - }, - "preservedStateSizeGb": { - "type": "string", - "description": "Total amount of preserved state for SUSPENDED instances. Read-only in the api.", - "format": "int64" - }, - "scheduling": { - "$ref": "Scheduling", - "description": "Sets the scheduling options for this instance." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "serviceAccounts": { - "type": "array", - "description": "A list of service accounts, with their specified scopes, authorized for this instance. Only one service account per VM instance is supported.\n\nService accounts generate access tokens that can be accessed through the metadata server and used to authenticate applications on the instance. See Service Accounts for more information.", - "items": { - "$ref": "ServiceAccount" - } - }, - "shieldedVmConfig": { - "$ref": "ShieldedVmConfig" - }, - "startRestricted": { - "type": "boolean", - "description": "[Output Only] Whether a VM has been restricted for start because Compute Engine has detected suspicious activity." - }, - "status": { - "type": "string", - "description": "[Output Only] The status of the instance. One of the following values: PROVISIONING, STAGING, RUNNING, STOPPING, STOPPED, SUSPENDING, SUSPENDED, and TERMINATED.", - "enum": [ - "PROVISIONING", - "RUNNING", - "STAGING", - "STOPPED", - "STOPPING", - "SUSPENDED", - "SUSPENDING", - "TERMINATED" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "statusMessage": { - "type": "string", - "description": "[Output Only] An optional, human-readable explanation of the status." - }, - "tags": { - "$ref": "Tags", - "description": "A list of tags to apply to this instance. Tags are used to identify valid sources or targets for network firewalls and are specified by the client during instance creation. The tags can be later modified by the setTags method. Each tag within the list must comply with RFC1035." - }, - "zone": { - "type": "string", - "description": "[Output Only] URL of the zone where the instance resides." - } - } - }, - "InstanceAggregatedList": { - "id": "InstanceAggregatedList", - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "object", - "description": "A list of InstancesScopedList resources.", - "additionalProperties": { - "$ref": "InstancesScopedList", - "description": "[Output Only] Name of the scope containing this set of instances." - } - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#instanceAggregatedList for aggregated lists of Instance resources.", - "default": "compute#instanceAggregatedList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "InstanceGroup": { - "id": "InstanceGroup", - "type": "object", - "description": "InstanceGroups (== resource_for beta.instanceGroups ==) (== resource_for v1.instanceGroups ==) (== resource_for beta.regionInstanceGroups ==) (== resource_for v1.regionInstanceGroups ==)", - "properties": { - "creationTimestamp": { - "type": "string", - "description": "[Output Only] The creation timestamp for this instance group in RFC3339 text format." - }, - "description": { - "type": "string", - "description": "An optional description of this resource. Provide this property when you create the resource." - }, - "fingerprint": { - "type": "string", - "description": "[Output Only] The fingerprint of the named ports. The system uses this fingerprint to detect conflicts when multiple users change the named ports concurrently.", - "format": "byte" - }, - "id": { - "type": "string", - "description": "[Output Only] A unique identifier for this instance group, generated by the server.", - "format": "uint64" - }, - "kind": { - "type": "string", - "description": "[Output Only] The resource type, which is always compute#instanceGroup for instance groups.", - "default": "compute#instanceGroup" - }, - "name": { - "type": "string", - "description": "The name of the instance group. The name must be 1-63 characters long, and comply with RFC1035.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "annotations": { - "required": [ - "compute.instanceGroupManagers.insert" - ] - } - }, - "namedPorts": { - "type": "array", - "description": "Assigns a name to a port number. For example: {name: \"http\", port: 80}\n\nThis allows the system to reference ports by the assigned name instead of a port number. Named ports can also contain multiple ports. For example: [{name: \"http\", port: 80},{name: \"http\", port: 8080}] \n\nNamed ports apply to all instances in this instance group.", - "items": { - "$ref": "NamedPort" - } - }, - "network": { - "type": "string", - "description": "The URL of the network to which all instances in the instance group belong." - }, - "region": { - "type": "string", - "description": "The URL of the region where the instance group is located (for regional resources)." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] The URL for this instance group. The server generates this URL." - }, - "size": { - "type": "integer", - "description": "[Output Only] The total number of instances in the instance group.", - "format": "int32" - }, - "subnetwork": { - "type": "string", - "description": "The URL of the subnetwork to which all instances in the instance group belong." - }, - "zone": { - "type": "string", - "description": "[Output Only] The URL of the zone where the instance group is located (for zonal resources)." - } - } - }, - "InstanceGroupAggregatedList": { - "id": "InstanceGroupAggregatedList", - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "object", - "description": "A list of InstanceGroupsScopedList resources.", - "additionalProperties": { - "$ref": "InstanceGroupsScopedList", - "description": "The name of the scope that contains this set of instance groups." - } - }, - "kind": { - "type": "string", - "description": "[Output Only] The resource type, which is always compute#instanceGroupAggregatedList for aggregated lists of instance groups.", - "default": "compute#instanceGroupAggregatedList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "InstanceGroupList": { - "id": "InstanceGroupList", - "type": "object", - "description": "A list of InstanceGroup resources.", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "array", - "description": "A list of InstanceGroup resources.", - "items": { - "$ref": "InstanceGroup" - } - }, - "kind": { - "type": "string", - "description": "[Output Only] The resource type, which is always compute#instanceGroupList for instance group lists.", - "default": "compute#instanceGroupList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "InstanceGroupManager": { - "id": "InstanceGroupManager", - "type": "object", - "description": "An Instance Group Manager resource. (== resource_for beta.instanceGroupManagers ==) (== resource_for v1.instanceGroupManagers ==) (== resource_for beta.regionInstanceGroupManagers ==) (== resource_for v1.regionInstanceGroupManagers ==)", - "properties": { - "activities": { - "$ref": "InstanceGroupManagerActivities" - }, - "autoHealingPolicies": { - "type": "array", - "description": "The autohealing policy for this managed instance group. You can specify only one value.", - "items": { - "$ref": "InstanceGroupManagerAutoHealingPolicy" - } - }, - "baseInstanceName": { - "type": "string", - "description": "The base instance name to use for instances in this group. The value must be 1-58 characters long. Instances are named by appending a hyphen and a random four-character string to the base instance name. The base instance name must comply with RFC1035.", - "pattern": "[a-z][-a-z0-9]{0,57}", - "annotations": { - "required": [ - "compute.instanceGroupManagers.insert" - ] - } - }, - "creationTimestamp": { - "type": "string", - "description": "[Output Only] The creation timestamp for this managed instance group in RFC3339 text format." - }, - "currentActions": { - "$ref": "InstanceGroupManagerActionsSummary", - "description": "[Output Only] The list of instance actions and the number of instances in this managed instance group that are scheduled for each of those actions." - }, - "description": { - "type": "string", - "description": "An optional description of this resource. Provide this property when you create the resource." - }, - "distributionPolicy": { - "$ref": "DistributionPolicy", - "description": "Policy valid only for regional managed instance groups." - }, - "failoverAction": { - "type": "string", - "description": "The action to perform in case of zone failure. Only one value is supported, NO_FAILOVER. The default is NO_FAILOVER.", - "enum": [ - "NO_FAILOVER", - "UNKNOWN" - ], - "enumDescriptions": [ - "", - "" - ] - }, - "fingerprint": { - "type": "string", - "description": "[Output Only] The fingerprint of the resource data. You can use this optional field for optimistic locking when you update the resource.", - "format": "byte" - }, - "id": { - "type": "string", - "description": "[Output Only] A unique identifier for this resource type. The server generates this identifier.", - "format": "uint64" - }, - "instanceGroup": { - "type": "string", - "description": "[Output Only] The URL of the Instance Group resource." - }, - "instanceTemplate": { - "type": "string", - "description": "The URL of the instance template that is specified for this managed instance group. The group uses this template to create all new instances in the managed instance group." - }, - "kind": { - "type": "string", - "description": "[Output Only] The resource type, which is always compute#instanceGroupManager for managed instance groups.", - "default": "compute#instanceGroupManager" - }, - "name": { - "type": "string", - "description": "The name of the managed instance group. The name must be 1-63 characters long, and comply with RFC1035.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "annotations": { - "required": [ - "compute.instanceGroupManagers.insert", - "compute.regionInstanceGroupManagers.insert" - ] - } - }, - "namedPorts": { - "type": "array", - "description": "Named ports configured for the Instance Groups complementary to this Instance Group Manager.", - "items": { - "$ref": "NamedPort" - } - }, - "pendingActions": { - "$ref": "InstanceGroupManagerPendingActionsSummary", - "description": "[Output Only] The list of instance actions and the number of instances in this managed instance group that are pending for each of those actions." - }, - "region": { - "type": "string", - "description": "[Output Only] The URL of the region where the managed instance group resides (for regional resources)." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] The URL for this managed instance group. The server defines this URL." - }, - "serviceAccount": { - "type": "string", - "description": "[Output Only] The service account to be used as credentials for all operations performed by the managed instance group on instances. The service accounts needs all permissions required to create and delete instances. By default, the service account {projectNumber}@cloudservices.gserviceaccount.com is used." - }, - "statefulPolicy": { - "$ref": "StatefulPolicy", - "description": "Stateful configuration for this Instanced Group Manager" - }, - "targetPools": { - "type": "array", - "description": "The URLs for all TargetPool resources to which instances in the instanceGroup field are added. The target pools automatically apply to all of the instances in the managed instance group.", - "items": { - "type": "string" - } - }, - "targetSize": { - "type": "integer", - "description": "The target number of running instances for this managed instance group. Deleting or abandoning instances reduces this number. Resizing the group changes this number.", - "format": "int32", - "annotations": { - "required": [ - "compute.instanceGroupManagers.insert", - "compute.regionInstanceGroupManagers.insert" - ] - } - }, - "updatePolicy": { - "$ref": "InstanceGroupManagerUpdatePolicy", - "description": "The update policy for this managed instance group." - }, - "versions": { - "type": "array", - "description": "Specifies the instance templates used by this managed instance group to create instances.\n\nEach version is defined by an instanceTemplate. Every template can appear at most once per instance group. This field overrides the top-level instanceTemplate field. Read more about the relationships between these fields. Exactly one version must leave the targetSize field unset. That version will be applied to all remaining instances. For more information, read about canary updates.", - "items": { - "$ref": "InstanceGroupManagerVersion" - } - }, - "zone": { - "type": "string", - "description": "[Output Only] The URL of the zone where the managed instance group is located (for zonal resources)." - } - } - }, - "InstanceGroupManagerActionsSummary": { - "id": "InstanceGroupManagerActionsSummary", - "type": "object", - "properties": { - "abandoning": { - "type": "integer", - "description": "[Output Only] The total number of instances in the managed instance group that are scheduled to be abandoned. Abandoning an instance removes it from the managed instance group without deleting it.", - "format": "int32" - }, - "creating": { - "type": "integer", - "description": "[Output Only] The number of instances in the managed instance group that are scheduled to be created or are currently being created. If the group fails to create any of these instances, it tries again until it creates the instance successfully.\n\nIf you have disabled creation retries, this field will not be populated; instead, the creatingWithoutRetries field will be populated.", - "format": "int32" - }, - "creatingWithoutRetries": { - "type": "integer", - "description": "[Output Only] The number of instances that the managed instance group will attempt to create. The group attempts to create each instance only once. If the group fails to create any of these instances, it decreases the group's targetSize value accordingly.", - "format": "int32" - }, - "deleting": { - "type": "integer", - "description": "[Output Only] The number of instances in the managed instance group that are scheduled to be deleted or are currently being deleted.", - "format": "int32" - }, - "none": { - "type": "integer", - "description": "[Output Only] The number of instances in the managed instance group that are running and have no scheduled actions.", - "format": "int32" - }, - "recreating": { - "type": "integer", - "description": "[Output Only] The number of instances in the managed instance group that are scheduled to be recreated or are currently being being recreated. Recreating an instance deletes the existing root persistent disk and creates a new disk from the image that is defined in the instance template.", - "format": "int32" - }, - "refreshing": { - "type": "integer", - "description": "[Output Only] The number of instances in the managed instance group that are being reconfigured with properties that do not require a restart or a recreate action. For example, setting or removing target pools for the instance.", - "format": "int32" - }, - "restarting": { - "type": "integer", - "description": "[Output Only] The number of instances in the managed instance group that are scheduled to be restarted or are currently being restarted.", - "format": "int32" - }, - "verifying": { - "type": "integer", - "description": "[Output Only] The number of instances in the managed instance group that are being verified. More details regarding verification process are covered in the documentation of ManagedInstance.InstanceAction.VERIFYING enum field.", - "format": "int32" - } - } - }, - "InstanceGroupManagerActivities": { - "id": "InstanceGroupManagerActivities", - "type": "object", - "properties": { - "autohealing": { - "type": "string", - "enum": [ - "PERMITTED", - "PROHIBITED" - ], - "enumDescriptions": [ - "", - "" - ] - }, - "autohealingHealthCheckBased": { - "type": "string", - "enum": [ - "PERMITTED", - "PROHIBITED" - ], - "enumDescriptions": [ - "", - "" - ] - }, - "autoscalingDown": { - "type": "string", - "enum": [ - "PERMITTED", - "PROHIBITED" - ], - "enumDescriptions": [ - "", - "" - ] - }, - "autoscalingUp": { - "type": "string", - "enum": [ - "PERMITTED", - "PROHIBITED" - ], - "enumDescriptions": [ - "", - "" - ] - }, - "creatingInstances": { - "type": "string", - "enum": [ - "PERMITTED", - "PROHIBITED" - ], - "enumDescriptions": [ - "", - "" - ] - }, - "deletingInstances": { - "type": "string", - "enum": [ - "PERMITTED", - "PROHIBITED" - ], - "enumDescriptions": [ - "", - "" - ] - }, - "recreatingInstances": { - "type": "string", - "enum": [ - "PERMITTED", - "PROHIBITED" - ], - "enumDescriptions": [ - "", - "" - ] - } - } - }, - "InstanceGroupManagerAggregatedList": { - "id": "InstanceGroupManagerAggregatedList", - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "object", - "description": "A list of InstanceGroupManagersScopedList resources.", - "additionalProperties": { - "$ref": "InstanceGroupManagersScopedList", - "description": "[Output Only] The name of the scope that contains this set of managed instance groups." - } - }, - "kind": { - "type": "string", - "description": "[Output Only] The resource type, which is always compute#instanceGroupManagerAggregatedList for an aggregated list of managed instance groups.", - "default": "compute#instanceGroupManagerAggregatedList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "InstanceGroupManagerAutoHealingPolicy": { - "id": "InstanceGroupManagerAutoHealingPolicy", - "type": "object", - "properties": { - "healthCheck": { - "type": "string", - "description": "The URL for the health check that signals autohealing." - }, - "initialDelaySec": { - "type": "integer", - "description": "The number of seconds that the managed instance group waits before it applies autohealing policies to new instances or recently recreated instances. This initial delay allows instances to initialize and run their startup scripts before the instance group determines that they are UNHEALTHY. This prevents the managed instance group from recreating its instances prematurely. This value must be from range [0, 3600].", - "format": "int32" - }, - "maxUnavailable": { - "$ref": "FixedOrPercent", - "description": "Maximum number of instances that can be unavailable when autohealing. The instance is considered available if all of the following conditions are satisfied: 1. Instance's status is RUNNING. 2. Instance's liveness health check result was observed to be HEALTHY at least once. By default, a percent value of 100% is used." - }, - "mode": { - "type": "string", - "description": "Defines operating mode for this policy.", - "enum": [ - "OFF", - "ON" - ], - "enumDescriptions": [ - "", - "" - ] - } - } - }, - "InstanceGroupManagerList": { - "id": "InstanceGroupManagerList", - "type": "object", - "description": "[Output Only] A list of managed instance groups.", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "array", - "description": "A list of InstanceGroupManager resources.", - "items": { - "$ref": "InstanceGroupManager" - } - }, - "kind": { - "type": "string", - "description": "[Output Only] The resource type, which is always compute#instanceGroupManagerList for a list of managed instance groups.", - "default": "compute#instanceGroupManagerList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "InstanceGroupManagerPendingActionsSummary": { - "id": "InstanceGroupManagerPendingActionsSummary", - "type": "object", - "properties": { - "creating": { - "type": "integer", - "description": "[Output Only] The number of instances in the managed instance group that are pending to be created.", - "format": "int32" - }, - "deleting": { - "type": "integer", - "description": "[Output Only] The number of instances in the managed instance group that are pending to be deleted.", - "format": "int32" - }, - "recreating": { - "type": "integer", - "description": "[Output Only] The number of instances in the managed instance group that are pending to be recreated.", - "format": "int32" - }, - "restarting": { - "type": "integer", - "description": "[Output Only] The number of instances in the managed instance group that are pending to be restarted.", - "format": "int32" - } - } - }, - "InstanceGroupManagerUpdatePolicy": { - "id": "InstanceGroupManagerUpdatePolicy", - "type": "object", - "properties": { - "maxSurge": { - "$ref": "FixedOrPercent", - "description": "The maximum number of instances that can be created above the specified targetSize during the update process. By default, a fixed value of 1 is used. This value can be either a fixed number or a percentage if the instance group has 10 or more instances. If you set a percentage, the number of instances will be rounded up if necessary.\n\nAt least one of either maxSurge or maxUnavailable must be greater than 0. Learn more about maxSurge." - }, - "maxUnavailable": { - "$ref": "FixedOrPercent", - "description": "The maximum number of instances that can be unavailable during the update process. An instance is considered available if all of the following conditions are satisfied:\n\n \n- The instance's status is RUNNING. \n- If there is a health check on the instance group, the instance's liveness health check result must be HEALTHY at least once. If there is no health check on the group, then the instance only needs to have a status of RUNNING to be considered available. By default, a fixed value of 1 is used. This value can be either a fixed number or a percentage if the instance group has 10 or more instances. If you set a percentage, the number of instances will be rounded up if necessary.\n\nAt least one of either maxSurge or maxUnavailable must be greater than 0. Learn more about maxUnavailable." - }, - "minReadySec": { - "type": "integer", - "description": "Minimum number of seconds to wait for after a newly created instance becomes available. This value must be from range [0, 3600].", - "format": "int32" - }, - "minimalAction": { - "type": "string", - "description": "Minimal action to be taken on an instance. You can specify either RESTART to restart existing instances or REPLACE to delete and create new instances from the target template. If you specify a code\u003eRESTART, the Updater will attempt to perform that action only. However, if the Updater determines that the minimal action you specify is not enough to perform the update, it might perform a more disruptive action.", - "enum": [ - "NONE", - "REFRESH", - "REPLACE", - "RESTART" - ], - "enumDescriptions": [ - "", - "", - "", - "" - ] - }, - "type": { - "type": "string", - "enum": [ - "OPPORTUNISTIC", - "PROACTIVE" - ], - "enumDescriptions": [ - "", - "" - ] - } - } - }, - "InstanceGroupManagerVersion": { - "id": "InstanceGroupManagerVersion", - "type": "object", - "properties": { - "instanceTemplate": { - "type": "string" - }, - "name": { - "type": "string", - "description": "Name of the version. Unique among all versions in the scope of this managed instance group." - }, - "tag": { - "type": "string", - "description": "Tag describing the version. Used to trigger rollout of a target version even if instance_template remains unchanged. Deprecated in favor of 'name'." - }, - "targetSize": { - "$ref": "FixedOrPercent", - "description": "Specifies the intended number of instances to be created from the instanceTemplate. The final number of instances created from the template will be equal to: \n- If expressed as a fixed number, the minimum of either targetSize.fixed or instanceGroupManager.targetSize is used. \n- if expressed as a percent, the targetSize would be (targetSize.percent/100 * InstanceGroupManager.targetSize) If there is a remainder, the number is rounded up. If unset, this version will update any remaining instances not updated by another version. Read Starting a canary update for more information." - } - } - }, - "InstanceGroupManagersAbandonInstancesRequest": { - "id": "InstanceGroupManagersAbandonInstancesRequest", - "type": "object", - "properties": { - "instances": { - "type": "array", - "description": "The URLs of one or more instances to abandon. This can be a full URL or a partial URL, such as zones/[ZONE]/instances/[INSTANCE_NAME].", - "items": { - "type": "string" - } - } - } - }, - "InstanceGroupManagersApplyUpdatesRequest": { - "id": "InstanceGroupManagersApplyUpdatesRequest", - "type": "object", - "description": "InstanceGroupManagers.applyUpdatesToInstances", - "properties": { - "instances": { - "type": "array", - "description": "The list of URLs of one or more instances for which we want to apply updates on this managed instance group. This can be a full URL or a partial URL, such as zones/[ZONE]/instances/[INSTANCE_NAME].", - "items": { - "type": "string" - } - }, - "maximalAction": { - "type": "string", - "description": "The maximal action that should be perfomed on the instances. By default REPLACE.", - "enum": [ - "NONE", - "REFRESH", - "REPLACE", - "RESTART" - ], - "enumDescriptions": [ - "", - "", - "", - "" - ] - }, - "minimalAction": { - "type": "string", - "description": "The minimal action that should be perfomed on the instances. By default NONE.", - "enum": [ - "NONE", - "REFRESH", - "REPLACE", - "RESTART" - ], - "enumDescriptions": [ - "", - "", - "", - "" - ] - } - } - }, - "InstanceGroupManagersDeleteInstancesRequest": { - "id": "InstanceGroupManagersDeleteInstancesRequest", - "type": "object", - "properties": { - "instances": { - "type": "array", - "description": "The URLs of one or more instances to delete. This can be a full URL or a partial URL, such as zones/[ZONE]/instances/[INSTANCE_NAME].", - "items": { - "type": "string" - } - } - } - }, - "InstanceGroupManagersDeletePerInstanceConfigsReq": { - "id": "InstanceGroupManagersDeletePerInstanceConfigsReq", - "type": "object", - "description": "InstanceGroupManagers.deletePerInstanceConfigs", - "properties": { - "instances": { - "type": "array", - "description": "The list of instances for which we want to delete per-instance configs on this managed instance group.", - "items": { - "type": "string" - } - } - } - }, - "InstanceGroupManagersListManagedInstancesResponse": { - "id": "InstanceGroupManagersListManagedInstancesResponse", - "type": "object", - "properties": { - "managedInstances": { - "type": "array", - "description": "[Output Only] The list of instances in the managed instance group.", - "items": { - "$ref": "ManagedInstance" - } - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - } - } - }, - "InstanceGroupManagersListPerInstanceConfigsResp": { - "id": "InstanceGroupManagersListPerInstanceConfigsResp", - "type": "object", - "properties": { - "items": { - "type": "array", - "description": "[Output Only] The list of PerInstanceConfig.", - "items": { - "$ref": "PerInstanceConfig" - } - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "InstanceGroupManagersRecreateInstancesRequest": { - "id": "InstanceGroupManagersRecreateInstancesRequest", - "type": "object", - "properties": { - "instances": { - "type": "array", - "description": "The URLs of one or more instances to recreate. This can be a full URL or a partial URL, such as zones/[ZONE]/instances/[INSTANCE_NAME].", - "items": { - "type": "string" - } - } - } - }, - "InstanceGroupManagersResizeAdvancedRequest": { - "id": "InstanceGroupManagersResizeAdvancedRequest", - "type": "object", - "properties": { - "noCreationRetries": { - "type": "boolean", - "description": "If this flag is true, the managed instance group attempts to create all instances initiated by this resize request only once. If there is an error during creation, the managed instance group does not retry create this instance, and we will decrease the targetSize of the request instead. If the flag is false, the group attemps to recreate each instance continuously until it succeeds.\n\nThis flag matters only in the first attempt of creation of an instance. After an instance is successfully created while this flag is enabled, the instance behaves the same way as all the other instances created with a regular resize request. In particular, if a running instance dies unexpectedly at a later time and needs to be recreated, this mode does not affect the recreation behavior in that scenario.\n\nThis flag is applicable only to the current resize request. It does not influence other resize requests in any way.\n\nYou can see which instances is being creating in which mode by calling the get or listManagedInstances API." - }, - "targetSize": { - "type": "integer", - "description": "The number of running instances that the managed instance group should maintain at any given time. The group automatically adds or removes instances to maintain the number of instances specified by this parameter.", - "format": "int32" - } - } - }, - "InstanceGroupManagersScopedList": { - "id": "InstanceGroupManagersScopedList", - "type": "object", - "properties": { - "instanceGroupManagers": { - "type": "array", - "description": "[Output Only] The list of managed instance groups that are contained in the specified project and zone.", - "items": { - "$ref": "InstanceGroupManager" - } - }, - "warning": { - "type": "object", - "description": "[Output Only] The warning that replaces the list of managed instance groups when the list is empty.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "InstanceGroupManagersSetAutoHealingRequest": { - "id": "InstanceGroupManagersSetAutoHealingRequest", - "type": "object", - "properties": { - "autoHealingPolicies": { - "type": "array", - "items": { - "$ref": "InstanceGroupManagerAutoHealingPolicy" - } - } - } - }, - "InstanceGroupManagersSetInstanceTemplateRequest": { - "id": "InstanceGroupManagersSetInstanceTemplateRequest", - "type": "object", - "properties": { - "instanceTemplate": { - "type": "string", - "description": "The URL of the instance template that is specified for this managed instance group. The group uses this template to create all new instances in the managed instance group." - } - } - }, - "InstanceGroupManagersSetTargetPoolsRequest": { - "id": "InstanceGroupManagersSetTargetPoolsRequest", - "type": "object", - "properties": { - "fingerprint": { - "type": "string", - "description": "The fingerprint of the target pools information. Use this optional property to prevent conflicts when multiple users change the target pools settings concurrently. Obtain the fingerprint with the instanceGroupManagers.get method. Then, include the fingerprint in your request to ensure that you do not overwrite changes that were applied from another concurrent request.", - "format": "byte" - }, - "targetPools": { - "type": "array", - "description": "The list of target pool URLs that instances in this managed instance group belong to. The managed instance group applies these target pools to all of the instances in the group. Existing instances and new instances in the group all receive these target pool settings.", - "items": { - "type": "string" - } - } - } - }, - "InstanceGroupManagersUpdatePerInstanceConfigsReq": { - "id": "InstanceGroupManagersUpdatePerInstanceConfigsReq", - "type": "object", - "description": "InstanceGroupManagers.updatePerInstanceConfigs", - "properties": { - "perInstanceConfigs": { - "type": "array", - "description": "The list of per-instance configs to insert or patch on this managed instance group.", - "items": { - "$ref": "PerInstanceConfig" - } - } - } - }, - "InstanceGroupsAddInstancesRequest": { - "id": "InstanceGroupsAddInstancesRequest", - "type": "object", - "properties": { - "instances": { - "type": "array", - "description": "The list of instances to add to the instance group.", - "items": { - "$ref": "InstanceReference" - } - } - } - }, - "InstanceGroupsListInstances": { - "id": "InstanceGroupsListInstances", - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "array", - "description": "A list of InstanceWithNamedPorts resources.", - "items": { - "$ref": "InstanceWithNamedPorts" - } - }, - "kind": { - "type": "string", - "description": "[Output Only] The resource type, which is always compute#instanceGroupsListInstances for the list of instances in the specified instance group.", - "default": "compute#instanceGroupsListInstances" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "InstanceGroupsListInstancesRequest": { - "id": "InstanceGroupsListInstancesRequest", - "type": "object", - "properties": { - "instanceState": { - "type": "string", - "description": "A filter for the state of the instances in the instance group. Valid options are ALL or RUNNING. If you do not specify this parameter the list includes all instances regardless of their state.", - "enum": [ - "ALL", - "RUNNING" - ], - "enumDescriptions": [ - "", - "" - ] - } - } - }, - "InstanceGroupsRemoveInstancesRequest": { - "id": "InstanceGroupsRemoveInstancesRequest", - "type": "object", - "properties": { - "instances": { - "type": "array", - "description": "The list of instances to remove from the instance group.", - "items": { - "$ref": "InstanceReference" - } - } - } - }, - "InstanceGroupsScopedList": { - "id": "InstanceGroupsScopedList", - "type": "object", - "properties": { - "instanceGroups": { - "type": "array", - "description": "[Output Only] The list of instance groups that are contained in this scope.", - "items": { - "$ref": "InstanceGroup" - } - }, - "warning": { - "type": "object", - "description": "[Output Only] An informational warning that replaces the list of instance groups when the list is empty.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "InstanceGroupsSetNamedPortsRequest": { - "id": "InstanceGroupsSetNamedPortsRequest", - "type": "object", - "properties": { - "fingerprint": { - "type": "string", - "description": "The fingerprint of the named ports information for this instance group. Use this optional property to prevent conflicts when multiple users change the named ports settings concurrently. Obtain the fingerprint with the instanceGroups.get method. Then, include the fingerprint in your request to ensure that you do not overwrite changes that were applied from another concurrent request.", - "format": "byte" - }, - "namedPorts": { - "type": "array", - "description": "The list of named ports to set for this instance group.", - "items": { - "$ref": "NamedPort" - } - } - } - }, - "InstanceList": { - "id": "InstanceList", - "type": "object", - "description": "Contains a list of instances.", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "array", - "description": "A list of Instance resources.", - "items": { - "$ref": "Instance" - } - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#instanceList for lists of Instance resources.", - "default": "compute#instanceList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "InstanceListReferrers": { - "id": "InstanceListReferrers", - "type": "object", - "description": "Contains a list of instance referrers.", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "array", - "description": "A list of Reference resources.", - "items": { - "$ref": "Reference" - } - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#instanceListReferrers for lists of Instance referrers.", - "default": "compute#instanceListReferrers" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "InstanceMoveRequest": { - "id": "InstanceMoveRequest", - "type": "object", - "properties": { - "destinationZone": { - "type": "string", - "description": "The URL of the destination zone to move the instance. This can be a full or partial URL. For example, the following are all valid URLs to a zone: \n- https://www.googleapis.com/compute/v1/projects/project/zones/zone \n- projects/project/zones/zone \n- zones/zone" - }, - "targetInstance": { - "type": "string", - "description": "The URL of the target instance to move. This can be a full or partial URL. For example, the following are all valid URLs to an instance: \n- https://www.googleapis.com/compute/v1/projects/project/zones/zone/instances/instance \n- projects/project/zones/zone/instances/instance \n- zones/zone/instances/instance" - } - } - }, - "InstanceProperties": { - "id": "InstanceProperties", - "type": "object", - "description": "", - "properties": { - "canIpForward": { - "type": "boolean", - "description": "Enables instances created based on this template to send packets with source IP addresses other than their own and receive packets with destination IP addresses other than their own. If these instances will be used as an IP gateway or it will be set as the next-hop in a Route resource, specify true. If unsure, leave this set to false. See the Enable IP forwarding documentation for more information." - }, - "description": { - "type": "string", - "description": "An optional text description for the instances that are created from this instance template." - }, - "disks": { - "type": "array", - "description": "An array of disks that are associated with the instances that are created from this template.", - "items": { - "$ref": "AttachedDisk" - } - }, - "guestAccelerators": { - "type": "array", - "description": "A list of guest accelerator cards' type and count to use for instances created from the instance template.", - "items": { - "$ref": "AcceleratorConfig" - } - }, - "labels": { - "type": "object", - "description": "Labels to apply to instances that are created from this template.", - "additionalProperties": { - "type": "string" - } - }, - "machineType": { - "type": "string", - "description": "The machine type to use for instances that are created from this template.", - "annotations": { - "required": [ - "compute.instanceTemplates.insert" - ] - } - }, - "metadata": { - "$ref": "Metadata", - "description": "The metadata key/value pairs to assign to instances that are created from this template. These pairs can consist of custom metadata or predefined keys. See Project and instance metadata for more information." - }, - "minCpuPlatform": { - "type": "string", - "description": "Minimum cpu/platform to be used by this instance. The instance may be scheduled on the specified or newer cpu/platform. Applicable values are the friendly names of CPU platforms, such as minCpuPlatform: \"Intel Haswell\" or minCpuPlatform: \"Intel Sandy Bridge\". For more information, read Specifying a Minimum CPU Platform." - }, - "networkInterfaces": { - "type": "array", - "description": "An array of network access configurations for this interface.", - "items": { - "$ref": "NetworkInterface" - } - }, - "scheduling": { - "$ref": "Scheduling", - "description": "Specifies the scheduling options for the instances that are created from this template." - }, - "serviceAccounts": { - "type": "array", - "description": "A list of service accounts with specified scopes. Access tokens for these service accounts are available to the instances that are created from this template. Use metadata queries to obtain the access tokens for these instances.", - "items": { - "$ref": "ServiceAccount" - } - }, - "tags": { - "$ref": "Tags", - "description": "A list of tags to apply to the instances that are created from this template. The tags identify valid sources or targets for network firewalls. The setTags method can modify this list of tags. Each tag within the list must comply with RFC1035." - } - } - }, - "InstanceReference": { - "id": "InstanceReference", - "type": "object", - "properties": { - "instance": { - "type": "string", - "description": "The URL for a specific instance." - } - } - }, - "InstanceTemplate": { - "id": "InstanceTemplate", - "type": "object", - "description": "An Instance Template resource. (== resource_for beta.instanceTemplates ==) (== resource_for v1.instanceTemplates ==)", - "properties": { - "creationTimestamp": { - "type": "string", - "description": "[Output Only] The creation timestamp for this instance template in RFC3339 text format." - }, - "description": { - "type": "string", - "description": "An optional description of this resource. Provide this property when you create the resource." - }, - "id": { - "type": "string", - "description": "[Output Only] A unique identifier for this instance template. The server defines this identifier.", - "format": "uint64" - }, - "kind": { - "type": "string", - "description": "[Output Only] The resource type, which is always compute#instanceTemplate for instance templates.", - "default": "compute#instanceTemplate" - }, - "name": { - "type": "string", - "description": "Name of the resource; provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "annotations": { - "required": [ - "compute.instanceTemplates.insert" - ] - } - }, - "properties": { - "$ref": "InstanceProperties", - "description": "The instance properties for this instance template." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] The URL for this instance template. The server defines this URL." - }, - "sourceInstance": { - "type": "string", - "description": "The source instance used to create the template. You can provide this as a partial or full URL to the resource. For example, the following are valid values: \n- https://www.googleapis.com/compute/v1/projects/project/zones/zone/instances/instance \n- projects/project/zones/zone/instances/instance" - }, - "sourceInstanceParams": { - "$ref": "SourceInstanceParams", - "description": "The source instance params to use to create this instance template." - } - } - }, - "InstanceTemplateList": { - "id": "InstanceTemplateList", - "type": "object", - "description": "A list of instance templates.", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "array", - "description": "A list of InstanceTemplate resources.", - "items": { - "$ref": "InstanceTemplate" - } - }, - "kind": { - "type": "string", - "description": "[Output Only] The resource type, which is always compute#instanceTemplatesListResponse for instance template lists.", - "default": "compute#instanceTemplateList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "InstanceWithNamedPorts": { - "id": "InstanceWithNamedPorts", - "type": "object", - "properties": { - "instance": { - "type": "string", - "description": "[Output Only] The URL of the instance." - }, - "namedPorts": { - "type": "array", - "description": "[Output Only] The named ports that belong to this instance group.", - "items": { - "$ref": "NamedPort" - } - }, - "status": { - "type": "string", - "description": "[Output Only] The status of the instance.", - "enum": [ - "PROVISIONING", - "RUNNING", - "STAGING", - "STOPPED", - "STOPPING", - "SUSPENDED", - "SUSPENDING", - "TERMINATED" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "" - ] - } - } - }, - "InstancesAddMaintenancePoliciesRequest": { - "id": "InstancesAddMaintenancePoliciesRequest", - "type": "object", - "properties": { - "maintenancePolicies": { - "type": "array", - "description": "Maintenance policies to be added to this instance.", - "items": { - "type": "string" - } - } - } - }, - "InstancesRemoveMaintenancePoliciesRequest": { - "id": "InstancesRemoveMaintenancePoliciesRequest", - "type": "object", - "properties": { - "maintenancePolicies": { - "type": "array", - "description": "Maintenance policies to be removed from this instance.", - "items": { - "type": "string" - } - } - } - }, - "InstancesResumeRequest": { - "id": "InstancesResumeRequest", - "type": "object", - "properties": { - "disks": { - "type": "array", - "description": "Array of disks associated with this instance that are protected with a customer-supplied encryption key.\n\nIn order to resume the instance, the disk url and its corresponding key must be provided.\n\nIf the disk is not protected with a customer-supplied encryption key it should not be specified.", - "items": { - "$ref": "CustomerEncryptionKeyProtectedDisk" - } - }, - "instanceEncryptionKey": { - "$ref": "CustomerEncryptionKey", - "description": "Decrypts data associated with an instance that is protected with a customer-supplied encryption key.\n\nIf the instance you are starting is protected with a customer-supplied encryption key, the correct key must be provided otherwise the instance resume will not succeed." - } - } - }, - "InstancesScopedList": { - "id": "InstancesScopedList", - "type": "object", - "properties": { - "instances": { - "type": "array", - "description": "[Output Only] List of instances contained in this scope.", - "items": { - "$ref": "Instance" - } - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning which replaces the list of instances when the list is empty.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "InstancesSetLabelsRequest": { - "id": "InstancesSetLabelsRequest", - "type": "object", - "properties": { - "labelFingerprint": { - "type": "string", - "description": "Fingerprint of the previous set of labels for this resource, used to prevent conflicts. Provide the latest fingerprint value when making a request to add or change labels.", - "format": "byte" - }, - "labels": { - "type": "object", - "additionalProperties": { - "type": "string" - } - } - } - }, - "InstancesSetMachineResourcesRequest": { - "id": "InstancesSetMachineResourcesRequest", - "type": "object", - "properties": { - "guestAccelerators": { - "type": "array", - "description": "List of the type and count of accelerator cards attached to the instance.", - "items": { - "$ref": "AcceleratorConfig" - } - } - } - }, - "InstancesSetMachineTypeRequest": { - "id": "InstancesSetMachineTypeRequest", - "type": "object", - "properties": { - "machineType": { - "type": "string", - "description": "Full or partial URL of the machine type resource. See Machine Types for a full list of machine types. For example: zones/us-central1-f/machineTypes/n1-standard-1" - } - } - }, - "InstancesSetMinCpuPlatformRequest": { - "id": "InstancesSetMinCpuPlatformRequest", - "type": "object", - "properties": { - "minCpuPlatform": { - "type": "string", - "description": "Minimum cpu/platform this instance should be started at." - } - } - }, - "InstancesSetServiceAccountRequest": { - "id": "InstancesSetServiceAccountRequest", - "type": "object", - "properties": { - "email": { - "type": "string", - "description": "Email address of the service account." - }, - "scopes": { - "type": "array", - "description": "The list of scopes to be made available for this service account.", - "items": { - "type": "string" - } - } - } - }, - "InstancesStartWithEncryptionKeyRequest": { - "id": "InstancesStartWithEncryptionKeyRequest", - "type": "object", - "properties": { - "disks": { - "type": "array", - "description": "Array of disks associated with this instance that are protected with a customer-supplied encryption key.\n\nIn order to start the instance, the disk url and its corresponding key must be provided.\n\nIf the disk is not protected with a customer-supplied encryption key it should not be specified.", - "items": { - "$ref": "CustomerEncryptionKeyProtectedDisk" - } - }, - "instanceEncryptionKey": { - "$ref": "CustomerEncryptionKey", - "description": "Decrypts data associated with an instance that is protected with a customer-supplied encryption key.\n\nIf the instance you are starting is protected with a customer-supplied encryption key, the correct key must be provided otherwise the instance start will not succeed." - } - } - }, - "Interconnect": { - "id": "Interconnect", - "type": "object", - "description": "Represents an Interconnects resource. The Interconnects resource is a dedicated connection between Google's network and your on-premises network. For more information, see the Dedicated overview page. (== resource_for v1.interconnects ==) (== resource_for beta.interconnects ==)", - "properties": { - "adminEnabled": { - "type": "boolean", - "description": "Administrative status of the interconnect. When this is set to true, the Interconnect is functional and can carry traffic. When set to false, no packets can be carried over the interconnect and no BGP routes are exchanged over it. By default, the status is set to true." - }, - "circuitInfos": { - "type": "array", - "description": "[Output Only] List of CircuitInfo objects, that describe the individual circuits in this LAG.", - "items": { - "$ref": "InterconnectCircuitInfo" - } - }, - "creationTimestamp": { - "type": "string", - "description": "[Output Only] Creation timestamp in RFC3339 text format." - }, - "customerName": { - "type": "string", - "description": "Customer name, to put in the Letter of Authorization as the party authorized to request a crossconnect." - }, - "description": { - "type": "string", - "description": "An optional description of this resource. Provide this property when you create the resource." - }, - "expectedOutages": { - "type": "array", - "description": "[Output Only] List of outages expected for this Interconnect.", - "items": { - "$ref": "InterconnectOutageNotification" - } - }, - "googleIpAddress": { - "type": "string", - "description": "[Output Only] IP address configured on the Google side of the Interconnect link. This can be used only for ping tests." - }, - "googleReferenceId": { - "type": "string", - "description": "[Output Only] Google reference ID; to be used when raising support tickets with Google or otherwise to debug backend connectivity issues." - }, - "id": { - "type": "string", - "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", - "format": "uint64" - }, - "interconnectAttachments": { - "type": "array", - "description": "[Output Only] A list of the URLs of all InterconnectAttachments configured to use this Interconnect.", - "items": { - "type": "string" - } - }, - "interconnectType": { - "type": "string", - "description": "Type of interconnect. Note that \"IT_PRIVATE\" has been deprecated in favor of \"DEDICATED\"", - "enum": [ - "DEDICATED", - "IT_PRIVATE", - "PARTNER" - ], - "enumDescriptions": [ - "", - "", - "" - ] - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of the resource. Always compute#interconnect for interconnects.", - "default": "compute#interconnect" - }, - "labelFingerprint": { - "type": "string", - "description": "A fingerprint for the labels being applied to this Interconnect, which is essentially a hash of the labels set used for optimistic locking. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update labels. You must always provide an up-to-date fingerprint hash in order to update or change labels.\n\nTo see the latest fingerprint, make a get() request to retrieve an Interconnect.", - "format": "byte" - }, - "labels": { - "type": "object", - "description": "Labels to apply to this Interconnect resource. These can be later modified by the setLabels method. Each label key/value must comply with RFC1035. Label values may be empty.", - "additionalProperties": { - "type": "string" - } - }, - "linkType": { - "type": "string", - "description": "Type of link requested. This field indicates speed of each of the links in the bundle, not the entire bundle. Only 10G per link is allowed for a dedicated interconnect. Options: Ethernet_10G_LR", - "enum": [ - "LINK_TYPE_ETHERNET_10G_LR" - ], - "enumDescriptions": [ - "" - ] - }, - "location": { - "type": "string", - "description": "URL of the InterconnectLocation object that represents where this connection is to be provisioned." - }, - "name": { - "type": "string", - "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "annotations": { - "required": [ - "compute.interconnects.insert" - ] - } - }, - "nocContactEmail": { - "type": "string", - "description": "Email address to contact the customer NOC for operations and maintenance notifications regarding this Interconnect. If specified, this will be used for notifications in addition to all other forms described, such as Stackdriver logs alerting and Cloud Notifications." - }, - "operationalStatus": { - "type": "string", - "description": "[Output Only] The current status of whether or not this Interconnect is functional.", - "enum": [ - "OS_ACTIVE", - "OS_UNPROVISIONED" - ], - "enumDescriptions": [ - "", - "" - ] - }, - "peerIpAddress": { - "type": "string", - "description": "[Output Only] IP address configured on the customer side of the Interconnect link. The customer should configure this IP address during turnup when prompted by Google NOC. This can be used only for ping tests." - }, - "provisionedLinkCount": { - "type": "integer", - "description": "[Output Only] Number of links actually provisioned in this interconnect.", - "format": "int32" - }, - "requestedLinkCount": { - "type": "integer", - "description": "Target number of physical links in the link bundle, as requested by the customer.", - "format": "int32" - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for the resource." - }, - "state": { - "type": "string", - "description": "[Output Only] The current state of whether or not this Interconnect is functional.", - "enum": [ - "ACTIVE", - "UNPROVISIONED" - ], - "enumDescriptions": [ - "", - "" - ] - } - } - }, - "InterconnectAttachment": { - "id": "InterconnectAttachment", - "type": "object", - "description": "Represents an InterconnectAttachment (VLAN attachment) resource. For more information, see Creating VLAN Attachments. (== resource_for beta.interconnectAttachments ==) (== resource_for v1.interconnectAttachments ==)", - "properties": { - "adminEnabled": { - "type": "boolean", - "description": "Determines whether this Attachment will carry packets. Not present for PARTNER_PROVIDER." - }, - "availabilityZone": { - "type": "string", - "enum": [ - "ZONE_1", - "ZONE_2", - "ZONE_ANY" - ], - "enumDescriptions": [ - "", - "", - "" - ] - }, - "bandwidth": { - "type": "string", - "enum": [ - "BPS_100M", - "BPS_10G", - "BPS_1G", - "BPS_200M", - "BPS_2G", - "BPS_300M", - "BPS_400M", - "BPS_500M", - "BPS_50M", - "BPS_5G" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "candidateSubnets": { - "type": "array", - "description": "Up to 16 candidate prefixes that can be used to restrict the allocation of cloudRouterIpAddress and customerRouterIpAddress for this attachment. All prefixes must be within link-local address space (169.254.0.0/16) and must be /29 or shorter (/28, /27, etc). Google will attempt to select an unused /29 from the supplied candidate prefix(es). The request will fail if all possible /29s are in use on Google?s edge. If not supplied, Google will randomly select an unused /29 from all of link-local space.", - "items": { - "type": "string" - } - }, - "cloudRouterIpAddress": { - "type": "string", - "description": "[Output Only] IPv4 address + prefix length to be configured on Cloud Router Interface for this interconnect attachment." - }, - "creationTimestamp": { - "type": "string", - "description": "[Output Only] Creation timestamp in RFC3339 text format." - }, - "customerRouterIpAddress": { - "type": "string", - "description": "[Output Only] IPv4 address + prefix length to be configured on the customer router subinterface for this interconnect attachment." - }, - "description": { - "type": "string", - "description": "An optional description of this resource." - }, - "googleReferenceId": { - "type": "string", - "description": "[Output Only] Google reference ID, to be used when raising support tickets with Google or otherwise to debug backend connectivity issues." - }, - "id": { - "type": "string", - "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", - "format": "uint64" - }, - "interconnect": { - "type": "string", - "description": "URL of the underlying Interconnect object that this attachment's traffic will traverse through." - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of the resource. Always compute#interconnectAttachment for interconnect attachments.", - "default": "compute#interconnectAttachment" - }, - "labelFingerprint": { - "type": "string", - "description": "A fingerprint for the labels being applied to this InterconnectAttachment, which is essentially a hash of the labels set used for optimistic locking. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update labels. You must always provide an up-to-date fingerprint hash in order to update or change labels.\n\nTo see the latest fingerprint, make a get() request to retrieve an InterconnectAttachment.", - "format": "byte" - }, - "labels": { - "type": "object", - "description": "Labels to apply to this InterconnectAttachment resource. These can be later modified by the setLabels method. Each label key/value must comply with RFC1035. Label values may be empty.", - "additionalProperties": { - "type": "string" - } - }, - "name": { - "type": "string", - "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" - }, - "operationalStatus": { - "type": "string", - "description": "[Output Only] The current status of whether or not this interconnect attachment is functional.", - "enum": [ - "OS_ACTIVE", - "OS_UNPROVISIONED" - ], - "enumDescriptions": [ - "", - "" - ] - }, - "pairingKey": { - "type": "string", - "description": "[Output only for type PARTNER. Input only for PARTNER_PROVIDER. Not present for DEDICATED]. Opaque string identifying an PARTNER attachment. Of the form ?cloud-region/XXXXXX?." - }, - "partnerAsn": { - "type": "string", - "description": "[Output only for PARTNER. Input for PARTNER_PROVIDER. Not present for DEDICATED] BGP ASN of the Partner. A layer 3 Partner should supply this if they configured BGP on behalf of the customer.", - "format": "int64" - }, - "partnerMetadata": { - "$ref": "InterconnectAttachmentPartnerMetadata" - }, - "privateInterconnectInfo": { - "$ref": "InterconnectAttachmentPrivateInfo", - "description": "[Output Only] Information specific to an InterconnectAttachment. This property is populated if the interconnect that this is attached to is of type DEDICATED." - }, - "region": { - "type": "string", - "description": "[Output Only] URL of the region where the regional interconnect attachment resides." - }, - "router": { - "type": "string", - "description": "URL of the cloud router to be used for dynamic routing. This router must be in the same region as this InterconnectAttachment. The InterconnectAttachment will automatically connect the Interconnect to the network & region within which the Cloud Router is configured." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for the resource." - }, - "state": { - "type": "string", - "description": "[Output Only] The current state of whether or not this interconnect attachment is functional.", - "enum": [ - "ACTIVE", - "DEFUNCT", - "PARTNER_REQUEST_RECEIVED", - "PENDING_CUSTOMER", - "PENDING_PARTNER", - "STATE_UNSPECIFIED", - "UNPROVISIONED" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "" - ] - }, - "type": { - "type": "string", - "enum": [ - "DEDICATED", - "PARTNER", - "PARTNER_PROVIDER" - ], - "enumDescriptions": [ - "", - "", - "" - ] - }, - "vlanTag8021q": { - "type": "integer", - "description": "Available only for DEDICATED and PARTNER_PROVIDER. Desired VLAN tag for this attachment, in the range 2-4094. This field refers to 802.1q VLAN tag, also known as IEEE 802.1Q Only specified at creation time.", - "format": "int32" - } - } - }, - "InterconnectAttachmentAggregatedList": { - "id": "InterconnectAttachmentAggregatedList", - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "object", - "description": "A list of InterconnectAttachmentsScopedList resources.", - "additionalProperties": { - "$ref": "InterconnectAttachmentsScopedList", - "description": "Name of the scope containing this set of interconnect attachments." - } - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#interconnectAttachmentAggregatedList for aggregated lists of interconnect attachments.", - "default": "compute#interconnectAttachmentAggregatedList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "InterconnectAttachmentList": { - "id": "InterconnectAttachmentList", - "type": "object", - "description": "Response to the list request, and contains a list of interconnect attachments.", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "array", - "description": "A list of InterconnectAttachment resources.", - "items": { - "$ref": "InterconnectAttachment" - } - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#interconnectAttachmentList for lists of interconnect attachments.", - "default": "compute#interconnectAttachmentList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "InterconnectAttachmentPartnerMetadata": { - "id": "InterconnectAttachmentPartnerMetadata", - "type": "object", - "description": "Informational metadata about Partner attachments from Partners to display to customers. These fields are propagated from PARTNER_PROVIDER attachments to their corresponding PARTNER attachments. Only mutable for PARTNER_PROVIDER type, output-only for PARTNER, not available for DEDICATED.", - "properties": { - "interconnectName": { - "type": "string", - "description": "Plain text name of the Interconnect this attachment is connected to, as displayed in the Partner?s portal. For instance ?Chicago 1?. This value may be validated to match approved Partner values." - }, - "partnerName": { - "type": "string", - "description": "Plain text name of the Partner providing this attachment. This value may be validated to match approved Partner values." - }, - "portalUrl": { - "type": "string", - "description": "URL of the Partner?s portal for this Attachment. Partners may customise this to be a deep-link to the specific resource on the Partner portal. This value may be validated to match approved Partner values." - } - } - }, - "InterconnectAttachmentPrivateInfo": { - "id": "InterconnectAttachmentPrivateInfo", - "type": "object", - "description": "Information for an interconnect attachment when this belongs to an interconnect of type DEDICATED.", - "properties": { - "tag8021q": { - "type": "integer", - "description": "[Output Only] 802.1q encapsulation tag to be used for traffic between Google and the customer, going to and from this network and region.", - "format": "uint32" - } - } - }, - "InterconnectAttachmentsScopedList": { - "id": "InterconnectAttachmentsScopedList", - "type": "object", - "properties": { - "interconnectAttachments": { - "type": "array", - "description": "List of interconnect attachments contained in this scope.", - "items": { - "$ref": "InterconnectAttachment" - } - }, - "warning": { - "type": "object", - "description": "Informational warning which replaces the list of addresses when the list is empty.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "InterconnectCircuitInfo": { - "id": "InterconnectCircuitInfo", - "type": "object", - "description": "Describes a single physical circuit between the Customer and Google. CircuitInfo objects are created by Google, so all fields are output only. Next id: 4", - "properties": { - "customerDemarcId": { - "type": "string", - "description": "Customer-side demarc ID for this circuit." - }, - "googleCircuitId": { - "type": "string", - "description": "Google-assigned unique ID for this circuit. Assigned at circuit turn-up." - }, - "googleDemarcId": { - "type": "string", - "description": "Google-side demarc ID for this circuit. Assigned at circuit turn-up and provided by Google to the customer in the LOA." - } - } - }, - "InterconnectList": { - "id": "InterconnectList", - "type": "object", - "description": "Response to the list request, and contains a list of interconnects.", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "array", - "description": "A list of Interconnect resources.", - "items": { - "$ref": "Interconnect" - } - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#interconnectList for lists of interconnects.", - "default": "compute#interconnectList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "InterconnectLocation": { - "id": "InterconnectLocation", - "type": "object", - "description": "Represents an InterconnectLocations resource. The InterconnectLocations resource describes the locations where you can connect to Google's networks. For more information, see Colocation Facilities.", - "properties": { - "address": { - "type": "string", - "description": "[Output Only] The postal address of the Point of Presence, each line in the address is separated by a newline character." - }, - "availabilityZone": { - "type": "string", - "description": "[Output Only] Availability zone for this location. Within a metropolitan area (metro), maintenance will not be simultaneously scheduled in more than one availability zone. Example: \"zone1\" or \"zone2\"." - }, - "city": { - "type": "string", - "description": "[Output Only] Metropolitan area designator that indicates which city an interconnect is located. For example: \"Chicago, IL\", \"Amsterdam, Netherlands\"." - }, - "continent": { - "type": "string", - "description": "[Output Only] Continent for this location.", - "enum": [ - "AFRICA", - "ASIA_PAC", - "C_AFRICA", - "C_ASIA_PAC", - "C_EUROPE", - "C_NORTH_AMERICA", - "C_SOUTH_AMERICA", - "EUROPE", - "NORTH_AMERICA", - "SOUTH_AMERICA" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "creationTimestamp": { - "type": "string", - "description": "[Output Only] Creation timestamp in RFC3339 text format." - }, - "description": { - "type": "string", - "description": "[Output Only] An optional description of the resource." - }, - "facilityProvider": { - "type": "string", - "description": "[Output Only] The name of the provider for this facility (e.g., EQUINIX)." - }, - "facilityProviderFacilityId": { - "type": "string", - "description": "[Output Only] A provider-assigned Identifier for this facility (e.g., Ashburn-DC1)." - }, - "id": { - "type": "string", - "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", - "format": "uint64" - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of the resource. Always compute#interconnectLocation for interconnect locations.", - "default": "compute#interconnectLocation" - }, - "name": { - "type": "string", - "description": "[Output Only] Name of the resource." - }, - "peeringdbFacilityId": { - "type": "string", - "description": "[Output Only] The peeringdb identifier for this facility (corresponding with a netfac type in peeringdb)." - }, - "regionInfos": { - "type": "array", - "description": "[Output Only] A list of InterconnectLocation.RegionInfo objects, that describe parameters pertaining to the relation between this InterconnectLocation and various Google Cloud regions.", - "items": { - "$ref": "InterconnectLocationRegionInfo" - } - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for the resource." - } - } - }, - "InterconnectLocationList": { - "id": "InterconnectLocationList", - "type": "object", - "description": "Response to the list request, and contains a list of interconnect locations.", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "array", - "description": "A list of InterconnectLocation resources.", - "items": { - "$ref": "InterconnectLocation" - } - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#interconnectLocationList for lists of interconnect locations.", - "default": "compute#interconnectLocationList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "InterconnectLocationRegionInfo": { - "id": "InterconnectLocationRegionInfo", - "type": "object", - "description": "Information about any potential InterconnectAttachments between an Interconnect at a specific InterconnectLocation, and a specific Cloud Region.", - "properties": { - "expectedRttMs": { - "type": "string", - "description": "Expected round-trip time in milliseconds, from this InterconnectLocation to a VM in this region.", - "format": "int64" - }, - "locationPresence": { - "type": "string", - "description": "Identifies the network presence of this location.", - "enum": [ - "GLOBAL", - "LOCAL_REGION", - "LP_GLOBAL", - "LP_LOCAL_REGION" - ], - "enumDescriptions": [ - "", - "", - "", - "" - ] - }, - "region": { - "type": "string", - "description": "URL for the region of this location." - } - } - }, - "InterconnectOutageNotification": { - "id": "InterconnectOutageNotification", - "type": "object", - "description": "Description of a planned outage on this Interconnect. Next id: 9", - "properties": { - "affectedCircuits": { - "type": "array", - "description": "Iff issue_type is IT_PARTIAL_OUTAGE, a list of the Google-side circuit IDs that will be affected.", - "items": { - "type": "string" - } - }, - "description": { - "type": "string", - "description": "A description about the purpose of the outage." - }, - "endTime": { - "type": "string", - "description": "Scheduled end time for the outage (milliseconds since Unix epoch).", - "format": "int64" - }, - "issueType": { - "type": "string", - "description": "Form this outage is expected to take. Note that the \"IT_\" versions of this enum have been deprecated in favor of the unprefixed values.", - "enum": [ - "IT_OUTAGE", - "IT_PARTIAL_OUTAGE", - "OUTAGE", - "PARTIAL_OUTAGE" - ], - "enumDescriptions": [ - "", - "", - "", - "" - ] - }, - "name": { - "type": "string", - "description": "Unique identifier for this outage notification." - }, - "source": { - "type": "string", - "description": "The party that generated this notification. Note that \"NSRC_GOOGLE\" has been deprecated in favor of \"GOOGLE\"", - "enum": [ - "GOOGLE", - "NSRC_GOOGLE" - ], - "enumDescriptions": [ - "", - "" - ] - }, - "startTime": { - "type": "string", - "description": "Scheduled start time for the outage (milliseconds since Unix epoch).", - "format": "int64" - }, - "state": { - "type": "string", - "description": "State of this notification. Note that the \"NS_\" versions of this enum have been deprecated in favor of the unprefixed values.", - "enum": [ - "ACTIVE", - "CANCELLED", - "NS_ACTIVE", - "NS_CANCELED" - ], - "enumDescriptions": [ - "", - "", - "", - "" - ] - } - } - }, - "InternalIpOwner": { - "id": "InternalIpOwner", - "type": "object", - "properties": { - "ipCidrRange": { - "type": "string", - "description": "IP CIDR range being owned." - }, - "owners": { - "type": "array", - "description": "URLs of the IP owners of the IP CIDR range.", - "items": { - "type": "string" - } - }, - "systemOwned": { - "type": "boolean", - "description": "Whether this IP CIDR range is reserved for system use." - } - } - }, - "IpOwnerList": { - "id": "IpOwnerList", - "type": "object", - "description": "Contains a list of IP owners.", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "array", - "description": "A list of InternalIpOwner resources.", - "items": { - "$ref": "InternalIpOwner" - } - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#ipOwnerList for lists of IP owners.", - "default": "compute#ipOwnerList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "License": { - "id": "License", - "type": "object", - "description": "A license resource.", - "properties": { - "chargesUseFee": { - "type": "boolean", - "description": "[Output Only] Deprecated. This field no longer reflects whether a license charges a usage fee." - }, - "creationTimestamp": { - "type": "string", - "description": "[Output Only] Creation timestamp in RFC3339 text format." - }, - "description": { - "type": "string", - "description": "An optional textual description of the resource; provided by the client when the resource is created." - }, - "id": { - "type": "string", - "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", - "format": "uint64" - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#license for licenses.", - "default": "compute#license" - }, - "licenseCode": { - "type": "string", - "description": "[Output Only] The unique code used to attach this license to images, snapshots, and disks.", - "format": "uint64" - }, - "name": { - "type": "string", - "description": "[Output Only] Name of the resource. The name is 1-63 characters long and complies with RFC1035.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "annotations": { - "required": [ - "compute.images.insert" - ] - } - }, - "resourceRequirements": { - "$ref": "LicenseResourceRequirements" - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for the resource." - }, - "transferable": { - "type": "boolean", - "description": "If false, licenses will not be copied from the source resource when creating an image from a disk, disk from snapshot, or snapshot from disk." - } - } - }, - "LicenseCode": { - "id": "LicenseCode", - "type": "object", - "properties": { - "creationTimestamp": { - "type": "string", - "description": "[Output Only] Creation timestamp in RFC3339 text format." - }, - "description": { - "type": "string", - "description": "[Output Only] Description of this License Code." - }, - "id": { - "type": "string", - "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", - "format": "uint64" - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#licenseCode for licenses.", - "default": "compute#licenseCode" - }, - "licenseAlias": { - "type": "array", - "description": "[Output Only] URL and description aliases of Licenses with the same License Code.", - "items": { - "$ref": "LicenseCodeLicenseAlias" - } - }, - "name": { - "type": "string", - "description": "[Output Only] Name of the resource. The name is 1-20 characters long and must be a valid 64 bit integer.", - "pattern": "[0-9]{0,20}?", - "annotations": { - "required": [ - "compute.licenses.insert" - ] - } - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for the resource." - }, - "state": { - "type": "string", - "description": "[Output Only] Current state of this License Code.", - "enum": [ - "DISABLED", - "ENABLED", - "RESTRICTED", - "STATE_UNSPECIFIED", - "TERMINATED" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "" - ] - }, - "transferable": { - "type": "boolean", - "description": "[Output Only] If true, the license will remain attached when creating images or snapshots from disks. Otherwise, the license is not transferred." - } - } - }, - "LicenseCodeLicenseAlias": { - "id": "LicenseCodeLicenseAlias", - "type": "object", - "properties": { - "description": { - "type": "string", - "description": "[Output Only] Description of this License Code." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] URL of license corresponding to this License Code." - } - } - }, - "LicenseResourceRequirements": { - "id": "LicenseResourceRequirements", - "type": "object", - "properties": { - "minGuestCpuCount": { - "type": "integer", - "description": "Minimum number of guest cpus required to use the Instance. Enforced at Instance creation and Instance start.", - "format": "int32" - }, - "minMemoryMb": { - "type": "integer", - "description": "Minimum memory required to use the Instance. Enforced at Instance creation and Instance start.", - "format": "int32" - } - } - }, - "LicensesListResponse": { - "id": "LicensesListResponse", - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "array", - "description": "A list of License resources.", - "items": { - "$ref": "License" - } - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "LogConfig": { - "id": "LogConfig", - "type": "object", - "description": "Specifies what kind of log the caller must write", - "properties": { - "cloudAudit": { - "$ref": "LogConfigCloudAuditOptions", - "description": "Cloud audit options." - }, - "counter": { - "$ref": "LogConfigCounterOptions", - "description": "Counter options." - }, - "dataAccess": { - "$ref": "LogConfigDataAccessOptions", - "description": "Data access options." - } - } - }, - "LogConfigCloudAuditOptions": { - "id": "LogConfigCloudAuditOptions", - "type": "object", - "description": "Write a Cloud Audit log", - "properties": { - "authorizationLoggingOptions": { - "$ref": "AuthorizationLoggingOptions", - "description": "Information used by the Cloud Audit Logging pipeline." - }, - "logName": { - "type": "string", - "description": "The log_name to populate in the Cloud Audit Record.", - "enum": [ - "ADMIN_ACTIVITY", - "DATA_ACCESS", - "UNSPECIFIED_LOG_NAME" - ], - "enumDescriptions": [ - "", - "", - "" - ] - } - } - }, - "LogConfigCounterOptions": { - "id": "LogConfigCounterOptions", - "type": "object", - "description": "Increment a streamz counter with the specified metric and field names.\n\nMetric names should start with a '/', generally be lowercase-only, and end in \"_count\". Field names should not contain an initial slash. The actual exported metric names will have \"/iam/policy\" prepended.\n\nField names correspond to IAM request parameters and field values are their respective values.\n\nAt present the only supported field names are - \"iam_principal\", corresponding to IAMContext.principal; - \"\" (empty string), resulting in one aggretated counter with no field.\n\nExamples: counter { metric: \"/debug_access_count\" field: \"iam_principal\" } ==\u003e increment counter /iam/policy/backend_debug_access_count {iam_principal=[value of IAMContext.principal]}\n\nAt this time we do not support: * multiple field names (though this may be supported in the future) * decrementing the counter * incrementing it by anything other than 1", - "properties": { - "field": { - "type": "string", - "description": "The field value to attribute." - }, - "metric": { - "type": "string", - "description": "The metric to update." - } - } - }, - "LogConfigDataAccessOptions": { - "id": "LogConfigDataAccessOptions", - "type": "object", - "description": "Write a Data Access (Gin) log", - "properties": { - "logMode": { - "type": "string", - "description": "Whether Gin logging should happen in a fail-closed manner at the caller. This is relevant only in the LocalIAM implementation, for now.", - "enum": [ - "LOG_FAIL_CLOSED", - "LOG_MODE_UNSPECIFIED" - ], - "enumDescriptions": [ - "", - "" - ] - } - } - }, - "MachineType": { - "id": "MachineType", - "type": "object", - "description": "A Machine Type resource. (== resource_for v1.machineTypes ==) (== resource_for beta.machineTypes ==)", - "properties": { - "creationTimestamp": { - "type": "string", - "description": "[Output Only] Creation timestamp in RFC3339 text format." - }, - "deprecated": { - "$ref": "DeprecationStatus", - "description": "[Output Only] The deprecation status associated with this machine type." - }, - "description": { - "type": "string", - "description": "[Output Only] An optional textual description of the resource." - }, - "guestCpus": { - "type": "integer", - "description": "[Output Only] The number of virtual CPUs that are available to the instance.", - "format": "int32" - }, - "id": { - "type": "string", - "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", - "format": "uint64" - }, - "isSharedCpu": { - "type": "boolean", - "description": "[Output Only] Whether this machine type has a shared CPU. See Shared-core machine types for more information." - }, - "kind": { - "type": "string", - "description": "[Output Only] The type of the resource. Always compute#machineType for machine types.", - "default": "compute#machineType" - }, - "maximumPersistentDisks": { - "type": "integer", - "description": "[Output Only] Maximum persistent disks allowed.", - "format": "int32" - }, - "maximumPersistentDisksSizeGb": { - "type": "string", - "description": "[Output Only] Maximum total persistent disks size (GB) allowed.", - "format": "int64" - }, - "memoryMb": { - "type": "integer", - "description": "[Output Only] The amount of physical memory available to the instance, defined in MB.", - "format": "int32" - }, - "name": { - "type": "string", - "description": "[Output Only] Name of the resource.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for the resource." - }, - "zone": { - "type": "string", - "description": "[Output Only] The name of the zone where the machine type resides, such as us-central1-a." - } - } - }, - "MachineTypeAggregatedList": { - "id": "MachineTypeAggregatedList", - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "object", - "description": "A list of MachineTypesScopedList resources.", - "additionalProperties": { - "$ref": "MachineTypesScopedList", - "description": "[Output Only] Name of the scope containing this set of machine types." - } - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#machineTypeAggregatedList for aggregated lists of machine types.", - "default": "compute#machineTypeAggregatedList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "MachineTypeList": { - "id": "MachineTypeList", - "type": "object", - "description": "Contains a list of machine types.", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "array", - "description": "A list of MachineType resources.", - "items": { - "$ref": "MachineType" - } - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#machineTypeList for lists of machine types.", - "default": "compute#machineTypeList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "MachineTypesScopedList": { - "id": "MachineTypesScopedList", - "type": "object", - "properties": { "machineTypes": { - "type": "array", - "description": "[Output Only] List of machine types contained in this scope.", - "items": { - "$ref": "MachineType" - } - }, - "warning": { - "type": "object", - "description": "[Output Only] An informational warning that appears when the machine types list is empty.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } + "methods": { + "aggregatedList": { + "description": "Retrieves an aggregated list of machine types.", + "httpMethod": "GET", + "id": "compute.machineTypes.aggregatedList", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/aggregated/machineTypes", + "response": { + "$ref": "MachineTypeAggregatedList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "get": { + "description": "Returns the specified machine type. Get a list of available machine types by making a list() request.", + "httpMethod": "GET", + "id": "compute.machineTypes.get", + "parameterOrder": [ + "project", + "zone", + "machineType" + ], + "parameters": { + "machineType": { + "description": "Name of the machine type to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/machineTypes/{machineType}", + "response": { + "$ref": "MachineType" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "list": { + "description": "Retrieves a list of machine types available to the specified project.", + "httpMethod": "GET", + "id": "compute.machineTypes.list", + "parameterOrder": [ + "project", + "zone" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/machineTypes", + "response": { + "$ref": "MachineTypeList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." } - } - } - } - }, - "MaintenancePoliciesList": { - "id": "MaintenancePoliciesList", - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server." }, - "items": { - "type": "array", - "description": "[Output Only] A list of MaintenancePolicy resources.", - "items": { - "$ref": "MaintenancePolicy" - } - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource.Always compute#maintenancePoliciesList for listsof maintenancePolicies", - "default": "compute#maintenancePoliciesList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "MaintenancePoliciesScopedList": { - "id": "MaintenancePoliciesScopedList", - "type": "object", - "properties": { "maintenancePolicies": { - "type": "array", - "description": "List of maintenancePolicies contained in this scope.", - "items": { - "$ref": "MaintenancePolicy" - } - }, - "warning": { - "type": "object", - "description": "Informational warning which replaces the list of maintenancePolicies when the list is empty.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } + "methods": { + "aggregatedList": { + "description": "Retrieves an aggregated list of maintenance policies.", + "httpMethod": "GET", + "id": "compute.maintenancePolicies.aggregatedList", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/aggregated/maintenancePolicies", + "response": { + "$ref": "MaintenancePolicyAggregatedList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "delete": { + "description": "Deletes the specified maintenance policy.", + "httpMethod": "DELETE", + "id": "compute.maintenancePolicies.delete", + "parameterOrder": [ + "project", + "region", + "maintenancePolicy" + ], + "parameters": { + "maintenancePolicy": { + "description": "Name of the maintenance policy to delete.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/regions/{region}/maintenancePolicies/{maintenancePolicy}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Retrieves all information of the specified maintenance policy.", + "httpMethod": "GET", + "id": "compute.maintenancePolicies.get", + "parameterOrder": [ + "project", + "region", + "maintenancePolicy" + ], + "parameters": { + "maintenancePolicy": { + "description": "Name of the maintenance policy to retrieve.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/maintenancePolicies/{maintenancePolicy}", + "response": { + "$ref": "MaintenancePolicy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "getIamPolicy": { + "description": "Gets the access control policy for a resource. May be empty if no such policy or resource exists.", + "httpMethod": "GET", + "id": "compute.maintenancePolicies.getIamPolicy", + "parameterOrder": [ + "project", + "region", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "The name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/maintenancePolicies/{resource}/getIamPolicy", + "response": { + "$ref": "Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "description": "Creates a new maintenance policy.", + "httpMethod": "POST", + "id": "compute.maintenancePolicies.insert", + "parameterOrder": [ + "project", + "region" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/regions/{region}/maintenancePolicies", + "request": { + "$ref": "MaintenancePolicy" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "description": "List all the maintenance policies that have been configured for the specified project in specified region.", + "httpMethod": "GET", + "id": "compute.maintenancePolicies.list", + "parameterOrder": [ + "project", + "region" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/maintenancePolicies", + "response": { + "$ref": "MaintenancePoliciesList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "setIamPolicy": { + "description": "Sets the access control policy on the specified resource. Replaces any existing policy.", + "httpMethod": "POST", + "id": "compute.maintenancePolicies.setIamPolicy", + "parameterOrder": [ + "project", + "region", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "The name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/maintenancePolicies/{resource}/setIamPolicy", + "request": { + "$ref": "Policy" + }, + "response": { + "$ref": "Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource.", + "httpMethod": "POST", + "id": "compute.maintenancePolicies.testIamPermissions", + "parameterOrder": [ + "project", + "region", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "The name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/maintenancePolicies/{resource}/testIamPermissions", + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." } - } - } - } - }, - "MaintenancePolicy": { - "id": "MaintenancePolicy", - "type": "object", - "description": "A maintenance policy for an instance. This specifies what kind of maintenance operations our infrastructure may perform on this instance and when.", - "properties": { - "creationTimestamp": { - "type": "string", - "description": "[Output Only] Creation timestamp in RFC3339 text format." }, - "description": { - "type": "string" - }, - "id": { - "type": "string", - "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", - "format": "uint64" - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of the resource. Always compute#maintenance_policies for maintenance policies.", - "default": "compute#maintenancePolicy" - }, - "name": { - "type": "string", - "description": "The name of the resource, provided by the client when initially creating the resource. The resource name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "annotations": { - "required": [ - "compute.instances.insert" - ] - } - }, - "region": { - "type": "string" - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined fully-qualified URL for this resource." - }, - "vmMaintenancePolicy": { - "$ref": "VmMaintenancePolicy", - "description": "Maintenance policy applicable to VMs for infrastructure maintenance." - } - } - }, - "MaintenancePolicyAggregatedList": { - "id": "MaintenancePolicyAggregatedList", - "type": "object", - "description": "Contains a list of maintenancePolicies.", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "object", - "description": "A list of MaintenancePolicy resources.", - "additionalProperties": { - "$ref": "MaintenancePoliciesScopedList", - "description": "Name of the scope containing this set of maintenancePolicies." - } - }, - "kind": { - "type": "string", - "description": "Type of resource.", - "default": "compute#maintenancePolicyAggregatedList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } + "networkEndpointGroups": { + "methods": { + "aggregatedList": { + "description": "Retrieves the list of network endpoint groups and sorts them by zone.", + "httpMethod": "GET", + "id": "compute.networkEndpointGroups.aggregatedList", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/aggregated/networkEndpointGroups", + "response": { + "$ref": "NetworkEndpointGroupAggregatedList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "attachNetworkEndpoints": { + "description": "Attach a list of network endpoints to the specified network endpoint group.", + "httpMethod": "POST", + "id": "compute.networkEndpointGroups.attachNetworkEndpoints", + "parameterOrder": [ + "project", + "zone", + "networkEndpointGroup" + ], + "parameters": { + "networkEndpointGroup": { + "description": "The name of the network endpoint group where you are attaching network endpoints to. It should comply with RFC1035.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "The name of the zone where the network endpoint group is located. It should comply with RFC1035.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/networkEndpointGroups/{networkEndpointGroup}/attachNetworkEndpoints", + "request": { + "$ref": "NetworkEndpointGroupsAttachEndpointsRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "delete": { + "description": "Deletes the specified network endpoint group. The network endpoints in the NEG and the VM instances they belong to are not terminated when the NEG is deleted. Note that the NEG cannot be deleted if there are backend services referencing it.", + "httpMethod": "DELETE", + "id": "compute.networkEndpointGroups.delete", + "parameterOrder": [ + "project", + "zone", + "networkEndpointGroup" + ], + "parameters": { + "networkEndpointGroup": { + "description": "The name of the network endpoint group to delete. It should comply with RFC1035.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "The name of the zone where the network endpoint group is located. It should comply with RFC1035.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/networkEndpointGroups/{networkEndpointGroup}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "detachNetworkEndpoints": { + "description": "Detach a list of network endpoints from the specified network endpoint group.", + "httpMethod": "POST", + "id": "compute.networkEndpointGroups.detachNetworkEndpoints", + "parameterOrder": [ + "project", + "zone", + "networkEndpointGroup" + ], + "parameters": { + "networkEndpointGroup": { + "description": "The name of the network endpoint group where you are removing network endpoints. It should comply with RFC1035.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "The name of the zone where the network endpoint group is located. It should comply with RFC1035.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/networkEndpointGroups/{networkEndpointGroup}/detachNetworkEndpoints", + "request": { + "$ref": "NetworkEndpointGroupsDetachEndpointsRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Returns the specified network endpoint group. Get a list of available network endpoint groups by making a list() request.", + "httpMethod": "GET", + "id": "compute.networkEndpointGroups.get", + "parameterOrder": [ + "project", + "zone", + "networkEndpointGroup" + ], + "parameters": { + "networkEndpointGroup": { + "description": "The name of the network endpoint group. It should comply with RFC1035.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "zone": { + "description": "The name of the zone where the network endpoint group is located. It should comply with RFC1035.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/networkEndpointGroups/{networkEndpointGroup}", + "response": { + "$ref": "NetworkEndpointGroup" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "description": "Creates a network endpoint group in the specified project using the parameters that are included in the request.", + "httpMethod": "POST", + "id": "compute.networkEndpointGroups.insert", + "parameterOrder": [ + "project", + "zone" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "The name of the zone where you want to create the network endpoint group. It should comply with RFC1035.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/networkEndpointGroups", + "request": { + "$ref": "NetworkEndpointGroup" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "description": "Retrieves the list of network endpoint groups that are located in the specified project and zone.", + "httpMethod": "GET", + "id": "compute.networkEndpointGroups.list", + "parameterOrder": [ + "project", + "zone" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "zone": { + "description": "The name of the zone where the network endpoint group is located. It should comply with RFC1035.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/networkEndpointGroups", + "response": { + "$ref": "NetworkEndpointGroupList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "listNetworkEndpoints": { + "description": "List the network endpoints in the specified network endpoint group.", + "httpMethod": "POST", + "id": "compute.networkEndpointGroups.listNetworkEndpoints", + "parameterOrder": [ + "project", + "zone", + "networkEndpointGroup" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "networkEndpointGroup": { + "description": "The name of the network endpoint group from which you want to generate a list of included network endpoints. It should comply with RFC1035.", + "location": "path", + "required": true, + "type": "string" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "zone": { + "description": "The name of the zone where the network endpoint group is located. It should comply with RFC1035.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/networkEndpointGroups/{networkEndpointGroup}/listNetworkEndpoints", + "request": { + "$ref": "NetworkEndpointGroupsListEndpointsRequest" + }, + "response": { + "$ref": "NetworkEndpointGroupsListNetworkEndpoints" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource.", + "httpMethod": "POST", + "id": "compute.networkEndpointGroups.testIamPermissions", + "parameterOrder": [ + "project", + "zone", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/networkEndpointGroups/{resource}/testIamPermissions", + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." } - } - } - } - }, - "MaintenanceWindow": { - "id": "MaintenanceWindow", - "type": "object", - "description": "A maintenance window for VMs and disks. When set, we restrict our maintenance operations to this window.", - "properties": { - "dailyMaintenanceWindow": { - "$ref": "DailyMaintenanceWindow" }, - "hourlyMaintenanceWindow": { - "$ref": "HourlyMaintenanceWindow" - } - } - }, - "ManagedInstance": { - "id": "ManagedInstance", - "type": "object", - "properties": { - "currentAction": { - "type": "string", - "description": "[Output Only] The current action that the managed instance group has scheduled for the instance. Possible values: \n- NONE The instance is running, and the managed instance group does not have any scheduled actions for this instance. \n- CREATING The managed instance group is creating this instance. If the group fails to create this instance, it will try again until it is successful. \n- CREATING_WITHOUT_RETRIES The managed instance group is attempting to create this instance only once. If the group fails to create this instance, it does not try again and the group's targetSize value is decreased instead. \n- RECREATING The managed instance group is recreating this instance. \n- DELETING The managed instance group is permanently deleting this instance. \n- ABANDONING The managed instance group is abandoning this instance. The instance will be removed from the instance group and from any target pools that are associated with this group. \n- RESTARTING The managed instance group is restarting the instance. \n- REFRESHING The managed instance group is applying configuration changes to the instance without stopping it. For example, the group can update the target pool list for an instance without stopping that instance.", - "enum": [ - "ABANDONING", - "CREATING", - "CREATING_WITHOUT_RETRIES", - "DELETING", - "NONE", - "RECREATING", - "REFRESHING", - "RESTARTING", - "VERIFYING" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "id": { - "type": "string", - "description": "[Output only] The unique identifier for this resource. This field is empty when instance does not exist.", - "format": "uint64" - }, - "instance": { - "type": "string", - "description": "[Output Only] The URL of the instance. The URL can exist even if the instance has not yet been created." - }, - "instanceStatus": { - "type": "string", - "description": "[Output Only] The status of the instance. This field is empty when the instance does not exist.", - "enum": [ - "PROVISIONING", - "RUNNING", - "STAGING", - "STOPPED", - "STOPPING", - "SUSPENDED", - "SUSPENDING", - "TERMINATED" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "instanceTemplate": { - "type": "string", - "description": "[Output Only] The intended template of the instance. This field is empty when current_action is one of { DELETING, ABANDONING }." - }, - "lastAttempt": { - "$ref": "ManagedInstanceLastAttempt", - "description": "[Output Only] Information about the last attempt to create or delete the instance." - }, - "override": { - "$ref": "ManagedInstanceOverride", - "description": "[Output Only] Override defined for this instance." - }, - "standbyMode": { - "type": "string", - "description": "[Output Only] Standby mode of the instance. This field is non-empty iff the instance is a standby.", - "enum": [ - "DRAINED" - ], - "enumDescriptions": [ - "" - ] - }, - "tag": { - "type": "string", - "description": "[Output Only] Tag describing the version." - }, - "version": { - "$ref": "ManagedInstanceVersion", - "description": "[Output Only] Intended version of this instance." - } - } - }, - "ManagedInstanceLastAttempt": { - "id": "ManagedInstanceLastAttempt", - "type": "object", - "properties": { - "errors": { - "type": "object", - "description": "[Output Only] Encountered errors during the last attempt to create or delete the instance.", - "properties": { - "errors": { - "type": "array", - "description": "[Output Only] The array of errors encountered while processing this operation.", - "items": { - "type": "object", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] The error type identifier for this error." - }, - "location": { - "type": "string", - "description": "[Output Only] Indicates the field in the request that caused the error. This property is optional." - }, - "message": { - "type": "string", - "description": "[Output Only] An optional, human-readable error message." - } + "networks": { + "methods": { + "addPeering": { + "description": "Adds a peering to the specified network.", + "httpMethod": "POST", + "id": "compute.networks.addPeering", + "parameterOrder": [ + "project", + "network" + ], + "parameters": { + "network": { + "description": "Name of the network resource to add peering to.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/networks/{network}/addPeering", + "request": { + "$ref": "NetworksAddPeeringRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "delete": { + "description": "Deletes the specified network.", + "httpMethod": "DELETE", + "id": "compute.networks.delete", + "parameterOrder": [ + "project", + "network" + ], + "parameters": { + "network": { + "description": "Name of the network to delete.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/networks/{network}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Returns the specified network. Get a list of available networks by making a list() request.", + "httpMethod": "GET", + "id": "compute.networks.get", + "parameterOrder": [ + "project", + "network" + ], + "parameters": { + "network": { + "description": "Name of the network to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/networks/{network}", + "response": { + "$ref": "Network" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "description": "Creates a network in the specified project using the data included in the request.", + "httpMethod": "POST", + "id": "compute.networks.insert", + "parameterOrder": [ + "project" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/networks", + "request": { + "$ref": "Network" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "description": "Retrieves the list of networks available to the specified project.", + "httpMethod": "GET", + "id": "compute.networks.list", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/networks", + "response": { + "$ref": "NetworkList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "listIpOwners": { + "description": "List the internal IP owners in the specified network.", + "httpMethod": "GET", + "id": "compute.networks.listIpOwners", + "parameterOrder": [ + "project", + "network" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "ipCidrRange": { + "description": "(Optional) IP CIDR range filter, example: \"10.128.10.0/30\".", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "network": { + "description": "Name of the network to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "ownerProjects": { + "description": "(Optional) Project IDs filter, example: \"project-1,project-2\".", + "location": "query", + "type": "string" + }, + "ownerTypes": { + "description": "(Optional) Owner types filter, example: \"instance,forwardingRule\".", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "subnetName": { + "description": "(Optional) Subnetwork name filter.", + "location": "query", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "subnetRegion": { + "description": "(Optional) Subnetwork region filter.", + "location": "query", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + } + }, + "path": "{project}/global/networks/{network}/listIpOwners", + "response": { + "$ref": "IpOwnerList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "patch": { + "description": "Patches the specified network with the data included in the request. Only the following fields can be modified: routingConfig.routingMode.", + "httpMethod": "PATCH", + "id": "compute.networks.patch", + "parameterOrder": [ + "project", + "network" + ], + "parameters": { + "network": { + "description": "Name of the network to update.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/networks/{network}", + "request": { + "$ref": "Network" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "removePeering": { + "description": "Removes a peering from the specified network.", + "httpMethod": "POST", + "id": "compute.networks.removePeering", + "parameterOrder": [ + "project", + "network" + ], + "parameters": { + "network": { + "description": "Name of the network resource to remove peering from.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/networks/{network}/removePeering", + "request": { + "$ref": "NetworksRemovePeeringRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "switchToCustomMode": { + "description": "Switches the network mode from auto subnet mode to custom subnet mode.", + "httpMethod": "POST", + "id": "compute.networks.switchToCustomMode", + "parameterOrder": [ + "project", + "network" + ], + "parameters": { + "network": { + "description": "Name of the network to be updated.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/networks/{network}/switchToCustomMode", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource.", + "httpMethod": "POST", + "id": "compute.networks.testIamPermissions", + "parameterOrder": [ + "project", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "(?:[-a-z0-9_]{0,62}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/networks/{resource}/testIamPermissions", + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] } - } } - } - } - } - }, - "ManagedInstanceOverride": { - "id": "ManagedInstanceOverride", - "type": "object", - "description": "Overrides of stateful properties for a given instance", - "properties": { - "disks": { - "type": "array", - "description": "Disk overrides defined for this instance. According to documentation the maximum number of disks attached to an instance is 128: https://cloud.google.com/compute/docs/disks/ However, compute API defines the limit at 140, so this is what we check.", - "items": { - "$ref": "ManagedInstanceOverrideDiskOverride" - } }, - "metadata": { - "type": "array", - "description": "Metadata overrides defined for this instance. TODO(b/69785416) validate the total length is \u003c9 KB", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "Key for the metadata entry. Keys must conform to the following regexp: [a-zA-Z0-9-_]+, and be less than 128 bytes in length. This is reflected as part of a URL in the metadata server. Additionally, to avoid ambiguity, keys must not conflict with any other metadata keys for the project.", - "pattern": "[a-zA-Z0-9-_]{1,128}", - "annotations": { - "required": [ - "compute.instances.insert", - "compute.projects.setCommonInstanceMetadata" - ] + "nodeGroups": { + "methods": { + "getIamPolicy": { + "description": "Gets the access control policy for a resource. May be empty if no such policy or resource exists.", + "httpMethod": "GET", + "id": "compute.nodeGroups.getIamPolicy", + "parameterOrder": [ + "project", + "zone", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/nodeGroups/{resource}/getIamPolicy", + "response": { + "$ref": "Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "setIamPolicy": { + "description": "Sets the access control policy on the specified resource. Replaces any existing policy.", + "httpMethod": "POST", + "id": "compute.nodeGroups.setIamPolicy", + "parameterOrder": [ + "project", + "zone", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/nodeGroups/{resource}/setIamPolicy", + "request": { + "$ref": "Policy" + }, + "response": { + "$ref": "Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource.", + "httpMethod": "POST", + "id": "compute.nodeGroups.testIamPermissions", + "parameterOrder": [ + "project", + "zone", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/nodeGroups/{resource}/testIamPermissions", + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] } - }, - "value": { - "type": "string", - "description": "Value for the metadata entry. These are free-form strings, and only have meaning as interpreted by the image running in the instance. The only restriction placed on values is that their size must be less than or equal to 262144 bytes (256 KiB).", - "annotations": { - "required": [ - "compute.instances.insert", - "compute.projects.setCommonInstanceMetadata" - ] - } - } } - } }, - "origin": { - "type": "string", - "description": "[Output Only] Indicates where does the override come from.", - "enum": [ - "AUTO_GENERATED", - "USER_PROVIDED" - ], - "enumDescriptions": [ - "", - "" - ] - } - } - }, - "ManagedInstanceOverrideDiskOverride": { - "id": "ManagedInstanceOverrideDiskOverride", - "type": "object", - "properties": { - "deviceName": { - "type": "string", - "description": "The name of the device on the VM" - }, - "mode": { - "type": "string", - "description": "The mode in which to attach this disk, either READ_WRITE or READ_ONLY. If not specified, the default is to attach the disk in READ_WRITE mode.", - "enum": [ - "READ_ONLY", - "READ_WRITE" - ], - "enumDescriptions": [ - "", - "" - ] - }, - "source": { - "type": "string", - "description": "The disk that is/will be mounted" - } - } - }, - "ManagedInstanceVersion": { - "id": "ManagedInstanceVersion", - "type": "object", - "properties": { - "instanceTemplate": { - "type": "string", - "description": "[Output Only] The intended template of the instance. This field is empty when current_action is one of { DELETING, ABANDONING }." - }, - "name": { - "type": "string", - "description": "[Output Only] Name of the version." - } - } - }, - "Metadata": { - "id": "Metadata", - "type": "object", - "description": "A metadata key/value entry.", - "properties": { - "fingerprint": { - "type": "string", - "description": "Specifies a fingerprint for this request, which is essentially a hash of the metadata's contents and used for optimistic locking. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update metadata. You must always provide an up-to-date fingerprint hash in order to update or change metadata.", - "format": "byte" - }, - "items": { - "type": "array", - "description": "Array of key/value pairs. The total size of all keys and values must be less than 512 KB.", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "Key for the metadata entry. Keys must conform to the following regexp: [a-zA-Z0-9-_]+, and be less than 128 bytes in length. This is reflected as part of a URL in the metadata server. Additionally, to avoid ambiguity, keys must not conflict with any other metadata keys for the project.", - "pattern": "[a-zA-Z0-9-_]{1,128}", - "annotations": { - "required": [ - "compute.instances.insert", - "compute.projects.setCommonInstanceMetadata" - ] + "nodeTemplates": { + "methods": { + "getIamPolicy": { + "description": "Gets the access control policy for a resource. May be empty if no such policy or resource exists.", + "httpMethod": "GET", + "id": "compute.nodeTemplates.getIamPolicy", + "parameterOrder": [ + "project", + "region", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "The name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/nodeTemplates/{resource}/getIamPolicy", + "response": { + "$ref": "Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "setIamPolicy": { + "description": "Sets the access control policy on the specified resource. Replaces any existing policy.", + "httpMethod": "POST", + "id": "compute.nodeTemplates.setIamPolicy", + "parameterOrder": [ + "project", + "region", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "The name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/nodeTemplates/{resource}/setIamPolicy", + "request": { + "$ref": "Policy" + }, + "response": { + "$ref": "Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource.", + "httpMethod": "POST", + "id": "compute.nodeTemplates.testIamPermissions", + "parameterOrder": [ + "project", + "region", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "The name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/nodeTemplates/{resource}/testIamPermissions", + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] } - }, - "value": { - "type": "string", - "description": "Value for the metadata entry. These are free-form strings, and only have meaning as interpreted by the image running in the instance. The only restriction placed on values is that their size must be less than or equal to 262144 bytes (256 KiB).", - "annotations": { - "required": [ - "compute.instances.insert", - "compute.projects.setCommonInstanceMetadata" - ] - } - } } - } }, - "kind": { - "type": "string", - "description": "[Output Only] Type of the resource. Always compute#metadata for metadata.", - "default": "compute#metadata" - } - } - }, - "NamedPort": { - "id": "NamedPort", - "type": "object", - "description": "The named port. For example: .", - "properties": { - "name": { - "type": "string", - "description": "The name for this named port. The name must be 1-63 characters long, and comply with RFC1035." + "projects": { + "methods": { + "disableXpnHost": { + "description": "Disable this project as a shared VPC host project.", + "httpMethod": "POST", + "id": "compute.projects.disableXpnHost", + "parameterOrder": [ + "project" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/disableXpnHost", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "disableXpnResource": { + "description": "Disable a serivce resource (a.k.a service project) associated with this host project.", + "httpMethod": "POST", + "id": "compute.projects.disableXpnResource", + "parameterOrder": [ + "project" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/disableXpnResource", + "request": { + "$ref": "ProjectsDisableXpnResourceRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "enableXpnHost": { + "description": "Enable this project as a shared VPC host project.", + "httpMethod": "POST", + "id": "compute.projects.enableXpnHost", + "parameterOrder": [ + "project" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/enableXpnHost", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "enableXpnResource": { + "description": "Enable service resource (a.k.a service project) for a host project, so that subnets in the host project can be used by instances in the service project.", + "httpMethod": "POST", + "id": "compute.projects.enableXpnResource", + "parameterOrder": [ + "project" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/enableXpnResource", + "request": { + "$ref": "ProjectsEnableXpnResourceRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Returns the specified Project resource.", + "httpMethod": "GET", + "id": "compute.projects.get", + "parameterOrder": [ + "project" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}", + "response": { + "$ref": "Project" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "getXpnHost": { + "description": "Get the shared VPC host project that this project links to. May be empty if no link exists.", + "httpMethod": "GET", + "id": "compute.projects.getXpnHost", + "parameterOrder": [ + "project" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/getXpnHost", + "response": { + "$ref": "Project" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "getXpnResources": { + "description": "Get service resources (a.k.a service project) associated with this host project.", + "httpMethod": "GET", + "id": "compute.projects.getXpnResources", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "order_by": { + "location": "query", + "type": "string" + }, + "pageToken": { + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/getXpnResources", + "response": { + "$ref": "ProjectsGetXpnResources" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "listXpnHosts": { + "description": "List all shared VPC host projects visible to the user in an organization.", + "httpMethod": "POST", + "id": "compute.projects.listXpnHosts", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "order_by": { + "location": "query", + "type": "string" + }, + "pageToken": { + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/listXpnHosts", + "request": { + "$ref": "ProjectsListXpnHostsRequest" + }, + "response": { + "$ref": "XpnHostList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "moveDisk": { + "description": "Moves a persistent disk from one zone to another.", + "httpMethod": "POST", + "id": "compute.projects.moveDisk", + "parameterOrder": [ + "project" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/moveDisk", + "request": { + "$ref": "DiskMoveRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "moveInstance": { + "description": "Moves an instance and its attached persistent disks from one zone to another.", + "httpMethod": "POST", + "id": "compute.projects.moveInstance", + "parameterOrder": [ + "project" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/moveInstance", + "request": { + "$ref": "InstanceMoveRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setCommonInstanceMetadata": { + "description": "Sets metadata common to all instances within the specified project using the data included in the request.", + "httpMethod": "POST", + "id": "compute.projects.setCommonInstanceMetadata", + "parameterOrder": [ + "project" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/setCommonInstanceMetadata", + "request": { + "$ref": "Metadata" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setDefaultNetworkTier": { + "description": "Sets the default network tier of the project. The default network tier is used when an address/forwardingRule/instance is created without specifying the network tier field.", + "httpMethod": "POST", + "id": "compute.projects.setDefaultNetworkTier", + "parameterOrder": [ + "project" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/setDefaultNetworkTier", + "request": { + "$ref": "ProjectsSetDefaultNetworkTierRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setDefaultServiceAccount": { + "description": "Sets the default service account of the project. The default service account is used when a VM instance is created with the service account email address set to \"default\".", + "httpMethod": "POST", + "id": "compute.projects.setDefaultServiceAccount", + "parameterOrder": [ + "project" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/setDefaultServiceAccount", + "request": { + "$ref": "ProjectsSetDefaultServiceAccountRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setUsageExportBucket": { + "description": "Enables the usage export feature and sets the usage export bucket where reports are stored. If you provide an empty request body using this method, the usage export feature will be disabled.", + "httpMethod": "POST", + "id": "compute.projects.setUsageExportBucket", + "parameterOrder": [ + "project" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/setUsageExportBucket", + "request": { + "$ref": "UsageExportLocation" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/devstorage.full_control", + "https://www.googleapis.com/auth/devstorage.read_only", + "https://www.googleapis.com/auth/devstorage.read_write" + ] + } + } }, - "port": { - "type": "integer", - "description": "The port number, which can be a value between 1 and 65535.", - "format": "int32" - } - } - }, - "Network": { - "id": "Network", - "type": "object", - "description": "Represents a Network resource. Read Networks and Firewalls for more information. (== resource_for v1.networks ==) (== resource_for beta.networks ==)", - "properties": { - "IPv4Range": { - "type": "string", - "description": "The range of internal addresses that are legal on this network. This range is a CIDR specification, for example: 192.168.0.0/16. Provided by the client when the network is created.", - "pattern": "[0-9]{1,3}(?:\\.[0-9]{1,3}){3}/[0-9]{1,2}" + "regionAutoscalers": { + "methods": { + "delete": { + "description": "Deletes the specified autoscaler.", + "httpMethod": "DELETE", + "id": "compute.regionAutoscalers.delete", + "parameterOrder": [ + "project", + "region", + "autoscaler" + ], + "parameters": { + "autoscaler": { + "description": "Name of the autoscaler to delete.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/regions/{region}/autoscalers/{autoscaler}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Returns the specified autoscaler.", + "httpMethod": "GET", + "id": "compute.regionAutoscalers.get", + "parameterOrder": [ + "project", + "region", + "autoscaler" + ], + "parameters": { + "autoscaler": { + "description": "Name of the autoscaler to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/autoscalers/{autoscaler}", + "response": { + "$ref": "Autoscaler" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "description": "Creates an autoscaler in the specified project using the data included in the request.", + "httpMethod": "POST", + "id": "compute.regionAutoscalers.insert", + "parameterOrder": [ + "project", + "region" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/regions/{region}/autoscalers", + "request": { + "$ref": "Autoscaler" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "description": "Retrieves a list of autoscalers contained within the specified region.", + "httpMethod": "GET", + "id": "compute.regionAutoscalers.list", + "parameterOrder": [ + "project", + "region" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/autoscalers", + "response": { + "$ref": "RegionAutoscalerList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "patch": { + "description": "Updates an autoscaler in the specified project using the data included in the request. This method supports PATCH semantics and uses the JSON merge patch format and processing rules.", + "httpMethod": "PATCH", + "id": "compute.regionAutoscalers.patch", + "parameterOrder": [ + "project", + "region" + ], + "parameters": { + "autoscaler": { + "description": "Name of the autoscaler to patch.", + "location": "query", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/regions/{region}/autoscalers", + "request": { + "$ref": "Autoscaler" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource.", + "httpMethod": "POST", + "id": "compute.regionAutoscalers.testIamPermissions", + "parameterOrder": [ + "project", + "region", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "The name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/autoscalers/{resource}/testIamPermissions", + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "update": { + "description": "Updates an autoscaler in the specified project using the data included in the request.", + "httpMethod": "PUT", + "id": "compute.regionAutoscalers.update", + "parameterOrder": [ + "project", + "region" + ], + "parameters": { + "autoscaler": { + "description": "Name of the autoscaler to update.", + "location": "query", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/regions/{region}/autoscalers", + "request": { + "$ref": "Autoscaler" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + } + } }, - "autoCreateSubnetworks": { - "type": "boolean", - "description": "When set to true, the network is created in \"auto subnet mode\". When set to false, the network is in \"custom subnet mode\".\n\nIn \"auto subnet mode\", a newly created network is assigned the default CIDR of 10.128.0.0/9 and it automatically creates one subnetwork per region." + "regionBackendServices": { + "methods": { + "delete": { + "description": "Deletes the specified regional BackendService resource.", + "httpMethod": "DELETE", + "id": "compute.regionBackendServices.delete", + "parameterOrder": [ + "project", + "region", + "backendService" + ], + "parameters": { + "backendService": { + "description": "Name of the BackendService resource to delete.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/regions/{region}/backendServices/{backendService}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Returns the specified regional BackendService resource.", + "httpMethod": "GET", + "id": "compute.regionBackendServices.get", + "parameterOrder": [ + "project", + "region", + "backendService" + ], + "parameters": { + "backendService": { + "description": "Name of the BackendService resource to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/backendServices/{backendService}", + "response": { + "$ref": "BackendService" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "getHealth": { + "description": "Gets the most recent health check results for this regional BackendService.", + "httpMethod": "POST", + "id": "compute.regionBackendServices.getHealth", + "parameterOrder": [ + "project", + "region", + "backendService" + ], + "parameters": { + "backendService": { + "description": "Name of the BackendService resource for which to get health.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/backendServices/{backendService}/getHealth", + "request": { + "$ref": "ResourceGroupReference" + }, + "response": { + "$ref": "BackendServiceGroupHealth" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "description": "Creates a regional BackendService resource in the specified project using the data included in the request. There are several restrictions and guidelines to keep in mind when creating a regional backend service. Read Restrictions and Guidelines for more information.", + "httpMethod": "POST", + "id": "compute.regionBackendServices.insert", + "parameterOrder": [ + "project", + "region" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/regions/{region}/backendServices", + "request": { + "$ref": "BackendService" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "description": "Retrieves the list of regional BackendService resources available to the specified project in the given region.", + "httpMethod": "GET", + "id": "compute.regionBackendServices.list", + "parameterOrder": [ + "project", + "region" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/backendServices", + "response": { + "$ref": "BackendServiceList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "patch": { + "description": "Updates the specified regional BackendService resource with the data included in the request. There are several restrictions and guidelines to keep in mind when updating a backend service. Read Restrictions and Guidelines for more information. This method supports PATCH semantics and uses the JSON merge patch format and processing rules.", + "httpMethod": "PATCH", + "id": "compute.regionBackendServices.patch", + "parameterOrder": [ + "project", + "region", + "backendService" + ], + "parameters": { + "backendService": { + "description": "Name of the BackendService resource to patch.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/regions/{region}/backendServices/{backendService}", + "request": { + "$ref": "BackendService" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource.", + "httpMethod": "POST", + "id": "compute.regionBackendServices.testIamPermissions", + "parameterOrder": [ + "project", + "region", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "The name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/backendServices/{resource}/testIamPermissions", + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "update": { + "description": "Updates the specified regional BackendService resource with the data included in the request. There are several restrictions and guidelines to keep in mind when updating a backend service. Read Restrictions and Guidelines for more information.", + "httpMethod": "PUT", + "id": "compute.regionBackendServices.update", + "parameterOrder": [ + "project", + "region", + "backendService" + ], + "parameters": { + "backendService": { + "description": "Name of the BackendService resource to update.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/regions/{region}/backendServices/{backendService}", + "request": { + "$ref": "BackendService" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + } + } }, - "creationTimestamp": { - "type": "string", - "description": "[Output Only] Creation timestamp in RFC3339 text format." + "regionCommitments": { + "methods": { + "aggregatedList": { + "description": "Retrieves an aggregated list of commitments.", + "httpMethod": "GET", + "id": "compute.regionCommitments.aggregatedList", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/aggregated/commitments", + "response": { + "$ref": "CommitmentAggregatedList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "get": { + "description": "Returns the specified commitment resource. Get a list of available commitments by making a list() request.", + "httpMethod": "GET", + "id": "compute.regionCommitments.get", + "parameterOrder": [ + "project", + "region", + "commitment" + ], + "parameters": { + "commitment": { + "description": "Name of the commitment to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/commitments/{commitment}", + "response": { + "$ref": "Commitment" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "description": "Creates a commitment in the specified project using the data included in the request.", + "httpMethod": "POST", + "id": "compute.regionCommitments.insert", + "parameterOrder": [ + "project", + "region" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/regions/{region}/commitments", + "request": { + "$ref": "Commitment" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "description": "Retrieves a list of commitments contained within the specified region.", + "httpMethod": "GET", + "id": "compute.regionCommitments.list", + "parameterOrder": [ + "project", + "region" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/commitments", + "response": { + "$ref": "CommitmentList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource.", + "httpMethod": "POST", + "id": "compute.regionCommitments.testIamPermissions", + "parameterOrder": [ + "project", + "region", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "The name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/commitments/{resource}/testIamPermissions", + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + } + } }, - "crossVmEncryption": { - "type": "string", - "description": "[Output Only] Type of VM-to-VM traffic encryption for this network.", - "enum": [ - "ENCRYPTED", - "UNENCRYPTED" - ], - "enumDescriptions": [ - "", - "" - ] + "regionDiskTypes": { + "methods": { + "get": { + "description": "Returns the specified regional disk type. Get a list of available disk types by making a list() request.", + "httpMethod": "GET", + "id": "compute.regionDiskTypes.get", + "parameterOrder": [ + "project", + "region", + "diskType" + ], + "parameters": { + "diskType": { + "description": "Name of the disk type to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "The name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/diskTypes/{diskType}", + "response": { + "$ref": "DiskType" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "list": { + "description": "Retrieves a list of regional disk types available to the specified project.", + "httpMethod": "GET", + "id": "compute.regionDiskTypes.list", + "parameterOrder": [ + "project", + "region" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "The name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/diskTypes", + "response": { + "$ref": "RegionDiskTypeList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + } + } }, - "description": { - "type": "string", - "description": "An optional description of this resource. Provide this property when you create the resource." + "regionDisks": { + "methods": { + "createSnapshot": { + "description": "Creates a snapshot of this regional disk.", + "httpMethod": "POST", + "id": "compute.regionDisks.createSnapshot", + "parameterOrder": [ + "project", + "region", + "disk" + ], + "parameters": { + "disk": { + "description": "Name of the regional persistent disk to snapshot.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "guestFlush": { + "location": "query", + "type": "boolean" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/regions/{region}/disks/{disk}/createSnapshot", + "request": { + "$ref": "Snapshot" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "delete": { + "description": "Deletes the specified regional persistent disk. Deleting a regional disk removes all the replicas of its data permanently and is irreversible. However, deleting a disk does not delete any snapshots previously made from the disk. You must separately delete snapshots.", + "httpMethod": "DELETE", + "id": "compute.regionDisks.delete", + "parameterOrder": [ + "project", + "region", + "disk" + ], + "parameters": { + "disk": { + "description": "Name of the regional persistent disk to delete.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/regions/{region}/disks/{disk}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Returns a specified regional persistent disk.", + "httpMethod": "GET", + "id": "compute.regionDisks.get", + "parameterOrder": [ + "project", + "region", + "disk" + ], + "parameters": { + "disk": { + "description": "Name of the regional persistent disk to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/disks/{disk}", + "response": { + "$ref": "Disk" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "description": "Creates a persistent regional disk in the specified project using the data included in the request.", + "httpMethod": "POST", + "id": "compute.regionDisks.insert", + "parameterOrder": [ + "project", + "region" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "sourceImage": { + "description": "Optional. Source image to restore onto a disk.", + "location": "query", + "type": "string" + } + }, + "path": "{project}/regions/{region}/disks", + "request": { + "$ref": "Disk" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "description": "Retrieves the list of persistent disks contained within the specified region.", + "httpMethod": "GET", + "id": "compute.regionDisks.list", + "parameterOrder": [ + "project", + "region" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/disks", + "response": { + "$ref": "DiskList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "resize": { + "description": "Resizes the specified regional persistent disk.", + "httpMethod": "POST", + "id": "compute.regionDisks.resize", + "parameterOrder": [ + "project", + "region", + "disk" + ], + "parameters": { + "disk": { + "description": "Name of the regional persistent disk.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "The project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/regions/{region}/disks/{disk}/resize", + "request": { + "$ref": "RegionDisksResizeRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setLabels": { + "description": "Sets the labels on the target regional disk.", + "httpMethod": "POST", + "id": "compute.regionDisks.setLabels", + "parameterOrder": [ + "project", + "region", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "The region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/disks/{resource}/setLabels", + "request": { + "$ref": "RegionSetLabelsRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource.", + "httpMethod": "POST", + "id": "compute.regionDisks.testIamPermissions", + "parameterOrder": [ + "project", + "region", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "The name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/disks/{resource}/testIamPermissions", + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + } + } }, - "gatewayIPv4": { - "type": "string", - "description": "A gateway address for default routing to other networks. This value is read only and is selected by the Google Compute Engine, typically as the first usable address in the IPv4Range.", - "pattern": "[0-9]{1,3}(?:\\.[0-9]{1,3}){3}" + "regionHealthChecks": { + "methods": { + "delete": { + "description": "Deletes the specified HealthCheck resource.", + "httpMethod": "DELETE", + "id": "compute.regionHealthChecks.delete", + "parameterOrder": [ + "project", + "region", + "healthCheck" + ], + "parameters": { + "healthCheck": { + "description": "Name of the HealthCheck resource to delete.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/regions/{region}/healthChecks/{healthCheck}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Returns the specified HealthCheck resource. Get a list of available health checks by making a list() request.", + "httpMethod": "GET", + "id": "compute.regionHealthChecks.get", + "parameterOrder": [ + "project", + "region", + "healthCheck" + ], + "parameters": { + "healthCheck": { + "description": "Name of the HealthCheck resource to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/healthChecks/{healthCheck}", + "response": { + "$ref": "HealthCheck" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "description": "Creates a HealthCheck resource in the specified project using the data included in the request.", + "httpMethod": "POST", + "id": "compute.regionHealthChecks.insert", + "parameterOrder": [ + "project", + "region" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/regions/{region}/healthChecks", + "request": { + "$ref": "HealthCheck" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "description": "Retrieves the list of HealthCheck resources available to the specified project.", + "httpMethod": "GET", + "id": "compute.regionHealthChecks.list", + "parameterOrder": [ + "project", + "region" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/healthChecks", + "response": { + "$ref": "HealthCheckList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "patch": { + "description": "Updates a HealthCheck resource in the specified project using the data included in the request. This method supports PATCH semantics and uses the JSON merge patch format and processing rules.", + "httpMethod": "PATCH", + "id": "compute.regionHealthChecks.patch", + "parameterOrder": [ + "project", + "region", + "healthCheck" + ], + "parameters": { + "healthCheck": { + "description": "Name of the HealthCheck resource to patch.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/regions/{region}/healthChecks/{healthCheck}", + "request": { + "$ref": "HealthCheck" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource.", + "httpMethod": "POST", + "id": "compute.regionHealthChecks.testIamPermissions", + "parameterOrder": [ + "project", + "region", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "The name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/healthChecks/{resource}/testIamPermissions", + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "update": { + "description": "Updates a HealthCheck resource in the specified project using the data included in the request.", + "httpMethod": "PUT", + "id": "compute.regionHealthChecks.update", + "parameterOrder": [ + "project", + "region", + "healthCheck" + ], + "parameters": { + "healthCheck": { + "description": "Name of the HealthCheck resource to update.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/regions/{region}/healthChecks/{healthCheck}", + "request": { + "$ref": "HealthCheck" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + } + } }, - "id": { - "type": "string", - "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", - "format": "uint64" + "regionInstanceGroupManagers": { + "methods": { + "abandonInstances": { + "description": "Schedules a group action to remove the specified instances from the managed instance group. Abandoning an instance does not delete the instance, but it does remove the instance from any target pools that are applied by the managed instance group. This method reduces the targetSize of the managed instance group by the number of instances that you abandon. This operation is marked as DONE when the action is scheduled even if the instances have not yet been removed from the group. You must separately verify the status of the abandoning action with the listmanagedinstances method.\n\nIf the group is part of a backend service that has enabled connection draining, it can take up to 60 seconds after the connection draining duration has elapsed before the VM instance is removed or deleted.\n\nYou can specify a maximum of 1000 instances with this method per request.", + "httpMethod": "POST", + "id": "compute.regionInstanceGroupManagers.abandonInstances", + "parameterOrder": [ + "project", + "region", + "instanceGroupManager" + ], + "parameters": { + "instanceGroupManager": { + "description": "Name of the managed instance group.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/abandonInstances", + "request": { + "$ref": "RegionInstanceGroupManagersAbandonInstancesRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "applyUpdatesToInstances": { + "description": "Apply updates to selected instances the managed instance group.", + "httpMethod": "POST", + "id": "compute.regionInstanceGroupManagers.applyUpdatesToInstances", + "parameterOrder": [ + "project", + "region", + "instanceGroupManager" + ], + "parameters": { + "instanceGroupManager": { + "description": "The name of the managed instance group, should conform to RFC1035.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request, should conform to RFC1035.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/applyUpdatesToInstances", + "request": { + "$ref": "RegionInstanceGroupManagersApplyUpdatesRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "delete": { + "description": "Deletes the specified managed instance group and all of the instances in that group.", + "httpMethod": "DELETE", + "id": "compute.regionInstanceGroupManagers.delete", + "parameterOrder": [ + "project", + "region", + "instanceGroupManager" + ], + "parameters": { + "instanceGroupManager": { + "description": "Name of the managed instance group to delete.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "deleteInstances": { + "description": "Schedules a group action to delete the specified instances in the managed instance group. The instances are also removed from any target pools of which they were a member. This method reduces the targetSize of the managed instance group by the number of instances that you delete. This operation is marked as DONE when the action is scheduled even if the instances are still being deleted. You must separately verify the status of the deleting action with the listmanagedinstances method.\n\nIf the group is part of a backend service that has enabled connection draining, it can take up to 60 seconds after the connection draining duration has elapsed before the VM instance is removed or deleted.\n\nYou can specify a maximum of 1000 instances with this method per request.", + "httpMethod": "POST", + "id": "compute.regionInstanceGroupManagers.deleteInstances", + "parameterOrder": [ + "project", + "region", + "instanceGroupManager" + ], + "parameters": { + "instanceGroupManager": { + "description": "Name of the managed instance group.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/deleteInstances", + "request": { + "$ref": "RegionInstanceGroupManagersDeleteInstancesRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "deletePerInstanceConfigs": { + "description": "Delete selected per-instance configs for the managed instance group.", + "httpMethod": "POST", + "id": "compute.regionInstanceGroupManagers.deletePerInstanceConfigs", + "parameterOrder": [ + "project", + "region", + "instanceGroupManager" + ], + "parameters": { + "instanceGroupManager": { + "description": "The name of the managed instance group. It should conform to RFC1035.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request, should conform to RFC1035.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/deletePerInstanceConfigs", + "request": { + "$ref": "RegionInstanceGroupManagerDeleteInstanceConfigReq" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Returns all of the details about the specified managed instance group.", + "httpMethod": "GET", + "id": "compute.regionInstanceGroupManagers.get", + "parameterOrder": [ + "project", + "region", + "instanceGroupManager" + ], + "parameters": { + "instanceGroupManager": { + "description": "Name of the managed instance group to return.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}", + "response": { + "$ref": "InstanceGroupManager" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "description": "Creates a managed instance group using the information that you specify in the request. After the group is created, it schedules an action to create instances in the group using the specified instance template. This operation is marked as DONE when the group is created even if the instances in the group have not yet been created. You must separately verify the status of the individual instances with the listmanagedinstances method.\n\nA regional managed instance group can contain up to 2000 instances.", + "httpMethod": "POST", + "id": "compute.regionInstanceGroupManagers.insert", + "parameterOrder": [ + "project", + "region" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/regions/{region}/instanceGroupManagers", + "request": { + "$ref": "InstanceGroupManager" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "description": "Retrieves the list of managed instance groups that are contained within the specified region.", + "httpMethod": "GET", + "id": "compute.regionInstanceGroupManagers.list", + "parameterOrder": [ + "project", + "region" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/instanceGroupManagers", + "response": { + "$ref": "RegionInstanceGroupManagerList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "listManagedInstances": { + "description": "Lists the instances in the managed instance group and instances that are scheduled to be created. The list includes any current actions that the group has scheduled for its instances.", + "httpMethod": "POST", + "id": "compute.regionInstanceGroupManagers.listManagedInstances", + "parameterOrder": [ + "project", + "region", + "instanceGroupManager" + ], + "parameters": { + "filter": { + "location": "query", + "type": "string" + }, + "instanceGroupManager": { + "description": "The name of the managed instance group.", + "location": "path", + "required": true, + "type": "string" + }, + "maxResults": { + "default": "500", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "order_by": { + "location": "query", + "type": "string" + }, + "pageToken": { + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/listManagedInstances", + "response": { + "$ref": "RegionInstanceGroupManagersListInstancesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "listPerInstanceConfigs": { + "description": "Lists all of the per-instance configs defined for the managed instance group.", + "httpMethod": "POST", + "id": "compute.regionInstanceGroupManagers.listPerInstanceConfigs", + "parameterOrder": [ + "project", + "region", + "instanceGroupManager" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "instanceGroupManager": { + "description": "The name of the managed instance group. It should conform to RFC1035.", + "location": "path", + "required": true, + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request, should conform to RFC1035.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/listPerInstanceConfigs", + "response": { + "$ref": "RegionInstanceGroupManagersListInstanceConfigsResp" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "patch": { + "description": "Updates a managed instance group using the information that you specify in the request. This operation is marked as DONE when the group is patched even if the instances in the group are still in the process of being patched. You must separately verify the status of the individual instances with the listmanagedinstances method. This method supports PATCH semantics and uses the JSON merge patch format and processing rules.", + "httpMethod": "PATCH", + "id": "compute.regionInstanceGroupManagers.patch", + "parameterOrder": [ + "project", + "region", + "instanceGroupManager" + ], + "parameters": { + "instanceGroupManager": { + "description": "The name of the instance group manager.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}", + "request": { + "$ref": "InstanceGroupManager" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "recreateInstances": { + "description": "Schedules a group action to recreate the specified instances in the managed instance group. The instances are deleted and recreated using the current instance template for the managed instance group. This operation is marked as DONE when the action is scheduled even if the instances have not yet been recreated. You must separately verify the status of the recreating action with the listmanagedinstances method.\n\nIf the group is part of a backend service that has enabled connection draining, it can take up to 60 seconds after the connection draining duration has elapsed before the VM instance is removed or deleted.\n\nYou can specify a maximum of 1000 instances with this method per request.", + "httpMethod": "POST", + "id": "compute.regionInstanceGroupManagers.recreateInstances", + "parameterOrder": [ + "project", + "region", + "instanceGroupManager" + ], + "parameters": { + "instanceGroupManager": { + "description": "Name of the managed instance group.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/recreateInstances", + "request": { + "$ref": "RegionInstanceGroupManagersRecreateRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "resize": { + "description": "Changes the intended size for the managed instance group. If you increase the size, the group schedules actions to create new instances using the current instance template. If you decrease the size, the group schedules delete actions on one or more instances. The resize operation is marked DONE when the resize actions are scheduled even if the group has not yet added or deleted any instances. You must separately verify the status of the creating or deleting actions with the listmanagedinstances method.\n\nIf the group is part of a backend service that has enabled connection draining, it can take up to 60 seconds after the connection draining duration has elapsed before the VM instance is removed or deleted.", + "httpMethod": "POST", + "id": "compute.regionInstanceGroupManagers.resize", + "parameterOrder": [ + "project", + "region", + "instanceGroupManager", + "size" + ], + "parameters": { + "instanceGroupManager": { + "description": "Name of the managed instance group.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "size": { + "description": "Number of instances that should exist in this instance group manager.", + "format": "int32", + "location": "query", + "minimum": "0", + "required": true, + "type": "integer" + } + }, + "path": "{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/resize", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setAutoHealingPolicies": { + "description": "Modifies the autohealing policy for the instances in this managed instance group.", + "httpMethod": "POST", + "id": "compute.regionInstanceGroupManagers.setAutoHealingPolicies", + "parameterOrder": [ + "project", + "region", + "instanceGroupManager" + ], + "parameters": { + "instanceGroupManager": { + "description": "Name of the managed instance group.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/setAutoHealingPolicies", + "request": { + "$ref": "RegionInstanceGroupManagersSetAutoHealingRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setInstanceTemplate": { + "description": "Sets the instance template to use when creating new instances or recreating instances in this group. Existing instances are not affected.", + "httpMethod": "POST", + "id": "compute.regionInstanceGroupManagers.setInstanceTemplate", + "parameterOrder": [ + "project", + "region", + "instanceGroupManager" + ], + "parameters": { + "instanceGroupManager": { + "description": "The name of the managed instance group.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/setInstanceTemplate", + "request": { + "$ref": "RegionInstanceGroupManagersSetTemplateRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setTargetPools": { + "description": "Modifies the target pools to which all new instances in this group are assigned. Existing instances in the group are not affected.", + "httpMethod": "POST", + "id": "compute.regionInstanceGroupManagers.setTargetPools", + "parameterOrder": [ + "project", + "region", + "instanceGroupManager" + ], + "parameters": { + "instanceGroupManager": { + "description": "Name of the managed instance group.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/setTargetPools", + "request": { + "$ref": "RegionInstanceGroupManagersSetTargetPoolsRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource.", + "httpMethod": "POST", + "id": "compute.regionInstanceGroupManagers.testIamPermissions", + "parameterOrder": [ + "project", + "region", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "The name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/instanceGroupManagers/{resource}/testIamPermissions", + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "update": { + "description": "Updates a managed instance group using the information that you specify in the request. This operation is marked as DONE when the group is updated even if the instances in the group have not yet been updated. You must separately verify the status of the individual instances with the listmanagedinstances method.", + "httpMethod": "PUT", + "id": "compute.regionInstanceGroupManagers.update", + "parameterOrder": [ + "project", + "region", + "instanceGroupManager" + ], + "parameters": { + "instanceGroupManager": { + "description": "The name of the instance group manager.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}", + "request": { + "$ref": "InstanceGroupManager" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "updatePerInstanceConfigs": { + "description": "Insert or patch (for the ones that already exist) per-instance configs for the managed instance group. perInstanceConfig.instance serves as a key used to distinguish whether to perform insert or patch.", + "httpMethod": "POST", + "id": "compute.regionInstanceGroupManagers.updatePerInstanceConfigs", + "parameterOrder": [ + "project", + "region", + "instanceGroupManager" + ], + "parameters": { + "instanceGroupManager": { + "description": "The name of the managed instance group. It should conform to RFC1035.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request, should conform to RFC1035.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/updatePerInstanceConfigs", + "request": { + "$ref": "RegionInstanceGroupManagerUpdateInstanceConfigReq" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + } + } }, - "kind": { - "type": "string", - "description": "[Output Only] Type of the resource. Always compute#network for networks.", - "default": "compute#network" + "regionInstanceGroups": { + "methods": { + "get": { + "description": "Returns the specified instance group resource.", + "httpMethod": "GET", + "id": "compute.regionInstanceGroups.get", + "parameterOrder": [ + "project", + "region", + "instanceGroup" + ], + "parameters": { + "instanceGroup": { + "description": "Name of the instance group resource to return.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/instanceGroups/{instanceGroup}", + "response": { + "$ref": "InstanceGroup" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "list": { + "description": "Retrieves the list of instance group resources contained within the specified region.", + "httpMethod": "GET", + "id": "compute.regionInstanceGroups.list", + "parameterOrder": [ + "project", + "region" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/instanceGroups", + "response": { + "$ref": "RegionInstanceGroupList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "listInstances": { + "description": "Lists the instances in the specified instance group and displays information about the named ports. Depending on the specified options, this method can list all instances or only the instances that are running.", + "httpMethod": "POST", + "id": "compute.regionInstanceGroups.listInstances", + "parameterOrder": [ + "project", + "region", + "instanceGroup" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "instanceGroup": { + "description": "Name of the regional instance group for which we want to list the instances.", + "location": "path", + "required": true, + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/instanceGroups/{instanceGroup}/listInstances", + "request": { + "$ref": "RegionInstanceGroupsListInstancesRequest" + }, + "response": { + "$ref": "RegionInstanceGroupsListInstances" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "setNamedPorts": { + "description": "Sets the named ports for the specified regional instance group.", + "httpMethod": "POST", + "id": "compute.regionInstanceGroups.setNamedPorts", + "parameterOrder": [ + "project", + "region", + "instanceGroup" + ], + "parameters": { + "instanceGroup": { + "description": "The name of the regional instance group where the named ports are updated.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/regions/{region}/instanceGroups/{instanceGroup}/setNamedPorts", + "request": { + "$ref": "RegionInstanceGroupsSetNamedPortsRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource.", + "httpMethod": "POST", + "id": "compute.regionInstanceGroups.testIamPermissions", + "parameterOrder": [ + "project", + "region", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "The name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/instanceGroups/{resource}/testIamPermissions", + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + } + } }, - "loadBalancerVmEncryption": { - "type": "string", - "description": "[Output Only] Type of LB-to-VM traffic encryption for this network.", - "enum": [ - "ENCRYPTED", - "UNENCRYPTED" - ], - "enumDescriptions": [ - "", - "" - ] + "regionOperations": { + "methods": { + "delete": { + "description": "Deletes the specified region-specific Operations resource.", + "httpMethod": "DELETE", + "id": "compute.regionOperations.delete", + "parameterOrder": [ + "project", + "region", + "operation" + ], + "parameters": { + "operation": { + "description": "Name of the Operations resource to delete.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/operations/{operation}", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Retrieves the specified region-specific Operations resource.", + "httpMethod": "GET", + "id": "compute.regionOperations.get", + "parameterOrder": [ + "project", + "region", + "operation" + ], + "parameters": { + "operation": { + "description": "Name of the Operations resource to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/operations/{operation}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "list": { + "description": "Retrieves a list of Operation resources contained within the specified region.", + "httpMethod": "GET", + "id": "compute.regionOperations.list", + "parameterOrder": [ + "project", + "region" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/operations", + "response": { + "$ref": "OperationList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + } + } }, - "name": { - "type": "string", - "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "annotations": { - "required": [ - "compute.networks.insert" - ] - } + "regionTargetHttpProxies": { + "methods": { + "delete": { + "description": "Deletes the specified TargetHttpProxy resource.", + "httpMethod": "DELETE", + "id": "compute.regionTargetHttpProxies.delete", + "parameterOrder": [ + "project", + "region", + "targetHttpProxy" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "targetHttpProxy": { + "description": "Name of the TargetHttpProxy resource to delete.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/targetHttpProxies/{targetHttpProxy}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Returns the specified TargetHttpProxy resource in the specified region. Get a list of available target HTTP proxies by making a list() request.", + "httpMethod": "GET", + "id": "compute.regionTargetHttpProxies.get", + "parameterOrder": [ + "project", + "region", + "targetHttpProxy" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "targetHttpProxy": { + "description": "Name of the TargetHttpProxy resource to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/targetHttpProxies/{targetHttpProxy}", + "response": { + "$ref": "TargetHttpProxy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "description": "Creates a TargetHttpProxy resource in the specified project and region using the data included in the request.", + "httpMethod": "POST", + "id": "compute.regionTargetHttpProxies.insert", + "parameterOrder": [ + "project", + "region" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/regions/{region}/targetHttpProxies", + "request": { + "$ref": "TargetHttpProxy" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "description": "Retrieves the list of TargetHttpProxy resources available to the specified project in the specified region.", + "httpMethod": "GET", + "id": "compute.regionTargetHttpProxies.list", + "parameterOrder": [ + "project", + "region" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/targetHttpProxies", + "response": { + "$ref": "TargetHttpProxyList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "setUrlMap": { + "description": "Changes the URL map for TargetHttpProxy.", + "httpMethod": "POST", + "id": "compute.regionTargetHttpProxies.setUrlMap", + "parameterOrder": [ + "project", + "region", + "targetHttpProxy" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "targetHttpProxy": { + "description": "Name of the TargetHttpProxy to set a URL map for.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/targetHttpProxies/{targetHttpProxy}/setUrlMap", + "request": { + "$ref": "UrlMapReference" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource.", + "httpMethod": "POST", + "id": "compute.regionTargetHttpProxies.testIamPermissions", + "parameterOrder": [ + "project", + "region", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "The name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/targetHttpProxies/{resource}/testIamPermissions", + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + } + } }, - "peerings": { - "type": "array", - "description": "[Output Only] List of network peerings for the resource.", - "items": { - "$ref": "NetworkPeering" - } + "regionUrlMaps": { + "methods": { + "delete": { + "description": "Deletes the specified UrlMap resource.", + "httpMethod": "DELETE", + "id": "compute.regionUrlMaps.delete", + "parameterOrder": [ + "project", + "region", + "urlMap" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "urlMap": { + "description": "Name of the UrlMap resource to delete.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/urlMaps/{urlMap}", + "request": { + "$ref": "RegionUrlMapsDeleteRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Returns the specified UrlMap resource. Get a list of available URL maps by making a list() request.", + "httpMethod": "GET", + "id": "compute.regionUrlMaps.get", + "parameterOrder": [ + "project", + "region", + "urlMap" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "urlMap": { + "description": "Name of the UrlMap resource to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/urlMaps/{urlMap}", + "response": { + "$ref": "UrlMap" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "description": "Creates a UrlMap resource in the specified project using the data included in the request.", + "httpMethod": "POST", + "id": "compute.regionUrlMaps.insert", + "parameterOrder": [ + "project", + "region" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/urlMaps", + "request": { + "$ref": "UrlMap" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "description": "Retrieves the list of UrlMap resources available to the specified project in the specified region.", + "httpMethod": "GET", + "id": "compute.regionUrlMaps.list", + "parameterOrder": [ + "project", + "region" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/urlMaps", + "response": { + "$ref": "UrlMapList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "patch": { + "description": "Patches the specified UrlMap resource with the data included in the request. This method supports PATCH semantics and uses JSON merge patch format and processing rules.", + "httpMethod": "PATCH", + "id": "compute.regionUrlMaps.patch", + "parameterOrder": [ + "project", + "region", + "urlMap" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "urlMap": { + "description": "Name of the UrlMap resource to patch.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/urlMaps/{urlMap}", + "request": { + "$ref": "UrlMap" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource.", + "httpMethod": "POST", + "id": "compute.regionUrlMaps.testIamPermissions", + "parameterOrder": [ + "project", + "region", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "The name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/urlMaps/{resource}/testIamPermissions", + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "update": { + "description": "Updates the specified UrlMap resource with the data included in the request.", + "httpMethod": "PUT", + "id": "compute.regionUrlMaps.update", + "parameterOrder": [ + "project", + "region", + "urlMap" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "urlMap": { + "description": "Name of the UrlMap resource to update.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/urlMaps/{urlMap}", + "request": { + "$ref": "UrlMap" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "validate": { + "description": "Runs static validation for the UrlMap. In particular, the tests of the provided UrlMap will be run. Calling this method does NOT create the UrlMap.", + "httpMethod": "POST", + "id": "compute.regionUrlMaps.validate", + "parameterOrder": [ + "project", + "region", + "urlMap" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "urlMap": { + "description": "Name of the UrlMap resource to be validated as.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/urlMaps/{urlMap}/validate", + "request": { + "$ref": "RegionUrlMapsValidateRequest" + }, + "response": { + "$ref": "UrlMapsValidateResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + } + } }, - "routingConfig": { - "$ref": "NetworkRoutingConfig", - "description": "The network-level routing configuration for this network. Used by Cloud Router to determine what type of network-wide routing behavior to enforce." + "regions": { + "methods": { + "get": { + "description": "Returns the specified Region resource. Get a list of available regions by making a list() request.", + "httpMethod": "GET", + "id": "compute.regions.get", + "parameterOrder": [ + "project", + "region" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region resource to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}", + "response": { + "$ref": "Region" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "list": { + "description": "Retrieves the list of region resources available to the specified project.", + "httpMethod": "GET", + "id": "compute.regions.list", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions", + "response": { + "$ref": "RegionList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + } + } }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for the resource." + "routers": { + "methods": { + "aggregatedList": { + "description": "Retrieves an aggregated list of routers.", + "httpMethod": "GET", + "id": "compute.routers.aggregatedList", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/aggregated/routers", + "response": { + "$ref": "RouterAggregatedList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "delete": { + "description": "Deletes the specified Router resource.", + "httpMethod": "DELETE", + "id": "compute.routers.delete", + "parameterOrder": [ + "project", + "region", + "router" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "router": { + "description": "Name of the Router resource to delete.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/routers/{router}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Returns the specified Router resource. Get a list of available routers by making a list() request.", + "httpMethod": "GET", + "id": "compute.routers.get", + "parameterOrder": [ + "project", + "region", + "router" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "router": { + "description": "Name of the Router resource to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/routers/{router}", + "response": { + "$ref": "Router" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "getRouterStatus": { + "description": "Retrieves runtime information of the specified router.", + "httpMethod": "GET", + "id": "compute.routers.getRouterStatus", + "parameterOrder": [ + "project", + "region", + "router" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "router": { + "description": "Name of the Router resource to query.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/routers/{router}/getRouterStatus", + "response": { + "$ref": "RouterStatusResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "description": "Creates a Router resource in the specified project and region using the data included in the request.", + "httpMethod": "POST", + "id": "compute.routers.insert", + "parameterOrder": [ + "project", + "region" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/regions/{region}/routers", + "request": { + "$ref": "Router" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "description": "Retrieves a list of Router resources available to the specified project.", + "httpMethod": "GET", + "id": "compute.routers.list", + "parameterOrder": [ + "project", + "region" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/routers", + "response": { + "$ref": "RouterList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "patch": { + "description": "Patches the specified Router resource with the data included in the request. This method supports PATCH semantics and uses JSON merge patch format and processing rules.", + "httpMethod": "PATCH", + "id": "compute.routers.patch", + "parameterOrder": [ + "project", + "region", + "router" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "router": { + "description": "Name of the Router resource to patch.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/routers/{router}", + "request": { + "$ref": "Router" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "preview": { + "description": "Preview fields auto-generated during router create and update operations. Calling this method does NOT create or update the router.", + "httpMethod": "POST", + "id": "compute.routers.preview", + "parameterOrder": [ + "project", + "region", + "router" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "router": { + "description": "Name of the Router resource to query.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/routers/{router}/preview", + "request": { + "$ref": "Router" + }, + "response": { + "$ref": "RoutersPreviewResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource.", + "httpMethod": "POST", + "id": "compute.routers.testIamPermissions", + "parameterOrder": [ + "project", + "region", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "The name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/routers/{resource}/testIamPermissions", + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "update": { + "description": "Updates the specified Router resource with the data included in the request.", + "httpMethod": "PUT", + "id": "compute.routers.update", + "parameterOrder": [ + "project", + "region", + "router" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "router": { + "description": "Name of the Router resource to update.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/routers/{router}", + "request": { + "$ref": "Router" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + } + } + }, + "routes": { + "methods": { + "delete": { + "description": "Deletes the specified Route resource.", + "httpMethod": "DELETE", + "id": "compute.routes.delete", + "parameterOrder": [ + "project", + "route" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "route": { + "description": "Name of the Route resource to delete.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/routes/{route}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Returns the specified Route resource. Get a list of available routes by making a list() request.", + "httpMethod": "GET", + "id": "compute.routes.get", + "parameterOrder": [ + "project", + "route" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "route": { + "description": "Name of the Route resource to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/routes/{route}", + "response": { + "$ref": "Route" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "description": "Creates a Route resource in the specified project using the data included in the request.", + "httpMethod": "POST", + "id": "compute.routes.insert", + "parameterOrder": [ + "project" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/routes", + "request": { + "$ref": "Route" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "description": "Retrieves the list of Route resources available to the specified project.", + "httpMethod": "GET", + "id": "compute.routes.list", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/routes", + "response": { + "$ref": "RouteList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource.", + "httpMethod": "POST", + "id": "compute.routes.testIamPermissions", + "parameterOrder": [ + "project", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "(?:[-a-z0-9_]{0,62}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/routes/{resource}/testIamPermissions", + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + } + } + }, + "securityPolicies": { + "methods": { + "addRule": { + "description": "Inserts a rule into a security policy.", + "httpMethod": "POST", + "id": "compute.securityPolicies.addRule", + "parameterOrder": [ + "project", + "securityPolicy" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "securityPolicy": { + "description": "Name of the security policy to update.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "validateOnly": { + "description": "If true, the request will not be committed.", + "location": "query", + "type": "boolean" + } + }, + "path": "{project}/global/securityPolicies/{securityPolicy}/addRule", + "request": { + "$ref": "SecurityPolicyRule" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "delete": { + "description": "Deletes the specified policy.", + "httpMethod": "DELETE", + "id": "compute.securityPolicies.delete", + "parameterOrder": [ + "project", + "securityPolicy" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "securityPolicy": { + "description": "Name of the security policy to delete.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/securityPolicies/{securityPolicy}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "List all of the ordered rules present in a single specified policy.", + "httpMethod": "GET", + "id": "compute.securityPolicies.get", + "parameterOrder": [ + "project", + "securityPolicy" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "securityPolicy": { + "description": "Name of the security policy to get.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/securityPolicies/{securityPolicy}", + "response": { + "$ref": "SecurityPolicy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "getRule": { + "description": "Gets a rule at the specified priority.", + "httpMethod": "GET", + "id": "compute.securityPolicies.getRule", + "parameterOrder": [ + "project", + "securityPolicy" + ], + "parameters": { + "priority": { + "description": "The priority of the rule to get from the security policy.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "securityPolicy": { + "description": "Name of the security policy to which the queried rule belongs.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/securityPolicies/{securityPolicy}/getRule", + "response": { + "$ref": "SecurityPolicyRule" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "description": "Creates a new policy in the specified project using the data included in the request.", + "httpMethod": "POST", + "id": "compute.securityPolicies.insert", + "parameterOrder": [ + "project" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "validateOnly": { + "description": "If true, the request will not be committed.", + "location": "query", + "type": "boolean" + } + }, + "path": "{project}/global/securityPolicies", + "request": { + "$ref": "SecurityPolicy" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "description": "List all the policies that have been configured for the specified project.", + "httpMethod": "GET", + "id": "compute.securityPolicies.list", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/securityPolicies", + "response": { + "$ref": "SecurityPolicyList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "patch": { + "description": "Patches the specified policy with the data included in the request.", + "httpMethod": "PATCH", + "id": "compute.securityPolicies.patch", + "parameterOrder": [ + "project", + "securityPolicy" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "securityPolicy": { + "description": "Name of the security policy to update.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/securityPolicies/{securityPolicy}", + "request": { + "$ref": "SecurityPolicy" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "patchRule": { + "description": "Patches a rule at the specified priority.", + "httpMethod": "POST", + "id": "compute.securityPolicies.patchRule", + "parameterOrder": [ + "project", + "securityPolicy" + ], + "parameters": { + "priority": { + "description": "The priority of the rule to patch.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "securityPolicy": { + "description": "Name of the security policy to update.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "validateOnly": { + "description": "If true, the request will not be committed.", + "location": "query", + "type": "boolean" + } + }, + "path": "{project}/global/securityPolicies/{securityPolicy}/patchRule", + "request": { + "$ref": "SecurityPolicyRule" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "removeRule": { + "description": "Deletes a rule at the specified priority.", + "httpMethod": "POST", + "id": "compute.securityPolicies.removeRule", + "parameterOrder": [ + "project", + "securityPolicy" + ], + "parameters": { + "priority": { + "description": "The priority of the rule to remove from the security policy.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "securityPolicy": { + "description": "Name of the security policy to update.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/securityPolicies/{securityPolicy}/removeRule", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource.", + "httpMethod": "POST", + "id": "compute.securityPolicies.testIamPermissions", + "parameterOrder": [ + "project", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "(?:[-a-z0-9_]{0,62}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/securityPolicies/{resource}/testIamPermissions", + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + } + } + }, + "snapshots": { + "methods": { + "delete": { + "description": "Deletes the specified Snapshot resource. Keep in mind that deleting a single snapshot might not necessarily delete all the data on that snapshot. If any data on the snapshot that is marked for deletion is needed for subsequent snapshots, the data will be moved to the next corresponding snapshot.\n\nFor more information, see Deleting snaphots.", + "httpMethod": "DELETE", + "id": "compute.snapshots.delete", + "parameterOrder": [ + "project", + "snapshot" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "snapshot": { + "description": "Name of the Snapshot resource to delete.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/snapshots/{snapshot}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Returns the specified Snapshot resource. Get a list of available snapshots by making a list() request.", + "httpMethod": "GET", + "id": "compute.snapshots.get", + "parameterOrder": [ + "project", + "snapshot" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "snapshot": { + "description": "Name of the Snapshot resource to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/snapshots/{snapshot}", + "response": { + "$ref": "Snapshot" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "getIamPolicy": { + "description": "Gets the access control policy for a resource. May be empty if no such policy or resource exists.", + "httpMethod": "GET", + "id": "compute.snapshots.getIamPolicy", + "parameterOrder": [ + "project", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "[a-z0-9](?:[-a-z0-9_]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/snapshots/{resource}/getIamPolicy", + "response": { + "$ref": "Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "list": { + "description": "Retrieves the list of Snapshot resources contained within the specified project.", + "httpMethod": "GET", + "id": "compute.snapshots.list", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/snapshots", + "response": { + "$ref": "SnapshotList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "setIamPolicy": { + "description": "Sets the access control policy on the specified resource. Replaces any existing policy.", + "httpMethod": "POST", + "id": "compute.snapshots.setIamPolicy", + "parameterOrder": [ + "project", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "[a-z0-9](?:[-a-z0-9_]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/snapshots/{resource}/setIamPolicy", + "request": { + "$ref": "Policy" + }, + "response": { + "$ref": "Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setLabels": { + "description": "Sets the labels on a snapshot. To learn more about labels, read the Labeling Resources documentation.", + "httpMethod": "POST", + "id": "compute.snapshots.setLabels", + "parameterOrder": [ + "project", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/snapshots/{resource}/setLabels", + "request": { + "$ref": "GlobalSetLabelsRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource.", + "httpMethod": "POST", + "id": "compute.snapshots.testIamPermissions", + "parameterOrder": [ + "project", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "(?:[-a-z0-9_]{0,62}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/snapshots/{resource}/testIamPermissions", + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + } + } + }, + "sslCertificates": { + "methods": { + "delete": { + "description": "Deletes the specified SslCertificate resource.", + "httpMethod": "DELETE", + "id": "compute.sslCertificates.delete", + "parameterOrder": [ + "project", + "sslCertificate" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "sslCertificate": { + "description": "Name of the SslCertificate resource to delete.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/sslCertificates/{sslCertificate}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Returns the specified SslCertificate resource. Get a list of available SSL certificates by making a list() request.", + "httpMethod": "GET", + "id": "compute.sslCertificates.get", + "parameterOrder": [ + "project", + "sslCertificate" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "sslCertificate": { + "description": "Name of the SslCertificate resource to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/sslCertificates/{sslCertificate}", + "response": { + "$ref": "SslCertificate" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "description": "Creates a SslCertificate resource in the specified project using the data included in the request.", + "httpMethod": "POST", + "id": "compute.sslCertificates.insert", + "parameterOrder": [ + "project" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/sslCertificates", + "request": { + "$ref": "SslCertificate" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "description": "Retrieves the list of SslCertificate resources available to the specified project.", + "httpMethod": "GET", + "id": "compute.sslCertificates.list", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/sslCertificates", + "response": { + "$ref": "SslCertificateList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource.", + "httpMethod": "POST", + "id": "compute.sslCertificates.testIamPermissions", + "parameterOrder": [ + "project", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "(?:[-a-z0-9_]{0,62}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/sslCertificates/{resource}/testIamPermissions", + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + } + } + }, + "sslPolicies": { + "methods": { + "delete": { + "description": "Deletes the specified SSL policy. The SSL policy resource can be deleted only if it is not in use by any TargetHttpsProxy or TargetSslProxy resources.", + "httpMethod": "DELETE", + "id": "compute.sslPolicies.delete", + "parameterOrder": [ + "project", + "sslPolicy" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "sslPolicy": { + "description": "Name of the SSL policy to delete. The name must be 1-63 characters long, and comply with RFC1035.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/sslPolicies/{sslPolicy}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "List all of the ordered rules present in a single specified policy.", + "httpMethod": "GET", + "id": "compute.sslPolicies.get", + "parameterOrder": [ + "project", + "sslPolicy" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "sslPolicy": { + "description": "Name of the SSL policy to update. The name must be 1-63 characters long, and comply with RFC1035.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/sslPolicies/{sslPolicy}", + "response": { + "$ref": "SslPolicy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "description": "Returns the specified SSL policy resource. Get a list of available SSL policies by making a list() request.", + "httpMethod": "POST", + "id": "compute.sslPolicies.insert", + "parameterOrder": [ + "project" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/sslPolicies", + "request": { + "$ref": "SslPolicy" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "description": "List all the SSL policies that have been configured for the specified project.", + "httpMethod": "GET", + "id": "compute.sslPolicies.list", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/sslPolicies", + "response": { + "$ref": "SslPoliciesList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "listAvailableFeatures": { + "description": "Lists all features that can be specified in the SSL policy when using custom profile.", + "httpMethod": "GET", + "id": "compute.sslPolicies.listAvailableFeatures", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/sslPolicies/listAvailableFeatures", + "response": { + "$ref": "SslPoliciesListAvailableFeaturesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "patch": { + "description": "Patches the specified SSL policy with the data included in the request.", + "httpMethod": "PATCH", + "id": "compute.sslPolicies.patch", + "parameterOrder": [ + "project", + "sslPolicy" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "sslPolicy": { + "description": "Name of the SSL policy to update. The name must be 1-63 characters long, and comply with RFC1035.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/sslPolicies/{sslPolicy}", + "request": { + "$ref": "SslPolicy" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource.", + "httpMethod": "POST", + "id": "compute.sslPolicies.testIamPermissions", + "parameterOrder": [ + "project", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "(?:[-a-z0-9_]{0,62}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/sslPolicies/{resource}/testIamPermissions", + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + } + } }, "subnetworks": { - "type": "array", - "description": "[Output Only] Server-defined fully-qualified URLs for all subnetworks in this network.", - "items": { - "type": "string" - } - } - } - }, - "NetworkEndpoint": { - "id": "NetworkEndpoint", - "type": "object", - "description": "The network endpoint.", - "properties": { - "instance": { - "type": "string", - "description": "The name for a specific VM instance that the IP address belongs to. This is required for network endpoints of type GCE_VM_IP and GCE_VM_IP_PORT. The instance must be in the same zone of network endpoint group.\n\nThe name must be 1-63 characters long, and comply with RFC1035." - }, - "ipAddress": { - "type": "string", - "description": "Optional IPv4 address of network endpoint. The IP address must belong to a VM in GCE (either the primary IP or as part of an aliased IP range). If the IP address is not specified, then the primary IP address for the VM instance in the network that the network endpoint group belongs to will be used." - }, - "port": { - "type": "integer", - "description": "Optional port number of network endpoint. If not specified and the NetworkEndpointGroup.network_endpoint_type is GCE_IP_PORT, the defaultPort for the network endpoint group will be used.", - "format": "int32" - } - } - }, - "NetworkEndpointGroup": { - "id": "NetworkEndpointGroup", - "type": "object", - "description": "Represents a collection of network endpoints.", - "properties": { - "creationTimestamp": { - "type": "string", - "description": "[Output Only] Creation timestamp in RFC3339 text format." - }, - "description": { - "type": "string", - "description": "An optional description of this resource. Provide this property when you create the resource." - }, - "id": { - "type": "string", - "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", - "format": "uint64" - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of the resource. Always compute#networkEndpointGroup for network endpoint group.", - "default": "compute#networkEndpointGroup" - }, - "loadBalancer": { - "$ref": "NetworkEndpointGroupLbNetworkEndpointGroup", - "description": "This field is only valid when the network endpoint group type is LOAD_BALANCING." - }, - "name": { - "type": "string", - "description": "Name of the resource; provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash." - }, - "networkEndpointType": { - "type": "string", - "description": "Type of network endpoints in this network endpoint group. Only supported values for LOAD_BALANCING are GCE_VM_IP or GCE_VM_IP_PORT.", - "enum": [ - "GCE_VM_IP_PORT" - ], - "enumDescriptions": [ - "" - ] - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for the resource." - }, - "size": { - "type": "integer", - "description": "[Output only] Number of network endpoints in the network endpoint group.", - "format": "int32" - }, - "type": { - "type": "string", - "description": "Specify the type of this network endpoint group. Only LOAD_BALANCING is valid for now.", - "enum": [ - "LOAD_BALANCING" - ], - "enumDescriptions": [ - "" - ] - } - } - }, - "NetworkEndpointGroupAggregatedList": { - "id": "NetworkEndpointGroupAggregatedList", - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "object", - "description": "A list of NetworkEndpointGroupsScopedList resources.", - "additionalProperties": { - "$ref": "NetworkEndpointGroupsScopedList", - "description": "The name of the scope that contains this set of network endpoint groups." - } - }, - "kind": { - "type": "string", - "description": "[Output Only] The resource type, which is always compute#networkEndpointGroupAggregatedList for aggregated lists of network endpoint groups.", - "default": "compute#networkEndpointGroupAggregatedList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "NetworkEndpointGroupLbNetworkEndpointGroup": { - "id": "NetworkEndpointGroupLbNetworkEndpointGroup", - "type": "object", - "description": "Load balancing specific fields for network endpoint group of type LOAD_BALANCING.", - "properties": { - "defaultPort": { - "type": "integer", - "description": "The default port used if the port number is not specified in the network endpoint. If the network endpoint type is GCE_VM_IP, this field must not be specified.", - "format": "int32" - }, - "network": { - "type": "string", - "description": "The URL of the network to which all network endpoints in the NEG belong. Uses \"default\" project network if unspecified." - }, - "subnetwork": { - "type": "string", - "description": "Optional URL of the subnetwork to which all network endpoints in the NEG belong." - }, - "zone": { - "type": "string", - "description": "[Output Only] The URL of the zone where the network endpoint group is located." - } - } - }, - "NetworkEndpointGroupList": { - "id": "NetworkEndpointGroupList", - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "array", - "description": "A list of NetworkEndpointGroup resources.", - "items": { - "$ref": "NetworkEndpointGroup" - } - }, - "kind": { - "type": "string", - "description": "[Output Only] The resource type, which is always compute#networkEndpointGroupList for network endpoint group lists.", - "default": "compute#networkEndpointGroupList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "NetworkEndpointGroupsAttachEndpointsRequest": { - "id": "NetworkEndpointGroupsAttachEndpointsRequest", - "type": "object", - "properties": { - "networkEndpoints": { - "type": "array", - "description": "The list of network endpoints to be attached.", - "items": { - "$ref": "NetworkEndpoint" - } - } - } - }, - "NetworkEndpointGroupsDetachEndpointsRequest": { - "id": "NetworkEndpointGroupsDetachEndpointsRequest", - "type": "object", - "properties": { - "networkEndpoints": { - "type": "array", - "description": "The list of network endpoints to be detached.", - "items": { - "$ref": "NetworkEndpoint" - } - } - } - }, - "NetworkEndpointGroupsListEndpointsRequest": { - "id": "NetworkEndpointGroupsListEndpointsRequest", - "type": "object", - "properties": { - "healthStatus": { - "type": "string", - "description": "Optional query parameter for showing the health status of each network endpoint. Valid options are SKIP or SHOW. If you don't specifiy this parameter, the health status of network endpoints will not be provided.", - "enum": [ - "SHOW", - "SKIP" - ], - "enumDescriptions": [ - "", - "" - ] - } - } - }, - "NetworkEndpointGroupsListNetworkEndpoints": { - "id": "NetworkEndpointGroupsListNetworkEndpoints", - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "array", - "description": "A list of NetworkEndpointWithHealthStatus resources.", - "items": { - "$ref": "NetworkEndpointWithHealthStatus" - } - }, - "kind": { - "type": "string", - "description": "[Output Only] The resource type, which is always compute#networkEndpointGroupsListNetworkEndpoints for the list of network endpoints in the specified network endpoint group.", - "default": "compute#networkEndpointGroupsListNetworkEndpoints" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "NetworkEndpointGroupsScopedList": { - "id": "NetworkEndpointGroupsScopedList", - "type": "object", - "properties": { - "networkEndpointGroups": { - "type": "array", - "description": "[Output Only] The list of network endpoint groups that are contained in this scope.", - "items": { - "$ref": "NetworkEndpointGroup" - } - }, - "warning": { - "type": "object", - "description": "[Output Only] An informational warning that replaces the list of network endpoint groups when the list is empty.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "NetworkEndpointWithHealthStatus": { - "id": "NetworkEndpointWithHealthStatus", - "type": "object", - "properties": { - "healths": { - "type": "array", - "description": "[Output only] The health status of network endpoint;", - "items": { - "$ref": "HealthStatusForNetworkEndpoint" - } - }, - "networkEndpoint": { - "$ref": "NetworkEndpoint", - "description": "[Output only] The network endpoint;" - } - } - }, - "NetworkInterface": { - "id": "NetworkInterface", - "type": "object", - "description": "A network interface resource attached to an instance.", - "properties": { - "accessConfigs": { - "type": "array", - "description": "An array of configurations for this interface. Currently, only one access config, ONE_TO_ONE_NAT, is supported. If there are no accessConfigs specified, then this instance will have no external internet access.", - "items": { - "$ref": "AccessConfig" - } - }, - "aliasIpRanges": { - "type": "array", - "description": "An array of alias IP ranges for this network interface. Can only be specified for network interfaces on subnet-mode networks.", - "items": { - "$ref": "AliasIpRange" - } - }, - "fingerprint": { - "type": "string", - "description": "Fingerprint hash of contents stored in this network interface. This field will be ignored when inserting an Instance or adding a NetworkInterface. An up-to-date fingerprint must be provided in order to update the NetworkInterface.", - "format": "byte" - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of the resource. Always compute#networkInterface for network interfaces.", - "default": "compute#networkInterface" - }, - "name": { - "type": "string", - "description": "[Output Only] The name of the network interface, generated by the server. For network devices, these are eth0, eth1, etc." - }, - "network": { - "type": "string", - "description": "URL of the network resource for this instance. When creating an instance, if neither the network nor the subnetwork is specified, the default network global/networks/default is used; if the network is not specified but the subnetwork is specified, the network is inferred.\n\nThis field is optional when creating a firewall rule. If not specified when creating a firewall rule, the default network global/networks/default is used.\n\nIf you specify this property, you can specify the network as a full or partial URL. For example, the following are all valid URLs: \n- https://www.googleapis.com/compute/v1/projects/project/global/networks/network \n- projects/project/global/networks/network \n- global/networks/default" - }, - "networkIP": { - "type": "string", - "description": "An IPv4 internal network address to assign to the instance for this network interface. If not specified by the user, an unused internal IP is assigned by the system." - }, - "subnetwork": { - "type": "string", - "description": "The URL of the Subnetwork resource for this instance. If the network resource is in legacy mode, do not provide this property. If the network is in auto subnet mode, providing the subnetwork is optional. If the network is in custom subnet mode, then this field should be specified. If you specify this property, you can specify the subnetwork as a full or partial URL. For example, the following are all valid URLs: \n- https://www.googleapis.com/compute/v1/projects/project/regions/region/subnetworks/subnetwork \n- regions/region/subnetworks/subnetwork" - } - } - }, - "NetworkList": { - "id": "NetworkList", - "type": "object", - "description": "Contains a list of networks.", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "array", - "description": "A list of Network resources.", - "items": { - "$ref": "Network" - } - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#networkList for lists of networks.", - "default": "compute#networkList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "NetworkPeering": { - "id": "NetworkPeering", - "type": "object", - "description": "A network peering attached to a network resource. The message includes the peering name, peer network, peering state, and a flag indicating whether Google Compute Engine should automatically create routes for the peering.", - "properties": { - "autoCreateRoutes": { - "type": "boolean", - "description": "Whether full mesh connectivity is created and managed automatically. When it is set to true, Google Compute Engine will automatically create and manage the routes between two networks when the state is ACTIVE. Otherwise, user needs to create routes manually to route packets to peer network." - }, - "name": { - "type": "string", - "description": "Name of this peering. Provided by the client when the peering is created. The name must comply with RFC1035. Specifically, the name must be 1-63 characters long and match regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all the following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash." - }, - "network": { - "type": "string", - "description": "The URL of the peer network. It can be either full URL or partial URL. The peer network may belong to a different project. If the partial URL does not contain project, it is assumed that the peer network is in the same project as the current network." - }, - "state": { - "type": "string", - "description": "[Output Only] State for the peering.", - "enum": [ - "ACTIVE", - "INACTIVE" - ], - "enumDescriptions": [ - "", - "" - ] - }, - "stateDetails": { - "type": "string", - "description": "[Output Only] Details about the current state of the peering." - } - } - }, - "NetworkRoutingConfig": { - "id": "NetworkRoutingConfig", - "type": "object", - "description": "A routing configuration attached to a network resource. The message includes the list of routers associated with the network, and a flag indicating the type of routing behavior to enforce network-wide.", - "properties": { - "routingMode": { - "type": "string", - "description": "The network-wide routing mode to use. If set to REGIONAL, this network's cloud routers will only advertise routes with subnetworks of this network in the same region as the router. If set to GLOBAL, this network's cloud routers will advertise routes with all subnetworks of this network, across regions.", - "enum": [ - "GLOBAL", - "REGIONAL" - ], - "enumDescriptions": [ - "", - "" - ] - } - } - }, - "NetworksAddPeeringRequest": { - "id": "NetworksAddPeeringRequest", - "type": "object", - "properties": { - "autoCreateRoutes": { - "type": "boolean", - "description": "Whether Google Compute Engine manages the routes automatically." - }, - "name": { - "type": "string", - "description": "Name of the peering, which should conform to RFC1035.", - "annotations": { - "required": [ - "compute.networks.addPeering" - ] - } - }, - "peerNetwork": { - "type": "string", - "description": "URL of the peer network. It can be either full URL or partial URL. The peer network may belong to a different project. If the partial URL does not contain project, it is assumed that the peer network is in the same project as the current network." - } - } - }, - "NetworksRemovePeeringRequest": { - "id": "NetworksRemovePeeringRequest", - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "Name of the peering, which should conform to RFC1035." - } - } - }, - "Operation": { - "id": "Operation", - "type": "object", - "description": "An Operation resource, used to manage asynchronous API requests. (== resource_for v1.globalOperations ==) (== resource_for beta.globalOperations ==) (== resource_for v1.regionOperations ==) (== resource_for beta.regionOperations ==) (== resource_for v1.zoneOperations ==) (== resource_for beta.zoneOperations ==)", - "properties": { - "clientOperationId": { - "type": "string", - "description": "[Output Only] Reserved for future use." - }, - "creationTimestamp": { - "type": "string", - "description": "[Deprecated] This field is deprecated." - }, - "description": { - "type": "string", - "description": "[Output Only] A textual description of the operation, which is set when the operation is created." - }, - "endTime": { - "type": "string", - "description": "[Output Only] The time that this operation was completed. This value is in RFC3339 text format." - }, - "error": { - "type": "object", - "description": "[Output Only] If errors are generated during processing of the operation, this field will be populated.", - "properties": { - "errors": { - "type": "array", - "description": "[Output Only] The array of errors encountered while processing this operation.", - "items": { - "type": "object", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] The error type identifier for this error." - }, - "location": { - "type": "string", - "description": "[Output Only] Indicates the field in the request that caused the error. This property is optional." - }, - "message": { - "type": "string", - "description": "[Output Only] An optional, human-readable error message." - } - } - } - } - } - }, - "httpErrorMessage": { - "type": "string", - "description": "[Output Only] If the operation fails, this field contains the HTTP error message that was returned, such as NOT FOUND." - }, - "httpErrorStatusCode": { - "type": "integer", - "description": "[Output Only] If the operation fails, this field contains the HTTP error status code that was returned. For example, a 404 means the resource was not found.", - "format": "int32" - }, - "id": { - "type": "string", - "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", - "format": "uint64" - }, - "insertTime": { - "type": "string", - "description": "[Output Only] The time that this operation was requested. This value is in RFC3339 text format." - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of the resource. Always compute#operation for Operation resources.", - "default": "compute#operation" - }, - "name": { - "type": "string", - "description": "[Output Only] Name of the resource." - }, - "operationType": { - "type": "string", - "description": "[Output Only] The type of operation, such as insert, update, or delete, and so on." - }, - "progress": { - "type": "integer", - "description": "[Output Only] An optional progress indicator that ranges from 0 to 100. There is no requirement that this be linear or support any granularity of operations. This should not be used to guess when the operation will be complete. This number should monotonically increase as the operation progresses.", - "format": "int32" - }, - "region": { - "type": "string", - "description": "[Output Only] The URL of the region where the operation resides. Only available when performing regional operations." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for the resource." - }, - "startTime": { - "type": "string", - "description": "[Output Only] The time that this operation was started by the server. This value is in RFC3339 text format." - }, - "status": { - "type": "string", - "description": "[Output Only] The status of the operation, which can be one of the following: PENDING, RUNNING, or DONE.", - "enum": [ - "DONE", - "PENDING", - "RUNNING" - ], - "enumDescriptions": [ - "", - "", - "" - ] - }, - "statusMessage": { - "type": "string", - "description": "[Output Only] An optional textual description of the current status of the operation." - }, - "targetId": { - "type": "string", - "description": "[Output Only] The unique target ID, which identifies a specific incarnation of the target resource.", - "format": "uint64" - }, - "targetLink": { - "type": "string", - "description": "[Output Only] The URL of the resource that the operation modifies. For operations related to creating a snapshot, this points to the persistent disk that the snapshot was created from." - }, - "user": { - "type": "string", - "description": "[Output Only] User who requested the operation, for example: user@example.com." - }, - "warnings": { - "type": "array", - "description": "[Output Only] If warning messages are generated during processing of the operation, this field will be populated.", - "items": { - "type": "object", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." + "methods": { + "aggregatedList": { + "description": "Retrieves an aggregated list of subnetworks.", + "httpMethod": "GET", + "id": "compute.subnetworks.aggregatedList", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } + "path": "{project}/aggregated/subnetworks", + "response": { + "$ref": "SubnetworkAggregatedList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "delete": { + "description": "Deletes the specified subnetwork.", + "httpMethod": "DELETE", + "id": "compute.subnetworks.delete", + "parameterOrder": [ + "project", + "region", + "subnetwork" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "subnetwork": { + "description": "Name of the Subnetwork resource to delete.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/subnetworks/{subnetwork}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "expandIpCidrRange": { + "description": "Expands the IP CIDR range of the subnetwork to a specified value.", + "httpMethod": "POST", + "id": "compute.subnetworks.expandIpCidrRange", + "parameterOrder": [ + "project", + "region", + "subnetwork" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "subnetwork": { + "description": "Name of the Subnetwork resource to update.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/subnetworks/{subnetwork}/expandIpCidrRange", + "request": { + "$ref": "SubnetworksExpandIpCidrRangeRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Returns the specified subnetwork. Get a list of available subnetworks list() request.", + "httpMethod": "GET", + "id": "compute.subnetworks.get", + "parameterOrder": [ + "project", + "region", + "subnetwork" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "subnetwork": { + "description": "Name of the Subnetwork resource to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/subnetworks/{subnetwork}", + "response": { + "$ref": "Subnetwork" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "getIamPolicy": { + "description": "Gets the access control policy for a resource. May be empty if no such policy or resource exists.", + "httpMethod": "GET", + "id": "compute.subnetworks.getIamPolicy", + "parameterOrder": [ + "project", + "region", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "The name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/subnetworks/{resource}/getIamPolicy", + "response": { + "$ref": "Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "description": "Creates a subnetwork in the specified project using the data included in the request.", + "httpMethod": "POST", + "id": "compute.subnetworks.insert", + "parameterOrder": [ + "project", + "region" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/regions/{region}/subnetworks", + "request": { + "$ref": "Subnetwork" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "description": "Retrieves a list of subnetworks available to the specified project.", + "httpMethod": "GET", + "id": "compute.subnetworks.list", + "parameterOrder": [ + "project", + "region" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/subnetworks", + "response": { + "$ref": "SubnetworkList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "listUsable": { + "description": "Retrieves an aggregated list of usable subnetworks.", + "httpMethod": "GET", + "id": "compute.subnetworks.listUsable", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/aggregated/subnetworks/listUsable", + "response": { + "$ref": "UsableSubnetworksAggregatedList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "patch": { + "description": "Patches the specified subnetwork with the data included in the request. Only the following fields within the subnetwork resource can be specified in the request: secondary_ip_range, allow_subnet_cidr_routes_overlap and role. It is also mandatory to specify the current fingeprint of the subnetwork resource being patched.", + "httpMethod": "PATCH", + "id": "compute.subnetworks.patch", + "parameterOrder": [ + "project", + "region", + "subnetwork" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "subnetwork": { + "description": "Name of the Subnetwork resource to patch.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/subnetworks/{subnetwork}", + "request": { + "$ref": "Subnetwork" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setIamPolicy": { + "description": "Sets the access control policy on the specified resource. Replaces any existing policy.", + "httpMethod": "POST", + "id": "compute.subnetworks.setIamPolicy", + "parameterOrder": [ + "project", + "region", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "The name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/subnetworks/{resource}/setIamPolicy", + "request": { + "$ref": "Policy" + }, + "response": { + "$ref": "Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setPrivateIpGoogleAccess": { + "description": "Set whether VMs in this subnet can access Google services without assigning external IP addresses through Private Google Access.", + "httpMethod": "POST", + "id": "compute.subnetworks.setPrivateIpGoogleAccess", + "parameterOrder": [ + "project", + "region", + "subnetwork" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "subnetwork": { + "description": "Name of the Subnetwork resource.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/subnetworks/{subnetwork}/setPrivateIpGoogleAccess", + "request": { + "$ref": "SubnetworksSetPrivateIpGoogleAccessRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource.", + "httpMethod": "POST", + "id": "compute.subnetworks.testIamPermissions", + "parameterOrder": [ + "project", + "region", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "The name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/subnetworks/{resource}/testIamPermissions", + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } } - } }, - "zone": { - "type": "string", - "description": "[Output Only] The URL of the zone where the operation resides. Only available when performing per-zone operations." - } - } - }, - "OperationAggregatedList": { - "id": "OperationAggregatedList", - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server." - }, - "items": { - "type": "object", - "description": "[Output Only] A map of scoped operation lists.", - "additionalProperties": { - "$ref": "OperationsScopedList", - "description": "[Output Only] Name of the scope containing this set of operations." - } - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#operationAggregatedList for aggregated lists of operations.", - "default": "compute#operationAggregatedList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } + "targetHttpProxies": { + "methods": { + "aggregatedList": { + "description": "Retrieves the list of all TargetHttpProxy resources, regional and global, available to the specified project.", + "httpMethod": "GET", + "id": "compute.targetHttpProxies.aggregatedList", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Name of the project scoping this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/aggregated/targetHttpProxies", + "response": { + "$ref": "TargetHttpProxyAggregatedList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "delete": { + "description": "Deletes the specified TargetHttpProxy resource.", + "httpMethod": "DELETE", + "id": "compute.targetHttpProxies.delete", + "parameterOrder": [ + "project", + "targetHttpProxy" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "targetHttpProxy": { + "description": "Name of the TargetHttpProxy resource to delete.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/targetHttpProxies/{targetHttpProxy}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Returns the specified TargetHttpProxy resource. Get a list of available target HTTP proxies by making a list() request.", + "httpMethod": "GET", + "id": "compute.targetHttpProxies.get", + "parameterOrder": [ + "project", + "targetHttpProxy" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "targetHttpProxy": { + "description": "Name of the TargetHttpProxy resource to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/targetHttpProxies/{targetHttpProxy}", + "response": { + "$ref": "TargetHttpProxy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "description": "Creates a TargetHttpProxy resource in the specified project using the data included in the request.", + "httpMethod": "POST", + "id": "compute.targetHttpProxies.insert", + "parameterOrder": [ + "project" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/targetHttpProxies", + "request": { + "$ref": "TargetHttpProxy" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "description": "Retrieves the list of TargetHttpProxy resources available to the specified project.", + "httpMethod": "GET", + "id": "compute.targetHttpProxies.list", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/targetHttpProxies", + "response": { + "$ref": "TargetHttpProxyList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "setUrlMap": { + "description": "Changes the URL map for TargetHttpProxy.", + "httpMethod": "POST", + "id": "compute.targetHttpProxies.setUrlMap", + "parameterOrder": [ + "project", + "targetHttpProxy" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "targetHttpProxy": { + "description": "Name of the TargetHttpProxy to set a URL map for.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/targetHttpProxies/{targetHttpProxy}/setUrlMap", + "request": { + "$ref": "UrlMapReference" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource.", + "httpMethod": "POST", + "id": "compute.targetHttpProxies.testIamPermissions", + "parameterOrder": [ + "project", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "(?:[-a-z0-9_]{0,62}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/targetHttpProxies/{resource}/testIamPermissions", + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." } - } - } - } - }, - "OperationList": { - "id": "OperationList", - "type": "object", - "description": "Contains a list of Operation resources.", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server." }, - "items": { - "type": "array", - "description": "[Output Only] A list of Operation resources.", - "items": { - "$ref": "Operation" - } - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#operations for Operations resource.", - "default": "compute#operationList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } + "targetHttpsProxies": { + "methods": { + "delete": { + "description": "Deletes the specified TargetHttpsProxy resource.", + "httpMethod": "DELETE", + "id": "compute.targetHttpsProxies.delete", + "parameterOrder": [ + "project", + "targetHttpsProxy" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "targetHttpsProxy": { + "description": "Name of the TargetHttpsProxy resource to delete.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/targetHttpsProxies/{targetHttpsProxy}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Returns the specified TargetHttpsProxy resource. Get a list of available target HTTPS proxies by making a list() request.", + "httpMethod": "GET", + "id": "compute.targetHttpsProxies.get", + "parameterOrder": [ + "project", + "targetHttpsProxy" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "targetHttpsProxy": { + "description": "Name of the TargetHttpsProxy resource to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/targetHttpsProxies/{targetHttpsProxy}", + "response": { + "$ref": "TargetHttpsProxy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "description": "Creates a TargetHttpsProxy resource in the specified project using the data included in the request.", + "httpMethod": "POST", + "id": "compute.targetHttpsProxies.insert", + "parameterOrder": [ + "project" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/targetHttpsProxies", + "request": { + "$ref": "TargetHttpsProxy" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "description": "Retrieves the list of TargetHttpsProxy resources available to the specified project.", + "httpMethod": "GET", + "id": "compute.targetHttpsProxies.list", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/targetHttpsProxies", + "response": { + "$ref": "TargetHttpsProxyList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "setQuicOverride": { + "description": "Sets the QUIC override policy for TargetHttpsProxy.", + "httpMethod": "POST", + "id": "compute.targetHttpsProxies.setQuicOverride", + "parameterOrder": [ + "project", + "targetHttpsProxy" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "targetHttpsProxy": { + "description": "Name of the TargetHttpsProxy resource to set the QUIC override policy for. The name should conform to RFC1035.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/targetHttpsProxies/{targetHttpsProxy}/setQuicOverride", + "request": { + "$ref": "TargetHttpsProxiesSetQuicOverrideRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setSslCertificates": { + "description": "Replaces SslCertificates for TargetHttpsProxy.", + "httpMethod": "POST", + "id": "compute.targetHttpsProxies.setSslCertificates", + "parameterOrder": [ + "project", + "targetHttpsProxy" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "targetHttpsProxy": { + "description": "Name of the TargetHttpsProxy resource to set an SslCertificates resource for.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/targetHttpsProxies/{targetHttpsProxy}/setSslCertificates", + "request": { + "$ref": "TargetHttpsProxiesSetSslCertificatesRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setSslPolicy": { + "description": "Sets the SSL policy for TargetHttpsProxy. The SSL policy specifies the server-side support for SSL features. This affects connections between clients and the HTTPS proxy load balancer. They do not affect the connection between the load balancer and the backends.", + "httpMethod": "POST", + "id": "compute.targetHttpsProxies.setSslPolicy", + "parameterOrder": [ + "project", + "targetHttpsProxy" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "targetHttpsProxy": { + "description": "Name of the TargetHttpsProxy resource whose SSL policy is to be set. The name must be 1-63 characters long, and comply with RFC1035.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/targetHttpsProxies/{targetHttpsProxy}/setSslPolicy", + "request": { + "$ref": "SslPolicyReference" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setUrlMap": { + "description": "Changes the URL map for TargetHttpsProxy.", + "httpMethod": "POST", + "id": "compute.targetHttpsProxies.setUrlMap", + "parameterOrder": [ + "project", + "targetHttpsProxy" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "targetHttpsProxy": { + "description": "Name of the TargetHttpsProxy resource whose URL map is to be set.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/targetHttpsProxies/{targetHttpsProxy}/setUrlMap", + "request": { + "$ref": "UrlMapReference" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource.", + "httpMethod": "POST", + "id": "compute.targetHttpsProxies.testIamPermissions", + "parameterOrder": [ + "project", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "(?:[-a-z0-9_]{0,62}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/targetHttpsProxies/{resource}/testIamPermissions", + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." } - } - } - } - }, - "OperationsScopedList": { - "id": "OperationsScopedList", - "type": "object", - "properties": { - "operations": { - "type": "array", - "description": "[Output Only] List of operations contained in this scope.", - "items": { - "$ref": "Operation" - } }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning which replaces the list of operations when the list is empty.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } + "targetInstances": { + "methods": { + "aggregatedList": { + "description": "Retrieves an aggregated list of target instances.", + "httpMethod": "GET", + "id": "compute.targetInstances.aggregatedList", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/aggregated/targetInstances", + "response": { + "$ref": "TargetInstanceAggregatedList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "delete": { + "description": "Deletes the specified TargetInstance resource.", + "httpMethod": "DELETE", + "id": "compute.targetInstances.delete", + "parameterOrder": [ + "project", + "zone", + "targetInstance" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "targetInstance": { + "description": "Name of the TargetInstance resource to delete.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "zone": { + "description": "Name of the zone scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/targetInstances/{targetInstance}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Returns the specified TargetInstance resource. Get a list of available target instances by making a list() request.", + "httpMethod": "GET", + "id": "compute.targetInstances.get", + "parameterOrder": [ + "project", + "zone", + "targetInstance" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "targetInstance": { + "description": "Name of the TargetInstance resource to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "zone": { + "description": "Name of the zone scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/targetInstances/{targetInstance}", + "response": { + "$ref": "TargetInstance" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "description": "Creates a TargetInstance resource in the specified project and zone using the data included in the request.", + "httpMethod": "POST", + "id": "compute.targetInstances.insert", + "parameterOrder": [ + "project", + "zone" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "Name of the zone scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/targetInstances", + "request": { + "$ref": "TargetInstance" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "description": "Retrieves a list of TargetInstance resources available to the specified project and zone.", + "httpMethod": "GET", + "id": "compute.targetInstances.list", + "parameterOrder": [ + "project", + "zone" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "zone": { + "description": "Name of the zone scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/targetInstances", + "response": { + "$ref": "TargetInstanceList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource.", + "httpMethod": "POST", + "id": "compute.targetInstances.testIamPermissions", + "parameterOrder": [ + "project", + "zone", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/targetInstances/{resource}/testIamPermissions", + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." } - } - } - } - }, - "PathMatcher": { - "id": "PathMatcher", - "type": "object", - "description": "A matcher for the path portion of the URL. The BackendService from the longest-matched rule will serve the URL. If no rule was matched, the default service will be used.", - "properties": { - "defaultService": { - "type": "string", - "description": "The full or partial URL to the BackendService resource. This will be used if none of the pathRules defined by this PathMatcher is matched by the URL's path portion. For example, the following are all valid URLs to a BackendService resource: \n- https://www.googleapis.com/compute/v1/projects/project/global/backendServices/backendService \n- compute/v1/projects/project/global/backendServices/backendService \n- global/backendServices/backendService" }, - "description": { - "type": "string", - "description": "An optional description of this resource. Provide this property when you create the resource." + "targetPools": { + "methods": { + "addHealthCheck": { + "description": "Adds health check URLs to a target pool.", + "httpMethod": "POST", + "id": "compute.targetPools.addHealthCheck", + "parameterOrder": [ + "project", + "region", + "targetPool" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "targetPool": { + "description": "Name of the target pool to add a health check to.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/targetPools/{targetPool}/addHealthCheck", + "request": { + "$ref": "TargetPoolsAddHealthCheckRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "addInstance": { + "description": "Adds an instance to a target pool.", + "httpMethod": "POST", + "id": "compute.targetPools.addInstance", + "parameterOrder": [ + "project", + "region", + "targetPool" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "targetPool": { + "description": "Name of the TargetPool resource to add instances to.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/targetPools/{targetPool}/addInstance", + "request": { + "$ref": "TargetPoolsAddInstanceRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "aggregatedList": { + "description": "Retrieves an aggregated list of target pools.", + "httpMethod": "GET", + "id": "compute.targetPools.aggregatedList", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/aggregated/targetPools", + "response": { + "$ref": "TargetPoolAggregatedList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "delete": { + "description": "Deletes the specified target pool.", + "httpMethod": "DELETE", + "id": "compute.targetPools.delete", + "parameterOrder": [ + "project", + "region", + "targetPool" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "targetPool": { + "description": "Name of the TargetPool resource to delete.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/targetPools/{targetPool}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Returns the specified target pool. Get a list of available target pools by making a list() request.", + "httpMethod": "GET", + "id": "compute.targetPools.get", + "parameterOrder": [ + "project", + "region", + "targetPool" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "targetPool": { + "description": "Name of the TargetPool resource to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/targetPools/{targetPool}", + "response": { + "$ref": "TargetPool" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "getHealth": { + "description": "Gets the most recent health check results for each IP for the instance that is referenced by the given target pool.", + "httpMethod": "POST", + "id": "compute.targetPools.getHealth", + "parameterOrder": [ + "project", + "region", + "targetPool" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "targetPool": { + "description": "Name of the TargetPool resource to which the queried instance belongs.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/targetPools/{targetPool}/getHealth", + "request": { + "$ref": "InstanceReference" + }, + "response": { + "$ref": "TargetPoolInstanceHealth" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "description": "Creates a target pool in the specified project and region using the data included in the request.", + "httpMethod": "POST", + "id": "compute.targetPools.insert", + "parameterOrder": [ + "project", + "region" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/regions/{region}/targetPools", + "request": { + "$ref": "TargetPool" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "description": "Retrieves a list of target pools available to the specified project and region.", + "httpMethod": "GET", + "id": "compute.targetPools.list", + "parameterOrder": [ + "project", + "region" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/targetPools", + "response": { + "$ref": "TargetPoolList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "removeHealthCheck": { + "description": "Removes health check URL from a target pool.", + "httpMethod": "POST", + "id": "compute.targetPools.removeHealthCheck", + "parameterOrder": [ + "project", + "region", + "targetPool" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "targetPool": { + "description": "Name of the target pool to remove health checks from.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/targetPools/{targetPool}/removeHealthCheck", + "request": { + "$ref": "TargetPoolsRemoveHealthCheckRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "removeInstance": { + "description": "Removes instance URL from a target pool.", + "httpMethod": "POST", + "id": "compute.targetPools.removeInstance", + "parameterOrder": [ + "project", + "region", + "targetPool" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "targetPool": { + "description": "Name of the TargetPool resource to remove instances from.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/targetPools/{targetPool}/removeInstance", + "request": { + "$ref": "TargetPoolsRemoveInstanceRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setBackup": { + "description": "Changes a backup target pool's configurations.", + "httpMethod": "POST", + "id": "compute.targetPools.setBackup", + "parameterOrder": [ + "project", + "region", + "targetPool" + ], + "parameters": { + "failoverRatio": { + "description": "New failoverRatio value for the target pool.", + "format": "float", + "location": "query", + "type": "number" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "targetPool": { + "description": "Name of the TargetPool resource to set a backup pool for.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/targetPools/{targetPool}/setBackup", + "request": { + "$ref": "TargetReference" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource.", + "httpMethod": "POST", + "id": "compute.targetPools.testIamPermissions", + "parameterOrder": [ + "project", + "region", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "The name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/targetPools/{resource}/testIamPermissions", + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + } + } }, - "name": { - "type": "string", - "description": "The name to which this PathMatcher is referred by the HostRule." + "targetSslProxies": { + "methods": { + "delete": { + "description": "Deletes the specified TargetSslProxy resource.", + "httpMethod": "DELETE", + "id": "compute.targetSslProxies.delete", + "parameterOrder": [ + "project", + "targetSslProxy" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "targetSslProxy": { + "description": "Name of the TargetSslProxy resource to delete.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/targetSslProxies/{targetSslProxy}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Returns the specified TargetSslProxy resource. Get a list of available target SSL proxies by making a list() request.", + "httpMethod": "GET", + "id": "compute.targetSslProxies.get", + "parameterOrder": [ + "project", + "targetSslProxy" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "targetSslProxy": { + "description": "Name of the TargetSslProxy resource to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/targetSslProxies/{targetSslProxy}", + "response": { + "$ref": "TargetSslProxy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "description": "Creates a TargetSslProxy resource in the specified project using the data included in the request.", + "httpMethod": "POST", + "id": "compute.targetSslProxies.insert", + "parameterOrder": [ + "project" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/targetSslProxies", + "request": { + "$ref": "TargetSslProxy" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "description": "Retrieves the list of TargetSslProxy resources available to the specified project.", + "httpMethod": "GET", + "id": "compute.targetSslProxies.list", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/targetSslProxies", + "response": { + "$ref": "TargetSslProxyList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "setBackendService": { + "description": "Changes the BackendService for TargetSslProxy.", + "httpMethod": "POST", + "id": "compute.targetSslProxies.setBackendService", + "parameterOrder": [ + "project", + "targetSslProxy" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "targetSslProxy": { + "description": "Name of the TargetSslProxy resource whose BackendService resource is to be set.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/targetSslProxies/{targetSslProxy}/setBackendService", + "request": { + "$ref": "TargetSslProxiesSetBackendServiceRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setProxyHeader": { + "description": "Changes the ProxyHeaderType for TargetSslProxy.", + "httpMethod": "POST", + "id": "compute.targetSslProxies.setProxyHeader", + "parameterOrder": [ + "project", + "targetSslProxy" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "targetSslProxy": { + "description": "Name of the TargetSslProxy resource whose ProxyHeader is to be set.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/targetSslProxies/{targetSslProxy}/setProxyHeader", + "request": { + "$ref": "TargetSslProxiesSetProxyHeaderRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setSslCertificates": { + "description": "Changes SslCertificates for TargetSslProxy.", + "httpMethod": "POST", + "id": "compute.targetSslProxies.setSslCertificates", + "parameterOrder": [ + "project", + "targetSslProxy" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "targetSslProxy": { + "description": "Name of the TargetSslProxy resource whose SslCertificate resource is to be set.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/targetSslProxies/{targetSslProxy}/setSslCertificates", + "request": { + "$ref": "TargetSslProxiesSetSslCertificatesRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setSslPolicy": { + "description": "Sets the SSL policy for TargetSslProxy. The SSL policy specifies the server-side support for SSL features. This affects connections between clients and the SSL proxy load balancer. They do not affect the connection between the load balancer and the backends.", + "httpMethod": "POST", + "id": "compute.targetSslProxies.setSslPolicy", + "parameterOrder": [ + "project", + "targetSslProxy" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "targetSslProxy": { + "description": "Name of the TargetSslProxy resource whose SSL policy is to be set. The name must be 1-63 characters long, and comply with RFC1035.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/targetSslProxies/{targetSslProxy}/setSslPolicy", + "request": { + "$ref": "SslPolicyReference" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource.", + "httpMethod": "POST", + "id": "compute.targetSslProxies.testIamPermissions", + "parameterOrder": [ + "project", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "(?:[-a-z0-9_]{0,62}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/targetSslProxies/{resource}/testIamPermissions", + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + } + } }, - "pathRules": { - "type": "array", - "description": "The list of path rules.", - "items": { - "$ref": "PathRule" - } - } - } - }, - "PathRule": { - "id": "PathRule", - "type": "object", - "description": "A path-matching rule for a URL. If matched, will use the specified BackendService to handle the traffic arriving at this URL.", - "properties": { - "paths": { - "type": "array", - "description": "The list of path patterns to match. Each must start with / and the only place a * is allowed is at the end following a /. The string fed to the path matcher does not include any text after the first ? or #, and those chars are not allowed here.", - "items": { - "type": "string" - } + "targetTcpProxies": { + "methods": { + "delete": { + "description": "Deletes the specified TargetTcpProxy resource.", + "httpMethod": "DELETE", + "id": "compute.targetTcpProxies.delete", + "parameterOrder": [ + "project", + "targetTcpProxy" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "targetTcpProxy": { + "description": "Name of the TargetTcpProxy resource to delete.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/targetTcpProxies/{targetTcpProxy}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Returns the specified TargetTcpProxy resource. Get a list of available target TCP proxies by making a list() request.", + "httpMethod": "GET", + "id": "compute.targetTcpProxies.get", + "parameterOrder": [ + "project", + "targetTcpProxy" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "targetTcpProxy": { + "description": "Name of the TargetTcpProxy resource to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/targetTcpProxies/{targetTcpProxy}", + "response": { + "$ref": "TargetTcpProxy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "description": "Creates a TargetTcpProxy resource in the specified project using the data included in the request.", + "httpMethod": "POST", + "id": "compute.targetTcpProxies.insert", + "parameterOrder": [ + "project" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/targetTcpProxies", + "request": { + "$ref": "TargetTcpProxy" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "description": "Retrieves the list of TargetTcpProxy resources available to the specified project.", + "httpMethod": "GET", + "id": "compute.targetTcpProxies.list", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/targetTcpProxies", + "response": { + "$ref": "TargetTcpProxyList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "setBackendService": { + "description": "Changes the BackendService for TargetTcpProxy.", + "httpMethod": "POST", + "id": "compute.targetTcpProxies.setBackendService", + "parameterOrder": [ + "project", + "targetTcpProxy" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "targetTcpProxy": { + "description": "Name of the TargetTcpProxy resource whose BackendService resource is to be set.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/targetTcpProxies/{targetTcpProxy}/setBackendService", + "request": { + "$ref": "TargetTcpProxiesSetBackendServiceRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setProxyHeader": { + "description": "Changes the ProxyHeaderType for TargetTcpProxy.", + "httpMethod": "POST", + "id": "compute.targetTcpProxies.setProxyHeader", + "parameterOrder": [ + "project", + "targetTcpProxy" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "targetTcpProxy": { + "description": "Name of the TargetTcpProxy resource whose ProxyHeader is to be set.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/targetTcpProxies/{targetTcpProxy}/setProxyHeader", + "request": { + "$ref": "TargetTcpProxiesSetProxyHeaderRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource.", + "httpMethod": "POST", + "id": "compute.targetTcpProxies.testIamPermissions", + "parameterOrder": [ + "project", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "(?:[-a-z0-9_]{0,62}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/targetTcpProxies/{resource}/testIamPermissions", + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + } + } }, - "service": { - "type": "string", - "description": "The URL of the BackendService resource if this rule is matched." - } - } - }, - "PerInstanceConfig": { - "id": "PerInstanceConfig", - "type": "object", - "properties": { - "instance": { - "type": "string", - "description": "The URL of the instance. Serves as a merge key during UpdatePerInstanceConfigs operation." + "targetVpnGateways": { + "methods": { + "aggregatedList": { + "description": "Retrieves an aggregated list of target VPN gateways.", + "httpMethod": "GET", + "id": "compute.targetVpnGateways.aggregatedList", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/aggregated/targetVpnGateways", + "response": { + "$ref": "TargetVpnGatewayAggregatedList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "delete": { + "description": "Deletes the specified target VPN gateway.", + "httpMethod": "DELETE", + "id": "compute.targetVpnGateways.delete", + "parameterOrder": [ + "project", + "region", + "targetVpnGateway" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "targetVpnGateway": { + "description": "Name of the target VPN gateway to delete.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/targetVpnGateways/{targetVpnGateway}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Returns the specified target VPN gateway. Get a list of available target VPN gateways by making a list() request.", + "httpMethod": "GET", + "id": "compute.targetVpnGateways.get", + "parameterOrder": [ + "project", + "region", + "targetVpnGateway" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "targetVpnGateway": { + "description": "Name of the target VPN gateway to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/targetVpnGateways/{targetVpnGateway}", + "response": { + "$ref": "TargetVpnGateway" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "description": "Creates a target VPN gateway in the specified project and region using the data included in the request.", + "httpMethod": "POST", + "id": "compute.targetVpnGateways.insert", + "parameterOrder": [ + "project", + "region" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/regions/{region}/targetVpnGateways", + "request": { + "$ref": "TargetVpnGateway" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "description": "Retrieves a list of target VPN gateways available to the specified project and region.", + "httpMethod": "GET", + "id": "compute.targetVpnGateways.list", + "parameterOrder": [ + "project", + "region" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/targetVpnGateways", + "response": { + "$ref": "TargetVpnGatewayList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "setLabels": { + "description": "Sets the labels on a TargetVpnGateway. To learn more about labels, read the Labeling Resources documentation.", + "httpMethod": "POST", + "id": "compute.targetVpnGateways.setLabels", + "parameterOrder": [ + "project", + "region", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "The region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/targetVpnGateways/{resource}/setLabels", + "request": { + "$ref": "RegionSetLabelsRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource.", + "httpMethod": "POST", + "id": "compute.targetVpnGateways.testIamPermissions", + "parameterOrder": [ + "project", + "region", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "The name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/targetVpnGateways/{resource}/testIamPermissions", + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + } + } }, - "override": { - "$ref": "ManagedInstanceOverride" - } - } - }, - "Policy": { - "id": "Policy", - "type": "object", - "description": "Defines an Identity and Access Management (IAM) policy. It is used to specify access control policies for Cloud Platform resources.\n\n\n\nA `Policy` consists of a list of `bindings`. A `Binding` binds a list of `members` to a `role`, where the members can be user accounts, Google groups, Google domains, and service accounts. A `role` is a named list of permissions defined by IAM.\n\n**Example**\n\n{ \"bindings\": [ { \"role\": \"roles/owner\", \"members\": [ \"user:mike@example.com\", \"group:admins@example.com\", \"domain:google.com\", \"serviceAccount:my-other-app@appspot.gserviceaccount.com\", ] }, { \"role\": \"roles/viewer\", \"members\": [\"user:sean@example.com\"] } ] }\n\nFor a description of IAM and its features, see the [IAM developer's guide](https://cloud.google.com/iam).", - "properties": { - "auditConfigs": { - "type": "array", - "description": "Specifies cloud audit logging configuration for this policy.", - "items": { - "$ref": "AuditConfig" - } + "urlMaps": { + "methods": { + "delete": { + "description": "Deletes the specified UrlMap resource.", + "httpMethod": "DELETE", + "id": "compute.urlMaps.delete", + "parameterOrder": [ + "project", + "urlMap" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "urlMap": { + "description": "Name of the UrlMap resource to delete.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/urlMaps/{urlMap}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Returns the specified UrlMap resource. Get a list of available URL maps by making a list() request.", + "httpMethod": "GET", + "id": "compute.urlMaps.get", + "parameterOrder": [ + "project", + "urlMap" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "urlMap": { + "description": "Name of the UrlMap resource to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/urlMaps/{urlMap}", + "response": { + "$ref": "UrlMap" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "description": "Creates a UrlMap resource in the specified project using the data included in the request.", + "httpMethod": "POST", + "id": "compute.urlMaps.insert", + "parameterOrder": [ + "project" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/urlMaps", + "request": { + "$ref": "UrlMap" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "invalidateCache": { + "description": "Initiates a cache invalidation operation, invalidating the specified path, scoped to the specified UrlMap.", + "httpMethod": "POST", + "id": "compute.urlMaps.invalidateCache", + "parameterOrder": [ + "project", + "urlMap" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "urlMap": { + "description": "Name of the UrlMap scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/urlMaps/{urlMap}/invalidateCache", + "request": { + "$ref": "CacheInvalidationRule" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "description": "Retrieves the list of UrlMap resources available to the specified project.", + "httpMethod": "GET", + "id": "compute.urlMaps.list", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/urlMaps", + "response": { + "$ref": "UrlMapList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "patch": { + "description": "Patches the specified UrlMap resource with the data included in the request. This method supports PATCH semantics and uses the JSON merge patch format and processing rules.", + "httpMethod": "PATCH", + "id": "compute.urlMaps.patch", + "parameterOrder": [ + "project", + "urlMap" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "urlMap": { + "description": "Name of the UrlMap resource to patch.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/urlMaps/{urlMap}", + "request": { + "$ref": "UrlMap" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource.", + "httpMethod": "POST", + "id": "compute.urlMaps.testIamPermissions", + "parameterOrder": [ + "project", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "(?:[-a-z0-9_]{0,62}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/urlMaps/{resource}/testIamPermissions", + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "update": { + "description": "Updates the specified UrlMap resource with the data included in the request.", + "httpMethod": "PUT", + "id": "compute.urlMaps.update", + "parameterOrder": [ + "project", + "urlMap" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "urlMap": { + "description": "Name of the UrlMap resource to update.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/urlMaps/{urlMap}", + "request": { + "$ref": "UrlMap" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "validate": { + "description": "Runs static validation for the UrlMap. In particular, the tests of the provided UrlMap will be run. Calling this method does NOT create the UrlMap.", + "httpMethod": "POST", + "id": "compute.urlMaps.validate", + "parameterOrder": [ + "project", + "urlMap" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "urlMap": { + "description": "Name of the UrlMap resource to be validated as.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/urlMaps/{urlMap}/validate", + "request": { + "$ref": "UrlMapsValidateRequest" + }, + "response": { + "$ref": "UrlMapsValidateResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + } + } }, - "bindings": { - "type": "array", - "description": "Associates a list of `members` to a `role`. `bindings` with no members will result in an error.", - "items": { - "$ref": "Binding" - } + "vpnTunnels": { + "methods": { + "aggregatedList": { + "description": "Retrieves an aggregated list of VPN tunnels.", + "httpMethod": "GET", + "id": "compute.vpnTunnels.aggregatedList", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/aggregated/vpnTunnels", + "response": { + "$ref": "VpnTunnelAggregatedList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "delete": { + "description": "Deletes the specified VpnTunnel resource.", + "httpMethod": "DELETE", + "id": "compute.vpnTunnels.delete", + "parameterOrder": [ + "project", + "region", + "vpnTunnel" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "vpnTunnel": { + "description": "Name of the VpnTunnel resource to delete.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/vpnTunnels/{vpnTunnel}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Returns the specified VpnTunnel resource. Get a list of available VPN tunnels by making a list() request.", + "httpMethod": "GET", + "id": "compute.vpnTunnels.get", + "parameterOrder": [ + "project", + "region", + "vpnTunnel" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "vpnTunnel": { + "description": "Name of the VpnTunnel resource to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/vpnTunnels/{vpnTunnel}", + "response": { + "$ref": "VpnTunnel" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "description": "Creates a VpnTunnel resource in the specified project and region using the data included in the request.", + "httpMethod": "POST", + "id": "compute.vpnTunnels.insert", + "parameterOrder": [ + "project", + "region" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/regions/{region}/vpnTunnels", + "request": { + "$ref": "VpnTunnel" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "description": "Retrieves a list of VpnTunnel resources contained in the specified project and region.", + "httpMethod": "GET", + "id": "compute.vpnTunnels.list", + "parameterOrder": [ + "project", + "region" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/vpnTunnels", + "response": { + "$ref": "VpnTunnelList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "setLabels": { + "description": "Sets the labels on a VpnTunnel. To learn more about labels, read the Labeling Resources documentation.", + "httpMethod": "POST", + "id": "compute.vpnTunnels.setLabels", + "parameterOrder": [ + "project", + "region", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "The region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/vpnTunnels/{resource}/setLabels", + "request": { + "$ref": "RegionSetLabelsRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource.", + "httpMethod": "POST", + "id": "compute.vpnTunnels.testIamPermissions", + "parameterOrder": [ + "project", + "region", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "The name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/vpnTunnels/{resource}/testIamPermissions", + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + } + } }, - "etag": { - "type": "string", - "description": "`etag` is used for optimistic concurrency control as a way to help prevent simultaneous updates of a policy from overwriting each other. It is strongly suggested that systems make use of the `etag` in the read-modify-write cycle to perform policy updates in order to avoid race conditions: An `etag` is returned in the response to `getIamPolicy`, and systems are expected to put that etag in the request to `setIamPolicy` to ensure that their change will be applied to the same version of the policy.\n\nIf no `etag` is provided in the call to `setIamPolicy`, then the existing policy is overwritten blindly.", - "format": "byte" - }, - "iamOwned": { - "type": "boolean", - "description": "" - }, - "rules": { - "type": "array", - "description": "If more than one rule is specified, the rules are applied in the following manner: - All matching LOG rules are always applied. - If any DENY/DENY_WITH_LOG rule matches, permission is denied. Logging will be applied if one or more matching rule requires logging. - Otherwise, if any ALLOW/ALLOW_WITH_LOG rule matches, permission is granted. Logging will be applied if one or more matching rule requires logging. - Otherwise, if no rule applies, permission is denied.", - "items": { - "$ref": "Rule" - } - }, - "version": { - "type": "integer", - "description": "Version of the `Policy`. The default version is 0.", - "format": "int32" - } - } - }, - "Project": { - "id": "Project", - "type": "object", - "description": "A Project resource. For an overview of projects, see Cloud Platform Resource Hierarchy. (== resource_for v1.projects ==) (== resource_for beta.projects ==)", - "properties": { - "commonInstanceMetadata": { - "$ref": "Metadata", - "description": "Metadata key/value pairs available to all instances contained in this project. See Custom metadata for more information." - }, - "creationTimestamp": { - "type": "string", - "description": "[Output Only] Creation timestamp in RFC3339 text format." - }, - "defaultNetworkTier": { - "type": "string", - "description": "This signifies the default network tier used for configuring resources of the project and can only take the following values: PREMIUM, STANDARD. Initially the default network tier is PREMIUM.", - "enum": [ - "PREMIUM", - "SELECT", - "STANDARD" - ], - "enumDescriptions": [ - "", - "", - "" - ] - }, - "defaultServiceAccount": { - "type": "string", - "description": "[Output Only] Default service account used by VMs running in this project." - }, - "description": { - "type": "string", - "description": "An optional textual description of the resource." - }, - "enabledFeatures": { - "type": "array", - "description": "Restricted features enabled for use on this project.", - "items": { - "type": "string" - } - }, - "id": { - "type": "string", - "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server. This is not the project ID, and is just a unique ID used by Compute Engine to identify resources.", - "format": "uint64" - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of the resource. Always compute#project for projects.", - "default": "compute#project" - }, - "name": { - "type": "string", - "description": "The project ID. For example: my-example-project. Use the project ID to make requests to Compute Engine." - }, - "quotas": { - "type": "array", - "description": "[Output Only] Quotas assigned to this project.", - "items": { - "$ref": "Quota" - } - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for the resource." - }, - "usageExportLocation": { - "$ref": "UsageExportLocation", - "description": "The naming prefix for daily usage reports and the Google Cloud Storage bucket where they are stored." - }, - "xpnProjectStatus": { - "type": "string", - "description": "[Output Only] The role this project has in a shared VPC configuration. Currently only HOST projects are differentiated.", - "enum": [ - "HOST", - "UNSPECIFIED_XPN_PROJECT_STATUS" - ], - "enumDescriptions": [ - "", - "" - ] - } - } - }, - "ProjectsDisableXpnResourceRequest": { - "id": "ProjectsDisableXpnResourceRequest", - "type": "object", - "properties": { - "xpnResource": { - "$ref": "XpnResourceId", - "description": "Service resource (a.k.a service project) ID." - } - } - }, - "ProjectsEnableXpnResourceRequest": { - "id": "ProjectsEnableXpnResourceRequest", - "type": "object", - "properties": { - "xpnResource": { - "$ref": "XpnResourceId", - "description": "Service resource (a.k.a service project) ID." - } - } - }, - "ProjectsGetXpnResources": { - "id": "ProjectsGetXpnResources", - "type": "object", - "properties": { - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#projectsGetXpnResources for lists of service resources (a.k.a service projects)", - "default": "compute#projectsGetXpnResources" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "resources": { - "type": "array", - "description": "Service resources (a.k.a service projects) attached to this project as their shared VPC host.", - "items": { - "$ref": "XpnResourceId" - } - } - } - }, - "ProjectsListXpnHostsRequest": { - "id": "ProjectsListXpnHostsRequest", - "type": "object", - "properties": { - "organization": { - "type": "string", - "description": "Optional organization ID managed by Cloud Resource Manager, for which to list shared VPC host projects. If not specified, the organization will be inferred from the project." - } - } - }, - "ProjectsSetDefaultNetworkTierRequest": { - "id": "ProjectsSetDefaultNetworkTierRequest", - "type": "object", - "properties": { - "networkTier": { - "type": "string", - "description": "Default network tier to be set.", - "enum": [ - "PREMIUM", - "SELECT", - "STANDARD" - ], - "enumDescriptions": [ - "", - "", - "" - ] - } - } - }, - "ProjectsSetDefaultServiceAccountRequest": { - "id": "ProjectsSetDefaultServiceAccountRequest", - "type": "object", - "properties": { - "email": { - "type": "string", - "description": "Email address of the service account." - } - } - }, - "Quota": { - "id": "Quota", - "type": "object", - "description": "A quotas entry.", - "properties": { - "limit": { - "type": "number", - "description": "[Output Only] Quota limit for this metric.", - "format": "double" - }, - "metric": { - "type": "string", - "description": "[Output Only] Name of the quota metric.", - "enum": [ - "AMD_S9300_GPUS", - "AUTOSCALERS", - "BACKEND_BUCKETS", - "BACKEND_SERVICES", - "COMMITMENTS", - "CPUS", - "CPUS_ALL_REGIONS", - "DISKS_TOTAL_GB", - "FIREWALLS", - "FORWARDING_RULES", - "HEALTH_CHECKS", - "IMAGES", - "INSTANCES", - "INSTANCE_GROUPS", - "INSTANCE_GROUP_MANAGERS", - "INSTANCE_TEMPLATES", - "INTERCONNECTS", - "INTERNAL_ADDRESSES", - "IN_USE_ADDRESSES", - "LOCAL_SSD_TOTAL_GB", - "MAINTENANCE_POLICIES", - "NETWORKS", - "NVIDIA_K80_GPUS", - "NVIDIA_P100_GPUS", - "PREEMPTIBLE_CPUS", - "PREEMPTIBLE_LOCAL_SSD_GB", - "PREEMPTIBLE_NVIDIA_K80_GPUS", - "PREEMPTIBLE_NVIDIA_P100_GPUS", - "REGIONAL_AUTOSCALERS", - "REGIONAL_INSTANCE_GROUP_MANAGERS", - "ROUTERS", - "ROUTES", - "SECURITY_POLICIES", - "SECURITY_POLICY_RULES", - "SNAPSHOTS", - "SSD_TOTAL_GB", - "SSL_CERTIFICATES", - "STATIC_ADDRESSES", - "SUBNETWORKS", - "TARGET_HTTPS_PROXIES", - "TARGET_HTTP_PROXIES", - "TARGET_INSTANCES", - "TARGET_POOLS", - "TARGET_SSL_PROXIES", - "TARGET_TCP_PROXIES", - "TARGET_VPN_GATEWAYS", - "URL_MAPS", - "VPN_TUNNELS" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "usage": { - "type": "number", - "description": "[Output Only] Current usage of this metric.", - "format": "double" - } - } - }, - "Reference": { - "id": "Reference", - "type": "object", - "description": "Represents a reference to a resource.", - "properties": { - "kind": { - "type": "string", - "description": "[Output Only] Type of the resource. Always compute#reference for references.", - "default": "compute#reference" - }, - "referenceType": { - "type": "string", - "description": "A description of the reference type with no implied semantics. Possible values include: \n- MEMBER_OF" - }, - "referrer": { - "type": "string", - "description": "URL of the resource which refers to the target." - }, - "target": { - "type": "string", - "description": "URL of the resource to which this reference points." - } - } - }, - "Region": { - "id": "Region", - "type": "object", - "description": "Region resource. (== resource_for beta.regions ==) (== resource_for v1.regions ==)", - "properties": { - "creationTimestamp": { - "type": "string", - "description": "[Output Only] Creation timestamp in RFC3339 text format." - }, - "deprecated": { - "$ref": "DeprecationStatus", - "description": "[Output Only] The deprecation status associated with this region." - }, - "description": { - "type": "string", - "description": "[Output Only] Textual description of the resource." - }, - "id": { - "type": "string", - "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", - "format": "uint64" - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of the resource. Always compute#region for regions.", - "default": "compute#region" - }, - "name": { - "type": "string", - "description": "[Output Only] Name of the resource." - }, - "quotas": { - "type": "array", - "description": "[Output Only] Quotas assigned to this region.", - "items": { - "$ref": "Quota" - } - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for the resource." - }, - "status": { - "type": "string", - "description": "[Output Only] Status of the region, either UP or DOWN.", - "enum": [ - "DOWN", - "UP" - ], - "enumDescriptions": [ - "", - "" - ] + "zoneOperations": { + "methods": { + "delete": { + "description": "Deletes the specified zone-specific Operations resource.", + "httpMethod": "DELETE", + "id": "compute.zoneOperations.delete", + "parameterOrder": [ + "project", + "zone", + "operation" + ], + "parameters": { + "operation": { + "description": "Name of the Operations resource to delete.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "zone": { + "description": "Name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/operations/{operation}", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Retrieves the specified zone-specific Operations resource.", + "httpMethod": "GET", + "id": "compute.zoneOperations.get", + "parameterOrder": [ + "project", + "zone", + "operation" + ], + "parameters": { + "operation": { + "description": "Name of the Operations resource to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "zone": { + "description": "Name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/operations/{operation}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "list": { + "description": "Retrieves a list of Operation resources contained within the specified zone.", + "httpMethod": "GET", + "id": "compute.zoneOperations.list", + "parameterOrder": [ + "project", + "zone" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "zone": { + "description": "Name of the zone for request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/operations", + "response": { + "$ref": "OperationList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + } + } }, "zones": { - "type": "array", - "description": "[Output Only] A list of zones available in this region, in the form of resource URLs.", - "items": { - "type": "string" - } - } - } - }, - "RegionAutoscalerList": { - "id": "RegionAutoscalerList", - "type": "object", - "description": "Contains a list of autoscalers.", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "array", - "description": "A list of Autoscaler resources.", - "items": { - "$ref": "Autoscaler" - } - }, - "kind": { - "type": "string", - "description": "Type of resource.", - "default": "compute#regionAutoscalerList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "RegionDiskTypeList": { - "id": "RegionDiskTypeList", - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "array", - "description": "A list of DiskType resources.", - "items": { - "$ref": "DiskType" - } - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#regionDiskTypeList for region disk types.", - "default": "compute#regionDiskTypeList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "RegionDisksResizeRequest": { - "id": "RegionDisksResizeRequest", - "type": "object", - "properties": { - "sizeGb": { - "type": "string", - "description": "The new size of the regional persistent disk, which is specified in GB.", - "format": "int64" - } - } - }, - "RegionInstanceGroupList": { - "id": "RegionInstanceGroupList", - "type": "object", - "description": "Contains a list of InstanceGroup resources.", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "array", - "description": "A list of InstanceGroup resources.", - "items": { - "$ref": "InstanceGroup" - } - }, - "kind": { - "type": "string", - "description": "The resource type.", - "default": "compute#regionInstanceGroupList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "RegionInstanceGroupManagerDeleteInstanceConfigReq": { - "id": "RegionInstanceGroupManagerDeleteInstanceConfigReq", - "type": "object", - "description": "RegionInstanceGroupManagers.deletePerInstanceConfigs", - "properties": { - "instances": { - "type": "array", - "description": "The list of instances for which we want to delete per-instance configs on this managed instance group.", - "items": { - "type": "string" - } - } - } - }, - "RegionInstanceGroupManagerList": { - "id": "RegionInstanceGroupManagerList", - "type": "object", - "description": "Contains a list of managed instance groups.", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "array", - "description": "A list of InstanceGroupManager resources.", - "items": { - "$ref": "InstanceGroupManager" - } - }, - "kind": { - "type": "string", - "description": "[Output Only] The resource type, which is always compute#instanceGroupManagerList for a list of managed instance groups that exist in th regional scope.", - "default": "compute#regionInstanceGroupManagerList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "RegionInstanceGroupManagerUpdateInstanceConfigReq": { - "id": "RegionInstanceGroupManagerUpdateInstanceConfigReq", - "type": "object", - "description": "RegionInstanceGroupManagers.updatePerInstanceConfigs", - "properties": { - "perInstanceConfigs": { - "type": "array", - "description": "The list of per-instance configs to insert or patch on this managed instance group.", - "items": { - "$ref": "PerInstanceConfig" - } - } - } - }, - "RegionInstanceGroupManagersAbandonInstancesRequest": { - "id": "RegionInstanceGroupManagersAbandonInstancesRequest", - "type": "object", - "properties": { - "instances": { - "type": "array", - "description": "The URLs of one or more instances to abandon. This can be a full URL or a partial URL, such as zones/[ZONE]/instances/[INSTANCE_NAME].", - "items": { - "type": "string" - } - } - } - }, - "RegionInstanceGroupManagersApplyUpdatesRequest": { - "id": "RegionInstanceGroupManagersApplyUpdatesRequest", - "type": "object", - "description": "InstanceGroupManagers.applyUpdatesToInstances", - "properties": { - "instances": { - "type": "array", - "description": "The list of instances for which we want to apply changes on this managed instance group.", - "items": { - "type": "string" - } - }, - "maximalAction": { - "type": "string", - "description": "The maximal action that should be perfomed on the instances. By default REPLACE.", - "enum": [ - "NONE", - "REFRESH", - "REPLACE", - "RESTART" - ], - "enumDescriptions": [ - "", - "", - "", - "" - ] - }, - "minimalAction": { - "type": "string", - "description": "The minimal action that should be perfomed on the instances. By default NONE.", - "enum": [ - "NONE", - "REFRESH", - "REPLACE", - "RESTART" - ], - "enumDescriptions": [ - "", - "", - "", - "" - ] - } - } - }, - "RegionInstanceGroupManagersDeleteInstancesRequest": { - "id": "RegionInstanceGroupManagersDeleteInstancesRequest", - "type": "object", - "properties": { - "instances": { - "type": "array", - "description": "The URLs of one or more instances to delete. This can be a full URL or a partial URL, such as zones/[ZONE]/instances/[INSTANCE_NAME].", - "items": { - "type": "string" - } - } - } - }, - "RegionInstanceGroupManagersListInstanceConfigsResp": { - "id": "RegionInstanceGroupManagersListInstanceConfigsResp", - "type": "object", - "properties": { - "items": { - "type": "array", - "description": "[Output Only] The list of PerInstanceConfig.", - "items": { - "$ref": "PerInstanceConfig" - } - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "RegionInstanceGroupManagersListInstancesResponse": { - "id": "RegionInstanceGroupManagersListInstancesResponse", - "type": "object", - "properties": { - "managedInstances": { - "type": "array", - "description": "List of managed instances.", - "items": { - "$ref": "ManagedInstance" - } - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - } - } - }, - "RegionInstanceGroupManagersRecreateRequest": { - "id": "RegionInstanceGroupManagersRecreateRequest", - "type": "object", - "properties": { - "instances": { - "type": "array", - "description": "The URLs of one or more instances to recreate. This can be a full URL or a partial URL, such as zones/[ZONE]/instances/[INSTANCE_NAME].", - "items": { - "type": "string" - } - } - } - }, - "RegionInstanceGroupManagersSetAutoHealingRequest": { - "id": "RegionInstanceGroupManagersSetAutoHealingRequest", - "type": "object", - "properties": { - "autoHealingPolicies": { - "type": "array", - "items": { - "$ref": "InstanceGroupManagerAutoHealingPolicy" - } - } - } - }, - "RegionInstanceGroupManagersSetTargetPoolsRequest": { - "id": "RegionInstanceGroupManagersSetTargetPoolsRequest", - "type": "object", - "properties": { - "fingerprint": { - "type": "string", - "description": "Fingerprint of the target pools information, which is a hash of the contents. This field is used for optimistic locking when you update the target pool entries. This field is optional.", - "format": "byte" - }, - "targetPools": { - "type": "array", - "description": "The URL of all TargetPool resources to which instances in the instanceGroup field are added. The target pools automatically apply to all of the instances in the managed instance group.", - "items": { - "type": "string" - } - } - } - }, - "RegionInstanceGroupManagersSetTemplateRequest": { - "id": "RegionInstanceGroupManagersSetTemplateRequest", - "type": "object", - "properties": { - "instanceTemplate": { - "type": "string", - "description": "URL of the InstanceTemplate resource from which all new instances will be created." - } - } - }, - "RegionInstanceGroupsListInstances": { - "id": "RegionInstanceGroupsListInstances", - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "array", - "description": "A list of InstanceWithNamedPorts resources.", - "items": { - "$ref": "InstanceWithNamedPorts" - } - }, - "kind": { - "type": "string", - "description": "The resource type.", - "default": "compute#regionInstanceGroupsListInstances" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "RegionInstanceGroupsListInstancesRequest": { - "id": "RegionInstanceGroupsListInstancesRequest", - "type": "object", - "properties": { - "instanceState": { - "type": "string", - "description": "Instances in which state should be returned. Valid options are: 'ALL', 'RUNNING'. By default, it lists all instances.", - "enum": [ - "ALL", - "RUNNING" - ], - "enumDescriptions": [ - "", - "" - ] - }, - "portName": { - "type": "string", - "description": "Name of port user is interested in. It is optional. If it is set, only information about this ports will be returned. If it is not set, all the named ports will be returned. Always lists all instances.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" - } - } - }, - "RegionInstanceGroupsSetNamedPortsRequest": { - "id": "RegionInstanceGroupsSetNamedPortsRequest", - "type": "object", - "properties": { - "fingerprint": { - "type": "string", - "description": "The fingerprint of the named ports information for this instance group. Use this optional property to prevent conflicts when multiple users change the named ports settings concurrently. Obtain the fingerprint with the instanceGroups.get method. Then, include the fingerprint in your request to ensure that you do not overwrite changes that were applied from another concurrent request.", - "format": "byte" - }, - "namedPorts": { - "type": "array", - "description": "The list of named ports to set for this instance group.", - "items": { - "$ref": "NamedPort" - } - } - } - }, - "RegionList": { - "id": "RegionList", - "type": "object", - "description": "Contains a list of region resources.", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "array", - "description": "A list of Region resources.", - "items": { - "$ref": "Region" - } - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#regionList for lists of regions.", - "default": "compute#regionList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "RegionSetLabelsRequest": { - "id": "RegionSetLabelsRequest", - "type": "object", - "properties": { - "labelFingerprint": { - "type": "string", - "description": "The fingerprint of the previous set of labels for this resource, used to detect conflicts. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update labels. You must always provide an up-to-date fingerprint hash in order to update or change labels. Make a get() request to the resource to get the latest fingerprint.", - "format": "byte" - }, - "labels": { - "type": "object", - "description": "The labels to set for this resource.", - "additionalProperties": { - "type": "string" - } - } - } - }, - "ResourceCommitment": { - "id": "ResourceCommitment", - "type": "object", - "description": "Commitment for a particular resource (a Commitment is composed of one or more of these).", - "properties": { - "amount": { - "type": "string", - "description": "The amount of the resource purchased (in a type-dependent unit, such as bytes). For vCPUs, this can just be an integer. For memory, this must be provided in MB. Memory must be a multiple of 256 MB, with up to 6.5GB of memory per every vCPU.", - "format": "int64" - }, - "type": { - "type": "string", - "description": "Type of resource for which this commitment applies. Possible values are VCPU and MEMORY", - "enum": [ - "LOCAL_SSD", - "MEMORY", - "UNSPECIFIED", - "VCPU" - ], - "enumDescriptions": [ - "", - "", - "", - "" - ] - } - } - }, - "ResourceGroupReference": { - "id": "ResourceGroupReference", - "type": "object", - "properties": { - "group": { - "type": "string", - "description": "A URI referencing one of the instance groups listed in the backend service." - } - } - }, - "Route": { - "id": "Route", - "type": "object", - "description": "Represents a Route resource. A route specifies how certain packets should be handled by the network. Routes are associated with instances by tags and the set of routes for a particular instance is called its routing table.\n\nFor each packet leaving an instance, the system searches that instance's routing table for a single best matching route. Routes match packets by destination IP address, preferring smaller or more specific ranges over larger ones. If there is a tie, the system selects the route with the smallest priority value. If there is still a tie, it uses the layer three and four packet headers to select just one of the remaining matching routes. The packet is then forwarded as specified by the nextHop field of the winning route - either to another instance destination, an instance gateway, or a Google Compute Engine-operated gateway.\n\nPackets that do not match any route in the sending instance's routing table are dropped. (== resource_for beta.routes ==) (== resource_for v1.routes ==)", - "properties": { - "creationTimestamp": { - "type": "string", - "description": "[Output Only] Creation timestamp in RFC3339 text format." - }, - "description": { - "type": "string", - "description": "An optional description of this resource. Provide this property when you create the resource." - }, - "destRange": { - "type": "string", - "description": "The destination range of outgoing packets that this route applies to. Only IPv4 is supported.", - "annotations": { - "required": [ - "compute.routes.insert" - ] - } - }, - "id": { - "type": "string", - "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", - "format": "uint64" - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of this resource. Always compute#routes for Route resources.", - "default": "compute#route" - }, - "name": { - "type": "string", - "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "annotations": { - "required": [ - "compute.routes.insert" - ] - } - }, - "network": { - "type": "string", - "description": "Fully-qualified URL of the network that this route applies to.", - "annotations": { - "required": [ - "compute.routes.insert" - ] - } - }, - "nextHopGateway": { - "type": "string", - "description": "The URL to a gateway that should handle matching packets. You can only specify the internet gateway using a full or partial valid URL: projects/\u003cproject-id\u003e/global/gateways/default-internet-gateway" - }, - "nextHopInstance": { - "type": "string", - "description": "The URL to an instance that should handle matching packets. You can specify this as a full or partial URL. For example:\nhttps://www.googleapis.com/compute/v1/projects/project/zones/zone/instances/" - }, - "nextHopIp": { - "type": "string", - "description": "The network IP address of an instance that should handle matching packets. Only IPv4 is supported." - }, - "nextHopNetwork": { - "type": "string", - "description": "The URL of the local network if it should handle matching packets." - }, - "nextHopPeering": { - "type": "string", - "description": "[Output Only] The network peering name that should handle matching packets, which should conform to RFC1035." - }, - "nextHopVpnTunnel": { - "type": "string", - "description": "The URL to a VpnTunnel that should handle matching packets." - }, - "priority": { - "type": "integer", - "description": "The priority of this route. Priority is used to break ties in cases where there is more than one matching route of equal prefix length. In the case of two routes with equal prefix length, the one with the lowest-numbered priority value wins. Default value is 1000. Valid range is 0 through 65535.", - "format": "uint32", - "annotations": { - "required": [ - "compute.routes.insert" - ] - } - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined fully-qualified URL for this resource." - }, - "tags": { - "type": "array", - "description": "A list of instance tags to which this route applies.", - "items": { - "type": "string" - }, - "annotations": { - "required": [ - "compute.routes.insert" - ] - } - }, - "warnings": { - "type": "array", - "description": "[Output Only] If potential misconfigurations are detected for this route, this field will be populated with warning messages.", - "items": { - "type": "object", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." + "methods": { + "get": { + "description": "Returns the specified Zone resource. Get a list of available zones by making a list() request.", + "httpMethod": "GET", + "id": "compute.zones.get", + "parameterOrder": [ + "project", + "zone" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "zone": { + "description": "Name of the zone resource to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - } - }, - "RouteList": { - "id": "RouteList", - "type": "object", - "description": "Contains a list of Route resources.", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "array", - "description": "A list of Route resources.", - "items": { - "$ref": "Route" - } - }, - "kind": { - "type": "string", - "description": "Type of resource.", - "default": "compute#routeList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "Router": { - "id": "Router", - "type": "object", - "description": "Router resource.", - "properties": { - "bgp": { - "$ref": "RouterBgp", - "description": "BGP information specific to this router." - }, - "bgpPeers": { - "type": "array", - "description": "BGP information that needs to be configured into the routing stack to establish the BGP peering. It must specify peer ASN and either interface name, IP, or peer IP. Please refer to RFC4273.", - "items": { - "$ref": "RouterBgpPeer" - } - }, - "creationTimestamp": { - "type": "string", - "description": "[Output Only] Creation timestamp in RFC3339 text format." - }, - "description": { - "type": "string", - "description": "An optional description of this resource. Provide this property when you create the resource." - }, - "id": { - "type": "string", - "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", - "format": "uint64" - }, - "interfaces": { - "type": "array", - "description": "Router interfaces. Each interface requires either one linked resource (e.g. linkedVpnTunnel), or IP address and IP address range (e.g. ipRange), or both.", - "items": { - "$ref": "RouterInterface" - } - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#router for routers.", - "default": "compute#router" - }, - "name": { - "type": "string", - "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "annotations": { - "required": [ - "compute.routers.insert" - ] - } - }, - "nats": { - "type": "array", - "description": "List of Nat services created in this router. The maximum number of Nat services within a Router is 3 for Alpha.", - "items": { - "$ref": "RouterNat" - } - }, - "network": { - "type": "string", - "description": "URI of the network to which this router belongs.", - "annotations": { - "required": [ - "compute.routers.insert" - ] - } - }, - "region": { - "type": "string", - "description": "[Output Only] URI of the region where the router resides." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for the resource." - } - } - }, - "RouterAdvertisedIpRange": { - "id": "RouterAdvertisedIpRange", - "type": "object", - "description": "Description-tagged IP ranges for the router to advertise.", - "properties": { - "description": { - "type": "string", - "description": "User-specified description for the IP range." - }, - "range": { - "type": "string", - "description": "The IP range to advertise. The value must be a CIDR-formatted string." - } - } - }, - "RouterAdvertisedPrefix": { - "id": "RouterAdvertisedPrefix", - "type": "object", - "description": "Description-tagged prefixes for the router to advertise.", - "properties": { - "description": { - "type": "string", - "description": "User-specified description for the prefix." - }, - "prefix": { - "type": "string", - "description": "The prefix to advertise. The value must be a CIDR-formatted string." - } - } - }, - "RouterAggregatedList": { - "id": "RouterAggregatedList", - "type": "object", - "description": "Contains a list of routers.", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "object", - "description": "A list of Router resources.", - "additionalProperties": { - "$ref": "RoutersScopedList", - "description": "Name of the scope containing this set of routers." - } - }, - "kind": { - "type": "string", - "description": "Type of resource.", - "default": "compute#routerAggregatedList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "RouterBgp": { - "id": "RouterBgp", - "type": "object", - "properties": { - "advertiseMode": { - "type": "string", - "description": "User-specified flag to indicate which mode to use for advertisement.", - "enum": [ - "CUSTOM", - "DEFAULT" - ], - "enumDescriptions": [ - "", - "" - ] - }, - "advertisedGroups": { - "type": "array", - "description": "User-specified list of prefix groups to advertise in custom mode. This field can only be populated if advertise_mode is CUSTOM and is advertised to all peers of the router. These groups will be advertised in addition to any specified prefixes. Leave this field blank to advertise no custom groups.", - "items": { - "type": "string", - "enum": [ - "ALL_SUBNETS" - ], - "enumDescriptions": [ - "" - ] - } - }, - "advertisedIpRanges": { - "type": "array", - "description": "User-specified list of individual IP ranges to advertise in custom mode. This field can only be populated if advertise_mode is CUSTOM and is advertised to all peers of the router. These IP ranges will be advertised in addition to any specified groups. Leave this field blank to advertise no custom IP ranges.", - "items": { - "$ref": "RouterAdvertisedIpRange" - } - }, - "advertisedPrefixs": { - "type": "array", - "description": "User-specified list of individual prefixes to advertise in custom mode. This field can only be populated if advertise_mode is CUSTOM and is advertised to all peers of the router. These prefixes will be advertised in addition to any specified groups. Leave this field blank to advertise no custom prefixes.", - "items": { - "$ref": "RouterAdvertisedPrefix" - } - }, - "asn": { - "type": "integer", - "description": "Local BGP Autonomous System Number (ASN). Must be an RFC6996 private ASN, either 16-bit or 32-bit. The value will be fixed for this router resource. All VPN tunnels that link to this router will have the same local ASN.", - "format": "uint32" - } - } - }, - "RouterBgpPeer": { - "id": "RouterBgpPeer", - "type": "object", - "properties": { - "advertiseMode": { - "type": "string", - "description": "User-specified flag to indicate which mode to use for advertisement.", - "enum": [ - "CUSTOM", - "DEFAULT" - ], - "enumDescriptions": [ - "", - "" - ] - }, - "advertisedGroups": { - "type": "array", - "description": "User-specified list of prefix groups to advertise in custom mode. This field can only be populated if advertise_mode is CUSTOM and overrides the list defined for the router (in Bgp message). These groups will be advertised in addition to any specified prefixes. Leave this field blank to advertise no custom groups.", - "items": { - "type": "string", - "enum": [ - "ALL_SUBNETS" - ], - "enumDescriptions": [ - "" - ] - } - }, - "advertisedIpRanges": { - "type": "array", - "description": "User-specified list of individual IP ranges to advertise in custom mode. This field can only be populated if advertise_mode is CUSTOM and overrides the list defined for the router (in Bgp message). These IP ranges will be advertised in addition to any specified groups. Leave this field blank to advertise no custom IP ranges.", - "items": { - "$ref": "RouterAdvertisedIpRange" - } - }, - "advertisedPrefixs": { - "type": "array", - "description": "User-specified list of individual prefixes to advertise in custom mode. This field can only be populated if advertise_mode is CUSTOM and overrides the list defined for the router (in Bgp message). These prefixes will be advertised in addition to any specified groups. Leave this field blank to advertise no custom prefixes.", - "items": { - "$ref": "RouterAdvertisedPrefix" - } - }, - "advertisedRoutePriority": { - "type": "integer", - "description": "The priority of routes advertised to this BGP peer. In the case where there is more than one matching route of maximum length, the routes with lowest priority value win.", - "format": "uint32" - }, - "interfaceName": { - "type": "string", - "description": "Name of the interface the BGP peer is associated with." - }, - "ipAddress": { - "type": "string", - "description": "IP address of the interface inside Google Cloud Platform. Only IPv4 is supported." - }, - "name": { - "type": "string", - "description": "Name of this BGP peer. The name must be 1-63 characters long and comply with RFC1035.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" - }, - "peerAsn": { - "type": "integer", - "description": "Peer BGP Autonomous System Number (ASN). For VPN use case, this value can be different for every tunnel.", - "format": "uint32" - }, - "peerIpAddress": { - "type": "string", - "description": "IP address of the BGP interface outside Google cloud. Only IPv4 is supported." - } - } - }, - "RouterInterface": { - "id": "RouterInterface", - "type": "object", - "properties": { - "ipRange": { - "type": "string", - "description": "IP address and range of the interface. The IP range must be in the RFC3927 link-local IP space. The value must be a CIDR-formatted string, for example: 169.254.0.1/30. NOTE: Do not truncate the address as it represents the IP address of the interface." - }, - "linkedInterconnectAttachment": { - "type": "string", - "description": "URI of the linked interconnect attachment. It must be in the same region as the router. Each interface can have at most one linked resource and it could either be a VPN Tunnel or an interconnect attachment." - }, - "linkedVpnTunnel": { - "type": "string", - "description": "URI of the linked VPN tunnel. It must be in the same region as the router. Each interface can have at most one linked resource and it could either be a VPN Tunnel or an interconnect attachment." - }, - "name": { - "type": "string", - "description": "Name of this interface entry. The name must be 1-63 characters long and comply with RFC1035.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" - } - } - }, - "RouterList": { - "id": "RouterList", - "type": "object", - "description": "Contains a list of Router resources.", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "array", - "description": "A list of Router resources.", - "items": { - "$ref": "Router" - } - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#router for routers.", - "default": "compute#routerList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "RouterNat": { - "id": "RouterNat", - "type": "object", - "description": "Represents a Nat resource. It enables the VMs within the specified subnetworks to access Internet without external IP addresses. It specifies a list of subnetworks (and the ranges within) that want to use NAT. Customers can also provide the external IPs that would be used for NAT. GCP would auto-allocate ephemeral IPs if no external IPs are provided.", - "properties": { - "autoAllocatedNatIps": { - "type": "array", - "description": "[Output Only] List of IPs allocated automatically by GCP for this Nat service. They will be raw IP strings like \"179.12.26.133\". They are ephemeral IPs allocated from the IP blocks managed by the NAT manager. This list can grow and shrink based on the number of VMs configured to use NAT.", - "items": { - "type": "string" - } - }, - "name": { - "type": "string", - "description": "Unique name of this Nat service. The name must be 1-63 characters long and comply with RFC1035.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" - }, - "natIpAllocateOption": { - "type": "string", - "description": "Specify the NatIpAllocateOption. If it is AUTO_ONLY, then nat_ip should be empty.", - "enum": [ - "AUTO_ONLY", - "MANUAL_ONLY" - ], - "enumDescriptions": [ - "", - "" - ] - }, - "natIps": { - "type": "array", - "description": "List of URLs of the IP resources used for this Nat service. These IPs must be valid static external IP addresses assigned to the project. max_length is subject to change post alpha.", - "items": { - "type": "string" - } - }, - "sourceSubnetworkIpRangesToNat": { - "type": "string", - "description": "Specify the Nat option. If this field contains ALL_SUBNETWORKS_ALL_IP_RANGES or ALL_SUBNETWORKS_ALL_PRIMARY_IP_RANGES, then there should not be any other Router.Nat section in any Router for this network in this region.", - "enum": [ - "ALL_SUBNETWORKS_ALL_IP_RANGES", - "ALL_SUBNETWORKS_ALL_PRIMARY_IP_RANGES", - "LIST_OF_SUBNETWORKS" - ], - "enumDescriptions": [ - "", - "", - "" - ] - }, - "subnetworks": { - "type": "array", - "description": "List of Subnetwork resources whose traffic should be translated by NAT Gateway. It is used only when LIST_OF_SUBNETWORKS is selected for the SubnetworkIpRangeToNatOption above.", - "items": { - "$ref": "RouterNatSubnetworkToNat" - } - } - } - }, - "RouterNatSubnetworkToNat": { - "id": "RouterNatSubnetworkToNat", - "type": "object", - "description": "Defines the IP ranges that want to use NAT for a subnetwork.", - "properties": { - "name": { - "type": "string", - "description": "URL for the subnetwork resource to use NAT." - }, - "secondaryIpRangeNames": { - "type": "array", - "description": "List of the secondary ranges of the Subnetwork that are allowed to use NAT. This can be populated only if \"LIST_OF_SECONDARY_IP_RANGES\" is one of the values in source_ip_ranges_to_nat.", - "items": { - "type": "string" - } - }, - "sourceIpRangesToNats": { - "type": "array", - "description": "Specify the options for NAT ranges in the Subnetwork. All usages of single value are valid except NAT_IP_RANGE_OPTION_UNSPECIFIED. The only valid option with multiple values is: [\"PRIMARY_IP_RANGE\", \"LIST_OF_SECONDARY_IP_RANGES\"] Default: [ALL_IP_RANGES]", - "items": { - "type": "string", - "enum": [ - "ALL_IP_RANGES", - "LIST_OF_SECONDARY_IP_RANGES", - "PRIMARY_IP_RANGE" - ], - "enumDescriptions": [ - "", - "", - "" - ] - } - } - } - }, - "RouterStatus": { - "id": "RouterStatus", - "type": "object", - "properties": { - "bestRoutes": { - "type": "array", - "description": "Best routes for this router's network.", - "items": { - "$ref": "Route" - } - }, - "bestRoutesForRouter": { - "type": "array", - "description": "Best routes learned by this router.", - "items": { - "$ref": "Route" - } - }, - "bgpPeerStatus": { - "type": "array", - "items": { - "$ref": "RouterStatusBgpPeerStatus" - } - }, - "natStatus": { - "type": "array", - "items": { - "$ref": "RouterStatusNatStatus" - } - }, - "network": { - "type": "string", - "description": "URI of the network to which this router belongs." - } - } - }, - "RouterStatusBgpPeerStatus": { - "id": "RouterStatusBgpPeerStatus", - "type": "object", - "properties": { - "advertisedRoutes": { - "type": "array", - "description": "Routes that were advertised to the remote BGP peer", - "items": { - "$ref": "Route" - } - }, - "ipAddress": { - "type": "string", - "description": "IP address of the local BGP interface." - }, - "linkedVpnTunnel": { - "type": "string", - "description": "URL of the VPN tunnel that this BGP peer controls." - }, - "name": { - "type": "string", - "description": "Name of this BGP peer. Unique within the Routers resource." - }, - "numLearnedRoutes": { - "type": "integer", - "description": "Number of routes learned from the remote BGP Peer.", - "format": "uint32" - }, - "peerIpAddress": { - "type": "string", - "description": "IP address of the remote BGP interface." - }, - "state": { - "type": "string", - "description": "BGP state as specified in RFC1771." - }, - "status": { - "type": "string", - "description": "Status of the BGP peer: {UP, DOWN}", - "enum": [ - "DOWN", - "UNKNOWN", - "UP" - ], - "enumDescriptions": [ - "", - "", - "" - ] - }, - "uptime": { - "type": "string", - "description": "Time this session has been up. Format: 14 years, 51 weeks, 6 days, 23 hours, 59 minutes, 59 seconds" - }, - "uptimeSeconds": { - "type": "string", - "description": "Time this session has been up, in seconds. Format: 145" - } - } - }, - "RouterStatusNatStatus": { - "id": "RouterStatusNatStatus", - "type": "object", - "description": "Status of a NAT contained in this router.", - "properties": { - "autoAllocatedNatIps": { - "type": "array", - "description": "List of IPs auto-allocated for NAT. Example: [\"1.1.1.1\", \"129.2.16.89\"]", - "items": { - "type": "string" - } - }, - "minExtraNatIpsNeeded": { - "type": "integer", - "description": "The number of extra IPs to allocate. This will be greater than 0 only if user-specified IPs are NOT enough to allow all configured VMs to use NAT. This value is meaningful only when auto-allocation of NAT IPs is *not* used.", - "format": "int32" - }, - "name": { - "type": "string", - "description": "Unique name of this NAT." - }, - "numVmEndpointsWithNatMappings": { - "type": "integer", - "description": "Number of VM endpoints (i.e., Nics) that can use NAT.", - "format": "int32" - }, - "userAllocatedNatIpResources": { - "type": "array", - "description": "List of fully qualified URLs of reserved IP address resources.", - "items": { - "type": "string" - } - }, - "userAllocatedNatIps": { - "type": "array", - "description": "List of IPs user-allocated for NAT. They will be raw IP strings like \"179.12.26.133\".", - "items": { - "type": "string" - } - } - } - }, - "RouterStatusResponse": { - "id": "RouterStatusResponse", - "type": "object", - "properties": { - "kind": { - "type": "string", - "description": "Type of resource.", - "default": "compute#routerStatusResponse" - }, - "result": { - "$ref": "RouterStatus" - } - } - }, - "RoutersPreviewResponse": { - "id": "RoutersPreviewResponse", - "type": "object", - "properties": { - "resource": { - "$ref": "Router", - "description": "Preview of given router." - } - } - }, - "RoutersScopedList": { - "id": "RoutersScopedList", - "type": "object", - "properties": { - "routers": { - "type": "array", - "description": "List of routers contained in this scope.", - "items": { - "$ref": "Router" - } - }, - "warning": { - "type": "object", - "description": "Informational warning which replaces the list of routers when the list is empty.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "Rule": { - "id": "Rule", - "type": "object", - "description": "A rule to be applied in a Policy.", - "properties": { - "action": { - "type": "string", - "description": "Required", - "enum": [ - "ALLOW", - "ALLOW_WITH_LOG", - "DENY", - "DENY_WITH_LOG", - "LOG", - "NO_ACTION" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "" - ] - }, - "conditions": { - "type": "array", - "description": "Additional restrictions that must be met. All conditions must pass for the rule to match.", - "items": { - "$ref": "Condition" - } - }, - "description": { - "type": "string", - "description": "Human-readable description of the rule." - }, - "ins": { - "type": "array", - "description": "If one or more 'in' clauses are specified, the rule matches if the PRINCIPAL/AUTHORITY_SELECTOR is in at least one of these entries.", - "items": { - "type": "string" - } - }, - "logConfigs": { - "type": "array", - "description": "The config returned to callers of tech.iam.IAM.CheckPolicy for any entries that match the LOG action.", - "items": { - "$ref": "LogConfig" - } - }, - "notIns": { - "type": "array", - "description": "If one or more 'not_in' clauses are specified, the rule matches if the PRINCIPAL/AUTHORITY_SELECTOR is in none of the entries.", - "items": { - "type": "string" - } - }, - "permissions": { - "type": "array", - "description": "A permission is a string of form '..' (e.g., 'storage.buckets.list'). A value of '*' matches all permissions, and a verb part of '*' (e.g., 'storage.buckets.*') matches all verbs.", - "items": { - "type": "string" - } - } - } - }, - "SSLHealthCheck": { - "id": "SSLHealthCheck", - "type": "object", - "properties": { - "port": { - "type": "integer", - "description": "The TCP port number for the health check request. The default value is 443. Valid values are 1 through 65535.", - "format": "int32" - }, - "portName": { - "type": "string", - "description": "Port name as defined in InstanceGroup#NamedPort#name. If both port and port_name are defined, port takes precedence." - }, - "portSpecification": { - "type": "string", - "description": "Specifies how port is selected for health checking, can be one of following values:\nUSE_FIXED_PORT: The port number in\nport\nis used for health checking.\nUSE_NAMED_PORT: The\nportName\nis used for health checking.\nUSE_SERVING_PORT: For NetworkEndpointGroup, the port specified for each network endpoint is used for health checking. For other backends, the port or named port specified in the Backend Service is used for health checking.\n\n\nIf not specified, SSL health check follows behavior specified in\nport\nand\nportName\nfields.", - "enum": [ - "USE_FIXED_PORT", - "USE_NAMED_PORT", - "USE_SERVING_PORT" - ], - "enumDescriptions": [ - "", - "", - "" - ] - }, - "proxyHeader": { - "type": "string", - "description": "Specifies the type of proxy header to append before sending data to the backend, either NONE or PROXY_V1. The default is NONE.", - "enum": [ - "NONE", - "PROXY_V1" - ], - "enumDescriptions": [ - "", - "" - ] - }, - "request": { - "type": "string", - "description": "The application data to send once the SSL connection has been established (default value is empty). If both request and response are empty, the connection establishment alone will indicate health. The request data can only be ASCII." - }, - "response": { - "type": "string", - "description": "The bytes to match against the beginning of the response data. If left empty (the default value), any response will indicate health. The response data can only be ASCII." - } - } - }, - "Scheduling": { - "id": "Scheduling", - "type": "object", - "description": "Sets the scheduling options for an Instance.", - "properties": { - "automaticRestart": { - "type": "boolean", - "description": "Specifies whether the instance should be automatically restarted if it is terminated by Compute Engine (not terminated by a user). You can only set the automatic restart option for standard instances. Preemptible instances cannot be automatically restarted.\n\nBy default, this is set to true so an instance is automatically restarted if it is terminated by Compute Engine." - }, - "onHostMaintenance": { - "type": "string", - "description": "Defines the maintenance behavior for this instance. For standard instances, the default behavior is MIGRATE. For preemptible instances, the default and only possible behavior is TERMINATE. For more information, see Setting Instance Scheduling Options.", - "enum": [ - "MIGRATE", - "TERMINATE" - ], - "enumDescriptions": [ - "", - "" - ] - }, - "preemptible": { - "type": "boolean", - "description": "Defines whether the instance is preemptible. This can only be set during instance creation, it cannot be set or changed after the instance has been created." - } - } - }, - "SecurityPolicy": { - "id": "SecurityPolicy", - "type": "object", - "description": "A security policy is comprised of one or more rules. It can also be associated with one or more 'targets'.", - "properties": { - "creationTimestamp": { - "type": "string", - "description": "[Output Only] Creation timestamp in RFC3339 text format." - }, - "description": { - "type": "string", - "description": "An optional description of this resource. Provide this property when you create the resource." - }, - "fingerprint": { - "type": "string", - "description": "Specifies a fingerprint for this resource, which is essentially a hash of the metadata's contents and used for optimistic locking. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update metadata. You must always provide an up-to-date fingerprint hash in order to update or change metadata.\n\nTo see the latest fingerprint, make get() request to the security policy.", - "format": "byte" - }, - "id": { - "type": "string", - "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", - "format": "uint64" - }, - "kind": { - "type": "string", - "description": "[Output only] Type of the resource. Always compute#securityPolicyfor security policies", - "default": "compute#securityPolicy" - }, - "name": { - "type": "string", - "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" - }, - "rules": { - "type": "array", - "description": "List of rules that belong to this policy. There must always be a default rule (rule with priority 2147483647 and match \"*\"). If no rules are provided when creating a security policy, a default rule with action \"allow\" will be added.", - "items": { - "$ref": "SecurityPolicyRule" - } - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for the resource." - } - } - }, - "SecurityPolicyList": { - "id": "SecurityPolicyList", - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "array", - "description": "A list of SecurityPolicy resources.", - "items": { - "$ref": "SecurityPolicy" - } - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#securityPolicyList for listsof securityPolicies", - "default": "compute#securityPolicyList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "SecurityPolicyReference": { - "id": "SecurityPolicyReference", - "type": "object", - "properties": { - "securityPolicy": { - "type": "string" - } - } - }, - "SecurityPolicyRule": { - "id": "SecurityPolicyRule", - "type": "object", - "description": "Represents a rule that describes one or more match conditions along with the action to be taken when traffic matches this condition (allow or deny).", - "properties": { - "action": { - "type": "string", - "description": "The Action to preform when the client connection triggers the rule. Can currently be either \"allow\" or \"deny()\" where valid values for status are 403, 404, and 502." - }, - "description": { - "type": "string", - "description": "An optional description of this resource. Provide this property when you create the resource." - }, - "kind": { - "type": "string", - "description": "[Output only] Type of the resource. Always compute#securityPolicyRule for security policy rules", - "default": "compute#securityPolicyRule" - }, - "match": { - "$ref": "SecurityPolicyRuleMatcher", - "description": "A match condition that incoming traffic is evaluated against. If it evaluates to true, the corresponding ?action? is enforced." - }, - "preview": { - "type": "boolean", - "description": "If set to true, the specified action is not enforced." - }, - "priority": { - "type": "integer", - "description": "An integer indicating the priority of a rule in the list. The priority must be a positive value between 0 and 2147483647. Rules are evaluated in the increasing order of priority.", - "format": "int32" - } - } - }, - "SecurityPolicyRuleMatcher": { - "id": "SecurityPolicyRuleMatcher", - "type": "object", - "description": "Represents a match condition that incoming traffic is evaluated against. Exactly one field must be specified.", - "properties": { - "config": { - "$ref": "SecurityPolicyRuleMatcherConfig", - "description": "The configuration options available when specifying versioned_expr. This field must be specified if versioned_expr is specified and cannot be specified if versioned_expr is not specified." - }, - "expr": { - "$ref": "Expr", - "description": "User defined CEVAL expression. A CEVAL expression is used to specify match criteria such as origin.ip, source.region_code and contents in the request header." - }, - "srcIpRanges": { - "type": "array", - "description": "CIDR IP address range. Only IPv4 is supported.", - "items": { - "type": "string" - } - }, - "versionedExpr": { - "type": "string", - "description": "Preconfigured versioned expression. If this field is specified, config must also be specified. Available preconfigured expressions along with their requirements are: SRC_IPS_V1 - must specify the corresponding src_ip_range field in config.", - "enum": [ - "SRC_IPS_V1", - "VERSIONED_EXPR_UNSPECIFIED" - ], - "enumDescriptions": [ - "", - "" - ] - } - } - }, - "SecurityPolicyRuleMatcherConfig": { - "id": "SecurityPolicyRuleMatcherConfig", - "type": "object", - "properties": { - "srcIpRanges": { - "type": "array", - "description": "CIDR IP address range. Only IPv4 is supported.", - "items": { - "type": "string" - } - } - } - }, - "SerialPortOutput": { - "id": "SerialPortOutput", - "type": "object", - "description": "An instance's serial console output.", - "properties": { - "contents": { - "type": "string", - "description": "[Output Only] The contents of the console output." - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of the resource. Always compute#serialPortOutput for serial port output.", - "default": "compute#serialPortOutput" - }, - "next": { - "type": "string", - "description": "[Output Only] The position of the next byte of content from the serial console output. Use this value in the next request as the start parameter.", - "format": "int64" - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "start": { - "type": "string", - "description": "The starting byte position of the output that was returned. This should match the start parameter sent with the request. If the serial console output exceeds the size of the buffer, older output will be overwritten by newer content and the start values will be mismatched.", - "format": "int64" - } - } - }, - "ServiceAccount": { - "id": "ServiceAccount", - "type": "object", - "description": "A service account.", - "properties": { - "email": { - "type": "string", - "description": "Email address of the service account." - }, - "scopes": { - "type": "array", - "description": "The list of scopes to be made available for this service account.", - "items": { - "type": "string" - } - } - } - }, - "ShieldedVmConfig": { - "id": "ShieldedVmConfig", - "type": "object", - "description": "A set of Shielded VM options.", - "properties": { - "enableSecureBoot": { - "type": "boolean", - "description": "Defines whether the instance should have secure boot enabled." - }, - "enableVtpm": { - "type": "boolean", - "description": "Defines whether the instance should have the TPM enabled." - } - } - }, - "SignedUrlKey": { - "id": "SignedUrlKey", - "type": "object", - "description": "Represents a customer-supplied Signing Key used by Cloud CDN Signed URLs", - "properties": { - "keyName": { - "type": "string", - "description": "Name of the key. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" - }, - "keyValue": { - "type": "string", - "description": "128-bit key value used for signing the URL. The key value must be a valid RFC 4648 Section 5 base64url encoded string." - } - } - }, - "Snapshot": { - "id": "Snapshot", - "type": "object", - "description": "A persistent disk snapshot resource. (== resource_for beta.snapshots ==) (== resource_for v1.snapshots ==)", - "properties": { - "creationTimestamp": { - "type": "string", - "description": "[Output Only] Creation timestamp in RFC3339 text format." - }, - "description": { - "type": "string", - "description": "An optional description of this resource. Provide this property when you create the resource." - }, - "diskSizeGb": { - "type": "string", - "description": "[Output Only] Size of the snapshot, specified in GB.", - "format": "int64" - }, - "id": { - "type": "string", - "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", - "format": "uint64" - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of the resource. Always compute#snapshot for Snapshot resources.", - "default": "compute#snapshot" - }, - "labelFingerprint": { - "type": "string", - "description": "A fingerprint for the labels being applied to this snapshot, which is essentially a hash of the labels set used for optimistic locking. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update labels. You must always provide an up-to-date fingerprint hash in order to update or change labels.\n\nTo see the latest fingerprint, make a get() request to retrieve a snapshot.", - "format": "byte" - }, - "labels": { - "type": "object", - "description": "Labels to apply to this snapshot. These can be later modified by the setLabels method. Label values may be empty.", - "additionalProperties": { - "type": "string" - } - }, - "licenseCodes": { - "type": "array", - "description": "Integer license codes indicating which licenses are attached to this snapshot.", - "items": { - "type": "string", - "format": "int64" - } - }, - "licenses": { - "type": "array", - "description": "[Output Only] A list of public visible licenses that apply to this snapshot. This can be because the original image had licenses attached (such as a Windows image).", - "items": { - "type": "string" - } - }, - "name": { - "type": "string", - "description": "Name of the resource; provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for the resource." - }, - "snapshotEncryptionKey": { - "$ref": "CustomerEncryptionKey", - "description": "Encrypts the snapshot using a customer-supplied encryption key.\n\nAfter you encrypt a snapshot using a customer-supplied key, you must provide the same key if you use the image later For example, you must provide the encryption key when you create a disk from the encrypted snapshot in a future request.\n\nCustomer-supplied encryption keys do not protect access to metadata of the disk.\n\nIf you do not provide an encryption key when creating the snapshot, then the snapshot will be encrypted using an automatically generated key and you do not need to provide a key to use the snapshot later." - }, - "sourceDisk": { - "type": "string", - "description": "[Output Only] The source disk used to create this snapshot." - }, - "sourceDiskEncryptionKey": { - "$ref": "CustomerEncryptionKey", - "description": "The customer-supplied encryption key of the source disk. Required if the source disk is protected by a customer-supplied encryption key." - }, - "sourceDiskId": { - "type": "string", - "description": "[Output Only] The ID value of the disk used to create this snapshot. This value may be used to determine whether the snapshot was taken from the current or a previous instance of a given disk name." - }, - "status": { - "type": "string", - "description": "[Output Only] The status of the snapshot. This can be CREATING, DELETING, FAILED, READY, or UPLOADING.", - "enum": [ - "CREATING", - "DELETING", - "FAILED", - "READY", - "UPLOADING" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "" - ] - }, - "storageBytes": { - "type": "string", - "description": "[Output Only] A size of the storage used by the snapshot. As snapshots share storage, this number is expected to change with snapshot creation/deletion.", - "format": "int64" - }, - "storageBytesStatus": { - "type": "string", - "description": "[Output Only] An indicator whether storageBytes is in a stable state or it is being adjusted as a result of shared storage reallocation. This status can either be UPDATING, meaning the size of the snapshot is being updated, or UP_TO_DATE, meaning the size of the snapshot is up-to-date.", - "enum": [ - "UPDATING", - "UP_TO_DATE" - ], - "enumDescriptions": [ - "", - "" - ] - }, - "storageLocations": { - "type": "array", - "description": "GCS bucket storage location of the snapshot (regional or multi-regional).", - "items": { - "type": "string" - } - } - } - }, - "SnapshotList": { - "id": "SnapshotList", - "type": "object", - "description": "Contains a list of Snapshot resources.", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "array", - "description": "A list of Snapshot resources.", - "items": { - "$ref": "Snapshot" - } - }, - "kind": { - "type": "string", - "description": "Type of resource.", - "default": "compute#snapshotList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "SourceInstanceParams": { - "id": "SourceInstanceParams", - "type": "object", - "description": "A specification of the parameters to use when creating the instance template from a source instance.", - "properties": { - "diskConfigs": { - "type": "array", - "description": "Attached disks configuration. If not provided, defaults are applied: For boot disk and any other R/W disks, new custom images will be created from each disk. For read-only disks, they will be attached in read-only mode. Local SSD disks will be created as blank volumes.", - "items": { - "$ref": "DiskInstantiationConfig" - } - } - } - }, - "SslCertificate": { - "id": "SslCertificate", - "type": "object", - "description": "An SslCertificate resource. This resource provides a mechanism to upload an SSL key and certificate to the load balancer to serve secure connections from the user. (== resource_for beta.sslCertificates ==) (== resource_for v1.sslCertificates ==)", - "properties": { - "certificate": { - "type": "string", - "description": "A local certificate file. The certificate must be in PEM format. The certificate chain must be no greater than 5 certs long. The chain must include at least one intermediate cert." - }, - "creationTimestamp": { - "type": "string", - "description": "[Output Only] Creation timestamp in RFC3339 text format." - }, - "description": { - "type": "string", - "description": "An optional description of this resource. Provide this property when you create the resource." - }, - "expiryTime": { - "type": "string", - "description": "[Output Only] Expiry time of the certificate. RFC3339" - }, - "id": { - "type": "string", - "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", - "format": "uint64" - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of the resource. Always compute#sslCertificate for SSL certificates.", - "default": "compute#sslCertificate" - }, - "managed": { - "$ref": "SslCertificateManagedSslCertificate", - "description": "Configuration and status of a managed SSL certificate." - }, - "name": { - "type": "string", - "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" - }, - "privateKey": { - "type": "string", - "description": "A write-only private key in PEM format. Only insert requests will include this field." - }, - "selfLink": { - "type": "string", - "description": "[Output only] Server-defined URL for the resource." - }, - "selfManaged": { - "$ref": "SslCertificateSelfManagedSslCertificate", - "description": "Configuration and status of a self-managed SSL certificate." - }, - "subjectAlternativeNames": { - "type": "array", - "description": "[Output Only] Domains associated with the certificate via Subject Alternative Name.", - "items": { - "type": "string" - } - }, - "type": { - "type": "string", - "description": "(Optional) Specifies the type of SSL certificate, either \"SELF_MANAGED\" or \"MANAGED\". If not specified, the certificate is self-managed and the fields certificate and private_key are used.", - "enum": [ - "MANAGED", - "SELF_MANAGED", - "TYPE_UNKNOWN" - ], - "enumDescriptions": [ - "", - "", - "" - ] - } - } - }, - "SslCertificateList": { - "id": "SslCertificateList", - "type": "object", - "description": "Contains a list of SslCertificate resources.", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "array", - "description": "A list of SslCertificate resources.", - "items": { - "$ref": "SslCertificate" - } - }, - "kind": { - "type": "string", - "description": "Type of resource.", - "default": "compute#sslCertificateList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "SslCertificateManagedSslCertificate": { - "id": "SslCertificateManagedSslCertificate", - "type": "object", - "description": "Configuration and status of a managed SSL certificate.", - "properties": { - "domainStatus": { - "type": "object", - "description": "[Output only] Detailed statuses of the domains specified for managed certificate resource.", - "additionalProperties": { - "type": "string", - "enum": [ - "ACTIVE", - "DOMAIN_STATUS_UNKNOWN", - "FAILED_CAA_FORBIDDEN", - "FAILED_NOT_VISIBLE", - "FAILED_RATE_LIMITED", - "PROVISIONING" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "" - ] - } - }, - "domains": { - "type": "array", - "description": "The domains for which a managed SSL certificate will be generated. Currently only single-domain certs are supported.", - "items": { - "type": "string" - } - }, - "status": { - "type": "string", - "description": "[Output only] Status of the managed certificate resource.", - "enum": [ - "ACTIVE", - "PROVISIONING", - "PROVISIONING_FAILED", - "PROVISIONING_FAILED_PERMANENTLY", - "RENEWAL_FAILED", - "STATUS_UNKNOWN" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "" - ] - } - } - }, - "SslCertificateSelfManagedSslCertificate": { - "id": "SslCertificateSelfManagedSslCertificate", - "type": "object", - "description": "Configuration and status of a self-managed SSL certificate..", - "properties": { - "certificate": { - "type": "string", - "description": "A local certificate file. The certificate must be in PEM format. The certificate chain must be no greater than 5 certs long. The chain must include at least one intermediate cert." - }, - "privateKey": { - "type": "string", - "description": "A write-only private key in PEM format. Only insert requests will include this field." - } - } - }, - "SslPoliciesList": { - "id": "SslPoliciesList", - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "array", - "description": "A list of SslPolicy resources.", - "items": { - "$ref": "SslPolicy" - } - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of the resource. Always compute#sslPoliciesList for lists of sslPolicies.", - "default": "compute#sslPoliciesList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "SslPoliciesListAvailableFeaturesResponse": { - "id": "SslPoliciesListAvailableFeaturesResponse", - "type": "object", - "properties": { - "features": { - "type": "array", - "items": { - "type": "string" - } - } - } - }, - "SslPolicy": { - "id": "SslPolicy", - "type": "object", - "description": "A SSL policy specifies the server-side support for SSL features. This can be attached to a TargetHttpsProxy or a TargetSslProxy. This affects connections between clients and the HTTPS or SSL proxy load balancer. They do not affect the connection between the load balancers and the backends.", - "properties": { - "creationTimestamp": { - "type": "string", - "description": "[Output Only] Creation timestamp in RFC3339 text format." - }, - "customFeatures": { - "type": "array", - "description": "List of features enabled when the selected profile is CUSTOM. The\n- method returns the set of features that can be specified in this list. This field must be empty if the profile is not CUSTOM.", - "items": { - "type": "string" - } - }, - "description": { - "type": "string", - "description": "An optional description of this resource. Provide this property when you create the resource." - }, - "enabledFeatures": { - "type": "array", - "description": "[Output Only] The list of features enabled in the SSL policy.", - "items": { - "type": "string" - } - }, - "fingerprint": { - "type": "string", - "description": "Fingerprint of this resource. A hash of the contents stored in this object. This field is used in optimistic locking. This field will be ignored when inserting a SslPolicy. An up-to-date fingerprint must be provided in order to update the SslPolicy.", - "format": "byte" - }, - "id": { - "type": "string", - "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", - "format": "uint64" - }, - "kind": { - "type": "string", - "description": "[Output only] Type of the resource. Always compute#sslPolicyfor SSL policies.", - "default": "compute#sslPolicy" - }, - "minTlsVersion": { - "type": "string", - "description": "The minimum version of SSL protocol that can be used by the clients to establish a connection with the load balancer. This can be one of TLS_1_0, TLS_1_1, TLS_1_2, TLS_1_3.", - "enum": [ - "TLS_1_0", - "TLS_1_1", - "TLS_1_2", - "TLS_1_3" - ], - "enumDescriptions": [ - "", - "", - "", - "" - ] - }, - "name": { - "type": "string", - "description": "Name of the resource. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" - }, - "profile": { - "type": "string", - "description": "Profile specifies the set of SSL features that can be used by the load balancer when negotiating SSL with clients. This can be one of COMPATIBLE, MODERN, RESTRICTED, or CUSTOM. If using CUSTOM, the set of SSL features to enable must be specified in the customFeatures field.", - "enum": [ - "COMPATIBLE", - "CUSTOM", - "MODERN", - "RESTRICTED" - ], - "enumDescriptions": [ - "", - "", - "", - "" - ] - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for the resource." - }, - "warnings": { - "type": "array", - "description": "[Output Only] If potential misconfigurations are detected for this SSL policy, this field will be populated with warning messages.", - "items": { - "type": "object", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." + "path": "{project}/zones/{zone}", + "response": { + "$ref": "Zone" }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "list": { + "description": "Retrieves the list of Zone resources available to the specified project.", + "httpMethod": "GET", + "id": "compute.zones.list", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones", + "response": { + "$ref": "ZoneList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } } - } } - } }, - "SslPolicyReference": { - "id": "SslPolicyReference", - "type": "object", - "properties": { - "sslPolicy": { - "type": "string", - "description": "URL of the SSL policy resource. Set this to empty string to clear any existing SSL policy associated with the target proxy resource." - } - } - }, - "StatefulPolicy": { - "id": "StatefulPolicy", - "type": "object", - "properties": { - "preservedResources": { - "$ref": "StatefulPolicyPreservedResources" - } - } - }, - "StatefulPolicyPreservedDisk": { - "id": "StatefulPolicyPreservedDisk", - "type": "object", - "properties": { - "deviceName": { - "type": "string", - "description": "Device name of the disk to be preserved" - } - } - }, - "StatefulPolicyPreservedResources": { - "id": "StatefulPolicyPreservedResources", - "type": "object", - "description": "Configuration of all preserved resources.", - "properties": { - "disks": { - "type": "array", - "description": "Disks created on the instances that will be preserved on instance delete, resize down, etc.", - "items": { - "$ref": "StatefulPolicyPreservedDisk" - } - } - } - }, - "Subnetwork": { - "id": "Subnetwork", - "type": "object", - "description": "A Subnetwork resource. (== resource_for beta.subnetworks ==) (== resource_for v1.subnetworks ==)", - "properties": { - "allowSubnetCidrRoutesOverlap": { - "type": "boolean", - "description": "Whether this subnetwork can conflict with static routes. Setting this to true allows this subnetwork's primary and secondary ranges to conflict with routes that have already been configured on the corresponding network. Static routes will take precedence over the subnetwork route if the route prefix length is at least as large as the subnetwork prefix length.\n\nAlso, packets destined to IPs within subnetwork may contain private/sensitive data and are prevented from leaving the virtual network. Setting this field to true will disable this feature.\n\nThe default value is false and applies to all existing subnetworks and automatically created subnetworks.\n\nThis field cannot be set to true at resource creation time." - }, - "creationTimestamp": { - "type": "string", - "description": "[Output Only] Creation timestamp in RFC3339 text format." - }, - "description": { - "type": "string", - "description": "An optional description of this resource. Provide this property when you create the resource. This field can be set only at resource creation time." - }, - "fingerprint": { - "type": "string", - "description": "Fingerprint of this resource. A hash of the contents stored in this object. This field is used in optimistic locking. This field will be ignored when inserting a Subnetwork. An up-to-date fingerprint must be provided in order to update the Subnetwork.", - "format": "byte" - }, - "gatewayAddress": { - "type": "string", - "description": "[Output Only] The gateway address for default routes to reach destination addresses outside this subnetwork. This field can be set only at resource creation time." - }, - "id": { - "type": "string", - "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", - "format": "uint64" - }, - "ipCidrRange": { - "type": "string", - "description": "The range of internal addresses that are owned by this subnetwork. Provide this property when you create the subnetwork. For example, 10.0.0.0/8 or 192.168.0.0/16. Ranges must be unique and non-overlapping within a network. Only IPv4 is supported. This field can be set only at resource creation time." - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of the resource. Always compute#subnetwork for Subnetwork resources.", - "default": "compute#subnetwork" - }, - "name": { - "type": "string", - "description": "The name of the resource, provided by the client when initially creating the resource. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" - }, - "network": { - "type": "string", - "description": "The URL of the network to which this subnetwork belongs, provided by the client when initially creating the subnetwork. Only networks that are in the distributed mode can have subnetworks. This field can be set only at resource creation time." - }, - "privateIpGoogleAccess": { - "type": "boolean", - "description": "Whether the VMs in this subnet can access Google services without assigned external IP addresses. This field can be both set at resource creation time and updated using setPrivateIpGoogleAccess." - }, - "region": { - "type": "string", - "description": "URL of the region where the Subnetwork resides. This field can be set only at resource creation time." - }, - "secondaryIpRanges": { - "type": "array", - "description": "An array of configurations for secondary IP ranges for VM instances contained in this subnetwork. The primary IP of such VM must belong to the primary ipCidrRange of the subnetwork. The alias IPs may belong to either primary or secondary ranges.", - "items": { - "$ref": "SubnetworkSecondaryRange" - } - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for the resource." - } - } - }, - "SubnetworkAggregatedList": { - "id": "SubnetworkAggregatedList", - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "object", - "description": "A list of SubnetworksScopedList resources.", - "additionalProperties": { - "$ref": "SubnetworksScopedList", - "description": "Name of the scope containing this set of Subnetworks." - } - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#subnetworkAggregatedList for aggregated lists of subnetworks.", - "default": "compute#subnetworkAggregatedList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] + "revision": "20180312", + "rootUrl": "https://www.googleapis.com/", + "schemas": { + "AcceleratorConfig": { + "description": "A specification of the type and number of accelerator cards attached to the instance.", + "id": "AcceleratorConfig", + "properties": { + "acceleratorCount": { + "description": "The number of the guest accelerator cards exposed to this instance.", + "format": "int32", + "type": "integer" + }, + "acceleratorType": { + "description": "Full or partial URL of the accelerator type resource to attach to this instance. If you are creating an instance template, specify only the accelerator name.", + "type": "string" + } }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", + "type": "object" + }, + "AcceleratorType": { + "description": "An Accelerator Type resource. (== resource_for beta.acceleratorTypes ==) (== resource_for v1.acceleratorTypes ==)", + "id": "AcceleratorType", + "properties": { + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "deprecated": { + "$ref": "DeprecationStatus", + "description": "[Output Only] The deprecation status associated with this accelerator type." + }, + "description": { + "description": "[Output Only] An optional textual description of the resource.", + "type": "string" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64", + "type": "string" + }, + "kind": { + "default": "compute#acceleratorType", + "description": "[Output Only] The type of the resource. Always compute#acceleratorType for accelerator types.", + "type": "string" + }, + "maximumCardsPerInstance": { + "description": "[Output Only] Maximum accelerator cards allowed per instance.", + "format": "int32", + "type": "integer" + }, + "name": { + "description": "[Output Only] Name of the resource.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined fully-qualified URL for this resource.", + "type": "string" + }, + "zone": { + "description": "[Output Only] The name of the zone where the accelerator type resides, such as us-central1-a. You must specify this field as part of the HTTP request URL. It is not settable as a field in the request body.", + "type": "string" + } + }, + "type": "object" + }, + "AcceleratorTypeAggregatedList": { + "id": "AcceleratorTypeAggregatedList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "additionalProperties": { + "$ref": "AcceleratorTypesScopedList", + "description": "[Output Only] Name of the scope containing this set of accelerator types." + }, + "description": "A list of AcceleratorTypesScopedList resources.", + "type": "object" + }, + "kind": { + "default": "compute#acceleratorTypeAggregatedList", + "description": "[Output Only] Type of resource. Always compute#acceleratorTypeAggregatedList for aggregated lists of accelerator types.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "AcceleratorTypeList": { + "description": "Contains a list of accelerator types.", + "id": "AcceleratorTypeList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of AcceleratorType resources.", + "items": { + "$ref": "AcceleratorType" + }, + "type": "array" + }, + "kind": { + "default": "compute#acceleratorTypeList", + "description": "[Output Only] Type of resource. Always compute#acceleratorTypeList for lists of accelerator types.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "AcceleratorTypesScopedList": { + "id": "AcceleratorTypesScopedList", + "properties": { + "acceleratorTypes": { + "description": "[Output Only] List of accelerator types contained in this scope.", + "items": { + "$ref": "AcceleratorType" + }, + "type": "array" + }, + "warning": { + "description": "[Output Only] An informational warning that appears when the accelerator types list is empty.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "AccessConfig": { + "description": "An access configuration attached to an instance's network interface. Only one access config per instance is supported.", + "id": "AccessConfig", + "properties": { + "kind": { + "default": "compute#accessConfig", + "description": "[Output Only] Type of the resource. Always compute#accessConfig for access configs.", + "type": "string" + }, + "name": { + "description": "The name of this access configuration. The default and recommended name is External NAT but you can use any arbitrary string you would like. For example, My external IP or Network Access.", + "type": "string" + }, + "natIP": { + "description": "An external IP address associated with this instance. Specify an unused static external IP address available to the project or leave this field undefined to use an IP from a shared ephemeral IP address pool. If you specify a static external IP address, it must live in the same region as the zone of the instance.", + "type": "string" + }, + "networkTier": { + "description": "This signifies the networking tier used for configuring this access configuration and can only take the following values: PREMIUM, STANDARD.\n\nIf an AccessConfig is specified without a valid external IP address, an ephemeral IP will be created with this networkTier.\n\nIf an AccessConfig with a valid external IP address is specified, it must match that of the networkTier associated with the Address resource owning that IP.", + "enum": [ + "PREMIUM", + "SELECT", + "STANDARD" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, + "publicDnsName": { + "description": "[Output Only] The public DNS domain name for the instance.", + "type": "string" + }, + "publicPtrDomainName": { + "description": "The DNS domain name for the public PTR record. This field can only be set when the set_public_ptr field is enabled.", + "type": "string" + }, + "setPublicDns": { + "description": "Specifies whether a public DNS ?A? record should be created for the external IP address of this access configuration.", + "type": "boolean" + }, + "setPublicPtr": { + "description": "Specifies whether a public DNS ?PTR? record should be created to map the external IP address of the instance to a DNS domain name.", + "type": "boolean" + }, + "type": { + "default": "ONE_TO_ONE_NAT", + "description": "The type of configuration. The default and only option is ONE_TO_ONE_NAT.", + "enum": [ + "ONE_TO_ONE_NAT" + ], + "enumDescriptions": [ + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "Address": { + "description": "A reserved address resource. (== resource_for beta.addresses ==) (== resource_for v1.addresses ==) (== resource_for beta.globalAddresses ==) (== resource_for v1.globalAddresses ==)", + "id": "Address", + "properties": { + "address": { + "description": "The static IP address represented by this resource.", + "type": "string" + }, + "addressType": { + "description": "The type of address to reserve, either INTERNAL or EXTERNAL. If unspecified, defaults to EXTERNAL.", + "enum": [ + "DNS_FORWARDING", + "EXTERNAL", + "INTERNAL", + "UNSPECIFIED_TYPE" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ], + "type": "string" + }, + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "description": { + "description": "An optional description of this resource. Provide this property when you create the resource.", + "type": "string" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64", + "type": "string" + }, + "ipVersion": { + "description": "The IP Version that will be used by this address. Valid options are IPV4 or IPV6. This can only be specified for a global address.", + "enum": [ + "IPV4", + "IPV6", + "UNSPECIFIED_VERSION" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, + "kind": { + "default": "compute#address", + "description": "[Output Only] Type of the resource. Always compute#address for addresses.", + "type": "string" + }, + "labelFingerprint": { + "description": "A fingerprint for the labels being applied to this Address, which is essentially a hash of the labels set used for optimistic locking. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update labels. You must always provide an up-to-date fingerprint hash in order to update or change labels.\n\nTo see the latest fingerprint, make a get() request to retrieve an Address.", + "format": "byte", + "type": "string" + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Labels to apply to this Address resource. These can be later modified by the setLabels method. Each label key/value must comply with RFC1035. Label values may be empty.", + "type": "object" + }, + "name": { + "annotations": { + "required": [ + "compute.addresses.insert" + ] + }, + "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "network": { + "description": "The URL of the network in which to reserve the address. This field can only be used with INTERNAL type with VPC_PEERING purpose.", + "type": "string" + }, + "networkTier": { + "description": "This signifies the networking tier used for configuring this Address and can only take the following values: PREMIUM , STANDARD.\n\nIf this field is not specified, it is assumed to be PREMIUM.", + "enum": [ + "PREMIUM", + "SELECT", + "STANDARD" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, + "prefixLength": { + "description": "The prefix length if the resource reprensents an IP range.", + "format": "int32", + "type": "integer" + }, + "purpose": { + "description": "The purpose of resource, only used with INTERNAL type.", + "enum": [ + "DNS_RESOLVER", + "GCE_ENDPOINT", + "UNSPECIFIED_PURPOSE", + "VPC_PEERING" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ], + "type": "string" + }, + "region": { + "description": "[Output Only] URL of the region where the regional address resides. This field is not applicable to global addresses. You must specify this field as part of the HTTP request URL. You cannot set this field in the request body.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + }, + "status": { + "description": "[Output Only] The status of the address, which can be one of RESERVING, RESERVED, or IN_USE. An address that is RESERVING is currently in the process of being reserved. A RESERVED address is currently reserved and available to use. An IN_USE address is currently being used by another resource and is not available.", + "enum": [ + "IN_USE", + "RESERVED" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "subnetwork": { + "description": "The URL of the subnetwork in which to reserve the address. If an IP address is specified, it must be within the subnetwork's IP range. This field can only be used with INTERNAL type with GCE_ENDPOINT/DNS_RESOLVER purposes.", + "type": "string" + }, + "users": { + "description": "[Output Only] The URLs of the resources that are using this address.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "AddressAggregatedList": { + "id": "AddressAggregatedList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "additionalProperties": { + "$ref": "AddressesScopedList", + "description": "[Output Only] Name of the scope containing this set of addresses." + }, + "description": "A list of AddressesScopedList resources.", + "type": "object" + }, + "kind": { + "default": "compute#addressAggregatedList", + "description": "[Output Only] Type of resource. Always compute#addressAggregatedList for aggregated lists of addresses.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "AddressList": { + "description": "Contains a list of addresses.", + "id": "AddressList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of Address resources.", + "items": { + "$ref": "Address" + }, + "type": "array" + }, + "kind": { + "default": "compute#addressList", + "description": "[Output Only] Type of resource. Always compute#addressList for lists of addresses.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "AddressesScopedList": { + "id": "AddressesScopedList", + "properties": { + "addresses": { + "description": "[Output Only] List of addresses contained in this scope.", + "items": { + "$ref": "Address" + }, + "type": "array" + }, + "warning": { + "description": "[Output Only] Informational warning which replaces the list of addresses when the list is empty.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "AliasIpRange": { + "description": "An alias IP range attached to an instance's network interface.", + "id": "AliasIpRange", + "properties": { + "ipCidrRange": { + "description": "The IP CIDR range represented by this alias IP range. This IP CIDR range must belong to the specified subnetwork and cannot contain IP addresses reserved by system or used by other network interfaces. This range may be a single IP address (e.g. 10.2.3.4), a netmask (e.g. /24) or a CIDR format string (e.g. 10.1.2.0/24).", + "type": "string" + }, + "subnetworkRangeName": { + "description": "Optional subnetwork secondary range name specifying the secondary range from which to allocate the IP CIDR range for this alias IP range. If left unspecified, the primary range of the subnetwork will be used.", + "type": "string" + } + }, + "type": "object" + }, + "AttachedDisk": { + "description": "An instance-attached disk resource.", + "id": "AttachedDisk", + "properties": { + "autoDelete": { + "description": "Specifies whether the disk will be auto-deleted when the instance is deleted (but not when the disk is detached from the instance).", + "type": "boolean" + }, + "boot": { + "description": "Indicates that this is a boot disk. The virtual machine will use the first partition of the disk for its root filesystem.", + "type": "boolean" + }, + "deviceName": { + "description": "Specifies a unique device name of your choice that is reflected into the /dev/disk/by-id/google-* tree of a Linux operating system running within the instance. This name can be used to reference the device for mounting, resizing, and so on, from within the instance.\n\nIf not specified, the server chooses a default device name to apply to this disk, in the form persistent-disks-x, where x is a number assigned by Google Compute Engine. This field is only applicable for persistent disks.", + "type": "string" + }, + "diskEncryptionKey": { + "$ref": "CustomerEncryptionKey", + "description": "Encrypts or decrypts a disk using a customer-supplied encryption key.\n\nIf you are creating a new disk, this field encrypts the new disk using an encryption key that you provide. If you are attaching an existing disk that is already encrypted, this field decrypts the disk using the customer-supplied encryption key.\n\nIf you encrypt a disk using a customer-supplied key, you must provide the same key again when you attempt to use this resource at a later time. For example, you must provide the key when you create a snapshot or an image from the disk or when you attach the disk to a virtual machine instance.\n\nIf you do not provide an encryption key, then the disk will be encrypted using an automatically generated key and you do not need to provide a key to use the disk later.\n\nInstance templates do not store customer-supplied encryption keys, so you cannot use your own keys to encrypt disks in a managed instance group." + }, + "diskSizeGb": { + "description": "The size of the disk in base-2 GB. This supersedes disk_size_gb in InitializeParams.", + "format": "int64", + "type": "string" + }, + "guestOsFeatures": { + "description": "A list of features to enable on the guest operating system. Applicable only for bootable images. Read Enabling guest operating system features to see a list of available options.", + "items": { + "$ref": "GuestOsFeature" + }, + "type": "array" + }, + "index": { + "description": "[Output Only] A zero-based index to this disk, where 0 is reserved for the boot disk. If you have many disks attached to an instance, each disk would have a unique index number.", + "format": "int32", + "type": "integer" + }, + "initializeParams": { + "$ref": "AttachedDiskInitializeParams", + "description": "[Input Only] Specifies the parameters for a new disk that will be created alongside the new instance. Use initialization parameters to create boot disks or local SSDs attached to the new instance.\n\nThis property is mutually exclusive with the source property; you can only define one or the other, but not both." + }, + "interface": { + "description": "Specifies the disk interface to use for attaching this disk, which is either SCSI or NVME. The default is SCSI. Persistent disks must always use SCSI and the request will fail if you attempt to attach a persistent disk in any other format than SCSI. Local SSDs can use either NVME or SCSI. For performance characteristics of SCSI over NVMe, see Local SSD performance.", + "enum": [ + "NVME", + "SCSI" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "kind": { + "default": "compute#attachedDisk", + "description": "[Output Only] Type of the resource. Always compute#attachedDisk for attached disks.", + "type": "string" + }, + "licenses": { + "description": "[Output Only] Any valid publicly visible licenses.", + "items": { + "type": "string" + }, + "type": "array" + }, + "mode": { + "description": "The mode in which to attach this disk, either READ_WRITE or READ_ONLY. If not specified, the default is to attach the disk in READ_WRITE mode.", + "enum": [ + "READ_ONLY", + "READ_WRITE" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "savedState": { + "description": "For LocalSSD disks on VM Instances in STOPPED or SUSPENDED state, this field is set to PRESERVED iff the LocalSSD data has been saved to a persistent location by customer request. (see the discard_local_ssd option on Stop/Suspend). Read-only in the api.", + "enum": [ + "DISK_SAVED_STATE_UNSPECIFIED", + "PRESERVED" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "source": { + "description": "Specifies a valid partial or full URL to an existing Persistent Disk resource. When creating a new instance, one of initializeParams.sourceImage or disks.source is required except for local SSD.\n\nIf desired, you can also attach existing non-root persistent disks using this property. This field is only applicable for persistent disks.\n\nNote that for InstanceTemplate, specify the disk name, not the URL for the disk.", + "type": "string" + }, + "type": { + "description": "Specifies the type of the disk, either SCRATCH or PERSISTENT. If not specified, the default is PERSISTENT.", + "enum": [ + "PERSISTENT", + "SCRATCH" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "AttachedDiskInitializeParams": { + "description": "[Input Only] Specifies the parameters for a new disk that will be created alongside the new instance. Use initialization parameters to create boot disks or local SSDs attached to the new instance.\n\nThis property is mutually exclusive with the source property; you can only define one or the other, but not both.", + "id": "AttachedDiskInitializeParams", + "properties": { + "diskName": { + "description": "Specifies the disk name. If not specified, the default is to use the name of the instance.", + "type": "string" + }, + "diskSizeGb": { + "description": "Specifies the size of the disk in base-2 GB.", + "format": "int64", + "type": "string" + }, + "diskStorageType": { + "description": "[Deprecated] Storage type of the disk.", + "enum": [ + "HDD", + "SSD" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "diskType": { + "description": "Specifies the disk type to use to create the instance. If not specified, the default is pd-standard, specified using the full URL. For example:\nhttps://www.googleapis.com/compute/v1/projects/project/zones/zone/diskTypes/pd-standard\n\n\nOther values include pd-ssd and local-ssd. If you define this field, you can provide either the full or partial URL. For example, the following are valid values: \n- https://www.googleapis.com/compute/v1/projects/project/zones/zone/diskTypes/diskType \n- projects/project/zones/zone/diskTypes/diskType \n- zones/zone/diskTypes/diskType Note that for InstanceTemplate, this is the name of the disk type, not URL.", + "type": "string" + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Labels to apply to this disk. These can be later modified by the disks.setLabels method. This field is only applicable for persistent disks.", + "type": "object" + }, + "sourceImage": { + "description": "The source image to create this disk. When creating a new instance, one of initializeParams.sourceImage or disks.source is required except for local SSD.\n\nTo create a disk with one of the public operating system images, specify the image by its family name. For example, specify family/debian-8 to use the latest Debian 8 image:\nprojects/debian-cloud/global/images/family/debian-8\n\n\nAlternatively, use a specific version of a public operating system image:\nprojects/debian-cloud/global/images/debian-8-jessie-vYYYYMMDD\n\n\nTo create a disk with a custom image that you created, specify the image name in the following format:\nglobal/images/my-custom-image\n\n\nYou can also specify a custom image by its image family, which returns the latest version of the image in that family. Replace the image name with family/family-name:\nglobal/images/family/my-image-family\n\n\nIf the source image is deleted later, this field will not be set.", + "type": "string" + }, + "sourceImageEncryptionKey": { + "$ref": "CustomerEncryptionKey", + "description": "The customer-supplied encryption key of the source image. Required if the source image is protected by a customer-supplied encryption key.\n\nInstance templates do not store customer-supplied encryption keys, so you cannot create disks for instances in a managed instance group if the source images are encrypted with your own keys." + } + }, + "type": "object" + }, + "AuditConfig": { + "description": "Specifies the audit configuration for a service. The configuration determines which permission types are logged, and what identities, if any, are exempted from logging. An AuditConfig must have one or more AuditLogConfigs.\n\nIf there are AuditConfigs for both `allServices` and a specific service, the union of the two AuditConfigs is used for that service: the log_types specified in each AuditConfig are enabled, and the exempted_members in each AuditLogConfig are exempted.\n\nExample Policy with multiple AuditConfigs:\n\n{ \"audit_configs\": [ { \"service\": \"allServices\" \"audit_log_configs\": [ { \"log_type\": \"DATA_READ\", \"exempted_members\": [ \"user:foo@gmail.com\" ] }, { \"log_type\": \"DATA_WRITE\", }, { \"log_type\": \"ADMIN_READ\", } ] }, { \"service\": \"fooservice.googleapis.com\" \"audit_log_configs\": [ { \"log_type\": \"DATA_READ\", }, { \"log_type\": \"DATA_WRITE\", \"exempted_members\": [ \"user:bar@gmail.com\" ] } ] } ] }\n\nFor fooservice, this policy enables DATA_READ, DATA_WRITE and ADMIN_READ logging. It also exempts foo@gmail.com from DATA_READ logging, and bar@gmail.com from DATA_WRITE logging.", + "id": "AuditConfig", + "properties": { + "auditLogConfigs": { + "description": "The configuration for logging of each type of permission.", + "items": { + "$ref": "AuditLogConfig" + }, + "type": "array" + }, + "exemptedMembers": { + "description": "", + "items": { + "type": "string" + }, + "type": "array" + }, + "service": { + "description": "Specifies a service that will be enabled for audit logging. For example, `storage.googleapis.com`, `cloudsql.googleapis.com`. `allServices` is a special value that covers all services.", + "type": "string" + } + }, + "type": "object" + }, + "AuditLogConfig": { + "description": "Provides the configuration for logging a type of permissions. Example:\n\n{ \"audit_log_configs\": [ { \"log_type\": \"DATA_READ\", \"exempted_members\": [ \"user:foo@gmail.com\" ] }, { \"log_type\": \"DATA_WRITE\", } ] }\n\nThis enables 'DATA_READ' and 'DATA_WRITE' logging, while exempting foo@gmail.com from DATA_READ logging.", + "id": "AuditLogConfig", + "properties": { + "exemptedMembers": { + "description": "Specifies the identities that do not cause logging for this type of permission. Follows the same format of [Binding.members][].", + "items": { + "type": "string" + }, + "type": "array" + }, + "logType": { + "description": "The log type that this config enables.", + "enum": [ + "ADMIN_READ", + "DATA_READ", + "DATA_WRITE", + "LOG_TYPE_UNSPECIFIED" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "AuthorizationLoggingOptions": { + "description": "Authorization-related information used by Cloud Audit Logging.", + "id": "AuthorizationLoggingOptions", + "properties": { + "permissionType": { + "description": "The type of the permission that was checked.", + "enum": [ + "ADMIN_READ", + "ADMIN_WRITE", + "DATA_READ", + "DATA_WRITE", + "PERMISSION_TYPE_UNSPECIFIED" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "Autoscaler": { + "description": "Represents an Autoscaler resource. Autoscalers allow you to automatically scale virtual machine instances in managed instance groups according to an autoscaling policy that you define. For more information, read Autoscaling Groups of Instances. (== resource_for beta.autoscalers ==) (== resource_for v1.autoscalers ==) (== resource_for beta.regionAutoscalers ==) (== resource_for v1.regionAutoscalers ==)", + "id": "Autoscaler", + "properties": { + "autoscalingPolicy": { + "$ref": "AutoscalingPolicy", + "description": "The configuration parameters for the autoscaling algorithm. You can define one or more of the policies for an autoscaler: cpuUtilization, customMetricUtilizations, and loadBalancingUtilization.\n\nIf none of these are specified, the default will be to autoscale based on cpuUtilization to 0.6 or 60%." + }, + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "description": { + "description": "An optional description of this resource. Provide this property when you create the resource.", + "type": "string" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64", + "type": "string" + }, + "kind": { + "default": "compute#autoscaler", + "description": "[Output Only] Type of the resource. Always compute#autoscaler for autoscalers.", + "type": "string" + }, + "name": { + "annotations": { + "required": [ + "compute.instanceGroups.insert" + ] + }, + "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "recommendedSize": { + "description": "[Output Only] Target recommended MIG size computed by autoscaler. Autoscaler calculates recommended MIG size even when autoscaling policy mode is different from ON. This field is empty when autoscaler is not connected to the existing managed instance group or autoscaler did not generate its first prediction.", + "format": "int32", + "type": "integer" + }, + "region": { + "description": "[Output Only] URL of the region where the instance group resides (for autoscalers living in regional scope).", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + }, + "status": { + "description": "[Output Only] The status of the autoscaler configuration.", + "enum": [ + "ACTIVE", + "DELETING", + "ERROR", + "PENDING" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ], + "type": "string" + }, + "statusDetails": { + "description": "[Output Only] Human-readable details about the current state of the autoscaler. Read the documentation for Commonly returned status messages for examples of status messages you might encounter.", + "items": { + "$ref": "AutoscalerStatusDetails" + }, + "type": "array" + }, + "target": { + "description": "URL of the managed instance group that this autoscaler will scale.", + "type": "string" + }, + "zone": { + "description": "[Output Only] URL of the zone where the instance group resides (for autoscalers living in zonal scope).", + "type": "string" + } + }, + "type": "object" + }, + "AutoscalerAggregatedList": { + "id": "AutoscalerAggregatedList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "additionalProperties": { + "$ref": "AutoscalersScopedList", + "description": "[Output Only] Name of the scope containing this set of autoscalers." + }, + "description": "A list of AutoscalersScopedList resources.", + "type": "object" + }, + "kind": { + "default": "compute#autoscalerAggregatedList", + "description": "[Output Only] Type of resource. Always compute#autoscalerAggregatedList for aggregated lists of autoscalers.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "AutoscalerList": { + "description": "Contains a list of Autoscaler resources.", + "id": "AutoscalerList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of Autoscaler resources.", + "items": { + "$ref": "Autoscaler" + }, + "type": "array" + }, + "kind": { + "default": "compute#autoscalerList", + "description": "[Output Only] Type of resource. Always compute#autoscalerList for lists of autoscalers.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "AutoscalerStatusDetails": { + "id": "AutoscalerStatusDetails", + "properties": { + "message": { + "description": "The status message.", + "type": "string" + }, + "type": { + "description": "The type of error returned.", + "enum": [ + "ALL_INSTANCES_UNHEALTHY", + "BACKEND_SERVICE_DOES_NOT_EXIST", + "CAPPED_AT_MAX_NUM_REPLICAS", + "CUSTOM_METRIC_DATA_POINTS_TOO_SPARSE", + "CUSTOM_METRIC_INVALID", + "MIN_EQUALS_MAX", + "MISSING_CUSTOM_METRIC_DATA_POINTS", + "MISSING_LOAD_BALANCING_DATA_POINTS", + "MORE_THAN_ONE_BACKEND_SERVICE", + "NOT_ENOUGH_QUOTA_AVAILABLE", + "REGION_RESOURCE_STOCKOUT", + "SCALING_TARGET_DOES_NOT_EXIST", + "UNKNOWN", + "UNSUPPORTED_MAX_RATE_LOAD_BALANCING_CONFIGURATION", + "ZONE_RESOURCE_STOCKOUT" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "AutoscalersScopedList": { + "id": "AutoscalersScopedList", + "properties": { + "autoscalers": { + "description": "[Output Only] List of autoscalers contained in this scope.", + "items": { + "$ref": "Autoscaler" + }, + "type": "array" + }, + "warning": { + "description": "[Output Only] Informational warning which replaces the list of autoscalers when the list is empty.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "AutoscalingPolicy": { + "description": "Cloud Autoscaler policy.", + "id": "AutoscalingPolicy", + "properties": { + "coolDownPeriodSec": { + "description": "The number of seconds that the autoscaler should wait before it starts collecting information from a new instance. This prevents the autoscaler from collecting information when the instance is initializing, during which the collected usage would not be reliable. The default time autoscaler waits is 60 seconds.\n\nVirtual machine initialization times might vary because of numerous factors. We recommend that you test how long an instance may take to initialize. To do this, create an instance and time the startup process.", + "format": "int32", + "type": "integer" + }, + "cpuUtilization": { + "$ref": "AutoscalingPolicyCpuUtilization", + "description": "Defines the CPU utilization policy that allows the autoscaler to scale based on the average CPU utilization of a managed instance group." + }, + "customMetricUtilizations": { + "description": "Configuration parameters of autoscaling based on a custom metric.", + "items": { + "$ref": "AutoscalingPolicyCustomMetricUtilization" + }, + "type": "array" + }, + "loadBalancingUtilization": { + "$ref": "AutoscalingPolicyLoadBalancingUtilization", + "description": "Configuration parameters of autoscaling based on load balancer." + }, + "maxNumReplicas": { + "description": "The maximum number of instances that the autoscaler can scale up to. This is required when creating or updating an autoscaler. The maximum number of replicas should not be lower than minimal number of replicas.", + "format": "int32", + "type": "integer" + }, + "minNumReplicas": { + "description": "The minimum number of replicas that the autoscaler can scale down to. This cannot be less than 0. If not provided, autoscaler will choose a default value depending on maximum number of instances allowed.", + "format": "int32", + "type": "integer" + }, + "mode": { + "description": "Defines operating mode for this policy.", + "enum": [ + "OFF", + "ON", + "ONLY_DOWN", + "ONLY_UP" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ], + "type": "string" + }, + "queueBasedScaling": { + "$ref": "AutoscalingPolicyQueueBasedScaling", + "description": "Configuration parameters of autoscaling based on queuing system." + } + }, + "type": "object" + }, + "AutoscalingPolicyCpuUtilization": { + "description": "CPU utilization policy.", + "id": "AutoscalingPolicyCpuUtilization", + "properties": { + "utilizationTarget": { + "description": "The target CPU utilization that the autoscaler should maintain. Must be a float value in the range (0, 1]. If not specified, the default is 0.6.\n\nIf the CPU level is below the target utilization, the autoscaler scales down the number of instances until it reaches the minimum number of instances you specified or until the average CPU of your instances reaches the target utilization.\n\nIf the average CPU is above the target utilization, the autoscaler scales up until it reaches the maximum number of instances you specified or until the average utilization reaches the target utilization.", + "format": "double", + "type": "number" + } + }, + "type": "object" + }, + "AutoscalingPolicyCustomMetricUtilization": { + "description": "Custom utilization metric policy.", + "id": "AutoscalingPolicyCustomMetricUtilization", + "properties": { + "filter": { + "description": "A filter string, compatible with a Stackdriver Monitoring filter string for TimeSeries.list API call. This filter is used to select a specific TimeSeries for the purpose of autoscaling and to determine whether the metric is exporting per-instance or per-group data.\n\nFor the filter to be valid for autoscaling purposes, the following rules apply: \n- You can only use the AND operator for joining selectors. \n- You can only use direct equality comparison operator (=) without any functions for each selector. \n- You can specify the metric in both the filter string and in the metric field. However, if specified in both places, the metric must be identical. \n- The monitored resource type determines what kind of values are expected for the metric. If it is a gce_instance, the autoscaler expects the metric to include a separate TimeSeries for each instance in a group. In such a case, you cannot filter on resource labels.\nIf the resource type is any other value, the autoscaler expects this metric to contain values that apply to the entire autoscaled instance group and resource label filtering can be performed to point autoscaler at the correct TimeSeries to scale upon. This is called a per-group metric for the purpose of autoscaling.\n\nIf not specified, the type defaults to gce_instance. \n\nYou should provide a filter that is selective enough to pick just one TimeSeries for the autoscaled group or for each of the instances (if you are using gce_instance resource type). If multiple TimeSeries are returned upon the query execution, the autoscaler will sum their respective values to obtain its scaling value.", + "type": "string" + }, + "metric": { + "description": "The identifier (type) of the Stackdriver Monitoring metric. The metric cannot have negative values.\n\nThe metric must have a value type of INT64 or DOUBLE.", + "type": "string" + }, + "singleInstanceAssignment": { + "description": "If scaling is based on a per-group metric value that represents the total amount of work to be done or resource usage, set this value to an amount assigned for a single instance of the scaled group. Autoscaler will keep the number of instances proportional to the value of this metric, the metric itself should not change value due to group resizing.\n\nA good metric to use with the target is for example pubsub.googleapis.com/subscription/num_undelivered_messages or a custom metric exporting the total number of requests coming to your instances.\n\nA bad example would be a metric exporting an average or median latency, since this value can't include a chunk assignable to a single instance, it could be better used with utilization_target instead.", + "format": "double", + "type": "number" + }, + "utilizationTarget": { + "description": "The target value of the metric that autoscaler should maintain. This must be a positive value. A utilization metric scales number of virtual machines handling requests to increase or decrease proportionally to the metric.\n\nFor example, a good metric to use as a utilization_target is compute.googleapis.com/instance/network/received_bytes_count. The autoscaler will work to keep this value constant for each of the instances.", + "format": "double", + "type": "number" + }, + "utilizationTargetType": { + "description": "Defines how target utilization value is expressed for a Stackdriver Monitoring metric. Either GAUGE, DELTA_PER_SECOND, or DELTA_PER_MINUTE. If not specified, the default is GAUGE.", + "enum": [ + "DELTA_PER_MINUTE", + "DELTA_PER_SECOND", + "GAUGE" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "AutoscalingPolicyLoadBalancingUtilization": { + "description": "Configuration parameters of autoscaling based on load balancing.", + "id": "AutoscalingPolicyLoadBalancingUtilization", + "properties": { + "utilizationTarget": { + "description": "Fraction of backend capacity utilization (set in HTTP(s) load balancing configuration) that autoscaler should maintain. Must be a positive float value. If not defined, the default is 0.8.", + "format": "double", + "type": "number" + } + }, + "type": "object" + }, + "AutoscalingPolicyQueueBasedScaling": { + "description": "Configuration parameters of autoscaling based on queuing system.", + "id": "AutoscalingPolicyQueueBasedScaling", + "properties": { + "acceptableBacklogPerInstance": { + "description": "Scaling based on the average number of tasks in the queue per each active instance. The autoscaler keeps the average number of tasks per instance below this number, based on data collected in the last couple of minutes. The autoscaler will also take into account incoming tasks when calculating when to scale.", + "format": "double", + "type": "number" + }, + "cloudPubSub": { + "$ref": "AutoscalingPolicyQueueBasedScalingCloudPubSub", + "description": "Configuration for Cloud Pub/Sub subscription queue." + }, + "singleWorkerThroughputPerSec": { + "description": "The scaling algorithm will also calculate throughput estimates on its own; if you explicitly provide this value, the autoscaler will take into account your value as well as automatic estimates when deciding how to scale.", + "format": "double", + "type": "number" + } + }, + "type": "object" + }, + "AutoscalingPolicyQueueBasedScalingCloudPubSub": { + "description": "Configuration parameters for scaling based on Cloud Pub/Sub subscription queue.", + "id": "AutoscalingPolicyQueueBasedScalingCloudPubSub", + "properties": { + "subscription": { + "description": "Cloud Pub/Sub subscription used for scaling. Provide the partial URL (starting with projects/) or just the subscription name. The subscription must be assigned to the topic specified in topicName and must be in a pull configuration. The subscription must belong to the same project as the Autoscaler.", + "type": "string" + }, + "topic": { + "description": "Cloud Pub/Sub topic used for scaling. Provide the partial URL or partial URL (starting with projects/) or just the topic name. The topic must belong to the same project as the Autoscaler resource.", + "type": "string" + } + }, + "type": "object" + }, + "Backend": { + "description": "Message containing information of one individual backend.", + "id": "Backend", + "properties": { + "balancingMode": { + "description": "Specifies the balancing mode for this backend. For global HTTP(S) or TCP/SSL load balancing, the default is UTILIZATION. Valid values are UTILIZATION, RATE (for HTTP(S)) and CONNECTION (for TCP/SSL).\n\nFor Internal Load Balancing, the default and only supported mode is CONNECTION.", + "enum": [ + "CONNECTION", + "RATE", + "UTILIZATION" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, + "capacityScaler": { + "description": "A multiplier applied to the group's maximum servicing capacity (based on UTILIZATION, RATE or CONNECTION). Default value is 1, which means the group will serve up to 100% of its configured capacity (depending on balancingMode). A setting of 0 means the group is completely drained, offering 0% of its available Capacity. Valid range is [0.0,1.0].\n\nThis cannot be used for internal load balancing.", + "format": "float", + "type": "number" + }, + "description": { + "description": "An optional description of this resource. Provide this property when you create the resource.", + "type": "string" + }, + "failover": { + "description": "This field designates whether this is a failover backend. More than one failover backend can be configured for a given BackendService.", + "type": "boolean" + }, + "group": { + "description": "The fully-qualified URL of a Instance Group resource. This instance group defines the list of instances that serve traffic. Member virtual machine instances from each instance group must live in the same zone as the instance group itself. No two backends in a backend service are allowed to use same Instance Group resource.\n\nNote that you must specify an Instance Group resource using the fully-qualified URL, rather than a partial URL.\n\nWhen the BackendService has load balancing scheme INTERNAL, the instance group must be within the same region as the BackendService.", + "type": "string" + }, + "maxConnections": { + "description": "The max number of simultaneous connections for the group. Can be used with either CONNECTION or UTILIZATION balancing modes. For CONNECTION mode, either maxConnections or maxConnectionsPerInstance must be set.\n\nThis cannot be used for internal load balancing.", + "format": "int32", + "type": "integer" + }, + "maxConnectionsPerEndpoint": { + "description": "The max number of simultaneous connections that a single backend network endpoint can handle. This is used to calculate the capacity of the group. Can be used in either CONNECTION or UTILIZATION balancing modes. For CONNECTION mode, either maxConnections or maxConnectionsPerEndpoint must be set.\n\nThis cannot be used for internal load balancing.", + "format": "int32", + "type": "integer" + }, + "maxConnectionsPerInstance": { + "description": "The max number of simultaneous connections that a single backend instance can handle. This is used to calculate the capacity of the group. Can be used in either CONNECTION or UTILIZATION balancing modes. For CONNECTION mode, either maxConnections or maxConnectionsPerInstance must be set.\n\nThis cannot be used for internal load balancing.", + "format": "int32", + "type": "integer" + }, + "maxRate": { + "description": "The max requests per second (RPS) of the group. Can be used with either RATE or UTILIZATION balancing modes, but required if RATE mode. For RATE mode, either maxRate or maxRatePerInstance must be set.\n\nThis cannot be used for internal load balancing.", + "format": "int32", + "type": "integer" + }, + "maxRatePerEndpoint": { + "description": "The max requests per second (RPS) that a single backend network endpoint can handle. This is used to calculate the capacity of the group. Can be used in either balancing mode. For RATE mode, either maxRate or maxRatePerEndpoint must be set.\n\nThis cannot be used for internal load balancing.", + "format": "float", + "type": "number" + }, + "maxRatePerInstance": { + "description": "The max requests per second (RPS) that a single backend instance can handle. This is used to calculate the capacity of the group. Can be used in either balancing mode. For RATE mode, either maxRate or maxRatePerInstance must be set.\n\nThis cannot be used for internal load balancing.", + "format": "float", + "type": "number" + }, + "maxUtilization": { + "description": "Used when balancingMode is UTILIZATION. This ratio defines the CPU utilization target for the group. The default is 0.8. Valid range is [0.0, 1.0].\n\nThis cannot be used for internal load balancing.", + "format": "float", + "type": "number" + } + }, + "type": "object" + }, + "BackendBucket": { + "description": "A BackendBucket resource. This resource defines a Cloud Storage bucket.", + "id": "BackendBucket", + "properties": { + "bucketName": { + "description": "Cloud Storage bucket name.", + "type": "string" + }, + "cdnPolicy": { + "$ref": "BackendBucketCdnPolicy", + "description": "Cloud CDN Coniguration for this BackendBucket." + }, + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "description": { + "description": "An optional textual description of the resource; provided by the client when the resource is created.", + "type": "string" + }, + "enableCdn": { + "description": "If true, enable Cloud CDN for this BackendBucket.", + "type": "boolean" + }, + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "format": "uint64", + "type": "string" + }, + "kind": { + "default": "compute#backendBucket", + "description": "Type of the resource.", + "type": "string" + }, + "name": { + "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + } + }, + "type": "object" + }, + "BackendBucketCdnPolicy": { + "description": "Message containing Cloud CDN configuration for a backend bucket.", + "id": "BackendBucketCdnPolicy", + "properties": { + "signedUrlCacheMaxAgeSec": { + "description": "Number of seconds up to which the response to a signed URL request will be cached in the CDN. After this time period, the Signed URL will be revalidated before being served. Defaults to 1hr (3600s). If this field is set, Cloud CDN will internally act as though all responses from this bucket had a ?Cache-Control: public, max-age=[TTL]? header, regardless of any existing Cache-Control header. The actual headers served in responses will not be altered.", + "format": "int64", + "type": "string" + }, + "signedUrlKeyNames": { + "description": "[Output Only] Names of the keys currently configured for Cloud CDN Signed URL on this backend bucket.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "BackendBucketList": { + "description": "Contains a list of BackendBucket resources.", + "id": "BackendBucketList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of BackendBucket resources.", + "items": { + "$ref": "BackendBucket" + }, + "type": "array" + }, + "kind": { + "default": "compute#backendBucketList", + "description": "Type of resource.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "BackendService": { + "description": "A BackendService resource. This resource defines a group of backend virtual machines and their serving capacity. (== resource_for v1.backendService ==) (== resource_for beta.backendService ==)", + "id": "BackendService", + "properties": { + "affinityCookieTtlSec": { + "description": "Lifetime of cookies in seconds if session_affinity is GENERATED_COOKIE. If set to 0, the cookie is non-persistent and lasts only until the end of the browser session (or equivalent). The maximum allowed value for TTL is one day.\n\nWhen the load balancing scheme is INTERNAL, this field is not used.", + "format": "int32", + "type": "integer" + }, + "appEngineBackend": { + "$ref": "BackendServiceAppEngineBackend", + "description": "Directs request to an App Engine app. cloudFunctionBackend and backends[] must be empty if this is set." + }, + "backends": { + "description": "The list of backends that serve this BackendService.", + "items": { + "$ref": "Backend" + }, + "type": "array" + }, + "cdnPolicy": { + "$ref": "BackendServiceCdnPolicy", + "description": "Cloud CDN configuration for this BackendService." + }, + "cloudFunctionBackend": { + "$ref": "BackendServiceCloudFunctionBackend", + "description": "Directs request to a cloud function. appEngineBackend and backends[] must be empty if this is set." + }, + "connectionDraining": { + "$ref": "ConnectionDraining" + }, + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "customRequestHeaders": { + "description": "Headers that the HTTP/S load balancer should add to proxied requests.", + "items": { + "type": "string" + }, + "type": "array" + }, + "description": { + "description": "An optional description of this resource. Provide this property when you create the resource.", + "type": "string" + }, + "enableCDN": { + "description": "If true, enable Cloud CDN for this BackendService.\n\nWhen the load balancing scheme is INTERNAL, this field is not used.", + "type": "boolean" + }, + "failoverPolicy": { + "$ref": "BackendServiceFailoverPolicy" + }, + "fingerprint": { + "description": "Fingerprint of this resource. A hash of the contents stored in this object. This field is used in optimistic locking. This field will be ignored when inserting a BackendService. An up-to-date fingerprint must be provided in order to update the BackendService.", + "format": "byte", + "type": "string" + }, + "healthChecks": { + "description": "The list of URLs to the HttpHealthCheck or HttpsHealthCheck resource for health checking this BackendService. Currently at most one health check can be specified, and a health check is required for Compute Engine backend services. A health check must not be specified for App Engine backend and Cloud Function backend.\n\nFor internal load balancing, a URL to a HealthCheck resource must be specified instead.", + "items": { + "type": "string" + }, + "type": "array" + }, + "iap": { + "$ref": "BackendServiceIAP" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64", + "type": "string" + }, + "kind": { + "default": "compute#backendService", + "description": "[Output Only] Type of resource. Always compute#backendService for backend services.", + "type": "string" + }, + "loadBalancingScheme": { + "description": "Indicates whether the backend service will be used with internal or external load balancing. A backend service created for one type of load balancing cannot be used with the other. Possible values are INTERNAL and EXTERNAL.", + "enum": [ + "EXTERNAL", + "INTERNAL", + "INVALID_LOAD_BALANCING_SCHEME" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, + "name": { + "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "port": { + "description": "Deprecated in favor of portName. The TCP port to connect on the backend. The default value is 80.\n\nThis cannot be used for internal load balancing.", + "format": "int32", + "type": "integer" + }, + "portName": { + "description": "Name of backend port. The same name should appear in the instance groups referenced by this service. Required when the load balancing scheme is EXTERNAL.\n\nWhen the load balancing scheme is INTERNAL, this field is not used.", + "type": "string" + }, + "protocol": { + "description": "The protocol this BackendService uses to communicate with backends.\n\nPossible values are HTTP, HTTPS, TCP, and SSL. The default is HTTP.\n\nFor internal load balancing, the possible values are TCP and UDP, and the default is TCP.", + "enum": [ + "HTTP", + "HTTP2", + "HTTPS", + "SSL", + "TCP", + "UDP" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "region": { + "description": "[Output Only] URL of the region where the regional backend service resides. This field is not applicable to global backend services. You must specify this field as part of the HTTP request URL. It is not settable as a field in the request body.", + "type": "string" + }, + "securityPolicy": { + "description": "[Output Only] The resource URL for the security policy associated with this backend service.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + }, + "sessionAffinity": { + "description": "Type of session affinity to use. The default is NONE.\n\nWhen the load balancing scheme is EXTERNAL, can be NONE, CLIENT_IP, or GENERATED_COOKIE.\n\nWhen the load balancing scheme is INTERNAL, can be NONE, CLIENT_IP, CLIENT_IP_PROTO, or CLIENT_IP_PORT_PROTO.\n\nWhen the protocol is UDP, this field is not used.", + "enum": [ + "CLIENT_IP", + "CLIENT_IP_PORT_PROTO", + "CLIENT_IP_PROTO", + "GENERATED_COOKIE", + "NONE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "timeoutSec": { + "description": "How many seconds to wait for the backend before considering it a failed request. Default is 30 seconds.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "BackendServiceAggregatedList": { + "description": "Contains a list of BackendServicesScopedList.", + "id": "BackendServiceAggregatedList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "additionalProperties": { + "$ref": "BackendServicesScopedList", + "description": "Name of the scope containing this set of BackendServices." + }, + "description": "A list of BackendServicesScopedList resources.", + "type": "object" + }, + "kind": { + "default": "compute#backendServiceAggregatedList", + "description": "Type of resource.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "BackendServiceAppEngineBackend": { + "description": "Configuration of a App Engine backend.", + "id": "BackendServiceAppEngineBackend", + "properties": { + "appEngineService": { + "description": "Optional. App Engine app service name.", + "type": "string" + }, + "targetProject": { + "description": "Required. Project ID of the project hosting the app. This is the project ID of this project. Reference to another project is not allowed.", + "type": "string" + }, + "version": { + "description": "Optional. Version of App Engine app service. When empty, App Engine will do its normal traffic split.", + "type": "string" + } + }, + "type": "object" + }, + "BackendServiceCdnPolicy": { + "description": "Message containing Cloud CDN configuration for a backend service.", + "id": "BackendServiceCdnPolicy", + "properties": { + "cacheKeyPolicy": { + "$ref": "CacheKeyPolicy", + "description": "The CacheKeyPolicy for this CdnPolicy." + }, + "signedUrlCacheMaxAgeSec": { + "description": "Number of seconds up to which the response to a signed URL request will be cached in the CDN. After this time period, the Signed URL will be revalidated before being served. Defaults to 1hr (3600s). If this field is set, Cloud CDN will internally act as though all responses from this backend had a ?Cache-Control: public, max-age=[TTL]? header, regardless of any existing Cache-Control header. The actual headers served in responses will not be altered.", + "format": "int64", + "type": "string" + }, + "signedUrlKeyNames": { + "description": "[Output Only] Names of the keys currently configured for Cloud CDN Signed URL on this backend service.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "BackendServiceCloudFunctionBackend": { + "description": "Configuration of a Cloud Function backend.", + "id": "BackendServiceCloudFunctionBackend", + "properties": { + "functionName": { + "description": "Required. A cloud function name. Special value ?*? represents all cloud functions in the project.", + "type": "string" + }, + "targetProject": { + "description": "Required. Project ID of the project hosting the cloud function.", + "type": "string" + } + }, + "type": "object" + }, + "BackendServiceFailoverPolicy": { + "id": "BackendServiceFailoverPolicy", + "properties": { + "disableConnectionDrainOnFailover": { + "description": "On failover or failback, this field indicates whether connection drain will be honored. Setting this to true has the following effect: connections to the old active pool are not drained. Connections to the new active pool use the timeout of 10 min (currently fixed). Setting to false has the following effect: both old and new connections will have a drain timeout of 10 min.\n\nThis can be set to true only if the protocol is TCP.\n\nThe default is false.", + "type": "boolean" + }, + "dropTrafficIfUnhealthy": { + "description": "This option is used only when no healthy VMs are detected in the primary and backup instance groups. When set to true, traffic is dropped. When set to false, new connections are sent across all VMs in the primary group.\n\nThe default is false.", + "type": "boolean" + }, + "failoverRatio": { + "description": "The value of the field must be in [0, 1]. If the ratio of the healthy VMs in the primary backend is at or below this number, traffic arriving at the load-balanced IP will be directed to the failover backend.\n\nIn case where 'failoverRatio' is not set or all the VMs in the backup backend are unhealthy, the traffic will be directed back to the primary backend in the \"force\" mode, where traffic will be spread to the healthy VMs with the best effort, or to all VMs when no VM is healthy.\n\nThis field is only used with l4 load balancing.", + "format": "float", + "type": "number" + } + }, + "type": "object" + }, + "BackendServiceGroupHealth": { + "id": "BackendServiceGroupHealth", + "properties": { + "healthStatus": { + "items": { + "$ref": "HealthStatus" + }, + "type": "array" + }, + "kind": { + "default": "compute#backendServiceGroupHealth", + "description": "[Output Only] Type of resource. Always compute#backendServiceGroupHealth for the health of backend services.", + "type": "string" + } + }, + "type": "object" + }, + "BackendServiceIAP": { + "description": "Identity-Aware Proxy", + "id": "BackendServiceIAP", + "properties": { + "enabled": { + "type": "boolean" + }, + "oauth2ClientId": { + "type": "string" + }, + "oauth2ClientSecret": { + "type": "string" + }, + "oauth2ClientSecretSha256": { + "description": "[Output Only] SHA256 hash value for the field oauth2_client_secret above.", + "type": "string" + } + }, + "type": "object" + }, + "BackendServiceList": { + "description": "Contains a list of BackendService resources.", + "id": "BackendServiceList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of BackendService resources.", + "items": { + "$ref": "BackendService" + }, + "type": "array" + }, + "kind": { + "default": "compute#backendServiceList", + "description": "[Output Only] Type of resource. Always compute#backendServiceList for lists of backend services.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "BackendServiceReference": { + "id": "BackendServiceReference", + "properties": { + "backendService": { + "type": "string" + } + }, + "type": "object" + }, + "BackendServicesScopedList": { + "id": "BackendServicesScopedList", + "properties": { + "backendServices": { + "description": "List of BackendServices contained in this scope.", + "items": { + "$ref": "BackendService" + }, + "type": "array" + }, + "warning": { + "description": "Informational warning which replaces the list of backend services when the list is empty.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "Binding": { + "description": "Associates `members` with a `role`.", + "id": "Binding", + "properties": { + "condition": { + "$ref": "Expr", + "description": "The condition that is associated with this binding. NOTE: an unsatisfied condition will not allow user access via current binding. Different bindings, including their conditions, are examined independently. This field is only visible as GOOGLE_INTERNAL or CONDITION_TRUSTED_TESTER." + }, + "members": { + "description": "Specifies the identities requesting access for a Cloud Platform resource. `members` can have the following values:\n\n* `allUsers`: A special identifier that represents anyone who is on the internet; with or without a Google account.\n\n* `allAuthenticatedUsers`: A special identifier that represents anyone who is authenticated with a Google account or a service account.\n\n* `user:{emailid}`: An email address that represents a specific Google account. For example, `alice@gmail.com` or `joe@example.com`.\n\n\n\n* `serviceAccount:{emailid}`: An email address that represents a service account. For example, `my-other-app@appspot.gserviceaccount.com`.\n\n* `group:{emailid}`: An email address that represents a Google group. For example, `admins@example.com`.\n\n\n\n* `domain:{domain}`: A Google Apps domain name that represents all the users of that domain. For example, `google.com` or `example.com`.", + "items": { + "type": "string" + }, + "type": "array" + }, + "role": { + "description": "Role that is assigned to `members`. For example, `roles/viewer`, `roles/editor`, or `roles/owner`.", + "type": "string" + } + }, + "type": "object" + }, + "CacheInvalidationRule": { + "id": "CacheInvalidationRule", + "properties": { + "host": { + "description": "If set, this invalidation rule will only apply to requests with a Host header matching host.", + "type": "string" + }, + "path": { + "type": "string" + } + }, + "type": "object" + }, + "CacheKeyPolicy": { + "description": "Message containing what to include in the cache key for a request for Cloud CDN.", + "id": "CacheKeyPolicy", + "properties": { + "includeHost": { + "description": "If true, requests to different hosts will be cached separately.", + "type": "boolean" + }, + "includeProtocol": { + "description": "If true, http and https requests will be cached separately.", + "type": "boolean" + }, + "includeQueryString": { + "description": "If true, include query string parameters in the cache key according to query_string_whitelist and query_string_blacklist. If neither is set, the entire query string will be included. If false, the query string will be excluded from the cache key entirely.", + "type": "boolean" + }, + "queryStringBlacklist": { + "description": "Names of query string parameters to exclude in cache keys. All other parameters will be included. Either specify query_string_whitelist or query_string_blacklist, not both. '\u0026' and '=' will be percent encoded and not treated as delimiters.", + "items": { + "type": "string" + }, + "type": "array" + }, + "queryStringWhitelist": { + "description": "Names of query string parameters to include in cache keys. All other parameters will be excluded. Either specify query_string_whitelist or query_string_blacklist, not both. '\u0026' and '=' will be percent encoded and not treated as delimiters.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "Commitment": { + "description": "Represents a Commitment resource. Creating a Commitment resource means that you are purchasing a committed use contract with an explicit start and end time. You can create commitments based on vCPUs and memory usage and receive discounted rates. For full details, read Signing Up for Committed Use Discounts.\n\nCommitted use discounts are subject to Google Cloud Platform's Service Specific Terms. By purchasing a committed use discount, you agree to these terms. Committed use discounts will not renew, so you must purchase a new commitment to continue receiving discounts. (== resource_for beta.commitments ==) (== resource_for v1.commitments ==)", + "id": "Commitment", + "properties": { + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "description": { + "description": "An optional description of this resource. Provide this property when you create the resource.", + "type": "string" + }, + "endTimestamp": { + "description": "[Output Only] Commitment end time in RFC3339 text format.", + "type": "string" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64", + "type": "string" + }, + "kind": { + "default": "compute#commitment", + "description": "[Output Only] Type of the resource. Always compute#commitment for commitments.", + "type": "string" + }, + "name": { + "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "plan": { + "description": "The plan for this commitment, which determines duration and discount rate. The currently supported plans are TWELVE_MONTH (1 year), and THIRTY_SIX_MONTH (3 years).", + "enum": [ + "INVALID", + "THIRTY_SIX_MONTH", + "TWELVE_MONTH" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, + "region": { + "description": "[Output Only] URL of the region where this commitment may be used.", + "type": "string" + }, + "resources": { + "description": "List of commitment amounts for particular resources. Note that VCPU and MEMORY resource commitments must occur together.", + "items": { + "$ref": "ResourceCommitment" + }, + "type": "array" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + }, + "startTimestamp": { + "description": "[Output Only] Commitment start time in RFC3339 text format.", + "type": "string" + }, + "status": { + "description": "[Output Only] Status of the commitment with regards to eventual expiration (each commitment has an end date defined). One of the following values: NOT_YET_ACTIVE, ACTIVE, EXPIRED.", + "enum": [ + "ACTIVE", + "CREATING", + "EXPIRED", + "NOT_YET_ACTIVE" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ], + "type": "string" + }, + "statusMessage": { + "description": "[Output Only] An optional, human-readable explanation of the status.", + "type": "string" + }, + "type": { + "description": "The type of commitment, which affects the discount rate and the eligible resources. Type MEMORY_OPTIMIZED_VM specifies a commitment that will only apply to memory optimized VMs. Type NORMAL specifies a commitment that applies to all other resources.", + "enum": [ + "MEMORY_OPTIMIZED_VM", + "NORMAL", + "TYPE_UNSPECIFIED" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "CommitmentAggregatedList": { + "id": "CommitmentAggregatedList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "additionalProperties": { + "$ref": "CommitmentsScopedList", + "description": "[Output Only] Name of the scope containing this set of commitments." + }, + "description": "A list of CommitmentsScopedList resources.", + "type": "object" + }, + "kind": { + "default": "compute#commitmentAggregatedList", + "description": "[Output Only] Type of resource. Always compute#commitmentAggregatedList for aggregated lists of commitments.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "CommitmentList": { + "description": "Contains a list of Commitment resources.", + "id": "CommitmentList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of Commitment resources.", + "items": { + "$ref": "Commitment" + }, + "type": "array" + }, + "kind": { + "default": "compute#commitmentList", + "description": "[Output Only] Type of resource. Always compute#commitmentList for lists of commitments.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "CommitmentsScopedList": { + "id": "CommitmentsScopedList", + "properties": { + "commitments": { + "description": "[Output Only] List of commitments contained in this scope.", + "items": { + "$ref": "Commitment" + }, + "type": "array" + }, + "warning": { + "description": "[Output Only] Informational warning which replaces the list of commitments when the list is empty.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "Condition": { + "description": "A condition to be met.", + "id": "Condition", + "properties": { + "iam": { + "description": "Trusted attributes supplied by the IAM system.", + "enum": [ + "APPROVER", + "ATTRIBUTION", + "AUTHORITY", + "CREDENTIALS_TYPE", + "JUSTIFICATION_TYPE", + "NO_ATTR", + "SECURITY_REALM" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "op": { + "description": "An operator to apply the subject with.", + "enum": [ + "DISCHARGED", + "EQUALS", + "IN", + "NOT_EQUALS", + "NOT_IN", + "NO_OP" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "svc": { + "description": "Trusted attributes discharged by the service.", + "type": "string" + }, + "sys": { + "description": "Trusted attributes supplied by any service that owns resources and uses the IAM system for access control.", + "enum": [ + "IP", + "NAME", + "NO_ATTR", + "REGION", + "SERVICE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "value": { + "description": "DEPRECATED. Use 'values' instead.", + "type": "string" + }, + "values": { + "description": "The objects of the condition. This is mutually exclusive with 'value'.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "ConnectionDraining": { + "description": "Message containing connection draining configuration.", + "id": "ConnectionDraining", + "properties": { + "drainingTimeoutSec": { + "description": "Time for which instance will be drained (not accept new connections, but still work to finish started).", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "CustomerEncryptionKey": { + "description": "Represents a customer-supplied encryption key", + "id": "CustomerEncryptionKey", + "properties": { + "kmsKeyName": { + "description": "The name of the encryption key that is stored in Google Cloud KMS.", + "type": "string" + }, + "rawKey": { + "description": "Specifies a 256-bit customer-supplied encryption key, encoded in RFC 4648 base64 to either encrypt or decrypt this resource.", + "type": "string" + }, + "rsaEncryptedKey": { + "description": "Specifies an RFC 4648 base64 encoded, RSA-wrapped 2048-bit customer-supplied encryption key to either encrypt or decrypt this resource.\n\nThe key must meet the following requirements before you can provide it to Compute Engine: \n- The key is wrapped using a RSA public key certificate provided by Google. \n- After being wrapped, the key must be encoded in RFC 4648 base64 encoding. Get the RSA public key certificate provided by Google at:\nhttps://cloud-certs.storage.googleapis.com/google-cloud-csek-ingress.pem", + "type": "string" + }, + "sha256": { + "description": "[Output only] The RFC 4648 base64 encoded SHA-256 hash of the customer-supplied encryption key that protects this resource.", + "type": "string" + } + }, + "type": "object" + }, + "CustomerEncryptionKeyProtectedDisk": { + "id": "CustomerEncryptionKeyProtectedDisk", + "properties": { + "diskEncryptionKey": { + "$ref": "CustomerEncryptionKey", + "description": "Decrypts data associated with the disk with a customer-supplied encryption key." + }, + "source": { + "description": "Specifies a valid partial or full URL to an existing Persistent Disk resource. This field is only applicable for persistent disks.", + "type": "string" + } + }, + "type": "object" + }, + "DailyMaintenanceWindow": { + "description": "Time window specified for daily maintenance operations.", + "id": "DailyMaintenanceWindow", + "properties": { + "daysInCycle": { + "description": "Allows to define schedule that runs every nth day of the month.", + "format": "int32", + "type": "integer" + }, + "duration": { + "description": "[Output only] Duration of the time window, automatically chosen to be smallest possible in the given scenario.", + "type": "string" + }, + "startTime": { + "description": "Time within the maintenance window to start the maintenance operations. It must be in format \"HH:MM?, where HH : [00-23] and MM : [00-59] GMT.", + "type": "string" + } + }, + "type": "object" + }, + "DeprecationStatus": { + "description": "Deprecation status for a public resource.", + "id": "DeprecationStatus", + "properties": { + "deleted": { + "description": "An optional RFC3339 timestamp on or after which the state of this resource is intended to change to DELETED. This is only informational and the status will not change unless the client explicitly changes it.", + "type": "string" + }, + "deprecated": { + "description": "An optional RFC3339 timestamp on or after which the state of this resource is intended to change to DEPRECATED. This is only informational and the status will not change unless the client explicitly changes it.", + "type": "string" + }, + "obsolete": { + "description": "An optional RFC3339 timestamp on or after which the state of this resource is intended to change to OBSOLETE. This is only informational and the status will not change unless the client explicitly changes it.", + "type": "string" + }, + "replacement": { + "description": "The URL of the suggested replacement for a deprecated resource. The suggested replacement resource must be the same kind of resource as the deprecated resource.", + "type": "string" + }, + "state": { + "description": "The deprecation state of this resource. This can be DEPRECATED, OBSOLETE, or DELETED. Operations which create a new resource using a DEPRECATED resource will return successfully, but with a warning indicating the deprecated resource and recommending its replacement. Operations which use OBSOLETE or DELETED resources will be rejected and result in an error.", + "enum": [ + "DELETED", + "DEPRECATED", + "OBSOLETE" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "Disk": { + "description": "A Disk resource. (== resource_for beta.disks ==) (== resource_for v1.disks ==)", + "id": "Disk", + "properties": { + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "description": { + "description": "An optional description of this resource. Provide this property when you create the resource.", + "type": "string" + }, + "diskEncryptionKey": { + "$ref": "CustomerEncryptionKey", + "description": "Encrypts the disk using a customer-supplied encryption key.\n\nAfter you encrypt a disk with a customer-supplied key, you must provide the same key if you use the disk later (e.g. to create a disk snapshot or an image, or to attach the disk to a virtual machine).\n\nCustomer-supplied encryption keys do not protect access to metadata of the disk.\n\nIf you do not provide an encryption key when creating the disk, then the disk will be encrypted using an automatically generated key and you do not need to provide a key to use the disk later." + }, + "guestOsFeatures": { + "description": "A list of features to enable on the guest operating system. Applicable only for bootable images. Read Enabling guest operating system features to see a list of available options.", + "items": { + "$ref": "GuestOsFeature" + }, + "type": "array" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64", + "type": "string" + }, + "kind": { + "default": "compute#disk", + "description": "[Output Only] Type of the resource. Always compute#disk for disks.", + "type": "string" + }, + "labelFingerprint": { + "description": "A fingerprint for the labels being applied to this disk, which is essentially a hash of the labels set used for optimistic locking. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update labels. You must always provide an up-to-date fingerprint hash in order to update or change labels.\n\nTo see the latest fingerprint, make a get() request to retrieve a disk.", + "format": "byte", + "type": "string" + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Labels to apply to this disk. These can be later modified by the setLabels method.", + "type": "object" + }, + "lastAttachTimestamp": { + "description": "[Output Only] Last attach timestamp in RFC3339 text format.", + "type": "string" + }, + "lastDetachTimestamp": { + "description": "[Output Only] Last detach timestamp in RFC3339 text format.", + "type": "string" + }, + "licenseCodes": { + "description": "Integer license codes indicating which licenses are attached to this disk.", + "items": { + "format": "int64", + "type": "string" + }, + "type": "array" + }, + "licenses": { + "description": "Any applicable publicly visible licenses.", + "items": { + "type": "string" + }, + "type": "array" + }, + "name": { + "annotations": { + "required": [ + "compute.disks.insert" + ] + }, + "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "options": { + "description": "Internal use only.", + "type": "string" + }, + "physicalBlockSizeBytes": { + "description": "Physical block size of the persistent disk, in bytes. If not present in a request, a default value is used. Initially only 4096 is supported, but other powers of two may be added. If an unsupported value is requested, the error message will list the supported values, but even a supported value may be allowed for only some projects.", + "format": "int64", + "type": "string" + }, + "region": { + "description": "[Output Only] URL of the region where the disk resides. Only applicable for regional resources. You must specify this field as part of the HTTP request URL. It is not settable as a field in the request body.", + "type": "string" + }, + "replicaZones": { + "description": "URLs of the zones where the disk should be replicated to. Only applicable for regional resources.", + "items": { + "type": "string" + }, + "type": "array" + }, + "selfLink": { + "description": "[Output Only] Server-defined fully-qualified URL for this resource.", + "type": "string" + }, + "sizeGb": { + "description": "Size of the persistent disk, specified in GB. You can specify this field when creating a persistent disk using the sourceImage or sourceSnapshot parameter, or specify it alone to create an empty persistent disk.\n\nIf you specify this field along with sourceImage or sourceSnapshot, the value of sizeGb must not be less than the size of the sourceImage or the size of the snapshot. Acceptable values are 1 to 65536, inclusive.", + "format": "int64", + "type": "string" + }, + "sourceImage": { + "description": "The source image used to create this disk. If the source image is deleted, this field will not be set.\n\nTo create a disk with one of the public operating system images, specify the image by its family name. For example, specify family/debian-8 to use the latest Debian 8 image:\nprojects/debian-cloud/global/images/family/debian-8\n\n\nAlternatively, use a specific version of a public operating system image:\nprojects/debian-cloud/global/images/debian-8-jessie-vYYYYMMDD\n\n\nTo create a disk with a custom image that you created, specify the image name in the following format:\nglobal/images/my-custom-image\n\n\nYou can also specify a custom image by its image family, which returns the latest version of the image in that family. Replace the image name with family/family-name:\nglobal/images/family/my-image-family", + "type": "string" + }, + "sourceImageEncryptionKey": { + "$ref": "CustomerEncryptionKey", + "description": "The customer-supplied encryption key of the source image. Required if the source image is protected by a customer-supplied encryption key." + }, + "sourceImageId": { + "description": "[Output Only] The ID value of the image used to create this disk. This value identifies the exact image that was used to create this persistent disk. For example, if you created the persistent disk from an image that was later deleted and recreated under the same name, the source image ID would identify the exact version of the image that was used.", + "type": "string" + }, + "sourceSnapshot": { + "description": "The source snapshot used to create this disk. You can provide this as a partial or full URL to the resource. For example, the following are valid values: \n- https://www.googleapis.com/compute/v1/projects/project/global/snapshots/snapshot \n- projects/project/global/snapshots/snapshot \n- global/snapshots/snapshot", + "type": "string" + }, + "sourceSnapshotEncryptionKey": { + "$ref": "CustomerEncryptionKey", + "description": "The customer-supplied encryption key of the source snapshot. Required if the source snapshot is protected by a customer-supplied encryption key." + }, + "sourceSnapshotId": { + "description": "[Output Only] The unique ID of the snapshot used to create this disk. This value identifies the exact snapshot that was used to create this persistent disk. For example, if you created the persistent disk from a snapshot that was later deleted and recreated under the same name, the source snapshot ID would identify the exact version of the snapshot that was used.", + "type": "string" + }, + "status": { + "description": "[Output Only] The status of disk creation.", + "enum": [ + "CREATING", + "FAILED", + "READY", + "RESTORING" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ], + "type": "string" + }, + "storageType": { + "description": "[Deprecated] Storage type of the persistent disk.", + "enum": [ + "HDD", + "SSD" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "type": { + "description": "URL of the disk type resource describing which disk type to use to create the disk. Provide this when creating the disk. For example: project/zones/zone/diskTypes/pd-standard or pd-ssd", + "type": "string" + }, + "users": { + "description": "[Output Only] Links to the users of the disk (attached instances) in form: project/zones/zone/instances/instance", + "items": { + "type": "string" + }, + "type": "array" + }, + "zone": { + "description": "[Output Only] URL of the zone where the disk resides. You must specify this field as part of the HTTP request URL. It is not settable as a field in the request body.", + "type": "string" + } + }, + "type": "object" + }, + "DiskAggregatedList": { + "id": "DiskAggregatedList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "additionalProperties": { + "$ref": "DisksScopedList", + "description": "[Output Only] Name of the scope containing this set of disks." + }, + "description": "A list of DisksScopedList resources.", + "type": "object" + }, + "kind": { + "default": "compute#diskAggregatedList", + "description": "[Output Only] Type of resource. Always compute#diskAggregatedList for aggregated lists of persistent disks.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "DiskInstantiationConfig": { + "description": "A specification of the desired way to instantiate a disk in the instance template when its created from a source instance.", + "id": "DiskInstantiationConfig", + "properties": { + "autoDelete": { + "description": "Specifies whether the disk will be auto-deleted when the instance is deleted (but not when the disk is detached from the instance).", + "type": "boolean" + }, + "customImage": { + "description": "The custom source image to be used to restore this disk when instantiating this instance template.", + "type": "string" + }, + "deviceName": { + "description": "Specifies the device name of the disk to which the configurations apply to.", + "type": "string" + }, + "instantiateFrom": { + "description": "Specifies whether to include the disk and what image to use. Possible values are: \n- source-image: to use the same image that was used to create the source instance's corresponding disk. Applicable to the boot disk and additional read-write disks. \n- source-image-family: to use the same image family that was used to create the source instance's corresponding disk. Applicable to the boot disk and additional read-write disks. \n- custom-image: to use a user-provided image url for disk creation. Applicable to the boot disk and additional read-write disks. \n- attach-read-only: to attach a read-only disk. Applicable to read-only disks. \n- do-not-include: to exclude a disk from the template. Applicable to additional read-write disks, local SSDs, and read-only disks.", + "enum": [ + "ATTACH_READ_ONLY", + "BLANK", + "CUSTOM_IMAGE", + "DEFAULT", + "DO_NOT_INCLUDE", + "SOURCE_IMAGE", + "SOURCE_IMAGE_FAMILY" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "DiskList": { + "description": "A list of Disk resources.", + "id": "DiskList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of Disk resources.", + "items": { + "$ref": "Disk" + }, + "type": "array" + }, + "kind": { + "default": "compute#diskList", + "description": "[Output Only] Type of resource. Always compute#diskList for lists of disks.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "DiskMoveRequest": { + "id": "DiskMoveRequest", + "properties": { + "destinationZone": { + "description": "The URL of the destination zone to move the disk. This can be a full or partial URL. For example, the following are all valid URLs to a zone: \n- https://www.googleapis.com/compute/v1/projects/project/zones/zone \n- projects/project/zones/zone \n- zones/zone", + "type": "string" + }, + "targetDisk": { + "description": "The URL of the target disk to move. This can be a full or partial URL. For example, the following are all valid URLs to a disk: \n- https://www.googleapis.com/compute/v1/projects/project/zones/zone/disks/disk \n- projects/project/zones/zone/disks/disk \n- zones/zone/disks/disk", + "type": "string" + } + }, + "type": "object" + }, + "DiskType": { + "description": "A DiskType resource. (== resource_for beta.diskTypes ==) (== resource_for v1.diskTypes ==)", + "id": "DiskType", + "properties": { + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "defaultDiskSizeGb": { + "description": "[Output Only] Server-defined default disk size in GB.", + "format": "int64", + "type": "string" + }, + "deprecated": { + "$ref": "DeprecationStatus", + "description": "[Output Only] The deprecation status associated with this disk type." + }, + "description": { + "description": "[Output Only] An optional description of this resource.", + "type": "string" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64", + "type": "string" + }, + "kind": { + "default": "compute#diskType", + "description": "[Output Only] Type of the resource. Always compute#diskType for disk types.", + "type": "string" + }, + "name": { + "description": "[Output Only] Name of the resource.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + }, + "validDiskSize": { + "description": "[Output Only] An optional textual description of the valid disk size, such as \"10GB-10TB\".", + "type": "string" + }, + "zone": { + "description": "[Output Only] URL of the zone where the disk type resides. You must specify this field as part of the HTTP request URL. It is not settable as a field in the request body.", + "type": "string" + } + }, + "type": "object" + }, + "DiskTypeAggregatedList": { + "id": "DiskTypeAggregatedList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "additionalProperties": { + "$ref": "DiskTypesScopedList", + "description": "[Output Only] Name of the scope containing this set of disk types." + }, + "description": "A list of DiskTypesScopedList resources.", + "type": "object" + }, + "kind": { + "default": "compute#diskTypeAggregatedList", + "description": "[Output Only] Type of resource. Always compute#diskTypeAggregatedList.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "DiskTypeList": { + "description": "Contains a list of disk types.", + "id": "DiskTypeList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of DiskType resources.", + "items": { + "$ref": "DiskType" + }, + "type": "array" + }, + "kind": { + "default": "compute#diskTypeList", + "description": "[Output Only] Type of resource. Always compute#diskTypeList for disk types.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "DiskTypesScopedList": { + "id": "DiskTypesScopedList", + "properties": { + "diskTypes": { + "description": "[Output Only] List of disk types contained in this scope.", + "items": { + "$ref": "DiskType" + }, + "type": "array" + }, + "warning": { + "description": "[Output Only] Informational warning which replaces the list of disk types when the list is empty.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "DisksResizeRequest": { + "id": "DisksResizeRequest", + "properties": { + "sizeGb": { + "description": "The new size of the persistent disk, which is specified in GB.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "DisksScopedList": { + "id": "DisksScopedList", + "properties": { + "disks": { + "description": "[Output Only] List of disks contained in this scope.", + "items": { + "$ref": "Disk" + }, + "type": "array" + }, + "warning": { + "description": "[Output Only] Informational warning which replaces the list of disks when the list is empty.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "DistributionPolicy": { + "id": "DistributionPolicy", + "properties": { + "zones": { + "items": { + "$ref": "DistributionPolicyZoneConfiguration" + }, + "type": "array" + } + }, + "type": "object" + }, + "DistributionPolicyZoneConfiguration": { + "id": "DistributionPolicyZoneConfiguration", + "properties": { + "zone": { + "annotations": { + "required": [ + "compute.regionInstanceGroupManagers.insert", + "compute.regionInstanceGroupManagers.update" + ] + }, + "description": "URL of the zone where managed instance group is spawning instances (for regional resources). Zone has to belong to the region where managed instance group is located.", + "type": "string" + } + }, + "type": "object" + }, + "Expr": { + "description": "Represents an expression text. Example:\n\ntitle: \"User account presence\" description: \"Determines whether the request has a user account\" expression: \"size(request.user) \u003e 0\"", + "id": "Expr", + "properties": { + "description": { + "description": "An optional description of the expression. This is a longer text which describes the expression, e.g. when hovered over it in a UI.", + "type": "string" + }, + "expression": { + "description": "Textual representation of an expression in Common Expression Language syntax.\n\nThe application context of the containing message determines which well-known feature set of CEL is supported.", + "type": "string" + }, + "location": { + "description": "An optional string indicating the location of the expression for error reporting, e.g. a file name and a position in the file.", + "type": "string" + }, + "title": { + "description": "An optional title for the expression, i.e. a short string describing its purpose. This can be used e.g. in UIs which allow to enter the expression.", + "type": "string" + } + }, + "type": "object" + }, + "Firewall": { + "description": "Represents a Firewall resource.", + "id": "Firewall", + "properties": { + "allowed": { + "description": "The list of ALLOW rules specified by this firewall. Each rule specifies a protocol and port-range tuple that describes a permitted connection.", + "items": { + "properties": { + "IPProtocol": { + "description": "The IP protocol to which this rule applies. The protocol type is required when creating a firewall rule. This value can either be one of the following well known protocol strings (tcp, udp, icmp, esp, ah, ipip, sctp), or the IP protocol number.", + "type": "string" + }, + "ports": { + "description": "An optional list of ports to which this rule applies. This field is only applicable for UDP or TCP protocol. Each entry must be either an integer or a range. If not specified, this rule applies to connections through any port.\n\nExample inputs include: [\"22\"], [\"80\",\"443\"], and [\"12345-12349\"].", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "type": "array" + }, + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "denied": { + "description": "The list of DENY rules specified by this firewall. Each rule specifies a protocol and port-range tuple that describes a denied connection.", + "items": { + "properties": { + "IPProtocol": { + "description": "The IP protocol to which this rule applies. The protocol type is required when creating a firewall rule. This value can either be one of the following well known protocol strings (tcp, udp, icmp, esp, ah, ipip, sctp), or the IP protocol number.", + "type": "string" + }, + "ports": { + "description": "An optional list of ports to which this rule applies. This field is only applicable for UDP or TCP protocol. Each entry must be either an integer or a range. If not specified, this rule applies to connections through any port.\n\nExample inputs include: [\"22\"], [\"80\",\"443\"], and [\"12345-12349\"].", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "type": "array" + }, + "description": { + "description": "An optional description of this resource. Provide this property when you create the resource.", + "type": "string" + }, + "destinationRanges": { + "description": "If destination ranges are specified, the firewall will apply only to traffic that has destination IP address in these ranges. These ranges must be expressed in CIDR format. Only IPv4 is supported.", + "items": { + "type": "string" + }, + "type": "array" + }, + "direction": { + "description": "Direction of traffic to which this firewall applies; default is INGRESS. Note: For INGRESS traffic, it is NOT supported to specify destinationRanges; For EGRESS traffic, it is NOT supported to specify sourceRanges OR sourceTags.", + "enum": [ + "EGRESS", + "INGRESS" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "disabled": { + "description": "Denotes whether the firewall rule is disabled, i.e not applied to the network it is associated with. When set to true, the firewall rule is not enforced and the network behaves as if it did not exist. If this is unspecified, the firewall rule will be enabled.", + "type": "boolean" + }, + "enableLogging": { + "description": "This field denotes whether to enable logging for a particular firewall rule. If logging is enabled, logs will be exported to the configured export destination for all firewall logs in the network. Logs may be exported to BigQuery or Pub/Sub.", + "type": "boolean" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64", + "type": "string" + }, + "kind": { + "default": "compute#firewall", + "description": "[Output Only] Type of the resource. Always compute#firewall for firewall rules.", + "type": "string" + }, + "name": { + "annotations": { + "required": [ + "compute.firewalls.insert", + "compute.firewalls.patch" + ] + }, + "description": "Name of the resource; provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "network": { + "description": "URL of the network resource for this firewall rule. If not specified when creating a firewall rule, the default network is used:\nglobal/networks/default\nIf you choose to specify this property, you can specify the network as a full or partial URL. For example, the following are all valid URLs: \n- https://www.googleapis.com/compute/v1/projects/myproject/global/networks/my-network \n- projects/myproject/global/networks/my-network \n- global/networks/default", + "type": "string" + }, + "priority": { + "description": "Priority for this rule. This is an integer between 0 and 65535, both inclusive. When not specified, the value assumed is 1000. Relative priorities determine precedence of conflicting rules. Lower value of priority implies higher precedence (eg, a rule with priority 0 has higher precedence than a rule with priority 1). DENY rules take precedence over ALLOW rules having equal priority.", + "format": "int32", + "type": "integer" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + }, + "sourceRanges": { + "description": "If source ranges are specified, the firewall will apply only to traffic that has source IP address in these ranges. These ranges must be expressed in CIDR format. One or both of sourceRanges and sourceTags may be set. If both properties are set, the firewall will apply to traffic that has source IP address within sourceRanges OR the source IP that belongs to a tag listed in the sourceTags property. The connection does not need to match both properties for the firewall to apply. Only IPv4 is supported.", + "items": { + "type": "string" + }, + "type": "array" + }, + "sourceServiceAccounts": { + "description": "If source service accounts are specified, the firewall will apply only to traffic originating from an instance with a service account in this list. Source service accounts cannot be used to control traffic to an instance's external IP address because service accounts are associated with an instance, not an IP address. sourceRanges can be set at the same time as sourceServiceAccounts. If both are set, the firewall will apply to traffic that has source IP address within sourceRanges OR the source IP belongs to an instance with service account listed in sourceServiceAccount. The connection does not need to match both properties for the firewall to apply. sourceServiceAccounts cannot be used at the same time as sourceTags or targetTags.", + "items": { + "type": "string" + }, + "type": "array" + }, + "sourceTags": { + "description": "If source tags are specified, the firewall rule applies only to traffic with source IPs that match the primary network interfaces of VM instances that have the tag and are in the same VPC network. Source tags cannot be used to control traffic to an instance's external IP address, it only applies to traffic between instances in the same virtual network. Because tags are associated with instances, not IP addresses. One or both of sourceRanges and sourceTags may be set. If both properties are set, the firewall will apply to traffic that has source IP address within sourceRanges OR the source IP that belongs to a tag listed in the sourceTags property. The connection does not need to match both properties for the firewall to apply.", + "items": { + "type": "string" + }, + "type": "array" + }, + "targetServiceAccounts": { + "description": "A list of service accounts indicating sets of instances located in the network that may make network connections as specified in allowed[]. targetServiceAccounts cannot be used at the same time as targetTags or sourceTags. If neither targetServiceAccounts nor targetTags are specified, the firewall rule applies to all instances on the specified network.", + "items": { + "type": "string" + }, + "type": "array" + }, + "targetTags": { + "description": "A list of tags that controls which instances the firewall rule applies to. If targetTags are specified, then the firewall rule applies only to instances in the VPC network that have one of those tags. If no targetTags are specified, the firewall rule applies to all instances on the specified network.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "FirewallList": { + "description": "Contains a list of firewalls.", + "id": "FirewallList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of Firewall resources.", + "items": { + "$ref": "Firewall" + }, + "type": "array" + }, + "kind": { + "default": "compute#firewallList", + "description": "[Output Only] Type of resource. Always compute#firewallList for lists of firewalls.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "FixedOrPercent": { + "description": "Encapsulates numeric value that can be either absolute or relative.", + "id": "FixedOrPercent", + "properties": { + "calculated": { + "description": "[Output Only] Absolute value of VM instances calculated based on the specific mode.\n\n \n- If the value is fixed, then the caculated value is equal to the fixed value. \n- If the value is a percent, then the calculated value is percent/100 * targetSize. For example, the calculated value of a 80% of a managed instance group with 150 instances would be (80/100 * 150) = 120 VM instances. If there is a remainder, the number is rounded up.", + "format": "int32", + "type": "integer" + }, + "fixed": { + "description": "Specifies a fixed number of VM instances. This must be a positive integer.", + "format": "int32", + "type": "integer" + }, + "percent": { + "description": "Specifies a percentage of instances between 0 to 100%, inclusive. For example, specify 80 for 80%.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "ForwardingRule": { + "description": "A ForwardingRule resource. A ForwardingRule resource specifies which pool of target virtual machines to forward a packet to if it matches the given [IPAddress, IPProtocol, ports] tuple. (== resource_for beta.forwardingRules ==) (== resource_for v1.forwardingRules ==) (== resource_for beta.globalForwardingRules ==) (== resource_for v1.globalForwardingRules ==) (== resource_for beta.regionForwardingRules ==) (== resource_for v1.regionForwardingRules ==)", + "id": "ForwardingRule", + "properties": { + "IPAddress": { + "description": "The IP address that this forwarding rule is serving on behalf of.\n\nAddresses are restricted based on the forwarding rule's load balancing scheme (EXTERNAL or INTERNAL) and scope (global or regional).\n\nWhen the load balancing scheme is EXTERNAL, for global forwarding rules, the address must be a global IP, and for regional forwarding rules, the address must live in the same region as the forwarding rule. If this field is empty, an ephemeral IPv4 address from the same scope (global or regional) will be assigned. A regional forwarding rule supports IPv4 only. A global forwarding rule supports either IPv4 or IPv6.\n\nWhen the load balancing scheme is INTERNAL, this can only be an RFC 1918 IP address belonging to the network/subnet configured for the forwarding rule. By default, if this field is empty, an ephemeral internal IP address will be automatically allocated from the IP range of the subnet or network configured for this forwarding rule.\n\nAn address can be specified either by a literal IP address or a URL reference to an existing Address resource. The following examples are all valid: \n- 100.1.2.3 \n- https://www.googleapis.com/compute/v1/projects/project/regions/region/addresses/address \n- projects/project/regions/region/addresses/address \n- regions/region/addresses/address \n- global/addresses/address \n- address", + "type": "string" + }, + "IPProtocol": { + "description": "The IP protocol to which this rule applies. Valid options are TCP, UDP, ESP, AH, SCTP or ICMP.\n\nWhen the load balancing scheme is INTERNAL, only TCP and UDP are valid.", + "enum": [ + "AH", + "ESP", + "ICMP", + "SCTP", + "TCP", + "UDP" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "backendService": { + "description": "This field is not used for external load balancing.\n\nFor internal load balancing, this field identifies the BackendService resource to receive the matched traffic.", + "type": "string" + }, + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "description": { + "description": "An optional description of this resource. Provide this property when you create the resource.", + "type": "string" + }, + "fingerprint": { + "description": "Fingerprint of this resource. A hash of the contents stored in this object. This field is used in optimistic locking. This field will be ignored when inserting a ForwardingRule. Include the fingerprint in patch request to ensure that you do not overwrite changes that were applied from another concurrent request.\n\nTo see the latest fingerprint, make a get() request to retrieve a ForwardingRule.", + "format": "byte", + "type": "string" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64", + "type": "string" + }, + "ipVersion": { + "description": "The IP Version that will be used by this forwarding rule. Valid options are IPV4 or IPV6. This can only be specified for a global forwarding rule.", + "enum": [ + "IPV4", + "IPV6", + "UNSPECIFIED_VERSION" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, + "kind": { + "default": "compute#forwardingRule", + "description": "[Output Only] Type of the resource. Always compute#forwardingRule for Forwarding Rule resources.", + "type": "string" + }, + "labelFingerprint": { + "description": "A fingerprint for the labels being applied to this resource, which is essentially a hash of the labels set used for optimistic locking. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update labels. You must always provide an up-to-date fingerprint hash in order to update or change labels.\n\nTo see the latest fingerprint, make a get() request to retrieve a ForwardingRule.", + "format": "byte", + "type": "string" + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Labels to apply to this resource. These can be later modified by the setLabels method. Each label key/value pair must comply with RFC1035. Label values may be empty.", + "type": "object" + }, + "loadBalancingScheme": { + "description": "This signifies what the ForwardingRule will be used for and can only take the following values: INTERNAL, EXTERNAL The value of INTERNAL means that this will be used for Internal Network Load Balancing (TCP, UDP). The value of EXTERNAL means that this will be used for External Load Balancing (HTTP(S) LB, External TCP/UDP LB, SSL Proxy)", + "enum": [ + "EXTERNAL", + "INTERNAL", + "INTERNAL_SELF_MANAGED", + "INVALID" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ], + "type": "string" + }, + "name": { + "description": "Name of the resource; provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "network": { + "description": "This field is not used for external load balancing.\n\nFor internal load balancing, this field identifies the network that the load balanced IP should belong to for this Forwarding Rule. If this field is not specified, the default network will be used.", + "type": "string" + }, + "networkTier": { + "description": "This signifies the networking tier used for configuring this load balancer and can only take the following values: PREMIUM , STANDARD.\n\nFor regional ForwardingRule, the valid values are PREMIUM and STANDARD. For GlobalForwardingRule, the valid value is PREMIUM.\n\nIf this field is not specified, it is assumed to be PREMIUM. If IPAddress is specified, this value must be equal to the networkTier of the Address.", + "enum": [ + "PREMIUM", + "SELECT", + "STANDARD" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, + "portRange": { + "description": "This field is used along with the target field for TargetHttpProxy, TargetHttpsProxy, TargetSslProxy, TargetTcpProxy, TargetVpnGateway, TargetPool, TargetInstance.\n\nApplicable only when IPProtocol is TCP, UDP, or SCTP, only packets addressed to ports in the specified range will be forwarded to target. Forwarding rules with the same [IPAddress, IPProtocol] pair must have disjoint port ranges.\n\nSome types of forwarding target have constraints on the acceptable ports: \n- TargetHttpProxy: 80, 8080 \n- TargetHttpsProxy: 443 \n- TargetTcpProxy: 25, 43, 110, 143, 195, 443, 465, 587, 700, 993, 995, 1688, 1883, 5222 \n- TargetSslProxy: 25, 43, 110, 143, 195, 443, 465, 587, 700, 993, 995, 1688, 1883, 5222 \n- TargetVpnGateway: 500, 4500", + "type": "string" + }, + "ports": { + "description": "This field is used along with the backend_service field for internal load balancing.\n\nWhen the load balancing scheme is INTERNAL, a single port or a comma separated list of ports can be configured. Only packets addressed to these ports will be forwarded to the backends configured with this forwarding rule.\n\nYou may specify a maximum of up to 5 ports.", + "items": { + "type": "string" + }, + "type": "array" + }, + "region": { + "description": "[Output Only] URL of the region where the regional forwarding rule resides. This field is not applicable to global forwarding rules. You must specify this field as part of the HTTP request URL. It is not settable as a field in the request body.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + }, + "serviceLabel": { + "description": "An optional prefix to the service name for this Forwarding Rule. If specified, will be the first label of the fully qualified service name.\n\nThe label must be 1-63 characters long, and comply with RFC1035. Specifically, the label must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.\n\nThis field is only used for internal load balancing.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "serviceName": { + "description": "[Output Only] The internal fully qualified service name for this Forwarding Rule.\n\nThis field is only used for internal load balancing.", + "type": "string" + }, + "subnetwork": { + "description": "This field is not used for external load balancing.\n\nFor internal load balancing, this field identifies the subnetwork that the load balanced IP should belong to for this Forwarding Rule.\n\nIf the network specified is in auto subnet mode, this field is optional. However, if the network is in custom subnet mode, a subnetwork must be specified.", + "type": "string" + }, + "target": { + "description": "The URL of the target resource to receive the matched traffic. For regional forwarding rules, this target must live in the same region as the forwarding rule. For global forwarding rules, this target must be a global load balancing resource. The forwarded traffic must be of a type appropriate to the target object.", + "type": "string" + } + }, + "type": "object" + }, + "ForwardingRuleAggregatedList": { + "id": "ForwardingRuleAggregatedList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "additionalProperties": { + "$ref": "ForwardingRulesScopedList", + "description": "Name of the scope containing this set of addresses." + }, + "description": "A list of ForwardingRulesScopedList resources.", + "type": "object" + }, + "kind": { + "default": "compute#forwardingRuleAggregatedList", + "description": "[Output Only] Type of resource. Always compute#forwardingRuleAggregatedList for lists of forwarding rules.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "ForwardingRuleList": { + "description": "Contains a list of ForwardingRule resources.", + "id": "ForwardingRuleList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of ForwardingRule resources.", + "items": { + "$ref": "ForwardingRule" + }, + "type": "array" + }, + "kind": { + "default": "compute#forwardingRuleList", + "description": "Type of resource.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "ForwardingRuleReference": { + "id": "ForwardingRuleReference", + "properties": { + "forwardingRule": { + "type": "string" + } + }, + "type": "object" + }, + "ForwardingRulesScopedList": { + "id": "ForwardingRulesScopedList", + "properties": { + "forwardingRules": { + "description": "List of forwarding rules contained in this scope.", + "items": { + "$ref": "ForwardingRule" + }, + "type": "array" + }, + "warning": { + "description": "Informational warning which replaces the list of forwarding rules when the list is empty.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "GlobalSetLabelsRequest": { + "id": "GlobalSetLabelsRequest", + "properties": { + "labelFingerprint": { + "description": "The fingerprint of the previous set of labels for this resource, used to detect conflicts. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update labels. You must always provide an up-to-date fingerprint hash when updating or changing labels. Make a get() request to the resource to get the latest fingerprint.", + "format": "byte", + "type": "string" + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "A list of labels to apply for this resource. Each label key \u0026 value must comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash. For example, \"webserver-frontend\": \"images\". A label value can also be empty (e.g. \"my-label\": \"\").", + "type": "object" + } + }, + "type": "object" + }, + "GuestAttributes": { + "description": "A guest attributes entry.", + "id": "GuestAttributes", + "properties": { + "kind": { + "default": "compute#guestAttributes", + "description": "[Output Only] Type of the resource. Always compute#guestAttributes for guest attributes entry.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "variableKey": { + "description": "The key to search for.", + "type": "string" + }, + "variableValue": { + "description": "[Output Only] The value found for the requested key.", + "type": "string" + } + }, + "type": "object" + }, + "GuestOsFeature": { + "description": "Guest OS features.", + "id": "GuestOsFeature", + "properties": { + "type": { + "description": "The ID of a supported feature. Read Enabling guest operating system features to see a list of available options.", + "enum": [ + "FEATURE_TYPE_UNSPECIFIED", + "MULTI_IP_SUBNET", + "SECURE_BOOT", + "UEFI_COMPATIBLE", + "VIRTIO_SCSI_MULTIQUEUE", + "WINDOWS" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "HTTP2HealthCheck": { + "id": "HTTP2HealthCheck", + "properties": { + "host": { + "description": "The value of the host header in the HTTP/2 health check request. If left empty (default value), the IP on behalf of which this health check is performed will be used.", + "type": "string" + }, + "port": { + "description": "The TCP port number for the health check request. The default value is 443. Valid values are 1 through 65535.", + "format": "int32", + "type": "integer" + }, + "portName": { + "description": "Port name as defined in InstanceGroup#NamedPort#name. If both port and port_name are defined, port takes precedence.", + "type": "string" + }, + "portSpecification": { + "description": "Specifies how port is selected for health checking, can be one of following values:\nUSE_FIXED_PORT: The port number in\nport\nis used for health checking.\nUSE_NAMED_PORT: The\nportName\nis used for health checking.\nUSE_SERVING_PORT: For NetworkEndpointGroup, the port specified for each network endpoint is used for health checking. For other backends, the port or named port specified in the Backend Service is used for health checking.\n\n\nIf not specified, HTTP2 health check follows behavior specified in\nport\nand\nportName\nfields.", + "enum": [ + "USE_FIXED_PORT", + "USE_NAMED_PORT", + "USE_SERVING_PORT" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, + "proxyHeader": { + "description": "Specifies the type of proxy header to append before sending data to the backend, either NONE or PROXY_V1. The default is NONE.", + "enum": [ + "NONE", + "PROXY_V1" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "requestPath": { + "description": "The request path of the HTTP/2 health check request. The default value is /.", + "type": "string" + }, + "response": { + "description": "The string to match anywhere in the first 1024 bytes of the response body. If left empty (the default value), the status code determines health. The response data can only be ASCII.", + "type": "string" + } + }, + "type": "object" + }, + "HTTPHealthCheck": { + "id": "HTTPHealthCheck", + "properties": { + "host": { + "description": "The value of the host header in the HTTP health check request. If left empty (default value), the IP on behalf of which this health check is performed will be used.", + "type": "string" + }, + "port": { + "description": "The TCP port number for the health check request. The default value is 80. Valid values are 1 through 65535.", + "format": "int32", + "type": "integer" + }, + "portName": { + "description": "Port name as defined in InstanceGroup#NamedPort#name. If both port and port_name are defined, port takes precedence.", + "type": "string" + }, + "portSpecification": { + "description": "Specifies how port is selected for health checking, can be one of following values:\nUSE_FIXED_PORT: The port number in\nport\nis used for health checking.\nUSE_NAMED_PORT: The\nportName\nis used for health checking.\nUSE_SERVING_PORT: For NetworkEndpointGroup, the port specified for each network endpoint is used for health checking. For other backends, the port or named port specified in the Backend Service is used for health checking.\n\n\nIf not specified, HTTP health check follows behavior specified in\nport\nand\nportName\nfields.", + "enum": [ + "USE_FIXED_PORT", + "USE_NAMED_PORT", + "USE_SERVING_PORT" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, + "proxyHeader": { + "description": "Specifies the type of proxy header to append before sending data to the backend, either NONE or PROXY_V1. The default is NONE.", + "enum": [ + "NONE", + "PROXY_V1" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "requestPath": { + "description": "The request path of the HTTP health check request. The default value is /.", + "type": "string" + }, + "response": { + "description": "The string to match anywhere in the first 1024 bytes of the response body. If left empty (the default value), the status code determines health. The response data can only be ASCII.", + "type": "string" + } + }, + "type": "object" + }, + "HTTPSHealthCheck": { + "id": "HTTPSHealthCheck", + "properties": { + "host": { + "description": "The value of the host header in the HTTPS health check request. If left empty (default value), the IP on behalf of which this health check is performed will be used.", + "type": "string" + }, + "port": { + "description": "The TCP port number for the health check request. The default value is 443. Valid values are 1 through 65535.", + "format": "int32", + "type": "integer" + }, + "portName": { + "description": "Port name as defined in InstanceGroup#NamedPort#name. If both port and port_name are defined, port takes precedence.", + "type": "string" + }, + "portSpecification": { + "description": "Specifies how port is selected for health checking, can be one of following values:\nUSE_FIXED_PORT: The port number in\nport\nis used for health checking.\nUSE_NAMED_PORT: The\nportName\nis used for health checking.\nUSE_SERVING_PORT: For NetworkEndpointGroup, the port specified for each network endpoint is used for health checking. For other backends, the port or named port specified in the Backend Service is used for health checking.\n\n\nIf not specified, HTTPS health check follows behavior specified in\nport\nand\nportName\nfields.", + "enum": [ + "USE_FIXED_PORT", + "USE_NAMED_PORT", + "USE_SERVING_PORT" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, + "proxyHeader": { + "description": "Specifies the type of proxy header to append before sending data to the backend, either NONE or PROXY_V1. The default is NONE.", + "enum": [ + "NONE", + "PROXY_V1" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "requestPath": { + "description": "The request path of the HTTPS health check request. The default value is /.", + "type": "string" + }, + "response": { + "description": "The string to match anywhere in the first 1024 bytes of the response body. If left empty (the default value), the status code determines health. The response data can only be ASCII.", + "type": "string" + } + }, + "type": "object" + }, + "HealthCheck": { + "description": "An HealthCheck resource. This resource defines a template for how individual virtual machines should be checked for health, via one of the supported protocols.", + "id": "HealthCheck", + "properties": { + "checkIntervalSec": { + "description": "How often (in seconds) to send a health check. The default value is 5 seconds.", + "format": "int32", + "type": "integer" + }, + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in 3339 text format.", + "type": "string" + }, + "description": { + "description": "An optional description of this resource. Provide this property when you create the resource.", + "type": "string" + }, + "healthyThreshold": { + "description": "A so-far unhealthy instance will be marked healthy after this many consecutive successes. The default value is 2.", + "format": "int32", + "type": "integer" + }, + "http2HealthCheck": { + "$ref": "HTTP2HealthCheck" + }, + "httpHealthCheck": { + "$ref": "HTTPHealthCheck" + }, + "httpsHealthCheck": { + "$ref": "HTTPSHealthCheck" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64", + "type": "string" + }, + "kind": { + "default": "compute#healthCheck", + "description": "Type of the resource.", + "type": "string" + }, + "name": { + "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "region": { + "description": "[Output Only] Region where the health check resides. Not applicable to global health checks.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + }, + "sslHealthCheck": { + "$ref": "SSLHealthCheck" + }, + "tcpHealthCheck": { + "$ref": "TCPHealthCheck" + }, + "timeoutSec": { + "description": "How long (in seconds) to wait before claiming failure. The default value is 5 seconds. It is invalid for timeoutSec to have greater value than checkIntervalSec.", + "format": "int32", + "type": "integer" + }, + "type": { + "description": "Specifies the type of the healthCheck, either TCP, SSL, HTTP or HTTPS. If not specified, the default is TCP. Exactly one of the protocol-specific health check field must be specified, which must match type field.", + "enum": [ + "HTTP", + "HTTP2", + "HTTPS", + "INVALID", + "SSL", + "TCP", + "UDP" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "udpHealthCheck": { + "$ref": "UDPHealthCheck" + }, + "unhealthyThreshold": { + "description": "A so-far healthy instance will be marked unhealthy after this many consecutive failures. The default value is 2.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "HealthCheckList": { + "description": "Contains a list of HealthCheck resources.", + "id": "HealthCheckList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of HealthCheck resources.", + "items": { + "$ref": "HealthCheck" + }, + "type": "array" + }, + "kind": { + "default": "compute#healthCheckList", + "description": "Type of resource.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "HealthCheckReference": { + "description": "A full or valid partial URL to a health check. For example, the following are valid URLs: \n- https://www.googleapis.com/compute/beta/projects/project-id/global/httpHealthChecks/health-check \n- projects/project-id/global/httpHealthChecks/health-check \n- global/httpHealthChecks/health-check", + "id": "HealthCheckReference", + "properties": { + "healthCheck": { + "type": "string" + } + }, + "type": "object" + }, + "HealthChecksAggregatedList": { + "id": "HealthChecksAggregatedList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "additionalProperties": { + "$ref": "HealthChecksScopedList", + "description": "Name of the scope containing this set of HealthChecks." + }, + "description": "A list of HealthChecksScopedList resources.", + "type": "object" + }, + "kind": { + "default": "compute#healthChecksAggregatedList", + "description": "Type of resource.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "HealthChecksScopedList": { + "id": "HealthChecksScopedList", + "properties": { + "healthChecks": { + "description": "List of HealthChecks contained in this scope.", + "items": { + "$ref": "HealthCheck" + }, + "type": "array" + }, + "warning": { + "description": "Informational warning which replaces the list of backend services when the list is empty.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "HealthStatus": { + "id": "HealthStatus", + "properties": { + "healthState": { + "description": "Health state of the instance.", + "enum": [ + "HEALTHY", + "UNHEALTHY" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "instance": { + "description": "URL of the instance resource.", + "type": "string" + }, + "ipAddress": { + "description": "The IP address represented by this resource.", + "type": "string" + }, + "port": { + "description": "The port on the instance.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "HealthStatusForNetworkEndpoint": { + "id": "HealthStatusForNetworkEndpoint", + "properties": { + "backendService": { + "$ref": "BackendServiceReference", + "description": "URL of the backend service associated with the health state of the network endpoint." + }, + "forwardingRule": { + "$ref": "ForwardingRuleReference", + "description": "URL of the forwarding rule associated with the health state of the network endpoint." + }, + "healthCheck": { + "$ref": "HealthCheckReference", + "description": "URL of the health check associated with the health state of the network endpoint." + }, + "healthState": { + "description": "Health state of the network endpoint determined based on the health checks configured.", + "enum": [ + "DRAINING", + "HEALTHY", + "UNHEALTHY", + "UNKNOWN" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "Host": { + "id": "Host", + "properties": { + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "description": { + "description": "[Output Only] An optional textual description of the resource.", + "type": "string" + }, + "hostType": { + "description": "Full or partial URL of the host type resource to use for this host, in the format: zones/zone/hostTypes/host-type. This is provided by the client when the host is created. For example, the following is a valid partial url to a predefined host type:\nzones/us-central1-b/hostTypes/n1-host-64-416", + "type": "string" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64", + "type": "string" + }, + "instances": { + "description": "A list of resource URLs to the virtual machine instances in this host. They must live in zones contained in the same region as this host.", + "items": { + "type": "string" + }, + "type": "array" + }, + "kind": { + "default": "compute#host", + "description": "[Output Only] The type of the resource. Always compute#host for host.", + "type": "string" + }, + "labelFingerprint": { + "description": "A fingerprint for this request, which is essentially a hash of the metadata's contents and used for optimistic locking. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update metadata. You must always provide an up-to-date fingerprint hash in order to update or change metadata.\n\nTo see the latest fingerprint, make get() request to the host.", + "format": "byte", + "type": "string" + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Labels to apply to this host.", + "type": "object" + }, + "name": { + "description": "The name of the resource, provided by the client when initially creating the resource. The resource name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + }, + "status": { + "description": "[Output Only] The status of the host. One of the following values: CREATING, READY, REPAIR, and DELETING.", + "enum": [ + "CREATING", + "DELETING", + "INVALID", + "READY", + "REPAIR" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "statusMessage": { + "description": "[Output Only] An optional, human-readable explanation of the status.", + "type": "string" + }, + "zone": { + "description": "[Output Only] The name of the zone where the host resides, such as us-central1-a.", + "type": "string" + } + }, + "type": "object" + }, + "HostAggregatedList": { + "id": "HostAggregatedList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "additionalProperties": { + "$ref": "HostsScopedList", + "description": "[Output Only] Name of the scope containing this set of hosts." + }, + "description": "A list of HostsScopedList resources.", + "type": "object" + }, + "kind": { + "default": "compute#hostAggregatedList", + "description": "[Output Only] Type of resource. Always compute#hostAggregatedList for aggregated lists of hosts.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "HostList": { + "description": "Contains a list of hosts.", + "id": "HostList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of Host resources.", + "items": { + "$ref": "Host" + }, + "type": "array" + }, + "kind": { + "default": "compute#hostList", + "description": "[Output Only] Type of resource. Always compute#hostList for lists of hosts.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "HostRule": { + "description": "UrlMaps A host-matching rule for a URL. If matched, will use the named PathMatcher to select the BackendService.", + "id": "HostRule", + "properties": { + "description": { + "description": "An optional description of this resource. Provide this property when you create the resource.", + "type": "string" + }, + "hosts": { + "description": "The list of host patterns to match. They must be valid hostnames, except * will match any string of ([a-z0-9-.]*). In that case, * must be the first character and must be followed in the pattern by either - or ..", + "items": { + "type": "string" + }, + "type": "array" + }, + "pathMatcher": { + "description": "The name of the PathMatcher to use to match the path portion of the URL if the hostRule matches the URL's host portion.", + "type": "string" + } + }, + "type": "object" + }, + "HostType": { + "description": "A Host Type resource.", + "id": "HostType", + "properties": { + "cpuPlatform": { + "description": "[Output Only] The CPU platform used by this host type.", + "type": "string" + }, + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "deprecated": { + "$ref": "DeprecationStatus", + "description": "[Output Only] The deprecation status associated with this host type." + }, + "description": { + "description": "[Output Only] An optional textual description of the resource.", + "type": "string" + }, + "guestCpus": { + "description": "[Output Only] The number of virtual CPUs that are available to the host type.", + "format": "int32", + "type": "integer" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64", + "type": "string" + }, + "kind": { + "default": "compute#hostType", + "description": "[Output Only] The type of the resource. Always compute#hostType for host types.", + "type": "string" + }, + "localSsdGb": { + "description": "[Output Only] Local SSD available to the host type, defined in GB.", + "format": "int32", + "type": "integer" + }, + "memoryMb": { + "description": "[Output Only] The amount of physical memory available to the host type, defined in MB.", + "format": "int32", + "type": "integer" + }, + "name": { + "description": "[Output Only] Name of the resource.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + }, + "zone": { + "description": "[Output Only] The name of the zone where the host type resides, such as us-central1-a.", + "type": "string" + } + }, + "type": "object" + }, + "HostTypeAggregatedList": { + "id": "HostTypeAggregatedList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "additionalProperties": { + "$ref": "HostTypesScopedList", + "description": "[Output Only] Name of the scope containing this set of host types." + }, + "description": "A list of HostTypesScopedList resources.", + "type": "object" + }, + "kind": { + "default": "compute#hostTypeAggregatedList", + "description": "[Output Only] Type of resource.Always compute#hostTypeAggregatedList for aggregated lists of host types.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "HostTypeList": { + "description": "Contains a list of host types.", + "id": "HostTypeList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of HostType resources.", + "items": { + "$ref": "HostType" + }, + "type": "array" + }, + "kind": { + "default": "compute#hostTypeList", + "description": "[Output Only] Type of resource.Always compute#hostTypeList for lists of host types.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "HostTypesScopedList": { + "id": "HostTypesScopedList", + "properties": { + "hostTypes": { + "description": "[Output Only] List of host types contained in this scope.", + "items": { + "$ref": "HostType" + }, + "type": "array" + }, + "warning": { + "description": "[Output Only] An informational warning that appears when the host types list is empty.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "HostsScopedList": { + "id": "HostsScopedList", + "properties": { + "hosts": { + "description": "[Output Only] List of hosts contained in this scope.", + "items": { + "$ref": "Host" + }, + "type": "array" + }, + "warning": { + "description": "[Output Only] An informational warning that appears when the host list is empty.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "HourlyMaintenanceWindow": { + "description": "Time window specified for hourly maintenance operations.", + "id": "HourlyMaintenanceWindow", + "properties": { + "duration": { + "description": "[Output only] Duration of the time window, automatically chosen to be smallest possible in the given scenario.", + "type": "string" + }, + "hoursInCycle": { + "description": "Allows to define schedule that runs every nth hour.", + "format": "int32", + "type": "integer" + }, + "startTime": { + "description": "Time within the maintenance window to start the maintenance operations. It must be in format \"HH:MM?, where HH : [00-23] and MM : [00-59] GMT.", + "type": "string" + } + }, + "type": "object" + }, + "HttpHealthCheck": { + "description": "An HttpHealthCheck resource. This resource defines a template for how individual instances should be checked for health, via HTTP.", + "id": "HttpHealthCheck", + "properties": { + "checkIntervalSec": { + "description": "How often (in seconds) to send a health check. The default value is 5 seconds.", + "format": "int32", + "type": "integer" + }, + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "description": { + "description": "An optional description of this resource. Provide this property when you create the resource.", + "type": "string" + }, + "healthyThreshold": { + "description": "A so-far unhealthy instance will be marked healthy after this many consecutive successes. The default value is 2.", + "format": "int32", + "type": "integer" + }, + "host": { + "description": "The value of the host header in the HTTP health check request. If left empty (default value), the public IP on behalf of which this health check is performed will be used.", + "type": "string" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64", + "type": "string" + }, + "kind": { + "default": "compute#httpHealthCheck", + "description": "[Output Only] Type of the resource. Always compute#httpHealthCheck for HTTP health checks.", + "type": "string" + }, + "name": { + "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "port": { + "description": "The TCP port number for the HTTP health check request. The default value is 80.", + "format": "int32", + "type": "integer" + }, + "requestPath": { + "description": "The request path of the HTTP health check request. The default value is /.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + }, + "timeoutSec": { + "description": "How long (in seconds) to wait before claiming failure. The default value is 5 seconds. It is invalid for timeoutSec to have greater value than checkIntervalSec.", + "format": "int32", + "type": "integer" + }, + "unhealthyThreshold": { + "description": "A so-far healthy instance will be marked unhealthy after this many consecutive failures. The default value is 2.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "HttpHealthCheckList": { + "description": "Contains a list of HttpHealthCheck resources.", + "id": "HttpHealthCheckList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of HttpHealthCheck resources.", + "items": { + "$ref": "HttpHealthCheck" + }, + "type": "array" + }, + "kind": { + "default": "compute#httpHealthCheckList", + "description": "Type of resource.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "HttpsHealthCheck": { + "description": "An HttpsHealthCheck resource. This resource defines a template for how individual instances should be checked for health, via HTTPS.", + "id": "HttpsHealthCheck", + "properties": { + "checkIntervalSec": { + "description": "How often (in seconds) to send a health check. The default value is 5 seconds.", + "format": "int32", + "type": "integer" + }, + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "description": { + "description": "An optional description of this resource. Provide this property when you create the resource.", + "type": "string" + }, + "healthyThreshold": { + "description": "A so-far unhealthy instance will be marked healthy after this many consecutive successes. The default value is 2.", + "format": "int32", + "type": "integer" + }, + "host": { + "description": "The value of the host header in the HTTPS health check request. If left empty (default value), the public IP on behalf of which this health check is performed will be used.", + "type": "string" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64", + "type": "string" + }, + "kind": { + "default": "compute#httpsHealthCheck", + "description": "Type of the resource.", + "type": "string" + }, + "name": { + "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "port": { + "description": "The TCP port number for the HTTPS health check request. The default value is 443.", + "format": "int32", + "type": "integer" + }, + "requestPath": { + "description": "The request path of the HTTPS health check request. The default value is \"/\".", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + }, + "timeoutSec": { + "description": "How long (in seconds) to wait before claiming failure. The default value is 5 seconds. It is invalid for timeoutSec to have a greater value than checkIntervalSec.", + "format": "int32", + "type": "integer" + }, + "unhealthyThreshold": { + "description": "A so-far healthy instance will be marked unhealthy after this many consecutive failures. The default value is 2.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "HttpsHealthCheckList": { + "description": "Contains a list of HttpsHealthCheck resources.", + "id": "HttpsHealthCheckList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of HttpsHealthCheck resources.", + "items": { + "$ref": "HttpsHealthCheck" + }, + "type": "array" + }, + "kind": { + "default": "compute#httpsHealthCheckList", + "description": "Type of resource.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "Image": { + "description": "An Image resource. (== resource_for beta.images ==) (== resource_for v1.images ==)", + "id": "Image", + "properties": { + "archiveSizeBytes": { + "description": "Size of the image tar.gz archive stored in Google Cloud Storage (in bytes).", + "format": "int64", + "type": "string" + }, + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "deprecated": { + "$ref": "DeprecationStatus", + "description": "The deprecation status associated with this image." + }, + "description": { + "description": "An optional description of this resource. Provide this property when you create the resource.", + "type": "string" + }, + "diskSizeGb": { + "description": "Size of the image when restored onto a persistent disk (in GB).", + "format": "int64", + "type": "string" + }, + "family": { + "description": "The name of the image family to which this image belongs. You can create disks by specifying an image family instead of a specific image name. The image family always returns its latest image that is not deprecated. The name of the image family must comply with RFC1035.", + "type": "string" + }, + "guestOsFeatures": { + "description": "A list of features to enable on the guest operating system. Applicable only for bootable images. Read Enabling guest operating system features to see a list of available options.", + "items": { + "$ref": "GuestOsFeature" + }, + "type": "array" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64", + "type": "string" + }, + "imageEncryptionKey": { + "$ref": "CustomerEncryptionKey", + "description": "Encrypts the image using a customer-supplied encryption key.\n\nAfter you encrypt an image with a customer-supplied key, you must provide the same key if you use the image later (e.g. to create a disk from the image).\n\nCustomer-supplied encryption keys do not protect access to metadata of the disk.\n\nIf you do not provide an encryption key when creating the image, then the disk will be encrypted using an automatically generated key and you do not need to provide a key to use the image later." + }, + "kind": { + "default": "compute#image", + "description": "[Output Only] Type of the resource. Always compute#image for images.", + "type": "string" + }, + "labelFingerprint": { + "description": "A fingerprint for the labels being applied to this image, which is essentially a hash of the labels used for optimistic locking. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update labels. You must always provide an up-to-date fingerprint hash in order to update or change labels.\n\nTo see the latest fingerprint, make a get() request to retrieve an image.", + "format": "byte", + "type": "string" + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Labels to apply to this image. These can be later modified by the setLabels method.", + "type": "object" + }, + "licenseCodes": { + "description": "Integer license codes indicating which licenses are attached to this image.", + "items": { + "format": "int64", + "type": "string" + }, + "type": "array" + }, + "licenses": { + "description": "Any applicable license URI.", + "items": { + "type": "string" + }, + "type": "array" + }, + "name": { + "annotations": { + "required": [ + "compute.images.insert" + ] + }, + "description": "Name of the resource; provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "rawDisk": { + "description": "The parameters of the raw disk image.", + "properties": { + "containerType": { + "description": "The format used to encode and transmit the block device, which should be TAR. This is just a container and transmission format and not a runtime format. Provided by the client when the disk image is created.", + "enum": [ + "TAR" + ], + "enumDescriptions": [ + "" + ], + "type": "string" + }, + "sha1Checksum": { + "description": "An optional SHA1 checksum of the disk image before unpackaging; provided by the client when the disk image is created.", + "pattern": "[a-f0-9]{40}", + "type": "string" + }, + "source": { + "annotations": { + "required": [ + "compute.images.insert" + ] + }, + "description": "The full Google Cloud Storage URL where the disk image is stored. You must provide either this property or the sourceDisk property but not both.", + "type": "string" + } + }, + "type": "object" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + }, + "sourceDisk": { + "description": "URL of the source disk used to create this image. This can be a full or valid partial URL. You must provide either this property or the rawDisk.source property but not both to create an image. For example, the following are valid values: \n- https://www.googleapis.com/compute/v1/projects/project/zones/zone/disks/disk \n- projects/project/zones/zone/disks/disk \n- zones/zone/disks/disk", + "type": "string" + }, + "sourceDiskEncryptionKey": { + "$ref": "CustomerEncryptionKey", + "description": "The customer-supplied encryption key of the source disk. Required if the source disk is protected by a customer-supplied encryption key." + }, + "sourceDiskId": { + "description": "The ID value of the disk used to create this image. This value may be used to determine whether the image was taken from the current or a previous instance of a given disk name.", + "type": "string" + }, + "sourceImage": { + "description": "URL of the source image used to create this image. This can be a full or valid partial URL. You must provide exactly one of: \n- this property, or \n- the rawDisk.source property, or \n- the sourceDisk property in order to create an image.", + "type": "string" + }, + "sourceImageEncryptionKey": { + "$ref": "CustomerEncryptionKey", + "description": "The customer-supplied encryption key of the source image. Required if the source image is protected by a customer-supplied encryption key." + }, + "sourceImageId": { + "description": "[Output Only] The ID value of the image used to create this image. This value may be used to determine whether the image was taken from the current or a previous instance of a given image name.", + "type": "string" + }, + "sourceSnapshot": { + "description": "URL of the source snapshot used to create this image. This can be a full or valid partial URL. You must provide exactly one of: \n- this property, or \n- the sourceImage property, or \n- the rawDisk.source property, or \n- the sourceDisk property in order to create an image.", + "type": "string" + }, + "sourceSnapshotEncryptionKey": { + "$ref": "CustomerEncryptionKey", + "description": "The customer-supplied encryption key of the source snapshot. Required if the source snapshot is protected by a customer-supplied encryption key." + }, + "sourceSnapshotId": { + "description": "[Output Only] The ID value of the snapshot used to create this image. This value may be used to determine whether the snapshot was taken from the current or a previous instance of a given snapshot name.", + "type": "string" + }, + "sourceType": { + "default": "RAW", + "description": "The type of the image used to create this disk. The default and only value is RAW", + "enum": [ + "RAW" + ], + "enumDescriptions": [ + "" + ], + "type": "string" + }, + "status": { + "description": "[Output Only] The status of the image. An image can be used to create other resources, such as instances, only after the image has been successfully created and the status is set to READY. Possible values are FAILED, PENDING, or READY.", + "enum": [ + "FAILED", + "PENDING", + "READY" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "ImageList": { + "description": "Contains a list of images.", + "id": "ImageList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of Image resources.", + "items": { + "$ref": "Image" + }, + "type": "array" + }, + "kind": { + "default": "compute#imageList", + "description": "Type of resource.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "Instance": { + "description": "An Instance resource. (== resource_for beta.instances ==) (== resource_for v1.instances ==)", + "id": "Instance", + "properties": { + "canIpForward": { + "description": "Allows this instance to send and receive packets with non-matching destination or source IPs. This is required if you plan to use this instance to forward routes. For more information, see Enabling IP Forwarding.", + "type": "boolean" + }, + "cpuPlatform": { + "description": "[Output Only] The CPU platform used by this instance.", + "type": "string" + }, + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "deletionProtection": { + "description": "Whether the resource should be protected against deletion.", + "type": "boolean" + }, + "description": { + "description": "An optional description of this resource. Provide this property when you create the resource.", + "type": "string" + }, + "disks": { + "description": "Array of disks associated with this instance. Persistent disks must be created before you can assign them.", + "items": { + "$ref": "AttachedDisk" + }, + "type": "array" + }, + "guestAccelerators": { + "description": "List of the type and count of accelerator cards attached to the instance.", + "items": { + "$ref": "AcceleratorConfig" + }, + "type": "array" + }, + "host": { + "description": "Full or partial URL of the host resource that the instance should be placed on, in the format: zones/zone/hosts/host.\n\nOptional, sole-tenant Host (physical machine) that the instance will be placed on when it's created. The instance is guaranteed to be placed on the same machine as other instances with the same sole-tenant host.\n\nThe request will be rejected if the sole-tenant host has run out of resources.", + "type": "string" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64", + "type": "string" + }, + "instanceEncryptionKey": { + "$ref": "CustomerEncryptionKey", + "description": "Encrypts or decrypts data for an instance with a customer-supplied encryption key.\n\nIf you are creating a new instance, this field encrypts the local SSD and in-memory contents of the instance using a key that you provide.\n\nIf you are restarting an instance protected with a customer-supplied encryption key, you must provide the correct key in order to successfully restart the instance.\n\nIf you do not provide an encryption key when creating the instance, then the local SSD and in-memory contents will be encrypted using an automatically generated key and you do not need to provide a key to start the instance later.\n\nInstance templates do not store customer-supplied encryption keys, so you cannot use your own keys to encrypt local SSDs and in-memory content in a managed instance group." + }, + "kind": { + "default": "compute#instance", + "description": "[Output Only] Type of the resource. Always compute#instance for instances.", + "type": "string" + }, + "labelFingerprint": { + "description": "A fingerprint for this request, which is essentially a hash of the metadata's contents and used for optimistic locking. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update metadata. You must always provide an up-to-date fingerprint hash in order to update or change metadata.\n\nTo see the latest fingerprint, make get() request to the instance.", + "format": "byte", + "type": "string" + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Labels to apply to this instance. These can be later modified by the setLabels method.", + "type": "object" + }, + "machineType": { + "annotations": { + "required": [ + "compute.instances.insert" + ] + }, + "description": "Full or partial URL of the machine type resource to use for this instance, in the format: zones/zone/machineTypes/machine-type. This is provided by the client when the instance is created. For example, the following is a valid partial url to a predefined machine type:\nzones/us-central1-f/machineTypes/n1-standard-1\n\n\nTo create a custom machine type, provide a URL to a machine type in the following format, where CPUS is 1 or an even number up to 32 (2, 4, 6, ... 24, etc), and MEMORY is the total memory for this instance. Memory must be a multiple of 256 MB and must be supplied in MB (e.g. 5 GB of memory is 5120 MB):\nzones/zone/machineTypes/custom-CPUS-MEMORY\n\n\nFor example: zones/us-central1-f/machineTypes/custom-4-5120 \n\nFor a full list of restrictions, read the Specifications for custom machine types.", + "type": "string" + }, + "maintenancePolicies": { + "description": "Maintenance policies applied to this instance.", + "items": { + "type": "string" + }, + "type": "array" + }, + "metadata": { + "$ref": "Metadata", + "description": "The metadata key/value pairs assigned to this instance. This includes custom metadata and predefined keys." + }, + "minCpuPlatform": { + "description": "Specifies a minimum CPU platform for the VM instance. Applicable values are the friendly names of CPU platforms, such as minCpuPlatform: \"Intel Haswell\" or minCpuPlatform: \"Intel Sandy Bridge\".", + "type": "string" + }, + "name": { + "annotations": { + "required": [ + "compute.instances.insert" + ] + }, + "description": "The name of the resource, provided by the client when initially creating the resource. The resource name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "networkInterfaces": { + "description": "An array of network configurations for this instance. These specify how interfaces are configured to interact with other network services, such as connecting to the internet. Multiple interfaces are supported per instance.", + "items": { + "$ref": "NetworkInterface" + }, + "type": "array" + }, + "preservedStateSizeGb": { + "description": "Total amount of preserved state for SUSPENDED instances. Read-only in the api.", + "format": "int64", + "type": "string" + }, + "scheduling": { + "$ref": "Scheduling", + "description": "Sets the scheduling options for this instance." + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "serviceAccounts": { + "description": "A list of service accounts, with their specified scopes, authorized for this instance. Only one service account per VM instance is supported.\n\nService accounts generate access tokens that can be accessed through the metadata server and used to authenticate applications on the instance. See Service Accounts for more information.", + "items": { + "$ref": "ServiceAccount" + }, + "type": "array" + }, + "shieldedVmConfig": { + "$ref": "ShieldedVmConfig" + }, + "shieldedVmIntegrityPolicy": { + "$ref": "ShieldedVmIntegrityPolicy" + }, + "startRestricted": { + "description": "[Output Only] Whether a VM has been restricted for start because Compute Engine has detected suspicious activity.", + "type": "boolean" + }, + "status": { + "description": "[Output Only] The status of the instance. One of the following values: PROVISIONING, STAGING, RUNNING, STOPPING, STOPPED, SUSPENDING, SUSPENDED, and TERMINATED.", + "enum": [ + "PROVISIONING", + "RUNNING", + "STAGING", + "STOPPED", + "STOPPING", + "SUSPENDED", + "SUSPENDING", + "TERMINATED" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "statusMessage": { + "description": "[Output Only] An optional, human-readable explanation of the status.", + "type": "string" + }, + "tags": { + "$ref": "Tags", + "description": "A list of tags to apply to this instance. Tags are used to identify valid sources or targets for network firewalls and are specified by the client during instance creation. The tags can be later modified by the setTags method. Each tag within the list must comply with RFC1035." + }, + "zone": { + "description": "[Output Only] URL of the zone where the instance resides. You must specify this field as part of the HTTP request URL. It is not settable as a field in the request body.", + "type": "string" + } + }, + "type": "object" + }, + "InstanceAggregatedList": { + "id": "InstanceAggregatedList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "additionalProperties": { + "$ref": "InstancesScopedList", + "description": "[Output Only] Name of the scope containing this set of instances." + }, + "description": "A list of InstancesScopedList resources.", + "type": "object" + }, + "kind": { + "default": "compute#instanceAggregatedList", + "description": "[Output Only] Type of resource. Always compute#instanceAggregatedList for aggregated lists of Instance resources.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "InstanceGroup": { + "description": "InstanceGroups (== resource_for beta.instanceGroups ==) (== resource_for v1.instanceGroups ==) (== resource_for beta.regionInstanceGroups ==) (== resource_for v1.regionInstanceGroups ==)", + "id": "InstanceGroup", + "properties": { + "creationTimestamp": { + "description": "[Output Only] The creation timestamp for this instance group in RFC3339 text format.", + "type": "string" + }, + "description": { + "description": "An optional description of this resource. Provide this property when you create the resource.", + "type": "string" + }, + "fingerprint": { + "description": "[Output Only] The fingerprint of the named ports. The system uses this fingerprint to detect conflicts when multiple users change the named ports concurrently.", + "format": "byte", + "type": "string" + }, + "id": { + "description": "[Output Only] A unique identifier for this instance group, generated by the server.", + "format": "uint64", + "type": "string" + }, + "kind": { + "default": "compute#instanceGroup", + "description": "[Output Only] The resource type, which is always compute#instanceGroup for instance groups.", + "type": "string" + }, + "name": { + "annotations": { + "required": [ + "compute.instanceGroupManagers.insert" + ] + }, + "description": "The name of the instance group. The name must be 1-63 characters long, and comply with RFC1035.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "namedPorts": { + "description": "Assigns a name to a port number. For example: {name: \"http\", port: 80}\n\nThis allows the system to reference ports by the assigned name instead of a port number. Named ports can also contain multiple ports. For example: [{name: \"http\", port: 80},{name: \"http\", port: 8080}] \n\nNamed ports apply to all instances in this instance group.", + "items": { + "$ref": "NamedPort" + }, + "type": "array" + }, + "network": { + "description": "The URL of the network to which all instances in the instance group belong.", + "type": "string" + }, + "region": { + "description": "The URL of the region where the instance group is located (for regional resources).", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] The URL for this instance group. The server generates this URL.", + "type": "string" + }, + "size": { + "description": "[Output Only] The total number of instances in the instance group.", + "format": "int32", + "type": "integer" + }, + "subnetwork": { + "description": "The URL of the subnetwork to which all instances in the instance group belong.", + "type": "string" + }, + "zone": { + "description": "[Output Only] The URL of the zone where the instance group is located (for zonal resources).", + "type": "string" + } + }, + "type": "object" + }, + "InstanceGroupAggregatedList": { + "id": "InstanceGroupAggregatedList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "additionalProperties": { + "$ref": "InstanceGroupsScopedList", + "description": "The name of the scope that contains this set of instance groups." + }, + "description": "A list of InstanceGroupsScopedList resources.", + "type": "object" + }, + "kind": { + "default": "compute#instanceGroupAggregatedList", + "description": "[Output Only] The resource type, which is always compute#instanceGroupAggregatedList for aggregated lists of instance groups.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "InstanceGroupList": { + "description": "A list of InstanceGroup resources.", + "id": "InstanceGroupList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of InstanceGroup resources.", + "items": { + "$ref": "InstanceGroup" + }, + "type": "array" + }, + "kind": { + "default": "compute#instanceGroupList", + "description": "[Output Only] The resource type, which is always compute#instanceGroupList for instance group lists.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "InstanceGroupManager": { + "description": "An Instance Group Manager resource. (== resource_for beta.instanceGroupManagers ==) (== resource_for v1.instanceGroupManagers ==) (== resource_for beta.regionInstanceGroupManagers ==) (== resource_for v1.regionInstanceGroupManagers ==)", + "id": "InstanceGroupManager", + "properties": { + "activities": { + "$ref": "InstanceGroupManagerActivities" + }, + "autoHealingPolicies": { + "description": "The autohealing policy for this managed instance group. You can specify only one value.", + "items": { + "$ref": "InstanceGroupManagerAutoHealingPolicy" + }, + "type": "array" + }, + "baseInstanceName": { + "annotations": { + "required": [ + "compute.instanceGroupManagers.insert" + ] + }, + "description": "The base instance name to use for instances in this group. The value must be 1-58 characters long. Instances are named by appending a hyphen and a random four-character string to the base instance name. The base instance name must comply with RFC1035.", + "pattern": "[a-z][-a-z0-9]{0,57}", + "type": "string" + }, + "creationTimestamp": { + "description": "[Output Only] The creation timestamp for this managed instance group in RFC3339 text format.", + "type": "string" + }, + "currentActions": { + "$ref": "InstanceGroupManagerActionsSummary", + "description": "[Output Only] The list of instance actions and the number of instances in this managed instance group that are scheduled for each of those actions." + }, + "description": { + "description": "An optional description of this resource. Provide this property when you create the resource.", + "type": "string" + }, + "distributionPolicy": { + "$ref": "DistributionPolicy", + "description": "Policy valid only for regional managed instance groups." + }, + "failoverAction": { + "description": "The action to perform in case of zone failure. Only one value is supported, NO_FAILOVER. The default is NO_FAILOVER.", + "enum": [ + "NO_FAILOVER", + "UNKNOWN" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "fingerprint": { + "description": "[Output Only] The fingerprint of the resource data. You can use this optional field for optimistic locking when you update the resource.", + "format": "byte", + "type": "string" + }, + "id": { + "description": "[Output Only] A unique identifier for this resource type. The server generates this identifier.", + "format": "uint64", + "type": "string" + }, + "instanceGroup": { + "description": "[Output Only] The URL of the Instance Group resource.", + "type": "string" + }, + "instanceTemplate": { + "description": "The URL of the instance template that is specified for this managed instance group. The group uses this template to create all new instances in the managed instance group.", + "type": "string" + }, + "kind": { + "default": "compute#instanceGroupManager", + "description": "[Output Only] The resource type, which is always compute#instanceGroupManager for managed instance groups.", + "type": "string" + }, + "name": { + "annotations": { + "required": [ + "compute.instanceGroupManagers.insert", + "compute.regionInstanceGroupManagers.insert" + ] + }, + "description": "The name of the managed instance group. The name must be 1-63 characters long, and comply with RFC1035.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "namedPorts": { + "description": "Named ports configured for the Instance Groups complementary to this Instance Group Manager.", + "items": { + "$ref": "NamedPort" + }, + "type": "array" + }, + "pendingActions": { + "$ref": "InstanceGroupManagerPendingActionsSummary", + "description": "[Output Only] The list of instance actions and the number of instances in this managed instance group that are pending for each of those actions." + }, + "region": { + "description": "[Output Only] The URL of the region where the managed instance group resides (for regional resources).", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] The URL for this managed instance group. The server defines this URL.", + "type": "string" + }, + "serviceAccount": { + "description": "[Output Only] The service account to be used as credentials for all operations performed by the managed instance group on instances. The service accounts needs all permissions required to create and delete instances. By default, the service account {projectNumber}@cloudservices.gserviceaccount.com is used.", + "type": "string" + }, + "statefulPolicy": { + "$ref": "StatefulPolicy", + "description": "Stateful configuration for this Instanced Group Manager" + }, + "targetPools": { + "description": "The URLs for all TargetPool resources to which instances in the instanceGroup field are added. The target pools automatically apply to all of the instances in the managed instance group.", + "items": { + "type": "string" + }, + "type": "array" + }, + "targetSize": { + "annotations": { + "required": [ + "compute.instanceGroupManagers.insert", + "compute.regionInstanceGroupManagers.insert" + ] + }, + "description": "The target number of running instances for this managed instance group. Deleting or abandoning instances reduces this number. Resizing the group changes this number.", + "format": "int32", + "type": "integer" + }, + "updatePolicy": { + "$ref": "InstanceGroupManagerUpdatePolicy", + "description": "The update policy for this managed instance group." + }, + "versions": { + "description": "Specifies the instance templates used by this managed instance group to create instances.\n\nEach version is defined by an instanceTemplate. Every template can appear at most once per instance group. This field overrides the top-level instanceTemplate field. Read more about the relationships between these fields. Exactly one version must leave the targetSize field unset. That version will be applied to all remaining instances. For more information, read about canary updates.", + "items": { + "$ref": "InstanceGroupManagerVersion" + }, + "type": "array" + }, + "zone": { + "description": "[Output Only] The URL of the zone where the managed instance group is located (for zonal resources).", + "type": "string" + } + }, + "type": "object" + }, + "InstanceGroupManagerActionsSummary": { + "id": "InstanceGroupManagerActionsSummary", + "properties": { + "abandoning": { + "description": "[Output Only] The total number of instances in the managed instance group that are scheduled to be abandoned. Abandoning an instance removes it from the managed instance group without deleting it.", + "format": "int32", + "type": "integer" + }, + "creating": { + "description": "[Output Only] The number of instances in the managed instance group that are scheduled to be created or are currently being created. If the group fails to create any of these instances, it tries again until it creates the instance successfully.\n\nIf you have disabled creation retries, this field will not be populated; instead, the creatingWithoutRetries field will be populated.", + "format": "int32", + "type": "integer" + }, + "creatingWithoutRetries": { + "description": "[Output Only] The number of instances that the managed instance group will attempt to create. The group attempts to create each instance only once. If the group fails to create any of these instances, it decreases the group's targetSize value accordingly.", + "format": "int32", + "type": "integer" + }, + "deleting": { + "description": "[Output Only] The number of instances in the managed instance group that are scheduled to be deleted or are currently being deleted.", + "format": "int32", + "type": "integer" + }, + "none": { + "description": "[Output Only] The number of instances in the managed instance group that are running and have no scheduled actions.", + "format": "int32", + "type": "integer" + }, + "recreating": { + "description": "[Output Only] The number of instances in the managed instance group that are scheduled to be recreated or are currently being being recreated. Recreating an instance deletes the existing root persistent disk and creates a new disk from the image that is defined in the instance template.", + "format": "int32", + "type": "integer" + }, + "refreshing": { + "description": "[Output Only] The number of instances in the managed instance group that are being reconfigured with properties that do not require a restart or a recreate action. For example, setting or removing target pools for the instance.", + "format": "int32", + "type": "integer" + }, + "restarting": { + "description": "[Output Only] The number of instances in the managed instance group that are scheduled to be restarted or are currently being restarted.", + "format": "int32", + "type": "integer" + }, + "verifying": { + "description": "[Output Only] The number of instances in the managed instance group that are being verified. See the managedInstances[].currentAction property in the listManagedInstances method documentation.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "InstanceGroupManagerActivities": { + "id": "InstanceGroupManagerActivities", + "properties": { + "autohealing": { + "enum": [ + "PERMITTED", + "PROHIBITED" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "autohealingHealthCheckBased": { + "enum": [ + "PERMITTED", + "PROHIBITED" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "autoscalingDown": { + "enum": [ + "PERMITTED", + "PROHIBITED" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "autoscalingUp": { + "enum": [ + "PERMITTED", + "PROHIBITED" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "creatingInstances": { + "enum": [ + "PERMITTED", + "PROHIBITED" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "deletingInstances": { + "enum": [ + "PERMITTED", + "PROHIBITED" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "recreatingInstances": { + "enum": [ + "PERMITTED", + "PROHIBITED" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "InstanceGroupManagerAggregatedList": { + "id": "InstanceGroupManagerAggregatedList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "additionalProperties": { + "$ref": "InstanceGroupManagersScopedList", + "description": "[Output Only] The name of the scope that contains this set of managed instance groups." + }, + "description": "A list of InstanceGroupManagersScopedList resources.", + "type": "object" + }, + "kind": { + "default": "compute#instanceGroupManagerAggregatedList", + "description": "[Output Only] The resource type, which is always compute#instanceGroupManagerAggregatedList for an aggregated list of managed instance groups.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "InstanceGroupManagerAutoHealingPolicy": { + "id": "InstanceGroupManagerAutoHealingPolicy", + "properties": { + "healthCheck": { + "description": "The URL for the health check that signals autohealing.", + "type": "string" + }, + "initialDelaySec": { + "description": "The number of seconds that the managed instance group waits before it applies autohealing policies to new instances or recently recreated instances. This initial delay allows instances to initialize and run their startup scripts before the instance group determines that they are UNHEALTHY. This prevents the managed instance group from recreating its instances prematurely. This value must be from range [0, 3600].", + "format": "int32", + "type": "integer" + }, + "maxUnavailable": { + "$ref": "FixedOrPercent", + "description": "Maximum number of instances that can be unavailable when autohealing. The instance is considered available if all of the following conditions are satisfied: 1. Instance's status is RUNNING. 2. Instance's liveness health check result was observed to be HEALTHY at least once. By default, a percent value of 100% is used." + }, + "mode": { + "description": "Defines operating mode for this policy.", + "enum": [ + "OFF", + "ON" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "InstanceGroupManagerList": { + "description": "[Output Only] A list of managed instance groups.", + "id": "InstanceGroupManagerList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of InstanceGroupManager resources.", + "items": { + "$ref": "InstanceGroupManager" + }, + "type": "array" + }, + "kind": { + "default": "compute#instanceGroupManagerList", + "description": "[Output Only] The resource type, which is always compute#instanceGroupManagerList for a list of managed instance groups.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "InstanceGroupManagerPendingActionsSummary": { + "id": "InstanceGroupManagerPendingActionsSummary", + "properties": { + "creating": { + "description": "[Output Only] The number of instances in the managed instance group that are pending to be created.", + "format": "int32", + "type": "integer" + }, + "deleting": { + "description": "[Output Only] The number of instances in the managed instance group that are pending to be deleted.", + "format": "int32", + "type": "integer" + }, + "recreating": { + "description": "[Output Only] The number of instances in the managed instance group that are pending to be recreated.", + "format": "int32", + "type": "integer" + }, + "restarting": { + "description": "[Output Only] The number of instances in the managed instance group that are pending to be restarted.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "InstanceGroupManagerUpdatePolicy": { + "id": "InstanceGroupManagerUpdatePolicy", + "properties": { + "maxSurge": { + "$ref": "FixedOrPercent", + "description": "The maximum number of instances that can be created above the specified targetSize during the update process. By default, a fixed value of 1 is used. This value can be either a fixed number or a percentage if the instance group has 10 or more instances. If you set a percentage, the number of instances will be rounded up if necessary.\n\nAt least one of either maxSurge or maxUnavailable must be greater than 0. Learn more about maxSurge." + }, + "maxUnavailable": { + "$ref": "FixedOrPercent", + "description": "The maximum number of instances that can be unavailable during the update process. An instance is considered available if all of the following conditions are satisfied:\n\n \n- The instance's status is RUNNING. \n- If there is a health check on the instance group, the instance's liveness health check result must be HEALTHY at least once. If there is no health check on the group, then the instance only needs to have a status of RUNNING to be considered available. By default, a fixed value of 1 is used. This value can be either a fixed number or a percentage if the instance group has 10 or more instances. If you set a percentage, the number of instances will be rounded up if necessary.\n\nAt least one of either maxSurge or maxUnavailable must be greater than 0. Learn more about maxUnavailable." + }, + "minReadySec": { + "description": "Minimum number of seconds to wait for after a newly created instance becomes available. This value must be from range [0, 3600].", + "format": "int32", + "type": "integer" + }, + "minimalAction": { + "description": "Minimal action to be taken on an instance. You can specify either RESTART to restart existing instances or REPLACE to delete and create new instances from the target template. If you specify a code\u003eRESTART, the Updater will attempt to perform that action only. However, if the Updater determines that the minimal action you specify is not enough to perform the update, it might perform a more disruptive action.", + "enum": [ + "NONE", + "REFRESH", + "REPLACE", + "RESTART" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ], + "type": "string" + }, + "type": { + "enum": [ + "OPPORTUNISTIC", + "PROACTIVE" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "InstanceGroupManagerVersion": { + "id": "InstanceGroupManagerVersion", + "properties": { + "instanceTemplate": { + "type": "string" + }, + "name": { + "description": "Name of the version. Unique among all versions in the scope of this managed instance group.", + "type": "string" + }, + "tag": { + "description": "Tag describing the version. Used to trigger rollout of a target version even if instance_template remains unchanged. Deprecated in favor of 'name'.", + "type": "string" + }, + "targetSize": { + "$ref": "FixedOrPercent", + "description": "Specifies the intended number of instances to be created from the instanceTemplate. The final number of instances created from the template will be equal to: \n- If expressed as a fixed number, the minimum of either targetSize.fixed or instanceGroupManager.targetSize is used. \n- if expressed as a percent, the targetSize would be (targetSize.percent/100 * InstanceGroupManager.targetSize) If there is a remainder, the number is rounded up. If unset, this version will update any remaining instances not updated by another version. Read Starting a canary update for more information." + } + }, + "type": "object" + }, + "InstanceGroupManagersAbandonInstancesRequest": { + "id": "InstanceGroupManagersAbandonInstancesRequest", + "properties": { + "instances": { + "description": "The URLs of one or more instances to abandon. This can be a full URL or a partial URL, such as zones/[ZONE]/instances/[INSTANCE_NAME].", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "InstanceGroupManagersApplyUpdatesRequest": { + "description": "InstanceGroupManagers.applyUpdatesToInstances", + "id": "InstanceGroupManagersApplyUpdatesRequest", + "properties": { + "instances": { + "description": "The list of URLs of one or more instances for which we want to apply updates on this managed instance group. This can be a full URL or a partial URL, such as zones/[ZONE]/instances/[INSTANCE_NAME].", + "items": { + "type": "string" + }, + "type": "array" + }, + "maximalAction": { + "description": "The maximal action that should be perfomed on the instances. By default REPLACE.", + "enum": [ + "NONE", + "REFRESH", + "REPLACE", + "RESTART" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ], + "type": "string" + }, + "minimalAction": { + "description": "The minimal action that should be perfomed on the instances. By default NONE.", + "enum": [ + "NONE", + "REFRESH", + "REPLACE", + "RESTART" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "InstanceGroupManagersDeleteInstancesRequest": { + "id": "InstanceGroupManagersDeleteInstancesRequest", + "properties": { + "instances": { + "description": "The URLs of one or more instances to delete. This can be a full URL or a partial URL, such as zones/[ZONE]/instances/[INSTANCE_NAME].", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "InstanceGroupManagersDeletePerInstanceConfigsReq": { + "description": "InstanceGroupManagers.deletePerInstanceConfigs", + "id": "InstanceGroupManagersDeletePerInstanceConfigsReq", + "properties": { + "instances": { + "description": "The list of instances for which we want to delete per-instance configs on this managed instance group.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "InstanceGroupManagersListManagedInstancesResponse": { + "id": "InstanceGroupManagersListManagedInstancesResponse", + "properties": { + "managedInstances": { + "description": "[Output Only] The list of instances in the managed instance group.", + "items": { + "$ref": "ManagedInstance" + }, + "type": "array" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + } + }, + "type": "object" + }, + "InstanceGroupManagersListPerInstanceConfigsResp": { + "id": "InstanceGroupManagersListPerInstanceConfigsResp", + "properties": { + "items": { + "description": "[Output Only] The list of PerInstanceConfig.", + "items": { + "$ref": "PerInstanceConfig" + }, + "type": "array" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "InstanceGroupManagersRecreateInstancesRequest": { + "id": "InstanceGroupManagersRecreateInstancesRequest", + "properties": { + "instances": { + "description": "The URLs of one or more instances to recreate. This can be a full URL or a partial URL, such as zones/[ZONE]/instances/[INSTANCE_NAME].", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "InstanceGroupManagersResizeAdvancedRequest": { + "id": "InstanceGroupManagersResizeAdvancedRequest", + "properties": { + "noCreationRetries": { + "description": "If this flag is true, the managed instance group attempts to create all instances initiated by this resize request only once. If there is an error during creation, the managed instance group does not retry create this instance, and we will decrease the targetSize of the request instead. If the flag is false, the group attemps to recreate each instance continuously until it succeeds.\n\nThis flag matters only in the first attempt of creation of an instance. After an instance is successfully created while this flag is enabled, the instance behaves the same way as all the other instances created with a regular resize request. In particular, if a running instance dies unexpectedly at a later time and needs to be recreated, this mode does not affect the recreation behavior in that scenario.\n\nThis flag is applicable only to the current resize request. It does not influence other resize requests in any way.\n\nYou can see which instances is being creating in which mode by calling the get or listManagedInstances API.", + "type": "boolean" + }, + "targetSize": { + "description": "The number of running instances that the managed instance group should maintain at any given time. The group automatically adds or removes instances to maintain the number of instances specified by this parameter.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "InstanceGroupManagersScopedList": { + "id": "InstanceGroupManagersScopedList", + "properties": { + "instanceGroupManagers": { + "description": "[Output Only] The list of managed instance groups that are contained in the specified project and zone.", + "items": { + "$ref": "InstanceGroupManager" + }, + "type": "array" + }, + "warning": { + "description": "[Output Only] The warning that replaces the list of managed instance groups when the list is empty.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "InstanceGroupManagersSetAutoHealingRequest": { + "id": "InstanceGroupManagersSetAutoHealingRequest", + "properties": { + "autoHealingPolicies": { + "items": { + "$ref": "InstanceGroupManagerAutoHealingPolicy" + }, + "type": "array" + } + }, + "type": "object" + }, + "InstanceGroupManagersSetInstanceTemplateRequest": { + "id": "InstanceGroupManagersSetInstanceTemplateRequest", + "properties": { + "instanceTemplate": { + "description": "The URL of the instance template that is specified for this managed instance group. The group uses this template to create all new instances in the managed instance group.", + "type": "string" + } + }, + "type": "object" + }, + "InstanceGroupManagersSetTargetPoolsRequest": { + "id": "InstanceGroupManagersSetTargetPoolsRequest", + "properties": { + "fingerprint": { + "description": "The fingerprint of the target pools information. Use this optional property to prevent conflicts when multiple users change the target pools settings concurrently. Obtain the fingerprint with the instanceGroupManagers.get method. Then, include the fingerprint in your request to ensure that you do not overwrite changes that were applied from another concurrent request.", + "format": "byte", + "type": "string" + }, + "targetPools": { + "description": "The list of target pool URLs that instances in this managed instance group belong to. The managed instance group applies these target pools to all of the instances in the group. Existing instances and new instances in the group all receive these target pool settings.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "InstanceGroupManagersUpdatePerInstanceConfigsReq": { + "description": "InstanceGroupManagers.updatePerInstanceConfigs", + "id": "InstanceGroupManagersUpdatePerInstanceConfigsReq", + "properties": { + "perInstanceConfigs": { + "description": "The list of per-instance configs to insert or patch on this managed instance group.", + "items": { + "$ref": "PerInstanceConfig" + }, + "type": "array" + } + }, + "type": "object" + }, + "InstanceGroupsAddInstancesRequest": { + "id": "InstanceGroupsAddInstancesRequest", + "properties": { + "instances": { + "description": "The list of instances to add to the instance group.", + "items": { + "$ref": "InstanceReference" + }, + "type": "array" + } + }, + "type": "object" + }, + "InstanceGroupsListInstances": { + "id": "InstanceGroupsListInstances", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of InstanceWithNamedPorts resources.", + "items": { + "$ref": "InstanceWithNamedPorts" + }, + "type": "array" + }, + "kind": { + "default": "compute#instanceGroupsListInstances", + "description": "[Output Only] The resource type, which is always compute#instanceGroupsListInstances for the list of instances in the specified instance group.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "InstanceGroupsListInstancesRequest": { + "id": "InstanceGroupsListInstancesRequest", + "properties": { + "instanceState": { + "description": "A filter for the state of the instances in the instance group. Valid options are ALL or RUNNING. If you do not specify this parameter the list includes all instances regardless of their state.", + "enum": [ + "ALL", + "RUNNING" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "InstanceGroupsRemoveInstancesRequest": { + "id": "InstanceGroupsRemoveInstancesRequest", + "properties": { + "instances": { + "description": "The list of instances to remove from the instance group.", + "items": { + "$ref": "InstanceReference" + }, + "type": "array" + } + }, + "type": "object" + }, + "InstanceGroupsScopedList": { + "id": "InstanceGroupsScopedList", + "properties": { + "instanceGroups": { + "description": "[Output Only] The list of instance groups that are contained in this scope.", + "items": { + "$ref": "InstanceGroup" + }, + "type": "array" + }, + "warning": { + "description": "[Output Only] An informational warning that replaces the list of instance groups when the list is empty.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "InstanceGroupsSetNamedPortsRequest": { + "id": "InstanceGroupsSetNamedPortsRequest", + "properties": { + "fingerprint": { + "description": "The fingerprint of the named ports information for this instance group. Use this optional property to prevent conflicts when multiple users change the named ports settings concurrently. Obtain the fingerprint with the instanceGroups.get method. Then, include the fingerprint in your request to ensure that you do not overwrite changes that were applied from another concurrent request.", + "format": "byte", + "type": "string" + }, + "namedPorts": { + "description": "The list of named ports to set for this instance group.", + "items": { + "$ref": "NamedPort" + }, + "type": "array" + } + }, + "type": "object" + }, + "InstanceList": { + "description": "Contains a list of instances.", + "id": "InstanceList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of Instance resources.", + "items": { + "$ref": "Instance" + }, + "type": "array" + }, + "kind": { + "default": "compute#instanceList", + "description": "[Output Only] Type of resource. Always compute#instanceList for lists of Instance resources.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "InstanceListReferrers": { + "description": "Contains a list of instance referrers.", + "id": "InstanceListReferrers", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of Reference resources.", + "items": { + "$ref": "Reference" + }, + "type": "array" + }, + "kind": { + "default": "compute#instanceListReferrers", + "description": "[Output Only] Type of resource. Always compute#instanceListReferrers for lists of Instance referrers.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "InstanceMoveRequest": { + "id": "InstanceMoveRequest", + "properties": { + "destinationZone": { + "description": "The URL of the destination zone to move the instance. This can be a full or partial URL. For example, the following are all valid URLs to a zone: \n- https://www.googleapis.com/compute/v1/projects/project/zones/zone \n- projects/project/zones/zone \n- zones/zone", + "type": "string" + }, + "targetInstance": { + "description": "The URL of the target instance to move. This can be a full or partial URL. For example, the following are all valid URLs to an instance: \n- https://www.googleapis.com/compute/v1/projects/project/zones/zone/instances/instance \n- projects/project/zones/zone/instances/instance \n- zones/zone/instances/instance", + "type": "string" + } + }, + "type": "object" + }, + "InstanceProperties": { + "description": "", + "id": "InstanceProperties", + "properties": { + "canIpForward": { + "description": "Enables instances created based on this template to send packets with source IP addresses other than their own and receive packets with destination IP addresses other than their own. If these instances will be used as an IP gateway or it will be set as the next-hop in a Route resource, specify true. If unsure, leave this set to false. See the Enable IP forwarding documentation for more information.", + "type": "boolean" + }, + "description": { + "description": "An optional text description for the instances that are created from this instance template.", + "type": "string" + }, + "disks": { + "description": "An array of disks that are associated with the instances that are created from this template.", + "items": { + "$ref": "AttachedDisk" + }, + "type": "array" + }, + "guestAccelerators": { + "description": "A list of guest accelerator cards' type and count to use for instances created from the instance template.", + "items": { + "$ref": "AcceleratorConfig" + }, + "type": "array" + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Labels to apply to instances that are created from this template.", + "type": "object" + }, + "machineType": { + "annotations": { + "required": [ + "compute.instanceTemplates.insert" + ] + }, + "description": "The machine type to use for instances that are created from this template.", + "type": "string" + }, + "metadata": { + "$ref": "Metadata", + "description": "The metadata key/value pairs to assign to instances that are created from this template. These pairs can consist of custom metadata or predefined keys. See Project and instance metadata for more information." + }, + "minCpuPlatform": { + "description": "Minimum cpu/platform to be used by this instance. The instance may be scheduled on the specified or newer cpu/platform. Applicable values are the friendly names of CPU platforms, such as minCpuPlatform: \"Intel Haswell\" or minCpuPlatform: \"Intel Sandy Bridge\". For more information, read Specifying a Minimum CPU Platform.", + "type": "string" + }, + "networkInterfaces": { + "description": "An array of network access configurations for this interface.", + "items": { + "$ref": "NetworkInterface" + }, + "type": "array" + }, + "scheduling": { + "$ref": "Scheduling", + "description": "Specifies the scheduling options for the instances that are created from this template." + }, + "serviceAccounts": { + "description": "A list of service accounts with specified scopes. Access tokens for these service accounts are available to the instances that are created from this template. Use metadata queries to obtain the access tokens for these instances.", + "items": { + "$ref": "ServiceAccount" + }, + "type": "array" + }, + "shieldedVmConfig": { + "$ref": "ShieldedVmConfig", + "description": "Specifies the Shielded VM options for the instances that are created from this template." + }, + "tags": { + "$ref": "Tags", + "description": "A list of tags to apply to the instances that are created from this template. The tags identify valid sources or targets for network firewalls. The setTags method can modify this list of tags. Each tag within the list must comply with RFC1035." + } + }, + "type": "object" + }, + "InstanceReference": { + "id": "InstanceReference", + "properties": { + "instance": { + "description": "The URL for a specific instance.", + "type": "string" + } + }, + "type": "object" + }, + "InstanceTemplate": { + "description": "An Instance Template resource. (== resource_for beta.instanceTemplates ==) (== resource_for v1.instanceTemplates ==)", + "id": "InstanceTemplate", + "properties": { + "creationTimestamp": { + "description": "[Output Only] The creation timestamp for this instance template in RFC3339 text format.", + "type": "string" + }, + "description": { + "description": "An optional description of this resource. Provide this property when you create the resource.", + "type": "string" + }, + "id": { + "description": "[Output Only] A unique identifier for this instance template. The server defines this identifier.", + "format": "uint64", + "type": "string" + }, + "kind": { + "default": "compute#instanceTemplate", + "description": "[Output Only] The resource type, which is always compute#instanceTemplate for instance templates.", + "type": "string" + }, + "name": { + "annotations": { + "required": [ + "compute.instanceTemplates.insert" + ] + }, + "description": "Name of the resource; provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } + "$ref": "InstanceProperties", + "description": "The instance properties for this instance template." + }, + "selfLink": { + "description": "[Output Only] The URL for this instance template. The server defines this URL.", + "type": "string" + }, + "sourceInstance": { + "description": "The source instance used to create the template. You can provide this as a partial or full URL to the resource. For example, the following are valid values: \n- https://www.googleapis.com/compute/v1/projects/project/zones/zone/instances/instance \n- projects/project/zones/zone/instances/instance", + "type": "string" + }, + "sourceInstanceParams": { + "$ref": "SourceInstanceParams", + "description": "The source instance params to use to create this instance template." } - } }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "SubnetworkList": { - "id": "SubnetworkList", - "type": "object", - "description": "Contains a list of Subnetwork resources.", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." + "type": "object" }, - "items": { - "type": "array", - "description": "A list of Subnetwork resources.", - "items": { - "$ref": "Subnetwork" - } - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#subnetworkList for lists of subnetworks.", - "default": "compute#subnetworkList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } + "InstanceTemplateList": { + "description": "A list of instance templates.", + "id": "InstanceTemplateList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of InstanceTemplate resources.", + "items": { + "$ref": "InstanceTemplate" + }, + "type": "array" + }, + "kind": { + "default": "compute#instanceTemplateList", + "description": "[Output Only] The resource type, which is always compute#instanceTemplatesListResponse for instance template lists.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" } - } }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "SubnetworkSecondaryRange": { - "id": "SubnetworkSecondaryRange", - "type": "object", - "description": "Represents a secondary IP range of a subnetwork.", - "properties": { - "ipCidrRange": { - "type": "string", - "description": "The range of IP addresses belonging to this subnetwork secondary range. Provide this property when you create the subnetwork. Ranges must be unique and non-overlapping with all primary and secondary IP ranges within a network. Only IPv4 is supported." + "type": "object" }, - "rangeName": { - "type": "string", - "description": "The name associated with this subnetwork secondary range, used when adding an alias IP range to a VM instance. The name must be 1-63 characters long, and comply with RFC1035. The name must be unique within the subnetwork." - } - } - }, - "SubnetworksExpandIpCidrRangeRequest": { - "id": "SubnetworksExpandIpCidrRangeRequest", - "type": "object", - "properties": { - "ipCidrRange": { - "type": "string", - "description": "The IP (in CIDR format or netmask) of internal addresses that are legal on this Subnetwork. This range should be disjoint from other subnetworks within this network. This range can only be larger than (i.e. a superset of) the range previously defined before the update." - } - } - }, - "SubnetworksScopedList": { - "id": "SubnetworksScopedList", - "type": "object", - "properties": { - "subnetworks": { - "type": "array", - "description": "List of subnetworks contained in this scope.", - "items": { - "$ref": "Subnetwork" - } - }, - "warning": { - "type": "object", - "description": "An informational warning that appears when the list of addresses is empty.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } + "InstanceWithNamedPorts": { + "id": "InstanceWithNamedPorts", + "properties": { + "instance": { + "description": "[Output Only] The URL of the instance.", + "type": "string" + }, + "namedPorts": { + "description": "[Output Only] The named ports that belong to this instance group.", + "items": { + "$ref": "NamedPort" + }, + "type": "array" + }, + "status": { + "description": "[Output Only] The status of the instance.", + "enum": [ + "PROVISIONING", + "RUNNING", + "STAGING", + "STOPPED", + "STOPPING", + "SUSPENDED", + "SUSPENDING", + "TERMINATED" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" } - } }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "SubnetworksSetPrivateIpGoogleAccessRequest": { - "id": "SubnetworksSetPrivateIpGoogleAccessRequest", - "type": "object", - "properties": { - "privateIpGoogleAccess": { - "type": "boolean" - } - } - }, - "TCPHealthCheck": { - "id": "TCPHealthCheck", - "type": "object", - "properties": { - "port": { - "type": "integer", - "description": "The TCP port number for the health check request. The default value is 80. Valid values are 1 through 65535.", - "format": "int32" + "type": "object" }, - "portName": { - "type": "string", - "description": "Port name as defined in InstanceGroup#NamedPort#name. If both port and port_name are defined, port takes precedence." - }, - "portSpecification": { - "type": "string", - "description": "Specifies how port is selected for health checking, can be one of following values:\nUSE_FIXED_PORT: The port number in\nport\nis used for health checking.\nUSE_NAMED_PORT: The\nportName\nis used for health checking.\nUSE_SERVING_PORT: For NetworkEndpointGroup, the port specified for each network endpoint is used for health checking. For other backends, the port or named port specified in the Backend Service is used for health checking.\n\n\nIf not specified, TCP health check follows behavior specified in\nport\nand\nportName\nfields.", - "enum": [ - "USE_FIXED_PORT", - "USE_NAMED_PORT", - "USE_SERVING_PORT" - ], - "enumDescriptions": [ - "", - "", - "" - ] - }, - "proxyHeader": { - "type": "string", - "description": "Specifies the type of proxy header to append before sending data to the backend, either NONE or PROXY_V1. The default is NONE.", - "enum": [ - "NONE", - "PROXY_V1" - ], - "enumDescriptions": [ - "", - "" - ] - }, - "request": { - "type": "string", - "description": "The application data to send once the TCP connection has been established (default value is empty). If both request and response are empty, the connection establishment alone will indicate health. The request data can only be ASCII." - }, - "response": { - "type": "string", - "description": "The bytes to match against the beginning of the response data. If left empty (the default value), any response will indicate health. The response data can only be ASCII." - } - } - }, - "Tags": { - "id": "Tags", - "type": "object", - "description": "A set of instance tags.", - "properties": { - "fingerprint": { - "type": "string", - "description": "Specifies a fingerprint for this request, which is essentially a hash of the metadata's contents and used for optimistic locking. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update metadata. You must always provide an up-to-date fingerprint hash in order to update or change metadata.\n\nTo see the latest fingerprint, make get() request to the instance.", - "format": "byte" - }, - "items": { - "type": "array", - "description": "An array of tags. Each tag must be 1-63 characters long, and comply with RFC1035.", - "items": { - "type": "string" - } - } - } - }, - "TargetHttpProxy": { - "id": "TargetHttpProxy", - "type": "object", - "description": "A TargetHttpProxy resource. This resource defines an HTTP proxy. (== resource_for beta.targetHttpProxies ==) (== resource_for v1.targetHttpProxies ==)", - "properties": { - "creationTimestamp": { - "type": "string", - "description": "[Output Only] Creation timestamp in RFC3339 text format." - }, - "description": { - "type": "string", - "description": "An optional description of this resource. Provide this property when you create the resource." - }, - "id": { - "type": "string", - "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", - "format": "uint64" - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#targetHttpProxy for target HTTP proxies.", - "default": "compute#targetHttpProxy" - }, - "name": { - "type": "string", - "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for the resource." - }, - "urlMap": { - "type": "string", - "description": "URL to the UrlMap resource that defines the mapping from URL to the BackendService." - } - } - }, - "TargetHttpProxyList": { - "id": "TargetHttpProxyList", - "type": "object", - "description": "A list of TargetHttpProxy resources.", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "array", - "description": "A list of TargetHttpProxy resources.", - "items": { - "$ref": "TargetHttpProxy" - } - }, - "kind": { - "type": "string", - "description": "Type of resource. Always compute#targetHttpProxyList for lists of target HTTP proxies.", - "default": "compute#targetHttpProxyList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } + "InstancesAddMaintenancePoliciesRequest": { + "id": "InstancesAddMaintenancePoliciesRequest", + "properties": { + "maintenancePolicies": { + "description": "Maintenance policies to be added to this instance.", + "items": { + "type": "string" + }, + "type": "array" } - } }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "TargetHttpsProxiesSetQuicOverrideRequest": { - "id": "TargetHttpsProxiesSetQuicOverrideRequest", - "type": "object", - "properties": { - "quicOverride": { - "type": "string", - "description": "QUIC policy for the TargetHttpsProxy resource.", - "enum": [ - "DISABLE", - "ENABLE", - "NONE" - ], - "enumDescriptions": [ - "", - "", - "" - ] - } - } - }, - "TargetHttpsProxiesSetSslCertificatesRequest": { - "id": "TargetHttpsProxiesSetSslCertificatesRequest", - "type": "object", - "properties": { - "sslCertificates": { - "type": "array", - "description": "New set of SslCertificate resources to associate with this TargetHttpsProxy resource. Currently exactly one SslCertificate resource must be specified.", - "items": { - "type": "string" - } - } - } - }, - "TargetHttpsProxy": { - "id": "TargetHttpsProxy", - "type": "object", - "description": "A TargetHttpsProxy resource. This resource defines an HTTPS proxy. (== resource_for beta.targetHttpsProxies ==) (== resource_for v1.targetHttpsProxies ==)", - "properties": { - "clientSslPolicy": { - "type": "string", - "description": "URL to ClientSslPolicy resource which controls the set of allowed SSL versions and ciphers." + "type": "object" }, - "creationTimestamp": { - "type": "string", - "description": "[Output Only] Creation timestamp in RFC3339 text format." - }, - "description": { - "type": "string", - "description": "An optional description of this resource. Provide this property when you create the resource." - }, - "id": { - "type": "string", - "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", - "format": "uint64" - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#targetHttpsProxy for target HTTPS proxies.", - "default": "compute#targetHttpsProxy" - }, - "name": { - "type": "string", - "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" - }, - "quicOverride": { - "type": "string", - "description": "Specifies the QUIC override policy for this TargetHttpsProxy resource. This determines whether the load balancer will attempt to negotiate QUIC with clients or not. Can specify one of NONE, ENABLE, or DISABLE. Specify ENABLE to always enable QUIC, Enables QUIC when set to ENABLE, and disables QUIC when set to DISABLE. If NONE is specified, uses the QUIC policy with no user overrides, which is equivalent to DISABLE. Not specifying this field is equivalent to specifying NONE.", - "enum": [ - "DISABLE", - "ENABLE", - "NONE" - ], - "enumDescriptions": [ - "", - "", - "" - ] - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for the resource." - }, - "sslCertificates": { - "type": "array", - "description": "URLs to SslCertificate resources that are used to authenticate connections between users and the load balancer. Currently, exactly one SSL certificate must be specified.", - "items": { - "type": "string" - } - }, - "sslPolicy": { - "type": "string", - "description": "URL of SslPolicy resource that will be associated with the TargetHttpsProxy resource. If not set, the TargetHttpsProxy resource will not have any SSL policy configured." - }, - "urlMap": { - "type": "string", - "description": "A fully-qualified or valid partial URL to the UrlMap resource that defines the mapping from URL to the BackendService. For example, the following are all valid URLs for specifying a URL map: \n- https://www.googleapis.compute/v1/projects/project/global/urlMaps/url-map \n- projects/project/global/urlMaps/url-map \n- global/urlMaps/url-map" - } - } - }, - "TargetHttpsProxyList": { - "id": "TargetHttpsProxyList", - "type": "object", - "description": "Contains a list of TargetHttpsProxy resources.", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "array", - "description": "A list of TargetHttpsProxy resources.", - "items": { - "$ref": "TargetHttpsProxy" - } - }, - "kind": { - "type": "string", - "description": "Type of resource. Always compute#targetHttpsProxyList for lists of target HTTPS proxies.", - "default": "compute#targetHttpsProxyList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } + "InstancesRemoveMaintenancePoliciesRequest": { + "id": "InstancesRemoveMaintenancePoliciesRequest", + "properties": { + "maintenancePolicies": { + "description": "Maintenance policies to be removed from this instance.", + "items": { + "type": "string" + }, + "type": "array" } - } }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "TargetInstance": { - "id": "TargetInstance", - "type": "object", - "description": "A TargetInstance resource. This resource defines an endpoint instance that terminates traffic of certain protocols. (== resource_for beta.targetInstances ==) (== resource_for v1.targetInstances ==)", - "properties": { - "creationTimestamp": { - "type": "string", - "description": "[Output Only] Creation timestamp in RFC3339 text format." + "type": "object" }, - "description": { - "type": "string", - "description": "An optional description of this resource. Provide this property when you create the resource." - }, - "id": { - "type": "string", - "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", - "format": "uint64" - }, - "instance": { - "type": "string", - "description": "A URL to the virtual machine instance that handles traffic for this target instance. When creating a target instance, you can provide the fully-qualified URL or a valid partial URL to the desired virtual machine. For example, the following are all valid URLs: \n- https://www.googleapis.com/compute/v1/projects/project/zones/zone/instances/instance \n- projects/project/zones/zone/instances/instance \n- zones/zone/instances/instance" - }, - "kind": { - "type": "string", - "description": "[Output Only] The type of the resource. Always compute#targetInstance for target instances.", - "default": "compute#targetInstance" - }, - "name": { - "type": "string", - "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" - }, - "natPolicy": { - "type": "string", - "description": "NAT option controlling how IPs are NAT'ed to the instance. Currently only NO_NAT (default value) is supported.", - "enum": [ - "NO_NAT" - ], - "enumDescriptions": [ - "" - ] - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for the resource." - }, - "zone": { - "type": "string", - "description": "[Output Only] URL of the zone where the target instance resides." - } - } - }, - "TargetInstanceAggregatedList": { - "id": "TargetInstanceAggregatedList", - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "object", - "description": "A list of TargetInstance resources.", - "additionalProperties": { - "$ref": "TargetInstancesScopedList", - "description": "Name of the scope containing this set of target instances." - } - }, - "kind": { - "type": "string", - "description": "Type of resource.", - "default": "compute#targetInstanceAggregatedList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } + "InstancesResumeRequest": { + "id": "InstancesResumeRequest", + "properties": { + "disks": { + "description": "Array of disks associated with this instance that are protected with a customer-supplied encryption key.\n\nIn order to resume the instance, the disk url and its corresponding key must be provided.\n\nIf the disk is not protected with a customer-supplied encryption key it should not be specified.", + "items": { + "$ref": "CustomerEncryptionKeyProtectedDisk" + }, + "type": "array" + }, + "instanceEncryptionKey": { + "$ref": "CustomerEncryptionKey", + "description": "Decrypts data associated with an instance that is protected with a customer-supplied encryption key.\n\nIf the instance you are starting is protected with a customer-supplied encryption key, the correct key must be provided otherwise the instance resume will not succeed." } - } }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "TargetInstanceList": { - "id": "TargetInstanceList", - "type": "object", - "description": "Contains a list of TargetInstance resources.", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." + "type": "object" }, - "items": { - "type": "array", - "description": "A list of TargetInstance resources.", - "items": { - "$ref": "TargetInstance" - } - }, - "kind": { - "type": "string", - "description": "Type of resource.", - "default": "compute#targetInstanceList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } + "InstancesScopedList": { + "id": "InstancesScopedList", + "properties": { + "instances": { + "description": "[Output Only] List of instances contained in this scope.", + "items": { + "$ref": "Instance" + }, + "type": "array" + }, + "warning": { + "description": "[Output Only] Informational warning which replaces the list of instances when the list is empty.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" } - } }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "TargetInstancesScopedList": { - "id": "TargetInstancesScopedList", - "type": "object", - "properties": { - "targetInstances": { - "type": "array", - "description": "List of target instances contained in this scope.", - "items": { - "$ref": "TargetInstance" - } + "type": "object" }, - "warning": { - "type": "object", - "description": "Informational warning which replaces the list of addresses when the list is empty.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } + "InstancesSetLabelsRequest": { + "id": "InstancesSetLabelsRequest", + "properties": { + "labelFingerprint": { + "description": "Fingerprint of the previous set of labels for this resource, used to prevent conflicts. Provide the latest fingerprint value when making a request to add or change labels.", + "format": "byte", + "type": "string" + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "type": "object" } - } }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "TargetPool": { - "id": "TargetPool", - "type": "object", - "description": "A TargetPool resource. This resource defines a pool of instances, an associated HttpHealthCheck resource, and the fallback target pool. (== resource_for beta.targetPools ==) (== resource_for v1.targetPools ==)", - "properties": { - "backupPool": { - "type": "string", - "description": "This field is applicable only when the containing target pool is serving a forwarding rule as the primary pool, and its failoverRatio field is properly set to a value between [0, 1].\n\nbackupPool and failoverRatio together define the fallback behavior of the primary target pool: if the ratio of the healthy instances in the primary pool is at or below failoverRatio, traffic arriving at the load-balanced IP will be directed to the backup pool.\n\nIn case where failoverRatio and backupPool are not set, or all the instances in the backup pool are unhealthy, the traffic will be directed back to the primary pool in the \"force\" mode, where traffic will be spread to the healthy instances with the best effort, or to all instances when no instance is healthy." + "type": "object" }, - "creationTimestamp": { - "type": "string", - "description": "[Output Only] Creation timestamp in RFC3339 text format." - }, - "description": { - "type": "string", - "description": "An optional description of this resource. Provide this property when you create the resource." - }, - "failoverRatio": { - "type": "number", - "description": "This field is applicable only when the containing target pool is serving a forwarding rule as the primary pool (i.e., not as a backup pool to some other target pool). The value of the field must be in [0, 1].\n\nIf set, backupPool must also be set. They together define the fallback behavior of the primary target pool: if the ratio of the healthy instances in the primary pool is at or below this number, traffic arriving at the load-balanced IP will be directed to the backup pool.\n\nIn case where failoverRatio is not set or all the instances in the backup pool are unhealthy, the traffic will be directed back to the primary pool in the \"force\" mode, where traffic will be spread to the healthy instances with the best effort, or to all instances when no instance is healthy.", - "format": "float" - }, - "healthChecks": { - "type": "array", - "description": "The URL of the HttpHealthCheck resource. A member instance in this pool is considered healthy if and only if the health checks pass. An empty list means all member instances will be considered healthy at all times. Only HttpHealthChecks are supported. Only one health check may be specified.", - "items": { - "type": "string" - } - }, - "id": { - "type": "string", - "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", - "format": "uint64" - }, - "instances": { - "type": "array", - "description": "A list of resource URLs to the virtual machine instances serving this pool. They must live in zones contained in the same region as this pool.", - "items": { - "type": "string" - } - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of the resource. Always compute#targetPool for target pools.", - "default": "compute#targetPool" - }, - "name": { - "type": "string", - "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" - }, - "region": { - "type": "string", - "description": "[Output Only] URL of the region where the target pool resides." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for the resource." - }, - "sessionAffinity": { - "type": "string", - "description": "Sesssion affinity option, must be one of the following values:\nNONE: Connections from the same client IP may go to any instance in the pool.\nCLIENT_IP: Connections from the same client IP will go to the same instance in the pool while that instance remains healthy.\nCLIENT_IP_PROTO: Connections from the same client IP with the same IP protocol will go to the same instance in the pool while that instance remains healthy.", - "enum": [ - "CLIENT_IP", - "CLIENT_IP_PORT_PROTO", - "CLIENT_IP_PROTO", - "GENERATED_COOKIE", - "NONE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "" - ] - } - } - }, - "TargetPoolAggregatedList": { - "id": "TargetPoolAggregatedList", - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "object", - "description": "A list of TargetPool resources.", - "additionalProperties": { - "$ref": "TargetPoolsScopedList", - "description": "Name of the scope containing this set of target pools." - } - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#targetPoolAggregatedList for aggregated lists of target pools.", - "default": "compute#targetPoolAggregatedList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } + "InstancesSetMachineResourcesRequest": { + "id": "InstancesSetMachineResourcesRequest", + "properties": { + "guestAccelerators": { + "description": "List of the type and count of accelerator cards attached to the instance.", + "items": { + "$ref": "AcceleratorConfig" + }, + "type": "array" } - } }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "TargetPoolInstanceHealth": { - "id": "TargetPoolInstanceHealth", - "type": "object", - "properties": { - "healthStatus": { - "type": "array", - "items": { - "$ref": "HealthStatus" - } + "type": "object" }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#targetPoolInstanceHealth when checking the health of an instance.", - "default": "compute#targetPoolInstanceHealth" - } - } - }, - "TargetPoolList": { - "id": "TargetPoolList", - "type": "object", - "description": "Contains a list of TargetPool resources.", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "array", - "description": "A list of TargetPool resources.", - "items": { - "$ref": "TargetPool" - } - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#targetPoolList for lists of target pools.", - "default": "compute#targetPoolList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } + "InstancesSetMachineTypeRequest": { + "id": "InstancesSetMachineTypeRequest", + "properties": { + "machineType": { + "description": "Full or partial URL of the machine type resource. See Machine Types for a full list of machine types. For example: zones/us-central1-f/machineTypes/n1-standard-1", + "type": "string" } - } }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "TargetPoolsAddHealthCheckRequest": { - "id": "TargetPoolsAddHealthCheckRequest", - "type": "object", - "properties": { - "healthChecks": { - "type": "array", - "description": "The HttpHealthCheck to add to the target pool.", - "items": { - "$ref": "HealthCheckReference" - } - } - } - }, - "TargetPoolsAddInstanceRequest": { - "id": "TargetPoolsAddInstanceRequest", - "type": "object", - "properties": { - "instances": { - "type": "array", - "description": "A full or partial URL to an instance to add to this target pool. This can be a full or partial URL. For example, the following are valid URLs: \n- https://www.googleapis.com/compute/v1/projects/project-id/zones/zone/instances/instance-name \n- projects/project-id/zones/zone/instances/instance-name \n- zones/zone/instances/instance-name", - "items": { - "$ref": "InstanceReference" - } - } - } - }, - "TargetPoolsRemoveHealthCheckRequest": { - "id": "TargetPoolsRemoveHealthCheckRequest", - "type": "object", - "properties": { - "healthChecks": { - "type": "array", - "description": "Health check URL to be removed. This can be a full or valid partial URL. For example, the following are valid URLs: \n- https://www.googleapis.com/compute/beta/projects/project/global/httpHealthChecks/health-check \n- projects/project/global/httpHealthChecks/health-check \n- global/httpHealthChecks/health-check", - "items": { - "$ref": "HealthCheckReference" - } - } - } - }, - "TargetPoolsRemoveInstanceRequest": { - "id": "TargetPoolsRemoveInstanceRequest", - "type": "object", - "properties": { - "instances": { - "type": "array", - "description": "URLs of the instances to be removed from target pool.", - "items": { - "$ref": "InstanceReference" - } - } - } - }, - "TargetPoolsScopedList": { - "id": "TargetPoolsScopedList", - "type": "object", - "properties": { - "targetPools": { - "type": "array", - "description": "List of target pools contained in this scope.", - "items": { - "$ref": "TargetPool" - } + "type": "object" }, - "warning": { - "type": "object", - "description": "Informational warning which replaces the list of addresses when the list is empty.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } + "InstancesSetMinCpuPlatformRequest": { + "id": "InstancesSetMinCpuPlatformRequest", + "properties": { + "minCpuPlatform": { + "description": "Minimum cpu/platform this instance should be started at.", + "type": "string" } - } }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "TargetReference": { - "id": "TargetReference", - "type": "object", - "properties": { - "target": { - "type": "string" - } - } - }, - "TargetSslProxiesSetBackendServiceRequest": { - "id": "TargetSslProxiesSetBackendServiceRequest", - "type": "object", - "properties": { - "service": { - "type": "string", - "description": "The URL of the new BackendService resource for the targetSslProxy." - } - } - }, - "TargetSslProxiesSetProxyHeaderRequest": { - "id": "TargetSslProxiesSetProxyHeaderRequest", - "type": "object", - "properties": { - "proxyHeader": { - "type": "string", - "description": "The new type of proxy header to append before sending data to the backend. NONE or PROXY_V1 are allowed.", - "enum": [ - "NONE", - "PROXY_V1" - ], - "enumDescriptions": [ - "", - "" - ] - } - } - }, - "TargetSslProxiesSetSslCertificatesRequest": { - "id": "TargetSslProxiesSetSslCertificatesRequest", - "type": "object", - "properties": { - "sslCertificates": { - "type": "array", - "description": "New set of URLs to SslCertificate resources to associate with this TargetSslProxy. Currently exactly one ssl certificate must be specified.", - "items": { - "type": "string" - } - } - } - }, - "TargetSslProxy": { - "id": "TargetSslProxy", - "type": "object", - "description": "A TargetSslProxy resource. This resource defines an SSL proxy. (== resource_for beta.targetSslProxies ==) (== resource_for v1.targetSslProxies ==)", - "properties": { - "clientSslPolicy": { - "type": "string", - "description": "URL to ClientSslPolicy resource which controls the set of allowed SSL versions and ciphers." + "type": "object" }, - "creationTimestamp": { - "type": "string", - "description": "[Output Only] Creation timestamp in RFC3339 text format." - }, - "description": { - "type": "string", - "description": "An optional description of this resource. Provide this property when you create the resource." - }, - "id": { - "type": "string", - "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", - "format": "uint64" - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of the resource. Always compute#targetSslProxy for target SSL proxies.", - "default": "compute#targetSslProxy" - }, - "name": { - "type": "string", - "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" - }, - "proxyHeader": { - "type": "string", - "description": "Specifies the type of proxy header to append before sending data to the backend, either NONE or PROXY_V1. The default is NONE.", - "enum": [ - "NONE", - "PROXY_V1" - ], - "enumDescriptions": [ - "", - "" - ] - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for the resource." - }, - "service": { - "type": "string", - "description": "URL to the BackendService resource." - }, - "sslCertificates": { - "type": "array", - "description": "URLs to SslCertificate resources that are used to authenticate connections to Backends. Currently exactly one SSL certificate must be specified.", - "items": { - "type": "string" - } - }, - "sslPolicy": { - "type": "string", - "description": "URL of SslPolicy resource that will be associated with the TargetSslProxy resource. If not set, the TargetSslProxy resource will not have any SSL policy configured." - } - } - }, - "TargetSslProxyList": { - "id": "TargetSslProxyList", - "type": "object", - "description": "Contains a list of TargetSslProxy resources.", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "array", - "description": "A list of TargetSslProxy resources.", - "items": { - "$ref": "TargetSslProxy" - } - }, - "kind": { - "type": "string", - "description": "Type of resource.", - "default": "compute#targetSslProxyList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } + "InstancesSetServiceAccountRequest": { + "id": "InstancesSetServiceAccountRequest", + "properties": { + "email": { + "description": "Email address of the service account.", + "type": "string" + }, + "scopes": { + "description": "The list of scopes to be made available for this service account.", + "items": { + "type": "string" + }, + "type": "array" } - } }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "TargetTcpProxiesSetBackendServiceRequest": { - "id": "TargetTcpProxiesSetBackendServiceRequest", - "type": "object", - "properties": { - "service": { - "type": "string", - "description": "The URL of the new BackendService resource for the targetTcpProxy." - } - } - }, - "TargetTcpProxiesSetProxyHeaderRequest": { - "id": "TargetTcpProxiesSetProxyHeaderRequest", - "type": "object", - "properties": { - "proxyHeader": { - "type": "string", - "description": "The new type of proxy header to append before sending data to the backend. NONE or PROXY_V1 are allowed.", - "enum": [ - "NONE", - "PROXY_V1" - ], - "enumDescriptions": [ - "", - "" - ] - } - } - }, - "TargetTcpProxy": { - "id": "TargetTcpProxy", - "type": "object", - "description": "A TargetTcpProxy resource. This resource defines a TCP proxy. (== resource_for beta.targetTcpProxies ==) (== resource_for v1.targetTcpProxies ==)", - "properties": { - "creationTimestamp": { - "type": "string", - "description": "[Output Only] Creation timestamp in RFC3339 text format." + "type": "object" }, - "description": { - "type": "string", - "description": "An optional description of this resource. Provide this property when you create the resource." - }, - "id": { - "type": "string", - "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", - "format": "uint64" - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of the resource. Always compute#targetTcpProxy for target TCP proxies.", - "default": "compute#targetTcpProxy" - }, - "name": { - "type": "string", - "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" - }, - "proxyHeader": { - "type": "string", - "description": "Specifies the type of proxy header to append before sending data to the backend, either NONE or PROXY_V1. The default is NONE.", - "enum": [ - "NONE", - "PROXY_V1" - ], - "enumDescriptions": [ - "", - "" - ] - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for the resource." - }, - "service": { - "type": "string", - "description": "URL to the BackendService resource." - } - } - }, - "TargetTcpProxyList": { - "id": "TargetTcpProxyList", - "type": "object", - "description": "Contains a list of TargetTcpProxy resources.", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "array", - "description": "A list of TargetTcpProxy resources.", - "items": { - "$ref": "TargetTcpProxy" - } - }, - "kind": { - "type": "string", - "description": "Type of resource.", - "default": "compute#targetTcpProxyList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } + "InstancesStartWithEncryptionKeyRequest": { + "id": "InstancesStartWithEncryptionKeyRequest", + "properties": { + "disks": { + "description": "Array of disks associated with this instance that are protected with a customer-supplied encryption key.\n\nIn order to start the instance, the disk url and its corresponding key must be provided.\n\nIf the disk is not protected with a customer-supplied encryption key it should not be specified.", + "items": { + "$ref": "CustomerEncryptionKeyProtectedDisk" + }, + "type": "array" + }, + "instanceEncryptionKey": { + "$ref": "CustomerEncryptionKey", + "description": "Decrypts data associated with an instance that is protected with a customer-supplied encryption key.\n\nIf the instance you are starting is protected with a customer-supplied encryption key, the correct key must be provided otherwise the instance start will not succeed." } - } }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "TargetVpnGateway": { - "id": "TargetVpnGateway", - "type": "object", - "description": "Represents a Target VPN gateway resource. (== resource_for beta.targetVpnGateways ==) (== resource_for v1.targetVpnGateways ==)", - "properties": { - "creationTimestamp": { - "type": "string", - "description": "[Output Only] Creation timestamp in RFC3339 text format." + "type": "object" }, - "description": { - "type": "string", - "description": "An optional description of this resource. Provide this property when you create the resource." - }, - "forwardingRules": { - "type": "array", - "description": "[Output Only] A list of URLs to the ForwardingRule resources. ForwardingRules are created using compute.forwardingRules.insert and associated to a VPN gateway.", - "items": { - "type": "string" - } - }, - "id": { - "type": "string", - "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", - "format": "uint64" - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#targetVpnGateway for target VPN gateways.", - "default": "compute#targetVpnGateway" - }, - "labelFingerprint": { - "type": "string", - "description": "A fingerprint for the labels being applied to this TargetVpnGateway, which is essentially a hash of the labels set used for optimistic locking. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update labels. You must always provide an up-to-date fingerprint hash in order to update or change labels.\n\nTo see the latest fingerprint, make a get() request to retrieve an TargetVpnGateway.", - "format": "byte" - }, - "labels": { - "type": "object", - "description": "Labels to apply to this TargetVpnGateway resource. These can be later modified by the setLabels method. Each label key/value must comply with RFC1035. Label values may be empty.", - "additionalProperties": { - "type": "string" - } - }, - "name": { - "type": "string", - "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "annotations": { - "required": [ - "compute.targetVpnGateways.insert" - ] - } - }, - "network": { - "type": "string", - "description": "URL of the network to which this VPN gateway is attached. Provided by the client when the VPN gateway is created.", - "annotations": { - "required": [ - "compute.targetVpnGateways.insert" - ] - } - }, - "region": { - "type": "string", - "description": "[Output Only] URL of the region where the target VPN gateway resides." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for the resource." - }, - "status": { - "type": "string", - "description": "[Output Only] The status of the VPN gateway.", - "enum": [ - "CREATING", - "DELETING", - "FAILED", - "READY" - ], - "enumDescriptions": [ - "", - "", - "", - "" - ] - }, - "tunnels": { - "type": "array", - "description": "[Output Only] A list of URLs to VpnTunnel resources. VpnTunnels are created using compute.vpntunnels.insert method and associated to a VPN gateway.", - "items": { - "type": "string" - } - } - } - }, - "TargetVpnGatewayAggregatedList": { - "id": "TargetVpnGatewayAggregatedList", - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "object", - "description": "A list of TargetVpnGateway resources.", - "additionalProperties": { - "$ref": "TargetVpnGatewaysScopedList", - "description": "[Output Only] Name of the scope containing this set of target VPN gateways." - } - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#targetVpnGateway for target VPN gateways.", - "default": "compute#targetVpnGatewayAggregatedList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } + "Interconnect": { + "description": "Represents an Interconnects resource. The Interconnects resource is a dedicated connection between Google's network and your on-premises network. For more information, see the Dedicated overview page. (== resource_for v1.interconnects ==) (== resource_for beta.interconnects ==)", + "id": "Interconnect", + "properties": { + "adminEnabled": { + "description": "Administrative status of the interconnect. When this is set to true, the Interconnect is functional and can carry traffic. When set to false, no packets can be carried over the interconnect and no BGP routes are exchanged over it. By default, the status is set to true.", + "type": "boolean" + }, + "circuitInfos": { + "description": "[Output Only] List of CircuitInfo objects, that describe the individual circuits in this LAG.", + "items": { + "$ref": "InterconnectCircuitInfo" + }, + "type": "array" + }, + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "customerName": { + "description": "Customer name, to put in the Letter of Authorization as the party authorized to request a crossconnect.", + "type": "string" + }, + "description": { + "description": "An optional description of this resource. Provide this property when you create the resource.", + "type": "string" + }, + "expectedOutages": { + "description": "[Output Only] List of outages expected for this Interconnect.", + "items": { + "$ref": "InterconnectOutageNotification" + }, + "type": "array" + }, + "googleIpAddress": { + "description": "[Output Only] IP address configured on the Google side of the Interconnect link. This can be used only for ping tests.", + "type": "string" + }, + "googleReferenceId": { + "description": "[Output Only] Google reference ID; to be used when raising support tickets with Google or otherwise to debug backend connectivity issues.", + "type": "string" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64", + "type": "string" + }, + "interconnectAttachments": { + "description": "[Output Only] A list of the URLs of all InterconnectAttachments configured to use this Interconnect.", + "items": { + "type": "string" + }, + "type": "array" + }, + "interconnectType": { + "description": "Type of interconnect. Note that \"IT_PRIVATE\" has been deprecated in favor of \"DEDICATED\"", + "enum": [ + "DEDICATED", + "IT_PRIVATE", + "PARTNER" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, + "kind": { + "default": "compute#interconnect", + "description": "[Output Only] Type of the resource. Always compute#interconnect for interconnects.", + "type": "string" + }, + "labelFingerprint": { + "description": "A fingerprint for the labels being applied to this Interconnect, which is essentially a hash of the labels set used for optimistic locking. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update labels. You must always provide an up-to-date fingerprint hash in order to update or change labels.\n\nTo see the latest fingerprint, make a get() request to retrieve an Interconnect.", + "format": "byte", + "type": "string" + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Labels to apply to this Interconnect resource. These can be later modified by the setLabels method. Each label key/value must comply with RFC1035. Label values may be empty.", + "type": "object" + }, + "linkType": { + "description": "Type of link requested. This field indicates speed of each of the links in the bundle, not the entire bundle. Only 10G per link is allowed for a dedicated interconnect. Options: Ethernet_10G_LR", + "enum": [ + "LINK_TYPE_ETHERNET_10G_LR" + ], + "enumDescriptions": [ + "" + ], + "type": "string" + }, + "location": { + "description": "URL of the InterconnectLocation object that represents where this connection is to be provisioned.", + "type": "string" + }, + "name": { + "annotations": { + "required": [ + "compute.interconnects.insert" + ] + }, + "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "nocContactEmail": { + "description": "Email address to contact the customer NOC for operations and maintenance notifications regarding this Interconnect. If specified, this will be used for notifications in addition to all other forms described, such as Stackdriver logs alerting and Cloud Notifications.", + "type": "string" + }, + "operationalStatus": { + "description": "[Output Only] The current status of whether or not this Interconnect is functional.", + "enum": [ + "OS_ACTIVE", + "OS_UNPROVISIONED" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "peerIpAddress": { + "description": "[Output Only] IP address configured on the customer side of the Interconnect link. The customer should configure this IP address during turnup when prompted by Google NOC. This can be used only for ping tests.", + "type": "string" + }, + "provisionedLinkCount": { + "description": "[Output Only] Number of links actually provisioned in this interconnect.", + "format": "int32", + "type": "integer" + }, + "requestedLinkCount": { + "description": "Target number of physical links in the link bundle, as requested by the customer.", + "format": "int32", + "type": "integer" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + }, + "state": { + "description": "[Output Only] The current state of whether or not this Interconnect is functional.", + "enum": [ + "ACTIVE", + "UNPROVISIONED" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" } - } }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "TargetVpnGatewayList": { - "id": "TargetVpnGatewayList", - "type": "object", - "description": "Contains a list of TargetVpnGateway resources.", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." + "type": "object" }, - "items": { - "type": "array", - "description": "A list of TargetVpnGateway resources.", - "items": { - "$ref": "TargetVpnGateway" - } - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#targetVpnGateway for target VPN gateways.", - "default": "compute#targetVpnGatewayList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } + "InterconnectAttachment": { + "description": "Represents an InterconnectAttachment (VLAN attachment) resource. For more information, see Creating VLAN Attachments. (== resource_for beta.interconnectAttachments ==) (== resource_for v1.interconnectAttachments ==)", + "id": "InterconnectAttachment", + "properties": { + "adminEnabled": { + "description": "Determines whether this Attachment will carry packets. Not present for PARTNER_PROVIDER.", + "type": "boolean" + }, + "availabilityZone": { + "description": "[Deprecated] Replaced by edge_availability_domain.", + "enum": [ + "ZONE_1", + "ZONE_2", + "ZONE_ANY" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, + "bandwidth": { + "description": "Provisioned bandwidth capacity for the interconnectAttachment. Can be set by the partner to update the customer's provisioned bandwidth. Output only for for PARTNER type, mutable for PARTNER_PROVIDER, not available for DEDICATED.", + "enum": [ + "BPS_100M", + "BPS_10G", + "BPS_1G", + "BPS_200M", + "BPS_2G", + "BPS_300M", + "BPS_400M", + "BPS_500M", + "BPS_50M", + "BPS_5G" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "candidateSubnets": { + "description": "Up to 16 candidate prefixes that can be used to restrict the allocation of cloudRouterIpAddress and customerRouterIpAddress for this attachment. All prefixes must be within link-local address space (169.254.0.0/16) and must be /29 or shorter (/28, /27, etc). Google will attempt to select an unused /29 from the supplied candidate prefix(es). The request will fail if all possible /29s are in use on Google?s edge. If not supplied, Google will randomly select an unused /29 from all of link-local space.", + "items": { + "type": "string" + }, + "type": "array" + }, + "cloudRouterIpAddress": { + "description": "[Output Only] IPv4 address + prefix length to be configured on Cloud Router Interface for this interconnect attachment.", + "type": "string" + }, + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "customerRouterIpAddress": { + "description": "[Output Only] IPv4 address + prefix length to be configured on the customer router subinterface for this interconnect attachment.", + "type": "string" + }, + "description": { + "description": "An optional description of this resource.", + "type": "string" + }, + "edgeAvailabilityDomain": { + "description": "Desired availability domain for the attachment. Only available for type PARTNER, at creation time. For improved reliability, customers should configure a pair of attachments with one per availability domain. The selected availability domain will be provided to the Partner via the pairing key so that the provisioned circuit will lie in the specified domain. If not specified, the value will default to AVAILABILITY_DOMAIN_ANY.", + "enum": [ + "AVAILABILITY_DOMAIN_1", + "AVAILABILITY_DOMAIN_2", + "AVAILABILITY_DOMAIN_ANY" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, + "googleReferenceId": { + "description": "[Output Only] Google reference ID, to be used when raising support tickets with Google or otherwise to debug backend connectivity issues.", + "type": "string" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64", + "type": "string" + }, + "interconnect": { + "description": "URL of the underlying Interconnect object that this attachment's traffic will traverse through.", + "type": "string" + }, + "kind": { + "default": "compute#interconnectAttachment", + "description": "[Output Only] Type of the resource. Always compute#interconnectAttachment for interconnect attachments.", + "type": "string" + }, + "labelFingerprint": { + "description": "A fingerprint for the labels being applied to this InterconnectAttachment, which is essentially a hash of the labels set used for optimistic locking. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update labels. You must always provide an up-to-date fingerprint hash in order to update or change labels.\n\nTo see the latest fingerprint, make a get() request to retrieve an InterconnectAttachment.", + "format": "byte", + "type": "string" + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Labels to apply to this InterconnectAttachment resource. These can be later modified by the setLabels method. Each label key/value must comply with RFC1035. Label values may be empty.", + "type": "object" + }, + "name": { + "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "operationalStatus": { + "description": "[Output Only] The current status of whether or not this interconnect attachment is functional.", + "enum": [ + "OS_ACTIVE", + "OS_UNPROVISIONED" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "pairingKey": { + "description": "[Output only for type PARTNER. Input only for PARTNER_PROVIDER. Not present for DEDICATED]. The opaque identifier of an PARTNER attachment used to initiate provisioning with a selected partner. Of the form \"XXXXX/region/domain\"", + "type": "string" + }, + "partnerAsn": { + "description": "Optional BGP ASN for the router that should be supplied by a layer 3 Partner if they configured BGP on behalf of the customer. Output only for PARTNER type, input only for PARTNER_PROVIDER, not available for DEDICATED.", + "format": "int64", + "type": "string" + }, + "partnerMetadata": { + "$ref": "InterconnectAttachmentPartnerMetadata", + "description": "Informational metadata about Partner attachments from Partners to display to customers. Output only for for PARTNER type, mutable for PARTNER_PROVIDER, not available for DEDICATED." + }, + "privateInterconnectInfo": { + "$ref": "InterconnectAttachmentPrivateInfo", + "description": "[Output Only] Information specific to an InterconnectAttachment. This property is populated if the interconnect that this is attached to is of type DEDICATED." + }, + "region": { + "description": "[Output Only] URL of the region where the regional interconnect attachment resides. You must specify this field as part of the HTTP request URL. It is not settable as a field in the request body.", + "type": "string" + }, + "router": { + "description": "URL of the cloud router to be used for dynamic routing. This router must be in the same region as this InterconnectAttachment. The InterconnectAttachment will automatically connect the Interconnect to the network \u0026 region within which the Cloud Router is configured.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + }, + "state": { + "description": "[Output Only] The current state of this attachment's functionality.", + "enum": [ + "ACTIVE", + "DEFUNCT", + "PARTNER_REQUEST_RECEIVED", + "PENDING_CUSTOMER", + "PENDING_PARTNER", + "STATE_UNSPECIFIED", + "UNPROVISIONED" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "type": { + "enum": [ + "DEDICATED", + "PARTNER", + "PARTNER_PROVIDER" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, + "vlanTag8021q": { + "description": "Available only for DEDICATED and PARTNER_PROVIDER. Desired VLAN tag for this attachment, in the range 2-4094. This field refers to 802.1q VLAN tag, also known as IEEE 802.1Q Only specified at creation time.", + "format": "int32", + "type": "integer" } - } }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "TargetVpnGatewaysScopedList": { - "id": "TargetVpnGatewaysScopedList", - "type": "object", - "properties": { - "targetVpnGateways": { - "type": "array", - "description": "[Output Only] List of target vpn gateways contained in this scope.", - "items": { - "$ref": "TargetVpnGateway" - } + "type": "object" }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning which replaces the list of addresses when the list is empty.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } + "InterconnectAttachmentAggregatedList": { + "id": "InterconnectAttachmentAggregatedList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "additionalProperties": { + "$ref": "InterconnectAttachmentsScopedList", + "description": "Name of the scope containing this set of interconnect attachments." + }, + "description": "A list of InterconnectAttachmentsScopedList resources.", + "type": "object" + }, + "kind": { + "default": "compute#interconnectAttachmentAggregatedList", + "description": "[Output Only] Type of resource. Always compute#interconnectAttachmentAggregatedList for aggregated lists of interconnect attachments.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" } - } }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "TestFailure": { - "id": "TestFailure", - "type": "object", - "properties": { - "actualService": { - "type": "string" + "type": "object" }, - "expectedService": { - "type": "string" - }, - "host": { - "type": "string" - }, - "path": { - "type": "string" - } - } - }, - "TestPermissionsRequest": { - "id": "TestPermissionsRequest", - "type": "object", - "properties": { - "permissions": { - "type": "array", - "description": "The set of permissions to check for the 'resource'. Permissions with wildcards (such as '*' or 'storage.*') are not allowed.", - "items": { - "type": "string" - } - } - } - }, - "TestPermissionsResponse": { - "id": "TestPermissionsResponse", - "type": "object", - "properties": { - "permissions": { - "type": "array", - "description": "A subset of `TestPermissionsRequest.permissions` that the caller is allowed.", - "items": { - "type": "string" - } - } - } - }, - "UDPHealthCheck": { - "id": "UDPHealthCheck", - "type": "object", - "properties": { - "port": { - "type": "integer", - "description": "The UDP port number for the health check request. Valid values are 1 through 65535.", - "format": "int32" - }, - "portName": { - "type": "string", - "description": "Port name as defined in InstanceGroup#NamedPort#name. If both port and port_name are defined, port takes precedence." - }, - "request": { - "type": "string", - "description": "Raw data of request to send in payload of UDP packet. It is an error if this is empty. The request data can only be ASCII." - }, - "response": { - "type": "string", - "description": "The bytes to match against the beginning of the response data. It is an error if this is empty. The response data can only be ASCII." - } - } - }, - "UrlMap": { - "id": "UrlMap", - "type": "object", - "description": "A UrlMap resource. This resource defines the mapping from URL to the BackendService resource, based on the \"longest-match\" of the URL's host and path.", - "properties": { - "creationTimestamp": { - "type": "string", - "description": "[Output Only] Creation timestamp in RFC3339 text format." - }, - "defaultService": { - "type": "string", - "description": "The URL of the BackendService resource if none of the hostRules match." - }, - "description": { - "type": "string", - "description": "An optional description of this resource. Provide this property when you create the resource." - }, - "fingerprint": { - "type": "string", - "description": "Fingerprint of this resource. A hash of the contents stored in this object. This field is used in optimistic locking. This field will be ignored when inserting a UrlMap. An up-to-date fingerprint must be provided in order to update the UrlMap.", - "format": "byte" - }, - "hostRules": { - "type": "array", - "description": "The list of HostRules to use against the URL.", - "items": { - "$ref": "HostRule" - } - }, - "id": { - "type": "string", - "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", - "format": "uint64" - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of the resource. Always compute#urlMaps for url maps.", - "default": "compute#urlMap" - }, - "name": { - "type": "string", - "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" - }, - "pathMatchers": { - "type": "array", - "description": "The list of named PathMatchers to use against the URL.", - "items": { - "$ref": "PathMatcher" - } - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for the resource." - }, - "tests": { - "type": "array", - "description": "The list of expected URL mappings. Request to update this UrlMap will succeed only if all of the test cases pass.", - "items": { - "$ref": "UrlMapTest" - } - } - } - }, - "UrlMapList": { - "id": "UrlMapList", - "type": "object", - "description": "Contains a list of UrlMap resources.", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "array", - "description": "A list of UrlMap resources.", - "items": { - "$ref": "UrlMap" - } - }, - "kind": { - "type": "string", - "description": "Type of resource.", - "default": "compute#urlMapList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } + "InterconnectAttachmentList": { + "description": "Response to the list request, and contains a list of interconnect attachments.", + "id": "InterconnectAttachmentList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of InterconnectAttachment resources.", + "items": { + "$ref": "InterconnectAttachment" + }, + "type": "array" + }, + "kind": { + "default": "compute#interconnectAttachmentList", + "description": "[Output Only] Type of resource. Always compute#interconnectAttachmentList for lists of interconnect attachments.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" } - } }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "UrlMapReference": { - "id": "UrlMapReference", - "type": "object", - "properties": { - "urlMap": { - "type": "string" - } - } - }, - "UrlMapTest": { - "id": "UrlMapTest", - "type": "object", - "description": "Message for the expected URL mappings.", - "properties": { - "description": { - "type": "string", - "description": "Description of this test case." + "type": "object" }, - "host": { - "type": "string", - "description": "Host portion of the URL." - }, - "path": { - "type": "string", - "description": "Path portion of the URL." - }, - "service": { - "type": "string", - "description": "Expected BackendService resource the given URL should be mapped to." - } - } - }, - "UrlMapValidationResult": { - "id": "UrlMapValidationResult", - "type": "object", - "description": "Message representing the validation result for a UrlMap.", - "properties": { - "loadErrors": { - "type": "array", - "items": { - "type": "string" - } - }, - "loadSucceeded": { - "type": "boolean", - "description": "Whether the given UrlMap can be successfully loaded. If false, 'loadErrors' indicates the reasons." - }, - "testFailures": { - "type": "array", - "items": { - "$ref": "TestFailure" - } - }, - "testPassed": { - "type": "boolean", - "description": "If successfully loaded, this field indicates whether the test passed. If false, 'testFailures's indicate the reason of failure." - } - } - }, - "UrlMapsValidateRequest": { - "id": "UrlMapsValidateRequest", - "type": "object", - "properties": { - "resource": { - "$ref": "UrlMap", - "description": "Content of the UrlMap to be validated." - } - } - }, - "UrlMapsValidateResponse": { - "id": "UrlMapsValidateResponse", - "type": "object", - "properties": { - "result": { - "$ref": "UrlMapValidationResult" - } - } - }, - "UsableSubnetwork": { - "id": "UsableSubnetwork", - "type": "object", - "description": "Subnetwork which the current user has compute.subnetworks.use permission on.", - "properties": { - "ipCidrRange": { - "type": "string", - "description": "The range of internal addresses that are owned by this subnetwork." - }, - "network": { - "type": "string", - "description": "Network URL." - }, - "subnetwork": { - "type": "string", - "description": "Subnetwork URL." - } - } - }, - "UsableSubnetworksAggregatedList": { - "id": "UsableSubnetworksAggregatedList", - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server." - }, - "items": { - "type": "array", - "description": "[Output] A list of usable subnetwork URLs.", - "items": { - "$ref": "UsableSubnetwork" - } - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#usableSubnetworksAggregatedList for aggregated lists of usable subnetworks.", - "default": "compute#usableSubnetworksAggregatedList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } + "InterconnectAttachmentPartnerMetadata": { + "description": "Informational metadata about Partner attachments from Partners to display to customers. These fields are propagated from PARTNER_PROVIDER attachments to their corresponding PARTNER attachments.", + "id": "InterconnectAttachmentPartnerMetadata", + "properties": { + "interconnectName": { + "description": "Plain text name of the Interconnect this attachment is connected to, as displayed in the Partner?s portal. For instance ?Chicago 1?. This value may be validated to match approved Partner values.", + "type": "string" + }, + "partnerName": { + "description": "Plain text name of the Partner providing this attachment. This value may be validated to match approved Partner values.", + "type": "string" + }, + "portalUrl": { + "description": "URL of the Partner?s portal for this Attachment. Partners may customise this to be a deep-link to the specific resource on the Partner portal. This value may be validated to match approved Partner values.", + "type": "string" } - } }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "UsageExportLocation": { - "id": "UsageExportLocation", - "type": "object", - "description": "The location in Cloud Storage and naming method of the daily usage report. Contains bucket_name and report_name prefix.", - "properties": { - "bucketName": { - "type": "string", - "description": "The name of an existing bucket in Cloud Storage where the usage report object is stored. The Google Service Account is granted write access to this bucket. This can either be the bucket name by itself, such as example-bucket, or the bucket name with gs:// or https://storage.googleapis.com/ in front of it, such as gs://example-bucket." + "type": "object" }, - "reportNamePrefix": { - "type": "string", - "description": "An optional prefix for the name of the usage report object stored in bucketName. If not supplied, defaults to usage. The report is stored as a CSV file named report_name_prefix_gce_YYYYMMDD.csv where YYYYMMDD is the day of the usage according to Pacific Time. If you supply a prefix, it should conform to Cloud Storage object naming conventions." - } - } - }, - "VmMaintenancePolicy": { - "id": "VmMaintenancePolicy", - "type": "object", - "description": "A Vm Maintenance Policy specifies what kind of infrastructure maintenance we are allowed to perform on this VM and when.", - "properties": { - "maintenanceWindow": { - "$ref": "MaintenanceWindow", - "description": "Maintenance windows that are applied to VMs covered by this policy." - } - } - }, - "VpnTunnel": { - "id": "VpnTunnel", - "type": "object", - "description": "VPN tunnel resource. (== resource_for beta.vpnTunnels ==) (== resource_for v1.vpnTunnels ==)", - "properties": { - "creationTimestamp": { - "type": "string", - "description": "[Output Only] Creation timestamp in RFC3339 text format." - }, - "description": { - "type": "string", - "description": "An optional description of this resource. Provide this property when you create the resource." - }, - "detailedStatus": { - "type": "string", - "description": "[Output Only] Detailed status message for the VPN tunnel." - }, - "id": { - "type": "string", - "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", - "format": "uint64" - }, - "ikeVersion": { - "type": "integer", - "description": "IKE protocol version to use when establishing the VPN tunnel with peer VPN gateway. Acceptable IKE versions are 1 or 2. Default version is 2.", - "format": "int32" - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#vpnTunnel for VPN tunnels.", - "default": "compute#vpnTunnel" - }, - "labelFingerprint": { - "type": "string", - "description": "A fingerprint for the labels being applied to this VpnTunnel, which is essentially a hash of the labels set used for optimistic locking. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update labels. You must always provide an up-to-date fingerprint hash in order to update or change labels.\n\nTo see the latest fingerprint, make a get() request to retrieve a VpnTunnel.", - "format": "byte" - }, - "labels": { - "type": "object", - "description": "Labels to apply to this VpnTunnel. These can be later modified by the setLabels method. Each label key/value pair must comply with RFC1035. Label values may be empty.", - "additionalProperties": { - "type": "string" - } - }, - "localTrafficSelector": { - "type": "array", - "description": "Local traffic selector to use when establishing the VPN tunnel with peer VPN gateway. The value should be a CIDR formatted string, for example: 192.168.0.0/16. The ranges should be disjoint. Only IPv4 is supported.", - "items": { - "type": "string" - } - }, - "name": { - "type": "string", - "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "annotations": { - "required": [ - "compute.vpnTunnels.insert" - ] - } - }, - "peerIp": { - "type": "string", - "description": "IP address of the peer VPN gateway. Only IPv4 is supported." - }, - "region": { - "type": "string", - "description": "[Output Only] URL of the region where the VPN tunnel resides." - }, - "remoteTrafficSelector": { - "type": "array", - "description": "Remote traffic selectors to use when establishing the VPN tunnel with peer VPN gateway. The value should be a CIDR formatted string, for example: 192.168.0.0/16. The ranges should be disjoint. Only IPv4 is supported.", - "items": { - "type": "string" - } - }, - "router": { - "type": "string", - "description": "URL of router resource to be used for dynamic routing." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for the resource." - }, - "sharedSecret": { - "type": "string", - "description": "Shared secret used to set the secure session between the Cloud VPN gateway and the peer VPN gateway." - }, - "sharedSecretHash": { - "type": "string", - "description": "Hash of the shared secret." - }, - "status": { - "type": "string", - "description": "[Output Only] The status of the VPN tunnel.", - "enum": [ - "ALLOCATING_RESOURCES", - "AUTHORIZATION_ERROR", - "DEPROVISIONING", - "ESTABLISHED", - "FAILED", - "FIRST_HANDSHAKE", - "NEGOTIATION_FAILURE", - "NETWORK_ERROR", - "NO_INCOMING_PACKETS", - "PROVISIONING", - "REJECTED", - "WAITING_FOR_FULL_CONFIG" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "targetVpnGateway": { - "type": "string", - "description": "URL of the VPN gateway with which this VPN tunnel is associated. Provided by the client when the VPN tunnel is created.", - "annotations": { - "required": [ - "compute.vpnTunnels.insert" - ] - } - } - } - }, - "VpnTunnelAggregatedList": { - "id": "VpnTunnelAggregatedList", - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "object", - "description": "A list of VpnTunnelsScopedList resources.", - "additionalProperties": { - "$ref": "VpnTunnelsScopedList", - "description": "Name of the scope containing this set of vpn tunnels." - } - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#vpnTunnel for VPN tunnels.", - "default": "compute#vpnTunnelAggregatedList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } + "InterconnectAttachmentPrivateInfo": { + "description": "Information for an interconnect attachment when this belongs to an interconnect of type DEDICATED.", + "id": "InterconnectAttachmentPrivateInfo", + "properties": { + "tag8021q": { + "description": "[Output Only] 802.1q encapsulation tag to be used for traffic between Google and the customer, going to and from this network and region.", + "format": "uint32", + "type": "integer" } - } }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "VpnTunnelList": { - "id": "VpnTunnelList", - "type": "object", - "description": "Contains a list of VpnTunnel resources.", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." + "type": "object" }, - "items": { - "type": "array", - "description": "A list of VpnTunnel resources.", - "items": { - "$ref": "VpnTunnel" - } - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#vpnTunnel for VPN tunnels.", - "default": "compute#vpnTunnelList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } + "InterconnectAttachmentsScopedList": { + "id": "InterconnectAttachmentsScopedList", + "properties": { + "interconnectAttachments": { + "description": "List of interconnect attachments contained in this scope.", + "items": { + "$ref": "InterconnectAttachment" + }, + "type": "array" + }, + "warning": { + "description": "Informational warning which replaces the list of addresses when the list is empty.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" } - } }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "VpnTunnelsScopedList": { - "id": "VpnTunnelsScopedList", - "type": "object", - "properties": { - "vpnTunnels": { - "type": "array", - "description": "List of vpn tunnels contained in this scope.", - "items": { - "$ref": "VpnTunnel" - } + "type": "object" }, - "warning": { - "type": "object", - "description": "Informational warning which replaces the list of addresses when the list is empty.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } + "InterconnectCircuitInfo": { + "description": "Describes a single physical circuit between the Customer and Google. CircuitInfo objects are created by Google, so all fields are output only. Next id: 4", + "id": "InterconnectCircuitInfo", + "properties": { + "customerDemarcId": { + "description": "Customer-side demarc ID for this circuit.", + "type": "string" + }, + "googleCircuitId": { + "description": "Google-assigned unique ID for this circuit. Assigned at circuit turn-up.", + "type": "string" + }, + "googleDemarcId": { + "description": "Google-side demarc ID for this circuit. Assigned at circuit turn-up and provided by Google to the customer in the LOA.", + "type": "string" } - } }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "XpnHostList": { - "id": "XpnHostList", - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." + "type": "object" }, - "items": { - "type": "array", - "description": "[Output Only] A list of shared VPC host project URLs.", - "items": { - "$ref": "Project" - } - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#xpnHostList for lists of shared VPC hosts.", - "default": "compute#xpnHostList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } + "InterconnectList": { + "description": "Response to the list request, and contains a list of interconnects.", + "id": "InterconnectList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of Interconnect resources.", + "items": { + "$ref": "Interconnect" + }, + "type": "array" + }, + "kind": { + "default": "compute#interconnectList", + "description": "[Output Only] Type of resource. Always compute#interconnectList for lists of interconnects.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" } - } }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "XpnResourceId": { - "id": "XpnResourceId", - "type": "object", - "description": "Service resource (a.k.a service project) ID.", - "properties": { - "id": { - "type": "string", - "description": "The ID of the service resource. In the case of projects, this field matches the project ID (e.g., my-project), not the project number (e.g., 12345678)." + "type": "object" }, - "type": { - "type": "string", - "description": "The type of the service resource.", - "enum": [ - "PROJECT", - "XPN_RESOURCE_TYPE_UNSPECIFIED" - ], - "enumDescriptions": [ - "", - "" - ] - } - } - }, - "Zone": { - "id": "Zone", - "type": "object", - "description": "A Zone resource. (== resource_for beta.zones ==) (== resource_for v1.zones ==)", - "properties": { - "availableCpuPlatforms": { - "type": "array", - "description": "[Output Only] Available cpu/platform selections for the zone.", - "items": { - "type": "string" - } - }, - "creationTimestamp": { - "type": "string", - "description": "[Output Only] Creation timestamp in RFC3339 text format." - }, - "deprecated": { - "$ref": "DeprecationStatus", - "description": "[Output Only] The deprecation status associated with this zone." - }, - "description": { - "type": "string", - "description": "[Output Only] Textual description of the resource." - }, - "id": { - "type": "string", - "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", - "format": "uint64" - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of the resource. Always compute#zone for zones.", - "default": "compute#zone" - }, - "name": { - "type": "string", - "description": "[Output Only] Name of the resource." - }, - "region": { - "type": "string", - "description": "[Output Only] Full URL reference to the region which hosts the zone." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for the resource." - }, - "status": { - "type": "string", - "description": "[Output Only] Status of the zone, either UP or DOWN.", - "enum": [ - "DOWN", - "UP" - ], - "enumDescriptions": [ - "", - "" - ] - } - } - }, - "ZoneList": { - "id": "ZoneList", - "type": "object", - "description": "Contains a list of zone resources.", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "array", - "description": "A list of Zone resources.", - "items": { - "$ref": "Zone" - } - }, - "kind": { - "type": "string", - "description": "Type of resource.", - "default": "compute#zoneList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } + "InterconnectLocation": { + "description": "Represents an InterconnectLocations resource. The InterconnectLocations resource describes the locations where you can connect to Google's networks. For more information, see Colocation Facilities.", + "id": "InterconnectLocation", + "properties": { + "address": { + "description": "[Output Only] The postal address of the Point of Presence, each line in the address is separated by a newline character.", + "type": "string" + }, + "availabilityZone": { + "description": "[Output Only] Availability zone for this location. Within a metropolitan area (metro), maintenance will not be simultaneously scheduled in more than one availability zone. Example: \"zone1\" or \"zone2\".", + "type": "string" + }, + "city": { + "description": "[Output Only] Metropolitan area designator that indicates which city an interconnect is located. For example: \"Chicago, IL\", \"Amsterdam, Netherlands\".", + "type": "string" + }, + "continent": { + "description": "[Output Only] Continent for this location.", + "enum": [ + "AFRICA", + "ASIA_PAC", + "C_AFRICA", + "C_ASIA_PAC", + "C_EUROPE", + "C_NORTH_AMERICA", + "C_SOUTH_AMERICA", + "EUROPE", + "NORTH_AMERICA", + "SOUTH_AMERICA" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "description": { + "description": "[Output Only] An optional description of the resource.", + "type": "string" + }, + "facilityProvider": { + "description": "[Output Only] The name of the provider for this facility (e.g., EQUINIX).", + "type": "string" + }, + "facilityProviderFacilityId": { + "description": "[Output Only] A provider-assigned Identifier for this facility (e.g., Ashburn-DC1).", + "type": "string" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64", + "type": "string" + }, + "kind": { + "default": "compute#interconnectLocation", + "description": "[Output Only] Type of the resource. Always compute#interconnectLocation for interconnect locations.", + "type": "string" + }, + "name": { + "description": "[Output Only] Name of the resource.", + "type": "string" + }, + "peeringdbFacilityId": { + "description": "[Output Only] The peeringdb identifier for this facility (corresponding with a netfac type in peeringdb).", + "type": "string" + }, + "regionInfos": { + "description": "[Output Only] A list of InterconnectLocation.RegionInfo objects, that describe parameters pertaining to the relation between this InterconnectLocation and various Google Cloud regions.", + "items": { + "$ref": "InterconnectLocationRegionInfo" + }, + "type": "array" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" } - } }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } + "type": "object" + }, + "InterconnectLocationList": { + "description": "Response to the list request, and contains a list of interconnect locations.", + "id": "InterconnectLocationList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of InterconnectLocation resources.", + "items": { + "$ref": "InterconnectLocation" + }, + "type": "array" + }, + "kind": { + "default": "compute#interconnectLocationList", + "description": "[Output Only] Type of resource. Always compute#interconnectLocationList for lists of interconnect locations.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "InterconnectLocationRegionInfo": { + "description": "Information about any potential InterconnectAttachments between an Interconnect at a specific InterconnectLocation, and a specific Cloud Region.", + "id": "InterconnectLocationRegionInfo", + "properties": { + "expectedRttMs": { + "description": "Expected round-trip time in milliseconds, from this InterconnectLocation to a VM in this region.", + "format": "int64", + "type": "string" + }, + "locationPresence": { + "description": "Identifies the network presence of this location.", + "enum": [ + "GLOBAL", + "LOCAL_REGION", + "LP_GLOBAL", + "LP_LOCAL_REGION" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ], + "type": "string" + }, + "region": { + "description": "URL for the region of this location.", + "type": "string" + } + }, + "type": "object" + }, + "InterconnectOutageNotification": { + "description": "Description of a planned outage on this Interconnect. Next id: 9", + "id": "InterconnectOutageNotification", + "properties": { + "affectedCircuits": { + "description": "Iff issue_type is IT_PARTIAL_OUTAGE, a list of the Google-side circuit IDs that will be affected.", + "items": { + "type": "string" + }, + "type": "array" + }, + "description": { + "description": "A description about the purpose of the outage.", + "type": "string" + }, + "endTime": { + "description": "Scheduled end time for the outage (milliseconds since Unix epoch).", + "format": "int64", + "type": "string" + }, + "issueType": { + "description": "Form this outage is expected to take. Note that the \"IT_\" versions of this enum have been deprecated in favor of the unprefixed values.", + "enum": [ + "IT_OUTAGE", + "IT_PARTIAL_OUTAGE", + "OUTAGE", + "PARTIAL_OUTAGE" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ], + "type": "string" + }, + "name": { + "description": "Unique identifier for this outage notification.", + "type": "string" + }, + "source": { + "description": "The party that generated this notification. Note that \"NSRC_GOOGLE\" has been deprecated in favor of \"GOOGLE\"", + "enum": [ + "GOOGLE", + "NSRC_GOOGLE" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "startTime": { + "description": "Scheduled start time for the outage (milliseconds since Unix epoch).", + "format": "int64", + "type": "string" + }, + "state": { + "description": "State of this notification. Note that the \"NS_\" versions of this enum have been deprecated in favor of the unprefixed values.", + "enum": [ + "ACTIVE", + "CANCELLED", + "NS_ACTIVE", + "NS_CANCELED" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "InternalIpOwner": { + "id": "InternalIpOwner", + "properties": { + "ipCidrRange": { + "description": "IP CIDR range being owned.", + "type": "string" + }, + "owners": { + "description": "URLs of the IP owners of the IP CIDR range.", + "items": { + "type": "string" + }, + "type": "array" + }, + "systemOwned": { + "description": "Whether this IP CIDR range is reserved for system use.", + "type": "boolean" + } + }, + "type": "object" + }, + "IpOwnerList": { + "description": "Contains a list of IP owners.", + "id": "IpOwnerList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of InternalIpOwner resources.", + "items": { + "$ref": "InternalIpOwner" + }, + "type": "array" + }, + "kind": { + "default": "compute#ipOwnerList", + "description": "[Output Only] Type of resource. Always compute#ipOwnerList for lists of IP owners.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "License": { + "description": "A license resource.", + "id": "License", + "properties": { + "chargesUseFee": { + "description": "[Output Only] Deprecated. This field no longer reflects whether a license charges a usage fee.", + "type": "boolean" + }, + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "description": { + "description": "An optional textual description of the resource; provided by the client when the resource is created.", + "type": "string" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64", + "type": "string" + }, + "kind": { + "default": "compute#license", + "description": "[Output Only] Type of resource. Always compute#license for licenses.", + "type": "string" + }, + "licenseCode": { + "description": "[Output Only] The unique code used to attach this license to images, snapshots, and disks.", + "format": "uint64", + "type": "string" + }, + "name": { + "annotations": { + "required": [ + "compute.images.insert" + ] + }, + "description": "[Output Only] Name of the resource. The name is 1-63 characters long and complies with RFC1035.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "resourceRequirements": { + "$ref": "LicenseResourceRequirements" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + }, + "transferable": { + "description": "If false, licenses will not be copied from the source resource when creating an image from a disk, disk from snapshot, or snapshot from disk.", + "type": "boolean" + } + }, + "type": "object" + }, + "LicenseCode": { + "id": "LicenseCode", + "properties": { + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "description": { + "description": "[Output Only] Description of this License Code.", + "type": "string" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64", + "type": "string" + }, + "kind": { + "default": "compute#licenseCode", + "description": "[Output Only] Type of resource. Always compute#licenseCode for licenses.", + "type": "string" + }, + "licenseAlias": { + "description": "[Output Only] URL and description aliases of Licenses with the same License Code.", + "items": { + "$ref": "LicenseCodeLicenseAlias" + }, + "type": "array" + }, + "name": { + "annotations": { + "required": [ + "compute.licenses.insert" + ] + }, + "description": "[Output Only] Name of the resource. The name is 1-20 characters long and must be a valid 64 bit integer.", + "pattern": "[0-9]{0,20}?", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + }, + "state": { + "description": "[Output Only] Current state of this License Code.", + "enum": [ + "DISABLED", + "ENABLED", + "RESTRICTED", + "STATE_UNSPECIFIED", + "TERMINATED" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "transferable": { + "description": "[Output Only] If true, the license will remain attached when creating images or snapshots from disks. Otherwise, the license is not transferred.", + "type": "boolean" + } + }, + "type": "object" + }, + "LicenseCodeLicenseAlias": { + "id": "LicenseCodeLicenseAlias", + "properties": { + "description": { + "description": "[Output Only] Description of this License Code.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] URL of license corresponding to this License Code.", + "type": "string" + } + }, + "type": "object" + }, + "LicenseResourceRequirements": { + "id": "LicenseResourceRequirements", + "properties": { + "minGuestCpuCount": { + "description": "Minimum number of guest cpus required to use the Instance. Enforced at Instance creation and Instance start.", + "format": "int32", + "type": "integer" + }, + "minMemoryMb": { + "description": "Minimum memory required to use the Instance. Enforced at Instance creation and Instance start.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "LicensesListResponse": { + "id": "LicensesListResponse", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of License resources.", + "items": { + "$ref": "License" + }, + "type": "array" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "LogConfig": { + "description": "Specifies what kind of log the caller must write", + "id": "LogConfig", + "properties": { + "cloudAudit": { + "$ref": "LogConfigCloudAuditOptions", + "description": "Cloud audit options." + }, + "counter": { + "$ref": "LogConfigCounterOptions", + "description": "Counter options." + }, + "dataAccess": { + "$ref": "LogConfigDataAccessOptions", + "description": "Data access options." + } + }, + "type": "object" + }, + "LogConfigCloudAuditOptions": { + "description": "Write a Cloud Audit log", + "id": "LogConfigCloudAuditOptions", + "properties": { + "authorizationLoggingOptions": { + "$ref": "AuthorizationLoggingOptions", + "description": "Information used by the Cloud Audit Logging pipeline." + }, + "logName": { + "description": "The log_name to populate in the Cloud Audit Record.", + "enum": [ + "ADMIN_ACTIVITY", + "DATA_ACCESS", + "UNSPECIFIED_LOG_NAME" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "LogConfigCounterOptions": { + "description": "Increment a streamz counter with the specified metric and field names.\n\nMetric names should start with a '/', generally be lowercase-only, and end in \"_count\". Field names should not contain an initial slash. The actual exported metric names will have \"/iam/policy\" prepended.\n\nField names correspond to IAM request parameters and field values are their respective values.\n\nAt present the only supported field names are - \"iam_principal\", corresponding to IAMContext.principal; - \"\" (empty string), resulting in one aggretated counter with no field.\n\nExamples: counter { metric: \"/debug_access_count\" field: \"iam_principal\" } ==\u003e increment counter /iam/policy/backend_debug_access_count {iam_principal=[value of IAMContext.principal]}\n\nAt this time we do not support: * multiple field names (though this may be supported in the future) * decrementing the counter * incrementing it by anything other than 1", + "id": "LogConfigCounterOptions", + "properties": { + "field": { + "description": "The field value to attribute.", + "type": "string" + }, + "metric": { + "description": "The metric to update.", + "type": "string" + } + }, + "type": "object" + }, + "LogConfigDataAccessOptions": { + "description": "Write a Data Access (Gin) log", + "id": "LogConfigDataAccessOptions", + "properties": { + "logMode": { + "description": "Whether Gin logging should happen in a fail-closed manner at the caller. This is relevant only in the LocalIAM implementation, for now.", + "enum": [ + "LOG_FAIL_CLOSED", + "LOG_MODE_UNSPECIFIED" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "MachineType": { + "description": "A Machine Type resource. (== resource_for v1.machineTypes ==) (== resource_for beta.machineTypes ==)", + "id": "MachineType", + "properties": { + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "deprecated": { + "$ref": "DeprecationStatus", + "description": "[Output Only] The deprecation status associated with this machine type." + }, + "description": { + "description": "[Output Only] An optional textual description of the resource.", + "type": "string" + }, + "guestCpus": { + "description": "[Output Only] The number of virtual CPUs that are available to the instance.", + "format": "int32", + "type": "integer" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64", + "type": "string" + }, + "isSharedCpu": { + "description": "[Output Only] Whether this machine type has a shared CPU. See Shared-core machine types for more information.", + "type": "boolean" + }, + "kind": { + "default": "compute#machineType", + "description": "[Output Only] The type of the resource. Always compute#machineType for machine types.", + "type": "string" + }, + "maximumPersistentDisks": { + "description": "[Output Only] Maximum persistent disks allowed.", + "format": "int32", + "type": "integer" + }, + "maximumPersistentDisksSizeGb": { + "description": "[Output Only] Maximum total persistent disks size (GB) allowed.", + "format": "int64", + "type": "string" + }, + "memoryMb": { + "description": "[Output Only] The amount of physical memory available to the instance, defined in MB.", + "format": "int32", + "type": "integer" + }, + "name": { + "description": "[Output Only] Name of the resource.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + }, + "zone": { + "description": "[Output Only] The name of the zone where the machine type resides, such as us-central1-a.", + "type": "string" + } + }, + "type": "object" + }, + "MachineTypeAggregatedList": { + "id": "MachineTypeAggregatedList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "additionalProperties": { + "$ref": "MachineTypesScopedList", + "description": "[Output Only] Name of the scope containing this set of machine types." + }, + "description": "A list of MachineTypesScopedList resources.", + "type": "object" + }, + "kind": { + "default": "compute#machineTypeAggregatedList", + "description": "[Output Only] Type of resource. Always compute#machineTypeAggregatedList for aggregated lists of machine types.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "MachineTypeList": { + "description": "Contains a list of machine types.", + "id": "MachineTypeList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of MachineType resources.", + "items": { + "$ref": "MachineType" + }, + "type": "array" + }, + "kind": { + "default": "compute#machineTypeList", + "description": "[Output Only] Type of resource. Always compute#machineTypeList for lists of machine types.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "MachineTypesScopedList": { + "id": "MachineTypesScopedList", + "properties": { + "machineTypes": { + "description": "[Output Only] List of machine types contained in this scope.", + "items": { + "$ref": "MachineType" + }, + "type": "array" + }, + "warning": { + "description": "[Output Only] An informational warning that appears when the machine types list is empty.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "MaintenancePoliciesList": { + "id": "MaintenancePoliciesList", + "properties": { + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "type": "string" + }, + "items": { + "description": "[Output Only] A list of MaintenancePolicy resources.", + "items": { + "$ref": "MaintenancePolicy" + }, + "type": "array" + }, + "kind": { + "default": "compute#maintenancePoliciesList", + "description": "[Output Only] Type of resource.Always compute#maintenancePoliciesList for listsof maintenancePolicies", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "MaintenancePoliciesScopedList": { + "id": "MaintenancePoliciesScopedList", + "properties": { + "maintenancePolicies": { + "description": "List of maintenancePolicies contained in this scope.", + "items": { + "$ref": "MaintenancePolicy" + }, + "type": "array" + }, + "warning": { + "description": "Informational warning which replaces the list of maintenancePolicies when the list is empty.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "MaintenancePolicy": { + "description": "A maintenance policy for an instance. This specifies what kind of maintenance operations our infrastructure may perform on this instance and when.", + "id": "MaintenancePolicy", + "properties": { + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "description": { + "type": "string" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64", + "type": "string" + }, + "kind": { + "default": "compute#maintenancePolicy", + "description": "[Output Only] Type of the resource. Always compute#maintenance_policies for maintenance policies.", + "type": "string" + }, + "name": { + "annotations": { + "required": [ + "compute.instances.insert" + ] + }, + "description": "The name of the resource, provided by the client when initially creating the resource. The resource name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "region": { + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined fully-qualified URL for this resource.", + "type": "string" + }, + "vmMaintenancePolicy": { + "$ref": "VmMaintenancePolicy", + "description": "Maintenance policy applicable to VMs for infrastructure maintenance." + } + }, + "type": "object" + }, + "MaintenancePolicyAggregatedList": { + "description": "Contains a list of maintenancePolicies.", + "id": "MaintenancePolicyAggregatedList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "additionalProperties": { + "$ref": "MaintenancePoliciesScopedList", + "description": "Name of the scope containing this set of maintenancePolicies." + }, + "description": "A list of MaintenancePolicy resources.", + "type": "object" + }, + "kind": { + "default": "compute#maintenancePolicyAggregatedList", + "description": "Type of resource.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "MaintenanceWindow": { + "description": "A maintenance window for VMs and disks. When set, we restrict our maintenance operations to this window.", + "id": "MaintenanceWindow", + "properties": { + "dailyMaintenanceWindow": { + "$ref": "DailyMaintenanceWindow" + }, + "hourlyMaintenanceWindow": { + "$ref": "HourlyMaintenanceWindow" + } + }, + "type": "object" + }, + "ManagedInstance": { + "description": "Next available tag: 12", + "id": "ManagedInstance", + "properties": { + "currentAction": { + "description": "[Output Only] The current action that the managed instance group has scheduled for the instance. Possible values: \n- NONE The instance is running, and the managed instance group does not have any scheduled actions for this instance. \n- CREATING The managed instance group is creating this instance. If the group fails to create this instance, it will try again until it is successful. \n- CREATING_WITHOUT_RETRIES The managed instance group is attempting to create this instance only once. If the group fails to create this instance, it does not try again and the group's targetSize value is decreased instead. \n- RECREATING The managed instance group is recreating this instance. \n- DELETING The managed instance group is permanently deleting this instance. \n- ABANDONING The managed instance group is abandoning this instance. The instance will be removed from the instance group and from any target pools that are associated with this group. \n- RESTARTING The managed instance group is restarting the instance. \n- REFRESHING The managed instance group is applying configuration changes to the instance without stopping it. For example, the group can update the target pool list for an instance without stopping that instance. \n- VERIFYING The managed instance group has created the instance and it is in the process of being verified.", + "enum": [ + "ABANDONING", + "CREATING", + "CREATING_WITHOUT_RETRIES", + "DELETING", + "NONE", + "RECREATING", + "REFRESHING", + "RESTARTING", + "VERIFYING" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "id": { + "description": "[Output only] The unique identifier for this resource. This field is empty when instance does not exist.", + "format": "uint64", + "type": "string" + }, + "instance": { + "description": "[Output Only] The URL of the instance. The URL can exist even if the instance has not yet been created.", + "type": "string" + }, + "instanceStatus": { + "description": "[Output Only] The status of the instance. This field is empty when the instance does not exist.", + "enum": [ + "PROVISIONING", + "RUNNING", + "STAGING", + "STOPPED", + "STOPPING", + "SUSPENDED", + "SUSPENDING", + "TERMINATED" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "instanceTemplate": { + "description": "[Output Only] The intended template of the instance. This field is empty when current_action is one of { DELETING, ABANDONING }.", + "type": "string" + }, + "lastAttempt": { + "$ref": "ManagedInstanceLastAttempt", + "description": "[Output Only] Information about the last attempt to create or delete the instance." + }, + "override": { + "$ref": "ManagedInstanceOverride", + "description": "[Output Only] Override defined for this instance." + }, + "tag": { + "description": "[Output Only] Tag describing the version.", + "type": "string" + }, + "version": { + "$ref": "ManagedInstanceVersion", + "description": "[Output Only] Intended version of this instance." + } + }, + "type": "object" + }, + "ManagedInstanceLastAttempt": { + "id": "ManagedInstanceLastAttempt", + "properties": { + "errors": { + "description": "[Output Only] Encountered errors during the last attempt to create or delete the instance.", + "properties": { + "errors": { + "description": "[Output Only] The array of errors encountered while processing this operation.", + "items": { + "properties": { + "code": { + "description": "[Output Only] The error type identifier for this error.", + "type": "string" + }, + "location": { + "description": "[Output Only] Indicates the field in the request that caused the error. This property is optional.", + "type": "string" + }, + "message": { + "description": "[Output Only] An optional, human-readable error message.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "ManagedInstanceOverride": { + "description": "Overrides of stateful properties for a given instance", + "id": "ManagedInstanceOverride", + "properties": { + "disks": { + "description": "Disk overrides defined for this instance. According to documentation the maximum number of disks attached to an instance is 128: https://cloud.google.com/compute/docs/disks/ However, compute API defines the limit at 140, so this is what we check.", + "items": { + "$ref": "ManagedInstanceOverrideDiskOverride" + }, + "type": "array" + }, + "metadata": { + "description": "Metadata overrides defined for this instance. TODO(b/69785416) validate the total length is \u003c9 KB", + "items": { + "properties": { + "key": { + "annotations": { + "required": [ + "compute.instances.insert", + "compute.projects.setCommonInstanceMetadata" + ] + }, + "description": "Key for the metadata entry. Keys must conform to the following regexp: [a-zA-Z0-9-_]+, and be less than 128 bytes in length. This is reflected as part of a URL in the metadata server. Additionally, to avoid ambiguity, keys must not conflict with any other metadata keys for the project.", + "pattern": "[a-zA-Z0-9-_]{1,128}", + "type": "string" + }, + "value": { + "annotations": { + "required": [ + "compute.instances.insert", + "compute.projects.setCommonInstanceMetadata" + ] + }, + "description": "Value for the metadata entry. These are free-form strings, and only have meaning as interpreted by the image running in the instance. The only restriction placed on values is that their size must be less than or equal to 262144 bytes (256 KiB).", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "origin": { + "description": "[Output Only] Indicates where does the override come from.", + "enum": [ + "AUTO_GENERATED", + "USER_PROVIDED" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "ManagedInstanceOverrideDiskOverride": { + "id": "ManagedInstanceOverrideDiskOverride", + "properties": { + "deviceName": { + "description": "The name of the device on the VM", + "type": "string" + }, + "mode": { + "description": "The mode in which to attach this disk, either READ_WRITE or READ_ONLY. If not specified, the default is to attach the disk in READ_WRITE mode.", + "enum": [ + "READ_ONLY", + "READ_WRITE" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "source": { + "description": "The disk that is/will be mounted", + "type": "string" + } + }, + "type": "object" + }, + "ManagedInstanceVersion": { + "id": "ManagedInstanceVersion", + "properties": { + "instanceTemplate": { + "description": "[Output Only] The intended template of the instance. This field is empty when current_action is one of { DELETING, ABANDONING }.", + "type": "string" + }, + "name": { + "description": "[Output Only] Name of the version.", + "type": "string" + } + }, + "type": "object" + }, + "Metadata": { + "description": "A metadata key/value entry.", + "id": "Metadata", + "properties": { + "fingerprint": { + "description": "Specifies a fingerprint for this request, which is essentially a hash of the metadata's contents and used for optimistic locking. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update metadata. You must always provide an up-to-date fingerprint hash in order to update or change metadata.", + "format": "byte", + "type": "string" + }, + "items": { + "description": "Array of key/value pairs. The total size of all keys and values must be less than 512 KB.", + "items": { + "properties": { + "key": { + "annotations": { + "required": [ + "compute.instances.insert", + "compute.projects.setCommonInstanceMetadata" + ] + }, + "description": "Key for the metadata entry. Keys must conform to the following regexp: [a-zA-Z0-9-_]+, and be less than 128 bytes in length. This is reflected as part of a URL in the metadata server. Additionally, to avoid ambiguity, keys must not conflict with any other metadata keys for the project.", + "pattern": "[a-zA-Z0-9-_]{1,128}", + "type": "string" + }, + "value": { + "annotations": { + "required": [ + "compute.instances.insert", + "compute.projects.setCommonInstanceMetadata" + ] + }, + "description": "Value for the metadata entry. These are free-form strings, and only have meaning as interpreted by the image running in the instance. The only restriction placed on values is that their size must be less than or equal to 262144 bytes (256 KiB).", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "kind": { + "default": "compute#metadata", + "description": "[Output Only] Type of the resource. Always compute#metadata for metadata.", + "type": "string" + } + }, + "type": "object" + }, + "NamedPort": { + "description": "The named port. For example: .", + "id": "NamedPort", + "properties": { + "name": { + "description": "The name for this named port. The name must be 1-63 characters long, and comply with RFC1035.", + "type": "string" + }, + "port": { + "description": "The port number, which can be a value between 1 and 65535.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "Network": { + "description": "Represents a Network resource. Read Networks and Firewalls for more information. (== resource_for v1.networks ==) (== resource_for beta.networks ==)", + "id": "Network", + "properties": { + "IPv4Range": { + "description": "The range of internal addresses that are legal on this network. This range is a CIDR specification, for example: 192.168.0.0/16. Provided by the client when the network is created.", + "pattern": "[0-9]{1,3}(?:\\.[0-9]{1,3}){3}/[0-9]{1,2}", + "type": "string" + }, + "autoCreateSubnetworks": { + "description": "When set to true, the network is created in \"auto subnet mode\". When set to false, the network is in \"custom subnet mode\".\n\nIn \"auto subnet mode\", a newly created network is assigned the default CIDR of 10.128.0.0/9 and it automatically creates one subnetwork per region.", + "type": "boolean" + }, + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "crossVmEncryption": { + "description": "[Output Only] Type of VM-to-VM traffic encryption for this network.", + "enum": [ + "ENCRYPTED", + "UNENCRYPTED" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "description": { + "description": "An optional description of this resource. Provide this property when you create the resource.", + "type": "string" + }, + "gatewayIPv4": { + "description": "A gateway address for default routing to other networks. This value is read only and is selected by the Google Compute Engine, typically as the first usable address in the IPv4Range.", + "pattern": "[0-9]{1,3}(?:\\.[0-9]{1,3}){3}", + "type": "string" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64", + "type": "string" + }, + "kind": { + "default": "compute#network", + "description": "[Output Only] Type of the resource. Always compute#network for networks.", + "type": "string" + }, + "loadBalancerVmEncryption": { + "description": "[Output Only] Type of LB-to-VM traffic encryption for this network.", + "enum": [ + "ENCRYPTED", + "UNENCRYPTED" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "name": { + "annotations": { + "required": [ + "compute.networks.insert" + ] + }, + "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "peerings": { + "description": "[Output Only] List of network peerings for the resource.", + "items": { + "$ref": "NetworkPeering" + }, + "type": "array" + }, + "routingConfig": { + "$ref": "NetworkRoutingConfig", + "description": "The network-level routing configuration for this network. Used by Cloud Router to determine what type of network-wide routing behavior to enforce." + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + }, + "subnetworks": { + "description": "[Output Only] Server-defined fully-qualified URLs for all subnetworks in this network.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "NetworkEndpoint": { + "description": "The network endpoint.", + "id": "NetworkEndpoint", + "properties": { + "instance": { + "description": "The name for a specific VM instance that the IP address belongs to. This is required for network endpoints of type GCE_VM_IP and GCE_VM_IP_PORT. The instance must be in the same zone of network endpoint group.\n\nThe name must be 1-63 characters long, and comply with RFC1035.", + "type": "string" + }, + "ipAddress": { + "description": "Optional IPv4 address of network endpoint. The IP address must belong to a VM in GCE (either the primary IP or as part of an aliased IP range). If the IP address is not specified, then the primary IP address for the VM instance in the network that the network endpoint group belongs to will be used.", + "type": "string" + }, + "port": { + "description": "Optional port number of network endpoint. If not specified and the NetworkEndpointGroup.network_endpoint_type is GCE_IP_PORT, the defaultPort for the network endpoint group will be used.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "NetworkEndpointGroup": { + "description": "Represents a collection of network endpoints.", + "id": "NetworkEndpointGroup", + "properties": { + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "description": { + "description": "An optional description of this resource. Provide this property when you create the resource.", + "type": "string" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64", + "type": "string" + }, + "kind": { + "default": "compute#networkEndpointGroup", + "description": "[Output Only] Type of the resource. Always compute#networkEndpointGroup for network endpoint group.", + "type": "string" + }, + "loadBalancer": { + "$ref": "NetworkEndpointGroupLbNetworkEndpointGroup", + "description": "This field is only valid when the network endpoint group type is LOAD_BALANCING." + }, + "name": { + "description": "Name of the resource; provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "type": "string" + }, + "networkEndpointType": { + "description": "Type of network endpoints in this network endpoint group. Only supported values for LOAD_BALANCING are GCE_VM_IP or GCE_VM_IP_PORT.", + "enum": [ + "GCE_VM_IP_PORT" + ], + "enumDescriptions": [ + "" + ], + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + }, + "size": { + "description": "[Output only] Number of network endpoints in the network endpoint group.", + "format": "int32", + "type": "integer" + }, + "type": { + "description": "Specify the type of this network endpoint group. Only LOAD_BALANCING is valid for now.", + "enum": [ + "LOAD_BALANCING" + ], + "enumDescriptions": [ + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "NetworkEndpointGroupAggregatedList": { + "id": "NetworkEndpointGroupAggregatedList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "additionalProperties": { + "$ref": "NetworkEndpointGroupsScopedList", + "description": "The name of the scope that contains this set of network endpoint groups." + }, + "description": "A list of NetworkEndpointGroupsScopedList resources.", + "type": "object" + }, + "kind": { + "default": "compute#networkEndpointGroupAggregatedList", + "description": "[Output Only] The resource type, which is always compute#networkEndpointGroupAggregatedList for aggregated lists of network endpoint groups.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "NetworkEndpointGroupLbNetworkEndpointGroup": { + "description": "Load balancing specific fields for network endpoint group of type LOAD_BALANCING.", + "id": "NetworkEndpointGroupLbNetworkEndpointGroup", + "properties": { + "defaultPort": { + "description": "The default port used if the port number is not specified in the network endpoint. If the network endpoint type is GCE_VM_IP, this field must not be specified.", + "format": "int32", + "type": "integer" + }, + "network": { + "description": "The URL of the network to which all network endpoints in the NEG belong. Uses \"default\" project network if unspecified.", + "type": "string" + }, + "subnetwork": { + "description": "Optional URL of the subnetwork to which all network endpoints in the NEG belong.", + "type": "string" + }, + "zone": { + "description": "[Output Only] The URL of the zone where the network endpoint group is located.", + "type": "string" + } + }, + "type": "object" + }, + "NetworkEndpointGroupList": { + "id": "NetworkEndpointGroupList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of NetworkEndpointGroup resources.", + "items": { + "$ref": "NetworkEndpointGroup" + }, + "type": "array" + }, + "kind": { + "default": "compute#networkEndpointGroupList", + "description": "[Output Only] The resource type, which is always compute#networkEndpointGroupList for network endpoint group lists.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "NetworkEndpointGroupsAttachEndpointsRequest": { + "id": "NetworkEndpointGroupsAttachEndpointsRequest", + "properties": { + "networkEndpoints": { + "description": "The list of network endpoints to be attached.", + "items": { + "$ref": "NetworkEndpoint" + }, + "type": "array" + } + }, + "type": "object" + }, + "NetworkEndpointGroupsDetachEndpointsRequest": { + "id": "NetworkEndpointGroupsDetachEndpointsRequest", + "properties": { + "networkEndpoints": { + "description": "The list of network endpoints to be detached.", + "items": { + "$ref": "NetworkEndpoint" + }, + "type": "array" + } + }, + "type": "object" + }, + "NetworkEndpointGroupsListEndpointsRequest": { + "id": "NetworkEndpointGroupsListEndpointsRequest", + "properties": { + "healthStatus": { + "description": "Optional query parameter for showing the health status of each network endpoint. Valid options are SKIP or SHOW. If you don't specifiy this parameter, the health status of network endpoints will not be provided.", + "enum": [ + "SHOW", + "SKIP" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "NetworkEndpointGroupsListNetworkEndpoints": { + "id": "NetworkEndpointGroupsListNetworkEndpoints", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of NetworkEndpointWithHealthStatus resources.", + "items": { + "$ref": "NetworkEndpointWithHealthStatus" + }, + "type": "array" + }, + "kind": { + "default": "compute#networkEndpointGroupsListNetworkEndpoints", + "description": "[Output Only] The resource type, which is always compute#networkEndpointGroupsListNetworkEndpoints for the list of network endpoints in the specified network endpoint group.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "NetworkEndpointGroupsScopedList": { + "id": "NetworkEndpointGroupsScopedList", + "properties": { + "networkEndpointGroups": { + "description": "[Output Only] The list of network endpoint groups that are contained in this scope.", + "items": { + "$ref": "NetworkEndpointGroup" + }, + "type": "array" + }, + "warning": { + "description": "[Output Only] An informational warning that replaces the list of network endpoint groups when the list is empty.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "NetworkEndpointWithHealthStatus": { + "id": "NetworkEndpointWithHealthStatus", + "properties": { + "healths": { + "description": "[Output only] The health status of network endpoint;", + "items": { + "$ref": "HealthStatusForNetworkEndpoint" + }, + "type": "array" + }, + "networkEndpoint": { + "$ref": "NetworkEndpoint", + "description": "[Output only] The network endpoint;" + } + }, + "type": "object" + }, + "NetworkInterface": { + "description": "A network interface resource attached to an instance.", + "id": "NetworkInterface", + "properties": { + "accessConfigs": { + "description": "An array of configurations for this interface. Currently, only one access config, ONE_TO_ONE_NAT, is supported. If there are no accessConfigs specified, then this instance will have no external internet access.", + "items": { + "$ref": "AccessConfig" + }, + "type": "array" + }, + "aliasIpRanges": { + "description": "An array of alias IP ranges for this network interface. Can only be specified for network interfaces on subnet-mode networks.", + "items": { + "$ref": "AliasIpRange" + }, + "type": "array" + }, + "fingerprint": { + "description": "Fingerprint hash of contents stored in this network interface. This field will be ignored when inserting an Instance or adding a NetworkInterface. An up-to-date fingerprint must be provided in order to update the NetworkInterface.", + "format": "byte", + "type": "string" + }, + "kind": { + "default": "compute#networkInterface", + "description": "[Output Only] Type of the resource. Always compute#networkInterface for network interfaces.", + "type": "string" + }, + "name": { + "description": "[Output Only] The name of the network interface, generated by the server. For network devices, these are eth0, eth1, etc.", + "type": "string" + }, + "network": { + "description": "URL of the network resource for this instance. When creating an instance, if neither the network nor the subnetwork is specified, the default network global/networks/default is used; if the network is not specified but the subnetwork is specified, the network is inferred.\n\nThis field is optional when creating a firewall rule. If not specified when creating a firewall rule, the default network global/networks/default is used.\n\nIf you specify this property, you can specify the network as a full or partial URL. For example, the following are all valid URLs: \n- https://www.googleapis.com/compute/v1/projects/project/global/networks/network \n- projects/project/global/networks/network \n- global/networks/default", + "type": "string" + }, + "networkIP": { + "description": "An IPv4 internal network address to assign to the instance for this network interface. If not specified by the user, an unused internal IP is assigned by the system.", + "type": "string" + }, + "subnetwork": { + "description": "The URL of the Subnetwork resource for this instance. If the network resource is in legacy mode, do not provide this property. If the network is in auto subnet mode, providing the subnetwork is optional. If the network is in custom subnet mode, then this field should be specified. If you specify this property, you can specify the subnetwork as a full or partial URL. For example, the following are all valid URLs: \n- https://www.googleapis.com/compute/v1/projects/project/regions/region/subnetworks/subnetwork \n- regions/region/subnetworks/subnetwork", + "type": "string" + } + }, + "type": "object" + }, + "NetworkList": { + "description": "Contains a list of networks.", + "id": "NetworkList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of Network resources.", + "items": { + "$ref": "Network" + }, + "type": "array" + }, + "kind": { + "default": "compute#networkList", + "description": "[Output Only] Type of resource. Always compute#networkList for lists of networks.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "NetworkPeering": { + "description": "A network peering attached to a network resource. The message includes the peering name, peer network, peering state, and a flag indicating whether Google Compute Engine should automatically create routes for the peering.", + "id": "NetworkPeering", + "properties": { + "autoCreateRoutes": { + "description": "Whether full mesh connectivity is created and managed automatically. When it is set to true, Google Compute Engine will automatically create and manage the routes between two networks when the state is ACTIVE. Otherwise, user needs to create routes manually to route packets to peer network.", + "type": "boolean" + }, + "name": { + "description": "Name of this peering. Provided by the client when the peering is created. The name must comply with RFC1035. Specifically, the name must be 1-63 characters long and match regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all the following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "type": "string" + }, + "network": { + "description": "The URL of the peer network. It can be either full URL or partial URL. The peer network may belong to a different project. If the partial URL does not contain project, it is assumed that the peer network is in the same project as the current network.", + "type": "string" + }, + "state": { + "description": "[Output Only] State for the peering.", + "enum": [ + "ACTIVE", + "INACTIVE" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "stateDetails": { + "description": "[Output Only] Details about the current state of the peering.", + "type": "string" + } + }, + "type": "object" + }, + "NetworkRoutingConfig": { + "description": "A routing configuration attached to a network resource. The message includes the list of routers associated with the network, and a flag indicating the type of routing behavior to enforce network-wide.", + "id": "NetworkRoutingConfig", + "properties": { + "routingMode": { + "description": "The network-wide routing mode to use. If set to REGIONAL, this network's cloud routers will only advertise routes with subnetworks of this network in the same region as the router. If set to GLOBAL, this network's cloud routers will advertise routes with all subnetworks of this network, across regions.", + "enum": [ + "GLOBAL", + "REGIONAL" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "NetworksAddPeeringRequest": { + "id": "NetworksAddPeeringRequest", + "properties": { + "autoCreateRoutes": { + "description": "Whether Google Compute Engine manages the routes automatically.", + "type": "boolean" + }, + "name": { + "annotations": { + "required": [ + "compute.networks.addPeering" + ] + }, + "description": "Name of the peering, which should conform to RFC1035.", + "type": "string" + }, + "peerNetwork": { + "description": "URL of the peer network. It can be either full URL or partial URL. The peer network may belong to a different project. If the partial URL does not contain project, it is assumed that the peer network is in the same project as the current network.", + "type": "string" + } + }, + "type": "object" + }, + "NetworksRemovePeeringRequest": { + "id": "NetworksRemovePeeringRequest", + "properties": { + "name": { + "description": "Name of the peering, which should conform to RFC1035.", + "type": "string" + } + }, + "type": "object" + }, + "Operation": { + "description": "An Operation resource, used to manage asynchronous API requests. (== resource_for v1.globalOperations ==) (== resource_for beta.globalOperations ==) (== resource_for v1.regionOperations ==) (== resource_for beta.regionOperations ==) (== resource_for v1.zoneOperations ==) (== resource_for beta.zoneOperations ==)", + "id": "Operation", + "properties": { + "clientOperationId": { + "description": "[Output Only] Reserved for future use.", + "type": "string" + }, + "creationTimestamp": { + "description": "[Deprecated] This field is deprecated.", + "type": "string" + }, + "description": { + "description": "[Output Only] A textual description of the operation, which is set when the operation is created.", + "type": "string" + }, + "endTime": { + "description": "[Output Only] The time that this operation was completed. This value is in RFC3339 text format.", + "type": "string" + }, + "error": { + "description": "[Output Only] If errors are generated during processing of the operation, this field will be populated.", + "properties": { + "errors": { + "description": "[Output Only] The array of errors encountered while processing this operation.", + "items": { + "properties": { + "code": { + "description": "[Output Only] The error type identifier for this error.", + "type": "string" + }, + "location": { + "description": "[Output Only] Indicates the field in the request that caused the error. This property is optional.", + "type": "string" + }, + "message": { + "description": "[Output Only] An optional, human-readable error message.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + } + }, + "type": "object" + }, + "httpErrorMessage": { + "description": "[Output Only] If the operation fails, this field contains the HTTP error message that was returned, such as NOT FOUND.", + "type": "string" + }, + "httpErrorStatusCode": { + "description": "[Output Only] If the operation fails, this field contains the HTTP error status code that was returned. For example, a 404 means the resource was not found.", + "format": "int32", + "type": "integer" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64", + "type": "string" + }, + "insertTime": { + "description": "[Output Only] The time that this operation was requested. This value is in RFC3339 text format.", + "type": "string" + }, + "kind": { + "default": "compute#operation", + "description": "[Output Only] Type of the resource. Always compute#operation for Operation resources.", + "type": "string" + }, + "name": { + "description": "[Output Only] Name of the resource.", + "type": "string" + }, + "operationType": { + "description": "[Output Only] The type of operation, such as insert, update, or delete, and so on.", + "type": "string" + }, + "progress": { + "description": "[Output Only] An optional progress indicator that ranges from 0 to 100. There is no requirement that this be linear or support any granularity of operations. This should not be used to guess when the operation will be complete. This number should monotonically increase as the operation progresses.", + "format": "int32", + "type": "integer" + }, + "region": { + "description": "[Output Only] The URL of the region where the operation resides. Only available when performing regional operations. You must specify this field as part of the HTTP request URL. It is not settable as a field in the request body.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + }, + "startTime": { + "description": "[Output Only] The time that this operation was started by the server. This value is in RFC3339 text format.", + "type": "string" + }, + "status": { + "description": "[Output Only] The status of the operation, which can be one of the following: PENDING, RUNNING, or DONE.", + "enum": [ + "DONE", + "PENDING", + "RUNNING" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, + "statusMessage": { + "description": "[Output Only] An optional textual description of the current status of the operation.", + "type": "string" + }, + "targetId": { + "description": "[Output Only] The unique target ID, which identifies a specific incarnation of the target resource.", + "format": "uint64", + "type": "string" + }, + "targetLink": { + "description": "[Output Only] The URL of the resource that the operation modifies. For operations related to creating a snapshot, this points to the persistent disk that the snapshot was created from.", + "type": "string" + }, + "user": { + "description": "[Output Only] User who requested the operation, for example: user@example.com.", + "type": "string" + }, + "warnings": { + "description": "[Output Only] If warning messages are generated during processing of the operation, this field will be populated.", + "items": { + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "zone": { + "description": "[Output Only] The URL of the zone where the operation resides. Only available when performing per-zone operations. You must specify this field as part of the HTTP request URL. It is not settable as a field in the request body.", + "type": "string" + } + }, + "type": "object" + }, + "OperationAggregatedList": { + "id": "OperationAggregatedList", + "properties": { + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "type": "string" + }, + "items": { + "additionalProperties": { + "$ref": "OperationsScopedList", + "description": "[Output Only] Name of the scope containing this set of operations." + }, + "description": "[Output Only] A map of scoped operation lists.", + "type": "object" + }, + "kind": { + "default": "compute#operationAggregatedList", + "description": "[Output Only] Type of resource. Always compute#operationAggregatedList for aggregated lists of operations.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "OperationList": { + "description": "Contains a list of Operation resources.", + "id": "OperationList", + "properties": { + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "type": "string" + }, + "items": { + "description": "[Output Only] A list of Operation resources.", + "items": { + "$ref": "Operation" + }, + "type": "array" + }, + "kind": { + "default": "compute#operationList", + "description": "[Output Only] Type of resource. Always compute#operations for Operations resource.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "OperationsScopedList": { + "id": "OperationsScopedList", + "properties": { + "operations": { + "description": "[Output Only] List of operations contained in this scope.", + "items": { + "$ref": "Operation" + }, + "type": "array" + }, + "warning": { + "description": "[Output Only] Informational warning which replaces the list of operations when the list is empty.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "PathMatcher": { + "description": "A matcher for the path portion of the URL. The BackendService from the longest-matched rule will serve the URL. If no rule was matched, the default service will be used.", + "id": "PathMatcher", + "properties": { + "defaultService": { + "description": "The full or partial URL to the BackendService resource. This will be used if none of the pathRules defined by this PathMatcher is matched by the URL's path portion. For example, the following are all valid URLs to a BackendService resource: \n- https://www.googleapis.com/compute/v1/projects/project/global/backendServices/backendService \n- compute/v1/projects/project/global/backendServices/backendService \n- global/backendServices/backendService", + "type": "string" + }, + "description": { + "description": "An optional description of this resource. Provide this property when you create the resource.", + "type": "string" + }, + "name": { + "description": "The name to which this PathMatcher is referred by the HostRule.", + "type": "string" + }, + "pathRules": { + "description": "The list of path rules.", + "items": { + "$ref": "PathRule" + }, + "type": "array" + } + }, + "type": "object" + }, + "PathRule": { + "description": "A path-matching rule for a URL. If matched, will use the specified BackendService to handle the traffic arriving at this URL.", + "id": "PathRule", + "properties": { + "paths": { + "description": "The list of path patterns to match. Each must start with / and the only place a * is allowed is at the end following a /. The string fed to the path matcher does not include any text after the first ? or #, and those chars are not allowed here.", + "items": { + "type": "string" + }, + "type": "array" + }, + "service": { + "description": "The URL of the BackendService resource if this rule is matched.", + "type": "string" + } + }, + "type": "object" + }, + "PerInstanceConfig": { + "id": "PerInstanceConfig", + "properties": { + "instance": { + "description": "The URL of the instance. Serves as a merge key during UpdatePerInstanceConfigs operation.", + "type": "string" + }, + "override": { + "$ref": "ManagedInstanceOverride" + } + }, + "type": "object" + }, + "Policy": { + "description": "Defines an Identity and Access Management (IAM) policy. It is used to specify access control policies for Cloud Platform resources.\n\n\n\nA `Policy` consists of a list of `bindings`. A `Binding` binds a list of `members` to a `role`, where the members can be user accounts, Google groups, Google domains, and service accounts. A `role` is a named list of permissions defined by IAM.\n\n**Example**\n\n{ \"bindings\": [ { \"role\": \"roles/owner\", \"members\": [ \"user:mike@example.com\", \"group:admins@example.com\", \"domain:google.com\", \"serviceAccount:my-other-app@appspot.gserviceaccount.com\", ] }, { \"role\": \"roles/viewer\", \"members\": [\"user:sean@example.com\"] } ] }\n\nFor a description of IAM and its features, see the [IAM developer's guide](https://cloud.google.com/iam/docs).", + "id": "Policy", + "properties": { + "auditConfigs": { + "description": "Specifies cloud audit logging configuration for this policy.", + "items": { + "$ref": "AuditConfig" + }, + "type": "array" + }, + "bindings": { + "description": "Associates a list of `members` to a `role`. `bindings` with no members will result in an error.", + "items": { + "$ref": "Binding" + }, + "type": "array" + }, + "etag": { + "description": "`etag` is used for optimistic concurrency control as a way to help prevent simultaneous updates of a policy from overwriting each other. It is strongly suggested that systems make use of the `etag` in the read-modify-write cycle to perform policy updates in order to avoid race conditions: An `etag` is returned in the response to `getIamPolicy`, and systems are expected to put that etag in the request to `setIamPolicy` to ensure that their change will be applied to the same version of the policy.\n\nIf no `etag` is provided in the call to `setIamPolicy`, then the existing policy is overwritten blindly.", + "format": "byte", + "type": "string" + }, + "iamOwned": { + "description": "", + "type": "boolean" + }, + "rules": { + "description": "If more than one rule is specified, the rules are applied in the following manner: - All matching LOG rules are always applied. - If any DENY/DENY_WITH_LOG rule matches, permission is denied. Logging will be applied if one or more matching rule requires logging. - Otherwise, if any ALLOW/ALLOW_WITH_LOG rule matches, permission is granted. Logging will be applied if one or more matching rule requires logging. - Otherwise, if no rule applies, permission is denied.", + "items": { + "$ref": "Rule" + }, + "type": "array" + }, + "version": { + "description": "Deprecated.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "Project": { + "description": "A Project resource. For an overview of projects, see Cloud Platform Resource Hierarchy. (== resource_for v1.projects ==) (== resource_for beta.projects ==)", + "id": "Project", + "properties": { + "commonInstanceMetadata": { + "$ref": "Metadata", + "description": "Metadata key/value pairs available to all instances contained in this project. See Custom metadata for more information." + }, + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "defaultNetworkTier": { + "description": "This signifies the default network tier used for configuring resources of the project and can only take the following values: PREMIUM, STANDARD. Initially the default network tier is PREMIUM.", + "enum": [ + "PREMIUM", + "SELECT", + "STANDARD" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, + "defaultServiceAccount": { + "description": "[Output Only] Default service account used by VMs running in this project.", + "type": "string" + }, + "description": { + "description": "An optional textual description of the resource.", + "type": "string" + }, + "enabledFeatures": { + "description": "Restricted features enabled for use on this project.", + "items": { + "type": "string" + }, + "type": "array" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server. This is not the project ID, and is just a unique ID used by Compute Engine to identify resources.", + "format": "uint64", + "type": "string" + }, + "kind": { + "default": "compute#project", + "description": "[Output Only] Type of the resource. Always compute#project for projects.", + "type": "string" + }, + "name": { + "description": "The project ID. For example: my-example-project. Use the project ID to make requests to Compute Engine.", + "type": "string" + }, + "quotas": { + "description": "[Output Only] Quotas assigned to this project.", + "items": { + "$ref": "Quota" + }, + "type": "array" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + }, + "usageExportLocation": { + "$ref": "UsageExportLocation", + "description": "The naming prefix for daily usage reports and the Google Cloud Storage bucket where they are stored." + }, + "xpnProjectStatus": { + "description": "[Output Only] The role this project has in a shared VPC configuration. Currently only HOST projects are differentiated.", + "enum": [ + "HOST", + "UNSPECIFIED_XPN_PROJECT_STATUS" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "ProjectsDisableXpnResourceRequest": { + "id": "ProjectsDisableXpnResourceRequest", + "properties": { + "xpnResource": { + "$ref": "XpnResourceId", + "description": "Service resource (a.k.a service project) ID." + } + }, + "type": "object" + }, + "ProjectsEnableXpnResourceRequest": { + "id": "ProjectsEnableXpnResourceRequest", + "properties": { + "xpnResource": { + "$ref": "XpnResourceId", + "description": "Service resource (a.k.a service project) ID." + } + }, + "type": "object" + }, + "ProjectsGetXpnResources": { + "id": "ProjectsGetXpnResources", + "properties": { + "kind": { + "default": "compute#projectsGetXpnResources", + "description": "[Output Only] Type of resource. Always compute#projectsGetXpnResources for lists of service resources (a.k.a service projects)", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "resources": { + "description": "Service resources (a.k.a service projects) attached to this project as their shared VPC host.", + "items": { + "$ref": "XpnResourceId" + }, + "type": "array" + } + }, + "type": "object" + }, + "ProjectsListXpnHostsRequest": { + "id": "ProjectsListXpnHostsRequest", + "properties": { + "organization": { + "description": "Optional organization ID managed by Cloud Resource Manager, for which to list shared VPC host projects. If not specified, the organization will be inferred from the project.", + "type": "string" + } + }, + "type": "object" + }, + "ProjectsSetDefaultNetworkTierRequest": { + "id": "ProjectsSetDefaultNetworkTierRequest", + "properties": { + "networkTier": { + "description": "Default network tier to be set.", + "enum": [ + "PREMIUM", + "SELECT", + "STANDARD" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "ProjectsSetDefaultServiceAccountRequest": { + "id": "ProjectsSetDefaultServiceAccountRequest", + "properties": { + "email": { + "description": "Email address of the service account.", + "type": "string" + } + }, + "type": "object" + }, + "Quota": { + "description": "A quotas entry.", + "id": "Quota", + "properties": { + "limit": { + "description": "[Output Only] Quota limit for this metric.", + "format": "double", + "type": "number" + }, + "metric": { + "description": "[Output Only] Name of the quota metric.", + "enum": [ + "AMD_S9300_GPUS", + "AUTOSCALERS", + "BACKEND_BUCKETS", + "BACKEND_SERVICES", + "COMMITMENTS", + "CPUS", + "CPUS_ALL_REGIONS", + "DISKS_TOTAL_GB", + "FIREWALLS", + "FORWARDING_RULES", + "HEALTH_CHECKS", + "IMAGES", + "INSTANCES", + "INSTANCE_GROUPS", + "INSTANCE_GROUP_MANAGERS", + "INSTANCE_TEMPLATES", + "INTERCONNECTS", + "INTERNAL_ADDRESSES", + "IN_USE_ADDRESSES", + "LOCAL_SSD_TOTAL_GB", + "MAINTENANCE_POLICIES", + "NETWORKS", + "NVIDIA_K80_GPUS", + "NVIDIA_P100_GPUS", + "NVIDIA_P100_VWS_GPUS", + "NVIDIA_V100_GPUS", + "PREEMPTIBLE_CPUS", + "PREEMPTIBLE_LOCAL_SSD_GB", + "PREEMPTIBLE_NVIDIA_K80_GPUS", + "PREEMPTIBLE_NVIDIA_P100_GPUS", + "PRIVATE_V6_ACCESS_SUBNETWORKS", + "REGIONAL_AUTOSCALERS", + "REGIONAL_INSTANCE_GROUP_MANAGERS", + "ROUTERS", + "ROUTES", + "SECURITY_POLICIES", + "SECURITY_POLICY_RULES", + "SNAPSHOTS", + "SSD_TOTAL_GB", + "SSL_CERTIFICATES", + "STATIC_ADDRESSES", + "SUBNETWORKS", + "TARGET_HTTPS_PROXIES", + "TARGET_HTTP_PROXIES", + "TARGET_INSTANCES", + "TARGET_POOLS", + "TARGET_SSL_PROXIES", + "TARGET_TCP_PROXIES", + "TARGET_VPN_GATEWAYS", + "URL_MAPS", + "VPN_TUNNELS" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "usage": { + "description": "[Output Only] Current usage of this metric.", + "format": "double", + "type": "number" + } + }, + "type": "object" + }, + "Reference": { + "description": "Represents a reference to a resource.", + "id": "Reference", + "properties": { + "kind": { + "default": "compute#reference", + "description": "[Output Only] Type of the resource. Always compute#reference for references.", + "type": "string" + }, + "referenceType": { + "description": "A description of the reference type with no implied semantics. Possible values include: \n- MEMBER_OF", + "type": "string" + }, + "referrer": { + "description": "URL of the resource which refers to the target.", + "type": "string" + }, + "target": { + "description": "URL of the resource to which this reference points.", + "type": "string" + } + }, + "type": "object" + }, + "Region": { + "description": "Region resource. (== resource_for beta.regions ==) (== resource_for v1.regions ==)", + "id": "Region", + "properties": { + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "deprecated": { + "$ref": "DeprecationStatus", + "description": "[Output Only] The deprecation status associated with this region." + }, + "description": { + "description": "[Output Only] Textual description of the resource.", + "type": "string" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64", + "type": "string" + }, + "kind": { + "default": "compute#region", + "description": "[Output Only] Type of the resource. Always compute#region for regions.", + "type": "string" + }, + "name": { + "description": "[Output Only] Name of the resource.", + "type": "string" + }, + "quotas": { + "description": "[Output Only] Quotas assigned to this region.", + "items": { + "$ref": "Quota" + }, + "type": "array" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + }, + "status": { + "description": "[Output Only] Status of the region, either UP or DOWN.", + "enum": [ + "DOWN", + "UP" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "zones": { + "description": "[Output Only] A list of zones available in this region, in the form of resource URLs.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "RegionAutoscalerList": { + "description": "Contains a list of autoscalers.", + "id": "RegionAutoscalerList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of Autoscaler resources.", + "items": { + "$ref": "Autoscaler" + }, + "type": "array" + }, + "kind": { + "default": "compute#regionAutoscalerList", + "description": "Type of resource.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "RegionDiskTypeList": { + "id": "RegionDiskTypeList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of DiskType resources.", + "items": { + "$ref": "DiskType" + }, + "type": "array" + }, + "kind": { + "default": "compute#regionDiskTypeList", + "description": "[Output Only] Type of resource. Always compute#regionDiskTypeList for region disk types.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "RegionDisksResizeRequest": { + "id": "RegionDisksResizeRequest", + "properties": { + "sizeGb": { + "description": "The new size of the regional persistent disk, which is specified in GB.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "RegionInstanceGroupList": { + "description": "Contains a list of InstanceGroup resources.", + "id": "RegionInstanceGroupList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of InstanceGroup resources.", + "items": { + "$ref": "InstanceGroup" + }, + "type": "array" + }, + "kind": { + "default": "compute#regionInstanceGroupList", + "description": "The resource type.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "RegionInstanceGroupManagerDeleteInstanceConfigReq": { + "description": "RegionInstanceGroupManagers.deletePerInstanceConfigs", + "id": "RegionInstanceGroupManagerDeleteInstanceConfigReq", + "properties": { + "instances": { + "description": "The list of instances for which we want to delete per-instance configs on this managed instance group.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "RegionInstanceGroupManagerList": { + "description": "Contains a list of managed instance groups.", + "id": "RegionInstanceGroupManagerList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of InstanceGroupManager resources.", + "items": { + "$ref": "InstanceGroupManager" + }, + "type": "array" + }, + "kind": { + "default": "compute#regionInstanceGroupManagerList", + "description": "[Output Only] The resource type, which is always compute#instanceGroupManagerList for a list of managed instance groups that exist in th regional scope.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "RegionInstanceGroupManagerUpdateInstanceConfigReq": { + "description": "RegionInstanceGroupManagers.updatePerInstanceConfigs", + "id": "RegionInstanceGroupManagerUpdateInstanceConfigReq", + "properties": { + "perInstanceConfigs": { + "description": "The list of per-instance configs to insert or patch on this managed instance group.", + "items": { + "$ref": "PerInstanceConfig" + }, + "type": "array" + } + }, + "type": "object" + }, + "RegionInstanceGroupManagersAbandonInstancesRequest": { + "id": "RegionInstanceGroupManagersAbandonInstancesRequest", + "properties": { + "instances": { + "description": "The URLs of one or more instances to abandon. This can be a full URL or a partial URL, such as zones/[ZONE]/instances/[INSTANCE_NAME].", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "RegionInstanceGroupManagersApplyUpdatesRequest": { + "description": "InstanceGroupManagers.applyUpdatesToInstances", + "id": "RegionInstanceGroupManagersApplyUpdatesRequest", + "properties": { + "instances": { + "description": "The list of instances for which we want to apply changes on this managed instance group.", + "items": { + "type": "string" + }, + "type": "array" + }, + "maximalAction": { + "description": "The maximal action that should be perfomed on the instances. By default REPLACE.", + "enum": [ + "NONE", + "REFRESH", + "REPLACE", + "RESTART" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ], + "type": "string" + }, + "minimalAction": { + "description": "The minimal action that should be perfomed on the instances. By default NONE.", + "enum": [ + "NONE", + "REFRESH", + "REPLACE", + "RESTART" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "RegionInstanceGroupManagersDeleteInstancesRequest": { + "id": "RegionInstanceGroupManagersDeleteInstancesRequest", + "properties": { + "instances": { + "description": "The URLs of one or more instances to delete. This can be a full URL or a partial URL, such as zones/[ZONE]/instances/[INSTANCE_NAME].", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "RegionInstanceGroupManagersListInstanceConfigsResp": { + "id": "RegionInstanceGroupManagersListInstanceConfigsResp", + "properties": { + "items": { + "description": "[Output Only] The list of PerInstanceConfig.", + "items": { + "$ref": "PerInstanceConfig" + }, + "type": "array" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "RegionInstanceGroupManagersListInstancesResponse": { + "id": "RegionInstanceGroupManagersListInstancesResponse", + "properties": { + "managedInstances": { + "description": "List of managed instances.", + "items": { + "$ref": "ManagedInstance" + }, + "type": "array" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + } + }, + "type": "object" + }, + "RegionInstanceGroupManagersRecreateRequest": { + "id": "RegionInstanceGroupManagersRecreateRequest", + "properties": { + "instances": { + "description": "The URLs of one or more instances to recreate. This can be a full URL or a partial URL, such as zones/[ZONE]/instances/[INSTANCE_NAME].", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "RegionInstanceGroupManagersSetAutoHealingRequest": { + "id": "RegionInstanceGroupManagersSetAutoHealingRequest", + "properties": { + "autoHealingPolicies": { + "items": { + "$ref": "InstanceGroupManagerAutoHealingPolicy" + }, + "type": "array" + } + }, + "type": "object" + }, + "RegionInstanceGroupManagersSetTargetPoolsRequest": { + "id": "RegionInstanceGroupManagersSetTargetPoolsRequest", + "properties": { + "fingerprint": { + "description": "Fingerprint of the target pools information, which is a hash of the contents. This field is used for optimistic locking when you update the target pool entries. This field is optional.", + "format": "byte", + "type": "string" + }, + "targetPools": { + "description": "The URL of all TargetPool resources to which instances in the instanceGroup field are added. The target pools automatically apply to all of the instances in the managed instance group.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "RegionInstanceGroupManagersSetTemplateRequest": { + "id": "RegionInstanceGroupManagersSetTemplateRequest", + "properties": { + "instanceTemplate": { + "description": "URL of the InstanceTemplate resource from which all new instances will be created.", + "type": "string" + } + }, + "type": "object" + }, + "RegionInstanceGroupsListInstances": { + "id": "RegionInstanceGroupsListInstances", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of InstanceWithNamedPorts resources.", + "items": { + "$ref": "InstanceWithNamedPorts" + }, + "type": "array" + }, + "kind": { + "default": "compute#regionInstanceGroupsListInstances", + "description": "The resource type.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "RegionInstanceGroupsListInstancesRequest": { + "id": "RegionInstanceGroupsListInstancesRequest", + "properties": { + "instanceState": { + "description": "Instances in which state should be returned. Valid options are: 'ALL', 'RUNNING'. By default, it lists all instances.", + "enum": [ + "ALL", + "RUNNING" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "portName": { + "description": "Name of port user is interested in. It is optional. If it is set, only information about this ports will be returned. If it is not set, all the named ports will be returned. Always lists all instances.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + } + }, + "type": "object" + }, + "RegionInstanceGroupsSetNamedPortsRequest": { + "id": "RegionInstanceGroupsSetNamedPortsRequest", + "properties": { + "fingerprint": { + "description": "The fingerprint of the named ports information for this instance group. Use this optional property to prevent conflicts when multiple users change the named ports settings concurrently. Obtain the fingerprint with the instanceGroups.get method. Then, include the fingerprint in your request to ensure that you do not overwrite changes that were applied from another concurrent request.", + "format": "byte", + "type": "string" + }, + "namedPorts": { + "description": "The list of named ports to set for this instance group.", + "items": { + "$ref": "NamedPort" + }, + "type": "array" + } + }, + "type": "object" + }, + "RegionList": { + "description": "Contains a list of region resources.", + "id": "RegionList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of Region resources.", + "items": { + "$ref": "Region" + }, + "type": "array" + }, + "kind": { + "default": "compute#regionList", + "description": "[Output Only] Type of resource. Always compute#regionList for lists of regions.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "RegionSetLabelsRequest": { + "id": "RegionSetLabelsRequest", + "properties": { + "labelFingerprint": { + "description": "The fingerprint of the previous set of labels for this resource, used to detect conflicts. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update labels. You must always provide an up-to-date fingerprint hash in order to update or change labels. Make a get() request to the resource to get the latest fingerprint.", + "format": "byte", + "type": "string" + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "The labels to set for this resource.", + "type": "object" + } + }, + "type": "object" + }, + "RegionUrlMapsDeleteRequest": { + "id": "RegionUrlMapsDeleteRequest", + "properties": { + "requestId": { + "description": "begin_interface: MixerMutationRequestBuilder Request ID to support idempotency.", + "type": "string" + } + }, + "type": "object" + }, + "RegionUrlMapsValidateRequest": { + "id": "RegionUrlMapsValidateRequest", + "properties": { + "resource": { + "$ref": "UrlMap", + "description": "Content of the UrlMap to be validated." + } + }, + "type": "object" + }, + "ResourceCommitment": { + "description": "Commitment for a particular resource (a Commitment is composed of one or more of these).", + "id": "ResourceCommitment", + "properties": { + "amount": { + "description": "The amount of the resource purchased (in a type-dependent unit, such as bytes). For vCPUs, this can just be an integer. For memory, this must be provided in MB. Memory must be a multiple of 256 MB, with up to 6.5GB of memory per every vCPU.", + "format": "int64", + "type": "string" + }, + "type": { + "description": "Type of resource for which this commitment applies. Possible values are VCPU and MEMORY", + "enum": [ + "LOCAL_SSD", + "MEMORY", + "UNSPECIFIED", + "VCPU" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "ResourceGroupReference": { + "id": "ResourceGroupReference", + "properties": { + "group": { + "description": "A URI referencing one of the instance groups listed in the backend service.", + "type": "string" + } + }, + "type": "object" + }, + "Route": { + "description": "Represents a Route resource. A route specifies how certain packets should be handled by the network. Routes are associated with instances by tags and the set of routes for a particular instance is called its routing table.\n\nFor each packet leaving an instance, the system searches that instance's routing table for a single best matching route. Routes match packets by destination IP address, preferring smaller or more specific ranges over larger ones. If there is a tie, the system selects the route with the smallest priority value. If there is still a tie, it uses the layer three and four packet headers to select just one of the remaining matching routes. The packet is then forwarded as specified by the nextHop field of the winning route - either to another instance destination, an instance gateway, or a Google Compute Engine-operated gateway.\n\nPackets that do not match any route in the sending instance's routing table are dropped. (== resource_for beta.routes ==) (== resource_for v1.routes ==)", + "id": "Route", + "properties": { + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "description": { + "description": "An optional description of this resource. Provide this property when you create the resource.", + "type": "string" + }, + "destRange": { + "annotations": { + "required": [ + "compute.routes.insert" + ] + }, + "description": "The destination range of outgoing packets that this route applies to. Only IPv4 is supported.", + "type": "string" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64", + "type": "string" + }, + "kind": { + "default": "compute#route", + "description": "[Output Only] Type of this resource. Always compute#routes for Route resources.", + "type": "string" + }, + "name": { + "annotations": { + "required": [ + "compute.routes.insert" + ] + }, + "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "network": { + "annotations": { + "required": [ + "compute.routes.insert" + ] + }, + "description": "Fully-qualified URL of the network that this route applies to.", + "type": "string" + }, + "nextHopGateway": { + "description": "The URL to a gateway that should handle matching packets. You can only specify the internet gateway using a full or partial valid URL: projects/\u003cproject-id\u003e/global/gateways/default-internet-gateway", + "type": "string" + }, + "nextHopInstance": { + "description": "The URL to an instance that should handle matching packets. You can specify this as a full or partial URL. For example:\nhttps://www.googleapis.com/compute/v1/projects/project/zones/zone/instances/", + "type": "string" + }, + "nextHopIp": { + "description": "The network IP address of an instance that should handle matching packets. Only IPv4 is supported.", + "type": "string" + }, + "nextHopNetwork": { + "description": "The URL of the local network if it should handle matching packets.", + "type": "string" + }, + "nextHopPeering": { + "description": "[Output Only] The network peering name that should handle matching packets, which should conform to RFC1035.", + "type": "string" + }, + "nextHopVpnTunnel": { + "description": "The URL to a VpnTunnel that should handle matching packets.", + "type": "string" + }, + "priority": { + "annotations": { + "required": [ + "compute.routes.insert" + ] + }, + "description": "The priority of this route. Priority is used to break ties in cases where there is more than one matching route of equal prefix length. In the case of two routes with equal prefix length, the one with the lowest-numbered priority value wins. Default value is 1000. Valid range is 0 through 65535.", + "format": "uint32", + "type": "integer" + }, + "selfLink": { + "description": "[Output Only] Server-defined fully-qualified URL for this resource.", + "type": "string" + }, + "tags": { + "annotations": { + "required": [ + "compute.routes.insert" + ] + }, + "description": "A list of instance tags to which this route applies.", + "items": { + "type": "string" + }, + "type": "array" + }, + "warnings": { + "description": "[Output Only] If potential misconfigurations are detected for this route, this field will be populated with warning messages.", + "items": { + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + } + }, + "type": "object" + }, + "RouteList": { + "description": "Contains a list of Route resources.", + "id": "RouteList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of Route resources.", + "items": { + "$ref": "Route" + }, + "type": "array" + }, + "kind": { + "default": "compute#routeList", + "description": "Type of resource.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "Router": { + "description": "Router resource.", + "id": "Router", + "properties": { + "bgp": { + "$ref": "RouterBgp", + "description": "BGP information specific to this router." + }, + "bgpPeers": { + "description": "BGP information that needs to be configured into the routing stack to establish the BGP peering. It must specify peer ASN and either interface name, IP, or peer IP. Please refer to RFC4273.", + "items": { + "$ref": "RouterBgpPeer" + }, + "type": "array" + }, + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "description": { + "description": "An optional description of this resource. Provide this property when you create the resource.", + "type": "string" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64", + "type": "string" + }, + "interfaces": { + "description": "Router interfaces. Each interface requires either one linked resource (e.g. linkedVpnTunnel), or IP address and IP address range (e.g. ipRange), or both.", + "items": { + "$ref": "RouterInterface" + }, + "type": "array" + }, + "kind": { + "default": "compute#router", + "description": "[Output Only] Type of resource. Always compute#router for routers.", + "type": "string" + }, + "name": { + "annotations": { + "required": [ + "compute.routers.insert" + ] + }, + "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "nats": { + "description": "List of Nat services created in this router. The maximum number of Nat services within a Router is 3 for Alpha.", + "items": { + "$ref": "RouterNat" + }, + "type": "array" + }, + "network": { + "annotations": { + "required": [ + "compute.routers.insert" + ] + }, + "description": "URI of the network to which this router belongs.", + "type": "string" + }, + "region": { + "description": "[Output Only] URI of the region where the router resides. You must specify this field as part of the HTTP request URL. It is not settable as a field in the request body.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + } + }, + "type": "object" + }, + "RouterAdvertisedIpRange": { + "description": "Description-tagged IP ranges for the router to advertise.", + "id": "RouterAdvertisedIpRange", + "properties": { + "description": { + "description": "User-specified description for the IP range.", + "type": "string" + }, + "range": { + "description": "The IP range to advertise. The value must be a CIDR-formatted string.", + "type": "string" + } + }, + "type": "object" + }, + "RouterAdvertisedPrefix": { + "description": "Description-tagged prefixes for the router to advertise.", + "id": "RouterAdvertisedPrefix", + "properties": { + "description": { + "description": "User-specified description for the prefix.", + "type": "string" + }, + "prefix": { + "description": "The prefix to advertise. The value must be a CIDR-formatted string.", + "type": "string" + } + }, + "type": "object" + }, + "RouterAggregatedList": { + "description": "Contains a list of routers.", + "id": "RouterAggregatedList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "additionalProperties": { + "$ref": "RoutersScopedList", + "description": "Name of the scope containing this set of routers." + }, + "description": "A list of Router resources.", + "type": "object" + }, + "kind": { + "default": "compute#routerAggregatedList", + "description": "Type of resource.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "RouterBgp": { + "id": "RouterBgp", + "properties": { + "advertiseMode": { + "description": "User-specified flag to indicate which mode to use for advertisement.", + "enum": [ + "CUSTOM", + "DEFAULT" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "advertisedGroups": { + "description": "User-specified list of prefix groups to advertise in custom mode. This field can only be populated if advertise_mode is CUSTOM and is advertised to all peers of the router. These groups will be advertised in addition to any specified prefixes. Leave this field blank to advertise no custom groups.", + "items": { + "enum": [ + "ALL_SUBNETS" + ], + "enumDescriptions": [ + "" + ], + "type": "string" + }, + "type": "array" + }, + "advertisedIpRanges": { + "description": "User-specified list of individual IP ranges to advertise in custom mode. This field can only be populated if advertise_mode is CUSTOM and is advertised to all peers of the router. These IP ranges will be advertised in addition to any specified groups. Leave this field blank to advertise no custom IP ranges.", + "items": { + "$ref": "RouterAdvertisedIpRange" + }, + "type": "array" + }, + "advertisedPrefixs": { + "description": "User-specified list of individual prefixes to advertise in custom mode. This field can only be populated if advertise_mode is CUSTOM and is advertised to all peers of the router. These prefixes will be advertised in addition to any specified groups. Leave this field blank to advertise no custom prefixes.", + "items": { + "$ref": "RouterAdvertisedPrefix" + }, + "type": "array" + }, + "asn": { + "description": "Local BGP Autonomous System Number (ASN). Must be an RFC6996 private ASN, either 16-bit or 32-bit. The value will be fixed for this router resource. All VPN tunnels that link to this router will have the same local ASN.", + "format": "uint32", + "type": "integer" + } + }, + "type": "object" + }, + "RouterBgpPeer": { + "id": "RouterBgpPeer", + "properties": { + "advertiseMode": { + "description": "User-specified flag to indicate which mode to use for advertisement.", + "enum": [ + "CUSTOM", + "DEFAULT" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "advertisedGroups": { + "description": "User-specified list of prefix groups to advertise in custom mode. This field can only be populated if advertise_mode is CUSTOM and overrides the list defined for the router (in Bgp message). These groups will be advertised in addition to any specified prefixes. Leave this field blank to advertise no custom groups.", + "items": { + "enum": [ + "ALL_SUBNETS" + ], + "enumDescriptions": [ + "" + ], + "type": "string" + }, + "type": "array" + }, + "advertisedIpRanges": { + "description": "User-specified list of individual IP ranges to advertise in custom mode. This field can only be populated if advertise_mode is CUSTOM and overrides the list defined for the router (in Bgp message). These IP ranges will be advertised in addition to any specified groups. Leave this field blank to advertise no custom IP ranges.", + "items": { + "$ref": "RouterAdvertisedIpRange" + }, + "type": "array" + }, + "advertisedPrefixs": { + "description": "User-specified list of individual prefixes to advertise in custom mode. This field can only be populated if advertise_mode is CUSTOM and overrides the list defined for the router (in Bgp message). These prefixes will be advertised in addition to any specified groups. Leave this field blank to advertise no custom prefixes.", + "items": { + "$ref": "RouterAdvertisedPrefix" + }, + "type": "array" + }, + "advertisedRoutePriority": { + "description": "The priority of routes advertised to this BGP peer. In the case where there is more than one matching route of maximum length, the routes with lowest priority value win.", + "format": "uint32", + "type": "integer" + }, + "interfaceName": { + "description": "Name of the interface the BGP peer is associated with.", + "type": "string" + }, + "ipAddress": { + "description": "IP address of the interface inside Google Cloud Platform. Only IPv4 is supported.", + "type": "string" + }, + "managementType": { + "description": "[Output Only] Type of how the resource/configuration of the BGP peer is managed. MANAGED_BY_USER is the default value; MANAGED_BY_ATTACHMENT represents an BGP peer that is automatically created for PARTNER interconnectAttachment, Google will automatically create/delete this type of BGP peer when the PARTNER interconnectAttachment is created/deleted.", + "enum": [ + "MANAGED_BY_ATTACHMENT", + "MANAGED_BY_USER" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "name": { + "description": "Name of this BGP peer. The name must be 1-63 characters long and comply with RFC1035.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "peerAsn": { + "description": "Peer BGP Autonomous System Number (ASN). For VPN use case, this value can be different for every tunnel.", + "format": "uint32", + "type": "integer" + }, + "peerIpAddress": { + "description": "IP address of the BGP interface outside Google cloud. Only IPv4 is supported.", + "type": "string" + } + }, + "type": "object" + }, + "RouterInterface": { + "id": "RouterInterface", + "properties": { + "ipRange": { + "description": "IP address and range of the interface. The IP range must be in the RFC3927 link-local IP space. The value must be a CIDR-formatted string, for example: 169.254.0.1/30. NOTE: Do not truncate the address as it represents the IP address of the interface.", + "type": "string" + }, + "linkedInterconnectAttachment": { + "description": "URI of the linked interconnect attachment. It must be in the same region as the router. Each interface can have at most one linked resource and it could either be a VPN Tunnel or an interconnect attachment.", + "type": "string" + }, + "linkedVpnTunnel": { + "description": "URI of the linked VPN tunnel. It must be in the same region as the router. Each interface can have at most one linked resource and it could either be a VPN Tunnel or an interconnect attachment.", + "type": "string" + }, + "managementType": { + "description": "[Output Only] Type of how the resource/configuration of the interface is managed. MANAGED_BY_USER is the default value; MANAGED_BY_ATTACHMENT represents an interface that is automatically created for PARTNER type interconnectAttachment, Google will automatically create/update/delete this type of interface when the PARTNER interconnectAttachment is created/provisioned/deleted.", + "enum": [ + "MANAGED_BY_ATTACHMENT", + "MANAGED_BY_USER" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "name": { + "description": "Name of this interface entry. The name must be 1-63 characters long and comply with RFC1035.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + } + }, + "type": "object" + }, + "RouterList": { + "description": "Contains a list of Router resources.", + "id": "RouterList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of Router resources.", + "items": { + "$ref": "Router" + }, + "type": "array" + }, + "kind": { + "default": "compute#routerList", + "description": "[Output Only] Type of resource. Always compute#router for routers.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "RouterNat": { + "description": "Represents a Nat resource. It enables the VMs within the specified subnetworks to access Internet without external IP addresses. It specifies a list of subnetworks (and the ranges within) that want to use NAT. Customers can also provide the external IPs that would be used for NAT. GCP would auto-allocate ephemeral IPs if no external IPs are provided.", + "id": "RouterNat", + "properties": { + "autoAllocatedNatIps": { + "description": "[Output Only] List of IPs allocated automatically by GCP for this Nat service. They will be raw IP strings like \"179.12.26.133\". They are ephemeral IPs allocated from the IP blocks managed by the NAT manager. This list can grow and shrink based on the number of VMs configured to use NAT.", + "items": { + "type": "string" + }, + "type": "array" + }, + "name": { + "description": "Unique name of this Nat service. The name must be 1-63 characters long and comply with RFC1035.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "natIpAllocateOption": { + "description": "Specify the NatIpAllocateOption. If it is AUTO_ONLY, then nat_ip should be empty.", + "enum": [ + "AUTO_ONLY", + "MANUAL_ONLY" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "natIps": { + "description": "List of URLs of the IP resources used for this Nat service. These IPs must be valid static external IP addresses assigned to the project. max_length is subject to change post alpha.", + "items": { + "type": "string" + }, + "type": "array" + }, + "sourceSubnetworkIpRangesToNat": { + "description": "Specify the Nat option. If this field contains ALL_SUBNETWORKS_ALL_IP_RANGES or ALL_SUBNETWORKS_ALL_PRIMARY_IP_RANGES, then there should not be any other Router.Nat section in any Router for this network in this region.", + "enum": [ + "ALL_SUBNETWORKS_ALL_IP_RANGES", + "ALL_SUBNETWORKS_ALL_PRIMARY_IP_RANGES", + "LIST_OF_SUBNETWORKS" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, + "subnetworks": { + "description": "List of Subnetwork resources whose traffic should be translated by NAT Gateway. It is used only when LIST_OF_SUBNETWORKS is selected for the SubnetworkIpRangeToNatOption above.", + "items": { + "$ref": "RouterNatSubnetworkToNat" + }, + "type": "array" + } + }, + "type": "object" + }, + "RouterNatSubnetworkToNat": { + "description": "Defines the IP ranges that want to use NAT for a subnetwork.", + "id": "RouterNatSubnetworkToNat", + "properties": { + "name": { + "description": "URL for the subnetwork resource to use NAT.", + "type": "string" + }, + "secondaryIpRangeNames": { + "description": "List of the secondary ranges of the Subnetwork that are allowed to use NAT. This can be populated only if \"LIST_OF_SECONDARY_IP_RANGES\" is one of the values in source_ip_ranges_to_nat.", + "items": { + "type": "string" + }, + "type": "array" + }, + "sourceIpRangesToNats": { + "description": "Specify the options for NAT ranges in the Subnetwork. All usages of single value are valid except NAT_IP_RANGE_OPTION_UNSPECIFIED. The only valid option with multiple values is: [\"PRIMARY_IP_RANGE\", \"LIST_OF_SECONDARY_IP_RANGES\"] Default: [ALL_IP_RANGES]", + "items": { + "enum": [ + "ALL_IP_RANGES", + "LIST_OF_SECONDARY_IP_RANGES", + "PRIMARY_IP_RANGE" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "RouterStatus": { + "id": "RouterStatus", + "properties": { + "bestRoutes": { + "description": "Best routes for this router's network.", + "items": { + "$ref": "Route" + }, + "type": "array" + }, + "bestRoutesForRouter": { + "description": "Best routes learned by this router.", + "items": { + "$ref": "Route" + }, + "type": "array" + }, + "bgpPeerStatus": { + "items": { + "$ref": "RouterStatusBgpPeerStatus" + }, + "type": "array" + }, + "natStatus": { + "items": { + "$ref": "RouterStatusNatStatus" + }, + "type": "array" + }, + "network": { + "description": "URI of the network to which this router belongs.", + "type": "string" + } + }, + "type": "object" + }, + "RouterStatusBgpPeerStatus": { + "id": "RouterStatusBgpPeerStatus", + "properties": { + "advertisedRoutes": { + "description": "Routes that were advertised to the remote BGP peer", + "items": { + "$ref": "Route" + }, + "type": "array" + }, + "ipAddress": { + "description": "IP address of the local BGP interface.", + "type": "string" + }, + "linkedVpnTunnel": { + "description": "URL of the VPN tunnel that this BGP peer controls.", + "type": "string" + }, + "name": { + "description": "Name of this BGP peer. Unique within the Routers resource.", + "type": "string" + }, + "numLearnedRoutes": { + "description": "Number of routes learned from the remote BGP Peer.", + "format": "uint32", + "type": "integer" + }, + "peerIpAddress": { + "description": "IP address of the remote BGP interface.", + "type": "string" + }, + "state": { + "description": "BGP state as specified in RFC1771.", + "type": "string" + }, + "status": { + "description": "Status of the BGP peer: {UP, DOWN}", + "enum": [ + "DOWN", + "UNKNOWN", + "UP" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, + "uptime": { + "description": "Time this session has been up. Format: 14 years, 51 weeks, 6 days, 23 hours, 59 minutes, 59 seconds", + "type": "string" + }, + "uptimeSeconds": { + "description": "Time this session has been up, in seconds. Format: 145", + "type": "string" + } + }, + "type": "object" + }, + "RouterStatusNatStatus": { + "description": "Status of a NAT contained in this router.", + "id": "RouterStatusNatStatus", + "properties": { + "autoAllocatedNatIps": { + "description": "List of IPs auto-allocated for NAT. Example: [\"1.1.1.1\", \"129.2.16.89\"]", + "items": { + "type": "string" + }, + "type": "array" + }, + "minExtraNatIpsNeeded": { + "description": "The number of extra IPs to allocate. This will be greater than 0 only if user-specified IPs are NOT enough to allow all configured VMs to use NAT. This value is meaningful only when auto-allocation of NAT IPs is *not* used.", + "format": "int32", + "type": "integer" + }, + "name": { + "description": "Unique name of this NAT.", + "type": "string" + }, + "numVmEndpointsWithNatMappings": { + "description": "Number of VM endpoints (i.e., Nics) that can use NAT.", + "format": "int32", + "type": "integer" + }, + "userAllocatedNatIpResources": { + "description": "List of fully qualified URLs of reserved IP address resources.", + "items": { + "type": "string" + }, + "type": "array" + }, + "userAllocatedNatIps": { + "description": "List of IPs user-allocated for NAT. They will be raw IP strings like \"179.12.26.133\".", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "RouterStatusResponse": { + "id": "RouterStatusResponse", + "properties": { + "kind": { + "default": "compute#routerStatusResponse", + "description": "Type of resource.", + "type": "string" + }, + "result": { + "$ref": "RouterStatus" + } + }, + "type": "object" + }, + "RoutersPreviewResponse": { + "id": "RoutersPreviewResponse", + "properties": { + "resource": { + "$ref": "Router", + "description": "Preview of given router." + } + }, + "type": "object" + }, + "RoutersScopedList": { + "id": "RoutersScopedList", + "properties": { + "routers": { + "description": "List of routers contained in this scope.", + "items": { + "$ref": "Router" + }, + "type": "array" + }, + "warning": { + "description": "Informational warning which replaces the list of routers when the list is empty.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "Rule": { + "description": "A rule to be applied in a Policy.", + "id": "Rule", + "properties": { + "action": { + "description": "Required", + "enum": [ + "ALLOW", + "ALLOW_WITH_LOG", + "DENY", + "DENY_WITH_LOG", + "LOG", + "NO_ACTION" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "conditions": { + "description": "Additional restrictions that must be met. All conditions must pass for the rule to match.", + "items": { + "$ref": "Condition" + }, + "type": "array" + }, + "description": { + "description": "Human-readable description of the rule.", + "type": "string" + }, + "ins": { + "description": "If one or more 'in' clauses are specified, the rule matches if the PRINCIPAL/AUTHORITY_SELECTOR is in at least one of these entries.", + "items": { + "type": "string" + }, + "type": "array" + }, + "logConfigs": { + "description": "The config returned to callers of tech.iam.IAM.CheckPolicy for any entries that match the LOG action.", + "items": { + "$ref": "LogConfig" + }, + "type": "array" + }, + "notIns": { + "description": "If one or more 'not_in' clauses are specified, the rule matches if the PRINCIPAL/AUTHORITY_SELECTOR is in none of the entries.", + "items": { + "type": "string" + }, + "type": "array" + }, + "permissions": { + "description": "A permission is a string of form '..' (e.g., 'storage.buckets.list'). A value of '*' matches all permissions, and a verb part of '*' (e.g., 'storage.buckets.*') matches all verbs.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "SSLHealthCheck": { + "id": "SSLHealthCheck", + "properties": { + "port": { + "description": "The TCP port number for the health check request. The default value is 443. Valid values are 1 through 65535.", + "format": "int32", + "type": "integer" + }, + "portName": { + "description": "Port name as defined in InstanceGroup#NamedPort#name. If both port and port_name are defined, port takes precedence.", + "type": "string" + }, + "portSpecification": { + "description": "Specifies how port is selected for health checking, can be one of following values:\nUSE_FIXED_PORT: The port number in\nport\nis used for health checking.\nUSE_NAMED_PORT: The\nportName\nis used for health checking.\nUSE_SERVING_PORT: For NetworkEndpointGroup, the port specified for each network endpoint is used for health checking. For other backends, the port or named port specified in the Backend Service is used for health checking.\n\n\nIf not specified, SSL health check follows behavior specified in\nport\nand\nportName\nfields.", + "enum": [ + "USE_FIXED_PORT", + "USE_NAMED_PORT", + "USE_SERVING_PORT" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, + "proxyHeader": { + "description": "Specifies the type of proxy header to append before sending data to the backend, either NONE or PROXY_V1. The default is NONE.", + "enum": [ + "NONE", + "PROXY_V1" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "request": { + "description": "The application data to send once the SSL connection has been established (default value is empty). If both request and response are empty, the connection establishment alone will indicate health. The request data can only be ASCII.", + "type": "string" + }, + "response": { + "description": "The bytes to match against the beginning of the response data. If left empty (the default value), any response will indicate health. The response data can only be ASCII.", + "type": "string" + } + }, + "type": "object" + }, + "Scheduling": { + "description": "Sets the scheduling options for an Instance.", + "id": "Scheduling", + "properties": { + "automaticRestart": { + "description": "Specifies whether the instance should be automatically restarted if it is terminated by Compute Engine (not terminated by a user). You can only set the automatic restart option for standard instances. Preemptible instances cannot be automatically restarted.\n\nBy default, this is set to true so an instance is automatically restarted if it is terminated by Compute Engine.", + "type": "boolean" + }, + "nodeAffinities": { + "description": "A set of node affinity and anti-affinity.", + "items": { + "$ref": "SchedulingNodeAffinity" + }, + "type": "array" + }, + "onHostMaintenance": { + "description": "Defines the maintenance behavior for this instance. For standard instances, the default behavior is MIGRATE. For preemptible instances, the default and only possible behavior is TERMINATE. For more information, see Setting Instance Scheduling Options.", + "enum": [ + "MIGRATE", + "TERMINATE" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "preemptible": { + "description": "Defines whether the instance is preemptible. This can only be set during instance creation, it cannot be set or changed after the instance has been created.", + "type": "boolean" + } + }, + "type": "object" + }, + "SchedulingNodeAffinity": { + "description": "Node Affinity: the configuration of desired nodes onto which this Instance could be scheduled.", + "id": "SchedulingNodeAffinity", + "properties": { + "key": { + "description": "Corresponds to the label key of Node resource.", + "type": "string" + }, + "operator": { + "description": "Defines the operation of node selection.", + "enum": [ + "IN", + "NOT_IN", + "OPERATOR_UNSPECIFIED" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, + "values": { + "description": "Corresponds to the label values of Node resource.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "SecurityPolicy": { + "description": "A security policy is comprised of one or more rules. It can also be associated with one or more 'targets'.", + "id": "SecurityPolicy", + "properties": { + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "description": { + "description": "An optional description of this resource. Provide this property when you create the resource.", + "type": "string" + }, + "fingerprint": { + "description": "Specifies a fingerprint for this resource, which is essentially a hash of the metadata's contents and used for optimistic locking. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update metadata. You must always provide an up-to-date fingerprint hash in order to update or change metadata.\n\nTo see the latest fingerprint, make get() request to the security policy.", + "format": "byte", + "type": "string" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64", + "type": "string" + }, + "kind": { + "default": "compute#securityPolicy", + "description": "[Output only] Type of the resource. Always compute#securityPolicyfor security policies", + "type": "string" + }, + "name": { + "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "rules": { + "description": "List of rules that belong to this policy. There must always be a default rule (rule with priority 2147483647 and match \"*\"). If no rules are provided when creating a security policy, a default rule with action \"allow\" will be added.", + "items": { + "$ref": "SecurityPolicyRule" + }, + "type": "array" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + } + }, + "type": "object" + }, + "SecurityPolicyList": { + "id": "SecurityPolicyList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of SecurityPolicy resources.", + "items": { + "$ref": "SecurityPolicy" + }, + "type": "array" + }, + "kind": { + "default": "compute#securityPolicyList", + "description": "[Output Only] Type of resource. Always compute#securityPolicyList for listsof securityPolicies", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "SecurityPolicyReference": { + "id": "SecurityPolicyReference", + "properties": { + "securityPolicy": { + "type": "string" + } + }, + "type": "object" + }, + "SecurityPolicyRule": { + "description": "Represents a rule that describes one or more match conditions along with the action to be taken when traffic matches this condition (allow or deny).", + "id": "SecurityPolicyRule", + "properties": { + "action": { + "description": "The Action to preform when the client connection triggers the rule. Can currently be either \"allow\" or \"deny()\" where valid values for status are 403, 404, and 502.", + "type": "string" + }, + "description": { + "description": "An optional description of this resource. Provide this property when you create the resource.", + "type": "string" + }, + "kind": { + "default": "compute#securityPolicyRule", + "description": "[Output only] Type of the resource. Always compute#securityPolicyRule for security policy rules", + "type": "string" + }, + "match": { + "$ref": "SecurityPolicyRuleMatcher", + "description": "A match condition that incoming traffic is evaluated against. If it evaluates to true, the corresponding ?action? is enforced." + }, + "preview": { + "description": "If set to true, the specified action is not enforced.", + "type": "boolean" + }, + "priority": { + "description": "An integer indicating the priority of a rule in the list. The priority must be a positive value between 0 and 2147483647. Rules are evaluated in the increasing order of priority.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "SecurityPolicyRuleMatcher": { + "description": "Represents a match condition that incoming traffic is evaluated against. Exactly one field must be specified.", + "id": "SecurityPolicyRuleMatcher", + "properties": { + "config": { + "$ref": "SecurityPolicyRuleMatcherConfig", + "description": "The configuration options available when specifying versioned_expr. This field must be specified if versioned_expr is specified and cannot be specified if versioned_expr is not specified." + }, + "expr": { + "$ref": "Expr", + "description": "User defined CEVAL expression. A CEVAL expression is used to specify match criteria such as origin.ip, source.region_code and contents in the request header." + }, + "srcIpRanges": { + "description": "CIDR IP address range.", + "items": { + "type": "string" + }, + "type": "array" + }, + "versionedExpr": { + "description": "Preconfigured versioned expression. If this field is specified, config must also be specified. Available preconfigured expressions along with their requirements are: SRC_IPS_V1 - must specify the corresponding src_ip_range field in config.", + "enum": [ + "SRC_IPS_V1", + "VERSIONED_EXPR_UNSPECIFIED" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "SecurityPolicyRuleMatcherConfig": { + "id": "SecurityPolicyRuleMatcherConfig", + "properties": { + "srcIpRanges": { + "description": "CIDR IP address range.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "SerialPortOutput": { + "description": "An instance's serial console output.", + "id": "SerialPortOutput", + "properties": { + "contents": { + "description": "[Output Only] The contents of the console output.", + "type": "string" + }, + "kind": { + "default": "compute#serialPortOutput", + "description": "[Output Only] Type of the resource. Always compute#serialPortOutput for serial port output.", + "type": "string" + }, + "next": { + "description": "[Output Only] The position of the next byte of content from the serial console output. Use this value in the next request as the start parameter.", + "format": "int64", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "start": { + "description": "The starting byte position of the output that was returned. This should match the start parameter sent with the request. If the serial console output exceeds the size of the buffer, older output will be overwritten by newer content and the start values will be mismatched.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "ServiceAccount": { + "description": "A service account.", + "id": "ServiceAccount", + "properties": { + "email": { + "description": "Email address of the service account.", + "type": "string" + }, + "scopes": { + "description": "The list of scopes to be made available for this service account.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "ShieldedVmConfig": { + "description": "A set of Shielded VM options.", + "id": "ShieldedVmConfig", + "properties": { + "enableIntegrityMonitoring": { + "description": "Defines whether the instance should have integrity monitoring enabled.", + "type": "boolean" + }, + "enableSecureBoot": { + "description": "Defines whether the instance should have secure boot enabled.", + "type": "boolean" + }, + "enableVtpm": { + "description": "Defines whether the instance should have the TPM enabled.", + "type": "boolean" + } + }, + "type": "object" + }, + "ShieldedVmIntegrityPolicy": { + "description": "The policy describes how boot integrity measurements are evaluated.", + "id": "ShieldedVmIntegrityPolicy", + "properties": { + "updateAutoLearnPolicy": { + "description": "Triggers an auto relearn event: the integrity monitoring module copies existing guest measurements to the baseline.", + "type": "boolean" + } + }, + "type": "object" + }, + "SignedUrlKey": { + "description": "Represents a customer-supplied Signing Key used by Cloud CDN Signed URLs", + "id": "SignedUrlKey", + "properties": { + "keyName": { + "description": "Name of the key. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "keyValue": { + "description": "128-bit key value used for signing the URL. The key value must be a valid RFC 4648 Section 5 base64url encoded string.", + "type": "string" + } + }, + "type": "object" + }, + "Snapshot": { + "description": "A persistent disk snapshot resource. (== resource_for beta.snapshots ==) (== resource_for v1.snapshots ==)", + "id": "Snapshot", + "properties": { + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "description": { + "description": "An optional description of this resource. Provide this property when you create the resource.", + "type": "string" + }, + "diskSizeGb": { + "description": "[Output Only] Size of the snapshot, specified in GB.", + "format": "int64", + "type": "string" + }, + "guestOsFeatures": { + "description": "[Output Only] A list of features to enable on the guest operating system. Applicable only for bootable images. Read Enabling guest operating system features to see a list of available options.", + "items": { + "$ref": "GuestOsFeature" + }, + "type": "array" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64", + "type": "string" + }, + "kind": { + "default": "compute#snapshot", + "description": "[Output Only] Type of the resource. Always compute#snapshot for Snapshot resources.", + "type": "string" + }, + "labelFingerprint": { + "description": "A fingerprint for the labels being applied to this snapshot, which is essentially a hash of the labels set used for optimistic locking. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update labels. You must always provide an up-to-date fingerprint hash in order to update or change labels.\n\nTo see the latest fingerprint, make a get() request to retrieve a snapshot.", + "format": "byte", + "type": "string" + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Labels to apply to this snapshot. These can be later modified by the setLabels method. Label values may be empty.", + "type": "object" + }, + "licenseCodes": { + "description": "Integer license codes indicating which licenses are attached to this snapshot.", + "items": { + "format": "int64", + "type": "string" + }, + "type": "array" + }, + "licenses": { + "description": "[Output Only] A list of public visible licenses that apply to this snapshot. This can be because the original image had licenses attached (such as a Windows image).", + "items": { + "type": "string" + }, + "type": "array" + }, + "name": { + "description": "Name of the resource; provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + }, + "snapshotEncryptionKey": { + "$ref": "CustomerEncryptionKey", + "description": "Encrypts the snapshot using a customer-supplied encryption key.\n\nAfter you encrypt a snapshot using a customer-supplied key, you must provide the same key if you use the image later For example, you must provide the encryption key when you create a disk from the encrypted snapshot in a future request.\n\nCustomer-supplied encryption keys do not protect access to metadata of the disk.\n\nIf you do not provide an encryption key when creating the snapshot, then the snapshot will be encrypted using an automatically generated key and you do not need to provide a key to use the snapshot later." + }, + "sourceDisk": { + "description": "[Output Only] The source disk used to create this snapshot.", + "type": "string" + }, + "sourceDiskEncryptionKey": { + "$ref": "CustomerEncryptionKey", + "description": "The customer-supplied encryption key of the source disk. Required if the source disk is protected by a customer-supplied encryption key." + }, + "sourceDiskId": { + "description": "[Output Only] The ID value of the disk used to create this snapshot. This value may be used to determine whether the snapshot was taken from the current or a previous instance of a given disk name.", + "type": "string" + }, + "status": { + "description": "[Output Only] The status of the snapshot. This can be CREATING, DELETING, FAILED, READY, or UPLOADING.", + "enum": [ + "CREATING", + "DELETING", + "FAILED", + "READY", + "UPLOADING" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "storageBytes": { + "description": "[Output Only] A size of the storage used by the snapshot. As snapshots share storage, this number is expected to change with snapshot creation/deletion.", + "format": "int64", + "type": "string" + }, + "storageBytesStatus": { + "description": "[Output Only] An indicator whether storageBytes is in a stable state or it is being adjusted as a result of shared storage reallocation. This status can either be UPDATING, meaning the size of the snapshot is being updated, or UP_TO_DATE, meaning the size of the snapshot is up-to-date.", + "enum": [ + "UPDATING", + "UP_TO_DATE" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "storageLocations": { + "description": "GCS bucket storage location of the snapshot (regional or multi-regional).", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "SnapshotList": { + "description": "Contains a list of Snapshot resources.", + "id": "SnapshotList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of Snapshot resources.", + "items": { + "$ref": "Snapshot" + }, + "type": "array" + }, + "kind": { + "default": "compute#snapshotList", + "description": "Type of resource.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "SourceInstanceParams": { + "description": "A specification of the parameters to use when creating the instance template from a source instance.", + "id": "SourceInstanceParams", + "properties": { + "diskConfigs": { + "description": "Attached disks configuration. If not provided, defaults are applied: For boot disk and any other R/W disks, new custom images will be created from each disk. For read-only disks, they will be attached in read-only mode. Local SSD disks will be created as blank volumes.", + "items": { + "$ref": "DiskInstantiationConfig" + }, + "type": "array" + } + }, + "type": "object" + }, + "SslCertificate": { + "description": "An SslCertificate resource. This resource provides a mechanism to upload an SSL key and certificate to the load balancer to serve secure connections from the user. (== resource_for beta.sslCertificates ==) (== resource_for v1.sslCertificates ==)", + "id": "SslCertificate", + "properties": { + "certificate": { + "description": "A local certificate file. The certificate must be in PEM format. The certificate chain must be no greater than 5 certs long. The chain must include at least one intermediate cert.", + "type": "string" + }, + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "description": { + "description": "An optional description of this resource. Provide this property when you create the resource.", + "type": "string" + }, + "expireTime": { + "description": "[Output Only] Expire time of the certificate. RFC3339", + "type": "string" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64", + "type": "string" + }, + "kind": { + "default": "compute#sslCertificate", + "description": "[Output Only] Type of the resource. Always compute#sslCertificate for SSL certificates.", + "type": "string" + }, + "managed": { + "$ref": "SslCertificateManagedSslCertificate", + "description": "Configuration and status of a managed SSL certificate." + }, + "name": { + "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "privateKey": { + "description": "A write-only private key in PEM format. Only insert requests will include this field.", + "type": "string" + }, + "selfLink": { + "description": "[Output only] Server-defined URL for the resource.", + "type": "string" + }, + "selfManaged": { + "$ref": "SslCertificateSelfManagedSslCertificate", + "description": "Configuration and status of a self-managed SSL certificate." + }, + "subjectAlternativeNames": { + "description": "[Output Only] Domains associated with the certificate via Subject Alternative Name.", + "items": { + "type": "string" + }, + "type": "array" + }, + "type": { + "description": "(Optional) Specifies the type of SSL certificate, either \"SELF_MANAGED\" or \"MANAGED\". If not specified, the certificate is self-managed and the fields certificate and private_key are used.", + "enum": [ + "MANAGED", + "SELF_MANAGED", + "TYPE_UNSPECIFIED" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "SslCertificateList": { + "description": "Contains a list of SslCertificate resources.", + "id": "SslCertificateList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of SslCertificate resources.", + "items": { + "$ref": "SslCertificate" + }, + "type": "array" + }, + "kind": { + "default": "compute#sslCertificateList", + "description": "Type of resource.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "SslCertificateManagedSslCertificate": { + "description": "Configuration and status of a managed SSL certificate.", + "id": "SslCertificateManagedSslCertificate", + "properties": { + "domainStatus": { + "additionalProperties": { + "enum": [ + "ACTIVE", + "DOMAIN_STATUS_UNSPECIFIED", + "FAILED_CAA_FORBIDDEN", + "FAILED_NOT_VISIBLE", + "FAILED_RATE_LIMITED", + "PROVISIONING" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "description": "[Output only] Detailed statuses of the domains specified for managed certificate resource.", + "type": "object" + }, + "domains": { + "description": "The domains for which a managed SSL certificate will be generated. Currently only single-domain certs are supported.", + "items": { + "type": "string" + }, + "type": "array" + }, + "status": { + "description": "[Output only] Status of the managed certificate resource.", + "enum": [ + "ACTIVE", + "MANAGED_CERTIFICATE_STATUS_UNSPECIFIED", + "PROVISIONING", + "PROVISIONING_FAILED", + "PROVISIONING_FAILED_PERMANENTLY", + "RENEWAL_FAILED" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "SslCertificateSelfManagedSslCertificate": { + "description": "Configuration and status of a self-managed SSL certificate..", + "id": "SslCertificateSelfManagedSslCertificate", + "properties": { + "certificate": { + "description": "A local certificate file. The certificate must be in PEM format. The certificate chain must be no greater than 5 certs long. The chain must include at least one intermediate cert.", + "type": "string" + }, + "privateKey": { + "description": "A write-only private key in PEM format. Only insert requests will include this field.", + "type": "string" + } + }, + "type": "object" + }, + "SslPoliciesList": { + "id": "SslPoliciesList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of SslPolicy resources.", + "items": { + "$ref": "SslPolicy" + }, + "type": "array" + }, + "kind": { + "default": "compute#sslPoliciesList", + "description": "[Output Only] Type of the resource. Always compute#sslPoliciesList for lists of sslPolicies.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "SslPoliciesListAvailableFeaturesResponse": { + "id": "SslPoliciesListAvailableFeaturesResponse", + "properties": { + "features": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "SslPolicy": { + "description": "A SSL policy specifies the server-side support for SSL features. This can be attached to a TargetHttpsProxy or a TargetSslProxy. This affects connections between clients and the HTTPS or SSL proxy load balancer. They do not affect the connection between the load balancers and the backends.", + "id": "SslPolicy", + "properties": { + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "customFeatures": { + "description": "List of features enabled when the selected profile is CUSTOM. The\n- method returns the set of features that can be specified in this list. This field must be empty if the profile is not CUSTOM.", + "items": { + "type": "string" + }, + "type": "array" + }, + "description": { + "description": "An optional description of this resource. Provide this property when you create the resource.", + "type": "string" + }, + "enabledFeatures": { + "description": "[Output Only] The list of features enabled in the SSL policy.", + "items": { + "type": "string" + }, + "type": "array" + }, + "fingerprint": { + "description": "Fingerprint of this resource. A hash of the contents stored in this object. This field is used in optimistic locking. This field will be ignored when inserting a SslPolicy. An up-to-date fingerprint must be provided in order to update the SslPolicy.", + "format": "byte", + "type": "string" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64", + "type": "string" + }, + "kind": { + "default": "compute#sslPolicy", + "description": "[Output only] Type of the resource. Always compute#sslPolicyfor SSL policies.", + "type": "string" + }, + "minTlsVersion": { + "description": "The minimum version of SSL protocol that can be used by the clients to establish a connection with the load balancer. This can be one of TLS_1_0, TLS_1_1, TLS_1_2, TLS_1_3.", + "enum": [ + "TLS_1_0", + "TLS_1_1", + "TLS_1_2", + "TLS_1_3" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ], + "type": "string" + }, + "name": { + "description": "Name of the resource. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "profile": { + "description": "Profile specifies the set of SSL features that can be used by the load balancer when negotiating SSL with clients. This can be one of COMPATIBLE, MODERN, RESTRICTED, or CUSTOM. If using CUSTOM, the set of SSL features to enable must be specified in the customFeatures field.", + "enum": [ + "COMPATIBLE", + "CUSTOM", + "MODERN", + "RESTRICTED" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ], + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + }, + "warnings": { + "description": "[Output Only] If potential misconfigurations are detected for this SSL policy, this field will be populated with warning messages.", + "items": { + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + } + }, + "type": "object" + }, + "SslPolicyReference": { + "id": "SslPolicyReference", + "properties": { + "sslPolicy": { + "description": "URL of the SSL policy resource. Set this to empty string to clear any existing SSL policy associated with the target proxy resource.", + "type": "string" + } + }, + "type": "object" + }, + "StatefulPolicy": { + "id": "StatefulPolicy", + "properties": { + "preservedResources": { + "$ref": "StatefulPolicyPreservedResources" + } + }, + "type": "object" + }, + "StatefulPolicyPreservedDisk": { + "id": "StatefulPolicyPreservedDisk", + "properties": { + "deviceName": { + "description": "Device name of the disk to be preserved", + "type": "string" + } + }, + "type": "object" + }, + "StatefulPolicyPreservedResources": { + "description": "Configuration of all preserved resources.", + "id": "StatefulPolicyPreservedResources", + "properties": { + "disks": { + "description": "Disks created on the instances that will be preserved on instance delete, resize down, etc.", + "items": { + "$ref": "StatefulPolicyPreservedDisk" + }, + "type": "array" + } + }, + "type": "object" + }, + "Subnetwork": { + "description": "A Subnetwork resource. (== resource_for beta.subnetworks ==) (== resource_for v1.subnetworks ==)", + "id": "Subnetwork", + "properties": { + "allowSubnetCidrRoutesOverlap": { + "description": "Whether this subnetwork can conflict with static routes. Setting this to true allows this subnetwork's primary and secondary ranges to conflict with routes that have already been configured on the corresponding network. Static routes will take precedence over the subnetwork route if the route prefix length is at least as large as the subnetwork prefix length.\n\nAlso, packets destined to IPs within subnetwork may contain private/sensitive data and are prevented from leaving the virtual network. Setting this field to true will disable this feature.\n\nThe default value is false and applies to all existing subnetworks and automatically created subnetworks.\n\nThis field cannot be set to true at resource creation time.", + "type": "boolean" + }, + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "description": { + "description": "An optional description of this resource. Provide this property when you create the resource. This field can be set only at resource creation time.", + "type": "string" + }, + "enableFlowLogs": { + "description": "Whether to enable flow logging for this subnetwork.", + "type": "boolean" + }, + "enablePrivateV6Access": { + "description": "Whether the VMs in this subnet can directly access Google services via internal IPv6 addresses. This field can be both set at resource creation time and updated using patch.", + "type": "boolean" + }, + "fingerprint": { + "description": "Fingerprint of this resource. A hash of the contents stored in this object. This field is used in optimistic locking. This field will be ignored when inserting a Subnetwork. An up-to-date fingerprint must be provided in order to update the Subnetwork.", + "format": "byte", + "type": "string" + }, + "gatewayAddress": { + "description": "[Output Only] The gateway address for default routes to reach destination addresses outside this subnetwork.", + "type": "string" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64", + "type": "string" + }, + "ipCidrRange": { + "description": "The range of internal addresses that are owned by this subnetwork. Provide this property when you create the subnetwork. For example, 10.0.0.0/8 or 192.168.0.0/16. Ranges must be unique and non-overlapping within a network. Only IPv4 is supported. This field can be set only at resource creation time.", + "type": "string" + }, + "ipv6CidrRange": { + "description": "[Output Only] The range of internal IPv6 addresses that are owned by this subnetwork.", + "type": "string" + }, + "kind": { + "default": "compute#subnetwork", + "description": "[Output Only] Type of the resource. Always compute#subnetwork for Subnetwork resources.", + "type": "string" + }, + "name": { + "description": "The name of the resource, provided by the client when initially creating the resource. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "network": { + "description": "The URL of the network to which this subnetwork belongs, provided by the client when initially creating the subnetwork. Only networks that are in the distributed mode can have subnetworks. This field can be set only at resource creation time.", + "type": "string" + }, + "privateIpGoogleAccess": { + "description": "Whether the VMs in this subnet can access Google services without assigned external IP addresses. This field can be both set at resource creation time and updated using setPrivateIpGoogleAccess.", + "type": "boolean" + }, + "region": { + "description": "URL of the region where the Subnetwork resides. This field can be set only at resource creation time.", + "type": "string" + }, + "secondaryIpRanges": { + "description": "An array of configurations for secondary IP ranges for VM instances contained in this subnetwork. The primary IP of such VM must belong to the primary ipCidrRange of the subnetwork. The alias IPs may belong to either primary or secondary ranges.", + "items": { + "$ref": "SubnetworkSecondaryRange" + }, + "type": "array" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + } + }, + "type": "object" + }, + "SubnetworkAggregatedList": { + "id": "SubnetworkAggregatedList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "additionalProperties": { + "$ref": "SubnetworksScopedList", + "description": "Name of the scope containing this set of Subnetworks." + }, + "description": "A list of SubnetworksScopedList resources.", + "type": "object" + }, + "kind": { + "default": "compute#subnetworkAggregatedList", + "description": "[Output Only] Type of resource. Always compute#subnetworkAggregatedList for aggregated lists of subnetworks.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "SubnetworkList": { + "description": "Contains a list of Subnetwork resources.", + "id": "SubnetworkList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of Subnetwork resources.", + "items": { + "$ref": "Subnetwork" + }, + "type": "array" + }, + "kind": { + "default": "compute#subnetworkList", + "description": "[Output Only] Type of resource. Always compute#subnetworkList for lists of subnetworks.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "SubnetworkSecondaryRange": { + "description": "Represents a secondary IP range of a subnetwork.", + "id": "SubnetworkSecondaryRange", + "properties": { + "ipCidrRange": { + "description": "The range of IP addresses belonging to this subnetwork secondary range. Provide this property when you create the subnetwork. Ranges must be unique and non-overlapping with all primary and secondary IP ranges within a network. Only IPv4 is supported.", + "type": "string" + }, + "rangeName": { + "description": "The name associated with this subnetwork secondary range, used when adding an alias IP range to a VM instance. The name must be 1-63 characters long, and comply with RFC1035. The name must be unique within the subnetwork.", + "type": "string" + } + }, + "type": "object" + }, + "SubnetworksExpandIpCidrRangeRequest": { + "id": "SubnetworksExpandIpCidrRangeRequest", + "properties": { + "ipCidrRange": { + "description": "The IP (in CIDR format or netmask) of internal addresses that are legal on this Subnetwork. This range should be disjoint from other subnetworks within this network. This range can only be larger than (i.e. a superset of) the range previously defined before the update.", + "type": "string" + } + }, + "type": "object" + }, + "SubnetworksScopedList": { + "id": "SubnetworksScopedList", + "properties": { + "subnetworks": { + "description": "List of subnetworks contained in this scope.", + "items": { + "$ref": "Subnetwork" + }, + "type": "array" + }, + "warning": { + "description": "An informational warning that appears when the list of addresses is empty.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "SubnetworksSetPrivateIpGoogleAccessRequest": { + "id": "SubnetworksSetPrivateIpGoogleAccessRequest", + "properties": { + "privateIpGoogleAccess": { + "type": "boolean" + } + }, + "type": "object" + }, + "TCPHealthCheck": { + "id": "TCPHealthCheck", + "properties": { + "port": { + "description": "The TCP port number for the health check request. The default value is 80. Valid values are 1 through 65535.", + "format": "int32", + "type": "integer" + }, + "portName": { + "description": "Port name as defined in InstanceGroup#NamedPort#name. If both port and port_name are defined, port takes precedence.", + "type": "string" + }, + "portSpecification": { + "description": "Specifies how port is selected for health checking, can be one of following values:\nUSE_FIXED_PORT: The port number in\nport\nis used for health checking.\nUSE_NAMED_PORT: The\nportName\nis used for health checking.\nUSE_SERVING_PORT: For NetworkEndpointGroup, the port specified for each network endpoint is used for health checking. For other backends, the port or named port specified in the Backend Service is used for health checking.\n\n\nIf not specified, TCP health check follows behavior specified in\nport\nand\nportName\nfields.", + "enum": [ + "USE_FIXED_PORT", + "USE_NAMED_PORT", + "USE_SERVING_PORT" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, + "proxyHeader": { + "description": "Specifies the type of proxy header to append before sending data to the backend, either NONE or PROXY_V1. The default is NONE.", + "enum": [ + "NONE", + "PROXY_V1" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "request": { + "description": "The application data to send once the TCP connection has been established (default value is empty). If both request and response are empty, the connection establishment alone will indicate health. The request data can only be ASCII.", + "type": "string" + }, + "response": { + "description": "The bytes to match against the beginning of the response data. If left empty (the default value), any response will indicate health. The response data can only be ASCII.", + "type": "string" + } + }, + "type": "object" + }, + "Tags": { + "description": "A set of instance tags.", + "id": "Tags", + "properties": { + "fingerprint": { + "description": "Specifies a fingerprint for this request, which is essentially a hash of the metadata's contents and used for optimistic locking. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update metadata. You must always provide an up-to-date fingerprint hash in order to update or change metadata.\n\nTo see the latest fingerprint, make get() request to the instance.", + "format": "byte", + "type": "string" + }, + "items": { + "description": "An array of tags. Each tag must be 1-63 characters long, and comply with RFC1035.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "TargetHttpProxiesScopedList": { + "id": "TargetHttpProxiesScopedList", + "properties": { + "targetHttpProxies": { + "description": "List of TargetHttpProxies contained in this scope.", + "items": { + "$ref": "TargetHttpProxy" + }, + "type": "array" + }, + "warning": { + "description": "Informational warning which replaces the list of backend services when the list is empty.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "TargetHttpProxy": { + "description": "A TargetHttpProxy resource. This resource defines an HTTP proxy. (== resource_for beta.targetHttpProxies ==) (== resource_for v1.targetHttpProxies ==)", + "id": "TargetHttpProxy", + "properties": { + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "description": { + "description": "An optional description of this resource. Provide this property when you create the resource.", + "type": "string" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64", + "type": "string" + }, + "kind": { + "default": "compute#targetHttpProxy", + "description": "[Output Only] Type of resource. Always compute#targetHttpProxy for target HTTP proxies.", + "type": "string" + }, + "name": { + "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "region": { + "description": "[Output Only] URL of the region where the regional Target HTTP Proxy resides. This field is not applicable to global Target HTTP Proxies.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + }, + "urlMap": { + "description": "URL to the UrlMap resource that defines the mapping from URL to the BackendService.", + "type": "string" + } + }, + "type": "object" + }, + "TargetHttpProxyAggregatedList": { + "id": "TargetHttpProxyAggregatedList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "additionalProperties": { + "$ref": "TargetHttpProxiesScopedList", + "description": "Name of the scope containing this set of TargetHttpProxies." + }, + "description": "A list of TargetHttpProxiesScopedList resources.", + "type": "object" + }, + "kind": { + "default": "compute#targetHttpProxyAggregatedList", + "description": "[Output Only] Type of resource. Always compute#targetHttpProxyAggregatedList for lists of Target HTTP Proxies.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "TargetHttpProxyList": { + "description": "A list of TargetHttpProxy resources.", + "id": "TargetHttpProxyList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of TargetHttpProxy resources.", + "items": { + "$ref": "TargetHttpProxy" + }, + "type": "array" + }, + "kind": { + "default": "compute#targetHttpProxyList", + "description": "Type of resource. Always compute#targetHttpProxyList for lists of target HTTP proxies.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "TargetHttpsProxiesSetQuicOverrideRequest": { + "id": "TargetHttpsProxiesSetQuicOverrideRequest", + "properties": { + "quicOverride": { + "description": "QUIC policy for the TargetHttpsProxy resource.", + "enum": [ + "DISABLE", + "ENABLE", + "NONE" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "TargetHttpsProxiesSetSslCertificatesRequest": { + "id": "TargetHttpsProxiesSetSslCertificatesRequest", + "properties": { + "sslCertificates": { + "description": "New set of SslCertificate resources to associate with this TargetHttpsProxy resource. Currently exactly one SslCertificate resource must be specified.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "TargetHttpsProxy": { + "description": "A TargetHttpsProxy resource. This resource defines an HTTPS proxy. (== resource_for beta.targetHttpsProxies ==) (== resource_for v1.targetHttpsProxies ==)", + "id": "TargetHttpsProxy", + "properties": { + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "description": { + "description": "An optional description of this resource. Provide this property when you create the resource.", + "type": "string" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64", + "type": "string" + }, + "kind": { + "default": "compute#targetHttpsProxy", + "description": "[Output Only] Type of resource. Always compute#targetHttpsProxy for target HTTPS proxies.", + "type": "string" + }, + "name": { + "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "quicOverride": { + "description": "Specifies the QUIC override policy for this TargetHttpsProxy resource. This determines whether the load balancer will attempt to negotiate QUIC with clients or not. Can specify one of NONE, ENABLE, or DISABLE. Specify ENABLE to always enable QUIC, Enables QUIC when set to ENABLE, and disables QUIC when set to DISABLE. If NONE is specified, uses the QUIC policy with no user overrides, which is equivalent to DISABLE. Not specifying this field is equivalent to specifying NONE.", + "enum": [ + "DISABLE", + "ENABLE", + "NONE" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + }, + "sslCertificates": { + "description": "URLs to SslCertificate resources that are used to authenticate connections between users and the load balancer. Currently, exactly one SSL certificate must be specified.", + "items": { + "type": "string" + }, + "type": "array" + }, + "sslPolicy": { + "description": "URL of SslPolicy resource that will be associated with the TargetHttpsProxy resource. If not set, the TargetHttpsProxy resource will not have any SSL policy configured.", + "type": "string" + }, + "urlMap": { + "description": "A fully-qualified or valid partial URL to the UrlMap resource that defines the mapping from URL to the BackendService. For example, the following are all valid URLs for specifying a URL map: \n- https://www.googleapis.compute/v1/projects/project/global/urlMaps/url-map \n- projects/project/global/urlMaps/url-map \n- global/urlMaps/url-map", + "type": "string" + } + }, + "type": "object" + }, + "TargetHttpsProxyList": { + "description": "Contains a list of TargetHttpsProxy resources.", + "id": "TargetHttpsProxyList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of TargetHttpsProxy resources.", + "items": { + "$ref": "TargetHttpsProxy" + }, + "type": "array" + }, + "kind": { + "default": "compute#targetHttpsProxyList", + "description": "Type of resource. Always compute#targetHttpsProxyList for lists of target HTTPS proxies.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "TargetInstance": { + "description": "A TargetInstance resource. This resource defines an endpoint instance that terminates traffic of certain protocols. (== resource_for beta.targetInstances ==) (== resource_for v1.targetInstances ==)", + "id": "TargetInstance", + "properties": { + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "description": { + "description": "An optional description of this resource. Provide this property when you create the resource.", + "type": "string" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64", + "type": "string" + }, + "instance": { + "description": "A URL to the virtual machine instance that handles traffic for this target instance. When creating a target instance, you can provide the fully-qualified URL or a valid partial URL to the desired virtual machine. For example, the following are all valid URLs: \n- https://www.googleapis.com/compute/v1/projects/project/zones/zone/instances/instance \n- projects/project/zones/zone/instances/instance \n- zones/zone/instances/instance", + "type": "string" + }, + "kind": { + "default": "compute#targetInstance", + "description": "[Output Only] The type of the resource. Always compute#targetInstance for target instances.", + "type": "string" + }, + "name": { + "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "natPolicy": { + "description": "NAT option controlling how IPs are NAT'ed to the instance. Currently only NO_NAT (default value) is supported.", + "enum": [ + "NO_NAT" + ], + "enumDescriptions": [ + "" + ], + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + }, + "zone": { + "description": "[Output Only] URL of the zone where the target instance resides. You must specify this field as part of the HTTP request URL. It is not settable as a field in the request body.", + "type": "string" + } + }, + "type": "object" + }, + "TargetInstanceAggregatedList": { + "id": "TargetInstanceAggregatedList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "additionalProperties": { + "$ref": "TargetInstancesScopedList", + "description": "Name of the scope containing this set of target instances." + }, + "description": "A list of TargetInstance resources.", + "type": "object" + }, + "kind": { + "default": "compute#targetInstanceAggregatedList", + "description": "Type of resource.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "TargetInstanceList": { + "description": "Contains a list of TargetInstance resources.", + "id": "TargetInstanceList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of TargetInstance resources.", + "items": { + "$ref": "TargetInstance" + }, + "type": "array" + }, + "kind": { + "default": "compute#targetInstanceList", + "description": "Type of resource.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "TargetInstancesScopedList": { + "id": "TargetInstancesScopedList", + "properties": { + "targetInstances": { + "description": "List of target instances contained in this scope.", + "items": { + "$ref": "TargetInstance" + }, + "type": "array" + }, + "warning": { + "description": "Informational warning which replaces the list of addresses when the list is empty.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "TargetPool": { + "description": "A TargetPool resource. This resource defines a pool of instances, an associated HttpHealthCheck resource, and the fallback target pool. (== resource_for beta.targetPools ==) (== resource_for v1.targetPools ==)", + "id": "TargetPool", + "properties": { + "backupPool": { + "description": "This field is applicable only when the containing target pool is serving a forwarding rule as the primary pool, and its failoverRatio field is properly set to a value between [0, 1].\n\nbackupPool and failoverRatio together define the fallback behavior of the primary target pool: if the ratio of the healthy instances in the primary pool is at or below failoverRatio, traffic arriving at the load-balanced IP will be directed to the backup pool.\n\nIn case where failoverRatio and backupPool are not set, or all the instances in the backup pool are unhealthy, the traffic will be directed back to the primary pool in the \"force\" mode, where traffic will be spread to the healthy instances with the best effort, or to all instances when no instance is healthy.", + "type": "string" + }, + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "description": { + "description": "An optional description of this resource. Provide this property when you create the resource.", + "type": "string" + }, + "failoverRatio": { + "description": "This field is applicable only when the containing target pool is serving a forwarding rule as the primary pool (i.e., not as a backup pool to some other target pool). The value of the field must be in [0, 1].\n\nIf set, backupPool must also be set. They together define the fallback behavior of the primary target pool: if the ratio of the healthy instances in the primary pool is at or below this number, traffic arriving at the load-balanced IP will be directed to the backup pool.\n\nIn case where failoverRatio is not set or all the instances in the backup pool are unhealthy, the traffic will be directed back to the primary pool in the \"force\" mode, where traffic will be spread to the healthy instances with the best effort, or to all instances when no instance is healthy.", + "format": "float", + "type": "number" + }, + "healthChecks": { + "description": "The URL of the HttpHealthCheck resource. A member instance in this pool is considered healthy if and only if the health checks pass. An empty list means all member instances will be considered healthy at all times. Only HttpHealthChecks are supported. Only one health check may be specified.", + "items": { + "type": "string" + }, + "type": "array" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64", + "type": "string" + }, + "instances": { + "description": "A list of resource URLs to the virtual machine instances serving this pool. They must live in zones contained in the same region as this pool.", + "items": { + "type": "string" + }, + "type": "array" + }, + "kind": { + "default": "compute#targetPool", + "description": "[Output Only] Type of the resource. Always compute#targetPool for target pools.", + "type": "string" + }, + "name": { + "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "region": { + "description": "[Output Only] URL of the region where the target pool resides.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + }, + "sessionAffinity": { + "description": "Sesssion affinity option, must be one of the following values:\nNONE: Connections from the same client IP may go to any instance in the pool.\nCLIENT_IP: Connections from the same client IP will go to the same instance in the pool while that instance remains healthy.\nCLIENT_IP_PROTO: Connections from the same client IP with the same IP protocol will go to the same instance in the pool while that instance remains healthy.", + "enum": [ + "CLIENT_IP", + "CLIENT_IP_PORT_PROTO", + "CLIENT_IP_PROTO", + "GENERATED_COOKIE", + "NONE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "TargetPoolAggregatedList": { + "id": "TargetPoolAggregatedList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "additionalProperties": { + "$ref": "TargetPoolsScopedList", + "description": "Name of the scope containing this set of target pools." + }, + "description": "A list of TargetPool resources.", + "type": "object" + }, + "kind": { + "default": "compute#targetPoolAggregatedList", + "description": "[Output Only] Type of resource. Always compute#targetPoolAggregatedList for aggregated lists of target pools.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "TargetPoolInstanceHealth": { + "id": "TargetPoolInstanceHealth", + "properties": { + "healthStatus": { + "items": { + "$ref": "HealthStatus" + }, + "type": "array" + }, + "kind": { + "default": "compute#targetPoolInstanceHealth", + "description": "[Output Only] Type of resource. Always compute#targetPoolInstanceHealth when checking the health of an instance.", + "type": "string" + } + }, + "type": "object" + }, + "TargetPoolList": { + "description": "Contains a list of TargetPool resources.", + "id": "TargetPoolList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of TargetPool resources.", + "items": { + "$ref": "TargetPool" + }, + "type": "array" + }, + "kind": { + "default": "compute#targetPoolList", + "description": "[Output Only] Type of resource. Always compute#targetPoolList for lists of target pools.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "TargetPoolsAddHealthCheckRequest": { + "id": "TargetPoolsAddHealthCheckRequest", + "properties": { + "healthChecks": { + "description": "The HttpHealthCheck to add to the target pool.", + "items": { + "$ref": "HealthCheckReference" + }, + "type": "array" + } + }, + "type": "object" + }, + "TargetPoolsAddInstanceRequest": { + "id": "TargetPoolsAddInstanceRequest", + "properties": { + "instances": { + "description": "A full or partial URL to an instance to add to this target pool. This can be a full or partial URL. For example, the following are valid URLs: \n- https://www.googleapis.com/compute/v1/projects/project-id/zones/zone/instances/instance-name \n- projects/project-id/zones/zone/instances/instance-name \n- zones/zone/instances/instance-name", + "items": { + "$ref": "InstanceReference" + }, + "type": "array" + } + }, + "type": "object" + }, + "TargetPoolsRemoveHealthCheckRequest": { + "id": "TargetPoolsRemoveHealthCheckRequest", + "properties": { + "healthChecks": { + "description": "Health check URL to be removed. This can be a full or valid partial URL. For example, the following are valid URLs: \n- https://www.googleapis.com/compute/beta/projects/project/global/httpHealthChecks/health-check \n- projects/project/global/httpHealthChecks/health-check \n- global/httpHealthChecks/health-check", + "items": { + "$ref": "HealthCheckReference" + }, + "type": "array" + } + }, + "type": "object" + }, + "TargetPoolsRemoveInstanceRequest": { + "id": "TargetPoolsRemoveInstanceRequest", + "properties": { + "instances": { + "description": "URLs of the instances to be removed from target pool.", + "items": { + "$ref": "InstanceReference" + }, + "type": "array" + } + }, + "type": "object" + }, + "TargetPoolsScopedList": { + "id": "TargetPoolsScopedList", + "properties": { + "targetPools": { + "description": "List of target pools contained in this scope.", + "items": { + "$ref": "TargetPool" + }, + "type": "array" + }, + "warning": { + "description": "Informational warning which replaces the list of addresses when the list is empty.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "TargetReference": { + "id": "TargetReference", + "properties": { + "target": { + "type": "string" + } + }, + "type": "object" + }, + "TargetSslProxiesSetBackendServiceRequest": { + "id": "TargetSslProxiesSetBackendServiceRequest", + "properties": { + "service": { + "description": "The URL of the new BackendService resource for the targetSslProxy.", + "type": "string" + } + }, + "type": "object" + }, + "TargetSslProxiesSetProxyHeaderRequest": { + "id": "TargetSslProxiesSetProxyHeaderRequest", + "properties": { + "proxyHeader": { + "description": "The new type of proxy header to append before sending data to the backend. NONE or PROXY_V1 are allowed.", + "enum": [ + "NONE", + "PROXY_V1" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "TargetSslProxiesSetSslCertificatesRequest": { + "id": "TargetSslProxiesSetSslCertificatesRequest", + "properties": { + "sslCertificates": { + "description": "New set of URLs to SslCertificate resources to associate with this TargetSslProxy. Currently exactly one ssl certificate must be specified.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "TargetSslProxy": { + "description": "A TargetSslProxy resource. This resource defines an SSL proxy. (== resource_for beta.targetSslProxies ==) (== resource_for v1.targetSslProxies ==)", + "id": "TargetSslProxy", + "properties": { + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "description": { + "description": "An optional description of this resource. Provide this property when you create the resource.", + "type": "string" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64", + "type": "string" + }, + "kind": { + "default": "compute#targetSslProxy", + "description": "[Output Only] Type of the resource. Always compute#targetSslProxy for target SSL proxies.", + "type": "string" + }, + "name": { + "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "proxyHeader": { + "description": "Specifies the type of proxy header to append before sending data to the backend, either NONE or PROXY_V1. The default is NONE.", + "enum": [ + "NONE", + "PROXY_V1" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + }, + "service": { + "description": "URL to the BackendService resource.", + "type": "string" + }, + "sslCertificates": { + "description": "URLs to SslCertificate resources that are used to authenticate connections to Backends. Currently exactly one SSL certificate must be specified.", + "items": { + "type": "string" + }, + "type": "array" + }, + "sslPolicy": { + "description": "URL of SslPolicy resource that will be associated with the TargetSslProxy resource. If not set, the TargetSslProxy resource will not have any SSL policy configured.", + "type": "string" + } + }, + "type": "object" + }, + "TargetSslProxyList": { + "description": "Contains a list of TargetSslProxy resources.", + "id": "TargetSslProxyList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of TargetSslProxy resources.", + "items": { + "$ref": "TargetSslProxy" + }, + "type": "array" + }, + "kind": { + "default": "compute#targetSslProxyList", + "description": "Type of resource.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "TargetTcpProxiesSetBackendServiceRequest": { + "id": "TargetTcpProxiesSetBackendServiceRequest", + "properties": { + "service": { + "description": "The URL of the new BackendService resource for the targetTcpProxy.", + "type": "string" + } + }, + "type": "object" + }, + "TargetTcpProxiesSetProxyHeaderRequest": { + "id": "TargetTcpProxiesSetProxyHeaderRequest", + "properties": { + "proxyHeader": { + "description": "The new type of proxy header to append before sending data to the backend. NONE or PROXY_V1 are allowed.", + "enum": [ + "NONE", + "PROXY_V1" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "TargetTcpProxy": { + "description": "A TargetTcpProxy resource. This resource defines a TCP proxy. (== resource_for beta.targetTcpProxies ==) (== resource_for v1.targetTcpProxies ==)", + "id": "TargetTcpProxy", + "properties": { + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "description": { + "description": "An optional description of this resource. Provide this property when you create the resource.", + "type": "string" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64", + "type": "string" + }, + "kind": { + "default": "compute#targetTcpProxy", + "description": "[Output Only] Type of the resource. Always compute#targetTcpProxy for target TCP proxies.", + "type": "string" + }, + "name": { + "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "proxyHeader": { + "description": "Specifies the type of proxy header to append before sending data to the backend, either NONE or PROXY_V1. The default is NONE.", + "enum": [ + "NONE", + "PROXY_V1" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + }, + "service": { + "description": "URL to the BackendService resource.", + "type": "string" + } + }, + "type": "object" + }, + "TargetTcpProxyList": { + "description": "Contains a list of TargetTcpProxy resources.", + "id": "TargetTcpProxyList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of TargetTcpProxy resources.", + "items": { + "$ref": "TargetTcpProxy" + }, + "type": "array" + }, + "kind": { + "default": "compute#targetTcpProxyList", + "description": "Type of resource.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "TargetVpnGateway": { + "description": "Represents a Target VPN gateway resource. (== resource_for beta.targetVpnGateways ==) (== resource_for v1.targetVpnGateways ==)", + "id": "TargetVpnGateway", + "properties": { + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "description": { + "description": "An optional description of this resource. Provide this property when you create the resource.", + "type": "string" + }, + "forwardingRules": { + "description": "[Output Only] A list of URLs to the ForwardingRule resources. ForwardingRules are created using compute.forwardingRules.insert and associated to a VPN gateway.", + "items": { + "type": "string" + }, + "type": "array" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64", + "type": "string" + }, + "kind": { + "default": "compute#targetVpnGateway", + "description": "[Output Only] Type of resource. Always compute#targetVpnGateway for target VPN gateways.", + "type": "string" + }, + "labelFingerprint": { + "description": "A fingerprint for the labels being applied to this TargetVpnGateway, which is essentially a hash of the labels set used for optimistic locking. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update labels. You must always provide an up-to-date fingerprint hash in order to update or change labels.\n\nTo see the latest fingerprint, make a get() request to retrieve an TargetVpnGateway.", + "format": "byte", + "type": "string" + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Labels to apply to this TargetVpnGateway resource. These can be later modified by the setLabels method. Each label key/value must comply with RFC1035. Label values may be empty.", + "type": "object" + }, + "name": { + "annotations": { + "required": [ + "compute.targetVpnGateways.insert" + ] + }, + "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "network": { + "annotations": { + "required": [ + "compute.targetVpnGateways.insert" + ] + }, + "description": "URL of the network to which this VPN gateway is attached. Provided by the client when the VPN gateway is created.", + "type": "string" + }, + "region": { + "description": "[Output Only] URL of the region where the target VPN gateway resides. You must specify this field as part of the HTTP request URL. It is not settable as a field in the request body.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + }, + "status": { + "description": "[Output Only] The status of the VPN gateway.", + "enum": [ + "CREATING", + "DELETING", + "FAILED", + "READY" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ], + "type": "string" + }, + "tunnels": { + "description": "[Output Only] A list of URLs to VpnTunnel resources. VpnTunnels are created using compute.vpntunnels.insert method and associated to a VPN gateway.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "TargetVpnGatewayAggregatedList": { + "id": "TargetVpnGatewayAggregatedList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "additionalProperties": { + "$ref": "TargetVpnGatewaysScopedList", + "description": "[Output Only] Name of the scope containing this set of target VPN gateways." + }, + "description": "A list of TargetVpnGateway resources.", + "type": "object" + }, + "kind": { + "default": "compute#targetVpnGatewayAggregatedList", + "description": "[Output Only] Type of resource. Always compute#targetVpnGateway for target VPN gateways.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "TargetVpnGatewayList": { + "description": "Contains a list of TargetVpnGateway resources.", + "id": "TargetVpnGatewayList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of TargetVpnGateway resources.", + "items": { + "$ref": "TargetVpnGateway" + }, + "type": "array" + }, + "kind": { + "default": "compute#targetVpnGatewayList", + "description": "[Output Only] Type of resource. Always compute#targetVpnGateway for target VPN gateways.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "TargetVpnGatewaysScopedList": { + "id": "TargetVpnGatewaysScopedList", + "properties": { + "targetVpnGateways": { + "description": "[Output Only] List of target vpn gateways contained in this scope.", + "items": { + "$ref": "TargetVpnGateway" + }, + "type": "array" + }, + "warning": { + "description": "[Output Only] Informational warning which replaces the list of addresses when the list is empty.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "TestFailure": { + "id": "TestFailure", + "properties": { + "actualService": { + "type": "string" + }, + "expectedService": { + "type": "string" + }, + "host": { + "type": "string" + }, + "path": { + "type": "string" + } + }, + "type": "object" + }, + "TestPermissionsRequest": { + "id": "TestPermissionsRequest", + "properties": { + "permissions": { + "description": "The set of permissions to check for the 'resource'. Permissions with wildcards (such as '*' or 'storage.*') are not allowed.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "TestPermissionsResponse": { + "id": "TestPermissionsResponse", + "properties": { + "permissions": { + "description": "A subset of `TestPermissionsRequest.permissions` that the caller is allowed.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "UDPHealthCheck": { + "id": "UDPHealthCheck", + "properties": { + "port": { + "description": "The UDP port number for the health check request. Valid values are 1 through 65535.", + "format": "int32", + "type": "integer" + }, + "portName": { + "description": "Port name as defined in InstanceGroup#NamedPort#name. If both port and port_name are defined, port takes precedence.", + "type": "string" + }, + "request": { + "description": "Raw data of request to send in payload of UDP packet. It is an error if this is empty. The request data can only be ASCII.", + "type": "string" + }, + "response": { + "description": "The bytes to match against the beginning of the response data. It is an error if this is empty. The response data can only be ASCII.", + "type": "string" + } + }, + "type": "object" + }, + "UrlMap": { + "description": "A UrlMap resource. This resource defines the mapping from URL to the BackendService resource, based on the \"longest-match\" of the URL's host and path.", + "id": "UrlMap", + "properties": { + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "defaultService": { + "description": "The URL of the BackendService resource if none of the hostRules match.", + "type": "string" + }, + "description": { + "description": "An optional description of this resource. Provide this property when you create the resource.", + "type": "string" + }, + "fingerprint": { + "description": "Fingerprint of this resource. A hash of the contents stored in this object. This field is used in optimistic locking. This field will be ignored when inserting a UrlMap. An up-to-date fingerprint must be provided in order to update the UrlMap.", + "format": "byte", + "type": "string" + }, + "hostRules": { + "description": "The list of HostRules to use against the URL.", + "items": { + "$ref": "HostRule" + }, + "type": "array" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64", + "type": "string" + }, + "kind": { + "default": "compute#urlMap", + "description": "[Output Only] Type of the resource. Always compute#urlMaps for url maps.", + "type": "string" + }, + "name": { + "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "pathMatchers": { + "description": "The list of named PathMatchers to use against the URL.", + "items": { + "$ref": "PathMatcher" + }, + "type": "array" + }, + "region": { + "description": "[Output Only] URL of the region where the regional URL map resides. This field is not applicable to global URL maps. You must specify this field as part of the HTTP request URL. It is not settable as a field in the request body.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + }, + "tests": { + "description": "The list of expected URL mapping tests. Request to update this UrlMap will succeed only if all of the test cases pass. You can specify a maximum of 100 tests per UrlMap.", + "items": { + "$ref": "UrlMapTest" + }, + "type": "array" + } + }, + "type": "object" + }, + "UrlMapList": { + "description": "Contains a list of UrlMap resources.", + "id": "UrlMapList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of UrlMap resources.", + "items": { + "$ref": "UrlMap" + }, + "type": "array" + }, + "kind": { + "default": "compute#urlMapList", + "description": "Type of resource.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "UrlMapReference": { + "id": "UrlMapReference", + "properties": { + "urlMap": { + "type": "string" + } + }, + "type": "object" + }, + "UrlMapTest": { + "description": "Message for the expected URL mappings.", + "id": "UrlMapTest", + "properties": { + "description": { + "description": "Description of this test case.", + "type": "string" + }, + "host": { + "description": "Host portion of the URL.", + "type": "string" + }, + "path": { + "description": "Path portion of the URL.", + "type": "string" + }, + "service": { + "description": "Expected BackendService resource the given URL should be mapped to.", + "type": "string" + } + }, + "type": "object" + }, + "UrlMapValidationResult": { + "description": "Message representing the validation result for a UrlMap.", + "id": "UrlMapValidationResult", + "properties": { + "loadErrors": { + "items": { + "type": "string" + }, + "type": "array" + }, + "loadSucceeded": { + "description": "Whether the given UrlMap can be successfully loaded. If false, 'loadErrors' indicates the reasons.", + "type": "boolean" + }, + "testFailures": { + "items": { + "$ref": "TestFailure" + }, + "type": "array" + }, + "testPassed": { + "description": "If successfully loaded, this field indicates whether the test passed. If false, 'testFailures's indicate the reason of failure.", + "type": "boolean" + } + }, + "type": "object" + }, + "UrlMapsValidateRequest": { + "id": "UrlMapsValidateRequest", + "properties": { + "resource": { + "$ref": "UrlMap", + "description": "Content of the UrlMap to be validated." + } + }, + "type": "object" + }, + "UrlMapsValidateResponse": { + "id": "UrlMapsValidateResponse", + "properties": { + "result": { + "$ref": "UrlMapValidationResult" + } + }, + "type": "object" + }, + "UsableSubnetwork": { + "description": "Subnetwork which the current user has compute.subnetworks.use permission on.", + "id": "UsableSubnetwork", + "properties": { + "ipCidrRange": { + "description": "The range of internal addresses that are owned by this subnetwork.", + "type": "string" + }, + "network": { + "description": "Network URL.", + "type": "string" + }, + "subnetwork": { + "description": "Subnetwork URL.", + "type": "string" + } + }, + "type": "object" + }, + "UsableSubnetworksAggregatedList": { + "id": "UsableSubnetworksAggregatedList", + "properties": { + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "type": "string" + }, + "items": { + "description": "[Output] A list of usable subnetwork URLs.", + "items": { + "$ref": "UsableSubnetwork" + }, + "type": "array" + }, + "kind": { + "default": "compute#usableSubnetworksAggregatedList", + "description": "[Output Only] Type of resource. Always compute#usableSubnetworksAggregatedList for aggregated lists of usable subnetworks.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "UsageExportLocation": { + "description": "The location in Cloud Storage and naming method of the daily usage report. Contains bucket_name and report_name prefix.", + "id": "UsageExportLocation", + "properties": { + "bucketName": { + "description": "The name of an existing bucket in Cloud Storage where the usage report object is stored. The Google Service Account is granted write access to this bucket. This can either be the bucket name by itself, such as example-bucket, or the bucket name with gs:// or https://storage.googleapis.com/ in front of it, such as gs://example-bucket.", + "type": "string" + }, + "reportNamePrefix": { + "description": "An optional prefix for the name of the usage report object stored in bucketName. If not supplied, defaults to usage. The report is stored as a CSV file named report_name_prefix_gce_YYYYMMDD.csv where YYYYMMDD is the day of the usage according to Pacific Time. If you supply a prefix, it should conform to Cloud Storage object naming conventions.", + "type": "string" + } + }, + "type": "object" + }, + "VmMaintenancePolicy": { + "description": "A Vm Maintenance Policy specifies what kind of infrastructure maintenance we are allowed to perform on this VM and when.", + "id": "VmMaintenancePolicy", + "properties": { + "maintenanceWindow": { + "$ref": "MaintenanceWindow", + "description": "Maintenance windows that are applied to VMs covered by this policy." + } + }, + "type": "object" + }, + "VpnTunnel": { + "description": "VPN tunnel resource. (== resource_for beta.vpnTunnels ==) (== resource_for v1.vpnTunnels ==)", + "id": "VpnTunnel", + "properties": { + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "description": { + "description": "An optional description of this resource. Provide this property when you create the resource.", + "type": "string" + }, + "detailedStatus": { + "description": "[Output Only] Detailed status message for the VPN tunnel.", + "type": "string" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64", + "type": "string" + }, + "ikeVersion": { + "description": "IKE protocol version to use when establishing the VPN tunnel with peer VPN gateway. Acceptable IKE versions are 1 or 2. Default version is 2.", + "format": "int32", + "type": "integer" + }, + "kind": { + "default": "compute#vpnTunnel", + "description": "[Output Only] Type of resource. Always compute#vpnTunnel for VPN tunnels.", + "type": "string" + }, + "labelFingerprint": { + "description": "A fingerprint for the labels being applied to this VpnTunnel, which is essentially a hash of the labels set used for optimistic locking. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update labels. You must always provide an up-to-date fingerprint hash in order to update or change labels.\n\nTo see the latest fingerprint, make a get() request to retrieve a VpnTunnel.", + "format": "byte", + "type": "string" + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Labels to apply to this VpnTunnel. These can be later modified by the setLabels method. Each label key/value pair must comply with RFC1035. Label values may be empty.", + "type": "object" + }, + "localTrafficSelector": { + "description": "Local traffic selector to use when establishing the VPN tunnel with peer VPN gateway. The value should be a CIDR formatted string, for example: 192.168.0.0/16. The ranges should be disjoint. Only IPv4 is supported.", + "items": { + "type": "string" + }, + "type": "array" + }, + "name": { + "annotations": { + "required": [ + "compute.vpnTunnels.insert" + ] + }, + "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "peerIp": { + "description": "IP address of the peer VPN gateway. Only IPv4 is supported.", + "type": "string" + }, + "region": { + "description": "[Output Only] URL of the region where the VPN tunnel resides. You must specify this field as part of the HTTP request URL. It is not settable as a field in the request body.", + "type": "string" + }, + "remoteTrafficSelector": { + "description": "Remote traffic selectors to use when establishing the VPN tunnel with peer VPN gateway. The value should be a CIDR formatted string, for example: 192.168.0.0/16. The ranges should be disjoint. Only IPv4 is supported.", + "items": { + "type": "string" + }, + "type": "array" + }, + "router": { + "description": "URL of router resource to be used for dynamic routing.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + }, + "sharedSecret": { + "description": "Shared secret used to set the secure session between the Cloud VPN gateway and the peer VPN gateway.", + "type": "string" + }, + "sharedSecretHash": { + "description": "Hash of the shared secret.", + "type": "string" + }, + "status": { + "description": "[Output Only] The status of the VPN tunnel.", + "enum": [ + "ALLOCATING_RESOURCES", + "AUTHORIZATION_ERROR", + "DEPROVISIONING", + "ESTABLISHED", + "FAILED", + "FIRST_HANDSHAKE", + "NEGOTIATION_FAILURE", + "NETWORK_ERROR", + "NO_INCOMING_PACKETS", + "PROVISIONING", + "REJECTED", + "WAITING_FOR_FULL_CONFIG" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "targetVpnGateway": { + "description": "URL of the Target VPN gateway with which this VPN tunnel is associated. Provided by the client when the VPN tunnel is created.", + "type": "string" + } + }, + "type": "object" + }, + "VpnTunnelAggregatedList": { + "id": "VpnTunnelAggregatedList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "additionalProperties": { + "$ref": "VpnTunnelsScopedList", + "description": "Name of the scope containing this set of vpn tunnels." + }, + "description": "A list of VpnTunnelsScopedList resources.", + "type": "object" + }, + "kind": { + "default": "compute#vpnTunnelAggregatedList", + "description": "[Output Only] Type of resource. Always compute#vpnTunnel for VPN tunnels.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "VpnTunnelList": { + "description": "Contains a list of VpnTunnel resources.", + "id": "VpnTunnelList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of VpnTunnel resources.", + "items": { + "$ref": "VpnTunnel" + }, + "type": "array" + }, + "kind": { + "default": "compute#vpnTunnelList", + "description": "[Output Only] Type of resource. Always compute#vpnTunnel for VPN tunnels.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "VpnTunnelsScopedList": { + "id": "VpnTunnelsScopedList", + "properties": { + "vpnTunnels": { + "description": "List of vpn tunnels contained in this scope.", + "items": { + "$ref": "VpnTunnel" + }, + "type": "array" + }, + "warning": { + "description": "Informational warning which replaces the list of addresses when the list is empty.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "XpnHostList": { + "id": "XpnHostList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "[Output Only] A list of shared VPC host project URLs.", + "items": { + "$ref": "Project" + }, + "type": "array" + }, + "kind": { + "default": "compute#xpnHostList", + "description": "[Output Only] Type of resource. Always compute#xpnHostList for lists of shared VPC hosts.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "XpnResourceId": { + "description": "Service resource (a.k.a service project) ID.", + "id": "XpnResourceId", + "properties": { + "id": { + "description": "The ID of the service resource. In the case of projects, this field matches the project ID (e.g., my-project), not the project number (e.g., 12345678).", + "type": "string" + }, + "type": { + "description": "The type of the service resource.", + "enum": [ + "PROJECT", + "XPN_RESOURCE_TYPE_UNSPECIFIED" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "Zone": { + "description": "A Zone resource. (== resource_for beta.zones ==) (== resource_for v1.zones ==)", + "id": "Zone", + "properties": { + "availableCpuPlatforms": { + "description": "[Output Only] Available cpu/platform selections for the zone.", + "items": { + "type": "string" + }, + "type": "array" + }, + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "deprecated": { + "$ref": "DeprecationStatus", + "description": "[Output Only] The deprecation status associated with this zone." + }, + "description": { + "description": "[Output Only] Textual description of the resource.", + "type": "string" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64", + "type": "string" + }, + "kind": { + "default": "compute#zone", + "description": "[Output Only] Type of the resource. Always compute#zone for zones.", + "type": "string" + }, + "name": { + "description": "[Output Only] Name of the resource.", + "type": "string" + }, + "region": { + "description": "[Output Only] Full URL reference to the region which hosts the zone.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + }, + "status": { + "description": "[Output Only] Status of the zone, either UP or DOWN.", + "enum": [ + "DOWN", + "UP" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "ZoneList": { + "description": "Contains a list of zone resources.", + "id": "ZoneList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of Zone resources.", + "items": { + "$ref": "Zone" + }, + "type": "array" + }, + "kind": { + "default": "compute#zoneList", + "description": "Type of resource.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "ZoneSetLabelsRequest": { + "id": "ZoneSetLabelsRequest", + "properties": { + "labelFingerprint": { + "description": "The fingerprint of the previous set of labels for this resource, used to detect conflicts. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update labels. You must always provide an up-to-date fingerprint hash in order to update or change labels. Make a get() request to the resource to get the latest fingerprint.", + "format": "byte", + "type": "string" + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "The labels to set for this resource.", + "type": "object" + } + }, + "type": "object" } - } }, - "ZoneSetLabelsRequest": { - "id": "ZoneSetLabelsRequest", - "type": "object", - "properties": { - "labelFingerprint": { - "type": "string", - "description": "The fingerprint of the previous set of labels for this resource, used to detect conflicts. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update labels. You must always provide an up-to-date fingerprint hash in order to update or change labels. Make a get() request to the resource to get the latest fingerprint.", - "format": "byte" - }, - "labels": { - "type": "object", - "description": "The labels to set for this resource.", - "additionalProperties": { - "type": "string" - } - } - } - } - }, - "resources": { - "acceleratorTypes": { - "methods": { - "aggregatedList": { - "id": "compute.acceleratorTypes.aggregatedList", - "path": "{project}/aggregated/acceleratorTypes", - "httpMethod": "GET", - "description": "Retrieves an aggregated list of accelerator types.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "AcceleratorTypeAggregatedList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "get": { - "id": "compute.acceleratorTypes.get", - "path": "{project}/zones/{zone}/acceleratorTypes/{acceleratorType}", - "httpMethod": "GET", - "description": "Returns the specified accelerator type. Get a list of available accelerator types by making a list() request.", - "parameters": { - "acceleratorType": { - "type": "string", - "description": "Name of the accelerator type to return.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "zone": { - "type": "string", - "description": "The name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "acceleratorType" - ], - "response": { - "$ref": "AcceleratorType" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "list": { - "id": "compute.acceleratorTypes.list", - "path": "{project}/zones/{zone}/acceleratorTypes", - "httpMethod": "GET", - "description": "Retrieves a list of accelerator types available to the specified project.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "zone": { - "type": "string", - "description": "The name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone" - ], - "response": { - "$ref": "AcceleratorTypeList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - } - } - }, - "addresses": { - "methods": { - "aggregatedList": { - "id": "compute.addresses.aggregatedList", - "path": "{project}/aggregated/addresses", - "httpMethod": "GET", - "description": "Retrieves an aggregated list of addresses.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "AddressAggregatedList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "delete": { - "id": "compute.addresses.delete", - "path": "{project}/regions/{region}/addresses/{address}", - "httpMethod": "DELETE", - "description": "Deletes the specified address resource.", - "parameters": { - "address": { - "type": "string", - "description": "Name of the address resource to delete.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "region", - "address" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "get": { - "id": "compute.addresses.get", - "path": "{project}/regions/{region}/addresses/{address}", - "httpMethod": "GET", - "description": "Returns the specified address resource.", - "parameters": { - "address": { - "type": "string", - "description": "Name of the address resource to return.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "address" - ], - "response": { - "$ref": "Address" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "insert": { - "id": "compute.addresses.insert", - "path": "{project}/regions/{region}/addresses", - "httpMethod": "POST", - "description": "Creates an address resource in the specified project using the data included in the request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "region" - ], - "request": { - "$ref": "Address" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "list": { - "id": "compute.addresses.list", - "path": "{project}/regions/{region}/addresses", - "httpMethod": "GET", - "description": "Retrieves a list of addresses contained within the specified region.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region" - ], - "response": { - "$ref": "AddressList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "setLabels": { - "id": "compute.addresses.setLabels", - "path": "{project}/regions/{region}/addresses/{resource}/setLabels", - "httpMethod": "POST", - "description": "Sets the labels on an Address. To learn more about labels, read the Labeling Resources documentation.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "The region for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "resource" - ], - "request": { - "$ref": "RegionSetLabelsRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "testIamPermissions": { - "id": "compute.addresses.testIamPermissions", - "path": "{project}/regions/{region}/addresses/{resource}/testIamPermissions", - "httpMethod": "POST", - "description": "Returns permissions that a caller has on the specified resource.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "The name of the region for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "resource" - ], - "request": { - "$ref": "TestPermissionsRequest" - }, - "response": { - "$ref": "TestPermissionsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - } - } - }, - "autoscalers": { - "methods": { - "aggregatedList": { - "id": "compute.autoscalers.aggregatedList", - "path": "{project}/aggregated/autoscalers", - "httpMethod": "GET", - "description": "Retrieves an aggregated list of autoscalers.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "AutoscalerAggregatedList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "delete": { - "id": "compute.autoscalers.delete", - "path": "{project}/zones/{zone}/autoscalers/{autoscaler}", - "httpMethod": "DELETE", - "description": "Deletes the specified autoscaler.", - "parameters": { - "autoscaler": { - "type": "string", - "description": "Name of the autoscaler to delete.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "zone": { - "type": "string", - "description": "Name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "autoscaler" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "get": { - "id": "compute.autoscalers.get", - "path": "{project}/zones/{zone}/autoscalers/{autoscaler}", - "httpMethod": "GET", - "description": "Returns the specified autoscaler resource. Get a list of available autoscalers by making a list() request.", - "parameters": { - "autoscaler": { - "type": "string", - "description": "Name of the autoscaler to return.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "zone": { - "type": "string", - "description": "Name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "autoscaler" - ], - "response": { - "$ref": "Autoscaler" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "insert": { - "id": "compute.autoscalers.insert", - "path": "{project}/zones/{zone}/autoscalers", - "httpMethod": "POST", - "description": "Creates an autoscaler in the specified project using the data included in the request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "zone": { - "type": "string", - "description": "Name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone" - ], - "request": { - "$ref": "Autoscaler" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "list": { - "id": "compute.autoscalers.list", - "path": "{project}/zones/{zone}/autoscalers", - "httpMethod": "GET", - "description": "Retrieves a list of autoscalers contained within the specified zone.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "zone": { - "type": "string", - "description": "Name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone" - ], - "response": { - "$ref": "AutoscalerList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "patch": { - "id": "compute.autoscalers.patch", - "path": "{project}/zones/{zone}/autoscalers", - "httpMethod": "PATCH", - "description": "Updates an autoscaler in the specified project using the data included in the request. This method supports PATCH semantics and uses the JSON merge patch format and processing rules.", - "parameters": { - "autoscaler": { - "type": "string", - "description": "Name of the autoscaler to patch.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "zone": { - "type": "string", - "description": "Name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone" - ], - "request": { - "$ref": "Autoscaler" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "testIamPermissions": { - "id": "compute.autoscalers.testIamPermissions", - "path": "{project}/zones/{zone}/autoscalers/{resource}/testIamPermissions", - "httpMethod": "POST", - "description": "Returns permissions that a caller has on the specified resource.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "zone": { - "type": "string", - "description": "The name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "resource" - ], - "request": { - "$ref": "TestPermissionsRequest" - }, - "response": { - "$ref": "TestPermissionsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "update": { - "id": "compute.autoscalers.update", - "path": "{project}/zones/{zone}/autoscalers", - "httpMethod": "PUT", - "description": "Updates an autoscaler in the specified project using the data included in the request.", - "parameters": { - "autoscaler": { - "type": "string", - "description": "Name of the autoscaler to update.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "zone": { - "type": "string", - "description": "Name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone" - ], - "request": { - "$ref": "Autoscaler" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - } - } - }, - "backendBuckets": { - "methods": { - "addSignedUrlKey": { - "id": "compute.backendBuckets.addSignedUrlKey", - "path": "{project}/global/backendBuckets/{backendBucket}/addSignedUrlKey", - "httpMethod": "POST", - "description": "Adds the given Signed URL Key to the backend bucket.", - "parameters": { - "backendBucket": { - "type": "string", - "description": "Name of the BackendBucket resource to which the Signed URL Key should be added. The name should conform to RFC1035.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "backendBucket" - ], - "request": { - "$ref": "SignedUrlKey" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "delete": { - "id": "compute.backendBuckets.delete", - "path": "{project}/global/backendBuckets/{backendBucket}", - "httpMethod": "DELETE", - "description": "Deletes the specified BackendBucket resource.", - "parameters": { - "backendBucket": { - "type": "string", - "description": "Name of the BackendBucket resource to delete.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "backendBucket" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "deleteSignedUrlKey": { - "id": "compute.backendBuckets.deleteSignedUrlKey", - "path": "{project}/global/backendBuckets/{backendBucket}/deleteSignedUrlKey", - "httpMethod": "POST", - "description": "Deletes the given Signed URL Key from the backend bucket.", - "parameters": { - "backendBucket": { - "type": "string", - "description": "Name of the BackendBucket resource to which the Signed URL Key should be added. The name should conform to RFC1035.", - "required": true, - "location": "path" - }, - "keyName": { - "type": "string", - "description": "The name of the Signed URL Key to delete.", - "required": true, - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "backendBucket", - "keyName" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "get": { - "id": "compute.backendBuckets.get", - "path": "{project}/global/backendBuckets/{backendBucket}", - "httpMethod": "GET", - "description": "Returns the specified BackendBucket resource. Get a list of available backend buckets by making a list() request.", - "parameters": { - "backendBucket": { - "type": "string", - "description": "Name of the BackendBucket resource to return.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "backendBucket" - ], - "response": { - "$ref": "BackendBucket" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "getIamPolicy": { - "id": "compute.backendBuckets.getIamPolicy", - "path": "{project}/global/backendBuckets/{resource}/getIamPolicy", - "httpMethod": "GET", - "description": "Gets the access control policy for a resource. May be empty if no such policy or resource exists.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "[a-z0-9](?:[-a-z0-9_]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "resource" - ], - "response": { - "$ref": "Policy" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "insert": { - "id": "compute.backendBuckets.insert", - "path": "{project}/global/backendBuckets", - "httpMethod": "POST", - "description": "Creates a BackendBucket resource in the specified project using the data included in the request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project" - ], - "request": { - "$ref": "BackendBucket" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "list": { - "id": "compute.backendBuckets.list", - "path": "{project}/global/backendBuckets", - "httpMethod": "GET", - "description": "Retrieves the list of BackendBucket resources available to the specified project.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "BackendBucketList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "patch": { - "id": "compute.backendBuckets.patch", - "path": "{project}/global/backendBuckets/{backendBucket}", - "httpMethod": "PATCH", - "description": "Updates the specified BackendBucket resource with the data included in the request. This method supports PATCH semantics and uses the JSON merge patch format and processing rules.", - "parameters": { - "backendBucket": { - "type": "string", - "description": "Name of the BackendBucket resource to patch.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "backendBucket" - ], - "request": { - "$ref": "BackendBucket" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "setIamPolicy": { - "id": "compute.backendBuckets.setIamPolicy", - "path": "{project}/global/backendBuckets/{resource}/setIamPolicy", - "httpMethod": "POST", - "description": "Sets the access control policy on the specified resource. Replaces any existing policy.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "[a-z0-9](?:[-a-z0-9_]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "resource" - ], - "request": { - "$ref": "Policy" - }, - "response": { - "$ref": "Policy" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "testIamPermissions": { - "id": "compute.backendBuckets.testIamPermissions", - "path": "{project}/global/backendBuckets/{resource}/testIamPermissions", - "httpMethod": "POST", - "description": "Returns permissions that a caller has on the specified resource.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "(?:[-a-z0-9_]{0,62}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "resource" - ], - "request": { - "$ref": "TestPermissionsRequest" - }, - "response": { - "$ref": "TestPermissionsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "update": { - "id": "compute.backendBuckets.update", - "path": "{project}/global/backendBuckets/{backendBucket}", - "httpMethod": "PUT", - "description": "Updates the specified BackendBucket resource with the data included in the request.", - "parameters": { - "backendBucket": { - "type": "string", - "description": "Name of the BackendBucket resource to update.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "backendBucket" - ], - "request": { - "$ref": "BackendBucket" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - } - } - }, - "backendServices": { - "methods": { - "addSignedUrlKey": { - "id": "compute.backendServices.addSignedUrlKey", - "path": "{project}/global/backendServices/{backendService}/addSignedUrlKey", - "httpMethod": "POST", - "description": "Adds the given Signed URL Key to the specified backend service.", - "parameters": { - "backendService": { - "type": "string", - "description": "Name of the BackendService resource to which the Signed URL Key should be added. The name should conform to RFC1035.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "backendService" - ], - "request": { - "$ref": "SignedUrlKey" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "aggregatedList": { - "id": "compute.backendServices.aggregatedList", - "path": "{project}/aggregated/backendServices", - "httpMethod": "GET", - "description": "Retrieves the list of all BackendService resources, regional and global, available to the specified project.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Name of the project scoping this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "BackendServiceAggregatedList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "delete": { - "id": "compute.backendServices.delete", - "path": "{project}/global/backendServices/{backendService}", - "httpMethod": "DELETE", - "description": "Deletes the specified BackendService resource.", - "parameters": { - "backendService": { - "type": "string", - "description": "Name of the BackendService resource to delete.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "backendService" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "deleteSignedUrlKey": { - "id": "compute.backendServices.deleteSignedUrlKey", - "path": "{project}/global/backendServices/{backendService}/deleteSignedUrlKey", - "httpMethod": "POST", - "description": "Deletes the given Signed URL Key from the specified backend service.", - "parameters": { - "backendService": { - "type": "string", - "description": "Name of the BackendService resource to which the Signed URL Key should be added. The name should conform to RFC1035.", - "required": true, - "location": "path" - }, - "keyName": { - "type": "string", - "description": "The name of the Signed URL Key to delete.", - "required": true, - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "backendService", - "keyName" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "get": { - "id": "compute.backendServices.get", - "path": "{project}/global/backendServices/{backendService}", - "httpMethod": "GET", - "description": "Returns the specified BackendService resource. Get a list of available backend services by making a list() request.", - "parameters": { - "backendService": { - "type": "string", - "description": "Name of the BackendService resource to return.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "backendService" - ], - "response": { - "$ref": "BackendService" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "getHealth": { - "id": "compute.backendServices.getHealth", - "path": "{project}/global/backendServices/{backendService}/getHealth", - "httpMethod": "POST", - "description": "Gets the most recent health check results for this BackendService.", - "parameters": { - "backendService": { - "type": "string", - "description": "Name of the BackendService resource to which the queried instance belongs.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "backendService" - ], - "request": { - "$ref": "ResourceGroupReference" - }, - "response": { - "$ref": "BackendServiceGroupHealth" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "insert": { - "id": "compute.backendServices.insert", - "path": "{project}/global/backendServices", - "httpMethod": "POST", - "description": "Creates a BackendService resource in the specified project using the data included in the request. There are several restrictions and guidelines to keep in mind when creating a backend service. Read Restrictions and Guidelines for more information.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project" - ], - "request": { - "$ref": "BackendService" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "list": { - "id": "compute.backendServices.list", - "path": "{project}/global/backendServices", - "httpMethod": "GET", - "description": "Retrieves the list of BackendService resources available to the specified project.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "BackendServiceList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "patch": { - "id": "compute.backendServices.patch", - "path": "{project}/global/backendServices/{backendService}", - "httpMethod": "PATCH", - "description": "Patches the specified BackendService resource with the data included in the request. There are several restrictions and guidelines to keep in mind when updating a backend service. Read Restrictions and Guidelines for more information. This method supports PATCH semantics and uses the JSON merge patch format and processing rules.", - "parameters": { - "backendService": { - "type": "string", - "description": "Name of the BackendService resource to patch.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "backendService" - ], - "request": { - "$ref": "BackendService" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "setSecurityPolicy": { - "id": "compute.backendServices.setSecurityPolicy", - "path": "{project}/global/backendServices/{backendService}/setSecurityPolicy", - "httpMethod": "POST", - "description": "Sets the security policy for the specified backend service.", - "parameters": { - "backendService": { - "type": "string", - "description": "Name of the BackendService resource to which the security policy should be set. The name should conform to RFC1035.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "backendService" - ], - "request": { - "$ref": "SecurityPolicyReference" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "testIamPermissions": { - "id": "compute.backendServices.testIamPermissions", - "path": "{project}/global/backendServices/{resource}/testIamPermissions", - "httpMethod": "POST", - "description": "Returns permissions that a caller has on the specified resource.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "(?:[-a-z0-9_]{0,62}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "resource" - ], - "request": { - "$ref": "TestPermissionsRequest" - }, - "response": { - "$ref": "TestPermissionsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "update": { - "id": "compute.backendServices.update", - "path": "{project}/global/backendServices/{backendService}", - "httpMethod": "PUT", - "description": "Updates the specified BackendService resource with the data included in the request. There are several restrictions and guidelines to keep in mind when updating a backend service. Read Restrictions and Guidelines for more information.", - "parameters": { - "backendService": { - "type": "string", - "description": "Name of the BackendService resource to update.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "backendService" - ], - "request": { - "$ref": "BackendService" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - } - } - }, - "clientSslPolicies": { - "methods": { - "testIamPermissions": { - "id": "compute.clientSslPolicies.testIamPermissions", - "path": "{project}/global/clientSslPolicies/{resource}/testIamPermissions", - "httpMethod": "POST", - "description": "Returns permissions that a caller has on the specified resource.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "(?:[-a-z0-9_]{0,62}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "resource" - ], - "request": { - "$ref": "TestPermissionsRequest" - }, - "response": { - "$ref": "TestPermissionsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - } - } - }, - "diskTypes": { - "methods": { - "aggregatedList": { - "id": "compute.diskTypes.aggregatedList", - "path": "{project}/aggregated/diskTypes", - "httpMethod": "GET", - "description": "Retrieves an aggregated list of disk types.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "DiskTypeAggregatedList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "get": { - "id": "compute.diskTypes.get", - "path": "{project}/zones/{zone}/diskTypes/{diskType}", - "httpMethod": "GET", - "description": "Returns the specified disk type. Get a list of available disk types by making a list() request.", - "parameters": { - "diskType": { - "type": "string", - "description": "Name of the disk type to return.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "zone": { - "type": "string", - "description": "The name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "diskType" - ], - "response": { - "$ref": "DiskType" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "list": { - "id": "compute.diskTypes.list", - "path": "{project}/zones/{zone}/diskTypes", - "httpMethod": "GET", - "description": "Retrieves a list of disk types available to the specified project.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "zone": { - "type": "string", - "description": "The name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone" - ], - "response": { - "$ref": "DiskTypeList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - } - } - }, - "disks": { - "methods": { - "aggregatedList": { - "id": "compute.disks.aggregatedList", - "path": "{project}/aggregated/disks", - "httpMethod": "GET", - "description": "Retrieves an aggregated list of persistent disks.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "DiskAggregatedList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "createSnapshot": { - "id": "compute.disks.createSnapshot", - "path": "{project}/zones/{zone}/disks/{disk}/createSnapshot", - "httpMethod": "POST", - "description": "Creates a snapshot of a specified persistent disk.", - "parameters": { - "disk": { - "type": "string", - "description": "Name of the persistent disk to snapshot.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "guestFlush": { - "type": "boolean", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "zone": { - "type": "string", - "description": "The name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "disk" - ], - "request": { - "$ref": "Snapshot" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "delete": { - "id": "compute.disks.delete", - "path": "{project}/zones/{zone}/disks/{disk}", - "httpMethod": "DELETE", - "description": "Deletes the specified persistent disk. Deleting a disk removes its data permanently and is irreversible. However, deleting a disk does not delete any snapshots previously made from the disk. You must separately delete snapshots.", - "parameters": { - "disk": { - "type": "string", - "description": "Name of the persistent disk to delete.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "zone": { - "type": "string", - "description": "The name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "disk" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "get": { - "id": "compute.disks.get", - "path": "{project}/zones/{zone}/disks/{disk}", - "httpMethod": "GET", - "description": "Returns a specified persistent disk. Get a list of available persistent disks by making a list() request.", - "parameters": { - "disk": { - "type": "string", - "description": "Name of the persistent disk to return.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "zone": { - "type": "string", - "description": "The name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "disk" - ], - "response": { - "$ref": "Disk" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "getIamPolicy": { - "id": "compute.disks.getIamPolicy", - "path": "{project}/zones/{zone}/disks/{resource}/getIamPolicy", - "httpMethod": "GET", - "description": "Gets the access control policy for a resource. May be empty if no such policy or resource exists.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "zone": { - "type": "string", - "description": "The name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "resource" - ], - "response": { - "$ref": "Policy" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "insert": { - "id": "compute.disks.insert", - "path": "{project}/zones/{zone}/disks", - "httpMethod": "POST", - "description": "Creates a persistent disk in the specified project using the data in the request. You can create a disk with a sourceImage, a sourceSnapshot, or create an empty 500 GB data disk by omitting all properties. You can also create a disk that is larger than the default size by specifying the sizeGb property.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "sourceImage": { - "type": "string", - "description": "Optional. Source image to restore onto a disk.", - "location": "query" - }, - "zone": { - "type": "string", - "description": "The name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone" - ], - "request": { - "$ref": "Disk" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "list": { - "id": "compute.disks.list", - "path": "{project}/zones/{zone}/disks", - "httpMethod": "GET", - "description": "Retrieves a list of persistent disks contained within the specified zone.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "zone": { - "type": "string", - "description": "The name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone" - ], - "response": { - "$ref": "DiskList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "resize": { - "id": "compute.disks.resize", - "path": "{project}/zones/{zone}/disks/{disk}/resize", - "httpMethod": "POST", - "description": "Resizes the specified persistent disk. You can only increase the size of the disk.", - "parameters": { - "disk": { - "type": "string", - "description": "The name of the persistent disk.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "zone": { - "type": "string", - "description": "The name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "disk" - ], - "request": { - "$ref": "DisksResizeRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "setIamPolicy": { - "id": "compute.disks.setIamPolicy", - "path": "{project}/zones/{zone}/disks/{resource}/setIamPolicy", - "httpMethod": "POST", - "description": "Sets the access control policy on the specified resource. Replaces any existing policy.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "zone": { - "type": "string", - "description": "The name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "resource" - ], - "request": { - "$ref": "Policy" - }, - "response": { - "$ref": "Policy" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "setLabels": { - "id": "compute.disks.setLabels", - "path": "{project}/zones/{zone}/disks/{resource}/setLabels", - "httpMethod": "POST", - "description": "Sets the labels on a disk. To learn more about labels, read the Labeling Resources documentation.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "zone": { - "type": "string", - "description": "The name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "resource" - ], - "request": { - "$ref": "ZoneSetLabelsRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "testIamPermissions": { - "id": "compute.disks.testIamPermissions", - "path": "{project}/zones/{zone}/disks/{resource}/testIamPermissions", - "httpMethod": "POST", - "description": "Returns permissions that a caller has on the specified resource.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "zone": { - "type": "string", - "description": "The name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "resource" - ], - "request": { - "$ref": "TestPermissionsRequest" - }, - "response": { - "$ref": "TestPermissionsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - } - } - }, - "firewalls": { - "methods": { - "delete": { - "id": "compute.firewalls.delete", - "path": "{project}/global/firewalls/{firewall}", - "httpMethod": "DELETE", - "description": "Deletes the specified firewall.", - "parameters": { - "firewall": { - "type": "string", - "description": "Name of the firewall rule to delete.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "firewall" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "get": { - "id": "compute.firewalls.get", - "path": "{project}/global/firewalls/{firewall}", - "httpMethod": "GET", - "description": "Returns the specified firewall.", - "parameters": { - "firewall": { - "type": "string", - "description": "Name of the firewall rule to return.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "firewall" - ], - "response": { - "$ref": "Firewall" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "insert": { - "id": "compute.firewalls.insert", - "path": "{project}/global/firewalls", - "httpMethod": "POST", - "description": "Creates a firewall rule in the specified project using the data included in the request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project" - ], - "request": { - "$ref": "Firewall" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "list": { - "id": "compute.firewalls.list", - "path": "{project}/global/firewalls", - "httpMethod": "GET", - "description": "Retrieves the list of firewall rules available to the specified project.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "FirewallList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "patch": { - "id": "compute.firewalls.patch", - "path": "{project}/global/firewalls/{firewall}", - "httpMethod": "PATCH", - "description": "Updates the specified firewall rule with the data included in the request. This method supports PATCH semantics and uses the JSON merge patch format and processing rules.", - "parameters": { - "firewall": { - "type": "string", - "description": "Name of the firewall rule to patch.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "firewall" - ], - "request": { - "$ref": "Firewall" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "testIamPermissions": { - "id": "compute.firewalls.testIamPermissions", - "path": "{project}/global/firewalls/{resource}/testIamPermissions", - "httpMethod": "POST", - "description": "Returns permissions that a caller has on the specified resource.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "(?:[-a-z0-9_]{0,62}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "resource" - ], - "request": { - "$ref": "TestPermissionsRequest" - }, - "response": { - "$ref": "TestPermissionsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "update": { - "id": "compute.firewalls.update", - "path": "{project}/global/firewalls/{firewall}", - "httpMethod": "PUT", - "description": "Updates the specified firewall rule with the data included in the request. Using PUT method, can only update following fields of firewall rule: allowed, description, sourceRanges, sourceTags, targetTags.", - "parameters": { - "firewall": { - "type": "string", - "description": "Name of the firewall rule to update.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "firewall" - ], - "request": { - "$ref": "Firewall" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - } - } - }, - "forwardingRules": { - "methods": { - "aggregatedList": { - "id": "compute.forwardingRules.aggregatedList", - "path": "{project}/aggregated/forwardingRules", - "httpMethod": "GET", - "description": "Retrieves an aggregated list of forwarding rules.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "ForwardingRuleAggregatedList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "delete": { - "id": "compute.forwardingRules.delete", - "path": "{project}/regions/{region}/forwardingRules/{forwardingRule}", - "httpMethod": "DELETE", - "description": "Deletes the specified ForwardingRule resource.", - "parameters": { - "forwardingRule": { - "type": "string", - "description": "Name of the ForwardingRule resource to delete.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "region", - "forwardingRule" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "get": { - "id": "compute.forwardingRules.get", - "path": "{project}/regions/{region}/forwardingRules/{forwardingRule}", - "httpMethod": "GET", - "description": "Returns the specified ForwardingRule resource.", - "parameters": { - "forwardingRule": { - "type": "string", - "description": "Name of the ForwardingRule resource to return.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "forwardingRule" - ], - "response": { - "$ref": "ForwardingRule" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "insert": { - "id": "compute.forwardingRules.insert", - "path": "{project}/regions/{region}/forwardingRules", - "httpMethod": "POST", - "description": "Creates a ForwardingRule resource in the specified project and region using the data included in the request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "region" - ], - "request": { - "$ref": "ForwardingRule" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "list": { - "id": "compute.forwardingRules.list", - "path": "{project}/regions/{region}/forwardingRules", - "httpMethod": "GET", - "description": "Retrieves a list of ForwardingRule resources available to the specified project and region.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region" - ], - "response": { - "$ref": "ForwardingRuleList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "patch": { - "id": "compute.forwardingRules.patch", - "path": "{project}/regions/{region}/forwardingRules/{forwardingRule}", - "httpMethod": "PATCH", - "description": "Updates the specified forwarding rule with the data included in the request. This method supports PATCH semantics and uses the JSON merge patch format and processing rules. Currently, you can only patch the network_tier field.", - "parameters": { - "forwardingRule": { - "type": "string", - "description": "Name of the ForwardingRule resource to patch.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "region", - "forwardingRule" - ], - "request": { - "$ref": "ForwardingRule" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "setLabels": { - "id": "compute.forwardingRules.setLabels", - "path": "{project}/regions/{region}/forwardingRules/{resource}/setLabels", - "httpMethod": "POST", - "description": "Sets the labels on the specified resource. To learn more about labels, read the Labeling Resources documentation.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "The region for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "resource" - ], - "request": { - "$ref": "RegionSetLabelsRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "setTarget": { - "id": "compute.forwardingRules.setTarget", - "path": "{project}/regions/{region}/forwardingRules/{forwardingRule}/setTarget", - "httpMethod": "POST", - "description": "Changes target URL for forwarding rule. The new target should be of the same type as the old target.", - "parameters": { - "forwardingRule": { - "type": "string", - "description": "Name of the ForwardingRule resource in which target is to be set.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "region", - "forwardingRule" - ], - "request": { - "$ref": "TargetReference" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "testIamPermissions": { - "id": "compute.forwardingRules.testIamPermissions", - "path": "{project}/regions/{region}/forwardingRules/{resource}/testIamPermissions", - "httpMethod": "POST", - "description": "Returns permissions that a caller has on the specified resource.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "The name of the region for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "resource" - ], - "request": { - "$ref": "TestPermissionsRequest" - }, - "response": { - "$ref": "TestPermissionsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - } - } - }, - "globalAddresses": { - "methods": { - "delete": { - "id": "compute.globalAddresses.delete", - "path": "{project}/global/addresses/{address}", - "httpMethod": "DELETE", - "description": "Deletes the specified address resource.", - "parameters": { - "address": { - "type": "string", - "description": "Name of the address resource to delete.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "address" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "get": { - "id": "compute.globalAddresses.get", - "path": "{project}/global/addresses/{address}", - "httpMethod": "GET", - "description": "Returns the specified address resource. Get a list of available addresses by making a list() request.", - "parameters": { - "address": { - "type": "string", - "description": "Name of the address resource to return.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "address" - ], - "response": { - "$ref": "Address" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "insert": { - "id": "compute.globalAddresses.insert", - "path": "{project}/global/addresses", - "httpMethod": "POST", - "description": "Creates an address resource in the specified project using the data included in the request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project" - ], - "request": { - "$ref": "Address" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "list": { - "id": "compute.globalAddresses.list", - "path": "{project}/global/addresses", - "httpMethod": "GET", - "description": "Retrieves a list of global addresses.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "AddressList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "setLabels": { - "id": "compute.globalAddresses.setLabels", - "path": "{project}/global/addresses/{resource}/setLabels", - "httpMethod": "POST", - "description": "Sets the labels on a GlobalAddress. To learn more about labels, read the Labeling Resources documentation.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "resource" - ], - "request": { - "$ref": "GlobalSetLabelsRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "testIamPermissions": { - "id": "compute.globalAddresses.testIamPermissions", - "path": "{project}/global/addresses/{resource}/testIamPermissions", - "httpMethod": "POST", - "description": "Returns permissions that a caller has on the specified resource.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "(?:[-a-z0-9_]{0,62}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "resource" - ], - "request": { - "$ref": "TestPermissionsRequest" - }, - "response": { - "$ref": "TestPermissionsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - } - } - }, - "globalForwardingRules": { - "methods": { - "delete": { - "id": "compute.globalForwardingRules.delete", - "path": "{project}/global/forwardingRules/{forwardingRule}", - "httpMethod": "DELETE", - "description": "Deletes the specified GlobalForwardingRule resource.", - "parameters": { - "forwardingRule": { - "type": "string", - "description": "Name of the ForwardingRule resource to delete.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "forwardingRule" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "get": { - "id": "compute.globalForwardingRules.get", - "path": "{project}/global/forwardingRules/{forwardingRule}", - "httpMethod": "GET", - "description": "Returns the specified GlobalForwardingRule resource. Get a list of available forwarding rules by making a list() request.", - "parameters": { - "forwardingRule": { - "type": "string", - "description": "Name of the ForwardingRule resource to return.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "forwardingRule" - ], - "response": { - "$ref": "ForwardingRule" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "insert": { - "id": "compute.globalForwardingRules.insert", - "path": "{project}/global/forwardingRules", - "httpMethod": "POST", - "description": "Creates a GlobalForwardingRule resource in the specified project using the data included in the request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project" - ], - "request": { - "$ref": "ForwardingRule" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "list": { - "id": "compute.globalForwardingRules.list", - "path": "{project}/global/forwardingRules", - "httpMethod": "GET", - "description": "Retrieves a list of GlobalForwardingRule resources available to the specified project.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "ForwardingRuleList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "patch": { - "id": "compute.globalForwardingRules.patch", - "path": "{project}/global/forwardingRules/{forwardingRule}", - "httpMethod": "PATCH", - "description": "Updates the specified forwarding rule with the data included in the request. This method supports PATCH semantics and uses the JSON merge patch format and processing rules. Currently, you can only patch the network_tier field.", - "parameters": { - "forwardingRule": { - "type": "string", - "description": "Name of the ForwardingRule resource to patch.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "forwardingRule" - ], - "request": { - "$ref": "ForwardingRule" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "setLabels": { - "id": "compute.globalForwardingRules.setLabels", - "path": "{project}/global/forwardingRules/{resource}/setLabels", - "httpMethod": "POST", - "description": "Sets the labels on the specified resource. To learn more about labels, read the Labeling Resources documentation.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "resource" - ], - "request": { - "$ref": "GlobalSetLabelsRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "setTarget": { - "id": "compute.globalForwardingRules.setTarget", - "path": "{project}/global/forwardingRules/{forwardingRule}/setTarget", - "httpMethod": "POST", - "description": "Changes target URL for the GlobalForwardingRule resource. The new target should be of the same type as the old target.", - "parameters": { - "forwardingRule": { - "type": "string", - "description": "Name of the ForwardingRule resource in which target is to be set.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "forwardingRule" - ], - "request": { - "$ref": "TargetReference" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "testIamPermissions": { - "id": "compute.globalForwardingRules.testIamPermissions", - "path": "{project}/global/forwardingRules/{resource}/testIamPermissions", - "httpMethod": "POST", - "description": "Returns permissions that a caller has on the specified resource.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "(?:[-a-z0-9_]{0,62}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "resource" - ], - "request": { - "$ref": "TestPermissionsRequest" - }, - "response": { - "$ref": "TestPermissionsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - } - } - }, - "globalOperations": { - "methods": { - "aggregatedList": { - "id": "compute.globalOperations.aggregatedList", - "path": "{project}/aggregated/operations", - "httpMethod": "GET", - "description": "Retrieves an aggregated list of all operations.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "OperationAggregatedList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "delete": { - "id": "compute.globalOperations.delete", - "path": "{project}/global/operations/{operation}", - "httpMethod": "DELETE", - "description": "Deletes the specified Operations resource.", - "parameters": { - "operation": { - "type": "string", - "description": "Name of the Operations resource to delete.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "operation" - ], - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "get": { - "id": "compute.globalOperations.get", - "path": "{project}/global/operations/{operation}", - "httpMethod": "GET", - "description": "Retrieves the specified Operations resource. Get a list of operations by making a list() request.", - "parameters": { - "operation": { - "type": "string", - "description": "Name of the Operations resource to return.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "operation" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "list": { - "id": "compute.globalOperations.list", - "path": "{project}/global/operations", - "httpMethod": "GET", - "description": "Retrieves a list of Operation resources contained within the specified project.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "OperationList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - } - } - }, - "healthChecks": { - "methods": { - "delete": { - "id": "compute.healthChecks.delete", - "path": "{project}/global/healthChecks/{healthCheck}", - "httpMethod": "DELETE", - "description": "Deletes the specified HealthCheck resource.", - "parameters": { - "healthCheck": { - "type": "string", - "description": "Name of the HealthCheck resource to delete.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "healthCheck" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "get": { - "id": "compute.healthChecks.get", - "path": "{project}/global/healthChecks/{healthCheck}", - "httpMethod": "GET", - "description": "Returns the specified HealthCheck resource. Get a list of available health checks by making a list() request.", - "parameters": { - "healthCheck": { - "type": "string", - "description": "Name of the HealthCheck resource to return.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "healthCheck" - ], - "response": { - "$ref": "HealthCheck" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "insert": { - "id": "compute.healthChecks.insert", - "path": "{project}/global/healthChecks", - "httpMethod": "POST", - "description": "Creates a HealthCheck resource in the specified project using the data included in the request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project" - ], - "request": { - "$ref": "HealthCheck" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "list": { - "id": "compute.healthChecks.list", - "path": "{project}/global/healthChecks", - "httpMethod": "GET", - "description": "Retrieves the list of HealthCheck resources available to the specified project.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "HealthCheckList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "patch": { - "id": "compute.healthChecks.patch", - "path": "{project}/global/healthChecks/{healthCheck}", - "httpMethod": "PATCH", - "description": "Updates a HealthCheck resource in the specified project using the data included in the request. This method supports PATCH semantics and uses the JSON merge patch format and processing rules.", - "parameters": { - "healthCheck": { - "type": "string", - "description": "Name of the HealthCheck resource to patch.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "healthCheck" - ], - "request": { - "$ref": "HealthCheck" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "testIamPermissions": { - "id": "compute.healthChecks.testIamPermissions", - "path": "{project}/global/healthChecks/{resource}/testIamPermissions", - "httpMethod": "POST", - "description": "Returns permissions that a caller has on the specified resource.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "(?:[-a-z0-9_]{0,62}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "resource" - ], - "request": { - "$ref": "TestPermissionsRequest" - }, - "response": { - "$ref": "TestPermissionsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "update": { - "id": "compute.healthChecks.update", - "path": "{project}/global/healthChecks/{healthCheck}", - "httpMethod": "PUT", - "description": "Updates a HealthCheck resource in the specified project using the data included in the request.", - "parameters": { - "healthCheck": { - "type": "string", - "description": "Name of the HealthCheck resource to update.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "healthCheck" - ], - "request": { - "$ref": "HealthCheck" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - } - } - }, - "hostTypes": { - "methods": { - "aggregatedList": { - "id": "compute.hostTypes.aggregatedList", - "path": "{project}/aggregated/hostTypes", - "httpMethod": "GET", - "description": "Retrieves an aggregated list of host types.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "HostTypeAggregatedList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "get": { - "id": "compute.hostTypes.get", - "path": "{project}/zones/{zone}/hostTypes/{hostType}", - "httpMethod": "GET", - "description": "Returns the specified host type. Get a list of available host types by making a list() request.", - "parameters": { - "hostType": { - "type": "string", - "description": "Name of the host type to return.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "zone": { - "type": "string", - "description": "The name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "hostType" - ], - "response": { - "$ref": "HostType" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "list": { - "id": "compute.hostTypes.list", - "path": "{project}/zones/{zone}/hostTypes", - "httpMethod": "GET", - "description": "Retrieves a list of host types available to the specified project.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "zone": { - "type": "string", - "description": "The name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone" - ], - "response": { - "$ref": "HostTypeList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - } - } - }, - "hosts": { - "methods": { - "aggregatedList": { - "id": "compute.hosts.aggregatedList", - "path": "{project}/aggregated/hosts", - "httpMethod": "GET", - "description": "Retrieves an aggregated list of hosts.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "HostAggregatedList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "delete": { - "id": "compute.hosts.delete", - "path": "{project}/zones/{zone}/hosts/{host}", - "httpMethod": "DELETE", - "description": "Deletes the specified Host resource.", - "parameters": { - "host": { - "type": "string", - "description": "Name of the Host resource to delete.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "zone": { - "type": "string", - "description": "The name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "host" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "get": { - "id": "compute.hosts.get", - "path": "{project}/zones/{zone}/hosts/{host}", - "httpMethod": "GET", - "description": "Returns the specified host. Get a list of available hosts by making a list() request.", - "parameters": { - "host": { - "type": "string", - "description": "Name of the host to return.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "zone": { - "type": "string", - "description": "The name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "host" - ], - "response": { - "$ref": "Host" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "getIamPolicy": { - "id": "compute.hosts.getIamPolicy", - "path": "{project}/zones/{zone}/hosts/{resource}/getIamPolicy", - "httpMethod": "GET", - "description": "Gets the access control policy for a resource. May be empty if no such policy or resource exists.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "zone": { - "type": "string", - "description": "The name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "resource" - ], - "response": { - "$ref": "Policy" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "insert": { - "id": "compute.hosts.insert", - "path": "{project}/zones/{zone}/hosts", - "httpMethod": "POST", - "description": "Creates a host resource in the specified project using the data included in the request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "zone": { - "type": "string", - "description": "The name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone" - ], - "request": { - "$ref": "Host" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "list": { - "id": "compute.hosts.list", - "path": "{project}/zones/{zone}/hosts", - "httpMethod": "GET", - "description": "Retrieves a list of hosts available to the specified project.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "zone": { - "type": "string", - "description": "The name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone" - ], - "response": { - "$ref": "HostList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "setIamPolicy": { - "id": "compute.hosts.setIamPolicy", - "path": "{project}/zones/{zone}/hosts/{resource}/setIamPolicy", - "httpMethod": "POST", - "description": "Sets the access control policy on the specified resource. Replaces any existing policy.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "zone": { - "type": "string", - "description": "The name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "resource" - ], - "request": { - "$ref": "Policy" - }, - "response": { - "$ref": "Policy" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "testIamPermissions": { - "id": "compute.hosts.testIamPermissions", - "path": "{project}/zones/{zone}/hosts/{resource}/testIamPermissions", - "httpMethod": "POST", - "description": "Returns permissions that a caller has on the specified resource.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "zone": { - "type": "string", - "description": "The name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "resource" - ], - "request": { - "$ref": "TestPermissionsRequest" - }, - "response": { - "$ref": "TestPermissionsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - } - } - }, - "httpHealthChecks": { - "methods": { - "delete": { - "id": "compute.httpHealthChecks.delete", - "path": "{project}/global/httpHealthChecks/{httpHealthCheck}", - "httpMethod": "DELETE", - "description": "Deletes the specified HttpHealthCheck resource.", - "parameters": { - "httpHealthCheck": { - "type": "string", - "description": "Name of the HttpHealthCheck resource to delete.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "httpHealthCheck" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "get": { - "id": "compute.httpHealthChecks.get", - "path": "{project}/global/httpHealthChecks/{httpHealthCheck}", - "httpMethod": "GET", - "description": "Returns the specified HttpHealthCheck resource. Get a list of available HTTP health checks by making a list() request.", - "parameters": { - "httpHealthCheck": { - "type": "string", - "description": "Name of the HttpHealthCheck resource to return.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "httpHealthCheck" - ], - "response": { - "$ref": "HttpHealthCheck" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "insert": { - "id": "compute.httpHealthChecks.insert", - "path": "{project}/global/httpHealthChecks", - "httpMethod": "POST", - "description": "Creates a HttpHealthCheck resource in the specified project using the data included in the request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project" - ], - "request": { - "$ref": "HttpHealthCheck" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "list": { - "id": "compute.httpHealthChecks.list", - "path": "{project}/global/httpHealthChecks", - "httpMethod": "GET", - "description": "Retrieves the list of HttpHealthCheck resources available to the specified project.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "HttpHealthCheckList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "patch": { - "id": "compute.httpHealthChecks.patch", - "path": "{project}/global/httpHealthChecks/{httpHealthCheck}", - "httpMethod": "PATCH", - "description": "Updates a HttpHealthCheck resource in the specified project using the data included in the request. This method supports PATCH semantics and uses the JSON merge patch format and processing rules.", - "parameters": { - "httpHealthCheck": { - "type": "string", - "description": "Name of the HttpHealthCheck resource to patch.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "httpHealthCheck" - ], - "request": { - "$ref": "HttpHealthCheck" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "testIamPermissions": { - "id": "compute.httpHealthChecks.testIamPermissions", - "path": "{project}/global/httpHealthChecks/{resource}/testIamPermissions", - "httpMethod": "POST", - "description": "Returns permissions that a caller has on the specified resource.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "(?:[-a-z0-9_]{0,62}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "resource" - ], - "request": { - "$ref": "TestPermissionsRequest" - }, - "response": { - "$ref": "TestPermissionsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "update": { - "id": "compute.httpHealthChecks.update", - "path": "{project}/global/httpHealthChecks/{httpHealthCheck}", - "httpMethod": "PUT", - "description": "Updates a HttpHealthCheck resource in the specified project using the data included in the request.", - "parameters": { - "httpHealthCheck": { - "type": "string", - "description": "Name of the HttpHealthCheck resource to update.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "httpHealthCheck" - ], - "request": { - "$ref": "HttpHealthCheck" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - } - } - }, - "httpsHealthChecks": { - "methods": { - "delete": { - "id": "compute.httpsHealthChecks.delete", - "path": "{project}/global/httpsHealthChecks/{httpsHealthCheck}", - "httpMethod": "DELETE", - "description": "Deletes the specified HttpsHealthCheck resource.", - "parameters": { - "httpsHealthCheck": { - "type": "string", - "description": "Name of the HttpsHealthCheck resource to delete.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "httpsHealthCheck" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "get": { - "id": "compute.httpsHealthChecks.get", - "path": "{project}/global/httpsHealthChecks/{httpsHealthCheck}", - "httpMethod": "GET", - "description": "Returns the specified HttpsHealthCheck resource. Get a list of available HTTPS health checks by making a list() request.", - "parameters": { - "httpsHealthCheck": { - "type": "string", - "description": "Name of the HttpsHealthCheck resource to return.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "httpsHealthCheck" - ], - "response": { - "$ref": "HttpsHealthCheck" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "insert": { - "id": "compute.httpsHealthChecks.insert", - "path": "{project}/global/httpsHealthChecks", - "httpMethod": "POST", - "description": "Creates a HttpsHealthCheck resource in the specified project using the data included in the request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project" - ], - "request": { - "$ref": "HttpsHealthCheck" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "list": { - "id": "compute.httpsHealthChecks.list", - "path": "{project}/global/httpsHealthChecks", - "httpMethod": "GET", - "description": "Retrieves the list of HttpsHealthCheck resources available to the specified project.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "HttpsHealthCheckList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "patch": { - "id": "compute.httpsHealthChecks.patch", - "path": "{project}/global/httpsHealthChecks/{httpsHealthCheck}", - "httpMethod": "PATCH", - "description": "Updates a HttpsHealthCheck resource in the specified project using the data included in the request. This method supports PATCH semantics and uses the JSON merge patch format and processing rules.", - "parameters": { - "httpsHealthCheck": { - "type": "string", - "description": "Name of the HttpsHealthCheck resource to patch.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "httpsHealthCheck" - ], - "request": { - "$ref": "HttpsHealthCheck" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "testIamPermissions": { - "id": "compute.httpsHealthChecks.testIamPermissions", - "path": "{project}/global/httpsHealthChecks/{resource}/testIamPermissions", - "httpMethod": "POST", - "description": "Returns permissions that a caller has on the specified resource.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "(?:[-a-z0-9_]{0,62}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "resource" - ], - "request": { - "$ref": "TestPermissionsRequest" - }, - "response": { - "$ref": "TestPermissionsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "update": { - "id": "compute.httpsHealthChecks.update", - "path": "{project}/global/httpsHealthChecks/{httpsHealthCheck}", - "httpMethod": "PUT", - "description": "Updates a HttpsHealthCheck resource in the specified project using the data included in the request.", - "parameters": { - "httpsHealthCheck": { - "type": "string", - "description": "Name of the HttpsHealthCheck resource to update.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "httpsHealthCheck" - ], - "request": { - "$ref": "HttpsHealthCheck" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - } - } - }, - "images": { - "methods": { - "delete": { - "id": "compute.images.delete", - "path": "{project}/global/images/{image}", - "httpMethod": "DELETE", - "description": "Deletes the specified image.", - "parameters": { - "image": { - "type": "string", - "description": "Name of the image resource to delete.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "image" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "deprecate": { - "id": "compute.images.deprecate", - "path": "{project}/global/images/{image}/deprecate", - "httpMethod": "POST", - "description": "Sets the deprecation status of an image.\n\nIf an empty request body is given, clears the deprecation status instead.", - "parameters": { - "image": { - "type": "string", - "description": "Image name.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "image" - ], - "request": { - "$ref": "DeprecationStatus" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "get": { - "id": "compute.images.get", - "path": "{project}/global/images/{image}", - "httpMethod": "GET", - "description": "Returns the specified image. Get a list of available images by making a list() request.", - "parameters": { - "image": { - "type": "string", - "description": "Name of the image resource to return.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "image" - ], - "response": { - "$ref": "Image" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "getFromFamily": { - "id": "compute.images.getFromFamily", - "path": "{project}/global/images/family/{family}", - "httpMethod": "GET", - "description": "Returns the latest image that is part of an image family and is not deprecated.", - "parameters": { - "family": { - "type": "string", - "description": "Name of the image family to search for.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "family" - ], - "response": { - "$ref": "Image" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "getIamPolicy": { - "id": "compute.images.getIamPolicy", - "path": "{project}/global/images/{resource}/getIamPolicy", - "httpMethod": "GET", - "description": "Gets the access control policy for a resource. May be empty if no such policy or resource exists.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "[a-z0-9](?:[-a-z0-9_]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "resource" - ], - "response": { - "$ref": "Policy" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "insert": { - "id": "compute.images.insert", - "path": "{project}/global/images", - "httpMethod": "POST", - "description": "Creates an image in the specified project using the data included in the request.", - "parameters": { - "forceCreate": { - "type": "boolean", - "description": "Force image creation if true.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project" - ], - "request": { - "$ref": "Image" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/devstorage.full_control", - "https://www.googleapis.com/auth/devstorage.read_only", - "https://www.googleapis.com/auth/devstorage.read_write" - ] - }, - "list": { - "id": "compute.images.list", - "path": "{project}/global/images", - "httpMethod": "GET", - "description": "Retrieves the list of custom images available to the specified project. Custom images are images you create that belong to your project. This method does not get any images that belong to other projects, including publicly-available images, like Debian 8. If you want to get a list of publicly-available images, use this method to make a request to the respective image project, such as debian-cloud or windows-cloud.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "ImageList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "setIamPolicy": { - "id": "compute.images.setIamPolicy", - "path": "{project}/global/images/{resource}/setIamPolicy", - "httpMethod": "POST", - "description": "Sets the access control policy on the specified resource. Replaces any existing policy.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "[a-z0-9](?:[-a-z0-9_]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "resource" - ], - "request": { - "$ref": "Policy" - }, - "response": { - "$ref": "Policy" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "setLabels": { - "id": "compute.images.setLabels", - "path": "{project}/global/images/{resource}/setLabels", - "httpMethod": "POST", - "description": "Sets the labels on an image. To learn more about labels, read the Labeling Resources documentation.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "resource" - ], - "request": { - "$ref": "GlobalSetLabelsRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "testIamPermissions": { - "id": "compute.images.testIamPermissions", - "path": "{project}/global/images/{resource}/testIamPermissions", - "httpMethod": "POST", - "description": "Returns permissions that a caller has on the specified resource.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "(?:[-a-z0-9_]{0,62}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "resource" - ], - "request": { - "$ref": "TestPermissionsRequest" - }, - "response": { - "$ref": "TestPermissionsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - } - } - }, - "instanceGroupManagers": { - "methods": { - "abandonInstances": { - "id": "compute.instanceGroupManagers.abandonInstances", - "path": "{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/abandonInstances", - "httpMethod": "POST", - "description": "Schedules a group action to remove the specified instances from the managed instance group. Abandoning an instance does not delete the instance, but it does remove the instance from any target pools that are applied by the managed instance group. This method reduces the targetSize of the managed instance group by the number of instances that you abandon. This operation is marked as DONE when the action is scheduled even if the instances have not yet been removed from the group. You must separately verify the status of the abandoning action with the listmanagedinstances method.\n\nIf the group is part of a backend service that has enabled connection draining, it can take up to 60 seconds after the connection draining duration has elapsed before the VM instance is removed or deleted.\n\nYou can specify a maximum of 1000 instances with this method per request.", - "parameters": { - "instanceGroupManager": { - "type": "string", - "description": "The name of the managed instance group.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "zone": { - "type": "string", - "description": "The name of the zone where the managed instance group is located.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "instanceGroupManager" - ], - "request": { - "$ref": "InstanceGroupManagersAbandonInstancesRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "aggregatedList": { - "id": "compute.instanceGroupManagers.aggregatedList", - "path": "{project}/aggregated/instanceGroupManagers", - "httpMethod": "GET", - "description": "Retrieves the list of managed instance groups and groups them by zone.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "InstanceGroupManagerAggregatedList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "applyUpdatesToInstances": { - "id": "compute.instanceGroupManagers.applyUpdatesToInstances", - "path": "{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/applyUpdatesToInstances", - "httpMethod": "POST", - "description": "Apply changes to selected instances on the managed instance group. This method can be used to apply new overrides and/or new versions.", - "parameters": { - "instanceGroupManager": { - "type": "string", - "description": "The name of the managed instance group, should conform to RFC1035.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "zone": { - "type": "string", - "description": "The name of the zone where the managed instance group is located. Should conform to RFC1035.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "instanceGroupManager" - ], - "request": { - "$ref": "InstanceGroupManagersApplyUpdatesRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "delete": { - "id": "compute.instanceGroupManagers.delete", - "path": "{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}", - "httpMethod": "DELETE", - "description": "Deletes the specified managed instance group and all of the instances in that group. Note that the instance group must not belong to a backend service. Read Deleting an instance group for more information.", - "parameters": { - "instanceGroupManager": { - "type": "string", - "description": "The name of the managed instance group to delete.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "zone": { - "type": "string", - "description": "The name of the zone where the managed instance group is located.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "instanceGroupManager" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "deleteInstances": { - "id": "compute.instanceGroupManagers.deleteInstances", - "path": "{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/deleteInstances", - "httpMethod": "POST", - "description": "Schedules a group action to delete the specified instances in the managed instance group. The instances are also removed from any target pools of which they were a member. This method reduces the targetSize of the managed instance group by the number of instances that you delete. This operation is marked as DONE when the action is scheduled even if the instances are still being deleted. You must separately verify the status of the deleting action with the listmanagedinstances method.\n\nIf the group is part of a backend service that has enabled connection draining, it can take up to 60 seconds after the connection draining duration has elapsed before the VM instance is removed or deleted.\n\nYou can specify a maximum of 1000 instances with this method per request.", - "parameters": { - "instanceGroupManager": { - "type": "string", - "description": "The name of the managed instance group.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "zone": { - "type": "string", - "description": "The name of the zone where the managed instance group is located.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "instanceGroupManager" - ], - "request": { - "$ref": "InstanceGroupManagersDeleteInstancesRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "deletePerInstanceConfigs": { - "id": "compute.instanceGroupManagers.deletePerInstanceConfigs", - "path": "{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/deletePerInstanceConfigs", - "httpMethod": "POST", - "description": "Delete selected per-instance configs for the managed instance group.", - "parameters": { - "instanceGroupManager": { - "type": "string", - "description": "The name of the managed instance group. It should conform to RFC1035.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "zone": { - "type": "string", - "description": "The name of the zone where the managed instance group is located. It should conform to RFC1035.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "instanceGroupManager" - ], - "request": { - "$ref": "InstanceGroupManagersDeletePerInstanceConfigsReq" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "get": { - "id": "compute.instanceGroupManagers.get", - "path": "{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}", - "httpMethod": "GET", - "description": "Returns all of the details about the specified managed instance group. Get a list of available managed instance groups by making a list() request.", - "parameters": { - "instanceGroupManager": { - "type": "string", - "description": "The name of the managed instance group.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "zone": { - "type": "string", - "description": "The name of the zone where the managed instance group is located.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "instanceGroupManager" - ], - "response": { - "$ref": "InstanceGroupManager" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "insert": { - "id": "compute.instanceGroupManagers.insert", - "path": "{project}/zones/{zone}/instanceGroupManagers", - "httpMethod": "POST", - "description": "Creates a managed instance group using the information that you specify in the request. After the group is created, it schedules an action to create instances in the group using the specified instance template. This operation is marked as DONE when the group is created even if the instances in the group have not yet been created. You must separately verify the status of the individual instances with the listmanagedinstances method.\n\nA managed instance group can have up to 1000 VM instances per group. Please contact Cloud Support if you need an increase in this limit.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "zone": { - "type": "string", - "description": "The name of the zone where you want to create the managed instance group.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone" - ], - "request": { - "$ref": "InstanceGroupManager" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "list": { - "id": "compute.instanceGroupManagers.list", - "path": "{project}/zones/{zone}/instanceGroupManagers", - "httpMethod": "GET", - "description": "Retrieves a list of managed instance groups that are contained within the specified project and zone.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "zone": { - "type": "string", - "description": "The name of the zone where the managed instance group is located.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone" - ], - "response": { - "$ref": "InstanceGroupManagerList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "listManagedInstances": { - "id": "compute.instanceGroupManagers.listManagedInstances", - "path": "{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/listManagedInstances", - "httpMethod": "POST", - "description": "Lists all of the instances in the managed instance group. Each instance in the list has a currentAction, which indicates the action that the managed instance group is performing on the instance. For example, if the group is still creating an instance, the currentAction is CREATING. If a previous action failed, the list displays the errors for that failed action.", - "parameters": { - "filter": { - "type": "string", - "location": "query" - }, - "instanceGroupManager": { - "type": "string", - "description": "The name of the managed instance group.", - "required": true, - "location": "path" - }, - "maxResults": { - "type": "integer", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "order_by": { - "type": "string", - "location": "query" - }, - "pageToken": { - "type": "string", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "zone": { - "type": "string", - "description": "The name of the zone where the managed instance group is located.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "instanceGroupManager" - ], - "response": { - "$ref": "InstanceGroupManagersListManagedInstancesResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "listPerInstanceConfigs": { - "id": "compute.instanceGroupManagers.listPerInstanceConfigs", - "path": "{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/listPerInstanceConfigs", - "httpMethod": "POST", - "description": "Lists all of the per-instance configs defined for the managed instance group.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "instanceGroupManager": { - "type": "string", - "description": "The name of the managed instance group. It should conform to RFC1035.", - "required": true, - "location": "path" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "zone": { - "type": "string", - "description": "The name of the zone where the managed instance group is located. It should conform to RFC1035.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "instanceGroupManager" - ], - "response": { - "$ref": "InstanceGroupManagersListPerInstanceConfigsResp" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "patch": { - "id": "compute.instanceGroupManagers.patch", - "path": "{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}", - "httpMethod": "PATCH", - "description": "Updates a managed instance group using the information that you specify in the request. This operation is marked as DONE when the group is patched even if the instances in the group are still in the process of being patched. You must separately verify the status of the individual instances with the listManagedInstances method. This method supports PATCH semantics and uses the JSON merge patch format and processing rules.", - "parameters": { - "instanceGroupManager": { - "type": "string", - "description": "The name of the instance group manager.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "zone": { - "type": "string", - "description": "The name of the zone where you want to create the managed instance group.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "instanceGroupManager" - ], - "request": { - "$ref": "InstanceGroupManager" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "recreateInstances": { - "id": "compute.instanceGroupManagers.recreateInstances", - "path": "{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/recreateInstances", - "httpMethod": "POST", - "description": "Schedules a group action to recreate the specified instances in the managed instance group. The instances are deleted and recreated using the current instance template for the managed instance group. This operation is marked as DONE when the action is scheduled even if the instances have not yet been recreated. You must separately verify the status of the recreating action with the listmanagedinstances method.\n\nIf the group is part of a backend service that has enabled connection draining, it can take up to 60 seconds after the connection draining duration has elapsed before the VM instance is removed or deleted.\n\nYou can specify a maximum of 1000 instances with this method per request.", - "parameters": { - "instanceGroupManager": { - "type": "string", - "description": "The name of the managed instance group.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "zone": { - "type": "string", - "description": "The name of the zone where the managed instance group is located.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "instanceGroupManager" - ], - "request": { - "$ref": "InstanceGroupManagersRecreateInstancesRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "resize": { - "id": "compute.instanceGroupManagers.resize", - "path": "{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/resize", - "httpMethod": "POST", - "description": "Resizes the managed instance group. If you increase the size, the group creates new instances using the current instance template. If you decrease the size, the group deletes instances. The resize operation is marked DONE when the resize actions are scheduled even if the group has not yet added or deleted any instances. You must separately verify the status of the creating or deleting actions with the listmanagedinstances method.\n\nIf the group is part of a backend service that has enabled connection draining, it can take up to 60 seconds after the connection draining duration has elapsed before the VM instance is removed or deleted.", - "parameters": { - "instanceGroupManager": { - "type": "string", - "description": "The name of the managed instance group.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "size": { - "type": "integer", - "description": "The number of running instances that the managed instance group should maintain at any given time. The group automatically adds or removes instances to maintain the number of instances specified by this parameter.", - "required": true, - "format": "int32", - "location": "query" - }, - "zone": { - "type": "string", - "description": "The name of the zone where the managed instance group is located.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "instanceGroupManager", - "size" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "resizeAdvanced": { - "id": "compute.instanceGroupManagers.resizeAdvanced", - "path": "{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/resizeAdvanced", - "httpMethod": "POST", - "description": "Resizes the managed instance group with advanced configuration options like disabling creation retries. This is an extended version of the resize method.\n\nIf you increase the size of the instance group, the group creates new instances using the current instance template. If you decrease the size, the group deletes instances. The resize operation is marked DONE when the resize actions are scheduled even if the group has not yet added or deleted any instances. You must separately verify the status of the creating, creatingWithoutRetries, or deleting actions with the get or listmanagedinstances method.\n\nIf the group is part of a backend service that has enabled connection draining, it can take up to 60 seconds after the connection draining duration has elapsed before the VM instance is removed or deleted.", - "parameters": { - "instanceGroupManager": { - "type": "string", - "description": "The name of the managed instance group.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "zone": { - "type": "string", - "description": "The name of the zone where the managed instance group is located.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "instanceGroupManager" - ], - "request": { - "$ref": "InstanceGroupManagersResizeAdvancedRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "setAutoHealingPolicies": { - "id": "compute.instanceGroupManagers.setAutoHealingPolicies", - "path": "{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/setAutoHealingPolicies", - "httpMethod": "POST", - "description": "Modifies the autohealing policies.", - "parameters": { - "instanceGroupManager": { - "type": "string", - "description": "The name of the instance group manager.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "zone": { - "type": "string", - "description": "The name of the zone where the managed instance group is located.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "instanceGroupManager" - ], - "request": { - "$ref": "InstanceGroupManagersSetAutoHealingRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "setInstanceTemplate": { - "id": "compute.instanceGroupManagers.setInstanceTemplate", - "path": "{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/setInstanceTemplate", - "httpMethod": "POST", - "description": "Specifies the instance template to use when creating new instances in this group. The templates for existing instances in the group do not change unless you recreate them.", - "parameters": { - "instanceGroupManager": { - "type": "string", - "description": "The name of the managed instance group.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "zone": { - "type": "string", - "description": "The name of the zone where the managed instance group is located.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "instanceGroupManager" - ], - "request": { - "$ref": "InstanceGroupManagersSetInstanceTemplateRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "setTargetPools": { - "id": "compute.instanceGroupManagers.setTargetPools", - "path": "{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/setTargetPools", - "httpMethod": "POST", - "description": "Modifies the target pools to which all instances in this managed instance group are assigned. The target pools automatically apply to all of the instances in the managed instance group. This operation is marked DONE when you make the request even if the instances have not yet been added to their target pools. The change might take some time to apply to all of the instances in the group depending on the size of the group.", - "parameters": { - "instanceGroupManager": { - "type": "string", - "description": "The name of the managed instance group.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "zone": { - "type": "string", - "description": "The name of the zone where the managed instance group is located.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "instanceGroupManager" - ], - "request": { - "$ref": "InstanceGroupManagersSetTargetPoolsRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "testIamPermissions": { - "id": "compute.instanceGroupManagers.testIamPermissions", - "path": "{project}/zones/{zone}/instanceGroupManagers/{resource}/testIamPermissions", - "httpMethod": "POST", - "description": "Returns permissions that a caller has on the specified resource.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "zone": { - "type": "string", - "description": "The name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "resource" - ], - "request": { - "$ref": "TestPermissionsRequest" - }, - "response": { - "$ref": "TestPermissionsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "update": { - "id": "compute.instanceGroupManagers.update", - "path": "{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}", - "httpMethod": "PUT", - "description": "Updates a managed instance group using the information that you specify in the request. This operation is marked as DONE when the group is updated even if the instances in the group have not yet been updated. You must separately verify the status of the individual instances with the listManagedInstances method.", - "parameters": { - "instanceGroupManager": { - "type": "string", - "description": "The name of the instance group manager.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "zone": { - "type": "string", - "description": "The name of the zone where you want to create the managed instance group.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "instanceGroupManager" - ], - "request": { - "$ref": "InstanceGroupManager" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "updatePerInstanceConfigs": { - "id": "compute.instanceGroupManagers.updatePerInstanceConfigs", - "path": "{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/updatePerInstanceConfigs", - "httpMethod": "POST", - "description": "Insert or patch (for the ones that already exist) per-instance configs for the managed instance group. perInstanceConfig.instance serves as a key used to distinguish whether to perform insert or patch.", - "parameters": { - "instanceGroupManager": { - "type": "string", - "description": "The name of the managed instance group. It should conform to RFC1035.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "zone": { - "type": "string", - "description": "The name of the zone where the managed instance group is located. It should conform to RFC1035.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "instanceGroupManager" - ], - "request": { - "$ref": "InstanceGroupManagersUpdatePerInstanceConfigsReq" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - } - } - }, - "instanceGroups": { - "methods": { - "addInstances": { - "id": "compute.instanceGroups.addInstances", - "path": "{project}/zones/{zone}/instanceGroups/{instanceGroup}/addInstances", - "httpMethod": "POST", - "description": "Adds a list of instances to the specified instance group. All of the instances in the instance group must be in the same network/subnetwork. Read Adding instances for more information.", - "parameters": { - "instanceGroup": { - "type": "string", - "description": "The name of the instance group where you are adding instances.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "zone": { - "type": "string", - "description": "The name of the zone where the instance group is located.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "instanceGroup" - ], - "request": { - "$ref": "InstanceGroupsAddInstancesRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "aggregatedList": { - "id": "compute.instanceGroups.aggregatedList", - "path": "{project}/aggregated/instanceGroups", - "httpMethod": "GET", - "description": "Retrieves the list of instance groups and sorts them by zone.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "InstanceGroupAggregatedList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "delete": { - "id": "compute.instanceGroups.delete", - "path": "{project}/zones/{zone}/instanceGroups/{instanceGroup}", - "httpMethod": "DELETE", - "description": "Deletes the specified instance group. The instances in the group are not deleted. Note that instance group must not belong to a backend service. Read Deleting an instance group for more information.", - "parameters": { - "instanceGroup": { - "type": "string", - "description": "The name of the instance group to delete.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "zone": { - "type": "string", - "description": "The name of the zone where the instance group is located.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "instanceGroup" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "get": { - "id": "compute.instanceGroups.get", - "path": "{project}/zones/{zone}/instanceGroups/{instanceGroup}", - "httpMethod": "GET", - "description": "Returns the specified instance group. Get a list of available instance groups by making a list() request.", - "parameters": { - "instanceGroup": { - "type": "string", - "description": "The name of the instance group.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "zone": { - "type": "string", - "description": "The name of the zone where the instance group is located.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "instanceGroup" - ], - "response": { - "$ref": "InstanceGroup" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "insert": { - "id": "compute.instanceGroups.insert", - "path": "{project}/zones/{zone}/instanceGroups", - "httpMethod": "POST", - "description": "Creates an instance group in the specified project using the parameters that are included in the request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "zone": { - "type": "string", - "description": "The name of the zone where you want to create the instance group.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone" - ], - "request": { - "$ref": "InstanceGroup" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "list": { - "id": "compute.instanceGroups.list", - "path": "{project}/zones/{zone}/instanceGroups", - "httpMethod": "GET", - "description": "Retrieves the list of instance groups that are located in the specified project and zone.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "zone": { - "type": "string", - "description": "The name of the zone where the instance group is located.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone" - ], - "response": { - "$ref": "InstanceGroupList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "listInstances": { - "id": "compute.instanceGroups.listInstances", - "path": "{project}/zones/{zone}/instanceGroups/{instanceGroup}/listInstances", - "httpMethod": "POST", - "description": "Lists the instances in the specified instance group.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "instanceGroup": { - "type": "string", - "description": "The name of the instance group from which you want to generate a list of included instances.", - "required": true, - "location": "path" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "zone": { - "type": "string", - "description": "The name of the zone where the instance group is located.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "instanceGroup" - ], - "request": { - "$ref": "InstanceGroupsListInstancesRequest" - }, - "response": { - "$ref": "InstanceGroupsListInstances" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "removeInstances": { - "id": "compute.instanceGroups.removeInstances", - "path": "{project}/zones/{zone}/instanceGroups/{instanceGroup}/removeInstances", - "httpMethod": "POST", - "description": "Removes one or more instances from the specified instance group, but does not delete those instances.\n\nIf the group is part of a backend service that has enabled connection draining, it can take up to 60 seconds after the connection draining duration before the VM instance is removed or deleted.", - "parameters": { - "instanceGroup": { - "type": "string", - "description": "The name of the instance group where the specified instances will be removed.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "zone": { - "type": "string", - "description": "The name of the zone where the instance group is located.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "instanceGroup" - ], - "request": { - "$ref": "InstanceGroupsRemoveInstancesRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "setNamedPorts": { - "id": "compute.instanceGroups.setNamedPorts", - "path": "{project}/zones/{zone}/instanceGroups/{instanceGroup}/setNamedPorts", - "httpMethod": "POST", - "description": "Sets the named ports for the specified instance group.", - "parameters": { - "instanceGroup": { - "type": "string", - "description": "The name of the instance group where the named ports are updated.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "zone": { - "type": "string", - "description": "The name of the zone where the instance group is located.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "instanceGroup" - ], - "request": { - "$ref": "InstanceGroupsSetNamedPortsRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "testIamPermissions": { - "id": "compute.instanceGroups.testIamPermissions", - "path": "{project}/zones/{zone}/instanceGroups/{resource}/testIamPermissions", - "httpMethod": "POST", - "description": "Returns permissions that a caller has on the specified resource.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "zone": { - "type": "string", - "description": "The name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "resource" - ], - "request": { - "$ref": "TestPermissionsRequest" - }, - "response": { - "$ref": "TestPermissionsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - } - } - }, - "instanceTemplates": { - "methods": { - "delete": { - "id": "compute.instanceTemplates.delete", - "path": "{project}/global/instanceTemplates/{instanceTemplate}", - "httpMethod": "DELETE", - "description": "Deletes the specified instance template. Deleting an instance template is permanent and cannot be undone. It's not possible to delete templates which are in use by an instance group.", - "parameters": { - "instanceTemplate": { - "type": "string", - "description": "The name of the instance template to delete.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "instanceTemplate" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "get": { - "id": "compute.instanceTemplates.get", - "path": "{project}/global/instanceTemplates/{instanceTemplate}", - "httpMethod": "GET", - "description": "Returns the specified instance template. Get a list of available instance templates by making a list() request.", - "parameters": { - "instanceTemplate": { - "type": "string", - "description": "The name of the instance template.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "instanceTemplate" - ], - "response": { - "$ref": "InstanceTemplate" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "insert": { - "id": "compute.instanceTemplates.insert", - "path": "{project}/global/instanceTemplates", - "httpMethod": "POST", - "description": "Creates an instance template in the specified project using the data that is included in the request. If you are creating a new template to update an existing instance group, your new instance template must use the same network or, if applicable, the same subnetwork as the original template.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project" - ], - "request": { - "$ref": "InstanceTemplate" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "list": { - "id": "compute.instanceTemplates.list", - "path": "{project}/global/instanceTemplates", - "httpMethod": "GET", - "description": "Retrieves a list of instance templates that are contained within the specified project and zone.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "InstanceTemplateList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "testIamPermissions": { - "id": "compute.instanceTemplates.testIamPermissions", - "path": "{project}/global/instanceTemplates/{resource}/testIamPermissions", - "httpMethod": "POST", - "description": "Returns permissions that a caller has on the specified resource.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "(?:[-a-z0-9_]{0,62}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "resource" - ], - "request": { - "$ref": "TestPermissionsRequest" - }, - "response": { - "$ref": "TestPermissionsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - } - } - }, - "instances": { - "methods": { - "addAccessConfig": { - "id": "compute.instances.addAccessConfig", - "path": "{project}/zones/{zone}/instances/{instance}/addAccessConfig", - "httpMethod": "POST", - "description": "Adds an access config to an instance's network interface.", - "parameters": { - "instance": { - "type": "string", - "description": "The instance name for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "networkInterface": { - "type": "string", - "description": "The name of the network interface to add to this instance.", - "required": true, - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "zone": { - "type": "string", - "description": "The name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "instance", - "networkInterface" - ], - "request": { - "$ref": "AccessConfig" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "addMaintenancePolicies": { - "id": "compute.instances.addMaintenancePolicies", - "path": "{project}/zones/{zone}/instances/{instance}/addMaintenancePolicies", - "httpMethod": "POST", - "description": "Adds existing maintenance policies to an instance. You can only add one policy right now which will be applied to this instance for scheduling live migrations.", - "parameters": { - "instance": { - "type": "string", - "description": "The instance name for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "zone": { - "type": "string", - "description": "The name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "instance" - ], - "request": { - "$ref": "InstancesAddMaintenancePoliciesRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "aggregatedList": { - "id": "compute.instances.aggregatedList", - "path": "{project}/aggregated/instances", - "httpMethod": "GET", - "description": "Retrieves aggregated list of instances.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "InstanceAggregatedList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "attachDisk": { - "id": "compute.instances.attachDisk", - "path": "{project}/zones/{zone}/instances/{instance}/attachDisk", - "httpMethod": "POST", - "description": "Attaches an existing Disk resource to an instance. You must first create the disk before you can attach it. It is not possible to create and attach a disk at the same time. For more information, read Adding a persistent disk to your instance.", - "parameters": { - "forceAttach": { - "type": "boolean", - "description": "Whether to force attach the disk even if it's currently attached to another instance. This is only available for regional disks.", - "location": "query" - }, - "instance": { - "type": "string", - "description": "The instance name for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "zone": { - "type": "string", - "description": "The name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "instance" - ], - "request": { - "$ref": "AttachedDisk" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "delete": { - "id": "compute.instances.delete", - "path": "{project}/zones/{zone}/instances/{instance}", - "httpMethod": "DELETE", - "description": "Deletes the specified Instance resource. For more information, see Stopping or Deleting an Instance.", - "parameters": { - "instance": { - "type": "string", - "description": "Name of the instance resource to delete.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "zone": { - "type": "string", - "description": "The name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "instance" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "deleteAccessConfig": { - "id": "compute.instances.deleteAccessConfig", - "path": "{project}/zones/{zone}/instances/{instance}/deleteAccessConfig", - "httpMethod": "POST", - "description": "Deletes an access config from an instance's network interface.", - "parameters": { - "accessConfig": { - "type": "string", - "description": "The name of the access config to delete.", - "required": true, - "location": "query" - }, - "instance": { - "type": "string", - "description": "The instance name for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "networkInterface": { - "type": "string", - "description": "The name of the network interface.", - "required": true, - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "zone": { - "type": "string", - "description": "The name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "instance", - "accessConfig", - "networkInterface" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "detachDisk": { - "id": "compute.instances.detachDisk", - "path": "{project}/zones/{zone}/instances/{instance}/detachDisk", - "httpMethod": "POST", - "description": "Detaches a disk from an instance.", - "parameters": { - "deviceName": { - "type": "string", - "description": "Disk device name to detach.", - "required": true, - "location": "query" - }, - "instance": { - "type": "string", - "description": "Instance name.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "zone": { - "type": "string", - "description": "The name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "instance", - "deviceName" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "get": { - "id": "compute.instances.get", - "path": "{project}/zones/{zone}/instances/{instance}", - "httpMethod": "GET", - "description": "Returns the specified Instance resource. Get a list of available instances by making a list() request.", - "parameters": { - "instance": { - "type": "string", - "description": "Name of the instance resource to return.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "zone": { - "type": "string", - "description": "The name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "instance" - ], - "response": { - "$ref": "Instance" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "getGuestAttributes": { - "id": "compute.instances.getGuestAttributes", - "path": "{project}/zones/{zone}/instances/{instance}/getGuestAttributes", - "httpMethod": "GET", - "description": "Returns the specified guest attributes entry.", - "parameters": { - "instance": { - "type": "string", - "description": "Name of the instance scoping this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "variableKey": { - "type": "string", - "description": "Specifies the key for the guest attributes entry.", - "location": "query" - }, - "zone": { - "type": "string", - "description": "The name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "instance" - ], - "response": { - "$ref": "GuestAttributes" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "getIamPolicy": { - "id": "compute.instances.getIamPolicy", - "path": "{project}/zones/{zone}/instances/{resource}/getIamPolicy", - "httpMethod": "GET", - "description": "Gets the access control policy for a resource. May be empty if no such policy or resource exists.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "zone": { - "type": "string", - "description": "The name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "resource" - ], - "response": { - "$ref": "Policy" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "getSerialPortOutput": { - "id": "compute.instances.getSerialPortOutput", - "path": "{project}/zones/{zone}/instances/{instance}/serialPort", - "httpMethod": "GET", - "description": "Returns the specified instance's serial port output.", - "parameters": { - "instance": { - "type": "string", - "description": "Name of the instance scoping this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "port": { - "type": "integer", - "description": "Specifies which COM or serial port to retrieve data from.", - "default": "1", - "format": "int32", - "minimum": "1", - "maximum": "4", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "start": { - "type": "string", - "description": "Returns output starting from a specific byte position. Use this to page through output when the output is too large to return in a single request. For the initial request, leave this field unspecified. For subsequent calls, this field should be set to the next value returned in the previous call.", - "format": "int64", - "location": "query" - }, - "zone": { - "type": "string", - "description": "The name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "instance" - ], - "response": { - "$ref": "SerialPortOutput" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "insert": { - "id": "compute.instances.insert", - "path": "{project}/zones/{zone}/instances", - "httpMethod": "POST", - "description": "Creates an instance resource in the specified project using the data included in the request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "sourceInstanceTemplate": { - "type": "string", - "description": "Specifies instance template to create the instance.\n\nThis field is optional. It can be a full or partial URL. For example, the following are all valid URLs to an instance template: \n- https://www.googleapis.com/compute/v1/projects/project/global/global/instanceTemplates/instanceTemplate \n- projects/project/global/global/instanceTemplates/instanceTemplate \n- global/instancesTemplates/instanceTemplate", - "location": "query" - }, - "zone": { - "type": "string", - "description": "The name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone" - ], - "request": { - "$ref": "Instance" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "list": { - "id": "compute.instances.list", - "path": "{project}/zones/{zone}/instances", - "httpMethod": "GET", - "description": "Retrieves the list of instances contained within the specified zone.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "zone": { - "type": "string", - "description": "The name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone" - ], - "response": { - "$ref": "InstanceList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "listReferrers": { - "id": "compute.instances.listReferrers", - "path": "{project}/zones/{zone}/instances/{instance}/referrers", - "httpMethod": "GET", - "description": "Retrieves the list of referrers to instances contained within the specified zone.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "instance": { - "type": "string", - "description": "Name of the target instance scoping this request, or '-' if the request should span over all instances in the container.", - "required": true, - "pattern": "-|[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "zone": { - "type": "string", - "description": "The name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "instance" - ], - "response": { - "$ref": "InstanceListReferrers" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "removeMaintenancePolicies": { - "id": "compute.instances.removeMaintenancePolicies", - "path": "{project}/zones/{zone}/instances/{instance}/removeMaintenancePolicies", - "httpMethod": "POST", - "description": "Removes maintenance policies from an instance.", - "parameters": { - "instance": { - "type": "string", - "description": "The instance name for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "zone": { - "type": "string", - "description": "The name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "instance" - ], - "request": { - "$ref": "InstancesRemoveMaintenancePoliciesRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "reset": { - "id": "compute.instances.reset", - "path": "{project}/zones/{zone}/instances/{instance}/reset", - "httpMethod": "POST", - "description": "Performs a reset on the instance. For more information, see Resetting an instance.", - "parameters": { - "instance": { - "type": "string", - "description": "Name of the instance scoping this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "zone": { - "type": "string", - "description": "The name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "instance" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "resume": { - "id": "compute.instances.resume", - "path": "{project}/zones/{zone}/instances/{instance}/resume", - "httpMethod": "POST", - "description": "Resumes an instance that was suspended using the instances().suspend method.", - "parameters": { - "instance": { - "type": "string", - "description": "Name of the instance resource to resume.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "zone": { - "type": "string", - "description": "The name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "instance" - ], - "request": { - "$ref": "InstancesResumeRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "setDeletionProtection": { - "id": "compute.instances.setDeletionProtection", - "path": "{project}/zones/{zone}/instances/{resource}/setDeletionProtection", - "httpMethod": "POST", - "description": "Sets deletion protection on the instance.", - "parameters": { - "deletionProtection": { - "type": "boolean", - "description": "Whether the resource should be protected against deletion.", - "default": "true", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "zone": { - "type": "string", - "description": "The name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "resource" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "setDiskAutoDelete": { - "id": "compute.instances.setDiskAutoDelete", - "path": "{project}/zones/{zone}/instances/{instance}/setDiskAutoDelete", - "httpMethod": "POST", - "description": "Sets the auto-delete flag for a disk attached to an instance.", - "parameters": { - "autoDelete": { - "type": "boolean", - "description": "Whether to auto-delete the disk when the instance is deleted.", - "required": true, - "location": "query" - }, - "deviceName": { - "type": "string", - "description": "The device name of the disk to modify.", - "required": true, - "pattern": "\\w[\\w.-]{0,254}", - "location": "query" - }, - "instance": { - "type": "string", - "description": "The instance name.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "zone": { - "type": "string", - "description": "The name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "instance", - "autoDelete", - "deviceName" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "setIamPolicy": { - "id": "compute.instances.setIamPolicy", - "path": "{project}/zones/{zone}/instances/{resource}/setIamPolicy", - "httpMethod": "POST", - "description": "Sets the access control policy on the specified resource. Replaces any existing policy.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "zone": { - "type": "string", - "description": "The name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "resource" - ], - "request": { - "$ref": "Policy" - }, - "response": { - "$ref": "Policy" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "setLabels": { - "id": "compute.instances.setLabels", - "path": "{project}/zones/{zone}/instances/{instance}/setLabels", - "httpMethod": "POST", - "description": "Sets labels on an instance. To learn more about labels, read the Labeling Resources documentation.", - "parameters": { - "instance": { - "type": "string", - "description": "Name of the instance scoping this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "zone": { - "type": "string", - "description": "The name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "instance" - ], - "request": { - "$ref": "InstancesSetLabelsRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "setMachineResources": { - "id": "compute.instances.setMachineResources", - "path": "{project}/zones/{zone}/instances/{instance}/setMachineResources", - "httpMethod": "POST", - "description": "Changes the number and/or type of accelerator for a stopped instance to the values specified in the request.", - "parameters": { - "instance": { - "type": "string", - "description": "Name of the instance scoping this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "zone": { - "type": "string", - "description": "The name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "instance" - ], - "request": { - "$ref": "InstancesSetMachineResourcesRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "setMachineType": { - "id": "compute.instances.setMachineType", - "path": "{project}/zones/{zone}/instances/{instance}/setMachineType", - "httpMethod": "POST", - "description": "Changes the machine type for a stopped instance to the machine type specified in the request.", - "parameters": { - "instance": { - "type": "string", - "description": "Name of the instance scoping this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "zone": { - "type": "string", - "description": "The name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "instance" - ], - "request": { - "$ref": "InstancesSetMachineTypeRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "setMetadata": { - "id": "compute.instances.setMetadata", - "path": "{project}/zones/{zone}/instances/{instance}/setMetadata", - "httpMethod": "POST", - "description": "Sets metadata for the specified instance to the data included in the request.", - "parameters": { - "instance": { - "type": "string", - "description": "Name of the instance scoping this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "zone": { - "type": "string", - "description": "The name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "instance" - ], - "request": { - "$ref": "Metadata" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "setMinCpuPlatform": { - "id": "compute.instances.setMinCpuPlatform", - "path": "{project}/zones/{zone}/instances/{instance}/setMinCpuPlatform", - "httpMethod": "POST", - "description": "Changes the minimum CPU platform that this instance should use. This method can only be called on a stopped instance. For more information, read Specifying a Minimum CPU Platform.", - "parameters": { - "instance": { - "type": "string", - "description": "Name of the instance scoping this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "zone": { - "type": "string", - "description": "The name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "instance" - ], - "request": { - "$ref": "InstancesSetMinCpuPlatformRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "setScheduling": { - "id": "compute.instances.setScheduling", - "path": "{project}/zones/{zone}/instances/{instance}/setScheduling", - "httpMethod": "POST", - "description": "Sets an instance's scheduling options.", - "parameters": { - "instance": { - "type": "string", - "description": "Instance name.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "zone": { - "type": "string", - "description": "The name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "instance" - ], - "request": { - "$ref": "Scheduling" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "setServiceAccount": { - "id": "compute.instances.setServiceAccount", - "path": "{project}/zones/{zone}/instances/{instance}/setServiceAccount", - "httpMethod": "POST", - "description": "Sets the service account on the instance. For more information, read Changing the service account and access scopes for an instance.", - "parameters": { - "instance": { - "type": "string", - "description": "Name of the instance resource to start.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "zone": { - "type": "string", - "description": "The name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "instance" - ], - "request": { - "$ref": "InstancesSetServiceAccountRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "setTags": { - "id": "compute.instances.setTags", - "path": "{project}/zones/{zone}/instances/{instance}/setTags", - "httpMethod": "POST", - "description": "Sets tags for the specified instance to the data included in the request.", - "parameters": { - "instance": { - "type": "string", - "description": "Name of the instance scoping this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "zone": { - "type": "string", - "description": "The name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "instance" - ], - "request": { - "$ref": "Tags" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "simulateMaintenanceEvent": { - "id": "compute.instances.simulateMaintenanceEvent", - "path": "{project}/zones/{zone}/instances/{instance}/simulateMaintenanceEvent", - "httpMethod": "POST", - "description": "Simulates a maintenance event on the instance.", - "parameters": { - "instance": { - "type": "string", - "description": "Name of the instance scoping this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "zone": { - "type": "string", - "description": "The name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "instance" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "start": { - "id": "compute.instances.start", - "path": "{project}/zones/{zone}/instances/{instance}/start", - "httpMethod": "POST", - "description": "Starts an instance that was stopped using the using the instances().stop method. For more information, see Restart an instance.", - "parameters": { - "instance": { - "type": "string", - "description": "Name of the instance resource to start.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "zone": { - "type": "string", - "description": "The name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "instance" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "startWithEncryptionKey": { - "id": "compute.instances.startWithEncryptionKey", - "path": "{project}/zones/{zone}/instances/{instance}/startWithEncryptionKey", - "httpMethod": "POST", - "description": "Starts an instance that was stopped using the using the instances().stop method. For more information, see Restart an instance.", - "parameters": { - "instance": { - "type": "string", - "description": "Name of the instance resource to start.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "zone": { - "type": "string", - "description": "The name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "instance" - ], - "request": { - "$ref": "InstancesStartWithEncryptionKeyRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "stop": { - "id": "compute.instances.stop", - "path": "{project}/zones/{zone}/instances/{instance}/stop", - "httpMethod": "POST", - "description": "Stops a running instance, shutting it down cleanly, and allows you to restart the instance at a later time. Stopped instances do not incur VM usage charges while they are stopped. However, resources that the VM is using, such as persistent disks and static IP addresses, will continue to be charged until they are deleted. For more information, see Stopping an instance.", - "parameters": { - "discardLocalSsd": { - "type": "boolean", - "description": "If true, discard the contents of any attached localSSD partitions. Default value is false (== preserve localSSD data).", - "location": "query" - }, - "instance": { - "type": "string", - "description": "Name of the instance resource to stop.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "zone": { - "type": "string", - "description": "The name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "instance" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "suspend": { - "id": "compute.instances.suspend", - "path": "{project}/zones/{zone}/instances/{instance}/suspend", - "httpMethod": "POST", - "description": "This method suspends a running instance, saving its state to persistent storage, and allows you to resume the instance at a later time. Suspended instances incur reduced per-minute, virtual machine usage charges while they are suspended. Any resources the virtual machine is using, such as persistent disks and static IP addresses, will continue to be charged until they are deleted.", - "parameters": { - "discardLocalSsd": { - "type": "boolean", - "description": "If true, discard the contents of any attached localSSD partitions. Default value is false (== preserve localSSD data).", - "location": "query" - }, - "instance": { - "type": "string", - "description": "Name of the instance resource to suspend.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "zone": { - "type": "string", - "description": "The name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "instance" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "testIamPermissions": { - "id": "compute.instances.testIamPermissions", - "path": "{project}/zones/{zone}/instances/{resource}/testIamPermissions", - "httpMethod": "POST", - "description": "Returns permissions that a caller has on the specified resource.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "zone": { - "type": "string", - "description": "The name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "resource" - ], - "request": { - "$ref": "TestPermissionsRequest" - }, - "response": { - "$ref": "TestPermissionsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "updateAccessConfig": { - "id": "compute.instances.updateAccessConfig", - "path": "{project}/zones/{zone}/instances/{instance}/updateAccessConfig", - "httpMethod": "POST", - "description": "Updates the specified access config from an instance's network interface with the data included in the request. This method supports PATCH semantics and uses the JSON merge patch format and processing rules.", - "parameters": { - "instance": { - "type": "string", - "description": "The instance name for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "networkInterface": { - "type": "string", - "description": "The name of the network interface where the access config is attached.", - "required": true, - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "zone": { - "type": "string", - "description": "The name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "instance", - "networkInterface" - ], - "request": { - "$ref": "AccessConfig" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "updateNetworkInterface": { - "id": "compute.instances.updateNetworkInterface", - "path": "{project}/zones/{zone}/instances/{instance}/updateNetworkInterface", - "httpMethod": "PATCH", - "description": "Updates an instance's network interface. This method follows PATCH semantics.", - "parameters": { - "instance": { - "type": "string", - "description": "The instance name for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "networkInterface": { - "type": "string", - "description": "The name of the network interface to update.", - "required": true, - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "zone": { - "type": "string", - "description": "The name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "instance", - "networkInterface" - ], - "request": { - "$ref": "NetworkInterface" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "updateShieldedVmConfig": { - "id": "compute.instances.updateShieldedVmConfig", - "path": "{project}/zones/{zone}/instances/{instance}/updateShieldedVmConfig", - "httpMethod": "PATCH", - "description": "Updates the Shielded VM config for an instance. This method supports PATCH semantics and uses the JSON merge patch format and processing rules.", - "parameters": { - "instance": { - "type": "string", - "description": "Name of the instance scoping this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "zone": { - "type": "string", - "description": "The name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "instance" - ], - "request": { - "$ref": "ShieldedVmConfig" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - } - } - }, - "interconnectAttachments": { - "methods": { - "aggregatedList": { - "id": "compute.interconnectAttachments.aggregatedList", - "path": "{project}/aggregated/interconnectAttachments", - "httpMethod": "GET", - "description": "Retrieves an aggregated list of interconnect attachments.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "InterconnectAttachmentAggregatedList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "delete": { - "id": "compute.interconnectAttachments.delete", - "path": "{project}/regions/{region}/interconnectAttachments/{interconnectAttachment}", - "httpMethod": "DELETE", - "description": "Deletes the specified interconnect attachment.", - "parameters": { - "interconnectAttachment": { - "type": "string", - "description": "Name of the interconnect attachment to delete.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "region", - "interconnectAttachment" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "get": { - "id": "compute.interconnectAttachments.get", - "path": "{project}/regions/{region}/interconnectAttachments/{interconnectAttachment}", - "httpMethod": "GET", - "description": "Returns the specified interconnect attachment.", - "parameters": { - "interconnectAttachment": { - "type": "string", - "description": "Name of the interconnect attachment to return.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "interconnectAttachment" - ], - "response": { - "$ref": "InterconnectAttachment" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "getIamPolicy": { - "id": "compute.interconnectAttachments.getIamPolicy", - "path": "{project}/regions/{region}/interconnectAttachments/{resource}/getIamPolicy", - "httpMethod": "GET", - "description": "Gets the access control policy for a resource. May be empty if no such policy or resource exists.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "The name of the region for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "resource" - ], - "response": { - "$ref": "Policy" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "insert": { - "id": "compute.interconnectAttachments.insert", - "path": "{project}/regions/{region}/interconnectAttachments", - "httpMethod": "POST", - "description": "Creates an InterconnectAttachment in the specified project using the data included in the request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "region" - ], - "request": { - "$ref": "InterconnectAttachment" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "list": { - "id": "compute.interconnectAttachments.list", - "path": "{project}/regions/{region}/interconnectAttachments", - "httpMethod": "GET", - "description": "Retrieves the list of interconnect attachments contained within the specified region.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region" - ], - "response": { - "$ref": "InterconnectAttachmentList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "patch": { - "id": "compute.interconnectAttachments.patch", - "path": "{project}/regions/{region}/interconnectAttachments/{interconnectAttachment}", - "httpMethod": "PATCH", - "description": "Updates the specified interconnect attachment with the data included in the request. This method supports PATCH semantics and uses the JSON merge patch format and processing rules.", - "parameters": { - "interconnectAttachment": { - "type": "string", - "description": "Name of the interconnect attachment to patch.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "region", - "interconnectAttachment" - ], - "request": { - "$ref": "InterconnectAttachment" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "setIamPolicy": { - "id": "compute.interconnectAttachments.setIamPolicy", - "path": "{project}/regions/{region}/interconnectAttachments/{resource}/setIamPolicy", - "httpMethod": "POST", - "description": "Sets the access control policy on the specified resource. Replaces any existing policy.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "The name of the region for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "resource" - ], - "request": { - "$ref": "Policy" - }, - "response": { - "$ref": "Policy" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "setLabels": { - "id": "compute.interconnectAttachments.setLabels", - "path": "{project}/regions/{region}/interconnectAttachments/{resource}/setLabels", - "httpMethod": "POST", - "description": "Sets the labels on an InterconnectAttachment. To learn more about labels, read the Labeling Resources documentation.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "The region for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "resource" - ], - "request": { - "$ref": "RegionSetLabelsRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "testIamPermissions": { - "id": "compute.interconnectAttachments.testIamPermissions", - "path": "{project}/regions/{region}/interconnectAttachments/{resource}/testIamPermissions", - "httpMethod": "POST", - "description": "Returns permissions that a caller has on the specified resource.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "The name of the region for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "resource" - ], - "request": { - "$ref": "TestPermissionsRequest" - }, - "response": { - "$ref": "TestPermissionsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - } - } - }, - "interconnectLocations": { - "methods": { - "get": { - "id": "compute.interconnectLocations.get", - "path": "{project}/global/interconnectLocations/{interconnectLocation}", - "httpMethod": "GET", - "description": "Returns the details for the specified interconnect location. Get a list of available interconnect locations by making a list() request.", - "parameters": { - "interconnectLocation": { - "type": "string", - "description": "Name of the interconnect location to return.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "interconnectLocation" - ], - "response": { - "$ref": "InterconnectLocation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "list": { - "id": "compute.interconnectLocations.list", - "path": "{project}/global/interconnectLocations", - "httpMethod": "GET", - "description": "Retrieves the list of interconnect locations available to the specified project.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "InterconnectLocationList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "testIamPermissions": { - "id": "compute.interconnectLocations.testIamPermissions", - "path": "{project}/global/interconnectLocations/{resource}/testIamPermissions", - "httpMethod": "POST", - "description": "Returns permissions that a caller has on the specified resource.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "(?:[-a-z0-9_]{0,62}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "resource" - ], - "request": { - "$ref": "TestPermissionsRequest" - }, - "response": { - "$ref": "TestPermissionsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - } - } - }, - "interconnects": { - "methods": { - "delete": { - "id": "compute.interconnects.delete", - "path": "{project}/global/interconnects/{interconnect}", - "httpMethod": "DELETE", - "description": "Deletes the specified interconnect.", - "parameters": { - "interconnect": { - "type": "string", - "description": "Name of the interconnect to delete.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "interconnect" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "get": { - "id": "compute.interconnects.get", - "path": "{project}/global/interconnects/{interconnect}", - "httpMethod": "GET", - "description": "Returns the specified interconnect. Get a list of available interconnects by making a list() request.", - "parameters": { - "interconnect": { - "type": "string", - "description": "Name of the interconnect to return.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "interconnect" - ], - "response": { - "$ref": "Interconnect" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "getIamPolicy": { - "id": "compute.interconnects.getIamPolicy", - "path": "{project}/global/interconnects/{resource}/getIamPolicy", - "httpMethod": "GET", - "description": "Gets the access control policy for a resource. May be empty if no such policy or resource exists.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "[a-z0-9](?:[-a-z0-9_]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "resource" - ], - "response": { - "$ref": "Policy" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "insert": { - "id": "compute.interconnects.insert", - "path": "{project}/global/interconnects", - "httpMethod": "POST", - "description": "Creates a Interconnect in the specified project using the data included in the request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project" - ], - "request": { - "$ref": "Interconnect" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "list": { - "id": "compute.interconnects.list", - "path": "{project}/global/interconnects", - "httpMethod": "GET", - "description": "Retrieves the list of interconnect available to the specified project.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "InterconnectList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "patch": { - "id": "compute.interconnects.patch", - "path": "{project}/global/interconnects/{interconnect}", - "httpMethod": "PATCH", - "description": "Updates the specified interconnect with the data included in the request. This method supports PATCH semantics and uses the JSON merge patch format and processing rules.", - "parameters": { - "interconnect": { - "type": "string", - "description": "Name of the interconnect to update.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "interconnect" - ], - "request": { - "$ref": "Interconnect" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "setIamPolicy": { - "id": "compute.interconnects.setIamPolicy", - "path": "{project}/global/interconnects/{resource}/setIamPolicy", - "httpMethod": "POST", - "description": "Sets the access control policy on the specified resource. Replaces any existing policy.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "[a-z0-9](?:[-a-z0-9_]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "resource" - ], - "request": { - "$ref": "Policy" - }, - "response": { - "$ref": "Policy" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "setLabels": { - "id": "compute.interconnects.setLabels", - "path": "{project}/global/interconnects/{resource}/setLabels", - "httpMethod": "POST", - "description": "Sets the labels on an Interconnect. To learn more about labels, read the Labeling Resources documentation.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "resource" - ], - "request": { - "$ref": "GlobalSetLabelsRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "testIamPermissions": { - "id": "compute.interconnects.testIamPermissions", - "path": "{project}/global/interconnects/{resource}/testIamPermissions", - "httpMethod": "POST", - "description": "Returns permissions that a caller has on the specified resource.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "(?:[-a-z0-9_]{0,62}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "resource" - ], - "request": { - "$ref": "TestPermissionsRequest" - }, - "response": { - "$ref": "TestPermissionsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - } - } - }, - "licenseCodes": { - "methods": { - "get": { - "id": "compute.licenseCodes.get", - "path": "{project}/global/licenseCodes/{licenseCode}", - "httpMethod": "GET", - "description": "Return a specified license code. License codes are mirrored across all projects that have permissions to read the License Code.", - "parameters": { - "licenseCode": { - "type": "string", - "description": "Number corresponding to the License code resource to return.", - "required": true, - "pattern": "[0-9]{0,61}?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "licenseCode" - ], - "response": { - "$ref": "LicenseCode" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "getIamPolicy": { - "id": "compute.licenseCodes.getIamPolicy", - "path": "{project}/global/licenseCodes/{resource}/getIamPolicy", - "httpMethod": "GET", - "description": "Gets the access control policy for a resource. May be empty if no such policy or resource exists.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "[a-z0-9](?:[-a-z0-9_]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "resource" - ], - "response": { - "$ref": "Policy" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "setIamPolicy": { - "id": "compute.licenseCodes.setIamPolicy", - "path": "{project}/global/licenseCodes/{resource}/setIamPolicy", - "httpMethod": "POST", - "description": "Sets the access control policy on the specified resource. Replaces any existing policy.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "[a-z0-9](?:[-a-z0-9_]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "resource" - ], - "request": { - "$ref": "Policy" - }, - "response": { - "$ref": "Policy" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "testIamPermissions": { - "id": "compute.licenseCodes.testIamPermissions", - "path": "{project}/global/licenseCodes/{resource}/testIamPermissions", - "httpMethod": "POST", - "description": "Returns permissions that a caller has on the specified resource.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "(?:[-a-z0-9_]{0,62}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "resource" - ], - "request": { - "$ref": "TestPermissionsRequest" - }, - "response": { - "$ref": "TestPermissionsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - } - } - }, - "licenses": { - "methods": { - "delete": { - "id": "compute.licenses.delete", - "path": "{project}/global/licenses/{license}", - "httpMethod": "DELETE", - "description": "Deletes the specified license.", - "parameters": { - "license": { - "type": "string", - "description": "Name of the license resource to delete.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "license" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "get": { - "id": "compute.licenses.get", - "path": "{project}/global/licenses/{license}", - "httpMethod": "GET", - "description": "Returns the specified License resource.", - "parameters": { - "license": { - "type": "string", - "description": "Name of the License resource to return.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "license" - ], - "response": { - "$ref": "License" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "getIamPolicy": { - "id": "compute.licenses.getIamPolicy", - "path": "{project}/global/licenses/{resource}/getIamPolicy", - "httpMethod": "GET", - "description": "Gets the access control policy for a resource. May be empty if no such policy or resource exists.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "[a-z0-9](?:[-a-z0-9_]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "resource" - ], - "response": { - "$ref": "Policy" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "insert": { - "id": "compute.licenses.insert", - "path": "{project}/global/licenses", - "httpMethod": "POST", - "description": "Create a License resource in the specified project.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project" - ], - "request": { - "$ref": "License" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/devstorage.full_control", - "https://www.googleapis.com/auth/devstorage.read_only", - "https://www.googleapis.com/auth/devstorage.read_write" - ] - }, - "list": { - "id": "compute.licenses.list", - "path": "{project}/global/licenses", - "httpMethod": "GET", - "description": "Retrieves the list of licenses available in the specified project. This method does not get any licenses that belong to other projects, including licenses attached to publicly-available images, like Debian 8. If you want to get a list of publicly-available licenses, use this method to make a request to the respective image project, such as debian-cloud or windows-cloud.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "LicensesListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "setIamPolicy": { - "id": "compute.licenses.setIamPolicy", - "path": "{project}/global/licenses/{resource}/setIamPolicy", - "httpMethod": "POST", - "description": "Sets the access control policy on the specified resource. Replaces any existing policy.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "[a-z0-9](?:[-a-z0-9_]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "resource" - ], - "request": { - "$ref": "Policy" - }, - "response": { - "$ref": "Policy" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "testIamPermissions": { - "id": "compute.licenses.testIamPermissions", - "path": "{project}/global/licenses/{resource}/testIamPermissions", - "httpMethod": "POST", - "description": "Returns permissions that a caller has on the specified resource.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "(?:[-a-z0-9_]{0,62}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "resource" - ], - "request": { - "$ref": "TestPermissionsRequest" - }, - "response": { - "$ref": "TestPermissionsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - } - } - }, - "machineTypes": { - "methods": { - "aggregatedList": { - "id": "compute.machineTypes.aggregatedList", - "path": "{project}/aggregated/machineTypes", - "httpMethod": "GET", - "description": "Retrieves an aggregated list of machine types.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "MachineTypeAggregatedList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "get": { - "id": "compute.machineTypes.get", - "path": "{project}/zones/{zone}/machineTypes/{machineType}", - "httpMethod": "GET", - "description": "Returns the specified machine type. Get a list of available machine types by making a list() request.", - "parameters": { - "machineType": { - "type": "string", - "description": "Name of the machine type to return.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "zone": { - "type": "string", - "description": "The name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "machineType" - ], - "response": { - "$ref": "MachineType" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "list": { - "id": "compute.machineTypes.list", - "path": "{project}/zones/{zone}/machineTypes", - "httpMethod": "GET", - "description": "Retrieves a list of machine types available to the specified project.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "zone": { - "type": "string", - "description": "The name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone" - ], - "response": { - "$ref": "MachineTypeList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - } - } - }, - "maintenancePolicies": { - "methods": { - "aggregatedList": { - "id": "compute.maintenancePolicies.aggregatedList", - "path": "{project}/aggregated/maintenancePolicies", - "httpMethod": "GET", - "description": "Retrieves an aggregated list of maintenance policies.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "MaintenancePolicyAggregatedList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "delete": { - "id": "compute.maintenancePolicies.delete", - "path": "{project}/regions/{region}/maintenancePolicies/{maintenancePolicy}", - "httpMethod": "DELETE", - "description": "Deletes the specified maintenance policy.", - "parameters": { - "maintenancePolicy": { - "type": "string", - "description": "Name of the maintenance policy to delete.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "region", - "maintenancePolicy" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "get": { - "id": "compute.maintenancePolicies.get", - "path": "{project}/regions/{region}/maintenancePolicies/{maintenancePolicy}", - "httpMethod": "GET", - "description": "Retrieves all information of the specified maintenance policy.", - "parameters": { - "maintenancePolicy": { - "type": "string", - "description": "Name of the maintenance policy to retrieve.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "maintenancePolicy" - ], - "response": { - "$ref": "MaintenancePolicy" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "getIamPolicy": { - "id": "compute.maintenancePolicies.getIamPolicy", - "path": "{project}/regions/{region}/maintenancePolicies/{resource}/getIamPolicy", - "httpMethod": "GET", - "description": "Gets the access control policy for a resource. May be empty if no such policy or resource exists.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "The name of the region for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "resource" - ], - "response": { - "$ref": "Policy" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "insert": { - "id": "compute.maintenancePolicies.insert", - "path": "{project}/regions/{region}/maintenancePolicies", - "httpMethod": "POST", - "description": "Creates a new maintenance policy.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "region" - ], - "request": { - "$ref": "MaintenancePolicy" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "list": { - "id": "compute.maintenancePolicies.list", - "path": "{project}/regions/{region}/maintenancePolicies", - "httpMethod": "GET", - "description": "List all the maintenance policies that have been configured for the specified project in specified region.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region" - ], - "response": { - "$ref": "MaintenancePoliciesList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "setIamPolicy": { - "id": "compute.maintenancePolicies.setIamPolicy", - "path": "{project}/regions/{region}/maintenancePolicies/{resource}/setIamPolicy", - "httpMethod": "POST", - "description": "Sets the access control policy on the specified resource. Replaces any existing policy.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "The name of the region for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "resource" - ], - "request": { - "$ref": "Policy" - }, - "response": { - "$ref": "Policy" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "testIamPermissions": { - "id": "compute.maintenancePolicies.testIamPermissions", - "path": "{project}/regions/{region}/maintenancePolicies/{resource}/testIamPermissions", - "httpMethod": "POST", - "description": "Returns permissions that a caller has on the specified resource.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "The name of the region for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "resource" - ], - "request": { - "$ref": "TestPermissionsRequest" - }, - "response": { - "$ref": "TestPermissionsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - } - } - }, - "networkEndpointGroups": { - "methods": { - "aggregatedList": { - "id": "compute.networkEndpointGroups.aggregatedList", - "path": "{project}/aggregated/networkEndpointGroups", - "httpMethod": "GET", - "description": "Retrieves the list of network endpoint groups and sorts them by zone.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "NetworkEndpointGroupAggregatedList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "attachNetworkEndpoints": { - "id": "compute.networkEndpointGroups.attachNetworkEndpoints", - "path": "{project}/zones/{zone}/networkEndpointGroups/{networkEndpointGroup}/attachNetworkEndpoints", - "httpMethod": "POST", - "description": "Attach a list of network endpoints to the specified network endpoint group.", - "parameters": { - "networkEndpointGroup": { - "type": "string", - "description": "The name of the network endpoint group where you are attaching network endpoints to. It should comply with RFC1035.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "zone": { - "type": "string", - "description": "The name of the zone where the network endpoint group is located. It should comply with RFC1035.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "networkEndpointGroup" - ], - "request": { - "$ref": "NetworkEndpointGroupsAttachEndpointsRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "delete": { - "id": "compute.networkEndpointGroups.delete", - "path": "{project}/zones/{zone}/networkEndpointGroups/{networkEndpointGroup}", - "httpMethod": "DELETE", - "description": "Deletes the specified network endpoint group. The network endpoints in the NEG and the VM instances they belong to are not terminated when the NEG is deleted. Note that the NEG cannot be deleted if there are backend services referencing it.", - "parameters": { - "networkEndpointGroup": { - "type": "string", - "description": "The name of the network endpoint group to delete. It should comply with RFC1035.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "zone": { - "type": "string", - "description": "The name of the zone where the network endpoint group is located. It should comply with RFC1035.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "networkEndpointGroup" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "detachNetworkEndpoints": { - "id": "compute.networkEndpointGroups.detachNetworkEndpoints", - "path": "{project}/zones/{zone}/networkEndpointGroups/{networkEndpointGroup}/detachNetworkEndpoints", - "httpMethod": "POST", - "description": "Detach a list of network endpoints from the specified network endpoint group.", - "parameters": { - "networkEndpointGroup": { - "type": "string", - "description": "The name of the network endpoint group where you are removing network endpoints. It should comply with RFC1035.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "zone": { - "type": "string", - "description": "The name of the zone where the network endpoint group is located. It should comply with RFC1035.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "networkEndpointGroup" - ], - "request": { - "$ref": "NetworkEndpointGroupsDetachEndpointsRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "get": { - "id": "compute.networkEndpointGroups.get", - "path": "{project}/zones/{zone}/networkEndpointGroups/{networkEndpointGroup}", - "httpMethod": "GET", - "description": "Returns the specified network endpoint group. Get a list of available network endpoint groups by making a list() request.", - "parameters": { - "networkEndpointGroup": { - "type": "string", - "description": "The name of the network endpoint group. It should comply with RFC1035.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "zone": { - "type": "string", - "description": "The name of the zone where the network endpoint group is located. It should comply with RFC1035.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "networkEndpointGroup" - ], - "response": { - "$ref": "NetworkEndpointGroup" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "insert": { - "id": "compute.networkEndpointGroups.insert", - "path": "{project}/zones/{zone}/networkEndpointGroups", - "httpMethod": "POST", - "description": "Creates a network endpoint group in the specified project using the parameters that are included in the request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "zone": { - "type": "string", - "description": "The name of the zone where you want to create the network endpoint group. It should comply with RFC1035.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone" - ], - "request": { - "$ref": "NetworkEndpointGroup" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "list": { - "id": "compute.networkEndpointGroups.list", - "path": "{project}/zones/{zone}/networkEndpointGroups", - "httpMethod": "GET", - "description": "Retrieves the list of network endpoint groups that are located in the specified project and zone.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "zone": { - "type": "string", - "description": "The name of the zone where the network endpoint group is located. It should comply with RFC1035.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone" - ], - "response": { - "$ref": "NetworkEndpointGroupList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "listNetworkEndpoints": { - "id": "compute.networkEndpointGroups.listNetworkEndpoints", - "path": "{project}/zones/{zone}/networkEndpointGroups/{networkEndpointGroup}/listNetworkEndpoints", - "httpMethod": "POST", - "description": "List the network endpoints in the specified network endpoint group.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "networkEndpointGroup": { - "type": "string", - "description": "The name of the network endpoint group from which you want to generate a list of included network endpoints. It should comply with RFC1035.", - "required": true, - "location": "path" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "zone": { - "type": "string", - "description": "The name of the zone where the network endpoint group is located. It should comply with RFC1035.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "networkEndpointGroup" - ], - "request": { - "$ref": "NetworkEndpointGroupsListEndpointsRequest" - }, - "response": { - "$ref": "NetworkEndpointGroupsListNetworkEndpoints" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "testIamPermissions": { - "id": "compute.networkEndpointGroups.testIamPermissions", - "path": "{project}/zones/{zone}/networkEndpointGroups/{resource}/testIamPermissions", - "httpMethod": "POST", - "description": "Returns permissions that a caller has on the specified resource.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "zone": { - "type": "string", - "description": "The name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "resource" - ], - "request": { - "$ref": "TestPermissionsRequest" - }, - "response": { - "$ref": "TestPermissionsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - } - } - }, - "networks": { - "methods": { - "addPeering": { - "id": "compute.networks.addPeering", - "path": "{project}/global/networks/{network}/addPeering", - "httpMethod": "POST", - "description": "Adds a peering to the specified network.", - "parameters": { - "network": { - "type": "string", - "description": "Name of the network resource to add peering to.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "network" - ], - "request": { - "$ref": "NetworksAddPeeringRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "delete": { - "id": "compute.networks.delete", - "path": "{project}/global/networks/{network}", - "httpMethod": "DELETE", - "description": "Deletes the specified network.", - "parameters": { - "network": { - "type": "string", - "description": "Name of the network to delete.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "network" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "get": { - "id": "compute.networks.get", - "path": "{project}/global/networks/{network}", - "httpMethod": "GET", - "description": "Returns the specified network. Get a list of available networks by making a list() request.", - "parameters": { - "network": { - "type": "string", - "description": "Name of the network to return.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "network" - ], - "response": { - "$ref": "Network" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "insert": { - "id": "compute.networks.insert", - "path": "{project}/global/networks", - "httpMethod": "POST", - "description": "Creates a network in the specified project using the data included in the request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project" - ], - "request": { - "$ref": "Network" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "list": { - "id": "compute.networks.list", - "path": "{project}/global/networks", - "httpMethod": "GET", - "description": "Retrieves the list of networks available to the specified project.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "NetworkList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "listIpOwners": { - "id": "compute.networks.listIpOwners", - "path": "{project}/global/networks/{network}/listIpOwners", - "httpMethod": "GET", - "description": "List the internal IP owners in the specified network.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "ipCidrRange": { - "type": "string", - "description": "(Optional) IP CIDR range filter, example: \"10.128.10.0/30\".", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "network": { - "type": "string", - "description": "Name of the network to return.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "ownerProjects": { - "type": "string", - "description": "(Optional) Project IDs filter, example: \"project-1,project-2\".", - "location": "query" - }, - "ownerTypes": { - "type": "string", - "description": "(Optional) Owner types filter, example: \"instance,forwardingRule\".", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "subnetName": { - "type": "string", - "description": "(Optional) Subnetwork name filter.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "query" - }, - "subnetRegion": { - "type": "string", - "description": "(Optional) Subnetwork region filter.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "network" - ], - "response": { - "$ref": "IpOwnerList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "patch": { - "id": "compute.networks.patch", - "path": "{project}/global/networks/{network}", - "httpMethod": "PATCH", - "description": "Patches the specified network with the data included in the request. Only the following fields can be modified: routingConfig.routingMode.", - "parameters": { - "network": { - "type": "string", - "description": "Name of the network to update.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "network" - ], - "request": { - "$ref": "Network" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "removePeering": { - "id": "compute.networks.removePeering", - "path": "{project}/global/networks/{network}/removePeering", - "httpMethod": "POST", - "description": "Removes a peering from the specified network.", - "parameters": { - "network": { - "type": "string", - "description": "Name of the network resource to remove peering from.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "network" - ], - "request": { - "$ref": "NetworksRemovePeeringRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "switchToCustomMode": { - "id": "compute.networks.switchToCustomMode", - "path": "{project}/global/networks/{network}/switchToCustomMode", - "httpMethod": "POST", - "description": "Switches the network mode from auto subnet mode to custom subnet mode.", - "parameters": { - "network": { - "type": "string", - "description": "Name of the network to be updated.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "network" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "testIamPermissions": { - "id": "compute.networks.testIamPermissions", - "path": "{project}/global/networks/{resource}/testIamPermissions", - "httpMethod": "POST", - "description": "Returns permissions that a caller has on the specified resource.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "(?:[-a-z0-9_]{0,62}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "resource" - ], - "request": { - "$ref": "TestPermissionsRequest" - }, - "response": { - "$ref": "TestPermissionsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - } - } - }, - "projects": { - "methods": { - "disableXpnHost": { - "id": "compute.projects.disableXpnHost", - "path": "{project}/disableXpnHost", - "httpMethod": "POST", - "description": "Disable this project as a shared VPC host project.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "disableXpnResource": { - "id": "compute.projects.disableXpnResource", - "path": "{project}/disableXpnResource", - "httpMethod": "POST", - "description": "Disable a serivce resource (a.k.a service project) associated with this host project.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project" - ], - "request": { - "$ref": "ProjectsDisableXpnResourceRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "enableXpnHost": { - "id": "compute.projects.enableXpnHost", - "path": "{project}/enableXpnHost", - "httpMethod": "POST", - "description": "Enable this project as a shared VPC host project.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "enableXpnResource": { - "id": "compute.projects.enableXpnResource", - "path": "{project}/enableXpnResource", - "httpMethod": "POST", - "description": "Enable service resource (a.k.a service project) for a host project, so that subnets in the host project can be used by instances in the service project.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project" - ], - "request": { - "$ref": "ProjectsEnableXpnResourceRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "get": { - "id": "compute.projects.get", - "path": "{project}", - "httpMethod": "GET", - "description": "Returns the specified Project resource.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "Project" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "getXpnHost": { - "id": "compute.projects.getXpnHost", - "path": "{project}/getXpnHost", - "httpMethod": "GET", - "description": "Get the shared VPC host project that this project links to. May be empty if no link exists.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "Project" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "getXpnResources": { - "id": "compute.projects.getXpnResources", - "path": "{project}/getXpnResources", - "httpMethod": "GET", - "description": "Get service resources (a.k.a service project) associated with this host project.", - "parameters": { - "filter": { - "type": "string", - "location": "query" - }, - "maxResults": { - "type": "integer", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "order_by": { - "type": "string", - "location": "query" - }, - "pageToken": { - "type": "string", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "ProjectsGetXpnResources" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "listXpnHosts": { - "id": "compute.projects.listXpnHosts", - "path": "{project}/listXpnHosts", - "httpMethod": "POST", - "description": "List all shared VPC host projects visible to the user in an organization.", - "parameters": { - "filter": { - "type": "string", - "location": "query" - }, - "maxResults": { - "type": "integer", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "order_by": { - "type": "string", - "location": "query" - }, - "pageToken": { - "type": "string", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "request": { - "$ref": "ProjectsListXpnHostsRequest" - }, - "response": { - "$ref": "XpnHostList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "moveDisk": { - "id": "compute.projects.moveDisk", - "path": "{project}/moveDisk", - "httpMethod": "POST", - "description": "Moves a persistent disk from one zone to another.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project" - ], - "request": { - "$ref": "DiskMoveRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "moveInstance": { - "id": "compute.projects.moveInstance", - "path": "{project}/moveInstance", - "httpMethod": "POST", - "description": "Moves an instance and its attached persistent disks from one zone to another.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project" - ], - "request": { - "$ref": "InstanceMoveRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "setCommonInstanceMetadata": { - "id": "compute.projects.setCommonInstanceMetadata", - "path": "{project}/setCommonInstanceMetadata", - "httpMethod": "POST", - "description": "Sets metadata common to all instances within the specified project using the data included in the request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project" - ], - "request": { - "$ref": "Metadata" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "setDefaultNetworkTier": { - "id": "compute.projects.setDefaultNetworkTier", - "path": "{project}/setDefaultNetworkTier", - "httpMethod": "POST", - "description": "Sets the default network tier of the project. The default network tier is used when an address/forwardingRule/instance is created without specifying the network tier field.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project" - ], - "request": { - "$ref": "ProjectsSetDefaultNetworkTierRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "setDefaultServiceAccount": { - "id": "compute.projects.setDefaultServiceAccount", - "path": "{project}/setDefaultServiceAccount", - "httpMethod": "POST", - "description": "Sets the default service account of the project. The default service account is used when a VM instance is created with the service account email address set to \"default\".", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project" - ], - "request": { - "$ref": "ProjectsSetDefaultServiceAccountRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "setUsageExportBucket": { - "id": "compute.projects.setUsageExportBucket", - "path": "{project}/setUsageExportBucket", - "httpMethod": "POST", - "description": "Enables the usage export feature and sets the usage export bucket where reports are stored. If you provide an empty request body using this method, the usage export feature will be disabled.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project" - ], - "request": { - "$ref": "UsageExportLocation" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/devstorage.full_control", - "https://www.googleapis.com/auth/devstorage.read_only", - "https://www.googleapis.com/auth/devstorage.read_write" - ] - } - } - }, - "regionAutoscalers": { - "methods": { - "delete": { - "id": "compute.regionAutoscalers.delete", - "path": "{project}/regions/{region}/autoscalers/{autoscaler}", - "httpMethod": "DELETE", - "description": "Deletes the specified autoscaler.", - "parameters": { - "autoscaler": { - "type": "string", - "description": "Name of the autoscaler to delete.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "region", - "autoscaler" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "get": { - "id": "compute.regionAutoscalers.get", - "path": "{project}/regions/{region}/autoscalers/{autoscaler}", - "httpMethod": "GET", - "description": "Returns the specified autoscaler.", - "parameters": { - "autoscaler": { - "type": "string", - "description": "Name of the autoscaler to return.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "autoscaler" - ], - "response": { - "$ref": "Autoscaler" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "insert": { - "id": "compute.regionAutoscalers.insert", - "path": "{project}/regions/{region}/autoscalers", - "httpMethod": "POST", - "description": "Creates an autoscaler in the specified project using the data included in the request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "region" - ], - "request": { - "$ref": "Autoscaler" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "list": { - "id": "compute.regionAutoscalers.list", - "path": "{project}/regions/{region}/autoscalers", - "httpMethod": "GET", - "description": "Retrieves a list of autoscalers contained within the specified region.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region" - ], - "response": { - "$ref": "RegionAutoscalerList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "patch": { - "id": "compute.regionAutoscalers.patch", - "path": "{project}/regions/{region}/autoscalers", - "httpMethod": "PATCH", - "description": "Updates an autoscaler in the specified project using the data included in the request. This method supports PATCH semantics and uses the JSON merge patch format and processing rules.", - "parameters": { - "autoscaler": { - "type": "string", - "description": "Name of the autoscaler to patch.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "region" - ], - "request": { - "$ref": "Autoscaler" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "testIamPermissions": { - "id": "compute.regionAutoscalers.testIamPermissions", - "path": "{project}/regions/{region}/autoscalers/{resource}/testIamPermissions", - "httpMethod": "POST", - "description": "Returns permissions that a caller has on the specified resource.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "The name of the region for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "resource" - ], - "request": { - "$ref": "TestPermissionsRequest" - }, - "response": { - "$ref": "TestPermissionsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "update": { - "id": "compute.regionAutoscalers.update", - "path": "{project}/regions/{region}/autoscalers", - "httpMethod": "PUT", - "description": "Updates an autoscaler in the specified project using the data included in the request.", - "parameters": { - "autoscaler": { - "type": "string", - "description": "Name of the autoscaler to update.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "region" - ], - "request": { - "$ref": "Autoscaler" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - } - } - }, - "regionBackendServices": { - "methods": { - "delete": { - "id": "compute.regionBackendServices.delete", - "path": "{project}/regions/{region}/backendServices/{backendService}", - "httpMethod": "DELETE", - "description": "Deletes the specified regional BackendService resource.", - "parameters": { - "backendService": { - "type": "string", - "description": "Name of the BackendService resource to delete.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "region", - "backendService" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "get": { - "id": "compute.regionBackendServices.get", - "path": "{project}/regions/{region}/backendServices/{backendService}", - "httpMethod": "GET", - "description": "Returns the specified regional BackendService resource.", - "parameters": { - "backendService": { - "type": "string", - "description": "Name of the BackendService resource to return.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "backendService" - ], - "response": { - "$ref": "BackendService" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "getHealth": { - "id": "compute.regionBackendServices.getHealth", - "path": "{project}/regions/{region}/backendServices/{backendService}/getHealth", - "httpMethod": "POST", - "description": "Gets the most recent health check results for this regional BackendService.", - "parameters": { - "backendService": { - "type": "string", - "description": "Name of the BackendService resource to which the queried instance belongs.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "backendService" - ], - "request": { - "$ref": "ResourceGroupReference" - }, - "response": { - "$ref": "BackendServiceGroupHealth" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "insert": { - "id": "compute.regionBackendServices.insert", - "path": "{project}/regions/{region}/backendServices", - "httpMethod": "POST", - "description": "Creates a regional BackendService resource in the specified project using the data included in the request. There are several restrictions and guidelines to keep in mind when creating a regional backend service. Read Restrictions and Guidelines for more information.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "region" - ], - "request": { - "$ref": "BackendService" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "list": { - "id": "compute.regionBackendServices.list", - "path": "{project}/regions/{region}/backendServices", - "httpMethod": "GET", - "description": "Retrieves the list of regional BackendService resources available to the specified project in the given region.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region" - ], - "response": { - "$ref": "BackendServiceList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "patch": { - "id": "compute.regionBackendServices.patch", - "path": "{project}/regions/{region}/backendServices/{backendService}", - "httpMethod": "PATCH", - "description": "Updates the specified regional BackendService resource with the data included in the request. There are several restrictions and guidelines to keep in mind when updating a backend service. Read Restrictions and Guidelines for more information. This method supports PATCH semantics and uses the JSON merge patch format and processing rules.", - "parameters": { - "backendService": { - "type": "string", - "description": "Name of the BackendService resource to patch.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "region", - "backendService" - ], - "request": { - "$ref": "BackendService" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "testIamPermissions": { - "id": "compute.regionBackendServices.testIamPermissions", - "path": "{project}/regions/{region}/backendServices/{resource}/testIamPermissions", - "httpMethod": "POST", - "description": "Returns permissions that a caller has on the specified resource.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "The name of the region for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "resource" - ], - "request": { - "$ref": "TestPermissionsRequest" - }, - "response": { - "$ref": "TestPermissionsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "update": { - "id": "compute.regionBackendServices.update", - "path": "{project}/regions/{region}/backendServices/{backendService}", - "httpMethod": "PUT", - "description": "Updates the specified regional BackendService resource with the data included in the request. There are several restrictions and guidelines to keep in mind when updating a backend service. Read Restrictions and Guidelines for more information.", - "parameters": { - "backendService": { - "type": "string", - "description": "Name of the BackendService resource to update.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "region", - "backendService" - ], - "request": { - "$ref": "BackendService" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - } - } - }, - "regionCommitments": { - "methods": { - "aggregatedList": { - "id": "compute.regionCommitments.aggregatedList", - "path": "{project}/aggregated/commitments", - "httpMethod": "GET", - "description": "Retrieves an aggregated list of commitments.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "CommitmentAggregatedList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "get": { - "id": "compute.regionCommitments.get", - "path": "{project}/regions/{region}/commitments/{commitment}", - "httpMethod": "GET", - "description": "Returns the specified commitment resource. Get a list of available commitments by making a list() request.", - "parameters": { - "commitment": { - "type": "string", - "description": "Name of the commitment to return.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "commitment" - ], - "response": { - "$ref": "Commitment" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "insert": { - "id": "compute.regionCommitments.insert", - "path": "{project}/regions/{region}/commitments", - "httpMethod": "POST", - "description": "Creates a commitment in the specified project using the data included in the request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "region" - ], - "request": { - "$ref": "Commitment" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "list": { - "id": "compute.regionCommitments.list", - "path": "{project}/regions/{region}/commitments", - "httpMethod": "GET", - "description": "Retrieves a list of commitments contained within the specified region.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region" - ], - "response": { - "$ref": "CommitmentList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "testIamPermissions": { - "id": "compute.regionCommitments.testIamPermissions", - "path": "{project}/regions/{region}/commitments/{resource}/testIamPermissions", - "httpMethod": "POST", - "description": "Returns permissions that a caller has on the specified resource.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "The name of the region for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "resource" - ], - "request": { - "$ref": "TestPermissionsRequest" - }, - "response": { - "$ref": "TestPermissionsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - } - } - }, - "regionDiskTypes": { - "methods": { - "get": { - "id": "compute.regionDiskTypes.get", - "path": "{project}/regions/{region}/diskTypes/{diskType}", - "httpMethod": "GET", - "description": "Returns the specified regional disk type. Get a list of available disk types by making a list() request.", - "parameters": { - "diskType": { - "type": "string", - "description": "Name of the disk type to return.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "The name of the region for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "diskType" - ], - "response": { - "$ref": "DiskType" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "list": { - "id": "compute.regionDiskTypes.list", - "path": "{project}/regions/{region}/diskTypes", - "httpMethod": "GET", - "description": "Retrieves a list of regional disk types available to the specified project.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "The name of the region for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region" - ], - "response": { - "$ref": "RegionDiskTypeList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - } - } - }, - "regionDisks": { - "methods": { - "createSnapshot": { - "id": "compute.regionDisks.createSnapshot", - "path": "{project}/regions/{region}/disks/{disk}/createSnapshot", - "httpMethod": "POST", - "description": "Creates a snapshot of this regional disk.", - "parameters": { - "disk": { - "type": "string", - "description": "Name of the regional persistent disk to snapshot.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "guestFlush": { - "type": "boolean", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "region", - "disk" - ], - "request": { - "$ref": "Snapshot" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "delete": { - "id": "compute.regionDisks.delete", - "path": "{project}/regions/{region}/disks/{disk}", - "httpMethod": "DELETE", - "description": "Deletes the specified regional persistent disk. Deleting a regional disk removes all the replicas of its data permanently and is irreversible. However, deleting a disk does not delete any snapshots previously made from the disk. You must separately delete snapshots.", - "parameters": { - "disk": { - "type": "string", - "description": "Name of the regional persistent disk to delete.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "region", - "disk" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "get": { - "id": "compute.regionDisks.get", - "path": "{project}/regions/{region}/disks/{disk}", - "httpMethod": "GET", - "description": "Returns a specified regional persistent disk.", - "parameters": { - "disk": { - "type": "string", - "description": "Name of the regional persistent disk to return.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "disk" - ], - "response": { - "$ref": "Disk" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "insert": { - "id": "compute.regionDisks.insert", - "path": "{project}/regions/{region}/disks", - "httpMethod": "POST", - "description": "Creates a persistent regional disk in the specified project using the data included in the request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "sourceImage": { - "type": "string", - "description": "Optional. Source image to restore onto a disk.", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "region" - ], - "request": { - "$ref": "Disk" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "list": { - "id": "compute.regionDisks.list", - "path": "{project}/regions/{region}/disks", - "httpMethod": "GET", - "description": "Retrieves the list of persistent disks contained within the specified region.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region" - ], - "response": { - "$ref": "DiskList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "resize": { - "id": "compute.regionDisks.resize", - "path": "{project}/regions/{region}/disks/{disk}/resize", - "httpMethod": "POST", - "description": "Resizes the specified regional persistent disk.", - "parameters": { - "disk": { - "type": "string", - "description": "Name of the regional persistent disk.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "The project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "region", - "disk" - ], - "request": { - "$ref": "RegionDisksResizeRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "setLabels": { - "id": "compute.regionDisks.setLabels", - "path": "{project}/regions/{region}/disks/{resource}/setLabels", - "httpMethod": "POST", - "description": "Sets the labels on the target regional disk.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "The region for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "resource" - ], - "request": { - "$ref": "RegionSetLabelsRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "testIamPermissions": { - "id": "compute.regionDisks.testIamPermissions", - "path": "{project}/regions/{region}/disks/{resource}/testIamPermissions", - "httpMethod": "POST", - "description": "Returns permissions that a caller has on the specified resource.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "The name of the region for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "resource" - ], - "request": { - "$ref": "TestPermissionsRequest" - }, - "response": { - "$ref": "TestPermissionsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - } - } - }, - "regionInstanceGroupManagers": { - "methods": { - "abandonInstances": { - "id": "compute.regionInstanceGroupManagers.abandonInstances", - "path": "{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/abandonInstances", - "httpMethod": "POST", - "description": "Schedules a group action to remove the specified instances from the managed instance group. Abandoning an instance does not delete the instance, but it does remove the instance from any target pools that are applied by the managed instance group. This method reduces the targetSize of the managed instance group by the number of instances that you abandon. This operation is marked as DONE when the action is scheduled even if the instances have not yet been removed from the group. You must separately verify the status of the abandoning action with the listmanagedinstances method.\n\nIf the group is part of a backend service that has enabled connection draining, it can take up to 60 seconds after the connection draining duration has elapsed before the VM instance is removed or deleted.\n\nYou can specify a maximum of 1000 instances with this method per request.", - "parameters": { - "instanceGroupManager": { - "type": "string", - "description": "Name of the managed instance group.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "region", - "instanceGroupManager" - ], - "request": { - "$ref": "RegionInstanceGroupManagersAbandonInstancesRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "applyUpdatesToInstances": { - "id": "compute.regionInstanceGroupManagers.applyUpdatesToInstances", - "path": "{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/applyUpdatesToInstances", - "httpMethod": "POST", - "description": "Apply updates to selected instances the managed instance group.", - "parameters": { - "instanceGroupManager": { - "type": "string", - "description": "The name of the managed instance group, should conform to RFC1035.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request, should conform to RFC1035.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "instanceGroupManager" - ], - "request": { - "$ref": "RegionInstanceGroupManagersApplyUpdatesRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "delete": { - "id": "compute.regionInstanceGroupManagers.delete", - "path": "{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}", - "httpMethod": "DELETE", - "description": "Deletes the specified managed instance group and all of the instances in that group.", - "parameters": { - "instanceGroupManager": { - "type": "string", - "description": "Name of the managed instance group to delete.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "region", - "instanceGroupManager" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "deleteInstances": { - "id": "compute.regionInstanceGroupManagers.deleteInstances", - "path": "{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/deleteInstances", - "httpMethod": "POST", - "description": "Schedules a group action to delete the specified instances in the managed instance group. The instances are also removed from any target pools of which they were a member. This method reduces the targetSize of the managed instance group by the number of instances that you delete. This operation is marked as DONE when the action is scheduled even if the instances are still being deleted. You must separately verify the status of the deleting action with the listmanagedinstances method.\n\nIf the group is part of a backend service that has enabled connection draining, it can take up to 60 seconds after the connection draining duration has elapsed before the VM instance is removed or deleted.\n\nYou can specify a maximum of 1000 instances with this method per request.", - "parameters": { - "instanceGroupManager": { - "type": "string", - "description": "Name of the managed instance group.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "region", - "instanceGroupManager" - ], - "request": { - "$ref": "RegionInstanceGroupManagersDeleteInstancesRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "deletePerInstanceConfigs": { - "id": "compute.regionInstanceGroupManagers.deletePerInstanceConfigs", - "path": "{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/deletePerInstanceConfigs", - "httpMethod": "POST", - "description": "Delete selected per-instance configs for the managed instance group.", - "parameters": { - "instanceGroupManager": { - "type": "string", - "description": "The name of the managed instance group. It should conform to RFC1035.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request, should conform to RFC1035.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "instanceGroupManager" - ], - "request": { - "$ref": "RegionInstanceGroupManagerDeleteInstanceConfigReq" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "get": { - "id": "compute.regionInstanceGroupManagers.get", - "path": "{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}", - "httpMethod": "GET", - "description": "Returns all of the details about the specified managed instance group.", - "parameters": { - "instanceGroupManager": { - "type": "string", - "description": "Name of the managed instance group to return.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "instanceGroupManager" - ], - "response": { - "$ref": "InstanceGroupManager" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "insert": { - "id": "compute.regionInstanceGroupManagers.insert", - "path": "{project}/regions/{region}/instanceGroupManagers", - "httpMethod": "POST", - "description": "Creates a managed instance group using the information that you specify in the request. After the group is created, it schedules an action to create instances in the group using the specified instance template. This operation is marked as DONE when the group is created even if the instances in the group have not yet been created. You must separately verify the status of the individual instances with the listmanagedinstances method.\n\nA regional managed instance group can contain up to 2000 instances.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "region" - ], - "request": { - "$ref": "InstanceGroupManager" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "list": { - "id": "compute.regionInstanceGroupManagers.list", - "path": "{project}/regions/{region}/instanceGroupManagers", - "httpMethod": "GET", - "description": "Retrieves the list of managed instance groups that are contained within the specified region.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region" - ], - "response": { - "$ref": "RegionInstanceGroupManagerList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "listManagedInstances": { - "id": "compute.regionInstanceGroupManagers.listManagedInstances", - "path": "{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/listManagedInstances", - "httpMethod": "POST", - "description": "Lists the instances in the managed instance group and instances that are scheduled to be created. The list includes any current actions that the group has scheduled for its instances.", - "parameters": { - "filter": { - "type": "string", - "location": "query" - }, - "instanceGroupManager": { - "type": "string", - "description": "The name of the managed instance group.", - "required": true, - "location": "path" - }, - "maxResults": { - "type": "integer", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "order_by": { - "type": "string", - "location": "query" - }, - "pageToken": { - "type": "string", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "instanceGroupManager" - ], - "response": { - "$ref": "RegionInstanceGroupManagersListInstancesResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "listPerInstanceConfigs": { - "id": "compute.regionInstanceGroupManagers.listPerInstanceConfigs", - "path": "{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/listPerInstanceConfigs", - "httpMethod": "POST", - "description": "Lists all of the per-instance configs defined for the managed instance group.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "instanceGroupManager": { - "type": "string", - "description": "The name of the managed instance group. It should conform to RFC1035.", - "required": true, - "location": "path" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request, should conform to RFC1035.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "instanceGroupManager" - ], - "response": { - "$ref": "RegionInstanceGroupManagersListInstanceConfigsResp" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "patch": { - "id": "compute.regionInstanceGroupManagers.patch", - "path": "{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}", - "httpMethod": "PATCH", - "description": "Updates a managed instance group using the information that you specify in the request. This operation is marked as DONE when the group is patched even if the instances in the group are still in the process of being patched. You must separately verify the status of the individual instances with the listmanagedinstances method. This method supports PATCH semantics and uses the JSON merge patch format and processing rules.", - "parameters": { - "instanceGroupManager": { - "type": "string", - "description": "The name of the instance group manager.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "region", - "instanceGroupManager" - ], - "request": { - "$ref": "InstanceGroupManager" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "recreateInstances": { - "id": "compute.regionInstanceGroupManagers.recreateInstances", - "path": "{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/recreateInstances", - "httpMethod": "POST", - "description": "Schedules a group action to recreate the specified instances in the managed instance group. The instances are deleted and recreated using the current instance template for the managed instance group. This operation is marked as DONE when the action is scheduled even if the instances have not yet been recreated. You must separately verify the status of the recreating action with the listmanagedinstances method.\n\nIf the group is part of a backend service that has enabled connection draining, it can take up to 60 seconds after the connection draining duration has elapsed before the VM instance is removed or deleted.\n\nYou can specify a maximum of 1000 instances with this method per request.", - "parameters": { - "instanceGroupManager": { - "type": "string", - "description": "Name of the managed instance group.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "region", - "instanceGroupManager" - ], - "request": { - "$ref": "RegionInstanceGroupManagersRecreateRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "resize": { - "id": "compute.regionInstanceGroupManagers.resize", - "path": "{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/resize", - "httpMethod": "POST", - "description": "Changes the intended size for the managed instance group. If you increase the size, the group schedules actions to create new instances using the current instance template. If you decrease the size, the group schedules delete actions on one or more instances. The resize operation is marked DONE when the resize actions are scheduled even if the group has not yet added or deleted any instances. You must separately verify the status of the creating or deleting actions with the listmanagedinstances method.\n\nIf the group is part of a backend service that has enabled connection draining, it can take up to 60 seconds after the connection draining duration has elapsed before the VM instance is removed or deleted.", - "parameters": { - "instanceGroupManager": { - "type": "string", - "description": "Name of the managed instance group.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "size": { - "type": "integer", - "description": "Number of instances that should exist in this instance group manager.", - "required": true, - "format": "int32", - "minimum": "0", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "region", - "instanceGroupManager", - "size" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "setAutoHealingPolicies": { - "id": "compute.regionInstanceGroupManagers.setAutoHealingPolicies", - "path": "{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/setAutoHealingPolicies", - "httpMethod": "POST", - "description": "Modifies the autohealing policy for the instances in this managed instance group.", - "parameters": { - "instanceGroupManager": { - "type": "string", - "description": "Name of the managed instance group.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "region", - "instanceGroupManager" - ], - "request": { - "$ref": "RegionInstanceGroupManagersSetAutoHealingRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "setInstanceTemplate": { - "id": "compute.regionInstanceGroupManagers.setInstanceTemplate", - "path": "{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/setInstanceTemplate", - "httpMethod": "POST", - "description": "Sets the instance template to use when creating new instances or recreating instances in this group. Existing instances are not affected.", - "parameters": { - "instanceGroupManager": { - "type": "string", - "description": "The name of the managed instance group.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "region", - "instanceGroupManager" - ], - "request": { - "$ref": "RegionInstanceGroupManagersSetTemplateRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "setTargetPools": { - "id": "compute.regionInstanceGroupManagers.setTargetPools", - "path": "{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/setTargetPools", - "httpMethod": "POST", - "description": "Modifies the target pools to which all new instances in this group are assigned. Existing instances in the group are not affected.", - "parameters": { - "instanceGroupManager": { - "type": "string", - "description": "Name of the managed instance group.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "region", - "instanceGroupManager" - ], - "request": { - "$ref": "RegionInstanceGroupManagersSetTargetPoolsRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "testIamPermissions": { - "id": "compute.regionInstanceGroupManagers.testIamPermissions", - "path": "{project}/regions/{region}/instanceGroupManagers/{resource}/testIamPermissions", - "httpMethod": "POST", - "description": "Returns permissions that a caller has on the specified resource.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "The name of the region for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "resource" - ], - "request": { - "$ref": "TestPermissionsRequest" - }, - "response": { - "$ref": "TestPermissionsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "update": { - "id": "compute.regionInstanceGroupManagers.update", - "path": "{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}", - "httpMethod": "PUT", - "description": "Updates a managed instance group using the information that you specify in the request. This operation is marked as DONE when the group is updated even if the instances in the group have not yet been updated. You must separately verify the status of the individual instances with the listmanagedinstances method.", - "parameters": { - "instanceGroupManager": { - "type": "string", - "description": "The name of the instance group manager.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "region", - "instanceGroupManager" - ], - "request": { - "$ref": "InstanceGroupManager" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "updatePerInstanceConfigs": { - "id": "compute.regionInstanceGroupManagers.updatePerInstanceConfigs", - "path": "{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/updatePerInstanceConfigs", - "httpMethod": "POST", - "description": "Insert or patch (for the ones that already exist) per-instance configs for the managed instance group. perInstanceConfig.instance serves as a key used to distinguish whether to perform insert or patch.", - "parameters": { - "instanceGroupManager": { - "type": "string", - "description": "The name of the managed instance group. It should conform to RFC1035.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request, should conform to RFC1035.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "instanceGroupManager" - ], - "request": { - "$ref": "RegionInstanceGroupManagerUpdateInstanceConfigReq" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - } - } - }, - "regionInstanceGroups": { - "methods": { - "get": { - "id": "compute.regionInstanceGroups.get", - "path": "{project}/regions/{region}/instanceGroups/{instanceGroup}", - "httpMethod": "GET", - "description": "Returns the specified instance group resource.", - "parameters": { - "instanceGroup": { - "type": "string", - "description": "Name of the instance group resource to return.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "instanceGroup" - ], - "response": { - "$ref": "InstanceGroup" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "list": { - "id": "compute.regionInstanceGroups.list", - "path": "{project}/regions/{region}/instanceGroups", - "httpMethod": "GET", - "description": "Retrieves the list of instance group resources contained within the specified region.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region" - ], - "response": { - "$ref": "RegionInstanceGroupList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "listInstances": { - "id": "compute.regionInstanceGroups.listInstances", - "path": "{project}/regions/{region}/instanceGroups/{instanceGroup}/listInstances", - "httpMethod": "POST", - "description": "Lists the instances in the specified instance group and displays information about the named ports. Depending on the specified options, this method can list all instances or only the instances that are running.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "instanceGroup": { - "type": "string", - "description": "Name of the regional instance group for which we want to list the instances.", - "required": true, - "location": "path" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "instanceGroup" - ], - "request": { - "$ref": "RegionInstanceGroupsListInstancesRequest" - }, - "response": { - "$ref": "RegionInstanceGroupsListInstances" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "setNamedPorts": { - "id": "compute.regionInstanceGroups.setNamedPorts", - "path": "{project}/regions/{region}/instanceGroups/{instanceGroup}/setNamedPorts", - "httpMethod": "POST", - "description": "Sets the named ports for the specified regional instance group.", - "parameters": { - "instanceGroup": { - "type": "string", - "description": "The name of the regional instance group where the named ports are updated.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "region", - "instanceGroup" - ], - "request": { - "$ref": "RegionInstanceGroupsSetNamedPortsRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "testIamPermissions": { - "id": "compute.regionInstanceGroups.testIamPermissions", - "path": "{project}/regions/{region}/instanceGroups/{resource}/testIamPermissions", - "httpMethod": "POST", - "description": "Returns permissions that a caller has on the specified resource.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "The name of the region for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "resource" - ], - "request": { - "$ref": "TestPermissionsRequest" - }, - "response": { - "$ref": "TestPermissionsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - } - } - }, - "regionOperations": { - "methods": { - "delete": { - "id": "compute.regionOperations.delete", - "path": "{project}/regions/{region}/operations/{operation}", - "httpMethod": "DELETE", - "description": "Deletes the specified region-specific Operations resource.", - "parameters": { - "operation": { - "type": "string", - "description": "Name of the Operations resource to delete.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "operation" - ], - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "get": { - "id": "compute.regionOperations.get", - "path": "{project}/regions/{region}/operations/{operation}", - "httpMethod": "GET", - "description": "Retrieves the specified region-specific Operations resource.", - "parameters": { - "operation": { - "type": "string", - "description": "Name of the Operations resource to return.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "operation" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "list": { - "id": "compute.regionOperations.list", - "path": "{project}/regions/{region}/operations", - "httpMethod": "GET", - "description": "Retrieves a list of Operation resources contained within the specified region.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region" - ], - "response": { - "$ref": "OperationList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - } - } - }, - "regions": { - "methods": { - "get": { - "id": "compute.regions.get", - "path": "{project}/regions/{region}", - "httpMethod": "GET", - "description": "Returns the specified Region resource. Get a list of available regions by making a list() request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region resource to return.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region" - ], - "response": { - "$ref": "Region" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "list": { - "id": "compute.regions.list", - "path": "{project}/regions", - "httpMethod": "GET", - "description": "Retrieves the list of region resources available to the specified project.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "RegionList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - } - } - }, - "routers": { - "methods": { - "aggregatedList": { - "id": "compute.routers.aggregatedList", - "path": "{project}/aggregated/routers", - "httpMethod": "GET", - "description": "Retrieves an aggregated list of routers.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "RouterAggregatedList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "delete": { - "id": "compute.routers.delete", - "path": "{project}/regions/{region}/routers/{router}", - "httpMethod": "DELETE", - "description": "Deletes the specified Router resource.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "router": { - "type": "string", - "description": "Name of the Router resource to delete.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "router" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "get": { - "id": "compute.routers.get", - "path": "{project}/regions/{region}/routers/{router}", - "httpMethod": "GET", - "description": "Returns the specified Router resource. Get a list of available routers by making a list() request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "router": { - "type": "string", - "description": "Name of the Router resource to return.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "router" - ], - "response": { - "$ref": "Router" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "getRouterStatus": { - "id": "compute.routers.getRouterStatus", - "path": "{project}/regions/{region}/routers/{router}/getRouterStatus", - "httpMethod": "GET", - "description": "Retrieves runtime information of the specified router.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "router": { - "type": "string", - "description": "Name of the Router resource to query.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "router" - ], - "response": { - "$ref": "RouterStatusResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "insert": { - "id": "compute.routers.insert", - "path": "{project}/regions/{region}/routers", - "httpMethod": "POST", - "description": "Creates a Router resource in the specified project and region using the data included in the request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "region" - ], - "request": { - "$ref": "Router" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "list": { - "id": "compute.routers.list", - "path": "{project}/regions/{region}/routers", - "httpMethod": "GET", - "description": "Retrieves a list of Router resources available to the specified project.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region" - ], - "response": { - "$ref": "RouterList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "patch": { - "id": "compute.routers.patch", - "path": "{project}/regions/{region}/routers/{router}", - "httpMethod": "PATCH", - "description": "Patches the specified Router resource with the data included in the request. This method supports PATCH semantics and uses JSON merge patch format and processing rules.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "router": { - "type": "string", - "description": "Name of the Router resource to patch.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "router" - ], - "request": { - "$ref": "Router" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "preview": { - "id": "compute.routers.preview", - "path": "{project}/regions/{region}/routers/{router}/preview", - "httpMethod": "POST", - "description": "Preview fields auto-generated during router create and update operations. Calling this method does NOT create or update the router.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "router": { - "type": "string", - "description": "Name of the Router resource to query.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "router" - ], - "request": { - "$ref": "Router" - }, - "response": { - "$ref": "RoutersPreviewResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "testIamPermissions": { - "id": "compute.routers.testIamPermissions", - "path": "{project}/regions/{region}/routers/{resource}/testIamPermissions", - "httpMethod": "POST", - "description": "Returns permissions that a caller has on the specified resource.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "The name of the region for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "resource" - ], - "request": { - "$ref": "TestPermissionsRequest" - }, - "response": { - "$ref": "TestPermissionsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "update": { - "id": "compute.routers.update", - "path": "{project}/regions/{region}/routers/{router}", - "httpMethod": "PUT", - "description": "Updates the specified Router resource with the data included in the request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "router": { - "type": "string", - "description": "Name of the Router resource to update.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "router" - ], - "request": { - "$ref": "Router" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - } - } - }, - "routes": { - "methods": { - "delete": { - "id": "compute.routes.delete", - "path": "{project}/global/routes/{route}", - "httpMethod": "DELETE", - "description": "Deletes the specified Route resource.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "route": { - "type": "string", - "description": "Name of the Route resource to delete.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "route" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "get": { - "id": "compute.routes.get", - "path": "{project}/global/routes/{route}", - "httpMethod": "GET", - "description": "Returns the specified Route resource. Get a list of available routes by making a list() request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "route": { - "type": "string", - "description": "Name of the Route resource to return.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "route" - ], - "response": { - "$ref": "Route" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "insert": { - "id": "compute.routes.insert", - "path": "{project}/global/routes", - "httpMethod": "POST", - "description": "Creates a Route resource in the specified project using the data included in the request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project" - ], - "request": { - "$ref": "Route" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "list": { - "id": "compute.routes.list", - "path": "{project}/global/routes", - "httpMethod": "GET", - "description": "Retrieves the list of Route resources available to the specified project.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "RouteList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "testIamPermissions": { - "id": "compute.routes.testIamPermissions", - "path": "{project}/global/routes/{resource}/testIamPermissions", - "httpMethod": "POST", - "description": "Returns permissions that a caller has on the specified resource.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "(?:[-a-z0-9_]{0,62}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "resource" - ], - "request": { - "$ref": "TestPermissionsRequest" - }, - "response": { - "$ref": "TestPermissionsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - } - } - }, - "securityPolicies": { - "methods": { - "addRule": { - "id": "compute.securityPolicies.addRule", - "path": "{project}/global/securityPolicies/{securityPolicy}/addRule", - "httpMethod": "POST", - "description": "Inserts a rule into a security policy.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "securityPolicy": { - "type": "string", - "description": "Name of the security policy to update.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "securityPolicy" - ], - "request": { - "$ref": "SecurityPolicyRule" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "delete": { - "id": "compute.securityPolicies.delete", - "path": "{project}/global/securityPolicies/{securityPolicy}", - "httpMethod": "DELETE", - "description": "Deletes the specified policy.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "securityPolicy": { - "type": "string", - "description": "Name of the security policy to delete.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "securityPolicy" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "get": { - "id": "compute.securityPolicies.get", - "path": "{project}/global/securityPolicies/{securityPolicy}", - "httpMethod": "GET", - "description": "List all of the ordered rules present in a single specified policy.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "securityPolicy": { - "type": "string", - "description": "Name of the security policy to get.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "securityPolicy" - ], - "response": { - "$ref": "SecurityPolicy" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "getRule": { - "id": "compute.securityPolicies.getRule", - "path": "{project}/global/securityPolicies/{securityPolicy}/getRule", - "httpMethod": "GET", - "description": "Gets a rule at the specified priority.", - "parameters": { - "priority": { - "type": "integer", - "description": "The priority of the rule to get from the security policy.", - "format": "int32", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "securityPolicy": { - "type": "string", - "description": "Name of the security policy to which the queried rule belongs.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "securityPolicy" - ], - "response": { - "$ref": "SecurityPolicyRule" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "insert": { - "id": "compute.securityPolicies.insert", - "path": "{project}/global/securityPolicies", - "httpMethod": "POST", - "description": "Creates a new policy in the specified project using the data included in the request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project" - ], - "request": { - "$ref": "SecurityPolicy" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "list": { - "id": "compute.securityPolicies.list", - "path": "{project}/global/securityPolicies", - "httpMethod": "GET", - "description": "List all the policies that have been configured for the specified project.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "SecurityPolicyList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "patch": { - "id": "compute.securityPolicies.patch", - "path": "{project}/global/securityPolicies/{securityPolicy}", - "httpMethod": "PATCH", - "description": "Patches the specified policy with the data included in the request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "securityPolicy": { - "type": "string", - "description": "Name of the security policy to update.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "securityPolicy" - ], - "request": { - "$ref": "SecurityPolicy" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "patchRule": { - "id": "compute.securityPolicies.patchRule", - "path": "{project}/global/securityPolicies/{securityPolicy}/patchRule", - "httpMethod": "POST", - "description": "Patches a rule at the specified priority.", - "parameters": { - "priority": { - "type": "integer", - "description": "The priority of the rule to patch.", - "format": "int32", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "securityPolicy": { - "type": "string", - "description": "Name of the security policy to update.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "securityPolicy" - ], - "request": { - "$ref": "SecurityPolicyRule" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "removeRule": { - "id": "compute.securityPolicies.removeRule", - "path": "{project}/global/securityPolicies/{securityPolicy}/removeRule", - "httpMethod": "POST", - "description": "Deletes a rule at the specified priority.", - "parameters": { - "priority": { - "type": "integer", - "description": "The priority of the rule to remove from the security policy.", - "format": "int32", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "securityPolicy": { - "type": "string", - "description": "Name of the security policy to update.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "securityPolicy" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "testIamPermissions": { - "id": "compute.securityPolicies.testIamPermissions", - "path": "{project}/global/securityPolicies/{resource}/testIamPermissions", - "httpMethod": "POST", - "description": "Returns permissions that a caller has on the specified resource.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "(?:[-a-z0-9_]{0,62}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "resource" - ], - "request": { - "$ref": "TestPermissionsRequest" - }, - "response": { - "$ref": "TestPermissionsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - } - } - }, - "snapshots": { - "methods": { - "delete": { - "id": "compute.snapshots.delete", - "path": "{project}/global/snapshots/{snapshot}", - "httpMethod": "DELETE", - "description": "Deletes the specified Snapshot resource. Keep in mind that deleting a single snapshot might not necessarily delete all the data on that snapshot. If any data on the snapshot that is marked for deletion is needed for subsequent snapshots, the data will be moved to the next corresponding snapshot.\n\nFor more information, see Deleting snaphots.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "snapshot": { - "type": "string", - "description": "Name of the Snapshot resource to delete.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "snapshot" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "get": { - "id": "compute.snapshots.get", - "path": "{project}/global/snapshots/{snapshot}", - "httpMethod": "GET", - "description": "Returns the specified Snapshot resource. Get a list of available snapshots by making a list() request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "snapshot": { - "type": "string", - "description": "Name of the Snapshot resource to return.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "snapshot" - ], - "response": { - "$ref": "Snapshot" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "getIamPolicy": { - "id": "compute.snapshots.getIamPolicy", - "path": "{project}/global/snapshots/{resource}/getIamPolicy", - "httpMethod": "GET", - "description": "Gets the access control policy for a resource. May be empty if no such policy or resource exists.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "[a-z0-9](?:[-a-z0-9_]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "resource" - ], - "response": { - "$ref": "Policy" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "list": { - "id": "compute.snapshots.list", - "path": "{project}/global/snapshots", - "httpMethod": "GET", - "description": "Retrieves the list of Snapshot resources contained within the specified project.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "SnapshotList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "setIamPolicy": { - "id": "compute.snapshots.setIamPolicy", - "path": "{project}/global/snapshots/{resource}/setIamPolicy", - "httpMethod": "POST", - "description": "Sets the access control policy on the specified resource. Replaces any existing policy.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "[a-z0-9](?:[-a-z0-9_]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "resource" - ], - "request": { - "$ref": "Policy" - }, - "response": { - "$ref": "Policy" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "setLabels": { - "id": "compute.snapshots.setLabels", - "path": "{project}/global/snapshots/{resource}/setLabels", - "httpMethod": "POST", - "description": "Sets the labels on a snapshot. To learn more about labels, read the Labeling Resources documentation.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "resource" - ], - "request": { - "$ref": "GlobalSetLabelsRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "testIamPermissions": { - "id": "compute.snapshots.testIamPermissions", - "path": "{project}/global/snapshots/{resource}/testIamPermissions", - "httpMethod": "POST", - "description": "Returns permissions that a caller has on the specified resource.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "(?:[-a-z0-9_]{0,62}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "resource" - ], - "request": { - "$ref": "TestPermissionsRequest" - }, - "response": { - "$ref": "TestPermissionsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - } - } - }, - "sslCertificates": { - "methods": { - "delete": { - "id": "compute.sslCertificates.delete", - "path": "{project}/global/sslCertificates/{sslCertificate}", - "httpMethod": "DELETE", - "description": "Deletes the specified SslCertificate resource.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "sslCertificate": { - "type": "string", - "description": "Name of the SslCertificate resource to delete.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "sslCertificate" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "get": { - "id": "compute.sslCertificates.get", - "path": "{project}/global/sslCertificates/{sslCertificate}", - "httpMethod": "GET", - "description": "Returns the specified SslCertificate resource. Get a list of available SSL certificates by making a list() request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "sslCertificate": { - "type": "string", - "description": "Name of the SslCertificate resource to return.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "sslCertificate" - ], - "response": { - "$ref": "SslCertificate" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "insert": { - "id": "compute.sslCertificates.insert", - "path": "{project}/global/sslCertificates", - "httpMethod": "POST", - "description": "Creates a SslCertificate resource in the specified project using the data included in the request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project" - ], - "request": { - "$ref": "SslCertificate" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "list": { - "id": "compute.sslCertificates.list", - "path": "{project}/global/sslCertificates", - "httpMethod": "GET", - "description": "Retrieves the list of SslCertificate resources available to the specified project.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "SslCertificateList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "testIamPermissions": { - "id": "compute.sslCertificates.testIamPermissions", - "path": "{project}/global/sslCertificates/{resource}/testIamPermissions", - "httpMethod": "POST", - "description": "Returns permissions that a caller has on the specified resource.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "(?:[-a-z0-9_]{0,62}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "resource" - ], - "request": { - "$ref": "TestPermissionsRequest" - }, - "response": { - "$ref": "TestPermissionsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - } - } - }, - "sslPolicies": { - "methods": { - "delete": { - "id": "compute.sslPolicies.delete", - "path": "{project}/global/sslPolicies/{sslPolicy}", - "httpMethod": "DELETE", - "description": "Deletes the specified SSL policy. The SSL policy resource can be deleted only if it is not in use by any TargetHttpsProxy or TargetSslProxy resources.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "sslPolicy": { - "type": "string", - "description": "Name of the SSL policy to delete. The name must be 1-63 characters long, and comply with RFC1035.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "sslPolicy" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "get": { - "id": "compute.sslPolicies.get", - "path": "{project}/global/sslPolicies/{sslPolicy}", - "httpMethod": "GET", - "description": "List all of the ordered rules present in a single specified policy.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "sslPolicy": { - "type": "string", - "description": "Name of the SSL policy to update. The name must be 1-63 characters long, and comply with RFC1035.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "sslPolicy" - ], - "response": { - "$ref": "SslPolicy" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "insert": { - "id": "compute.sslPolicies.insert", - "path": "{project}/global/sslPolicies", - "httpMethod": "POST", - "description": "Returns the specified SSL policy resource. Get a list of available SSL policies by making a list() request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project" - ], - "request": { - "$ref": "SslPolicy" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "list": { - "id": "compute.sslPolicies.list", - "path": "{project}/global/sslPolicies", - "httpMethod": "GET", - "description": "List all the SSL policies that have been configured for the specified project.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "SslPoliciesList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "listAvailableFeatures": { - "id": "compute.sslPolicies.listAvailableFeatures", - "path": "{project}/global/sslPolicies/listAvailableFeatures", - "httpMethod": "GET", - "description": "Lists all features that can be specified in the SSL policy when using custom profile.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "SslPoliciesListAvailableFeaturesResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "patch": { - "id": "compute.sslPolicies.patch", - "path": "{project}/global/sslPolicies/{sslPolicy}", - "httpMethod": "PATCH", - "description": "Patches the specified SSL policy with the data included in the request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "sslPolicy": { - "type": "string", - "description": "Name of the SSL policy to update. The name must be 1-63 characters long, and comply with RFC1035.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "sslPolicy" - ], - "request": { - "$ref": "SslPolicy" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "testIamPermissions": { - "id": "compute.sslPolicies.testIamPermissions", - "path": "{project}/global/sslPolicies/{resource}/testIamPermissions", - "httpMethod": "POST", - "description": "Returns permissions that a caller has on the specified resource.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "(?:[-a-z0-9_]{0,62}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "resource" - ], - "request": { - "$ref": "TestPermissionsRequest" - }, - "response": { - "$ref": "TestPermissionsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - } - } - }, - "subnetworks": { - "methods": { - "aggregatedList": { - "id": "compute.subnetworks.aggregatedList", - "path": "{project}/aggregated/subnetworks", - "httpMethod": "GET", - "description": "Retrieves an aggregated list of subnetworks.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "SubnetworkAggregatedList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "delete": { - "id": "compute.subnetworks.delete", - "path": "{project}/regions/{region}/subnetworks/{subnetwork}", - "httpMethod": "DELETE", - "description": "Deletes the specified subnetwork.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "subnetwork": { - "type": "string", - "description": "Name of the Subnetwork resource to delete.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "subnetwork" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "expandIpCidrRange": { - "id": "compute.subnetworks.expandIpCidrRange", - "path": "{project}/regions/{region}/subnetworks/{subnetwork}/expandIpCidrRange", - "httpMethod": "POST", - "description": "Expands the IP CIDR range of the subnetwork to a specified value.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "subnetwork": { - "type": "string", - "description": "Name of the Subnetwork resource to update.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "subnetwork" - ], - "request": { - "$ref": "SubnetworksExpandIpCidrRangeRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "get": { - "id": "compute.subnetworks.get", - "path": "{project}/regions/{region}/subnetworks/{subnetwork}", - "httpMethod": "GET", - "description": "Returns the specified subnetwork. Get a list of available subnetworks list() request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "subnetwork": { - "type": "string", - "description": "Name of the Subnetwork resource to return.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "subnetwork" - ], - "response": { - "$ref": "Subnetwork" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "getIamPolicy": { - "id": "compute.subnetworks.getIamPolicy", - "path": "{project}/regions/{region}/subnetworks/{resource}/getIamPolicy", - "httpMethod": "GET", - "description": "Gets the access control policy for a resource. May be empty if no such policy or resource exists.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "The name of the region for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "resource" - ], - "response": { - "$ref": "Policy" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "insert": { - "id": "compute.subnetworks.insert", - "path": "{project}/regions/{region}/subnetworks", - "httpMethod": "POST", - "description": "Creates a subnetwork in the specified project using the data included in the request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "region" - ], - "request": { - "$ref": "Subnetwork" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "list": { - "id": "compute.subnetworks.list", - "path": "{project}/regions/{region}/subnetworks", - "httpMethod": "GET", - "description": "Retrieves a list of subnetworks available to the specified project.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region" - ], - "response": { - "$ref": "SubnetworkList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "listUsable": { - "id": "compute.subnetworks.listUsable", - "path": "{project}/aggregated/subnetworks/listUsable", - "httpMethod": "GET", - "description": "Retrieves an aggregated list of usable subnetworks.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "UsableSubnetworksAggregatedList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "patch": { - "id": "compute.subnetworks.patch", - "path": "{project}/regions/{region}/subnetworks/{subnetwork}", - "httpMethod": "PATCH", - "description": "Patches the specified subnetwork with the data included in the request. Only the following fields within the subnetwork resource can be specified in the request: secondary_ip_range and allow_subnet_cidr_routes_overlap. It is also mandatory to specify the current fingeprint of the subnetwork resource being patched.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "subnetwork": { - "type": "string", - "description": "Name of the Subnetwork resource to patch.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "subnetwork" - ], - "request": { - "$ref": "Subnetwork" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "setIamPolicy": { - "id": "compute.subnetworks.setIamPolicy", - "path": "{project}/regions/{region}/subnetworks/{resource}/setIamPolicy", - "httpMethod": "POST", - "description": "Sets the access control policy on the specified resource. Replaces any existing policy.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "The name of the region for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "resource" - ], - "request": { - "$ref": "Policy" - }, - "response": { - "$ref": "Policy" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "setPrivateIpGoogleAccess": { - "id": "compute.subnetworks.setPrivateIpGoogleAccess", - "path": "{project}/regions/{region}/subnetworks/{subnetwork}/setPrivateIpGoogleAccess", - "httpMethod": "POST", - "description": "Set whether VMs in this subnet can access Google services without assigning external IP addresses through Private Google Access.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "subnetwork": { - "type": "string", - "description": "Name of the Subnetwork resource.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "subnetwork" - ], - "request": { - "$ref": "SubnetworksSetPrivateIpGoogleAccessRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "testIamPermissions": { - "id": "compute.subnetworks.testIamPermissions", - "path": "{project}/regions/{region}/subnetworks/{resource}/testIamPermissions", - "httpMethod": "POST", - "description": "Returns permissions that a caller has on the specified resource.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "The name of the region for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "resource" - ], - "request": { - "$ref": "TestPermissionsRequest" - }, - "response": { - "$ref": "TestPermissionsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - } - } - }, - "targetHttpProxies": { - "methods": { - "delete": { - "id": "compute.targetHttpProxies.delete", - "path": "{project}/global/targetHttpProxies/{targetHttpProxy}", - "httpMethod": "DELETE", - "description": "Deletes the specified TargetHttpProxy resource.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "targetHttpProxy": { - "type": "string", - "description": "Name of the TargetHttpProxy resource to delete.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "targetHttpProxy" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "get": { - "id": "compute.targetHttpProxies.get", - "path": "{project}/global/targetHttpProxies/{targetHttpProxy}", - "httpMethod": "GET", - "description": "Returns the specified TargetHttpProxy resource. Get a list of available target HTTP proxies by making a list() request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "targetHttpProxy": { - "type": "string", - "description": "Name of the TargetHttpProxy resource to return.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "targetHttpProxy" - ], - "response": { - "$ref": "TargetHttpProxy" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "insert": { - "id": "compute.targetHttpProxies.insert", - "path": "{project}/global/targetHttpProxies", - "httpMethod": "POST", - "description": "Creates a TargetHttpProxy resource in the specified project using the data included in the request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project" - ], - "request": { - "$ref": "TargetHttpProxy" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "list": { - "id": "compute.targetHttpProxies.list", - "path": "{project}/global/targetHttpProxies", - "httpMethod": "GET", - "description": "Retrieves the list of TargetHttpProxy resources available to the specified project.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "TargetHttpProxyList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "setUrlMap": { - "id": "compute.targetHttpProxies.setUrlMap", - "path": "{project}/targetHttpProxies/{targetHttpProxy}/setUrlMap", - "httpMethod": "POST", - "description": "Changes the URL map for TargetHttpProxy.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "targetHttpProxy": { - "type": "string", - "description": "Name of the TargetHttpProxy to set a URL map for.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "targetHttpProxy" - ], - "request": { - "$ref": "UrlMapReference" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "testIamPermissions": { - "id": "compute.targetHttpProxies.testIamPermissions", - "path": "{project}/global/targetHttpProxies/{resource}/testIamPermissions", - "httpMethod": "POST", - "description": "Returns permissions that a caller has on the specified resource.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "(?:[-a-z0-9_]{0,62}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "resource" - ], - "request": { - "$ref": "TestPermissionsRequest" - }, - "response": { - "$ref": "TestPermissionsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - } - } - }, - "targetHttpsProxies": { - "methods": { - "delete": { - "id": "compute.targetHttpsProxies.delete", - "path": "{project}/global/targetHttpsProxies/{targetHttpsProxy}", - "httpMethod": "DELETE", - "description": "Deletes the specified TargetHttpsProxy resource.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "targetHttpsProxy": { - "type": "string", - "description": "Name of the TargetHttpsProxy resource to delete.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "targetHttpsProxy" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "get": { - "id": "compute.targetHttpsProxies.get", - "path": "{project}/global/targetHttpsProxies/{targetHttpsProxy}", - "httpMethod": "GET", - "description": "Returns the specified TargetHttpsProxy resource. Get a list of available target HTTPS proxies by making a list() request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "targetHttpsProxy": { - "type": "string", - "description": "Name of the TargetHttpsProxy resource to return.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "targetHttpsProxy" - ], - "response": { - "$ref": "TargetHttpsProxy" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "insert": { - "id": "compute.targetHttpsProxies.insert", - "path": "{project}/global/targetHttpsProxies", - "httpMethod": "POST", - "description": "Creates a TargetHttpsProxy resource in the specified project using the data included in the request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project" - ], - "request": { - "$ref": "TargetHttpsProxy" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "list": { - "id": "compute.targetHttpsProxies.list", - "path": "{project}/global/targetHttpsProxies", - "httpMethod": "GET", - "description": "Retrieves the list of TargetHttpsProxy resources available to the specified project.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "TargetHttpsProxyList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "setQuicOverride": { - "id": "compute.targetHttpsProxies.setQuicOverride", - "path": "{project}/global/targetHttpsProxies/{targetHttpsProxy}/setQuicOverride", - "httpMethod": "POST", - "description": "Sets the QUIC override policy for TargetHttpsProxy.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "targetHttpsProxy": { - "type": "string", - "description": "Name of the TargetHttpsProxy resource to set the QUIC override policy for. The name should conform to RFC1035.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "targetHttpsProxy" - ], - "request": { - "$ref": "TargetHttpsProxiesSetQuicOverrideRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "setSslCertificates": { - "id": "compute.targetHttpsProxies.setSslCertificates", - "path": "{project}/targetHttpsProxies/{targetHttpsProxy}/setSslCertificates", - "httpMethod": "POST", - "description": "Replaces SslCertificates for TargetHttpsProxy.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "targetHttpsProxy": { - "type": "string", - "description": "Name of the TargetHttpsProxy resource to set an SslCertificates resource for.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "targetHttpsProxy" - ], - "request": { - "$ref": "TargetHttpsProxiesSetSslCertificatesRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "setSslPolicy": { - "id": "compute.targetHttpsProxies.setSslPolicy", - "path": "{project}/global/targetHttpsProxies/{targetHttpsProxy}/setSslPolicy", - "httpMethod": "POST", - "description": "Sets the SSL policy for TargetHttpsProxy. The SSL policy specifies the server-side support for SSL features. This affects connections between clients and the HTTPS proxy load balancer. They do not affect the connection between the load balancer and the backends.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "targetHttpsProxy": { - "type": "string", - "description": "Name of the TargetHttpsProxy resource whose SSL policy is to be set. The name must be 1-63 characters long, and comply with RFC1035.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "targetHttpsProxy" - ], - "request": { - "$ref": "SslPolicyReference" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "setUrlMap": { - "id": "compute.targetHttpsProxies.setUrlMap", - "path": "{project}/targetHttpsProxies/{targetHttpsProxy}/setUrlMap", - "httpMethod": "POST", - "description": "Changes the URL map for TargetHttpsProxy.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "targetHttpsProxy": { - "type": "string", - "description": "Name of the TargetHttpsProxy resource whose URL map is to be set.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "targetHttpsProxy" - ], - "request": { - "$ref": "UrlMapReference" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "testIamPermissions": { - "id": "compute.targetHttpsProxies.testIamPermissions", - "path": "{project}/global/targetHttpsProxies/{resource}/testIamPermissions", - "httpMethod": "POST", - "description": "Returns permissions that a caller has on the specified resource.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "(?:[-a-z0-9_]{0,62}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "resource" - ], - "request": { - "$ref": "TestPermissionsRequest" - }, - "response": { - "$ref": "TestPermissionsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - } - } - }, - "targetInstances": { - "methods": { - "aggregatedList": { - "id": "compute.targetInstances.aggregatedList", - "path": "{project}/aggregated/targetInstances", - "httpMethod": "GET", - "description": "Retrieves an aggregated list of target instances.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "TargetInstanceAggregatedList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "delete": { - "id": "compute.targetInstances.delete", - "path": "{project}/zones/{zone}/targetInstances/{targetInstance}", - "httpMethod": "DELETE", - "description": "Deletes the specified TargetInstance resource.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "targetInstance": { - "type": "string", - "description": "Name of the TargetInstance resource to delete.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "zone": { - "type": "string", - "description": "Name of the zone scoping this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "targetInstance" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "get": { - "id": "compute.targetInstances.get", - "path": "{project}/zones/{zone}/targetInstances/{targetInstance}", - "httpMethod": "GET", - "description": "Returns the specified TargetInstance resource. Get a list of available target instances by making a list() request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "targetInstance": { - "type": "string", - "description": "Name of the TargetInstance resource to return.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "zone": { - "type": "string", - "description": "Name of the zone scoping this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "targetInstance" - ], - "response": { - "$ref": "TargetInstance" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "insert": { - "id": "compute.targetInstances.insert", - "path": "{project}/zones/{zone}/targetInstances", - "httpMethod": "POST", - "description": "Creates a TargetInstance resource in the specified project and zone using the data included in the request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "zone": { - "type": "string", - "description": "Name of the zone scoping this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone" - ], - "request": { - "$ref": "TargetInstance" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "list": { - "id": "compute.targetInstances.list", - "path": "{project}/zones/{zone}/targetInstances", - "httpMethod": "GET", - "description": "Retrieves a list of TargetInstance resources available to the specified project and zone.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "zone": { - "type": "string", - "description": "Name of the zone scoping this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone" - ], - "response": { - "$ref": "TargetInstanceList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "testIamPermissions": { - "id": "compute.targetInstances.testIamPermissions", - "path": "{project}/zones/{zone}/targetInstances/{resource}/testIamPermissions", - "httpMethod": "POST", - "description": "Returns permissions that a caller has on the specified resource.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "zone": { - "type": "string", - "description": "The name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "resource" - ], - "request": { - "$ref": "TestPermissionsRequest" - }, - "response": { - "$ref": "TestPermissionsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - } - } - }, - "targetPools": { - "methods": { - "addHealthCheck": { - "id": "compute.targetPools.addHealthCheck", - "path": "{project}/regions/{region}/targetPools/{targetPool}/addHealthCheck", - "httpMethod": "POST", - "description": "Adds health check URLs to a target pool.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "targetPool": { - "type": "string", - "description": "Name of the target pool to add a health check to.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "targetPool" - ], - "request": { - "$ref": "TargetPoolsAddHealthCheckRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "addInstance": { - "id": "compute.targetPools.addInstance", - "path": "{project}/regions/{region}/targetPools/{targetPool}/addInstance", - "httpMethod": "POST", - "description": "Adds an instance to a target pool.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "targetPool": { - "type": "string", - "description": "Name of the TargetPool resource to add instances to.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "targetPool" - ], - "request": { - "$ref": "TargetPoolsAddInstanceRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "aggregatedList": { - "id": "compute.targetPools.aggregatedList", - "path": "{project}/aggregated/targetPools", - "httpMethod": "GET", - "description": "Retrieves an aggregated list of target pools.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "TargetPoolAggregatedList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "delete": { - "id": "compute.targetPools.delete", - "path": "{project}/regions/{region}/targetPools/{targetPool}", - "httpMethod": "DELETE", - "description": "Deletes the specified target pool.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "targetPool": { - "type": "string", - "description": "Name of the TargetPool resource to delete.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "targetPool" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "get": { - "id": "compute.targetPools.get", - "path": "{project}/regions/{region}/targetPools/{targetPool}", - "httpMethod": "GET", - "description": "Returns the specified target pool. Get a list of available target pools by making a list() request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "targetPool": { - "type": "string", - "description": "Name of the TargetPool resource to return.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "targetPool" - ], - "response": { - "$ref": "TargetPool" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "getHealth": { - "id": "compute.targetPools.getHealth", - "path": "{project}/regions/{region}/targetPools/{targetPool}/getHealth", - "httpMethod": "POST", - "description": "Gets the most recent health check results for each IP for the instance that is referenced by the given target pool.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "targetPool": { - "type": "string", - "description": "Name of the TargetPool resource to which the queried instance belongs.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "targetPool" - ], - "request": { - "$ref": "InstanceReference" - }, - "response": { - "$ref": "TargetPoolInstanceHealth" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "insert": { - "id": "compute.targetPools.insert", - "path": "{project}/regions/{region}/targetPools", - "httpMethod": "POST", - "description": "Creates a target pool in the specified project and region using the data included in the request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "region" - ], - "request": { - "$ref": "TargetPool" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "list": { - "id": "compute.targetPools.list", - "path": "{project}/regions/{region}/targetPools", - "httpMethod": "GET", - "description": "Retrieves a list of target pools available to the specified project and region.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region" - ], - "response": { - "$ref": "TargetPoolList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "removeHealthCheck": { - "id": "compute.targetPools.removeHealthCheck", - "path": "{project}/regions/{region}/targetPools/{targetPool}/removeHealthCheck", - "httpMethod": "POST", - "description": "Removes health check URL from a target pool.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "targetPool": { - "type": "string", - "description": "Name of the target pool to remove health checks from.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "targetPool" - ], - "request": { - "$ref": "TargetPoolsRemoveHealthCheckRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "removeInstance": { - "id": "compute.targetPools.removeInstance", - "path": "{project}/regions/{region}/targetPools/{targetPool}/removeInstance", - "httpMethod": "POST", - "description": "Removes instance URL from a target pool.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "targetPool": { - "type": "string", - "description": "Name of the TargetPool resource to remove instances from.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "targetPool" - ], - "request": { - "$ref": "TargetPoolsRemoveInstanceRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "setBackup": { - "id": "compute.targetPools.setBackup", - "path": "{project}/regions/{region}/targetPools/{targetPool}/setBackup", - "httpMethod": "POST", - "description": "Changes a backup target pool's configurations.", - "parameters": { - "failoverRatio": { - "type": "number", - "description": "New failoverRatio value for the target pool.", - "format": "float", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "targetPool": { - "type": "string", - "description": "Name of the TargetPool resource to set a backup pool for.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "targetPool" - ], - "request": { - "$ref": "TargetReference" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "testIamPermissions": { - "id": "compute.targetPools.testIamPermissions", - "path": "{project}/regions/{region}/targetPools/{resource}/testIamPermissions", - "httpMethod": "POST", - "description": "Returns permissions that a caller has on the specified resource.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "The name of the region for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "resource" - ], - "request": { - "$ref": "TestPermissionsRequest" - }, - "response": { - "$ref": "TestPermissionsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - } - } - }, - "targetSslProxies": { - "methods": { - "delete": { - "id": "compute.targetSslProxies.delete", - "path": "{project}/global/targetSslProxies/{targetSslProxy}", - "httpMethod": "DELETE", - "description": "Deletes the specified TargetSslProxy resource.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "targetSslProxy": { - "type": "string", - "description": "Name of the TargetSslProxy resource to delete.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "targetSslProxy" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "get": { - "id": "compute.targetSslProxies.get", - "path": "{project}/global/targetSslProxies/{targetSslProxy}", - "httpMethod": "GET", - "description": "Returns the specified TargetSslProxy resource. Get a list of available target SSL proxies by making a list() request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "targetSslProxy": { - "type": "string", - "description": "Name of the TargetSslProxy resource to return.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "targetSslProxy" - ], - "response": { - "$ref": "TargetSslProxy" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "insert": { - "id": "compute.targetSslProxies.insert", - "path": "{project}/global/targetSslProxies", - "httpMethod": "POST", - "description": "Creates a TargetSslProxy resource in the specified project using the data included in the request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project" - ], - "request": { - "$ref": "TargetSslProxy" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "list": { - "id": "compute.targetSslProxies.list", - "path": "{project}/global/targetSslProxies", - "httpMethod": "GET", - "description": "Retrieves the list of TargetSslProxy resources available to the specified project.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "TargetSslProxyList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "setBackendService": { - "id": "compute.targetSslProxies.setBackendService", - "path": "{project}/global/targetSslProxies/{targetSslProxy}/setBackendService", - "httpMethod": "POST", - "description": "Changes the BackendService for TargetSslProxy.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "targetSslProxy": { - "type": "string", - "description": "Name of the TargetSslProxy resource whose BackendService resource is to be set.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "targetSslProxy" - ], - "request": { - "$ref": "TargetSslProxiesSetBackendServiceRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "setProxyHeader": { - "id": "compute.targetSslProxies.setProxyHeader", - "path": "{project}/global/targetSslProxies/{targetSslProxy}/setProxyHeader", - "httpMethod": "POST", - "description": "Changes the ProxyHeaderType for TargetSslProxy.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "targetSslProxy": { - "type": "string", - "description": "Name of the TargetSslProxy resource whose ProxyHeader is to be set.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "targetSslProxy" - ], - "request": { - "$ref": "TargetSslProxiesSetProxyHeaderRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "setSslCertificates": { - "id": "compute.targetSslProxies.setSslCertificates", - "path": "{project}/global/targetSslProxies/{targetSslProxy}/setSslCertificates", - "httpMethod": "POST", - "description": "Changes SslCertificates for TargetSslProxy.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "targetSslProxy": { - "type": "string", - "description": "Name of the TargetSslProxy resource whose SslCertificate resource is to be set.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "targetSslProxy" - ], - "request": { - "$ref": "TargetSslProxiesSetSslCertificatesRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "setSslPolicy": { - "id": "compute.targetSslProxies.setSslPolicy", - "path": "{project}/global/targetSslProxies/{targetSslProxy}/setSslPolicy", - "httpMethod": "POST", - "description": "Sets the SSL policy for TargetSslProxy. The SSL policy specifies the server-side support for SSL features. This affects connections between clients and the SSL proxy load balancer. They do not affect the connection between the load balancer and the backends.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "targetSslProxy": { - "type": "string", - "description": "Name of the TargetSslProxy resource whose SSL policy is to be set. The name must be 1-63 characters long, and comply with RFC1035.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "targetSslProxy" - ], - "request": { - "$ref": "SslPolicyReference" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "testIamPermissions": { - "id": "compute.targetSslProxies.testIamPermissions", - "path": "{project}/global/targetSslProxies/{resource}/testIamPermissions", - "httpMethod": "POST", - "description": "Returns permissions that a caller has on the specified resource.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "(?:[-a-z0-9_]{0,62}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "resource" - ], - "request": { - "$ref": "TestPermissionsRequest" - }, - "response": { - "$ref": "TestPermissionsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - } - } - }, - "targetTcpProxies": { - "methods": { - "delete": { - "id": "compute.targetTcpProxies.delete", - "path": "{project}/global/targetTcpProxies/{targetTcpProxy}", - "httpMethod": "DELETE", - "description": "Deletes the specified TargetTcpProxy resource.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "targetTcpProxy": { - "type": "string", - "description": "Name of the TargetTcpProxy resource to delete.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "targetTcpProxy" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "get": { - "id": "compute.targetTcpProxies.get", - "path": "{project}/global/targetTcpProxies/{targetTcpProxy}", - "httpMethod": "GET", - "description": "Returns the specified TargetTcpProxy resource. Get a list of available target TCP proxies by making a list() request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "targetTcpProxy": { - "type": "string", - "description": "Name of the TargetTcpProxy resource to return.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "targetTcpProxy" - ], - "response": { - "$ref": "TargetTcpProxy" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "insert": { - "id": "compute.targetTcpProxies.insert", - "path": "{project}/global/targetTcpProxies", - "httpMethod": "POST", - "description": "Creates a TargetTcpProxy resource in the specified project using the data included in the request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project" - ], - "request": { - "$ref": "TargetTcpProxy" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "list": { - "id": "compute.targetTcpProxies.list", - "path": "{project}/global/targetTcpProxies", - "httpMethod": "GET", - "description": "Retrieves the list of TargetTcpProxy resources available to the specified project.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "TargetTcpProxyList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "setBackendService": { - "id": "compute.targetTcpProxies.setBackendService", - "path": "{project}/global/targetTcpProxies/{targetTcpProxy}/setBackendService", - "httpMethod": "POST", - "description": "Changes the BackendService for TargetTcpProxy.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "targetTcpProxy": { - "type": "string", - "description": "Name of the TargetTcpProxy resource whose BackendService resource is to be set.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "targetTcpProxy" - ], - "request": { - "$ref": "TargetTcpProxiesSetBackendServiceRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "setProxyHeader": { - "id": "compute.targetTcpProxies.setProxyHeader", - "path": "{project}/global/targetTcpProxies/{targetTcpProxy}/setProxyHeader", - "httpMethod": "POST", - "description": "Changes the ProxyHeaderType for TargetTcpProxy.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "targetTcpProxy": { - "type": "string", - "description": "Name of the TargetTcpProxy resource whose ProxyHeader is to be set.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "targetTcpProxy" - ], - "request": { - "$ref": "TargetTcpProxiesSetProxyHeaderRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "testIamPermissions": { - "id": "compute.targetTcpProxies.testIamPermissions", - "path": "{project}/global/targetTcpProxies/{resource}/testIamPermissions", - "httpMethod": "POST", - "description": "Returns permissions that a caller has on the specified resource.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "(?:[-a-z0-9_]{0,62}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "resource" - ], - "request": { - "$ref": "TestPermissionsRequest" - }, - "response": { - "$ref": "TestPermissionsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - } - } - }, - "targetVpnGateways": { - "methods": { - "aggregatedList": { - "id": "compute.targetVpnGateways.aggregatedList", - "path": "{project}/aggregated/targetVpnGateways", - "httpMethod": "GET", - "description": "Retrieves an aggregated list of target VPN gateways.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "TargetVpnGatewayAggregatedList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "delete": { - "id": "compute.targetVpnGateways.delete", - "path": "{project}/regions/{region}/targetVpnGateways/{targetVpnGateway}", - "httpMethod": "DELETE", - "description": "Deletes the specified target VPN gateway.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "targetVpnGateway": { - "type": "string", - "description": "Name of the target VPN gateway to delete.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "targetVpnGateway" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "get": { - "id": "compute.targetVpnGateways.get", - "path": "{project}/regions/{region}/targetVpnGateways/{targetVpnGateway}", - "httpMethod": "GET", - "description": "Returns the specified target VPN gateway. Get a list of available target VPN gateways by making a list() request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "targetVpnGateway": { - "type": "string", - "description": "Name of the target VPN gateway to return.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "targetVpnGateway" - ], - "response": { - "$ref": "TargetVpnGateway" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "insert": { - "id": "compute.targetVpnGateways.insert", - "path": "{project}/regions/{region}/targetVpnGateways", - "httpMethod": "POST", - "description": "Creates a target VPN gateway in the specified project and region using the data included in the request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "region" - ], - "request": { - "$ref": "TargetVpnGateway" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "list": { - "id": "compute.targetVpnGateways.list", - "path": "{project}/regions/{region}/targetVpnGateways", - "httpMethod": "GET", - "description": "Retrieves a list of target VPN gateways available to the specified project and region.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region" - ], - "response": { - "$ref": "TargetVpnGatewayList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "setLabels": { - "id": "compute.targetVpnGateways.setLabels", - "path": "{project}/regions/{region}/targetVpnGateways/{resource}/setLabels", - "httpMethod": "POST", - "description": "Sets the labels on a TargetVpnGateway. To learn more about labels, read the Labeling Resources documentation.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "The region for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "resource" - ], - "request": { - "$ref": "RegionSetLabelsRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "testIamPermissions": { - "id": "compute.targetVpnGateways.testIamPermissions", - "path": "{project}/regions/{region}/targetVpnGateways/{resource}/testIamPermissions", - "httpMethod": "POST", - "description": "Returns permissions that a caller has on the specified resource.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "The name of the region for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "resource" - ], - "request": { - "$ref": "TestPermissionsRequest" - }, - "response": { - "$ref": "TestPermissionsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - } - } - }, - "urlMaps": { - "methods": { - "delete": { - "id": "compute.urlMaps.delete", - "path": "{project}/global/urlMaps/{urlMap}", - "httpMethod": "DELETE", - "description": "Deletes the specified UrlMap resource.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "urlMap": { - "type": "string", - "description": "Name of the UrlMap resource to delete.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "urlMap" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "get": { - "id": "compute.urlMaps.get", - "path": "{project}/global/urlMaps/{urlMap}", - "httpMethod": "GET", - "description": "Returns the specified UrlMap resource. Get a list of available URL maps by making a list() request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "urlMap": { - "type": "string", - "description": "Name of the UrlMap resource to return.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "urlMap" - ], - "response": { - "$ref": "UrlMap" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "insert": { - "id": "compute.urlMaps.insert", - "path": "{project}/global/urlMaps", - "httpMethod": "POST", - "description": "Creates a UrlMap resource in the specified project using the data included in the request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project" - ], - "request": { - "$ref": "UrlMap" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "invalidateCache": { - "id": "compute.urlMaps.invalidateCache", - "path": "{project}/global/urlMaps/{urlMap}/invalidateCache", - "httpMethod": "POST", - "description": "Initiates a cache invalidation operation, invalidating the specified path, scoped to the specified UrlMap.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "urlMap": { - "type": "string", - "description": "Name of the UrlMap scoping this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "urlMap" - ], - "request": { - "$ref": "CacheInvalidationRule" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "list": { - "id": "compute.urlMaps.list", - "path": "{project}/global/urlMaps", - "httpMethod": "GET", - "description": "Retrieves the list of UrlMap resources available to the specified project.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "UrlMapList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "patch": { - "id": "compute.urlMaps.patch", - "path": "{project}/global/urlMaps/{urlMap}", - "httpMethod": "PATCH", - "description": "Patches the specified UrlMap resource with the data included in the request. This method supports PATCH semantics and uses the JSON merge patch format and processing rules.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "urlMap": { - "type": "string", - "description": "Name of the UrlMap resource to patch.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "urlMap" - ], - "request": { - "$ref": "UrlMap" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "testIamPermissions": { - "id": "compute.urlMaps.testIamPermissions", - "path": "{project}/global/urlMaps/{resource}/testIamPermissions", - "httpMethod": "POST", - "description": "Returns permissions that a caller has on the specified resource.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "(?:[-a-z0-9_]{0,62}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "resource" - ], - "request": { - "$ref": "TestPermissionsRequest" - }, - "response": { - "$ref": "TestPermissionsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "update": { - "id": "compute.urlMaps.update", - "path": "{project}/global/urlMaps/{urlMap}", - "httpMethod": "PUT", - "description": "Updates the specified UrlMap resource with the data included in the request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "urlMap": { - "type": "string", - "description": "Name of the UrlMap resource to update.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "urlMap" - ], - "request": { - "$ref": "UrlMap" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "validate": { - "id": "compute.urlMaps.validate", - "path": "{project}/global/urlMaps/{urlMap}/validate", - "httpMethod": "POST", - "description": "Runs static validation for the UrlMap. In particular, the tests of the provided UrlMap will be run. Calling this method does NOT create the UrlMap.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "urlMap": { - "type": "string", - "description": "Name of the UrlMap resource to be validated as.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "urlMap" - ], - "request": { - "$ref": "UrlMapsValidateRequest" - }, - "response": { - "$ref": "UrlMapsValidateResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - } - } - }, - "vpnTunnels": { - "methods": { - "aggregatedList": { - "id": "compute.vpnTunnels.aggregatedList", - "path": "{project}/aggregated/vpnTunnels", - "httpMethod": "GET", - "description": "Retrieves an aggregated list of VPN tunnels.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "VpnTunnelAggregatedList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "delete": { - "id": "compute.vpnTunnels.delete", - "path": "{project}/regions/{region}/vpnTunnels/{vpnTunnel}", - "httpMethod": "DELETE", - "description": "Deletes the specified VpnTunnel resource.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "vpnTunnel": { - "type": "string", - "description": "Name of the VpnTunnel resource to delete.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "vpnTunnel" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "get": { - "id": "compute.vpnTunnels.get", - "path": "{project}/regions/{region}/vpnTunnels/{vpnTunnel}", - "httpMethod": "GET", - "description": "Returns the specified VpnTunnel resource. Get a list of available VPN tunnels by making a list() request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "vpnTunnel": { - "type": "string", - "description": "Name of the VpnTunnel resource to return.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "vpnTunnel" - ], - "response": { - "$ref": "VpnTunnel" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "insert": { - "id": "compute.vpnTunnels.insert", - "path": "{project}/regions/{region}/vpnTunnels", - "httpMethod": "POST", - "description": "Creates a VpnTunnel resource in the specified project and region using the data included in the request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "region" - ], - "request": { - "$ref": "VpnTunnel" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "list": { - "id": "compute.vpnTunnels.list", - "path": "{project}/regions/{region}/vpnTunnels", - "httpMethod": "GET", - "description": "Retrieves a list of VpnTunnel resources contained in the specified project and region.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region" - ], - "response": { - "$ref": "VpnTunnelList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "setLabels": { - "id": "compute.vpnTunnels.setLabels", - "path": "{project}/regions/{region}/vpnTunnels/{resource}/setLabels", - "httpMethod": "POST", - "description": "Sets the labels on a VpnTunnel. To learn more about labels, read the Labeling Resources documentation.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "The region for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "resource" - ], - "request": { - "$ref": "RegionSetLabelsRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "testIamPermissions": { - "id": "compute.vpnTunnels.testIamPermissions", - "path": "{project}/regions/{region}/vpnTunnels/{resource}/testIamPermissions", - "httpMethod": "POST", - "description": "Returns permissions that a caller has on the specified resource.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "The name of the region for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "resource" - ], - "request": { - "$ref": "TestPermissionsRequest" - }, - "response": { - "$ref": "TestPermissionsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - } - } - }, - "zoneOperations": { - "methods": { - "delete": { - "id": "compute.zoneOperations.delete", - "path": "{project}/zones/{zone}/operations/{operation}", - "httpMethod": "DELETE", - "description": "Deletes the specified zone-specific Operations resource.", - "parameters": { - "operation": { - "type": "string", - "description": "Name of the Operations resource to delete.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "zone": { - "type": "string", - "description": "Name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "operation" - ], - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "get": { - "id": "compute.zoneOperations.get", - "path": "{project}/zones/{zone}/operations/{operation}", - "httpMethod": "GET", - "description": "Retrieves the specified zone-specific Operations resource.", - "parameters": { - "operation": { - "type": "string", - "description": "Name of the Operations resource to return.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "zone": { - "type": "string", - "description": "Name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "operation" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "list": { - "id": "compute.zoneOperations.list", - "path": "{project}/zones/{zone}/operations", - "httpMethod": "GET", - "description": "Retrieves a list of Operation resources contained within the specified zone.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "zone": { - "type": "string", - "description": "Name of the zone for request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone" - ], - "response": { - "$ref": "OperationList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - } - } - }, - "zones": { - "methods": { - "get": { - "id": "compute.zones.get", - "path": "{project}/zones/{zone}", - "httpMethod": "GET", - "description": "Returns the specified Zone resource. Get a list of available zones by making a list() request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "zone": { - "type": "string", - "description": "Name of the zone resource to return.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone" - ], - "response": { - "$ref": "Zone" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "list": { - "id": "compute.zones.list", - "path": "{project}/zones", - "httpMethod": "GET", - "description": "Retrieves the list of Zone resources available to the specified project.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "ZoneList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - } - } - } - } -} + "servicePath": "compute/alpha/projects/", + "title": "Compute Engine API", + "version": "alpha" +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/compute/v0.alpha/compute-gen.go b/vendor/google.golang.org/api/compute/v0.alpha/compute-gen.go index 269401a1b..f2cf688e3 100644 --- a/vendor/google.golang.org/api/compute/v0.alpha/compute-gen.go +++ b/vendor/google.golang.org/api/compute/v0.alpha/compute-gen.go @@ -76,7 +76,6 @@ func New(client *http.Client) (*Service, error) { s.Autoscalers = NewAutoscalersService(s) s.BackendBuckets = NewBackendBucketsService(s) s.BackendServices = NewBackendServicesService(s) - s.ClientSslPolicies = NewClientSslPoliciesService(s) s.DiskTypes = NewDiskTypesService(s) s.Disks = NewDisksService(s) s.Firewalls = NewFirewallsService(s) @@ -103,15 +102,20 @@ func New(client *http.Client) (*Service, error) { s.MaintenancePolicies = NewMaintenancePoliciesService(s) s.NetworkEndpointGroups = NewNetworkEndpointGroupsService(s) s.Networks = NewNetworksService(s) + s.NodeGroups = NewNodeGroupsService(s) + s.NodeTemplates = NewNodeTemplatesService(s) s.Projects = NewProjectsService(s) s.RegionAutoscalers = NewRegionAutoscalersService(s) s.RegionBackendServices = NewRegionBackendServicesService(s) s.RegionCommitments = NewRegionCommitmentsService(s) s.RegionDiskTypes = NewRegionDiskTypesService(s) s.RegionDisks = NewRegionDisksService(s) + s.RegionHealthChecks = NewRegionHealthChecksService(s) s.RegionInstanceGroupManagers = NewRegionInstanceGroupManagersService(s) s.RegionInstanceGroups = NewRegionInstanceGroupsService(s) s.RegionOperations = NewRegionOperationsService(s) + s.RegionTargetHttpProxies = NewRegionTargetHttpProxiesService(s) + s.RegionUrlMaps = NewRegionUrlMapsService(s) s.Regions = NewRegionsService(s) s.Routers = NewRoutersService(s) s.Routes = NewRoutesService(s) @@ -149,8 +153,6 @@ type Service struct { BackendServices *BackendServicesService - ClientSslPolicies *ClientSslPoliciesService - DiskTypes *DiskTypesService Disks *DisksService @@ -203,6 +205,10 @@ type Service struct { Networks *NetworksService + NodeGroups *NodeGroupsService + + NodeTemplates *NodeTemplatesService + Projects *ProjectsService RegionAutoscalers *RegionAutoscalersService @@ -215,12 +221,18 @@ type Service struct { RegionDisks *RegionDisksService + RegionHealthChecks *RegionHealthChecksService + RegionInstanceGroupManagers *RegionInstanceGroupManagersService RegionInstanceGroups *RegionInstanceGroupsService RegionOperations *RegionOperationsService + RegionTargetHttpProxies *RegionTargetHttpProxiesService + + RegionUrlMaps *RegionUrlMapsService + Regions *RegionsService Routers *RoutersService @@ -312,15 +324,6 @@ type BackendServicesService struct { s *Service } -func NewClientSslPoliciesService(s *Service) *ClientSslPoliciesService { - rs := &ClientSslPoliciesService{s: s} - return rs -} - -type ClientSslPoliciesService struct { - s *Service -} - func NewDiskTypesService(s *Service) *DiskTypesService { rs := &DiskTypesService{s: s} return rs @@ -555,6 +558,24 @@ type NetworksService struct { s *Service } +func NewNodeGroupsService(s *Service) *NodeGroupsService { + rs := &NodeGroupsService{s: s} + return rs +} + +type NodeGroupsService struct { + s *Service +} + +func NewNodeTemplatesService(s *Service) *NodeTemplatesService { + rs := &NodeTemplatesService{s: s} + return rs +} + +type NodeTemplatesService struct { + s *Service +} + func NewProjectsService(s *Service) *ProjectsService { rs := &ProjectsService{s: s} return rs @@ -609,6 +630,15 @@ type RegionDisksService struct { s *Service } +func NewRegionHealthChecksService(s *Service) *RegionHealthChecksService { + rs := &RegionHealthChecksService{s: s} + return rs +} + +type RegionHealthChecksService struct { + s *Service +} + func NewRegionInstanceGroupManagersService(s *Service) *RegionInstanceGroupManagersService { rs := &RegionInstanceGroupManagersService{s: s} return rs @@ -636,6 +666,24 @@ type RegionOperationsService struct { s *Service } +func NewRegionTargetHttpProxiesService(s *Service) *RegionTargetHttpProxiesService { + rs := &RegionTargetHttpProxiesService{s: s} + return rs +} + +type RegionTargetHttpProxiesService struct { + s *Service +} + +func NewRegionUrlMapsService(s *Service) *RegionUrlMapsService { + rs := &RegionUrlMapsService{s: s} + return rs +} + +type RegionUrlMapsService struct { + s *Service +} + func NewRegionsService(s *Service) *RegionsService { rs := &RegionsService{s: s} return rs @@ -878,7 +926,9 @@ type AcceleratorType struct { SelfLink string `json:"selfLink,omitempty"` // Zone: [Output Only] The name of the zone where the accelerator type - // resides, such as us-central1-a. + // resides, such as us-central1-a. You must specify this field as part + // of the HTTP request URL. It is not settable as a field in the request + // body. Zone string `json:"zone,omitempty"` // ServerResponse contains the HTTP response code and headers from the @@ -1501,12 +1551,16 @@ type Address struct { // Name: Name of the resource. Provided by the client when the resource // is created. The name must be 1-63 characters long, and comply with // RFC1035. Specifically, the name must be 1-63 characters long and - // match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means + // match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means // the first character must be a lowercase letter, and all following // characters must be a dash, lowercase letter, or digit, except the // last character, which cannot be a dash. Name string `json:"name,omitempty"` + // Network: The URL of the network in which to reserve the address. This + // field can only be used with INTERNAL type with VPC_PEERING purpose. + Network string `json:"network,omitempty"` + // NetworkTier: This signifies the networking tier used for configuring // this Address and can only take the following values: PREMIUM , // STANDARD. @@ -1519,8 +1573,23 @@ type Address struct { // "STANDARD" NetworkTier string `json:"networkTier,omitempty"` + // PrefixLength: The prefix length if the resource reprensents an IP + // range. + PrefixLength int64 `json:"prefixLength,omitempty"` + + // Purpose: The purpose of resource, only used with INTERNAL type. + // + // Possible values: + // "DNS_RESOLVER" + // "GCE_ENDPOINT" + // "UNSPECIFIED_PURPOSE" + // "VPC_PEERING" + Purpose string `json:"purpose,omitempty"` + // Region: [Output Only] URL of the region where the regional address - // resides. This field is not applicable to global addresses. + // resides. This field is not applicable to global addresses. You must + // specify this field as part of the HTTP request URL. You cannot set + // this field in the request body. Region string `json:"region,omitempty"` // SelfLink: [Output Only] Server-defined URL for the resource. @@ -2233,9 +2302,9 @@ type AttachedDiskInitializeParams struct { // not specified, the default is pd-standard, specified using the full // URL. For // example: + // https://www.googleapis.com/compute/v1/projects/project/zones/ + // zone/diskTypes/pd-standard // - // https://www.googleapis.com/compute/v1/projects/project/zones - // /zone/diskTypes/pd-standard // // Other values include pd-ssd and local-ssd. If you define this field, // you can provide either the full or partial URL. For example, the @@ -2260,26 +2329,29 @@ type AttachedDiskInitializeParams struct { // specify the image by its family name. For example, specify // family/debian-8 to use the latest Debian 8 // image: - // // projects/debian-cloud/global/images/family/debian-8 // - // Alternatively, use a specific version of a public operating system - // image: // + // Alternati + // vely, use a specific version of a public operating system + // image: // projects/debian-cloud/global/images/debian-8-jessie-vYYYYMMDD // - // To create a disk with a custom image that you created, specify the - // image name in the following format: // + // + // To create a disk with a custom image that you created, specify the + // image name in the following + // format: // global/images/my-custom-image // + // // You can also specify a custom image by its image family, which // returns the latest version of the image in that family. Replace the // image name with // family/family-name: - // // global/images/family/my-image-family // + // // If the source image is deleted later, this field will not be set. SourceImage string `json:"sourceImage,omitempty"` @@ -2323,7 +2395,7 @@ func (s *AttachedDiskInitializeParams) MarshalJSON() ([]byte, error) { // If there are AuditConfigs for both `allServices` and a specific // service, the union of the two AuditConfigs is used for that service: // the log_types specified in each AuditConfig are enabled, and the -// exempted_members in each AuditConfig are exempted. +// exempted_members in each AuditLogConfig are exempted. // // Example Policy with multiple AuditConfigs: // @@ -2495,7 +2567,7 @@ type Autoscaler struct { // Name: Name of the resource. Provided by the client when the resource // is created. The name must be 1-63 characters long, and comply with // RFC1035. Specifically, the name must be 1-63 characters long and - // match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means + // match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means // the first character must be a lowercase letter, and all following // characters must be a dash, lowercase letter, or digit, except the // last character, which cannot be a dash. @@ -3633,7 +3705,7 @@ type BackendBucket struct { // Name: Name of the resource. Provided by the client when the resource // is created. The name must be 1-63 characters long, and comply with // RFC1035. Specifically, the name must be 1-63 characters long and - // match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means + // match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means // the first character must be a lowercase letter, and all following // characters must be a dash, lowercase letter, or digit, except the // last character, which cannot be a dash. @@ -3955,7 +4027,7 @@ type BackendService struct { // Name: Name of the resource. Provided by the client when the resource // is created. The name must be 1-63 characters long, and comply with // RFC1035. Specifically, the name must be 1-63 characters long and - // match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means + // match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means // the first character must be a lowercase letter, and all following // characters must be a dash, lowercase letter, or digit, except the // last character, which cannot be a dash. @@ -3994,7 +4066,8 @@ type BackendService struct { // Region: [Output Only] URL of the region where the regional backend // service resides. This field is not applicable to global backend - // services. + // services. You must specify this field as part of the HTTP request + // URL. It is not settable as a field in the request body. Region string `json:"region,omitempty"` // SecurityPolicy: [Output Only] The resource URL for the security @@ -4795,7 +4868,8 @@ type Binding struct { // Condition: The condition that is associated with this binding. NOTE: // an unsatisfied condition will not allow user access via current // binding. Different bindings, including their conditions, are examined - // independently. This field is GOOGLE_INTERNAL. + // independently. This field is only visible as GOOGLE_INTERNAL or + // CONDITION_TRUSTED_TESTER. Condition *Expr `json:"condition,omitempty"` // Members: Specifies the identities requesting access for a Cloud @@ -4972,7 +5046,7 @@ type Commitment struct { // Name: Name of the resource. Provided by the client when the resource // is created. The name must be 1-63 characters long, and comply with // RFC1035. Specifically, the name must be 1-63 characters long and - // match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means + // match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means // the first character must be a lowercase letter, and all following // characters must be a dash, lowercase letter, or digit, except the // last character, which cannot be a dash. @@ -5018,6 +5092,17 @@ type Commitment struct { // of the status. StatusMessage string `json:"statusMessage,omitempty"` + // Type: The type of commitment, which affects the discount rate and the + // eligible resources. Type MEMORY_OPTIMIZED_VM specifies a commitment + // that will only apply to memory optimized VMs. Type NORMAL specifies a + // commitment that applies to all other resources. + // + // Possible values: + // "MEMORY_OPTIMIZED_VM" + // "NORMAL" + // "TYPE_UNSPECIFIED" + Type string `json:"type,omitempty"` + // ServerResponse contains the HTTP response code and headers from the // server. googleapi.ServerResponse `json:"-"` @@ -5498,6 +5583,7 @@ type Condition struct { // "APPROVER" // "ATTRIBUTION" // "AUTHORITY" + // "CREDENTIALS_TYPE" // "JUSTIFICATION_TYPE" // "NO_ATTR" // "SECURITY_REALM" @@ -5848,7 +5934,7 @@ type Disk struct { // Name: Name of the resource. Provided by the client when the resource // is created. The name must be 1-63 characters long, and comply with // RFC1035. Specifically, the name must be 1-63 characters long and - // match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means + // match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means // the first character must be a lowercase letter, and all following // characters must be a dash, lowercase letter, or digit, except the // last character, which cannot be a dash. @@ -5866,7 +5952,9 @@ type Disk struct { PhysicalBlockSizeBytes int64 `json:"physicalBlockSizeBytes,omitempty,string"` // Region: [Output Only] URL of the region where the disk resides. Only - // applicable for regional resources. + // applicable for regional resources. You must specify this field as + // part of the HTTP request URL. It is not settable as a field in the + // request body. Region string `json:"region,omitempty"` // ReplicaZones: URLs of the zones where the disk should be replicated @@ -5895,24 +5983,26 @@ type Disk struct { // specify the image by its family name. For example, specify // family/debian-8 to use the latest Debian 8 // image: - // // projects/debian-cloud/global/images/family/debian-8 // - // Alternatively, use a specific version of a public operating system - // image: // + // Alternati + // vely, use a specific version of a public operating system + // image: // projects/debian-cloud/global/images/debian-8-jessie-vYYYYMMDD // - // To create a disk with a custom image that you created, specify the - // image name in the following format: // + // + // To create a disk with a custom image that you created, specify the + // image name in the following + // format: // global/images/my-custom-image // + // // You can also specify a custom image by its image family, which // returns the latest version of the image in that family. Replace the // image name with // family/family-name: - // // global/images/family/my-image-family SourceImage string `json:"sourceImage,omitempty"` @@ -5968,14 +6058,17 @@ type Disk struct { StorageType string `json:"storageType,omitempty"` // Type: URL of the disk type resource describing which disk type to use - // to create the disk. Provide this when creating the disk. + // to create the disk. Provide this when creating the disk. For example: + // project/zones/zone/diskTypes/pd-standard or pd-ssd Type string `json:"type,omitempty"` // Users: [Output Only] Links to the users of the disk (attached // instances) in form: project/zones/zone/instances/instance Users []string `json:"users,omitempty"` - // Zone: [Output Only] URL of the zone where the disk resides. + // Zone: [Output Only] URL of the zone where the disk resides. You must + // specify this field as part of the HTTP request URL. It is not + // settable as a field in the request body. Zone string `json:"zone,omitempty"` // ServerResponse contains the HTTP response code and headers from the @@ -6179,7 +6272,19 @@ type DiskInstantiationConfig struct { DeviceName string `json:"deviceName,omitempty"` // InstantiateFrom: Specifies whether to include the disk and what image - // to use. + // to use. Possible values are: + // - source-image: to use the same image that was used to create the + // source instance's corresponding disk. Applicable to the boot disk and + // additional read-write disks. + // - source-image-family: to use the same image family that was used to + // create the source instance's corresponding disk. Applicable to the + // boot disk and additional read-write disks. + // - custom-image: to use a user-provided image url for disk creation. + // Applicable to the boot disk and additional read-write disks. + // - attach-read-only: to attach a read-only disk. Applicable to + // read-only disks. + // - do-not-include: to exclude a disk from the template. Applicable to + // additional read-write disks, local SSDs, and read-only disks. // // Possible values: // "ATTACH_READ_ONLY" @@ -6448,7 +6553,9 @@ type DiskType struct { // valid disk size, such as "10GB-10TB". ValidDiskSize string `json:"validDiskSize,omitempty"` - // Zone: [Output Only] URL of the zone where the disk type resides. + // Zone: [Output Only] URL of the zone where the disk type resides. You + // must specify this field as part of the HTTP request URL. It is not + // settable as a field in the request body. Zone string `json:"zone,omitempty"` // ServerResponse contains the HTTP response code and headers from the @@ -7200,7 +7307,7 @@ type Firewall struct { CreationTimestamp string `json:"creationTimestamp,omitempty"` // Denied: The list of DENY rules specified by this firewall. Each rule - // specifies a protocol and port-range tuple that describes a permitted + // specifies a protocol and port-range tuple that describes a denied // connection. Denied []*FirewallDenied `json:"denied,omitempty"` @@ -7247,7 +7354,7 @@ type Firewall struct { // Name: Name of the resource; provided by the client when the resource // is created. The name must be 1-63 characters long, and comply with // RFC1035. Specifically, the name must be 1-63 characters long and - // match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means + // match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means // the first character must be a lowercase letter, and all following // characters must be a dash, lowercase letter, or digit, except the // last character, which cannot be a dash. @@ -7760,13 +7867,14 @@ type ForwardingRule struct { // Possible values: // "EXTERNAL" // "INTERNAL" + // "INTERNAL_SELF_MANAGED" // "INVALID" LoadBalancingScheme string `json:"loadBalancingScheme,omitempty"` // Name: Name of the resource; provided by the client when the resource // is created. The name must be 1-63 characters long, and comply with // RFC1035. Specifically, the name must be 1-63 characters long and - // match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means + // match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means // the first character must be a lowercase letter, and all following // characters must be a dash, lowercase letter, or digit, except the // last character, which cannot be a dash. @@ -7810,11 +7918,10 @@ type ForwardingRule struct { // - TargetHttpProxy: 80, 8080 // - TargetHttpsProxy: 443 // - TargetTcpProxy: 25, 43, 110, 143, 195, 443, 465, 587, 700, 993, - // 995, 1883, 5222 + // 995, 1688, 1883, 5222 // - TargetSslProxy: 25, 43, 110, 143, 195, 443, 465, 587, 700, 993, - // 995, 1883, 5222 + // 995, 1688, 1883, 5222 // - TargetVpnGateway: 500, 4500 - // - PortRange string `json:"portRange,omitempty"` // Ports: This field is used along with the backend_service field for @@ -7830,7 +7937,8 @@ type ForwardingRule struct { // Region: [Output Only] URL of the region where the regional forwarding // rule resides. This field is not applicable to global forwarding - // rules. + // rules. You must specify this field as part of the HTTP request URL. + // It is not settable as a field in the request body. Region string `json:"region,omitempty"` // SelfLink: [Output Only] Server-defined URL for the resource. @@ -7842,7 +7950,7 @@ type ForwardingRule struct { // // The label must be 1-63 characters long, and comply with RFC1035. // Specifically, the label must be 1-63 characters long and match the - // regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first + // regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first // character must be a lowercase letter, and all following characters // must be a dash, lowercase letter, or digit, except the last // character, which cannot be a dash. @@ -7872,8 +7980,6 @@ type ForwardingRule struct { // same region as the forwarding rule. For global forwarding rules, this // target must be a global load balancing resource. The forwarded // traffic must be of a type appropriate to the target object. - // - // This field is not used for internal load balancing. Target string `json:"target,omitempty"` // ServerResponse contains the HTTP response code and headers from the @@ -8386,8 +8492,8 @@ type GlobalSetLabelsRequest struct { // Labels: A list of labels to apply for this resource. Each label key & // value must comply with RFC1035. Specifically, the name must be 1-63 // characters long and match the regular expression - // [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a - // lowercase letter, and all following characters must be a dash, + // `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be + // a lowercase letter, and all following characters must be a dash, // lowercase letter, or digit, except the last character, which cannot // be a dash. For example, "webserver-frontend": "images". A label value // can also be empty (e.g. "my-label": ""). @@ -8778,12 +8884,16 @@ type HealthCheck struct { // Name: Name of the resource. Provided by the client when the resource // is created. The name must be 1-63 characters long, and comply with // RFC1035. Specifically, the name must be 1-63 characters long and - // match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means + // match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means // the first character must be a lowercase letter, and all following // characters must be a dash, lowercase letter, or digit, except the // last character, which cannot be a dash. Name string `json:"name,omitempty"` + // Region: [Output Only] Region where the health check resides. Not + // applicable to global health checks. + Region string `json:"region,omitempty"` + // SelfLink: [Output Only] Server-defined URL for the resource. SelfLink string `json:"selfLink,omitempty"` @@ -9032,6 +9142,293 @@ func (s *HealthCheckReference) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +type HealthChecksAggregatedList struct { + // Id: [Output Only] Unique identifier for the resource; defined by the + // server. + Id string `json:"id,omitempty"` + + // Items: A list of HealthChecksScopedList resources. + Items map[string]HealthChecksScopedList `json:"items,omitempty"` + + // Kind: Type of resource. + Kind string `json:"kind,omitempty"` + + // NextPageToken: [Output Only] This token allows you to get the next + // page of results for list requests. If the number of results is larger + // than maxResults, use the nextPageToken as a value for the query + // parameter pageToken in the next list request. Subsequent list + // requests will have their own nextPageToken to continue paging through + // the results. + NextPageToken string `json:"nextPageToken,omitempty"` + + // SelfLink: [Output Only] Server-defined URL for this resource. + SelfLink string `json:"selfLink,omitempty"` + + // Warning: [Output Only] Informational warning message. + Warning *HealthChecksAggregatedListWarning `json:"warning,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "Id") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Id") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *HealthChecksAggregatedList) MarshalJSON() ([]byte, error) { + type NoMethod HealthChecksAggregatedList + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// HealthChecksAggregatedListWarning: [Output Only] Informational +// warning message. +type HealthChecksAggregatedListWarning struct { + // Code: [Output Only] A warning code, if applicable. For example, + // Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in + // the response. + // + // Possible values: + // "CLEANUP_FAILED" + // "DEPRECATED_RESOURCE_USED" + // "DEPRECATED_TYPE_USED" + // "DISK_SIZE_LARGER_THAN_IMAGE_SIZE" + // "EXPERIMENTAL_TYPE_USED" + // "EXTERNAL_API_WARNING" + // "FIELD_VALUE_OVERRIDEN" + // "INJECTED_KERNELS_DEPRECATED" + // "MISSING_TYPE_DEPENDENCY" + // "NEXT_HOP_ADDRESS_NOT_ASSIGNED" + // "NEXT_HOP_CANNOT_IP_FORWARD" + // "NEXT_HOP_INSTANCE_NOT_FOUND" + // "NEXT_HOP_INSTANCE_NOT_ON_NETWORK" + // "NEXT_HOP_NOT_RUNNING" + // "NOT_CRITICAL_ERROR" + // "NO_RESULTS_ON_PAGE" + // "REQUIRED_TOS_AGREEMENT" + // "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING" + // "RESOURCE_NOT_DELETED" + // "SCHEMA_VALIDATION_IGNORED" + // "SINGLE_INSTANCE_PROPERTY_TEMPLATE" + // "UNDECLARED_PROPERTIES" + // "UNREACHABLE" + Code string `json:"code,omitempty"` + + // Data: [Output Only] Metadata about this warning in key: value format. + // For example: + // "data": [ { "key": "scope", "value": "zones/us-east1-d" } + Data []*HealthChecksAggregatedListWarningData `json:"data,omitempty"` + + // Message: [Output Only] A human-readable description of the warning + // code. + Message string `json:"message,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Code") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Code") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *HealthChecksAggregatedListWarning) MarshalJSON() ([]byte, error) { + type NoMethod HealthChecksAggregatedListWarning + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +type HealthChecksAggregatedListWarningData struct { + // Key: [Output Only] A key that provides more detail on the warning + // being returned. For example, for warnings where there are no results + // in a list request for a particular zone, this key might be scope and + // the key value might be the zone name. Other examples might be a key + // indicating a deprecated resource and a suggested replacement, or a + // warning about invalid network settings (for example, if an instance + // attempts to perform IP forwarding but is not enabled for IP + // forwarding). + Key string `json:"key,omitempty"` + + // Value: [Output Only] A warning data value corresponding to the key. + Value string `json:"value,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Key") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Key") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *HealthChecksAggregatedListWarningData) MarshalJSON() ([]byte, error) { + type NoMethod HealthChecksAggregatedListWarningData + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +type HealthChecksScopedList struct { + // HealthChecks: List of HealthChecks contained in this scope. + HealthChecks []*HealthCheck `json:"healthChecks,omitempty"` + + // Warning: Informational warning which replaces the list of backend + // services when the list is empty. + Warning *HealthChecksScopedListWarning `json:"warning,omitempty"` + + // ForceSendFields is a list of field names (e.g. "HealthChecks") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "HealthChecks") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *HealthChecksScopedList) MarshalJSON() ([]byte, error) { + type NoMethod HealthChecksScopedList + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// HealthChecksScopedListWarning: Informational warning which replaces +// the list of backend services when the list is empty. +type HealthChecksScopedListWarning struct { + // Code: [Output Only] A warning code, if applicable. For example, + // Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in + // the response. + // + // Possible values: + // "CLEANUP_FAILED" + // "DEPRECATED_RESOURCE_USED" + // "DEPRECATED_TYPE_USED" + // "DISK_SIZE_LARGER_THAN_IMAGE_SIZE" + // "EXPERIMENTAL_TYPE_USED" + // "EXTERNAL_API_WARNING" + // "FIELD_VALUE_OVERRIDEN" + // "INJECTED_KERNELS_DEPRECATED" + // "MISSING_TYPE_DEPENDENCY" + // "NEXT_HOP_ADDRESS_NOT_ASSIGNED" + // "NEXT_HOP_CANNOT_IP_FORWARD" + // "NEXT_HOP_INSTANCE_NOT_FOUND" + // "NEXT_HOP_INSTANCE_NOT_ON_NETWORK" + // "NEXT_HOP_NOT_RUNNING" + // "NOT_CRITICAL_ERROR" + // "NO_RESULTS_ON_PAGE" + // "REQUIRED_TOS_AGREEMENT" + // "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING" + // "RESOURCE_NOT_DELETED" + // "SCHEMA_VALIDATION_IGNORED" + // "SINGLE_INSTANCE_PROPERTY_TEMPLATE" + // "UNDECLARED_PROPERTIES" + // "UNREACHABLE" + Code string `json:"code,omitempty"` + + // Data: [Output Only] Metadata about this warning in key: value format. + // For example: + // "data": [ { "key": "scope", "value": "zones/us-east1-d" } + Data []*HealthChecksScopedListWarningData `json:"data,omitempty"` + + // Message: [Output Only] A human-readable description of the warning + // code. + Message string `json:"message,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Code") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Code") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *HealthChecksScopedListWarning) MarshalJSON() ([]byte, error) { + type NoMethod HealthChecksScopedListWarning + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +type HealthChecksScopedListWarningData struct { + // Key: [Output Only] A key that provides more detail on the warning + // being returned. For example, for warnings where there are no results + // in a list request for a particular zone, this key might be scope and + // the key value might be the zone name. Other examples might be a key + // indicating a deprecated resource and a suggested replacement, or a + // warning about invalid network settings (for example, if an instance + // attempts to perform IP forwarding but is not enabled for IP + // forwarding). + Key string `json:"key,omitempty"` + + // Value: [Output Only] A warning data value corresponding to the key. + Value string `json:"value,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Key") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Key") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *HealthChecksScopedListWarningData) MarshalJSON() ([]byte, error) { + type NoMethod HealthChecksScopedListWarningData + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + type HealthStatus struct { // HealthState: Health state of the instance. // @@ -9133,7 +9530,6 @@ type Host struct { // provided by the client when the host is created. For example, the // following is a valid partial url to a predefined host // type: - // // zones/us-central1-b/hostTypes/n1-host-64-416 HostType string `json:"hostType,omitempty"` @@ -9167,8 +9563,8 @@ type Host struct { // creating the resource. The resource name must be 1-63 characters // long, and comply with RFC1035. Specifically, the name must be 1-63 // characters long and match the regular expression - // [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a - // lowercase letter, and all following characters must be a dash, + // `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be + // a lowercase letter, and all following characters must be a dash, // lowercase letter, or digit, except the last character, which cannot // be a dash. Name string `json:"name,omitempty"` @@ -10297,7 +10693,7 @@ type HttpHealthCheck struct { // Name: Name of the resource. Provided by the client when the resource // is created. The name must be 1-63 characters long, and comply with // RFC1035. Specifically, the name must be 1-63 characters long and - // match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means + // match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means // the first character must be a lowercase letter, and all following // characters must be a dash, lowercase letter, or digit, except the // last character, which cannot be a dash. @@ -10542,7 +10938,7 @@ type HttpsHealthCheck struct { // Name: Name of the resource. Provided by the client when the resource // is created. The name must be 1-63 characters long, and comply with // RFC1035. Specifically, the name must be 1-63 characters long and - // match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means + // match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means // the first character must be a lowercase letter, and all following // characters must be a dash, lowercase letter, or digit, except the // last character, which cannot be a dash. @@ -10834,7 +11230,7 @@ type Image struct { // Name: Name of the resource; provided by the client when the resource // is created. The name must be 1-63 characters long, and comply with // RFC1035. Specifically, the name must be 1-63 characters long and - // match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means + // match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means // the first character must be a lowercase letter, and all following // characters must be a dash, lowercase letter, or digit, except the // last character, which cannot be a dash. @@ -11240,18 +11636,18 @@ type Instance struct { // when the instance is created. For example, the following is a valid // partial url to a predefined machine // type: - // // zones/us-central1-f/machineTypes/n1-standard-1 // + // // To create a custom machine type, provide a URL to a machine type in // the following format, where CPUS is 1 or an even number up to 32 (2, // 4, 6, ... 24, etc), and MEMORY is the total memory for this instance. // Memory must be a multiple of 256 MB and must be supplied in MB (e.g. // 5 GB of memory is 5120 // MB): - // // zones/zone/machineTypes/custom-CPUS-MEMORY // + // // For example: zones/us-central1-f/machineTypes/custom-4-5120 // // For a full list of restrictions, read the Specifications for custom @@ -11275,8 +11671,8 @@ type Instance struct { // creating the resource. The resource name must be 1-63 characters // long, and comply with RFC1035. Specifically, the name must be 1-63 // characters long and match the regular expression - // [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a - // lowercase letter, and all following characters must be a dash, + // `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be + // a lowercase letter, and all following characters must be a dash, // lowercase letter, or digit, except the last character, which cannot // be a dash. Name string `json:"name,omitempty"` @@ -11308,6 +11704,8 @@ type Instance struct { ShieldedVmConfig *ShieldedVmConfig `json:"shieldedVmConfig,omitempty"` + ShieldedVmIntegrityPolicy *ShieldedVmIntegrityPolicy `json:"shieldedVmIntegrityPolicy,omitempty"` + // StartRestricted: [Output Only] Whether a VM has been restricted for // start because Compute Engine has detected suspicious activity. StartRestricted bool `json:"startRestricted,omitempty"` @@ -11338,7 +11736,9 @@ type Instance struct { // comply with RFC1035. Tags *Tags `json:"tags,omitempty"` - // Zone: [Output Only] URL of the zone where the instance resides. + // Zone: [Output Only] URL of the zone where the instance resides. You + // must specify this field as part of the HTTP request URL. It is not + // settable as a field in the request body. Zone string `json:"zone,omitempty"` // ServerResponse contains the HTTP response code and headers from the @@ -12132,9 +12532,9 @@ type InstanceGroupManagerActionsSummary struct { Restarting int64 `json:"restarting,omitempty"` // Verifying: [Output Only] The number of instances in the managed - // instance group that are being verified. More details regarding - // verification process are covered in the documentation of - // ManagedInstance.InstanceAction.VERIFYING enum field. + // instance group that are being verified. See the + // managedInstances[].currentAction property in the listManagedInstances + // method documentation. Verifying int64 `json:"verifying,omitempty"` // ForceSendFields is a list of field names (e.g. "Abandoning") to @@ -14249,6 +14649,10 @@ type InstanceProperties struct { // to obtain the access tokens for these instances. ServiceAccounts []*ServiceAccount `json:"serviceAccounts,omitempty"` + // ShieldedVmConfig: Specifies the Shielded VM options for the instances + // that are created from this template. + ShieldedVmConfig *ShieldedVmConfig `json:"shieldedVmConfig,omitempty"` + // Tags: A list of tags to apply to the instances that are created from // this template. The tags identify valid sources or targets for network // firewalls. The setTags method can modify this list of tags. Each tag @@ -14327,7 +14731,7 @@ type InstanceTemplate struct { // Name: Name of the resource; provided by the client when the resource // is created. The name must be 1-63 characters long, and comply with // RFC1035. Specifically, the name must be 1-63 characters long and - // match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means + // match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means // the first character must be a lowercase letter, and all following // characters must be a dash, lowercase letter, or digit, except the // last character, which cannot be a dash. @@ -15099,7 +15503,7 @@ type Interconnect struct { // Name: Name of the resource. Provided by the client when the resource // is created. The name must be 1-63 characters long, and comply with // RFC1035. Specifically, the name must be 1-63 characters long and - // match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means + // match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means // the first character must be a lowercase letter, and all following // characters must be a dash, lowercase letter, or digit, except the // last character, which cannot be a dash. @@ -15181,12 +15585,19 @@ type InterconnectAttachment struct { // Not present for PARTNER_PROVIDER. AdminEnabled bool `json:"adminEnabled,omitempty"` + // AvailabilityZone: [Deprecated] Replaced by edge_availability_domain. + // // Possible values: // "ZONE_1" // "ZONE_2" // "ZONE_ANY" AvailabilityZone string `json:"availabilityZone,omitempty"` + // Bandwidth: Provisioned bandwidth capacity for the + // interconnectAttachment. Can be set by the partner to update the + // customer's provisioned bandwidth. Output only for for PARTNER type, + // mutable for PARTNER_PROVIDER, not available for DEDICATED. + // // Possible values: // "BPS_100M" // "BPS_10G" @@ -15227,6 +15638,20 @@ type InterconnectAttachment struct { // Description: An optional description of this resource. Description string `json:"description,omitempty"` + // EdgeAvailabilityDomain: Desired availability domain for the + // attachment. Only available for type PARTNER, at creation time. For + // improved reliability, customers should configure a pair of + // attachments with one per availability domain. The selected + // availability domain will be provided to the Partner via the pairing + // key so that the provisioned circuit will lie in the specified domain. + // If not specified, the value will default to AVAILABILITY_DOMAIN_ANY. + // + // Possible values: + // "AVAILABILITY_DOMAIN_1" + // "AVAILABILITY_DOMAIN_2" + // "AVAILABILITY_DOMAIN_ANY" + EdgeAvailabilityDomain string `json:"edgeAvailabilityDomain,omitempty"` + // GoogleReferenceId: [Output Only] Google reference ID, to be used when // raising support tickets with Google or otherwise to debug backend // connectivity issues. @@ -15263,7 +15688,7 @@ type InterconnectAttachment struct { // Name: Name of the resource. Provided by the client when the resource // is created. The name must be 1-63 characters long, and comply with // RFC1035. Specifically, the name must be 1-63 characters long and - // match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means + // match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means // the first character must be a lowercase letter, and all following // characters must be a dash, lowercase letter, or digit, except the // last character, which cannot be a dash. @@ -15278,15 +15703,20 @@ type InterconnectAttachment struct { OperationalStatus string `json:"operationalStatus,omitempty"` // PairingKey: [Output only for type PARTNER. Input only for - // PARTNER_PROVIDER. Not present for DEDICATED]. Opaque string - // identifying an PARTNER attachment. Of the form ?cloud-region/XXXXXX?. + // PARTNER_PROVIDER. Not present for DEDICATED]. The opaque identifier + // of an PARTNER attachment used to initiate provisioning with a + // selected partner. Of the form "XXXXX/region/domain" PairingKey string `json:"pairingKey,omitempty"` - // PartnerAsn: [Output only for PARTNER. Input for PARTNER_PROVIDER. Not - // present for DEDICATED] BGP ASN of the Partner. A layer 3 Partner - // should supply this if they configured BGP on behalf of the customer. + // PartnerAsn: Optional BGP ASN for the router that should be supplied + // by a layer 3 Partner if they configured BGP on behalf of the + // customer. Output only for PARTNER type, input only for + // PARTNER_PROVIDER, not available for DEDICATED. PartnerAsn int64 `json:"partnerAsn,omitempty,string"` + // PartnerMetadata: Informational metadata about Partner attachments + // from Partners to display to customers. Output only for for PARTNER + // type, mutable for PARTNER_PROVIDER, not available for DEDICATED. PartnerMetadata *InterconnectAttachmentPartnerMetadata `json:"partnerMetadata,omitempty"` // PrivateInterconnectInfo: [Output Only] Information specific to an @@ -15295,7 +15725,9 @@ type InterconnectAttachment struct { PrivateInterconnectInfo *InterconnectAttachmentPrivateInfo `json:"privateInterconnectInfo,omitempty"` // Region: [Output Only] URL of the region where the regional - // interconnect attachment resides. + // interconnect attachment resides. You must specify this field as part + // of the HTTP request URL. It is not settable as a field in the request + // body. Region string `json:"region,omitempty"` // Router: URL of the cloud router to be used for dynamic routing. This @@ -15307,8 +15739,8 @@ type InterconnectAttachment struct { // SelfLink: [Output Only] Server-defined URL for the resource. SelfLink string `json:"selfLink,omitempty"` - // State: [Output Only] The current state of whether or not this - // interconnect attachment is functional. + // State: [Output Only] The current state of this attachment's + // functionality. // // Possible values: // "ACTIVE" @@ -15676,8 +16108,7 @@ func (s *InterconnectAttachmentListWarningData) MarshalJSON() ([]byte, error) { // InterconnectAttachmentPartnerMetadata: Informational metadata about // Partner attachments from Partners to display to customers. These // fields are propagated from PARTNER_PROVIDER attachments to their -// corresponding PARTNER attachments. Only mutable for PARTNER_PROVIDER -// type, output-only for PARTNER, not available for DEDICATED. +// corresponding PARTNER attachments. type InterconnectAttachmentPartnerMetadata struct { // InterconnectName: Plain text name of the Interconnect this attachment // is connected to, as displayed in the Partner?s portal. For instance @@ -17994,8 +18425,8 @@ type MaintenancePolicy struct { // creating the resource. The resource name must be 1-63 characters // long, and comply with RFC1035. Specifically, the name must be 1-63 // characters long and match the regular expression - // [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a - // lowercase letter, and all following characters must be a dash, + // `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be + // a lowercase letter, and all following characters must be a dash, // lowercase letter, or digit, except the last character, which cannot // be a dash. Name string `json:"name,omitempty"` @@ -18226,6 +18657,7 @@ func (s *MaintenanceWindow) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// ManagedInstance: Next available tag: 12 type ManagedInstance struct { // CurrentAction: [Output Only] The current action that the managed // instance group has scheduled for the instance. Possible values: @@ -18251,6 +18683,8 @@ type ManagedInstance struct { // changes to the instance without stopping it. For example, the group // can update the target pool list for an instance without stopping that // instance. + // - VERIFYING The managed instance group has created the instance and + // it is in the process of being verified. // // Possible values: // "ABANDONING" @@ -18298,13 +18732,6 @@ type ManagedInstance struct { // Override: [Output Only] Override defined for this instance. Override *ManagedInstanceOverride `json:"override,omitempty"` - // StandbyMode: [Output Only] Standby mode of the instance. This field - // is non-empty iff the instance is a standby. - // - // Possible values: - // "DRAINED" - StandbyMode string `json:"standbyMode,omitempty"` - // Tag: [Output Only] Tag describing the version. Tag string `json:"tag,omitempty"` @@ -18746,7 +19173,7 @@ type Network struct { // Name: Name of the resource. Provided by the client when the resource // is created. The name must be 1-63 characters long, and comply with // RFC1035. Specifically, the name must be 1-63 characters long and - // match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means + // match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means // the first character must be a lowercase letter, and all following // characters must be a dash, lowercase letter, or digit, except the // last character, which cannot be a dash. @@ -18864,7 +19291,7 @@ type NetworkEndpointGroup struct { // Name: Name of the resource; provided by the client when the resource // is created. The name must be 1-63 characters long, and comply with // RFC1035. Specifically, the name must be 1-63 characters long and - // match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means + // match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means // the first character must be a lowercase letter, and all following // characters must be a dash, lowercase letter, or digit, except the // last character, which cannot be a dash. @@ -19940,8 +20367,8 @@ type NetworkPeering struct { // Name: Name of this peering. Provided by the client when the peering // is created. The name must comply with RFC1035. Specifically, the name // must be 1-63 characters long and match regular expression - // [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a - // lowercase letter, and all the following characters must be a dash, + // `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be + // a lowercase letter, and all the following characters must be a dash, // lowercase letter, or digit, except the last character, which cannot // be a dash. Name string `json:"name,omitempty"` @@ -20151,7 +20578,9 @@ type Operation struct { Progress int64 `json:"progress,omitempty"` // Region: [Output Only] The URL of the region where the operation - // resides. Only available when performing regional operations. + // resides. Only available when performing regional operations. You must + // specify this field as part of the HTTP request URL. It is not + // settable as a field in the request body. Region string `json:"region,omitempty"` // SelfLink: [Output Only] Server-defined URL for the resource. @@ -20192,7 +20621,9 @@ type Operation struct { Warnings []*OperationWarnings `json:"warnings,omitempty"` // Zone: [Output Only] The URL of the zone where the operation resides. - // Only available when performing per-zone operations. + // Only available when performing per-zone operations. You must specify + // this field as part of the HTTP request URL. It is not settable as a + // field in the request body. Zone string `json:"zone,omitempty"` // ServerResponse contains the HTTP response code and headers from the @@ -20966,7 +21397,7 @@ func (s *PerInstanceConfig) MarshalJSON() ([]byte, error) { // } // // For a description of IAM and its features, see the [IAM developer's -// guide](https://cloud.google.com/iam). +// guide](https://cloud.google.com/iam/docs). type Policy struct { // AuditConfigs: Specifies cloud audit logging configuration for this // policy. @@ -21001,7 +21432,7 @@ type Policy struct { // denied. Rules []*Rule `json:"rules,omitempty"` - // Version: Version of the `Policy`. The default version is 0. + // Version: Deprecated. Version int64 `json:"version,omitempty"` // ServerResponse contains the HTTP response code and headers from the @@ -21344,10 +21775,13 @@ type Quota struct { // "NETWORKS" // "NVIDIA_K80_GPUS" // "NVIDIA_P100_GPUS" + // "NVIDIA_P100_VWS_GPUS" + // "NVIDIA_V100_GPUS" // "PREEMPTIBLE_CPUS" // "PREEMPTIBLE_LOCAL_SSD_GB" // "PREEMPTIBLE_NVIDIA_K80_GPUS" // "PREEMPTIBLE_NVIDIA_P100_GPUS" + // "PRIVATE_V6_ACCESS_SUBNETWORKS" // "REGIONAL_AUTOSCALERS" // "REGIONAL_INSTANCE_GROUP_MANAGERS" // "ROUTERS" @@ -23063,6 +23497,61 @@ func (s *RegionSetLabelsRequest) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +type RegionUrlMapsDeleteRequest struct { + // RequestId: begin_interface: MixerMutationRequestBuilder Request ID to + // support idempotency. + RequestId string `json:"requestId,omitempty"` + + // ForceSendFields is a list of field names (e.g. "RequestId") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "RequestId") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *RegionUrlMapsDeleteRequest) MarshalJSON() ([]byte, error) { + type NoMethod RegionUrlMapsDeleteRequest + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +type RegionUrlMapsValidateRequest struct { + // Resource: Content of the UrlMap to be validated. + Resource *UrlMap `json:"resource,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Resource") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Resource") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *RegionUrlMapsValidateRequest) MarshalJSON() ([]byte, error) { + type NoMethod RegionUrlMapsValidateRequest + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // ResourceCommitment: Commitment for a particular resource (a // Commitment is composed of one or more of these). type ResourceCommitment struct { @@ -23176,7 +23665,7 @@ type Route struct { // Name: Name of the resource. Provided by the client when the resource // is created. The name must be 1-63 characters long, and comply with // RFC1035. Specifically, the name must be 1-63 characters long and - // match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means + // match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means // the first character must be a lowercase letter, and all following // characters must be a dash, lowercase letter, or digit, except the // last character, which cannot be a dash. @@ -23549,7 +24038,7 @@ type Router struct { // Name: Name of the resource. Provided by the client when the resource // is created. The name must be 1-63 characters long, and comply with // RFC1035. Specifically, the name must be 1-63 characters long and - // match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means + // match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means // the first character must be a lowercase letter, and all following // characters must be a dash, lowercase letter, or digit, except the // last character, which cannot be a dash. @@ -23562,7 +24051,9 @@ type Router struct { // Network: URI of the network to which this router belongs. Network string `json:"network,omitempty"` - // Region: [Output Only] URI of the region where the router resides. + // Region: [Output Only] URI of the region where the router resides. You + // must specify this field as part of the HTTP request URL. It is not + // settable as a field in the request body. Region string `json:"region,omitempty"` // SelfLink: [Output Only] Server-defined URL for the resource. @@ -23928,6 +24419,18 @@ type RouterBgpPeer struct { // Only IPv4 is supported. IpAddress string `json:"ipAddress,omitempty"` + // ManagementType: [Output Only] Type of how the resource/configuration + // of the BGP peer is managed. MANAGED_BY_USER is the default value; + // MANAGED_BY_ATTACHMENT represents an BGP peer that is automatically + // created for PARTNER interconnectAttachment, Google will automatically + // create/delete this type of BGP peer when the PARTNER + // interconnectAttachment is created/deleted. + // + // Possible values: + // "MANAGED_BY_ATTACHMENT" + // "MANAGED_BY_USER" + ManagementType string `json:"managementType,omitempty"` + // Name: Name of this BGP peer. The name must be 1-63 characters long // and comply with RFC1035. Name string `json:"name,omitempty"` @@ -23983,6 +24486,18 @@ type RouterInterface struct { // attachment. LinkedVpnTunnel string `json:"linkedVpnTunnel,omitempty"` + // ManagementType: [Output Only] Type of how the resource/configuration + // of the interface is managed. MANAGED_BY_USER is the default value; + // MANAGED_BY_ATTACHMENT represents an interface that is automatically + // created for PARTNER type interconnectAttachment, Google will + // automatically create/update/delete this type of interface when the + // PARTNER interconnectAttachment is created/provisioned/deleted. + // + // Possible values: + // "MANAGED_BY_ATTACHMENT" + // "MANAGED_BY_USER" + ManagementType string `json:"managementType,omitempty"` + // Name: Name of this interface entry. The name must be 1-63 characters // long and comply with RFC1035. Name string `json:"name,omitempty"` @@ -24782,6 +25297,9 @@ type Scheduling struct { // restarted if it is terminated by Compute Engine. AutomaticRestart *bool `json:"automaticRestart,omitempty"` + // NodeAffinities: A set of node affinity and anti-affinity. + NodeAffinities []*SchedulingNodeAffinity `json:"nodeAffinities,omitempty"` + // OnHostMaintenance: Defines the maintenance behavior for this // instance. For standard instances, the default behavior is MIGRATE. // For preemptible instances, the default and only possible behavior is @@ -24822,6 +25340,46 @@ func (s *Scheduling) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// SchedulingNodeAffinity: Node Affinity: the configuration of desired +// nodes onto which this Instance could be scheduled. +type SchedulingNodeAffinity struct { + // Key: Corresponds to the label key of Node resource. + Key string `json:"key,omitempty"` + + // Operator: Defines the operation of node selection. + // + // Possible values: + // "IN" + // "NOT_IN" + // "OPERATOR_UNSPECIFIED" + Operator string `json:"operator,omitempty"` + + // Values: Corresponds to the label values of Node resource. + Values []string `json:"values,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Key") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Key") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *SchedulingNodeAffinity) MarshalJSON() ([]byte, error) { + type NoMethod SchedulingNodeAffinity + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // SecurityPolicy: A security policy is comprised of one or more rules. // It can also be associated with one or more 'targets'. type SecurityPolicy struct { @@ -24855,7 +25413,7 @@ type SecurityPolicy struct { // Name: Name of the resource. Provided by the client when the resource // is created. The name must be 1-63 characters long, and comply with // RFC1035. Specifically, the name must be 1-63 characters long and - // match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means + // match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means // the first character must be a lowercase letter, and all following // characters must be a dash, lowercase letter, or digit, except the // last character, which cannot be a dash. @@ -25146,7 +25704,7 @@ type SecurityPolicyRuleMatcher struct { // contents in the request header. Expr *Expr `json:"expr,omitempty"` - // SrcIpRanges: CIDR IP address range. Only IPv4 is supported. + // SrcIpRanges: CIDR IP address range. SrcIpRanges []string `json:"srcIpRanges,omitempty"` // VersionedExpr: Preconfigured versioned expression. If this field is @@ -25183,7 +25741,7 @@ func (s *SecurityPolicyRuleMatcher) MarshalJSON() ([]byte, error) { } type SecurityPolicyRuleMatcherConfig struct { - // SrcIpRanges: CIDR IP address range. Only IPv4 is supported. + // SrcIpRanges: CIDR IP address range. SrcIpRanges []string `json:"srcIpRanges,omitempty"` // ForceSendFields is a list of field names (e.g. "SrcIpRanges") to @@ -25294,6 +25852,10 @@ func (s *ServiceAccount) MarshalJSON() ([]byte, error) { // ShieldedVmConfig: A set of Shielded VM options. type ShieldedVmConfig struct { + // EnableIntegrityMonitoring: Defines whether the instance should have + // integrity monitoring enabled. + EnableIntegrityMonitoring bool `json:"enableIntegrityMonitoring,omitempty"` + // EnableSecureBoot: Defines whether the instance should have secure // boot enabled. EnableSecureBoot bool `json:"enableSecureBoot,omitempty"` @@ -25301,21 +25863,22 @@ type ShieldedVmConfig struct { // EnableVtpm: Defines whether the instance should have the TPM enabled. EnableVtpm bool `json:"enableVtpm,omitempty"` - // ForceSendFields is a list of field names (e.g. "EnableSecureBoot") to - // unconditionally include in API requests. By default, fields with - // empty values are omitted from API requests. However, any non-pointer, - // non-interface field appearing in ForceSendFields will be sent to the - // server regardless of whether the field is empty or not. This may be - // used to include empty fields in Patch requests. + // ForceSendFields is a list of field names (e.g. + // "EnableIntegrityMonitoring") to unconditionally include in API + // requests. By default, fields with empty values are omitted from API + // requests. However, any non-pointer, non-interface field appearing in + // ForceSendFields will be sent to the server regardless of whether the + // field is empty or not. This may be used to include empty fields in + // Patch requests. ForceSendFields []string `json:"-"` - // NullFields is a list of field names (e.g. "EnableSecureBoot") to - // include in API requests with the JSON null value. By default, fields - // with empty values are omitted from API requests. However, any field - // with an empty value appearing in NullFields will be sent to the - // server as null. It is an error if a field in this list has a - // non-empty value. This may be used to include null fields in Patch - // requests. + // NullFields is a list of field names (e.g. + // "EnableIntegrityMonitoring") to include in API requests with the JSON + // null value. By default, fields with empty values are omitted from API + // requests. However, any field with an empty value appearing in + // NullFields will be sent to the server as null. It is an error if a + // field in this list has a non-empty value. This may be used to include + // null fields in Patch requests. NullFields []string `json:"-"` } @@ -25325,12 +25888,44 @@ func (s *ShieldedVmConfig) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// ShieldedVmIntegrityPolicy: The policy describes how boot integrity +// measurements are evaluated. +type ShieldedVmIntegrityPolicy struct { + // UpdateAutoLearnPolicy: Triggers an auto relearn event: the integrity + // monitoring module copies existing guest measurements to the baseline. + UpdateAutoLearnPolicy bool `json:"updateAutoLearnPolicy,omitempty"` + + // ForceSendFields is a list of field names (e.g. + // "UpdateAutoLearnPolicy") to unconditionally include in API requests. + // By default, fields with empty values are omitted from API requests. + // However, any non-pointer, non-interface field appearing in + // ForceSendFields will be sent to the server regardless of whether the + // field is empty or not. This may be used to include empty fields in + // Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "UpdateAutoLearnPolicy") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *ShieldedVmIntegrityPolicy) MarshalJSON() ([]byte, error) { + type NoMethod ShieldedVmIntegrityPolicy + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // SignedUrlKey: Represents a customer-supplied Signing Key used by // Cloud CDN Signed URLs type SignedUrlKey struct { // KeyName: Name of the key. The name must be 1-63 characters long, and // comply with RFC1035. Specifically, the name must be 1-63 characters - // long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? + // long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` // which means the first character must be a lowercase letter, and all // following characters must be a dash, lowercase letter, or digit, // except the last character, which cannot be a dash. @@ -25377,6 +25972,12 @@ type Snapshot struct { // DiskSizeGb: [Output Only] Size of the snapshot, specified in GB. DiskSizeGb int64 `json:"diskSizeGb,omitempty,string"` + // GuestOsFeatures: [Output Only] A list of features to enable on the + // guest operating system. Applicable only for bootable images. Read + // Enabling guest operating system features to see a list of available + // options. + GuestOsFeatures []*GuestOsFeature `json:"guestOsFeatures,omitempty"` + // Id: [Output Only] The unique identifier for the resource. This // identifier is defined by the server. Id uint64 `json:"id,omitempty,string"` @@ -25412,7 +26013,7 @@ type Snapshot struct { // Name: Name of the resource; provided by the client when the resource // is created. The name must be 1-63 characters long, and comply with // RFC1035. Specifically, the name must be 1-63 characters long and - // match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means + // match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means // the first character must be a lowercase letter, and all following // characters must be a dash, lowercase letter, or digit, except the // last character, which cannot be a dash. @@ -25716,8 +26317,8 @@ type SslCertificate struct { // property when you create the resource. Description string `json:"description,omitempty"` - // ExpiryTime: [Output Only] Expiry time of the certificate. RFC3339 - ExpiryTime string `json:"expiryTime,omitempty"` + // ExpireTime: [Output Only] Expire time of the certificate. RFC3339 + ExpireTime string `json:"expireTime,omitempty"` // Id: [Output Only] The unique identifier for the resource. This // identifier is defined by the server. @@ -25733,7 +26334,7 @@ type SslCertificate struct { // Name: Name of the resource. Provided by the client when the resource // is created. The name must be 1-63 characters long, and comply with // RFC1035. Specifically, the name must be 1-63 characters long and - // match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means + // match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means // the first character must be a lowercase letter, and all following // characters must be a dash, lowercase letter, or digit, except the // last character, which cannot be a dash. @@ -25761,7 +26362,7 @@ type SslCertificate struct { // Possible values: // "MANAGED" // "SELF_MANAGED" - // "TYPE_UNKNOWN" + // "TYPE_UNSPECIFIED" Type string `json:"type,omitempty"` // ServerResponse contains the HTTP response code and headers from the @@ -25961,11 +26562,11 @@ type SslCertificateManagedSslCertificate struct { // // Possible values: // "ACTIVE" + // "MANAGED_CERTIFICATE_STATUS_UNSPECIFIED" // "PROVISIONING" // "PROVISIONING_FAILED" // "PROVISIONING_FAILED_PERMANENTLY" // "RENEWAL_FAILED" - // "STATUS_UNKNOWN" Status string `json:"status,omitempty"` // ForceSendFields is a list of field names (e.g. "DomainStatus") to @@ -26262,8 +26863,8 @@ type SslPolicy struct { // Name: Name of the resource. The name must be 1-63 characters long, // and comply with RFC1035. Specifically, the name must be 1-63 // characters long and match the regular expression - // [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a - // lowercase letter, and all following characters must be a dash, + // `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be + // a lowercase letter, and all following characters must be a dash, // lowercase letter, or digit, except the last character, which cannot // be a dash. Name string `json:"name,omitempty"` @@ -26559,6 +27160,14 @@ type Subnetwork struct { // resource creation time. Description string `json:"description,omitempty"` + // EnableFlowLogs: Whether to enable flow logging for this subnetwork. + EnableFlowLogs bool `json:"enableFlowLogs,omitempty"` + + // EnablePrivateV6Access: Whether the VMs in this subnet can directly + // access Google services via internal IPv6 addresses. This field can be + // both set at resource creation time and updated using patch. + EnablePrivateV6Access bool `json:"enablePrivateV6Access,omitempty"` + // Fingerprint: Fingerprint of this resource. A hash of the contents // stored in this object. This field is used in optimistic locking. This // field will be ignored when inserting a Subnetwork. An up-to-date @@ -26566,8 +27175,7 @@ type Subnetwork struct { Fingerprint string `json:"fingerprint,omitempty"` // GatewayAddress: [Output Only] The gateway address for default routes - // to reach destination addresses outside this subnetwork. This field - // can be set only at resource creation time. + // to reach destination addresses outside this subnetwork. GatewayAddress string `json:"gatewayAddress,omitempty"` // Id: [Output Only] The unique identifier for the resource. This @@ -26581,6 +27189,10 @@ type Subnetwork struct { // can be set only at resource creation time. IpCidrRange string `json:"ipCidrRange,omitempty"` + // Ipv6CidrRange: [Output Only] The range of internal IPv6 addresses + // that are owned by this subnetwork. + Ipv6CidrRange string `json:"ipv6CidrRange,omitempty"` + // Kind: [Output Only] Type of the resource. Always compute#subnetwork // for Subnetwork resources. Kind string `json:"kind,omitempty"` @@ -26588,7 +27200,7 @@ type Subnetwork struct { // Name: The name of the resource, provided by the client when initially // creating the resource. The name must be 1-63 characters long, and // comply with RFC1035. Specifically, the name must be 1-63 characters - // long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? + // long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` // which means the first character must be a lowercase letter, and all // following characters must be a dash, lowercase letter, or digit, // except the last character, which cannot be a dash. @@ -27307,6 +27919,140 @@ func (s *Tags) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +type TargetHttpProxiesScopedList struct { + // TargetHttpProxies: List of TargetHttpProxies contained in this scope. + TargetHttpProxies []*TargetHttpProxy `json:"targetHttpProxies,omitempty"` + + // Warning: Informational warning which replaces the list of backend + // services when the list is empty. + Warning *TargetHttpProxiesScopedListWarning `json:"warning,omitempty"` + + // ForceSendFields is a list of field names (e.g. "TargetHttpProxies") + // to unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "TargetHttpProxies") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *TargetHttpProxiesScopedList) MarshalJSON() ([]byte, error) { + type NoMethod TargetHttpProxiesScopedList + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// TargetHttpProxiesScopedListWarning: Informational warning which +// replaces the list of backend services when the list is empty. +type TargetHttpProxiesScopedListWarning struct { + // Code: [Output Only] A warning code, if applicable. For example, + // Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in + // the response. + // + // Possible values: + // "CLEANUP_FAILED" + // "DEPRECATED_RESOURCE_USED" + // "DEPRECATED_TYPE_USED" + // "DISK_SIZE_LARGER_THAN_IMAGE_SIZE" + // "EXPERIMENTAL_TYPE_USED" + // "EXTERNAL_API_WARNING" + // "FIELD_VALUE_OVERRIDEN" + // "INJECTED_KERNELS_DEPRECATED" + // "MISSING_TYPE_DEPENDENCY" + // "NEXT_HOP_ADDRESS_NOT_ASSIGNED" + // "NEXT_HOP_CANNOT_IP_FORWARD" + // "NEXT_HOP_INSTANCE_NOT_FOUND" + // "NEXT_HOP_INSTANCE_NOT_ON_NETWORK" + // "NEXT_HOP_NOT_RUNNING" + // "NOT_CRITICAL_ERROR" + // "NO_RESULTS_ON_PAGE" + // "REQUIRED_TOS_AGREEMENT" + // "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING" + // "RESOURCE_NOT_DELETED" + // "SCHEMA_VALIDATION_IGNORED" + // "SINGLE_INSTANCE_PROPERTY_TEMPLATE" + // "UNDECLARED_PROPERTIES" + // "UNREACHABLE" + Code string `json:"code,omitempty"` + + // Data: [Output Only] Metadata about this warning in key: value format. + // For example: + // "data": [ { "key": "scope", "value": "zones/us-east1-d" } + Data []*TargetHttpProxiesScopedListWarningData `json:"data,omitempty"` + + // Message: [Output Only] A human-readable description of the warning + // code. + Message string `json:"message,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Code") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Code") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *TargetHttpProxiesScopedListWarning) MarshalJSON() ([]byte, error) { + type NoMethod TargetHttpProxiesScopedListWarning + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +type TargetHttpProxiesScopedListWarningData struct { + // Key: [Output Only] A key that provides more detail on the warning + // being returned. For example, for warnings where there are no results + // in a list request for a particular zone, this key might be scope and + // the key value might be the zone name. Other examples might be a key + // indicating a deprecated resource and a suggested replacement, or a + // warning about invalid network settings (for example, if an instance + // attempts to perform IP forwarding but is not enabled for IP + // forwarding). + Key string `json:"key,omitempty"` + + // Value: [Output Only] A warning data value corresponding to the key. + Value string `json:"value,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Key") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Key") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *TargetHttpProxiesScopedListWarningData) MarshalJSON() ([]byte, error) { + type NoMethod TargetHttpProxiesScopedListWarningData + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // TargetHttpProxy: A TargetHttpProxy resource. This resource defines an // HTTP proxy. (== resource_for beta.targetHttpProxies ==) (== // resource_for v1.targetHttpProxies ==) @@ -27330,12 +28076,17 @@ type TargetHttpProxy struct { // Name: Name of the resource. Provided by the client when the resource // is created. The name must be 1-63 characters long, and comply with // RFC1035. Specifically, the name must be 1-63 characters long and - // match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means + // match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means // the first character must be a lowercase letter, and all following // characters must be a dash, lowercase letter, or digit, except the // last character, which cannot be a dash. Name string `json:"name,omitempty"` + // Region: [Output Only] URL of the region where the regional Target + // HTTP Proxy resides. This field is not applicable to global Target + // HTTP Proxies. + Region string `json:"region,omitempty"` + // SelfLink: [Output Only] Server-defined URL for the resource. SelfLink string `json:"selfLink,omitempty"` @@ -27371,6 +28122,162 @@ func (s *TargetHttpProxy) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +type TargetHttpProxyAggregatedList struct { + // Id: [Output Only] Unique identifier for the resource; defined by the + // server. + Id string `json:"id,omitempty"` + + // Items: A list of TargetHttpProxiesScopedList resources. + Items map[string]TargetHttpProxiesScopedList `json:"items,omitempty"` + + // Kind: [Output Only] Type of resource. Always + // compute#targetHttpProxyAggregatedList for lists of Target HTTP + // Proxies. + Kind string `json:"kind,omitempty"` + + // NextPageToken: [Output Only] This token allows you to get the next + // page of results for list requests. If the number of results is larger + // than maxResults, use the nextPageToken as a value for the query + // parameter pageToken in the next list request. Subsequent list + // requests will have their own nextPageToken to continue paging through + // the results. + NextPageToken string `json:"nextPageToken,omitempty"` + + // SelfLink: [Output Only] Server-defined URL for this resource. + SelfLink string `json:"selfLink,omitempty"` + + // Warning: [Output Only] Informational warning message. + Warning *TargetHttpProxyAggregatedListWarning `json:"warning,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "Id") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Id") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *TargetHttpProxyAggregatedList) MarshalJSON() ([]byte, error) { + type NoMethod TargetHttpProxyAggregatedList + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// TargetHttpProxyAggregatedListWarning: [Output Only] Informational +// warning message. +type TargetHttpProxyAggregatedListWarning struct { + // Code: [Output Only] A warning code, if applicable. For example, + // Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in + // the response. + // + // Possible values: + // "CLEANUP_FAILED" + // "DEPRECATED_RESOURCE_USED" + // "DEPRECATED_TYPE_USED" + // "DISK_SIZE_LARGER_THAN_IMAGE_SIZE" + // "EXPERIMENTAL_TYPE_USED" + // "EXTERNAL_API_WARNING" + // "FIELD_VALUE_OVERRIDEN" + // "INJECTED_KERNELS_DEPRECATED" + // "MISSING_TYPE_DEPENDENCY" + // "NEXT_HOP_ADDRESS_NOT_ASSIGNED" + // "NEXT_HOP_CANNOT_IP_FORWARD" + // "NEXT_HOP_INSTANCE_NOT_FOUND" + // "NEXT_HOP_INSTANCE_NOT_ON_NETWORK" + // "NEXT_HOP_NOT_RUNNING" + // "NOT_CRITICAL_ERROR" + // "NO_RESULTS_ON_PAGE" + // "REQUIRED_TOS_AGREEMENT" + // "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING" + // "RESOURCE_NOT_DELETED" + // "SCHEMA_VALIDATION_IGNORED" + // "SINGLE_INSTANCE_PROPERTY_TEMPLATE" + // "UNDECLARED_PROPERTIES" + // "UNREACHABLE" + Code string `json:"code,omitempty"` + + // Data: [Output Only] Metadata about this warning in key: value format. + // For example: + // "data": [ { "key": "scope", "value": "zones/us-east1-d" } + Data []*TargetHttpProxyAggregatedListWarningData `json:"data,omitempty"` + + // Message: [Output Only] A human-readable description of the warning + // code. + Message string `json:"message,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Code") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Code") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *TargetHttpProxyAggregatedListWarning) MarshalJSON() ([]byte, error) { + type NoMethod TargetHttpProxyAggregatedListWarning + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +type TargetHttpProxyAggregatedListWarningData struct { + // Key: [Output Only] A key that provides more detail on the warning + // being returned. For example, for warnings where there are no results + // in a list request for a particular zone, this key might be scope and + // the key value might be the zone name. Other examples might be a key + // indicating a deprecated resource and a suggested replacement, or a + // warning about invalid network settings (for example, if an instance + // attempts to perform IP forwarding but is not enabled for IP + // forwarding). + Key string `json:"key,omitempty"` + + // Value: [Output Only] A warning data value corresponding to the key. + Value string `json:"value,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Key") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Key") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *TargetHttpProxyAggregatedListWarningData) MarshalJSON() ([]byte, error) { + type NoMethod TargetHttpProxyAggregatedListWarningData + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // TargetHttpProxyList: A list of TargetHttpProxy resources. type TargetHttpProxyList struct { // Id: [Output Only] Unique identifier for the resource; defined by the @@ -27593,10 +28500,6 @@ func (s *TargetHttpsProxiesSetSslCertificatesRequest) MarshalJSON() ([]byte, err // an HTTPS proxy. (== resource_for beta.targetHttpsProxies ==) (== // resource_for v1.targetHttpsProxies ==) type TargetHttpsProxy struct { - // ClientSslPolicy: URL to ClientSslPolicy resource which controls the - // set of allowed SSL versions and ciphers. - ClientSslPolicy string `json:"clientSslPolicy,omitempty"` - // CreationTimestamp: [Output Only] Creation timestamp in RFC3339 text // format. CreationTimestamp string `json:"creationTimestamp,omitempty"` @@ -27616,7 +28519,7 @@ type TargetHttpsProxy struct { // Name: Name of the resource. Provided by the client when the resource // is created. The name must be 1-63 characters long, and comply with // RFC1035. Specifically, the name must be 1-63 characters long and - // match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means + // match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means // the first character must be a lowercase letter, and all following // characters must be a dash, lowercase letter, or digit, except the // last character, which cannot be a dash. @@ -27663,15 +28566,15 @@ type TargetHttpsProxy struct { // server. googleapi.ServerResponse `json:"-"` - // ForceSendFields is a list of field names (e.g. "ClientSslPolicy") to - // unconditionally include in API requests. By default, fields with + // ForceSendFields is a list of field names (e.g. "CreationTimestamp") + // to unconditionally include in API requests. By default, fields with // empty values are omitted from API requests. However, any non-pointer, // non-interface field appearing in ForceSendFields will be sent to the // server regardless of whether the field is empty or not. This may be // used to include empty fields in Patch requests. ForceSendFields []string `json:"-"` - // NullFields is a list of field names (e.g. "ClientSslPolicy") to + // NullFields is a list of field names (e.g. "CreationTimestamp") to // include in API requests with the JSON null value. By default, fields // with empty values are omitted from API requests. However, any field // with an empty value appearing in NullFields will be sent to the @@ -27877,7 +28780,7 @@ type TargetInstance struct { // Name: Name of the resource. Provided by the client when the resource // is created. The name must be 1-63 characters long, and comply with // RFC1035. Specifically, the name must be 1-63 characters long and - // match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means + // match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means // the first character must be a lowercase letter, and all following // characters must be a dash, lowercase letter, or digit, except the // last character, which cannot be a dash. @@ -27894,7 +28797,8 @@ type TargetInstance struct { SelfLink string `json:"selfLink,omitempty"` // Zone: [Output Only] URL of the zone where the target instance - // resides. + // resides. You must specify this field as part of the HTTP request URL. + // It is not settable as a field in the request body. Zone string `json:"zone,omitempty"` // ServerResponse contains the HTTP response code and headers from the @@ -28439,7 +29343,7 @@ type TargetPool struct { // Name: Name of the resource. Provided by the client when the resource // is created. The name must be 1-63 characters long, and comply with // RFC1035. Specifically, the name must be 1-63 characters long and - // match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means + // match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means // the first character must be a lowercase letter, and all following // characters must be a dash, lowercase letter, or digit, except the // last character, which cannot be a dash. @@ -29230,10 +30134,6 @@ func (s *TargetSslProxiesSetSslCertificatesRequest) MarshalJSON() ([]byte, error // SSL proxy. (== resource_for beta.targetSslProxies ==) (== // resource_for v1.targetSslProxies ==) type TargetSslProxy struct { - // ClientSslPolicy: URL to ClientSslPolicy resource which controls the - // set of allowed SSL versions and ciphers. - ClientSslPolicy string `json:"clientSslPolicy,omitempty"` - // CreationTimestamp: [Output Only] Creation timestamp in RFC3339 text // format. CreationTimestamp string `json:"creationTimestamp,omitempty"` @@ -29253,7 +30153,7 @@ type TargetSslProxy struct { // Name: Name of the resource. Provided by the client when the resource // is created. The name must be 1-63 characters long, and comply with // RFC1035. Specifically, the name must be 1-63 characters long and - // match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means + // match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means // the first character must be a lowercase letter, and all following // characters must be a dash, lowercase letter, or digit, except the // last character, which cannot be a dash. @@ -29288,15 +30188,15 @@ type TargetSslProxy struct { // server. googleapi.ServerResponse `json:"-"` - // ForceSendFields is a list of field names (e.g. "ClientSslPolicy") to - // unconditionally include in API requests. By default, fields with + // ForceSendFields is a list of field names (e.g. "CreationTimestamp") + // to unconditionally include in API requests. By default, fields with // empty values are omitted from API requests. However, any non-pointer, // non-interface field appearing in ForceSendFields will be sent to the // server regardless of whether the field is empty or not. This may be // used to include empty fields in Patch requests. ForceSendFields []string `json:"-"` - // NullFields is a list of field names (e.g. "ClientSslPolicy") to + // NullFields is a list of field names (e.g. "CreationTimestamp") to // include in API requests with the JSON null value. By default, fields // with empty values are omitted from API requests. However, any field // with an empty value appearing in NullFields will be sent to the @@ -29550,7 +30450,7 @@ type TargetTcpProxy struct { // Name: Name of the resource. Provided by the client when the resource // is created. The name must be 1-63 characters long, and comply with // RFC1035. Specifically, the name must be 1-63 characters long and - // match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means + // match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means // the first character must be a lowercase letter, and all following // characters must be a dash, lowercase letter, or digit, except the // last character, which cannot be a dash. @@ -29798,7 +30698,7 @@ type TargetVpnGateway struct { // Name: Name of the resource. Provided by the client when the resource // is created. The name must be 1-63 characters long, and comply with // RFC1035. Specifically, the name must be 1-63 characters long and - // match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means + // match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means // the first character must be a lowercase letter, and all following // characters must be a dash, lowercase letter, or digit, except the // last character, which cannot be a dash. @@ -29809,7 +30709,8 @@ type TargetVpnGateway struct { Network string `json:"network,omitempty"` // Region: [Output Only] URL of the region where the target VPN gateway - // resides. + // resides. You must specify this field as part of the HTTP request URL. + // It is not settable as a field in the request body. Region string `json:"region,omitempty"` // SelfLink: [Output Only] Server-defined URL for the resource. @@ -30473,7 +31374,7 @@ type UrlMap struct { // Name: Name of the resource. Provided by the client when the resource // is created. The name must be 1-63 characters long, and comply with // RFC1035. Specifically, the name must be 1-63 characters long and - // match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means + // match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means // the first character must be a lowercase letter, and all following // characters must be a dash, lowercase letter, or digit, except the // last character, which cannot be a dash. @@ -30482,11 +31383,18 @@ type UrlMap struct { // PathMatchers: The list of named PathMatchers to use against the URL. PathMatchers []*PathMatcher `json:"pathMatchers,omitempty"` + // Region: [Output Only] URL of the region where the regional URL map + // resides. This field is not applicable to global URL maps. You must + // specify this field as part of the HTTP request URL. It is not + // settable as a field in the request body. + Region string `json:"region,omitempty"` + // SelfLink: [Output Only] Server-defined URL for the resource. SelfLink string `json:"selfLink,omitempty"` - // Tests: The list of expected URL mappings. Request to update this - // UrlMap will succeed only if all of the test cases pass. + // Tests: The list of expected URL mapping tests. Request to update this + // UrlMap will succeed only if all of the test cases pass. You can + // specify a maximum of 100 tests per UrlMap. Tests []*UrlMapTest `json:"tests,omitempty"` // ServerResponse contains the HTTP response code and headers from the @@ -31151,7 +32059,7 @@ type VpnTunnel struct { // Name: Name of the resource. Provided by the client when the resource // is created. The name must be 1-63 characters long, and comply with // RFC1035. Specifically, the name must be 1-63 characters long and - // match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means + // match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means // the first character must be a lowercase letter, and all following // characters must be a dash, lowercase letter, or digit, except the // last character, which cannot be a dash. @@ -31161,6 +32069,8 @@ type VpnTunnel struct { PeerIp string `json:"peerIp,omitempty"` // Region: [Output Only] URL of the region where the VPN tunnel resides. + // You must specify this field as part of the HTTP request URL. It is + // not settable as a field in the request body. Region string `json:"region,omitempty"` // RemoteTrafficSelector: Remote traffic selectors to use when @@ -31199,8 +32109,9 @@ type VpnTunnel struct { // "WAITING_FOR_FULL_CONFIG" Status string `json:"status,omitempty"` - // TargetVpnGateway: URL of the VPN gateway with which this VPN tunnel - // is associated. Provided by the client when the VPN tunnel is created. + // TargetVpnGateway: URL of the Target VPN gateway with which this VPN + // tunnel is associated. Provided by the client when the VPN tunnel is + // created. TargetVpnGateway string `json:"targetVpnGateway,omitempty"` // ServerResponse contains the HTTP response code and headers from the @@ -32145,32 +33056,28 @@ func (r *AcceleratorTypesService) AggregatedList(project string) *AcceleratorTyp return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *AcceleratorTypesAggregatedListCall) Filter(filter string) *AcceleratorTypesAggregatedListCall { c.urlParams_.Set("filter", filter) return c @@ -32314,7 +33221,7 @@ func (c *AcceleratorTypesAggregatedListCall) Do(opts ...googleapi.CallOption) (* // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -32562,32 +33469,28 @@ func (r *AcceleratorTypesService) List(project string, zone string) *Accelerator return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *AcceleratorTypesListCall) Filter(filter string) *AcceleratorTypesListCall { c.urlParams_.Set("filter", filter) return c @@ -32733,7 +33636,7 @@ func (c *AcceleratorTypesListCall) Do(opts ...googleapi.CallOption) (*Accelerato // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -32823,32 +33726,28 @@ func (r *AddressesService) AggregatedList(project string) *AddressesAggregatedLi return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *AddressesAggregatedListCall) Filter(filter string) *AddressesAggregatedListCall { c.urlParams_.Set("filter", filter) return c @@ -32992,7 +33891,7 @@ func (c *AddressesAggregatedListCall) Do(opts ...googleapi.CallOption) (*Address // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -33585,32 +34484,28 @@ func (r *AddressesService) List(project string, region string) *AddressesListCal return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *AddressesListCall) Filter(filter string) *AddressesListCall { c.urlParams_.Set("filter", filter) return c @@ -33756,7 +34651,7 @@ func (c *AddressesListCall) Do(opts ...googleapi.CallOption) (*AddressList, erro // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -34186,32 +35081,28 @@ func (r *AutoscalersService) AggregatedList(project string) *AutoscalersAggregat return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *AutoscalersAggregatedListCall) Filter(filter string) *AutoscalersAggregatedListCall { c.urlParams_.Set("filter", filter) return c @@ -34355,7 +35246,7 @@ func (c *AutoscalersAggregatedListCall) Do(opts ...googleapi.CallOption) (*Autos // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -34945,32 +35836,28 @@ func (r *AutoscalersService) List(project string, zone string) *AutoscalersListC return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *AutoscalersListCall) Filter(filter string) *AutoscalersListCall { c.urlParams_.Set("filter", filter) return c @@ -35116,7 +36003,7 @@ func (c *AutoscalersListCall) Do(opts ...googleapi.CallOption) (*AutoscalerList, // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -36695,32 +37582,28 @@ func (r *BackendBucketsService) List(project string) *BackendBucketsListCall { return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *BackendBucketsListCall) Filter(filter string) *BackendBucketsListCall { c.urlParams_.Set("filter", filter) return c @@ -36864,7 +37747,7 @@ func (c *BackendBucketsListCall) Do(opts ...googleapi.CallOption) (*BackendBucke // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -37755,32 +38638,28 @@ func (r *BackendServicesService) AggregatedList(project string) *BackendServices return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *BackendServicesAggregatedListCall) Filter(filter string) *BackendServicesAggregatedListCall { c.urlParams_.Set("filter", filter) return c @@ -37924,7 +38803,7 @@ func (c *BackendServicesAggregatedListCall) Do(opts ...googleapi.CallOption) (*B // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -38801,32 +39680,28 @@ func (r *BackendServicesService) List(project string) *BackendServicesListCall { return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *BackendServicesListCall) Filter(filter string) *BackendServicesListCall { c.urlParams_.Set("filter", filter) return c @@ -38970,7 +39845,7 @@ func (c *BackendServicesListCall) Do(opts ...googleapi.CallOption) (*BackendServ // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -39702,154 +40577,6 @@ func (c *BackendServicesUpdateCall) Do(opts ...googleapi.CallOption) (*Operation } -// method id "compute.clientSslPolicies.testIamPermissions": - -type ClientSslPoliciesTestIamPermissionsCall struct { - s *Service - project string - resource string - testpermissionsrequest *TestPermissionsRequest - urlParams_ gensupport.URLParams - ctx_ context.Context - header_ http.Header -} - -// TestIamPermissions: Returns permissions that a caller has on the -// specified resource. -func (r *ClientSslPoliciesService) TestIamPermissions(project string, resource string, testpermissionsrequest *TestPermissionsRequest) *ClientSslPoliciesTestIamPermissionsCall { - c := &ClientSslPoliciesTestIamPermissionsCall{s: r.s, urlParams_: make(gensupport.URLParams)} - c.project = project - c.resource = resource - c.testpermissionsrequest = testpermissionsrequest - return c -} - -// Fields allows partial responses to be retrieved. See -// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse -// for more information. -func (c *ClientSslPoliciesTestIamPermissionsCall) Fields(s ...googleapi.Field) *ClientSslPoliciesTestIamPermissionsCall { - c.urlParams_.Set("fields", googleapi.CombineFields(s)) - return c -} - -// Context sets the context to be used in this call's Do method. Any -// pending HTTP request will be aborted if the provided context is -// canceled. -func (c *ClientSslPoliciesTestIamPermissionsCall) Context(ctx context.Context) *ClientSslPoliciesTestIamPermissionsCall { - c.ctx_ = ctx - return c -} - -// Header returns an http.Header that can be modified by the caller to -// add HTTP headers to the request. -func (c *ClientSslPoliciesTestIamPermissionsCall) Header() http.Header { - if c.header_ == nil { - c.header_ = make(http.Header) - } - return c.header_ -} - -func (c *ClientSslPoliciesTestIamPermissionsCall) doRequest(alt string) (*http.Response, error) { - reqHeaders := make(http.Header) - for k, v := range c.header_ { - reqHeaders[k] = v - } - reqHeaders.Set("User-Agent", c.s.userAgent()) - var body io.Reader = nil - body, err := googleapi.WithoutDataWrapper.JSONReader(c.testpermissionsrequest) - if err != nil { - return nil, err - } - reqHeaders.Set("Content-Type", "application/json") - c.urlParams_.Set("alt", alt) - urls := googleapi.ResolveRelative(c.s.BasePath, "{project}/global/clientSslPolicies/{resource}/testIamPermissions") - urls += "?" + c.urlParams_.Encode() - req, _ := http.NewRequest("POST", urls, body) - req.Header = reqHeaders - googleapi.Expand(req.URL, map[string]string{ - "project": c.project, - "resource": c.resource, - }) - return gensupport.SendRequest(c.ctx_, c.s.client, req) -} - -// Do executes the "compute.clientSslPolicies.testIamPermissions" call. -// Exactly one of *TestPermissionsResponse or error will be non-nil. Any -// non-2xx status code is an error. Response headers are in either -// *TestPermissionsResponse.ServerResponse.Header or (if a response was -// returned at all) in error.(*googleapi.Error).Header. Use -// googleapi.IsNotModified to check whether the returned error was -// because http.StatusNotModified was returned. -func (c *ClientSslPoliciesTestIamPermissionsCall) Do(opts ...googleapi.CallOption) (*TestPermissionsResponse, error) { - gensupport.SetOptions(c.urlParams_, opts...) - res, err := c.doRequest("json") - if res != nil && res.StatusCode == http.StatusNotModified { - if res.Body != nil { - res.Body.Close() - } - return nil, &googleapi.Error{ - Code: res.StatusCode, - Header: res.Header, - } - } - if err != nil { - return nil, err - } - defer googleapi.CloseBody(res) - if err := googleapi.CheckResponse(res); err != nil { - return nil, err - } - ret := &TestPermissionsResponse{ - ServerResponse: googleapi.ServerResponse{ - Header: res.Header, - HTTPStatusCode: res.StatusCode, - }, - } - target := &ret - if err := gensupport.DecodeResponse(target, res); err != nil { - return nil, err - } - return ret, nil - // { - // "description": "Returns permissions that a caller has on the specified resource.", - // "httpMethod": "POST", - // "id": "compute.clientSslPolicies.testIamPermissions", - // "parameterOrder": [ - // "project", - // "resource" - // ], - // "parameters": { - // "project": { - // "description": "Project ID for this request.", - // "location": "path", - // "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - // "required": true, - // "type": "string" - // }, - // "resource": { - // "description": "Name of the resource for this request.", - // "location": "path", - // "pattern": "(?:[-a-z0-9_]{0,62}[a-z0-9])?", - // "required": true, - // "type": "string" - // } - // }, - // "path": "{project}/global/clientSslPolicies/{resource}/testIamPermissions", - // "request": { - // "$ref": "TestPermissionsRequest" - // }, - // "response": { - // "$ref": "TestPermissionsResponse" - // }, - // "scopes": [ - // "https://www.googleapis.com/auth/cloud-platform", - // "https://www.googleapis.com/auth/compute", - // "https://www.googleapis.com/auth/compute.readonly" - // ] - // } - -} - // method id "compute.diskTypes.aggregatedList": type DiskTypesAggregatedListCall struct { @@ -39869,32 +40596,28 @@ func (r *DiskTypesService) AggregatedList(project string) *DiskTypesAggregatedLi return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *DiskTypesAggregatedListCall) Filter(filter string) *DiskTypesAggregatedListCall { c.urlParams_.Set("filter", filter) return c @@ -40038,7 +40761,7 @@ func (c *DiskTypesAggregatedListCall) Do(opts ...googleapi.CallOption) (*DiskTyp // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -40288,32 +41011,28 @@ func (r *DiskTypesService) List(project string, zone string) *DiskTypesListCall return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *DiskTypesListCall) Filter(filter string) *DiskTypesListCall { c.urlParams_.Set("filter", filter) return c @@ -40459,7 +41178,7 @@ func (c *DiskTypesListCall) Do(opts ...googleapi.CallOption) (*DiskTypeList, err // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -40549,32 +41268,28 @@ func (r *DisksService) AggregatedList(project string) *DisksAggregatedListCall { return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *DisksAggregatedListCall) Filter(filter string) *DisksAggregatedListCall { c.urlParams_.Set("filter", filter) return c @@ -40718,7 +41433,7 @@ func (c *DisksAggregatedListCall) Do(opts ...googleapi.CallOption) (*DiskAggrega // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -41684,32 +42399,28 @@ func (r *DisksService) List(project string, zone string) *DisksListCall { return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *DisksListCall) Filter(filter string) *DisksListCall { c.urlParams_.Set("filter", filter) return c @@ -41855,7 +42566,7 @@ func (c *DisksListCall) Do(opts ...googleapi.CallOption) (*DiskList, error) { // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -43101,32 +43812,28 @@ func (r *FirewallsService) List(project string) *FirewallsListCall { return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *FirewallsListCall) Filter(filter string) *FirewallsListCall { c.urlParams_.Set("filter", filter) return c @@ -43270,7 +43977,7 @@ func (c *FirewallsListCall) Do(opts ...googleapi.CallOption) (*FirewallList, err // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -43668,7 +44375,7 @@ type FirewallsUpdateCall struct { } // Update: Updates the specified firewall rule with the data included in -// the request. Using PUT method, can only update following fields of +// the request. The PUT method can only update the following fields of // firewall rule: allowed, description, sourceRanges, sourceTags, // targetTags. // For details, see https://cloud.google.com/compute/docs/reference/latest/firewalls/update @@ -43786,7 +44493,7 @@ func (c *FirewallsUpdateCall) Do(opts ...googleapi.CallOption) (*Operation, erro } return ret, nil // { - // "description": "Updates the specified firewall rule with the data included in the request. Using PUT method, can only update following fields of firewall rule: allowed, description, sourceRanges, sourceTags, targetTags.", + // "description": "Updates the specified firewall rule with the data included in the request. The PUT method can only update the following fields of firewall rule: allowed, description, sourceRanges, sourceTags, targetTags.", // "httpMethod": "PUT", // "id": "compute.firewalls.update", // "parameterOrder": [ @@ -43848,32 +44555,28 @@ func (r *ForwardingRulesService) AggregatedList(project string) *ForwardingRules return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *ForwardingRulesAggregatedListCall) Filter(filter string) *ForwardingRulesAggregatedListCall { c.urlParams_.Set("filter", filter) return c @@ -44017,7 +44720,7 @@ func (c *ForwardingRulesAggregatedListCall) Do(opts ...googleapi.CallOption) (*F // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -44610,32 +45313,28 @@ func (r *ForwardingRulesService) List(project string, region string) *Forwarding return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *ForwardingRulesListCall) Filter(filter string) *ForwardingRulesListCall { c.urlParams_.Set("filter", filter) return c @@ -44781,7 +45480,7 @@ func (c *ForwardingRulesListCall) Do(opts ...googleapi.CallOption) (*ForwardingR // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -46054,32 +46753,28 @@ func (r *GlobalAddressesService) List(project string) *GlobalAddressesListCall { return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *GlobalAddressesListCall) Filter(filter string) *GlobalAddressesListCall { c.urlParams_.Set("filter", filter) return c @@ -46223,7 +46918,7 @@ func (c *GlobalAddressesListCall) Do(opts ...googleapi.CallOption) (*AddressList // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -47077,32 +47772,28 @@ func (r *GlobalForwardingRulesService) List(project string) *GlobalForwardingRul return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *GlobalForwardingRulesListCall) Filter(filter string) *GlobalForwardingRulesListCall { c.urlParams_.Set("filter", filter) return c @@ -47246,7 +47937,7 @@ func (c *GlobalForwardingRulesListCall) Do(opts ...googleapi.CallOption) (*Forwa // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -47969,32 +48660,28 @@ func (r *GlobalOperationsService) AggregatedList(project string) *GlobalOperatio return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *GlobalOperationsAggregatedListCall) Filter(filter string) *GlobalOperationsAggregatedListCall { c.urlParams_.Set("filter", filter) return c @@ -48138,7 +48825,7 @@ func (c *GlobalOperationsAggregatedListCall) Do(opts ...googleapi.CallOption) (* // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -48484,32 +49171,28 @@ func (r *GlobalOperationsService) List(project string) *GlobalOperationsListCall return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *GlobalOperationsListCall) Filter(filter string) *GlobalOperationsListCall { c.urlParams_.Set("filter", filter) return c @@ -48653,7 +49336,7 @@ func (c *GlobalOperationsListCall) Do(opts ...googleapi.CallOption) (*OperationL // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -48717,6 +49400,254 @@ func (c *GlobalOperationsListCall) Pages(ctx context.Context, f func(*OperationL } } +// method id "compute.healthChecks.aggregatedList": + +type HealthChecksAggregatedListCall struct { + s *Service + project string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// AggregatedList: Retrieves the list of all HealthCheck resources, +// regional and global, available to the specified project. +func (r *HealthChecksService) AggregatedList(project string) *HealthChecksAggregatedListCall { + c := &HealthChecksAggregatedListCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.project = project + return c +} + +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. +// +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. +// +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. +// +// To filter on multiple expressions, provide each separate expression +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). +func (c *HealthChecksAggregatedListCall) Filter(filter string) *HealthChecksAggregatedListCall { + c.urlParams_.Set("filter", filter) + return c +} + +// MaxResults sets the optional parameter "maxResults": The maximum +// number of results per page that should be returned. If the number of +// available results is larger than maxResults, Compute Engine returns a +// nextPageToken that can be used to get the next page of results in +// subsequent list requests. Acceptable values are 0 to 500, inclusive. +// (Default: 500) +func (c *HealthChecksAggregatedListCall) MaxResults(maxResults int64) *HealthChecksAggregatedListCall { + c.urlParams_.Set("maxResults", fmt.Sprint(maxResults)) + return c +} + +// OrderBy sets the optional parameter "orderBy": Sorts list results by +// a certain order. By default, results are returned in alphanumerical +// order based on the resource name. +// +// You can also sort results in descending order based on the creation +// timestamp using orderBy="creationTimestamp desc". This sorts results +// based on the creationTimestamp field in reverse chronological order +// (newest result first). Use this to sort resources like operations so +// that the newest operation is returned first. +// +// Currently, only sorting by name or creationTimestamp desc is +// supported. +func (c *HealthChecksAggregatedListCall) OrderBy(orderBy string) *HealthChecksAggregatedListCall { + c.urlParams_.Set("orderBy", orderBy) + return c +} + +// PageToken sets the optional parameter "pageToken": Specifies a page +// token to use. Set pageToken to the nextPageToken returned by a +// previous list request to get the next page of results. +func (c *HealthChecksAggregatedListCall) PageToken(pageToken string) *HealthChecksAggregatedListCall { + c.urlParams_.Set("pageToken", pageToken) + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *HealthChecksAggregatedListCall) Fields(s ...googleapi.Field) *HealthChecksAggregatedListCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// IfNoneMatch sets the optional parameter which makes the operation +// fail if the object's ETag matches the given value. This is useful for +// getting updates only after the object has changed since the last +// request. Use googleapi.IsNotModified to check whether the response +// error from Do is the result of In-None-Match. +func (c *HealthChecksAggregatedListCall) IfNoneMatch(entityTag string) *HealthChecksAggregatedListCall { + c.ifNoneMatch_ = entityTag + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *HealthChecksAggregatedListCall) Context(ctx context.Context) *HealthChecksAggregatedListCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *HealthChecksAggregatedListCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *HealthChecksAggregatedListCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + if c.ifNoneMatch_ != "" { + reqHeaders.Set("If-None-Match", c.ifNoneMatch_) + } + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "{project}/aggregated/healthChecks") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("GET", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "project": c.project, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "compute.healthChecks.aggregatedList" call. +// Exactly one of *HealthChecksAggregatedList or error will be non-nil. +// Any non-2xx status code is an error. Response headers are in either +// *HealthChecksAggregatedList.ServerResponse.Header or (if a response +// was returned at all) in error.(*googleapi.Error).Header. Use +// googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *HealthChecksAggregatedListCall) Do(opts ...googleapi.CallOption) (*HealthChecksAggregatedList, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &HealthChecksAggregatedList{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Retrieves the list of all HealthCheck resources, regional and global, available to the specified project.", + // "httpMethod": "GET", + // "id": "compute.healthChecks.aggregatedList", + // "parameterOrder": [ + // "project" + // ], + // "parameters": { + // "filter": { + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + // "location": "query", + // "type": "string" + // }, + // "maxResults": { + // "default": "500", + // "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + // "format": "uint32", + // "location": "query", + // "minimum": "0", + // "type": "integer" + // }, + // "orderBy": { + // "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + // "location": "query", + // "type": "string" + // }, + // "pageToken": { + // "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + // "location": "query", + // "type": "string" + // }, + // "project": { + // "description": "Name of the project scoping this request.", + // "location": "path", + // "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + // "required": true, + // "type": "string" + // } + // }, + // "path": "{project}/aggregated/healthChecks", + // "response": { + // "$ref": "HealthChecksAggregatedList" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform", + // "https://www.googleapis.com/auth/compute", + // "https://www.googleapis.com/auth/compute.readonly" + // ] + // } + +} + +// Pages invokes f for each page of results. +// A non-nil error returned from f will halt the iteration. +// The provided context supersedes any context provided to the Context method. +func (c *HealthChecksAggregatedListCall) Pages(ctx context.Context, f func(*HealthChecksAggregatedList) error) error { + c.ctx_ = ctx + defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point + for { + x, err := c.Do() + if err != nil { + return err + } + if err := f(x); err != nil { + return err + } + if x.NextPageToken == "" { + return nil + } + c.PageToken(x.NextPageToken) + } +} + // method id "compute.healthChecks.delete": type HealthChecksDeleteCall struct { @@ -49208,32 +50139,28 @@ func (r *HealthChecksService) List(project string) *HealthChecksListCall { return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *HealthChecksListCall) Filter(filter string) *HealthChecksListCall { c.urlParams_.Set("filter", filter) return c @@ -49377,7 +50304,7 @@ func (c *HealthChecksListCall) Do(opts ...googleapi.CallOption) (*HealthCheckLis // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -49950,32 +50877,28 @@ func (r *HostTypesService) AggregatedList(project string) *HostTypesAggregatedLi return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *HostTypesAggregatedListCall) Filter(filter string) *HostTypesAggregatedListCall { c.urlParams_.Set("filter", filter) return c @@ -50119,7 +51042,7 @@ func (c *HostTypesAggregatedListCall) Do(opts ...googleapi.CallOption) (*HostTyp // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -50367,32 +51290,28 @@ func (r *HostTypesService) List(project string, zone string) *HostTypesListCall return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *HostTypesListCall) Filter(filter string) *HostTypesListCall { c.urlParams_.Set("filter", filter) return c @@ -50538,7 +51457,7 @@ func (c *HostTypesListCall) Do(opts ...googleapi.CallOption) (*HostTypeList, err // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -50627,32 +51546,28 @@ func (r *HostsService) AggregatedList(project string) *HostsAggregatedListCall { return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *HostsAggregatedListCall) Filter(filter string) *HostsAggregatedListCall { c.urlParams_.Set("filter", filter) return c @@ -50796,7 +51711,7 @@ func (c *HostsAggregatedListCall) Do(opts ...googleapi.CallOption) (*HostAggrega // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -51548,32 +52463,28 @@ func (r *HostsService) List(project string, zone string) *HostsListCall { return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *HostsListCall) Filter(filter string) *HostsListCall { c.urlParams_.Set("filter", filter) return c @@ -51719,7 +52630,7 @@ func (c *HostsListCall) Do(opts ...googleapi.CallOption) (*HostList, error) { // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -52602,32 +53513,28 @@ func (r *HttpHealthChecksService) List(project string) *HttpHealthChecksListCall return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *HttpHealthChecksListCall) Filter(filter string) *HttpHealthChecksListCall { c.urlParams_.Set("filter", filter) return c @@ -52771,7 +53678,7 @@ func (c *HttpHealthChecksListCall) Do(opts ...googleapi.CallOption) (*HttpHealth // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -53819,32 +54726,28 @@ func (r *HttpsHealthChecksService) List(project string) *HttpsHealthChecksListCa return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *HttpsHealthChecksListCall) Filter(filter string) *HttpsHealthChecksListCall { c.urlParams_.Set("filter", filter) return c @@ -53988,7 +54891,7 @@ func (c *HttpsHealthChecksListCall) Do(opts ...googleapi.CallOption) (*HttpsHeal // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -55536,32 +56439,28 @@ func (r *ImagesService) List(project string) *ImagesListCall { return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *ImagesListCall) Filter(filter string) *ImagesListCall { c.urlParams_.Set("filter", filter) return c @@ -55705,7 +56604,7 @@ func (c *ImagesListCall) Do(opts ...googleapi.CallOption) (*ImageList, error) { // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -56425,32 +57324,28 @@ func (r *InstanceGroupManagersService) AggregatedList(project string) *InstanceG return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *InstanceGroupManagersAggregatedListCall) Filter(filter string) *InstanceGroupManagersAggregatedListCall { c.urlParams_.Set("filter", filter) return c @@ -56595,7 +57490,7 @@ func (c *InstanceGroupManagersAggregatedListCall) Do(opts ...googleapi.CallOptio // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -57699,32 +58594,28 @@ func (r *InstanceGroupManagersService) List(project string, zone string) *Instan return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *InstanceGroupManagersListCall) Filter(filter string) *InstanceGroupManagersListCall { c.urlParams_.Set("filter", filter) return c @@ -57870,7 +58761,7 @@ func (c *InstanceGroupManagersListCall) Do(opts ...googleapi.CallOption) (*Insta // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -58179,32 +59070,28 @@ func (r *InstanceGroupManagersService) ListPerInstanceConfigs(project string, zo return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *InstanceGroupManagersListPerInstanceConfigsCall) Filter(filter string) *InstanceGroupManagersListPerInstanceConfigsCall { c.urlParams_.Set("filter", filter) return c @@ -58341,7 +59228,7 @@ func (c *InstanceGroupManagersListPerInstanceConfigsCall) Do(opts ...googleapi.C // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -60445,32 +61332,28 @@ func (r *InstanceGroupsService) AggregatedList(project string) *InstanceGroupsAg return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *InstanceGroupsAggregatedListCall) Filter(filter string) *InstanceGroupsAggregatedListCall { c.urlParams_.Set("filter", filter) return c @@ -60614,7 +61497,7 @@ func (c *InstanceGroupsAggregatedListCall) Do(opts ...googleapi.CallOption) (*In // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -61202,32 +62085,28 @@ func (r *InstanceGroupsService) List(project string, zone string) *InstanceGroup return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *InstanceGroupsListCall) Filter(filter string) *InstanceGroupsListCall { c.urlParams_.Set("filter", filter) return c @@ -61373,7 +62252,7 @@ func (c *InstanceGroupsListCall) Do(opts ...googleapi.CallOption) (*InstanceGrou // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -61466,32 +62345,28 @@ func (r *InstanceGroupsService) ListInstances(project string, zone string, insta return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *InstanceGroupsListInstancesCall) Filter(filter string) *InstanceGroupsListInstancesCall { c.urlParams_.Set("filter", filter) return c @@ -61631,7 +62506,7 @@ func (c *InstanceGroupsListInstancesCall) Do(opts ...googleapi.CallOption) (*Ins // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -62732,32 +63607,28 @@ func (r *InstanceTemplatesService) List(project string) *InstanceTemplatesListCa return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *InstanceTemplatesListCall) Filter(filter string) *InstanceTemplatesListCall { c.urlParams_.Set("filter", filter) return c @@ -62901,7 +63772,7 @@ func (c *InstanceTemplatesListCall) Do(opts ...googleapi.CallOption) (*InstanceT // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -63506,32 +64377,28 @@ func (r *InstancesService) AggregatedList(project string) *InstancesAggregatedLi return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *InstancesAggregatedListCall) Filter(filter string) *InstancesAggregatedListCall { c.urlParams_.Set("filter", filter) return c @@ -63675,7 +64542,7 @@ func (c *InstancesAggregatedListCall) Do(opts ...googleapi.CallOption) (*Instanc // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -65392,32 +66259,28 @@ func (r *InstancesService) List(project string, zone string) *InstancesListCall return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *InstancesListCall) Filter(filter string) *InstancesListCall { c.urlParams_.Set("filter", filter) return c @@ -65563,7 +66426,7 @@ func (c *InstancesListCall) Do(opts ...googleapi.CallOption) (*InstanceList, err // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -65657,32 +66520,28 @@ func (r *InstancesService) ListReferrers(project string, zone string, instance s return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *InstancesListReferrersCall) Filter(filter string) *InstancesListReferrersCall { c.urlParams_.Set("filter", filter) return c @@ -65830,7 +66689,7 @@ func (c *InstancesListReferrersCall) Do(opts ...googleapi.CallOption) (*Instance // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -68255,6 +69114,189 @@ func (c *InstancesSetServiceAccountCall) Do(opts ...googleapi.CallOption) (*Oper } +// method id "compute.instances.setShieldedVmIntegrityPolicy": + +type InstancesSetShieldedVmIntegrityPolicyCall struct { + s *Service + project string + zone string + instance string + shieldedvmintegritypolicy *ShieldedVmIntegrityPolicy + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// SetShieldedVmIntegrityPolicy: Sets the Shielded VM integrity policy +// for an instance. This method supports PATCH semantics and uses the +// JSON merge patch format and processing rules. +func (r *InstancesService) SetShieldedVmIntegrityPolicy(project string, zone string, instance string, shieldedvmintegritypolicy *ShieldedVmIntegrityPolicy) *InstancesSetShieldedVmIntegrityPolicyCall { + c := &InstancesSetShieldedVmIntegrityPolicyCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.project = project + c.zone = zone + c.instance = instance + c.shieldedvmintegritypolicy = shieldedvmintegritypolicy + return c +} + +// RequestId sets the optional parameter "requestId": An optional +// request ID to identify requests. Specify a unique request ID so that +// if you must retry your request, the server will know to ignore the +// request if it has already been completed. +// +// For example, consider a situation where you make an initial request +// and the request times out. If you make the request again with the +// same request ID, the server can check if original operation with the +// same request ID was received, and if so, will ignore the second +// request. This prevents clients from accidentally creating duplicate +// commitments. +// +// The request ID must be a valid UUID with the exception that zero UUID +// is not supported (00000000-0000-0000-0000-000000000000). +func (c *InstancesSetShieldedVmIntegrityPolicyCall) RequestId(requestId string) *InstancesSetShieldedVmIntegrityPolicyCall { + c.urlParams_.Set("requestId", requestId) + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *InstancesSetShieldedVmIntegrityPolicyCall) Fields(s ...googleapi.Field) *InstancesSetShieldedVmIntegrityPolicyCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *InstancesSetShieldedVmIntegrityPolicyCall) Context(ctx context.Context) *InstancesSetShieldedVmIntegrityPolicyCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *InstancesSetShieldedVmIntegrityPolicyCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *InstancesSetShieldedVmIntegrityPolicyCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.shieldedvmintegritypolicy) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "{project}/zones/{zone}/instances/{instance}/setShieldedVmIntegrityPolicy") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("PATCH", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "project": c.project, + "zone": c.zone, + "instance": c.instance, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "compute.instances.setShieldedVmIntegrityPolicy" call. +// Exactly one of *Operation or error will be non-nil. Any non-2xx +// status code is an error. Response headers are in either +// *Operation.ServerResponse.Header or (if a response was returned at +// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified +// to check whether the returned error was because +// http.StatusNotModified was returned. +func (c *InstancesSetShieldedVmIntegrityPolicyCall) Do(opts ...googleapi.CallOption) (*Operation, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &Operation{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Sets the Shielded VM integrity policy for an instance. This method supports PATCH semantics and uses the JSON merge patch format and processing rules.", + // "httpMethod": "PATCH", + // "id": "compute.instances.setShieldedVmIntegrityPolicy", + // "parameterOrder": [ + // "project", + // "zone", + // "instance" + // ], + // "parameters": { + // "instance": { + // "description": "Name of the instance scoping this request.", + // "location": "path", + // "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + // "required": true, + // "type": "string" + // }, + // "project": { + // "description": "Project ID for this request.", + // "location": "path", + // "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + // "required": true, + // "type": "string" + // }, + // "requestId": { + // "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + // "location": "query", + // "type": "string" + // }, + // "zone": { + // "description": "The name of the zone for this request.", + // "location": "path", + // "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + // "required": true, + // "type": "string" + // } + // }, + // "path": "{project}/zones/{zone}/instances/{instance}/setShieldedVmIntegrityPolicy", + // "request": { + // "$ref": "ShieldedVmIntegrityPolicy" + // }, + // "response": { + // "$ref": "Operation" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform", + // "https://www.googleapis.com/auth/compute" + // ] + // } + +} + // method id "compute.instances.setTags": type InstancesSetTagsCall struct { @@ -70065,32 +71107,28 @@ func (r *InterconnectAttachmentsService) AggregatedList(project string) *Interco return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *InterconnectAttachmentsAggregatedListCall) Filter(filter string) *InterconnectAttachmentsAggregatedListCall { c.urlParams_.Set("filter", filter) return c @@ -70235,7 +71273,7 @@ func (c *InterconnectAttachmentsAggregatedListCall) Do(opts ...googleapi.CallOpt // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -70987,32 +72025,28 @@ func (r *InterconnectAttachmentsService) List(project string, region string) *In return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *InterconnectAttachmentsListCall) Filter(filter string) *InterconnectAttachmentsListCall { c.urlParams_.Set("filter", filter) return c @@ -71158,7 +72192,7 @@ func (c *InterconnectAttachmentsListCall) Do(opts ...googleapi.CallOption) (*Int // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -72083,32 +73117,28 @@ func (r *InterconnectLocationsService) List(project string) *InterconnectLocatio return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *InterconnectLocationsListCall) Filter(filter string) *InterconnectLocationsListCall { c.urlParams_.Set("filter", filter) return c @@ -72252,7 +73282,7 @@ func (c *InterconnectLocationsListCall) Do(opts ...googleapi.CallOption) (*Inter // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -73107,32 +74137,28 @@ func (r *InterconnectsService) List(project string) *InterconnectsListCall { return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *InterconnectsListCall) Filter(filter string) *InterconnectsListCall { c.urlParams_.Set("filter", filter) return c @@ -73276,7 +74302,7 @@ func (c *InterconnectsListCall) Do(opts ...googleapi.CallOption) (*InterconnectL // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -75202,32 +76228,28 @@ func (r *LicensesService) List(project string) *LicensesListCall { return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *LicensesListCall) Filter(filter string) *LicensesListCall { c.urlParams_.Set("filter", filter) return c @@ -75371,7 +76393,7 @@ func (c *LicensesListCall) Do(opts ...googleapi.CallOption) (*LicensesListRespon // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -75749,32 +76771,28 @@ func (r *MachineTypesService) AggregatedList(project string) *MachineTypesAggreg return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *MachineTypesAggregatedListCall) Filter(filter string) *MachineTypesAggregatedListCall { c.urlParams_.Set("filter", filter) return c @@ -75918,7 +76936,7 @@ func (c *MachineTypesAggregatedListCall) Do(opts ...googleapi.CallOption) (*Mach // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -76168,32 +77186,28 @@ func (r *MachineTypesService) List(project string, zone string) *MachineTypesLis return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *MachineTypesListCall) Filter(filter string) *MachineTypesListCall { c.urlParams_.Set("filter", filter) return c @@ -76339,7 +77353,7 @@ func (c *MachineTypesListCall) Do(opts ...googleapi.CallOption) (*MachineTypeLis // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -76428,32 +77442,28 @@ func (r *MaintenancePoliciesService) AggregatedList(project string) *Maintenance return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *MaintenancePoliciesAggregatedListCall) Filter(filter string) *MaintenancePoliciesAggregatedListCall { c.urlParams_.Set("filter", filter) return c @@ -76597,7 +77607,7 @@ func (c *MaintenancePoliciesAggregatedListCall) Do(opts ...googleapi.CallOption) // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -77348,32 +78358,28 @@ func (r *MaintenancePoliciesService) List(project string, region string) *Mainte return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *MaintenancePoliciesListCall) Filter(filter string) *MaintenancePoliciesListCall { c.urlParams_.Set("filter", filter) return c @@ -77519,7 +78525,7 @@ func (c *MaintenancePoliciesListCall) Do(opts ...googleapi.CallOption) (*Mainten // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -77926,32 +78932,28 @@ func (r *NetworkEndpointGroupsService) AggregatedList(project string) *NetworkEn return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *NetworkEndpointGroupsAggregatedListCall) Filter(filter string) *NetworkEndpointGroupsAggregatedListCall { c.urlParams_.Set("filter", filter) return c @@ -78096,7 +79098,7 @@ func (c *NetworkEndpointGroupsAggregatedListCall) Do(opts ...googleapi.CallOptio // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -79044,32 +80046,28 @@ func (r *NetworkEndpointGroupsService) List(project string, zone string) *Networ return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *NetworkEndpointGroupsListCall) Filter(filter string) *NetworkEndpointGroupsListCall { c.urlParams_.Set("filter", filter) return c @@ -79215,7 +80213,7 @@ func (c *NetworkEndpointGroupsListCall) Do(opts ...googleapi.CallOption) (*Netwo // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -79309,32 +80307,28 @@ func (r *NetworkEndpointGroupsService) ListNetworkEndpoints(project string, zone return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *NetworkEndpointGroupsListNetworkEndpointsCall) Filter(filter string) *NetworkEndpointGroupsListNetworkEndpointsCall { c.urlParams_.Set("filter", filter) return c @@ -79476,7 +80470,7 @@ func (c *NetworkEndpointGroupsListNetworkEndpointsCall) Do(opts ...googleapi.Cal // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -80379,32 +81373,28 @@ func (r *NetworksService) List(project string) *NetworksListCall { return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *NetworksListCall) Filter(filter string) *NetworksListCall { c.urlParams_.Set("filter", filter) return c @@ -80548,7 +81538,7 @@ func (c *NetworksListCall) Do(opts ...googleapi.CallOption) (*NetworkList, error // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -80632,32 +81622,28 @@ func (r *NetworksService) ListIpOwners(project string, network string) *Networks return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *NetworksListIpOwnersCall) Filter(filter string) *NetworksListIpOwnersCall { c.urlParams_.Set("filter", filter) return c @@ -80838,7 +81824,7 @@ func (c *NetworksListIpOwnersCall) Do(opts ...googleapi.CallOption) (*IpOwnerLis // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -81587,6 +82573,966 @@ func (c *NetworksTestIamPermissionsCall) Do(opts ...googleapi.CallOption) (*Test } +// method id "compute.nodeGroups.getIamPolicy": + +type NodeGroupsGetIamPolicyCall struct { + s *Service + project string + zone string + resource string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// GetIamPolicy: Gets the access control policy for a resource. May be +// empty if no such policy or resource exists. +func (r *NodeGroupsService) GetIamPolicy(project string, zone string, resource string) *NodeGroupsGetIamPolicyCall { + c := &NodeGroupsGetIamPolicyCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.project = project + c.zone = zone + c.resource = resource + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *NodeGroupsGetIamPolicyCall) Fields(s ...googleapi.Field) *NodeGroupsGetIamPolicyCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// IfNoneMatch sets the optional parameter which makes the operation +// fail if the object's ETag matches the given value. This is useful for +// getting updates only after the object has changed since the last +// request. Use googleapi.IsNotModified to check whether the response +// error from Do is the result of In-None-Match. +func (c *NodeGroupsGetIamPolicyCall) IfNoneMatch(entityTag string) *NodeGroupsGetIamPolicyCall { + c.ifNoneMatch_ = entityTag + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *NodeGroupsGetIamPolicyCall) Context(ctx context.Context) *NodeGroupsGetIamPolicyCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *NodeGroupsGetIamPolicyCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *NodeGroupsGetIamPolicyCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + if c.ifNoneMatch_ != "" { + reqHeaders.Set("If-None-Match", c.ifNoneMatch_) + } + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "{project}/zones/{zone}/nodeGroups/{resource}/getIamPolicy") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("GET", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "project": c.project, + "zone": c.zone, + "resource": c.resource, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "compute.nodeGroups.getIamPolicy" call. +// Exactly one of *Policy or error will be non-nil. Any non-2xx status +// code is an error. Response headers are in either +// *Policy.ServerResponse.Header or (if a response was returned at all) +// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to +// check whether the returned error was because http.StatusNotModified +// was returned. +func (c *NodeGroupsGetIamPolicyCall) Do(opts ...googleapi.CallOption) (*Policy, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &Policy{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Gets the access control policy for a resource. May be empty if no such policy or resource exists.", + // "httpMethod": "GET", + // "id": "compute.nodeGroups.getIamPolicy", + // "parameterOrder": [ + // "project", + // "zone", + // "resource" + // ], + // "parameters": { + // "project": { + // "description": "Project ID for this request.", + // "location": "path", + // "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + // "required": true, + // "type": "string" + // }, + // "resource": { + // "description": "Name of the resource for this request.", + // "location": "path", + // "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + // "required": true, + // "type": "string" + // }, + // "zone": { + // "description": "The name of the zone for this request.", + // "location": "path", + // "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + // "required": true, + // "type": "string" + // } + // }, + // "path": "{project}/zones/{zone}/nodeGroups/{resource}/getIamPolicy", + // "response": { + // "$ref": "Policy" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform", + // "https://www.googleapis.com/auth/compute", + // "https://www.googleapis.com/auth/compute.readonly" + // ] + // } + +} + +// method id "compute.nodeGroups.setIamPolicy": + +type NodeGroupsSetIamPolicyCall struct { + s *Service + project string + zone string + resource string + policy *Policy + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// SetIamPolicy: Sets the access control policy on the specified +// resource. Replaces any existing policy. +func (r *NodeGroupsService) SetIamPolicy(project string, zone string, resource string, policy *Policy) *NodeGroupsSetIamPolicyCall { + c := &NodeGroupsSetIamPolicyCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.project = project + c.zone = zone + c.resource = resource + c.policy = policy + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *NodeGroupsSetIamPolicyCall) Fields(s ...googleapi.Field) *NodeGroupsSetIamPolicyCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *NodeGroupsSetIamPolicyCall) Context(ctx context.Context) *NodeGroupsSetIamPolicyCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *NodeGroupsSetIamPolicyCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *NodeGroupsSetIamPolicyCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.policy) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "{project}/zones/{zone}/nodeGroups/{resource}/setIamPolicy") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("POST", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "project": c.project, + "zone": c.zone, + "resource": c.resource, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "compute.nodeGroups.setIamPolicy" call. +// Exactly one of *Policy or error will be non-nil. Any non-2xx status +// code is an error. Response headers are in either +// *Policy.ServerResponse.Header or (if a response was returned at all) +// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to +// check whether the returned error was because http.StatusNotModified +// was returned. +func (c *NodeGroupsSetIamPolicyCall) Do(opts ...googleapi.CallOption) (*Policy, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &Policy{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Sets the access control policy on the specified resource. Replaces any existing policy.", + // "httpMethod": "POST", + // "id": "compute.nodeGroups.setIamPolicy", + // "parameterOrder": [ + // "project", + // "zone", + // "resource" + // ], + // "parameters": { + // "project": { + // "description": "Project ID for this request.", + // "location": "path", + // "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + // "required": true, + // "type": "string" + // }, + // "resource": { + // "description": "Name of the resource for this request.", + // "location": "path", + // "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + // "required": true, + // "type": "string" + // }, + // "zone": { + // "description": "The name of the zone for this request.", + // "location": "path", + // "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + // "required": true, + // "type": "string" + // } + // }, + // "path": "{project}/zones/{zone}/nodeGroups/{resource}/setIamPolicy", + // "request": { + // "$ref": "Policy" + // }, + // "response": { + // "$ref": "Policy" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform", + // "https://www.googleapis.com/auth/compute" + // ] + // } + +} + +// method id "compute.nodeGroups.testIamPermissions": + +type NodeGroupsTestIamPermissionsCall struct { + s *Service + project string + zone string + resource string + testpermissionsrequest *TestPermissionsRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// TestIamPermissions: Returns permissions that a caller has on the +// specified resource. +func (r *NodeGroupsService) TestIamPermissions(project string, zone string, resource string, testpermissionsrequest *TestPermissionsRequest) *NodeGroupsTestIamPermissionsCall { + c := &NodeGroupsTestIamPermissionsCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.project = project + c.zone = zone + c.resource = resource + c.testpermissionsrequest = testpermissionsrequest + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *NodeGroupsTestIamPermissionsCall) Fields(s ...googleapi.Field) *NodeGroupsTestIamPermissionsCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *NodeGroupsTestIamPermissionsCall) Context(ctx context.Context) *NodeGroupsTestIamPermissionsCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *NodeGroupsTestIamPermissionsCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *NodeGroupsTestIamPermissionsCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.testpermissionsrequest) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "{project}/zones/{zone}/nodeGroups/{resource}/testIamPermissions") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("POST", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "project": c.project, + "zone": c.zone, + "resource": c.resource, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "compute.nodeGroups.testIamPermissions" call. +// Exactly one of *TestPermissionsResponse or error will be non-nil. Any +// non-2xx status code is an error. Response headers are in either +// *TestPermissionsResponse.ServerResponse.Header or (if a response was +// returned at all) in error.(*googleapi.Error).Header. Use +// googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *NodeGroupsTestIamPermissionsCall) Do(opts ...googleapi.CallOption) (*TestPermissionsResponse, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &TestPermissionsResponse{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Returns permissions that a caller has on the specified resource.", + // "httpMethod": "POST", + // "id": "compute.nodeGroups.testIamPermissions", + // "parameterOrder": [ + // "project", + // "zone", + // "resource" + // ], + // "parameters": { + // "project": { + // "description": "Project ID for this request.", + // "location": "path", + // "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + // "required": true, + // "type": "string" + // }, + // "resource": { + // "description": "Name of the resource for this request.", + // "location": "path", + // "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + // "required": true, + // "type": "string" + // }, + // "zone": { + // "description": "The name of the zone for this request.", + // "location": "path", + // "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + // "required": true, + // "type": "string" + // } + // }, + // "path": "{project}/zones/{zone}/nodeGroups/{resource}/testIamPermissions", + // "request": { + // "$ref": "TestPermissionsRequest" + // }, + // "response": { + // "$ref": "TestPermissionsResponse" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform", + // "https://www.googleapis.com/auth/compute", + // "https://www.googleapis.com/auth/compute.readonly" + // ] + // } + +} + +// method id "compute.nodeTemplates.getIamPolicy": + +type NodeTemplatesGetIamPolicyCall struct { + s *Service + project string + region string + resource string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// GetIamPolicy: Gets the access control policy for a resource. May be +// empty if no such policy or resource exists. +func (r *NodeTemplatesService) GetIamPolicy(project string, region string, resource string) *NodeTemplatesGetIamPolicyCall { + c := &NodeTemplatesGetIamPolicyCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.project = project + c.region = region + c.resource = resource + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *NodeTemplatesGetIamPolicyCall) Fields(s ...googleapi.Field) *NodeTemplatesGetIamPolicyCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// IfNoneMatch sets the optional parameter which makes the operation +// fail if the object's ETag matches the given value. This is useful for +// getting updates only after the object has changed since the last +// request. Use googleapi.IsNotModified to check whether the response +// error from Do is the result of In-None-Match. +func (c *NodeTemplatesGetIamPolicyCall) IfNoneMatch(entityTag string) *NodeTemplatesGetIamPolicyCall { + c.ifNoneMatch_ = entityTag + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *NodeTemplatesGetIamPolicyCall) Context(ctx context.Context) *NodeTemplatesGetIamPolicyCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *NodeTemplatesGetIamPolicyCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *NodeTemplatesGetIamPolicyCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + if c.ifNoneMatch_ != "" { + reqHeaders.Set("If-None-Match", c.ifNoneMatch_) + } + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "{project}/regions/{region}/nodeTemplates/{resource}/getIamPolicy") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("GET", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "project": c.project, + "region": c.region, + "resource": c.resource, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "compute.nodeTemplates.getIamPolicy" call. +// Exactly one of *Policy or error will be non-nil. Any non-2xx status +// code is an error. Response headers are in either +// *Policy.ServerResponse.Header or (if a response was returned at all) +// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to +// check whether the returned error was because http.StatusNotModified +// was returned. +func (c *NodeTemplatesGetIamPolicyCall) Do(opts ...googleapi.CallOption) (*Policy, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &Policy{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Gets the access control policy for a resource. May be empty if no such policy or resource exists.", + // "httpMethod": "GET", + // "id": "compute.nodeTemplates.getIamPolicy", + // "parameterOrder": [ + // "project", + // "region", + // "resource" + // ], + // "parameters": { + // "project": { + // "description": "Project ID for this request.", + // "location": "path", + // "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + // "required": true, + // "type": "string" + // }, + // "region": { + // "description": "The name of the region for this request.", + // "location": "path", + // "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + // "required": true, + // "type": "string" + // }, + // "resource": { + // "description": "Name of the resource for this request.", + // "location": "path", + // "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + // "required": true, + // "type": "string" + // } + // }, + // "path": "{project}/regions/{region}/nodeTemplates/{resource}/getIamPolicy", + // "response": { + // "$ref": "Policy" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform", + // "https://www.googleapis.com/auth/compute", + // "https://www.googleapis.com/auth/compute.readonly" + // ] + // } + +} + +// method id "compute.nodeTemplates.setIamPolicy": + +type NodeTemplatesSetIamPolicyCall struct { + s *Service + project string + region string + resource string + policy *Policy + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// SetIamPolicy: Sets the access control policy on the specified +// resource. Replaces any existing policy. +func (r *NodeTemplatesService) SetIamPolicy(project string, region string, resource string, policy *Policy) *NodeTemplatesSetIamPolicyCall { + c := &NodeTemplatesSetIamPolicyCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.project = project + c.region = region + c.resource = resource + c.policy = policy + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *NodeTemplatesSetIamPolicyCall) Fields(s ...googleapi.Field) *NodeTemplatesSetIamPolicyCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *NodeTemplatesSetIamPolicyCall) Context(ctx context.Context) *NodeTemplatesSetIamPolicyCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *NodeTemplatesSetIamPolicyCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *NodeTemplatesSetIamPolicyCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.policy) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "{project}/regions/{region}/nodeTemplates/{resource}/setIamPolicy") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("POST", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "project": c.project, + "region": c.region, + "resource": c.resource, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "compute.nodeTemplates.setIamPolicy" call. +// Exactly one of *Policy or error will be non-nil. Any non-2xx status +// code is an error. Response headers are in either +// *Policy.ServerResponse.Header or (if a response was returned at all) +// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to +// check whether the returned error was because http.StatusNotModified +// was returned. +func (c *NodeTemplatesSetIamPolicyCall) Do(opts ...googleapi.CallOption) (*Policy, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &Policy{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Sets the access control policy on the specified resource. Replaces any existing policy.", + // "httpMethod": "POST", + // "id": "compute.nodeTemplates.setIamPolicy", + // "parameterOrder": [ + // "project", + // "region", + // "resource" + // ], + // "parameters": { + // "project": { + // "description": "Project ID for this request.", + // "location": "path", + // "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + // "required": true, + // "type": "string" + // }, + // "region": { + // "description": "The name of the region for this request.", + // "location": "path", + // "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + // "required": true, + // "type": "string" + // }, + // "resource": { + // "description": "Name of the resource for this request.", + // "location": "path", + // "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + // "required": true, + // "type": "string" + // } + // }, + // "path": "{project}/regions/{region}/nodeTemplates/{resource}/setIamPolicy", + // "request": { + // "$ref": "Policy" + // }, + // "response": { + // "$ref": "Policy" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform", + // "https://www.googleapis.com/auth/compute" + // ] + // } + +} + +// method id "compute.nodeTemplates.testIamPermissions": + +type NodeTemplatesTestIamPermissionsCall struct { + s *Service + project string + region string + resource string + testpermissionsrequest *TestPermissionsRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// TestIamPermissions: Returns permissions that a caller has on the +// specified resource. +func (r *NodeTemplatesService) TestIamPermissions(project string, region string, resource string, testpermissionsrequest *TestPermissionsRequest) *NodeTemplatesTestIamPermissionsCall { + c := &NodeTemplatesTestIamPermissionsCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.project = project + c.region = region + c.resource = resource + c.testpermissionsrequest = testpermissionsrequest + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *NodeTemplatesTestIamPermissionsCall) Fields(s ...googleapi.Field) *NodeTemplatesTestIamPermissionsCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *NodeTemplatesTestIamPermissionsCall) Context(ctx context.Context) *NodeTemplatesTestIamPermissionsCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *NodeTemplatesTestIamPermissionsCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *NodeTemplatesTestIamPermissionsCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.testpermissionsrequest) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "{project}/regions/{region}/nodeTemplates/{resource}/testIamPermissions") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("POST", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "project": c.project, + "region": c.region, + "resource": c.resource, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "compute.nodeTemplates.testIamPermissions" call. +// Exactly one of *TestPermissionsResponse or error will be non-nil. Any +// non-2xx status code is an error. Response headers are in either +// *TestPermissionsResponse.ServerResponse.Header or (if a response was +// returned at all) in error.(*googleapi.Error).Header. Use +// googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *NodeTemplatesTestIamPermissionsCall) Do(opts ...googleapi.CallOption) (*TestPermissionsResponse, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &TestPermissionsResponse{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Returns permissions that a caller has on the specified resource.", + // "httpMethod": "POST", + // "id": "compute.nodeTemplates.testIamPermissions", + // "parameterOrder": [ + // "project", + // "region", + // "resource" + // ], + // "parameters": { + // "project": { + // "description": "Project ID for this request.", + // "location": "path", + // "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + // "required": true, + // "type": "string" + // }, + // "region": { + // "description": "The name of the region for this request.", + // "location": "path", + // "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + // "required": true, + // "type": "string" + // }, + // "resource": { + // "description": "Name of the resource for this request.", + // "location": "path", + // "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + // "required": true, + // "type": "string" + // } + // }, + // "path": "{project}/regions/{region}/nodeTemplates/{resource}/testIamPermissions", + // "request": { + // "$ref": "TestPermissionsRequest" + // }, + // "response": { + // "$ref": "TestPermissionsResponse" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform", + // "https://www.googleapis.com/auth/compute", + // "https://www.googleapis.com/auth/compute.readonly" + // ] + // } + +} + // method id "compute.projects.disableXpnHost": type ProjectsDisableXpnHostCall struct { @@ -84385,32 +86331,28 @@ func (r *RegionAutoscalersService) List(project string, region string) *RegionAu return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *RegionAutoscalersListCall) Filter(filter string) *RegionAutoscalersListCall { c.urlParams_.Set("filter", filter) return c @@ -84556,7 +86498,7 @@ func (c *RegionAutoscalersListCall) Do(opts ...googleapi.CallOption) (*RegionAut // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -85610,7 +87552,7 @@ func (c *RegionBackendServicesGetHealthCall) Do(opts ...googleapi.CallOption) (* // ], // "parameters": { // "backendService": { - // "description": "Name of the BackendService resource to which the queried instance belongs.", + // "description": "Name of the BackendService resource for which to get health.", // "location": "path", // "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", // "required": true, @@ -85841,32 +87783,28 @@ func (r *RegionBackendServicesService) List(project string, region string) *Regi return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *RegionBackendServicesListCall) Filter(filter string) *RegionBackendServicesListCall { c.urlParams_.Set("filter", filter) return c @@ -86012,7 +87950,7 @@ func (c *RegionBackendServicesListCall) Do(opts ...googleapi.CallOption) (*Backe // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -86630,32 +88568,28 @@ func (r *RegionCommitmentsService) AggregatedList(project string) *RegionCommitm return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *RegionCommitmentsAggregatedListCall) Filter(filter string) *RegionCommitmentsAggregatedListCall { c.urlParams_.Set("filter", filter) return c @@ -86799,7 +88733,7 @@ func (c *RegionCommitmentsAggregatedListCall) Do(opts ...googleapi.CallOption) ( // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -87218,32 +89152,28 @@ func (r *RegionCommitmentsService) List(project string, region string) *RegionCo return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *RegionCommitmentsListCall) Filter(filter string) *RegionCommitmentsListCall { c.urlParams_.Set("filter", filter) return c @@ -87389,7 +89319,7 @@ func (c *RegionCommitmentsListCall) Do(opts ...googleapi.CallOption) (*Commitmen // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -87803,32 +89733,28 @@ func (r *RegionDiskTypesService) List(project string, region string) *RegionDisk return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *RegionDiskTypesListCall) Filter(filter string) *RegionDiskTypesListCall { c.urlParams_.Set("filter", filter) return c @@ -87974,7 +89900,7 @@ func (c *RegionDiskTypesListCall) Do(opts ...googleapi.CallOption) (*RegionDiskT // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -88775,32 +90701,28 @@ func (r *RegionDisksService) List(project string, region string) *RegionDisksLis return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *RegionDisksListCall) Filter(filter string) *RegionDisksListCall { c.urlParams_.Set("filter", filter) return c @@ -88946,7 +90868,7 @@ func (c *RegionDisksListCall) Do(opts ...googleapi.CallOption) (*DiskList, error // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -89538,6 +91460,1294 @@ func (c *RegionDisksTestIamPermissionsCall) Do(opts ...googleapi.CallOption) (*T } +// method id "compute.regionHealthChecks.delete": + +type RegionHealthChecksDeleteCall struct { + s *Service + project string + region string + healthCheck string + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Delete: Deletes the specified HealthCheck resource. +func (r *RegionHealthChecksService) Delete(project string, region string, healthCheck string) *RegionHealthChecksDeleteCall { + c := &RegionHealthChecksDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.project = project + c.region = region + c.healthCheck = healthCheck + return c +} + +// RequestId sets the optional parameter "requestId": An optional +// request ID to identify requests. Specify a unique request ID so that +// if you must retry your request, the server will know to ignore the +// request if it has already been completed. +// +// For example, consider a situation where you make an initial request +// and the request times out. If you make the request again with the +// same request ID, the server can check if original operation with the +// same request ID was received, and if so, will ignore the second +// request. This prevents clients from accidentally creating duplicate +// commitments. +// +// The request ID must be a valid UUID with the exception that zero UUID +// is not supported (00000000-0000-0000-0000-000000000000). +func (c *RegionHealthChecksDeleteCall) RequestId(requestId string) *RegionHealthChecksDeleteCall { + c.urlParams_.Set("requestId", requestId) + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *RegionHealthChecksDeleteCall) Fields(s ...googleapi.Field) *RegionHealthChecksDeleteCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *RegionHealthChecksDeleteCall) Context(ctx context.Context) *RegionHealthChecksDeleteCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *RegionHealthChecksDeleteCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *RegionHealthChecksDeleteCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "{project}/regions/{region}/healthChecks/{healthCheck}") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("DELETE", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "project": c.project, + "region": c.region, + "healthCheck": c.healthCheck, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "compute.regionHealthChecks.delete" call. +// Exactly one of *Operation or error will be non-nil. Any non-2xx +// status code is an error. Response headers are in either +// *Operation.ServerResponse.Header or (if a response was returned at +// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified +// to check whether the returned error was because +// http.StatusNotModified was returned. +func (c *RegionHealthChecksDeleteCall) Do(opts ...googleapi.CallOption) (*Operation, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &Operation{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Deletes the specified HealthCheck resource.", + // "httpMethod": "DELETE", + // "id": "compute.regionHealthChecks.delete", + // "parameterOrder": [ + // "project", + // "region", + // "healthCheck" + // ], + // "parameters": { + // "healthCheck": { + // "description": "Name of the HealthCheck resource to delete.", + // "location": "path", + // "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + // "required": true, + // "type": "string" + // }, + // "project": { + // "description": "Project ID for this request.", + // "location": "path", + // "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + // "required": true, + // "type": "string" + // }, + // "region": { + // "description": "Name of the region scoping this request.", + // "location": "path", + // "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + // "required": true, + // "type": "string" + // }, + // "requestId": { + // "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + // "location": "query", + // "type": "string" + // } + // }, + // "path": "{project}/regions/{region}/healthChecks/{healthCheck}", + // "response": { + // "$ref": "Operation" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform", + // "https://www.googleapis.com/auth/compute" + // ] + // } + +} + +// method id "compute.regionHealthChecks.get": + +type RegionHealthChecksGetCall struct { + s *Service + project string + region string + healthCheck string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// Get: Returns the specified HealthCheck resource. Get a list of +// available health checks by making a list() request. +func (r *RegionHealthChecksService) Get(project string, region string, healthCheck string) *RegionHealthChecksGetCall { + c := &RegionHealthChecksGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.project = project + c.region = region + c.healthCheck = healthCheck + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *RegionHealthChecksGetCall) Fields(s ...googleapi.Field) *RegionHealthChecksGetCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// IfNoneMatch sets the optional parameter which makes the operation +// fail if the object's ETag matches the given value. This is useful for +// getting updates only after the object has changed since the last +// request. Use googleapi.IsNotModified to check whether the response +// error from Do is the result of In-None-Match. +func (c *RegionHealthChecksGetCall) IfNoneMatch(entityTag string) *RegionHealthChecksGetCall { + c.ifNoneMatch_ = entityTag + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *RegionHealthChecksGetCall) Context(ctx context.Context) *RegionHealthChecksGetCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *RegionHealthChecksGetCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *RegionHealthChecksGetCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + if c.ifNoneMatch_ != "" { + reqHeaders.Set("If-None-Match", c.ifNoneMatch_) + } + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "{project}/regions/{region}/healthChecks/{healthCheck}") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("GET", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "project": c.project, + "region": c.region, + "healthCheck": c.healthCheck, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "compute.regionHealthChecks.get" call. +// Exactly one of *HealthCheck or error will be non-nil. Any non-2xx +// status code is an error. Response headers are in either +// *HealthCheck.ServerResponse.Header or (if a response was returned at +// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified +// to check whether the returned error was because +// http.StatusNotModified was returned. +func (c *RegionHealthChecksGetCall) Do(opts ...googleapi.CallOption) (*HealthCheck, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &HealthCheck{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Returns the specified HealthCheck resource. Get a list of available health checks by making a list() request.", + // "httpMethod": "GET", + // "id": "compute.regionHealthChecks.get", + // "parameterOrder": [ + // "project", + // "region", + // "healthCheck" + // ], + // "parameters": { + // "healthCheck": { + // "description": "Name of the HealthCheck resource to return.", + // "location": "path", + // "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + // "required": true, + // "type": "string" + // }, + // "project": { + // "description": "Project ID for this request.", + // "location": "path", + // "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + // "required": true, + // "type": "string" + // }, + // "region": { + // "description": "Name of the region scoping this request.", + // "location": "path", + // "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + // "required": true, + // "type": "string" + // } + // }, + // "path": "{project}/regions/{region}/healthChecks/{healthCheck}", + // "response": { + // "$ref": "HealthCheck" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform", + // "https://www.googleapis.com/auth/compute", + // "https://www.googleapis.com/auth/compute.readonly" + // ] + // } + +} + +// method id "compute.regionHealthChecks.insert": + +type RegionHealthChecksInsertCall struct { + s *Service + project string + region string + healthcheck *HealthCheck + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Insert: Creates a HealthCheck resource in the specified project using +// the data included in the request. +func (r *RegionHealthChecksService) Insert(project string, region string, healthcheck *HealthCheck) *RegionHealthChecksInsertCall { + c := &RegionHealthChecksInsertCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.project = project + c.region = region + c.healthcheck = healthcheck + return c +} + +// RequestId sets the optional parameter "requestId": An optional +// request ID to identify requests. Specify a unique request ID so that +// if you must retry your request, the server will know to ignore the +// request if it has already been completed. +// +// For example, consider a situation where you make an initial request +// and the request times out. If you make the request again with the +// same request ID, the server can check if original operation with the +// same request ID was received, and if so, will ignore the second +// request. This prevents clients from accidentally creating duplicate +// commitments. +// +// The request ID must be a valid UUID with the exception that zero UUID +// is not supported (00000000-0000-0000-0000-000000000000). +func (c *RegionHealthChecksInsertCall) RequestId(requestId string) *RegionHealthChecksInsertCall { + c.urlParams_.Set("requestId", requestId) + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *RegionHealthChecksInsertCall) Fields(s ...googleapi.Field) *RegionHealthChecksInsertCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *RegionHealthChecksInsertCall) Context(ctx context.Context) *RegionHealthChecksInsertCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *RegionHealthChecksInsertCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *RegionHealthChecksInsertCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.healthcheck) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "{project}/regions/{region}/healthChecks") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("POST", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "project": c.project, + "region": c.region, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "compute.regionHealthChecks.insert" call. +// Exactly one of *Operation or error will be non-nil. Any non-2xx +// status code is an error. Response headers are in either +// *Operation.ServerResponse.Header or (if a response was returned at +// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified +// to check whether the returned error was because +// http.StatusNotModified was returned. +func (c *RegionHealthChecksInsertCall) Do(opts ...googleapi.CallOption) (*Operation, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &Operation{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Creates a HealthCheck resource in the specified project using the data included in the request.", + // "httpMethod": "POST", + // "id": "compute.regionHealthChecks.insert", + // "parameterOrder": [ + // "project", + // "region" + // ], + // "parameters": { + // "project": { + // "description": "Project ID for this request.", + // "location": "path", + // "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + // "required": true, + // "type": "string" + // }, + // "region": { + // "description": "Name of the region scoping this request.", + // "location": "path", + // "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + // "required": true, + // "type": "string" + // }, + // "requestId": { + // "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + // "location": "query", + // "type": "string" + // } + // }, + // "path": "{project}/regions/{region}/healthChecks", + // "request": { + // "$ref": "HealthCheck" + // }, + // "response": { + // "$ref": "Operation" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform", + // "https://www.googleapis.com/auth/compute" + // ] + // } + +} + +// method id "compute.regionHealthChecks.list": + +type RegionHealthChecksListCall struct { + s *Service + project string + region string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// List: Retrieves the list of HealthCheck resources available to the +// specified project. +func (r *RegionHealthChecksService) List(project string, region string) *RegionHealthChecksListCall { + c := &RegionHealthChecksListCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.project = project + c.region = region + return c +} + +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. +// +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. +// +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. +// +// To filter on multiple expressions, provide each separate expression +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). +func (c *RegionHealthChecksListCall) Filter(filter string) *RegionHealthChecksListCall { + c.urlParams_.Set("filter", filter) + return c +} + +// MaxResults sets the optional parameter "maxResults": The maximum +// number of results per page that should be returned. If the number of +// available results is larger than maxResults, Compute Engine returns a +// nextPageToken that can be used to get the next page of results in +// subsequent list requests. Acceptable values are 0 to 500, inclusive. +// (Default: 500) +func (c *RegionHealthChecksListCall) MaxResults(maxResults int64) *RegionHealthChecksListCall { + c.urlParams_.Set("maxResults", fmt.Sprint(maxResults)) + return c +} + +// OrderBy sets the optional parameter "orderBy": Sorts list results by +// a certain order. By default, results are returned in alphanumerical +// order based on the resource name. +// +// You can also sort results in descending order based on the creation +// timestamp using orderBy="creationTimestamp desc". This sorts results +// based on the creationTimestamp field in reverse chronological order +// (newest result first). Use this to sort resources like operations so +// that the newest operation is returned first. +// +// Currently, only sorting by name or creationTimestamp desc is +// supported. +func (c *RegionHealthChecksListCall) OrderBy(orderBy string) *RegionHealthChecksListCall { + c.urlParams_.Set("orderBy", orderBy) + return c +} + +// PageToken sets the optional parameter "pageToken": Specifies a page +// token to use. Set pageToken to the nextPageToken returned by a +// previous list request to get the next page of results. +func (c *RegionHealthChecksListCall) PageToken(pageToken string) *RegionHealthChecksListCall { + c.urlParams_.Set("pageToken", pageToken) + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *RegionHealthChecksListCall) Fields(s ...googleapi.Field) *RegionHealthChecksListCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// IfNoneMatch sets the optional parameter which makes the operation +// fail if the object's ETag matches the given value. This is useful for +// getting updates only after the object has changed since the last +// request. Use googleapi.IsNotModified to check whether the response +// error from Do is the result of In-None-Match. +func (c *RegionHealthChecksListCall) IfNoneMatch(entityTag string) *RegionHealthChecksListCall { + c.ifNoneMatch_ = entityTag + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *RegionHealthChecksListCall) Context(ctx context.Context) *RegionHealthChecksListCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *RegionHealthChecksListCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *RegionHealthChecksListCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + if c.ifNoneMatch_ != "" { + reqHeaders.Set("If-None-Match", c.ifNoneMatch_) + } + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "{project}/regions/{region}/healthChecks") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("GET", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "project": c.project, + "region": c.region, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "compute.regionHealthChecks.list" call. +// Exactly one of *HealthCheckList or error will be non-nil. Any non-2xx +// status code is an error. Response headers are in either +// *HealthCheckList.ServerResponse.Header or (if a response was returned +// at all) in error.(*googleapi.Error).Header. Use +// googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *RegionHealthChecksListCall) Do(opts ...googleapi.CallOption) (*HealthCheckList, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &HealthCheckList{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Retrieves the list of HealthCheck resources available to the specified project.", + // "httpMethod": "GET", + // "id": "compute.regionHealthChecks.list", + // "parameterOrder": [ + // "project", + // "region" + // ], + // "parameters": { + // "filter": { + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + // "location": "query", + // "type": "string" + // }, + // "maxResults": { + // "default": "500", + // "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + // "format": "uint32", + // "location": "query", + // "minimum": "0", + // "type": "integer" + // }, + // "orderBy": { + // "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + // "location": "query", + // "type": "string" + // }, + // "pageToken": { + // "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + // "location": "query", + // "type": "string" + // }, + // "project": { + // "description": "Project ID for this request.", + // "location": "path", + // "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + // "required": true, + // "type": "string" + // }, + // "region": { + // "description": "Name of the region scoping this request.", + // "location": "path", + // "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + // "required": true, + // "type": "string" + // } + // }, + // "path": "{project}/regions/{region}/healthChecks", + // "response": { + // "$ref": "HealthCheckList" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform", + // "https://www.googleapis.com/auth/compute", + // "https://www.googleapis.com/auth/compute.readonly" + // ] + // } + +} + +// Pages invokes f for each page of results. +// A non-nil error returned from f will halt the iteration. +// The provided context supersedes any context provided to the Context method. +func (c *RegionHealthChecksListCall) Pages(ctx context.Context, f func(*HealthCheckList) error) error { + c.ctx_ = ctx + defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point + for { + x, err := c.Do() + if err != nil { + return err + } + if err := f(x); err != nil { + return err + } + if x.NextPageToken == "" { + return nil + } + c.PageToken(x.NextPageToken) + } +} + +// method id "compute.regionHealthChecks.patch": + +type RegionHealthChecksPatchCall struct { + s *Service + project string + region string + healthCheck string + healthcheck *HealthCheck + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Patch: Updates a HealthCheck resource in the specified project using +// the data included in the request. This method supports PATCH +// semantics and uses the JSON merge patch format and processing rules. +func (r *RegionHealthChecksService) Patch(project string, region string, healthCheck string, healthcheck *HealthCheck) *RegionHealthChecksPatchCall { + c := &RegionHealthChecksPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.project = project + c.region = region + c.healthCheck = healthCheck + c.healthcheck = healthcheck + return c +} + +// RequestId sets the optional parameter "requestId": An optional +// request ID to identify requests. Specify a unique request ID so that +// if you must retry your request, the server will know to ignore the +// request if it has already been completed. +// +// For example, consider a situation where you make an initial request +// and the request times out. If you make the request again with the +// same request ID, the server can check if original operation with the +// same request ID was received, and if so, will ignore the second +// request. This prevents clients from accidentally creating duplicate +// commitments. +// +// The request ID must be a valid UUID with the exception that zero UUID +// is not supported (00000000-0000-0000-0000-000000000000). +func (c *RegionHealthChecksPatchCall) RequestId(requestId string) *RegionHealthChecksPatchCall { + c.urlParams_.Set("requestId", requestId) + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *RegionHealthChecksPatchCall) Fields(s ...googleapi.Field) *RegionHealthChecksPatchCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *RegionHealthChecksPatchCall) Context(ctx context.Context) *RegionHealthChecksPatchCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *RegionHealthChecksPatchCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *RegionHealthChecksPatchCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.healthcheck) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "{project}/regions/{region}/healthChecks/{healthCheck}") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("PATCH", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "project": c.project, + "region": c.region, + "healthCheck": c.healthCheck, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "compute.regionHealthChecks.patch" call. +// Exactly one of *Operation or error will be non-nil. Any non-2xx +// status code is an error. Response headers are in either +// *Operation.ServerResponse.Header or (if a response was returned at +// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified +// to check whether the returned error was because +// http.StatusNotModified was returned. +func (c *RegionHealthChecksPatchCall) Do(opts ...googleapi.CallOption) (*Operation, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &Operation{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Updates a HealthCheck resource in the specified project using the data included in the request. This method supports PATCH semantics and uses the JSON merge patch format and processing rules.", + // "httpMethod": "PATCH", + // "id": "compute.regionHealthChecks.patch", + // "parameterOrder": [ + // "project", + // "region", + // "healthCheck" + // ], + // "parameters": { + // "healthCheck": { + // "description": "Name of the HealthCheck resource to patch.", + // "location": "path", + // "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + // "required": true, + // "type": "string" + // }, + // "project": { + // "description": "Project ID for this request.", + // "location": "path", + // "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + // "required": true, + // "type": "string" + // }, + // "region": { + // "description": "Name of the region scoping this request.", + // "location": "path", + // "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + // "required": true, + // "type": "string" + // }, + // "requestId": { + // "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + // "location": "query", + // "type": "string" + // } + // }, + // "path": "{project}/regions/{region}/healthChecks/{healthCheck}", + // "request": { + // "$ref": "HealthCheck" + // }, + // "response": { + // "$ref": "Operation" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform", + // "https://www.googleapis.com/auth/compute" + // ] + // } + +} + +// method id "compute.regionHealthChecks.testIamPermissions": + +type RegionHealthChecksTestIamPermissionsCall struct { + s *Service + project string + region string + resource string + testpermissionsrequest *TestPermissionsRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// TestIamPermissions: Returns permissions that a caller has on the +// specified resource. +func (r *RegionHealthChecksService) TestIamPermissions(project string, region string, resource string, testpermissionsrequest *TestPermissionsRequest) *RegionHealthChecksTestIamPermissionsCall { + c := &RegionHealthChecksTestIamPermissionsCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.project = project + c.region = region + c.resource = resource + c.testpermissionsrequest = testpermissionsrequest + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *RegionHealthChecksTestIamPermissionsCall) Fields(s ...googleapi.Field) *RegionHealthChecksTestIamPermissionsCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *RegionHealthChecksTestIamPermissionsCall) Context(ctx context.Context) *RegionHealthChecksTestIamPermissionsCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *RegionHealthChecksTestIamPermissionsCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *RegionHealthChecksTestIamPermissionsCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.testpermissionsrequest) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "{project}/regions/{region}/healthChecks/{resource}/testIamPermissions") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("POST", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "project": c.project, + "region": c.region, + "resource": c.resource, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "compute.regionHealthChecks.testIamPermissions" call. +// Exactly one of *TestPermissionsResponse or error will be non-nil. Any +// non-2xx status code is an error. Response headers are in either +// *TestPermissionsResponse.ServerResponse.Header or (if a response was +// returned at all) in error.(*googleapi.Error).Header. Use +// googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *RegionHealthChecksTestIamPermissionsCall) Do(opts ...googleapi.CallOption) (*TestPermissionsResponse, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &TestPermissionsResponse{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Returns permissions that a caller has on the specified resource.", + // "httpMethod": "POST", + // "id": "compute.regionHealthChecks.testIamPermissions", + // "parameterOrder": [ + // "project", + // "region", + // "resource" + // ], + // "parameters": { + // "project": { + // "description": "Project ID for this request.", + // "location": "path", + // "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + // "required": true, + // "type": "string" + // }, + // "region": { + // "description": "The name of the region for this request.", + // "location": "path", + // "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + // "required": true, + // "type": "string" + // }, + // "resource": { + // "description": "Name of the resource for this request.", + // "location": "path", + // "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + // "required": true, + // "type": "string" + // } + // }, + // "path": "{project}/regions/{region}/healthChecks/{resource}/testIamPermissions", + // "request": { + // "$ref": "TestPermissionsRequest" + // }, + // "response": { + // "$ref": "TestPermissionsResponse" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform", + // "https://www.googleapis.com/auth/compute", + // "https://www.googleapis.com/auth/compute.readonly" + // ] + // } + +} + +// method id "compute.regionHealthChecks.update": + +type RegionHealthChecksUpdateCall struct { + s *Service + project string + region string + healthCheck string + healthcheck *HealthCheck + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Update: Updates a HealthCheck resource in the specified project using +// the data included in the request. +func (r *RegionHealthChecksService) Update(project string, region string, healthCheck string, healthcheck *HealthCheck) *RegionHealthChecksUpdateCall { + c := &RegionHealthChecksUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.project = project + c.region = region + c.healthCheck = healthCheck + c.healthcheck = healthcheck + return c +} + +// RequestId sets the optional parameter "requestId": An optional +// request ID to identify requests. Specify a unique request ID so that +// if you must retry your request, the server will know to ignore the +// request if it has already been completed. +// +// For example, consider a situation where you make an initial request +// and the request times out. If you make the request again with the +// same request ID, the server can check if original operation with the +// same request ID was received, and if so, will ignore the second +// request. This prevents clients from accidentally creating duplicate +// commitments. +// +// The request ID must be a valid UUID with the exception that zero UUID +// is not supported (00000000-0000-0000-0000-000000000000). +func (c *RegionHealthChecksUpdateCall) RequestId(requestId string) *RegionHealthChecksUpdateCall { + c.urlParams_.Set("requestId", requestId) + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *RegionHealthChecksUpdateCall) Fields(s ...googleapi.Field) *RegionHealthChecksUpdateCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *RegionHealthChecksUpdateCall) Context(ctx context.Context) *RegionHealthChecksUpdateCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *RegionHealthChecksUpdateCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *RegionHealthChecksUpdateCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.healthcheck) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "{project}/regions/{region}/healthChecks/{healthCheck}") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("PUT", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "project": c.project, + "region": c.region, + "healthCheck": c.healthCheck, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "compute.regionHealthChecks.update" call. +// Exactly one of *Operation or error will be non-nil. Any non-2xx +// status code is an error. Response headers are in either +// *Operation.ServerResponse.Header or (if a response was returned at +// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified +// to check whether the returned error was because +// http.StatusNotModified was returned. +func (c *RegionHealthChecksUpdateCall) Do(opts ...googleapi.CallOption) (*Operation, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &Operation{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Updates a HealthCheck resource in the specified project using the data included in the request.", + // "httpMethod": "PUT", + // "id": "compute.regionHealthChecks.update", + // "parameterOrder": [ + // "project", + // "region", + // "healthCheck" + // ], + // "parameters": { + // "healthCheck": { + // "description": "Name of the HealthCheck resource to update.", + // "location": "path", + // "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + // "required": true, + // "type": "string" + // }, + // "project": { + // "description": "Project ID for this request.", + // "location": "path", + // "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + // "required": true, + // "type": "string" + // }, + // "region": { + // "description": "Name of the region scoping this request.", + // "location": "path", + // "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + // "required": true, + // "type": "string" + // }, + // "requestId": { + // "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + // "location": "query", + // "type": "string" + // } + // }, + // "path": "{project}/regions/{region}/healthChecks/{healthCheck}", + // "request": { + // "$ref": "HealthCheck" + // }, + // "response": { + // "$ref": "Operation" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform", + // "https://www.googleapis.com/auth/compute" + // ] + // } + +} + // method id "compute.regionInstanceGroupManagers.abandonInstances": type RegionInstanceGroupManagersAbandonInstancesCall struct { @@ -90768,32 +93978,28 @@ func (r *RegionInstanceGroupManagersService) List(project string, region string) return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *RegionInstanceGroupManagersListCall) Filter(filter string) *RegionInstanceGroupManagersListCall { c.urlParams_.Set("filter", filter) return c @@ -90939,7 +94145,7 @@ func (c *RegionInstanceGroupManagersListCall) Do(opts ...googleapi.CallOption) ( // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -91246,32 +94452,28 @@ func (r *RegionInstanceGroupManagersService) ListPerInstanceConfigs(project stri return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *RegionInstanceGroupManagersListPerInstanceConfigsCall) Filter(filter string) *RegionInstanceGroupManagersListPerInstanceConfigsCall { c.urlParams_.Set("filter", filter) return c @@ -91408,7 +94610,7 @@ func (c *RegionInstanceGroupManagersListPerInstanceConfigsCall) Do(opts ...googl // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -93275,32 +96477,28 @@ func (r *RegionInstanceGroupsService) List(project string, region string) *Regio return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *RegionInstanceGroupsListCall) Filter(filter string) *RegionInstanceGroupsListCall { c.urlParams_.Set("filter", filter) return c @@ -93446,7 +96644,7 @@ func (c *RegionInstanceGroupsListCall) Do(opts ...googleapi.CallOption) (*Region // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -93542,32 +96740,28 @@ func (r *RegionInstanceGroupsService) ListInstances(project string, region strin return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *RegionInstanceGroupsListInstancesCall) Filter(filter string) *RegionInstanceGroupsListInstancesCall { c.urlParams_.Set("filter", filter) return c @@ -93708,7 +96902,7 @@ func (c *RegionInstanceGroupsListInstancesCall) Do(opts ...googleapi.CallOption) // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -94431,32 +97625,28 @@ func (r *RegionOperationsService) List(project string, region string) *RegionOpe return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *RegionOperationsListCall) Filter(filter string) *RegionOperationsListCall { c.urlParams_.Set("filter", filter) return c @@ -94602,7 +97792,7 @@ func (c *RegionOperationsListCall) Do(opts ...googleapi.CallOption) (*OperationL // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -94673,6 +97863,2472 @@ func (c *RegionOperationsListCall) Pages(ctx context.Context, f func(*OperationL } } +// method id "compute.regionTargetHttpProxies.delete": + +type RegionTargetHttpProxiesDeleteCall struct { + s *Service + project string + region string + targetHttpProxy string + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Delete: Deletes the specified TargetHttpProxy resource. +func (r *RegionTargetHttpProxiesService) Delete(project string, region string, targetHttpProxy string) *RegionTargetHttpProxiesDeleteCall { + c := &RegionTargetHttpProxiesDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.project = project + c.region = region + c.targetHttpProxy = targetHttpProxy + return c +} + +// RequestId sets the optional parameter "requestId": An optional +// request ID to identify requests. Specify a unique request ID so that +// if you must retry your request, the server will know to ignore the +// request if it has already been completed. +// +// For example, consider a situation where you make an initial request +// and the request times out. If you make the request again with the +// same request ID, the server can check if original operation with the +// same request ID was received, and if so, will ignore the second +// request. This prevents clients from accidentally creating duplicate +// commitments. +// +// The request ID must be a valid UUID with the exception that zero UUID +// is not supported (00000000-0000-0000-0000-000000000000). +func (c *RegionTargetHttpProxiesDeleteCall) RequestId(requestId string) *RegionTargetHttpProxiesDeleteCall { + c.urlParams_.Set("requestId", requestId) + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *RegionTargetHttpProxiesDeleteCall) Fields(s ...googleapi.Field) *RegionTargetHttpProxiesDeleteCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *RegionTargetHttpProxiesDeleteCall) Context(ctx context.Context) *RegionTargetHttpProxiesDeleteCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *RegionTargetHttpProxiesDeleteCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *RegionTargetHttpProxiesDeleteCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "{project}/regions/{region}/targetHttpProxies/{targetHttpProxy}") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("DELETE", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "project": c.project, + "region": c.region, + "targetHttpProxy": c.targetHttpProxy, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "compute.regionTargetHttpProxies.delete" call. +// Exactly one of *Operation or error will be non-nil. Any non-2xx +// status code is an error. Response headers are in either +// *Operation.ServerResponse.Header or (if a response was returned at +// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified +// to check whether the returned error was because +// http.StatusNotModified was returned. +func (c *RegionTargetHttpProxiesDeleteCall) Do(opts ...googleapi.CallOption) (*Operation, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &Operation{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Deletes the specified TargetHttpProxy resource.", + // "httpMethod": "DELETE", + // "id": "compute.regionTargetHttpProxies.delete", + // "parameterOrder": [ + // "project", + // "region", + // "targetHttpProxy" + // ], + // "parameters": { + // "project": { + // "description": "Project ID for this request.", + // "location": "path", + // "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + // "required": true, + // "type": "string" + // }, + // "region": { + // "description": "Name of the region scoping this request.", + // "location": "path", + // "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + // "required": true, + // "type": "string" + // }, + // "requestId": { + // "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + // "location": "query", + // "type": "string" + // }, + // "targetHttpProxy": { + // "description": "Name of the TargetHttpProxy resource to delete.", + // "location": "path", + // "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + // "required": true, + // "type": "string" + // } + // }, + // "path": "{project}/regions/{region}/targetHttpProxies/{targetHttpProxy}", + // "response": { + // "$ref": "Operation" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform", + // "https://www.googleapis.com/auth/compute" + // ] + // } + +} + +// method id "compute.regionTargetHttpProxies.get": + +type RegionTargetHttpProxiesGetCall struct { + s *Service + project string + region string + targetHttpProxy string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// Get: Returns the specified TargetHttpProxy resource in the specified +// region. Get a list of available target HTTP proxies by making a +// list() request. +func (r *RegionTargetHttpProxiesService) Get(project string, region string, targetHttpProxy string) *RegionTargetHttpProxiesGetCall { + c := &RegionTargetHttpProxiesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.project = project + c.region = region + c.targetHttpProxy = targetHttpProxy + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *RegionTargetHttpProxiesGetCall) Fields(s ...googleapi.Field) *RegionTargetHttpProxiesGetCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// IfNoneMatch sets the optional parameter which makes the operation +// fail if the object's ETag matches the given value. This is useful for +// getting updates only after the object has changed since the last +// request. Use googleapi.IsNotModified to check whether the response +// error from Do is the result of In-None-Match. +func (c *RegionTargetHttpProxiesGetCall) IfNoneMatch(entityTag string) *RegionTargetHttpProxiesGetCall { + c.ifNoneMatch_ = entityTag + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *RegionTargetHttpProxiesGetCall) Context(ctx context.Context) *RegionTargetHttpProxiesGetCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *RegionTargetHttpProxiesGetCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *RegionTargetHttpProxiesGetCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + if c.ifNoneMatch_ != "" { + reqHeaders.Set("If-None-Match", c.ifNoneMatch_) + } + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "{project}/regions/{region}/targetHttpProxies/{targetHttpProxy}") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("GET", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "project": c.project, + "region": c.region, + "targetHttpProxy": c.targetHttpProxy, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "compute.regionTargetHttpProxies.get" call. +// Exactly one of *TargetHttpProxy or error will be non-nil. Any non-2xx +// status code is an error. Response headers are in either +// *TargetHttpProxy.ServerResponse.Header or (if a response was returned +// at all) in error.(*googleapi.Error).Header. Use +// googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *RegionTargetHttpProxiesGetCall) Do(opts ...googleapi.CallOption) (*TargetHttpProxy, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &TargetHttpProxy{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Returns the specified TargetHttpProxy resource in the specified region. Get a list of available target HTTP proxies by making a list() request.", + // "httpMethod": "GET", + // "id": "compute.regionTargetHttpProxies.get", + // "parameterOrder": [ + // "project", + // "region", + // "targetHttpProxy" + // ], + // "parameters": { + // "project": { + // "description": "Project ID for this request.", + // "location": "path", + // "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + // "required": true, + // "type": "string" + // }, + // "region": { + // "description": "Name of the region scoping this request.", + // "location": "path", + // "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + // "required": true, + // "type": "string" + // }, + // "targetHttpProxy": { + // "description": "Name of the TargetHttpProxy resource to return.", + // "location": "path", + // "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + // "required": true, + // "type": "string" + // } + // }, + // "path": "{project}/regions/{region}/targetHttpProxies/{targetHttpProxy}", + // "response": { + // "$ref": "TargetHttpProxy" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform", + // "https://www.googleapis.com/auth/compute", + // "https://www.googleapis.com/auth/compute.readonly" + // ] + // } + +} + +// method id "compute.regionTargetHttpProxies.insert": + +type RegionTargetHttpProxiesInsertCall struct { + s *Service + project string + region string + targethttpproxy *TargetHttpProxy + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Insert: Creates a TargetHttpProxy resource in the specified project +// and region using the data included in the request. +func (r *RegionTargetHttpProxiesService) Insert(project string, region string, targethttpproxy *TargetHttpProxy) *RegionTargetHttpProxiesInsertCall { + c := &RegionTargetHttpProxiesInsertCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.project = project + c.region = region + c.targethttpproxy = targethttpproxy + return c +} + +// RequestId sets the optional parameter "requestId": An optional +// request ID to identify requests. Specify a unique request ID so that +// if you must retry your request, the server will know to ignore the +// request if it has already been completed. +// +// For example, consider a situation where you make an initial request +// and the request times out. If you make the request again with the +// same request ID, the server can check if original operation with the +// same request ID was received, and if so, will ignore the second +// request. This prevents clients from accidentally creating duplicate +// commitments. +// +// The request ID must be a valid UUID with the exception that zero UUID +// is not supported (00000000-0000-0000-0000-000000000000). +func (c *RegionTargetHttpProxiesInsertCall) RequestId(requestId string) *RegionTargetHttpProxiesInsertCall { + c.urlParams_.Set("requestId", requestId) + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *RegionTargetHttpProxiesInsertCall) Fields(s ...googleapi.Field) *RegionTargetHttpProxiesInsertCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *RegionTargetHttpProxiesInsertCall) Context(ctx context.Context) *RegionTargetHttpProxiesInsertCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *RegionTargetHttpProxiesInsertCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *RegionTargetHttpProxiesInsertCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.targethttpproxy) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "{project}/regions/{region}/targetHttpProxies") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("POST", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "project": c.project, + "region": c.region, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "compute.regionTargetHttpProxies.insert" call. +// Exactly one of *Operation or error will be non-nil. Any non-2xx +// status code is an error. Response headers are in either +// *Operation.ServerResponse.Header or (if a response was returned at +// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified +// to check whether the returned error was because +// http.StatusNotModified was returned. +func (c *RegionTargetHttpProxiesInsertCall) Do(opts ...googleapi.CallOption) (*Operation, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &Operation{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Creates a TargetHttpProxy resource in the specified project and region using the data included in the request.", + // "httpMethod": "POST", + // "id": "compute.regionTargetHttpProxies.insert", + // "parameterOrder": [ + // "project", + // "region" + // ], + // "parameters": { + // "project": { + // "description": "Project ID for this request.", + // "location": "path", + // "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + // "required": true, + // "type": "string" + // }, + // "region": { + // "description": "Name of the region scoping this request.", + // "location": "path", + // "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + // "required": true, + // "type": "string" + // }, + // "requestId": { + // "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + // "location": "query", + // "type": "string" + // } + // }, + // "path": "{project}/regions/{region}/targetHttpProxies", + // "request": { + // "$ref": "TargetHttpProxy" + // }, + // "response": { + // "$ref": "Operation" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform", + // "https://www.googleapis.com/auth/compute" + // ] + // } + +} + +// method id "compute.regionTargetHttpProxies.list": + +type RegionTargetHttpProxiesListCall struct { + s *Service + project string + region string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// List: Retrieves the list of TargetHttpProxy resources available to +// the specified project in the specified region. +func (r *RegionTargetHttpProxiesService) List(project string, region string) *RegionTargetHttpProxiesListCall { + c := &RegionTargetHttpProxiesListCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.project = project + c.region = region + return c +} + +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. +// +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. +// +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. +// +// To filter on multiple expressions, provide each separate expression +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). +func (c *RegionTargetHttpProxiesListCall) Filter(filter string) *RegionTargetHttpProxiesListCall { + c.urlParams_.Set("filter", filter) + return c +} + +// MaxResults sets the optional parameter "maxResults": The maximum +// number of results per page that should be returned. If the number of +// available results is larger than maxResults, Compute Engine returns a +// nextPageToken that can be used to get the next page of results in +// subsequent list requests. Acceptable values are 0 to 500, inclusive. +// (Default: 500) +func (c *RegionTargetHttpProxiesListCall) MaxResults(maxResults int64) *RegionTargetHttpProxiesListCall { + c.urlParams_.Set("maxResults", fmt.Sprint(maxResults)) + return c +} + +// OrderBy sets the optional parameter "orderBy": Sorts list results by +// a certain order. By default, results are returned in alphanumerical +// order based on the resource name. +// +// You can also sort results in descending order based on the creation +// timestamp using orderBy="creationTimestamp desc". This sorts results +// based on the creationTimestamp field in reverse chronological order +// (newest result first). Use this to sort resources like operations so +// that the newest operation is returned first. +// +// Currently, only sorting by name or creationTimestamp desc is +// supported. +func (c *RegionTargetHttpProxiesListCall) OrderBy(orderBy string) *RegionTargetHttpProxiesListCall { + c.urlParams_.Set("orderBy", orderBy) + return c +} + +// PageToken sets the optional parameter "pageToken": Specifies a page +// token to use. Set pageToken to the nextPageToken returned by a +// previous list request to get the next page of results. +func (c *RegionTargetHttpProxiesListCall) PageToken(pageToken string) *RegionTargetHttpProxiesListCall { + c.urlParams_.Set("pageToken", pageToken) + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *RegionTargetHttpProxiesListCall) Fields(s ...googleapi.Field) *RegionTargetHttpProxiesListCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// IfNoneMatch sets the optional parameter which makes the operation +// fail if the object's ETag matches the given value. This is useful for +// getting updates only after the object has changed since the last +// request. Use googleapi.IsNotModified to check whether the response +// error from Do is the result of In-None-Match. +func (c *RegionTargetHttpProxiesListCall) IfNoneMatch(entityTag string) *RegionTargetHttpProxiesListCall { + c.ifNoneMatch_ = entityTag + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *RegionTargetHttpProxiesListCall) Context(ctx context.Context) *RegionTargetHttpProxiesListCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *RegionTargetHttpProxiesListCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *RegionTargetHttpProxiesListCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + if c.ifNoneMatch_ != "" { + reqHeaders.Set("If-None-Match", c.ifNoneMatch_) + } + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "{project}/regions/{region}/targetHttpProxies") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("GET", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "project": c.project, + "region": c.region, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "compute.regionTargetHttpProxies.list" call. +// Exactly one of *TargetHttpProxyList or error will be non-nil. Any +// non-2xx status code is an error. Response headers are in either +// *TargetHttpProxyList.ServerResponse.Header or (if a response was +// returned at all) in error.(*googleapi.Error).Header. Use +// googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *RegionTargetHttpProxiesListCall) Do(opts ...googleapi.CallOption) (*TargetHttpProxyList, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &TargetHttpProxyList{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Retrieves the list of TargetHttpProxy resources available to the specified project in the specified region.", + // "httpMethod": "GET", + // "id": "compute.regionTargetHttpProxies.list", + // "parameterOrder": [ + // "project", + // "region" + // ], + // "parameters": { + // "filter": { + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + // "location": "query", + // "type": "string" + // }, + // "maxResults": { + // "default": "500", + // "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + // "format": "uint32", + // "location": "query", + // "minimum": "0", + // "type": "integer" + // }, + // "orderBy": { + // "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + // "location": "query", + // "type": "string" + // }, + // "pageToken": { + // "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + // "location": "query", + // "type": "string" + // }, + // "project": { + // "description": "Project ID for this request.", + // "location": "path", + // "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + // "required": true, + // "type": "string" + // }, + // "region": { + // "description": "Name of the region scoping this request.", + // "location": "path", + // "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + // "required": true, + // "type": "string" + // } + // }, + // "path": "{project}/regions/{region}/targetHttpProxies", + // "response": { + // "$ref": "TargetHttpProxyList" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform", + // "https://www.googleapis.com/auth/compute", + // "https://www.googleapis.com/auth/compute.readonly" + // ] + // } + +} + +// Pages invokes f for each page of results. +// A non-nil error returned from f will halt the iteration. +// The provided context supersedes any context provided to the Context method. +func (c *RegionTargetHttpProxiesListCall) Pages(ctx context.Context, f func(*TargetHttpProxyList) error) error { + c.ctx_ = ctx + defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point + for { + x, err := c.Do() + if err != nil { + return err + } + if err := f(x); err != nil { + return err + } + if x.NextPageToken == "" { + return nil + } + c.PageToken(x.NextPageToken) + } +} + +// method id "compute.regionTargetHttpProxies.setUrlMap": + +type RegionTargetHttpProxiesSetUrlMapCall struct { + s *Service + project string + region string + targetHttpProxy string + urlmapreference *UrlMapReference + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// SetUrlMap: Changes the URL map for TargetHttpProxy. +func (r *RegionTargetHttpProxiesService) SetUrlMap(project string, region string, targetHttpProxy string, urlmapreference *UrlMapReference) *RegionTargetHttpProxiesSetUrlMapCall { + c := &RegionTargetHttpProxiesSetUrlMapCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.project = project + c.region = region + c.targetHttpProxy = targetHttpProxy + c.urlmapreference = urlmapreference + return c +} + +// RequestId sets the optional parameter "requestId": An optional +// request ID to identify requests. Specify a unique request ID so that +// if you must retry your request, the server will know to ignore the +// request if it has already been completed. +// +// For example, consider a situation where you make an initial request +// and the request times out. If you make the request again with the +// same request ID, the server can check if original operation with the +// same request ID was received, and if so, will ignore the second +// request. This prevents clients from accidentally creating duplicate +// commitments. +// +// The request ID must be a valid UUID with the exception that zero UUID +// is not supported (00000000-0000-0000-0000-000000000000). +func (c *RegionTargetHttpProxiesSetUrlMapCall) RequestId(requestId string) *RegionTargetHttpProxiesSetUrlMapCall { + c.urlParams_.Set("requestId", requestId) + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *RegionTargetHttpProxiesSetUrlMapCall) Fields(s ...googleapi.Field) *RegionTargetHttpProxiesSetUrlMapCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *RegionTargetHttpProxiesSetUrlMapCall) Context(ctx context.Context) *RegionTargetHttpProxiesSetUrlMapCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *RegionTargetHttpProxiesSetUrlMapCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *RegionTargetHttpProxiesSetUrlMapCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.urlmapreference) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "{project}/regions/{region}/targetHttpProxies/{targetHttpProxy}/setUrlMap") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("POST", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "project": c.project, + "region": c.region, + "targetHttpProxy": c.targetHttpProxy, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "compute.regionTargetHttpProxies.setUrlMap" call. +// Exactly one of *Operation or error will be non-nil. Any non-2xx +// status code is an error. Response headers are in either +// *Operation.ServerResponse.Header or (if a response was returned at +// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified +// to check whether the returned error was because +// http.StatusNotModified was returned. +func (c *RegionTargetHttpProxiesSetUrlMapCall) Do(opts ...googleapi.CallOption) (*Operation, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &Operation{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Changes the URL map for TargetHttpProxy.", + // "httpMethod": "POST", + // "id": "compute.regionTargetHttpProxies.setUrlMap", + // "parameterOrder": [ + // "project", + // "region", + // "targetHttpProxy" + // ], + // "parameters": { + // "project": { + // "description": "Project ID for this request.", + // "location": "path", + // "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + // "required": true, + // "type": "string" + // }, + // "region": { + // "description": "Name of the region scoping this request.", + // "location": "path", + // "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + // "required": true, + // "type": "string" + // }, + // "requestId": { + // "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + // "location": "query", + // "type": "string" + // }, + // "targetHttpProxy": { + // "description": "Name of the TargetHttpProxy to set a URL map for.", + // "location": "path", + // "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + // "required": true, + // "type": "string" + // } + // }, + // "path": "{project}/regions/{region}/targetHttpProxies/{targetHttpProxy}/setUrlMap", + // "request": { + // "$ref": "UrlMapReference" + // }, + // "response": { + // "$ref": "Operation" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform", + // "https://www.googleapis.com/auth/compute" + // ] + // } + +} + +// method id "compute.regionTargetHttpProxies.testIamPermissions": + +type RegionTargetHttpProxiesTestIamPermissionsCall struct { + s *Service + project string + region string + resource string + testpermissionsrequest *TestPermissionsRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// TestIamPermissions: Returns permissions that a caller has on the +// specified resource. +func (r *RegionTargetHttpProxiesService) TestIamPermissions(project string, region string, resource string, testpermissionsrequest *TestPermissionsRequest) *RegionTargetHttpProxiesTestIamPermissionsCall { + c := &RegionTargetHttpProxiesTestIamPermissionsCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.project = project + c.region = region + c.resource = resource + c.testpermissionsrequest = testpermissionsrequest + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *RegionTargetHttpProxiesTestIamPermissionsCall) Fields(s ...googleapi.Field) *RegionTargetHttpProxiesTestIamPermissionsCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *RegionTargetHttpProxiesTestIamPermissionsCall) Context(ctx context.Context) *RegionTargetHttpProxiesTestIamPermissionsCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *RegionTargetHttpProxiesTestIamPermissionsCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *RegionTargetHttpProxiesTestIamPermissionsCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.testpermissionsrequest) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "{project}/regions/{region}/targetHttpProxies/{resource}/testIamPermissions") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("POST", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "project": c.project, + "region": c.region, + "resource": c.resource, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "compute.regionTargetHttpProxies.testIamPermissions" call. +// Exactly one of *TestPermissionsResponse or error will be non-nil. Any +// non-2xx status code is an error. Response headers are in either +// *TestPermissionsResponse.ServerResponse.Header or (if a response was +// returned at all) in error.(*googleapi.Error).Header. Use +// googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *RegionTargetHttpProxiesTestIamPermissionsCall) Do(opts ...googleapi.CallOption) (*TestPermissionsResponse, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &TestPermissionsResponse{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Returns permissions that a caller has on the specified resource.", + // "httpMethod": "POST", + // "id": "compute.regionTargetHttpProxies.testIamPermissions", + // "parameterOrder": [ + // "project", + // "region", + // "resource" + // ], + // "parameters": { + // "project": { + // "description": "Project ID for this request.", + // "location": "path", + // "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + // "required": true, + // "type": "string" + // }, + // "region": { + // "description": "The name of the region for this request.", + // "location": "path", + // "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + // "required": true, + // "type": "string" + // }, + // "resource": { + // "description": "Name of the resource for this request.", + // "location": "path", + // "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + // "required": true, + // "type": "string" + // } + // }, + // "path": "{project}/regions/{region}/targetHttpProxies/{resource}/testIamPermissions", + // "request": { + // "$ref": "TestPermissionsRequest" + // }, + // "response": { + // "$ref": "TestPermissionsResponse" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform", + // "https://www.googleapis.com/auth/compute", + // "https://www.googleapis.com/auth/compute.readonly" + // ] + // } + +} + +// method id "compute.regionUrlMaps.delete": + +type RegionUrlMapsDeleteCall struct { + s *Service + project string + region string + urlMap string + regionurlmapsdeleterequest *RegionUrlMapsDeleteRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Delete: Deletes the specified UrlMap resource. +func (r *RegionUrlMapsService) Delete(project string, region string, urlMap string, regionurlmapsdeleterequest *RegionUrlMapsDeleteRequest) *RegionUrlMapsDeleteCall { + c := &RegionUrlMapsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.project = project + c.region = region + c.urlMap = urlMap + c.regionurlmapsdeleterequest = regionurlmapsdeleterequest + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *RegionUrlMapsDeleteCall) Fields(s ...googleapi.Field) *RegionUrlMapsDeleteCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *RegionUrlMapsDeleteCall) Context(ctx context.Context) *RegionUrlMapsDeleteCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *RegionUrlMapsDeleteCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *RegionUrlMapsDeleteCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.regionurlmapsdeleterequest) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "{project}/regions/{region}/urlMaps/{urlMap}") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("DELETE", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "project": c.project, + "region": c.region, + "urlMap": c.urlMap, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "compute.regionUrlMaps.delete" call. +// Exactly one of *Operation or error will be non-nil. Any non-2xx +// status code is an error. Response headers are in either +// *Operation.ServerResponse.Header or (if a response was returned at +// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified +// to check whether the returned error was because +// http.StatusNotModified was returned. +func (c *RegionUrlMapsDeleteCall) Do(opts ...googleapi.CallOption) (*Operation, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &Operation{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Deletes the specified UrlMap resource.", + // "httpMethod": "DELETE", + // "id": "compute.regionUrlMaps.delete", + // "parameterOrder": [ + // "project", + // "region", + // "urlMap" + // ], + // "parameters": { + // "project": { + // "description": "Project ID for this request.", + // "location": "path", + // "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + // "required": true, + // "type": "string" + // }, + // "region": { + // "description": "Name of the region scoping this request.", + // "location": "path", + // "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + // "required": true, + // "type": "string" + // }, + // "urlMap": { + // "description": "Name of the UrlMap resource to delete.", + // "location": "path", + // "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + // "required": true, + // "type": "string" + // } + // }, + // "path": "{project}/regions/{region}/urlMaps/{urlMap}", + // "request": { + // "$ref": "RegionUrlMapsDeleteRequest" + // }, + // "response": { + // "$ref": "Operation" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform", + // "https://www.googleapis.com/auth/compute" + // ] + // } + +} + +// method id "compute.regionUrlMaps.get": + +type RegionUrlMapsGetCall struct { + s *Service + project string + region string + urlMap string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// Get: Returns the specified UrlMap resource. Get a list of available +// URL maps by making a list() request. +func (r *RegionUrlMapsService) Get(project string, region string, urlMap string) *RegionUrlMapsGetCall { + c := &RegionUrlMapsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.project = project + c.region = region + c.urlMap = urlMap + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *RegionUrlMapsGetCall) Fields(s ...googleapi.Field) *RegionUrlMapsGetCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// IfNoneMatch sets the optional parameter which makes the operation +// fail if the object's ETag matches the given value. This is useful for +// getting updates only after the object has changed since the last +// request. Use googleapi.IsNotModified to check whether the response +// error from Do is the result of In-None-Match. +func (c *RegionUrlMapsGetCall) IfNoneMatch(entityTag string) *RegionUrlMapsGetCall { + c.ifNoneMatch_ = entityTag + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *RegionUrlMapsGetCall) Context(ctx context.Context) *RegionUrlMapsGetCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *RegionUrlMapsGetCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *RegionUrlMapsGetCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + if c.ifNoneMatch_ != "" { + reqHeaders.Set("If-None-Match", c.ifNoneMatch_) + } + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "{project}/regions/{region}/urlMaps/{urlMap}") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("GET", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "project": c.project, + "region": c.region, + "urlMap": c.urlMap, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "compute.regionUrlMaps.get" call. +// Exactly one of *UrlMap or error will be non-nil. Any non-2xx status +// code is an error. Response headers are in either +// *UrlMap.ServerResponse.Header or (if a response was returned at all) +// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to +// check whether the returned error was because http.StatusNotModified +// was returned. +func (c *RegionUrlMapsGetCall) Do(opts ...googleapi.CallOption) (*UrlMap, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &UrlMap{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Returns the specified UrlMap resource. Get a list of available URL maps by making a list() request.", + // "httpMethod": "GET", + // "id": "compute.regionUrlMaps.get", + // "parameterOrder": [ + // "project", + // "region", + // "urlMap" + // ], + // "parameters": { + // "project": { + // "description": "Project ID for this request.", + // "location": "path", + // "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + // "required": true, + // "type": "string" + // }, + // "region": { + // "description": "Name of the region scoping this request.", + // "location": "path", + // "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + // "required": true, + // "type": "string" + // }, + // "urlMap": { + // "description": "Name of the UrlMap resource to return.", + // "location": "path", + // "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + // "required": true, + // "type": "string" + // } + // }, + // "path": "{project}/regions/{region}/urlMaps/{urlMap}", + // "response": { + // "$ref": "UrlMap" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform", + // "https://www.googleapis.com/auth/compute", + // "https://www.googleapis.com/auth/compute.readonly" + // ] + // } + +} + +// method id "compute.regionUrlMaps.insert": + +type RegionUrlMapsInsertCall struct { + s *Service + project string + region string + urlmap *UrlMap + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Insert: Creates a UrlMap resource in the specified project using the +// data included in the request. +func (r *RegionUrlMapsService) Insert(project string, region string, urlmap *UrlMap) *RegionUrlMapsInsertCall { + c := &RegionUrlMapsInsertCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.project = project + c.region = region + c.urlmap = urlmap + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *RegionUrlMapsInsertCall) Fields(s ...googleapi.Field) *RegionUrlMapsInsertCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *RegionUrlMapsInsertCall) Context(ctx context.Context) *RegionUrlMapsInsertCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *RegionUrlMapsInsertCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *RegionUrlMapsInsertCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.urlmap) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "{project}/regions/{region}/urlMaps") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("POST", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "project": c.project, + "region": c.region, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "compute.regionUrlMaps.insert" call. +// Exactly one of *Operation or error will be non-nil. Any non-2xx +// status code is an error. Response headers are in either +// *Operation.ServerResponse.Header or (if a response was returned at +// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified +// to check whether the returned error was because +// http.StatusNotModified was returned. +func (c *RegionUrlMapsInsertCall) Do(opts ...googleapi.CallOption) (*Operation, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &Operation{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Creates a UrlMap resource in the specified project using the data included in the request.", + // "httpMethod": "POST", + // "id": "compute.regionUrlMaps.insert", + // "parameterOrder": [ + // "project", + // "region" + // ], + // "parameters": { + // "project": { + // "description": "Project ID for this request.", + // "location": "path", + // "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + // "required": true, + // "type": "string" + // }, + // "region": { + // "description": "Name of the region scoping this request.", + // "location": "path", + // "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + // "required": true, + // "type": "string" + // } + // }, + // "path": "{project}/regions/{region}/urlMaps", + // "request": { + // "$ref": "UrlMap" + // }, + // "response": { + // "$ref": "Operation" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform", + // "https://www.googleapis.com/auth/compute" + // ] + // } + +} + +// method id "compute.regionUrlMaps.list": + +type RegionUrlMapsListCall struct { + s *Service + project string + region string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// List: Retrieves the list of UrlMap resources available to the +// specified project in the specified region. +func (r *RegionUrlMapsService) List(project string, region string) *RegionUrlMapsListCall { + c := &RegionUrlMapsListCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.project = project + c.region = region + return c +} + +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. +// +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. +// +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. +// +// To filter on multiple expressions, provide each separate expression +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). +func (c *RegionUrlMapsListCall) Filter(filter string) *RegionUrlMapsListCall { + c.urlParams_.Set("filter", filter) + return c +} + +// MaxResults sets the optional parameter "maxResults": The maximum +// number of results per page that should be returned. If the number of +// available results is larger than maxResults, Compute Engine returns a +// nextPageToken that can be used to get the next page of results in +// subsequent list requests. Acceptable values are 0 to 500, inclusive. +// (Default: 500) +func (c *RegionUrlMapsListCall) MaxResults(maxResults int64) *RegionUrlMapsListCall { + c.urlParams_.Set("maxResults", fmt.Sprint(maxResults)) + return c +} + +// OrderBy sets the optional parameter "orderBy": Sorts list results by +// a certain order. By default, results are returned in alphanumerical +// order based on the resource name. +// +// You can also sort results in descending order based on the creation +// timestamp using orderBy="creationTimestamp desc". This sorts results +// based on the creationTimestamp field in reverse chronological order +// (newest result first). Use this to sort resources like operations so +// that the newest operation is returned first. +// +// Currently, only sorting by name or creationTimestamp desc is +// supported. +func (c *RegionUrlMapsListCall) OrderBy(orderBy string) *RegionUrlMapsListCall { + c.urlParams_.Set("orderBy", orderBy) + return c +} + +// PageToken sets the optional parameter "pageToken": Specifies a page +// token to use. Set pageToken to the nextPageToken returned by a +// previous list request to get the next page of results. +func (c *RegionUrlMapsListCall) PageToken(pageToken string) *RegionUrlMapsListCall { + c.urlParams_.Set("pageToken", pageToken) + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *RegionUrlMapsListCall) Fields(s ...googleapi.Field) *RegionUrlMapsListCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// IfNoneMatch sets the optional parameter which makes the operation +// fail if the object's ETag matches the given value. This is useful for +// getting updates only after the object has changed since the last +// request. Use googleapi.IsNotModified to check whether the response +// error from Do is the result of In-None-Match. +func (c *RegionUrlMapsListCall) IfNoneMatch(entityTag string) *RegionUrlMapsListCall { + c.ifNoneMatch_ = entityTag + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *RegionUrlMapsListCall) Context(ctx context.Context) *RegionUrlMapsListCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *RegionUrlMapsListCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *RegionUrlMapsListCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + if c.ifNoneMatch_ != "" { + reqHeaders.Set("If-None-Match", c.ifNoneMatch_) + } + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "{project}/regions/{region}/urlMaps") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("GET", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "project": c.project, + "region": c.region, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "compute.regionUrlMaps.list" call. +// Exactly one of *UrlMapList or error will be non-nil. Any non-2xx +// status code is an error. Response headers are in either +// *UrlMapList.ServerResponse.Header or (if a response was returned at +// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified +// to check whether the returned error was because +// http.StatusNotModified was returned. +func (c *RegionUrlMapsListCall) Do(opts ...googleapi.CallOption) (*UrlMapList, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &UrlMapList{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Retrieves the list of UrlMap resources available to the specified project in the specified region.", + // "httpMethod": "GET", + // "id": "compute.regionUrlMaps.list", + // "parameterOrder": [ + // "project", + // "region" + // ], + // "parameters": { + // "filter": { + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + // "location": "query", + // "type": "string" + // }, + // "maxResults": { + // "default": "500", + // "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + // "format": "uint32", + // "location": "query", + // "minimum": "0", + // "type": "integer" + // }, + // "orderBy": { + // "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + // "location": "query", + // "type": "string" + // }, + // "pageToken": { + // "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + // "location": "query", + // "type": "string" + // }, + // "project": { + // "description": "Project ID for this request.", + // "location": "path", + // "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + // "required": true, + // "type": "string" + // }, + // "region": { + // "description": "Name of the region scoping this request.", + // "location": "path", + // "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + // "required": true, + // "type": "string" + // } + // }, + // "path": "{project}/regions/{region}/urlMaps", + // "response": { + // "$ref": "UrlMapList" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform", + // "https://www.googleapis.com/auth/compute", + // "https://www.googleapis.com/auth/compute.readonly" + // ] + // } + +} + +// Pages invokes f for each page of results. +// A non-nil error returned from f will halt the iteration. +// The provided context supersedes any context provided to the Context method. +func (c *RegionUrlMapsListCall) Pages(ctx context.Context, f func(*UrlMapList) error) error { + c.ctx_ = ctx + defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point + for { + x, err := c.Do() + if err != nil { + return err + } + if err := f(x); err != nil { + return err + } + if x.NextPageToken == "" { + return nil + } + c.PageToken(x.NextPageToken) + } +} + +// method id "compute.regionUrlMaps.patch": + +type RegionUrlMapsPatchCall struct { + s *Service + project string + region string + urlMap string + urlmap *UrlMap + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Patch: Patches the specified UrlMap resource with the data included +// in the request. This method supports PATCH semantics and uses JSON +// merge patch format and processing rules. +func (r *RegionUrlMapsService) Patch(project string, region string, urlMap string, urlmap *UrlMap) *RegionUrlMapsPatchCall { + c := &RegionUrlMapsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.project = project + c.region = region + c.urlMap = urlMap + c.urlmap = urlmap + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *RegionUrlMapsPatchCall) Fields(s ...googleapi.Field) *RegionUrlMapsPatchCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *RegionUrlMapsPatchCall) Context(ctx context.Context) *RegionUrlMapsPatchCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *RegionUrlMapsPatchCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *RegionUrlMapsPatchCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.urlmap) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "{project}/regions/{region}/urlMaps/{urlMap}") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("PATCH", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "project": c.project, + "region": c.region, + "urlMap": c.urlMap, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "compute.regionUrlMaps.patch" call. +// Exactly one of *Operation or error will be non-nil. Any non-2xx +// status code is an error. Response headers are in either +// *Operation.ServerResponse.Header or (if a response was returned at +// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified +// to check whether the returned error was because +// http.StatusNotModified was returned. +func (c *RegionUrlMapsPatchCall) Do(opts ...googleapi.CallOption) (*Operation, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &Operation{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Patches the specified UrlMap resource with the data included in the request. This method supports PATCH semantics and uses JSON merge patch format and processing rules.", + // "httpMethod": "PATCH", + // "id": "compute.regionUrlMaps.patch", + // "parameterOrder": [ + // "project", + // "region", + // "urlMap" + // ], + // "parameters": { + // "project": { + // "description": "Project ID for this request.", + // "location": "path", + // "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + // "required": true, + // "type": "string" + // }, + // "region": { + // "description": "Name of the region scoping this request.", + // "location": "path", + // "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + // "required": true, + // "type": "string" + // }, + // "urlMap": { + // "description": "Name of the UrlMap resource to patch.", + // "location": "path", + // "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + // "required": true, + // "type": "string" + // } + // }, + // "path": "{project}/regions/{region}/urlMaps/{urlMap}", + // "request": { + // "$ref": "UrlMap" + // }, + // "response": { + // "$ref": "Operation" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform", + // "https://www.googleapis.com/auth/compute" + // ] + // } + +} + +// method id "compute.regionUrlMaps.testIamPermissions": + +type RegionUrlMapsTestIamPermissionsCall struct { + s *Service + project string + region string + resource string + testpermissionsrequest *TestPermissionsRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// TestIamPermissions: Returns permissions that a caller has on the +// specified resource. +func (r *RegionUrlMapsService) TestIamPermissions(project string, region string, resource string, testpermissionsrequest *TestPermissionsRequest) *RegionUrlMapsTestIamPermissionsCall { + c := &RegionUrlMapsTestIamPermissionsCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.project = project + c.region = region + c.resource = resource + c.testpermissionsrequest = testpermissionsrequest + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *RegionUrlMapsTestIamPermissionsCall) Fields(s ...googleapi.Field) *RegionUrlMapsTestIamPermissionsCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *RegionUrlMapsTestIamPermissionsCall) Context(ctx context.Context) *RegionUrlMapsTestIamPermissionsCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *RegionUrlMapsTestIamPermissionsCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *RegionUrlMapsTestIamPermissionsCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.testpermissionsrequest) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "{project}/regions/{region}/urlMaps/{resource}/testIamPermissions") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("POST", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "project": c.project, + "region": c.region, + "resource": c.resource, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "compute.regionUrlMaps.testIamPermissions" call. +// Exactly one of *TestPermissionsResponse or error will be non-nil. Any +// non-2xx status code is an error. Response headers are in either +// *TestPermissionsResponse.ServerResponse.Header or (if a response was +// returned at all) in error.(*googleapi.Error).Header. Use +// googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *RegionUrlMapsTestIamPermissionsCall) Do(opts ...googleapi.CallOption) (*TestPermissionsResponse, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &TestPermissionsResponse{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Returns permissions that a caller has on the specified resource.", + // "httpMethod": "POST", + // "id": "compute.regionUrlMaps.testIamPermissions", + // "parameterOrder": [ + // "project", + // "region", + // "resource" + // ], + // "parameters": { + // "project": { + // "description": "Project ID for this request.", + // "location": "path", + // "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + // "required": true, + // "type": "string" + // }, + // "region": { + // "description": "The name of the region for this request.", + // "location": "path", + // "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + // "required": true, + // "type": "string" + // }, + // "resource": { + // "description": "Name of the resource for this request.", + // "location": "path", + // "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + // "required": true, + // "type": "string" + // } + // }, + // "path": "{project}/regions/{region}/urlMaps/{resource}/testIamPermissions", + // "request": { + // "$ref": "TestPermissionsRequest" + // }, + // "response": { + // "$ref": "TestPermissionsResponse" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform", + // "https://www.googleapis.com/auth/compute", + // "https://www.googleapis.com/auth/compute.readonly" + // ] + // } + +} + +// method id "compute.regionUrlMaps.update": + +type RegionUrlMapsUpdateCall struct { + s *Service + project string + region string + urlMap string + urlmap *UrlMap + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Update: Updates the specified UrlMap resource with the data included +// in the request. +func (r *RegionUrlMapsService) Update(project string, region string, urlMap string, urlmap *UrlMap) *RegionUrlMapsUpdateCall { + c := &RegionUrlMapsUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.project = project + c.region = region + c.urlMap = urlMap + c.urlmap = urlmap + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *RegionUrlMapsUpdateCall) Fields(s ...googleapi.Field) *RegionUrlMapsUpdateCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *RegionUrlMapsUpdateCall) Context(ctx context.Context) *RegionUrlMapsUpdateCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *RegionUrlMapsUpdateCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *RegionUrlMapsUpdateCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.urlmap) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "{project}/regions/{region}/urlMaps/{urlMap}") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("PUT", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "project": c.project, + "region": c.region, + "urlMap": c.urlMap, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "compute.regionUrlMaps.update" call. +// Exactly one of *Operation or error will be non-nil. Any non-2xx +// status code is an error. Response headers are in either +// *Operation.ServerResponse.Header or (if a response was returned at +// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified +// to check whether the returned error was because +// http.StatusNotModified was returned. +func (c *RegionUrlMapsUpdateCall) Do(opts ...googleapi.CallOption) (*Operation, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &Operation{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Updates the specified UrlMap resource with the data included in the request.", + // "httpMethod": "PUT", + // "id": "compute.regionUrlMaps.update", + // "parameterOrder": [ + // "project", + // "region", + // "urlMap" + // ], + // "parameters": { + // "project": { + // "description": "Project ID for this request.", + // "location": "path", + // "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + // "required": true, + // "type": "string" + // }, + // "region": { + // "description": "Name of the region scoping this request.", + // "location": "path", + // "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + // "required": true, + // "type": "string" + // }, + // "urlMap": { + // "description": "Name of the UrlMap resource to update.", + // "location": "path", + // "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + // "required": true, + // "type": "string" + // } + // }, + // "path": "{project}/regions/{region}/urlMaps/{urlMap}", + // "request": { + // "$ref": "UrlMap" + // }, + // "response": { + // "$ref": "Operation" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform", + // "https://www.googleapis.com/auth/compute" + // ] + // } + +} + +// method id "compute.regionUrlMaps.validate": + +type RegionUrlMapsValidateCall struct { + s *Service + project string + region string + urlMap string + regionurlmapsvalidaterequest *RegionUrlMapsValidateRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Validate: Runs static validation for the UrlMap. In particular, the +// tests of the provided UrlMap will be run. Calling this method does +// NOT create the UrlMap. +func (r *RegionUrlMapsService) Validate(project string, region string, urlMap string, regionurlmapsvalidaterequest *RegionUrlMapsValidateRequest) *RegionUrlMapsValidateCall { + c := &RegionUrlMapsValidateCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.project = project + c.region = region + c.urlMap = urlMap + c.regionurlmapsvalidaterequest = regionurlmapsvalidaterequest + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *RegionUrlMapsValidateCall) Fields(s ...googleapi.Field) *RegionUrlMapsValidateCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *RegionUrlMapsValidateCall) Context(ctx context.Context) *RegionUrlMapsValidateCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *RegionUrlMapsValidateCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *RegionUrlMapsValidateCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.regionurlmapsvalidaterequest) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "{project}/regions/{region}/urlMaps/{urlMap}/validate") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("POST", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "project": c.project, + "region": c.region, + "urlMap": c.urlMap, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "compute.regionUrlMaps.validate" call. +// Exactly one of *UrlMapsValidateResponse or error will be non-nil. Any +// non-2xx status code is an error. Response headers are in either +// *UrlMapsValidateResponse.ServerResponse.Header or (if a response was +// returned at all) in error.(*googleapi.Error).Header. Use +// googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *RegionUrlMapsValidateCall) Do(opts ...googleapi.CallOption) (*UrlMapsValidateResponse, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &UrlMapsValidateResponse{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Runs static validation for the UrlMap. In particular, the tests of the provided UrlMap will be run. Calling this method does NOT create the UrlMap.", + // "httpMethod": "POST", + // "id": "compute.regionUrlMaps.validate", + // "parameterOrder": [ + // "project", + // "region", + // "urlMap" + // ], + // "parameters": { + // "project": { + // "description": "Project ID for this request.", + // "location": "path", + // "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + // "required": true, + // "type": "string" + // }, + // "region": { + // "description": "Name of the region scoping this request.", + // "location": "path", + // "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + // "required": true, + // "type": "string" + // }, + // "urlMap": { + // "description": "Name of the UrlMap resource to be validated as.", + // "location": "path", + // "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + // "required": true, + // "type": "string" + // } + // }, + // "path": "{project}/regions/{region}/urlMaps/{urlMap}/validate", + // "request": { + // "$ref": "RegionUrlMapsValidateRequest" + // }, + // "response": { + // "$ref": "UrlMapsValidateResponse" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform", + // "https://www.googleapis.com/auth/compute" + // ] + // } + +} + // method id "compute.regions.get": type RegionsGetCall struct { @@ -94846,32 +100502,28 @@ func (r *RegionsService) List(project string) *RegionsListCall { return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *RegionsListCall) Filter(filter string) *RegionsListCall { c.urlParams_.Set("filter", filter) return c @@ -95015,7 +100667,7 @@ func (c *RegionsListCall) Do(opts ...googleapi.CallOption) (*RegionList, error) // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -95097,32 +100749,28 @@ func (r *RoutersService) AggregatedList(project string) *RoutersAggregatedListCa return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *RoutersAggregatedListCall) Filter(filter string) *RoutersAggregatedListCall { c.urlParams_.Set("filter", filter) return c @@ -95266,7 +100914,7 @@ func (c *RoutersAggregatedListCall) Do(opts ...googleapi.CallOption) (*RouterAgg // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -96019,32 +101667,28 @@ func (r *RoutersService) List(project string, region string) *RoutersListCall { return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *RoutersListCall) Filter(filter string) *RoutersListCall { c.urlParams_.Set("filter", filter) return c @@ -96190,7 +101834,7 @@ func (c *RoutersListCall) Do(opts ...googleapi.CallOption) (*RouterList, error) // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -97440,32 +103084,28 @@ func (r *RoutesService) List(project string) *RoutesListCall { return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *RoutesListCall) Filter(filter string) *RoutesListCall { c.urlParams_.Set("filter", filter) return c @@ -97609,7 +103249,7 @@ func (c *RoutesListCall) Do(opts ...googleapi.CallOption) (*RouteList, error) { // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -97842,6 +103482,13 @@ func (r *SecurityPoliciesService) AddRule(project string, securityPolicy string, return c } +// ValidateOnly sets the optional parameter "validateOnly": If true, the +// request will not be committed. +func (c *SecurityPoliciesAddRuleCall) ValidateOnly(validateOnly bool) *SecurityPoliciesAddRuleCall { + c.urlParams_.Set("validateOnly", fmt.Sprint(validateOnly)) + return c +} + // Fields allows partial responses to be retrieved. See // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse // for more information. @@ -97950,6 +103597,11 @@ func (c *SecurityPoliciesAddRuleCall) Do(opts ...googleapi.CallOption) (*Operati // "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", // "required": true, // "type": "string" + // }, + // "validateOnly": { + // "description": "If true, the request will not be committed.", + // "location": "query", + // "type": "boolean" // } // }, // "path": "{project}/global/securityPolicies/{securityPolicy}/addRule", @@ -98482,6 +104134,13 @@ func (c *SecurityPoliciesInsertCall) RequestId(requestId string) *SecurityPolici return c } +// ValidateOnly sets the optional parameter "validateOnly": If true, the +// request will not be committed. +func (c *SecurityPoliciesInsertCall) ValidateOnly(validateOnly bool) *SecurityPoliciesInsertCall { + c.urlParams_.Set("validateOnly", fmt.Sprint(validateOnly)) + return c +} + // Fields allows partial responses to be retrieved. See // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse // for more information. @@ -98586,6 +104245,11 @@ func (c *SecurityPoliciesInsertCall) Do(opts ...googleapi.CallOption) (*Operatio // "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", // "location": "query", // "type": "string" + // }, + // "validateOnly": { + // "description": "If true, the request will not be committed.", + // "location": "query", + // "type": "boolean" // } // }, // "path": "{project}/global/securityPolicies", @@ -98622,32 +104286,28 @@ func (r *SecurityPoliciesService) List(project string) *SecurityPoliciesListCall return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *SecurityPoliciesListCall) Filter(filter string) *SecurityPoliciesListCall { c.urlParams_.Set("filter", filter) return c @@ -98791,7 +104451,7 @@ func (c *SecurityPoliciesListCall) Do(opts ...googleapi.CallOption) (*SecurityPo // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -99054,6 +104714,13 @@ func (c *SecurityPoliciesPatchRuleCall) Priority(priority int64) *SecurityPolici return c } +// ValidateOnly sets the optional parameter "validateOnly": If true, the +// request will not be committed. +func (c *SecurityPoliciesPatchRuleCall) ValidateOnly(validateOnly bool) *SecurityPoliciesPatchRuleCall { + c.urlParams_.Set("validateOnly", fmt.Sprint(validateOnly)) + return c +} + // Fields allows partial responses to be retrieved. See // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse // for more information. @@ -99168,6 +104835,11 @@ func (c *SecurityPoliciesPatchRuleCall) Do(opts ...googleapi.CallOption) (*Opera // "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", // "required": true, // "type": "string" + // }, + // "validateOnly": { + // "description": "If true, the request will not be committed.", + // "location": "query", + // "type": "boolean" // } // }, // "path": "{project}/global/securityPolicies/{securityPolicy}/patchRule", @@ -99974,32 +105646,28 @@ func (r *SnapshotsService) List(project string) *SnapshotsListCall { return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *SnapshotsListCall) Filter(filter string) *SnapshotsListCall { c.urlParams_.Set("filter", filter) return c @@ -100143,7 +105811,7 @@ func (c *SnapshotsListCall) Do(opts ...googleapi.CallOption) (*SnapshotList, err // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -101140,32 +106808,28 @@ func (r *SslCertificatesService) List(project string) *SslCertificatesListCall { return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *SslCertificatesListCall) Filter(filter string) *SslCertificatesListCall { c.urlParams_.Set("filter", filter) return c @@ -101309,7 +106973,7 @@ func (c *SslCertificatesListCall) Do(opts ...googleapi.CallOption) (*SslCertific // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -102012,32 +107676,28 @@ func (r *SslPoliciesService) List(project string) *SslPoliciesListCall { return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *SslPoliciesListCall) Filter(filter string) *SslPoliciesListCall { c.urlParams_.Set("filter", filter) return c @@ -102181,7 +107841,7 @@ func (c *SslPoliciesListCall) Do(opts ...googleapi.CallOption) (*SslPoliciesList // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -102264,32 +107924,28 @@ func (r *SslPoliciesService) ListAvailableFeatures(project string) *SslPoliciesL return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *SslPoliciesListAvailableFeaturesCall) Filter(filter string) *SslPoliciesListAvailableFeaturesCall { c.urlParams_.Set("filter", filter) return c @@ -102435,7 +108091,7 @@ func (c *SslPoliciesListAvailableFeaturesCall) Do(opts ...googleapi.CallOption) // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -102814,32 +108470,28 @@ func (r *SubnetworksService) AggregatedList(project string) *SubnetworksAggregat return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *SubnetworksAggregatedListCall) Filter(filter string) *SubnetworksAggregatedListCall { c.urlParams_.Set("filter", filter) return c @@ -102983,7 +108635,7 @@ func (c *SubnetworksAggregatedListCall) Do(opts ...googleapi.CallOption) (*Subne // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -103918,32 +109570,28 @@ func (r *SubnetworksService) List(project string, region string) *SubnetworksLis return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *SubnetworksListCall) Filter(filter string) *SubnetworksListCall { c.urlParams_.Set("filter", filter) return c @@ -104089,7 +109737,7 @@ func (c *SubnetworksListCall) Do(opts ...googleapi.CallOption) (*SubnetworkList, // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -104178,32 +109826,28 @@ func (r *SubnetworksService) ListUsable(project string) *SubnetworksListUsableCa return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *SubnetworksListUsableCall) Filter(filter string) *SubnetworksListUsableCall { c.urlParams_.Set("filter", filter) return c @@ -104347,7 +109991,7 @@ func (c *SubnetworksListUsableCall) Do(opts ...googleapi.CallOption) (*UsableSub // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -104426,9 +110070,10 @@ type SubnetworksPatchCall struct { // Patch: Patches the specified subnetwork with the data included in the // request. Only the following fields within the subnetwork resource can -// be specified in the request: secondary_ip_range and -// allow_subnet_cidr_routes_overlap. It is also mandatory to specify the -// current fingeprint of the subnetwork resource being patched. +// be specified in the request: secondary_ip_range, +// allow_subnet_cidr_routes_overlap and role. It is also mandatory to +// specify the current fingeprint of the subnetwork resource being +// patched. func (r *SubnetworksService) Patch(project string, region string, subnetwork string, subnetwork2 *Subnetwork) *SubnetworksPatchCall { c := &SubnetworksPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.project = project @@ -104545,7 +110190,7 @@ func (c *SubnetworksPatchCall) Do(opts ...googleapi.CallOption) (*Operation, err } return ret, nil // { - // "description": "Patches the specified subnetwork with the data included in the request. Only the following fields within the subnetwork resource can be specified in the request: secondary_ip_range and allow_subnet_cidr_routes_overlap. It is also mandatory to specify the current fingeprint of the subnetwork resource being patched.", + // "description": "Patches the specified subnetwork with the data included in the request. Only the following fields within the subnetwork resource can be specified in the request: secondary_ip_range, allow_subnet_cidr_routes_overlap and role. It is also mandatory to specify the current fingeprint of the subnetwork resource being patched.", // "httpMethod": "PATCH", // "id": "compute.subnetworks.patch", // "parameterOrder": [ @@ -105096,6 +110741,254 @@ func (c *SubnetworksTestIamPermissionsCall) Do(opts ...googleapi.CallOption) (*T } +// method id "compute.targetHttpProxies.aggregatedList": + +type TargetHttpProxiesAggregatedListCall struct { + s *Service + project string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// AggregatedList: Retrieves the list of all TargetHttpProxy resources, +// regional and global, available to the specified project. +func (r *TargetHttpProxiesService) AggregatedList(project string) *TargetHttpProxiesAggregatedListCall { + c := &TargetHttpProxiesAggregatedListCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.project = project + return c +} + +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. +// +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. +// +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. +// +// To filter on multiple expressions, provide each separate expression +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). +func (c *TargetHttpProxiesAggregatedListCall) Filter(filter string) *TargetHttpProxiesAggregatedListCall { + c.urlParams_.Set("filter", filter) + return c +} + +// MaxResults sets the optional parameter "maxResults": The maximum +// number of results per page that should be returned. If the number of +// available results is larger than maxResults, Compute Engine returns a +// nextPageToken that can be used to get the next page of results in +// subsequent list requests. Acceptable values are 0 to 500, inclusive. +// (Default: 500) +func (c *TargetHttpProxiesAggregatedListCall) MaxResults(maxResults int64) *TargetHttpProxiesAggregatedListCall { + c.urlParams_.Set("maxResults", fmt.Sprint(maxResults)) + return c +} + +// OrderBy sets the optional parameter "orderBy": Sorts list results by +// a certain order. By default, results are returned in alphanumerical +// order based on the resource name. +// +// You can also sort results in descending order based on the creation +// timestamp using orderBy="creationTimestamp desc". This sorts results +// based on the creationTimestamp field in reverse chronological order +// (newest result first). Use this to sort resources like operations so +// that the newest operation is returned first. +// +// Currently, only sorting by name or creationTimestamp desc is +// supported. +func (c *TargetHttpProxiesAggregatedListCall) OrderBy(orderBy string) *TargetHttpProxiesAggregatedListCall { + c.urlParams_.Set("orderBy", orderBy) + return c +} + +// PageToken sets the optional parameter "pageToken": Specifies a page +// token to use. Set pageToken to the nextPageToken returned by a +// previous list request to get the next page of results. +func (c *TargetHttpProxiesAggregatedListCall) PageToken(pageToken string) *TargetHttpProxiesAggregatedListCall { + c.urlParams_.Set("pageToken", pageToken) + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *TargetHttpProxiesAggregatedListCall) Fields(s ...googleapi.Field) *TargetHttpProxiesAggregatedListCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// IfNoneMatch sets the optional parameter which makes the operation +// fail if the object's ETag matches the given value. This is useful for +// getting updates only after the object has changed since the last +// request. Use googleapi.IsNotModified to check whether the response +// error from Do is the result of In-None-Match. +func (c *TargetHttpProxiesAggregatedListCall) IfNoneMatch(entityTag string) *TargetHttpProxiesAggregatedListCall { + c.ifNoneMatch_ = entityTag + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *TargetHttpProxiesAggregatedListCall) Context(ctx context.Context) *TargetHttpProxiesAggregatedListCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *TargetHttpProxiesAggregatedListCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *TargetHttpProxiesAggregatedListCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + if c.ifNoneMatch_ != "" { + reqHeaders.Set("If-None-Match", c.ifNoneMatch_) + } + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "{project}/aggregated/targetHttpProxies") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("GET", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "project": c.project, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "compute.targetHttpProxies.aggregatedList" call. +// Exactly one of *TargetHttpProxyAggregatedList or error will be +// non-nil. Any non-2xx status code is an error. Response headers are in +// either *TargetHttpProxyAggregatedList.ServerResponse.Header or (if a +// response was returned at all) in error.(*googleapi.Error).Header. Use +// googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *TargetHttpProxiesAggregatedListCall) Do(opts ...googleapi.CallOption) (*TargetHttpProxyAggregatedList, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &TargetHttpProxyAggregatedList{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Retrieves the list of all TargetHttpProxy resources, regional and global, available to the specified project.", + // "httpMethod": "GET", + // "id": "compute.targetHttpProxies.aggregatedList", + // "parameterOrder": [ + // "project" + // ], + // "parameters": { + // "filter": { + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + // "location": "query", + // "type": "string" + // }, + // "maxResults": { + // "default": "500", + // "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + // "format": "uint32", + // "location": "query", + // "minimum": "0", + // "type": "integer" + // }, + // "orderBy": { + // "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + // "location": "query", + // "type": "string" + // }, + // "pageToken": { + // "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + // "location": "query", + // "type": "string" + // }, + // "project": { + // "description": "Name of the project scoping this request.", + // "location": "path", + // "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + // "required": true, + // "type": "string" + // } + // }, + // "path": "{project}/aggregated/targetHttpProxies", + // "response": { + // "$ref": "TargetHttpProxyAggregatedList" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform", + // "https://www.googleapis.com/auth/compute", + // "https://www.googleapis.com/auth/compute.readonly" + // ] + // } + +} + +// Pages invokes f for each page of results. +// A non-nil error returned from f will halt the iteration. +// The provided context supersedes any context provided to the Context method. +func (c *TargetHttpProxiesAggregatedListCall) Pages(ctx context.Context, f func(*TargetHttpProxyAggregatedList) error) error { + c.ctx_ = ctx + defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point + for { + x, err := c.Do() + if err != nil { + return err + } + if err := f(x); err != nil { + return err + } + if x.NextPageToken == "" { + return nil + } + c.PageToken(x.NextPageToken) + } +} + // method id "compute.targetHttpProxies.delete": type TargetHttpProxiesDeleteCall struct { @@ -105591,32 +111484,28 @@ func (r *TargetHttpProxiesService) List(project string) *TargetHttpProxiesListCa return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *TargetHttpProxiesListCall) Filter(filter string) *TargetHttpProxiesListCall { c.urlParams_.Set("filter", filter) return c @@ -105760,7 +111649,7 @@ func (c *TargetHttpProxiesListCall) Do(opts ...googleapi.CallOption) (*TargetHtt // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -106634,32 +112523,28 @@ func (r *TargetHttpsProxiesService) List(project string) *TargetHttpsProxiesList return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *TargetHttpsProxiesListCall) Filter(filter string) *TargetHttpsProxiesListCall { c.urlParams_.Set("filter", filter) return c @@ -106803,7 +112688,7 @@ func (c *TargetHttpsProxiesListCall) Do(opts ...googleapi.CallOption) (*TargetHt // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -107716,32 +113601,28 @@ func (r *TargetInstancesService) AggregatedList(project string) *TargetInstances return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *TargetInstancesAggregatedListCall) Filter(filter string) *TargetInstancesAggregatedListCall { c.urlParams_.Set("filter", filter) return c @@ -107885,7 +113766,7 @@ func (c *TargetInstancesAggregatedListCall) Do(opts ...googleapi.CallOption) (*T // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -108479,32 +114360,28 @@ func (r *TargetInstancesService) List(project string, zone string) *TargetInstan return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *TargetInstancesListCall) Filter(filter string) *TargetInstancesListCall { c.urlParams_.Set("filter", filter) return c @@ -108650,7 +114527,7 @@ func (c *TargetInstancesListCall) Do(opts ...googleapi.CallOption) (*TargetInsta // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -109263,32 +115140,28 @@ func (r *TargetPoolsService) AggregatedList(project string) *TargetPoolsAggregat return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *TargetPoolsAggregatedListCall) Filter(filter string) *TargetPoolsAggregatedListCall { c.urlParams_.Set("filter", filter) return c @@ -109432,7 +115305,7 @@ func (c *TargetPoolsAggregatedListCall) Do(opts ...googleapi.CallOption) (*Targe // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -110186,32 +116059,28 @@ func (r *TargetPoolsService) List(project string, region string) *TargetPoolsLis return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *TargetPoolsListCall) Filter(filter string) *TargetPoolsListCall { c.urlParams_.Set("filter", filter) return c @@ -110357,7 +116226,7 @@ func (c *TargetPoolsListCall) Do(opts ...googleapi.CallOption) (*TargetPoolList, // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -111637,32 +117506,28 @@ func (r *TargetSslProxiesService) List(project string) *TargetSslProxiesListCall return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *TargetSslProxiesListCall) Filter(filter string) *TargetSslProxiesListCall { c.urlParams_.Set("filter", filter) return c @@ -111806,7 +117671,7 @@ func (c *TargetSslProxiesListCall) Do(opts ...googleapi.CallOption) (*TargetSslP // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -113191,32 +119056,28 @@ func (r *TargetTcpProxiesService) List(project string) *TargetTcpProxiesListCall return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *TargetTcpProxiesListCall) Filter(filter string) *TargetTcpProxiesListCall { c.urlParams_.Set("filter", filter) return c @@ -113360,7 +119221,7 @@ func (c *TargetTcpProxiesListCall) Do(opts ...googleapi.CallOption) (*TargetTcpP // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -113930,32 +119791,28 @@ func (r *TargetVpnGatewaysService) AggregatedList(project string) *TargetVpnGate return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *TargetVpnGatewaysAggregatedListCall) Filter(filter string) *TargetVpnGatewaysAggregatedListCall { c.urlParams_.Set("filter", filter) return c @@ -114099,7 +119956,7 @@ func (c *TargetVpnGatewaysAggregatedListCall) Do(opts ...googleapi.CallOption) ( // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -114689,32 +120546,28 @@ func (r *TargetVpnGatewaysService) List(project string, region string) *TargetVp return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *TargetVpnGatewaysListCall) Filter(filter string) *TargetVpnGatewaysListCall { c.urlParams_.Set("filter", filter) return c @@ -114860,7 +120713,7 @@ func (c *TargetVpnGatewaysListCall) Do(opts ...googleapi.CallOption) (*TargetVpn // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -115938,32 +121791,28 @@ func (r *UrlMapsService) List(project string) *UrlMapsListCall { return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *UrlMapsListCall) Filter(filter string) *UrlMapsListCall { c.urlParams_.Set("filter", filter) return c @@ -116107,7 +121956,7 @@ func (c *UrlMapsListCall) Do(opts ...googleapi.CallOption) (*UrlMapList, error) // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -116831,32 +122680,28 @@ func (r *VpnTunnelsService) AggregatedList(project string) *VpnTunnelsAggregated return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *VpnTunnelsAggregatedListCall) Filter(filter string) *VpnTunnelsAggregatedListCall { c.urlParams_.Set("filter", filter) return c @@ -117000,7 +122845,7 @@ func (c *VpnTunnelsAggregatedListCall) Do(opts ...googleapi.CallOption) (*VpnTun // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -117590,32 +123435,28 @@ func (r *VpnTunnelsService) List(project string, region string) *VpnTunnelsListC return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *VpnTunnelsListCall) Filter(filter string) *VpnTunnelsListCall { c.urlParams_.Set("filter", filter) return c @@ -117761,7 +123602,7 @@ func (c *VpnTunnelsListCall) Do(opts ...googleapi.CallOption) (*VpnTunnelList, e // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -118478,32 +124319,28 @@ func (r *ZoneOperationsService) List(project string, zone string) *ZoneOperation return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *ZoneOperationsListCall) Filter(filter string) *ZoneOperationsListCall { c.urlParams_.Set("filter", filter) return c @@ -118649,7 +124486,7 @@ func (c *ZoneOperationsListCall) Do(opts ...googleapi.CallOption) (*OperationLis // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -118893,32 +124730,28 @@ func (r *ZonesService) List(project string) *ZonesListCall { return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *ZonesListCall) Filter(filter string) *ZonesListCall { c.urlParams_.Set("filter", filter) return c @@ -119062,7 +124895,7 @@ func (c *ZonesListCall) Do(opts ...googleapi.CallOption) (*ZoneList, error) { // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, diff --git a/vendor/google.golang.org/api/compute/v0.beta/compute-api.json b/vendor/google.golang.org/api/compute/v0.beta/compute-api.json index 1eeda402f..6fb03e4ff 100644 --- a/vendor/google.golang.org/api/compute/v0.beta/compute-api.json +++ b/vendor/google.golang.org/api/compute/v0.beta/compute-api.json @@ -1,34835 +1,35984 @@ { - "kind": "discovery#restDescription", - "etag": "\"-iA1DTNe4s-I6JZXPt1t1Ypy8IU/fHbW7QXwL-_RS9fcFDlHxb0u8fc\"", - "discoveryVersion": "v1", - "id": "compute:beta", - "name": "compute", - "version": "beta", - "revision": "20171228", - "title": "Compute Engine API", - "description": "Creates and runs virtual machines on Google Cloud Platform.", - "ownerDomain": "google.com", - "ownerName": "Google", - "icons": { - "x16": "https://www.google.com/images/icons/product/compute_engine-16.png", - "x32": "https://www.google.com/images/icons/product/compute_engine-32.png" - }, - "documentationLink": "https://developers.google.com/compute/docs/reference/latest/", - "protocol": "rest", - "baseUrl": "https://www.googleapis.com/compute/beta/projects/", - "basePath": "/compute/beta/projects/", - "rootUrl": "https://www.googleapis.com/", - "servicePath": "compute/beta/projects/", - "batchPath": "batch/compute/beta", - "parameters": { - "alt": { - "type": "string", - "description": "Data format for the response.", - "default": "json", - "enum": [ - "json" - ], - "enumDescriptions": [ - "Responses with Content-Type of application/json" - ], - "location": "query" - }, - "fields": { - "type": "string", - "description": "Selector specifying which fields to include in a partial response.", - "location": "query" - }, - "key": { - "type": "string", - "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" - }, - "oauth_token": { - "type": "string", - "description": "OAuth 2.0 token for the current user.", - "location": "query" - }, - "prettyPrint": { - "type": "boolean", - "description": "Returns response with indentations and line breaks.", - "default": "true", - "location": "query" - }, - "quotaUser": { - "type": "string", - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", - "location": "query" - }, - "userIp": { - "type": "string", - "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", - "location": "query" - } - }, - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/cloud-platform": { - "description": "View and manage your data across Google Cloud Platform services" - }, - "https://www.googleapis.com/auth/compute": { - "description": "View and manage your Google Compute Engine resources" - }, - "https://www.googleapis.com/auth/compute.readonly": { - "description": "View your Google Compute Engine resources" - }, - "https://www.googleapis.com/auth/devstorage.full_control": { - "description": "Manage your data and permissions in Google Cloud Storage" - }, - "https://www.googleapis.com/auth/devstorage.read_only": { - "description": "View your data in Google Cloud Storage" - }, - "https://www.googleapis.com/auth/devstorage.read_write": { - "description": "Manage your data in Google Cloud Storage" - } - } - } - }, - "schemas": { - "AcceleratorConfig": { - "id": "AcceleratorConfig", - "type": "object", - "description": "A specification of the type and number of accelerator cards attached to the instance.", - "properties": { - "acceleratorCount": { - "type": "integer", - "description": "The number of the guest accelerator cards exposed to this instance.", - "format": "int32" - }, - "acceleratorType": { - "type": "string", - "description": "Full or partial URL of the accelerator type resource to attach to this instance. If you are creating an instance template, specify only the accelerator name." - } - } - }, - "AcceleratorType": { - "id": "AcceleratorType", - "type": "object", - "description": "An Accelerator Type resource. (== resource_for beta.acceleratorTypes ==) (== resource_for v1.acceleratorTypes ==)", - "properties": { - "creationTimestamp": { - "type": "string", - "description": "[Output Only] Creation timestamp in RFC3339 text format." - }, - "deprecated": { - "$ref": "DeprecationStatus", - "description": "[Output Only] The deprecation status associated with this accelerator type." - }, - "description": { - "type": "string", - "description": "[Output Only] An optional textual description of the resource." - }, - "id": { - "type": "string", - "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", - "format": "uint64" - }, - "kind": { - "type": "string", - "description": "[Output Only] The type of the resource. Always compute#acceleratorType for accelerator types.", - "default": "compute#acceleratorType" - }, - "maximumCardsPerInstance": { - "type": "integer", - "description": "[Output Only] Maximum accelerator cards allowed per instance.", - "format": "int32" - }, - "name": { - "type": "string", - "description": "[Output Only] Name of the resource.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined fully-qualified URL for this resource." - }, - "zone": { - "type": "string", - "description": "[Output Only] The name of the zone where the accelerator type resides, such as us-central1-a." - } - } - }, - "AcceleratorTypeAggregatedList": { - "id": "AcceleratorTypeAggregatedList", - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "object", - "description": "A list of AcceleratorTypesScopedList resources.", - "additionalProperties": { - "$ref": "AcceleratorTypesScopedList", - "description": "[Output Only] Name of the scope containing this set of accelerator types." - } - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#acceleratorTypeAggregatedList for aggregated lists of accelerator types.", - "default": "compute#acceleratorTypeAggregatedList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/cloud-platform": { + "description": "View and manage your data across Google Cloud Platform services" + }, + "https://www.googleapis.com/auth/compute": { + "description": "View and manage your Google Compute Engine resources" + }, + "https://www.googleapis.com/auth/compute.readonly": { + "description": "View your Google Compute Engine resources" + }, + "https://www.googleapis.com/auth/devstorage.full_control": { + "description": "Manage your data and permissions in Google Cloud Storage" + }, + "https://www.googleapis.com/auth/devstorage.read_only": { + "description": "View your data in Google Cloud Storage" + }, + "https://www.googleapis.com/auth/devstorage.read_write": { + "description": "Manage your data in Google Cloud Storage" } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." } - } } - } }, - "AcceleratorTypeList": { - "id": "AcceleratorTypeList", - "type": "object", - "description": "Contains a list of accelerator types.", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." + "basePath": "/compute/beta/projects/", + "baseUrl": "https://www.googleapis.com/compute/beta/projects/", + "batchPath": "batch/compute/beta", + "description": "Creates and runs virtual machines on Google Cloud Platform.", + "discoveryVersion": "v1", + "documentationLink": "https://developers.google.com/compute/docs/reference/latest/", + "etag": "\"-iA1DTNe4s-I6JZXPt1t1Ypy8IU/daIK3TPc7g4vSYPDdeU4jy_NNhw\"", + "icons": { + "x16": "https://www.google.com/images/icons/product/compute_engine-16.png", + "x32": "https://www.google.com/images/icons/product/compute_engine-32.png" + }, + "id": "compute:beta", + "kind": "discovery#restDescription", + "name": "compute", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "alt": { + "default": "json", + "description": "Data format for the response.", + "enum": [ + "json" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json" + ], + "location": "query", + "type": "string" }, - "items": { - "type": "array", - "description": "A list of AcceleratorType resources.", - "items": { - "$ref": "AcceleratorType" - } + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "location": "query", + "type": "string" }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#acceleratorTypeList for lists of accelerator types.", - "default": "compute#acceleratorTypeList" + "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" }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", + "location": "query", + "type": "string" + }, + "userIp": { + "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", + "location": "query", + "type": "string" } - } }, - "AcceleratorTypesScopedList": { - "id": "AcceleratorTypesScopedList", - "type": "object", - "properties": { + "protocol": "rest", + "resources": { "acceleratorTypes": { - "type": "array", - "description": "[Output Only] List of accelerator types contained in this scope.", - "items": { - "$ref": "AcceleratorType" - } - }, - "warning": { - "type": "object", - "description": "[Output Only] An informational warning that appears when the accelerator types list is empty.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } + "methods": { + "aggregatedList": { + "description": "Retrieves an aggregated list of accelerator types.", + "httpMethod": "GET", + "id": "compute.acceleratorTypes.aggregatedList", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/aggregated/acceleratorTypes", + "response": { + "$ref": "AcceleratorTypeAggregatedList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "get": { + "description": "Returns the specified accelerator type. Get a list of available accelerator types by making a list() request.", + "httpMethod": "GET", + "id": "compute.acceleratorTypes.get", + "parameterOrder": [ + "project", + "zone", + "acceleratorType" + ], + "parameters": { + "acceleratorType": { + "description": "Name of the accelerator type to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/acceleratorTypes/{acceleratorType}", + "response": { + "$ref": "AcceleratorType" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "list": { + "description": "Retrieves a list of accelerator types available to the specified project.", + "httpMethod": "GET", + "id": "compute.acceleratorTypes.list", + "parameterOrder": [ + "project", + "zone" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/acceleratorTypes", + "response": { + "$ref": "AcceleratorTypeList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." } - } - } - } - }, - "AccessConfig": { - "id": "AccessConfig", - "type": "object", - "description": "An access configuration attached to an instance's network interface. Only one access config per instance is supported.", - "properties": { - "kind": { - "type": "string", - "description": "[Output Only] Type of the resource. Always compute#accessConfig for access configs.", - "default": "compute#accessConfig" }, - "name": { - "type": "string", - "description": "The name of this access configuration. The default and recommended name is External NAT but you can use any arbitrary string you would like. For example, My external IP or Network Access." - }, - "natIP": { - "type": "string", - "description": "An external IP address associated with this instance. Specify an unused static external IP address available to the project or leave this field undefined to use an IP from a shared ephemeral IP address pool. If you specify a static external IP address, it must live in the same region as the zone of the instance." - }, - "publicPtrDomainName": { - "type": "string", - "description": "The DNS domain name for the public PTR record. This field can only be set when the set_public_ptr field is enabled." - }, - "setPublicPtr": { - "type": "boolean", - "description": "Specifies whether a public DNS ?PTR? record should be created to map the external IP address of the instance to a DNS domain name." - }, - "type": { - "type": "string", - "description": "The type of configuration. The default and only option is ONE_TO_ONE_NAT.", - "default": "ONE_TO_ONE_NAT", - "enum": [ - "ONE_TO_ONE_NAT" - ], - "enumDescriptions": [ - "" - ] - } - } - }, - "Address": { - "id": "Address", - "type": "object", - "description": "A reserved address resource. (== resource_for beta.addresses ==) (== resource_for v1.addresses ==) (== resource_for beta.globalAddresses ==) (== resource_for v1.globalAddresses ==)", - "properties": { - "address": { - "type": "string", - "description": "The static IP address represented by this resource." - }, - "addressType": { - "type": "string", - "description": "The type of address to reserve, either INTERNAL or EXTERNAL. If unspecified, defaults to EXTERNAL.", - "enum": [ - "EXTERNAL", - "INTERNAL", - "UNSPECIFIED_TYPE" - ], - "enumDescriptions": [ - "", - "", - "" - ] - }, - "creationTimestamp": { - "type": "string", - "description": "[Output Only] Creation timestamp in RFC3339 text format." - }, - "description": { - "type": "string", - "description": "An optional description of this resource. Provide this property when you create the resource." - }, - "id": { - "type": "string", - "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", - "format": "uint64" - }, - "ipVersion": { - "type": "string", - "description": "The IP Version that will be used by this address. Valid options are IPV4 or IPV6. This can only be specified for a global address.", - "enum": [ - "IPV4", - "IPV6", - "UNSPECIFIED_VERSION" - ], - "enumDescriptions": [ - "", - "", - "" - ] - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of the resource. Always compute#address for addresses.", - "default": "compute#address" - }, - "labelFingerprint": { - "type": "string", - "description": "A fingerprint for the labels being applied to this Address, which is essentially a hash of the labels set used for optimistic locking. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update labels. You must always provide an up-to-date fingerprint hash in order to update or change labels.\n\nTo see the latest fingerprint, make a get() request to retrieve an Address.", - "format": "byte" - }, - "labels": { - "type": "object", - "description": "Labels to apply to this Address resource. These can be later modified by the setLabels method. Each label key/value must comply with RFC1035. Label values may be empty.", - "additionalProperties": { - "type": "string" - } - }, - "name": { - "type": "string", - "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "annotations": { - "required": [ - "compute.addresses.insert" - ] - } - }, - "region": { - "type": "string", - "description": "[Output Only] URL of the region where the regional address resides. This field is not applicable to global addresses." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for the resource." - }, - "status": { - "type": "string", - "description": "[Output Only] The status of the address, which can be one of RESERVING, RESERVED, or IN_USE. An address that is RESERVING is currently in the process of being reserved. A RESERVED address is currently reserved and available to use. An IN_USE address is currently being used by another resource and is not available.", - "enum": [ - "IN_USE", - "RESERVED" - ], - "enumDescriptions": [ - "", - "" - ] - }, - "subnetwork": { - "type": "string", - "description": "The URL of the subnetwork in which to reserve the address. If an IP address is specified, it must be within the subnetwork's IP range. This field can only be used with INTERNAL type with GCE_ENDPOINT/DNS_RESOLVER purposes." - }, - "users": { - "type": "array", - "description": "[Output Only] The URLs of the resources that are using this address.", - "items": { - "type": "string" - } - } - } - }, - "AddressAggregatedList": { - "id": "AddressAggregatedList", - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "object", - "description": "A list of AddressesScopedList resources.", - "additionalProperties": { - "$ref": "AddressesScopedList", - "description": "[Output Only] Name of the scope containing this set of addresses." - } - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#addressAggregatedList for aggregated lists of addresses.", - "default": "compute#addressAggregatedList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "AddressList": { - "id": "AddressList", - "type": "object", - "description": "Contains a list of addresses.", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "array", - "description": "A list of Address resources.", - "items": { - "$ref": "Address" - } - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#addressList for lists of addresses.", - "default": "compute#addressList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "AddressesScopedList": { - "id": "AddressesScopedList", - "type": "object", - "properties": { "addresses": { - "type": "array", - "description": "[Output Only] List of addresses contained in this scope.", - "items": { - "$ref": "Address" - } - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning which replaces the list of addresses when the list is empty.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } + "methods": { + "aggregatedList": { + "description": "Retrieves an aggregated list of addresses.", + "httpMethod": "GET", + "id": "compute.addresses.aggregatedList", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/aggregated/addresses", + "response": { + "$ref": "AddressAggregatedList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "delete": { + "description": "Deletes the specified address resource.", + "httpMethod": "DELETE", + "id": "compute.addresses.delete", + "parameterOrder": [ + "project", + "region", + "address" + ], + "parameters": { + "address": { + "description": "Name of the address resource to delete.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/regions/{region}/addresses/{address}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Returns the specified address resource.", + "httpMethod": "GET", + "id": "compute.addresses.get", + "parameterOrder": [ + "project", + "region", + "address" + ], + "parameters": { + "address": { + "description": "Name of the address resource to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/addresses/{address}", + "response": { + "$ref": "Address" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "description": "Creates an address resource in the specified project using the data included in the request.", + "httpMethod": "POST", + "id": "compute.addresses.insert", + "parameterOrder": [ + "project", + "region" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/regions/{region}/addresses", + "request": { + "$ref": "Address" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "description": "Retrieves a list of addresses contained within the specified region.", + "httpMethod": "GET", + "id": "compute.addresses.list", + "parameterOrder": [ + "project", + "region" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/addresses", + "response": { + "$ref": "AddressList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "setLabels": { + "description": "Sets the labels on an Address. To learn more about labels, read the Labeling Resources documentation.", + "httpMethod": "POST", + "id": "compute.addresses.setLabels", + "parameterOrder": [ + "project", + "region", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "The region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/addresses/{resource}/setLabels", + "request": { + "$ref": "RegionSetLabelsRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource.", + "httpMethod": "POST", + "id": "compute.addresses.testIamPermissions", + "parameterOrder": [ + "project", + "region", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "The name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/addresses/{resource}/testIamPermissions", + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." } - } - } - } - }, - "AliasIpRange": { - "id": "AliasIpRange", - "type": "object", - "description": "An alias IP range attached to an instance's network interface.", - "properties": { - "ipCidrRange": { - "type": "string", - "description": "The IP CIDR range represented by this alias IP range. This IP CIDR range must belong to the specified subnetwork and cannot contain IP addresses reserved by system or used by other network interfaces. This range may be a single IP address (e.g. 10.2.3.4), a netmask (e.g. /24) or a CIDR format string (e.g. 10.1.2.0/24)." }, - "subnetworkRangeName": { - "type": "string", - "description": "Optional subnetwork secondary range name specifying the secondary range from which to allocate the IP CIDR range for this alias IP range. If left unspecified, the primary range of the subnetwork will be used." - } - } - }, - "AttachedDisk": { - "id": "AttachedDisk", - "type": "object", - "description": "An instance-attached disk resource.", - "properties": { - "autoDelete": { - "type": "boolean", - "description": "Specifies whether the disk will be auto-deleted when the instance is deleted (but not when the disk is detached from the instance)." - }, - "boot": { - "type": "boolean", - "description": "Indicates that this is a boot disk. The virtual machine will use the first partition of the disk for its root filesystem." - }, - "deviceName": { - "type": "string", - "description": "Specifies a unique device name of your choice that is reflected into the /dev/disk/by-id/google-* tree of a Linux operating system running within the instance. This name can be used to reference the device for mounting, resizing, and so on, from within the instance.\n\nIf not specified, the server chooses a default device name to apply to this disk, in the form persistent-disks-x, where x is a number assigned by Google Compute Engine. This field is only applicable for persistent disks." - }, - "diskEncryptionKey": { - "$ref": "CustomerEncryptionKey", - "description": "Encrypts or decrypts a disk using a customer-supplied encryption key.\n\nIf you are creating a new disk, this field encrypts the new disk using an encryption key that you provide. If you are attaching an existing disk that is already encrypted, this field decrypts the disk using the customer-supplied encryption key.\n\nIf you encrypt a disk using a customer-supplied key, you must provide the same key again when you attempt to use this resource at a later time. For example, you must provide the key when you create a snapshot or an image from the disk or when you attach the disk to a virtual machine instance.\n\nIf you do not provide an encryption key, then the disk will be encrypted using an automatically generated key and you do not need to provide a key to use the disk later.\n\nInstance templates do not store customer-supplied encryption keys, so you cannot use your own keys to encrypt disks in a managed instance group." - }, - "guestOsFeatures": { - "type": "array", - "description": "A list of features to enable on the guest operating system. Applicable only for bootable images. Read Enabling guest operating system features to see a list of available options.", - "items": { - "$ref": "GuestOsFeature" - } - }, - "index": { - "type": "integer", - "description": "[Output Only] A zero-based index to this disk, where 0 is reserved for the boot disk. If you have many disks attached to an instance, each disk would have a unique index number.", - "format": "int32" - }, - "initializeParams": { - "$ref": "AttachedDiskInitializeParams", - "description": "[Input Only] Specifies the parameters for a new disk that will be created alongside the new instance. Use initialization parameters to create boot disks or local SSDs attached to the new instance.\n\nThis property is mutually exclusive with the source property; you can only define one or the other, but not both." - }, - "interface": { - "type": "string", - "description": "Specifies the disk interface to use for attaching this disk, which is either SCSI or NVME. The default is SCSI. Persistent disks must always use SCSI and the request will fail if you attempt to attach a persistent disk in any other format than SCSI. Local SSDs can use either NVME or SCSI. For performance characteristics of SCSI over NVMe, see Local SSD performance.", - "enum": [ - "NVME", - "SCSI" - ], - "enumDescriptions": [ - "", - "" - ] - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of the resource. Always compute#attachedDisk for attached disks.", - "default": "compute#attachedDisk" - }, - "licenses": { - "type": "array", - "description": "[Output Only] Any valid publicly visible licenses.", - "items": { - "type": "string" - } - }, - "mode": { - "type": "string", - "description": "The mode in which to attach this disk, either READ_WRITE or READ_ONLY. If not specified, the default is to attach the disk in READ_WRITE mode.", - "enum": [ - "READ_ONLY", - "READ_WRITE" - ], - "enumDescriptions": [ - "", - "" - ] - }, - "source": { - "type": "string", - "description": "Specifies a valid partial or full URL to an existing Persistent Disk resource. When creating a new instance, one of initializeParams.sourceImage or disks.source is required except for local SSD.\n\nIf desired, you can also attach existing non-root persistent disks using this property. This field is only applicable for persistent disks.\n\nNote that for InstanceTemplate, specify the disk name, not the URL for the disk." - }, - "type": { - "type": "string", - "description": "Specifies the type of the disk, either SCRATCH or PERSISTENT. If not specified, the default is PERSISTENT.", - "enum": [ - "PERSISTENT", - "SCRATCH" - ], - "enumDescriptions": [ - "", - "" - ] - } - } - }, - "AttachedDiskInitializeParams": { - "id": "AttachedDiskInitializeParams", - "type": "object", - "description": "[Input Only] Specifies the parameters for a new disk that will be created alongside the new instance. Use initialization parameters to create boot disks or local SSDs attached to the new instance.\n\nThis property is mutually exclusive with the source property; you can only define one or the other, but not both.", - "properties": { - "diskName": { - "type": "string", - "description": "Specifies the disk name. If not specified, the default is to use the name of the instance." - }, - "diskSizeGb": { - "type": "string", - "description": "Specifies the size of the disk in base-2 GB.", - "format": "int64" - }, - "diskStorageType": { - "type": "string", - "description": "[Deprecated] Storage type of the disk.", - "enum": [ - "HDD", - "SSD" - ], - "enumDescriptions": [ - "", - "" - ] - }, - "diskType": { - "type": "string", - "description": "Specifies the disk type to use to create the instance. If not specified, the default is pd-standard, specified using the full URL. For example:\n\nhttps://www.googleapis.com/compute/v1/projects/project/zones/zone/diskTypes/pd-standard \n\nOther values include pd-ssd and local-ssd. If you define this field, you can provide either the full or partial URL. For example, the following are valid values: \n- https://www.googleapis.com/compute/v1/projects/project/zones/zone/diskTypes/diskType \n- projects/project/zones/zone/diskTypes/diskType \n- zones/zone/diskTypes/diskType Note that for InstanceTemplate, this is the name of the disk type, not URL." - }, - "labels": { - "type": "object", - "description": "Labels to apply to this disk. These can be later modified by the disks.setLabels method. This field is only applicable for persistent disks.", - "additionalProperties": { - "type": "string" - } - }, - "sourceImage": { - "type": "string", - "description": "The source image to create this disk. When creating a new instance, one of initializeParams.sourceImage or disks.source is required except for local SSD.\n\nTo create a disk with one of the public operating system images, specify the image by its family name. For example, specify family/debian-8 to use the latest Debian 8 image:\n\nprojects/debian-cloud/global/images/family/debian-8 \n\nAlternatively, use a specific version of a public operating system image:\n\nprojects/debian-cloud/global/images/debian-8-jessie-vYYYYMMDD \n\nTo create a disk with a custom image that you created, specify the image name in the following format:\n\nglobal/images/my-custom-image \n\nYou can also specify a custom image by its image family, which returns the latest version of the image in that family. Replace the image name with family/family-name:\n\nglobal/images/family/my-image-family \n\nIf the source image is deleted later, this field will not be set." - }, - "sourceImageEncryptionKey": { - "$ref": "CustomerEncryptionKey", - "description": "The customer-supplied encryption key of the source image. Required if the source image is protected by a customer-supplied encryption key.\n\nInstance templates do not store customer-supplied encryption keys, so you cannot create disks for instances in a managed instance group if the source images are encrypted with your own keys." - } - } - }, - "AuditConfig": { - "id": "AuditConfig", - "type": "object", - "description": "Specifies the audit configuration for a service. The configuration determines which permission types are logged, and what identities, if any, are exempted from logging. An AuditConfig must have one or more AuditLogConfigs.\n\nIf there are AuditConfigs for both `allServices` and a specific service, the union of the two AuditConfigs is used for that service: the log_types specified in each AuditConfig are enabled, and the exempted_members in each AuditConfig are exempted.\n\nExample Policy with multiple AuditConfigs:\n\n{ \"audit_configs\": [ { \"service\": \"allServices\" \"audit_log_configs\": [ { \"log_type\": \"DATA_READ\", \"exempted_members\": [ \"user:foo@gmail.com\" ] }, { \"log_type\": \"DATA_WRITE\", }, { \"log_type\": \"ADMIN_READ\", } ] }, { \"service\": \"fooservice.googleapis.com\" \"audit_log_configs\": [ { \"log_type\": \"DATA_READ\", }, { \"log_type\": \"DATA_WRITE\", \"exempted_members\": [ \"user:bar@gmail.com\" ] } ] } ] }\n\nFor fooservice, this policy enables DATA_READ, DATA_WRITE and ADMIN_READ logging. It also exempts foo@gmail.com from DATA_READ logging, and bar@gmail.com from DATA_WRITE logging.", - "properties": { - "auditLogConfigs": { - "type": "array", - "description": "The configuration for logging of each type of permission.", - "items": { - "$ref": "AuditLogConfig" - } - }, - "exemptedMembers": { - "type": "array", - "description": "", - "items": { - "type": "string" - } - }, - "service": { - "type": "string", - "description": "Specifies a service that will be enabled for audit logging. For example, `storage.googleapis.com`, `cloudsql.googleapis.com`. `allServices` is a special value that covers all services." - } - } - }, - "AuditLogConfig": { - "id": "AuditLogConfig", - "type": "object", - "description": "Provides the configuration for logging a type of permissions. Example:\n\n{ \"audit_log_configs\": [ { \"log_type\": \"DATA_READ\", \"exempted_members\": [ \"user:foo@gmail.com\" ] }, { \"log_type\": \"DATA_WRITE\", } ] }\n\nThis enables 'DATA_READ' and 'DATA_WRITE' logging, while exempting foo@gmail.com from DATA_READ logging.", - "properties": { - "exemptedMembers": { - "type": "array", - "description": "Specifies the identities that do not cause logging for this type of permission. Follows the same format of [Binding.members][].", - "items": { - "type": "string" - } - }, - "logType": { - "type": "string", - "description": "The log type that this config enables.", - "enum": [ - "ADMIN_READ", - "DATA_READ", - "DATA_WRITE", - "LOG_TYPE_UNSPECIFIED" - ], - "enumDescriptions": [ - "", - "", - "", - "" - ] - } - } - }, - "AuthorizationLoggingOptions": { - "id": "AuthorizationLoggingOptions", - "type": "object", - "description": "Authorization-related information used by Cloud Audit Logging.", - "properties": { - "permissionType": { - "type": "string", - "description": "The type of the permission that was checked.", - "enum": [ - "ADMIN_READ", - "ADMIN_WRITE", - "DATA_READ", - "DATA_WRITE", - "PERMISSION_TYPE_UNSPECIFIED" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "" - ] - } - } - }, - "Autoscaler": { - "id": "Autoscaler", - "type": "object", - "description": "Represents an Autoscaler resource. Autoscalers allow you to automatically scale virtual machine instances in managed instance groups according to an autoscaling policy that you define. For more information, read Autoscaling Groups of Instances. (== resource_for beta.autoscalers ==) (== resource_for v1.autoscalers ==) (== resource_for beta.regionAutoscalers ==) (== resource_for v1.regionAutoscalers ==)", - "properties": { - "autoscalingPolicy": { - "$ref": "AutoscalingPolicy", - "description": "The configuration parameters for the autoscaling algorithm. You can define one or more of the policies for an autoscaler: cpuUtilization, customMetricUtilizations, and loadBalancingUtilization.\n\nIf none of these are specified, the default will be to autoscale based on cpuUtilization to 0.6 or 60%." - }, - "creationTimestamp": { - "type": "string", - "description": "[Output Only] Creation timestamp in RFC3339 text format." - }, - "description": { - "type": "string", - "description": "An optional description of this resource. Provide this property when you create the resource." - }, - "id": { - "type": "string", - "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", - "format": "uint64" - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of the resource. Always compute#autoscaler for autoscalers.", - "default": "compute#autoscaler" - }, - "name": { - "type": "string", - "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "annotations": { - "required": [ - "compute.instanceGroups.insert" - ] - } - }, - "region": { - "type": "string", - "description": "[Output Only] URL of the region where the instance group resides (for autoscalers living in regional scope)." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for the resource." - }, - "status": { - "type": "string", - "description": "[Output Only] The status of the autoscaler configuration.", - "enum": [ - "ACTIVE", - "DELETING", - "ERROR", - "PENDING" - ], - "enumDescriptions": [ - "", - "", - "", - "" - ] - }, - "statusDetails": { - "type": "array", - "description": "[Output Only] Human-readable details about the current state of the autoscaler. Read the documentation for Commonly returned status messages for examples of status messages you might encounter.", - "items": { - "$ref": "AutoscalerStatusDetails" - } - }, - "target": { - "type": "string", - "description": "URL of the managed instance group that this autoscaler will scale." - }, - "zone": { - "type": "string", - "description": "[Output Only] URL of the zone where the instance group resides (for autoscalers living in zonal scope)." - } - } - }, - "AutoscalerAggregatedList": { - "id": "AutoscalerAggregatedList", - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "object", - "description": "A list of AutoscalersScopedList resources.", - "additionalProperties": { - "$ref": "AutoscalersScopedList", - "description": "[Output Only] Name of the scope containing this set of autoscalers." - } - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#autoscalerAggregatedList for aggregated lists of autoscalers.", - "default": "compute#autoscalerAggregatedList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "AutoscalerList": { - "id": "AutoscalerList", - "type": "object", - "description": "Contains a list of Autoscaler resources.", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "array", - "description": "A list of Autoscaler resources.", - "items": { - "$ref": "Autoscaler" - } - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#autoscalerList for lists of autoscalers.", - "default": "compute#autoscalerList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "AutoscalerStatusDetails": { - "id": "AutoscalerStatusDetails", - "type": "object", - "properties": { - "message": { - "type": "string", - "description": "The status message." - }, - "type": { - "type": "string", - "description": "The type of error returned.", - "enum": [ - "ALL_INSTANCES_UNHEALTHY", - "BACKEND_SERVICE_DOES_NOT_EXIST", - "CAPPED_AT_MAX_NUM_REPLICAS", - "CUSTOM_METRIC_DATA_POINTS_TOO_SPARSE", - "CUSTOM_METRIC_INVALID", - "MIN_EQUALS_MAX", - "MISSING_CUSTOM_METRIC_DATA_POINTS", - "MISSING_LOAD_BALANCING_DATA_POINTS", - "MORE_THAN_ONE_BACKEND_SERVICE", - "NOT_ENOUGH_QUOTA_AVAILABLE", - "REGION_RESOURCE_STOCKOUT", - "SCALING_TARGET_DOES_NOT_EXIST", - "UNKNOWN", - "UNSUPPORTED_MAX_RATE_LOAD_BALANCING_CONFIGURATION", - "ZONE_RESOURCE_STOCKOUT" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - } - } - }, - "AutoscalersScopedList": { - "id": "AutoscalersScopedList", - "type": "object", - "properties": { "autoscalers": { - "type": "array", - "description": "[Output Only] List of autoscalers contained in this scope.", - "items": { - "$ref": "Autoscaler" - } - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning which replaces the list of autoscalers when the list is empty.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } + "methods": { + "aggregatedList": { + "description": "Retrieves an aggregated list of autoscalers.", + "httpMethod": "GET", + "id": "compute.autoscalers.aggregatedList", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/aggregated/autoscalers", + "response": { + "$ref": "AutoscalerAggregatedList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "delete": { + "description": "Deletes the specified autoscaler.", + "httpMethod": "DELETE", + "id": "compute.autoscalers.delete", + "parameterOrder": [ + "project", + "zone", + "autoscaler" + ], + "parameters": { + "autoscaler": { + "description": "Name of the autoscaler to delete.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "Name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/autoscalers/{autoscaler}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Returns the specified autoscaler resource. Get a list of available autoscalers by making a list() request.", + "httpMethod": "GET", + "id": "compute.autoscalers.get", + "parameterOrder": [ + "project", + "zone", + "autoscaler" + ], + "parameters": { + "autoscaler": { + "description": "Name of the autoscaler to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "zone": { + "description": "Name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/autoscalers/{autoscaler}", + "response": { + "$ref": "Autoscaler" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "description": "Creates an autoscaler in the specified project using the data included in the request.", + "httpMethod": "POST", + "id": "compute.autoscalers.insert", + "parameterOrder": [ + "project", + "zone" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "Name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/autoscalers", + "request": { + "$ref": "Autoscaler" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "description": "Retrieves a list of autoscalers contained within the specified zone.", + "httpMethod": "GET", + "id": "compute.autoscalers.list", + "parameterOrder": [ + "project", + "zone" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "zone": { + "description": "Name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/autoscalers", + "response": { + "$ref": "AutoscalerList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "patch": { + "description": "Updates an autoscaler in the specified project using the data included in the request. This method supports PATCH semantics and uses the JSON merge patch format and processing rules.", + "httpMethod": "PATCH", + "id": "compute.autoscalers.patch", + "parameterOrder": [ + "project", + "zone" + ], + "parameters": { + "autoscaler": { + "description": "Name of the autoscaler to patch.", + "location": "query", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "Name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/autoscalers", + "request": { + "$ref": "Autoscaler" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource.", + "httpMethod": "POST", + "id": "compute.autoscalers.testIamPermissions", + "parameterOrder": [ + "project", + "zone", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/autoscalers/{resource}/testIamPermissions", + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "update": { + "description": "Updates an autoscaler in the specified project using the data included in the request.", + "httpMethod": "PUT", + "id": "compute.autoscalers.update", + "parameterOrder": [ + "project", + "zone" + ], + "parameters": { + "autoscaler": { + "description": "Name of the autoscaler to update.", + "location": "query", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "Name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/autoscalers", + "request": { + "$ref": "Autoscaler" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." } - } - } - } - }, - "AutoscalingPolicy": { - "id": "AutoscalingPolicy", - "type": "object", - "description": "Cloud Autoscaler policy.", - "properties": { - "coolDownPeriodSec": { - "type": "integer", - "description": "The number of seconds that the autoscaler should wait before it starts collecting information from a new instance. This prevents the autoscaler from collecting information when the instance is initializing, during which the collected usage would not be reliable. The default time autoscaler waits is 60 seconds.\n\nVirtual machine initialization times might vary because of numerous factors. We recommend that you test how long an instance may take to initialize. To do this, create an instance and time the startup process.", - "format": "int32" }, - "cpuUtilization": { - "$ref": "AutoscalingPolicyCpuUtilization", - "description": "Defines the CPU utilization policy that allows the autoscaler to scale based on the average CPU utilization of a managed instance group." - }, - "customMetricUtilizations": { - "type": "array", - "description": "Configuration parameters of autoscaling based on a custom metric.", - "items": { - "$ref": "AutoscalingPolicyCustomMetricUtilization" - } - }, - "loadBalancingUtilization": { - "$ref": "AutoscalingPolicyLoadBalancingUtilization", - "description": "Configuration parameters of autoscaling based on load balancer." - }, - "maxNumReplicas": { - "type": "integer", - "description": "The maximum number of instances that the autoscaler can scale up to. This is required when creating or updating an autoscaler. The maximum number of replicas should not be lower than minimal number of replicas.", - "format": "int32" - }, - "minNumReplicas": { - "type": "integer", - "description": "The minimum number of replicas that the autoscaler can scale down to. This cannot be less than 0. If not provided, autoscaler will choose a default value depending on maximum number of instances allowed.", - "format": "int32" - } - } - }, - "AutoscalingPolicyCpuUtilization": { - "id": "AutoscalingPolicyCpuUtilization", - "type": "object", - "description": "CPU utilization policy.", - "properties": { - "utilizationTarget": { - "type": "number", - "description": "The target CPU utilization that the autoscaler should maintain. Must be a float value in the range (0, 1]. If not specified, the default is 0.6.\n\nIf the CPU level is below the target utilization, the autoscaler scales down the number of instances until it reaches the minimum number of instances you specified or until the average CPU of your instances reaches the target utilization.\n\nIf the average CPU is above the target utilization, the autoscaler scales up until it reaches the maximum number of instances you specified or until the average utilization reaches the target utilization.", - "format": "double" - } - } - }, - "AutoscalingPolicyCustomMetricUtilization": { - "id": "AutoscalingPolicyCustomMetricUtilization", - "type": "object", - "description": "Custom utilization metric policy.", - "properties": { - "filter": { - "type": "string", - "description": "A filter string, compatible with a Stackdriver Monitoring filter string for TimeSeries.list API call. This filter is used to select a specific TimeSeries for the purpose of autoscaling and to determine whether the metric is exporting per-instance or per-group data.\n\nFor the filter to be valid for autoscaling purposes, the following rules apply: \n- You can only use the AND operator for joining selectors. \n- You can only use direct equality comparison operator (=) without any functions for each selector. \n- You can specify the metric in both the filter string and in the metric field. However, if specified in both places, the metric must be identical. \n- The monitored resource type determines what kind of values are expected for the metric. If it is a gce_instance, the autoscaler expects the metric to include a separate TimeSeries for each instance in a group. In such a case, you cannot filter on resource labels.\nIf the resource type is any other value, the autoscaler expects this metric to contain values that apply to the entire autoscaled instance group and resource label filtering can be performed to point autoscaler at the correct TimeSeries to scale upon. This is called a per-group metric for the purpose of autoscaling.\n\nIf not specified, the type defaults to gce_instance. \n\nYou should provide a filter that is selective enough to pick just one TimeSeries for the autoscaled group or for each of the instances (if you are using gce_instance resource type). If multiple TimeSeries are returned upon the query execution, the autoscaler will sum their respective values to obtain its scaling value." - }, - "metric": { - "type": "string", - "description": "The identifier (type) of the Stackdriver Monitoring metric. The metric cannot have negative values.\n\nThe metric must have a value type of INT64 or DOUBLE." - }, - "singleInstanceAssignment": { - "type": "number", - "description": "If scaling is based on a per-group metric value that represents the total amount of work to be done or resource usage, set this value to an amount assigned for a single instance of the scaled group. Autoscaler will keep the number of instances proportional to the value of this metric, the metric itself should not change value due to group resizing.\n\nA good metric to use with the target is for example pubsub.googleapis.com/subscription/num_undelivered_messages or a custom metric exporting the total number of requests coming to your instances.\n\nA bad example would be a metric exporting an average or median latency, since this value can't include a chunk assignable to a single instance, it could be better used with utilization_target instead.", - "format": "double" - }, - "utilizationTarget": { - "type": "number", - "description": "The target value of the metric that autoscaler should maintain. This must be a positive value. A utilization metric scales number of virtual machines handling requests to increase or decrease proportionally to the metric.\n\nFor example, a good metric to use as a utilization_target is compute.googleapis.com/instance/network/received_bytes_count. The autoscaler will work to keep this value constant for each of the instances.", - "format": "double" - }, - "utilizationTargetType": { - "type": "string", - "description": "Defines how target utilization value is expressed for a Stackdriver Monitoring metric. Either GAUGE, DELTA_PER_SECOND, or DELTA_PER_MINUTE. If not specified, the default is GAUGE.", - "enum": [ - "DELTA_PER_MINUTE", - "DELTA_PER_SECOND", - "GAUGE" - ], - "enumDescriptions": [ - "", - "", - "" - ] - } - } - }, - "AutoscalingPolicyLoadBalancingUtilization": { - "id": "AutoscalingPolicyLoadBalancingUtilization", - "type": "object", - "description": "Configuration parameters of autoscaling based on load balancing.", - "properties": { - "utilizationTarget": { - "type": "number", - "description": "Fraction of backend capacity utilization (set in HTTP(s) load balancing configuration) that autoscaler should maintain. Must be a positive float value. If not defined, the default is 0.8.", - "format": "double" - } - } - }, - "Backend": { - "id": "Backend", - "type": "object", - "description": "Message containing information of one individual backend.", - "properties": { - "balancingMode": { - "type": "string", - "description": "Specifies the balancing mode for this backend. For global HTTP(S) or TCP/SSL load balancing, the default is UTILIZATION. Valid values are UTILIZATION, RATE (for HTTP(S)) and CONNECTION (for TCP/SSL).\n\nFor Internal Load Balancing, the default and only supported mode is CONNECTION.", - "enum": [ - "CONNECTION", - "RATE", - "UTILIZATION" - ], - "enumDescriptions": [ - "", - "", - "" - ] - }, - "capacityScaler": { - "type": "number", - "description": "A multiplier applied to the group's maximum servicing capacity (based on UTILIZATION, RATE or CONNECTION). Default value is 1, which means the group will serve up to 100% of its configured capacity (depending on balancingMode). A setting of 0 means the group is completely drained, offering 0% of its available Capacity. Valid range is [0.0,1.0].\n\nThis cannot be used for internal load balancing.", - "format": "float" - }, - "description": { - "type": "string", - "description": "An optional description of this resource. Provide this property when you create the resource." - }, - "group": { - "type": "string", - "description": "The fully-qualified URL of a Instance Group resource. This instance group defines the list of instances that serve traffic. Member virtual machine instances from each instance group must live in the same zone as the instance group itself. No two backends in a backend service are allowed to use same Instance Group resource.\n\nNote that you must specify an Instance Group resource using the fully-qualified URL, rather than a partial URL.\n\nWhen the BackendService has load balancing scheme INTERNAL, the instance group must be within the same region as the BackendService." - }, - "maxConnections": { - "type": "integer", - "description": "The max number of simultaneous connections for the group. Can be used with either CONNECTION or UTILIZATION balancing modes. For CONNECTION mode, either maxConnections or maxConnectionsPerInstance must be set.\n\nThis cannot be used for internal load balancing.", - "format": "int32" - }, - "maxConnectionsPerInstance": { - "type": "integer", - "description": "The max number of simultaneous connections that a single backend instance can handle. This is used to calculate the capacity of the group. Can be used in either CONNECTION or UTILIZATION balancing modes. For CONNECTION mode, either maxConnections or maxConnectionsPerInstance must be set.\n\nThis cannot be used for internal load balancing.", - "format": "int32" - }, - "maxRate": { - "type": "integer", - "description": "The max requests per second (RPS) of the group. Can be used with either RATE or UTILIZATION balancing modes, but required if RATE mode. For RATE mode, either maxRate or maxRatePerInstance must be set.\n\nThis cannot be used for internal load balancing.", - "format": "int32" - }, - "maxRatePerInstance": { - "type": "number", - "description": "The max requests per second (RPS) that a single backend instance can handle. This is used to calculate the capacity of the group. Can be used in either balancing mode. For RATE mode, either maxRate or maxRatePerInstance must be set.\n\nThis cannot be used for internal load balancing.", - "format": "float" - }, - "maxUtilization": { - "type": "number", - "description": "Used when balancingMode is UTILIZATION. This ratio defines the CPU utilization target for the group. The default is 0.8. Valid range is [0.0, 1.0].\n\nThis cannot be used for internal load balancing.", - "format": "float" - } - } - }, - "BackendBucket": { - "id": "BackendBucket", - "type": "object", - "description": "A BackendBucket resource. This resource defines a Cloud Storage bucket.", - "properties": { - "bucketName": { - "type": "string", - "description": "Cloud Storage bucket name." - }, - "cdnPolicy": { - "$ref": "BackendBucketCdnPolicy", - "description": "Cloud CDN Coniguration for this BackendBucket." - }, - "creationTimestamp": { - "type": "string", - "description": "[Output Only] Creation timestamp in RFC3339 text format." - }, - "description": { - "type": "string", - "description": "An optional textual description of the resource; provided by the client when the resource is created." - }, - "enableCdn": { - "type": "boolean", - "description": "If true, enable Cloud CDN for this BackendBucket." - }, - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server.", - "format": "uint64" - }, - "kind": { - "type": "string", - "description": "Type of the resource.", - "default": "compute#backendBucket" - }, - "name": { - "type": "string", - "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for the resource." - } - } - }, - "BackendBucketCdnPolicy": { - "id": "BackendBucketCdnPolicy", - "type": "object", - "description": "Message containing Cloud CDN configuration for a backend bucket.", - "properties": { - "signedUrlCacheMaxAgeSec": { - "type": "string", - "description": "Number of seconds up to which the response to a signed URL request will be cached in the CDN. After this time period, the Signed URL will be revalidated before being served. Defaults to 1hr (3600s). If this field is set, Cloud CDN will internally act as though all responses from this bucket had a ?Cache-Control: public, max-age=[TTL]? header, regardless of any existing Cache-Control header. The actual headers served in responses will not be altered.", - "format": "int64" - }, - "signedUrlKeyNames": { - "type": "array", - "description": "[Output Only] Names of the keys currently configured for Cloud CDN Signed URL on this backend bucket.", - "items": { - "type": "string" - } - } - } - }, - "BackendBucketList": { - "id": "BackendBucketList", - "type": "object", - "description": "Contains a list of BackendBucket resources.", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "array", - "description": "A list of BackendBucket resources.", - "items": { - "$ref": "BackendBucket" - } - }, - "kind": { - "type": "string", - "description": "Type of resource.", - "default": "compute#backendBucketList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } + "backendBuckets": { + "methods": { + "addSignedUrlKey": { + "description": "Adds the given Signed URL Key to the backend bucket.", + "httpMethod": "POST", + "id": "compute.backendBuckets.addSignedUrlKey", + "parameterOrder": [ + "project", + "backendBucket" + ], + "parameters": { + "backendBucket": { + "description": "Name of the BackendBucket resource to which the Signed URL Key should be added. The name should conform to RFC1035.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/backendBuckets/{backendBucket}/addSignedUrlKey", + "request": { + "$ref": "SignedUrlKey" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "delete": { + "description": "Deletes the specified BackendBucket resource.", + "httpMethod": "DELETE", + "id": "compute.backendBuckets.delete", + "parameterOrder": [ + "project", + "backendBucket" + ], + "parameters": { + "backendBucket": { + "description": "Name of the BackendBucket resource to delete.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/backendBuckets/{backendBucket}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "deleteSignedUrlKey": { + "description": "Deletes the given Signed URL Key from the backend bucket.", + "httpMethod": "POST", + "id": "compute.backendBuckets.deleteSignedUrlKey", + "parameterOrder": [ + "project", + "backendBucket", + "keyName" + ], + "parameters": { + "backendBucket": { + "description": "Name of the BackendBucket resource to which the Signed URL Key should be added. The name should conform to RFC1035.", + "location": "path", + "required": true, + "type": "string" + }, + "keyName": { + "description": "The name of the Signed URL Key to delete.", + "location": "query", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/backendBuckets/{backendBucket}/deleteSignedUrlKey", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Returns the specified BackendBucket resource. Get a list of available backend buckets by making a list() request.", + "httpMethod": "GET", + "id": "compute.backendBuckets.get", + "parameterOrder": [ + "project", + "backendBucket" + ], + "parameters": { + "backendBucket": { + "description": "Name of the BackendBucket resource to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/backendBuckets/{backendBucket}", + "response": { + "$ref": "BackendBucket" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "description": "Creates a BackendBucket resource in the specified project using the data included in the request.", + "httpMethod": "POST", + "id": "compute.backendBuckets.insert", + "parameterOrder": [ + "project" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/backendBuckets", + "request": { + "$ref": "BackendBucket" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "description": "Retrieves the list of BackendBucket resources available to the specified project.", + "httpMethod": "GET", + "id": "compute.backendBuckets.list", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/backendBuckets", + "response": { + "$ref": "BackendBucketList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "patch": { + "description": "Updates the specified BackendBucket resource with the data included in the request. This method supports PATCH semantics and uses the JSON merge patch format and processing rules.", + "httpMethod": "PATCH", + "id": "compute.backendBuckets.patch", + "parameterOrder": [ + "project", + "backendBucket" + ], + "parameters": { + "backendBucket": { + "description": "Name of the BackendBucket resource to patch.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/backendBuckets/{backendBucket}", + "request": { + "$ref": "BackendBucket" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "update": { + "description": "Updates the specified BackendBucket resource with the data included in the request.", + "httpMethod": "PUT", + "id": "compute.backendBuckets.update", + "parameterOrder": [ + "project", + "backendBucket" + ], + "parameters": { + "backendBucket": { + "description": "Name of the BackendBucket resource to update.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/backendBuckets/{backendBucket}", + "request": { + "$ref": "BackendBucket" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." } - } - } - } - }, - "BackendService": { - "id": "BackendService", - "type": "object", - "description": "A BackendService resource. This resource defines a group of backend virtual machines and their serving capacity. (== resource_for v1.backendService ==) (== resource_for beta.backendService ==)", - "properties": { - "affinityCookieTtlSec": { - "type": "integer", - "description": "Lifetime of cookies in seconds if session_affinity is GENERATED_COOKIE. If set to 0, the cookie is non-persistent and lasts only until the end of the browser session (or equivalent). The maximum allowed value for TTL is one day.\n\nWhen the load balancing scheme is INTERNAL, this field is not used.", - "format": "int32" }, - "backends": { - "type": "array", - "description": "The list of backends that serve this BackendService.", - "items": { - "$ref": "Backend" - } - }, - "cdnPolicy": { - "$ref": "BackendServiceCdnPolicy", - "description": "Cloud CDN configuration for this BackendService." - }, - "connectionDraining": { - "$ref": "ConnectionDraining" - }, - "creationTimestamp": { - "type": "string", - "description": "[Output Only] Creation timestamp in RFC3339 text format." - }, - "description": { - "type": "string", - "description": "An optional description of this resource. Provide this property when you create the resource." - }, - "enableCDN": { - "type": "boolean", - "description": "If true, enable Cloud CDN for this BackendService.\n\nWhen the load balancing scheme is INTERNAL, this field is not used." - }, - "fingerprint": { - "type": "string", - "description": "Fingerprint of this resource. A hash of the contents stored in this object. This field is used in optimistic locking. This field will be ignored when inserting a BackendService. An up-to-date fingerprint must be provided in order to update the BackendService.", - "format": "byte" - }, - "healthChecks": { - "type": "array", - "description": "The list of URLs to the HttpHealthCheck or HttpsHealthCheck resource for health checking this BackendService. Currently at most one health check can be specified, and a health check is required for Compute Engine backend services. A health check must not be specified for App Engine backend and Cloud Function backend.\n\nFor internal load balancing, a URL to a HealthCheck resource must be specified instead.", - "items": { - "type": "string" - } - }, - "iap": { - "$ref": "BackendServiceIAP" - }, - "id": { - "type": "string", - "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", - "format": "uint64" - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#backendService for backend services.", - "default": "compute#backendService" - }, - "loadBalancingScheme": { - "type": "string", - "description": "Indicates whether the backend service will be used with internal or external load balancing. A backend service created for one type of load balancing cannot be used with the other. Possible values are INTERNAL and EXTERNAL.", - "enum": [ - "EXTERNAL", - "INTERNAL", - "INVALID_LOAD_BALANCING_SCHEME" - ], - "enumDescriptions": [ - "", - "", - "" - ] - }, - "name": { - "type": "string", - "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" - }, - "port": { - "type": "integer", - "description": "Deprecated in favor of portName. The TCP port to connect on the backend. The default value is 80.\n\nThis cannot be used for internal load balancing.", - "format": "int32" - }, - "portName": { - "type": "string", - "description": "Name of backend port. The same name should appear in the instance groups referenced by this service. Required when the load balancing scheme is EXTERNAL.\n\nWhen the load balancing scheme is INTERNAL, this field is not used." - }, - "protocol": { - "type": "string", - "description": "The protocol this BackendService uses to communicate with backends.\n\nPossible values are HTTP, HTTPS, TCP, and SSL. The default is HTTP.\n\nFor internal load balancing, the possible values are TCP and UDP, and the default is TCP.", - "enum": [ - "HTTP", - "HTTPS", - "SSL", - "TCP", - "UDP" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "" - ] - }, - "region": { - "type": "string", - "description": "[Output Only] URL of the region where the regional backend service resides. This field is not applicable to global backend services." - }, - "securityPolicy": { - "type": "string", - "description": "[Output Only] The resource URL for the security policy associated with this backend service." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for the resource." - }, - "sessionAffinity": { - "type": "string", - "description": "Type of session affinity to use. The default is NONE.\n\nWhen the load balancing scheme is EXTERNAL, can be NONE, CLIENT_IP, or GENERATED_COOKIE.\n\nWhen the load balancing scheme is INTERNAL, can be NONE, CLIENT_IP, CLIENT_IP_PROTO, or CLIENT_IP_PORT_PROTO.\n\nWhen the protocol is UDP, this field is not used.", - "enum": [ - "CLIENT_IP", - "CLIENT_IP_PORT_PROTO", - "CLIENT_IP_PROTO", - "GENERATED_COOKIE", - "NONE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "" - ] - }, - "timeoutSec": { - "type": "integer", - "description": "How many seconds to wait for the backend before considering it a failed request. Default is 30 seconds.", - "format": "int32" - } - } - }, - "BackendServiceAggregatedList": { - "id": "BackendServiceAggregatedList", - "type": "object", - "description": "Contains a list of BackendServicesScopedList.", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "object", - "description": "A list of BackendServicesScopedList resources.", - "additionalProperties": { - "$ref": "BackendServicesScopedList", - "description": "Name of the scope containing this set of BackendServices." - } - }, - "kind": { - "type": "string", - "description": "Type of resource.", - "default": "compute#backendServiceAggregatedList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "BackendServiceCdnPolicy": { - "id": "BackendServiceCdnPolicy", - "type": "object", - "description": "Message containing Cloud CDN configuration for a backend service.", - "properties": { - "cacheKeyPolicy": { - "$ref": "CacheKeyPolicy", - "description": "The CacheKeyPolicy for this CdnPolicy." - }, - "signedUrlCacheMaxAgeSec": { - "type": "string", - "description": "Number of seconds up to which the response to a signed URL request will be cached in the CDN. After this time period, the Signed URL will be revalidated before being served. Defaults to 1hr (3600s). If this field is set, Cloud CDN will internally act as though all responses from this backend had a ?Cache-Control: public, max-age=[TTL]? header, regardless of any existing Cache-Control header. The actual headers served in responses will not be altered.", - "format": "int64" - }, - "signedUrlKeyNames": { - "type": "array", - "description": "[Output Only] Names of the keys currently configured for Cloud CDN Signed URL on this backend service.", - "items": { - "type": "string" - } - } - } - }, - "BackendServiceGroupHealth": { - "id": "BackendServiceGroupHealth", - "type": "object", - "properties": { - "healthStatus": { - "type": "array", - "items": { - "$ref": "HealthStatus" - } - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#backendServiceGroupHealth for the health of backend services.", - "default": "compute#backendServiceGroupHealth" - } - } - }, - "BackendServiceIAP": { - "id": "BackendServiceIAP", - "type": "object", - "description": "Identity-Aware Proxy", - "properties": { - "enabled": { - "type": "boolean" - }, - "oauth2ClientId": { - "type": "string" - }, - "oauth2ClientSecret": { - "type": "string" - }, - "oauth2ClientSecretSha256": { - "type": "string", - "description": "[Output Only] SHA256 hash value for the field oauth2_client_secret above." - } - } - }, - "BackendServiceList": { - "id": "BackendServiceList", - "type": "object", - "description": "Contains a list of BackendService resources.", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "array", - "description": "A list of BackendService resources.", - "items": { - "$ref": "BackendService" - } - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#backendServiceList for lists of backend services.", - "default": "compute#backendServiceList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "BackendServicesScopedList": { - "id": "BackendServicesScopedList", - "type": "object", - "properties": { "backendServices": { - "type": "array", - "description": "List of BackendServices contained in this scope.", - "items": { - "$ref": "BackendService" - } - }, - "warning": { - "type": "object", - "description": "Informational warning which replaces the list of backend services when the list is empty.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } + "methods": { + "addSignedUrlKey": { + "description": "Adds the given Signed URL Key to the specified backend service.", + "httpMethod": "POST", + "id": "compute.backendServices.addSignedUrlKey", + "parameterOrder": [ + "project", + "backendService" + ], + "parameters": { + "backendService": { + "description": "Name of the BackendService resource to which the Signed URL Key should be added. The name should conform to RFC1035.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/backendServices/{backendService}/addSignedUrlKey", + "request": { + "$ref": "SignedUrlKey" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "aggregatedList": { + "description": "Retrieves the list of all BackendService resources, regional and global, available to the specified project.", + "httpMethod": "GET", + "id": "compute.backendServices.aggregatedList", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Name of the project scoping this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/aggregated/backendServices", + "response": { + "$ref": "BackendServiceAggregatedList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "delete": { + "description": "Deletes the specified BackendService resource.", + "httpMethod": "DELETE", + "id": "compute.backendServices.delete", + "parameterOrder": [ + "project", + "backendService" + ], + "parameters": { + "backendService": { + "description": "Name of the BackendService resource to delete.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/backendServices/{backendService}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "deleteSignedUrlKey": { + "description": "Deletes the given Signed URL Key from the specified backend service.", + "httpMethod": "POST", + "id": "compute.backendServices.deleteSignedUrlKey", + "parameterOrder": [ + "project", + "backendService", + "keyName" + ], + "parameters": { + "backendService": { + "description": "Name of the BackendService resource to which the Signed URL Key should be added. The name should conform to RFC1035.", + "location": "path", + "required": true, + "type": "string" + }, + "keyName": { + "description": "The name of the Signed URL Key to delete.", + "location": "query", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/backendServices/{backendService}/deleteSignedUrlKey", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Returns the specified BackendService resource. Get a list of available backend services by making a list() request.", + "httpMethod": "GET", + "id": "compute.backendServices.get", + "parameterOrder": [ + "project", + "backendService" + ], + "parameters": { + "backendService": { + "description": "Name of the BackendService resource to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/backendServices/{backendService}", + "response": { + "$ref": "BackendService" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "getHealth": { + "description": "Gets the most recent health check results for this BackendService.", + "httpMethod": "POST", + "id": "compute.backendServices.getHealth", + "parameterOrder": [ + "project", + "backendService" + ], + "parameters": { + "backendService": { + "description": "Name of the BackendService resource to which the queried instance belongs.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/backendServices/{backendService}/getHealth", + "request": { + "$ref": "ResourceGroupReference" + }, + "response": { + "$ref": "BackendServiceGroupHealth" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "description": "Creates a BackendService resource in the specified project using the data included in the request. There are several restrictions and guidelines to keep in mind when creating a backend service. Read Restrictions and Guidelines for more information.", + "httpMethod": "POST", + "id": "compute.backendServices.insert", + "parameterOrder": [ + "project" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/backendServices", + "request": { + "$ref": "BackendService" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "description": "Retrieves the list of BackendService resources available to the specified project.", + "httpMethod": "GET", + "id": "compute.backendServices.list", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/backendServices", + "response": { + "$ref": "BackendServiceList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "patch": { + "description": "Patches the specified BackendService resource with the data included in the request. There are several restrictions and guidelines to keep in mind when updating a backend service. Read Restrictions and Guidelines for more information. This method supports PATCH semantics and uses the JSON merge patch format and processing rules.", + "httpMethod": "PATCH", + "id": "compute.backendServices.patch", + "parameterOrder": [ + "project", + "backendService" + ], + "parameters": { + "backendService": { + "description": "Name of the BackendService resource to patch.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/backendServices/{backendService}", + "request": { + "$ref": "BackendService" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setSecurityPolicy": { + "description": "Sets the security policy for the specified backend service.", + "httpMethod": "POST", + "id": "compute.backendServices.setSecurityPolicy", + "parameterOrder": [ + "project", + "backendService" + ], + "parameters": { + "backendService": { + "description": "Name of the BackendService resource to which the security policy should be set. The name should conform to RFC1035.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/backendServices/{backendService}/setSecurityPolicy", + "request": { + "$ref": "SecurityPolicyReference" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource.", + "httpMethod": "POST", + "id": "compute.backendServices.testIamPermissions", + "parameterOrder": [ + "project", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "(?:[-a-z0-9_]{0,62}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/backendServices/{resource}/testIamPermissions", + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "update": { + "description": "Updates the specified BackendService resource with the data included in the request. There are several restrictions and guidelines to keep in mind when updating a backend service. Read Restrictions and Guidelines for more information.", + "httpMethod": "PUT", + "id": "compute.backendServices.update", + "parameterOrder": [ + "project", + "backendService" + ], + "parameters": { + "backendService": { + "description": "Name of the BackendService resource to update.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/backendServices/{backendService}", + "request": { + "$ref": "BackendService" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." } - } - } - } - }, - "Binding": { - "id": "Binding", - "type": "object", - "description": "Associates `members` with a `role`.", - "properties": { - "condition": { - "$ref": "Expr", - "description": "The condition that is associated with this binding. NOTE: an unsatisfied condition will not allow user access via current binding. Different bindings, including their conditions, are examined independently. This field is GOOGLE_INTERNAL." }, - "members": { - "type": "array", - "description": "Specifies the identities requesting access for a Cloud Platform resource. `members` can have the following values:\n\n* `allUsers`: A special identifier that represents anyone who is on the internet; with or without a Google account.\n\n* `allAuthenticatedUsers`: A special identifier that represents anyone who is authenticated with a Google account or a service account.\n\n* `user:{emailid}`: An email address that represents a specific Google account. For example, `alice@gmail.com` or `joe@example.com`.\n\n\n\n* `serviceAccount:{emailid}`: An email address that represents a service account. For example, `my-other-app@appspot.gserviceaccount.com`.\n\n* `group:{emailid}`: An email address that represents a Google group. For example, `admins@example.com`.\n\n\n\n* `domain:{domain}`: A Google Apps domain name that represents all the users of that domain. For example, `google.com` or `example.com`.", - "items": { - "type": "string" - } - }, - "role": { - "type": "string", - "description": "Role that is assigned to `members`. For example, `roles/viewer`, `roles/editor`, or `roles/owner`." - } - } - }, - "CacheInvalidationRule": { - "id": "CacheInvalidationRule", - "type": "object", - "properties": { - "host": { - "type": "string", - "description": "If set, this invalidation rule will only apply to requests with a Host header matching host." - }, - "path": { - "type": "string" - } - } - }, - "CacheKeyPolicy": { - "id": "CacheKeyPolicy", - "type": "object", - "description": "Message containing what to include in the cache key for a request for Cloud CDN.", - "properties": { - "includeHost": { - "type": "boolean", - "description": "If true, requests to different hosts will be cached separately." - }, - "includeProtocol": { - "type": "boolean", - "description": "If true, http and https requests will be cached separately." - }, - "includeQueryString": { - "type": "boolean", - "description": "If true, include query string parameters in the cache key according to query_string_whitelist and query_string_blacklist. If neither is set, the entire query string will be included. If false, the query string will be excluded from the cache key entirely." - }, - "queryStringBlacklist": { - "type": "array", - "description": "Names of query string parameters to exclude in cache keys. All other parameters will be included. Either specify query_string_whitelist or query_string_blacklist, not both. '&' and '=' will be percent encoded and not treated as delimiters.", - "items": { - "type": "string" - } - }, - "queryStringWhitelist": { - "type": "array", - "description": "Names of query string parameters to include in cache keys. All other parameters will be excluded. Either specify query_string_whitelist or query_string_blacklist, not both. '&' and '=' will be percent encoded and not treated as delimiters.", - "items": { - "type": "string" - } - } - } - }, - "Commitment": { - "id": "Commitment", - "type": "object", - "description": "Represents a Commitment resource. Creating a Commitment resource means that you are purchasing a committed use contract with an explicit start and end time. You can create commitments based on vCPUs and memory usage and receive discounted rates. For full details, read Signing Up for Committed Use Discounts.\n\nCommitted use discounts are subject to Google Cloud Platform's Service Specific Terms. By purchasing a committed use discount, you agree to these terms. Committed use discounts will not renew, so you must purchase a new commitment to continue receiving discounts. (== resource_for beta.commitments ==) (== resource_for v1.commitments ==)", - "properties": { - "creationTimestamp": { - "type": "string", - "description": "[Output Only] Creation timestamp in RFC3339 text format." - }, - "description": { - "type": "string", - "description": "An optional description of this resource. Provide this property when you create the resource." - }, - "endTimestamp": { - "type": "string", - "description": "[Output Only] Commitment end time in RFC3339 text format." - }, - "id": { - "type": "string", - "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", - "format": "uint64" - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of the resource. Always compute#commitment for commitments.", - "default": "compute#commitment" - }, - "name": { - "type": "string", - "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" - }, - "plan": { - "type": "string", - "description": "The plan for this commitment, which determines duration and discount rate. The currently supported plans are TWELVE_MONTH (1 year), and THIRTY_SIX_MONTH (3 years).", - "enum": [ - "INVALID", - "THIRTY_SIX_MONTH", - "TWELVE_MONTH" - ], - "enumDescriptions": [ - "", - "", - "" - ] - }, - "region": { - "type": "string", - "description": "[Output Only] URL of the region where this commitment may be used." - }, - "resources": { - "type": "array", - "description": "List of commitment amounts for particular resources. Note that VCPU and MEMORY resource commitments must occur together.", - "items": { - "$ref": "ResourceCommitment" - } - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for the resource." - }, - "startTimestamp": { - "type": "string", - "description": "[Output Only] Commitment start time in RFC3339 text format." - }, - "status": { - "type": "string", - "description": "[Output Only] Status of the commitment with regards to eventual expiration (each commitment has an end date defined). One of the following values: NOT_YET_ACTIVE, ACTIVE, EXPIRED.", - "enum": [ - "ACTIVE", - "CREATING", - "EXPIRED", - "NOT_YET_ACTIVE" - ], - "enumDescriptions": [ - "", - "", - "", - "" - ] - }, - "statusMessage": { - "type": "string", - "description": "[Output Only] An optional, human-readable explanation of the status." - } - } - }, - "CommitmentAggregatedList": { - "id": "CommitmentAggregatedList", - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "object", - "description": "A list of CommitmentsScopedList resources.", - "additionalProperties": { - "$ref": "CommitmentsScopedList", - "description": "[Output Only] Name of the scope containing this set of commitments." - } - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#commitmentAggregatedList for aggregated lists of commitments.", - "default": "compute#commitmentAggregatedList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "CommitmentList": { - "id": "CommitmentList", - "type": "object", - "description": "Contains a list of Commitment resources.", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "array", - "description": "A list of Commitment resources.", - "items": { - "$ref": "Commitment" - } - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#commitmentList for lists of commitments.", - "default": "compute#commitmentList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "CommitmentsScopedList": { - "id": "CommitmentsScopedList", - "type": "object", - "properties": { - "commitments": { - "type": "array", - "description": "[Output Only] List of commitments contained in this scope.", - "items": { - "$ref": "Commitment" - } - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning which replaces the list of commitments when the list is empty.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "Condition": { - "id": "Condition", - "type": "object", - "description": "A condition to be met.", - "properties": { - "iam": { - "type": "string", - "description": "Trusted attributes supplied by the IAM system.", - "enum": [ - "APPROVER", - "ATTRIBUTION", - "AUTHORITY", - "JUSTIFICATION_TYPE", - "NO_ATTR", - "SECURITY_REALM" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "" - ] - }, - "op": { - "type": "string", - "description": "An operator to apply the subject with.", - "enum": [ - "DISCHARGED", - "EQUALS", - "IN", - "NOT_EQUALS", - "NOT_IN", - "NO_OP" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "" - ] - }, - "svc": { - "type": "string", - "description": "Trusted attributes discharged by the service." - }, - "sys": { - "type": "string", - "description": "Trusted attributes supplied by any service that owns resources and uses the IAM system for access control.", - "enum": [ - "IP", - "NAME", - "NO_ATTR", - "REGION", - "SERVICE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "" - ] - }, - "value": { - "type": "string", - "description": "DEPRECATED. Use 'values' instead." - }, - "values": { - "type": "array", - "description": "The objects of the condition. This is mutually exclusive with 'value'.", - "items": { - "type": "string" - } - } - } - }, - "ConnectionDraining": { - "id": "ConnectionDraining", - "type": "object", - "description": "Message containing connection draining configuration.", - "properties": { - "drainingTimeoutSec": { - "type": "integer", - "description": "Time for which instance will be drained (not accept new connections, but still work to finish started).", - "format": "int32" - } - } - }, - "CustomerEncryptionKey": { - "id": "CustomerEncryptionKey", - "type": "object", - "description": "Represents a customer-supplied encryption key", - "properties": { - "rawKey": { - "type": "string", - "description": "Specifies a 256-bit customer-supplied encryption key, encoded in RFC 4648 base64 to either encrypt or decrypt this resource." - }, - "rsaEncryptedKey": { - "type": "string", - "description": "Specifies an RFC 4648 base64 encoded, RSA-wrapped 2048-bit customer-supplied encryption key to either encrypt or decrypt this resource.\n\nThe key must meet the following requirements before you can provide it to Compute Engine: \n- The key is wrapped using a RSA public key certificate provided by Google. \n- After being wrapped, the key must be encoded in RFC 4648 base64 encoding. Get the RSA public key certificate provided by Google at:\nhttps://cloud-certs.storage.googleapis.com/google-cloud-csek-ingress.pem" - }, - "sha256": { - "type": "string", - "description": "[Output only] The RFC 4648 base64 encoded SHA-256 hash of the customer-supplied encryption key that protects this resource." - } - } - }, - "CustomerEncryptionKeyProtectedDisk": { - "id": "CustomerEncryptionKeyProtectedDisk", - "type": "object", - "properties": { - "diskEncryptionKey": { - "$ref": "CustomerEncryptionKey", - "description": "Decrypts data associated with the disk with a customer-supplied encryption key." - }, - "source": { - "type": "string", - "description": "Specifies a valid partial or full URL to an existing Persistent Disk resource. This field is only applicable for persistent disks." - } - } - }, - "DeprecationStatus": { - "id": "DeprecationStatus", - "type": "object", - "description": "Deprecation status for a public resource.", - "properties": { - "deleted": { - "type": "string", - "description": "An optional RFC3339 timestamp on or after which the state of this resource is intended to change to DELETED. This is only informational and the status will not change unless the client explicitly changes it." - }, - "deprecated": { - "type": "string", - "description": "An optional RFC3339 timestamp on or after which the state of this resource is intended to change to DEPRECATED. This is only informational and the status will not change unless the client explicitly changes it." - }, - "obsolete": { - "type": "string", - "description": "An optional RFC3339 timestamp on or after which the state of this resource is intended to change to OBSOLETE. This is only informational and the status will not change unless the client explicitly changes it." - }, - "replacement": { - "type": "string", - "description": "The URL of the suggested replacement for a deprecated resource. The suggested replacement resource must be the same kind of resource as the deprecated resource." - }, - "state": { - "type": "string", - "description": "The deprecation state of this resource. This can be DEPRECATED, OBSOLETE, or DELETED. Operations which create a new resource using a DEPRECATED resource will return successfully, but with a warning indicating the deprecated resource and recommending its replacement. Operations which use OBSOLETE or DELETED resources will be rejected and result in an error.", - "enum": [ - "DELETED", - "DEPRECATED", - "OBSOLETE" - ], - "enumDescriptions": [ - "", - "", - "" - ] - } - } - }, - "Disk": { - "id": "Disk", - "type": "object", - "description": "A Disk resource. (== resource_for beta.disks ==) (== resource_for v1.disks ==)", - "properties": { - "creationTimestamp": { - "type": "string", - "description": "[Output Only] Creation timestamp in RFC3339 text format." - }, - "description": { - "type": "string", - "description": "An optional description of this resource. Provide this property when you create the resource." - }, - "diskEncryptionKey": { - "$ref": "CustomerEncryptionKey", - "description": "Encrypts the disk using a customer-supplied encryption key.\n\nAfter you encrypt a disk with a customer-supplied key, you must provide the same key if you use the disk later (e.g. to create a disk snapshot or an image, or to attach the disk to a virtual machine).\n\nCustomer-supplied encryption keys do not protect access to metadata of the disk.\n\nIf you do not provide an encryption key when creating the disk, then the disk will be encrypted using an automatically generated key and you do not need to provide a key to use the disk later." - }, - "guestOsFeatures": { - "type": "array", - "description": "A list of features to enable on the guest operating system. Applicable only for bootable images. Read Enabling guest operating system features to see a list of available options.", - "items": { - "$ref": "GuestOsFeature" - } - }, - "id": { - "type": "string", - "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", - "format": "uint64" - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of the resource. Always compute#disk for disks.", - "default": "compute#disk" - }, - "labelFingerprint": { - "type": "string", - "description": "A fingerprint for the labels being applied to this disk, which is essentially a hash of the labels set used for optimistic locking. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update labels. You must always provide an up-to-date fingerprint hash in order to update or change labels.\n\nTo see the latest fingerprint, make a get() request to retrieve a disk.", - "format": "byte" - }, - "labels": { - "type": "object", - "description": "Labels to apply to this disk. These can be later modified by the setLabels method.", - "additionalProperties": { - "type": "string" - } - }, - "lastAttachTimestamp": { - "type": "string", - "description": "[Output Only] Last attach timestamp in RFC3339 text format." - }, - "lastDetachTimestamp": { - "type": "string", - "description": "[Output Only] Last detach timestamp in RFC3339 text format." - }, - "licenseCodes": { - "type": "array", - "description": "Integer license codes indicating which licenses are attached to this disk.", - "items": { - "type": "string", - "format": "int64" - } - }, - "licenses": { - "type": "array", - "description": "Any applicable publicly visible licenses.", - "items": { - "type": "string" - } - }, - "name": { - "type": "string", - "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "annotations": { - "required": [ - "compute.disks.insert" - ] - } - }, - "options": { - "type": "string", - "description": "Internal use only." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined fully-qualified URL for this resource." - }, - "sizeGb": { - "type": "string", - "description": "Size of the persistent disk, specified in GB. You can specify this field when creating a persistent disk using the sourceImage or sourceSnapshot parameter, or specify it alone to create an empty persistent disk.\n\nIf you specify this field along with sourceImage or sourceSnapshot, the value of sizeGb must not be less than the size of the sourceImage or the size of the snapshot. Acceptable values are 1 to 65536, inclusive.", - "format": "int64" - }, - "sourceImage": { - "type": "string", - "description": "The source image used to create this disk. If the source image is deleted, this field will not be set.\n\nTo create a disk with one of the public operating system images, specify the image by its family name. For example, specify family/debian-8 to use the latest Debian 8 image:\n\nprojects/debian-cloud/global/images/family/debian-8 \n\nAlternatively, use a specific version of a public operating system image:\n\nprojects/debian-cloud/global/images/debian-8-jessie-vYYYYMMDD \n\nTo create a disk with a custom image that you created, specify the image name in the following format:\n\nglobal/images/my-custom-image \n\nYou can also specify a custom image by its image family, which returns the latest version of the image in that family. Replace the image name with family/family-name:\n\nglobal/images/family/my-image-family" - }, - "sourceImageEncryptionKey": { - "$ref": "CustomerEncryptionKey", - "description": "The customer-supplied encryption key of the source image. Required if the source image is protected by a customer-supplied encryption key." - }, - "sourceImageId": { - "type": "string", - "description": "[Output Only] The ID value of the image used to create this disk. This value identifies the exact image that was used to create this persistent disk. For example, if you created the persistent disk from an image that was later deleted and recreated under the same name, the source image ID would identify the exact version of the image that was used." - }, - "sourceSnapshot": { - "type": "string", - "description": "The source snapshot used to create this disk. You can provide this as a partial or full URL to the resource. For example, the following are valid values: \n- https://www.googleapis.com/compute/v1/projects/project/global/snapshots/snapshot \n- projects/project/global/snapshots/snapshot \n- global/snapshots/snapshot" - }, - "sourceSnapshotEncryptionKey": { - "$ref": "CustomerEncryptionKey", - "description": "The customer-supplied encryption key of the source snapshot. Required if the source snapshot is protected by a customer-supplied encryption key." - }, - "sourceSnapshotId": { - "type": "string", - "description": "[Output Only] The unique ID of the snapshot used to create this disk. This value identifies the exact snapshot that was used to create this persistent disk. For example, if you created the persistent disk from a snapshot that was later deleted and recreated under the same name, the source snapshot ID would identify the exact version of the snapshot that was used." - }, - "status": { - "type": "string", - "description": "[Output Only] The status of disk creation.", - "enum": [ - "CREATING", - "FAILED", - "READY", - "RESTORING" - ], - "enumDescriptions": [ - "", - "", - "", - "" - ] - }, - "storageType": { - "type": "string", - "description": "[Deprecated] Storage type of the persistent disk.", - "enum": [ - "HDD", - "SSD" - ], - "enumDescriptions": [ - "", - "" - ] - }, - "type": { - "type": "string", - "description": "URL of the disk type resource describing which disk type to use to create the disk. Provide this when creating the disk." - }, - "users": { - "type": "array", - "description": "[Output Only] Links to the users of the disk (attached instances) in form: project/zones/zone/instances/instance", - "items": { - "type": "string" - } - }, - "zone": { - "type": "string", - "description": "[Output Only] URL of the zone where the disk resides." - } - } - }, - "DiskAggregatedList": { - "id": "DiskAggregatedList", - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "object", - "description": "A list of DisksScopedList resources.", - "additionalProperties": { - "$ref": "DisksScopedList", - "description": "[Output Only] Name of the scope containing this set of disks." - } - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#diskAggregatedList for aggregated lists of persistent disks.", - "default": "compute#diskAggregatedList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "DiskInstantiationConfig": { - "id": "DiskInstantiationConfig", - "type": "object", - "description": "A specification of the desired way to instantiate a disk in the instance template when its created from a source instance.", - "properties": { - "autoDelete": { - "type": "boolean", - "description": "Specifies whether the disk will be auto-deleted when the instance is deleted (but not when the disk is detached from the instance)." - }, - "customImage": { - "type": "string", - "description": "The custom source image to be used to restore this disk when instantiating this instance template." - }, - "deviceName": { - "type": "string", - "description": "Specifies the device name of the disk to which the configurations apply to." - }, - "instantiateFrom": { - "type": "string", - "description": "Specifies whether to include the disk and what image to use.", - "enum": [ - "ATTACH_READ_ONLY", - "BLANK", - "CUSTOM_IMAGE", - "DEFAULT", - "DO_NOT_INCLUDE", - "SOURCE_IMAGE", - "SOURCE_IMAGE_FAMILY" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "" - ] - } - } - }, - "DiskList": { - "id": "DiskList", - "type": "object", - "description": "A list of Disk resources.", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "array", - "description": "A list of Disk resources.", - "items": { - "$ref": "Disk" - } - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#diskList for lists of disks.", - "default": "compute#diskList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "DiskMoveRequest": { - "id": "DiskMoveRequest", - "type": "object", - "properties": { - "destinationZone": { - "type": "string", - "description": "The URL of the destination zone to move the disk. This can be a full or partial URL. For example, the following are all valid URLs to a zone: \n- https://www.googleapis.com/compute/v1/projects/project/zones/zone \n- projects/project/zones/zone \n- zones/zone" - }, - "targetDisk": { - "type": "string", - "description": "The URL of the target disk to move. This can be a full or partial URL. For example, the following are all valid URLs to a disk: \n- https://www.googleapis.com/compute/v1/projects/project/zones/zone/disks/disk \n- projects/project/zones/zone/disks/disk \n- zones/zone/disks/disk" - } - } - }, - "DiskType": { - "id": "DiskType", - "type": "object", - "description": "A DiskType resource. (== resource_for beta.diskTypes ==) (== resource_for v1.diskTypes ==)", - "properties": { - "creationTimestamp": { - "type": "string", - "description": "[Output Only] Creation timestamp in RFC3339 text format." - }, - "defaultDiskSizeGb": { - "type": "string", - "description": "[Output Only] Server-defined default disk size in GB.", - "format": "int64" - }, - "deprecated": { - "$ref": "DeprecationStatus", - "description": "[Output Only] The deprecation status associated with this disk type." - }, - "description": { - "type": "string", - "description": "[Output Only] An optional description of this resource." - }, - "id": { - "type": "string", - "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", - "format": "uint64" - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of the resource. Always compute#diskType for disk types.", - "default": "compute#diskType" - }, - "name": { - "type": "string", - "description": "[Output Only] Name of the resource.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for the resource." - }, - "validDiskSize": { - "type": "string", - "description": "[Output Only] An optional textual description of the valid disk size, such as \"10GB-10TB\"." - }, - "zone": { - "type": "string", - "description": "[Output Only] URL of the zone where the disk type resides." - } - } - }, - "DiskTypeAggregatedList": { - "id": "DiskTypeAggregatedList", - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "object", - "description": "A list of DiskTypesScopedList resources.", - "additionalProperties": { - "$ref": "DiskTypesScopedList", - "description": "[Output Only] Name of the scope containing this set of disk types." - } - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#diskTypeAggregatedList.", - "default": "compute#diskTypeAggregatedList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "DiskTypeList": { - "id": "DiskTypeList", - "type": "object", - "description": "Contains a list of disk types.", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "array", - "description": "A list of DiskType resources.", - "items": { - "$ref": "DiskType" - } - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#diskTypeList for disk types.", - "default": "compute#diskTypeList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "DiskTypesScopedList": { - "id": "DiskTypesScopedList", - "type": "object", - "properties": { "diskTypes": { - "type": "array", - "description": "[Output Only] List of disk types contained in this scope.", - "items": { - "$ref": "DiskType" - } - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning which replaces the list of disk types when the list is empty.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } + "methods": { + "aggregatedList": { + "description": "Retrieves an aggregated list of disk types.", + "httpMethod": "GET", + "id": "compute.diskTypes.aggregatedList", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/aggregated/diskTypes", + "response": { + "$ref": "DiskTypeAggregatedList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "get": { + "description": "Returns the specified disk type. Get a list of available disk types by making a list() request.", + "httpMethod": "GET", + "id": "compute.diskTypes.get", + "parameterOrder": [ + "project", + "zone", + "diskType" + ], + "parameters": { + "diskType": { + "description": "Name of the disk type to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/diskTypes/{diskType}", + "response": { + "$ref": "DiskType" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "list": { + "description": "Retrieves a list of disk types available to the specified project.", + "httpMethod": "GET", + "id": "compute.diskTypes.list", + "parameterOrder": [ + "project", + "zone" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/diskTypes", + "response": { + "$ref": "DiskTypeList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." } - } - } - } - }, - "DisksResizeRequest": { - "id": "DisksResizeRequest", - "type": "object", - "properties": { - "sizeGb": { - "type": "string", - "description": "The new size of the persistent disk, which is specified in GB.", - "format": "int64" - } - } - }, - "DisksScopedList": { - "id": "DisksScopedList", - "type": "object", - "properties": { + }, "disks": { - "type": "array", - "description": "[Output Only] List of disks contained in this scope.", - "items": { - "$ref": "Disk" - } - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning which replaces the list of disks when the list is empty.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } + "methods": { + "aggregatedList": { + "description": "Retrieves an aggregated list of persistent disks.", + "httpMethod": "GET", + "id": "compute.disks.aggregatedList", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/aggregated/disks", + "response": { + "$ref": "DiskAggregatedList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "createSnapshot": { + "description": "Creates a snapshot of a specified persistent disk.", + "httpMethod": "POST", + "id": "compute.disks.createSnapshot", + "parameterOrder": [ + "project", + "zone", + "disk" + ], + "parameters": { + "disk": { + "description": "Name of the persistent disk to snapshot.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "guestFlush": { + "location": "query", + "type": "boolean" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/disks/{disk}/createSnapshot", + "request": { + "$ref": "Snapshot" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "delete": { + "description": "Deletes the specified persistent disk. Deleting a disk removes its data permanently and is irreversible. However, deleting a disk does not delete any snapshots previously made from the disk. You must separately delete snapshots.", + "httpMethod": "DELETE", + "id": "compute.disks.delete", + "parameterOrder": [ + "project", + "zone", + "disk" + ], + "parameters": { + "disk": { + "description": "Name of the persistent disk to delete.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/disks/{disk}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Returns a specified persistent disk. Get a list of available persistent disks by making a list() request.", + "httpMethod": "GET", + "id": "compute.disks.get", + "parameterOrder": [ + "project", + "zone", + "disk" + ], + "parameters": { + "disk": { + "description": "Name of the persistent disk to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/disks/{disk}", + "response": { + "$ref": "Disk" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "description": "Creates a persistent disk in the specified project using the data in the request. You can create a disk with a sourceImage, a sourceSnapshot, or create an empty 500 GB data disk by omitting all properties. You can also create a disk that is larger than the default size by specifying the sizeGb property.", + "httpMethod": "POST", + "id": "compute.disks.insert", + "parameterOrder": [ + "project", + "zone" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "sourceImage": { + "description": "Optional. Source image to restore onto a disk.", + "location": "query", + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/disks", + "request": { + "$ref": "Disk" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "description": "Retrieves a list of persistent disks contained within the specified zone.", + "httpMethod": "GET", + "id": "compute.disks.list", + "parameterOrder": [ + "project", + "zone" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/disks", + "response": { + "$ref": "DiskList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "resize": { + "description": "Resizes the specified persistent disk. You can only increase the size of the disk.", + "httpMethod": "POST", + "id": "compute.disks.resize", + "parameterOrder": [ + "project", + "zone", + "disk" + ], + "parameters": { + "disk": { + "description": "The name of the persistent disk.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/disks/{disk}/resize", + "request": { + "$ref": "DisksResizeRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setLabels": { + "description": "Sets the labels on a disk. To learn more about labels, read the Labeling Resources documentation.", + "httpMethod": "POST", + "id": "compute.disks.setLabels", + "parameterOrder": [ + "project", + "zone", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/disks/{resource}/setLabels", + "request": { + "$ref": "ZoneSetLabelsRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource.", + "httpMethod": "POST", + "id": "compute.disks.testIamPermissions", + "parameterOrder": [ + "project", + "zone", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/disks/{resource}/testIamPermissions", + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." } - } - } - } - }, - "DistributionPolicy": { - "id": "DistributionPolicy", - "type": "object", - "properties": { - "zones": { - "type": "array", - "items": { - "$ref": "DistributionPolicyZoneConfiguration" - } - } - } - }, - "DistributionPolicyZoneConfiguration": { - "id": "DistributionPolicyZoneConfiguration", - "type": "object", - "properties": { - "zone": { - "type": "string", - "description": "URL of the zone where managed instance group is spawning instances (for regional resources). Zone has to belong to the region where managed instance group is located.", - "annotations": { - "required": [ - "compute.regionInstanceGroupManagers.insert", - "compute.regionInstanceGroupManagers.update" - ] - } - } - } - }, - "Expr": { - "id": "Expr", - "type": "object", - "description": "Represents an expression text. Example:\n\ntitle: \"User account presence\" description: \"Determines whether the request has a user account\" expression: \"size(request.user) \u003e 0\"", - "properties": { - "description": { - "type": "string", - "description": "An optional description of the expression. This is a longer text which describes the expression, e.g. when hovered over it in a UI." }, - "expression": { - "type": "string", - "description": "Textual representation of an expression in Common Expression Language syntax.\n\nThe application context of the containing message determines which well-known feature set of CEL is supported." - }, - "location": { - "type": "string", - "description": "An optional string indicating the location of the expression for error reporting, e.g. a file name and a position in the file." - }, - "title": { - "type": "string", - "description": "An optional title for the expression, i.e. a short string describing its purpose. This can be used e.g. in UIs which allow to enter the expression." - } - } - }, - "Firewall": { - "id": "Firewall", - "type": "object", - "description": "Represents a Firewall resource.", - "properties": { - "allowed": { - "type": "array", - "description": "The list of ALLOW rules specified by this firewall. Each rule specifies a protocol and port-range tuple that describes a permitted connection.", - "items": { - "type": "object", - "properties": { - "IPProtocol": { - "type": "string", - "description": "The IP protocol to which this rule applies. The protocol type is required when creating a firewall rule. This value can either be one of the following well known protocol strings (tcp, udp, icmp, esp, ah, ipip, sctp), or the IP protocol number." - }, - "ports": { - "type": "array", - "description": "An optional list of ports to which this rule applies. This field is only applicable for UDP or TCP protocol. Each entry must be either an integer or a range. If not specified, this rule applies to connections through any port.\n\nExample inputs include: [\"22\"], [\"80\",\"443\"], and [\"12345-12349\"].", - "items": { - "type": "string" + "firewalls": { + "methods": { + "delete": { + "description": "Deletes the specified firewall.", + "httpMethod": "DELETE", + "id": "compute.firewalls.delete", + "parameterOrder": [ + "project", + "firewall" + ], + "parameters": { + "firewall": { + "description": "Name of the firewall rule to delete.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/firewalls/{firewall}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Returns the specified firewall.", + "httpMethod": "GET", + "id": "compute.firewalls.get", + "parameterOrder": [ + "project", + "firewall" + ], + "parameters": { + "firewall": { + "description": "Name of the firewall rule to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/firewalls/{firewall}", + "response": { + "$ref": "Firewall" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "description": "Creates a firewall rule in the specified project using the data included in the request.", + "httpMethod": "POST", + "id": "compute.firewalls.insert", + "parameterOrder": [ + "project" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/firewalls", + "request": { + "$ref": "Firewall" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "description": "Retrieves the list of firewall rules available to the specified project.", + "httpMethod": "GET", + "id": "compute.firewalls.list", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/firewalls", + "response": { + "$ref": "FirewallList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "patch": { + "description": "Updates the specified firewall rule with the data included in the request. This method supports PATCH semantics and uses the JSON merge patch format and processing rules.", + "httpMethod": "PATCH", + "id": "compute.firewalls.patch", + "parameterOrder": [ + "project", + "firewall" + ], + "parameters": { + "firewall": { + "description": "Name of the firewall rule to patch.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/firewalls/{firewall}", + "request": { + "$ref": "Firewall" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource.", + "httpMethod": "POST", + "id": "compute.firewalls.testIamPermissions", + "parameterOrder": [ + "project", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "(?:[-a-z0-9_]{0,62}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/firewalls/{resource}/testIamPermissions", + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "update": { + "description": "Updates the specified firewall rule with the data included in the request. The PUT method can only update the following fields of firewall rule: allowed, description, sourceRanges, sourceTags, targetTags.", + "httpMethod": "PUT", + "id": "compute.firewalls.update", + "parameterOrder": [ + "project", + "firewall" + ], + "parameters": { + "firewall": { + "description": "Name of the firewall rule to update.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/firewalls/{firewall}", + "request": { + "$ref": "Firewall" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] } - } } - } }, - "creationTimestamp": { - "type": "string", - "description": "[Output Only] Creation timestamp in RFC3339 text format." - }, - "denied": { - "type": "array", - "description": "The list of DENY rules specified by this firewall. Each rule specifies a protocol and port-range tuple that describes a permitted connection.", - "items": { - "type": "object", - "properties": { - "IPProtocol": { - "type": "string", - "description": "The IP protocol to which this rule applies. The protocol type is required when creating a firewall rule. This value can either be one of the following well known protocol strings (tcp, udp, icmp, esp, ah, ipip, sctp), or the IP protocol number." - }, - "ports": { - "type": "array", - "description": "An optional list of ports to which this rule applies. This field is only applicable for UDP or TCP protocol. Each entry must be either an integer or a range. If not specified, this rule applies to connections through any port.\n\nExample inputs include: [\"22\"], [\"80\",\"443\"], and [\"12345-12349\"].", - "items": { - "type": "string" - } - } - } - } - }, - "description": { - "type": "string", - "description": "An optional description of this resource. Provide this property when you create the resource." - }, - "destinationRanges": { - "type": "array", - "description": "If destination ranges are specified, the firewall will apply only to traffic that has destination IP address in these ranges. These ranges must be expressed in CIDR format. Only IPv4 is supported.", - "items": { - "type": "string" - } - }, - "direction": { - "type": "string", - "description": "Direction of traffic to which this firewall applies; default is INGRESS. Note: For INGRESS traffic, it is NOT supported to specify destinationRanges; For EGRESS traffic, it is NOT supported to specify sourceRanges OR sourceTags.", - "enum": [ - "EGRESS", - "INGRESS" - ], - "enumDescriptions": [ - "", - "" - ] - }, - "id": { - "type": "string", - "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", - "format": "uint64" - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of the resource. Always compute#firewall for firewall rules.", - "default": "compute#firewall" - }, - "name": { - "type": "string", - "description": "Name of the resource; provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "annotations": { - "required": [ - "compute.firewalls.insert", - "compute.firewalls.patch" - ] - } - }, - "network": { - "type": "string", - "description": "URL of the network resource for this firewall rule. If not specified when creating a firewall rule, the default network is used:\nglobal/networks/default\nIf you choose to specify this property, you can specify the network as a full or partial URL. For example, the following are all valid URLs: \n- https://www.googleapis.com/compute/v1/projects/myproject/global/networks/my-network \n- projects/myproject/global/networks/my-network \n- global/networks/default" - }, - "priority": { - "type": "integer", - "description": "Priority for this rule. This is an integer between 0 and 65535, both inclusive. When not specified, the value assumed is 1000. Relative priorities determine precedence of conflicting rules. Lower value of priority implies higher precedence (eg, a rule with priority 0 has higher precedence than a rule with priority 1). DENY rules take precedence over ALLOW rules having equal priority.", - "format": "int32" - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for the resource." - }, - "sourceRanges": { - "type": "array", - "description": "If source ranges are specified, the firewall will apply only to traffic that has source IP address in these ranges. These ranges must be expressed in CIDR format. One or both of sourceRanges and sourceTags may be set. If both properties are set, the firewall will apply to traffic that has source IP address within sourceRanges OR the source IP that belongs to a tag listed in the sourceTags property. The connection does not need to match both properties for the firewall to apply. Only IPv4 is supported.", - "items": { - "type": "string" - } - }, - "sourceServiceAccounts": { - "type": "array", - "description": "If source service accounts are specified, the firewall will apply only to traffic originating from an instance with a service account in this list. Source service accounts cannot be used to control traffic to an instance's external IP address because service accounts are associated with an instance, not an IP address. sourceRanges can be set at the same time as sourceServiceAccounts. If both are set, the firewall will apply to traffic that has source IP address within sourceRanges OR the source IP belongs to an instance with service account listed in sourceServiceAccount. The connection does not need to match both properties for the firewall to apply. sourceServiceAccounts cannot be used at the same time as sourceTags or targetTags.", - "items": { - "type": "string" - } - }, - "sourceTags": { - "type": "array", - "description": "If source tags are specified, the firewall rule applies only to traffic with source IPs that match the primary network interfaces of VM instances that have the tag and are in the same VPC network. Source tags cannot be used to control traffic to an instance's external IP address, it only applies to traffic between instances in the same virtual network. Because tags are associated with instances, not IP addresses. One or both of sourceRanges and sourceTags may be set. If both properties are set, the firewall will apply to traffic that has source IP address within sourceRanges OR the source IP that belongs to a tag listed in the sourceTags property. The connection does not need to match both properties for the firewall to apply.", - "items": { - "type": "string" - } - }, - "targetServiceAccounts": { - "type": "array", - "description": "A list of service accounts indicating sets of instances located in the network that may make network connections as specified in allowed[]. targetServiceAccounts cannot be used at the same time as targetTags or sourceTags. If neither targetServiceAccounts nor targetTags are specified, the firewall rule applies to all instances on the specified network.", - "items": { - "type": "string" - } - }, - "targetTags": { - "type": "array", - "description": "A list of tags that controls which instances the firewall rule applies to. If targetTags are specified, then the firewall rule applies only to instances in the VPC network that have one of those tags. If no targetTags are specified, the firewall rule applies to all instances on the specified network.", - "items": { - "type": "string" - } - } - } - }, - "FirewallList": { - "id": "FirewallList", - "type": "object", - "description": "Contains a list of firewalls.", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "array", - "description": "A list of Firewall resources.", - "items": { - "$ref": "Firewall" - } - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#firewallList for lists of firewalls.", - "default": "compute#firewallList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "FixedOrPercent": { - "id": "FixedOrPercent", - "type": "object", - "description": "Encapsulates numeric value that can be either absolute or relative.", - "properties": { - "calculated": { - "type": "integer", - "description": "[Output Only] Absolute value of VM instances calculated based on the specific mode.\n\n \n- If the value is fixed, then the caculated value is equal to the fixed value. \n- If the value is a percent, then the calculated value is percent/100 * targetSize. For example, the calculated value of a 80% of a managed instance group with 150 instances would be (80/100 * 150) = 120 VM instances. If there is a remainder, the number is rounded up.", - "format": "int32" - }, - "fixed": { - "type": "integer", - "description": "Specifies a fixed number of VM instances. This must be a positive integer.", - "format": "int32" - }, - "percent": { - "type": "integer", - "description": "Specifies a percentage of instances between 0 to 100%, inclusive. For example, specify 80 for 80%.", - "format": "int32" - } - } - }, - "ForwardingRule": { - "id": "ForwardingRule", - "type": "object", - "description": "A ForwardingRule resource. A ForwardingRule resource specifies which pool of target virtual machines to forward a packet to if it matches the given [IPAddress, IPProtocol, ports] tuple. (== resource_for beta.forwardingRules ==) (== resource_for v1.forwardingRules ==) (== resource_for beta.globalForwardingRules ==) (== resource_for v1.globalForwardingRules ==) (== resource_for beta.regionForwardingRules ==) (== resource_for v1.regionForwardingRules ==)", - "properties": { - "IPAddress": { - "type": "string", - "description": "The IP address that this forwarding rule is serving on behalf of.\n\nAddresses are restricted based on the forwarding rule's load balancing scheme (EXTERNAL or INTERNAL) and scope (global or regional).\n\nWhen the load balancing scheme is EXTERNAL, for global forwarding rules, the address must be a global IP, and for regional forwarding rules, the address must live in the same region as the forwarding rule. If this field is empty, an ephemeral IPv4 address from the same scope (global or regional) will be assigned. A regional forwarding rule supports IPv4 only. A global forwarding rule supports either IPv4 or IPv6.\n\nWhen the load balancing scheme is INTERNAL, this can only be an RFC 1918 IP address belonging to the network/subnet configured for the forwarding rule. By default, if this field is empty, an ephemeral internal IP address will be automatically allocated from the IP range of the subnet or network configured for this forwarding rule.\n\nAn address can be specified either by a literal IP address or a URL reference to an existing Address resource. The following examples are all valid: \n- 100.1.2.3 \n- https://www.googleapis.com/compute/v1/projects/project/regions/region/addresses/address \n- projects/project/regions/region/addresses/address \n- regions/region/addresses/address \n- global/addresses/address \n- address" - }, - "IPProtocol": { - "type": "string", - "description": "The IP protocol to which this rule applies. Valid options are TCP, UDP, ESP, AH, SCTP or ICMP.\n\nWhen the load balancing scheme is INTERNAL, only TCP and UDP are valid.", - "enum": [ - "AH", - "ESP", - "ICMP", - "SCTP", - "TCP", - "UDP" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "" - ] - }, - "backendService": { - "type": "string", - "description": "This field is not used for external load balancing.\n\nFor internal load balancing, this field identifies the BackendService resource to receive the matched traffic." - }, - "creationTimestamp": { - "type": "string", - "description": "[Output Only] Creation timestamp in RFC3339 text format." - }, - "description": { - "type": "string", - "description": "An optional description of this resource. Provide this property when you create the resource." - }, - "id": { - "type": "string", - "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", - "format": "uint64" - }, - "ipVersion": { - "type": "string", - "description": "The IP Version that will be used by this forwarding rule. Valid options are IPV4 or IPV6. This can only be specified for a global forwarding rule.", - "enum": [ - "IPV4", - "IPV6", - "UNSPECIFIED_VERSION" - ], - "enumDescriptions": [ - "", - "", - "" - ] - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of the resource. Always compute#forwardingRule for Forwarding Rule resources.", - "default": "compute#forwardingRule" - }, - "labelFingerprint": { - "type": "string", - "description": "A fingerprint for the labels being applied to this resource, which is essentially a hash of the labels set used for optimistic locking. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update labels. You must always provide an up-to-date fingerprint hash in order to update or change labels.\n\nTo see the latest fingerprint, make a get() request to retrieve a ForwardingRule.", - "format": "byte" - }, - "labels": { - "type": "object", - "description": "Labels to apply to this resource. These can be later modified by the setLabels method. Each label key/value pair must comply with RFC1035. Label values may be empty.", - "additionalProperties": { - "type": "string" - } - }, - "loadBalancingScheme": { - "type": "string", - "description": "This signifies what the ForwardingRule will be used for and can only take the following values: INTERNAL, EXTERNAL The value of INTERNAL means that this will be used for Internal Network Load Balancing (TCP, UDP). The value of EXTERNAL means that this will be used for External Load Balancing (HTTP(S) LB, External TCP/UDP LB, SSL Proxy)", - "enum": [ - "EXTERNAL", - "INTERNAL", - "INVALID" - ], - "enumDescriptions": [ - "", - "", - "" - ] - }, - "name": { - "type": "string", - "description": "Name of the resource; provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" - }, - "network": { - "type": "string", - "description": "This field is not used for external load balancing.\n\nFor internal load balancing, this field identifies the network that the load balanced IP should belong to for this Forwarding Rule. If this field is not specified, the default network will be used." - }, - "portRange": { - "type": "string", - "description": "This field is used along with the target field for TargetHttpProxy, TargetHttpsProxy, TargetSslProxy, TargetTcpProxy, TargetVpnGateway, TargetPool, TargetInstance.\n\nApplicable only when IPProtocol is TCP, UDP, or SCTP, only packets addressed to ports in the specified range will be forwarded to target. Forwarding rules with the same [IPAddress, IPProtocol] pair must have disjoint port ranges.\n\nSome types of forwarding target have constraints on the acceptable ports: \n- TargetHttpProxy: 80, 8080 \n- TargetHttpsProxy: 443 \n- TargetTcpProxy: 25, 43, 110, 143, 195, 443, 465, 587, 700, 993, 995, 1883, 5222 \n- TargetSslProxy: 25, 43, 110, 143, 195, 443, 465, 587, 700, 993, 995, 1883, 5222 \n- TargetVpnGateway: 500, 4500\n-" - }, - "ports": { - "type": "array", - "description": "This field is used along with the backend_service field for internal load balancing.\n\nWhen the load balancing scheme is INTERNAL, a single port or a comma separated list of ports can be configured. Only packets addressed to these ports will be forwarded to the backends configured with this forwarding rule.\n\nYou may specify a maximum of up to 5 ports.", - "items": { - "type": "string" - } - }, - "region": { - "type": "string", - "description": "[Output Only] URL of the region where the regional forwarding rule resides. This field is not applicable to global forwarding rules." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for the resource." - }, - "serviceLabel": { - "type": "string", - "description": "An optional prefix to the service name for this Forwarding Rule. If specified, will be the first label of the fully qualified service name.\n\nThe label must be 1-63 characters long, and comply with RFC1035. Specifically, the label must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.\n\nThis field is only used for internal load balancing.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" - }, - "serviceName": { - "type": "string", - "description": "[Output Only] The internal fully qualified service name for this Forwarding Rule.\n\nThis field is only used for internal load balancing." - }, - "subnetwork": { - "type": "string", - "description": "This field is not used for external load balancing.\n\nFor internal load balancing, this field identifies the subnetwork that the load balanced IP should belong to for this Forwarding Rule.\n\nIf the network specified is in auto subnet mode, this field is optional. However, if the network is in custom subnet mode, a subnetwork must be specified." - }, - "target": { - "type": "string", - "description": "The URL of the target resource to receive the matched traffic. For regional forwarding rules, this target must live in the same region as the forwarding rule. For global forwarding rules, this target must be a global load balancing resource. The forwarded traffic must be of a type appropriate to the target object.\n\nThis field is not used for internal load balancing." - } - } - }, - "ForwardingRuleAggregatedList": { - "id": "ForwardingRuleAggregatedList", - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "object", - "description": "A list of ForwardingRulesScopedList resources.", - "additionalProperties": { - "$ref": "ForwardingRulesScopedList", - "description": "Name of the scope containing this set of addresses." - } - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#forwardingRuleAggregatedList for lists of forwarding rules.", - "default": "compute#forwardingRuleAggregatedList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "ForwardingRuleList": { - "id": "ForwardingRuleList", - "type": "object", - "description": "Contains a list of ForwardingRule resources.", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "array", - "description": "A list of ForwardingRule resources.", - "items": { - "$ref": "ForwardingRule" - } - }, - "kind": { - "type": "string", - "description": "Type of resource.", - "default": "compute#forwardingRuleList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "ForwardingRulesScopedList": { - "id": "ForwardingRulesScopedList", - "type": "object", - "properties": { "forwardingRules": { - "type": "array", - "description": "List of forwarding rules contained in this scope.", - "items": { - "$ref": "ForwardingRule" - } - }, - "warning": { - "type": "object", - "description": "Informational warning which replaces the list of forwarding rules when the list is empty.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } + "methods": { + "aggregatedList": { + "description": "Retrieves an aggregated list of forwarding rules.", + "httpMethod": "GET", + "id": "compute.forwardingRules.aggregatedList", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/aggregated/forwardingRules", + "response": { + "$ref": "ForwardingRuleAggregatedList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "delete": { + "description": "Deletes the specified ForwardingRule resource.", + "httpMethod": "DELETE", + "id": "compute.forwardingRules.delete", + "parameterOrder": [ + "project", + "region", + "forwardingRule" + ], + "parameters": { + "forwardingRule": { + "description": "Name of the ForwardingRule resource to delete.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/regions/{region}/forwardingRules/{forwardingRule}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Returns the specified ForwardingRule resource.", + "httpMethod": "GET", + "id": "compute.forwardingRules.get", + "parameterOrder": [ + "project", + "region", + "forwardingRule" + ], + "parameters": { + "forwardingRule": { + "description": "Name of the ForwardingRule resource to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/forwardingRules/{forwardingRule}", + "response": { + "$ref": "ForwardingRule" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "description": "Creates a ForwardingRule resource in the specified project and region using the data included in the request.", + "httpMethod": "POST", + "id": "compute.forwardingRules.insert", + "parameterOrder": [ + "project", + "region" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/regions/{region}/forwardingRules", + "request": { + "$ref": "ForwardingRule" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "description": "Retrieves a list of ForwardingRule resources available to the specified project and region.", + "httpMethod": "GET", + "id": "compute.forwardingRules.list", + "parameterOrder": [ + "project", + "region" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/forwardingRules", + "response": { + "$ref": "ForwardingRuleList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "setLabels": { + "description": "Sets the labels on the specified resource. To learn more about labels, read the Labeling Resources documentation.", + "httpMethod": "POST", + "id": "compute.forwardingRules.setLabels", + "parameterOrder": [ + "project", + "region", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "The region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/forwardingRules/{resource}/setLabels", + "request": { + "$ref": "RegionSetLabelsRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setTarget": { + "description": "Changes target URL for forwarding rule. The new target should be of the same type as the old target.", + "httpMethod": "POST", + "id": "compute.forwardingRules.setTarget", + "parameterOrder": [ + "project", + "region", + "forwardingRule" + ], + "parameters": { + "forwardingRule": { + "description": "Name of the ForwardingRule resource in which target is to be set.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/regions/{region}/forwardingRules/{forwardingRule}/setTarget", + "request": { + "$ref": "TargetReference" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource.", + "httpMethod": "POST", + "id": "compute.forwardingRules.testIamPermissions", + "parameterOrder": [ + "project", + "region", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "The name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/forwardingRules/{resource}/testIamPermissions", + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." } - } - } - } - }, - "GlobalSetLabelsRequest": { - "id": "GlobalSetLabelsRequest", - "type": "object", - "properties": { - "labelFingerprint": { - "type": "string", - "description": "The fingerprint of the previous set of labels for this resource, used to detect conflicts. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update labels. You must always provide an up-to-date fingerprint hash when updating or changing labels. Make a get() request to the resource to get the latest fingerprint.", - "format": "byte" }, - "labels": { - "type": "object", - "description": "A list of labels to apply for this resource. Each label key & value must comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash. For example, \"webserver-frontend\": \"images\". A label value can also be empty (e.g. \"my-label\": \"\").", - "additionalProperties": { - "type": "string" - } - } - } - }, - "GuestOsFeature": { - "id": "GuestOsFeature", - "type": "object", - "description": "Guest OS features.", - "properties": { - "type": { - "type": "string", - "description": "The ID of a supported feature. Read Enabling guest operating system features to see a list of available options.", - "enum": [ - "FEATURE_TYPE_UNSPECIFIED", - "MULTI_IP_SUBNET", - "SECURE_BOOT", - "UEFI_COMPATIBLE", - "VIRTIO_SCSI_MULTIQUEUE", - "WINDOWS" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "" - ] - } - } - }, - "HTTPHealthCheck": { - "id": "HTTPHealthCheck", - "type": "object", - "properties": { - "host": { - "type": "string", - "description": "The value of the host header in the HTTP health check request. If left empty (default value), the IP on behalf of which this health check is performed will be used." - }, - "port": { - "type": "integer", - "description": "The TCP port number for the health check request. The default value is 80. Valid values are 1 through 65535.", - "format": "int32" - }, - "portName": { - "type": "string", - "description": "Port name as defined in InstanceGroup#NamedPort#name. If both port and port_name are defined, port takes precedence." - }, - "proxyHeader": { - "type": "string", - "description": "Specifies the type of proxy header to append before sending data to the backend, either NONE or PROXY_V1. The default is NONE.", - "enum": [ - "NONE", - "PROXY_V1" - ], - "enumDescriptions": [ - "", - "" - ] - }, - "requestPath": { - "type": "string", - "description": "The request path of the HTTP health check request. The default value is /." - }, - "response": { - "type": "string", - "description": "The string to match anywhere in the first 1024 bytes of the response body. If left empty (the default value), the status code determines health. The response data can only be ASCII." - } - } - }, - "HTTPSHealthCheck": { - "id": "HTTPSHealthCheck", - "type": "object", - "properties": { - "host": { - "type": "string", - "description": "The value of the host header in the HTTPS health check request. If left empty (default value), the IP on behalf of which this health check is performed will be used." - }, - "port": { - "type": "integer", - "description": "The TCP port number for the health check request. The default value is 443. Valid values are 1 through 65535.", - "format": "int32" - }, - "portName": { - "type": "string", - "description": "Port name as defined in InstanceGroup#NamedPort#name. If both port and port_name are defined, port takes precedence." - }, - "proxyHeader": { - "type": "string", - "description": "Specifies the type of proxy header to append before sending data to the backend, either NONE or PROXY_V1. The default is NONE.", - "enum": [ - "NONE", - "PROXY_V1" - ], - "enumDescriptions": [ - "", - "" - ] - }, - "requestPath": { - "type": "string", - "description": "The request path of the HTTPS health check request. The default value is /." - }, - "response": { - "type": "string", - "description": "The string to match anywhere in the first 1024 bytes of the response body. If left empty (the default value), the status code determines health. The response data can only be ASCII." - } - } - }, - "HealthCheck": { - "id": "HealthCheck", - "type": "object", - "description": "An HealthCheck resource. This resource defines a template for how individual virtual machines should be checked for health, via one of the supported protocols.", - "properties": { - "checkIntervalSec": { - "type": "integer", - "description": "How often (in seconds) to send a health check. The default value is 5 seconds.", - "format": "int32" - }, - "creationTimestamp": { - "type": "string", - "description": "[Output Only] Creation timestamp in 3339 text format." - }, - "description": { - "type": "string", - "description": "An optional description of this resource. Provide this property when you create the resource." - }, - "healthyThreshold": { - "type": "integer", - "description": "A so-far unhealthy instance will be marked healthy after this many consecutive successes. The default value is 2.", - "format": "int32" - }, - "httpHealthCheck": { - "$ref": "HTTPHealthCheck" - }, - "httpsHealthCheck": { - "$ref": "HTTPSHealthCheck" - }, - "id": { - "type": "string", - "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", - "format": "uint64" - }, - "kind": { - "type": "string", - "description": "Type of the resource.", - "default": "compute#healthCheck" - }, - "name": { - "type": "string", - "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for the resource." - }, - "sslHealthCheck": { - "$ref": "SSLHealthCheck" - }, - "tcpHealthCheck": { - "$ref": "TCPHealthCheck" - }, - "timeoutSec": { - "type": "integer", - "description": "How long (in seconds) to wait before claiming failure. The default value is 5 seconds. It is invalid for timeoutSec to have greater value than checkIntervalSec.", - "format": "int32" - }, - "type": { - "type": "string", - "description": "Specifies the type of the healthCheck, either TCP, SSL, HTTP or HTTPS. If not specified, the default is TCP. Exactly one of the protocol-specific health check field must be specified, which must match type field.", - "enum": [ - "HTTP", - "HTTPS", - "INVALID", - "SSL", - "TCP", - "UDP" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "" - ] - }, - "udpHealthCheck": { - "$ref": "UDPHealthCheck" - }, - "unhealthyThreshold": { - "type": "integer", - "description": "A so-far healthy instance will be marked unhealthy after this many consecutive failures. The default value is 2.", - "format": "int32" - } - } - }, - "HealthCheckList": { - "id": "HealthCheckList", - "type": "object", - "description": "Contains a list of HealthCheck resources.", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "array", - "description": "A list of HealthCheck resources.", - "items": { - "$ref": "HealthCheck" - } - }, - "kind": { - "type": "string", - "description": "Type of resource.", - "default": "compute#healthCheckList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } + "globalAddresses": { + "methods": { + "delete": { + "description": "Deletes the specified address resource.", + "httpMethod": "DELETE", + "id": "compute.globalAddresses.delete", + "parameterOrder": [ + "project", + "address" + ], + "parameters": { + "address": { + "description": "Name of the address resource to delete.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/addresses/{address}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Returns the specified address resource. Get a list of available addresses by making a list() request.", + "httpMethod": "GET", + "id": "compute.globalAddresses.get", + "parameterOrder": [ + "project", + "address" + ], + "parameters": { + "address": { + "description": "Name of the address resource to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/addresses/{address}", + "response": { + "$ref": "Address" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "description": "Creates an address resource in the specified project using the data included in the request.", + "httpMethod": "POST", + "id": "compute.globalAddresses.insert", + "parameterOrder": [ + "project" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/addresses", + "request": { + "$ref": "Address" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "description": "Retrieves a list of global addresses.", + "httpMethod": "GET", + "id": "compute.globalAddresses.list", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/addresses", + "response": { + "$ref": "AddressList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "setLabels": { + "description": "Sets the labels on a GlobalAddress. To learn more about labels, read the Labeling Resources documentation.", + "httpMethod": "POST", + "id": "compute.globalAddresses.setLabels", + "parameterOrder": [ + "project", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/addresses/{resource}/setLabels", + "request": { + "$ref": "GlobalSetLabelsRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource.", + "httpMethod": "POST", + "id": "compute.globalAddresses.testIamPermissions", + "parameterOrder": [ + "project", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "(?:[-a-z0-9_]{0,62}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/addresses/{resource}/testIamPermissions", + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." } - } - } - } - }, - "HealthCheckReference": { - "id": "HealthCheckReference", - "type": "object", - "description": "A full or valid partial URL to a health check. For example, the following are valid URLs: \n- https://www.googleapis.com/compute/beta/projects/project-id/global/httpHealthChecks/health-check \n- projects/project-id/global/httpHealthChecks/health-check \n- global/httpHealthChecks/health-check", - "properties": { - "healthCheck": { - "type": "string" - } - } - }, - "HealthStatus": { - "id": "HealthStatus", - "type": "object", - "properties": { - "healthState": { - "type": "string", - "description": "Health state of the instance.", - "enum": [ - "HEALTHY", - "UNHEALTHY" - ], - "enumDescriptions": [ - "", - "" - ] }, - "instance": { - "type": "string", - "description": "URL of the instance resource." - }, - "ipAddress": { - "type": "string", - "description": "The IP address represented by this resource." - }, - "port": { - "type": "integer", - "description": "The port on the instance.", - "format": "int32" - } - } - }, - "HostRule": { - "id": "HostRule", - "type": "object", - "description": "UrlMaps A host-matching rule for a URL. If matched, will use the named PathMatcher to select the BackendService.", - "properties": { - "description": { - "type": "string", - "description": "An optional description of this resource. Provide this property when you create the resource." - }, - "hosts": { - "type": "array", - "description": "The list of host patterns to match. They must be valid hostnames, except * will match any string of ([a-z0-9-.]*). In that case, * must be the first character and must be followed in the pattern by either - or ..", - "items": { - "type": "string" - } - }, - "pathMatcher": { - "type": "string", - "description": "The name of the PathMatcher to use to match the path portion of the URL if the hostRule matches the URL's host portion." - } - } - }, - "HttpHealthCheck": { - "id": "HttpHealthCheck", - "type": "object", - "description": "An HttpHealthCheck resource. This resource defines a template for how individual instances should be checked for health, via HTTP.", - "properties": { - "checkIntervalSec": { - "type": "integer", - "description": "How often (in seconds) to send a health check. The default value is 5 seconds.", - "format": "int32" - }, - "creationTimestamp": { - "type": "string", - "description": "[Output Only] Creation timestamp in RFC3339 text format." - }, - "description": { - "type": "string", - "description": "An optional description of this resource. Provide this property when you create the resource." - }, - "healthyThreshold": { - "type": "integer", - "description": "A so-far unhealthy instance will be marked healthy after this many consecutive successes. The default value is 2.", - "format": "int32" - }, - "host": { - "type": "string", - "description": "The value of the host header in the HTTP health check request. If left empty (default value), the public IP on behalf of which this health check is performed will be used." - }, - "id": { - "type": "string", - "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", - "format": "uint64" - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of the resource. Always compute#httpHealthCheck for HTTP health checks.", - "default": "compute#httpHealthCheck" - }, - "name": { - "type": "string", - "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" - }, - "port": { - "type": "integer", - "description": "The TCP port number for the HTTP health check request. The default value is 80.", - "format": "int32" - }, - "requestPath": { - "type": "string", - "description": "The request path of the HTTP health check request. The default value is /." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for the resource." - }, - "timeoutSec": { - "type": "integer", - "description": "How long (in seconds) to wait before claiming failure. The default value is 5 seconds. It is invalid for timeoutSec to have greater value than checkIntervalSec.", - "format": "int32" - }, - "unhealthyThreshold": { - "type": "integer", - "description": "A so-far healthy instance will be marked unhealthy after this many consecutive failures. The default value is 2.", - "format": "int32" - } - } - }, - "HttpHealthCheckList": { - "id": "HttpHealthCheckList", - "type": "object", - "description": "Contains a list of HttpHealthCheck resources.", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "array", - "description": "A list of HttpHealthCheck resources.", - "items": { - "$ref": "HttpHealthCheck" - } - }, - "kind": { - "type": "string", - "description": "Type of resource.", - "default": "compute#httpHealthCheckList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } + "globalForwardingRules": { + "methods": { + "delete": { + "description": "Deletes the specified GlobalForwardingRule resource.", + "httpMethod": "DELETE", + "id": "compute.globalForwardingRules.delete", + "parameterOrder": [ + "project", + "forwardingRule" + ], + "parameters": { + "forwardingRule": { + "description": "Name of the ForwardingRule resource to delete.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/forwardingRules/{forwardingRule}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Returns the specified GlobalForwardingRule resource. Get a list of available forwarding rules by making a list() request.", + "httpMethod": "GET", + "id": "compute.globalForwardingRules.get", + "parameterOrder": [ + "project", + "forwardingRule" + ], + "parameters": { + "forwardingRule": { + "description": "Name of the ForwardingRule resource to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/forwardingRules/{forwardingRule}", + "response": { + "$ref": "ForwardingRule" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "description": "Creates a GlobalForwardingRule resource in the specified project using the data included in the request.", + "httpMethod": "POST", + "id": "compute.globalForwardingRules.insert", + "parameterOrder": [ + "project" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/forwardingRules", + "request": { + "$ref": "ForwardingRule" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "description": "Retrieves a list of GlobalForwardingRule resources available to the specified project.", + "httpMethod": "GET", + "id": "compute.globalForwardingRules.list", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/forwardingRules", + "response": { + "$ref": "ForwardingRuleList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "setLabels": { + "description": "Sets the labels on the specified resource. To learn more about labels, read the Labeling Resources documentation.", + "httpMethod": "POST", + "id": "compute.globalForwardingRules.setLabels", + "parameterOrder": [ + "project", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/forwardingRules/{resource}/setLabels", + "request": { + "$ref": "GlobalSetLabelsRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setTarget": { + "description": "Changes target URL for the GlobalForwardingRule resource. The new target should be of the same type as the old target.", + "httpMethod": "POST", + "id": "compute.globalForwardingRules.setTarget", + "parameterOrder": [ + "project", + "forwardingRule" + ], + "parameters": { + "forwardingRule": { + "description": "Name of the ForwardingRule resource in which target is to be set.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/forwardingRules/{forwardingRule}/setTarget", + "request": { + "$ref": "TargetReference" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource.", + "httpMethod": "POST", + "id": "compute.globalForwardingRules.testIamPermissions", + "parameterOrder": [ + "project", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "(?:[-a-z0-9_]{0,62}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/forwardingRules/{resource}/testIamPermissions", + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." } - } - } - } - }, - "HttpsHealthCheck": { - "id": "HttpsHealthCheck", - "type": "object", - "description": "An HttpsHealthCheck resource. This resource defines a template for how individual instances should be checked for health, via HTTPS.", - "properties": { - "checkIntervalSec": { - "type": "integer", - "description": "How often (in seconds) to send a health check. The default value is 5 seconds.", - "format": "int32" }, - "creationTimestamp": { - "type": "string", - "description": "[Output Only] Creation timestamp in RFC3339 text format." - }, - "description": { - "type": "string", - "description": "An optional description of this resource. Provide this property when you create the resource." - }, - "healthyThreshold": { - "type": "integer", - "description": "A so-far unhealthy instance will be marked healthy after this many consecutive successes. The default value is 2.", - "format": "int32" - }, - "host": { - "type": "string", - "description": "The value of the host header in the HTTPS health check request. If left empty (default value), the public IP on behalf of which this health check is performed will be used." - }, - "id": { - "type": "string", - "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", - "format": "uint64" - }, - "kind": { - "type": "string", - "description": "Type of the resource.", - "default": "compute#httpsHealthCheck" - }, - "name": { - "type": "string", - "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" - }, - "port": { - "type": "integer", - "description": "The TCP port number for the HTTPS health check request. The default value is 443.", - "format": "int32" - }, - "requestPath": { - "type": "string", - "description": "The request path of the HTTPS health check request. The default value is \"/\"." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for the resource." - }, - "timeoutSec": { - "type": "integer", - "description": "How long (in seconds) to wait before claiming failure. The default value is 5 seconds. It is invalid for timeoutSec to have a greater value than checkIntervalSec.", - "format": "int32" - }, - "unhealthyThreshold": { - "type": "integer", - "description": "A so-far healthy instance will be marked unhealthy after this many consecutive failures. The default value is 2.", - "format": "int32" - } - } - }, - "HttpsHealthCheckList": { - "id": "HttpsHealthCheckList", - "type": "object", - "description": "Contains a list of HttpsHealthCheck resources.", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "array", - "description": "A list of HttpsHealthCheck resources.", - "items": { - "$ref": "HttpsHealthCheck" - } - }, - "kind": { - "type": "string", - "description": "Type of resource.", - "default": "compute#httpsHealthCheckList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } + "globalOperations": { + "methods": { + "aggregatedList": { + "description": "Retrieves an aggregated list of all operations.", + "httpMethod": "GET", + "id": "compute.globalOperations.aggregatedList", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/aggregated/operations", + "response": { + "$ref": "OperationAggregatedList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "delete": { + "description": "Deletes the specified Operations resource.", + "httpMethod": "DELETE", + "id": "compute.globalOperations.delete", + "parameterOrder": [ + "project", + "operation" + ], + "parameters": { + "operation": { + "description": "Name of the Operations resource to delete.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/operations/{operation}", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Retrieves the specified Operations resource. Get a list of operations by making a list() request.", + "httpMethod": "GET", + "id": "compute.globalOperations.get", + "parameterOrder": [ + "project", + "operation" + ], + "parameters": { + "operation": { + "description": "Name of the Operations resource to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/operations/{operation}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "list": { + "description": "Retrieves a list of Operation resources contained within the specified project.", + "httpMethod": "GET", + "id": "compute.globalOperations.list", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/operations", + "response": { + "$ref": "OperationList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." } - } - } - } - }, - "Image": { - "id": "Image", - "type": "object", - "description": "An Image resource. (== resource_for beta.images ==) (== resource_for v1.images ==)", - "properties": { - "archiveSizeBytes": { - "type": "string", - "description": "Size of the image tar.gz archive stored in Google Cloud Storage (in bytes).", - "format": "int64" }, - "creationTimestamp": { - "type": "string", - "description": "[Output Only] Creation timestamp in RFC3339 text format." - }, - "deprecated": { - "$ref": "DeprecationStatus", - "description": "The deprecation status associated with this image." - }, - "description": { - "type": "string", - "description": "An optional description of this resource. Provide this property when you create the resource." - }, - "diskSizeGb": { - "type": "string", - "description": "Size of the image when restored onto a persistent disk (in GB).", - "format": "int64" - }, - "family": { - "type": "string", - "description": "The name of the image family to which this image belongs. You can create disks by specifying an image family instead of a specific image name. The image family always returns its latest image that is not deprecated. The name of the image family must comply with RFC1035." - }, - "guestOsFeatures": { - "type": "array", - "description": "A list of features to enable on the guest operating system. Applicable only for bootable images. Read Enabling guest operating system features to see a list of available options.", - "items": { - "$ref": "GuestOsFeature" - } - }, - "id": { - "type": "string", - "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", - "format": "uint64" - }, - "imageEncryptionKey": { - "$ref": "CustomerEncryptionKey", - "description": "Encrypts the image using a customer-supplied encryption key.\n\nAfter you encrypt an image with a customer-supplied key, you must provide the same key if you use the image later (e.g. to create a disk from the image).\n\nCustomer-supplied encryption keys do not protect access to metadata of the disk.\n\nIf you do not provide an encryption key when creating the image, then the disk will be encrypted using an automatically generated key and you do not need to provide a key to use the image later." - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of the resource. Always compute#image for images.", - "default": "compute#image" - }, - "labelFingerprint": { - "type": "string", - "description": "A fingerprint for the labels being applied to this image, which is essentially a hash of the labels used for optimistic locking. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update labels. You must always provide an up-to-date fingerprint hash in order to update or change labels.\n\nTo see the latest fingerprint, make a get() request to retrieve an image.", - "format": "byte" - }, - "labels": { - "type": "object", - "description": "Labels to apply to this image. These can be later modified by the setLabels method.", - "additionalProperties": { - "type": "string" - } - }, - "licenseCodes": { - "type": "array", - "description": "Integer license codes indicating which licenses are attached to this image.", - "items": { - "type": "string", - "format": "int64" - } - }, - "licenses": { - "type": "array", - "description": "Any applicable license URI.", - "items": { - "type": "string" - } - }, - "name": { - "type": "string", - "description": "Name of the resource; provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "annotations": { - "required": [ - "compute.images.insert" - ] - } - }, - "rawDisk": { - "type": "object", - "description": "The parameters of the raw disk image.", - "properties": { - "containerType": { - "type": "string", - "description": "The format used to encode and transmit the block device, which should be TAR. This is just a container and transmission format and not a runtime format. Provided by the client when the disk image is created.", - "enum": [ - "TAR" - ], - "enumDescriptions": [ - "" - ] - }, - "sha1Checksum": { - "type": "string", - "description": "An optional SHA1 checksum of the disk image before unpackaging; provided by the client when the disk image is created.", - "pattern": "[a-f0-9]{40}" - }, - "source": { - "type": "string", - "description": "The full Google Cloud Storage URL where the disk image is stored. You must provide either this property or the sourceDisk property but not both.", - "annotations": { - "required": [ - "compute.images.insert" - ] - } - } - } - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for the resource." - }, - "sourceDisk": { - "type": "string", - "description": "URL of the source disk used to create this image. This can be a full or valid partial URL. You must provide either this property or the rawDisk.source property but not both to create an image. For example, the following are valid values: \n- https://www.googleapis.com/compute/v1/projects/project/zones/zone/disks/disk \n- projects/project/zones/zone/disks/disk \n- zones/zone/disks/disk" - }, - "sourceDiskEncryptionKey": { - "$ref": "CustomerEncryptionKey", - "description": "The customer-supplied encryption key of the source disk. Required if the source disk is protected by a customer-supplied encryption key." - }, - "sourceDiskId": { - "type": "string", - "description": "The ID value of the disk used to create this image. This value may be used to determine whether the image was taken from the current or a previous instance of a given disk name." - }, - "sourceImage": { - "type": "string", - "description": "URL of the source image used to create this image. This can be a full or valid partial URL. You must provide exactly one of: \n- this property, or \n- the rawDisk.source property, or \n- the sourceDisk property in order to create an image." - }, - "sourceImageEncryptionKey": { - "$ref": "CustomerEncryptionKey", - "description": "The customer-supplied encryption key of the source image. Required if the source image is protected by a customer-supplied encryption key." - }, - "sourceImageId": { - "type": "string", - "description": "[Output Only] The ID value of the image used to create this image. This value may be used to determine whether the image was taken from the current or a previous instance of a given image name." - }, - "sourceSnapshot": { - "type": "string", - "description": "URL of the source snapshot used to create this image. This can be a full or valid partial URL. You must provide exactly one of: \n- this property, or \n- the sourceImage property, or \n- the rawDisk.source property, or \n- the sourceDisk property in order to create an image." - }, - "sourceSnapshotEncryptionKey": { - "$ref": "CustomerEncryptionKey", - "description": "The customer-supplied encryption key of the source snapshot. Required if the source snapshot is protected by a customer-supplied encryption key." - }, - "sourceSnapshotId": { - "type": "string", - "description": "[Output Only] The ID value of the snapshot used to create this image. This value may be used to determine whether the snapshot was taken from the current or a previous instance of a given snapshot name." - }, - "sourceType": { - "type": "string", - "description": "The type of the image used to create this disk. The default and only value is RAW", - "default": "RAW", - "enum": [ - "RAW" - ], - "enumDescriptions": [ - "" - ] - }, - "status": { - "type": "string", - "description": "[Output Only] The status of the image. An image can be used to create other resources, such as instances, only after the image has been successfully created and the status is set to READY. Possible values are FAILED, PENDING, or READY.", - "enum": [ - "FAILED", - "PENDING", - "READY" - ], - "enumDescriptions": [ - "", - "", - "" - ] - } - } - }, - "ImageList": { - "id": "ImageList", - "type": "object", - "description": "Contains a list of images.", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "array", - "description": "A list of Image resources.", - "items": { - "$ref": "Image" - } - }, - "kind": { - "type": "string", - "description": "Type of resource.", - "default": "compute#imageList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } + "healthChecks": { + "methods": { + "delete": { + "description": "Deletes the specified HealthCheck resource.", + "httpMethod": "DELETE", + "id": "compute.healthChecks.delete", + "parameterOrder": [ + "project", + "healthCheck" + ], + "parameters": { + "healthCheck": { + "description": "Name of the HealthCheck resource to delete.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/healthChecks/{healthCheck}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Returns the specified HealthCheck resource. Get a list of available health checks by making a list() request.", + "httpMethod": "GET", + "id": "compute.healthChecks.get", + "parameterOrder": [ + "project", + "healthCheck" + ], + "parameters": { + "healthCheck": { + "description": "Name of the HealthCheck resource to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/healthChecks/{healthCheck}", + "response": { + "$ref": "HealthCheck" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "description": "Creates a HealthCheck resource in the specified project using the data included in the request.", + "httpMethod": "POST", + "id": "compute.healthChecks.insert", + "parameterOrder": [ + "project" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/healthChecks", + "request": { + "$ref": "HealthCheck" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "description": "Retrieves the list of HealthCheck resources available to the specified project.", + "httpMethod": "GET", + "id": "compute.healthChecks.list", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/healthChecks", + "response": { + "$ref": "HealthCheckList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "patch": { + "description": "Updates a HealthCheck resource in the specified project using the data included in the request. This method supports PATCH semantics and uses the JSON merge patch format and processing rules.", + "httpMethod": "PATCH", + "id": "compute.healthChecks.patch", + "parameterOrder": [ + "project", + "healthCheck" + ], + "parameters": { + "healthCheck": { + "description": "Name of the HealthCheck resource to patch.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/healthChecks/{healthCheck}", + "request": { + "$ref": "HealthCheck" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource.", + "httpMethod": "POST", + "id": "compute.healthChecks.testIamPermissions", + "parameterOrder": [ + "project", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "(?:[-a-z0-9_]{0,62}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/healthChecks/{resource}/testIamPermissions", + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "update": { + "description": "Updates a HealthCheck resource in the specified project using the data included in the request.", + "httpMethod": "PUT", + "id": "compute.healthChecks.update", + "parameterOrder": [ + "project", + "healthCheck" + ], + "parameters": { + "healthCheck": { + "description": "Name of the HealthCheck resource to update.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/healthChecks/{healthCheck}", + "request": { + "$ref": "HealthCheck" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." } - } - } - } - }, - "Instance": { - "id": "Instance", - "type": "object", - "description": "An Instance resource. (== resource_for beta.instances ==) (== resource_for v1.instances ==)", - "properties": { - "canIpForward": { - "type": "boolean", - "description": "Allows this instance to send and receive packets with non-matching destination or source IPs. This is required if you plan to use this instance to forward routes. For more information, see Enabling IP Forwarding." }, - "cpuPlatform": { - "type": "string", - "description": "[Output Only] The CPU platform used by this instance." - }, - "creationTimestamp": { - "type": "string", - "description": "[Output Only] Creation timestamp in RFC3339 text format." - }, - "deletionProtection": { - "type": "boolean", - "description": "Whether the resource should be protected against deletion." - }, - "description": { - "type": "string", - "description": "An optional description of this resource. Provide this property when you create the resource." - }, - "disks": { - "type": "array", - "description": "Array of disks associated with this instance. Persistent disks must be created before you can assign them.", - "items": { - "$ref": "AttachedDisk" - } - }, - "guestAccelerators": { - "type": "array", - "description": "List of the type and count of accelerator cards attached to the instance.", - "items": { - "$ref": "AcceleratorConfig" - } - }, - "id": { - "type": "string", - "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", - "format": "uint64" - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of the resource. Always compute#instance for instances.", - "default": "compute#instance" - }, - "labelFingerprint": { - "type": "string", - "description": "A fingerprint for this request, which is essentially a hash of the metadata's contents and used for optimistic locking. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update metadata. You must always provide an up-to-date fingerprint hash in order to update or change metadata.\n\nTo see the latest fingerprint, make get() request to the instance.", - "format": "byte" - }, - "labels": { - "type": "object", - "description": "Labels to apply to this instance. These can be later modified by the setLabels method.", - "additionalProperties": { - "type": "string" - } - }, - "machineType": { - "type": "string", - "description": "Full or partial URL of the machine type resource to use for this instance, in the format: zones/zone/machineTypes/machine-type. This is provided by the client when the instance is created. For example, the following is a valid partial url to a predefined machine type:\n\nzones/us-central1-f/machineTypes/n1-standard-1 \n\nTo create a custom machine type, provide a URL to a machine type in the following format, where CPUS is 1 or an even number up to 32 (2, 4, 6, ... 24, etc), and MEMORY is the total memory for this instance. Memory must be a multiple of 256 MB and must be supplied in MB (e.g. 5 GB of memory is 5120 MB):\n\nzones/zone/machineTypes/custom-CPUS-MEMORY \n\nFor example: zones/us-central1-f/machineTypes/custom-4-5120 \n\nFor a full list of restrictions, read the Specifications for custom machine types.", - "annotations": { - "required": [ - "compute.instances.insert" - ] - } - }, - "metadata": { - "$ref": "Metadata", - "description": "The metadata key/value pairs assigned to this instance. This includes custom metadata and predefined keys." - }, - "minCpuPlatform": { - "type": "string", - "description": "Specifies a minimum CPU platform for the VM instance. Applicable values are the friendly names of CPU platforms, such as minCpuPlatform: \"Intel Haswell\" or minCpuPlatform: \"Intel Sandy Bridge\"." - }, - "name": { - "type": "string", - "description": "The name of the resource, provided by the client when initially creating the resource. The resource name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "annotations": { - "required": [ - "compute.instances.insert" - ] - } - }, - "networkInterfaces": { - "type": "array", - "description": "An array of network configurations for this instance. These specify how interfaces are configured to interact with other network services, such as connecting to the internet. Multiple interfaces are supported per instance.", - "items": { - "$ref": "NetworkInterface" - } - }, - "scheduling": { - "$ref": "Scheduling", - "description": "Sets the scheduling options for this instance." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "serviceAccounts": { - "type": "array", - "description": "A list of service accounts, with their specified scopes, authorized for this instance. Only one service account per VM instance is supported.\n\nService accounts generate access tokens that can be accessed through the metadata server and used to authenticate applications on the instance. See Service Accounts for more information.", - "items": { - "$ref": "ServiceAccount" - } - }, - "startRestricted": { - "type": "boolean", - "description": "[Output Only] Whether a VM has been restricted for start because Compute Engine has detected suspicious activity." - }, - "status": { - "type": "string", - "description": "[Output Only] The status of the instance. One of the following values: PROVISIONING, STAGING, RUNNING, STOPPING, STOPPED, SUSPENDING, SUSPENDED, and TERMINATED.", - "enum": [ - "PROVISIONING", - "RUNNING", - "STAGING", - "STOPPED", - "STOPPING", - "SUSPENDED", - "SUSPENDING", - "TERMINATED" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "statusMessage": { - "type": "string", - "description": "[Output Only] An optional, human-readable explanation of the status." - }, - "tags": { - "$ref": "Tags", - "description": "A list of tags to apply to this instance. Tags are used to identify valid sources or targets for network firewalls and are specified by the client during instance creation. The tags can be later modified by the setTags method. Each tag within the list must comply with RFC1035." - }, - "zone": { - "type": "string", - "description": "[Output Only] URL of the zone where the instance resides." - } - } - }, - "InstanceAggregatedList": { - "id": "InstanceAggregatedList", - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "object", - "description": "A list of InstancesScopedList resources.", - "additionalProperties": { - "$ref": "InstancesScopedList", - "description": "[Output Only] Name of the scope containing this set of instances." - } - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#instanceAggregatedList for aggregated lists of Instance resources.", - "default": "compute#instanceAggregatedList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } + "httpHealthChecks": { + "methods": { + "delete": { + "description": "Deletes the specified HttpHealthCheck resource.", + "httpMethod": "DELETE", + "id": "compute.httpHealthChecks.delete", + "parameterOrder": [ + "project", + "httpHealthCheck" + ], + "parameters": { + "httpHealthCheck": { + "description": "Name of the HttpHealthCheck resource to delete.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/httpHealthChecks/{httpHealthCheck}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Returns the specified HttpHealthCheck resource. Get a list of available HTTP health checks by making a list() request.", + "httpMethod": "GET", + "id": "compute.httpHealthChecks.get", + "parameterOrder": [ + "project", + "httpHealthCheck" + ], + "parameters": { + "httpHealthCheck": { + "description": "Name of the HttpHealthCheck resource to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/httpHealthChecks/{httpHealthCheck}", + "response": { + "$ref": "HttpHealthCheck" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "description": "Creates a HttpHealthCheck resource in the specified project using the data included in the request.", + "httpMethod": "POST", + "id": "compute.httpHealthChecks.insert", + "parameterOrder": [ + "project" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/httpHealthChecks", + "request": { + "$ref": "HttpHealthCheck" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "description": "Retrieves the list of HttpHealthCheck resources available to the specified project.", + "httpMethod": "GET", + "id": "compute.httpHealthChecks.list", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/httpHealthChecks", + "response": { + "$ref": "HttpHealthCheckList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "patch": { + "description": "Updates a HttpHealthCheck resource in the specified project using the data included in the request. This method supports PATCH semantics and uses the JSON merge patch format and processing rules.", + "httpMethod": "PATCH", + "id": "compute.httpHealthChecks.patch", + "parameterOrder": [ + "project", + "httpHealthCheck" + ], + "parameters": { + "httpHealthCheck": { + "description": "Name of the HttpHealthCheck resource to patch.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/httpHealthChecks/{httpHealthCheck}", + "request": { + "$ref": "HttpHealthCheck" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource.", + "httpMethod": "POST", + "id": "compute.httpHealthChecks.testIamPermissions", + "parameterOrder": [ + "project", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "(?:[-a-z0-9_]{0,62}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/httpHealthChecks/{resource}/testIamPermissions", + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "update": { + "description": "Updates a HttpHealthCheck resource in the specified project using the data included in the request.", + "httpMethod": "PUT", + "id": "compute.httpHealthChecks.update", + "parameterOrder": [ + "project", + "httpHealthCheck" + ], + "parameters": { + "httpHealthCheck": { + "description": "Name of the HttpHealthCheck resource to update.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/httpHealthChecks/{httpHealthCheck}", + "request": { + "$ref": "HttpHealthCheck" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." } - } - } - } - }, - "InstanceGroup": { - "id": "InstanceGroup", - "type": "object", - "description": "InstanceGroups (== resource_for beta.instanceGroups ==) (== resource_for v1.instanceGroups ==) (== resource_for beta.regionInstanceGroups ==) (== resource_for v1.regionInstanceGroups ==)", - "properties": { - "creationTimestamp": { - "type": "string", - "description": "[Output Only] The creation timestamp for this instance group in RFC3339 text format." }, - "description": { - "type": "string", - "description": "An optional description of this resource. Provide this property when you create the resource." - }, - "fingerprint": { - "type": "string", - "description": "[Output Only] The fingerprint of the named ports. The system uses this fingerprint to detect conflicts when multiple users change the named ports concurrently.", - "format": "byte" - }, - "id": { - "type": "string", - "description": "[Output Only] A unique identifier for this instance group, generated by the server.", - "format": "uint64" - }, - "kind": { - "type": "string", - "description": "[Output Only] The resource type, which is always compute#instanceGroup for instance groups.", - "default": "compute#instanceGroup" - }, - "name": { - "type": "string", - "description": "The name of the instance group. The name must be 1-63 characters long, and comply with RFC1035.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "annotations": { - "required": [ - "compute.instanceGroupManagers.insert" - ] - } - }, - "namedPorts": { - "type": "array", - "description": "Assigns a name to a port number. For example: {name: \"http\", port: 80}\n\nThis allows the system to reference ports by the assigned name instead of a port number. Named ports can also contain multiple ports. For example: [{name: \"http\", port: 80},{name: \"http\", port: 8080}] \n\nNamed ports apply to all instances in this instance group.", - "items": { - "$ref": "NamedPort" - } - }, - "network": { - "type": "string", - "description": "The URL of the network to which all instances in the instance group belong." - }, - "region": { - "type": "string", - "description": "The URL of the region where the instance group is located (for regional resources)." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] The URL for this instance group. The server generates this URL." - }, - "size": { - "type": "integer", - "description": "[Output Only] The total number of instances in the instance group.", - "format": "int32" - }, - "subnetwork": { - "type": "string", - "description": "The URL of the subnetwork to which all instances in the instance group belong." - }, - "zone": { - "type": "string", - "description": "[Output Only] The URL of the zone where the instance group is located (for zonal resources)." - } - } - }, - "InstanceGroupAggregatedList": { - "id": "InstanceGroupAggregatedList", - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "object", - "description": "A list of InstanceGroupsScopedList resources.", - "additionalProperties": { - "$ref": "InstanceGroupsScopedList", - "description": "The name of the scope that contains this set of instance groups." - } - }, - "kind": { - "type": "string", - "description": "[Output Only] The resource type, which is always compute#instanceGroupAggregatedList for aggregated lists of instance groups.", - "default": "compute#instanceGroupAggregatedList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } + "httpsHealthChecks": { + "methods": { + "delete": { + "description": "Deletes the specified HttpsHealthCheck resource.", + "httpMethod": "DELETE", + "id": "compute.httpsHealthChecks.delete", + "parameterOrder": [ + "project", + "httpsHealthCheck" + ], + "parameters": { + "httpsHealthCheck": { + "description": "Name of the HttpsHealthCheck resource to delete.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/httpsHealthChecks/{httpsHealthCheck}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Returns the specified HttpsHealthCheck resource. Get a list of available HTTPS health checks by making a list() request.", + "httpMethod": "GET", + "id": "compute.httpsHealthChecks.get", + "parameterOrder": [ + "project", + "httpsHealthCheck" + ], + "parameters": { + "httpsHealthCheck": { + "description": "Name of the HttpsHealthCheck resource to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/httpsHealthChecks/{httpsHealthCheck}", + "response": { + "$ref": "HttpsHealthCheck" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "description": "Creates a HttpsHealthCheck resource in the specified project using the data included in the request.", + "httpMethod": "POST", + "id": "compute.httpsHealthChecks.insert", + "parameterOrder": [ + "project" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/httpsHealthChecks", + "request": { + "$ref": "HttpsHealthCheck" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "description": "Retrieves the list of HttpsHealthCheck resources available to the specified project.", + "httpMethod": "GET", + "id": "compute.httpsHealthChecks.list", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/httpsHealthChecks", + "response": { + "$ref": "HttpsHealthCheckList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "patch": { + "description": "Updates a HttpsHealthCheck resource in the specified project using the data included in the request. This method supports PATCH semantics and uses the JSON merge patch format and processing rules.", + "httpMethod": "PATCH", + "id": "compute.httpsHealthChecks.patch", + "parameterOrder": [ + "project", + "httpsHealthCheck" + ], + "parameters": { + "httpsHealthCheck": { + "description": "Name of the HttpsHealthCheck resource to patch.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/httpsHealthChecks/{httpsHealthCheck}", + "request": { + "$ref": "HttpsHealthCheck" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource.", + "httpMethod": "POST", + "id": "compute.httpsHealthChecks.testIamPermissions", + "parameterOrder": [ + "project", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "(?:[-a-z0-9_]{0,62}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/httpsHealthChecks/{resource}/testIamPermissions", + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "update": { + "description": "Updates a HttpsHealthCheck resource in the specified project using the data included in the request.", + "httpMethod": "PUT", + "id": "compute.httpsHealthChecks.update", + "parameterOrder": [ + "project", + "httpsHealthCheck" + ], + "parameters": { + "httpsHealthCheck": { + "description": "Name of the HttpsHealthCheck resource to update.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/httpsHealthChecks/{httpsHealthCheck}", + "request": { + "$ref": "HttpsHealthCheck" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." } - } - } - } - }, - "InstanceGroupList": { - "id": "InstanceGroupList", - "type": "object", - "description": "A list of InstanceGroup resources.", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." }, - "items": { - "type": "array", - "description": "A list of InstanceGroup resources.", - "items": { - "$ref": "InstanceGroup" - } - }, - "kind": { - "type": "string", - "description": "[Output Only] The resource type, which is always compute#instanceGroupList for instance group lists.", - "default": "compute#instanceGroupList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } + "images": { + "methods": { + "delete": { + "description": "Deletes the specified image.", + "httpMethod": "DELETE", + "id": "compute.images.delete", + "parameterOrder": [ + "project", + "image" + ], + "parameters": { + "image": { + "description": "Name of the image resource to delete.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/images/{image}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "deprecate": { + "description": "Sets the deprecation status of an image.\n\nIf an empty request body is given, clears the deprecation status instead.", + "httpMethod": "POST", + "id": "compute.images.deprecate", + "parameterOrder": [ + "project", + "image" + ], + "parameters": { + "image": { + "description": "Image name.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/images/{image}/deprecate", + "request": { + "$ref": "DeprecationStatus" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Returns the specified image. Get a list of available images by making a list() request.", + "httpMethod": "GET", + "id": "compute.images.get", + "parameterOrder": [ + "project", + "image" + ], + "parameters": { + "image": { + "description": "Name of the image resource to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/images/{image}", + "response": { + "$ref": "Image" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "getFromFamily": { + "description": "Returns the latest image that is part of an image family and is not deprecated.", + "httpMethod": "GET", + "id": "compute.images.getFromFamily", + "parameterOrder": [ + "project", + "family" + ], + "parameters": { + "family": { + "description": "Name of the image family to search for.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/images/family/{family}", + "response": { + "$ref": "Image" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "description": "Creates an image in the specified project using the data included in the request.", + "httpMethod": "POST", + "id": "compute.images.insert", + "parameterOrder": [ + "project" + ], + "parameters": { + "forceCreate": { + "description": "Force image creation if true.", + "location": "query", + "type": "boolean" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/images", + "request": { + "$ref": "Image" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/devstorage.full_control", + "https://www.googleapis.com/auth/devstorage.read_only", + "https://www.googleapis.com/auth/devstorage.read_write" + ] + }, + "list": { + "description": "Retrieves the list of custom images available to the specified project. Custom images are images you create that belong to your project. This method does not get any images that belong to other projects, including publicly-available images, like Debian 8. If you want to get a list of publicly-available images, use this method to make a request to the respective image project, such as debian-cloud or windows-cloud.", + "httpMethod": "GET", + "id": "compute.images.list", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/images", + "response": { + "$ref": "ImageList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "setLabels": { + "description": "Sets the labels on an image. To learn more about labels, read the Labeling Resources documentation.", + "httpMethod": "POST", + "id": "compute.images.setLabels", + "parameterOrder": [ + "project", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/images/{resource}/setLabels", + "request": { + "$ref": "GlobalSetLabelsRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource.", + "httpMethod": "POST", + "id": "compute.images.testIamPermissions", + "parameterOrder": [ + "project", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "(?:[-a-z0-9_]{0,62}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/images/{resource}/testIamPermissions", + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." } - } - } - } - }, - "InstanceGroupManager": { - "id": "InstanceGroupManager", - "type": "object", - "description": "An Instance Group Manager resource. (== resource_for beta.instanceGroupManagers ==) (== resource_for v1.instanceGroupManagers ==) (== resource_for beta.regionInstanceGroupManagers ==) (== resource_for v1.regionInstanceGroupManagers ==)", - "properties": { - "autoHealingPolicies": { - "type": "array", - "description": "The autohealing policy for this managed instance group. You can specify only one value.", - "items": { - "$ref": "InstanceGroupManagerAutoHealingPolicy" - } }, - "baseInstanceName": { - "type": "string", - "description": "The base instance name to use for instances in this group. The value must be 1-58 characters long. Instances are named by appending a hyphen and a random four-character string to the base instance name. The base instance name must comply with RFC1035.", - "pattern": "[a-z][-a-z0-9]{0,57}", - "annotations": { - "required": [ - "compute.instanceGroupManagers.insert" - ] - } - }, - "creationTimestamp": { - "type": "string", - "description": "[Output Only] The creation timestamp for this managed instance group in RFC3339 text format." - }, - "currentActions": { - "$ref": "InstanceGroupManagerActionsSummary", - "description": "[Output Only] The list of instance actions and the number of instances in this managed instance group that are scheduled for each of those actions." - }, - "description": { - "type": "string", - "description": "An optional description of this resource. Provide this property when you create the resource." - }, - "distributionPolicy": { - "$ref": "DistributionPolicy", - "description": "Policy valid only for regional managed instance groups." - }, - "failoverAction": { - "type": "string", - "description": "The action to perform in case of zone failure. Only one value is supported, NO_FAILOVER. The default is NO_FAILOVER.", - "enum": [ - "NO_FAILOVER", - "UNKNOWN" - ], - "enumDescriptions": [ - "", - "" - ] - }, - "fingerprint": { - "type": "string", - "description": "[Output Only] The fingerprint of the resource data. You can use this optional field for optimistic locking when you update the resource.", - "format": "byte" - }, - "id": { - "type": "string", - "description": "[Output Only] A unique identifier for this resource type. The server generates this identifier.", - "format": "uint64" - }, - "instanceGroup": { - "type": "string", - "description": "[Output Only] The URL of the Instance Group resource." - }, - "instanceTemplate": { - "type": "string", - "description": "The URL of the instance template that is specified for this managed instance group. The group uses this template to create all new instances in the managed instance group." - }, - "kind": { - "type": "string", - "description": "[Output Only] The resource type, which is always compute#instanceGroupManager for managed instance groups.", - "default": "compute#instanceGroupManager" - }, - "name": { - "type": "string", - "description": "The name of the managed instance group. The name must be 1-63 characters long, and comply with RFC1035.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "annotations": { - "required": [ - "compute.instanceGroupManagers.insert", - "compute.regionInstanceGroupManagers.insert" - ] - } - }, - "namedPorts": { - "type": "array", - "description": "Named ports configured for the Instance Groups complementary to this Instance Group Manager.", - "items": { - "$ref": "NamedPort" - } - }, - "pendingActions": { - "$ref": "InstanceGroupManagerPendingActionsSummary", - "description": "[Output Only] The list of instance actions and the number of instances in this managed instance group that are pending for each of those actions." - }, - "region": { - "type": "string", - "description": "[Output Only] The URL of the region where the managed instance group resides (for regional resources)." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] The URL for this managed instance group. The server defines this URL." - }, - "serviceAccount": { - "type": "string", - "description": "[Output Only] The service account to be used as credentials for all operations performed by the managed instance group on instances. The service accounts needs all permissions required to create and delete instances. By default, the service account {projectNumber}@cloudservices.gserviceaccount.com is used." - }, - "targetPools": { - "type": "array", - "description": "The URLs for all TargetPool resources to which instances in the instanceGroup field are added. The target pools automatically apply to all of the instances in the managed instance group.", - "items": { - "type": "string" - } - }, - "targetSize": { - "type": "integer", - "description": "The target number of running instances for this managed instance group. Deleting or abandoning instances reduces this number. Resizing the group changes this number.", - "format": "int32", - "annotations": { - "required": [ - "compute.instanceGroupManagers.insert", - "compute.regionInstanceGroupManagers.insert" - ] - } - }, - "updatePolicy": { - "$ref": "InstanceGroupManagerUpdatePolicy", - "description": "The update policy for this managed instance group." - }, - "versions": { - "type": "array", - "description": "Specifies the instance templates used by this managed instance group to create instances.\n\nEach version is defined by an instanceTemplate. Every template can appear at most once per instance group. This field overrides the top-level instanceTemplate field. Read more about the relationships between these fields. Exactly one version must leave the targetSize field unset. That version will be applied to all remaining instances. For more information, read about canary updates.", - "items": { - "$ref": "InstanceGroupManagerVersion" - } - }, - "zone": { - "type": "string", - "description": "[Output Only] The URL of the zone where the managed instance group is located (for zonal resources)." - } - } - }, - "InstanceGroupManagerActionsSummary": { - "id": "InstanceGroupManagerActionsSummary", - "type": "object", - "properties": { - "abandoning": { - "type": "integer", - "description": "[Output Only] The total number of instances in the managed instance group that are scheduled to be abandoned. Abandoning an instance removes it from the managed instance group without deleting it.", - "format": "int32" - }, - "creating": { - "type": "integer", - "description": "[Output Only] The number of instances in the managed instance group that are scheduled to be created or are currently being created. If the group fails to create any of these instances, it tries again until it creates the instance successfully.\n\nIf you have disabled creation retries, this field will not be populated; instead, the creatingWithoutRetries field will be populated.", - "format": "int32" - }, - "creatingWithoutRetries": { - "type": "integer", - "description": "[Output Only] The number of instances that the managed instance group will attempt to create. The group attempts to create each instance only once. If the group fails to create any of these instances, it decreases the group's targetSize value accordingly.", - "format": "int32" - }, - "deleting": { - "type": "integer", - "description": "[Output Only] The number of instances in the managed instance group that are scheduled to be deleted or are currently being deleted.", - "format": "int32" - }, - "none": { - "type": "integer", - "description": "[Output Only] The number of instances in the managed instance group that are running and have no scheduled actions.", - "format": "int32" - }, - "recreating": { - "type": "integer", - "description": "[Output Only] The number of instances in the managed instance group that are scheduled to be recreated or are currently being being recreated. Recreating an instance deletes the existing root persistent disk and creates a new disk from the image that is defined in the instance template.", - "format": "int32" - }, - "refreshing": { - "type": "integer", - "description": "[Output Only] The number of instances in the managed instance group that are being reconfigured with properties that do not require a restart or a recreate action. For example, setting or removing target pools for the instance.", - "format": "int32" - }, - "restarting": { - "type": "integer", - "description": "[Output Only] The number of instances in the managed instance group that are scheduled to be restarted or are currently being restarted.", - "format": "int32" - }, - "verifying": { - "type": "integer", - "description": "[Output Only] The number of instances in the managed instance group that are being verified. More details regarding verification process are covered in the documentation of ManagedInstance.InstanceAction.VERIFYING enum field.", - "format": "int32" - } - } - }, - "InstanceGroupManagerAggregatedList": { - "id": "InstanceGroupManagerAggregatedList", - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "object", - "description": "A list of InstanceGroupManagersScopedList resources.", - "additionalProperties": { - "$ref": "InstanceGroupManagersScopedList", - "description": "[Output Only] The name of the scope that contains this set of managed instance groups." - } - }, - "kind": { - "type": "string", - "description": "[Output Only] The resource type, which is always compute#instanceGroupManagerAggregatedList for an aggregated list of managed instance groups.", - "default": "compute#instanceGroupManagerAggregatedList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "InstanceGroupManagerAutoHealingPolicy": { - "id": "InstanceGroupManagerAutoHealingPolicy", - "type": "object", - "properties": { - "healthCheck": { - "type": "string", - "description": "The URL for the health check that signals autohealing." - }, - "initialDelaySec": { - "type": "integer", - "description": "The number of seconds that the managed instance group waits before it applies autohealing policies to new instances or recently recreated instances. This initial delay allows instances to initialize and run their startup scripts before the instance group determines that they are UNHEALTHY. This prevents the managed instance group from recreating its instances prematurely. This value must be from range [0, 3600].", - "format": "int32" - } - } - }, - "InstanceGroupManagerList": { - "id": "InstanceGroupManagerList", - "type": "object", - "description": "[Output Only] A list of managed instance groups.", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "array", - "description": "A list of InstanceGroupManager resources.", - "items": { - "$ref": "InstanceGroupManager" - } - }, - "kind": { - "type": "string", - "description": "[Output Only] The resource type, which is always compute#instanceGroupManagerList for a list of managed instance groups.", - "default": "compute#instanceGroupManagerList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "InstanceGroupManagerPendingActionsSummary": { - "id": "InstanceGroupManagerPendingActionsSummary", - "type": "object", - "properties": { - "creating": { - "type": "integer", - "description": "[Output Only] The number of instances in the managed instance group that are pending to be created.", - "format": "int32" - }, - "deleting": { - "type": "integer", - "description": "[Output Only] The number of instances in the managed instance group that are pending to be deleted.", - "format": "int32" - }, - "recreating": { - "type": "integer", - "description": "[Output Only] The number of instances in the managed instance group that are pending to be recreated.", - "format": "int32" - }, - "restarting": { - "type": "integer", - "description": "[Output Only] The number of instances in the managed instance group that are pending to be restarted.", - "format": "int32" - } - } - }, - "InstanceGroupManagerUpdatePolicy": { - "id": "InstanceGroupManagerUpdatePolicy", - "type": "object", - "properties": { - "maxSurge": { - "$ref": "FixedOrPercent", - "description": "The maximum number of instances that can be created above the specified targetSize during the update process. By default, a fixed value of 1 is used. This value can be either a fixed number or a percentage if the instance group has 10 or more instances. If you set a percentage, the number of instances will be rounded up if necessary.\n\nAt least one of either maxSurge or maxUnavailable must be greater than 0. Learn more about maxSurge." - }, - "maxUnavailable": { - "$ref": "FixedOrPercent", - "description": "The maximum number of instances that can be unavailable during the update process. An instance is considered available if all of the following conditions are satisfied:\n\n \n- The instance's status is RUNNING. \n- If there is a health check on the instance group, the instance's liveness health check result must be HEALTHY at least once. If there is no health check on the group, then the instance only needs to have a status of RUNNING to be considered available. By default, a fixed value of 1 is used. This value can be either a fixed number or a percentage if the instance group has 10 or more instances. If you set a percentage, the number of instances will be rounded up if necessary.\n\nAt least one of either maxSurge or maxUnavailable must be greater than 0. Learn more about maxUnavailable." - }, - "minReadySec": { - "type": "integer", - "description": "Minimum number of seconds to wait for after a newly created instance becomes available. This value must be from range [0, 3600].", - "format": "int32" - }, - "minimalAction": { - "type": "string", - "description": "Minimal action to be taken on an instance. You can specify either RESTART to restart existing instances or REPLACE to delete and create new instances from the target template. If you specify a code\u003eRESTART, the Updater will attempt to perform that action only. However, if the Updater determines that the minimal action you specify is not enough to perform the update, it might perform a more disruptive action.", - "enum": [ - "REPLACE", - "RESTART" - ], - "enumDescriptions": [ - "", - "" - ] - }, - "type": { - "type": "string", - "enum": [ - "OPPORTUNISTIC", - "PROACTIVE" - ], - "enumDescriptions": [ - "", - "" - ] - } - } - }, - "InstanceGroupManagerVersion": { - "id": "InstanceGroupManagerVersion", - "type": "object", - "properties": { - "instanceTemplate": { - "type": "string" - }, - "name": { - "type": "string", - "description": "Name of the version. Unique among all versions in the scope of this managed instance group." - }, - "targetSize": { - "$ref": "FixedOrPercent", - "description": "Specifies the intended number of instances to be created from the instanceTemplate. The final number of instances created from the template will be equal to: \n- If expressed as a fixed number, the minimum of either targetSize.fixed or instanceGroupManager.targetSize is used. \n- if expressed as a percent, the targetSize would be (targetSize.percent/100 * InstanceGroupManager.targetSize) If there is a remainder, the number is rounded up. If unset, this version will update any remaining instances not updated by another version. Read Starting a canary update for more information." - } - } - }, - "InstanceGroupManagersAbandonInstancesRequest": { - "id": "InstanceGroupManagersAbandonInstancesRequest", - "type": "object", - "properties": { - "instances": { - "type": "array", - "description": "The URLs of one or more instances to abandon. This can be a full URL or a partial URL, such as zones/[ZONE]/instances/[INSTANCE_NAME].", - "items": { - "type": "string" - } - } - } - }, - "InstanceGroupManagersDeleteInstancesRequest": { - "id": "InstanceGroupManagersDeleteInstancesRequest", - "type": "object", - "properties": { - "instances": { - "type": "array", - "description": "The URLs of one or more instances to delete. This can be a full URL or a partial URL, such as zones/[ZONE]/instances/[INSTANCE_NAME].", - "items": { - "type": "string" - } - } - } - }, - "InstanceGroupManagersListManagedInstancesResponse": { - "id": "InstanceGroupManagersListManagedInstancesResponse", - "type": "object", - "properties": { - "managedInstances": { - "type": "array", - "description": "[Output Only] The list of instances in the managed instance group.", - "items": { - "$ref": "ManagedInstance" - } - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - } - } - }, - "InstanceGroupManagersRecreateInstancesRequest": { - "id": "InstanceGroupManagersRecreateInstancesRequest", - "type": "object", - "properties": { - "instances": { - "type": "array", - "description": "The URLs of one or more instances to recreate. This can be a full URL or a partial URL, such as zones/[ZONE]/instances/[INSTANCE_NAME].", - "items": { - "type": "string" - } - } - } - }, - "InstanceGroupManagersResizeAdvancedRequest": { - "id": "InstanceGroupManagersResizeAdvancedRequest", - "type": "object", - "properties": { - "noCreationRetries": { - "type": "boolean", - "description": "If this flag is true, the managed instance group attempts to create all instances initiated by this resize request only once. If there is an error during creation, the managed instance group does not retry create this instance, and we will decrease the targetSize of the request instead. If the flag is false, the group attemps to recreate each instance continuously until it succeeds.\n\nThis flag matters only in the first attempt of creation of an instance. After an instance is successfully created while this flag is enabled, the instance behaves the same way as all the other instances created with a regular resize request. In particular, if a running instance dies unexpectedly at a later time and needs to be recreated, this mode does not affect the recreation behavior in that scenario.\n\nThis flag is applicable only to the current resize request. It does not influence other resize requests in any way.\n\nYou can see which instances is being creating in which mode by calling the get or listManagedInstances API." - }, - "targetSize": { - "type": "integer", - "description": "The number of running instances that the managed instance group should maintain at any given time. The group automatically adds or removes instances to maintain the number of instances specified by this parameter.", - "format": "int32" - } - } - }, - "InstanceGroupManagersScopedList": { - "id": "InstanceGroupManagersScopedList", - "type": "object", - "properties": { "instanceGroupManagers": { - "type": "array", - "description": "[Output Only] The list of managed instance groups that are contained in the specified project and zone.", - "items": { - "$ref": "InstanceGroupManager" - } - }, - "warning": { - "type": "object", - "description": "[Output Only] The warning that replaces the list of managed instance groups when the list is empty.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } + "methods": { + "abandonInstances": { + "description": "Schedules a group action to remove the specified instances from the managed instance group. Abandoning an instance does not delete the instance, but it does remove the instance from any target pools that are applied by the managed instance group. This method reduces the targetSize of the managed instance group by the number of instances that you abandon. This operation is marked as DONE when the action is scheduled even if the instances have not yet been removed from the group. You must separately verify the status of the abandoning action with the listmanagedinstances method.\n\nIf the group is part of a backend service that has enabled connection draining, it can take up to 60 seconds after the connection draining duration has elapsed before the VM instance is removed or deleted.\n\nYou can specify a maximum of 1000 instances with this method per request.", + "httpMethod": "POST", + "id": "compute.instanceGroupManagers.abandonInstances", + "parameterOrder": [ + "project", + "zone", + "instanceGroupManager" + ], + "parameters": { + "instanceGroupManager": { + "description": "The name of the managed instance group.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "The name of the zone where the managed instance group is located.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/abandonInstances", + "request": { + "$ref": "InstanceGroupManagersAbandonInstancesRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "aggregatedList": { + "description": "Retrieves the list of managed instance groups and groups them by zone.", + "httpMethod": "GET", + "id": "compute.instanceGroupManagers.aggregatedList", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/aggregated/instanceGroupManagers", + "response": { + "$ref": "InstanceGroupManagerAggregatedList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "delete": { + "description": "Deletes the specified managed instance group and all of the instances in that group. Note that the instance group must not belong to a backend service. Read Deleting an instance group for more information.", + "httpMethod": "DELETE", + "id": "compute.instanceGroupManagers.delete", + "parameterOrder": [ + "project", + "zone", + "instanceGroupManager" + ], + "parameters": { + "instanceGroupManager": { + "description": "The name of the managed instance group to delete.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "The name of the zone where the managed instance group is located.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "deleteInstances": { + "description": "Schedules a group action to delete the specified instances in the managed instance group. The instances are also removed from any target pools of which they were a member. This method reduces the targetSize of the managed instance group by the number of instances that you delete. This operation is marked as DONE when the action is scheduled even if the instances are still being deleted. You must separately verify the status of the deleting action with the listmanagedinstances method.\n\nIf the group is part of a backend service that has enabled connection draining, it can take up to 60 seconds after the connection draining duration has elapsed before the VM instance is removed or deleted.\n\nYou can specify a maximum of 1000 instances with this method per request.", + "httpMethod": "POST", + "id": "compute.instanceGroupManagers.deleteInstances", + "parameterOrder": [ + "project", + "zone", + "instanceGroupManager" + ], + "parameters": { + "instanceGroupManager": { + "description": "The name of the managed instance group.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "The name of the zone where the managed instance group is located.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/deleteInstances", + "request": { + "$ref": "InstanceGroupManagersDeleteInstancesRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Returns all of the details about the specified managed instance group. Get a list of available managed instance groups by making a list() request.", + "httpMethod": "GET", + "id": "compute.instanceGroupManagers.get", + "parameterOrder": [ + "project", + "zone", + "instanceGroupManager" + ], + "parameters": { + "instanceGroupManager": { + "description": "The name of the managed instance group.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "zone": { + "description": "The name of the zone where the managed instance group is located.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}", + "response": { + "$ref": "InstanceGroupManager" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "description": "Creates a managed instance group using the information that you specify in the request. After the group is created, it schedules an action to create instances in the group using the specified instance template. This operation is marked as DONE when the group is created even if the instances in the group have not yet been created. You must separately verify the status of the individual instances with the listmanagedinstances method.\n\nA managed instance group can have up to 1000 VM instances per group. Please contact Cloud Support if you need an increase in this limit.", + "httpMethod": "POST", + "id": "compute.instanceGroupManagers.insert", + "parameterOrder": [ + "project", + "zone" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "The name of the zone where you want to create the managed instance group.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instanceGroupManagers", + "request": { + "$ref": "InstanceGroupManager" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "description": "Retrieves a list of managed instance groups that are contained within the specified project and zone.", + "httpMethod": "GET", + "id": "compute.instanceGroupManagers.list", + "parameterOrder": [ + "project", + "zone" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "zone": { + "description": "The name of the zone where the managed instance group is located.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instanceGroupManagers", + "response": { + "$ref": "InstanceGroupManagerList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "listManagedInstances": { + "description": "Lists all of the instances in the managed instance group. Each instance in the list has a currentAction, which indicates the action that the managed instance group is performing on the instance. For example, if the group is still creating an instance, the currentAction is CREATING. If a previous action failed, the list displays the errors for that failed action.", + "httpMethod": "POST", + "id": "compute.instanceGroupManagers.listManagedInstances", + "parameterOrder": [ + "project", + "zone", + "instanceGroupManager" + ], + "parameters": { + "filter": { + "location": "query", + "type": "string" + }, + "instanceGroupManager": { + "description": "The name of the managed instance group.", + "location": "path", + "required": true, + "type": "string" + }, + "maxResults": { + "default": "500", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "order_by": { + "location": "query", + "type": "string" + }, + "pageToken": { + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "zone": { + "description": "The name of the zone where the managed instance group is located.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/listManagedInstances", + "response": { + "$ref": "InstanceGroupManagersListManagedInstancesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "patch": { + "description": "Updates a managed instance group using the information that you specify in the request. This operation is marked as DONE when the group is patched even if the instances in the group are still in the process of being patched. You must separately verify the status of the individual instances with the listManagedInstances method. This method supports PATCH semantics and uses the JSON merge patch format and processing rules.", + "httpMethod": "PATCH", + "id": "compute.instanceGroupManagers.patch", + "parameterOrder": [ + "project", + "zone", + "instanceGroupManager" + ], + "parameters": { + "instanceGroupManager": { + "description": "The name of the instance group manager.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "The name of the zone where you want to create the managed instance group.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}", + "request": { + "$ref": "InstanceGroupManager" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "recreateInstances": { + "description": "Schedules a group action to recreate the specified instances in the managed instance group. The instances are deleted and recreated using the current instance template for the managed instance group. This operation is marked as DONE when the action is scheduled even if the instances have not yet been recreated. You must separately verify the status of the recreating action with the listmanagedinstances method.\n\nIf the group is part of a backend service that has enabled connection draining, it can take up to 60 seconds after the connection draining duration has elapsed before the VM instance is removed or deleted.\n\nYou can specify a maximum of 1000 instances with this method per request.", + "httpMethod": "POST", + "id": "compute.instanceGroupManagers.recreateInstances", + "parameterOrder": [ + "project", + "zone", + "instanceGroupManager" + ], + "parameters": { + "instanceGroupManager": { + "description": "The name of the managed instance group.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "The name of the zone where the managed instance group is located.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/recreateInstances", + "request": { + "$ref": "InstanceGroupManagersRecreateInstancesRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "resize": { + "description": "Resizes the managed instance group. If you increase the size, the group creates new instances using the current instance template. If you decrease the size, the group deletes instances. The resize operation is marked DONE when the resize actions are scheduled even if the group has not yet added or deleted any instances. You must separately verify the status of the creating or deleting actions with the listmanagedinstances method.\n\nIf the group is part of a backend service that has enabled connection draining, it can take up to 60 seconds after the connection draining duration has elapsed before the VM instance is removed or deleted.", + "httpMethod": "POST", + "id": "compute.instanceGroupManagers.resize", + "parameterOrder": [ + "project", + "zone", + "instanceGroupManager", + "size" + ], + "parameters": { + "instanceGroupManager": { + "description": "The name of the managed instance group.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "size": { + "description": "The number of running instances that the managed instance group should maintain at any given time. The group automatically adds or removes instances to maintain the number of instances specified by this parameter.", + "format": "int32", + "location": "query", + "required": true, + "type": "integer" + }, + "zone": { + "description": "The name of the zone where the managed instance group is located.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/resize", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "resizeAdvanced": { + "description": "Resizes the managed instance group with advanced configuration options like disabling creation retries. This is an extended version of the resize method.\n\nIf you increase the size of the instance group, the group creates new instances using the current instance template. If you decrease the size, the group deletes instances. The resize operation is marked DONE when the resize actions are scheduled even if the group has not yet added or deleted any instances. You must separately verify the status of the creating, creatingWithoutRetries, or deleting actions with the get or listmanagedinstances method.\n\nIf the group is part of a backend service that has enabled connection draining, it can take up to 60 seconds after the connection draining duration has elapsed before the VM instance is removed or deleted.", + "httpMethod": "POST", + "id": "compute.instanceGroupManagers.resizeAdvanced", + "parameterOrder": [ + "project", + "zone", + "instanceGroupManager" + ], + "parameters": { + "instanceGroupManager": { + "description": "The name of the managed instance group.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "The name of the zone where the managed instance group is located.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/resizeAdvanced", + "request": { + "$ref": "InstanceGroupManagersResizeAdvancedRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setAutoHealingPolicies": { + "description": "Modifies the autohealing policies.", + "httpMethod": "POST", + "id": "compute.instanceGroupManagers.setAutoHealingPolicies", + "parameterOrder": [ + "project", + "zone", + "instanceGroupManager" + ], + "parameters": { + "instanceGroupManager": { + "description": "The name of the instance group manager.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "The name of the zone where the managed instance group is located.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/setAutoHealingPolicies", + "request": { + "$ref": "InstanceGroupManagersSetAutoHealingRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setInstanceTemplate": { + "description": "Specifies the instance template to use when creating new instances in this group. The templates for existing instances in the group do not change unless you recreate them.", + "httpMethod": "POST", + "id": "compute.instanceGroupManagers.setInstanceTemplate", + "parameterOrder": [ + "project", + "zone", + "instanceGroupManager" + ], + "parameters": { + "instanceGroupManager": { + "description": "The name of the managed instance group.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "The name of the zone where the managed instance group is located.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/setInstanceTemplate", + "request": { + "$ref": "InstanceGroupManagersSetInstanceTemplateRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setTargetPools": { + "description": "Modifies the target pools to which all instances in this managed instance group are assigned. The target pools automatically apply to all of the instances in the managed instance group. This operation is marked DONE when you make the request even if the instances have not yet been added to their target pools. The change might take some time to apply to all of the instances in the group depending on the size of the group.", + "httpMethod": "POST", + "id": "compute.instanceGroupManagers.setTargetPools", + "parameterOrder": [ + "project", + "zone", + "instanceGroupManager" + ], + "parameters": { + "instanceGroupManager": { + "description": "The name of the managed instance group.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "The name of the zone where the managed instance group is located.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/setTargetPools", + "request": { + "$ref": "InstanceGroupManagersSetTargetPoolsRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource.", + "httpMethod": "POST", + "id": "compute.instanceGroupManagers.testIamPermissions", + "parameterOrder": [ + "project", + "zone", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instanceGroupManagers/{resource}/testIamPermissions", + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "update": { + "description": "Updates a managed instance group using the information that you specify in the request. This operation is marked as DONE when the group is updated even if the instances in the group have not yet been updated. You must separately verify the status of the individual instances with the listManagedInstances method.", + "httpMethod": "PUT", + "id": "compute.instanceGroupManagers.update", + "parameterOrder": [ + "project", + "zone", + "instanceGroupManager" + ], + "parameters": { + "instanceGroupManager": { + "description": "The name of the instance group manager.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "The name of the zone where you want to create the managed instance group.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}", + "request": { + "$ref": "InstanceGroupManager" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." } - } - } - } - }, - "InstanceGroupManagersSetAutoHealingRequest": { - "id": "InstanceGroupManagersSetAutoHealingRequest", - "type": "object", - "properties": { - "autoHealingPolicies": { - "type": "array", - "items": { - "$ref": "InstanceGroupManagerAutoHealingPolicy" - } - } - } - }, - "InstanceGroupManagersSetInstanceTemplateRequest": { - "id": "InstanceGroupManagersSetInstanceTemplateRequest", - "type": "object", - "properties": { - "instanceTemplate": { - "type": "string", - "description": "The URL of the instance template that is specified for this managed instance group. The group uses this template to create all new instances in the managed instance group." - } - } - }, - "InstanceGroupManagersSetTargetPoolsRequest": { - "id": "InstanceGroupManagersSetTargetPoolsRequest", - "type": "object", - "properties": { - "fingerprint": { - "type": "string", - "description": "The fingerprint of the target pools information. Use this optional property to prevent conflicts when multiple users change the target pools settings concurrently. Obtain the fingerprint with the instanceGroupManagers.get method. Then, include the fingerprint in your request to ensure that you do not overwrite changes that were applied from another concurrent request.", - "format": "byte" }, - "targetPools": { - "type": "array", - "description": "The list of target pool URLs that instances in this managed instance group belong to. The managed instance group applies these target pools to all of the instances in the group. Existing instances and new instances in the group all receive these target pool settings.", - "items": { - "type": "string" - } - } - } - }, - "InstanceGroupsAddInstancesRequest": { - "id": "InstanceGroupsAddInstancesRequest", - "type": "object", - "properties": { - "instances": { - "type": "array", - "description": "The list of instances to add to the instance group.", - "items": { - "$ref": "InstanceReference" - } - } - } - }, - "InstanceGroupsListInstances": { - "id": "InstanceGroupsListInstances", - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "array", - "description": "A list of InstanceWithNamedPorts resources.", - "items": { - "$ref": "InstanceWithNamedPorts" - } - }, - "kind": { - "type": "string", - "description": "[Output Only] The resource type, which is always compute#instanceGroupsListInstances for the list of instances in the specified instance group.", - "default": "compute#instanceGroupsListInstances" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "InstanceGroupsListInstancesRequest": { - "id": "InstanceGroupsListInstancesRequest", - "type": "object", - "properties": { - "instanceState": { - "type": "string", - "description": "A filter for the state of the instances in the instance group. Valid options are ALL or RUNNING. If you do not specify this parameter the list includes all instances regardless of their state.", - "enum": [ - "ALL", - "RUNNING" - ], - "enumDescriptions": [ - "", - "" - ] - } - } - }, - "InstanceGroupsRemoveInstancesRequest": { - "id": "InstanceGroupsRemoveInstancesRequest", - "type": "object", - "properties": { - "instances": { - "type": "array", - "description": "The list of instances to remove from the instance group.", - "items": { - "$ref": "InstanceReference" - } - } - } - }, - "InstanceGroupsScopedList": { - "id": "InstanceGroupsScopedList", - "type": "object", - "properties": { "instanceGroups": { - "type": "array", - "description": "[Output Only] The list of instance groups that are contained in this scope.", - "items": { - "$ref": "InstanceGroup" - } - }, - "warning": { - "type": "object", - "description": "[Output Only] An informational warning that replaces the list of instance groups when the list is empty.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } + "methods": { + "addInstances": { + "description": "Adds a list of instances to the specified instance group. All of the instances in the instance group must be in the same network/subnetwork. Read Adding instances for more information.", + "httpMethod": "POST", + "id": "compute.instanceGroups.addInstances", + "parameterOrder": [ + "project", + "zone", + "instanceGroup" + ], + "parameters": { + "instanceGroup": { + "description": "The name of the instance group where you are adding instances.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "The name of the zone where the instance group is located.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instanceGroups/{instanceGroup}/addInstances", + "request": { + "$ref": "InstanceGroupsAddInstancesRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "aggregatedList": { + "description": "Retrieves the list of instance groups and sorts them by zone.", + "httpMethod": "GET", + "id": "compute.instanceGroups.aggregatedList", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/aggregated/instanceGroups", + "response": { + "$ref": "InstanceGroupAggregatedList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "delete": { + "description": "Deletes the specified instance group. The instances in the group are not deleted. Note that instance group must not belong to a backend service. Read Deleting an instance group for more information.", + "httpMethod": "DELETE", + "id": "compute.instanceGroups.delete", + "parameterOrder": [ + "project", + "zone", + "instanceGroup" + ], + "parameters": { + "instanceGroup": { + "description": "The name of the instance group to delete.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "The name of the zone where the instance group is located.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instanceGroups/{instanceGroup}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Returns the specified instance group. Get a list of available instance groups by making a list() request.", + "httpMethod": "GET", + "id": "compute.instanceGroups.get", + "parameterOrder": [ + "project", + "zone", + "instanceGroup" + ], + "parameters": { + "instanceGroup": { + "description": "The name of the instance group.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "zone": { + "description": "The name of the zone where the instance group is located.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instanceGroups/{instanceGroup}", + "response": { + "$ref": "InstanceGroup" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "description": "Creates an instance group in the specified project using the parameters that are included in the request.", + "httpMethod": "POST", + "id": "compute.instanceGroups.insert", + "parameterOrder": [ + "project", + "zone" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "The name of the zone where you want to create the instance group.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instanceGroups", + "request": { + "$ref": "InstanceGroup" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "description": "Retrieves the list of instance groups that are located in the specified project and zone.", + "httpMethod": "GET", + "id": "compute.instanceGroups.list", + "parameterOrder": [ + "project", + "zone" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "zone": { + "description": "The name of the zone where the instance group is located.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instanceGroups", + "response": { + "$ref": "InstanceGroupList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "listInstances": { + "description": "Lists the instances in the specified instance group.", + "httpMethod": "POST", + "id": "compute.instanceGroups.listInstances", + "parameterOrder": [ + "project", + "zone", + "instanceGroup" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "instanceGroup": { + "description": "The name of the instance group from which you want to generate a list of included instances.", + "location": "path", + "required": true, + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "zone": { + "description": "The name of the zone where the instance group is located.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instanceGroups/{instanceGroup}/listInstances", + "request": { + "$ref": "InstanceGroupsListInstancesRequest" + }, + "response": { + "$ref": "InstanceGroupsListInstances" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "removeInstances": { + "description": "Removes one or more instances from the specified instance group, but does not delete those instances.\n\nIf the group is part of a backend service that has enabled connection draining, it can take up to 60 seconds after the connection draining duration before the VM instance is removed or deleted.", + "httpMethod": "POST", + "id": "compute.instanceGroups.removeInstances", + "parameterOrder": [ + "project", + "zone", + "instanceGroup" + ], + "parameters": { + "instanceGroup": { + "description": "The name of the instance group where the specified instances will be removed.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "The name of the zone where the instance group is located.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instanceGroups/{instanceGroup}/removeInstances", + "request": { + "$ref": "InstanceGroupsRemoveInstancesRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setNamedPorts": { + "description": "Sets the named ports for the specified instance group.", + "httpMethod": "POST", + "id": "compute.instanceGroups.setNamedPorts", + "parameterOrder": [ + "project", + "zone", + "instanceGroup" + ], + "parameters": { + "instanceGroup": { + "description": "The name of the instance group where the named ports are updated.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "The name of the zone where the instance group is located.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instanceGroups/{instanceGroup}/setNamedPorts", + "request": { + "$ref": "InstanceGroupsSetNamedPortsRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource.", + "httpMethod": "POST", + "id": "compute.instanceGroups.testIamPermissions", + "parameterOrder": [ + "project", + "zone", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instanceGroups/{resource}/testIamPermissions", + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." } - } - } - } - }, - "InstanceGroupsSetNamedPortsRequest": { - "id": "InstanceGroupsSetNamedPortsRequest", - "type": "object", - "properties": { - "fingerprint": { - "type": "string", - "description": "The fingerprint of the named ports information for this instance group. Use this optional property to prevent conflicts when multiple users change the named ports settings concurrently. Obtain the fingerprint with the instanceGroups.get method. Then, include the fingerprint in your request to ensure that you do not overwrite changes that were applied from another concurrent request.", - "format": "byte" }, - "namedPorts": { - "type": "array", - "description": "The list of named ports to set for this instance group.", - "items": { - "$ref": "NamedPort" - } - } - } - }, - "InstanceList": { - "id": "InstanceList", - "type": "object", - "description": "Contains a list of instances.", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "array", - "description": "A list of Instance resources.", - "items": { - "$ref": "Instance" - } - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#instanceList for lists of Instance resources.", - "default": "compute#instanceList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } + "instanceTemplates": { + "methods": { + "delete": { + "description": "Deletes the specified instance template. Deleting an instance template is permanent and cannot be undone. It's not possible to delete templates which are in use by an instance group.", + "httpMethod": "DELETE", + "id": "compute.instanceTemplates.delete", + "parameterOrder": [ + "project", + "instanceTemplate" + ], + "parameters": { + "instanceTemplate": { + "description": "The name of the instance template to delete.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/instanceTemplates/{instanceTemplate}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Returns the specified instance template. Get a list of available instance templates by making a list() request.", + "httpMethod": "GET", + "id": "compute.instanceTemplates.get", + "parameterOrder": [ + "project", + "instanceTemplate" + ], + "parameters": { + "instanceTemplate": { + "description": "The name of the instance template.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/instanceTemplates/{instanceTemplate}", + "response": { + "$ref": "InstanceTemplate" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "description": "Creates an instance template in the specified project using the data that is included in the request. If you are creating a new template to update an existing instance group, your new instance template must use the same network or, if applicable, the same subnetwork as the original template.", + "httpMethod": "POST", + "id": "compute.instanceTemplates.insert", + "parameterOrder": [ + "project" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/instanceTemplates", + "request": { + "$ref": "InstanceTemplate" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "description": "Retrieves a list of instance templates that are contained within the specified project and zone.", + "httpMethod": "GET", + "id": "compute.instanceTemplates.list", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/instanceTemplates", + "response": { + "$ref": "InstanceTemplateList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource.", + "httpMethod": "POST", + "id": "compute.instanceTemplates.testIamPermissions", + "parameterOrder": [ + "project", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "(?:[-a-z0-9_]{0,62}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/instanceTemplates/{resource}/testIamPermissions", + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." } - } - } - } - }, - "InstanceListReferrers": { - "id": "InstanceListReferrers", - "type": "object", - "description": "Contains a list of instance referrers.", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." }, - "items": { - "type": "array", - "description": "A list of Reference resources.", - "items": { - "$ref": "Reference" - } - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#instanceListReferrers for lists of Instance referrers.", - "default": "compute#instanceListReferrers" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "InstanceMoveRequest": { - "id": "InstanceMoveRequest", - "type": "object", - "properties": { - "destinationZone": { - "type": "string", - "description": "The URL of the destination zone to move the instance. This can be a full or partial URL. For example, the following are all valid URLs to a zone: \n- https://www.googleapis.com/compute/v1/projects/project/zones/zone \n- projects/project/zones/zone \n- zones/zone" - }, - "targetInstance": { - "type": "string", - "description": "The URL of the target instance to move. This can be a full or partial URL. For example, the following are all valid URLs to an instance: \n- https://www.googleapis.com/compute/v1/projects/project/zones/zone/instances/instance \n- projects/project/zones/zone/instances/instance \n- zones/zone/instances/instance" - } - } - }, - "InstanceProperties": { - "id": "InstanceProperties", - "type": "object", - "description": "", - "properties": { - "canIpForward": { - "type": "boolean", - "description": "Enables instances created based on this template to send packets with source IP addresses other than their own and receive packets with destination IP addresses other than their own. If these instances will be used as an IP gateway or it will be set as the next-hop in a Route resource, specify true. If unsure, leave this set to false. See the Enable IP forwarding documentation for more information." - }, - "description": { - "type": "string", - "description": "An optional text description for the instances that are created from this instance template." - }, - "disks": { - "type": "array", - "description": "An array of disks that are associated with the instances that are created from this template.", - "items": { - "$ref": "AttachedDisk" - } - }, - "guestAccelerators": { - "type": "array", - "description": "A list of guest accelerator cards' type and count to use for instances created from the instance template.", - "items": { - "$ref": "AcceleratorConfig" - } - }, - "labels": { - "type": "object", - "description": "Labels to apply to instances that are created from this template.", - "additionalProperties": { - "type": "string" - } - }, - "machineType": { - "type": "string", - "description": "The machine type to use for instances that are created from this template.", - "annotations": { - "required": [ - "compute.instanceTemplates.insert" - ] - } - }, - "metadata": { - "$ref": "Metadata", - "description": "The metadata key/value pairs to assign to instances that are created from this template. These pairs can consist of custom metadata or predefined keys. See Project and instance metadata for more information." - }, - "minCpuPlatform": { - "type": "string", - "description": "Minimum cpu/platform to be used by this instance. The instance may be scheduled on the specified or newer cpu/platform. Applicable values are the friendly names of CPU platforms, such as minCpuPlatform: \"Intel Haswell\" or minCpuPlatform: \"Intel Sandy Bridge\". For more information, read Specifying a Minimum CPU Platform." - }, - "networkInterfaces": { - "type": "array", - "description": "An array of network access configurations for this interface.", - "items": { - "$ref": "NetworkInterface" - } - }, - "scheduling": { - "$ref": "Scheduling", - "description": "Specifies the scheduling options for the instances that are created from this template." - }, - "serviceAccounts": { - "type": "array", - "description": "A list of service accounts with specified scopes. Access tokens for these service accounts are available to the instances that are created from this template. Use metadata queries to obtain the access tokens for these instances.", - "items": { - "$ref": "ServiceAccount" - } - }, - "tags": { - "$ref": "Tags", - "description": "A list of tags to apply to the instances that are created from this template. The tags identify valid sources or targets for network firewalls. The setTags method can modify this list of tags. Each tag within the list must comply with RFC1035." - } - } - }, - "InstanceReference": { - "id": "InstanceReference", - "type": "object", - "properties": { - "instance": { - "type": "string", - "description": "The URL for a specific instance." - } - } - }, - "InstanceTemplate": { - "id": "InstanceTemplate", - "type": "object", - "description": "An Instance Template resource. (== resource_for beta.instanceTemplates ==) (== resource_for v1.instanceTemplates ==)", - "properties": { - "creationTimestamp": { - "type": "string", - "description": "[Output Only] The creation timestamp for this instance template in RFC3339 text format." - }, - "description": { - "type": "string", - "description": "An optional description of this resource. Provide this property when you create the resource." - }, - "id": { - "type": "string", - "description": "[Output Only] A unique identifier for this instance template. The server defines this identifier.", - "format": "uint64" - }, - "kind": { - "type": "string", - "description": "[Output Only] The resource type, which is always compute#instanceTemplate for instance templates.", - "default": "compute#instanceTemplate" - }, - "name": { - "type": "string", - "description": "Name of the resource; provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "annotations": { - "required": [ - "compute.instanceTemplates.insert" - ] - } - }, - "properties": { - "$ref": "InstanceProperties", - "description": "The instance properties for this instance template." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] The URL for this instance template. The server defines this URL." - }, - "sourceInstance": { - "type": "string", - "description": "The source instance used to create the template. You can provide this as a partial or full URL to the resource. For example, the following are valid values: \n- https://www.googleapis.com/compute/v1/projects/project/zones/zone/instances/instance \n- projects/project/zones/zone/instances/instance" - }, - "sourceInstanceParams": { - "$ref": "SourceInstanceParams", - "description": "The source instance params to use to create this instance template." - } - } - }, - "InstanceTemplateList": { - "id": "InstanceTemplateList", - "type": "object", - "description": "A list of instance templates.", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "array", - "description": "A list of InstanceTemplate resources.", - "items": { - "$ref": "InstanceTemplate" - } - }, - "kind": { - "type": "string", - "description": "[Output Only] The resource type, which is always compute#instanceTemplatesListResponse for instance template lists.", - "default": "compute#instanceTemplateList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "InstanceWithNamedPorts": { - "id": "InstanceWithNamedPorts", - "type": "object", - "properties": { - "instance": { - "type": "string", - "description": "[Output Only] The URL of the instance." - }, - "namedPorts": { - "type": "array", - "description": "[Output Only] The named ports that belong to this instance group.", - "items": { - "$ref": "NamedPort" - } - }, - "status": { - "type": "string", - "description": "[Output Only] The status of the instance.", - "enum": [ - "PROVISIONING", - "RUNNING", - "STAGING", - "STOPPED", - "STOPPING", - "SUSPENDED", - "SUSPENDING", - "TERMINATED" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "" - ] - } - } - }, - "InstancesScopedList": { - "id": "InstancesScopedList", - "type": "object", - "properties": { "instances": { - "type": "array", - "description": "[Output Only] List of instances contained in this scope.", - "items": { - "$ref": "Instance" - } - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning which replaces the list of instances when the list is empty.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } + "methods": { + "addAccessConfig": { + "description": "Adds an access config to an instance's network interface.", + "httpMethod": "POST", + "id": "compute.instances.addAccessConfig", + "parameterOrder": [ + "project", + "zone", + "instance", + "networkInterface" + ], + "parameters": { + "instance": { + "description": "The instance name for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "networkInterface": { + "description": "The name of the network interface to add to this instance.", + "location": "query", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instances/{instance}/addAccessConfig", + "request": { + "$ref": "AccessConfig" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "aggregatedList": { + "description": "Retrieves aggregated list of instances.", + "httpMethod": "GET", + "id": "compute.instances.aggregatedList", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/aggregated/instances", + "response": { + "$ref": "InstanceAggregatedList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "attachDisk": { + "description": "Attaches an existing Disk resource to an instance. You must first create the disk before you can attach it. It is not possible to create and attach a disk at the same time. For more information, read Adding a persistent disk to your instance.", + "httpMethod": "POST", + "id": "compute.instances.attachDisk", + "parameterOrder": [ + "project", + "zone", + "instance" + ], + "parameters": { + "forceAttach": { + "description": "Whether to force attach the disk even if it's currently attached to another instance. This is only available for regional disks.", + "location": "query", + "type": "boolean" + }, + "instance": { + "description": "The instance name for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instances/{instance}/attachDisk", + "request": { + "$ref": "AttachedDisk" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "delete": { + "description": "Deletes the specified Instance resource. For more information, see Stopping or Deleting an Instance.", + "httpMethod": "DELETE", + "id": "compute.instances.delete", + "parameterOrder": [ + "project", + "zone", + "instance" + ], + "parameters": { + "instance": { + "description": "Name of the instance resource to delete.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instances/{instance}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "deleteAccessConfig": { + "description": "Deletes an access config from an instance's network interface.", + "httpMethod": "POST", + "id": "compute.instances.deleteAccessConfig", + "parameterOrder": [ + "project", + "zone", + "instance", + "accessConfig", + "networkInterface" + ], + "parameters": { + "accessConfig": { + "description": "The name of the access config to delete.", + "location": "query", + "required": true, + "type": "string" + }, + "instance": { + "description": "The instance name for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "networkInterface": { + "description": "The name of the network interface.", + "location": "query", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instances/{instance}/deleteAccessConfig", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "detachDisk": { + "description": "Detaches a disk from an instance.", + "httpMethod": "POST", + "id": "compute.instances.detachDisk", + "parameterOrder": [ + "project", + "zone", + "instance", + "deviceName" + ], + "parameters": { + "deviceName": { + "description": "Disk device name to detach.", + "location": "query", + "required": true, + "type": "string" + }, + "instance": { + "description": "Instance name.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instances/{instance}/detachDisk", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Returns the specified Instance resource. Get a list of available instances by making a list() request.", + "httpMethod": "GET", + "id": "compute.instances.get", + "parameterOrder": [ + "project", + "zone", + "instance" + ], + "parameters": { + "instance": { + "description": "Name of the instance resource to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instances/{instance}", + "response": { + "$ref": "Instance" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "getSerialPortOutput": { + "description": "Returns the specified instance's serial port output.", + "httpMethod": "GET", + "id": "compute.instances.getSerialPortOutput", + "parameterOrder": [ + "project", + "zone", + "instance" + ], + "parameters": { + "instance": { + "description": "Name of the instance scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "port": { + "default": "1", + "description": "Specifies which COM or serial port to retrieve data from.", + "format": "int32", + "location": "query", + "maximum": "4", + "minimum": "1", + "type": "integer" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "start": { + "description": "Returns output starting from a specific byte position. Use this to page through output when the output is too large to return in a single request. For the initial request, leave this field unspecified. For subsequent calls, this field should be set to the next value returned in the previous call.", + "format": "int64", + "location": "query", + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instances/{instance}/serialPort", + "response": { + "$ref": "SerialPortOutput" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "description": "Creates an instance resource in the specified project using the data included in the request.", + "httpMethod": "POST", + "id": "compute.instances.insert", + "parameterOrder": [ + "project", + "zone" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "sourceInstanceTemplate": { + "description": "Specifies instance template to create the instance.\n\nThis field is optional. It can be a full or partial URL. For example, the following are all valid URLs to an instance template: \n- https://www.googleapis.com/compute/v1/projects/project/global/global/instanceTemplates/instanceTemplate \n- projects/project/global/global/instanceTemplates/instanceTemplate \n- global/instancesTemplates/instanceTemplate", + "location": "query", + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instances", + "request": { + "$ref": "Instance" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "description": "Retrieves the list of instances contained within the specified zone.", + "httpMethod": "GET", + "id": "compute.instances.list", + "parameterOrder": [ + "project", + "zone" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instances", + "response": { + "$ref": "InstanceList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "listReferrers": { + "description": "Retrieves the list of referrers to instances contained within the specified zone.", + "httpMethod": "GET", + "id": "compute.instances.listReferrers", + "parameterOrder": [ + "project", + "zone", + "instance" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "instance": { + "description": "Name of the target instance scoping this request, or '-' if the request should span over all instances in the container.", + "location": "path", + "pattern": "-|[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instances/{instance}/referrers", + "response": { + "$ref": "InstanceListReferrers" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "reset": { + "description": "Performs a reset on the instance. For more information, see Resetting an instance.", + "httpMethod": "POST", + "id": "compute.instances.reset", + "parameterOrder": [ + "project", + "zone", + "instance" + ], + "parameters": { + "instance": { + "description": "Name of the instance scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instances/{instance}/reset", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setDeletionProtection": { + "description": "Sets deletion protection on the instance.", + "httpMethod": "POST", + "id": "compute.instances.setDeletionProtection", + "parameterOrder": [ + "project", + "zone", + "resource" + ], + "parameters": { + "deletionProtection": { + "default": "true", + "description": "Whether the resource should be protected against deletion.", + "location": "query", + "type": "boolean" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instances/{resource}/setDeletionProtection", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setDiskAutoDelete": { + "description": "Sets the auto-delete flag for a disk attached to an instance.", + "httpMethod": "POST", + "id": "compute.instances.setDiskAutoDelete", + "parameterOrder": [ + "project", + "zone", + "instance", + "autoDelete", + "deviceName" + ], + "parameters": { + "autoDelete": { + "description": "Whether to auto-delete the disk when the instance is deleted.", + "location": "query", + "required": true, + "type": "boolean" + }, + "deviceName": { + "description": "The device name of the disk to modify.", + "location": "query", + "pattern": "\\w[\\w.-]{0,254}", + "required": true, + "type": "string" + }, + "instance": { + "description": "The instance name.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instances/{instance}/setDiskAutoDelete", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setLabels": { + "description": "Sets labels on an instance. To learn more about labels, read the Labeling Resources documentation.", + "httpMethod": "POST", + "id": "compute.instances.setLabels", + "parameterOrder": [ + "project", + "zone", + "instance" + ], + "parameters": { + "instance": { + "description": "Name of the instance scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instances/{instance}/setLabels", + "request": { + "$ref": "InstancesSetLabelsRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setMachineResources": { + "description": "Changes the number and/or type of accelerator for a stopped instance to the values specified in the request.", + "httpMethod": "POST", + "id": "compute.instances.setMachineResources", + "parameterOrder": [ + "project", + "zone", + "instance" + ], + "parameters": { + "instance": { + "description": "Name of the instance scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instances/{instance}/setMachineResources", + "request": { + "$ref": "InstancesSetMachineResourcesRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setMachineType": { + "description": "Changes the machine type for a stopped instance to the machine type specified in the request.", + "httpMethod": "POST", + "id": "compute.instances.setMachineType", + "parameterOrder": [ + "project", + "zone", + "instance" + ], + "parameters": { + "instance": { + "description": "Name of the instance scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instances/{instance}/setMachineType", + "request": { + "$ref": "InstancesSetMachineTypeRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setMetadata": { + "description": "Sets metadata for the specified instance to the data included in the request.", + "httpMethod": "POST", + "id": "compute.instances.setMetadata", + "parameterOrder": [ + "project", + "zone", + "instance" + ], + "parameters": { + "instance": { + "description": "Name of the instance scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instances/{instance}/setMetadata", + "request": { + "$ref": "Metadata" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setMinCpuPlatform": { + "description": "Changes the minimum CPU platform that this instance should use. This method can only be called on a stopped instance. For more information, read Specifying a Minimum CPU Platform.", + "httpMethod": "POST", + "id": "compute.instances.setMinCpuPlatform", + "parameterOrder": [ + "project", + "zone", + "instance" + ], + "parameters": { + "instance": { + "description": "Name of the instance scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instances/{instance}/setMinCpuPlatform", + "request": { + "$ref": "InstancesSetMinCpuPlatformRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setScheduling": { + "description": "Sets an instance's scheduling options.", + "httpMethod": "POST", + "id": "compute.instances.setScheduling", + "parameterOrder": [ + "project", + "zone", + "instance" + ], + "parameters": { + "instance": { + "description": "Instance name.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instances/{instance}/setScheduling", + "request": { + "$ref": "Scheduling" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setServiceAccount": { + "description": "Sets the service account on the instance. For more information, read Changing the service account and access scopes for an instance.", + "httpMethod": "POST", + "id": "compute.instances.setServiceAccount", + "parameterOrder": [ + "project", + "zone", + "instance" + ], + "parameters": { + "instance": { + "description": "Name of the instance resource to start.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instances/{instance}/setServiceAccount", + "request": { + "$ref": "InstancesSetServiceAccountRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setTags": { + "description": "Sets tags for the specified instance to the data included in the request.", + "httpMethod": "POST", + "id": "compute.instances.setTags", + "parameterOrder": [ + "project", + "zone", + "instance" + ], + "parameters": { + "instance": { + "description": "Name of the instance scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instances/{instance}/setTags", + "request": { + "$ref": "Tags" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "simulateMaintenanceEvent": { + "description": "Simulates a maintenance event on the instance.", + "httpMethod": "POST", + "id": "compute.instances.simulateMaintenanceEvent", + "parameterOrder": [ + "project", + "zone", + "instance" + ], + "parameters": { + "instance": { + "description": "Name of the instance scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instances/{instance}/simulateMaintenanceEvent", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "start": { + "description": "Starts an instance that was stopped using the using the instances().stop method. For more information, see Restart an instance.", + "httpMethod": "POST", + "id": "compute.instances.start", + "parameterOrder": [ + "project", + "zone", + "instance" + ], + "parameters": { + "instance": { + "description": "Name of the instance resource to start.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instances/{instance}/start", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "startWithEncryptionKey": { + "description": "Starts an instance that was stopped using the using the instances().stop method. For more information, see Restart an instance.", + "httpMethod": "POST", + "id": "compute.instances.startWithEncryptionKey", + "parameterOrder": [ + "project", + "zone", + "instance" + ], + "parameters": { + "instance": { + "description": "Name of the instance resource to start.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instances/{instance}/startWithEncryptionKey", + "request": { + "$ref": "InstancesStartWithEncryptionKeyRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "stop": { + "description": "Stops a running instance, shutting it down cleanly, and allows you to restart the instance at a later time. Stopped instances do not incur VM usage charges while they are stopped. However, resources that the VM is using, such as persistent disks and static IP addresses, will continue to be charged until they are deleted. For more information, see Stopping an instance.", + "httpMethod": "POST", + "id": "compute.instances.stop", + "parameterOrder": [ + "project", + "zone", + "instance" + ], + "parameters": { + "instance": { + "description": "Name of the instance resource to stop.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instances/{instance}/stop", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource.", + "httpMethod": "POST", + "id": "compute.instances.testIamPermissions", + "parameterOrder": [ + "project", + "zone", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instances/{resource}/testIamPermissions", + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "updateAccessConfig": { + "description": "Updates the specified access config from an instance's network interface with the data included in the request. This method supports PATCH semantics and uses the JSON merge patch format and processing rules.", + "httpMethod": "POST", + "id": "compute.instances.updateAccessConfig", + "parameterOrder": [ + "project", + "zone", + "instance", + "networkInterface" + ], + "parameters": { + "instance": { + "description": "The instance name for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "networkInterface": { + "description": "The name of the network interface where the access config is attached.", + "location": "query", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instances/{instance}/updateAccessConfig", + "request": { + "$ref": "AccessConfig" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "updateNetworkInterface": { + "description": "Updates an instance's network interface. This method follows PATCH semantics.", + "httpMethod": "PATCH", + "id": "compute.instances.updateNetworkInterface", + "parameterOrder": [ + "project", + "zone", + "instance", + "networkInterface" + ], + "parameters": { + "instance": { + "description": "The instance name for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "networkInterface": { + "description": "The name of the network interface to update.", + "location": "query", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instances/{instance}/updateNetworkInterface", + "request": { + "$ref": "NetworkInterface" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." } - } - } - } - }, - "InstancesSetLabelsRequest": { - "id": "InstancesSetLabelsRequest", - "type": "object", - "properties": { - "labelFingerprint": { - "type": "string", - "description": "Fingerprint of the previous set of labels for this resource, used to prevent conflicts. Provide the latest fingerprint value when making a request to add or change labels.", - "format": "byte" - }, - "labels": { - "type": "object", - "additionalProperties": { - "type": "string" - } - } - } - }, - "InstancesSetMachineResourcesRequest": { - "id": "InstancesSetMachineResourcesRequest", - "type": "object", - "properties": { - "guestAccelerators": { - "type": "array", - "description": "List of the type and count of accelerator cards attached to the instance.", - "items": { - "$ref": "AcceleratorConfig" - } - } - } - }, - "InstancesSetMachineTypeRequest": { - "id": "InstancesSetMachineTypeRequest", - "type": "object", - "properties": { - "machineType": { - "type": "string", - "description": "Full or partial URL of the machine type resource. See Machine Types for a full list of machine types. For example: zones/us-central1-f/machineTypes/n1-standard-1" - } - } - }, - "InstancesSetMinCpuPlatformRequest": { - "id": "InstancesSetMinCpuPlatformRequest", - "type": "object", - "properties": { - "minCpuPlatform": { - "type": "string", - "description": "Minimum cpu/platform this instance should be started at." - } - } - }, - "InstancesSetServiceAccountRequest": { - "id": "InstancesSetServiceAccountRequest", - "type": "object", - "properties": { - "email": { - "type": "string", - "description": "Email address of the service account." - }, - "scopes": { - "type": "array", - "description": "The list of scopes to be made available for this service account.", - "items": { - "type": "string" - } - } - } - }, - "InstancesStartWithEncryptionKeyRequest": { - "id": "InstancesStartWithEncryptionKeyRequest", - "type": "object", - "properties": { - "disks": { - "type": "array", - "description": "Array of disks associated with this instance that are protected with a customer-supplied encryption key.\n\nIn order to start the instance, the disk url and its corresponding key must be provided.\n\nIf the disk is not protected with a customer-supplied encryption key it should not be specified.", - "items": { - "$ref": "CustomerEncryptionKeyProtectedDisk" - } - } - } - }, - "Interconnect": { - "id": "Interconnect", - "type": "object", - "description": "Represents an Interconnects resource. The Interconnects resource is a dedicated connection between Google's network and your on-premises network. For more information, see the Dedicated overview page. (== resource_for v1.interconnects ==) (== resource_for beta.interconnects ==)", - "properties": { - "adminEnabled": { - "type": "boolean", - "description": "Administrative status of the interconnect. When this is set to true, the Interconnect is functional and can carry traffic. When set to false, no packets can be carried over the interconnect and no BGP routes are exchanged over it. By default, the status is set to true." - }, - "circuitInfos": { - "type": "array", - "description": "[Output Only] List of CircuitInfo objects, that describe the individual circuits in this LAG.", - "items": { - "$ref": "InterconnectCircuitInfo" - } - }, - "creationTimestamp": { - "type": "string", - "description": "[Output Only] Creation timestamp in RFC3339 text format." - }, - "customerName": { - "type": "string", - "description": "Customer name, to put in the Letter of Authorization as the party authorized to request a crossconnect." - }, - "description": { - "type": "string", - "description": "An optional description of this resource. Provide this property when you create the resource." - }, - "expectedOutages": { - "type": "array", - "description": "[Output Only] List of outages expected for this Interconnect.", - "items": { - "$ref": "InterconnectOutageNotification" - } - }, - "googleIpAddress": { - "type": "string", - "description": "[Output Only] IP address configured on the Google side of the Interconnect link. This can be used only for ping tests." - }, - "googleReferenceId": { - "type": "string", - "description": "[Output Only] Google reference ID; to be used when raising support tickets with Google or otherwise to debug backend connectivity issues." - }, - "id": { - "type": "string", - "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", - "format": "uint64" }, "interconnectAttachments": { - "type": "array", - "description": "[Output Only] A list of the URLs of all InterconnectAttachments configured to use this Interconnect.", - "items": { - "type": "string" - } - }, - "interconnectType": { - "type": "string", - "description": "Type of interconnect. Note that \"IT_PRIVATE\" has been deprecated in favor of \"DEDICATED\"", - "enum": [ - "DEDICATED", - "IT_PRIVATE" - ], - "enumDescriptions": [ - "", - "" - ] - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of the resource. Always compute#interconnect for interconnects.", - "default": "compute#interconnect" - }, - "labelFingerprint": { - "type": "string", - "description": "A fingerprint for the labels being applied to this Interconnect, which is essentially a hash of the labels set used for optimistic locking. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update labels. You must always provide an up-to-date fingerprint hash in order to update or change labels.\n\nTo see the latest fingerprint, make a get() request to retrieve an Interconnect.", - "format": "byte" - }, - "labels": { - "type": "object", - "description": "Labels to apply to this Interconnect resource. These can be later modified by the setLabels method. Each label key/value must comply with RFC1035. Label values may be empty.", - "additionalProperties": { - "type": "string" - } - }, - "linkType": { - "type": "string", - "description": "Type of link requested. This field indicates speed of each of the links in the bundle, not the entire bundle. Only 10G per link is allowed for a dedicated interconnect. Options: Ethernet_10G_LR", - "enum": [ - "LINK_TYPE_ETHERNET_10G_LR" - ], - "enumDescriptions": [ - "" - ] - }, - "location": { - "type": "string", - "description": "URL of the InterconnectLocation object that represents where this connection is to be provisioned." - }, - "name": { - "type": "string", - "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "annotations": { - "required": [ - "compute.interconnects.insert" - ] - } - }, - "nocContactEmail": { - "type": "string", - "description": "Email address to contact the customer NOC for operations and maintenance notifications regarding this Interconnect. If specified, this will be used for notifications in addition to all other forms described, such as Stackdriver logs alerting and Cloud Notifications." - }, - "operationalStatus": { - "type": "string", - "description": "[Output Only] The current status of whether or not this Interconnect is functional.", - "enum": [ - "OS_ACTIVE", - "OS_UNPROVISIONED" - ], - "enumDescriptions": [ - "", - "" - ] - }, - "peerIpAddress": { - "type": "string", - "description": "[Output Only] IP address configured on the customer side of the Interconnect link. The customer should configure this IP address during turnup when prompted by Google NOC. This can be used only for ping tests." - }, - "provisionedLinkCount": { - "type": "integer", - "description": "[Output Only] Number of links actually provisioned in this interconnect.", - "format": "int32" - }, - "requestedLinkCount": { - "type": "integer", - "description": "Target number of physical links in the link bundle, as requested by the customer.", - "format": "int32" - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for the resource." - } - } - }, - "InterconnectAttachment": { - "id": "InterconnectAttachment", - "type": "object", - "description": "Represents an InterconnectAttachment (VLAN attachment) resource. For more information, see Creating VLAN Attachments. (== resource_for beta.interconnectAttachments ==) (== resource_for v1.interconnectAttachments ==)", - "properties": { - "cloudRouterIpAddress": { - "type": "string", - "description": "[Output Only] IPv4 address + prefix length to be configured on Cloud Router Interface for this interconnect attachment." - }, - "creationTimestamp": { - "type": "string", - "description": "[Output Only] Creation timestamp in RFC3339 text format." - }, - "customerRouterIpAddress": { - "type": "string", - "description": "[Output Only] IPv4 address + prefix length to be configured on the customer router subinterface for this interconnect attachment." - }, - "description": { - "type": "string", - "description": "An optional description of this resource." - }, - "googleReferenceId": { - "type": "string", - "description": "[Output Only] Google reference ID, to be used when raising support tickets with Google or otherwise to debug backend connectivity issues." - }, - "id": { - "type": "string", - "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", - "format": "uint64" - }, - "interconnect": { - "type": "string", - "description": "URL of the underlying Interconnect object that this attachment's traffic will traverse through." - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of the resource. Always compute#interconnectAttachment for interconnect attachments.", - "default": "compute#interconnectAttachment" - }, - "labelFingerprint": { - "type": "string", - "description": "A fingerprint for the labels being applied to this InterconnectAttachment, which is essentially a hash of the labels set used for optimistic locking. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update labels. You must always provide an up-to-date fingerprint hash in order to update or change labels.\n\nTo see the latest fingerprint, make a get() request to retrieve an InterconnectAttachment.", - "format": "byte" - }, - "labels": { - "type": "object", - "description": "Labels to apply to this InterconnectAttachment resource. These can be later modified by the setLabels method. Each label key/value must comply with RFC1035. Label values may be empty.", - "additionalProperties": { - "type": "string" - } - }, - "name": { - "type": "string", - "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" - }, - "operationalStatus": { - "type": "string", - "description": "[Output Only] The current status of whether or not this interconnect attachment is functional.", - "enum": [ - "OS_ACTIVE", - "OS_UNPROVISIONED" - ], - "enumDescriptions": [ - "", - "" - ] - }, - "privateInterconnectInfo": { - "$ref": "InterconnectAttachmentPrivateInfo", - "description": "[Output Only] Information specific to an InterconnectAttachment. This property is populated if the interconnect that this is attached to is of type DEDICATED." - }, - "region": { - "type": "string", - "description": "[Output Only] URL of the region where the regional interconnect attachment resides." - }, - "router": { - "type": "string", - "description": "URL of the cloud router to be used for dynamic routing. This router must be in the same region as this InterconnectAttachment. The InterconnectAttachment will automatically connect the Interconnect to the network & region within which the Cloud Router is configured." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for the resource." - } - } - }, - "InterconnectAttachmentAggregatedList": { - "id": "InterconnectAttachmentAggregatedList", - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "object", - "description": "A list of InterconnectAttachmentsScopedList resources.", - "additionalProperties": { - "$ref": "InterconnectAttachmentsScopedList", - "description": "Name of the scope containing this set of interconnect attachments." - } - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#interconnectAttachmentAggregatedList for aggregated lists of interconnect attachments.", - "default": "compute#interconnectAttachmentAggregatedList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "InterconnectAttachmentList": { - "id": "InterconnectAttachmentList", - "type": "object", - "description": "Response to the list request, and contains a list of interconnect attachments.", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "array", - "description": "A list of InterconnectAttachment resources.", - "items": { - "$ref": "InterconnectAttachment" - } - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#interconnectAttachmentList for lists of interconnect attachments.", - "default": "compute#interconnectAttachmentList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "InterconnectAttachmentPrivateInfo": { - "id": "InterconnectAttachmentPrivateInfo", - "type": "object", - "description": "Information for an interconnect attachment when this belongs to an interconnect of type DEDICATED.", - "properties": { - "tag8021q": { - "type": "integer", - "description": "[Output Only] 802.1q encapsulation tag to be used for traffic between Google and the customer, going to and from this network and region.", - "format": "uint32" - } - } - }, - "InterconnectAttachmentsScopedList": { - "id": "InterconnectAttachmentsScopedList", - "type": "object", - "properties": { - "interconnectAttachments": { - "type": "array", - "description": "List of interconnect attachments contained in this scope.", - "items": { - "$ref": "InterconnectAttachment" - } - }, - "warning": { - "type": "object", - "description": "Informational warning which replaces the list of addresses when the list is empty.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "InterconnectCircuitInfo": { - "id": "InterconnectCircuitInfo", - "type": "object", - "description": "Describes a single physical circuit between the Customer and Google. CircuitInfo objects are created by Google, so all fields are output only. Next id: 4", - "properties": { - "customerDemarcId": { - "type": "string", - "description": "Customer-side demarc ID for this circuit." - }, - "googleCircuitId": { - "type": "string", - "description": "Google-assigned unique ID for this circuit. Assigned at circuit turn-up." - }, - "googleDemarcId": { - "type": "string", - "description": "Google-side demarc ID for this circuit. Assigned at circuit turn-up and provided by Google to the customer in the LOA." - } - } - }, - "InterconnectList": { - "id": "InterconnectList", - "type": "object", - "description": "Response to the list request, and contains a list of interconnects.", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "array", - "description": "A list of Interconnect resources.", - "items": { - "$ref": "Interconnect" - } - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#interconnectList for lists of interconnects.", - "default": "compute#interconnectList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "InterconnectLocation": { - "id": "InterconnectLocation", - "type": "object", - "description": "Represents an InterconnectLocations resource. The InterconnectLocations resource describes the locations where you can connect to Google's networks. For more information, see Colocation Facilities.", - "properties": { - "address": { - "type": "string", - "description": "[Output Only] The postal address of the Point of Presence, each line in the address is separated by a newline character." - }, - "availabilityZone": { - "type": "string", - "description": "[Output Only] Availability zone for this location. Within a metropolitan area (metro), maintenance will not be simultaneously scheduled in more than one availability zone. Example: \"zone1\" or \"zone2\"." - }, - "city": { - "type": "string", - "description": "[Output Only] Metropolitan area designator that indicates which city an interconnect is located. For example: \"Chicago, IL\", \"Amsterdam, Netherlands\"." - }, - "continent": { - "type": "string", - "description": "[Output Only] Continent for this location.", - "enum": [ - "AFRICA", - "ASIA_PAC", - "C_AFRICA", - "C_ASIA_PAC", - "C_EUROPE", - "C_NORTH_AMERICA", - "C_SOUTH_AMERICA", - "EUROPE", - "NORTH_AMERICA", - "SOUTH_AMERICA" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "creationTimestamp": { - "type": "string", - "description": "[Output Only] Creation timestamp in RFC3339 text format." - }, - "description": { - "type": "string", - "description": "[Output Only] An optional description of the resource." - }, - "facilityProvider": { - "type": "string", - "description": "[Output Only] The name of the provider for this facility (e.g., EQUINIX)." - }, - "facilityProviderFacilityId": { - "type": "string", - "description": "[Output Only] A provider-assigned Identifier for this facility (e.g., Ashburn-DC1)." - }, - "id": { - "type": "string", - "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", - "format": "uint64" - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of the resource. Always compute#interconnectLocation for interconnect locations.", - "default": "compute#interconnectLocation" - }, - "name": { - "type": "string", - "description": "[Output Only] Name of the resource." - }, - "peeringdbFacilityId": { - "type": "string", - "description": "[Output Only] The peeringdb identifier for this facility (corresponding with a netfac type in peeringdb)." - }, - "regionInfos": { - "type": "array", - "description": "[Output Only] A list of InterconnectLocation.RegionInfo objects, that describe parameters pertaining to the relation between this InterconnectLocation and various Google Cloud regions.", - "items": { - "$ref": "InterconnectLocationRegionInfo" - } - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for the resource." - } - } - }, - "InterconnectLocationList": { - "id": "InterconnectLocationList", - "type": "object", - "description": "Response to the list request, and contains a list of interconnect locations.", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "array", - "description": "A list of InterconnectLocation resources.", - "items": { - "$ref": "InterconnectLocation" - } - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#interconnectLocationList for lists of interconnect locations.", - "default": "compute#interconnectLocationList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "InterconnectLocationRegionInfo": { - "id": "InterconnectLocationRegionInfo", - "type": "object", - "description": "Information about any potential InterconnectAttachments between an Interconnect at a specific InterconnectLocation, and a specific Cloud Region.", - "properties": { - "expectedRttMs": { - "type": "string", - "description": "Expected round-trip time in milliseconds, from this InterconnectLocation to a VM in this region.", - "format": "int64" - }, - "locationPresence": { - "type": "string", - "description": "Identifies the network presence of this location.", - "enum": [ - "GLOBAL", - "LOCAL_REGION", - "LP_GLOBAL", - "LP_LOCAL_REGION" - ], - "enumDescriptions": [ - "", - "", - "", - "" - ] - }, - "region": { - "type": "string", - "description": "URL for the region of this location." - } - } - }, - "InterconnectOutageNotification": { - "id": "InterconnectOutageNotification", - "type": "object", - "description": "Description of a planned outage on this Interconnect. Next id: 9", - "properties": { - "affectedCircuits": { - "type": "array", - "description": "Iff issue_type is IT_PARTIAL_OUTAGE, a list of the Google-side circuit IDs that will be affected.", - "items": { - "type": "string" - } - }, - "description": { - "type": "string", - "description": "A description about the purpose of the outage." - }, - "endTime": { - "type": "string", - "description": "Scheduled end time for the outage (milliseconds since Unix epoch).", - "format": "int64" - }, - "issueType": { - "type": "string", - "description": "Form this outage is expected to take. Note that the \"IT_\" versions of this enum have been deprecated in favor of the unprefixed values.", - "enum": [ - "IT_OUTAGE", - "IT_PARTIAL_OUTAGE", - "OUTAGE", - "PARTIAL_OUTAGE" - ], - "enumDescriptions": [ - "", - "", - "", - "" - ] - }, - "name": { - "type": "string", - "description": "Unique identifier for this outage notification." - }, - "source": { - "type": "string", - "description": "The party that generated this notification. Note that \"NSRC_GOOGLE\" has been deprecated in favor of \"GOOGLE\"", - "enum": [ - "GOOGLE", - "NSRC_GOOGLE" - ], - "enumDescriptions": [ - "", - "" - ] - }, - "startTime": { - "type": "string", - "description": "Scheduled start time for the outage (milliseconds since Unix epoch).", - "format": "int64" - }, - "state": { - "type": "string", - "description": "State of this notification. Note that the \"NS_\" versions of this enum have been deprecated in favor of the unprefixed values.", - "enum": [ - "ACTIVE", - "CANCELLED", - "NS_ACTIVE", - "NS_CANCELED" - ], - "enumDescriptions": [ - "", - "", - "", - "" - ] - } - } - }, - "License": { - "id": "License", - "type": "object", - "description": "A license resource.", - "properties": { - "chargesUseFee": { - "type": "boolean", - "description": "[Output Only] Deprecated. This field no longer reflects whether a license charges a usage fee." - }, - "creationTimestamp": { - "type": "string", - "description": "[Output Only] Creation timestamp in RFC3339 text format." - }, - "description": { - "type": "string", - "description": "An optional textual description of the resource; provided by the client when the resource is created." - }, - "id": { - "type": "string", - "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", - "format": "uint64" - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#license for licenses.", - "default": "compute#license" - }, - "licenseCode": { - "type": "string", - "description": "[Output Only] The unique code used to attach this license to images, snapshots, and disks.", - "format": "uint64" - }, - "name": { - "type": "string", - "description": "[Output Only] Name of the resource. The name is 1-63 characters long and complies with RFC1035.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "annotations": { - "required": [ - "compute.images.insert" - ] - } - }, - "resourceRequirements": { - "$ref": "LicenseResourceRequirements" - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for the resource." - }, - "transferable": { - "type": "boolean", - "description": "If false, licenses will not be copied from the source resource when creating an image from a disk, disk from snapshot, or snapshot from disk." - } - } - }, - "LicenseCode": { - "id": "LicenseCode", - "type": "object", - "properties": { - "creationTimestamp": { - "type": "string", - "description": "[Output Only] Creation timestamp in RFC3339 text format." - }, - "description": { - "type": "string", - "description": "[Output Only] Description of this License Code." - }, - "id": { - "type": "string", - "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", - "format": "uint64" - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#licenseCode for licenses.", - "default": "compute#licenseCode" - }, - "licenseAlias": { - "type": "array", - "description": "[Output Only] URL and description aliases of Licenses with the same License Code.", - "items": { - "$ref": "LicenseCodeLicenseAlias" - } - }, - "name": { - "type": "string", - "description": "[Output Only] Name of the resource. The name is 1-20 characters long and must be a valid 64 bit integer.", - "pattern": "[0-9]{0,20}?", - "annotations": { - "required": [ - "compute.licenses.insert" - ] - } - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for the resource." - }, - "state": { - "type": "string", - "description": "[Output Only] Current state of this License Code.", - "enum": [ - "DISABLED", - "ENABLED", - "RESTRICTED", - "STATE_UNSPECIFIED", - "TERMINATED" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "" - ] - }, - "transferable": { - "type": "boolean", - "description": "[Output Only] If true, the license will remain attached when creating images or snapshots from disks. Otherwise, the license is not transferred." - } - } - }, - "LicenseCodeLicenseAlias": { - "id": "LicenseCodeLicenseAlias", - "type": "object", - "properties": { - "description": { - "type": "string", - "description": "[Output Only] Description of this License Code." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] URL of license corresponding to this License Code." - } - } - }, - "LicenseResourceRequirements": { - "id": "LicenseResourceRequirements", - "type": "object", - "properties": { - "minGuestCpuCount": { - "type": "integer", - "description": "Minimum number of guest cpus required to use the Instance. Enforced at Instance creation and Instance start.", - "format": "int32" - }, - "minMemoryMb": { - "type": "integer", - "description": "Minimum memory required to use the Instance. Enforced at Instance creation and Instance start.", - "format": "int32" - } - } - }, - "LicensesListResponse": { - "id": "LicensesListResponse", - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "array", - "description": "A list of License resources.", - "items": { - "$ref": "License" - } - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "LogConfig": { - "id": "LogConfig", - "type": "object", - "description": "Specifies what kind of log the caller must write", - "properties": { - "cloudAudit": { - "$ref": "LogConfigCloudAuditOptions", - "description": "Cloud audit options." - }, - "counter": { - "$ref": "LogConfigCounterOptions", - "description": "Counter options." - }, - "dataAccess": { - "$ref": "LogConfigDataAccessOptions", - "description": "Data access options." - } - } - }, - "LogConfigCloudAuditOptions": { - "id": "LogConfigCloudAuditOptions", - "type": "object", - "description": "Write a Cloud Audit log", - "properties": { - "authorizationLoggingOptions": { - "$ref": "AuthorizationLoggingOptions", - "description": "Information used by the Cloud Audit Logging pipeline." - }, - "logName": { - "type": "string", - "description": "The log_name to populate in the Cloud Audit Record.", - "enum": [ - "ADMIN_ACTIVITY", - "DATA_ACCESS", - "UNSPECIFIED_LOG_NAME" - ], - "enumDescriptions": [ - "", - "", - "" - ] - } - } - }, - "LogConfigCounterOptions": { - "id": "LogConfigCounterOptions", - "type": "object", - "description": "Increment a streamz counter with the specified metric and field names.\n\nMetric names should start with a '/', generally be lowercase-only, and end in \"_count\". Field names should not contain an initial slash. The actual exported metric names will have \"/iam/policy\" prepended.\n\nField names correspond to IAM request parameters and field values are their respective values.\n\nAt present the only supported field names are - \"iam_principal\", corresponding to IAMContext.principal; - \"\" (empty string), resulting in one aggretated counter with no field.\n\nExamples: counter { metric: \"/debug_access_count\" field: \"iam_principal\" } ==\u003e increment counter /iam/policy/backend_debug_access_count {iam_principal=[value of IAMContext.principal]}\n\nAt this time we do not support: * multiple field names (though this may be supported in the future) * decrementing the counter * incrementing it by anything other than 1", - "properties": { - "field": { - "type": "string", - "description": "The field value to attribute." - }, - "metric": { - "type": "string", - "description": "The metric to update." - } - } - }, - "LogConfigDataAccessOptions": { - "id": "LogConfigDataAccessOptions", - "type": "object", - "description": "Write a Data Access (Gin) log", - "properties": { - "logMode": { - "type": "string", - "description": "Whether Gin logging should happen in a fail-closed manner at the caller. This is relevant only in the LocalIAM implementation, for now.", - "enum": [ - "LOG_FAIL_CLOSED", - "LOG_MODE_UNSPECIFIED" - ], - "enumDescriptions": [ - "", - "" - ] - } - } - }, - "MachineType": { - "id": "MachineType", - "type": "object", - "description": "A Machine Type resource. (== resource_for v1.machineTypes ==) (== resource_for beta.machineTypes ==)", - "properties": { - "creationTimestamp": { - "type": "string", - "description": "[Output Only] Creation timestamp in RFC3339 text format." - }, - "deprecated": { - "$ref": "DeprecationStatus", - "description": "[Output Only] The deprecation status associated with this machine type." - }, - "description": { - "type": "string", - "description": "[Output Only] An optional textual description of the resource." - }, - "guestCpus": { - "type": "integer", - "description": "[Output Only] The number of virtual CPUs that are available to the instance.", - "format": "int32" - }, - "id": { - "type": "string", - "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", - "format": "uint64" - }, - "isSharedCpu": { - "type": "boolean", - "description": "[Output Only] Whether this machine type has a shared CPU. See Shared-core machine types for more information." - }, - "kind": { - "type": "string", - "description": "[Output Only] The type of the resource. Always compute#machineType for machine types.", - "default": "compute#machineType" - }, - "maximumPersistentDisks": { - "type": "integer", - "description": "[Output Only] Maximum persistent disks allowed.", - "format": "int32" - }, - "maximumPersistentDisksSizeGb": { - "type": "string", - "description": "[Output Only] Maximum total persistent disks size (GB) allowed.", - "format": "int64" - }, - "memoryMb": { - "type": "integer", - "description": "[Output Only] The amount of physical memory available to the instance, defined in MB.", - "format": "int32" - }, - "name": { - "type": "string", - "description": "[Output Only] Name of the resource.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for the resource." - }, - "zone": { - "type": "string", - "description": "[Output Only] The name of the zone where the machine type resides, such as us-central1-a." - } - } - }, - "MachineTypeAggregatedList": { - "id": "MachineTypeAggregatedList", - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "object", - "description": "A list of MachineTypesScopedList resources.", - "additionalProperties": { - "$ref": "MachineTypesScopedList", - "description": "[Output Only] Name of the scope containing this set of machine types." - } - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#machineTypeAggregatedList for aggregated lists of machine types.", - "default": "compute#machineTypeAggregatedList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "MachineTypeList": { - "id": "MachineTypeList", - "type": "object", - "description": "Contains a list of machine types.", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "array", - "description": "A list of MachineType resources.", - "items": { - "$ref": "MachineType" - } - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#machineTypeList for lists of machine types.", - "default": "compute#machineTypeList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "MachineTypesScopedList": { - "id": "MachineTypesScopedList", - "type": "object", - "properties": { - "machineTypes": { - "type": "array", - "description": "[Output Only] List of machine types contained in this scope.", - "items": { - "$ref": "MachineType" - } - }, - "warning": { - "type": "object", - "description": "[Output Only] An informational warning that appears when the machine types list is empty.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "ManagedInstance": { - "id": "ManagedInstance", - "type": "object", - "properties": { - "currentAction": { - "type": "string", - "description": "[Output Only] The current action that the managed instance group has scheduled for the instance. Possible values: \n- NONE The instance is running, and the managed instance group does not have any scheduled actions for this instance. \n- CREATING The managed instance group is creating this instance. If the group fails to create this instance, it will try again until it is successful. \n- CREATING_WITHOUT_RETRIES The managed instance group is attempting to create this instance only once. If the group fails to create this instance, it does not try again and the group's targetSize value is decreased instead. \n- RECREATING The managed instance group is recreating this instance. \n- DELETING The managed instance group is permanently deleting this instance. \n- ABANDONING The managed instance group is abandoning this instance. The instance will be removed from the instance group and from any target pools that are associated with this group. \n- RESTARTING The managed instance group is restarting the instance. \n- REFRESHING The managed instance group is applying configuration changes to the instance without stopping it. For example, the group can update the target pool list for an instance without stopping that instance.", - "enum": [ - "ABANDONING", - "CREATING", - "CREATING_WITHOUT_RETRIES", - "DELETING", - "NONE", - "RECREATING", - "REFRESHING", - "RESTARTING", - "VERIFYING" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "id": { - "type": "string", - "description": "[Output only] The unique identifier for this resource. This field is empty when instance does not exist.", - "format": "uint64" - }, - "instance": { - "type": "string", - "description": "[Output Only] The URL of the instance. The URL can exist even if the instance has not yet been created." - }, - "instanceStatus": { - "type": "string", - "description": "[Output Only] The status of the instance. This field is empty when the instance does not exist.", - "enum": [ - "PROVISIONING", - "RUNNING", - "STAGING", - "STOPPED", - "STOPPING", - "SUSPENDED", - "SUSPENDING", - "TERMINATED" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "lastAttempt": { - "$ref": "ManagedInstanceLastAttempt", - "description": "[Output Only] Information about the last attempt to create or delete the instance." - }, - "version": { - "$ref": "ManagedInstanceVersion", - "description": "[Output Only] Intended version of this instance." - } - } - }, - "ManagedInstanceLastAttempt": { - "id": "ManagedInstanceLastAttempt", - "type": "object", - "properties": { - "errors": { - "type": "object", - "description": "[Output Only] Encountered errors during the last attempt to create or delete the instance.", - "properties": { - "errors": { - "type": "array", - "description": "[Output Only] The array of errors encountered while processing this operation.", - "items": { - "type": "object", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] The error type identifier for this error." - }, - "location": { - "type": "string", - "description": "[Output Only] Indicates the field in the request that caused the error. This property is optional." - }, - "message": { - "type": "string", - "description": "[Output Only] An optional, human-readable error message." - } - } - } - } - } - } - } - }, - "ManagedInstanceVersion": { - "id": "ManagedInstanceVersion", - "type": "object", - "properties": { - "instanceTemplate": { - "type": "string", - "description": "[Output Only] The intended template of the instance. This field is empty when current_action is one of { DELETING, ABANDONING }." - }, - "name": { - "type": "string", - "description": "[Output Only] Name of the version." - } - } - }, - "Metadata": { - "id": "Metadata", - "type": "object", - "description": "A metadata key/value entry.", - "properties": { - "fingerprint": { - "type": "string", - "description": "Specifies a fingerprint for this request, which is essentially a hash of the metadata's contents and used for optimistic locking. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update metadata. You must always provide an up-to-date fingerprint hash in order to update or change metadata.", - "format": "byte" - }, - "items": { - "type": "array", - "description": "Array of key/value pairs. The total size of all keys and values must be less than 512 KB.", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "Key for the metadata entry. Keys must conform to the following regexp: [a-zA-Z0-9-_]+, and be less than 128 bytes in length. This is reflected as part of a URL in the metadata server. Additionally, to avoid ambiguity, keys must not conflict with any other metadata keys for the project.", - "pattern": "[a-zA-Z0-9-_]{1,128}", - "annotations": { - "required": [ - "compute.instances.insert", - "compute.projects.setCommonInstanceMetadata" - ] - } - }, - "value": { - "type": "string", - "description": "Value for the metadata entry. These are free-form strings, and only have meaning as interpreted by the image running in the instance. The only restriction placed on values is that their size must be less than or equal to 262144 bytes (256 KiB).", - "annotations": { - "required": [ - "compute.instances.insert", - "compute.projects.setCommonInstanceMetadata" - ] - } - } - } - } - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of the resource. Always compute#metadata for metadata.", - "default": "compute#metadata" - } - } - }, - "NamedPort": { - "id": "NamedPort", - "type": "object", - "description": "The named port. For example: .", - "properties": { - "name": { - "type": "string", - "description": "The name for this named port. The name must be 1-63 characters long, and comply with RFC1035." - }, - "port": { - "type": "integer", - "description": "The port number, which can be a value between 1 and 65535.", - "format": "int32" - } - } - }, - "Network": { - "id": "Network", - "type": "object", - "description": "Represents a Network resource. Read Networks and Firewalls for more information. (== resource_for v1.networks ==) (== resource_for beta.networks ==)", - "properties": { - "IPv4Range": { - "type": "string", - "description": "The range of internal addresses that are legal on this network. This range is a CIDR specification, for example: 192.168.0.0/16. Provided by the client when the network is created.", - "pattern": "[0-9]{1,3}(?:\\.[0-9]{1,3}){3}/[0-9]{1,2}" - }, - "autoCreateSubnetworks": { - "type": "boolean", - "description": "When set to true, the network is created in \"auto subnet mode\". When set to false, the network is in \"custom subnet mode\".\n\nIn \"auto subnet mode\", a newly created network is assigned the default CIDR of 10.128.0.0/9 and it automatically creates one subnetwork per region." - }, - "creationTimestamp": { - "type": "string", - "description": "[Output Only] Creation timestamp in RFC3339 text format." - }, - "description": { - "type": "string", - "description": "An optional description of this resource. Provide this property when you create the resource." - }, - "gatewayIPv4": { - "type": "string", - "description": "A gateway address for default routing to other networks. This value is read only and is selected by the Google Compute Engine, typically as the first usable address in the IPv4Range.", - "pattern": "[0-9]{1,3}(?:\\.[0-9]{1,3}){3}" - }, - "id": { - "type": "string", - "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", - "format": "uint64" - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of the resource. Always compute#network for networks.", - "default": "compute#network" - }, - "name": { - "type": "string", - "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "annotations": { - "required": [ - "compute.networks.insert" - ] - } - }, - "peerings": { - "type": "array", - "description": "[Output Only] List of network peerings for the resource.", - "items": { - "$ref": "NetworkPeering" - } - }, - "routingConfig": { - "$ref": "NetworkRoutingConfig", - "description": "The network-level routing configuration for this network. Used by Cloud Router to determine what type of network-wide routing behavior to enforce." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for the resource." - }, - "subnetworks": { - "type": "array", - "description": "[Output Only] Server-defined fully-qualified URLs for all subnetworks in this network.", - "items": { - "type": "string" - } - } - } - }, - "NetworkInterface": { - "id": "NetworkInterface", - "type": "object", - "description": "A network interface resource attached to an instance.", - "properties": { - "accessConfigs": { - "type": "array", - "description": "An array of configurations for this interface. Currently, only one access config, ONE_TO_ONE_NAT, is supported. If there are no accessConfigs specified, then this instance will have no external internet access.", - "items": { - "$ref": "AccessConfig" - } - }, - "aliasIpRanges": { - "type": "array", - "description": "An array of alias IP ranges for this network interface. Can only be specified for network interfaces on subnet-mode networks.", - "items": { - "$ref": "AliasIpRange" - } - }, - "fingerprint": { - "type": "string", - "description": "Fingerprint hash of contents stored in this network interface. This field will be ignored when inserting an Instance or adding a NetworkInterface. An up-to-date fingerprint must be provided in order to update the NetworkInterface.", - "format": "byte" - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of the resource. Always compute#networkInterface for network interfaces.", - "default": "compute#networkInterface" - }, - "name": { - "type": "string", - "description": "[Output Only] The name of the network interface, generated by the server. For network devices, these are eth0, eth1, etc." - }, - "network": { - "type": "string", - "description": "URL of the network resource for this instance. When creating an instance, if neither the network nor the subnetwork is specified, the default network global/networks/default is used; if the network is not specified but the subnetwork is specified, the network is inferred.\n\nThis field is optional when creating a firewall rule. If not specified when creating a firewall rule, the default network global/networks/default is used.\n\nIf you specify this property, you can specify the network as a full or partial URL. For example, the following are all valid URLs: \n- https://www.googleapis.com/compute/v1/projects/project/global/networks/network \n- projects/project/global/networks/network \n- global/networks/default" - }, - "networkIP": { - "type": "string", - "description": "An IPv4 internal network address to assign to the instance for this network interface. If not specified by the user, an unused internal IP is assigned by the system." - }, - "subnetwork": { - "type": "string", - "description": "The URL of the Subnetwork resource for this instance. If the network resource is in legacy mode, do not provide this property. If the network is in auto subnet mode, providing the subnetwork is optional. If the network is in custom subnet mode, then this field should be specified. If you specify this property, you can specify the subnetwork as a full or partial URL. For example, the following are all valid URLs: \n- https://www.googleapis.com/compute/v1/projects/project/regions/region/subnetworks/subnetwork \n- regions/region/subnetworks/subnetwork" - } - } - }, - "NetworkList": { - "id": "NetworkList", - "type": "object", - "description": "Contains a list of networks.", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "array", - "description": "A list of Network resources.", - "items": { - "$ref": "Network" - } - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#networkList for lists of networks.", - "default": "compute#networkList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "NetworkPeering": { - "id": "NetworkPeering", - "type": "object", - "description": "A network peering attached to a network resource. The message includes the peering name, peer network, peering state, and a flag indicating whether Google Compute Engine should automatically create routes for the peering.", - "properties": { - "autoCreateRoutes": { - "type": "boolean", - "description": "Whether full mesh connectivity is created and managed automatically. When it is set to true, Google Compute Engine will automatically create and manage the routes between two networks when the state is ACTIVE. Otherwise, user needs to create routes manually to route packets to peer network." - }, - "name": { - "type": "string", - "description": "Name of this peering. Provided by the client when the peering is created. The name must comply with RFC1035. Specifically, the name must be 1-63 characters long and match regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all the following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash." - }, - "network": { - "type": "string", - "description": "The URL of the peer network. It can be either full URL or partial URL. The peer network may belong to a different project. If the partial URL does not contain project, it is assumed that the peer network is in the same project as the current network." - }, - "state": { - "type": "string", - "description": "[Output Only] State for the peering.", - "enum": [ - "ACTIVE", - "INACTIVE" - ], - "enumDescriptions": [ - "", - "" - ] - }, - "stateDetails": { - "type": "string", - "description": "[Output Only] Details about the current state of the peering." - } - } - }, - "NetworkRoutingConfig": { - "id": "NetworkRoutingConfig", - "type": "object", - "description": "A routing configuration attached to a network resource. The message includes the list of routers associated with the network, and a flag indicating the type of routing behavior to enforce network-wide.", - "properties": { - "routingMode": { - "type": "string", - "description": "The network-wide routing mode to use. If set to REGIONAL, this network's cloud routers will only advertise routes with subnetworks of this network in the same region as the router. If set to GLOBAL, this network's cloud routers will advertise routes with all subnetworks of this network, across regions.", - "enum": [ - "GLOBAL", - "REGIONAL" - ], - "enumDescriptions": [ - "", - "" - ] - } - } - }, - "NetworksAddPeeringRequest": { - "id": "NetworksAddPeeringRequest", - "type": "object", - "properties": { - "autoCreateRoutes": { - "type": "boolean", - "description": "Whether Google Compute Engine manages the routes automatically." - }, - "name": { - "type": "string", - "description": "Name of the peering, which should conform to RFC1035.", - "annotations": { - "required": [ - "compute.networks.addPeering" - ] - } - }, - "peerNetwork": { - "type": "string", - "description": "URL of the peer network. It can be either full URL or partial URL. The peer network may belong to a different project. If the partial URL does not contain project, it is assumed that the peer network is in the same project as the current network." - } - } - }, - "NetworksRemovePeeringRequest": { - "id": "NetworksRemovePeeringRequest", - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "Name of the peering, which should conform to RFC1035." - } - } - }, - "Operation": { - "id": "Operation", - "type": "object", - "description": "An Operation resource, used to manage asynchronous API requests. (== resource_for v1.globalOperations ==) (== resource_for beta.globalOperations ==) (== resource_for v1.regionOperations ==) (== resource_for beta.regionOperations ==) (== resource_for v1.zoneOperations ==) (== resource_for beta.zoneOperations ==)", - "properties": { - "clientOperationId": { - "type": "string", - "description": "[Output Only] Reserved for future use." - }, - "creationTimestamp": { - "type": "string", - "description": "[Deprecated] This field is deprecated." - }, - "description": { - "type": "string", - "description": "[Output Only] A textual description of the operation, which is set when the operation is created." - }, - "endTime": { - "type": "string", - "description": "[Output Only] The time that this operation was completed. This value is in RFC3339 text format." - }, - "error": { - "type": "object", - "description": "[Output Only] If errors are generated during processing of the operation, this field will be populated.", - "properties": { - "errors": { - "type": "array", - "description": "[Output Only] The array of errors encountered while processing this operation.", - "items": { - "type": "object", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] The error type identifier for this error." - }, - "location": { - "type": "string", - "description": "[Output Only] Indicates the field in the request that caused the error. This property is optional." - }, - "message": { - "type": "string", - "description": "[Output Only] An optional, human-readable error message." - } - } - } - } - } - }, - "httpErrorMessage": { - "type": "string", - "description": "[Output Only] If the operation fails, this field contains the HTTP error message that was returned, such as NOT FOUND." - }, - "httpErrorStatusCode": { - "type": "integer", - "description": "[Output Only] If the operation fails, this field contains the HTTP error status code that was returned. For example, a 404 means the resource was not found.", - "format": "int32" - }, - "id": { - "type": "string", - "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", - "format": "uint64" - }, - "insertTime": { - "type": "string", - "description": "[Output Only] The time that this operation was requested. This value is in RFC3339 text format." - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of the resource. Always compute#operation for Operation resources.", - "default": "compute#operation" - }, - "name": { - "type": "string", - "description": "[Output Only] Name of the resource." - }, - "operationType": { - "type": "string", - "description": "[Output Only] The type of operation, such as insert, update, or delete, and so on." - }, - "progress": { - "type": "integer", - "description": "[Output Only] An optional progress indicator that ranges from 0 to 100. There is no requirement that this be linear or support any granularity of operations. This should not be used to guess when the operation will be complete. This number should monotonically increase as the operation progresses.", - "format": "int32" - }, - "region": { - "type": "string", - "description": "[Output Only] The URL of the region where the operation resides. Only available when performing regional operations." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for the resource." - }, - "startTime": { - "type": "string", - "description": "[Output Only] The time that this operation was started by the server. This value is in RFC3339 text format." - }, - "status": { - "type": "string", - "description": "[Output Only] The status of the operation, which can be one of the following: PENDING, RUNNING, or DONE.", - "enum": [ - "DONE", - "PENDING", - "RUNNING" - ], - "enumDescriptions": [ - "", - "", - "" - ] - }, - "statusMessage": { - "type": "string", - "description": "[Output Only] An optional textual description of the current status of the operation." - }, - "targetId": { - "type": "string", - "description": "[Output Only] The unique target ID, which identifies a specific incarnation of the target resource.", - "format": "uint64" - }, - "targetLink": { - "type": "string", - "description": "[Output Only] The URL of the resource that the operation modifies. For operations related to creating a snapshot, this points to the persistent disk that the snapshot was created from." - }, - "user": { - "type": "string", - "description": "[Output Only] User who requested the operation, for example: user@example.com." - }, - "warnings": { - "type": "array", - "description": "[Output Only] If warning messages are generated during processing of the operation, this field will be populated.", - "items": { - "type": "object", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." + "methods": { + "aggregatedList": { + "description": "Retrieves an aggregated list of interconnect attachments.", + "httpMethod": "GET", + "id": "compute.interconnectAttachments.aggregatedList", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - }, - "zone": { - "type": "string", - "description": "[Output Only] The URL of the zone where the operation resides. Only available when performing per-zone operations." - } - } - }, - "OperationAggregatedList": { - "id": "OperationAggregatedList", - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server." - }, - "items": { - "type": "object", - "description": "[Output Only] A map of scoped operation lists.", - "additionalProperties": { - "$ref": "OperationsScopedList", - "description": "[Output Only] Name of the scope containing this set of operations." - } - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#operationAggregatedList for aggregated lists of operations.", - "default": "compute#operationAggregatedList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "OperationList": { - "id": "OperationList", - "type": "object", - "description": "Contains a list of Operation resources.", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server." - }, - "items": { - "type": "array", - "description": "[Output Only] A list of Operation resources.", - "items": { - "$ref": "Operation" - } - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#operations for Operations resource.", - "default": "compute#operationList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "OperationsScopedList": { - "id": "OperationsScopedList", - "type": "object", - "properties": { - "operations": { - "type": "array", - "description": "[Output Only] List of operations contained in this scope.", - "items": { - "$ref": "Operation" - } - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning which replaces the list of operations when the list is empty.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "PathMatcher": { - "id": "PathMatcher", - "type": "object", - "description": "A matcher for the path portion of the URL. The BackendService from the longest-matched rule will serve the URL. If no rule was matched, the default service will be used.", - "properties": { - "defaultService": { - "type": "string", - "description": "The full or partial URL to the BackendService resource. This will be used if none of the pathRules defined by this PathMatcher is matched by the URL's path portion. For example, the following are all valid URLs to a BackendService resource: \n- https://www.googleapis.com/compute/v1/projects/project/global/backendServices/backendService \n- compute/v1/projects/project/global/backendServices/backendService \n- global/backendServices/backendService" - }, - "description": { - "type": "string", - "description": "An optional description of this resource. Provide this property when you create the resource." - }, - "name": { - "type": "string", - "description": "The name to which this PathMatcher is referred by the HostRule." - }, - "pathRules": { - "type": "array", - "description": "The list of path rules.", - "items": { - "$ref": "PathRule" - } - } - } - }, - "PathRule": { - "id": "PathRule", - "type": "object", - "description": "A path-matching rule for a URL. If matched, will use the specified BackendService to handle the traffic arriving at this URL.", - "properties": { - "paths": { - "type": "array", - "description": "The list of path patterns to match. Each must start with / and the only place a * is allowed is at the end following a /. The string fed to the path matcher does not include any text after the first ? or #, and those chars are not allowed here.", - "items": { - "type": "string" - } - }, - "service": { - "type": "string", - "description": "The URL of the BackendService resource if this rule is matched." - } - } - }, - "Policy": { - "id": "Policy", - "type": "object", - "description": "Defines an Identity and Access Management (IAM) policy. It is used to specify access control policies for Cloud Platform resources.\n\n\n\nA `Policy` consists of a list of `bindings`. A `Binding` binds a list of `members` to a `role`, where the members can be user accounts, Google groups, Google domains, and service accounts. A `role` is a named list of permissions defined by IAM.\n\n**Example**\n\n{ \"bindings\": [ { \"role\": \"roles/owner\", \"members\": [ \"user:mike@example.com\", \"group:admins@example.com\", \"domain:google.com\", \"serviceAccount:my-other-app@appspot.gserviceaccount.com\", ] }, { \"role\": \"roles/viewer\", \"members\": [\"user:sean@example.com\"] } ] }\n\nFor a description of IAM and its features, see the [IAM developer's guide](https://cloud.google.com/iam).", - "properties": { - "auditConfigs": { - "type": "array", - "description": "Specifies cloud audit logging configuration for this policy.", - "items": { - "$ref": "AuditConfig" - } - }, - "bindings": { - "type": "array", - "description": "Associates a list of `members` to a `role`. `bindings` with no members will result in an error.", - "items": { - "$ref": "Binding" - } - }, - "etag": { - "type": "string", - "description": "`etag` is used for optimistic concurrency control as a way to help prevent simultaneous updates of a policy from overwriting each other. It is strongly suggested that systems make use of the `etag` in the read-modify-write cycle to perform policy updates in order to avoid race conditions: An `etag` is returned in the response to `getIamPolicy`, and systems are expected to put that etag in the request to `setIamPolicy` to ensure that their change will be applied to the same version of the policy.\n\nIf no `etag` is provided in the call to `setIamPolicy`, then the existing policy is overwritten blindly.", - "format": "byte" - }, - "iamOwned": { - "type": "boolean", - "description": "" - }, - "rules": { - "type": "array", - "description": "If more than one rule is specified, the rules are applied in the following manner: - All matching LOG rules are always applied. - If any DENY/DENY_WITH_LOG rule matches, permission is denied. Logging will be applied if one or more matching rule requires logging. - Otherwise, if any ALLOW/ALLOW_WITH_LOG rule matches, permission is granted. Logging will be applied if one or more matching rule requires logging. - Otherwise, if no rule applies, permission is denied.", - "items": { - "$ref": "Rule" - } - }, - "version": { - "type": "integer", - "description": "Version of the `Policy`. The default version is 0.", - "format": "int32" - } - } - }, - "Project": { - "id": "Project", - "type": "object", - "description": "A Project resource. For an overview of projects, see Cloud Platform Resource Hierarchy. (== resource_for v1.projects ==) (== resource_for beta.projects ==)", - "properties": { - "commonInstanceMetadata": { - "$ref": "Metadata", - "description": "Metadata key/value pairs available to all instances contained in this project. See Custom metadata for more information." - }, - "creationTimestamp": { - "type": "string", - "description": "[Output Only] Creation timestamp in RFC3339 text format." - }, - "defaultServiceAccount": { - "type": "string", - "description": "[Output Only] Default service account used by VMs running in this project." - }, - "description": { - "type": "string", - "description": "An optional textual description of the resource." - }, - "enabledFeatures": { - "type": "array", - "description": "Restricted features enabled for use on this project.", - "items": { - "type": "string" - } - }, - "id": { - "type": "string", - "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server. This is not the project ID, and is just a unique ID used by Compute Engine to identify resources.", - "format": "uint64" - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of the resource. Always compute#project for projects.", - "default": "compute#project" - }, - "name": { - "type": "string", - "description": "The project ID. For example: my-example-project. Use the project ID to make requests to Compute Engine." - }, - "quotas": { - "type": "array", - "description": "[Output Only] Quotas assigned to this project.", - "items": { - "$ref": "Quota" - } - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for the resource." - }, - "usageExportLocation": { - "$ref": "UsageExportLocation", - "description": "The naming prefix for daily usage reports and the Google Cloud Storage bucket where they are stored." - }, - "xpnProjectStatus": { - "type": "string", - "description": "[Output Only] The role this project has in a shared VPC configuration. Currently only HOST projects are differentiated.", - "enum": [ - "HOST", - "UNSPECIFIED_XPN_PROJECT_STATUS" - ], - "enumDescriptions": [ - "", - "" - ] - } - } - }, - "ProjectsDisableXpnResourceRequest": { - "id": "ProjectsDisableXpnResourceRequest", - "type": "object", - "properties": { - "xpnResource": { - "$ref": "XpnResourceId", - "description": "Service resource (a.k.a service project) ID." - } - } - }, - "ProjectsEnableXpnResourceRequest": { - "id": "ProjectsEnableXpnResourceRequest", - "type": "object", - "properties": { - "xpnResource": { - "$ref": "XpnResourceId", - "description": "Service resource (a.k.a service project) ID." - } - } - }, - "ProjectsGetXpnResources": { - "id": "ProjectsGetXpnResources", - "type": "object", - "properties": { - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#projectsGetXpnResources for lists of service resources (a.k.a service projects)", - "default": "compute#projectsGetXpnResources" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "resources": { - "type": "array", - "description": "Service resources (a.k.a service projects) attached to this project as their shared VPC host.", - "items": { - "$ref": "XpnResourceId" - } - } - } - }, - "ProjectsListXpnHostsRequest": { - "id": "ProjectsListXpnHostsRequest", - "type": "object", - "properties": { - "organization": { - "type": "string", - "description": "Optional organization ID managed by Cloud Resource Manager, for which to list shared VPC host projects. If not specified, the organization will be inferred from the project." - } - } - }, - "Quota": { - "id": "Quota", - "type": "object", - "description": "A quotas entry.", - "properties": { - "limit": { - "type": "number", - "description": "[Output Only] Quota limit for this metric.", - "format": "double" - }, - "metric": { - "type": "string", - "description": "[Output Only] Name of the quota metric.", - "enum": [ - "AUTOSCALERS", - "BACKEND_BUCKETS", - "BACKEND_SERVICES", - "COMMITMENTS", - "CPUS", - "CPUS_ALL_REGIONS", - "DISKS_TOTAL_GB", - "FIREWALLS", - "FORWARDING_RULES", - "HEALTH_CHECKS", - "IMAGES", - "INSTANCES", - "INSTANCE_GROUPS", - "INSTANCE_GROUP_MANAGERS", - "INSTANCE_TEMPLATES", - "INTERCONNECTS", - "INTERNAL_ADDRESSES", - "IN_USE_ADDRESSES", - "LOCAL_SSD_TOTAL_GB", - "NETWORKS", - "NVIDIA_K80_GPUS", - "NVIDIA_P100_GPUS", - "PREEMPTIBLE_CPUS", - "PREEMPTIBLE_LOCAL_SSD_GB", - "PREEMPTIBLE_NVIDIA_K80_GPUS", - "PREEMPTIBLE_NVIDIA_P100_GPUS", - "REGIONAL_AUTOSCALERS", - "REGIONAL_INSTANCE_GROUP_MANAGERS", - "ROUTERS", - "ROUTES", - "SECURITY_POLICIES", - "SECURITY_POLICY_RULES", - "SNAPSHOTS", - "SSD_TOTAL_GB", - "SSL_CERTIFICATES", - "STATIC_ADDRESSES", - "SUBNETWORKS", - "TARGET_HTTPS_PROXIES", - "TARGET_HTTP_PROXIES", - "TARGET_INSTANCES", - "TARGET_POOLS", - "TARGET_SSL_PROXIES", - "TARGET_TCP_PROXIES", - "TARGET_VPN_GATEWAYS", - "URL_MAPS", - "VPN_TUNNELS" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "usage": { - "type": "number", - "description": "[Output Only] Current usage of this metric.", - "format": "double" - } - } - }, - "Reference": { - "id": "Reference", - "type": "object", - "description": "Represents a reference to a resource.", - "properties": { - "kind": { - "type": "string", - "description": "[Output Only] Type of the resource. Always compute#reference for references.", - "default": "compute#reference" - }, - "referenceType": { - "type": "string", - "description": "A description of the reference type with no implied semantics. Possible values include: \n- MEMBER_OF" - }, - "referrer": { - "type": "string", - "description": "URL of the resource which refers to the target." - }, - "target": { - "type": "string", - "description": "URL of the resource to which this reference points." - } - } - }, - "Region": { - "id": "Region", - "type": "object", - "description": "Region resource. (== resource_for beta.regions ==) (== resource_for v1.regions ==)", - "properties": { - "creationTimestamp": { - "type": "string", - "description": "[Output Only] Creation timestamp in RFC3339 text format." - }, - "deprecated": { - "$ref": "DeprecationStatus", - "description": "[Output Only] The deprecation status associated with this region." - }, - "description": { - "type": "string", - "description": "[Output Only] Textual description of the resource." - }, - "id": { - "type": "string", - "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", - "format": "uint64" - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of the resource. Always compute#region for regions.", - "default": "compute#region" - }, - "name": { - "type": "string", - "description": "[Output Only] Name of the resource." - }, - "quotas": { - "type": "array", - "description": "[Output Only] Quotas assigned to this region.", - "items": { - "$ref": "Quota" - } - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for the resource." - }, - "status": { - "type": "string", - "description": "[Output Only] Status of the region, either UP or DOWN.", - "enum": [ - "DOWN", - "UP" - ], - "enumDescriptions": [ - "", - "" - ] - }, - "zones": { - "type": "array", - "description": "[Output Only] A list of zones available in this region, in the form of resource URLs.", - "items": { - "type": "string" - } - } - } - }, - "RegionAutoscalerList": { - "id": "RegionAutoscalerList", - "type": "object", - "description": "Contains a list of autoscalers.", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "array", - "description": "A list of Autoscaler resources.", - "items": { - "$ref": "Autoscaler" - } - }, - "kind": { - "type": "string", - "description": "Type of resource.", - "default": "compute#regionAutoscalerList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "RegionInstanceGroupList": { - "id": "RegionInstanceGroupList", - "type": "object", - "description": "Contains a list of InstanceGroup resources.", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "array", - "description": "A list of InstanceGroup resources.", - "items": { - "$ref": "InstanceGroup" - } - }, - "kind": { - "type": "string", - "description": "The resource type.", - "default": "compute#regionInstanceGroupList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "RegionInstanceGroupManagerList": { - "id": "RegionInstanceGroupManagerList", - "type": "object", - "description": "Contains a list of managed instance groups.", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "array", - "description": "A list of InstanceGroupManager resources.", - "items": { - "$ref": "InstanceGroupManager" - } - }, - "kind": { - "type": "string", - "description": "[Output Only] The resource type, which is always compute#instanceGroupManagerList for a list of managed instance groups that exist in th regional scope.", - "default": "compute#regionInstanceGroupManagerList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "RegionInstanceGroupManagersAbandonInstancesRequest": { - "id": "RegionInstanceGroupManagersAbandonInstancesRequest", - "type": "object", - "properties": { - "instances": { - "type": "array", - "description": "The URLs of one or more instances to abandon. This can be a full URL or a partial URL, such as zones/[ZONE]/instances/[INSTANCE_NAME].", - "items": { - "type": "string" - } - } - } - }, - "RegionInstanceGroupManagersDeleteInstancesRequest": { - "id": "RegionInstanceGroupManagersDeleteInstancesRequest", - "type": "object", - "properties": { - "instances": { - "type": "array", - "description": "The URLs of one or more instances to delete. This can be a full URL or a partial URL, such as zones/[ZONE]/instances/[INSTANCE_NAME].", - "items": { - "type": "string" - } - } - } - }, - "RegionInstanceGroupManagersListInstancesResponse": { - "id": "RegionInstanceGroupManagersListInstancesResponse", - "type": "object", - "properties": { - "managedInstances": { - "type": "array", - "description": "List of managed instances.", - "items": { - "$ref": "ManagedInstance" - } - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - } - } - }, - "RegionInstanceGroupManagersRecreateRequest": { - "id": "RegionInstanceGroupManagersRecreateRequest", - "type": "object", - "properties": { - "instances": { - "type": "array", - "description": "The URLs of one or more instances to recreate. This can be a full URL or a partial URL, such as zones/[ZONE]/instances/[INSTANCE_NAME].", - "items": { - "type": "string" - } - } - } - }, - "RegionInstanceGroupManagersSetAutoHealingRequest": { - "id": "RegionInstanceGroupManagersSetAutoHealingRequest", - "type": "object", - "properties": { - "autoHealingPolicies": { - "type": "array", - "items": { - "$ref": "InstanceGroupManagerAutoHealingPolicy" - } - } - } - }, - "RegionInstanceGroupManagersSetTargetPoolsRequest": { - "id": "RegionInstanceGroupManagersSetTargetPoolsRequest", - "type": "object", - "properties": { - "fingerprint": { - "type": "string", - "description": "Fingerprint of the target pools information, which is a hash of the contents. This field is used for optimistic locking when you update the target pool entries. This field is optional.", - "format": "byte" - }, - "targetPools": { - "type": "array", - "description": "The URL of all TargetPool resources to which instances in the instanceGroup field are added. The target pools automatically apply to all of the instances in the managed instance group.", - "items": { - "type": "string" - } - } - } - }, - "RegionInstanceGroupManagersSetTemplateRequest": { - "id": "RegionInstanceGroupManagersSetTemplateRequest", - "type": "object", - "properties": { - "instanceTemplate": { - "type": "string", - "description": "URL of the InstanceTemplate resource from which all new instances will be created." - } - } - }, - "RegionInstanceGroupsListInstances": { - "id": "RegionInstanceGroupsListInstances", - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "array", - "description": "A list of InstanceWithNamedPorts resources.", - "items": { - "$ref": "InstanceWithNamedPorts" - } - }, - "kind": { - "type": "string", - "description": "The resource type.", - "default": "compute#regionInstanceGroupsListInstances" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "RegionInstanceGroupsListInstancesRequest": { - "id": "RegionInstanceGroupsListInstancesRequest", - "type": "object", - "properties": { - "instanceState": { - "type": "string", - "description": "Instances in which state should be returned. Valid options are: 'ALL', 'RUNNING'. By default, it lists all instances.", - "enum": [ - "ALL", - "RUNNING" - ], - "enumDescriptions": [ - "", - "" - ] - }, - "portName": { - "type": "string", - "description": "Name of port user is interested in. It is optional. If it is set, only information about this ports will be returned. If it is not set, all the named ports will be returned. Always lists all instances.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" - } - } - }, - "RegionInstanceGroupsSetNamedPortsRequest": { - "id": "RegionInstanceGroupsSetNamedPortsRequest", - "type": "object", - "properties": { - "fingerprint": { - "type": "string", - "description": "The fingerprint of the named ports information for this instance group. Use this optional property to prevent conflicts when multiple users change the named ports settings concurrently. Obtain the fingerprint with the instanceGroups.get method. Then, include the fingerprint in your request to ensure that you do not overwrite changes that were applied from another concurrent request.", - "format": "byte" - }, - "namedPorts": { - "type": "array", - "description": "The list of named ports to set for this instance group.", - "items": { - "$ref": "NamedPort" - } - } - } - }, - "RegionList": { - "id": "RegionList", - "type": "object", - "description": "Contains a list of region resources.", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "array", - "description": "A list of Region resources.", - "items": { - "$ref": "Region" - } - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#regionList for lists of regions.", - "default": "compute#regionList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "RegionSetLabelsRequest": { - "id": "RegionSetLabelsRequest", - "type": "object", - "properties": { - "labelFingerprint": { - "type": "string", - "description": "The fingerprint of the previous set of labels for this resource, used to detect conflicts. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update labels. You must always provide an up-to-date fingerprint hash in order to update or change labels. Make a get() request to the resource to get the latest fingerprint.", - "format": "byte" - }, - "labels": { - "type": "object", - "description": "The labels to set for this resource.", - "additionalProperties": { - "type": "string" - } - } - } - }, - "ResourceCommitment": { - "id": "ResourceCommitment", - "type": "object", - "description": "Commitment for a particular resource (a Commitment is composed of one or more of these).", - "properties": { - "amount": { - "type": "string", - "description": "The amount of the resource purchased (in a type-dependent unit, such as bytes). For vCPUs, this can just be an integer. For memory, this must be provided in MB. Memory must be a multiple of 256 MB, with up to 6.5GB of memory per every vCPU.", - "format": "int64" - }, - "type": { - "type": "string", - "description": "Type of resource for which this commitment applies. Possible values are VCPU and MEMORY", - "enum": [ - "MEMORY", - "UNSPECIFIED", - "VCPU" - ], - "enumDescriptions": [ - "", - "", - "" - ] - } - } - }, - "ResourceGroupReference": { - "id": "ResourceGroupReference", - "type": "object", - "properties": { - "group": { - "type": "string", - "description": "A URI referencing one of the instance groups listed in the backend service." - } - } - }, - "Route": { - "id": "Route", - "type": "object", - "description": "Represents a Route resource. A route specifies how certain packets should be handled by the network. Routes are associated with instances by tags and the set of routes for a particular instance is called its routing table.\n\nFor each packet leaving an instance, the system searches that instance's routing table for a single best matching route. Routes match packets by destination IP address, preferring smaller or more specific ranges over larger ones. If there is a tie, the system selects the route with the smallest priority value. If there is still a tie, it uses the layer three and four packet headers to select just one of the remaining matching routes. The packet is then forwarded as specified by the nextHop field of the winning route - either to another instance destination, an instance gateway, or a Google Compute Engine-operated gateway.\n\nPackets that do not match any route in the sending instance's routing table are dropped. (== resource_for beta.routes ==) (== resource_for v1.routes ==)", - "properties": { - "creationTimestamp": { - "type": "string", - "description": "[Output Only] Creation timestamp in RFC3339 text format." - }, - "description": { - "type": "string", - "description": "An optional description of this resource. Provide this property when you create the resource." - }, - "destRange": { - "type": "string", - "description": "The destination range of outgoing packets that this route applies to. Only IPv4 is supported.", - "annotations": { - "required": [ - "compute.routes.insert" - ] - } - }, - "id": { - "type": "string", - "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", - "format": "uint64" - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of this resource. Always compute#routes for Route resources.", - "default": "compute#route" - }, - "name": { - "type": "string", - "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "annotations": { - "required": [ - "compute.routes.insert" - ] - } - }, - "network": { - "type": "string", - "description": "Fully-qualified URL of the network that this route applies to.", - "annotations": { - "required": [ - "compute.routes.insert" - ] - } - }, - "nextHopGateway": { - "type": "string", - "description": "The URL to a gateway that should handle matching packets. You can only specify the internet gateway using a full or partial valid URL: projects/\u003cproject-id\u003e/global/gateways/default-internet-gateway" - }, - "nextHopInstance": { - "type": "string", - "description": "The URL to an instance that should handle matching packets. You can specify this as a full or partial URL. For example:\nhttps://www.googleapis.com/compute/v1/projects/project/zones/zone/instances/" - }, - "nextHopIp": { - "type": "string", - "description": "The network IP address of an instance that should handle matching packets. Only IPv4 is supported." - }, - "nextHopNetwork": { - "type": "string", - "description": "The URL of the local network if it should handle matching packets." - }, - "nextHopPeering": { - "type": "string", - "description": "[Output Only] The network peering name that should handle matching packets, which should conform to RFC1035." - }, - "nextHopVpnTunnel": { - "type": "string", - "description": "The URL to a VpnTunnel that should handle matching packets." - }, - "priority": { - "type": "integer", - "description": "The priority of this route. Priority is used to break ties in cases where there is more than one matching route of equal prefix length. In the case of two routes with equal prefix length, the one with the lowest-numbered priority value wins. Default value is 1000. Valid range is 0 through 65535.", - "format": "uint32", - "annotations": { - "required": [ - "compute.routes.insert" - ] - } - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined fully-qualified URL for this resource." - }, - "tags": { - "type": "array", - "description": "A list of instance tags to which this route applies.", - "items": { - "type": "string" - }, - "annotations": { - "required": [ - "compute.routes.insert" - ] - } - }, - "warnings": { - "type": "array", - "description": "[Output Only] If potential misconfigurations are detected for this route, this field will be populated with warning messages.", - "items": { - "type": "object", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." + "path": "{project}/aggregated/interconnectAttachments", + "response": { + "$ref": "InterconnectAttachmentAggregatedList" }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "delete": { + "description": "Deletes the specified interconnect attachment.", + "httpMethod": "DELETE", + "id": "compute.interconnectAttachments.delete", + "parameterOrder": [ + "project", + "region", + "interconnectAttachment" + ], + "parameters": { + "interconnectAttachment": { + "description": "Name of the interconnect attachment to delete.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/regions/{region}/interconnectAttachments/{interconnectAttachment}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Returns the specified interconnect attachment.", + "httpMethod": "GET", + "id": "compute.interconnectAttachments.get", + "parameterOrder": [ + "project", + "region", + "interconnectAttachment" + ], + "parameters": { + "interconnectAttachment": { + "description": "Name of the interconnect attachment to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/interconnectAttachments/{interconnectAttachment}", + "response": { + "$ref": "InterconnectAttachment" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "description": "Creates an InterconnectAttachment in the specified project using the data included in the request.", + "httpMethod": "POST", + "id": "compute.interconnectAttachments.insert", + "parameterOrder": [ + "project", + "region" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/regions/{region}/interconnectAttachments", + "request": { + "$ref": "InterconnectAttachment" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "description": "Retrieves the list of interconnect attachments contained within the specified region.", + "httpMethod": "GET", + "id": "compute.interconnectAttachments.list", + "parameterOrder": [ + "project", + "region" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/interconnectAttachments", + "response": { + "$ref": "InterconnectAttachmentList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "patch": { + "description": "Updates the specified interconnect attachment with the data included in the request. This method supports PATCH semantics and uses the JSON merge patch format and processing rules.", + "httpMethod": "PATCH", + "id": "compute.interconnectAttachments.patch", + "parameterOrder": [ + "project", + "region", + "interconnectAttachment" + ], + "parameters": { + "interconnectAttachment": { + "description": "Name of the interconnect attachment to patch.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/regions/{region}/interconnectAttachments/{interconnectAttachment}", + "request": { + "$ref": "InterconnectAttachment" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setLabels": { + "description": "Sets the labels on an InterconnectAttachment. To learn more about labels, read the Labeling Resources documentation.", + "httpMethod": "POST", + "id": "compute.interconnectAttachments.setLabels", + "parameterOrder": [ + "project", + "region", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "The region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/interconnectAttachments/{resource}/setLabels", + "request": { + "$ref": "RegionSetLabelsRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource.", + "httpMethod": "POST", + "id": "compute.interconnectAttachments.testIamPermissions", + "parameterOrder": [ + "project", + "region", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "The name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/interconnectAttachments/{resource}/testIamPermissions", + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } } - } - } - } - }, - "RouteList": { - "id": "RouteList", - "type": "object", - "description": "Contains a list of Route resources.", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." }, - "items": { - "type": "array", - "description": "A list of Route resources.", - "items": { - "$ref": "Route" - } - }, - "kind": { - "type": "string", - "description": "Type of resource.", - "default": "compute#routeList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } + "interconnectLocations": { + "methods": { + "get": { + "description": "Returns the details for the specified interconnect location. Get a list of available interconnect locations by making a list() request.", + "httpMethod": "GET", + "id": "compute.interconnectLocations.get", + "parameterOrder": [ + "project", + "interconnectLocation" + ], + "parameters": { + "interconnectLocation": { + "description": "Name of the interconnect location to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/interconnectLocations/{interconnectLocation}", + "response": { + "$ref": "InterconnectLocation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "list": { + "description": "Retrieves the list of interconnect locations available to the specified project.", + "httpMethod": "GET", + "id": "compute.interconnectLocations.list", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/interconnectLocations", + "response": { + "$ref": "InterconnectLocationList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." } - } - } - } - }, - "Router": { - "id": "Router", - "type": "object", - "description": "Router resource.", - "properties": { - "bgp": { - "$ref": "RouterBgp", - "description": "BGP information specific to this router." }, - "bgpPeers": { - "type": "array", - "description": "BGP information that needs to be configured into the routing stack to establish the BGP peering. It must specify peer ASN and either interface name, IP, or peer IP. Please refer to RFC4273.", - "items": { - "$ref": "RouterBgpPeer" - } - }, - "creationTimestamp": { - "type": "string", - "description": "[Output Only] Creation timestamp in RFC3339 text format." - }, - "description": { - "type": "string", - "description": "An optional description of this resource. Provide this property when you create the resource." - }, - "id": { - "type": "string", - "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", - "format": "uint64" - }, - "interfaces": { - "type": "array", - "description": "Router interfaces. Each interface requires either one linked resource (e.g. linkedVpnTunnel), or IP address and IP address range (e.g. ipRange), or both.", - "items": { - "$ref": "RouterInterface" - } - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#router for routers.", - "default": "compute#router" - }, - "name": { - "type": "string", - "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "annotations": { - "required": [ - "compute.routers.insert" - ] - } - }, - "network": { - "type": "string", - "description": "URI of the network to which this router belongs.", - "annotations": { - "required": [ - "compute.routers.insert" - ] - } - }, - "region": { - "type": "string", - "description": "[Output Only] URI of the region where the router resides." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for the resource." - } - } - }, - "RouterAdvertisedIpRange": { - "id": "RouterAdvertisedIpRange", - "type": "object", - "description": "Description-tagged IP ranges for the router to advertise.", - "properties": { - "description": { - "type": "string", - "description": "User-specified description for the IP range." - }, - "range": { - "type": "string", - "description": "The IP range to advertise. The value must be a CIDR-formatted string." - } - } - }, - "RouterAggregatedList": { - "id": "RouterAggregatedList", - "type": "object", - "description": "Contains a list of routers.", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "object", - "description": "A list of Router resources.", - "additionalProperties": { - "$ref": "RoutersScopedList", - "description": "Name of the scope containing this set of routers." - } - }, - "kind": { - "type": "string", - "description": "Type of resource.", - "default": "compute#routerAggregatedList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } + "interconnects": { + "methods": { + "delete": { + "description": "Deletes the specified interconnect.", + "httpMethod": "DELETE", + "id": "compute.interconnects.delete", + "parameterOrder": [ + "project", + "interconnect" + ], + "parameters": { + "interconnect": { + "description": "Name of the interconnect to delete.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/interconnects/{interconnect}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Returns the specified interconnect. Get a list of available interconnects by making a list() request.", + "httpMethod": "GET", + "id": "compute.interconnects.get", + "parameterOrder": [ + "project", + "interconnect" + ], + "parameters": { + "interconnect": { + "description": "Name of the interconnect to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/interconnects/{interconnect}", + "response": { + "$ref": "Interconnect" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "description": "Creates a Interconnect in the specified project using the data included in the request.", + "httpMethod": "POST", + "id": "compute.interconnects.insert", + "parameterOrder": [ + "project" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/interconnects", + "request": { + "$ref": "Interconnect" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "description": "Retrieves the list of interconnect available to the specified project.", + "httpMethod": "GET", + "id": "compute.interconnects.list", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/interconnects", + "response": { + "$ref": "InterconnectList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "patch": { + "description": "Updates the specified interconnect with the data included in the request. This method supports PATCH semantics and uses the JSON merge patch format and processing rules.", + "httpMethod": "PATCH", + "id": "compute.interconnects.patch", + "parameterOrder": [ + "project", + "interconnect" + ], + "parameters": { + "interconnect": { + "description": "Name of the interconnect to update.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/interconnects/{interconnect}", + "request": { + "$ref": "Interconnect" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setLabels": { + "description": "Sets the labels on an Interconnect. To learn more about labels, read the Labeling Resources documentation.", + "httpMethod": "POST", + "id": "compute.interconnects.setLabels", + "parameterOrder": [ + "project", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/interconnects/{resource}/setLabels", + "request": { + "$ref": "GlobalSetLabelsRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource.", + "httpMethod": "POST", + "id": "compute.interconnects.testIamPermissions", + "parameterOrder": [ + "project", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "(?:[-a-z0-9_]{0,62}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/interconnects/{resource}/testIamPermissions", + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." } - } - } - } - }, - "RouterBgp": { - "id": "RouterBgp", - "type": "object", - "properties": { - "advertiseMode": { - "type": "string", - "description": "User-specified flag to indicate which mode to use for advertisement.", - "enum": [ - "CUSTOM", - "DEFAULT" - ], - "enumDescriptions": [ - "", - "" - ] - }, - "advertisedGroups": { - "type": "array", - "description": "User-specified list of prefix groups to advertise in custom mode. This field can only be populated if advertise_mode is CUSTOM and is advertised to all peers of the router. These groups will be advertised in addition to any specified prefixes. Leave this field blank to advertise no custom groups.", - "items": { - "type": "string", - "enum": [ - "ALL_SUBNETS" - ], - "enumDescriptions": [ - "" - ] - } - }, - "advertisedIpRanges": { - "type": "array", - "description": "User-specified list of individual IP ranges to advertise in custom mode. This field can only be populated if advertise_mode is CUSTOM and is advertised to all peers of the router. These IP ranges will be advertised in addition to any specified groups. Leave this field blank to advertise no custom IP ranges.", - "items": { - "$ref": "RouterAdvertisedIpRange" - } - }, - "asn": { - "type": "integer", - "description": "Local BGP Autonomous System Number (ASN). Must be an RFC6996 private ASN, either 16-bit or 32-bit. The value will be fixed for this router resource. All VPN tunnels that link to this router will have the same local ASN.", - "format": "uint32" - } - } - }, - "RouterBgpPeer": { - "id": "RouterBgpPeer", - "type": "object", - "properties": { - "advertiseMode": { - "type": "string", - "description": "User-specified flag to indicate which mode to use for advertisement.", - "enum": [ - "CUSTOM", - "DEFAULT" - ], - "enumDescriptions": [ - "", - "" - ] - }, - "advertisedGroups": { - "type": "array", - "description": "User-specified list of prefix groups to advertise in custom mode. This field can only be populated if advertise_mode is CUSTOM and overrides the list defined for the router (in Bgp message). These groups will be advertised in addition to any specified prefixes. Leave this field blank to advertise no custom groups.", - "items": { - "type": "string", - "enum": [ - "ALL_SUBNETS" - ], - "enumDescriptions": [ - "" - ] - } - }, - "advertisedIpRanges": { - "type": "array", - "description": "User-specified list of individual IP ranges to advertise in custom mode. This field can only be populated if advertise_mode is CUSTOM and overrides the list defined for the router (in Bgp message). These IP ranges will be advertised in addition to any specified groups. Leave this field blank to advertise no custom IP ranges.", - "items": { - "$ref": "RouterAdvertisedIpRange" - } - }, - "advertisedRoutePriority": { - "type": "integer", - "description": "The priority of routes advertised to this BGP peer. In the case where there is more than one matching route of maximum length, the routes with lowest priority value win.", - "format": "uint32" - }, - "interfaceName": { - "type": "string", - "description": "Name of the interface the BGP peer is associated with." - }, - "ipAddress": { - "type": "string", - "description": "IP address of the interface inside Google Cloud Platform. Only IPv4 is supported." - }, - "name": { - "type": "string", - "description": "Name of this BGP peer. The name must be 1-63 characters long and comply with RFC1035.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" - }, - "peerAsn": { - "type": "integer", - "description": "Peer BGP Autonomous System Number (ASN). For VPN use case, this value can be different for every tunnel.", - "format": "uint32" - }, - "peerIpAddress": { - "type": "string", - "description": "IP address of the BGP interface outside Google cloud. Only IPv4 is supported." - } - } - }, - "RouterInterface": { - "id": "RouterInterface", - "type": "object", - "properties": { - "ipRange": { - "type": "string", - "description": "IP address and range of the interface. The IP range must be in the RFC3927 link-local IP space. The value must be a CIDR-formatted string, for example: 169.254.0.1/30. NOTE: Do not truncate the address as it represents the IP address of the interface." - }, - "linkedInterconnectAttachment": { - "type": "string", - "description": "URI of the linked interconnect attachment. It must be in the same region as the router. Each interface can have at most one linked resource and it could either be a VPN Tunnel or an interconnect attachment." - }, - "linkedVpnTunnel": { - "type": "string", - "description": "URI of the linked VPN tunnel. It must be in the same region as the router. Each interface can have at most one linked resource and it could either be a VPN Tunnel or an interconnect attachment." - }, - "name": { - "type": "string", - "description": "Name of this interface entry. The name must be 1-63 characters long and comply with RFC1035.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" - } - } - }, - "RouterList": { - "id": "RouterList", - "type": "object", - "description": "Contains a list of Router resources.", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "array", - "description": "A list of Router resources.", - "items": { - "$ref": "Router" - } - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#router for routers.", - "default": "compute#routerList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "RouterStatus": { - "id": "RouterStatus", - "type": "object", - "properties": { - "bestRoutes": { - "type": "array", - "description": "Best routes for this router's network.", - "items": { - "$ref": "Route" - } - }, - "bestRoutesForRouter": { - "type": "array", - "description": "Best routes learned by this router.", - "items": { - "$ref": "Route" - } - }, - "bgpPeerStatus": { - "type": "array", - "items": { - "$ref": "RouterStatusBgpPeerStatus" - } - }, - "network": { - "type": "string", - "description": "URI of the network to which this router belongs." - } - } - }, - "RouterStatusBgpPeerStatus": { - "id": "RouterStatusBgpPeerStatus", - "type": "object", - "properties": { - "advertisedRoutes": { - "type": "array", - "description": "Routes that were advertised to the remote BGP peer", - "items": { - "$ref": "Route" - } - }, - "ipAddress": { - "type": "string", - "description": "IP address of the local BGP interface." - }, - "linkedVpnTunnel": { - "type": "string", - "description": "URL of the VPN tunnel that this BGP peer controls." - }, - "name": { - "type": "string", - "description": "Name of this BGP peer. Unique within the Routers resource." - }, - "numLearnedRoutes": { - "type": "integer", - "description": "Number of routes learned from the remote BGP Peer.", - "format": "uint32" - }, - "peerIpAddress": { - "type": "string", - "description": "IP address of the remote BGP interface." - }, - "state": { - "type": "string", - "description": "BGP state as specified in RFC1771." - }, - "status": { - "type": "string", - "description": "Status of the BGP peer: {UP, DOWN}", - "enum": [ - "DOWN", - "UNKNOWN", - "UP" - ], - "enumDescriptions": [ - "", - "", - "" - ] - }, - "uptime": { - "type": "string", - "description": "Time this session has been up. Format: 14 years, 51 weeks, 6 days, 23 hours, 59 minutes, 59 seconds" - }, - "uptimeSeconds": { - "type": "string", - "description": "Time this session has been up, in seconds. Format: 145" - } - } - }, - "RouterStatusResponse": { - "id": "RouterStatusResponse", - "type": "object", - "properties": { - "kind": { - "type": "string", - "description": "Type of resource.", - "default": "compute#routerStatusResponse" - }, - "result": { - "$ref": "RouterStatus" - } - } - }, - "RoutersPreviewResponse": { - "id": "RoutersPreviewResponse", - "type": "object", - "properties": { - "resource": { - "$ref": "Router", - "description": "Preview of given router." - } - } - }, - "RoutersScopedList": { - "id": "RoutersScopedList", - "type": "object", - "properties": { - "routers": { - "type": "array", - "description": "List of routers contained in this scope.", - "items": { - "$ref": "Router" - } - }, - "warning": { - "type": "object", - "description": "Informational warning which replaces the list of routers when the list is empty.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "Rule": { - "id": "Rule", - "type": "object", - "description": "A rule to be applied in a Policy.", - "properties": { - "action": { - "type": "string", - "description": "Required", - "enum": [ - "ALLOW", - "ALLOW_WITH_LOG", - "DENY", - "DENY_WITH_LOG", - "LOG", - "NO_ACTION" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "" - ] - }, - "conditions": { - "type": "array", - "description": "Additional restrictions that must be met. All conditions must pass for the rule to match.", - "items": { - "$ref": "Condition" - } - }, - "description": { - "type": "string", - "description": "Human-readable description of the rule." - }, - "ins": { - "type": "array", - "description": "If one or more 'in' clauses are specified, the rule matches if the PRINCIPAL/AUTHORITY_SELECTOR is in at least one of these entries.", - "items": { - "type": "string" - } - }, - "logConfigs": { - "type": "array", - "description": "The config returned to callers of tech.iam.IAM.CheckPolicy for any entries that match the LOG action.", - "items": { - "$ref": "LogConfig" - } - }, - "notIns": { - "type": "array", - "description": "If one or more 'not_in' clauses are specified, the rule matches if the PRINCIPAL/AUTHORITY_SELECTOR is in none of the entries.", - "items": { - "type": "string" - } - }, - "permissions": { - "type": "array", - "description": "A permission is a string of form '..' (e.g., 'storage.buckets.list'). A value of '*' matches all permissions, and a verb part of '*' (e.g., 'storage.buckets.*') matches all verbs.", - "items": { - "type": "string" - } - } - } - }, - "SSLHealthCheck": { - "id": "SSLHealthCheck", - "type": "object", - "properties": { - "port": { - "type": "integer", - "description": "The TCP port number for the health check request. The default value is 443. Valid values are 1 through 65535.", - "format": "int32" - }, - "portName": { - "type": "string", - "description": "Port name as defined in InstanceGroup#NamedPort#name. If both port and port_name are defined, port takes precedence." - }, - "proxyHeader": { - "type": "string", - "description": "Specifies the type of proxy header to append before sending data to the backend, either NONE or PROXY_V1. The default is NONE.", - "enum": [ - "NONE", - "PROXY_V1" - ], - "enumDescriptions": [ - "", - "" - ] - }, - "request": { - "type": "string", - "description": "The application data to send once the SSL connection has been established (default value is empty). If both request and response are empty, the connection establishment alone will indicate health. The request data can only be ASCII." - }, - "response": { - "type": "string", - "description": "The bytes to match against the beginning of the response data. If left empty (the default value), any response will indicate health. The response data can only be ASCII." - } - } - }, - "Scheduling": { - "id": "Scheduling", - "type": "object", - "description": "Sets the scheduling options for an Instance.", - "properties": { - "automaticRestart": { - "type": "boolean", - "description": "Specifies whether the instance should be automatically restarted if it is terminated by Compute Engine (not terminated by a user). You can only set the automatic restart option for standard instances. Preemptible instances cannot be automatically restarted.\n\nBy default, this is set to true so an instance is automatically restarted if it is terminated by Compute Engine." - }, - "onHostMaintenance": { - "type": "string", - "description": "Defines the maintenance behavior for this instance. For standard instances, the default behavior is MIGRATE. For preemptible instances, the default and only possible behavior is TERMINATE. For more information, see Setting Instance Scheduling Options.", - "enum": [ - "MIGRATE", - "TERMINATE" - ], - "enumDescriptions": [ - "", - "" - ] - }, - "preemptible": { - "type": "boolean", - "description": "Defines whether the instance is preemptible. This can only be set during instance creation, it cannot be set or changed after the instance has been created." - } - } - }, - "SecurityPolicy": { - "id": "SecurityPolicy", - "type": "object", - "description": "A security policy is comprised of one or more rules. It can also be associated with one or more 'targets'.", - "properties": { - "creationTimestamp": { - "type": "string", - "description": "[Output Only] Creation timestamp in RFC3339 text format." - }, - "description": { - "type": "string", - "description": "An optional description of this resource. Provide this property when you create the resource." - }, - "fingerprint": { - "type": "string", - "description": "Specifies a fingerprint for this resource, which is essentially a hash of the metadata's contents and used for optimistic locking. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update metadata. You must always provide an up-to-date fingerprint hash in order to update or change metadata.\n\nTo see the latest fingerprint, make get() request to the security policy.", - "format": "byte" - }, - "id": { - "type": "string", - "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", - "format": "uint64" - }, - "kind": { - "type": "string", - "description": "[Output only] Type of the resource. Always compute#securityPolicyfor security policies", - "default": "compute#securityPolicy" - }, - "name": { - "type": "string", - "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" - }, - "rules": { - "type": "array", - "description": "List of rules that belong to this policy. There must always be a default rule (rule with priority 2147483647 and match \"*\"). If no rules are provided when creating a security policy, a default rule with action \"allow\" will be added.", - "items": { - "$ref": "SecurityPolicyRule" - } - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for the resource." - } - } - }, - "SecurityPolicyList": { - "id": "SecurityPolicyList", - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "array", - "description": "A list of SecurityPolicy resources.", - "items": { - "$ref": "SecurityPolicy" - } - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#securityPolicyList for listsof securityPolicies", - "default": "compute#securityPolicyList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "SecurityPolicyReference": { - "id": "SecurityPolicyReference", - "type": "object", - "properties": { - "securityPolicy": { - "type": "string" - } - } - }, - "SecurityPolicyRule": { - "id": "SecurityPolicyRule", - "type": "object", - "description": "Represents a rule that describes one or more match conditions along with the action to be taken when traffic matches this condition (allow or deny).", - "properties": { - "action": { - "type": "string", - "description": "The Action to preform when the client connection triggers the rule. Can currently be either \"allow\" or \"deny()\" where valid values for status are 403, 404, and 502." - }, - "description": { - "type": "string", - "description": "An optional description of this resource. Provide this property when you create the resource." - }, - "kind": { - "type": "string", - "description": "[Output only] Type of the resource. Always compute#securityPolicyRule for security policy rules", - "default": "compute#securityPolicyRule" - }, - "match": { - "$ref": "SecurityPolicyRuleMatcher", - "description": "A match condition that incoming traffic is evaluated against. If it evaluates to true, the corresponding ?action? is enforced." - }, - "preview": { - "type": "boolean", - "description": "If set to true, the specified action is not enforced." - }, - "priority": { - "type": "integer", - "description": "An integer indicating the priority of a rule in the list. The priority must be a positive value between 0 and 2147483647. Rules are evaluated in the increasing order of priority.", - "format": "int32" - } - } - }, - "SecurityPolicyRuleMatcher": { - "id": "SecurityPolicyRuleMatcher", - "type": "object", - "description": "Represents a match condition that incoming traffic is evaluated against. Exactly one field must be specified.", - "properties": { - "config": { - "$ref": "SecurityPolicyRuleMatcherConfig", - "description": "The configuration options available when specifying versioned_expr. This field must be specified if versioned_expr is specified and cannot be specified if versioned_expr is not specified." - }, - "srcIpRanges": { - "type": "array", - "description": "CIDR IP address range. Only IPv4 is supported.", - "items": { - "type": "string" - } - }, - "versionedExpr": { - "type": "string", - "description": "Preconfigured versioned expression. If this field is specified, config must also be specified. Available preconfigured expressions along with their requirements are: SRC_IPS_V1 - must specify the corresponding src_ip_range field in config.", - "enum": [ - "SRC_IPS_V1", - "VERSIONED_EXPR_UNSPECIFIED" - ], - "enumDescriptions": [ - "", - "" - ] - } - } - }, - "SecurityPolicyRuleMatcherConfig": { - "id": "SecurityPolicyRuleMatcherConfig", - "type": "object", - "properties": { - "srcIpRanges": { - "type": "array", - "description": "CIDR IP address range. Only IPv4 is supported.", - "items": { - "type": "string" - } - } - } - }, - "SerialPortOutput": { - "id": "SerialPortOutput", - "type": "object", - "description": "An instance's serial console output.", - "properties": { - "contents": { - "type": "string", - "description": "[Output Only] The contents of the console output." - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of the resource. Always compute#serialPortOutput for serial port output.", - "default": "compute#serialPortOutput" - }, - "next": { - "type": "string", - "description": "[Output Only] The position of the next byte of content from the serial console output. Use this value in the next request as the start parameter.", - "format": "int64" - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "start": { - "type": "string", - "description": "The starting byte position of the output that was returned. This should match the start parameter sent with the request. If the serial console output exceeds the size of the buffer, older output will be overwritten by newer content and the start values will be mismatched.", - "format": "int64" - } - } - }, - "ServiceAccount": { - "id": "ServiceAccount", - "type": "object", - "description": "A service account.", - "properties": { - "email": { - "type": "string", - "description": "Email address of the service account." - }, - "scopes": { - "type": "array", - "description": "The list of scopes to be made available for this service account.", - "items": { - "type": "string" - } - } - } - }, - "SignedUrlKey": { - "id": "SignedUrlKey", - "type": "object", - "description": "Represents a customer-supplied Signing Key used by Cloud CDN Signed URLs", - "properties": { - "keyName": { - "type": "string", - "description": "Name of the key. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" - }, - "keyValue": { - "type": "string", - "description": "128-bit key value used for signing the URL. The key value must be a valid RFC 4648 Section 5 base64url encoded string." - } - } - }, - "Snapshot": { - "id": "Snapshot", - "type": "object", - "description": "A persistent disk snapshot resource. (== resource_for beta.snapshots ==) (== resource_for v1.snapshots ==)", - "properties": { - "creationTimestamp": { - "type": "string", - "description": "[Output Only] Creation timestamp in RFC3339 text format." - }, - "description": { - "type": "string", - "description": "An optional description of this resource. Provide this property when you create the resource." - }, - "diskSizeGb": { - "type": "string", - "description": "[Output Only] Size of the snapshot, specified in GB.", - "format": "int64" - }, - "id": { - "type": "string", - "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", - "format": "uint64" - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of the resource. Always compute#snapshot for Snapshot resources.", - "default": "compute#snapshot" - }, - "labelFingerprint": { - "type": "string", - "description": "A fingerprint for the labels being applied to this snapshot, which is essentially a hash of the labels set used for optimistic locking. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update labels. You must always provide an up-to-date fingerprint hash in order to update or change labels.\n\nTo see the latest fingerprint, make a get() request to retrieve a snapshot.", - "format": "byte" - }, - "labels": { - "type": "object", - "description": "Labels to apply to this snapshot. These can be later modified by the setLabels method. Label values may be empty.", - "additionalProperties": { - "type": "string" - } }, "licenseCodes": { - "type": "array", - "description": "Integer license codes indicating which licenses are attached to this snapshot.", - "items": { - "type": "string", - "format": "int64" - } + "methods": { + "get": { + "description": "Return a specified license code. License codes are mirrored across all projects that have permissions to read the License Code.", + "httpMethod": "GET", + "id": "compute.licenseCodes.get", + "parameterOrder": [ + "project", + "licenseCode" + ], + "parameters": { + "licenseCode": { + "description": "Number corresponding to the License code resource to return.", + "location": "path", + "pattern": "[0-9]{0,61}?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/licenseCodes/{licenseCode}", + "response": { + "$ref": "LicenseCode" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + } + } }, "licenses": { - "type": "array", - "description": "[Output Only] A list of public visible licenses that apply to this snapshot. This can be because the original image had licenses attached (such as a Windows image).", - "items": { - "type": "string" - } - }, - "name": { - "type": "string", - "description": "Name of the resource; provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for the resource." - }, - "snapshotEncryptionKey": { - "$ref": "CustomerEncryptionKey", - "description": "Encrypts the snapshot using a customer-supplied encryption key.\n\nAfter you encrypt a snapshot using a customer-supplied key, you must provide the same key if you use the image later For example, you must provide the encryption key when you create a disk from the encrypted snapshot in a future request.\n\nCustomer-supplied encryption keys do not protect access to metadata of the disk.\n\nIf you do not provide an encryption key when creating the snapshot, then the snapshot will be encrypted using an automatically generated key and you do not need to provide a key to use the snapshot later." - }, - "sourceDisk": { - "type": "string", - "description": "[Output Only] The source disk used to create this snapshot." - }, - "sourceDiskEncryptionKey": { - "$ref": "CustomerEncryptionKey", - "description": "The customer-supplied encryption key of the source disk. Required if the source disk is protected by a customer-supplied encryption key." - }, - "sourceDiskId": { - "type": "string", - "description": "[Output Only] The ID value of the disk used to create this snapshot. This value may be used to determine whether the snapshot was taken from the current or a previous instance of a given disk name." - }, - "status": { - "type": "string", - "description": "[Output Only] The status of the snapshot. This can be CREATING, DELETING, FAILED, READY, or UPLOADING.", - "enum": [ - "CREATING", - "DELETING", - "FAILED", - "READY", - "UPLOADING" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "" - ] - }, - "storageBytes": { - "type": "string", - "description": "[Output Only] A size of the storage used by the snapshot. As snapshots share storage, this number is expected to change with snapshot creation/deletion.", - "format": "int64" - }, - "storageBytesStatus": { - "type": "string", - "description": "[Output Only] An indicator whether storageBytes is in a stable state or it is being adjusted as a result of shared storage reallocation. This status can either be UPDATING, meaning the size of the snapshot is being updated, or UP_TO_DATE, meaning the size of the snapshot is up-to-date.", - "enum": [ - "UPDATING", - "UP_TO_DATE" - ], - "enumDescriptions": [ - "", - "" - ] - } - } - }, - "SnapshotList": { - "id": "SnapshotList", - "type": "object", - "description": "Contains a list of Snapshot resources.", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "array", - "description": "A list of Snapshot resources.", - "items": { - "$ref": "Snapshot" - } - }, - "kind": { - "type": "string", - "description": "Type of resource.", - "default": "compute#snapshotList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "SourceInstanceParams": { - "id": "SourceInstanceParams", - "type": "object", - "description": "A specification of the parameters to use when creating the instance template from a source instance.", - "properties": { - "diskConfigs": { - "type": "array", - "description": "Attached disks configuration. If not provided, defaults are applied: For boot disk and any other R/W disks, new custom images will be created from each disk. For read-only disks, they will be attached in read-only mode. Local SSD disks will be created as blank volumes.", - "items": { - "$ref": "DiskInstantiationConfig" - } - } - } - }, - "SslCertificate": { - "id": "SslCertificate", - "type": "object", - "description": "An SslCertificate resource. This resource provides a mechanism to upload an SSL key and certificate to the load balancer to serve secure connections from the user. (== resource_for beta.sslCertificates ==) (== resource_for v1.sslCertificates ==)", - "properties": { - "certificate": { - "type": "string", - "description": "A local certificate file. The certificate must be in PEM format. The certificate chain must be no greater than 5 certs long. The chain must include at least one intermediate cert." - }, - "creationTimestamp": { - "type": "string", - "description": "[Output Only] Creation timestamp in RFC3339 text format." - }, - "description": { - "type": "string", - "description": "An optional description of this resource. Provide this property when you create the resource." - }, - "id": { - "type": "string", - "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", - "format": "uint64" - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of the resource. Always compute#sslCertificate for SSL certificates.", - "default": "compute#sslCertificate" - }, - "name": { - "type": "string", - "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" - }, - "privateKey": { - "type": "string", - "description": "A write-only private key in PEM format. Only insert requests will include this field." - }, - "selfLink": { - "type": "string", - "description": "[Output only] Server-defined URL for the resource." - } - } - }, - "SslCertificateList": { - "id": "SslCertificateList", - "type": "object", - "description": "Contains a list of SslCertificate resources.", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "array", - "description": "A list of SslCertificate resources.", - "items": { - "$ref": "SslCertificate" - } - }, - "kind": { - "type": "string", - "description": "Type of resource.", - "default": "compute#sslCertificateList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "SslPoliciesList": { - "id": "SslPoliciesList", - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "array", - "description": "A list of SslPolicy resources.", - "items": { - "$ref": "SslPolicy" - } - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of the resource. Always compute#sslPoliciesList for lists of sslPolicies.", - "default": "compute#sslPoliciesList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "SslPoliciesListAvailableFeaturesResponse": { - "id": "SslPoliciesListAvailableFeaturesResponse", - "type": "object", - "properties": { - "features": { - "type": "array", - "items": { - "type": "string" - } - } - } - }, - "SslPolicy": { - "id": "SslPolicy", - "type": "object", - "description": "A SSL policy specifies the server-side support for SSL features. This can be attached to a TargetHttpsProxy or a TargetSslProxy. This affects connections between clients and the HTTPS or SSL proxy load balancer. They do not affect the connection between the load balancers and the backends.", - "properties": { - "creationTimestamp": { - "type": "string", - "description": "[Output Only] Creation timestamp in RFC3339 text format." - }, - "customFeatures": { - "type": "array", - "description": "List of features enabled when the selected profile is CUSTOM. The\n- method returns the set of features that can be specified in this list. This field must be empty if the profile is not CUSTOM.", - "items": { - "type": "string" - } - }, - "description": { - "type": "string", - "description": "An optional description of this resource. Provide this property when you create the resource." - }, - "enabledFeatures": { - "type": "array", - "description": "[Output Only] The list of features enabled in the SSL policy.", - "items": { - "type": "string" - } - }, - "fingerprint": { - "type": "string", - "description": "Fingerprint of this resource. A hash of the contents stored in this object. This field is used in optimistic locking. This field will be ignored when inserting a SslPolicy. An up-to-date fingerprint must be provided in order to update the SslPolicy.", - "format": "byte" - }, - "id": { - "type": "string", - "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", - "format": "uint64" - }, - "kind": { - "type": "string", - "description": "[Output only] Type of the resource. Always compute#sslPolicyfor SSL policies.", - "default": "compute#sslPolicy" - }, - "minTlsVersion": { - "type": "string", - "description": "The minimum version of SSL protocol that can be used by the clients to establish a connection with the load balancer. This can be one of TLS_1_0, TLS_1_1, TLS_1_2, TLS_1_3.", - "enum": [ - "TLS_1_0", - "TLS_1_1", - "TLS_1_2", - "TLS_1_3" - ], - "enumDescriptions": [ - "", - "", - "", - "" - ] - }, - "name": { - "type": "string", - "description": "Name of the resource. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" - }, - "profile": { - "type": "string", - "description": "Profile specifies the set of SSL features that can be used by the load balancer when negotiating SSL with clients. This can be one of COMPATIBLE, MODERN, RESTRICTED, or CUSTOM. If using CUSTOM, the set of SSL features to enable must be specified in the customFeatures field.", - "enum": [ - "COMPATIBLE", - "CUSTOM", - "MODERN", - "RESTRICTED" - ], - "enumDescriptions": [ - "", - "", - "", - "" - ] - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for the resource." - }, - "warnings": { - "type": "array", - "description": "[Output Only] If potential misconfigurations are detected for this SSL policy, this field will be populated with warning messages.", - "items": { - "type": "object", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." + "methods": { + "delete": { + "description": "Deletes the specified license.", + "httpMethod": "DELETE", + "id": "compute.licenses.delete", + "parameterOrder": [ + "project", + "license" + ], + "parameters": { + "license": { + "description": "Name of the license resource to delete.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } + "path": "{project}/global/licenses/{license}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Returns the specified License resource.", + "httpMethod": "GET", + "id": "compute.licenses.get", + "parameterOrder": [ + "project", + "license" + ], + "parameters": { + "license": { + "description": "Name of the License resource to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/licenses/{license}", + "response": { + "$ref": "License" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "description": "Create a License resource in the specified project.", + "httpMethod": "POST", + "id": "compute.licenses.insert", + "parameterOrder": [ + "project" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/licenses", + "request": { + "$ref": "License" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/devstorage.full_control", + "https://www.googleapis.com/auth/devstorage.read_only", + "https://www.googleapis.com/auth/devstorage.read_write" + ] + }, + "list": { + "description": "Retrieves the list of licenses available in the specified project. This method does not get any licenses that belong to other projects, including licenses attached to publicly-available images, like Debian 8. If you want to get a list of publicly-available licenses, use this method to make a request to the respective image project, such as debian-cloud or windows-cloud.", + "httpMethod": "GET", + "id": "compute.licenses.list", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/licenses", + "response": { + "$ref": "LicensesListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } } - } - } - } - }, - "SslPolicyReference": { - "id": "SslPolicyReference", - "type": "object", - "properties": { - "sslPolicy": { - "type": "string", - "description": "URL of the SSL policy resource. Set this to empty string to clear any existing SSL policy associated with the target proxy resource." - } - } - }, - "Subnetwork": { - "id": "Subnetwork", - "type": "object", - "description": "A Subnetwork resource. (== resource_for beta.subnetworks ==) (== resource_for v1.subnetworks ==)", - "properties": { - "allowSubnetCidrRoutesOverlap": { - "type": "boolean", - "description": "Whether this subnetwork can conflict with static routes. Setting this to true allows this subnetwork's primary and secondary ranges to conflict with routes that have already been configured on the corresponding network. Static routes will take precedence over the subnetwork route if the route prefix length is at least as large as the subnetwork prefix length.\n\nAlso, packets destined to IPs within subnetwork may contain private/sensitive data and are prevented from leaving the virtual network. Setting this field to true will disable this feature.\n\nThe default value is false and applies to all existing subnetworks and automatically created subnetworks.\n\nThis field cannot be set to true at resource creation time." }, - "creationTimestamp": { - "type": "string", - "description": "[Output Only] Creation timestamp in RFC3339 text format." - }, - "description": { - "type": "string", - "description": "An optional description of this resource. Provide this property when you create the resource. This field can be set only at resource creation time." - }, - "fingerprint": { - "type": "string", - "description": "Fingerprint of this resource. A hash of the contents stored in this object. This field is used in optimistic locking. This field will be ignored when inserting a Subnetwork. An up-to-date fingerprint must be provided in order to update the Subnetwork.", - "format": "byte" - }, - "gatewayAddress": { - "type": "string", - "description": "[Output Only] The gateway address for default routes to reach destination addresses outside this subnetwork. This field can be set only at resource creation time." - }, - "id": { - "type": "string", - "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", - "format": "uint64" - }, - "ipCidrRange": { - "type": "string", - "description": "The range of internal addresses that are owned by this subnetwork. Provide this property when you create the subnetwork. For example, 10.0.0.0/8 or 192.168.0.0/16. Ranges must be unique and non-overlapping within a network. Only IPv4 is supported. This field can be set only at resource creation time." - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of the resource. Always compute#subnetwork for Subnetwork resources.", - "default": "compute#subnetwork" - }, - "name": { - "type": "string", - "description": "The name of the resource, provided by the client when initially creating the resource. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" - }, - "network": { - "type": "string", - "description": "The URL of the network to which this subnetwork belongs, provided by the client when initially creating the subnetwork. Only networks that are in the distributed mode can have subnetworks. This field can be set only at resource creation time." - }, - "privateIpGoogleAccess": { - "type": "boolean", - "description": "Whether the VMs in this subnet can access Google services without assigned external IP addresses. This field can be both set at resource creation time and updated using setPrivateIpGoogleAccess." - }, - "region": { - "type": "string", - "description": "URL of the region where the Subnetwork resides. This field can be set only at resource creation time." - }, - "secondaryIpRanges": { - "type": "array", - "description": "An array of configurations for secondary IP ranges for VM instances contained in this subnetwork. The primary IP of such VM must belong to the primary ipCidrRange of the subnetwork. The alias IPs may belong to either primary or secondary ranges.", - "items": { - "$ref": "SubnetworkSecondaryRange" - } - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for the resource." - } - } - }, - "SubnetworkAggregatedList": { - "id": "SubnetworkAggregatedList", - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "object", - "description": "A list of SubnetworksScopedList resources.", - "additionalProperties": { - "$ref": "SubnetworksScopedList", - "description": "Name of the scope containing this set of Subnetworks." - } - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#subnetworkAggregatedList for aggregated lists of subnetworks.", - "default": "compute#subnetworkAggregatedList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } + "machineTypes": { + "methods": { + "aggregatedList": { + "description": "Retrieves an aggregated list of machine types.", + "httpMethod": "GET", + "id": "compute.machineTypes.aggregatedList", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/aggregated/machineTypes", + "response": { + "$ref": "MachineTypeAggregatedList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "get": { + "description": "Returns the specified machine type. Get a list of available machine types by making a list() request.", + "httpMethod": "GET", + "id": "compute.machineTypes.get", + "parameterOrder": [ + "project", + "zone", + "machineType" + ], + "parameters": { + "machineType": { + "description": "Name of the machine type to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/machineTypes/{machineType}", + "response": { + "$ref": "MachineType" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "list": { + "description": "Retrieves a list of machine types available to the specified project.", + "httpMethod": "GET", + "id": "compute.machineTypes.list", + "parameterOrder": [ + "project", + "zone" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/machineTypes", + "response": { + "$ref": "MachineTypeList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." } - } - } - } - }, - "SubnetworkList": { - "id": "SubnetworkList", - "type": "object", - "description": "Contains a list of Subnetwork resources.", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." }, - "items": { - "type": "array", - "description": "A list of Subnetwork resources.", - "items": { - "$ref": "Subnetwork" - } - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#subnetworkList for lists of subnetworks.", - "default": "compute#subnetworkList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } + "networks": { + "methods": { + "addPeering": { + "description": "Adds a peering to the specified network.", + "httpMethod": "POST", + "id": "compute.networks.addPeering", + "parameterOrder": [ + "project", + "network" + ], + "parameters": { + "network": { + "description": "Name of the network resource to add peering to.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/networks/{network}/addPeering", + "request": { + "$ref": "NetworksAddPeeringRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "delete": { + "description": "Deletes the specified network.", + "httpMethod": "DELETE", + "id": "compute.networks.delete", + "parameterOrder": [ + "project", + "network" + ], + "parameters": { + "network": { + "description": "Name of the network to delete.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/networks/{network}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Returns the specified network. Get a list of available networks by making a list() request.", + "httpMethod": "GET", + "id": "compute.networks.get", + "parameterOrder": [ + "project", + "network" + ], + "parameters": { + "network": { + "description": "Name of the network to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/networks/{network}", + "response": { + "$ref": "Network" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "description": "Creates a network in the specified project using the data included in the request.", + "httpMethod": "POST", + "id": "compute.networks.insert", + "parameterOrder": [ + "project" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/networks", + "request": { + "$ref": "Network" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "description": "Retrieves the list of networks available to the specified project.", + "httpMethod": "GET", + "id": "compute.networks.list", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/networks", + "response": { + "$ref": "NetworkList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "patch": { + "description": "Patches the specified network with the data included in the request. Only the following fields can be modified: routingConfig.routingMode.", + "httpMethod": "PATCH", + "id": "compute.networks.patch", + "parameterOrder": [ + "project", + "network" + ], + "parameters": { + "network": { + "description": "Name of the network to update.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/networks/{network}", + "request": { + "$ref": "Network" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "removePeering": { + "description": "Removes a peering from the specified network.", + "httpMethod": "POST", + "id": "compute.networks.removePeering", + "parameterOrder": [ + "project", + "network" + ], + "parameters": { + "network": { + "description": "Name of the network resource to remove peering from.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/networks/{network}/removePeering", + "request": { + "$ref": "NetworksRemovePeeringRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "switchToCustomMode": { + "description": "Switches the network mode from auto subnet mode to custom subnet mode.", + "httpMethod": "POST", + "id": "compute.networks.switchToCustomMode", + "parameterOrder": [ + "project", + "network" + ], + "parameters": { + "network": { + "description": "Name of the network to be updated.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/networks/{network}/switchToCustomMode", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource.", + "httpMethod": "POST", + "id": "compute.networks.testIamPermissions", + "parameterOrder": [ + "project", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "(?:[-a-z0-9_]{0,62}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/networks/{resource}/testIamPermissions", + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + } + } + }, + "projects": { + "methods": { + "disableXpnHost": { + "description": "Disable this project as a shared VPC host project.", + "httpMethod": "POST", + "id": "compute.projects.disableXpnHost", + "parameterOrder": [ + "project" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/disableXpnHost", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "disableXpnResource": { + "description": "Disable a serivce resource (a.k.a service project) associated with this host project.", + "httpMethod": "POST", + "id": "compute.projects.disableXpnResource", + "parameterOrder": [ + "project" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/disableXpnResource", + "request": { + "$ref": "ProjectsDisableXpnResourceRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "enableXpnHost": { + "description": "Enable this project as a shared VPC host project.", + "httpMethod": "POST", + "id": "compute.projects.enableXpnHost", + "parameterOrder": [ + "project" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/enableXpnHost", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "enableXpnResource": { + "description": "Enable service resource (a.k.a service project) for a host project, so that subnets in the host project can be used by instances in the service project.", + "httpMethod": "POST", + "id": "compute.projects.enableXpnResource", + "parameterOrder": [ + "project" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/enableXpnResource", + "request": { + "$ref": "ProjectsEnableXpnResourceRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Returns the specified Project resource.", + "httpMethod": "GET", + "id": "compute.projects.get", + "parameterOrder": [ + "project" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}", + "response": { + "$ref": "Project" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "getXpnHost": { + "description": "Get the shared VPC host project that this project links to. May be empty if no link exists.", + "httpMethod": "GET", + "id": "compute.projects.getXpnHost", + "parameterOrder": [ + "project" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/getXpnHost", + "response": { + "$ref": "Project" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "getXpnResources": { + "description": "Get service resources (a.k.a service project) associated with this host project.", + "httpMethod": "GET", + "id": "compute.projects.getXpnResources", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "order_by": { + "location": "query", + "type": "string" + }, + "pageToken": { + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/getXpnResources", + "response": { + "$ref": "ProjectsGetXpnResources" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "listXpnHosts": { + "description": "List all shared VPC host projects visible to the user in an organization.", + "httpMethod": "POST", + "id": "compute.projects.listXpnHosts", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "order_by": { + "location": "query", + "type": "string" + }, + "pageToken": { + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/listXpnHosts", + "request": { + "$ref": "ProjectsListXpnHostsRequest" + }, + "response": { + "$ref": "XpnHostList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "moveDisk": { + "description": "Moves a persistent disk from one zone to another.", + "httpMethod": "POST", + "id": "compute.projects.moveDisk", + "parameterOrder": [ + "project" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/moveDisk", + "request": { + "$ref": "DiskMoveRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "moveInstance": { + "description": "Moves an instance and its attached persistent disks from one zone to another.", + "httpMethod": "POST", + "id": "compute.projects.moveInstance", + "parameterOrder": [ + "project" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/moveInstance", + "request": { + "$ref": "InstanceMoveRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setCommonInstanceMetadata": { + "description": "Sets metadata common to all instances within the specified project using the data included in the request.", + "httpMethod": "POST", + "id": "compute.projects.setCommonInstanceMetadata", + "parameterOrder": [ + "project" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/setCommonInstanceMetadata", + "request": { + "$ref": "Metadata" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setDefaultNetworkTier": { + "description": "Sets the default network tier of the project. The default network tier is used when an address/forwardingRule/instance is created without specifying the network tier field.", + "httpMethod": "POST", + "id": "compute.projects.setDefaultNetworkTier", + "parameterOrder": [ + "project" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/setDefaultNetworkTier", + "request": { + "$ref": "ProjectsSetDefaultNetworkTierRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setUsageExportBucket": { + "description": "Enables the usage export feature and sets the usage export bucket where reports are stored. If you provide an empty request body using this method, the usage export feature will be disabled.", + "httpMethod": "POST", + "id": "compute.projects.setUsageExportBucket", + "parameterOrder": [ + "project" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/setUsageExportBucket", + "request": { + "$ref": "UsageExportLocation" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/devstorage.full_control", + "https://www.googleapis.com/auth/devstorage.read_only", + "https://www.googleapis.com/auth/devstorage.read_write" + ] + } + } + }, + "regionAutoscalers": { + "methods": { + "delete": { + "description": "Deletes the specified autoscaler.", + "httpMethod": "DELETE", + "id": "compute.regionAutoscalers.delete", + "parameterOrder": [ + "project", + "region", + "autoscaler" + ], + "parameters": { + "autoscaler": { + "description": "Name of the autoscaler to delete.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/regions/{region}/autoscalers/{autoscaler}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Returns the specified autoscaler.", + "httpMethod": "GET", + "id": "compute.regionAutoscalers.get", + "parameterOrder": [ + "project", + "region", + "autoscaler" + ], + "parameters": { + "autoscaler": { + "description": "Name of the autoscaler to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/autoscalers/{autoscaler}", + "response": { + "$ref": "Autoscaler" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "description": "Creates an autoscaler in the specified project using the data included in the request.", + "httpMethod": "POST", + "id": "compute.regionAutoscalers.insert", + "parameterOrder": [ + "project", + "region" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/regions/{region}/autoscalers", + "request": { + "$ref": "Autoscaler" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "description": "Retrieves a list of autoscalers contained within the specified region.", + "httpMethod": "GET", + "id": "compute.regionAutoscalers.list", + "parameterOrder": [ + "project", + "region" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/autoscalers", + "response": { + "$ref": "RegionAutoscalerList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "patch": { + "description": "Updates an autoscaler in the specified project using the data included in the request. This method supports PATCH semantics and uses the JSON merge patch format and processing rules.", + "httpMethod": "PATCH", + "id": "compute.regionAutoscalers.patch", + "parameterOrder": [ + "project", + "region" + ], + "parameters": { + "autoscaler": { + "description": "Name of the autoscaler to patch.", + "location": "query", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/regions/{region}/autoscalers", + "request": { + "$ref": "Autoscaler" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource.", + "httpMethod": "POST", + "id": "compute.regionAutoscalers.testIamPermissions", + "parameterOrder": [ + "project", + "region", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "The name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/autoscalers/{resource}/testIamPermissions", + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "update": { + "description": "Updates an autoscaler in the specified project using the data included in the request.", + "httpMethod": "PUT", + "id": "compute.regionAutoscalers.update", + "parameterOrder": [ + "project", + "region" + ], + "parameters": { + "autoscaler": { + "description": "Name of the autoscaler to update.", + "location": "query", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/regions/{region}/autoscalers", + "request": { + "$ref": "Autoscaler" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + } + } + }, + "regionBackendServices": { + "methods": { + "delete": { + "description": "Deletes the specified regional BackendService resource.", + "httpMethod": "DELETE", + "id": "compute.regionBackendServices.delete", + "parameterOrder": [ + "project", + "region", + "backendService" + ], + "parameters": { + "backendService": { + "description": "Name of the BackendService resource to delete.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/regions/{region}/backendServices/{backendService}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Returns the specified regional BackendService resource.", + "httpMethod": "GET", + "id": "compute.regionBackendServices.get", + "parameterOrder": [ + "project", + "region", + "backendService" + ], + "parameters": { + "backendService": { + "description": "Name of the BackendService resource to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/backendServices/{backendService}", + "response": { + "$ref": "BackendService" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "getHealth": { + "description": "Gets the most recent health check results for this regional BackendService.", + "httpMethod": "POST", + "id": "compute.regionBackendServices.getHealth", + "parameterOrder": [ + "project", + "region", + "backendService" + ], + "parameters": { + "backendService": { + "description": "Name of the BackendService resource for which to get health.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/backendServices/{backendService}/getHealth", + "request": { + "$ref": "ResourceGroupReference" + }, + "response": { + "$ref": "BackendServiceGroupHealth" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "description": "Creates a regional BackendService resource in the specified project using the data included in the request. There are several restrictions and guidelines to keep in mind when creating a regional backend service. Read Restrictions and Guidelines for more information.", + "httpMethod": "POST", + "id": "compute.regionBackendServices.insert", + "parameterOrder": [ + "project", + "region" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/regions/{region}/backendServices", + "request": { + "$ref": "BackendService" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "description": "Retrieves the list of regional BackendService resources available to the specified project in the given region.", + "httpMethod": "GET", + "id": "compute.regionBackendServices.list", + "parameterOrder": [ + "project", + "region" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/backendServices", + "response": { + "$ref": "BackendServiceList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "patch": { + "description": "Updates the specified regional BackendService resource with the data included in the request. There are several restrictions and guidelines to keep in mind when updating a backend service. Read Restrictions and Guidelines for more information. This method supports PATCH semantics and uses the JSON merge patch format and processing rules.", + "httpMethod": "PATCH", + "id": "compute.regionBackendServices.patch", + "parameterOrder": [ + "project", + "region", + "backendService" + ], + "parameters": { + "backendService": { + "description": "Name of the BackendService resource to patch.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/regions/{region}/backendServices/{backendService}", + "request": { + "$ref": "BackendService" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource.", + "httpMethod": "POST", + "id": "compute.regionBackendServices.testIamPermissions", + "parameterOrder": [ + "project", + "region", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "The name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/backendServices/{resource}/testIamPermissions", + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "update": { + "description": "Updates the specified regional BackendService resource with the data included in the request. There are several restrictions and guidelines to keep in mind when updating a backend service. Read Restrictions and Guidelines for more information.", + "httpMethod": "PUT", + "id": "compute.regionBackendServices.update", + "parameterOrder": [ + "project", + "region", + "backendService" + ], + "parameters": { + "backendService": { + "description": "Name of the BackendService resource to update.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/regions/{region}/backendServices/{backendService}", + "request": { + "$ref": "BackendService" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + } + } + }, + "regionCommitments": { + "methods": { + "aggregatedList": { + "description": "Retrieves an aggregated list of commitments.", + "httpMethod": "GET", + "id": "compute.regionCommitments.aggregatedList", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/aggregated/commitments", + "response": { + "$ref": "CommitmentAggregatedList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "get": { + "description": "Returns the specified commitment resource. Get a list of available commitments by making a list() request.", + "httpMethod": "GET", + "id": "compute.regionCommitments.get", + "parameterOrder": [ + "project", + "region", + "commitment" + ], + "parameters": { + "commitment": { + "description": "Name of the commitment to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/commitments/{commitment}", + "response": { + "$ref": "Commitment" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "description": "Creates a commitment in the specified project using the data included in the request.", + "httpMethod": "POST", + "id": "compute.regionCommitments.insert", + "parameterOrder": [ + "project", + "region" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/regions/{region}/commitments", + "request": { + "$ref": "Commitment" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "description": "Retrieves a list of commitments contained within the specified region.", + "httpMethod": "GET", + "id": "compute.regionCommitments.list", + "parameterOrder": [ + "project", + "region" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/commitments", + "response": { + "$ref": "CommitmentList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + } + } + }, + "regionDiskTypes": { + "methods": { + "get": { + "description": "Returns the specified regional disk type. Get a list of available disk types by making a list() request.", + "httpMethod": "GET", + "id": "compute.regionDiskTypes.get", + "parameterOrder": [ + "project", + "region", + "diskType" + ], + "parameters": { + "diskType": { + "description": "Name of the disk type to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "The name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/diskTypes/{diskType}", + "response": { + "$ref": "DiskType" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "list": { + "description": "Retrieves a list of regional disk types available to the specified project.", + "httpMethod": "GET", + "id": "compute.regionDiskTypes.list", + "parameterOrder": [ + "project", + "region" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "The name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/diskTypes", + "response": { + "$ref": "RegionDiskTypeList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + } + } + }, + "regionDisks": { + "methods": { + "createSnapshot": { + "description": "Creates a snapshot of this regional disk.", + "httpMethod": "POST", + "id": "compute.regionDisks.createSnapshot", + "parameterOrder": [ + "project", + "region", + "disk" + ], + "parameters": { + "disk": { + "description": "Name of the regional persistent disk to snapshot.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/regions/{region}/disks/{disk}/createSnapshot", + "request": { + "$ref": "Snapshot" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "delete": { + "description": "Deletes the specified regional persistent disk. Deleting a regional disk removes all the replicas of its data permanently and is irreversible. However, deleting a disk does not delete any snapshots previously made from the disk. You must separately delete snapshots.", + "httpMethod": "DELETE", + "id": "compute.regionDisks.delete", + "parameterOrder": [ + "project", + "region", + "disk" + ], + "parameters": { + "disk": { + "description": "Name of the regional persistent disk to delete.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/regions/{region}/disks/{disk}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Returns a specified regional persistent disk.", + "httpMethod": "GET", + "id": "compute.regionDisks.get", + "parameterOrder": [ + "project", + "region", + "disk" + ], + "parameters": { + "disk": { + "description": "Name of the regional persistent disk to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/disks/{disk}", + "response": { + "$ref": "Disk" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "description": "Creates a persistent regional disk in the specified project using the data included in the request.", + "httpMethod": "POST", + "id": "compute.regionDisks.insert", + "parameterOrder": [ + "project", + "region" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "sourceImage": { + "description": "Optional. Source image to restore onto a disk.", + "location": "query", + "type": "string" + } + }, + "path": "{project}/regions/{region}/disks", + "request": { + "$ref": "Disk" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "description": "Retrieves the list of persistent disks contained within the specified region.", + "httpMethod": "GET", + "id": "compute.regionDisks.list", + "parameterOrder": [ + "project", + "region" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/disks", + "response": { + "$ref": "DiskList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "resize": { + "description": "Resizes the specified regional persistent disk.", + "httpMethod": "POST", + "id": "compute.regionDisks.resize", + "parameterOrder": [ + "project", + "region", + "disk" + ], + "parameters": { + "disk": { + "description": "Name of the regional persistent disk.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "The project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/regions/{region}/disks/{disk}/resize", + "request": { + "$ref": "RegionDisksResizeRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setLabels": { + "description": "Sets the labels on the target regional disk.", + "httpMethod": "POST", + "id": "compute.regionDisks.setLabels", + "parameterOrder": [ + "project", + "region", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "The region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/disks/{resource}/setLabels", + "request": { + "$ref": "RegionSetLabelsRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource.", + "httpMethod": "POST", + "id": "compute.regionDisks.testIamPermissions", + "parameterOrder": [ + "project", + "region", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "The name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/disks/{resource}/testIamPermissions", + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + } + } + }, + "regionInstanceGroupManagers": { + "methods": { + "abandonInstances": { + "description": "Schedules a group action to remove the specified instances from the managed instance group. Abandoning an instance does not delete the instance, but it does remove the instance from any target pools that are applied by the managed instance group. This method reduces the targetSize of the managed instance group by the number of instances that you abandon. This operation is marked as DONE when the action is scheduled even if the instances have not yet been removed from the group. You must separately verify the status of the abandoning action with the listmanagedinstances method.\n\nIf the group is part of a backend service that has enabled connection draining, it can take up to 60 seconds after the connection draining duration has elapsed before the VM instance is removed or deleted.\n\nYou can specify a maximum of 1000 instances with this method per request.", + "httpMethod": "POST", + "id": "compute.regionInstanceGroupManagers.abandonInstances", + "parameterOrder": [ + "project", + "region", + "instanceGroupManager" + ], + "parameters": { + "instanceGroupManager": { + "description": "Name of the managed instance group.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/abandonInstances", + "request": { + "$ref": "RegionInstanceGroupManagersAbandonInstancesRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "delete": { + "description": "Deletes the specified managed instance group and all of the instances in that group.", + "httpMethod": "DELETE", + "id": "compute.regionInstanceGroupManagers.delete", + "parameterOrder": [ + "project", + "region", + "instanceGroupManager" + ], + "parameters": { + "instanceGroupManager": { + "description": "Name of the managed instance group to delete.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "deleteInstances": { + "description": "Schedules a group action to delete the specified instances in the managed instance group. The instances are also removed from any target pools of which they were a member. This method reduces the targetSize of the managed instance group by the number of instances that you delete. This operation is marked as DONE when the action is scheduled even if the instances are still being deleted. You must separately verify the status of the deleting action with the listmanagedinstances method.\n\nIf the group is part of a backend service that has enabled connection draining, it can take up to 60 seconds after the connection draining duration has elapsed before the VM instance is removed or deleted.\n\nYou can specify a maximum of 1000 instances with this method per request.", + "httpMethod": "POST", + "id": "compute.regionInstanceGroupManagers.deleteInstances", + "parameterOrder": [ + "project", + "region", + "instanceGroupManager" + ], + "parameters": { + "instanceGroupManager": { + "description": "Name of the managed instance group.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/deleteInstances", + "request": { + "$ref": "RegionInstanceGroupManagersDeleteInstancesRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Returns all of the details about the specified managed instance group.", + "httpMethod": "GET", + "id": "compute.regionInstanceGroupManagers.get", + "parameterOrder": [ + "project", + "region", + "instanceGroupManager" + ], + "parameters": { + "instanceGroupManager": { + "description": "Name of the managed instance group to return.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}", + "response": { + "$ref": "InstanceGroupManager" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "description": "Creates a managed instance group using the information that you specify in the request. After the group is created, it schedules an action to create instances in the group using the specified instance template. This operation is marked as DONE when the group is created even if the instances in the group have not yet been created. You must separately verify the status of the individual instances with the listmanagedinstances method.\n\nA regional managed instance group can contain up to 2000 instances.", + "httpMethod": "POST", + "id": "compute.regionInstanceGroupManagers.insert", + "parameterOrder": [ + "project", + "region" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/regions/{region}/instanceGroupManagers", + "request": { + "$ref": "InstanceGroupManager" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "description": "Retrieves the list of managed instance groups that are contained within the specified region.", + "httpMethod": "GET", + "id": "compute.regionInstanceGroupManagers.list", + "parameterOrder": [ + "project", + "region" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/instanceGroupManagers", + "response": { + "$ref": "RegionInstanceGroupManagerList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "listManagedInstances": { + "description": "Lists the instances in the managed instance group and instances that are scheduled to be created. The list includes any current actions that the group has scheduled for its instances.", + "httpMethod": "POST", + "id": "compute.regionInstanceGroupManagers.listManagedInstances", + "parameterOrder": [ + "project", + "region", + "instanceGroupManager" + ], + "parameters": { + "filter": { + "location": "query", + "type": "string" + }, + "instanceGroupManager": { + "description": "The name of the managed instance group.", + "location": "path", + "required": true, + "type": "string" + }, + "maxResults": { + "default": "500", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "order_by": { + "location": "query", + "type": "string" + }, + "pageToken": { + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/listManagedInstances", + "response": { + "$ref": "RegionInstanceGroupManagersListInstancesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "patch": { + "description": "Updates a managed instance group using the information that you specify in the request. This operation is marked as DONE when the group is patched even if the instances in the group are still in the process of being patched. You must separately verify the status of the individual instances with the listmanagedinstances method. This method supports PATCH semantics and uses the JSON merge patch format and processing rules.", + "httpMethod": "PATCH", + "id": "compute.regionInstanceGroupManagers.patch", + "parameterOrder": [ + "project", + "region", + "instanceGroupManager" + ], + "parameters": { + "instanceGroupManager": { + "description": "The name of the instance group manager.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}", + "request": { + "$ref": "InstanceGroupManager" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "recreateInstances": { + "description": "Schedules a group action to recreate the specified instances in the managed instance group. The instances are deleted and recreated using the current instance template for the managed instance group. This operation is marked as DONE when the action is scheduled even if the instances have not yet been recreated. You must separately verify the status of the recreating action with the listmanagedinstances method.\n\nIf the group is part of a backend service that has enabled connection draining, it can take up to 60 seconds after the connection draining duration has elapsed before the VM instance is removed or deleted.\n\nYou can specify a maximum of 1000 instances with this method per request.", + "httpMethod": "POST", + "id": "compute.regionInstanceGroupManagers.recreateInstances", + "parameterOrder": [ + "project", + "region", + "instanceGroupManager" + ], + "parameters": { + "instanceGroupManager": { + "description": "Name of the managed instance group.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/recreateInstances", + "request": { + "$ref": "RegionInstanceGroupManagersRecreateRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "resize": { + "description": "Changes the intended size for the managed instance group. If you increase the size, the group schedules actions to create new instances using the current instance template. If you decrease the size, the group schedules delete actions on one or more instances. The resize operation is marked DONE when the resize actions are scheduled even if the group has not yet added or deleted any instances. You must separately verify the status of the creating or deleting actions with the listmanagedinstances method.\n\nIf the group is part of a backend service that has enabled connection draining, it can take up to 60 seconds after the connection draining duration has elapsed before the VM instance is removed or deleted.", + "httpMethod": "POST", + "id": "compute.regionInstanceGroupManagers.resize", + "parameterOrder": [ + "project", + "region", + "instanceGroupManager", + "size" + ], + "parameters": { + "instanceGroupManager": { + "description": "Name of the managed instance group.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "size": { + "description": "Number of instances that should exist in this instance group manager.", + "format": "int32", + "location": "query", + "minimum": "0", + "required": true, + "type": "integer" + } + }, + "path": "{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/resize", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setAutoHealingPolicies": { + "description": "Modifies the autohealing policy for the instances in this managed instance group.", + "httpMethod": "POST", + "id": "compute.regionInstanceGroupManagers.setAutoHealingPolicies", + "parameterOrder": [ + "project", + "region", + "instanceGroupManager" + ], + "parameters": { + "instanceGroupManager": { + "description": "Name of the managed instance group.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/setAutoHealingPolicies", + "request": { + "$ref": "RegionInstanceGroupManagersSetAutoHealingRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setInstanceTemplate": { + "description": "Sets the instance template to use when creating new instances or recreating instances in this group. Existing instances are not affected.", + "httpMethod": "POST", + "id": "compute.regionInstanceGroupManagers.setInstanceTemplate", + "parameterOrder": [ + "project", + "region", + "instanceGroupManager" + ], + "parameters": { + "instanceGroupManager": { + "description": "The name of the managed instance group.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/setInstanceTemplate", + "request": { + "$ref": "RegionInstanceGroupManagersSetTemplateRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setTargetPools": { + "description": "Modifies the target pools to which all new instances in this group are assigned. Existing instances in the group are not affected.", + "httpMethod": "POST", + "id": "compute.regionInstanceGroupManagers.setTargetPools", + "parameterOrder": [ + "project", + "region", + "instanceGroupManager" + ], + "parameters": { + "instanceGroupManager": { + "description": "Name of the managed instance group.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/setTargetPools", + "request": { + "$ref": "RegionInstanceGroupManagersSetTargetPoolsRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource.", + "httpMethod": "POST", + "id": "compute.regionInstanceGroupManagers.testIamPermissions", + "parameterOrder": [ + "project", + "region", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "The name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/instanceGroupManagers/{resource}/testIamPermissions", + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "update": { + "description": "Updates a managed instance group using the information that you specify in the request. This operation is marked as DONE when the group is updated even if the instances in the group have not yet been updated. You must separately verify the status of the individual instances with the listmanagedinstances method.", + "httpMethod": "PUT", + "id": "compute.regionInstanceGroupManagers.update", + "parameterOrder": [ + "project", + "region", + "instanceGroupManager" + ], + "parameters": { + "instanceGroupManager": { + "description": "The name of the instance group manager.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}", + "request": { + "$ref": "InstanceGroupManager" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + } + } + }, + "regionInstanceGroups": { + "methods": { + "get": { + "description": "Returns the specified instance group resource.", + "httpMethod": "GET", + "id": "compute.regionInstanceGroups.get", + "parameterOrder": [ + "project", + "region", + "instanceGroup" + ], + "parameters": { + "instanceGroup": { + "description": "Name of the instance group resource to return.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/instanceGroups/{instanceGroup}", + "response": { + "$ref": "InstanceGroup" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "list": { + "description": "Retrieves the list of instance group resources contained within the specified region.", + "httpMethod": "GET", + "id": "compute.regionInstanceGroups.list", + "parameterOrder": [ + "project", + "region" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/instanceGroups", + "response": { + "$ref": "RegionInstanceGroupList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "listInstances": { + "description": "Lists the instances in the specified instance group and displays information about the named ports. Depending on the specified options, this method can list all instances or only the instances that are running.", + "httpMethod": "POST", + "id": "compute.regionInstanceGroups.listInstances", + "parameterOrder": [ + "project", + "region", + "instanceGroup" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "instanceGroup": { + "description": "Name of the regional instance group for which we want to list the instances.", + "location": "path", + "required": true, + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/instanceGroups/{instanceGroup}/listInstances", + "request": { + "$ref": "RegionInstanceGroupsListInstancesRequest" + }, + "response": { + "$ref": "RegionInstanceGroupsListInstances" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "setNamedPorts": { + "description": "Sets the named ports for the specified regional instance group.", + "httpMethod": "POST", + "id": "compute.regionInstanceGroups.setNamedPorts", + "parameterOrder": [ + "project", + "region", + "instanceGroup" + ], + "parameters": { + "instanceGroup": { + "description": "The name of the regional instance group where the named ports are updated.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/regions/{region}/instanceGroups/{instanceGroup}/setNamedPorts", + "request": { + "$ref": "RegionInstanceGroupsSetNamedPortsRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource.", + "httpMethod": "POST", + "id": "compute.regionInstanceGroups.testIamPermissions", + "parameterOrder": [ + "project", + "region", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "The name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/instanceGroups/{resource}/testIamPermissions", + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + } + } + }, + "regionOperations": { + "methods": { + "delete": { + "description": "Deletes the specified region-specific Operations resource.", + "httpMethod": "DELETE", + "id": "compute.regionOperations.delete", + "parameterOrder": [ + "project", + "region", + "operation" + ], + "parameters": { + "operation": { + "description": "Name of the Operations resource to delete.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/operations/{operation}", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Retrieves the specified region-specific Operations resource.", + "httpMethod": "GET", + "id": "compute.regionOperations.get", + "parameterOrder": [ + "project", + "region", + "operation" + ], + "parameters": { + "operation": { + "description": "Name of the Operations resource to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/operations/{operation}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "list": { + "description": "Retrieves a list of Operation resources contained within the specified region.", + "httpMethod": "GET", + "id": "compute.regionOperations.list", + "parameterOrder": [ + "project", + "region" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/operations", + "response": { + "$ref": "OperationList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + } + } + }, + "regions": { + "methods": { + "get": { + "description": "Returns the specified Region resource. Get a list of available regions by making a list() request.", + "httpMethod": "GET", + "id": "compute.regions.get", + "parameterOrder": [ + "project", + "region" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region resource to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}", + "response": { + "$ref": "Region" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "list": { + "description": "Retrieves the list of region resources available to the specified project.", + "httpMethod": "GET", + "id": "compute.regions.list", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions", + "response": { + "$ref": "RegionList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + } + } + }, + "routers": { + "methods": { + "aggregatedList": { + "description": "Retrieves an aggregated list of routers.", + "httpMethod": "GET", + "id": "compute.routers.aggregatedList", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/aggregated/routers", + "response": { + "$ref": "RouterAggregatedList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "delete": { + "description": "Deletes the specified Router resource.", + "httpMethod": "DELETE", + "id": "compute.routers.delete", + "parameterOrder": [ + "project", + "region", + "router" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "router": { + "description": "Name of the Router resource to delete.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/routers/{router}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Returns the specified Router resource. Get a list of available routers by making a list() request.", + "httpMethod": "GET", + "id": "compute.routers.get", + "parameterOrder": [ + "project", + "region", + "router" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "router": { + "description": "Name of the Router resource to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/routers/{router}", + "response": { + "$ref": "Router" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "getRouterStatus": { + "description": "Retrieves runtime information of the specified router.", + "httpMethod": "GET", + "id": "compute.routers.getRouterStatus", + "parameterOrder": [ + "project", + "region", + "router" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "router": { + "description": "Name of the Router resource to query.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/routers/{router}/getRouterStatus", + "response": { + "$ref": "RouterStatusResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "description": "Creates a Router resource in the specified project and region using the data included in the request.", + "httpMethod": "POST", + "id": "compute.routers.insert", + "parameterOrder": [ + "project", + "region" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/regions/{region}/routers", + "request": { + "$ref": "Router" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "description": "Retrieves a list of Router resources available to the specified project.", + "httpMethod": "GET", + "id": "compute.routers.list", + "parameterOrder": [ + "project", + "region" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/routers", + "response": { + "$ref": "RouterList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "patch": { + "description": "Patches the specified Router resource with the data included in the request. This method supports PATCH semantics and uses JSON merge patch format and processing rules.", + "httpMethod": "PATCH", + "id": "compute.routers.patch", + "parameterOrder": [ + "project", + "region", + "router" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "router": { + "description": "Name of the Router resource to patch.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/routers/{router}", + "request": { + "$ref": "Router" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "preview": { + "description": "Preview fields auto-generated during router create and update operations. Calling this method does NOT create or update the router.", + "httpMethod": "POST", + "id": "compute.routers.preview", + "parameterOrder": [ + "project", + "region", + "router" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "router": { + "description": "Name of the Router resource to query.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/routers/{router}/preview", + "request": { + "$ref": "Router" + }, + "response": { + "$ref": "RoutersPreviewResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource.", + "httpMethod": "POST", + "id": "compute.routers.testIamPermissions", + "parameterOrder": [ + "project", + "region", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "The name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/routers/{resource}/testIamPermissions", + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "update": { + "description": "Updates the specified Router resource with the data included in the request.", + "httpMethod": "PUT", + "id": "compute.routers.update", + "parameterOrder": [ + "project", + "region", + "router" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "router": { + "description": "Name of the Router resource to update.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/routers/{router}", + "request": { + "$ref": "Router" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + } + } + }, + "routes": { + "methods": { + "delete": { + "description": "Deletes the specified Route resource.", + "httpMethod": "DELETE", + "id": "compute.routes.delete", + "parameterOrder": [ + "project", + "route" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "route": { + "description": "Name of the Route resource to delete.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/routes/{route}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Returns the specified Route resource. Get a list of available routes by making a list() request.", + "httpMethod": "GET", + "id": "compute.routes.get", + "parameterOrder": [ + "project", + "route" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "route": { + "description": "Name of the Route resource to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/routes/{route}", + "response": { + "$ref": "Route" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "description": "Creates a Route resource in the specified project using the data included in the request.", + "httpMethod": "POST", + "id": "compute.routes.insert", + "parameterOrder": [ + "project" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/routes", + "request": { + "$ref": "Route" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "description": "Retrieves the list of Route resources available to the specified project.", + "httpMethod": "GET", + "id": "compute.routes.list", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/routes", + "response": { + "$ref": "RouteList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource.", + "httpMethod": "POST", + "id": "compute.routes.testIamPermissions", + "parameterOrder": [ + "project", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "(?:[-a-z0-9_]{0,62}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/routes/{resource}/testIamPermissions", + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + } + } + }, + "securityPolicies": { + "methods": { + "addRule": { + "description": "Inserts a rule into a security policy.", + "httpMethod": "POST", + "id": "compute.securityPolicies.addRule", + "parameterOrder": [ + "project", + "securityPolicy" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "securityPolicy": { + "description": "Name of the security policy to update.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/securityPolicies/{securityPolicy}/addRule", + "request": { + "$ref": "SecurityPolicyRule" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "delete": { + "description": "Deletes the specified policy.", + "httpMethod": "DELETE", + "id": "compute.securityPolicies.delete", + "parameterOrder": [ + "project", + "securityPolicy" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "securityPolicy": { + "description": "Name of the security policy to delete.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/securityPolicies/{securityPolicy}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "List all of the ordered rules present in a single specified policy.", + "httpMethod": "GET", + "id": "compute.securityPolicies.get", + "parameterOrder": [ + "project", + "securityPolicy" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "securityPolicy": { + "description": "Name of the security policy to get.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/securityPolicies/{securityPolicy}", + "response": { + "$ref": "SecurityPolicy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "getRule": { + "description": "Gets a rule at the specified priority.", + "httpMethod": "GET", + "id": "compute.securityPolicies.getRule", + "parameterOrder": [ + "project", + "securityPolicy" + ], + "parameters": { + "priority": { + "description": "The priority of the rule to get from the security policy.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "securityPolicy": { + "description": "Name of the security policy to which the queried rule belongs.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/securityPolicies/{securityPolicy}/getRule", + "response": { + "$ref": "SecurityPolicyRule" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "description": "Creates a new policy in the specified project using the data included in the request.", + "httpMethod": "POST", + "id": "compute.securityPolicies.insert", + "parameterOrder": [ + "project" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/securityPolicies", + "request": { + "$ref": "SecurityPolicy" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "description": "List all the policies that have been configured for the specified project.", + "httpMethod": "GET", + "id": "compute.securityPolicies.list", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/securityPolicies", + "response": { + "$ref": "SecurityPolicyList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "patch": { + "description": "Patches the specified policy with the data included in the request.", + "httpMethod": "PATCH", + "id": "compute.securityPolicies.patch", + "parameterOrder": [ + "project", + "securityPolicy" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "securityPolicy": { + "description": "Name of the security policy to update.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/securityPolicies/{securityPolicy}", + "request": { + "$ref": "SecurityPolicy" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "patchRule": { + "description": "Patches a rule at the specified priority.", + "httpMethod": "POST", + "id": "compute.securityPolicies.patchRule", + "parameterOrder": [ + "project", + "securityPolicy" + ], + "parameters": { + "priority": { + "description": "The priority of the rule to patch.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "securityPolicy": { + "description": "Name of the security policy to update.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/securityPolicies/{securityPolicy}/patchRule", + "request": { + "$ref": "SecurityPolicyRule" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "removeRule": { + "description": "Deletes a rule at the specified priority.", + "httpMethod": "POST", + "id": "compute.securityPolicies.removeRule", + "parameterOrder": [ + "project", + "securityPolicy" + ], + "parameters": { + "priority": { + "description": "The priority of the rule to remove from the security policy.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "securityPolicy": { + "description": "Name of the security policy to update.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/securityPolicies/{securityPolicy}/removeRule", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource.", + "httpMethod": "POST", + "id": "compute.securityPolicies.testIamPermissions", + "parameterOrder": [ + "project", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "(?:[-a-z0-9_]{0,62}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/securityPolicies/{resource}/testIamPermissions", + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + } + } + }, + "snapshots": { + "methods": { + "delete": { + "description": "Deletes the specified Snapshot resource. Keep in mind that deleting a single snapshot might not necessarily delete all the data on that snapshot. If any data on the snapshot that is marked for deletion is needed for subsequent snapshots, the data will be moved to the next corresponding snapshot.\n\nFor more information, see Deleting snaphots.", + "httpMethod": "DELETE", + "id": "compute.snapshots.delete", + "parameterOrder": [ + "project", + "snapshot" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "snapshot": { + "description": "Name of the Snapshot resource to delete.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/snapshots/{snapshot}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Returns the specified Snapshot resource. Get a list of available snapshots by making a list() request.", + "httpMethod": "GET", + "id": "compute.snapshots.get", + "parameterOrder": [ + "project", + "snapshot" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "snapshot": { + "description": "Name of the Snapshot resource to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/snapshots/{snapshot}", + "response": { + "$ref": "Snapshot" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "list": { + "description": "Retrieves the list of Snapshot resources contained within the specified project.", + "httpMethod": "GET", + "id": "compute.snapshots.list", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/snapshots", + "response": { + "$ref": "SnapshotList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "setLabels": { + "description": "Sets the labels on a snapshot. To learn more about labels, read the Labeling Resources documentation.", + "httpMethod": "POST", + "id": "compute.snapshots.setLabels", + "parameterOrder": [ + "project", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/snapshots/{resource}/setLabels", + "request": { + "$ref": "GlobalSetLabelsRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource.", + "httpMethod": "POST", + "id": "compute.snapshots.testIamPermissions", + "parameterOrder": [ + "project", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "(?:[-a-z0-9_]{0,62}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/snapshots/{resource}/testIamPermissions", + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + } + } + }, + "sslCertificates": { + "methods": { + "delete": { + "description": "Deletes the specified SslCertificate resource.", + "httpMethod": "DELETE", + "id": "compute.sslCertificates.delete", + "parameterOrder": [ + "project", + "sslCertificate" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "sslCertificate": { + "description": "Name of the SslCertificate resource to delete.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/sslCertificates/{sslCertificate}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Returns the specified SslCertificate resource. Get a list of available SSL certificates by making a list() request.", + "httpMethod": "GET", + "id": "compute.sslCertificates.get", + "parameterOrder": [ + "project", + "sslCertificate" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "sslCertificate": { + "description": "Name of the SslCertificate resource to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/sslCertificates/{sslCertificate}", + "response": { + "$ref": "SslCertificate" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "description": "Creates a SslCertificate resource in the specified project using the data included in the request.", + "httpMethod": "POST", + "id": "compute.sslCertificates.insert", + "parameterOrder": [ + "project" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/sslCertificates", + "request": { + "$ref": "SslCertificate" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "description": "Retrieves the list of SslCertificate resources available to the specified project.", + "httpMethod": "GET", + "id": "compute.sslCertificates.list", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/sslCertificates", + "response": { + "$ref": "SslCertificateList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource.", + "httpMethod": "POST", + "id": "compute.sslCertificates.testIamPermissions", + "parameterOrder": [ + "project", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "(?:[-a-z0-9_]{0,62}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/sslCertificates/{resource}/testIamPermissions", + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + } + } + }, + "sslPolicies": { + "methods": { + "delete": { + "description": "Deletes the specified SSL policy. The SSL policy resource can be deleted only if it is not in use by any TargetHttpsProxy or TargetSslProxy resources.", + "httpMethod": "DELETE", + "id": "compute.sslPolicies.delete", + "parameterOrder": [ + "project", + "sslPolicy" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "sslPolicy": { + "description": "Name of the SSL policy to delete. The name must be 1-63 characters long, and comply with RFC1035.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/sslPolicies/{sslPolicy}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "List all of the ordered rules present in a single specified policy.", + "httpMethod": "GET", + "id": "compute.sslPolicies.get", + "parameterOrder": [ + "project", + "sslPolicy" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "sslPolicy": { + "description": "Name of the SSL policy to update. The name must be 1-63 characters long, and comply with RFC1035.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/sslPolicies/{sslPolicy}", + "response": { + "$ref": "SslPolicy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "description": "Returns the specified SSL policy resource. Get a list of available SSL policies by making a list() request.", + "httpMethod": "POST", + "id": "compute.sslPolicies.insert", + "parameterOrder": [ + "project" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/sslPolicies", + "request": { + "$ref": "SslPolicy" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "description": "List all the SSL policies that have been configured for the specified project.", + "httpMethod": "GET", + "id": "compute.sslPolicies.list", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/sslPolicies", + "response": { + "$ref": "SslPoliciesList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "listAvailableFeatures": { + "description": "Lists all features that can be specified in the SSL policy when using custom profile.", + "httpMethod": "GET", + "id": "compute.sslPolicies.listAvailableFeatures", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/sslPolicies/listAvailableFeatures", + "response": { + "$ref": "SslPoliciesListAvailableFeaturesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "patch": { + "description": "Patches the specified SSL policy with the data included in the request.", + "httpMethod": "PATCH", + "id": "compute.sslPolicies.patch", + "parameterOrder": [ + "project", + "sslPolicy" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "sslPolicy": { + "description": "Name of the SSL policy to update. The name must be 1-63 characters long, and comply with RFC1035.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/sslPolicies/{sslPolicy}", + "request": { + "$ref": "SslPolicy" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource.", + "httpMethod": "POST", + "id": "compute.sslPolicies.testIamPermissions", + "parameterOrder": [ + "project", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "(?:[-a-z0-9_]{0,62}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/sslPolicies/{resource}/testIamPermissions", + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." } - } - } - } - }, - "SubnetworkSecondaryRange": { - "id": "SubnetworkSecondaryRange", - "type": "object", - "description": "Represents a secondary IP range of a subnetwork.", - "properties": { - "ipCidrRange": { - "type": "string", - "description": "The range of IP addresses belonging to this subnetwork secondary range. Provide this property when you create the subnetwork. Ranges must be unique and non-overlapping with all primary and secondary IP ranges within a network. Only IPv4 is supported." }, - "rangeName": { - "type": "string", - "description": "The name associated with this subnetwork secondary range, used when adding an alias IP range to a VM instance. The name must be 1-63 characters long, and comply with RFC1035. The name must be unique within the subnetwork." - } - } - }, - "SubnetworksExpandIpCidrRangeRequest": { - "id": "SubnetworksExpandIpCidrRangeRequest", - "type": "object", - "properties": { - "ipCidrRange": { - "type": "string", - "description": "The IP (in CIDR format or netmask) of internal addresses that are legal on this Subnetwork. This range should be disjoint from other subnetworks within this network. This range can only be larger than (i.e. a superset of) the range previously defined before the update." - } - } - }, - "SubnetworksScopedList": { - "id": "SubnetworksScopedList", - "type": "object", - "properties": { "subnetworks": { - "type": "array", - "description": "List of subnetworks contained in this scope.", - "items": { - "$ref": "Subnetwork" - } - }, - "warning": { - "type": "object", - "description": "An informational warning that appears when the list of addresses is empty.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } + "methods": { + "aggregatedList": { + "description": "Retrieves an aggregated list of subnetworks.", + "httpMethod": "GET", + "id": "compute.subnetworks.aggregatedList", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/aggregated/subnetworks", + "response": { + "$ref": "SubnetworkAggregatedList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "delete": { + "description": "Deletes the specified subnetwork.", + "httpMethod": "DELETE", + "id": "compute.subnetworks.delete", + "parameterOrder": [ + "project", + "region", + "subnetwork" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "subnetwork": { + "description": "Name of the Subnetwork resource to delete.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/subnetworks/{subnetwork}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "expandIpCidrRange": { + "description": "Expands the IP CIDR range of the subnetwork to a specified value.", + "httpMethod": "POST", + "id": "compute.subnetworks.expandIpCidrRange", + "parameterOrder": [ + "project", + "region", + "subnetwork" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "subnetwork": { + "description": "Name of the Subnetwork resource to update.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/subnetworks/{subnetwork}/expandIpCidrRange", + "request": { + "$ref": "SubnetworksExpandIpCidrRangeRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Returns the specified subnetwork. Get a list of available subnetworks list() request.", + "httpMethod": "GET", + "id": "compute.subnetworks.get", + "parameterOrder": [ + "project", + "region", + "subnetwork" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "subnetwork": { + "description": "Name of the Subnetwork resource to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/subnetworks/{subnetwork}", + "response": { + "$ref": "Subnetwork" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "getIamPolicy": { + "description": "Gets the access control policy for a resource. May be empty if no such policy or resource exists.", + "httpMethod": "GET", + "id": "compute.subnetworks.getIamPolicy", + "parameterOrder": [ + "project", + "region", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "The name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/subnetworks/{resource}/getIamPolicy", + "response": { + "$ref": "Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "description": "Creates a subnetwork in the specified project using the data included in the request.", + "httpMethod": "POST", + "id": "compute.subnetworks.insert", + "parameterOrder": [ + "project", + "region" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/regions/{region}/subnetworks", + "request": { + "$ref": "Subnetwork" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "description": "Retrieves a list of subnetworks available to the specified project.", + "httpMethod": "GET", + "id": "compute.subnetworks.list", + "parameterOrder": [ + "project", + "region" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/subnetworks", + "response": { + "$ref": "SubnetworkList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "listUsable": { + "description": "Retrieves an aggregated list of usable subnetworks.", + "httpMethod": "GET", + "id": "compute.subnetworks.listUsable", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/aggregated/subnetworks/listUsable", + "response": { + "$ref": "UsableSubnetworksAggregatedList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "patch": { + "description": "Patches the specified subnetwork with the data included in the request. Only the following fields within the subnetwork resource can be specified in the request: secondary_ip_range, allow_subnet_cidr_routes_overlap and role. It is also mandatory to specify the current fingeprint of the subnetwork resource being patched.", + "httpMethod": "PATCH", + "id": "compute.subnetworks.patch", + "parameterOrder": [ + "project", + "region", + "subnetwork" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "subnetwork": { + "description": "Name of the Subnetwork resource to patch.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/subnetworks/{subnetwork}", + "request": { + "$ref": "Subnetwork" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setIamPolicy": { + "description": "Sets the access control policy on the specified resource. Replaces any existing policy.", + "httpMethod": "POST", + "id": "compute.subnetworks.setIamPolicy", + "parameterOrder": [ + "project", + "region", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "The name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/subnetworks/{resource}/setIamPolicy", + "request": { + "$ref": "Policy" + }, + "response": { + "$ref": "Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setPrivateIpGoogleAccess": { + "description": "Set whether VMs in this subnet can access Google services without assigning external IP addresses through Private Google Access.", + "httpMethod": "POST", + "id": "compute.subnetworks.setPrivateIpGoogleAccess", + "parameterOrder": [ + "project", + "region", + "subnetwork" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "subnetwork": { + "description": "Name of the Subnetwork resource.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/subnetworks/{subnetwork}/setPrivateIpGoogleAccess", + "request": { + "$ref": "SubnetworksSetPrivateIpGoogleAccessRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource.", + "httpMethod": "POST", + "id": "compute.subnetworks.testIamPermissions", + "parameterOrder": [ + "project", + "region", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "The name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/subnetworks/{resource}/testIamPermissions", + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." } - } - } - } - }, - "SubnetworksSetPrivateIpGoogleAccessRequest": { - "id": "SubnetworksSetPrivateIpGoogleAccessRequest", - "type": "object", - "properties": { - "privateIpGoogleAccess": { - "type": "boolean" - } - } - }, - "TCPHealthCheck": { - "id": "TCPHealthCheck", - "type": "object", - "properties": { - "port": { - "type": "integer", - "description": "The TCP port number for the health check request. The default value is 80. Valid values are 1 through 65535.", - "format": "int32" }, - "portName": { - "type": "string", - "description": "Port name as defined in InstanceGroup#NamedPort#name. If both port and port_name are defined, port takes precedence." - }, - "proxyHeader": { - "type": "string", - "description": "Specifies the type of proxy header to append before sending data to the backend, either NONE or PROXY_V1. The default is NONE.", - "enum": [ - "NONE", - "PROXY_V1" - ], - "enumDescriptions": [ - "", - "" - ] - }, - "request": { - "type": "string", - "description": "The application data to send once the TCP connection has been established (default value is empty). If both request and response are empty, the connection establishment alone will indicate health. The request data can only be ASCII." - }, - "response": { - "type": "string", - "description": "The bytes to match against the beginning of the response data. If left empty (the default value), any response will indicate health. The response data can only be ASCII." - } - } - }, - "Tags": { - "id": "Tags", - "type": "object", - "description": "A set of instance tags.", - "properties": { - "fingerprint": { - "type": "string", - "description": "Specifies a fingerprint for this request, which is essentially a hash of the metadata's contents and used for optimistic locking. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update metadata. You must always provide an up-to-date fingerprint hash in order to update or change metadata.\n\nTo see the latest fingerprint, make get() request to the instance.", - "format": "byte" - }, - "items": { - "type": "array", - "description": "An array of tags. Each tag must be 1-63 characters long, and comply with RFC1035.", - "items": { - "type": "string" - } - } - } - }, - "TargetHttpProxy": { - "id": "TargetHttpProxy", - "type": "object", - "description": "A TargetHttpProxy resource. This resource defines an HTTP proxy. (== resource_for beta.targetHttpProxies ==) (== resource_for v1.targetHttpProxies ==)", - "properties": { - "creationTimestamp": { - "type": "string", - "description": "[Output Only] Creation timestamp in RFC3339 text format." - }, - "description": { - "type": "string", - "description": "An optional description of this resource. Provide this property when you create the resource." - }, - "id": { - "type": "string", - "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", - "format": "uint64" - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#targetHttpProxy for target HTTP proxies.", - "default": "compute#targetHttpProxy" - }, - "name": { - "type": "string", - "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for the resource." - }, - "urlMap": { - "type": "string", - "description": "URL to the UrlMap resource that defines the mapping from URL to the BackendService." - } - } - }, - "TargetHttpProxyList": { - "id": "TargetHttpProxyList", - "type": "object", - "description": "A list of TargetHttpProxy resources.", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "array", - "description": "A list of TargetHttpProxy resources.", - "items": { - "$ref": "TargetHttpProxy" - } - }, - "kind": { - "type": "string", - "description": "Type of resource. Always compute#targetHttpProxyList for lists of target HTTP proxies.", - "default": "compute#targetHttpProxyList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } + "targetHttpProxies": { + "methods": { + "delete": { + "description": "Deletes the specified TargetHttpProxy resource.", + "httpMethod": "DELETE", + "id": "compute.targetHttpProxies.delete", + "parameterOrder": [ + "project", + "targetHttpProxy" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "targetHttpProxy": { + "description": "Name of the TargetHttpProxy resource to delete.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/targetHttpProxies/{targetHttpProxy}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Returns the specified TargetHttpProxy resource. Get a list of available target HTTP proxies by making a list() request.", + "httpMethod": "GET", + "id": "compute.targetHttpProxies.get", + "parameterOrder": [ + "project", + "targetHttpProxy" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "targetHttpProxy": { + "description": "Name of the TargetHttpProxy resource to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/targetHttpProxies/{targetHttpProxy}", + "response": { + "$ref": "TargetHttpProxy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "description": "Creates a TargetHttpProxy resource in the specified project using the data included in the request.", + "httpMethod": "POST", + "id": "compute.targetHttpProxies.insert", + "parameterOrder": [ + "project" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/targetHttpProxies", + "request": { + "$ref": "TargetHttpProxy" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "description": "Retrieves the list of TargetHttpProxy resources available to the specified project.", + "httpMethod": "GET", + "id": "compute.targetHttpProxies.list", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/targetHttpProxies", + "response": { + "$ref": "TargetHttpProxyList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "setUrlMap": { + "description": "Changes the URL map for TargetHttpProxy.", + "httpMethod": "POST", + "id": "compute.targetHttpProxies.setUrlMap", + "parameterOrder": [ + "project", + "targetHttpProxy" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "targetHttpProxy": { + "description": "Name of the TargetHttpProxy to set a URL map for.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/targetHttpProxies/{targetHttpProxy}/setUrlMap", + "request": { + "$ref": "UrlMapReference" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource.", + "httpMethod": "POST", + "id": "compute.targetHttpProxies.testIamPermissions", + "parameterOrder": [ + "project", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "(?:[-a-z0-9_]{0,62}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/targetHttpProxies/{resource}/testIamPermissions", + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." } - } - } - } - }, - "TargetHttpsProxiesSetQuicOverrideRequest": { - "id": "TargetHttpsProxiesSetQuicOverrideRequest", - "type": "object", - "properties": { - "quicOverride": { - "type": "string", - "description": "QUIC policy for the TargetHttpsProxy resource.", - "enum": [ - "DISABLE", - "ENABLE", - "NONE" - ], - "enumDescriptions": [ - "", - "", - "" - ] - } - } - }, - "TargetHttpsProxiesSetSslCertificatesRequest": { - "id": "TargetHttpsProxiesSetSslCertificatesRequest", - "type": "object", - "properties": { - "sslCertificates": { - "type": "array", - "description": "New set of SslCertificate resources to associate with this TargetHttpsProxy resource. Currently exactly one SslCertificate resource must be specified.", - "items": { - "type": "string" - } - } - } - }, - "TargetHttpsProxy": { - "id": "TargetHttpsProxy", - "type": "object", - "description": "A TargetHttpsProxy resource. This resource defines an HTTPS proxy. (== resource_for beta.targetHttpsProxies ==) (== resource_for v1.targetHttpsProxies ==)", - "properties": { - "creationTimestamp": { - "type": "string", - "description": "[Output Only] Creation timestamp in RFC3339 text format." }, - "description": { - "type": "string", - "description": "An optional description of this resource. Provide this property when you create the resource." - }, - "id": { - "type": "string", - "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", - "format": "uint64" - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#targetHttpsProxy for target HTTPS proxies.", - "default": "compute#targetHttpsProxy" - }, - "name": { - "type": "string", - "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" - }, - "quicOverride": { - "type": "string", - "description": "Specifies the QUIC override policy for this TargetHttpsProxy resource. This determines whether the load balancer will attempt to negotiate QUIC with clients or not. Can specify one of NONE, ENABLE, or DISABLE. Specify ENABLE to always enable QUIC, Enables QUIC when set to ENABLE, and disables QUIC when set to DISABLE. If NONE is specified, uses the QUIC policy with no user overrides, which is equivalent to DISABLE. Not specifying this field is equivalent to specifying NONE.", - "enum": [ - "DISABLE", - "ENABLE", - "NONE" - ], - "enumDescriptions": [ - "", - "", - "" - ] - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for the resource." - }, - "sslCertificates": { - "type": "array", - "description": "URLs to SslCertificate resources that are used to authenticate connections between users and the load balancer. Currently, exactly one SSL certificate must be specified.", - "items": { - "type": "string" - } - }, - "sslPolicy": { - "type": "string", - "description": "URL of SslPolicy resource that will be associated with the TargetHttpsProxy resource. If not set, the TargetHttpsProxy resource will not have any SSL policy configured." - }, - "urlMap": { - "type": "string", - "description": "A fully-qualified or valid partial URL to the UrlMap resource that defines the mapping from URL to the BackendService. For example, the following are all valid URLs for specifying a URL map: \n- https://www.googleapis.compute/v1/projects/project/global/urlMaps/url-map \n- projects/project/global/urlMaps/url-map \n- global/urlMaps/url-map" - } - } - }, - "TargetHttpsProxyList": { - "id": "TargetHttpsProxyList", - "type": "object", - "description": "Contains a list of TargetHttpsProxy resources.", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "array", - "description": "A list of TargetHttpsProxy resources.", - "items": { - "$ref": "TargetHttpsProxy" - } - }, - "kind": { - "type": "string", - "description": "Type of resource. Always compute#targetHttpsProxyList for lists of target HTTPS proxies.", - "default": "compute#targetHttpsProxyList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } + "targetHttpsProxies": { + "methods": { + "delete": { + "description": "Deletes the specified TargetHttpsProxy resource.", + "httpMethod": "DELETE", + "id": "compute.targetHttpsProxies.delete", + "parameterOrder": [ + "project", + "targetHttpsProxy" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "targetHttpsProxy": { + "description": "Name of the TargetHttpsProxy resource to delete.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/targetHttpsProxies/{targetHttpsProxy}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Returns the specified TargetHttpsProxy resource. Get a list of available target HTTPS proxies by making a list() request.", + "httpMethod": "GET", + "id": "compute.targetHttpsProxies.get", + "parameterOrder": [ + "project", + "targetHttpsProxy" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "targetHttpsProxy": { + "description": "Name of the TargetHttpsProxy resource to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/targetHttpsProxies/{targetHttpsProxy}", + "response": { + "$ref": "TargetHttpsProxy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "description": "Creates a TargetHttpsProxy resource in the specified project using the data included in the request.", + "httpMethod": "POST", + "id": "compute.targetHttpsProxies.insert", + "parameterOrder": [ + "project" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/targetHttpsProxies", + "request": { + "$ref": "TargetHttpsProxy" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "description": "Retrieves the list of TargetHttpsProxy resources available to the specified project.", + "httpMethod": "GET", + "id": "compute.targetHttpsProxies.list", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/targetHttpsProxies", + "response": { + "$ref": "TargetHttpsProxyList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "setQuicOverride": { + "description": "Sets the QUIC override policy for TargetHttpsProxy.", + "httpMethod": "POST", + "id": "compute.targetHttpsProxies.setQuicOverride", + "parameterOrder": [ + "project", + "targetHttpsProxy" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "targetHttpsProxy": { + "description": "Name of the TargetHttpsProxy resource to set the QUIC override policy for. The name should conform to RFC1035.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/targetHttpsProxies/{targetHttpsProxy}/setQuicOverride", + "request": { + "$ref": "TargetHttpsProxiesSetQuicOverrideRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setSslCertificates": { + "description": "Replaces SslCertificates for TargetHttpsProxy.", + "httpMethod": "POST", + "id": "compute.targetHttpsProxies.setSslCertificates", + "parameterOrder": [ + "project", + "targetHttpsProxy" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "targetHttpsProxy": { + "description": "Name of the TargetHttpsProxy resource to set an SslCertificates resource for.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/targetHttpsProxies/{targetHttpsProxy}/setSslCertificates", + "request": { + "$ref": "TargetHttpsProxiesSetSslCertificatesRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setSslPolicy": { + "description": "Sets the SSL policy for TargetHttpsProxy. The SSL policy specifies the server-side support for SSL features. This affects connections between clients and the HTTPS proxy load balancer. They do not affect the connection between the load balancer and the backends.", + "httpMethod": "POST", + "id": "compute.targetHttpsProxies.setSslPolicy", + "parameterOrder": [ + "project", + "targetHttpsProxy" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "targetHttpsProxy": { + "description": "Name of the TargetHttpsProxy resource whose SSL policy is to be set. The name must be 1-63 characters long, and comply with RFC1035.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/targetHttpsProxies/{targetHttpsProxy}/setSslPolicy", + "request": { + "$ref": "SslPolicyReference" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setUrlMap": { + "description": "Changes the URL map for TargetHttpsProxy.", + "httpMethod": "POST", + "id": "compute.targetHttpsProxies.setUrlMap", + "parameterOrder": [ + "project", + "targetHttpsProxy" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "targetHttpsProxy": { + "description": "Name of the TargetHttpsProxy resource whose URL map is to be set.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/targetHttpsProxies/{targetHttpsProxy}/setUrlMap", + "request": { + "$ref": "UrlMapReference" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource.", + "httpMethod": "POST", + "id": "compute.targetHttpsProxies.testIamPermissions", + "parameterOrder": [ + "project", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "(?:[-a-z0-9_]{0,62}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/targetHttpsProxies/{resource}/testIamPermissions", + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." } - } - } - } - }, - "TargetInstance": { - "id": "TargetInstance", - "type": "object", - "description": "A TargetInstance resource. This resource defines an endpoint instance that terminates traffic of certain protocols. (== resource_for beta.targetInstances ==) (== resource_for v1.targetInstances ==)", - "properties": { - "creationTimestamp": { - "type": "string", - "description": "[Output Only] Creation timestamp in RFC3339 text format." }, - "description": { - "type": "string", - "description": "An optional description of this resource. Provide this property when you create the resource." - }, - "id": { - "type": "string", - "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", - "format": "uint64" - }, - "instance": { - "type": "string", - "description": "A URL to the virtual machine instance that handles traffic for this target instance. When creating a target instance, you can provide the fully-qualified URL or a valid partial URL to the desired virtual machine. For example, the following are all valid URLs: \n- https://www.googleapis.com/compute/v1/projects/project/zones/zone/instances/instance \n- projects/project/zones/zone/instances/instance \n- zones/zone/instances/instance" - }, - "kind": { - "type": "string", - "description": "[Output Only] The type of the resource. Always compute#targetInstance for target instances.", - "default": "compute#targetInstance" - }, - "name": { - "type": "string", - "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" - }, - "natPolicy": { - "type": "string", - "description": "NAT option controlling how IPs are NAT'ed to the instance. Currently only NO_NAT (default value) is supported.", - "enum": [ - "NO_NAT" - ], - "enumDescriptions": [ - "" - ] - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for the resource." - }, - "zone": { - "type": "string", - "description": "[Output Only] URL of the zone where the target instance resides." - } - } - }, - "TargetInstanceAggregatedList": { - "id": "TargetInstanceAggregatedList", - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "object", - "description": "A list of TargetInstance resources.", - "additionalProperties": { - "$ref": "TargetInstancesScopedList", - "description": "Name of the scope containing this set of target instances." - } - }, - "kind": { - "type": "string", - "description": "Type of resource.", - "default": "compute#targetInstanceAggregatedList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "TargetInstanceList": { - "id": "TargetInstanceList", - "type": "object", - "description": "Contains a list of TargetInstance resources.", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "array", - "description": "A list of TargetInstance resources.", - "items": { - "$ref": "TargetInstance" - } - }, - "kind": { - "type": "string", - "description": "Type of resource.", - "default": "compute#targetInstanceList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "TargetInstancesScopedList": { - "id": "TargetInstancesScopedList", - "type": "object", - "properties": { "targetInstances": { - "type": "array", - "description": "List of target instances contained in this scope.", - "items": { - "$ref": "TargetInstance" - } - }, - "warning": { - "type": "object", - "description": "Informational warning which replaces the list of addresses when the list is empty.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } + "methods": { + "aggregatedList": { + "description": "Retrieves an aggregated list of target instances.", + "httpMethod": "GET", + "id": "compute.targetInstances.aggregatedList", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/aggregated/targetInstances", + "response": { + "$ref": "TargetInstanceAggregatedList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "delete": { + "description": "Deletes the specified TargetInstance resource.", + "httpMethod": "DELETE", + "id": "compute.targetInstances.delete", + "parameterOrder": [ + "project", + "zone", + "targetInstance" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "targetInstance": { + "description": "Name of the TargetInstance resource to delete.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "zone": { + "description": "Name of the zone scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/targetInstances/{targetInstance}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Returns the specified TargetInstance resource. Get a list of available target instances by making a list() request.", + "httpMethod": "GET", + "id": "compute.targetInstances.get", + "parameterOrder": [ + "project", + "zone", + "targetInstance" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "targetInstance": { + "description": "Name of the TargetInstance resource to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "zone": { + "description": "Name of the zone scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/targetInstances/{targetInstance}", + "response": { + "$ref": "TargetInstance" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "description": "Creates a TargetInstance resource in the specified project and zone using the data included in the request.", + "httpMethod": "POST", + "id": "compute.targetInstances.insert", + "parameterOrder": [ + "project", + "zone" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "Name of the zone scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/targetInstances", + "request": { + "$ref": "TargetInstance" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "description": "Retrieves a list of TargetInstance resources available to the specified project and zone.", + "httpMethod": "GET", + "id": "compute.targetInstances.list", + "parameterOrder": [ + "project", + "zone" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "zone": { + "description": "Name of the zone scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/targetInstances", + "response": { + "$ref": "TargetInstanceList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource.", + "httpMethod": "POST", + "id": "compute.targetInstances.testIamPermissions", + "parameterOrder": [ + "project", + "zone", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/targetInstances/{resource}/testIamPermissions", + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." } - } - } - } - }, - "TargetPool": { - "id": "TargetPool", - "type": "object", - "description": "A TargetPool resource. This resource defines a pool of instances, an associated HttpHealthCheck resource, and the fallback target pool. (== resource_for beta.targetPools ==) (== resource_for v1.targetPools ==)", - "properties": { - "backupPool": { - "type": "string", - "description": "This field is applicable only when the containing target pool is serving a forwarding rule as the primary pool, and its failoverRatio field is properly set to a value between [0, 1].\n\nbackupPool and failoverRatio together define the fallback behavior of the primary target pool: if the ratio of the healthy instances in the primary pool is at or below failoverRatio, traffic arriving at the load-balanced IP will be directed to the backup pool.\n\nIn case where failoverRatio and backupPool are not set, or all the instances in the backup pool are unhealthy, the traffic will be directed back to the primary pool in the \"force\" mode, where traffic will be spread to the healthy instances with the best effort, or to all instances when no instance is healthy." }, - "creationTimestamp": { - "type": "string", - "description": "[Output Only] Creation timestamp in RFC3339 text format." - }, - "description": { - "type": "string", - "description": "An optional description of this resource. Provide this property when you create the resource." - }, - "failoverRatio": { - "type": "number", - "description": "This field is applicable only when the containing target pool is serving a forwarding rule as the primary pool (i.e., not as a backup pool to some other target pool). The value of the field must be in [0, 1].\n\nIf set, backupPool must also be set. They together define the fallback behavior of the primary target pool: if the ratio of the healthy instances in the primary pool is at or below this number, traffic arriving at the load-balanced IP will be directed to the backup pool.\n\nIn case where failoverRatio is not set or all the instances in the backup pool are unhealthy, the traffic will be directed back to the primary pool in the \"force\" mode, where traffic will be spread to the healthy instances with the best effort, or to all instances when no instance is healthy.", - "format": "float" - }, - "healthChecks": { - "type": "array", - "description": "The URL of the HttpHealthCheck resource. A member instance in this pool is considered healthy if and only if the health checks pass. An empty list means all member instances will be considered healthy at all times. Only HttpHealthChecks are supported. Only one health check may be specified.", - "items": { - "type": "string" - } - }, - "id": { - "type": "string", - "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", - "format": "uint64" - }, - "instances": { - "type": "array", - "description": "A list of resource URLs to the virtual machine instances serving this pool. They must live in zones contained in the same region as this pool.", - "items": { - "type": "string" - } - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of the resource. Always compute#targetPool for target pools.", - "default": "compute#targetPool" - }, - "name": { - "type": "string", - "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" - }, - "region": { - "type": "string", - "description": "[Output Only] URL of the region where the target pool resides." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for the resource." - }, - "sessionAffinity": { - "type": "string", - "description": "Sesssion affinity option, must be one of the following values:\nNONE: Connections from the same client IP may go to any instance in the pool.\nCLIENT_IP: Connections from the same client IP will go to the same instance in the pool while that instance remains healthy.\nCLIENT_IP_PROTO: Connections from the same client IP with the same IP protocol will go to the same instance in the pool while that instance remains healthy.", - "enum": [ - "CLIENT_IP", - "CLIENT_IP_PORT_PROTO", - "CLIENT_IP_PROTO", - "GENERATED_COOKIE", - "NONE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "" - ] - } - } - }, - "TargetPoolAggregatedList": { - "id": "TargetPoolAggregatedList", - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "object", - "description": "A list of TargetPool resources.", - "additionalProperties": { - "$ref": "TargetPoolsScopedList", - "description": "Name of the scope containing this set of target pools." - } - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#targetPoolAggregatedList for aggregated lists of target pools.", - "default": "compute#targetPoolAggregatedList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "TargetPoolInstanceHealth": { - "id": "TargetPoolInstanceHealth", - "type": "object", - "properties": { - "healthStatus": { - "type": "array", - "items": { - "$ref": "HealthStatus" - } - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#targetPoolInstanceHealth when checking the health of an instance.", - "default": "compute#targetPoolInstanceHealth" - } - } - }, - "TargetPoolList": { - "id": "TargetPoolList", - "type": "object", - "description": "Contains a list of TargetPool resources.", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "array", - "description": "A list of TargetPool resources.", - "items": { - "$ref": "TargetPool" - } - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#targetPoolList for lists of target pools.", - "default": "compute#targetPoolList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "TargetPoolsAddHealthCheckRequest": { - "id": "TargetPoolsAddHealthCheckRequest", - "type": "object", - "properties": { - "healthChecks": { - "type": "array", - "description": "The HttpHealthCheck to add to the target pool.", - "items": { - "$ref": "HealthCheckReference" - } - } - } - }, - "TargetPoolsAddInstanceRequest": { - "id": "TargetPoolsAddInstanceRequest", - "type": "object", - "properties": { - "instances": { - "type": "array", - "description": "A full or partial URL to an instance to add to this target pool. This can be a full or partial URL. For example, the following are valid URLs: \n- https://www.googleapis.com/compute/v1/projects/project-id/zones/zone/instances/instance-name \n- projects/project-id/zones/zone/instances/instance-name \n- zones/zone/instances/instance-name", - "items": { - "$ref": "InstanceReference" - } - } - } - }, - "TargetPoolsRemoveHealthCheckRequest": { - "id": "TargetPoolsRemoveHealthCheckRequest", - "type": "object", - "properties": { - "healthChecks": { - "type": "array", - "description": "Health check URL to be removed. This can be a full or valid partial URL. For example, the following are valid URLs: \n- https://www.googleapis.com/compute/beta/projects/project/global/httpHealthChecks/health-check \n- projects/project/global/httpHealthChecks/health-check \n- global/httpHealthChecks/health-check", - "items": { - "$ref": "HealthCheckReference" - } - } - } - }, - "TargetPoolsRemoveInstanceRequest": { - "id": "TargetPoolsRemoveInstanceRequest", - "type": "object", - "properties": { - "instances": { - "type": "array", - "description": "URLs of the instances to be removed from target pool.", - "items": { - "$ref": "InstanceReference" - } - } - } - }, - "TargetPoolsScopedList": { - "id": "TargetPoolsScopedList", - "type": "object", - "properties": { "targetPools": { - "type": "array", - "description": "List of target pools contained in this scope.", - "items": { - "$ref": "TargetPool" - } - }, - "warning": { - "type": "object", - "description": "Informational warning which replaces the list of addresses when the list is empty.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } + "methods": { + "addHealthCheck": { + "description": "Adds health check URLs to a target pool.", + "httpMethod": "POST", + "id": "compute.targetPools.addHealthCheck", + "parameterOrder": [ + "project", + "region", + "targetPool" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "targetPool": { + "description": "Name of the target pool to add a health check to.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/targetPools/{targetPool}/addHealthCheck", + "request": { + "$ref": "TargetPoolsAddHealthCheckRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "addInstance": { + "description": "Adds an instance to a target pool.", + "httpMethod": "POST", + "id": "compute.targetPools.addInstance", + "parameterOrder": [ + "project", + "region", + "targetPool" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "targetPool": { + "description": "Name of the TargetPool resource to add instances to.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/targetPools/{targetPool}/addInstance", + "request": { + "$ref": "TargetPoolsAddInstanceRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "aggregatedList": { + "description": "Retrieves an aggregated list of target pools.", + "httpMethod": "GET", + "id": "compute.targetPools.aggregatedList", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/aggregated/targetPools", + "response": { + "$ref": "TargetPoolAggregatedList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "delete": { + "description": "Deletes the specified target pool.", + "httpMethod": "DELETE", + "id": "compute.targetPools.delete", + "parameterOrder": [ + "project", + "region", + "targetPool" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "targetPool": { + "description": "Name of the TargetPool resource to delete.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/targetPools/{targetPool}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Returns the specified target pool. Get a list of available target pools by making a list() request.", + "httpMethod": "GET", + "id": "compute.targetPools.get", + "parameterOrder": [ + "project", + "region", + "targetPool" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "targetPool": { + "description": "Name of the TargetPool resource to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/targetPools/{targetPool}", + "response": { + "$ref": "TargetPool" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "getHealth": { + "description": "Gets the most recent health check results for each IP for the instance that is referenced by the given target pool.", + "httpMethod": "POST", + "id": "compute.targetPools.getHealth", + "parameterOrder": [ + "project", + "region", + "targetPool" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "targetPool": { + "description": "Name of the TargetPool resource to which the queried instance belongs.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/targetPools/{targetPool}/getHealth", + "request": { + "$ref": "InstanceReference" + }, + "response": { + "$ref": "TargetPoolInstanceHealth" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "description": "Creates a target pool in the specified project and region using the data included in the request.", + "httpMethod": "POST", + "id": "compute.targetPools.insert", + "parameterOrder": [ + "project", + "region" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/regions/{region}/targetPools", + "request": { + "$ref": "TargetPool" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "description": "Retrieves a list of target pools available to the specified project and region.", + "httpMethod": "GET", + "id": "compute.targetPools.list", + "parameterOrder": [ + "project", + "region" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/targetPools", + "response": { + "$ref": "TargetPoolList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "removeHealthCheck": { + "description": "Removes health check URL from a target pool.", + "httpMethod": "POST", + "id": "compute.targetPools.removeHealthCheck", + "parameterOrder": [ + "project", + "region", + "targetPool" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "targetPool": { + "description": "Name of the target pool to remove health checks from.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/targetPools/{targetPool}/removeHealthCheck", + "request": { + "$ref": "TargetPoolsRemoveHealthCheckRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "removeInstance": { + "description": "Removes instance URL from a target pool.", + "httpMethod": "POST", + "id": "compute.targetPools.removeInstance", + "parameterOrder": [ + "project", + "region", + "targetPool" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "targetPool": { + "description": "Name of the TargetPool resource to remove instances from.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/targetPools/{targetPool}/removeInstance", + "request": { + "$ref": "TargetPoolsRemoveInstanceRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setBackup": { + "description": "Changes a backup target pool's configurations.", + "httpMethod": "POST", + "id": "compute.targetPools.setBackup", + "parameterOrder": [ + "project", + "region", + "targetPool" + ], + "parameters": { + "failoverRatio": { + "description": "New failoverRatio value for the target pool.", + "format": "float", + "location": "query", + "type": "number" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "targetPool": { + "description": "Name of the TargetPool resource to set a backup pool for.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/targetPools/{targetPool}/setBackup", + "request": { + "$ref": "TargetReference" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource.", + "httpMethod": "POST", + "id": "compute.targetPools.testIamPermissions", + "parameterOrder": [ + "project", + "region", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "The name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/targetPools/{resource}/testIamPermissions", + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." } - } - } - } - }, - "TargetReference": { - "id": "TargetReference", - "type": "object", - "properties": { - "target": { - "type": "string" - } - } - }, - "TargetSslProxiesSetBackendServiceRequest": { - "id": "TargetSslProxiesSetBackendServiceRequest", - "type": "object", - "properties": { - "service": { - "type": "string", - "description": "The URL of the new BackendService resource for the targetSslProxy." - } - } - }, - "TargetSslProxiesSetProxyHeaderRequest": { - "id": "TargetSslProxiesSetProxyHeaderRequest", - "type": "object", - "properties": { - "proxyHeader": { - "type": "string", - "description": "The new type of proxy header to append before sending data to the backend. NONE or PROXY_V1 are allowed.", - "enum": [ - "NONE", - "PROXY_V1" - ], - "enumDescriptions": [ - "", - "" - ] - } - } - }, - "TargetSslProxiesSetSslCertificatesRequest": { - "id": "TargetSslProxiesSetSslCertificatesRequest", - "type": "object", - "properties": { - "sslCertificates": { - "type": "array", - "description": "New set of URLs to SslCertificate resources to associate with this TargetSslProxy. Currently exactly one ssl certificate must be specified.", - "items": { - "type": "string" - } - } - } - }, - "TargetSslProxy": { - "id": "TargetSslProxy", - "type": "object", - "description": "A TargetSslProxy resource. This resource defines an SSL proxy. (== resource_for beta.targetSslProxies ==) (== resource_for v1.targetSslProxies ==)", - "properties": { - "creationTimestamp": { - "type": "string", - "description": "[Output Only] Creation timestamp in RFC3339 text format." }, - "description": { - "type": "string", - "description": "An optional description of this resource. Provide this property when you create the resource." - }, - "id": { - "type": "string", - "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", - "format": "uint64" - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of the resource. Always compute#targetSslProxy for target SSL proxies.", - "default": "compute#targetSslProxy" - }, - "name": { - "type": "string", - "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" - }, - "proxyHeader": { - "type": "string", - "description": "Specifies the type of proxy header to append before sending data to the backend, either NONE or PROXY_V1. The default is NONE.", - "enum": [ - "NONE", - "PROXY_V1" - ], - "enumDescriptions": [ - "", - "" - ] - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for the resource." - }, - "service": { - "type": "string", - "description": "URL to the BackendService resource." - }, - "sslCertificates": { - "type": "array", - "description": "URLs to SslCertificate resources that are used to authenticate connections to Backends. Currently exactly one SSL certificate must be specified.", - "items": { - "type": "string" - } - }, - "sslPolicy": { - "type": "string", - "description": "URL of SslPolicy resource that will be associated with the TargetSslProxy resource. If not set, the TargetSslProxy resource will not have any SSL policy configured." - } - } - }, - "TargetSslProxyList": { - "id": "TargetSslProxyList", - "type": "object", - "description": "Contains a list of TargetSslProxy resources.", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "array", - "description": "A list of TargetSslProxy resources.", - "items": { - "$ref": "TargetSslProxy" - } - }, - "kind": { - "type": "string", - "description": "Type of resource.", - "default": "compute#targetSslProxyList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } + "targetSslProxies": { + "methods": { + "delete": { + "description": "Deletes the specified TargetSslProxy resource.", + "httpMethod": "DELETE", + "id": "compute.targetSslProxies.delete", + "parameterOrder": [ + "project", + "targetSslProxy" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "targetSslProxy": { + "description": "Name of the TargetSslProxy resource to delete.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/targetSslProxies/{targetSslProxy}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Returns the specified TargetSslProxy resource. Get a list of available target SSL proxies by making a list() request.", + "httpMethod": "GET", + "id": "compute.targetSslProxies.get", + "parameterOrder": [ + "project", + "targetSslProxy" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "targetSslProxy": { + "description": "Name of the TargetSslProxy resource to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/targetSslProxies/{targetSslProxy}", + "response": { + "$ref": "TargetSslProxy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "description": "Creates a TargetSslProxy resource in the specified project using the data included in the request.", + "httpMethod": "POST", + "id": "compute.targetSslProxies.insert", + "parameterOrder": [ + "project" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/targetSslProxies", + "request": { + "$ref": "TargetSslProxy" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "description": "Retrieves the list of TargetSslProxy resources available to the specified project.", + "httpMethod": "GET", + "id": "compute.targetSslProxies.list", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/targetSslProxies", + "response": { + "$ref": "TargetSslProxyList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "setBackendService": { + "description": "Changes the BackendService for TargetSslProxy.", + "httpMethod": "POST", + "id": "compute.targetSslProxies.setBackendService", + "parameterOrder": [ + "project", + "targetSslProxy" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "targetSslProxy": { + "description": "Name of the TargetSslProxy resource whose BackendService resource is to be set.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/targetSslProxies/{targetSslProxy}/setBackendService", + "request": { + "$ref": "TargetSslProxiesSetBackendServiceRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setProxyHeader": { + "description": "Changes the ProxyHeaderType for TargetSslProxy.", + "httpMethod": "POST", + "id": "compute.targetSslProxies.setProxyHeader", + "parameterOrder": [ + "project", + "targetSslProxy" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "targetSslProxy": { + "description": "Name of the TargetSslProxy resource whose ProxyHeader is to be set.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/targetSslProxies/{targetSslProxy}/setProxyHeader", + "request": { + "$ref": "TargetSslProxiesSetProxyHeaderRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setSslCertificates": { + "description": "Changes SslCertificates for TargetSslProxy.", + "httpMethod": "POST", + "id": "compute.targetSslProxies.setSslCertificates", + "parameterOrder": [ + "project", + "targetSslProxy" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "targetSslProxy": { + "description": "Name of the TargetSslProxy resource whose SslCertificate resource is to be set.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/targetSslProxies/{targetSslProxy}/setSslCertificates", + "request": { + "$ref": "TargetSslProxiesSetSslCertificatesRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setSslPolicy": { + "description": "Sets the SSL policy for TargetSslProxy. The SSL policy specifies the server-side support for SSL features. This affects connections between clients and the SSL proxy load balancer. They do not affect the connection between the load balancer and the backends.", + "httpMethod": "POST", + "id": "compute.targetSslProxies.setSslPolicy", + "parameterOrder": [ + "project", + "targetSslProxy" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "targetSslProxy": { + "description": "Name of the TargetSslProxy resource whose SSL policy is to be set. The name must be 1-63 characters long, and comply with RFC1035.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/targetSslProxies/{targetSslProxy}/setSslPolicy", + "request": { + "$ref": "SslPolicyReference" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource.", + "httpMethod": "POST", + "id": "compute.targetSslProxies.testIamPermissions", + "parameterOrder": [ + "project", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "(?:[-a-z0-9_]{0,62}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/targetSslProxies/{resource}/testIamPermissions", + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." } - } - } - } - }, - "TargetTcpProxiesSetBackendServiceRequest": { - "id": "TargetTcpProxiesSetBackendServiceRequest", - "type": "object", - "properties": { - "service": { - "type": "string", - "description": "The URL of the new BackendService resource for the targetTcpProxy." - } - } - }, - "TargetTcpProxiesSetProxyHeaderRequest": { - "id": "TargetTcpProxiesSetProxyHeaderRequest", - "type": "object", - "properties": { - "proxyHeader": { - "type": "string", - "description": "The new type of proxy header to append before sending data to the backend. NONE or PROXY_V1 are allowed.", - "enum": [ - "NONE", - "PROXY_V1" - ], - "enumDescriptions": [ - "", - "" - ] - } - } - }, - "TargetTcpProxy": { - "id": "TargetTcpProxy", - "type": "object", - "description": "A TargetTcpProxy resource. This resource defines a TCP proxy. (== resource_for beta.targetTcpProxies ==) (== resource_for v1.targetTcpProxies ==)", - "properties": { - "creationTimestamp": { - "type": "string", - "description": "[Output Only] Creation timestamp in RFC3339 text format." }, - "description": { - "type": "string", - "description": "An optional description of this resource. Provide this property when you create the resource." - }, - "id": { - "type": "string", - "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", - "format": "uint64" - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of the resource. Always compute#targetTcpProxy for target TCP proxies.", - "default": "compute#targetTcpProxy" - }, - "name": { - "type": "string", - "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" - }, - "proxyHeader": { - "type": "string", - "description": "Specifies the type of proxy header to append before sending data to the backend, either NONE or PROXY_V1. The default is NONE.", - "enum": [ - "NONE", - "PROXY_V1" - ], - "enumDescriptions": [ - "", - "" - ] - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for the resource." - }, - "service": { - "type": "string", - "description": "URL to the BackendService resource." - } - } - }, - "TargetTcpProxyList": { - "id": "TargetTcpProxyList", - "type": "object", - "description": "Contains a list of TargetTcpProxy resources.", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "array", - "description": "A list of TargetTcpProxy resources.", - "items": { - "$ref": "TargetTcpProxy" - } - }, - "kind": { - "type": "string", - "description": "Type of resource.", - "default": "compute#targetTcpProxyList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } + "targetTcpProxies": { + "methods": { + "delete": { + "description": "Deletes the specified TargetTcpProxy resource.", + "httpMethod": "DELETE", + "id": "compute.targetTcpProxies.delete", + "parameterOrder": [ + "project", + "targetTcpProxy" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "targetTcpProxy": { + "description": "Name of the TargetTcpProxy resource to delete.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/targetTcpProxies/{targetTcpProxy}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Returns the specified TargetTcpProxy resource. Get a list of available target TCP proxies by making a list() request.", + "httpMethod": "GET", + "id": "compute.targetTcpProxies.get", + "parameterOrder": [ + "project", + "targetTcpProxy" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "targetTcpProxy": { + "description": "Name of the TargetTcpProxy resource to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/targetTcpProxies/{targetTcpProxy}", + "response": { + "$ref": "TargetTcpProxy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "description": "Creates a TargetTcpProxy resource in the specified project using the data included in the request.", + "httpMethod": "POST", + "id": "compute.targetTcpProxies.insert", + "parameterOrder": [ + "project" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/targetTcpProxies", + "request": { + "$ref": "TargetTcpProxy" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "description": "Retrieves the list of TargetTcpProxy resources available to the specified project.", + "httpMethod": "GET", + "id": "compute.targetTcpProxies.list", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/targetTcpProxies", + "response": { + "$ref": "TargetTcpProxyList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "setBackendService": { + "description": "Changes the BackendService for TargetTcpProxy.", + "httpMethod": "POST", + "id": "compute.targetTcpProxies.setBackendService", + "parameterOrder": [ + "project", + "targetTcpProxy" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "targetTcpProxy": { + "description": "Name of the TargetTcpProxy resource whose BackendService resource is to be set.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/targetTcpProxies/{targetTcpProxy}/setBackendService", + "request": { + "$ref": "TargetTcpProxiesSetBackendServiceRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setProxyHeader": { + "description": "Changes the ProxyHeaderType for TargetTcpProxy.", + "httpMethod": "POST", + "id": "compute.targetTcpProxies.setProxyHeader", + "parameterOrder": [ + "project", + "targetTcpProxy" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "targetTcpProxy": { + "description": "Name of the TargetTcpProxy resource whose ProxyHeader is to be set.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/targetTcpProxies/{targetTcpProxy}/setProxyHeader", + "request": { + "$ref": "TargetTcpProxiesSetProxyHeaderRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." } - } - } - } - }, - "TargetVpnGateway": { - "id": "TargetVpnGateway", - "type": "object", - "description": "Represents a Target VPN gateway resource. (== resource_for beta.targetVpnGateways ==) (== resource_for v1.targetVpnGateways ==)", - "properties": { - "creationTimestamp": { - "type": "string", - "description": "[Output Only] Creation timestamp in RFC3339 text format." }, - "description": { - "type": "string", - "description": "An optional description of this resource. Provide this property when you create the resource." - }, - "forwardingRules": { - "type": "array", - "description": "[Output Only] A list of URLs to the ForwardingRule resources. ForwardingRules are created using compute.forwardingRules.insert and associated to a VPN gateway.", - "items": { - "type": "string" - } - }, - "id": { - "type": "string", - "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", - "format": "uint64" - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#targetVpnGateway for target VPN gateways.", - "default": "compute#targetVpnGateway" - }, - "labelFingerprint": { - "type": "string", - "description": "A fingerprint for the labels being applied to this TargetVpnGateway, which is essentially a hash of the labels set used for optimistic locking. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update labels. You must always provide an up-to-date fingerprint hash in order to update or change labels.\n\nTo see the latest fingerprint, make a get() request to retrieve an TargetVpnGateway.", - "format": "byte" - }, - "labels": { - "type": "object", - "description": "Labels to apply to this TargetVpnGateway resource. These can be later modified by the setLabels method. Each label key/value must comply with RFC1035. Label values may be empty.", - "additionalProperties": { - "type": "string" - } - }, - "name": { - "type": "string", - "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "annotations": { - "required": [ - "compute.targetVpnGateways.insert" - ] - } - }, - "network": { - "type": "string", - "description": "URL of the network to which this VPN gateway is attached. Provided by the client when the VPN gateway is created.", - "annotations": { - "required": [ - "compute.targetVpnGateways.insert" - ] - } - }, - "region": { - "type": "string", - "description": "[Output Only] URL of the region where the target VPN gateway resides." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for the resource." - }, - "status": { - "type": "string", - "description": "[Output Only] The status of the VPN gateway.", - "enum": [ - "CREATING", - "DELETING", - "FAILED", - "READY" - ], - "enumDescriptions": [ - "", - "", - "", - "" - ] - }, - "tunnels": { - "type": "array", - "description": "[Output Only] A list of URLs to VpnTunnel resources. VpnTunnels are created using compute.vpntunnels.insert method and associated to a VPN gateway.", - "items": { - "type": "string" - } - } - } - }, - "TargetVpnGatewayAggregatedList": { - "id": "TargetVpnGatewayAggregatedList", - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "object", - "description": "A list of TargetVpnGateway resources.", - "additionalProperties": { - "$ref": "TargetVpnGatewaysScopedList", - "description": "[Output Only] Name of the scope containing this set of target VPN gateways." - } - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#targetVpnGateway for target VPN gateways.", - "default": "compute#targetVpnGatewayAggregatedList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "TargetVpnGatewayList": { - "id": "TargetVpnGatewayList", - "type": "object", - "description": "Contains a list of TargetVpnGateway resources.", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "array", - "description": "A list of TargetVpnGateway resources.", - "items": { - "$ref": "TargetVpnGateway" - } - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#targetVpnGateway for target VPN gateways.", - "default": "compute#targetVpnGatewayList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "TargetVpnGatewaysScopedList": { - "id": "TargetVpnGatewaysScopedList", - "type": "object", - "properties": { "targetVpnGateways": { - "type": "array", - "description": "[Output Only] List of target vpn gateways contained in this scope.", - "items": { - "$ref": "TargetVpnGateway" - } - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning which replaces the list of addresses when the list is empty.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } + "methods": { + "aggregatedList": { + "description": "Retrieves an aggregated list of target VPN gateways.", + "httpMethod": "GET", + "id": "compute.targetVpnGateways.aggregatedList", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/aggregated/targetVpnGateways", + "response": { + "$ref": "TargetVpnGatewayAggregatedList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "delete": { + "description": "Deletes the specified target VPN gateway.", + "httpMethod": "DELETE", + "id": "compute.targetVpnGateways.delete", + "parameterOrder": [ + "project", + "region", + "targetVpnGateway" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "targetVpnGateway": { + "description": "Name of the target VPN gateway to delete.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/targetVpnGateways/{targetVpnGateway}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Returns the specified target VPN gateway. Get a list of available target VPN gateways by making a list() request.", + "httpMethod": "GET", + "id": "compute.targetVpnGateways.get", + "parameterOrder": [ + "project", + "region", + "targetVpnGateway" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "targetVpnGateway": { + "description": "Name of the target VPN gateway to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/targetVpnGateways/{targetVpnGateway}", + "response": { + "$ref": "TargetVpnGateway" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "description": "Creates a target VPN gateway in the specified project and region using the data included in the request.", + "httpMethod": "POST", + "id": "compute.targetVpnGateways.insert", + "parameterOrder": [ + "project", + "region" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/regions/{region}/targetVpnGateways", + "request": { + "$ref": "TargetVpnGateway" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "description": "Retrieves a list of target VPN gateways available to the specified project and region.", + "httpMethod": "GET", + "id": "compute.targetVpnGateways.list", + "parameterOrder": [ + "project", + "region" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/targetVpnGateways", + "response": { + "$ref": "TargetVpnGatewayList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "setLabels": { + "description": "Sets the labels on a TargetVpnGateway. To learn more about labels, read the Labeling Resources documentation.", + "httpMethod": "POST", + "id": "compute.targetVpnGateways.setLabels", + "parameterOrder": [ + "project", + "region", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "The region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/targetVpnGateways/{resource}/setLabels", + "request": { + "$ref": "RegionSetLabelsRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource.", + "httpMethod": "POST", + "id": "compute.targetVpnGateways.testIamPermissions", + "parameterOrder": [ + "project", + "region", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "The name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/targetVpnGateways/{resource}/testIamPermissions", + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." } - } - } - } - }, - "TestFailure": { - "id": "TestFailure", - "type": "object", - "properties": { - "actualService": { - "type": "string" }, - "expectedService": { - "type": "string" - }, - "host": { - "type": "string" - }, - "path": { - "type": "string" - } - } - }, - "TestPermissionsRequest": { - "id": "TestPermissionsRequest", - "type": "object", - "properties": { - "permissions": { - "type": "array", - "description": "The set of permissions to check for the 'resource'. Permissions with wildcards (such as '*' or 'storage.*') are not allowed.", - "items": { - "type": "string" - } - } - } - }, - "TestPermissionsResponse": { - "id": "TestPermissionsResponse", - "type": "object", - "properties": { - "permissions": { - "type": "array", - "description": "A subset of `TestPermissionsRequest.permissions` that the caller is allowed.", - "items": { - "type": "string" - } - } - } - }, - "UDPHealthCheck": { - "id": "UDPHealthCheck", - "type": "object", - "properties": { - "port": { - "type": "integer", - "description": "The UDP port number for the health check request. Valid values are 1 through 65535.", - "format": "int32" - }, - "portName": { - "type": "string", - "description": "Port name as defined in InstanceGroup#NamedPort#name. If both port and port_name are defined, port takes precedence." - }, - "request": { - "type": "string", - "description": "Raw data of request to send in payload of UDP packet. It is an error if this is empty. The request data can only be ASCII." - }, - "response": { - "type": "string", - "description": "The bytes to match against the beginning of the response data. It is an error if this is empty. The response data can only be ASCII." - } - } - }, - "UrlMap": { - "id": "UrlMap", - "type": "object", - "description": "A UrlMap resource. This resource defines the mapping from URL to the BackendService resource, based on the \"longest-match\" of the URL's host and path.", - "properties": { - "creationTimestamp": { - "type": "string", - "description": "[Output Only] Creation timestamp in RFC3339 text format." - }, - "defaultService": { - "type": "string", - "description": "The URL of the BackendService resource if none of the hostRules match." - }, - "description": { - "type": "string", - "description": "An optional description of this resource. Provide this property when you create the resource." - }, - "fingerprint": { - "type": "string", - "description": "Fingerprint of this resource. A hash of the contents stored in this object. This field is used in optimistic locking. This field will be ignored when inserting a UrlMap. An up-to-date fingerprint must be provided in order to update the UrlMap.", - "format": "byte" - }, - "hostRules": { - "type": "array", - "description": "The list of HostRules to use against the URL.", - "items": { - "$ref": "HostRule" - } - }, - "id": { - "type": "string", - "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", - "format": "uint64" - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of the resource. Always compute#urlMaps for url maps.", - "default": "compute#urlMap" - }, - "name": { - "type": "string", - "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" - }, - "pathMatchers": { - "type": "array", - "description": "The list of named PathMatchers to use against the URL.", - "items": { - "$ref": "PathMatcher" - } - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for the resource." - }, - "tests": { - "type": "array", - "description": "The list of expected URL mappings. Request to update this UrlMap will succeed only if all of the test cases pass.", - "items": { - "$ref": "UrlMapTest" - } - } - } - }, - "UrlMapList": { - "id": "UrlMapList", - "type": "object", - "description": "Contains a list of UrlMap resources.", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "array", - "description": "A list of UrlMap resources.", - "items": { - "$ref": "UrlMap" - } - }, - "kind": { - "type": "string", - "description": "Type of resource.", - "default": "compute#urlMapList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } + "urlMaps": { + "methods": { + "delete": { + "description": "Deletes the specified UrlMap resource.", + "httpMethod": "DELETE", + "id": "compute.urlMaps.delete", + "parameterOrder": [ + "project", + "urlMap" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "urlMap": { + "description": "Name of the UrlMap resource to delete.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/urlMaps/{urlMap}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Returns the specified UrlMap resource. Get a list of available URL maps by making a list() request.", + "httpMethod": "GET", + "id": "compute.urlMaps.get", + "parameterOrder": [ + "project", + "urlMap" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "urlMap": { + "description": "Name of the UrlMap resource to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/urlMaps/{urlMap}", + "response": { + "$ref": "UrlMap" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "description": "Creates a UrlMap resource in the specified project using the data included in the request.", + "httpMethod": "POST", + "id": "compute.urlMaps.insert", + "parameterOrder": [ + "project" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/urlMaps", + "request": { + "$ref": "UrlMap" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "invalidateCache": { + "description": "Initiates a cache invalidation operation, invalidating the specified path, scoped to the specified UrlMap.", + "httpMethod": "POST", + "id": "compute.urlMaps.invalidateCache", + "parameterOrder": [ + "project", + "urlMap" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "urlMap": { + "description": "Name of the UrlMap scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/urlMaps/{urlMap}/invalidateCache", + "request": { + "$ref": "CacheInvalidationRule" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "description": "Retrieves the list of UrlMap resources available to the specified project.", + "httpMethod": "GET", + "id": "compute.urlMaps.list", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/urlMaps", + "response": { + "$ref": "UrlMapList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "patch": { + "description": "Patches the specified UrlMap resource with the data included in the request. This method supports PATCH semantics and uses the JSON merge patch format and processing rules.", + "httpMethod": "PATCH", + "id": "compute.urlMaps.patch", + "parameterOrder": [ + "project", + "urlMap" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "urlMap": { + "description": "Name of the UrlMap resource to patch.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/urlMaps/{urlMap}", + "request": { + "$ref": "UrlMap" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource.", + "httpMethod": "POST", + "id": "compute.urlMaps.testIamPermissions", + "parameterOrder": [ + "project", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "(?:[-a-z0-9_]{0,62}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/urlMaps/{resource}/testIamPermissions", + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "update": { + "description": "Updates the specified UrlMap resource with the data included in the request.", + "httpMethod": "PUT", + "id": "compute.urlMaps.update", + "parameterOrder": [ + "project", + "urlMap" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "urlMap": { + "description": "Name of the UrlMap resource to update.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/urlMaps/{urlMap}", + "request": { + "$ref": "UrlMap" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "validate": { + "description": "Runs static validation for the UrlMap. In particular, the tests of the provided UrlMap will be run. Calling this method does NOT create the UrlMap.", + "httpMethod": "POST", + "id": "compute.urlMaps.validate", + "parameterOrder": [ + "project", + "urlMap" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "urlMap": { + "description": "Name of the UrlMap resource to be validated as.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/urlMaps/{urlMap}/validate", + "request": { + "$ref": "UrlMapsValidateRequest" + }, + "response": { + "$ref": "UrlMapsValidateResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." } - } - } - } - }, - "UrlMapReference": { - "id": "UrlMapReference", - "type": "object", - "properties": { - "urlMap": { - "type": "string" - } - } - }, - "UrlMapTest": { - "id": "UrlMapTest", - "type": "object", - "description": "Message for the expected URL mappings.", - "properties": { - "description": { - "type": "string", - "description": "Description of this test case." }, - "host": { - "type": "string", - "description": "Host portion of the URL." - }, - "path": { - "type": "string", - "description": "Path portion of the URL." - }, - "service": { - "type": "string", - "description": "Expected BackendService resource the given URL should be mapped to." - } - } - }, - "UrlMapValidationResult": { - "id": "UrlMapValidationResult", - "type": "object", - "description": "Message representing the validation result for a UrlMap.", - "properties": { - "loadErrors": { - "type": "array", - "items": { - "type": "string" - } - }, - "loadSucceeded": { - "type": "boolean", - "description": "Whether the given UrlMap can be successfully loaded. If false, 'loadErrors' indicates the reasons." - }, - "testFailures": { - "type": "array", - "items": { - "$ref": "TestFailure" - } - }, - "testPassed": { - "type": "boolean", - "description": "If successfully loaded, this field indicates whether the test passed. If false, 'testFailures's indicate the reason of failure." - } - } - }, - "UrlMapsValidateRequest": { - "id": "UrlMapsValidateRequest", - "type": "object", - "properties": { - "resource": { - "$ref": "UrlMap", - "description": "Content of the UrlMap to be validated." - } - } - }, - "UrlMapsValidateResponse": { - "id": "UrlMapsValidateResponse", - "type": "object", - "properties": { - "result": { - "$ref": "UrlMapValidationResult" - } - } - }, - "UsageExportLocation": { - "id": "UsageExportLocation", - "type": "object", - "description": "The location in Cloud Storage and naming method of the daily usage report. Contains bucket_name and report_name prefix.", - "properties": { - "bucketName": { - "type": "string", - "description": "The name of an existing bucket in Cloud Storage where the usage report object is stored. The Google Service Account is granted write access to this bucket. This can either be the bucket name by itself, such as example-bucket, or the bucket name with gs:// or https://storage.googleapis.com/ in front of it, such as gs://example-bucket." - }, - "reportNamePrefix": { - "type": "string", - "description": "An optional prefix for the name of the usage report object stored in bucketName. If not supplied, defaults to usage. The report is stored as a CSV file named report_name_prefix_gce_YYYYMMDD.csv where YYYYMMDD is the day of the usage according to Pacific Time. If you supply a prefix, it should conform to Cloud Storage object naming conventions." - } - } - }, - "VpnTunnel": { - "id": "VpnTunnel", - "type": "object", - "description": "VPN tunnel resource. (== resource_for beta.vpnTunnels ==) (== resource_for v1.vpnTunnels ==)", - "properties": { - "creationTimestamp": { - "type": "string", - "description": "[Output Only] Creation timestamp in RFC3339 text format." - }, - "description": { - "type": "string", - "description": "An optional description of this resource. Provide this property when you create the resource." - }, - "detailedStatus": { - "type": "string", - "description": "[Output Only] Detailed status message for the VPN tunnel." - }, - "id": { - "type": "string", - "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", - "format": "uint64" - }, - "ikeVersion": { - "type": "integer", - "description": "IKE protocol version to use when establishing the VPN tunnel with peer VPN gateway. Acceptable IKE versions are 1 or 2. Default version is 2.", - "format": "int32" - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#vpnTunnel for VPN tunnels.", - "default": "compute#vpnTunnel" - }, - "labelFingerprint": { - "type": "string", - "description": "A fingerprint for the labels being applied to this VpnTunnel, which is essentially a hash of the labels set used for optimistic locking. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update labels. You must always provide an up-to-date fingerprint hash in order to update or change labels.\n\nTo see the latest fingerprint, make a get() request to retrieve a VpnTunnel.", - "format": "byte" - }, - "labels": { - "type": "object", - "description": "Labels to apply to this VpnTunnel. These can be later modified by the setLabels method. Each label key/value pair must comply with RFC1035. Label values may be empty.", - "additionalProperties": { - "type": "string" - } - }, - "localTrafficSelector": { - "type": "array", - "description": "Local traffic selector to use when establishing the VPN tunnel with peer VPN gateway. The value should be a CIDR formatted string, for example: 192.168.0.0/16. The ranges should be disjoint. Only IPv4 is supported.", - "items": { - "type": "string" - } - }, - "name": { - "type": "string", - "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "annotations": { - "required": [ - "compute.vpnTunnels.insert" - ] - } - }, - "peerIp": { - "type": "string", - "description": "IP address of the peer VPN gateway. Only IPv4 is supported." - }, - "region": { - "type": "string", - "description": "[Output Only] URL of the region where the VPN tunnel resides." - }, - "remoteTrafficSelector": { - "type": "array", - "description": "Remote traffic selectors to use when establishing the VPN tunnel with peer VPN gateway. The value should be a CIDR formatted string, for example: 192.168.0.0/16. The ranges should be disjoint. Only IPv4 is supported.", - "items": { - "type": "string" - } - }, - "router": { - "type": "string", - "description": "URL of router resource to be used for dynamic routing." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for the resource." - }, - "sharedSecret": { - "type": "string", - "description": "Shared secret used to set the secure session between the Cloud VPN gateway and the peer VPN gateway." - }, - "sharedSecretHash": { - "type": "string", - "description": "Hash of the shared secret." - }, - "status": { - "type": "string", - "description": "[Output Only] The status of the VPN tunnel.", - "enum": [ - "ALLOCATING_RESOURCES", - "AUTHORIZATION_ERROR", - "DEPROVISIONING", - "ESTABLISHED", - "FAILED", - "FIRST_HANDSHAKE", - "NEGOTIATION_FAILURE", - "NETWORK_ERROR", - "NO_INCOMING_PACKETS", - "PROVISIONING", - "REJECTED", - "WAITING_FOR_FULL_CONFIG" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "targetVpnGateway": { - "type": "string", - "description": "URL of the VPN gateway with which this VPN tunnel is associated. Provided by the client when the VPN tunnel is created.", - "annotations": { - "required": [ - "compute.vpnTunnels.insert" - ] - } - } - } - }, - "VpnTunnelAggregatedList": { - "id": "VpnTunnelAggregatedList", - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "object", - "description": "A list of VpnTunnelsScopedList resources.", - "additionalProperties": { - "$ref": "VpnTunnelsScopedList", - "description": "Name of the scope containing this set of vpn tunnels." - } - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#vpnTunnel for VPN tunnels.", - "default": "compute#vpnTunnelAggregatedList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "VpnTunnelList": { - "id": "VpnTunnelList", - "type": "object", - "description": "Contains a list of VpnTunnel resources.", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "array", - "description": "A list of VpnTunnel resources.", - "items": { - "$ref": "VpnTunnel" - } - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#vpnTunnel for VPN tunnels.", - "default": "compute#vpnTunnelList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "VpnTunnelsScopedList": { - "id": "VpnTunnelsScopedList", - "type": "object", - "properties": { "vpnTunnels": { - "type": "array", - "description": "List of vpn tunnels contained in this scope.", - "items": { - "$ref": "VpnTunnel" - } - }, - "warning": { - "type": "object", - "description": "Informational warning which replaces the list of addresses when the list is empty.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } + "methods": { + "aggregatedList": { + "description": "Retrieves an aggregated list of VPN tunnels.", + "httpMethod": "GET", + "id": "compute.vpnTunnels.aggregatedList", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/aggregated/vpnTunnels", + "response": { + "$ref": "VpnTunnelAggregatedList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "delete": { + "description": "Deletes the specified VpnTunnel resource.", + "httpMethod": "DELETE", + "id": "compute.vpnTunnels.delete", + "parameterOrder": [ + "project", + "region", + "vpnTunnel" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "vpnTunnel": { + "description": "Name of the VpnTunnel resource to delete.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/vpnTunnels/{vpnTunnel}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Returns the specified VpnTunnel resource. Get a list of available VPN tunnels by making a list() request.", + "httpMethod": "GET", + "id": "compute.vpnTunnels.get", + "parameterOrder": [ + "project", + "region", + "vpnTunnel" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "vpnTunnel": { + "description": "Name of the VpnTunnel resource to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/vpnTunnels/{vpnTunnel}", + "response": { + "$ref": "VpnTunnel" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "description": "Creates a VpnTunnel resource in the specified project and region using the data included in the request.", + "httpMethod": "POST", + "id": "compute.vpnTunnels.insert", + "parameterOrder": [ + "project", + "region" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/regions/{region}/vpnTunnels", + "request": { + "$ref": "VpnTunnel" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "description": "Retrieves a list of VpnTunnel resources contained in the specified project and region.", + "httpMethod": "GET", + "id": "compute.vpnTunnels.list", + "parameterOrder": [ + "project", + "region" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/vpnTunnels", + "response": { + "$ref": "VpnTunnelList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "setLabels": { + "description": "Sets the labels on a VpnTunnel. To learn more about labels, read the Labeling Resources documentation.", + "httpMethod": "POST", + "id": "compute.vpnTunnels.setLabels", + "parameterOrder": [ + "project", + "region", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "The region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/vpnTunnels/{resource}/setLabels", + "request": { + "$ref": "RegionSetLabelsRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource.", + "httpMethod": "POST", + "id": "compute.vpnTunnels.testIamPermissions", + "parameterOrder": [ + "project", + "region", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "The name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/vpnTunnels/{resource}/testIamPermissions", + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." } - } - } - } - }, - "XpnHostList": { - "id": "XpnHostList", - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." }, - "items": { - "type": "array", - "description": "[Output Only] A list of shared VPC host project URLs.", - "items": { - "$ref": "Project" - } - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#xpnHostList for lists of shared VPC hosts.", - "default": "compute#xpnHostList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } + "zoneOperations": { + "methods": { + "delete": { + "description": "Deletes the specified zone-specific Operations resource.", + "httpMethod": "DELETE", + "id": "compute.zoneOperations.delete", + "parameterOrder": [ + "project", + "zone", + "operation" + ], + "parameters": { + "operation": { + "description": "Name of the Operations resource to delete.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "zone": { + "description": "Name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/operations/{operation}", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Retrieves the specified zone-specific Operations resource.", + "httpMethod": "GET", + "id": "compute.zoneOperations.get", + "parameterOrder": [ + "project", + "zone", + "operation" + ], + "parameters": { + "operation": { + "description": "Name of the Operations resource to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "zone": { + "description": "Name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/operations/{operation}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "list": { + "description": "Retrieves a list of Operation resources contained within the specified zone.", + "httpMethod": "GET", + "id": "compute.zoneOperations.list", + "parameterOrder": [ + "project", + "zone" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "zone": { + "description": "Name of the zone for request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/operations", + "response": { + "$ref": "OperationList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." } - } - } - } - }, - "XpnResourceId": { - "id": "XpnResourceId", - "type": "object", - "description": "Service resource (a.k.a service project) ID.", - "properties": { - "id": { - "type": "string", - "description": "The ID of the service resource. In the case of projects, this field matches the project ID (e.g., my-project), not the project number (e.g., 12345678)." }, - "type": { - "type": "string", - "description": "The type of the service resource.", - "enum": [ - "PROJECT", - "XPN_RESOURCE_TYPE_UNSPECIFIED" - ], - "enumDescriptions": [ - "", - "" - ] - } - } - }, - "Zone": { - "id": "Zone", - "type": "object", - "description": "A Zone resource. (== resource_for beta.zones ==) (== resource_for v1.zones ==)", - "properties": { - "availableCpuPlatforms": { - "type": "array", - "description": "[Output Only] Available cpu/platform selections for the zone.", - "items": { - "type": "string" - } - }, - "creationTimestamp": { - "type": "string", - "description": "[Output Only] Creation timestamp in RFC3339 text format." - }, - "deprecated": { - "$ref": "DeprecationStatus", - "description": "[Output Only] The deprecation status associated with this zone." - }, - "description": { - "type": "string", - "description": "[Output Only] Textual description of the resource." - }, - "id": { - "type": "string", - "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", - "format": "uint64" - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of the resource. Always compute#zone for zones.", - "default": "compute#zone" - }, - "name": { - "type": "string", - "description": "[Output Only] Name of the resource." - }, - "region": { - "type": "string", - "description": "[Output Only] Full URL reference to the region which hosts the zone." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for the resource." - }, - "status": { - "type": "string", - "description": "[Output Only] Status of the zone, either UP or DOWN.", - "enum": [ - "DOWN", - "UP" - ], - "enumDescriptions": [ - "", - "" - ] - } - } - }, - "ZoneList": { - "id": "ZoneList", - "type": "object", - "description": "Contains a list of zone resources.", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "array", - "description": "A list of Zone resources.", - "items": { - "$ref": "Zone" - } - }, - "kind": { - "type": "string", - "description": "Type of resource.", - "default": "compute#zoneList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } + "zones": { + "methods": { + "get": { + "description": "Returns the specified Zone resource. Get a list of available zones by making a list() request.", + "httpMethod": "GET", + "id": "compute.zones.get", + "parameterOrder": [ + "project", + "zone" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "zone": { + "description": "Name of the zone resource to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}", + "response": { + "$ref": "Zone" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "list": { + "description": "Retrieves the list of Zone resources available to the specified project.", + "httpMethod": "GET", + "id": "compute.zones.list", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones", + "response": { + "$ref": "ZoneList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." } - } } - } }, - "ZoneSetLabelsRequest": { - "id": "ZoneSetLabelsRequest", - "type": "object", - "properties": { - "labelFingerprint": { - "type": "string", - "description": "The fingerprint of the previous set of labels for this resource, used to detect conflicts. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update labels. You must always provide an up-to-date fingerprint hash in order to update or change labels. Make a get() request to the resource to get the latest fingerprint.", - "format": "byte" + "revision": "20180312", + "rootUrl": "https://www.googleapis.com/", + "schemas": { + "AcceleratorConfig": { + "description": "A specification of the type and number of accelerator cards attached to the instance.", + "id": "AcceleratorConfig", + "properties": { + "acceleratorCount": { + "description": "The number of the guest accelerator cards exposed to this instance.", + "format": "int32", + "type": "integer" + }, + "acceleratorType": { + "description": "Full or partial URL of the accelerator type resource to attach to this instance. If you are creating an instance template, specify only the accelerator name.", + "type": "string" + } + }, + "type": "object" }, - "labels": { - "type": "object", - "description": "The labels to set for this resource.", - "additionalProperties": { - "type": "string" - } + "AcceleratorType": { + "description": "An Accelerator Type resource. (== resource_for beta.acceleratorTypes ==) (== resource_for v1.acceleratorTypes ==)", + "id": "AcceleratorType", + "properties": { + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "deprecated": { + "$ref": "DeprecationStatus", + "description": "[Output Only] The deprecation status associated with this accelerator type." + }, + "description": { + "description": "[Output Only] An optional textual description of the resource.", + "type": "string" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64", + "type": "string" + }, + "kind": { + "default": "compute#acceleratorType", + "description": "[Output Only] The type of the resource. Always compute#acceleratorType for accelerator types.", + "type": "string" + }, + "maximumCardsPerInstance": { + "description": "[Output Only] Maximum accelerator cards allowed per instance.", + "format": "int32", + "type": "integer" + }, + "name": { + "description": "[Output Only] Name of the resource.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined fully-qualified URL for this resource.", + "type": "string" + }, + "zone": { + "description": "[Output Only] The name of the zone where the accelerator type resides, such as us-central1-a. You must specify this field as part of the HTTP request URL. It is not settable as a field in the request body.", + "type": "string" + } + }, + "type": "object" + }, + "AcceleratorTypeAggregatedList": { + "id": "AcceleratorTypeAggregatedList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "additionalProperties": { + "$ref": "AcceleratorTypesScopedList", + "description": "[Output Only] Name of the scope containing this set of accelerator types." + }, + "description": "A list of AcceleratorTypesScopedList resources.", + "type": "object" + }, + "kind": { + "default": "compute#acceleratorTypeAggregatedList", + "description": "[Output Only] Type of resource. Always compute#acceleratorTypeAggregatedList for aggregated lists of accelerator types.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "AcceleratorTypeList": { + "description": "Contains a list of accelerator types.", + "id": "AcceleratorTypeList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of AcceleratorType resources.", + "items": { + "$ref": "AcceleratorType" + }, + "type": "array" + }, + "kind": { + "default": "compute#acceleratorTypeList", + "description": "[Output Only] Type of resource. Always compute#acceleratorTypeList for lists of accelerator types.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "AcceleratorTypesScopedList": { + "id": "AcceleratorTypesScopedList", + "properties": { + "acceleratorTypes": { + "description": "[Output Only] List of accelerator types contained in this scope.", + "items": { + "$ref": "AcceleratorType" + }, + "type": "array" + }, + "warning": { + "description": "[Output Only] An informational warning that appears when the accelerator types list is empty.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "AccessConfig": { + "description": "An access configuration attached to an instance's network interface. Only one access config per instance is supported.", + "id": "AccessConfig", + "properties": { + "kind": { + "default": "compute#accessConfig", + "description": "[Output Only] Type of the resource. Always compute#accessConfig for access configs.", + "type": "string" + }, + "name": { + "description": "The name of this access configuration. The default and recommended name is External NAT but you can use any arbitrary string you would like. For example, My external IP or Network Access.", + "type": "string" + }, + "natIP": { + "description": "An external IP address associated with this instance. Specify an unused static external IP address available to the project or leave this field undefined to use an IP from a shared ephemeral IP address pool. If you specify a static external IP address, it must live in the same region as the zone of the instance.", + "type": "string" + }, + "networkTier": { + "description": "This signifies the networking tier used for configuring this access configuration and can only take the following values: PREMIUM, STANDARD.\n\nIf an AccessConfig is specified without a valid external IP address, an ephemeral IP will be created with this networkTier.\n\nIf an AccessConfig with a valid external IP address is specified, it must match that of the networkTier associated with the Address resource owning that IP.", + "enum": [ + "PREMIUM", + "STANDARD" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "publicPtrDomainName": { + "description": "The DNS domain name for the public PTR record. This field can only be set when the set_public_ptr field is enabled.", + "type": "string" + }, + "setPublicPtr": { + "description": "Specifies whether a public DNS ?PTR? record should be created to map the external IP address of the instance to a DNS domain name.", + "type": "boolean" + }, + "type": { + "default": "ONE_TO_ONE_NAT", + "description": "The type of configuration. The default and only option is ONE_TO_ONE_NAT.", + "enum": [ + "ONE_TO_ONE_NAT" + ], + "enumDescriptions": [ + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "Address": { + "description": "A reserved address resource. (== resource_for beta.addresses ==) (== resource_for v1.addresses ==) (== resource_for beta.globalAddresses ==) (== resource_for v1.globalAddresses ==)", + "id": "Address", + "properties": { + "address": { + "description": "The static IP address represented by this resource.", + "type": "string" + }, + "addressType": { + "description": "The type of address to reserve, either INTERNAL or EXTERNAL. If unspecified, defaults to EXTERNAL.", + "enum": [ + "EXTERNAL", + "INTERNAL", + "UNSPECIFIED_TYPE" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "description": { + "description": "An optional description of this resource. Provide this property when you create the resource.", + "type": "string" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64", + "type": "string" + }, + "ipVersion": { + "description": "The IP Version that will be used by this address. Valid options are IPV4 or IPV6. This can only be specified for a global address.", + "enum": [ + "IPV4", + "IPV6", + "UNSPECIFIED_VERSION" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, + "kind": { + "default": "compute#address", + "description": "[Output Only] Type of the resource. Always compute#address for addresses.", + "type": "string" + }, + "labelFingerprint": { + "description": "A fingerprint for the labels being applied to this Address, which is essentially a hash of the labels set used for optimistic locking. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update labels. You must always provide an up-to-date fingerprint hash in order to update or change labels.\n\nTo see the latest fingerprint, make a get() request to retrieve an Address.", + "format": "byte", + "type": "string" + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Labels to apply to this Address resource. These can be later modified by the setLabels method. Each label key/value must comply with RFC1035. Label values may be empty.", + "type": "object" + }, + "name": { + "annotations": { + "required": [ + "compute.addresses.insert" + ] + }, + "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "networkTier": { + "description": "This signifies the networking tier used for configuring this Address and can only take the following values: PREMIUM , STANDARD.\n\nIf this field is not specified, it is assumed to be PREMIUM.", + "enum": [ + "PREMIUM", + "STANDARD" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "region": { + "description": "[Output Only] URL of the region where the regional address resides. This field is not applicable to global addresses. You must specify this field as part of the HTTP request URL. You cannot set this field in the request body.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + }, + "status": { + "description": "[Output Only] The status of the address, which can be one of RESERVING, RESERVED, or IN_USE. An address that is RESERVING is currently in the process of being reserved. A RESERVED address is currently reserved and available to use. An IN_USE address is currently being used by another resource and is not available.", + "enum": [ + "IN_USE", + "RESERVED" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "subnetwork": { + "description": "The URL of the subnetwork in which to reserve the address. If an IP address is specified, it must be within the subnetwork's IP range. This field can only be used with INTERNAL type with GCE_ENDPOINT/DNS_RESOLVER purposes.", + "type": "string" + }, + "users": { + "description": "[Output Only] The URLs of the resources that are using this address.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "AddressAggregatedList": { + "id": "AddressAggregatedList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "additionalProperties": { + "$ref": "AddressesScopedList", + "description": "[Output Only] Name of the scope containing this set of addresses." + }, + "description": "A list of AddressesScopedList resources.", + "type": "object" + }, + "kind": { + "default": "compute#addressAggregatedList", + "description": "[Output Only] Type of resource. Always compute#addressAggregatedList for aggregated lists of addresses.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "AddressList": { + "description": "Contains a list of addresses.", + "id": "AddressList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of Address resources.", + "items": { + "$ref": "Address" + }, + "type": "array" + }, + "kind": { + "default": "compute#addressList", + "description": "[Output Only] Type of resource. Always compute#addressList for lists of addresses.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "AddressesScopedList": { + "id": "AddressesScopedList", + "properties": { + "addresses": { + "description": "[Output Only] List of addresses contained in this scope.", + "items": { + "$ref": "Address" + }, + "type": "array" + }, + "warning": { + "description": "[Output Only] Informational warning which replaces the list of addresses when the list is empty.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "AliasIpRange": { + "description": "An alias IP range attached to an instance's network interface.", + "id": "AliasIpRange", + "properties": { + "ipCidrRange": { + "description": "The IP CIDR range represented by this alias IP range. This IP CIDR range must belong to the specified subnetwork and cannot contain IP addresses reserved by system or used by other network interfaces. This range may be a single IP address (e.g. 10.2.3.4), a netmask (e.g. /24) or a CIDR format string (e.g. 10.1.2.0/24).", + "type": "string" + }, + "subnetworkRangeName": { + "description": "Optional subnetwork secondary range name specifying the secondary range from which to allocate the IP CIDR range for this alias IP range. If left unspecified, the primary range of the subnetwork will be used.", + "type": "string" + } + }, + "type": "object" + }, + "AttachedDisk": { + "description": "An instance-attached disk resource.", + "id": "AttachedDisk", + "properties": { + "autoDelete": { + "description": "Specifies whether the disk will be auto-deleted when the instance is deleted (but not when the disk is detached from the instance).", + "type": "boolean" + }, + "boot": { + "description": "Indicates that this is a boot disk. The virtual machine will use the first partition of the disk for its root filesystem.", + "type": "boolean" + }, + "deviceName": { + "description": "Specifies a unique device name of your choice that is reflected into the /dev/disk/by-id/google-* tree of a Linux operating system running within the instance. This name can be used to reference the device for mounting, resizing, and so on, from within the instance.\n\nIf not specified, the server chooses a default device name to apply to this disk, in the form persistent-disks-x, where x is a number assigned by Google Compute Engine. This field is only applicable for persistent disks.", + "type": "string" + }, + "diskEncryptionKey": { + "$ref": "CustomerEncryptionKey", + "description": "Encrypts or decrypts a disk using a customer-supplied encryption key.\n\nIf you are creating a new disk, this field encrypts the new disk using an encryption key that you provide. If you are attaching an existing disk that is already encrypted, this field decrypts the disk using the customer-supplied encryption key.\n\nIf you encrypt a disk using a customer-supplied key, you must provide the same key again when you attempt to use this resource at a later time. For example, you must provide the key when you create a snapshot or an image from the disk or when you attach the disk to a virtual machine instance.\n\nIf you do not provide an encryption key, then the disk will be encrypted using an automatically generated key and you do not need to provide a key to use the disk later.\n\nInstance templates do not store customer-supplied encryption keys, so you cannot use your own keys to encrypt disks in a managed instance group." + }, + "guestOsFeatures": { + "description": "A list of features to enable on the guest operating system. Applicable only for bootable images. Read Enabling guest operating system features to see a list of available options.", + "items": { + "$ref": "GuestOsFeature" + }, + "type": "array" + }, + "index": { + "description": "[Output Only] A zero-based index to this disk, where 0 is reserved for the boot disk. If you have many disks attached to an instance, each disk would have a unique index number.", + "format": "int32", + "type": "integer" + }, + "initializeParams": { + "$ref": "AttachedDiskInitializeParams", + "description": "[Input Only] Specifies the parameters for a new disk that will be created alongside the new instance. Use initialization parameters to create boot disks or local SSDs attached to the new instance.\n\nThis property is mutually exclusive with the source property; you can only define one or the other, but not both." + }, + "interface": { + "description": "Specifies the disk interface to use for attaching this disk, which is either SCSI or NVME. The default is SCSI. Persistent disks must always use SCSI and the request will fail if you attempt to attach a persistent disk in any other format than SCSI. Local SSDs can use either NVME or SCSI. For performance characteristics of SCSI over NVMe, see Local SSD performance.", + "enum": [ + "NVME", + "SCSI" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "kind": { + "default": "compute#attachedDisk", + "description": "[Output Only] Type of the resource. Always compute#attachedDisk for attached disks.", + "type": "string" + }, + "licenses": { + "description": "[Output Only] Any valid publicly visible licenses.", + "items": { + "type": "string" + }, + "type": "array" + }, + "mode": { + "description": "The mode in which to attach this disk, either READ_WRITE or READ_ONLY. If not specified, the default is to attach the disk in READ_WRITE mode.", + "enum": [ + "READ_ONLY", + "READ_WRITE" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "source": { + "description": "Specifies a valid partial or full URL to an existing Persistent Disk resource. When creating a new instance, one of initializeParams.sourceImage or disks.source is required except for local SSD.\n\nIf desired, you can also attach existing non-root persistent disks using this property. This field is only applicable for persistent disks.\n\nNote that for InstanceTemplate, specify the disk name, not the URL for the disk.", + "type": "string" + }, + "type": { + "description": "Specifies the type of the disk, either SCRATCH or PERSISTENT. If not specified, the default is PERSISTENT.", + "enum": [ + "PERSISTENT", + "SCRATCH" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "AttachedDiskInitializeParams": { + "description": "[Input Only] Specifies the parameters for a new disk that will be created alongside the new instance. Use initialization parameters to create boot disks or local SSDs attached to the new instance.\n\nThis property is mutually exclusive with the source property; you can only define one or the other, but not both.", + "id": "AttachedDiskInitializeParams", + "properties": { + "diskName": { + "description": "Specifies the disk name. If not specified, the default is to use the name of the instance.", + "type": "string" + }, + "diskSizeGb": { + "description": "Specifies the size of the disk in base-2 GB.", + "format": "int64", + "type": "string" + }, + "diskStorageType": { + "description": "[Deprecated] Storage type of the disk.", + "enum": [ + "HDD", + "SSD" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "diskType": { + "description": "Specifies the disk type to use to create the instance. If not specified, the default is pd-standard, specified using the full URL. For example:\nhttps://www.googleapis.com/compute/v1/projects/project/zones/zone/diskTypes/pd-standard\n\n\nOther values include pd-ssd and local-ssd. If you define this field, you can provide either the full or partial URL. For example, the following are valid values: \n- https://www.googleapis.com/compute/v1/projects/project/zones/zone/diskTypes/diskType \n- projects/project/zones/zone/diskTypes/diskType \n- zones/zone/diskTypes/diskType Note that for InstanceTemplate, this is the name of the disk type, not URL.", + "type": "string" + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Labels to apply to this disk. These can be later modified by the disks.setLabels method. This field is only applicable for persistent disks.", + "type": "object" + }, + "sourceImage": { + "description": "The source image to create this disk. When creating a new instance, one of initializeParams.sourceImage or disks.source is required except for local SSD.\n\nTo create a disk with one of the public operating system images, specify the image by its family name. For example, specify family/debian-8 to use the latest Debian 8 image:\nprojects/debian-cloud/global/images/family/debian-8\n\n\nAlternatively, use a specific version of a public operating system image:\nprojects/debian-cloud/global/images/debian-8-jessie-vYYYYMMDD\n\n\nTo create a disk with a custom image that you created, specify the image name in the following format:\nglobal/images/my-custom-image\n\n\nYou can also specify a custom image by its image family, which returns the latest version of the image in that family. Replace the image name with family/family-name:\nglobal/images/family/my-image-family\n\n\nIf the source image is deleted later, this field will not be set.", + "type": "string" + }, + "sourceImageEncryptionKey": { + "$ref": "CustomerEncryptionKey", + "description": "The customer-supplied encryption key of the source image. Required if the source image is protected by a customer-supplied encryption key.\n\nInstance templates do not store customer-supplied encryption keys, so you cannot create disks for instances in a managed instance group if the source images are encrypted with your own keys." + } + }, + "type": "object" + }, + "AuditConfig": { + "description": "Specifies the audit configuration for a service. The configuration determines which permission types are logged, and what identities, if any, are exempted from logging. An AuditConfig must have one or more AuditLogConfigs.\n\nIf there are AuditConfigs for both `allServices` and a specific service, the union of the two AuditConfigs is used for that service: the log_types specified in each AuditConfig are enabled, and the exempted_members in each AuditLogConfig are exempted.\n\nExample Policy with multiple AuditConfigs:\n\n{ \"audit_configs\": [ { \"service\": \"allServices\" \"audit_log_configs\": [ { \"log_type\": \"DATA_READ\", \"exempted_members\": [ \"user:foo@gmail.com\" ] }, { \"log_type\": \"DATA_WRITE\", }, { \"log_type\": \"ADMIN_READ\", } ] }, { \"service\": \"fooservice.googleapis.com\" \"audit_log_configs\": [ { \"log_type\": \"DATA_READ\", }, { \"log_type\": \"DATA_WRITE\", \"exempted_members\": [ \"user:bar@gmail.com\" ] } ] } ] }\n\nFor fooservice, this policy enables DATA_READ, DATA_WRITE and ADMIN_READ logging. It also exempts foo@gmail.com from DATA_READ logging, and bar@gmail.com from DATA_WRITE logging.", + "id": "AuditConfig", + "properties": { + "auditLogConfigs": { + "description": "The configuration for logging of each type of permission.", + "items": { + "$ref": "AuditLogConfig" + }, + "type": "array" + }, + "exemptedMembers": { + "description": "", + "items": { + "type": "string" + }, + "type": "array" + }, + "service": { + "description": "Specifies a service that will be enabled for audit logging. For example, `storage.googleapis.com`, `cloudsql.googleapis.com`. `allServices` is a special value that covers all services.", + "type": "string" + } + }, + "type": "object" + }, + "AuditLogConfig": { + "description": "Provides the configuration for logging a type of permissions. Example:\n\n{ \"audit_log_configs\": [ { \"log_type\": \"DATA_READ\", \"exempted_members\": [ \"user:foo@gmail.com\" ] }, { \"log_type\": \"DATA_WRITE\", } ] }\n\nThis enables 'DATA_READ' and 'DATA_WRITE' logging, while exempting foo@gmail.com from DATA_READ logging.", + "id": "AuditLogConfig", + "properties": { + "exemptedMembers": { + "description": "Specifies the identities that do not cause logging for this type of permission. Follows the same format of [Binding.members][].", + "items": { + "type": "string" + }, + "type": "array" + }, + "logType": { + "description": "The log type that this config enables.", + "enum": [ + "ADMIN_READ", + "DATA_READ", + "DATA_WRITE", + "LOG_TYPE_UNSPECIFIED" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "AuthorizationLoggingOptions": { + "description": "Authorization-related information used by Cloud Audit Logging.", + "id": "AuthorizationLoggingOptions", + "properties": { + "permissionType": { + "description": "The type of the permission that was checked.", + "enum": [ + "ADMIN_READ", + "ADMIN_WRITE", + "DATA_READ", + "DATA_WRITE", + "PERMISSION_TYPE_UNSPECIFIED" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "Autoscaler": { + "description": "Represents an Autoscaler resource. Autoscalers allow you to automatically scale virtual machine instances in managed instance groups according to an autoscaling policy that you define. For more information, read Autoscaling Groups of Instances. (== resource_for beta.autoscalers ==) (== resource_for v1.autoscalers ==) (== resource_for beta.regionAutoscalers ==) (== resource_for v1.regionAutoscalers ==)", + "id": "Autoscaler", + "properties": { + "autoscalingPolicy": { + "$ref": "AutoscalingPolicy", + "description": "The configuration parameters for the autoscaling algorithm. You can define one or more of the policies for an autoscaler: cpuUtilization, customMetricUtilizations, and loadBalancingUtilization.\n\nIf none of these are specified, the default will be to autoscale based on cpuUtilization to 0.6 or 60%." + }, + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "description": { + "description": "An optional description of this resource. Provide this property when you create the resource.", + "type": "string" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64", + "type": "string" + }, + "kind": { + "default": "compute#autoscaler", + "description": "[Output Only] Type of the resource. Always compute#autoscaler for autoscalers.", + "type": "string" + }, + "name": { + "annotations": { + "required": [ + "compute.instanceGroups.insert" + ] + }, + "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "region": { + "description": "[Output Only] URL of the region where the instance group resides (for autoscalers living in regional scope).", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + }, + "status": { + "description": "[Output Only] The status of the autoscaler configuration.", + "enum": [ + "ACTIVE", + "DELETING", + "ERROR", + "PENDING" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ], + "type": "string" + }, + "statusDetails": { + "description": "[Output Only] Human-readable details about the current state of the autoscaler. Read the documentation for Commonly returned status messages for examples of status messages you might encounter.", + "items": { + "$ref": "AutoscalerStatusDetails" + }, + "type": "array" + }, + "target": { + "description": "URL of the managed instance group that this autoscaler will scale.", + "type": "string" + }, + "zone": { + "description": "[Output Only] URL of the zone where the instance group resides (for autoscalers living in zonal scope).", + "type": "string" + } + }, + "type": "object" + }, + "AutoscalerAggregatedList": { + "id": "AutoscalerAggregatedList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "additionalProperties": { + "$ref": "AutoscalersScopedList", + "description": "[Output Only] Name of the scope containing this set of autoscalers." + }, + "description": "A list of AutoscalersScopedList resources.", + "type": "object" + }, + "kind": { + "default": "compute#autoscalerAggregatedList", + "description": "[Output Only] Type of resource. Always compute#autoscalerAggregatedList for aggregated lists of autoscalers.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "AutoscalerList": { + "description": "Contains a list of Autoscaler resources.", + "id": "AutoscalerList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of Autoscaler resources.", + "items": { + "$ref": "Autoscaler" + }, + "type": "array" + }, + "kind": { + "default": "compute#autoscalerList", + "description": "[Output Only] Type of resource. Always compute#autoscalerList for lists of autoscalers.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "AutoscalerStatusDetails": { + "id": "AutoscalerStatusDetails", + "properties": { + "message": { + "description": "The status message.", + "type": "string" + }, + "type": { + "description": "The type of error returned.", + "enum": [ + "ALL_INSTANCES_UNHEALTHY", + "BACKEND_SERVICE_DOES_NOT_EXIST", + "CAPPED_AT_MAX_NUM_REPLICAS", + "CUSTOM_METRIC_DATA_POINTS_TOO_SPARSE", + "CUSTOM_METRIC_INVALID", + "MIN_EQUALS_MAX", + "MISSING_CUSTOM_METRIC_DATA_POINTS", + "MISSING_LOAD_BALANCING_DATA_POINTS", + "MORE_THAN_ONE_BACKEND_SERVICE", + "NOT_ENOUGH_QUOTA_AVAILABLE", + "REGION_RESOURCE_STOCKOUT", + "SCALING_TARGET_DOES_NOT_EXIST", + "UNKNOWN", + "UNSUPPORTED_MAX_RATE_LOAD_BALANCING_CONFIGURATION", + "ZONE_RESOURCE_STOCKOUT" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "AutoscalersScopedList": { + "id": "AutoscalersScopedList", + "properties": { + "autoscalers": { + "description": "[Output Only] List of autoscalers contained in this scope.", + "items": { + "$ref": "Autoscaler" + }, + "type": "array" + }, + "warning": { + "description": "[Output Only] Informational warning which replaces the list of autoscalers when the list is empty.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "AutoscalingPolicy": { + "description": "Cloud Autoscaler policy.", + "id": "AutoscalingPolicy", + "properties": { + "coolDownPeriodSec": { + "description": "The number of seconds that the autoscaler should wait before it starts collecting information from a new instance. This prevents the autoscaler from collecting information when the instance is initializing, during which the collected usage would not be reliable. The default time autoscaler waits is 60 seconds.\n\nVirtual machine initialization times might vary because of numerous factors. We recommend that you test how long an instance may take to initialize. To do this, create an instance and time the startup process.", + "format": "int32", + "type": "integer" + }, + "cpuUtilization": { + "$ref": "AutoscalingPolicyCpuUtilization", + "description": "Defines the CPU utilization policy that allows the autoscaler to scale based on the average CPU utilization of a managed instance group." + }, + "customMetricUtilizations": { + "description": "Configuration parameters of autoscaling based on a custom metric.", + "items": { + "$ref": "AutoscalingPolicyCustomMetricUtilization" + }, + "type": "array" + }, + "loadBalancingUtilization": { + "$ref": "AutoscalingPolicyLoadBalancingUtilization", + "description": "Configuration parameters of autoscaling based on load balancer." + }, + "maxNumReplicas": { + "description": "The maximum number of instances that the autoscaler can scale up to. This is required when creating or updating an autoscaler. The maximum number of replicas should not be lower than minimal number of replicas.", + "format": "int32", + "type": "integer" + }, + "minNumReplicas": { + "description": "The minimum number of replicas that the autoscaler can scale down to. This cannot be less than 0. If not provided, autoscaler will choose a default value depending on maximum number of instances allowed.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "AutoscalingPolicyCpuUtilization": { + "description": "CPU utilization policy.", + "id": "AutoscalingPolicyCpuUtilization", + "properties": { + "utilizationTarget": { + "description": "The target CPU utilization that the autoscaler should maintain. Must be a float value in the range (0, 1]. If not specified, the default is 0.6.\n\nIf the CPU level is below the target utilization, the autoscaler scales down the number of instances until it reaches the minimum number of instances you specified or until the average CPU of your instances reaches the target utilization.\n\nIf the average CPU is above the target utilization, the autoscaler scales up until it reaches the maximum number of instances you specified or until the average utilization reaches the target utilization.", + "format": "double", + "type": "number" + } + }, + "type": "object" + }, + "AutoscalingPolicyCustomMetricUtilization": { + "description": "Custom utilization metric policy.", + "id": "AutoscalingPolicyCustomMetricUtilization", + "properties": { + "filter": { + "description": "A filter string, compatible with a Stackdriver Monitoring filter string for TimeSeries.list API call. This filter is used to select a specific TimeSeries for the purpose of autoscaling and to determine whether the metric is exporting per-instance or per-group data.\n\nFor the filter to be valid for autoscaling purposes, the following rules apply: \n- You can only use the AND operator for joining selectors. \n- You can only use direct equality comparison operator (=) without any functions for each selector. \n- You can specify the metric in both the filter string and in the metric field. However, if specified in both places, the metric must be identical. \n- The monitored resource type determines what kind of values are expected for the metric. If it is a gce_instance, the autoscaler expects the metric to include a separate TimeSeries for each instance in a group. In such a case, you cannot filter on resource labels.\nIf the resource type is any other value, the autoscaler expects this metric to contain values that apply to the entire autoscaled instance group and resource label filtering can be performed to point autoscaler at the correct TimeSeries to scale upon. This is called a per-group metric for the purpose of autoscaling.\n\nIf not specified, the type defaults to gce_instance. \n\nYou should provide a filter that is selective enough to pick just one TimeSeries for the autoscaled group or for each of the instances (if you are using gce_instance resource type). If multiple TimeSeries are returned upon the query execution, the autoscaler will sum their respective values to obtain its scaling value.", + "type": "string" + }, + "metric": { + "description": "The identifier (type) of the Stackdriver Monitoring metric. The metric cannot have negative values.\n\nThe metric must have a value type of INT64 or DOUBLE.", + "type": "string" + }, + "singleInstanceAssignment": { + "description": "If scaling is based on a per-group metric value that represents the total amount of work to be done or resource usage, set this value to an amount assigned for a single instance of the scaled group. Autoscaler will keep the number of instances proportional to the value of this metric, the metric itself should not change value due to group resizing.\n\nA good metric to use with the target is for example pubsub.googleapis.com/subscription/num_undelivered_messages or a custom metric exporting the total number of requests coming to your instances.\n\nA bad example would be a metric exporting an average or median latency, since this value can't include a chunk assignable to a single instance, it could be better used with utilization_target instead.", + "format": "double", + "type": "number" + }, + "utilizationTarget": { + "description": "The target value of the metric that autoscaler should maintain. This must be a positive value. A utilization metric scales number of virtual machines handling requests to increase or decrease proportionally to the metric.\n\nFor example, a good metric to use as a utilization_target is compute.googleapis.com/instance/network/received_bytes_count. The autoscaler will work to keep this value constant for each of the instances.", + "format": "double", + "type": "number" + }, + "utilizationTargetType": { + "description": "Defines how target utilization value is expressed for a Stackdriver Monitoring metric. Either GAUGE, DELTA_PER_SECOND, or DELTA_PER_MINUTE. If not specified, the default is GAUGE.", + "enum": [ + "DELTA_PER_MINUTE", + "DELTA_PER_SECOND", + "GAUGE" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "AutoscalingPolicyLoadBalancingUtilization": { + "description": "Configuration parameters of autoscaling based on load balancing.", + "id": "AutoscalingPolicyLoadBalancingUtilization", + "properties": { + "utilizationTarget": { + "description": "Fraction of backend capacity utilization (set in HTTP(s) load balancing configuration) that autoscaler should maintain. Must be a positive float value. If not defined, the default is 0.8.", + "format": "double", + "type": "number" + } + }, + "type": "object" + }, + "Backend": { + "description": "Message containing information of one individual backend.", + "id": "Backend", + "properties": { + "balancingMode": { + "description": "Specifies the balancing mode for this backend. For global HTTP(S) or TCP/SSL load balancing, the default is UTILIZATION. Valid values are UTILIZATION, RATE (for HTTP(S)) and CONNECTION (for TCP/SSL).\n\nFor Internal Load Balancing, the default and only supported mode is CONNECTION.", + "enum": [ + "CONNECTION", + "RATE", + "UTILIZATION" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, + "capacityScaler": { + "description": "A multiplier applied to the group's maximum servicing capacity (based on UTILIZATION, RATE or CONNECTION). Default value is 1, which means the group will serve up to 100% of its configured capacity (depending on balancingMode). A setting of 0 means the group is completely drained, offering 0% of its available Capacity. Valid range is [0.0,1.0].\n\nThis cannot be used for internal load balancing.", + "format": "float", + "type": "number" + }, + "description": { + "description": "An optional description of this resource. Provide this property when you create the resource.", + "type": "string" + }, + "group": { + "description": "The fully-qualified URL of a Instance Group resource. This instance group defines the list of instances that serve traffic. Member virtual machine instances from each instance group must live in the same zone as the instance group itself. No two backends in a backend service are allowed to use same Instance Group resource.\n\nNote that you must specify an Instance Group resource using the fully-qualified URL, rather than a partial URL.\n\nWhen the BackendService has load balancing scheme INTERNAL, the instance group must be within the same region as the BackendService.", + "type": "string" + }, + "maxConnections": { + "description": "The max number of simultaneous connections for the group. Can be used with either CONNECTION or UTILIZATION balancing modes. For CONNECTION mode, either maxConnections or maxConnectionsPerInstance must be set.\n\nThis cannot be used for internal load balancing.", + "format": "int32", + "type": "integer" + }, + "maxConnectionsPerInstance": { + "description": "The max number of simultaneous connections that a single backend instance can handle. This is used to calculate the capacity of the group. Can be used in either CONNECTION or UTILIZATION balancing modes. For CONNECTION mode, either maxConnections or maxConnectionsPerInstance must be set.\n\nThis cannot be used for internal load balancing.", + "format": "int32", + "type": "integer" + }, + "maxRate": { + "description": "The max requests per second (RPS) of the group. Can be used with either RATE or UTILIZATION balancing modes, but required if RATE mode. For RATE mode, either maxRate or maxRatePerInstance must be set.\n\nThis cannot be used for internal load balancing.", + "format": "int32", + "type": "integer" + }, + "maxRatePerInstance": { + "description": "The max requests per second (RPS) that a single backend instance can handle. This is used to calculate the capacity of the group. Can be used in either balancing mode. For RATE mode, either maxRate or maxRatePerInstance must be set.\n\nThis cannot be used for internal load balancing.", + "format": "float", + "type": "number" + }, + "maxUtilization": { + "description": "Used when balancingMode is UTILIZATION. This ratio defines the CPU utilization target for the group. The default is 0.8. Valid range is [0.0, 1.0].\n\nThis cannot be used for internal load balancing.", + "format": "float", + "type": "number" + } + }, + "type": "object" + }, + "BackendBucket": { + "description": "A BackendBucket resource. This resource defines a Cloud Storage bucket.", + "id": "BackendBucket", + "properties": { + "bucketName": { + "description": "Cloud Storage bucket name.", + "type": "string" + }, + "cdnPolicy": { + "$ref": "BackendBucketCdnPolicy", + "description": "Cloud CDN Coniguration for this BackendBucket." + }, + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "description": { + "description": "An optional textual description of the resource; provided by the client when the resource is created.", + "type": "string" + }, + "enableCdn": { + "description": "If true, enable Cloud CDN for this BackendBucket.", + "type": "boolean" + }, + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "format": "uint64", + "type": "string" + }, + "kind": { + "default": "compute#backendBucket", + "description": "Type of the resource.", + "type": "string" + }, + "name": { + "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + } + }, + "type": "object" + }, + "BackendBucketCdnPolicy": { + "description": "Message containing Cloud CDN configuration for a backend bucket.", + "id": "BackendBucketCdnPolicy", + "properties": { + "signedUrlCacheMaxAgeSec": { + "description": "Number of seconds up to which the response to a signed URL request will be cached in the CDN. After this time period, the Signed URL will be revalidated before being served. Defaults to 1hr (3600s). If this field is set, Cloud CDN will internally act as though all responses from this bucket had a ?Cache-Control: public, max-age=[TTL]? header, regardless of any existing Cache-Control header. The actual headers served in responses will not be altered.", + "format": "int64", + "type": "string" + }, + "signedUrlKeyNames": { + "description": "[Output Only] Names of the keys currently configured for Cloud CDN Signed URL on this backend bucket.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "BackendBucketList": { + "description": "Contains a list of BackendBucket resources.", + "id": "BackendBucketList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of BackendBucket resources.", + "items": { + "$ref": "BackendBucket" + }, + "type": "array" + }, + "kind": { + "default": "compute#backendBucketList", + "description": "Type of resource.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "BackendService": { + "description": "A BackendService resource. This resource defines a group of backend virtual machines and their serving capacity. (== resource_for v1.backendService ==) (== resource_for beta.backendService ==)", + "id": "BackendService", + "properties": { + "affinityCookieTtlSec": { + "description": "Lifetime of cookies in seconds if session_affinity is GENERATED_COOKIE. If set to 0, the cookie is non-persistent and lasts only until the end of the browser session (or equivalent). The maximum allowed value for TTL is one day.\n\nWhen the load balancing scheme is INTERNAL, this field is not used.", + "format": "int32", + "type": "integer" + }, + "backends": { + "description": "The list of backends that serve this BackendService.", + "items": { + "$ref": "Backend" + }, + "type": "array" + }, + "cdnPolicy": { + "$ref": "BackendServiceCdnPolicy", + "description": "Cloud CDN configuration for this BackendService." + }, + "connectionDraining": { + "$ref": "ConnectionDraining" + }, + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "customRequestHeaders": { + "description": "Headers that the HTTP/S load balancer should add to proxied requests.", + "items": { + "type": "string" + }, + "type": "array" + }, + "description": { + "description": "An optional description of this resource. Provide this property when you create the resource.", + "type": "string" + }, + "enableCDN": { + "description": "If true, enable Cloud CDN for this BackendService.\n\nWhen the load balancing scheme is INTERNAL, this field is not used.", + "type": "boolean" + }, + "fingerprint": { + "description": "Fingerprint of this resource. A hash of the contents stored in this object. This field is used in optimistic locking. This field will be ignored when inserting a BackendService. An up-to-date fingerprint must be provided in order to update the BackendService.", + "format": "byte", + "type": "string" + }, + "healthChecks": { + "description": "The list of URLs to the HttpHealthCheck or HttpsHealthCheck resource for health checking this BackendService. Currently at most one health check can be specified, and a health check is required for Compute Engine backend services. A health check must not be specified for App Engine backend and Cloud Function backend.\n\nFor internal load balancing, a URL to a HealthCheck resource must be specified instead.", + "items": { + "type": "string" + }, + "type": "array" + }, + "iap": { + "$ref": "BackendServiceIAP" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64", + "type": "string" + }, + "kind": { + "default": "compute#backendService", + "description": "[Output Only] Type of resource. Always compute#backendService for backend services.", + "type": "string" + }, + "loadBalancingScheme": { + "description": "Indicates whether the backend service will be used with internal or external load balancing. A backend service created for one type of load balancing cannot be used with the other. Possible values are INTERNAL and EXTERNAL.", + "enum": [ + "EXTERNAL", + "INTERNAL", + "INVALID_LOAD_BALANCING_SCHEME" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, + "name": { + "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "port": { + "description": "Deprecated in favor of portName. The TCP port to connect on the backend. The default value is 80.\n\nThis cannot be used for internal load balancing.", + "format": "int32", + "type": "integer" + }, + "portName": { + "description": "Name of backend port. The same name should appear in the instance groups referenced by this service. Required when the load balancing scheme is EXTERNAL.\n\nWhen the load balancing scheme is INTERNAL, this field is not used.", + "type": "string" + }, + "protocol": { + "description": "The protocol this BackendService uses to communicate with backends.\n\nPossible values are HTTP, HTTPS, TCP, and SSL. The default is HTTP.\n\nFor internal load balancing, the possible values are TCP and UDP, and the default is TCP.", + "enum": [ + "HTTP", + "HTTPS", + "SSL", + "TCP", + "UDP" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "region": { + "description": "[Output Only] URL of the region where the regional backend service resides. This field is not applicable to global backend services. You must specify this field as part of the HTTP request URL. It is not settable as a field in the request body.", + "type": "string" + }, + "securityPolicy": { + "description": "[Output Only] The resource URL for the security policy associated with this backend service.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + }, + "sessionAffinity": { + "description": "Type of session affinity to use. The default is NONE.\n\nWhen the load balancing scheme is EXTERNAL, can be NONE, CLIENT_IP, or GENERATED_COOKIE.\n\nWhen the load balancing scheme is INTERNAL, can be NONE, CLIENT_IP, CLIENT_IP_PROTO, or CLIENT_IP_PORT_PROTO.\n\nWhen the protocol is UDP, this field is not used.", + "enum": [ + "CLIENT_IP", + "CLIENT_IP_PORT_PROTO", + "CLIENT_IP_PROTO", + "GENERATED_COOKIE", + "NONE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "timeoutSec": { + "description": "How many seconds to wait for the backend before considering it a failed request. Default is 30 seconds.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "BackendServiceAggregatedList": { + "description": "Contains a list of BackendServicesScopedList.", + "id": "BackendServiceAggregatedList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "additionalProperties": { + "$ref": "BackendServicesScopedList", + "description": "Name of the scope containing this set of BackendServices." + }, + "description": "A list of BackendServicesScopedList resources.", + "type": "object" + }, + "kind": { + "default": "compute#backendServiceAggregatedList", + "description": "Type of resource.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "BackendServiceCdnPolicy": { + "description": "Message containing Cloud CDN configuration for a backend service.", + "id": "BackendServiceCdnPolicy", + "properties": { + "cacheKeyPolicy": { + "$ref": "CacheKeyPolicy", + "description": "The CacheKeyPolicy for this CdnPolicy." + }, + "signedUrlCacheMaxAgeSec": { + "description": "Number of seconds up to which the response to a signed URL request will be cached in the CDN. After this time period, the Signed URL will be revalidated before being served. Defaults to 1hr (3600s). If this field is set, Cloud CDN will internally act as though all responses from this backend had a ?Cache-Control: public, max-age=[TTL]? header, regardless of any existing Cache-Control header. The actual headers served in responses will not be altered.", + "format": "int64", + "type": "string" + }, + "signedUrlKeyNames": { + "description": "[Output Only] Names of the keys currently configured for Cloud CDN Signed URL on this backend service.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "BackendServiceGroupHealth": { + "id": "BackendServiceGroupHealth", + "properties": { + "healthStatus": { + "items": { + "$ref": "HealthStatus" + }, + "type": "array" + }, + "kind": { + "default": "compute#backendServiceGroupHealth", + "description": "[Output Only] Type of resource. Always compute#backendServiceGroupHealth for the health of backend services.", + "type": "string" + } + }, + "type": "object" + }, + "BackendServiceIAP": { + "description": "Identity-Aware Proxy", + "id": "BackendServiceIAP", + "properties": { + "enabled": { + "type": "boolean" + }, + "oauth2ClientId": { + "type": "string" + }, + "oauth2ClientSecret": { + "type": "string" + }, + "oauth2ClientSecretSha256": { + "description": "[Output Only] SHA256 hash value for the field oauth2_client_secret above.", + "type": "string" + } + }, + "type": "object" + }, + "BackendServiceList": { + "description": "Contains a list of BackendService resources.", + "id": "BackendServiceList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of BackendService resources.", + "items": { + "$ref": "BackendService" + }, + "type": "array" + }, + "kind": { + "default": "compute#backendServiceList", + "description": "[Output Only] Type of resource. Always compute#backendServiceList for lists of backend services.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "BackendServicesScopedList": { + "id": "BackendServicesScopedList", + "properties": { + "backendServices": { + "description": "List of BackendServices contained in this scope.", + "items": { + "$ref": "BackendService" + }, + "type": "array" + }, + "warning": { + "description": "Informational warning which replaces the list of backend services when the list is empty.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "Binding": { + "description": "Associates `members` with a `role`.", + "id": "Binding", + "properties": { + "condition": { + "$ref": "Expr", + "description": "The condition that is associated with this binding. NOTE: an unsatisfied condition will not allow user access via current binding. Different bindings, including their conditions, are examined independently. This field is only visible as GOOGLE_INTERNAL or CONDITION_TRUSTED_TESTER." + }, + "members": { + "description": "Specifies the identities requesting access for a Cloud Platform resource. `members` can have the following values:\n\n* `allUsers`: A special identifier that represents anyone who is on the internet; with or without a Google account.\n\n* `allAuthenticatedUsers`: A special identifier that represents anyone who is authenticated with a Google account or a service account.\n\n* `user:{emailid}`: An email address that represents a specific Google account. For example, `alice@gmail.com` or `joe@example.com`.\n\n\n\n* `serviceAccount:{emailid}`: An email address that represents a service account. For example, `my-other-app@appspot.gserviceaccount.com`.\n\n* `group:{emailid}`: An email address that represents a Google group. For example, `admins@example.com`.\n\n\n\n* `domain:{domain}`: A Google Apps domain name that represents all the users of that domain. For example, `google.com` or `example.com`.", + "items": { + "type": "string" + }, + "type": "array" + }, + "role": { + "description": "Role that is assigned to `members`. For example, `roles/viewer`, `roles/editor`, or `roles/owner`.", + "type": "string" + } + }, + "type": "object" + }, + "CacheInvalidationRule": { + "id": "CacheInvalidationRule", + "properties": { + "host": { + "description": "If set, this invalidation rule will only apply to requests with a Host header matching host.", + "type": "string" + }, + "path": { + "type": "string" + } + }, + "type": "object" + }, + "CacheKeyPolicy": { + "description": "Message containing what to include in the cache key for a request for Cloud CDN.", + "id": "CacheKeyPolicy", + "properties": { + "includeHost": { + "description": "If true, requests to different hosts will be cached separately.", + "type": "boolean" + }, + "includeProtocol": { + "description": "If true, http and https requests will be cached separately.", + "type": "boolean" + }, + "includeQueryString": { + "description": "If true, include query string parameters in the cache key according to query_string_whitelist and query_string_blacklist. If neither is set, the entire query string will be included. If false, the query string will be excluded from the cache key entirely.", + "type": "boolean" + }, + "queryStringBlacklist": { + "description": "Names of query string parameters to exclude in cache keys. All other parameters will be included. Either specify query_string_whitelist or query_string_blacklist, not both. '\u0026' and '=' will be percent encoded and not treated as delimiters.", + "items": { + "type": "string" + }, + "type": "array" + }, + "queryStringWhitelist": { + "description": "Names of query string parameters to include in cache keys. All other parameters will be excluded. Either specify query_string_whitelist or query_string_blacklist, not both. '\u0026' and '=' will be percent encoded and not treated as delimiters.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "Commitment": { + "description": "Represents a Commitment resource. Creating a Commitment resource means that you are purchasing a committed use contract with an explicit start and end time. You can create commitments based on vCPUs and memory usage and receive discounted rates. For full details, read Signing Up for Committed Use Discounts.\n\nCommitted use discounts are subject to Google Cloud Platform's Service Specific Terms. By purchasing a committed use discount, you agree to these terms. Committed use discounts will not renew, so you must purchase a new commitment to continue receiving discounts. (== resource_for beta.commitments ==) (== resource_for v1.commitments ==)", + "id": "Commitment", + "properties": { + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "description": { + "description": "An optional description of this resource. Provide this property when you create the resource.", + "type": "string" + }, + "endTimestamp": { + "description": "[Output Only] Commitment end time in RFC3339 text format.", + "type": "string" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64", + "type": "string" + }, + "kind": { + "default": "compute#commitment", + "description": "[Output Only] Type of the resource. Always compute#commitment for commitments.", + "type": "string" + }, + "name": { + "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "plan": { + "description": "The plan for this commitment, which determines duration and discount rate. The currently supported plans are TWELVE_MONTH (1 year), and THIRTY_SIX_MONTH (3 years).", + "enum": [ + "INVALID", + "THIRTY_SIX_MONTH", + "TWELVE_MONTH" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, + "region": { + "description": "[Output Only] URL of the region where this commitment may be used.", + "type": "string" + }, + "resources": { + "description": "List of commitment amounts for particular resources. Note that VCPU and MEMORY resource commitments must occur together.", + "items": { + "$ref": "ResourceCommitment" + }, + "type": "array" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + }, + "startTimestamp": { + "description": "[Output Only] Commitment start time in RFC3339 text format.", + "type": "string" + }, + "status": { + "description": "[Output Only] Status of the commitment with regards to eventual expiration (each commitment has an end date defined). One of the following values: NOT_YET_ACTIVE, ACTIVE, EXPIRED.", + "enum": [ + "ACTIVE", + "CREATING", + "EXPIRED", + "NOT_YET_ACTIVE" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ], + "type": "string" + }, + "statusMessage": { + "description": "[Output Only] An optional, human-readable explanation of the status.", + "type": "string" + } + }, + "type": "object" + }, + "CommitmentAggregatedList": { + "id": "CommitmentAggregatedList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "additionalProperties": { + "$ref": "CommitmentsScopedList", + "description": "[Output Only] Name of the scope containing this set of commitments." + }, + "description": "A list of CommitmentsScopedList resources.", + "type": "object" + }, + "kind": { + "default": "compute#commitmentAggregatedList", + "description": "[Output Only] Type of resource. Always compute#commitmentAggregatedList for aggregated lists of commitments.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "CommitmentList": { + "description": "Contains a list of Commitment resources.", + "id": "CommitmentList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of Commitment resources.", + "items": { + "$ref": "Commitment" + }, + "type": "array" + }, + "kind": { + "default": "compute#commitmentList", + "description": "[Output Only] Type of resource. Always compute#commitmentList for lists of commitments.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "CommitmentsScopedList": { + "id": "CommitmentsScopedList", + "properties": { + "commitments": { + "description": "[Output Only] List of commitments contained in this scope.", + "items": { + "$ref": "Commitment" + }, + "type": "array" + }, + "warning": { + "description": "[Output Only] Informational warning which replaces the list of commitments when the list is empty.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "Condition": { + "description": "A condition to be met.", + "id": "Condition", + "properties": { + "iam": { + "description": "Trusted attributes supplied by the IAM system.", + "enum": [ + "APPROVER", + "ATTRIBUTION", + "AUTHORITY", + "CREDENTIALS_TYPE", + "JUSTIFICATION_TYPE", + "NO_ATTR", + "SECURITY_REALM" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "op": { + "description": "An operator to apply the subject with.", + "enum": [ + "DISCHARGED", + "EQUALS", + "IN", + "NOT_EQUALS", + "NOT_IN", + "NO_OP" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "svc": { + "description": "Trusted attributes discharged by the service.", + "type": "string" + }, + "sys": { + "description": "Trusted attributes supplied by any service that owns resources and uses the IAM system for access control.", + "enum": [ + "IP", + "NAME", + "NO_ATTR", + "REGION", + "SERVICE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "value": { + "description": "DEPRECATED. Use 'values' instead.", + "type": "string" + }, + "values": { + "description": "The objects of the condition. This is mutually exclusive with 'value'.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "ConnectionDraining": { + "description": "Message containing connection draining configuration.", + "id": "ConnectionDraining", + "properties": { + "drainingTimeoutSec": { + "description": "Time for which instance will be drained (not accept new connections, but still work to finish started).", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "CustomerEncryptionKey": { + "description": "Represents a customer-supplied encryption key", + "id": "CustomerEncryptionKey", + "properties": { + "rawKey": { + "description": "Specifies a 256-bit customer-supplied encryption key, encoded in RFC 4648 base64 to either encrypt or decrypt this resource.", + "type": "string" + }, + "rsaEncryptedKey": { + "description": "Specifies an RFC 4648 base64 encoded, RSA-wrapped 2048-bit customer-supplied encryption key to either encrypt or decrypt this resource.\n\nThe key must meet the following requirements before you can provide it to Compute Engine: \n- The key is wrapped using a RSA public key certificate provided by Google. \n- After being wrapped, the key must be encoded in RFC 4648 base64 encoding. Get the RSA public key certificate provided by Google at:\nhttps://cloud-certs.storage.googleapis.com/google-cloud-csek-ingress.pem", + "type": "string" + }, + "sha256": { + "description": "[Output only] The RFC 4648 base64 encoded SHA-256 hash of the customer-supplied encryption key that protects this resource.", + "type": "string" + } + }, + "type": "object" + }, + "CustomerEncryptionKeyProtectedDisk": { + "id": "CustomerEncryptionKeyProtectedDisk", + "properties": { + "diskEncryptionKey": { + "$ref": "CustomerEncryptionKey", + "description": "Decrypts data associated with the disk with a customer-supplied encryption key." + }, + "source": { + "description": "Specifies a valid partial or full URL to an existing Persistent Disk resource. This field is only applicable for persistent disks.", + "type": "string" + } + }, + "type": "object" + }, + "DeprecationStatus": { + "description": "Deprecation status for a public resource.", + "id": "DeprecationStatus", + "properties": { + "deleted": { + "description": "An optional RFC3339 timestamp on or after which the state of this resource is intended to change to DELETED. This is only informational and the status will not change unless the client explicitly changes it.", + "type": "string" + }, + "deprecated": { + "description": "An optional RFC3339 timestamp on or after which the state of this resource is intended to change to DEPRECATED. This is only informational and the status will not change unless the client explicitly changes it.", + "type": "string" + }, + "obsolete": { + "description": "An optional RFC3339 timestamp on or after which the state of this resource is intended to change to OBSOLETE. This is only informational and the status will not change unless the client explicitly changes it.", + "type": "string" + }, + "replacement": { + "description": "The URL of the suggested replacement for a deprecated resource. The suggested replacement resource must be the same kind of resource as the deprecated resource.", + "type": "string" + }, + "state": { + "description": "The deprecation state of this resource. This can be DEPRECATED, OBSOLETE, or DELETED. Operations which create a new resource using a DEPRECATED resource will return successfully, but with a warning indicating the deprecated resource and recommending its replacement. Operations which use OBSOLETE or DELETED resources will be rejected and result in an error.", + "enum": [ + "DELETED", + "DEPRECATED", + "OBSOLETE" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "Disk": { + "description": "A Disk resource. (== resource_for beta.disks ==) (== resource_for v1.disks ==)", + "id": "Disk", + "properties": { + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "description": { + "description": "An optional description of this resource. Provide this property when you create the resource.", + "type": "string" + }, + "diskEncryptionKey": { + "$ref": "CustomerEncryptionKey", + "description": "Encrypts the disk using a customer-supplied encryption key.\n\nAfter you encrypt a disk with a customer-supplied key, you must provide the same key if you use the disk later (e.g. to create a disk snapshot or an image, or to attach the disk to a virtual machine).\n\nCustomer-supplied encryption keys do not protect access to metadata of the disk.\n\nIf you do not provide an encryption key when creating the disk, then the disk will be encrypted using an automatically generated key and you do not need to provide a key to use the disk later." + }, + "guestOsFeatures": { + "description": "A list of features to enable on the guest operating system. Applicable only for bootable images. Read Enabling guest operating system features to see a list of available options.", + "items": { + "$ref": "GuestOsFeature" + }, + "type": "array" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64", + "type": "string" + }, + "kind": { + "default": "compute#disk", + "description": "[Output Only] Type of the resource. Always compute#disk for disks.", + "type": "string" + }, + "labelFingerprint": { + "description": "A fingerprint for the labels being applied to this disk, which is essentially a hash of the labels set used for optimistic locking. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update labels. You must always provide an up-to-date fingerprint hash in order to update or change labels.\n\nTo see the latest fingerprint, make a get() request to retrieve a disk.", + "format": "byte", + "type": "string" + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Labels to apply to this disk. These can be later modified by the setLabels method.", + "type": "object" + }, + "lastAttachTimestamp": { + "description": "[Output Only] Last attach timestamp in RFC3339 text format.", + "type": "string" + }, + "lastDetachTimestamp": { + "description": "[Output Only] Last detach timestamp in RFC3339 text format.", + "type": "string" + }, + "licenseCodes": { + "description": "Integer license codes indicating which licenses are attached to this disk.", + "items": { + "format": "int64", + "type": "string" + }, + "type": "array" + }, + "licenses": { + "description": "Any applicable publicly visible licenses.", + "items": { + "type": "string" + }, + "type": "array" + }, + "name": { + "annotations": { + "required": [ + "compute.disks.insert" + ] + }, + "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "options": { + "description": "Internal use only.", + "type": "string" + }, + "region": { + "description": "[Output Only] URL of the region where the disk resides. Only applicable for regional resources. You must specify this field as part of the HTTP request URL. It is not settable as a field in the request body.", + "type": "string" + }, + "replicaZones": { + "description": "URLs of the zones where the disk should be replicated to. Only applicable for regional resources.", + "items": { + "type": "string" + }, + "type": "array" + }, + "selfLink": { + "description": "[Output Only] Server-defined fully-qualified URL for this resource.", + "type": "string" + }, + "sizeGb": { + "description": "Size of the persistent disk, specified in GB. You can specify this field when creating a persistent disk using the sourceImage or sourceSnapshot parameter, or specify it alone to create an empty persistent disk.\n\nIf you specify this field along with sourceImage or sourceSnapshot, the value of sizeGb must not be less than the size of the sourceImage or the size of the snapshot. Acceptable values are 1 to 65536, inclusive.", + "format": "int64", + "type": "string" + }, + "sourceImage": { + "description": "The source image used to create this disk. If the source image is deleted, this field will not be set.\n\nTo create a disk with one of the public operating system images, specify the image by its family name. For example, specify family/debian-8 to use the latest Debian 8 image:\nprojects/debian-cloud/global/images/family/debian-8\n\n\nAlternatively, use a specific version of a public operating system image:\nprojects/debian-cloud/global/images/debian-8-jessie-vYYYYMMDD\n\n\nTo create a disk with a custom image that you created, specify the image name in the following format:\nglobal/images/my-custom-image\n\n\nYou can also specify a custom image by its image family, which returns the latest version of the image in that family. Replace the image name with family/family-name:\nglobal/images/family/my-image-family", + "type": "string" + }, + "sourceImageEncryptionKey": { + "$ref": "CustomerEncryptionKey", + "description": "The customer-supplied encryption key of the source image. Required if the source image is protected by a customer-supplied encryption key." + }, + "sourceImageId": { + "description": "[Output Only] The ID value of the image used to create this disk. This value identifies the exact image that was used to create this persistent disk. For example, if you created the persistent disk from an image that was later deleted and recreated under the same name, the source image ID would identify the exact version of the image that was used.", + "type": "string" + }, + "sourceSnapshot": { + "description": "The source snapshot used to create this disk. You can provide this as a partial or full URL to the resource. For example, the following are valid values: \n- https://www.googleapis.com/compute/v1/projects/project/global/snapshots/snapshot \n- projects/project/global/snapshots/snapshot \n- global/snapshots/snapshot", + "type": "string" + }, + "sourceSnapshotEncryptionKey": { + "$ref": "CustomerEncryptionKey", + "description": "The customer-supplied encryption key of the source snapshot. Required if the source snapshot is protected by a customer-supplied encryption key." + }, + "sourceSnapshotId": { + "description": "[Output Only] The unique ID of the snapshot used to create this disk. This value identifies the exact snapshot that was used to create this persistent disk. For example, if you created the persistent disk from a snapshot that was later deleted and recreated under the same name, the source snapshot ID would identify the exact version of the snapshot that was used.", + "type": "string" + }, + "status": { + "description": "[Output Only] The status of disk creation.", + "enum": [ + "CREATING", + "FAILED", + "READY", + "RESTORING" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ], + "type": "string" + }, + "storageType": { + "description": "[Deprecated] Storage type of the persistent disk.", + "enum": [ + "HDD", + "SSD" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "type": { + "description": "URL of the disk type resource describing which disk type to use to create the disk. Provide this when creating the disk. For example: project/zones/zone/diskTypes/pd-standard or pd-ssd", + "type": "string" + }, + "users": { + "description": "[Output Only] Links to the users of the disk (attached instances) in form: project/zones/zone/instances/instance", + "items": { + "type": "string" + }, + "type": "array" + }, + "zone": { + "description": "[Output Only] URL of the zone where the disk resides. You must specify this field as part of the HTTP request URL. It is not settable as a field in the request body.", + "type": "string" + } + }, + "type": "object" + }, + "DiskAggregatedList": { + "id": "DiskAggregatedList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "additionalProperties": { + "$ref": "DisksScopedList", + "description": "[Output Only] Name of the scope containing this set of disks." + }, + "description": "A list of DisksScopedList resources.", + "type": "object" + }, + "kind": { + "default": "compute#diskAggregatedList", + "description": "[Output Only] Type of resource. Always compute#diskAggregatedList for aggregated lists of persistent disks.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "DiskInstantiationConfig": { + "description": "A specification of the desired way to instantiate a disk in the instance template when its created from a source instance.", + "id": "DiskInstantiationConfig", + "properties": { + "autoDelete": { + "description": "Specifies whether the disk will be auto-deleted when the instance is deleted (but not when the disk is detached from the instance).", + "type": "boolean" + }, + "customImage": { + "description": "The custom source image to be used to restore this disk when instantiating this instance template.", + "type": "string" + }, + "deviceName": { + "description": "Specifies the device name of the disk to which the configurations apply to.", + "type": "string" + }, + "instantiateFrom": { + "description": "Specifies whether to include the disk and what image to use. Possible values are: \n- source-image: to use the same image that was used to create the source instance's corresponding disk. Applicable to the boot disk and additional read-write disks. \n- source-image-family: to use the same image family that was used to create the source instance's corresponding disk. Applicable to the boot disk and additional read-write disks. \n- custom-image: to use a user-provided image url for disk creation. Applicable to the boot disk and additional read-write disks. \n- attach-read-only: to attach a read-only disk. Applicable to read-only disks. \n- do-not-include: to exclude a disk from the template. Applicable to additional read-write disks, local SSDs, and read-only disks.", + "enum": [ + "ATTACH_READ_ONLY", + "BLANK", + "CUSTOM_IMAGE", + "DEFAULT", + "DO_NOT_INCLUDE", + "SOURCE_IMAGE", + "SOURCE_IMAGE_FAMILY" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "DiskList": { + "description": "A list of Disk resources.", + "id": "DiskList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of Disk resources.", + "items": { + "$ref": "Disk" + }, + "type": "array" + }, + "kind": { + "default": "compute#diskList", + "description": "[Output Only] Type of resource. Always compute#diskList for lists of disks.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "DiskMoveRequest": { + "id": "DiskMoveRequest", + "properties": { + "destinationZone": { + "description": "The URL of the destination zone to move the disk. This can be a full or partial URL. For example, the following are all valid URLs to a zone: \n- https://www.googleapis.com/compute/v1/projects/project/zones/zone \n- projects/project/zones/zone \n- zones/zone", + "type": "string" + }, + "targetDisk": { + "description": "The URL of the target disk to move. This can be a full or partial URL. For example, the following are all valid URLs to a disk: \n- https://www.googleapis.com/compute/v1/projects/project/zones/zone/disks/disk \n- projects/project/zones/zone/disks/disk \n- zones/zone/disks/disk", + "type": "string" + } + }, + "type": "object" + }, + "DiskType": { + "description": "A DiskType resource. (== resource_for beta.diskTypes ==) (== resource_for v1.diskTypes ==)", + "id": "DiskType", + "properties": { + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "defaultDiskSizeGb": { + "description": "[Output Only] Server-defined default disk size in GB.", + "format": "int64", + "type": "string" + }, + "deprecated": { + "$ref": "DeprecationStatus", + "description": "[Output Only] The deprecation status associated with this disk type." + }, + "description": { + "description": "[Output Only] An optional description of this resource.", + "type": "string" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64", + "type": "string" + }, + "kind": { + "default": "compute#diskType", + "description": "[Output Only] Type of the resource. Always compute#diskType for disk types.", + "type": "string" + }, + "name": { + "description": "[Output Only] Name of the resource.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + }, + "validDiskSize": { + "description": "[Output Only] An optional textual description of the valid disk size, such as \"10GB-10TB\".", + "type": "string" + }, + "zone": { + "description": "[Output Only] URL of the zone where the disk type resides. You must specify this field as part of the HTTP request URL. It is not settable as a field in the request body.", + "type": "string" + } + }, + "type": "object" + }, + "DiskTypeAggregatedList": { + "id": "DiskTypeAggregatedList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "additionalProperties": { + "$ref": "DiskTypesScopedList", + "description": "[Output Only] Name of the scope containing this set of disk types." + }, + "description": "A list of DiskTypesScopedList resources.", + "type": "object" + }, + "kind": { + "default": "compute#diskTypeAggregatedList", + "description": "[Output Only] Type of resource. Always compute#diskTypeAggregatedList.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "DiskTypeList": { + "description": "Contains a list of disk types.", + "id": "DiskTypeList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of DiskType resources.", + "items": { + "$ref": "DiskType" + }, + "type": "array" + }, + "kind": { + "default": "compute#diskTypeList", + "description": "[Output Only] Type of resource. Always compute#diskTypeList for disk types.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "DiskTypesScopedList": { + "id": "DiskTypesScopedList", + "properties": { + "diskTypes": { + "description": "[Output Only] List of disk types contained in this scope.", + "items": { + "$ref": "DiskType" + }, + "type": "array" + }, + "warning": { + "description": "[Output Only] Informational warning which replaces the list of disk types when the list is empty.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "DisksResizeRequest": { + "id": "DisksResizeRequest", + "properties": { + "sizeGb": { + "description": "The new size of the persistent disk, which is specified in GB.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "DisksScopedList": { + "id": "DisksScopedList", + "properties": { + "disks": { + "description": "[Output Only] List of disks contained in this scope.", + "items": { + "$ref": "Disk" + }, + "type": "array" + }, + "warning": { + "description": "[Output Only] Informational warning which replaces the list of disks when the list is empty.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "DistributionPolicy": { + "id": "DistributionPolicy", + "properties": { + "zones": { + "items": { + "$ref": "DistributionPolicyZoneConfiguration" + }, + "type": "array" + } + }, + "type": "object" + }, + "DistributionPolicyZoneConfiguration": { + "id": "DistributionPolicyZoneConfiguration", + "properties": { + "zone": { + "annotations": { + "required": [ + "compute.regionInstanceGroupManagers.insert", + "compute.regionInstanceGroupManagers.update" + ] + }, + "description": "URL of the zone where managed instance group is spawning instances (for regional resources). Zone has to belong to the region where managed instance group is located.", + "type": "string" + } + }, + "type": "object" + }, + "Expr": { + "description": "Represents an expression text. Example:\n\ntitle: \"User account presence\" description: \"Determines whether the request has a user account\" expression: \"size(request.user) \u003e 0\"", + "id": "Expr", + "properties": { + "description": { + "description": "An optional description of the expression. This is a longer text which describes the expression, e.g. when hovered over it in a UI.", + "type": "string" + }, + "expression": { + "description": "Textual representation of an expression in Common Expression Language syntax.\n\nThe application context of the containing message determines which well-known feature set of CEL is supported.", + "type": "string" + }, + "location": { + "description": "An optional string indicating the location of the expression for error reporting, e.g. a file name and a position in the file.", + "type": "string" + }, + "title": { + "description": "An optional title for the expression, i.e. a short string describing its purpose. This can be used e.g. in UIs which allow to enter the expression.", + "type": "string" + } + }, + "type": "object" + }, + "Firewall": { + "description": "Represents a Firewall resource.", + "id": "Firewall", + "properties": { + "allowed": { + "description": "The list of ALLOW rules specified by this firewall. Each rule specifies a protocol and port-range tuple that describes a permitted connection.", + "items": { + "properties": { + "IPProtocol": { + "description": "The IP protocol to which this rule applies. The protocol type is required when creating a firewall rule. This value can either be one of the following well known protocol strings (tcp, udp, icmp, esp, ah, ipip, sctp), or the IP protocol number.", + "type": "string" + }, + "ports": { + "description": "An optional list of ports to which this rule applies. This field is only applicable for UDP or TCP protocol. Each entry must be either an integer or a range. If not specified, this rule applies to connections through any port.\n\nExample inputs include: [\"22\"], [\"80\",\"443\"], and [\"12345-12349\"].", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "type": "array" + }, + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "denied": { + "description": "The list of DENY rules specified by this firewall. Each rule specifies a protocol and port-range tuple that describes a denied connection.", + "items": { + "properties": { + "IPProtocol": { + "description": "The IP protocol to which this rule applies. The protocol type is required when creating a firewall rule. This value can either be one of the following well known protocol strings (tcp, udp, icmp, esp, ah, ipip, sctp), or the IP protocol number.", + "type": "string" + }, + "ports": { + "description": "An optional list of ports to which this rule applies. This field is only applicable for UDP or TCP protocol. Each entry must be either an integer or a range. If not specified, this rule applies to connections through any port.\n\nExample inputs include: [\"22\"], [\"80\",\"443\"], and [\"12345-12349\"].", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "type": "array" + }, + "description": { + "description": "An optional description of this resource. Provide this property when you create the resource.", + "type": "string" + }, + "destinationRanges": { + "description": "If destination ranges are specified, the firewall will apply only to traffic that has destination IP address in these ranges. These ranges must be expressed in CIDR format. Only IPv4 is supported.", + "items": { + "type": "string" + }, + "type": "array" + }, + "direction": { + "description": "Direction of traffic to which this firewall applies; default is INGRESS. Note: For INGRESS traffic, it is NOT supported to specify destinationRanges; For EGRESS traffic, it is NOT supported to specify sourceRanges OR sourceTags.", + "enum": [ + "EGRESS", + "INGRESS" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "disabled": { + "description": "Denotes whether the firewall rule is disabled, i.e not applied to the network it is associated with. When set to true, the firewall rule is not enforced and the network behaves as if it did not exist. If this is unspecified, the firewall rule will be enabled.", + "type": "boolean" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64", + "type": "string" + }, + "kind": { + "default": "compute#firewall", + "description": "[Output Only] Type of the resource. Always compute#firewall for firewall rules.", + "type": "string" + }, + "name": { + "annotations": { + "required": [ + "compute.firewalls.insert", + "compute.firewalls.patch" + ] + }, + "description": "Name of the resource; provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "network": { + "description": "URL of the network resource for this firewall rule. If not specified when creating a firewall rule, the default network is used:\nglobal/networks/default\nIf you choose to specify this property, you can specify the network as a full or partial URL. For example, the following are all valid URLs: \n- https://www.googleapis.com/compute/v1/projects/myproject/global/networks/my-network \n- projects/myproject/global/networks/my-network \n- global/networks/default", + "type": "string" + }, + "priority": { + "description": "Priority for this rule. This is an integer between 0 and 65535, both inclusive. When not specified, the value assumed is 1000. Relative priorities determine precedence of conflicting rules. Lower value of priority implies higher precedence (eg, a rule with priority 0 has higher precedence than a rule with priority 1). DENY rules take precedence over ALLOW rules having equal priority.", + "format": "int32", + "type": "integer" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + }, + "sourceRanges": { + "description": "If source ranges are specified, the firewall will apply only to traffic that has source IP address in these ranges. These ranges must be expressed in CIDR format. One or both of sourceRanges and sourceTags may be set. If both properties are set, the firewall will apply to traffic that has source IP address within sourceRanges OR the source IP that belongs to a tag listed in the sourceTags property. The connection does not need to match both properties for the firewall to apply. Only IPv4 is supported.", + "items": { + "type": "string" + }, + "type": "array" + }, + "sourceServiceAccounts": { + "description": "If source service accounts are specified, the firewall will apply only to traffic originating from an instance with a service account in this list. Source service accounts cannot be used to control traffic to an instance's external IP address because service accounts are associated with an instance, not an IP address. sourceRanges can be set at the same time as sourceServiceAccounts. If both are set, the firewall will apply to traffic that has source IP address within sourceRanges OR the source IP belongs to an instance with service account listed in sourceServiceAccount. The connection does not need to match both properties for the firewall to apply. sourceServiceAccounts cannot be used at the same time as sourceTags or targetTags.", + "items": { + "type": "string" + }, + "type": "array" + }, + "sourceTags": { + "description": "If source tags are specified, the firewall rule applies only to traffic with source IPs that match the primary network interfaces of VM instances that have the tag and are in the same VPC network. Source tags cannot be used to control traffic to an instance's external IP address, it only applies to traffic between instances in the same virtual network. Because tags are associated with instances, not IP addresses. One or both of sourceRanges and sourceTags may be set. If both properties are set, the firewall will apply to traffic that has source IP address within sourceRanges OR the source IP that belongs to a tag listed in the sourceTags property. The connection does not need to match both properties for the firewall to apply.", + "items": { + "type": "string" + }, + "type": "array" + }, + "targetServiceAccounts": { + "description": "A list of service accounts indicating sets of instances located in the network that may make network connections as specified in allowed[]. targetServiceAccounts cannot be used at the same time as targetTags or sourceTags. If neither targetServiceAccounts nor targetTags are specified, the firewall rule applies to all instances on the specified network.", + "items": { + "type": "string" + }, + "type": "array" + }, + "targetTags": { + "description": "A list of tags that controls which instances the firewall rule applies to. If targetTags are specified, then the firewall rule applies only to instances in the VPC network that have one of those tags. If no targetTags are specified, the firewall rule applies to all instances on the specified network.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "FirewallList": { + "description": "Contains a list of firewalls.", + "id": "FirewallList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of Firewall resources.", + "items": { + "$ref": "Firewall" + }, + "type": "array" + }, + "kind": { + "default": "compute#firewallList", + "description": "[Output Only] Type of resource. Always compute#firewallList for lists of firewalls.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "FixedOrPercent": { + "description": "Encapsulates numeric value that can be either absolute or relative.", + "id": "FixedOrPercent", + "properties": { + "calculated": { + "description": "[Output Only] Absolute value of VM instances calculated based on the specific mode.\n\n \n- If the value is fixed, then the caculated value is equal to the fixed value. \n- If the value is a percent, then the calculated value is percent/100 * targetSize. For example, the calculated value of a 80% of a managed instance group with 150 instances would be (80/100 * 150) = 120 VM instances. If there is a remainder, the number is rounded up.", + "format": "int32", + "type": "integer" + }, + "fixed": { + "description": "Specifies a fixed number of VM instances. This must be a positive integer.", + "format": "int32", + "type": "integer" + }, + "percent": { + "description": "Specifies a percentage of instances between 0 to 100%, inclusive. For example, specify 80 for 80%.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "ForwardingRule": { + "description": "A ForwardingRule resource. A ForwardingRule resource specifies which pool of target virtual machines to forward a packet to if it matches the given [IPAddress, IPProtocol, ports] tuple. (== resource_for beta.forwardingRules ==) (== resource_for v1.forwardingRules ==) (== resource_for beta.globalForwardingRules ==) (== resource_for v1.globalForwardingRules ==) (== resource_for beta.regionForwardingRules ==) (== resource_for v1.regionForwardingRules ==)", + "id": "ForwardingRule", + "properties": { + "IPAddress": { + "description": "The IP address that this forwarding rule is serving on behalf of.\n\nAddresses are restricted based on the forwarding rule's load balancing scheme (EXTERNAL or INTERNAL) and scope (global or regional).\n\nWhen the load balancing scheme is EXTERNAL, for global forwarding rules, the address must be a global IP, and for regional forwarding rules, the address must live in the same region as the forwarding rule. If this field is empty, an ephemeral IPv4 address from the same scope (global or regional) will be assigned. A regional forwarding rule supports IPv4 only. A global forwarding rule supports either IPv4 or IPv6.\n\nWhen the load balancing scheme is INTERNAL, this can only be an RFC 1918 IP address belonging to the network/subnet configured for the forwarding rule. By default, if this field is empty, an ephemeral internal IP address will be automatically allocated from the IP range of the subnet or network configured for this forwarding rule.\n\nAn address can be specified either by a literal IP address or a URL reference to an existing Address resource. The following examples are all valid: \n- 100.1.2.3 \n- https://www.googleapis.com/compute/v1/projects/project/regions/region/addresses/address \n- projects/project/regions/region/addresses/address \n- regions/region/addresses/address \n- global/addresses/address \n- address", + "type": "string" + }, + "IPProtocol": { + "description": "The IP protocol to which this rule applies. Valid options are TCP, UDP, ESP, AH, SCTP or ICMP.\n\nWhen the load balancing scheme is INTERNAL, only TCP and UDP are valid.", + "enum": [ + "AH", + "ESP", + "ICMP", + "SCTP", + "TCP", + "UDP" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "backendService": { + "description": "This field is not used for external load balancing.\n\nFor internal load balancing, this field identifies the BackendService resource to receive the matched traffic.", + "type": "string" + }, + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "description": { + "description": "An optional description of this resource. Provide this property when you create the resource.", + "type": "string" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64", + "type": "string" + }, + "ipVersion": { + "description": "The IP Version that will be used by this forwarding rule. Valid options are IPV4 or IPV6. This can only be specified for a global forwarding rule.", + "enum": [ + "IPV4", + "IPV6", + "UNSPECIFIED_VERSION" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, + "kind": { + "default": "compute#forwardingRule", + "description": "[Output Only] Type of the resource. Always compute#forwardingRule for Forwarding Rule resources.", + "type": "string" + }, + "labelFingerprint": { + "description": "A fingerprint for the labels being applied to this resource, which is essentially a hash of the labels set used for optimistic locking. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update labels. You must always provide an up-to-date fingerprint hash in order to update or change labels.\n\nTo see the latest fingerprint, make a get() request to retrieve a ForwardingRule.", + "format": "byte", + "type": "string" + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Labels to apply to this resource. These can be later modified by the setLabels method. Each label key/value pair must comply with RFC1035. Label values may be empty.", + "type": "object" + }, + "loadBalancingScheme": { + "description": "This signifies what the ForwardingRule will be used for and can only take the following values: INTERNAL, EXTERNAL The value of INTERNAL means that this will be used for Internal Network Load Balancing (TCP, UDP). The value of EXTERNAL means that this will be used for External Load Balancing (HTTP(S) LB, External TCP/UDP LB, SSL Proxy)", + "enum": [ + "EXTERNAL", + "INTERNAL", + "INVALID" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, + "name": { + "description": "Name of the resource; provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "network": { + "description": "This field is not used for external load balancing.\n\nFor internal load balancing, this field identifies the network that the load balanced IP should belong to for this Forwarding Rule. If this field is not specified, the default network will be used.", + "type": "string" + }, + "networkTier": { + "description": "This signifies the networking tier used for configuring this load balancer and can only take the following values: PREMIUM , STANDARD.\n\nFor regional ForwardingRule, the valid values are PREMIUM and STANDARD. For GlobalForwardingRule, the valid value is PREMIUM.\n\nIf this field is not specified, it is assumed to be PREMIUM. If IPAddress is specified, this value must be equal to the networkTier of the Address.", + "enum": [ + "PREMIUM", + "STANDARD" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "portRange": { + "description": "This field is used along with the target field for TargetHttpProxy, TargetHttpsProxy, TargetSslProxy, TargetTcpProxy, TargetVpnGateway, TargetPool, TargetInstance.\n\nApplicable only when IPProtocol is TCP, UDP, or SCTP, only packets addressed to ports in the specified range will be forwarded to target. Forwarding rules with the same [IPAddress, IPProtocol] pair must have disjoint port ranges.\n\nSome types of forwarding target have constraints on the acceptable ports: \n- TargetHttpProxy: 80, 8080 \n- TargetHttpsProxy: 443 \n- TargetTcpProxy: 25, 43, 110, 143, 195, 443, 465, 587, 700, 993, 995, 1688, 1883, 5222 \n- TargetSslProxy: 25, 43, 110, 143, 195, 443, 465, 587, 700, 993, 995, 1688, 1883, 5222 \n- TargetVpnGateway: 500, 4500", + "type": "string" + }, + "ports": { + "description": "This field is used along with the backend_service field for internal load balancing.\n\nWhen the load balancing scheme is INTERNAL, a single port or a comma separated list of ports can be configured. Only packets addressed to these ports will be forwarded to the backends configured with this forwarding rule.\n\nYou may specify a maximum of up to 5 ports.", + "items": { + "type": "string" + }, + "type": "array" + }, + "region": { + "description": "[Output Only] URL of the region where the regional forwarding rule resides. This field is not applicable to global forwarding rules. You must specify this field as part of the HTTP request URL. It is not settable as a field in the request body.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + }, + "serviceLabel": { + "description": "An optional prefix to the service name for this Forwarding Rule. If specified, will be the first label of the fully qualified service name.\n\nThe label must be 1-63 characters long, and comply with RFC1035. Specifically, the label must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.\n\nThis field is only used for internal load balancing.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "serviceName": { + "description": "[Output Only] The internal fully qualified service name for this Forwarding Rule.\n\nThis field is only used for internal load balancing.", + "type": "string" + }, + "subnetwork": { + "description": "This field is not used for external load balancing.\n\nFor internal load balancing, this field identifies the subnetwork that the load balanced IP should belong to for this Forwarding Rule.\n\nIf the network specified is in auto subnet mode, this field is optional. However, if the network is in custom subnet mode, a subnetwork must be specified.", + "type": "string" + }, + "target": { + "description": "The URL of the target resource to receive the matched traffic. For regional forwarding rules, this target must live in the same region as the forwarding rule. For global forwarding rules, this target must be a global load balancing resource. The forwarded traffic must be of a type appropriate to the target object.", + "type": "string" + } + }, + "type": "object" + }, + "ForwardingRuleAggregatedList": { + "id": "ForwardingRuleAggregatedList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "additionalProperties": { + "$ref": "ForwardingRulesScopedList", + "description": "Name of the scope containing this set of addresses." + }, + "description": "A list of ForwardingRulesScopedList resources.", + "type": "object" + }, + "kind": { + "default": "compute#forwardingRuleAggregatedList", + "description": "[Output Only] Type of resource. Always compute#forwardingRuleAggregatedList for lists of forwarding rules.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "ForwardingRuleList": { + "description": "Contains a list of ForwardingRule resources.", + "id": "ForwardingRuleList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of ForwardingRule resources.", + "items": { + "$ref": "ForwardingRule" + }, + "type": "array" + }, + "kind": { + "default": "compute#forwardingRuleList", + "description": "Type of resource.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "ForwardingRulesScopedList": { + "id": "ForwardingRulesScopedList", + "properties": { + "forwardingRules": { + "description": "List of forwarding rules contained in this scope.", + "items": { + "$ref": "ForwardingRule" + }, + "type": "array" + }, + "warning": { + "description": "Informational warning which replaces the list of forwarding rules when the list is empty.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "GlobalSetLabelsRequest": { + "id": "GlobalSetLabelsRequest", + "properties": { + "labelFingerprint": { + "description": "The fingerprint of the previous set of labels for this resource, used to detect conflicts. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update labels. You must always provide an up-to-date fingerprint hash when updating or changing labels. Make a get() request to the resource to get the latest fingerprint.", + "format": "byte", + "type": "string" + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "A list of labels to apply for this resource. Each label key \u0026 value must comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash. For example, \"webserver-frontend\": \"images\". A label value can also be empty (e.g. \"my-label\": \"\").", + "type": "object" + } + }, + "type": "object" + }, + "GuestOsFeature": { + "description": "Guest OS features.", + "id": "GuestOsFeature", + "properties": { + "type": { + "description": "The ID of a supported feature. Read Enabling guest operating system features to see a list of available options.", + "enum": [ + "FEATURE_TYPE_UNSPECIFIED", + "MULTI_IP_SUBNET", + "SECURE_BOOT", + "UEFI_COMPATIBLE", + "VIRTIO_SCSI_MULTIQUEUE", + "WINDOWS" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "HTTPHealthCheck": { + "id": "HTTPHealthCheck", + "properties": { + "host": { + "description": "The value of the host header in the HTTP health check request. If left empty (default value), the IP on behalf of which this health check is performed will be used.", + "type": "string" + }, + "port": { + "description": "The TCP port number for the health check request. The default value is 80. Valid values are 1 through 65535.", + "format": "int32", + "type": "integer" + }, + "portName": { + "description": "Port name as defined in InstanceGroup#NamedPort#name. If both port and port_name are defined, port takes precedence.", + "type": "string" + }, + "proxyHeader": { + "description": "Specifies the type of proxy header to append before sending data to the backend, either NONE or PROXY_V1. The default is NONE.", + "enum": [ + "NONE", + "PROXY_V1" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "requestPath": { + "description": "The request path of the HTTP health check request. The default value is /.", + "type": "string" + }, + "response": { + "description": "The string to match anywhere in the first 1024 bytes of the response body. If left empty (the default value), the status code determines health. The response data can only be ASCII.", + "type": "string" + } + }, + "type": "object" + }, + "HTTPSHealthCheck": { + "id": "HTTPSHealthCheck", + "properties": { + "host": { + "description": "The value of the host header in the HTTPS health check request. If left empty (default value), the IP on behalf of which this health check is performed will be used.", + "type": "string" + }, + "port": { + "description": "The TCP port number for the health check request. The default value is 443. Valid values are 1 through 65535.", + "format": "int32", + "type": "integer" + }, + "portName": { + "description": "Port name as defined in InstanceGroup#NamedPort#name. If both port and port_name are defined, port takes precedence.", + "type": "string" + }, + "proxyHeader": { + "description": "Specifies the type of proxy header to append before sending data to the backend, either NONE or PROXY_V1. The default is NONE.", + "enum": [ + "NONE", + "PROXY_V1" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "requestPath": { + "description": "The request path of the HTTPS health check request. The default value is /.", + "type": "string" + }, + "response": { + "description": "The string to match anywhere in the first 1024 bytes of the response body. If left empty (the default value), the status code determines health. The response data can only be ASCII.", + "type": "string" + } + }, + "type": "object" + }, + "HealthCheck": { + "description": "An HealthCheck resource. This resource defines a template for how individual virtual machines should be checked for health, via one of the supported protocols.", + "id": "HealthCheck", + "properties": { + "checkIntervalSec": { + "description": "How often (in seconds) to send a health check. The default value is 5 seconds.", + "format": "int32", + "type": "integer" + }, + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in 3339 text format.", + "type": "string" + }, + "description": { + "description": "An optional description of this resource. Provide this property when you create the resource.", + "type": "string" + }, + "healthyThreshold": { + "description": "A so-far unhealthy instance will be marked healthy after this many consecutive successes. The default value is 2.", + "format": "int32", + "type": "integer" + }, + "httpHealthCheck": { + "$ref": "HTTPHealthCheck" + }, + "httpsHealthCheck": { + "$ref": "HTTPSHealthCheck" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64", + "type": "string" + }, + "kind": { + "default": "compute#healthCheck", + "description": "Type of the resource.", + "type": "string" + }, + "name": { + "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + }, + "sslHealthCheck": { + "$ref": "SSLHealthCheck" + }, + "tcpHealthCheck": { + "$ref": "TCPHealthCheck" + }, + "timeoutSec": { + "description": "How long (in seconds) to wait before claiming failure. The default value is 5 seconds. It is invalid for timeoutSec to have greater value than checkIntervalSec.", + "format": "int32", + "type": "integer" + }, + "type": { + "description": "Specifies the type of the healthCheck, either TCP, SSL, HTTP or HTTPS. If not specified, the default is TCP. Exactly one of the protocol-specific health check field must be specified, which must match type field.", + "enum": [ + "HTTP", + "HTTPS", + "INVALID", + "SSL", + "TCP", + "UDP" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "udpHealthCheck": { + "$ref": "UDPHealthCheck" + }, + "unhealthyThreshold": { + "description": "A so-far healthy instance will be marked unhealthy after this many consecutive failures. The default value is 2.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "HealthCheckList": { + "description": "Contains a list of HealthCheck resources.", + "id": "HealthCheckList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of HealthCheck resources.", + "items": { + "$ref": "HealthCheck" + }, + "type": "array" + }, + "kind": { + "default": "compute#healthCheckList", + "description": "Type of resource.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "HealthCheckReference": { + "description": "A full or valid partial URL to a health check. For example, the following are valid URLs: \n- https://www.googleapis.com/compute/beta/projects/project-id/global/httpHealthChecks/health-check \n- projects/project-id/global/httpHealthChecks/health-check \n- global/httpHealthChecks/health-check", + "id": "HealthCheckReference", + "properties": { + "healthCheck": { + "type": "string" + } + }, + "type": "object" + }, + "HealthStatus": { + "id": "HealthStatus", + "properties": { + "healthState": { + "description": "Health state of the instance.", + "enum": [ + "HEALTHY", + "UNHEALTHY" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "instance": { + "description": "URL of the instance resource.", + "type": "string" + }, + "ipAddress": { + "description": "The IP address represented by this resource.", + "type": "string" + }, + "port": { + "description": "The port on the instance.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "HostRule": { + "description": "UrlMaps A host-matching rule for a URL. If matched, will use the named PathMatcher to select the BackendService.", + "id": "HostRule", + "properties": { + "description": { + "description": "An optional description of this resource. Provide this property when you create the resource.", + "type": "string" + }, + "hosts": { + "description": "The list of host patterns to match. They must be valid hostnames, except * will match any string of ([a-z0-9-.]*). In that case, * must be the first character and must be followed in the pattern by either - or ..", + "items": { + "type": "string" + }, + "type": "array" + }, + "pathMatcher": { + "description": "The name of the PathMatcher to use to match the path portion of the URL if the hostRule matches the URL's host portion.", + "type": "string" + } + }, + "type": "object" + }, + "HttpHealthCheck": { + "description": "An HttpHealthCheck resource. This resource defines a template for how individual instances should be checked for health, via HTTP.", + "id": "HttpHealthCheck", + "properties": { + "checkIntervalSec": { + "description": "How often (in seconds) to send a health check. The default value is 5 seconds.", + "format": "int32", + "type": "integer" + }, + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "description": { + "description": "An optional description of this resource. Provide this property when you create the resource.", + "type": "string" + }, + "healthyThreshold": { + "description": "A so-far unhealthy instance will be marked healthy after this many consecutive successes. The default value is 2.", + "format": "int32", + "type": "integer" + }, + "host": { + "description": "The value of the host header in the HTTP health check request. If left empty (default value), the public IP on behalf of which this health check is performed will be used.", + "type": "string" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64", + "type": "string" + }, + "kind": { + "default": "compute#httpHealthCheck", + "description": "[Output Only] Type of the resource. Always compute#httpHealthCheck for HTTP health checks.", + "type": "string" + }, + "name": { + "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "port": { + "description": "The TCP port number for the HTTP health check request. The default value is 80.", + "format": "int32", + "type": "integer" + }, + "requestPath": { + "description": "The request path of the HTTP health check request. The default value is /.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + }, + "timeoutSec": { + "description": "How long (in seconds) to wait before claiming failure. The default value is 5 seconds. It is invalid for timeoutSec to have greater value than checkIntervalSec.", + "format": "int32", + "type": "integer" + }, + "unhealthyThreshold": { + "description": "A so-far healthy instance will be marked unhealthy after this many consecutive failures. The default value is 2.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "HttpHealthCheckList": { + "description": "Contains a list of HttpHealthCheck resources.", + "id": "HttpHealthCheckList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of HttpHealthCheck resources.", + "items": { + "$ref": "HttpHealthCheck" + }, + "type": "array" + }, + "kind": { + "default": "compute#httpHealthCheckList", + "description": "Type of resource.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "HttpsHealthCheck": { + "description": "An HttpsHealthCheck resource. This resource defines a template for how individual instances should be checked for health, via HTTPS.", + "id": "HttpsHealthCheck", + "properties": { + "checkIntervalSec": { + "description": "How often (in seconds) to send a health check. The default value is 5 seconds.", + "format": "int32", + "type": "integer" + }, + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "description": { + "description": "An optional description of this resource. Provide this property when you create the resource.", + "type": "string" + }, + "healthyThreshold": { + "description": "A so-far unhealthy instance will be marked healthy after this many consecutive successes. The default value is 2.", + "format": "int32", + "type": "integer" + }, + "host": { + "description": "The value of the host header in the HTTPS health check request. If left empty (default value), the public IP on behalf of which this health check is performed will be used.", + "type": "string" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64", + "type": "string" + }, + "kind": { + "default": "compute#httpsHealthCheck", + "description": "Type of the resource.", + "type": "string" + }, + "name": { + "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "port": { + "description": "The TCP port number for the HTTPS health check request. The default value is 443.", + "format": "int32", + "type": "integer" + }, + "requestPath": { + "description": "The request path of the HTTPS health check request. The default value is \"/\".", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + }, + "timeoutSec": { + "description": "How long (in seconds) to wait before claiming failure. The default value is 5 seconds. It is invalid for timeoutSec to have a greater value than checkIntervalSec.", + "format": "int32", + "type": "integer" + }, + "unhealthyThreshold": { + "description": "A so-far healthy instance will be marked unhealthy after this many consecutive failures. The default value is 2.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "HttpsHealthCheckList": { + "description": "Contains a list of HttpsHealthCheck resources.", + "id": "HttpsHealthCheckList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of HttpsHealthCheck resources.", + "items": { + "$ref": "HttpsHealthCheck" + }, + "type": "array" + }, + "kind": { + "default": "compute#httpsHealthCheckList", + "description": "Type of resource.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "Image": { + "description": "An Image resource. (== resource_for beta.images ==) (== resource_for v1.images ==)", + "id": "Image", + "properties": { + "archiveSizeBytes": { + "description": "Size of the image tar.gz archive stored in Google Cloud Storage (in bytes).", + "format": "int64", + "type": "string" + }, + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "deprecated": { + "$ref": "DeprecationStatus", + "description": "The deprecation status associated with this image." + }, + "description": { + "description": "An optional description of this resource. Provide this property when you create the resource.", + "type": "string" + }, + "diskSizeGb": { + "description": "Size of the image when restored onto a persistent disk (in GB).", + "format": "int64", + "type": "string" + }, + "family": { + "description": "The name of the image family to which this image belongs. You can create disks by specifying an image family instead of a specific image name. The image family always returns its latest image that is not deprecated. The name of the image family must comply with RFC1035.", + "type": "string" + }, + "guestOsFeatures": { + "description": "A list of features to enable on the guest operating system. Applicable only for bootable images. Read Enabling guest operating system features to see a list of available options.", + "items": { + "$ref": "GuestOsFeature" + }, + "type": "array" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64", + "type": "string" + }, + "imageEncryptionKey": { + "$ref": "CustomerEncryptionKey", + "description": "Encrypts the image using a customer-supplied encryption key.\n\nAfter you encrypt an image with a customer-supplied key, you must provide the same key if you use the image later (e.g. to create a disk from the image).\n\nCustomer-supplied encryption keys do not protect access to metadata of the disk.\n\nIf you do not provide an encryption key when creating the image, then the disk will be encrypted using an automatically generated key and you do not need to provide a key to use the image later." + }, + "kind": { + "default": "compute#image", + "description": "[Output Only] Type of the resource. Always compute#image for images.", + "type": "string" + }, + "labelFingerprint": { + "description": "A fingerprint for the labels being applied to this image, which is essentially a hash of the labels used for optimistic locking. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update labels. You must always provide an up-to-date fingerprint hash in order to update or change labels.\n\nTo see the latest fingerprint, make a get() request to retrieve an image.", + "format": "byte", + "type": "string" + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Labels to apply to this image. These can be later modified by the setLabels method.", + "type": "object" + }, + "licenseCodes": { + "description": "Integer license codes indicating which licenses are attached to this image.", + "items": { + "format": "int64", + "type": "string" + }, + "type": "array" + }, + "licenses": { + "description": "Any applicable license URI.", + "items": { + "type": "string" + }, + "type": "array" + }, + "name": { + "annotations": { + "required": [ + "compute.images.insert" + ] + }, + "description": "Name of the resource; provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "rawDisk": { + "description": "The parameters of the raw disk image.", + "properties": { + "containerType": { + "description": "The format used to encode and transmit the block device, which should be TAR. This is just a container and transmission format and not a runtime format. Provided by the client when the disk image is created.", + "enum": [ + "TAR" + ], + "enumDescriptions": [ + "" + ], + "type": "string" + }, + "sha1Checksum": { + "description": "An optional SHA1 checksum of the disk image before unpackaging; provided by the client when the disk image is created.", + "pattern": "[a-f0-9]{40}", + "type": "string" + }, + "source": { + "annotations": { + "required": [ + "compute.images.insert" + ] + }, + "description": "The full Google Cloud Storage URL where the disk image is stored. You must provide either this property or the sourceDisk property but not both.", + "type": "string" + } + }, + "type": "object" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + }, + "sourceDisk": { + "description": "URL of the source disk used to create this image. This can be a full or valid partial URL. You must provide either this property or the rawDisk.source property but not both to create an image. For example, the following are valid values: \n- https://www.googleapis.com/compute/v1/projects/project/zones/zone/disks/disk \n- projects/project/zones/zone/disks/disk \n- zones/zone/disks/disk", + "type": "string" + }, + "sourceDiskEncryptionKey": { + "$ref": "CustomerEncryptionKey", + "description": "The customer-supplied encryption key of the source disk. Required if the source disk is protected by a customer-supplied encryption key." + }, + "sourceDiskId": { + "description": "The ID value of the disk used to create this image. This value may be used to determine whether the image was taken from the current or a previous instance of a given disk name.", + "type": "string" + }, + "sourceImage": { + "description": "URL of the source image used to create this image. This can be a full or valid partial URL. You must provide exactly one of: \n- this property, or \n- the rawDisk.source property, or \n- the sourceDisk property in order to create an image.", + "type": "string" + }, + "sourceImageEncryptionKey": { + "$ref": "CustomerEncryptionKey", + "description": "The customer-supplied encryption key of the source image. Required if the source image is protected by a customer-supplied encryption key." + }, + "sourceImageId": { + "description": "[Output Only] The ID value of the image used to create this image. This value may be used to determine whether the image was taken from the current or a previous instance of a given image name.", + "type": "string" + }, + "sourceSnapshot": { + "description": "URL of the source snapshot used to create this image. This can be a full or valid partial URL. You must provide exactly one of: \n- this property, or \n- the sourceImage property, or \n- the rawDisk.source property, or \n- the sourceDisk property in order to create an image.", + "type": "string" + }, + "sourceSnapshotEncryptionKey": { + "$ref": "CustomerEncryptionKey", + "description": "The customer-supplied encryption key of the source snapshot. Required if the source snapshot is protected by a customer-supplied encryption key." + }, + "sourceSnapshotId": { + "description": "[Output Only] The ID value of the snapshot used to create this image. This value may be used to determine whether the snapshot was taken from the current or a previous instance of a given snapshot name.", + "type": "string" + }, + "sourceType": { + "default": "RAW", + "description": "The type of the image used to create this disk. The default and only value is RAW", + "enum": [ + "RAW" + ], + "enumDescriptions": [ + "" + ], + "type": "string" + }, + "status": { + "description": "[Output Only] The status of the image. An image can be used to create other resources, such as instances, only after the image has been successfully created and the status is set to READY. Possible values are FAILED, PENDING, or READY.", + "enum": [ + "FAILED", + "PENDING", + "READY" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "ImageList": { + "description": "Contains a list of images.", + "id": "ImageList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of Image resources.", + "items": { + "$ref": "Image" + }, + "type": "array" + }, + "kind": { + "default": "compute#imageList", + "description": "Type of resource.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "Instance": { + "description": "An Instance resource. (== resource_for beta.instances ==) (== resource_for v1.instances ==)", + "id": "Instance", + "properties": { + "canIpForward": { + "description": "Allows this instance to send and receive packets with non-matching destination or source IPs. This is required if you plan to use this instance to forward routes. For more information, see Enabling IP Forwarding.", + "type": "boolean" + }, + "cpuPlatform": { + "description": "[Output Only] The CPU platform used by this instance.", + "type": "string" + }, + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "deletionProtection": { + "description": "Whether the resource should be protected against deletion.", + "type": "boolean" + }, + "description": { + "description": "An optional description of this resource. Provide this property when you create the resource.", + "type": "string" + }, + "disks": { + "description": "Array of disks associated with this instance. Persistent disks must be created before you can assign them.", + "items": { + "$ref": "AttachedDisk" + }, + "type": "array" + }, + "guestAccelerators": { + "description": "List of the type and count of accelerator cards attached to the instance.", + "items": { + "$ref": "AcceleratorConfig" + }, + "type": "array" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64", + "type": "string" + }, + "kind": { + "default": "compute#instance", + "description": "[Output Only] Type of the resource. Always compute#instance for instances.", + "type": "string" + }, + "labelFingerprint": { + "description": "A fingerprint for this request, which is essentially a hash of the metadata's contents and used for optimistic locking. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update metadata. You must always provide an up-to-date fingerprint hash in order to update or change metadata.\n\nTo see the latest fingerprint, make get() request to the instance.", + "format": "byte", + "type": "string" + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Labels to apply to this instance. These can be later modified by the setLabels method.", + "type": "object" + }, + "machineType": { + "annotations": { + "required": [ + "compute.instances.insert" + ] + }, + "description": "Full or partial URL of the machine type resource to use for this instance, in the format: zones/zone/machineTypes/machine-type. This is provided by the client when the instance is created. For example, the following is a valid partial url to a predefined machine type:\nzones/us-central1-f/machineTypes/n1-standard-1\n\n\nTo create a custom machine type, provide a URL to a machine type in the following format, where CPUS is 1 or an even number up to 32 (2, 4, 6, ... 24, etc), and MEMORY is the total memory for this instance. Memory must be a multiple of 256 MB and must be supplied in MB (e.g. 5 GB of memory is 5120 MB):\nzones/zone/machineTypes/custom-CPUS-MEMORY\n\n\nFor example: zones/us-central1-f/machineTypes/custom-4-5120 \n\nFor a full list of restrictions, read the Specifications for custom machine types.", + "type": "string" + }, + "metadata": { + "$ref": "Metadata", + "description": "The metadata key/value pairs assigned to this instance. This includes custom metadata and predefined keys." + }, + "minCpuPlatform": { + "description": "Specifies a minimum CPU platform for the VM instance. Applicable values are the friendly names of CPU platforms, such as minCpuPlatform: \"Intel Haswell\" or minCpuPlatform: \"Intel Sandy Bridge\".", + "type": "string" + }, + "name": { + "annotations": { + "required": [ + "compute.instances.insert" + ] + }, + "description": "The name of the resource, provided by the client when initially creating the resource. The resource name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "networkInterfaces": { + "description": "An array of network configurations for this instance. These specify how interfaces are configured to interact with other network services, such as connecting to the internet. Multiple interfaces are supported per instance.", + "items": { + "$ref": "NetworkInterface" + }, + "type": "array" + }, + "scheduling": { + "$ref": "Scheduling", + "description": "Sets the scheduling options for this instance." + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "serviceAccounts": { + "description": "A list of service accounts, with their specified scopes, authorized for this instance. Only one service account per VM instance is supported.\n\nService accounts generate access tokens that can be accessed through the metadata server and used to authenticate applications on the instance. See Service Accounts for more information.", + "items": { + "$ref": "ServiceAccount" + }, + "type": "array" + }, + "startRestricted": { + "description": "[Output Only] Whether a VM has been restricted for start because Compute Engine has detected suspicious activity.", + "type": "boolean" + }, + "status": { + "description": "[Output Only] The status of the instance. One of the following values: PROVISIONING, STAGING, RUNNING, STOPPING, STOPPED, SUSPENDING, SUSPENDED, and TERMINATED.", + "enum": [ + "PROVISIONING", + "RUNNING", + "STAGING", + "STOPPED", + "STOPPING", + "SUSPENDED", + "SUSPENDING", + "TERMINATED" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "statusMessage": { + "description": "[Output Only] An optional, human-readable explanation of the status.", + "type": "string" + }, + "tags": { + "$ref": "Tags", + "description": "A list of tags to apply to this instance. Tags are used to identify valid sources or targets for network firewalls and are specified by the client during instance creation. The tags can be later modified by the setTags method. Each tag within the list must comply with RFC1035." + }, + "zone": { + "description": "[Output Only] URL of the zone where the instance resides. You must specify this field as part of the HTTP request URL. It is not settable as a field in the request body.", + "type": "string" + } + }, + "type": "object" + }, + "InstanceAggregatedList": { + "id": "InstanceAggregatedList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "additionalProperties": { + "$ref": "InstancesScopedList", + "description": "[Output Only] Name of the scope containing this set of instances." + }, + "description": "A list of InstancesScopedList resources.", + "type": "object" + }, + "kind": { + "default": "compute#instanceAggregatedList", + "description": "[Output Only] Type of resource. Always compute#instanceAggregatedList for aggregated lists of Instance resources.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "InstanceGroup": { + "description": "InstanceGroups (== resource_for beta.instanceGroups ==) (== resource_for v1.instanceGroups ==) (== resource_for beta.regionInstanceGroups ==) (== resource_for v1.regionInstanceGroups ==)", + "id": "InstanceGroup", + "properties": { + "creationTimestamp": { + "description": "[Output Only] The creation timestamp for this instance group in RFC3339 text format.", + "type": "string" + }, + "description": { + "description": "An optional description of this resource. Provide this property when you create the resource.", + "type": "string" + }, + "fingerprint": { + "description": "[Output Only] The fingerprint of the named ports. The system uses this fingerprint to detect conflicts when multiple users change the named ports concurrently.", + "format": "byte", + "type": "string" + }, + "id": { + "description": "[Output Only] A unique identifier for this instance group, generated by the server.", + "format": "uint64", + "type": "string" + }, + "kind": { + "default": "compute#instanceGroup", + "description": "[Output Only] The resource type, which is always compute#instanceGroup for instance groups.", + "type": "string" + }, + "name": { + "annotations": { + "required": [ + "compute.instanceGroupManagers.insert" + ] + }, + "description": "The name of the instance group. The name must be 1-63 characters long, and comply with RFC1035.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "namedPorts": { + "description": "Assigns a name to a port number. For example: {name: \"http\", port: 80}\n\nThis allows the system to reference ports by the assigned name instead of a port number. Named ports can also contain multiple ports. For example: [{name: \"http\", port: 80},{name: \"http\", port: 8080}] \n\nNamed ports apply to all instances in this instance group.", + "items": { + "$ref": "NamedPort" + }, + "type": "array" + }, + "network": { + "description": "The URL of the network to which all instances in the instance group belong.", + "type": "string" + }, + "region": { + "description": "The URL of the region where the instance group is located (for regional resources).", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] The URL for this instance group. The server generates this URL.", + "type": "string" + }, + "size": { + "description": "[Output Only] The total number of instances in the instance group.", + "format": "int32", + "type": "integer" + }, + "subnetwork": { + "description": "The URL of the subnetwork to which all instances in the instance group belong.", + "type": "string" + }, + "zone": { + "description": "[Output Only] The URL of the zone where the instance group is located (for zonal resources).", + "type": "string" + } + }, + "type": "object" + }, + "InstanceGroupAggregatedList": { + "id": "InstanceGroupAggregatedList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "additionalProperties": { + "$ref": "InstanceGroupsScopedList", + "description": "The name of the scope that contains this set of instance groups." + }, + "description": "A list of InstanceGroupsScopedList resources.", + "type": "object" + }, + "kind": { + "default": "compute#instanceGroupAggregatedList", + "description": "[Output Only] The resource type, which is always compute#instanceGroupAggregatedList for aggregated lists of instance groups.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "InstanceGroupList": { + "description": "A list of InstanceGroup resources.", + "id": "InstanceGroupList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of InstanceGroup resources.", + "items": { + "$ref": "InstanceGroup" + }, + "type": "array" + }, + "kind": { + "default": "compute#instanceGroupList", + "description": "[Output Only] The resource type, which is always compute#instanceGroupList for instance group lists.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "InstanceGroupManager": { + "description": "An Instance Group Manager resource. (== resource_for beta.instanceGroupManagers ==) (== resource_for v1.instanceGroupManagers ==) (== resource_for beta.regionInstanceGroupManagers ==) (== resource_for v1.regionInstanceGroupManagers ==)", + "id": "InstanceGroupManager", + "properties": { + "autoHealingPolicies": { + "description": "The autohealing policy for this managed instance group. You can specify only one value.", + "items": { + "$ref": "InstanceGroupManagerAutoHealingPolicy" + }, + "type": "array" + }, + "baseInstanceName": { + "annotations": { + "required": [ + "compute.instanceGroupManagers.insert" + ] + }, + "description": "The base instance name to use for instances in this group. The value must be 1-58 characters long. Instances are named by appending a hyphen and a random four-character string to the base instance name. The base instance name must comply with RFC1035.", + "pattern": "[a-z][-a-z0-9]{0,57}", + "type": "string" + }, + "creationTimestamp": { + "description": "[Output Only] The creation timestamp for this managed instance group in RFC3339 text format.", + "type": "string" + }, + "currentActions": { + "$ref": "InstanceGroupManagerActionsSummary", + "description": "[Output Only] The list of instance actions and the number of instances in this managed instance group that are scheduled for each of those actions." + }, + "description": { + "description": "An optional description of this resource. Provide this property when you create the resource.", + "type": "string" + }, + "distributionPolicy": { + "$ref": "DistributionPolicy", + "description": "Policy valid only for regional managed instance groups." + }, + "failoverAction": { + "description": "The action to perform in case of zone failure. Only one value is supported, NO_FAILOVER. The default is NO_FAILOVER.", + "enum": [ + "NO_FAILOVER", + "UNKNOWN" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "fingerprint": { + "description": "[Output Only] The fingerprint of the resource data. You can use this optional field for optimistic locking when you update the resource.", + "format": "byte", + "type": "string" + }, + "id": { + "description": "[Output Only] A unique identifier for this resource type. The server generates this identifier.", + "format": "uint64", + "type": "string" + }, + "instanceGroup": { + "description": "[Output Only] The URL of the Instance Group resource.", + "type": "string" + }, + "instanceTemplate": { + "description": "The URL of the instance template that is specified for this managed instance group. The group uses this template to create all new instances in the managed instance group.", + "type": "string" + }, + "kind": { + "default": "compute#instanceGroupManager", + "description": "[Output Only] The resource type, which is always compute#instanceGroupManager for managed instance groups.", + "type": "string" + }, + "name": { + "annotations": { + "required": [ + "compute.instanceGroupManagers.insert", + "compute.regionInstanceGroupManagers.insert" + ] + }, + "description": "The name of the managed instance group. The name must be 1-63 characters long, and comply with RFC1035.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "namedPorts": { + "description": "Named ports configured for the Instance Groups complementary to this Instance Group Manager.", + "items": { + "$ref": "NamedPort" + }, + "type": "array" + }, + "pendingActions": { + "$ref": "InstanceGroupManagerPendingActionsSummary", + "description": "[Output Only] The list of instance actions and the number of instances in this managed instance group that are pending for each of those actions." + }, + "region": { + "description": "[Output Only] The URL of the region where the managed instance group resides (for regional resources).", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] The URL for this managed instance group. The server defines this URL.", + "type": "string" + }, + "serviceAccount": { + "description": "[Output Only] The service account to be used as credentials for all operations performed by the managed instance group on instances. The service accounts needs all permissions required to create and delete instances. By default, the service account {projectNumber}@cloudservices.gserviceaccount.com is used.", + "type": "string" + }, + "targetPools": { + "description": "The URLs for all TargetPool resources to which instances in the instanceGroup field are added. The target pools automatically apply to all of the instances in the managed instance group.", + "items": { + "type": "string" + }, + "type": "array" + }, + "targetSize": { + "annotations": { + "required": [ + "compute.instanceGroupManagers.insert", + "compute.regionInstanceGroupManagers.insert" + ] + }, + "description": "The target number of running instances for this managed instance group. Deleting or abandoning instances reduces this number. Resizing the group changes this number.", + "format": "int32", + "type": "integer" + }, + "updatePolicy": { + "$ref": "InstanceGroupManagerUpdatePolicy", + "description": "The update policy for this managed instance group." + }, + "versions": { + "description": "Specifies the instance templates used by this managed instance group to create instances.\n\nEach version is defined by an instanceTemplate. Every template can appear at most once per instance group. This field overrides the top-level instanceTemplate field. Read more about the relationships between these fields. Exactly one version must leave the targetSize field unset. That version will be applied to all remaining instances. For more information, read about canary updates.", + "items": { + "$ref": "InstanceGroupManagerVersion" + }, + "type": "array" + }, + "zone": { + "description": "[Output Only] The URL of the zone where the managed instance group is located (for zonal resources).", + "type": "string" + } + }, + "type": "object" + }, + "InstanceGroupManagerActionsSummary": { + "id": "InstanceGroupManagerActionsSummary", + "properties": { + "abandoning": { + "description": "[Output Only] The total number of instances in the managed instance group that are scheduled to be abandoned. Abandoning an instance removes it from the managed instance group without deleting it.", + "format": "int32", + "type": "integer" + }, + "creating": { + "description": "[Output Only] The number of instances in the managed instance group that are scheduled to be created or are currently being created. If the group fails to create any of these instances, it tries again until it creates the instance successfully.\n\nIf you have disabled creation retries, this field will not be populated; instead, the creatingWithoutRetries field will be populated.", + "format": "int32", + "type": "integer" + }, + "creatingWithoutRetries": { + "description": "[Output Only] The number of instances that the managed instance group will attempt to create. The group attempts to create each instance only once. If the group fails to create any of these instances, it decreases the group's targetSize value accordingly.", + "format": "int32", + "type": "integer" + }, + "deleting": { + "description": "[Output Only] The number of instances in the managed instance group that are scheduled to be deleted or are currently being deleted.", + "format": "int32", + "type": "integer" + }, + "none": { + "description": "[Output Only] The number of instances in the managed instance group that are running and have no scheduled actions.", + "format": "int32", + "type": "integer" + }, + "recreating": { + "description": "[Output Only] The number of instances in the managed instance group that are scheduled to be recreated or are currently being being recreated. Recreating an instance deletes the existing root persistent disk and creates a new disk from the image that is defined in the instance template.", + "format": "int32", + "type": "integer" + }, + "refreshing": { + "description": "[Output Only] The number of instances in the managed instance group that are being reconfigured with properties that do not require a restart or a recreate action. For example, setting or removing target pools for the instance.", + "format": "int32", + "type": "integer" + }, + "restarting": { + "description": "[Output Only] The number of instances in the managed instance group that are scheduled to be restarted or are currently being restarted.", + "format": "int32", + "type": "integer" + }, + "verifying": { + "description": "[Output Only] The number of instances in the managed instance group that are being verified. See the managedInstances[].currentAction property in the listManagedInstances method documentation.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "InstanceGroupManagerAggregatedList": { + "id": "InstanceGroupManagerAggregatedList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "additionalProperties": { + "$ref": "InstanceGroupManagersScopedList", + "description": "[Output Only] The name of the scope that contains this set of managed instance groups." + }, + "description": "A list of InstanceGroupManagersScopedList resources.", + "type": "object" + }, + "kind": { + "default": "compute#instanceGroupManagerAggregatedList", + "description": "[Output Only] The resource type, which is always compute#instanceGroupManagerAggregatedList for an aggregated list of managed instance groups.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "InstanceGroupManagerAutoHealingPolicy": { + "id": "InstanceGroupManagerAutoHealingPolicy", + "properties": { + "healthCheck": { + "description": "The URL for the health check that signals autohealing.", + "type": "string" + }, + "initialDelaySec": { + "description": "The number of seconds that the managed instance group waits before it applies autohealing policies to new instances or recently recreated instances. This initial delay allows instances to initialize and run their startup scripts before the instance group determines that they are UNHEALTHY. This prevents the managed instance group from recreating its instances prematurely. This value must be from range [0, 3600].", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "InstanceGroupManagerList": { + "description": "[Output Only] A list of managed instance groups.", + "id": "InstanceGroupManagerList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of InstanceGroupManager resources.", + "items": { + "$ref": "InstanceGroupManager" + }, + "type": "array" + }, + "kind": { + "default": "compute#instanceGroupManagerList", + "description": "[Output Only] The resource type, which is always compute#instanceGroupManagerList for a list of managed instance groups.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "InstanceGroupManagerPendingActionsSummary": { + "id": "InstanceGroupManagerPendingActionsSummary", + "properties": { + "creating": { + "description": "[Output Only] The number of instances in the managed instance group that are pending to be created.", + "format": "int32", + "type": "integer" + }, + "deleting": { + "description": "[Output Only] The number of instances in the managed instance group that are pending to be deleted.", + "format": "int32", + "type": "integer" + }, + "recreating": { + "description": "[Output Only] The number of instances in the managed instance group that are pending to be recreated.", + "format": "int32", + "type": "integer" + }, + "restarting": { + "description": "[Output Only] The number of instances in the managed instance group that are pending to be restarted.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "InstanceGroupManagerUpdatePolicy": { + "id": "InstanceGroupManagerUpdatePolicy", + "properties": { + "maxSurge": { + "$ref": "FixedOrPercent", + "description": "The maximum number of instances that can be created above the specified targetSize during the update process. By default, a fixed value of 1 is used. This value can be either a fixed number or a percentage if the instance group has 10 or more instances. If you set a percentage, the number of instances will be rounded up if necessary.\n\nAt least one of either maxSurge or maxUnavailable must be greater than 0. Learn more about maxSurge." + }, + "maxUnavailable": { + "$ref": "FixedOrPercent", + "description": "The maximum number of instances that can be unavailable during the update process. An instance is considered available if all of the following conditions are satisfied:\n\n \n- The instance's status is RUNNING. \n- If there is a health check on the instance group, the instance's liveness health check result must be HEALTHY at least once. If there is no health check on the group, then the instance only needs to have a status of RUNNING to be considered available. By default, a fixed value of 1 is used. This value can be either a fixed number or a percentage if the instance group has 10 or more instances. If you set a percentage, the number of instances will be rounded up if necessary.\n\nAt least one of either maxSurge or maxUnavailable must be greater than 0. Learn more about maxUnavailable." + }, + "minReadySec": { + "description": "Minimum number of seconds to wait for after a newly created instance becomes available. This value must be from range [0, 3600].", + "format": "int32", + "type": "integer" + }, + "minimalAction": { + "description": "Minimal action to be taken on an instance. You can specify either RESTART to restart existing instances or REPLACE to delete and create new instances from the target template. If you specify a code\u003eRESTART, the Updater will attempt to perform that action only. However, if the Updater determines that the minimal action you specify is not enough to perform the update, it might perform a more disruptive action.", + "enum": [ + "REPLACE", + "RESTART" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "type": { + "enum": [ + "OPPORTUNISTIC", + "PROACTIVE" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "InstanceGroupManagerVersion": { + "id": "InstanceGroupManagerVersion", + "properties": { + "instanceTemplate": { + "type": "string" + }, + "name": { + "description": "Name of the version. Unique among all versions in the scope of this managed instance group.", + "type": "string" + }, + "targetSize": { + "$ref": "FixedOrPercent", + "description": "Specifies the intended number of instances to be created from the instanceTemplate. The final number of instances created from the template will be equal to: \n- If expressed as a fixed number, the minimum of either targetSize.fixed or instanceGroupManager.targetSize is used. \n- if expressed as a percent, the targetSize would be (targetSize.percent/100 * InstanceGroupManager.targetSize) If there is a remainder, the number is rounded up. If unset, this version will update any remaining instances not updated by another version. Read Starting a canary update for more information." + } + }, + "type": "object" + }, + "InstanceGroupManagersAbandonInstancesRequest": { + "id": "InstanceGroupManagersAbandonInstancesRequest", + "properties": { + "instances": { + "description": "The URLs of one or more instances to abandon. This can be a full URL or a partial URL, such as zones/[ZONE]/instances/[INSTANCE_NAME].", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "InstanceGroupManagersDeleteInstancesRequest": { + "id": "InstanceGroupManagersDeleteInstancesRequest", + "properties": { + "instances": { + "description": "The URLs of one or more instances to delete. This can be a full URL or a partial URL, such as zones/[ZONE]/instances/[INSTANCE_NAME].", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "InstanceGroupManagersListManagedInstancesResponse": { + "id": "InstanceGroupManagersListManagedInstancesResponse", + "properties": { + "managedInstances": { + "description": "[Output Only] The list of instances in the managed instance group.", + "items": { + "$ref": "ManagedInstance" + }, + "type": "array" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + } + }, + "type": "object" + }, + "InstanceGroupManagersRecreateInstancesRequest": { + "id": "InstanceGroupManagersRecreateInstancesRequest", + "properties": { + "instances": { + "description": "The URLs of one or more instances to recreate. This can be a full URL or a partial URL, such as zones/[ZONE]/instances/[INSTANCE_NAME].", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "InstanceGroupManagersResizeAdvancedRequest": { + "id": "InstanceGroupManagersResizeAdvancedRequest", + "properties": { + "noCreationRetries": { + "description": "If this flag is true, the managed instance group attempts to create all instances initiated by this resize request only once. If there is an error during creation, the managed instance group does not retry create this instance, and we will decrease the targetSize of the request instead. If the flag is false, the group attemps to recreate each instance continuously until it succeeds.\n\nThis flag matters only in the first attempt of creation of an instance. After an instance is successfully created while this flag is enabled, the instance behaves the same way as all the other instances created with a regular resize request. In particular, if a running instance dies unexpectedly at a later time and needs to be recreated, this mode does not affect the recreation behavior in that scenario.\n\nThis flag is applicable only to the current resize request. It does not influence other resize requests in any way.\n\nYou can see which instances is being creating in which mode by calling the get or listManagedInstances API.", + "type": "boolean" + }, + "targetSize": { + "description": "The number of running instances that the managed instance group should maintain at any given time. The group automatically adds or removes instances to maintain the number of instances specified by this parameter.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "InstanceGroupManagersScopedList": { + "id": "InstanceGroupManagersScopedList", + "properties": { + "instanceGroupManagers": { + "description": "[Output Only] The list of managed instance groups that are contained in the specified project and zone.", + "items": { + "$ref": "InstanceGroupManager" + }, + "type": "array" + }, + "warning": { + "description": "[Output Only] The warning that replaces the list of managed instance groups when the list is empty.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "InstanceGroupManagersSetAutoHealingRequest": { + "id": "InstanceGroupManagersSetAutoHealingRequest", + "properties": { + "autoHealingPolicies": { + "items": { + "$ref": "InstanceGroupManagerAutoHealingPolicy" + }, + "type": "array" + } + }, + "type": "object" + }, + "InstanceGroupManagersSetInstanceTemplateRequest": { + "id": "InstanceGroupManagersSetInstanceTemplateRequest", + "properties": { + "instanceTemplate": { + "description": "The URL of the instance template that is specified for this managed instance group. The group uses this template to create all new instances in the managed instance group.", + "type": "string" + } + }, + "type": "object" + }, + "InstanceGroupManagersSetTargetPoolsRequest": { + "id": "InstanceGroupManagersSetTargetPoolsRequest", + "properties": { + "fingerprint": { + "description": "The fingerprint of the target pools information. Use this optional property to prevent conflicts when multiple users change the target pools settings concurrently. Obtain the fingerprint with the instanceGroupManagers.get method. Then, include the fingerprint in your request to ensure that you do not overwrite changes that were applied from another concurrent request.", + "format": "byte", + "type": "string" + }, + "targetPools": { + "description": "The list of target pool URLs that instances in this managed instance group belong to. The managed instance group applies these target pools to all of the instances in the group. Existing instances and new instances in the group all receive these target pool settings.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "InstanceGroupsAddInstancesRequest": { + "id": "InstanceGroupsAddInstancesRequest", + "properties": { + "instances": { + "description": "The list of instances to add to the instance group.", + "items": { + "$ref": "InstanceReference" + }, + "type": "array" + } + }, + "type": "object" + }, + "InstanceGroupsListInstances": { + "id": "InstanceGroupsListInstances", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of InstanceWithNamedPorts resources.", + "items": { + "$ref": "InstanceWithNamedPorts" + }, + "type": "array" + }, + "kind": { + "default": "compute#instanceGroupsListInstances", + "description": "[Output Only] The resource type, which is always compute#instanceGroupsListInstances for the list of instances in the specified instance group.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "InstanceGroupsListInstancesRequest": { + "id": "InstanceGroupsListInstancesRequest", + "properties": { + "instanceState": { + "description": "A filter for the state of the instances in the instance group. Valid options are ALL or RUNNING. If you do not specify this parameter the list includes all instances regardless of their state.", + "enum": [ + "ALL", + "RUNNING" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "InstanceGroupsRemoveInstancesRequest": { + "id": "InstanceGroupsRemoveInstancesRequest", + "properties": { + "instances": { + "description": "The list of instances to remove from the instance group.", + "items": { + "$ref": "InstanceReference" + }, + "type": "array" + } + }, + "type": "object" + }, + "InstanceGroupsScopedList": { + "id": "InstanceGroupsScopedList", + "properties": { + "instanceGroups": { + "description": "[Output Only] The list of instance groups that are contained in this scope.", + "items": { + "$ref": "InstanceGroup" + }, + "type": "array" + }, + "warning": { + "description": "[Output Only] An informational warning that replaces the list of instance groups when the list is empty.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "InstanceGroupsSetNamedPortsRequest": { + "id": "InstanceGroupsSetNamedPortsRequest", + "properties": { + "fingerprint": { + "description": "The fingerprint of the named ports information for this instance group. Use this optional property to prevent conflicts when multiple users change the named ports settings concurrently. Obtain the fingerprint with the instanceGroups.get method. Then, include the fingerprint in your request to ensure that you do not overwrite changes that were applied from another concurrent request.", + "format": "byte", + "type": "string" + }, + "namedPorts": { + "description": "The list of named ports to set for this instance group.", + "items": { + "$ref": "NamedPort" + }, + "type": "array" + } + }, + "type": "object" + }, + "InstanceList": { + "description": "Contains a list of instances.", + "id": "InstanceList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of Instance resources.", + "items": { + "$ref": "Instance" + }, + "type": "array" + }, + "kind": { + "default": "compute#instanceList", + "description": "[Output Only] Type of resource. Always compute#instanceList for lists of Instance resources.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "InstanceListReferrers": { + "description": "Contains a list of instance referrers.", + "id": "InstanceListReferrers", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of Reference resources.", + "items": { + "$ref": "Reference" + }, + "type": "array" + }, + "kind": { + "default": "compute#instanceListReferrers", + "description": "[Output Only] Type of resource. Always compute#instanceListReferrers for lists of Instance referrers.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "InstanceMoveRequest": { + "id": "InstanceMoveRequest", + "properties": { + "destinationZone": { + "description": "The URL of the destination zone to move the instance. This can be a full or partial URL. For example, the following are all valid URLs to a zone: \n- https://www.googleapis.com/compute/v1/projects/project/zones/zone \n- projects/project/zones/zone \n- zones/zone", + "type": "string" + }, + "targetInstance": { + "description": "The URL of the target instance to move. This can be a full or partial URL. For example, the following are all valid URLs to an instance: \n- https://www.googleapis.com/compute/v1/projects/project/zones/zone/instances/instance \n- projects/project/zones/zone/instances/instance \n- zones/zone/instances/instance", + "type": "string" + } + }, + "type": "object" + }, + "InstanceProperties": { + "description": "", + "id": "InstanceProperties", + "properties": { + "canIpForward": { + "description": "Enables instances created based on this template to send packets with source IP addresses other than their own and receive packets with destination IP addresses other than their own. If these instances will be used as an IP gateway or it will be set as the next-hop in a Route resource, specify true. If unsure, leave this set to false. See the Enable IP forwarding documentation for more information.", + "type": "boolean" + }, + "description": { + "description": "An optional text description for the instances that are created from this instance template.", + "type": "string" + }, + "disks": { + "description": "An array of disks that are associated with the instances that are created from this template.", + "items": { + "$ref": "AttachedDisk" + }, + "type": "array" + }, + "guestAccelerators": { + "description": "A list of guest accelerator cards' type and count to use for instances created from the instance template.", + "items": { + "$ref": "AcceleratorConfig" + }, + "type": "array" + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Labels to apply to instances that are created from this template.", + "type": "object" + }, + "machineType": { + "annotations": { + "required": [ + "compute.instanceTemplates.insert" + ] + }, + "description": "The machine type to use for instances that are created from this template.", + "type": "string" + }, + "metadata": { + "$ref": "Metadata", + "description": "The metadata key/value pairs to assign to instances that are created from this template. These pairs can consist of custom metadata or predefined keys. See Project and instance metadata for more information." + }, + "minCpuPlatform": { + "description": "Minimum cpu/platform to be used by this instance. The instance may be scheduled on the specified or newer cpu/platform. Applicable values are the friendly names of CPU platforms, such as minCpuPlatform: \"Intel Haswell\" or minCpuPlatform: \"Intel Sandy Bridge\". For more information, read Specifying a Minimum CPU Platform.", + "type": "string" + }, + "networkInterfaces": { + "description": "An array of network access configurations for this interface.", + "items": { + "$ref": "NetworkInterface" + }, + "type": "array" + }, + "scheduling": { + "$ref": "Scheduling", + "description": "Specifies the scheduling options for the instances that are created from this template." + }, + "serviceAccounts": { + "description": "A list of service accounts with specified scopes. Access tokens for these service accounts are available to the instances that are created from this template. Use metadata queries to obtain the access tokens for these instances.", + "items": { + "$ref": "ServiceAccount" + }, + "type": "array" + }, + "tags": { + "$ref": "Tags", + "description": "A list of tags to apply to the instances that are created from this template. The tags identify valid sources or targets for network firewalls. The setTags method can modify this list of tags. Each tag within the list must comply with RFC1035." + } + }, + "type": "object" + }, + "InstanceReference": { + "id": "InstanceReference", + "properties": { + "instance": { + "description": "The URL for a specific instance.", + "type": "string" + } + }, + "type": "object" + }, + "InstanceTemplate": { + "description": "An Instance Template resource. (== resource_for beta.instanceTemplates ==) (== resource_for v1.instanceTemplates ==)", + "id": "InstanceTemplate", + "properties": { + "creationTimestamp": { + "description": "[Output Only] The creation timestamp for this instance template in RFC3339 text format.", + "type": "string" + }, + "description": { + "description": "An optional description of this resource. Provide this property when you create the resource.", + "type": "string" + }, + "id": { + "description": "[Output Only] A unique identifier for this instance template. The server defines this identifier.", + "format": "uint64", + "type": "string" + }, + "kind": { + "default": "compute#instanceTemplate", + "description": "[Output Only] The resource type, which is always compute#instanceTemplate for instance templates.", + "type": "string" + }, + "name": { + "annotations": { + "required": [ + "compute.instanceTemplates.insert" + ] + }, + "description": "Name of the resource; provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "properties": { + "$ref": "InstanceProperties", + "description": "The instance properties for this instance template." + }, + "selfLink": { + "description": "[Output Only] The URL for this instance template. The server defines this URL.", + "type": "string" + }, + "sourceInstance": { + "description": "The source instance used to create the template. You can provide this as a partial or full URL to the resource. For example, the following are valid values: \n- https://www.googleapis.com/compute/v1/projects/project/zones/zone/instances/instance \n- projects/project/zones/zone/instances/instance", + "type": "string" + }, + "sourceInstanceParams": { + "$ref": "SourceInstanceParams", + "description": "The source instance params to use to create this instance template." + } + }, + "type": "object" + }, + "InstanceTemplateList": { + "description": "A list of instance templates.", + "id": "InstanceTemplateList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of InstanceTemplate resources.", + "items": { + "$ref": "InstanceTemplate" + }, + "type": "array" + }, + "kind": { + "default": "compute#instanceTemplateList", + "description": "[Output Only] The resource type, which is always compute#instanceTemplatesListResponse for instance template lists.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "InstanceWithNamedPorts": { + "id": "InstanceWithNamedPorts", + "properties": { + "instance": { + "description": "[Output Only] The URL of the instance.", + "type": "string" + }, + "namedPorts": { + "description": "[Output Only] The named ports that belong to this instance group.", + "items": { + "$ref": "NamedPort" + }, + "type": "array" + }, + "status": { + "description": "[Output Only] The status of the instance.", + "enum": [ + "PROVISIONING", + "RUNNING", + "STAGING", + "STOPPED", + "STOPPING", + "SUSPENDED", + "SUSPENDING", + "TERMINATED" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "InstancesScopedList": { + "id": "InstancesScopedList", + "properties": { + "instances": { + "description": "[Output Only] List of instances contained in this scope.", + "items": { + "$ref": "Instance" + }, + "type": "array" + }, + "warning": { + "description": "[Output Only] Informational warning which replaces the list of instances when the list is empty.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "InstancesSetLabelsRequest": { + "id": "InstancesSetLabelsRequest", + "properties": { + "labelFingerprint": { + "description": "Fingerprint of the previous set of labels for this resource, used to prevent conflicts. Provide the latest fingerprint value when making a request to add or change labels.", + "format": "byte", + "type": "string" + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "type": "object" + } + }, + "type": "object" + }, + "InstancesSetMachineResourcesRequest": { + "id": "InstancesSetMachineResourcesRequest", + "properties": { + "guestAccelerators": { + "description": "List of the type and count of accelerator cards attached to the instance.", + "items": { + "$ref": "AcceleratorConfig" + }, + "type": "array" + } + }, + "type": "object" + }, + "InstancesSetMachineTypeRequest": { + "id": "InstancesSetMachineTypeRequest", + "properties": { + "machineType": { + "description": "Full or partial URL of the machine type resource. See Machine Types for a full list of machine types. For example: zones/us-central1-f/machineTypes/n1-standard-1", + "type": "string" + } + }, + "type": "object" + }, + "InstancesSetMinCpuPlatformRequest": { + "id": "InstancesSetMinCpuPlatformRequest", + "properties": { + "minCpuPlatform": { + "description": "Minimum cpu/platform this instance should be started at.", + "type": "string" + } + }, + "type": "object" + }, + "InstancesSetServiceAccountRequest": { + "id": "InstancesSetServiceAccountRequest", + "properties": { + "email": { + "description": "Email address of the service account.", + "type": "string" + }, + "scopes": { + "description": "The list of scopes to be made available for this service account.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "InstancesStartWithEncryptionKeyRequest": { + "id": "InstancesStartWithEncryptionKeyRequest", + "properties": { + "disks": { + "description": "Array of disks associated with this instance that are protected with a customer-supplied encryption key.\n\nIn order to start the instance, the disk url and its corresponding key must be provided.\n\nIf the disk is not protected with a customer-supplied encryption key it should not be specified.", + "items": { + "$ref": "CustomerEncryptionKeyProtectedDisk" + }, + "type": "array" + } + }, + "type": "object" + }, + "Interconnect": { + "description": "Represents an Interconnects resource. The Interconnects resource is a dedicated connection between Google's network and your on-premises network. For more information, see the Dedicated overview page. (== resource_for v1.interconnects ==) (== resource_for beta.interconnects ==)", + "id": "Interconnect", + "properties": { + "adminEnabled": { + "description": "Administrative status of the interconnect. When this is set to true, the Interconnect is functional and can carry traffic. When set to false, no packets can be carried over the interconnect and no BGP routes are exchanged over it. By default, the status is set to true.", + "type": "boolean" + }, + "circuitInfos": { + "description": "[Output Only] List of CircuitInfo objects, that describe the individual circuits in this LAG.", + "items": { + "$ref": "InterconnectCircuitInfo" + }, + "type": "array" + }, + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "customerName": { + "description": "Customer name, to put in the Letter of Authorization as the party authorized to request a crossconnect.", + "type": "string" + }, + "description": { + "description": "An optional description of this resource. Provide this property when you create the resource.", + "type": "string" + }, + "expectedOutages": { + "description": "[Output Only] List of outages expected for this Interconnect.", + "items": { + "$ref": "InterconnectOutageNotification" + }, + "type": "array" + }, + "googleIpAddress": { + "description": "[Output Only] IP address configured on the Google side of the Interconnect link. This can be used only for ping tests.", + "type": "string" + }, + "googleReferenceId": { + "description": "[Output Only] Google reference ID; to be used when raising support tickets with Google or otherwise to debug backend connectivity issues.", + "type": "string" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64", + "type": "string" + }, + "interconnectAttachments": { + "description": "[Output Only] A list of the URLs of all InterconnectAttachments configured to use this Interconnect.", + "items": { + "type": "string" + }, + "type": "array" + }, + "interconnectType": { + "description": "Type of interconnect. Note that \"IT_PRIVATE\" has been deprecated in favor of \"DEDICATED\"", + "enum": [ + "DEDICATED", + "IT_PRIVATE", + "PARTNER" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, + "kind": { + "default": "compute#interconnect", + "description": "[Output Only] Type of the resource. Always compute#interconnect for interconnects.", + "type": "string" + }, + "labelFingerprint": { + "description": "A fingerprint for the labels being applied to this Interconnect, which is essentially a hash of the labels set used for optimistic locking. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update labels. You must always provide an up-to-date fingerprint hash in order to update or change labels.\n\nTo see the latest fingerprint, make a get() request to retrieve an Interconnect.", + "format": "byte", + "type": "string" + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Labels to apply to this Interconnect resource. These can be later modified by the setLabels method. Each label key/value must comply with RFC1035. Label values may be empty.", + "type": "object" + }, + "linkType": { + "description": "Type of link requested. This field indicates speed of each of the links in the bundle, not the entire bundle. Only 10G per link is allowed for a dedicated interconnect. Options: Ethernet_10G_LR", + "enum": [ + "LINK_TYPE_ETHERNET_10G_LR" + ], + "enumDescriptions": [ + "" + ], + "type": "string" + }, + "location": { + "description": "URL of the InterconnectLocation object that represents where this connection is to be provisioned.", + "type": "string" + }, + "name": { + "annotations": { + "required": [ + "compute.interconnects.insert" + ] + }, + "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "nocContactEmail": { + "description": "Email address to contact the customer NOC for operations and maintenance notifications regarding this Interconnect. If specified, this will be used for notifications in addition to all other forms described, such as Stackdriver logs alerting and Cloud Notifications.", + "type": "string" + }, + "operationalStatus": { + "description": "[Output Only] The current status of whether or not this Interconnect is functional.", + "enum": [ + "OS_ACTIVE", + "OS_UNPROVISIONED" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "peerIpAddress": { + "description": "[Output Only] IP address configured on the customer side of the Interconnect link. The customer should configure this IP address during turnup when prompted by Google NOC. This can be used only for ping tests.", + "type": "string" + }, + "provisionedLinkCount": { + "description": "[Output Only] Number of links actually provisioned in this interconnect.", + "format": "int32", + "type": "integer" + }, + "requestedLinkCount": { + "description": "Target number of physical links in the link bundle, as requested by the customer.", + "format": "int32", + "type": "integer" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + }, + "state": { + "description": "[Output Only] The current state of whether or not this Interconnect is functional.", + "enum": [ + "ACTIVE", + "UNPROVISIONED" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "InterconnectAttachment": { + "description": "Represents an InterconnectAttachment (VLAN attachment) resource. For more information, see Creating VLAN Attachments. (== resource_for beta.interconnectAttachments ==) (== resource_for v1.interconnectAttachments ==)", + "id": "InterconnectAttachment", + "properties": { + "adminEnabled": { + "description": "Determines whether this Attachment will carry packets. Not present for PARTNER_PROVIDER.", + "type": "boolean" + }, + "bandwidth": { + "description": "Provisioned bandwidth capacity for the interconnectAttachment. Can be set by the partner to update the customer's provisioned bandwidth. Output only for for PARTNER type, mutable for PARTNER_PROVIDER, not available for DEDICATED.", + "enum": [ + "BPS_100M", + "BPS_10G", + "BPS_1G", + "BPS_200M", + "BPS_2G", + "BPS_300M", + "BPS_400M", + "BPS_500M", + "BPS_50M", + "BPS_5G" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "candidateSubnets": { + "description": "Up to 16 candidate prefixes that can be used to restrict the allocation of cloudRouterIpAddress and customerRouterIpAddress for this attachment. All prefixes must be within link-local address space (169.254.0.0/16) and must be /29 or shorter (/28, /27, etc). Google will attempt to select an unused /29 from the supplied candidate prefix(es). The request will fail if all possible /29s are in use on Google?s edge. If not supplied, Google will randomly select an unused /29 from all of link-local space.", + "items": { + "type": "string" + }, + "type": "array" + }, + "cloudRouterIpAddress": { + "description": "[Output Only] IPv4 address + prefix length to be configured on Cloud Router Interface for this interconnect attachment.", + "type": "string" + }, + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "customerRouterIpAddress": { + "description": "[Output Only] IPv4 address + prefix length to be configured on the customer router subinterface for this interconnect attachment.", + "type": "string" + }, + "description": { + "description": "An optional description of this resource.", + "type": "string" + }, + "edgeAvailabilityDomain": { + "description": "Desired availability domain for the attachment. Only available for type PARTNER, at creation time. For improved reliability, customers should configure a pair of attachments with one per availability domain. The selected availability domain will be provided to the Partner via the pairing key so that the provisioned circuit will lie in the specified domain. If not specified, the value will default to AVAILABILITY_DOMAIN_ANY.", + "enum": [ + "AVAILABILITY_DOMAIN_1", + "AVAILABILITY_DOMAIN_2", + "AVAILABILITY_DOMAIN_ANY" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, + "googleReferenceId": { + "description": "[Output Only] Google reference ID, to be used when raising support tickets with Google or otherwise to debug backend connectivity issues.", + "type": "string" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64", + "type": "string" + }, + "interconnect": { + "description": "URL of the underlying Interconnect object that this attachment's traffic will traverse through.", + "type": "string" + }, + "kind": { + "default": "compute#interconnectAttachment", + "description": "[Output Only] Type of the resource. Always compute#interconnectAttachment for interconnect attachments.", + "type": "string" + }, + "labelFingerprint": { + "description": "A fingerprint for the labels being applied to this InterconnectAttachment, which is essentially a hash of the labels set used for optimistic locking. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update labels. You must always provide an up-to-date fingerprint hash in order to update or change labels.\n\nTo see the latest fingerprint, make a get() request to retrieve an InterconnectAttachment.", + "format": "byte", + "type": "string" + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Labels to apply to this InterconnectAttachment resource. These can be later modified by the setLabels method. Each label key/value must comply with RFC1035. Label values may be empty.", + "type": "object" + }, + "name": { + "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "operationalStatus": { + "description": "[Output Only] The current status of whether or not this interconnect attachment is functional.", + "enum": [ + "OS_ACTIVE", + "OS_UNPROVISIONED" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "pairingKey": { + "description": "[Output only for type PARTNER. Input only for PARTNER_PROVIDER. Not present for DEDICATED]. The opaque identifier of an PARTNER attachment used to initiate provisioning with a selected partner. Of the form \"XXXXX/region/domain\"", + "type": "string" + }, + "partnerAsn": { + "description": "Optional BGP ASN for the router that should be supplied by a layer 3 Partner if they configured BGP on behalf of the customer. Output only for PARTNER type, input only for PARTNER_PROVIDER, not available for DEDICATED.", + "format": "int64", + "type": "string" + }, + "partnerMetadata": { + "$ref": "InterconnectAttachmentPartnerMetadata", + "description": "Informational metadata about Partner attachments from Partners to display to customers. Output only for for PARTNER type, mutable for PARTNER_PROVIDER, not available for DEDICATED." + }, + "privateInterconnectInfo": { + "$ref": "InterconnectAttachmentPrivateInfo", + "description": "[Output Only] Information specific to an InterconnectAttachment. This property is populated if the interconnect that this is attached to is of type DEDICATED." + }, + "region": { + "description": "[Output Only] URL of the region where the regional interconnect attachment resides. You must specify this field as part of the HTTP request URL. It is not settable as a field in the request body.", + "type": "string" + }, + "router": { + "description": "URL of the cloud router to be used for dynamic routing. This router must be in the same region as this InterconnectAttachment. The InterconnectAttachment will automatically connect the Interconnect to the network \u0026 region within which the Cloud Router is configured.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + }, + "state": { + "description": "[Output Only] The current state of this attachment's functionality.", + "enum": [ + "ACTIVE", + "DEFUNCT", + "PARTNER_REQUEST_RECEIVED", + "PENDING_CUSTOMER", + "PENDING_PARTNER", + "STATE_UNSPECIFIED", + "UNPROVISIONED" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "type": { + "enum": [ + "DEDICATED", + "PARTNER", + "PARTNER_PROVIDER" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, + "vlanTag8021q": { + "description": "Available only for DEDICATED and PARTNER_PROVIDER. Desired VLAN tag for this attachment, in the range 2-4094. This field refers to 802.1q VLAN tag, also known as IEEE 802.1Q Only specified at creation time.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "InterconnectAttachmentAggregatedList": { + "id": "InterconnectAttachmentAggregatedList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "additionalProperties": { + "$ref": "InterconnectAttachmentsScopedList", + "description": "Name of the scope containing this set of interconnect attachments." + }, + "description": "A list of InterconnectAttachmentsScopedList resources.", + "type": "object" + }, + "kind": { + "default": "compute#interconnectAttachmentAggregatedList", + "description": "[Output Only] Type of resource. Always compute#interconnectAttachmentAggregatedList for aggregated lists of interconnect attachments.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "InterconnectAttachmentList": { + "description": "Response to the list request, and contains a list of interconnect attachments.", + "id": "InterconnectAttachmentList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of InterconnectAttachment resources.", + "items": { + "$ref": "InterconnectAttachment" + }, + "type": "array" + }, + "kind": { + "default": "compute#interconnectAttachmentList", + "description": "[Output Only] Type of resource. Always compute#interconnectAttachmentList for lists of interconnect attachments.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "InterconnectAttachmentPartnerMetadata": { + "description": "Informational metadata about Partner attachments from Partners to display to customers. These fields are propagated from PARTNER_PROVIDER attachments to their corresponding PARTNER attachments.", + "id": "InterconnectAttachmentPartnerMetadata", + "properties": { + "interconnectName": { + "description": "Plain text name of the Interconnect this attachment is connected to, as displayed in the Partner?s portal. For instance ?Chicago 1?. This value may be validated to match approved Partner values.", + "type": "string" + }, + "partnerName": { + "description": "Plain text name of the Partner providing this attachment. This value may be validated to match approved Partner values.", + "type": "string" + }, + "portalUrl": { + "description": "URL of the Partner?s portal for this Attachment. Partners may customise this to be a deep-link to the specific resource on the Partner portal. This value may be validated to match approved Partner values.", + "type": "string" + } + }, + "type": "object" + }, + "InterconnectAttachmentPrivateInfo": { + "description": "Information for an interconnect attachment when this belongs to an interconnect of type DEDICATED.", + "id": "InterconnectAttachmentPrivateInfo", + "properties": { + "tag8021q": { + "description": "[Output Only] 802.1q encapsulation tag to be used for traffic between Google and the customer, going to and from this network and region.", + "format": "uint32", + "type": "integer" + } + }, + "type": "object" + }, + "InterconnectAttachmentsScopedList": { + "id": "InterconnectAttachmentsScopedList", + "properties": { + "interconnectAttachments": { + "description": "List of interconnect attachments contained in this scope.", + "items": { + "$ref": "InterconnectAttachment" + }, + "type": "array" + }, + "warning": { + "description": "Informational warning which replaces the list of addresses when the list is empty.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "InterconnectCircuitInfo": { + "description": "Describes a single physical circuit between the Customer and Google. CircuitInfo objects are created by Google, so all fields are output only. Next id: 4", + "id": "InterconnectCircuitInfo", + "properties": { + "customerDemarcId": { + "description": "Customer-side demarc ID for this circuit.", + "type": "string" + }, + "googleCircuitId": { + "description": "Google-assigned unique ID for this circuit. Assigned at circuit turn-up.", + "type": "string" + }, + "googleDemarcId": { + "description": "Google-side demarc ID for this circuit. Assigned at circuit turn-up and provided by Google to the customer in the LOA.", + "type": "string" + } + }, + "type": "object" + }, + "InterconnectList": { + "description": "Response to the list request, and contains a list of interconnects.", + "id": "InterconnectList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of Interconnect resources.", + "items": { + "$ref": "Interconnect" + }, + "type": "array" + }, + "kind": { + "default": "compute#interconnectList", + "description": "[Output Only] Type of resource. Always compute#interconnectList for lists of interconnects.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "InterconnectLocation": { + "description": "Represents an InterconnectLocations resource. The InterconnectLocations resource describes the locations where you can connect to Google's networks. For more information, see Colocation Facilities.", + "id": "InterconnectLocation", + "properties": { + "address": { + "description": "[Output Only] The postal address of the Point of Presence, each line in the address is separated by a newline character.", + "type": "string" + }, + "availabilityZone": { + "description": "[Output Only] Availability zone for this location. Within a metropolitan area (metro), maintenance will not be simultaneously scheduled in more than one availability zone. Example: \"zone1\" or \"zone2\".", + "type": "string" + }, + "city": { + "description": "[Output Only] Metropolitan area designator that indicates which city an interconnect is located. For example: \"Chicago, IL\", \"Amsterdam, Netherlands\".", + "type": "string" + }, + "continent": { + "description": "[Output Only] Continent for this location.", + "enum": [ + "AFRICA", + "ASIA_PAC", + "C_AFRICA", + "C_ASIA_PAC", + "C_EUROPE", + "C_NORTH_AMERICA", + "C_SOUTH_AMERICA", + "EUROPE", + "NORTH_AMERICA", + "SOUTH_AMERICA" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "description": { + "description": "[Output Only] An optional description of the resource.", + "type": "string" + }, + "facilityProvider": { + "description": "[Output Only] The name of the provider for this facility (e.g., EQUINIX).", + "type": "string" + }, + "facilityProviderFacilityId": { + "description": "[Output Only] A provider-assigned Identifier for this facility (e.g., Ashburn-DC1).", + "type": "string" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64", + "type": "string" + }, + "kind": { + "default": "compute#interconnectLocation", + "description": "[Output Only] Type of the resource. Always compute#interconnectLocation for interconnect locations.", + "type": "string" + }, + "name": { + "description": "[Output Only] Name of the resource.", + "type": "string" + }, + "peeringdbFacilityId": { + "description": "[Output Only] The peeringdb identifier for this facility (corresponding with a netfac type in peeringdb).", + "type": "string" + }, + "regionInfos": { + "description": "[Output Only] A list of InterconnectLocation.RegionInfo objects, that describe parameters pertaining to the relation between this InterconnectLocation and various Google Cloud regions.", + "items": { + "$ref": "InterconnectLocationRegionInfo" + }, + "type": "array" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + } + }, + "type": "object" + }, + "InterconnectLocationList": { + "description": "Response to the list request, and contains a list of interconnect locations.", + "id": "InterconnectLocationList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of InterconnectLocation resources.", + "items": { + "$ref": "InterconnectLocation" + }, + "type": "array" + }, + "kind": { + "default": "compute#interconnectLocationList", + "description": "[Output Only] Type of resource. Always compute#interconnectLocationList for lists of interconnect locations.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "InterconnectLocationRegionInfo": { + "description": "Information about any potential InterconnectAttachments between an Interconnect at a specific InterconnectLocation, and a specific Cloud Region.", + "id": "InterconnectLocationRegionInfo", + "properties": { + "expectedRttMs": { + "description": "Expected round-trip time in milliseconds, from this InterconnectLocation to a VM in this region.", + "format": "int64", + "type": "string" + }, + "locationPresence": { + "description": "Identifies the network presence of this location.", + "enum": [ + "GLOBAL", + "LOCAL_REGION", + "LP_GLOBAL", + "LP_LOCAL_REGION" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ], + "type": "string" + }, + "region": { + "description": "URL for the region of this location.", + "type": "string" + } + }, + "type": "object" + }, + "InterconnectOutageNotification": { + "description": "Description of a planned outage on this Interconnect. Next id: 9", + "id": "InterconnectOutageNotification", + "properties": { + "affectedCircuits": { + "description": "Iff issue_type is IT_PARTIAL_OUTAGE, a list of the Google-side circuit IDs that will be affected.", + "items": { + "type": "string" + }, + "type": "array" + }, + "description": { + "description": "A description about the purpose of the outage.", + "type": "string" + }, + "endTime": { + "description": "Scheduled end time for the outage (milliseconds since Unix epoch).", + "format": "int64", + "type": "string" + }, + "issueType": { + "description": "Form this outage is expected to take. Note that the \"IT_\" versions of this enum have been deprecated in favor of the unprefixed values.", + "enum": [ + "IT_OUTAGE", + "IT_PARTIAL_OUTAGE", + "OUTAGE", + "PARTIAL_OUTAGE" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ], + "type": "string" + }, + "name": { + "description": "Unique identifier for this outage notification.", + "type": "string" + }, + "source": { + "description": "The party that generated this notification. Note that \"NSRC_GOOGLE\" has been deprecated in favor of \"GOOGLE\"", + "enum": [ + "GOOGLE", + "NSRC_GOOGLE" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "startTime": { + "description": "Scheduled start time for the outage (milliseconds since Unix epoch).", + "format": "int64", + "type": "string" + }, + "state": { + "description": "State of this notification. Note that the \"NS_\" versions of this enum have been deprecated in favor of the unprefixed values.", + "enum": [ + "ACTIVE", + "CANCELLED", + "NS_ACTIVE", + "NS_CANCELED" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "License": { + "description": "A license resource.", + "id": "License", + "properties": { + "chargesUseFee": { + "description": "[Output Only] Deprecated. This field no longer reflects whether a license charges a usage fee.", + "type": "boolean" + }, + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "description": { + "description": "An optional textual description of the resource; provided by the client when the resource is created.", + "type": "string" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64", + "type": "string" + }, + "kind": { + "default": "compute#license", + "description": "[Output Only] Type of resource. Always compute#license for licenses.", + "type": "string" + }, + "licenseCode": { + "description": "[Output Only] The unique code used to attach this license to images, snapshots, and disks.", + "format": "uint64", + "type": "string" + }, + "name": { + "annotations": { + "required": [ + "compute.images.insert" + ] + }, + "description": "[Output Only] Name of the resource. The name is 1-63 characters long and complies with RFC1035.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "resourceRequirements": { + "$ref": "LicenseResourceRequirements" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + }, + "transferable": { + "description": "If false, licenses will not be copied from the source resource when creating an image from a disk, disk from snapshot, or snapshot from disk.", + "type": "boolean" + } + }, + "type": "object" + }, + "LicenseCode": { + "id": "LicenseCode", + "properties": { + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "description": { + "description": "[Output Only] Description of this License Code.", + "type": "string" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64", + "type": "string" + }, + "kind": { + "default": "compute#licenseCode", + "description": "[Output Only] Type of resource. Always compute#licenseCode for licenses.", + "type": "string" + }, + "licenseAlias": { + "description": "[Output Only] URL and description aliases of Licenses with the same License Code.", + "items": { + "$ref": "LicenseCodeLicenseAlias" + }, + "type": "array" + }, + "name": { + "annotations": { + "required": [ + "compute.licenses.insert" + ] + }, + "description": "[Output Only] Name of the resource. The name is 1-20 characters long and must be a valid 64 bit integer.", + "pattern": "[0-9]{0,20}?", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + }, + "state": { + "description": "[Output Only] Current state of this License Code.", + "enum": [ + "DISABLED", + "ENABLED", + "RESTRICTED", + "STATE_UNSPECIFIED", + "TERMINATED" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "transferable": { + "description": "[Output Only] If true, the license will remain attached when creating images or snapshots from disks. Otherwise, the license is not transferred.", + "type": "boolean" + } + }, + "type": "object" + }, + "LicenseCodeLicenseAlias": { + "id": "LicenseCodeLicenseAlias", + "properties": { + "description": { + "description": "[Output Only] Description of this License Code.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] URL of license corresponding to this License Code.", + "type": "string" + } + }, + "type": "object" + }, + "LicenseResourceRequirements": { + "id": "LicenseResourceRequirements", + "properties": { + "minGuestCpuCount": { + "description": "Minimum number of guest cpus required to use the Instance. Enforced at Instance creation and Instance start.", + "format": "int32", + "type": "integer" + }, + "minMemoryMb": { + "description": "Minimum memory required to use the Instance. Enforced at Instance creation and Instance start.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "LicensesListResponse": { + "id": "LicensesListResponse", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of License resources.", + "items": { + "$ref": "License" + }, + "type": "array" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "LogConfig": { + "description": "Specifies what kind of log the caller must write", + "id": "LogConfig", + "properties": { + "cloudAudit": { + "$ref": "LogConfigCloudAuditOptions", + "description": "Cloud audit options." + }, + "counter": { + "$ref": "LogConfigCounterOptions", + "description": "Counter options." + }, + "dataAccess": { + "$ref": "LogConfigDataAccessOptions", + "description": "Data access options." + } + }, + "type": "object" + }, + "LogConfigCloudAuditOptions": { + "description": "Write a Cloud Audit log", + "id": "LogConfigCloudAuditOptions", + "properties": { + "authorizationLoggingOptions": { + "$ref": "AuthorizationLoggingOptions", + "description": "Information used by the Cloud Audit Logging pipeline." + }, + "logName": { + "description": "The log_name to populate in the Cloud Audit Record.", + "enum": [ + "ADMIN_ACTIVITY", + "DATA_ACCESS", + "UNSPECIFIED_LOG_NAME" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "LogConfigCounterOptions": { + "description": "Increment a streamz counter with the specified metric and field names.\n\nMetric names should start with a '/', generally be lowercase-only, and end in \"_count\". Field names should not contain an initial slash. The actual exported metric names will have \"/iam/policy\" prepended.\n\nField names correspond to IAM request parameters and field values are their respective values.\n\nAt present the only supported field names are - \"iam_principal\", corresponding to IAMContext.principal; - \"\" (empty string), resulting in one aggretated counter with no field.\n\nExamples: counter { metric: \"/debug_access_count\" field: \"iam_principal\" } ==\u003e increment counter /iam/policy/backend_debug_access_count {iam_principal=[value of IAMContext.principal]}\n\nAt this time we do not support: * multiple field names (though this may be supported in the future) * decrementing the counter * incrementing it by anything other than 1", + "id": "LogConfigCounterOptions", + "properties": { + "field": { + "description": "The field value to attribute.", + "type": "string" + }, + "metric": { + "description": "The metric to update.", + "type": "string" + } + }, + "type": "object" + }, + "LogConfigDataAccessOptions": { + "description": "Write a Data Access (Gin) log", + "id": "LogConfigDataAccessOptions", + "properties": { + "logMode": { + "description": "Whether Gin logging should happen in a fail-closed manner at the caller. This is relevant only in the LocalIAM implementation, for now.", + "enum": [ + "LOG_FAIL_CLOSED", + "LOG_MODE_UNSPECIFIED" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "MachineType": { + "description": "A Machine Type resource. (== resource_for v1.machineTypes ==) (== resource_for beta.machineTypes ==)", + "id": "MachineType", + "properties": { + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "deprecated": { + "$ref": "DeprecationStatus", + "description": "[Output Only] The deprecation status associated with this machine type." + }, + "description": { + "description": "[Output Only] An optional textual description of the resource.", + "type": "string" + }, + "guestCpus": { + "description": "[Output Only] The number of virtual CPUs that are available to the instance.", + "format": "int32", + "type": "integer" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64", + "type": "string" + }, + "isSharedCpu": { + "description": "[Output Only] Whether this machine type has a shared CPU. See Shared-core machine types for more information.", + "type": "boolean" + }, + "kind": { + "default": "compute#machineType", + "description": "[Output Only] The type of the resource. Always compute#machineType for machine types.", + "type": "string" + }, + "maximumPersistentDisks": { + "description": "[Output Only] Maximum persistent disks allowed.", + "format": "int32", + "type": "integer" + }, + "maximumPersistentDisksSizeGb": { + "description": "[Output Only] Maximum total persistent disks size (GB) allowed.", + "format": "int64", + "type": "string" + }, + "memoryMb": { + "description": "[Output Only] The amount of physical memory available to the instance, defined in MB.", + "format": "int32", + "type": "integer" + }, + "name": { + "description": "[Output Only] Name of the resource.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + }, + "zone": { + "description": "[Output Only] The name of the zone where the machine type resides, such as us-central1-a.", + "type": "string" + } + }, + "type": "object" + }, + "MachineTypeAggregatedList": { + "id": "MachineTypeAggregatedList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "additionalProperties": { + "$ref": "MachineTypesScopedList", + "description": "[Output Only] Name of the scope containing this set of machine types." + }, + "description": "A list of MachineTypesScopedList resources.", + "type": "object" + }, + "kind": { + "default": "compute#machineTypeAggregatedList", + "description": "[Output Only] Type of resource. Always compute#machineTypeAggregatedList for aggregated lists of machine types.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "MachineTypeList": { + "description": "Contains a list of machine types.", + "id": "MachineTypeList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of MachineType resources.", + "items": { + "$ref": "MachineType" + }, + "type": "array" + }, + "kind": { + "default": "compute#machineTypeList", + "description": "[Output Only] Type of resource. Always compute#machineTypeList for lists of machine types.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "MachineTypesScopedList": { + "id": "MachineTypesScopedList", + "properties": { + "machineTypes": { + "description": "[Output Only] List of machine types contained in this scope.", + "items": { + "$ref": "MachineType" + }, + "type": "array" + }, + "warning": { + "description": "[Output Only] An informational warning that appears when the machine types list is empty.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "ManagedInstance": { + "description": "Next available tag: 12", + "id": "ManagedInstance", + "properties": { + "currentAction": { + "description": "[Output Only] The current action that the managed instance group has scheduled for the instance. Possible values: \n- NONE The instance is running, and the managed instance group does not have any scheduled actions for this instance. \n- CREATING The managed instance group is creating this instance. If the group fails to create this instance, it will try again until it is successful. \n- CREATING_WITHOUT_RETRIES The managed instance group is attempting to create this instance only once. If the group fails to create this instance, it does not try again and the group's targetSize value is decreased instead. \n- RECREATING The managed instance group is recreating this instance. \n- DELETING The managed instance group is permanently deleting this instance. \n- ABANDONING The managed instance group is abandoning this instance. The instance will be removed from the instance group and from any target pools that are associated with this group. \n- RESTARTING The managed instance group is restarting the instance. \n- REFRESHING The managed instance group is applying configuration changes to the instance without stopping it. For example, the group can update the target pool list for an instance without stopping that instance. \n- VERIFYING The managed instance group has created the instance and it is in the process of being verified.", + "enum": [ + "ABANDONING", + "CREATING", + "CREATING_WITHOUT_RETRIES", + "DELETING", + "NONE", + "RECREATING", + "REFRESHING", + "RESTARTING", + "VERIFYING" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "id": { + "description": "[Output only] The unique identifier for this resource. This field is empty when instance does not exist.", + "format": "uint64", + "type": "string" + }, + "instance": { + "description": "[Output Only] The URL of the instance. The URL can exist even if the instance has not yet been created.", + "type": "string" + }, + "instanceStatus": { + "description": "[Output Only] The status of the instance. This field is empty when the instance does not exist.", + "enum": [ + "PROVISIONING", + "RUNNING", + "STAGING", + "STOPPED", + "STOPPING", + "SUSPENDED", + "SUSPENDING", + "TERMINATED" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "lastAttempt": { + "$ref": "ManagedInstanceLastAttempt", + "description": "[Output Only] Information about the last attempt to create or delete the instance." + }, + "version": { + "$ref": "ManagedInstanceVersion", + "description": "[Output Only] Intended version of this instance." + } + }, + "type": "object" + }, + "ManagedInstanceLastAttempt": { + "id": "ManagedInstanceLastAttempt", + "properties": { + "errors": { + "description": "[Output Only] Encountered errors during the last attempt to create or delete the instance.", + "properties": { + "errors": { + "description": "[Output Only] The array of errors encountered while processing this operation.", + "items": { + "properties": { + "code": { + "description": "[Output Only] The error type identifier for this error.", + "type": "string" + }, + "location": { + "description": "[Output Only] Indicates the field in the request that caused the error. This property is optional.", + "type": "string" + }, + "message": { + "description": "[Output Only] An optional, human-readable error message.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "ManagedInstanceVersion": { + "id": "ManagedInstanceVersion", + "properties": { + "instanceTemplate": { + "description": "[Output Only] The intended template of the instance. This field is empty when current_action is one of { DELETING, ABANDONING }.", + "type": "string" + }, + "name": { + "description": "[Output Only] Name of the version.", + "type": "string" + } + }, + "type": "object" + }, + "Metadata": { + "description": "A metadata key/value entry.", + "id": "Metadata", + "properties": { + "fingerprint": { + "description": "Specifies a fingerprint for this request, which is essentially a hash of the metadata's contents and used for optimistic locking. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update metadata. You must always provide an up-to-date fingerprint hash in order to update or change metadata.", + "format": "byte", + "type": "string" + }, + "items": { + "description": "Array of key/value pairs. The total size of all keys and values must be less than 512 KB.", + "items": { + "properties": { + "key": { + "annotations": { + "required": [ + "compute.instances.insert", + "compute.projects.setCommonInstanceMetadata" + ] + }, + "description": "Key for the metadata entry. Keys must conform to the following regexp: [a-zA-Z0-9-_]+, and be less than 128 bytes in length. This is reflected as part of a URL in the metadata server. Additionally, to avoid ambiguity, keys must not conflict with any other metadata keys for the project.", + "pattern": "[a-zA-Z0-9-_]{1,128}", + "type": "string" + }, + "value": { + "annotations": { + "required": [ + "compute.instances.insert", + "compute.projects.setCommonInstanceMetadata" + ] + }, + "description": "Value for the metadata entry. These are free-form strings, and only have meaning as interpreted by the image running in the instance. The only restriction placed on values is that their size must be less than or equal to 262144 bytes (256 KiB).", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "kind": { + "default": "compute#metadata", + "description": "[Output Only] Type of the resource. Always compute#metadata for metadata.", + "type": "string" + } + }, + "type": "object" + }, + "NamedPort": { + "description": "The named port. For example: .", + "id": "NamedPort", + "properties": { + "name": { + "description": "The name for this named port. The name must be 1-63 characters long, and comply with RFC1035.", + "type": "string" + }, + "port": { + "description": "The port number, which can be a value between 1 and 65535.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "Network": { + "description": "Represents a Network resource. Read Networks and Firewalls for more information. (== resource_for v1.networks ==) (== resource_for beta.networks ==)", + "id": "Network", + "properties": { + "IPv4Range": { + "description": "The range of internal addresses that are legal on this network. This range is a CIDR specification, for example: 192.168.0.0/16. Provided by the client when the network is created.", + "pattern": "[0-9]{1,3}(?:\\.[0-9]{1,3}){3}/[0-9]{1,2}", + "type": "string" + }, + "autoCreateSubnetworks": { + "description": "When set to true, the network is created in \"auto subnet mode\". When set to false, the network is in \"custom subnet mode\".\n\nIn \"auto subnet mode\", a newly created network is assigned the default CIDR of 10.128.0.0/9 and it automatically creates one subnetwork per region.", + "type": "boolean" + }, + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "description": { + "description": "An optional description of this resource. Provide this property when you create the resource.", + "type": "string" + }, + "gatewayIPv4": { + "description": "A gateway address for default routing to other networks. This value is read only and is selected by the Google Compute Engine, typically as the first usable address in the IPv4Range.", + "pattern": "[0-9]{1,3}(?:\\.[0-9]{1,3}){3}", + "type": "string" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64", + "type": "string" + }, + "kind": { + "default": "compute#network", + "description": "[Output Only] Type of the resource. Always compute#network for networks.", + "type": "string" + }, + "name": { + "annotations": { + "required": [ + "compute.networks.insert" + ] + }, + "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "peerings": { + "description": "[Output Only] List of network peerings for the resource.", + "items": { + "$ref": "NetworkPeering" + }, + "type": "array" + }, + "routingConfig": { + "$ref": "NetworkRoutingConfig", + "description": "The network-level routing configuration for this network. Used by Cloud Router to determine what type of network-wide routing behavior to enforce." + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + }, + "subnetworks": { + "description": "[Output Only] Server-defined fully-qualified URLs for all subnetworks in this network.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "NetworkInterface": { + "description": "A network interface resource attached to an instance.", + "id": "NetworkInterface", + "properties": { + "accessConfigs": { + "description": "An array of configurations for this interface. Currently, only one access config, ONE_TO_ONE_NAT, is supported. If there are no accessConfigs specified, then this instance will have no external internet access.", + "items": { + "$ref": "AccessConfig" + }, + "type": "array" + }, + "aliasIpRanges": { + "description": "An array of alias IP ranges for this network interface. Can only be specified for network interfaces on subnet-mode networks.", + "items": { + "$ref": "AliasIpRange" + }, + "type": "array" + }, + "fingerprint": { + "description": "Fingerprint hash of contents stored in this network interface. This field will be ignored when inserting an Instance or adding a NetworkInterface. An up-to-date fingerprint must be provided in order to update the NetworkInterface.", + "format": "byte", + "type": "string" + }, + "kind": { + "default": "compute#networkInterface", + "description": "[Output Only] Type of the resource. Always compute#networkInterface for network interfaces.", + "type": "string" + }, + "name": { + "description": "[Output Only] The name of the network interface, generated by the server. For network devices, these are eth0, eth1, etc.", + "type": "string" + }, + "network": { + "description": "URL of the network resource for this instance. When creating an instance, if neither the network nor the subnetwork is specified, the default network global/networks/default is used; if the network is not specified but the subnetwork is specified, the network is inferred.\n\nThis field is optional when creating a firewall rule. If not specified when creating a firewall rule, the default network global/networks/default is used.\n\nIf you specify this property, you can specify the network as a full or partial URL. For example, the following are all valid URLs: \n- https://www.googleapis.com/compute/v1/projects/project/global/networks/network \n- projects/project/global/networks/network \n- global/networks/default", + "type": "string" + }, + "networkIP": { + "description": "An IPv4 internal network address to assign to the instance for this network interface. If not specified by the user, an unused internal IP is assigned by the system.", + "type": "string" + }, + "subnetwork": { + "description": "The URL of the Subnetwork resource for this instance. If the network resource is in legacy mode, do not provide this property. If the network is in auto subnet mode, providing the subnetwork is optional. If the network is in custom subnet mode, then this field should be specified. If you specify this property, you can specify the subnetwork as a full or partial URL. For example, the following are all valid URLs: \n- https://www.googleapis.com/compute/v1/projects/project/regions/region/subnetworks/subnetwork \n- regions/region/subnetworks/subnetwork", + "type": "string" + } + }, + "type": "object" + }, + "NetworkList": { + "description": "Contains a list of networks.", + "id": "NetworkList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of Network resources.", + "items": { + "$ref": "Network" + }, + "type": "array" + }, + "kind": { + "default": "compute#networkList", + "description": "[Output Only] Type of resource. Always compute#networkList for lists of networks.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "NetworkPeering": { + "description": "A network peering attached to a network resource. The message includes the peering name, peer network, peering state, and a flag indicating whether Google Compute Engine should automatically create routes for the peering.", + "id": "NetworkPeering", + "properties": { + "autoCreateRoutes": { + "description": "Whether full mesh connectivity is created and managed automatically. When it is set to true, Google Compute Engine will automatically create and manage the routes between two networks when the state is ACTIVE. Otherwise, user needs to create routes manually to route packets to peer network.", + "type": "boolean" + }, + "name": { + "description": "Name of this peering. Provided by the client when the peering is created. The name must comply with RFC1035. Specifically, the name must be 1-63 characters long and match regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all the following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "type": "string" + }, + "network": { + "description": "The URL of the peer network. It can be either full URL or partial URL. The peer network may belong to a different project. If the partial URL does not contain project, it is assumed that the peer network is in the same project as the current network.", + "type": "string" + }, + "state": { + "description": "[Output Only] State for the peering.", + "enum": [ + "ACTIVE", + "INACTIVE" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "stateDetails": { + "description": "[Output Only] Details about the current state of the peering.", + "type": "string" + } + }, + "type": "object" + }, + "NetworkRoutingConfig": { + "description": "A routing configuration attached to a network resource. The message includes the list of routers associated with the network, and a flag indicating the type of routing behavior to enforce network-wide.", + "id": "NetworkRoutingConfig", + "properties": { + "routingMode": { + "description": "The network-wide routing mode to use. If set to REGIONAL, this network's cloud routers will only advertise routes with subnetworks of this network in the same region as the router. If set to GLOBAL, this network's cloud routers will advertise routes with all subnetworks of this network, across regions.", + "enum": [ + "GLOBAL", + "REGIONAL" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "NetworksAddPeeringRequest": { + "id": "NetworksAddPeeringRequest", + "properties": { + "autoCreateRoutes": { + "description": "Whether Google Compute Engine manages the routes automatically.", + "type": "boolean" + }, + "name": { + "annotations": { + "required": [ + "compute.networks.addPeering" + ] + }, + "description": "Name of the peering, which should conform to RFC1035.", + "type": "string" + }, + "peerNetwork": { + "description": "URL of the peer network. It can be either full URL or partial URL. The peer network may belong to a different project. If the partial URL does not contain project, it is assumed that the peer network is in the same project as the current network.", + "type": "string" + } + }, + "type": "object" + }, + "NetworksRemovePeeringRequest": { + "id": "NetworksRemovePeeringRequest", + "properties": { + "name": { + "description": "Name of the peering, which should conform to RFC1035.", + "type": "string" + } + }, + "type": "object" + }, + "Operation": { + "description": "An Operation resource, used to manage asynchronous API requests. (== resource_for v1.globalOperations ==) (== resource_for beta.globalOperations ==) (== resource_for v1.regionOperations ==) (== resource_for beta.regionOperations ==) (== resource_for v1.zoneOperations ==) (== resource_for beta.zoneOperations ==)", + "id": "Operation", + "properties": { + "clientOperationId": { + "description": "[Output Only] Reserved for future use.", + "type": "string" + }, + "creationTimestamp": { + "description": "[Deprecated] This field is deprecated.", + "type": "string" + }, + "description": { + "description": "[Output Only] A textual description of the operation, which is set when the operation is created.", + "type": "string" + }, + "endTime": { + "description": "[Output Only] The time that this operation was completed. This value is in RFC3339 text format.", + "type": "string" + }, + "error": { + "description": "[Output Only] If errors are generated during processing of the operation, this field will be populated.", + "properties": { + "errors": { + "description": "[Output Only] The array of errors encountered while processing this operation.", + "items": { + "properties": { + "code": { + "description": "[Output Only] The error type identifier for this error.", + "type": "string" + }, + "location": { + "description": "[Output Only] Indicates the field in the request that caused the error. This property is optional.", + "type": "string" + }, + "message": { + "description": "[Output Only] An optional, human-readable error message.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + } + }, + "type": "object" + }, + "httpErrorMessage": { + "description": "[Output Only] If the operation fails, this field contains the HTTP error message that was returned, such as NOT FOUND.", + "type": "string" + }, + "httpErrorStatusCode": { + "description": "[Output Only] If the operation fails, this field contains the HTTP error status code that was returned. For example, a 404 means the resource was not found.", + "format": "int32", + "type": "integer" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64", + "type": "string" + }, + "insertTime": { + "description": "[Output Only] The time that this operation was requested. This value is in RFC3339 text format.", + "type": "string" + }, + "kind": { + "default": "compute#operation", + "description": "[Output Only] Type of the resource. Always compute#operation for Operation resources.", + "type": "string" + }, + "name": { + "description": "[Output Only] Name of the resource.", + "type": "string" + }, + "operationType": { + "description": "[Output Only] The type of operation, such as insert, update, or delete, and so on.", + "type": "string" + }, + "progress": { + "description": "[Output Only] An optional progress indicator that ranges from 0 to 100. There is no requirement that this be linear or support any granularity of operations. This should not be used to guess when the operation will be complete. This number should monotonically increase as the operation progresses.", + "format": "int32", + "type": "integer" + }, + "region": { + "description": "[Output Only] The URL of the region where the operation resides. Only available when performing regional operations. You must specify this field as part of the HTTP request URL. It is not settable as a field in the request body.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + }, + "startTime": { + "description": "[Output Only] The time that this operation was started by the server. This value is in RFC3339 text format.", + "type": "string" + }, + "status": { + "description": "[Output Only] The status of the operation, which can be one of the following: PENDING, RUNNING, or DONE.", + "enum": [ + "DONE", + "PENDING", + "RUNNING" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, + "statusMessage": { + "description": "[Output Only] An optional textual description of the current status of the operation.", + "type": "string" + }, + "targetId": { + "description": "[Output Only] The unique target ID, which identifies a specific incarnation of the target resource.", + "format": "uint64", + "type": "string" + }, + "targetLink": { + "description": "[Output Only] The URL of the resource that the operation modifies. For operations related to creating a snapshot, this points to the persistent disk that the snapshot was created from.", + "type": "string" + }, + "user": { + "description": "[Output Only] User who requested the operation, for example: user@example.com.", + "type": "string" + }, + "warnings": { + "description": "[Output Only] If warning messages are generated during processing of the operation, this field will be populated.", + "items": { + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "zone": { + "description": "[Output Only] The URL of the zone where the operation resides. Only available when performing per-zone operations. You must specify this field as part of the HTTP request URL. It is not settable as a field in the request body.", + "type": "string" + } + }, + "type": "object" + }, + "OperationAggregatedList": { + "id": "OperationAggregatedList", + "properties": { + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "type": "string" + }, + "items": { + "additionalProperties": { + "$ref": "OperationsScopedList", + "description": "[Output Only] Name of the scope containing this set of operations." + }, + "description": "[Output Only] A map of scoped operation lists.", + "type": "object" + }, + "kind": { + "default": "compute#operationAggregatedList", + "description": "[Output Only] Type of resource. Always compute#operationAggregatedList for aggregated lists of operations.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "OperationList": { + "description": "Contains a list of Operation resources.", + "id": "OperationList", + "properties": { + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "type": "string" + }, + "items": { + "description": "[Output Only] A list of Operation resources.", + "items": { + "$ref": "Operation" + }, + "type": "array" + }, + "kind": { + "default": "compute#operationList", + "description": "[Output Only] Type of resource. Always compute#operations for Operations resource.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "OperationsScopedList": { + "id": "OperationsScopedList", + "properties": { + "operations": { + "description": "[Output Only] List of operations contained in this scope.", + "items": { + "$ref": "Operation" + }, + "type": "array" + }, + "warning": { + "description": "[Output Only] Informational warning which replaces the list of operations when the list is empty.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "PathMatcher": { + "description": "A matcher for the path portion of the URL. The BackendService from the longest-matched rule will serve the URL. If no rule was matched, the default service will be used.", + "id": "PathMatcher", + "properties": { + "defaultService": { + "description": "The full or partial URL to the BackendService resource. This will be used if none of the pathRules defined by this PathMatcher is matched by the URL's path portion. For example, the following are all valid URLs to a BackendService resource: \n- https://www.googleapis.com/compute/v1/projects/project/global/backendServices/backendService \n- compute/v1/projects/project/global/backendServices/backendService \n- global/backendServices/backendService", + "type": "string" + }, + "description": { + "description": "An optional description of this resource. Provide this property when you create the resource.", + "type": "string" + }, + "name": { + "description": "The name to which this PathMatcher is referred by the HostRule.", + "type": "string" + }, + "pathRules": { + "description": "The list of path rules.", + "items": { + "$ref": "PathRule" + }, + "type": "array" + } + }, + "type": "object" + }, + "PathRule": { + "description": "A path-matching rule for a URL. If matched, will use the specified BackendService to handle the traffic arriving at this URL.", + "id": "PathRule", + "properties": { + "paths": { + "description": "The list of path patterns to match. Each must start with / and the only place a * is allowed is at the end following a /. The string fed to the path matcher does not include any text after the first ? or #, and those chars are not allowed here.", + "items": { + "type": "string" + }, + "type": "array" + }, + "service": { + "description": "The URL of the BackendService resource if this rule is matched.", + "type": "string" + } + }, + "type": "object" + }, + "Policy": { + "description": "Defines an Identity and Access Management (IAM) policy. It is used to specify access control policies for Cloud Platform resources.\n\n\n\nA `Policy` consists of a list of `bindings`. A `Binding` binds a list of `members` to a `role`, where the members can be user accounts, Google groups, Google domains, and service accounts. A `role` is a named list of permissions defined by IAM.\n\n**Example**\n\n{ \"bindings\": [ { \"role\": \"roles/owner\", \"members\": [ \"user:mike@example.com\", \"group:admins@example.com\", \"domain:google.com\", \"serviceAccount:my-other-app@appspot.gserviceaccount.com\", ] }, { \"role\": \"roles/viewer\", \"members\": [\"user:sean@example.com\"] } ] }\n\nFor a description of IAM and its features, see the [IAM developer's guide](https://cloud.google.com/iam/docs).", + "id": "Policy", + "properties": { + "auditConfigs": { + "description": "Specifies cloud audit logging configuration for this policy.", + "items": { + "$ref": "AuditConfig" + }, + "type": "array" + }, + "bindings": { + "description": "Associates a list of `members` to a `role`. `bindings` with no members will result in an error.", + "items": { + "$ref": "Binding" + }, + "type": "array" + }, + "etag": { + "description": "`etag` is used for optimistic concurrency control as a way to help prevent simultaneous updates of a policy from overwriting each other. It is strongly suggested that systems make use of the `etag` in the read-modify-write cycle to perform policy updates in order to avoid race conditions: An `etag` is returned in the response to `getIamPolicy`, and systems are expected to put that etag in the request to `setIamPolicy` to ensure that their change will be applied to the same version of the policy.\n\nIf no `etag` is provided in the call to `setIamPolicy`, then the existing policy is overwritten blindly.", + "format": "byte", + "type": "string" + }, + "iamOwned": { + "description": "", + "type": "boolean" + }, + "rules": { + "description": "If more than one rule is specified, the rules are applied in the following manner: - All matching LOG rules are always applied. - If any DENY/DENY_WITH_LOG rule matches, permission is denied. Logging will be applied if one or more matching rule requires logging. - Otherwise, if any ALLOW/ALLOW_WITH_LOG rule matches, permission is granted. Logging will be applied if one or more matching rule requires logging. - Otherwise, if no rule applies, permission is denied.", + "items": { + "$ref": "Rule" + }, + "type": "array" + }, + "version": { + "description": "Deprecated.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "Project": { + "description": "A Project resource. For an overview of projects, see Cloud Platform Resource Hierarchy. (== resource_for v1.projects ==) (== resource_for beta.projects ==)", + "id": "Project", + "properties": { + "commonInstanceMetadata": { + "$ref": "Metadata", + "description": "Metadata key/value pairs available to all instances contained in this project. See Custom metadata for more information." + }, + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "defaultNetworkTier": { + "description": "This signifies the default network tier used for configuring resources of the project and can only take the following values: PREMIUM, STANDARD. Initially the default network tier is PREMIUM.", + "enum": [ + "PREMIUM", + "STANDARD" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "defaultServiceAccount": { + "description": "[Output Only] Default service account used by VMs running in this project.", + "type": "string" + }, + "description": { + "description": "An optional textual description of the resource.", + "type": "string" + }, + "enabledFeatures": { + "description": "Restricted features enabled for use on this project.", + "items": { + "type": "string" + }, + "type": "array" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server. This is not the project ID, and is just a unique ID used by Compute Engine to identify resources.", + "format": "uint64", + "type": "string" + }, + "kind": { + "default": "compute#project", + "description": "[Output Only] Type of the resource. Always compute#project for projects.", + "type": "string" + }, + "name": { + "description": "The project ID. For example: my-example-project. Use the project ID to make requests to Compute Engine.", + "type": "string" + }, + "quotas": { + "description": "[Output Only] Quotas assigned to this project.", + "items": { + "$ref": "Quota" + }, + "type": "array" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + }, + "usageExportLocation": { + "$ref": "UsageExportLocation", + "description": "The naming prefix for daily usage reports and the Google Cloud Storage bucket where they are stored." + }, + "xpnProjectStatus": { + "description": "[Output Only] The role this project has in a shared VPC configuration. Currently only HOST projects are differentiated.", + "enum": [ + "HOST", + "UNSPECIFIED_XPN_PROJECT_STATUS" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "ProjectsDisableXpnResourceRequest": { + "id": "ProjectsDisableXpnResourceRequest", + "properties": { + "xpnResource": { + "$ref": "XpnResourceId", + "description": "Service resource (a.k.a service project) ID." + } + }, + "type": "object" + }, + "ProjectsEnableXpnResourceRequest": { + "id": "ProjectsEnableXpnResourceRequest", + "properties": { + "xpnResource": { + "$ref": "XpnResourceId", + "description": "Service resource (a.k.a service project) ID." + } + }, + "type": "object" + }, + "ProjectsGetXpnResources": { + "id": "ProjectsGetXpnResources", + "properties": { + "kind": { + "default": "compute#projectsGetXpnResources", + "description": "[Output Only] Type of resource. Always compute#projectsGetXpnResources for lists of service resources (a.k.a service projects)", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "resources": { + "description": "Service resources (a.k.a service projects) attached to this project as their shared VPC host.", + "items": { + "$ref": "XpnResourceId" + }, + "type": "array" + } + }, + "type": "object" + }, + "ProjectsListXpnHostsRequest": { + "id": "ProjectsListXpnHostsRequest", + "properties": { + "organization": { + "description": "Optional organization ID managed by Cloud Resource Manager, for which to list shared VPC host projects. If not specified, the organization will be inferred from the project.", + "type": "string" + } + }, + "type": "object" + }, + "ProjectsSetDefaultNetworkTierRequest": { + "id": "ProjectsSetDefaultNetworkTierRequest", + "properties": { + "networkTier": { + "description": "Default network tier to be set.", + "enum": [ + "PREMIUM", + "STANDARD" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "Quota": { + "description": "A quotas entry.", + "id": "Quota", + "properties": { + "limit": { + "description": "[Output Only] Quota limit for this metric.", + "format": "double", + "type": "number" + }, + "metric": { + "description": "[Output Only] Name of the quota metric.", + "enum": [ + "AUTOSCALERS", + "BACKEND_BUCKETS", + "BACKEND_SERVICES", + "COMMITMENTS", + "CPUS", + "CPUS_ALL_REGIONS", + "DISKS_TOTAL_GB", + "FIREWALLS", + "FORWARDING_RULES", + "HEALTH_CHECKS", + "IMAGES", + "INSTANCES", + "INSTANCE_GROUPS", + "INSTANCE_GROUP_MANAGERS", + "INSTANCE_TEMPLATES", + "INTERCONNECTS", + "INTERNAL_ADDRESSES", + "IN_USE_ADDRESSES", + "LOCAL_SSD_TOTAL_GB", + "NETWORKS", + "NVIDIA_K80_GPUS", + "NVIDIA_P100_GPUS", + "NVIDIA_V100_GPUS", + "PREEMPTIBLE_CPUS", + "PREEMPTIBLE_LOCAL_SSD_GB", + "PREEMPTIBLE_NVIDIA_K80_GPUS", + "PREEMPTIBLE_NVIDIA_P100_GPUS", + "REGIONAL_AUTOSCALERS", + "REGIONAL_INSTANCE_GROUP_MANAGERS", + "ROUTERS", + "ROUTES", + "SECURITY_POLICIES", + "SECURITY_POLICY_RULES", + "SNAPSHOTS", + "SSD_TOTAL_GB", + "SSL_CERTIFICATES", + "STATIC_ADDRESSES", + "SUBNETWORKS", + "TARGET_HTTPS_PROXIES", + "TARGET_HTTP_PROXIES", + "TARGET_INSTANCES", + "TARGET_POOLS", + "TARGET_SSL_PROXIES", + "TARGET_TCP_PROXIES", + "TARGET_VPN_GATEWAYS", + "URL_MAPS", + "VPN_TUNNELS" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "usage": { + "description": "[Output Only] Current usage of this metric.", + "format": "double", + "type": "number" + } + }, + "type": "object" + }, + "Reference": { + "description": "Represents a reference to a resource.", + "id": "Reference", + "properties": { + "kind": { + "default": "compute#reference", + "description": "[Output Only] Type of the resource. Always compute#reference for references.", + "type": "string" + }, + "referenceType": { + "description": "A description of the reference type with no implied semantics. Possible values include: \n- MEMBER_OF", + "type": "string" + }, + "referrer": { + "description": "URL of the resource which refers to the target.", + "type": "string" + }, + "target": { + "description": "URL of the resource to which this reference points.", + "type": "string" + } + }, + "type": "object" + }, + "Region": { + "description": "Region resource. (== resource_for beta.regions ==) (== resource_for v1.regions ==)", + "id": "Region", + "properties": { + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "deprecated": { + "$ref": "DeprecationStatus", + "description": "[Output Only] The deprecation status associated with this region." + }, + "description": { + "description": "[Output Only] Textual description of the resource.", + "type": "string" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64", + "type": "string" + }, + "kind": { + "default": "compute#region", + "description": "[Output Only] Type of the resource. Always compute#region for regions.", + "type": "string" + }, + "name": { + "description": "[Output Only] Name of the resource.", + "type": "string" + }, + "quotas": { + "description": "[Output Only] Quotas assigned to this region.", + "items": { + "$ref": "Quota" + }, + "type": "array" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + }, + "status": { + "description": "[Output Only] Status of the region, either UP or DOWN.", + "enum": [ + "DOWN", + "UP" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "zones": { + "description": "[Output Only] A list of zones available in this region, in the form of resource URLs.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "RegionAutoscalerList": { + "description": "Contains a list of autoscalers.", + "id": "RegionAutoscalerList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of Autoscaler resources.", + "items": { + "$ref": "Autoscaler" + }, + "type": "array" + }, + "kind": { + "default": "compute#regionAutoscalerList", + "description": "Type of resource.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "RegionDiskTypeList": { + "id": "RegionDiskTypeList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of DiskType resources.", + "items": { + "$ref": "DiskType" + }, + "type": "array" + }, + "kind": { + "default": "compute#regionDiskTypeList", + "description": "[Output Only] Type of resource. Always compute#regionDiskTypeList for region disk types.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "RegionDisksResizeRequest": { + "id": "RegionDisksResizeRequest", + "properties": { + "sizeGb": { + "description": "The new size of the regional persistent disk, which is specified in GB.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "RegionInstanceGroupList": { + "description": "Contains a list of InstanceGroup resources.", + "id": "RegionInstanceGroupList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of InstanceGroup resources.", + "items": { + "$ref": "InstanceGroup" + }, + "type": "array" + }, + "kind": { + "default": "compute#regionInstanceGroupList", + "description": "The resource type.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "RegionInstanceGroupManagerList": { + "description": "Contains a list of managed instance groups.", + "id": "RegionInstanceGroupManagerList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of InstanceGroupManager resources.", + "items": { + "$ref": "InstanceGroupManager" + }, + "type": "array" + }, + "kind": { + "default": "compute#regionInstanceGroupManagerList", + "description": "[Output Only] The resource type, which is always compute#instanceGroupManagerList for a list of managed instance groups that exist in th regional scope.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "RegionInstanceGroupManagersAbandonInstancesRequest": { + "id": "RegionInstanceGroupManagersAbandonInstancesRequest", + "properties": { + "instances": { + "description": "The URLs of one or more instances to abandon. This can be a full URL or a partial URL, such as zones/[ZONE]/instances/[INSTANCE_NAME].", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "RegionInstanceGroupManagersDeleteInstancesRequest": { + "id": "RegionInstanceGroupManagersDeleteInstancesRequest", + "properties": { + "instances": { + "description": "The URLs of one or more instances to delete. This can be a full URL or a partial URL, such as zones/[ZONE]/instances/[INSTANCE_NAME].", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "RegionInstanceGroupManagersListInstancesResponse": { + "id": "RegionInstanceGroupManagersListInstancesResponse", + "properties": { + "managedInstances": { + "description": "List of managed instances.", + "items": { + "$ref": "ManagedInstance" + }, + "type": "array" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + } + }, + "type": "object" + }, + "RegionInstanceGroupManagersRecreateRequest": { + "id": "RegionInstanceGroupManagersRecreateRequest", + "properties": { + "instances": { + "description": "The URLs of one or more instances to recreate. This can be a full URL or a partial URL, such as zones/[ZONE]/instances/[INSTANCE_NAME].", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "RegionInstanceGroupManagersSetAutoHealingRequest": { + "id": "RegionInstanceGroupManagersSetAutoHealingRequest", + "properties": { + "autoHealingPolicies": { + "items": { + "$ref": "InstanceGroupManagerAutoHealingPolicy" + }, + "type": "array" + } + }, + "type": "object" + }, + "RegionInstanceGroupManagersSetTargetPoolsRequest": { + "id": "RegionInstanceGroupManagersSetTargetPoolsRequest", + "properties": { + "fingerprint": { + "description": "Fingerprint of the target pools information, which is a hash of the contents. This field is used for optimistic locking when you update the target pool entries. This field is optional.", + "format": "byte", + "type": "string" + }, + "targetPools": { + "description": "The URL of all TargetPool resources to which instances in the instanceGroup field are added. The target pools automatically apply to all of the instances in the managed instance group.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "RegionInstanceGroupManagersSetTemplateRequest": { + "id": "RegionInstanceGroupManagersSetTemplateRequest", + "properties": { + "instanceTemplate": { + "description": "URL of the InstanceTemplate resource from which all new instances will be created.", + "type": "string" + } + }, + "type": "object" + }, + "RegionInstanceGroupsListInstances": { + "id": "RegionInstanceGroupsListInstances", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of InstanceWithNamedPorts resources.", + "items": { + "$ref": "InstanceWithNamedPorts" + }, + "type": "array" + }, + "kind": { + "default": "compute#regionInstanceGroupsListInstances", + "description": "The resource type.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "RegionInstanceGroupsListInstancesRequest": { + "id": "RegionInstanceGroupsListInstancesRequest", + "properties": { + "instanceState": { + "description": "Instances in which state should be returned. Valid options are: 'ALL', 'RUNNING'. By default, it lists all instances.", + "enum": [ + "ALL", + "RUNNING" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "portName": { + "description": "Name of port user is interested in. It is optional. If it is set, only information about this ports will be returned. If it is not set, all the named ports will be returned. Always lists all instances.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + } + }, + "type": "object" + }, + "RegionInstanceGroupsSetNamedPortsRequest": { + "id": "RegionInstanceGroupsSetNamedPortsRequest", + "properties": { + "fingerprint": { + "description": "The fingerprint of the named ports information for this instance group. Use this optional property to prevent conflicts when multiple users change the named ports settings concurrently. Obtain the fingerprint with the instanceGroups.get method. Then, include the fingerprint in your request to ensure that you do not overwrite changes that were applied from another concurrent request.", + "format": "byte", + "type": "string" + }, + "namedPorts": { + "description": "The list of named ports to set for this instance group.", + "items": { + "$ref": "NamedPort" + }, + "type": "array" + } + }, + "type": "object" + }, + "RegionList": { + "description": "Contains a list of region resources.", + "id": "RegionList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of Region resources.", + "items": { + "$ref": "Region" + }, + "type": "array" + }, + "kind": { + "default": "compute#regionList", + "description": "[Output Only] Type of resource. Always compute#regionList for lists of regions.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "RegionSetLabelsRequest": { + "id": "RegionSetLabelsRequest", + "properties": { + "labelFingerprint": { + "description": "The fingerprint of the previous set of labels for this resource, used to detect conflicts. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update labels. You must always provide an up-to-date fingerprint hash in order to update or change labels. Make a get() request to the resource to get the latest fingerprint.", + "format": "byte", + "type": "string" + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "The labels to set for this resource.", + "type": "object" + } + }, + "type": "object" + }, + "ResourceCommitment": { + "description": "Commitment for a particular resource (a Commitment is composed of one or more of these).", + "id": "ResourceCommitment", + "properties": { + "amount": { + "description": "The amount of the resource purchased (in a type-dependent unit, such as bytes). For vCPUs, this can just be an integer. For memory, this must be provided in MB. Memory must be a multiple of 256 MB, with up to 6.5GB of memory per every vCPU.", + "format": "int64", + "type": "string" + }, + "type": { + "description": "Type of resource for which this commitment applies. Possible values are VCPU and MEMORY", + "enum": [ + "MEMORY", + "UNSPECIFIED", + "VCPU" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "ResourceGroupReference": { + "id": "ResourceGroupReference", + "properties": { + "group": { + "description": "A URI referencing one of the instance groups listed in the backend service.", + "type": "string" + } + }, + "type": "object" + }, + "Route": { + "description": "Represents a Route resource. A route specifies how certain packets should be handled by the network. Routes are associated with instances by tags and the set of routes for a particular instance is called its routing table.\n\nFor each packet leaving an instance, the system searches that instance's routing table for a single best matching route. Routes match packets by destination IP address, preferring smaller or more specific ranges over larger ones. If there is a tie, the system selects the route with the smallest priority value. If there is still a tie, it uses the layer three and four packet headers to select just one of the remaining matching routes. The packet is then forwarded as specified by the nextHop field of the winning route - either to another instance destination, an instance gateway, or a Google Compute Engine-operated gateway.\n\nPackets that do not match any route in the sending instance's routing table are dropped. (== resource_for beta.routes ==) (== resource_for v1.routes ==)", + "id": "Route", + "properties": { + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "description": { + "description": "An optional description of this resource. Provide this property when you create the resource.", + "type": "string" + }, + "destRange": { + "annotations": { + "required": [ + "compute.routes.insert" + ] + }, + "description": "The destination range of outgoing packets that this route applies to. Only IPv4 is supported.", + "type": "string" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64", + "type": "string" + }, + "kind": { + "default": "compute#route", + "description": "[Output Only] Type of this resource. Always compute#routes for Route resources.", + "type": "string" + }, + "name": { + "annotations": { + "required": [ + "compute.routes.insert" + ] + }, + "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "network": { + "annotations": { + "required": [ + "compute.routes.insert" + ] + }, + "description": "Fully-qualified URL of the network that this route applies to.", + "type": "string" + }, + "nextHopGateway": { + "description": "The URL to a gateway that should handle matching packets. You can only specify the internet gateway using a full or partial valid URL: projects/\u003cproject-id\u003e/global/gateways/default-internet-gateway", + "type": "string" + }, + "nextHopInstance": { + "description": "The URL to an instance that should handle matching packets. You can specify this as a full or partial URL. For example:\nhttps://www.googleapis.com/compute/v1/projects/project/zones/zone/instances/", + "type": "string" + }, + "nextHopIp": { + "description": "The network IP address of an instance that should handle matching packets. Only IPv4 is supported.", + "type": "string" + }, + "nextHopNetwork": { + "description": "The URL of the local network if it should handle matching packets.", + "type": "string" + }, + "nextHopPeering": { + "description": "[Output Only] The network peering name that should handle matching packets, which should conform to RFC1035.", + "type": "string" + }, + "nextHopVpnTunnel": { + "description": "The URL to a VpnTunnel that should handle matching packets.", + "type": "string" + }, + "priority": { + "annotations": { + "required": [ + "compute.routes.insert" + ] + }, + "description": "The priority of this route. Priority is used to break ties in cases where there is more than one matching route of equal prefix length. In the case of two routes with equal prefix length, the one with the lowest-numbered priority value wins. Default value is 1000. Valid range is 0 through 65535.", + "format": "uint32", + "type": "integer" + }, + "selfLink": { + "description": "[Output Only] Server-defined fully-qualified URL for this resource.", + "type": "string" + }, + "tags": { + "annotations": { + "required": [ + "compute.routes.insert" + ] + }, + "description": "A list of instance tags to which this route applies.", + "items": { + "type": "string" + }, + "type": "array" + }, + "warnings": { + "description": "[Output Only] If potential misconfigurations are detected for this route, this field will be populated with warning messages.", + "items": { + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + } + }, + "type": "object" + }, + "RouteList": { + "description": "Contains a list of Route resources.", + "id": "RouteList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of Route resources.", + "items": { + "$ref": "Route" + }, + "type": "array" + }, + "kind": { + "default": "compute#routeList", + "description": "Type of resource.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "Router": { + "description": "Router resource.", + "id": "Router", + "properties": { + "bgp": { + "$ref": "RouterBgp", + "description": "BGP information specific to this router." + }, + "bgpPeers": { + "description": "BGP information that needs to be configured into the routing stack to establish the BGP peering. It must specify peer ASN and either interface name, IP, or peer IP. Please refer to RFC4273.", + "items": { + "$ref": "RouterBgpPeer" + }, + "type": "array" + }, + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "description": { + "description": "An optional description of this resource. Provide this property when you create the resource.", + "type": "string" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64", + "type": "string" + }, + "interfaces": { + "description": "Router interfaces. Each interface requires either one linked resource (e.g. linkedVpnTunnel), or IP address and IP address range (e.g. ipRange), or both.", + "items": { + "$ref": "RouterInterface" + }, + "type": "array" + }, + "kind": { + "default": "compute#router", + "description": "[Output Only] Type of resource. Always compute#router for routers.", + "type": "string" + }, + "name": { + "annotations": { + "required": [ + "compute.routers.insert" + ] + }, + "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "network": { + "annotations": { + "required": [ + "compute.routers.insert" + ] + }, + "description": "URI of the network to which this router belongs.", + "type": "string" + }, + "region": { + "description": "[Output Only] URI of the region where the router resides. You must specify this field as part of the HTTP request URL. It is not settable as a field in the request body.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + } + }, + "type": "object" + }, + "RouterAdvertisedIpRange": { + "description": "Description-tagged IP ranges for the router to advertise.", + "id": "RouterAdvertisedIpRange", + "properties": { + "description": { + "description": "User-specified description for the IP range.", + "type": "string" + }, + "range": { + "description": "The IP range to advertise. The value must be a CIDR-formatted string.", + "type": "string" + } + }, + "type": "object" + }, + "RouterAggregatedList": { + "description": "Contains a list of routers.", + "id": "RouterAggregatedList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "additionalProperties": { + "$ref": "RoutersScopedList", + "description": "Name of the scope containing this set of routers." + }, + "description": "A list of Router resources.", + "type": "object" + }, + "kind": { + "default": "compute#routerAggregatedList", + "description": "Type of resource.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "RouterBgp": { + "id": "RouterBgp", + "properties": { + "advertiseMode": { + "description": "User-specified flag to indicate which mode to use for advertisement.", + "enum": [ + "CUSTOM", + "DEFAULT" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "advertisedGroups": { + "description": "User-specified list of prefix groups to advertise in custom mode. This field can only be populated if advertise_mode is CUSTOM and is advertised to all peers of the router. These groups will be advertised in addition to any specified prefixes. Leave this field blank to advertise no custom groups.", + "items": { + "enum": [ + "ALL_SUBNETS" + ], + "enumDescriptions": [ + "" + ], + "type": "string" + }, + "type": "array" + }, + "advertisedIpRanges": { + "description": "User-specified list of individual IP ranges to advertise in custom mode. This field can only be populated if advertise_mode is CUSTOM and is advertised to all peers of the router. These IP ranges will be advertised in addition to any specified groups. Leave this field blank to advertise no custom IP ranges.", + "items": { + "$ref": "RouterAdvertisedIpRange" + }, + "type": "array" + }, + "asn": { + "description": "Local BGP Autonomous System Number (ASN). Must be an RFC6996 private ASN, either 16-bit or 32-bit. The value will be fixed for this router resource. All VPN tunnels that link to this router will have the same local ASN.", + "format": "uint32", + "type": "integer" + } + }, + "type": "object" + }, + "RouterBgpPeer": { + "id": "RouterBgpPeer", + "properties": { + "advertiseMode": { + "description": "User-specified flag to indicate which mode to use for advertisement.", + "enum": [ + "CUSTOM", + "DEFAULT" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "advertisedGroups": { + "description": "User-specified list of prefix groups to advertise in custom mode. This field can only be populated if advertise_mode is CUSTOM and overrides the list defined for the router (in Bgp message). These groups will be advertised in addition to any specified prefixes. Leave this field blank to advertise no custom groups.", + "items": { + "enum": [ + "ALL_SUBNETS" + ], + "enumDescriptions": [ + "" + ], + "type": "string" + }, + "type": "array" + }, + "advertisedIpRanges": { + "description": "User-specified list of individual IP ranges to advertise in custom mode. This field can only be populated if advertise_mode is CUSTOM and overrides the list defined for the router (in Bgp message). These IP ranges will be advertised in addition to any specified groups. Leave this field blank to advertise no custom IP ranges.", + "items": { + "$ref": "RouterAdvertisedIpRange" + }, + "type": "array" + }, + "advertisedRoutePriority": { + "description": "The priority of routes advertised to this BGP peer. In the case where there is more than one matching route of maximum length, the routes with lowest priority value win.", + "format": "uint32", + "type": "integer" + }, + "interfaceName": { + "description": "Name of the interface the BGP peer is associated with.", + "type": "string" + }, + "ipAddress": { + "description": "IP address of the interface inside Google Cloud Platform. Only IPv4 is supported.", + "type": "string" + }, + "name": { + "description": "Name of this BGP peer. The name must be 1-63 characters long and comply with RFC1035.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "peerAsn": { + "description": "Peer BGP Autonomous System Number (ASN). For VPN use case, this value can be different for every tunnel.", + "format": "uint32", + "type": "integer" + }, + "peerIpAddress": { + "description": "IP address of the BGP interface outside Google cloud. Only IPv4 is supported.", + "type": "string" + } + }, + "type": "object" + }, + "RouterInterface": { + "id": "RouterInterface", + "properties": { + "ipRange": { + "description": "IP address and range of the interface. The IP range must be in the RFC3927 link-local IP space. The value must be a CIDR-formatted string, for example: 169.254.0.1/30. NOTE: Do not truncate the address as it represents the IP address of the interface.", + "type": "string" + }, + "linkedInterconnectAttachment": { + "description": "URI of the linked interconnect attachment. It must be in the same region as the router. Each interface can have at most one linked resource and it could either be a VPN Tunnel or an interconnect attachment.", + "type": "string" + }, + "linkedVpnTunnel": { + "description": "URI of the linked VPN tunnel. It must be in the same region as the router. Each interface can have at most one linked resource and it could either be a VPN Tunnel or an interconnect attachment.", + "type": "string" + }, + "name": { + "description": "Name of this interface entry. The name must be 1-63 characters long and comply with RFC1035.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + } + }, + "type": "object" + }, + "RouterList": { + "description": "Contains a list of Router resources.", + "id": "RouterList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of Router resources.", + "items": { + "$ref": "Router" + }, + "type": "array" + }, + "kind": { + "default": "compute#routerList", + "description": "[Output Only] Type of resource. Always compute#router for routers.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "RouterStatus": { + "id": "RouterStatus", + "properties": { + "bestRoutes": { + "description": "Best routes for this router's network.", + "items": { + "$ref": "Route" + }, + "type": "array" + }, + "bestRoutesForRouter": { + "description": "Best routes learned by this router.", + "items": { + "$ref": "Route" + }, + "type": "array" + }, + "bgpPeerStatus": { + "items": { + "$ref": "RouterStatusBgpPeerStatus" + }, + "type": "array" + }, + "network": { + "description": "URI of the network to which this router belongs.", + "type": "string" + } + }, + "type": "object" + }, + "RouterStatusBgpPeerStatus": { + "id": "RouterStatusBgpPeerStatus", + "properties": { + "advertisedRoutes": { + "description": "Routes that were advertised to the remote BGP peer", + "items": { + "$ref": "Route" + }, + "type": "array" + }, + "ipAddress": { + "description": "IP address of the local BGP interface.", + "type": "string" + }, + "linkedVpnTunnel": { + "description": "URL of the VPN tunnel that this BGP peer controls.", + "type": "string" + }, + "name": { + "description": "Name of this BGP peer. Unique within the Routers resource.", + "type": "string" + }, + "numLearnedRoutes": { + "description": "Number of routes learned from the remote BGP Peer.", + "format": "uint32", + "type": "integer" + }, + "peerIpAddress": { + "description": "IP address of the remote BGP interface.", + "type": "string" + }, + "state": { + "description": "BGP state as specified in RFC1771.", + "type": "string" + }, + "status": { + "description": "Status of the BGP peer: {UP, DOWN}", + "enum": [ + "DOWN", + "UNKNOWN", + "UP" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, + "uptime": { + "description": "Time this session has been up. Format: 14 years, 51 weeks, 6 days, 23 hours, 59 minutes, 59 seconds", + "type": "string" + }, + "uptimeSeconds": { + "description": "Time this session has been up, in seconds. Format: 145", + "type": "string" + } + }, + "type": "object" + }, + "RouterStatusResponse": { + "id": "RouterStatusResponse", + "properties": { + "kind": { + "default": "compute#routerStatusResponse", + "description": "Type of resource.", + "type": "string" + }, + "result": { + "$ref": "RouterStatus" + } + }, + "type": "object" + }, + "RoutersPreviewResponse": { + "id": "RoutersPreviewResponse", + "properties": { + "resource": { + "$ref": "Router", + "description": "Preview of given router." + } + }, + "type": "object" + }, + "RoutersScopedList": { + "id": "RoutersScopedList", + "properties": { + "routers": { + "description": "List of routers contained in this scope.", + "items": { + "$ref": "Router" + }, + "type": "array" + }, + "warning": { + "description": "Informational warning which replaces the list of routers when the list is empty.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "Rule": { + "description": "A rule to be applied in a Policy.", + "id": "Rule", + "properties": { + "action": { + "description": "Required", + "enum": [ + "ALLOW", + "ALLOW_WITH_LOG", + "DENY", + "DENY_WITH_LOG", + "LOG", + "NO_ACTION" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "conditions": { + "description": "Additional restrictions that must be met. All conditions must pass for the rule to match.", + "items": { + "$ref": "Condition" + }, + "type": "array" + }, + "description": { + "description": "Human-readable description of the rule.", + "type": "string" + }, + "ins": { + "description": "If one or more 'in' clauses are specified, the rule matches if the PRINCIPAL/AUTHORITY_SELECTOR is in at least one of these entries.", + "items": { + "type": "string" + }, + "type": "array" + }, + "logConfigs": { + "description": "The config returned to callers of tech.iam.IAM.CheckPolicy for any entries that match the LOG action.", + "items": { + "$ref": "LogConfig" + }, + "type": "array" + }, + "notIns": { + "description": "If one or more 'not_in' clauses are specified, the rule matches if the PRINCIPAL/AUTHORITY_SELECTOR is in none of the entries.", + "items": { + "type": "string" + }, + "type": "array" + }, + "permissions": { + "description": "A permission is a string of form '..' (e.g., 'storage.buckets.list'). A value of '*' matches all permissions, and a verb part of '*' (e.g., 'storage.buckets.*') matches all verbs.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "SSLHealthCheck": { + "id": "SSLHealthCheck", + "properties": { + "port": { + "description": "The TCP port number for the health check request. The default value is 443. Valid values are 1 through 65535.", + "format": "int32", + "type": "integer" + }, + "portName": { + "description": "Port name as defined in InstanceGroup#NamedPort#name. If both port and port_name are defined, port takes precedence.", + "type": "string" + }, + "proxyHeader": { + "description": "Specifies the type of proxy header to append before sending data to the backend, either NONE or PROXY_V1. The default is NONE.", + "enum": [ + "NONE", + "PROXY_V1" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "request": { + "description": "The application data to send once the SSL connection has been established (default value is empty). If both request and response are empty, the connection establishment alone will indicate health. The request data can only be ASCII.", + "type": "string" + }, + "response": { + "description": "The bytes to match against the beginning of the response data. If left empty (the default value), any response will indicate health. The response data can only be ASCII.", + "type": "string" + } + }, + "type": "object" + }, + "Scheduling": { + "description": "Sets the scheduling options for an Instance.", + "id": "Scheduling", + "properties": { + "automaticRestart": { + "description": "Specifies whether the instance should be automatically restarted if it is terminated by Compute Engine (not terminated by a user). You can only set the automatic restart option for standard instances. Preemptible instances cannot be automatically restarted.\n\nBy default, this is set to true so an instance is automatically restarted if it is terminated by Compute Engine.", + "type": "boolean" + }, + "onHostMaintenance": { + "description": "Defines the maintenance behavior for this instance. For standard instances, the default behavior is MIGRATE. For preemptible instances, the default and only possible behavior is TERMINATE. For more information, see Setting Instance Scheduling Options.", + "enum": [ + "MIGRATE", + "TERMINATE" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "preemptible": { + "description": "Defines whether the instance is preemptible. This can only be set during instance creation, it cannot be set or changed after the instance has been created.", + "type": "boolean" + } + }, + "type": "object" + }, + "SecurityPolicy": { + "description": "A security policy is comprised of one or more rules. It can also be associated with one or more 'targets'.", + "id": "SecurityPolicy", + "properties": { + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "description": { + "description": "An optional description of this resource. Provide this property when you create the resource.", + "type": "string" + }, + "fingerprint": { + "description": "Specifies a fingerprint for this resource, which is essentially a hash of the metadata's contents and used for optimistic locking. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update metadata. You must always provide an up-to-date fingerprint hash in order to update or change metadata.\n\nTo see the latest fingerprint, make get() request to the security policy.", + "format": "byte", + "type": "string" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64", + "type": "string" + }, + "kind": { + "default": "compute#securityPolicy", + "description": "[Output only] Type of the resource. Always compute#securityPolicyfor security policies", + "type": "string" + }, + "name": { + "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "rules": { + "description": "List of rules that belong to this policy. There must always be a default rule (rule with priority 2147483647 and match \"*\"). If no rules are provided when creating a security policy, a default rule with action \"allow\" will be added.", + "items": { + "$ref": "SecurityPolicyRule" + }, + "type": "array" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + } + }, + "type": "object" + }, + "SecurityPolicyList": { + "id": "SecurityPolicyList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of SecurityPolicy resources.", + "items": { + "$ref": "SecurityPolicy" + }, + "type": "array" + }, + "kind": { + "default": "compute#securityPolicyList", + "description": "[Output Only] Type of resource. Always compute#securityPolicyList for listsof securityPolicies", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "SecurityPolicyReference": { + "id": "SecurityPolicyReference", + "properties": { + "securityPolicy": { + "type": "string" + } + }, + "type": "object" + }, + "SecurityPolicyRule": { + "description": "Represents a rule that describes one or more match conditions along with the action to be taken when traffic matches this condition (allow or deny).", + "id": "SecurityPolicyRule", + "properties": { + "action": { + "description": "The Action to preform when the client connection triggers the rule. Can currently be either \"allow\" or \"deny()\" where valid values for status are 403, 404, and 502.", + "type": "string" + }, + "description": { + "description": "An optional description of this resource. Provide this property when you create the resource.", + "type": "string" + }, + "kind": { + "default": "compute#securityPolicyRule", + "description": "[Output only] Type of the resource. Always compute#securityPolicyRule for security policy rules", + "type": "string" + }, + "match": { + "$ref": "SecurityPolicyRuleMatcher", + "description": "A match condition that incoming traffic is evaluated against. If it evaluates to true, the corresponding ?action? is enforced." + }, + "preview": { + "description": "If set to true, the specified action is not enforced.", + "type": "boolean" + }, + "priority": { + "description": "An integer indicating the priority of a rule in the list. The priority must be a positive value between 0 and 2147483647. Rules are evaluated in the increasing order of priority.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "SecurityPolicyRuleMatcher": { + "description": "Represents a match condition that incoming traffic is evaluated against. Exactly one field must be specified.", + "id": "SecurityPolicyRuleMatcher", + "properties": { + "config": { + "$ref": "SecurityPolicyRuleMatcherConfig", + "description": "The configuration options available when specifying versioned_expr. This field must be specified if versioned_expr is specified and cannot be specified if versioned_expr is not specified." + }, + "srcIpRanges": { + "description": "CIDR IP address range.", + "items": { + "type": "string" + }, + "type": "array" + }, + "versionedExpr": { + "description": "Preconfigured versioned expression. If this field is specified, config must also be specified. Available preconfigured expressions along with their requirements are: SRC_IPS_V1 - must specify the corresponding src_ip_range field in config.", + "enum": [ + "SRC_IPS_V1", + "VERSIONED_EXPR_UNSPECIFIED" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "SecurityPolicyRuleMatcherConfig": { + "id": "SecurityPolicyRuleMatcherConfig", + "properties": { + "srcIpRanges": { + "description": "CIDR IP address range.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "SerialPortOutput": { + "description": "An instance's serial console output.", + "id": "SerialPortOutput", + "properties": { + "contents": { + "description": "[Output Only] The contents of the console output.", + "type": "string" + }, + "kind": { + "default": "compute#serialPortOutput", + "description": "[Output Only] Type of the resource. Always compute#serialPortOutput for serial port output.", + "type": "string" + }, + "next": { + "description": "[Output Only] The position of the next byte of content from the serial console output. Use this value in the next request as the start parameter.", + "format": "int64", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "start": { + "description": "The starting byte position of the output that was returned. This should match the start parameter sent with the request. If the serial console output exceeds the size of the buffer, older output will be overwritten by newer content and the start values will be mismatched.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "ServiceAccount": { + "description": "A service account.", + "id": "ServiceAccount", + "properties": { + "email": { + "description": "Email address of the service account.", + "type": "string" + }, + "scopes": { + "description": "The list of scopes to be made available for this service account.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "SignedUrlKey": { + "description": "Represents a customer-supplied Signing Key used by Cloud CDN Signed URLs", + "id": "SignedUrlKey", + "properties": { + "keyName": { + "description": "Name of the key. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "keyValue": { + "description": "128-bit key value used for signing the URL. The key value must be a valid RFC 4648 Section 5 base64url encoded string.", + "type": "string" + } + }, + "type": "object" + }, + "Snapshot": { + "description": "A persistent disk snapshot resource. (== resource_for beta.snapshots ==) (== resource_for v1.snapshots ==)", + "id": "Snapshot", + "properties": { + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "description": { + "description": "An optional description of this resource. Provide this property when you create the resource.", + "type": "string" + }, + "diskSizeGb": { + "description": "[Output Only] Size of the snapshot, specified in GB.", + "format": "int64", + "type": "string" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64", + "type": "string" + }, + "kind": { + "default": "compute#snapshot", + "description": "[Output Only] Type of the resource. Always compute#snapshot for Snapshot resources.", + "type": "string" + }, + "labelFingerprint": { + "description": "A fingerprint for the labels being applied to this snapshot, which is essentially a hash of the labels set used for optimistic locking. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update labels. You must always provide an up-to-date fingerprint hash in order to update or change labels.\n\nTo see the latest fingerprint, make a get() request to retrieve a snapshot.", + "format": "byte", + "type": "string" + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Labels to apply to this snapshot. These can be later modified by the setLabels method. Label values may be empty.", + "type": "object" + }, + "licenseCodes": { + "description": "Integer license codes indicating which licenses are attached to this snapshot.", + "items": { + "format": "int64", + "type": "string" + }, + "type": "array" + }, + "licenses": { + "description": "[Output Only] A list of public visible licenses that apply to this snapshot. This can be because the original image had licenses attached (such as a Windows image).", + "items": { + "type": "string" + }, + "type": "array" + }, + "name": { + "description": "Name of the resource; provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + }, + "snapshotEncryptionKey": { + "$ref": "CustomerEncryptionKey", + "description": "Encrypts the snapshot using a customer-supplied encryption key.\n\nAfter you encrypt a snapshot using a customer-supplied key, you must provide the same key if you use the image later For example, you must provide the encryption key when you create a disk from the encrypted snapshot in a future request.\n\nCustomer-supplied encryption keys do not protect access to metadata of the disk.\n\nIf you do not provide an encryption key when creating the snapshot, then the snapshot will be encrypted using an automatically generated key and you do not need to provide a key to use the snapshot later." + }, + "sourceDisk": { + "description": "[Output Only] The source disk used to create this snapshot.", + "type": "string" + }, + "sourceDiskEncryptionKey": { + "$ref": "CustomerEncryptionKey", + "description": "The customer-supplied encryption key of the source disk. Required if the source disk is protected by a customer-supplied encryption key." + }, + "sourceDiskId": { + "description": "[Output Only] The ID value of the disk used to create this snapshot. This value may be used to determine whether the snapshot was taken from the current or a previous instance of a given disk name.", + "type": "string" + }, + "status": { + "description": "[Output Only] The status of the snapshot. This can be CREATING, DELETING, FAILED, READY, or UPLOADING.", + "enum": [ + "CREATING", + "DELETING", + "FAILED", + "READY", + "UPLOADING" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "storageBytes": { + "description": "[Output Only] A size of the storage used by the snapshot. As snapshots share storage, this number is expected to change with snapshot creation/deletion.", + "format": "int64", + "type": "string" + }, + "storageBytesStatus": { + "description": "[Output Only] An indicator whether storageBytes is in a stable state or it is being adjusted as a result of shared storage reallocation. This status can either be UPDATING, meaning the size of the snapshot is being updated, or UP_TO_DATE, meaning the size of the snapshot is up-to-date.", + "enum": [ + "UPDATING", + "UP_TO_DATE" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "SnapshotList": { + "description": "Contains a list of Snapshot resources.", + "id": "SnapshotList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of Snapshot resources.", + "items": { + "$ref": "Snapshot" + }, + "type": "array" + }, + "kind": { + "default": "compute#snapshotList", + "description": "Type of resource.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "SourceInstanceParams": { + "description": "A specification of the parameters to use when creating the instance template from a source instance.", + "id": "SourceInstanceParams", + "properties": { + "diskConfigs": { + "description": "Attached disks configuration. If not provided, defaults are applied: For boot disk and any other R/W disks, new custom images will be created from each disk. For read-only disks, they will be attached in read-only mode. Local SSD disks will be created as blank volumes.", + "items": { + "$ref": "DiskInstantiationConfig" + }, + "type": "array" + } + }, + "type": "object" + }, + "SslCertificate": { + "description": "An SslCertificate resource. This resource provides a mechanism to upload an SSL key and certificate to the load balancer to serve secure connections from the user. (== resource_for beta.sslCertificates ==) (== resource_for v1.sslCertificates ==)", + "id": "SslCertificate", + "properties": { + "certificate": { + "description": "A local certificate file. The certificate must be in PEM format. The certificate chain must be no greater than 5 certs long. The chain must include at least one intermediate cert.", + "type": "string" + }, + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "description": { + "description": "An optional description of this resource. Provide this property when you create the resource.", + "type": "string" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64", + "type": "string" + }, + "kind": { + "default": "compute#sslCertificate", + "description": "[Output Only] Type of the resource. Always compute#sslCertificate for SSL certificates.", + "type": "string" + }, + "name": { + "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "privateKey": { + "description": "A write-only private key in PEM format. Only insert requests will include this field.", + "type": "string" + }, + "selfLink": { + "description": "[Output only] Server-defined URL for the resource.", + "type": "string" + } + }, + "type": "object" + }, + "SslCertificateList": { + "description": "Contains a list of SslCertificate resources.", + "id": "SslCertificateList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of SslCertificate resources.", + "items": { + "$ref": "SslCertificate" + }, + "type": "array" + }, + "kind": { + "default": "compute#sslCertificateList", + "description": "Type of resource.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "SslPoliciesList": { + "id": "SslPoliciesList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of SslPolicy resources.", + "items": { + "$ref": "SslPolicy" + }, + "type": "array" + }, + "kind": { + "default": "compute#sslPoliciesList", + "description": "[Output Only] Type of the resource. Always compute#sslPoliciesList for lists of sslPolicies.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "SslPoliciesListAvailableFeaturesResponse": { + "id": "SslPoliciesListAvailableFeaturesResponse", + "properties": { + "features": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "SslPolicy": { + "description": "A SSL policy specifies the server-side support for SSL features. This can be attached to a TargetHttpsProxy or a TargetSslProxy. This affects connections between clients and the HTTPS or SSL proxy load balancer. They do not affect the connection between the load balancers and the backends.", + "id": "SslPolicy", + "properties": { + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "customFeatures": { + "description": "List of features enabled when the selected profile is CUSTOM. The\n- method returns the set of features that can be specified in this list. This field must be empty if the profile is not CUSTOM.", + "items": { + "type": "string" + }, + "type": "array" + }, + "description": { + "description": "An optional description of this resource. Provide this property when you create the resource.", + "type": "string" + }, + "enabledFeatures": { + "description": "[Output Only] The list of features enabled in the SSL policy.", + "items": { + "type": "string" + }, + "type": "array" + }, + "fingerprint": { + "description": "Fingerprint of this resource. A hash of the contents stored in this object. This field is used in optimistic locking. This field will be ignored when inserting a SslPolicy. An up-to-date fingerprint must be provided in order to update the SslPolicy.", + "format": "byte", + "type": "string" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64", + "type": "string" + }, + "kind": { + "default": "compute#sslPolicy", + "description": "[Output only] Type of the resource. Always compute#sslPolicyfor SSL policies.", + "type": "string" + }, + "minTlsVersion": { + "description": "The minimum version of SSL protocol that can be used by the clients to establish a connection with the load balancer. This can be one of TLS_1_0, TLS_1_1, TLS_1_2, TLS_1_3.", + "enum": [ + "TLS_1_0", + "TLS_1_1", + "TLS_1_2", + "TLS_1_3" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ], + "type": "string" + }, + "name": { + "description": "Name of the resource. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "profile": { + "description": "Profile specifies the set of SSL features that can be used by the load balancer when negotiating SSL with clients. This can be one of COMPATIBLE, MODERN, RESTRICTED, or CUSTOM. If using CUSTOM, the set of SSL features to enable must be specified in the customFeatures field.", + "enum": [ + "COMPATIBLE", + "CUSTOM", + "MODERN", + "RESTRICTED" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ], + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + }, + "warnings": { + "description": "[Output Only] If potential misconfigurations are detected for this SSL policy, this field will be populated with warning messages.", + "items": { + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + } + }, + "type": "object" + }, + "SslPolicyReference": { + "id": "SslPolicyReference", + "properties": { + "sslPolicy": { + "description": "URL of the SSL policy resource. Set this to empty string to clear any existing SSL policy associated with the target proxy resource.", + "type": "string" + } + }, + "type": "object" + }, + "Subnetwork": { + "description": "A Subnetwork resource. (== resource_for beta.subnetworks ==) (== resource_for v1.subnetworks ==)", + "id": "Subnetwork", + "properties": { + "allowSubnetCidrRoutesOverlap": { + "description": "Whether this subnetwork can conflict with static routes. Setting this to true allows this subnetwork's primary and secondary ranges to conflict with routes that have already been configured on the corresponding network. Static routes will take precedence over the subnetwork route if the route prefix length is at least as large as the subnetwork prefix length.\n\nAlso, packets destined to IPs within subnetwork may contain private/sensitive data and are prevented from leaving the virtual network. Setting this field to true will disable this feature.\n\nThe default value is false and applies to all existing subnetworks and automatically created subnetworks.\n\nThis field cannot be set to true at resource creation time.", + "type": "boolean" + }, + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "description": { + "description": "An optional description of this resource. Provide this property when you create the resource. This field can be set only at resource creation time.", + "type": "string" + }, + "enableFlowLogs": { + "description": "Whether to enable flow logging for this subnetwork.", + "type": "boolean" + }, + "fingerprint": { + "description": "Fingerprint of this resource. A hash of the contents stored in this object. This field is used in optimistic locking. This field will be ignored when inserting a Subnetwork. An up-to-date fingerprint must be provided in order to update the Subnetwork.", + "format": "byte", + "type": "string" + }, + "gatewayAddress": { + "description": "[Output Only] The gateway address for default routes to reach destination addresses outside this subnetwork.", + "type": "string" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64", + "type": "string" + }, + "ipCidrRange": { + "description": "The range of internal addresses that are owned by this subnetwork. Provide this property when you create the subnetwork. For example, 10.0.0.0/8 or 192.168.0.0/16. Ranges must be unique and non-overlapping within a network. Only IPv4 is supported. This field can be set only at resource creation time.", + "type": "string" + }, + "kind": { + "default": "compute#subnetwork", + "description": "[Output Only] Type of the resource. Always compute#subnetwork for Subnetwork resources.", + "type": "string" + }, + "name": { + "description": "The name of the resource, provided by the client when initially creating the resource. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "network": { + "description": "The URL of the network to which this subnetwork belongs, provided by the client when initially creating the subnetwork. Only networks that are in the distributed mode can have subnetworks. This field can be set only at resource creation time.", + "type": "string" + }, + "privateIpGoogleAccess": { + "description": "Whether the VMs in this subnet can access Google services without assigned external IP addresses. This field can be both set at resource creation time and updated using setPrivateIpGoogleAccess.", + "type": "boolean" + }, + "region": { + "description": "URL of the region where the Subnetwork resides. This field can be set only at resource creation time.", + "type": "string" + }, + "secondaryIpRanges": { + "description": "An array of configurations for secondary IP ranges for VM instances contained in this subnetwork. The primary IP of such VM must belong to the primary ipCidrRange of the subnetwork. The alias IPs may belong to either primary or secondary ranges.", + "items": { + "$ref": "SubnetworkSecondaryRange" + }, + "type": "array" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + } + }, + "type": "object" + }, + "SubnetworkAggregatedList": { + "id": "SubnetworkAggregatedList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "additionalProperties": { + "$ref": "SubnetworksScopedList", + "description": "Name of the scope containing this set of Subnetworks." + }, + "description": "A list of SubnetworksScopedList resources.", + "type": "object" + }, + "kind": { + "default": "compute#subnetworkAggregatedList", + "description": "[Output Only] Type of resource. Always compute#subnetworkAggregatedList for aggregated lists of subnetworks.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "SubnetworkList": { + "description": "Contains a list of Subnetwork resources.", + "id": "SubnetworkList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of Subnetwork resources.", + "items": { + "$ref": "Subnetwork" + }, + "type": "array" + }, + "kind": { + "default": "compute#subnetworkList", + "description": "[Output Only] Type of resource. Always compute#subnetworkList for lists of subnetworks.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "SubnetworkSecondaryRange": { + "description": "Represents a secondary IP range of a subnetwork.", + "id": "SubnetworkSecondaryRange", + "properties": { + "ipCidrRange": { + "description": "The range of IP addresses belonging to this subnetwork secondary range. Provide this property when you create the subnetwork. Ranges must be unique and non-overlapping with all primary and secondary IP ranges within a network. Only IPv4 is supported.", + "type": "string" + }, + "rangeName": { + "description": "The name associated with this subnetwork secondary range, used when adding an alias IP range to a VM instance. The name must be 1-63 characters long, and comply with RFC1035. The name must be unique within the subnetwork.", + "type": "string" + } + }, + "type": "object" + }, + "SubnetworksExpandIpCidrRangeRequest": { + "id": "SubnetworksExpandIpCidrRangeRequest", + "properties": { + "ipCidrRange": { + "description": "The IP (in CIDR format or netmask) of internal addresses that are legal on this Subnetwork. This range should be disjoint from other subnetworks within this network. This range can only be larger than (i.e. a superset of) the range previously defined before the update.", + "type": "string" + } + }, + "type": "object" + }, + "SubnetworksScopedList": { + "id": "SubnetworksScopedList", + "properties": { + "subnetworks": { + "description": "List of subnetworks contained in this scope.", + "items": { + "$ref": "Subnetwork" + }, + "type": "array" + }, + "warning": { + "description": "An informational warning that appears when the list of addresses is empty.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "SubnetworksSetPrivateIpGoogleAccessRequest": { + "id": "SubnetworksSetPrivateIpGoogleAccessRequest", + "properties": { + "privateIpGoogleAccess": { + "type": "boolean" + } + }, + "type": "object" + }, + "TCPHealthCheck": { + "id": "TCPHealthCheck", + "properties": { + "port": { + "description": "The TCP port number for the health check request. The default value is 80. Valid values are 1 through 65535.", + "format": "int32", + "type": "integer" + }, + "portName": { + "description": "Port name as defined in InstanceGroup#NamedPort#name. If both port and port_name are defined, port takes precedence.", + "type": "string" + }, + "proxyHeader": { + "description": "Specifies the type of proxy header to append before sending data to the backend, either NONE or PROXY_V1. The default is NONE.", + "enum": [ + "NONE", + "PROXY_V1" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "request": { + "description": "The application data to send once the TCP connection has been established (default value is empty). If both request and response are empty, the connection establishment alone will indicate health. The request data can only be ASCII.", + "type": "string" + }, + "response": { + "description": "The bytes to match against the beginning of the response data. If left empty (the default value), any response will indicate health. The response data can only be ASCII.", + "type": "string" + } + }, + "type": "object" + }, + "Tags": { + "description": "A set of instance tags.", + "id": "Tags", + "properties": { + "fingerprint": { + "description": "Specifies a fingerprint for this request, which is essentially a hash of the metadata's contents and used for optimistic locking. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update metadata. You must always provide an up-to-date fingerprint hash in order to update or change metadata.\n\nTo see the latest fingerprint, make get() request to the instance.", + "format": "byte", + "type": "string" + }, + "items": { + "description": "An array of tags. Each tag must be 1-63 characters long, and comply with RFC1035.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "TargetHttpProxy": { + "description": "A TargetHttpProxy resource. This resource defines an HTTP proxy. (== resource_for beta.targetHttpProxies ==) (== resource_for v1.targetHttpProxies ==)", + "id": "TargetHttpProxy", + "properties": { + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "description": { + "description": "An optional description of this resource. Provide this property when you create the resource.", + "type": "string" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64", + "type": "string" + }, + "kind": { + "default": "compute#targetHttpProxy", + "description": "[Output Only] Type of resource. Always compute#targetHttpProxy for target HTTP proxies.", + "type": "string" + }, + "name": { + "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + }, + "urlMap": { + "description": "URL to the UrlMap resource that defines the mapping from URL to the BackendService.", + "type": "string" + } + }, + "type": "object" + }, + "TargetHttpProxyList": { + "description": "A list of TargetHttpProxy resources.", + "id": "TargetHttpProxyList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of TargetHttpProxy resources.", + "items": { + "$ref": "TargetHttpProxy" + }, + "type": "array" + }, + "kind": { + "default": "compute#targetHttpProxyList", + "description": "Type of resource. Always compute#targetHttpProxyList for lists of target HTTP proxies.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "TargetHttpsProxiesSetQuicOverrideRequest": { + "id": "TargetHttpsProxiesSetQuicOverrideRequest", + "properties": { + "quicOverride": { + "description": "QUIC policy for the TargetHttpsProxy resource.", + "enum": [ + "DISABLE", + "ENABLE", + "NONE" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "TargetHttpsProxiesSetSslCertificatesRequest": { + "id": "TargetHttpsProxiesSetSslCertificatesRequest", + "properties": { + "sslCertificates": { + "description": "New set of SslCertificate resources to associate with this TargetHttpsProxy resource. Currently exactly one SslCertificate resource must be specified.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "TargetHttpsProxy": { + "description": "A TargetHttpsProxy resource. This resource defines an HTTPS proxy. (== resource_for beta.targetHttpsProxies ==) (== resource_for v1.targetHttpsProxies ==)", + "id": "TargetHttpsProxy", + "properties": { + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "description": { + "description": "An optional description of this resource. Provide this property when you create the resource.", + "type": "string" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64", + "type": "string" + }, + "kind": { + "default": "compute#targetHttpsProxy", + "description": "[Output Only] Type of resource. Always compute#targetHttpsProxy for target HTTPS proxies.", + "type": "string" + }, + "name": { + "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "quicOverride": { + "description": "Specifies the QUIC override policy for this TargetHttpsProxy resource. This determines whether the load balancer will attempt to negotiate QUIC with clients or not. Can specify one of NONE, ENABLE, or DISABLE. Specify ENABLE to always enable QUIC, Enables QUIC when set to ENABLE, and disables QUIC when set to DISABLE. If NONE is specified, uses the QUIC policy with no user overrides, which is equivalent to DISABLE. Not specifying this field is equivalent to specifying NONE.", + "enum": [ + "DISABLE", + "ENABLE", + "NONE" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + }, + "sslCertificates": { + "description": "URLs to SslCertificate resources that are used to authenticate connections between users and the load balancer. Currently, exactly one SSL certificate must be specified.", + "items": { + "type": "string" + }, + "type": "array" + }, + "sslPolicy": { + "description": "URL of SslPolicy resource that will be associated with the TargetHttpsProxy resource. If not set, the TargetHttpsProxy resource will not have any SSL policy configured.", + "type": "string" + }, + "urlMap": { + "description": "A fully-qualified or valid partial URL to the UrlMap resource that defines the mapping from URL to the BackendService. For example, the following are all valid URLs for specifying a URL map: \n- https://www.googleapis.compute/v1/projects/project/global/urlMaps/url-map \n- projects/project/global/urlMaps/url-map \n- global/urlMaps/url-map", + "type": "string" + } + }, + "type": "object" + }, + "TargetHttpsProxyList": { + "description": "Contains a list of TargetHttpsProxy resources.", + "id": "TargetHttpsProxyList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of TargetHttpsProxy resources.", + "items": { + "$ref": "TargetHttpsProxy" + }, + "type": "array" + }, + "kind": { + "default": "compute#targetHttpsProxyList", + "description": "Type of resource. Always compute#targetHttpsProxyList for lists of target HTTPS proxies.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "TargetInstance": { + "description": "A TargetInstance resource. This resource defines an endpoint instance that terminates traffic of certain protocols. (== resource_for beta.targetInstances ==) (== resource_for v1.targetInstances ==)", + "id": "TargetInstance", + "properties": { + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "description": { + "description": "An optional description of this resource. Provide this property when you create the resource.", + "type": "string" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64", + "type": "string" + }, + "instance": { + "description": "A URL to the virtual machine instance that handles traffic for this target instance. When creating a target instance, you can provide the fully-qualified URL or a valid partial URL to the desired virtual machine. For example, the following are all valid URLs: \n- https://www.googleapis.com/compute/v1/projects/project/zones/zone/instances/instance \n- projects/project/zones/zone/instances/instance \n- zones/zone/instances/instance", + "type": "string" + }, + "kind": { + "default": "compute#targetInstance", + "description": "[Output Only] The type of the resource. Always compute#targetInstance for target instances.", + "type": "string" + }, + "name": { + "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "natPolicy": { + "description": "NAT option controlling how IPs are NAT'ed to the instance. Currently only NO_NAT (default value) is supported.", + "enum": [ + "NO_NAT" + ], + "enumDescriptions": [ + "" + ], + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + }, + "zone": { + "description": "[Output Only] URL of the zone where the target instance resides. You must specify this field as part of the HTTP request URL. It is not settable as a field in the request body.", + "type": "string" + } + }, + "type": "object" + }, + "TargetInstanceAggregatedList": { + "id": "TargetInstanceAggregatedList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "additionalProperties": { + "$ref": "TargetInstancesScopedList", + "description": "Name of the scope containing this set of target instances." + }, + "description": "A list of TargetInstance resources.", + "type": "object" + }, + "kind": { + "default": "compute#targetInstanceAggregatedList", + "description": "Type of resource.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "TargetInstanceList": { + "description": "Contains a list of TargetInstance resources.", + "id": "TargetInstanceList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of TargetInstance resources.", + "items": { + "$ref": "TargetInstance" + }, + "type": "array" + }, + "kind": { + "default": "compute#targetInstanceList", + "description": "Type of resource.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "TargetInstancesScopedList": { + "id": "TargetInstancesScopedList", + "properties": { + "targetInstances": { + "description": "List of target instances contained in this scope.", + "items": { + "$ref": "TargetInstance" + }, + "type": "array" + }, + "warning": { + "description": "Informational warning which replaces the list of addresses when the list is empty.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "TargetPool": { + "description": "A TargetPool resource. This resource defines a pool of instances, an associated HttpHealthCheck resource, and the fallback target pool. (== resource_for beta.targetPools ==) (== resource_for v1.targetPools ==)", + "id": "TargetPool", + "properties": { + "backupPool": { + "description": "This field is applicable only when the containing target pool is serving a forwarding rule as the primary pool, and its failoverRatio field is properly set to a value between [0, 1].\n\nbackupPool and failoverRatio together define the fallback behavior of the primary target pool: if the ratio of the healthy instances in the primary pool is at or below failoverRatio, traffic arriving at the load-balanced IP will be directed to the backup pool.\n\nIn case where failoverRatio and backupPool are not set, or all the instances in the backup pool are unhealthy, the traffic will be directed back to the primary pool in the \"force\" mode, where traffic will be spread to the healthy instances with the best effort, or to all instances when no instance is healthy.", + "type": "string" + }, + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "description": { + "description": "An optional description of this resource. Provide this property when you create the resource.", + "type": "string" + }, + "failoverRatio": { + "description": "This field is applicable only when the containing target pool is serving a forwarding rule as the primary pool (i.e., not as a backup pool to some other target pool). The value of the field must be in [0, 1].\n\nIf set, backupPool must also be set. They together define the fallback behavior of the primary target pool: if the ratio of the healthy instances in the primary pool is at or below this number, traffic arriving at the load-balanced IP will be directed to the backup pool.\n\nIn case where failoverRatio is not set or all the instances in the backup pool are unhealthy, the traffic will be directed back to the primary pool in the \"force\" mode, where traffic will be spread to the healthy instances with the best effort, or to all instances when no instance is healthy.", + "format": "float", + "type": "number" + }, + "healthChecks": { + "description": "The URL of the HttpHealthCheck resource. A member instance in this pool is considered healthy if and only if the health checks pass. An empty list means all member instances will be considered healthy at all times. Only HttpHealthChecks are supported. Only one health check may be specified.", + "items": { + "type": "string" + }, + "type": "array" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64", + "type": "string" + }, + "instances": { + "description": "A list of resource URLs to the virtual machine instances serving this pool. They must live in zones contained in the same region as this pool.", + "items": { + "type": "string" + }, + "type": "array" + }, + "kind": { + "default": "compute#targetPool", + "description": "[Output Only] Type of the resource. Always compute#targetPool for target pools.", + "type": "string" + }, + "name": { + "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "region": { + "description": "[Output Only] URL of the region where the target pool resides.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + }, + "sessionAffinity": { + "description": "Sesssion affinity option, must be one of the following values:\nNONE: Connections from the same client IP may go to any instance in the pool.\nCLIENT_IP: Connections from the same client IP will go to the same instance in the pool while that instance remains healthy.\nCLIENT_IP_PROTO: Connections from the same client IP with the same IP protocol will go to the same instance in the pool while that instance remains healthy.", + "enum": [ + "CLIENT_IP", + "CLIENT_IP_PORT_PROTO", + "CLIENT_IP_PROTO", + "GENERATED_COOKIE", + "NONE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "TargetPoolAggregatedList": { + "id": "TargetPoolAggregatedList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "additionalProperties": { + "$ref": "TargetPoolsScopedList", + "description": "Name of the scope containing this set of target pools." + }, + "description": "A list of TargetPool resources.", + "type": "object" + }, + "kind": { + "default": "compute#targetPoolAggregatedList", + "description": "[Output Only] Type of resource. Always compute#targetPoolAggregatedList for aggregated lists of target pools.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "TargetPoolInstanceHealth": { + "id": "TargetPoolInstanceHealth", + "properties": { + "healthStatus": { + "items": { + "$ref": "HealthStatus" + }, + "type": "array" + }, + "kind": { + "default": "compute#targetPoolInstanceHealth", + "description": "[Output Only] Type of resource. Always compute#targetPoolInstanceHealth when checking the health of an instance.", + "type": "string" + } + }, + "type": "object" + }, + "TargetPoolList": { + "description": "Contains a list of TargetPool resources.", + "id": "TargetPoolList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of TargetPool resources.", + "items": { + "$ref": "TargetPool" + }, + "type": "array" + }, + "kind": { + "default": "compute#targetPoolList", + "description": "[Output Only] Type of resource. Always compute#targetPoolList for lists of target pools.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "TargetPoolsAddHealthCheckRequest": { + "id": "TargetPoolsAddHealthCheckRequest", + "properties": { + "healthChecks": { + "description": "The HttpHealthCheck to add to the target pool.", + "items": { + "$ref": "HealthCheckReference" + }, + "type": "array" + } + }, + "type": "object" + }, + "TargetPoolsAddInstanceRequest": { + "id": "TargetPoolsAddInstanceRequest", + "properties": { + "instances": { + "description": "A full or partial URL to an instance to add to this target pool. This can be a full or partial URL. For example, the following are valid URLs: \n- https://www.googleapis.com/compute/v1/projects/project-id/zones/zone/instances/instance-name \n- projects/project-id/zones/zone/instances/instance-name \n- zones/zone/instances/instance-name", + "items": { + "$ref": "InstanceReference" + }, + "type": "array" + } + }, + "type": "object" + }, + "TargetPoolsRemoveHealthCheckRequest": { + "id": "TargetPoolsRemoveHealthCheckRequest", + "properties": { + "healthChecks": { + "description": "Health check URL to be removed. This can be a full or valid partial URL. For example, the following are valid URLs: \n- https://www.googleapis.com/compute/beta/projects/project/global/httpHealthChecks/health-check \n- projects/project/global/httpHealthChecks/health-check \n- global/httpHealthChecks/health-check", + "items": { + "$ref": "HealthCheckReference" + }, + "type": "array" + } + }, + "type": "object" + }, + "TargetPoolsRemoveInstanceRequest": { + "id": "TargetPoolsRemoveInstanceRequest", + "properties": { + "instances": { + "description": "URLs of the instances to be removed from target pool.", + "items": { + "$ref": "InstanceReference" + }, + "type": "array" + } + }, + "type": "object" + }, + "TargetPoolsScopedList": { + "id": "TargetPoolsScopedList", + "properties": { + "targetPools": { + "description": "List of target pools contained in this scope.", + "items": { + "$ref": "TargetPool" + }, + "type": "array" + }, + "warning": { + "description": "Informational warning which replaces the list of addresses when the list is empty.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "TargetReference": { + "id": "TargetReference", + "properties": { + "target": { + "type": "string" + } + }, + "type": "object" + }, + "TargetSslProxiesSetBackendServiceRequest": { + "id": "TargetSslProxiesSetBackendServiceRequest", + "properties": { + "service": { + "description": "The URL of the new BackendService resource for the targetSslProxy.", + "type": "string" + } + }, + "type": "object" + }, + "TargetSslProxiesSetProxyHeaderRequest": { + "id": "TargetSslProxiesSetProxyHeaderRequest", + "properties": { + "proxyHeader": { + "description": "The new type of proxy header to append before sending data to the backend. NONE or PROXY_V1 are allowed.", + "enum": [ + "NONE", + "PROXY_V1" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "TargetSslProxiesSetSslCertificatesRequest": { + "id": "TargetSslProxiesSetSslCertificatesRequest", + "properties": { + "sslCertificates": { + "description": "New set of URLs to SslCertificate resources to associate with this TargetSslProxy. Currently exactly one ssl certificate must be specified.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "TargetSslProxy": { + "description": "A TargetSslProxy resource. This resource defines an SSL proxy. (== resource_for beta.targetSslProxies ==) (== resource_for v1.targetSslProxies ==)", + "id": "TargetSslProxy", + "properties": { + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "description": { + "description": "An optional description of this resource. Provide this property when you create the resource.", + "type": "string" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64", + "type": "string" + }, + "kind": { + "default": "compute#targetSslProxy", + "description": "[Output Only] Type of the resource. Always compute#targetSslProxy for target SSL proxies.", + "type": "string" + }, + "name": { + "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "proxyHeader": { + "description": "Specifies the type of proxy header to append before sending data to the backend, either NONE or PROXY_V1. The default is NONE.", + "enum": [ + "NONE", + "PROXY_V1" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + }, + "service": { + "description": "URL to the BackendService resource.", + "type": "string" + }, + "sslCertificates": { + "description": "URLs to SslCertificate resources that are used to authenticate connections to Backends. Currently exactly one SSL certificate must be specified.", + "items": { + "type": "string" + }, + "type": "array" + }, + "sslPolicy": { + "description": "URL of SslPolicy resource that will be associated with the TargetSslProxy resource. If not set, the TargetSslProxy resource will not have any SSL policy configured.", + "type": "string" + } + }, + "type": "object" + }, + "TargetSslProxyList": { + "description": "Contains a list of TargetSslProxy resources.", + "id": "TargetSslProxyList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of TargetSslProxy resources.", + "items": { + "$ref": "TargetSslProxy" + }, + "type": "array" + }, + "kind": { + "default": "compute#targetSslProxyList", + "description": "Type of resource.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "TargetTcpProxiesSetBackendServiceRequest": { + "id": "TargetTcpProxiesSetBackendServiceRequest", + "properties": { + "service": { + "description": "The URL of the new BackendService resource for the targetTcpProxy.", + "type": "string" + } + }, + "type": "object" + }, + "TargetTcpProxiesSetProxyHeaderRequest": { + "id": "TargetTcpProxiesSetProxyHeaderRequest", + "properties": { + "proxyHeader": { + "description": "The new type of proxy header to append before sending data to the backend. NONE or PROXY_V1 are allowed.", + "enum": [ + "NONE", + "PROXY_V1" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "TargetTcpProxy": { + "description": "A TargetTcpProxy resource. This resource defines a TCP proxy. (== resource_for beta.targetTcpProxies ==) (== resource_for v1.targetTcpProxies ==)", + "id": "TargetTcpProxy", + "properties": { + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "description": { + "description": "An optional description of this resource. Provide this property when you create the resource.", + "type": "string" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64", + "type": "string" + }, + "kind": { + "default": "compute#targetTcpProxy", + "description": "[Output Only] Type of the resource. Always compute#targetTcpProxy for target TCP proxies.", + "type": "string" + }, + "name": { + "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "proxyHeader": { + "description": "Specifies the type of proxy header to append before sending data to the backend, either NONE or PROXY_V1. The default is NONE.", + "enum": [ + "NONE", + "PROXY_V1" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + }, + "service": { + "description": "URL to the BackendService resource.", + "type": "string" + } + }, + "type": "object" + }, + "TargetTcpProxyList": { + "description": "Contains a list of TargetTcpProxy resources.", + "id": "TargetTcpProxyList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of TargetTcpProxy resources.", + "items": { + "$ref": "TargetTcpProxy" + }, + "type": "array" + }, + "kind": { + "default": "compute#targetTcpProxyList", + "description": "Type of resource.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "TargetVpnGateway": { + "description": "Represents a Target VPN gateway resource. (== resource_for beta.targetVpnGateways ==) (== resource_for v1.targetVpnGateways ==)", + "id": "TargetVpnGateway", + "properties": { + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "description": { + "description": "An optional description of this resource. Provide this property when you create the resource.", + "type": "string" + }, + "forwardingRules": { + "description": "[Output Only] A list of URLs to the ForwardingRule resources. ForwardingRules are created using compute.forwardingRules.insert and associated to a VPN gateway.", + "items": { + "type": "string" + }, + "type": "array" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64", + "type": "string" + }, + "kind": { + "default": "compute#targetVpnGateway", + "description": "[Output Only] Type of resource. Always compute#targetVpnGateway for target VPN gateways.", + "type": "string" + }, + "labelFingerprint": { + "description": "A fingerprint for the labels being applied to this TargetVpnGateway, which is essentially a hash of the labels set used for optimistic locking. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update labels. You must always provide an up-to-date fingerprint hash in order to update or change labels.\n\nTo see the latest fingerprint, make a get() request to retrieve an TargetVpnGateway.", + "format": "byte", + "type": "string" + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Labels to apply to this TargetVpnGateway resource. These can be later modified by the setLabels method. Each label key/value must comply with RFC1035. Label values may be empty.", + "type": "object" + }, + "name": { + "annotations": { + "required": [ + "compute.targetVpnGateways.insert" + ] + }, + "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "network": { + "annotations": { + "required": [ + "compute.targetVpnGateways.insert" + ] + }, + "description": "URL of the network to which this VPN gateway is attached. Provided by the client when the VPN gateway is created.", + "type": "string" + }, + "region": { + "description": "[Output Only] URL of the region where the target VPN gateway resides. You must specify this field as part of the HTTP request URL. It is not settable as a field in the request body.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + }, + "status": { + "description": "[Output Only] The status of the VPN gateway.", + "enum": [ + "CREATING", + "DELETING", + "FAILED", + "READY" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ], + "type": "string" + }, + "tunnels": { + "description": "[Output Only] A list of URLs to VpnTunnel resources. VpnTunnels are created using compute.vpntunnels.insert method and associated to a VPN gateway.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "TargetVpnGatewayAggregatedList": { + "id": "TargetVpnGatewayAggregatedList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "additionalProperties": { + "$ref": "TargetVpnGatewaysScopedList", + "description": "[Output Only] Name of the scope containing this set of target VPN gateways." + }, + "description": "A list of TargetVpnGateway resources.", + "type": "object" + }, + "kind": { + "default": "compute#targetVpnGatewayAggregatedList", + "description": "[Output Only] Type of resource. Always compute#targetVpnGateway for target VPN gateways.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "TargetVpnGatewayList": { + "description": "Contains a list of TargetVpnGateway resources.", + "id": "TargetVpnGatewayList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of TargetVpnGateway resources.", + "items": { + "$ref": "TargetVpnGateway" + }, + "type": "array" + }, + "kind": { + "default": "compute#targetVpnGatewayList", + "description": "[Output Only] Type of resource. Always compute#targetVpnGateway for target VPN gateways.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "TargetVpnGatewaysScopedList": { + "id": "TargetVpnGatewaysScopedList", + "properties": { + "targetVpnGateways": { + "description": "[Output Only] List of target vpn gateways contained in this scope.", + "items": { + "$ref": "TargetVpnGateway" + }, + "type": "array" + }, + "warning": { + "description": "[Output Only] Informational warning which replaces the list of addresses when the list is empty.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "TestFailure": { + "id": "TestFailure", + "properties": { + "actualService": { + "type": "string" + }, + "expectedService": { + "type": "string" + }, + "host": { + "type": "string" + }, + "path": { + "type": "string" + } + }, + "type": "object" + }, + "TestPermissionsRequest": { + "id": "TestPermissionsRequest", + "properties": { + "permissions": { + "description": "The set of permissions to check for the 'resource'. Permissions with wildcards (such as '*' or 'storage.*') are not allowed.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "TestPermissionsResponse": { + "id": "TestPermissionsResponse", + "properties": { + "permissions": { + "description": "A subset of `TestPermissionsRequest.permissions` that the caller is allowed.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "UDPHealthCheck": { + "id": "UDPHealthCheck", + "properties": { + "port": { + "description": "The UDP port number for the health check request. Valid values are 1 through 65535.", + "format": "int32", + "type": "integer" + }, + "portName": { + "description": "Port name as defined in InstanceGroup#NamedPort#name. If both port and port_name are defined, port takes precedence.", + "type": "string" + }, + "request": { + "description": "Raw data of request to send in payload of UDP packet. It is an error if this is empty. The request data can only be ASCII.", + "type": "string" + }, + "response": { + "description": "The bytes to match against the beginning of the response data. It is an error if this is empty. The response data can only be ASCII.", + "type": "string" + } + }, + "type": "object" + }, + "UrlMap": { + "description": "A UrlMap resource. This resource defines the mapping from URL to the BackendService resource, based on the \"longest-match\" of the URL's host and path.", + "id": "UrlMap", + "properties": { + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "defaultService": { + "description": "The URL of the BackendService resource if none of the hostRules match.", + "type": "string" + }, + "description": { + "description": "An optional description of this resource. Provide this property when you create the resource.", + "type": "string" + }, + "fingerprint": { + "description": "Fingerprint of this resource. A hash of the contents stored in this object. This field is used in optimistic locking. This field will be ignored when inserting a UrlMap. An up-to-date fingerprint must be provided in order to update the UrlMap.", + "format": "byte", + "type": "string" + }, + "hostRules": { + "description": "The list of HostRules to use against the URL.", + "items": { + "$ref": "HostRule" + }, + "type": "array" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64", + "type": "string" + }, + "kind": { + "default": "compute#urlMap", + "description": "[Output Only] Type of the resource. Always compute#urlMaps for url maps.", + "type": "string" + }, + "name": { + "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "pathMatchers": { + "description": "The list of named PathMatchers to use against the URL.", + "items": { + "$ref": "PathMatcher" + }, + "type": "array" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + }, + "tests": { + "description": "The list of expected URL mapping tests. Request to update this UrlMap will succeed only if all of the test cases pass. You can specify a maximum of 100 tests per UrlMap.", + "items": { + "$ref": "UrlMapTest" + }, + "type": "array" + } + }, + "type": "object" + }, + "UrlMapList": { + "description": "Contains a list of UrlMap resources.", + "id": "UrlMapList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of UrlMap resources.", + "items": { + "$ref": "UrlMap" + }, + "type": "array" + }, + "kind": { + "default": "compute#urlMapList", + "description": "Type of resource.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "UrlMapReference": { + "id": "UrlMapReference", + "properties": { + "urlMap": { + "type": "string" + } + }, + "type": "object" + }, + "UrlMapTest": { + "description": "Message for the expected URL mappings.", + "id": "UrlMapTest", + "properties": { + "description": { + "description": "Description of this test case.", + "type": "string" + }, + "host": { + "description": "Host portion of the URL.", + "type": "string" + }, + "path": { + "description": "Path portion of the URL.", + "type": "string" + }, + "service": { + "description": "Expected BackendService resource the given URL should be mapped to.", + "type": "string" + } + }, + "type": "object" + }, + "UrlMapValidationResult": { + "description": "Message representing the validation result for a UrlMap.", + "id": "UrlMapValidationResult", + "properties": { + "loadErrors": { + "items": { + "type": "string" + }, + "type": "array" + }, + "loadSucceeded": { + "description": "Whether the given UrlMap can be successfully loaded. If false, 'loadErrors' indicates the reasons.", + "type": "boolean" + }, + "testFailures": { + "items": { + "$ref": "TestFailure" + }, + "type": "array" + }, + "testPassed": { + "description": "If successfully loaded, this field indicates whether the test passed. If false, 'testFailures's indicate the reason of failure.", + "type": "boolean" + } + }, + "type": "object" + }, + "UrlMapsValidateRequest": { + "id": "UrlMapsValidateRequest", + "properties": { + "resource": { + "$ref": "UrlMap", + "description": "Content of the UrlMap to be validated." + } + }, + "type": "object" + }, + "UrlMapsValidateResponse": { + "id": "UrlMapsValidateResponse", + "properties": { + "result": { + "$ref": "UrlMapValidationResult" + } + }, + "type": "object" + }, + "UsableSubnetwork": { + "description": "Subnetwork which the current user has compute.subnetworks.use permission on.", + "id": "UsableSubnetwork", + "properties": { + "ipCidrRange": { + "description": "The range of internal addresses that are owned by this subnetwork.", + "type": "string" + }, + "network": { + "description": "Network URL.", + "type": "string" + }, + "subnetwork": { + "description": "Subnetwork URL.", + "type": "string" + } + }, + "type": "object" + }, + "UsableSubnetworksAggregatedList": { + "id": "UsableSubnetworksAggregatedList", + "properties": { + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "type": "string" + }, + "items": { + "description": "[Output] A list of usable subnetwork URLs.", + "items": { + "$ref": "UsableSubnetwork" + }, + "type": "array" + }, + "kind": { + "default": "compute#usableSubnetworksAggregatedList", + "description": "[Output Only] Type of resource. Always compute#usableSubnetworksAggregatedList for aggregated lists of usable subnetworks.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "UsageExportLocation": { + "description": "The location in Cloud Storage and naming method of the daily usage report. Contains bucket_name and report_name prefix.", + "id": "UsageExportLocation", + "properties": { + "bucketName": { + "description": "The name of an existing bucket in Cloud Storage where the usage report object is stored. The Google Service Account is granted write access to this bucket. This can either be the bucket name by itself, such as example-bucket, or the bucket name with gs:// or https://storage.googleapis.com/ in front of it, such as gs://example-bucket.", + "type": "string" + }, + "reportNamePrefix": { + "description": "An optional prefix for the name of the usage report object stored in bucketName. If not supplied, defaults to usage. The report is stored as a CSV file named report_name_prefix_gce_YYYYMMDD.csv where YYYYMMDD is the day of the usage according to Pacific Time. If you supply a prefix, it should conform to Cloud Storage object naming conventions.", + "type": "string" + } + }, + "type": "object" + }, + "VpnTunnel": { + "description": "VPN tunnel resource. (== resource_for beta.vpnTunnels ==) (== resource_for v1.vpnTunnels ==)", + "id": "VpnTunnel", + "properties": { + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "description": { + "description": "An optional description of this resource. Provide this property when you create the resource.", + "type": "string" + }, + "detailedStatus": { + "description": "[Output Only] Detailed status message for the VPN tunnel.", + "type": "string" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64", + "type": "string" + }, + "ikeVersion": { + "description": "IKE protocol version to use when establishing the VPN tunnel with peer VPN gateway. Acceptable IKE versions are 1 or 2. Default version is 2.", + "format": "int32", + "type": "integer" + }, + "kind": { + "default": "compute#vpnTunnel", + "description": "[Output Only] Type of resource. Always compute#vpnTunnel for VPN tunnels.", + "type": "string" + }, + "labelFingerprint": { + "description": "A fingerprint for the labels being applied to this VpnTunnel, which is essentially a hash of the labels set used for optimistic locking. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update labels. You must always provide an up-to-date fingerprint hash in order to update or change labels.\n\nTo see the latest fingerprint, make a get() request to retrieve a VpnTunnel.", + "format": "byte", + "type": "string" + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Labels to apply to this VpnTunnel. These can be later modified by the setLabels method. Each label key/value pair must comply with RFC1035. Label values may be empty.", + "type": "object" + }, + "localTrafficSelector": { + "description": "Local traffic selector to use when establishing the VPN tunnel with peer VPN gateway. The value should be a CIDR formatted string, for example: 192.168.0.0/16. The ranges should be disjoint. Only IPv4 is supported.", + "items": { + "type": "string" + }, + "type": "array" + }, + "name": { + "annotations": { + "required": [ + "compute.vpnTunnels.insert" + ] + }, + "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "peerIp": { + "description": "IP address of the peer VPN gateway. Only IPv4 is supported.", + "type": "string" + }, + "region": { + "description": "[Output Only] URL of the region where the VPN tunnel resides. You must specify this field as part of the HTTP request URL. It is not settable as a field in the request body.", + "type": "string" + }, + "remoteTrafficSelector": { + "description": "Remote traffic selectors to use when establishing the VPN tunnel with peer VPN gateway. The value should be a CIDR formatted string, for example: 192.168.0.0/16. The ranges should be disjoint. Only IPv4 is supported.", + "items": { + "type": "string" + }, + "type": "array" + }, + "router": { + "description": "URL of router resource to be used for dynamic routing.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + }, + "sharedSecret": { + "description": "Shared secret used to set the secure session between the Cloud VPN gateway and the peer VPN gateway.", + "type": "string" + }, + "sharedSecretHash": { + "description": "Hash of the shared secret.", + "type": "string" + }, + "status": { + "description": "[Output Only] The status of the VPN tunnel.", + "enum": [ + "ALLOCATING_RESOURCES", + "AUTHORIZATION_ERROR", + "DEPROVISIONING", + "ESTABLISHED", + "FAILED", + "FIRST_HANDSHAKE", + "NEGOTIATION_FAILURE", + "NETWORK_ERROR", + "NO_INCOMING_PACKETS", + "PROVISIONING", + "REJECTED", + "WAITING_FOR_FULL_CONFIG" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "targetVpnGateway": { + "description": "URL of the Target VPN gateway with which this VPN tunnel is associated. Provided by the client when the VPN tunnel is created.", + "type": "string" + } + }, + "type": "object" + }, + "VpnTunnelAggregatedList": { + "id": "VpnTunnelAggregatedList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "additionalProperties": { + "$ref": "VpnTunnelsScopedList", + "description": "Name of the scope containing this set of vpn tunnels." + }, + "description": "A list of VpnTunnelsScopedList resources.", + "type": "object" + }, + "kind": { + "default": "compute#vpnTunnelAggregatedList", + "description": "[Output Only] Type of resource. Always compute#vpnTunnel for VPN tunnels.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "VpnTunnelList": { + "description": "Contains a list of VpnTunnel resources.", + "id": "VpnTunnelList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of VpnTunnel resources.", + "items": { + "$ref": "VpnTunnel" + }, + "type": "array" + }, + "kind": { + "default": "compute#vpnTunnelList", + "description": "[Output Only] Type of resource. Always compute#vpnTunnel for VPN tunnels.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "VpnTunnelsScopedList": { + "id": "VpnTunnelsScopedList", + "properties": { + "vpnTunnels": { + "description": "List of vpn tunnels contained in this scope.", + "items": { + "$ref": "VpnTunnel" + }, + "type": "array" + }, + "warning": { + "description": "Informational warning which replaces the list of addresses when the list is empty.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "XpnHostList": { + "id": "XpnHostList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "[Output Only] A list of shared VPC host project URLs.", + "items": { + "$ref": "Project" + }, + "type": "array" + }, + "kind": { + "default": "compute#xpnHostList", + "description": "[Output Only] Type of resource. Always compute#xpnHostList for lists of shared VPC hosts.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "XpnResourceId": { + "description": "Service resource (a.k.a service project) ID.", + "id": "XpnResourceId", + "properties": { + "id": { + "description": "The ID of the service resource. In the case of projects, this field matches the project ID (e.g., my-project), not the project number (e.g., 12345678).", + "type": "string" + }, + "type": { + "description": "The type of the service resource.", + "enum": [ + "PROJECT", + "XPN_RESOURCE_TYPE_UNSPECIFIED" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "Zone": { + "description": "A Zone resource. (== resource_for beta.zones ==) (== resource_for v1.zones ==)", + "id": "Zone", + "properties": { + "availableCpuPlatforms": { + "description": "[Output Only] Available cpu/platform selections for the zone.", + "items": { + "type": "string" + }, + "type": "array" + }, + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "deprecated": { + "$ref": "DeprecationStatus", + "description": "[Output Only] The deprecation status associated with this zone." + }, + "description": { + "description": "[Output Only] Textual description of the resource.", + "type": "string" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64", + "type": "string" + }, + "kind": { + "default": "compute#zone", + "description": "[Output Only] Type of the resource. Always compute#zone for zones.", + "type": "string" + }, + "name": { + "description": "[Output Only] Name of the resource.", + "type": "string" + }, + "region": { + "description": "[Output Only] Full URL reference to the region which hosts the zone.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + }, + "status": { + "description": "[Output Only] Status of the zone, either UP or DOWN.", + "enum": [ + "DOWN", + "UP" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "ZoneList": { + "description": "Contains a list of zone resources.", + "id": "ZoneList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of Zone resources.", + "items": { + "$ref": "Zone" + }, + "type": "array" + }, + "kind": { + "default": "compute#zoneList", + "description": "Type of resource.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "ZoneSetLabelsRequest": { + "id": "ZoneSetLabelsRequest", + "properties": { + "labelFingerprint": { + "description": "The fingerprint of the previous set of labels for this resource, used to detect conflicts. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update labels. You must always provide an up-to-date fingerprint hash in order to update or change labels. Make a get() request to the resource to get the latest fingerprint.", + "format": "byte", + "type": "string" + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "The labels to set for this resource.", + "type": "object" + } + }, + "type": "object" } - } - } - }, - "resources": { - "acceleratorTypes": { - "methods": { - "aggregatedList": { - "id": "compute.acceleratorTypes.aggregatedList", - "path": "{project}/aggregated/acceleratorTypes", - "httpMethod": "GET", - "description": "Retrieves an aggregated list of accelerator types.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "AcceleratorTypeAggregatedList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "get": { - "id": "compute.acceleratorTypes.get", - "path": "{project}/zones/{zone}/acceleratorTypes/{acceleratorType}", - "httpMethod": "GET", - "description": "Returns the specified accelerator type. Get a list of available accelerator types by making a list() request.", - "parameters": { - "acceleratorType": { - "type": "string", - "description": "Name of the accelerator type to return.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "zone": { - "type": "string", - "description": "The name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "acceleratorType" - ], - "response": { - "$ref": "AcceleratorType" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "list": { - "id": "compute.acceleratorTypes.list", - "path": "{project}/zones/{zone}/acceleratorTypes", - "httpMethod": "GET", - "description": "Retrieves a list of accelerator types available to the specified project.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "zone": { - "type": "string", - "description": "The name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone" - ], - "response": { - "$ref": "AcceleratorTypeList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - } - } }, - "addresses": { - "methods": { - "aggregatedList": { - "id": "compute.addresses.aggregatedList", - "path": "{project}/aggregated/addresses", - "httpMethod": "GET", - "description": "Retrieves an aggregated list of addresses.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "AddressAggregatedList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "delete": { - "id": "compute.addresses.delete", - "path": "{project}/regions/{region}/addresses/{address}", - "httpMethod": "DELETE", - "description": "Deletes the specified address resource.", - "parameters": { - "address": { - "type": "string", - "description": "Name of the address resource to delete.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "region", - "address" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "get": { - "id": "compute.addresses.get", - "path": "{project}/regions/{region}/addresses/{address}", - "httpMethod": "GET", - "description": "Returns the specified address resource.", - "parameters": { - "address": { - "type": "string", - "description": "Name of the address resource to return.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "address" - ], - "response": { - "$ref": "Address" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "insert": { - "id": "compute.addresses.insert", - "path": "{project}/regions/{region}/addresses", - "httpMethod": "POST", - "description": "Creates an address resource in the specified project using the data included in the request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "region" - ], - "request": { - "$ref": "Address" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "list": { - "id": "compute.addresses.list", - "path": "{project}/regions/{region}/addresses", - "httpMethod": "GET", - "description": "Retrieves a list of addresses contained within the specified region.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region" - ], - "response": { - "$ref": "AddressList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "setLabels": { - "id": "compute.addresses.setLabels", - "path": "{project}/regions/{region}/addresses/{resource}/setLabels", - "httpMethod": "POST", - "description": "Sets the labels on an Address. To learn more about labels, read the Labeling Resources documentation.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "The region for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "resource" - ], - "request": { - "$ref": "RegionSetLabelsRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "testIamPermissions": { - "id": "compute.addresses.testIamPermissions", - "path": "{project}/regions/{region}/addresses/{resource}/testIamPermissions", - "httpMethod": "POST", - "description": "Returns permissions that a caller has on the specified resource.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "The name of the region for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "resource" - ], - "request": { - "$ref": "TestPermissionsRequest" - }, - "response": { - "$ref": "TestPermissionsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - } - } - }, - "autoscalers": { - "methods": { - "aggregatedList": { - "id": "compute.autoscalers.aggregatedList", - "path": "{project}/aggregated/autoscalers", - "httpMethod": "GET", - "description": "Retrieves an aggregated list of autoscalers.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "AutoscalerAggregatedList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "delete": { - "id": "compute.autoscalers.delete", - "path": "{project}/zones/{zone}/autoscalers/{autoscaler}", - "httpMethod": "DELETE", - "description": "Deletes the specified autoscaler.", - "parameters": { - "autoscaler": { - "type": "string", - "description": "Name of the autoscaler to delete.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "zone": { - "type": "string", - "description": "Name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "autoscaler" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "get": { - "id": "compute.autoscalers.get", - "path": "{project}/zones/{zone}/autoscalers/{autoscaler}", - "httpMethod": "GET", - "description": "Returns the specified autoscaler resource. Get a list of available autoscalers by making a list() request.", - "parameters": { - "autoscaler": { - "type": "string", - "description": "Name of the autoscaler to return.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "zone": { - "type": "string", - "description": "Name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "autoscaler" - ], - "response": { - "$ref": "Autoscaler" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "insert": { - "id": "compute.autoscalers.insert", - "path": "{project}/zones/{zone}/autoscalers", - "httpMethod": "POST", - "description": "Creates an autoscaler in the specified project using the data included in the request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "zone": { - "type": "string", - "description": "Name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone" - ], - "request": { - "$ref": "Autoscaler" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "list": { - "id": "compute.autoscalers.list", - "path": "{project}/zones/{zone}/autoscalers", - "httpMethod": "GET", - "description": "Retrieves a list of autoscalers contained within the specified zone.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "zone": { - "type": "string", - "description": "Name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone" - ], - "response": { - "$ref": "AutoscalerList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "patch": { - "id": "compute.autoscalers.patch", - "path": "{project}/zones/{zone}/autoscalers", - "httpMethod": "PATCH", - "description": "Updates an autoscaler in the specified project using the data included in the request. This method supports PATCH semantics and uses the JSON merge patch format and processing rules.", - "parameters": { - "autoscaler": { - "type": "string", - "description": "Name of the autoscaler to patch.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "zone": { - "type": "string", - "description": "Name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone" - ], - "request": { - "$ref": "Autoscaler" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "testIamPermissions": { - "id": "compute.autoscalers.testIamPermissions", - "path": "{project}/zones/{zone}/autoscalers/{resource}/testIamPermissions", - "httpMethod": "POST", - "description": "Returns permissions that a caller has on the specified resource.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "zone": { - "type": "string", - "description": "The name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "resource" - ], - "request": { - "$ref": "TestPermissionsRequest" - }, - "response": { - "$ref": "TestPermissionsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "update": { - "id": "compute.autoscalers.update", - "path": "{project}/zones/{zone}/autoscalers", - "httpMethod": "PUT", - "description": "Updates an autoscaler in the specified project using the data included in the request.", - "parameters": { - "autoscaler": { - "type": "string", - "description": "Name of the autoscaler to update.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "zone": { - "type": "string", - "description": "Name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone" - ], - "request": { - "$ref": "Autoscaler" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - } - } - }, - "backendBuckets": { - "methods": { - "addSignedUrlKey": { - "id": "compute.backendBuckets.addSignedUrlKey", - "path": "{project}/global/backendBuckets/{backendBucket}/addSignedUrlKey", - "httpMethod": "POST", - "description": "Adds the given Signed URL Key to the backend bucket.", - "parameters": { - "backendBucket": { - "type": "string", - "description": "Name of the BackendBucket resource to which the Signed URL Key should be added. The name should conform to RFC1035.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "backendBucket" - ], - "request": { - "$ref": "SignedUrlKey" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "delete": { - "id": "compute.backendBuckets.delete", - "path": "{project}/global/backendBuckets/{backendBucket}", - "httpMethod": "DELETE", - "description": "Deletes the specified BackendBucket resource.", - "parameters": { - "backendBucket": { - "type": "string", - "description": "Name of the BackendBucket resource to delete.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "backendBucket" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "deleteSignedUrlKey": { - "id": "compute.backendBuckets.deleteSignedUrlKey", - "path": "{project}/global/backendBuckets/{backendBucket}/deleteSignedUrlKey", - "httpMethod": "POST", - "description": "Deletes the given Signed URL Key from the backend bucket.", - "parameters": { - "backendBucket": { - "type": "string", - "description": "Name of the BackendBucket resource to which the Signed URL Key should be added. The name should conform to RFC1035.", - "required": true, - "location": "path" - }, - "keyName": { - "type": "string", - "description": "The name of the Signed URL Key to delete.", - "required": true, - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "backendBucket", - "keyName" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "get": { - "id": "compute.backendBuckets.get", - "path": "{project}/global/backendBuckets/{backendBucket}", - "httpMethod": "GET", - "description": "Returns the specified BackendBucket resource. Get a list of available backend buckets by making a list() request.", - "parameters": { - "backendBucket": { - "type": "string", - "description": "Name of the BackendBucket resource to return.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "backendBucket" - ], - "response": { - "$ref": "BackendBucket" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "insert": { - "id": "compute.backendBuckets.insert", - "path": "{project}/global/backendBuckets", - "httpMethod": "POST", - "description": "Creates a BackendBucket resource in the specified project using the data included in the request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project" - ], - "request": { - "$ref": "BackendBucket" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "list": { - "id": "compute.backendBuckets.list", - "path": "{project}/global/backendBuckets", - "httpMethod": "GET", - "description": "Retrieves the list of BackendBucket resources available to the specified project.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "BackendBucketList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "patch": { - "id": "compute.backendBuckets.patch", - "path": "{project}/global/backendBuckets/{backendBucket}", - "httpMethod": "PATCH", - "description": "Updates the specified BackendBucket resource with the data included in the request. This method supports PATCH semantics and uses the JSON merge patch format and processing rules.", - "parameters": { - "backendBucket": { - "type": "string", - "description": "Name of the BackendBucket resource to patch.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "backendBucket" - ], - "request": { - "$ref": "BackendBucket" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "update": { - "id": "compute.backendBuckets.update", - "path": "{project}/global/backendBuckets/{backendBucket}", - "httpMethod": "PUT", - "description": "Updates the specified BackendBucket resource with the data included in the request.", - "parameters": { - "backendBucket": { - "type": "string", - "description": "Name of the BackendBucket resource to update.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "backendBucket" - ], - "request": { - "$ref": "BackendBucket" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - } - } - }, - "backendServices": { - "methods": { - "addSignedUrlKey": { - "id": "compute.backendServices.addSignedUrlKey", - "path": "{project}/global/backendServices/{backendService}/addSignedUrlKey", - "httpMethod": "POST", - "description": "Adds the given Signed URL Key to the specified backend service.", - "parameters": { - "backendService": { - "type": "string", - "description": "Name of the BackendService resource to which the Signed URL Key should be added. The name should conform to RFC1035.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "backendService" - ], - "request": { - "$ref": "SignedUrlKey" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "aggregatedList": { - "id": "compute.backendServices.aggregatedList", - "path": "{project}/aggregated/backendServices", - "httpMethod": "GET", - "description": "Retrieves the list of all BackendService resources, regional and global, available to the specified project.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Name of the project scoping this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "BackendServiceAggregatedList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "delete": { - "id": "compute.backendServices.delete", - "path": "{project}/global/backendServices/{backendService}", - "httpMethod": "DELETE", - "description": "Deletes the specified BackendService resource.", - "parameters": { - "backendService": { - "type": "string", - "description": "Name of the BackendService resource to delete.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "backendService" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "deleteSignedUrlKey": { - "id": "compute.backendServices.deleteSignedUrlKey", - "path": "{project}/global/backendServices/{backendService}/deleteSignedUrlKey", - "httpMethod": "POST", - "description": "Deletes the given Signed URL Key from the specified backend service.", - "parameters": { - "backendService": { - "type": "string", - "description": "Name of the BackendService resource to which the Signed URL Key should be added. The name should conform to RFC1035.", - "required": true, - "location": "path" - }, - "keyName": { - "type": "string", - "description": "The name of the Signed URL Key to delete.", - "required": true, - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "backendService", - "keyName" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "get": { - "id": "compute.backendServices.get", - "path": "{project}/global/backendServices/{backendService}", - "httpMethod": "GET", - "description": "Returns the specified BackendService resource. Get a list of available backend services by making a list() request.", - "parameters": { - "backendService": { - "type": "string", - "description": "Name of the BackendService resource to return.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "backendService" - ], - "response": { - "$ref": "BackendService" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "getHealth": { - "id": "compute.backendServices.getHealth", - "path": "{project}/global/backendServices/{backendService}/getHealth", - "httpMethod": "POST", - "description": "Gets the most recent health check results for this BackendService.", - "parameters": { - "backendService": { - "type": "string", - "description": "Name of the BackendService resource to which the queried instance belongs.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "backendService" - ], - "request": { - "$ref": "ResourceGroupReference" - }, - "response": { - "$ref": "BackendServiceGroupHealth" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "insert": { - "id": "compute.backendServices.insert", - "path": "{project}/global/backendServices", - "httpMethod": "POST", - "description": "Creates a BackendService resource in the specified project using the data included in the request. There are several restrictions and guidelines to keep in mind when creating a backend service. Read Restrictions and Guidelines for more information.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project" - ], - "request": { - "$ref": "BackendService" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "list": { - "id": "compute.backendServices.list", - "path": "{project}/global/backendServices", - "httpMethod": "GET", - "description": "Retrieves the list of BackendService resources available to the specified project.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "BackendServiceList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "patch": { - "id": "compute.backendServices.patch", - "path": "{project}/global/backendServices/{backendService}", - "httpMethod": "PATCH", - "description": "Patches the specified BackendService resource with the data included in the request. There are several restrictions and guidelines to keep in mind when updating a backend service. Read Restrictions and Guidelines for more information. This method supports PATCH semantics and uses the JSON merge patch format and processing rules.", - "parameters": { - "backendService": { - "type": "string", - "description": "Name of the BackendService resource to patch.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "backendService" - ], - "request": { - "$ref": "BackendService" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "setSecurityPolicy": { - "id": "compute.backendServices.setSecurityPolicy", - "path": "{project}/global/backendServices/{backendService}/setSecurityPolicy", - "httpMethod": "POST", - "description": "Sets the security policy for the specified backend service.", - "parameters": { - "backendService": { - "type": "string", - "description": "Name of the BackendService resource to which the security policy should be set. The name should conform to RFC1035.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "backendService" - ], - "request": { - "$ref": "SecurityPolicyReference" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "testIamPermissions": { - "id": "compute.backendServices.testIamPermissions", - "path": "{project}/global/backendServices/{resource}/testIamPermissions", - "httpMethod": "POST", - "description": "Returns permissions that a caller has on the specified resource.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "(?:[-a-z0-9_]{0,62}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "resource" - ], - "request": { - "$ref": "TestPermissionsRequest" - }, - "response": { - "$ref": "TestPermissionsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "update": { - "id": "compute.backendServices.update", - "path": "{project}/global/backendServices/{backendService}", - "httpMethod": "PUT", - "description": "Updates the specified BackendService resource with the data included in the request. There are several restrictions and guidelines to keep in mind when updating a backend service. Read Restrictions and Guidelines for more information.", - "parameters": { - "backendService": { - "type": "string", - "description": "Name of the BackendService resource to update.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "backendService" - ], - "request": { - "$ref": "BackendService" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - } - } - }, - "diskTypes": { - "methods": { - "aggregatedList": { - "id": "compute.diskTypes.aggregatedList", - "path": "{project}/aggregated/diskTypes", - "httpMethod": "GET", - "description": "Retrieves an aggregated list of disk types.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "DiskTypeAggregatedList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "get": { - "id": "compute.diskTypes.get", - "path": "{project}/zones/{zone}/diskTypes/{diskType}", - "httpMethod": "GET", - "description": "Returns the specified disk type. Get a list of available disk types by making a list() request.", - "parameters": { - "diskType": { - "type": "string", - "description": "Name of the disk type to return.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "zone": { - "type": "string", - "description": "The name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "diskType" - ], - "response": { - "$ref": "DiskType" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "list": { - "id": "compute.diskTypes.list", - "path": "{project}/zones/{zone}/diskTypes", - "httpMethod": "GET", - "description": "Retrieves a list of disk types available to the specified project.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "zone": { - "type": "string", - "description": "The name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone" - ], - "response": { - "$ref": "DiskTypeList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - } - } - }, - "disks": { - "methods": { - "aggregatedList": { - "id": "compute.disks.aggregatedList", - "path": "{project}/aggregated/disks", - "httpMethod": "GET", - "description": "Retrieves an aggregated list of persistent disks.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "DiskAggregatedList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "createSnapshot": { - "id": "compute.disks.createSnapshot", - "path": "{project}/zones/{zone}/disks/{disk}/createSnapshot", - "httpMethod": "POST", - "description": "Creates a snapshot of a specified persistent disk.", - "parameters": { - "disk": { - "type": "string", - "description": "Name of the persistent disk to snapshot.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "guestFlush": { - "type": "boolean", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "zone": { - "type": "string", - "description": "The name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "disk" - ], - "request": { - "$ref": "Snapshot" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "delete": { - "id": "compute.disks.delete", - "path": "{project}/zones/{zone}/disks/{disk}", - "httpMethod": "DELETE", - "description": "Deletes the specified persistent disk. Deleting a disk removes its data permanently and is irreversible. However, deleting a disk does not delete any snapshots previously made from the disk. You must separately delete snapshots.", - "parameters": { - "disk": { - "type": "string", - "description": "Name of the persistent disk to delete.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "zone": { - "type": "string", - "description": "The name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "disk" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "get": { - "id": "compute.disks.get", - "path": "{project}/zones/{zone}/disks/{disk}", - "httpMethod": "GET", - "description": "Returns a specified persistent disk. Get a list of available persistent disks by making a list() request.", - "parameters": { - "disk": { - "type": "string", - "description": "Name of the persistent disk to return.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "zone": { - "type": "string", - "description": "The name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "disk" - ], - "response": { - "$ref": "Disk" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "insert": { - "id": "compute.disks.insert", - "path": "{project}/zones/{zone}/disks", - "httpMethod": "POST", - "description": "Creates a persistent disk in the specified project using the data in the request. You can create a disk with a sourceImage, a sourceSnapshot, or create an empty 500 GB data disk by omitting all properties. You can also create a disk that is larger than the default size by specifying the sizeGb property.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "sourceImage": { - "type": "string", - "description": "Optional. Source image to restore onto a disk.", - "location": "query" - }, - "zone": { - "type": "string", - "description": "The name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone" - ], - "request": { - "$ref": "Disk" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "list": { - "id": "compute.disks.list", - "path": "{project}/zones/{zone}/disks", - "httpMethod": "GET", - "description": "Retrieves a list of persistent disks contained within the specified zone.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "zone": { - "type": "string", - "description": "The name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone" - ], - "response": { - "$ref": "DiskList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "resize": { - "id": "compute.disks.resize", - "path": "{project}/zones/{zone}/disks/{disk}/resize", - "httpMethod": "POST", - "description": "Resizes the specified persistent disk. You can only increase the size of the disk.", - "parameters": { - "disk": { - "type": "string", - "description": "The name of the persistent disk.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "zone": { - "type": "string", - "description": "The name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "disk" - ], - "request": { - "$ref": "DisksResizeRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "setLabels": { - "id": "compute.disks.setLabels", - "path": "{project}/zones/{zone}/disks/{resource}/setLabels", - "httpMethod": "POST", - "description": "Sets the labels on a disk. To learn more about labels, read the Labeling Resources documentation.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "zone": { - "type": "string", - "description": "The name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "resource" - ], - "request": { - "$ref": "ZoneSetLabelsRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "testIamPermissions": { - "id": "compute.disks.testIamPermissions", - "path": "{project}/zones/{zone}/disks/{resource}/testIamPermissions", - "httpMethod": "POST", - "description": "Returns permissions that a caller has on the specified resource.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "zone": { - "type": "string", - "description": "The name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "resource" - ], - "request": { - "$ref": "TestPermissionsRequest" - }, - "response": { - "$ref": "TestPermissionsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - } - } - }, - "firewalls": { - "methods": { - "delete": { - "id": "compute.firewalls.delete", - "path": "{project}/global/firewalls/{firewall}", - "httpMethod": "DELETE", - "description": "Deletes the specified firewall.", - "parameters": { - "firewall": { - "type": "string", - "description": "Name of the firewall rule to delete.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "firewall" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "get": { - "id": "compute.firewalls.get", - "path": "{project}/global/firewalls/{firewall}", - "httpMethod": "GET", - "description": "Returns the specified firewall.", - "parameters": { - "firewall": { - "type": "string", - "description": "Name of the firewall rule to return.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "firewall" - ], - "response": { - "$ref": "Firewall" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "insert": { - "id": "compute.firewalls.insert", - "path": "{project}/global/firewalls", - "httpMethod": "POST", - "description": "Creates a firewall rule in the specified project using the data included in the request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project" - ], - "request": { - "$ref": "Firewall" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "list": { - "id": "compute.firewalls.list", - "path": "{project}/global/firewalls", - "httpMethod": "GET", - "description": "Retrieves the list of firewall rules available to the specified project.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "FirewallList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "patch": { - "id": "compute.firewalls.patch", - "path": "{project}/global/firewalls/{firewall}", - "httpMethod": "PATCH", - "description": "Updates the specified firewall rule with the data included in the request. This method supports PATCH semantics and uses the JSON merge patch format and processing rules.", - "parameters": { - "firewall": { - "type": "string", - "description": "Name of the firewall rule to patch.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "firewall" - ], - "request": { - "$ref": "Firewall" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "testIamPermissions": { - "id": "compute.firewalls.testIamPermissions", - "path": "{project}/global/firewalls/{resource}/testIamPermissions", - "httpMethod": "POST", - "description": "Returns permissions that a caller has on the specified resource.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "(?:[-a-z0-9_]{0,62}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "resource" - ], - "request": { - "$ref": "TestPermissionsRequest" - }, - "response": { - "$ref": "TestPermissionsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "update": { - "id": "compute.firewalls.update", - "path": "{project}/global/firewalls/{firewall}", - "httpMethod": "PUT", - "description": "Updates the specified firewall rule with the data included in the request. Using PUT method, can only update following fields of firewall rule: allowed, description, sourceRanges, sourceTags, targetTags.", - "parameters": { - "firewall": { - "type": "string", - "description": "Name of the firewall rule to update.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "firewall" - ], - "request": { - "$ref": "Firewall" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - } - } - }, - "forwardingRules": { - "methods": { - "aggregatedList": { - "id": "compute.forwardingRules.aggregatedList", - "path": "{project}/aggregated/forwardingRules", - "httpMethod": "GET", - "description": "Retrieves an aggregated list of forwarding rules.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "ForwardingRuleAggregatedList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "delete": { - "id": "compute.forwardingRules.delete", - "path": "{project}/regions/{region}/forwardingRules/{forwardingRule}", - "httpMethod": "DELETE", - "description": "Deletes the specified ForwardingRule resource.", - "parameters": { - "forwardingRule": { - "type": "string", - "description": "Name of the ForwardingRule resource to delete.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "region", - "forwardingRule" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "get": { - "id": "compute.forwardingRules.get", - "path": "{project}/regions/{region}/forwardingRules/{forwardingRule}", - "httpMethod": "GET", - "description": "Returns the specified ForwardingRule resource.", - "parameters": { - "forwardingRule": { - "type": "string", - "description": "Name of the ForwardingRule resource to return.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "forwardingRule" - ], - "response": { - "$ref": "ForwardingRule" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "insert": { - "id": "compute.forwardingRules.insert", - "path": "{project}/regions/{region}/forwardingRules", - "httpMethod": "POST", - "description": "Creates a ForwardingRule resource in the specified project and region using the data included in the request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "region" - ], - "request": { - "$ref": "ForwardingRule" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "list": { - "id": "compute.forwardingRules.list", - "path": "{project}/regions/{region}/forwardingRules", - "httpMethod": "GET", - "description": "Retrieves a list of ForwardingRule resources available to the specified project and region.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region" - ], - "response": { - "$ref": "ForwardingRuleList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "setLabels": { - "id": "compute.forwardingRules.setLabels", - "path": "{project}/regions/{region}/forwardingRules/{resource}/setLabels", - "httpMethod": "POST", - "description": "Sets the labels on the specified resource. To learn more about labels, read the Labeling Resources documentation.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "The region for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "resource" - ], - "request": { - "$ref": "RegionSetLabelsRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "setTarget": { - "id": "compute.forwardingRules.setTarget", - "path": "{project}/regions/{region}/forwardingRules/{forwardingRule}/setTarget", - "httpMethod": "POST", - "description": "Changes target URL for forwarding rule. The new target should be of the same type as the old target.", - "parameters": { - "forwardingRule": { - "type": "string", - "description": "Name of the ForwardingRule resource in which target is to be set.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "region", - "forwardingRule" - ], - "request": { - "$ref": "TargetReference" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "testIamPermissions": { - "id": "compute.forwardingRules.testIamPermissions", - "path": "{project}/regions/{region}/forwardingRules/{resource}/testIamPermissions", - "httpMethod": "POST", - "description": "Returns permissions that a caller has on the specified resource.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "The name of the region for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "resource" - ], - "request": { - "$ref": "TestPermissionsRequest" - }, - "response": { - "$ref": "TestPermissionsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - } - } - }, - "globalAddresses": { - "methods": { - "delete": { - "id": "compute.globalAddresses.delete", - "path": "{project}/global/addresses/{address}", - "httpMethod": "DELETE", - "description": "Deletes the specified address resource.", - "parameters": { - "address": { - "type": "string", - "description": "Name of the address resource to delete.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "address" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "get": { - "id": "compute.globalAddresses.get", - "path": "{project}/global/addresses/{address}", - "httpMethod": "GET", - "description": "Returns the specified address resource. Get a list of available addresses by making a list() request.", - "parameters": { - "address": { - "type": "string", - "description": "Name of the address resource to return.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "address" - ], - "response": { - "$ref": "Address" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "insert": { - "id": "compute.globalAddresses.insert", - "path": "{project}/global/addresses", - "httpMethod": "POST", - "description": "Creates an address resource in the specified project using the data included in the request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project" - ], - "request": { - "$ref": "Address" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "list": { - "id": "compute.globalAddresses.list", - "path": "{project}/global/addresses", - "httpMethod": "GET", - "description": "Retrieves a list of global addresses.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "AddressList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "setLabels": { - "id": "compute.globalAddresses.setLabels", - "path": "{project}/global/addresses/{resource}/setLabels", - "httpMethod": "POST", - "description": "Sets the labels on a GlobalAddress. To learn more about labels, read the Labeling Resources documentation.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "resource" - ], - "request": { - "$ref": "GlobalSetLabelsRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "testIamPermissions": { - "id": "compute.globalAddresses.testIamPermissions", - "path": "{project}/global/addresses/{resource}/testIamPermissions", - "httpMethod": "POST", - "description": "Returns permissions that a caller has on the specified resource.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "(?:[-a-z0-9_]{0,62}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "resource" - ], - "request": { - "$ref": "TestPermissionsRequest" - }, - "response": { - "$ref": "TestPermissionsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - } - } - }, - "globalForwardingRules": { - "methods": { - "delete": { - "id": "compute.globalForwardingRules.delete", - "path": "{project}/global/forwardingRules/{forwardingRule}", - "httpMethod": "DELETE", - "description": "Deletes the specified GlobalForwardingRule resource.", - "parameters": { - "forwardingRule": { - "type": "string", - "description": "Name of the ForwardingRule resource to delete.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "forwardingRule" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "get": { - "id": "compute.globalForwardingRules.get", - "path": "{project}/global/forwardingRules/{forwardingRule}", - "httpMethod": "GET", - "description": "Returns the specified GlobalForwardingRule resource. Get a list of available forwarding rules by making a list() request.", - "parameters": { - "forwardingRule": { - "type": "string", - "description": "Name of the ForwardingRule resource to return.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "forwardingRule" - ], - "response": { - "$ref": "ForwardingRule" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "insert": { - "id": "compute.globalForwardingRules.insert", - "path": "{project}/global/forwardingRules", - "httpMethod": "POST", - "description": "Creates a GlobalForwardingRule resource in the specified project using the data included in the request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project" - ], - "request": { - "$ref": "ForwardingRule" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "list": { - "id": "compute.globalForwardingRules.list", - "path": "{project}/global/forwardingRules", - "httpMethod": "GET", - "description": "Retrieves a list of GlobalForwardingRule resources available to the specified project.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "ForwardingRuleList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "setLabels": { - "id": "compute.globalForwardingRules.setLabels", - "path": "{project}/global/forwardingRules/{resource}/setLabels", - "httpMethod": "POST", - "description": "Sets the labels on the specified resource. To learn more about labels, read the Labeling Resources documentation.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "resource" - ], - "request": { - "$ref": "GlobalSetLabelsRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "setTarget": { - "id": "compute.globalForwardingRules.setTarget", - "path": "{project}/global/forwardingRules/{forwardingRule}/setTarget", - "httpMethod": "POST", - "description": "Changes target URL for the GlobalForwardingRule resource. The new target should be of the same type as the old target.", - "parameters": { - "forwardingRule": { - "type": "string", - "description": "Name of the ForwardingRule resource in which target is to be set.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "forwardingRule" - ], - "request": { - "$ref": "TargetReference" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "testIamPermissions": { - "id": "compute.globalForwardingRules.testIamPermissions", - "path": "{project}/global/forwardingRules/{resource}/testIamPermissions", - "httpMethod": "POST", - "description": "Returns permissions that a caller has on the specified resource.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "(?:[-a-z0-9_]{0,62}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "resource" - ], - "request": { - "$ref": "TestPermissionsRequest" - }, - "response": { - "$ref": "TestPermissionsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - } - } - }, - "globalOperations": { - "methods": { - "aggregatedList": { - "id": "compute.globalOperations.aggregatedList", - "path": "{project}/aggregated/operations", - "httpMethod": "GET", - "description": "Retrieves an aggregated list of all operations.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "OperationAggregatedList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "delete": { - "id": "compute.globalOperations.delete", - "path": "{project}/global/operations/{operation}", - "httpMethod": "DELETE", - "description": "Deletes the specified Operations resource.", - "parameters": { - "operation": { - "type": "string", - "description": "Name of the Operations resource to delete.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "operation" - ], - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "get": { - "id": "compute.globalOperations.get", - "path": "{project}/global/operations/{operation}", - "httpMethod": "GET", - "description": "Retrieves the specified Operations resource. Get a list of operations by making a list() request.", - "parameters": { - "operation": { - "type": "string", - "description": "Name of the Operations resource to return.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "operation" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "list": { - "id": "compute.globalOperations.list", - "path": "{project}/global/operations", - "httpMethod": "GET", - "description": "Retrieves a list of Operation resources contained within the specified project.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "OperationList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - } - } - }, - "healthChecks": { - "methods": { - "delete": { - "id": "compute.healthChecks.delete", - "path": "{project}/global/healthChecks/{healthCheck}", - "httpMethod": "DELETE", - "description": "Deletes the specified HealthCheck resource.", - "parameters": { - "healthCheck": { - "type": "string", - "description": "Name of the HealthCheck resource to delete.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "healthCheck" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "get": { - "id": "compute.healthChecks.get", - "path": "{project}/global/healthChecks/{healthCheck}", - "httpMethod": "GET", - "description": "Returns the specified HealthCheck resource. Get a list of available health checks by making a list() request.", - "parameters": { - "healthCheck": { - "type": "string", - "description": "Name of the HealthCheck resource to return.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "healthCheck" - ], - "response": { - "$ref": "HealthCheck" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "insert": { - "id": "compute.healthChecks.insert", - "path": "{project}/global/healthChecks", - "httpMethod": "POST", - "description": "Creates a HealthCheck resource in the specified project using the data included in the request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project" - ], - "request": { - "$ref": "HealthCheck" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "list": { - "id": "compute.healthChecks.list", - "path": "{project}/global/healthChecks", - "httpMethod": "GET", - "description": "Retrieves the list of HealthCheck resources available to the specified project.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "HealthCheckList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "patch": { - "id": "compute.healthChecks.patch", - "path": "{project}/global/healthChecks/{healthCheck}", - "httpMethod": "PATCH", - "description": "Updates a HealthCheck resource in the specified project using the data included in the request. This method supports PATCH semantics and uses the JSON merge patch format and processing rules.", - "parameters": { - "healthCheck": { - "type": "string", - "description": "Name of the HealthCheck resource to patch.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "healthCheck" - ], - "request": { - "$ref": "HealthCheck" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "testIamPermissions": { - "id": "compute.healthChecks.testIamPermissions", - "path": "{project}/global/healthChecks/{resource}/testIamPermissions", - "httpMethod": "POST", - "description": "Returns permissions that a caller has on the specified resource.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "(?:[-a-z0-9_]{0,62}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "resource" - ], - "request": { - "$ref": "TestPermissionsRequest" - }, - "response": { - "$ref": "TestPermissionsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "update": { - "id": "compute.healthChecks.update", - "path": "{project}/global/healthChecks/{healthCheck}", - "httpMethod": "PUT", - "description": "Updates a HealthCheck resource in the specified project using the data included in the request.", - "parameters": { - "healthCheck": { - "type": "string", - "description": "Name of the HealthCheck resource to update.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "healthCheck" - ], - "request": { - "$ref": "HealthCheck" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - } - } - }, - "httpHealthChecks": { - "methods": { - "delete": { - "id": "compute.httpHealthChecks.delete", - "path": "{project}/global/httpHealthChecks/{httpHealthCheck}", - "httpMethod": "DELETE", - "description": "Deletes the specified HttpHealthCheck resource.", - "parameters": { - "httpHealthCheck": { - "type": "string", - "description": "Name of the HttpHealthCheck resource to delete.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "httpHealthCheck" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "get": { - "id": "compute.httpHealthChecks.get", - "path": "{project}/global/httpHealthChecks/{httpHealthCheck}", - "httpMethod": "GET", - "description": "Returns the specified HttpHealthCheck resource. Get a list of available HTTP health checks by making a list() request.", - "parameters": { - "httpHealthCheck": { - "type": "string", - "description": "Name of the HttpHealthCheck resource to return.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "httpHealthCheck" - ], - "response": { - "$ref": "HttpHealthCheck" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "insert": { - "id": "compute.httpHealthChecks.insert", - "path": "{project}/global/httpHealthChecks", - "httpMethod": "POST", - "description": "Creates a HttpHealthCheck resource in the specified project using the data included in the request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project" - ], - "request": { - "$ref": "HttpHealthCheck" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "list": { - "id": "compute.httpHealthChecks.list", - "path": "{project}/global/httpHealthChecks", - "httpMethod": "GET", - "description": "Retrieves the list of HttpHealthCheck resources available to the specified project.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "HttpHealthCheckList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "patch": { - "id": "compute.httpHealthChecks.patch", - "path": "{project}/global/httpHealthChecks/{httpHealthCheck}", - "httpMethod": "PATCH", - "description": "Updates a HttpHealthCheck resource in the specified project using the data included in the request. This method supports PATCH semantics and uses the JSON merge patch format and processing rules.", - "parameters": { - "httpHealthCheck": { - "type": "string", - "description": "Name of the HttpHealthCheck resource to patch.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "httpHealthCheck" - ], - "request": { - "$ref": "HttpHealthCheck" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "testIamPermissions": { - "id": "compute.httpHealthChecks.testIamPermissions", - "path": "{project}/global/httpHealthChecks/{resource}/testIamPermissions", - "httpMethod": "POST", - "description": "Returns permissions that a caller has on the specified resource.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "(?:[-a-z0-9_]{0,62}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "resource" - ], - "request": { - "$ref": "TestPermissionsRequest" - }, - "response": { - "$ref": "TestPermissionsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "update": { - "id": "compute.httpHealthChecks.update", - "path": "{project}/global/httpHealthChecks/{httpHealthCheck}", - "httpMethod": "PUT", - "description": "Updates a HttpHealthCheck resource in the specified project using the data included in the request.", - "parameters": { - "httpHealthCheck": { - "type": "string", - "description": "Name of the HttpHealthCheck resource to update.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "httpHealthCheck" - ], - "request": { - "$ref": "HttpHealthCheck" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - } - } - }, - "httpsHealthChecks": { - "methods": { - "delete": { - "id": "compute.httpsHealthChecks.delete", - "path": "{project}/global/httpsHealthChecks/{httpsHealthCheck}", - "httpMethod": "DELETE", - "description": "Deletes the specified HttpsHealthCheck resource.", - "parameters": { - "httpsHealthCheck": { - "type": "string", - "description": "Name of the HttpsHealthCheck resource to delete.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "httpsHealthCheck" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "get": { - "id": "compute.httpsHealthChecks.get", - "path": "{project}/global/httpsHealthChecks/{httpsHealthCheck}", - "httpMethod": "GET", - "description": "Returns the specified HttpsHealthCheck resource. Get a list of available HTTPS health checks by making a list() request.", - "parameters": { - "httpsHealthCheck": { - "type": "string", - "description": "Name of the HttpsHealthCheck resource to return.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "httpsHealthCheck" - ], - "response": { - "$ref": "HttpsHealthCheck" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "insert": { - "id": "compute.httpsHealthChecks.insert", - "path": "{project}/global/httpsHealthChecks", - "httpMethod": "POST", - "description": "Creates a HttpsHealthCheck resource in the specified project using the data included in the request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project" - ], - "request": { - "$ref": "HttpsHealthCheck" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "list": { - "id": "compute.httpsHealthChecks.list", - "path": "{project}/global/httpsHealthChecks", - "httpMethod": "GET", - "description": "Retrieves the list of HttpsHealthCheck resources available to the specified project.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "HttpsHealthCheckList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "patch": { - "id": "compute.httpsHealthChecks.patch", - "path": "{project}/global/httpsHealthChecks/{httpsHealthCheck}", - "httpMethod": "PATCH", - "description": "Updates a HttpsHealthCheck resource in the specified project using the data included in the request. This method supports PATCH semantics and uses the JSON merge patch format and processing rules.", - "parameters": { - "httpsHealthCheck": { - "type": "string", - "description": "Name of the HttpsHealthCheck resource to patch.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "httpsHealthCheck" - ], - "request": { - "$ref": "HttpsHealthCheck" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "testIamPermissions": { - "id": "compute.httpsHealthChecks.testIamPermissions", - "path": "{project}/global/httpsHealthChecks/{resource}/testIamPermissions", - "httpMethod": "POST", - "description": "Returns permissions that a caller has on the specified resource.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "(?:[-a-z0-9_]{0,62}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "resource" - ], - "request": { - "$ref": "TestPermissionsRequest" - }, - "response": { - "$ref": "TestPermissionsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "update": { - "id": "compute.httpsHealthChecks.update", - "path": "{project}/global/httpsHealthChecks/{httpsHealthCheck}", - "httpMethod": "PUT", - "description": "Updates a HttpsHealthCheck resource in the specified project using the data included in the request.", - "parameters": { - "httpsHealthCheck": { - "type": "string", - "description": "Name of the HttpsHealthCheck resource to update.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "httpsHealthCheck" - ], - "request": { - "$ref": "HttpsHealthCheck" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - } - } - }, - "images": { - "methods": { - "delete": { - "id": "compute.images.delete", - "path": "{project}/global/images/{image}", - "httpMethod": "DELETE", - "description": "Deletes the specified image.", - "parameters": { - "image": { - "type": "string", - "description": "Name of the image resource to delete.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "image" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "deprecate": { - "id": "compute.images.deprecate", - "path": "{project}/global/images/{image}/deprecate", - "httpMethod": "POST", - "description": "Sets the deprecation status of an image.\n\nIf an empty request body is given, clears the deprecation status instead.", - "parameters": { - "image": { - "type": "string", - "description": "Image name.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "image" - ], - "request": { - "$ref": "DeprecationStatus" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "get": { - "id": "compute.images.get", - "path": "{project}/global/images/{image}", - "httpMethod": "GET", - "description": "Returns the specified image. Get a list of available images by making a list() request.", - "parameters": { - "image": { - "type": "string", - "description": "Name of the image resource to return.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "image" - ], - "response": { - "$ref": "Image" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "getFromFamily": { - "id": "compute.images.getFromFamily", - "path": "{project}/global/images/family/{family}", - "httpMethod": "GET", - "description": "Returns the latest image that is part of an image family and is not deprecated.", - "parameters": { - "family": { - "type": "string", - "description": "Name of the image family to search for.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "family" - ], - "response": { - "$ref": "Image" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "insert": { - "id": "compute.images.insert", - "path": "{project}/global/images", - "httpMethod": "POST", - "description": "Creates an image in the specified project using the data included in the request.", - "parameters": { - "forceCreate": { - "type": "boolean", - "description": "Force image creation if true.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project" - ], - "request": { - "$ref": "Image" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/devstorage.full_control", - "https://www.googleapis.com/auth/devstorage.read_only", - "https://www.googleapis.com/auth/devstorage.read_write" - ] - }, - "list": { - "id": "compute.images.list", - "path": "{project}/global/images", - "httpMethod": "GET", - "description": "Retrieves the list of custom images available to the specified project. Custom images are images you create that belong to your project. This method does not get any images that belong to other projects, including publicly-available images, like Debian 8. If you want to get a list of publicly-available images, use this method to make a request to the respective image project, such as debian-cloud or windows-cloud.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "ImageList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "setLabels": { - "id": "compute.images.setLabels", - "path": "{project}/global/images/{resource}/setLabels", - "httpMethod": "POST", - "description": "Sets the labels on an image. To learn more about labels, read the Labeling Resources documentation.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "resource" - ], - "request": { - "$ref": "GlobalSetLabelsRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "testIamPermissions": { - "id": "compute.images.testIamPermissions", - "path": "{project}/global/images/{resource}/testIamPermissions", - "httpMethod": "POST", - "description": "Returns permissions that a caller has on the specified resource.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "(?:[-a-z0-9_]{0,62}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "resource" - ], - "request": { - "$ref": "TestPermissionsRequest" - }, - "response": { - "$ref": "TestPermissionsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - } - } - }, - "instanceGroupManagers": { - "methods": { - "abandonInstances": { - "id": "compute.instanceGroupManagers.abandonInstances", - "path": "{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/abandonInstances", - "httpMethod": "POST", - "description": "Schedules a group action to remove the specified instances from the managed instance group. Abandoning an instance does not delete the instance, but it does remove the instance from any target pools that are applied by the managed instance group. This method reduces the targetSize of the managed instance group by the number of instances that you abandon. This operation is marked as DONE when the action is scheduled even if the instances have not yet been removed from the group. You must separately verify the status of the abandoning action with the listmanagedinstances method.\n\nIf the group is part of a backend service that has enabled connection draining, it can take up to 60 seconds after the connection draining duration has elapsed before the VM instance is removed or deleted.\n\nYou can specify a maximum of 1000 instances with this method per request.", - "parameters": { - "instanceGroupManager": { - "type": "string", - "description": "The name of the managed instance group.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "zone": { - "type": "string", - "description": "The name of the zone where the managed instance group is located.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "instanceGroupManager" - ], - "request": { - "$ref": "InstanceGroupManagersAbandonInstancesRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "aggregatedList": { - "id": "compute.instanceGroupManagers.aggregatedList", - "path": "{project}/aggregated/instanceGroupManagers", - "httpMethod": "GET", - "description": "Retrieves the list of managed instance groups and groups them by zone.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "InstanceGroupManagerAggregatedList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "delete": { - "id": "compute.instanceGroupManagers.delete", - "path": "{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}", - "httpMethod": "DELETE", - "description": "Deletes the specified managed instance group and all of the instances in that group. Note that the instance group must not belong to a backend service. Read Deleting an instance group for more information.", - "parameters": { - "instanceGroupManager": { - "type": "string", - "description": "The name of the managed instance group to delete.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "zone": { - "type": "string", - "description": "The name of the zone where the managed instance group is located.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "instanceGroupManager" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "deleteInstances": { - "id": "compute.instanceGroupManagers.deleteInstances", - "path": "{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/deleteInstances", - "httpMethod": "POST", - "description": "Schedules a group action to delete the specified instances in the managed instance group. The instances are also removed from any target pools of which they were a member. This method reduces the targetSize of the managed instance group by the number of instances that you delete. This operation is marked as DONE when the action is scheduled even if the instances are still being deleted. You must separately verify the status of the deleting action with the listmanagedinstances method.\n\nIf the group is part of a backend service that has enabled connection draining, it can take up to 60 seconds after the connection draining duration has elapsed before the VM instance is removed or deleted.\n\nYou can specify a maximum of 1000 instances with this method per request.", - "parameters": { - "instanceGroupManager": { - "type": "string", - "description": "The name of the managed instance group.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "zone": { - "type": "string", - "description": "The name of the zone where the managed instance group is located.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "instanceGroupManager" - ], - "request": { - "$ref": "InstanceGroupManagersDeleteInstancesRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "get": { - "id": "compute.instanceGroupManagers.get", - "path": "{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}", - "httpMethod": "GET", - "description": "Returns all of the details about the specified managed instance group. Get a list of available managed instance groups by making a list() request.", - "parameters": { - "instanceGroupManager": { - "type": "string", - "description": "The name of the managed instance group.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "zone": { - "type": "string", - "description": "The name of the zone where the managed instance group is located.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "instanceGroupManager" - ], - "response": { - "$ref": "InstanceGroupManager" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "insert": { - "id": "compute.instanceGroupManagers.insert", - "path": "{project}/zones/{zone}/instanceGroupManagers", - "httpMethod": "POST", - "description": "Creates a managed instance group using the information that you specify in the request. After the group is created, it schedules an action to create instances in the group using the specified instance template. This operation is marked as DONE when the group is created even if the instances in the group have not yet been created. You must separately verify the status of the individual instances with the listmanagedinstances method.\n\nA managed instance group can have up to 1000 VM instances per group. Please contact Cloud Support if you need an increase in this limit.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "zone": { - "type": "string", - "description": "The name of the zone where you want to create the managed instance group.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone" - ], - "request": { - "$ref": "InstanceGroupManager" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "list": { - "id": "compute.instanceGroupManagers.list", - "path": "{project}/zones/{zone}/instanceGroupManagers", - "httpMethod": "GET", - "description": "Retrieves a list of managed instance groups that are contained within the specified project and zone.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "zone": { - "type": "string", - "description": "The name of the zone where the managed instance group is located.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone" - ], - "response": { - "$ref": "InstanceGroupManagerList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "listManagedInstances": { - "id": "compute.instanceGroupManagers.listManagedInstances", - "path": "{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/listManagedInstances", - "httpMethod": "POST", - "description": "Lists all of the instances in the managed instance group. Each instance in the list has a currentAction, which indicates the action that the managed instance group is performing on the instance. For example, if the group is still creating an instance, the currentAction is CREATING. If a previous action failed, the list displays the errors for that failed action.", - "parameters": { - "filter": { - "type": "string", - "location": "query" - }, - "instanceGroupManager": { - "type": "string", - "description": "The name of the managed instance group.", - "required": true, - "location": "path" - }, - "maxResults": { - "type": "integer", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "order_by": { - "type": "string", - "location": "query" - }, - "pageToken": { - "type": "string", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "zone": { - "type": "string", - "description": "The name of the zone where the managed instance group is located.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "instanceGroupManager" - ], - "response": { - "$ref": "InstanceGroupManagersListManagedInstancesResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "patch": { - "id": "compute.instanceGroupManagers.patch", - "path": "{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}", - "httpMethod": "PATCH", - "description": "Updates a managed instance group using the information that you specify in the request. This operation is marked as DONE when the group is patched even if the instances in the group are still in the process of being patched. You must separately verify the status of the individual instances with the listManagedInstances method. This method supports PATCH semantics and uses the JSON merge patch format and processing rules.", - "parameters": { - "instanceGroupManager": { - "type": "string", - "description": "The name of the instance group manager.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "zone": { - "type": "string", - "description": "The name of the zone where you want to create the managed instance group.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "instanceGroupManager" - ], - "request": { - "$ref": "InstanceGroupManager" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "recreateInstances": { - "id": "compute.instanceGroupManagers.recreateInstances", - "path": "{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/recreateInstances", - "httpMethod": "POST", - "description": "Schedules a group action to recreate the specified instances in the managed instance group. The instances are deleted and recreated using the current instance template for the managed instance group. This operation is marked as DONE when the action is scheduled even if the instances have not yet been recreated. You must separately verify the status of the recreating action with the listmanagedinstances method.\n\nIf the group is part of a backend service that has enabled connection draining, it can take up to 60 seconds after the connection draining duration has elapsed before the VM instance is removed or deleted.\n\nYou can specify a maximum of 1000 instances with this method per request.", - "parameters": { - "instanceGroupManager": { - "type": "string", - "description": "The name of the managed instance group.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "zone": { - "type": "string", - "description": "The name of the zone where the managed instance group is located.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "instanceGroupManager" - ], - "request": { - "$ref": "InstanceGroupManagersRecreateInstancesRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "resize": { - "id": "compute.instanceGroupManagers.resize", - "path": "{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/resize", - "httpMethod": "POST", - "description": "Resizes the managed instance group. If you increase the size, the group creates new instances using the current instance template. If you decrease the size, the group deletes instances. The resize operation is marked DONE when the resize actions are scheduled even if the group has not yet added or deleted any instances. You must separately verify the status of the creating or deleting actions with the listmanagedinstances method.\n\nIf the group is part of a backend service that has enabled connection draining, it can take up to 60 seconds after the connection draining duration has elapsed before the VM instance is removed or deleted.", - "parameters": { - "instanceGroupManager": { - "type": "string", - "description": "The name of the managed instance group.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "size": { - "type": "integer", - "description": "The number of running instances that the managed instance group should maintain at any given time. The group automatically adds or removes instances to maintain the number of instances specified by this parameter.", - "required": true, - "format": "int32", - "location": "query" - }, - "zone": { - "type": "string", - "description": "The name of the zone where the managed instance group is located.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "instanceGroupManager", - "size" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "resizeAdvanced": { - "id": "compute.instanceGroupManagers.resizeAdvanced", - "path": "{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/resizeAdvanced", - "httpMethod": "POST", - "description": "Resizes the managed instance group with advanced configuration options like disabling creation retries. This is an extended version of the resize method.\n\nIf you increase the size of the instance group, the group creates new instances using the current instance template. If you decrease the size, the group deletes instances. The resize operation is marked DONE when the resize actions are scheduled even if the group has not yet added or deleted any instances. You must separately verify the status of the creating, creatingWithoutRetries, or deleting actions with the get or listmanagedinstances method.\n\nIf the group is part of a backend service that has enabled connection draining, it can take up to 60 seconds after the connection draining duration has elapsed before the VM instance is removed or deleted.", - "parameters": { - "instanceGroupManager": { - "type": "string", - "description": "The name of the managed instance group.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "zone": { - "type": "string", - "description": "The name of the zone where the managed instance group is located.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "instanceGroupManager" - ], - "request": { - "$ref": "InstanceGroupManagersResizeAdvancedRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "setAutoHealingPolicies": { - "id": "compute.instanceGroupManagers.setAutoHealingPolicies", - "path": "{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/setAutoHealingPolicies", - "httpMethod": "POST", - "description": "Modifies the autohealing policies.", - "parameters": { - "instanceGroupManager": { - "type": "string", - "description": "The name of the instance group manager.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "zone": { - "type": "string", - "description": "The name of the zone where the managed instance group is located.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "instanceGroupManager" - ], - "request": { - "$ref": "InstanceGroupManagersSetAutoHealingRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "setInstanceTemplate": { - "id": "compute.instanceGroupManagers.setInstanceTemplate", - "path": "{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/setInstanceTemplate", - "httpMethod": "POST", - "description": "Specifies the instance template to use when creating new instances in this group. The templates for existing instances in the group do not change unless you recreate them.", - "parameters": { - "instanceGroupManager": { - "type": "string", - "description": "The name of the managed instance group.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "zone": { - "type": "string", - "description": "The name of the zone where the managed instance group is located.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "instanceGroupManager" - ], - "request": { - "$ref": "InstanceGroupManagersSetInstanceTemplateRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "setTargetPools": { - "id": "compute.instanceGroupManagers.setTargetPools", - "path": "{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/setTargetPools", - "httpMethod": "POST", - "description": "Modifies the target pools to which all instances in this managed instance group are assigned. The target pools automatically apply to all of the instances in the managed instance group. This operation is marked DONE when you make the request even if the instances have not yet been added to their target pools. The change might take some time to apply to all of the instances in the group depending on the size of the group.", - "parameters": { - "instanceGroupManager": { - "type": "string", - "description": "The name of the managed instance group.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "zone": { - "type": "string", - "description": "The name of the zone where the managed instance group is located.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "instanceGroupManager" - ], - "request": { - "$ref": "InstanceGroupManagersSetTargetPoolsRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "testIamPermissions": { - "id": "compute.instanceGroupManagers.testIamPermissions", - "path": "{project}/zones/{zone}/instanceGroupManagers/{resource}/testIamPermissions", - "httpMethod": "POST", - "description": "Returns permissions that a caller has on the specified resource.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "zone": { - "type": "string", - "description": "The name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "resource" - ], - "request": { - "$ref": "TestPermissionsRequest" - }, - "response": { - "$ref": "TestPermissionsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "update": { - "id": "compute.instanceGroupManagers.update", - "path": "{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}", - "httpMethod": "PUT", - "description": "Updates a managed instance group using the information that you specify in the request. This operation is marked as DONE when the group is updated even if the instances in the group have not yet been updated. You must separately verify the status of the individual instances with the listManagedInstances method.", - "parameters": { - "instanceGroupManager": { - "type": "string", - "description": "The name of the instance group manager.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "zone": { - "type": "string", - "description": "The name of the zone where you want to create the managed instance group.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "instanceGroupManager" - ], - "request": { - "$ref": "InstanceGroupManager" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - } - } - }, - "instanceGroups": { - "methods": { - "addInstances": { - "id": "compute.instanceGroups.addInstances", - "path": "{project}/zones/{zone}/instanceGroups/{instanceGroup}/addInstances", - "httpMethod": "POST", - "description": "Adds a list of instances to the specified instance group. All of the instances in the instance group must be in the same network/subnetwork. Read Adding instances for more information.", - "parameters": { - "instanceGroup": { - "type": "string", - "description": "The name of the instance group where you are adding instances.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "zone": { - "type": "string", - "description": "The name of the zone where the instance group is located.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "instanceGroup" - ], - "request": { - "$ref": "InstanceGroupsAddInstancesRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "aggregatedList": { - "id": "compute.instanceGroups.aggregatedList", - "path": "{project}/aggregated/instanceGroups", - "httpMethod": "GET", - "description": "Retrieves the list of instance groups and sorts them by zone.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "InstanceGroupAggregatedList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "delete": { - "id": "compute.instanceGroups.delete", - "path": "{project}/zones/{zone}/instanceGroups/{instanceGroup}", - "httpMethod": "DELETE", - "description": "Deletes the specified instance group. The instances in the group are not deleted. Note that instance group must not belong to a backend service. Read Deleting an instance group for more information.", - "parameters": { - "instanceGroup": { - "type": "string", - "description": "The name of the instance group to delete.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "zone": { - "type": "string", - "description": "The name of the zone where the instance group is located.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "instanceGroup" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "get": { - "id": "compute.instanceGroups.get", - "path": "{project}/zones/{zone}/instanceGroups/{instanceGroup}", - "httpMethod": "GET", - "description": "Returns the specified instance group. Get a list of available instance groups by making a list() request.", - "parameters": { - "instanceGroup": { - "type": "string", - "description": "The name of the instance group.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "zone": { - "type": "string", - "description": "The name of the zone where the instance group is located.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "instanceGroup" - ], - "response": { - "$ref": "InstanceGroup" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "insert": { - "id": "compute.instanceGroups.insert", - "path": "{project}/zones/{zone}/instanceGroups", - "httpMethod": "POST", - "description": "Creates an instance group in the specified project using the parameters that are included in the request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "zone": { - "type": "string", - "description": "The name of the zone where you want to create the instance group.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone" - ], - "request": { - "$ref": "InstanceGroup" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "list": { - "id": "compute.instanceGroups.list", - "path": "{project}/zones/{zone}/instanceGroups", - "httpMethod": "GET", - "description": "Retrieves the list of instance groups that are located in the specified project and zone.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "zone": { - "type": "string", - "description": "The name of the zone where the instance group is located.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone" - ], - "response": { - "$ref": "InstanceGroupList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "listInstances": { - "id": "compute.instanceGroups.listInstances", - "path": "{project}/zones/{zone}/instanceGroups/{instanceGroup}/listInstances", - "httpMethod": "POST", - "description": "Lists the instances in the specified instance group.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "instanceGroup": { - "type": "string", - "description": "The name of the instance group from which you want to generate a list of included instances.", - "required": true, - "location": "path" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "zone": { - "type": "string", - "description": "The name of the zone where the instance group is located.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "instanceGroup" - ], - "request": { - "$ref": "InstanceGroupsListInstancesRequest" - }, - "response": { - "$ref": "InstanceGroupsListInstances" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "removeInstances": { - "id": "compute.instanceGroups.removeInstances", - "path": "{project}/zones/{zone}/instanceGroups/{instanceGroup}/removeInstances", - "httpMethod": "POST", - "description": "Removes one or more instances from the specified instance group, but does not delete those instances.\n\nIf the group is part of a backend service that has enabled connection draining, it can take up to 60 seconds after the connection draining duration before the VM instance is removed or deleted.", - "parameters": { - "instanceGroup": { - "type": "string", - "description": "The name of the instance group where the specified instances will be removed.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "zone": { - "type": "string", - "description": "The name of the zone where the instance group is located.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "instanceGroup" - ], - "request": { - "$ref": "InstanceGroupsRemoveInstancesRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "setNamedPorts": { - "id": "compute.instanceGroups.setNamedPorts", - "path": "{project}/zones/{zone}/instanceGroups/{instanceGroup}/setNamedPorts", - "httpMethod": "POST", - "description": "Sets the named ports for the specified instance group.", - "parameters": { - "instanceGroup": { - "type": "string", - "description": "The name of the instance group where the named ports are updated.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "zone": { - "type": "string", - "description": "The name of the zone where the instance group is located.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "instanceGroup" - ], - "request": { - "$ref": "InstanceGroupsSetNamedPortsRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "testIamPermissions": { - "id": "compute.instanceGroups.testIamPermissions", - "path": "{project}/zones/{zone}/instanceGroups/{resource}/testIamPermissions", - "httpMethod": "POST", - "description": "Returns permissions that a caller has on the specified resource.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "zone": { - "type": "string", - "description": "The name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "resource" - ], - "request": { - "$ref": "TestPermissionsRequest" - }, - "response": { - "$ref": "TestPermissionsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - } - } - }, - "instanceTemplates": { - "methods": { - "delete": { - "id": "compute.instanceTemplates.delete", - "path": "{project}/global/instanceTemplates/{instanceTemplate}", - "httpMethod": "DELETE", - "description": "Deletes the specified instance template. Deleting an instance template is permanent and cannot be undone. It's not possible to delete templates which are in use by an instance group.", - "parameters": { - "instanceTemplate": { - "type": "string", - "description": "The name of the instance template to delete.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "instanceTemplate" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "get": { - "id": "compute.instanceTemplates.get", - "path": "{project}/global/instanceTemplates/{instanceTemplate}", - "httpMethod": "GET", - "description": "Returns the specified instance template. Get a list of available instance templates by making a list() request.", - "parameters": { - "instanceTemplate": { - "type": "string", - "description": "The name of the instance template.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "instanceTemplate" - ], - "response": { - "$ref": "InstanceTemplate" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "insert": { - "id": "compute.instanceTemplates.insert", - "path": "{project}/global/instanceTemplates", - "httpMethod": "POST", - "description": "Creates an instance template in the specified project using the data that is included in the request. If you are creating a new template to update an existing instance group, your new instance template must use the same network or, if applicable, the same subnetwork as the original template.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project" - ], - "request": { - "$ref": "InstanceTemplate" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "list": { - "id": "compute.instanceTemplates.list", - "path": "{project}/global/instanceTemplates", - "httpMethod": "GET", - "description": "Retrieves a list of instance templates that are contained within the specified project and zone.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "InstanceTemplateList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "testIamPermissions": { - "id": "compute.instanceTemplates.testIamPermissions", - "path": "{project}/global/instanceTemplates/{resource}/testIamPermissions", - "httpMethod": "POST", - "description": "Returns permissions that a caller has on the specified resource.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "(?:[-a-z0-9_]{0,62}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "resource" - ], - "request": { - "$ref": "TestPermissionsRequest" - }, - "response": { - "$ref": "TestPermissionsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - } - } - }, - "instances": { - "methods": { - "addAccessConfig": { - "id": "compute.instances.addAccessConfig", - "path": "{project}/zones/{zone}/instances/{instance}/addAccessConfig", - "httpMethod": "POST", - "description": "Adds an access config to an instance's network interface.", - "parameters": { - "instance": { - "type": "string", - "description": "The instance name for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "networkInterface": { - "type": "string", - "description": "The name of the network interface to add to this instance.", - "required": true, - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "zone": { - "type": "string", - "description": "The name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "instance", - "networkInterface" - ], - "request": { - "$ref": "AccessConfig" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "aggregatedList": { - "id": "compute.instances.aggregatedList", - "path": "{project}/aggregated/instances", - "httpMethod": "GET", - "description": "Retrieves aggregated list of instances.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "InstanceAggregatedList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "attachDisk": { - "id": "compute.instances.attachDisk", - "path": "{project}/zones/{zone}/instances/{instance}/attachDisk", - "httpMethod": "POST", - "description": "Attaches an existing Disk resource to an instance. You must first create the disk before you can attach it. It is not possible to create and attach a disk at the same time. For more information, read Adding a persistent disk to your instance.", - "parameters": { - "instance": { - "type": "string", - "description": "The instance name for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "zone": { - "type": "string", - "description": "The name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "instance" - ], - "request": { - "$ref": "AttachedDisk" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "delete": { - "id": "compute.instances.delete", - "path": "{project}/zones/{zone}/instances/{instance}", - "httpMethod": "DELETE", - "description": "Deletes the specified Instance resource. For more information, see Stopping or Deleting an Instance.", - "parameters": { - "instance": { - "type": "string", - "description": "Name of the instance resource to delete.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "zone": { - "type": "string", - "description": "The name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "instance" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "deleteAccessConfig": { - "id": "compute.instances.deleteAccessConfig", - "path": "{project}/zones/{zone}/instances/{instance}/deleteAccessConfig", - "httpMethod": "POST", - "description": "Deletes an access config from an instance's network interface.", - "parameters": { - "accessConfig": { - "type": "string", - "description": "The name of the access config to delete.", - "required": true, - "location": "query" - }, - "instance": { - "type": "string", - "description": "The instance name for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "networkInterface": { - "type": "string", - "description": "The name of the network interface.", - "required": true, - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "zone": { - "type": "string", - "description": "The name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "instance", - "accessConfig", - "networkInterface" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "detachDisk": { - "id": "compute.instances.detachDisk", - "path": "{project}/zones/{zone}/instances/{instance}/detachDisk", - "httpMethod": "POST", - "description": "Detaches a disk from an instance.", - "parameters": { - "deviceName": { - "type": "string", - "description": "Disk device name to detach.", - "required": true, - "location": "query" - }, - "instance": { - "type": "string", - "description": "Instance name.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "zone": { - "type": "string", - "description": "The name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "instance", - "deviceName" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "get": { - "id": "compute.instances.get", - "path": "{project}/zones/{zone}/instances/{instance}", - "httpMethod": "GET", - "description": "Returns the specified Instance resource. Get a list of available instances by making a list() request.", - "parameters": { - "instance": { - "type": "string", - "description": "Name of the instance resource to return.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "zone": { - "type": "string", - "description": "The name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "instance" - ], - "response": { - "$ref": "Instance" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "getSerialPortOutput": { - "id": "compute.instances.getSerialPortOutput", - "path": "{project}/zones/{zone}/instances/{instance}/serialPort", - "httpMethod": "GET", - "description": "Returns the specified instance's serial port output.", - "parameters": { - "instance": { - "type": "string", - "description": "Name of the instance scoping this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "port": { - "type": "integer", - "description": "Specifies which COM or serial port to retrieve data from.", - "default": "1", - "format": "int32", - "minimum": "1", - "maximum": "4", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "start": { - "type": "string", - "description": "Returns output starting from a specific byte position. Use this to page through output when the output is too large to return in a single request. For the initial request, leave this field unspecified. For subsequent calls, this field should be set to the next value returned in the previous call.", - "format": "int64", - "location": "query" - }, - "zone": { - "type": "string", - "description": "The name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "instance" - ], - "response": { - "$ref": "SerialPortOutput" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "insert": { - "id": "compute.instances.insert", - "path": "{project}/zones/{zone}/instances", - "httpMethod": "POST", - "description": "Creates an instance resource in the specified project using the data included in the request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "sourceInstanceTemplate": { - "type": "string", - "description": "Specifies instance template to create the instance.\n\nThis field is optional. It can be a full or partial URL. For example, the following are all valid URLs to an instance template: \n- https://www.googleapis.com/compute/v1/projects/project/global/global/instanceTemplates/instanceTemplate \n- projects/project/global/global/instanceTemplates/instanceTemplate \n- global/instancesTemplates/instanceTemplate", - "location": "query" - }, - "zone": { - "type": "string", - "description": "The name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone" - ], - "request": { - "$ref": "Instance" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "list": { - "id": "compute.instances.list", - "path": "{project}/zones/{zone}/instances", - "httpMethod": "GET", - "description": "Retrieves the list of instances contained within the specified zone.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "zone": { - "type": "string", - "description": "The name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone" - ], - "response": { - "$ref": "InstanceList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "listReferrers": { - "id": "compute.instances.listReferrers", - "path": "{project}/zones/{zone}/instances/{instance}/referrers", - "httpMethod": "GET", - "description": "Retrieves the list of referrers to instances contained within the specified zone.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "instance": { - "type": "string", - "description": "Name of the target instance scoping this request, or '-' if the request should span over all instances in the container.", - "required": true, - "pattern": "-|[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "zone": { - "type": "string", - "description": "The name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "instance" - ], - "response": { - "$ref": "InstanceListReferrers" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "reset": { - "id": "compute.instances.reset", - "path": "{project}/zones/{zone}/instances/{instance}/reset", - "httpMethod": "POST", - "description": "Performs a reset on the instance. For more information, see Resetting an instance.", - "parameters": { - "instance": { - "type": "string", - "description": "Name of the instance scoping this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "zone": { - "type": "string", - "description": "The name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "instance" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "setDeletionProtection": { - "id": "compute.instances.setDeletionProtection", - "path": "{project}/zones/{zone}/instances/{resource}/setDeletionProtection", - "httpMethod": "POST", - "description": "Sets deletion protection on the instance.", - "parameters": { - "deletionProtection": { - "type": "boolean", - "description": "Whether the resource should be protected against deletion.", - "default": "true", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "zone": { - "type": "string", - "description": "The name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "resource" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "setDiskAutoDelete": { - "id": "compute.instances.setDiskAutoDelete", - "path": "{project}/zones/{zone}/instances/{instance}/setDiskAutoDelete", - "httpMethod": "POST", - "description": "Sets the auto-delete flag for a disk attached to an instance.", - "parameters": { - "autoDelete": { - "type": "boolean", - "description": "Whether to auto-delete the disk when the instance is deleted.", - "required": true, - "location": "query" - }, - "deviceName": { - "type": "string", - "description": "The device name of the disk to modify.", - "required": true, - "pattern": "\\w[\\w.-]{0,254}", - "location": "query" - }, - "instance": { - "type": "string", - "description": "The instance name.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "zone": { - "type": "string", - "description": "The name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "instance", - "autoDelete", - "deviceName" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "setLabels": { - "id": "compute.instances.setLabels", - "path": "{project}/zones/{zone}/instances/{instance}/setLabels", - "httpMethod": "POST", - "description": "Sets labels on an instance. To learn more about labels, read the Labeling Resources documentation.", - "parameters": { - "instance": { - "type": "string", - "description": "Name of the instance scoping this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "zone": { - "type": "string", - "description": "The name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "instance" - ], - "request": { - "$ref": "InstancesSetLabelsRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "setMachineResources": { - "id": "compute.instances.setMachineResources", - "path": "{project}/zones/{zone}/instances/{instance}/setMachineResources", - "httpMethod": "POST", - "description": "Changes the number and/or type of accelerator for a stopped instance to the values specified in the request.", - "parameters": { - "instance": { - "type": "string", - "description": "Name of the instance scoping this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "zone": { - "type": "string", - "description": "The name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "instance" - ], - "request": { - "$ref": "InstancesSetMachineResourcesRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "setMachineType": { - "id": "compute.instances.setMachineType", - "path": "{project}/zones/{zone}/instances/{instance}/setMachineType", - "httpMethod": "POST", - "description": "Changes the machine type for a stopped instance to the machine type specified in the request.", - "parameters": { - "instance": { - "type": "string", - "description": "Name of the instance scoping this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "zone": { - "type": "string", - "description": "The name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "instance" - ], - "request": { - "$ref": "InstancesSetMachineTypeRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "setMetadata": { - "id": "compute.instances.setMetadata", - "path": "{project}/zones/{zone}/instances/{instance}/setMetadata", - "httpMethod": "POST", - "description": "Sets metadata for the specified instance to the data included in the request.", - "parameters": { - "instance": { - "type": "string", - "description": "Name of the instance scoping this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "zone": { - "type": "string", - "description": "The name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "instance" - ], - "request": { - "$ref": "Metadata" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "setMinCpuPlatform": { - "id": "compute.instances.setMinCpuPlatform", - "path": "{project}/zones/{zone}/instances/{instance}/setMinCpuPlatform", - "httpMethod": "POST", - "description": "Changes the minimum CPU platform that this instance should use. This method can only be called on a stopped instance. For more information, read Specifying a Minimum CPU Platform.", - "parameters": { - "instance": { - "type": "string", - "description": "Name of the instance scoping this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "zone": { - "type": "string", - "description": "The name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "instance" - ], - "request": { - "$ref": "InstancesSetMinCpuPlatformRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "setScheduling": { - "id": "compute.instances.setScheduling", - "path": "{project}/zones/{zone}/instances/{instance}/setScheduling", - "httpMethod": "POST", - "description": "Sets an instance's scheduling options.", - "parameters": { - "instance": { - "type": "string", - "description": "Instance name.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "zone": { - "type": "string", - "description": "The name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "instance" - ], - "request": { - "$ref": "Scheduling" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "setServiceAccount": { - "id": "compute.instances.setServiceAccount", - "path": "{project}/zones/{zone}/instances/{instance}/setServiceAccount", - "httpMethod": "POST", - "description": "Sets the service account on the instance. For more information, read Changing the service account and access scopes for an instance.", - "parameters": { - "instance": { - "type": "string", - "description": "Name of the instance resource to start.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "zone": { - "type": "string", - "description": "The name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "instance" - ], - "request": { - "$ref": "InstancesSetServiceAccountRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "setTags": { - "id": "compute.instances.setTags", - "path": "{project}/zones/{zone}/instances/{instance}/setTags", - "httpMethod": "POST", - "description": "Sets tags for the specified instance to the data included in the request.", - "parameters": { - "instance": { - "type": "string", - "description": "Name of the instance scoping this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "zone": { - "type": "string", - "description": "The name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "instance" - ], - "request": { - "$ref": "Tags" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "start": { - "id": "compute.instances.start", - "path": "{project}/zones/{zone}/instances/{instance}/start", - "httpMethod": "POST", - "description": "Starts an instance that was stopped using the using the instances().stop method. For more information, see Restart an instance.", - "parameters": { - "instance": { - "type": "string", - "description": "Name of the instance resource to start.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "zone": { - "type": "string", - "description": "The name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "instance" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "startWithEncryptionKey": { - "id": "compute.instances.startWithEncryptionKey", - "path": "{project}/zones/{zone}/instances/{instance}/startWithEncryptionKey", - "httpMethod": "POST", - "description": "Starts an instance that was stopped using the using the instances().stop method. For more information, see Restart an instance.", - "parameters": { - "instance": { - "type": "string", - "description": "Name of the instance resource to start.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "zone": { - "type": "string", - "description": "The name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "instance" - ], - "request": { - "$ref": "InstancesStartWithEncryptionKeyRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "stop": { - "id": "compute.instances.stop", - "path": "{project}/zones/{zone}/instances/{instance}/stop", - "httpMethod": "POST", - "description": "Stops a running instance, shutting it down cleanly, and allows you to restart the instance at a later time. Stopped instances do not incur VM usage charges while they are stopped. However, resources that the VM is using, such as persistent disks and static IP addresses, will continue to be charged until they are deleted. For more information, see Stopping an instance.", - "parameters": { - "instance": { - "type": "string", - "description": "Name of the instance resource to stop.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "zone": { - "type": "string", - "description": "The name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "instance" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "testIamPermissions": { - "id": "compute.instances.testIamPermissions", - "path": "{project}/zones/{zone}/instances/{resource}/testIamPermissions", - "httpMethod": "POST", - "description": "Returns permissions that a caller has on the specified resource.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "zone": { - "type": "string", - "description": "The name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "resource" - ], - "request": { - "$ref": "TestPermissionsRequest" - }, - "response": { - "$ref": "TestPermissionsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "updateAccessConfig": { - "id": "compute.instances.updateAccessConfig", - "path": "{project}/zones/{zone}/instances/{instance}/updateAccessConfig", - "httpMethod": "POST", - "description": "Updates the specified access config from an instance's network interface with the data included in the request. This method supports PATCH semantics and uses the JSON merge patch format and processing rules.", - "parameters": { - "instance": { - "type": "string", - "description": "The instance name for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "networkInterface": { - "type": "string", - "description": "The name of the network interface where the access config is attached.", - "required": true, - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "zone": { - "type": "string", - "description": "The name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "instance", - "networkInterface" - ], - "request": { - "$ref": "AccessConfig" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "updateNetworkInterface": { - "id": "compute.instances.updateNetworkInterface", - "path": "{project}/zones/{zone}/instances/{instance}/updateNetworkInterface", - "httpMethod": "PATCH", - "description": "Updates an instance's network interface. This method follows PATCH semantics.", - "parameters": { - "instance": { - "type": "string", - "description": "The instance name for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "networkInterface": { - "type": "string", - "description": "The name of the network interface to update.", - "required": true, - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "zone": { - "type": "string", - "description": "The name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "instance", - "networkInterface" - ], - "request": { - "$ref": "NetworkInterface" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - } - } - }, - "interconnectAttachments": { - "methods": { - "aggregatedList": { - "id": "compute.interconnectAttachments.aggregatedList", - "path": "{project}/aggregated/interconnectAttachments", - "httpMethod": "GET", - "description": "Retrieves an aggregated list of interconnect attachments.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "InterconnectAttachmentAggregatedList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "delete": { - "id": "compute.interconnectAttachments.delete", - "path": "{project}/regions/{region}/interconnectAttachments/{interconnectAttachment}", - "httpMethod": "DELETE", - "description": "Deletes the specified interconnect attachment.", - "parameters": { - "interconnectAttachment": { - "type": "string", - "description": "Name of the interconnect attachment to delete.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "region", - "interconnectAttachment" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "get": { - "id": "compute.interconnectAttachments.get", - "path": "{project}/regions/{region}/interconnectAttachments/{interconnectAttachment}", - "httpMethod": "GET", - "description": "Returns the specified interconnect attachment.", - "parameters": { - "interconnectAttachment": { - "type": "string", - "description": "Name of the interconnect attachment to return.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "interconnectAttachment" - ], - "response": { - "$ref": "InterconnectAttachment" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "insert": { - "id": "compute.interconnectAttachments.insert", - "path": "{project}/regions/{region}/interconnectAttachments", - "httpMethod": "POST", - "description": "Creates an InterconnectAttachment in the specified project using the data included in the request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "region" - ], - "request": { - "$ref": "InterconnectAttachment" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "list": { - "id": "compute.interconnectAttachments.list", - "path": "{project}/regions/{region}/interconnectAttachments", - "httpMethod": "GET", - "description": "Retrieves the list of interconnect attachments contained within the specified region.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region" - ], - "response": { - "$ref": "InterconnectAttachmentList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "setLabels": { - "id": "compute.interconnectAttachments.setLabels", - "path": "{project}/regions/{region}/interconnectAttachments/{resource}/setLabels", - "httpMethod": "POST", - "description": "Sets the labels on an InterconnectAttachment. To learn more about labels, read the Labeling Resources documentation.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "The region for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "resource" - ], - "request": { - "$ref": "RegionSetLabelsRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "testIamPermissions": { - "id": "compute.interconnectAttachments.testIamPermissions", - "path": "{project}/regions/{region}/interconnectAttachments/{resource}/testIamPermissions", - "httpMethod": "POST", - "description": "Returns permissions that a caller has on the specified resource.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "The name of the region for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "resource" - ], - "request": { - "$ref": "TestPermissionsRequest" - }, - "response": { - "$ref": "TestPermissionsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - } - } - }, - "interconnectLocations": { - "methods": { - "get": { - "id": "compute.interconnectLocations.get", - "path": "{project}/global/interconnectLocations/{interconnectLocation}", - "httpMethod": "GET", - "description": "Returns the details for the specified interconnect location. Get a list of available interconnect locations by making a list() request.", - "parameters": { - "interconnectLocation": { - "type": "string", - "description": "Name of the interconnect location to return.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "interconnectLocation" - ], - "response": { - "$ref": "InterconnectLocation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "list": { - "id": "compute.interconnectLocations.list", - "path": "{project}/global/interconnectLocations", - "httpMethod": "GET", - "description": "Retrieves the list of interconnect locations available to the specified project.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "InterconnectLocationList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - } - } - }, - "interconnects": { - "methods": { - "delete": { - "id": "compute.interconnects.delete", - "path": "{project}/global/interconnects/{interconnect}", - "httpMethod": "DELETE", - "description": "Deletes the specified interconnect.", - "parameters": { - "interconnect": { - "type": "string", - "description": "Name of the interconnect to delete.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "interconnect" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "get": { - "id": "compute.interconnects.get", - "path": "{project}/global/interconnects/{interconnect}", - "httpMethod": "GET", - "description": "Returns the specified interconnect. Get a list of available interconnects by making a list() request.", - "parameters": { - "interconnect": { - "type": "string", - "description": "Name of the interconnect to return.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "interconnect" - ], - "response": { - "$ref": "Interconnect" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "insert": { - "id": "compute.interconnects.insert", - "path": "{project}/global/interconnects", - "httpMethod": "POST", - "description": "Creates a Interconnect in the specified project using the data included in the request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project" - ], - "request": { - "$ref": "Interconnect" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "list": { - "id": "compute.interconnects.list", - "path": "{project}/global/interconnects", - "httpMethod": "GET", - "description": "Retrieves the list of interconnect available to the specified project.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "InterconnectList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "patch": { - "id": "compute.interconnects.patch", - "path": "{project}/global/interconnects/{interconnect}", - "httpMethod": "PATCH", - "description": "Updates the specified interconnect with the data included in the request. This method supports PATCH semantics and uses the JSON merge patch format and processing rules.", - "parameters": { - "interconnect": { - "type": "string", - "description": "Name of the interconnect to update.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "interconnect" - ], - "request": { - "$ref": "Interconnect" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "setLabels": { - "id": "compute.interconnects.setLabels", - "path": "{project}/global/interconnects/{resource}/setLabels", - "httpMethod": "POST", - "description": "Sets the labels on an Interconnect. To learn more about labels, read the Labeling Resources documentation.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "resource" - ], - "request": { - "$ref": "GlobalSetLabelsRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "testIamPermissions": { - "id": "compute.interconnects.testIamPermissions", - "path": "{project}/global/interconnects/{resource}/testIamPermissions", - "httpMethod": "POST", - "description": "Returns permissions that a caller has on the specified resource.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "(?:[-a-z0-9_]{0,62}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "resource" - ], - "request": { - "$ref": "TestPermissionsRequest" - }, - "response": { - "$ref": "TestPermissionsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - } - } - }, - "licenseCodes": { - "methods": { - "get": { - "id": "compute.licenseCodes.get", - "path": "{project}/global/licenseCodes/{licenseCode}", - "httpMethod": "GET", - "description": "Return a specified license code. License codes are mirrored across all projects that have permissions to read the License Code.", - "parameters": { - "licenseCode": { - "type": "string", - "description": "Number corresponding to the License code resource to return.", - "required": true, - "pattern": "[0-9]{0,61}?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "licenseCode" - ], - "response": { - "$ref": "LicenseCode" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - } - } - }, - "licenses": { - "methods": { - "delete": { - "id": "compute.licenses.delete", - "path": "{project}/global/licenses/{license}", - "httpMethod": "DELETE", - "description": "Deletes the specified license.", - "parameters": { - "license": { - "type": "string", - "description": "Name of the license resource to delete.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "license" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "get": { - "id": "compute.licenses.get", - "path": "{project}/global/licenses/{license}", - "httpMethod": "GET", - "description": "Returns the specified License resource.", - "parameters": { - "license": { - "type": "string", - "description": "Name of the License resource to return.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "license" - ], - "response": { - "$ref": "License" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "insert": { - "id": "compute.licenses.insert", - "path": "{project}/global/licenses", - "httpMethod": "POST", - "description": "Create a License resource in the specified project.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project" - ], - "request": { - "$ref": "License" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/devstorage.full_control", - "https://www.googleapis.com/auth/devstorage.read_only", - "https://www.googleapis.com/auth/devstorage.read_write" - ] - }, - "list": { - "id": "compute.licenses.list", - "path": "{project}/global/licenses", - "httpMethod": "GET", - "description": "Retrieves the list of licenses available in the specified project. This method does not get any licenses that belong to other projects, including licenses attached to publicly-available images, like Debian 8. If you want to get a list of publicly-available licenses, use this method to make a request to the respective image project, such as debian-cloud or windows-cloud.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "LicensesListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - } - } - }, - "machineTypes": { - "methods": { - "aggregatedList": { - "id": "compute.machineTypes.aggregatedList", - "path": "{project}/aggregated/machineTypes", - "httpMethod": "GET", - "description": "Retrieves an aggregated list of machine types.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "MachineTypeAggregatedList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "get": { - "id": "compute.machineTypes.get", - "path": "{project}/zones/{zone}/machineTypes/{machineType}", - "httpMethod": "GET", - "description": "Returns the specified machine type. Get a list of available machine types by making a list() request.", - "parameters": { - "machineType": { - "type": "string", - "description": "Name of the machine type to return.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "zone": { - "type": "string", - "description": "The name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "machineType" - ], - "response": { - "$ref": "MachineType" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "list": { - "id": "compute.machineTypes.list", - "path": "{project}/zones/{zone}/machineTypes", - "httpMethod": "GET", - "description": "Retrieves a list of machine types available to the specified project.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "zone": { - "type": "string", - "description": "The name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone" - ], - "response": { - "$ref": "MachineTypeList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - } - } - }, - "networks": { - "methods": { - "addPeering": { - "id": "compute.networks.addPeering", - "path": "{project}/global/networks/{network}/addPeering", - "httpMethod": "POST", - "description": "Adds a peering to the specified network.", - "parameters": { - "network": { - "type": "string", - "description": "Name of the network resource to add peering to.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "network" - ], - "request": { - "$ref": "NetworksAddPeeringRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "delete": { - "id": "compute.networks.delete", - "path": "{project}/global/networks/{network}", - "httpMethod": "DELETE", - "description": "Deletes the specified network.", - "parameters": { - "network": { - "type": "string", - "description": "Name of the network to delete.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "network" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "get": { - "id": "compute.networks.get", - "path": "{project}/global/networks/{network}", - "httpMethod": "GET", - "description": "Returns the specified network. Get a list of available networks by making a list() request.", - "parameters": { - "network": { - "type": "string", - "description": "Name of the network to return.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "network" - ], - "response": { - "$ref": "Network" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "insert": { - "id": "compute.networks.insert", - "path": "{project}/global/networks", - "httpMethod": "POST", - "description": "Creates a network in the specified project using the data included in the request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project" - ], - "request": { - "$ref": "Network" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "list": { - "id": "compute.networks.list", - "path": "{project}/global/networks", - "httpMethod": "GET", - "description": "Retrieves the list of networks available to the specified project.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "NetworkList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "patch": { - "id": "compute.networks.patch", - "path": "{project}/global/networks/{network}", - "httpMethod": "PATCH", - "description": "Patches the specified network with the data included in the request. Only the following fields can be modified: routingConfig.routingMode.", - "parameters": { - "network": { - "type": "string", - "description": "Name of the network to update.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "network" - ], - "request": { - "$ref": "Network" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "removePeering": { - "id": "compute.networks.removePeering", - "path": "{project}/global/networks/{network}/removePeering", - "httpMethod": "POST", - "description": "Removes a peering from the specified network.", - "parameters": { - "network": { - "type": "string", - "description": "Name of the network resource to remove peering from.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "network" - ], - "request": { - "$ref": "NetworksRemovePeeringRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "switchToCustomMode": { - "id": "compute.networks.switchToCustomMode", - "path": "{project}/global/networks/{network}/switchToCustomMode", - "httpMethod": "POST", - "description": "Switches the network mode from auto subnet mode to custom subnet mode.", - "parameters": { - "network": { - "type": "string", - "description": "Name of the network to be updated.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "network" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "testIamPermissions": { - "id": "compute.networks.testIamPermissions", - "path": "{project}/global/networks/{resource}/testIamPermissions", - "httpMethod": "POST", - "description": "Returns permissions that a caller has on the specified resource.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "(?:[-a-z0-9_]{0,62}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "resource" - ], - "request": { - "$ref": "TestPermissionsRequest" - }, - "response": { - "$ref": "TestPermissionsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - } - } - }, - "projects": { - "methods": { - "disableXpnHost": { - "id": "compute.projects.disableXpnHost", - "path": "{project}/disableXpnHost", - "httpMethod": "POST", - "description": "Disable this project as a shared VPC host project.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "disableXpnResource": { - "id": "compute.projects.disableXpnResource", - "path": "{project}/disableXpnResource", - "httpMethod": "POST", - "description": "Disable a serivce resource (a.k.a service project) associated with this host project.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project" - ], - "request": { - "$ref": "ProjectsDisableXpnResourceRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "enableXpnHost": { - "id": "compute.projects.enableXpnHost", - "path": "{project}/enableXpnHost", - "httpMethod": "POST", - "description": "Enable this project as a shared VPC host project.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "enableXpnResource": { - "id": "compute.projects.enableXpnResource", - "path": "{project}/enableXpnResource", - "httpMethod": "POST", - "description": "Enable service resource (a.k.a service project) for a host project, so that subnets in the host project can be used by instances in the service project.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project" - ], - "request": { - "$ref": "ProjectsEnableXpnResourceRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "get": { - "id": "compute.projects.get", - "path": "{project}", - "httpMethod": "GET", - "description": "Returns the specified Project resource.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "Project" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "getXpnHost": { - "id": "compute.projects.getXpnHost", - "path": "{project}/getXpnHost", - "httpMethod": "GET", - "description": "Get the shared VPC host project that this project links to. May be empty if no link exists.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "Project" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "getXpnResources": { - "id": "compute.projects.getXpnResources", - "path": "{project}/getXpnResources", - "httpMethod": "GET", - "description": "Get service resources (a.k.a service project) associated with this host project.", - "parameters": { - "filter": { - "type": "string", - "location": "query" - }, - "maxResults": { - "type": "integer", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "order_by": { - "type": "string", - "location": "query" - }, - "pageToken": { - "type": "string", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "ProjectsGetXpnResources" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "listXpnHosts": { - "id": "compute.projects.listXpnHosts", - "path": "{project}/listXpnHosts", - "httpMethod": "POST", - "description": "List all shared VPC host projects visible to the user in an organization.", - "parameters": { - "filter": { - "type": "string", - "location": "query" - }, - "maxResults": { - "type": "integer", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "order_by": { - "type": "string", - "location": "query" - }, - "pageToken": { - "type": "string", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "request": { - "$ref": "ProjectsListXpnHostsRequest" - }, - "response": { - "$ref": "XpnHostList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "moveDisk": { - "id": "compute.projects.moveDisk", - "path": "{project}/moveDisk", - "httpMethod": "POST", - "description": "Moves a persistent disk from one zone to another.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project" - ], - "request": { - "$ref": "DiskMoveRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "moveInstance": { - "id": "compute.projects.moveInstance", - "path": "{project}/moveInstance", - "httpMethod": "POST", - "description": "Moves an instance and its attached persistent disks from one zone to another.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project" - ], - "request": { - "$ref": "InstanceMoveRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "setCommonInstanceMetadata": { - "id": "compute.projects.setCommonInstanceMetadata", - "path": "{project}/setCommonInstanceMetadata", - "httpMethod": "POST", - "description": "Sets metadata common to all instances within the specified project using the data included in the request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project" - ], - "request": { - "$ref": "Metadata" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "setUsageExportBucket": { - "id": "compute.projects.setUsageExportBucket", - "path": "{project}/setUsageExportBucket", - "httpMethod": "POST", - "description": "Enables the usage export feature and sets the usage export bucket where reports are stored. If you provide an empty request body using this method, the usage export feature will be disabled.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project" - ], - "request": { - "$ref": "UsageExportLocation" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/devstorage.full_control", - "https://www.googleapis.com/auth/devstorage.read_only", - "https://www.googleapis.com/auth/devstorage.read_write" - ] - } - } - }, - "regionAutoscalers": { - "methods": { - "delete": { - "id": "compute.regionAutoscalers.delete", - "path": "{project}/regions/{region}/autoscalers/{autoscaler}", - "httpMethod": "DELETE", - "description": "Deletes the specified autoscaler.", - "parameters": { - "autoscaler": { - "type": "string", - "description": "Name of the autoscaler to delete.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "region", - "autoscaler" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "get": { - "id": "compute.regionAutoscalers.get", - "path": "{project}/regions/{region}/autoscalers/{autoscaler}", - "httpMethod": "GET", - "description": "Returns the specified autoscaler.", - "parameters": { - "autoscaler": { - "type": "string", - "description": "Name of the autoscaler to return.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "autoscaler" - ], - "response": { - "$ref": "Autoscaler" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "insert": { - "id": "compute.regionAutoscalers.insert", - "path": "{project}/regions/{region}/autoscalers", - "httpMethod": "POST", - "description": "Creates an autoscaler in the specified project using the data included in the request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "region" - ], - "request": { - "$ref": "Autoscaler" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "list": { - "id": "compute.regionAutoscalers.list", - "path": "{project}/regions/{region}/autoscalers", - "httpMethod": "GET", - "description": "Retrieves a list of autoscalers contained within the specified region.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region" - ], - "response": { - "$ref": "RegionAutoscalerList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "patch": { - "id": "compute.regionAutoscalers.patch", - "path": "{project}/regions/{region}/autoscalers", - "httpMethod": "PATCH", - "description": "Updates an autoscaler in the specified project using the data included in the request. This method supports PATCH semantics and uses the JSON merge patch format and processing rules.", - "parameters": { - "autoscaler": { - "type": "string", - "description": "Name of the autoscaler to patch.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "region" - ], - "request": { - "$ref": "Autoscaler" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "testIamPermissions": { - "id": "compute.regionAutoscalers.testIamPermissions", - "path": "{project}/regions/{region}/autoscalers/{resource}/testIamPermissions", - "httpMethod": "POST", - "description": "Returns permissions that a caller has on the specified resource.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "The name of the region for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "resource" - ], - "request": { - "$ref": "TestPermissionsRequest" - }, - "response": { - "$ref": "TestPermissionsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "update": { - "id": "compute.regionAutoscalers.update", - "path": "{project}/regions/{region}/autoscalers", - "httpMethod": "PUT", - "description": "Updates an autoscaler in the specified project using the data included in the request.", - "parameters": { - "autoscaler": { - "type": "string", - "description": "Name of the autoscaler to update.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "region" - ], - "request": { - "$ref": "Autoscaler" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - } - } - }, - "regionBackendServices": { - "methods": { - "delete": { - "id": "compute.regionBackendServices.delete", - "path": "{project}/regions/{region}/backendServices/{backendService}", - "httpMethod": "DELETE", - "description": "Deletes the specified regional BackendService resource.", - "parameters": { - "backendService": { - "type": "string", - "description": "Name of the BackendService resource to delete.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "region", - "backendService" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "get": { - "id": "compute.regionBackendServices.get", - "path": "{project}/regions/{region}/backendServices/{backendService}", - "httpMethod": "GET", - "description": "Returns the specified regional BackendService resource.", - "parameters": { - "backendService": { - "type": "string", - "description": "Name of the BackendService resource to return.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "backendService" - ], - "response": { - "$ref": "BackendService" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "getHealth": { - "id": "compute.regionBackendServices.getHealth", - "path": "{project}/regions/{region}/backendServices/{backendService}/getHealth", - "httpMethod": "POST", - "description": "Gets the most recent health check results for this regional BackendService.", - "parameters": { - "backendService": { - "type": "string", - "description": "Name of the BackendService resource to which the queried instance belongs.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "backendService" - ], - "request": { - "$ref": "ResourceGroupReference" - }, - "response": { - "$ref": "BackendServiceGroupHealth" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "insert": { - "id": "compute.regionBackendServices.insert", - "path": "{project}/regions/{region}/backendServices", - "httpMethod": "POST", - "description": "Creates a regional BackendService resource in the specified project using the data included in the request. There are several restrictions and guidelines to keep in mind when creating a regional backend service. Read Restrictions and Guidelines for more information.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "region" - ], - "request": { - "$ref": "BackendService" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "list": { - "id": "compute.regionBackendServices.list", - "path": "{project}/regions/{region}/backendServices", - "httpMethod": "GET", - "description": "Retrieves the list of regional BackendService resources available to the specified project in the given region.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region" - ], - "response": { - "$ref": "BackendServiceList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "patch": { - "id": "compute.regionBackendServices.patch", - "path": "{project}/regions/{region}/backendServices/{backendService}", - "httpMethod": "PATCH", - "description": "Updates the specified regional BackendService resource with the data included in the request. There are several restrictions and guidelines to keep in mind when updating a backend service. Read Restrictions and Guidelines for more information. This method supports PATCH semantics and uses the JSON merge patch format and processing rules.", - "parameters": { - "backendService": { - "type": "string", - "description": "Name of the BackendService resource to patch.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "region", - "backendService" - ], - "request": { - "$ref": "BackendService" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "testIamPermissions": { - "id": "compute.regionBackendServices.testIamPermissions", - "path": "{project}/regions/{region}/backendServices/{resource}/testIamPermissions", - "httpMethod": "POST", - "description": "Returns permissions that a caller has on the specified resource.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "The name of the region for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "resource" - ], - "request": { - "$ref": "TestPermissionsRequest" - }, - "response": { - "$ref": "TestPermissionsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "update": { - "id": "compute.regionBackendServices.update", - "path": "{project}/regions/{region}/backendServices/{backendService}", - "httpMethod": "PUT", - "description": "Updates the specified regional BackendService resource with the data included in the request. There are several restrictions and guidelines to keep in mind when updating a backend service. Read Restrictions and Guidelines for more information.", - "parameters": { - "backendService": { - "type": "string", - "description": "Name of the BackendService resource to update.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "region", - "backendService" - ], - "request": { - "$ref": "BackendService" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - } - } - }, - "regionCommitments": { - "methods": { - "aggregatedList": { - "id": "compute.regionCommitments.aggregatedList", - "path": "{project}/aggregated/commitments", - "httpMethod": "GET", - "description": "Retrieves an aggregated list of commitments.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "CommitmentAggregatedList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "get": { - "id": "compute.regionCommitments.get", - "path": "{project}/regions/{region}/commitments/{commitment}", - "httpMethod": "GET", - "description": "Returns the specified commitment resource. Get a list of available commitments by making a list() request.", - "parameters": { - "commitment": { - "type": "string", - "description": "Name of the commitment to return.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "commitment" - ], - "response": { - "$ref": "Commitment" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "insert": { - "id": "compute.regionCommitments.insert", - "path": "{project}/regions/{region}/commitments", - "httpMethod": "POST", - "description": "Creates a commitment in the specified project using the data included in the request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "region" - ], - "request": { - "$ref": "Commitment" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "list": { - "id": "compute.regionCommitments.list", - "path": "{project}/regions/{region}/commitments", - "httpMethod": "GET", - "description": "Retrieves a list of commitments contained within the specified region.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region" - ], - "response": { - "$ref": "CommitmentList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - } - } - }, - "regionInstanceGroupManagers": { - "methods": { - "abandonInstances": { - "id": "compute.regionInstanceGroupManagers.abandonInstances", - "path": "{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/abandonInstances", - "httpMethod": "POST", - "description": "Schedules a group action to remove the specified instances from the managed instance group. Abandoning an instance does not delete the instance, but it does remove the instance from any target pools that are applied by the managed instance group. This method reduces the targetSize of the managed instance group by the number of instances that you abandon. This operation is marked as DONE when the action is scheduled even if the instances have not yet been removed from the group. You must separately verify the status of the abandoning action with the listmanagedinstances method.\n\nIf the group is part of a backend service that has enabled connection draining, it can take up to 60 seconds after the connection draining duration has elapsed before the VM instance is removed or deleted.\n\nYou can specify a maximum of 1000 instances with this method per request.", - "parameters": { - "instanceGroupManager": { - "type": "string", - "description": "Name of the managed instance group.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "region", - "instanceGroupManager" - ], - "request": { - "$ref": "RegionInstanceGroupManagersAbandonInstancesRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "delete": { - "id": "compute.regionInstanceGroupManagers.delete", - "path": "{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}", - "httpMethod": "DELETE", - "description": "Deletes the specified managed instance group and all of the instances in that group.", - "parameters": { - "instanceGroupManager": { - "type": "string", - "description": "Name of the managed instance group to delete.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "region", - "instanceGroupManager" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "deleteInstances": { - "id": "compute.regionInstanceGroupManagers.deleteInstances", - "path": "{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/deleteInstances", - "httpMethod": "POST", - "description": "Schedules a group action to delete the specified instances in the managed instance group. The instances are also removed from any target pools of which they were a member. This method reduces the targetSize of the managed instance group by the number of instances that you delete. This operation is marked as DONE when the action is scheduled even if the instances are still being deleted. You must separately verify the status of the deleting action with the listmanagedinstances method.\n\nIf the group is part of a backend service that has enabled connection draining, it can take up to 60 seconds after the connection draining duration has elapsed before the VM instance is removed or deleted.\n\nYou can specify a maximum of 1000 instances with this method per request.", - "parameters": { - "instanceGroupManager": { - "type": "string", - "description": "Name of the managed instance group.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "region", - "instanceGroupManager" - ], - "request": { - "$ref": "RegionInstanceGroupManagersDeleteInstancesRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "get": { - "id": "compute.regionInstanceGroupManagers.get", - "path": "{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}", - "httpMethod": "GET", - "description": "Returns all of the details about the specified managed instance group.", - "parameters": { - "instanceGroupManager": { - "type": "string", - "description": "Name of the managed instance group to return.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "instanceGroupManager" - ], - "response": { - "$ref": "InstanceGroupManager" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "insert": { - "id": "compute.regionInstanceGroupManagers.insert", - "path": "{project}/regions/{region}/instanceGroupManagers", - "httpMethod": "POST", - "description": "Creates a managed instance group using the information that you specify in the request. After the group is created, it schedules an action to create instances in the group using the specified instance template. This operation is marked as DONE when the group is created even if the instances in the group have not yet been created. You must separately verify the status of the individual instances with the listmanagedinstances method.\n\nA regional managed instance group can contain up to 2000 instances.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "region" - ], - "request": { - "$ref": "InstanceGroupManager" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "list": { - "id": "compute.regionInstanceGroupManagers.list", - "path": "{project}/regions/{region}/instanceGroupManagers", - "httpMethod": "GET", - "description": "Retrieves the list of managed instance groups that are contained within the specified region.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region" - ], - "response": { - "$ref": "RegionInstanceGroupManagerList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "listManagedInstances": { - "id": "compute.regionInstanceGroupManagers.listManagedInstances", - "path": "{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/listManagedInstances", - "httpMethod": "POST", - "description": "Lists the instances in the managed instance group and instances that are scheduled to be created. The list includes any current actions that the group has scheduled for its instances.", - "parameters": { - "filter": { - "type": "string", - "location": "query" - }, - "instanceGroupManager": { - "type": "string", - "description": "The name of the managed instance group.", - "required": true, - "location": "path" - }, - "maxResults": { - "type": "integer", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "order_by": { - "type": "string", - "location": "query" - }, - "pageToken": { - "type": "string", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "instanceGroupManager" - ], - "response": { - "$ref": "RegionInstanceGroupManagersListInstancesResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "patch": { - "id": "compute.regionInstanceGroupManagers.patch", - "path": "{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}", - "httpMethod": "PATCH", - "description": "Updates a managed instance group using the information that you specify in the request. This operation is marked as DONE when the group is patched even if the instances in the group are still in the process of being patched. You must separately verify the status of the individual instances with the listmanagedinstances method. This method supports PATCH semantics and uses the JSON merge patch format and processing rules.", - "parameters": { - "instanceGroupManager": { - "type": "string", - "description": "The name of the instance group manager.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "region", - "instanceGroupManager" - ], - "request": { - "$ref": "InstanceGroupManager" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "recreateInstances": { - "id": "compute.regionInstanceGroupManagers.recreateInstances", - "path": "{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/recreateInstances", - "httpMethod": "POST", - "description": "Schedules a group action to recreate the specified instances in the managed instance group. The instances are deleted and recreated using the current instance template for the managed instance group. This operation is marked as DONE when the action is scheduled even if the instances have not yet been recreated. You must separately verify the status of the recreating action with the listmanagedinstances method.\n\nIf the group is part of a backend service that has enabled connection draining, it can take up to 60 seconds after the connection draining duration has elapsed before the VM instance is removed or deleted.\n\nYou can specify a maximum of 1000 instances with this method per request.", - "parameters": { - "instanceGroupManager": { - "type": "string", - "description": "Name of the managed instance group.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "region", - "instanceGroupManager" - ], - "request": { - "$ref": "RegionInstanceGroupManagersRecreateRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "resize": { - "id": "compute.regionInstanceGroupManagers.resize", - "path": "{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/resize", - "httpMethod": "POST", - "description": "Changes the intended size for the managed instance group. If you increase the size, the group schedules actions to create new instances using the current instance template. If you decrease the size, the group schedules delete actions on one or more instances. The resize operation is marked DONE when the resize actions are scheduled even if the group has not yet added or deleted any instances. You must separately verify the status of the creating or deleting actions with the listmanagedinstances method.\n\nIf the group is part of a backend service that has enabled connection draining, it can take up to 60 seconds after the connection draining duration has elapsed before the VM instance is removed or deleted.", - "parameters": { - "instanceGroupManager": { - "type": "string", - "description": "Name of the managed instance group.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "size": { - "type": "integer", - "description": "Number of instances that should exist in this instance group manager.", - "required": true, - "format": "int32", - "minimum": "0", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "region", - "instanceGroupManager", - "size" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "setAutoHealingPolicies": { - "id": "compute.regionInstanceGroupManagers.setAutoHealingPolicies", - "path": "{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/setAutoHealingPolicies", - "httpMethod": "POST", - "description": "Modifies the autohealing policy for the instances in this managed instance group.", - "parameters": { - "instanceGroupManager": { - "type": "string", - "description": "Name of the managed instance group.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "region", - "instanceGroupManager" - ], - "request": { - "$ref": "RegionInstanceGroupManagersSetAutoHealingRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "setInstanceTemplate": { - "id": "compute.regionInstanceGroupManagers.setInstanceTemplate", - "path": "{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/setInstanceTemplate", - "httpMethod": "POST", - "description": "Sets the instance template to use when creating new instances or recreating instances in this group. Existing instances are not affected.", - "parameters": { - "instanceGroupManager": { - "type": "string", - "description": "The name of the managed instance group.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "region", - "instanceGroupManager" - ], - "request": { - "$ref": "RegionInstanceGroupManagersSetTemplateRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "setTargetPools": { - "id": "compute.regionInstanceGroupManagers.setTargetPools", - "path": "{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/setTargetPools", - "httpMethod": "POST", - "description": "Modifies the target pools to which all new instances in this group are assigned. Existing instances in the group are not affected.", - "parameters": { - "instanceGroupManager": { - "type": "string", - "description": "Name of the managed instance group.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "region", - "instanceGroupManager" - ], - "request": { - "$ref": "RegionInstanceGroupManagersSetTargetPoolsRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "testIamPermissions": { - "id": "compute.regionInstanceGroupManagers.testIamPermissions", - "path": "{project}/regions/{region}/instanceGroupManagers/{resource}/testIamPermissions", - "httpMethod": "POST", - "description": "Returns permissions that a caller has on the specified resource.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "The name of the region for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "resource" - ], - "request": { - "$ref": "TestPermissionsRequest" - }, - "response": { - "$ref": "TestPermissionsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "update": { - "id": "compute.regionInstanceGroupManagers.update", - "path": "{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}", - "httpMethod": "PUT", - "description": "Updates a managed instance group using the information that you specify in the request. This operation is marked as DONE when the group is updated even if the instances in the group have not yet been updated. You must separately verify the status of the individual instances with the listmanagedinstances method.", - "parameters": { - "instanceGroupManager": { - "type": "string", - "description": "The name of the instance group manager.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "region", - "instanceGroupManager" - ], - "request": { - "$ref": "InstanceGroupManager" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - } - } - }, - "regionInstanceGroups": { - "methods": { - "get": { - "id": "compute.regionInstanceGroups.get", - "path": "{project}/regions/{region}/instanceGroups/{instanceGroup}", - "httpMethod": "GET", - "description": "Returns the specified instance group resource.", - "parameters": { - "instanceGroup": { - "type": "string", - "description": "Name of the instance group resource to return.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "instanceGroup" - ], - "response": { - "$ref": "InstanceGroup" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "list": { - "id": "compute.regionInstanceGroups.list", - "path": "{project}/regions/{region}/instanceGroups", - "httpMethod": "GET", - "description": "Retrieves the list of instance group resources contained within the specified region.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region" - ], - "response": { - "$ref": "RegionInstanceGroupList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "listInstances": { - "id": "compute.regionInstanceGroups.listInstances", - "path": "{project}/regions/{region}/instanceGroups/{instanceGroup}/listInstances", - "httpMethod": "POST", - "description": "Lists the instances in the specified instance group and displays information about the named ports. Depending on the specified options, this method can list all instances or only the instances that are running.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "instanceGroup": { - "type": "string", - "description": "Name of the regional instance group for which we want to list the instances.", - "required": true, - "location": "path" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "instanceGroup" - ], - "request": { - "$ref": "RegionInstanceGroupsListInstancesRequest" - }, - "response": { - "$ref": "RegionInstanceGroupsListInstances" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "setNamedPorts": { - "id": "compute.regionInstanceGroups.setNamedPorts", - "path": "{project}/regions/{region}/instanceGroups/{instanceGroup}/setNamedPorts", - "httpMethod": "POST", - "description": "Sets the named ports for the specified regional instance group.", - "parameters": { - "instanceGroup": { - "type": "string", - "description": "The name of the regional instance group where the named ports are updated.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "region", - "instanceGroup" - ], - "request": { - "$ref": "RegionInstanceGroupsSetNamedPortsRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "testIamPermissions": { - "id": "compute.regionInstanceGroups.testIamPermissions", - "path": "{project}/regions/{region}/instanceGroups/{resource}/testIamPermissions", - "httpMethod": "POST", - "description": "Returns permissions that a caller has on the specified resource.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "The name of the region for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "resource" - ], - "request": { - "$ref": "TestPermissionsRequest" - }, - "response": { - "$ref": "TestPermissionsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - } - } - }, - "regionOperations": { - "methods": { - "delete": { - "id": "compute.regionOperations.delete", - "path": "{project}/regions/{region}/operations/{operation}", - "httpMethod": "DELETE", - "description": "Deletes the specified region-specific Operations resource.", - "parameters": { - "operation": { - "type": "string", - "description": "Name of the Operations resource to delete.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "operation" - ], - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "get": { - "id": "compute.regionOperations.get", - "path": "{project}/regions/{region}/operations/{operation}", - "httpMethod": "GET", - "description": "Retrieves the specified region-specific Operations resource.", - "parameters": { - "operation": { - "type": "string", - "description": "Name of the Operations resource to return.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "operation" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "list": { - "id": "compute.regionOperations.list", - "path": "{project}/regions/{region}/operations", - "httpMethod": "GET", - "description": "Retrieves a list of Operation resources contained within the specified region.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region" - ], - "response": { - "$ref": "OperationList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - } - } - }, - "regions": { - "methods": { - "get": { - "id": "compute.regions.get", - "path": "{project}/regions/{region}", - "httpMethod": "GET", - "description": "Returns the specified Region resource. Get a list of available regions by making a list() request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region resource to return.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region" - ], - "response": { - "$ref": "Region" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "list": { - "id": "compute.regions.list", - "path": "{project}/regions", - "httpMethod": "GET", - "description": "Retrieves the list of region resources available to the specified project.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "RegionList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - } - } - }, - "routers": { - "methods": { - "aggregatedList": { - "id": "compute.routers.aggregatedList", - "path": "{project}/aggregated/routers", - "httpMethod": "GET", - "description": "Retrieves an aggregated list of routers.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "RouterAggregatedList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "delete": { - "id": "compute.routers.delete", - "path": "{project}/regions/{region}/routers/{router}", - "httpMethod": "DELETE", - "description": "Deletes the specified Router resource.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "router": { - "type": "string", - "description": "Name of the Router resource to delete.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "router" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "get": { - "id": "compute.routers.get", - "path": "{project}/regions/{region}/routers/{router}", - "httpMethod": "GET", - "description": "Returns the specified Router resource. Get a list of available routers by making a list() request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "router": { - "type": "string", - "description": "Name of the Router resource to return.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "router" - ], - "response": { - "$ref": "Router" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "getRouterStatus": { - "id": "compute.routers.getRouterStatus", - "path": "{project}/regions/{region}/routers/{router}/getRouterStatus", - "httpMethod": "GET", - "description": "Retrieves runtime information of the specified router.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "router": { - "type": "string", - "description": "Name of the Router resource to query.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "router" - ], - "response": { - "$ref": "RouterStatusResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "insert": { - "id": "compute.routers.insert", - "path": "{project}/regions/{region}/routers", - "httpMethod": "POST", - "description": "Creates a Router resource in the specified project and region using the data included in the request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "region" - ], - "request": { - "$ref": "Router" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "list": { - "id": "compute.routers.list", - "path": "{project}/regions/{region}/routers", - "httpMethod": "GET", - "description": "Retrieves a list of Router resources available to the specified project.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region" - ], - "response": { - "$ref": "RouterList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "patch": { - "id": "compute.routers.patch", - "path": "{project}/regions/{region}/routers/{router}", - "httpMethod": "PATCH", - "description": "Patches the specified Router resource with the data included in the request. This method supports PATCH semantics and uses JSON merge patch format and processing rules.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "router": { - "type": "string", - "description": "Name of the Router resource to patch.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "router" - ], - "request": { - "$ref": "Router" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "preview": { - "id": "compute.routers.preview", - "path": "{project}/regions/{region}/routers/{router}/preview", - "httpMethod": "POST", - "description": "Preview fields auto-generated during router create and update operations. Calling this method does NOT create or update the router.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "router": { - "type": "string", - "description": "Name of the Router resource to query.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "router" - ], - "request": { - "$ref": "Router" - }, - "response": { - "$ref": "RoutersPreviewResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "testIamPermissions": { - "id": "compute.routers.testIamPermissions", - "path": "{project}/regions/{region}/routers/{resource}/testIamPermissions", - "httpMethod": "POST", - "description": "Returns permissions that a caller has on the specified resource.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "The name of the region for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "resource" - ], - "request": { - "$ref": "TestPermissionsRequest" - }, - "response": { - "$ref": "TestPermissionsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "update": { - "id": "compute.routers.update", - "path": "{project}/regions/{region}/routers/{router}", - "httpMethod": "PUT", - "description": "Updates the specified Router resource with the data included in the request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "router": { - "type": "string", - "description": "Name of the Router resource to update.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "router" - ], - "request": { - "$ref": "Router" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - } - } - }, - "routes": { - "methods": { - "delete": { - "id": "compute.routes.delete", - "path": "{project}/global/routes/{route}", - "httpMethod": "DELETE", - "description": "Deletes the specified Route resource.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "route": { - "type": "string", - "description": "Name of the Route resource to delete.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "route" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "get": { - "id": "compute.routes.get", - "path": "{project}/global/routes/{route}", - "httpMethod": "GET", - "description": "Returns the specified Route resource. Get a list of available routes by making a list() request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "route": { - "type": "string", - "description": "Name of the Route resource to return.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "route" - ], - "response": { - "$ref": "Route" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "insert": { - "id": "compute.routes.insert", - "path": "{project}/global/routes", - "httpMethod": "POST", - "description": "Creates a Route resource in the specified project using the data included in the request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project" - ], - "request": { - "$ref": "Route" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "list": { - "id": "compute.routes.list", - "path": "{project}/global/routes", - "httpMethod": "GET", - "description": "Retrieves the list of Route resources available to the specified project.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "RouteList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "testIamPermissions": { - "id": "compute.routes.testIamPermissions", - "path": "{project}/global/routes/{resource}/testIamPermissions", - "httpMethod": "POST", - "description": "Returns permissions that a caller has on the specified resource.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "(?:[-a-z0-9_]{0,62}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "resource" - ], - "request": { - "$ref": "TestPermissionsRequest" - }, - "response": { - "$ref": "TestPermissionsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - } - } - }, - "securityPolicies": { - "methods": { - "addRule": { - "id": "compute.securityPolicies.addRule", - "path": "{project}/global/securityPolicies/{securityPolicy}/addRule", - "httpMethod": "POST", - "description": "Inserts a rule into a security policy.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "securityPolicy": { - "type": "string", - "description": "Name of the security policy to update.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "securityPolicy" - ], - "request": { - "$ref": "SecurityPolicyRule" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "delete": { - "id": "compute.securityPolicies.delete", - "path": "{project}/global/securityPolicies/{securityPolicy}", - "httpMethod": "DELETE", - "description": "Deletes the specified policy.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "securityPolicy": { - "type": "string", - "description": "Name of the security policy to delete.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "securityPolicy" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "get": { - "id": "compute.securityPolicies.get", - "path": "{project}/global/securityPolicies/{securityPolicy}", - "httpMethod": "GET", - "description": "List all of the ordered rules present in a single specified policy.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "securityPolicy": { - "type": "string", - "description": "Name of the security policy to get.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "securityPolicy" - ], - "response": { - "$ref": "SecurityPolicy" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "getRule": { - "id": "compute.securityPolicies.getRule", - "path": "{project}/global/securityPolicies/{securityPolicy}/getRule", - "httpMethod": "GET", - "description": "Gets a rule at the specified priority.", - "parameters": { - "priority": { - "type": "integer", - "description": "The priority of the rule to get from the security policy.", - "format": "int32", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "securityPolicy": { - "type": "string", - "description": "Name of the security policy to which the queried rule belongs.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "securityPolicy" - ], - "response": { - "$ref": "SecurityPolicyRule" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "insert": { - "id": "compute.securityPolicies.insert", - "path": "{project}/global/securityPolicies", - "httpMethod": "POST", - "description": "Creates a new policy in the specified project using the data included in the request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project" - ], - "request": { - "$ref": "SecurityPolicy" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "list": { - "id": "compute.securityPolicies.list", - "path": "{project}/global/securityPolicies", - "httpMethod": "GET", - "description": "List all the policies that have been configured for the specified project.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "SecurityPolicyList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "patch": { - "id": "compute.securityPolicies.patch", - "path": "{project}/global/securityPolicies/{securityPolicy}", - "httpMethod": "PATCH", - "description": "Patches the specified policy with the data included in the request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "securityPolicy": { - "type": "string", - "description": "Name of the security policy to update.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "securityPolicy" - ], - "request": { - "$ref": "SecurityPolicy" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "patchRule": { - "id": "compute.securityPolicies.patchRule", - "path": "{project}/global/securityPolicies/{securityPolicy}/patchRule", - "httpMethod": "POST", - "description": "Patches a rule at the specified priority.", - "parameters": { - "priority": { - "type": "integer", - "description": "The priority of the rule to patch.", - "format": "int32", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "securityPolicy": { - "type": "string", - "description": "Name of the security policy to update.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "securityPolicy" - ], - "request": { - "$ref": "SecurityPolicyRule" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "removeRule": { - "id": "compute.securityPolicies.removeRule", - "path": "{project}/global/securityPolicies/{securityPolicy}/removeRule", - "httpMethod": "POST", - "description": "Deletes a rule at the specified priority.", - "parameters": { - "priority": { - "type": "integer", - "description": "The priority of the rule to remove from the security policy.", - "format": "int32", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "securityPolicy": { - "type": "string", - "description": "Name of the security policy to update.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "securityPolicy" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "testIamPermissions": { - "id": "compute.securityPolicies.testIamPermissions", - "path": "{project}/global/securityPolicies/{resource}/testIamPermissions", - "httpMethod": "POST", - "description": "Returns permissions that a caller has on the specified resource.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "(?:[-a-z0-9_]{0,62}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "resource" - ], - "request": { - "$ref": "TestPermissionsRequest" - }, - "response": { - "$ref": "TestPermissionsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - } - } - }, - "snapshots": { - "methods": { - "delete": { - "id": "compute.snapshots.delete", - "path": "{project}/global/snapshots/{snapshot}", - "httpMethod": "DELETE", - "description": "Deletes the specified Snapshot resource. Keep in mind that deleting a single snapshot might not necessarily delete all the data on that snapshot. If any data on the snapshot that is marked for deletion is needed for subsequent snapshots, the data will be moved to the next corresponding snapshot.\n\nFor more information, see Deleting snaphots.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "snapshot": { - "type": "string", - "description": "Name of the Snapshot resource to delete.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "snapshot" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "get": { - "id": "compute.snapshots.get", - "path": "{project}/global/snapshots/{snapshot}", - "httpMethod": "GET", - "description": "Returns the specified Snapshot resource. Get a list of available snapshots by making a list() request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "snapshot": { - "type": "string", - "description": "Name of the Snapshot resource to return.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "snapshot" - ], - "response": { - "$ref": "Snapshot" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "list": { - "id": "compute.snapshots.list", - "path": "{project}/global/snapshots", - "httpMethod": "GET", - "description": "Retrieves the list of Snapshot resources contained within the specified project.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "SnapshotList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "setLabels": { - "id": "compute.snapshots.setLabels", - "path": "{project}/global/snapshots/{resource}/setLabels", - "httpMethod": "POST", - "description": "Sets the labels on a snapshot. To learn more about labels, read the Labeling Resources documentation.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "resource" - ], - "request": { - "$ref": "GlobalSetLabelsRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "testIamPermissions": { - "id": "compute.snapshots.testIamPermissions", - "path": "{project}/global/snapshots/{resource}/testIamPermissions", - "httpMethod": "POST", - "description": "Returns permissions that a caller has on the specified resource.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "(?:[-a-z0-9_]{0,62}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "resource" - ], - "request": { - "$ref": "TestPermissionsRequest" - }, - "response": { - "$ref": "TestPermissionsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - } - } - }, - "sslCertificates": { - "methods": { - "delete": { - "id": "compute.sslCertificates.delete", - "path": "{project}/global/sslCertificates/{sslCertificate}", - "httpMethod": "DELETE", - "description": "Deletes the specified SslCertificate resource.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "sslCertificate": { - "type": "string", - "description": "Name of the SslCertificate resource to delete.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "sslCertificate" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "get": { - "id": "compute.sslCertificates.get", - "path": "{project}/global/sslCertificates/{sslCertificate}", - "httpMethod": "GET", - "description": "Returns the specified SslCertificate resource. Get a list of available SSL certificates by making a list() request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "sslCertificate": { - "type": "string", - "description": "Name of the SslCertificate resource to return.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "sslCertificate" - ], - "response": { - "$ref": "SslCertificate" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "insert": { - "id": "compute.sslCertificates.insert", - "path": "{project}/global/sslCertificates", - "httpMethod": "POST", - "description": "Creates a SslCertificate resource in the specified project using the data included in the request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project" - ], - "request": { - "$ref": "SslCertificate" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "list": { - "id": "compute.sslCertificates.list", - "path": "{project}/global/sslCertificates", - "httpMethod": "GET", - "description": "Retrieves the list of SslCertificate resources available to the specified project.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "SslCertificateList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "testIamPermissions": { - "id": "compute.sslCertificates.testIamPermissions", - "path": "{project}/global/sslCertificates/{resource}/testIamPermissions", - "httpMethod": "POST", - "description": "Returns permissions that a caller has on the specified resource.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "(?:[-a-z0-9_]{0,62}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "resource" - ], - "request": { - "$ref": "TestPermissionsRequest" - }, - "response": { - "$ref": "TestPermissionsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - } - } - }, - "sslPolicies": { - "methods": { - "delete": { - "id": "compute.sslPolicies.delete", - "path": "{project}/global/sslPolicies/{sslPolicy}", - "httpMethod": "DELETE", - "description": "Deletes the specified SSL policy. The SSL policy resource can be deleted only if it is not in use by any TargetHttpsProxy or TargetSslProxy resources.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "sslPolicy": { - "type": "string", - "description": "Name of the SSL policy to delete. The name must be 1-63 characters long, and comply with RFC1035.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "sslPolicy" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "get": { - "id": "compute.sslPolicies.get", - "path": "{project}/global/sslPolicies/{sslPolicy}", - "httpMethod": "GET", - "description": "List all of the ordered rules present in a single specified policy.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "sslPolicy": { - "type": "string", - "description": "Name of the SSL policy to update. The name must be 1-63 characters long, and comply with RFC1035.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "sslPolicy" - ], - "response": { - "$ref": "SslPolicy" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "insert": { - "id": "compute.sslPolicies.insert", - "path": "{project}/global/sslPolicies", - "httpMethod": "POST", - "description": "Returns the specified SSL policy resource. Get a list of available SSL policies by making a list() request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project" - ], - "request": { - "$ref": "SslPolicy" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "list": { - "id": "compute.sslPolicies.list", - "path": "{project}/global/sslPolicies", - "httpMethod": "GET", - "description": "List all the SSL policies that have been configured for the specified project.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "SslPoliciesList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "listAvailableFeatures": { - "id": "compute.sslPolicies.listAvailableFeatures", - "path": "{project}/global/sslPolicies/listAvailableFeatures", - "httpMethod": "GET", - "description": "Lists all features that can be specified in the SSL policy when using custom profile.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "SslPoliciesListAvailableFeaturesResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "patch": { - "id": "compute.sslPolicies.patch", - "path": "{project}/global/sslPolicies/{sslPolicy}", - "httpMethod": "PATCH", - "description": "Patches the specified SSL policy with the data included in the request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "sslPolicy": { - "type": "string", - "description": "Name of the SSL policy to update. The name must be 1-63 characters long, and comply with RFC1035.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "sslPolicy" - ], - "request": { - "$ref": "SslPolicy" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "testIamPermissions": { - "id": "compute.sslPolicies.testIamPermissions", - "path": "{project}/global/sslPolicies/{resource}/testIamPermissions", - "httpMethod": "POST", - "description": "Returns permissions that a caller has on the specified resource.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "(?:[-a-z0-9_]{0,62}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "resource" - ], - "request": { - "$ref": "TestPermissionsRequest" - }, - "response": { - "$ref": "TestPermissionsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - } - } - }, - "subnetworks": { - "methods": { - "aggregatedList": { - "id": "compute.subnetworks.aggregatedList", - "path": "{project}/aggregated/subnetworks", - "httpMethod": "GET", - "description": "Retrieves an aggregated list of subnetworks.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "SubnetworkAggregatedList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "delete": { - "id": "compute.subnetworks.delete", - "path": "{project}/regions/{region}/subnetworks/{subnetwork}", - "httpMethod": "DELETE", - "description": "Deletes the specified subnetwork.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "subnetwork": { - "type": "string", - "description": "Name of the Subnetwork resource to delete.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "subnetwork" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "expandIpCidrRange": { - "id": "compute.subnetworks.expandIpCidrRange", - "path": "{project}/regions/{region}/subnetworks/{subnetwork}/expandIpCidrRange", - "httpMethod": "POST", - "description": "Expands the IP CIDR range of the subnetwork to a specified value.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "subnetwork": { - "type": "string", - "description": "Name of the Subnetwork resource to update.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "subnetwork" - ], - "request": { - "$ref": "SubnetworksExpandIpCidrRangeRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "get": { - "id": "compute.subnetworks.get", - "path": "{project}/regions/{region}/subnetworks/{subnetwork}", - "httpMethod": "GET", - "description": "Returns the specified subnetwork. Get a list of available subnetworks list() request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "subnetwork": { - "type": "string", - "description": "Name of the Subnetwork resource to return.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "subnetwork" - ], - "response": { - "$ref": "Subnetwork" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "getIamPolicy": { - "id": "compute.subnetworks.getIamPolicy", - "path": "{project}/regions/{region}/subnetworks/{resource}/getIamPolicy", - "httpMethod": "GET", - "description": "Gets the access control policy for a resource. May be empty if no such policy or resource exists.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "The name of the region for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "resource" - ], - "response": { - "$ref": "Policy" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "insert": { - "id": "compute.subnetworks.insert", - "path": "{project}/regions/{region}/subnetworks", - "httpMethod": "POST", - "description": "Creates a subnetwork in the specified project using the data included in the request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "region" - ], - "request": { - "$ref": "Subnetwork" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "list": { - "id": "compute.subnetworks.list", - "path": "{project}/regions/{region}/subnetworks", - "httpMethod": "GET", - "description": "Retrieves a list of subnetworks available to the specified project.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region" - ], - "response": { - "$ref": "SubnetworkList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "patch": { - "id": "compute.subnetworks.patch", - "path": "{project}/regions/{region}/subnetworks/{subnetwork}", - "httpMethod": "PATCH", - "description": "Patches the specified subnetwork with the data included in the request. Only the following fields within the subnetwork resource can be specified in the request: secondary_ip_range and allow_subnet_cidr_routes_overlap. It is also mandatory to specify the current fingeprint of the subnetwork resource being patched.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "subnetwork": { - "type": "string", - "description": "Name of the Subnetwork resource to patch.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "subnetwork" - ], - "request": { - "$ref": "Subnetwork" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "setIamPolicy": { - "id": "compute.subnetworks.setIamPolicy", - "path": "{project}/regions/{region}/subnetworks/{resource}/setIamPolicy", - "httpMethod": "POST", - "description": "Sets the access control policy on the specified resource. Replaces any existing policy.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "The name of the region for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "resource" - ], - "request": { - "$ref": "Policy" - }, - "response": { - "$ref": "Policy" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "setPrivateIpGoogleAccess": { - "id": "compute.subnetworks.setPrivateIpGoogleAccess", - "path": "{project}/regions/{region}/subnetworks/{subnetwork}/setPrivateIpGoogleAccess", - "httpMethod": "POST", - "description": "Set whether VMs in this subnet can access Google services without assigning external IP addresses through Private Google Access.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "subnetwork": { - "type": "string", - "description": "Name of the Subnetwork resource.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "subnetwork" - ], - "request": { - "$ref": "SubnetworksSetPrivateIpGoogleAccessRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "testIamPermissions": { - "id": "compute.subnetworks.testIamPermissions", - "path": "{project}/regions/{region}/subnetworks/{resource}/testIamPermissions", - "httpMethod": "POST", - "description": "Returns permissions that a caller has on the specified resource.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "The name of the region for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "resource" - ], - "request": { - "$ref": "TestPermissionsRequest" - }, - "response": { - "$ref": "TestPermissionsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - } - } - }, - "targetHttpProxies": { - "methods": { - "delete": { - "id": "compute.targetHttpProxies.delete", - "path": "{project}/global/targetHttpProxies/{targetHttpProxy}", - "httpMethod": "DELETE", - "description": "Deletes the specified TargetHttpProxy resource.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "targetHttpProxy": { - "type": "string", - "description": "Name of the TargetHttpProxy resource to delete.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "targetHttpProxy" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "get": { - "id": "compute.targetHttpProxies.get", - "path": "{project}/global/targetHttpProxies/{targetHttpProxy}", - "httpMethod": "GET", - "description": "Returns the specified TargetHttpProxy resource. Get a list of available target HTTP proxies by making a list() request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "targetHttpProxy": { - "type": "string", - "description": "Name of the TargetHttpProxy resource to return.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "targetHttpProxy" - ], - "response": { - "$ref": "TargetHttpProxy" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "insert": { - "id": "compute.targetHttpProxies.insert", - "path": "{project}/global/targetHttpProxies", - "httpMethod": "POST", - "description": "Creates a TargetHttpProxy resource in the specified project using the data included in the request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project" - ], - "request": { - "$ref": "TargetHttpProxy" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "list": { - "id": "compute.targetHttpProxies.list", - "path": "{project}/global/targetHttpProxies", - "httpMethod": "GET", - "description": "Retrieves the list of TargetHttpProxy resources available to the specified project.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "TargetHttpProxyList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "setUrlMap": { - "id": "compute.targetHttpProxies.setUrlMap", - "path": "{project}/targetHttpProxies/{targetHttpProxy}/setUrlMap", - "httpMethod": "POST", - "description": "Changes the URL map for TargetHttpProxy.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "targetHttpProxy": { - "type": "string", - "description": "Name of the TargetHttpProxy to set a URL map for.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "targetHttpProxy" - ], - "request": { - "$ref": "UrlMapReference" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "testIamPermissions": { - "id": "compute.targetHttpProxies.testIamPermissions", - "path": "{project}/global/targetHttpProxies/{resource}/testIamPermissions", - "httpMethod": "POST", - "description": "Returns permissions that a caller has on the specified resource.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "(?:[-a-z0-9_]{0,62}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "resource" - ], - "request": { - "$ref": "TestPermissionsRequest" - }, - "response": { - "$ref": "TestPermissionsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - } - } - }, - "targetHttpsProxies": { - "methods": { - "delete": { - "id": "compute.targetHttpsProxies.delete", - "path": "{project}/global/targetHttpsProxies/{targetHttpsProxy}", - "httpMethod": "DELETE", - "description": "Deletes the specified TargetHttpsProxy resource.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "targetHttpsProxy": { - "type": "string", - "description": "Name of the TargetHttpsProxy resource to delete.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "targetHttpsProxy" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "get": { - "id": "compute.targetHttpsProxies.get", - "path": "{project}/global/targetHttpsProxies/{targetHttpsProxy}", - "httpMethod": "GET", - "description": "Returns the specified TargetHttpsProxy resource. Get a list of available target HTTPS proxies by making a list() request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "targetHttpsProxy": { - "type": "string", - "description": "Name of the TargetHttpsProxy resource to return.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "targetHttpsProxy" - ], - "response": { - "$ref": "TargetHttpsProxy" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "insert": { - "id": "compute.targetHttpsProxies.insert", - "path": "{project}/global/targetHttpsProxies", - "httpMethod": "POST", - "description": "Creates a TargetHttpsProxy resource in the specified project using the data included in the request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project" - ], - "request": { - "$ref": "TargetHttpsProxy" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "list": { - "id": "compute.targetHttpsProxies.list", - "path": "{project}/global/targetHttpsProxies", - "httpMethod": "GET", - "description": "Retrieves the list of TargetHttpsProxy resources available to the specified project.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "TargetHttpsProxyList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "setQuicOverride": { - "id": "compute.targetHttpsProxies.setQuicOverride", - "path": "{project}/global/targetHttpsProxies/{targetHttpsProxy}/setQuicOverride", - "httpMethod": "POST", - "description": "Sets the QUIC override policy for TargetHttpsProxy.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "targetHttpsProxy": { - "type": "string", - "description": "Name of the TargetHttpsProxy resource to set the QUIC override policy for. The name should conform to RFC1035.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "targetHttpsProxy" - ], - "request": { - "$ref": "TargetHttpsProxiesSetQuicOverrideRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "setSslCertificates": { - "id": "compute.targetHttpsProxies.setSslCertificates", - "path": "{project}/targetHttpsProxies/{targetHttpsProxy}/setSslCertificates", - "httpMethod": "POST", - "description": "Replaces SslCertificates for TargetHttpsProxy.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "targetHttpsProxy": { - "type": "string", - "description": "Name of the TargetHttpsProxy resource to set an SslCertificates resource for.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "targetHttpsProxy" - ], - "request": { - "$ref": "TargetHttpsProxiesSetSslCertificatesRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "setSslPolicy": { - "id": "compute.targetHttpsProxies.setSslPolicy", - "path": "{project}/global/targetHttpsProxies/{targetHttpsProxy}/setSslPolicy", - "httpMethod": "POST", - "description": "Sets the SSL policy for TargetHttpsProxy. The SSL policy specifies the server-side support for SSL features. This affects connections between clients and the HTTPS proxy load balancer. They do not affect the connection between the load balancer and the backends.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "targetHttpsProxy": { - "type": "string", - "description": "Name of the TargetHttpsProxy resource whose SSL policy is to be set. The name must be 1-63 characters long, and comply with RFC1035.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "targetHttpsProxy" - ], - "request": { - "$ref": "SslPolicyReference" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "setUrlMap": { - "id": "compute.targetHttpsProxies.setUrlMap", - "path": "{project}/targetHttpsProxies/{targetHttpsProxy}/setUrlMap", - "httpMethod": "POST", - "description": "Changes the URL map for TargetHttpsProxy.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "targetHttpsProxy": { - "type": "string", - "description": "Name of the TargetHttpsProxy resource whose URL map is to be set.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "targetHttpsProxy" - ], - "request": { - "$ref": "UrlMapReference" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "testIamPermissions": { - "id": "compute.targetHttpsProxies.testIamPermissions", - "path": "{project}/global/targetHttpsProxies/{resource}/testIamPermissions", - "httpMethod": "POST", - "description": "Returns permissions that a caller has on the specified resource.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "(?:[-a-z0-9_]{0,62}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "resource" - ], - "request": { - "$ref": "TestPermissionsRequest" - }, - "response": { - "$ref": "TestPermissionsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - } - } - }, - "targetInstances": { - "methods": { - "aggregatedList": { - "id": "compute.targetInstances.aggregatedList", - "path": "{project}/aggregated/targetInstances", - "httpMethod": "GET", - "description": "Retrieves an aggregated list of target instances.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "TargetInstanceAggregatedList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "delete": { - "id": "compute.targetInstances.delete", - "path": "{project}/zones/{zone}/targetInstances/{targetInstance}", - "httpMethod": "DELETE", - "description": "Deletes the specified TargetInstance resource.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "targetInstance": { - "type": "string", - "description": "Name of the TargetInstance resource to delete.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "zone": { - "type": "string", - "description": "Name of the zone scoping this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "targetInstance" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "get": { - "id": "compute.targetInstances.get", - "path": "{project}/zones/{zone}/targetInstances/{targetInstance}", - "httpMethod": "GET", - "description": "Returns the specified TargetInstance resource. Get a list of available target instances by making a list() request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "targetInstance": { - "type": "string", - "description": "Name of the TargetInstance resource to return.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "zone": { - "type": "string", - "description": "Name of the zone scoping this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "targetInstance" - ], - "response": { - "$ref": "TargetInstance" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "insert": { - "id": "compute.targetInstances.insert", - "path": "{project}/zones/{zone}/targetInstances", - "httpMethod": "POST", - "description": "Creates a TargetInstance resource in the specified project and zone using the data included in the request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "zone": { - "type": "string", - "description": "Name of the zone scoping this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone" - ], - "request": { - "$ref": "TargetInstance" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "list": { - "id": "compute.targetInstances.list", - "path": "{project}/zones/{zone}/targetInstances", - "httpMethod": "GET", - "description": "Retrieves a list of TargetInstance resources available to the specified project and zone.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "zone": { - "type": "string", - "description": "Name of the zone scoping this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone" - ], - "response": { - "$ref": "TargetInstanceList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "testIamPermissions": { - "id": "compute.targetInstances.testIamPermissions", - "path": "{project}/zones/{zone}/targetInstances/{resource}/testIamPermissions", - "httpMethod": "POST", - "description": "Returns permissions that a caller has on the specified resource.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "zone": { - "type": "string", - "description": "The name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "resource" - ], - "request": { - "$ref": "TestPermissionsRequest" - }, - "response": { - "$ref": "TestPermissionsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - } - } - }, - "targetPools": { - "methods": { - "addHealthCheck": { - "id": "compute.targetPools.addHealthCheck", - "path": "{project}/regions/{region}/targetPools/{targetPool}/addHealthCheck", - "httpMethod": "POST", - "description": "Adds health check URLs to a target pool.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "targetPool": { - "type": "string", - "description": "Name of the target pool to add a health check to.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "targetPool" - ], - "request": { - "$ref": "TargetPoolsAddHealthCheckRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "addInstance": { - "id": "compute.targetPools.addInstance", - "path": "{project}/regions/{region}/targetPools/{targetPool}/addInstance", - "httpMethod": "POST", - "description": "Adds an instance to a target pool.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "targetPool": { - "type": "string", - "description": "Name of the TargetPool resource to add instances to.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "targetPool" - ], - "request": { - "$ref": "TargetPoolsAddInstanceRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "aggregatedList": { - "id": "compute.targetPools.aggregatedList", - "path": "{project}/aggregated/targetPools", - "httpMethod": "GET", - "description": "Retrieves an aggregated list of target pools.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "TargetPoolAggregatedList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "delete": { - "id": "compute.targetPools.delete", - "path": "{project}/regions/{region}/targetPools/{targetPool}", - "httpMethod": "DELETE", - "description": "Deletes the specified target pool.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "targetPool": { - "type": "string", - "description": "Name of the TargetPool resource to delete.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "targetPool" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "get": { - "id": "compute.targetPools.get", - "path": "{project}/regions/{region}/targetPools/{targetPool}", - "httpMethod": "GET", - "description": "Returns the specified target pool. Get a list of available target pools by making a list() request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "targetPool": { - "type": "string", - "description": "Name of the TargetPool resource to return.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "targetPool" - ], - "response": { - "$ref": "TargetPool" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "getHealth": { - "id": "compute.targetPools.getHealth", - "path": "{project}/regions/{region}/targetPools/{targetPool}/getHealth", - "httpMethod": "POST", - "description": "Gets the most recent health check results for each IP for the instance that is referenced by the given target pool.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "targetPool": { - "type": "string", - "description": "Name of the TargetPool resource to which the queried instance belongs.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "targetPool" - ], - "request": { - "$ref": "InstanceReference" - }, - "response": { - "$ref": "TargetPoolInstanceHealth" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "insert": { - "id": "compute.targetPools.insert", - "path": "{project}/regions/{region}/targetPools", - "httpMethod": "POST", - "description": "Creates a target pool in the specified project and region using the data included in the request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "region" - ], - "request": { - "$ref": "TargetPool" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "list": { - "id": "compute.targetPools.list", - "path": "{project}/regions/{region}/targetPools", - "httpMethod": "GET", - "description": "Retrieves a list of target pools available to the specified project and region.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region" - ], - "response": { - "$ref": "TargetPoolList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "removeHealthCheck": { - "id": "compute.targetPools.removeHealthCheck", - "path": "{project}/regions/{region}/targetPools/{targetPool}/removeHealthCheck", - "httpMethod": "POST", - "description": "Removes health check URL from a target pool.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "targetPool": { - "type": "string", - "description": "Name of the target pool to remove health checks from.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "targetPool" - ], - "request": { - "$ref": "TargetPoolsRemoveHealthCheckRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "removeInstance": { - "id": "compute.targetPools.removeInstance", - "path": "{project}/regions/{region}/targetPools/{targetPool}/removeInstance", - "httpMethod": "POST", - "description": "Removes instance URL from a target pool.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "targetPool": { - "type": "string", - "description": "Name of the TargetPool resource to remove instances from.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "targetPool" - ], - "request": { - "$ref": "TargetPoolsRemoveInstanceRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "setBackup": { - "id": "compute.targetPools.setBackup", - "path": "{project}/regions/{region}/targetPools/{targetPool}/setBackup", - "httpMethod": "POST", - "description": "Changes a backup target pool's configurations.", - "parameters": { - "failoverRatio": { - "type": "number", - "description": "New failoverRatio value for the target pool.", - "format": "float", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "targetPool": { - "type": "string", - "description": "Name of the TargetPool resource to set a backup pool for.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "targetPool" - ], - "request": { - "$ref": "TargetReference" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "testIamPermissions": { - "id": "compute.targetPools.testIamPermissions", - "path": "{project}/regions/{region}/targetPools/{resource}/testIamPermissions", - "httpMethod": "POST", - "description": "Returns permissions that a caller has on the specified resource.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "The name of the region for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "resource" - ], - "request": { - "$ref": "TestPermissionsRequest" - }, - "response": { - "$ref": "TestPermissionsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - } - } - }, - "targetSslProxies": { - "methods": { - "delete": { - "id": "compute.targetSslProxies.delete", - "path": "{project}/global/targetSslProxies/{targetSslProxy}", - "httpMethod": "DELETE", - "description": "Deletes the specified TargetSslProxy resource.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "targetSslProxy": { - "type": "string", - "description": "Name of the TargetSslProxy resource to delete.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "targetSslProxy" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "get": { - "id": "compute.targetSslProxies.get", - "path": "{project}/global/targetSslProxies/{targetSslProxy}", - "httpMethod": "GET", - "description": "Returns the specified TargetSslProxy resource. Get a list of available target SSL proxies by making a list() request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "targetSslProxy": { - "type": "string", - "description": "Name of the TargetSslProxy resource to return.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "targetSslProxy" - ], - "response": { - "$ref": "TargetSslProxy" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "insert": { - "id": "compute.targetSslProxies.insert", - "path": "{project}/global/targetSslProxies", - "httpMethod": "POST", - "description": "Creates a TargetSslProxy resource in the specified project using the data included in the request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project" - ], - "request": { - "$ref": "TargetSslProxy" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "list": { - "id": "compute.targetSslProxies.list", - "path": "{project}/global/targetSslProxies", - "httpMethod": "GET", - "description": "Retrieves the list of TargetSslProxy resources available to the specified project.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "TargetSslProxyList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "setBackendService": { - "id": "compute.targetSslProxies.setBackendService", - "path": "{project}/global/targetSslProxies/{targetSslProxy}/setBackendService", - "httpMethod": "POST", - "description": "Changes the BackendService for TargetSslProxy.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "targetSslProxy": { - "type": "string", - "description": "Name of the TargetSslProxy resource whose BackendService resource is to be set.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "targetSslProxy" - ], - "request": { - "$ref": "TargetSslProxiesSetBackendServiceRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "setProxyHeader": { - "id": "compute.targetSslProxies.setProxyHeader", - "path": "{project}/global/targetSslProxies/{targetSslProxy}/setProxyHeader", - "httpMethod": "POST", - "description": "Changes the ProxyHeaderType for TargetSslProxy.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "targetSslProxy": { - "type": "string", - "description": "Name of the TargetSslProxy resource whose ProxyHeader is to be set.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "targetSslProxy" - ], - "request": { - "$ref": "TargetSslProxiesSetProxyHeaderRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "setSslCertificates": { - "id": "compute.targetSslProxies.setSslCertificates", - "path": "{project}/global/targetSslProxies/{targetSslProxy}/setSslCertificates", - "httpMethod": "POST", - "description": "Changes SslCertificates for TargetSslProxy.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "targetSslProxy": { - "type": "string", - "description": "Name of the TargetSslProxy resource whose SslCertificate resource is to be set.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "targetSslProxy" - ], - "request": { - "$ref": "TargetSslProxiesSetSslCertificatesRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "setSslPolicy": { - "id": "compute.targetSslProxies.setSslPolicy", - "path": "{project}/global/targetSslProxies/{targetSslProxy}/setSslPolicy", - "httpMethod": "POST", - "description": "Sets the SSL policy for TargetSslProxy. The SSL policy specifies the server-side support for SSL features. This affects connections between clients and the SSL proxy load balancer. They do not affect the connection between the load balancer and the backends.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "targetSslProxy": { - "type": "string", - "description": "Name of the TargetSslProxy resource whose SSL policy is to be set. The name must be 1-63 characters long, and comply with RFC1035.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "targetSslProxy" - ], - "request": { - "$ref": "SslPolicyReference" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "testIamPermissions": { - "id": "compute.targetSslProxies.testIamPermissions", - "path": "{project}/global/targetSslProxies/{resource}/testIamPermissions", - "httpMethod": "POST", - "description": "Returns permissions that a caller has on the specified resource.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "(?:[-a-z0-9_]{0,62}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "resource" - ], - "request": { - "$ref": "TestPermissionsRequest" - }, - "response": { - "$ref": "TestPermissionsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - } - } - }, - "targetTcpProxies": { - "methods": { - "delete": { - "id": "compute.targetTcpProxies.delete", - "path": "{project}/global/targetTcpProxies/{targetTcpProxy}", - "httpMethod": "DELETE", - "description": "Deletes the specified TargetTcpProxy resource.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "targetTcpProxy": { - "type": "string", - "description": "Name of the TargetTcpProxy resource to delete.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "targetTcpProxy" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "get": { - "id": "compute.targetTcpProxies.get", - "path": "{project}/global/targetTcpProxies/{targetTcpProxy}", - "httpMethod": "GET", - "description": "Returns the specified TargetTcpProxy resource. Get a list of available target TCP proxies by making a list() request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "targetTcpProxy": { - "type": "string", - "description": "Name of the TargetTcpProxy resource to return.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "targetTcpProxy" - ], - "response": { - "$ref": "TargetTcpProxy" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "insert": { - "id": "compute.targetTcpProxies.insert", - "path": "{project}/global/targetTcpProxies", - "httpMethod": "POST", - "description": "Creates a TargetTcpProxy resource in the specified project using the data included in the request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project" - ], - "request": { - "$ref": "TargetTcpProxy" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "list": { - "id": "compute.targetTcpProxies.list", - "path": "{project}/global/targetTcpProxies", - "httpMethod": "GET", - "description": "Retrieves the list of TargetTcpProxy resources available to the specified project.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "TargetTcpProxyList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "setBackendService": { - "id": "compute.targetTcpProxies.setBackendService", - "path": "{project}/global/targetTcpProxies/{targetTcpProxy}/setBackendService", - "httpMethod": "POST", - "description": "Changes the BackendService for TargetTcpProxy.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "targetTcpProxy": { - "type": "string", - "description": "Name of the TargetTcpProxy resource whose BackendService resource is to be set.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "targetTcpProxy" - ], - "request": { - "$ref": "TargetTcpProxiesSetBackendServiceRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "setProxyHeader": { - "id": "compute.targetTcpProxies.setProxyHeader", - "path": "{project}/global/targetTcpProxies/{targetTcpProxy}/setProxyHeader", - "httpMethod": "POST", - "description": "Changes the ProxyHeaderType for TargetTcpProxy.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "targetTcpProxy": { - "type": "string", - "description": "Name of the TargetTcpProxy resource whose ProxyHeader is to be set.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "targetTcpProxy" - ], - "request": { - "$ref": "TargetTcpProxiesSetProxyHeaderRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - } - } - }, - "targetVpnGateways": { - "methods": { - "aggregatedList": { - "id": "compute.targetVpnGateways.aggregatedList", - "path": "{project}/aggregated/targetVpnGateways", - "httpMethod": "GET", - "description": "Retrieves an aggregated list of target VPN gateways.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "TargetVpnGatewayAggregatedList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "delete": { - "id": "compute.targetVpnGateways.delete", - "path": "{project}/regions/{region}/targetVpnGateways/{targetVpnGateway}", - "httpMethod": "DELETE", - "description": "Deletes the specified target VPN gateway.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "targetVpnGateway": { - "type": "string", - "description": "Name of the target VPN gateway to delete.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "targetVpnGateway" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "get": { - "id": "compute.targetVpnGateways.get", - "path": "{project}/regions/{region}/targetVpnGateways/{targetVpnGateway}", - "httpMethod": "GET", - "description": "Returns the specified target VPN gateway. Get a list of available target VPN gateways by making a list() request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "targetVpnGateway": { - "type": "string", - "description": "Name of the target VPN gateway to return.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "targetVpnGateway" - ], - "response": { - "$ref": "TargetVpnGateway" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "insert": { - "id": "compute.targetVpnGateways.insert", - "path": "{project}/regions/{region}/targetVpnGateways", - "httpMethod": "POST", - "description": "Creates a target VPN gateway in the specified project and region using the data included in the request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "region" - ], - "request": { - "$ref": "TargetVpnGateway" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "list": { - "id": "compute.targetVpnGateways.list", - "path": "{project}/regions/{region}/targetVpnGateways", - "httpMethod": "GET", - "description": "Retrieves a list of target VPN gateways available to the specified project and region.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region" - ], - "response": { - "$ref": "TargetVpnGatewayList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "setLabels": { - "id": "compute.targetVpnGateways.setLabels", - "path": "{project}/regions/{region}/targetVpnGateways/{resource}/setLabels", - "httpMethod": "POST", - "description": "Sets the labels on a TargetVpnGateway. To learn more about labels, read the Labeling Resources documentation.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "The region for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "resource" - ], - "request": { - "$ref": "RegionSetLabelsRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "testIamPermissions": { - "id": "compute.targetVpnGateways.testIamPermissions", - "path": "{project}/regions/{region}/targetVpnGateways/{resource}/testIamPermissions", - "httpMethod": "POST", - "description": "Returns permissions that a caller has on the specified resource.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "The name of the region for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "resource" - ], - "request": { - "$ref": "TestPermissionsRequest" - }, - "response": { - "$ref": "TestPermissionsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - } - } - }, - "urlMaps": { - "methods": { - "delete": { - "id": "compute.urlMaps.delete", - "path": "{project}/global/urlMaps/{urlMap}", - "httpMethod": "DELETE", - "description": "Deletes the specified UrlMap resource.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "urlMap": { - "type": "string", - "description": "Name of the UrlMap resource to delete.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "urlMap" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "get": { - "id": "compute.urlMaps.get", - "path": "{project}/global/urlMaps/{urlMap}", - "httpMethod": "GET", - "description": "Returns the specified UrlMap resource. Get a list of available URL maps by making a list() request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "urlMap": { - "type": "string", - "description": "Name of the UrlMap resource to return.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "urlMap" - ], - "response": { - "$ref": "UrlMap" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "insert": { - "id": "compute.urlMaps.insert", - "path": "{project}/global/urlMaps", - "httpMethod": "POST", - "description": "Creates a UrlMap resource in the specified project using the data included in the request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project" - ], - "request": { - "$ref": "UrlMap" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "invalidateCache": { - "id": "compute.urlMaps.invalidateCache", - "path": "{project}/global/urlMaps/{urlMap}/invalidateCache", - "httpMethod": "POST", - "description": "Initiates a cache invalidation operation, invalidating the specified path, scoped to the specified UrlMap.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "urlMap": { - "type": "string", - "description": "Name of the UrlMap scoping this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "urlMap" - ], - "request": { - "$ref": "CacheInvalidationRule" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "list": { - "id": "compute.urlMaps.list", - "path": "{project}/global/urlMaps", - "httpMethod": "GET", - "description": "Retrieves the list of UrlMap resources available to the specified project.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "UrlMapList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "patch": { - "id": "compute.urlMaps.patch", - "path": "{project}/global/urlMaps/{urlMap}", - "httpMethod": "PATCH", - "description": "Patches the specified UrlMap resource with the data included in the request. This method supports PATCH semantics and uses the JSON merge patch format and processing rules.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "urlMap": { - "type": "string", - "description": "Name of the UrlMap resource to patch.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "urlMap" - ], - "request": { - "$ref": "UrlMap" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "testIamPermissions": { - "id": "compute.urlMaps.testIamPermissions", - "path": "{project}/global/urlMaps/{resource}/testIamPermissions", - "httpMethod": "POST", - "description": "Returns permissions that a caller has on the specified resource.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "(?:[-a-z0-9_]{0,62}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "resource" - ], - "request": { - "$ref": "TestPermissionsRequest" - }, - "response": { - "$ref": "TestPermissionsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "update": { - "id": "compute.urlMaps.update", - "path": "{project}/global/urlMaps/{urlMap}", - "httpMethod": "PUT", - "description": "Updates the specified UrlMap resource with the data included in the request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "urlMap": { - "type": "string", - "description": "Name of the UrlMap resource to update.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "urlMap" - ], - "request": { - "$ref": "UrlMap" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "validate": { - "id": "compute.urlMaps.validate", - "path": "{project}/global/urlMaps/{urlMap}/validate", - "httpMethod": "POST", - "description": "Runs static validation for the UrlMap. In particular, the tests of the provided UrlMap will be run. Calling this method does NOT create the UrlMap.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "urlMap": { - "type": "string", - "description": "Name of the UrlMap resource to be validated as.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "urlMap" - ], - "request": { - "$ref": "UrlMapsValidateRequest" - }, - "response": { - "$ref": "UrlMapsValidateResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - } - } - }, - "vpnTunnels": { - "methods": { - "aggregatedList": { - "id": "compute.vpnTunnels.aggregatedList", - "path": "{project}/aggregated/vpnTunnels", - "httpMethod": "GET", - "description": "Retrieves an aggregated list of VPN tunnels.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "VpnTunnelAggregatedList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "delete": { - "id": "compute.vpnTunnels.delete", - "path": "{project}/regions/{region}/vpnTunnels/{vpnTunnel}", - "httpMethod": "DELETE", - "description": "Deletes the specified VpnTunnel resource.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "vpnTunnel": { - "type": "string", - "description": "Name of the VpnTunnel resource to delete.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "vpnTunnel" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "get": { - "id": "compute.vpnTunnels.get", - "path": "{project}/regions/{region}/vpnTunnels/{vpnTunnel}", - "httpMethod": "GET", - "description": "Returns the specified VpnTunnel resource. Get a list of available VPN tunnels by making a list() request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "vpnTunnel": { - "type": "string", - "description": "Name of the VpnTunnel resource to return.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "vpnTunnel" - ], - "response": { - "$ref": "VpnTunnel" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "insert": { - "id": "compute.vpnTunnels.insert", - "path": "{project}/regions/{region}/vpnTunnels", - "httpMethod": "POST", - "description": "Creates a VpnTunnel resource in the specified project and region using the data included in the request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "region" - ], - "request": { - "$ref": "VpnTunnel" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "list": { - "id": "compute.vpnTunnels.list", - "path": "{project}/regions/{region}/vpnTunnels", - "httpMethod": "GET", - "description": "Retrieves a list of VpnTunnel resources contained in the specified project and region.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region" - ], - "response": { - "$ref": "VpnTunnelList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "setLabels": { - "id": "compute.vpnTunnels.setLabels", - "path": "{project}/regions/{region}/vpnTunnels/{resource}/setLabels", - "httpMethod": "POST", - "description": "Sets the labels on a VpnTunnel. To learn more about labels, read the Labeling Resources documentation.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "The region for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "resource" - ], - "request": { - "$ref": "RegionSetLabelsRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "testIamPermissions": { - "id": "compute.vpnTunnels.testIamPermissions", - "path": "{project}/regions/{region}/vpnTunnels/{resource}/testIamPermissions", - "httpMethod": "POST", - "description": "Returns permissions that a caller has on the specified resource.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "The name of the region for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "resource" - ], - "request": { - "$ref": "TestPermissionsRequest" - }, - "response": { - "$ref": "TestPermissionsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - } - } - }, - "zoneOperations": { - "methods": { - "delete": { - "id": "compute.zoneOperations.delete", - "path": "{project}/zones/{zone}/operations/{operation}", - "httpMethod": "DELETE", - "description": "Deletes the specified zone-specific Operations resource.", - "parameters": { - "operation": { - "type": "string", - "description": "Name of the Operations resource to delete.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "zone": { - "type": "string", - "description": "Name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "operation" - ], - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "get": { - "id": "compute.zoneOperations.get", - "path": "{project}/zones/{zone}/operations/{operation}", - "httpMethod": "GET", - "description": "Retrieves the specified zone-specific Operations resource.", - "parameters": { - "operation": { - "type": "string", - "description": "Name of the Operations resource to return.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "zone": { - "type": "string", - "description": "Name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "operation" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "list": { - "id": "compute.zoneOperations.list", - "path": "{project}/zones/{zone}/operations", - "httpMethod": "GET", - "description": "Retrieves a list of Operation resources contained within the specified zone.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "zone": { - "type": "string", - "description": "Name of the zone for request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone" - ], - "response": { - "$ref": "OperationList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - } - } - }, - "zones": { - "methods": { - "get": { - "id": "compute.zones.get", - "path": "{project}/zones/{zone}", - "httpMethod": "GET", - "description": "Returns the specified Zone resource. Get a list of available zones by making a list() request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "zone": { - "type": "string", - "description": "Name of the zone resource to return.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone" - ], - "response": { - "$ref": "Zone" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "list": { - "id": "compute.zones.list", - "path": "{project}/zones", - "httpMethod": "GET", - "description": "Retrieves the list of Zone resources available to the specified project.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "ZoneList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - } - } - } - } -} + "servicePath": "compute/beta/projects/", + "title": "Compute Engine API", + "version": "beta" +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/compute/v0.beta/compute-gen.go b/vendor/google.golang.org/api/compute/v0.beta/compute-gen.go index 2606b68b1..9c18f239b 100644 --- a/vendor/google.golang.org/api/compute/v0.beta/compute-gen.go +++ b/vendor/google.golang.org/api/compute/v0.beta/compute-gen.go @@ -102,6 +102,8 @@ func New(client *http.Client) (*Service, error) { s.RegionAutoscalers = NewRegionAutoscalersService(s) s.RegionBackendServices = NewRegionBackendServicesService(s) s.RegionCommitments = NewRegionCommitmentsService(s) + s.RegionDiskTypes = NewRegionDiskTypesService(s) + s.RegionDisks = NewRegionDisksService(s) s.RegionInstanceGroupManagers = NewRegionInstanceGroupManagersService(s) s.RegionInstanceGroups = NewRegionInstanceGroupsService(s) s.RegionOperations = NewRegionOperationsService(s) @@ -194,6 +196,10 @@ type Service struct { RegionCommitments *RegionCommitmentsService + RegionDiskTypes *RegionDiskTypesService + + RegionDisks *RegionDisksService + RegionInstanceGroupManagers *RegionInstanceGroupManagersService RegionInstanceGroups *RegionInstanceGroupsService @@ -525,6 +531,24 @@ type RegionCommitmentsService struct { s *Service } +func NewRegionDiskTypesService(s *Service) *RegionDiskTypesService { + rs := &RegionDiskTypesService{s: s} + return rs +} + +type RegionDiskTypesService struct { + s *Service +} + +func NewRegionDisksService(s *Service) *RegionDisksService { + rs := &RegionDisksService{s: s} + return rs +} + +type RegionDisksService struct { + s *Service +} + func NewRegionInstanceGroupManagersService(s *Service) *RegionInstanceGroupManagersService { rs := &RegionInstanceGroupManagersService{s: s} return rs @@ -794,7 +818,9 @@ type AcceleratorType struct { SelfLink string `json:"selfLink,omitempty"` // Zone: [Output Only] The name of the zone where the accelerator type - // resides, such as us-central1-a. + // resides, such as us-central1-a. You must specify this field as part + // of the HTTP request URL. It is not settable as a field in the request + // body. Zone string `json:"zone,omitempty"` // ServerResponse contains the HTTP response code and headers from the @@ -1291,6 +1317,22 @@ type AccessConfig struct { // live in the same region as the zone of the instance. NatIP string `json:"natIP,omitempty"` + // NetworkTier: This signifies the networking tier used for configuring + // this access configuration and can only take the following values: + // PREMIUM, STANDARD. + // + // If an AccessConfig is specified without a valid external IP address, + // an ephemeral IP will be created with this networkTier. + // + // If an AccessConfig with a valid external IP address is specified, it + // must match that of the networkTier associated with the Address + // resource owning that IP. + // + // Possible values: + // "PREMIUM" + // "STANDARD" + NetworkTier string `json:"networkTier,omitempty"` + // PublicPtrDomainName: The DNS domain name for the public PTR record. // This field can only be set when the set_public_ptr field is enabled. PublicPtrDomainName string `json:"publicPtrDomainName,omitempty"` @@ -1391,14 +1433,27 @@ type Address struct { // Name: Name of the resource. Provided by the client when the resource // is created. The name must be 1-63 characters long, and comply with // RFC1035. Specifically, the name must be 1-63 characters long and - // match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means + // match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means // the first character must be a lowercase letter, and all following // characters must be a dash, lowercase letter, or digit, except the // last character, which cannot be a dash. Name string `json:"name,omitempty"` + // NetworkTier: This signifies the networking tier used for configuring + // this Address and can only take the following values: PREMIUM , + // STANDARD. + // + // If this field is not specified, it is assumed to be PREMIUM. + // + // Possible values: + // "PREMIUM" + // "STANDARD" + NetworkTier string `json:"networkTier,omitempty"` + // Region: [Output Only] URL of the region where the regional address - // resides. This field is not applicable to global addresses. + // resides. This field is not applicable to global addresses. You must + // specify this field as part of the HTTP request URL. You cannot set + // this field in the request body. Region string `json:"region,omitempty"` // SelfLink: [Output Only] Server-defined URL for the resource. @@ -2097,9 +2152,9 @@ type AttachedDiskInitializeParams struct { // not specified, the default is pd-standard, specified using the full // URL. For // example: + // https://www.googleapis.com/compute/v1/projects/project/zones/ + // zone/diskTypes/pd-standard // - // https://www.googleapis.com/compute/v1/projects/project/zones - // /zone/diskTypes/pd-standard // // Other values include pd-ssd and local-ssd. If you define this field, // you can provide either the full or partial URL. For example, the @@ -2124,26 +2179,29 @@ type AttachedDiskInitializeParams struct { // specify the image by its family name. For example, specify // family/debian-8 to use the latest Debian 8 // image: - // // projects/debian-cloud/global/images/family/debian-8 // - // Alternatively, use a specific version of a public operating system - // image: // + // Alternati + // vely, use a specific version of a public operating system + // image: // projects/debian-cloud/global/images/debian-8-jessie-vYYYYMMDD // - // To create a disk with a custom image that you created, specify the - // image name in the following format: // + // + // To create a disk with a custom image that you created, specify the + // image name in the following + // format: // global/images/my-custom-image // + // // You can also specify a custom image by its image family, which // returns the latest version of the image in that family. Replace the // image name with // family/family-name: - // // global/images/family/my-image-family // + // // If the source image is deleted later, this field will not be set. SourceImage string `json:"sourceImage,omitempty"` @@ -2187,7 +2245,7 @@ func (s *AttachedDiskInitializeParams) MarshalJSON() ([]byte, error) { // If there are AuditConfigs for both `allServices` and a specific // service, the union of the two AuditConfigs is used for that service: // the log_types specified in each AuditConfig are enabled, and the -// exempted_members in each AuditConfig are exempted. +// exempted_members in each AuditLogConfig are exempted. // // Example Policy with multiple AuditConfigs: // @@ -2359,7 +2417,7 @@ type Autoscaler struct { // Name: Name of the resource. Provided by the client when the resource // is created. The name must be 1-63 characters long, and comply with // RFC1035. Specifically, the name must be 1-63 characters long and - // match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means + // match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means // the first character must be a lowercase letter, and all following // characters must be a dash, lowercase letter, or digit, except the // last character, which cannot be a dash. @@ -3355,7 +3413,7 @@ type BackendBucket struct { // Name: Name of the resource. Provided by the client when the resource // is created. The name must be 1-63 characters long, and comply with // RFC1035. Specifically, the name must be 1-63 characters long and - // match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means + // match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means // the first character must be a lowercase letter, and all following // characters must be a dash, lowercase letter, or digit, except the // last character, which cannot be a dash. @@ -3613,6 +3671,10 @@ type BackendService struct { // format. CreationTimestamp string `json:"creationTimestamp,omitempty"` + // CustomRequestHeaders: Headers that the HTTP/S load balancer should + // add to proxied requests. + CustomRequestHeaders []string `json:"customRequestHeaders,omitempty"` + // Description: An optional description of this resource. Provide this // property when you create the resource. Description string `json:"description,omitempty"` @@ -3663,7 +3725,7 @@ type BackendService struct { // Name: Name of the resource. Provided by the client when the resource // is created. The name must be 1-63 characters long, and comply with // RFC1035. Specifically, the name must be 1-63 characters long and - // match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means + // match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means // the first character must be a lowercase letter, and all following // characters must be a dash, lowercase letter, or digit, except the // last character, which cannot be a dash. @@ -3701,7 +3763,8 @@ type BackendService struct { // Region: [Output Only] URL of the region where the regional backend // service resides. This field is not applicable to global backend - // services. + // services. You must specify this field as part of the HTTP request + // URL. It is not settable as a field in the request body. Region string `json:"region,omitempty"` // SecurityPolicy: [Output Only] The resource URL for the security @@ -4327,7 +4390,8 @@ type Binding struct { // Condition: The condition that is associated with this binding. NOTE: // an unsatisfied condition will not allow user access via current // binding. Different bindings, including their conditions, are examined - // independently. This field is GOOGLE_INTERNAL. + // independently. This field is only visible as GOOGLE_INTERNAL or + // CONDITION_TRUSTED_TESTER. Condition *Expr `json:"condition,omitempty"` // Members: Specifies the identities requesting access for a Cloud @@ -4504,7 +4568,7 @@ type Commitment struct { // Name: Name of the resource. Provided by the client when the resource // is created. The name must be 1-63 characters long, and comply with // RFC1035. Specifically, the name must be 1-63 characters long and - // match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means + // match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means // the first character must be a lowercase letter, and all following // characters must be a dash, lowercase letter, or digit, except the // last character, which cannot be a dash. @@ -5030,6 +5094,7 @@ type Condition struct { // "APPROVER" // "ATTRIBUTION" // "AUTHORITY" + // "CREDENTIALS_TYPE" // "JUSTIFICATION_TYPE" // "NO_ATTR" // "SECURITY_REALM" @@ -5337,7 +5402,7 @@ type Disk struct { // Name: Name of the resource. Provided by the client when the resource // is created. The name must be 1-63 characters long, and comply with // RFC1035. Specifically, the name must be 1-63 characters long and - // match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means + // match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means // the first character must be a lowercase letter, and all following // characters must be a dash, lowercase letter, or digit, except the // last character, which cannot be a dash. @@ -5346,6 +5411,16 @@ type Disk struct { // Options: Internal use only. Options string `json:"options,omitempty"` + // Region: [Output Only] URL of the region where the disk resides. Only + // applicable for regional resources. You must specify this field as + // part of the HTTP request URL. It is not settable as a field in the + // request body. + Region string `json:"region,omitempty"` + + // ReplicaZones: URLs of the zones where the disk should be replicated + // to. Only applicable for regional resources. + ReplicaZones []string `json:"replicaZones,omitempty"` + // SelfLink: [Output Only] Server-defined fully-qualified URL for this // resource. SelfLink string `json:"selfLink,omitempty"` @@ -5368,24 +5443,26 @@ type Disk struct { // specify the image by its family name. For example, specify // family/debian-8 to use the latest Debian 8 // image: - // // projects/debian-cloud/global/images/family/debian-8 // - // Alternatively, use a specific version of a public operating system - // image: // + // Alternati + // vely, use a specific version of a public operating system + // image: // projects/debian-cloud/global/images/debian-8-jessie-vYYYYMMDD // - // To create a disk with a custom image that you created, specify the - // image name in the following format: // + // + // To create a disk with a custom image that you created, specify the + // image name in the following + // format: // global/images/my-custom-image // + // // You can also specify a custom image by its image family, which // returns the latest version of the image in that family. Replace the // image name with // family/family-name: - // // global/images/family/my-image-family SourceImage string `json:"sourceImage,omitempty"` @@ -5441,14 +5518,17 @@ type Disk struct { StorageType string `json:"storageType,omitempty"` // Type: URL of the disk type resource describing which disk type to use - // to create the disk. Provide this when creating the disk. + // to create the disk. Provide this when creating the disk. For example: + // project/zones/zone/diskTypes/pd-standard or pd-ssd Type string `json:"type,omitempty"` // Users: [Output Only] Links to the users of the disk (attached // instances) in form: project/zones/zone/instances/instance Users []string `json:"users,omitempty"` - // Zone: [Output Only] URL of the zone where the disk resides. + // Zone: [Output Only] URL of the zone where the disk resides. You must + // specify this field as part of the HTTP request URL. It is not + // settable as a field in the request body. Zone string `json:"zone,omitempty"` // ServerResponse contains the HTTP response code and headers from the @@ -5652,7 +5732,19 @@ type DiskInstantiationConfig struct { DeviceName string `json:"deviceName,omitempty"` // InstantiateFrom: Specifies whether to include the disk and what image - // to use. + // to use. Possible values are: + // - source-image: to use the same image that was used to create the + // source instance's corresponding disk. Applicable to the boot disk and + // additional read-write disks. + // - source-image-family: to use the same image family that was used to + // create the source instance's corresponding disk. Applicable to the + // boot disk and additional read-write disks. + // - custom-image: to use a user-provided image url for disk creation. + // Applicable to the boot disk and additional read-write disks. + // - attach-read-only: to attach a read-only disk. Applicable to + // read-only disks. + // - do-not-include: to exclude a disk from the template. Applicable to + // additional read-write disks, local SSDs, and read-only disks. // // Possible values: // "ATTACH_READ_ONLY" @@ -5921,7 +6013,9 @@ type DiskType struct { // valid disk size, such as "10GB-10TB". ValidDiskSize string `json:"validDiskSize,omitempty"` - // Zone: [Output Only] URL of the zone where the disk type resides. + // Zone: [Output Only] URL of the zone where the disk type resides. You + // must specify this field as part of the HTTP request URL. It is not + // settable as a field in the request body. Zone string `json:"zone,omitempty"` // ServerResponse contains the HTTP response code and headers from the @@ -6673,7 +6767,7 @@ type Firewall struct { CreationTimestamp string `json:"creationTimestamp,omitempty"` // Denied: The list of DENY rules specified by this firewall. Each rule - // specifies a protocol and port-range tuple that describes a permitted + // specifies a protocol and port-range tuple that describes a denied // connection. Denied []*FirewallDenied `json:"denied,omitempty"` @@ -6697,6 +6791,12 @@ type Firewall struct { // "INGRESS" Direction string `json:"direction,omitempty"` + // Disabled: Denotes whether the firewall rule is disabled, i.e not + // applied to the network it is associated with. When set to true, the + // firewall rule is not enforced and the network behaves as if it did + // not exist. If this is unspecified, the firewall rule will be enabled. + Disabled bool `json:"disabled,omitempty"` + // Id: [Output Only] The unique identifier for the resource. This // identifier is defined by the server. Id uint64 `json:"id,omitempty,string"` @@ -6708,7 +6808,7 @@ type Firewall struct { // Name: Name of the resource; provided by the client when the resource // is created. The name must be 1-63 characters long, and comply with // RFC1035. Specifically, the name must be 1-63 characters long and - // match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means + // match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means // the first character must be a lowercase letter, and all following // characters must be a dash, lowercase letter, or digit, except the // last character, which cannot be a dash. @@ -7217,7 +7317,7 @@ type ForwardingRule struct { // Name: Name of the resource; provided by the client when the resource // is created. The name must be 1-63 characters long, and comply with // RFC1035. Specifically, the name must be 1-63 characters long and - // match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means + // match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means // the first character must be a lowercase letter, and all following // characters must be a dash, lowercase letter, or digit, except the // last character, which cannot be a dash. @@ -7230,6 +7330,22 @@ type ForwardingRule struct { // this field is not specified, the default network will be used. Network string `json:"network,omitempty"` + // NetworkTier: This signifies the networking tier used for configuring + // this load balancer and can only take the following values: PREMIUM , + // STANDARD. + // + // For regional ForwardingRule, the valid values are PREMIUM and + // STANDARD. For GlobalForwardingRule, the valid value is PREMIUM. + // + // If this field is not specified, it is assumed to be PREMIUM. If + // IPAddress is specified, this value must be equal to the networkTier + // of the Address. + // + // Possible values: + // "PREMIUM" + // "STANDARD" + NetworkTier string `json:"networkTier,omitempty"` + // PortRange: This field is used along with the target field for // TargetHttpProxy, TargetHttpsProxy, TargetSslProxy, TargetTcpProxy, // TargetVpnGateway, TargetPool, TargetInstance. @@ -7244,11 +7360,10 @@ type ForwardingRule struct { // - TargetHttpProxy: 80, 8080 // - TargetHttpsProxy: 443 // - TargetTcpProxy: 25, 43, 110, 143, 195, 443, 465, 587, 700, 993, - // 995, 1883, 5222 + // 995, 1688, 1883, 5222 // - TargetSslProxy: 25, 43, 110, 143, 195, 443, 465, 587, 700, 993, - // 995, 1883, 5222 + // 995, 1688, 1883, 5222 // - TargetVpnGateway: 500, 4500 - // - PortRange string `json:"portRange,omitempty"` // Ports: This field is used along with the backend_service field for @@ -7264,7 +7379,8 @@ type ForwardingRule struct { // Region: [Output Only] URL of the region where the regional forwarding // rule resides. This field is not applicable to global forwarding - // rules. + // rules. You must specify this field as part of the HTTP request URL. + // It is not settable as a field in the request body. Region string `json:"region,omitempty"` // SelfLink: [Output Only] Server-defined URL for the resource. @@ -7276,7 +7392,7 @@ type ForwardingRule struct { // // The label must be 1-63 characters long, and comply with RFC1035. // Specifically, the label must be 1-63 characters long and match the - // regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first + // regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first // character must be a lowercase letter, and all following characters // must be a dash, lowercase letter, or digit, except the last // character, which cannot be a dash. @@ -7306,8 +7422,6 @@ type ForwardingRule struct { // same region as the forwarding rule. For global forwarding rules, this // target must be a global load balancing resource. The forwarded // traffic must be of a type appropriate to the target object. - // - // This field is not used for internal load balancing. Target string `json:"target,omitempty"` // ServerResponse contains the HTTP response code and headers from the @@ -7793,8 +7907,8 @@ type GlobalSetLabelsRequest struct { // Labels: A list of labels to apply for this resource. Each label key & // value must comply with RFC1035. Specifically, the name must be 1-63 // characters long and match the regular expression - // [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a - // lowercase letter, and all following characters must be a dash, + // `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be + // a lowercase letter, and all following characters must be a dash, // lowercase letter, or digit, except the last character, which cannot // be a dash. For example, "webserver-frontend": "images". A label value // can also be empty (e.g. "my-label": ""). @@ -8005,7 +8119,7 @@ type HealthCheck struct { // Name: Name of the resource. Provided by the client when the resource // is created. The name must be 1-63 characters long, and comply with // RFC1035. Specifically, the name must be 1-63 characters long and - // match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means + // match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means // the first character must be a lowercase letter, and all following // characters must be a dash, lowercase letter, or digit, except the // last character, which cannot be a dash. @@ -8374,7 +8488,7 @@ type HttpHealthCheck struct { // Name: Name of the resource. Provided by the client when the resource // is created. The name must be 1-63 characters long, and comply with // RFC1035. Specifically, the name must be 1-63 characters long and - // match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means + // match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means // the first character must be a lowercase letter, and all following // characters must be a dash, lowercase letter, or digit, except the // last character, which cannot be a dash. @@ -8619,7 +8733,7 @@ type HttpsHealthCheck struct { // Name: Name of the resource. Provided by the client when the resource // is created. The name must be 1-63 characters long, and comply with // RFC1035. Specifically, the name must be 1-63 characters long and - // match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means + // match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means // the first character must be a lowercase letter, and all following // characters must be a dash, lowercase letter, or digit, except the // last character, which cannot be a dash. @@ -8911,7 +9025,7 @@ type Image struct { // Name: Name of the resource; provided by the client when the resource // is created. The name must be 1-63 characters long, and comply with // RFC1035. Specifically, the name must be 1-63 characters long and - // match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means + // match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means // the first character must be a lowercase letter, and all following // characters must be a dash, lowercase letter, or digit, except the // last character, which cannot be a dash. @@ -9284,18 +9398,18 @@ type Instance struct { // when the instance is created. For example, the following is a valid // partial url to a predefined machine // type: - // // zones/us-central1-f/machineTypes/n1-standard-1 // + // // To create a custom machine type, provide a URL to a machine type in // the following format, where CPUS is 1 or an even number up to 32 (2, // 4, 6, ... 24, etc), and MEMORY is the total memory for this instance. // Memory must be a multiple of 256 MB and must be supplied in MB (e.g. // 5 GB of memory is 5120 // MB): - // // zones/zone/machineTypes/custom-CPUS-MEMORY // + // // For example: zones/us-central1-f/machineTypes/custom-4-5120 // // For a full list of restrictions, read the Specifications for custom @@ -9316,8 +9430,8 @@ type Instance struct { // creating the resource. The resource name must be 1-63 characters // long, and comply with RFC1035. Specifically, the name must be 1-63 // characters long and match the regular expression - // [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a - // lowercase letter, and all following characters must be a dash, + // `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be + // a lowercase letter, and all following characters must be a dash, // lowercase letter, or digit, except the last character, which cannot // be a dash. Name string `json:"name,omitempty"` @@ -9373,7 +9487,9 @@ type Instance struct { // comply with RFC1035. Tags *Tags `json:"tags,omitempty"` - // Zone: [Output Only] URL of the zone where the instance resides. + // Zone: [Output Only] URL of the zone where the instance resides. You + // must specify this field as part of the HTTP request URL. It is not + // settable as a field in the request body. Zone string `json:"zone,omitempty"` // ServerResponse contains the HTTP response code and headers from the @@ -10162,9 +10278,9 @@ type InstanceGroupManagerActionsSummary struct { Restarting int64 `json:"restarting,omitempty"` // Verifying: [Output Only] The number of instances in the managed - // instance group that are being verified. More details regarding - // verification process are covered in the documentation of - // ManagedInstance.InstanceAction.VERIFYING enum field. + // instance group that are being verified. See the + // managedInstances[].currentAction property in the listManagedInstances + // method documentation. Verifying int64 `json:"verifying,omitempty"` // ForceSendFields is a list of field names (e.g. "Abandoning") to @@ -12020,7 +12136,7 @@ type InstanceTemplate struct { // Name: Name of the resource; provided by the client when the resource // is created. The name must be 1-63 characters long, and comply with // RFC1035. Specifically, the name must be 1-63 characters long and - // match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means + // match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means // the first character must be a lowercase letter, and all following // characters must be a dash, lowercase letter, or digit, except the // last character, which cannot be a dash. @@ -12646,6 +12762,7 @@ type Interconnect struct { // Possible values: // "DEDICATED" // "IT_PRIVATE" + // "PARTNER" InterconnectType string `json:"interconnectType,omitempty"` // Kind: [Output Only] Type of the resource. Always compute#interconnect @@ -12683,7 +12800,7 @@ type Interconnect struct { // Name: Name of the resource. Provided by the client when the resource // is created. The name must be 1-63 characters long, and comply with // RFC1035. Specifically, the name must be 1-63 characters long and - // match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means + // match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means // the first character must be a lowercase letter, and all following // characters must be a dash, lowercase letter, or digit, except the // last character, which cannot be a dash. @@ -12721,6 +12838,14 @@ type Interconnect struct { // SelfLink: [Output Only] Server-defined URL for the resource. SelfLink string `json:"selfLink,omitempty"` + // State: [Output Only] The current state of whether or not this + // Interconnect is functional. + // + // Possible values: + // "ACTIVE" + // "UNPROVISIONED" + State string `json:"state,omitempty"` + // ServerResponse contains the HTTP response code and headers from the // server. googleapi.ServerResponse `json:"-"` @@ -12753,6 +12878,38 @@ func (s *Interconnect) MarshalJSON() ([]byte, error) { // Attachments. (== resource_for beta.interconnectAttachments ==) (== // resource_for v1.interconnectAttachments ==) type InterconnectAttachment struct { + // AdminEnabled: Determines whether this Attachment will carry packets. + // Not present for PARTNER_PROVIDER. + AdminEnabled bool `json:"adminEnabled,omitempty"` + + // Bandwidth: Provisioned bandwidth capacity for the + // interconnectAttachment. Can be set by the partner to update the + // customer's provisioned bandwidth. Output only for for PARTNER type, + // mutable for PARTNER_PROVIDER, not available for DEDICATED. + // + // Possible values: + // "BPS_100M" + // "BPS_10G" + // "BPS_1G" + // "BPS_200M" + // "BPS_2G" + // "BPS_300M" + // "BPS_400M" + // "BPS_500M" + // "BPS_50M" + // "BPS_5G" + Bandwidth string `json:"bandwidth,omitempty"` + + // CandidateSubnets: Up to 16 candidate prefixes that can be used to + // restrict the allocation of cloudRouterIpAddress and + // customerRouterIpAddress for this attachment. All prefixes must be + // within link-local address space (169.254.0.0/16) and must be /29 or + // shorter (/28, /27, etc). Google will attempt to select an unused /29 + // from the supplied candidate prefix(es). The request will fail if all + // possible /29s are in use on Google?s edge. If not supplied, Google + // will randomly select an unused /29 from all of link-local space. + CandidateSubnets []string `json:"candidateSubnets,omitempty"` + // CloudRouterIpAddress: [Output Only] IPv4 address + prefix length to // be configured on Cloud Router Interface for this interconnect // attachment. @@ -12770,6 +12927,20 @@ type InterconnectAttachment struct { // Description: An optional description of this resource. Description string `json:"description,omitempty"` + // EdgeAvailabilityDomain: Desired availability domain for the + // attachment. Only available for type PARTNER, at creation time. For + // improved reliability, customers should configure a pair of + // attachments with one per availability domain. The selected + // availability domain will be provided to the Partner via the pairing + // key so that the provisioned circuit will lie in the specified domain. + // If not specified, the value will default to AVAILABILITY_DOMAIN_ANY. + // + // Possible values: + // "AVAILABILITY_DOMAIN_1" + // "AVAILABILITY_DOMAIN_2" + // "AVAILABILITY_DOMAIN_ANY" + EdgeAvailabilityDomain string `json:"edgeAvailabilityDomain,omitempty"` + // GoogleReferenceId: [Output Only] Google reference ID, to be used when // raising support tickets with Google or otherwise to debug backend // connectivity issues. @@ -12806,7 +12977,7 @@ type InterconnectAttachment struct { // Name: Name of the resource. Provided by the client when the resource // is created. The name must be 1-63 characters long, and comply with // RFC1035. Specifically, the name must be 1-63 characters long and - // match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means + // match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means // the first character must be a lowercase letter, and all following // characters must be a dash, lowercase letter, or digit, except the // last character, which cannot be a dash. @@ -12820,13 +12991,32 @@ type InterconnectAttachment struct { // "OS_UNPROVISIONED" OperationalStatus string `json:"operationalStatus,omitempty"` + // PairingKey: [Output only for type PARTNER. Input only for + // PARTNER_PROVIDER. Not present for DEDICATED]. The opaque identifier + // of an PARTNER attachment used to initiate provisioning with a + // selected partner. Of the form "XXXXX/region/domain" + PairingKey string `json:"pairingKey,omitempty"` + + // PartnerAsn: Optional BGP ASN for the router that should be supplied + // by a layer 3 Partner if they configured BGP on behalf of the + // customer. Output only for PARTNER type, input only for + // PARTNER_PROVIDER, not available for DEDICATED. + PartnerAsn int64 `json:"partnerAsn,omitempty,string"` + + // PartnerMetadata: Informational metadata about Partner attachments + // from Partners to display to customers. Output only for for PARTNER + // type, mutable for PARTNER_PROVIDER, not available for DEDICATED. + PartnerMetadata *InterconnectAttachmentPartnerMetadata `json:"partnerMetadata,omitempty"` + // PrivateInterconnectInfo: [Output Only] Information specific to an // InterconnectAttachment. This property is populated if the // interconnect that this is attached to is of type DEDICATED. PrivateInterconnectInfo *InterconnectAttachmentPrivateInfo `json:"privateInterconnectInfo,omitempty"` // Region: [Output Only] URL of the region where the regional - // interconnect attachment resides. + // interconnect attachment resides. You must specify this field as part + // of the HTTP request URL. It is not settable as a field in the request + // body. Region string `json:"region,omitempty"` // Router: URL of the cloud router to be used for dynamic routing. This @@ -12838,26 +13028,49 @@ type InterconnectAttachment struct { // SelfLink: [Output Only] Server-defined URL for the resource. SelfLink string `json:"selfLink,omitempty"` + // State: [Output Only] The current state of this attachment's + // functionality. + // + // Possible values: + // "ACTIVE" + // "DEFUNCT" + // "PARTNER_REQUEST_RECEIVED" + // "PENDING_CUSTOMER" + // "PENDING_PARTNER" + // "STATE_UNSPECIFIED" + // "UNPROVISIONED" + State string `json:"state,omitempty"` + + // Possible values: + // "DEDICATED" + // "PARTNER" + // "PARTNER_PROVIDER" + Type string `json:"type,omitempty"` + + // VlanTag8021q: Available only for DEDICATED and PARTNER_PROVIDER. + // Desired VLAN tag for this attachment, in the range 2-4094. This field + // refers to 802.1q VLAN tag, also known as IEEE 802.1Q Only specified + // at creation time. + VlanTag8021q int64 `json:"vlanTag8021q,omitempty"` + // ServerResponse contains the HTTP response code and headers from the // server. googleapi.ServerResponse `json:"-"` - // ForceSendFields is a list of field names (e.g. - // "CloudRouterIpAddress") to unconditionally include in API requests. - // By default, fields with empty values are omitted from API requests. - // However, any non-pointer, non-interface field appearing in - // ForceSendFields will be sent to the server regardless of whether the - // field is empty or not. This may be used to include empty fields in - // Patch requests. + // ForceSendFields is a list of field names (e.g. "AdminEnabled") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. ForceSendFields []string `json:"-"` - // NullFields is a list of field names (e.g. "CloudRouterIpAddress") to - // include in API requests with the JSON null value. By default, fields - // with empty values are omitted from API requests. However, any field - // with an empty value appearing in NullFields will be sent to the - // server as null. It is an error if a field in this list has a - // non-empty value. This may be used to include null fields in Patch - // requests. + // NullFields is a list of field names (e.g. "AdminEnabled") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. NullFields []string `json:"-"` } @@ -13181,6 +13394,52 @@ func (s *InterconnectAttachmentListWarningData) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// InterconnectAttachmentPartnerMetadata: Informational metadata about +// Partner attachments from Partners to display to customers. These +// fields are propagated from PARTNER_PROVIDER attachments to their +// corresponding PARTNER attachments. +type InterconnectAttachmentPartnerMetadata struct { + // InterconnectName: Plain text name of the Interconnect this attachment + // is connected to, as displayed in the Partner?s portal. For instance + // ?Chicago 1?. This value may be validated to match approved Partner + // values. + InterconnectName string `json:"interconnectName,omitempty"` + + // PartnerName: Plain text name of the Partner providing this + // attachment. This value may be validated to match approved Partner + // values. + PartnerName string `json:"partnerName,omitempty"` + + // PortalUrl: URL of the Partner?s portal for this Attachment. Partners + // may customise this to be a deep-link to the specific resource on the + // Partner portal. This value may be validated to match approved Partner + // values. + PortalUrl string `json:"portalUrl,omitempty"` + + // ForceSendFields is a list of field names (e.g. "InterconnectName") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "InterconnectName") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *InterconnectAttachmentPartnerMetadata) MarshalJSON() ([]byte, error) { + type NoMethod InterconnectAttachmentPartnerMetadata + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // InterconnectAttachmentPrivateInfo: Information for an interconnect // attachment when this belongs to an interconnect of type DEDICATED. type InterconnectAttachmentPrivateInfo struct { @@ -14955,6 +15214,7 @@ func (s *MachineTypesScopedListWarningData) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// ManagedInstance: Next available tag: 12 type ManagedInstance struct { // CurrentAction: [Output Only] The current action that the managed // instance group has scheduled for the instance. Possible values: @@ -14980,6 +15240,8 @@ type ManagedInstance struct { // changes to the instance without stopping it. For example, the group // can update the target pool list for an instance without stopping that // instance. + // - VERIFYING The managed instance group has created the instance and + // it is in the process of being verified. // // Possible values: // "ABANDONING" @@ -15322,7 +15584,7 @@ type Network struct { // Name: Name of the resource. Provided by the client when the resource // is created. The name must be 1-63 characters long, and comply with // RFC1035. Specifically, the name must be 1-63 characters long and - // match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means + // match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means // the first character must be a lowercase letter, and all following // characters must be a dash, lowercase letter, or digit, except the // last character, which cannot be a dash. @@ -15626,8 +15888,8 @@ type NetworkPeering struct { // Name: Name of this peering. Provided by the client when the peering // is created. The name must comply with RFC1035. Specifically, the name // must be 1-63 characters long and match regular expression - // [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a - // lowercase letter, and all the following characters must be a dash, + // `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be + // a lowercase letter, and all the following characters must be a dash, // lowercase letter, or digit, except the last character, which cannot // be a dash. Name string `json:"name,omitempty"` @@ -15837,7 +16099,9 @@ type Operation struct { Progress int64 `json:"progress,omitempty"` // Region: [Output Only] The URL of the region where the operation - // resides. Only available when performing regional operations. + // resides. Only available when performing regional operations. You must + // specify this field as part of the HTTP request URL. It is not + // settable as a field in the request body. Region string `json:"region,omitempty"` // SelfLink: [Output Only] Server-defined URL for the resource. @@ -15878,7 +16142,9 @@ type Operation struct { Warnings []*OperationWarnings `json:"warnings,omitempty"` // Zone: [Output Only] The URL of the zone where the operation resides. - // Only available when performing per-zone operations. + // Only available when performing per-zone operations. You must specify + // this field as part of the HTTP request URL. It is not settable as a + // field in the request body. Zone string `json:"zone,omitempty"` // ServerResponse contains the HTTP response code and headers from the @@ -16622,7 +16888,7 @@ func (s *PathRule) MarshalJSON() ([]byte, error) { // } // // For a description of IAM and its features, see the [IAM developer's -// guide](https://cloud.google.com/iam). +// guide](https://cloud.google.com/iam/docs). type Policy struct { // AuditConfigs: Specifies cloud audit logging configuration for this // policy. @@ -16657,7 +16923,7 @@ type Policy struct { // denied. Rules []*Rule `json:"rules,omitempty"` - // Version: Version of the `Policy`. The default version is 0. + // Version: Deprecated. Version int64 `json:"version,omitempty"` // ServerResponse contains the HTTP response code and headers from the @@ -16700,6 +16966,16 @@ type Project struct { // format. CreationTimestamp string `json:"creationTimestamp,omitempty"` + // DefaultNetworkTier: This signifies the default network tier used for + // configuring resources of the project and can only take the following + // values: PREMIUM, STANDARD. Initially the default network tier is + // PREMIUM. + // + // Possible values: + // "PREMIUM" + // "STANDARD" + DefaultNetworkTier string `json:"defaultNetworkTier,omitempty"` + // DefaultServiceAccount: [Output Only] Default service account used by // VMs running in this project. DefaultServiceAccount string `json:"defaultServiceAccount,omitempty"` @@ -16898,6 +17174,37 @@ func (s *ProjectsListXpnHostsRequest) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +type ProjectsSetDefaultNetworkTierRequest struct { + // NetworkTier: Default network tier to be set. + // + // Possible values: + // "PREMIUM" + // "STANDARD" + NetworkTier string `json:"networkTier,omitempty"` + + // ForceSendFields is a list of field names (e.g. "NetworkTier") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "NetworkTier") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *ProjectsSetDefaultNetworkTierRequest) MarshalJSON() ([]byte, error) { + type NoMethod ProjectsSetDefaultNetworkTierRequest + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // Quota: A quotas entry. type Quota struct { // Limit: [Output Only] Quota limit for this metric. @@ -16928,6 +17235,7 @@ type Quota struct { // "NETWORKS" // "NVIDIA_K80_GPUS" // "NVIDIA_P100_GPUS" + // "NVIDIA_V100_GPUS" // "PREEMPTIBLE_CPUS" // "PREEMPTIBLE_LOCAL_SSD_GB" // "PREEMPTIBLE_NVIDIA_K80_GPUS" @@ -17261,6 +17569,189 @@ func (s *RegionAutoscalerListWarningData) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +type RegionDiskTypeList struct { + // Id: [Output Only] Unique identifier for the resource; defined by the + // server. + Id string `json:"id,omitempty"` + + // Items: A list of DiskType resources. + Items []*DiskType `json:"items,omitempty"` + + // Kind: [Output Only] Type of resource. Always + // compute#regionDiskTypeList for region disk types. + Kind string `json:"kind,omitempty"` + + // NextPageToken: [Output Only] This token allows you to get the next + // page of results for list requests. If the number of results is larger + // than maxResults, use the nextPageToken as a value for the query + // parameter pageToken in the next list request. Subsequent list + // requests will have their own nextPageToken to continue paging through + // the results. + NextPageToken string `json:"nextPageToken,omitempty"` + + // SelfLink: [Output Only] Server-defined URL for this resource. + SelfLink string `json:"selfLink,omitempty"` + + // Warning: [Output Only] Informational warning message. + Warning *RegionDiskTypeListWarning `json:"warning,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "Id") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Id") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *RegionDiskTypeList) MarshalJSON() ([]byte, error) { + type NoMethod RegionDiskTypeList + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// RegionDiskTypeListWarning: [Output Only] Informational warning +// message. +type RegionDiskTypeListWarning struct { + // Code: [Output Only] A warning code, if applicable. For example, + // Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in + // the response. + // + // Possible values: + // "CLEANUP_FAILED" + // "DEPRECATED_RESOURCE_USED" + // "DEPRECATED_TYPE_USED" + // "DISK_SIZE_LARGER_THAN_IMAGE_SIZE" + // "EXPERIMENTAL_TYPE_USED" + // "EXTERNAL_API_WARNING" + // "FIELD_VALUE_OVERRIDEN" + // "INJECTED_KERNELS_DEPRECATED" + // "MISSING_TYPE_DEPENDENCY" + // "NEXT_HOP_ADDRESS_NOT_ASSIGNED" + // "NEXT_HOP_CANNOT_IP_FORWARD" + // "NEXT_HOP_INSTANCE_NOT_FOUND" + // "NEXT_HOP_INSTANCE_NOT_ON_NETWORK" + // "NEXT_HOP_NOT_RUNNING" + // "NOT_CRITICAL_ERROR" + // "NO_RESULTS_ON_PAGE" + // "REQUIRED_TOS_AGREEMENT" + // "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING" + // "RESOURCE_NOT_DELETED" + // "SCHEMA_VALIDATION_IGNORED" + // "SINGLE_INSTANCE_PROPERTY_TEMPLATE" + // "UNDECLARED_PROPERTIES" + // "UNREACHABLE" + Code string `json:"code,omitempty"` + + // Data: [Output Only] Metadata about this warning in key: value format. + // For example: + // "data": [ { "key": "scope", "value": "zones/us-east1-d" } + Data []*RegionDiskTypeListWarningData `json:"data,omitempty"` + + // Message: [Output Only] A human-readable description of the warning + // code. + Message string `json:"message,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Code") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Code") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *RegionDiskTypeListWarning) MarshalJSON() ([]byte, error) { + type NoMethod RegionDiskTypeListWarning + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +type RegionDiskTypeListWarningData struct { + // Key: [Output Only] A key that provides more detail on the warning + // being returned. For example, for warnings where there are no results + // in a list request for a particular zone, this key might be scope and + // the key value might be the zone name. Other examples might be a key + // indicating a deprecated resource and a suggested replacement, or a + // warning about invalid network settings (for example, if an instance + // attempts to perform IP forwarding but is not enabled for IP + // forwarding). + Key string `json:"key,omitempty"` + + // Value: [Output Only] A warning data value corresponding to the key. + Value string `json:"value,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Key") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Key") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *RegionDiskTypeListWarningData) MarshalJSON() ([]byte, error) { + type NoMethod RegionDiskTypeListWarningData + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +type RegionDisksResizeRequest struct { + // SizeGb: The new size of the regional persistent disk, which is + // specified in GB. + SizeGb int64 `json:"sizeGb,omitempty,string"` + + // ForceSendFields is a list of field names (e.g. "SizeGb") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "SizeGb") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *RegionDisksResizeRequest) MarshalJSON() ([]byte, error) { + type NoMethod RegionDisksResizeRequest + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // RegionInstanceGroupList: Contains a list of InstanceGroup resources. type RegionInstanceGroupList struct { // Id: [Output Only] Unique identifier for the resource; defined by the @@ -18321,7 +18812,7 @@ type Route struct { // Name: Name of the resource. Provided by the client when the resource // is created. The name must be 1-63 characters long, and comply with // RFC1035. Specifically, the name must be 1-63 characters long and - // match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means + // match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means // the first character must be a lowercase letter, and all following // characters must be a dash, lowercase letter, or digit, except the // last character, which cannot be a dash. @@ -18694,7 +19185,7 @@ type Router struct { // Name: Name of the resource. Provided by the client when the resource // is created. The name must be 1-63 characters long, and comply with // RFC1035. Specifically, the name must be 1-63 characters long and - // match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means + // match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means // the first character must be a lowercase letter, and all following // characters must be a dash, lowercase letter, or digit, except the // last character, which cannot be a dash. @@ -18703,7 +19194,9 @@ type Router struct { // Network: URI of the network to which this router belongs. Network string `json:"network,omitempty"` - // Region: [Output Only] URI of the region where the router resides. + // Region: [Output Only] URI of the region where the router resides. You + // must specify this field as part of the HTTP request URL. It is not + // settable as a field in the request body. Region string `json:"region,omitempty"` // SelfLink: [Output Only] Server-defined URL for the resource. @@ -19748,7 +20241,7 @@ type SecurityPolicy struct { // Name: Name of the resource. Provided by the client when the resource // is created. The name must be 1-63 characters long, and comply with // RFC1035. Specifically, the name must be 1-63 characters long and - // match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means + // match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means // the first character must be a lowercase letter, and all following // characters must be a dash, lowercase letter, or digit, except the // last character, which cannot be a dash. @@ -20034,7 +20527,7 @@ type SecurityPolicyRuleMatcher struct { // specified and cannot be specified if versioned_expr is not specified. Config *SecurityPolicyRuleMatcherConfig `json:"config,omitempty"` - // SrcIpRanges: CIDR IP address range. Only IPv4 is supported. + // SrcIpRanges: CIDR IP address range. SrcIpRanges []string `json:"srcIpRanges,omitempty"` // VersionedExpr: Preconfigured versioned expression. If this field is @@ -20071,7 +20564,7 @@ func (s *SecurityPolicyRuleMatcher) MarshalJSON() ([]byte, error) { } type SecurityPolicyRuleMatcherConfig struct { - // SrcIpRanges: CIDR IP address range. Only IPv4 is supported. + // SrcIpRanges: CIDR IP address range. SrcIpRanges []string `json:"srcIpRanges,omitempty"` // ForceSendFields is a list of field names (e.g. "SrcIpRanges") to @@ -20185,7 +20678,7 @@ func (s *ServiceAccount) MarshalJSON() ([]byte, error) { type SignedUrlKey struct { // KeyName: Name of the key. The name must be 1-63 characters long, and // comply with RFC1035. Specifically, the name must be 1-63 characters - // long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? + // long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` // which means the first character must be a lowercase letter, and all // following characters must be a dash, lowercase letter, or digit, // except the last character, which cannot be a dash. @@ -20267,7 +20760,7 @@ type Snapshot struct { // Name: Name of the resource; provided by the client when the resource // is created. The name must be 1-63 characters long, and comply with // RFC1035. Specifically, the name must be 1-63 characters long and - // match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means + // match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means // the first character must be a lowercase letter, and all following // characters must be a dash, lowercase letter, or digit, except the // last character, which cannot be a dash. @@ -20578,7 +21071,7 @@ type SslCertificate struct { // Name: Name of the resource. Provided by the client when the resource // is created. The name must be 1-63 characters long, and comply with // RFC1035. Specifically, the name must be 1-63 characters long and - // match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means + // match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means // the first character must be a lowercase letter, and all following // characters must be a dash, lowercase letter, or digit, except the // last character, which cannot be a dash. @@ -21009,8 +21502,8 @@ type SslPolicy struct { // Name: Name of the resource. The name must be 1-63 characters long, // and comply with RFC1035. Specifically, the name must be 1-63 // characters long and match the regular expression - // [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a - // lowercase letter, and all following characters must be a dash, + // `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be + // a lowercase letter, and all following characters must be a dash, // lowercase letter, or digit, except the last character, which cannot // be a dash. Name string `json:"name,omitempty"` @@ -21222,6 +21715,9 @@ type Subnetwork struct { // resource creation time. Description string `json:"description,omitempty"` + // EnableFlowLogs: Whether to enable flow logging for this subnetwork. + EnableFlowLogs bool `json:"enableFlowLogs,omitempty"` + // Fingerprint: Fingerprint of this resource. A hash of the contents // stored in this object. This field is used in optimistic locking. This // field will be ignored when inserting a Subnetwork. An up-to-date @@ -21229,8 +21725,7 @@ type Subnetwork struct { Fingerprint string `json:"fingerprint,omitempty"` // GatewayAddress: [Output Only] The gateway address for default routes - // to reach destination addresses outside this subnetwork. This field - // can be set only at resource creation time. + // to reach destination addresses outside this subnetwork. GatewayAddress string `json:"gatewayAddress,omitempty"` // Id: [Output Only] The unique identifier for the resource. This @@ -21251,7 +21746,7 @@ type Subnetwork struct { // Name: The name of the resource, provided by the client when initially // creating the resource. The name must be 1-63 characters long, and // comply with RFC1035. Specifically, the name must be 1-63 characters - // long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? + // long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` // which means the first character must be a lowercase letter, and all // following characters must be a dash, lowercase letter, or digit, // except the last character, which cannot be a dash. @@ -21966,7 +22461,7 @@ type TargetHttpProxy struct { // Name: Name of the resource. Provided by the client when the resource // is created. The name must be 1-63 characters long, and comply with // RFC1035. Specifically, the name must be 1-63 characters long and - // match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means + // match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means // the first character must be a lowercase letter, and all following // characters must be a dash, lowercase letter, or digit, except the // last character, which cannot be a dash. @@ -22248,7 +22743,7 @@ type TargetHttpsProxy struct { // Name: Name of the resource. Provided by the client when the resource // is created. The name must be 1-63 characters long, and comply with // RFC1035. Specifically, the name must be 1-63 characters long and - // match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means + // match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means // the first character must be a lowercase letter, and all following // characters must be a dash, lowercase letter, or digit, except the // last character, which cannot be a dash. @@ -22509,7 +23004,7 @@ type TargetInstance struct { // Name: Name of the resource. Provided by the client when the resource // is created. The name must be 1-63 characters long, and comply with // RFC1035. Specifically, the name must be 1-63 characters long and - // match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means + // match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means // the first character must be a lowercase letter, and all following // characters must be a dash, lowercase letter, or digit, except the // last character, which cannot be a dash. @@ -22526,7 +23021,8 @@ type TargetInstance struct { SelfLink string `json:"selfLink,omitempty"` // Zone: [Output Only] URL of the zone where the target instance - // resides. + // resides. You must specify this field as part of the HTTP request URL. + // It is not settable as a field in the request body. Zone string `json:"zone,omitempty"` // ServerResponse contains the HTTP response code and headers from the @@ -23071,7 +23567,7 @@ type TargetPool struct { // Name: Name of the resource. Provided by the client when the resource // is created. The name must be 1-63 characters long, and comply with // RFC1035. Specifically, the name must be 1-63 characters long and - // match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means + // match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means // the first character must be a lowercase letter, and all following // characters must be a dash, lowercase letter, or digit, except the // last character, which cannot be a dash. @@ -23881,7 +24377,7 @@ type TargetSslProxy struct { // Name: Name of the resource. Provided by the client when the resource // is created. The name must be 1-63 characters long, and comply with // RFC1035. Specifically, the name must be 1-63 characters long and - // match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means + // match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means // the first character must be a lowercase letter, and all following // characters must be a dash, lowercase letter, or digit, except the // last character, which cannot be a dash. @@ -24178,7 +24674,7 @@ type TargetTcpProxy struct { // Name: Name of the resource. Provided by the client when the resource // is created. The name must be 1-63 characters long, and comply with // RFC1035. Specifically, the name must be 1-63 characters long and - // match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means + // match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means // the first character must be a lowercase letter, and all following // characters must be a dash, lowercase letter, or digit, except the // last character, which cannot be a dash. @@ -24426,7 +24922,7 @@ type TargetVpnGateway struct { // Name: Name of the resource. Provided by the client when the resource // is created. The name must be 1-63 characters long, and comply with // RFC1035. Specifically, the name must be 1-63 characters long and - // match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means + // match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means // the first character must be a lowercase letter, and all following // characters must be a dash, lowercase letter, or digit, except the // last character, which cannot be a dash. @@ -24437,7 +24933,8 @@ type TargetVpnGateway struct { Network string `json:"network,omitempty"` // Region: [Output Only] URL of the region where the target VPN gateway - // resides. + // resides. You must specify this field as part of the HTTP request URL. + // It is not settable as a field in the request body. Region string `json:"region,omitempty"` // SelfLink: [Output Only] Server-defined URL for the resource. @@ -25101,7 +25598,7 @@ type UrlMap struct { // Name: Name of the resource. Provided by the client when the resource // is created. The name must be 1-63 characters long, and comply with // RFC1035. Specifically, the name must be 1-63 characters long and - // match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means + // match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means // the first character must be a lowercase letter, and all following // characters must be a dash, lowercase letter, or digit, except the // last character, which cannot be a dash. @@ -25113,8 +25610,9 @@ type UrlMap struct { // SelfLink: [Output Only] Server-defined URL for the resource. SelfLink string `json:"selfLink,omitempty"` - // Tests: The list of expected URL mappings. Request to update this - // UrlMap will succeed only if all of the test cases pass. + // Tests: The list of expected URL mapping tests. Request to update this + // UrlMap will succeed only if all of the test cases pass. You can + // specify a maximum of 100 tests per UrlMap. Tests []*UrlMapTest `json:"tests,omitempty"` // ServerResponse contains the HTTP response code and headers from the @@ -25459,6 +25957,198 @@ func (s *UrlMapsValidateResponse) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// UsableSubnetwork: Subnetwork which the current user has +// compute.subnetworks.use permission on. +type UsableSubnetwork struct { + // IpCidrRange: The range of internal addresses that are owned by this + // subnetwork. + IpCidrRange string `json:"ipCidrRange,omitempty"` + + // Network: Network URL. + Network string `json:"network,omitempty"` + + // Subnetwork: Subnetwork URL. + Subnetwork string `json:"subnetwork,omitempty"` + + // ForceSendFields is a list of field names (e.g. "IpCidrRange") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "IpCidrRange") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *UsableSubnetwork) MarshalJSON() ([]byte, error) { + type NoMethod UsableSubnetwork + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +type UsableSubnetworksAggregatedList struct { + // Id: [Output Only] The unique identifier for the resource. This + // identifier is defined by the server. + Id string `json:"id,omitempty"` + + // Items: [Output] A list of usable subnetwork URLs. + Items []*UsableSubnetwork `json:"items,omitempty"` + + // Kind: [Output Only] Type of resource. Always + // compute#usableSubnetworksAggregatedList for aggregated lists of + // usable subnetworks. + Kind string `json:"kind,omitempty"` + + // NextPageToken: [Output Only] This token allows you to get the next + // page of results for list requests. If the number of results is larger + // than maxResults, use the nextPageToken as a value for the query + // parameter pageToken in the next list request. Subsequent list + // requests will have their own nextPageToken to continue paging through + // the results. + NextPageToken string `json:"nextPageToken,omitempty"` + + // SelfLink: [Output Only] Server-defined URL for this resource. + SelfLink string `json:"selfLink,omitempty"` + + // Warning: [Output Only] Informational warning message. + Warning *UsableSubnetworksAggregatedListWarning `json:"warning,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "Id") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Id") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *UsableSubnetworksAggregatedList) MarshalJSON() ([]byte, error) { + type NoMethod UsableSubnetworksAggregatedList + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// UsableSubnetworksAggregatedListWarning: [Output Only] Informational +// warning message. +type UsableSubnetworksAggregatedListWarning struct { + // Code: [Output Only] A warning code, if applicable. For example, + // Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in + // the response. + // + // Possible values: + // "CLEANUP_FAILED" + // "DEPRECATED_RESOURCE_USED" + // "DEPRECATED_TYPE_USED" + // "DISK_SIZE_LARGER_THAN_IMAGE_SIZE" + // "EXPERIMENTAL_TYPE_USED" + // "EXTERNAL_API_WARNING" + // "FIELD_VALUE_OVERRIDEN" + // "INJECTED_KERNELS_DEPRECATED" + // "MISSING_TYPE_DEPENDENCY" + // "NEXT_HOP_ADDRESS_NOT_ASSIGNED" + // "NEXT_HOP_CANNOT_IP_FORWARD" + // "NEXT_HOP_INSTANCE_NOT_FOUND" + // "NEXT_HOP_INSTANCE_NOT_ON_NETWORK" + // "NEXT_HOP_NOT_RUNNING" + // "NOT_CRITICAL_ERROR" + // "NO_RESULTS_ON_PAGE" + // "REQUIRED_TOS_AGREEMENT" + // "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING" + // "RESOURCE_NOT_DELETED" + // "SCHEMA_VALIDATION_IGNORED" + // "SINGLE_INSTANCE_PROPERTY_TEMPLATE" + // "UNDECLARED_PROPERTIES" + // "UNREACHABLE" + Code string `json:"code,omitempty"` + + // Data: [Output Only] Metadata about this warning in key: value format. + // For example: + // "data": [ { "key": "scope", "value": "zones/us-east1-d" } + Data []*UsableSubnetworksAggregatedListWarningData `json:"data,omitempty"` + + // Message: [Output Only] A human-readable description of the warning + // code. + Message string `json:"message,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Code") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Code") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *UsableSubnetworksAggregatedListWarning) MarshalJSON() ([]byte, error) { + type NoMethod UsableSubnetworksAggregatedListWarning + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +type UsableSubnetworksAggregatedListWarningData struct { + // Key: [Output Only] A key that provides more detail on the warning + // being returned. For example, for warnings where there are no results + // in a list request for a particular zone, this key might be scope and + // the key value might be the zone name. Other examples might be a key + // indicating a deprecated resource and a suggested replacement, or a + // warning about invalid network settings (for example, if an instance + // attempts to perform IP forwarding but is not enabled for IP + // forwarding). + Key string `json:"key,omitempty"` + + // Value: [Output Only] A warning data value corresponding to the key. + Value string `json:"value,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Key") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Key") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *UsableSubnetworksAggregatedListWarningData) MarshalJSON() ([]byte, error) { + type NoMethod UsableSubnetworksAggregatedListWarningData + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // UsageExportLocation: The location in Cloud Storage and naming method // of the daily usage report. Contains bucket_name and report_name // prefix. @@ -25555,7 +26245,7 @@ type VpnTunnel struct { // Name: Name of the resource. Provided by the client when the resource // is created. The name must be 1-63 characters long, and comply with // RFC1035. Specifically, the name must be 1-63 characters long and - // match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means + // match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means // the first character must be a lowercase letter, and all following // characters must be a dash, lowercase letter, or digit, except the // last character, which cannot be a dash. @@ -25565,6 +26255,8 @@ type VpnTunnel struct { PeerIp string `json:"peerIp,omitempty"` // Region: [Output Only] URL of the region where the VPN tunnel resides. + // You must specify this field as part of the HTTP request URL. It is + // not settable as a field in the request body. Region string `json:"region,omitempty"` // RemoteTrafficSelector: Remote traffic selectors to use when @@ -25603,8 +26295,9 @@ type VpnTunnel struct { // "WAITING_FOR_FULL_CONFIG" Status string `json:"status,omitempty"` - // TargetVpnGateway: URL of the VPN gateway with which this VPN tunnel - // is associated. Provided by the client when the VPN tunnel is created. + // TargetVpnGateway: URL of the Target VPN gateway with which this VPN + // tunnel is associated. Provided by the client when the VPN tunnel is + // created. TargetVpnGateway string `json:"targetVpnGateway,omitempty"` // ServerResponse contains the HTTP response code and headers from the @@ -26549,32 +27242,28 @@ func (r *AcceleratorTypesService) AggregatedList(project string) *AcceleratorTyp return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *AcceleratorTypesAggregatedListCall) Filter(filter string) *AcceleratorTypesAggregatedListCall { c.urlParams_.Set("filter", filter) return c @@ -26718,7 +27407,7 @@ func (c *AcceleratorTypesAggregatedListCall) Do(opts ...googleapi.CallOption) (* // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -26966,32 +27655,28 @@ func (r *AcceleratorTypesService) List(project string, zone string) *Accelerator return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *AcceleratorTypesListCall) Filter(filter string) *AcceleratorTypesListCall { c.urlParams_.Set("filter", filter) return c @@ -27137,7 +27822,7 @@ func (c *AcceleratorTypesListCall) Do(opts ...googleapi.CallOption) (*Accelerato // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -27227,32 +27912,28 @@ func (r *AddressesService) AggregatedList(project string) *AddressesAggregatedLi return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *AddressesAggregatedListCall) Filter(filter string) *AddressesAggregatedListCall { c.urlParams_.Set("filter", filter) return c @@ -27396,7 +28077,7 @@ func (c *AddressesAggregatedListCall) Do(opts ...googleapi.CallOption) (*Address // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -27989,32 +28670,28 @@ func (r *AddressesService) List(project string, region string) *AddressesListCal return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *AddressesListCall) Filter(filter string) *AddressesListCall { c.urlParams_.Set("filter", filter) return c @@ -28160,7 +28837,7 @@ func (c *AddressesListCall) Do(opts ...googleapi.CallOption) (*AddressList, erro // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -28590,32 +29267,28 @@ func (r *AutoscalersService) AggregatedList(project string) *AutoscalersAggregat return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *AutoscalersAggregatedListCall) Filter(filter string) *AutoscalersAggregatedListCall { c.urlParams_.Set("filter", filter) return c @@ -28759,7 +29432,7 @@ func (c *AutoscalersAggregatedListCall) Do(opts ...googleapi.CallOption) (*Autos // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -29349,32 +30022,28 @@ func (r *AutoscalersService) List(project string, zone string) *AutoscalersListC return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *AutoscalersListCall) Filter(filter string) *AutoscalersListCall { c.urlParams_.Set("filter", filter) return c @@ -29520,7 +30189,7 @@ func (c *AutoscalersListCall) Do(opts ...googleapi.CallOption) (*AutoscalerList, // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -30947,32 +31616,28 @@ func (r *BackendBucketsService) List(project string) *BackendBucketsListCall { return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *BackendBucketsListCall) Filter(filter string) *BackendBucketsListCall { c.urlParams_.Set("filter", filter) return c @@ -31116,7 +31781,7 @@ func (c *BackendBucketsListCall) Do(opts ...googleapi.CallOption) (*BackendBucke // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -31712,32 +32377,28 @@ func (r *BackendServicesService) AggregatedList(project string) *BackendServices return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *BackendServicesAggregatedListCall) Filter(filter string) *BackendServicesAggregatedListCall { c.urlParams_.Set("filter", filter) return c @@ -31881,7 +32542,7 @@ func (c *BackendServicesAggregatedListCall) Do(opts ...googleapi.CallOption) (*B // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -32758,32 +33419,28 @@ func (r *BackendServicesService) List(project string) *BackendServicesListCall { return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *BackendServicesListCall) Filter(filter string) *BackendServicesListCall { c.urlParams_.Set("filter", filter) return c @@ -32927,7 +33584,7 @@ func (c *BackendServicesListCall) Do(opts ...googleapi.CallOption) (*BackendServ // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -33678,32 +34335,28 @@ func (r *DiskTypesService) AggregatedList(project string) *DiskTypesAggregatedLi return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *DiskTypesAggregatedListCall) Filter(filter string) *DiskTypesAggregatedListCall { c.urlParams_.Set("filter", filter) return c @@ -33847,7 +34500,7 @@ func (c *DiskTypesAggregatedListCall) Do(opts ...googleapi.CallOption) (*DiskTyp // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -34097,32 +34750,28 @@ func (r *DiskTypesService) List(project string, zone string) *DiskTypesListCall return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *DiskTypesListCall) Filter(filter string) *DiskTypesListCall { c.urlParams_.Set("filter", filter) return c @@ -34268,7 +34917,7 @@ func (c *DiskTypesListCall) Do(opts ...googleapi.CallOption) (*DiskTypeList, err // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -34358,32 +35007,28 @@ func (r *DisksService) AggregatedList(project string) *DisksAggregatedListCall { return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *DisksAggregatedListCall) Filter(filter string) *DisksAggregatedListCall { c.urlParams_.Set("filter", filter) return c @@ -34527,7 +35172,7 @@ func (c *DisksAggregatedListCall) Do(opts ...googleapi.CallOption) (*DiskAggrega // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -35330,32 +35975,28 @@ func (r *DisksService) List(project string, zone string) *DisksListCall { return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *DisksListCall) Filter(filter string) *DisksListCall { c.urlParams_.Set("filter", filter) return c @@ -35501,7 +36142,7 @@ func (c *DisksListCall) Do(opts ...googleapi.CallOption) (*DiskList, error) { // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -36589,32 +37230,28 @@ func (r *FirewallsService) List(project string) *FirewallsListCall { return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *FirewallsListCall) Filter(filter string) *FirewallsListCall { c.urlParams_.Set("filter", filter) return c @@ -36758,7 +37395,7 @@ func (c *FirewallsListCall) Do(opts ...googleapi.CallOption) (*FirewallList, err // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -37156,7 +37793,7 @@ type FirewallsUpdateCall struct { } // Update: Updates the specified firewall rule with the data included in -// the request. Using PUT method, can only update following fields of +// the request. The PUT method can only update the following fields of // firewall rule: allowed, description, sourceRanges, sourceTags, // targetTags. // For details, see https://cloud.google.com/compute/docs/reference/latest/firewalls/update @@ -37274,7 +37911,7 @@ func (c *FirewallsUpdateCall) Do(opts ...googleapi.CallOption) (*Operation, erro } return ret, nil // { - // "description": "Updates the specified firewall rule with the data included in the request. Using PUT method, can only update following fields of firewall rule: allowed, description, sourceRanges, sourceTags, targetTags.", + // "description": "Updates the specified firewall rule with the data included in the request. The PUT method can only update the following fields of firewall rule: allowed, description, sourceRanges, sourceTags, targetTags.", // "httpMethod": "PUT", // "id": "compute.firewalls.update", // "parameterOrder": [ @@ -37336,32 +37973,28 @@ func (r *ForwardingRulesService) AggregatedList(project string) *ForwardingRules return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *ForwardingRulesAggregatedListCall) Filter(filter string) *ForwardingRulesAggregatedListCall { c.urlParams_.Set("filter", filter) return c @@ -37505,7 +38138,7 @@ func (c *ForwardingRulesAggregatedListCall) Do(opts ...googleapi.CallOption) (*F // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -38098,32 +38731,28 @@ func (r *ForwardingRulesService) List(project string, region string) *Forwarding return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *ForwardingRulesListCall) Filter(filter string) *ForwardingRulesListCall { c.urlParams_.Set("filter", filter) return c @@ -38269,7 +38898,7 @@ func (c *ForwardingRulesListCall) Do(opts ...googleapi.CallOption) (*ForwardingR // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -39358,32 +39987,28 @@ func (r *GlobalAddressesService) List(project string) *GlobalAddressesListCall { return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *GlobalAddressesListCall) Filter(filter string) *GlobalAddressesListCall { c.urlParams_.Set("filter", filter) return c @@ -39527,7 +40152,7 @@ func (c *GlobalAddressesListCall) Do(opts ...googleapi.CallOption) (*AddressList // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -40381,32 +41006,28 @@ func (r *GlobalForwardingRulesService) List(project string) *GlobalForwardingRul return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *GlobalForwardingRulesListCall) Filter(filter string) *GlobalForwardingRulesListCall { c.urlParams_.Set("filter", filter) return c @@ -40550,7 +41171,7 @@ func (c *GlobalForwardingRulesListCall) Do(opts ...googleapi.CallOption) (*Forwa // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -41100,32 +41721,28 @@ func (r *GlobalOperationsService) AggregatedList(project string) *GlobalOperatio return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *GlobalOperationsAggregatedListCall) Filter(filter string) *GlobalOperationsAggregatedListCall { c.urlParams_.Set("filter", filter) return c @@ -41269,7 +41886,7 @@ func (c *GlobalOperationsAggregatedListCall) Do(opts ...googleapi.CallOption) (* // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -41615,32 +42232,28 @@ func (r *GlobalOperationsService) List(project string) *GlobalOperationsListCall return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *GlobalOperationsListCall) Filter(filter string) *GlobalOperationsListCall { c.urlParams_.Set("filter", filter) return c @@ -41784,7 +42397,7 @@ func (c *GlobalOperationsListCall) Do(opts ...googleapi.CallOption) (*OperationL // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -42339,32 +42952,28 @@ func (r *HealthChecksService) List(project string) *HealthChecksListCall { return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *HealthChecksListCall) Filter(filter string) *HealthChecksListCall { c.urlParams_.Set("filter", filter) return c @@ -42508,7 +43117,7 @@ func (c *HealthChecksListCall) Do(opts ...googleapi.CallOption) (*HealthCheckLis // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -43558,32 +44167,28 @@ func (r *HttpHealthChecksService) List(project string) *HttpHealthChecksListCall return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *HttpHealthChecksListCall) Filter(filter string) *HttpHealthChecksListCall { c.urlParams_.Set("filter", filter) return c @@ -43727,7 +44332,7 @@ func (c *HttpHealthChecksListCall) Do(opts ...googleapi.CallOption) (*HttpHealth // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -44775,32 +45380,28 @@ func (r *HttpsHealthChecksService) List(project string) *HttpsHealthChecksListCa return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *HttpsHealthChecksListCall) Filter(filter string) *HttpsHealthChecksListCall { c.urlParams_.Set("filter", filter) return c @@ -44944,7 +45545,7 @@ func (c *HttpsHealthChecksListCall) Do(opts ...googleapi.CallOption) (*HttpsHeal // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -46340,32 +46941,28 @@ func (r *ImagesService) List(project string) *ImagesListCall { return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *ImagesListCall) Filter(filter string) *ImagesListCall { c.urlParams_.Set("filter", filter) return c @@ -46509,7 +47106,7 @@ func (c *ImagesListCall) Do(opts ...googleapi.CallOption) (*ImageList, error) { // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -47082,32 +47679,28 @@ func (r *InstanceGroupManagersService) AggregatedList(project string) *InstanceG return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *InstanceGroupManagersAggregatedListCall) Filter(filter string) *InstanceGroupManagersAggregatedListCall { c.urlParams_.Set("filter", filter) return c @@ -47252,7 +47845,7 @@ func (c *InstanceGroupManagersAggregatedListCall) Do(opts ...googleapi.CallOptio // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -48043,32 +48636,28 @@ func (r *InstanceGroupManagersService) List(project string, zone string) *Instan return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *InstanceGroupManagersListCall) Filter(filter string) *InstanceGroupManagersListCall { c.urlParams_.Set("filter", filter) return c @@ -48214,7 +48803,7 @@ func (c *InstanceGroupManagersListCall) Do(opts ...googleapi.CallOption) (*Insta // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -50347,32 +50936,28 @@ func (r *InstanceGroupsService) AggregatedList(project string) *InstanceGroupsAg return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *InstanceGroupsAggregatedListCall) Filter(filter string) *InstanceGroupsAggregatedListCall { c.urlParams_.Set("filter", filter) return c @@ -50516,7 +51101,7 @@ func (c *InstanceGroupsAggregatedListCall) Do(opts ...googleapi.CallOption) (*In // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -51104,32 +51689,28 @@ func (r *InstanceGroupsService) List(project string, zone string) *InstanceGroup return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *InstanceGroupsListCall) Filter(filter string) *InstanceGroupsListCall { c.urlParams_.Set("filter", filter) return c @@ -51275,7 +51856,7 @@ func (c *InstanceGroupsListCall) Do(opts ...googleapi.CallOption) (*InstanceGrou // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -51368,32 +51949,28 @@ func (r *InstanceGroupsService) ListInstances(project string, zone string, insta return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *InstanceGroupsListInstancesCall) Filter(filter string) *InstanceGroupsListInstancesCall { c.urlParams_.Set("filter", filter) return c @@ -51533,7 +52110,7 @@ func (c *InstanceGroupsListInstancesCall) Do(opts ...googleapi.CallOption) (*Ins // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -52634,32 +53211,28 @@ func (r *InstanceTemplatesService) List(project string) *InstanceTemplatesListCa return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *InstanceTemplatesListCall) Filter(filter string) *InstanceTemplatesListCall { c.urlParams_.Set("filter", filter) return c @@ -52803,7 +53376,7 @@ func (c *InstanceTemplatesListCall) Do(opts ...googleapi.CallOption) (*InstanceT // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -53225,32 +53798,28 @@ func (r *InstancesService) AggregatedList(project string) *InstancesAggregatedLi return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *InstancesAggregatedListCall) Filter(filter string) *InstancesAggregatedListCall { c.urlParams_.Set("filter", filter) return c @@ -53394,7 +53963,7 @@ func (c *InstancesAggregatedListCall) Do(opts ...googleapi.CallOption) (*Instanc // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -53485,6 +54054,14 @@ func (r *InstancesService) AttachDisk(project string, zone string, instance stri return c } +// ForceAttach sets the optional parameter "forceAttach": Whether to +// force attach the disk even if it's currently attached to another +// instance. This is only available for regional disks. +func (c *InstancesAttachDiskCall) ForceAttach(forceAttach bool) *InstancesAttachDiskCall { + c.urlParams_.Set("forceAttach", fmt.Sprint(forceAttach)) + return c +} + // RequestId sets the optional parameter "requestId": An optional // request ID to identify requests. Specify a unique request ID so that // if you must retry your request, the server will know to ignore the @@ -53601,6 +54178,11 @@ func (c *InstancesAttachDiskCall) Do(opts ...googleapi.CallOption) (*Operation, // "instance" // ], // "parameters": { + // "forceAttach": { + // "description": "Whether to force attach the disk even if it's currently attached to another instance. This is only available for regional disks.", + // "location": "query", + // "type": "boolean" + // }, // "instance": { // "description": "The instance name for this request.", // "location": "path", @@ -54761,32 +55343,28 @@ func (r *InstancesService) List(project string, zone string) *InstancesListCall return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *InstancesListCall) Filter(filter string) *InstancesListCall { c.urlParams_.Set("filter", filter) return c @@ -54932,7 +55510,7 @@ func (c *InstancesListCall) Do(opts ...googleapi.CallOption) (*InstanceList, err // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -55026,32 +55604,28 @@ func (r *InstancesService) ListReferrers(project string, zone string, instance s return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *InstancesListReferrersCall) Filter(filter string) *InstancesListReferrersCall { c.urlParams_.Set("filter", filter) return c @@ -55199,7 +55773,7 @@ func (c *InstancesListReferrersCall) Do(opts ...googleapi.CallOption) (*Instance // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -57285,6 +57859,154 @@ func (c *InstancesSetTagsCall) Do(opts ...googleapi.CallOption) (*Operation, err } +// method id "compute.instances.simulateMaintenanceEvent": + +type InstancesSimulateMaintenanceEventCall struct { + s *Service + project string + zone string + instance string + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// SimulateMaintenanceEvent: Simulates a maintenance event on the +// instance. +func (r *InstancesService) SimulateMaintenanceEvent(project string, zone string, instance string) *InstancesSimulateMaintenanceEventCall { + c := &InstancesSimulateMaintenanceEventCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.project = project + c.zone = zone + c.instance = instance + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *InstancesSimulateMaintenanceEventCall) Fields(s ...googleapi.Field) *InstancesSimulateMaintenanceEventCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *InstancesSimulateMaintenanceEventCall) Context(ctx context.Context) *InstancesSimulateMaintenanceEventCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *InstancesSimulateMaintenanceEventCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *InstancesSimulateMaintenanceEventCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "{project}/zones/{zone}/instances/{instance}/simulateMaintenanceEvent") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("POST", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "project": c.project, + "zone": c.zone, + "instance": c.instance, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "compute.instances.simulateMaintenanceEvent" call. +// Exactly one of *Operation or error will be non-nil. Any non-2xx +// status code is an error. Response headers are in either +// *Operation.ServerResponse.Header or (if a response was returned at +// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified +// to check whether the returned error was because +// http.StatusNotModified was returned. +func (c *InstancesSimulateMaintenanceEventCall) Do(opts ...googleapi.CallOption) (*Operation, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &Operation{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Simulates a maintenance event on the instance.", + // "httpMethod": "POST", + // "id": "compute.instances.simulateMaintenanceEvent", + // "parameterOrder": [ + // "project", + // "zone", + // "instance" + // ], + // "parameters": { + // "instance": { + // "description": "Name of the instance scoping this request.", + // "location": "path", + // "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + // "required": true, + // "type": "string" + // }, + // "project": { + // "description": "Project ID for this request.", + // "location": "path", + // "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + // "required": true, + // "type": "string" + // }, + // "zone": { + // "description": "The name of the zone for this request.", + // "location": "path", + // "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + // "required": true, + // "type": "string" + // } + // }, + // "path": "{project}/zones/{zone}/instances/{instance}/simulateMaintenanceEvent", + // "response": { + // "$ref": "Operation" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform", + // "https://www.googleapis.com/auth/compute" + // ] + // } + +} + // method id "compute.instances.start": type InstancesStartCall struct { @@ -58379,32 +59101,28 @@ func (r *InterconnectAttachmentsService) AggregatedList(project string) *Interco return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *InterconnectAttachmentsAggregatedListCall) Filter(filter string) *InterconnectAttachmentsAggregatedListCall { c.urlParams_.Set("filter", filter) return c @@ -58549,7 +59267,7 @@ func (c *InterconnectAttachmentsAggregatedListCall) Do(opts ...googleapi.CallOpt // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -59138,32 +59856,28 @@ func (r *InterconnectAttachmentsService) List(project string, region string) *In return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *InterconnectAttachmentsListCall) Filter(filter string) *InterconnectAttachmentsListCall { c.urlParams_.Set("filter", filter) return c @@ -59309,7 +60023,7 @@ func (c *InterconnectAttachmentsListCall) Do(opts ...googleapi.CallOption) (*Int // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -59380,6 +60094,189 @@ func (c *InterconnectAttachmentsListCall) Pages(ctx context.Context, f func(*Int } } +// method id "compute.interconnectAttachments.patch": + +type InterconnectAttachmentsPatchCall struct { + s *Service + project string + region string + interconnectAttachment string + interconnectattachment *InterconnectAttachment + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Patch: Updates the specified interconnect attachment with the data +// included in the request. This method supports PATCH semantics and +// uses the JSON merge patch format and processing rules. +func (r *InterconnectAttachmentsService) Patch(project string, region string, interconnectAttachment string, interconnectattachment *InterconnectAttachment) *InterconnectAttachmentsPatchCall { + c := &InterconnectAttachmentsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.project = project + c.region = region + c.interconnectAttachment = interconnectAttachment + c.interconnectattachment = interconnectattachment + return c +} + +// RequestId sets the optional parameter "requestId": An optional +// request ID to identify requests. Specify a unique request ID so that +// if you must retry your request, the server will know to ignore the +// request if it has already been completed. +// +// For example, consider a situation where you make an initial request +// and the request times out. If you make the request again with the +// same request ID, the server can check if original operation with the +// same request ID was received, and if so, will ignore the second +// request. This prevents clients from accidentally creating duplicate +// commitments. +// +// The request ID must be a valid UUID with the exception that zero UUID +// is not supported (00000000-0000-0000-0000-000000000000). +func (c *InterconnectAttachmentsPatchCall) RequestId(requestId string) *InterconnectAttachmentsPatchCall { + c.urlParams_.Set("requestId", requestId) + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *InterconnectAttachmentsPatchCall) Fields(s ...googleapi.Field) *InterconnectAttachmentsPatchCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *InterconnectAttachmentsPatchCall) Context(ctx context.Context) *InterconnectAttachmentsPatchCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *InterconnectAttachmentsPatchCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *InterconnectAttachmentsPatchCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.interconnectattachment) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "{project}/regions/{region}/interconnectAttachments/{interconnectAttachment}") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("PATCH", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "project": c.project, + "region": c.region, + "interconnectAttachment": c.interconnectAttachment, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "compute.interconnectAttachments.patch" call. +// Exactly one of *Operation or error will be non-nil. Any non-2xx +// status code is an error. Response headers are in either +// *Operation.ServerResponse.Header or (if a response was returned at +// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified +// to check whether the returned error was because +// http.StatusNotModified was returned. +func (c *InterconnectAttachmentsPatchCall) Do(opts ...googleapi.CallOption) (*Operation, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &Operation{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Updates the specified interconnect attachment with the data included in the request. This method supports PATCH semantics and uses the JSON merge patch format and processing rules.", + // "httpMethod": "PATCH", + // "id": "compute.interconnectAttachments.patch", + // "parameterOrder": [ + // "project", + // "region", + // "interconnectAttachment" + // ], + // "parameters": { + // "interconnectAttachment": { + // "description": "Name of the interconnect attachment to patch.", + // "location": "path", + // "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + // "required": true, + // "type": "string" + // }, + // "project": { + // "description": "Project ID for this request.", + // "location": "path", + // "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + // "required": true, + // "type": "string" + // }, + // "region": { + // "description": "Name of the region scoping this request.", + // "location": "path", + // "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + // "required": true, + // "type": "string" + // }, + // "requestId": { + // "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + // "location": "query", + // "type": "string" + // } + // }, + // "path": "{project}/regions/{region}/interconnectAttachments/{interconnectAttachment}", + // "request": { + // "$ref": "InterconnectAttachment" + // }, + // "response": { + // "$ref": "Operation" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform", + // "https://www.googleapis.com/auth/compute" + // ] + // } + +} + // method id "compute.interconnectAttachments.setLabels": type InterconnectAttachmentsSetLabelsCall struct { @@ -59893,32 +60790,28 @@ func (r *InterconnectLocationsService) List(project string) *InterconnectLocatio return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *InterconnectLocationsListCall) Filter(filter string) *InterconnectLocationsListCall { c.urlParams_.Set("filter", filter) return c @@ -60062,7 +60955,7 @@ func (c *InterconnectLocationsListCall) Do(opts ...googleapi.CallOption) (*Inter // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -60617,32 +61510,28 @@ func (r *InterconnectsService) List(project string) *InterconnectsListCall { return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *InterconnectsListCall) Filter(filter string) *InterconnectsListCall { c.urlParams_.Set("filter", filter) return c @@ -60786,7 +61675,7 @@ func (c *InterconnectsListCall) Do(opts ...googleapi.CallOption) (*InterconnectL // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -61966,32 +62855,28 @@ func (r *LicensesService) List(project string) *LicensesListCall { return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *LicensesListCall) Filter(filter string) *LicensesListCall { c.urlParams_.Set("filter", filter) return c @@ -62135,7 +63020,7 @@ func (c *LicensesListCall) Do(opts ...googleapi.CallOption) (*LicensesListRespon // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -62218,32 +63103,28 @@ func (r *MachineTypesService) AggregatedList(project string) *MachineTypesAggreg return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *MachineTypesAggregatedListCall) Filter(filter string) *MachineTypesAggregatedListCall { c.urlParams_.Set("filter", filter) return c @@ -62387,7 +63268,7 @@ func (c *MachineTypesAggregatedListCall) Do(opts ...googleapi.CallOption) (*Mach // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -62637,32 +63518,28 @@ func (r *MachineTypesService) List(project string, zone string) *MachineTypesLis return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *MachineTypesListCall) Filter(filter string) *MachineTypesListCall { c.urlParams_.Set("filter", filter) return c @@ -62808,7 +63685,7 @@ func (c *MachineTypesListCall) Do(opts ...googleapi.CallOption) (*MachineTypeLis // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -63544,32 +64421,28 @@ func (r *NetworksService) List(project string) *NetworksListCall { return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *NetworksListCall) Filter(filter string) *NetworksListCall { c.urlParams_.Set("filter", filter) return c @@ -63713,7 +64586,7 @@ func (c *NetworksListCall) Do(opts ...googleapi.CallOption) (*NetworkList, error // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -66212,6 +67085,168 @@ func (c *ProjectsSetCommonInstanceMetadataCall) Do(opts ...googleapi.CallOption) } +// method id "compute.projects.setDefaultNetworkTier": + +type ProjectsSetDefaultNetworkTierCall struct { + s *Service + project string + projectssetdefaultnetworktierrequest *ProjectsSetDefaultNetworkTierRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// SetDefaultNetworkTier: Sets the default network tier of the project. +// The default network tier is used when an +// address/forwardingRule/instance is created without specifying the +// network tier field. +func (r *ProjectsService) SetDefaultNetworkTier(project string, projectssetdefaultnetworktierrequest *ProjectsSetDefaultNetworkTierRequest) *ProjectsSetDefaultNetworkTierCall { + c := &ProjectsSetDefaultNetworkTierCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.project = project + c.projectssetdefaultnetworktierrequest = projectssetdefaultnetworktierrequest + return c +} + +// RequestId sets the optional parameter "requestId": An optional +// request ID to identify requests. Specify a unique request ID so that +// if you must retry your request, the server will know to ignore the +// request if it has already been completed. +// +// For example, consider a situation where you make an initial request +// and the request times out. If you make the request again with the +// same request ID, the server can check if original operation with the +// same request ID was received, and if so, will ignore the second +// request. This prevents clients from accidentally creating duplicate +// commitments. +// +// The request ID must be a valid UUID with the exception that zero UUID +// is not supported (00000000-0000-0000-0000-000000000000). +func (c *ProjectsSetDefaultNetworkTierCall) RequestId(requestId string) *ProjectsSetDefaultNetworkTierCall { + c.urlParams_.Set("requestId", requestId) + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsSetDefaultNetworkTierCall) Fields(s ...googleapi.Field) *ProjectsSetDefaultNetworkTierCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsSetDefaultNetworkTierCall) Context(ctx context.Context) *ProjectsSetDefaultNetworkTierCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsSetDefaultNetworkTierCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsSetDefaultNetworkTierCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.projectssetdefaultnetworktierrequest) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "{project}/setDefaultNetworkTier") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("POST", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "project": c.project, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "compute.projects.setDefaultNetworkTier" call. +// Exactly one of *Operation or error will be non-nil. Any non-2xx +// status code is an error. Response headers are in either +// *Operation.ServerResponse.Header or (if a response was returned at +// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified +// to check whether the returned error was because +// http.StatusNotModified was returned. +func (c *ProjectsSetDefaultNetworkTierCall) Do(opts ...googleapi.CallOption) (*Operation, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &Operation{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Sets the default network tier of the project. The default network tier is used when an address/forwardingRule/instance is created without specifying the network tier field.", + // "httpMethod": "POST", + // "id": "compute.projects.setDefaultNetworkTier", + // "parameterOrder": [ + // "project" + // ], + // "parameters": { + // "project": { + // "description": "Project ID for this request.", + // "location": "path", + // "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + // "required": true, + // "type": "string" + // }, + // "requestId": { + // "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + // "location": "query", + // "type": "string" + // } + // }, + // "path": "{project}/setDefaultNetworkTier", + // "request": { + // "$ref": "ProjectsSetDefaultNetworkTierRequest" + // }, + // "response": { + // "$ref": "Operation" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform", + // "https://www.googleapis.com/auth/compute" + // ] + // } + +} + // method id "compute.projects.setUsageExportBucket": type ProjectsSetUsageExportBucketCall struct { @@ -66903,32 +67938,28 @@ func (r *RegionAutoscalersService) List(project string, region string) *RegionAu return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *RegionAutoscalersListCall) Filter(filter string) *RegionAutoscalersListCall { c.urlParams_.Set("filter", filter) return c @@ -67074,7 +68105,7 @@ func (c *RegionAutoscalersListCall) Do(opts ...googleapi.CallOption) (*RegionAut // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -68128,7 +69159,7 @@ func (c *RegionBackendServicesGetHealthCall) Do(opts ...googleapi.CallOption) (* // ], // "parameters": { // "backendService": { - // "description": "Name of the BackendService resource to which the queried instance belongs.", + // "description": "Name of the BackendService resource for which to get health.", // "location": "path", // "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", // "required": true, @@ -68359,32 +69390,28 @@ func (r *RegionBackendServicesService) List(project string, region string) *Regi return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *RegionBackendServicesListCall) Filter(filter string) *RegionBackendServicesListCall { c.urlParams_.Set("filter", filter) return c @@ -68530,7 +69557,7 @@ func (c *RegionBackendServicesListCall) Do(opts ...googleapi.CallOption) (*Backe // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -69148,32 +70175,28 @@ func (r *RegionCommitmentsService) AggregatedList(project string) *RegionCommitm return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *RegionCommitmentsAggregatedListCall) Filter(filter string) *RegionCommitmentsAggregatedListCall { c.urlParams_.Set("filter", filter) return c @@ -69317,7 +70340,7 @@ func (c *RegionCommitmentsAggregatedListCall) Do(opts ...googleapi.CallOption) ( // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -69736,32 +70759,28 @@ func (r *RegionCommitmentsService) List(project string, region string) *RegionCo return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *RegionCommitmentsListCall) Filter(filter string) *RegionCommitmentsListCall { c.urlParams_.Set("filter", filter) return c @@ -69907,7 +70926,7 @@ func (c *RegionCommitmentsListCall) Do(opts ...googleapi.CallOption) (*Commitmen // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -69978,6 +70997,1907 @@ func (c *RegionCommitmentsListCall) Pages(ctx context.Context, f func(*Commitmen } } +// method id "compute.regionDiskTypes.get": + +type RegionDiskTypesGetCall struct { + s *Service + project string + region string + diskType string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// Get: Returns the specified regional disk type. Get a list of +// available disk types by making a list() request. +func (r *RegionDiskTypesService) Get(project string, region string, diskType string) *RegionDiskTypesGetCall { + c := &RegionDiskTypesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.project = project + c.region = region + c.diskType = diskType + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *RegionDiskTypesGetCall) Fields(s ...googleapi.Field) *RegionDiskTypesGetCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// IfNoneMatch sets the optional parameter which makes the operation +// fail if the object's ETag matches the given value. This is useful for +// getting updates only after the object has changed since the last +// request. Use googleapi.IsNotModified to check whether the response +// error from Do is the result of In-None-Match. +func (c *RegionDiskTypesGetCall) IfNoneMatch(entityTag string) *RegionDiskTypesGetCall { + c.ifNoneMatch_ = entityTag + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *RegionDiskTypesGetCall) Context(ctx context.Context) *RegionDiskTypesGetCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *RegionDiskTypesGetCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *RegionDiskTypesGetCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + if c.ifNoneMatch_ != "" { + reqHeaders.Set("If-None-Match", c.ifNoneMatch_) + } + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "{project}/regions/{region}/diskTypes/{diskType}") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("GET", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "project": c.project, + "region": c.region, + "diskType": c.diskType, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "compute.regionDiskTypes.get" call. +// Exactly one of *DiskType or error will be non-nil. Any non-2xx status +// code is an error. Response headers are in either +// *DiskType.ServerResponse.Header or (if a response was returned at +// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified +// to check whether the returned error was because +// http.StatusNotModified was returned. +func (c *RegionDiskTypesGetCall) Do(opts ...googleapi.CallOption) (*DiskType, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &DiskType{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Returns the specified regional disk type. Get a list of available disk types by making a list() request.", + // "httpMethod": "GET", + // "id": "compute.regionDiskTypes.get", + // "parameterOrder": [ + // "project", + // "region", + // "diskType" + // ], + // "parameters": { + // "diskType": { + // "description": "Name of the disk type to return.", + // "location": "path", + // "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + // "required": true, + // "type": "string" + // }, + // "project": { + // "description": "Project ID for this request.", + // "location": "path", + // "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + // "required": true, + // "type": "string" + // }, + // "region": { + // "description": "The name of the region for this request.", + // "location": "path", + // "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + // "required": true, + // "type": "string" + // } + // }, + // "path": "{project}/regions/{region}/diskTypes/{diskType}", + // "response": { + // "$ref": "DiskType" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform", + // "https://www.googleapis.com/auth/compute", + // "https://www.googleapis.com/auth/compute.readonly" + // ] + // } + +} + +// method id "compute.regionDiskTypes.list": + +type RegionDiskTypesListCall struct { + s *Service + project string + region string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// List: Retrieves a list of regional disk types available to the +// specified project. +func (r *RegionDiskTypesService) List(project string, region string) *RegionDiskTypesListCall { + c := &RegionDiskTypesListCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.project = project + c.region = region + return c +} + +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. +// +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. +// +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. +// +// To filter on multiple expressions, provide each separate expression +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). +func (c *RegionDiskTypesListCall) Filter(filter string) *RegionDiskTypesListCall { + c.urlParams_.Set("filter", filter) + return c +} + +// MaxResults sets the optional parameter "maxResults": The maximum +// number of results per page that should be returned. If the number of +// available results is larger than maxResults, Compute Engine returns a +// nextPageToken that can be used to get the next page of results in +// subsequent list requests. Acceptable values are 0 to 500, inclusive. +// (Default: 500) +func (c *RegionDiskTypesListCall) MaxResults(maxResults int64) *RegionDiskTypesListCall { + c.urlParams_.Set("maxResults", fmt.Sprint(maxResults)) + return c +} + +// OrderBy sets the optional parameter "orderBy": Sorts list results by +// a certain order. By default, results are returned in alphanumerical +// order based on the resource name. +// +// You can also sort results in descending order based on the creation +// timestamp using orderBy="creationTimestamp desc". This sorts results +// based on the creationTimestamp field in reverse chronological order +// (newest result first). Use this to sort resources like operations so +// that the newest operation is returned first. +// +// Currently, only sorting by name or creationTimestamp desc is +// supported. +func (c *RegionDiskTypesListCall) OrderBy(orderBy string) *RegionDiskTypesListCall { + c.urlParams_.Set("orderBy", orderBy) + return c +} + +// PageToken sets the optional parameter "pageToken": Specifies a page +// token to use. Set pageToken to the nextPageToken returned by a +// previous list request to get the next page of results. +func (c *RegionDiskTypesListCall) PageToken(pageToken string) *RegionDiskTypesListCall { + c.urlParams_.Set("pageToken", pageToken) + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *RegionDiskTypesListCall) Fields(s ...googleapi.Field) *RegionDiskTypesListCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// IfNoneMatch sets the optional parameter which makes the operation +// fail if the object's ETag matches the given value. This is useful for +// getting updates only after the object has changed since the last +// request. Use googleapi.IsNotModified to check whether the response +// error from Do is the result of In-None-Match. +func (c *RegionDiskTypesListCall) IfNoneMatch(entityTag string) *RegionDiskTypesListCall { + c.ifNoneMatch_ = entityTag + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *RegionDiskTypesListCall) Context(ctx context.Context) *RegionDiskTypesListCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *RegionDiskTypesListCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *RegionDiskTypesListCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + if c.ifNoneMatch_ != "" { + reqHeaders.Set("If-None-Match", c.ifNoneMatch_) + } + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "{project}/regions/{region}/diskTypes") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("GET", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "project": c.project, + "region": c.region, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "compute.regionDiskTypes.list" call. +// Exactly one of *RegionDiskTypeList or error will be non-nil. Any +// non-2xx status code is an error. Response headers are in either +// *RegionDiskTypeList.ServerResponse.Header or (if a response was +// returned at all) in error.(*googleapi.Error).Header. Use +// googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *RegionDiskTypesListCall) Do(opts ...googleapi.CallOption) (*RegionDiskTypeList, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &RegionDiskTypeList{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Retrieves a list of regional disk types available to the specified project.", + // "httpMethod": "GET", + // "id": "compute.regionDiskTypes.list", + // "parameterOrder": [ + // "project", + // "region" + // ], + // "parameters": { + // "filter": { + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + // "location": "query", + // "type": "string" + // }, + // "maxResults": { + // "default": "500", + // "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + // "format": "uint32", + // "location": "query", + // "minimum": "0", + // "type": "integer" + // }, + // "orderBy": { + // "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + // "location": "query", + // "type": "string" + // }, + // "pageToken": { + // "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + // "location": "query", + // "type": "string" + // }, + // "project": { + // "description": "Project ID for this request.", + // "location": "path", + // "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + // "required": true, + // "type": "string" + // }, + // "region": { + // "description": "The name of the region for this request.", + // "location": "path", + // "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + // "required": true, + // "type": "string" + // } + // }, + // "path": "{project}/regions/{region}/diskTypes", + // "response": { + // "$ref": "RegionDiskTypeList" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform", + // "https://www.googleapis.com/auth/compute", + // "https://www.googleapis.com/auth/compute.readonly" + // ] + // } + +} + +// Pages invokes f for each page of results. +// A non-nil error returned from f will halt the iteration. +// The provided context supersedes any context provided to the Context method. +func (c *RegionDiskTypesListCall) Pages(ctx context.Context, f func(*RegionDiskTypeList) error) error { + c.ctx_ = ctx + defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point + for { + x, err := c.Do() + if err != nil { + return err + } + if err := f(x); err != nil { + return err + } + if x.NextPageToken == "" { + return nil + } + c.PageToken(x.NextPageToken) + } +} + +// method id "compute.regionDisks.createSnapshot": + +type RegionDisksCreateSnapshotCall struct { + s *Service + project string + region string + disk string + snapshot *Snapshot + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// CreateSnapshot: Creates a snapshot of this regional disk. +func (r *RegionDisksService) CreateSnapshot(project string, region string, disk string, snapshot *Snapshot) *RegionDisksCreateSnapshotCall { + c := &RegionDisksCreateSnapshotCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.project = project + c.region = region + c.disk = disk + c.snapshot = snapshot + return c +} + +// RequestId sets the optional parameter "requestId": An optional +// request ID to identify requests. Specify a unique request ID so that +// if you must retry your request, the server will know to ignore the +// request if it has already been completed. +// +// For example, consider a situation where you make an initial request +// and the request times out. If you make the request again with the +// same request ID, the server can check if original operation with the +// same request ID was received, and if so, will ignore the second +// request. This prevents clients from accidentally creating duplicate +// commitments. +// +// The request ID must be a valid UUID with the exception that zero UUID +// is not supported (00000000-0000-0000-0000-000000000000). +func (c *RegionDisksCreateSnapshotCall) RequestId(requestId string) *RegionDisksCreateSnapshotCall { + c.urlParams_.Set("requestId", requestId) + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *RegionDisksCreateSnapshotCall) Fields(s ...googleapi.Field) *RegionDisksCreateSnapshotCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *RegionDisksCreateSnapshotCall) Context(ctx context.Context) *RegionDisksCreateSnapshotCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *RegionDisksCreateSnapshotCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *RegionDisksCreateSnapshotCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.snapshot) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "{project}/regions/{region}/disks/{disk}/createSnapshot") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("POST", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "project": c.project, + "region": c.region, + "disk": c.disk, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "compute.regionDisks.createSnapshot" call. +// Exactly one of *Operation or error will be non-nil. Any non-2xx +// status code is an error. Response headers are in either +// *Operation.ServerResponse.Header or (if a response was returned at +// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified +// to check whether the returned error was because +// http.StatusNotModified was returned. +func (c *RegionDisksCreateSnapshotCall) Do(opts ...googleapi.CallOption) (*Operation, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &Operation{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Creates a snapshot of this regional disk.", + // "httpMethod": "POST", + // "id": "compute.regionDisks.createSnapshot", + // "parameterOrder": [ + // "project", + // "region", + // "disk" + // ], + // "parameters": { + // "disk": { + // "description": "Name of the regional persistent disk to snapshot.", + // "location": "path", + // "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + // "required": true, + // "type": "string" + // }, + // "project": { + // "description": "Project ID for this request.", + // "location": "path", + // "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + // "required": true, + // "type": "string" + // }, + // "region": { + // "description": "Name of the region for this request.", + // "location": "path", + // "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + // "required": true, + // "type": "string" + // }, + // "requestId": { + // "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + // "location": "query", + // "type": "string" + // } + // }, + // "path": "{project}/regions/{region}/disks/{disk}/createSnapshot", + // "request": { + // "$ref": "Snapshot" + // }, + // "response": { + // "$ref": "Operation" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform", + // "https://www.googleapis.com/auth/compute" + // ] + // } + +} + +// method id "compute.regionDisks.delete": + +type RegionDisksDeleteCall struct { + s *Service + project string + region string + disk string + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Delete: Deletes the specified regional persistent disk. Deleting a +// regional disk removes all the replicas of its data permanently and is +// irreversible. However, deleting a disk does not delete any snapshots +// previously made from the disk. You must separately delete snapshots. +func (r *RegionDisksService) Delete(project string, region string, disk string) *RegionDisksDeleteCall { + c := &RegionDisksDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.project = project + c.region = region + c.disk = disk + return c +} + +// RequestId sets the optional parameter "requestId": An optional +// request ID to identify requests. Specify a unique request ID so that +// if you must retry your request, the server will know to ignore the +// request if it has already been completed. +// +// For example, consider a situation where you make an initial request +// and the request times out. If you make the request again with the +// same request ID, the server can check if original operation with the +// same request ID was received, and if so, will ignore the second +// request. This prevents clients from accidentally creating duplicate +// commitments. +// +// The request ID must be a valid UUID with the exception that zero UUID +// is not supported (00000000-0000-0000-0000-000000000000). +func (c *RegionDisksDeleteCall) RequestId(requestId string) *RegionDisksDeleteCall { + c.urlParams_.Set("requestId", requestId) + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *RegionDisksDeleteCall) Fields(s ...googleapi.Field) *RegionDisksDeleteCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *RegionDisksDeleteCall) Context(ctx context.Context) *RegionDisksDeleteCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *RegionDisksDeleteCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *RegionDisksDeleteCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "{project}/regions/{region}/disks/{disk}") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("DELETE", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "project": c.project, + "region": c.region, + "disk": c.disk, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "compute.regionDisks.delete" call. +// Exactly one of *Operation or error will be non-nil. Any non-2xx +// status code is an error. Response headers are in either +// *Operation.ServerResponse.Header or (if a response was returned at +// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified +// to check whether the returned error was because +// http.StatusNotModified was returned. +func (c *RegionDisksDeleteCall) Do(opts ...googleapi.CallOption) (*Operation, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &Operation{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Deletes the specified regional persistent disk. Deleting a regional disk removes all the replicas of its data permanently and is irreversible. However, deleting a disk does not delete any snapshots previously made from the disk. You must separately delete snapshots.", + // "httpMethod": "DELETE", + // "id": "compute.regionDisks.delete", + // "parameterOrder": [ + // "project", + // "region", + // "disk" + // ], + // "parameters": { + // "disk": { + // "description": "Name of the regional persistent disk to delete.", + // "location": "path", + // "required": true, + // "type": "string" + // }, + // "project": { + // "description": "Project ID for this request.", + // "location": "path", + // "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + // "required": true, + // "type": "string" + // }, + // "region": { + // "description": "Name of the region for this request.", + // "location": "path", + // "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + // "required": true, + // "type": "string" + // }, + // "requestId": { + // "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + // "location": "query", + // "type": "string" + // } + // }, + // "path": "{project}/regions/{region}/disks/{disk}", + // "response": { + // "$ref": "Operation" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform", + // "https://www.googleapis.com/auth/compute" + // ] + // } + +} + +// method id "compute.regionDisks.get": + +type RegionDisksGetCall struct { + s *Service + project string + region string + disk string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// Get: Returns a specified regional persistent disk. +func (r *RegionDisksService) Get(project string, region string, disk string) *RegionDisksGetCall { + c := &RegionDisksGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.project = project + c.region = region + c.disk = disk + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *RegionDisksGetCall) Fields(s ...googleapi.Field) *RegionDisksGetCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// IfNoneMatch sets the optional parameter which makes the operation +// fail if the object's ETag matches the given value. This is useful for +// getting updates only after the object has changed since the last +// request. Use googleapi.IsNotModified to check whether the response +// error from Do is the result of In-None-Match. +func (c *RegionDisksGetCall) IfNoneMatch(entityTag string) *RegionDisksGetCall { + c.ifNoneMatch_ = entityTag + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *RegionDisksGetCall) Context(ctx context.Context) *RegionDisksGetCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *RegionDisksGetCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *RegionDisksGetCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + if c.ifNoneMatch_ != "" { + reqHeaders.Set("If-None-Match", c.ifNoneMatch_) + } + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "{project}/regions/{region}/disks/{disk}") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("GET", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "project": c.project, + "region": c.region, + "disk": c.disk, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "compute.regionDisks.get" call. +// Exactly one of *Disk or error will be non-nil. Any non-2xx status +// code is an error. Response headers are in either +// *Disk.ServerResponse.Header or (if a response was returned at all) in +// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check +// whether the returned error was because http.StatusNotModified was +// returned. +func (c *RegionDisksGetCall) Do(opts ...googleapi.CallOption) (*Disk, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &Disk{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Returns a specified regional persistent disk.", + // "httpMethod": "GET", + // "id": "compute.regionDisks.get", + // "parameterOrder": [ + // "project", + // "region", + // "disk" + // ], + // "parameters": { + // "disk": { + // "description": "Name of the regional persistent disk to return.", + // "location": "path", + // "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + // "required": true, + // "type": "string" + // }, + // "project": { + // "description": "Project ID for this request.", + // "location": "path", + // "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + // "required": true, + // "type": "string" + // }, + // "region": { + // "description": "Name of the region for this request.", + // "location": "path", + // "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + // "required": true, + // "type": "string" + // } + // }, + // "path": "{project}/regions/{region}/disks/{disk}", + // "response": { + // "$ref": "Disk" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform", + // "https://www.googleapis.com/auth/compute", + // "https://www.googleapis.com/auth/compute.readonly" + // ] + // } + +} + +// method id "compute.regionDisks.insert": + +type RegionDisksInsertCall struct { + s *Service + project string + region string + disk *Disk + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Insert: Creates a persistent regional disk in the specified project +// using the data included in the request. +func (r *RegionDisksService) Insert(project string, region string, disk *Disk) *RegionDisksInsertCall { + c := &RegionDisksInsertCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.project = project + c.region = region + c.disk = disk + return c +} + +// RequestId sets the optional parameter "requestId": An optional +// request ID to identify requests. Specify a unique request ID so that +// if you must retry your request, the server will know to ignore the +// request if it has already been completed. +// +// For example, consider a situation where you make an initial request +// and the request times out. If you make the request again with the +// same request ID, the server can check if original operation with the +// same request ID was received, and if so, will ignore the second +// request. This prevents clients from accidentally creating duplicate +// commitments. +// +// The request ID must be a valid UUID with the exception that zero UUID +// is not supported (00000000-0000-0000-0000-000000000000). +func (c *RegionDisksInsertCall) RequestId(requestId string) *RegionDisksInsertCall { + c.urlParams_.Set("requestId", requestId) + return c +} + +// SourceImage sets the optional parameter "sourceImage": Source image +// to restore onto a disk. +func (c *RegionDisksInsertCall) SourceImage(sourceImage string) *RegionDisksInsertCall { + c.urlParams_.Set("sourceImage", sourceImage) + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *RegionDisksInsertCall) Fields(s ...googleapi.Field) *RegionDisksInsertCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *RegionDisksInsertCall) Context(ctx context.Context) *RegionDisksInsertCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *RegionDisksInsertCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *RegionDisksInsertCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.disk) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "{project}/regions/{region}/disks") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("POST", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "project": c.project, + "region": c.region, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "compute.regionDisks.insert" call. +// Exactly one of *Operation or error will be non-nil. Any non-2xx +// status code is an error. Response headers are in either +// *Operation.ServerResponse.Header or (if a response was returned at +// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified +// to check whether the returned error was because +// http.StatusNotModified was returned. +func (c *RegionDisksInsertCall) Do(opts ...googleapi.CallOption) (*Operation, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &Operation{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Creates a persistent regional disk in the specified project using the data included in the request.", + // "httpMethod": "POST", + // "id": "compute.regionDisks.insert", + // "parameterOrder": [ + // "project", + // "region" + // ], + // "parameters": { + // "project": { + // "description": "Project ID for this request.", + // "location": "path", + // "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + // "required": true, + // "type": "string" + // }, + // "region": { + // "description": "Name of the region for this request.", + // "location": "path", + // "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + // "required": true, + // "type": "string" + // }, + // "requestId": { + // "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + // "location": "query", + // "type": "string" + // }, + // "sourceImage": { + // "description": "Optional. Source image to restore onto a disk.", + // "location": "query", + // "type": "string" + // } + // }, + // "path": "{project}/regions/{region}/disks", + // "request": { + // "$ref": "Disk" + // }, + // "response": { + // "$ref": "Operation" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform", + // "https://www.googleapis.com/auth/compute" + // ] + // } + +} + +// method id "compute.regionDisks.list": + +type RegionDisksListCall struct { + s *Service + project string + region string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// List: Retrieves the list of persistent disks contained within the +// specified region. +func (r *RegionDisksService) List(project string, region string) *RegionDisksListCall { + c := &RegionDisksListCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.project = project + c.region = region + return c +} + +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. +// +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. +// +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. +// +// To filter on multiple expressions, provide each separate expression +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). +func (c *RegionDisksListCall) Filter(filter string) *RegionDisksListCall { + c.urlParams_.Set("filter", filter) + return c +} + +// MaxResults sets the optional parameter "maxResults": The maximum +// number of results per page that should be returned. If the number of +// available results is larger than maxResults, Compute Engine returns a +// nextPageToken that can be used to get the next page of results in +// subsequent list requests. Acceptable values are 0 to 500, inclusive. +// (Default: 500) +func (c *RegionDisksListCall) MaxResults(maxResults int64) *RegionDisksListCall { + c.urlParams_.Set("maxResults", fmt.Sprint(maxResults)) + return c +} + +// OrderBy sets the optional parameter "orderBy": Sorts list results by +// a certain order. By default, results are returned in alphanumerical +// order based on the resource name. +// +// You can also sort results in descending order based on the creation +// timestamp using orderBy="creationTimestamp desc". This sorts results +// based on the creationTimestamp field in reverse chronological order +// (newest result first). Use this to sort resources like operations so +// that the newest operation is returned first. +// +// Currently, only sorting by name or creationTimestamp desc is +// supported. +func (c *RegionDisksListCall) OrderBy(orderBy string) *RegionDisksListCall { + c.urlParams_.Set("orderBy", orderBy) + return c +} + +// PageToken sets the optional parameter "pageToken": Specifies a page +// token to use. Set pageToken to the nextPageToken returned by a +// previous list request to get the next page of results. +func (c *RegionDisksListCall) PageToken(pageToken string) *RegionDisksListCall { + c.urlParams_.Set("pageToken", pageToken) + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *RegionDisksListCall) Fields(s ...googleapi.Field) *RegionDisksListCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// IfNoneMatch sets the optional parameter which makes the operation +// fail if the object's ETag matches the given value. This is useful for +// getting updates only after the object has changed since the last +// request. Use googleapi.IsNotModified to check whether the response +// error from Do is the result of In-None-Match. +func (c *RegionDisksListCall) IfNoneMatch(entityTag string) *RegionDisksListCall { + c.ifNoneMatch_ = entityTag + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *RegionDisksListCall) Context(ctx context.Context) *RegionDisksListCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *RegionDisksListCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *RegionDisksListCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + if c.ifNoneMatch_ != "" { + reqHeaders.Set("If-None-Match", c.ifNoneMatch_) + } + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "{project}/regions/{region}/disks") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("GET", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "project": c.project, + "region": c.region, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "compute.regionDisks.list" call. +// Exactly one of *DiskList or error will be non-nil. Any non-2xx status +// code is an error. Response headers are in either +// *DiskList.ServerResponse.Header or (if a response was returned at +// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified +// to check whether the returned error was because +// http.StatusNotModified was returned. +func (c *RegionDisksListCall) Do(opts ...googleapi.CallOption) (*DiskList, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &DiskList{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Retrieves the list of persistent disks contained within the specified region.", + // "httpMethod": "GET", + // "id": "compute.regionDisks.list", + // "parameterOrder": [ + // "project", + // "region" + // ], + // "parameters": { + // "filter": { + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + // "location": "query", + // "type": "string" + // }, + // "maxResults": { + // "default": "500", + // "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + // "format": "uint32", + // "location": "query", + // "minimum": "0", + // "type": "integer" + // }, + // "orderBy": { + // "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + // "location": "query", + // "type": "string" + // }, + // "pageToken": { + // "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + // "location": "query", + // "type": "string" + // }, + // "project": { + // "description": "Project ID for this request.", + // "location": "path", + // "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + // "required": true, + // "type": "string" + // }, + // "region": { + // "description": "Name of the region for this request.", + // "location": "path", + // "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + // "required": true, + // "type": "string" + // } + // }, + // "path": "{project}/regions/{region}/disks", + // "response": { + // "$ref": "DiskList" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform", + // "https://www.googleapis.com/auth/compute", + // "https://www.googleapis.com/auth/compute.readonly" + // ] + // } + +} + +// Pages invokes f for each page of results. +// A non-nil error returned from f will halt the iteration. +// The provided context supersedes any context provided to the Context method. +func (c *RegionDisksListCall) Pages(ctx context.Context, f func(*DiskList) error) error { + c.ctx_ = ctx + defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point + for { + x, err := c.Do() + if err != nil { + return err + } + if err := f(x); err != nil { + return err + } + if x.NextPageToken == "" { + return nil + } + c.PageToken(x.NextPageToken) + } +} + +// method id "compute.regionDisks.resize": + +type RegionDisksResizeCall struct { + s *Service + project string + region string + disk string + regiondisksresizerequest *RegionDisksResizeRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Resize: Resizes the specified regional persistent disk. +func (r *RegionDisksService) Resize(project string, region string, disk string, regiondisksresizerequest *RegionDisksResizeRequest) *RegionDisksResizeCall { + c := &RegionDisksResizeCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.project = project + c.region = region + c.disk = disk + c.regiondisksresizerequest = regiondisksresizerequest + return c +} + +// RequestId sets the optional parameter "requestId": An optional +// request ID to identify requests. Specify a unique request ID so that +// if you must retry your request, the server will know to ignore the +// request if it has already been completed. +// +// For example, consider a situation where you make an initial request +// and the request times out. If you make the request again with the +// same request ID, the server can check if original operation with the +// same request ID was received, and if so, will ignore the second +// request. This prevents clients from accidentally creating duplicate +// commitments. +// +// The request ID must be a valid UUID with the exception that zero UUID +// is not supported (00000000-0000-0000-0000-000000000000). +func (c *RegionDisksResizeCall) RequestId(requestId string) *RegionDisksResizeCall { + c.urlParams_.Set("requestId", requestId) + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *RegionDisksResizeCall) Fields(s ...googleapi.Field) *RegionDisksResizeCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *RegionDisksResizeCall) Context(ctx context.Context) *RegionDisksResizeCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *RegionDisksResizeCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *RegionDisksResizeCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.regiondisksresizerequest) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "{project}/regions/{region}/disks/{disk}/resize") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("POST", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "project": c.project, + "region": c.region, + "disk": c.disk, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "compute.regionDisks.resize" call. +// Exactly one of *Operation or error will be non-nil. Any non-2xx +// status code is an error. Response headers are in either +// *Operation.ServerResponse.Header or (if a response was returned at +// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified +// to check whether the returned error was because +// http.StatusNotModified was returned. +func (c *RegionDisksResizeCall) Do(opts ...googleapi.CallOption) (*Operation, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &Operation{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Resizes the specified regional persistent disk.", + // "httpMethod": "POST", + // "id": "compute.regionDisks.resize", + // "parameterOrder": [ + // "project", + // "region", + // "disk" + // ], + // "parameters": { + // "disk": { + // "description": "Name of the regional persistent disk.", + // "location": "path", + // "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + // "required": true, + // "type": "string" + // }, + // "project": { + // "description": "The project ID for this request.", + // "location": "path", + // "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + // "required": true, + // "type": "string" + // }, + // "region": { + // "description": "Name of the region for this request.", + // "location": "path", + // "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + // "required": true, + // "type": "string" + // }, + // "requestId": { + // "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + // "location": "query", + // "type": "string" + // } + // }, + // "path": "{project}/regions/{region}/disks/{disk}/resize", + // "request": { + // "$ref": "RegionDisksResizeRequest" + // }, + // "response": { + // "$ref": "Operation" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform", + // "https://www.googleapis.com/auth/compute" + // ] + // } + +} + +// method id "compute.regionDisks.setLabels": + +type RegionDisksSetLabelsCall struct { + s *Service + project string + region string + resource string + regionsetlabelsrequest *RegionSetLabelsRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// SetLabels: Sets the labels on the target regional disk. +func (r *RegionDisksService) SetLabels(project string, region string, resource string, regionsetlabelsrequest *RegionSetLabelsRequest) *RegionDisksSetLabelsCall { + c := &RegionDisksSetLabelsCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.project = project + c.region = region + c.resource = resource + c.regionsetlabelsrequest = regionsetlabelsrequest + return c +} + +// RequestId sets the optional parameter "requestId": An optional +// request ID to identify requests. Specify a unique request ID so that +// if you must retry your request, the server will know to ignore the +// request if it has already been completed. +// +// For example, consider a situation where you make an initial request +// and the request times out. If you make the request again with the +// same request ID, the server can check if original operation with the +// same request ID was received, and if so, will ignore the second +// request. This prevents clients from accidentally creating duplicate +// commitments. +// +// The request ID must be a valid UUID with the exception that zero UUID +// is not supported (00000000-0000-0000-0000-000000000000). +func (c *RegionDisksSetLabelsCall) RequestId(requestId string) *RegionDisksSetLabelsCall { + c.urlParams_.Set("requestId", requestId) + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *RegionDisksSetLabelsCall) Fields(s ...googleapi.Field) *RegionDisksSetLabelsCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *RegionDisksSetLabelsCall) Context(ctx context.Context) *RegionDisksSetLabelsCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *RegionDisksSetLabelsCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *RegionDisksSetLabelsCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.regionsetlabelsrequest) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "{project}/regions/{region}/disks/{resource}/setLabels") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("POST", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "project": c.project, + "region": c.region, + "resource": c.resource, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "compute.regionDisks.setLabels" call. +// Exactly one of *Operation or error will be non-nil. Any non-2xx +// status code is an error. Response headers are in either +// *Operation.ServerResponse.Header or (if a response was returned at +// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified +// to check whether the returned error was because +// http.StatusNotModified was returned. +func (c *RegionDisksSetLabelsCall) Do(opts ...googleapi.CallOption) (*Operation, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &Operation{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Sets the labels on the target regional disk.", + // "httpMethod": "POST", + // "id": "compute.regionDisks.setLabels", + // "parameterOrder": [ + // "project", + // "region", + // "resource" + // ], + // "parameters": { + // "project": { + // "description": "Project ID for this request.", + // "location": "path", + // "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + // "required": true, + // "type": "string" + // }, + // "region": { + // "description": "The region for this request.", + // "location": "path", + // "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + // "required": true, + // "type": "string" + // }, + // "requestId": { + // "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + // "location": "query", + // "type": "string" + // }, + // "resource": { + // "description": "Name of the resource for this request.", + // "location": "path", + // "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + // "required": true, + // "type": "string" + // } + // }, + // "path": "{project}/regions/{region}/disks/{resource}/setLabels", + // "request": { + // "$ref": "RegionSetLabelsRequest" + // }, + // "response": { + // "$ref": "Operation" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform", + // "https://www.googleapis.com/auth/compute" + // ] + // } + +} + +// method id "compute.regionDisks.testIamPermissions": + +type RegionDisksTestIamPermissionsCall struct { + s *Service + project string + region string + resource string + testpermissionsrequest *TestPermissionsRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// TestIamPermissions: Returns permissions that a caller has on the +// specified resource. +func (r *RegionDisksService) TestIamPermissions(project string, region string, resource string, testpermissionsrequest *TestPermissionsRequest) *RegionDisksTestIamPermissionsCall { + c := &RegionDisksTestIamPermissionsCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.project = project + c.region = region + c.resource = resource + c.testpermissionsrequest = testpermissionsrequest + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *RegionDisksTestIamPermissionsCall) Fields(s ...googleapi.Field) *RegionDisksTestIamPermissionsCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *RegionDisksTestIamPermissionsCall) Context(ctx context.Context) *RegionDisksTestIamPermissionsCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *RegionDisksTestIamPermissionsCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *RegionDisksTestIamPermissionsCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.testpermissionsrequest) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "{project}/regions/{region}/disks/{resource}/testIamPermissions") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("POST", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "project": c.project, + "region": c.region, + "resource": c.resource, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "compute.regionDisks.testIamPermissions" call. +// Exactly one of *TestPermissionsResponse or error will be non-nil. Any +// non-2xx status code is an error. Response headers are in either +// *TestPermissionsResponse.ServerResponse.Header or (if a response was +// returned at all) in error.(*googleapi.Error).Header. Use +// googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *RegionDisksTestIamPermissionsCall) Do(opts ...googleapi.CallOption) (*TestPermissionsResponse, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &TestPermissionsResponse{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Returns permissions that a caller has on the specified resource.", + // "httpMethod": "POST", + // "id": "compute.regionDisks.testIamPermissions", + // "parameterOrder": [ + // "project", + // "region", + // "resource" + // ], + // "parameters": { + // "project": { + // "description": "Project ID for this request.", + // "location": "path", + // "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + // "required": true, + // "type": "string" + // }, + // "region": { + // "description": "The name of the region for this request.", + // "location": "path", + // "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + // "required": true, + // "type": "string" + // }, + // "resource": { + // "description": "Name of the resource for this request.", + // "location": "path", + // "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + // "required": true, + // "type": "string" + // } + // }, + // "path": "{project}/regions/{region}/disks/{resource}/testIamPermissions", + // "request": { + // "$ref": "TestPermissionsRequest" + // }, + // "response": { + // "$ref": "TestPermissionsResponse" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform", + // "https://www.googleapis.com/auth/compute", + // "https://www.googleapis.com/auth/compute.readonly" + // ] + // } + +} + // method id "compute.regionInstanceGroupManagers.abandonInstances": type RegionInstanceGroupManagersAbandonInstancesCall struct { @@ -70896,32 +73816,28 @@ func (r *RegionInstanceGroupManagersService) List(project string, region string) return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *RegionInstanceGroupManagersListCall) Filter(filter string) *RegionInstanceGroupManagersListCall { c.urlParams_.Set("filter", filter) return c @@ -71067,7 +73983,7 @@ func (c *RegionInstanceGroupManagersListCall) Do(opts ...googleapi.CallOption) ( // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -72985,32 +75901,28 @@ func (r *RegionInstanceGroupsService) List(project string, region string) *Regio return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *RegionInstanceGroupsListCall) Filter(filter string) *RegionInstanceGroupsListCall { c.urlParams_.Set("filter", filter) return c @@ -73156,7 +76068,7 @@ func (c *RegionInstanceGroupsListCall) Do(opts ...googleapi.CallOption) (*Region // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -73252,32 +76164,28 @@ func (r *RegionInstanceGroupsService) ListInstances(project string, region strin return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *RegionInstanceGroupsListInstancesCall) Filter(filter string) *RegionInstanceGroupsListInstancesCall { c.urlParams_.Set("filter", filter) return c @@ -73418,7 +76326,7 @@ func (c *RegionInstanceGroupsListInstancesCall) Do(opts ...googleapi.CallOption) // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -74141,32 +77049,28 @@ func (r *RegionOperationsService) List(project string, region string) *RegionOpe return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *RegionOperationsListCall) Filter(filter string) *RegionOperationsListCall { c.urlParams_.Set("filter", filter) return c @@ -74312,7 +77216,7 @@ func (c *RegionOperationsListCall) Do(opts ...googleapi.CallOption) (*OperationL // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -74556,32 +77460,28 @@ func (r *RegionsService) List(project string) *RegionsListCall { return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *RegionsListCall) Filter(filter string) *RegionsListCall { c.urlParams_.Set("filter", filter) return c @@ -74725,7 +77625,7 @@ func (c *RegionsListCall) Do(opts ...googleapi.CallOption) (*RegionList, error) // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -74807,32 +77707,28 @@ func (r *RoutersService) AggregatedList(project string) *RoutersAggregatedListCa return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *RoutersAggregatedListCall) Filter(filter string) *RoutersAggregatedListCall { c.urlParams_.Set("filter", filter) return c @@ -74976,7 +77872,7 @@ func (c *RoutersAggregatedListCall) Do(opts ...googleapi.CallOption) (*RouterAgg // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -75729,32 +78625,28 @@ func (r *RoutersService) List(project string, region string) *RoutersListCall { return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *RoutersListCall) Filter(filter string) *RoutersListCall { c.urlParams_.Set("filter", filter) return c @@ -75900,7 +78792,7 @@ func (c *RoutersListCall) Do(opts ...googleapi.CallOption) (*RouterList, error) // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -77150,32 +80042,28 @@ func (r *RoutesService) List(project string) *RoutesListCall { return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *RoutesListCall) Filter(filter string) *RoutesListCall { c.urlParams_.Set("filter", filter) return c @@ -77319,7 +80207,7 @@ func (c *RoutesListCall) Do(opts ...googleapi.CallOption) (*RouteList, error) { // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -78332,32 +81220,28 @@ func (r *SecurityPoliciesService) List(project string) *SecurityPoliciesListCall return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *SecurityPoliciesListCall) Filter(filter string) *SecurityPoliciesListCall { c.urlParams_.Set("filter", filter) return c @@ -78501,7 +81385,7 @@ func (c *SecurityPoliciesListCall) Do(opts ...googleapi.CallOption) (*SecurityPo // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -79532,32 +82416,28 @@ func (r *SnapshotsService) List(project string) *SnapshotsListCall { return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *SnapshotsListCall) Filter(filter string) *SnapshotsListCall { c.urlParams_.Set("filter", filter) return c @@ -79701,7 +82581,7 @@ func (c *SnapshotsListCall) Do(opts ...googleapi.CallOption) (*SnapshotList, err // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -80551,32 +83431,28 @@ func (r *SslCertificatesService) List(project string) *SslCertificatesListCall { return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *SslCertificatesListCall) Filter(filter string) *SslCertificatesListCall { c.urlParams_.Set("filter", filter) return c @@ -80720,7 +83596,7 @@ func (c *SslCertificatesListCall) Do(opts ...googleapi.CallOption) (*SslCertific // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -81423,32 +84299,28 @@ func (r *SslPoliciesService) List(project string) *SslPoliciesListCall { return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *SslPoliciesListCall) Filter(filter string) *SslPoliciesListCall { c.urlParams_.Set("filter", filter) return c @@ -81592,7 +84464,7 @@ func (c *SslPoliciesListCall) Do(opts ...googleapi.CallOption) (*SslPoliciesList // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -81675,32 +84547,28 @@ func (r *SslPoliciesService) ListAvailableFeatures(project string) *SslPoliciesL return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *SslPoliciesListAvailableFeaturesCall) Filter(filter string) *SslPoliciesListAvailableFeaturesCall { c.urlParams_.Set("filter", filter) return c @@ -81846,7 +84714,7 @@ func (c *SslPoliciesListAvailableFeaturesCall) Do(opts ...googleapi.CallOption) // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -82225,32 +85093,28 @@ func (r *SubnetworksService) AggregatedList(project string) *SubnetworksAggregat return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *SubnetworksAggregatedListCall) Filter(filter string) *SubnetworksAggregatedListCall { c.urlParams_.Set("filter", filter) return c @@ -82394,7 +85258,7 @@ func (c *SubnetworksAggregatedListCall) Do(opts ...googleapi.CallOption) (*Subne // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -83329,32 +86193,28 @@ func (r *SubnetworksService) List(project string, region string) *SubnetworksLis return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *SubnetworksListCall) Filter(filter string) *SubnetworksListCall { c.urlParams_.Set("filter", filter) return c @@ -83500,7 +86360,7 @@ func (c *SubnetworksListCall) Do(opts ...googleapi.CallOption) (*SubnetworkList, // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -83571,6 +86431,253 @@ func (c *SubnetworksListCall) Pages(ctx context.Context, f func(*SubnetworkList) } } +// method id "compute.subnetworks.listUsable": + +type SubnetworksListUsableCall struct { + s *Service + project string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// ListUsable: Retrieves an aggregated list of usable subnetworks. +func (r *SubnetworksService) ListUsable(project string) *SubnetworksListUsableCall { + c := &SubnetworksListUsableCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.project = project + return c +} + +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. +// +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. +// +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. +// +// To filter on multiple expressions, provide each separate expression +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). +func (c *SubnetworksListUsableCall) Filter(filter string) *SubnetworksListUsableCall { + c.urlParams_.Set("filter", filter) + return c +} + +// MaxResults sets the optional parameter "maxResults": The maximum +// number of results per page that should be returned. If the number of +// available results is larger than maxResults, Compute Engine returns a +// nextPageToken that can be used to get the next page of results in +// subsequent list requests. Acceptable values are 0 to 500, inclusive. +// (Default: 500) +func (c *SubnetworksListUsableCall) MaxResults(maxResults int64) *SubnetworksListUsableCall { + c.urlParams_.Set("maxResults", fmt.Sprint(maxResults)) + return c +} + +// OrderBy sets the optional parameter "orderBy": Sorts list results by +// a certain order. By default, results are returned in alphanumerical +// order based on the resource name. +// +// You can also sort results in descending order based on the creation +// timestamp using orderBy="creationTimestamp desc". This sorts results +// based on the creationTimestamp field in reverse chronological order +// (newest result first). Use this to sort resources like operations so +// that the newest operation is returned first. +// +// Currently, only sorting by name or creationTimestamp desc is +// supported. +func (c *SubnetworksListUsableCall) OrderBy(orderBy string) *SubnetworksListUsableCall { + c.urlParams_.Set("orderBy", orderBy) + return c +} + +// PageToken sets the optional parameter "pageToken": Specifies a page +// token to use. Set pageToken to the nextPageToken returned by a +// previous list request to get the next page of results. +func (c *SubnetworksListUsableCall) PageToken(pageToken string) *SubnetworksListUsableCall { + c.urlParams_.Set("pageToken", pageToken) + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *SubnetworksListUsableCall) Fields(s ...googleapi.Field) *SubnetworksListUsableCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// IfNoneMatch sets the optional parameter which makes the operation +// fail if the object's ETag matches the given value. This is useful for +// getting updates only after the object has changed since the last +// request. Use googleapi.IsNotModified to check whether the response +// error from Do is the result of In-None-Match. +func (c *SubnetworksListUsableCall) IfNoneMatch(entityTag string) *SubnetworksListUsableCall { + c.ifNoneMatch_ = entityTag + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *SubnetworksListUsableCall) Context(ctx context.Context) *SubnetworksListUsableCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *SubnetworksListUsableCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *SubnetworksListUsableCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + if c.ifNoneMatch_ != "" { + reqHeaders.Set("If-None-Match", c.ifNoneMatch_) + } + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "{project}/aggregated/subnetworks/listUsable") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("GET", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "project": c.project, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "compute.subnetworks.listUsable" call. +// Exactly one of *UsableSubnetworksAggregatedList or error will be +// non-nil. Any non-2xx status code is an error. Response headers are in +// either *UsableSubnetworksAggregatedList.ServerResponse.Header or (if +// a response was returned at all) in error.(*googleapi.Error).Header. +// Use googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *SubnetworksListUsableCall) Do(opts ...googleapi.CallOption) (*UsableSubnetworksAggregatedList, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &UsableSubnetworksAggregatedList{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Retrieves an aggregated list of usable subnetworks.", + // "httpMethod": "GET", + // "id": "compute.subnetworks.listUsable", + // "parameterOrder": [ + // "project" + // ], + // "parameters": { + // "filter": { + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + // "location": "query", + // "type": "string" + // }, + // "maxResults": { + // "default": "500", + // "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + // "format": "uint32", + // "location": "query", + // "minimum": "0", + // "type": "integer" + // }, + // "orderBy": { + // "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + // "location": "query", + // "type": "string" + // }, + // "pageToken": { + // "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + // "location": "query", + // "type": "string" + // }, + // "project": { + // "description": "Project ID for this request.", + // "location": "path", + // "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + // "required": true, + // "type": "string" + // } + // }, + // "path": "{project}/aggregated/subnetworks/listUsable", + // "response": { + // "$ref": "UsableSubnetworksAggregatedList" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform", + // "https://www.googleapis.com/auth/compute", + // "https://www.googleapis.com/auth/compute.readonly" + // ] + // } + +} + +// Pages invokes f for each page of results. +// A non-nil error returned from f will halt the iteration. +// The provided context supersedes any context provided to the Context method. +func (c *SubnetworksListUsableCall) Pages(ctx context.Context, f func(*UsableSubnetworksAggregatedList) error) error { + c.ctx_ = ctx + defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point + for { + x, err := c.Do() + if err != nil { + return err + } + if err := f(x); err != nil { + return err + } + if x.NextPageToken == "" { + return nil + } + c.PageToken(x.NextPageToken) + } +} + // method id "compute.subnetworks.patch": type SubnetworksPatchCall struct { @@ -83586,9 +86693,10 @@ type SubnetworksPatchCall struct { // Patch: Patches the specified subnetwork with the data included in the // request. Only the following fields within the subnetwork resource can -// be specified in the request: secondary_ip_range and -// allow_subnet_cidr_routes_overlap. It is also mandatory to specify the -// current fingeprint of the subnetwork resource being patched. +// be specified in the request: secondary_ip_range, +// allow_subnet_cidr_routes_overlap and role. It is also mandatory to +// specify the current fingeprint of the subnetwork resource being +// patched. func (r *SubnetworksService) Patch(project string, region string, subnetwork string, subnetwork2 *Subnetwork) *SubnetworksPatchCall { c := &SubnetworksPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.project = project @@ -83705,7 +86813,7 @@ func (c *SubnetworksPatchCall) Do(opts ...googleapi.CallOption) (*Operation, err } return ret, nil // { - // "description": "Patches the specified subnetwork with the data included in the request. Only the following fields within the subnetwork resource can be specified in the request: secondary_ip_range and allow_subnet_cidr_routes_overlap. It is also mandatory to specify the current fingeprint of the subnetwork resource being patched.", + // "description": "Patches the specified subnetwork with the data included in the request. Only the following fields within the subnetwork resource can be specified in the request: secondary_ip_range, allow_subnet_cidr_routes_overlap and role. It is also mandatory to specify the current fingeprint of the subnetwork resource being patched.", // "httpMethod": "PATCH", // "id": "compute.subnetworks.patch", // "parameterOrder": [ @@ -84751,32 +87859,28 @@ func (r *TargetHttpProxiesService) List(project string) *TargetHttpProxiesListCa return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *TargetHttpProxiesListCall) Filter(filter string) *TargetHttpProxiesListCall { c.urlParams_.Set("filter", filter) return c @@ -84920,7 +88024,7 @@ func (c *TargetHttpProxiesListCall) Do(opts ...googleapi.CallOption) (*TargetHtt // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -85794,32 +88898,28 @@ func (r *TargetHttpsProxiesService) List(project string) *TargetHttpsProxiesList return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *TargetHttpsProxiesListCall) Filter(filter string) *TargetHttpsProxiesListCall { c.urlParams_.Set("filter", filter) return c @@ -85963,7 +89063,7 @@ func (c *TargetHttpsProxiesListCall) Do(opts ...googleapi.CallOption) (*TargetHt // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -86876,32 +89976,28 @@ func (r *TargetInstancesService) AggregatedList(project string) *TargetInstances return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *TargetInstancesAggregatedListCall) Filter(filter string) *TargetInstancesAggregatedListCall { c.urlParams_.Set("filter", filter) return c @@ -87045,7 +90141,7 @@ func (c *TargetInstancesAggregatedListCall) Do(opts ...googleapi.CallOption) (*T // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -87639,32 +90735,28 @@ func (r *TargetInstancesService) List(project string, zone string) *TargetInstan return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *TargetInstancesListCall) Filter(filter string) *TargetInstancesListCall { c.urlParams_.Set("filter", filter) return c @@ -87810,7 +90902,7 @@ func (c *TargetInstancesListCall) Do(opts ...googleapi.CallOption) (*TargetInsta // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -88423,32 +91515,28 @@ func (r *TargetPoolsService) AggregatedList(project string) *TargetPoolsAggregat return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *TargetPoolsAggregatedListCall) Filter(filter string) *TargetPoolsAggregatedListCall { c.urlParams_.Set("filter", filter) return c @@ -88592,7 +91680,7 @@ func (c *TargetPoolsAggregatedListCall) Do(opts ...googleapi.CallOption) (*Targe // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -89346,32 +92434,28 @@ func (r *TargetPoolsService) List(project string, region string) *TargetPoolsLis return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *TargetPoolsListCall) Filter(filter string) *TargetPoolsListCall { c.urlParams_.Set("filter", filter) return c @@ -89517,7 +92601,7 @@ func (c *TargetPoolsListCall) Do(opts ...googleapi.CallOption) (*TargetPoolList, // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -90797,32 +93881,28 @@ func (r *TargetSslProxiesService) List(project string) *TargetSslProxiesListCall return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *TargetSslProxiesListCall) Filter(filter string) *TargetSslProxiesListCall { c.urlParams_.Set("filter", filter) return c @@ -90966,7 +94046,7 @@ func (c *TargetSslProxiesListCall) Do(opts ...googleapi.CallOption) (*TargetSslP // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -92351,32 +95431,28 @@ func (r *TargetTcpProxiesService) List(project string) *TargetTcpProxiesListCall return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *TargetTcpProxiesListCall) Filter(filter string) *TargetTcpProxiesListCall { c.urlParams_.Set("filter", filter) return c @@ -92520,7 +95596,7 @@ func (c *TargetTcpProxiesListCall) Do(opts ...googleapi.CallOption) (*TargetTcpP // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -92942,32 +96018,28 @@ func (r *TargetVpnGatewaysService) AggregatedList(project string) *TargetVpnGate return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *TargetVpnGatewaysAggregatedListCall) Filter(filter string) *TargetVpnGatewaysAggregatedListCall { c.urlParams_.Set("filter", filter) return c @@ -93111,7 +96183,7 @@ func (c *TargetVpnGatewaysAggregatedListCall) Do(opts ...googleapi.CallOption) ( // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -93701,32 +96773,28 @@ func (r *TargetVpnGatewaysService) List(project string, region string) *TargetVp return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *TargetVpnGatewaysListCall) Filter(filter string) *TargetVpnGatewaysListCall { c.urlParams_.Set("filter", filter) return c @@ -93872,7 +96940,7 @@ func (c *TargetVpnGatewaysListCall) Do(opts ...googleapi.CallOption) (*TargetVpn // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -94950,32 +98018,28 @@ func (r *UrlMapsService) List(project string) *UrlMapsListCall { return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *UrlMapsListCall) Filter(filter string) *UrlMapsListCall { c.urlParams_.Set("filter", filter) return c @@ -95119,7 +98183,7 @@ func (c *UrlMapsListCall) Do(opts ...googleapi.CallOption) (*UrlMapList, error) // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -95843,32 +98907,28 @@ func (r *VpnTunnelsService) AggregatedList(project string) *VpnTunnelsAggregated return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *VpnTunnelsAggregatedListCall) Filter(filter string) *VpnTunnelsAggregatedListCall { c.urlParams_.Set("filter", filter) return c @@ -96012,7 +99072,7 @@ func (c *VpnTunnelsAggregatedListCall) Do(opts ...googleapi.CallOption) (*VpnTun // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -96602,32 +99662,28 @@ func (r *VpnTunnelsService) List(project string, region string) *VpnTunnelsListC return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *VpnTunnelsListCall) Filter(filter string) *VpnTunnelsListCall { c.urlParams_.Set("filter", filter) return c @@ -96773,7 +99829,7 @@ func (c *VpnTunnelsListCall) Do(opts ...googleapi.CallOption) (*VpnTunnelList, e // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -97490,32 +100546,28 @@ func (r *ZoneOperationsService) List(project string, zone string) *ZoneOperation return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *ZoneOperationsListCall) Filter(filter string) *ZoneOperationsListCall { c.urlParams_.Set("filter", filter) return c @@ -97661,7 +100713,7 @@ func (c *ZoneOperationsListCall) Do(opts ...googleapi.CallOption) (*OperationLis // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -97905,32 +100957,28 @@ func (r *ZonesService) List(project string) *ZonesListCall { return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *ZonesListCall) Filter(filter string) *ZonesListCall { c.urlParams_.Set("filter", filter) return c @@ -98074,7 +101122,7 @@ func (c *ZonesListCall) Do(opts ...googleapi.CallOption) (*ZoneList, error) { // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, diff --git a/vendor/google.golang.org/api/compute/v1/compute-api.json b/vendor/google.golang.org/api/compute/v1/compute-api.json index d5409179a..d4a1fe962 100644 --- a/vendor/google.golang.org/api/compute/v1/compute-api.json +++ b/vendor/google.golang.org/api/compute/v1/compute-api.json @@ -1,29143 +1,30783 @@ { - "kind": "discovery#restDescription", - "etag": "\"-iA1DTNe4s-I6JZXPt1t1Ypy8IU/yYKGGymxCOlXess_DWUNkE4vOp4\"", - "discoveryVersion": "v1", - "id": "compute:v1", - "name": "compute", - "version": "v1", - "revision": "20171228", - "title": "Compute Engine API", - "description": "Creates and runs virtual machines on Google Cloud Platform.", - "ownerDomain": "google.com", - "ownerName": "Google", - "icons": { - "x16": "https://www.google.com/images/icons/product/compute_engine-16.png", - "x32": "https://www.google.com/images/icons/product/compute_engine-32.png" - }, - "documentationLink": "https://developers.google.com/compute/docs/reference/latest/", - "protocol": "rest", - "baseUrl": "https://www.googleapis.com/compute/v1/projects/", - "basePath": "/compute/v1/projects/", - "rootUrl": "https://www.googleapis.com/", - "servicePath": "compute/v1/projects/", - "batchPath": "batch/compute/v1", - "parameters": { - "alt": { - "type": "string", - "description": "Data format for the response.", - "default": "json", - "enum": [ - "json" - ], - "enumDescriptions": [ - "Responses with Content-Type of application/json" - ], - "location": "query" - }, - "fields": { - "type": "string", - "description": "Selector specifying which fields to include in a partial response.", - "location": "query" - }, - "key": { - "type": "string", - "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" - }, - "oauth_token": { - "type": "string", - "description": "OAuth 2.0 token for the current user.", - "location": "query" - }, - "prettyPrint": { - "type": "boolean", - "description": "Returns response with indentations and line breaks.", - "default": "true", - "location": "query" - }, - "quotaUser": { - "type": "string", - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", - "location": "query" - }, - "userIp": { - "type": "string", - "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", - "location": "query" - } - }, - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/cloud-platform": { - "description": "View and manage your data across Google Cloud Platform services" - }, - "https://www.googleapis.com/auth/compute": { - "description": "View and manage your Google Compute Engine resources" - }, - "https://www.googleapis.com/auth/compute.readonly": { - "description": "View your Google Compute Engine resources" - }, - "https://www.googleapis.com/auth/devstorage.full_control": { - "description": "Manage your data and permissions in Google Cloud Storage" - }, - "https://www.googleapis.com/auth/devstorage.read_only": { - "description": "View your data in Google Cloud Storage" - }, - "https://www.googleapis.com/auth/devstorage.read_write": { - "description": "Manage your data in Google Cloud Storage" - } - } - } - }, - "schemas": { - "AcceleratorConfig": { - "id": "AcceleratorConfig", - "type": "object", - "description": "A specification of the type and number of accelerator cards attached to the instance.", - "properties": { - "acceleratorCount": { - "type": "integer", - "description": "The number of the guest accelerator cards exposed to this instance.", - "format": "int32" - }, - "acceleratorType": { - "type": "string", - "description": "Full or partial URL of the accelerator type resource to attach to this instance. If you are creating an instance template, specify only the accelerator name." - } - } - }, - "AcceleratorType": { - "id": "AcceleratorType", - "type": "object", - "description": "An Accelerator Type resource. (== resource_for beta.acceleratorTypes ==) (== resource_for v1.acceleratorTypes ==)", - "properties": { - "creationTimestamp": { - "type": "string", - "description": "[Output Only] Creation timestamp in RFC3339 text format." - }, - "deprecated": { - "$ref": "DeprecationStatus", - "description": "[Output Only] The deprecation status associated with this accelerator type." - }, - "description": { - "type": "string", - "description": "[Output Only] An optional textual description of the resource." - }, - "id": { - "type": "string", - "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", - "format": "uint64" - }, - "kind": { - "type": "string", - "description": "[Output Only] The type of the resource. Always compute#acceleratorType for accelerator types.", - "default": "compute#acceleratorType" - }, - "maximumCardsPerInstance": { - "type": "integer", - "description": "[Output Only] Maximum accelerator cards allowed per instance.", - "format": "int32" - }, - "name": { - "type": "string", - "description": "[Output Only] Name of the resource.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined fully-qualified URL for this resource." - }, - "zone": { - "type": "string", - "description": "[Output Only] The name of the zone where the accelerator type resides, such as us-central1-a." - } - } - }, - "AcceleratorTypeAggregatedList": { - "id": "AcceleratorTypeAggregatedList", - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "object", - "description": "A list of AcceleratorTypesScopedList resources.", - "additionalProperties": { - "$ref": "AcceleratorTypesScopedList", - "description": "[Output Only] Name of the scope containing this set of accelerator types." - } - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#acceleratorTypeAggregatedList for aggregated lists of accelerator types.", - "default": "compute#acceleratorTypeAggregatedList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/cloud-platform": { + "description": "View and manage your data across Google Cloud Platform services" + }, + "https://www.googleapis.com/auth/compute": { + "description": "View and manage your Google Compute Engine resources" + }, + "https://www.googleapis.com/auth/compute.readonly": { + "description": "View your Google Compute Engine resources" + }, + "https://www.googleapis.com/auth/devstorage.full_control": { + "description": "Manage your data and permissions in Google Cloud Storage" + }, + "https://www.googleapis.com/auth/devstorage.read_only": { + "description": "View your data in Google Cloud Storage" + }, + "https://www.googleapis.com/auth/devstorage.read_write": { + "description": "Manage your data in Google Cloud Storage" } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." } - } } - } }, - "AcceleratorTypeList": { - "id": "AcceleratorTypeList", - "type": "object", - "description": "Contains a list of accelerator types.", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." + "basePath": "/compute/v1/projects/", + "baseUrl": "https://www.googleapis.com/compute/v1/projects/", + "batchPath": "batch/compute/v1", + "description": "Creates and runs virtual machines on Google Cloud Platform.", + "discoveryVersion": "v1", + "documentationLink": "https://developers.google.com/compute/docs/reference/latest/", + "etag": "\"-iA1DTNe4s-I6JZXPt1t1Ypy8IU/Gatpcf2w8Sp4sZBOa8DIZmgUmI8\"", + "icons": { + "x16": "https://www.google.com/images/icons/product/compute_engine-16.png", + "x32": "https://www.google.com/images/icons/product/compute_engine-32.png" + }, + "id": "compute:v1", + "kind": "discovery#restDescription", + "name": "compute", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "alt": { + "default": "json", + "description": "Data format for the response.", + "enum": [ + "json" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json" + ], + "location": "query", + "type": "string" }, - "items": { - "type": "array", - "description": "A list of AcceleratorType resources.", - "items": { - "$ref": "AcceleratorType" - } + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "location": "query", + "type": "string" }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#acceleratorTypeList for lists of accelerator types.", - "default": "compute#acceleratorTypeList" + "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" }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", + "location": "query", + "type": "string" + }, + "userIp": { + "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", + "location": "query", + "type": "string" } - } }, - "AcceleratorTypesScopedList": { - "id": "AcceleratorTypesScopedList", - "type": "object", - "properties": { + "protocol": "rest", + "resources": { "acceleratorTypes": { - "type": "array", - "description": "[Output Only] List of accelerator types contained in this scope.", - "items": { - "$ref": "AcceleratorType" - } - }, - "warning": { - "type": "object", - "description": "[Output Only] An informational warning that appears when the accelerator types list is empty.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } + "methods": { + "aggregatedList": { + "description": "Retrieves an aggregated list of accelerator types.", + "httpMethod": "GET", + "id": "compute.acceleratorTypes.aggregatedList", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/aggregated/acceleratorTypes", + "response": { + "$ref": "AcceleratorTypeAggregatedList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "get": { + "description": "Returns the specified accelerator type. Get a list of available accelerator types by making a list() request.", + "httpMethod": "GET", + "id": "compute.acceleratorTypes.get", + "parameterOrder": [ + "project", + "zone", + "acceleratorType" + ], + "parameters": { + "acceleratorType": { + "description": "Name of the accelerator type to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/acceleratorTypes/{acceleratorType}", + "response": { + "$ref": "AcceleratorType" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "list": { + "description": "Retrieves a list of accelerator types available to the specified project.", + "httpMethod": "GET", + "id": "compute.acceleratorTypes.list", + "parameterOrder": [ + "project", + "zone" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/acceleratorTypes", + "response": { + "$ref": "AcceleratorTypeList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." } - } - } - } - }, - "AccessConfig": { - "id": "AccessConfig", - "type": "object", - "description": "An access configuration attached to an instance's network interface. Only one access config per instance is supported.", - "properties": { - "kind": { - "type": "string", - "description": "[Output Only] Type of the resource. Always compute#accessConfig for access configs.", - "default": "compute#accessConfig" }, - "name": { - "type": "string", - "description": "The name of this access configuration. The default and recommended name is External NAT but you can use any arbitrary string you would like. For example, My external IP or Network Access." - }, - "natIP": { - "type": "string", - "description": "An external IP address associated with this instance. Specify an unused static external IP address available to the project or leave this field undefined to use an IP from a shared ephemeral IP address pool. If you specify a static external IP address, it must live in the same region as the zone of the instance." - }, - "type": { - "type": "string", - "description": "The type of configuration. The default and only option is ONE_TO_ONE_NAT.", - "default": "ONE_TO_ONE_NAT", - "enum": [ - "ONE_TO_ONE_NAT" - ], - "enumDescriptions": [ - "" - ] - } - } - }, - "Address": { - "id": "Address", - "type": "object", - "description": "A reserved address resource. (== resource_for beta.addresses ==) (== resource_for v1.addresses ==) (== resource_for beta.globalAddresses ==) (== resource_for v1.globalAddresses ==)", - "properties": { - "address": { - "type": "string", - "description": "The static IP address represented by this resource." - }, - "addressType": { - "type": "string", - "description": "The type of address to reserve, either INTERNAL or EXTERNAL. If unspecified, defaults to EXTERNAL.", - "enum": [ - "EXTERNAL", - "INTERNAL", - "UNSPECIFIED_TYPE" - ], - "enumDescriptions": [ - "", - "", - "" - ] - }, - "creationTimestamp": { - "type": "string", - "description": "[Output Only] Creation timestamp in RFC3339 text format." - }, - "description": { - "type": "string", - "description": "An optional description of this resource. Provide this property when you create the resource." - }, - "id": { - "type": "string", - "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", - "format": "uint64" - }, - "ipVersion": { - "type": "string", - "description": "The IP Version that will be used by this address. Valid options are IPV4 or IPV6. This can only be specified for a global address.", - "enum": [ - "IPV4", - "IPV6", - "UNSPECIFIED_VERSION" - ], - "enumDescriptions": [ - "", - "", - "" - ] - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of the resource. Always compute#address for addresses.", - "default": "compute#address" - }, - "name": { - "type": "string", - "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "annotations": { - "required": [ - "compute.addresses.insert" - ] - } - }, - "region": { - "type": "string", - "description": "[Output Only] URL of the region where the regional address resides. This field is not applicable to global addresses." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for the resource." - }, - "status": { - "type": "string", - "description": "[Output Only] The status of the address, which can be one of RESERVING, RESERVED, or IN_USE. An address that is RESERVING is currently in the process of being reserved. A RESERVED address is currently reserved and available to use. An IN_USE address is currently being used by another resource and is not available.", - "enum": [ - "IN_USE", - "RESERVED" - ], - "enumDescriptions": [ - "", - "" - ] - }, - "subnetwork": { - "type": "string", - "description": "The URL of the subnetwork in which to reserve the address. If an IP address is specified, it must be within the subnetwork's IP range. This field can only be used with INTERNAL type with GCE_ENDPOINT/DNS_RESOLVER purposes." - }, - "users": { - "type": "array", - "description": "[Output Only] The URLs of the resources that are using this address.", - "items": { - "type": "string" - } - } - } - }, - "AddressAggregatedList": { - "id": "AddressAggregatedList", - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "object", - "description": "A list of AddressesScopedList resources.", - "additionalProperties": { - "$ref": "AddressesScopedList", - "description": "[Output Only] Name of the scope containing this set of addresses." - } - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#addressAggregatedList for aggregated lists of addresses.", - "default": "compute#addressAggregatedList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "AddressList": { - "id": "AddressList", - "type": "object", - "description": "Contains a list of addresses.", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "array", - "description": "A list of Address resources.", - "items": { - "$ref": "Address" - } - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#addressList for lists of addresses.", - "default": "compute#addressList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "AddressesScopedList": { - "id": "AddressesScopedList", - "type": "object", - "properties": { "addresses": { - "type": "array", - "description": "[Output Only] List of addresses contained in this scope.", - "items": { - "$ref": "Address" - } - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning which replaces the list of addresses when the list is empty.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } + "methods": { + "aggregatedList": { + "description": "Retrieves an aggregated list of addresses.", + "httpMethod": "GET", + "id": "compute.addresses.aggregatedList", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/aggregated/addresses", + "response": { + "$ref": "AddressAggregatedList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "delete": { + "description": "Deletes the specified address resource.", + "httpMethod": "DELETE", + "id": "compute.addresses.delete", + "parameterOrder": [ + "project", + "region", + "address" + ], + "parameters": { + "address": { + "description": "Name of the address resource to delete.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/regions/{region}/addresses/{address}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Returns the specified address resource.", + "httpMethod": "GET", + "id": "compute.addresses.get", + "parameterOrder": [ + "project", + "region", + "address" + ], + "parameters": { + "address": { + "description": "Name of the address resource to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/addresses/{address}", + "response": { + "$ref": "Address" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "description": "Creates an address resource in the specified project using the data included in the request.", + "httpMethod": "POST", + "id": "compute.addresses.insert", + "parameterOrder": [ + "project", + "region" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/regions/{region}/addresses", + "request": { + "$ref": "Address" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "description": "Retrieves a list of addresses contained within the specified region.", + "httpMethod": "GET", + "id": "compute.addresses.list", + "parameterOrder": [ + "project", + "region" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/addresses", + "response": { + "$ref": "AddressList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." } - } - } - } - }, - "AliasIpRange": { - "id": "AliasIpRange", - "type": "object", - "description": "An alias IP range attached to an instance's network interface.", - "properties": { - "ipCidrRange": { - "type": "string", - "description": "The IP CIDR range represented by this alias IP range. This IP CIDR range must belong to the specified subnetwork and cannot contain IP addresses reserved by system or used by other network interfaces. This range may be a single IP address (e.g. 10.2.3.4), a netmask (e.g. /24) or a CIDR format string (e.g. 10.1.2.0/24)." }, - "subnetworkRangeName": { - "type": "string", - "description": "Optional subnetwork secondary range name specifying the secondary range from which to allocate the IP CIDR range for this alias IP range. If left unspecified, the primary range of the subnetwork will be used." - } - } - }, - "AttachedDisk": { - "id": "AttachedDisk", - "type": "object", - "description": "An instance-attached disk resource.", - "properties": { - "autoDelete": { - "type": "boolean", - "description": "Specifies whether the disk will be auto-deleted when the instance is deleted (but not when the disk is detached from the instance)." - }, - "boot": { - "type": "boolean", - "description": "Indicates that this is a boot disk. The virtual machine will use the first partition of the disk for its root filesystem." - }, - "deviceName": { - "type": "string", - "description": "Specifies a unique device name of your choice that is reflected into the /dev/disk/by-id/google-* tree of a Linux operating system running within the instance. This name can be used to reference the device for mounting, resizing, and so on, from within the instance.\n\nIf not specified, the server chooses a default device name to apply to this disk, in the form persistent-disks-x, where x is a number assigned by Google Compute Engine. This field is only applicable for persistent disks." - }, - "diskEncryptionKey": { - "$ref": "CustomerEncryptionKey", - "description": "Encrypts or decrypts a disk using a customer-supplied encryption key.\n\nIf you are creating a new disk, this field encrypts the new disk using an encryption key that you provide. If you are attaching an existing disk that is already encrypted, this field decrypts the disk using the customer-supplied encryption key.\n\nIf you encrypt a disk using a customer-supplied key, you must provide the same key again when you attempt to use this resource at a later time. For example, you must provide the key when you create a snapshot or an image from the disk or when you attach the disk to a virtual machine instance.\n\nIf you do not provide an encryption key, then the disk will be encrypted using an automatically generated key and you do not need to provide a key to use the disk later.\n\nInstance templates do not store customer-supplied encryption keys, so you cannot use your own keys to encrypt disks in a managed instance group." - }, - "index": { - "type": "integer", - "description": "[Output Only] A zero-based index to this disk, where 0 is reserved for the boot disk. If you have many disks attached to an instance, each disk would have a unique index number.", - "format": "int32" - }, - "initializeParams": { - "$ref": "AttachedDiskInitializeParams", - "description": "[Input Only] Specifies the parameters for a new disk that will be created alongside the new instance. Use initialization parameters to create boot disks or local SSDs attached to the new instance.\n\nThis property is mutually exclusive with the source property; you can only define one or the other, but not both." - }, - "interface": { - "type": "string", - "description": "Specifies the disk interface to use for attaching this disk, which is either SCSI or NVME. The default is SCSI. Persistent disks must always use SCSI and the request will fail if you attempt to attach a persistent disk in any other format than SCSI. Local SSDs can use either NVME or SCSI. For performance characteristics of SCSI over NVMe, see Local SSD performance.", - "enum": [ - "NVME", - "SCSI" - ], - "enumDescriptions": [ - "", - "" - ] - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of the resource. Always compute#attachedDisk for attached disks.", - "default": "compute#attachedDisk" - }, - "licenses": { - "type": "array", - "description": "[Output Only] Any valid publicly visible licenses.", - "items": { - "type": "string" - } - }, - "mode": { - "type": "string", - "description": "The mode in which to attach this disk, either READ_WRITE or READ_ONLY. If not specified, the default is to attach the disk in READ_WRITE mode.", - "enum": [ - "READ_ONLY", - "READ_WRITE" - ], - "enumDescriptions": [ - "", - "" - ] - }, - "source": { - "type": "string", - "description": "Specifies a valid partial or full URL to an existing Persistent Disk resource. When creating a new instance, one of initializeParams.sourceImage or disks.source is required except for local SSD.\n\nIf desired, you can also attach existing non-root persistent disks using this property. This field is only applicable for persistent disks.\n\nNote that for InstanceTemplate, specify the disk name, not the URL for the disk." - }, - "type": { - "type": "string", - "description": "Specifies the type of the disk, either SCRATCH or PERSISTENT. If not specified, the default is PERSISTENT.", - "enum": [ - "PERSISTENT", - "SCRATCH" - ], - "enumDescriptions": [ - "", - "" - ] - } - } - }, - "AttachedDiskInitializeParams": { - "id": "AttachedDiskInitializeParams", - "type": "object", - "description": "[Input Only] Specifies the parameters for a new disk that will be created alongside the new instance. Use initialization parameters to create boot disks or local SSDs attached to the new instance.\n\nThis property is mutually exclusive with the source property; you can only define one or the other, but not both.", - "properties": { - "diskName": { - "type": "string", - "description": "Specifies the disk name. If not specified, the default is to use the name of the instance." - }, - "diskSizeGb": { - "type": "string", - "description": "Specifies the size of the disk in base-2 GB.", - "format": "int64" - }, - "diskType": { - "type": "string", - "description": "Specifies the disk type to use to create the instance. If not specified, the default is pd-standard, specified using the full URL. For example:\n\nhttps://www.googleapis.com/compute/v1/projects/project/zones/zone/diskTypes/pd-standard \n\nOther values include pd-ssd and local-ssd. If you define this field, you can provide either the full or partial URL. For example, the following are valid values: \n- https://www.googleapis.com/compute/v1/projects/project/zones/zone/diskTypes/diskType \n- projects/project/zones/zone/diskTypes/diskType \n- zones/zone/diskTypes/diskType Note that for InstanceTemplate, this is the name of the disk type, not URL." - }, - "labels": { - "type": "object", - "description": "Labels to apply to this disk. These can be later modified by the disks.setLabels method. This field is only applicable for persistent disks.", - "additionalProperties": { - "type": "string" - } - }, - "sourceImage": { - "type": "string", - "description": "The source image to create this disk. When creating a new instance, one of initializeParams.sourceImage or disks.source is required except for local SSD.\n\nTo create a disk with one of the public operating system images, specify the image by its family name. For example, specify family/debian-8 to use the latest Debian 8 image:\n\nprojects/debian-cloud/global/images/family/debian-8 \n\nAlternatively, use a specific version of a public operating system image:\n\nprojects/debian-cloud/global/images/debian-8-jessie-vYYYYMMDD \n\nTo create a disk with a custom image that you created, specify the image name in the following format:\n\nglobal/images/my-custom-image \n\nYou can also specify a custom image by its image family, which returns the latest version of the image in that family. Replace the image name with family/family-name:\n\nglobal/images/family/my-image-family \n\nIf the source image is deleted later, this field will not be set." - }, - "sourceImageEncryptionKey": { - "$ref": "CustomerEncryptionKey", - "description": "The customer-supplied encryption key of the source image. Required if the source image is protected by a customer-supplied encryption key.\n\nInstance templates do not store customer-supplied encryption keys, so you cannot create disks for instances in a managed instance group if the source images are encrypted with your own keys." - } - } - }, - "Autoscaler": { - "id": "Autoscaler", - "type": "object", - "description": "Represents an Autoscaler resource. Autoscalers allow you to automatically scale virtual machine instances in managed instance groups according to an autoscaling policy that you define. For more information, read Autoscaling Groups of Instances. (== resource_for beta.autoscalers ==) (== resource_for v1.autoscalers ==) (== resource_for beta.regionAutoscalers ==) (== resource_for v1.regionAutoscalers ==)", - "properties": { - "autoscalingPolicy": { - "$ref": "AutoscalingPolicy", - "description": "The configuration parameters for the autoscaling algorithm. You can define one or more of the policies for an autoscaler: cpuUtilization, customMetricUtilizations, and loadBalancingUtilization.\n\nIf none of these are specified, the default will be to autoscale based on cpuUtilization to 0.6 or 60%." - }, - "creationTimestamp": { - "type": "string", - "description": "[Output Only] Creation timestamp in RFC3339 text format." - }, - "description": { - "type": "string", - "description": "An optional description of this resource. Provide this property when you create the resource." - }, - "id": { - "type": "string", - "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", - "format": "uint64" - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of the resource. Always compute#autoscaler for autoscalers.", - "default": "compute#autoscaler" - }, - "name": { - "type": "string", - "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "annotations": { - "required": [ - "compute.instanceGroups.insert" - ] - } - }, - "region": { - "type": "string", - "description": "[Output Only] URL of the region where the instance group resides (for autoscalers living in regional scope)." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for the resource." - }, - "status": { - "type": "string", - "description": "[Output Only] The status of the autoscaler configuration.", - "enum": [ - "ACTIVE", - "DELETING", - "ERROR", - "PENDING" - ], - "enumDescriptions": [ - "", - "", - "", - "" - ] - }, - "statusDetails": { - "type": "array", - "description": "[Output Only] Human-readable details about the current state of the autoscaler. Read the documentation for Commonly returned status messages for examples of status messages you might encounter.", - "items": { - "$ref": "AutoscalerStatusDetails" - } - }, - "target": { - "type": "string", - "description": "URL of the managed instance group that this autoscaler will scale." - }, - "zone": { - "type": "string", - "description": "[Output Only] URL of the zone where the instance group resides (for autoscalers living in zonal scope)." - } - } - }, - "AutoscalerAggregatedList": { - "id": "AutoscalerAggregatedList", - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "object", - "description": "A list of AutoscalersScopedList resources.", - "additionalProperties": { - "$ref": "AutoscalersScopedList", - "description": "[Output Only] Name of the scope containing this set of autoscalers." - } - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#autoscalerAggregatedList for aggregated lists of autoscalers.", - "default": "compute#autoscalerAggregatedList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "AutoscalerList": { - "id": "AutoscalerList", - "type": "object", - "description": "Contains a list of Autoscaler resources.", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "array", - "description": "A list of Autoscaler resources.", - "items": { - "$ref": "Autoscaler" - } - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#autoscalerList for lists of autoscalers.", - "default": "compute#autoscalerList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "AutoscalerStatusDetails": { - "id": "AutoscalerStatusDetails", - "type": "object", - "properties": { - "message": { - "type": "string", - "description": "The status message." - }, - "type": { - "type": "string", - "description": "The type of error returned.", - "enum": [ - "ALL_INSTANCES_UNHEALTHY", - "BACKEND_SERVICE_DOES_NOT_EXIST", - "CAPPED_AT_MAX_NUM_REPLICAS", - "CUSTOM_METRIC_DATA_POINTS_TOO_SPARSE", - "CUSTOM_METRIC_INVALID", - "MIN_EQUALS_MAX", - "MISSING_CUSTOM_METRIC_DATA_POINTS", - "MISSING_LOAD_BALANCING_DATA_POINTS", - "MORE_THAN_ONE_BACKEND_SERVICE", - "NOT_ENOUGH_QUOTA_AVAILABLE", - "REGION_RESOURCE_STOCKOUT", - "SCALING_TARGET_DOES_NOT_EXIST", - "UNKNOWN", - "UNSUPPORTED_MAX_RATE_LOAD_BALANCING_CONFIGURATION", - "ZONE_RESOURCE_STOCKOUT" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - } - } - }, - "AutoscalersScopedList": { - "id": "AutoscalersScopedList", - "type": "object", - "properties": { "autoscalers": { - "type": "array", - "description": "[Output Only] List of autoscalers contained in this scope.", - "items": { - "$ref": "Autoscaler" - } - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning which replaces the list of autoscalers when the list is empty.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } + "methods": { + "aggregatedList": { + "description": "Retrieves an aggregated list of autoscalers.", + "httpMethod": "GET", + "id": "compute.autoscalers.aggregatedList", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/aggregated/autoscalers", + "response": { + "$ref": "AutoscalerAggregatedList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "delete": { + "description": "Deletes the specified autoscaler.", + "httpMethod": "DELETE", + "id": "compute.autoscalers.delete", + "parameterOrder": [ + "project", + "zone", + "autoscaler" + ], + "parameters": { + "autoscaler": { + "description": "Name of the autoscaler to delete.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "Name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/autoscalers/{autoscaler}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Returns the specified autoscaler resource. Get a list of available autoscalers by making a list() request.", + "httpMethod": "GET", + "id": "compute.autoscalers.get", + "parameterOrder": [ + "project", + "zone", + "autoscaler" + ], + "parameters": { + "autoscaler": { + "description": "Name of the autoscaler to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "zone": { + "description": "Name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/autoscalers/{autoscaler}", + "response": { + "$ref": "Autoscaler" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "description": "Creates an autoscaler in the specified project using the data included in the request.", + "httpMethod": "POST", + "id": "compute.autoscalers.insert", + "parameterOrder": [ + "project", + "zone" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "Name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/autoscalers", + "request": { + "$ref": "Autoscaler" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "description": "Retrieves a list of autoscalers contained within the specified zone.", + "httpMethod": "GET", + "id": "compute.autoscalers.list", + "parameterOrder": [ + "project", + "zone" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "zone": { + "description": "Name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/autoscalers", + "response": { + "$ref": "AutoscalerList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "patch": { + "description": "Updates an autoscaler in the specified project using the data included in the request. This method supports PATCH semantics and uses the JSON merge patch format and processing rules.", + "httpMethod": "PATCH", + "id": "compute.autoscalers.patch", + "parameterOrder": [ + "project", + "zone" + ], + "parameters": { + "autoscaler": { + "description": "Name of the autoscaler to patch.", + "location": "query", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "Name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/autoscalers", + "request": { + "$ref": "Autoscaler" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "update": { + "description": "Updates an autoscaler in the specified project using the data included in the request.", + "httpMethod": "PUT", + "id": "compute.autoscalers.update", + "parameterOrder": [ + "project", + "zone" + ], + "parameters": { + "autoscaler": { + "description": "Name of the autoscaler to update.", + "location": "query", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "Name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/autoscalers", + "request": { + "$ref": "Autoscaler" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." } - } - } - } - }, - "AutoscalingPolicy": { - "id": "AutoscalingPolicy", - "type": "object", - "description": "Cloud Autoscaler policy.", - "properties": { - "coolDownPeriodSec": { - "type": "integer", - "description": "The number of seconds that the autoscaler should wait before it starts collecting information from a new instance. This prevents the autoscaler from collecting information when the instance is initializing, during which the collected usage would not be reliable. The default time autoscaler waits is 60 seconds.\n\nVirtual machine initialization times might vary because of numerous factors. We recommend that you test how long an instance may take to initialize. To do this, create an instance and time the startup process.", - "format": "int32" }, - "cpuUtilization": { - "$ref": "AutoscalingPolicyCpuUtilization", - "description": "Defines the CPU utilization policy that allows the autoscaler to scale based on the average CPU utilization of a managed instance group." - }, - "customMetricUtilizations": { - "type": "array", - "description": "Configuration parameters of autoscaling based on a custom metric.", - "items": { - "$ref": "AutoscalingPolicyCustomMetricUtilization" - } - }, - "loadBalancingUtilization": { - "$ref": "AutoscalingPolicyLoadBalancingUtilization", - "description": "Configuration parameters of autoscaling based on load balancer." - }, - "maxNumReplicas": { - "type": "integer", - "description": "The maximum number of instances that the autoscaler can scale up to. This is required when creating or updating an autoscaler. The maximum number of replicas should not be lower than minimal number of replicas.", - "format": "int32" - }, - "minNumReplicas": { - "type": "integer", - "description": "The minimum number of replicas that the autoscaler can scale down to. This cannot be less than 0. If not provided, autoscaler will choose a default value depending on maximum number of instances allowed.", - "format": "int32" - } - } - }, - "AutoscalingPolicyCpuUtilization": { - "id": "AutoscalingPolicyCpuUtilization", - "type": "object", - "description": "CPU utilization policy.", - "properties": { - "utilizationTarget": { - "type": "number", - "description": "The target CPU utilization that the autoscaler should maintain. Must be a float value in the range (0, 1]. If not specified, the default is 0.6.\n\nIf the CPU level is below the target utilization, the autoscaler scales down the number of instances until it reaches the minimum number of instances you specified or until the average CPU of your instances reaches the target utilization.\n\nIf the average CPU is above the target utilization, the autoscaler scales up until it reaches the maximum number of instances you specified or until the average utilization reaches the target utilization.", - "format": "double" - } - } - }, - "AutoscalingPolicyCustomMetricUtilization": { - "id": "AutoscalingPolicyCustomMetricUtilization", - "type": "object", - "description": "Custom utilization metric policy.", - "properties": { - "metric": { - "type": "string", - "description": "The identifier (type) of the Stackdriver Monitoring metric. The metric cannot have negative values.\n\nThe metric must have a value type of INT64 or DOUBLE." - }, - "utilizationTarget": { - "type": "number", - "description": "The target value of the metric that autoscaler should maintain. This must be a positive value. A utilization metric scales number of virtual machines handling requests to increase or decrease proportionally to the metric.\n\nFor example, a good metric to use as a utilization_target is compute.googleapis.com/instance/network/received_bytes_count. The autoscaler will work to keep this value constant for each of the instances.", - "format": "double" - }, - "utilizationTargetType": { - "type": "string", - "description": "Defines how target utilization value is expressed for a Stackdriver Monitoring metric. Either GAUGE, DELTA_PER_SECOND, or DELTA_PER_MINUTE. If not specified, the default is GAUGE.", - "enum": [ - "DELTA_PER_MINUTE", - "DELTA_PER_SECOND", - "GAUGE" - ], - "enumDescriptions": [ - "", - "", - "" - ] - } - } - }, - "AutoscalingPolicyLoadBalancingUtilization": { - "id": "AutoscalingPolicyLoadBalancingUtilization", - "type": "object", - "description": "Configuration parameters of autoscaling based on load balancing.", - "properties": { - "utilizationTarget": { - "type": "number", - "description": "Fraction of backend capacity utilization (set in HTTP(s) load balancing configuration) that autoscaler should maintain. Must be a positive float value. If not defined, the default is 0.8.", - "format": "double" - } - } - }, - "Backend": { - "id": "Backend", - "type": "object", - "description": "Message containing information of one individual backend.", - "properties": { - "balancingMode": { - "type": "string", - "description": "Specifies the balancing mode for this backend. For global HTTP(S) or TCP/SSL load balancing, the default is UTILIZATION. Valid values are UTILIZATION, RATE (for HTTP(S)) and CONNECTION (for TCP/SSL).\n\nFor Internal Load Balancing, the default and only supported mode is CONNECTION.", - "enum": [ - "CONNECTION", - "RATE", - "UTILIZATION" - ], - "enumDescriptions": [ - "", - "", - "" - ] - }, - "capacityScaler": { - "type": "number", - "description": "A multiplier applied to the group's maximum servicing capacity (based on UTILIZATION, RATE or CONNECTION). Default value is 1, which means the group will serve up to 100% of its configured capacity (depending on balancingMode). A setting of 0 means the group is completely drained, offering 0% of its available Capacity. Valid range is [0.0,1.0].\n\nThis cannot be used for internal load balancing.", - "format": "float" - }, - "description": { - "type": "string", - "description": "An optional description of this resource. Provide this property when you create the resource." - }, - "group": { - "type": "string", - "description": "The fully-qualified URL of a Instance Group resource. This instance group defines the list of instances that serve traffic. Member virtual machine instances from each instance group must live in the same zone as the instance group itself. No two backends in a backend service are allowed to use same Instance Group resource.\n\nNote that you must specify an Instance Group resource using the fully-qualified URL, rather than a partial URL.\n\nWhen the BackendService has load balancing scheme INTERNAL, the instance group must be within the same region as the BackendService." - }, - "maxConnections": { - "type": "integer", - "description": "The max number of simultaneous connections for the group. Can be used with either CONNECTION or UTILIZATION balancing modes. For CONNECTION mode, either maxConnections or maxConnectionsPerInstance must be set.\n\nThis cannot be used for internal load balancing.", - "format": "int32" - }, - "maxConnectionsPerInstance": { - "type": "integer", - "description": "The max number of simultaneous connections that a single backend instance can handle. This is used to calculate the capacity of the group. Can be used in either CONNECTION or UTILIZATION balancing modes. For CONNECTION mode, either maxConnections or maxConnectionsPerInstance must be set.\n\nThis cannot be used for internal load balancing.", - "format": "int32" - }, - "maxRate": { - "type": "integer", - "description": "The max requests per second (RPS) of the group. Can be used with either RATE or UTILIZATION balancing modes, but required if RATE mode. For RATE mode, either maxRate or maxRatePerInstance must be set.\n\nThis cannot be used for internal load balancing.", - "format": "int32" - }, - "maxRatePerInstance": { - "type": "number", - "description": "The max requests per second (RPS) that a single backend instance can handle. This is used to calculate the capacity of the group. Can be used in either balancing mode. For RATE mode, either maxRate or maxRatePerInstance must be set.\n\nThis cannot be used for internal load balancing.", - "format": "float" - }, - "maxUtilization": { - "type": "number", - "description": "Used when balancingMode is UTILIZATION. This ratio defines the CPU utilization target for the group. The default is 0.8. Valid range is [0.0, 1.0].\n\nThis cannot be used for internal load balancing.", - "format": "float" - } - } - }, - "BackendBucket": { - "id": "BackendBucket", - "type": "object", - "description": "A BackendBucket resource. This resource defines a Cloud Storage bucket.", - "properties": { - "bucketName": { - "type": "string", - "description": "Cloud Storage bucket name." - }, - "creationTimestamp": { - "type": "string", - "description": "[Output Only] Creation timestamp in RFC3339 text format." - }, - "description": { - "type": "string", - "description": "An optional textual description of the resource; provided by the client when the resource is created." - }, - "enableCdn": { - "type": "boolean", - "description": "If true, enable Cloud CDN for this BackendBucket." - }, - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server.", - "format": "uint64" - }, - "kind": { - "type": "string", - "description": "Type of the resource.", - "default": "compute#backendBucket" - }, - "name": { - "type": "string", - "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for the resource." - } - } - }, - "BackendBucketList": { - "id": "BackendBucketList", - "type": "object", - "description": "Contains a list of BackendBucket resources.", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "array", - "description": "A list of BackendBucket resources.", - "items": { - "$ref": "BackendBucket" - } - }, - "kind": { - "type": "string", - "description": "Type of resource.", - "default": "compute#backendBucketList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } + "backendBuckets": { + "methods": { + "delete": { + "description": "Deletes the specified BackendBucket resource.", + "httpMethod": "DELETE", + "id": "compute.backendBuckets.delete", + "parameterOrder": [ + "project", + "backendBucket" + ], + "parameters": { + "backendBucket": { + "description": "Name of the BackendBucket resource to delete.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/backendBuckets/{backendBucket}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Returns the specified BackendBucket resource. Get a list of available backend buckets by making a list() request.", + "httpMethod": "GET", + "id": "compute.backendBuckets.get", + "parameterOrder": [ + "project", + "backendBucket" + ], + "parameters": { + "backendBucket": { + "description": "Name of the BackendBucket resource to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/backendBuckets/{backendBucket}", + "response": { + "$ref": "BackendBucket" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "description": "Creates a BackendBucket resource in the specified project using the data included in the request.", + "httpMethod": "POST", + "id": "compute.backendBuckets.insert", + "parameterOrder": [ + "project" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/backendBuckets", + "request": { + "$ref": "BackendBucket" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "description": "Retrieves the list of BackendBucket resources available to the specified project.", + "httpMethod": "GET", + "id": "compute.backendBuckets.list", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/backendBuckets", + "response": { + "$ref": "BackendBucketList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "patch": { + "description": "Updates the specified BackendBucket resource with the data included in the request. This method supports PATCH semantics and uses the JSON merge patch format and processing rules.", + "httpMethod": "PATCH", + "id": "compute.backendBuckets.patch", + "parameterOrder": [ + "project", + "backendBucket" + ], + "parameters": { + "backendBucket": { + "description": "Name of the BackendBucket resource to patch.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/backendBuckets/{backendBucket}", + "request": { + "$ref": "BackendBucket" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "update": { + "description": "Updates the specified BackendBucket resource with the data included in the request.", + "httpMethod": "PUT", + "id": "compute.backendBuckets.update", + "parameterOrder": [ + "project", + "backendBucket" + ], + "parameters": { + "backendBucket": { + "description": "Name of the BackendBucket resource to update.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/backendBuckets/{backendBucket}", + "request": { + "$ref": "BackendBucket" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." } - } - } - } - }, - "BackendService": { - "id": "BackendService", - "type": "object", - "description": "A BackendService resource. This resource defines a group of backend virtual machines and their serving capacity. (== resource_for v1.backendService ==) (== resource_for beta.backendService ==)", - "properties": { - "affinityCookieTtlSec": { - "type": "integer", - "description": "Lifetime of cookies in seconds if session_affinity is GENERATED_COOKIE. If set to 0, the cookie is non-persistent and lasts only until the end of the browser session (or equivalent). The maximum allowed value for TTL is one day.\n\nWhen the load balancing scheme is INTERNAL, this field is not used.", - "format": "int32" }, - "backends": { - "type": "array", - "description": "The list of backends that serve this BackendService.", - "items": { - "$ref": "Backend" - } + "backendServices": { + "methods": { + "aggregatedList": { + "description": "Retrieves the list of all BackendService resources, regional and global, available to the specified project.", + "httpMethod": "GET", + "id": "compute.backendServices.aggregatedList", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Name of the project scoping this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/aggregated/backendServices", + "response": { + "$ref": "BackendServiceAggregatedList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "delete": { + "description": "Deletes the specified BackendService resource.", + "httpMethod": "DELETE", + "id": "compute.backendServices.delete", + "parameterOrder": [ + "project", + "backendService" + ], + "parameters": { + "backendService": { + "description": "Name of the BackendService resource to delete.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/backendServices/{backendService}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Returns the specified BackendService resource. Get a list of available backend services by making a list() request.", + "httpMethod": "GET", + "id": "compute.backendServices.get", + "parameterOrder": [ + "project", + "backendService" + ], + "parameters": { + "backendService": { + "description": "Name of the BackendService resource to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/backendServices/{backendService}", + "response": { + "$ref": "BackendService" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "getHealth": { + "description": "Gets the most recent health check results for this BackendService.", + "httpMethod": "POST", + "id": "compute.backendServices.getHealth", + "parameterOrder": [ + "project", + "backendService" + ], + "parameters": { + "backendService": { + "description": "Name of the BackendService resource to which the queried instance belongs.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/backendServices/{backendService}/getHealth", + "request": { + "$ref": "ResourceGroupReference" + }, + "response": { + "$ref": "BackendServiceGroupHealth" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "description": "Creates a BackendService resource in the specified project using the data included in the request. There are several restrictions and guidelines to keep in mind when creating a backend service. Read Restrictions and Guidelines for more information.", + "httpMethod": "POST", + "id": "compute.backendServices.insert", + "parameterOrder": [ + "project" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/backendServices", + "request": { + "$ref": "BackendService" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "description": "Retrieves the list of BackendService resources available to the specified project.", + "httpMethod": "GET", + "id": "compute.backendServices.list", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/backendServices", + "response": { + "$ref": "BackendServiceList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "patch": { + "description": "Patches the specified BackendService resource with the data included in the request. There are several restrictions and guidelines to keep in mind when updating a backend service. Read Restrictions and Guidelines for more information. This method supports PATCH semantics and uses the JSON merge patch format and processing rules.", + "httpMethod": "PATCH", + "id": "compute.backendServices.patch", + "parameterOrder": [ + "project", + "backendService" + ], + "parameters": { + "backendService": { + "description": "Name of the BackendService resource to patch.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/backendServices/{backendService}", + "request": { + "$ref": "BackendService" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "update": { + "description": "Updates the specified BackendService resource with the data included in the request. There are several restrictions and guidelines to keep in mind when updating a backend service. Read Restrictions and Guidelines for more information.", + "httpMethod": "PUT", + "id": "compute.backendServices.update", + "parameterOrder": [ + "project", + "backendService" + ], + "parameters": { + "backendService": { + "description": "Name of the BackendService resource to update.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/backendServices/{backendService}", + "request": { + "$ref": "BackendService" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + } + } }, - "cdnPolicy": { - "$ref": "BackendServiceCdnPolicy", - "description": "Cloud CDN configuration for this BackendService." + "diskTypes": { + "methods": { + "aggregatedList": { + "description": "Retrieves an aggregated list of disk types.", + "httpMethod": "GET", + "id": "compute.diskTypes.aggregatedList", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/aggregated/diskTypes", + "response": { + "$ref": "DiskTypeAggregatedList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "get": { + "description": "Returns the specified disk type. Get a list of available disk types by making a list() request.", + "httpMethod": "GET", + "id": "compute.diskTypes.get", + "parameterOrder": [ + "project", + "zone", + "diskType" + ], + "parameters": { + "diskType": { + "description": "Name of the disk type to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/diskTypes/{diskType}", + "response": { + "$ref": "DiskType" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "list": { + "description": "Retrieves a list of disk types available to the specified project.", + "httpMethod": "GET", + "id": "compute.diskTypes.list", + "parameterOrder": [ + "project", + "zone" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/diskTypes", + "response": { + "$ref": "DiskTypeList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + } + } }, - "connectionDraining": { - "$ref": "ConnectionDraining" + "disks": { + "methods": { + "aggregatedList": { + "description": "Retrieves an aggregated list of persistent disks.", + "httpMethod": "GET", + "id": "compute.disks.aggregatedList", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/aggregated/disks", + "response": { + "$ref": "DiskAggregatedList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "createSnapshot": { + "description": "Creates a snapshot of a specified persistent disk.", + "httpMethod": "POST", + "id": "compute.disks.createSnapshot", + "parameterOrder": [ + "project", + "zone", + "disk" + ], + "parameters": { + "disk": { + "description": "Name of the persistent disk to snapshot.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "guestFlush": { + "location": "query", + "type": "boolean" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/disks/{disk}/createSnapshot", + "request": { + "$ref": "Snapshot" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "delete": { + "description": "Deletes the specified persistent disk. Deleting a disk removes its data permanently and is irreversible. However, deleting a disk does not delete any snapshots previously made from the disk. You must separately delete snapshots.", + "httpMethod": "DELETE", + "id": "compute.disks.delete", + "parameterOrder": [ + "project", + "zone", + "disk" + ], + "parameters": { + "disk": { + "description": "Name of the persistent disk to delete.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/disks/{disk}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Returns a specified persistent disk. Get a list of available persistent disks by making a list() request.", + "httpMethod": "GET", + "id": "compute.disks.get", + "parameterOrder": [ + "project", + "zone", + "disk" + ], + "parameters": { + "disk": { + "description": "Name of the persistent disk to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/disks/{disk}", + "response": { + "$ref": "Disk" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "description": "Creates a persistent disk in the specified project using the data in the request. You can create a disk with a sourceImage, a sourceSnapshot, or create an empty 500 GB data disk by omitting all properties. You can also create a disk that is larger than the default size by specifying the sizeGb property.", + "httpMethod": "POST", + "id": "compute.disks.insert", + "parameterOrder": [ + "project", + "zone" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "sourceImage": { + "description": "Optional. Source image to restore onto a disk.", + "location": "query", + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/disks", + "request": { + "$ref": "Disk" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "description": "Retrieves a list of persistent disks contained within the specified zone.", + "httpMethod": "GET", + "id": "compute.disks.list", + "parameterOrder": [ + "project", + "zone" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/disks", + "response": { + "$ref": "DiskList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "resize": { + "description": "Resizes the specified persistent disk. You can only increase the size of the disk.", + "httpMethod": "POST", + "id": "compute.disks.resize", + "parameterOrder": [ + "project", + "zone", + "disk" + ], + "parameters": { + "disk": { + "description": "The name of the persistent disk.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/disks/{disk}/resize", + "request": { + "$ref": "DisksResizeRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setLabels": { + "description": "Sets the labels on a disk. To learn more about labels, read the Labeling Resources documentation.", + "httpMethod": "POST", + "id": "compute.disks.setLabels", + "parameterOrder": [ + "project", + "zone", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/disks/{resource}/setLabels", + "request": { + "$ref": "ZoneSetLabelsRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + } + } }, - "creationTimestamp": { - "type": "string", - "description": "[Output Only] Creation timestamp in RFC3339 text format." + "firewalls": { + "methods": { + "delete": { + "description": "Deletes the specified firewall.", + "httpMethod": "DELETE", + "id": "compute.firewalls.delete", + "parameterOrder": [ + "project", + "firewall" + ], + "parameters": { + "firewall": { + "description": "Name of the firewall rule to delete.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/firewalls/{firewall}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Returns the specified firewall.", + "httpMethod": "GET", + "id": "compute.firewalls.get", + "parameterOrder": [ + "project", + "firewall" + ], + "parameters": { + "firewall": { + "description": "Name of the firewall rule to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/firewalls/{firewall}", + "response": { + "$ref": "Firewall" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "description": "Creates a firewall rule in the specified project using the data included in the request.", + "httpMethod": "POST", + "id": "compute.firewalls.insert", + "parameterOrder": [ + "project" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/firewalls", + "request": { + "$ref": "Firewall" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "description": "Retrieves the list of firewall rules available to the specified project.", + "httpMethod": "GET", + "id": "compute.firewalls.list", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/firewalls", + "response": { + "$ref": "FirewallList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "patch": { + "description": "Updates the specified firewall rule with the data included in the request. This method supports PATCH semantics and uses the JSON merge patch format and processing rules.", + "httpMethod": "PATCH", + "id": "compute.firewalls.patch", + "parameterOrder": [ + "project", + "firewall" + ], + "parameters": { + "firewall": { + "description": "Name of the firewall rule to patch.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/firewalls/{firewall}", + "request": { + "$ref": "Firewall" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "update": { + "description": "Updates the specified firewall rule with the data included in the request. The PUT method can only update the following fields of firewall rule: allowed, description, sourceRanges, sourceTags, targetTags.", + "httpMethod": "PUT", + "id": "compute.firewalls.update", + "parameterOrder": [ + "project", + "firewall" + ], + "parameters": { + "firewall": { + "description": "Name of the firewall rule to update.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/firewalls/{firewall}", + "request": { + "$ref": "Firewall" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + } + } }, - "description": { - "type": "string", - "description": "An optional description of this resource. Provide this property when you create the resource." + "forwardingRules": { + "methods": { + "aggregatedList": { + "description": "Retrieves an aggregated list of forwarding rules.", + "httpMethod": "GET", + "id": "compute.forwardingRules.aggregatedList", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/aggregated/forwardingRules", + "response": { + "$ref": "ForwardingRuleAggregatedList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "delete": { + "description": "Deletes the specified ForwardingRule resource.", + "httpMethod": "DELETE", + "id": "compute.forwardingRules.delete", + "parameterOrder": [ + "project", + "region", + "forwardingRule" + ], + "parameters": { + "forwardingRule": { + "description": "Name of the ForwardingRule resource to delete.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/regions/{region}/forwardingRules/{forwardingRule}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Returns the specified ForwardingRule resource.", + "httpMethod": "GET", + "id": "compute.forwardingRules.get", + "parameterOrder": [ + "project", + "region", + "forwardingRule" + ], + "parameters": { + "forwardingRule": { + "description": "Name of the ForwardingRule resource to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/forwardingRules/{forwardingRule}", + "response": { + "$ref": "ForwardingRule" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "description": "Creates a ForwardingRule resource in the specified project and region using the data included in the request.", + "httpMethod": "POST", + "id": "compute.forwardingRules.insert", + "parameterOrder": [ + "project", + "region" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/regions/{region}/forwardingRules", + "request": { + "$ref": "ForwardingRule" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "description": "Retrieves a list of ForwardingRule resources available to the specified project and region.", + "httpMethod": "GET", + "id": "compute.forwardingRules.list", + "parameterOrder": [ + "project", + "region" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/forwardingRules", + "response": { + "$ref": "ForwardingRuleList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "setTarget": { + "description": "Changes target URL for forwarding rule. The new target should be of the same type as the old target.", + "httpMethod": "POST", + "id": "compute.forwardingRules.setTarget", + "parameterOrder": [ + "project", + "region", + "forwardingRule" + ], + "parameters": { + "forwardingRule": { + "description": "Name of the ForwardingRule resource in which target is to be set.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/regions/{region}/forwardingRules/{forwardingRule}/setTarget", + "request": { + "$ref": "TargetReference" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + } + } }, - "enableCDN": { - "type": "boolean", - "description": "If true, enable Cloud CDN for this BackendService.\n\nWhen the load balancing scheme is INTERNAL, this field is not used." + "globalAddresses": { + "methods": { + "delete": { + "description": "Deletes the specified address resource.", + "httpMethod": "DELETE", + "id": "compute.globalAddresses.delete", + "parameterOrder": [ + "project", + "address" + ], + "parameters": { + "address": { + "description": "Name of the address resource to delete.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/addresses/{address}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Returns the specified address resource. Get a list of available addresses by making a list() request.", + "httpMethod": "GET", + "id": "compute.globalAddresses.get", + "parameterOrder": [ + "project", + "address" + ], + "parameters": { + "address": { + "description": "Name of the address resource to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/addresses/{address}", + "response": { + "$ref": "Address" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "description": "Creates an address resource in the specified project using the data included in the request.", + "httpMethod": "POST", + "id": "compute.globalAddresses.insert", + "parameterOrder": [ + "project" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/addresses", + "request": { + "$ref": "Address" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "description": "Retrieves a list of global addresses.", + "httpMethod": "GET", + "id": "compute.globalAddresses.list", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/addresses", + "response": { + "$ref": "AddressList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + } + } }, - "fingerprint": { - "type": "string", - "description": "Fingerprint of this resource. A hash of the contents stored in this object. This field is used in optimistic locking. This field will be ignored when inserting a BackendService. An up-to-date fingerprint must be provided in order to update the BackendService.", - "format": "byte" + "globalForwardingRules": { + "methods": { + "delete": { + "description": "Deletes the specified GlobalForwardingRule resource.", + "httpMethod": "DELETE", + "id": "compute.globalForwardingRules.delete", + "parameterOrder": [ + "project", + "forwardingRule" + ], + "parameters": { + "forwardingRule": { + "description": "Name of the ForwardingRule resource to delete.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/forwardingRules/{forwardingRule}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Returns the specified GlobalForwardingRule resource. Get a list of available forwarding rules by making a list() request.", + "httpMethod": "GET", + "id": "compute.globalForwardingRules.get", + "parameterOrder": [ + "project", + "forwardingRule" + ], + "parameters": { + "forwardingRule": { + "description": "Name of the ForwardingRule resource to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/forwardingRules/{forwardingRule}", + "response": { + "$ref": "ForwardingRule" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "description": "Creates a GlobalForwardingRule resource in the specified project using the data included in the request.", + "httpMethod": "POST", + "id": "compute.globalForwardingRules.insert", + "parameterOrder": [ + "project" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/forwardingRules", + "request": { + "$ref": "ForwardingRule" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "description": "Retrieves a list of GlobalForwardingRule resources available to the specified project.", + "httpMethod": "GET", + "id": "compute.globalForwardingRules.list", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/forwardingRules", + "response": { + "$ref": "ForwardingRuleList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "setTarget": { + "description": "Changes target URL for the GlobalForwardingRule resource. The new target should be of the same type as the old target.", + "httpMethod": "POST", + "id": "compute.globalForwardingRules.setTarget", + "parameterOrder": [ + "project", + "forwardingRule" + ], + "parameters": { + "forwardingRule": { + "description": "Name of the ForwardingRule resource in which target is to be set.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/forwardingRules/{forwardingRule}/setTarget", + "request": { + "$ref": "TargetReference" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + } + } + }, + "globalOperations": { + "methods": { + "aggregatedList": { + "description": "Retrieves an aggregated list of all operations.", + "httpMethod": "GET", + "id": "compute.globalOperations.aggregatedList", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/aggregated/operations", + "response": { + "$ref": "OperationAggregatedList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "delete": { + "description": "Deletes the specified Operations resource.", + "httpMethod": "DELETE", + "id": "compute.globalOperations.delete", + "parameterOrder": [ + "project", + "operation" + ], + "parameters": { + "operation": { + "description": "Name of the Operations resource to delete.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/operations/{operation}", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Retrieves the specified Operations resource. Get a list of operations by making a list() request.", + "httpMethod": "GET", + "id": "compute.globalOperations.get", + "parameterOrder": [ + "project", + "operation" + ], + "parameters": { + "operation": { + "description": "Name of the Operations resource to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/operations/{operation}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "list": { + "description": "Retrieves a list of Operation resources contained within the specified project.", + "httpMethod": "GET", + "id": "compute.globalOperations.list", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/operations", + "response": { + "$ref": "OperationList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + } + } }, "healthChecks": { - "type": "array", - "description": "The list of URLs to the HttpHealthCheck or HttpsHealthCheck resource for health checking this BackendService. Currently at most one health check can be specified, and a health check is required for Compute Engine backend services. A health check must not be specified for App Engine backend and Cloud Function backend.\n\nFor internal load balancing, a URL to a HealthCheck resource must be specified instead.", - "items": { - "type": "string" - } - }, - "iap": { - "$ref": "BackendServiceIAP" - }, - "id": { - "type": "string", - "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", - "format": "uint64" - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#backendService for backend services.", - "default": "compute#backendService" - }, - "loadBalancingScheme": { - "type": "string", - "description": "Indicates whether the backend service will be used with internal or external load balancing. A backend service created for one type of load balancing cannot be used with the other. Possible values are INTERNAL and EXTERNAL.", - "enum": [ - "EXTERNAL", - "INTERNAL", - "INVALID_LOAD_BALANCING_SCHEME" - ], - "enumDescriptions": [ - "", - "", - "" - ] - }, - "name": { - "type": "string", - "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" - }, - "port": { - "type": "integer", - "description": "Deprecated in favor of portName. The TCP port to connect on the backend. The default value is 80.\n\nThis cannot be used for internal load balancing.", - "format": "int32" - }, - "portName": { - "type": "string", - "description": "Name of backend port. The same name should appear in the instance groups referenced by this service. Required when the load balancing scheme is EXTERNAL.\n\nWhen the load balancing scheme is INTERNAL, this field is not used." - }, - "protocol": { - "type": "string", - "description": "The protocol this BackendService uses to communicate with backends.\n\nPossible values are HTTP, HTTPS, TCP, and SSL. The default is HTTP.\n\nFor internal load balancing, the possible values are TCP and UDP, and the default is TCP.", - "enum": [ - "HTTP", - "HTTPS", - "SSL", - "TCP", - "UDP" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "" - ] - }, - "region": { - "type": "string", - "description": "[Output Only] URL of the region where the regional backend service resides. This field is not applicable to global backend services." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for the resource." - }, - "sessionAffinity": { - "type": "string", - "description": "Type of session affinity to use. The default is NONE.\n\nWhen the load balancing scheme is EXTERNAL, can be NONE, CLIENT_IP, or GENERATED_COOKIE.\n\nWhen the load balancing scheme is INTERNAL, can be NONE, CLIENT_IP, CLIENT_IP_PROTO, or CLIENT_IP_PORT_PROTO.\n\nWhen the protocol is UDP, this field is not used.", - "enum": [ - "CLIENT_IP", - "CLIENT_IP_PORT_PROTO", - "CLIENT_IP_PROTO", - "GENERATED_COOKIE", - "NONE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "" - ] - }, - "timeoutSec": { - "type": "integer", - "description": "How many seconds to wait for the backend before considering it a failed request. Default is 30 seconds.", - "format": "int32" - } - } - }, - "BackendServiceAggregatedList": { - "id": "BackendServiceAggregatedList", - "type": "object", - "description": "Contains a list of BackendServicesScopedList.", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "object", - "description": "A list of BackendServicesScopedList resources.", - "additionalProperties": { - "$ref": "BackendServicesScopedList", - "description": "Name of the scope containing this set of BackendServices." - } - }, - "kind": { - "type": "string", - "description": "Type of resource.", - "default": "compute#backendServiceAggregatedList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } + "methods": { + "delete": { + "description": "Deletes the specified HealthCheck resource.", + "httpMethod": "DELETE", + "id": "compute.healthChecks.delete", + "parameterOrder": [ + "project", + "healthCheck" + ], + "parameters": { + "healthCheck": { + "description": "Name of the HealthCheck resource to delete.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/healthChecks/{healthCheck}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Returns the specified HealthCheck resource. Get a list of available health checks by making a list() request.", + "httpMethod": "GET", + "id": "compute.healthChecks.get", + "parameterOrder": [ + "project", + "healthCheck" + ], + "parameters": { + "healthCheck": { + "description": "Name of the HealthCheck resource to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/healthChecks/{healthCheck}", + "response": { + "$ref": "HealthCheck" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "description": "Creates a HealthCheck resource in the specified project using the data included in the request.", + "httpMethod": "POST", + "id": "compute.healthChecks.insert", + "parameterOrder": [ + "project" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/healthChecks", + "request": { + "$ref": "HealthCheck" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "description": "Retrieves the list of HealthCheck resources available to the specified project.", + "httpMethod": "GET", + "id": "compute.healthChecks.list", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/healthChecks", + "response": { + "$ref": "HealthCheckList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "patch": { + "description": "Updates a HealthCheck resource in the specified project using the data included in the request. This method supports PATCH semantics and uses the JSON merge patch format and processing rules.", + "httpMethod": "PATCH", + "id": "compute.healthChecks.patch", + "parameterOrder": [ + "project", + "healthCheck" + ], + "parameters": { + "healthCheck": { + "description": "Name of the HealthCheck resource to patch.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/healthChecks/{healthCheck}", + "request": { + "$ref": "HealthCheck" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "update": { + "description": "Updates a HealthCheck resource in the specified project using the data included in the request.", + "httpMethod": "PUT", + "id": "compute.healthChecks.update", + "parameterOrder": [ + "project", + "healthCheck" + ], + "parameters": { + "healthCheck": { + "description": "Name of the HealthCheck resource to update.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/healthChecks/{healthCheck}", + "request": { + "$ref": "HealthCheck" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." } - } - } - } - }, - "BackendServiceCdnPolicy": { - "id": "BackendServiceCdnPolicy", - "type": "object", - "description": "Message containing Cloud CDN configuration for a backend service.", - "properties": { - "cacheKeyPolicy": { - "$ref": "CacheKeyPolicy", - "description": "The CacheKeyPolicy for this CdnPolicy." - } - } - }, - "BackendServiceGroupHealth": { - "id": "BackendServiceGroupHealth", - "type": "object", - "properties": { - "healthStatus": { - "type": "array", - "items": { - "$ref": "HealthStatus" - } }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#backendServiceGroupHealth for the health of backend services.", - "default": "compute#backendServiceGroupHealth" - } - } - }, - "BackendServiceIAP": { - "id": "BackendServiceIAP", - "type": "object", - "description": "Identity-Aware Proxy", - "properties": { - "enabled": { - "type": "boolean" - }, - "oauth2ClientId": { - "type": "string" - }, - "oauth2ClientSecret": { - "type": "string" - }, - "oauth2ClientSecretSha256": { - "type": "string", - "description": "[Output Only] SHA256 hash value for the field oauth2_client_secret above." - } - } - }, - "BackendServiceList": { - "id": "BackendServiceList", - "type": "object", - "description": "Contains a list of BackendService resources.", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "array", - "description": "A list of BackendService resources.", - "items": { - "$ref": "BackendService" - } - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#backendServiceList for lists of backend services.", - "default": "compute#backendServiceList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } + "httpHealthChecks": { + "methods": { + "delete": { + "description": "Deletes the specified HttpHealthCheck resource.", + "httpMethod": "DELETE", + "id": "compute.httpHealthChecks.delete", + "parameterOrder": [ + "project", + "httpHealthCheck" + ], + "parameters": { + "httpHealthCheck": { + "description": "Name of the HttpHealthCheck resource to delete.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/httpHealthChecks/{httpHealthCheck}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Returns the specified HttpHealthCheck resource. Get a list of available HTTP health checks by making a list() request.", + "httpMethod": "GET", + "id": "compute.httpHealthChecks.get", + "parameterOrder": [ + "project", + "httpHealthCheck" + ], + "parameters": { + "httpHealthCheck": { + "description": "Name of the HttpHealthCheck resource to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/httpHealthChecks/{httpHealthCheck}", + "response": { + "$ref": "HttpHealthCheck" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "description": "Creates a HttpHealthCheck resource in the specified project using the data included in the request.", + "httpMethod": "POST", + "id": "compute.httpHealthChecks.insert", + "parameterOrder": [ + "project" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/httpHealthChecks", + "request": { + "$ref": "HttpHealthCheck" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "description": "Retrieves the list of HttpHealthCheck resources available to the specified project.", + "httpMethod": "GET", + "id": "compute.httpHealthChecks.list", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/httpHealthChecks", + "response": { + "$ref": "HttpHealthCheckList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "patch": { + "description": "Updates a HttpHealthCheck resource in the specified project using the data included in the request. This method supports PATCH semantics and uses the JSON merge patch format and processing rules.", + "httpMethod": "PATCH", + "id": "compute.httpHealthChecks.patch", + "parameterOrder": [ + "project", + "httpHealthCheck" + ], + "parameters": { + "httpHealthCheck": { + "description": "Name of the HttpHealthCheck resource to patch.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/httpHealthChecks/{httpHealthCheck}", + "request": { + "$ref": "HttpHealthCheck" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "update": { + "description": "Updates a HttpHealthCheck resource in the specified project using the data included in the request.", + "httpMethod": "PUT", + "id": "compute.httpHealthChecks.update", + "parameterOrder": [ + "project", + "httpHealthCheck" + ], + "parameters": { + "httpHealthCheck": { + "description": "Name of the HttpHealthCheck resource to update.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/httpHealthChecks/{httpHealthCheck}", + "request": { + "$ref": "HttpHealthCheck" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." } - } - } - } - }, - "BackendServicesScopedList": { - "id": "BackendServicesScopedList", - "type": "object", - "properties": { - "backendServices": { - "type": "array", - "description": "List of BackendServices contained in this scope.", - "items": { - "$ref": "BackendService" - } }, - "warning": { - "type": "object", - "description": "Informational warning which replaces the list of backend services when the list is empty.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } + "httpsHealthChecks": { + "methods": { + "delete": { + "description": "Deletes the specified HttpsHealthCheck resource.", + "httpMethod": "DELETE", + "id": "compute.httpsHealthChecks.delete", + "parameterOrder": [ + "project", + "httpsHealthCheck" + ], + "parameters": { + "httpsHealthCheck": { + "description": "Name of the HttpsHealthCheck resource to delete.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/httpsHealthChecks/{httpsHealthCheck}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Returns the specified HttpsHealthCheck resource. Get a list of available HTTPS health checks by making a list() request.", + "httpMethod": "GET", + "id": "compute.httpsHealthChecks.get", + "parameterOrder": [ + "project", + "httpsHealthCheck" + ], + "parameters": { + "httpsHealthCheck": { + "description": "Name of the HttpsHealthCheck resource to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/httpsHealthChecks/{httpsHealthCheck}", + "response": { + "$ref": "HttpsHealthCheck" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "description": "Creates a HttpsHealthCheck resource in the specified project using the data included in the request.", + "httpMethod": "POST", + "id": "compute.httpsHealthChecks.insert", + "parameterOrder": [ + "project" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/httpsHealthChecks", + "request": { + "$ref": "HttpsHealthCheck" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "description": "Retrieves the list of HttpsHealthCheck resources available to the specified project.", + "httpMethod": "GET", + "id": "compute.httpsHealthChecks.list", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/httpsHealthChecks", + "response": { + "$ref": "HttpsHealthCheckList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "patch": { + "description": "Updates a HttpsHealthCheck resource in the specified project using the data included in the request. This method supports PATCH semantics and uses the JSON merge patch format and processing rules.", + "httpMethod": "PATCH", + "id": "compute.httpsHealthChecks.patch", + "parameterOrder": [ + "project", + "httpsHealthCheck" + ], + "parameters": { + "httpsHealthCheck": { + "description": "Name of the HttpsHealthCheck resource to patch.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/httpsHealthChecks/{httpsHealthCheck}", + "request": { + "$ref": "HttpsHealthCheck" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "update": { + "description": "Updates a HttpsHealthCheck resource in the specified project using the data included in the request.", + "httpMethod": "PUT", + "id": "compute.httpsHealthChecks.update", + "parameterOrder": [ + "project", + "httpsHealthCheck" + ], + "parameters": { + "httpsHealthCheck": { + "description": "Name of the HttpsHealthCheck resource to update.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/httpsHealthChecks/{httpsHealthCheck}", + "request": { + "$ref": "HttpsHealthCheck" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." } - } - } - } - }, - "CacheInvalidationRule": { - "id": "CacheInvalidationRule", - "type": "object", - "properties": { - "host": { - "type": "string", - "description": "If set, this invalidation rule will only apply to requests with a Host header matching host." }, - "path": { - "type": "string" - } - } - }, - "CacheKeyPolicy": { - "id": "CacheKeyPolicy", - "type": "object", - "description": "Message containing what to include in the cache key for a request for Cloud CDN.", - "properties": { - "includeHost": { - "type": "boolean", - "description": "If true, requests to different hosts will be cached separately." - }, - "includeProtocol": { - "type": "boolean", - "description": "If true, http and https requests will be cached separately." - }, - "includeQueryString": { - "type": "boolean", - "description": "If true, include query string parameters in the cache key according to query_string_whitelist and query_string_blacklist. If neither is set, the entire query string will be included. If false, the query string will be excluded from the cache key entirely." - }, - "queryStringBlacklist": { - "type": "array", - "description": "Names of query string parameters to exclude in cache keys. All other parameters will be included. Either specify query_string_whitelist or query_string_blacklist, not both. '&' and '=' will be percent encoded and not treated as delimiters.", - "items": { - "type": "string" - } - }, - "queryStringWhitelist": { - "type": "array", - "description": "Names of query string parameters to include in cache keys. All other parameters will be excluded. Either specify query_string_whitelist or query_string_blacklist, not both. '&' and '=' will be percent encoded and not treated as delimiters.", - "items": { - "type": "string" - } - } - } - }, - "Commitment": { - "id": "Commitment", - "type": "object", - "description": "Represents a Commitment resource. Creating a Commitment resource means that you are purchasing a committed use contract with an explicit start and end time. You can create commitments based on vCPUs and memory usage and receive discounted rates. For full details, read Signing Up for Committed Use Discounts.\n\nCommitted use discounts are subject to Google Cloud Platform's Service Specific Terms. By purchasing a committed use discount, you agree to these terms. Committed use discounts will not renew, so you must purchase a new commitment to continue receiving discounts. (== resource_for beta.commitments ==) (== resource_for v1.commitments ==)", - "properties": { - "creationTimestamp": { - "type": "string", - "description": "[Output Only] Creation timestamp in RFC3339 text format." - }, - "description": { - "type": "string", - "description": "An optional description of this resource. Provide this property when you create the resource." - }, - "endTimestamp": { - "type": "string", - "description": "[Output Only] Commitment end time in RFC3339 text format." - }, - "id": { - "type": "string", - "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", - "format": "uint64" - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of the resource. Always compute#commitment for commitments.", - "default": "compute#commitment" - }, - "name": { - "type": "string", - "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" - }, - "plan": { - "type": "string", - "description": "The plan for this commitment, which determines duration and discount rate. The currently supported plans are TWELVE_MONTH (1 year), and THIRTY_SIX_MONTH (3 years).", - "enum": [ - "INVALID", - "THIRTY_SIX_MONTH", - "TWELVE_MONTH" - ], - "enumDescriptions": [ - "", - "", - "" - ] - }, - "region": { - "type": "string", - "description": "[Output Only] URL of the region where this commitment may be used." - }, - "resources": { - "type": "array", - "description": "List of commitment amounts for particular resources. Note that VCPU and MEMORY resource commitments must occur together.", - "items": { - "$ref": "ResourceCommitment" - } - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for the resource." - }, - "startTimestamp": { - "type": "string", - "description": "[Output Only] Commitment start time in RFC3339 text format." - }, - "status": { - "type": "string", - "description": "[Output Only] Status of the commitment with regards to eventual expiration (each commitment has an end date defined). One of the following values: NOT_YET_ACTIVE, ACTIVE, EXPIRED.", - "enum": [ - "ACTIVE", - "CREATING", - "EXPIRED", - "NOT_YET_ACTIVE" - ], - "enumDescriptions": [ - "", - "", - "", - "" - ] - }, - "statusMessage": { - "type": "string", - "description": "[Output Only] An optional, human-readable explanation of the status." - } - } - }, - "CommitmentAggregatedList": { - "id": "CommitmentAggregatedList", - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "object", - "description": "A list of CommitmentsScopedList resources.", - "additionalProperties": { - "$ref": "CommitmentsScopedList", - "description": "[Output Only] Name of the scope containing this set of commitments." - } - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#commitmentAggregatedList for aggregated lists of commitments.", - "default": "compute#commitmentAggregatedList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } + "images": { + "methods": { + "delete": { + "description": "Deletes the specified image.", + "httpMethod": "DELETE", + "id": "compute.images.delete", + "parameterOrder": [ + "project", + "image" + ], + "parameters": { + "image": { + "description": "Name of the image resource to delete.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/images/{image}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "deprecate": { + "description": "Sets the deprecation status of an image.\n\nIf an empty request body is given, clears the deprecation status instead.", + "httpMethod": "POST", + "id": "compute.images.deprecate", + "parameterOrder": [ + "project", + "image" + ], + "parameters": { + "image": { + "description": "Image name.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/images/{image}/deprecate", + "request": { + "$ref": "DeprecationStatus" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Returns the specified image. Get a list of available images by making a list() request.", + "httpMethod": "GET", + "id": "compute.images.get", + "parameterOrder": [ + "project", + "image" + ], + "parameters": { + "image": { + "description": "Name of the image resource to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/images/{image}", + "response": { + "$ref": "Image" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "getFromFamily": { + "description": "Returns the latest image that is part of an image family and is not deprecated.", + "httpMethod": "GET", + "id": "compute.images.getFromFamily", + "parameterOrder": [ + "project", + "family" + ], + "parameters": { + "family": { + "description": "Name of the image family to search for.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/images/family/{family}", + "response": { + "$ref": "Image" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "description": "Creates an image in the specified project using the data included in the request.", + "httpMethod": "POST", + "id": "compute.images.insert", + "parameterOrder": [ + "project" + ], + "parameters": { + "forceCreate": { + "description": "Force image creation if true.", + "location": "query", + "type": "boolean" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/images", + "request": { + "$ref": "Image" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/devstorage.full_control", + "https://www.googleapis.com/auth/devstorage.read_only", + "https://www.googleapis.com/auth/devstorage.read_write" + ] + }, + "list": { + "description": "Retrieves the list of custom images available to the specified project. Custom images are images you create that belong to your project. This method does not get any images that belong to other projects, including publicly-available images, like Debian 8. If you want to get a list of publicly-available images, use this method to make a request to the respective image project, such as debian-cloud or windows-cloud.", + "httpMethod": "GET", + "id": "compute.images.list", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/images", + "response": { + "$ref": "ImageList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "setLabels": { + "description": "Sets the labels on an image. To learn more about labels, read the Labeling Resources documentation.", + "httpMethod": "POST", + "id": "compute.images.setLabels", + "parameterOrder": [ + "project", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/images/{resource}/setLabels", + "request": { + "$ref": "GlobalSetLabelsRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." } - } - } - } - }, - "CommitmentList": { - "id": "CommitmentList", - "type": "object", - "description": "Contains a list of Commitment resources.", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." }, - "items": { - "type": "array", - "description": "A list of Commitment resources.", - "items": { - "$ref": "Commitment" - } - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#commitmentList for lists of commitments.", - "default": "compute#commitmentList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "CommitmentsScopedList": { - "id": "CommitmentsScopedList", - "type": "object", - "properties": { - "commitments": { - "type": "array", - "description": "[Output Only] List of commitments contained in this scope.", - "items": { - "$ref": "Commitment" - } - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning which replaces the list of commitments when the list is empty.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "ConnectionDraining": { - "id": "ConnectionDraining", - "type": "object", - "description": "Message containing connection draining configuration.", - "properties": { - "drainingTimeoutSec": { - "type": "integer", - "description": "Time for which instance will be drained (not accept new connections, but still work to finish started).", - "format": "int32" - } - } - }, - "CustomerEncryptionKey": { - "id": "CustomerEncryptionKey", - "type": "object", - "description": "Represents a customer-supplied encryption key", - "properties": { - "rawKey": { - "type": "string", - "description": "Specifies a 256-bit customer-supplied encryption key, encoded in RFC 4648 base64 to either encrypt or decrypt this resource." - }, - "sha256": { - "type": "string", - "description": "[Output only] The RFC 4648 base64 encoded SHA-256 hash of the customer-supplied encryption key that protects this resource." - } - } - }, - "CustomerEncryptionKeyProtectedDisk": { - "id": "CustomerEncryptionKeyProtectedDisk", - "type": "object", - "properties": { - "diskEncryptionKey": { - "$ref": "CustomerEncryptionKey", - "description": "Decrypts data associated with the disk with a customer-supplied encryption key." - }, - "source": { - "type": "string", - "description": "Specifies a valid partial or full URL to an existing Persistent Disk resource. This field is only applicable for persistent disks." - } - } - }, - "DeprecationStatus": { - "id": "DeprecationStatus", - "type": "object", - "description": "Deprecation status for a public resource.", - "properties": { - "deleted": { - "type": "string", - "description": "An optional RFC3339 timestamp on or after which the state of this resource is intended to change to DELETED. This is only informational and the status will not change unless the client explicitly changes it." - }, - "deprecated": { - "type": "string", - "description": "An optional RFC3339 timestamp on or after which the state of this resource is intended to change to DEPRECATED. This is only informational and the status will not change unless the client explicitly changes it." - }, - "obsolete": { - "type": "string", - "description": "An optional RFC3339 timestamp on or after which the state of this resource is intended to change to OBSOLETE. This is only informational and the status will not change unless the client explicitly changes it." - }, - "replacement": { - "type": "string", - "description": "The URL of the suggested replacement for a deprecated resource. The suggested replacement resource must be the same kind of resource as the deprecated resource." - }, - "state": { - "type": "string", - "description": "The deprecation state of this resource. This can be DEPRECATED, OBSOLETE, or DELETED. Operations which create a new resource using a DEPRECATED resource will return successfully, but with a warning indicating the deprecated resource and recommending its replacement. Operations which use OBSOLETE or DELETED resources will be rejected and result in an error.", - "enum": [ - "DELETED", - "DEPRECATED", - "OBSOLETE" - ], - "enumDescriptions": [ - "", - "", - "" - ] - } - } - }, - "Disk": { - "id": "Disk", - "type": "object", - "description": "A Disk resource. (== resource_for beta.disks ==) (== resource_for v1.disks ==)", - "properties": { - "creationTimestamp": { - "type": "string", - "description": "[Output Only] Creation timestamp in RFC3339 text format." - }, - "description": { - "type": "string", - "description": "An optional description of this resource. Provide this property when you create the resource." - }, - "diskEncryptionKey": { - "$ref": "CustomerEncryptionKey", - "description": "Encrypts the disk using a customer-supplied encryption key.\n\nAfter you encrypt a disk with a customer-supplied key, you must provide the same key if you use the disk later (e.g. to create a disk snapshot or an image, or to attach the disk to a virtual machine).\n\nCustomer-supplied encryption keys do not protect access to metadata of the disk.\n\nIf you do not provide an encryption key when creating the disk, then the disk will be encrypted using an automatically generated key and you do not need to provide a key to use the disk later." - }, - "id": { - "type": "string", - "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", - "format": "uint64" - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of the resource. Always compute#disk for disks.", - "default": "compute#disk" - }, - "labelFingerprint": { - "type": "string", - "description": "A fingerprint for the labels being applied to this disk, which is essentially a hash of the labels set used for optimistic locking. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update labels. You must always provide an up-to-date fingerprint hash in order to update or change labels.\n\nTo see the latest fingerprint, make a get() request to retrieve a disk.", - "format": "byte" - }, - "labels": { - "type": "object", - "description": "Labels to apply to this disk. These can be later modified by the setLabels method.", - "additionalProperties": { - "type": "string" - } - }, - "lastAttachTimestamp": { - "type": "string", - "description": "[Output Only] Last attach timestamp in RFC3339 text format." - }, - "lastDetachTimestamp": { - "type": "string", - "description": "[Output Only] Last detach timestamp in RFC3339 text format." - }, - "licenses": { - "type": "array", - "description": "Any applicable publicly visible licenses.", - "items": { - "type": "string" - } - }, - "name": { - "type": "string", - "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "annotations": { - "required": [ - "compute.disks.insert" - ] - } - }, - "options": { - "type": "string", - "description": "Internal use only." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined fully-qualified URL for this resource." - }, - "sizeGb": { - "type": "string", - "description": "Size of the persistent disk, specified in GB. You can specify this field when creating a persistent disk using the sourceImage or sourceSnapshot parameter, or specify it alone to create an empty persistent disk.\n\nIf you specify this field along with sourceImage or sourceSnapshot, the value of sizeGb must not be less than the size of the sourceImage or the size of the snapshot. Acceptable values are 1 to 65536, inclusive.", - "format": "int64" - }, - "sourceImage": { - "type": "string", - "description": "The source image used to create this disk. If the source image is deleted, this field will not be set.\n\nTo create a disk with one of the public operating system images, specify the image by its family name. For example, specify family/debian-8 to use the latest Debian 8 image:\n\nprojects/debian-cloud/global/images/family/debian-8 \n\nAlternatively, use a specific version of a public operating system image:\n\nprojects/debian-cloud/global/images/debian-8-jessie-vYYYYMMDD \n\nTo create a disk with a custom image that you created, specify the image name in the following format:\n\nglobal/images/my-custom-image \n\nYou can also specify a custom image by its image family, which returns the latest version of the image in that family. Replace the image name with family/family-name:\n\nglobal/images/family/my-image-family" - }, - "sourceImageEncryptionKey": { - "$ref": "CustomerEncryptionKey", - "description": "The customer-supplied encryption key of the source image. Required if the source image is protected by a customer-supplied encryption key." - }, - "sourceImageId": { - "type": "string", - "description": "[Output Only] The ID value of the image used to create this disk. This value identifies the exact image that was used to create this persistent disk. For example, if you created the persistent disk from an image that was later deleted and recreated under the same name, the source image ID would identify the exact version of the image that was used." - }, - "sourceSnapshot": { - "type": "string", - "description": "The source snapshot used to create this disk. You can provide this as a partial or full URL to the resource. For example, the following are valid values: \n- https://www.googleapis.com/compute/v1/projects/project/global/snapshots/snapshot \n- projects/project/global/snapshots/snapshot \n- global/snapshots/snapshot" - }, - "sourceSnapshotEncryptionKey": { - "$ref": "CustomerEncryptionKey", - "description": "The customer-supplied encryption key of the source snapshot. Required if the source snapshot is protected by a customer-supplied encryption key." - }, - "sourceSnapshotId": { - "type": "string", - "description": "[Output Only] The unique ID of the snapshot used to create this disk. This value identifies the exact snapshot that was used to create this persistent disk. For example, if you created the persistent disk from a snapshot that was later deleted and recreated under the same name, the source snapshot ID would identify the exact version of the snapshot that was used." - }, - "status": { - "type": "string", - "description": "[Output Only] The status of disk creation.", - "enum": [ - "CREATING", - "FAILED", - "READY", - "RESTORING" - ], - "enumDescriptions": [ - "", - "", - "", - "" - ] - }, - "type": { - "type": "string", - "description": "URL of the disk type resource describing which disk type to use to create the disk. Provide this when creating the disk." - }, - "users": { - "type": "array", - "description": "[Output Only] Links to the users of the disk (attached instances) in form: project/zones/zone/instances/instance", - "items": { - "type": "string" - } - }, - "zone": { - "type": "string", - "description": "[Output Only] URL of the zone where the disk resides." - } - } - }, - "DiskAggregatedList": { - "id": "DiskAggregatedList", - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "object", - "description": "A list of DisksScopedList resources.", - "additionalProperties": { - "$ref": "DisksScopedList", - "description": "[Output Only] Name of the scope containing this set of disks." - } - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#diskAggregatedList for aggregated lists of persistent disks.", - "default": "compute#diskAggregatedList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "DiskList": { - "id": "DiskList", - "type": "object", - "description": "A list of Disk resources.", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "array", - "description": "A list of Disk resources.", - "items": { - "$ref": "Disk" - } - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#diskList for lists of disks.", - "default": "compute#diskList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "DiskMoveRequest": { - "id": "DiskMoveRequest", - "type": "object", - "properties": { - "destinationZone": { - "type": "string", - "description": "The URL of the destination zone to move the disk. This can be a full or partial URL. For example, the following are all valid URLs to a zone: \n- https://www.googleapis.com/compute/v1/projects/project/zones/zone \n- projects/project/zones/zone \n- zones/zone" - }, - "targetDisk": { - "type": "string", - "description": "The URL of the target disk to move. This can be a full or partial URL. For example, the following are all valid URLs to a disk: \n- https://www.googleapis.com/compute/v1/projects/project/zones/zone/disks/disk \n- projects/project/zones/zone/disks/disk \n- zones/zone/disks/disk" - } - } - }, - "DiskType": { - "id": "DiskType", - "type": "object", - "description": "A DiskType resource. (== resource_for beta.diskTypes ==) (== resource_for v1.diskTypes ==)", - "properties": { - "creationTimestamp": { - "type": "string", - "description": "[Output Only] Creation timestamp in RFC3339 text format." - }, - "defaultDiskSizeGb": { - "type": "string", - "description": "[Output Only] Server-defined default disk size in GB.", - "format": "int64" - }, - "deprecated": { - "$ref": "DeprecationStatus", - "description": "[Output Only] The deprecation status associated with this disk type." - }, - "description": { - "type": "string", - "description": "[Output Only] An optional description of this resource." - }, - "id": { - "type": "string", - "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", - "format": "uint64" - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of the resource. Always compute#diskType for disk types.", - "default": "compute#diskType" - }, - "name": { - "type": "string", - "description": "[Output Only] Name of the resource.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for the resource." - }, - "validDiskSize": { - "type": "string", - "description": "[Output Only] An optional textual description of the valid disk size, such as \"10GB-10TB\"." - }, - "zone": { - "type": "string", - "description": "[Output Only] URL of the zone where the disk type resides." - } - } - }, - "DiskTypeAggregatedList": { - "id": "DiskTypeAggregatedList", - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "object", - "description": "A list of DiskTypesScopedList resources.", - "additionalProperties": { - "$ref": "DiskTypesScopedList", - "description": "[Output Only] Name of the scope containing this set of disk types." - } - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#diskTypeAggregatedList.", - "default": "compute#diskTypeAggregatedList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "DiskTypeList": { - "id": "DiskTypeList", - "type": "object", - "description": "Contains a list of disk types.", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "array", - "description": "A list of DiskType resources.", - "items": { - "$ref": "DiskType" - } - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#diskTypeList for disk types.", - "default": "compute#diskTypeList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "DiskTypesScopedList": { - "id": "DiskTypesScopedList", - "type": "object", - "properties": { - "diskTypes": { - "type": "array", - "description": "[Output Only] List of disk types contained in this scope.", - "items": { - "$ref": "DiskType" - } - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning which replaces the list of disk types when the list is empty.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "DisksResizeRequest": { - "id": "DisksResizeRequest", - "type": "object", - "properties": { - "sizeGb": { - "type": "string", - "description": "The new size of the persistent disk, which is specified in GB.", - "format": "int64" - } - } - }, - "DisksScopedList": { - "id": "DisksScopedList", - "type": "object", - "properties": { - "disks": { - "type": "array", - "description": "[Output Only] List of disks contained in this scope.", - "items": { - "$ref": "Disk" - } - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning which replaces the list of disks when the list is empty.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "Firewall": { - "id": "Firewall", - "type": "object", - "description": "Represents a Firewall resource.", - "properties": { - "allowed": { - "type": "array", - "description": "The list of ALLOW rules specified by this firewall. Each rule specifies a protocol and port-range tuple that describes a permitted connection.", - "items": { - "type": "object", - "properties": { - "IPProtocol": { - "type": "string", - "description": "The IP protocol to which this rule applies. The protocol type is required when creating a firewall rule. This value can either be one of the following well known protocol strings (tcp, udp, icmp, esp, ah, ipip, sctp), or the IP protocol number." - }, - "ports": { - "type": "array", - "description": "An optional list of ports to which this rule applies. This field is only applicable for UDP or TCP protocol. Each entry must be either an integer or a range. If not specified, this rule applies to connections through any port.\n\nExample inputs include: [\"22\"], [\"80\",\"443\"], and [\"12345-12349\"].", - "items": { - "type": "string" - } - } - } - } - }, - "creationTimestamp": { - "type": "string", - "description": "[Output Only] Creation timestamp in RFC3339 text format." - }, - "denied": { - "type": "array", - "description": "The list of DENY rules specified by this firewall. Each rule specifies a protocol and port-range tuple that describes a permitted connection.", - "items": { - "type": "object", - "properties": { - "IPProtocol": { - "type": "string", - "description": "The IP protocol to which this rule applies. The protocol type is required when creating a firewall rule. This value can either be one of the following well known protocol strings (tcp, udp, icmp, esp, ah, ipip, sctp), or the IP protocol number." - }, - "ports": { - "type": "array", - "description": "An optional list of ports to which this rule applies. This field is only applicable for UDP or TCP protocol. Each entry must be either an integer or a range. If not specified, this rule applies to connections through any port.\n\nExample inputs include: [\"22\"], [\"80\",\"443\"], and [\"12345-12349\"].", - "items": { - "type": "string" - } - } - } - } - }, - "description": { - "type": "string", - "description": "An optional description of this resource. Provide this property when you create the resource." - }, - "destinationRanges": { - "type": "array", - "description": "If destination ranges are specified, the firewall will apply only to traffic that has destination IP address in these ranges. These ranges must be expressed in CIDR format. Only IPv4 is supported.", - "items": { - "type": "string" - } - }, - "direction": { - "type": "string", - "description": "Direction of traffic to which this firewall applies; default is INGRESS. Note: For INGRESS traffic, it is NOT supported to specify destinationRanges; For EGRESS traffic, it is NOT supported to specify sourceRanges OR sourceTags.", - "enum": [ - "EGRESS", - "INGRESS" - ], - "enumDescriptions": [ - "", - "" - ] - }, - "id": { - "type": "string", - "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", - "format": "uint64" - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of the resource. Always compute#firewall for firewall rules.", - "default": "compute#firewall" - }, - "name": { - "type": "string", - "description": "Name of the resource; provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "annotations": { - "required": [ - "compute.firewalls.insert", - "compute.firewalls.patch" - ] - } - }, - "network": { - "type": "string", - "description": "URL of the network resource for this firewall rule. If not specified when creating a firewall rule, the default network is used:\nglobal/networks/default\nIf you choose to specify this property, you can specify the network as a full or partial URL. For example, the following are all valid URLs: \n- https://www.googleapis.com/compute/v1/projects/myproject/global/networks/my-network \n- projects/myproject/global/networks/my-network \n- global/networks/default" - }, - "priority": { - "type": "integer", - "description": "Priority for this rule. This is an integer between 0 and 65535, both inclusive. When not specified, the value assumed is 1000. Relative priorities determine precedence of conflicting rules. Lower value of priority implies higher precedence (eg, a rule with priority 0 has higher precedence than a rule with priority 1). DENY rules take precedence over ALLOW rules having equal priority.", - "format": "int32" - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for the resource." - }, - "sourceRanges": { - "type": "array", - "description": "If source ranges are specified, the firewall will apply only to traffic that has source IP address in these ranges. These ranges must be expressed in CIDR format. One or both of sourceRanges and sourceTags may be set. If both properties are set, the firewall will apply to traffic that has source IP address within sourceRanges OR the source IP that belongs to a tag listed in the sourceTags property. The connection does not need to match both properties for the firewall to apply. Only IPv4 is supported.", - "items": { - "type": "string" - } - }, - "sourceServiceAccounts": { - "type": "array", - "description": "If source service accounts are specified, the firewall will apply only to traffic originating from an instance with a service account in this list. Source service accounts cannot be used to control traffic to an instance's external IP address because service accounts are associated with an instance, not an IP address. sourceRanges can be set at the same time as sourceServiceAccounts. If both are set, the firewall will apply to traffic that has source IP address within sourceRanges OR the source IP belongs to an instance with service account listed in sourceServiceAccount. The connection does not need to match both properties for the firewall to apply. sourceServiceAccounts cannot be used at the same time as sourceTags or targetTags.", - "items": { - "type": "string" - } - }, - "sourceTags": { - "type": "array", - "description": "If source tags are specified, the firewall rule applies only to traffic with source IPs that match the primary network interfaces of VM instances that have the tag and are in the same VPC network. Source tags cannot be used to control traffic to an instance's external IP address, it only applies to traffic between instances in the same virtual network. Because tags are associated with instances, not IP addresses. One or both of sourceRanges and sourceTags may be set. If both properties are set, the firewall will apply to traffic that has source IP address within sourceRanges OR the source IP that belongs to a tag listed in the sourceTags property. The connection does not need to match both properties for the firewall to apply.", - "items": { - "type": "string" - } - }, - "targetServiceAccounts": { - "type": "array", - "description": "A list of service accounts indicating sets of instances located in the network that may make network connections as specified in allowed[]. targetServiceAccounts cannot be used at the same time as targetTags or sourceTags. If neither targetServiceAccounts nor targetTags are specified, the firewall rule applies to all instances on the specified network.", - "items": { - "type": "string" - } - }, - "targetTags": { - "type": "array", - "description": "A list of tags that controls which instances the firewall rule applies to. If targetTags are specified, then the firewall rule applies only to instances in the VPC network that have one of those tags. If no targetTags are specified, the firewall rule applies to all instances on the specified network.", - "items": { - "type": "string" - } - } - } - }, - "FirewallList": { - "id": "FirewallList", - "type": "object", - "description": "Contains a list of firewalls.", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "array", - "description": "A list of Firewall resources.", - "items": { - "$ref": "Firewall" - } - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#firewallList for lists of firewalls.", - "default": "compute#firewallList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "ForwardingRule": { - "id": "ForwardingRule", - "type": "object", - "description": "A ForwardingRule resource. A ForwardingRule resource specifies which pool of target virtual machines to forward a packet to if it matches the given [IPAddress, IPProtocol, ports] tuple. (== resource_for beta.forwardingRules ==) (== resource_for v1.forwardingRules ==) (== resource_for beta.globalForwardingRules ==) (== resource_for v1.globalForwardingRules ==) (== resource_for beta.regionForwardingRules ==) (== resource_for v1.regionForwardingRules ==)", - "properties": { - "IPAddress": { - "type": "string", - "description": "The IP address that this forwarding rule is serving on behalf of.\n\nAddresses are restricted based on the forwarding rule's load balancing scheme (EXTERNAL or INTERNAL) and scope (global or regional).\n\nWhen the load balancing scheme is EXTERNAL, for global forwarding rules, the address must be a global IP, and for regional forwarding rules, the address must live in the same region as the forwarding rule. If this field is empty, an ephemeral IPv4 address from the same scope (global or regional) will be assigned. A regional forwarding rule supports IPv4 only. A global forwarding rule supports either IPv4 or IPv6.\n\nWhen the load balancing scheme is INTERNAL, this can only be an RFC 1918 IP address belonging to the network/subnet configured for the forwarding rule. By default, if this field is empty, an ephemeral internal IP address will be automatically allocated from the IP range of the subnet or network configured for this forwarding rule.\n\nAn address can be specified either by a literal IP address or a URL reference to an existing Address resource. The following examples are all valid: \n- 100.1.2.3 \n- https://www.googleapis.com/compute/v1/projects/project/regions/region/addresses/address \n- projects/project/regions/region/addresses/address \n- regions/region/addresses/address \n- global/addresses/address \n- address" - }, - "IPProtocol": { - "type": "string", - "description": "The IP protocol to which this rule applies. Valid options are TCP, UDP, ESP, AH, SCTP or ICMP.\n\nWhen the load balancing scheme is INTERNAL, only TCP and UDP are valid.", - "enum": [ - "AH", - "ESP", - "ICMP", - "SCTP", - "TCP", - "UDP" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "" - ] - }, - "backendService": { - "type": "string", - "description": "This field is not used for external load balancing.\n\nFor internal load balancing, this field identifies the BackendService resource to receive the matched traffic." - }, - "creationTimestamp": { - "type": "string", - "description": "[Output Only] Creation timestamp in RFC3339 text format." - }, - "description": { - "type": "string", - "description": "An optional description of this resource. Provide this property when you create the resource." - }, - "id": { - "type": "string", - "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", - "format": "uint64" - }, - "ipVersion": { - "type": "string", - "description": "The IP Version that will be used by this forwarding rule. Valid options are IPV4 or IPV6. This can only be specified for a global forwarding rule.", - "enum": [ - "IPV4", - "IPV6", - "UNSPECIFIED_VERSION" - ], - "enumDescriptions": [ - "", - "", - "" - ] - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of the resource. Always compute#forwardingRule for Forwarding Rule resources.", - "default": "compute#forwardingRule" - }, - "loadBalancingScheme": { - "type": "string", - "description": "This signifies what the ForwardingRule will be used for and can only take the following values: INTERNAL, EXTERNAL The value of INTERNAL means that this will be used for Internal Network Load Balancing (TCP, UDP). The value of EXTERNAL means that this will be used for External Load Balancing (HTTP(S) LB, External TCP/UDP LB, SSL Proxy)", - "enum": [ - "EXTERNAL", - "INTERNAL", - "INVALID" - ], - "enumDescriptions": [ - "", - "", - "" - ] - }, - "name": { - "type": "string", - "description": "Name of the resource; provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" - }, - "network": { - "type": "string", - "description": "This field is not used for external load balancing.\n\nFor internal load balancing, this field identifies the network that the load balanced IP should belong to for this Forwarding Rule. If this field is not specified, the default network will be used." - }, - "portRange": { - "type": "string", - "description": "This field is used along with the target field for TargetHttpProxy, TargetHttpsProxy, TargetSslProxy, TargetTcpProxy, TargetVpnGateway, TargetPool, TargetInstance.\n\nApplicable only when IPProtocol is TCP, UDP, or SCTP, only packets addressed to ports in the specified range will be forwarded to target. Forwarding rules with the same [IPAddress, IPProtocol] pair must have disjoint port ranges.\n\nSome types of forwarding target have constraints on the acceptable ports: \n- TargetHttpProxy: 80, 8080 \n- TargetHttpsProxy: 443 \n- TargetTcpProxy: 25, 43, 110, 143, 195, 443, 465, 587, 700, 993, 995, 1883, 5222 \n- TargetSslProxy: 25, 43, 110, 143, 195, 443, 465, 587, 700, 993, 995, 1883, 5222 \n- TargetVpnGateway: 500, 4500\n-" - }, - "ports": { - "type": "array", - "description": "This field is used along with the backend_service field for internal load balancing.\n\nWhen the load balancing scheme is INTERNAL, a single port or a comma separated list of ports can be configured. Only packets addressed to these ports will be forwarded to the backends configured with this forwarding rule.\n\nYou may specify a maximum of up to 5 ports.", - "items": { - "type": "string" - } - }, - "region": { - "type": "string", - "description": "[Output Only] URL of the region where the regional forwarding rule resides. This field is not applicable to global forwarding rules." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for the resource." - }, - "subnetwork": { - "type": "string", - "description": "This field is not used for external load balancing.\n\nFor internal load balancing, this field identifies the subnetwork that the load balanced IP should belong to for this Forwarding Rule.\n\nIf the network specified is in auto subnet mode, this field is optional. However, if the network is in custom subnet mode, a subnetwork must be specified." - }, - "target": { - "type": "string", - "description": "The URL of the target resource to receive the matched traffic. For regional forwarding rules, this target must live in the same region as the forwarding rule. For global forwarding rules, this target must be a global load balancing resource. The forwarded traffic must be of a type appropriate to the target object.\n\nThis field is not used for internal load balancing." - } - } - }, - "ForwardingRuleAggregatedList": { - "id": "ForwardingRuleAggregatedList", - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "object", - "description": "A list of ForwardingRulesScopedList resources.", - "additionalProperties": { - "$ref": "ForwardingRulesScopedList", - "description": "Name of the scope containing this set of addresses." - } - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#forwardingRuleAggregatedList for lists of forwarding rules.", - "default": "compute#forwardingRuleAggregatedList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "ForwardingRuleList": { - "id": "ForwardingRuleList", - "type": "object", - "description": "Contains a list of ForwardingRule resources.", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "array", - "description": "A list of ForwardingRule resources.", - "items": { - "$ref": "ForwardingRule" - } - }, - "kind": { - "type": "string", - "description": "Type of resource.", - "default": "compute#forwardingRuleList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "ForwardingRulesScopedList": { - "id": "ForwardingRulesScopedList", - "type": "object", - "properties": { - "forwardingRules": { - "type": "array", - "description": "List of forwarding rules contained in this scope.", - "items": { - "$ref": "ForwardingRule" - } - }, - "warning": { - "type": "object", - "description": "Informational warning which replaces the list of forwarding rules when the list is empty.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "GlobalSetLabelsRequest": { - "id": "GlobalSetLabelsRequest", - "type": "object", - "properties": { - "labelFingerprint": { - "type": "string", - "description": "The fingerprint of the previous set of labels for this resource, used to detect conflicts. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update labels. You must always provide an up-to-date fingerprint hash when updating or changing labels. Make a get() request to the resource to get the latest fingerprint.", - "format": "byte" - }, - "labels": { - "type": "object", - "description": "A list of labels to apply for this resource. Each label key & value must comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash. For example, \"webserver-frontend\": \"images\". A label value can also be empty (e.g. \"my-label\": \"\").", - "additionalProperties": { - "type": "string" - } - } - } - }, - "GuestOsFeature": { - "id": "GuestOsFeature", - "type": "object", - "description": "Guest OS features.", - "properties": { - "type": { - "type": "string", - "description": "The ID of a supported feature. Read Enabling guest operating system features to see a list of available options.", - "enum": [ - "FEATURE_TYPE_UNSPECIFIED", - "MULTI_IP_SUBNET", - "VIRTIO_SCSI_MULTIQUEUE", - "WINDOWS" - ], - "enumDescriptions": [ - "", - "", - "", - "" - ] - } - } - }, - "HTTPHealthCheck": { - "id": "HTTPHealthCheck", - "type": "object", - "properties": { - "host": { - "type": "string", - "description": "The value of the host header in the HTTP health check request. If left empty (default value), the IP on behalf of which this health check is performed will be used." - }, - "port": { - "type": "integer", - "description": "The TCP port number for the health check request. The default value is 80. Valid values are 1 through 65535.", - "format": "int32" - }, - "portName": { - "type": "string", - "description": "Port name as defined in InstanceGroup#NamedPort#name. If both port and port_name are defined, port takes precedence." - }, - "proxyHeader": { - "type": "string", - "description": "Specifies the type of proxy header to append before sending data to the backend, either NONE or PROXY_V1. The default is NONE.", - "enum": [ - "NONE", - "PROXY_V1" - ], - "enumDescriptions": [ - "", - "" - ] - }, - "requestPath": { - "type": "string", - "description": "The request path of the HTTP health check request. The default value is /." - } - } - }, - "HTTPSHealthCheck": { - "id": "HTTPSHealthCheck", - "type": "object", - "properties": { - "host": { - "type": "string", - "description": "The value of the host header in the HTTPS health check request. If left empty (default value), the IP on behalf of which this health check is performed will be used." - }, - "port": { - "type": "integer", - "description": "The TCP port number for the health check request. The default value is 443. Valid values are 1 through 65535.", - "format": "int32" - }, - "portName": { - "type": "string", - "description": "Port name as defined in InstanceGroup#NamedPort#name. If both port and port_name are defined, port takes precedence." - }, - "proxyHeader": { - "type": "string", - "description": "Specifies the type of proxy header to append before sending data to the backend, either NONE or PROXY_V1. The default is NONE.", - "enum": [ - "NONE", - "PROXY_V1" - ], - "enumDescriptions": [ - "", - "" - ] - }, - "requestPath": { - "type": "string", - "description": "The request path of the HTTPS health check request. The default value is /." - } - } - }, - "HealthCheck": { - "id": "HealthCheck", - "type": "object", - "description": "An HealthCheck resource. This resource defines a template for how individual virtual machines should be checked for health, via one of the supported protocols.", - "properties": { - "checkIntervalSec": { - "type": "integer", - "description": "How often (in seconds) to send a health check. The default value is 5 seconds.", - "format": "int32" - }, - "creationTimestamp": { - "type": "string", - "description": "[Output Only] Creation timestamp in 3339 text format." - }, - "description": { - "type": "string", - "description": "An optional description of this resource. Provide this property when you create the resource." - }, - "healthyThreshold": { - "type": "integer", - "description": "A so-far unhealthy instance will be marked healthy after this many consecutive successes. The default value is 2.", - "format": "int32" - }, - "httpHealthCheck": { - "$ref": "HTTPHealthCheck" - }, - "httpsHealthCheck": { - "$ref": "HTTPSHealthCheck" - }, - "id": { - "type": "string", - "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", - "format": "uint64" - }, - "kind": { - "type": "string", - "description": "Type of the resource.", - "default": "compute#healthCheck" - }, - "name": { - "type": "string", - "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for the resource." - }, - "sslHealthCheck": { - "$ref": "SSLHealthCheck" - }, - "tcpHealthCheck": { - "$ref": "TCPHealthCheck" - }, - "timeoutSec": { - "type": "integer", - "description": "How long (in seconds) to wait before claiming failure. The default value is 5 seconds. It is invalid for timeoutSec to have greater value than checkIntervalSec.", - "format": "int32" - }, - "type": { - "type": "string", - "description": "Specifies the type of the healthCheck, either TCP, SSL, HTTP or HTTPS. If not specified, the default is TCP. Exactly one of the protocol-specific health check field must be specified, which must match type field.", - "enum": [ - "HTTP", - "HTTPS", - "INVALID", - "SSL", - "TCP" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "" - ] - }, - "unhealthyThreshold": { - "type": "integer", - "description": "A so-far healthy instance will be marked unhealthy after this many consecutive failures. The default value is 2.", - "format": "int32" - } - } - }, - "HealthCheckList": { - "id": "HealthCheckList", - "type": "object", - "description": "Contains a list of HealthCheck resources.", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "array", - "description": "A list of HealthCheck resources.", - "items": { - "$ref": "HealthCheck" - } - }, - "kind": { - "type": "string", - "description": "Type of resource.", - "default": "compute#healthCheckList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "HealthCheckReference": { - "id": "HealthCheckReference", - "type": "object", - "description": "A full or valid partial URL to a health check. For example, the following are valid URLs: \n- https://www.googleapis.com/compute/beta/projects/project-id/global/httpHealthChecks/health-check \n- projects/project-id/global/httpHealthChecks/health-check \n- global/httpHealthChecks/health-check", - "properties": { - "healthCheck": { - "type": "string" - } - } - }, - "HealthStatus": { - "id": "HealthStatus", - "type": "object", - "properties": { - "healthState": { - "type": "string", - "description": "Health state of the instance.", - "enum": [ - "HEALTHY", - "UNHEALTHY" - ], - "enumDescriptions": [ - "", - "" - ] - }, - "instance": { - "type": "string", - "description": "URL of the instance resource." - }, - "ipAddress": { - "type": "string", - "description": "The IP address represented by this resource." - }, - "port": { - "type": "integer", - "description": "The port on the instance.", - "format": "int32" - } - } - }, - "HostRule": { - "id": "HostRule", - "type": "object", - "description": "UrlMaps A host-matching rule for a URL. If matched, will use the named PathMatcher to select the BackendService.", - "properties": { - "description": { - "type": "string", - "description": "An optional description of this resource. Provide this property when you create the resource." - }, - "hosts": { - "type": "array", - "description": "The list of host patterns to match. They must be valid hostnames, except * will match any string of ([a-z0-9-.]*). In that case, * must be the first character and must be followed in the pattern by either - or ..", - "items": { - "type": "string" - } - }, - "pathMatcher": { - "type": "string", - "description": "The name of the PathMatcher to use to match the path portion of the URL if the hostRule matches the URL's host portion." - } - } - }, - "HttpHealthCheck": { - "id": "HttpHealthCheck", - "type": "object", - "description": "An HttpHealthCheck resource. This resource defines a template for how individual instances should be checked for health, via HTTP.", - "properties": { - "checkIntervalSec": { - "type": "integer", - "description": "How often (in seconds) to send a health check. The default value is 5 seconds.", - "format": "int32" - }, - "creationTimestamp": { - "type": "string", - "description": "[Output Only] Creation timestamp in RFC3339 text format." - }, - "description": { - "type": "string", - "description": "An optional description of this resource. Provide this property when you create the resource." - }, - "healthyThreshold": { - "type": "integer", - "description": "A so-far unhealthy instance will be marked healthy after this many consecutive successes. The default value is 2.", - "format": "int32" - }, - "host": { - "type": "string", - "description": "The value of the host header in the HTTP health check request. If left empty (default value), the public IP on behalf of which this health check is performed will be used." - }, - "id": { - "type": "string", - "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", - "format": "uint64" - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of the resource. Always compute#httpHealthCheck for HTTP health checks.", - "default": "compute#httpHealthCheck" - }, - "name": { - "type": "string", - "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" - }, - "port": { - "type": "integer", - "description": "The TCP port number for the HTTP health check request. The default value is 80.", - "format": "int32" - }, - "requestPath": { - "type": "string", - "description": "The request path of the HTTP health check request. The default value is /." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for the resource." - }, - "timeoutSec": { - "type": "integer", - "description": "How long (in seconds) to wait before claiming failure. The default value is 5 seconds. It is invalid for timeoutSec to have greater value than checkIntervalSec.", - "format": "int32" - }, - "unhealthyThreshold": { - "type": "integer", - "description": "A so-far healthy instance will be marked unhealthy after this many consecutive failures. The default value is 2.", - "format": "int32" - } - } - }, - "HttpHealthCheckList": { - "id": "HttpHealthCheckList", - "type": "object", - "description": "Contains a list of HttpHealthCheck resources.", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "array", - "description": "A list of HttpHealthCheck resources.", - "items": { - "$ref": "HttpHealthCheck" - } - }, - "kind": { - "type": "string", - "description": "Type of resource.", - "default": "compute#httpHealthCheckList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "HttpsHealthCheck": { - "id": "HttpsHealthCheck", - "type": "object", - "description": "An HttpsHealthCheck resource. This resource defines a template for how individual instances should be checked for health, via HTTPS.", - "properties": { - "checkIntervalSec": { - "type": "integer", - "description": "How often (in seconds) to send a health check. The default value is 5 seconds.", - "format": "int32" - }, - "creationTimestamp": { - "type": "string", - "description": "[Output Only] Creation timestamp in RFC3339 text format." - }, - "description": { - "type": "string", - "description": "An optional description of this resource. Provide this property when you create the resource." - }, - "healthyThreshold": { - "type": "integer", - "description": "A so-far unhealthy instance will be marked healthy after this many consecutive successes. The default value is 2.", - "format": "int32" - }, - "host": { - "type": "string", - "description": "The value of the host header in the HTTPS health check request. If left empty (default value), the public IP on behalf of which this health check is performed will be used." - }, - "id": { - "type": "string", - "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", - "format": "uint64" - }, - "kind": { - "type": "string", - "description": "Type of the resource.", - "default": "compute#httpsHealthCheck" - }, - "name": { - "type": "string", - "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" - }, - "port": { - "type": "integer", - "description": "The TCP port number for the HTTPS health check request. The default value is 443.", - "format": "int32" - }, - "requestPath": { - "type": "string", - "description": "The request path of the HTTPS health check request. The default value is \"/\"." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for the resource." - }, - "timeoutSec": { - "type": "integer", - "description": "How long (in seconds) to wait before claiming failure. The default value is 5 seconds. It is invalid for timeoutSec to have a greater value than checkIntervalSec.", - "format": "int32" - }, - "unhealthyThreshold": { - "type": "integer", - "description": "A so-far healthy instance will be marked unhealthy after this many consecutive failures. The default value is 2.", - "format": "int32" - } - } - }, - "HttpsHealthCheckList": { - "id": "HttpsHealthCheckList", - "type": "object", - "description": "Contains a list of HttpsHealthCheck resources.", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "array", - "description": "A list of HttpsHealthCheck resources.", - "items": { - "$ref": "HttpsHealthCheck" - } - }, - "kind": { - "type": "string", - "description": "Type of resource.", - "default": "compute#httpsHealthCheckList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "Image": { - "id": "Image", - "type": "object", - "description": "An Image resource. (== resource_for beta.images ==) (== resource_for v1.images ==)", - "properties": { - "archiveSizeBytes": { - "type": "string", - "description": "Size of the image tar.gz archive stored in Google Cloud Storage (in bytes).", - "format": "int64" - }, - "creationTimestamp": { - "type": "string", - "description": "[Output Only] Creation timestamp in RFC3339 text format." - }, - "deprecated": { - "$ref": "DeprecationStatus", - "description": "The deprecation status associated with this image." - }, - "description": { - "type": "string", - "description": "An optional description of this resource. Provide this property when you create the resource." - }, - "diskSizeGb": { - "type": "string", - "description": "Size of the image when restored onto a persistent disk (in GB).", - "format": "int64" - }, - "family": { - "type": "string", - "description": "The name of the image family to which this image belongs. You can create disks by specifying an image family instead of a specific image name. The image family always returns its latest image that is not deprecated. The name of the image family must comply with RFC1035." - }, - "guestOsFeatures": { - "type": "array", - "description": "A list of features to enable on the guest operating system. Applicable only for bootable images. Read Enabling guest operating system features to see a list of available options.", - "items": { - "$ref": "GuestOsFeature" - } - }, - "id": { - "type": "string", - "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", - "format": "uint64" - }, - "imageEncryptionKey": { - "$ref": "CustomerEncryptionKey", - "description": "Encrypts the image using a customer-supplied encryption key.\n\nAfter you encrypt an image with a customer-supplied key, you must provide the same key if you use the image later (e.g. to create a disk from the image).\n\nCustomer-supplied encryption keys do not protect access to metadata of the disk.\n\nIf you do not provide an encryption key when creating the image, then the disk will be encrypted using an automatically generated key and you do not need to provide a key to use the image later." - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of the resource. Always compute#image for images.", - "default": "compute#image" - }, - "labelFingerprint": { - "type": "string", - "description": "A fingerprint for the labels being applied to this image, which is essentially a hash of the labels used for optimistic locking. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update labels. You must always provide an up-to-date fingerprint hash in order to update or change labels.\n\nTo see the latest fingerprint, make a get() request to retrieve an image.", - "format": "byte" - }, - "labels": { - "type": "object", - "description": "Labels to apply to this image. These can be later modified by the setLabels method.", - "additionalProperties": { - "type": "string" - } - }, - "licenses": { - "type": "array", - "description": "Any applicable license URI.", - "items": { - "type": "string" - } - }, - "name": { - "type": "string", - "description": "Name of the resource; provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "annotations": { - "required": [ - "compute.images.insert" - ] - } - }, - "rawDisk": { - "type": "object", - "description": "The parameters of the raw disk image.", - "properties": { - "containerType": { - "type": "string", - "description": "The format used to encode and transmit the block device, which should be TAR. This is just a container and transmission format and not a runtime format. Provided by the client when the disk image is created.", - "enum": [ - "TAR" - ], - "enumDescriptions": [ - "" - ] - }, - "sha1Checksum": { - "type": "string", - "description": "An optional SHA1 checksum of the disk image before unpackaging; provided by the client when the disk image is created.", - "pattern": "[a-f0-9]{40}" - }, - "source": { - "type": "string", - "description": "The full Google Cloud Storage URL where the disk image is stored. You must provide either this property or the sourceDisk property but not both.", - "annotations": { - "required": [ - "compute.images.insert" - ] - } - } - } - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for the resource." - }, - "sourceDisk": { - "type": "string", - "description": "URL of the source disk used to create this image. This can be a full or valid partial URL. You must provide either this property or the rawDisk.source property but not both to create an image. For example, the following are valid values: \n- https://www.googleapis.com/compute/v1/projects/project/zones/zone/disks/disk \n- projects/project/zones/zone/disks/disk \n- zones/zone/disks/disk" - }, - "sourceDiskEncryptionKey": { - "$ref": "CustomerEncryptionKey", - "description": "The customer-supplied encryption key of the source disk. Required if the source disk is protected by a customer-supplied encryption key." - }, - "sourceDiskId": { - "type": "string", - "description": "The ID value of the disk used to create this image. This value may be used to determine whether the image was taken from the current or a previous instance of a given disk name." - }, - "sourceImage": { - "type": "string", - "description": "URL of the source image used to create this image. This can be a full or valid partial URL. You must provide exactly one of: \n- this property, or \n- the rawDisk.source property, or \n- the sourceDisk property in order to create an image." - }, - "sourceImageEncryptionKey": { - "$ref": "CustomerEncryptionKey", - "description": "The customer-supplied encryption key of the source image. Required if the source image is protected by a customer-supplied encryption key." - }, - "sourceImageId": { - "type": "string", - "description": "[Output Only] The ID value of the image used to create this image. This value may be used to determine whether the image was taken from the current or a previous instance of a given image name." - }, - "sourceType": { - "type": "string", - "description": "The type of the image used to create this disk. The default and only value is RAW", - "default": "RAW", - "enum": [ - "RAW" - ], - "enumDescriptions": [ - "" - ] - }, - "status": { - "type": "string", - "description": "[Output Only] The status of the image. An image can be used to create other resources, such as instances, only after the image has been successfully created and the status is set to READY. Possible values are FAILED, PENDING, or READY.", - "enum": [ - "FAILED", - "PENDING", - "READY" - ], - "enumDescriptions": [ - "", - "", - "" - ] - } - } - }, - "ImageList": { - "id": "ImageList", - "type": "object", - "description": "Contains a list of images.", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "array", - "description": "A list of Image resources.", - "items": { - "$ref": "Image" - } - }, - "kind": { - "type": "string", - "description": "Type of resource.", - "default": "compute#imageList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "Instance": { - "id": "Instance", - "type": "object", - "description": "An Instance resource. (== resource_for beta.instances ==) (== resource_for v1.instances ==)", - "properties": { - "canIpForward": { - "type": "boolean", - "description": "Allows this instance to send and receive packets with non-matching destination or source IPs. This is required if you plan to use this instance to forward routes. For more information, see Enabling IP Forwarding." - }, - "cpuPlatform": { - "type": "string", - "description": "[Output Only] The CPU platform used by this instance." - }, - "creationTimestamp": { - "type": "string", - "description": "[Output Only] Creation timestamp in RFC3339 text format." - }, - "deletionProtection": { - "type": "boolean", - "description": "Whether the resource should be protected against deletion." - }, - "description": { - "type": "string", - "description": "An optional description of this resource. Provide this property when you create the resource." - }, - "disks": { - "type": "array", - "description": "Array of disks associated with this instance. Persistent disks must be created before you can assign them.", - "items": { - "$ref": "AttachedDisk" - } - }, - "guestAccelerators": { - "type": "array", - "description": "List of the type and count of accelerator cards attached to the instance.", - "items": { - "$ref": "AcceleratorConfig" - } - }, - "id": { - "type": "string", - "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", - "format": "uint64" - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of the resource. Always compute#instance for instances.", - "default": "compute#instance" - }, - "labelFingerprint": { - "type": "string", - "description": "A fingerprint for this request, which is essentially a hash of the metadata's contents and used for optimistic locking. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update metadata. You must always provide an up-to-date fingerprint hash in order to update or change metadata.\n\nTo see the latest fingerprint, make get() request to the instance.", - "format": "byte" - }, - "labels": { - "type": "object", - "description": "Labels to apply to this instance. These can be later modified by the setLabels method.", - "additionalProperties": { - "type": "string" - } - }, - "machineType": { - "type": "string", - "description": "Full or partial URL of the machine type resource to use for this instance, in the format: zones/zone/machineTypes/machine-type. This is provided by the client when the instance is created. For example, the following is a valid partial url to a predefined machine type:\n\nzones/us-central1-f/machineTypes/n1-standard-1 \n\nTo create a custom machine type, provide a URL to a machine type in the following format, where CPUS is 1 or an even number up to 32 (2, 4, 6, ... 24, etc), and MEMORY is the total memory for this instance. Memory must be a multiple of 256 MB and must be supplied in MB (e.g. 5 GB of memory is 5120 MB):\n\nzones/zone/machineTypes/custom-CPUS-MEMORY \n\nFor example: zones/us-central1-f/machineTypes/custom-4-5120 \n\nFor a full list of restrictions, read the Specifications for custom machine types.", - "annotations": { - "required": [ - "compute.instances.insert" - ] - } - }, - "metadata": { - "$ref": "Metadata", - "description": "The metadata key/value pairs assigned to this instance. This includes custom metadata and predefined keys." - }, - "minCpuPlatform": { - "type": "string", - "description": "Specifies a minimum CPU platform for the VM instance. Applicable values are the friendly names of CPU platforms, such as minCpuPlatform: \"Intel Haswell\" or minCpuPlatform: \"Intel Sandy Bridge\"." - }, - "name": { - "type": "string", - "description": "The name of the resource, provided by the client when initially creating the resource. The resource name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "annotations": { - "required": [ - "compute.instances.insert" - ] - } - }, - "networkInterfaces": { - "type": "array", - "description": "An array of network configurations for this instance. These specify how interfaces are configured to interact with other network services, such as connecting to the internet. Multiple interfaces are supported per instance.", - "items": { - "$ref": "NetworkInterface" - } - }, - "scheduling": { - "$ref": "Scheduling", - "description": "Sets the scheduling options for this instance." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "serviceAccounts": { - "type": "array", - "description": "A list of service accounts, with their specified scopes, authorized for this instance. Only one service account per VM instance is supported.\n\nService accounts generate access tokens that can be accessed through the metadata server and used to authenticate applications on the instance. See Service Accounts for more information.", - "items": { - "$ref": "ServiceAccount" - } - }, - "startRestricted": { - "type": "boolean", - "description": "[Output Only] Whether a VM has been restricted for start because Compute Engine has detected suspicious activity." - }, - "status": { - "type": "string", - "description": "[Output Only] The status of the instance. One of the following values: PROVISIONING, STAGING, RUNNING, STOPPING, STOPPED, SUSPENDING, SUSPENDED, and TERMINATED.", - "enum": [ - "PROVISIONING", - "RUNNING", - "STAGING", - "STOPPED", - "STOPPING", - "SUSPENDED", - "SUSPENDING", - "TERMINATED" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "statusMessage": { - "type": "string", - "description": "[Output Only] An optional, human-readable explanation of the status." - }, - "tags": { - "$ref": "Tags", - "description": "A list of tags to apply to this instance. Tags are used to identify valid sources or targets for network firewalls and are specified by the client during instance creation. The tags can be later modified by the setTags method. Each tag within the list must comply with RFC1035." - }, - "zone": { - "type": "string", - "description": "[Output Only] URL of the zone where the instance resides." - } - } - }, - "InstanceAggregatedList": { - "id": "InstanceAggregatedList", - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "object", - "description": "A list of InstancesScopedList resources.", - "additionalProperties": { - "$ref": "InstancesScopedList", - "description": "[Output Only] Name of the scope containing this set of instances." - } - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#instanceAggregatedList for aggregated lists of Instance resources.", - "default": "compute#instanceAggregatedList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "InstanceGroup": { - "id": "InstanceGroup", - "type": "object", - "description": "InstanceGroups (== resource_for beta.instanceGroups ==) (== resource_for v1.instanceGroups ==) (== resource_for beta.regionInstanceGroups ==) (== resource_for v1.regionInstanceGroups ==)", - "properties": { - "creationTimestamp": { - "type": "string", - "description": "[Output Only] The creation timestamp for this instance group in RFC3339 text format." - }, - "description": { - "type": "string", - "description": "An optional description of this resource. Provide this property when you create the resource." - }, - "fingerprint": { - "type": "string", - "description": "[Output Only] The fingerprint of the named ports. The system uses this fingerprint to detect conflicts when multiple users change the named ports concurrently.", - "format": "byte" - }, - "id": { - "type": "string", - "description": "[Output Only] A unique identifier for this instance group, generated by the server.", - "format": "uint64" - }, - "kind": { - "type": "string", - "description": "[Output Only] The resource type, which is always compute#instanceGroup for instance groups.", - "default": "compute#instanceGroup" - }, - "name": { - "type": "string", - "description": "The name of the instance group. The name must be 1-63 characters long, and comply with RFC1035.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "annotations": { - "required": [ - "compute.instanceGroupManagers.insert" - ] - } - }, - "namedPorts": { - "type": "array", - "description": "Assigns a name to a port number. For example: {name: \"http\", port: 80}\n\nThis allows the system to reference ports by the assigned name instead of a port number. Named ports can also contain multiple ports. For example: [{name: \"http\", port: 80},{name: \"http\", port: 8080}] \n\nNamed ports apply to all instances in this instance group.", - "items": { - "$ref": "NamedPort" - } - }, - "network": { - "type": "string", - "description": "The URL of the network to which all instances in the instance group belong." - }, - "region": { - "type": "string", - "description": "The URL of the region where the instance group is located (for regional resources)." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] The URL for this instance group. The server generates this URL." - }, - "size": { - "type": "integer", - "description": "[Output Only] The total number of instances in the instance group.", - "format": "int32" - }, - "subnetwork": { - "type": "string", - "description": "The URL of the subnetwork to which all instances in the instance group belong." - }, - "zone": { - "type": "string", - "description": "[Output Only] The URL of the zone where the instance group is located (for zonal resources)." - } - } - }, - "InstanceGroupAggregatedList": { - "id": "InstanceGroupAggregatedList", - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "object", - "description": "A list of InstanceGroupsScopedList resources.", - "additionalProperties": { - "$ref": "InstanceGroupsScopedList", - "description": "The name of the scope that contains this set of instance groups." - } - }, - "kind": { - "type": "string", - "description": "[Output Only] The resource type, which is always compute#instanceGroupAggregatedList for aggregated lists of instance groups.", - "default": "compute#instanceGroupAggregatedList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "InstanceGroupList": { - "id": "InstanceGroupList", - "type": "object", - "description": "A list of InstanceGroup resources.", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "array", - "description": "A list of InstanceGroup resources.", - "items": { - "$ref": "InstanceGroup" - } - }, - "kind": { - "type": "string", - "description": "[Output Only] The resource type, which is always compute#instanceGroupList for instance group lists.", - "default": "compute#instanceGroupList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "InstanceGroupManager": { - "id": "InstanceGroupManager", - "type": "object", - "description": "An Instance Group Manager resource. (== resource_for beta.instanceGroupManagers ==) (== resource_for v1.instanceGroupManagers ==) (== resource_for beta.regionInstanceGroupManagers ==) (== resource_for v1.regionInstanceGroupManagers ==)", - "properties": { - "baseInstanceName": { - "type": "string", - "description": "The base instance name to use for instances in this group. The value must be 1-58 characters long. Instances are named by appending a hyphen and a random four-character string to the base instance name. The base instance name must comply with RFC1035.", - "pattern": "[a-z][-a-z0-9]{0,57}", - "annotations": { - "required": [ - "compute.instanceGroupManagers.insert" - ] - } - }, - "creationTimestamp": { - "type": "string", - "description": "[Output Only] The creation timestamp for this managed instance group in RFC3339 text format." - }, - "currentActions": { - "$ref": "InstanceGroupManagerActionsSummary", - "description": "[Output Only] The list of instance actions and the number of instances in this managed instance group that are scheduled for each of those actions." - }, - "description": { - "type": "string", - "description": "An optional description of this resource. Provide this property when you create the resource." - }, - "fingerprint": { - "type": "string", - "description": "[Output Only] The fingerprint of the resource data. You can use this optional field for optimistic locking when you update the resource.", - "format": "byte" - }, - "id": { - "type": "string", - "description": "[Output Only] A unique identifier for this resource type. The server generates this identifier.", - "format": "uint64" - }, - "instanceGroup": { - "type": "string", - "description": "[Output Only] The URL of the Instance Group resource." - }, - "instanceTemplate": { - "type": "string", - "description": "The URL of the instance template that is specified for this managed instance group. The group uses this template to create all new instances in the managed instance group." - }, - "kind": { - "type": "string", - "description": "[Output Only] The resource type, which is always compute#instanceGroupManager for managed instance groups.", - "default": "compute#instanceGroupManager" - }, - "name": { - "type": "string", - "description": "The name of the managed instance group. The name must be 1-63 characters long, and comply with RFC1035.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "annotations": { - "required": [ - "compute.instanceGroupManagers.insert", - "compute.regionInstanceGroupManagers.insert" - ] - } - }, - "namedPorts": { - "type": "array", - "description": "Named ports configured for the Instance Groups complementary to this Instance Group Manager.", - "items": { - "$ref": "NamedPort" - } - }, - "region": { - "type": "string", - "description": "[Output Only] The URL of the region where the managed instance group resides (for regional resources)." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] The URL for this managed instance group. The server defines this URL." - }, - "targetPools": { - "type": "array", - "description": "The URLs for all TargetPool resources to which instances in the instanceGroup field are added. The target pools automatically apply to all of the instances in the managed instance group.", - "items": { - "type": "string" - } - }, - "targetSize": { - "type": "integer", - "description": "The target number of running instances for this managed instance group. Deleting or abandoning instances reduces this number. Resizing the group changes this number.", - "format": "int32", - "annotations": { - "required": [ - "compute.instanceGroupManagers.insert", - "compute.regionInstanceGroupManagers.insert" - ] - } - }, - "zone": { - "type": "string", - "description": "[Output Only] The URL of the zone where the managed instance group is located (for zonal resources)." - } - } - }, - "InstanceGroupManagerActionsSummary": { - "id": "InstanceGroupManagerActionsSummary", - "type": "object", - "properties": { - "abandoning": { - "type": "integer", - "description": "[Output Only] The total number of instances in the managed instance group that are scheduled to be abandoned. Abandoning an instance removes it from the managed instance group without deleting it.", - "format": "int32" - }, - "creating": { - "type": "integer", - "description": "[Output Only] The number of instances in the managed instance group that are scheduled to be created or are currently being created. If the group fails to create any of these instances, it tries again until it creates the instance successfully.\n\nIf you have disabled creation retries, this field will not be populated; instead, the creatingWithoutRetries field will be populated.", - "format": "int32" - }, - "creatingWithoutRetries": { - "type": "integer", - "description": "[Output Only] The number of instances that the managed instance group will attempt to create. The group attempts to create each instance only once. If the group fails to create any of these instances, it decreases the group's targetSize value accordingly.", - "format": "int32" - }, - "deleting": { - "type": "integer", - "description": "[Output Only] The number of instances in the managed instance group that are scheduled to be deleted or are currently being deleted.", - "format": "int32" - }, - "none": { - "type": "integer", - "description": "[Output Only] The number of instances in the managed instance group that are running and have no scheduled actions.", - "format": "int32" - }, - "recreating": { - "type": "integer", - "description": "[Output Only] The number of instances in the managed instance group that are scheduled to be recreated or are currently being being recreated. Recreating an instance deletes the existing root persistent disk and creates a new disk from the image that is defined in the instance template.", - "format": "int32" - }, - "refreshing": { - "type": "integer", - "description": "[Output Only] The number of instances in the managed instance group that are being reconfigured with properties that do not require a restart or a recreate action. For example, setting or removing target pools for the instance.", - "format": "int32" - }, - "restarting": { - "type": "integer", - "description": "[Output Only] The number of instances in the managed instance group that are scheduled to be restarted or are currently being restarted.", - "format": "int32" - } - } - }, - "InstanceGroupManagerAggregatedList": { - "id": "InstanceGroupManagerAggregatedList", - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "object", - "description": "A list of InstanceGroupManagersScopedList resources.", - "additionalProperties": { - "$ref": "InstanceGroupManagersScopedList", - "description": "[Output Only] The name of the scope that contains this set of managed instance groups." - } - }, - "kind": { - "type": "string", - "description": "[Output Only] The resource type, which is always compute#instanceGroupManagerAggregatedList for an aggregated list of managed instance groups.", - "default": "compute#instanceGroupManagerAggregatedList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "InstanceGroupManagerList": { - "id": "InstanceGroupManagerList", - "type": "object", - "description": "[Output Only] A list of managed instance groups.", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "array", - "description": "A list of InstanceGroupManager resources.", - "items": { - "$ref": "InstanceGroupManager" - } - }, - "kind": { - "type": "string", - "description": "[Output Only] The resource type, which is always compute#instanceGroupManagerList for a list of managed instance groups.", - "default": "compute#instanceGroupManagerList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "InstanceGroupManagersAbandonInstancesRequest": { - "id": "InstanceGroupManagersAbandonInstancesRequest", - "type": "object", - "properties": { - "instances": { - "type": "array", - "description": "The URLs of one or more instances to abandon. This can be a full URL or a partial URL, such as zones/[ZONE]/instances/[INSTANCE_NAME].", - "items": { - "type": "string" - } - } - } - }, - "InstanceGroupManagersDeleteInstancesRequest": { - "id": "InstanceGroupManagersDeleteInstancesRequest", - "type": "object", - "properties": { - "instances": { - "type": "array", - "description": "The URLs of one or more instances to delete. This can be a full URL or a partial URL, such as zones/[ZONE]/instances/[INSTANCE_NAME].", - "items": { - "type": "string" - } - } - } - }, - "InstanceGroupManagersListManagedInstancesResponse": { - "id": "InstanceGroupManagersListManagedInstancesResponse", - "type": "object", - "properties": { - "managedInstances": { - "type": "array", - "description": "[Output Only] The list of instances in the managed instance group.", - "items": { - "$ref": "ManagedInstance" - } - } - } - }, - "InstanceGroupManagersRecreateInstancesRequest": { - "id": "InstanceGroupManagersRecreateInstancesRequest", - "type": "object", - "properties": { - "instances": { - "type": "array", - "description": "The URLs of one or more instances to recreate. This can be a full URL or a partial URL, such as zones/[ZONE]/instances/[INSTANCE_NAME].", - "items": { - "type": "string" - } - } - } - }, - "InstanceGroupManagersScopedList": { - "id": "InstanceGroupManagersScopedList", - "type": "object", - "properties": { "instanceGroupManagers": { - "type": "array", - "description": "[Output Only] The list of managed instance groups that are contained in the specified project and zone.", - "items": { - "$ref": "InstanceGroupManager" - } - }, - "warning": { - "type": "object", - "description": "[Output Only] The warning that replaces the list of managed instance groups when the list is empty.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } + "methods": { + "abandonInstances": { + "description": "Schedules a group action to remove the specified instances from the managed instance group. Abandoning an instance does not delete the instance, but it does remove the instance from any target pools that are applied by the managed instance group. This method reduces the targetSize of the managed instance group by the number of instances that you abandon. This operation is marked as DONE when the action is scheduled even if the instances have not yet been removed from the group. You must separately verify the status of the abandoning action with the listmanagedinstances method.\n\nIf the group is part of a backend service that has enabled connection draining, it can take up to 60 seconds after the connection draining duration has elapsed before the VM instance is removed or deleted.\n\nYou can specify a maximum of 1000 instances with this method per request.", + "httpMethod": "POST", + "id": "compute.instanceGroupManagers.abandonInstances", + "parameterOrder": [ + "project", + "zone", + "instanceGroupManager" + ], + "parameters": { + "instanceGroupManager": { + "description": "The name of the managed instance group.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "The name of the zone where the managed instance group is located.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/abandonInstances", + "request": { + "$ref": "InstanceGroupManagersAbandonInstancesRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "aggregatedList": { + "description": "Retrieves the list of managed instance groups and groups them by zone.", + "httpMethod": "GET", + "id": "compute.instanceGroupManagers.aggregatedList", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/aggregated/instanceGroupManagers", + "response": { + "$ref": "InstanceGroupManagerAggregatedList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "delete": { + "description": "Deletes the specified managed instance group and all of the instances in that group. Note that the instance group must not belong to a backend service. Read Deleting an instance group for more information.", + "httpMethod": "DELETE", + "id": "compute.instanceGroupManagers.delete", + "parameterOrder": [ + "project", + "zone", + "instanceGroupManager" + ], + "parameters": { + "instanceGroupManager": { + "description": "The name of the managed instance group to delete.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "The name of the zone where the managed instance group is located.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "deleteInstances": { + "description": "Schedules a group action to delete the specified instances in the managed instance group. The instances are also removed from any target pools of which they were a member. This method reduces the targetSize of the managed instance group by the number of instances that you delete. This operation is marked as DONE when the action is scheduled even if the instances are still being deleted. You must separately verify the status of the deleting action with the listmanagedinstances method.\n\nIf the group is part of a backend service that has enabled connection draining, it can take up to 60 seconds after the connection draining duration has elapsed before the VM instance is removed or deleted.\n\nYou can specify a maximum of 1000 instances with this method per request.", + "httpMethod": "POST", + "id": "compute.instanceGroupManagers.deleteInstances", + "parameterOrder": [ + "project", + "zone", + "instanceGroupManager" + ], + "parameters": { + "instanceGroupManager": { + "description": "The name of the managed instance group.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "The name of the zone where the managed instance group is located.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/deleteInstances", + "request": { + "$ref": "InstanceGroupManagersDeleteInstancesRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Returns all of the details about the specified managed instance group. Get a list of available managed instance groups by making a list() request.", + "httpMethod": "GET", + "id": "compute.instanceGroupManagers.get", + "parameterOrder": [ + "project", + "zone", + "instanceGroupManager" + ], + "parameters": { + "instanceGroupManager": { + "description": "The name of the managed instance group.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "zone": { + "description": "The name of the zone where the managed instance group is located.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}", + "response": { + "$ref": "InstanceGroupManager" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "description": "Creates a managed instance group using the information that you specify in the request. After the group is created, it schedules an action to create instances in the group using the specified instance template. This operation is marked as DONE when the group is created even if the instances in the group have not yet been created. You must separately verify the status of the individual instances with the listmanagedinstances method.\n\nA managed instance group can have up to 1000 VM instances per group. Please contact Cloud Support if you need an increase in this limit.", + "httpMethod": "POST", + "id": "compute.instanceGroupManagers.insert", + "parameterOrder": [ + "project", + "zone" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "The name of the zone where you want to create the managed instance group.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instanceGroupManagers", + "request": { + "$ref": "InstanceGroupManager" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "description": "Retrieves a list of managed instance groups that are contained within the specified project and zone.", + "httpMethod": "GET", + "id": "compute.instanceGroupManagers.list", + "parameterOrder": [ + "project", + "zone" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "zone": { + "description": "The name of the zone where the managed instance group is located.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instanceGroupManagers", + "response": { + "$ref": "InstanceGroupManagerList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "listManagedInstances": { + "description": "Lists all of the instances in the managed instance group. Each instance in the list has a currentAction, which indicates the action that the managed instance group is performing on the instance. For example, if the group is still creating an instance, the currentAction is CREATING. If a previous action failed, the list displays the errors for that failed action.", + "httpMethod": "POST", + "id": "compute.instanceGroupManagers.listManagedInstances", + "parameterOrder": [ + "project", + "zone", + "instanceGroupManager" + ], + "parameters": { + "filter": { + "location": "query", + "type": "string" + }, + "instanceGroupManager": { + "description": "The name of the managed instance group.", + "location": "path", + "required": true, + "type": "string" + }, + "maxResults": { + "default": "500", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "order_by": { + "location": "query", + "type": "string" + }, + "pageToken": { + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "zone": { + "description": "The name of the zone where the managed instance group is located.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/listManagedInstances", + "response": { + "$ref": "InstanceGroupManagersListManagedInstancesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "recreateInstances": { + "description": "Schedules a group action to recreate the specified instances in the managed instance group. The instances are deleted and recreated using the current instance template for the managed instance group. This operation is marked as DONE when the action is scheduled even if the instances have not yet been recreated. You must separately verify the status of the recreating action with the listmanagedinstances method.\n\nIf the group is part of a backend service that has enabled connection draining, it can take up to 60 seconds after the connection draining duration has elapsed before the VM instance is removed or deleted.\n\nYou can specify a maximum of 1000 instances with this method per request.", + "httpMethod": "POST", + "id": "compute.instanceGroupManagers.recreateInstances", + "parameterOrder": [ + "project", + "zone", + "instanceGroupManager" + ], + "parameters": { + "instanceGroupManager": { + "description": "The name of the managed instance group.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "The name of the zone where the managed instance group is located.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/recreateInstances", + "request": { + "$ref": "InstanceGroupManagersRecreateInstancesRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "resize": { + "description": "Resizes the managed instance group. If you increase the size, the group creates new instances using the current instance template. If you decrease the size, the group deletes instances. The resize operation is marked DONE when the resize actions are scheduled even if the group has not yet added or deleted any instances. You must separately verify the status of the creating or deleting actions with the listmanagedinstances method.\n\nIf the group is part of a backend service that has enabled connection draining, it can take up to 60 seconds after the connection draining duration has elapsed before the VM instance is removed or deleted.", + "httpMethod": "POST", + "id": "compute.instanceGroupManagers.resize", + "parameterOrder": [ + "project", + "zone", + "instanceGroupManager", + "size" + ], + "parameters": { + "instanceGroupManager": { + "description": "The name of the managed instance group.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "size": { + "description": "The number of running instances that the managed instance group should maintain at any given time. The group automatically adds or removes instances to maintain the number of instances specified by this parameter.", + "format": "int32", + "location": "query", + "required": true, + "type": "integer" + }, + "zone": { + "description": "The name of the zone where the managed instance group is located.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/resize", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setInstanceTemplate": { + "description": "Specifies the instance template to use when creating new instances in this group. The templates for existing instances in the group do not change unless you recreate them.", + "httpMethod": "POST", + "id": "compute.instanceGroupManagers.setInstanceTemplate", + "parameterOrder": [ + "project", + "zone", + "instanceGroupManager" + ], + "parameters": { + "instanceGroupManager": { + "description": "The name of the managed instance group.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "The name of the zone where the managed instance group is located.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/setInstanceTemplate", + "request": { + "$ref": "InstanceGroupManagersSetInstanceTemplateRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setTargetPools": { + "description": "Modifies the target pools to which all instances in this managed instance group are assigned. The target pools automatically apply to all of the instances in the managed instance group. This operation is marked DONE when you make the request even if the instances have not yet been added to their target pools. The change might take some time to apply to all of the instances in the group depending on the size of the group.", + "httpMethod": "POST", + "id": "compute.instanceGroupManagers.setTargetPools", + "parameterOrder": [ + "project", + "zone", + "instanceGroupManager" + ], + "parameters": { + "instanceGroupManager": { + "description": "The name of the managed instance group.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "The name of the zone where the managed instance group is located.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/setTargetPools", + "request": { + "$ref": "InstanceGroupManagersSetTargetPoolsRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." } - } - } - } - }, - "InstanceGroupManagersSetInstanceTemplateRequest": { - "id": "InstanceGroupManagersSetInstanceTemplateRequest", - "type": "object", - "properties": { - "instanceTemplate": { - "type": "string", - "description": "The URL of the instance template that is specified for this managed instance group. The group uses this template to create all new instances in the managed instance group." - } - } - }, - "InstanceGroupManagersSetTargetPoolsRequest": { - "id": "InstanceGroupManagersSetTargetPoolsRequest", - "type": "object", - "properties": { - "fingerprint": { - "type": "string", - "description": "The fingerprint of the target pools information. Use this optional property to prevent conflicts when multiple users change the target pools settings concurrently. Obtain the fingerprint with the instanceGroupManagers.get method. Then, include the fingerprint in your request to ensure that you do not overwrite changes that were applied from another concurrent request.", - "format": "byte" }, - "targetPools": { - "type": "array", - "description": "The list of target pool URLs that instances in this managed instance group belong to. The managed instance group applies these target pools to all of the instances in the group. Existing instances and new instances in the group all receive these target pool settings.", - "items": { - "type": "string" - } - } - } - }, - "InstanceGroupsAddInstancesRequest": { - "id": "InstanceGroupsAddInstancesRequest", - "type": "object", - "properties": { - "instances": { - "type": "array", - "description": "The list of instances to add to the instance group.", - "items": { - "$ref": "InstanceReference" - } - } - } - }, - "InstanceGroupsListInstances": { - "id": "InstanceGroupsListInstances", - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "array", - "description": "A list of InstanceWithNamedPorts resources.", - "items": { - "$ref": "InstanceWithNamedPorts" - } - }, - "kind": { - "type": "string", - "description": "[Output Only] The resource type, which is always compute#instanceGroupsListInstances for the list of instances in the specified instance group.", - "default": "compute#instanceGroupsListInstances" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "InstanceGroupsListInstancesRequest": { - "id": "InstanceGroupsListInstancesRequest", - "type": "object", - "properties": { - "instanceState": { - "type": "string", - "description": "A filter for the state of the instances in the instance group. Valid options are ALL or RUNNING. If you do not specify this parameter the list includes all instances regardless of their state.", - "enum": [ - "ALL", - "RUNNING" - ], - "enumDescriptions": [ - "", - "" - ] - } - } - }, - "InstanceGroupsRemoveInstancesRequest": { - "id": "InstanceGroupsRemoveInstancesRequest", - "type": "object", - "properties": { - "instances": { - "type": "array", - "description": "The list of instances to remove from the instance group.", - "items": { - "$ref": "InstanceReference" - } - } - } - }, - "InstanceGroupsScopedList": { - "id": "InstanceGroupsScopedList", - "type": "object", - "properties": { "instanceGroups": { - "type": "array", - "description": "[Output Only] The list of instance groups that are contained in this scope.", - "items": { - "$ref": "InstanceGroup" - } - }, - "warning": { - "type": "object", - "description": "[Output Only] An informational warning that replaces the list of instance groups when the list is empty.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } + "methods": { + "addInstances": { + "description": "Adds a list of instances to the specified instance group. All of the instances in the instance group must be in the same network/subnetwork. Read Adding instances for more information.", + "httpMethod": "POST", + "id": "compute.instanceGroups.addInstances", + "parameterOrder": [ + "project", + "zone", + "instanceGroup" + ], + "parameters": { + "instanceGroup": { + "description": "The name of the instance group where you are adding instances.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "The name of the zone where the instance group is located.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instanceGroups/{instanceGroup}/addInstances", + "request": { + "$ref": "InstanceGroupsAddInstancesRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "aggregatedList": { + "description": "Retrieves the list of instance groups and sorts them by zone.", + "httpMethod": "GET", + "id": "compute.instanceGroups.aggregatedList", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/aggregated/instanceGroups", + "response": { + "$ref": "InstanceGroupAggregatedList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "delete": { + "description": "Deletes the specified instance group. The instances in the group are not deleted. Note that instance group must not belong to a backend service. Read Deleting an instance group for more information.", + "httpMethod": "DELETE", + "id": "compute.instanceGroups.delete", + "parameterOrder": [ + "project", + "zone", + "instanceGroup" + ], + "parameters": { + "instanceGroup": { + "description": "The name of the instance group to delete.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "The name of the zone where the instance group is located.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instanceGroups/{instanceGroup}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Returns the specified instance group. Get a list of available instance groups by making a list() request.", + "httpMethod": "GET", + "id": "compute.instanceGroups.get", + "parameterOrder": [ + "project", + "zone", + "instanceGroup" + ], + "parameters": { + "instanceGroup": { + "description": "The name of the instance group.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "zone": { + "description": "The name of the zone where the instance group is located.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instanceGroups/{instanceGroup}", + "response": { + "$ref": "InstanceGroup" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "description": "Creates an instance group in the specified project using the parameters that are included in the request.", + "httpMethod": "POST", + "id": "compute.instanceGroups.insert", + "parameterOrder": [ + "project", + "zone" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "The name of the zone where you want to create the instance group.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instanceGroups", + "request": { + "$ref": "InstanceGroup" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "description": "Retrieves the list of instance groups that are located in the specified project and zone.", + "httpMethod": "GET", + "id": "compute.instanceGroups.list", + "parameterOrder": [ + "project", + "zone" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "zone": { + "description": "The name of the zone where the instance group is located.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instanceGroups", + "response": { + "$ref": "InstanceGroupList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "listInstances": { + "description": "Lists the instances in the specified instance group.", + "httpMethod": "POST", + "id": "compute.instanceGroups.listInstances", + "parameterOrder": [ + "project", + "zone", + "instanceGroup" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "instanceGroup": { + "description": "The name of the instance group from which you want to generate a list of included instances.", + "location": "path", + "required": true, + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "zone": { + "description": "The name of the zone where the instance group is located.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instanceGroups/{instanceGroup}/listInstances", + "request": { + "$ref": "InstanceGroupsListInstancesRequest" + }, + "response": { + "$ref": "InstanceGroupsListInstances" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "removeInstances": { + "description": "Removes one or more instances from the specified instance group, but does not delete those instances.\n\nIf the group is part of a backend service that has enabled connection draining, it can take up to 60 seconds after the connection draining duration before the VM instance is removed or deleted.", + "httpMethod": "POST", + "id": "compute.instanceGroups.removeInstances", + "parameterOrder": [ + "project", + "zone", + "instanceGroup" + ], + "parameters": { + "instanceGroup": { + "description": "The name of the instance group where the specified instances will be removed.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "The name of the zone where the instance group is located.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instanceGroups/{instanceGroup}/removeInstances", + "request": { + "$ref": "InstanceGroupsRemoveInstancesRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setNamedPorts": { + "description": "Sets the named ports for the specified instance group.", + "httpMethod": "POST", + "id": "compute.instanceGroups.setNamedPorts", + "parameterOrder": [ + "project", + "zone", + "instanceGroup" + ], + "parameters": { + "instanceGroup": { + "description": "The name of the instance group where the named ports are updated.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "The name of the zone where the instance group is located.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instanceGroups/{instanceGroup}/setNamedPorts", + "request": { + "$ref": "InstanceGroupsSetNamedPortsRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." } - } - } - } - }, - "InstanceGroupsSetNamedPortsRequest": { - "id": "InstanceGroupsSetNamedPortsRequest", - "type": "object", - "properties": { - "fingerprint": { - "type": "string", - "description": "The fingerprint of the named ports information for this instance group. Use this optional property to prevent conflicts when multiple users change the named ports settings concurrently. Obtain the fingerprint with the instanceGroups.get method. Then, include the fingerprint in your request to ensure that you do not overwrite changes that were applied from another concurrent request.", - "format": "byte" }, - "namedPorts": { - "type": "array", - "description": "The list of named ports to set for this instance group.", - "items": { - "$ref": "NamedPort" - } - } - } - }, - "InstanceList": { - "id": "InstanceList", - "type": "object", - "description": "Contains a list of instances.", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "array", - "description": "A list of Instance resources.", - "items": { - "$ref": "Instance" - } - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#instanceList for lists of Instance resources.", - "default": "compute#instanceList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } + "instanceTemplates": { + "methods": { + "delete": { + "description": "Deletes the specified instance template. Deleting an instance template is permanent and cannot be undone. It's not possible to delete templates which are in use by an instance group.", + "httpMethod": "DELETE", + "id": "compute.instanceTemplates.delete", + "parameterOrder": [ + "project", + "instanceTemplate" + ], + "parameters": { + "instanceTemplate": { + "description": "The name of the instance template to delete.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/instanceTemplates/{instanceTemplate}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Returns the specified instance template. Get a list of available instance templates by making a list() request.", + "httpMethod": "GET", + "id": "compute.instanceTemplates.get", + "parameterOrder": [ + "project", + "instanceTemplate" + ], + "parameters": { + "instanceTemplate": { + "description": "The name of the instance template.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/instanceTemplates/{instanceTemplate}", + "response": { + "$ref": "InstanceTemplate" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "description": "Creates an instance template in the specified project using the data that is included in the request. If you are creating a new template to update an existing instance group, your new instance template must use the same network or, if applicable, the same subnetwork as the original template.", + "httpMethod": "POST", + "id": "compute.instanceTemplates.insert", + "parameterOrder": [ + "project" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/instanceTemplates", + "request": { + "$ref": "InstanceTemplate" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "description": "Retrieves a list of instance templates that are contained within the specified project and zone.", + "httpMethod": "GET", + "id": "compute.instanceTemplates.list", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/instanceTemplates", + "response": { + "$ref": "InstanceTemplateList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." } - } - } - } - }, - "InstanceMoveRequest": { - "id": "InstanceMoveRequest", - "type": "object", - "properties": { - "destinationZone": { - "type": "string", - "description": "The URL of the destination zone to move the instance. This can be a full or partial URL. For example, the following are all valid URLs to a zone: \n- https://www.googleapis.com/compute/v1/projects/project/zones/zone \n- projects/project/zones/zone \n- zones/zone" }, - "targetInstance": { - "type": "string", - "description": "The URL of the target instance to move. This can be a full or partial URL. For example, the following are all valid URLs to an instance: \n- https://www.googleapis.com/compute/v1/projects/project/zones/zone/instances/instance \n- projects/project/zones/zone/instances/instance \n- zones/zone/instances/instance" - } - } - }, - "InstanceProperties": { - "id": "InstanceProperties", - "type": "object", - "description": "", - "properties": { - "canIpForward": { - "type": "boolean", - "description": "Enables instances created based on this template to send packets with source IP addresses other than their own and receive packets with destination IP addresses other than their own. If these instances will be used as an IP gateway or it will be set as the next-hop in a Route resource, specify true. If unsure, leave this set to false. See the Enable IP forwarding documentation for more information." - }, - "description": { - "type": "string", - "description": "An optional text description for the instances that are created from this instance template." - }, - "disks": { - "type": "array", - "description": "An array of disks that are associated with the instances that are created from this template.", - "items": { - "$ref": "AttachedDisk" - } - }, - "guestAccelerators": { - "type": "array", - "description": "A list of guest accelerator cards' type and count to use for instances created from the instance template.", - "items": { - "$ref": "AcceleratorConfig" - } - }, - "labels": { - "type": "object", - "description": "Labels to apply to instances that are created from this template.", - "additionalProperties": { - "type": "string" - } - }, - "machineType": { - "type": "string", - "description": "The machine type to use for instances that are created from this template.", - "annotations": { - "required": [ - "compute.instanceTemplates.insert" - ] - } - }, - "metadata": { - "$ref": "Metadata", - "description": "The metadata key/value pairs to assign to instances that are created from this template. These pairs can consist of custom metadata or predefined keys. See Project and instance metadata for more information." - }, - "minCpuPlatform": { - "type": "string", - "description": "Minimum cpu/platform to be used by this instance. The instance may be scheduled on the specified or newer cpu/platform. Applicable values are the friendly names of CPU platforms, such as minCpuPlatform: \"Intel Haswell\" or minCpuPlatform: \"Intel Sandy Bridge\". For more information, read Specifying a Minimum CPU Platform." - }, - "networkInterfaces": { - "type": "array", - "description": "An array of network access configurations for this interface.", - "items": { - "$ref": "NetworkInterface" - } - }, - "scheduling": { - "$ref": "Scheduling", - "description": "Specifies the scheduling options for the instances that are created from this template." - }, - "serviceAccounts": { - "type": "array", - "description": "A list of service accounts with specified scopes. Access tokens for these service accounts are available to the instances that are created from this template. Use metadata queries to obtain the access tokens for these instances.", - "items": { - "$ref": "ServiceAccount" - } - }, - "tags": { - "$ref": "Tags", - "description": "A list of tags to apply to the instances that are created from this template. The tags identify valid sources or targets for network firewalls. The setTags method can modify this list of tags. Each tag within the list must comply with RFC1035." - } - } - }, - "InstanceReference": { - "id": "InstanceReference", - "type": "object", - "properties": { - "instance": { - "type": "string", - "description": "The URL for a specific instance." - } - } - }, - "InstanceTemplate": { - "id": "InstanceTemplate", - "type": "object", - "description": "An Instance Template resource. (== resource_for beta.instanceTemplates ==) (== resource_for v1.instanceTemplates ==)", - "properties": { - "creationTimestamp": { - "type": "string", - "description": "[Output Only] The creation timestamp for this instance template in RFC3339 text format." - }, - "description": { - "type": "string", - "description": "An optional description of this resource. Provide this property when you create the resource." - }, - "id": { - "type": "string", - "description": "[Output Only] A unique identifier for this instance template. The server defines this identifier.", - "format": "uint64" - }, - "kind": { - "type": "string", - "description": "[Output Only] The resource type, which is always compute#instanceTemplate for instance templates.", - "default": "compute#instanceTemplate" - }, - "name": { - "type": "string", - "description": "Name of the resource; provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "annotations": { - "required": [ - "compute.instanceTemplates.insert" - ] - } - }, - "properties": { - "$ref": "InstanceProperties", - "description": "The instance properties for this instance template." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] The URL for this instance template. The server defines this URL." - } - } - }, - "InstanceTemplateList": { - "id": "InstanceTemplateList", - "type": "object", - "description": "A list of instance templates.", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "array", - "description": "A list of InstanceTemplate resources.", - "items": { - "$ref": "InstanceTemplate" - } - }, - "kind": { - "type": "string", - "description": "[Output Only] The resource type, which is always compute#instanceTemplatesListResponse for instance template lists.", - "default": "compute#instanceTemplateList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "InstanceWithNamedPorts": { - "id": "InstanceWithNamedPorts", - "type": "object", - "properties": { - "instance": { - "type": "string", - "description": "[Output Only] The URL of the instance." - }, - "namedPorts": { - "type": "array", - "description": "[Output Only] The named ports that belong to this instance group.", - "items": { - "$ref": "NamedPort" - } - }, - "status": { - "type": "string", - "description": "[Output Only] The status of the instance.", - "enum": [ - "PROVISIONING", - "RUNNING", - "STAGING", - "STOPPED", - "STOPPING", - "SUSPENDED", - "SUSPENDING", - "TERMINATED" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "" - ] - } - } - }, - "InstancesScopedList": { - "id": "InstancesScopedList", - "type": "object", - "properties": { "instances": { - "type": "array", - "description": "[Output Only] List of instances contained in this scope.", - "items": { - "$ref": "Instance" - } - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning which replaces the list of instances when the list is empty.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } + "methods": { + "addAccessConfig": { + "description": "Adds an access config to an instance's network interface.", + "httpMethod": "POST", + "id": "compute.instances.addAccessConfig", + "parameterOrder": [ + "project", + "zone", + "instance", + "networkInterface" + ], + "parameters": { + "instance": { + "description": "The instance name for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "networkInterface": { + "description": "The name of the network interface to add to this instance.", + "location": "query", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instances/{instance}/addAccessConfig", + "request": { + "$ref": "AccessConfig" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "aggregatedList": { + "description": "Retrieves aggregated list of instances.", + "httpMethod": "GET", + "id": "compute.instances.aggregatedList", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/aggregated/instances", + "response": { + "$ref": "InstanceAggregatedList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "attachDisk": { + "description": "Attaches an existing Disk resource to an instance. You must first create the disk before you can attach it. It is not possible to create and attach a disk at the same time. For more information, read Adding a persistent disk to your instance.", + "httpMethod": "POST", + "id": "compute.instances.attachDisk", + "parameterOrder": [ + "project", + "zone", + "instance" + ], + "parameters": { + "instance": { + "description": "The instance name for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instances/{instance}/attachDisk", + "request": { + "$ref": "AttachedDisk" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "delete": { + "description": "Deletes the specified Instance resource. For more information, see Stopping or Deleting an Instance.", + "httpMethod": "DELETE", + "id": "compute.instances.delete", + "parameterOrder": [ + "project", + "zone", + "instance" + ], + "parameters": { + "instance": { + "description": "Name of the instance resource to delete.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instances/{instance}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "deleteAccessConfig": { + "description": "Deletes an access config from an instance's network interface.", + "httpMethod": "POST", + "id": "compute.instances.deleteAccessConfig", + "parameterOrder": [ + "project", + "zone", + "instance", + "accessConfig", + "networkInterface" + ], + "parameters": { + "accessConfig": { + "description": "The name of the access config to delete.", + "location": "query", + "required": true, + "type": "string" + }, + "instance": { + "description": "The instance name for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "networkInterface": { + "description": "The name of the network interface.", + "location": "query", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instances/{instance}/deleteAccessConfig", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "detachDisk": { + "description": "Detaches a disk from an instance.", + "httpMethod": "POST", + "id": "compute.instances.detachDisk", + "parameterOrder": [ + "project", + "zone", + "instance", + "deviceName" + ], + "parameters": { + "deviceName": { + "description": "Disk device name to detach.", + "location": "query", + "required": true, + "type": "string" + }, + "instance": { + "description": "Instance name.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instances/{instance}/detachDisk", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Returns the specified Instance resource. Get a list of available instances by making a list() request.", + "httpMethod": "GET", + "id": "compute.instances.get", + "parameterOrder": [ + "project", + "zone", + "instance" + ], + "parameters": { + "instance": { + "description": "Name of the instance resource to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instances/{instance}", + "response": { + "$ref": "Instance" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "getSerialPortOutput": { + "description": "Returns the specified instance's serial port output.", + "httpMethod": "GET", + "id": "compute.instances.getSerialPortOutput", + "parameterOrder": [ + "project", + "zone", + "instance" + ], + "parameters": { + "instance": { + "description": "Name of the instance scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "port": { + "default": "1", + "description": "Specifies which COM or serial port to retrieve data from.", + "format": "int32", + "location": "query", + "maximum": "4", + "minimum": "1", + "type": "integer" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "start": { + "description": "Returns output starting from a specific byte position. Use this to page through output when the output is too large to return in a single request. For the initial request, leave this field unspecified. For subsequent calls, this field should be set to the next value returned in the previous call.", + "format": "int64", + "location": "query", + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instances/{instance}/serialPort", + "response": { + "$ref": "SerialPortOutput" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "description": "Creates an instance resource in the specified project using the data included in the request.", + "httpMethod": "POST", + "id": "compute.instances.insert", + "parameterOrder": [ + "project", + "zone" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "sourceInstanceTemplate": { + "description": "Specifies instance template to create the instance.\n\nThis field is optional. It can be a full or partial URL. For example, the following are all valid URLs to an instance template: \n- https://www.googleapis.com/compute/v1/projects/project/global/global/instanceTemplates/instanceTemplate \n- projects/project/global/global/instanceTemplates/instanceTemplate \n- global/instancesTemplates/instanceTemplate", + "location": "query", + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instances", + "request": { + "$ref": "Instance" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "description": "Retrieves the list of instances contained within the specified zone.", + "httpMethod": "GET", + "id": "compute.instances.list", + "parameterOrder": [ + "project", + "zone" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instances", + "response": { + "$ref": "InstanceList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "listReferrers": { + "description": "Retrieves the list of referrers to instances contained within the specified zone.", + "httpMethod": "GET", + "id": "compute.instances.listReferrers", + "parameterOrder": [ + "project", + "zone", + "instance" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "instance": { + "description": "Name of the target instance scoping this request, or '-' if the request should span over all instances in the container.", + "location": "path", + "pattern": "-|[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instances/{instance}/referrers", + "response": { + "$ref": "InstanceListReferrers" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "reset": { + "description": "Performs a reset on the instance. For more information, see Resetting an instance.", + "httpMethod": "POST", + "id": "compute.instances.reset", + "parameterOrder": [ + "project", + "zone", + "instance" + ], + "parameters": { + "instance": { + "description": "Name of the instance scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instances/{instance}/reset", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setDeletionProtection": { + "description": "Sets deletion protection on the instance.", + "httpMethod": "POST", + "id": "compute.instances.setDeletionProtection", + "parameterOrder": [ + "project", + "zone", + "resource" + ], + "parameters": { + "deletionProtection": { + "default": "true", + "description": "Whether the resource should be protected against deletion.", + "location": "query", + "type": "boolean" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instances/{resource}/setDeletionProtection", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setDiskAutoDelete": { + "description": "Sets the auto-delete flag for a disk attached to an instance.", + "httpMethod": "POST", + "id": "compute.instances.setDiskAutoDelete", + "parameterOrder": [ + "project", + "zone", + "instance", + "autoDelete", + "deviceName" + ], + "parameters": { + "autoDelete": { + "description": "Whether to auto-delete the disk when the instance is deleted.", + "location": "query", + "required": true, + "type": "boolean" + }, + "deviceName": { + "description": "The device name of the disk to modify.", + "location": "query", + "pattern": "\\w[\\w.-]{0,254}", + "required": true, + "type": "string" + }, + "instance": { + "description": "The instance name.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instances/{instance}/setDiskAutoDelete", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setLabels": { + "description": "Sets labels on an instance. To learn more about labels, read the Labeling Resources documentation.", + "httpMethod": "POST", + "id": "compute.instances.setLabels", + "parameterOrder": [ + "project", + "zone", + "instance" + ], + "parameters": { + "instance": { + "description": "Name of the instance scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instances/{instance}/setLabels", + "request": { + "$ref": "InstancesSetLabelsRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setMachineResources": { + "description": "Changes the number and/or type of accelerator for a stopped instance to the values specified in the request.", + "httpMethod": "POST", + "id": "compute.instances.setMachineResources", + "parameterOrder": [ + "project", + "zone", + "instance" + ], + "parameters": { + "instance": { + "description": "Name of the instance scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instances/{instance}/setMachineResources", + "request": { + "$ref": "InstancesSetMachineResourcesRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setMachineType": { + "description": "Changes the machine type for a stopped instance to the machine type specified in the request.", + "httpMethod": "POST", + "id": "compute.instances.setMachineType", + "parameterOrder": [ + "project", + "zone", + "instance" + ], + "parameters": { + "instance": { + "description": "Name of the instance scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instances/{instance}/setMachineType", + "request": { + "$ref": "InstancesSetMachineTypeRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setMetadata": { + "description": "Sets metadata for the specified instance to the data included in the request.", + "httpMethod": "POST", + "id": "compute.instances.setMetadata", + "parameterOrder": [ + "project", + "zone", + "instance" + ], + "parameters": { + "instance": { + "description": "Name of the instance scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instances/{instance}/setMetadata", + "request": { + "$ref": "Metadata" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setMinCpuPlatform": { + "description": "Changes the minimum CPU platform that this instance should use. This method can only be called on a stopped instance. For more information, read Specifying a Minimum CPU Platform.", + "httpMethod": "POST", + "id": "compute.instances.setMinCpuPlatform", + "parameterOrder": [ + "project", + "zone", + "instance" + ], + "parameters": { + "instance": { + "description": "Name of the instance scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instances/{instance}/setMinCpuPlatform", + "request": { + "$ref": "InstancesSetMinCpuPlatformRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setScheduling": { + "description": "Sets an instance's scheduling options.", + "httpMethod": "POST", + "id": "compute.instances.setScheduling", + "parameterOrder": [ + "project", + "zone", + "instance" + ], + "parameters": { + "instance": { + "description": "Instance name.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instances/{instance}/setScheduling", + "request": { + "$ref": "Scheduling" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setServiceAccount": { + "description": "Sets the service account on the instance. For more information, read Changing the service account and access scopes for an instance.", + "httpMethod": "POST", + "id": "compute.instances.setServiceAccount", + "parameterOrder": [ + "project", + "zone", + "instance" + ], + "parameters": { + "instance": { + "description": "Name of the instance resource to start.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instances/{instance}/setServiceAccount", + "request": { + "$ref": "InstancesSetServiceAccountRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setTags": { + "description": "Sets tags for the specified instance to the data included in the request.", + "httpMethod": "POST", + "id": "compute.instances.setTags", + "parameterOrder": [ + "project", + "zone", + "instance" + ], + "parameters": { + "instance": { + "description": "Name of the instance scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instances/{instance}/setTags", + "request": { + "$ref": "Tags" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "start": { + "description": "Starts an instance that was stopped using the using the instances().stop method. For more information, see Restart an instance.", + "httpMethod": "POST", + "id": "compute.instances.start", + "parameterOrder": [ + "project", + "zone", + "instance" + ], + "parameters": { + "instance": { + "description": "Name of the instance resource to start.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instances/{instance}/start", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "startWithEncryptionKey": { + "description": "Starts an instance that was stopped using the using the instances().stop method. For more information, see Restart an instance.", + "httpMethod": "POST", + "id": "compute.instances.startWithEncryptionKey", + "parameterOrder": [ + "project", + "zone", + "instance" + ], + "parameters": { + "instance": { + "description": "Name of the instance resource to start.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instances/{instance}/startWithEncryptionKey", + "request": { + "$ref": "InstancesStartWithEncryptionKeyRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "stop": { + "description": "Stops a running instance, shutting it down cleanly, and allows you to restart the instance at a later time. Stopped instances do not incur VM usage charges while they are stopped. However, resources that the VM is using, such as persistent disks and static IP addresses, will continue to be charged until they are deleted. For more information, see Stopping an instance.", + "httpMethod": "POST", + "id": "compute.instances.stop", + "parameterOrder": [ + "project", + "zone", + "instance" + ], + "parameters": { + "instance": { + "description": "Name of the instance resource to stop.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instances/{instance}/stop", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "updateAccessConfig": { + "description": "Updates the specified access config from an instance's network interface with the data included in the request. This method supports PATCH semantics and uses the JSON merge patch format and processing rules.", + "httpMethod": "POST", + "id": "compute.instances.updateAccessConfig", + "parameterOrder": [ + "project", + "zone", + "instance", + "networkInterface" + ], + "parameters": { + "instance": { + "description": "The instance name for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "networkInterface": { + "description": "The name of the network interface where the access config is attached.", + "location": "query", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instances/{instance}/updateAccessConfig", + "request": { + "$ref": "AccessConfig" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "updateNetworkInterface": { + "description": "Updates an instance's network interface. This method follows PATCH semantics.", + "httpMethod": "PATCH", + "id": "compute.instances.updateNetworkInterface", + "parameterOrder": [ + "project", + "zone", + "instance", + "networkInterface" + ], + "parameters": { + "instance": { + "description": "The instance name for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "networkInterface": { + "description": "The name of the network interface to update.", + "location": "query", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instances/{instance}/updateNetworkInterface", + "request": { + "$ref": "NetworkInterface" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." } - } - } - } - }, - "InstancesSetLabelsRequest": { - "id": "InstancesSetLabelsRequest", - "type": "object", - "properties": { - "labelFingerprint": { - "type": "string", - "description": "Fingerprint of the previous set of labels for this resource, used to prevent conflicts. Provide the latest fingerprint value when making a request to add or change labels.", - "format": "byte" - }, - "labels": { - "type": "object", - "additionalProperties": { - "type": "string" - } - } - } - }, - "InstancesSetMachineResourcesRequest": { - "id": "InstancesSetMachineResourcesRequest", - "type": "object", - "properties": { - "guestAccelerators": { - "type": "array", - "description": "List of the type and count of accelerator cards attached to the instance.", - "items": { - "$ref": "AcceleratorConfig" - } - } - } - }, - "InstancesSetMachineTypeRequest": { - "id": "InstancesSetMachineTypeRequest", - "type": "object", - "properties": { - "machineType": { - "type": "string", - "description": "Full or partial URL of the machine type resource. See Machine Types for a full list of machine types. For example: zones/us-central1-f/machineTypes/n1-standard-1" - } - } - }, - "InstancesSetMinCpuPlatformRequest": { - "id": "InstancesSetMinCpuPlatformRequest", - "type": "object", - "properties": { - "minCpuPlatform": { - "type": "string", - "description": "Minimum cpu/platform this instance should be started at." - } - } - }, - "InstancesSetServiceAccountRequest": { - "id": "InstancesSetServiceAccountRequest", - "type": "object", - "properties": { - "email": { - "type": "string", - "description": "Email address of the service account." - }, - "scopes": { - "type": "array", - "description": "The list of scopes to be made available for this service account.", - "items": { - "type": "string" - } - } - } - }, - "InstancesStartWithEncryptionKeyRequest": { - "id": "InstancesStartWithEncryptionKeyRequest", - "type": "object", - "properties": { - "disks": { - "type": "array", - "description": "Array of disks associated with this instance that are protected with a customer-supplied encryption key.\n\nIn order to start the instance, the disk url and its corresponding key must be provided.\n\nIf the disk is not protected with a customer-supplied encryption key it should not be specified.", - "items": { - "$ref": "CustomerEncryptionKeyProtectedDisk" - } - } - } - }, - "Interconnect": { - "id": "Interconnect", - "type": "object", - "description": "Represents an Interconnects resource. The Interconnects resource is a dedicated connection between Google's network and your on-premises network. For more information, see the Dedicated overview page. (== resource_for v1.interconnects ==) (== resource_for beta.interconnects ==)", - "properties": { - "adminEnabled": { - "type": "boolean", - "description": "Administrative status of the interconnect. When this is set to true, the Interconnect is functional and can carry traffic. When set to false, no packets can be carried over the interconnect and no BGP routes are exchanged over it. By default, the status is set to true." - }, - "circuitInfos": { - "type": "array", - "description": "[Output Only] List of CircuitInfo objects, that describe the individual circuits in this LAG.", - "items": { - "$ref": "InterconnectCircuitInfo" - } - }, - "creationTimestamp": { - "type": "string", - "description": "[Output Only] Creation timestamp in RFC3339 text format." - }, - "customerName": { - "type": "string", - "description": "Customer name, to put in the Letter of Authorization as the party authorized to request a crossconnect." - }, - "description": { - "type": "string", - "description": "An optional description of this resource. Provide this property when you create the resource." - }, - "expectedOutages": { - "type": "array", - "description": "[Output Only] List of outages expected for this Interconnect.", - "items": { - "$ref": "InterconnectOutageNotification" - } - }, - "googleIpAddress": { - "type": "string", - "description": "[Output Only] IP address configured on the Google side of the Interconnect link. This can be used only for ping tests." - }, - "googleReferenceId": { - "type": "string", - "description": "[Output Only] Google reference ID; to be used when raising support tickets with Google or otherwise to debug backend connectivity issues." - }, - "id": { - "type": "string", - "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", - "format": "uint64" }, "interconnectAttachments": { - "type": "array", - "description": "[Output Only] A list of the URLs of all InterconnectAttachments configured to use this Interconnect.", - "items": { - "type": "string" - } - }, - "interconnectType": { - "type": "string", - "description": "Type of interconnect. Note that \"IT_PRIVATE\" has been deprecated in favor of \"DEDICATED\"", - "enum": [ - "DEDICATED", - "IT_PRIVATE" - ], - "enumDescriptions": [ - "", - "" - ] - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of the resource. Always compute#interconnect for interconnects.", - "default": "compute#interconnect" - }, - "linkType": { - "type": "string", - "description": "Type of link requested. This field indicates speed of each of the links in the bundle, not the entire bundle. Only 10G per link is allowed for a dedicated interconnect. Options: Ethernet_10G_LR", - "enum": [ - "LINK_TYPE_ETHERNET_10G_LR" - ], - "enumDescriptions": [ - "" - ] - }, - "location": { - "type": "string", - "description": "URL of the InterconnectLocation object that represents where this connection is to be provisioned." - }, - "name": { - "type": "string", - "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "annotations": { - "required": [ - "compute.interconnects.insert" - ] - } - }, - "nocContactEmail": { - "type": "string", - "description": "Email address to contact the customer NOC for operations and maintenance notifications regarding this Interconnect. If specified, this will be used for notifications in addition to all other forms described, such as Stackdriver logs alerting and Cloud Notifications." - }, - "operationalStatus": { - "type": "string", - "description": "[Output Only] The current status of whether or not this Interconnect is functional.", - "enum": [ - "OS_ACTIVE", - "OS_UNPROVISIONED" - ], - "enumDescriptions": [ - "", - "" - ] - }, - "peerIpAddress": { - "type": "string", - "description": "[Output Only] IP address configured on the customer side of the Interconnect link. The customer should configure this IP address during turnup when prompted by Google NOC. This can be used only for ping tests." - }, - "provisionedLinkCount": { - "type": "integer", - "description": "[Output Only] Number of links actually provisioned in this interconnect.", - "format": "int32" - }, - "requestedLinkCount": { - "type": "integer", - "description": "Target number of physical links in the link bundle, as requested by the customer.", - "format": "int32" - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for the resource." - } - } - }, - "InterconnectAttachment": { - "id": "InterconnectAttachment", - "type": "object", - "description": "Represents an InterconnectAttachment (VLAN attachment) resource. For more information, see Creating VLAN Attachments. (== resource_for beta.interconnectAttachments ==) (== resource_for v1.interconnectAttachments ==)", - "properties": { - "cloudRouterIpAddress": { - "type": "string", - "description": "[Output Only] IPv4 address + prefix length to be configured on Cloud Router Interface for this interconnect attachment." - }, - "creationTimestamp": { - "type": "string", - "description": "[Output Only] Creation timestamp in RFC3339 text format." - }, - "customerRouterIpAddress": { - "type": "string", - "description": "[Output Only] IPv4 address + prefix length to be configured on the customer router subinterface for this interconnect attachment." - }, - "description": { - "type": "string", - "description": "An optional description of this resource." - }, - "googleReferenceId": { - "type": "string", - "description": "[Output Only] Google reference ID, to be used when raising support tickets with Google or otherwise to debug backend connectivity issues." - }, - "id": { - "type": "string", - "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", - "format": "uint64" - }, - "interconnect": { - "type": "string", - "description": "URL of the underlying Interconnect object that this attachment's traffic will traverse through." - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of the resource. Always compute#interconnectAttachment for interconnect attachments.", - "default": "compute#interconnectAttachment" - }, - "name": { - "type": "string", - "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" - }, - "operationalStatus": { - "type": "string", - "description": "[Output Only] The current status of whether or not this interconnect attachment is functional.", - "enum": [ - "OS_ACTIVE", - "OS_UNPROVISIONED" - ], - "enumDescriptions": [ - "", - "" - ] - }, - "privateInterconnectInfo": { - "$ref": "InterconnectAttachmentPrivateInfo", - "description": "[Output Only] Information specific to an InterconnectAttachment. This property is populated if the interconnect that this is attached to is of type DEDICATED." - }, - "region": { - "type": "string", - "description": "[Output Only] URL of the region where the regional interconnect attachment resides." - }, - "router": { - "type": "string", - "description": "URL of the cloud router to be used for dynamic routing. This router must be in the same region as this InterconnectAttachment. The InterconnectAttachment will automatically connect the Interconnect to the network & region within which the Cloud Router is configured." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for the resource." - } - } - }, - "InterconnectAttachmentAggregatedList": { - "id": "InterconnectAttachmentAggregatedList", - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "object", - "description": "A list of InterconnectAttachmentsScopedList resources.", - "additionalProperties": { - "$ref": "InterconnectAttachmentsScopedList", - "description": "Name of the scope containing this set of interconnect attachments." - } - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#interconnectAttachmentAggregatedList for aggregated lists of interconnect attachments.", - "default": "compute#interconnectAttachmentAggregatedList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } + "methods": { + "aggregatedList": { + "description": "Retrieves an aggregated list of interconnect attachments.", + "httpMethod": "GET", + "id": "compute.interconnectAttachments.aggregatedList", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/aggregated/interconnectAttachments", + "response": { + "$ref": "InterconnectAttachmentAggregatedList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "delete": { + "description": "Deletes the specified interconnect attachment.", + "httpMethod": "DELETE", + "id": "compute.interconnectAttachments.delete", + "parameterOrder": [ + "project", + "region", + "interconnectAttachment" + ], + "parameters": { + "interconnectAttachment": { + "description": "Name of the interconnect attachment to delete.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/regions/{region}/interconnectAttachments/{interconnectAttachment}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Returns the specified interconnect attachment.", + "httpMethod": "GET", + "id": "compute.interconnectAttachments.get", + "parameterOrder": [ + "project", + "region", + "interconnectAttachment" + ], + "parameters": { + "interconnectAttachment": { + "description": "Name of the interconnect attachment to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/interconnectAttachments/{interconnectAttachment}", + "response": { + "$ref": "InterconnectAttachment" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "description": "Creates an InterconnectAttachment in the specified project using the data included in the request.", + "httpMethod": "POST", + "id": "compute.interconnectAttachments.insert", + "parameterOrder": [ + "project", + "region" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/regions/{region}/interconnectAttachments", + "request": { + "$ref": "InterconnectAttachment" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "description": "Retrieves the list of interconnect attachments contained within the specified region.", + "httpMethod": "GET", + "id": "compute.interconnectAttachments.list", + "parameterOrder": [ + "project", + "region" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/interconnectAttachments", + "response": { + "$ref": "InterconnectAttachmentList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." } - } - } - } - }, - "InterconnectAttachmentList": { - "id": "InterconnectAttachmentList", - "type": "object", - "description": "Response to the list request, and contains a list of interconnect attachments.", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." }, - "items": { - "type": "array", - "description": "A list of InterconnectAttachment resources.", - "items": { - "$ref": "InterconnectAttachment" - } - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#interconnectAttachmentList for lists of interconnect attachments.", - "default": "compute#interconnectAttachmentList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } + "interconnectLocations": { + "methods": { + "get": { + "description": "Returns the details for the specified interconnect location. Get a list of available interconnect locations by making a list() request.", + "httpMethod": "GET", + "id": "compute.interconnectLocations.get", + "parameterOrder": [ + "project", + "interconnectLocation" + ], + "parameters": { + "interconnectLocation": { + "description": "Name of the interconnect location to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/interconnectLocations/{interconnectLocation}", + "response": { + "$ref": "InterconnectLocation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "list": { + "description": "Retrieves the list of interconnect locations available to the specified project.", + "httpMethod": "GET", + "id": "compute.interconnectLocations.list", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/interconnectLocations", + "response": { + "$ref": "InterconnectLocationList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." } - } - } - } - }, - "InterconnectAttachmentPrivateInfo": { - "id": "InterconnectAttachmentPrivateInfo", - "type": "object", - "description": "Information for an interconnect attachment when this belongs to an interconnect of type DEDICATED.", - "properties": { - "tag8021q": { - "type": "integer", - "description": "[Output Only] 802.1q encapsulation tag to be used for traffic between Google and the customer, going to and from this network and region.", - "format": "uint32" - } - } - }, - "InterconnectAttachmentsScopedList": { - "id": "InterconnectAttachmentsScopedList", - "type": "object", - "properties": { - "interconnectAttachments": { - "type": "array", - "description": "List of interconnect attachments contained in this scope.", - "items": { - "$ref": "InterconnectAttachment" - } }, - "warning": { - "type": "object", - "description": "Informational warning which replaces the list of addresses when the list is empty.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } + "interconnects": { + "methods": { + "delete": { + "description": "Deletes the specified interconnect.", + "httpMethod": "DELETE", + "id": "compute.interconnects.delete", + "parameterOrder": [ + "project", + "interconnect" + ], + "parameters": { + "interconnect": { + "description": "Name of the interconnect to delete.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/interconnects/{interconnect}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Returns the specified interconnect. Get a list of available interconnects by making a list() request.", + "httpMethod": "GET", + "id": "compute.interconnects.get", + "parameterOrder": [ + "project", + "interconnect" + ], + "parameters": { + "interconnect": { + "description": "Name of the interconnect to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/interconnects/{interconnect}", + "response": { + "$ref": "Interconnect" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "description": "Creates a Interconnect in the specified project using the data included in the request.", + "httpMethod": "POST", + "id": "compute.interconnects.insert", + "parameterOrder": [ + "project" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/interconnects", + "request": { + "$ref": "Interconnect" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "description": "Retrieves the list of interconnect available to the specified project.", + "httpMethod": "GET", + "id": "compute.interconnects.list", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/interconnects", + "response": { + "$ref": "InterconnectList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "patch": { + "description": "Updates the specified interconnect with the data included in the request. This method supports PATCH semantics and uses the JSON merge patch format and processing rules.", + "httpMethod": "PATCH", + "id": "compute.interconnects.patch", + "parameterOrder": [ + "project", + "interconnect" + ], + "parameters": { + "interconnect": { + "description": "Name of the interconnect to update.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/interconnects/{interconnect}", + "request": { + "$ref": "Interconnect" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." } - } - } - } - }, - "InterconnectCircuitInfo": { - "id": "InterconnectCircuitInfo", - "type": "object", - "description": "Describes a single physical circuit between the Customer and Google. CircuitInfo objects are created by Google, so all fields are output only. Next id: 4", - "properties": { - "customerDemarcId": { - "type": "string", - "description": "Customer-side demarc ID for this circuit." }, - "googleCircuitId": { - "type": "string", - "description": "Google-assigned unique ID for this circuit. Assigned at circuit turn-up." - }, - "googleDemarcId": { - "type": "string", - "description": "Google-side demarc ID for this circuit. Assigned at circuit turn-up and provided by Google to the customer in the LOA." - } - } - }, - "InterconnectList": { - "id": "InterconnectList", - "type": "object", - "description": "Response to the list request, and contains a list of interconnects.", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "array", - "description": "A list of Interconnect resources.", - "items": { - "$ref": "Interconnect" - } - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#interconnectList for lists of interconnects.", - "default": "compute#interconnectList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } + "licenseCodes": { + "methods": { + "get": { + "description": "Return a specified license code. License codes are mirrored across all projects that have permissions to read the License Code.", + "httpMethod": "GET", + "id": "compute.licenseCodes.get", + "parameterOrder": [ + "project", + "licenseCode" + ], + "parameters": { + "licenseCode": { + "description": "Number corresponding to the License code resource to return.", + "location": "path", + "pattern": "[0-9]{0,61}?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/licenseCodes/{licenseCode}", + "response": { + "$ref": "LicenseCode" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource.", + "httpMethod": "POST", + "id": "compute.licenseCodes.testIamPermissions", + "parameterOrder": [ + "project", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "(?:[-a-z0-9_]{0,62}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/licenseCodes/{resource}/testIamPermissions", + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." } - } - } - } - }, - "InterconnectLocation": { - "id": "InterconnectLocation", - "type": "object", - "description": "Represents an InterconnectLocations resource. The InterconnectLocations resource describes the locations where you can connect to Google's networks. For more information, see Colocation Facilities.", - "properties": { - "address": { - "type": "string", - "description": "[Output Only] The postal address of the Point of Presence, each line in the address is separated by a newline character." }, - "availabilityZone": { - "type": "string", - "description": "[Output Only] Availability zone for this location. Within a metropolitan area (metro), maintenance will not be simultaneously scheduled in more than one availability zone. Example: \"zone1\" or \"zone2\"." - }, - "city": { - "type": "string", - "description": "[Output Only] Metropolitan area designator that indicates which city an interconnect is located. For example: \"Chicago, IL\", \"Amsterdam, Netherlands\"." - }, - "continent": { - "type": "string", - "description": "[Output Only] Continent for this location.", - "enum": [ - "AFRICA", - "ASIA_PAC", - "C_AFRICA", - "C_ASIA_PAC", - "C_EUROPE", - "C_NORTH_AMERICA", - "C_SOUTH_AMERICA", - "EUROPE", - "NORTH_AMERICA", - "SOUTH_AMERICA" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "creationTimestamp": { - "type": "string", - "description": "[Output Only] Creation timestamp in RFC3339 text format." - }, - "description": { - "type": "string", - "description": "[Output Only] An optional description of the resource." - }, - "facilityProvider": { - "type": "string", - "description": "[Output Only] The name of the provider for this facility (e.g., EQUINIX)." - }, - "facilityProviderFacilityId": { - "type": "string", - "description": "[Output Only] A provider-assigned Identifier for this facility (e.g., Ashburn-DC1)." - }, - "id": { - "type": "string", - "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", - "format": "uint64" - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of the resource. Always compute#interconnectLocation for interconnect locations.", - "default": "compute#interconnectLocation" - }, - "name": { - "type": "string", - "description": "[Output Only] Name of the resource." - }, - "peeringdbFacilityId": { - "type": "string", - "description": "[Output Only] The peeringdb identifier for this facility (corresponding with a netfac type in peeringdb)." - }, - "regionInfos": { - "type": "array", - "description": "[Output Only] A list of InterconnectLocation.RegionInfo objects, that describe parameters pertaining to the relation between this InterconnectLocation and various Google Cloud regions.", - "items": { - "$ref": "InterconnectLocationRegionInfo" - } - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for the resource." - } - } - }, - "InterconnectLocationList": { - "id": "InterconnectLocationList", - "type": "object", - "description": "Response to the list request, and contains a list of interconnect locations.", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "array", - "description": "A list of InterconnectLocation resources.", - "items": { - "$ref": "InterconnectLocation" - } - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#interconnectLocationList for lists of interconnect locations.", - "default": "compute#interconnectLocationList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } + "licenses": { + "methods": { + "delete": { + "description": "Deletes the specified license.", + "httpMethod": "DELETE", + "id": "compute.licenses.delete", + "parameterOrder": [ + "project", + "license" + ], + "parameters": { + "license": { + "description": "Name of the license resource to delete.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/licenses/{license}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Returns the specified License resource.", + "httpMethod": "GET", + "id": "compute.licenses.get", + "parameterOrder": [ + "project", + "license" + ], + "parameters": { + "license": { + "description": "Name of the License resource to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/licenses/{license}", + "response": { + "$ref": "License" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "description": "Create a License resource in the specified project.", + "httpMethod": "POST", + "id": "compute.licenses.insert", + "parameterOrder": [ + "project" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/licenses", + "request": { + "$ref": "License" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/devstorage.full_control", + "https://www.googleapis.com/auth/devstorage.read_only", + "https://www.googleapis.com/auth/devstorage.read_write" + ] + }, + "list": { + "description": "Retrieves the list of licenses available in the specified project. This method does not get any licenses that belong to other projects, including licenses attached to publicly-available images, like Debian 8. If you want to get a list of publicly-available licenses, use this method to make a request to the respective image project, such as debian-cloud or windows-cloud.", + "httpMethod": "GET", + "id": "compute.licenses.list", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/licenses", + "response": { + "$ref": "LicensesListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource.", + "httpMethod": "POST", + "id": "compute.licenses.testIamPermissions", + "parameterOrder": [ + "project", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "(?:[-a-z0-9_]{0,62}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/licenses/{resource}/testIamPermissions", + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." } - } - } - } - }, - "InterconnectLocationRegionInfo": { - "id": "InterconnectLocationRegionInfo", - "type": "object", - "description": "Information about any potential InterconnectAttachments between an Interconnect at a specific InterconnectLocation, and a specific Cloud Region.", - "properties": { - "expectedRttMs": { - "type": "string", - "description": "Expected round-trip time in milliseconds, from this InterconnectLocation to a VM in this region.", - "format": "int64" }, - "locationPresence": { - "type": "string", - "description": "Identifies the network presence of this location.", - "enum": [ - "GLOBAL", - "LOCAL_REGION", - "LP_GLOBAL", - "LP_LOCAL_REGION" - ], - "enumDescriptions": [ - "", - "", - "", - "" - ] - }, - "region": { - "type": "string", - "description": "URL for the region of this location." - } - } - }, - "InterconnectOutageNotification": { - "id": "InterconnectOutageNotification", - "type": "object", - "description": "Description of a planned outage on this Interconnect. Next id: 9", - "properties": { - "affectedCircuits": { - "type": "array", - "description": "Iff issue_type is IT_PARTIAL_OUTAGE, a list of the Google-side circuit IDs that will be affected.", - "items": { - "type": "string" - } - }, - "description": { - "type": "string", - "description": "A description about the purpose of the outage." - }, - "endTime": { - "type": "string", - "description": "Scheduled end time for the outage (milliseconds since Unix epoch).", - "format": "int64" - }, - "issueType": { - "type": "string", - "description": "Form this outage is expected to take. Note that the \"IT_\" versions of this enum have been deprecated in favor of the unprefixed values.", - "enum": [ - "IT_OUTAGE", - "IT_PARTIAL_OUTAGE", - "OUTAGE", - "PARTIAL_OUTAGE" - ], - "enumDescriptions": [ - "", - "", - "", - "" - ] - }, - "name": { - "type": "string", - "description": "Unique identifier for this outage notification." - }, - "source": { - "type": "string", - "description": "The party that generated this notification. Note that \"NSRC_GOOGLE\" has been deprecated in favor of \"GOOGLE\"", - "enum": [ - "GOOGLE", - "NSRC_GOOGLE" - ], - "enumDescriptions": [ - "", - "" - ] - }, - "startTime": { - "type": "string", - "description": "Scheduled start time for the outage (milliseconds since Unix epoch).", - "format": "int64" - }, - "state": { - "type": "string", - "description": "State of this notification. Note that the \"NS_\" versions of this enum have been deprecated in favor of the unprefixed values.", - "enum": [ - "ACTIVE", - "CANCELLED", - "NS_ACTIVE", - "NS_CANCELED" - ], - "enumDescriptions": [ - "", - "", - "", - "" - ] - } - } - }, - "License": { - "id": "License", - "type": "object", - "description": "A license resource.", - "properties": { - "chargesUseFee": { - "type": "boolean", - "description": "[Output Only] Deprecated. This field no longer reflects whether a license charges a usage fee." - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#license for licenses.", - "default": "compute#license" - }, - "name": { - "type": "string", - "description": "[Output Only] Name of the resource. The name is 1-63 characters long and complies with RFC1035.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "annotations": { - "required": [ - "compute.images.insert" - ] - } - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for the resource." - } - } - }, - "MachineType": { - "id": "MachineType", - "type": "object", - "description": "A Machine Type resource. (== resource_for v1.machineTypes ==) (== resource_for beta.machineTypes ==)", - "properties": { - "creationTimestamp": { - "type": "string", - "description": "[Output Only] Creation timestamp in RFC3339 text format." - }, - "deprecated": { - "$ref": "DeprecationStatus", - "description": "[Output Only] The deprecation status associated with this machine type." - }, - "description": { - "type": "string", - "description": "[Output Only] An optional textual description of the resource." - }, - "guestCpus": { - "type": "integer", - "description": "[Output Only] The number of virtual CPUs that are available to the instance.", - "format": "int32" - }, - "id": { - "type": "string", - "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", - "format": "uint64" - }, - "imageSpaceGb": { - "type": "integer", - "description": "[Deprecated] This property is deprecated and will never be populated with any relevant values.", - "format": "int32" - }, - "isSharedCpu": { - "type": "boolean", - "description": "[Output Only] Whether this machine type has a shared CPU. See Shared-core machine types for more information." - }, - "kind": { - "type": "string", - "description": "[Output Only] The type of the resource. Always compute#machineType for machine types.", - "default": "compute#machineType" - }, - "maximumPersistentDisks": { - "type": "integer", - "description": "[Output Only] Maximum persistent disks allowed.", - "format": "int32" - }, - "maximumPersistentDisksSizeGb": { - "type": "string", - "description": "[Output Only] Maximum total persistent disks size (GB) allowed.", - "format": "int64" - }, - "memoryMb": { - "type": "integer", - "description": "[Output Only] The amount of physical memory available to the instance, defined in MB.", - "format": "int32" - }, - "name": { - "type": "string", - "description": "[Output Only] Name of the resource.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" - }, - "scratchDisks": { - "type": "array", - "description": "[Output Only] List of extended scratch disks assigned to the instance.", - "items": { - "type": "object", - "properties": { - "diskGb": { - "type": "integer", - "description": "Size of the scratch disk, defined in GB.", - "format": "int32" - } - } - } - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for the resource." - }, - "zone": { - "type": "string", - "description": "[Output Only] The name of the zone where the machine type resides, such as us-central1-a." - } - } - }, - "MachineTypeAggregatedList": { - "id": "MachineTypeAggregatedList", - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "object", - "description": "A list of MachineTypesScopedList resources.", - "additionalProperties": { - "$ref": "MachineTypesScopedList", - "description": "[Output Only] Name of the scope containing this set of machine types." - } - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#machineTypeAggregatedList for aggregated lists of machine types.", - "default": "compute#machineTypeAggregatedList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "MachineTypeList": { - "id": "MachineTypeList", - "type": "object", - "description": "Contains a list of machine types.", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "array", - "description": "A list of MachineType resources.", - "items": { - "$ref": "MachineType" - } - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#machineTypeList for lists of machine types.", - "default": "compute#machineTypeList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "MachineTypesScopedList": { - "id": "MachineTypesScopedList", - "type": "object", - "properties": { "machineTypes": { - "type": "array", - "description": "[Output Only] List of machine types contained in this scope.", - "items": { - "$ref": "MachineType" - } - }, - "warning": { - "type": "object", - "description": "[Output Only] An informational warning that appears when the machine types list is empty.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } + "methods": { + "aggregatedList": { + "description": "Retrieves an aggregated list of machine types.", + "httpMethod": "GET", + "id": "compute.machineTypes.aggregatedList", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/aggregated/machineTypes", + "response": { + "$ref": "MachineTypeAggregatedList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "get": { + "description": "Returns the specified machine type. Get a list of available machine types by making a list() request.", + "httpMethod": "GET", + "id": "compute.machineTypes.get", + "parameterOrder": [ + "project", + "zone", + "machineType" + ], + "parameters": { + "machineType": { + "description": "Name of the machine type to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/machineTypes/{machineType}", + "response": { + "$ref": "MachineType" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "list": { + "description": "Retrieves a list of machine types available to the specified project.", + "httpMethod": "GET", + "id": "compute.machineTypes.list", + "parameterOrder": [ + "project", + "zone" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/machineTypes", + "response": { + "$ref": "MachineTypeList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." } - } - } - } - }, - "ManagedInstance": { - "id": "ManagedInstance", - "type": "object", - "properties": { - "currentAction": { - "type": "string", - "description": "[Output Only] The current action that the managed instance group has scheduled for the instance. Possible values: \n- NONE The instance is running, and the managed instance group does not have any scheduled actions for this instance. \n- CREATING The managed instance group is creating this instance. If the group fails to create this instance, it will try again until it is successful. \n- CREATING_WITHOUT_RETRIES The managed instance group is attempting to create this instance only once. If the group fails to create this instance, it does not try again and the group's targetSize value is decreased instead. \n- RECREATING The managed instance group is recreating this instance. \n- DELETING The managed instance group is permanently deleting this instance. \n- ABANDONING The managed instance group is abandoning this instance. The instance will be removed from the instance group and from any target pools that are associated with this group. \n- RESTARTING The managed instance group is restarting the instance. \n- REFRESHING The managed instance group is applying configuration changes to the instance without stopping it. For example, the group can update the target pool list for an instance without stopping that instance.", - "enum": [ - "ABANDONING", - "CREATING", - "CREATING_WITHOUT_RETRIES", - "DELETING", - "NONE", - "RECREATING", - "REFRESHING", - "RESTARTING" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "" - ] }, - "id": { - "type": "string", - "description": "[Output only] The unique identifier for this resource. This field is empty when instance does not exist.", - "format": "uint64" - }, - "instance": { - "type": "string", - "description": "[Output Only] The URL of the instance. The URL can exist even if the instance has not yet been created." - }, - "instanceStatus": { - "type": "string", - "description": "[Output Only] The status of the instance. This field is empty when the instance does not exist.", - "enum": [ - "PROVISIONING", - "RUNNING", - "STAGING", - "STOPPED", - "STOPPING", - "SUSPENDED", - "SUSPENDING", - "TERMINATED" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "lastAttempt": { - "$ref": "ManagedInstanceLastAttempt", - "description": "[Output Only] Information about the last attempt to create or delete the instance." - } - } - }, - "ManagedInstanceLastAttempt": { - "id": "ManagedInstanceLastAttempt", - "type": "object", - "properties": { - "errors": { - "type": "object", - "description": "[Output Only] Encountered errors during the last attempt to create or delete the instance.", - "properties": { - "errors": { - "type": "array", - "description": "[Output Only] The array of errors encountered while processing this operation.", - "items": { - "type": "object", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] The error type identifier for this error." - }, - "location": { - "type": "string", - "description": "[Output Only] Indicates the field in the request that caused the error. This property is optional." - }, - "message": { - "type": "string", - "description": "[Output Only] An optional, human-readable error message." - } + "networks": { + "methods": { + "addPeering": { + "description": "Adds a peering to the specified network.", + "httpMethod": "POST", + "id": "compute.networks.addPeering", + "parameterOrder": [ + "project", + "network" + ], + "parameters": { + "network": { + "description": "Name of the network resource to add peering to.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/networks/{network}/addPeering", + "request": { + "$ref": "NetworksAddPeeringRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "delete": { + "description": "Deletes the specified network.", + "httpMethod": "DELETE", + "id": "compute.networks.delete", + "parameterOrder": [ + "project", + "network" + ], + "parameters": { + "network": { + "description": "Name of the network to delete.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/networks/{network}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Returns the specified network. Get a list of available networks by making a list() request.", + "httpMethod": "GET", + "id": "compute.networks.get", + "parameterOrder": [ + "project", + "network" + ], + "parameters": { + "network": { + "description": "Name of the network to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/networks/{network}", + "response": { + "$ref": "Network" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "description": "Creates a network in the specified project using the data included in the request.", + "httpMethod": "POST", + "id": "compute.networks.insert", + "parameterOrder": [ + "project" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/networks", + "request": { + "$ref": "Network" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "description": "Retrieves the list of networks available to the specified project.", + "httpMethod": "GET", + "id": "compute.networks.list", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/networks", + "response": { + "$ref": "NetworkList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "patch": { + "description": "Patches the specified network with the data included in the request. Only the following fields can be modified: routingConfig.routingMode.", + "httpMethod": "PATCH", + "id": "compute.networks.patch", + "parameterOrder": [ + "project", + "network" + ], + "parameters": { + "network": { + "description": "Name of the network to update.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/networks/{network}", + "request": { + "$ref": "Network" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "removePeering": { + "description": "Removes a peering from the specified network.", + "httpMethod": "POST", + "id": "compute.networks.removePeering", + "parameterOrder": [ + "project", + "network" + ], + "parameters": { + "network": { + "description": "Name of the network resource to remove peering from.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/networks/{network}/removePeering", + "request": { + "$ref": "NetworksRemovePeeringRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "switchToCustomMode": { + "description": "Switches the network mode from auto subnet mode to custom subnet mode.", + "httpMethod": "POST", + "id": "compute.networks.switchToCustomMode", + "parameterOrder": [ + "project", + "network" + ], + "parameters": { + "network": { + "description": "Name of the network to be updated.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/networks/{network}/switchToCustomMode", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] } - } } - } - } - } - }, - "Metadata": { - "id": "Metadata", - "type": "object", - "description": "A metadata key/value entry.", - "properties": { - "fingerprint": { - "type": "string", - "description": "Specifies a fingerprint for this request, which is essentially a hash of the metadata's contents and used for optimistic locking. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update metadata. You must always provide an up-to-date fingerprint hash in order to update or change metadata.", - "format": "byte" }, - "items": { - "type": "array", - "description": "Array of key/value pairs. The total size of all keys and values must be less than 512 KB.", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "Key for the metadata entry. Keys must conform to the following regexp: [a-zA-Z0-9-_]+, and be less than 128 bytes in length. This is reflected as part of a URL in the metadata server. Additionally, to avoid ambiguity, keys must not conflict with any other metadata keys for the project.", - "pattern": "[a-zA-Z0-9-_]{1,128}", - "annotations": { - "required": [ - "compute.instances.insert", - "compute.projects.setCommonInstanceMetadata" - ] + "projects": { + "methods": { + "disableXpnHost": { + "description": "Disable this project as a shared VPC host project.", + "httpMethod": "POST", + "id": "compute.projects.disableXpnHost", + "parameterOrder": [ + "project" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/disableXpnHost", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "disableXpnResource": { + "description": "Disable a serivce resource (a.k.a service project) associated with this host project.", + "httpMethod": "POST", + "id": "compute.projects.disableXpnResource", + "parameterOrder": [ + "project" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/disableXpnResource", + "request": { + "$ref": "ProjectsDisableXpnResourceRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "enableXpnHost": { + "description": "Enable this project as a shared VPC host project.", + "httpMethod": "POST", + "id": "compute.projects.enableXpnHost", + "parameterOrder": [ + "project" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/enableXpnHost", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "enableXpnResource": { + "description": "Enable service resource (a.k.a service project) for a host project, so that subnets in the host project can be used by instances in the service project.", + "httpMethod": "POST", + "id": "compute.projects.enableXpnResource", + "parameterOrder": [ + "project" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/enableXpnResource", + "request": { + "$ref": "ProjectsEnableXpnResourceRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Returns the specified Project resource.", + "httpMethod": "GET", + "id": "compute.projects.get", + "parameterOrder": [ + "project" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}", + "response": { + "$ref": "Project" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "getXpnHost": { + "description": "Get the shared VPC host project that this project links to. May be empty if no link exists.", + "httpMethod": "GET", + "id": "compute.projects.getXpnHost", + "parameterOrder": [ + "project" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/getXpnHost", + "response": { + "$ref": "Project" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "getXpnResources": { + "description": "Get service resources (a.k.a service project) associated with this host project.", + "httpMethod": "GET", + "id": "compute.projects.getXpnResources", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "order_by": { + "location": "query", + "type": "string" + }, + "pageToken": { + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/getXpnResources", + "response": { + "$ref": "ProjectsGetXpnResources" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "listXpnHosts": { + "description": "List all shared VPC host projects visible to the user in an organization.", + "httpMethod": "POST", + "id": "compute.projects.listXpnHosts", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "order_by": { + "location": "query", + "type": "string" + }, + "pageToken": { + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/listXpnHosts", + "request": { + "$ref": "ProjectsListXpnHostsRequest" + }, + "response": { + "$ref": "XpnHostList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "moveDisk": { + "description": "Moves a persistent disk from one zone to another.", + "httpMethod": "POST", + "id": "compute.projects.moveDisk", + "parameterOrder": [ + "project" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/moveDisk", + "request": { + "$ref": "DiskMoveRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "moveInstance": { + "description": "Moves an instance and its attached persistent disks from one zone to another.", + "httpMethod": "POST", + "id": "compute.projects.moveInstance", + "parameterOrder": [ + "project" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/moveInstance", + "request": { + "$ref": "InstanceMoveRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setCommonInstanceMetadata": { + "description": "Sets metadata common to all instances within the specified project using the data included in the request.", + "httpMethod": "POST", + "id": "compute.projects.setCommonInstanceMetadata", + "parameterOrder": [ + "project" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/setCommonInstanceMetadata", + "request": { + "$ref": "Metadata" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setUsageExportBucket": { + "description": "Enables the usage export feature and sets the usage export bucket where reports are stored. If you provide an empty request body using this method, the usage export feature will be disabled.", + "httpMethod": "POST", + "id": "compute.projects.setUsageExportBucket", + "parameterOrder": [ + "project" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/setUsageExportBucket", + "request": { + "$ref": "UsageExportLocation" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/devstorage.full_control", + "https://www.googleapis.com/auth/devstorage.read_only", + "https://www.googleapis.com/auth/devstorage.read_write" + ] } - }, - "value": { - "type": "string", - "description": "Value for the metadata entry. These are free-form strings, and only have meaning as interpreted by the image running in the instance. The only restriction placed on values is that their size must be less than or equal to 262144 bytes (256 KiB).", - "annotations": { - "required": [ - "compute.instances.insert", - "compute.projects.setCommonInstanceMetadata" - ] - } - } } - } }, - "kind": { - "type": "string", - "description": "[Output Only] Type of the resource. Always compute#metadata for metadata.", - "default": "compute#metadata" - } - } - }, - "NamedPort": { - "id": "NamedPort", - "type": "object", - "description": "The named port. For example: .", - "properties": { - "name": { - "type": "string", - "description": "The name for this named port. The name must be 1-63 characters long, and comply with RFC1035." + "regionAutoscalers": { + "methods": { + "delete": { + "description": "Deletes the specified autoscaler.", + "httpMethod": "DELETE", + "id": "compute.regionAutoscalers.delete", + "parameterOrder": [ + "project", + "region", + "autoscaler" + ], + "parameters": { + "autoscaler": { + "description": "Name of the autoscaler to delete.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/regions/{region}/autoscalers/{autoscaler}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Returns the specified autoscaler.", + "httpMethod": "GET", + "id": "compute.regionAutoscalers.get", + "parameterOrder": [ + "project", + "region", + "autoscaler" + ], + "parameters": { + "autoscaler": { + "description": "Name of the autoscaler to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/autoscalers/{autoscaler}", + "response": { + "$ref": "Autoscaler" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "description": "Creates an autoscaler in the specified project using the data included in the request.", + "httpMethod": "POST", + "id": "compute.regionAutoscalers.insert", + "parameterOrder": [ + "project", + "region" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/regions/{region}/autoscalers", + "request": { + "$ref": "Autoscaler" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "description": "Retrieves a list of autoscalers contained within the specified region.", + "httpMethod": "GET", + "id": "compute.regionAutoscalers.list", + "parameterOrder": [ + "project", + "region" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/autoscalers", + "response": { + "$ref": "RegionAutoscalerList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "patch": { + "description": "Updates an autoscaler in the specified project using the data included in the request. This method supports PATCH semantics and uses the JSON merge patch format and processing rules.", + "httpMethod": "PATCH", + "id": "compute.regionAutoscalers.patch", + "parameterOrder": [ + "project", + "region" + ], + "parameters": { + "autoscaler": { + "description": "Name of the autoscaler to patch.", + "location": "query", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/regions/{region}/autoscalers", + "request": { + "$ref": "Autoscaler" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "update": { + "description": "Updates an autoscaler in the specified project using the data included in the request.", + "httpMethod": "PUT", + "id": "compute.regionAutoscalers.update", + "parameterOrder": [ + "project", + "region" + ], + "parameters": { + "autoscaler": { + "description": "Name of the autoscaler to update.", + "location": "query", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/regions/{region}/autoscalers", + "request": { + "$ref": "Autoscaler" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + } + } }, - "port": { - "type": "integer", - "description": "The port number, which can be a value between 1 and 65535.", - "format": "int32" - } - } - }, - "Network": { - "id": "Network", - "type": "object", - "description": "Represents a Network resource. Read Networks and Firewalls for more information. (== resource_for v1.networks ==) (== resource_for beta.networks ==)", - "properties": { - "IPv4Range": { - "type": "string", - "description": "The range of internal addresses that are legal on this network. This range is a CIDR specification, for example: 192.168.0.0/16. Provided by the client when the network is created.", - "pattern": "[0-9]{1,3}(?:\\.[0-9]{1,3}){3}/[0-9]{1,2}" + "regionBackendServices": { + "methods": { + "delete": { + "description": "Deletes the specified regional BackendService resource.", + "httpMethod": "DELETE", + "id": "compute.regionBackendServices.delete", + "parameterOrder": [ + "project", + "region", + "backendService" + ], + "parameters": { + "backendService": { + "description": "Name of the BackendService resource to delete.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/regions/{region}/backendServices/{backendService}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Returns the specified regional BackendService resource.", + "httpMethod": "GET", + "id": "compute.regionBackendServices.get", + "parameterOrder": [ + "project", + "region", + "backendService" + ], + "parameters": { + "backendService": { + "description": "Name of the BackendService resource to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/backendServices/{backendService}", + "response": { + "$ref": "BackendService" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "getHealth": { + "description": "Gets the most recent health check results for this regional BackendService.", + "httpMethod": "POST", + "id": "compute.regionBackendServices.getHealth", + "parameterOrder": [ + "project", + "region", + "backendService" + ], + "parameters": { + "backendService": { + "description": "Name of the BackendService resource for which to get health.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/backendServices/{backendService}/getHealth", + "request": { + "$ref": "ResourceGroupReference" + }, + "response": { + "$ref": "BackendServiceGroupHealth" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "description": "Creates a regional BackendService resource in the specified project using the data included in the request. There are several restrictions and guidelines to keep in mind when creating a regional backend service. Read Restrictions and Guidelines for more information.", + "httpMethod": "POST", + "id": "compute.regionBackendServices.insert", + "parameterOrder": [ + "project", + "region" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/regions/{region}/backendServices", + "request": { + "$ref": "BackendService" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "description": "Retrieves the list of regional BackendService resources available to the specified project in the given region.", + "httpMethod": "GET", + "id": "compute.regionBackendServices.list", + "parameterOrder": [ + "project", + "region" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/backendServices", + "response": { + "$ref": "BackendServiceList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "patch": { + "description": "Updates the specified regional BackendService resource with the data included in the request. There are several restrictions and guidelines to keep in mind when updating a backend service. Read Restrictions and Guidelines for more information. This method supports PATCH semantics and uses the JSON merge patch format and processing rules.", + "httpMethod": "PATCH", + "id": "compute.regionBackendServices.patch", + "parameterOrder": [ + "project", + "region", + "backendService" + ], + "parameters": { + "backendService": { + "description": "Name of the BackendService resource to patch.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/regions/{region}/backendServices/{backendService}", + "request": { + "$ref": "BackendService" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "update": { + "description": "Updates the specified regional BackendService resource with the data included in the request. There are several restrictions and guidelines to keep in mind when updating a backend service. Read Restrictions and Guidelines for more information.", + "httpMethod": "PUT", + "id": "compute.regionBackendServices.update", + "parameterOrder": [ + "project", + "region", + "backendService" + ], + "parameters": { + "backendService": { + "description": "Name of the BackendService resource to update.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/regions/{region}/backendServices/{backendService}", + "request": { + "$ref": "BackendService" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + } + } }, - "autoCreateSubnetworks": { - "type": "boolean", - "description": "When set to true, the network is created in \"auto subnet mode\". When set to false, the network is in \"custom subnet mode\".\n\nIn \"auto subnet mode\", a newly created network is assigned the default CIDR of 10.128.0.0/9 and it automatically creates one subnetwork per region." + "regionCommitments": { + "methods": { + "aggregatedList": { + "description": "Retrieves an aggregated list of commitments.", + "httpMethod": "GET", + "id": "compute.regionCommitments.aggregatedList", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/aggregated/commitments", + "response": { + "$ref": "CommitmentAggregatedList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "get": { + "description": "Returns the specified commitment resource. Get a list of available commitments by making a list() request.", + "httpMethod": "GET", + "id": "compute.regionCommitments.get", + "parameterOrder": [ + "project", + "region", + "commitment" + ], + "parameters": { + "commitment": { + "description": "Name of the commitment to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/commitments/{commitment}", + "response": { + "$ref": "Commitment" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "description": "Creates a commitment in the specified project using the data included in the request.", + "httpMethod": "POST", + "id": "compute.regionCommitments.insert", + "parameterOrder": [ + "project", + "region" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/regions/{region}/commitments", + "request": { + "$ref": "Commitment" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "description": "Retrieves a list of commitments contained within the specified region.", + "httpMethod": "GET", + "id": "compute.regionCommitments.list", + "parameterOrder": [ + "project", + "region" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/commitments", + "response": { + "$ref": "CommitmentList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + } + } }, - "creationTimestamp": { - "type": "string", - "description": "[Output Only] Creation timestamp in RFC3339 text format." + "regionInstanceGroupManagers": { + "methods": { + "abandonInstances": { + "description": "Schedules a group action to remove the specified instances from the managed instance group. Abandoning an instance does not delete the instance, but it does remove the instance from any target pools that are applied by the managed instance group. This method reduces the targetSize of the managed instance group by the number of instances that you abandon. This operation is marked as DONE when the action is scheduled even if the instances have not yet been removed from the group. You must separately verify the status of the abandoning action with the listmanagedinstances method.\n\nIf the group is part of a backend service that has enabled connection draining, it can take up to 60 seconds after the connection draining duration has elapsed before the VM instance is removed or deleted.\n\nYou can specify a maximum of 1000 instances with this method per request.", + "httpMethod": "POST", + "id": "compute.regionInstanceGroupManagers.abandonInstances", + "parameterOrder": [ + "project", + "region", + "instanceGroupManager" + ], + "parameters": { + "instanceGroupManager": { + "description": "Name of the managed instance group.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/abandonInstances", + "request": { + "$ref": "RegionInstanceGroupManagersAbandonInstancesRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "delete": { + "description": "Deletes the specified managed instance group and all of the instances in that group.", + "httpMethod": "DELETE", + "id": "compute.regionInstanceGroupManagers.delete", + "parameterOrder": [ + "project", + "region", + "instanceGroupManager" + ], + "parameters": { + "instanceGroupManager": { + "description": "Name of the managed instance group to delete.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "deleteInstances": { + "description": "Schedules a group action to delete the specified instances in the managed instance group. The instances are also removed from any target pools of which they were a member. This method reduces the targetSize of the managed instance group by the number of instances that you delete. This operation is marked as DONE when the action is scheduled even if the instances are still being deleted. You must separately verify the status of the deleting action with the listmanagedinstances method.\n\nIf the group is part of a backend service that has enabled connection draining, it can take up to 60 seconds after the connection draining duration has elapsed before the VM instance is removed or deleted.\n\nYou can specify a maximum of 1000 instances with this method per request.", + "httpMethod": "POST", + "id": "compute.regionInstanceGroupManagers.deleteInstances", + "parameterOrder": [ + "project", + "region", + "instanceGroupManager" + ], + "parameters": { + "instanceGroupManager": { + "description": "Name of the managed instance group.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/deleteInstances", + "request": { + "$ref": "RegionInstanceGroupManagersDeleteInstancesRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Returns all of the details about the specified managed instance group.", + "httpMethod": "GET", + "id": "compute.regionInstanceGroupManagers.get", + "parameterOrder": [ + "project", + "region", + "instanceGroupManager" + ], + "parameters": { + "instanceGroupManager": { + "description": "Name of the managed instance group to return.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}", + "response": { + "$ref": "InstanceGroupManager" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "description": "Creates a managed instance group using the information that you specify in the request. After the group is created, it schedules an action to create instances in the group using the specified instance template. This operation is marked as DONE when the group is created even if the instances in the group have not yet been created. You must separately verify the status of the individual instances with the listmanagedinstances method.\n\nA regional managed instance group can contain up to 2000 instances.", + "httpMethod": "POST", + "id": "compute.regionInstanceGroupManagers.insert", + "parameterOrder": [ + "project", + "region" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/regions/{region}/instanceGroupManagers", + "request": { + "$ref": "InstanceGroupManager" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "description": "Retrieves the list of managed instance groups that are contained within the specified region.", + "httpMethod": "GET", + "id": "compute.regionInstanceGroupManagers.list", + "parameterOrder": [ + "project", + "region" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/instanceGroupManagers", + "response": { + "$ref": "RegionInstanceGroupManagerList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "listManagedInstances": { + "description": "Lists the instances in the managed instance group and instances that are scheduled to be created. The list includes any current actions that the group has scheduled for its instances.", + "httpMethod": "POST", + "id": "compute.regionInstanceGroupManagers.listManagedInstances", + "parameterOrder": [ + "project", + "region", + "instanceGroupManager" + ], + "parameters": { + "filter": { + "location": "query", + "type": "string" + }, + "instanceGroupManager": { + "description": "The name of the managed instance group.", + "location": "path", + "required": true, + "type": "string" + }, + "maxResults": { + "default": "500", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "order_by": { + "location": "query", + "type": "string" + }, + "pageToken": { + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/listManagedInstances", + "response": { + "$ref": "RegionInstanceGroupManagersListInstancesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "recreateInstances": { + "description": "Schedules a group action to recreate the specified instances in the managed instance group. The instances are deleted and recreated using the current instance template for the managed instance group. This operation is marked as DONE when the action is scheduled even if the instances have not yet been recreated. You must separately verify the status of the recreating action with the listmanagedinstances method.\n\nIf the group is part of a backend service that has enabled connection draining, it can take up to 60 seconds after the connection draining duration has elapsed before the VM instance is removed or deleted.\n\nYou can specify a maximum of 1000 instances with this method per request.", + "httpMethod": "POST", + "id": "compute.regionInstanceGroupManagers.recreateInstances", + "parameterOrder": [ + "project", + "region", + "instanceGroupManager" + ], + "parameters": { + "instanceGroupManager": { + "description": "Name of the managed instance group.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/recreateInstances", + "request": { + "$ref": "RegionInstanceGroupManagersRecreateRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "resize": { + "description": "Changes the intended size for the managed instance group. If you increase the size, the group schedules actions to create new instances using the current instance template. If you decrease the size, the group schedules delete actions on one or more instances. The resize operation is marked DONE when the resize actions are scheduled even if the group has not yet added or deleted any instances. You must separately verify the status of the creating or deleting actions with the listmanagedinstances method.\n\nIf the group is part of a backend service that has enabled connection draining, it can take up to 60 seconds after the connection draining duration has elapsed before the VM instance is removed or deleted.", + "httpMethod": "POST", + "id": "compute.regionInstanceGroupManagers.resize", + "parameterOrder": [ + "project", + "region", + "instanceGroupManager", + "size" + ], + "parameters": { + "instanceGroupManager": { + "description": "Name of the managed instance group.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "size": { + "description": "Number of instances that should exist in this instance group manager.", + "format": "int32", + "location": "query", + "minimum": "0", + "required": true, + "type": "integer" + } + }, + "path": "{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/resize", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setInstanceTemplate": { + "description": "Sets the instance template to use when creating new instances or recreating instances in this group. Existing instances are not affected.", + "httpMethod": "POST", + "id": "compute.regionInstanceGroupManagers.setInstanceTemplate", + "parameterOrder": [ + "project", + "region", + "instanceGroupManager" + ], + "parameters": { + "instanceGroupManager": { + "description": "The name of the managed instance group.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/setInstanceTemplate", + "request": { + "$ref": "RegionInstanceGroupManagersSetTemplateRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setTargetPools": { + "description": "Modifies the target pools to which all new instances in this group are assigned. Existing instances in the group are not affected.", + "httpMethod": "POST", + "id": "compute.regionInstanceGroupManagers.setTargetPools", + "parameterOrder": [ + "project", + "region", + "instanceGroupManager" + ], + "parameters": { + "instanceGroupManager": { + "description": "Name of the managed instance group.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/setTargetPools", + "request": { + "$ref": "RegionInstanceGroupManagersSetTargetPoolsRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + } + } }, - "description": { - "type": "string", - "description": "An optional description of this resource. Provide this property when you create the resource." + "regionInstanceGroups": { + "methods": { + "get": { + "description": "Returns the specified instance group resource.", + "httpMethod": "GET", + "id": "compute.regionInstanceGroups.get", + "parameterOrder": [ + "project", + "region", + "instanceGroup" + ], + "parameters": { + "instanceGroup": { + "description": "Name of the instance group resource to return.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/instanceGroups/{instanceGroup}", + "response": { + "$ref": "InstanceGroup" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "list": { + "description": "Retrieves the list of instance group resources contained within the specified region.", + "httpMethod": "GET", + "id": "compute.regionInstanceGroups.list", + "parameterOrder": [ + "project", + "region" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/instanceGroups", + "response": { + "$ref": "RegionInstanceGroupList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "listInstances": { + "description": "Lists the instances in the specified instance group and displays information about the named ports. Depending on the specified options, this method can list all instances or only the instances that are running.", + "httpMethod": "POST", + "id": "compute.regionInstanceGroups.listInstances", + "parameterOrder": [ + "project", + "region", + "instanceGroup" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "instanceGroup": { + "description": "Name of the regional instance group for which we want to list the instances.", + "location": "path", + "required": true, + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/instanceGroups/{instanceGroup}/listInstances", + "request": { + "$ref": "RegionInstanceGroupsListInstancesRequest" + }, + "response": { + "$ref": "RegionInstanceGroupsListInstances" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "setNamedPorts": { + "description": "Sets the named ports for the specified regional instance group.", + "httpMethod": "POST", + "id": "compute.regionInstanceGroups.setNamedPorts", + "parameterOrder": [ + "project", + "region", + "instanceGroup" + ], + "parameters": { + "instanceGroup": { + "description": "The name of the regional instance group where the named ports are updated.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/regions/{region}/instanceGroups/{instanceGroup}/setNamedPorts", + "request": { + "$ref": "RegionInstanceGroupsSetNamedPortsRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + } + } }, - "gatewayIPv4": { - "type": "string", - "description": "A gateway address for default routing to other networks. This value is read only and is selected by the Google Compute Engine, typically as the first usable address in the IPv4Range.", - "pattern": "[0-9]{1,3}(?:\\.[0-9]{1,3}){3}" + "regionOperations": { + "methods": { + "delete": { + "description": "Deletes the specified region-specific Operations resource.", + "httpMethod": "DELETE", + "id": "compute.regionOperations.delete", + "parameterOrder": [ + "project", + "region", + "operation" + ], + "parameters": { + "operation": { + "description": "Name of the Operations resource to delete.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/operations/{operation}", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Retrieves the specified region-specific Operations resource.", + "httpMethod": "GET", + "id": "compute.regionOperations.get", + "parameterOrder": [ + "project", + "region", + "operation" + ], + "parameters": { + "operation": { + "description": "Name of the Operations resource to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/operations/{operation}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "list": { + "description": "Retrieves a list of Operation resources contained within the specified region.", + "httpMethod": "GET", + "id": "compute.regionOperations.list", + "parameterOrder": [ + "project", + "region" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/operations", + "response": { + "$ref": "OperationList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + } + } }, - "id": { - "type": "string", - "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", - "format": "uint64" + "regions": { + "methods": { + "get": { + "description": "Returns the specified Region resource. Get a list of available regions by making a list() request.", + "httpMethod": "GET", + "id": "compute.regions.get", + "parameterOrder": [ + "project", + "region" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region resource to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}", + "response": { + "$ref": "Region" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "list": { + "description": "Retrieves the list of region resources available to the specified project.", + "httpMethod": "GET", + "id": "compute.regions.list", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions", + "response": { + "$ref": "RegionList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + } + } }, - "kind": { - "type": "string", - "description": "[Output Only] Type of the resource. Always compute#network for networks.", - "default": "compute#network" + "routers": { + "methods": { + "aggregatedList": { + "description": "Retrieves an aggregated list of routers.", + "httpMethod": "GET", + "id": "compute.routers.aggregatedList", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/aggregated/routers", + "response": { + "$ref": "RouterAggregatedList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "delete": { + "description": "Deletes the specified Router resource.", + "httpMethod": "DELETE", + "id": "compute.routers.delete", + "parameterOrder": [ + "project", + "region", + "router" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "router": { + "description": "Name of the Router resource to delete.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/routers/{router}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Returns the specified Router resource. Get a list of available routers by making a list() request.", + "httpMethod": "GET", + "id": "compute.routers.get", + "parameterOrder": [ + "project", + "region", + "router" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "router": { + "description": "Name of the Router resource to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/routers/{router}", + "response": { + "$ref": "Router" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "getRouterStatus": { + "description": "Retrieves runtime information of the specified router.", + "httpMethod": "GET", + "id": "compute.routers.getRouterStatus", + "parameterOrder": [ + "project", + "region", + "router" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "router": { + "description": "Name of the Router resource to query.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/routers/{router}/getRouterStatus", + "response": { + "$ref": "RouterStatusResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "description": "Creates a Router resource in the specified project and region using the data included in the request.", + "httpMethod": "POST", + "id": "compute.routers.insert", + "parameterOrder": [ + "project", + "region" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/regions/{region}/routers", + "request": { + "$ref": "Router" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "description": "Retrieves a list of Router resources available to the specified project.", + "httpMethod": "GET", + "id": "compute.routers.list", + "parameterOrder": [ + "project", + "region" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/routers", + "response": { + "$ref": "RouterList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "patch": { + "description": "Patches the specified Router resource with the data included in the request. This method supports PATCH semantics and uses JSON merge patch format and processing rules.", + "httpMethod": "PATCH", + "id": "compute.routers.patch", + "parameterOrder": [ + "project", + "region", + "router" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "router": { + "description": "Name of the Router resource to patch.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/routers/{router}", + "request": { + "$ref": "Router" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "preview": { + "description": "Preview fields auto-generated during router create and update operations. Calling this method does NOT create or update the router.", + "httpMethod": "POST", + "id": "compute.routers.preview", + "parameterOrder": [ + "project", + "region", + "router" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "router": { + "description": "Name of the Router resource to query.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/routers/{router}/preview", + "request": { + "$ref": "Router" + }, + "response": { + "$ref": "RoutersPreviewResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "update": { + "description": "Updates the specified Router resource with the data included in the request.", + "httpMethod": "PUT", + "id": "compute.routers.update", + "parameterOrder": [ + "project", + "region", + "router" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "router": { + "description": "Name of the Router resource to update.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/routers/{router}", + "request": { + "$ref": "Router" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + } + } }, - "name": { - "type": "string", - "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "annotations": { - "required": [ - "compute.networks.insert" - ] - } + "routes": { + "methods": { + "delete": { + "description": "Deletes the specified Route resource.", + "httpMethod": "DELETE", + "id": "compute.routes.delete", + "parameterOrder": [ + "project", + "route" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "route": { + "description": "Name of the Route resource to delete.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/routes/{route}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Returns the specified Route resource. Get a list of available routes by making a list() request.", + "httpMethod": "GET", + "id": "compute.routes.get", + "parameterOrder": [ + "project", + "route" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "route": { + "description": "Name of the Route resource to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/routes/{route}", + "response": { + "$ref": "Route" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "description": "Creates a Route resource in the specified project using the data included in the request.", + "httpMethod": "POST", + "id": "compute.routes.insert", + "parameterOrder": [ + "project" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/routes", + "request": { + "$ref": "Route" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "description": "Retrieves the list of Route resources available to the specified project.", + "httpMethod": "GET", + "id": "compute.routes.list", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/routes", + "response": { + "$ref": "RouteList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + } + } }, - "peerings": { - "type": "array", - "description": "[Output Only] List of network peerings for the resource.", - "items": { - "$ref": "NetworkPeering" - } + "snapshots": { + "methods": { + "delete": { + "description": "Deletes the specified Snapshot resource. Keep in mind that deleting a single snapshot might not necessarily delete all the data on that snapshot. If any data on the snapshot that is marked for deletion is needed for subsequent snapshots, the data will be moved to the next corresponding snapshot.\n\nFor more information, see Deleting snaphots.", + "httpMethod": "DELETE", + "id": "compute.snapshots.delete", + "parameterOrder": [ + "project", + "snapshot" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "snapshot": { + "description": "Name of the Snapshot resource to delete.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/snapshots/{snapshot}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Returns the specified Snapshot resource. Get a list of available snapshots by making a list() request.", + "httpMethod": "GET", + "id": "compute.snapshots.get", + "parameterOrder": [ + "project", + "snapshot" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "snapshot": { + "description": "Name of the Snapshot resource to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/snapshots/{snapshot}", + "response": { + "$ref": "Snapshot" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "list": { + "description": "Retrieves the list of Snapshot resources contained within the specified project.", + "httpMethod": "GET", + "id": "compute.snapshots.list", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/snapshots", + "response": { + "$ref": "SnapshotList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "setLabels": { + "description": "Sets the labels on a snapshot. To learn more about labels, read the Labeling Resources documentation.", + "httpMethod": "POST", + "id": "compute.snapshots.setLabels", + "parameterOrder": [ + "project", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/snapshots/{resource}/setLabels", + "request": { + "$ref": "GlobalSetLabelsRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + } + } }, - "routingConfig": { - "$ref": "NetworkRoutingConfig", - "description": "The network-level routing configuration for this network. Used by Cloud Router to determine what type of network-wide routing behavior to enforce." + "sslCertificates": { + "methods": { + "delete": { + "description": "Deletes the specified SslCertificate resource.", + "httpMethod": "DELETE", + "id": "compute.sslCertificates.delete", + "parameterOrder": [ + "project", + "sslCertificate" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "sslCertificate": { + "description": "Name of the SslCertificate resource to delete.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/sslCertificates/{sslCertificate}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Returns the specified SslCertificate resource. Get a list of available SSL certificates by making a list() request.", + "httpMethod": "GET", + "id": "compute.sslCertificates.get", + "parameterOrder": [ + "project", + "sslCertificate" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "sslCertificate": { + "description": "Name of the SslCertificate resource to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/sslCertificates/{sslCertificate}", + "response": { + "$ref": "SslCertificate" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "description": "Creates a SslCertificate resource in the specified project using the data included in the request.", + "httpMethod": "POST", + "id": "compute.sslCertificates.insert", + "parameterOrder": [ + "project" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/sslCertificates", + "request": { + "$ref": "SslCertificate" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "description": "Retrieves the list of SslCertificate resources available to the specified project.", + "httpMethod": "GET", + "id": "compute.sslCertificates.list", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/sslCertificates", + "response": { + "$ref": "SslCertificateList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + } + } }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for the resource." + "sslPolicies": { + "methods": { + "delete": { + "description": "Deletes the specified SSL policy. The SSL policy resource can be deleted only if it is not in use by any TargetHttpsProxy or TargetSslProxy resources.", + "httpMethod": "DELETE", + "id": "compute.sslPolicies.delete", + "parameterOrder": [ + "project", + "sslPolicy" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "sslPolicy": { + "description": "Name of the SSL policy to delete. The name must be 1-63 characters long, and comply with RFC1035.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/sslPolicies/{sslPolicy}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "List all of the ordered rules present in a single specified policy.", + "httpMethod": "GET", + "id": "compute.sslPolicies.get", + "parameterOrder": [ + "project", + "sslPolicy" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "sslPolicy": { + "description": "Name of the SSL policy to update. The name must be 1-63 characters long, and comply with RFC1035.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/sslPolicies/{sslPolicy}", + "response": { + "$ref": "SslPolicy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "description": "Returns the specified SSL policy resource. Get a list of available SSL policies by making a list() request.", + "httpMethod": "POST", + "id": "compute.sslPolicies.insert", + "parameterOrder": [ + "project" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/sslPolicies", + "request": { + "$ref": "SslPolicy" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "description": "List all the SSL policies that have been configured for the specified project.", + "httpMethod": "GET", + "id": "compute.sslPolicies.list", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/sslPolicies", + "response": { + "$ref": "SslPoliciesList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "listAvailableFeatures": { + "description": "Lists all features that can be specified in the SSL policy when using custom profile.", + "httpMethod": "GET", + "id": "compute.sslPolicies.listAvailableFeatures", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/sslPolicies/listAvailableFeatures", + "response": { + "$ref": "SslPoliciesListAvailableFeaturesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "patch": { + "description": "Patches the specified SSL policy with the data included in the request.", + "httpMethod": "PATCH", + "id": "compute.sslPolicies.patch", + "parameterOrder": [ + "project", + "sslPolicy" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "sslPolicy": { + "description": "Name of the SSL policy to update. The name must be 1-63 characters long, and comply with RFC1035.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/sslPolicies/{sslPolicy}", + "request": { + "$ref": "SslPolicy" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + } + } }, "subnetworks": { - "type": "array", - "description": "[Output Only] Server-defined fully-qualified URLs for all subnetworks in this network.", - "items": { - "type": "string" - } - } - } - }, - "NetworkInterface": { - "id": "NetworkInterface", - "type": "object", - "description": "A network interface resource attached to an instance.", - "properties": { - "accessConfigs": { - "type": "array", - "description": "An array of configurations for this interface. Currently, only one access config, ONE_TO_ONE_NAT, is supported. If there are no accessConfigs specified, then this instance will have no external internet access.", - "items": { - "$ref": "AccessConfig" - } - }, - "aliasIpRanges": { - "type": "array", - "description": "An array of alias IP ranges for this network interface. Can only be specified for network interfaces on subnet-mode networks.", - "items": { - "$ref": "AliasIpRange" - } - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of the resource. Always compute#networkInterface for network interfaces.", - "default": "compute#networkInterface" - }, - "name": { - "type": "string", - "description": "[Output Only] The name of the network interface, generated by the server. For network devices, these are eth0, eth1, etc." - }, - "network": { - "type": "string", - "description": "URL of the network resource for this instance. When creating an instance, if neither the network nor the subnetwork is specified, the default network global/networks/default is used; if the network is not specified but the subnetwork is specified, the network is inferred.\n\nThis field is optional when creating a firewall rule. If not specified when creating a firewall rule, the default network global/networks/default is used.\n\nIf you specify this property, you can specify the network as a full or partial URL. For example, the following are all valid URLs: \n- https://www.googleapis.com/compute/v1/projects/project/global/networks/network \n- projects/project/global/networks/network \n- global/networks/default" - }, - "networkIP": { - "type": "string", - "description": "An IPv4 internal network address to assign to the instance for this network interface. If not specified by the user, an unused internal IP is assigned by the system." - }, - "subnetwork": { - "type": "string", - "description": "The URL of the Subnetwork resource for this instance. If the network resource is in legacy mode, do not provide this property. If the network is in auto subnet mode, providing the subnetwork is optional. If the network is in custom subnet mode, then this field should be specified. If you specify this property, you can specify the subnetwork as a full or partial URL. For example, the following are all valid URLs: \n- https://www.googleapis.com/compute/v1/projects/project/regions/region/subnetworks/subnetwork \n- regions/region/subnetworks/subnetwork" - } - } - }, - "NetworkList": { - "id": "NetworkList", - "type": "object", - "description": "Contains a list of networks.", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "array", - "description": "A list of Network resources.", - "items": { - "$ref": "Network" - } - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#networkList for lists of networks.", - "default": "compute#networkList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "NetworkPeering": { - "id": "NetworkPeering", - "type": "object", - "description": "A network peering attached to a network resource. The message includes the peering name, peer network, peering state, and a flag indicating whether Google Compute Engine should automatically create routes for the peering.", - "properties": { - "autoCreateRoutes": { - "type": "boolean", - "description": "Whether full mesh connectivity is created and managed automatically. When it is set to true, Google Compute Engine will automatically create and manage the routes between two networks when the state is ACTIVE. Otherwise, user needs to create routes manually to route packets to peer network." - }, - "name": { - "type": "string", - "description": "Name of this peering. Provided by the client when the peering is created. The name must comply with RFC1035. Specifically, the name must be 1-63 characters long and match regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all the following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash." - }, - "network": { - "type": "string", - "description": "The URL of the peer network. It can be either full URL or partial URL. The peer network may belong to a different project. If the partial URL does not contain project, it is assumed that the peer network is in the same project as the current network." - }, - "state": { - "type": "string", - "description": "[Output Only] State for the peering.", - "enum": [ - "ACTIVE", - "INACTIVE" - ], - "enumDescriptions": [ - "", - "" - ] - }, - "stateDetails": { - "type": "string", - "description": "[Output Only] Details about the current state of the peering." - } - } - }, - "NetworkRoutingConfig": { - "id": "NetworkRoutingConfig", - "type": "object", - "description": "A routing configuration attached to a network resource. The message includes the list of routers associated with the network, and a flag indicating the type of routing behavior to enforce network-wide.", - "properties": { - "routingMode": { - "type": "string", - "description": "The network-wide routing mode to use. If set to REGIONAL, this network's cloud routers will only advertise routes with subnetworks of this network in the same region as the router. If set to GLOBAL, this network's cloud routers will advertise routes with all subnetworks of this network, across regions.", - "enum": [ - "GLOBAL", - "REGIONAL" - ], - "enumDescriptions": [ - "", - "" - ] - } - } - }, - "NetworksAddPeeringRequest": { - "id": "NetworksAddPeeringRequest", - "type": "object", - "properties": { - "autoCreateRoutes": { - "type": "boolean", - "description": "Whether Google Compute Engine manages the routes automatically." - }, - "name": { - "type": "string", - "description": "Name of the peering, which should conform to RFC1035.", - "annotations": { - "required": [ - "compute.networks.addPeering" - ] - } - }, - "peerNetwork": { - "type": "string", - "description": "URL of the peer network. It can be either full URL or partial URL. The peer network may belong to a different project. If the partial URL does not contain project, it is assumed that the peer network is in the same project as the current network." - } - } - }, - "NetworksRemovePeeringRequest": { - "id": "NetworksRemovePeeringRequest", - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "Name of the peering, which should conform to RFC1035." - } - } - }, - "Operation": { - "id": "Operation", - "type": "object", - "description": "An Operation resource, used to manage asynchronous API requests. (== resource_for v1.globalOperations ==) (== resource_for beta.globalOperations ==) (== resource_for v1.regionOperations ==) (== resource_for beta.regionOperations ==) (== resource_for v1.zoneOperations ==) (== resource_for beta.zoneOperations ==)", - "properties": { - "clientOperationId": { - "type": "string", - "description": "[Output Only] Reserved for future use." - }, - "creationTimestamp": { - "type": "string", - "description": "[Deprecated] This field is deprecated." - }, - "description": { - "type": "string", - "description": "[Output Only] A textual description of the operation, which is set when the operation is created." - }, - "endTime": { - "type": "string", - "description": "[Output Only] The time that this operation was completed. This value is in RFC3339 text format." - }, - "error": { - "type": "object", - "description": "[Output Only] If errors are generated during processing of the operation, this field will be populated.", - "properties": { - "errors": { - "type": "array", - "description": "[Output Only] The array of errors encountered while processing this operation.", - "items": { - "type": "object", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] The error type identifier for this error." - }, - "location": { - "type": "string", - "description": "[Output Only] Indicates the field in the request that caused the error. This property is optional." - }, - "message": { - "type": "string", - "description": "[Output Only] An optional, human-readable error message." - } - } - } - } - } - }, - "httpErrorMessage": { - "type": "string", - "description": "[Output Only] If the operation fails, this field contains the HTTP error message that was returned, such as NOT FOUND." - }, - "httpErrorStatusCode": { - "type": "integer", - "description": "[Output Only] If the operation fails, this field contains the HTTP error status code that was returned. For example, a 404 means the resource was not found.", - "format": "int32" - }, - "id": { - "type": "string", - "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", - "format": "uint64" - }, - "insertTime": { - "type": "string", - "description": "[Output Only] The time that this operation was requested. This value is in RFC3339 text format." - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of the resource. Always compute#operation for Operation resources.", - "default": "compute#operation" - }, - "name": { - "type": "string", - "description": "[Output Only] Name of the resource." - }, - "operationType": { - "type": "string", - "description": "[Output Only] The type of operation, such as insert, update, or delete, and so on." - }, - "progress": { - "type": "integer", - "description": "[Output Only] An optional progress indicator that ranges from 0 to 100. There is no requirement that this be linear or support any granularity of operations. This should not be used to guess when the operation will be complete. This number should monotonically increase as the operation progresses.", - "format": "int32" - }, - "region": { - "type": "string", - "description": "[Output Only] The URL of the region where the operation resides. Only available when performing regional operations." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for the resource." - }, - "startTime": { - "type": "string", - "description": "[Output Only] The time that this operation was started by the server. This value is in RFC3339 text format." - }, - "status": { - "type": "string", - "description": "[Output Only] The status of the operation, which can be one of the following: PENDING, RUNNING, or DONE.", - "enum": [ - "DONE", - "PENDING", - "RUNNING" - ], - "enumDescriptions": [ - "", - "", - "" - ] - }, - "statusMessage": { - "type": "string", - "description": "[Output Only] An optional textual description of the current status of the operation." - }, - "targetId": { - "type": "string", - "description": "[Output Only] The unique target ID, which identifies a specific incarnation of the target resource.", - "format": "uint64" - }, - "targetLink": { - "type": "string", - "description": "[Output Only] The URL of the resource that the operation modifies. For operations related to creating a snapshot, this points to the persistent disk that the snapshot was created from." - }, - "user": { - "type": "string", - "description": "[Output Only] User who requested the operation, for example: user@example.com." - }, - "warnings": { - "type": "array", - "description": "[Output Only] If warning messages are generated during processing of the operation, this field will be populated.", - "items": { - "type": "object", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." + "methods": { + "aggregatedList": { + "description": "Retrieves an aggregated list of subnetworks.", + "httpMethod": "GET", + "id": "compute.subnetworks.aggregatedList", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } + "path": "{project}/aggregated/subnetworks", + "response": { + "$ref": "SubnetworkAggregatedList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "delete": { + "description": "Deletes the specified subnetwork.", + "httpMethod": "DELETE", + "id": "compute.subnetworks.delete", + "parameterOrder": [ + "project", + "region", + "subnetwork" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "subnetwork": { + "description": "Name of the Subnetwork resource to delete.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/subnetworks/{subnetwork}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "expandIpCidrRange": { + "description": "Expands the IP CIDR range of the subnetwork to a specified value.", + "httpMethod": "POST", + "id": "compute.subnetworks.expandIpCidrRange", + "parameterOrder": [ + "project", + "region", + "subnetwork" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "subnetwork": { + "description": "Name of the Subnetwork resource to update.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/subnetworks/{subnetwork}/expandIpCidrRange", + "request": { + "$ref": "SubnetworksExpandIpCidrRangeRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Returns the specified subnetwork. Get a list of available subnetworks list() request.", + "httpMethod": "GET", + "id": "compute.subnetworks.get", + "parameterOrder": [ + "project", + "region", + "subnetwork" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "subnetwork": { + "description": "Name of the Subnetwork resource to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/subnetworks/{subnetwork}", + "response": { + "$ref": "Subnetwork" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "description": "Creates a subnetwork in the specified project using the data included in the request.", + "httpMethod": "POST", + "id": "compute.subnetworks.insert", + "parameterOrder": [ + "project", + "region" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/regions/{region}/subnetworks", + "request": { + "$ref": "Subnetwork" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "description": "Retrieves a list of subnetworks available to the specified project.", + "httpMethod": "GET", + "id": "compute.subnetworks.list", + "parameterOrder": [ + "project", + "region" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/subnetworks", + "response": { + "$ref": "SubnetworkList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "patch": { + "description": "Patches the specified subnetwork with the data included in the request. Only the following fields within the subnetwork resource can be specified in the request: secondary_ip_range, allow_subnet_cidr_routes_overlap and role. It is also mandatory to specify the current fingeprint of the subnetwork resource being patched.", + "httpMethod": "PATCH", + "id": "compute.subnetworks.patch", + "parameterOrder": [ + "project", + "region", + "subnetwork" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "subnetwork": { + "description": "Name of the Subnetwork resource to patch.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/subnetworks/{subnetwork}", + "request": { + "$ref": "Subnetwork" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setPrivateIpGoogleAccess": { + "description": "Set whether VMs in this subnet can access Google services without assigning external IP addresses through Private Google Access.", + "httpMethod": "POST", + "id": "compute.subnetworks.setPrivateIpGoogleAccess", + "parameterOrder": [ + "project", + "region", + "subnetwork" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "subnetwork": { + "description": "Name of the Subnetwork resource.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/subnetworks/{subnetwork}/setPrivateIpGoogleAccess", + "request": { + "$ref": "SubnetworksSetPrivateIpGoogleAccessRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } } - } }, - "zone": { - "type": "string", - "description": "[Output Only] The URL of the zone where the operation resides. Only available when performing per-zone operations." - } - } - }, - "OperationAggregatedList": { - "id": "OperationAggregatedList", - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server." - }, - "items": { - "type": "object", - "description": "[Output Only] A map of scoped operation lists.", - "additionalProperties": { - "$ref": "OperationsScopedList", - "description": "[Output Only] Name of the scope containing this set of operations." - } - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#operationAggregatedList for aggregated lists of operations.", - "default": "compute#operationAggregatedList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } + "targetHttpProxies": { + "methods": { + "delete": { + "description": "Deletes the specified TargetHttpProxy resource.", + "httpMethod": "DELETE", + "id": "compute.targetHttpProxies.delete", + "parameterOrder": [ + "project", + "targetHttpProxy" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "targetHttpProxy": { + "description": "Name of the TargetHttpProxy resource to delete.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/targetHttpProxies/{targetHttpProxy}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Returns the specified TargetHttpProxy resource. Get a list of available target HTTP proxies by making a list() request.", + "httpMethod": "GET", + "id": "compute.targetHttpProxies.get", + "parameterOrder": [ + "project", + "targetHttpProxy" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "targetHttpProxy": { + "description": "Name of the TargetHttpProxy resource to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/targetHttpProxies/{targetHttpProxy}", + "response": { + "$ref": "TargetHttpProxy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "description": "Creates a TargetHttpProxy resource in the specified project using the data included in the request.", + "httpMethod": "POST", + "id": "compute.targetHttpProxies.insert", + "parameterOrder": [ + "project" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/targetHttpProxies", + "request": { + "$ref": "TargetHttpProxy" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "description": "Retrieves the list of TargetHttpProxy resources available to the specified project.", + "httpMethod": "GET", + "id": "compute.targetHttpProxies.list", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/targetHttpProxies", + "response": { + "$ref": "TargetHttpProxyList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "setUrlMap": { + "description": "Changes the URL map for TargetHttpProxy.", + "httpMethod": "POST", + "id": "compute.targetHttpProxies.setUrlMap", + "parameterOrder": [ + "project", + "targetHttpProxy" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "targetHttpProxy": { + "description": "Name of the TargetHttpProxy to set a URL map for.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/targetHttpProxies/{targetHttpProxy}/setUrlMap", + "request": { + "$ref": "UrlMapReference" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." } - } - } - } - }, - "OperationList": { - "id": "OperationList", - "type": "object", - "description": "Contains a list of Operation resources.", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server." }, - "items": { - "type": "array", - "description": "[Output Only] A list of Operation resources.", - "items": { - "$ref": "Operation" - } - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#operations for Operations resource.", - "default": "compute#operationList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } + "targetHttpsProxies": { + "methods": { + "delete": { + "description": "Deletes the specified TargetHttpsProxy resource.", + "httpMethod": "DELETE", + "id": "compute.targetHttpsProxies.delete", + "parameterOrder": [ + "project", + "targetHttpsProxy" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "targetHttpsProxy": { + "description": "Name of the TargetHttpsProxy resource to delete.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/targetHttpsProxies/{targetHttpsProxy}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Returns the specified TargetHttpsProxy resource. Get a list of available target HTTPS proxies by making a list() request.", + "httpMethod": "GET", + "id": "compute.targetHttpsProxies.get", + "parameterOrder": [ + "project", + "targetHttpsProxy" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "targetHttpsProxy": { + "description": "Name of the TargetHttpsProxy resource to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/targetHttpsProxies/{targetHttpsProxy}", + "response": { + "$ref": "TargetHttpsProxy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "description": "Creates a TargetHttpsProxy resource in the specified project using the data included in the request.", + "httpMethod": "POST", + "id": "compute.targetHttpsProxies.insert", + "parameterOrder": [ + "project" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/targetHttpsProxies", + "request": { + "$ref": "TargetHttpsProxy" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "description": "Retrieves the list of TargetHttpsProxy resources available to the specified project.", + "httpMethod": "GET", + "id": "compute.targetHttpsProxies.list", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/targetHttpsProxies", + "response": { + "$ref": "TargetHttpsProxyList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "setSslCertificates": { + "description": "Replaces SslCertificates for TargetHttpsProxy.", + "httpMethod": "POST", + "id": "compute.targetHttpsProxies.setSslCertificates", + "parameterOrder": [ + "project", + "targetHttpsProxy" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "targetHttpsProxy": { + "description": "Name of the TargetHttpsProxy resource to set an SslCertificates resource for.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/targetHttpsProxies/{targetHttpsProxy}/setSslCertificates", + "request": { + "$ref": "TargetHttpsProxiesSetSslCertificatesRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setSslPolicy": { + "description": "Sets the SSL policy for TargetHttpsProxy. The SSL policy specifies the server-side support for SSL features. This affects connections between clients and the HTTPS proxy load balancer. They do not affect the connection between the load balancer and the backends.", + "httpMethod": "POST", + "id": "compute.targetHttpsProxies.setSslPolicy", + "parameterOrder": [ + "project", + "targetHttpsProxy" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "targetHttpsProxy": { + "description": "Name of the TargetHttpsProxy resource whose SSL policy is to be set. The name must be 1-63 characters long, and comply with RFC1035.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/targetHttpsProxies/{targetHttpsProxy}/setSslPolicy", + "request": { + "$ref": "SslPolicyReference" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setUrlMap": { + "description": "Changes the URL map for TargetHttpsProxy.", + "httpMethod": "POST", + "id": "compute.targetHttpsProxies.setUrlMap", + "parameterOrder": [ + "project", + "targetHttpsProxy" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "targetHttpsProxy": { + "description": "Name of the TargetHttpsProxy resource whose URL map is to be set.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/targetHttpsProxies/{targetHttpsProxy}/setUrlMap", + "request": { + "$ref": "UrlMapReference" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." } - } - } - } - }, - "OperationsScopedList": { - "id": "OperationsScopedList", - "type": "object", - "properties": { - "operations": { - "type": "array", - "description": "[Output Only] List of operations contained in this scope.", - "items": { - "$ref": "Operation" - } }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning which replaces the list of operations when the list is empty.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } + "targetInstances": { + "methods": { + "aggregatedList": { + "description": "Retrieves an aggregated list of target instances.", + "httpMethod": "GET", + "id": "compute.targetInstances.aggregatedList", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/aggregated/targetInstances", + "response": { + "$ref": "TargetInstanceAggregatedList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "delete": { + "description": "Deletes the specified TargetInstance resource.", + "httpMethod": "DELETE", + "id": "compute.targetInstances.delete", + "parameterOrder": [ + "project", + "zone", + "targetInstance" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "targetInstance": { + "description": "Name of the TargetInstance resource to delete.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "zone": { + "description": "Name of the zone scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/targetInstances/{targetInstance}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Returns the specified TargetInstance resource. Get a list of available target instances by making a list() request.", + "httpMethod": "GET", + "id": "compute.targetInstances.get", + "parameterOrder": [ + "project", + "zone", + "targetInstance" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "targetInstance": { + "description": "Name of the TargetInstance resource to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "zone": { + "description": "Name of the zone scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/targetInstances/{targetInstance}", + "response": { + "$ref": "TargetInstance" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "description": "Creates a TargetInstance resource in the specified project and zone using the data included in the request.", + "httpMethod": "POST", + "id": "compute.targetInstances.insert", + "parameterOrder": [ + "project", + "zone" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "Name of the zone scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/targetInstances", + "request": { + "$ref": "TargetInstance" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "description": "Retrieves a list of TargetInstance resources available to the specified project and zone.", + "httpMethod": "GET", + "id": "compute.targetInstances.list", + "parameterOrder": [ + "project", + "zone" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "zone": { + "description": "Name of the zone scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/targetInstances", + "response": { + "$ref": "TargetInstanceList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." } - } - } - } - }, - "PathMatcher": { - "id": "PathMatcher", - "type": "object", - "description": "A matcher for the path portion of the URL. The BackendService from the longest-matched rule will serve the URL. If no rule was matched, the default service will be used.", - "properties": { - "defaultService": { - "type": "string", - "description": "The full or partial URL to the BackendService resource. This will be used if none of the pathRules defined by this PathMatcher is matched by the URL's path portion. For example, the following are all valid URLs to a BackendService resource: \n- https://www.googleapis.com/compute/v1/projects/project/global/backendServices/backendService \n- compute/v1/projects/project/global/backendServices/backendService \n- global/backendServices/backendService" }, - "description": { - "type": "string", - "description": "An optional description of this resource. Provide this property when you create the resource." + "targetPools": { + "methods": { + "addHealthCheck": { + "description": "Adds health check URLs to a target pool.", + "httpMethod": "POST", + "id": "compute.targetPools.addHealthCheck", + "parameterOrder": [ + "project", + "region", + "targetPool" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "targetPool": { + "description": "Name of the target pool to add a health check to.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/targetPools/{targetPool}/addHealthCheck", + "request": { + "$ref": "TargetPoolsAddHealthCheckRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "addInstance": { + "description": "Adds an instance to a target pool.", + "httpMethod": "POST", + "id": "compute.targetPools.addInstance", + "parameterOrder": [ + "project", + "region", + "targetPool" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "targetPool": { + "description": "Name of the TargetPool resource to add instances to.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/targetPools/{targetPool}/addInstance", + "request": { + "$ref": "TargetPoolsAddInstanceRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "aggregatedList": { + "description": "Retrieves an aggregated list of target pools.", + "httpMethod": "GET", + "id": "compute.targetPools.aggregatedList", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/aggregated/targetPools", + "response": { + "$ref": "TargetPoolAggregatedList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "delete": { + "description": "Deletes the specified target pool.", + "httpMethod": "DELETE", + "id": "compute.targetPools.delete", + "parameterOrder": [ + "project", + "region", + "targetPool" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "targetPool": { + "description": "Name of the TargetPool resource to delete.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/targetPools/{targetPool}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Returns the specified target pool. Get a list of available target pools by making a list() request.", + "httpMethod": "GET", + "id": "compute.targetPools.get", + "parameterOrder": [ + "project", + "region", + "targetPool" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "targetPool": { + "description": "Name of the TargetPool resource to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/targetPools/{targetPool}", + "response": { + "$ref": "TargetPool" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "getHealth": { + "description": "Gets the most recent health check results for each IP for the instance that is referenced by the given target pool.", + "httpMethod": "POST", + "id": "compute.targetPools.getHealth", + "parameterOrder": [ + "project", + "region", + "targetPool" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "targetPool": { + "description": "Name of the TargetPool resource to which the queried instance belongs.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/targetPools/{targetPool}/getHealth", + "request": { + "$ref": "InstanceReference" + }, + "response": { + "$ref": "TargetPoolInstanceHealth" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "description": "Creates a target pool in the specified project and region using the data included in the request.", + "httpMethod": "POST", + "id": "compute.targetPools.insert", + "parameterOrder": [ + "project", + "region" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/regions/{region}/targetPools", + "request": { + "$ref": "TargetPool" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "description": "Retrieves a list of target pools available to the specified project and region.", + "httpMethod": "GET", + "id": "compute.targetPools.list", + "parameterOrder": [ + "project", + "region" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/targetPools", + "response": { + "$ref": "TargetPoolList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "removeHealthCheck": { + "description": "Removes health check URL from a target pool.", + "httpMethod": "POST", + "id": "compute.targetPools.removeHealthCheck", + "parameterOrder": [ + "project", + "region", + "targetPool" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "targetPool": { + "description": "Name of the target pool to remove health checks from.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/targetPools/{targetPool}/removeHealthCheck", + "request": { + "$ref": "TargetPoolsRemoveHealthCheckRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "removeInstance": { + "description": "Removes instance URL from a target pool.", + "httpMethod": "POST", + "id": "compute.targetPools.removeInstance", + "parameterOrder": [ + "project", + "region", + "targetPool" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "targetPool": { + "description": "Name of the TargetPool resource to remove instances from.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/targetPools/{targetPool}/removeInstance", + "request": { + "$ref": "TargetPoolsRemoveInstanceRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setBackup": { + "description": "Changes a backup target pool's configurations.", + "httpMethod": "POST", + "id": "compute.targetPools.setBackup", + "parameterOrder": [ + "project", + "region", + "targetPool" + ], + "parameters": { + "failoverRatio": { + "description": "New failoverRatio value for the target pool.", + "format": "float", + "location": "query", + "type": "number" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "targetPool": { + "description": "Name of the TargetPool resource to set a backup pool for.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/targetPools/{targetPool}/setBackup", + "request": { + "$ref": "TargetReference" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + } + } }, - "name": { - "type": "string", - "description": "The name to which this PathMatcher is referred by the HostRule." + "targetSslProxies": { + "methods": { + "delete": { + "description": "Deletes the specified TargetSslProxy resource.", + "httpMethod": "DELETE", + "id": "compute.targetSslProxies.delete", + "parameterOrder": [ + "project", + "targetSslProxy" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "targetSslProxy": { + "description": "Name of the TargetSslProxy resource to delete.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/targetSslProxies/{targetSslProxy}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Returns the specified TargetSslProxy resource. Get a list of available target SSL proxies by making a list() request.", + "httpMethod": "GET", + "id": "compute.targetSslProxies.get", + "parameterOrder": [ + "project", + "targetSslProxy" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "targetSslProxy": { + "description": "Name of the TargetSslProxy resource to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/targetSslProxies/{targetSslProxy}", + "response": { + "$ref": "TargetSslProxy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "description": "Creates a TargetSslProxy resource in the specified project using the data included in the request.", + "httpMethod": "POST", + "id": "compute.targetSslProxies.insert", + "parameterOrder": [ + "project" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/targetSslProxies", + "request": { + "$ref": "TargetSslProxy" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "description": "Retrieves the list of TargetSslProxy resources available to the specified project.", + "httpMethod": "GET", + "id": "compute.targetSslProxies.list", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/targetSslProxies", + "response": { + "$ref": "TargetSslProxyList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "setBackendService": { + "description": "Changes the BackendService for TargetSslProxy.", + "httpMethod": "POST", + "id": "compute.targetSslProxies.setBackendService", + "parameterOrder": [ + "project", + "targetSslProxy" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "targetSslProxy": { + "description": "Name of the TargetSslProxy resource whose BackendService resource is to be set.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/targetSslProxies/{targetSslProxy}/setBackendService", + "request": { + "$ref": "TargetSslProxiesSetBackendServiceRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setProxyHeader": { + "description": "Changes the ProxyHeaderType for TargetSslProxy.", + "httpMethod": "POST", + "id": "compute.targetSslProxies.setProxyHeader", + "parameterOrder": [ + "project", + "targetSslProxy" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "targetSslProxy": { + "description": "Name of the TargetSslProxy resource whose ProxyHeader is to be set.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/targetSslProxies/{targetSslProxy}/setProxyHeader", + "request": { + "$ref": "TargetSslProxiesSetProxyHeaderRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setSslCertificates": { + "description": "Changes SslCertificates for TargetSslProxy.", + "httpMethod": "POST", + "id": "compute.targetSslProxies.setSslCertificates", + "parameterOrder": [ + "project", + "targetSslProxy" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "targetSslProxy": { + "description": "Name of the TargetSslProxy resource whose SslCertificate resource is to be set.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/targetSslProxies/{targetSslProxy}/setSslCertificates", + "request": { + "$ref": "TargetSslProxiesSetSslCertificatesRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setSslPolicy": { + "description": "Sets the SSL policy for TargetSslProxy. The SSL policy specifies the server-side support for SSL features. This affects connections between clients and the SSL proxy load balancer. They do not affect the connection between the load balancer and the backends.", + "httpMethod": "POST", + "id": "compute.targetSslProxies.setSslPolicy", + "parameterOrder": [ + "project", + "targetSslProxy" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "targetSslProxy": { + "description": "Name of the TargetSslProxy resource whose SSL policy is to be set. The name must be 1-63 characters long, and comply with RFC1035.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/targetSslProxies/{targetSslProxy}/setSslPolicy", + "request": { + "$ref": "SslPolicyReference" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + } + } }, - "pathRules": { - "type": "array", - "description": "The list of path rules.", - "items": { - "$ref": "PathRule" - } - } - } - }, - "PathRule": { - "id": "PathRule", - "type": "object", - "description": "A path-matching rule for a URL. If matched, will use the specified BackendService to handle the traffic arriving at this URL.", - "properties": { - "paths": { - "type": "array", - "description": "The list of path patterns to match. Each must start with / and the only place a * is allowed is at the end following a /. The string fed to the path matcher does not include any text after the first ? or #, and those chars are not allowed here.", - "items": { - "type": "string" - } + "targetTcpProxies": { + "methods": { + "delete": { + "description": "Deletes the specified TargetTcpProxy resource.", + "httpMethod": "DELETE", + "id": "compute.targetTcpProxies.delete", + "parameterOrder": [ + "project", + "targetTcpProxy" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "targetTcpProxy": { + "description": "Name of the TargetTcpProxy resource to delete.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/targetTcpProxies/{targetTcpProxy}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Returns the specified TargetTcpProxy resource. Get a list of available target TCP proxies by making a list() request.", + "httpMethod": "GET", + "id": "compute.targetTcpProxies.get", + "parameterOrder": [ + "project", + "targetTcpProxy" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "targetTcpProxy": { + "description": "Name of the TargetTcpProxy resource to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/targetTcpProxies/{targetTcpProxy}", + "response": { + "$ref": "TargetTcpProxy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "description": "Creates a TargetTcpProxy resource in the specified project using the data included in the request.", + "httpMethod": "POST", + "id": "compute.targetTcpProxies.insert", + "parameterOrder": [ + "project" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/targetTcpProxies", + "request": { + "$ref": "TargetTcpProxy" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "description": "Retrieves the list of TargetTcpProxy resources available to the specified project.", + "httpMethod": "GET", + "id": "compute.targetTcpProxies.list", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/targetTcpProxies", + "response": { + "$ref": "TargetTcpProxyList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "setBackendService": { + "description": "Changes the BackendService for TargetTcpProxy.", + "httpMethod": "POST", + "id": "compute.targetTcpProxies.setBackendService", + "parameterOrder": [ + "project", + "targetTcpProxy" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "targetTcpProxy": { + "description": "Name of the TargetTcpProxy resource whose BackendService resource is to be set.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/targetTcpProxies/{targetTcpProxy}/setBackendService", + "request": { + "$ref": "TargetTcpProxiesSetBackendServiceRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setProxyHeader": { + "description": "Changes the ProxyHeaderType for TargetTcpProxy.", + "httpMethod": "POST", + "id": "compute.targetTcpProxies.setProxyHeader", + "parameterOrder": [ + "project", + "targetTcpProxy" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "targetTcpProxy": { + "description": "Name of the TargetTcpProxy resource whose ProxyHeader is to be set.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/targetTcpProxies/{targetTcpProxy}/setProxyHeader", + "request": { + "$ref": "TargetTcpProxiesSetProxyHeaderRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + } + } }, - "service": { - "type": "string", - "description": "The URL of the BackendService resource if this rule is matched." - } - } - }, - "Project": { - "id": "Project", - "type": "object", - "description": "A Project resource. For an overview of projects, see Cloud Platform Resource Hierarchy. (== resource_for v1.projects ==) (== resource_for beta.projects ==)", - "properties": { - "commonInstanceMetadata": { - "$ref": "Metadata", - "description": "Metadata key/value pairs available to all instances contained in this project. See Custom metadata for more information." + "targetVpnGateways": { + "methods": { + "aggregatedList": { + "description": "Retrieves an aggregated list of target VPN gateways.", + "httpMethod": "GET", + "id": "compute.targetVpnGateways.aggregatedList", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/aggregated/targetVpnGateways", + "response": { + "$ref": "TargetVpnGatewayAggregatedList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "delete": { + "description": "Deletes the specified target VPN gateway.", + "httpMethod": "DELETE", + "id": "compute.targetVpnGateways.delete", + "parameterOrder": [ + "project", + "region", + "targetVpnGateway" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "targetVpnGateway": { + "description": "Name of the target VPN gateway to delete.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/targetVpnGateways/{targetVpnGateway}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Returns the specified target VPN gateway. Get a list of available target VPN gateways by making a list() request.", + "httpMethod": "GET", + "id": "compute.targetVpnGateways.get", + "parameterOrder": [ + "project", + "region", + "targetVpnGateway" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "targetVpnGateway": { + "description": "Name of the target VPN gateway to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/targetVpnGateways/{targetVpnGateway}", + "response": { + "$ref": "TargetVpnGateway" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "description": "Creates a target VPN gateway in the specified project and region using the data included in the request.", + "httpMethod": "POST", + "id": "compute.targetVpnGateways.insert", + "parameterOrder": [ + "project", + "region" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/regions/{region}/targetVpnGateways", + "request": { + "$ref": "TargetVpnGateway" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "description": "Retrieves a list of target VPN gateways available to the specified project and region.", + "httpMethod": "GET", + "id": "compute.targetVpnGateways.list", + "parameterOrder": [ + "project", + "region" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/targetVpnGateways", + "response": { + "$ref": "TargetVpnGatewayList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + } + } }, - "creationTimestamp": { - "type": "string", - "description": "[Output Only] Creation timestamp in RFC3339 text format." + "urlMaps": { + "methods": { + "delete": { + "description": "Deletes the specified UrlMap resource.", + "httpMethod": "DELETE", + "id": "compute.urlMaps.delete", + "parameterOrder": [ + "project", + "urlMap" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "urlMap": { + "description": "Name of the UrlMap resource to delete.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/urlMaps/{urlMap}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Returns the specified UrlMap resource. Get a list of available URL maps by making a list() request.", + "httpMethod": "GET", + "id": "compute.urlMaps.get", + "parameterOrder": [ + "project", + "urlMap" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "urlMap": { + "description": "Name of the UrlMap resource to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/urlMaps/{urlMap}", + "response": { + "$ref": "UrlMap" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "description": "Creates a UrlMap resource in the specified project using the data included in the request.", + "httpMethod": "POST", + "id": "compute.urlMaps.insert", + "parameterOrder": [ + "project" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/global/urlMaps", + "request": { + "$ref": "UrlMap" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "invalidateCache": { + "description": "Initiates a cache invalidation operation, invalidating the specified path, scoped to the specified UrlMap.", + "httpMethod": "POST", + "id": "compute.urlMaps.invalidateCache", + "parameterOrder": [ + "project", + "urlMap" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "urlMap": { + "description": "Name of the UrlMap scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/urlMaps/{urlMap}/invalidateCache", + "request": { + "$ref": "CacheInvalidationRule" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "description": "Retrieves the list of UrlMap resources available to the specified project.", + "httpMethod": "GET", + "id": "compute.urlMaps.list", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/urlMaps", + "response": { + "$ref": "UrlMapList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "patch": { + "description": "Patches the specified UrlMap resource with the data included in the request. This method supports PATCH semantics and uses the JSON merge patch format and processing rules.", + "httpMethod": "PATCH", + "id": "compute.urlMaps.patch", + "parameterOrder": [ + "project", + "urlMap" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "urlMap": { + "description": "Name of the UrlMap resource to patch.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/urlMaps/{urlMap}", + "request": { + "$ref": "UrlMap" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "update": { + "description": "Updates the specified UrlMap resource with the data included in the request.", + "httpMethod": "PUT", + "id": "compute.urlMaps.update", + "parameterOrder": [ + "project", + "urlMap" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "urlMap": { + "description": "Name of the UrlMap resource to update.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/urlMaps/{urlMap}", + "request": { + "$ref": "UrlMap" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "validate": { + "description": "Runs static validation for the UrlMap. In particular, the tests of the provided UrlMap will be run. Calling this method does NOT create the UrlMap.", + "httpMethod": "POST", + "id": "compute.urlMaps.validate", + "parameterOrder": [ + "project", + "urlMap" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "urlMap": { + "description": "Name of the UrlMap resource to be validated as.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/urlMaps/{urlMap}/validate", + "request": { + "$ref": "UrlMapsValidateRequest" + }, + "response": { + "$ref": "UrlMapsValidateResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + } + } }, - "defaultServiceAccount": { - "type": "string", - "description": "[Output Only] Default service account used by VMs running in this project." + "vpnTunnels": { + "methods": { + "aggregatedList": { + "description": "Retrieves an aggregated list of VPN tunnels.", + "httpMethod": "GET", + "id": "compute.vpnTunnels.aggregatedList", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/aggregated/vpnTunnels", + "response": { + "$ref": "VpnTunnelAggregatedList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "delete": { + "description": "Deletes the specified VpnTunnel resource.", + "httpMethod": "DELETE", + "id": "compute.vpnTunnels.delete", + "parameterOrder": [ + "project", + "region", + "vpnTunnel" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "vpnTunnel": { + "description": "Name of the VpnTunnel resource to delete.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/vpnTunnels/{vpnTunnel}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Returns the specified VpnTunnel resource. Get a list of available VPN tunnels by making a list() request.", + "httpMethod": "GET", + "id": "compute.vpnTunnels.get", + "parameterOrder": [ + "project", + "region", + "vpnTunnel" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "vpnTunnel": { + "description": "Name of the VpnTunnel resource to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/vpnTunnels/{vpnTunnel}", + "response": { + "$ref": "VpnTunnel" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "description": "Creates a VpnTunnel resource in the specified project and region using the data included in the request.", + "httpMethod": "POST", + "id": "compute.vpnTunnels.insert", + "parameterOrder": [ + "project", + "region" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{project}/regions/{region}/vpnTunnels", + "request": { + "$ref": "VpnTunnel" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "description": "Retrieves a list of VpnTunnel resources contained in the specified project and region.", + "httpMethod": "GET", + "id": "compute.vpnTunnels.list", + "parameterOrder": [ + "project", + "region" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/regions/{region}/vpnTunnels", + "response": { + "$ref": "VpnTunnelList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + } + } }, - "description": { - "type": "string", - "description": "An optional textual description of the resource." - }, - "enabledFeatures": { - "type": "array", - "description": "Restricted features enabled for use on this project.", - "items": { - "type": "string" - } - }, - "id": { - "type": "string", - "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server. This is not the project ID, and is just a unique ID used by Compute Engine to identify resources.", - "format": "uint64" - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of the resource. Always compute#project for projects.", - "default": "compute#project" - }, - "name": { - "type": "string", - "description": "The project ID. For example: my-example-project. Use the project ID to make requests to Compute Engine." - }, - "quotas": { - "type": "array", - "description": "[Output Only] Quotas assigned to this project.", - "items": { - "$ref": "Quota" - } - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for the resource." - }, - "usageExportLocation": { - "$ref": "UsageExportLocation", - "description": "The naming prefix for daily usage reports and the Google Cloud Storage bucket where they are stored." - }, - "xpnProjectStatus": { - "type": "string", - "description": "[Output Only] The role this project has in a shared VPC configuration. Currently only HOST projects are differentiated.", - "enum": [ - "HOST", - "UNSPECIFIED_XPN_PROJECT_STATUS" - ], - "enumDescriptions": [ - "", - "" - ] - } - } - }, - "ProjectsDisableXpnResourceRequest": { - "id": "ProjectsDisableXpnResourceRequest", - "type": "object", - "properties": { - "xpnResource": { - "$ref": "XpnResourceId", - "description": "Service resource (a.k.a service project) ID." - } - } - }, - "ProjectsEnableXpnResourceRequest": { - "id": "ProjectsEnableXpnResourceRequest", - "type": "object", - "properties": { - "xpnResource": { - "$ref": "XpnResourceId", - "description": "Service resource (a.k.a service project) ID." - } - } - }, - "ProjectsGetXpnResources": { - "id": "ProjectsGetXpnResources", - "type": "object", - "properties": { - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#projectsGetXpnResources for lists of service resources (a.k.a service projects)", - "default": "compute#projectsGetXpnResources" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "resources": { - "type": "array", - "description": "Service resources (a.k.a service projects) attached to this project as their shared VPC host.", - "items": { - "$ref": "XpnResourceId" - } - } - } - }, - "ProjectsListXpnHostsRequest": { - "id": "ProjectsListXpnHostsRequest", - "type": "object", - "properties": { - "organization": { - "type": "string", - "description": "Optional organization ID managed by Cloud Resource Manager, for which to list shared VPC host projects. If not specified, the organization will be inferred from the project." - } - } - }, - "Quota": { - "id": "Quota", - "type": "object", - "description": "A quotas entry.", - "properties": { - "limit": { - "type": "number", - "description": "[Output Only] Quota limit for this metric.", - "format": "double" - }, - "metric": { - "type": "string", - "description": "[Output Only] Name of the quota metric.", - "enum": [ - "AUTOSCALERS", - "BACKEND_BUCKETS", - "BACKEND_SERVICES", - "COMMITMENTS", - "CPUS", - "CPUS_ALL_REGIONS", - "DISKS_TOTAL_GB", - "FIREWALLS", - "FORWARDING_RULES", - "HEALTH_CHECKS", - "IMAGES", - "INSTANCES", - "INSTANCE_GROUPS", - "INSTANCE_GROUP_MANAGERS", - "INSTANCE_TEMPLATES", - "INTERCONNECTS", - "INTERNAL_ADDRESSES", - "IN_USE_ADDRESSES", - "LOCAL_SSD_TOTAL_GB", - "NETWORKS", - "NVIDIA_K80_GPUS", - "NVIDIA_P100_GPUS", - "PREEMPTIBLE_CPUS", - "PREEMPTIBLE_LOCAL_SSD_GB", - "PREEMPTIBLE_NVIDIA_K80_GPUS", - "PREEMPTIBLE_NVIDIA_P100_GPUS", - "REGIONAL_AUTOSCALERS", - "REGIONAL_INSTANCE_GROUP_MANAGERS", - "ROUTERS", - "ROUTES", - "SECURITY_POLICIES", - "SECURITY_POLICY_RULES", - "SNAPSHOTS", - "SSD_TOTAL_GB", - "SSL_CERTIFICATES", - "STATIC_ADDRESSES", - "SUBNETWORKS", - "TARGET_HTTPS_PROXIES", - "TARGET_HTTP_PROXIES", - "TARGET_INSTANCES", - "TARGET_POOLS", - "TARGET_SSL_PROXIES", - "TARGET_TCP_PROXIES", - "TARGET_VPN_GATEWAYS", - "URL_MAPS", - "VPN_TUNNELS" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "usage": { - "type": "number", - "description": "[Output Only] Current usage of this metric.", - "format": "double" - } - } - }, - "Region": { - "id": "Region", - "type": "object", - "description": "Region resource. (== resource_for beta.regions ==) (== resource_for v1.regions ==)", - "properties": { - "creationTimestamp": { - "type": "string", - "description": "[Output Only] Creation timestamp in RFC3339 text format." - }, - "deprecated": { - "$ref": "DeprecationStatus", - "description": "[Output Only] The deprecation status associated with this region." - }, - "description": { - "type": "string", - "description": "[Output Only] Textual description of the resource." - }, - "id": { - "type": "string", - "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", - "format": "uint64" - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of the resource. Always compute#region for regions.", - "default": "compute#region" - }, - "name": { - "type": "string", - "description": "[Output Only] Name of the resource." - }, - "quotas": { - "type": "array", - "description": "[Output Only] Quotas assigned to this region.", - "items": { - "$ref": "Quota" - } - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for the resource." - }, - "status": { - "type": "string", - "description": "[Output Only] Status of the region, either UP or DOWN.", - "enum": [ - "DOWN", - "UP" - ], - "enumDescriptions": [ - "", - "" - ] + "zoneOperations": { + "methods": { + "delete": { + "description": "Deletes the specified zone-specific Operations resource.", + "httpMethod": "DELETE", + "id": "compute.zoneOperations.delete", + "parameterOrder": [ + "project", + "zone", + "operation" + ], + "parameters": { + "operation": { + "description": "Name of the Operations resource to delete.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "zone": { + "description": "Name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/operations/{operation}", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Retrieves the specified zone-specific Operations resource.", + "httpMethod": "GET", + "id": "compute.zoneOperations.get", + "parameterOrder": [ + "project", + "zone", + "operation" + ], + "parameters": { + "operation": { + "description": "Name of the Operations resource to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "zone": { + "description": "Name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/operations/{operation}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "list": { + "description": "Retrieves a list of Operation resources contained within the specified zone.", + "httpMethod": "GET", + "id": "compute.zoneOperations.list", + "parameterOrder": [ + "project", + "zone" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "zone": { + "description": "Name of the zone for request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/operations", + "response": { + "$ref": "OperationList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + } + } }, "zones": { - "type": "array", - "description": "[Output Only] A list of zones available in this region, in the form of resource URLs.", - "items": { - "type": "string" - } - } - } - }, - "RegionAutoscalerList": { - "id": "RegionAutoscalerList", - "type": "object", - "description": "Contains a list of autoscalers.", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "array", - "description": "A list of Autoscaler resources.", - "items": { - "$ref": "Autoscaler" - } - }, - "kind": { - "type": "string", - "description": "Type of resource.", - "default": "compute#regionAutoscalerList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "RegionInstanceGroupList": { - "id": "RegionInstanceGroupList", - "type": "object", - "description": "Contains a list of InstanceGroup resources.", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "array", - "description": "A list of InstanceGroup resources.", - "items": { - "$ref": "InstanceGroup" - } - }, - "kind": { - "type": "string", - "description": "The resource type.", - "default": "compute#regionInstanceGroupList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "RegionInstanceGroupManagerList": { - "id": "RegionInstanceGroupManagerList", - "type": "object", - "description": "Contains a list of managed instance groups.", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "array", - "description": "A list of InstanceGroupManager resources.", - "items": { - "$ref": "InstanceGroupManager" - } - }, - "kind": { - "type": "string", - "description": "[Output Only] The resource type, which is always compute#instanceGroupManagerList for a list of managed instance groups that exist in th regional scope.", - "default": "compute#regionInstanceGroupManagerList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "RegionInstanceGroupManagersAbandonInstancesRequest": { - "id": "RegionInstanceGroupManagersAbandonInstancesRequest", - "type": "object", - "properties": { - "instances": { - "type": "array", - "description": "The URLs of one or more instances to abandon. This can be a full URL or a partial URL, such as zones/[ZONE]/instances/[INSTANCE_NAME].", - "items": { - "type": "string" - } - } - } - }, - "RegionInstanceGroupManagersDeleteInstancesRequest": { - "id": "RegionInstanceGroupManagersDeleteInstancesRequest", - "type": "object", - "properties": { - "instances": { - "type": "array", - "description": "The URLs of one or more instances to delete. This can be a full URL or a partial URL, such as zones/[ZONE]/instances/[INSTANCE_NAME].", - "items": { - "type": "string" - } - } - } - }, - "RegionInstanceGroupManagersListInstancesResponse": { - "id": "RegionInstanceGroupManagersListInstancesResponse", - "type": "object", - "properties": { - "managedInstances": { - "type": "array", - "description": "List of managed instances.", - "items": { - "$ref": "ManagedInstance" - } - } - } - }, - "RegionInstanceGroupManagersRecreateRequest": { - "id": "RegionInstanceGroupManagersRecreateRequest", - "type": "object", - "properties": { - "instances": { - "type": "array", - "description": "The URLs of one or more instances to recreate. This can be a full URL or a partial URL, such as zones/[ZONE]/instances/[INSTANCE_NAME].", - "items": { - "type": "string" - } - } - } - }, - "RegionInstanceGroupManagersSetTargetPoolsRequest": { - "id": "RegionInstanceGroupManagersSetTargetPoolsRequest", - "type": "object", - "properties": { - "fingerprint": { - "type": "string", - "description": "Fingerprint of the target pools information, which is a hash of the contents. This field is used for optimistic locking when you update the target pool entries. This field is optional.", - "format": "byte" - }, - "targetPools": { - "type": "array", - "description": "The URL of all TargetPool resources to which instances in the instanceGroup field are added. The target pools automatically apply to all of the instances in the managed instance group.", - "items": { - "type": "string" - } - } - } - }, - "RegionInstanceGroupManagersSetTemplateRequest": { - "id": "RegionInstanceGroupManagersSetTemplateRequest", - "type": "object", - "properties": { - "instanceTemplate": { - "type": "string", - "description": "URL of the InstanceTemplate resource from which all new instances will be created." - } - } - }, - "RegionInstanceGroupsListInstances": { - "id": "RegionInstanceGroupsListInstances", - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "array", - "description": "A list of InstanceWithNamedPorts resources.", - "items": { - "$ref": "InstanceWithNamedPorts" - } - }, - "kind": { - "type": "string", - "description": "The resource type.", - "default": "compute#regionInstanceGroupsListInstances" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "RegionInstanceGroupsListInstancesRequest": { - "id": "RegionInstanceGroupsListInstancesRequest", - "type": "object", - "properties": { - "instanceState": { - "type": "string", - "description": "Instances in which state should be returned. Valid options are: 'ALL', 'RUNNING'. By default, it lists all instances.", - "enum": [ - "ALL", - "RUNNING" - ], - "enumDescriptions": [ - "", - "" - ] - }, - "portName": { - "type": "string", - "description": "Name of port user is interested in. It is optional. If it is set, only information about this ports will be returned. If it is not set, all the named ports will be returned. Always lists all instances.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" - } - } - }, - "RegionInstanceGroupsSetNamedPortsRequest": { - "id": "RegionInstanceGroupsSetNamedPortsRequest", - "type": "object", - "properties": { - "fingerprint": { - "type": "string", - "description": "The fingerprint of the named ports information for this instance group. Use this optional property to prevent conflicts when multiple users change the named ports settings concurrently. Obtain the fingerprint with the instanceGroups.get method. Then, include the fingerprint in your request to ensure that you do not overwrite changes that were applied from another concurrent request.", - "format": "byte" - }, - "namedPorts": { - "type": "array", - "description": "The list of named ports to set for this instance group.", - "items": { - "$ref": "NamedPort" - } - } - } - }, - "RegionList": { - "id": "RegionList", - "type": "object", - "description": "Contains a list of region resources.", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "array", - "description": "A list of Region resources.", - "items": { - "$ref": "Region" - } - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#regionList for lists of regions.", - "default": "compute#regionList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "ResourceCommitment": { - "id": "ResourceCommitment", - "type": "object", - "description": "Commitment for a particular resource (a Commitment is composed of one or more of these).", - "properties": { - "amount": { - "type": "string", - "description": "The amount of the resource purchased (in a type-dependent unit, such as bytes). For vCPUs, this can just be an integer. For memory, this must be provided in MB. Memory must be a multiple of 256 MB, with up to 6.5GB of memory per every vCPU.", - "format": "int64" - }, - "type": { - "type": "string", - "description": "Type of resource for which this commitment applies. Possible values are VCPU and MEMORY", - "enum": [ - "MEMORY", - "UNSPECIFIED", - "VCPU" - ], - "enumDescriptions": [ - "", - "", - "" - ] - } - } - }, - "ResourceGroupReference": { - "id": "ResourceGroupReference", - "type": "object", - "properties": { - "group": { - "type": "string", - "description": "A URI referencing one of the instance groups listed in the backend service." - } - } - }, - "Route": { - "id": "Route", - "type": "object", - "description": "Represents a Route resource. A route specifies how certain packets should be handled by the network. Routes are associated with instances by tags and the set of routes for a particular instance is called its routing table.\n\nFor each packet leaving an instance, the system searches that instance's routing table for a single best matching route. Routes match packets by destination IP address, preferring smaller or more specific ranges over larger ones. If there is a tie, the system selects the route with the smallest priority value. If there is still a tie, it uses the layer three and four packet headers to select just one of the remaining matching routes. The packet is then forwarded as specified by the nextHop field of the winning route - either to another instance destination, an instance gateway, or a Google Compute Engine-operated gateway.\n\nPackets that do not match any route in the sending instance's routing table are dropped. (== resource_for beta.routes ==) (== resource_for v1.routes ==)", - "properties": { - "creationTimestamp": { - "type": "string", - "description": "[Output Only] Creation timestamp in RFC3339 text format." - }, - "description": { - "type": "string", - "description": "An optional description of this resource. Provide this property when you create the resource." - }, - "destRange": { - "type": "string", - "description": "The destination range of outgoing packets that this route applies to. Only IPv4 is supported.", - "annotations": { - "required": [ - "compute.routes.insert" - ] - } - }, - "id": { - "type": "string", - "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", - "format": "uint64" - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of this resource. Always compute#routes for Route resources.", - "default": "compute#route" - }, - "name": { - "type": "string", - "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "annotations": { - "required": [ - "compute.routes.insert" - ] - } - }, - "network": { - "type": "string", - "description": "Fully-qualified URL of the network that this route applies to.", - "annotations": { - "required": [ - "compute.routes.insert" - ] - } - }, - "nextHopGateway": { - "type": "string", - "description": "The URL to a gateway that should handle matching packets. You can only specify the internet gateway using a full or partial valid URL: projects/\u003cproject-id\u003e/global/gateways/default-internet-gateway" - }, - "nextHopInstance": { - "type": "string", - "description": "The URL to an instance that should handle matching packets. You can specify this as a full or partial URL. For example:\nhttps://www.googleapis.com/compute/v1/projects/project/zones/zone/instances/" - }, - "nextHopIp": { - "type": "string", - "description": "The network IP address of an instance that should handle matching packets. Only IPv4 is supported." - }, - "nextHopNetwork": { - "type": "string", - "description": "The URL of the local network if it should handle matching packets." - }, - "nextHopPeering": { - "type": "string", - "description": "[Output Only] The network peering name that should handle matching packets, which should conform to RFC1035." - }, - "nextHopVpnTunnel": { - "type": "string", - "description": "The URL to a VpnTunnel that should handle matching packets." - }, - "priority": { - "type": "integer", - "description": "The priority of this route. Priority is used to break ties in cases where there is more than one matching route of equal prefix length. In the case of two routes with equal prefix length, the one with the lowest-numbered priority value wins. Default value is 1000. Valid range is 0 through 65535.", - "format": "uint32", - "annotations": { - "required": [ - "compute.routes.insert" - ] - } - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined fully-qualified URL for this resource." - }, - "tags": { - "type": "array", - "description": "A list of instance tags to which this route applies.", - "items": { - "type": "string" - }, - "annotations": { - "required": [ - "compute.routes.insert" - ] - } - }, - "warnings": { - "type": "array", - "description": "[Output Only] If potential misconfigurations are detected for this route, this field will be populated with warning messages.", - "items": { - "type": "object", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." + "methods": { + "get": { + "description": "Returns the specified Zone resource. Get a list of available zones by making a list() request.", + "httpMethod": "GET", + "id": "compute.zones.get", + "parameterOrder": [ + "project", + "zone" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "zone": { + "description": "Name of the zone resource to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } + "path": "{project}/zones/{zone}", + "response": { + "$ref": "Zone" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "list": { + "description": "Retrieves the list of Zone resources available to the specified project.", + "httpMethod": "GET", + "id": "compute.zones.list", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones", + "response": { + "$ref": "ZoneList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } } - } } - } }, - "RouteList": { - "id": "RouteList", - "type": "object", - "description": "Contains a list of Route resources.", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "array", - "description": "A list of Route resources.", - "items": { - "$ref": "Route" - } - }, - "kind": { - "type": "string", - "description": "Type of resource.", - "default": "compute#routeList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] + "revision": "20180312", + "rootUrl": "https://www.googleapis.com/", + "schemas": { + "AcceleratorConfig": { + "description": "A specification of the type and number of accelerator cards attached to the instance.", + "id": "AcceleratorConfig", + "properties": { + "acceleratorCount": { + "description": "The number of the guest accelerator cards exposed to this instance.", + "format": "int32", + "type": "integer" + }, + "acceleratorType": { + "description": "Full or partial URL of the accelerator type resource to attach to this instance. If you are creating an instance template, specify only the accelerator name.", + "type": "string" + } }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", + "type": "object" + }, + "AcceleratorType": { + "description": "An Accelerator Type resource. (== resource_for beta.acceleratorTypes ==) (== resource_for v1.acceleratorTypes ==)", + "id": "AcceleratorType", + "properties": { + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "deprecated": { + "$ref": "DeprecationStatus", + "description": "[Output Only] The deprecation status associated with this accelerator type." + }, + "description": { + "description": "[Output Only] An optional textual description of the resource.", + "type": "string" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64", + "type": "string" + }, + "kind": { + "default": "compute#acceleratorType", + "description": "[Output Only] The type of the resource. Always compute#acceleratorType for accelerator types.", + "type": "string" + }, + "maximumCardsPerInstance": { + "description": "[Output Only] Maximum accelerator cards allowed per instance.", + "format": "int32", + "type": "integer" + }, + "name": { + "description": "[Output Only] Name of the resource.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined fully-qualified URL for this resource.", + "type": "string" + }, + "zone": { + "description": "[Output Only] The name of the zone where the accelerator type resides, such as us-central1-a. You must specify this field as part of the HTTP request URL. It is not settable as a field in the request body.", + "type": "string" + } + }, + "type": "object" + }, + "AcceleratorTypeAggregatedList": { + "id": "AcceleratorTypeAggregatedList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "additionalProperties": { + "$ref": "AcceleratorTypesScopedList", + "description": "[Output Only] Name of the scope containing this set of accelerator types." + }, + "description": "A list of AcceleratorTypesScopedList resources.", + "type": "object" + }, + "kind": { + "default": "compute#acceleratorTypeAggregatedList", + "description": "[Output Only] Type of resource. Always compute#acceleratorTypeAggregatedList for aggregated lists of accelerator types.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "AcceleratorTypeList": { + "description": "Contains a list of accelerator types.", + "id": "AcceleratorTypeList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of AcceleratorType resources.", + "items": { + "$ref": "AcceleratorType" + }, + "type": "array" + }, + "kind": { + "default": "compute#acceleratorTypeList", + "description": "[Output Only] Type of resource. Always compute#acceleratorTypeList for lists of accelerator types.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "AcceleratorTypesScopedList": { + "id": "AcceleratorTypesScopedList", + "properties": { + "acceleratorTypes": { + "description": "[Output Only] List of accelerator types contained in this scope.", + "items": { + "$ref": "AcceleratorType" + }, + "type": "array" + }, + "warning": { + "description": "[Output Only] An informational warning that appears when the accelerator types list is empty.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "AccessConfig": { + "description": "An access configuration attached to an instance's network interface. Only one access config per instance is supported.", + "id": "AccessConfig", + "properties": { + "kind": { + "default": "compute#accessConfig", + "description": "[Output Only] Type of the resource. Always compute#accessConfig for access configs.", + "type": "string" + }, + "name": { + "description": "The name of this access configuration. The default and recommended name is External NAT but you can use any arbitrary string you would like. For example, My external IP or Network Access.", + "type": "string" + }, + "natIP": { + "description": "An external IP address associated with this instance. Specify an unused static external IP address available to the project or leave this field undefined to use an IP from a shared ephemeral IP address pool. If you specify a static external IP address, it must live in the same region as the zone of the instance.", + "type": "string" + }, + "publicPtrDomainName": { + "description": "The DNS domain name for the public PTR record. This field can only be set when the set_public_ptr field is enabled.", + "type": "string" + }, + "setPublicPtr": { + "description": "Specifies whether a public DNS ?PTR? record should be created to map the external IP address of the instance to a DNS domain name.", + "type": "boolean" + }, + "type": { + "default": "ONE_TO_ONE_NAT", + "description": "The type of configuration. The default and only option is ONE_TO_ONE_NAT.", + "enum": [ + "ONE_TO_ONE_NAT" + ], + "enumDescriptions": [ + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "Address": { + "description": "A reserved address resource. (== resource_for beta.addresses ==) (== resource_for v1.addresses ==) (== resource_for beta.globalAddresses ==) (== resource_for v1.globalAddresses ==)", + "id": "Address", + "properties": { + "address": { + "description": "The static IP address represented by this resource.", + "type": "string" + }, + "addressType": { + "description": "The type of address to reserve, either INTERNAL or EXTERNAL. If unspecified, defaults to EXTERNAL.", + "enum": [ + "EXTERNAL", + "INTERNAL", + "UNSPECIFIED_TYPE" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "description": { + "description": "An optional description of this resource. Provide this property when you create the resource.", + "type": "string" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64", + "type": "string" + }, + "ipVersion": { + "description": "The IP Version that will be used by this address. Valid options are IPV4 or IPV6. This can only be specified for a global address.", + "enum": [ + "IPV4", + "IPV6", + "UNSPECIFIED_VERSION" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, + "kind": { + "default": "compute#address", + "description": "[Output Only] Type of the resource. Always compute#address for addresses.", + "type": "string" + }, + "name": { + "annotations": { + "required": [ + "compute.addresses.insert" + ] + }, + "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "region": { + "description": "[Output Only] URL of the region where the regional address resides. This field is not applicable to global addresses. You must specify this field as part of the HTTP request URL. You cannot set this field in the request body.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + }, + "status": { + "description": "[Output Only] The status of the address, which can be one of RESERVING, RESERVED, or IN_USE. An address that is RESERVING is currently in the process of being reserved. A RESERVED address is currently reserved and available to use. An IN_USE address is currently being used by another resource and is not available.", + "enum": [ + "IN_USE", + "RESERVED" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "subnetwork": { + "description": "The URL of the subnetwork in which to reserve the address. If an IP address is specified, it must be within the subnetwork's IP range. This field can only be used with INTERNAL type with GCE_ENDPOINT/DNS_RESOLVER purposes.", + "type": "string" + }, + "users": { + "description": "[Output Only] The URLs of the resources that are using this address.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "AddressAggregatedList": { + "id": "AddressAggregatedList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "additionalProperties": { + "$ref": "AddressesScopedList", + "description": "[Output Only] Name of the scope containing this set of addresses." + }, + "description": "A list of AddressesScopedList resources.", + "type": "object" + }, + "kind": { + "default": "compute#addressAggregatedList", + "description": "[Output Only] Type of resource. Always compute#addressAggregatedList for aggregated lists of addresses.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "AddressList": { + "description": "Contains a list of addresses.", + "id": "AddressList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of Address resources.", + "items": { + "$ref": "Address" + }, + "type": "array" + }, + "kind": { + "default": "compute#addressList", + "description": "[Output Only] Type of resource. Always compute#addressList for lists of addresses.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "AddressesScopedList": { + "id": "AddressesScopedList", + "properties": { + "addresses": { + "description": "[Output Only] List of addresses contained in this scope.", + "items": { + "$ref": "Address" + }, + "type": "array" + }, + "warning": { + "description": "[Output Only] Informational warning which replaces the list of addresses when the list is empty.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "AliasIpRange": { + "description": "An alias IP range attached to an instance's network interface.", + "id": "AliasIpRange", + "properties": { + "ipCidrRange": { + "description": "The IP CIDR range represented by this alias IP range. This IP CIDR range must belong to the specified subnetwork and cannot contain IP addresses reserved by system or used by other network interfaces. This range may be a single IP address (e.g. 10.2.3.4), a netmask (e.g. /24) or a CIDR format string (e.g. 10.1.2.0/24).", + "type": "string" + }, + "subnetworkRangeName": { + "description": "Optional subnetwork secondary range name specifying the secondary range from which to allocate the IP CIDR range for this alias IP range. If left unspecified, the primary range of the subnetwork will be used.", + "type": "string" + } + }, + "type": "object" + }, + "AttachedDisk": { + "description": "An instance-attached disk resource.", + "id": "AttachedDisk", + "properties": { + "autoDelete": { + "description": "Specifies whether the disk will be auto-deleted when the instance is deleted (but not when the disk is detached from the instance).", + "type": "boolean" + }, + "boot": { + "description": "Indicates that this is a boot disk. The virtual machine will use the first partition of the disk for its root filesystem.", + "type": "boolean" + }, + "deviceName": { + "description": "Specifies a unique device name of your choice that is reflected into the /dev/disk/by-id/google-* tree of a Linux operating system running within the instance. This name can be used to reference the device for mounting, resizing, and so on, from within the instance.\n\nIf not specified, the server chooses a default device name to apply to this disk, in the form persistent-disks-x, where x is a number assigned by Google Compute Engine. This field is only applicable for persistent disks.", + "type": "string" + }, + "diskEncryptionKey": { + "$ref": "CustomerEncryptionKey", + "description": "Encrypts or decrypts a disk using a customer-supplied encryption key.\n\nIf you are creating a new disk, this field encrypts the new disk using an encryption key that you provide. If you are attaching an existing disk that is already encrypted, this field decrypts the disk using the customer-supplied encryption key.\n\nIf you encrypt a disk using a customer-supplied key, you must provide the same key again when you attempt to use this resource at a later time. For example, you must provide the key when you create a snapshot or an image from the disk or when you attach the disk to a virtual machine instance.\n\nIf you do not provide an encryption key, then the disk will be encrypted using an automatically generated key and you do not need to provide a key to use the disk later.\n\nInstance templates do not store customer-supplied encryption keys, so you cannot use your own keys to encrypt disks in a managed instance group." + }, + "guestOsFeatures": { + "description": "A list of features to enable on the guest operating system. Applicable only for bootable images. Read Enabling guest operating system features to see a list of available options.", + "items": { + "$ref": "GuestOsFeature" + }, + "type": "array" + }, + "index": { + "description": "[Output Only] A zero-based index to this disk, where 0 is reserved for the boot disk. If you have many disks attached to an instance, each disk would have a unique index number.", + "format": "int32", + "type": "integer" + }, + "initializeParams": { + "$ref": "AttachedDiskInitializeParams", + "description": "[Input Only] Specifies the parameters for a new disk that will be created alongside the new instance. Use initialization parameters to create boot disks or local SSDs attached to the new instance.\n\nThis property is mutually exclusive with the source property; you can only define one or the other, but not both." + }, + "interface": { + "description": "Specifies the disk interface to use for attaching this disk, which is either SCSI or NVME. The default is SCSI. Persistent disks must always use SCSI and the request will fail if you attempt to attach a persistent disk in any other format than SCSI. Local SSDs can use either NVME or SCSI. For performance characteristics of SCSI over NVMe, see Local SSD performance.", + "enum": [ + "NVME", + "SCSI" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "kind": { + "default": "compute#attachedDisk", + "description": "[Output Only] Type of the resource. Always compute#attachedDisk for attached disks.", + "type": "string" + }, + "licenses": { + "description": "[Output Only] Any valid publicly visible licenses.", + "items": { + "type": "string" + }, + "type": "array" + }, + "mode": { + "description": "The mode in which to attach this disk, either READ_WRITE or READ_ONLY. If not specified, the default is to attach the disk in READ_WRITE mode.", + "enum": [ + "READ_ONLY", + "READ_WRITE" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "source": { + "description": "Specifies a valid partial or full URL to an existing Persistent Disk resource. When creating a new instance, one of initializeParams.sourceImage or disks.source is required except for local SSD.\n\nIf desired, you can also attach existing non-root persistent disks using this property. This field is only applicable for persistent disks.\n\nNote that for InstanceTemplate, specify the disk name, not the URL for the disk.", + "type": "string" + }, + "type": { + "description": "Specifies the type of the disk, either SCRATCH or PERSISTENT. If not specified, the default is PERSISTENT.", + "enum": [ + "PERSISTENT", + "SCRATCH" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "AttachedDiskInitializeParams": { + "description": "[Input Only] Specifies the parameters for a new disk that will be created alongside the new instance. Use initialization parameters to create boot disks or local SSDs attached to the new instance.\n\nThis property is mutually exclusive with the source property; you can only define one or the other, but not both.", + "id": "AttachedDiskInitializeParams", + "properties": { + "diskName": { + "description": "Specifies the disk name. If not specified, the default is to use the name of the instance.", + "type": "string" + }, + "diskSizeGb": { + "description": "Specifies the size of the disk in base-2 GB.", + "format": "int64", + "type": "string" + }, + "diskType": { + "description": "Specifies the disk type to use to create the instance. If not specified, the default is pd-standard, specified using the full URL. For example:\nhttps://www.googleapis.com/compute/v1/projects/project/zones/zone/diskTypes/pd-standard\n\n\nOther values include pd-ssd and local-ssd. If you define this field, you can provide either the full or partial URL. For example, the following are valid values: \n- https://www.googleapis.com/compute/v1/projects/project/zones/zone/diskTypes/diskType \n- projects/project/zones/zone/diskTypes/diskType \n- zones/zone/diskTypes/diskType Note that for InstanceTemplate, this is the name of the disk type, not URL.", + "type": "string" + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Labels to apply to this disk. These can be later modified by the disks.setLabels method. This field is only applicable for persistent disks.", + "type": "object" + }, + "sourceImage": { + "description": "The source image to create this disk. When creating a new instance, one of initializeParams.sourceImage or disks.source is required except for local SSD.\n\nTo create a disk with one of the public operating system images, specify the image by its family name. For example, specify family/debian-8 to use the latest Debian 8 image:\nprojects/debian-cloud/global/images/family/debian-8\n\n\nAlternatively, use a specific version of a public operating system image:\nprojects/debian-cloud/global/images/debian-8-jessie-vYYYYMMDD\n\n\nTo create a disk with a custom image that you created, specify the image name in the following format:\nglobal/images/my-custom-image\n\n\nYou can also specify a custom image by its image family, which returns the latest version of the image in that family. Replace the image name with family/family-name:\nglobal/images/family/my-image-family\n\n\nIf the source image is deleted later, this field will not be set.", + "type": "string" + }, + "sourceImageEncryptionKey": { + "$ref": "CustomerEncryptionKey", + "description": "The customer-supplied encryption key of the source image. Required if the source image is protected by a customer-supplied encryption key.\n\nInstance templates do not store customer-supplied encryption keys, so you cannot create disks for instances in a managed instance group if the source images are encrypted with your own keys." + } + }, + "type": "object" + }, + "Autoscaler": { + "description": "Represents an Autoscaler resource. Autoscalers allow you to automatically scale virtual machine instances in managed instance groups according to an autoscaling policy that you define. For more information, read Autoscaling Groups of Instances. (== resource_for beta.autoscalers ==) (== resource_for v1.autoscalers ==) (== resource_for beta.regionAutoscalers ==) (== resource_for v1.regionAutoscalers ==)", + "id": "Autoscaler", + "properties": { + "autoscalingPolicy": { + "$ref": "AutoscalingPolicy", + "description": "The configuration parameters for the autoscaling algorithm. You can define one or more of the policies for an autoscaler: cpuUtilization, customMetricUtilizations, and loadBalancingUtilization.\n\nIf none of these are specified, the default will be to autoscale based on cpuUtilization to 0.6 or 60%." + }, + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "description": { + "description": "An optional description of this resource. Provide this property when you create the resource.", + "type": "string" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64", + "type": "string" + }, + "kind": { + "default": "compute#autoscaler", + "description": "[Output Only] Type of the resource. Always compute#autoscaler for autoscalers.", + "type": "string" + }, + "name": { + "annotations": { + "required": [ + "compute.instanceGroups.insert" + ] + }, + "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "region": { + "description": "[Output Only] URL of the region where the instance group resides (for autoscalers living in regional scope).", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + }, + "status": { + "description": "[Output Only] The status of the autoscaler configuration.", + "enum": [ + "ACTIVE", + "DELETING", + "ERROR", + "PENDING" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ], + "type": "string" + }, + "statusDetails": { + "description": "[Output Only] Human-readable details about the current state of the autoscaler. Read the documentation for Commonly returned status messages for examples of status messages you might encounter.", + "items": { + "$ref": "AutoscalerStatusDetails" + }, + "type": "array" + }, + "target": { + "description": "URL of the managed instance group that this autoscaler will scale.", + "type": "string" + }, + "zone": { + "description": "[Output Only] URL of the zone where the instance group resides (for autoscalers living in zonal scope).", + "type": "string" + } + }, + "type": "object" + }, + "AutoscalerAggregatedList": { + "id": "AutoscalerAggregatedList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "additionalProperties": { + "$ref": "AutoscalersScopedList", + "description": "[Output Only] Name of the scope containing this set of autoscalers." + }, + "description": "A list of AutoscalersScopedList resources.", + "type": "object" + }, + "kind": { + "default": "compute#autoscalerAggregatedList", + "description": "[Output Only] Type of resource. Always compute#autoscalerAggregatedList for aggregated lists of autoscalers.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "AutoscalerList": { + "description": "Contains a list of Autoscaler resources.", + "id": "AutoscalerList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of Autoscaler resources.", + "items": { + "$ref": "Autoscaler" + }, + "type": "array" + }, + "kind": { + "default": "compute#autoscalerList", + "description": "[Output Only] Type of resource. Always compute#autoscalerList for lists of autoscalers.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "AutoscalerStatusDetails": { + "id": "AutoscalerStatusDetails", + "properties": { + "message": { + "description": "The status message.", + "type": "string" + }, + "type": { + "description": "The type of error returned.", + "enum": [ + "ALL_INSTANCES_UNHEALTHY", + "BACKEND_SERVICE_DOES_NOT_EXIST", + "CAPPED_AT_MAX_NUM_REPLICAS", + "CUSTOM_METRIC_DATA_POINTS_TOO_SPARSE", + "CUSTOM_METRIC_INVALID", + "MIN_EQUALS_MAX", + "MISSING_CUSTOM_METRIC_DATA_POINTS", + "MISSING_LOAD_BALANCING_DATA_POINTS", + "MORE_THAN_ONE_BACKEND_SERVICE", + "NOT_ENOUGH_QUOTA_AVAILABLE", + "REGION_RESOURCE_STOCKOUT", + "SCALING_TARGET_DOES_NOT_EXIST", + "UNKNOWN", + "UNSUPPORTED_MAX_RATE_LOAD_BALANCING_CONFIGURATION", + "ZONE_RESOURCE_STOCKOUT" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "AutoscalersScopedList": { + "id": "AutoscalersScopedList", + "properties": { + "autoscalers": { + "description": "[Output Only] List of autoscalers contained in this scope.", + "items": { + "$ref": "Autoscaler" + }, + "type": "array" + }, + "warning": { + "description": "[Output Only] Informational warning which replaces the list of autoscalers when the list is empty.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "AutoscalingPolicy": { + "description": "Cloud Autoscaler policy.", + "id": "AutoscalingPolicy", + "properties": { + "coolDownPeriodSec": { + "description": "The number of seconds that the autoscaler should wait before it starts collecting information from a new instance. This prevents the autoscaler from collecting information when the instance is initializing, during which the collected usage would not be reliable. The default time autoscaler waits is 60 seconds.\n\nVirtual machine initialization times might vary because of numerous factors. We recommend that you test how long an instance may take to initialize. To do this, create an instance and time the startup process.", + "format": "int32", + "type": "integer" + }, + "cpuUtilization": { + "$ref": "AutoscalingPolicyCpuUtilization", + "description": "Defines the CPU utilization policy that allows the autoscaler to scale based on the average CPU utilization of a managed instance group." + }, + "customMetricUtilizations": { + "description": "Configuration parameters of autoscaling based on a custom metric.", + "items": { + "$ref": "AutoscalingPolicyCustomMetricUtilization" + }, + "type": "array" + }, + "loadBalancingUtilization": { + "$ref": "AutoscalingPolicyLoadBalancingUtilization", + "description": "Configuration parameters of autoscaling based on load balancer." + }, + "maxNumReplicas": { + "description": "The maximum number of instances that the autoscaler can scale up to. This is required when creating or updating an autoscaler. The maximum number of replicas should not be lower than minimal number of replicas.", + "format": "int32", + "type": "integer" + }, + "minNumReplicas": { + "description": "The minimum number of replicas that the autoscaler can scale down to. This cannot be less than 0. If not provided, autoscaler will choose a default value depending on maximum number of instances allowed.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "AutoscalingPolicyCpuUtilization": { + "description": "CPU utilization policy.", + "id": "AutoscalingPolicyCpuUtilization", + "properties": { + "utilizationTarget": { + "description": "The target CPU utilization that the autoscaler should maintain. Must be a float value in the range (0, 1]. If not specified, the default is 0.6.\n\nIf the CPU level is below the target utilization, the autoscaler scales down the number of instances until it reaches the minimum number of instances you specified or until the average CPU of your instances reaches the target utilization.\n\nIf the average CPU is above the target utilization, the autoscaler scales up until it reaches the maximum number of instances you specified or until the average utilization reaches the target utilization.", + "format": "double", + "type": "number" + } + }, + "type": "object" + }, + "AutoscalingPolicyCustomMetricUtilization": { + "description": "Custom utilization metric policy.", + "id": "AutoscalingPolicyCustomMetricUtilization", + "properties": { + "metric": { + "description": "The identifier (type) of the Stackdriver Monitoring metric. The metric cannot have negative values.\n\nThe metric must have a value type of INT64 or DOUBLE.", + "type": "string" + }, + "utilizationTarget": { + "description": "The target value of the metric that autoscaler should maintain. This must be a positive value. A utilization metric scales number of virtual machines handling requests to increase or decrease proportionally to the metric.\n\nFor example, a good metric to use as a utilization_target is compute.googleapis.com/instance/network/received_bytes_count. The autoscaler will work to keep this value constant for each of the instances.", + "format": "double", + "type": "number" + }, + "utilizationTargetType": { + "description": "Defines how target utilization value is expressed for a Stackdriver Monitoring metric. Either GAUGE, DELTA_PER_SECOND, or DELTA_PER_MINUTE. If not specified, the default is GAUGE.", + "enum": [ + "DELTA_PER_MINUTE", + "DELTA_PER_SECOND", + "GAUGE" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "AutoscalingPolicyLoadBalancingUtilization": { + "description": "Configuration parameters of autoscaling based on load balancing.", + "id": "AutoscalingPolicyLoadBalancingUtilization", + "properties": { + "utilizationTarget": { + "description": "Fraction of backend capacity utilization (set in HTTP(s) load balancing configuration) that autoscaler should maintain. Must be a positive float value. If not defined, the default is 0.8.", + "format": "double", + "type": "number" + } + }, + "type": "object" + }, + "Backend": { + "description": "Message containing information of one individual backend.", + "id": "Backend", + "properties": { + "balancingMode": { + "description": "Specifies the balancing mode for this backend. For global HTTP(S) or TCP/SSL load balancing, the default is UTILIZATION. Valid values are UTILIZATION, RATE (for HTTP(S)) and CONNECTION (for TCP/SSL).\n\nFor Internal Load Balancing, the default and only supported mode is CONNECTION.", + "enum": [ + "CONNECTION", + "RATE", + "UTILIZATION" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, + "capacityScaler": { + "description": "A multiplier applied to the group's maximum servicing capacity (based on UTILIZATION, RATE or CONNECTION). Default value is 1, which means the group will serve up to 100% of its configured capacity (depending on balancingMode). A setting of 0 means the group is completely drained, offering 0% of its available Capacity. Valid range is [0.0,1.0].\n\nThis cannot be used for internal load balancing.", + "format": "float", + "type": "number" + }, + "description": { + "description": "An optional description of this resource. Provide this property when you create the resource.", + "type": "string" + }, + "group": { + "description": "The fully-qualified URL of a Instance Group resource. This instance group defines the list of instances that serve traffic. Member virtual machine instances from each instance group must live in the same zone as the instance group itself. No two backends in a backend service are allowed to use same Instance Group resource.\n\nNote that you must specify an Instance Group resource using the fully-qualified URL, rather than a partial URL.\n\nWhen the BackendService has load balancing scheme INTERNAL, the instance group must be within the same region as the BackendService.", + "type": "string" + }, + "maxConnections": { + "description": "The max number of simultaneous connections for the group. Can be used with either CONNECTION or UTILIZATION balancing modes. For CONNECTION mode, either maxConnections or maxConnectionsPerInstance must be set.\n\nThis cannot be used for internal load balancing.", + "format": "int32", + "type": "integer" + }, + "maxConnectionsPerInstance": { + "description": "The max number of simultaneous connections that a single backend instance can handle. This is used to calculate the capacity of the group. Can be used in either CONNECTION or UTILIZATION balancing modes. For CONNECTION mode, either maxConnections or maxConnectionsPerInstance must be set.\n\nThis cannot be used for internal load balancing.", + "format": "int32", + "type": "integer" + }, + "maxRate": { + "description": "The max requests per second (RPS) of the group. Can be used with either RATE or UTILIZATION balancing modes, but required if RATE mode. For RATE mode, either maxRate or maxRatePerInstance must be set.\n\nThis cannot be used for internal load balancing.", + "format": "int32", + "type": "integer" + }, + "maxRatePerInstance": { + "description": "The max requests per second (RPS) that a single backend instance can handle. This is used to calculate the capacity of the group. Can be used in either balancing mode. For RATE mode, either maxRate or maxRatePerInstance must be set.\n\nThis cannot be used for internal load balancing.", + "format": "float", + "type": "number" + }, + "maxUtilization": { + "description": "Used when balancingMode is UTILIZATION. This ratio defines the CPU utilization target for the group. The default is 0.8. Valid range is [0.0, 1.0].\n\nThis cannot be used for internal load balancing.", + "format": "float", + "type": "number" + } + }, + "type": "object" + }, + "BackendBucket": { + "description": "A BackendBucket resource. This resource defines a Cloud Storage bucket.", + "id": "BackendBucket", + "properties": { + "bucketName": { + "description": "Cloud Storage bucket name.", + "type": "string" + }, + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "description": { + "description": "An optional textual description of the resource; provided by the client when the resource is created.", + "type": "string" + }, + "enableCdn": { + "description": "If true, enable Cloud CDN for this BackendBucket.", + "type": "boolean" + }, + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "format": "uint64", + "type": "string" + }, + "kind": { + "default": "compute#backendBucket", + "description": "Type of the resource.", + "type": "string" + }, + "name": { + "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + } + }, + "type": "object" + }, + "BackendBucketList": { + "description": "Contains a list of BackendBucket resources.", + "id": "BackendBucketList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of BackendBucket resources.", + "items": { + "$ref": "BackendBucket" + }, + "type": "array" + }, + "kind": { + "default": "compute#backendBucketList", + "description": "Type of resource.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "BackendService": { + "description": "A BackendService resource. This resource defines a group of backend virtual machines and their serving capacity. (== resource_for v1.backendService ==) (== resource_for beta.backendService ==)", + "id": "BackendService", + "properties": { + "affinityCookieTtlSec": { + "description": "Lifetime of cookies in seconds if session_affinity is GENERATED_COOKIE. If set to 0, the cookie is non-persistent and lasts only until the end of the browser session (or equivalent). The maximum allowed value for TTL is one day.\n\nWhen the load balancing scheme is INTERNAL, this field is not used.", + "format": "int32", + "type": "integer" + }, + "backends": { + "description": "The list of backends that serve this BackendService.", + "items": { + "$ref": "Backend" + }, + "type": "array" + }, + "cdnPolicy": { + "$ref": "BackendServiceCdnPolicy", + "description": "Cloud CDN configuration for this BackendService." + }, + "connectionDraining": { + "$ref": "ConnectionDraining" + }, + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "description": { + "description": "An optional description of this resource. Provide this property when you create the resource.", + "type": "string" + }, + "enableCDN": { + "description": "If true, enable Cloud CDN for this BackendService.\n\nWhen the load balancing scheme is INTERNAL, this field is not used.", + "type": "boolean" + }, + "fingerprint": { + "description": "Fingerprint of this resource. A hash of the contents stored in this object. This field is used in optimistic locking. This field will be ignored when inserting a BackendService. An up-to-date fingerprint must be provided in order to update the BackendService.", + "format": "byte", + "type": "string" + }, + "healthChecks": { + "description": "The list of URLs to the HttpHealthCheck or HttpsHealthCheck resource for health checking this BackendService. Currently at most one health check can be specified, and a health check is required for Compute Engine backend services. A health check must not be specified for App Engine backend and Cloud Function backend.\n\nFor internal load balancing, a URL to a HealthCheck resource must be specified instead.", + "items": { + "type": "string" + }, + "type": "array" + }, + "iap": { + "$ref": "BackendServiceIAP" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64", + "type": "string" + }, + "kind": { + "default": "compute#backendService", + "description": "[Output Only] Type of resource. Always compute#backendService for backend services.", + "type": "string" + }, + "loadBalancingScheme": { + "description": "Indicates whether the backend service will be used with internal or external load balancing. A backend service created for one type of load balancing cannot be used with the other. Possible values are INTERNAL and EXTERNAL.", + "enum": [ + "EXTERNAL", + "INTERNAL", + "INVALID_LOAD_BALANCING_SCHEME" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, + "name": { + "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "port": { + "description": "Deprecated in favor of portName. The TCP port to connect on the backend. The default value is 80.\n\nThis cannot be used for internal load balancing.", + "format": "int32", + "type": "integer" + }, + "portName": { + "description": "Name of backend port. The same name should appear in the instance groups referenced by this service. Required when the load balancing scheme is EXTERNAL.\n\nWhen the load balancing scheme is INTERNAL, this field is not used.", + "type": "string" + }, + "protocol": { + "description": "The protocol this BackendService uses to communicate with backends.\n\nPossible values are HTTP, HTTPS, TCP, and SSL. The default is HTTP.\n\nFor internal load balancing, the possible values are TCP and UDP, and the default is TCP.", + "enum": [ + "HTTP", + "HTTPS", + "SSL", + "TCP", + "UDP" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "region": { + "description": "[Output Only] URL of the region where the regional backend service resides. This field is not applicable to global backend services. You must specify this field as part of the HTTP request URL. It is not settable as a field in the request body.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + }, + "sessionAffinity": { + "description": "Type of session affinity to use. The default is NONE.\n\nWhen the load balancing scheme is EXTERNAL, can be NONE, CLIENT_IP, or GENERATED_COOKIE.\n\nWhen the load balancing scheme is INTERNAL, can be NONE, CLIENT_IP, CLIENT_IP_PROTO, or CLIENT_IP_PORT_PROTO.\n\nWhen the protocol is UDP, this field is not used.", + "enum": [ + "CLIENT_IP", + "CLIENT_IP_PORT_PROTO", + "CLIENT_IP_PROTO", + "GENERATED_COOKIE", + "NONE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "timeoutSec": { + "description": "How many seconds to wait for the backend before considering it a failed request. Default is 30 seconds.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "BackendServiceAggregatedList": { + "description": "Contains a list of BackendServicesScopedList.", + "id": "BackendServiceAggregatedList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "additionalProperties": { + "$ref": "BackendServicesScopedList", + "description": "Name of the scope containing this set of BackendServices." + }, + "description": "A list of BackendServicesScopedList resources.", + "type": "object" + }, + "kind": { + "default": "compute#backendServiceAggregatedList", + "description": "Type of resource.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "BackendServiceCdnPolicy": { + "description": "Message containing Cloud CDN configuration for a backend service.", + "id": "BackendServiceCdnPolicy", + "properties": { + "cacheKeyPolicy": { + "$ref": "CacheKeyPolicy", + "description": "The CacheKeyPolicy for this CdnPolicy." + } + }, + "type": "object" + }, + "BackendServiceGroupHealth": { + "id": "BackendServiceGroupHealth", + "properties": { + "healthStatus": { + "items": { + "$ref": "HealthStatus" + }, + "type": "array" + }, + "kind": { + "default": "compute#backendServiceGroupHealth", + "description": "[Output Only] Type of resource. Always compute#backendServiceGroupHealth for the health of backend services.", + "type": "string" + } + }, + "type": "object" + }, + "BackendServiceIAP": { + "description": "Identity-Aware Proxy", + "id": "BackendServiceIAP", + "properties": { + "enabled": { + "type": "boolean" + }, + "oauth2ClientId": { + "type": "string" + }, + "oauth2ClientSecret": { + "type": "string" + }, + "oauth2ClientSecretSha256": { + "description": "[Output Only] SHA256 hash value for the field oauth2_client_secret above.", + "type": "string" + } + }, + "type": "object" + }, + "BackendServiceList": { + "description": "Contains a list of BackendService resources.", + "id": "BackendServiceList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of BackendService resources.", + "items": { + "$ref": "BackendService" + }, + "type": "array" + }, + "kind": { + "default": "compute#backendServiceList", + "description": "[Output Only] Type of resource. Always compute#backendServiceList for lists of backend services.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "BackendServicesScopedList": { + "id": "BackendServicesScopedList", + "properties": { + "backendServices": { + "description": "List of BackendServices contained in this scope.", + "items": { + "$ref": "BackendService" + }, + "type": "array" + }, + "warning": { + "description": "Informational warning which replaces the list of backend services when the list is empty.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "CacheInvalidationRule": { + "id": "CacheInvalidationRule", + "properties": { + "host": { + "description": "If set, this invalidation rule will only apply to requests with a Host header matching host.", + "type": "string" + }, + "path": { + "type": "string" + } + }, + "type": "object" + }, + "CacheKeyPolicy": { + "description": "Message containing what to include in the cache key for a request for Cloud CDN.", + "id": "CacheKeyPolicy", + "properties": { + "includeHost": { + "description": "If true, requests to different hosts will be cached separately.", + "type": "boolean" + }, + "includeProtocol": { + "description": "If true, http and https requests will be cached separately.", + "type": "boolean" + }, + "includeQueryString": { + "description": "If true, include query string parameters in the cache key according to query_string_whitelist and query_string_blacklist. If neither is set, the entire query string will be included. If false, the query string will be excluded from the cache key entirely.", + "type": "boolean" + }, + "queryStringBlacklist": { + "description": "Names of query string parameters to exclude in cache keys. All other parameters will be included. Either specify query_string_whitelist or query_string_blacklist, not both. '\u0026' and '=' will be percent encoded and not treated as delimiters.", + "items": { + "type": "string" + }, + "type": "array" + }, + "queryStringWhitelist": { + "description": "Names of query string parameters to include in cache keys. All other parameters will be excluded. Either specify query_string_whitelist or query_string_blacklist, not both. '\u0026' and '=' will be percent encoded and not treated as delimiters.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "Commitment": { + "description": "Represents a Commitment resource. Creating a Commitment resource means that you are purchasing a committed use contract with an explicit start and end time. You can create commitments based on vCPUs and memory usage and receive discounted rates. For full details, read Signing Up for Committed Use Discounts.\n\nCommitted use discounts are subject to Google Cloud Platform's Service Specific Terms. By purchasing a committed use discount, you agree to these terms. Committed use discounts will not renew, so you must purchase a new commitment to continue receiving discounts. (== resource_for beta.commitments ==) (== resource_for v1.commitments ==)", + "id": "Commitment", + "properties": { + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "description": { + "description": "An optional description of this resource. Provide this property when you create the resource.", + "type": "string" + }, + "endTimestamp": { + "description": "[Output Only] Commitment end time in RFC3339 text format.", + "type": "string" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64", + "type": "string" + }, + "kind": { + "default": "compute#commitment", + "description": "[Output Only] Type of the resource. Always compute#commitment for commitments.", + "type": "string" + }, + "name": { + "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "plan": { + "description": "The plan for this commitment, which determines duration and discount rate. The currently supported plans are TWELVE_MONTH (1 year), and THIRTY_SIX_MONTH (3 years).", + "enum": [ + "INVALID", + "THIRTY_SIX_MONTH", + "TWELVE_MONTH" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, + "region": { + "description": "[Output Only] URL of the region where this commitment may be used.", + "type": "string" + }, + "resources": { + "description": "List of commitment amounts for particular resources. Note that VCPU and MEMORY resource commitments must occur together.", + "items": { + "$ref": "ResourceCommitment" + }, + "type": "array" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + }, + "startTimestamp": { + "description": "[Output Only] Commitment start time in RFC3339 text format.", + "type": "string" + }, + "status": { + "description": "[Output Only] Status of the commitment with regards to eventual expiration (each commitment has an end date defined). One of the following values: NOT_YET_ACTIVE, ACTIVE, EXPIRED.", + "enum": [ + "ACTIVE", + "CREATING", + "EXPIRED", + "NOT_YET_ACTIVE" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ], + "type": "string" + }, + "statusMessage": { + "description": "[Output Only] An optional, human-readable explanation of the status.", + "type": "string" + } + }, + "type": "object" + }, + "CommitmentAggregatedList": { + "id": "CommitmentAggregatedList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "additionalProperties": { + "$ref": "CommitmentsScopedList", + "description": "[Output Only] Name of the scope containing this set of commitments." + }, + "description": "A list of CommitmentsScopedList resources.", + "type": "object" + }, + "kind": { + "default": "compute#commitmentAggregatedList", + "description": "[Output Only] Type of resource. Always compute#commitmentAggregatedList for aggregated lists of commitments.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "CommitmentList": { + "description": "Contains a list of Commitment resources.", + "id": "CommitmentList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of Commitment resources.", + "items": { + "$ref": "Commitment" + }, + "type": "array" + }, + "kind": { + "default": "compute#commitmentList", + "description": "[Output Only] Type of resource. Always compute#commitmentList for lists of commitments.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "CommitmentsScopedList": { + "id": "CommitmentsScopedList", + "properties": { + "commitments": { + "description": "[Output Only] List of commitments contained in this scope.", + "items": { + "$ref": "Commitment" + }, + "type": "array" + }, + "warning": { + "description": "[Output Only] Informational warning which replaces the list of commitments when the list is empty.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "ConnectionDraining": { + "description": "Message containing connection draining configuration.", + "id": "ConnectionDraining", + "properties": { + "drainingTimeoutSec": { + "description": "Time for which instance will be drained (not accept new connections, but still work to finish started).", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "CustomerEncryptionKey": { + "description": "Represents a customer-supplied encryption key", + "id": "CustomerEncryptionKey", + "properties": { + "rawKey": { + "description": "Specifies a 256-bit customer-supplied encryption key, encoded in RFC 4648 base64 to either encrypt or decrypt this resource.", + "type": "string" + }, + "sha256": { + "description": "[Output only] The RFC 4648 base64 encoded SHA-256 hash of the customer-supplied encryption key that protects this resource.", + "type": "string" + } + }, + "type": "object" + }, + "CustomerEncryptionKeyProtectedDisk": { + "id": "CustomerEncryptionKeyProtectedDisk", + "properties": { + "diskEncryptionKey": { + "$ref": "CustomerEncryptionKey", + "description": "Decrypts data associated with the disk with a customer-supplied encryption key." + }, + "source": { + "description": "Specifies a valid partial or full URL to an existing Persistent Disk resource. This field is only applicable for persistent disks.", + "type": "string" + } + }, + "type": "object" + }, + "DeprecationStatus": { + "description": "Deprecation status for a public resource.", + "id": "DeprecationStatus", + "properties": { + "deleted": { + "description": "An optional RFC3339 timestamp on or after which the state of this resource is intended to change to DELETED. This is only informational and the status will not change unless the client explicitly changes it.", + "type": "string" + }, + "deprecated": { + "description": "An optional RFC3339 timestamp on or after which the state of this resource is intended to change to DEPRECATED. This is only informational and the status will not change unless the client explicitly changes it.", + "type": "string" + }, + "obsolete": { + "description": "An optional RFC3339 timestamp on or after which the state of this resource is intended to change to OBSOLETE. This is only informational and the status will not change unless the client explicitly changes it.", + "type": "string" + }, + "replacement": { + "description": "The URL of the suggested replacement for a deprecated resource. The suggested replacement resource must be the same kind of resource as the deprecated resource.", + "type": "string" + }, + "state": { + "description": "The deprecation state of this resource. This can be DEPRECATED, OBSOLETE, or DELETED. Operations which create a new resource using a DEPRECATED resource will return successfully, but with a warning indicating the deprecated resource and recommending its replacement. Operations which use OBSOLETE or DELETED resources will be rejected and result in an error.", + "enum": [ + "DELETED", + "DEPRECATED", + "OBSOLETE" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "Disk": { + "description": "A Disk resource. (== resource_for beta.disks ==) (== resource_for v1.disks ==)", + "id": "Disk", + "properties": { + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "description": { + "description": "An optional description of this resource. Provide this property when you create the resource.", + "type": "string" + }, + "diskEncryptionKey": { + "$ref": "CustomerEncryptionKey", + "description": "Encrypts the disk using a customer-supplied encryption key.\n\nAfter you encrypt a disk with a customer-supplied key, you must provide the same key if you use the disk later (e.g. to create a disk snapshot or an image, or to attach the disk to a virtual machine).\n\nCustomer-supplied encryption keys do not protect access to metadata of the disk.\n\nIf you do not provide an encryption key when creating the disk, then the disk will be encrypted using an automatically generated key and you do not need to provide a key to use the disk later." + }, + "guestOsFeatures": { + "description": "A list of features to enable on the guest operating system. Applicable only for bootable images. Read Enabling guest operating system features to see a list of available options.", + "items": { + "$ref": "GuestOsFeature" + }, + "type": "array" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64", + "type": "string" + }, + "kind": { + "default": "compute#disk", + "description": "[Output Only] Type of the resource. Always compute#disk for disks.", + "type": "string" + }, + "labelFingerprint": { + "description": "A fingerprint for the labels being applied to this disk, which is essentially a hash of the labels set used for optimistic locking. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update labels. You must always provide an up-to-date fingerprint hash in order to update or change labels.\n\nTo see the latest fingerprint, make a get() request to retrieve a disk.", + "format": "byte", + "type": "string" + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Labels to apply to this disk. These can be later modified by the setLabels method.", + "type": "object" + }, + "lastAttachTimestamp": { + "description": "[Output Only] Last attach timestamp in RFC3339 text format.", + "type": "string" + }, + "lastDetachTimestamp": { + "description": "[Output Only] Last detach timestamp in RFC3339 text format.", + "type": "string" + }, + "licenseCodes": { + "description": "Integer license codes indicating which licenses are attached to this disk.", + "items": { + "format": "int64", + "type": "string" + }, + "type": "array" + }, + "licenses": { + "description": "Any applicable publicly visible licenses.", + "items": { + "type": "string" + }, + "type": "array" + }, + "name": { + "annotations": { + "required": [ + "compute.disks.insert" + ] + }, + "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "options": { + "description": "Internal use only.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined fully-qualified URL for this resource.", + "type": "string" + }, + "sizeGb": { + "description": "Size of the persistent disk, specified in GB. You can specify this field when creating a persistent disk using the sourceImage or sourceSnapshot parameter, or specify it alone to create an empty persistent disk.\n\nIf you specify this field along with sourceImage or sourceSnapshot, the value of sizeGb must not be less than the size of the sourceImage or the size of the snapshot. Acceptable values are 1 to 65536, inclusive.", + "format": "int64", + "type": "string" + }, + "sourceImage": { + "description": "The source image used to create this disk. If the source image is deleted, this field will not be set.\n\nTo create a disk with one of the public operating system images, specify the image by its family name. For example, specify family/debian-8 to use the latest Debian 8 image:\nprojects/debian-cloud/global/images/family/debian-8\n\n\nAlternatively, use a specific version of a public operating system image:\nprojects/debian-cloud/global/images/debian-8-jessie-vYYYYMMDD\n\n\nTo create a disk with a custom image that you created, specify the image name in the following format:\nglobal/images/my-custom-image\n\n\nYou can also specify a custom image by its image family, which returns the latest version of the image in that family. Replace the image name with family/family-name:\nglobal/images/family/my-image-family", + "type": "string" + }, + "sourceImageEncryptionKey": { + "$ref": "CustomerEncryptionKey", + "description": "The customer-supplied encryption key of the source image. Required if the source image is protected by a customer-supplied encryption key." + }, + "sourceImageId": { + "description": "[Output Only] The ID value of the image used to create this disk. This value identifies the exact image that was used to create this persistent disk. For example, if you created the persistent disk from an image that was later deleted and recreated under the same name, the source image ID would identify the exact version of the image that was used.", + "type": "string" + }, + "sourceSnapshot": { + "description": "The source snapshot used to create this disk. You can provide this as a partial or full URL to the resource. For example, the following are valid values: \n- https://www.googleapis.com/compute/v1/projects/project/global/snapshots/snapshot \n- projects/project/global/snapshots/snapshot \n- global/snapshots/snapshot", + "type": "string" + }, + "sourceSnapshotEncryptionKey": { + "$ref": "CustomerEncryptionKey", + "description": "The customer-supplied encryption key of the source snapshot. Required if the source snapshot is protected by a customer-supplied encryption key." + }, + "sourceSnapshotId": { + "description": "[Output Only] The unique ID of the snapshot used to create this disk. This value identifies the exact snapshot that was used to create this persistent disk. For example, if you created the persistent disk from a snapshot that was later deleted and recreated under the same name, the source snapshot ID would identify the exact version of the snapshot that was used.", + "type": "string" + }, + "status": { + "description": "[Output Only] The status of disk creation.", + "enum": [ + "CREATING", + "FAILED", + "READY", + "RESTORING" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ], + "type": "string" + }, + "type": { + "description": "URL of the disk type resource describing which disk type to use to create the disk. Provide this when creating the disk. For example: project/zones/zone/diskTypes/pd-standard or pd-ssd", + "type": "string" + }, + "users": { + "description": "[Output Only] Links to the users of the disk (attached instances) in form: project/zones/zone/instances/instance", + "items": { + "type": "string" + }, + "type": "array" + }, + "zone": { + "description": "[Output Only] URL of the zone where the disk resides. You must specify this field as part of the HTTP request URL. It is not settable as a field in the request body.", + "type": "string" + } + }, + "type": "object" + }, + "DiskAggregatedList": { + "id": "DiskAggregatedList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "additionalProperties": { + "$ref": "DisksScopedList", + "description": "[Output Only] Name of the scope containing this set of disks." + }, + "description": "A list of DisksScopedList resources.", + "type": "object" + }, + "kind": { + "default": "compute#diskAggregatedList", + "description": "[Output Only] Type of resource. Always compute#diskAggregatedList for aggregated lists of persistent disks.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "DiskList": { + "description": "A list of Disk resources.", + "id": "DiskList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of Disk resources.", + "items": { + "$ref": "Disk" + }, + "type": "array" + }, + "kind": { + "default": "compute#diskList", + "description": "[Output Only] Type of resource. Always compute#diskList for lists of disks.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "DiskMoveRequest": { + "id": "DiskMoveRequest", + "properties": { + "destinationZone": { + "description": "The URL of the destination zone to move the disk. This can be a full or partial URL. For example, the following are all valid URLs to a zone: \n- https://www.googleapis.com/compute/v1/projects/project/zones/zone \n- projects/project/zones/zone \n- zones/zone", + "type": "string" + }, + "targetDisk": { + "description": "The URL of the target disk to move. This can be a full or partial URL. For example, the following are all valid URLs to a disk: \n- https://www.googleapis.com/compute/v1/projects/project/zones/zone/disks/disk \n- projects/project/zones/zone/disks/disk \n- zones/zone/disks/disk", + "type": "string" + } + }, + "type": "object" + }, + "DiskType": { + "description": "A DiskType resource. (== resource_for beta.diskTypes ==) (== resource_for v1.diskTypes ==)", + "id": "DiskType", + "properties": { + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "defaultDiskSizeGb": { + "description": "[Output Only] Server-defined default disk size in GB.", + "format": "int64", + "type": "string" + }, + "deprecated": { + "$ref": "DeprecationStatus", + "description": "[Output Only] The deprecation status associated with this disk type." + }, + "description": { + "description": "[Output Only] An optional description of this resource.", + "type": "string" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64", + "type": "string" + }, + "kind": { + "default": "compute#diskType", + "description": "[Output Only] Type of the resource. Always compute#diskType for disk types.", + "type": "string" + }, + "name": { + "description": "[Output Only] Name of the resource.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + }, + "validDiskSize": { + "description": "[Output Only] An optional textual description of the valid disk size, such as \"10GB-10TB\".", + "type": "string" + }, + "zone": { + "description": "[Output Only] URL of the zone where the disk type resides. You must specify this field as part of the HTTP request URL. It is not settable as a field in the request body.", + "type": "string" + } + }, + "type": "object" + }, + "DiskTypeAggregatedList": { + "id": "DiskTypeAggregatedList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "additionalProperties": { + "$ref": "DiskTypesScopedList", + "description": "[Output Only] Name of the scope containing this set of disk types." + }, + "description": "A list of DiskTypesScopedList resources.", + "type": "object" + }, + "kind": { + "default": "compute#diskTypeAggregatedList", + "description": "[Output Only] Type of resource. Always compute#diskTypeAggregatedList.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "DiskTypeList": { + "description": "Contains a list of disk types.", + "id": "DiskTypeList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of DiskType resources.", + "items": { + "$ref": "DiskType" + }, + "type": "array" + }, + "kind": { + "default": "compute#diskTypeList", + "description": "[Output Only] Type of resource. Always compute#diskTypeList for disk types.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "DiskTypesScopedList": { + "id": "DiskTypesScopedList", + "properties": { + "diskTypes": { + "description": "[Output Only] List of disk types contained in this scope.", + "items": { + "$ref": "DiskType" + }, + "type": "array" + }, + "warning": { + "description": "[Output Only] Informational warning which replaces the list of disk types when the list is empty.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "DisksResizeRequest": { + "id": "DisksResizeRequest", + "properties": { + "sizeGb": { + "description": "The new size of the persistent disk, which is specified in GB.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "DisksScopedList": { + "id": "DisksScopedList", + "properties": { + "disks": { + "description": "[Output Only] List of disks contained in this scope.", + "items": { + "$ref": "Disk" + }, + "type": "array" + }, + "warning": { + "description": "[Output Only] Informational warning which replaces the list of disks when the list is empty.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "Firewall": { + "description": "Represents a Firewall resource.", + "id": "Firewall", + "properties": { + "allowed": { + "description": "The list of ALLOW rules specified by this firewall. Each rule specifies a protocol and port-range tuple that describes a permitted connection.", + "items": { + "properties": { + "IPProtocol": { + "description": "The IP protocol to which this rule applies. The protocol type is required when creating a firewall rule. This value can either be one of the following well known protocol strings (tcp, udp, icmp, esp, ah, ipip, sctp), or the IP protocol number.", + "type": "string" + }, + "ports": { + "description": "An optional list of ports to which this rule applies. This field is only applicable for UDP or TCP protocol. Each entry must be either an integer or a range. If not specified, this rule applies to connections through any port.\n\nExample inputs include: [\"22\"], [\"80\",\"443\"], and [\"12345-12349\"].", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "type": "array" + }, + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "denied": { + "description": "The list of DENY rules specified by this firewall. Each rule specifies a protocol and port-range tuple that describes a denied connection.", + "items": { + "properties": { + "IPProtocol": { + "description": "The IP protocol to which this rule applies. The protocol type is required when creating a firewall rule. This value can either be one of the following well known protocol strings (tcp, udp, icmp, esp, ah, ipip, sctp), or the IP protocol number.", + "type": "string" + }, + "ports": { + "description": "An optional list of ports to which this rule applies. This field is only applicable for UDP or TCP protocol. Each entry must be either an integer or a range. If not specified, this rule applies to connections through any port.\n\nExample inputs include: [\"22\"], [\"80\",\"443\"], and [\"12345-12349\"].", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "type": "array" + }, + "description": { + "description": "An optional description of this resource. Provide this property when you create the resource.", + "type": "string" + }, + "destinationRanges": { + "description": "If destination ranges are specified, the firewall will apply only to traffic that has destination IP address in these ranges. These ranges must be expressed in CIDR format. Only IPv4 is supported.", + "items": { + "type": "string" + }, + "type": "array" + }, + "direction": { + "description": "Direction of traffic to which this firewall applies; default is INGRESS. Note: For INGRESS traffic, it is NOT supported to specify destinationRanges; For EGRESS traffic, it is NOT supported to specify sourceRanges OR sourceTags.", + "enum": [ + "EGRESS", + "INGRESS" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64", + "type": "string" + }, + "kind": { + "default": "compute#firewall", + "description": "[Output Only] Type of the resource. Always compute#firewall for firewall rules.", + "type": "string" + }, + "name": { + "annotations": { + "required": [ + "compute.firewalls.insert", + "compute.firewalls.patch" + ] + }, + "description": "Name of the resource; provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "network": { + "description": "URL of the network resource for this firewall rule. If not specified when creating a firewall rule, the default network is used:\nglobal/networks/default\nIf you choose to specify this property, you can specify the network as a full or partial URL. For example, the following are all valid URLs: \n- https://www.googleapis.com/compute/v1/projects/myproject/global/networks/my-network \n- projects/myproject/global/networks/my-network \n- global/networks/default", + "type": "string" + }, + "priority": { + "description": "Priority for this rule. This is an integer between 0 and 65535, both inclusive. When not specified, the value assumed is 1000. Relative priorities determine precedence of conflicting rules. Lower value of priority implies higher precedence (eg, a rule with priority 0 has higher precedence than a rule with priority 1). DENY rules take precedence over ALLOW rules having equal priority.", + "format": "int32", + "type": "integer" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + }, + "sourceRanges": { + "description": "If source ranges are specified, the firewall will apply only to traffic that has source IP address in these ranges. These ranges must be expressed in CIDR format. One or both of sourceRanges and sourceTags may be set. If both properties are set, the firewall will apply to traffic that has source IP address within sourceRanges OR the source IP that belongs to a tag listed in the sourceTags property. The connection does not need to match both properties for the firewall to apply. Only IPv4 is supported.", + "items": { + "type": "string" + }, + "type": "array" + }, + "sourceServiceAccounts": { + "description": "If source service accounts are specified, the firewall will apply only to traffic originating from an instance with a service account in this list. Source service accounts cannot be used to control traffic to an instance's external IP address because service accounts are associated with an instance, not an IP address. sourceRanges can be set at the same time as sourceServiceAccounts. If both are set, the firewall will apply to traffic that has source IP address within sourceRanges OR the source IP belongs to an instance with service account listed in sourceServiceAccount. The connection does not need to match both properties for the firewall to apply. sourceServiceAccounts cannot be used at the same time as sourceTags or targetTags.", + "items": { + "type": "string" + }, + "type": "array" + }, + "sourceTags": { + "description": "If source tags are specified, the firewall rule applies only to traffic with source IPs that match the primary network interfaces of VM instances that have the tag and are in the same VPC network. Source tags cannot be used to control traffic to an instance's external IP address, it only applies to traffic between instances in the same virtual network. Because tags are associated with instances, not IP addresses. One or both of sourceRanges and sourceTags may be set. If both properties are set, the firewall will apply to traffic that has source IP address within sourceRanges OR the source IP that belongs to a tag listed in the sourceTags property. The connection does not need to match both properties for the firewall to apply.", + "items": { + "type": "string" + }, + "type": "array" + }, + "targetServiceAccounts": { + "description": "A list of service accounts indicating sets of instances located in the network that may make network connections as specified in allowed[]. targetServiceAccounts cannot be used at the same time as targetTags or sourceTags. If neither targetServiceAccounts nor targetTags are specified, the firewall rule applies to all instances on the specified network.", + "items": { + "type": "string" + }, + "type": "array" + }, + "targetTags": { + "description": "A list of tags that controls which instances the firewall rule applies to. If targetTags are specified, then the firewall rule applies only to instances in the VPC network that have one of those tags. If no targetTags are specified, the firewall rule applies to all instances on the specified network.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "FirewallList": { + "description": "Contains a list of firewalls.", + "id": "FirewallList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of Firewall resources.", + "items": { + "$ref": "Firewall" + }, + "type": "array" + }, + "kind": { + "default": "compute#firewallList", + "description": "[Output Only] Type of resource. Always compute#firewallList for lists of firewalls.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "ForwardingRule": { + "description": "A ForwardingRule resource. A ForwardingRule resource specifies which pool of target virtual machines to forward a packet to if it matches the given [IPAddress, IPProtocol, ports] tuple. (== resource_for beta.forwardingRules ==) (== resource_for v1.forwardingRules ==) (== resource_for beta.globalForwardingRules ==) (== resource_for v1.globalForwardingRules ==) (== resource_for beta.regionForwardingRules ==) (== resource_for v1.regionForwardingRules ==)", + "id": "ForwardingRule", + "properties": { + "IPAddress": { + "description": "The IP address that this forwarding rule is serving on behalf of.\n\nAddresses are restricted based on the forwarding rule's load balancing scheme (EXTERNAL or INTERNAL) and scope (global or regional).\n\nWhen the load balancing scheme is EXTERNAL, for global forwarding rules, the address must be a global IP, and for regional forwarding rules, the address must live in the same region as the forwarding rule. If this field is empty, an ephemeral IPv4 address from the same scope (global or regional) will be assigned. A regional forwarding rule supports IPv4 only. A global forwarding rule supports either IPv4 or IPv6.\n\nWhen the load balancing scheme is INTERNAL, this can only be an RFC 1918 IP address belonging to the network/subnet configured for the forwarding rule. By default, if this field is empty, an ephemeral internal IP address will be automatically allocated from the IP range of the subnet or network configured for this forwarding rule.\n\nAn address can be specified either by a literal IP address or a URL reference to an existing Address resource. The following examples are all valid: \n- 100.1.2.3 \n- https://www.googleapis.com/compute/v1/projects/project/regions/region/addresses/address \n- projects/project/regions/region/addresses/address \n- regions/region/addresses/address \n- global/addresses/address \n- address", + "type": "string" + }, + "IPProtocol": { + "description": "The IP protocol to which this rule applies. Valid options are TCP, UDP, ESP, AH, SCTP or ICMP.\n\nWhen the load balancing scheme is INTERNAL, only TCP and UDP are valid.", + "enum": [ + "AH", + "ESP", + "ICMP", + "SCTP", + "TCP", + "UDP" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "backendService": { + "description": "This field is not used for external load balancing.\n\nFor internal load balancing, this field identifies the BackendService resource to receive the matched traffic.", + "type": "string" + }, + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "description": { + "description": "An optional description of this resource. Provide this property when you create the resource.", + "type": "string" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64", + "type": "string" + }, + "ipVersion": { + "description": "The IP Version that will be used by this forwarding rule. Valid options are IPV4 or IPV6. This can only be specified for a global forwarding rule.", + "enum": [ + "IPV4", + "IPV6", + "UNSPECIFIED_VERSION" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, + "kind": { + "default": "compute#forwardingRule", + "description": "[Output Only] Type of the resource. Always compute#forwardingRule for Forwarding Rule resources.", + "type": "string" + }, + "loadBalancingScheme": { + "description": "This signifies what the ForwardingRule will be used for and can only take the following values: INTERNAL, EXTERNAL The value of INTERNAL means that this will be used for Internal Network Load Balancing (TCP, UDP). The value of EXTERNAL means that this will be used for External Load Balancing (HTTP(S) LB, External TCP/UDP LB, SSL Proxy)", + "enum": [ + "EXTERNAL", + "INTERNAL", + "INVALID" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, + "name": { + "description": "Name of the resource; provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "network": { + "description": "This field is not used for external load balancing.\n\nFor internal load balancing, this field identifies the network that the load balanced IP should belong to for this Forwarding Rule. If this field is not specified, the default network will be used.", + "type": "string" + }, + "portRange": { + "description": "This field is used along with the target field for TargetHttpProxy, TargetHttpsProxy, TargetSslProxy, TargetTcpProxy, TargetVpnGateway, TargetPool, TargetInstance.\n\nApplicable only when IPProtocol is TCP, UDP, or SCTP, only packets addressed to ports in the specified range will be forwarded to target. Forwarding rules with the same [IPAddress, IPProtocol] pair must have disjoint port ranges.\n\nSome types of forwarding target have constraints on the acceptable ports: \n- TargetHttpProxy: 80, 8080 \n- TargetHttpsProxy: 443 \n- TargetTcpProxy: 25, 43, 110, 143, 195, 443, 465, 587, 700, 993, 995, 1688, 1883, 5222 \n- TargetSslProxy: 25, 43, 110, 143, 195, 443, 465, 587, 700, 993, 995, 1688, 1883, 5222 \n- TargetVpnGateway: 500, 4500", + "type": "string" + }, + "ports": { + "description": "This field is used along with the backend_service field for internal load balancing.\n\nWhen the load balancing scheme is INTERNAL, a single port or a comma separated list of ports can be configured. Only packets addressed to these ports will be forwarded to the backends configured with this forwarding rule.\n\nYou may specify a maximum of up to 5 ports.", + "items": { + "type": "string" + }, + "type": "array" + }, + "region": { + "description": "[Output Only] URL of the region where the regional forwarding rule resides. This field is not applicable to global forwarding rules. You must specify this field as part of the HTTP request URL. It is not settable as a field in the request body.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + }, + "subnetwork": { + "description": "This field is not used for external load balancing.\n\nFor internal load balancing, this field identifies the subnetwork that the load balanced IP should belong to for this Forwarding Rule.\n\nIf the network specified is in auto subnet mode, this field is optional. However, if the network is in custom subnet mode, a subnetwork must be specified.", + "type": "string" + }, + "target": { + "description": "The URL of the target resource to receive the matched traffic. For regional forwarding rules, this target must live in the same region as the forwarding rule. For global forwarding rules, this target must be a global load balancing resource. The forwarded traffic must be of a type appropriate to the target object.", + "type": "string" + } + }, + "type": "object" + }, + "ForwardingRuleAggregatedList": { + "id": "ForwardingRuleAggregatedList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "additionalProperties": { + "$ref": "ForwardingRulesScopedList", + "description": "Name of the scope containing this set of addresses." + }, + "description": "A list of ForwardingRulesScopedList resources.", + "type": "object" + }, + "kind": { + "default": "compute#forwardingRuleAggregatedList", + "description": "[Output Only] Type of resource. Always compute#forwardingRuleAggregatedList for lists of forwarding rules.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "ForwardingRuleList": { + "description": "Contains a list of ForwardingRule resources.", + "id": "ForwardingRuleList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of ForwardingRule resources.", + "items": { + "$ref": "ForwardingRule" + }, + "type": "array" + }, + "kind": { + "default": "compute#forwardingRuleList", + "description": "Type of resource.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "ForwardingRulesScopedList": { + "id": "ForwardingRulesScopedList", + "properties": { + "forwardingRules": { + "description": "List of forwarding rules contained in this scope.", + "items": { + "$ref": "ForwardingRule" + }, + "type": "array" + }, + "warning": { + "description": "Informational warning which replaces the list of forwarding rules when the list is empty.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "GlobalSetLabelsRequest": { + "id": "GlobalSetLabelsRequest", + "properties": { + "labelFingerprint": { + "description": "The fingerprint of the previous set of labels for this resource, used to detect conflicts. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update labels. You must always provide an up-to-date fingerprint hash when updating or changing labels. Make a get() request to the resource to get the latest fingerprint.", + "format": "byte", + "type": "string" + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "A list of labels to apply for this resource. Each label key \u0026 value must comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash. For example, \"webserver-frontend\": \"images\". A label value can also be empty (e.g. \"my-label\": \"\").", + "type": "object" + } + }, + "type": "object" + }, + "GuestOsFeature": { + "description": "Guest OS features.", + "id": "GuestOsFeature", + "properties": { + "type": { + "description": "The ID of a supported feature. Read Enabling guest operating system features to see a list of available options.", + "enum": [ + "FEATURE_TYPE_UNSPECIFIED", + "MULTI_IP_SUBNET", + "SECURE_BOOT", + "UEFI_COMPATIBLE", + "VIRTIO_SCSI_MULTIQUEUE", + "WINDOWS" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "HTTPHealthCheck": { + "id": "HTTPHealthCheck", + "properties": { + "host": { + "description": "The value of the host header in the HTTP health check request. If left empty (default value), the IP on behalf of which this health check is performed will be used.", + "type": "string" + }, + "port": { + "description": "The TCP port number for the health check request. The default value is 80. Valid values are 1 through 65535.", + "format": "int32", + "type": "integer" + }, + "portName": { + "description": "Port name as defined in InstanceGroup#NamedPort#name. If both port and port_name are defined, port takes precedence.", + "type": "string" + }, + "proxyHeader": { + "description": "Specifies the type of proxy header to append before sending data to the backend, either NONE or PROXY_V1. The default is NONE.", + "enum": [ + "NONE", + "PROXY_V1" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "requestPath": { + "description": "The request path of the HTTP health check request. The default value is /.", + "type": "string" + } + }, + "type": "object" + }, + "HTTPSHealthCheck": { + "id": "HTTPSHealthCheck", + "properties": { + "host": { + "description": "The value of the host header in the HTTPS health check request. If left empty (default value), the IP on behalf of which this health check is performed will be used.", + "type": "string" + }, + "port": { + "description": "The TCP port number for the health check request. The default value is 443. Valid values are 1 through 65535.", + "format": "int32", + "type": "integer" + }, + "portName": { + "description": "Port name as defined in InstanceGroup#NamedPort#name. If both port and port_name are defined, port takes precedence.", + "type": "string" + }, + "proxyHeader": { + "description": "Specifies the type of proxy header to append before sending data to the backend, either NONE or PROXY_V1. The default is NONE.", + "enum": [ + "NONE", + "PROXY_V1" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "requestPath": { + "description": "The request path of the HTTPS health check request. The default value is /.", + "type": "string" + } + }, + "type": "object" + }, + "HealthCheck": { + "description": "An HealthCheck resource. This resource defines a template for how individual virtual machines should be checked for health, via one of the supported protocols.", + "id": "HealthCheck", + "properties": { + "checkIntervalSec": { + "description": "How often (in seconds) to send a health check. The default value is 5 seconds.", + "format": "int32", + "type": "integer" + }, + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in 3339 text format.", + "type": "string" + }, + "description": { + "description": "An optional description of this resource. Provide this property when you create the resource.", + "type": "string" + }, + "healthyThreshold": { + "description": "A so-far unhealthy instance will be marked healthy after this many consecutive successes. The default value is 2.", + "format": "int32", + "type": "integer" + }, + "httpHealthCheck": { + "$ref": "HTTPHealthCheck" + }, + "httpsHealthCheck": { + "$ref": "HTTPSHealthCheck" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64", + "type": "string" + }, + "kind": { + "default": "compute#healthCheck", + "description": "Type of the resource.", + "type": "string" + }, + "name": { + "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + }, + "sslHealthCheck": { + "$ref": "SSLHealthCheck" + }, + "tcpHealthCheck": { + "$ref": "TCPHealthCheck" + }, + "timeoutSec": { + "description": "How long (in seconds) to wait before claiming failure. The default value is 5 seconds. It is invalid for timeoutSec to have greater value than checkIntervalSec.", + "format": "int32", + "type": "integer" + }, + "type": { + "description": "Specifies the type of the healthCheck, either TCP, SSL, HTTP or HTTPS. If not specified, the default is TCP. Exactly one of the protocol-specific health check field must be specified, which must match type field.", + "enum": [ + "HTTP", + "HTTPS", + "INVALID", + "SSL", + "TCP" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "unhealthyThreshold": { + "description": "A so-far healthy instance will be marked unhealthy after this many consecutive failures. The default value is 2.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "HealthCheckList": { + "description": "Contains a list of HealthCheck resources.", + "id": "HealthCheckList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of HealthCheck resources.", + "items": { + "$ref": "HealthCheck" + }, + "type": "array" + }, + "kind": { + "default": "compute#healthCheckList", + "description": "Type of resource.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "HealthCheckReference": { + "description": "A full or valid partial URL to a health check. For example, the following are valid URLs: \n- https://www.googleapis.com/compute/beta/projects/project-id/global/httpHealthChecks/health-check \n- projects/project-id/global/httpHealthChecks/health-check \n- global/httpHealthChecks/health-check", + "id": "HealthCheckReference", + "properties": { + "healthCheck": { + "type": "string" + } + }, + "type": "object" + }, + "HealthStatus": { + "id": "HealthStatus", + "properties": { + "healthState": { + "description": "Health state of the instance.", + "enum": [ + "HEALTHY", + "UNHEALTHY" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "instance": { + "description": "URL of the instance resource.", + "type": "string" + }, + "ipAddress": { + "description": "The IP address represented by this resource.", + "type": "string" + }, + "port": { + "description": "The port on the instance.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "HostRule": { + "description": "UrlMaps A host-matching rule for a URL. If matched, will use the named PathMatcher to select the BackendService.", + "id": "HostRule", + "properties": { + "description": { + "description": "An optional description of this resource. Provide this property when you create the resource.", + "type": "string" + }, + "hosts": { + "description": "The list of host patterns to match. They must be valid hostnames, except * will match any string of ([a-z0-9-.]*). In that case, * must be the first character and must be followed in the pattern by either - or ..", + "items": { + "type": "string" + }, + "type": "array" + }, + "pathMatcher": { + "description": "The name of the PathMatcher to use to match the path portion of the URL if the hostRule matches the URL's host portion.", + "type": "string" + } + }, + "type": "object" + }, + "HttpHealthCheck": { + "description": "An HttpHealthCheck resource. This resource defines a template for how individual instances should be checked for health, via HTTP.", + "id": "HttpHealthCheck", + "properties": { + "checkIntervalSec": { + "description": "How often (in seconds) to send a health check. The default value is 5 seconds.", + "format": "int32", + "type": "integer" + }, + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "description": { + "description": "An optional description of this resource. Provide this property when you create the resource.", + "type": "string" + }, + "healthyThreshold": { + "description": "A so-far unhealthy instance will be marked healthy after this many consecutive successes. The default value is 2.", + "format": "int32", + "type": "integer" + }, + "host": { + "description": "The value of the host header in the HTTP health check request. If left empty (default value), the public IP on behalf of which this health check is performed will be used.", + "type": "string" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64", + "type": "string" + }, + "kind": { + "default": "compute#httpHealthCheck", + "description": "[Output Only] Type of the resource. Always compute#httpHealthCheck for HTTP health checks.", + "type": "string" + }, + "name": { + "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "port": { + "description": "The TCP port number for the HTTP health check request. The default value is 80.", + "format": "int32", + "type": "integer" + }, + "requestPath": { + "description": "The request path of the HTTP health check request. The default value is /.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + }, + "timeoutSec": { + "description": "How long (in seconds) to wait before claiming failure. The default value is 5 seconds. It is invalid for timeoutSec to have greater value than checkIntervalSec.", + "format": "int32", + "type": "integer" + }, + "unhealthyThreshold": { + "description": "A so-far healthy instance will be marked unhealthy after this many consecutive failures. The default value is 2.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "HttpHealthCheckList": { + "description": "Contains a list of HttpHealthCheck resources.", + "id": "HttpHealthCheckList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of HttpHealthCheck resources.", + "items": { + "$ref": "HttpHealthCheck" + }, + "type": "array" + }, + "kind": { + "default": "compute#httpHealthCheckList", + "description": "Type of resource.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "HttpsHealthCheck": { + "description": "An HttpsHealthCheck resource. This resource defines a template for how individual instances should be checked for health, via HTTPS.", + "id": "HttpsHealthCheck", + "properties": { + "checkIntervalSec": { + "description": "How often (in seconds) to send a health check. The default value is 5 seconds.", + "format": "int32", + "type": "integer" + }, + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "description": { + "description": "An optional description of this resource. Provide this property when you create the resource.", + "type": "string" + }, + "healthyThreshold": { + "description": "A so-far unhealthy instance will be marked healthy after this many consecutive successes. The default value is 2.", + "format": "int32", + "type": "integer" + }, + "host": { + "description": "The value of the host header in the HTTPS health check request. If left empty (default value), the public IP on behalf of which this health check is performed will be used.", + "type": "string" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64", + "type": "string" + }, + "kind": { + "default": "compute#httpsHealthCheck", + "description": "Type of the resource.", + "type": "string" + }, + "name": { + "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "port": { + "description": "The TCP port number for the HTTPS health check request. The default value is 443.", + "format": "int32", + "type": "integer" + }, + "requestPath": { + "description": "The request path of the HTTPS health check request. The default value is \"/\".", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + }, + "timeoutSec": { + "description": "How long (in seconds) to wait before claiming failure. The default value is 5 seconds. It is invalid for timeoutSec to have a greater value than checkIntervalSec.", + "format": "int32", + "type": "integer" + }, + "unhealthyThreshold": { + "description": "A so-far healthy instance will be marked unhealthy after this many consecutive failures. The default value is 2.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "HttpsHealthCheckList": { + "description": "Contains a list of HttpsHealthCheck resources.", + "id": "HttpsHealthCheckList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of HttpsHealthCheck resources.", + "items": { + "$ref": "HttpsHealthCheck" + }, + "type": "array" + }, + "kind": { + "default": "compute#httpsHealthCheckList", + "description": "Type of resource.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "Image": { + "description": "An Image resource. (== resource_for beta.images ==) (== resource_for v1.images ==)", + "id": "Image", + "properties": { + "archiveSizeBytes": { + "description": "Size of the image tar.gz archive stored in Google Cloud Storage (in bytes).", + "format": "int64", + "type": "string" + }, + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "deprecated": { + "$ref": "DeprecationStatus", + "description": "The deprecation status associated with this image." + }, + "description": { + "description": "An optional description of this resource. Provide this property when you create the resource.", + "type": "string" + }, + "diskSizeGb": { + "description": "Size of the image when restored onto a persistent disk (in GB).", + "format": "int64", + "type": "string" + }, + "family": { + "description": "The name of the image family to which this image belongs. You can create disks by specifying an image family instead of a specific image name. The image family always returns its latest image that is not deprecated. The name of the image family must comply with RFC1035.", + "type": "string" + }, + "guestOsFeatures": { + "description": "A list of features to enable on the guest operating system. Applicable only for bootable images. Read Enabling guest operating system features to see a list of available options.", + "items": { + "$ref": "GuestOsFeature" + }, + "type": "array" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64", + "type": "string" + }, + "imageEncryptionKey": { + "$ref": "CustomerEncryptionKey", + "description": "Encrypts the image using a customer-supplied encryption key.\n\nAfter you encrypt an image with a customer-supplied key, you must provide the same key if you use the image later (e.g. to create a disk from the image).\n\nCustomer-supplied encryption keys do not protect access to metadata of the disk.\n\nIf you do not provide an encryption key when creating the image, then the disk will be encrypted using an automatically generated key and you do not need to provide a key to use the image later." + }, + "kind": { + "default": "compute#image", + "description": "[Output Only] Type of the resource. Always compute#image for images.", + "type": "string" + }, + "labelFingerprint": { + "description": "A fingerprint for the labels being applied to this image, which is essentially a hash of the labels used for optimistic locking. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update labels. You must always provide an up-to-date fingerprint hash in order to update or change labels.\n\nTo see the latest fingerprint, make a get() request to retrieve an image.", + "format": "byte", + "type": "string" + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Labels to apply to this image. These can be later modified by the setLabels method.", + "type": "object" + }, + "licenseCodes": { + "description": "Integer license codes indicating which licenses are attached to this image.", + "items": { + "format": "int64", + "type": "string" + }, + "type": "array" + }, + "licenses": { + "description": "Any applicable license URI.", + "items": { + "type": "string" + }, + "type": "array" + }, + "name": { + "annotations": { + "required": [ + "compute.images.insert" + ] + }, + "description": "Name of the resource; provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "rawDisk": { + "description": "The parameters of the raw disk image.", + "properties": { + "containerType": { + "description": "The format used to encode and transmit the block device, which should be TAR. This is just a container and transmission format and not a runtime format. Provided by the client when the disk image is created.", + "enum": [ + "TAR" + ], + "enumDescriptions": [ + "" + ], + "type": "string" + }, + "sha1Checksum": { + "description": "An optional SHA1 checksum of the disk image before unpackaging; provided by the client when the disk image is created.", + "pattern": "[a-f0-9]{40}", + "type": "string" + }, + "source": { + "annotations": { + "required": [ + "compute.images.insert" + ] + }, + "description": "The full Google Cloud Storage URL where the disk image is stored. You must provide either this property or the sourceDisk property but not both.", + "type": "string" + } + }, + "type": "object" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + }, + "sourceDisk": { + "description": "URL of the source disk used to create this image. This can be a full or valid partial URL. You must provide either this property or the rawDisk.source property but not both to create an image. For example, the following are valid values: \n- https://www.googleapis.com/compute/v1/projects/project/zones/zone/disks/disk \n- projects/project/zones/zone/disks/disk \n- zones/zone/disks/disk", + "type": "string" + }, + "sourceDiskEncryptionKey": { + "$ref": "CustomerEncryptionKey", + "description": "The customer-supplied encryption key of the source disk. Required if the source disk is protected by a customer-supplied encryption key." + }, + "sourceDiskId": { + "description": "The ID value of the disk used to create this image. This value may be used to determine whether the image was taken from the current or a previous instance of a given disk name.", + "type": "string" + }, + "sourceImage": { + "description": "URL of the source image used to create this image. This can be a full or valid partial URL. You must provide exactly one of: \n- this property, or \n- the rawDisk.source property, or \n- the sourceDisk property in order to create an image.", + "type": "string" + }, + "sourceImageEncryptionKey": { + "$ref": "CustomerEncryptionKey", + "description": "The customer-supplied encryption key of the source image. Required if the source image is protected by a customer-supplied encryption key." + }, + "sourceImageId": { + "description": "[Output Only] The ID value of the image used to create this image. This value may be used to determine whether the image was taken from the current or a previous instance of a given image name.", + "type": "string" + }, + "sourceSnapshot": { + "description": "URL of the source snapshot used to create this image. This can be a full or valid partial URL. You must provide exactly one of: \n- this property, or \n- the sourceImage property, or \n- the rawDisk.source property, or \n- the sourceDisk property in order to create an image.", + "type": "string" + }, + "sourceSnapshotEncryptionKey": { + "$ref": "CustomerEncryptionKey", + "description": "The customer-supplied encryption key of the source snapshot. Required if the source snapshot is protected by a customer-supplied encryption key." + }, + "sourceSnapshotId": { + "description": "[Output Only] The ID value of the snapshot used to create this image. This value may be used to determine whether the snapshot was taken from the current or a previous instance of a given snapshot name.", + "type": "string" + }, + "sourceType": { + "default": "RAW", + "description": "The type of the image used to create this disk. The default and only value is RAW", + "enum": [ + "RAW" + ], + "enumDescriptions": [ + "" + ], + "type": "string" + }, + "status": { + "description": "[Output Only] The status of the image. An image can be used to create other resources, such as instances, only after the image has been successfully created and the status is set to READY. Possible values are FAILED, PENDING, or READY.", + "enum": [ + "FAILED", + "PENDING", + "READY" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "ImageList": { + "description": "Contains a list of images.", + "id": "ImageList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of Image resources.", + "items": { + "$ref": "Image" + }, + "type": "array" + }, + "kind": { + "default": "compute#imageList", + "description": "Type of resource.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "Instance": { + "description": "An Instance resource. (== resource_for beta.instances ==) (== resource_for v1.instances ==)", + "id": "Instance", + "properties": { + "canIpForward": { + "description": "Allows this instance to send and receive packets with non-matching destination or source IPs. This is required if you plan to use this instance to forward routes. For more information, see Enabling IP Forwarding.", + "type": "boolean" + }, + "cpuPlatform": { + "description": "[Output Only] The CPU platform used by this instance.", + "type": "string" + }, + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "deletionProtection": { + "description": "Whether the resource should be protected against deletion.", + "type": "boolean" + }, + "description": { + "description": "An optional description of this resource. Provide this property when you create the resource.", + "type": "string" + }, + "disks": { + "description": "Array of disks associated with this instance. Persistent disks must be created before you can assign them.", + "items": { + "$ref": "AttachedDisk" + }, + "type": "array" + }, + "guestAccelerators": { + "description": "List of the type and count of accelerator cards attached to the instance.", + "items": { + "$ref": "AcceleratorConfig" + }, + "type": "array" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64", + "type": "string" + }, + "kind": { + "default": "compute#instance", + "description": "[Output Only] Type of the resource. Always compute#instance for instances.", + "type": "string" + }, + "labelFingerprint": { + "description": "A fingerprint for this request, which is essentially a hash of the metadata's contents and used for optimistic locking. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update metadata. You must always provide an up-to-date fingerprint hash in order to update or change metadata.\n\nTo see the latest fingerprint, make get() request to the instance.", + "format": "byte", + "type": "string" + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Labels to apply to this instance. These can be later modified by the setLabels method.", + "type": "object" + }, + "machineType": { + "annotations": { + "required": [ + "compute.instances.insert" + ] + }, + "description": "Full or partial URL of the machine type resource to use for this instance, in the format: zones/zone/machineTypes/machine-type. This is provided by the client when the instance is created. For example, the following is a valid partial url to a predefined machine type:\nzones/us-central1-f/machineTypes/n1-standard-1\n\n\nTo create a custom machine type, provide a URL to a machine type in the following format, where CPUS is 1 or an even number up to 32 (2, 4, 6, ... 24, etc), and MEMORY is the total memory for this instance. Memory must be a multiple of 256 MB and must be supplied in MB (e.g. 5 GB of memory is 5120 MB):\nzones/zone/machineTypes/custom-CPUS-MEMORY\n\n\nFor example: zones/us-central1-f/machineTypes/custom-4-5120 \n\nFor a full list of restrictions, read the Specifications for custom machine types.", + "type": "string" + }, + "metadata": { + "$ref": "Metadata", + "description": "The metadata key/value pairs assigned to this instance. This includes custom metadata and predefined keys." + }, + "minCpuPlatform": { + "description": "Specifies a minimum CPU platform for the VM instance. Applicable values are the friendly names of CPU platforms, such as minCpuPlatform: \"Intel Haswell\" or minCpuPlatform: \"Intel Sandy Bridge\".", + "type": "string" + }, + "name": { + "annotations": { + "required": [ + "compute.instances.insert" + ] + }, + "description": "The name of the resource, provided by the client when initially creating the resource. The resource name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "networkInterfaces": { + "description": "An array of network configurations for this instance. These specify how interfaces are configured to interact with other network services, such as connecting to the internet. Multiple interfaces are supported per instance.", + "items": { + "$ref": "NetworkInterface" + }, + "type": "array" + }, + "scheduling": { + "$ref": "Scheduling", + "description": "Sets the scheduling options for this instance." + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "serviceAccounts": { + "description": "A list of service accounts, with their specified scopes, authorized for this instance. Only one service account per VM instance is supported.\n\nService accounts generate access tokens that can be accessed through the metadata server and used to authenticate applications on the instance. See Service Accounts for more information.", + "items": { + "$ref": "ServiceAccount" + }, + "type": "array" + }, + "startRestricted": { + "description": "[Output Only] Whether a VM has been restricted for start because Compute Engine has detected suspicious activity.", + "type": "boolean" + }, + "status": { + "description": "[Output Only] The status of the instance. One of the following values: PROVISIONING, STAGING, RUNNING, STOPPING, STOPPED, SUSPENDING, SUSPENDED, and TERMINATED.", + "enum": [ + "PROVISIONING", + "RUNNING", + "STAGING", + "STOPPED", + "STOPPING", + "SUSPENDED", + "SUSPENDING", + "TERMINATED" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "statusMessage": { + "description": "[Output Only] An optional, human-readable explanation of the status.", + "type": "string" + }, + "tags": { + "$ref": "Tags", + "description": "A list of tags to apply to this instance. Tags are used to identify valid sources or targets for network firewalls and are specified by the client during instance creation. The tags can be later modified by the setTags method. Each tag within the list must comply with RFC1035." + }, + "zone": { + "description": "[Output Only] URL of the zone where the instance resides. You must specify this field as part of the HTTP request URL. It is not settable as a field in the request body.", + "type": "string" + } + }, + "type": "object" + }, + "InstanceAggregatedList": { + "id": "InstanceAggregatedList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "additionalProperties": { + "$ref": "InstancesScopedList", + "description": "[Output Only] Name of the scope containing this set of instances." + }, + "description": "A list of InstancesScopedList resources.", + "type": "object" + }, + "kind": { + "default": "compute#instanceAggregatedList", + "description": "[Output Only] Type of resource. Always compute#instanceAggregatedList for aggregated lists of Instance resources.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "InstanceGroup": { + "description": "InstanceGroups (== resource_for beta.instanceGroups ==) (== resource_for v1.instanceGroups ==) (== resource_for beta.regionInstanceGroups ==) (== resource_for v1.regionInstanceGroups ==)", + "id": "InstanceGroup", + "properties": { + "creationTimestamp": { + "description": "[Output Only] The creation timestamp for this instance group in RFC3339 text format.", + "type": "string" + }, + "description": { + "description": "An optional description of this resource. Provide this property when you create the resource.", + "type": "string" + }, + "fingerprint": { + "description": "[Output Only] The fingerprint of the named ports. The system uses this fingerprint to detect conflicts when multiple users change the named ports concurrently.", + "format": "byte", + "type": "string" + }, + "id": { + "description": "[Output Only] A unique identifier for this instance group, generated by the server.", + "format": "uint64", + "type": "string" + }, + "kind": { + "default": "compute#instanceGroup", + "description": "[Output Only] The resource type, which is always compute#instanceGroup for instance groups.", + "type": "string" + }, + "name": { + "annotations": { + "required": [ + "compute.instanceGroupManagers.insert" + ] + }, + "description": "The name of the instance group. The name must be 1-63 characters long, and comply with RFC1035.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "namedPorts": { + "description": "Assigns a name to a port number. For example: {name: \"http\", port: 80}\n\nThis allows the system to reference ports by the assigned name instead of a port number. Named ports can also contain multiple ports. For example: [{name: \"http\", port: 80},{name: \"http\", port: 8080}] \n\nNamed ports apply to all instances in this instance group.", + "items": { + "$ref": "NamedPort" + }, + "type": "array" + }, + "network": { + "description": "The URL of the network to which all instances in the instance group belong.", + "type": "string" + }, + "region": { + "description": "The URL of the region where the instance group is located (for regional resources).", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] The URL for this instance group. The server generates this URL.", + "type": "string" + }, + "size": { + "description": "[Output Only] The total number of instances in the instance group.", + "format": "int32", + "type": "integer" + }, + "subnetwork": { + "description": "The URL of the subnetwork to which all instances in the instance group belong.", + "type": "string" + }, + "zone": { + "description": "[Output Only] The URL of the zone where the instance group is located (for zonal resources).", + "type": "string" + } + }, + "type": "object" + }, + "InstanceGroupAggregatedList": { + "id": "InstanceGroupAggregatedList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "additionalProperties": { + "$ref": "InstanceGroupsScopedList", + "description": "The name of the scope that contains this set of instance groups." + }, + "description": "A list of InstanceGroupsScopedList resources.", + "type": "object" + }, + "kind": { + "default": "compute#instanceGroupAggregatedList", + "description": "[Output Only] The resource type, which is always compute#instanceGroupAggregatedList for aggregated lists of instance groups.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "InstanceGroupList": { + "description": "A list of InstanceGroup resources.", + "id": "InstanceGroupList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of InstanceGroup resources.", + "items": { + "$ref": "InstanceGroup" + }, + "type": "array" + }, + "kind": { + "default": "compute#instanceGroupList", + "description": "[Output Only] The resource type, which is always compute#instanceGroupList for instance group lists.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "InstanceGroupManager": { + "description": "An Instance Group Manager resource. (== resource_for beta.instanceGroupManagers ==) (== resource_for v1.instanceGroupManagers ==) (== resource_for beta.regionInstanceGroupManagers ==) (== resource_for v1.regionInstanceGroupManagers ==)", + "id": "InstanceGroupManager", + "properties": { + "baseInstanceName": { + "annotations": { + "required": [ + "compute.instanceGroupManagers.insert" + ] + }, + "description": "The base instance name to use for instances in this group. The value must be 1-58 characters long. Instances are named by appending a hyphen and a random four-character string to the base instance name. The base instance name must comply with RFC1035.", + "pattern": "[a-z][-a-z0-9]{0,57}", + "type": "string" + }, + "creationTimestamp": { + "description": "[Output Only] The creation timestamp for this managed instance group in RFC3339 text format.", + "type": "string" + }, + "currentActions": { + "$ref": "InstanceGroupManagerActionsSummary", + "description": "[Output Only] The list of instance actions and the number of instances in this managed instance group that are scheduled for each of those actions." + }, + "description": { + "description": "An optional description of this resource. Provide this property when you create the resource.", + "type": "string" + }, + "fingerprint": { + "description": "[Output Only] The fingerprint of the resource data. You can use this optional field for optimistic locking when you update the resource.", + "format": "byte", + "type": "string" + }, + "id": { + "description": "[Output Only] A unique identifier for this resource type. The server generates this identifier.", + "format": "uint64", + "type": "string" + }, + "instanceGroup": { + "description": "[Output Only] The URL of the Instance Group resource.", + "type": "string" + }, + "instanceTemplate": { + "description": "The URL of the instance template that is specified for this managed instance group. The group uses this template to create all new instances in the managed instance group.", + "type": "string" + }, + "kind": { + "default": "compute#instanceGroupManager", + "description": "[Output Only] The resource type, which is always compute#instanceGroupManager for managed instance groups.", + "type": "string" + }, + "name": { + "annotations": { + "required": [ + "compute.instanceGroupManagers.insert", + "compute.regionInstanceGroupManagers.insert" + ] + }, + "description": "The name of the managed instance group. The name must be 1-63 characters long, and comply with RFC1035.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "namedPorts": { + "description": "Named ports configured for the Instance Groups complementary to this Instance Group Manager.", + "items": { + "$ref": "NamedPort" + }, + "type": "array" + }, + "region": { + "description": "[Output Only] The URL of the region where the managed instance group resides (for regional resources).", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] The URL for this managed instance group. The server defines this URL.", + "type": "string" + }, + "targetPools": { + "description": "The URLs for all TargetPool resources to which instances in the instanceGroup field are added. The target pools automatically apply to all of the instances in the managed instance group.", + "items": { + "type": "string" + }, + "type": "array" + }, + "targetSize": { + "annotations": { + "required": [ + "compute.instanceGroupManagers.insert", + "compute.regionInstanceGroupManagers.insert" + ] + }, + "description": "The target number of running instances for this managed instance group. Deleting or abandoning instances reduces this number. Resizing the group changes this number.", + "format": "int32", + "type": "integer" + }, + "zone": { + "description": "[Output Only] The URL of the zone where the managed instance group is located (for zonal resources).", + "type": "string" + } + }, + "type": "object" + }, + "InstanceGroupManagerActionsSummary": { + "id": "InstanceGroupManagerActionsSummary", + "properties": { + "abandoning": { + "description": "[Output Only] The total number of instances in the managed instance group that are scheduled to be abandoned. Abandoning an instance removes it from the managed instance group without deleting it.", + "format": "int32", + "type": "integer" + }, + "creating": { + "description": "[Output Only] The number of instances in the managed instance group that are scheduled to be created or are currently being created. If the group fails to create any of these instances, it tries again until it creates the instance successfully.\n\nIf you have disabled creation retries, this field will not be populated; instead, the creatingWithoutRetries field will be populated.", + "format": "int32", + "type": "integer" + }, + "creatingWithoutRetries": { + "description": "[Output Only] The number of instances that the managed instance group will attempt to create. The group attempts to create each instance only once. If the group fails to create any of these instances, it decreases the group's targetSize value accordingly.", + "format": "int32", + "type": "integer" + }, + "deleting": { + "description": "[Output Only] The number of instances in the managed instance group that are scheduled to be deleted or are currently being deleted.", + "format": "int32", + "type": "integer" + }, + "none": { + "description": "[Output Only] The number of instances in the managed instance group that are running and have no scheduled actions.", + "format": "int32", + "type": "integer" + }, + "recreating": { + "description": "[Output Only] The number of instances in the managed instance group that are scheduled to be recreated or are currently being being recreated. Recreating an instance deletes the existing root persistent disk and creates a new disk from the image that is defined in the instance template.", + "format": "int32", + "type": "integer" + }, + "refreshing": { + "description": "[Output Only] The number of instances in the managed instance group that are being reconfigured with properties that do not require a restart or a recreate action. For example, setting or removing target pools for the instance.", + "format": "int32", + "type": "integer" + }, + "restarting": { + "description": "[Output Only] The number of instances in the managed instance group that are scheduled to be restarted or are currently being restarted.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "InstanceGroupManagerAggregatedList": { + "id": "InstanceGroupManagerAggregatedList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "additionalProperties": { + "$ref": "InstanceGroupManagersScopedList", + "description": "[Output Only] The name of the scope that contains this set of managed instance groups." + }, + "description": "A list of InstanceGroupManagersScopedList resources.", + "type": "object" + }, + "kind": { + "default": "compute#instanceGroupManagerAggregatedList", + "description": "[Output Only] The resource type, which is always compute#instanceGroupManagerAggregatedList for an aggregated list of managed instance groups.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "InstanceGroupManagerList": { + "description": "[Output Only] A list of managed instance groups.", + "id": "InstanceGroupManagerList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of InstanceGroupManager resources.", + "items": { + "$ref": "InstanceGroupManager" + }, + "type": "array" + }, + "kind": { + "default": "compute#instanceGroupManagerList", + "description": "[Output Only] The resource type, which is always compute#instanceGroupManagerList for a list of managed instance groups.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "InstanceGroupManagersAbandonInstancesRequest": { + "id": "InstanceGroupManagersAbandonInstancesRequest", + "properties": { + "instances": { + "description": "The URLs of one or more instances to abandon. This can be a full URL or a partial URL, such as zones/[ZONE]/instances/[INSTANCE_NAME].", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "InstanceGroupManagersDeleteInstancesRequest": { + "id": "InstanceGroupManagersDeleteInstancesRequest", + "properties": { + "instances": { + "description": "The URLs of one or more instances to delete. This can be a full URL or a partial URL, such as zones/[ZONE]/instances/[INSTANCE_NAME].", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "InstanceGroupManagersListManagedInstancesResponse": { + "id": "InstanceGroupManagersListManagedInstancesResponse", + "properties": { + "managedInstances": { + "description": "[Output Only] The list of instances in the managed instance group.", + "items": { + "$ref": "ManagedInstance" + }, + "type": "array" + } + }, + "type": "object" + }, + "InstanceGroupManagersRecreateInstancesRequest": { + "id": "InstanceGroupManagersRecreateInstancesRequest", + "properties": { + "instances": { + "description": "The URLs of one or more instances to recreate. This can be a full URL or a partial URL, such as zones/[ZONE]/instances/[INSTANCE_NAME].", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "InstanceGroupManagersScopedList": { + "id": "InstanceGroupManagersScopedList", + "properties": { + "instanceGroupManagers": { + "description": "[Output Only] The list of managed instance groups that are contained in the specified project and zone.", + "items": { + "$ref": "InstanceGroupManager" + }, + "type": "array" + }, + "warning": { + "description": "[Output Only] The warning that replaces the list of managed instance groups when the list is empty.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "InstanceGroupManagersSetInstanceTemplateRequest": { + "id": "InstanceGroupManagersSetInstanceTemplateRequest", + "properties": { + "instanceTemplate": { + "description": "The URL of the instance template that is specified for this managed instance group. The group uses this template to create all new instances in the managed instance group.", + "type": "string" + } + }, + "type": "object" + }, + "InstanceGroupManagersSetTargetPoolsRequest": { + "id": "InstanceGroupManagersSetTargetPoolsRequest", + "properties": { + "fingerprint": { + "description": "The fingerprint of the target pools information. Use this optional property to prevent conflicts when multiple users change the target pools settings concurrently. Obtain the fingerprint with the instanceGroupManagers.get method. Then, include the fingerprint in your request to ensure that you do not overwrite changes that were applied from another concurrent request.", + "format": "byte", + "type": "string" + }, + "targetPools": { + "description": "The list of target pool URLs that instances in this managed instance group belong to. The managed instance group applies these target pools to all of the instances in the group. Existing instances and new instances in the group all receive these target pool settings.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "InstanceGroupsAddInstancesRequest": { + "id": "InstanceGroupsAddInstancesRequest", + "properties": { + "instances": { + "description": "The list of instances to add to the instance group.", + "items": { + "$ref": "InstanceReference" + }, + "type": "array" + } + }, + "type": "object" + }, + "InstanceGroupsListInstances": { + "id": "InstanceGroupsListInstances", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of InstanceWithNamedPorts resources.", + "items": { + "$ref": "InstanceWithNamedPorts" + }, + "type": "array" + }, + "kind": { + "default": "compute#instanceGroupsListInstances", + "description": "[Output Only] The resource type, which is always compute#instanceGroupsListInstances for the list of instances in the specified instance group.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "InstanceGroupsListInstancesRequest": { + "id": "InstanceGroupsListInstancesRequest", + "properties": { + "instanceState": { + "description": "A filter for the state of the instances in the instance group. Valid options are ALL or RUNNING. If you do not specify this parameter the list includes all instances regardless of their state.", + "enum": [ + "ALL", + "RUNNING" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "InstanceGroupsRemoveInstancesRequest": { + "id": "InstanceGroupsRemoveInstancesRequest", + "properties": { + "instances": { + "description": "The list of instances to remove from the instance group.", + "items": { + "$ref": "InstanceReference" + }, + "type": "array" + } + }, + "type": "object" + }, + "InstanceGroupsScopedList": { + "id": "InstanceGroupsScopedList", + "properties": { + "instanceGroups": { + "description": "[Output Only] The list of instance groups that are contained in this scope.", + "items": { + "$ref": "InstanceGroup" + }, + "type": "array" + }, + "warning": { + "description": "[Output Only] An informational warning that replaces the list of instance groups when the list is empty.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "InstanceGroupsSetNamedPortsRequest": { + "id": "InstanceGroupsSetNamedPortsRequest", + "properties": { + "fingerprint": { + "description": "The fingerprint of the named ports information for this instance group. Use this optional property to prevent conflicts when multiple users change the named ports settings concurrently. Obtain the fingerprint with the instanceGroups.get method. Then, include the fingerprint in your request to ensure that you do not overwrite changes that were applied from another concurrent request.", + "format": "byte", + "type": "string" + }, + "namedPorts": { + "description": "The list of named ports to set for this instance group.", + "items": { + "$ref": "NamedPort" + }, + "type": "array" + } + }, + "type": "object" + }, + "InstanceList": { + "description": "Contains a list of instances.", + "id": "InstanceList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of Instance resources.", + "items": { + "$ref": "Instance" + }, + "type": "array" + }, + "kind": { + "default": "compute#instanceList", + "description": "[Output Only] Type of resource. Always compute#instanceList for lists of Instance resources.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "InstanceListReferrers": { + "description": "Contains a list of instance referrers.", + "id": "InstanceListReferrers", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of Reference resources.", + "items": { + "$ref": "Reference" + }, + "type": "array" + }, + "kind": { + "default": "compute#instanceListReferrers", + "description": "[Output Only] Type of resource. Always compute#instanceListReferrers for lists of Instance referrers.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "InstanceMoveRequest": { + "id": "InstanceMoveRequest", + "properties": { + "destinationZone": { + "description": "The URL of the destination zone to move the instance. This can be a full or partial URL. For example, the following are all valid URLs to a zone: \n- https://www.googleapis.com/compute/v1/projects/project/zones/zone \n- projects/project/zones/zone \n- zones/zone", + "type": "string" + }, + "targetInstance": { + "description": "The URL of the target instance to move. This can be a full or partial URL. For example, the following are all valid URLs to an instance: \n- https://www.googleapis.com/compute/v1/projects/project/zones/zone/instances/instance \n- projects/project/zones/zone/instances/instance \n- zones/zone/instances/instance", + "type": "string" + } + }, + "type": "object" + }, + "InstanceProperties": { + "description": "", + "id": "InstanceProperties", + "properties": { + "canIpForward": { + "description": "Enables instances created based on this template to send packets with source IP addresses other than their own and receive packets with destination IP addresses other than their own. If these instances will be used as an IP gateway or it will be set as the next-hop in a Route resource, specify true. If unsure, leave this set to false. See the Enable IP forwarding documentation for more information.", + "type": "boolean" + }, + "description": { + "description": "An optional text description for the instances that are created from this instance template.", + "type": "string" + }, + "disks": { + "description": "An array of disks that are associated with the instances that are created from this template.", + "items": { + "$ref": "AttachedDisk" + }, + "type": "array" + }, + "guestAccelerators": { + "description": "A list of guest accelerator cards' type and count to use for instances created from the instance template.", + "items": { + "$ref": "AcceleratorConfig" + }, + "type": "array" + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Labels to apply to instances that are created from this template.", + "type": "object" + }, + "machineType": { + "annotations": { + "required": [ + "compute.instanceTemplates.insert" + ] + }, + "description": "The machine type to use for instances that are created from this template.", + "type": "string" + }, + "metadata": { + "$ref": "Metadata", + "description": "The metadata key/value pairs to assign to instances that are created from this template. These pairs can consist of custom metadata or predefined keys. See Project and instance metadata for more information." + }, + "minCpuPlatform": { + "description": "Minimum cpu/platform to be used by this instance. The instance may be scheduled on the specified or newer cpu/platform. Applicable values are the friendly names of CPU platforms, such as minCpuPlatform: \"Intel Haswell\" or minCpuPlatform: \"Intel Sandy Bridge\". For more information, read Specifying a Minimum CPU Platform.", + "type": "string" + }, + "networkInterfaces": { + "description": "An array of network access configurations for this interface.", + "items": { + "$ref": "NetworkInterface" + }, + "type": "array" + }, + "scheduling": { + "$ref": "Scheduling", + "description": "Specifies the scheduling options for the instances that are created from this template." + }, + "serviceAccounts": { + "description": "A list of service accounts with specified scopes. Access tokens for these service accounts are available to the instances that are created from this template. Use metadata queries to obtain the access tokens for these instances.", + "items": { + "$ref": "ServiceAccount" + }, + "type": "array" + }, + "tags": { + "$ref": "Tags", + "description": "A list of tags to apply to the instances that are created from this template. The tags identify valid sources or targets for network firewalls. The setTags method can modify this list of tags. Each tag within the list must comply with RFC1035." + } + }, + "type": "object" + }, + "InstanceReference": { + "id": "InstanceReference", + "properties": { + "instance": { + "description": "The URL for a specific instance.", + "type": "string" + } + }, + "type": "object" + }, + "InstanceTemplate": { + "description": "An Instance Template resource. (== resource_for beta.instanceTemplates ==) (== resource_for v1.instanceTemplates ==)", + "id": "InstanceTemplate", + "properties": { + "creationTimestamp": { + "description": "[Output Only] The creation timestamp for this instance template in RFC3339 text format.", + "type": "string" + }, + "description": { + "description": "An optional description of this resource. Provide this property when you create the resource.", + "type": "string" + }, + "id": { + "description": "[Output Only] A unique identifier for this instance template. The server defines this identifier.", + "format": "uint64", + "type": "string" + }, + "kind": { + "default": "compute#instanceTemplate", + "description": "[Output Only] The resource type, which is always compute#instanceTemplate for instance templates.", + "type": "string" + }, + "name": { + "annotations": { + "required": [ + "compute.instanceTemplates.insert" + ] + }, + "description": "Name of the resource; provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } + "$ref": "InstanceProperties", + "description": "The instance properties for this instance template." + }, + "selfLink": { + "description": "[Output Only] The URL for this instance template. The server defines this URL.", + "type": "string" } - } }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "Router": { - "id": "Router", - "type": "object", - "description": "Router resource.", - "properties": { - "bgp": { - "$ref": "RouterBgp", - "description": "BGP information specific to this router." + "type": "object" }, - "bgpPeers": { - "type": "array", - "description": "BGP information that needs to be configured into the routing stack to establish the BGP peering. It must specify peer ASN and either interface name, IP, or peer IP. Please refer to RFC4273.", - "items": { - "$ref": "RouterBgpPeer" - } - }, - "creationTimestamp": { - "type": "string", - "description": "[Output Only] Creation timestamp in RFC3339 text format." - }, - "description": { - "type": "string", - "description": "An optional description of this resource. Provide this property when you create the resource." - }, - "id": { - "type": "string", - "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", - "format": "uint64" - }, - "interfaces": { - "type": "array", - "description": "Router interfaces. Each interface requires either one linked resource (e.g. linkedVpnTunnel), or IP address and IP address range (e.g. ipRange), or both.", - "items": { - "$ref": "RouterInterface" - } - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#router for routers.", - "default": "compute#router" - }, - "name": { - "type": "string", - "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "annotations": { - "required": [ - "compute.routers.insert" - ] - } - }, - "network": { - "type": "string", - "description": "URI of the network to which this router belongs.", - "annotations": { - "required": [ - "compute.routers.insert" - ] - } - }, - "region": { - "type": "string", - "description": "[Output Only] URI of the region where the router resides." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for the resource." - } - } - }, - "RouterAggregatedList": { - "id": "RouterAggregatedList", - "type": "object", - "description": "Contains a list of routers.", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "object", - "description": "A list of Router resources.", - "additionalProperties": { - "$ref": "RoutersScopedList", - "description": "Name of the scope containing this set of routers." - } - }, - "kind": { - "type": "string", - "description": "Type of resource.", - "default": "compute#routerAggregatedList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } + "InstanceTemplateList": { + "description": "A list of instance templates.", + "id": "InstanceTemplateList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of InstanceTemplate resources.", + "items": { + "$ref": "InstanceTemplate" + }, + "type": "array" + }, + "kind": { + "default": "compute#instanceTemplateList", + "description": "[Output Only] The resource type, which is always compute#instanceTemplatesListResponse for instance template lists.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" } - } }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "RouterBgp": { - "id": "RouterBgp", - "type": "object", - "properties": { - "asn": { - "type": "integer", - "description": "Local BGP Autonomous System Number (ASN). Must be an RFC6996 private ASN, either 16-bit or 32-bit. The value will be fixed for this router resource. All VPN tunnels that link to this router will have the same local ASN.", - "format": "uint32" - } - } - }, - "RouterBgpPeer": { - "id": "RouterBgpPeer", - "type": "object", - "properties": { - "advertisedRoutePriority": { - "type": "integer", - "description": "The priority of routes advertised to this BGP peer. In the case where there is more than one matching route of maximum length, the routes with lowest priority value win.", - "format": "uint32" + "type": "object" }, - "interfaceName": { - "type": "string", - "description": "Name of the interface the BGP peer is associated with." - }, - "ipAddress": { - "type": "string", - "description": "IP address of the interface inside Google Cloud Platform. Only IPv4 is supported." - }, - "name": { - "type": "string", - "description": "Name of this BGP peer. The name must be 1-63 characters long and comply with RFC1035.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" - }, - "peerAsn": { - "type": "integer", - "description": "Peer BGP Autonomous System Number (ASN). For VPN use case, this value can be different for every tunnel.", - "format": "uint32" - }, - "peerIpAddress": { - "type": "string", - "description": "IP address of the BGP interface outside Google cloud. Only IPv4 is supported." - } - } - }, - "RouterInterface": { - "id": "RouterInterface", - "type": "object", - "properties": { - "ipRange": { - "type": "string", - "description": "IP address and range of the interface. The IP range must be in the RFC3927 link-local IP space. The value must be a CIDR-formatted string, for example: 169.254.0.1/30. NOTE: Do not truncate the address as it represents the IP address of the interface." - }, - "linkedInterconnectAttachment": { - "type": "string", - "description": "URI of the linked interconnect attachment. It must be in the same region as the router. Each interface can have at most one linked resource and it could either be a VPN Tunnel or an interconnect attachment." - }, - "linkedVpnTunnel": { - "type": "string", - "description": "URI of the linked VPN tunnel. It must be in the same region as the router. Each interface can have at most one linked resource and it could either be a VPN Tunnel or an interconnect attachment." - }, - "name": { - "type": "string", - "description": "Name of this interface entry. The name must be 1-63 characters long and comply with RFC1035.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" - } - } - }, - "RouterList": { - "id": "RouterList", - "type": "object", - "description": "Contains a list of Router resources.", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "array", - "description": "A list of Router resources.", - "items": { - "$ref": "Router" - } - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#router for routers.", - "default": "compute#routerList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } + "InstanceWithNamedPorts": { + "id": "InstanceWithNamedPorts", + "properties": { + "instance": { + "description": "[Output Only] The URL of the instance.", + "type": "string" + }, + "namedPorts": { + "description": "[Output Only] The named ports that belong to this instance group.", + "items": { + "$ref": "NamedPort" + }, + "type": "array" + }, + "status": { + "description": "[Output Only] The status of the instance.", + "enum": [ + "PROVISIONING", + "RUNNING", + "STAGING", + "STOPPED", + "STOPPING", + "SUSPENDED", + "SUSPENDING", + "TERMINATED" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" } - } }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "RouterStatus": { - "id": "RouterStatus", - "type": "object", - "properties": { - "bestRoutes": { - "type": "array", - "description": "Best routes for this router's network.", - "items": { - "$ref": "Route" - } + "type": "object" }, - "bestRoutesForRouter": { - "type": "array", - "description": "Best routes learned by this router.", - "items": { - "$ref": "Route" - } - }, - "bgpPeerStatus": { - "type": "array", - "items": { - "$ref": "RouterStatusBgpPeerStatus" - } - }, - "network": { - "type": "string", - "description": "URI of the network to which this router belongs." - } - } - }, - "RouterStatusBgpPeerStatus": { - "id": "RouterStatusBgpPeerStatus", - "type": "object", - "properties": { - "advertisedRoutes": { - "type": "array", - "description": "Routes that were advertised to the remote BGP peer", - "items": { - "$ref": "Route" - } - }, - "ipAddress": { - "type": "string", - "description": "IP address of the local BGP interface." - }, - "linkedVpnTunnel": { - "type": "string", - "description": "URL of the VPN tunnel that this BGP peer controls." - }, - "name": { - "type": "string", - "description": "Name of this BGP peer. Unique within the Routers resource." - }, - "numLearnedRoutes": { - "type": "integer", - "description": "Number of routes learned from the remote BGP Peer.", - "format": "uint32" - }, - "peerIpAddress": { - "type": "string", - "description": "IP address of the remote BGP interface." - }, - "state": { - "type": "string", - "description": "BGP state as specified in RFC1771." - }, - "status": { - "type": "string", - "description": "Status of the BGP peer: {UP, DOWN}", - "enum": [ - "DOWN", - "UNKNOWN", - "UP" - ], - "enumDescriptions": [ - "", - "", - "" - ] - }, - "uptime": { - "type": "string", - "description": "Time this session has been up. Format: 14 years, 51 weeks, 6 days, 23 hours, 59 minutes, 59 seconds" - }, - "uptimeSeconds": { - "type": "string", - "description": "Time this session has been up, in seconds. Format: 145" - } - } - }, - "RouterStatusResponse": { - "id": "RouterStatusResponse", - "type": "object", - "properties": { - "kind": { - "type": "string", - "description": "Type of resource.", - "default": "compute#routerStatusResponse" - }, - "result": { - "$ref": "RouterStatus" - } - } - }, - "RoutersPreviewResponse": { - "id": "RoutersPreviewResponse", - "type": "object", - "properties": { - "resource": { - "$ref": "Router", - "description": "Preview of given router." - } - } - }, - "RoutersScopedList": { - "id": "RoutersScopedList", - "type": "object", - "properties": { - "routers": { - "type": "array", - "description": "List of routers contained in this scope.", - "items": { - "$ref": "Router" - } - }, - "warning": { - "type": "object", - "description": "Informational warning which replaces the list of routers when the list is empty.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } + "InstancesScopedList": { + "id": "InstancesScopedList", + "properties": { + "instances": { + "description": "[Output Only] List of instances contained in this scope.", + "items": { + "$ref": "Instance" + }, + "type": "array" + }, + "warning": { + "description": "[Output Only] Informational warning which replaces the list of instances when the list is empty.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" } - } }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "SSLHealthCheck": { - "id": "SSLHealthCheck", - "type": "object", - "properties": { - "port": { - "type": "integer", - "description": "The TCP port number for the health check request. The default value is 443. Valid values are 1 through 65535.", - "format": "int32" + "type": "object" }, - "portName": { - "type": "string", - "description": "Port name as defined in InstanceGroup#NamedPort#name. If both port and port_name are defined, port takes precedence." - }, - "proxyHeader": { - "type": "string", - "description": "Specifies the type of proxy header to append before sending data to the backend, either NONE or PROXY_V1. The default is NONE.", - "enum": [ - "NONE", - "PROXY_V1" - ], - "enumDescriptions": [ - "", - "" - ] - }, - "request": { - "type": "string", - "description": "The application data to send once the SSL connection has been established (default value is empty). If both request and response are empty, the connection establishment alone will indicate health. The request data can only be ASCII." - }, - "response": { - "type": "string", - "description": "The bytes to match against the beginning of the response data. If left empty (the default value), any response will indicate health. The response data can only be ASCII." - } - } - }, - "Scheduling": { - "id": "Scheduling", - "type": "object", - "description": "Sets the scheduling options for an Instance.", - "properties": { - "automaticRestart": { - "type": "boolean", - "description": "Specifies whether the instance should be automatically restarted if it is terminated by Compute Engine (not terminated by a user). You can only set the automatic restart option for standard instances. Preemptible instances cannot be automatically restarted.\n\nBy default, this is set to true so an instance is automatically restarted if it is terminated by Compute Engine." - }, - "onHostMaintenance": { - "type": "string", - "description": "Defines the maintenance behavior for this instance. For standard instances, the default behavior is MIGRATE. For preemptible instances, the default and only possible behavior is TERMINATE. For more information, see Setting Instance Scheduling Options.", - "enum": [ - "MIGRATE", - "TERMINATE" - ], - "enumDescriptions": [ - "", - "" - ] - }, - "preemptible": { - "type": "boolean", - "description": "Defines whether the instance is preemptible. This can only be set during instance creation, it cannot be set or changed after the instance has been created." - } - } - }, - "SerialPortOutput": { - "id": "SerialPortOutput", - "type": "object", - "description": "An instance's serial console output.", - "properties": { - "contents": { - "type": "string", - "description": "[Output Only] The contents of the console output." - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of the resource. Always compute#serialPortOutput for serial port output.", - "default": "compute#serialPortOutput" - }, - "next": { - "type": "string", - "description": "[Output Only] The position of the next byte of content from the serial console output. Use this value in the next request as the start parameter.", - "format": "int64" - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "start": { - "type": "string", - "description": "The starting byte position of the output that was returned. This should match the start parameter sent with the request. If the serial console output exceeds the size of the buffer, older output will be overwritten by newer content and the start values will be mismatched.", - "format": "int64" - } - } - }, - "ServiceAccount": { - "id": "ServiceAccount", - "type": "object", - "description": "A service account.", - "properties": { - "email": { - "type": "string", - "description": "Email address of the service account." - }, - "scopes": { - "type": "array", - "description": "The list of scopes to be made available for this service account.", - "items": { - "type": "string" - } - } - } - }, - "Snapshot": { - "id": "Snapshot", - "type": "object", - "description": "A persistent disk snapshot resource. (== resource_for beta.snapshots ==) (== resource_for v1.snapshots ==)", - "properties": { - "creationTimestamp": { - "type": "string", - "description": "[Output Only] Creation timestamp in RFC3339 text format." - }, - "description": { - "type": "string", - "description": "An optional description of this resource. Provide this property when you create the resource." - }, - "diskSizeGb": { - "type": "string", - "description": "[Output Only] Size of the snapshot, specified in GB.", - "format": "int64" - }, - "id": { - "type": "string", - "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", - "format": "uint64" - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of the resource. Always compute#snapshot for Snapshot resources.", - "default": "compute#snapshot" - }, - "labelFingerprint": { - "type": "string", - "description": "A fingerprint for the labels being applied to this snapshot, which is essentially a hash of the labels set used for optimistic locking. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update labels. You must always provide an up-to-date fingerprint hash in order to update or change labels.\n\nTo see the latest fingerprint, make a get() request to retrieve a snapshot.", - "format": "byte" - }, - "labels": { - "type": "object", - "description": "Labels to apply to this snapshot. These can be later modified by the setLabels method. Label values may be empty.", - "additionalProperties": { - "type": "string" - } - }, - "licenses": { - "type": "array", - "description": "[Output Only] A list of public visible licenses that apply to this snapshot. This can be because the original image had licenses attached (such as a Windows image).", - "items": { - "type": "string" - } - }, - "name": { - "type": "string", - "description": "Name of the resource; provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for the resource." - }, - "snapshotEncryptionKey": { - "$ref": "CustomerEncryptionKey", - "description": "Encrypts the snapshot using a customer-supplied encryption key.\n\nAfter you encrypt a snapshot using a customer-supplied key, you must provide the same key if you use the image later For example, you must provide the encryption key when you create a disk from the encrypted snapshot in a future request.\n\nCustomer-supplied encryption keys do not protect access to metadata of the disk.\n\nIf you do not provide an encryption key when creating the snapshot, then the snapshot will be encrypted using an automatically generated key and you do not need to provide a key to use the snapshot later." - }, - "sourceDisk": { - "type": "string", - "description": "[Output Only] The source disk used to create this snapshot." - }, - "sourceDiskEncryptionKey": { - "$ref": "CustomerEncryptionKey", - "description": "The customer-supplied encryption key of the source disk. Required if the source disk is protected by a customer-supplied encryption key." - }, - "sourceDiskId": { - "type": "string", - "description": "[Output Only] The ID value of the disk used to create this snapshot. This value may be used to determine whether the snapshot was taken from the current or a previous instance of a given disk name." - }, - "status": { - "type": "string", - "description": "[Output Only] The status of the snapshot. This can be CREATING, DELETING, FAILED, READY, or UPLOADING.", - "enum": [ - "CREATING", - "DELETING", - "FAILED", - "READY", - "UPLOADING" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "" - ] - }, - "storageBytes": { - "type": "string", - "description": "[Output Only] A size of the storage used by the snapshot. As snapshots share storage, this number is expected to change with snapshot creation/deletion.", - "format": "int64" - }, - "storageBytesStatus": { - "type": "string", - "description": "[Output Only] An indicator whether storageBytes is in a stable state or it is being adjusted as a result of shared storage reallocation. This status can either be UPDATING, meaning the size of the snapshot is being updated, or UP_TO_DATE, meaning the size of the snapshot is up-to-date.", - "enum": [ - "UPDATING", - "UP_TO_DATE" - ], - "enumDescriptions": [ - "", - "" - ] - } - } - }, - "SnapshotList": { - "id": "SnapshotList", - "type": "object", - "description": "Contains a list of Snapshot resources.", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "array", - "description": "A list of Snapshot resources.", - "items": { - "$ref": "Snapshot" - } - }, - "kind": { - "type": "string", - "description": "Type of resource.", - "default": "compute#snapshotList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } + "InstancesSetLabelsRequest": { + "id": "InstancesSetLabelsRequest", + "properties": { + "labelFingerprint": { + "description": "Fingerprint of the previous set of labels for this resource, used to prevent conflicts. Provide the latest fingerprint value when making a request to add or change labels.", + "format": "byte", + "type": "string" + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "type": "object" } - } }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "SslCertificate": { - "id": "SslCertificate", - "type": "object", - "description": "An SslCertificate resource. This resource provides a mechanism to upload an SSL key and certificate to the load balancer to serve secure connections from the user. (== resource_for beta.sslCertificates ==) (== resource_for v1.sslCertificates ==)", - "properties": { - "certificate": { - "type": "string", - "description": "A local certificate file. The certificate must be in PEM format. The certificate chain must be no greater than 5 certs long. The chain must include at least one intermediate cert." + "type": "object" }, - "creationTimestamp": { - "type": "string", - "description": "[Output Only] Creation timestamp in RFC3339 text format." - }, - "description": { - "type": "string", - "description": "An optional description of this resource. Provide this property when you create the resource." - }, - "id": { - "type": "string", - "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", - "format": "uint64" - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of the resource. Always compute#sslCertificate for SSL certificates.", - "default": "compute#sslCertificate" - }, - "name": { - "type": "string", - "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" - }, - "privateKey": { - "type": "string", - "description": "A write-only private key in PEM format. Only insert requests will include this field." - }, - "selfLink": { - "type": "string", - "description": "[Output only] Server-defined URL for the resource." - } - } - }, - "SslCertificateList": { - "id": "SslCertificateList", - "type": "object", - "description": "Contains a list of SslCertificate resources.", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "array", - "description": "A list of SslCertificate resources.", - "items": { - "$ref": "SslCertificate" - } - }, - "kind": { - "type": "string", - "description": "Type of resource.", - "default": "compute#sslCertificateList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } + "InstancesSetMachineResourcesRequest": { + "id": "InstancesSetMachineResourcesRequest", + "properties": { + "guestAccelerators": { + "description": "List of the type and count of accelerator cards attached to the instance.", + "items": { + "$ref": "AcceleratorConfig" + }, + "type": "array" } - } }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "Subnetwork": { - "id": "Subnetwork", - "type": "object", - "description": "A Subnetwork resource. (== resource_for beta.subnetworks ==) (== resource_for v1.subnetworks ==)", - "properties": { - "creationTimestamp": { - "type": "string", - "description": "[Output Only] Creation timestamp in RFC3339 text format." + "type": "object" }, - "description": { - "type": "string", - "description": "An optional description of this resource. Provide this property when you create the resource. This field can be set only at resource creation time." - }, - "gatewayAddress": { - "type": "string", - "description": "[Output Only] The gateway address for default routes to reach destination addresses outside this subnetwork. This field can be set only at resource creation time." - }, - "id": { - "type": "string", - "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", - "format": "uint64" - }, - "ipCidrRange": { - "type": "string", - "description": "The range of internal addresses that are owned by this subnetwork. Provide this property when you create the subnetwork. For example, 10.0.0.0/8 or 192.168.0.0/16. Ranges must be unique and non-overlapping within a network. Only IPv4 is supported. This field can be set only at resource creation time." - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of the resource. Always compute#subnetwork for Subnetwork resources.", - "default": "compute#subnetwork" - }, - "name": { - "type": "string", - "description": "The name of the resource, provided by the client when initially creating the resource. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" - }, - "network": { - "type": "string", - "description": "The URL of the network to which this subnetwork belongs, provided by the client when initially creating the subnetwork. Only networks that are in the distributed mode can have subnetworks. This field can be set only at resource creation time." - }, - "privateIpGoogleAccess": { - "type": "boolean", - "description": "Whether the VMs in this subnet can access Google services without assigned external IP addresses. This field can be both set at resource creation time and updated using setPrivateIpGoogleAccess." - }, - "region": { - "type": "string", - "description": "URL of the region where the Subnetwork resides. This field can be set only at resource creation time." - }, - "secondaryIpRanges": { - "type": "array", - "description": "An array of configurations for secondary IP ranges for VM instances contained in this subnetwork. The primary IP of such VM must belong to the primary ipCidrRange of the subnetwork. The alias IPs may belong to either primary or secondary ranges.", - "items": { - "$ref": "SubnetworkSecondaryRange" - } - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for the resource." - } - } - }, - "SubnetworkAggregatedList": { - "id": "SubnetworkAggregatedList", - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "object", - "description": "A list of SubnetworksScopedList resources.", - "additionalProperties": { - "$ref": "SubnetworksScopedList", - "description": "Name of the scope containing this set of Subnetworks." - } - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#subnetworkAggregatedList for aggregated lists of subnetworks.", - "default": "compute#subnetworkAggregatedList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } + "InstancesSetMachineTypeRequest": { + "id": "InstancesSetMachineTypeRequest", + "properties": { + "machineType": { + "description": "Full or partial URL of the machine type resource. See Machine Types for a full list of machine types. For example: zones/us-central1-f/machineTypes/n1-standard-1", + "type": "string" } - } }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "SubnetworkList": { - "id": "SubnetworkList", - "type": "object", - "description": "Contains a list of Subnetwork resources.", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." + "type": "object" }, - "items": { - "type": "array", - "description": "A list of Subnetwork resources.", - "items": { - "$ref": "Subnetwork" - } - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#subnetworkList for lists of subnetworks.", - "default": "compute#subnetworkList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } + "InstancesSetMinCpuPlatformRequest": { + "id": "InstancesSetMinCpuPlatformRequest", + "properties": { + "minCpuPlatform": { + "description": "Minimum cpu/platform this instance should be started at.", + "type": "string" } - } }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "SubnetworkSecondaryRange": { - "id": "SubnetworkSecondaryRange", - "type": "object", - "description": "Represents a secondary IP range of a subnetwork.", - "properties": { - "ipCidrRange": { - "type": "string", - "description": "The range of IP addresses belonging to this subnetwork secondary range. Provide this property when you create the subnetwork. Ranges must be unique and non-overlapping with all primary and secondary IP ranges within a network. Only IPv4 is supported." + "type": "object" }, - "rangeName": { - "type": "string", - "description": "The name associated with this subnetwork secondary range, used when adding an alias IP range to a VM instance. The name must be 1-63 characters long, and comply with RFC1035. The name must be unique within the subnetwork." - } - } - }, - "SubnetworksExpandIpCidrRangeRequest": { - "id": "SubnetworksExpandIpCidrRangeRequest", - "type": "object", - "properties": { - "ipCidrRange": { - "type": "string", - "description": "The IP (in CIDR format or netmask) of internal addresses that are legal on this Subnetwork. This range should be disjoint from other subnetworks within this network. This range can only be larger than (i.e. a superset of) the range previously defined before the update." - } - } - }, - "SubnetworksScopedList": { - "id": "SubnetworksScopedList", - "type": "object", - "properties": { - "subnetworks": { - "type": "array", - "description": "List of subnetworks contained in this scope.", - "items": { - "$ref": "Subnetwork" - } - }, - "warning": { - "type": "object", - "description": "An informational warning that appears when the list of addresses is empty.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } + "InstancesSetServiceAccountRequest": { + "id": "InstancesSetServiceAccountRequest", + "properties": { + "email": { + "description": "Email address of the service account.", + "type": "string" + }, + "scopes": { + "description": "The list of scopes to be made available for this service account.", + "items": { + "type": "string" + }, + "type": "array" } - } }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "SubnetworksSetPrivateIpGoogleAccessRequest": { - "id": "SubnetworksSetPrivateIpGoogleAccessRequest", - "type": "object", - "properties": { - "privateIpGoogleAccess": { - "type": "boolean" - } - } - }, - "TCPHealthCheck": { - "id": "TCPHealthCheck", - "type": "object", - "properties": { - "port": { - "type": "integer", - "description": "The TCP port number for the health check request. The default value is 80. Valid values are 1 through 65535.", - "format": "int32" + "type": "object" }, - "portName": { - "type": "string", - "description": "Port name as defined in InstanceGroup#NamedPort#name. If both port and port_name are defined, port takes precedence." - }, - "proxyHeader": { - "type": "string", - "description": "Specifies the type of proxy header to append before sending data to the backend, either NONE or PROXY_V1. The default is NONE.", - "enum": [ - "NONE", - "PROXY_V1" - ], - "enumDescriptions": [ - "", - "" - ] - }, - "request": { - "type": "string", - "description": "The application data to send once the TCP connection has been established (default value is empty). If both request and response are empty, the connection establishment alone will indicate health. The request data can only be ASCII." - }, - "response": { - "type": "string", - "description": "The bytes to match against the beginning of the response data. If left empty (the default value), any response will indicate health. The response data can only be ASCII." - } - } - }, - "Tags": { - "id": "Tags", - "type": "object", - "description": "A set of instance tags.", - "properties": { - "fingerprint": { - "type": "string", - "description": "Specifies a fingerprint for this request, which is essentially a hash of the metadata's contents and used for optimistic locking. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update metadata. You must always provide an up-to-date fingerprint hash in order to update or change metadata.\n\nTo see the latest fingerprint, make get() request to the instance.", - "format": "byte" - }, - "items": { - "type": "array", - "description": "An array of tags. Each tag must be 1-63 characters long, and comply with RFC1035.", - "items": { - "type": "string" - } - } - } - }, - "TargetHttpProxy": { - "id": "TargetHttpProxy", - "type": "object", - "description": "A TargetHttpProxy resource. This resource defines an HTTP proxy. (== resource_for beta.targetHttpProxies ==) (== resource_for v1.targetHttpProxies ==)", - "properties": { - "creationTimestamp": { - "type": "string", - "description": "[Output Only] Creation timestamp in RFC3339 text format." - }, - "description": { - "type": "string", - "description": "An optional description of this resource. Provide this property when you create the resource." - }, - "id": { - "type": "string", - "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", - "format": "uint64" - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#targetHttpProxy for target HTTP proxies.", - "default": "compute#targetHttpProxy" - }, - "name": { - "type": "string", - "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for the resource." - }, - "urlMap": { - "type": "string", - "description": "URL to the UrlMap resource that defines the mapping from URL to the BackendService." - } - } - }, - "TargetHttpProxyList": { - "id": "TargetHttpProxyList", - "type": "object", - "description": "A list of TargetHttpProxy resources.", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "array", - "description": "A list of TargetHttpProxy resources.", - "items": { - "$ref": "TargetHttpProxy" - } - }, - "kind": { - "type": "string", - "description": "Type of resource. Always compute#targetHttpProxyList for lists of target HTTP proxies.", - "default": "compute#targetHttpProxyList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } + "InstancesStartWithEncryptionKeyRequest": { + "id": "InstancesStartWithEncryptionKeyRequest", + "properties": { + "disks": { + "description": "Array of disks associated with this instance that are protected with a customer-supplied encryption key.\n\nIn order to start the instance, the disk url and its corresponding key must be provided.\n\nIf the disk is not protected with a customer-supplied encryption key it should not be specified.", + "items": { + "$ref": "CustomerEncryptionKeyProtectedDisk" + }, + "type": "array" } - } }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "TargetHttpsProxiesSetSslCertificatesRequest": { - "id": "TargetHttpsProxiesSetSslCertificatesRequest", - "type": "object", - "properties": { - "sslCertificates": { - "type": "array", - "description": "New set of SslCertificate resources to associate with this TargetHttpsProxy resource. Currently exactly one SslCertificate resource must be specified.", - "items": { - "type": "string" - } - } - } - }, - "TargetHttpsProxy": { - "id": "TargetHttpsProxy", - "type": "object", - "description": "A TargetHttpsProxy resource. This resource defines an HTTPS proxy. (== resource_for beta.targetHttpsProxies ==) (== resource_for v1.targetHttpsProxies ==)", - "properties": { - "creationTimestamp": { - "type": "string", - "description": "[Output Only] Creation timestamp in RFC3339 text format." + "type": "object" }, - "description": { - "type": "string", - "description": "An optional description of this resource. Provide this property when you create the resource." - }, - "id": { - "type": "string", - "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", - "format": "uint64" - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#targetHttpsProxy for target HTTPS proxies.", - "default": "compute#targetHttpsProxy" - }, - "name": { - "type": "string", - "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for the resource." - }, - "sslCertificates": { - "type": "array", - "description": "URLs to SslCertificate resources that are used to authenticate connections between users and the load balancer. Currently, exactly one SSL certificate must be specified.", - "items": { - "type": "string" - } - }, - "urlMap": { - "type": "string", - "description": "A fully-qualified or valid partial URL to the UrlMap resource that defines the mapping from URL to the BackendService. For example, the following are all valid URLs for specifying a URL map: \n- https://www.googleapis.compute/v1/projects/project/global/urlMaps/url-map \n- projects/project/global/urlMaps/url-map \n- global/urlMaps/url-map" - } - } - }, - "TargetHttpsProxyList": { - "id": "TargetHttpsProxyList", - "type": "object", - "description": "Contains a list of TargetHttpsProxy resources.", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "array", - "description": "A list of TargetHttpsProxy resources.", - "items": { - "$ref": "TargetHttpsProxy" - } - }, - "kind": { - "type": "string", - "description": "Type of resource. Always compute#targetHttpsProxyList for lists of target HTTPS proxies.", - "default": "compute#targetHttpsProxyList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } + "Interconnect": { + "description": "Represents an Interconnects resource. The Interconnects resource is a dedicated connection between Google's network and your on-premises network. For more information, see the Dedicated overview page. (== resource_for v1.interconnects ==) (== resource_for beta.interconnects ==)", + "id": "Interconnect", + "properties": { + "adminEnabled": { + "description": "Administrative status of the interconnect. When this is set to true, the Interconnect is functional and can carry traffic. When set to false, no packets can be carried over the interconnect and no BGP routes are exchanged over it. By default, the status is set to true.", + "type": "boolean" + }, + "circuitInfos": { + "description": "[Output Only] List of CircuitInfo objects, that describe the individual circuits in this LAG.", + "items": { + "$ref": "InterconnectCircuitInfo" + }, + "type": "array" + }, + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "customerName": { + "description": "Customer name, to put in the Letter of Authorization as the party authorized to request a crossconnect.", + "type": "string" + }, + "description": { + "description": "An optional description of this resource. Provide this property when you create the resource.", + "type": "string" + }, + "expectedOutages": { + "description": "[Output Only] List of outages expected for this Interconnect.", + "items": { + "$ref": "InterconnectOutageNotification" + }, + "type": "array" + }, + "googleIpAddress": { + "description": "[Output Only] IP address configured on the Google side of the Interconnect link. This can be used only for ping tests.", + "type": "string" + }, + "googleReferenceId": { + "description": "[Output Only] Google reference ID; to be used when raising support tickets with Google or otherwise to debug backend connectivity issues.", + "type": "string" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64", + "type": "string" + }, + "interconnectAttachments": { + "description": "[Output Only] A list of the URLs of all InterconnectAttachments configured to use this Interconnect.", + "items": { + "type": "string" + }, + "type": "array" + }, + "interconnectType": { + "description": "Type of interconnect. Note that \"IT_PRIVATE\" has been deprecated in favor of \"DEDICATED\"", + "enum": [ + "DEDICATED", + "IT_PRIVATE" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "kind": { + "default": "compute#interconnect", + "description": "[Output Only] Type of the resource. Always compute#interconnect for interconnects.", + "type": "string" + }, + "linkType": { + "description": "Type of link requested. This field indicates speed of each of the links in the bundle, not the entire bundle. Only 10G per link is allowed for a dedicated interconnect. Options: Ethernet_10G_LR", + "enum": [ + "LINK_TYPE_ETHERNET_10G_LR" + ], + "enumDescriptions": [ + "" + ], + "type": "string" + }, + "location": { + "description": "URL of the InterconnectLocation object that represents where this connection is to be provisioned.", + "type": "string" + }, + "name": { + "annotations": { + "required": [ + "compute.interconnects.insert" + ] + }, + "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "nocContactEmail": { + "description": "Email address to contact the customer NOC for operations and maintenance notifications regarding this Interconnect. If specified, this will be used for notifications in addition to all other forms described, such as Stackdriver logs alerting and Cloud Notifications.", + "type": "string" + }, + "operationalStatus": { + "description": "[Output Only] The current status of whether or not this Interconnect is functional.", + "enum": [ + "OS_ACTIVE", + "OS_UNPROVISIONED" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "peerIpAddress": { + "description": "[Output Only] IP address configured on the customer side of the Interconnect link. The customer should configure this IP address during turnup when prompted by Google NOC. This can be used only for ping tests.", + "type": "string" + }, + "provisionedLinkCount": { + "description": "[Output Only] Number of links actually provisioned in this interconnect.", + "format": "int32", + "type": "integer" + }, + "requestedLinkCount": { + "description": "Target number of physical links in the link bundle, as requested by the customer.", + "format": "int32", + "type": "integer" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" } - } }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "TargetInstance": { - "id": "TargetInstance", - "type": "object", - "description": "A TargetInstance resource. This resource defines an endpoint instance that terminates traffic of certain protocols. (== resource_for beta.targetInstances ==) (== resource_for v1.targetInstances ==)", - "properties": { - "creationTimestamp": { - "type": "string", - "description": "[Output Only] Creation timestamp in RFC3339 text format." + "type": "object" }, - "description": { - "type": "string", - "description": "An optional description of this resource. Provide this property when you create the resource." - }, - "id": { - "type": "string", - "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", - "format": "uint64" - }, - "instance": { - "type": "string", - "description": "A URL to the virtual machine instance that handles traffic for this target instance. When creating a target instance, you can provide the fully-qualified URL or a valid partial URL to the desired virtual machine. For example, the following are all valid URLs: \n- https://www.googleapis.com/compute/v1/projects/project/zones/zone/instances/instance \n- projects/project/zones/zone/instances/instance \n- zones/zone/instances/instance" - }, - "kind": { - "type": "string", - "description": "[Output Only] The type of the resource. Always compute#targetInstance for target instances.", - "default": "compute#targetInstance" - }, - "name": { - "type": "string", - "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" - }, - "natPolicy": { - "type": "string", - "description": "NAT option controlling how IPs are NAT'ed to the instance. Currently only NO_NAT (default value) is supported.", - "enum": [ - "NO_NAT" - ], - "enumDescriptions": [ - "" - ] - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for the resource." - }, - "zone": { - "type": "string", - "description": "[Output Only] URL of the zone where the target instance resides." - } - } - }, - "TargetInstanceAggregatedList": { - "id": "TargetInstanceAggregatedList", - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "object", - "description": "A list of TargetInstance resources.", - "additionalProperties": { - "$ref": "TargetInstancesScopedList", - "description": "Name of the scope containing this set of target instances." - } - }, - "kind": { - "type": "string", - "description": "Type of resource.", - "default": "compute#targetInstanceAggregatedList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } + "InterconnectAttachment": { + "description": "Represents an InterconnectAttachment (VLAN attachment) resource. For more information, see Creating VLAN Attachments. (== resource_for beta.interconnectAttachments ==) (== resource_for v1.interconnectAttachments ==)", + "id": "InterconnectAttachment", + "properties": { + "cloudRouterIpAddress": { + "description": "[Output Only] IPv4 address + prefix length to be configured on Cloud Router Interface for this interconnect attachment.", + "type": "string" + }, + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "customerRouterIpAddress": { + "description": "[Output Only] IPv4 address + prefix length to be configured on the customer router subinterface for this interconnect attachment.", + "type": "string" + }, + "description": { + "description": "An optional description of this resource.", + "type": "string" + }, + "googleReferenceId": { + "description": "[Output Only] Google reference ID, to be used when raising support tickets with Google or otherwise to debug backend connectivity issues.", + "type": "string" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64", + "type": "string" + }, + "interconnect": { + "description": "URL of the underlying Interconnect object that this attachment's traffic will traverse through.", + "type": "string" + }, + "kind": { + "default": "compute#interconnectAttachment", + "description": "[Output Only] Type of the resource. Always compute#interconnectAttachment for interconnect attachments.", + "type": "string" + }, + "name": { + "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "operationalStatus": { + "description": "[Output Only] The current status of whether or not this interconnect attachment is functional.", + "enum": [ + "OS_ACTIVE", + "OS_UNPROVISIONED" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "privateInterconnectInfo": { + "$ref": "InterconnectAttachmentPrivateInfo", + "description": "[Output Only] Information specific to an InterconnectAttachment. This property is populated if the interconnect that this is attached to is of type DEDICATED." + }, + "region": { + "description": "[Output Only] URL of the region where the regional interconnect attachment resides. You must specify this field as part of the HTTP request URL. It is not settable as a field in the request body.", + "type": "string" + }, + "router": { + "description": "URL of the cloud router to be used for dynamic routing. This router must be in the same region as this InterconnectAttachment. The InterconnectAttachment will automatically connect the Interconnect to the network \u0026 region within which the Cloud Router is configured.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" } - } }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "TargetInstanceList": { - "id": "TargetInstanceList", - "type": "object", - "description": "Contains a list of TargetInstance resources.", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." + "type": "object" }, - "items": { - "type": "array", - "description": "A list of TargetInstance resources.", - "items": { - "$ref": "TargetInstance" - } - }, - "kind": { - "type": "string", - "description": "Type of resource.", - "default": "compute#targetInstanceList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } + "InterconnectAttachmentAggregatedList": { + "id": "InterconnectAttachmentAggregatedList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "additionalProperties": { + "$ref": "InterconnectAttachmentsScopedList", + "description": "Name of the scope containing this set of interconnect attachments." + }, + "description": "A list of InterconnectAttachmentsScopedList resources.", + "type": "object" + }, + "kind": { + "default": "compute#interconnectAttachmentAggregatedList", + "description": "[Output Only] Type of resource. Always compute#interconnectAttachmentAggregatedList for aggregated lists of interconnect attachments.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" } - } }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "TargetInstancesScopedList": { - "id": "TargetInstancesScopedList", - "type": "object", - "properties": { - "targetInstances": { - "type": "array", - "description": "List of target instances contained in this scope.", - "items": { - "$ref": "TargetInstance" - } + "type": "object" }, - "warning": { - "type": "object", - "description": "Informational warning which replaces the list of addresses when the list is empty.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } + "InterconnectAttachmentList": { + "description": "Response to the list request, and contains a list of interconnect attachments.", + "id": "InterconnectAttachmentList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of InterconnectAttachment resources.", + "items": { + "$ref": "InterconnectAttachment" + }, + "type": "array" + }, + "kind": { + "default": "compute#interconnectAttachmentList", + "description": "[Output Only] Type of resource. Always compute#interconnectAttachmentList for lists of interconnect attachments.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" } - } }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "TargetPool": { - "id": "TargetPool", - "type": "object", - "description": "A TargetPool resource. This resource defines a pool of instances, an associated HttpHealthCheck resource, and the fallback target pool. (== resource_for beta.targetPools ==) (== resource_for v1.targetPools ==)", - "properties": { - "backupPool": { - "type": "string", - "description": "This field is applicable only when the containing target pool is serving a forwarding rule as the primary pool, and its failoverRatio field is properly set to a value between [0, 1].\n\nbackupPool and failoverRatio together define the fallback behavior of the primary target pool: if the ratio of the healthy instances in the primary pool is at or below failoverRatio, traffic arriving at the load-balanced IP will be directed to the backup pool.\n\nIn case where failoverRatio and backupPool are not set, or all the instances in the backup pool are unhealthy, the traffic will be directed back to the primary pool in the \"force\" mode, where traffic will be spread to the healthy instances with the best effort, or to all instances when no instance is healthy." + "type": "object" }, - "creationTimestamp": { - "type": "string", - "description": "[Output Only] Creation timestamp in RFC3339 text format." - }, - "description": { - "type": "string", - "description": "An optional description of this resource. Provide this property when you create the resource." - }, - "failoverRatio": { - "type": "number", - "description": "This field is applicable only when the containing target pool is serving a forwarding rule as the primary pool (i.e., not as a backup pool to some other target pool). The value of the field must be in [0, 1].\n\nIf set, backupPool must also be set. They together define the fallback behavior of the primary target pool: if the ratio of the healthy instances in the primary pool is at or below this number, traffic arriving at the load-balanced IP will be directed to the backup pool.\n\nIn case where failoverRatio is not set or all the instances in the backup pool are unhealthy, the traffic will be directed back to the primary pool in the \"force\" mode, where traffic will be spread to the healthy instances with the best effort, or to all instances when no instance is healthy.", - "format": "float" - }, - "healthChecks": { - "type": "array", - "description": "The URL of the HttpHealthCheck resource. A member instance in this pool is considered healthy if and only if the health checks pass. An empty list means all member instances will be considered healthy at all times. Only HttpHealthChecks are supported. Only one health check may be specified.", - "items": { - "type": "string" - } - }, - "id": { - "type": "string", - "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", - "format": "uint64" - }, - "instances": { - "type": "array", - "description": "A list of resource URLs to the virtual machine instances serving this pool. They must live in zones contained in the same region as this pool.", - "items": { - "type": "string" - } - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of the resource. Always compute#targetPool for target pools.", - "default": "compute#targetPool" - }, - "name": { - "type": "string", - "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" - }, - "region": { - "type": "string", - "description": "[Output Only] URL of the region where the target pool resides." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for the resource." - }, - "sessionAffinity": { - "type": "string", - "description": "Sesssion affinity option, must be one of the following values:\nNONE: Connections from the same client IP may go to any instance in the pool.\nCLIENT_IP: Connections from the same client IP will go to the same instance in the pool while that instance remains healthy.\nCLIENT_IP_PROTO: Connections from the same client IP with the same IP protocol will go to the same instance in the pool while that instance remains healthy.", - "enum": [ - "CLIENT_IP", - "CLIENT_IP_PORT_PROTO", - "CLIENT_IP_PROTO", - "GENERATED_COOKIE", - "NONE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "" - ] - } - } - }, - "TargetPoolAggregatedList": { - "id": "TargetPoolAggregatedList", - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "object", - "description": "A list of TargetPool resources.", - "additionalProperties": { - "$ref": "TargetPoolsScopedList", - "description": "Name of the scope containing this set of target pools." - } - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#targetPoolAggregatedList for aggregated lists of target pools.", - "default": "compute#targetPoolAggregatedList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } + "InterconnectAttachmentPrivateInfo": { + "description": "Information for an interconnect attachment when this belongs to an interconnect of type DEDICATED.", + "id": "InterconnectAttachmentPrivateInfo", + "properties": { + "tag8021q": { + "description": "[Output Only] 802.1q encapsulation tag to be used for traffic between Google and the customer, going to and from this network and region.", + "format": "uint32", + "type": "integer" } - } }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "TargetPoolInstanceHealth": { - "id": "TargetPoolInstanceHealth", - "type": "object", - "properties": { - "healthStatus": { - "type": "array", - "items": { - "$ref": "HealthStatus" - } + "type": "object" }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#targetPoolInstanceHealth when checking the health of an instance.", - "default": "compute#targetPoolInstanceHealth" - } - } - }, - "TargetPoolList": { - "id": "TargetPoolList", - "type": "object", - "description": "Contains a list of TargetPool resources.", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "array", - "description": "A list of TargetPool resources.", - "items": { - "$ref": "TargetPool" - } - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#targetPoolList for lists of target pools.", - "default": "compute#targetPoolList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } + "InterconnectAttachmentsScopedList": { + "id": "InterconnectAttachmentsScopedList", + "properties": { + "interconnectAttachments": { + "description": "List of interconnect attachments contained in this scope.", + "items": { + "$ref": "InterconnectAttachment" + }, + "type": "array" + }, + "warning": { + "description": "Informational warning which replaces the list of addresses when the list is empty.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" } - } }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "TargetPoolsAddHealthCheckRequest": { - "id": "TargetPoolsAddHealthCheckRequest", - "type": "object", - "properties": { - "healthChecks": { - "type": "array", - "description": "The HttpHealthCheck to add to the target pool.", - "items": { - "$ref": "HealthCheckReference" - } - } - } - }, - "TargetPoolsAddInstanceRequest": { - "id": "TargetPoolsAddInstanceRequest", - "type": "object", - "properties": { - "instances": { - "type": "array", - "description": "A full or partial URL to an instance to add to this target pool. This can be a full or partial URL. For example, the following are valid URLs: \n- https://www.googleapis.com/compute/v1/projects/project-id/zones/zone/instances/instance-name \n- projects/project-id/zones/zone/instances/instance-name \n- zones/zone/instances/instance-name", - "items": { - "$ref": "InstanceReference" - } - } - } - }, - "TargetPoolsRemoveHealthCheckRequest": { - "id": "TargetPoolsRemoveHealthCheckRequest", - "type": "object", - "properties": { - "healthChecks": { - "type": "array", - "description": "Health check URL to be removed. This can be a full or valid partial URL. For example, the following are valid URLs: \n- https://www.googleapis.com/compute/beta/projects/project/global/httpHealthChecks/health-check \n- projects/project/global/httpHealthChecks/health-check \n- global/httpHealthChecks/health-check", - "items": { - "$ref": "HealthCheckReference" - } - } - } - }, - "TargetPoolsRemoveInstanceRequest": { - "id": "TargetPoolsRemoveInstanceRequest", - "type": "object", - "properties": { - "instances": { - "type": "array", - "description": "URLs of the instances to be removed from target pool.", - "items": { - "$ref": "InstanceReference" - } - } - } - }, - "TargetPoolsScopedList": { - "id": "TargetPoolsScopedList", - "type": "object", - "properties": { - "targetPools": { - "type": "array", - "description": "List of target pools contained in this scope.", - "items": { - "$ref": "TargetPool" - } + "type": "object" }, - "warning": { - "type": "object", - "description": "Informational warning which replaces the list of addresses when the list is empty.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } + "InterconnectCircuitInfo": { + "description": "Describes a single physical circuit between the Customer and Google. CircuitInfo objects are created by Google, so all fields are output only. Next id: 4", + "id": "InterconnectCircuitInfo", + "properties": { + "customerDemarcId": { + "description": "Customer-side demarc ID for this circuit.", + "type": "string" + }, + "googleCircuitId": { + "description": "Google-assigned unique ID for this circuit. Assigned at circuit turn-up.", + "type": "string" + }, + "googleDemarcId": { + "description": "Google-side demarc ID for this circuit. Assigned at circuit turn-up and provided by Google to the customer in the LOA.", + "type": "string" } - } }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "TargetReference": { - "id": "TargetReference", - "type": "object", - "properties": { - "target": { - "type": "string" - } - } - }, - "TargetSslProxiesSetBackendServiceRequest": { - "id": "TargetSslProxiesSetBackendServiceRequest", - "type": "object", - "properties": { - "service": { - "type": "string", - "description": "The URL of the new BackendService resource for the targetSslProxy." - } - } - }, - "TargetSslProxiesSetProxyHeaderRequest": { - "id": "TargetSslProxiesSetProxyHeaderRequest", - "type": "object", - "properties": { - "proxyHeader": { - "type": "string", - "description": "The new type of proxy header to append before sending data to the backend. NONE or PROXY_V1 are allowed.", - "enum": [ - "NONE", - "PROXY_V1" - ], - "enumDescriptions": [ - "", - "" - ] - } - } - }, - "TargetSslProxiesSetSslCertificatesRequest": { - "id": "TargetSslProxiesSetSslCertificatesRequest", - "type": "object", - "properties": { - "sslCertificates": { - "type": "array", - "description": "New set of URLs to SslCertificate resources to associate with this TargetSslProxy. Currently exactly one ssl certificate must be specified.", - "items": { - "type": "string" - } - } - } - }, - "TargetSslProxy": { - "id": "TargetSslProxy", - "type": "object", - "description": "A TargetSslProxy resource. This resource defines an SSL proxy. (== resource_for beta.targetSslProxies ==) (== resource_for v1.targetSslProxies ==)", - "properties": { - "creationTimestamp": { - "type": "string", - "description": "[Output Only] Creation timestamp in RFC3339 text format." + "type": "object" }, - "description": { - "type": "string", - "description": "An optional description of this resource. Provide this property when you create the resource." - }, - "id": { - "type": "string", - "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", - "format": "uint64" - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of the resource. Always compute#targetSslProxy for target SSL proxies.", - "default": "compute#targetSslProxy" - }, - "name": { - "type": "string", - "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" - }, - "proxyHeader": { - "type": "string", - "description": "Specifies the type of proxy header to append before sending data to the backend, either NONE or PROXY_V1. The default is NONE.", - "enum": [ - "NONE", - "PROXY_V1" - ], - "enumDescriptions": [ - "", - "" - ] - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for the resource." - }, - "service": { - "type": "string", - "description": "URL to the BackendService resource." - }, - "sslCertificates": { - "type": "array", - "description": "URLs to SslCertificate resources that are used to authenticate connections to Backends. Currently exactly one SSL certificate must be specified.", - "items": { - "type": "string" - } - } - } - }, - "TargetSslProxyList": { - "id": "TargetSslProxyList", - "type": "object", - "description": "Contains a list of TargetSslProxy resources.", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "array", - "description": "A list of TargetSslProxy resources.", - "items": { - "$ref": "TargetSslProxy" - } - }, - "kind": { - "type": "string", - "description": "Type of resource.", - "default": "compute#targetSslProxyList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } + "InterconnectList": { + "description": "Response to the list request, and contains a list of interconnects.", + "id": "InterconnectList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of Interconnect resources.", + "items": { + "$ref": "Interconnect" + }, + "type": "array" + }, + "kind": { + "default": "compute#interconnectList", + "description": "[Output Only] Type of resource. Always compute#interconnectList for lists of interconnects.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" } - } }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "TargetTcpProxiesSetBackendServiceRequest": { - "id": "TargetTcpProxiesSetBackendServiceRequest", - "type": "object", - "properties": { - "service": { - "type": "string", - "description": "The URL of the new BackendService resource for the targetTcpProxy." - } - } - }, - "TargetTcpProxiesSetProxyHeaderRequest": { - "id": "TargetTcpProxiesSetProxyHeaderRequest", - "type": "object", - "properties": { - "proxyHeader": { - "type": "string", - "description": "The new type of proxy header to append before sending data to the backend. NONE or PROXY_V1 are allowed.", - "enum": [ - "NONE", - "PROXY_V1" - ], - "enumDescriptions": [ - "", - "" - ] - } - } - }, - "TargetTcpProxy": { - "id": "TargetTcpProxy", - "type": "object", - "description": "A TargetTcpProxy resource. This resource defines a TCP proxy. (== resource_for beta.targetTcpProxies ==) (== resource_for v1.targetTcpProxies ==)", - "properties": { - "creationTimestamp": { - "type": "string", - "description": "[Output Only] Creation timestamp in RFC3339 text format." + "type": "object" }, - "description": { - "type": "string", - "description": "An optional description of this resource. Provide this property when you create the resource." - }, - "id": { - "type": "string", - "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", - "format": "uint64" - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of the resource. Always compute#targetTcpProxy for target TCP proxies.", - "default": "compute#targetTcpProxy" - }, - "name": { - "type": "string", - "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" - }, - "proxyHeader": { - "type": "string", - "description": "Specifies the type of proxy header to append before sending data to the backend, either NONE or PROXY_V1. The default is NONE.", - "enum": [ - "NONE", - "PROXY_V1" - ], - "enumDescriptions": [ - "", - "" - ] - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for the resource." - }, - "service": { - "type": "string", - "description": "URL to the BackendService resource." - } - } - }, - "TargetTcpProxyList": { - "id": "TargetTcpProxyList", - "type": "object", - "description": "Contains a list of TargetTcpProxy resources.", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "array", - "description": "A list of TargetTcpProxy resources.", - "items": { - "$ref": "TargetTcpProxy" - } - }, - "kind": { - "type": "string", - "description": "Type of resource.", - "default": "compute#targetTcpProxyList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } + "InterconnectLocation": { + "description": "Represents an InterconnectLocations resource. The InterconnectLocations resource describes the locations where you can connect to Google's networks. For more information, see Colocation Facilities.", + "id": "InterconnectLocation", + "properties": { + "address": { + "description": "[Output Only] The postal address of the Point of Presence, each line in the address is separated by a newline character.", + "type": "string" + }, + "availabilityZone": { + "description": "[Output Only] Availability zone for this location. Within a metropolitan area (metro), maintenance will not be simultaneously scheduled in more than one availability zone. Example: \"zone1\" or \"zone2\".", + "type": "string" + }, + "city": { + "description": "[Output Only] Metropolitan area designator that indicates which city an interconnect is located. For example: \"Chicago, IL\", \"Amsterdam, Netherlands\".", + "type": "string" + }, + "continent": { + "description": "[Output Only] Continent for this location.", + "enum": [ + "AFRICA", + "ASIA_PAC", + "C_AFRICA", + "C_ASIA_PAC", + "C_EUROPE", + "C_NORTH_AMERICA", + "C_SOUTH_AMERICA", + "EUROPE", + "NORTH_AMERICA", + "SOUTH_AMERICA" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "description": { + "description": "[Output Only] An optional description of the resource.", + "type": "string" + }, + "facilityProvider": { + "description": "[Output Only] The name of the provider for this facility (e.g., EQUINIX).", + "type": "string" + }, + "facilityProviderFacilityId": { + "description": "[Output Only] A provider-assigned Identifier for this facility (e.g., Ashburn-DC1).", + "type": "string" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64", + "type": "string" + }, + "kind": { + "default": "compute#interconnectLocation", + "description": "[Output Only] Type of the resource. Always compute#interconnectLocation for interconnect locations.", + "type": "string" + }, + "name": { + "description": "[Output Only] Name of the resource.", + "type": "string" + }, + "peeringdbFacilityId": { + "description": "[Output Only] The peeringdb identifier for this facility (corresponding with a netfac type in peeringdb).", + "type": "string" + }, + "regionInfos": { + "description": "[Output Only] A list of InterconnectLocation.RegionInfo objects, that describe parameters pertaining to the relation between this InterconnectLocation and various Google Cloud regions.", + "items": { + "$ref": "InterconnectLocationRegionInfo" + }, + "type": "array" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" } - } }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "TargetVpnGateway": { - "id": "TargetVpnGateway", - "type": "object", - "description": "Represents a Target VPN gateway resource. (== resource_for beta.targetVpnGateways ==) (== resource_for v1.targetVpnGateways ==)", - "properties": { - "creationTimestamp": { - "type": "string", - "description": "[Output Only] Creation timestamp in RFC3339 text format." + "type": "object" }, - "description": { - "type": "string", - "description": "An optional description of this resource. Provide this property when you create the resource." - }, - "forwardingRules": { - "type": "array", - "description": "[Output Only] A list of URLs to the ForwardingRule resources. ForwardingRules are created using compute.forwardingRules.insert and associated to a VPN gateway.", - "items": { - "type": "string" - } - }, - "id": { - "type": "string", - "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", - "format": "uint64" - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#targetVpnGateway for target VPN gateways.", - "default": "compute#targetVpnGateway" - }, - "name": { - "type": "string", - "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "annotations": { - "required": [ - "compute.targetVpnGateways.insert" - ] - } - }, - "network": { - "type": "string", - "description": "URL of the network to which this VPN gateway is attached. Provided by the client when the VPN gateway is created.", - "annotations": { - "required": [ - "compute.targetVpnGateways.insert" - ] - } - }, - "region": { - "type": "string", - "description": "[Output Only] URL of the region where the target VPN gateway resides." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for the resource." - }, - "status": { - "type": "string", - "description": "[Output Only] The status of the VPN gateway.", - "enum": [ - "CREATING", - "DELETING", - "FAILED", - "READY" - ], - "enumDescriptions": [ - "", - "", - "", - "" - ] - }, - "tunnels": { - "type": "array", - "description": "[Output Only] A list of URLs to VpnTunnel resources. VpnTunnels are created using compute.vpntunnels.insert method and associated to a VPN gateway.", - "items": { - "type": "string" - } - } - } - }, - "TargetVpnGatewayAggregatedList": { - "id": "TargetVpnGatewayAggregatedList", - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "object", - "description": "A list of TargetVpnGateway resources.", - "additionalProperties": { - "$ref": "TargetVpnGatewaysScopedList", - "description": "[Output Only] Name of the scope containing this set of target VPN gateways." - } - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#targetVpnGateway for target VPN gateways.", - "default": "compute#targetVpnGatewayAggregatedList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } + "InterconnectLocationList": { + "description": "Response to the list request, and contains a list of interconnect locations.", + "id": "InterconnectLocationList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of InterconnectLocation resources.", + "items": { + "$ref": "InterconnectLocation" + }, + "type": "array" + }, + "kind": { + "default": "compute#interconnectLocationList", + "description": "[Output Only] Type of resource. Always compute#interconnectLocationList for lists of interconnect locations.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" } - } }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "TargetVpnGatewayList": { - "id": "TargetVpnGatewayList", - "type": "object", - "description": "Contains a list of TargetVpnGateway resources.", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." + "type": "object" }, - "items": { - "type": "array", - "description": "A list of TargetVpnGateway resources.", - "items": { - "$ref": "TargetVpnGateway" - } - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#targetVpnGateway for target VPN gateways.", - "default": "compute#targetVpnGatewayList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } + "InterconnectLocationRegionInfo": { + "description": "Information about any potential InterconnectAttachments between an Interconnect at a specific InterconnectLocation, and a specific Cloud Region.", + "id": "InterconnectLocationRegionInfo", + "properties": { + "expectedRttMs": { + "description": "Expected round-trip time in milliseconds, from this InterconnectLocation to a VM in this region.", + "format": "int64", + "type": "string" + }, + "locationPresence": { + "description": "Identifies the network presence of this location.", + "enum": [ + "GLOBAL", + "LOCAL_REGION", + "LP_GLOBAL", + "LP_LOCAL_REGION" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ], + "type": "string" + }, + "region": { + "description": "URL for the region of this location.", + "type": "string" } - } }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "TargetVpnGatewaysScopedList": { - "id": "TargetVpnGatewaysScopedList", - "type": "object", - "properties": { - "targetVpnGateways": { - "type": "array", - "description": "[Output Only] List of target vpn gateways contained in this scope.", - "items": { - "$ref": "TargetVpnGateway" - } + "type": "object" }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning which replaces the list of addresses when the list is empty.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } + "InterconnectOutageNotification": { + "description": "Description of a planned outage on this Interconnect. Next id: 9", + "id": "InterconnectOutageNotification", + "properties": { + "affectedCircuits": { + "description": "Iff issue_type is IT_PARTIAL_OUTAGE, a list of the Google-side circuit IDs that will be affected.", + "items": { + "type": "string" + }, + "type": "array" + }, + "description": { + "description": "A description about the purpose of the outage.", + "type": "string" + }, + "endTime": { + "description": "Scheduled end time for the outage (milliseconds since Unix epoch).", + "format": "int64", + "type": "string" + }, + "issueType": { + "description": "Form this outage is expected to take. Note that the \"IT_\" versions of this enum have been deprecated in favor of the unprefixed values.", + "enum": [ + "IT_OUTAGE", + "IT_PARTIAL_OUTAGE", + "OUTAGE", + "PARTIAL_OUTAGE" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ], + "type": "string" + }, + "name": { + "description": "Unique identifier for this outage notification.", + "type": "string" + }, + "source": { + "description": "The party that generated this notification. Note that \"NSRC_GOOGLE\" has been deprecated in favor of \"GOOGLE\"", + "enum": [ + "GOOGLE", + "NSRC_GOOGLE" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "startTime": { + "description": "Scheduled start time for the outage (milliseconds since Unix epoch).", + "format": "int64", + "type": "string" + }, + "state": { + "description": "State of this notification. Note that the \"NS_\" versions of this enum have been deprecated in favor of the unprefixed values.", + "enum": [ + "ACTIVE", + "CANCELLED", + "NS_ACTIVE", + "NS_CANCELED" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ], + "type": "string" } - } }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "TestFailure": { - "id": "TestFailure", - "type": "object", - "properties": { - "actualService": { - "type": "string" + "type": "object" }, - "expectedService": { - "type": "string" - }, - "host": { - "type": "string" - }, - "path": { - "type": "string" - } - } - }, - "UrlMap": { - "id": "UrlMap", - "type": "object", - "description": "A UrlMap resource. This resource defines the mapping from URL to the BackendService resource, based on the \"longest-match\" of the URL's host and path.", - "properties": { - "creationTimestamp": { - "type": "string", - "description": "[Output Only] Creation timestamp in RFC3339 text format." - }, - "defaultService": { - "type": "string", - "description": "The URL of the BackendService resource if none of the hostRules match." - }, - "description": { - "type": "string", - "description": "An optional description of this resource. Provide this property when you create the resource." - }, - "fingerprint": { - "type": "string", - "description": "Fingerprint of this resource. A hash of the contents stored in this object. This field is used in optimistic locking. This field will be ignored when inserting a UrlMap. An up-to-date fingerprint must be provided in order to update the UrlMap.", - "format": "byte" - }, - "hostRules": { - "type": "array", - "description": "The list of HostRules to use against the URL.", - "items": { - "$ref": "HostRule" - } - }, - "id": { - "type": "string", - "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", - "format": "uint64" - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of the resource. Always compute#urlMaps for url maps.", - "default": "compute#urlMap" - }, - "name": { - "type": "string", - "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" - }, - "pathMatchers": { - "type": "array", - "description": "The list of named PathMatchers to use against the URL.", - "items": { - "$ref": "PathMatcher" - } - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for the resource." - }, - "tests": { - "type": "array", - "description": "The list of expected URL mappings. Request to update this UrlMap will succeed only if all of the test cases pass.", - "items": { - "$ref": "UrlMapTest" - } - } - } - }, - "UrlMapList": { - "id": "UrlMapList", - "type": "object", - "description": "Contains a list of UrlMap resources.", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "array", - "description": "A list of UrlMap resources.", - "items": { - "$ref": "UrlMap" - } - }, - "kind": { - "type": "string", - "description": "Type of resource.", - "default": "compute#urlMapList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } + "License": { + "description": "A license resource.", + "id": "License", + "properties": { + "chargesUseFee": { + "description": "[Output Only] Deprecated. This field no longer reflects whether a license charges a usage fee.", + "type": "boolean" + }, + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "description": { + "description": "An optional textual description of the resource; provided by the client when the resource is created.", + "type": "string" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64", + "type": "string" + }, + "kind": { + "default": "compute#license", + "description": "[Output Only] Type of resource. Always compute#license for licenses.", + "type": "string" + }, + "licenseCode": { + "description": "[Output Only] The unique code used to attach this license to images, snapshots, and disks.", + "format": "uint64", + "type": "string" + }, + "name": { + "annotations": { + "required": [ + "compute.images.insert" + ] + }, + "description": "[Output Only] Name of the resource. The name is 1-63 characters long and complies with RFC1035.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "resourceRequirements": { + "$ref": "LicenseResourceRequirements" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + }, + "transferable": { + "description": "If false, licenses will not be copied from the source resource when creating an image from a disk, disk from snapshot, or snapshot from disk.", + "type": "boolean" } - } }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "UrlMapReference": { - "id": "UrlMapReference", - "type": "object", - "properties": { - "urlMap": { - "type": "string" - } - } - }, - "UrlMapTest": { - "id": "UrlMapTest", - "type": "object", - "description": "Message for the expected URL mappings.", - "properties": { - "description": { - "type": "string", - "description": "Description of this test case." + "type": "object" }, - "host": { - "type": "string", - "description": "Host portion of the URL." - }, - "path": { - "type": "string", - "description": "Path portion of the URL." - }, - "service": { - "type": "string", - "description": "Expected BackendService resource the given URL should be mapped to." - } - } - }, - "UrlMapValidationResult": { - "id": "UrlMapValidationResult", - "type": "object", - "description": "Message representing the validation result for a UrlMap.", - "properties": { - "loadErrors": { - "type": "array", - "items": { - "type": "string" - } - }, - "loadSucceeded": { - "type": "boolean", - "description": "Whether the given UrlMap can be successfully loaded. If false, 'loadErrors' indicates the reasons." - }, - "testFailures": { - "type": "array", - "items": { - "$ref": "TestFailure" - } - }, - "testPassed": { - "type": "boolean", - "description": "If successfully loaded, this field indicates whether the test passed. If false, 'testFailures's indicate the reason of failure." - } - } - }, - "UrlMapsValidateRequest": { - "id": "UrlMapsValidateRequest", - "type": "object", - "properties": { - "resource": { - "$ref": "UrlMap", - "description": "Content of the UrlMap to be validated." - } - } - }, - "UrlMapsValidateResponse": { - "id": "UrlMapsValidateResponse", - "type": "object", - "properties": { - "result": { - "$ref": "UrlMapValidationResult" - } - } - }, - "UsageExportLocation": { - "id": "UsageExportLocation", - "type": "object", - "description": "The location in Cloud Storage and naming method of the daily usage report. Contains bucket_name and report_name prefix.", - "properties": { - "bucketName": { - "type": "string", - "description": "The name of an existing bucket in Cloud Storage where the usage report object is stored. The Google Service Account is granted write access to this bucket. This can either be the bucket name by itself, such as example-bucket, or the bucket name with gs:// or https://storage.googleapis.com/ in front of it, such as gs://example-bucket." - }, - "reportNamePrefix": { - "type": "string", - "description": "An optional prefix for the name of the usage report object stored in bucketName. If not supplied, defaults to usage. The report is stored as a CSV file named report_name_prefix_gce_YYYYMMDD.csv where YYYYMMDD is the day of the usage according to Pacific Time. If you supply a prefix, it should conform to Cloud Storage object naming conventions." - } - } - }, - "VpnTunnel": { - "id": "VpnTunnel", - "type": "object", - "description": "VPN tunnel resource. (== resource_for beta.vpnTunnels ==) (== resource_for v1.vpnTunnels ==)", - "properties": { - "creationTimestamp": { - "type": "string", - "description": "[Output Only] Creation timestamp in RFC3339 text format." - }, - "description": { - "type": "string", - "description": "An optional description of this resource. Provide this property when you create the resource." - }, - "detailedStatus": { - "type": "string", - "description": "[Output Only] Detailed status message for the VPN tunnel." - }, - "id": { - "type": "string", - "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", - "format": "uint64" - }, - "ikeVersion": { - "type": "integer", - "description": "IKE protocol version to use when establishing the VPN tunnel with peer VPN gateway. Acceptable IKE versions are 1 or 2. Default version is 2.", - "format": "int32" - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#vpnTunnel for VPN tunnels.", - "default": "compute#vpnTunnel" - }, - "localTrafficSelector": { - "type": "array", - "description": "Local traffic selector to use when establishing the VPN tunnel with peer VPN gateway. The value should be a CIDR formatted string, for example: 192.168.0.0/16. The ranges should be disjoint. Only IPv4 is supported.", - "items": { - "type": "string" - } - }, - "name": { - "type": "string", - "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "annotations": { - "required": [ - "compute.vpnTunnels.insert" - ] - } - }, - "peerIp": { - "type": "string", - "description": "IP address of the peer VPN gateway. Only IPv4 is supported." - }, - "region": { - "type": "string", - "description": "[Output Only] URL of the region where the VPN tunnel resides." - }, - "remoteTrafficSelector": { - "type": "array", - "description": "Remote traffic selectors to use when establishing the VPN tunnel with peer VPN gateway. The value should be a CIDR formatted string, for example: 192.168.0.0/16. The ranges should be disjoint. Only IPv4 is supported.", - "items": { - "type": "string" - } - }, - "router": { - "type": "string", - "description": "URL of router resource to be used for dynamic routing." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for the resource." - }, - "sharedSecret": { - "type": "string", - "description": "Shared secret used to set the secure session between the Cloud VPN gateway and the peer VPN gateway." - }, - "sharedSecretHash": { - "type": "string", - "description": "Hash of the shared secret." - }, - "status": { - "type": "string", - "description": "[Output Only] The status of the VPN tunnel.", - "enum": [ - "ALLOCATING_RESOURCES", - "AUTHORIZATION_ERROR", - "DEPROVISIONING", - "ESTABLISHED", - "FAILED", - "FIRST_HANDSHAKE", - "NEGOTIATION_FAILURE", - "NETWORK_ERROR", - "NO_INCOMING_PACKETS", - "PROVISIONING", - "REJECTED", - "WAITING_FOR_FULL_CONFIG" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "targetVpnGateway": { - "type": "string", - "description": "URL of the VPN gateway with which this VPN tunnel is associated. Provided by the client when the VPN tunnel is created.", - "annotations": { - "required": [ - "compute.vpnTunnels.insert" - ] - } - } - } - }, - "VpnTunnelAggregatedList": { - "id": "VpnTunnelAggregatedList", - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "object", - "description": "A list of VpnTunnelsScopedList resources.", - "additionalProperties": { - "$ref": "VpnTunnelsScopedList", - "description": "Name of the scope containing this set of vpn tunnels." - } - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#vpnTunnel for VPN tunnels.", - "default": "compute#vpnTunnelAggregatedList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } + "LicenseCode": { + "id": "LicenseCode", + "properties": { + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "description": { + "description": "[Output Only] Description of this License Code.", + "type": "string" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64", + "type": "string" + }, + "kind": { + "default": "compute#licenseCode", + "description": "[Output Only] Type of resource. Always compute#licenseCode for licenses.", + "type": "string" + }, + "licenseAlias": { + "description": "[Output Only] URL and description aliases of Licenses with the same License Code.", + "items": { + "$ref": "LicenseCodeLicenseAlias" + }, + "type": "array" + }, + "name": { + "annotations": { + "required": [ + "compute.licenses.insert" + ] + }, + "description": "[Output Only] Name of the resource. The name is 1-20 characters long and must be a valid 64 bit integer.", + "pattern": "[0-9]{0,20}?", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + }, + "state": { + "description": "[Output Only] Current state of this License Code.", + "enum": [ + "DISABLED", + "ENABLED", + "RESTRICTED", + "STATE_UNSPECIFIED", + "TERMINATED" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "transferable": { + "description": "[Output Only] If true, the license will remain attached when creating images or snapshots from disks. Otherwise, the license is not transferred.", + "type": "boolean" } - } }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "VpnTunnelList": { - "id": "VpnTunnelList", - "type": "object", - "description": "Contains a list of VpnTunnel resources.", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." + "type": "object" }, - "items": { - "type": "array", - "description": "A list of VpnTunnel resources.", - "items": { - "$ref": "VpnTunnel" - } - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#vpnTunnel for VPN tunnels.", - "default": "compute#vpnTunnelList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } + "LicenseCodeLicenseAlias": { + "id": "LicenseCodeLicenseAlias", + "properties": { + "description": { + "description": "[Output Only] Description of this License Code.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] URL of license corresponding to this License Code.", + "type": "string" } - } }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "VpnTunnelsScopedList": { - "id": "VpnTunnelsScopedList", - "type": "object", - "properties": { - "vpnTunnels": { - "type": "array", - "description": "List of vpn tunnels contained in this scope.", - "items": { - "$ref": "VpnTunnel" - } + "type": "object" }, - "warning": { - "type": "object", - "description": "Informational warning which replaces the list of addresses when the list is empty.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } + "LicenseResourceRequirements": { + "id": "LicenseResourceRequirements", + "properties": { + "minGuestCpuCount": { + "description": "Minimum number of guest cpus required to use the Instance. Enforced at Instance creation and Instance start.", + "format": "int32", + "type": "integer" + }, + "minMemoryMb": { + "description": "Minimum memory required to use the Instance. Enforced at Instance creation and Instance start.", + "format": "int32", + "type": "integer" } - } }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "XpnHostList": { - "id": "XpnHostList", - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." + "type": "object" }, - "items": { - "type": "array", - "description": "[Output Only] A list of shared VPC host project URLs.", - "items": { - "$ref": "Project" - } - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always compute#xpnHostList for lists of shared VPC hosts.", - "default": "compute#xpnHostList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } + "LicensesListResponse": { + "id": "LicensesListResponse", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of License resources.", + "items": { + "$ref": "License" + }, + "type": "array" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" } - } }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - }, - "XpnResourceId": { - "id": "XpnResourceId", - "type": "object", - "description": "Service resource (a.k.a service project) ID.", - "properties": { - "id": { - "type": "string", - "description": "The ID of the service resource. In the case of projects, this field matches the project ID (e.g., my-project), not the project number (e.g., 12345678)." + "type": "object" }, - "type": { - "type": "string", - "description": "The type of the service resource.", - "enum": [ - "PROJECT", - "XPN_RESOURCE_TYPE_UNSPECIFIED" - ], - "enumDescriptions": [ - "", - "" - ] - } - } - }, - "Zone": { - "id": "Zone", - "type": "object", - "description": "A Zone resource. (== resource_for beta.zones ==) (== resource_for v1.zones ==)", - "properties": { - "availableCpuPlatforms": { - "type": "array", - "description": "[Output Only] Available cpu/platform selections for the zone.", - "items": { - "type": "string" - } - }, - "creationTimestamp": { - "type": "string", - "description": "[Output Only] Creation timestamp in RFC3339 text format." - }, - "deprecated": { - "$ref": "DeprecationStatus", - "description": "[Output Only] The deprecation status associated with this zone." - }, - "description": { - "type": "string", - "description": "[Output Only] Textual description of the resource." - }, - "id": { - "type": "string", - "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", - "format": "uint64" - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of the resource. Always compute#zone for zones.", - "default": "compute#zone" - }, - "name": { - "type": "string", - "description": "[Output Only] Name of the resource." - }, - "region": { - "type": "string", - "description": "[Output Only] Full URL reference to the region which hosts the zone." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for the resource." - }, - "status": { - "type": "string", - "description": "[Output Only] Status of the zone, either UP or DOWN.", - "enum": [ - "DOWN", - "UP" - ], - "enumDescriptions": [ - "", - "" - ] - } - } - }, - "ZoneList": { - "id": "ZoneList", - "type": "object", - "description": "Contains a list of zone resources.", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "array", - "description": "A list of Zone resources.", - "items": { - "$ref": "Zone" - } - }, - "kind": { - "type": "string", - "description": "Type of resource.", - "default": "compute#zoneList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for this resource." - }, - "warning": { - "type": "object", - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." - }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } + "MachineType": { + "description": "A Machine Type resource. (== resource_for v1.machineTypes ==) (== resource_for beta.machineTypes ==)", + "id": "MachineType", + "properties": { + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "deprecated": { + "$ref": "DeprecationStatus", + "description": "[Output Only] The deprecation status associated with this machine type." + }, + "description": { + "description": "[Output Only] An optional textual description of the resource.", + "type": "string" + }, + "guestCpus": { + "description": "[Output Only] The number of virtual CPUs that are available to the instance.", + "format": "int32", + "type": "integer" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64", + "type": "string" + }, + "imageSpaceGb": { + "description": "[Deprecated] This property is deprecated and will never be populated with any relevant values.", + "format": "int32", + "type": "integer" + }, + "isSharedCpu": { + "description": "[Output Only] Whether this machine type has a shared CPU. See Shared-core machine types for more information.", + "type": "boolean" + }, + "kind": { + "default": "compute#machineType", + "description": "[Output Only] The type of the resource. Always compute#machineType for machine types.", + "type": "string" + }, + "maximumPersistentDisks": { + "description": "[Output Only] Maximum persistent disks allowed.", + "format": "int32", + "type": "integer" + }, + "maximumPersistentDisksSizeGb": { + "description": "[Output Only] Maximum total persistent disks size (GB) allowed.", + "format": "int64", + "type": "string" + }, + "memoryMb": { + "description": "[Output Only] The amount of physical memory available to the instance, defined in MB.", + "format": "int32", + "type": "integer" + }, + "name": { + "description": "[Output Only] Name of the resource.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "scratchDisks": { + "description": "[Output Only] List of extended scratch disks assigned to the instance.", + "items": { + "properties": { + "diskGb": { + "description": "Size of the scratch disk, defined in GB.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "type": "array" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + }, + "zone": { + "description": "[Output Only] The name of the zone where the machine type resides, such as us-central1-a.", + "type": "string" } - } }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } + "type": "object" + }, + "MachineTypeAggregatedList": { + "id": "MachineTypeAggregatedList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "additionalProperties": { + "$ref": "MachineTypesScopedList", + "description": "[Output Only] Name of the scope containing this set of machine types." + }, + "description": "A list of MachineTypesScopedList resources.", + "type": "object" + }, + "kind": { + "default": "compute#machineTypeAggregatedList", + "description": "[Output Only] Type of resource. Always compute#machineTypeAggregatedList for aggregated lists of machine types.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "MachineTypeList": { + "description": "Contains a list of machine types.", + "id": "MachineTypeList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of MachineType resources.", + "items": { + "$ref": "MachineType" + }, + "type": "array" + }, + "kind": { + "default": "compute#machineTypeList", + "description": "[Output Only] Type of resource. Always compute#machineTypeList for lists of machine types.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "MachineTypesScopedList": { + "id": "MachineTypesScopedList", + "properties": { + "machineTypes": { + "description": "[Output Only] List of machine types contained in this scope.", + "items": { + "$ref": "MachineType" + }, + "type": "array" + }, + "warning": { + "description": "[Output Only] An informational warning that appears when the machine types list is empty.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "ManagedInstance": { + "description": "Next available tag: 12", + "id": "ManagedInstance", + "properties": { + "currentAction": { + "description": "[Output Only] The current action that the managed instance group has scheduled for the instance. Possible values: \n- NONE The instance is running, and the managed instance group does not have any scheduled actions for this instance. \n- CREATING The managed instance group is creating this instance. If the group fails to create this instance, it will try again until it is successful. \n- CREATING_WITHOUT_RETRIES The managed instance group is attempting to create this instance only once. If the group fails to create this instance, it does not try again and the group's targetSize value is decreased instead. \n- RECREATING The managed instance group is recreating this instance. \n- DELETING The managed instance group is permanently deleting this instance. \n- ABANDONING The managed instance group is abandoning this instance. The instance will be removed from the instance group and from any target pools that are associated with this group. \n- RESTARTING The managed instance group is restarting the instance. \n- REFRESHING The managed instance group is applying configuration changes to the instance without stopping it. For example, the group can update the target pool list for an instance without stopping that instance. \n- VERIFYING The managed instance group has created the instance and it is in the process of being verified.", + "enum": [ + "ABANDONING", + "CREATING", + "CREATING_WITHOUT_RETRIES", + "DELETING", + "NONE", + "RECREATING", + "REFRESHING", + "RESTARTING" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "id": { + "description": "[Output only] The unique identifier for this resource. This field is empty when instance does not exist.", + "format": "uint64", + "type": "string" + }, + "instance": { + "description": "[Output Only] The URL of the instance. The URL can exist even if the instance has not yet been created.", + "type": "string" + }, + "instanceStatus": { + "description": "[Output Only] The status of the instance. This field is empty when the instance does not exist.", + "enum": [ + "PROVISIONING", + "RUNNING", + "STAGING", + "STOPPED", + "STOPPING", + "SUSPENDED", + "SUSPENDING", + "TERMINATED" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "lastAttempt": { + "$ref": "ManagedInstanceLastAttempt", + "description": "[Output Only] Information about the last attempt to create or delete the instance." + } + }, + "type": "object" + }, + "ManagedInstanceLastAttempt": { + "id": "ManagedInstanceLastAttempt", + "properties": { + "errors": { + "description": "[Output Only] Encountered errors during the last attempt to create or delete the instance.", + "properties": { + "errors": { + "description": "[Output Only] The array of errors encountered while processing this operation.", + "items": { + "properties": { + "code": { + "description": "[Output Only] The error type identifier for this error.", + "type": "string" + }, + "location": { + "description": "[Output Only] Indicates the field in the request that caused the error. This property is optional.", + "type": "string" + }, + "message": { + "description": "[Output Only] An optional, human-readable error message.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "Metadata": { + "description": "A metadata key/value entry.", + "id": "Metadata", + "properties": { + "fingerprint": { + "description": "Specifies a fingerprint for this request, which is essentially a hash of the metadata's contents and used for optimistic locking. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update metadata. You must always provide an up-to-date fingerprint hash in order to update or change metadata.", + "format": "byte", + "type": "string" + }, + "items": { + "description": "Array of key/value pairs. The total size of all keys and values must be less than 512 KB.", + "items": { + "properties": { + "key": { + "annotations": { + "required": [ + "compute.instances.insert", + "compute.projects.setCommonInstanceMetadata" + ] + }, + "description": "Key for the metadata entry. Keys must conform to the following regexp: [a-zA-Z0-9-_]+, and be less than 128 bytes in length. This is reflected as part of a URL in the metadata server. Additionally, to avoid ambiguity, keys must not conflict with any other metadata keys for the project.", + "pattern": "[a-zA-Z0-9-_]{1,128}", + "type": "string" + }, + "value": { + "annotations": { + "required": [ + "compute.instances.insert", + "compute.projects.setCommonInstanceMetadata" + ] + }, + "description": "Value for the metadata entry. These are free-form strings, and only have meaning as interpreted by the image running in the instance. The only restriction placed on values is that their size must be less than or equal to 262144 bytes (256 KiB).", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "kind": { + "default": "compute#metadata", + "description": "[Output Only] Type of the resource. Always compute#metadata for metadata.", + "type": "string" + } + }, + "type": "object" + }, + "NamedPort": { + "description": "The named port. For example: .", + "id": "NamedPort", + "properties": { + "name": { + "description": "The name for this named port. The name must be 1-63 characters long, and comply with RFC1035.", + "type": "string" + }, + "port": { + "description": "The port number, which can be a value between 1 and 65535.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "Network": { + "description": "Represents a Network resource. Read Networks and Firewalls for more information. (== resource_for v1.networks ==) (== resource_for beta.networks ==)", + "id": "Network", + "properties": { + "IPv4Range": { + "description": "The range of internal addresses that are legal on this network. This range is a CIDR specification, for example: 192.168.0.0/16. Provided by the client when the network is created.", + "pattern": "[0-9]{1,3}(?:\\.[0-9]{1,3}){3}/[0-9]{1,2}", + "type": "string" + }, + "autoCreateSubnetworks": { + "description": "When set to true, the network is created in \"auto subnet mode\". When set to false, the network is in \"custom subnet mode\".\n\nIn \"auto subnet mode\", a newly created network is assigned the default CIDR of 10.128.0.0/9 and it automatically creates one subnetwork per region.", + "type": "boolean" + }, + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "description": { + "description": "An optional description of this resource. Provide this property when you create the resource.", + "type": "string" + }, + "gatewayIPv4": { + "description": "A gateway address for default routing to other networks. This value is read only and is selected by the Google Compute Engine, typically as the first usable address in the IPv4Range.", + "pattern": "[0-9]{1,3}(?:\\.[0-9]{1,3}){3}", + "type": "string" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64", + "type": "string" + }, + "kind": { + "default": "compute#network", + "description": "[Output Only] Type of the resource. Always compute#network for networks.", + "type": "string" + }, + "name": { + "annotations": { + "required": [ + "compute.networks.insert" + ] + }, + "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "peerings": { + "description": "[Output Only] List of network peerings for the resource.", + "items": { + "$ref": "NetworkPeering" + }, + "type": "array" + }, + "routingConfig": { + "$ref": "NetworkRoutingConfig", + "description": "The network-level routing configuration for this network. Used by Cloud Router to determine what type of network-wide routing behavior to enforce." + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + }, + "subnetworks": { + "description": "[Output Only] Server-defined fully-qualified URLs for all subnetworks in this network.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "NetworkInterface": { + "description": "A network interface resource attached to an instance.", + "id": "NetworkInterface", + "properties": { + "accessConfigs": { + "description": "An array of configurations for this interface. Currently, only one access config, ONE_TO_ONE_NAT, is supported. If there are no accessConfigs specified, then this instance will have no external internet access.", + "items": { + "$ref": "AccessConfig" + }, + "type": "array" + }, + "aliasIpRanges": { + "description": "An array of alias IP ranges for this network interface. Can only be specified for network interfaces on subnet-mode networks.", + "items": { + "$ref": "AliasIpRange" + }, + "type": "array" + }, + "fingerprint": { + "description": "Fingerprint hash of contents stored in this network interface. This field will be ignored when inserting an Instance or adding a NetworkInterface. An up-to-date fingerprint must be provided in order to update the NetworkInterface.", + "format": "byte", + "type": "string" + }, + "kind": { + "default": "compute#networkInterface", + "description": "[Output Only] Type of the resource. Always compute#networkInterface for network interfaces.", + "type": "string" + }, + "name": { + "description": "[Output Only] The name of the network interface, generated by the server. For network devices, these are eth0, eth1, etc.", + "type": "string" + }, + "network": { + "description": "URL of the network resource for this instance. When creating an instance, if neither the network nor the subnetwork is specified, the default network global/networks/default is used; if the network is not specified but the subnetwork is specified, the network is inferred.\n\nThis field is optional when creating a firewall rule. If not specified when creating a firewall rule, the default network global/networks/default is used.\n\nIf you specify this property, you can specify the network as a full or partial URL. For example, the following are all valid URLs: \n- https://www.googleapis.com/compute/v1/projects/project/global/networks/network \n- projects/project/global/networks/network \n- global/networks/default", + "type": "string" + }, + "networkIP": { + "description": "An IPv4 internal network address to assign to the instance for this network interface. If not specified by the user, an unused internal IP is assigned by the system.", + "type": "string" + }, + "subnetwork": { + "description": "The URL of the Subnetwork resource for this instance. If the network resource is in legacy mode, do not provide this property. If the network is in auto subnet mode, providing the subnetwork is optional. If the network is in custom subnet mode, then this field should be specified. If you specify this property, you can specify the subnetwork as a full or partial URL. For example, the following are all valid URLs: \n- https://www.googleapis.com/compute/v1/projects/project/regions/region/subnetworks/subnetwork \n- regions/region/subnetworks/subnetwork", + "type": "string" + } + }, + "type": "object" + }, + "NetworkList": { + "description": "Contains a list of networks.", + "id": "NetworkList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of Network resources.", + "items": { + "$ref": "Network" + }, + "type": "array" + }, + "kind": { + "default": "compute#networkList", + "description": "[Output Only] Type of resource. Always compute#networkList for lists of networks.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "NetworkPeering": { + "description": "A network peering attached to a network resource. The message includes the peering name, peer network, peering state, and a flag indicating whether Google Compute Engine should automatically create routes for the peering.", + "id": "NetworkPeering", + "properties": { + "autoCreateRoutes": { + "description": "Whether full mesh connectivity is created and managed automatically. When it is set to true, Google Compute Engine will automatically create and manage the routes between two networks when the state is ACTIVE. Otherwise, user needs to create routes manually to route packets to peer network.", + "type": "boolean" + }, + "name": { + "description": "Name of this peering. Provided by the client when the peering is created. The name must comply with RFC1035. Specifically, the name must be 1-63 characters long and match regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all the following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "type": "string" + }, + "network": { + "description": "The URL of the peer network. It can be either full URL or partial URL. The peer network may belong to a different project. If the partial URL does not contain project, it is assumed that the peer network is in the same project as the current network.", + "type": "string" + }, + "state": { + "description": "[Output Only] State for the peering.", + "enum": [ + "ACTIVE", + "INACTIVE" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "stateDetails": { + "description": "[Output Only] Details about the current state of the peering.", + "type": "string" + } + }, + "type": "object" + }, + "NetworkRoutingConfig": { + "description": "A routing configuration attached to a network resource. The message includes the list of routers associated with the network, and a flag indicating the type of routing behavior to enforce network-wide.", + "id": "NetworkRoutingConfig", + "properties": { + "routingMode": { + "description": "The network-wide routing mode to use. If set to REGIONAL, this network's cloud routers will only advertise routes with subnetworks of this network in the same region as the router. If set to GLOBAL, this network's cloud routers will advertise routes with all subnetworks of this network, across regions.", + "enum": [ + "GLOBAL", + "REGIONAL" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "NetworksAddPeeringRequest": { + "id": "NetworksAddPeeringRequest", + "properties": { + "autoCreateRoutes": { + "description": "Whether Google Compute Engine manages the routes automatically.", + "type": "boolean" + }, + "name": { + "annotations": { + "required": [ + "compute.networks.addPeering" + ] + }, + "description": "Name of the peering, which should conform to RFC1035.", + "type": "string" + }, + "peerNetwork": { + "description": "URL of the peer network. It can be either full URL or partial URL. The peer network may belong to a different project. If the partial URL does not contain project, it is assumed that the peer network is in the same project as the current network.", + "type": "string" + } + }, + "type": "object" + }, + "NetworksRemovePeeringRequest": { + "id": "NetworksRemovePeeringRequest", + "properties": { + "name": { + "description": "Name of the peering, which should conform to RFC1035.", + "type": "string" + } + }, + "type": "object" + }, + "Operation": { + "description": "An Operation resource, used to manage asynchronous API requests. (== resource_for v1.globalOperations ==) (== resource_for beta.globalOperations ==) (== resource_for v1.regionOperations ==) (== resource_for beta.regionOperations ==) (== resource_for v1.zoneOperations ==) (== resource_for beta.zoneOperations ==)", + "id": "Operation", + "properties": { + "clientOperationId": { + "description": "[Output Only] Reserved for future use.", + "type": "string" + }, + "creationTimestamp": { + "description": "[Deprecated] This field is deprecated.", + "type": "string" + }, + "description": { + "description": "[Output Only] A textual description of the operation, which is set when the operation is created.", + "type": "string" + }, + "endTime": { + "description": "[Output Only] The time that this operation was completed. This value is in RFC3339 text format.", + "type": "string" + }, + "error": { + "description": "[Output Only] If errors are generated during processing of the operation, this field will be populated.", + "properties": { + "errors": { + "description": "[Output Only] The array of errors encountered while processing this operation.", + "items": { + "properties": { + "code": { + "description": "[Output Only] The error type identifier for this error.", + "type": "string" + }, + "location": { + "description": "[Output Only] Indicates the field in the request that caused the error. This property is optional.", + "type": "string" + }, + "message": { + "description": "[Output Only] An optional, human-readable error message.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + } + }, + "type": "object" + }, + "httpErrorMessage": { + "description": "[Output Only] If the operation fails, this field contains the HTTP error message that was returned, such as NOT FOUND.", + "type": "string" + }, + "httpErrorStatusCode": { + "description": "[Output Only] If the operation fails, this field contains the HTTP error status code that was returned. For example, a 404 means the resource was not found.", + "format": "int32", + "type": "integer" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64", + "type": "string" + }, + "insertTime": { + "description": "[Output Only] The time that this operation was requested. This value is in RFC3339 text format.", + "type": "string" + }, + "kind": { + "default": "compute#operation", + "description": "[Output Only] Type of the resource. Always compute#operation for Operation resources.", + "type": "string" + }, + "name": { + "description": "[Output Only] Name of the resource.", + "type": "string" + }, + "operationType": { + "description": "[Output Only] The type of operation, such as insert, update, or delete, and so on.", + "type": "string" + }, + "progress": { + "description": "[Output Only] An optional progress indicator that ranges from 0 to 100. There is no requirement that this be linear or support any granularity of operations. This should not be used to guess when the operation will be complete. This number should monotonically increase as the operation progresses.", + "format": "int32", + "type": "integer" + }, + "region": { + "description": "[Output Only] The URL of the region where the operation resides. Only available when performing regional operations. You must specify this field as part of the HTTP request URL. It is not settable as a field in the request body.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + }, + "startTime": { + "description": "[Output Only] The time that this operation was started by the server. This value is in RFC3339 text format.", + "type": "string" + }, + "status": { + "description": "[Output Only] The status of the operation, which can be one of the following: PENDING, RUNNING, or DONE.", + "enum": [ + "DONE", + "PENDING", + "RUNNING" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, + "statusMessage": { + "description": "[Output Only] An optional textual description of the current status of the operation.", + "type": "string" + }, + "targetId": { + "description": "[Output Only] The unique target ID, which identifies a specific incarnation of the target resource.", + "format": "uint64", + "type": "string" + }, + "targetLink": { + "description": "[Output Only] The URL of the resource that the operation modifies. For operations related to creating a snapshot, this points to the persistent disk that the snapshot was created from.", + "type": "string" + }, + "user": { + "description": "[Output Only] User who requested the operation, for example: user@example.com.", + "type": "string" + }, + "warnings": { + "description": "[Output Only] If warning messages are generated during processing of the operation, this field will be populated.", + "items": { + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "zone": { + "description": "[Output Only] The URL of the zone where the operation resides. Only available when performing per-zone operations. You must specify this field as part of the HTTP request URL. It is not settable as a field in the request body.", + "type": "string" + } + }, + "type": "object" + }, + "OperationAggregatedList": { + "id": "OperationAggregatedList", + "properties": { + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "type": "string" + }, + "items": { + "additionalProperties": { + "$ref": "OperationsScopedList", + "description": "[Output Only] Name of the scope containing this set of operations." + }, + "description": "[Output Only] A map of scoped operation lists.", + "type": "object" + }, + "kind": { + "default": "compute#operationAggregatedList", + "description": "[Output Only] Type of resource. Always compute#operationAggregatedList for aggregated lists of operations.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "OperationList": { + "description": "Contains a list of Operation resources.", + "id": "OperationList", + "properties": { + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "type": "string" + }, + "items": { + "description": "[Output Only] A list of Operation resources.", + "items": { + "$ref": "Operation" + }, + "type": "array" + }, + "kind": { + "default": "compute#operationList", + "description": "[Output Only] Type of resource. Always compute#operations for Operations resource.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "OperationsScopedList": { + "id": "OperationsScopedList", + "properties": { + "operations": { + "description": "[Output Only] List of operations contained in this scope.", + "items": { + "$ref": "Operation" + }, + "type": "array" + }, + "warning": { + "description": "[Output Only] Informational warning which replaces the list of operations when the list is empty.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "PathMatcher": { + "description": "A matcher for the path portion of the URL. The BackendService from the longest-matched rule will serve the URL. If no rule was matched, the default service will be used.", + "id": "PathMatcher", + "properties": { + "defaultService": { + "description": "The full or partial URL to the BackendService resource. This will be used if none of the pathRules defined by this PathMatcher is matched by the URL's path portion. For example, the following are all valid URLs to a BackendService resource: \n- https://www.googleapis.com/compute/v1/projects/project/global/backendServices/backendService \n- compute/v1/projects/project/global/backendServices/backendService \n- global/backendServices/backendService", + "type": "string" + }, + "description": { + "description": "An optional description of this resource. Provide this property when you create the resource.", + "type": "string" + }, + "name": { + "description": "The name to which this PathMatcher is referred by the HostRule.", + "type": "string" + }, + "pathRules": { + "description": "The list of path rules.", + "items": { + "$ref": "PathRule" + }, + "type": "array" + } + }, + "type": "object" + }, + "PathRule": { + "description": "A path-matching rule for a URL. If matched, will use the specified BackendService to handle the traffic arriving at this URL.", + "id": "PathRule", + "properties": { + "paths": { + "description": "The list of path patterns to match. Each must start with / and the only place a * is allowed is at the end following a /. The string fed to the path matcher does not include any text after the first ? or #, and those chars are not allowed here.", + "items": { + "type": "string" + }, + "type": "array" + }, + "service": { + "description": "The URL of the BackendService resource if this rule is matched.", + "type": "string" + } + }, + "type": "object" + }, + "Project": { + "description": "A Project resource. For an overview of projects, see Cloud Platform Resource Hierarchy. (== resource_for v1.projects ==) (== resource_for beta.projects ==)", + "id": "Project", + "properties": { + "commonInstanceMetadata": { + "$ref": "Metadata", + "description": "Metadata key/value pairs available to all instances contained in this project. See Custom metadata for more information." + }, + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "defaultServiceAccount": { + "description": "[Output Only] Default service account used by VMs running in this project.", + "type": "string" + }, + "description": { + "description": "An optional textual description of the resource.", + "type": "string" + }, + "enabledFeatures": { + "description": "Restricted features enabled for use on this project.", + "items": { + "type": "string" + }, + "type": "array" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server. This is not the project ID, and is just a unique ID used by Compute Engine to identify resources.", + "format": "uint64", + "type": "string" + }, + "kind": { + "default": "compute#project", + "description": "[Output Only] Type of the resource. Always compute#project for projects.", + "type": "string" + }, + "name": { + "description": "The project ID. For example: my-example-project. Use the project ID to make requests to Compute Engine.", + "type": "string" + }, + "quotas": { + "description": "[Output Only] Quotas assigned to this project.", + "items": { + "$ref": "Quota" + }, + "type": "array" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + }, + "usageExportLocation": { + "$ref": "UsageExportLocation", + "description": "The naming prefix for daily usage reports and the Google Cloud Storage bucket where they are stored." + }, + "xpnProjectStatus": { + "description": "[Output Only] The role this project has in a shared VPC configuration. Currently only HOST projects are differentiated.", + "enum": [ + "HOST", + "UNSPECIFIED_XPN_PROJECT_STATUS" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "ProjectsDisableXpnResourceRequest": { + "id": "ProjectsDisableXpnResourceRequest", + "properties": { + "xpnResource": { + "$ref": "XpnResourceId", + "description": "Service resource (a.k.a service project) ID." + } + }, + "type": "object" + }, + "ProjectsEnableXpnResourceRequest": { + "id": "ProjectsEnableXpnResourceRequest", + "properties": { + "xpnResource": { + "$ref": "XpnResourceId", + "description": "Service resource (a.k.a service project) ID." + } + }, + "type": "object" + }, + "ProjectsGetXpnResources": { + "id": "ProjectsGetXpnResources", + "properties": { + "kind": { + "default": "compute#projectsGetXpnResources", + "description": "[Output Only] Type of resource. Always compute#projectsGetXpnResources for lists of service resources (a.k.a service projects)", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "resources": { + "description": "Service resources (a.k.a service projects) attached to this project as their shared VPC host.", + "items": { + "$ref": "XpnResourceId" + }, + "type": "array" + } + }, + "type": "object" + }, + "ProjectsListXpnHostsRequest": { + "id": "ProjectsListXpnHostsRequest", + "properties": { + "organization": { + "description": "Optional organization ID managed by Cloud Resource Manager, for which to list shared VPC host projects. If not specified, the organization will be inferred from the project.", + "type": "string" + } + }, + "type": "object" + }, + "Quota": { + "description": "A quotas entry.", + "id": "Quota", + "properties": { + "limit": { + "description": "[Output Only] Quota limit for this metric.", + "format": "double", + "type": "number" + }, + "metric": { + "description": "[Output Only] Name of the quota metric.", + "enum": [ + "AUTOSCALERS", + "BACKEND_BUCKETS", + "BACKEND_SERVICES", + "COMMITMENTS", + "CPUS", + "CPUS_ALL_REGIONS", + "DISKS_TOTAL_GB", + "FIREWALLS", + "FORWARDING_RULES", + "HEALTH_CHECKS", + "IMAGES", + "INSTANCES", + "INSTANCE_GROUPS", + "INSTANCE_GROUP_MANAGERS", + "INSTANCE_TEMPLATES", + "INTERCONNECTS", + "INTERNAL_ADDRESSES", + "IN_USE_ADDRESSES", + "LOCAL_SSD_TOTAL_GB", + "NETWORKS", + "NVIDIA_K80_GPUS", + "NVIDIA_P100_GPUS", + "NVIDIA_V100_GPUS", + "PREEMPTIBLE_CPUS", + "PREEMPTIBLE_LOCAL_SSD_GB", + "PREEMPTIBLE_NVIDIA_K80_GPUS", + "PREEMPTIBLE_NVIDIA_P100_GPUS", + "REGIONAL_AUTOSCALERS", + "REGIONAL_INSTANCE_GROUP_MANAGERS", + "ROUTERS", + "ROUTES", + "SECURITY_POLICIES", + "SECURITY_POLICY_RULES", + "SNAPSHOTS", + "SSD_TOTAL_GB", + "SSL_CERTIFICATES", + "STATIC_ADDRESSES", + "SUBNETWORKS", + "TARGET_HTTPS_PROXIES", + "TARGET_HTTP_PROXIES", + "TARGET_INSTANCES", + "TARGET_POOLS", + "TARGET_SSL_PROXIES", + "TARGET_TCP_PROXIES", + "TARGET_VPN_GATEWAYS", + "URL_MAPS", + "VPN_TUNNELS" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "usage": { + "description": "[Output Only] Current usage of this metric.", + "format": "double", + "type": "number" + } + }, + "type": "object" + }, + "Reference": { + "description": "Represents a reference to a resource.", + "id": "Reference", + "properties": { + "kind": { + "default": "compute#reference", + "description": "[Output Only] Type of the resource. Always compute#reference for references.", + "type": "string" + }, + "referenceType": { + "description": "A description of the reference type with no implied semantics. Possible values include: \n- MEMBER_OF", + "type": "string" + }, + "referrer": { + "description": "URL of the resource which refers to the target.", + "type": "string" + }, + "target": { + "description": "URL of the resource to which this reference points.", + "type": "string" + } + }, + "type": "object" + }, + "Region": { + "description": "Region resource. (== resource_for beta.regions ==) (== resource_for v1.regions ==)", + "id": "Region", + "properties": { + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "deprecated": { + "$ref": "DeprecationStatus", + "description": "[Output Only] The deprecation status associated with this region." + }, + "description": { + "description": "[Output Only] Textual description of the resource.", + "type": "string" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64", + "type": "string" + }, + "kind": { + "default": "compute#region", + "description": "[Output Only] Type of the resource. Always compute#region for regions.", + "type": "string" + }, + "name": { + "description": "[Output Only] Name of the resource.", + "type": "string" + }, + "quotas": { + "description": "[Output Only] Quotas assigned to this region.", + "items": { + "$ref": "Quota" + }, + "type": "array" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + }, + "status": { + "description": "[Output Only] Status of the region, either UP or DOWN.", + "enum": [ + "DOWN", + "UP" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "zones": { + "description": "[Output Only] A list of zones available in this region, in the form of resource URLs.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "RegionAutoscalerList": { + "description": "Contains a list of autoscalers.", + "id": "RegionAutoscalerList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of Autoscaler resources.", + "items": { + "$ref": "Autoscaler" + }, + "type": "array" + }, + "kind": { + "default": "compute#regionAutoscalerList", + "description": "Type of resource.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "RegionInstanceGroupList": { + "description": "Contains a list of InstanceGroup resources.", + "id": "RegionInstanceGroupList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of InstanceGroup resources.", + "items": { + "$ref": "InstanceGroup" + }, + "type": "array" + }, + "kind": { + "default": "compute#regionInstanceGroupList", + "description": "The resource type.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "RegionInstanceGroupManagerList": { + "description": "Contains a list of managed instance groups.", + "id": "RegionInstanceGroupManagerList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of InstanceGroupManager resources.", + "items": { + "$ref": "InstanceGroupManager" + }, + "type": "array" + }, + "kind": { + "default": "compute#regionInstanceGroupManagerList", + "description": "[Output Only] The resource type, which is always compute#instanceGroupManagerList for a list of managed instance groups that exist in th regional scope.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "RegionInstanceGroupManagersAbandonInstancesRequest": { + "id": "RegionInstanceGroupManagersAbandonInstancesRequest", + "properties": { + "instances": { + "description": "The URLs of one or more instances to abandon. This can be a full URL or a partial URL, such as zones/[ZONE]/instances/[INSTANCE_NAME].", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "RegionInstanceGroupManagersDeleteInstancesRequest": { + "id": "RegionInstanceGroupManagersDeleteInstancesRequest", + "properties": { + "instances": { + "description": "The URLs of one or more instances to delete. This can be a full URL or a partial URL, such as zones/[ZONE]/instances/[INSTANCE_NAME].", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "RegionInstanceGroupManagersListInstancesResponse": { + "id": "RegionInstanceGroupManagersListInstancesResponse", + "properties": { + "managedInstances": { + "description": "List of managed instances.", + "items": { + "$ref": "ManagedInstance" + }, + "type": "array" + } + }, + "type": "object" + }, + "RegionInstanceGroupManagersRecreateRequest": { + "id": "RegionInstanceGroupManagersRecreateRequest", + "properties": { + "instances": { + "description": "The URLs of one or more instances to recreate. This can be a full URL or a partial URL, such as zones/[ZONE]/instances/[INSTANCE_NAME].", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "RegionInstanceGroupManagersSetTargetPoolsRequest": { + "id": "RegionInstanceGroupManagersSetTargetPoolsRequest", + "properties": { + "fingerprint": { + "description": "Fingerprint of the target pools information, which is a hash of the contents. This field is used for optimistic locking when you update the target pool entries. This field is optional.", + "format": "byte", + "type": "string" + }, + "targetPools": { + "description": "The URL of all TargetPool resources to which instances in the instanceGroup field are added. The target pools automatically apply to all of the instances in the managed instance group.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "RegionInstanceGroupManagersSetTemplateRequest": { + "id": "RegionInstanceGroupManagersSetTemplateRequest", + "properties": { + "instanceTemplate": { + "description": "URL of the InstanceTemplate resource from which all new instances will be created.", + "type": "string" + } + }, + "type": "object" + }, + "RegionInstanceGroupsListInstances": { + "id": "RegionInstanceGroupsListInstances", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of InstanceWithNamedPorts resources.", + "items": { + "$ref": "InstanceWithNamedPorts" + }, + "type": "array" + }, + "kind": { + "default": "compute#regionInstanceGroupsListInstances", + "description": "The resource type.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "RegionInstanceGroupsListInstancesRequest": { + "id": "RegionInstanceGroupsListInstancesRequest", + "properties": { + "instanceState": { + "description": "Instances in which state should be returned. Valid options are: 'ALL', 'RUNNING'. By default, it lists all instances.", + "enum": [ + "ALL", + "RUNNING" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "portName": { + "description": "Name of port user is interested in. It is optional. If it is set, only information about this ports will be returned. If it is not set, all the named ports will be returned. Always lists all instances.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + } + }, + "type": "object" + }, + "RegionInstanceGroupsSetNamedPortsRequest": { + "id": "RegionInstanceGroupsSetNamedPortsRequest", + "properties": { + "fingerprint": { + "description": "The fingerprint of the named ports information for this instance group. Use this optional property to prevent conflicts when multiple users change the named ports settings concurrently. Obtain the fingerprint with the instanceGroups.get method. Then, include the fingerprint in your request to ensure that you do not overwrite changes that were applied from another concurrent request.", + "format": "byte", + "type": "string" + }, + "namedPorts": { + "description": "The list of named ports to set for this instance group.", + "items": { + "$ref": "NamedPort" + }, + "type": "array" + } + }, + "type": "object" + }, + "RegionList": { + "description": "Contains a list of region resources.", + "id": "RegionList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of Region resources.", + "items": { + "$ref": "Region" + }, + "type": "array" + }, + "kind": { + "default": "compute#regionList", + "description": "[Output Only] Type of resource. Always compute#regionList for lists of regions.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "ResourceCommitment": { + "description": "Commitment for a particular resource (a Commitment is composed of one or more of these).", + "id": "ResourceCommitment", + "properties": { + "amount": { + "description": "The amount of the resource purchased (in a type-dependent unit, such as bytes). For vCPUs, this can just be an integer. For memory, this must be provided in MB. Memory must be a multiple of 256 MB, with up to 6.5GB of memory per every vCPU.", + "format": "int64", + "type": "string" + }, + "type": { + "description": "Type of resource for which this commitment applies. Possible values are VCPU and MEMORY", + "enum": [ + "MEMORY", + "UNSPECIFIED", + "VCPU" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "ResourceGroupReference": { + "id": "ResourceGroupReference", + "properties": { + "group": { + "description": "A URI referencing one of the instance groups listed in the backend service.", + "type": "string" + } + }, + "type": "object" + }, + "Route": { + "description": "Represents a Route resource. A route specifies how certain packets should be handled by the network. Routes are associated with instances by tags and the set of routes for a particular instance is called its routing table.\n\nFor each packet leaving an instance, the system searches that instance's routing table for a single best matching route. Routes match packets by destination IP address, preferring smaller or more specific ranges over larger ones. If there is a tie, the system selects the route with the smallest priority value. If there is still a tie, it uses the layer three and four packet headers to select just one of the remaining matching routes. The packet is then forwarded as specified by the nextHop field of the winning route - either to another instance destination, an instance gateway, or a Google Compute Engine-operated gateway.\n\nPackets that do not match any route in the sending instance's routing table are dropped. (== resource_for beta.routes ==) (== resource_for v1.routes ==)", + "id": "Route", + "properties": { + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "description": { + "description": "An optional description of this resource. Provide this property when you create the resource.", + "type": "string" + }, + "destRange": { + "annotations": { + "required": [ + "compute.routes.insert" + ] + }, + "description": "The destination range of outgoing packets that this route applies to. Only IPv4 is supported.", + "type": "string" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64", + "type": "string" + }, + "kind": { + "default": "compute#route", + "description": "[Output Only] Type of this resource. Always compute#routes for Route resources.", + "type": "string" + }, + "name": { + "annotations": { + "required": [ + "compute.routes.insert" + ] + }, + "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "network": { + "annotations": { + "required": [ + "compute.routes.insert" + ] + }, + "description": "Fully-qualified URL of the network that this route applies to.", + "type": "string" + }, + "nextHopGateway": { + "description": "The URL to a gateway that should handle matching packets. You can only specify the internet gateway using a full or partial valid URL: projects/\u003cproject-id\u003e/global/gateways/default-internet-gateway", + "type": "string" + }, + "nextHopInstance": { + "description": "The URL to an instance that should handle matching packets. You can specify this as a full or partial URL. For example:\nhttps://www.googleapis.com/compute/v1/projects/project/zones/zone/instances/", + "type": "string" + }, + "nextHopIp": { + "description": "The network IP address of an instance that should handle matching packets. Only IPv4 is supported.", + "type": "string" + }, + "nextHopNetwork": { + "description": "The URL of the local network if it should handle matching packets.", + "type": "string" + }, + "nextHopPeering": { + "description": "[Output Only] The network peering name that should handle matching packets, which should conform to RFC1035.", + "type": "string" + }, + "nextHopVpnTunnel": { + "description": "The URL to a VpnTunnel that should handle matching packets.", + "type": "string" + }, + "priority": { + "annotations": { + "required": [ + "compute.routes.insert" + ] + }, + "description": "The priority of this route. Priority is used to break ties in cases where there is more than one matching route of equal prefix length. In the case of two routes with equal prefix length, the one with the lowest-numbered priority value wins. Default value is 1000. Valid range is 0 through 65535.", + "format": "uint32", + "type": "integer" + }, + "selfLink": { + "description": "[Output Only] Server-defined fully-qualified URL for this resource.", + "type": "string" + }, + "tags": { + "annotations": { + "required": [ + "compute.routes.insert" + ] + }, + "description": "A list of instance tags to which this route applies.", + "items": { + "type": "string" + }, + "type": "array" + }, + "warnings": { + "description": "[Output Only] If potential misconfigurations are detected for this route, this field will be populated with warning messages.", + "items": { + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + } + }, + "type": "object" + }, + "RouteList": { + "description": "Contains a list of Route resources.", + "id": "RouteList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of Route resources.", + "items": { + "$ref": "Route" + }, + "type": "array" + }, + "kind": { + "default": "compute#routeList", + "description": "Type of resource.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "Router": { + "description": "Router resource.", + "id": "Router", + "properties": { + "bgp": { + "$ref": "RouterBgp", + "description": "BGP information specific to this router." + }, + "bgpPeers": { + "description": "BGP information that needs to be configured into the routing stack to establish the BGP peering. It must specify peer ASN and either interface name, IP, or peer IP. Please refer to RFC4273.", + "items": { + "$ref": "RouterBgpPeer" + }, + "type": "array" + }, + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "description": { + "description": "An optional description of this resource. Provide this property when you create the resource.", + "type": "string" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64", + "type": "string" + }, + "interfaces": { + "description": "Router interfaces. Each interface requires either one linked resource (e.g. linkedVpnTunnel), or IP address and IP address range (e.g. ipRange), or both.", + "items": { + "$ref": "RouterInterface" + }, + "type": "array" + }, + "kind": { + "default": "compute#router", + "description": "[Output Only] Type of resource. Always compute#router for routers.", + "type": "string" + }, + "name": { + "annotations": { + "required": [ + "compute.routers.insert" + ] + }, + "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "network": { + "annotations": { + "required": [ + "compute.routers.insert" + ] + }, + "description": "URI of the network to which this router belongs.", + "type": "string" + }, + "region": { + "description": "[Output Only] URI of the region where the router resides. You must specify this field as part of the HTTP request URL. It is not settable as a field in the request body.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + } + }, + "type": "object" + }, + "RouterAdvertisedIpRange": { + "description": "Description-tagged IP ranges for the router to advertise.", + "id": "RouterAdvertisedIpRange", + "properties": { + "description": { + "description": "User-specified description for the IP range.", + "type": "string" + }, + "range": { + "description": "The IP range to advertise. The value must be a CIDR-formatted string.", + "type": "string" + } + }, + "type": "object" + }, + "RouterAggregatedList": { + "description": "Contains a list of routers.", + "id": "RouterAggregatedList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "additionalProperties": { + "$ref": "RoutersScopedList", + "description": "Name of the scope containing this set of routers." + }, + "description": "A list of Router resources.", + "type": "object" + }, + "kind": { + "default": "compute#routerAggregatedList", + "description": "Type of resource.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "RouterBgp": { + "id": "RouterBgp", + "properties": { + "advertiseMode": { + "description": "User-specified flag to indicate which mode to use for advertisement.", + "enum": [ + "CUSTOM", + "DEFAULT" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "advertisedGroups": { + "description": "User-specified list of prefix groups to advertise in custom mode. This field can only be populated if advertise_mode is CUSTOM and is advertised to all peers of the router. These groups will be advertised in addition to any specified prefixes. Leave this field blank to advertise no custom groups.", + "items": { + "enum": [ + "ALL_SUBNETS" + ], + "enumDescriptions": [ + "" + ], + "type": "string" + }, + "type": "array" + }, + "advertisedIpRanges": { + "description": "User-specified list of individual IP ranges to advertise in custom mode. This field can only be populated if advertise_mode is CUSTOM and is advertised to all peers of the router. These IP ranges will be advertised in addition to any specified groups. Leave this field blank to advertise no custom IP ranges.", + "items": { + "$ref": "RouterAdvertisedIpRange" + }, + "type": "array" + }, + "asn": { + "description": "Local BGP Autonomous System Number (ASN). Must be an RFC6996 private ASN, either 16-bit or 32-bit. The value will be fixed for this router resource. All VPN tunnels that link to this router will have the same local ASN.", + "format": "uint32", + "type": "integer" + } + }, + "type": "object" + }, + "RouterBgpPeer": { + "id": "RouterBgpPeer", + "properties": { + "advertiseMode": { + "description": "User-specified flag to indicate which mode to use for advertisement.", + "enum": [ + "CUSTOM", + "DEFAULT" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "advertisedGroups": { + "description": "User-specified list of prefix groups to advertise in custom mode. This field can only be populated if advertise_mode is CUSTOM and overrides the list defined for the router (in Bgp message). These groups will be advertised in addition to any specified prefixes. Leave this field blank to advertise no custom groups.", + "items": { + "enum": [ + "ALL_SUBNETS" + ], + "enumDescriptions": [ + "" + ], + "type": "string" + }, + "type": "array" + }, + "advertisedIpRanges": { + "description": "User-specified list of individual IP ranges to advertise in custom mode. This field can only be populated if advertise_mode is CUSTOM and overrides the list defined for the router (in Bgp message). These IP ranges will be advertised in addition to any specified groups. Leave this field blank to advertise no custom IP ranges.", + "items": { + "$ref": "RouterAdvertisedIpRange" + }, + "type": "array" + }, + "advertisedRoutePriority": { + "description": "The priority of routes advertised to this BGP peer. In the case where there is more than one matching route of maximum length, the routes with lowest priority value win.", + "format": "uint32", + "type": "integer" + }, + "interfaceName": { + "description": "Name of the interface the BGP peer is associated with.", + "type": "string" + }, + "ipAddress": { + "description": "IP address of the interface inside Google Cloud Platform. Only IPv4 is supported.", + "type": "string" + }, + "name": { + "description": "Name of this BGP peer. The name must be 1-63 characters long and comply with RFC1035.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "peerAsn": { + "description": "Peer BGP Autonomous System Number (ASN). For VPN use case, this value can be different for every tunnel.", + "format": "uint32", + "type": "integer" + }, + "peerIpAddress": { + "description": "IP address of the BGP interface outside Google cloud. Only IPv4 is supported.", + "type": "string" + } + }, + "type": "object" + }, + "RouterInterface": { + "id": "RouterInterface", + "properties": { + "ipRange": { + "description": "IP address and range of the interface. The IP range must be in the RFC3927 link-local IP space. The value must be a CIDR-formatted string, for example: 169.254.0.1/30. NOTE: Do not truncate the address as it represents the IP address of the interface.", + "type": "string" + }, + "linkedInterconnectAttachment": { + "description": "URI of the linked interconnect attachment. It must be in the same region as the router. Each interface can have at most one linked resource and it could either be a VPN Tunnel or an interconnect attachment.", + "type": "string" + }, + "linkedVpnTunnel": { + "description": "URI of the linked VPN tunnel. It must be in the same region as the router. Each interface can have at most one linked resource and it could either be a VPN Tunnel or an interconnect attachment.", + "type": "string" + }, + "name": { + "description": "Name of this interface entry. The name must be 1-63 characters long and comply with RFC1035.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + } + }, + "type": "object" + }, + "RouterList": { + "description": "Contains a list of Router resources.", + "id": "RouterList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of Router resources.", + "items": { + "$ref": "Router" + }, + "type": "array" + }, + "kind": { + "default": "compute#routerList", + "description": "[Output Only] Type of resource. Always compute#router for routers.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "RouterStatus": { + "id": "RouterStatus", + "properties": { + "bestRoutes": { + "description": "Best routes for this router's network.", + "items": { + "$ref": "Route" + }, + "type": "array" + }, + "bestRoutesForRouter": { + "description": "Best routes learned by this router.", + "items": { + "$ref": "Route" + }, + "type": "array" + }, + "bgpPeerStatus": { + "items": { + "$ref": "RouterStatusBgpPeerStatus" + }, + "type": "array" + }, + "network": { + "description": "URI of the network to which this router belongs.", + "type": "string" + } + }, + "type": "object" + }, + "RouterStatusBgpPeerStatus": { + "id": "RouterStatusBgpPeerStatus", + "properties": { + "advertisedRoutes": { + "description": "Routes that were advertised to the remote BGP peer", + "items": { + "$ref": "Route" + }, + "type": "array" + }, + "ipAddress": { + "description": "IP address of the local BGP interface.", + "type": "string" + }, + "linkedVpnTunnel": { + "description": "URL of the VPN tunnel that this BGP peer controls.", + "type": "string" + }, + "name": { + "description": "Name of this BGP peer. Unique within the Routers resource.", + "type": "string" + }, + "numLearnedRoutes": { + "description": "Number of routes learned from the remote BGP Peer.", + "format": "uint32", + "type": "integer" + }, + "peerIpAddress": { + "description": "IP address of the remote BGP interface.", + "type": "string" + }, + "state": { + "description": "BGP state as specified in RFC1771.", + "type": "string" + }, + "status": { + "description": "Status of the BGP peer: {UP, DOWN}", + "enum": [ + "DOWN", + "UNKNOWN", + "UP" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, + "uptime": { + "description": "Time this session has been up. Format: 14 years, 51 weeks, 6 days, 23 hours, 59 minutes, 59 seconds", + "type": "string" + }, + "uptimeSeconds": { + "description": "Time this session has been up, in seconds. Format: 145", + "type": "string" + } + }, + "type": "object" + }, + "RouterStatusResponse": { + "id": "RouterStatusResponse", + "properties": { + "kind": { + "default": "compute#routerStatusResponse", + "description": "Type of resource.", + "type": "string" + }, + "result": { + "$ref": "RouterStatus" + } + }, + "type": "object" + }, + "RoutersPreviewResponse": { + "id": "RoutersPreviewResponse", + "properties": { + "resource": { + "$ref": "Router", + "description": "Preview of given router." + } + }, + "type": "object" + }, + "RoutersScopedList": { + "id": "RoutersScopedList", + "properties": { + "routers": { + "description": "List of routers contained in this scope.", + "items": { + "$ref": "Router" + }, + "type": "array" + }, + "warning": { + "description": "Informational warning which replaces the list of routers when the list is empty.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "SSLHealthCheck": { + "id": "SSLHealthCheck", + "properties": { + "port": { + "description": "The TCP port number for the health check request. The default value is 443. Valid values are 1 through 65535.", + "format": "int32", + "type": "integer" + }, + "portName": { + "description": "Port name as defined in InstanceGroup#NamedPort#name. If both port and port_name are defined, port takes precedence.", + "type": "string" + }, + "proxyHeader": { + "description": "Specifies the type of proxy header to append before sending data to the backend, either NONE or PROXY_V1. The default is NONE.", + "enum": [ + "NONE", + "PROXY_V1" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "request": { + "description": "The application data to send once the SSL connection has been established (default value is empty). If both request and response are empty, the connection establishment alone will indicate health. The request data can only be ASCII.", + "type": "string" + }, + "response": { + "description": "The bytes to match against the beginning of the response data. If left empty (the default value), any response will indicate health. The response data can only be ASCII.", + "type": "string" + } + }, + "type": "object" + }, + "Scheduling": { + "description": "Sets the scheduling options for an Instance.", + "id": "Scheduling", + "properties": { + "automaticRestart": { + "description": "Specifies whether the instance should be automatically restarted if it is terminated by Compute Engine (not terminated by a user). You can only set the automatic restart option for standard instances. Preemptible instances cannot be automatically restarted.\n\nBy default, this is set to true so an instance is automatically restarted if it is terminated by Compute Engine.", + "type": "boolean" + }, + "onHostMaintenance": { + "description": "Defines the maintenance behavior for this instance. For standard instances, the default behavior is MIGRATE. For preemptible instances, the default and only possible behavior is TERMINATE. For more information, see Setting Instance Scheduling Options.", + "enum": [ + "MIGRATE", + "TERMINATE" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "preemptible": { + "description": "Defines whether the instance is preemptible. This can only be set during instance creation, it cannot be set or changed after the instance has been created.", + "type": "boolean" + } + }, + "type": "object" + }, + "SerialPortOutput": { + "description": "An instance's serial console output.", + "id": "SerialPortOutput", + "properties": { + "contents": { + "description": "[Output Only] The contents of the console output.", + "type": "string" + }, + "kind": { + "default": "compute#serialPortOutput", + "description": "[Output Only] Type of the resource. Always compute#serialPortOutput for serial port output.", + "type": "string" + }, + "next": { + "description": "[Output Only] The position of the next byte of content from the serial console output. Use this value in the next request as the start parameter.", + "format": "int64", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "start": { + "description": "The starting byte position of the output that was returned. This should match the start parameter sent with the request. If the serial console output exceeds the size of the buffer, older output will be overwritten by newer content and the start values will be mismatched.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "ServiceAccount": { + "description": "A service account.", + "id": "ServiceAccount", + "properties": { + "email": { + "description": "Email address of the service account.", + "type": "string" + }, + "scopes": { + "description": "The list of scopes to be made available for this service account.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "Snapshot": { + "description": "A persistent disk snapshot resource. (== resource_for beta.snapshots ==) (== resource_for v1.snapshots ==)", + "id": "Snapshot", + "properties": { + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "description": { + "description": "An optional description of this resource. Provide this property when you create the resource.", + "type": "string" + }, + "diskSizeGb": { + "description": "[Output Only] Size of the snapshot, specified in GB.", + "format": "int64", + "type": "string" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64", + "type": "string" + }, + "kind": { + "default": "compute#snapshot", + "description": "[Output Only] Type of the resource. Always compute#snapshot for Snapshot resources.", + "type": "string" + }, + "labelFingerprint": { + "description": "A fingerprint for the labels being applied to this snapshot, which is essentially a hash of the labels set used for optimistic locking. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update labels. You must always provide an up-to-date fingerprint hash in order to update or change labels.\n\nTo see the latest fingerprint, make a get() request to retrieve a snapshot.", + "format": "byte", + "type": "string" + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Labels to apply to this snapshot. These can be later modified by the setLabels method. Label values may be empty.", + "type": "object" + }, + "licenseCodes": { + "description": "Integer license codes indicating which licenses are attached to this snapshot.", + "items": { + "format": "int64", + "type": "string" + }, + "type": "array" + }, + "licenses": { + "description": "[Output Only] A list of public visible licenses that apply to this snapshot. This can be because the original image had licenses attached (such as a Windows image).", + "items": { + "type": "string" + }, + "type": "array" + }, + "name": { + "description": "Name of the resource; provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + }, + "snapshotEncryptionKey": { + "$ref": "CustomerEncryptionKey", + "description": "Encrypts the snapshot using a customer-supplied encryption key.\n\nAfter you encrypt a snapshot using a customer-supplied key, you must provide the same key if you use the image later For example, you must provide the encryption key when you create a disk from the encrypted snapshot in a future request.\n\nCustomer-supplied encryption keys do not protect access to metadata of the disk.\n\nIf you do not provide an encryption key when creating the snapshot, then the snapshot will be encrypted using an automatically generated key and you do not need to provide a key to use the snapshot later." + }, + "sourceDisk": { + "description": "[Output Only] The source disk used to create this snapshot.", + "type": "string" + }, + "sourceDiskEncryptionKey": { + "$ref": "CustomerEncryptionKey", + "description": "The customer-supplied encryption key of the source disk. Required if the source disk is protected by a customer-supplied encryption key." + }, + "sourceDiskId": { + "description": "[Output Only] The ID value of the disk used to create this snapshot. This value may be used to determine whether the snapshot was taken from the current or a previous instance of a given disk name.", + "type": "string" + }, + "status": { + "description": "[Output Only] The status of the snapshot. This can be CREATING, DELETING, FAILED, READY, or UPLOADING.", + "enum": [ + "CREATING", + "DELETING", + "FAILED", + "READY", + "UPLOADING" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "storageBytes": { + "description": "[Output Only] A size of the storage used by the snapshot. As snapshots share storage, this number is expected to change with snapshot creation/deletion.", + "format": "int64", + "type": "string" + }, + "storageBytesStatus": { + "description": "[Output Only] An indicator whether storageBytes is in a stable state or it is being adjusted as a result of shared storage reallocation. This status can either be UPDATING, meaning the size of the snapshot is being updated, or UP_TO_DATE, meaning the size of the snapshot is up-to-date.", + "enum": [ + "UPDATING", + "UP_TO_DATE" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "SnapshotList": { + "description": "Contains a list of Snapshot resources.", + "id": "SnapshotList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of Snapshot resources.", + "items": { + "$ref": "Snapshot" + }, + "type": "array" + }, + "kind": { + "default": "compute#snapshotList", + "description": "Type of resource.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "SslCertificate": { + "description": "An SslCertificate resource. This resource provides a mechanism to upload an SSL key and certificate to the load balancer to serve secure connections from the user. (== resource_for beta.sslCertificates ==) (== resource_for v1.sslCertificates ==)", + "id": "SslCertificate", + "properties": { + "certificate": { + "description": "A local certificate file. The certificate must be in PEM format. The certificate chain must be no greater than 5 certs long. The chain must include at least one intermediate cert.", + "type": "string" + }, + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "description": { + "description": "An optional description of this resource. Provide this property when you create the resource.", + "type": "string" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64", + "type": "string" + }, + "kind": { + "default": "compute#sslCertificate", + "description": "[Output Only] Type of the resource. Always compute#sslCertificate for SSL certificates.", + "type": "string" + }, + "name": { + "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "privateKey": { + "description": "A write-only private key in PEM format. Only insert requests will include this field.", + "type": "string" + }, + "selfLink": { + "description": "[Output only] Server-defined URL for the resource.", + "type": "string" + } + }, + "type": "object" + }, + "SslCertificateList": { + "description": "Contains a list of SslCertificate resources.", + "id": "SslCertificateList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of SslCertificate resources.", + "items": { + "$ref": "SslCertificate" + }, + "type": "array" + }, + "kind": { + "default": "compute#sslCertificateList", + "description": "Type of resource.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "SslPoliciesList": { + "id": "SslPoliciesList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of SslPolicy resources.", + "items": { + "$ref": "SslPolicy" + }, + "type": "array" + }, + "kind": { + "default": "compute#sslPoliciesList", + "description": "[Output Only] Type of the resource. Always compute#sslPoliciesList for lists of sslPolicies.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "SslPoliciesListAvailableFeaturesResponse": { + "id": "SslPoliciesListAvailableFeaturesResponse", + "properties": { + "features": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "SslPolicy": { + "description": "A SSL policy specifies the server-side support for SSL features. This can be attached to a TargetHttpsProxy or a TargetSslProxy. This affects connections between clients and the HTTPS or SSL proxy load balancer. They do not affect the connection between the load balancers and the backends.", + "id": "SslPolicy", + "properties": { + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "customFeatures": { + "description": "List of features enabled when the selected profile is CUSTOM. The\n- method returns the set of features that can be specified in this list. This field must be empty if the profile is not CUSTOM.", + "items": { + "type": "string" + }, + "type": "array" + }, + "description": { + "description": "An optional description of this resource. Provide this property when you create the resource.", + "type": "string" + }, + "enabledFeatures": { + "description": "[Output Only] The list of features enabled in the SSL policy.", + "items": { + "type": "string" + }, + "type": "array" + }, + "fingerprint": { + "description": "Fingerprint of this resource. A hash of the contents stored in this object. This field is used in optimistic locking. This field will be ignored when inserting a SslPolicy. An up-to-date fingerprint must be provided in order to update the SslPolicy.", + "format": "byte", + "type": "string" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64", + "type": "string" + }, + "kind": { + "default": "compute#sslPolicy", + "description": "[Output only] Type of the resource. Always compute#sslPolicyfor SSL policies.", + "type": "string" + }, + "minTlsVersion": { + "description": "The minimum version of SSL protocol that can be used by the clients to establish a connection with the load balancer. This can be one of TLS_1_0, TLS_1_1, TLS_1_2, TLS_1_3.", + "enum": [ + "TLS_1_0", + "TLS_1_1", + "TLS_1_2", + "TLS_1_3" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ], + "type": "string" + }, + "name": { + "description": "Name of the resource. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "profile": { + "description": "Profile specifies the set of SSL features that can be used by the load balancer when negotiating SSL with clients. This can be one of COMPATIBLE, MODERN, RESTRICTED, or CUSTOM. If using CUSTOM, the set of SSL features to enable must be specified in the customFeatures field.", + "enum": [ + "COMPATIBLE", + "CUSTOM", + "MODERN", + "RESTRICTED" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ], + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + }, + "warnings": { + "description": "[Output Only] If potential misconfigurations are detected for this SSL policy, this field will be populated with warning messages.", + "items": { + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + } + }, + "type": "object" + }, + "SslPolicyReference": { + "id": "SslPolicyReference", + "properties": { + "sslPolicy": { + "description": "URL of the SSL policy resource. Set this to empty string to clear any existing SSL policy associated with the target proxy resource.", + "type": "string" + } + }, + "type": "object" + }, + "Subnetwork": { + "description": "A Subnetwork resource. (== resource_for beta.subnetworks ==) (== resource_for v1.subnetworks ==)", + "id": "Subnetwork", + "properties": { + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "description": { + "description": "An optional description of this resource. Provide this property when you create the resource. This field can be set only at resource creation time.", + "type": "string" + }, + "fingerprint": { + "description": "Fingerprint of this resource. A hash of the contents stored in this object. This field is used in optimistic locking. This field will be ignored when inserting a Subnetwork. An up-to-date fingerprint must be provided in order to update the Subnetwork.", + "format": "byte", + "type": "string" + }, + "gatewayAddress": { + "description": "[Output Only] The gateway address for default routes to reach destination addresses outside this subnetwork.", + "type": "string" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64", + "type": "string" + }, + "ipCidrRange": { + "description": "The range of internal addresses that are owned by this subnetwork. Provide this property when you create the subnetwork. For example, 10.0.0.0/8 or 192.168.0.0/16. Ranges must be unique and non-overlapping within a network. Only IPv4 is supported. This field can be set only at resource creation time.", + "type": "string" + }, + "kind": { + "default": "compute#subnetwork", + "description": "[Output Only] Type of the resource. Always compute#subnetwork for Subnetwork resources.", + "type": "string" + }, + "name": { + "description": "The name of the resource, provided by the client when initially creating the resource. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "network": { + "description": "The URL of the network to which this subnetwork belongs, provided by the client when initially creating the subnetwork. Only networks that are in the distributed mode can have subnetworks. This field can be set only at resource creation time.", + "type": "string" + }, + "privateIpGoogleAccess": { + "description": "Whether the VMs in this subnet can access Google services without assigned external IP addresses. This field can be both set at resource creation time and updated using setPrivateIpGoogleAccess.", + "type": "boolean" + }, + "region": { + "description": "URL of the region where the Subnetwork resides. This field can be set only at resource creation time.", + "type": "string" + }, + "secondaryIpRanges": { + "description": "An array of configurations for secondary IP ranges for VM instances contained in this subnetwork. The primary IP of such VM must belong to the primary ipCidrRange of the subnetwork. The alias IPs may belong to either primary or secondary ranges.", + "items": { + "$ref": "SubnetworkSecondaryRange" + }, + "type": "array" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + } + }, + "type": "object" + }, + "SubnetworkAggregatedList": { + "id": "SubnetworkAggregatedList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "additionalProperties": { + "$ref": "SubnetworksScopedList", + "description": "Name of the scope containing this set of Subnetworks." + }, + "description": "A list of SubnetworksScopedList resources.", + "type": "object" + }, + "kind": { + "default": "compute#subnetworkAggregatedList", + "description": "[Output Only] Type of resource. Always compute#subnetworkAggregatedList for aggregated lists of subnetworks.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "SubnetworkList": { + "description": "Contains a list of Subnetwork resources.", + "id": "SubnetworkList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of Subnetwork resources.", + "items": { + "$ref": "Subnetwork" + }, + "type": "array" + }, + "kind": { + "default": "compute#subnetworkList", + "description": "[Output Only] Type of resource. Always compute#subnetworkList for lists of subnetworks.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "SubnetworkSecondaryRange": { + "description": "Represents a secondary IP range of a subnetwork.", + "id": "SubnetworkSecondaryRange", + "properties": { + "ipCidrRange": { + "description": "The range of IP addresses belonging to this subnetwork secondary range. Provide this property when you create the subnetwork. Ranges must be unique and non-overlapping with all primary and secondary IP ranges within a network. Only IPv4 is supported.", + "type": "string" + }, + "rangeName": { + "description": "The name associated with this subnetwork secondary range, used when adding an alias IP range to a VM instance. The name must be 1-63 characters long, and comply with RFC1035. The name must be unique within the subnetwork.", + "type": "string" + } + }, + "type": "object" + }, + "SubnetworksExpandIpCidrRangeRequest": { + "id": "SubnetworksExpandIpCidrRangeRequest", + "properties": { + "ipCidrRange": { + "description": "The IP (in CIDR format or netmask) of internal addresses that are legal on this Subnetwork. This range should be disjoint from other subnetworks within this network. This range can only be larger than (i.e. a superset of) the range previously defined before the update.", + "type": "string" + } + }, + "type": "object" + }, + "SubnetworksScopedList": { + "id": "SubnetworksScopedList", + "properties": { + "subnetworks": { + "description": "List of subnetworks contained in this scope.", + "items": { + "$ref": "Subnetwork" + }, + "type": "array" + }, + "warning": { + "description": "An informational warning that appears when the list of addresses is empty.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "SubnetworksSetPrivateIpGoogleAccessRequest": { + "id": "SubnetworksSetPrivateIpGoogleAccessRequest", + "properties": { + "privateIpGoogleAccess": { + "type": "boolean" + } + }, + "type": "object" + }, + "TCPHealthCheck": { + "id": "TCPHealthCheck", + "properties": { + "port": { + "description": "The TCP port number for the health check request. The default value is 80. Valid values are 1 through 65535.", + "format": "int32", + "type": "integer" + }, + "portName": { + "description": "Port name as defined in InstanceGroup#NamedPort#name. If both port and port_name are defined, port takes precedence.", + "type": "string" + }, + "proxyHeader": { + "description": "Specifies the type of proxy header to append before sending data to the backend, either NONE or PROXY_V1. The default is NONE.", + "enum": [ + "NONE", + "PROXY_V1" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "request": { + "description": "The application data to send once the TCP connection has been established (default value is empty). If both request and response are empty, the connection establishment alone will indicate health. The request data can only be ASCII.", + "type": "string" + }, + "response": { + "description": "The bytes to match against the beginning of the response data. If left empty (the default value), any response will indicate health. The response data can only be ASCII.", + "type": "string" + } + }, + "type": "object" + }, + "Tags": { + "description": "A set of instance tags.", + "id": "Tags", + "properties": { + "fingerprint": { + "description": "Specifies a fingerprint for this request, which is essentially a hash of the metadata's contents and used for optimistic locking. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update metadata. You must always provide an up-to-date fingerprint hash in order to update or change metadata.\n\nTo see the latest fingerprint, make get() request to the instance.", + "format": "byte", + "type": "string" + }, + "items": { + "description": "An array of tags. Each tag must be 1-63 characters long, and comply with RFC1035.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "TargetHttpProxy": { + "description": "A TargetHttpProxy resource. This resource defines an HTTP proxy. (== resource_for beta.targetHttpProxies ==) (== resource_for v1.targetHttpProxies ==)", + "id": "TargetHttpProxy", + "properties": { + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "description": { + "description": "An optional description of this resource. Provide this property when you create the resource.", + "type": "string" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64", + "type": "string" + }, + "kind": { + "default": "compute#targetHttpProxy", + "description": "[Output Only] Type of resource. Always compute#targetHttpProxy for target HTTP proxies.", + "type": "string" + }, + "name": { + "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + }, + "urlMap": { + "description": "URL to the UrlMap resource that defines the mapping from URL to the BackendService.", + "type": "string" + } + }, + "type": "object" + }, + "TargetHttpProxyList": { + "description": "A list of TargetHttpProxy resources.", + "id": "TargetHttpProxyList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of TargetHttpProxy resources.", + "items": { + "$ref": "TargetHttpProxy" + }, + "type": "array" + }, + "kind": { + "default": "compute#targetHttpProxyList", + "description": "Type of resource. Always compute#targetHttpProxyList for lists of target HTTP proxies.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "TargetHttpsProxiesSetSslCertificatesRequest": { + "id": "TargetHttpsProxiesSetSslCertificatesRequest", + "properties": { + "sslCertificates": { + "description": "New set of SslCertificate resources to associate with this TargetHttpsProxy resource. Currently exactly one SslCertificate resource must be specified.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "TargetHttpsProxy": { + "description": "A TargetHttpsProxy resource. This resource defines an HTTPS proxy. (== resource_for beta.targetHttpsProxies ==) (== resource_for v1.targetHttpsProxies ==)", + "id": "TargetHttpsProxy", + "properties": { + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "description": { + "description": "An optional description of this resource. Provide this property when you create the resource.", + "type": "string" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64", + "type": "string" + }, + "kind": { + "default": "compute#targetHttpsProxy", + "description": "[Output Only] Type of resource. Always compute#targetHttpsProxy for target HTTPS proxies.", + "type": "string" + }, + "name": { + "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + }, + "sslCertificates": { + "description": "URLs to SslCertificate resources that are used to authenticate connections between users and the load balancer. Currently, exactly one SSL certificate must be specified.", + "items": { + "type": "string" + }, + "type": "array" + }, + "sslPolicy": { + "description": "URL of SslPolicy resource that will be associated with the TargetHttpsProxy resource. If not set, the TargetHttpsProxy resource will not have any SSL policy configured.", + "type": "string" + }, + "urlMap": { + "description": "A fully-qualified or valid partial URL to the UrlMap resource that defines the mapping from URL to the BackendService. For example, the following are all valid URLs for specifying a URL map: \n- https://www.googleapis.compute/v1/projects/project/global/urlMaps/url-map \n- projects/project/global/urlMaps/url-map \n- global/urlMaps/url-map", + "type": "string" + } + }, + "type": "object" + }, + "TargetHttpsProxyList": { + "description": "Contains a list of TargetHttpsProxy resources.", + "id": "TargetHttpsProxyList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of TargetHttpsProxy resources.", + "items": { + "$ref": "TargetHttpsProxy" + }, + "type": "array" + }, + "kind": { + "default": "compute#targetHttpsProxyList", + "description": "Type of resource. Always compute#targetHttpsProxyList for lists of target HTTPS proxies.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "TargetInstance": { + "description": "A TargetInstance resource. This resource defines an endpoint instance that terminates traffic of certain protocols. (== resource_for beta.targetInstances ==) (== resource_for v1.targetInstances ==)", + "id": "TargetInstance", + "properties": { + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "description": { + "description": "An optional description of this resource. Provide this property when you create the resource.", + "type": "string" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64", + "type": "string" + }, + "instance": { + "description": "A URL to the virtual machine instance that handles traffic for this target instance. When creating a target instance, you can provide the fully-qualified URL or a valid partial URL to the desired virtual machine. For example, the following are all valid URLs: \n- https://www.googleapis.com/compute/v1/projects/project/zones/zone/instances/instance \n- projects/project/zones/zone/instances/instance \n- zones/zone/instances/instance", + "type": "string" + }, + "kind": { + "default": "compute#targetInstance", + "description": "[Output Only] The type of the resource. Always compute#targetInstance for target instances.", + "type": "string" + }, + "name": { + "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "natPolicy": { + "description": "NAT option controlling how IPs are NAT'ed to the instance. Currently only NO_NAT (default value) is supported.", + "enum": [ + "NO_NAT" + ], + "enumDescriptions": [ + "" + ], + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + }, + "zone": { + "description": "[Output Only] URL of the zone where the target instance resides. You must specify this field as part of the HTTP request URL. It is not settable as a field in the request body.", + "type": "string" + } + }, + "type": "object" + }, + "TargetInstanceAggregatedList": { + "id": "TargetInstanceAggregatedList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "additionalProperties": { + "$ref": "TargetInstancesScopedList", + "description": "Name of the scope containing this set of target instances." + }, + "description": "A list of TargetInstance resources.", + "type": "object" + }, + "kind": { + "default": "compute#targetInstanceAggregatedList", + "description": "Type of resource.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "TargetInstanceList": { + "description": "Contains a list of TargetInstance resources.", + "id": "TargetInstanceList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of TargetInstance resources.", + "items": { + "$ref": "TargetInstance" + }, + "type": "array" + }, + "kind": { + "default": "compute#targetInstanceList", + "description": "Type of resource.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "TargetInstancesScopedList": { + "id": "TargetInstancesScopedList", + "properties": { + "targetInstances": { + "description": "List of target instances contained in this scope.", + "items": { + "$ref": "TargetInstance" + }, + "type": "array" + }, + "warning": { + "description": "Informational warning which replaces the list of addresses when the list is empty.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "TargetPool": { + "description": "A TargetPool resource. This resource defines a pool of instances, an associated HttpHealthCheck resource, and the fallback target pool. (== resource_for beta.targetPools ==) (== resource_for v1.targetPools ==)", + "id": "TargetPool", + "properties": { + "backupPool": { + "description": "This field is applicable only when the containing target pool is serving a forwarding rule as the primary pool, and its failoverRatio field is properly set to a value between [0, 1].\n\nbackupPool and failoverRatio together define the fallback behavior of the primary target pool: if the ratio of the healthy instances in the primary pool is at or below failoverRatio, traffic arriving at the load-balanced IP will be directed to the backup pool.\n\nIn case where failoverRatio and backupPool are not set, or all the instances in the backup pool are unhealthy, the traffic will be directed back to the primary pool in the \"force\" mode, where traffic will be spread to the healthy instances with the best effort, or to all instances when no instance is healthy.", + "type": "string" + }, + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "description": { + "description": "An optional description of this resource. Provide this property when you create the resource.", + "type": "string" + }, + "failoverRatio": { + "description": "This field is applicable only when the containing target pool is serving a forwarding rule as the primary pool (i.e., not as a backup pool to some other target pool). The value of the field must be in [0, 1].\n\nIf set, backupPool must also be set. They together define the fallback behavior of the primary target pool: if the ratio of the healthy instances in the primary pool is at or below this number, traffic arriving at the load-balanced IP will be directed to the backup pool.\n\nIn case where failoverRatio is not set or all the instances in the backup pool are unhealthy, the traffic will be directed back to the primary pool in the \"force\" mode, where traffic will be spread to the healthy instances with the best effort, or to all instances when no instance is healthy.", + "format": "float", + "type": "number" + }, + "healthChecks": { + "description": "The URL of the HttpHealthCheck resource. A member instance in this pool is considered healthy if and only if the health checks pass. An empty list means all member instances will be considered healthy at all times. Only HttpHealthChecks are supported. Only one health check may be specified.", + "items": { + "type": "string" + }, + "type": "array" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64", + "type": "string" + }, + "instances": { + "description": "A list of resource URLs to the virtual machine instances serving this pool. They must live in zones contained in the same region as this pool.", + "items": { + "type": "string" + }, + "type": "array" + }, + "kind": { + "default": "compute#targetPool", + "description": "[Output Only] Type of the resource. Always compute#targetPool for target pools.", + "type": "string" + }, + "name": { + "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "region": { + "description": "[Output Only] URL of the region where the target pool resides.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + }, + "sessionAffinity": { + "description": "Sesssion affinity option, must be one of the following values:\nNONE: Connections from the same client IP may go to any instance in the pool.\nCLIENT_IP: Connections from the same client IP will go to the same instance in the pool while that instance remains healthy.\nCLIENT_IP_PROTO: Connections from the same client IP with the same IP protocol will go to the same instance in the pool while that instance remains healthy.", + "enum": [ + "CLIENT_IP", + "CLIENT_IP_PORT_PROTO", + "CLIENT_IP_PROTO", + "GENERATED_COOKIE", + "NONE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "TargetPoolAggregatedList": { + "id": "TargetPoolAggregatedList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "additionalProperties": { + "$ref": "TargetPoolsScopedList", + "description": "Name of the scope containing this set of target pools." + }, + "description": "A list of TargetPool resources.", + "type": "object" + }, + "kind": { + "default": "compute#targetPoolAggregatedList", + "description": "[Output Only] Type of resource. Always compute#targetPoolAggregatedList for aggregated lists of target pools.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "TargetPoolInstanceHealth": { + "id": "TargetPoolInstanceHealth", + "properties": { + "healthStatus": { + "items": { + "$ref": "HealthStatus" + }, + "type": "array" + }, + "kind": { + "default": "compute#targetPoolInstanceHealth", + "description": "[Output Only] Type of resource. Always compute#targetPoolInstanceHealth when checking the health of an instance.", + "type": "string" + } + }, + "type": "object" + }, + "TargetPoolList": { + "description": "Contains a list of TargetPool resources.", + "id": "TargetPoolList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of TargetPool resources.", + "items": { + "$ref": "TargetPool" + }, + "type": "array" + }, + "kind": { + "default": "compute#targetPoolList", + "description": "[Output Only] Type of resource. Always compute#targetPoolList for lists of target pools.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "TargetPoolsAddHealthCheckRequest": { + "id": "TargetPoolsAddHealthCheckRequest", + "properties": { + "healthChecks": { + "description": "The HttpHealthCheck to add to the target pool.", + "items": { + "$ref": "HealthCheckReference" + }, + "type": "array" + } + }, + "type": "object" + }, + "TargetPoolsAddInstanceRequest": { + "id": "TargetPoolsAddInstanceRequest", + "properties": { + "instances": { + "description": "A full or partial URL to an instance to add to this target pool. This can be a full or partial URL. For example, the following are valid URLs: \n- https://www.googleapis.com/compute/v1/projects/project-id/zones/zone/instances/instance-name \n- projects/project-id/zones/zone/instances/instance-name \n- zones/zone/instances/instance-name", + "items": { + "$ref": "InstanceReference" + }, + "type": "array" + } + }, + "type": "object" + }, + "TargetPoolsRemoveHealthCheckRequest": { + "id": "TargetPoolsRemoveHealthCheckRequest", + "properties": { + "healthChecks": { + "description": "Health check URL to be removed. This can be a full or valid partial URL. For example, the following are valid URLs: \n- https://www.googleapis.com/compute/beta/projects/project/global/httpHealthChecks/health-check \n- projects/project/global/httpHealthChecks/health-check \n- global/httpHealthChecks/health-check", + "items": { + "$ref": "HealthCheckReference" + }, + "type": "array" + } + }, + "type": "object" + }, + "TargetPoolsRemoveInstanceRequest": { + "id": "TargetPoolsRemoveInstanceRequest", + "properties": { + "instances": { + "description": "URLs of the instances to be removed from target pool.", + "items": { + "$ref": "InstanceReference" + }, + "type": "array" + } + }, + "type": "object" + }, + "TargetPoolsScopedList": { + "id": "TargetPoolsScopedList", + "properties": { + "targetPools": { + "description": "List of target pools contained in this scope.", + "items": { + "$ref": "TargetPool" + }, + "type": "array" + }, + "warning": { + "description": "Informational warning which replaces the list of addresses when the list is empty.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "TargetReference": { + "id": "TargetReference", + "properties": { + "target": { + "type": "string" + } + }, + "type": "object" + }, + "TargetSslProxiesSetBackendServiceRequest": { + "id": "TargetSslProxiesSetBackendServiceRequest", + "properties": { + "service": { + "description": "The URL of the new BackendService resource for the targetSslProxy.", + "type": "string" + } + }, + "type": "object" + }, + "TargetSslProxiesSetProxyHeaderRequest": { + "id": "TargetSslProxiesSetProxyHeaderRequest", + "properties": { + "proxyHeader": { + "description": "The new type of proxy header to append before sending data to the backend. NONE or PROXY_V1 are allowed.", + "enum": [ + "NONE", + "PROXY_V1" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "TargetSslProxiesSetSslCertificatesRequest": { + "id": "TargetSslProxiesSetSslCertificatesRequest", + "properties": { + "sslCertificates": { + "description": "New set of URLs to SslCertificate resources to associate with this TargetSslProxy. Currently exactly one ssl certificate must be specified.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "TargetSslProxy": { + "description": "A TargetSslProxy resource. This resource defines an SSL proxy. (== resource_for beta.targetSslProxies ==) (== resource_for v1.targetSslProxies ==)", + "id": "TargetSslProxy", + "properties": { + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "description": { + "description": "An optional description of this resource. Provide this property when you create the resource.", + "type": "string" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64", + "type": "string" + }, + "kind": { + "default": "compute#targetSslProxy", + "description": "[Output Only] Type of the resource. Always compute#targetSslProxy for target SSL proxies.", + "type": "string" + }, + "name": { + "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "proxyHeader": { + "description": "Specifies the type of proxy header to append before sending data to the backend, either NONE or PROXY_V1. The default is NONE.", + "enum": [ + "NONE", + "PROXY_V1" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + }, + "service": { + "description": "URL to the BackendService resource.", + "type": "string" + }, + "sslCertificates": { + "description": "URLs to SslCertificate resources that are used to authenticate connections to Backends. Currently exactly one SSL certificate must be specified.", + "items": { + "type": "string" + }, + "type": "array" + }, + "sslPolicy": { + "description": "URL of SslPolicy resource that will be associated with the TargetSslProxy resource. If not set, the TargetSslProxy resource will not have any SSL policy configured.", + "type": "string" + } + }, + "type": "object" + }, + "TargetSslProxyList": { + "description": "Contains a list of TargetSslProxy resources.", + "id": "TargetSslProxyList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of TargetSslProxy resources.", + "items": { + "$ref": "TargetSslProxy" + }, + "type": "array" + }, + "kind": { + "default": "compute#targetSslProxyList", + "description": "Type of resource.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "TargetTcpProxiesSetBackendServiceRequest": { + "id": "TargetTcpProxiesSetBackendServiceRequest", + "properties": { + "service": { + "description": "The URL of the new BackendService resource for the targetTcpProxy.", + "type": "string" + } + }, + "type": "object" + }, + "TargetTcpProxiesSetProxyHeaderRequest": { + "id": "TargetTcpProxiesSetProxyHeaderRequest", + "properties": { + "proxyHeader": { + "description": "The new type of proxy header to append before sending data to the backend. NONE or PROXY_V1 are allowed.", + "enum": [ + "NONE", + "PROXY_V1" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "TargetTcpProxy": { + "description": "A TargetTcpProxy resource. This resource defines a TCP proxy. (== resource_for beta.targetTcpProxies ==) (== resource_for v1.targetTcpProxies ==)", + "id": "TargetTcpProxy", + "properties": { + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "description": { + "description": "An optional description of this resource. Provide this property when you create the resource.", + "type": "string" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64", + "type": "string" + }, + "kind": { + "default": "compute#targetTcpProxy", + "description": "[Output Only] Type of the resource. Always compute#targetTcpProxy for target TCP proxies.", + "type": "string" + }, + "name": { + "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "proxyHeader": { + "description": "Specifies the type of proxy header to append before sending data to the backend, either NONE or PROXY_V1. The default is NONE.", + "enum": [ + "NONE", + "PROXY_V1" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + }, + "service": { + "description": "URL to the BackendService resource.", + "type": "string" + } + }, + "type": "object" + }, + "TargetTcpProxyList": { + "description": "Contains a list of TargetTcpProxy resources.", + "id": "TargetTcpProxyList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of TargetTcpProxy resources.", + "items": { + "$ref": "TargetTcpProxy" + }, + "type": "array" + }, + "kind": { + "default": "compute#targetTcpProxyList", + "description": "Type of resource.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "TargetVpnGateway": { + "description": "Represents a Target VPN gateway resource. (== resource_for beta.targetVpnGateways ==) (== resource_for v1.targetVpnGateways ==)", + "id": "TargetVpnGateway", + "properties": { + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "description": { + "description": "An optional description of this resource. Provide this property when you create the resource.", + "type": "string" + }, + "forwardingRules": { + "description": "[Output Only] A list of URLs to the ForwardingRule resources. ForwardingRules are created using compute.forwardingRules.insert and associated to a VPN gateway.", + "items": { + "type": "string" + }, + "type": "array" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64", + "type": "string" + }, + "kind": { + "default": "compute#targetVpnGateway", + "description": "[Output Only] Type of resource. Always compute#targetVpnGateway for target VPN gateways.", + "type": "string" + }, + "name": { + "annotations": { + "required": [ + "compute.targetVpnGateways.insert" + ] + }, + "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "network": { + "annotations": { + "required": [ + "compute.targetVpnGateways.insert" + ] + }, + "description": "URL of the network to which this VPN gateway is attached. Provided by the client when the VPN gateway is created.", + "type": "string" + }, + "region": { + "description": "[Output Only] URL of the region where the target VPN gateway resides. You must specify this field as part of the HTTP request URL. It is not settable as a field in the request body.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + }, + "status": { + "description": "[Output Only] The status of the VPN gateway.", + "enum": [ + "CREATING", + "DELETING", + "FAILED", + "READY" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ], + "type": "string" + }, + "tunnels": { + "description": "[Output Only] A list of URLs to VpnTunnel resources. VpnTunnels are created using compute.vpntunnels.insert method and associated to a VPN gateway.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "TargetVpnGatewayAggregatedList": { + "id": "TargetVpnGatewayAggregatedList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "additionalProperties": { + "$ref": "TargetVpnGatewaysScopedList", + "description": "[Output Only] Name of the scope containing this set of target VPN gateways." + }, + "description": "A list of TargetVpnGateway resources.", + "type": "object" + }, + "kind": { + "default": "compute#targetVpnGatewayAggregatedList", + "description": "[Output Only] Type of resource. Always compute#targetVpnGateway for target VPN gateways.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "TargetVpnGatewayList": { + "description": "Contains a list of TargetVpnGateway resources.", + "id": "TargetVpnGatewayList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of TargetVpnGateway resources.", + "items": { + "$ref": "TargetVpnGateway" + }, + "type": "array" + }, + "kind": { + "default": "compute#targetVpnGatewayList", + "description": "[Output Only] Type of resource. Always compute#targetVpnGateway for target VPN gateways.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "TargetVpnGatewaysScopedList": { + "id": "TargetVpnGatewaysScopedList", + "properties": { + "targetVpnGateways": { + "description": "[Output Only] List of target vpn gateways contained in this scope.", + "items": { + "$ref": "TargetVpnGateway" + }, + "type": "array" + }, + "warning": { + "description": "[Output Only] Informational warning which replaces the list of addresses when the list is empty.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "TestFailure": { + "id": "TestFailure", + "properties": { + "actualService": { + "type": "string" + }, + "expectedService": { + "type": "string" + }, + "host": { + "type": "string" + }, + "path": { + "type": "string" + } + }, + "type": "object" + }, + "TestPermissionsRequest": { + "id": "TestPermissionsRequest", + "properties": { + "permissions": { + "description": "The set of permissions to check for the 'resource'. Permissions with wildcards (such as '*' or 'storage.*') are not allowed.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "TestPermissionsResponse": { + "id": "TestPermissionsResponse", + "properties": { + "permissions": { + "description": "A subset of `TestPermissionsRequest.permissions` that the caller is allowed.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "UrlMap": { + "description": "A UrlMap resource. This resource defines the mapping from URL to the BackendService resource, based on the \"longest-match\" of the URL's host and path.", + "id": "UrlMap", + "properties": { + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "defaultService": { + "description": "The URL of the BackendService resource if none of the hostRules match.", + "type": "string" + }, + "description": { + "description": "An optional description of this resource. Provide this property when you create the resource.", + "type": "string" + }, + "fingerprint": { + "description": "Fingerprint of this resource. A hash of the contents stored in this object. This field is used in optimistic locking. This field will be ignored when inserting a UrlMap. An up-to-date fingerprint must be provided in order to update the UrlMap.", + "format": "byte", + "type": "string" + }, + "hostRules": { + "description": "The list of HostRules to use against the URL.", + "items": { + "$ref": "HostRule" + }, + "type": "array" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64", + "type": "string" + }, + "kind": { + "default": "compute#urlMap", + "description": "[Output Only] Type of the resource. Always compute#urlMaps for url maps.", + "type": "string" + }, + "name": { + "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "pathMatchers": { + "description": "The list of named PathMatchers to use against the URL.", + "items": { + "$ref": "PathMatcher" + }, + "type": "array" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + }, + "tests": { + "description": "The list of expected URL mapping tests. Request to update this UrlMap will succeed only if all of the test cases pass. You can specify a maximum of 100 tests per UrlMap.", + "items": { + "$ref": "UrlMapTest" + }, + "type": "array" + } + }, + "type": "object" + }, + "UrlMapList": { + "description": "Contains a list of UrlMap resources.", + "id": "UrlMapList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of UrlMap resources.", + "items": { + "$ref": "UrlMap" + }, + "type": "array" + }, + "kind": { + "default": "compute#urlMapList", + "description": "Type of resource.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "UrlMapReference": { + "id": "UrlMapReference", + "properties": { + "urlMap": { + "type": "string" + } + }, + "type": "object" + }, + "UrlMapTest": { + "description": "Message for the expected URL mappings.", + "id": "UrlMapTest", + "properties": { + "description": { + "description": "Description of this test case.", + "type": "string" + }, + "host": { + "description": "Host portion of the URL.", + "type": "string" + }, + "path": { + "description": "Path portion of the URL.", + "type": "string" + }, + "service": { + "description": "Expected BackendService resource the given URL should be mapped to.", + "type": "string" + } + }, + "type": "object" + }, + "UrlMapValidationResult": { + "description": "Message representing the validation result for a UrlMap.", + "id": "UrlMapValidationResult", + "properties": { + "loadErrors": { + "items": { + "type": "string" + }, + "type": "array" + }, + "loadSucceeded": { + "description": "Whether the given UrlMap can be successfully loaded. If false, 'loadErrors' indicates the reasons.", + "type": "boolean" + }, + "testFailures": { + "items": { + "$ref": "TestFailure" + }, + "type": "array" + }, + "testPassed": { + "description": "If successfully loaded, this field indicates whether the test passed. If false, 'testFailures's indicate the reason of failure.", + "type": "boolean" + } + }, + "type": "object" + }, + "UrlMapsValidateRequest": { + "id": "UrlMapsValidateRequest", + "properties": { + "resource": { + "$ref": "UrlMap", + "description": "Content of the UrlMap to be validated." + } + }, + "type": "object" + }, + "UrlMapsValidateResponse": { + "id": "UrlMapsValidateResponse", + "properties": { + "result": { + "$ref": "UrlMapValidationResult" + } + }, + "type": "object" + }, + "UsageExportLocation": { + "description": "The location in Cloud Storage and naming method of the daily usage report. Contains bucket_name and report_name prefix.", + "id": "UsageExportLocation", + "properties": { + "bucketName": { + "description": "The name of an existing bucket in Cloud Storage where the usage report object is stored. The Google Service Account is granted write access to this bucket. This can either be the bucket name by itself, such as example-bucket, or the bucket name with gs:// or https://storage.googleapis.com/ in front of it, such as gs://example-bucket.", + "type": "string" + }, + "reportNamePrefix": { + "description": "An optional prefix for the name of the usage report object stored in bucketName. If not supplied, defaults to usage. The report is stored as a CSV file named report_name_prefix_gce_YYYYMMDD.csv where YYYYMMDD is the day of the usage according to Pacific Time. If you supply a prefix, it should conform to Cloud Storage object naming conventions.", + "type": "string" + } + }, + "type": "object" + }, + "VpnTunnel": { + "description": "VPN tunnel resource. (== resource_for beta.vpnTunnels ==) (== resource_for v1.vpnTunnels ==)", + "id": "VpnTunnel", + "properties": { + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "description": { + "description": "An optional description of this resource. Provide this property when you create the resource.", + "type": "string" + }, + "detailedStatus": { + "description": "[Output Only] Detailed status message for the VPN tunnel.", + "type": "string" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64", + "type": "string" + }, + "ikeVersion": { + "description": "IKE protocol version to use when establishing the VPN tunnel with peer VPN gateway. Acceptable IKE versions are 1 or 2. Default version is 2.", + "format": "int32", + "type": "integer" + }, + "kind": { + "default": "compute#vpnTunnel", + "description": "[Output Only] Type of resource. Always compute#vpnTunnel for VPN tunnels.", + "type": "string" + }, + "localTrafficSelector": { + "description": "Local traffic selector to use when establishing the VPN tunnel with peer VPN gateway. The value should be a CIDR formatted string, for example: 192.168.0.0/16. The ranges should be disjoint. Only IPv4 is supported.", + "items": { + "type": "string" + }, + "type": "array" + }, + "name": { + "annotations": { + "required": [ + "compute.vpnTunnels.insert" + ] + }, + "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "peerIp": { + "description": "IP address of the peer VPN gateway. Only IPv4 is supported.", + "type": "string" + }, + "region": { + "description": "[Output Only] URL of the region where the VPN tunnel resides. You must specify this field as part of the HTTP request URL. It is not settable as a field in the request body.", + "type": "string" + }, + "remoteTrafficSelector": { + "description": "Remote traffic selectors to use when establishing the VPN tunnel with peer VPN gateway. The value should be a CIDR formatted string, for example: 192.168.0.0/16. The ranges should be disjoint. Only IPv4 is supported.", + "items": { + "type": "string" + }, + "type": "array" + }, + "router": { + "description": "URL of router resource to be used for dynamic routing.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + }, + "sharedSecret": { + "description": "Shared secret used to set the secure session between the Cloud VPN gateway and the peer VPN gateway.", + "type": "string" + }, + "sharedSecretHash": { + "description": "Hash of the shared secret.", + "type": "string" + }, + "status": { + "description": "[Output Only] The status of the VPN tunnel.", + "enum": [ + "ALLOCATING_RESOURCES", + "AUTHORIZATION_ERROR", + "DEPROVISIONING", + "ESTABLISHED", + "FAILED", + "FIRST_HANDSHAKE", + "NEGOTIATION_FAILURE", + "NETWORK_ERROR", + "NO_INCOMING_PACKETS", + "PROVISIONING", + "REJECTED", + "WAITING_FOR_FULL_CONFIG" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "targetVpnGateway": { + "description": "URL of the Target VPN gateway with which this VPN tunnel is associated. Provided by the client when the VPN tunnel is created.", + "type": "string" + } + }, + "type": "object" + }, + "VpnTunnelAggregatedList": { + "id": "VpnTunnelAggregatedList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "additionalProperties": { + "$ref": "VpnTunnelsScopedList", + "description": "Name of the scope containing this set of vpn tunnels." + }, + "description": "A list of VpnTunnelsScopedList resources.", + "type": "object" + }, + "kind": { + "default": "compute#vpnTunnelAggregatedList", + "description": "[Output Only] Type of resource. Always compute#vpnTunnel for VPN tunnels.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "VpnTunnelList": { + "description": "Contains a list of VpnTunnel resources.", + "id": "VpnTunnelList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of VpnTunnel resources.", + "items": { + "$ref": "VpnTunnel" + }, + "type": "array" + }, + "kind": { + "default": "compute#vpnTunnelList", + "description": "[Output Only] Type of resource. Always compute#vpnTunnel for VPN tunnels.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "VpnTunnelsScopedList": { + "id": "VpnTunnelsScopedList", + "properties": { + "vpnTunnels": { + "description": "List of vpn tunnels contained in this scope.", + "items": { + "$ref": "VpnTunnel" + }, + "type": "array" + }, + "warning": { + "description": "Informational warning which replaces the list of addresses when the list is empty.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "XpnHostList": { + "id": "XpnHostList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "[Output Only] A list of shared VPC host project URLs.", + "items": { + "$ref": "Project" + }, + "type": "array" + }, + "kind": { + "default": "compute#xpnHostList", + "description": "[Output Only] Type of resource. Always compute#xpnHostList for lists of shared VPC hosts.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "XpnResourceId": { + "description": "Service resource (a.k.a service project) ID.", + "id": "XpnResourceId", + "properties": { + "id": { + "description": "The ID of the service resource. In the case of projects, this field matches the project ID (e.g., my-project), not the project number (e.g., 12345678).", + "type": "string" + }, + "type": { + "description": "The type of the service resource.", + "enum": [ + "PROJECT", + "XPN_RESOURCE_TYPE_UNSPECIFIED" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "Zone": { + "description": "A Zone resource. (== resource_for beta.zones ==) (== resource_for v1.zones ==)", + "id": "Zone", + "properties": { + "availableCpuPlatforms": { + "description": "[Output Only] Available cpu/platform selections for the zone.", + "items": { + "type": "string" + }, + "type": "array" + }, + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "deprecated": { + "$ref": "DeprecationStatus", + "description": "[Output Only] The deprecation status associated with this zone." + }, + "description": { + "description": "[Output Only] Textual description of the resource.", + "type": "string" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64", + "type": "string" + }, + "kind": { + "default": "compute#zone", + "description": "[Output Only] Type of the resource. Always compute#zone for zones.", + "type": "string" + }, + "name": { + "description": "[Output Only] Name of the resource.", + "type": "string" + }, + "region": { + "description": "[Output Only] Full URL reference to the region which hosts the zone.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + }, + "status": { + "description": "[Output Only] Status of the zone, either UP or DOWN.", + "enum": [ + "DOWN", + "UP" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "ZoneList": { + "description": "Contains a list of zone resources.", + "id": "ZoneList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of Zone resources.", + "items": { + "$ref": "Zone" + }, + "type": "array" + }, + "kind": { + "default": "compute#zoneList", + "description": "Type of resource.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "ZoneSetLabelsRequest": { + "id": "ZoneSetLabelsRequest", + "properties": { + "labelFingerprint": { + "description": "The fingerprint of the previous set of labels for this resource, used to detect conflicts. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update labels. You must always provide an up-to-date fingerprint hash in order to update or change labels. Make a get() request to the resource to get the latest fingerprint.", + "format": "byte", + "type": "string" + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "The labels to set for this resource.", + "type": "object" + } + }, + "type": "object" } - } }, - "ZoneSetLabelsRequest": { - "id": "ZoneSetLabelsRequest", - "type": "object", - "properties": { - "labelFingerprint": { - "type": "string", - "description": "The fingerprint of the previous set of labels for this resource, used to detect conflicts. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update labels. You must always provide an up-to-date fingerprint hash in order to update or change labels. Make a get() request to the resource to get the latest fingerprint.", - "format": "byte" - }, - "labels": { - "type": "object", - "description": "The labels to set for this resource.", - "additionalProperties": { - "type": "string" - } - } - } - } - }, - "resources": { - "acceleratorTypes": { - "methods": { - "aggregatedList": { - "id": "compute.acceleratorTypes.aggregatedList", - "path": "{project}/aggregated/acceleratorTypes", - "httpMethod": "GET", - "description": "Retrieves an aggregated list of accelerator types.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "AcceleratorTypeAggregatedList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "get": { - "id": "compute.acceleratorTypes.get", - "path": "{project}/zones/{zone}/acceleratorTypes/{acceleratorType}", - "httpMethod": "GET", - "description": "Returns the specified accelerator type. Get a list of available accelerator types by making a list() request.", - "parameters": { - "acceleratorType": { - "type": "string", - "description": "Name of the accelerator type to return.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "zone": { - "type": "string", - "description": "The name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "acceleratorType" - ], - "response": { - "$ref": "AcceleratorType" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "list": { - "id": "compute.acceleratorTypes.list", - "path": "{project}/zones/{zone}/acceleratorTypes", - "httpMethod": "GET", - "description": "Retrieves a list of accelerator types available to the specified project.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "zone": { - "type": "string", - "description": "The name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone" - ], - "response": { - "$ref": "AcceleratorTypeList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - } - } - }, - "addresses": { - "methods": { - "aggregatedList": { - "id": "compute.addresses.aggregatedList", - "path": "{project}/aggregated/addresses", - "httpMethod": "GET", - "description": "Retrieves an aggregated list of addresses.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "AddressAggregatedList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "delete": { - "id": "compute.addresses.delete", - "path": "{project}/regions/{region}/addresses/{address}", - "httpMethod": "DELETE", - "description": "Deletes the specified address resource.", - "parameters": { - "address": { - "type": "string", - "description": "Name of the address resource to delete.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "region", - "address" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "get": { - "id": "compute.addresses.get", - "path": "{project}/regions/{region}/addresses/{address}", - "httpMethod": "GET", - "description": "Returns the specified address resource.", - "parameters": { - "address": { - "type": "string", - "description": "Name of the address resource to return.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "address" - ], - "response": { - "$ref": "Address" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "insert": { - "id": "compute.addresses.insert", - "path": "{project}/regions/{region}/addresses", - "httpMethod": "POST", - "description": "Creates an address resource in the specified project using the data included in the request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "region" - ], - "request": { - "$ref": "Address" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "list": { - "id": "compute.addresses.list", - "path": "{project}/regions/{region}/addresses", - "httpMethod": "GET", - "description": "Retrieves a list of addresses contained within the specified region.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region" - ], - "response": { - "$ref": "AddressList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - } - } - }, - "autoscalers": { - "methods": { - "aggregatedList": { - "id": "compute.autoscalers.aggregatedList", - "path": "{project}/aggregated/autoscalers", - "httpMethod": "GET", - "description": "Retrieves an aggregated list of autoscalers.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "AutoscalerAggregatedList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "delete": { - "id": "compute.autoscalers.delete", - "path": "{project}/zones/{zone}/autoscalers/{autoscaler}", - "httpMethod": "DELETE", - "description": "Deletes the specified autoscaler.", - "parameters": { - "autoscaler": { - "type": "string", - "description": "Name of the autoscaler to delete.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "zone": { - "type": "string", - "description": "Name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "autoscaler" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "get": { - "id": "compute.autoscalers.get", - "path": "{project}/zones/{zone}/autoscalers/{autoscaler}", - "httpMethod": "GET", - "description": "Returns the specified autoscaler resource. Get a list of available autoscalers by making a list() request.", - "parameters": { - "autoscaler": { - "type": "string", - "description": "Name of the autoscaler to return.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "zone": { - "type": "string", - "description": "Name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "autoscaler" - ], - "response": { - "$ref": "Autoscaler" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "insert": { - "id": "compute.autoscalers.insert", - "path": "{project}/zones/{zone}/autoscalers", - "httpMethod": "POST", - "description": "Creates an autoscaler in the specified project using the data included in the request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "zone": { - "type": "string", - "description": "Name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone" - ], - "request": { - "$ref": "Autoscaler" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "list": { - "id": "compute.autoscalers.list", - "path": "{project}/zones/{zone}/autoscalers", - "httpMethod": "GET", - "description": "Retrieves a list of autoscalers contained within the specified zone.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "zone": { - "type": "string", - "description": "Name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone" - ], - "response": { - "$ref": "AutoscalerList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "patch": { - "id": "compute.autoscalers.patch", - "path": "{project}/zones/{zone}/autoscalers", - "httpMethod": "PATCH", - "description": "Updates an autoscaler in the specified project using the data included in the request. This method supports PATCH semantics and uses the JSON merge patch format and processing rules.", - "parameters": { - "autoscaler": { - "type": "string", - "description": "Name of the autoscaler to patch.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "zone": { - "type": "string", - "description": "Name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone" - ], - "request": { - "$ref": "Autoscaler" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "update": { - "id": "compute.autoscalers.update", - "path": "{project}/zones/{zone}/autoscalers", - "httpMethod": "PUT", - "description": "Updates an autoscaler in the specified project using the data included in the request.", - "parameters": { - "autoscaler": { - "type": "string", - "description": "Name of the autoscaler to update.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "zone": { - "type": "string", - "description": "Name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone" - ], - "request": { - "$ref": "Autoscaler" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - } - } - }, - "backendBuckets": { - "methods": { - "delete": { - "id": "compute.backendBuckets.delete", - "path": "{project}/global/backendBuckets/{backendBucket}", - "httpMethod": "DELETE", - "description": "Deletes the specified BackendBucket resource.", - "parameters": { - "backendBucket": { - "type": "string", - "description": "Name of the BackendBucket resource to delete.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "backendBucket" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "get": { - "id": "compute.backendBuckets.get", - "path": "{project}/global/backendBuckets/{backendBucket}", - "httpMethod": "GET", - "description": "Returns the specified BackendBucket resource. Get a list of available backend buckets by making a list() request.", - "parameters": { - "backendBucket": { - "type": "string", - "description": "Name of the BackendBucket resource to return.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "backendBucket" - ], - "response": { - "$ref": "BackendBucket" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "insert": { - "id": "compute.backendBuckets.insert", - "path": "{project}/global/backendBuckets", - "httpMethod": "POST", - "description": "Creates a BackendBucket resource in the specified project using the data included in the request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project" - ], - "request": { - "$ref": "BackendBucket" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "list": { - "id": "compute.backendBuckets.list", - "path": "{project}/global/backendBuckets", - "httpMethod": "GET", - "description": "Retrieves the list of BackendBucket resources available to the specified project.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "BackendBucketList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "patch": { - "id": "compute.backendBuckets.patch", - "path": "{project}/global/backendBuckets/{backendBucket}", - "httpMethod": "PATCH", - "description": "Updates the specified BackendBucket resource with the data included in the request. This method supports PATCH semantics and uses the JSON merge patch format and processing rules.", - "parameters": { - "backendBucket": { - "type": "string", - "description": "Name of the BackendBucket resource to patch.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "backendBucket" - ], - "request": { - "$ref": "BackendBucket" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "update": { - "id": "compute.backendBuckets.update", - "path": "{project}/global/backendBuckets/{backendBucket}", - "httpMethod": "PUT", - "description": "Updates the specified BackendBucket resource with the data included in the request.", - "parameters": { - "backendBucket": { - "type": "string", - "description": "Name of the BackendBucket resource to update.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "backendBucket" - ], - "request": { - "$ref": "BackendBucket" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - } - } - }, - "backendServices": { - "methods": { - "aggregatedList": { - "id": "compute.backendServices.aggregatedList", - "path": "{project}/aggregated/backendServices", - "httpMethod": "GET", - "description": "Retrieves the list of all BackendService resources, regional and global, available to the specified project.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Name of the project scoping this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "BackendServiceAggregatedList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "delete": { - "id": "compute.backendServices.delete", - "path": "{project}/global/backendServices/{backendService}", - "httpMethod": "DELETE", - "description": "Deletes the specified BackendService resource.", - "parameters": { - "backendService": { - "type": "string", - "description": "Name of the BackendService resource to delete.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "backendService" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "get": { - "id": "compute.backendServices.get", - "path": "{project}/global/backendServices/{backendService}", - "httpMethod": "GET", - "description": "Returns the specified BackendService resource. Get a list of available backend services by making a list() request.", - "parameters": { - "backendService": { - "type": "string", - "description": "Name of the BackendService resource to return.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "backendService" - ], - "response": { - "$ref": "BackendService" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "getHealth": { - "id": "compute.backendServices.getHealth", - "path": "{project}/global/backendServices/{backendService}/getHealth", - "httpMethod": "POST", - "description": "Gets the most recent health check results for this BackendService.", - "parameters": { - "backendService": { - "type": "string", - "description": "Name of the BackendService resource to which the queried instance belongs.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "backendService" - ], - "request": { - "$ref": "ResourceGroupReference" - }, - "response": { - "$ref": "BackendServiceGroupHealth" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "insert": { - "id": "compute.backendServices.insert", - "path": "{project}/global/backendServices", - "httpMethod": "POST", - "description": "Creates a BackendService resource in the specified project using the data included in the request. There are several restrictions and guidelines to keep in mind when creating a backend service. Read Restrictions and Guidelines for more information.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project" - ], - "request": { - "$ref": "BackendService" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "list": { - "id": "compute.backendServices.list", - "path": "{project}/global/backendServices", - "httpMethod": "GET", - "description": "Retrieves the list of BackendService resources available to the specified project.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "BackendServiceList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "patch": { - "id": "compute.backendServices.patch", - "path": "{project}/global/backendServices/{backendService}", - "httpMethod": "PATCH", - "description": "Patches the specified BackendService resource with the data included in the request. There are several restrictions and guidelines to keep in mind when updating a backend service. Read Restrictions and Guidelines for more information. This method supports PATCH semantics and uses the JSON merge patch format and processing rules.", - "parameters": { - "backendService": { - "type": "string", - "description": "Name of the BackendService resource to patch.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "backendService" - ], - "request": { - "$ref": "BackendService" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "update": { - "id": "compute.backendServices.update", - "path": "{project}/global/backendServices/{backendService}", - "httpMethod": "PUT", - "description": "Updates the specified BackendService resource with the data included in the request. There are several restrictions and guidelines to keep in mind when updating a backend service. Read Restrictions and Guidelines for more information.", - "parameters": { - "backendService": { - "type": "string", - "description": "Name of the BackendService resource to update.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "backendService" - ], - "request": { - "$ref": "BackendService" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - } - } - }, - "diskTypes": { - "methods": { - "aggregatedList": { - "id": "compute.diskTypes.aggregatedList", - "path": "{project}/aggregated/diskTypes", - "httpMethod": "GET", - "description": "Retrieves an aggregated list of disk types.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "DiskTypeAggregatedList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "get": { - "id": "compute.diskTypes.get", - "path": "{project}/zones/{zone}/diskTypes/{diskType}", - "httpMethod": "GET", - "description": "Returns the specified disk type. Get a list of available disk types by making a list() request.", - "parameters": { - "diskType": { - "type": "string", - "description": "Name of the disk type to return.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "zone": { - "type": "string", - "description": "The name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "diskType" - ], - "response": { - "$ref": "DiskType" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "list": { - "id": "compute.diskTypes.list", - "path": "{project}/zones/{zone}/diskTypes", - "httpMethod": "GET", - "description": "Retrieves a list of disk types available to the specified project.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "zone": { - "type": "string", - "description": "The name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone" - ], - "response": { - "$ref": "DiskTypeList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - } - } - }, - "disks": { - "methods": { - "aggregatedList": { - "id": "compute.disks.aggregatedList", - "path": "{project}/aggregated/disks", - "httpMethod": "GET", - "description": "Retrieves an aggregated list of persistent disks.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "DiskAggregatedList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "createSnapshot": { - "id": "compute.disks.createSnapshot", - "path": "{project}/zones/{zone}/disks/{disk}/createSnapshot", - "httpMethod": "POST", - "description": "Creates a snapshot of a specified persistent disk.", - "parameters": { - "disk": { - "type": "string", - "description": "Name of the persistent disk to snapshot.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "guestFlush": { - "type": "boolean", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "zone": { - "type": "string", - "description": "The name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "disk" - ], - "request": { - "$ref": "Snapshot" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "delete": { - "id": "compute.disks.delete", - "path": "{project}/zones/{zone}/disks/{disk}", - "httpMethod": "DELETE", - "description": "Deletes the specified persistent disk. Deleting a disk removes its data permanently and is irreversible. However, deleting a disk does not delete any snapshots previously made from the disk. You must separately delete snapshots.", - "parameters": { - "disk": { - "type": "string", - "description": "Name of the persistent disk to delete.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "zone": { - "type": "string", - "description": "The name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "disk" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "get": { - "id": "compute.disks.get", - "path": "{project}/zones/{zone}/disks/{disk}", - "httpMethod": "GET", - "description": "Returns a specified persistent disk. Get a list of available persistent disks by making a list() request.", - "parameters": { - "disk": { - "type": "string", - "description": "Name of the persistent disk to return.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "zone": { - "type": "string", - "description": "The name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "disk" - ], - "response": { - "$ref": "Disk" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "insert": { - "id": "compute.disks.insert", - "path": "{project}/zones/{zone}/disks", - "httpMethod": "POST", - "description": "Creates a persistent disk in the specified project using the data in the request. You can create a disk with a sourceImage, a sourceSnapshot, or create an empty 500 GB data disk by omitting all properties. You can also create a disk that is larger than the default size by specifying the sizeGb property.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "sourceImage": { - "type": "string", - "description": "Optional. Source image to restore onto a disk.", - "location": "query" - }, - "zone": { - "type": "string", - "description": "The name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone" - ], - "request": { - "$ref": "Disk" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "list": { - "id": "compute.disks.list", - "path": "{project}/zones/{zone}/disks", - "httpMethod": "GET", - "description": "Retrieves a list of persistent disks contained within the specified zone.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "zone": { - "type": "string", - "description": "The name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone" - ], - "response": { - "$ref": "DiskList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "resize": { - "id": "compute.disks.resize", - "path": "{project}/zones/{zone}/disks/{disk}/resize", - "httpMethod": "POST", - "description": "Resizes the specified persistent disk. You can only increase the size of the disk.", - "parameters": { - "disk": { - "type": "string", - "description": "The name of the persistent disk.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "zone": { - "type": "string", - "description": "The name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "disk" - ], - "request": { - "$ref": "DisksResizeRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "setLabels": { - "id": "compute.disks.setLabels", - "path": "{project}/zones/{zone}/disks/{resource}/setLabels", - "httpMethod": "POST", - "description": "Sets the labels on a disk. To learn more about labels, read the Labeling Resources documentation.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "zone": { - "type": "string", - "description": "The name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "resource" - ], - "request": { - "$ref": "ZoneSetLabelsRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - } - } - }, - "firewalls": { - "methods": { - "delete": { - "id": "compute.firewalls.delete", - "path": "{project}/global/firewalls/{firewall}", - "httpMethod": "DELETE", - "description": "Deletes the specified firewall.", - "parameters": { - "firewall": { - "type": "string", - "description": "Name of the firewall rule to delete.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "firewall" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "get": { - "id": "compute.firewalls.get", - "path": "{project}/global/firewalls/{firewall}", - "httpMethod": "GET", - "description": "Returns the specified firewall.", - "parameters": { - "firewall": { - "type": "string", - "description": "Name of the firewall rule to return.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "firewall" - ], - "response": { - "$ref": "Firewall" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "insert": { - "id": "compute.firewalls.insert", - "path": "{project}/global/firewalls", - "httpMethod": "POST", - "description": "Creates a firewall rule in the specified project using the data included in the request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project" - ], - "request": { - "$ref": "Firewall" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "list": { - "id": "compute.firewalls.list", - "path": "{project}/global/firewalls", - "httpMethod": "GET", - "description": "Retrieves the list of firewall rules available to the specified project.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "FirewallList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "patch": { - "id": "compute.firewalls.patch", - "path": "{project}/global/firewalls/{firewall}", - "httpMethod": "PATCH", - "description": "Updates the specified firewall rule with the data included in the request. This method supports PATCH semantics and uses the JSON merge patch format and processing rules.", - "parameters": { - "firewall": { - "type": "string", - "description": "Name of the firewall rule to patch.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "firewall" - ], - "request": { - "$ref": "Firewall" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "update": { - "id": "compute.firewalls.update", - "path": "{project}/global/firewalls/{firewall}", - "httpMethod": "PUT", - "description": "Updates the specified firewall rule with the data included in the request. Using PUT method, can only update following fields of firewall rule: allowed, description, sourceRanges, sourceTags, targetTags.", - "parameters": { - "firewall": { - "type": "string", - "description": "Name of the firewall rule to update.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "firewall" - ], - "request": { - "$ref": "Firewall" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - } - } - }, - "forwardingRules": { - "methods": { - "aggregatedList": { - "id": "compute.forwardingRules.aggregatedList", - "path": "{project}/aggregated/forwardingRules", - "httpMethod": "GET", - "description": "Retrieves an aggregated list of forwarding rules.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "ForwardingRuleAggregatedList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "delete": { - "id": "compute.forwardingRules.delete", - "path": "{project}/regions/{region}/forwardingRules/{forwardingRule}", - "httpMethod": "DELETE", - "description": "Deletes the specified ForwardingRule resource.", - "parameters": { - "forwardingRule": { - "type": "string", - "description": "Name of the ForwardingRule resource to delete.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "region", - "forwardingRule" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "get": { - "id": "compute.forwardingRules.get", - "path": "{project}/regions/{region}/forwardingRules/{forwardingRule}", - "httpMethod": "GET", - "description": "Returns the specified ForwardingRule resource.", - "parameters": { - "forwardingRule": { - "type": "string", - "description": "Name of the ForwardingRule resource to return.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "forwardingRule" - ], - "response": { - "$ref": "ForwardingRule" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "insert": { - "id": "compute.forwardingRules.insert", - "path": "{project}/regions/{region}/forwardingRules", - "httpMethod": "POST", - "description": "Creates a ForwardingRule resource in the specified project and region using the data included in the request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "region" - ], - "request": { - "$ref": "ForwardingRule" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "list": { - "id": "compute.forwardingRules.list", - "path": "{project}/regions/{region}/forwardingRules", - "httpMethod": "GET", - "description": "Retrieves a list of ForwardingRule resources available to the specified project and region.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region" - ], - "response": { - "$ref": "ForwardingRuleList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "setTarget": { - "id": "compute.forwardingRules.setTarget", - "path": "{project}/regions/{region}/forwardingRules/{forwardingRule}/setTarget", - "httpMethod": "POST", - "description": "Changes target URL for forwarding rule. The new target should be of the same type as the old target.", - "parameters": { - "forwardingRule": { - "type": "string", - "description": "Name of the ForwardingRule resource in which target is to be set.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "region", - "forwardingRule" - ], - "request": { - "$ref": "TargetReference" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - } - } - }, - "globalAddresses": { - "methods": { - "delete": { - "id": "compute.globalAddresses.delete", - "path": "{project}/global/addresses/{address}", - "httpMethod": "DELETE", - "description": "Deletes the specified address resource.", - "parameters": { - "address": { - "type": "string", - "description": "Name of the address resource to delete.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "address" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "get": { - "id": "compute.globalAddresses.get", - "path": "{project}/global/addresses/{address}", - "httpMethod": "GET", - "description": "Returns the specified address resource. Get a list of available addresses by making a list() request.", - "parameters": { - "address": { - "type": "string", - "description": "Name of the address resource to return.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "address" - ], - "response": { - "$ref": "Address" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "insert": { - "id": "compute.globalAddresses.insert", - "path": "{project}/global/addresses", - "httpMethod": "POST", - "description": "Creates an address resource in the specified project using the data included in the request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project" - ], - "request": { - "$ref": "Address" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "list": { - "id": "compute.globalAddresses.list", - "path": "{project}/global/addresses", - "httpMethod": "GET", - "description": "Retrieves a list of global addresses.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "AddressList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - } - } - }, - "globalForwardingRules": { - "methods": { - "delete": { - "id": "compute.globalForwardingRules.delete", - "path": "{project}/global/forwardingRules/{forwardingRule}", - "httpMethod": "DELETE", - "description": "Deletes the specified GlobalForwardingRule resource.", - "parameters": { - "forwardingRule": { - "type": "string", - "description": "Name of the ForwardingRule resource to delete.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "forwardingRule" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "get": { - "id": "compute.globalForwardingRules.get", - "path": "{project}/global/forwardingRules/{forwardingRule}", - "httpMethod": "GET", - "description": "Returns the specified GlobalForwardingRule resource. Get a list of available forwarding rules by making a list() request.", - "parameters": { - "forwardingRule": { - "type": "string", - "description": "Name of the ForwardingRule resource to return.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "forwardingRule" - ], - "response": { - "$ref": "ForwardingRule" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "insert": { - "id": "compute.globalForwardingRules.insert", - "path": "{project}/global/forwardingRules", - "httpMethod": "POST", - "description": "Creates a GlobalForwardingRule resource in the specified project using the data included in the request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project" - ], - "request": { - "$ref": "ForwardingRule" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "list": { - "id": "compute.globalForwardingRules.list", - "path": "{project}/global/forwardingRules", - "httpMethod": "GET", - "description": "Retrieves a list of GlobalForwardingRule resources available to the specified project.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "ForwardingRuleList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "setTarget": { - "id": "compute.globalForwardingRules.setTarget", - "path": "{project}/global/forwardingRules/{forwardingRule}/setTarget", - "httpMethod": "POST", - "description": "Changes target URL for the GlobalForwardingRule resource. The new target should be of the same type as the old target.", - "parameters": { - "forwardingRule": { - "type": "string", - "description": "Name of the ForwardingRule resource in which target is to be set.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "forwardingRule" - ], - "request": { - "$ref": "TargetReference" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - } - } - }, - "globalOperations": { - "methods": { - "aggregatedList": { - "id": "compute.globalOperations.aggregatedList", - "path": "{project}/aggregated/operations", - "httpMethod": "GET", - "description": "Retrieves an aggregated list of all operations.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "OperationAggregatedList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "delete": { - "id": "compute.globalOperations.delete", - "path": "{project}/global/operations/{operation}", - "httpMethod": "DELETE", - "description": "Deletes the specified Operations resource.", - "parameters": { - "operation": { - "type": "string", - "description": "Name of the Operations resource to delete.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "operation" - ], - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "get": { - "id": "compute.globalOperations.get", - "path": "{project}/global/operations/{operation}", - "httpMethod": "GET", - "description": "Retrieves the specified Operations resource. Get a list of operations by making a list() request.", - "parameters": { - "operation": { - "type": "string", - "description": "Name of the Operations resource to return.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "operation" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "list": { - "id": "compute.globalOperations.list", - "path": "{project}/global/operations", - "httpMethod": "GET", - "description": "Retrieves a list of Operation resources contained within the specified project.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "OperationList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - } - } - }, - "healthChecks": { - "methods": { - "delete": { - "id": "compute.healthChecks.delete", - "path": "{project}/global/healthChecks/{healthCheck}", - "httpMethod": "DELETE", - "description": "Deletes the specified HealthCheck resource.", - "parameters": { - "healthCheck": { - "type": "string", - "description": "Name of the HealthCheck resource to delete.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "healthCheck" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "get": { - "id": "compute.healthChecks.get", - "path": "{project}/global/healthChecks/{healthCheck}", - "httpMethod": "GET", - "description": "Returns the specified HealthCheck resource. Get a list of available health checks by making a list() request.", - "parameters": { - "healthCheck": { - "type": "string", - "description": "Name of the HealthCheck resource to return.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "healthCheck" - ], - "response": { - "$ref": "HealthCheck" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "insert": { - "id": "compute.healthChecks.insert", - "path": "{project}/global/healthChecks", - "httpMethod": "POST", - "description": "Creates a HealthCheck resource in the specified project using the data included in the request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project" - ], - "request": { - "$ref": "HealthCheck" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "list": { - "id": "compute.healthChecks.list", - "path": "{project}/global/healthChecks", - "httpMethod": "GET", - "description": "Retrieves the list of HealthCheck resources available to the specified project.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "HealthCheckList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "patch": { - "id": "compute.healthChecks.patch", - "path": "{project}/global/healthChecks/{healthCheck}", - "httpMethod": "PATCH", - "description": "Updates a HealthCheck resource in the specified project using the data included in the request. This method supports PATCH semantics and uses the JSON merge patch format and processing rules.", - "parameters": { - "healthCheck": { - "type": "string", - "description": "Name of the HealthCheck resource to patch.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "healthCheck" - ], - "request": { - "$ref": "HealthCheck" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "update": { - "id": "compute.healthChecks.update", - "path": "{project}/global/healthChecks/{healthCheck}", - "httpMethod": "PUT", - "description": "Updates a HealthCheck resource in the specified project using the data included in the request.", - "parameters": { - "healthCheck": { - "type": "string", - "description": "Name of the HealthCheck resource to update.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "healthCheck" - ], - "request": { - "$ref": "HealthCheck" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - } - } - }, - "httpHealthChecks": { - "methods": { - "delete": { - "id": "compute.httpHealthChecks.delete", - "path": "{project}/global/httpHealthChecks/{httpHealthCheck}", - "httpMethod": "DELETE", - "description": "Deletes the specified HttpHealthCheck resource.", - "parameters": { - "httpHealthCheck": { - "type": "string", - "description": "Name of the HttpHealthCheck resource to delete.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "httpHealthCheck" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "get": { - "id": "compute.httpHealthChecks.get", - "path": "{project}/global/httpHealthChecks/{httpHealthCheck}", - "httpMethod": "GET", - "description": "Returns the specified HttpHealthCheck resource. Get a list of available HTTP health checks by making a list() request.", - "parameters": { - "httpHealthCheck": { - "type": "string", - "description": "Name of the HttpHealthCheck resource to return.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "httpHealthCheck" - ], - "response": { - "$ref": "HttpHealthCheck" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "insert": { - "id": "compute.httpHealthChecks.insert", - "path": "{project}/global/httpHealthChecks", - "httpMethod": "POST", - "description": "Creates a HttpHealthCheck resource in the specified project using the data included in the request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project" - ], - "request": { - "$ref": "HttpHealthCheck" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "list": { - "id": "compute.httpHealthChecks.list", - "path": "{project}/global/httpHealthChecks", - "httpMethod": "GET", - "description": "Retrieves the list of HttpHealthCheck resources available to the specified project.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "HttpHealthCheckList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "patch": { - "id": "compute.httpHealthChecks.patch", - "path": "{project}/global/httpHealthChecks/{httpHealthCheck}", - "httpMethod": "PATCH", - "description": "Updates a HttpHealthCheck resource in the specified project using the data included in the request. This method supports PATCH semantics and uses the JSON merge patch format and processing rules.", - "parameters": { - "httpHealthCheck": { - "type": "string", - "description": "Name of the HttpHealthCheck resource to patch.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "httpHealthCheck" - ], - "request": { - "$ref": "HttpHealthCheck" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "update": { - "id": "compute.httpHealthChecks.update", - "path": "{project}/global/httpHealthChecks/{httpHealthCheck}", - "httpMethod": "PUT", - "description": "Updates a HttpHealthCheck resource in the specified project using the data included in the request.", - "parameters": { - "httpHealthCheck": { - "type": "string", - "description": "Name of the HttpHealthCheck resource to update.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "httpHealthCheck" - ], - "request": { - "$ref": "HttpHealthCheck" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - } - } - }, - "httpsHealthChecks": { - "methods": { - "delete": { - "id": "compute.httpsHealthChecks.delete", - "path": "{project}/global/httpsHealthChecks/{httpsHealthCheck}", - "httpMethod": "DELETE", - "description": "Deletes the specified HttpsHealthCheck resource.", - "parameters": { - "httpsHealthCheck": { - "type": "string", - "description": "Name of the HttpsHealthCheck resource to delete.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "httpsHealthCheck" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "get": { - "id": "compute.httpsHealthChecks.get", - "path": "{project}/global/httpsHealthChecks/{httpsHealthCheck}", - "httpMethod": "GET", - "description": "Returns the specified HttpsHealthCheck resource. Get a list of available HTTPS health checks by making a list() request.", - "parameters": { - "httpsHealthCheck": { - "type": "string", - "description": "Name of the HttpsHealthCheck resource to return.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "httpsHealthCheck" - ], - "response": { - "$ref": "HttpsHealthCheck" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "insert": { - "id": "compute.httpsHealthChecks.insert", - "path": "{project}/global/httpsHealthChecks", - "httpMethod": "POST", - "description": "Creates a HttpsHealthCheck resource in the specified project using the data included in the request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project" - ], - "request": { - "$ref": "HttpsHealthCheck" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "list": { - "id": "compute.httpsHealthChecks.list", - "path": "{project}/global/httpsHealthChecks", - "httpMethod": "GET", - "description": "Retrieves the list of HttpsHealthCheck resources available to the specified project.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "HttpsHealthCheckList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "patch": { - "id": "compute.httpsHealthChecks.patch", - "path": "{project}/global/httpsHealthChecks/{httpsHealthCheck}", - "httpMethod": "PATCH", - "description": "Updates a HttpsHealthCheck resource in the specified project using the data included in the request. This method supports PATCH semantics and uses the JSON merge patch format and processing rules.", - "parameters": { - "httpsHealthCheck": { - "type": "string", - "description": "Name of the HttpsHealthCheck resource to patch.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "httpsHealthCheck" - ], - "request": { - "$ref": "HttpsHealthCheck" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "update": { - "id": "compute.httpsHealthChecks.update", - "path": "{project}/global/httpsHealthChecks/{httpsHealthCheck}", - "httpMethod": "PUT", - "description": "Updates a HttpsHealthCheck resource in the specified project using the data included in the request.", - "parameters": { - "httpsHealthCheck": { - "type": "string", - "description": "Name of the HttpsHealthCheck resource to update.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "httpsHealthCheck" - ], - "request": { - "$ref": "HttpsHealthCheck" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - } - } - }, - "images": { - "methods": { - "delete": { - "id": "compute.images.delete", - "path": "{project}/global/images/{image}", - "httpMethod": "DELETE", - "description": "Deletes the specified image.", - "parameters": { - "image": { - "type": "string", - "description": "Name of the image resource to delete.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "image" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "deprecate": { - "id": "compute.images.deprecate", - "path": "{project}/global/images/{image}/deprecate", - "httpMethod": "POST", - "description": "Sets the deprecation status of an image.\n\nIf an empty request body is given, clears the deprecation status instead.", - "parameters": { - "image": { - "type": "string", - "description": "Image name.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "image" - ], - "request": { - "$ref": "DeprecationStatus" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "get": { - "id": "compute.images.get", - "path": "{project}/global/images/{image}", - "httpMethod": "GET", - "description": "Returns the specified image. Get a list of available images by making a list() request.", - "parameters": { - "image": { - "type": "string", - "description": "Name of the image resource to return.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "image" - ], - "response": { - "$ref": "Image" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "getFromFamily": { - "id": "compute.images.getFromFamily", - "path": "{project}/global/images/family/{family}", - "httpMethod": "GET", - "description": "Returns the latest image that is part of an image family and is not deprecated.", - "parameters": { - "family": { - "type": "string", - "description": "Name of the image family to search for.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "family" - ], - "response": { - "$ref": "Image" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "insert": { - "id": "compute.images.insert", - "path": "{project}/global/images", - "httpMethod": "POST", - "description": "Creates an image in the specified project using the data included in the request.", - "parameters": { - "forceCreate": { - "type": "boolean", - "description": "Force image creation if true.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project" - ], - "request": { - "$ref": "Image" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/devstorage.full_control", - "https://www.googleapis.com/auth/devstorage.read_only", - "https://www.googleapis.com/auth/devstorage.read_write" - ] - }, - "list": { - "id": "compute.images.list", - "path": "{project}/global/images", - "httpMethod": "GET", - "description": "Retrieves the list of custom images available to the specified project. Custom images are images you create that belong to your project. This method does not get any images that belong to other projects, including publicly-available images, like Debian 8. If you want to get a list of publicly-available images, use this method to make a request to the respective image project, such as debian-cloud or windows-cloud.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "ImageList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "setLabels": { - "id": "compute.images.setLabels", - "path": "{project}/global/images/{resource}/setLabels", - "httpMethod": "POST", - "description": "Sets the labels on an image. To learn more about labels, read the Labeling Resources documentation.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "resource" - ], - "request": { - "$ref": "GlobalSetLabelsRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - } - } - }, - "instanceGroupManagers": { - "methods": { - "abandonInstances": { - "id": "compute.instanceGroupManagers.abandonInstances", - "path": "{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/abandonInstances", - "httpMethod": "POST", - "description": "Schedules a group action to remove the specified instances from the managed instance group. Abandoning an instance does not delete the instance, but it does remove the instance from any target pools that are applied by the managed instance group. This method reduces the targetSize of the managed instance group by the number of instances that you abandon. This operation is marked as DONE when the action is scheduled even if the instances have not yet been removed from the group. You must separately verify the status of the abandoning action with the listmanagedinstances method.\n\nIf the group is part of a backend service that has enabled connection draining, it can take up to 60 seconds after the connection draining duration has elapsed before the VM instance is removed or deleted.\n\nYou can specify a maximum of 1000 instances with this method per request.", - "parameters": { - "instanceGroupManager": { - "type": "string", - "description": "The name of the managed instance group.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "zone": { - "type": "string", - "description": "The name of the zone where the managed instance group is located.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "instanceGroupManager" - ], - "request": { - "$ref": "InstanceGroupManagersAbandonInstancesRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "aggregatedList": { - "id": "compute.instanceGroupManagers.aggregatedList", - "path": "{project}/aggregated/instanceGroupManagers", - "httpMethod": "GET", - "description": "Retrieves the list of managed instance groups and groups them by zone.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "InstanceGroupManagerAggregatedList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "delete": { - "id": "compute.instanceGroupManagers.delete", - "path": "{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}", - "httpMethod": "DELETE", - "description": "Deletes the specified managed instance group and all of the instances in that group. Note that the instance group must not belong to a backend service. Read Deleting an instance group for more information.", - "parameters": { - "instanceGroupManager": { - "type": "string", - "description": "The name of the managed instance group to delete.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "zone": { - "type": "string", - "description": "The name of the zone where the managed instance group is located.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "instanceGroupManager" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "deleteInstances": { - "id": "compute.instanceGroupManagers.deleteInstances", - "path": "{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/deleteInstances", - "httpMethod": "POST", - "description": "Schedules a group action to delete the specified instances in the managed instance group. The instances are also removed from any target pools of which they were a member. This method reduces the targetSize of the managed instance group by the number of instances that you delete. This operation is marked as DONE when the action is scheduled even if the instances are still being deleted. You must separately verify the status of the deleting action with the listmanagedinstances method.\n\nIf the group is part of a backend service that has enabled connection draining, it can take up to 60 seconds after the connection draining duration has elapsed before the VM instance is removed or deleted.\n\nYou can specify a maximum of 1000 instances with this method per request.", - "parameters": { - "instanceGroupManager": { - "type": "string", - "description": "The name of the managed instance group.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "zone": { - "type": "string", - "description": "The name of the zone where the managed instance group is located.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "instanceGroupManager" - ], - "request": { - "$ref": "InstanceGroupManagersDeleteInstancesRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "get": { - "id": "compute.instanceGroupManagers.get", - "path": "{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}", - "httpMethod": "GET", - "description": "Returns all of the details about the specified managed instance group. Get a list of available managed instance groups by making a list() request.", - "parameters": { - "instanceGroupManager": { - "type": "string", - "description": "The name of the managed instance group.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "zone": { - "type": "string", - "description": "The name of the zone where the managed instance group is located.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "instanceGroupManager" - ], - "response": { - "$ref": "InstanceGroupManager" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "insert": { - "id": "compute.instanceGroupManagers.insert", - "path": "{project}/zones/{zone}/instanceGroupManagers", - "httpMethod": "POST", - "description": "Creates a managed instance group using the information that you specify in the request. After the group is created, it schedules an action to create instances in the group using the specified instance template. This operation is marked as DONE when the group is created even if the instances in the group have not yet been created. You must separately verify the status of the individual instances with the listmanagedinstances method.\n\nA managed instance group can have up to 1000 VM instances per group. Please contact Cloud Support if you need an increase in this limit.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "zone": { - "type": "string", - "description": "The name of the zone where you want to create the managed instance group.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone" - ], - "request": { - "$ref": "InstanceGroupManager" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "list": { - "id": "compute.instanceGroupManagers.list", - "path": "{project}/zones/{zone}/instanceGroupManagers", - "httpMethod": "GET", - "description": "Retrieves a list of managed instance groups that are contained within the specified project and zone.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "zone": { - "type": "string", - "description": "The name of the zone where the managed instance group is located.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone" - ], - "response": { - "$ref": "InstanceGroupManagerList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "listManagedInstances": { - "id": "compute.instanceGroupManagers.listManagedInstances", - "path": "{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/listManagedInstances", - "httpMethod": "POST", - "description": "Lists all of the instances in the managed instance group. Each instance in the list has a currentAction, which indicates the action that the managed instance group is performing on the instance. For example, if the group is still creating an instance, the currentAction is CREATING. If a previous action failed, the list displays the errors for that failed action.", - "parameters": { - "filter": { - "type": "string", - "location": "query" - }, - "instanceGroupManager": { - "type": "string", - "description": "The name of the managed instance group.", - "required": true, - "location": "path" - }, - "maxResults": { - "type": "integer", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "order_by": { - "type": "string", - "location": "query" - }, - "pageToken": { - "type": "string", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "zone": { - "type": "string", - "description": "The name of the zone where the managed instance group is located.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "instanceGroupManager" - ], - "response": { - "$ref": "InstanceGroupManagersListManagedInstancesResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "recreateInstances": { - "id": "compute.instanceGroupManagers.recreateInstances", - "path": "{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/recreateInstances", - "httpMethod": "POST", - "description": "Schedules a group action to recreate the specified instances in the managed instance group. The instances are deleted and recreated using the current instance template for the managed instance group. This operation is marked as DONE when the action is scheduled even if the instances have not yet been recreated. You must separately verify the status of the recreating action with the listmanagedinstances method.\n\nIf the group is part of a backend service that has enabled connection draining, it can take up to 60 seconds after the connection draining duration has elapsed before the VM instance is removed or deleted.\n\nYou can specify a maximum of 1000 instances with this method per request.", - "parameters": { - "instanceGroupManager": { - "type": "string", - "description": "The name of the managed instance group.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "zone": { - "type": "string", - "description": "The name of the zone where the managed instance group is located.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "instanceGroupManager" - ], - "request": { - "$ref": "InstanceGroupManagersRecreateInstancesRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "resize": { - "id": "compute.instanceGroupManagers.resize", - "path": "{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/resize", - "httpMethod": "POST", - "description": "Resizes the managed instance group. If you increase the size, the group creates new instances using the current instance template. If you decrease the size, the group deletes instances. The resize operation is marked DONE when the resize actions are scheduled even if the group has not yet added or deleted any instances. You must separately verify the status of the creating or deleting actions with the listmanagedinstances method.\n\nIf the group is part of a backend service that has enabled connection draining, it can take up to 60 seconds after the connection draining duration has elapsed before the VM instance is removed or deleted.", - "parameters": { - "instanceGroupManager": { - "type": "string", - "description": "The name of the managed instance group.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "size": { - "type": "integer", - "description": "The number of running instances that the managed instance group should maintain at any given time. The group automatically adds or removes instances to maintain the number of instances specified by this parameter.", - "required": true, - "format": "int32", - "location": "query" - }, - "zone": { - "type": "string", - "description": "The name of the zone where the managed instance group is located.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "instanceGroupManager", - "size" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "setInstanceTemplate": { - "id": "compute.instanceGroupManagers.setInstanceTemplate", - "path": "{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/setInstanceTemplate", - "httpMethod": "POST", - "description": "Specifies the instance template to use when creating new instances in this group. The templates for existing instances in the group do not change unless you recreate them.", - "parameters": { - "instanceGroupManager": { - "type": "string", - "description": "The name of the managed instance group.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "zone": { - "type": "string", - "description": "The name of the zone where the managed instance group is located.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "instanceGroupManager" - ], - "request": { - "$ref": "InstanceGroupManagersSetInstanceTemplateRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "setTargetPools": { - "id": "compute.instanceGroupManagers.setTargetPools", - "path": "{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/setTargetPools", - "httpMethod": "POST", - "description": "Modifies the target pools to which all instances in this managed instance group are assigned. The target pools automatically apply to all of the instances in the managed instance group. This operation is marked DONE when you make the request even if the instances have not yet been added to their target pools. The change might take some time to apply to all of the instances in the group depending on the size of the group.", - "parameters": { - "instanceGroupManager": { - "type": "string", - "description": "The name of the managed instance group.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "zone": { - "type": "string", - "description": "The name of the zone where the managed instance group is located.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "instanceGroupManager" - ], - "request": { - "$ref": "InstanceGroupManagersSetTargetPoolsRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - } - } - }, - "instanceGroups": { - "methods": { - "addInstances": { - "id": "compute.instanceGroups.addInstances", - "path": "{project}/zones/{zone}/instanceGroups/{instanceGroup}/addInstances", - "httpMethod": "POST", - "description": "Adds a list of instances to the specified instance group. All of the instances in the instance group must be in the same network/subnetwork. Read Adding instances for more information.", - "parameters": { - "instanceGroup": { - "type": "string", - "description": "The name of the instance group where you are adding instances.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "zone": { - "type": "string", - "description": "The name of the zone where the instance group is located.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "instanceGroup" - ], - "request": { - "$ref": "InstanceGroupsAddInstancesRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "aggregatedList": { - "id": "compute.instanceGroups.aggregatedList", - "path": "{project}/aggregated/instanceGroups", - "httpMethod": "GET", - "description": "Retrieves the list of instance groups and sorts them by zone.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "InstanceGroupAggregatedList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "delete": { - "id": "compute.instanceGroups.delete", - "path": "{project}/zones/{zone}/instanceGroups/{instanceGroup}", - "httpMethod": "DELETE", - "description": "Deletes the specified instance group. The instances in the group are not deleted. Note that instance group must not belong to a backend service. Read Deleting an instance group for more information.", - "parameters": { - "instanceGroup": { - "type": "string", - "description": "The name of the instance group to delete.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "zone": { - "type": "string", - "description": "The name of the zone where the instance group is located.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "instanceGroup" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "get": { - "id": "compute.instanceGroups.get", - "path": "{project}/zones/{zone}/instanceGroups/{instanceGroup}", - "httpMethod": "GET", - "description": "Returns the specified instance group. Get a list of available instance groups by making a list() request.", - "parameters": { - "instanceGroup": { - "type": "string", - "description": "The name of the instance group.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "zone": { - "type": "string", - "description": "The name of the zone where the instance group is located.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "instanceGroup" - ], - "response": { - "$ref": "InstanceGroup" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "insert": { - "id": "compute.instanceGroups.insert", - "path": "{project}/zones/{zone}/instanceGroups", - "httpMethod": "POST", - "description": "Creates an instance group in the specified project using the parameters that are included in the request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "zone": { - "type": "string", - "description": "The name of the zone where you want to create the instance group.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone" - ], - "request": { - "$ref": "InstanceGroup" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "list": { - "id": "compute.instanceGroups.list", - "path": "{project}/zones/{zone}/instanceGroups", - "httpMethod": "GET", - "description": "Retrieves the list of instance groups that are located in the specified project and zone.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "zone": { - "type": "string", - "description": "The name of the zone where the instance group is located.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone" - ], - "response": { - "$ref": "InstanceGroupList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "listInstances": { - "id": "compute.instanceGroups.listInstances", - "path": "{project}/zones/{zone}/instanceGroups/{instanceGroup}/listInstances", - "httpMethod": "POST", - "description": "Lists the instances in the specified instance group.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "instanceGroup": { - "type": "string", - "description": "The name of the instance group from which you want to generate a list of included instances.", - "required": true, - "location": "path" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "zone": { - "type": "string", - "description": "The name of the zone where the instance group is located.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "instanceGroup" - ], - "request": { - "$ref": "InstanceGroupsListInstancesRequest" - }, - "response": { - "$ref": "InstanceGroupsListInstances" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "removeInstances": { - "id": "compute.instanceGroups.removeInstances", - "path": "{project}/zones/{zone}/instanceGroups/{instanceGroup}/removeInstances", - "httpMethod": "POST", - "description": "Removes one or more instances from the specified instance group, but does not delete those instances.\n\nIf the group is part of a backend service that has enabled connection draining, it can take up to 60 seconds after the connection draining duration before the VM instance is removed or deleted.", - "parameters": { - "instanceGroup": { - "type": "string", - "description": "The name of the instance group where the specified instances will be removed.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "zone": { - "type": "string", - "description": "The name of the zone where the instance group is located.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "instanceGroup" - ], - "request": { - "$ref": "InstanceGroupsRemoveInstancesRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "setNamedPorts": { - "id": "compute.instanceGroups.setNamedPorts", - "path": "{project}/zones/{zone}/instanceGroups/{instanceGroup}/setNamedPorts", - "httpMethod": "POST", - "description": "Sets the named ports for the specified instance group.", - "parameters": { - "instanceGroup": { - "type": "string", - "description": "The name of the instance group where the named ports are updated.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "zone": { - "type": "string", - "description": "The name of the zone where the instance group is located.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "instanceGroup" - ], - "request": { - "$ref": "InstanceGroupsSetNamedPortsRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - } - } - }, - "instanceTemplates": { - "methods": { - "delete": { - "id": "compute.instanceTemplates.delete", - "path": "{project}/global/instanceTemplates/{instanceTemplate}", - "httpMethod": "DELETE", - "description": "Deletes the specified instance template. Deleting an instance template is permanent and cannot be undone. It's not possible to delete templates which are in use by an instance group.", - "parameters": { - "instanceTemplate": { - "type": "string", - "description": "The name of the instance template to delete.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "instanceTemplate" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "get": { - "id": "compute.instanceTemplates.get", - "path": "{project}/global/instanceTemplates/{instanceTemplate}", - "httpMethod": "GET", - "description": "Returns the specified instance template. Get a list of available instance templates by making a list() request.", - "parameters": { - "instanceTemplate": { - "type": "string", - "description": "The name of the instance template.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "instanceTemplate" - ], - "response": { - "$ref": "InstanceTemplate" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "insert": { - "id": "compute.instanceTemplates.insert", - "path": "{project}/global/instanceTemplates", - "httpMethod": "POST", - "description": "Creates an instance template in the specified project using the data that is included in the request. If you are creating a new template to update an existing instance group, your new instance template must use the same network or, if applicable, the same subnetwork as the original template.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project" - ], - "request": { - "$ref": "InstanceTemplate" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "list": { - "id": "compute.instanceTemplates.list", - "path": "{project}/global/instanceTemplates", - "httpMethod": "GET", - "description": "Retrieves a list of instance templates that are contained within the specified project and zone.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "InstanceTemplateList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - } - } - }, - "instances": { - "methods": { - "addAccessConfig": { - "id": "compute.instances.addAccessConfig", - "path": "{project}/zones/{zone}/instances/{instance}/addAccessConfig", - "httpMethod": "POST", - "description": "Adds an access config to an instance's network interface.", - "parameters": { - "instance": { - "type": "string", - "description": "The instance name for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "networkInterface": { - "type": "string", - "description": "The name of the network interface to add to this instance.", - "required": true, - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "zone": { - "type": "string", - "description": "The name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "instance", - "networkInterface" - ], - "request": { - "$ref": "AccessConfig" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "aggregatedList": { - "id": "compute.instances.aggregatedList", - "path": "{project}/aggregated/instances", - "httpMethod": "GET", - "description": "Retrieves aggregated list of instances.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "InstanceAggregatedList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "attachDisk": { - "id": "compute.instances.attachDisk", - "path": "{project}/zones/{zone}/instances/{instance}/attachDisk", - "httpMethod": "POST", - "description": "Attaches an existing Disk resource to an instance. You must first create the disk before you can attach it. It is not possible to create and attach a disk at the same time. For more information, read Adding a persistent disk to your instance.", - "parameters": { - "instance": { - "type": "string", - "description": "The instance name for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "zone": { - "type": "string", - "description": "The name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "instance" - ], - "request": { - "$ref": "AttachedDisk" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "delete": { - "id": "compute.instances.delete", - "path": "{project}/zones/{zone}/instances/{instance}", - "httpMethod": "DELETE", - "description": "Deletes the specified Instance resource. For more information, see Stopping or Deleting an Instance.", - "parameters": { - "instance": { - "type": "string", - "description": "Name of the instance resource to delete.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "zone": { - "type": "string", - "description": "The name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "instance" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "deleteAccessConfig": { - "id": "compute.instances.deleteAccessConfig", - "path": "{project}/zones/{zone}/instances/{instance}/deleteAccessConfig", - "httpMethod": "POST", - "description": "Deletes an access config from an instance's network interface.", - "parameters": { - "accessConfig": { - "type": "string", - "description": "The name of the access config to delete.", - "required": true, - "location": "query" - }, - "instance": { - "type": "string", - "description": "The instance name for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "networkInterface": { - "type": "string", - "description": "The name of the network interface.", - "required": true, - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "zone": { - "type": "string", - "description": "The name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "instance", - "accessConfig", - "networkInterface" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "detachDisk": { - "id": "compute.instances.detachDisk", - "path": "{project}/zones/{zone}/instances/{instance}/detachDisk", - "httpMethod": "POST", - "description": "Detaches a disk from an instance.", - "parameters": { - "deviceName": { - "type": "string", - "description": "Disk device name to detach.", - "required": true, - "location": "query" - }, - "instance": { - "type": "string", - "description": "Instance name.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "zone": { - "type": "string", - "description": "The name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "instance", - "deviceName" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "get": { - "id": "compute.instances.get", - "path": "{project}/zones/{zone}/instances/{instance}", - "httpMethod": "GET", - "description": "Returns the specified Instance resource. Get a list of available instances by making a list() request.", - "parameters": { - "instance": { - "type": "string", - "description": "Name of the instance resource to return.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "zone": { - "type": "string", - "description": "The name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "instance" - ], - "response": { - "$ref": "Instance" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "getSerialPortOutput": { - "id": "compute.instances.getSerialPortOutput", - "path": "{project}/zones/{zone}/instances/{instance}/serialPort", - "httpMethod": "GET", - "description": "Returns the specified instance's serial port output.", - "parameters": { - "instance": { - "type": "string", - "description": "Name of the instance scoping this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "port": { - "type": "integer", - "description": "Specifies which COM or serial port to retrieve data from.", - "default": "1", - "format": "int32", - "minimum": "1", - "maximum": "4", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "start": { - "type": "string", - "description": "Returns output starting from a specific byte position. Use this to page through output when the output is too large to return in a single request. For the initial request, leave this field unspecified. For subsequent calls, this field should be set to the next value returned in the previous call.", - "format": "int64", - "location": "query" - }, - "zone": { - "type": "string", - "description": "The name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "instance" - ], - "response": { - "$ref": "SerialPortOutput" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "insert": { - "id": "compute.instances.insert", - "path": "{project}/zones/{zone}/instances", - "httpMethod": "POST", - "description": "Creates an instance resource in the specified project using the data included in the request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "zone": { - "type": "string", - "description": "The name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone" - ], - "request": { - "$ref": "Instance" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "list": { - "id": "compute.instances.list", - "path": "{project}/zones/{zone}/instances", - "httpMethod": "GET", - "description": "Retrieves the list of instances contained within the specified zone.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "zone": { - "type": "string", - "description": "The name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone" - ], - "response": { - "$ref": "InstanceList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "reset": { - "id": "compute.instances.reset", - "path": "{project}/zones/{zone}/instances/{instance}/reset", - "httpMethod": "POST", - "description": "Performs a reset on the instance. For more information, see Resetting an instance.", - "parameters": { - "instance": { - "type": "string", - "description": "Name of the instance scoping this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "zone": { - "type": "string", - "description": "The name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "instance" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "setDeletionProtection": { - "id": "compute.instances.setDeletionProtection", - "path": "{project}/zones/{zone}/instances/{resource}/setDeletionProtection", - "httpMethod": "POST", - "description": "Sets deletion protection on the instance.", - "parameters": { - "deletionProtection": { - "type": "boolean", - "description": "Whether the resource should be protected against deletion.", - "default": "true", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "zone": { - "type": "string", - "description": "The name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "resource" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "setDiskAutoDelete": { - "id": "compute.instances.setDiskAutoDelete", - "path": "{project}/zones/{zone}/instances/{instance}/setDiskAutoDelete", - "httpMethod": "POST", - "description": "Sets the auto-delete flag for a disk attached to an instance.", - "parameters": { - "autoDelete": { - "type": "boolean", - "description": "Whether to auto-delete the disk when the instance is deleted.", - "required": true, - "location": "query" - }, - "deviceName": { - "type": "string", - "description": "The device name of the disk to modify.", - "required": true, - "pattern": "\\w[\\w.-]{0,254}", - "location": "query" - }, - "instance": { - "type": "string", - "description": "The instance name.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "zone": { - "type": "string", - "description": "The name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "instance", - "autoDelete", - "deviceName" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "setLabels": { - "id": "compute.instances.setLabels", - "path": "{project}/zones/{zone}/instances/{instance}/setLabels", - "httpMethod": "POST", - "description": "Sets labels on an instance. To learn more about labels, read the Labeling Resources documentation.", - "parameters": { - "instance": { - "type": "string", - "description": "Name of the instance scoping this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "zone": { - "type": "string", - "description": "The name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "instance" - ], - "request": { - "$ref": "InstancesSetLabelsRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "setMachineResources": { - "id": "compute.instances.setMachineResources", - "path": "{project}/zones/{zone}/instances/{instance}/setMachineResources", - "httpMethod": "POST", - "description": "Changes the number and/or type of accelerator for a stopped instance to the values specified in the request.", - "parameters": { - "instance": { - "type": "string", - "description": "Name of the instance scoping this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "zone": { - "type": "string", - "description": "The name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "instance" - ], - "request": { - "$ref": "InstancesSetMachineResourcesRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "setMachineType": { - "id": "compute.instances.setMachineType", - "path": "{project}/zones/{zone}/instances/{instance}/setMachineType", - "httpMethod": "POST", - "description": "Changes the machine type for a stopped instance to the machine type specified in the request.", - "parameters": { - "instance": { - "type": "string", - "description": "Name of the instance scoping this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "zone": { - "type": "string", - "description": "The name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "instance" - ], - "request": { - "$ref": "InstancesSetMachineTypeRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "setMetadata": { - "id": "compute.instances.setMetadata", - "path": "{project}/zones/{zone}/instances/{instance}/setMetadata", - "httpMethod": "POST", - "description": "Sets metadata for the specified instance to the data included in the request.", - "parameters": { - "instance": { - "type": "string", - "description": "Name of the instance scoping this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "zone": { - "type": "string", - "description": "The name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "instance" - ], - "request": { - "$ref": "Metadata" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "setMinCpuPlatform": { - "id": "compute.instances.setMinCpuPlatform", - "path": "{project}/zones/{zone}/instances/{instance}/setMinCpuPlatform", - "httpMethod": "POST", - "description": "Changes the minimum CPU platform that this instance should use. This method can only be called on a stopped instance. For more information, read Specifying a Minimum CPU Platform.", - "parameters": { - "instance": { - "type": "string", - "description": "Name of the instance scoping this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "zone": { - "type": "string", - "description": "The name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "instance" - ], - "request": { - "$ref": "InstancesSetMinCpuPlatformRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "setScheduling": { - "id": "compute.instances.setScheduling", - "path": "{project}/zones/{zone}/instances/{instance}/setScheduling", - "httpMethod": "POST", - "description": "Sets an instance's scheduling options.", - "parameters": { - "instance": { - "type": "string", - "description": "Instance name.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "zone": { - "type": "string", - "description": "The name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "instance" - ], - "request": { - "$ref": "Scheduling" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "setServiceAccount": { - "id": "compute.instances.setServiceAccount", - "path": "{project}/zones/{zone}/instances/{instance}/setServiceAccount", - "httpMethod": "POST", - "description": "Sets the service account on the instance. For more information, read Changing the service account and access scopes for an instance.", - "parameters": { - "instance": { - "type": "string", - "description": "Name of the instance resource to start.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "zone": { - "type": "string", - "description": "The name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "instance" - ], - "request": { - "$ref": "InstancesSetServiceAccountRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "setTags": { - "id": "compute.instances.setTags", - "path": "{project}/zones/{zone}/instances/{instance}/setTags", - "httpMethod": "POST", - "description": "Sets tags for the specified instance to the data included in the request.", - "parameters": { - "instance": { - "type": "string", - "description": "Name of the instance scoping this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "zone": { - "type": "string", - "description": "The name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "instance" - ], - "request": { - "$ref": "Tags" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "start": { - "id": "compute.instances.start", - "path": "{project}/zones/{zone}/instances/{instance}/start", - "httpMethod": "POST", - "description": "Starts an instance that was stopped using the using the instances().stop method. For more information, see Restart an instance.", - "parameters": { - "instance": { - "type": "string", - "description": "Name of the instance resource to start.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "zone": { - "type": "string", - "description": "The name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "instance" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "startWithEncryptionKey": { - "id": "compute.instances.startWithEncryptionKey", - "path": "{project}/zones/{zone}/instances/{instance}/startWithEncryptionKey", - "httpMethod": "POST", - "description": "Starts an instance that was stopped using the using the instances().stop method. For more information, see Restart an instance.", - "parameters": { - "instance": { - "type": "string", - "description": "Name of the instance resource to start.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "zone": { - "type": "string", - "description": "The name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "instance" - ], - "request": { - "$ref": "InstancesStartWithEncryptionKeyRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "stop": { - "id": "compute.instances.stop", - "path": "{project}/zones/{zone}/instances/{instance}/stop", - "httpMethod": "POST", - "description": "Stops a running instance, shutting it down cleanly, and allows you to restart the instance at a later time. Stopped instances do not incur VM usage charges while they are stopped. However, resources that the VM is using, such as persistent disks and static IP addresses, will continue to be charged until they are deleted. For more information, see Stopping an instance.", - "parameters": { - "instance": { - "type": "string", - "description": "Name of the instance resource to stop.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "zone": { - "type": "string", - "description": "The name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "instance" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - } - } - }, - "interconnectAttachments": { - "methods": { - "aggregatedList": { - "id": "compute.interconnectAttachments.aggregatedList", - "path": "{project}/aggregated/interconnectAttachments", - "httpMethod": "GET", - "description": "Retrieves an aggregated list of interconnect attachments.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "InterconnectAttachmentAggregatedList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "delete": { - "id": "compute.interconnectAttachments.delete", - "path": "{project}/regions/{region}/interconnectAttachments/{interconnectAttachment}", - "httpMethod": "DELETE", - "description": "Deletes the specified interconnect attachment.", - "parameters": { - "interconnectAttachment": { - "type": "string", - "description": "Name of the interconnect attachment to delete.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "region", - "interconnectAttachment" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "get": { - "id": "compute.interconnectAttachments.get", - "path": "{project}/regions/{region}/interconnectAttachments/{interconnectAttachment}", - "httpMethod": "GET", - "description": "Returns the specified interconnect attachment.", - "parameters": { - "interconnectAttachment": { - "type": "string", - "description": "Name of the interconnect attachment to return.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "interconnectAttachment" - ], - "response": { - "$ref": "InterconnectAttachment" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "insert": { - "id": "compute.interconnectAttachments.insert", - "path": "{project}/regions/{region}/interconnectAttachments", - "httpMethod": "POST", - "description": "Creates an InterconnectAttachment in the specified project using the data included in the request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "region" - ], - "request": { - "$ref": "InterconnectAttachment" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "list": { - "id": "compute.interconnectAttachments.list", - "path": "{project}/regions/{region}/interconnectAttachments", - "httpMethod": "GET", - "description": "Retrieves the list of interconnect attachments contained within the specified region.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region" - ], - "response": { - "$ref": "InterconnectAttachmentList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - } - } - }, - "interconnectLocations": { - "methods": { - "get": { - "id": "compute.interconnectLocations.get", - "path": "{project}/global/interconnectLocations/{interconnectLocation}", - "httpMethod": "GET", - "description": "Returns the details for the specified interconnect location. Get a list of available interconnect locations by making a list() request.", - "parameters": { - "interconnectLocation": { - "type": "string", - "description": "Name of the interconnect location to return.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "interconnectLocation" - ], - "response": { - "$ref": "InterconnectLocation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "list": { - "id": "compute.interconnectLocations.list", - "path": "{project}/global/interconnectLocations", - "httpMethod": "GET", - "description": "Retrieves the list of interconnect locations available to the specified project.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "InterconnectLocationList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - } - } - }, - "interconnects": { - "methods": { - "delete": { - "id": "compute.interconnects.delete", - "path": "{project}/global/interconnects/{interconnect}", - "httpMethod": "DELETE", - "description": "Deletes the specified interconnect.", - "parameters": { - "interconnect": { - "type": "string", - "description": "Name of the interconnect to delete.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "interconnect" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "get": { - "id": "compute.interconnects.get", - "path": "{project}/global/interconnects/{interconnect}", - "httpMethod": "GET", - "description": "Returns the specified interconnect. Get a list of available interconnects by making a list() request.", - "parameters": { - "interconnect": { - "type": "string", - "description": "Name of the interconnect to return.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "interconnect" - ], - "response": { - "$ref": "Interconnect" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "insert": { - "id": "compute.interconnects.insert", - "path": "{project}/global/interconnects", - "httpMethod": "POST", - "description": "Creates a Interconnect in the specified project using the data included in the request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project" - ], - "request": { - "$ref": "Interconnect" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "list": { - "id": "compute.interconnects.list", - "path": "{project}/global/interconnects", - "httpMethod": "GET", - "description": "Retrieves the list of interconnect available to the specified project.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "InterconnectList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "patch": { - "id": "compute.interconnects.patch", - "path": "{project}/global/interconnects/{interconnect}", - "httpMethod": "PATCH", - "description": "Updates the specified interconnect with the data included in the request. This method supports PATCH semantics and uses the JSON merge patch format and processing rules.", - "parameters": { - "interconnect": { - "type": "string", - "description": "Name of the interconnect to update.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "interconnect" - ], - "request": { - "$ref": "Interconnect" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - } - } - }, - "licenses": { - "methods": { - "get": { - "id": "compute.licenses.get", - "path": "{project}/global/licenses/{license}", - "httpMethod": "GET", - "description": "Returns the specified License resource.", - "parameters": { - "license": { - "type": "string", - "description": "Name of the License resource to return.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "license" - ], - "response": { - "$ref": "License" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - } - } - }, - "machineTypes": { - "methods": { - "aggregatedList": { - "id": "compute.machineTypes.aggregatedList", - "path": "{project}/aggregated/machineTypes", - "httpMethod": "GET", - "description": "Retrieves an aggregated list of machine types.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "MachineTypeAggregatedList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "get": { - "id": "compute.machineTypes.get", - "path": "{project}/zones/{zone}/machineTypes/{machineType}", - "httpMethod": "GET", - "description": "Returns the specified machine type. Get a list of available machine types by making a list() request.", - "parameters": { - "machineType": { - "type": "string", - "description": "Name of the machine type to return.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "zone": { - "type": "string", - "description": "The name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "machineType" - ], - "response": { - "$ref": "MachineType" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "list": { - "id": "compute.machineTypes.list", - "path": "{project}/zones/{zone}/machineTypes", - "httpMethod": "GET", - "description": "Retrieves a list of machine types available to the specified project.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "zone": { - "type": "string", - "description": "The name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone" - ], - "response": { - "$ref": "MachineTypeList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - } - } - }, - "networks": { - "methods": { - "addPeering": { - "id": "compute.networks.addPeering", - "path": "{project}/global/networks/{network}/addPeering", - "httpMethod": "POST", - "description": "Adds a peering to the specified network.", - "parameters": { - "network": { - "type": "string", - "description": "Name of the network resource to add peering to.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "network" - ], - "request": { - "$ref": "NetworksAddPeeringRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "delete": { - "id": "compute.networks.delete", - "path": "{project}/global/networks/{network}", - "httpMethod": "DELETE", - "description": "Deletes the specified network.", - "parameters": { - "network": { - "type": "string", - "description": "Name of the network to delete.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "network" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "get": { - "id": "compute.networks.get", - "path": "{project}/global/networks/{network}", - "httpMethod": "GET", - "description": "Returns the specified network. Get a list of available networks by making a list() request.", - "parameters": { - "network": { - "type": "string", - "description": "Name of the network to return.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "network" - ], - "response": { - "$ref": "Network" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "insert": { - "id": "compute.networks.insert", - "path": "{project}/global/networks", - "httpMethod": "POST", - "description": "Creates a network in the specified project using the data included in the request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project" - ], - "request": { - "$ref": "Network" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "list": { - "id": "compute.networks.list", - "path": "{project}/global/networks", - "httpMethod": "GET", - "description": "Retrieves the list of networks available to the specified project.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "NetworkList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "patch": { - "id": "compute.networks.patch", - "path": "{project}/global/networks/{network}", - "httpMethod": "PATCH", - "description": "Patches the specified network with the data included in the request. Only the following fields can be modified: routingConfig.routingMode.", - "parameters": { - "network": { - "type": "string", - "description": "Name of the network to update.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "network" - ], - "request": { - "$ref": "Network" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "removePeering": { - "id": "compute.networks.removePeering", - "path": "{project}/global/networks/{network}/removePeering", - "httpMethod": "POST", - "description": "Removes a peering from the specified network.", - "parameters": { - "network": { - "type": "string", - "description": "Name of the network resource to remove peering from.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "network" - ], - "request": { - "$ref": "NetworksRemovePeeringRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "switchToCustomMode": { - "id": "compute.networks.switchToCustomMode", - "path": "{project}/global/networks/{network}/switchToCustomMode", - "httpMethod": "POST", - "description": "Switches the network mode from auto subnet mode to custom subnet mode.", - "parameters": { - "network": { - "type": "string", - "description": "Name of the network to be updated.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "network" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - } - } - }, - "projects": { - "methods": { - "disableXpnHost": { - "id": "compute.projects.disableXpnHost", - "path": "{project}/disableXpnHost", - "httpMethod": "POST", - "description": "Disable this project as a shared VPC host project.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "disableXpnResource": { - "id": "compute.projects.disableXpnResource", - "path": "{project}/disableXpnResource", - "httpMethod": "POST", - "description": "Disable a serivce resource (a.k.a service project) associated with this host project.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project" - ], - "request": { - "$ref": "ProjectsDisableXpnResourceRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "enableXpnHost": { - "id": "compute.projects.enableXpnHost", - "path": "{project}/enableXpnHost", - "httpMethod": "POST", - "description": "Enable this project as a shared VPC host project.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "enableXpnResource": { - "id": "compute.projects.enableXpnResource", - "path": "{project}/enableXpnResource", - "httpMethod": "POST", - "description": "Enable service resource (a.k.a service project) for a host project, so that subnets in the host project can be used by instances in the service project.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project" - ], - "request": { - "$ref": "ProjectsEnableXpnResourceRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "get": { - "id": "compute.projects.get", - "path": "{project}", - "httpMethod": "GET", - "description": "Returns the specified Project resource.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "Project" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "getXpnHost": { - "id": "compute.projects.getXpnHost", - "path": "{project}/getXpnHost", - "httpMethod": "GET", - "description": "Get the shared VPC host project that this project links to. May be empty if no link exists.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "Project" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "getXpnResources": { - "id": "compute.projects.getXpnResources", - "path": "{project}/getXpnResources", - "httpMethod": "GET", - "description": "Get service resources (a.k.a service project) associated with this host project.", - "parameters": { - "filter": { - "type": "string", - "location": "query" - }, - "maxResults": { - "type": "integer", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "order_by": { - "type": "string", - "location": "query" - }, - "pageToken": { - "type": "string", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "ProjectsGetXpnResources" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "listXpnHosts": { - "id": "compute.projects.listXpnHosts", - "path": "{project}/listXpnHosts", - "httpMethod": "POST", - "description": "List all shared VPC host projects visible to the user in an organization.", - "parameters": { - "filter": { - "type": "string", - "location": "query" - }, - "maxResults": { - "type": "integer", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "order_by": { - "type": "string", - "location": "query" - }, - "pageToken": { - "type": "string", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "request": { - "$ref": "ProjectsListXpnHostsRequest" - }, - "response": { - "$ref": "XpnHostList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "moveDisk": { - "id": "compute.projects.moveDisk", - "path": "{project}/moveDisk", - "httpMethod": "POST", - "description": "Moves a persistent disk from one zone to another.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project" - ], - "request": { - "$ref": "DiskMoveRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "moveInstance": { - "id": "compute.projects.moveInstance", - "path": "{project}/moveInstance", - "httpMethod": "POST", - "description": "Moves an instance and its attached persistent disks from one zone to another.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project" - ], - "request": { - "$ref": "InstanceMoveRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "setCommonInstanceMetadata": { - "id": "compute.projects.setCommonInstanceMetadata", - "path": "{project}/setCommonInstanceMetadata", - "httpMethod": "POST", - "description": "Sets metadata common to all instances within the specified project using the data included in the request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project" - ], - "request": { - "$ref": "Metadata" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "setUsageExportBucket": { - "id": "compute.projects.setUsageExportBucket", - "path": "{project}/setUsageExportBucket", - "httpMethod": "POST", - "description": "Enables the usage export feature and sets the usage export bucket where reports are stored. If you provide an empty request body using this method, the usage export feature will be disabled.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project" - ], - "request": { - "$ref": "UsageExportLocation" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/devstorage.full_control", - "https://www.googleapis.com/auth/devstorage.read_only", - "https://www.googleapis.com/auth/devstorage.read_write" - ] - } - } - }, - "regionAutoscalers": { - "methods": { - "delete": { - "id": "compute.regionAutoscalers.delete", - "path": "{project}/regions/{region}/autoscalers/{autoscaler}", - "httpMethod": "DELETE", - "description": "Deletes the specified autoscaler.", - "parameters": { - "autoscaler": { - "type": "string", - "description": "Name of the autoscaler to delete.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "region", - "autoscaler" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "get": { - "id": "compute.regionAutoscalers.get", - "path": "{project}/regions/{region}/autoscalers/{autoscaler}", - "httpMethod": "GET", - "description": "Returns the specified autoscaler.", - "parameters": { - "autoscaler": { - "type": "string", - "description": "Name of the autoscaler to return.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "autoscaler" - ], - "response": { - "$ref": "Autoscaler" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "insert": { - "id": "compute.regionAutoscalers.insert", - "path": "{project}/regions/{region}/autoscalers", - "httpMethod": "POST", - "description": "Creates an autoscaler in the specified project using the data included in the request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "region" - ], - "request": { - "$ref": "Autoscaler" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "list": { - "id": "compute.regionAutoscalers.list", - "path": "{project}/regions/{region}/autoscalers", - "httpMethod": "GET", - "description": "Retrieves a list of autoscalers contained within the specified region.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region" - ], - "response": { - "$ref": "RegionAutoscalerList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "patch": { - "id": "compute.regionAutoscalers.patch", - "path": "{project}/regions/{region}/autoscalers", - "httpMethod": "PATCH", - "description": "Updates an autoscaler in the specified project using the data included in the request. This method supports PATCH semantics and uses the JSON merge patch format and processing rules.", - "parameters": { - "autoscaler": { - "type": "string", - "description": "Name of the autoscaler to patch.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "region" - ], - "request": { - "$ref": "Autoscaler" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "update": { - "id": "compute.regionAutoscalers.update", - "path": "{project}/regions/{region}/autoscalers", - "httpMethod": "PUT", - "description": "Updates an autoscaler in the specified project using the data included in the request.", - "parameters": { - "autoscaler": { - "type": "string", - "description": "Name of the autoscaler to update.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "region" - ], - "request": { - "$ref": "Autoscaler" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - } - } - }, - "regionBackendServices": { - "methods": { - "delete": { - "id": "compute.regionBackendServices.delete", - "path": "{project}/regions/{region}/backendServices/{backendService}", - "httpMethod": "DELETE", - "description": "Deletes the specified regional BackendService resource.", - "parameters": { - "backendService": { - "type": "string", - "description": "Name of the BackendService resource to delete.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "region", - "backendService" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "get": { - "id": "compute.regionBackendServices.get", - "path": "{project}/regions/{region}/backendServices/{backendService}", - "httpMethod": "GET", - "description": "Returns the specified regional BackendService resource.", - "parameters": { - "backendService": { - "type": "string", - "description": "Name of the BackendService resource to return.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "backendService" - ], - "response": { - "$ref": "BackendService" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "getHealth": { - "id": "compute.regionBackendServices.getHealth", - "path": "{project}/regions/{region}/backendServices/{backendService}/getHealth", - "httpMethod": "POST", - "description": "Gets the most recent health check results for this regional BackendService.", - "parameters": { - "backendService": { - "type": "string", - "description": "Name of the BackendService resource to which the queried instance belongs.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "backendService" - ], - "request": { - "$ref": "ResourceGroupReference" - }, - "response": { - "$ref": "BackendServiceGroupHealth" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "insert": { - "id": "compute.regionBackendServices.insert", - "path": "{project}/regions/{region}/backendServices", - "httpMethod": "POST", - "description": "Creates a regional BackendService resource in the specified project using the data included in the request. There are several restrictions and guidelines to keep in mind when creating a regional backend service. Read Restrictions and Guidelines for more information.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "region" - ], - "request": { - "$ref": "BackendService" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "list": { - "id": "compute.regionBackendServices.list", - "path": "{project}/regions/{region}/backendServices", - "httpMethod": "GET", - "description": "Retrieves the list of regional BackendService resources available to the specified project in the given region.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region" - ], - "response": { - "$ref": "BackendServiceList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "patch": { - "id": "compute.regionBackendServices.patch", - "path": "{project}/regions/{region}/backendServices/{backendService}", - "httpMethod": "PATCH", - "description": "Updates the specified regional BackendService resource with the data included in the request. There are several restrictions and guidelines to keep in mind when updating a backend service. Read Restrictions and Guidelines for more information. This method supports PATCH semantics and uses the JSON merge patch format and processing rules.", - "parameters": { - "backendService": { - "type": "string", - "description": "Name of the BackendService resource to patch.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "region", - "backendService" - ], - "request": { - "$ref": "BackendService" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "update": { - "id": "compute.regionBackendServices.update", - "path": "{project}/regions/{region}/backendServices/{backendService}", - "httpMethod": "PUT", - "description": "Updates the specified regional BackendService resource with the data included in the request. There are several restrictions and guidelines to keep in mind when updating a backend service. Read Restrictions and Guidelines for more information.", - "parameters": { - "backendService": { - "type": "string", - "description": "Name of the BackendService resource to update.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "region", - "backendService" - ], - "request": { - "$ref": "BackendService" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - } - } - }, - "regionCommitments": { - "methods": { - "aggregatedList": { - "id": "compute.regionCommitments.aggregatedList", - "path": "{project}/aggregated/commitments", - "httpMethod": "GET", - "description": "Retrieves an aggregated list of commitments.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "CommitmentAggregatedList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "get": { - "id": "compute.regionCommitments.get", - "path": "{project}/regions/{region}/commitments/{commitment}", - "httpMethod": "GET", - "description": "Returns the specified commitment resource. Get a list of available commitments by making a list() request.", - "parameters": { - "commitment": { - "type": "string", - "description": "Name of the commitment to return.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "commitment" - ], - "response": { - "$ref": "Commitment" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "insert": { - "id": "compute.regionCommitments.insert", - "path": "{project}/regions/{region}/commitments", - "httpMethod": "POST", - "description": "Creates a commitment in the specified project using the data included in the request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "region" - ], - "request": { - "$ref": "Commitment" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "list": { - "id": "compute.regionCommitments.list", - "path": "{project}/regions/{region}/commitments", - "httpMethod": "GET", - "description": "Retrieves a list of commitments contained within the specified region.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region" - ], - "response": { - "$ref": "CommitmentList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - } - } - }, - "regionInstanceGroupManagers": { - "methods": { - "abandonInstances": { - "id": "compute.regionInstanceGroupManagers.abandonInstances", - "path": "{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/abandonInstances", - "httpMethod": "POST", - "description": "Schedules a group action to remove the specified instances from the managed instance group. Abandoning an instance does not delete the instance, but it does remove the instance from any target pools that are applied by the managed instance group. This method reduces the targetSize of the managed instance group by the number of instances that you abandon. This operation is marked as DONE when the action is scheduled even if the instances have not yet been removed from the group. You must separately verify the status of the abandoning action with the listmanagedinstances method.\n\nIf the group is part of a backend service that has enabled connection draining, it can take up to 60 seconds after the connection draining duration has elapsed before the VM instance is removed or deleted.\n\nYou can specify a maximum of 1000 instances with this method per request.", - "parameters": { - "instanceGroupManager": { - "type": "string", - "description": "Name of the managed instance group.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "region", - "instanceGroupManager" - ], - "request": { - "$ref": "RegionInstanceGroupManagersAbandonInstancesRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "delete": { - "id": "compute.regionInstanceGroupManagers.delete", - "path": "{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}", - "httpMethod": "DELETE", - "description": "Deletes the specified managed instance group and all of the instances in that group.", - "parameters": { - "instanceGroupManager": { - "type": "string", - "description": "Name of the managed instance group to delete.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "region", - "instanceGroupManager" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "deleteInstances": { - "id": "compute.regionInstanceGroupManagers.deleteInstances", - "path": "{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/deleteInstances", - "httpMethod": "POST", - "description": "Schedules a group action to delete the specified instances in the managed instance group. The instances are also removed from any target pools of which they were a member. This method reduces the targetSize of the managed instance group by the number of instances that you delete. This operation is marked as DONE when the action is scheduled even if the instances are still being deleted. You must separately verify the status of the deleting action with the listmanagedinstances method.\n\nIf the group is part of a backend service that has enabled connection draining, it can take up to 60 seconds after the connection draining duration has elapsed before the VM instance is removed or deleted.\n\nYou can specify a maximum of 1000 instances with this method per request.", - "parameters": { - "instanceGroupManager": { - "type": "string", - "description": "Name of the managed instance group.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "region", - "instanceGroupManager" - ], - "request": { - "$ref": "RegionInstanceGroupManagersDeleteInstancesRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "get": { - "id": "compute.regionInstanceGroupManagers.get", - "path": "{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}", - "httpMethod": "GET", - "description": "Returns all of the details about the specified managed instance group.", - "parameters": { - "instanceGroupManager": { - "type": "string", - "description": "Name of the managed instance group to return.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "instanceGroupManager" - ], - "response": { - "$ref": "InstanceGroupManager" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "insert": { - "id": "compute.regionInstanceGroupManagers.insert", - "path": "{project}/regions/{region}/instanceGroupManagers", - "httpMethod": "POST", - "description": "Creates a managed instance group using the information that you specify in the request. After the group is created, it schedules an action to create instances in the group using the specified instance template. This operation is marked as DONE when the group is created even if the instances in the group have not yet been created. You must separately verify the status of the individual instances with the listmanagedinstances method.\n\nA regional managed instance group can contain up to 2000 instances.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "region" - ], - "request": { - "$ref": "InstanceGroupManager" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "list": { - "id": "compute.regionInstanceGroupManagers.list", - "path": "{project}/regions/{region}/instanceGroupManagers", - "httpMethod": "GET", - "description": "Retrieves the list of managed instance groups that are contained within the specified region.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region" - ], - "response": { - "$ref": "RegionInstanceGroupManagerList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "listManagedInstances": { - "id": "compute.regionInstanceGroupManagers.listManagedInstances", - "path": "{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/listManagedInstances", - "httpMethod": "POST", - "description": "Lists the instances in the managed instance group and instances that are scheduled to be created. The list includes any current actions that the group has scheduled for its instances.", - "parameters": { - "filter": { - "type": "string", - "location": "query" - }, - "instanceGroupManager": { - "type": "string", - "description": "The name of the managed instance group.", - "required": true, - "location": "path" - }, - "maxResults": { - "type": "integer", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "order_by": { - "type": "string", - "location": "query" - }, - "pageToken": { - "type": "string", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "instanceGroupManager" - ], - "response": { - "$ref": "RegionInstanceGroupManagersListInstancesResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "recreateInstances": { - "id": "compute.regionInstanceGroupManagers.recreateInstances", - "path": "{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/recreateInstances", - "httpMethod": "POST", - "description": "Schedules a group action to recreate the specified instances in the managed instance group. The instances are deleted and recreated using the current instance template for the managed instance group. This operation is marked as DONE when the action is scheduled even if the instances have not yet been recreated. You must separately verify the status of the recreating action with the listmanagedinstances method.\n\nIf the group is part of a backend service that has enabled connection draining, it can take up to 60 seconds after the connection draining duration has elapsed before the VM instance is removed or deleted.\n\nYou can specify a maximum of 1000 instances with this method per request.", - "parameters": { - "instanceGroupManager": { - "type": "string", - "description": "Name of the managed instance group.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "region", - "instanceGroupManager" - ], - "request": { - "$ref": "RegionInstanceGroupManagersRecreateRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "resize": { - "id": "compute.regionInstanceGroupManagers.resize", - "path": "{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/resize", - "httpMethod": "POST", - "description": "Changes the intended size for the managed instance group. If you increase the size, the group schedules actions to create new instances using the current instance template. If you decrease the size, the group schedules delete actions on one or more instances. The resize operation is marked DONE when the resize actions are scheduled even if the group has not yet added or deleted any instances. You must separately verify the status of the creating or deleting actions with the listmanagedinstances method.\n\nIf the group is part of a backend service that has enabled connection draining, it can take up to 60 seconds after the connection draining duration has elapsed before the VM instance is removed or deleted.", - "parameters": { - "instanceGroupManager": { - "type": "string", - "description": "Name of the managed instance group.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "size": { - "type": "integer", - "description": "Number of instances that should exist in this instance group manager.", - "required": true, - "format": "int32", - "minimum": "0", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "region", - "instanceGroupManager", - "size" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "setInstanceTemplate": { - "id": "compute.regionInstanceGroupManagers.setInstanceTemplate", - "path": "{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/setInstanceTemplate", - "httpMethod": "POST", - "description": "Sets the instance template to use when creating new instances or recreating instances in this group. Existing instances are not affected.", - "parameters": { - "instanceGroupManager": { - "type": "string", - "description": "The name of the managed instance group.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "region", - "instanceGroupManager" - ], - "request": { - "$ref": "RegionInstanceGroupManagersSetTemplateRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "setTargetPools": { - "id": "compute.regionInstanceGroupManagers.setTargetPools", - "path": "{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/setTargetPools", - "httpMethod": "POST", - "description": "Modifies the target pools to which all new instances in this group are assigned. Existing instances in the group are not affected.", - "parameters": { - "instanceGroupManager": { - "type": "string", - "description": "Name of the managed instance group.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "region", - "instanceGroupManager" - ], - "request": { - "$ref": "RegionInstanceGroupManagersSetTargetPoolsRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - } - } - }, - "regionInstanceGroups": { - "methods": { - "get": { - "id": "compute.regionInstanceGroups.get", - "path": "{project}/regions/{region}/instanceGroups/{instanceGroup}", - "httpMethod": "GET", - "description": "Returns the specified instance group resource.", - "parameters": { - "instanceGroup": { - "type": "string", - "description": "Name of the instance group resource to return.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "instanceGroup" - ], - "response": { - "$ref": "InstanceGroup" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "list": { - "id": "compute.regionInstanceGroups.list", - "path": "{project}/regions/{region}/instanceGroups", - "httpMethod": "GET", - "description": "Retrieves the list of instance group resources contained within the specified region.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region" - ], - "response": { - "$ref": "RegionInstanceGroupList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "listInstances": { - "id": "compute.regionInstanceGroups.listInstances", - "path": "{project}/regions/{region}/instanceGroups/{instanceGroup}/listInstances", - "httpMethod": "POST", - "description": "Lists the instances in the specified instance group and displays information about the named ports. Depending on the specified options, this method can list all instances or only the instances that are running.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "instanceGroup": { - "type": "string", - "description": "Name of the regional instance group for which we want to list the instances.", - "required": true, - "location": "path" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "instanceGroup" - ], - "request": { - "$ref": "RegionInstanceGroupsListInstancesRequest" - }, - "response": { - "$ref": "RegionInstanceGroupsListInstances" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "setNamedPorts": { - "id": "compute.regionInstanceGroups.setNamedPorts", - "path": "{project}/regions/{region}/instanceGroups/{instanceGroup}/setNamedPorts", - "httpMethod": "POST", - "description": "Sets the named ports for the specified regional instance group.", - "parameters": { - "instanceGroup": { - "type": "string", - "description": "The name of the regional instance group where the named ports are updated.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "region", - "instanceGroup" - ], - "request": { - "$ref": "RegionInstanceGroupsSetNamedPortsRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - } - } - }, - "regionOperations": { - "methods": { - "delete": { - "id": "compute.regionOperations.delete", - "path": "{project}/regions/{region}/operations/{operation}", - "httpMethod": "DELETE", - "description": "Deletes the specified region-specific Operations resource.", - "parameters": { - "operation": { - "type": "string", - "description": "Name of the Operations resource to delete.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "operation" - ], - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "get": { - "id": "compute.regionOperations.get", - "path": "{project}/regions/{region}/operations/{operation}", - "httpMethod": "GET", - "description": "Retrieves the specified region-specific Operations resource.", - "parameters": { - "operation": { - "type": "string", - "description": "Name of the Operations resource to return.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "operation" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "list": { - "id": "compute.regionOperations.list", - "path": "{project}/regions/{region}/operations", - "httpMethod": "GET", - "description": "Retrieves a list of Operation resources contained within the specified region.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region" - ], - "response": { - "$ref": "OperationList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - } - } - }, - "regions": { - "methods": { - "get": { - "id": "compute.regions.get", - "path": "{project}/regions/{region}", - "httpMethod": "GET", - "description": "Returns the specified Region resource. Get a list of available regions by making a list() request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region resource to return.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region" - ], - "response": { - "$ref": "Region" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "list": { - "id": "compute.regions.list", - "path": "{project}/regions", - "httpMethod": "GET", - "description": "Retrieves the list of region resources available to the specified project.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "RegionList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - } - } - }, - "routers": { - "methods": { - "aggregatedList": { - "id": "compute.routers.aggregatedList", - "path": "{project}/aggregated/routers", - "httpMethod": "GET", - "description": "Retrieves an aggregated list of routers.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "RouterAggregatedList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "delete": { - "id": "compute.routers.delete", - "path": "{project}/regions/{region}/routers/{router}", - "httpMethod": "DELETE", - "description": "Deletes the specified Router resource.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "router": { - "type": "string", - "description": "Name of the Router resource to delete.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "router" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "get": { - "id": "compute.routers.get", - "path": "{project}/regions/{region}/routers/{router}", - "httpMethod": "GET", - "description": "Returns the specified Router resource. Get a list of available routers by making a list() request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "router": { - "type": "string", - "description": "Name of the Router resource to return.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "router" - ], - "response": { - "$ref": "Router" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "getRouterStatus": { - "id": "compute.routers.getRouterStatus", - "path": "{project}/regions/{region}/routers/{router}/getRouterStatus", - "httpMethod": "GET", - "description": "Retrieves runtime information of the specified router.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "router": { - "type": "string", - "description": "Name of the Router resource to query.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "router" - ], - "response": { - "$ref": "RouterStatusResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "insert": { - "id": "compute.routers.insert", - "path": "{project}/regions/{region}/routers", - "httpMethod": "POST", - "description": "Creates a Router resource in the specified project and region using the data included in the request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "region" - ], - "request": { - "$ref": "Router" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "list": { - "id": "compute.routers.list", - "path": "{project}/regions/{region}/routers", - "httpMethod": "GET", - "description": "Retrieves a list of Router resources available to the specified project.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region" - ], - "response": { - "$ref": "RouterList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "patch": { - "id": "compute.routers.patch", - "path": "{project}/regions/{region}/routers/{router}", - "httpMethod": "PATCH", - "description": "Patches the specified Router resource with the data included in the request. This method supports PATCH semantics and uses JSON merge patch format and processing rules.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "router": { - "type": "string", - "description": "Name of the Router resource to patch.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "router" - ], - "request": { - "$ref": "Router" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "preview": { - "id": "compute.routers.preview", - "path": "{project}/regions/{region}/routers/{router}/preview", - "httpMethod": "POST", - "description": "Preview fields auto-generated during router create and update operations. Calling this method does NOT create or update the router.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "router": { - "type": "string", - "description": "Name of the Router resource to query.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "router" - ], - "request": { - "$ref": "Router" - }, - "response": { - "$ref": "RoutersPreviewResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "update": { - "id": "compute.routers.update", - "path": "{project}/regions/{region}/routers/{router}", - "httpMethod": "PUT", - "description": "Updates the specified Router resource with the data included in the request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "router": { - "type": "string", - "description": "Name of the Router resource to update.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "router" - ], - "request": { - "$ref": "Router" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - } - } - }, - "routes": { - "methods": { - "delete": { - "id": "compute.routes.delete", - "path": "{project}/global/routes/{route}", - "httpMethod": "DELETE", - "description": "Deletes the specified Route resource.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "route": { - "type": "string", - "description": "Name of the Route resource to delete.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "route" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "get": { - "id": "compute.routes.get", - "path": "{project}/global/routes/{route}", - "httpMethod": "GET", - "description": "Returns the specified Route resource. Get a list of available routes by making a list() request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "route": { - "type": "string", - "description": "Name of the Route resource to return.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "route" - ], - "response": { - "$ref": "Route" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "insert": { - "id": "compute.routes.insert", - "path": "{project}/global/routes", - "httpMethod": "POST", - "description": "Creates a Route resource in the specified project using the data included in the request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project" - ], - "request": { - "$ref": "Route" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "list": { - "id": "compute.routes.list", - "path": "{project}/global/routes", - "httpMethod": "GET", - "description": "Retrieves the list of Route resources available to the specified project.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "RouteList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - } - } - }, - "snapshots": { - "methods": { - "delete": { - "id": "compute.snapshots.delete", - "path": "{project}/global/snapshots/{snapshot}", - "httpMethod": "DELETE", - "description": "Deletes the specified Snapshot resource. Keep in mind that deleting a single snapshot might not necessarily delete all the data on that snapshot. If any data on the snapshot that is marked for deletion is needed for subsequent snapshots, the data will be moved to the next corresponding snapshot.\n\nFor more information, see Deleting snaphots.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "snapshot": { - "type": "string", - "description": "Name of the Snapshot resource to delete.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "snapshot" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "get": { - "id": "compute.snapshots.get", - "path": "{project}/global/snapshots/{snapshot}", - "httpMethod": "GET", - "description": "Returns the specified Snapshot resource. Get a list of available snapshots by making a list() request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "snapshot": { - "type": "string", - "description": "Name of the Snapshot resource to return.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "snapshot" - ], - "response": { - "$ref": "Snapshot" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "list": { - "id": "compute.snapshots.list", - "path": "{project}/global/snapshots", - "httpMethod": "GET", - "description": "Retrieves the list of Snapshot resources contained within the specified project.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "SnapshotList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "setLabels": { - "id": "compute.snapshots.setLabels", - "path": "{project}/global/snapshots/{resource}/setLabels", - "httpMethod": "POST", - "description": "Sets the labels on a snapshot. To learn more about labels, read the Labeling Resources documentation.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "resource" - ], - "request": { - "$ref": "GlobalSetLabelsRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - } - } - }, - "sslCertificates": { - "methods": { - "delete": { - "id": "compute.sslCertificates.delete", - "path": "{project}/global/sslCertificates/{sslCertificate}", - "httpMethod": "DELETE", - "description": "Deletes the specified SslCertificate resource.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "sslCertificate": { - "type": "string", - "description": "Name of the SslCertificate resource to delete.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "sslCertificate" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "get": { - "id": "compute.sslCertificates.get", - "path": "{project}/global/sslCertificates/{sslCertificate}", - "httpMethod": "GET", - "description": "Returns the specified SslCertificate resource. Get a list of available SSL certificates by making a list() request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "sslCertificate": { - "type": "string", - "description": "Name of the SslCertificate resource to return.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "sslCertificate" - ], - "response": { - "$ref": "SslCertificate" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "insert": { - "id": "compute.sslCertificates.insert", - "path": "{project}/global/sslCertificates", - "httpMethod": "POST", - "description": "Creates a SslCertificate resource in the specified project using the data included in the request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project" - ], - "request": { - "$ref": "SslCertificate" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "list": { - "id": "compute.sslCertificates.list", - "path": "{project}/global/sslCertificates", - "httpMethod": "GET", - "description": "Retrieves the list of SslCertificate resources available to the specified project.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "SslCertificateList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - } - } - }, - "subnetworks": { - "methods": { - "aggregatedList": { - "id": "compute.subnetworks.aggregatedList", - "path": "{project}/aggregated/subnetworks", - "httpMethod": "GET", - "description": "Retrieves an aggregated list of subnetworks.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "SubnetworkAggregatedList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "delete": { - "id": "compute.subnetworks.delete", - "path": "{project}/regions/{region}/subnetworks/{subnetwork}", - "httpMethod": "DELETE", - "description": "Deletes the specified subnetwork.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "subnetwork": { - "type": "string", - "description": "Name of the Subnetwork resource to delete.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "subnetwork" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "expandIpCidrRange": { - "id": "compute.subnetworks.expandIpCidrRange", - "path": "{project}/regions/{region}/subnetworks/{subnetwork}/expandIpCidrRange", - "httpMethod": "POST", - "description": "Expands the IP CIDR range of the subnetwork to a specified value.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "subnetwork": { - "type": "string", - "description": "Name of the Subnetwork resource to update.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "subnetwork" - ], - "request": { - "$ref": "SubnetworksExpandIpCidrRangeRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "get": { - "id": "compute.subnetworks.get", - "path": "{project}/regions/{region}/subnetworks/{subnetwork}", - "httpMethod": "GET", - "description": "Returns the specified subnetwork. Get a list of available subnetworks list() request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "subnetwork": { - "type": "string", - "description": "Name of the Subnetwork resource to return.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "subnetwork" - ], - "response": { - "$ref": "Subnetwork" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "insert": { - "id": "compute.subnetworks.insert", - "path": "{project}/regions/{region}/subnetworks", - "httpMethod": "POST", - "description": "Creates a subnetwork in the specified project using the data included in the request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "region" - ], - "request": { - "$ref": "Subnetwork" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "list": { - "id": "compute.subnetworks.list", - "path": "{project}/regions/{region}/subnetworks", - "httpMethod": "GET", - "description": "Retrieves a list of subnetworks available to the specified project.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region" - ], - "response": { - "$ref": "SubnetworkList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "setPrivateIpGoogleAccess": { - "id": "compute.subnetworks.setPrivateIpGoogleAccess", - "path": "{project}/regions/{region}/subnetworks/{subnetwork}/setPrivateIpGoogleAccess", - "httpMethod": "POST", - "description": "Set whether VMs in this subnet can access Google services without assigning external IP addresses through Private Google Access.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "subnetwork": { - "type": "string", - "description": "Name of the Subnetwork resource.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "subnetwork" - ], - "request": { - "$ref": "SubnetworksSetPrivateIpGoogleAccessRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - } - } - }, - "targetHttpProxies": { - "methods": { - "delete": { - "id": "compute.targetHttpProxies.delete", - "path": "{project}/global/targetHttpProxies/{targetHttpProxy}", - "httpMethod": "DELETE", - "description": "Deletes the specified TargetHttpProxy resource.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "targetHttpProxy": { - "type": "string", - "description": "Name of the TargetHttpProxy resource to delete.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "targetHttpProxy" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "get": { - "id": "compute.targetHttpProxies.get", - "path": "{project}/global/targetHttpProxies/{targetHttpProxy}", - "httpMethod": "GET", - "description": "Returns the specified TargetHttpProxy resource. Get a list of available target HTTP proxies by making a list() request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "targetHttpProxy": { - "type": "string", - "description": "Name of the TargetHttpProxy resource to return.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "targetHttpProxy" - ], - "response": { - "$ref": "TargetHttpProxy" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "insert": { - "id": "compute.targetHttpProxies.insert", - "path": "{project}/global/targetHttpProxies", - "httpMethod": "POST", - "description": "Creates a TargetHttpProxy resource in the specified project using the data included in the request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project" - ], - "request": { - "$ref": "TargetHttpProxy" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "list": { - "id": "compute.targetHttpProxies.list", - "path": "{project}/global/targetHttpProxies", - "httpMethod": "GET", - "description": "Retrieves the list of TargetHttpProxy resources available to the specified project.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "TargetHttpProxyList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "setUrlMap": { - "id": "compute.targetHttpProxies.setUrlMap", - "path": "{project}/targetHttpProxies/{targetHttpProxy}/setUrlMap", - "httpMethod": "POST", - "description": "Changes the URL map for TargetHttpProxy.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "targetHttpProxy": { - "type": "string", - "description": "Name of the TargetHttpProxy to set a URL map for.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "targetHttpProxy" - ], - "request": { - "$ref": "UrlMapReference" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - } - } - }, - "targetHttpsProxies": { - "methods": { - "delete": { - "id": "compute.targetHttpsProxies.delete", - "path": "{project}/global/targetHttpsProxies/{targetHttpsProxy}", - "httpMethod": "DELETE", - "description": "Deletes the specified TargetHttpsProxy resource.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "targetHttpsProxy": { - "type": "string", - "description": "Name of the TargetHttpsProxy resource to delete.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "targetHttpsProxy" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "get": { - "id": "compute.targetHttpsProxies.get", - "path": "{project}/global/targetHttpsProxies/{targetHttpsProxy}", - "httpMethod": "GET", - "description": "Returns the specified TargetHttpsProxy resource. Get a list of available target HTTPS proxies by making a list() request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "targetHttpsProxy": { - "type": "string", - "description": "Name of the TargetHttpsProxy resource to return.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "targetHttpsProxy" - ], - "response": { - "$ref": "TargetHttpsProxy" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "insert": { - "id": "compute.targetHttpsProxies.insert", - "path": "{project}/global/targetHttpsProxies", - "httpMethod": "POST", - "description": "Creates a TargetHttpsProxy resource in the specified project using the data included in the request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project" - ], - "request": { - "$ref": "TargetHttpsProxy" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "list": { - "id": "compute.targetHttpsProxies.list", - "path": "{project}/global/targetHttpsProxies", - "httpMethod": "GET", - "description": "Retrieves the list of TargetHttpsProxy resources available to the specified project.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "TargetHttpsProxyList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "setSslCertificates": { - "id": "compute.targetHttpsProxies.setSslCertificates", - "path": "{project}/targetHttpsProxies/{targetHttpsProxy}/setSslCertificates", - "httpMethod": "POST", - "description": "Replaces SslCertificates for TargetHttpsProxy.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "targetHttpsProxy": { - "type": "string", - "description": "Name of the TargetHttpsProxy resource to set an SslCertificates resource for.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "targetHttpsProxy" - ], - "request": { - "$ref": "TargetHttpsProxiesSetSslCertificatesRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "setUrlMap": { - "id": "compute.targetHttpsProxies.setUrlMap", - "path": "{project}/targetHttpsProxies/{targetHttpsProxy}/setUrlMap", - "httpMethod": "POST", - "description": "Changes the URL map for TargetHttpsProxy.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "targetHttpsProxy": { - "type": "string", - "description": "Name of the TargetHttpsProxy resource whose URL map is to be set.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "targetHttpsProxy" - ], - "request": { - "$ref": "UrlMapReference" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - } - } - }, - "targetInstances": { - "methods": { - "aggregatedList": { - "id": "compute.targetInstances.aggregatedList", - "path": "{project}/aggregated/targetInstances", - "httpMethod": "GET", - "description": "Retrieves an aggregated list of target instances.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "TargetInstanceAggregatedList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "delete": { - "id": "compute.targetInstances.delete", - "path": "{project}/zones/{zone}/targetInstances/{targetInstance}", - "httpMethod": "DELETE", - "description": "Deletes the specified TargetInstance resource.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "targetInstance": { - "type": "string", - "description": "Name of the TargetInstance resource to delete.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "zone": { - "type": "string", - "description": "Name of the zone scoping this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "targetInstance" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "get": { - "id": "compute.targetInstances.get", - "path": "{project}/zones/{zone}/targetInstances/{targetInstance}", - "httpMethod": "GET", - "description": "Returns the specified TargetInstance resource. Get a list of available target instances by making a list() request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "targetInstance": { - "type": "string", - "description": "Name of the TargetInstance resource to return.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "zone": { - "type": "string", - "description": "Name of the zone scoping this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "targetInstance" - ], - "response": { - "$ref": "TargetInstance" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "insert": { - "id": "compute.targetInstances.insert", - "path": "{project}/zones/{zone}/targetInstances", - "httpMethod": "POST", - "description": "Creates a TargetInstance resource in the specified project and zone using the data included in the request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "zone": { - "type": "string", - "description": "Name of the zone scoping this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone" - ], - "request": { - "$ref": "TargetInstance" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "list": { - "id": "compute.targetInstances.list", - "path": "{project}/zones/{zone}/targetInstances", - "httpMethod": "GET", - "description": "Retrieves a list of TargetInstance resources available to the specified project and zone.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "zone": { - "type": "string", - "description": "Name of the zone scoping this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone" - ], - "response": { - "$ref": "TargetInstanceList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - } - } - }, - "targetPools": { - "methods": { - "addHealthCheck": { - "id": "compute.targetPools.addHealthCheck", - "path": "{project}/regions/{region}/targetPools/{targetPool}/addHealthCheck", - "httpMethod": "POST", - "description": "Adds health check URLs to a target pool.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "targetPool": { - "type": "string", - "description": "Name of the target pool to add a health check to.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "targetPool" - ], - "request": { - "$ref": "TargetPoolsAddHealthCheckRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "addInstance": { - "id": "compute.targetPools.addInstance", - "path": "{project}/regions/{region}/targetPools/{targetPool}/addInstance", - "httpMethod": "POST", - "description": "Adds an instance to a target pool.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "targetPool": { - "type": "string", - "description": "Name of the TargetPool resource to add instances to.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "targetPool" - ], - "request": { - "$ref": "TargetPoolsAddInstanceRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "aggregatedList": { - "id": "compute.targetPools.aggregatedList", - "path": "{project}/aggregated/targetPools", - "httpMethod": "GET", - "description": "Retrieves an aggregated list of target pools.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "TargetPoolAggregatedList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "delete": { - "id": "compute.targetPools.delete", - "path": "{project}/regions/{region}/targetPools/{targetPool}", - "httpMethod": "DELETE", - "description": "Deletes the specified target pool.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "targetPool": { - "type": "string", - "description": "Name of the TargetPool resource to delete.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "targetPool" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "get": { - "id": "compute.targetPools.get", - "path": "{project}/regions/{region}/targetPools/{targetPool}", - "httpMethod": "GET", - "description": "Returns the specified target pool. Get a list of available target pools by making a list() request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "targetPool": { - "type": "string", - "description": "Name of the TargetPool resource to return.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "targetPool" - ], - "response": { - "$ref": "TargetPool" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "getHealth": { - "id": "compute.targetPools.getHealth", - "path": "{project}/regions/{region}/targetPools/{targetPool}/getHealth", - "httpMethod": "POST", - "description": "Gets the most recent health check results for each IP for the instance that is referenced by the given target pool.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "targetPool": { - "type": "string", - "description": "Name of the TargetPool resource to which the queried instance belongs.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "targetPool" - ], - "request": { - "$ref": "InstanceReference" - }, - "response": { - "$ref": "TargetPoolInstanceHealth" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "insert": { - "id": "compute.targetPools.insert", - "path": "{project}/regions/{region}/targetPools", - "httpMethod": "POST", - "description": "Creates a target pool in the specified project and region using the data included in the request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "region" - ], - "request": { - "$ref": "TargetPool" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "list": { - "id": "compute.targetPools.list", - "path": "{project}/regions/{region}/targetPools", - "httpMethod": "GET", - "description": "Retrieves a list of target pools available to the specified project and region.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region" - ], - "response": { - "$ref": "TargetPoolList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "removeHealthCheck": { - "id": "compute.targetPools.removeHealthCheck", - "path": "{project}/regions/{region}/targetPools/{targetPool}/removeHealthCheck", - "httpMethod": "POST", - "description": "Removes health check URL from a target pool.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "targetPool": { - "type": "string", - "description": "Name of the target pool to remove health checks from.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "targetPool" - ], - "request": { - "$ref": "TargetPoolsRemoveHealthCheckRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "removeInstance": { - "id": "compute.targetPools.removeInstance", - "path": "{project}/regions/{region}/targetPools/{targetPool}/removeInstance", - "httpMethod": "POST", - "description": "Removes instance URL from a target pool.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "targetPool": { - "type": "string", - "description": "Name of the TargetPool resource to remove instances from.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "targetPool" - ], - "request": { - "$ref": "TargetPoolsRemoveInstanceRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "setBackup": { - "id": "compute.targetPools.setBackup", - "path": "{project}/regions/{region}/targetPools/{targetPool}/setBackup", - "httpMethod": "POST", - "description": "Changes a backup target pool's configurations.", - "parameters": { - "failoverRatio": { - "type": "number", - "description": "New failoverRatio value for the target pool.", - "format": "float", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region scoping this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "targetPool": { - "type": "string", - "description": "Name of the TargetPool resource to set a backup pool for.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "targetPool" - ], - "request": { - "$ref": "TargetReference" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - } - } - }, - "targetSslProxies": { - "methods": { - "delete": { - "id": "compute.targetSslProxies.delete", - "path": "{project}/global/targetSslProxies/{targetSslProxy}", - "httpMethod": "DELETE", - "description": "Deletes the specified TargetSslProxy resource.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "targetSslProxy": { - "type": "string", - "description": "Name of the TargetSslProxy resource to delete.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "targetSslProxy" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "get": { - "id": "compute.targetSslProxies.get", - "path": "{project}/global/targetSslProxies/{targetSslProxy}", - "httpMethod": "GET", - "description": "Returns the specified TargetSslProxy resource. Get a list of available target SSL proxies by making a list() request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "targetSslProxy": { - "type": "string", - "description": "Name of the TargetSslProxy resource to return.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "targetSslProxy" - ], - "response": { - "$ref": "TargetSslProxy" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "insert": { - "id": "compute.targetSslProxies.insert", - "path": "{project}/global/targetSslProxies", - "httpMethod": "POST", - "description": "Creates a TargetSslProxy resource in the specified project using the data included in the request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project" - ], - "request": { - "$ref": "TargetSslProxy" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "list": { - "id": "compute.targetSslProxies.list", - "path": "{project}/global/targetSslProxies", - "httpMethod": "GET", - "description": "Retrieves the list of TargetSslProxy resources available to the specified project.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "TargetSslProxyList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "setBackendService": { - "id": "compute.targetSslProxies.setBackendService", - "path": "{project}/global/targetSslProxies/{targetSslProxy}/setBackendService", - "httpMethod": "POST", - "description": "Changes the BackendService for TargetSslProxy.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "targetSslProxy": { - "type": "string", - "description": "Name of the TargetSslProxy resource whose BackendService resource is to be set.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "targetSslProxy" - ], - "request": { - "$ref": "TargetSslProxiesSetBackendServiceRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "setProxyHeader": { - "id": "compute.targetSslProxies.setProxyHeader", - "path": "{project}/global/targetSslProxies/{targetSslProxy}/setProxyHeader", - "httpMethod": "POST", - "description": "Changes the ProxyHeaderType for TargetSslProxy.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "targetSslProxy": { - "type": "string", - "description": "Name of the TargetSslProxy resource whose ProxyHeader is to be set.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "targetSslProxy" - ], - "request": { - "$ref": "TargetSslProxiesSetProxyHeaderRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "setSslCertificates": { - "id": "compute.targetSslProxies.setSslCertificates", - "path": "{project}/global/targetSslProxies/{targetSslProxy}/setSslCertificates", - "httpMethod": "POST", - "description": "Changes SslCertificates for TargetSslProxy.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "targetSslProxy": { - "type": "string", - "description": "Name of the TargetSslProxy resource whose SslCertificate resource is to be set.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "targetSslProxy" - ], - "request": { - "$ref": "TargetSslProxiesSetSslCertificatesRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - } - } - }, - "targetTcpProxies": { - "methods": { - "delete": { - "id": "compute.targetTcpProxies.delete", - "path": "{project}/global/targetTcpProxies/{targetTcpProxy}", - "httpMethod": "DELETE", - "description": "Deletes the specified TargetTcpProxy resource.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "targetTcpProxy": { - "type": "string", - "description": "Name of the TargetTcpProxy resource to delete.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "targetTcpProxy" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "get": { - "id": "compute.targetTcpProxies.get", - "path": "{project}/global/targetTcpProxies/{targetTcpProxy}", - "httpMethod": "GET", - "description": "Returns the specified TargetTcpProxy resource. Get a list of available target TCP proxies by making a list() request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "targetTcpProxy": { - "type": "string", - "description": "Name of the TargetTcpProxy resource to return.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "targetTcpProxy" - ], - "response": { - "$ref": "TargetTcpProxy" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "insert": { - "id": "compute.targetTcpProxies.insert", - "path": "{project}/global/targetTcpProxies", - "httpMethod": "POST", - "description": "Creates a TargetTcpProxy resource in the specified project using the data included in the request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project" - ], - "request": { - "$ref": "TargetTcpProxy" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "list": { - "id": "compute.targetTcpProxies.list", - "path": "{project}/global/targetTcpProxies", - "httpMethod": "GET", - "description": "Retrieves the list of TargetTcpProxy resources available to the specified project.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "TargetTcpProxyList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "setBackendService": { - "id": "compute.targetTcpProxies.setBackendService", - "path": "{project}/global/targetTcpProxies/{targetTcpProxy}/setBackendService", - "httpMethod": "POST", - "description": "Changes the BackendService for TargetTcpProxy.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "targetTcpProxy": { - "type": "string", - "description": "Name of the TargetTcpProxy resource whose BackendService resource is to be set.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "targetTcpProxy" - ], - "request": { - "$ref": "TargetTcpProxiesSetBackendServiceRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "setProxyHeader": { - "id": "compute.targetTcpProxies.setProxyHeader", - "path": "{project}/global/targetTcpProxies/{targetTcpProxy}/setProxyHeader", - "httpMethod": "POST", - "description": "Changes the ProxyHeaderType for TargetTcpProxy.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "targetTcpProxy": { - "type": "string", - "description": "Name of the TargetTcpProxy resource whose ProxyHeader is to be set.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "targetTcpProxy" - ], - "request": { - "$ref": "TargetTcpProxiesSetProxyHeaderRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - } - } - }, - "targetVpnGateways": { - "methods": { - "aggregatedList": { - "id": "compute.targetVpnGateways.aggregatedList", - "path": "{project}/aggregated/targetVpnGateways", - "httpMethod": "GET", - "description": "Retrieves an aggregated list of target VPN gateways.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "TargetVpnGatewayAggregatedList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "delete": { - "id": "compute.targetVpnGateways.delete", - "path": "{project}/regions/{region}/targetVpnGateways/{targetVpnGateway}", - "httpMethod": "DELETE", - "description": "Deletes the specified target VPN gateway.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "targetVpnGateway": { - "type": "string", - "description": "Name of the target VPN gateway to delete.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "targetVpnGateway" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "get": { - "id": "compute.targetVpnGateways.get", - "path": "{project}/regions/{region}/targetVpnGateways/{targetVpnGateway}", - "httpMethod": "GET", - "description": "Returns the specified target VPN gateway. Get a list of available target VPN gateways by making a list() request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "targetVpnGateway": { - "type": "string", - "description": "Name of the target VPN gateway to return.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "targetVpnGateway" - ], - "response": { - "$ref": "TargetVpnGateway" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "insert": { - "id": "compute.targetVpnGateways.insert", - "path": "{project}/regions/{region}/targetVpnGateways", - "httpMethod": "POST", - "description": "Creates a target VPN gateway in the specified project and region using the data included in the request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "region" - ], - "request": { - "$ref": "TargetVpnGateway" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "list": { - "id": "compute.targetVpnGateways.list", - "path": "{project}/regions/{region}/targetVpnGateways", - "httpMethod": "GET", - "description": "Retrieves a list of target VPN gateways available to the specified project and region.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region" - ], - "response": { - "$ref": "TargetVpnGatewayList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - } - } - }, - "urlMaps": { - "methods": { - "delete": { - "id": "compute.urlMaps.delete", - "path": "{project}/global/urlMaps/{urlMap}", - "httpMethod": "DELETE", - "description": "Deletes the specified UrlMap resource.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "urlMap": { - "type": "string", - "description": "Name of the UrlMap resource to delete.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "urlMap" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "get": { - "id": "compute.urlMaps.get", - "path": "{project}/global/urlMaps/{urlMap}", - "httpMethod": "GET", - "description": "Returns the specified UrlMap resource. Get a list of available URL maps by making a list() request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "urlMap": { - "type": "string", - "description": "Name of the UrlMap resource to return.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "urlMap" - ], - "response": { - "$ref": "UrlMap" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "insert": { - "id": "compute.urlMaps.insert", - "path": "{project}/global/urlMaps", - "httpMethod": "POST", - "description": "Creates a UrlMap resource in the specified project using the data included in the request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project" - ], - "request": { - "$ref": "UrlMap" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "invalidateCache": { - "id": "compute.urlMaps.invalidateCache", - "path": "{project}/global/urlMaps/{urlMap}/invalidateCache", - "httpMethod": "POST", - "description": "Initiates a cache invalidation operation, invalidating the specified path, scoped to the specified UrlMap.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "urlMap": { - "type": "string", - "description": "Name of the UrlMap scoping this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "urlMap" - ], - "request": { - "$ref": "CacheInvalidationRule" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "list": { - "id": "compute.urlMaps.list", - "path": "{project}/global/urlMaps", - "httpMethod": "GET", - "description": "Retrieves the list of UrlMap resources available to the specified project.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "UrlMapList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "patch": { - "id": "compute.urlMaps.patch", - "path": "{project}/global/urlMaps/{urlMap}", - "httpMethod": "PATCH", - "description": "Patches the specified UrlMap resource with the data included in the request. This method supports PATCH semantics and uses the JSON merge patch format and processing rules.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "urlMap": { - "type": "string", - "description": "Name of the UrlMap resource to patch.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "urlMap" - ], - "request": { - "$ref": "UrlMap" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "update": { - "id": "compute.urlMaps.update", - "path": "{project}/global/urlMaps/{urlMap}", - "httpMethod": "PUT", - "description": "Updates the specified UrlMap resource with the data included in the request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "urlMap": { - "type": "string", - "description": "Name of the UrlMap resource to update.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "urlMap" - ], - "request": { - "$ref": "UrlMap" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "validate": { - "id": "compute.urlMaps.validate", - "path": "{project}/global/urlMaps/{urlMap}/validate", - "httpMethod": "POST", - "description": "Runs static validation for the UrlMap. In particular, the tests of the provided UrlMap will be run. Calling this method does NOT create the UrlMap.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "urlMap": { - "type": "string", - "description": "Name of the UrlMap resource to be validated as.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "urlMap" - ], - "request": { - "$ref": "UrlMapsValidateRequest" - }, - "response": { - "$ref": "UrlMapsValidateResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - } - } - }, - "vpnTunnels": { - "methods": { - "aggregatedList": { - "id": "compute.vpnTunnels.aggregatedList", - "path": "{project}/aggregated/vpnTunnels", - "httpMethod": "GET", - "description": "Retrieves an aggregated list of VPN tunnels.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "VpnTunnelAggregatedList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "delete": { - "id": "compute.vpnTunnels.delete", - "path": "{project}/regions/{region}/vpnTunnels/{vpnTunnel}", - "httpMethod": "DELETE", - "description": "Deletes the specified VpnTunnel resource.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - }, - "vpnTunnel": { - "type": "string", - "description": "Name of the VpnTunnel resource to delete.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "vpnTunnel" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "get": { - "id": "compute.vpnTunnels.get", - "path": "{project}/regions/{region}/vpnTunnels/{vpnTunnel}", - "httpMethod": "GET", - "description": "Returns the specified VpnTunnel resource. Get a list of available VPN tunnels by making a list() request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "vpnTunnel": { - "type": "string", - "description": "Name of the VpnTunnel resource to return.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region", - "vpnTunnel" - ], - "response": { - "$ref": "VpnTunnel" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "insert": { - "id": "compute.vpnTunnels.insert", - "path": "{project}/regions/{region}/vpnTunnels", - "httpMethod": "POST", - "description": "Creates a VpnTunnel resource in the specified project and region using the data included in the request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "requestId": { - "type": "string", - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "region" - ], - "request": { - "$ref": "VpnTunnel" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "list": { - "id": "compute.vpnTunnels.list", - "path": "{project}/regions/{region}/vpnTunnels", - "httpMethod": "GET", - "description": "Retrieves a list of VpnTunnel resources contained in the specified project and region.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "region": { - "type": "string", - "description": "Name of the region for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "region" - ], - "response": { - "$ref": "VpnTunnelList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - } - } - }, - "zoneOperations": { - "methods": { - "delete": { - "id": "compute.zoneOperations.delete", - "path": "{project}/zones/{zone}/operations/{operation}", - "httpMethod": "DELETE", - "description": "Deletes the specified zone-specific Operations resource.", - "parameters": { - "operation": { - "type": "string", - "description": "Name of the Operations resource to delete.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "zone": { - "type": "string", - "description": "Name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "operation" - ], - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "get": { - "id": "compute.zoneOperations.get", - "path": "{project}/zones/{zone}/operations/{operation}", - "httpMethod": "GET", - "description": "Retrieves the specified zone-specific Operations resource.", - "parameters": { - "operation": { - "type": "string", - "description": "Name of the Operations resource to return.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "zone": { - "type": "string", - "description": "Name of the zone for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "operation" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "list": { - "id": "compute.zoneOperations.list", - "path": "{project}/zones/{zone}/operations", - "httpMethod": "GET", - "description": "Retrieves a list of Operation resources contained within the specified zone.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "zone": { - "type": "string", - "description": "Name of the zone for request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone" - ], - "response": { - "$ref": "OperationList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - } - } - }, - "zones": { - "methods": { - "get": { - "id": "compute.zones.get", - "path": "{project}/zones/{zone}", - "httpMethod": "GET", - "description": "Returns the specified Zone resource. Get a list of available zones by making a list() request.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "zone": { - "type": "string", - "description": "Name of the zone resource to return.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone" - ], - "response": { - "$ref": "Zone" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "list": { - "id": "compute.zones.list", - "path": "{project}/zones", - "httpMethod": "GET", - "description": "Retrieves the list of Zone resources available to the specified project.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "ZoneList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - } - } - } - } -} + "servicePath": "compute/v1/projects/", + "title": "Compute Engine API", + "version": "v1" +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/compute/v1/compute-gen.go b/vendor/google.golang.org/api/compute/v1/compute-gen.go index e455acfad..283c48de3 100644 --- a/vendor/google.golang.org/api/compute/v1/compute-gen.go +++ b/vendor/google.golang.org/api/compute/v1/compute-gen.go @@ -94,6 +94,7 @@ func New(client *http.Client) (*Service, error) { s.InterconnectAttachments = NewInterconnectAttachmentsService(s) s.InterconnectLocations = NewInterconnectLocationsService(s) s.Interconnects = NewInterconnectsService(s) + s.LicenseCodes = NewLicenseCodesService(s) s.Licenses = NewLicensesService(s) s.MachineTypes = NewMachineTypesService(s) s.Networks = NewNetworksService(s) @@ -109,6 +110,7 @@ func New(client *http.Client) (*Service, error) { s.Routes = NewRoutesService(s) s.Snapshots = NewSnapshotsService(s) s.SslCertificates = NewSslCertificatesService(s) + s.SslPolicies = NewSslPoliciesService(s) s.Subnetworks = NewSubnetworksService(s) s.TargetHttpProxies = NewTargetHttpProxiesService(s) s.TargetHttpsProxies = NewTargetHttpsProxiesService(s) @@ -175,6 +177,8 @@ type Service struct { Interconnects *InterconnectsService + LicenseCodes *LicenseCodesService + Licenses *LicensesService MachineTypes *MachineTypesService @@ -205,6 +209,8 @@ type Service struct { SslCertificates *SslCertificatesService + SslPolicies *SslPoliciesService + Subnetworks *SubnetworksService TargetHttpProxies *TargetHttpProxiesService @@ -444,6 +450,15 @@ type InterconnectsService struct { s *Service } +func NewLicenseCodesService(s *Service) *LicenseCodesService { + rs := &LicenseCodesService{s: s} + return rs +} + +type LicenseCodesService struct { + s *Service +} + func NewLicensesService(s *Service) *LicensesService { rs := &LicensesService{s: s} return rs @@ -579,6 +594,15 @@ type SslCertificatesService struct { s *Service } +func NewSslPoliciesService(s *Service) *SslPoliciesService { + rs := &SslPoliciesService{s: s} + return rs +} + +type SslPoliciesService struct { + s *Service +} + func NewSubnetworksService(s *Service) *SubnetworksService { rs := &SubnetworksService{s: s} return rs @@ -758,7 +782,9 @@ type AcceleratorType struct { SelfLink string `json:"selfLink,omitempty"` // Zone: [Output Only] The name of the zone where the accelerator type - // resides, such as us-central1-a. + // resides, such as us-central1-a. You must specify this field as part + // of the HTTP request URL. It is not settable as a field in the request + // body. Zone string `json:"zone,omitempty"` // ServerResponse contains the HTTP response code and headers from the @@ -1255,6 +1281,15 @@ type AccessConfig struct { // live in the same region as the zone of the instance. NatIP string `json:"natIP,omitempty"` + // PublicPtrDomainName: The DNS domain name for the public PTR record. + // This field can only be set when the set_public_ptr field is enabled. + PublicPtrDomainName string `json:"publicPtrDomainName,omitempty"` + + // SetPublicPtr: Specifies whether a public DNS ?PTR? record should be + // created to map the external IP address of the instance to a DNS + // domain name. + SetPublicPtr bool `json:"setPublicPtr,omitempty"` + // Type: The type of configuration. The default and only option is // ONE_TO_ONE_NAT. // @@ -1330,14 +1365,16 @@ type Address struct { // Name: Name of the resource. Provided by the client when the resource // is created. The name must be 1-63 characters long, and comply with // RFC1035. Specifically, the name must be 1-63 characters long and - // match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means + // match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means // the first character must be a lowercase letter, and all following // characters must be a dash, lowercase letter, or digit, except the // last character, which cannot be a dash. Name string `json:"name,omitempty"` // Region: [Output Only] URL of the region where the regional address - // resides. This field is not applicable to global addresses. + // resides. This field is not applicable to global addresses. You must + // specify this field as part of the HTTP request URL. You cannot set + // this field in the request body. Region string `json:"region,omitempty"` // SelfLink: [Output Only] Server-defined URL for the resource. @@ -1919,6 +1956,11 @@ type AttachedDisk struct { // group. DiskEncryptionKey *CustomerEncryptionKey `json:"diskEncryptionKey,omitempty"` + // GuestOsFeatures: A list of features to enable on the guest operating + // system. Applicable only for bootable images. Read Enabling guest + // operating system features to see a list of available options. + GuestOsFeatures []*GuestOsFeature `json:"guestOsFeatures,omitempty"` + // Index: [Output Only] A zero-based index to this disk, where 0 is // reserved for the boot disk. If you have many disks attached to an // instance, each disk would have a unique index number. @@ -2024,9 +2066,9 @@ type AttachedDiskInitializeParams struct { // not specified, the default is pd-standard, specified using the full // URL. For // example: + // https://www.googleapis.com/compute/v1/projects/project/zones/ + // zone/diskTypes/pd-standard // - // https://www.googleapis.com/compute/v1/projects/project/zones - // /zone/diskTypes/pd-standard // // Other values include pd-ssd and local-ssd. If you define this field, // you can provide either the full or partial URL. For example, the @@ -2051,26 +2093,29 @@ type AttachedDiskInitializeParams struct { // specify the image by its family name. For example, specify // family/debian-8 to use the latest Debian 8 // image: - // // projects/debian-cloud/global/images/family/debian-8 // - // Alternatively, use a specific version of a public operating system - // image: // + // Alternati + // vely, use a specific version of a public operating system + // image: // projects/debian-cloud/global/images/debian-8-jessie-vYYYYMMDD // - // To create a disk with a custom image that you created, specify the - // image name in the following format: // + // + // To create a disk with a custom image that you created, specify the + // image name in the following + // format: // global/images/my-custom-image // + // // You can also specify a custom image by its image family, which // returns the latest version of the image in that family. Replace the // image name with // family/family-name: - // // global/images/family/my-image-family // + // // If the source image is deleted later, this field will not be set. SourceImage string `json:"sourceImage,omitempty"` @@ -2142,7 +2187,7 @@ type Autoscaler struct { // Name: Name of the resource. Provided by the client when the resource // is created. The name must be 1-63 characters long, and comply with // RFC1035. Specifically, the name must be 1-63 characters long and - // match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means + // match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means // the first character must be a lowercase letter, and all following // characters must be a dash, lowercase letter, or digit, except the // last character, which cannot be a dash. @@ -3082,7 +3127,7 @@ type BackendBucket struct { // Name: Name of the resource. Provided by the client when the resource // is created. The name must be 1-63 characters long, and comply with // RFC1035. Specifically, the name must be 1-63 characters long and - // match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means + // match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means // the first character must be a lowercase letter, and all following // characters must be a dash, lowercase letter, or digit, except the // last character, which cannot be a dash. @@ -3348,7 +3393,7 @@ type BackendService struct { // Name: Name of the resource. Provided by the client when the resource // is created. The name must be 1-63 characters long, and comply with // RFC1035. Specifically, the name must be 1-63 characters long and - // match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means + // match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means // the first character must be a lowercase letter, and all following // characters must be a dash, lowercase letter, or digit, except the // last character, which cannot be a dash. @@ -3386,7 +3431,8 @@ type BackendService struct { // Region: [Output Only] URL of the region where the regional backend // service resides. This field is not applicable to global backend - // services. + // services. You must specify this field as part of the HTTP request + // URL. It is not settable as a field in the request body. Region string `json:"region,omitempty"` // SelfLink: [Output Only] Server-defined URL for the resource. @@ -4107,7 +4153,7 @@ type Commitment struct { // Name: Name of the resource. Provided by the client when the resource // is created. The name must be 1-63 characters long, and comply with // RFC1035. Specifically, the name must be 1-63 characters long and - // match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means + // match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means // the first character must be a lowercase letter, and all following // characters must be a dash, lowercase letter, or digit, except the // last character, which cannot be a dash. @@ -4811,6 +4857,11 @@ type Disk struct { // you do not need to provide a key to use the disk later. DiskEncryptionKey *CustomerEncryptionKey `json:"diskEncryptionKey,omitempty"` + // GuestOsFeatures: A list of features to enable on the guest operating + // system. Applicable only for bootable images. Read Enabling guest + // operating system features to see a list of available options. + GuestOsFeatures []*GuestOsFeature `json:"guestOsFeatures,omitempty"` + // Id: [Output Only] The unique identifier for the resource. This // identifier is defined by the server. Id uint64 `json:"id,omitempty,string"` @@ -4842,13 +4893,17 @@ type Disk struct { // text format. LastDetachTimestamp string `json:"lastDetachTimestamp,omitempty"` + // LicenseCodes: Integer license codes indicating which licenses are + // attached to this disk. + LicenseCodes googleapi.Int64s `json:"licenseCodes,omitempty"` + // Licenses: Any applicable publicly visible licenses. Licenses []string `json:"licenses,omitempty"` // Name: Name of the resource. Provided by the client when the resource // is created. The name must be 1-63 characters long, and comply with // RFC1035. Specifically, the name must be 1-63 characters long and - // match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means + // match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means // the first character must be a lowercase letter, and all following // characters must be a dash, lowercase letter, or digit, except the // last character, which cannot be a dash. @@ -4879,24 +4934,26 @@ type Disk struct { // specify the image by its family name. For example, specify // family/debian-8 to use the latest Debian 8 // image: - // // projects/debian-cloud/global/images/family/debian-8 // - // Alternatively, use a specific version of a public operating system - // image: // + // Alternati + // vely, use a specific version of a public operating system + // image: // projects/debian-cloud/global/images/debian-8-jessie-vYYYYMMDD // - // To create a disk with a custom image that you created, specify the - // image name in the following format: // + // + // To create a disk with a custom image that you created, specify the + // image name in the following + // format: // global/images/my-custom-image // + // // You can also specify a custom image by its image family, which // returns the latest version of the image in that family. Replace the // image name with // family/family-name: - // // global/images/family/my-image-family SourceImage string `json:"sourceImage,omitempty"` @@ -4945,14 +5002,17 @@ type Disk struct { Status string `json:"status,omitempty"` // Type: URL of the disk type resource describing which disk type to use - // to create the disk. Provide this when creating the disk. + // to create the disk. Provide this when creating the disk. For example: + // project/zones/zone/diskTypes/pd-standard or pd-ssd Type string `json:"type,omitempty"` // Users: [Output Only] Links to the users of the disk (attached // instances) in form: project/zones/zone/instances/instance Users []string `json:"users,omitempty"` - // Zone: [Output Only] URL of the zone where the disk resides. + // Zone: [Output Only] URL of the zone where the disk resides. You must + // specify this field as part of the HTTP request URL. It is not + // settable as a field in the request body. Zone string `json:"zone,omitempty"` // ServerResponse contains the HTTP response code and headers from the @@ -5372,7 +5432,9 @@ type DiskType struct { // valid disk size, such as "10GB-10TB". ValidDiskSize string `json:"validDiskSize,omitempty"` - // Zone: [Output Only] URL of the zone where the disk type resides. + // Zone: [Output Only] URL of the zone where the disk type resides. You + // must specify this field as part of the HTTP request URL. It is not + // settable as a field in the request body. Zone string `json:"zone,omitempty"` // ServerResponse contains the HTTP response code and headers from the @@ -6019,7 +6081,7 @@ type Firewall struct { CreationTimestamp string `json:"creationTimestamp,omitempty"` // Denied: The list of DENY rules specified by this firewall. Each rule - // specifies a protocol and port-range tuple that describes a permitted + // specifies a protocol and port-range tuple that describes a denied // connection. Denied []*FirewallDenied `json:"denied,omitempty"` @@ -6054,7 +6116,7 @@ type Firewall struct { // Name: Name of the resource; provided by the client when the resource // is created. The name must be 1-63 characters long, and comply with // RFC1035. Specifically, the name must be 1-63 characters long and - // match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means + // match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means // the first character must be a lowercase letter, and all following // characters must be a dash, lowercase letter, or digit, except the // last character, which cannot be a dash. @@ -6501,7 +6563,7 @@ type ForwardingRule struct { // Name: Name of the resource; provided by the client when the resource // is created. The name must be 1-63 characters long, and comply with // RFC1035. Specifically, the name must be 1-63 characters long and - // match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means + // match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means // the first character must be a lowercase letter, and all following // characters must be a dash, lowercase letter, or digit, except the // last character, which cannot be a dash. @@ -6528,11 +6590,10 @@ type ForwardingRule struct { // - TargetHttpProxy: 80, 8080 // - TargetHttpsProxy: 443 // - TargetTcpProxy: 25, 43, 110, 143, 195, 443, 465, 587, 700, 993, - // 995, 1883, 5222 + // 995, 1688, 1883, 5222 // - TargetSslProxy: 25, 43, 110, 143, 195, 443, 465, 587, 700, 993, - // 995, 1883, 5222 + // 995, 1688, 1883, 5222 // - TargetVpnGateway: 500, 4500 - // - PortRange string `json:"portRange,omitempty"` // Ports: This field is used along with the backend_service field for @@ -6548,7 +6609,8 @@ type ForwardingRule struct { // Region: [Output Only] URL of the region where the regional forwarding // rule resides. This field is not applicable to global forwarding - // rules. + // rules. You must specify this field as part of the HTTP request URL. + // It is not settable as a field in the request body. Region string `json:"region,omitempty"` // SelfLink: [Output Only] Server-defined URL for the resource. @@ -6570,8 +6632,6 @@ type ForwardingRule struct { // same region as the forwarding rule. For global forwarding rules, this // target must be a global load balancing resource. The forwarded // traffic must be of a type appropriate to the target object. - // - // This field is not used for internal load balancing. Target string `json:"target,omitempty"` // ServerResponse contains the HTTP response code and headers from the @@ -7057,8 +7117,8 @@ type GlobalSetLabelsRequest struct { // Labels: A list of labels to apply for this resource. Each label key & // value must comply with RFC1035. Specifically, the name must be 1-63 // characters long and match the regular expression - // [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a - // lowercase letter, and all following characters must be a dash, + // `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be + // a lowercase letter, and all following characters must be a dash, // lowercase letter, or digit, except the last character, which cannot // be a dash. For example, "webserver-frontend": "images". A label value // can also be empty (e.g. "my-label": ""). @@ -7096,6 +7156,8 @@ type GuestOsFeature struct { // Possible values: // "FEATURE_TYPE_UNSPECIFIED" // "MULTI_IP_SUBNET" + // "SECURE_BOOT" + // "UEFI_COMPATIBLE" // "VIRTIO_SCSI_MULTIQUEUE" // "WINDOWS" Type string `json:"type,omitempty"` @@ -7257,7 +7319,7 @@ type HealthCheck struct { // Name: Name of the resource. Provided by the client when the resource // is created. The name must be 1-63 characters long, and comply with // RFC1035. Specifically, the name must be 1-63 characters long and - // match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means + // match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means // the first character must be a lowercase letter, and all following // characters must be a dash, lowercase letter, or digit, except the // last character, which cannot be a dash. @@ -7623,7 +7685,7 @@ type HttpHealthCheck struct { // Name: Name of the resource. Provided by the client when the resource // is created. The name must be 1-63 characters long, and comply with // RFC1035. Specifically, the name must be 1-63 characters long and - // match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means + // match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means // the first character must be a lowercase letter, and all following // characters must be a dash, lowercase letter, or digit, except the // last character, which cannot be a dash. @@ -7868,7 +7930,7 @@ type HttpsHealthCheck struct { // Name: Name of the resource. Provided by the client when the resource // is created. The name must be 1-63 characters long, and comply with // RFC1035. Specifically, the name must be 1-63 characters long and - // match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means + // match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means // the first character must be a lowercase letter, and all following // characters must be a dash, lowercase letter, or digit, except the // last character, which cannot be a dash. @@ -8150,13 +8212,17 @@ type Image struct { // the setLabels method. Labels map[string]string `json:"labels,omitempty"` + // LicenseCodes: Integer license codes indicating which licenses are + // attached to this image. + LicenseCodes googleapi.Int64s `json:"licenseCodes,omitempty"` + // Licenses: Any applicable license URI. Licenses []string `json:"licenses,omitempty"` // Name: Name of the resource; provided by the client when the resource // is created. The name must be 1-63 characters long, and comply with // RFC1035. Specifically, the name must be 1-63 characters long and - // match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means + // match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means // the first character must be a lowercase letter, and all following // characters must be a dash, lowercase letter, or digit, except the // last character, which cannot be a dash. @@ -8206,6 +8272,26 @@ type Image struct { // taken from the current or a previous instance of a given image name. SourceImageId string `json:"sourceImageId,omitempty"` + // SourceSnapshot: URL of the source snapshot used to create this image. + // This can be a full or valid partial URL. You must provide exactly one + // of: + // - this property, or + // - the sourceImage property, or + // - the rawDisk.source property, or + // - the sourceDisk property in order to create an image. + SourceSnapshot string `json:"sourceSnapshot,omitempty"` + + // SourceSnapshotEncryptionKey: The customer-supplied encryption key of + // the source snapshot. Required if the source snapshot is protected by + // a customer-supplied encryption key. + SourceSnapshotEncryptionKey *CustomerEncryptionKey `json:"sourceSnapshotEncryptionKey,omitempty"` + + // SourceSnapshotId: [Output Only] The ID value of the snapshot used to + // create this image. This value may be used to determine whether the + // snapshot was taken from the current or a previous instance of a given + // snapshot name. + SourceSnapshotId string `json:"sourceSnapshotId,omitempty"` + // SourceType: The type of the image used to create this disk. The // default and only value is RAW // @@ -8509,18 +8595,18 @@ type Instance struct { // when the instance is created. For example, the following is a valid // partial url to a predefined machine // type: - // // zones/us-central1-f/machineTypes/n1-standard-1 // + // // To create a custom machine type, provide a URL to a machine type in // the following format, where CPUS is 1 or an even number up to 32 (2, // 4, 6, ... 24, etc), and MEMORY is the total memory for this instance. // Memory must be a multiple of 256 MB and must be supplied in MB (e.g. // 5 GB of memory is 5120 // MB): - // // zones/zone/machineTypes/custom-CPUS-MEMORY // + // // For example: zones/us-central1-f/machineTypes/custom-4-5120 // // For a full list of restrictions, read the Specifications for custom @@ -8541,8 +8627,8 @@ type Instance struct { // creating the resource. The resource name must be 1-63 characters // long, and comply with RFC1035. Specifically, the name must be 1-63 // characters long and match the regular expression - // [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a - // lowercase letter, and all following characters must be a dash, + // `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be + // a lowercase letter, and all following characters must be a dash, // lowercase letter, or digit, except the last character, which cannot // be a dash. Name string `json:"name,omitempty"` @@ -8598,7 +8684,9 @@ type Instance struct { // comply with RFC1035. Tags *Tags `json:"tags,omitempty"` - // Zone: [Output Only] URL of the zone where the instance resides. + // Zone: [Output Only] URL of the zone where the instance resides. You + // must specify this field as part of the HTTP request URL. It is not + // settable as a field in the request body. Zone string `json:"zone,omitempty"` // ServerResponse contains the HTTP response code and headers from the @@ -10577,6 +10665,162 @@ func (s *InstanceListWarningData) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// InstanceListReferrers: Contains a list of instance referrers. +type InstanceListReferrers struct { + // Id: [Output Only] Unique identifier for the resource; defined by the + // server. + Id string `json:"id,omitempty"` + + // Items: A list of Reference resources. + Items []*Reference `json:"items,omitempty"` + + // Kind: [Output Only] Type of resource. Always + // compute#instanceListReferrers for lists of Instance referrers. + Kind string `json:"kind,omitempty"` + + // NextPageToken: [Output Only] This token allows you to get the next + // page of results for list requests. If the number of results is larger + // than maxResults, use the nextPageToken as a value for the query + // parameter pageToken in the next list request. Subsequent list + // requests will have their own nextPageToken to continue paging through + // the results. + NextPageToken string `json:"nextPageToken,omitempty"` + + // SelfLink: [Output Only] Server-defined URL for this resource. + SelfLink string `json:"selfLink,omitempty"` + + // Warning: [Output Only] Informational warning message. + Warning *InstanceListReferrersWarning `json:"warning,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "Id") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Id") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *InstanceListReferrers) MarshalJSON() ([]byte, error) { + type NoMethod InstanceListReferrers + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// InstanceListReferrersWarning: [Output Only] Informational warning +// message. +type InstanceListReferrersWarning struct { + // Code: [Output Only] A warning code, if applicable. For example, + // Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in + // the response. + // + // Possible values: + // "CLEANUP_FAILED" + // "DEPRECATED_RESOURCE_USED" + // "DEPRECATED_TYPE_USED" + // "DISK_SIZE_LARGER_THAN_IMAGE_SIZE" + // "EXPERIMENTAL_TYPE_USED" + // "EXTERNAL_API_WARNING" + // "FIELD_VALUE_OVERRIDEN" + // "INJECTED_KERNELS_DEPRECATED" + // "MISSING_TYPE_DEPENDENCY" + // "NEXT_HOP_ADDRESS_NOT_ASSIGNED" + // "NEXT_HOP_CANNOT_IP_FORWARD" + // "NEXT_HOP_INSTANCE_NOT_FOUND" + // "NEXT_HOP_INSTANCE_NOT_ON_NETWORK" + // "NEXT_HOP_NOT_RUNNING" + // "NOT_CRITICAL_ERROR" + // "NO_RESULTS_ON_PAGE" + // "REQUIRED_TOS_AGREEMENT" + // "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING" + // "RESOURCE_NOT_DELETED" + // "SCHEMA_VALIDATION_IGNORED" + // "SINGLE_INSTANCE_PROPERTY_TEMPLATE" + // "UNDECLARED_PROPERTIES" + // "UNREACHABLE" + Code string `json:"code,omitempty"` + + // Data: [Output Only] Metadata about this warning in key: value format. + // For example: + // "data": [ { "key": "scope", "value": "zones/us-east1-d" } + Data []*InstanceListReferrersWarningData `json:"data,omitempty"` + + // Message: [Output Only] A human-readable description of the warning + // code. + Message string `json:"message,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Code") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Code") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *InstanceListReferrersWarning) MarshalJSON() ([]byte, error) { + type NoMethod InstanceListReferrersWarning + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +type InstanceListReferrersWarningData struct { + // Key: [Output Only] A key that provides more detail on the warning + // being returned. For example, for warnings where there are no results + // in a list request for a particular zone, this key might be scope and + // the key value might be the zone name. Other examples might be a key + // indicating a deprecated resource and a suggested replacement, or a + // warning about invalid network settings (for example, if an instance + // attempts to perform IP forwarding but is not enabled for IP + // forwarding). + Key string `json:"key,omitempty"` + + // Value: [Output Only] A warning data value corresponding to the key. + Value string `json:"value,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Key") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Key") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *InstanceListReferrersWarningData) MarshalJSON() ([]byte, error) { + type NoMethod InstanceListReferrersWarningData + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + type InstanceMoveRequest struct { // DestinationZone: The URL of the destination zone to move the // instance. This can be a full or partial URL. For example, the @@ -10756,7 +11000,7 @@ type InstanceTemplate struct { // Name: Name of the resource; provided by the client when the resource // is created. The name must be 1-63 characters long, and comply with // RFC1035. Specifically, the name must be 1-63 characters long and - // match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means + // match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means // the first character must be a lowercase letter, and all following // characters must be a dash, lowercase letter, or digit, except the // last character, which cannot be a dash. @@ -11391,7 +11635,7 @@ type Interconnect struct { // Name: Name of the resource. Provided by the client when the resource // is created. The name must be 1-63 characters long, and comply with // RFC1035. Specifically, the name must be 1-63 characters long and - // match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means + // match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means // the first character must be a lowercase letter, and all following // characters must be a dash, lowercase letter, or digit, except the // last character, which cannot be a dash. @@ -11498,7 +11742,7 @@ type InterconnectAttachment struct { // Name: Name of the resource. Provided by the client when the resource // is created. The name must be 1-63 characters long, and comply with // RFC1035. Specifically, the name must be 1-63 characters long and - // match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means + // match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means // the first character must be a lowercase letter, and all following // characters must be a dash, lowercase letter, or digit, except the // last character, which cannot be a dash. @@ -11518,7 +11762,9 @@ type InterconnectAttachment struct { PrivateInterconnectInfo *InterconnectAttachmentPrivateInfo `json:"privateInterconnectInfo,omitempty"` // Region: [Output Only] URL of the region where the regional - // interconnect attachment resides. + // interconnect attachment resides. You must specify this field as part + // of the HTTP request URL. It is not settable as a field in the request + // body. Region string `json:"region,omitempty"` // Router: URL of the cloud router to be used for dynamic routing. This @@ -12615,17 +12861,40 @@ type License struct { // reflects whether a license charges a usage fee. ChargesUseFee bool `json:"chargesUseFee,omitempty"` + // CreationTimestamp: [Output Only] Creation timestamp in RFC3339 text + // format. + CreationTimestamp string `json:"creationTimestamp,omitempty"` + + // Description: An optional textual description of the resource; + // provided by the client when the resource is created. + Description string `json:"description,omitempty"` + + // Id: [Output Only] The unique identifier for the resource. This + // identifier is defined by the server. + Id uint64 `json:"id,omitempty,string"` + // Kind: [Output Only] Type of resource. Always compute#license for // licenses. Kind string `json:"kind,omitempty"` + // LicenseCode: [Output Only] The unique code used to attach this + // license to images, snapshots, and disks. + LicenseCode uint64 `json:"licenseCode,omitempty,string"` + // Name: [Output Only] Name of the resource. The name is 1-63 characters // long and complies with RFC1035. Name string `json:"name,omitempty"` + ResourceRequirements *LicenseResourceRequirements `json:"resourceRequirements,omitempty"` + // SelfLink: [Output Only] Server-defined URL for the resource. SelfLink string `json:"selfLink,omitempty"` + // Transferable: If false, licenses will not be copied from the source + // resource when creating an image from a disk, disk from snapshot, or + // snapshot from disk. + Transferable bool `json:"transferable,omitempty"` + // ServerResponse contains the HTTP response code and headers from the // server. googleapi.ServerResponse `json:"-"` @@ -12653,6 +12922,291 @@ func (s *License) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +type LicenseCode struct { + // CreationTimestamp: [Output Only] Creation timestamp in RFC3339 text + // format. + CreationTimestamp string `json:"creationTimestamp,omitempty"` + + // Description: [Output Only] Description of this License Code. + Description string `json:"description,omitempty"` + + // Id: [Output Only] The unique identifier for the resource. This + // identifier is defined by the server. + Id uint64 `json:"id,omitempty,string"` + + // Kind: [Output Only] Type of resource. Always compute#licenseCode for + // licenses. + Kind string `json:"kind,omitempty"` + + // LicenseAlias: [Output Only] URL and description aliases of Licenses + // with the same License Code. + LicenseAlias []*LicenseCodeLicenseAlias `json:"licenseAlias,omitempty"` + + // Name: [Output Only] Name of the resource. The name is 1-20 characters + // long and must be a valid 64 bit integer. + Name string `json:"name,omitempty"` + + // SelfLink: [Output Only] Server-defined URL for the resource. + SelfLink string `json:"selfLink,omitempty"` + + // State: [Output Only] Current state of this License Code. + // + // Possible values: + // "DISABLED" + // "ENABLED" + // "RESTRICTED" + // "STATE_UNSPECIFIED" + // "TERMINATED" + State string `json:"state,omitempty"` + + // Transferable: [Output Only] If true, the license will remain attached + // when creating images or snapshots from disks. Otherwise, the license + // is not transferred. + Transferable bool `json:"transferable,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "CreationTimestamp") + // to unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "CreationTimestamp") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *LicenseCode) MarshalJSON() ([]byte, error) { + type NoMethod LicenseCode + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +type LicenseCodeLicenseAlias struct { + // Description: [Output Only] Description of this License Code. + Description string `json:"description,omitempty"` + + // SelfLink: [Output Only] URL of license corresponding to this License + // Code. + SelfLink string `json:"selfLink,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Description") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Description") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *LicenseCodeLicenseAlias) MarshalJSON() ([]byte, error) { + type NoMethod LicenseCodeLicenseAlias + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +type LicenseResourceRequirements struct { + // MinGuestCpuCount: Minimum number of guest cpus required to use the + // Instance. Enforced at Instance creation and Instance start. + MinGuestCpuCount int64 `json:"minGuestCpuCount,omitempty"` + + // MinMemoryMb: Minimum memory required to use the Instance. Enforced at + // Instance creation and Instance start. + MinMemoryMb int64 `json:"minMemoryMb,omitempty"` + + // ForceSendFields is a list of field names (e.g. "MinGuestCpuCount") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "MinGuestCpuCount") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *LicenseResourceRequirements) MarshalJSON() ([]byte, error) { + type NoMethod LicenseResourceRequirements + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +type LicensesListResponse struct { + // Id: [Output Only] Unique identifier for the resource; defined by the + // server. + Id string `json:"id,omitempty"` + + // Items: A list of License resources. + Items []*License `json:"items,omitempty"` + + // NextPageToken: [Output Only] This token allows you to get the next + // page of results for list requests. If the number of results is larger + // than maxResults, use the nextPageToken as a value for the query + // parameter pageToken in the next list request. Subsequent list + // requests will have their own nextPageToken to continue paging through + // the results. + NextPageToken string `json:"nextPageToken,omitempty"` + + // SelfLink: [Output Only] Server-defined URL for this resource. + SelfLink string `json:"selfLink,omitempty"` + + // Warning: [Output Only] Informational warning message. + Warning *LicensesListResponseWarning `json:"warning,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "Id") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Id") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *LicensesListResponse) MarshalJSON() ([]byte, error) { + type NoMethod LicensesListResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// LicensesListResponseWarning: [Output Only] Informational warning +// message. +type LicensesListResponseWarning struct { + // Code: [Output Only] A warning code, if applicable. For example, + // Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in + // the response. + // + // Possible values: + // "CLEANUP_FAILED" + // "DEPRECATED_RESOURCE_USED" + // "DEPRECATED_TYPE_USED" + // "DISK_SIZE_LARGER_THAN_IMAGE_SIZE" + // "EXPERIMENTAL_TYPE_USED" + // "EXTERNAL_API_WARNING" + // "FIELD_VALUE_OVERRIDEN" + // "INJECTED_KERNELS_DEPRECATED" + // "MISSING_TYPE_DEPENDENCY" + // "NEXT_HOP_ADDRESS_NOT_ASSIGNED" + // "NEXT_HOP_CANNOT_IP_FORWARD" + // "NEXT_HOP_INSTANCE_NOT_FOUND" + // "NEXT_HOP_INSTANCE_NOT_ON_NETWORK" + // "NEXT_HOP_NOT_RUNNING" + // "NOT_CRITICAL_ERROR" + // "NO_RESULTS_ON_PAGE" + // "REQUIRED_TOS_AGREEMENT" + // "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING" + // "RESOURCE_NOT_DELETED" + // "SCHEMA_VALIDATION_IGNORED" + // "SINGLE_INSTANCE_PROPERTY_TEMPLATE" + // "UNDECLARED_PROPERTIES" + // "UNREACHABLE" + Code string `json:"code,omitempty"` + + // Data: [Output Only] Metadata about this warning in key: value format. + // For example: + // "data": [ { "key": "scope", "value": "zones/us-east1-d" } + Data []*LicensesListResponseWarningData `json:"data,omitempty"` + + // Message: [Output Only] A human-readable description of the warning + // code. + Message string `json:"message,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Code") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Code") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *LicensesListResponseWarning) MarshalJSON() ([]byte, error) { + type NoMethod LicensesListResponseWarning + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +type LicensesListResponseWarningData struct { + // Key: [Output Only] A key that provides more detail on the warning + // being returned. For example, for warnings where there are no results + // in a list request for a particular zone, this key might be scope and + // the key value might be the zone name. Other examples might be a key + // indicating a deprecated resource and a suggested replacement, or a + // warning about invalid network settings (for example, if an instance + // attempts to perform IP forwarding but is not enabled for IP + // forwarding). + Key string `json:"key,omitempty"` + + // Value: [Output Only] A warning data value corresponding to the key. + Value string `json:"value,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Key") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Key") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *LicensesListResponseWarningData) MarshalJSON() ([]byte, error) { + type NoMethod LicensesListResponseWarningData + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // MachineType: A Machine Type resource. (== resource_for // v1.machineTypes ==) (== resource_for beta.machineTypes ==) type MachineType struct { @@ -13214,6 +13768,7 @@ func (s *MachineTypesScopedListWarningData) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// ManagedInstance: Next available tag: 12 type ManagedInstance struct { // CurrentAction: [Output Only] The current action that the managed // instance group has scheduled for the instance. Possible values: @@ -13239,6 +13794,8 @@ type ManagedInstance struct { // changes to the instance without stopping it. For example, the group // can update the target pool list for an instance without stopping that // instance. + // - VERIFYING The managed instance group has created the instance and + // it is in the process of being verified. // // Possible values: // "ABANDONING" @@ -13544,7 +14101,7 @@ type Network struct { // Name: Name of the resource. Provided by the client when the resource // is created. The name must be 1-63 characters long, and comply with // RFC1035. Specifically, the name must be 1-63 characters long and - // match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means + // match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means // the first character must be a lowercase letter, and all following // characters must be a dash, lowercase letter, or digit, except the // last character, which cannot be a dash. @@ -13606,6 +14163,12 @@ type NetworkInterface struct { // subnet-mode networks. AliasIpRanges []*AliasIpRange `json:"aliasIpRanges,omitempty"` + // Fingerprint: Fingerprint hash of contents stored in this network + // interface. This field will be ignored when inserting an Instance or + // adding a NetworkInterface. An up-to-date fingerprint must be provided + // in order to update the NetworkInterface. + Fingerprint string `json:"fingerprint,omitempty"` + // Kind: [Output Only] Type of the resource. Always // compute#networkInterface for network interfaces. Kind string `json:"kind,omitempty"` @@ -13842,8 +14405,8 @@ type NetworkPeering struct { // Name: Name of this peering. Provided by the client when the peering // is created. The name must comply with RFC1035. Specifically, the name // must be 1-63 characters long and match regular expression - // [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a - // lowercase letter, and all the following characters must be a dash, + // `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be + // a lowercase letter, and all the following characters must be a dash, // lowercase letter, or digit, except the last character, which cannot // be a dash. Name string `json:"name,omitempty"` @@ -14053,7 +14616,9 @@ type Operation struct { Progress int64 `json:"progress,omitempty"` // Region: [Output Only] The URL of the region where the operation - // resides. Only available when performing regional operations. + // resides. Only available when performing regional operations. You must + // specify this field as part of the HTTP request URL. It is not + // settable as a field in the request body. Region string `json:"region,omitempty"` // SelfLink: [Output Only] Server-defined URL for the resource. @@ -14094,7 +14659,9 @@ type Operation struct { Warnings []*OperationWarnings `json:"warnings,omitempty"` // Zone: [Output Only] The URL of the zone where the operation resides. - // Only available when performing per-zone operations. + // Only available when performing per-zone operations. You must specify + // this field as part of the HTTP request URL. It is not settable as a + // field in the request body. Zone string `json:"zone,omitempty"` // ServerResponse contains the HTTP response code and headers from the @@ -15058,6 +15625,7 @@ type Quota struct { // "NETWORKS" // "NVIDIA_K80_GPUS" // "NVIDIA_P100_GPUS" + // "NVIDIA_V100_GPUS" // "PREEMPTIBLE_CPUS" // "PREEMPTIBLE_LOCAL_SSD_GB" // "PREEMPTIBLE_NVIDIA_K80_GPUS" @@ -15126,6 +15694,46 @@ func (s *Quota) UnmarshalJSON(data []byte) error { return nil } +// Reference: Represents a reference to a resource. +type Reference struct { + // Kind: [Output Only] Type of the resource. Always compute#reference + // for references. + Kind string `json:"kind,omitempty"` + + // ReferenceType: A description of the reference type with no implied + // semantics. Possible values include: + // - MEMBER_OF + ReferenceType string `json:"referenceType,omitempty"` + + // Referrer: URL of the resource which refers to the target. + Referrer string `json:"referrer,omitempty"` + + // Target: URL of the resource to which this reference points. + Target string `json:"target,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Kind") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Kind") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *Reference) MarshalJSON() ([]byte, error) { + type NoMethod Reference + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // Region: Region resource. (== resource_for beta.regions ==) (== // resource_for v1.regions ==) type Region struct { @@ -16340,7 +16948,7 @@ type Route struct { // Name: Name of the resource. Provided by the client when the resource // is created. The name must be 1-63 characters long, and comply with // RFC1035. Specifically, the name must be 1-63 characters long and - // match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means + // match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means // the first character must be a lowercase letter, and all following // characters must be a dash, lowercase letter, or digit, except the // last character, which cannot be a dash. @@ -16713,7 +17321,7 @@ type Router struct { // Name: Name of the resource. Provided by the client when the resource // is created. The name must be 1-63 characters long, and comply with // RFC1035. Specifically, the name must be 1-63 characters long and - // match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means + // match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means // the first character must be a lowercase letter, and all following // characters must be a dash, lowercase letter, or digit, except the // last character, which cannot be a dash. @@ -16722,7 +17330,9 @@ type Router struct { // Network: URI of the network to which this router belongs. Network string `json:"network,omitempty"` - // Region: [Output Only] URI of the region where the router resides. + // Region: [Output Only] URI of the region where the router resides. You + // must specify this field as part of the HTTP request URL. It is not + // settable as a field in the request body. Region string `json:"region,omitempty"` // SelfLink: [Output Only] Server-defined URL for the resource. @@ -16755,6 +17365,39 @@ func (s *Router) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// RouterAdvertisedIpRange: Description-tagged IP ranges for the router +// to advertise. +type RouterAdvertisedIpRange struct { + // Description: User-specified description for the IP range. + Description string `json:"description,omitempty"` + + // Range: The IP range to advertise. The value must be a CIDR-formatted + // string. + Range string `json:"range,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Description") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Description") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *RouterAdvertisedIpRange) MarshalJSON() ([]byte, error) { + type NoMethod RouterAdvertisedIpRange + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // RouterAggregatedList: Contains a list of routers. type RouterAggregatedList struct { // Id: [Output Only] Unique identifier for the resource; defined by the @@ -16911,13 +17554,39 @@ func (s *RouterAggregatedListWarningData) MarshalJSON() ([]byte, error) { } type RouterBgp struct { + // AdvertiseMode: User-specified flag to indicate which mode to use for + // advertisement. + // + // Possible values: + // "CUSTOM" + // "DEFAULT" + AdvertiseMode string `json:"advertiseMode,omitempty"` + + // AdvertisedGroups: User-specified list of prefix groups to advertise + // in custom mode. This field can only be populated if advertise_mode is + // CUSTOM and is advertised to all peers of the router. These groups + // will be advertised in addition to any specified prefixes. Leave this + // field blank to advertise no custom groups. + // + // Possible values: + // "ALL_SUBNETS" + AdvertisedGroups []string `json:"advertisedGroups,omitempty"` + + // AdvertisedIpRanges: User-specified list of individual IP ranges to + // advertise in custom mode. This field can only be populated if + // advertise_mode is CUSTOM and is advertised to all peers of the + // router. These IP ranges will be advertised in addition to any + // specified groups. Leave this field blank to advertise no custom IP + // ranges. + AdvertisedIpRanges []*RouterAdvertisedIpRange `json:"advertisedIpRanges,omitempty"` + // Asn: Local BGP Autonomous System Number (ASN). Must be an RFC6996 // private ASN, either 16-bit or 32-bit. The value will be fixed for // this router resource. All VPN tunnels that link to this router will // have the same local ASN. Asn int64 `json:"asn,omitempty"` - // ForceSendFields is a list of field names (e.g. "Asn") to + // ForceSendFields is a list of field names (e.g. "AdvertiseMode") to // unconditionally include in API requests. By default, fields with // empty values are omitted from API requests. However, any non-pointer, // non-interface field appearing in ForceSendFields will be sent to the @@ -16925,10 +17594,10 @@ type RouterBgp struct { // used to include empty fields in Patch requests. ForceSendFields []string `json:"-"` - // NullFields is a list of field names (e.g. "Asn") to include in API - // requests with the JSON null value. By default, fields with empty - // values are omitted from API requests. However, any field with an - // empty value appearing in NullFields will be sent to the server as + // NullFields is a list of field names (e.g. "AdvertiseMode") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as // null. It is an error if a field in this list has a non-empty value. // This may be used to include null fields in Patch requests. NullFields []string `json:"-"` @@ -16941,6 +17610,33 @@ func (s *RouterBgp) MarshalJSON() ([]byte, error) { } type RouterBgpPeer struct { + // AdvertiseMode: User-specified flag to indicate which mode to use for + // advertisement. + // + // Possible values: + // "CUSTOM" + // "DEFAULT" + AdvertiseMode string `json:"advertiseMode,omitempty"` + + // AdvertisedGroups: User-specified list of prefix groups to advertise + // in custom mode. This field can only be populated if advertise_mode is + // CUSTOM and overrides the list defined for the router (in Bgp + // message). These groups will be advertised in addition to any + // specified prefixes. Leave this field blank to advertise no custom + // groups. + // + // Possible values: + // "ALL_SUBNETS" + AdvertisedGroups []string `json:"advertisedGroups,omitempty"` + + // AdvertisedIpRanges: User-specified list of individual IP ranges to + // advertise in custom mode. This field can only be populated if + // advertise_mode is CUSTOM and overrides the list defined for the + // router (in Bgp message). These IP ranges will be advertised in + // addition to any specified groups. Leave this field blank to advertise + // no custom IP ranges. + AdvertisedIpRanges []*RouterAdvertisedIpRange `json:"advertisedIpRanges,omitempty"` + // AdvertisedRoutePriority: The priority of routes advertised to this // BGP peer. In the case where there is more than one matching route of // maximum length, the routes with lowest priority value win. @@ -16965,22 +17661,20 @@ type RouterBgpPeer struct { // Only IPv4 is supported. PeerIpAddress string `json:"peerIpAddress,omitempty"` - // ForceSendFields is a list of field names (e.g. - // "AdvertisedRoutePriority") to unconditionally include in API - // requests. By default, fields with empty values are omitted from API - // requests. However, any non-pointer, non-interface field appearing in - // ForceSendFields will be sent to the server regardless of whether the - // field is empty or not. This may be used to include empty fields in - // Patch requests. + // ForceSendFields is a list of field names (e.g. "AdvertiseMode") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. ForceSendFields []string `json:"-"` - // NullFields is a list of field names (e.g. "AdvertisedRoutePriority") - // to include in API requests with the JSON null value. By default, - // fields with empty values are omitted from API requests. However, any - // field with an empty value appearing in NullFields will be sent to the - // server as null. It is an error if a field in this list has a - // non-empty value. This may be used to include null fields in Patch - // requests. + // NullFields is a list of field names (e.g. "AdvertiseMode") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. NullFields []string `json:"-"` } @@ -17709,6 +18403,10 @@ type Snapshot struct { // by the setLabels method. Label values may be empty. Labels map[string]string `json:"labels,omitempty"` + // LicenseCodes: Integer license codes indicating which licenses are + // attached to this snapshot. + LicenseCodes googleapi.Int64s `json:"licenseCodes,omitempty"` + // Licenses: [Output Only] A list of public visible licenses that apply // to this snapshot. This can be because the original image had licenses // attached (such as a Windows image). @@ -17717,7 +18415,7 @@ type Snapshot struct { // Name: Name of the resource; provided by the client when the resource // is created. The name must be 1-63 characters long, and comply with // RFC1035. Specifically, the name must be 1-63 characters long and - // match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means + // match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means // the first character must be a lowercase letter, and all following // characters must be a dash, lowercase letter, or digit, except the // last character, which cannot be a dash. @@ -17995,7 +18693,7 @@ type SslCertificate struct { // Name: Name of the resource. Provided by the client when the resource // is created. The name must be 1-63 characters long, and comply with // RFC1035. Specifically, the name must be 1-63 characters long and - // match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means + // match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means // the first character must be a lowercase letter, and all following // characters must be a dash, lowercase letter, or digit, except the // last character, which cannot be a dash. @@ -18190,6 +18888,426 @@ func (s *SslCertificateListWarningData) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +type SslPoliciesList struct { + // Id: [Output Only] Unique identifier for the resource; defined by the + // server. + Id string `json:"id,omitempty"` + + // Items: A list of SslPolicy resources. + Items []*SslPolicy `json:"items,omitempty"` + + // Kind: [Output Only] Type of the resource. Always + // compute#sslPoliciesList for lists of sslPolicies. + Kind string `json:"kind,omitempty"` + + // NextPageToken: [Output Only] This token allows you to get the next + // page of results for list requests. If the number of results is larger + // than maxResults, use the nextPageToken as a value for the query + // parameter pageToken in the next list request. Subsequent list + // requests will have their own nextPageToken to continue paging through + // the results. + NextPageToken string `json:"nextPageToken,omitempty"` + + // SelfLink: [Output Only] Server-defined URL for this resource. + SelfLink string `json:"selfLink,omitempty"` + + // Warning: [Output Only] Informational warning message. + Warning *SslPoliciesListWarning `json:"warning,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "Id") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Id") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *SslPoliciesList) MarshalJSON() ([]byte, error) { + type NoMethod SslPoliciesList + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// SslPoliciesListWarning: [Output Only] Informational warning message. +type SslPoliciesListWarning struct { + // Code: [Output Only] A warning code, if applicable. For example, + // Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in + // the response. + // + // Possible values: + // "CLEANUP_FAILED" + // "DEPRECATED_RESOURCE_USED" + // "DEPRECATED_TYPE_USED" + // "DISK_SIZE_LARGER_THAN_IMAGE_SIZE" + // "EXPERIMENTAL_TYPE_USED" + // "EXTERNAL_API_WARNING" + // "FIELD_VALUE_OVERRIDEN" + // "INJECTED_KERNELS_DEPRECATED" + // "MISSING_TYPE_DEPENDENCY" + // "NEXT_HOP_ADDRESS_NOT_ASSIGNED" + // "NEXT_HOP_CANNOT_IP_FORWARD" + // "NEXT_HOP_INSTANCE_NOT_FOUND" + // "NEXT_HOP_INSTANCE_NOT_ON_NETWORK" + // "NEXT_HOP_NOT_RUNNING" + // "NOT_CRITICAL_ERROR" + // "NO_RESULTS_ON_PAGE" + // "REQUIRED_TOS_AGREEMENT" + // "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING" + // "RESOURCE_NOT_DELETED" + // "SCHEMA_VALIDATION_IGNORED" + // "SINGLE_INSTANCE_PROPERTY_TEMPLATE" + // "UNDECLARED_PROPERTIES" + // "UNREACHABLE" + Code string `json:"code,omitempty"` + + // Data: [Output Only] Metadata about this warning in key: value format. + // For example: + // "data": [ { "key": "scope", "value": "zones/us-east1-d" } + Data []*SslPoliciesListWarningData `json:"data,omitempty"` + + // Message: [Output Only] A human-readable description of the warning + // code. + Message string `json:"message,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Code") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Code") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *SslPoliciesListWarning) MarshalJSON() ([]byte, error) { + type NoMethod SslPoliciesListWarning + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +type SslPoliciesListWarningData struct { + // Key: [Output Only] A key that provides more detail on the warning + // being returned. For example, for warnings where there are no results + // in a list request for a particular zone, this key might be scope and + // the key value might be the zone name. Other examples might be a key + // indicating a deprecated resource and a suggested replacement, or a + // warning about invalid network settings (for example, if an instance + // attempts to perform IP forwarding but is not enabled for IP + // forwarding). + Key string `json:"key,omitempty"` + + // Value: [Output Only] A warning data value corresponding to the key. + Value string `json:"value,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Key") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Key") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *SslPoliciesListWarningData) MarshalJSON() ([]byte, error) { + type NoMethod SslPoliciesListWarningData + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +type SslPoliciesListAvailableFeaturesResponse struct { + Features []string `json:"features,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "Features") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Features") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *SslPoliciesListAvailableFeaturesResponse) MarshalJSON() ([]byte, error) { + type NoMethod SslPoliciesListAvailableFeaturesResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// SslPolicy: A SSL policy specifies the server-side support for SSL +// features. This can be attached to a TargetHttpsProxy or a +// TargetSslProxy. This affects connections between clients and the +// HTTPS or SSL proxy load balancer. They do not affect the connection +// between the load balancers and the backends. +type SslPolicy struct { + // CreationTimestamp: [Output Only] Creation timestamp in RFC3339 text + // format. + CreationTimestamp string `json:"creationTimestamp,omitempty"` + + // CustomFeatures: List of features enabled when the selected profile is + // CUSTOM. The + // - method returns the set of features that can be specified in this + // list. This field must be empty if the profile is not CUSTOM. + CustomFeatures []string `json:"customFeatures,omitempty"` + + // Description: An optional description of this resource. Provide this + // property when you create the resource. + Description string `json:"description,omitempty"` + + // EnabledFeatures: [Output Only] The list of features enabled in the + // SSL policy. + EnabledFeatures []string `json:"enabledFeatures,omitempty"` + + // Fingerprint: Fingerprint of this resource. A hash of the contents + // stored in this object. This field is used in optimistic locking. This + // field will be ignored when inserting a SslPolicy. An up-to-date + // fingerprint must be provided in order to update the SslPolicy. + Fingerprint string `json:"fingerprint,omitempty"` + + // Id: [Output Only] The unique identifier for the resource. This + // identifier is defined by the server. + Id uint64 `json:"id,omitempty,string"` + + // Kind: [Output only] Type of the resource. Always compute#sslPolicyfor + // SSL policies. + Kind string `json:"kind,omitempty"` + + // MinTlsVersion: The minimum version of SSL protocol that can be used + // by the clients to establish a connection with the load balancer. This + // can be one of TLS_1_0, TLS_1_1, TLS_1_2, TLS_1_3. + // + // Possible values: + // "TLS_1_0" + // "TLS_1_1" + // "TLS_1_2" + // "TLS_1_3" + MinTlsVersion string `json:"minTlsVersion,omitempty"` + + // Name: Name of the resource. The name must be 1-63 characters long, + // and comply with RFC1035. Specifically, the name must be 1-63 + // characters long and match the regular expression + // `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be + // a lowercase letter, and all following characters must be a dash, + // lowercase letter, or digit, except the last character, which cannot + // be a dash. + Name string `json:"name,omitempty"` + + // Profile: Profile specifies the set of SSL features that can be used + // by the load balancer when negotiating SSL with clients. This can be + // one of COMPATIBLE, MODERN, RESTRICTED, or CUSTOM. If using CUSTOM, + // the set of SSL features to enable must be specified in the + // customFeatures field. + // + // Possible values: + // "COMPATIBLE" + // "CUSTOM" + // "MODERN" + // "RESTRICTED" + Profile string `json:"profile,omitempty"` + + // SelfLink: [Output Only] Server-defined URL for the resource. + SelfLink string `json:"selfLink,omitempty"` + + // Warnings: [Output Only] If potential misconfigurations are detected + // for this SSL policy, this field will be populated with warning + // messages. + Warnings []*SslPolicyWarnings `json:"warnings,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "CreationTimestamp") + // to unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "CreationTimestamp") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *SslPolicy) MarshalJSON() ([]byte, error) { + type NoMethod SslPolicy + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +type SslPolicyWarnings struct { + // Code: [Output Only] A warning code, if applicable. For example, + // Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in + // the response. + // + // Possible values: + // "CLEANUP_FAILED" + // "DEPRECATED_RESOURCE_USED" + // "DEPRECATED_TYPE_USED" + // "DISK_SIZE_LARGER_THAN_IMAGE_SIZE" + // "EXPERIMENTAL_TYPE_USED" + // "EXTERNAL_API_WARNING" + // "FIELD_VALUE_OVERRIDEN" + // "INJECTED_KERNELS_DEPRECATED" + // "MISSING_TYPE_DEPENDENCY" + // "NEXT_HOP_ADDRESS_NOT_ASSIGNED" + // "NEXT_HOP_CANNOT_IP_FORWARD" + // "NEXT_HOP_INSTANCE_NOT_FOUND" + // "NEXT_HOP_INSTANCE_NOT_ON_NETWORK" + // "NEXT_HOP_NOT_RUNNING" + // "NOT_CRITICAL_ERROR" + // "NO_RESULTS_ON_PAGE" + // "REQUIRED_TOS_AGREEMENT" + // "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING" + // "RESOURCE_NOT_DELETED" + // "SCHEMA_VALIDATION_IGNORED" + // "SINGLE_INSTANCE_PROPERTY_TEMPLATE" + // "UNDECLARED_PROPERTIES" + // "UNREACHABLE" + Code string `json:"code,omitempty"` + + // Data: [Output Only] Metadata about this warning in key: value format. + // For example: + // "data": [ { "key": "scope", "value": "zones/us-east1-d" } + Data []*SslPolicyWarningsData `json:"data,omitempty"` + + // Message: [Output Only] A human-readable description of the warning + // code. + Message string `json:"message,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Code") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Code") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *SslPolicyWarnings) MarshalJSON() ([]byte, error) { + type NoMethod SslPolicyWarnings + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +type SslPolicyWarningsData struct { + // Key: [Output Only] A key that provides more detail on the warning + // being returned. For example, for warnings where there are no results + // in a list request for a particular zone, this key might be scope and + // the key value might be the zone name. Other examples might be a key + // indicating a deprecated resource and a suggested replacement, or a + // warning about invalid network settings (for example, if an instance + // attempts to perform IP forwarding but is not enabled for IP + // forwarding). + Key string `json:"key,omitempty"` + + // Value: [Output Only] A warning data value corresponding to the key. + Value string `json:"value,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Key") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Key") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *SslPolicyWarningsData) MarshalJSON() ([]byte, error) { + type NoMethod SslPolicyWarningsData + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +type SslPolicyReference struct { + // SslPolicy: URL of the SSL policy resource. Set this to empty string + // to clear any existing SSL policy associated with the target proxy + // resource. + SslPolicy string `json:"sslPolicy,omitempty"` + + // ForceSendFields is a list of field names (e.g. "SslPolicy") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "SslPolicy") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *SslPolicyReference) MarshalJSON() ([]byte, error) { + type NoMethod SslPolicyReference + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // Subnetwork: A Subnetwork resource. (== resource_for beta.subnetworks // ==) (== resource_for v1.subnetworks ==) type Subnetwork struct { @@ -18202,9 +19320,14 @@ type Subnetwork struct { // resource creation time. Description string `json:"description,omitempty"` + // Fingerprint: Fingerprint of this resource. A hash of the contents + // stored in this object. This field is used in optimistic locking. This + // field will be ignored when inserting a Subnetwork. An up-to-date + // fingerprint must be provided in order to update the Subnetwork. + Fingerprint string `json:"fingerprint,omitempty"` + // GatewayAddress: [Output Only] The gateway address for default routes - // to reach destination addresses outside this subnetwork. This field - // can be set only at resource creation time. + // to reach destination addresses outside this subnetwork. GatewayAddress string `json:"gatewayAddress,omitempty"` // Id: [Output Only] The unique identifier for the resource. This @@ -18225,7 +19348,7 @@ type Subnetwork struct { // Name: The name of the resource, provided by the client when initially // creating the resource. The name must be 1-63 characters long, and // comply with RFC1035. Specifically, the name must be 1-63 characters - // long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? + // long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` // which means the first character must be a lowercase letter, and all // following characters must be a dash, lowercase letter, or digit, // except the last character, which cannot be a dash. @@ -18939,7 +20062,7 @@ type TargetHttpProxy struct { // Name: Name of the resource. Provided by the client when the resource // is created. The name must be 1-63 characters long, and comply with // RFC1035. Specifically, the name must be 1-63 characters long and - // match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means + // match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means // the first character must be a lowercase letter, and all following // characters must be a dash, lowercase letter, or digit, except the // last character, which cannot be a dash. @@ -19189,7 +20312,7 @@ type TargetHttpsProxy struct { // Name: Name of the resource. Provided by the client when the resource // is created. The name must be 1-63 characters long, and comply with // RFC1035. Specifically, the name must be 1-63 characters long and - // match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means + // match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means // the first character must be a lowercase letter, and all following // characters must be a dash, lowercase letter, or digit, except the // last character, which cannot be a dash. @@ -19203,6 +20326,11 @@ type TargetHttpsProxy struct { // Currently, exactly one SSL certificate must be specified. SslCertificates []string `json:"sslCertificates,omitempty"` + // SslPolicy: URL of SslPolicy resource that will be associated with the + // TargetHttpsProxy resource. If not set, the TargetHttpsProxy resource + // will not have any SSL policy configured. + SslPolicy string `json:"sslPolicy,omitempty"` + // UrlMap: A fully-qualified or valid partial URL to the UrlMap resource // that defines the mapping from URL to the BackendService. For example, // the following are all valid URLs for specifying a URL map: @@ -19430,7 +20558,7 @@ type TargetInstance struct { // Name: Name of the resource. Provided by the client when the resource // is created. The name must be 1-63 characters long, and comply with // RFC1035. Specifically, the name must be 1-63 characters long and - // match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means + // match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means // the first character must be a lowercase letter, and all following // characters must be a dash, lowercase letter, or digit, except the // last character, which cannot be a dash. @@ -19447,7 +20575,8 @@ type TargetInstance struct { SelfLink string `json:"selfLink,omitempty"` // Zone: [Output Only] URL of the zone where the target instance - // resides. + // resides. You must specify this field as part of the HTTP request URL. + // It is not settable as a field in the request body. Zone string `json:"zone,omitempty"` // ServerResponse contains the HTTP response code and headers from the @@ -19992,7 +21121,7 @@ type TargetPool struct { // Name: Name of the resource. Provided by the client when the resource // is created. The name must be 1-63 characters long, and comply with // RFC1035. Specifically, the name must be 1-63 characters long and - // match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means + // match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means // the first character must be a lowercase letter, and all following // characters must be a dash, lowercase letter, or digit, except the // last character, which cannot be a dash. @@ -20802,7 +21931,7 @@ type TargetSslProxy struct { // Name: Name of the resource. Provided by the client when the resource // is created. The name must be 1-63 characters long, and comply with // RFC1035. Specifically, the name must be 1-63 characters long and - // match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means + // match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means // the first character must be a lowercase letter, and all following // characters must be a dash, lowercase letter, or digit, except the // last character, which cannot be a dash. @@ -20828,6 +21957,11 @@ type TargetSslProxy struct { // certificate must be specified. SslCertificates []string `json:"sslCertificates,omitempty"` + // SslPolicy: URL of SslPolicy resource that will be associated with the + // TargetSslProxy resource. If not set, the TargetSslProxy resource will + // not have any SSL policy configured. + SslPolicy string `json:"sslPolicy,omitempty"` + // ServerResponse contains the HTTP response code and headers from the // server. googleapi.ServerResponse `json:"-"` @@ -21094,7 +22228,7 @@ type TargetTcpProxy struct { // Name: Name of the resource. Provided by the client when the resource // is created. The name must be 1-63 characters long, and comply with // RFC1035. Specifically, the name must be 1-63 characters long and - // match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means + // match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means // the first character must be a lowercase letter, and all following // characters must be a dash, lowercase letter, or digit, except the // last character, which cannot be a dash. @@ -21326,7 +22460,7 @@ type TargetVpnGateway struct { // Name: Name of the resource. Provided by the client when the resource // is created. The name must be 1-63 characters long, and comply with // RFC1035. Specifically, the name must be 1-63 characters long and - // match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means + // match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means // the first character must be a lowercase letter, and all following // characters must be a dash, lowercase letter, or digit, except the // last character, which cannot be a dash. @@ -21337,7 +22471,8 @@ type TargetVpnGateway struct { Network string `json:"network,omitempty"` // Region: [Output Only] URL of the region where the target VPN gateway - // resides. + // resides. You must specify this field as part of the HTTP request URL. + // It is not settable as a field in the request body. Region string `json:"region,omitempty"` // SelfLink: [Output Only] Server-defined URL for the resource. @@ -21863,6 +22998,67 @@ func (s *TestFailure) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +type TestPermissionsRequest struct { + // Permissions: The set of permissions to check for the 'resource'. + // Permissions with wildcards (such as '*' or 'storage.*') are not + // allowed. + Permissions []string `json:"permissions,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Permissions") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Permissions") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *TestPermissionsRequest) MarshalJSON() ([]byte, error) { + type NoMethod TestPermissionsRequest + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +type TestPermissionsResponse struct { + // Permissions: A subset of `TestPermissionsRequest.permissions` that + // the caller is allowed. + Permissions []string `json:"permissions,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "Permissions") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Permissions") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *TestPermissionsResponse) MarshalJSON() ([]byte, error) { + type NoMethod TestPermissionsResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // UrlMap: A UrlMap resource. This resource defines the mapping from URL // to the BackendService resource, based on the "longest-match" of the // URL's host and path. @@ -21899,7 +23095,7 @@ type UrlMap struct { // Name: Name of the resource. Provided by the client when the resource // is created. The name must be 1-63 characters long, and comply with // RFC1035. Specifically, the name must be 1-63 characters long and - // match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means + // match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means // the first character must be a lowercase letter, and all following // characters must be a dash, lowercase letter, or digit, except the // last character, which cannot be a dash. @@ -21911,8 +23107,9 @@ type UrlMap struct { // SelfLink: [Output Only] Server-defined URL for the resource. SelfLink string `json:"selfLink,omitempty"` - // Tests: The list of expected URL mappings. Request to update this - // UrlMap will succeed only if all of the test cases pass. + // Tests: The list of expected URL mapping tests. Request to update this + // UrlMap will succeed only if all of the test cases pass. You can + // specify a maximum of 100 tests per UrlMap. Tests []*UrlMapTest `json:"tests,omitempty"` // ServerResponse contains the HTTP response code and headers from the @@ -22337,7 +23534,7 @@ type VpnTunnel struct { // Name: Name of the resource. Provided by the client when the resource // is created. The name must be 1-63 characters long, and comply with // RFC1035. Specifically, the name must be 1-63 characters long and - // match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means + // match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means // the first character must be a lowercase letter, and all following // characters must be a dash, lowercase letter, or digit, except the // last character, which cannot be a dash. @@ -22347,6 +23544,8 @@ type VpnTunnel struct { PeerIp string `json:"peerIp,omitempty"` // Region: [Output Only] URL of the region where the VPN tunnel resides. + // You must specify this field as part of the HTTP request URL. It is + // not settable as a field in the request body. Region string `json:"region,omitempty"` // RemoteTrafficSelector: Remote traffic selectors to use when @@ -22385,8 +23584,9 @@ type VpnTunnel struct { // "WAITING_FOR_FULL_CONFIG" Status string `json:"status,omitempty"` - // TargetVpnGateway: URL of the VPN gateway with which this VPN tunnel - // is associated. Provided by the client when the VPN tunnel is created. + // TargetVpnGateway: URL of the Target VPN gateway with which this VPN + // tunnel is associated. Provided by the client when the VPN tunnel is + // created. TargetVpnGateway string `json:"targetVpnGateway,omitempty"` // ServerResponse contains the HTTP response code and headers from the @@ -23331,32 +24531,28 @@ func (r *AcceleratorTypesService) AggregatedList(project string) *AcceleratorTyp return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *AcceleratorTypesAggregatedListCall) Filter(filter string) *AcceleratorTypesAggregatedListCall { c.urlParams_.Set("filter", filter) return c @@ -23500,7 +24696,7 @@ func (c *AcceleratorTypesAggregatedListCall) Do(opts ...googleapi.CallOption) (* // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -23748,32 +24944,28 @@ func (r *AcceleratorTypesService) List(project string, zone string) *Accelerator return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *AcceleratorTypesListCall) Filter(filter string) *AcceleratorTypesListCall { c.urlParams_.Set("filter", filter) return c @@ -23919,7 +25111,7 @@ func (c *AcceleratorTypesListCall) Do(opts ...googleapi.CallOption) (*Accelerato // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -24009,32 +25201,28 @@ func (r *AddressesService) AggregatedList(project string) *AddressesAggregatedLi return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *AddressesAggregatedListCall) Filter(filter string) *AddressesAggregatedListCall { c.urlParams_.Set("filter", filter) return c @@ -24178,7 +25366,7 @@ func (c *AddressesAggregatedListCall) Do(opts ...googleapi.CallOption) (*Address // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -24771,32 +25959,28 @@ func (r *AddressesService) List(project string, region string) *AddressesListCal return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *AddressesListCall) Filter(filter string) *AddressesListCall { c.urlParams_.Set("filter", filter) return c @@ -24942,7 +26126,7 @@ func (c *AddressesListCall) Do(opts ...googleapi.CallOption) (*AddressList, erro // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -25031,32 +26215,28 @@ func (r *AutoscalersService) AggregatedList(project string) *AutoscalersAggregat return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *AutoscalersAggregatedListCall) Filter(filter string) *AutoscalersAggregatedListCall { c.urlParams_.Set("filter", filter) return c @@ -25200,7 +26380,7 @@ func (c *AutoscalersAggregatedListCall) Do(opts ...googleapi.CallOption) (*Autos // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -25790,32 +26970,28 @@ func (r *AutoscalersService) List(project string, zone string) *AutoscalersListC return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *AutoscalersListCall) Filter(filter string) *AutoscalersListCall { c.urlParams_.Set("filter", filter) return c @@ -25961,7 +27137,7 @@ func (c *AutoscalersListCall) Do(opts ...googleapi.CallOption) (*AutoscalerList, // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -26892,32 +28068,28 @@ func (r *BackendBucketsService) List(project string) *BackendBucketsListCall { return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *BackendBucketsListCall) Filter(filter string) *BackendBucketsListCall { c.urlParams_.Set("filter", filter) return c @@ -27061,7 +28233,7 @@ func (c *BackendBucketsListCall) Do(opts ...googleapi.CallOption) (*BackendBucke // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -27487,32 +28659,28 @@ func (r *BackendServicesService) AggregatedList(project string) *BackendServices return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *BackendServicesAggregatedListCall) Filter(filter string) *BackendServicesAggregatedListCall { c.urlParams_.Set("filter", filter) return c @@ -27656,7 +28824,7 @@ func (c *BackendServicesAggregatedListCall) Do(opts ...googleapi.CallOption) (*B // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -28365,32 +29533,28 @@ func (r *BackendServicesService) List(project string) *BackendServicesListCall { return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *BackendServicesListCall) Filter(filter string) *BackendServicesListCall { c.urlParams_.Set("filter", filter) return c @@ -28534,7 +29698,7 @@ func (c *BackendServicesListCall) Do(opts ...googleapi.CallOption) (*BackendServ // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -28967,32 +30131,28 @@ func (r *DiskTypesService) AggregatedList(project string) *DiskTypesAggregatedLi return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *DiskTypesAggregatedListCall) Filter(filter string) *DiskTypesAggregatedListCall { c.urlParams_.Set("filter", filter) return c @@ -29136,7 +30296,7 @@ func (c *DiskTypesAggregatedListCall) Do(opts ...googleapi.CallOption) (*DiskTyp // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -29386,32 +30546,28 @@ func (r *DiskTypesService) List(project string, zone string) *DiskTypesListCall return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *DiskTypesListCall) Filter(filter string) *DiskTypesListCall { c.urlParams_.Set("filter", filter) return c @@ -29557,7 +30713,7 @@ func (c *DiskTypesListCall) Do(opts ...googleapi.CallOption) (*DiskTypeList, err // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -29647,32 +30803,28 @@ func (r *DisksService) AggregatedList(project string) *DisksAggregatedListCall { return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *DisksAggregatedListCall) Filter(filter string) *DisksAggregatedListCall { c.urlParams_.Set("filter", filter) return c @@ -29816,7 +30968,7 @@ func (c *DisksAggregatedListCall) Do(opts ...googleapi.CallOption) (*DiskAggrega // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -30619,32 +31771,28 @@ func (r *DisksService) List(project string, zone string) *DisksListCall { return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *DisksListCall) Filter(filter string) *DisksListCall { c.urlParams_.Set("filter", filter) return c @@ -30790,7 +31938,7 @@ func (c *DisksListCall) Do(opts ...googleapi.CallOption) (*DiskList, error) { // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -31719,32 +32867,28 @@ func (r *FirewallsService) List(project string) *FirewallsListCall { return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *FirewallsListCall) Filter(filter string) *FirewallsListCall { c.urlParams_.Set("filter", filter) return c @@ -31888,7 +33032,7 @@ func (c *FirewallsListCall) Do(opts ...googleapi.CallOption) (*FirewallList, err // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -32138,7 +33282,7 @@ type FirewallsUpdateCall struct { } // Update: Updates the specified firewall rule with the data included in -// the request. Using PUT method, can only update following fields of +// the request. The PUT method can only update the following fields of // firewall rule: allowed, description, sourceRanges, sourceTags, // targetTags. // For details, see https://cloud.google.com/compute/docs/reference/latest/firewalls/update @@ -32256,7 +33400,7 @@ func (c *FirewallsUpdateCall) Do(opts ...googleapi.CallOption) (*Operation, erro } return ret, nil // { - // "description": "Updates the specified firewall rule with the data included in the request. Using PUT method, can only update following fields of firewall rule: allowed, description, sourceRanges, sourceTags, targetTags.", + // "description": "Updates the specified firewall rule with the data included in the request. The PUT method can only update the following fields of firewall rule: allowed, description, sourceRanges, sourceTags, targetTags.", // "httpMethod": "PUT", // "id": "compute.firewalls.update", // "parameterOrder": [ @@ -32318,32 +33462,28 @@ func (r *ForwardingRulesService) AggregatedList(project string) *ForwardingRules return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *ForwardingRulesAggregatedListCall) Filter(filter string) *ForwardingRulesAggregatedListCall { c.urlParams_.Set("filter", filter) return c @@ -32487,7 +33627,7 @@ func (c *ForwardingRulesAggregatedListCall) Do(opts ...googleapi.CallOption) (*F // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -33080,32 +34220,28 @@ func (r *ForwardingRulesService) List(project string, region string) *Forwarding return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *ForwardingRulesListCall) Filter(filter string) *ForwardingRulesListCall { c.urlParams_.Set("filter", filter) return c @@ -33251,7 +34387,7 @@ func (c *ForwardingRulesListCall) Do(opts ...googleapi.CallOption) (*ForwardingR // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -33999,32 +35135,28 @@ func (r *GlobalAddressesService) List(project string) *GlobalAddressesListCall { return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *GlobalAddressesListCall) Filter(filter string) *GlobalAddressesListCall { c.urlParams_.Set("filter", filter) return c @@ -34168,7 +35300,7 @@ func (c *GlobalAddressesListCall) Do(opts ...googleapi.CallOption) (*AddressList // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -34727,32 +35859,28 @@ func (r *GlobalForwardingRulesService) List(project string) *GlobalForwardingRul return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *GlobalForwardingRulesListCall) Filter(filter string) *GlobalForwardingRulesListCall { c.urlParams_.Set("filter", filter) return c @@ -34896,7 +36024,7 @@ func (c *GlobalForwardingRulesListCall) Do(opts ...googleapi.CallOption) (*Forwa // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -35151,32 +36279,28 @@ func (r *GlobalOperationsService) AggregatedList(project string) *GlobalOperatio return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *GlobalOperationsAggregatedListCall) Filter(filter string) *GlobalOperationsAggregatedListCall { c.urlParams_.Set("filter", filter) return c @@ -35320,7 +36444,7 @@ func (c *GlobalOperationsAggregatedListCall) Do(opts ...googleapi.CallOption) (* // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -35666,32 +36790,28 @@ func (r *GlobalOperationsService) List(project string) *GlobalOperationsListCall return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *GlobalOperationsListCall) Filter(filter string) *GlobalOperationsListCall { c.urlParams_.Set("filter", filter) return c @@ -35835,7 +36955,7 @@ func (c *GlobalOperationsListCall) Do(opts ...googleapi.CallOption) (*OperationL // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -36390,32 +37510,28 @@ func (r *HealthChecksService) List(project string) *HealthChecksListCall { return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *HealthChecksListCall) Filter(filter string) *HealthChecksListCall { c.urlParams_.Set("filter", filter) return c @@ -36559,7 +37675,7 @@ func (c *HealthChecksListCall) Do(opts ...googleapi.CallOption) (*HealthCheckLis // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -37461,32 +38577,28 @@ func (r *HttpHealthChecksService) List(project string) *HttpHealthChecksListCall return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *HttpHealthChecksListCall) Filter(filter string) *HttpHealthChecksListCall { c.urlParams_.Set("filter", filter) return c @@ -37630,7 +38742,7 @@ func (c *HttpHealthChecksListCall) Do(opts ...googleapi.CallOption) (*HttpHealth // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -38530,32 +39642,28 @@ func (r *HttpsHealthChecksService) List(project string) *HttpsHealthChecksListCa return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *HttpsHealthChecksListCall) Filter(filter string) *HttpsHealthChecksListCall { c.urlParams_.Set("filter", filter) return c @@ -38699,7 +39807,7 @@ func (c *HttpsHealthChecksListCall) Do(opts ...googleapi.CallOption) (*HttpsHeal // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -39947,32 +41055,28 @@ func (r *ImagesService) List(project string) *ImagesListCall { return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *ImagesListCall) Filter(filter string) *ImagesListCall { c.urlParams_.Set("filter", filter) return c @@ -40116,7 +41220,7 @@ func (c *ImagesListCall) Do(opts ...googleapi.CallOption) (*ImageList, error) { // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -40541,32 +41645,28 @@ func (r *InstanceGroupManagersService) AggregatedList(project string) *InstanceG return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *InstanceGroupManagersAggregatedListCall) Filter(filter string) *InstanceGroupManagersAggregatedListCall { c.urlParams_.Set("filter", filter) return c @@ -40711,7 +41811,7 @@ func (c *InstanceGroupManagersAggregatedListCall) Do(opts ...googleapi.CallOptio // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -41502,32 +42602,28 @@ func (r *InstanceGroupManagersService) List(project string, zone string) *Instan return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *InstanceGroupManagersListCall) Filter(filter string) *InstanceGroupManagersListCall { c.urlParams_.Set("filter", filter) return c @@ -41673,7 +42769,7 @@ func (c *InstanceGroupManagersListCall) Do(opts ...googleapi.CallOption) (*Insta // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -42886,32 +43982,28 @@ func (r *InstanceGroupsService) AggregatedList(project string) *InstanceGroupsAg return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *InstanceGroupsAggregatedListCall) Filter(filter string) *InstanceGroupsAggregatedListCall { c.urlParams_.Set("filter", filter) return c @@ -43055,7 +44147,7 @@ func (c *InstanceGroupsAggregatedListCall) Do(opts ...googleapi.CallOption) (*In // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -43643,32 +44735,28 @@ func (r *InstanceGroupsService) List(project string, zone string) *InstanceGroup return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *InstanceGroupsListCall) Filter(filter string) *InstanceGroupsListCall { c.urlParams_.Set("filter", filter) return c @@ -43814,7 +44902,7 @@ func (c *InstanceGroupsListCall) Do(opts ...googleapi.CallOption) (*InstanceGrou // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -43907,32 +44995,28 @@ func (r *InstanceGroupsService) ListInstances(project string, zone string, insta return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *InstanceGroupsListInstancesCall) Filter(filter string) *InstanceGroupsListInstancesCall { c.urlParams_.Set("filter", filter) return c @@ -44072,7 +45156,7 @@ func (c *InstanceGroupsListInstancesCall) Do(opts ...googleapi.CallOption) (*Ins // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -45014,32 +46098,28 @@ func (r *InstanceTemplatesService) List(project string) *InstanceTemplatesListCa return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *InstanceTemplatesListCall) Filter(filter string) *InstanceTemplatesListCall { c.urlParams_.Set("filter", filter) return c @@ -45183,7 +46263,7 @@ func (c *InstanceTemplatesListCall) Do(opts ...googleapi.CallOption) (*InstanceT // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -45457,32 +46537,28 @@ func (r *InstancesService) AggregatedList(project string) *InstancesAggregatedLi return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *InstancesAggregatedListCall) Filter(filter string) *InstancesAggregatedListCall { c.urlParams_.Set("filter", filter) return c @@ -45626,7 +46702,7 @@ func (c *InstancesAggregatedListCall) Do(opts ...googleapi.CallOption) (*Instanc // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -46820,6 +47896,22 @@ func (c *InstancesInsertCall) RequestId(requestId string) *InstancesInsertCall { return c } +// SourceInstanceTemplate sets the optional parameter +// "sourceInstanceTemplate": Specifies instance template to create the +// instance. +// +// This field is optional. It can be a full or partial URL. For example, +// the following are all valid URLs to an instance template: +// - +// https://www.googleapis.com/compute/v1/projects/project/global/global/instanceTemplates/instanceTemplate +// - projects/project/global/global/instanceTemplates/instanceTemplate +// +// - global/instancesTemplates/instanceTemplate +func (c *InstancesInsertCall) SourceInstanceTemplate(sourceInstanceTemplate string) *InstancesInsertCall { + c.urlParams_.Set("sourceInstanceTemplate", sourceInstanceTemplate) + return c +} + // Fields allows partial responses to be retrieved. See // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse // for more information. @@ -46927,6 +48019,11 @@ func (c *InstancesInsertCall) Do(opts ...googleapi.CallOption) (*Operation, erro // "location": "query", // "type": "string" // }, + // "sourceInstanceTemplate": { + // "description": "Specifies instance template to create the instance.\n\nThis field is optional. It can be a full or partial URL. For example, the following are all valid URLs to an instance template: \n- https://www.googleapis.com/compute/v1/projects/project/global/global/instanceTemplates/instanceTemplate \n- projects/project/global/global/instanceTemplates/instanceTemplate \n- global/instancesTemplates/instanceTemplate", + // "location": "query", + // "type": "string" + // }, // "zone": { // "description": "The name of the zone for this request.", // "location": "path", @@ -46972,32 +48069,28 @@ func (r *InstancesService) List(project string, zone string) *InstancesListCall return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *InstancesListCall) Filter(filter string) *InstancesListCall { c.urlParams_.Set("filter", filter) return c @@ -47143,7 +48236,7 @@ func (c *InstancesListCall) Do(opts ...googleapi.CallOption) (*InstanceList, err // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -47214,6 +48307,276 @@ func (c *InstancesListCall) Pages(ctx context.Context, f func(*InstanceList) err } } +// method id "compute.instances.listReferrers": + +type InstancesListReferrersCall struct { + s *Service + project string + zone string + instance string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// ListReferrers: Retrieves the list of referrers to instances contained +// within the specified zone. +func (r *InstancesService) ListReferrers(project string, zone string, instance string) *InstancesListReferrersCall { + c := &InstancesListReferrersCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.project = project + c.zone = zone + c.instance = instance + return c +} + +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. +// +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. +// +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. +// +// To filter on multiple expressions, provide each separate expression +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). +func (c *InstancesListReferrersCall) Filter(filter string) *InstancesListReferrersCall { + c.urlParams_.Set("filter", filter) + return c +} + +// MaxResults sets the optional parameter "maxResults": The maximum +// number of results per page that should be returned. If the number of +// available results is larger than maxResults, Compute Engine returns a +// nextPageToken that can be used to get the next page of results in +// subsequent list requests. Acceptable values are 0 to 500, inclusive. +// (Default: 500) +func (c *InstancesListReferrersCall) MaxResults(maxResults int64) *InstancesListReferrersCall { + c.urlParams_.Set("maxResults", fmt.Sprint(maxResults)) + return c +} + +// OrderBy sets the optional parameter "orderBy": Sorts list results by +// a certain order. By default, results are returned in alphanumerical +// order based on the resource name. +// +// You can also sort results in descending order based on the creation +// timestamp using orderBy="creationTimestamp desc". This sorts results +// based on the creationTimestamp field in reverse chronological order +// (newest result first). Use this to sort resources like operations so +// that the newest operation is returned first. +// +// Currently, only sorting by name or creationTimestamp desc is +// supported. +func (c *InstancesListReferrersCall) OrderBy(orderBy string) *InstancesListReferrersCall { + c.urlParams_.Set("orderBy", orderBy) + return c +} + +// PageToken sets the optional parameter "pageToken": Specifies a page +// token to use. Set pageToken to the nextPageToken returned by a +// previous list request to get the next page of results. +func (c *InstancesListReferrersCall) PageToken(pageToken string) *InstancesListReferrersCall { + c.urlParams_.Set("pageToken", pageToken) + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *InstancesListReferrersCall) Fields(s ...googleapi.Field) *InstancesListReferrersCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// IfNoneMatch sets the optional parameter which makes the operation +// fail if the object's ETag matches the given value. This is useful for +// getting updates only after the object has changed since the last +// request. Use googleapi.IsNotModified to check whether the response +// error from Do is the result of In-None-Match. +func (c *InstancesListReferrersCall) IfNoneMatch(entityTag string) *InstancesListReferrersCall { + c.ifNoneMatch_ = entityTag + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *InstancesListReferrersCall) Context(ctx context.Context) *InstancesListReferrersCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *InstancesListReferrersCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *InstancesListReferrersCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + if c.ifNoneMatch_ != "" { + reqHeaders.Set("If-None-Match", c.ifNoneMatch_) + } + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "{project}/zones/{zone}/instances/{instance}/referrers") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("GET", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "project": c.project, + "zone": c.zone, + "instance": c.instance, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "compute.instances.listReferrers" call. +// Exactly one of *InstanceListReferrers or error will be non-nil. Any +// non-2xx status code is an error. Response headers are in either +// *InstanceListReferrers.ServerResponse.Header or (if a response was +// returned at all) in error.(*googleapi.Error).Header. Use +// googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *InstancesListReferrersCall) Do(opts ...googleapi.CallOption) (*InstanceListReferrers, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &InstanceListReferrers{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Retrieves the list of referrers to instances contained within the specified zone.", + // "httpMethod": "GET", + // "id": "compute.instances.listReferrers", + // "parameterOrder": [ + // "project", + // "zone", + // "instance" + // ], + // "parameters": { + // "filter": { + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + // "location": "query", + // "type": "string" + // }, + // "instance": { + // "description": "Name of the target instance scoping this request, or '-' if the request should span over all instances in the container.", + // "location": "path", + // "pattern": "-|[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + // "required": true, + // "type": "string" + // }, + // "maxResults": { + // "default": "500", + // "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + // "format": "uint32", + // "location": "query", + // "minimum": "0", + // "type": "integer" + // }, + // "orderBy": { + // "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + // "location": "query", + // "type": "string" + // }, + // "pageToken": { + // "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + // "location": "query", + // "type": "string" + // }, + // "project": { + // "description": "Project ID for this request.", + // "location": "path", + // "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + // "required": true, + // "type": "string" + // }, + // "zone": { + // "description": "The name of the zone for this request.", + // "location": "path", + // "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + // "required": true, + // "type": "string" + // } + // }, + // "path": "{project}/zones/{zone}/instances/{instance}/referrers", + // "response": { + // "$ref": "InstanceListReferrers" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform", + // "https://www.googleapis.com/auth/compute", + // "https://www.googleapis.com/auth/compute.readonly" + // ] + // } + +} + +// Pages invokes f for each page of results. +// A non-nil error returned from f will halt the iteration. +// The provided context supersedes any context provided to the Context method. +func (c *InstancesListReferrersCall) Pages(ctx context.Context, f func(*InstanceListReferrers) error) error { + c.ctx_ = ctx + defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point + for { + x, err := c.Do() + if err != nil { + return err + } + if err := f(x); err != nil { + return err + } + if x.NextPageToken == "" { + return nil + } + c.PageToken(x.NextPageToken) + } +} + // method id "compute.instances.reset": type InstancesResetCall struct { @@ -49756,6 +51119,388 @@ func (c *InstancesStopCall) Do(opts ...googleapi.CallOption) (*Operation, error) } +// method id "compute.instances.updateAccessConfig": + +type InstancesUpdateAccessConfigCall struct { + s *Service + project string + zone string + instance string + accessconfig *AccessConfig + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// UpdateAccessConfig: Updates the specified access config from an +// instance's network interface with the data included in the request. +// This method supports PATCH semantics and uses the JSON merge patch +// format and processing rules. +func (r *InstancesService) UpdateAccessConfig(project string, zone string, instance string, networkInterface string, accessconfig *AccessConfig) *InstancesUpdateAccessConfigCall { + c := &InstancesUpdateAccessConfigCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.project = project + c.zone = zone + c.instance = instance + c.urlParams_.Set("networkInterface", networkInterface) + c.accessconfig = accessconfig + return c +} + +// RequestId sets the optional parameter "requestId": An optional +// request ID to identify requests. Specify a unique request ID so that +// if you must retry your request, the server will know to ignore the +// request if it has already been completed. +// +// For example, consider a situation where you make an initial request +// and the request times out. If you make the request again with the +// same request ID, the server can check if original operation with the +// same request ID was received, and if so, will ignore the second +// request. This prevents clients from accidentally creating duplicate +// commitments. +// +// The request ID must be a valid UUID with the exception that zero UUID +// is not supported (00000000-0000-0000-0000-000000000000). +func (c *InstancesUpdateAccessConfigCall) RequestId(requestId string) *InstancesUpdateAccessConfigCall { + c.urlParams_.Set("requestId", requestId) + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *InstancesUpdateAccessConfigCall) Fields(s ...googleapi.Field) *InstancesUpdateAccessConfigCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *InstancesUpdateAccessConfigCall) Context(ctx context.Context) *InstancesUpdateAccessConfigCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *InstancesUpdateAccessConfigCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *InstancesUpdateAccessConfigCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.accessconfig) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "{project}/zones/{zone}/instances/{instance}/updateAccessConfig") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("POST", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "project": c.project, + "zone": c.zone, + "instance": c.instance, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "compute.instances.updateAccessConfig" call. +// Exactly one of *Operation or error will be non-nil. Any non-2xx +// status code is an error. Response headers are in either +// *Operation.ServerResponse.Header or (if a response was returned at +// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified +// to check whether the returned error was because +// http.StatusNotModified was returned. +func (c *InstancesUpdateAccessConfigCall) Do(opts ...googleapi.CallOption) (*Operation, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &Operation{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Updates the specified access config from an instance's network interface with the data included in the request. This method supports PATCH semantics and uses the JSON merge patch format and processing rules.", + // "httpMethod": "POST", + // "id": "compute.instances.updateAccessConfig", + // "parameterOrder": [ + // "project", + // "zone", + // "instance", + // "networkInterface" + // ], + // "parameters": { + // "instance": { + // "description": "The instance name for this request.", + // "location": "path", + // "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + // "required": true, + // "type": "string" + // }, + // "networkInterface": { + // "description": "The name of the network interface where the access config is attached.", + // "location": "query", + // "required": true, + // "type": "string" + // }, + // "project": { + // "description": "Project ID for this request.", + // "location": "path", + // "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + // "required": true, + // "type": "string" + // }, + // "requestId": { + // "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + // "location": "query", + // "type": "string" + // }, + // "zone": { + // "description": "The name of the zone for this request.", + // "location": "path", + // "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + // "required": true, + // "type": "string" + // } + // }, + // "path": "{project}/zones/{zone}/instances/{instance}/updateAccessConfig", + // "request": { + // "$ref": "AccessConfig" + // }, + // "response": { + // "$ref": "Operation" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform", + // "https://www.googleapis.com/auth/compute" + // ] + // } + +} + +// method id "compute.instances.updateNetworkInterface": + +type InstancesUpdateNetworkInterfaceCall struct { + s *Service + project string + zone string + instance string + networkinterface *NetworkInterface + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// UpdateNetworkInterface: Updates an instance's network interface. This +// method follows PATCH semantics. +func (r *InstancesService) UpdateNetworkInterface(project string, zone string, instance string, networkInterface string, networkinterface *NetworkInterface) *InstancesUpdateNetworkInterfaceCall { + c := &InstancesUpdateNetworkInterfaceCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.project = project + c.zone = zone + c.instance = instance + c.urlParams_.Set("networkInterface", networkInterface) + c.networkinterface = networkinterface + return c +} + +// RequestId sets the optional parameter "requestId": An optional +// request ID to identify requests. Specify a unique request ID so that +// if you must retry your request, the server will know to ignore the +// request if it has already been completed. +// +// For example, consider a situation where you make an initial request +// and the request times out. If you make the request again with the +// same request ID, the server can check if original operation with the +// same request ID was received, and if so, will ignore the second +// request. This prevents clients from accidentally creating duplicate +// commitments. +// +// The request ID must be a valid UUID with the exception that zero UUID +// is not supported (00000000-0000-0000-0000-000000000000). +func (c *InstancesUpdateNetworkInterfaceCall) RequestId(requestId string) *InstancesUpdateNetworkInterfaceCall { + c.urlParams_.Set("requestId", requestId) + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *InstancesUpdateNetworkInterfaceCall) Fields(s ...googleapi.Field) *InstancesUpdateNetworkInterfaceCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *InstancesUpdateNetworkInterfaceCall) Context(ctx context.Context) *InstancesUpdateNetworkInterfaceCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *InstancesUpdateNetworkInterfaceCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *InstancesUpdateNetworkInterfaceCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.networkinterface) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "{project}/zones/{zone}/instances/{instance}/updateNetworkInterface") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("PATCH", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "project": c.project, + "zone": c.zone, + "instance": c.instance, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "compute.instances.updateNetworkInterface" call. +// Exactly one of *Operation or error will be non-nil. Any non-2xx +// status code is an error. Response headers are in either +// *Operation.ServerResponse.Header or (if a response was returned at +// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified +// to check whether the returned error was because +// http.StatusNotModified was returned. +func (c *InstancesUpdateNetworkInterfaceCall) Do(opts ...googleapi.CallOption) (*Operation, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &Operation{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Updates an instance's network interface. This method follows PATCH semantics.", + // "httpMethod": "PATCH", + // "id": "compute.instances.updateNetworkInterface", + // "parameterOrder": [ + // "project", + // "zone", + // "instance", + // "networkInterface" + // ], + // "parameters": { + // "instance": { + // "description": "The instance name for this request.", + // "location": "path", + // "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + // "required": true, + // "type": "string" + // }, + // "networkInterface": { + // "description": "The name of the network interface to update.", + // "location": "query", + // "required": true, + // "type": "string" + // }, + // "project": { + // "description": "Project ID for this request.", + // "location": "path", + // "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + // "required": true, + // "type": "string" + // }, + // "requestId": { + // "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + // "location": "query", + // "type": "string" + // }, + // "zone": { + // "description": "The name of the zone for this request.", + // "location": "path", + // "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + // "required": true, + // "type": "string" + // } + // }, + // "path": "{project}/zones/{zone}/instances/{instance}/updateNetworkInterface", + // "request": { + // "$ref": "NetworkInterface" + // }, + // "response": { + // "$ref": "Operation" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform", + // "https://www.googleapis.com/auth/compute" + // ] + // } + +} + // method id "compute.interconnectAttachments.aggregatedList": type InterconnectAttachmentsAggregatedListCall struct { @@ -49775,32 +51520,28 @@ func (r *InterconnectAttachmentsService) AggregatedList(project string) *Interco return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *InterconnectAttachmentsAggregatedListCall) Filter(filter string) *InterconnectAttachmentsAggregatedListCall { c.urlParams_.Set("filter", filter) return c @@ -49945,7 +51686,7 @@ func (c *InterconnectAttachmentsAggregatedListCall) Do(opts ...googleapi.CallOpt // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -50534,32 +52275,28 @@ func (r *InterconnectAttachmentsService) List(project string, region string) *In return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *InterconnectAttachmentsListCall) Filter(filter string) *InterconnectAttachmentsListCall { c.urlParams_.Set("filter", filter) return c @@ -50705,7 +52442,7 @@ func (c *InterconnectAttachmentsListCall) Do(opts ...googleapi.CallOption) (*Int // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -50948,32 +52685,28 @@ func (r *InterconnectLocationsService) List(project string) *InterconnectLocatio return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *InterconnectLocationsListCall) Filter(filter string) *InterconnectLocationsListCall { c.urlParams_.Set("filter", filter) return c @@ -51117,7 +52850,7 @@ func (c *InterconnectLocationsListCall) Do(opts ...googleapi.CallOption) (*Inter // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -51672,32 +53405,28 @@ func (r *InterconnectsService) List(project string) *InterconnectsListCall { return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *InterconnectsListCall) Filter(filter string) *InterconnectsListCall { c.urlParams_.Set("filter", filter) return c @@ -51841,7 +53570,7 @@ func (c *InterconnectsListCall) Do(opts ...googleapi.CallOption) (*InterconnectL // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -52077,6 +53806,466 @@ func (c *InterconnectsPatchCall) Do(opts ...googleapi.CallOption) (*Operation, e } +// method id "compute.licenseCodes.get": + +type LicenseCodesGetCall struct { + s *Service + project string + licenseCode string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// Get: Return a specified license code. License codes are mirrored +// across all projects that have permissions to read the License Code. +func (r *LicenseCodesService) Get(project string, licenseCode string) *LicenseCodesGetCall { + c := &LicenseCodesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.project = project + c.licenseCode = licenseCode + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *LicenseCodesGetCall) Fields(s ...googleapi.Field) *LicenseCodesGetCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// IfNoneMatch sets the optional parameter which makes the operation +// fail if the object's ETag matches the given value. This is useful for +// getting updates only after the object has changed since the last +// request. Use googleapi.IsNotModified to check whether the response +// error from Do is the result of In-None-Match. +func (c *LicenseCodesGetCall) IfNoneMatch(entityTag string) *LicenseCodesGetCall { + c.ifNoneMatch_ = entityTag + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *LicenseCodesGetCall) Context(ctx context.Context) *LicenseCodesGetCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *LicenseCodesGetCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *LicenseCodesGetCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + if c.ifNoneMatch_ != "" { + reqHeaders.Set("If-None-Match", c.ifNoneMatch_) + } + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "{project}/global/licenseCodes/{licenseCode}") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("GET", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "project": c.project, + "licenseCode": c.licenseCode, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "compute.licenseCodes.get" call. +// Exactly one of *LicenseCode or error will be non-nil. Any non-2xx +// status code is an error. Response headers are in either +// *LicenseCode.ServerResponse.Header or (if a response was returned at +// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified +// to check whether the returned error was because +// http.StatusNotModified was returned. +func (c *LicenseCodesGetCall) Do(opts ...googleapi.CallOption) (*LicenseCode, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &LicenseCode{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Return a specified license code. License codes are mirrored across all projects that have permissions to read the License Code.", + // "httpMethod": "GET", + // "id": "compute.licenseCodes.get", + // "parameterOrder": [ + // "project", + // "licenseCode" + // ], + // "parameters": { + // "licenseCode": { + // "description": "Number corresponding to the License code resource to return.", + // "location": "path", + // "pattern": "[0-9]{0,61}?", + // "required": true, + // "type": "string" + // }, + // "project": { + // "description": "Project ID for this request.", + // "location": "path", + // "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + // "required": true, + // "type": "string" + // } + // }, + // "path": "{project}/global/licenseCodes/{licenseCode}", + // "response": { + // "$ref": "LicenseCode" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform", + // "https://www.googleapis.com/auth/compute", + // "https://www.googleapis.com/auth/compute.readonly" + // ] + // } + +} + +// method id "compute.licenseCodes.testIamPermissions": + +type LicenseCodesTestIamPermissionsCall struct { + s *Service + project string + resource string + testpermissionsrequest *TestPermissionsRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// TestIamPermissions: Returns permissions that a caller has on the +// specified resource. +func (r *LicenseCodesService) TestIamPermissions(project string, resource string, testpermissionsrequest *TestPermissionsRequest) *LicenseCodesTestIamPermissionsCall { + c := &LicenseCodesTestIamPermissionsCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.project = project + c.resource = resource + c.testpermissionsrequest = testpermissionsrequest + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *LicenseCodesTestIamPermissionsCall) Fields(s ...googleapi.Field) *LicenseCodesTestIamPermissionsCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *LicenseCodesTestIamPermissionsCall) Context(ctx context.Context) *LicenseCodesTestIamPermissionsCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *LicenseCodesTestIamPermissionsCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *LicenseCodesTestIamPermissionsCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.testpermissionsrequest) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "{project}/global/licenseCodes/{resource}/testIamPermissions") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("POST", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "project": c.project, + "resource": c.resource, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "compute.licenseCodes.testIamPermissions" call. +// Exactly one of *TestPermissionsResponse or error will be non-nil. Any +// non-2xx status code is an error. Response headers are in either +// *TestPermissionsResponse.ServerResponse.Header or (if a response was +// returned at all) in error.(*googleapi.Error).Header. Use +// googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *LicenseCodesTestIamPermissionsCall) Do(opts ...googleapi.CallOption) (*TestPermissionsResponse, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &TestPermissionsResponse{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Returns permissions that a caller has on the specified resource.", + // "httpMethod": "POST", + // "id": "compute.licenseCodes.testIamPermissions", + // "parameterOrder": [ + // "project", + // "resource" + // ], + // "parameters": { + // "project": { + // "description": "Project ID for this request.", + // "location": "path", + // "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + // "required": true, + // "type": "string" + // }, + // "resource": { + // "description": "Name of the resource for this request.", + // "location": "path", + // "pattern": "(?:[-a-z0-9_]{0,62}[a-z0-9])?", + // "required": true, + // "type": "string" + // } + // }, + // "path": "{project}/global/licenseCodes/{resource}/testIamPermissions", + // "request": { + // "$ref": "TestPermissionsRequest" + // }, + // "response": { + // "$ref": "TestPermissionsResponse" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform", + // "https://www.googleapis.com/auth/compute", + // "https://www.googleapis.com/auth/compute.readonly" + // ] + // } + +} + +// method id "compute.licenses.delete": + +type LicensesDeleteCall struct { + s *Service + project string + license string + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Delete: Deletes the specified license. +func (r *LicensesService) Delete(project string, license string) *LicensesDeleteCall { + c := &LicensesDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.project = project + c.license = license + return c +} + +// RequestId sets the optional parameter "requestId": An optional +// request ID to identify requests. Specify a unique request ID so that +// if you must retry your request, the server will know to ignore the +// request if it has already been completed. +// +// For example, consider a situation where you make an initial request +// and the request times out. If you make the request again with the +// same request ID, the server can check if original operation with the +// same request ID was received, and if so, will ignore the second +// request. This prevents clients from accidentally creating duplicate +// commitments. +// +// The request ID must be a valid UUID with the exception that zero UUID +// is not supported (00000000-0000-0000-0000-000000000000). +func (c *LicensesDeleteCall) RequestId(requestId string) *LicensesDeleteCall { + c.urlParams_.Set("requestId", requestId) + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *LicensesDeleteCall) Fields(s ...googleapi.Field) *LicensesDeleteCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *LicensesDeleteCall) Context(ctx context.Context) *LicensesDeleteCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *LicensesDeleteCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *LicensesDeleteCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "{project}/global/licenses/{license}") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("DELETE", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "project": c.project, + "license": c.license, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "compute.licenses.delete" call. +// Exactly one of *Operation or error will be non-nil. Any non-2xx +// status code is an error. Response headers are in either +// *Operation.ServerResponse.Header or (if a response was returned at +// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified +// to check whether the returned error was because +// http.StatusNotModified was returned. +func (c *LicensesDeleteCall) Do(opts ...googleapi.CallOption) (*Operation, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &Operation{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Deletes the specified license.", + // "httpMethod": "DELETE", + // "id": "compute.licenses.delete", + // "parameterOrder": [ + // "project", + // "license" + // ], + // "parameters": { + // "license": { + // "description": "Name of the license resource to delete.", + // "location": "path", + // "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + // "required": true, + // "type": "string" + // }, + // "project": { + // "description": "Project ID for this request.", + // "location": "path", + // "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + // "required": true, + // "type": "string" + // }, + // "requestId": { + // "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + // "location": "query", + // "type": "string" + // } + // }, + // "path": "{project}/global/licenses/{license}", + // "response": { + // "$ref": "Operation" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform", + // "https://www.googleapis.com/auth/compute" + // ] + // } + +} + // method id "compute.licenses.get": type LicensesGetCall struct { @@ -52229,6 +54418,568 @@ func (c *LicensesGetCall) Do(opts ...googleapi.CallOption) (*License, error) { } +// method id "compute.licenses.insert": + +type LicensesInsertCall struct { + s *Service + project string + license *License + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Insert: Create a License resource in the specified project. +func (r *LicensesService) Insert(project string, license *License) *LicensesInsertCall { + c := &LicensesInsertCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.project = project + c.license = license + return c +} + +// RequestId sets the optional parameter "requestId": An optional +// request ID to identify requests. Specify a unique request ID so that +// if you must retry your request, the server will know to ignore the +// request if it has already been completed. +// +// For example, consider a situation where you make an initial request +// and the request times out. If you make the request again with the +// same request ID, the server can check if original operation with the +// same request ID was received, and if so, will ignore the second +// request. This prevents clients from accidentally creating duplicate +// commitments. +// +// The request ID must be a valid UUID with the exception that zero UUID +// is not supported (00000000-0000-0000-0000-000000000000). +func (c *LicensesInsertCall) RequestId(requestId string) *LicensesInsertCall { + c.urlParams_.Set("requestId", requestId) + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *LicensesInsertCall) Fields(s ...googleapi.Field) *LicensesInsertCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *LicensesInsertCall) Context(ctx context.Context) *LicensesInsertCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *LicensesInsertCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *LicensesInsertCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.license) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "{project}/global/licenses") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("POST", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "project": c.project, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "compute.licenses.insert" call. +// Exactly one of *Operation or error will be non-nil. Any non-2xx +// status code is an error. Response headers are in either +// *Operation.ServerResponse.Header or (if a response was returned at +// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified +// to check whether the returned error was because +// http.StatusNotModified was returned. +func (c *LicensesInsertCall) Do(opts ...googleapi.CallOption) (*Operation, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &Operation{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Create a License resource in the specified project.", + // "httpMethod": "POST", + // "id": "compute.licenses.insert", + // "parameterOrder": [ + // "project" + // ], + // "parameters": { + // "project": { + // "description": "Project ID for this request.", + // "location": "path", + // "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + // "required": true, + // "type": "string" + // }, + // "requestId": { + // "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + // "location": "query", + // "type": "string" + // } + // }, + // "path": "{project}/global/licenses", + // "request": { + // "$ref": "License" + // }, + // "response": { + // "$ref": "Operation" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform", + // "https://www.googleapis.com/auth/compute", + // "https://www.googleapis.com/auth/devstorage.full_control", + // "https://www.googleapis.com/auth/devstorage.read_only", + // "https://www.googleapis.com/auth/devstorage.read_write" + // ] + // } + +} + +// method id "compute.licenses.list": + +type LicensesListCall struct { + s *Service + project string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// List: Retrieves the list of licenses available in the specified +// project. This method does not get any licenses that belong to other +// projects, including licenses attached to publicly-available images, +// like Debian 8. If you want to get a list of publicly-available +// licenses, use this method to make a request to the respective image +// project, such as debian-cloud or windows-cloud. +func (r *LicensesService) List(project string) *LicensesListCall { + c := &LicensesListCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.project = project + return c +} + +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. +// +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. +// +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. +// +// To filter on multiple expressions, provide each separate expression +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). +func (c *LicensesListCall) Filter(filter string) *LicensesListCall { + c.urlParams_.Set("filter", filter) + return c +} + +// MaxResults sets the optional parameter "maxResults": The maximum +// number of results per page that should be returned. If the number of +// available results is larger than maxResults, Compute Engine returns a +// nextPageToken that can be used to get the next page of results in +// subsequent list requests. Acceptable values are 0 to 500, inclusive. +// (Default: 500) +func (c *LicensesListCall) MaxResults(maxResults int64) *LicensesListCall { + c.urlParams_.Set("maxResults", fmt.Sprint(maxResults)) + return c +} + +// OrderBy sets the optional parameter "orderBy": Sorts list results by +// a certain order. By default, results are returned in alphanumerical +// order based on the resource name. +// +// You can also sort results in descending order based on the creation +// timestamp using orderBy="creationTimestamp desc". This sorts results +// based on the creationTimestamp field in reverse chronological order +// (newest result first). Use this to sort resources like operations so +// that the newest operation is returned first. +// +// Currently, only sorting by name or creationTimestamp desc is +// supported. +func (c *LicensesListCall) OrderBy(orderBy string) *LicensesListCall { + c.urlParams_.Set("orderBy", orderBy) + return c +} + +// PageToken sets the optional parameter "pageToken": Specifies a page +// token to use. Set pageToken to the nextPageToken returned by a +// previous list request to get the next page of results. +func (c *LicensesListCall) PageToken(pageToken string) *LicensesListCall { + c.urlParams_.Set("pageToken", pageToken) + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *LicensesListCall) Fields(s ...googleapi.Field) *LicensesListCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// IfNoneMatch sets the optional parameter which makes the operation +// fail if the object's ETag matches the given value. This is useful for +// getting updates only after the object has changed since the last +// request. Use googleapi.IsNotModified to check whether the response +// error from Do is the result of In-None-Match. +func (c *LicensesListCall) IfNoneMatch(entityTag string) *LicensesListCall { + c.ifNoneMatch_ = entityTag + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *LicensesListCall) Context(ctx context.Context) *LicensesListCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *LicensesListCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *LicensesListCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + if c.ifNoneMatch_ != "" { + reqHeaders.Set("If-None-Match", c.ifNoneMatch_) + } + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "{project}/global/licenses") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("GET", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "project": c.project, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "compute.licenses.list" call. +// Exactly one of *LicensesListResponse or error will be non-nil. Any +// non-2xx status code is an error. Response headers are in either +// *LicensesListResponse.ServerResponse.Header or (if a response was +// returned at all) in error.(*googleapi.Error).Header. Use +// googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *LicensesListCall) Do(opts ...googleapi.CallOption) (*LicensesListResponse, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &LicensesListResponse{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Retrieves the list of licenses available in the specified project. This method does not get any licenses that belong to other projects, including licenses attached to publicly-available images, like Debian 8. If you want to get a list of publicly-available licenses, use this method to make a request to the respective image project, such as debian-cloud or windows-cloud.", + // "httpMethod": "GET", + // "id": "compute.licenses.list", + // "parameterOrder": [ + // "project" + // ], + // "parameters": { + // "filter": { + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + // "location": "query", + // "type": "string" + // }, + // "maxResults": { + // "default": "500", + // "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + // "format": "uint32", + // "location": "query", + // "minimum": "0", + // "type": "integer" + // }, + // "orderBy": { + // "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + // "location": "query", + // "type": "string" + // }, + // "pageToken": { + // "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + // "location": "query", + // "type": "string" + // }, + // "project": { + // "description": "Project ID for this request.", + // "location": "path", + // "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + // "required": true, + // "type": "string" + // } + // }, + // "path": "{project}/global/licenses", + // "response": { + // "$ref": "LicensesListResponse" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform", + // "https://www.googleapis.com/auth/compute", + // "https://www.googleapis.com/auth/compute.readonly" + // ] + // } + +} + +// Pages invokes f for each page of results. +// A non-nil error returned from f will halt the iteration. +// The provided context supersedes any context provided to the Context method. +func (c *LicensesListCall) Pages(ctx context.Context, f func(*LicensesListResponse) error) error { + c.ctx_ = ctx + defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point + for { + x, err := c.Do() + if err != nil { + return err + } + if err := f(x); err != nil { + return err + } + if x.NextPageToken == "" { + return nil + } + c.PageToken(x.NextPageToken) + } +} + +// method id "compute.licenses.testIamPermissions": + +type LicensesTestIamPermissionsCall struct { + s *Service + project string + resource string + testpermissionsrequest *TestPermissionsRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// TestIamPermissions: Returns permissions that a caller has on the +// specified resource. +func (r *LicensesService) TestIamPermissions(project string, resource string, testpermissionsrequest *TestPermissionsRequest) *LicensesTestIamPermissionsCall { + c := &LicensesTestIamPermissionsCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.project = project + c.resource = resource + c.testpermissionsrequest = testpermissionsrequest + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *LicensesTestIamPermissionsCall) Fields(s ...googleapi.Field) *LicensesTestIamPermissionsCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *LicensesTestIamPermissionsCall) Context(ctx context.Context) *LicensesTestIamPermissionsCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *LicensesTestIamPermissionsCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *LicensesTestIamPermissionsCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.testpermissionsrequest) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "{project}/global/licenses/{resource}/testIamPermissions") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("POST", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "project": c.project, + "resource": c.resource, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "compute.licenses.testIamPermissions" call. +// Exactly one of *TestPermissionsResponse or error will be non-nil. Any +// non-2xx status code is an error. Response headers are in either +// *TestPermissionsResponse.ServerResponse.Header or (if a response was +// returned at all) in error.(*googleapi.Error).Header. Use +// googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *LicensesTestIamPermissionsCall) Do(opts ...googleapi.CallOption) (*TestPermissionsResponse, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &TestPermissionsResponse{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Returns permissions that a caller has on the specified resource.", + // "httpMethod": "POST", + // "id": "compute.licenses.testIamPermissions", + // "parameterOrder": [ + // "project", + // "resource" + // ], + // "parameters": { + // "project": { + // "description": "Project ID for this request.", + // "location": "path", + // "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + // "required": true, + // "type": "string" + // }, + // "resource": { + // "description": "Name of the resource for this request.", + // "location": "path", + // "pattern": "(?:[-a-z0-9_]{0,62}[a-z0-9])?", + // "required": true, + // "type": "string" + // } + // }, + // "path": "{project}/global/licenses/{resource}/testIamPermissions", + // "request": { + // "$ref": "TestPermissionsRequest" + // }, + // "response": { + // "$ref": "TestPermissionsResponse" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform", + // "https://www.googleapis.com/auth/compute", + // "https://www.googleapis.com/auth/compute.readonly" + // ] + // } + +} + // method id "compute.machineTypes.aggregatedList": type MachineTypesAggregatedListCall struct { @@ -52248,32 +54999,28 @@ func (r *MachineTypesService) AggregatedList(project string) *MachineTypesAggreg return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *MachineTypesAggregatedListCall) Filter(filter string) *MachineTypesAggregatedListCall { c.urlParams_.Set("filter", filter) return c @@ -52417,7 +55164,7 @@ func (c *MachineTypesAggregatedListCall) Do(opts ...googleapi.CallOption) (*Mach // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -52667,32 +55414,28 @@ func (r *MachineTypesService) List(project string, zone string) *MachineTypesLis return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *MachineTypesListCall) Filter(filter string) *MachineTypesListCall { c.urlParams_.Set("filter", filter) return c @@ -52838,7 +55581,7 @@ func (c *MachineTypesListCall) Do(opts ...googleapi.CallOption) (*MachineTypeLis // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -53574,32 +56317,28 @@ func (r *NetworksService) List(project string) *NetworksListCall { return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *NetworksListCall) Filter(filter string) *NetworksListCall { c.urlParams_.Set("filter", filter) return c @@ -53743,7 +56482,7 @@ func (c *NetworksListCall) Do(opts ...googleapi.CallOption) (*NetworkList, error // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -56785,32 +59524,28 @@ func (r *RegionAutoscalersService) List(project string, region string) *RegionAu return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *RegionAutoscalersListCall) Filter(filter string) *RegionAutoscalersListCall { c.urlParams_.Set("filter", filter) return c @@ -56956,7 +59691,7 @@ func (c *RegionAutoscalersListCall) Do(opts ...googleapi.CallOption) (*RegionAut // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -57851,7 +60586,7 @@ func (c *RegionBackendServicesGetHealthCall) Do(opts ...googleapi.CallOption) (* // ], // "parameters": { // "backendService": { - // "description": "Name of the BackendService resource to which the queried instance belongs.", + // "description": "Name of the BackendService resource for which to get health.", // "location": "path", // "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", // "required": true, @@ -58082,32 +60817,28 @@ func (r *RegionBackendServicesService) List(project string, region string) *Regi return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *RegionBackendServicesListCall) Filter(filter string) *RegionBackendServicesListCall { c.urlParams_.Set("filter", filter) return c @@ -58253,7 +60984,7 @@ func (c *RegionBackendServicesListCall) Do(opts ...googleapi.CallOption) (*Backe // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -58712,32 +61443,28 @@ func (r *RegionCommitmentsService) AggregatedList(project string) *RegionCommitm return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *RegionCommitmentsAggregatedListCall) Filter(filter string) *RegionCommitmentsAggregatedListCall { c.urlParams_.Set("filter", filter) return c @@ -58881,7 +61608,7 @@ func (c *RegionCommitmentsAggregatedListCall) Do(opts ...googleapi.CallOption) ( // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -59300,32 +62027,28 @@ func (r *RegionCommitmentsService) List(project string, region string) *RegionCo return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *RegionCommitmentsListCall) Filter(filter string) *RegionCommitmentsListCall { c.urlParams_.Set("filter", filter) return c @@ -59471,7 +62194,7 @@ func (c *RegionCommitmentsListCall) Do(opts ...googleapi.CallOption) (*Commitmen // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -60460,32 +63183,28 @@ func (r *RegionInstanceGroupManagersService) List(project string, region string) return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *RegionInstanceGroupManagersListCall) Filter(filter string) *RegionInstanceGroupManagersListCall { c.urlParams_.Set("filter", filter) return c @@ -60631,7 +63350,7 @@ func (c *RegionInstanceGroupManagersListCall) Do(opts ...googleapi.CallOption) ( // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -61821,32 +64540,28 @@ func (r *RegionInstanceGroupsService) List(project string, region string) *Regio return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *RegionInstanceGroupsListCall) Filter(filter string) *RegionInstanceGroupsListCall { c.urlParams_.Set("filter", filter) return c @@ -61992,7 +64707,7 @@ func (c *RegionInstanceGroupsListCall) Do(opts ...googleapi.CallOption) (*Region // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -62088,32 +64803,28 @@ func (r *RegionInstanceGroupsService) ListInstances(project string, region strin return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *RegionInstanceGroupsListInstancesCall) Filter(filter string) *RegionInstanceGroupsListInstancesCall { c.urlParams_.Set("filter", filter) return c @@ -62254,7 +64965,7 @@ func (c *RegionInstanceGroupsListInstancesCall) Do(opts ...googleapi.CallOption) // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -62818,32 +65529,28 @@ func (r *RegionOperationsService) List(project string, region string) *RegionOpe return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *RegionOperationsListCall) Filter(filter string) *RegionOperationsListCall { c.urlParams_.Set("filter", filter) return c @@ -62989,7 +65696,7 @@ func (c *RegionOperationsListCall) Do(opts ...googleapi.CallOption) (*OperationL // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -63233,32 +65940,28 @@ func (r *RegionsService) List(project string) *RegionsListCall { return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *RegionsListCall) Filter(filter string) *RegionsListCall { c.urlParams_.Set("filter", filter) return c @@ -63402,7 +66105,7 @@ func (c *RegionsListCall) Do(opts ...googleapi.CallOption) (*RegionList, error) // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -63484,32 +66187,28 @@ func (r *RoutersService) AggregatedList(project string) *RoutersAggregatedListCa return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *RoutersAggregatedListCall) Filter(filter string) *RoutersAggregatedListCall { c.urlParams_.Set("filter", filter) return c @@ -63653,7 +66352,7 @@ func (c *RoutersAggregatedListCall) Do(opts ...googleapi.CallOption) (*RouterAgg // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -64406,32 +67105,28 @@ func (r *RoutersService) List(project string, region string) *RoutersListCall { return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *RoutersListCall) Filter(filter string) *RoutersListCall { c.urlParams_.Set("filter", filter) return c @@ -64577,7 +67272,7 @@ func (c *RoutersListCall) Do(opts ...googleapi.CallOption) (*RouterList, error) // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -65668,32 +68363,28 @@ func (r *RoutesService) List(project string) *RoutesListCall { return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *RoutesListCall) Filter(filter string) *RoutesListCall { c.urlParams_.Set("filter", filter) return c @@ -65837,7 +68528,7 @@ func (c *RoutesListCall) Do(opts ...googleapi.CallOption) (*RouteList, error) { // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -66241,32 +68932,28 @@ func (r *SnapshotsService) List(project string) *SnapshotsListCall { return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *SnapshotsListCall) Filter(filter string) *SnapshotsListCall { c.urlParams_.Set("filter", filter) return c @@ -66410,7 +69097,7 @@ func (c *SnapshotsListCall) Do(opts ...googleapi.CallOption) (*SnapshotList, err // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -67112,32 +69799,28 @@ func (r *SslCertificatesService) List(project string) *SslCertificatesListCall { return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *SslCertificatesListCall) Filter(filter string) *SslCertificatesListCall { c.urlParams_.Set("filter", filter) return c @@ -67281,7 +69964,7 @@ func (c *SslCertificatesListCall) Do(opts ...googleapi.CallOption) (*SslCertific // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -67345,6 +70028,1125 @@ func (c *SslCertificatesListCall) Pages(ctx context.Context, f func(*SslCertific } } +// method id "compute.sslPolicies.delete": + +type SslPoliciesDeleteCall struct { + s *Service + project string + sslPolicy string + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Delete: Deletes the specified SSL policy. The SSL policy resource can +// be deleted only if it is not in use by any TargetHttpsProxy or +// TargetSslProxy resources. +func (r *SslPoliciesService) Delete(project string, sslPolicy string) *SslPoliciesDeleteCall { + c := &SslPoliciesDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.project = project + c.sslPolicy = sslPolicy + return c +} + +// RequestId sets the optional parameter "requestId": An optional +// request ID to identify requests. Specify a unique request ID so that +// if you must retry your request, the server will know to ignore the +// request if it has already been completed. +// +// For example, consider a situation where you make an initial request +// and the request times out. If you make the request again with the +// same request ID, the server can check if original operation with the +// same request ID was received, and if so, will ignore the second +// request. This prevents clients from accidentally creating duplicate +// commitments. +// +// The request ID must be a valid UUID with the exception that zero UUID +// is not supported (00000000-0000-0000-0000-000000000000). +func (c *SslPoliciesDeleteCall) RequestId(requestId string) *SslPoliciesDeleteCall { + c.urlParams_.Set("requestId", requestId) + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *SslPoliciesDeleteCall) Fields(s ...googleapi.Field) *SslPoliciesDeleteCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *SslPoliciesDeleteCall) Context(ctx context.Context) *SslPoliciesDeleteCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *SslPoliciesDeleteCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *SslPoliciesDeleteCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "{project}/global/sslPolicies/{sslPolicy}") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("DELETE", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "project": c.project, + "sslPolicy": c.sslPolicy, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "compute.sslPolicies.delete" call. +// Exactly one of *Operation or error will be non-nil. Any non-2xx +// status code is an error. Response headers are in either +// *Operation.ServerResponse.Header or (if a response was returned at +// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified +// to check whether the returned error was because +// http.StatusNotModified was returned. +func (c *SslPoliciesDeleteCall) Do(opts ...googleapi.CallOption) (*Operation, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &Operation{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Deletes the specified SSL policy. The SSL policy resource can be deleted only if it is not in use by any TargetHttpsProxy or TargetSslProxy resources.", + // "httpMethod": "DELETE", + // "id": "compute.sslPolicies.delete", + // "parameterOrder": [ + // "project", + // "sslPolicy" + // ], + // "parameters": { + // "project": { + // "description": "Project ID for this request.", + // "location": "path", + // "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + // "required": true, + // "type": "string" + // }, + // "requestId": { + // "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + // "location": "query", + // "type": "string" + // }, + // "sslPolicy": { + // "description": "Name of the SSL policy to delete. The name must be 1-63 characters long, and comply with RFC1035.", + // "location": "path", + // "required": true, + // "type": "string" + // } + // }, + // "path": "{project}/global/sslPolicies/{sslPolicy}", + // "response": { + // "$ref": "Operation" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform", + // "https://www.googleapis.com/auth/compute" + // ] + // } + +} + +// method id "compute.sslPolicies.get": + +type SslPoliciesGetCall struct { + s *Service + project string + sslPolicy string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// Get: List all of the ordered rules present in a single specified +// policy. +func (r *SslPoliciesService) Get(project string, sslPolicy string) *SslPoliciesGetCall { + c := &SslPoliciesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.project = project + c.sslPolicy = sslPolicy + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *SslPoliciesGetCall) Fields(s ...googleapi.Field) *SslPoliciesGetCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// IfNoneMatch sets the optional parameter which makes the operation +// fail if the object's ETag matches the given value. This is useful for +// getting updates only after the object has changed since the last +// request. Use googleapi.IsNotModified to check whether the response +// error from Do is the result of In-None-Match. +func (c *SslPoliciesGetCall) IfNoneMatch(entityTag string) *SslPoliciesGetCall { + c.ifNoneMatch_ = entityTag + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *SslPoliciesGetCall) Context(ctx context.Context) *SslPoliciesGetCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *SslPoliciesGetCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *SslPoliciesGetCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + if c.ifNoneMatch_ != "" { + reqHeaders.Set("If-None-Match", c.ifNoneMatch_) + } + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "{project}/global/sslPolicies/{sslPolicy}") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("GET", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "project": c.project, + "sslPolicy": c.sslPolicy, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "compute.sslPolicies.get" call. +// Exactly one of *SslPolicy or error will be non-nil. Any non-2xx +// status code is an error. Response headers are in either +// *SslPolicy.ServerResponse.Header or (if a response was returned at +// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified +// to check whether the returned error was because +// http.StatusNotModified was returned. +func (c *SslPoliciesGetCall) Do(opts ...googleapi.CallOption) (*SslPolicy, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &SslPolicy{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "List all of the ordered rules present in a single specified policy.", + // "httpMethod": "GET", + // "id": "compute.sslPolicies.get", + // "parameterOrder": [ + // "project", + // "sslPolicy" + // ], + // "parameters": { + // "project": { + // "description": "Project ID for this request.", + // "location": "path", + // "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + // "required": true, + // "type": "string" + // }, + // "sslPolicy": { + // "description": "Name of the SSL policy to update. The name must be 1-63 characters long, and comply with RFC1035.", + // "location": "path", + // "required": true, + // "type": "string" + // } + // }, + // "path": "{project}/global/sslPolicies/{sslPolicy}", + // "response": { + // "$ref": "SslPolicy" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform", + // "https://www.googleapis.com/auth/compute", + // "https://www.googleapis.com/auth/compute.readonly" + // ] + // } + +} + +// method id "compute.sslPolicies.insert": + +type SslPoliciesInsertCall struct { + s *Service + project string + sslpolicy *SslPolicy + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Insert: Returns the specified SSL policy resource. Get a list of +// available SSL policies by making a list() request. +func (r *SslPoliciesService) Insert(project string, sslpolicy *SslPolicy) *SslPoliciesInsertCall { + c := &SslPoliciesInsertCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.project = project + c.sslpolicy = sslpolicy + return c +} + +// RequestId sets the optional parameter "requestId": An optional +// request ID to identify requests. Specify a unique request ID so that +// if you must retry your request, the server will know to ignore the +// request if it has already been completed. +// +// For example, consider a situation where you make an initial request +// and the request times out. If you make the request again with the +// same request ID, the server can check if original operation with the +// same request ID was received, and if so, will ignore the second +// request. This prevents clients from accidentally creating duplicate +// commitments. +// +// The request ID must be a valid UUID with the exception that zero UUID +// is not supported (00000000-0000-0000-0000-000000000000). +func (c *SslPoliciesInsertCall) RequestId(requestId string) *SslPoliciesInsertCall { + c.urlParams_.Set("requestId", requestId) + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *SslPoliciesInsertCall) Fields(s ...googleapi.Field) *SslPoliciesInsertCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *SslPoliciesInsertCall) Context(ctx context.Context) *SslPoliciesInsertCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *SslPoliciesInsertCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *SslPoliciesInsertCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.sslpolicy) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "{project}/global/sslPolicies") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("POST", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "project": c.project, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "compute.sslPolicies.insert" call. +// Exactly one of *Operation or error will be non-nil. Any non-2xx +// status code is an error. Response headers are in either +// *Operation.ServerResponse.Header or (if a response was returned at +// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified +// to check whether the returned error was because +// http.StatusNotModified was returned. +func (c *SslPoliciesInsertCall) Do(opts ...googleapi.CallOption) (*Operation, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &Operation{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Returns the specified SSL policy resource. Get a list of available SSL policies by making a list() request.", + // "httpMethod": "POST", + // "id": "compute.sslPolicies.insert", + // "parameterOrder": [ + // "project" + // ], + // "parameters": { + // "project": { + // "description": "Project ID for this request.", + // "location": "path", + // "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + // "required": true, + // "type": "string" + // }, + // "requestId": { + // "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + // "location": "query", + // "type": "string" + // } + // }, + // "path": "{project}/global/sslPolicies", + // "request": { + // "$ref": "SslPolicy" + // }, + // "response": { + // "$ref": "Operation" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform", + // "https://www.googleapis.com/auth/compute" + // ] + // } + +} + +// method id "compute.sslPolicies.list": + +type SslPoliciesListCall struct { + s *Service + project string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// List: List all the SSL policies that have been configured for the +// specified project. +func (r *SslPoliciesService) List(project string) *SslPoliciesListCall { + c := &SslPoliciesListCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.project = project + return c +} + +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. +// +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. +// +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. +// +// To filter on multiple expressions, provide each separate expression +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). +func (c *SslPoliciesListCall) Filter(filter string) *SslPoliciesListCall { + c.urlParams_.Set("filter", filter) + return c +} + +// MaxResults sets the optional parameter "maxResults": The maximum +// number of results per page that should be returned. If the number of +// available results is larger than maxResults, Compute Engine returns a +// nextPageToken that can be used to get the next page of results in +// subsequent list requests. Acceptable values are 0 to 500, inclusive. +// (Default: 500) +func (c *SslPoliciesListCall) MaxResults(maxResults int64) *SslPoliciesListCall { + c.urlParams_.Set("maxResults", fmt.Sprint(maxResults)) + return c +} + +// OrderBy sets the optional parameter "orderBy": Sorts list results by +// a certain order. By default, results are returned in alphanumerical +// order based on the resource name. +// +// You can also sort results in descending order based on the creation +// timestamp using orderBy="creationTimestamp desc". This sorts results +// based on the creationTimestamp field in reverse chronological order +// (newest result first). Use this to sort resources like operations so +// that the newest operation is returned first. +// +// Currently, only sorting by name or creationTimestamp desc is +// supported. +func (c *SslPoliciesListCall) OrderBy(orderBy string) *SslPoliciesListCall { + c.urlParams_.Set("orderBy", orderBy) + return c +} + +// PageToken sets the optional parameter "pageToken": Specifies a page +// token to use. Set pageToken to the nextPageToken returned by a +// previous list request to get the next page of results. +func (c *SslPoliciesListCall) PageToken(pageToken string) *SslPoliciesListCall { + c.urlParams_.Set("pageToken", pageToken) + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *SslPoliciesListCall) Fields(s ...googleapi.Field) *SslPoliciesListCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// IfNoneMatch sets the optional parameter which makes the operation +// fail if the object's ETag matches the given value. This is useful for +// getting updates only after the object has changed since the last +// request. Use googleapi.IsNotModified to check whether the response +// error from Do is the result of In-None-Match. +func (c *SslPoliciesListCall) IfNoneMatch(entityTag string) *SslPoliciesListCall { + c.ifNoneMatch_ = entityTag + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *SslPoliciesListCall) Context(ctx context.Context) *SslPoliciesListCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *SslPoliciesListCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *SslPoliciesListCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + if c.ifNoneMatch_ != "" { + reqHeaders.Set("If-None-Match", c.ifNoneMatch_) + } + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "{project}/global/sslPolicies") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("GET", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "project": c.project, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "compute.sslPolicies.list" call. +// Exactly one of *SslPoliciesList or error will be non-nil. Any non-2xx +// status code is an error. Response headers are in either +// *SslPoliciesList.ServerResponse.Header or (if a response was returned +// at all) in error.(*googleapi.Error).Header. Use +// googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *SslPoliciesListCall) Do(opts ...googleapi.CallOption) (*SslPoliciesList, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &SslPoliciesList{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "List all the SSL policies that have been configured for the specified project.", + // "httpMethod": "GET", + // "id": "compute.sslPolicies.list", + // "parameterOrder": [ + // "project" + // ], + // "parameters": { + // "filter": { + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + // "location": "query", + // "type": "string" + // }, + // "maxResults": { + // "default": "500", + // "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + // "format": "uint32", + // "location": "query", + // "minimum": "0", + // "type": "integer" + // }, + // "orderBy": { + // "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + // "location": "query", + // "type": "string" + // }, + // "pageToken": { + // "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + // "location": "query", + // "type": "string" + // }, + // "project": { + // "description": "Project ID for this request.", + // "location": "path", + // "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + // "required": true, + // "type": "string" + // } + // }, + // "path": "{project}/global/sslPolicies", + // "response": { + // "$ref": "SslPoliciesList" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform", + // "https://www.googleapis.com/auth/compute", + // "https://www.googleapis.com/auth/compute.readonly" + // ] + // } + +} + +// Pages invokes f for each page of results. +// A non-nil error returned from f will halt the iteration. +// The provided context supersedes any context provided to the Context method. +func (c *SslPoliciesListCall) Pages(ctx context.Context, f func(*SslPoliciesList) error) error { + c.ctx_ = ctx + defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point + for { + x, err := c.Do() + if err != nil { + return err + } + if err := f(x); err != nil { + return err + } + if x.NextPageToken == "" { + return nil + } + c.PageToken(x.NextPageToken) + } +} + +// method id "compute.sslPolicies.listAvailableFeatures": + +type SslPoliciesListAvailableFeaturesCall struct { + s *Service + project string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// ListAvailableFeatures: Lists all features that can be specified in +// the SSL policy when using custom profile. +func (r *SslPoliciesService) ListAvailableFeatures(project string) *SslPoliciesListAvailableFeaturesCall { + c := &SslPoliciesListAvailableFeaturesCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.project = project + return c +} + +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. +// +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. +// +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. +// +// To filter on multiple expressions, provide each separate expression +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). +func (c *SslPoliciesListAvailableFeaturesCall) Filter(filter string) *SslPoliciesListAvailableFeaturesCall { + c.urlParams_.Set("filter", filter) + return c +} + +// MaxResults sets the optional parameter "maxResults": The maximum +// number of results per page that should be returned. If the number of +// available results is larger than maxResults, Compute Engine returns a +// nextPageToken that can be used to get the next page of results in +// subsequent list requests. Acceptable values are 0 to 500, inclusive. +// (Default: 500) +func (c *SslPoliciesListAvailableFeaturesCall) MaxResults(maxResults int64) *SslPoliciesListAvailableFeaturesCall { + c.urlParams_.Set("maxResults", fmt.Sprint(maxResults)) + return c +} + +// OrderBy sets the optional parameter "orderBy": Sorts list results by +// a certain order. By default, results are returned in alphanumerical +// order based on the resource name. +// +// You can also sort results in descending order based on the creation +// timestamp using orderBy="creationTimestamp desc". This sorts results +// based on the creationTimestamp field in reverse chronological order +// (newest result first). Use this to sort resources like operations so +// that the newest operation is returned first. +// +// Currently, only sorting by name or creationTimestamp desc is +// supported. +func (c *SslPoliciesListAvailableFeaturesCall) OrderBy(orderBy string) *SslPoliciesListAvailableFeaturesCall { + c.urlParams_.Set("orderBy", orderBy) + return c +} + +// PageToken sets the optional parameter "pageToken": Specifies a page +// token to use. Set pageToken to the nextPageToken returned by a +// previous list request to get the next page of results. +func (c *SslPoliciesListAvailableFeaturesCall) PageToken(pageToken string) *SslPoliciesListAvailableFeaturesCall { + c.urlParams_.Set("pageToken", pageToken) + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *SslPoliciesListAvailableFeaturesCall) Fields(s ...googleapi.Field) *SslPoliciesListAvailableFeaturesCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// IfNoneMatch sets the optional parameter which makes the operation +// fail if the object's ETag matches the given value. This is useful for +// getting updates only after the object has changed since the last +// request. Use googleapi.IsNotModified to check whether the response +// error from Do is the result of In-None-Match. +func (c *SslPoliciesListAvailableFeaturesCall) IfNoneMatch(entityTag string) *SslPoliciesListAvailableFeaturesCall { + c.ifNoneMatch_ = entityTag + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *SslPoliciesListAvailableFeaturesCall) Context(ctx context.Context) *SslPoliciesListAvailableFeaturesCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *SslPoliciesListAvailableFeaturesCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *SslPoliciesListAvailableFeaturesCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + if c.ifNoneMatch_ != "" { + reqHeaders.Set("If-None-Match", c.ifNoneMatch_) + } + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "{project}/global/sslPolicies/listAvailableFeatures") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("GET", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "project": c.project, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "compute.sslPolicies.listAvailableFeatures" call. +// Exactly one of *SslPoliciesListAvailableFeaturesResponse or error +// will be non-nil. Any non-2xx status code is an error. Response +// headers are in either +// *SslPoliciesListAvailableFeaturesResponse.ServerResponse.Header or +// (if a response was returned at all) in +// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check +// whether the returned error was because http.StatusNotModified was +// returned. +func (c *SslPoliciesListAvailableFeaturesCall) Do(opts ...googleapi.CallOption) (*SslPoliciesListAvailableFeaturesResponse, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &SslPoliciesListAvailableFeaturesResponse{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Lists all features that can be specified in the SSL policy when using custom profile.", + // "httpMethod": "GET", + // "id": "compute.sslPolicies.listAvailableFeatures", + // "parameterOrder": [ + // "project" + // ], + // "parameters": { + // "filter": { + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + // "location": "query", + // "type": "string" + // }, + // "maxResults": { + // "default": "500", + // "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + // "format": "uint32", + // "location": "query", + // "minimum": "0", + // "type": "integer" + // }, + // "orderBy": { + // "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + // "location": "query", + // "type": "string" + // }, + // "pageToken": { + // "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + // "location": "query", + // "type": "string" + // }, + // "project": { + // "description": "Project ID for this request.", + // "location": "path", + // "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + // "required": true, + // "type": "string" + // } + // }, + // "path": "{project}/global/sslPolicies/listAvailableFeatures", + // "response": { + // "$ref": "SslPoliciesListAvailableFeaturesResponse" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform", + // "https://www.googleapis.com/auth/compute", + // "https://www.googleapis.com/auth/compute.readonly" + // ] + // } + +} + +// method id "compute.sslPolicies.patch": + +type SslPoliciesPatchCall struct { + s *Service + project string + sslPolicy string + sslpolicy *SslPolicy + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Patch: Patches the specified SSL policy with the data included in the +// request. +func (r *SslPoliciesService) Patch(project string, sslPolicy string, sslpolicy *SslPolicy) *SslPoliciesPatchCall { + c := &SslPoliciesPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.project = project + c.sslPolicy = sslPolicy + c.sslpolicy = sslpolicy + return c +} + +// RequestId sets the optional parameter "requestId": An optional +// request ID to identify requests. Specify a unique request ID so that +// if you must retry your request, the server will know to ignore the +// request if it has already been completed. +// +// For example, consider a situation where you make an initial request +// and the request times out. If you make the request again with the +// same request ID, the server can check if original operation with the +// same request ID was received, and if so, will ignore the second +// request. This prevents clients from accidentally creating duplicate +// commitments. +// +// The request ID must be a valid UUID with the exception that zero UUID +// is not supported (00000000-0000-0000-0000-000000000000). +func (c *SslPoliciesPatchCall) RequestId(requestId string) *SslPoliciesPatchCall { + c.urlParams_.Set("requestId", requestId) + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *SslPoliciesPatchCall) Fields(s ...googleapi.Field) *SslPoliciesPatchCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *SslPoliciesPatchCall) Context(ctx context.Context) *SslPoliciesPatchCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *SslPoliciesPatchCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *SslPoliciesPatchCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.sslpolicy) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "{project}/global/sslPolicies/{sslPolicy}") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("PATCH", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "project": c.project, + "sslPolicy": c.sslPolicy, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "compute.sslPolicies.patch" call. +// Exactly one of *Operation or error will be non-nil. Any non-2xx +// status code is an error. Response headers are in either +// *Operation.ServerResponse.Header or (if a response was returned at +// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified +// to check whether the returned error was because +// http.StatusNotModified was returned. +func (c *SslPoliciesPatchCall) Do(opts ...googleapi.CallOption) (*Operation, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &Operation{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Patches the specified SSL policy with the data included in the request.", + // "httpMethod": "PATCH", + // "id": "compute.sslPolicies.patch", + // "parameterOrder": [ + // "project", + // "sslPolicy" + // ], + // "parameters": { + // "project": { + // "description": "Project ID for this request.", + // "location": "path", + // "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + // "required": true, + // "type": "string" + // }, + // "requestId": { + // "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + // "location": "query", + // "type": "string" + // }, + // "sslPolicy": { + // "description": "Name of the SSL policy to update. The name must be 1-63 characters long, and comply with RFC1035.", + // "location": "path", + // "required": true, + // "type": "string" + // } + // }, + // "path": "{project}/global/sslPolicies/{sslPolicy}", + // "request": { + // "$ref": "SslPolicy" + // }, + // "response": { + // "$ref": "Operation" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform", + // "https://www.googleapis.com/auth/compute" + // ] + // } + +} + // method id "compute.subnetworks.aggregatedList": type SubnetworksAggregatedListCall struct { @@ -67363,32 +71165,28 @@ func (r *SubnetworksService) AggregatedList(project string) *SubnetworksAggregat return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *SubnetworksAggregatedListCall) Filter(filter string) *SubnetworksAggregatedListCall { c.urlParams_.Set("filter", filter) return c @@ -67532,7 +71330,7 @@ func (c *SubnetworksAggregatedListCall) Do(opts ...googleapi.CallOption) (*Subne // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -68304,32 +72102,28 @@ func (r *SubnetworksService) List(project string, region string) *SubnetworksLis return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *SubnetworksListCall) Filter(filter string) *SubnetworksListCall { c.urlParams_.Set("filter", filter) return c @@ -68475,7 +72269,7 @@ func (c *SubnetworksListCall) Do(opts ...googleapi.CallOption) (*SubnetworkList, // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -68546,6 +72340,192 @@ func (c *SubnetworksListCall) Pages(ctx context.Context, f func(*SubnetworkList) } } +// method id "compute.subnetworks.patch": + +type SubnetworksPatchCall struct { + s *Service + project string + region string + subnetwork string + subnetwork2 *Subnetwork + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Patch: Patches the specified subnetwork with the data included in the +// request. Only the following fields within the subnetwork resource can +// be specified in the request: secondary_ip_range, +// allow_subnet_cidr_routes_overlap and role. It is also mandatory to +// specify the current fingeprint of the subnetwork resource being +// patched. +func (r *SubnetworksService) Patch(project string, region string, subnetwork string, subnetwork2 *Subnetwork) *SubnetworksPatchCall { + c := &SubnetworksPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.project = project + c.region = region + c.subnetwork = subnetwork + c.subnetwork2 = subnetwork2 + return c +} + +// RequestId sets the optional parameter "requestId": An optional +// request ID to identify requests. Specify a unique request ID so that +// if you must retry your request, the server will know to ignore the +// request if it has already been completed. +// +// For example, consider a situation where you make an initial request +// and the request times out. If you make the request again with the +// same request ID, the server can check if original operation with the +// same request ID was received, and if so, will ignore the second +// request. This prevents clients from accidentally creating duplicate +// commitments. +// +// The request ID must be a valid UUID with the exception that zero UUID +// is not supported (00000000-0000-0000-0000-000000000000). +func (c *SubnetworksPatchCall) RequestId(requestId string) *SubnetworksPatchCall { + c.urlParams_.Set("requestId", requestId) + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *SubnetworksPatchCall) Fields(s ...googleapi.Field) *SubnetworksPatchCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *SubnetworksPatchCall) Context(ctx context.Context) *SubnetworksPatchCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *SubnetworksPatchCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *SubnetworksPatchCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.subnetwork2) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "{project}/regions/{region}/subnetworks/{subnetwork}") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("PATCH", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "project": c.project, + "region": c.region, + "subnetwork": c.subnetwork, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "compute.subnetworks.patch" call. +// Exactly one of *Operation or error will be non-nil. Any non-2xx +// status code is an error. Response headers are in either +// *Operation.ServerResponse.Header or (if a response was returned at +// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified +// to check whether the returned error was because +// http.StatusNotModified was returned. +func (c *SubnetworksPatchCall) Do(opts ...googleapi.CallOption) (*Operation, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &Operation{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Patches the specified subnetwork with the data included in the request. Only the following fields within the subnetwork resource can be specified in the request: secondary_ip_range, allow_subnet_cidr_routes_overlap and role. It is also mandatory to specify the current fingeprint of the subnetwork resource being patched.", + // "httpMethod": "PATCH", + // "id": "compute.subnetworks.patch", + // "parameterOrder": [ + // "project", + // "region", + // "subnetwork" + // ], + // "parameters": { + // "project": { + // "description": "Project ID for this request.", + // "location": "path", + // "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + // "required": true, + // "type": "string" + // }, + // "region": { + // "description": "Name of the region scoping this request.", + // "location": "path", + // "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + // "required": true, + // "type": "string" + // }, + // "requestId": { + // "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + // "location": "query", + // "type": "string" + // }, + // "subnetwork": { + // "description": "Name of the Subnetwork resource to patch.", + // "location": "path", + // "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + // "required": true, + // "type": "string" + // } + // }, + // "path": "{project}/regions/{region}/subnetworks/{subnetwork}", + // "request": { + // "$ref": "Subnetwork" + // }, + // "response": { + // "$ref": "Operation" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform", + // "https://www.googleapis.com/auth/compute" + // ] + // } + +} + // method id "compute.subnetworks.setPrivateIpGoogleAccess": type SubnetworksSetPrivateIpGoogleAccessCall struct { @@ -69224,32 +73204,28 @@ func (r *TargetHttpProxiesService) List(project string) *TargetHttpProxiesListCa return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *TargetHttpProxiesListCall) Filter(filter string) *TargetHttpProxiesListCall { c.urlParams_.Set("filter", filter) return c @@ -69393,7 +73369,7 @@ func (c *TargetHttpProxiesListCall) Do(opts ...googleapi.CallOption) (*TargetHtt // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -70119,32 +74095,28 @@ func (r *TargetHttpsProxiesService) List(project string) *TargetHttpsProxiesList return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *TargetHttpsProxiesListCall) Filter(filter string) *TargetHttpsProxiesListCall { c.urlParams_.Set("filter", filter) return c @@ -70288,7 +74260,7 @@ func (c *TargetHttpsProxiesListCall) Do(opts ...googleapi.CallOption) (*TargetHt // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -70522,6 +74494,179 @@ func (c *TargetHttpsProxiesSetSslCertificatesCall) Do(opts ...googleapi.CallOpti } +// method id "compute.targetHttpsProxies.setSslPolicy": + +type TargetHttpsProxiesSetSslPolicyCall struct { + s *Service + project string + targetHttpsProxy string + sslpolicyreference *SslPolicyReference + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// SetSslPolicy: Sets the SSL policy for TargetHttpsProxy. The SSL +// policy specifies the server-side support for SSL features. This +// affects connections between clients and the HTTPS proxy load +// balancer. They do not affect the connection between the load balancer +// and the backends. +func (r *TargetHttpsProxiesService) SetSslPolicy(project string, targetHttpsProxy string, sslpolicyreference *SslPolicyReference) *TargetHttpsProxiesSetSslPolicyCall { + c := &TargetHttpsProxiesSetSslPolicyCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.project = project + c.targetHttpsProxy = targetHttpsProxy + c.sslpolicyreference = sslpolicyreference + return c +} + +// RequestId sets the optional parameter "requestId": An optional +// request ID to identify requests. Specify a unique request ID so that +// if you must retry your request, the server will know to ignore the +// request if it has already been completed. +// +// For example, consider a situation where you make an initial request +// and the request times out. If you make the request again with the +// same request ID, the server can check if original operation with the +// same request ID was received, and if so, will ignore the second +// request. This prevents clients from accidentally creating duplicate +// commitments. +// +// The request ID must be a valid UUID with the exception that zero UUID +// is not supported (00000000-0000-0000-0000-000000000000). +func (c *TargetHttpsProxiesSetSslPolicyCall) RequestId(requestId string) *TargetHttpsProxiesSetSslPolicyCall { + c.urlParams_.Set("requestId", requestId) + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *TargetHttpsProxiesSetSslPolicyCall) Fields(s ...googleapi.Field) *TargetHttpsProxiesSetSslPolicyCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *TargetHttpsProxiesSetSslPolicyCall) Context(ctx context.Context) *TargetHttpsProxiesSetSslPolicyCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *TargetHttpsProxiesSetSslPolicyCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *TargetHttpsProxiesSetSslPolicyCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.sslpolicyreference) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "{project}/global/targetHttpsProxies/{targetHttpsProxy}/setSslPolicy") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("POST", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "project": c.project, + "targetHttpsProxy": c.targetHttpsProxy, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "compute.targetHttpsProxies.setSslPolicy" call. +// Exactly one of *Operation or error will be non-nil. Any non-2xx +// status code is an error. Response headers are in either +// *Operation.ServerResponse.Header or (if a response was returned at +// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified +// to check whether the returned error was because +// http.StatusNotModified was returned. +func (c *TargetHttpsProxiesSetSslPolicyCall) Do(opts ...googleapi.CallOption) (*Operation, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &Operation{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Sets the SSL policy for TargetHttpsProxy. The SSL policy specifies the server-side support for SSL features. This affects connections between clients and the HTTPS proxy load balancer. They do not affect the connection between the load balancer and the backends.", + // "httpMethod": "POST", + // "id": "compute.targetHttpsProxies.setSslPolicy", + // "parameterOrder": [ + // "project", + // "targetHttpsProxy" + // ], + // "parameters": { + // "project": { + // "description": "Project ID for this request.", + // "location": "path", + // "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + // "required": true, + // "type": "string" + // }, + // "requestId": { + // "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + // "location": "query", + // "type": "string" + // }, + // "targetHttpsProxy": { + // "description": "Name of the TargetHttpsProxy resource whose SSL policy is to be set. The name must be 1-63 characters long, and comply with RFC1035.", + // "location": "path", + // "required": true, + // "type": "string" + // } + // }, + // "path": "{project}/global/targetHttpsProxies/{targetHttpsProxy}/setSslPolicy", + // "request": { + // "$ref": "SslPolicyReference" + // }, + // "response": { + // "$ref": "Operation" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform", + // "https://www.googleapis.com/auth/compute" + // ] + // } + +} + // method id "compute.targetHttpsProxies.setUrlMap": type TargetHttpsProxiesSetUrlMapCall struct { @@ -70711,32 +74856,28 @@ func (r *TargetInstancesService) AggregatedList(project string) *TargetInstances return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *TargetInstancesAggregatedListCall) Filter(filter string) *TargetInstancesAggregatedListCall { c.urlParams_.Set("filter", filter) return c @@ -70880,7 +75021,7 @@ func (c *TargetInstancesAggregatedListCall) Do(opts ...googleapi.CallOption) (*T // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -71474,32 +75615,28 @@ func (r *TargetInstancesService) List(project string, zone string) *TargetInstan return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *TargetInstancesListCall) Filter(filter string) *TargetInstancesListCall { c.urlParams_.Set("filter", filter) return c @@ -71645,7 +75782,7 @@ func (c *TargetInstancesListCall) Do(opts ...googleapi.CallOption) (*TargetInsta // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -72099,32 +76236,28 @@ func (r *TargetPoolsService) AggregatedList(project string) *TargetPoolsAggregat return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *TargetPoolsAggregatedListCall) Filter(filter string) *TargetPoolsAggregatedListCall { c.urlParams_.Set("filter", filter) return c @@ -72268,7 +76401,7 @@ func (c *TargetPoolsAggregatedListCall) Do(opts ...googleapi.CallOption) (*Targe // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -73022,32 +77155,28 @@ func (r *TargetPoolsService) List(project string, region string) *TargetPoolsLis return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *TargetPoolsListCall) Filter(filter string) *TargetPoolsListCall { c.urlParams_.Set("filter", filter) return c @@ -73193,7 +77322,7 @@ func (c *TargetPoolsListCall) Do(opts ...googleapi.CallOption) (*TargetPoolList, // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -74314,32 +78443,28 @@ func (r *TargetSslProxiesService) List(project string) *TargetSslProxiesListCall return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *TargetSslProxiesListCall) Filter(filter string) *TargetSslProxiesListCall { c.urlParams_.Set("filter", filter) return c @@ -74483,7 +78608,7 @@ func (c *TargetSslProxiesListCall) Do(opts ...googleapi.CallOption) (*TargetSslP // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -75057,6 +79182,178 @@ func (c *TargetSslProxiesSetSslCertificatesCall) Do(opts ...googleapi.CallOption } +// method id "compute.targetSslProxies.setSslPolicy": + +type TargetSslProxiesSetSslPolicyCall struct { + s *Service + project string + targetSslProxy string + sslpolicyreference *SslPolicyReference + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// SetSslPolicy: Sets the SSL policy for TargetSslProxy. The SSL policy +// specifies the server-side support for SSL features. This affects +// connections between clients and the SSL proxy load balancer. They do +// not affect the connection between the load balancer and the backends. +func (r *TargetSslProxiesService) SetSslPolicy(project string, targetSslProxy string, sslpolicyreference *SslPolicyReference) *TargetSslProxiesSetSslPolicyCall { + c := &TargetSslProxiesSetSslPolicyCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.project = project + c.targetSslProxy = targetSslProxy + c.sslpolicyreference = sslpolicyreference + return c +} + +// RequestId sets the optional parameter "requestId": An optional +// request ID to identify requests. Specify a unique request ID so that +// if you must retry your request, the server will know to ignore the +// request if it has already been completed. +// +// For example, consider a situation where you make an initial request +// and the request times out. If you make the request again with the +// same request ID, the server can check if original operation with the +// same request ID was received, and if so, will ignore the second +// request. This prevents clients from accidentally creating duplicate +// commitments. +// +// The request ID must be a valid UUID with the exception that zero UUID +// is not supported (00000000-0000-0000-0000-000000000000). +func (c *TargetSslProxiesSetSslPolicyCall) RequestId(requestId string) *TargetSslProxiesSetSslPolicyCall { + c.urlParams_.Set("requestId", requestId) + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *TargetSslProxiesSetSslPolicyCall) Fields(s ...googleapi.Field) *TargetSslProxiesSetSslPolicyCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *TargetSslProxiesSetSslPolicyCall) Context(ctx context.Context) *TargetSslProxiesSetSslPolicyCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *TargetSslProxiesSetSslPolicyCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *TargetSslProxiesSetSslPolicyCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.sslpolicyreference) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "{project}/global/targetSslProxies/{targetSslProxy}/setSslPolicy") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("POST", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "project": c.project, + "targetSslProxy": c.targetSslProxy, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "compute.targetSslProxies.setSslPolicy" call. +// Exactly one of *Operation or error will be non-nil. Any non-2xx +// status code is an error. Response headers are in either +// *Operation.ServerResponse.Header or (if a response was returned at +// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified +// to check whether the returned error was because +// http.StatusNotModified was returned. +func (c *TargetSslProxiesSetSslPolicyCall) Do(opts ...googleapi.CallOption) (*Operation, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &Operation{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Sets the SSL policy for TargetSslProxy. The SSL policy specifies the server-side support for SSL features. This affects connections between clients and the SSL proxy load balancer. They do not affect the connection between the load balancer and the backends.", + // "httpMethod": "POST", + // "id": "compute.targetSslProxies.setSslPolicy", + // "parameterOrder": [ + // "project", + // "targetSslProxy" + // ], + // "parameters": { + // "project": { + // "description": "Project ID for this request.", + // "location": "path", + // "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + // "required": true, + // "type": "string" + // }, + // "requestId": { + // "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + // "location": "query", + // "type": "string" + // }, + // "targetSslProxy": { + // "description": "Name of the TargetSslProxy resource whose SSL policy is to be set. The name must be 1-63 characters long, and comply with RFC1035.", + // "location": "path", + // "required": true, + // "type": "string" + // } + // }, + // "path": "{project}/global/targetSslProxies/{targetSslProxy}/setSslPolicy", + // "request": { + // "$ref": "SslPolicyReference" + // }, + // "response": { + // "$ref": "Operation" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform", + // "https://www.googleapis.com/auth/compute" + // ] + // } + +} + // method id "compute.targetTcpProxies.delete": type TargetTcpProxiesDeleteCall struct { @@ -75548,32 +79845,28 @@ func (r *TargetTcpProxiesService) List(project string) *TargetTcpProxiesListCall return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *TargetTcpProxiesListCall) Filter(filter string) *TargetTcpProxiesListCall { c.urlParams_.Set("filter", filter) return c @@ -75717,7 +80010,7 @@ func (c *TargetTcpProxiesListCall) Do(opts ...googleapi.CallOption) (*TargetTcpP // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -76139,32 +80432,28 @@ func (r *TargetVpnGatewaysService) AggregatedList(project string) *TargetVpnGate return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *TargetVpnGatewaysAggregatedListCall) Filter(filter string) *TargetVpnGatewaysAggregatedListCall { c.urlParams_.Set("filter", filter) return c @@ -76308,7 +80597,7 @@ func (c *TargetVpnGatewaysAggregatedListCall) Do(opts ...googleapi.CallOption) ( // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -76898,32 +81187,28 @@ func (r *TargetVpnGatewaysService) List(project string, region string) *TargetVp return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *TargetVpnGatewaysListCall) Filter(filter string) *TargetVpnGatewaysListCall { c.urlParams_.Set("filter", filter) return c @@ -77069,7 +81354,7 @@ func (c *TargetVpnGatewaysListCall) Do(opts ...googleapi.CallOption) (*TargetVpn // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -77806,32 +82091,28 @@ func (r *UrlMapsService) List(project string) *UrlMapsListCall { return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *UrlMapsListCall) Filter(filter string) *UrlMapsListCall { c.urlParams_.Set("filter", filter) return c @@ -77975,7 +82256,7 @@ func (c *UrlMapsListCall) Do(opts ...googleapi.CallOption) (*UrlMapList, error) // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -78551,32 +82832,28 @@ func (r *VpnTunnelsService) AggregatedList(project string) *VpnTunnelsAggregated return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *VpnTunnelsAggregatedListCall) Filter(filter string) *VpnTunnelsAggregatedListCall { c.urlParams_.Set("filter", filter) return c @@ -78720,7 +82997,7 @@ func (c *VpnTunnelsAggregatedListCall) Do(opts ...googleapi.CallOption) (*VpnTun // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -79310,32 +83587,28 @@ func (r *VpnTunnelsService) List(project string, region string) *VpnTunnelsListC return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *VpnTunnelsListCall) Filter(filter string) *VpnTunnelsListCall { c.urlParams_.Set("filter", filter) return c @@ -79481,7 +83754,7 @@ func (c *VpnTunnelsListCall) Do(opts ...googleapi.CallOption) (*VpnTunnelList, e // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -79857,32 +84130,28 @@ func (r *ZoneOperationsService) List(project string, zone string) *ZoneOperation return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *ZoneOperationsListCall) Filter(filter string) *ZoneOperationsListCall { c.urlParams_.Set("filter", filter) return c @@ -80028,7 +84297,7 @@ func (c *ZoneOperationsListCall) Do(opts ...googleapi.CallOption) (*OperationLis // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -80272,32 +84541,28 @@ func (r *ZonesService) List(project string) *ZonesListCall { return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *ZonesListCall) Filter(filter string) *ZonesListCall { c.urlParams_.Set("filter", filter) return c @@ -80441,7 +84706,7 @@ func (c *ZonesListCall) Do(opts ...googleapi.CallOption) (*ZoneList, error) { // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, diff --git a/vendor/google.golang.org/api/container/v1/container-api.json b/vendor/google.golang.org/api/container/v1/container-api.json index 7eaee439f..9adcb6cd1 100644 --- a/vendor/google.golang.org/api/container/v1/container-api.json +++ b/vendor/google.golang.org/api/container/v1/container-api.json @@ -1,46 +1,3201 @@ { + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/cloud-platform": { + "description": "View and manage your data across Google Cloud Platform services" + } + } + } + }, + "basePath": "", + "baseUrl": "https://container.googleapis.com/", + "batchPath": "batch", + "canonicalName": "Container", + "description": "The Google Kubernetes Engine API is used for building and managing container based applications, powered by the open source Kubernetes technology.", "discoveryVersion": "v1", + "documentationLink": "https://cloud.google.com/container-engine/", + "fullyEncodeReservedExpansion": true, + "icons": { + "x16": "http://www.google.com/images/icons/product/search-16.gif", + "x32": "http://www.google.com/images/icons/product/search-32.gif" + }, + "id": "container:v1", + "kind": "discovery#restDescription", + "name": "container", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "$.xgafv": { + "description": "V1 error format.", + "enum": [ + "1", + "2" + ], + "enumDescriptions": [ + "v1 error format", + "v2 error format" + ], + "location": "query", + "type": "string" + }, + "access_token": { + "description": "OAuth access token.", + "location": "query", + "type": "string" + }, + "alt": { + "default": "json", + "description": "Data format for response.", + "enum": [ + "json", + "media", + "proto" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json", + "Media download with context-dependent Content-Type", + "Responses with Content-Type of application/x-protobuf" + ], + "location": "query", + "type": "string" + }, + "bearer_token": { + "description": "OAuth bearer token.", + "location": "query", + "type": "string" + }, + "callback": { + "description": "JSONP", + "location": "query", + "type": "string" + }, + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "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.", + "location": "query", + "type": "string" + }, + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "pp": { + "default": "true", + "description": "Pretty-print response.", + "location": "query", + "type": "boolean" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", + "location": "query", + "type": "string" + }, + "uploadType": { + "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", + "location": "query", + "type": "string" + }, + "upload_protocol": { + "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", + "location": "query", + "type": "string" + } + }, + "protocol": "rest", + "resources": { + "projects": { + "resources": { + "locations": { + "methods": { + "getServerConfig": { + "description": "Returns configuration info about the Kubernetes Engine service.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/serverConfig", + "httpMethod": "GET", + "id": "container.projects.locations.getServerConfig", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name (project and location) of the server config to get\nSpecified in the format 'projects/*/locations/*'.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + }, + "projectId": { + "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field has been deprecated and replaced by the name field.", + "location": "query", + "type": "string" + }, + "zone": { + "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) to return operations for.\nThis field has been deprecated and replaced by the name field.", + "location": "query", + "type": "string" + } + }, + "path": "v1/{+name}/serverConfig", + "response": { + "$ref": "ServerConfig" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + }, + "resources": { + "clusters": { + "methods": { + "completeIpRotation": { + "description": "Completes master IP rotation.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}:completeIpRotation", + "httpMethod": "POST", + "id": "container.projects.locations.clusters.completeIpRotation", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name (project, location, cluster id) of the cluster to complete IP rotation.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}:completeIpRotation", + "request": { + "$ref": "CompleteIPRotationRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "create": { + "description": "Creates a cluster, consisting of the specified number and type of Google\nCompute Engine instances.\n\nBy default, the cluster is created in the project's\n[default network](/compute/docs/networks-and-firewalls#networks).\n\nOne firewall is added for the cluster. After cluster creation,\nthe cluster creates routes for each node to allow the containers\non that node to communicate with all other instances in the\ncluster.\n\nFinally, an entry is added to the project's global metadata indicating\nwhich CIDR range is being used by the cluster.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/clusters", + "httpMethod": "POST", + "id": "container.projects.locations.clusters.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "The parent (project and location) where the cluster will be created.\nSpecified in the format 'projects/*/locations/*'.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+parent}/clusters", + "request": { + "$ref": "CreateClusterRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Deletes the cluster, including the Kubernetes endpoint and all worker\nnodes.\n\nFirewalls and routes that were configured during cluster creation\nare also deleted.\n\nOther Google Compute Engine resources that might be in use by the cluster\n(e.g. load balancer resources) will not be deleted if they weren't present\nat the initial create time.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}", + "httpMethod": "DELETE", + "id": "container.projects.locations.clusters.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "clusterId": { + "description": "Deprecated. The name of the cluster to delete.\nThis field has been deprecated and replaced by the name field.", + "location": "query", + "type": "string" + }, + "name": { + "description": "The name (project, location, cluster) of the cluster to delete.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+$", + "required": true, + "type": "string" + }, + "projectId": { + "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field has been deprecated and replaced by the name field.", + "location": "query", + "type": "string" + }, + "zone": { + "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the name field.", + "location": "query", + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Gets the details of a specific cluster.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}", + "httpMethod": "GET", + "id": "container.projects.locations.clusters.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "clusterId": { + "description": "Deprecated. The name of the cluster to retrieve.\nThis field has been deprecated and replaced by the name field.", + "location": "query", + "type": "string" + }, + "name": { + "description": "The name (project, location, cluster) of the cluster to retrieve.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+$", + "required": true, + "type": "string" + }, + "projectId": { + "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field has been deprecated and replaced by the name field.", + "location": "query", + "type": "string" + }, + "zone": { + "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the name field.", + "location": "query", + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "Cluster" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists all clusters owned by a project in either the specified zone or all\nzones.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/clusters", + "httpMethod": "GET", + "id": "container.projects.locations.clusters.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "The parent (project and location) where the clusters will be listed.\nSpecified in the format 'projects/*/locations/*'.\nLocation \"-\" matches all zones and all regions.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + }, + "projectId": { + "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field has been deprecated and replaced by the parent field.", + "location": "query", + "type": "string" + }, + "zone": { + "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides, or \"-\" for all zones.\nThis field has been deprecated and replaced by the parent field.", + "location": "query", + "type": "string" + } + }, + "path": "v1/{+parent}/clusters", + "response": { + "$ref": "ListClustersResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "setAddons": { + "description": "Sets the addons of a specific cluster.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}:setAddons", + "httpMethod": "POST", + "id": "container.projects.locations.clusters.setAddons", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name (project, location, cluster) of the cluster to set addons.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}:setAddons", + "request": { + "$ref": "SetAddonsConfigRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "setLegacyAbac": { + "description": "Enables or disables the ABAC authorization mechanism on a cluster.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}:setLegacyAbac", + "httpMethod": "POST", + "id": "container.projects.locations.clusters.setLegacyAbac", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name (project, location, cluster id) of the cluster to set legacy abac.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}:setLegacyAbac", + "request": { + "$ref": "SetLegacyAbacRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "setLocations": { + "description": "Sets the locations of a specific cluster.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}:setLocations", + "httpMethod": "POST", + "id": "container.projects.locations.clusters.setLocations", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name (project, location, cluster) of the cluster to set locations.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}:setLocations", + "request": { + "$ref": "SetLocationsRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "setLogging": { + "description": "Sets the logging service of a specific cluster.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}:setLogging", + "httpMethod": "POST", + "id": "container.projects.locations.clusters.setLogging", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name (project, location, cluster) of the cluster to set logging.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}:setLogging", + "request": { + "$ref": "SetLoggingServiceRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "setMaintenancePolicy": { + "description": "Sets the maintenance policy for a cluster.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}:setMaintenancePolicy", + "httpMethod": "POST", + "id": "container.projects.locations.clusters.setMaintenancePolicy", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name (project, location, cluster id) of the cluster to set maintenance\npolicy.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}:setMaintenancePolicy", + "request": { + "$ref": "SetMaintenancePolicyRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "setMasterAuth": { + "description": "Used to set master auth materials. Currently supports :-\nChanging the admin password of a specific cluster.\nThis can be either via password generation or explicitly set the password.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}:setMasterAuth", + "httpMethod": "POST", + "id": "container.projects.locations.clusters.setMasterAuth", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name (project, location, cluster) of the cluster to set auth.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}:setMasterAuth", + "request": { + "$ref": "SetMasterAuthRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "setMonitoring": { + "description": "Sets the monitoring service of a specific cluster.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}:setMonitoring", + "httpMethod": "POST", + "id": "container.projects.locations.clusters.setMonitoring", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name (project, location, cluster) of the cluster to set monitoring.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}:setMonitoring", + "request": { + "$ref": "SetMonitoringServiceRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "setNetworkPolicy": { + "description": "Enables/Disables Network Policy for a cluster.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}:setNetworkPolicy", + "httpMethod": "POST", + "id": "container.projects.locations.clusters.setNetworkPolicy", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name (project, location, cluster id) of the cluster to set networking policy.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}:setNetworkPolicy", + "request": { + "$ref": "SetNetworkPolicyRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "setResourceLabels": { + "description": "Sets labels on a cluster.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}:setResourceLabels", + "httpMethod": "POST", + "id": "container.projects.locations.clusters.setResourceLabels", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name (project, location, cluster id) of the cluster to set labels.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}:setResourceLabels", + "request": { + "$ref": "SetLabelsRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "startIpRotation": { + "description": "Start master IP rotation.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}:startIpRotation", + "httpMethod": "POST", + "id": "container.projects.locations.clusters.startIpRotation", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name (project, location, cluster id) of the cluster to start IP rotation.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}:startIpRotation", + "request": { + "$ref": "StartIPRotationRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "update": { + "description": "Updates the settings of a specific cluster.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}", + "httpMethod": "PUT", + "id": "container.projects.locations.clusters.update", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name (project, location, cluster) of the cluster to update.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "request": { + "$ref": "UpdateClusterRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "updateMaster": { + "description": "Updates the master of a specific cluster.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}:updateMaster", + "httpMethod": "POST", + "id": "container.projects.locations.clusters.updateMaster", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name (project, location, cluster) of the cluster to update.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}:updateMaster", + "request": { + "$ref": "UpdateMasterRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + }, + "resources": { + "nodePools": { + "methods": { + "create": { + "description": "Creates a node pool for a cluster.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}/nodePools", + "httpMethod": "POST", + "id": "container.projects.locations.clusters.nodePools.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "The parent (project, location, cluster id) where the node pool will be created.\nSpecified in the format 'projects/*/locations/*/clusters/*/nodePools/*'.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+parent}/nodePools", + "request": { + "$ref": "CreateNodePoolRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Deletes a node pool from a cluster.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}/nodePools/{nodePoolsId}", + "httpMethod": "DELETE", + "id": "container.projects.locations.clusters.nodePools.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "clusterId": { + "description": "Deprecated. The name of the cluster.\nThis field has been deprecated and replaced by the name field.", + "location": "query", + "type": "string" + }, + "name": { + "description": "The name (project, location, cluster, node pool id) of the node pool to delete.\nSpecified in the format 'projects/*/locations/*/clusters/*/nodePools/*'.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+/nodePools/[^/]+$", + "required": true, + "type": "string" + }, + "nodePoolId": { + "description": "Deprecated. The name of the node pool to delete.\nThis field has been deprecated and replaced by the name field.", + "location": "query", + "type": "string" + }, + "projectId": { + "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://developers.google.com/console/help/new/#projectnumber).\nThis field has been deprecated and replaced by the name field.", + "location": "query", + "type": "string" + }, + "zone": { + "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the name field.", + "location": "query", + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Retrieves the node pool requested.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}/nodePools/{nodePoolsId}", + "httpMethod": "GET", + "id": "container.projects.locations.clusters.nodePools.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "clusterId": { + "description": "Deprecated. The name of the cluster.\nThis field has been deprecated and replaced by the name field.", + "location": "query", + "type": "string" + }, + "name": { + "description": "The name (project, location, cluster, node pool id) of the node pool to get.\nSpecified in the format 'projects/*/locations/*/clusters/*/nodePools/*'.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+/nodePools/[^/]+$", + "required": true, + "type": "string" + }, + "nodePoolId": { + "description": "Deprecated. The name of the node pool.\nThis field has been deprecated and replaced by the name field.", + "location": "query", + "type": "string" + }, + "projectId": { + "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://developers.google.com/console/help/new/#projectnumber).\nThis field has been deprecated and replaced by the name field.", + "location": "query", + "type": "string" + }, + "zone": { + "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the name field.", + "location": "query", + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "NodePool" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists the node pools for a cluster.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}/nodePools", + "httpMethod": "GET", + "id": "container.projects.locations.clusters.nodePools.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "clusterId": { + "description": "Deprecated. The name of the cluster.\nThis field has been deprecated and replaced by the parent field.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "The parent (project, location, cluster id) where the node pools will be listed.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+$", + "required": true, + "type": "string" + }, + "projectId": { + "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://developers.google.com/console/help/new/#projectnumber).\nThis field has been deprecated and replaced by the parent field.", + "location": "query", + "type": "string" + }, + "zone": { + "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the parent field.", + "location": "query", + "type": "string" + } + }, + "path": "v1/{+parent}/nodePools", + "response": { + "$ref": "ListNodePoolsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "rollback": { + "description": "Roll back the previously Aborted or Failed NodePool upgrade.\nThis will be an no-op if the last upgrade successfully completed.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}/nodePools/{nodePoolsId}:rollback", + "httpMethod": "POST", + "id": "container.projects.locations.clusters.nodePools.rollback", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name (project, location, cluster, node pool id) of the node poll to\nrollback upgrade.\nSpecified in the format 'projects/*/locations/*/clusters/*/nodePools/*'.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+/nodePools/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}:rollback", + "request": { + "$ref": "RollbackNodePoolUpgradeRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "setAutoscaling": { + "description": "Sets the autoscaling settings of a specific node pool.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}/nodePools/{nodePoolsId}:setAutoscaling", + "httpMethod": "POST", + "id": "container.projects.locations.clusters.nodePools.setAutoscaling", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name (project, location, cluster, node pool) of the node pool to set\nautoscaler settings. Specified in the format\n'projects/*/locations/*/clusters/*/nodePools/*'.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+/nodePools/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}:setAutoscaling", + "request": { + "$ref": "SetNodePoolAutoscalingRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "setManagement": { + "description": "Sets the NodeManagement options for a node pool.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}/nodePools/{nodePoolsId}:setManagement", + "httpMethod": "POST", + "id": "container.projects.locations.clusters.nodePools.setManagement", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name (project, location, cluster, node pool id) of the node pool to set\nmanagement properties. Specified in the format\n'projects/*/locations/*/clusters/*/nodePools/*'.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+/nodePools/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}:setManagement", + "request": { + "$ref": "SetNodePoolManagementRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "setSize": { + "description": "Sets the size of a specific node pool.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}/nodePools/{nodePoolsId}:setSize", + "httpMethod": "POST", + "id": "container.projects.locations.clusters.nodePools.setSize", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name (project, location, cluster, node pool id) of the node pool to set\nsize.\nSpecified in the format 'projects/*/locations/*/clusters/*/nodePools/*'.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+/nodePools/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}:setSize", + "request": { + "$ref": "SetNodePoolSizeRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "update": { + "description": "Updates the version and/or image type of a specific node pool.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}/nodePools/{nodePoolsId}", + "httpMethod": "PUT", + "id": "container.projects.locations.clusters.nodePools.update", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name (project, location, cluster, node pool) of the node pool to update.\nSpecified in the format 'projects/*/locations/*/clusters/*/nodePools/*'.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+/nodePools/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "request": { + "$ref": "UpdateNodePoolRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + } + } + }, + "operations": { + "methods": { + "cancel": { + "description": "Cancels the specified operation.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/operations/{operationsId}:cancel", + "httpMethod": "POST", + "id": "container.projects.locations.operations.cancel", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name (project, location, operation id) of the operation to cancel.\nSpecified in the format 'projects/*/locations/*/operations/*'.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}:cancel", + "request": { + "$ref": "CancelOperationRequest" + }, + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Gets the specified operation.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/operations/{operationsId}", + "httpMethod": "GET", + "id": "container.projects.locations.operations.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name (project, location, operation id) of the operation to get.\nSpecified in the format 'projects/*/locations/*/operations/*'.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + }, + "operationId": { + "description": "Deprecated. The server-assigned `name` of the operation.\nThis field has been deprecated and replaced by the name field.", + "location": "query", + "type": "string" + }, + "projectId": { + "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field has been deprecated and replaced by the name field.", + "location": "query", + "type": "string" + }, + "zone": { + "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the name field.", + "location": "query", + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists all operations in a project in a specific zone or all zones.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/operations", + "httpMethod": "GET", + "id": "container.projects.locations.operations.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "The parent (project and location) where the operations will be listed.\nSpecified in the format 'projects/*/locations/*'.\nLocation \"-\" matches all zones and all regions.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + }, + "projectId": { + "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field has been deprecated and replaced by the parent field.", + "location": "query", + "type": "string" + }, + "zone": { + "description": "Deprecated. The name of the Google Compute Engine [zone](/compute/docs/zones#available)\nto return operations for, or `-` for all zones.\nThis field has been deprecated and replaced by the parent field.", + "location": "query", + "type": "string" + } + }, + "path": "v1/{+parent}/operations", + "response": { + "$ref": "ListOperationsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + } + } + }, + "zones": { + "methods": { + "getServerconfig": { + "description": "Returns configuration info about the Kubernetes Engine service.", + "flatPath": "v1/projects/{projectId}/zones/{zone}/serverconfig", + "httpMethod": "GET", + "id": "container.projects.zones.getServerconfig", + "parameterOrder": [ + "projectId", + "zone" + ], + "parameters": { + "name": { + "description": "The name (project and location) of the server config to get\nSpecified in the format 'projects/*/locations/*'.", + "location": "query", + "type": "string" + }, + "projectId": { + "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + }, + "zone": { + "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) to return operations for.\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/projects/{projectId}/zones/{zone}/serverconfig", + "response": { + "$ref": "ServerConfig" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + }, + "resources": { + "clusters": { + "methods": { + "addons": { + "description": "Sets the addons of a specific cluster.", + "flatPath": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/addons", + "httpMethod": "POST", + "id": "container.projects.zones.clusters.addons", + "parameterOrder": [ + "projectId", + "zone", + "clusterId" + ], + "parameters": { + "clusterId": { + "description": "Deprecated. The name of the cluster to upgrade.\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + }, + "projectId": { + "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + }, + "zone": { + "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/addons", + "request": { + "$ref": "SetAddonsConfigRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "completeIpRotation": { + "description": "Completes master IP rotation.", + "flatPath": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}:completeIpRotation", + "httpMethod": "POST", + "id": "container.projects.zones.clusters.completeIpRotation", + "parameterOrder": [ + "projectId", + "zone", + "clusterId" + ], + "parameters": { + "clusterId": { + "description": "Deprecated. The name of the cluster.\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + }, + "projectId": { + "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://developers.google.com/console/help/new/#projectnumber).\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + }, + "zone": { + "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}:completeIpRotation", + "request": { + "$ref": "CompleteIPRotationRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "create": { + "description": "Creates a cluster, consisting of the specified number and type of Google\nCompute Engine instances.\n\nBy default, the cluster is created in the project's\n[default network](/compute/docs/networks-and-firewalls#networks).\n\nOne firewall is added for the cluster. After cluster creation,\nthe cluster creates routes for each node to allow the containers\non that node to communicate with all other instances in the\ncluster.\n\nFinally, an entry is added to the project's global metadata indicating\nwhich CIDR range is being used by the cluster.", + "flatPath": "v1/projects/{projectId}/zones/{zone}/clusters", + "httpMethod": "POST", + "id": "container.projects.zones.clusters.create", + "parameterOrder": [ + "projectId", + "zone" + ], + "parameters": { + "projectId": { + "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field has been deprecated and replaced by the parent field.", + "location": "path", + "required": true, + "type": "string" + }, + "zone": { + "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the parent field.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/projects/{projectId}/zones/{zone}/clusters", + "request": { + "$ref": "CreateClusterRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Deletes the cluster, including the Kubernetes endpoint and all worker\nnodes.\n\nFirewalls and routes that were configured during cluster creation\nare also deleted.\n\nOther Google Compute Engine resources that might be in use by the cluster\n(e.g. load balancer resources) will not be deleted if they weren't present\nat the initial create time.", + "flatPath": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}", + "httpMethod": "DELETE", + "id": "container.projects.zones.clusters.delete", + "parameterOrder": [ + "projectId", + "zone", + "clusterId" + ], + "parameters": { + "clusterId": { + "description": "Deprecated. The name of the cluster to delete.\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + }, + "name": { + "description": "The name (project, location, cluster) of the cluster to delete.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", + "location": "query", + "type": "string" + }, + "projectId": { + "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + }, + "zone": { + "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Gets the details of a specific cluster.", + "flatPath": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}", + "httpMethod": "GET", + "id": "container.projects.zones.clusters.get", + "parameterOrder": [ + "projectId", + "zone", + "clusterId" + ], + "parameters": { + "clusterId": { + "description": "Deprecated. The name of the cluster to retrieve.\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + }, + "name": { + "description": "The name (project, location, cluster) of the cluster to retrieve.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", + "location": "query", + "type": "string" + }, + "projectId": { + "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + }, + "zone": { + "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}", + "response": { + "$ref": "Cluster" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "legacyAbac": { + "description": "Enables or disables the ABAC authorization mechanism on a cluster.", + "flatPath": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/legacyAbac", + "httpMethod": "POST", + "id": "container.projects.zones.clusters.legacyAbac", + "parameterOrder": [ + "projectId", + "zone", + "clusterId" + ], + "parameters": { + "clusterId": { + "description": "Deprecated. The name of the cluster to update.\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + }, + "projectId": { + "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + }, + "zone": { + "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/legacyAbac", + "request": { + "$ref": "SetLegacyAbacRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists all clusters owned by a project in either the specified zone or all\nzones.", + "flatPath": "v1/projects/{projectId}/zones/{zone}/clusters", + "httpMethod": "GET", + "id": "container.projects.zones.clusters.list", + "parameterOrder": [ + "projectId", + "zone" + ], + "parameters": { + "parent": { + "description": "The parent (project and location) where the clusters will be listed.\nSpecified in the format 'projects/*/locations/*'.\nLocation \"-\" matches all zones and all regions.", + "location": "query", + "type": "string" + }, + "projectId": { + "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field has been deprecated and replaced by the parent field.", + "location": "path", + "required": true, + "type": "string" + }, + "zone": { + "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides, or \"-\" for all zones.\nThis field has been deprecated and replaced by the parent field.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/projects/{projectId}/zones/{zone}/clusters", + "response": { + "$ref": "ListClustersResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "locations": { + "description": "Sets the locations of a specific cluster.", + "flatPath": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/locations", + "httpMethod": "POST", + "id": "container.projects.zones.clusters.locations", + "parameterOrder": [ + "projectId", + "zone", + "clusterId" + ], + "parameters": { + "clusterId": { + "description": "Deprecated. The name of the cluster to upgrade.\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + }, + "projectId": { + "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + }, + "zone": { + "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/locations", + "request": { + "$ref": "SetLocationsRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "logging": { + "description": "Sets the logging service of a specific cluster.", + "flatPath": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/logging", + "httpMethod": "POST", + "id": "container.projects.zones.clusters.logging", + "parameterOrder": [ + "projectId", + "zone", + "clusterId" + ], + "parameters": { + "clusterId": { + "description": "Deprecated. The name of the cluster to upgrade.\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + }, + "projectId": { + "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + }, + "zone": { + "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/logging", + "request": { + "$ref": "SetLoggingServiceRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "master": { + "description": "Updates the master of a specific cluster.", + "flatPath": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/master", + "httpMethod": "POST", + "id": "container.projects.zones.clusters.master", + "parameterOrder": [ + "projectId", + "zone", + "clusterId" + ], + "parameters": { + "clusterId": { + "description": "Deprecated. The name of the cluster to upgrade.\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + }, + "projectId": { + "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + }, + "zone": { + "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/master", + "request": { + "$ref": "UpdateMasterRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "monitoring": { + "description": "Sets the monitoring service of a specific cluster.", + "flatPath": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/monitoring", + "httpMethod": "POST", + "id": "container.projects.zones.clusters.monitoring", + "parameterOrder": [ + "projectId", + "zone", + "clusterId" + ], + "parameters": { + "clusterId": { + "description": "Deprecated. The name of the cluster to upgrade.\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + }, + "projectId": { + "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + }, + "zone": { + "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/monitoring", + "request": { + "$ref": "SetMonitoringServiceRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "resourceLabels": { + "description": "Sets labels on a cluster.", + "flatPath": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/resourceLabels", + "httpMethod": "POST", + "id": "container.projects.zones.clusters.resourceLabels", + "parameterOrder": [ + "projectId", + "zone", + "clusterId" + ], + "parameters": { + "clusterId": { + "description": "Deprecated. The name of the cluster.\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + }, + "projectId": { + "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://developers.google.com/console/help/new/#projectnumber).\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + }, + "zone": { + "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/resourceLabels", + "request": { + "$ref": "SetLabelsRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "setMaintenancePolicy": { + "description": "Sets the maintenance policy for a cluster.", + "flatPath": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}:setMaintenancePolicy", + "httpMethod": "POST", + "id": "container.projects.zones.clusters.setMaintenancePolicy", + "parameterOrder": [ + "projectId", + "zone", + "clusterId" + ], + "parameters": { + "clusterId": { + "description": "The name of the cluster to update.", + "location": "path", + "required": true, + "type": "string" + }, + "projectId": { + "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).", + "location": "path", + "required": true, + "type": "string" + }, + "zone": { + "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}:setMaintenancePolicy", + "request": { + "$ref": "SetMaintenancePolicyRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "setMasterAuth": { + "description": "Used to set master auth materials. Currently supports :-\nChanging the admin password of a specific cluster.\nThis can be either via password generation or explicitly set the password.", + "flatPath": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}:setMasterAuth", + "httpMethod": "POST", + "id": "container.projects.zones.clusters.setMasterAuth", + "parameterOrder": [ + "projectId", + "zone", + "clusterId" + ], + "parameters": { + "clusterId": { + "description": "Deprecated. The name of the cluster to upgrade.\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + }, + "projectId": { + "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + }, + "zone": { + "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}:setMasterAuth", + "request": { + "$ref": "SetMasterAuthRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "setNetworkPolicy": { + "description": "Enables/Disables Network Policy for a cluster.", + "flatPath": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}:setNetworkPolicy", + "httpMethod": "POST", + "id": "container.projects.zones.clusters.setNetworkPolicy", + "parameterOrder": [ + "projectId", + "zone", + "clusterId" + ], + "parameters": { + "clusterId": { + "description": "Deprecated. The name of the cluster.\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + }, + "projectId": { + "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://developers.google.com/console/help/new/#projectnumber).\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + }, + "zone": { + "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}:setNetworkPolicy", + "request": { + "$ref": "SetNetworkPolicyRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "startIpRotation": { + "description": "Start master IP rotation.", + "flatPath": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}:startIpRotation", + "httpMethod": "POST", + "id": "container.projects.zones.clusters.startIpRotation", + "parameterOrder": [ + "projectId", + "zone", + "clusterId" + ], + "parameters": { + "clusterId": { + "description": "Deprecated. The name of the cluster.\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + }, + "projectId": { + "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://developers.google.com/console/help/new/#projectnumber).\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + }, + "zone": { + "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}:startIpRotation", + "request": { + "$ref": "StartIPRotationRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "update": { + "description": "Updates the settings of a specific cluster.", + "flatPath": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}", + "httpMethod": "PUT", + "id": "container.projects.zones.clusters.update", + "parameterOrder": [ + "projectId", + "zone", + "clusterId" + ], + "parameters": { + "clusterId": { + "description": "Deprecated. The name of the cluster to upgrade.\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + }, + "projectId": { + "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + }, + "zone": { + "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}", + "request": { + "$ref": "UpdateClusterRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + }, + "resources": { + "nodePools": { + "methods": { + "autoscaling": { + "description": "Sets the autoscaling settings of a specific node pool.", + "flatPath": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/nodePools/{nodePoolId}/autoscaling", + "httpMethod": "POST", + "id": "container.projects.zones.clusters.nodePools.autoscaling", + "parameterOrder": [ + "projectId", + "zone", + "clusterId", + "nodePoolId" + ], + "parameters": { + "clusterId": { + "description": "Deprecated. The name of the cluster to upgrade.\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + }, + "nodePoolId": { + "description": "Deprecated. The name of the node pool to upgrade.\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + }, + "projectId": { + "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + }, + "zone": { + "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/nodePools/{nodePoolId}/autoscaling", + "request": { + "$ref": "SetNodePoolAutoscalingRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "create": { + "description": "Creates a node pool for a cluster.", + "flatPath": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/nodePools", + "httpMethod": "POST", + "id": "container.projects.zones.clusters.nodePools.create", + "parameterOrder": [ + "projectId", + "zone", + "clusterId" + ], + "parameters": { + "clusterId": { + "description": "Deprecated. The name of the cluster.\nThis field has been deprecated and replaced by the parent field.", + "location": "path", + "required": true, + "type": "string" + }, + "projectId": { + "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://developers.google.com/console/help/new/#projectnumber).\nThis field has been deprecated and replaced by the parent field.", + "location": "path", + "required": true, + "type": "string" + }, + "zone": { + "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the parent field.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/nodePools", + "request": { + "$ref": "CreateNodePoolRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Deletes a node pool from a cluster.", + "flatPath": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/nodePools/{nodePoolId}", + "httpMethod": "DELETE", + "id": "container.projects.zones.clusters.nodePools.delete", + "parameterOrder": [ + "projectId", + "zone", + "clusterId", + "nodePoolId" + ], + "parameters": { + "clusterId": { + "description": "Deprecated. The name of the cluster.\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + }, + "name": { + "description": "The name (project, location, cluster, node pool id) of the node pool to delete.\nSpecified in the format 'projects/*/locations/*/clusters/*/nodePools/*'.", + "location": "query", + "type": "string" + }, + "nodePoolId": { + "description": "Deprecated. The name of the node pool to delete.\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + }, + "projectId": { + "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://developers.google.com/console/help/new/#projectnumber).\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + }, + "zone": { + "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/nodePools/{nodePoolId}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Retrieves the node pool requested.", + "flatPath": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/nodePools/{nodePoolId}", + "httpMethod": "GET", + "id": "container.projects.zones.clusters.nodePools.get", + "parameterOrder": [ + "projectId", + "zone", + "clusterId", + "nodePoolId" + ], + "parameters": { + "clusterId": { + "description": "Deprecated. The name of the cluster.\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + }, + "name": { + "description": "The name (project, location, cluster, node pool id) of the node pool to get.\nSpecified in the format 'projects/*/locations/*/clusters/*/nodePools/*'.", + "location": "query", + "type": "string" + }, + "nodePoolId": { + "description": "Deprecated. The name of the node pool.\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + }, + "projectId": { + "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://developers.google.com/console/help/new/#projectnumber).\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + }, + "zone": { + "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/nodePools/{nodePoolId}", + "response": { + "$ref": "NodePool" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists the node pools for a cluster.", + "flatPath": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/nodePools", + "httpMethod": "GET", + "id": "container.projects.zones.clusters.nodePools.list", + "parameterOrder": [ + "projectId", + "zone", + "clusterId" + ], + "parameters": { + "clusterId": { + "description": "Deprecated. The name of the cluster.\nThis field has been deprecated and replaced by the parent field.", + "location": "path", + "required": true, + "type": "string" + }, + "parent": { + "description": "The parent (project, location, cluster id) where the node pools will be listed.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", + "location": "query", + "type": "string" + }, + "projectId": { + "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://developers.google.com/console/help/new/#projectnumber).\nThis field has been deprecated and replaced by the parent field.", + "location": "path", + "required": true, + "type": "string" + }, + "zone": { + "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the parent field.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/nodePools", + "response": { + "$ref": "ListNodePoolsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "rollback": { + "description": "Roll back the previously Aborted or Failed NodePool upgrade.\nThis will be an no-op if the last upgrade successfully completed.", + "flatPath": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/nodePools/{nodePoolId}:rollback", + "httpMethod": "POST", + "id": "container.projects.zones.clusters.nodePools.rollback", + "parameterOrder": [ + "projectId", + "zone", + "clusterId", + "nodePoolId" + ], + "parameters": { + "clusterId": { + "description": "Deprecated. The name of the cluster to rollback.\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + }, + "nodePoolId": { + "description": "Deprecated. The name of the node pool to rollback.\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + }, + "projectId": { + "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + }, + "zone": { + "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/nodePools/{nodePoolId}:rollback", + "request": { + "$ref": "RollbackNodePoolUpgradeRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "setManagement": { + "description": "Sets the NodeManagement options for a node pool.", + "flatPath": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/nodePools/{nodePoolId}/setManagement", + "httpMethod": "POST", + "id": "container.projects.zones.clusters.nodePools.setManagement", + "parameterOrder": [ + "projectId", + "zone", + "clusterId", + "nodePoolId" + ], + "parameters": { + "clusterId": { + "description": "Deprecated. The name of the cluster to update.\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + }, + "nodePoolId": { + "description": "Deprecated. The name of the node pool to update.\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + }, + "projectId": { + "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + }, + "zone": { + "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/nodePools/{nodePoolId}/setManagement", + "request": { + "$ref": "SetNodePoolManagementRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "setSize": { + "description": "Sets the size of a specific node pool.", + "flatPath": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/nodePools/{nodePoolId}/setSize", + "httpMethod": "POST", + "id": "container.projects.zones.clusters.nodePools.setSize", + "parameterOrder": [ + "projectId", + "zone", + "clusterId", + "nodePoolId" + ], + "parameters": { + "clusterId": { + "description": "Deprecated. The name of the cluster to update.\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + }, + "nodePoolId": { + "description": "Deprecated. The name of the node pool to update.\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + }, + "projectId": { + "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + }, + "zone": { + "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/nodePools/{nodePoolId}/setSize", + "request": { + "$ref": "SetNodePoolSizeRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "update": { + "description": "Updates the version and/or image type of a specific node pool.", + "flatPath": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/nodePools/{nodePoolId}/update", + "httpMethod": "POST", + "id": "container.projects.zones.clusters.nodePools.update", + "parameterOrder": [ + "projectId", + "zone", + "clusterId", + "nodePoolId" + ], + "parameters": { + "clusterId": { + "description": "Deprecated. The name of the cluster to upgrade.\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + }, + "nodePoolId": { + "description": "Deprecated. The name of the node pool to upgrade.\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + }, + "projectId": { + "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + }, + "zone": { + "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/nodePools/{nodePoolId}/update", + "request": { + "$ref": "UpdateNodePoolRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + } + } + }, + "operations": { + "methods": { + "cancel": { + "description": "Cancels the specified operation.", + "flatPath": "v1/projects/{projectId}/zones/{zone}/operations/{operationId}:cancel", + "httpMethod": "POST", + "id": "container.projects.zones.operations.cancel", + "parameterOrder": [ + "projectId", + "zone", + "operationId" + ], + "parameters": { + "operationId": { + "description": "Deprecated. The server-assigned `name` of the operation.\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + }, + "projectId": { + "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + }, + "zone": { + "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the operation resides.\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/projects/{projectId}/zones/{zone}/operations/{operationId}:cancel", + "request": { + "$ref": "CancelOperationRequest" + }, + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Gets the specified operation.", + "flatPath": "v1/projects/{projectId}/zones/{zone}/operations/{operationId}", + "httpMethod": "GET", + "id": "container.projects.zones.operations.get", + "parameterOrder": [ + "projectId", + "zone", + "operationId" + ], + "parameters": { + "name": { + "description": "The name (project, location, operation id) of the operation to get.\nSpecified in the format 'projects/*/locations/*/operations/*'.", + "location": "query", + "type": "string" + }, + "operationId": { + "description": "Deprecated. The server-assigned `name` of the operation.\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + }, + "projectId": { + "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + }, + "zone": { + "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/projects/{projectId}/zones/{zone}/operations/{operationId}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists all operations in a project in a specific zone or all zones.", + "flatPath": "v1/projects/{projectId}/zones/{zone}/operations", + "httpMethod": "GET", + "id": "container.projects.zones.operations.list", + "parameterOrder": [ + "projectId", + "zone" + ], + "parameters": { + "parent": { + "description": "The parent (project and location) where the operations will be listed.\nSpecified in the format 'projects/*/locations/*'.\nLocation \"-\" matches all zones and all regions.", + "location": "query", + "type": "string" + }, + "projectId": { + "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field has been deprecated and replaced by the parent field.", + "location": "path", + "required": true, + "type": "string" + }, + "zone": { + "description": "Deprecated. The name of the Google Compute Engine [zone](/compute/docs/zones#available)\nto return operations for, or `-` for all zones.\nThis field has been deprecated and replaced by the parent field.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/projects/{projectId}/zones/{zone}/operations", + "response": { + "$ref": "ListOperationsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + } + } + } + } + } + }, + "revision": "20180308", + "rootUrl": "https://container.googleapis.com/", "schemas": { - "SetLabelsRequest": { - "description": "SetLabelsRequest sets the Google Cloud Platform labels on a Google Container\nEngine cluster, which will in turn set them for Google Compute Engine\nresources used by that cluster", - "type": "object", + "AcceleratorConfig": { + "description": "AcceleratorConfig represents a Hardware Accelerator request.", + "id": "AcceleratorConfig", "properties": { - "labelFingerprint": { - "description": "The fingerprint of the previous set of labels for this resource,\nused to detect conflicts. The fingerprint is initially generated by\nKubernetes Engine and changes after every request to modify or update\nlabels. You must always provide an up-to-date fingerprint hash when\nupdating or changing labels. Make a \u003ccode\u003eget()\u003c/code\u003e request to the\nresource to get the latest fingerprint.", + "acceleratorCount": { + "description": "The number of the accelerator cards exposed to an instance.", + "format": "int64", "type": "string" }, + "acceleratorType": { + "description": "The accelerator type resource name. List of supported accelerators\n[here](/compute/docs/gpus/#Introduction)", + "type": "string" + } + }, + "type": "object" + }, + "AddonsConfig": { + "description": "Configuration for the addons that can be automatically spun up in the\ncluster, enabling additional functionality.", + "id": "AddonsConfig", + "properties": { + "horizontalPodAutoscaling": { + "$ref": "HorizontalPodAutoscaling", + "description": "Configuration for the horizontal pod autoscaling feature, which\nincreases or decreases the number of replica pods a replication controller\nhas based on the resource usage of the existing pods." + }, + "httpLoadBalancing": { + "$ref": "HttpLoadBalancing", + "description": "Configuration for the HTTP (L7) load balancing controller addon, which\nmakes it easy to set up HTTP load balancers for services in a cluster." + }, + "kubernetesDashboard": { + "$ref": "KubernetesDashboard", + "description": "Configuration for the Kubernetes Dashboard." + }, + "networkPolicyConfig": { + "$ref": "NetworkPolicyConfig", + "description": "Configuration for NetworkPolicy. This only tracks whether the addon\nis enabled or not on the Master, it does not track whether network policy\nis enabled for the nodes." + } + }, + "type": "object" + }, + "AutoUpgradeOptions": { + "description": "AutoUpgradeOptions defines the set of options for the user to control how\nthe Auto Upgrades will proceed.", + "id": "AutoUpgradeOptions", + "properties": { + "autoUpgradeStartTime": { + "description": "[Output only] This field is set when upgrades are about to commence\nwith the approximate start time for the upgrades, in\n[RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.", + "type": "string" + }, + "description": { + "description": "[Output only] This field is set when upgrades are about to commence\nwith the description of the upgrade.", + "type": "string" + } + }, + "type": "object" + }, + "CancelOperationRequest": { + "description": "CancelOperationRequest cancels a single operation.", + "id": "CancelOperationRequest", + "properties": { + "name": { + "description": "The name (project, location, operation id) of the operation to cancel.\nSpecified in the format 'projects/*/locations/*/operations/*'.", + "type": "string" + }, + "operationId": { + "description": "Deprecated. The server-assigned `name` of the operation.\nThis field has been deprecated and replaced by the name field.", + "type": "string" + }, + "projectId": { + "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field has been deprecated and replaced by the name field.", + "type": "string" + }, + "zone": { + "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the operation resides.\nThis field has been deprecated and replaced by the name field.", + "type": "string" + } + }, + "type": "object" + }, + "CidrBlock": { + "description": "CidrBlock contains an optional name and one CIDR block.", + "id": "CidrBlock", + "properties": { + "cidrBlock": { + "description": "cidr_block must be specified in CIDR notation.", + "type": "string" + }, + "displayName": { + "description": "display_name is an optional field for users to identify CIDR blocks.", + "type": "string" + } + }, + "type": "object" + }, + "ClientCertificateConfig": { + "description": "Configuration for client certificates on the cluster.", + "id": "ClientCertificateConfig", + "properties": { + "issueClientCertificate": { + "description": "Issue a client certificate.", + "type": "boolean" + } + }, + "type": "object" + }, + "Cluster": { + "description": "A Google Kubernetes Engine cluster.", + "id": "Cluster", + "properties": { + "addonsConfig": { + "$ref": "AddonsConfig", + "description": "Configurations for the various addons available to run in the cluster." + }, + "clusterIpv4Cidr": { + "description": "The IP address range of the container pods in this cluster, in\n[CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)\nnotation (e.g. `10.96.0.0/14`). Leave blank to have\none automatically chosen or specify a `/14` block in `10.0.0.0/8`.", + "type": "string" + }, + "createTime": { + "description": "[Output only] The time the cluster was created, in\n[RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.", + "type": "string" + }, + "currentMasterVersion": { + "description": "[Output only] The current software version of the master endpoint.", + "type": "string" + }, + "currentNodeCount": { + "description": "[Output only] The number of nodes currently in the cluster.", + "format": "int32", + "type": "integer" + }, + "currentNodeVersion": { + "description": "[Output only] The current version of the node software components.\nIf they are currently at multiple versions because they're in the process\nof being upgraded, this reflects the minimum version of all nodes.", + "type": "string" + }, + "description": { + "description": "An optional description of this cluster.", + "type": "string" + }, + "enableKubernetesAlpha": { + "description": "Kubernetes alpha features are enabled on this cluster. This includes alpha\nAPI groups (e.g. v1alpha1) and features that may not be production ready in\nthe kubernetes version of the master and nodes.\nThe cluster has no SLA for uptime and master/node upgrades are disabled.\nAlpha enabled clusters are automatically deleted thirty days after\ncreation.", + "type": "boolean" + }, + "endpoint": { + "description": "[Output only] The IP address of this cluster's master endpoint.\nThe endpoint can be accessed from the internet at\n`https://username:password@endpoint/`.\n\nSee the `masterAuth` property of this resource for username and\npassword information.", + "type": "string" + }, + "expireTime": { + "description": "[Output only] The time the cluster will be automatically\ndeleted in [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.", + "type": "string" + }, + "initialClusterVersion": { + "description": "The initial Kubernetes version for this cluster. Valid versions are those\nfound in validMasterVersions returned by getServerConfig. The version can\nbe upgraded over time; such upgrades are reflected in\ncurrentMasterVersion and currentNodeVersion.\n\nUsers may specify either explicit versions offered by\nKubernetes Engine or version aliases, which have the following behavior:\n\n- \"latest\": picks the highest valid Kubernetes version\n- \"1.X\": picks the highest valid patch+gke.N patch in the 1.X version\n- \"1.X.Y\": picks the highest valid gke.N patch in the 1.X.Y version\n- \"1.X.Y-gke.N\": picks an explicit Kubernetes version\n- \"\",\"-\": picks the default Kubernetes version", + "type": "string" + }, + "initialNodeCount": { + "description": "The number of nodes to create in this cluster. You must ensure that your\nCompute Engine \u003ca href=\"/compute/docs/resource-quotas\"\u003eresource quota\u003c/a\u003e\nis sufficient for this number of instances. You must also have available\nfirewall and routes quota.\nFor requests, this field should only be used in lieu of a\n\"node_pool\" object, since this configuration (along with the\n\"node_config\") will be used to create a \"NodePool\" object with an\nauto-generated name. Do not use this and a node_pool at the same time.", + "format": "int32", + "type": "integer" + }, + "instanceGroupUrls": { + "description": "Deprecated. Use node_pools.instance_group_urls.", + "items": { + "type": "string" + }, + "type": "array" + }, + "ipAllocationPolicy": { + "$ref": "IPAllocationPolicy", + "description": "Configuration for cluster IP allocation." + }, + "labelFingerprint": { + "description": "The fingerprint of the set of labels for this cluster.", + "type": "string" + }, + "legacyAbac": { + "$ref": "LegacyAbac", + "description": "Configuration for the legacy ABAC authorization mode." + }, + "location": { + "description": "[Output only] The name of the Google Compute Engine\n[zone](/compute/docs/regions-zones/regions-zones#available) or\n[region](/compute/docs/regions-zones/regions-zones#available) in which\nthe cluster resides.", + "type": "string" + }, + "locations": { + "description": "The list of Google Compute Engine\n[locations](/compute/docs/zones#available) in which the cluster's nodes\nshould be located.", + "items": { + "type": "string" + }, + "type": "array" + }, + "loggingService": { + "description": "The logging service the cluster should use to write logs.\nCurrently available options:\n\n* `logging.googleapis.com` - the Google Cloud Logging service.\n* `none` - no logs will be exported from the cluster.\n* if left as an empty string,`logging.googleapis.com` will be used.", + "type": "string" + }, + "maintenancePolicy": { + "$ref": "MaintenancePolicy", + "description": "Configure the maintenance policy for this cluster." + }, + "masterAuth": { + "$ref": "MasterAuth", + "description": "The authentication information for accessing the master endpoint." + }, + "masterAuthorizedNetworksConfig": { + "$ref": "MasterAuthorizedNetworksConfig", + "description": "Master authorized networks is a Beta feature.\nThe configuration options for master authorized networks feature." + }, + "monitoringService": { + "description": "The monitoring service the cluster should use to write metrics.\nCurrently available options:\n\n* `monitoring.googleapis.com` - the Google Cloud Monitoring service.\n* `none` - no metrics will be exported from the cluster.\n* if left as an empty string, `monitoring.googleapis.com` will be used.", + "type": "string" + }, + "name": { + "description": "The name of this cluster. The name must be unique within this project\nand zone, and can be up to 40 characters with the following restrictions:\n\n* Lowercase letters, numbers, and hyphens only.\n* Must start with a letter.\n* Must end with a number or a letter.", + "type": "string" + }, + "network": { + "description": "The name of the Google Compute Engine\n[network](/compute/docs/networks-and-firewalls#networks) to which the\ncluster is connected. If left unspecified, the `default` network\nwill be used.", + "type": "string" + }, + "networkPolicy": { + "$ref": "NetworkPolicy", + "description": "Configuration options for the NetworkPolicy feature." + }, + "nodeConfig": { + "$ref": "NodeConfig", + "description": "Parameters used in creating the cluster's nodes.\nSee `nodeConfig` for the description of its properties.\nFor requests, this field should only be used in lieu of a\n\"node_pool\" object, since this configuration (along with the\n\"initial_node_count\") will be used to create a \"NodePool\" object with an\nauto-generated name. Do not use this and a node_pool at the same time.\nFor responses, this field will be populated with the node configuration of\nthe first node pool.\n\nIf unspecified, the defaults are used." + }, + "nodeIpv4CidrSize": { + "description": "[Output only] The size of the address space on each node for hosting\ncontainers. This is provisioned from within the `container_ipv4_cidr`\nrange.", + "format": "int32", + "type": "integer" + }, + "nodePools": { + "description": "The node pools associated with this cluster.\nThis field should not be set if \"node_config\" or \"initial_node_count\" are\nspecified.", + "items": { + "$ref": "NodePool" + }, + "type": "array" + }, "resourceLabels": { "additionalProperties": { "type": "string" }, - "description": "The labels to set for that cluster.", + "description": "The resource labels for the cluster to use to annotate any related\nGoogle Compute Engine resources.", "type": "object" - } - }, - "id": "SetLabelsRequest" - }, - "NodePool": { - "description": "NodePool contains the name and configuration for a cluster's node pool.\nNode pools are a set of nodes (i.e. VM's), with a common configuration and\nspecification, under the control of the cluster master. They may have a set\nof Kubernetes labels applied to them, which may be used to reference them\nduring pod scheduling. They may also be resized up or down, to accommodate\nthe workload.", - "type": "object", - "properties": { + }, "selfLink": { "description": "[Output only] Server-defined URL for the resource.", "type": "string" }, - "version": { - "description": "The version of the Kubernetes of this node.", + "servicesIpv4Cidr": { + "description": "[Output only] The IP address range of the Kubernetes services in\nthis cluster, in\n[CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)\nnotation (e.g. `1.2.3.4/29`). Service addresses are\ntypically put in the last `/16` from the container CIDR.", "type": "string" }, + "status": { + "description": "[Output only] The current status of this cluster.", + "enum": [ + "STATUS_UNSPECIFIED", + "PROVISIONING", + "RUNNING", + "RECONCILING", + "STOPPING", + "ERROR", + "DEGRADED" + ], + "enumDescriptions": [ + "Not set.", + "The PROVISIONING state indicates the cluster is being created.", + "The RUNNING state indicates the cluster has been created and is fully\nusable.", + "The RECONCILING state indicates that some work is actively being done on\nthe cluster, such as upgrading the master or node software. Details can\nbe found in the `statusMessage` field.", + "The STOPPING state indicates the cluster is being deleted.", + "The ERROR state indicates the cluster may be unusable. Details\ncan be found in the `statusMessage` field.", + "The DEGRADED state indicates the cluster requires user action to restore\nfull functionality. Details can be found in the `statusMessage` field." + ], + "type": "string" + }, + "statusMessage": { + "description": "[Output only] Additional information about the current status of this\ncluster, if available.", + "type": "string" + }, + "subnetwork": { + "description": "The name of the Google Compute Engine\n[subnetwork](/compute/docs/subnetworks) to which the\ncluster is connected.", + "type": "string" + }, + "zone": { + "description": "[Output only] The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field is deprecated, use location instead.", + "type": "string" + } + }, + "type": "object" + }, + "ClusterUpdate": { + "description": "ClusterUpdate describes an update to the cluster. Exactly one update can\nbe applied to a cluster with each request, so at most one field can be\nprovided.", + "id": "ClusterUpdate", + "properties": { + "desiredAddonsConfig": { + "$ref": "AddonsConfig", + "description": "Configurations for the various addons available to run in the cluster." + }, + "desiredImageType": { + "description": "The desired image type for the node pool.\nNOTE: Set the \"desired_node_pool\" field as well.", + "type": "string" + }, + "desiredLocations": { + "description": "The desired list of Google Compute Engine\n[locations](/compute/docs/zones#available) in which the cluster's nodes\nshould be located. Changing the locations a cluster is in will result\nin nodes being either created or removed from the cluster, depending on\nwhether locations are being added or removed.\n\nThis list must always include the cluster's primary zone.", + "items": { + "type": "string" + }, + "type": "array" + }, + "desiredMasterAuthorizedNetworksConfig": { + "$ref": "MasterAuthorizedNetworksConfig", + "description": "Master authorized networks is a Beta feature.\nThe desired configuration options for master authorized networks feature." + }, + "desiredMasterVersion": { + "description": "The Kubernetes version to change the master to.\n\nUsers may specify either explicit versions offered by\nKubernetes Engine or version aliases, which have the following behavior:\n\n- \"latest\": picks the highest valid Kubernetes version\n- \"1.X\": picks the highest valid patch+gke.N patch in the 1.X version\n- \"1.X.Y\": picks the highest valid gke.N patch in the 1.X.Y version\n- \"1.X.Y-gke.N\": picks an explicit Kubernetes version\n- \"-\": picks the default Kubernetes version", + "type": "string" + }, + "desiredMonitoringService": { + "description": "The monitoring service the cluster should use to write metrics.\nCurrently available options:\n\n* \"monitoring.googleapis.com\" - the Google Cloud Monitoring service\n* \"none\" - no metrics will be exported from the cluster", + "type": "string" + }, + "desiredNodePoolAutoscaling": { + "$ref": "NodePoolAutoscaling", + "description": "Autoscaler configuration for the node pool specified in\ndesired_node_pool_id. If there is only one pool in the\ncluster and desired_node_pool_id is not provided then\nthe change applies to that single node pool." + }, + "desiredNodePoolId": { + "description": "The node pool to be upgraded. This field is mandatory if\n\"desired_node_version\", \"desired_image_family\" or\n\"desired_node_pool_autoscaling\" is specified and there is more than one\nnode pool on the cluster.", + "type": "string" + }, + "desiredNodeVersion": { + "description": "The Kubernetes version to change the nodes to (typically an\nupgrade).\n\nUsers may specify either explicit versions offered by\nKubernetes Engine or version aliases, which have the following behavior:\n\n- \"latest\": picks the highest valid Kubernetes version\n- \"1.X\": picks the highest valid patch+gke.N patch in the 1.X version\n- \"1.X.Y\": picks the highest valid gke.N patch in the 1.X.Y version\n- \"1.X.Y-gke.N\": picks an explicit Kubernetes version\n- \"-\": picks the Kubernetes master version", + "type": "string" + } + }, + "type": "object" + }, + "CompleteIPRotationRequest": { + "description": "CompleteIPRotationRequest moves the cluster master back into single-IP mode.", + "id": "CompleteIPRotationRequest", + "properties": { + "clusterId": { + "description": "Deprecated. The name of the cluster.\nThis field has been deprecated and replaced by the name field.", + "type": "string" + }, + "name": { + "description": "The name (project, location, cluster id) of the cluster to complete IP rotation.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", + "type": "string" + }, + "projectId": { + "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://developers.google.com/console/help/new/#projectnumber).\nThis field has been deprecated and replaced by the name field.", + "type": "string" + }, + "zone": { + "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the name field.", + "type": "string" + } + }, + "type": "object" + }, + "CreateClusterRequest": { + "description": "CreateClusterRequest creates a cluster.", + "id": "CreateClusterRequest", + "properties": { + "cluster": { + "$ref": "Cluster", + "description": "A [cluster\nresource](/container-engine/reference/rest/v1/projects.zones.clusters)" + }, + "parent": { + "description": "The parent (project and location) where the cluster will be created.\nSpecified in the format 'projects/*/locations/*'.", + "type": "string" + }, + "projectId": { + "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field has been deprecated and replaced by the parent field.", + "type": "string" + }, + "zone": { + "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the parent field.", + "type": "string" + } + }, + "type": "object" + }, + "CreateNodePoolRequest": { + "description": "CreateNodePoolRequest creates a node pool for a cluster.", + "id": "CreateNodePoolRequest", + "properties": { + "clusterId": { + "description": "Deprecated. The name of the cluster.\nThis field has been deprecated and replaced by the parent field.", + "type": "string" + }, + "nodePool": { + "$ref": "NodePool", + "description": "The node pool to create." + }, + "parent": { + "description": "The parent (project, location, cluster id) where the node pool will be created.\nSpecified in the format 'projects/*/locations/*/clusters/*/nodePools/*'.", + "type": "string" + }, + "projectId": { + "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://developers.google.com/console/help/new/#projectnumber).\nThis field has been deprecated and replaced by the parent field.", + "type": "string" + }, + "zone": { + "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the parent field.", + "type": "string" + } + }, + "type": "object" + }, + "DailyMaintenanceWindow": { + "description": "Time window specified for daily maintenance operations.", + "id": "DailyMaintenanceWindow", + "properties": { + "duration": { + "description": "[Output only] Duration of the time window, automatically chosen to be\nsmallest possible in the given scenario.\nDuration will be in [RFC3339](https://www.ietf.org/rfc/rfc3339.txt)\nformat \"PTnHnMnS\".", + "type": "string" + }, + "startTime": { + "description": "Time within the maintenance window to start the maintenance operations.\nTime format should be in [RFC3339](https://www.ietf.org/rfc/rfc3339.txt)\nformat \"HH:MM”, where HH : [00-23] and MM : [00-59] GMT.", + "type": "string" + } + }, + "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" + }, + "HorizontalPodAutoscaling": { + "description": "Configuration options for the horizontal pod autoscaling feature, which\nincreases or decreases the number of replica pods a replication controller\nhas based on the resource usage of the existing pods.", + "id": "HorizontalPodAutoscaling", + "properties": { + "disabled": { + "description": "Whether the Horizontal Pod Autoscaling feature is enabled in the cluster.\nWhen enabled, it ensures that a Heapster pod is running in the cluster,\nwhich is also used by the Cloud Monitoring service.", + "type": "boolean" + } + }, + "type": "object" + }, + "HttpLoadBalancing": { + "description": "Configuration options for the HTTP (L7) load balancing controller addon,\nwhich makes it easy to set up HTTP load balancers for services in a cluster.", + "id": "HttpLoadBalancing", + "properties": { + "disabled": { + "description": "Whether the HTTP Load Balancing controller is enabled in the cluster.\nWhen enabled, it runs a small pod in the cluster that manages the load\nbalancers.", + "type": "boolean" + } + }, + "type": "object" + }, + "IPAllocationPolicy": { + "description": "Configuration for controlling how IPs are allocated in the cluster.", + "id": "IPAllocationPolicy", + "properties": { + "clusterIpv4Cidr": { + "description": "This field is deprecated, use cluster_ipv4_cidr_block.", + "type": "string" + }, + "clusterIpv4CidrBlock": { + "description": "The IP address range for the cluster pod IPs. If this field is set, then\n`cluster.cluster_ipv4_cidr` must be left blank.\n\nThis field is only applicable when `use_ip_aliases` is true.\n\nSet to blank to have a range chosen with the default size.\n\nSet to /netmask (e.g. `/14`) to have a range chosen with a specific\nnetmask.\n\nSet to a\n[CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)\nnotation (e.g. `10.96.0.0/14`) from the RFC-1918 private networks (e.g.\n`10.0.0.0/8`, `172.16.0.0/12`, `192.168.0.0/16`) to pick a specific range\nto use.", + "type": "string" + }, + "clusterSecondaryRangeName": { + "description": "The name of the secondary range to be used for the cluster CIDR\nblock. The secondary range will be used for pod IP\naddresses. This must be an existing secondary range associated\nwith the cluster subnetwork.\n\nThis field is only applicable with use_ip_aliases is true and\ncreate_subnetwork is false.", + "type": "string" + }, + "createSubnetwork": { + "description": "Whether a new subnetwork will be created automatically for the cluster.\n\nThis field is only applicable when `use_ip_aliases` is true.", + "type": "boolean" + }, + "nodeIpv4Cidr": { + "description": "This field is deprecated, use node_ipv4_cidr_block.", + "type": "string" + }, + "nodeIpv4CidrBlock": { + "description": "The IP address range of the instance IPs in this cluster.\n\nThis is applicable only if `create_subnetwork` is true.\n\nSet to blank to have a range chosen with the default size.\n\nSet to /netmask (e.g. `/14`) to have a range chosen with a specific\nnetmask.\n\nSet to a\n[CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)\nnotation (e.g. `10.96.0.0/14`) from the RFC-1918 private networks (e.g.\n`10.0.0.0/8`, `172.16.0.0/12`, `192.168.0.0/16`) to pick a specific range\nto use.", + "type": "string" + }, + "servicesIpv4Cidr": { + "description": "This field is deprecated, use services_ipv4_cidr_block.", + "type": "string" + }, + "servicesIpv4CidrBlock": { + "description": "The IP address range of the services IPs in this cluster. If blank, a range\nwill be automatically chosen with the default size.\n\nThis field is only applicable when `use_ip_aliases` is true.\n\nSet to blank to have a range chosen with the default size.\n\nSet to /netmask (e.g. `/14`) to have a range chosen with a specific\nnetmask.\n\nSet to a\n[CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)\nnotation (e.g. `10.96.0.0/14`) from the RFC-1918 private networks (e.g.\n`10.0.0.0/8`, `172.16.0.0/12`, `192.168.0.0/16`) to pick a specific range\nto use.", + "type": "string" + }, + "servicesSecondaryRangeName": { + "description": "The name of the secondary range to be used as for the services\nCIDR block. The secondary range will be used for service\nClusterIPs. This must be an existing secondary range associated\nwith the cluster subnetwork.\n\nThis field is only applicable with use_ip_aliases is true and\ncreate_subnetwork is false.", + "type": "string" + }, + "subnetworkName": { + "description": "A custom subnetwork name to be used if `create_subnetwork` is true. If\nthis field is empty, then an automatic name will be chosen for the new\nsubnetwork.", + "type": "string" + }, + "useIpAliases": { + "description": "Whether alias IPs will be used for pod IPs in the cluster.", + "type": "boolean" + } + }, + "type": "object" + }, + "KubernetesDashboard": { + "description": "Configuration for the Kubernetes Dashboard.", + "id": "KubernetesDashboard", + "properties": { + "disabled": { + "description": "Whether the Kubernetes Dashboard is enabled for this cluster.", + "type": "boolean" + } + }, + "type": "object" + }, + "LegacyAbac": { + "description": "Configuration for the legacy Attribute Based Access Control authorization\nmode.", + "id": "LegacyAbac", + "properties": { + "enabled": { + "description": "Whether the ABAC authorizer is enabled for this cluster. When enabled,\nidentities in the system, including service accounts, nodes, and\ncontrollers, will have statically granted permissions beyond those\nprovided by the RBAC configuration or IAM.", + "type": "boolean" + } + }, + "type": "object" + }, + "ListClustersResponse": { + "description": "ListClustersResponse is the result of ListClustersRequest.", + "id": "ListClustersResponse", + "properties": { + "clusters": { + "description": "A list of clusters in the project in the specified zone, or\nacross all ones.", + "items": { + "$ref": "Cluster" + }, + "type": "array" + }, + "missingZones": { + "description": "If any zones are listed here, the list of clusters returned\nmay be missing those zones.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "ListNodePoolsResponse": { + "description": "ListNodePoolsResponse is the result of ListNodePoolsRequest.", + "id": "ListNodePoolsResponse", + "properties": { + "nodePools": { + "description": "A list of node pools for a cluster.", + "items": { + "$ref": "NodePool" + }, + "type": "array" + } + }, + "type": "object" + }, + "ListOperationsResponse": { + "description": "ListOperationsResponse is the result of ListOperationsRequest.", + "id": "ListOperationsResponse", + "properties": { + "missingZones": { + "description": "If any zones are listed here, the list of operations returned\nmay be missing the operations from those zones.", + "items": { + "type": "string" + }, + "type": "array" + }, + "operations": { + "description": "A list of operations in the project in the specified zone.", + "items": { + "$ref": "Operation" + }, + "type": "array" + } + }, + "type": "object" + }, + "MaintenancePolicy": { + "description": "MaintenancePolicy defines the maintenance policy to be used for the cluster.", + "id": "MaintenancePolicy", + "properties": { + "window": { + "$ref": "MaintenanceWindow", + "description": "Specifies the maintenance window in which maintenance may be performed." + } + }, + "type": "object" + }, + "MaintenanceWindow": { + "description": "MaintenanceWindow defines the maintenance window to be used for the cluster.", + "id": "MaintenanceWindow", + "properties": { + "dailyMaintenanceWindow": { + "$ref": "DailyMaintenanceWindow", + "description": "DailyMaintenanceWindow specifies a daily maintenance operation window." + } + }, + "type": "object" + }, + "MasterAuth": { + "description": "The authentication information for accessing the master endpoint.\nAuthentication can be done using HTTP basic auth or using client\ncertificates.", + "id": "MasterAuth", + "properties": { + "clientCertificate": { + "description": "[Output only] Base64-encoded public certificate used by clients to\nauthenticate to the cluster endpoint.", + "type": "string" + }, + "clientCertificateConfig": { + "$ref": "ClientCertificateConfig", + "description": "Configuration for client certificate authentication on the cluster. If no\nconfiguration is specified, a client certificate is issued." + }, + "clientKey": { + "description": "[Output only] Base64-encoded private key used by clients to authenticate\nto the cluster endpoint.", + "type": "string" + }, + "clusterCaCertificate": { + "description": "[Output only] Base64-encoded public certificate that is the root of\ntrust for the cluster.", + "type": "string" + }, + "password": { + "description": "The password to use for HTTP basic authentication to the master endpoint.\nBecause the master endpoint is open to the Internet, you should create a\nstrong password. If a password is provided for cluster creation, username\nmust be non-empty.", + "type": "string" + }, + "username": { + "description": "The username to use for HTTP basic authentication to the master endpoint.\nFor clusters v1.6.0 and later, you can disable basic authentication by\nproviding an empty username.", + "type": "string" + } + }, + "type": "object" + }, + "MasterAuthorizedNetworksConfig": { + "description": "Master authorized networks is a Beta feature.\nConfiguration options for the master authorized networks feature. Enabled\nmaster authorized networks will disallow all external traffic to access\nKubernetes master through HTTPS except traffic from the given CIDR blocks,\nGoogle Compute Engine Public IPs and Google Prod IPs.", + "id": "MasterAuthorizedNetworksConfig", + "properties": { + "cidrBlocks": { + "description": "cidr_blocks define up to 10 external networks that could access\nKubernetes master through HTTPS.", + "items": { + "$ref": "CidrBlock" + }, + "type": "array" + }, + "enabled": { + "description": "Whether or not master authorized networks is enabled.", + "type": "boolean" + } + }, + "type": "object" + }, + "NetworkPolicy": { + "description": "Configuration options for the NetworkPolicy feature.\nhttps://kubernetes.io/docs/concepts/services-networking/networkpolicies/", + "id": "NetworkPolicy", + "properties": { + "enabled": { + "description": "Whether network policy is enabled on the cluster.", + "type": "boolean" + }, + "provider": { + "description": "The selected network policy provider.", + "enum": [ + "PROVIDER_UNSPECIFIED", + "CALICO" + ], + "enumDescriptions": [ + "Not set", + "Tigera (Calico Felix)." + ], + "type": "string" + } + }, + "type": "object" + }, + "NetworkPolicyConfig": { + "description": "Configuration for NetworkPolicy. This only tracks whether the addon\nis enabled or not on the Master, it does not track whether network policy\nis enabled for the nodes.", + "id": "NetworkPolicyConfig", + "properties": { + "disabled": { + "description": "Whether NetworkPolicy is enabled for this cluster.", + "type": "boolean" + } + }, + "type": "object" + }, + "NodeConfig": { + "description": "Parameters that describe the nodes in a cluster.", + "id": "NodeConfig", + "properties": { + "accelerators": { + "description": "A list of hardware accelerators to be attached to each node.\nSee https://cloud.google.com/compute/docs/gpus for more information about\nsupport for GPUs.", + "items": { + "$ref": "AcceleratorConfig" + }, + "type": "array" + }, + "diskSizeGb": { + "description": "Size of the disk attached to each node, specified in GB.\nThe smallest allowed disk size is 10GB.\n\nIf unspecified, the default disk size is 100GB.", + "format": "int32", + "type": "integer" + }, + "imageType": { + "description": "The image type to use for this node. Note that for a given image type,\nthe latest version of it will be used.", + "type": "string" + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "The map of Kubernetes labels (key/value pairs) to be applied to each node.\nThese will added in addition to any default label(s) that\nKubernetes may apply to the node.\nIn case of conflict in label keys, the applied set may differ depending on\nthe Kubernetes version -- it's best to assume the behavior is undefined\nand conflicts should be avoided.\nFor more information, including usage and the valid values, see:\nhttps://kubernetes.io/docs/concepts/overview/working-with-objects/labels/", + "type": "object" + }, + "localSsdCount": { + "description": "The number of local SSD disks to be attached to the node.\n\nThe limit for this value is dependant upon the maximum number of\ndisks available on a machine per zone. See:\nhttps://cloud.google.com/compute/docs/disks/local-ssd#local_ssd_limits\nfor more information.", + "format": "int32", + "type": "integer" + }, + "machineType": { + "description": "The name of a Google Compute Engine [machine\ntype](/compute/docs/machine-types) (e.g.\n`n1-standard-1`).\n\nIf unspecified, the default machine type is\n`n1-standard-1`.", + "type": "string" + }, + "metadata": { + "additionalProperties": { + "type": "string" + }, + "description": "The metadata key/value pairs assigned to instances in the cluster.\n\nKeys must conform to the regexp [a-zA-Z0-9-_]+ and be less than 128 bytes\nin length. These are reflected as part of a URL in the metadata server.\nAdditionally, to avoid ambiguity, keys must not conflict with any other\nmetadata keys for the project or be one of the reserved keys:\n \"cluster-location\"\n \"cluster-name\"\n \"cluster-uid\"\n \"configure-sh\"\n \"gci-update-strategy\"\n \"gci-ensure-gke-docker\"\n \"instance-template\"\n \"kube-env\"\n \"startup-script\"\n \"user-data\"\n\nValues are free-form strings, and only have meaning as interpreted by\nthe image running in the instance. The only restriction placed on them is\nthat each value's size must be less than or equal to 32 KB.\n\nThe total size of all keys and values must be less than 512 KB.", + "type": "object" + }, + "minCpuPlatform": { + "description": "Minimum CPU platform to be used by this instance. The instance may be\nscheduled on the specified or newer CPU platform. Applicable values are the\nfriendly names of CPU platforms, such as\n\u003ccode\u003eminCpuPlatform: \u0026quot;Intel Haswell\u0026quot;\u003c/code\u003e or\n\u003ccode\u003eminCpuPlatform: \u0026quot;Intel Sandy Bridge\u0026quot;\u003c/code\u003e. For more\ninformation, read [how to specify min CPU platform](https://cloud.google.com/compute/docs/instances/specify-min-cpu-platform)", + "type": "string" + }, + "oauthScopes": { + "description": "The set of Google API scopes to be made available on all of the\nnode VMs under the \"default\" service account.\n\nThe following scopes are recommended, but not required, and by default are\nnot included:\n\n* `https://www.googleapis.com/auth/compute` is required for mounting\npersistent storage on your nodes.\n* `https://www.googleapis.com/auth/devstorage.read_only` is required for\ncommunicating with **gcr.io**\n(the [Google Container Registry](/container-registry/)).\n\nIf unspecified, no scopes are added, unless Cloud Logging or Cloud\nMonitoring are enabled, in which case their required scopes will be added.", + "items": { + "type": "string" + }, + "type": "array" + }, + "preemptible": { + "description": "Whether the nodes are created as preemptible VM instances. See:\nhttps://cloud.google.com/compute/docs/instances/preemptible for more\ninformation about preemptible VM instances.", + "type": "boolean" + }, + "serviceAccount": { + "description": "The Google Cloud Platform Service Account to be used by the node VMs. If\nno Service Account is specified, the \"default\" service account is used.", + "type": "string" + }, + "tags": { + "description": "The list of instance tags applied to all nodes. Tags are used to identify\nvalid sources or targets for network firewalls and are specified by\nthe client during cluster or node pool creation. Each tag within the list\nmust comply with RFC1035.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "NodeManagement": { + "description": "NodeManagement defines the set of node management services turned on for the\nnode pool.", + "id": "NodeManagement", + "properties": { + "autoRepair": { + "description": "A flag that specifies whether the node auto-repair is enabled for the node\npool. If enabled, the nodes in this node pool will be monitored and, if\nthey fail health checks too many times, an automatic repair action will be\ntriggered.", + "type": "boolean" + }, + "autoUpgrade": { + "description": "A flag that specifies whether node auto-upgrade is enabled for the node\npool. If enabled, node auto-upgrade helps keep the nodes in your node pool\nup to date with the latest release version of Kubernetes.", + "type": "boolean" + }, + "upgradeOptions": { + "$ref": "AutoUpgradeOptions", + "description": "Specifies the Auto Upgrade knobs for the node pool." + } + }, + "type": "object" + }, + "NodePool": { + "description": "NodePool contains the name and configuration for a cluster's node pool.\nNode pools are a set of nodes (i.e. VM's), with a common configuration and\nspecification, under the control of the cluster master. They may have a set\nof Kubernetes labels applied to them, which may be used to reference them\nduring pod scheduling. They may also be resized up or down, to accommodate\nthe workload.", + "id": "NodePool", + "properties": { + "autoscaling": { + "$ref": "NodePoolAutoscaling", + "description": "Autoscaler configuration for this NodePool. Autoscaler is enabled\nonly if a valid configuration is present." + }, + "config": { + "$ref": "NodeConfig", + "description": "The node configuration of the pool." + }, + "initialNodeCount": { + "description": "The initial node count for the pool. You must ensure that your\nCompute Engine \u003ca href=\"/compute/docs/resource-quotas\"\u003eresource quota\u003c/a\u003e\nis sufficient for this number of instances. You must also have available\nfirewall and routes quota.", + "format": "int32", + "type": "integer" + }, "instanceGroupUrls": { "description": "[Output only] The resource URLs of the [managed instance\ngroups](/compute/docs/instance-groups/creating-groups-of-managed-instances)\nassociated with this node pool.", - "type": "array", "items": { "type": "string" - } + }, + "type": "array" + }, + "management": { + "$ref": "NodeManagement", + "description": "NodeManagement configuration for this NodePool." + }, + "name": { + "description": "The name of the node pool.", + "type": "string" + }, + "selfLink": { + "description": "[Output only] Server-defined URL for the resource.", + "type": "string" }, "status": { "description": "[Output only] The status of the nodes in this pool instance.", - "type": "string", + "enum": [ + "STATUS_UNSPECIFIED", + "PROVISIONING", + "RUNNING", + "RUNNING_WITH_ERROR", + "RECONCILING", + "STOPPING", + "ERROR" + ], "enumDescriptions": [ "Not set.", "The PROVISIONING state indicates the node pool is being created.", @@ -50,109 +3205,62 @@ "The STOPPING state indicates the node pool is being deleted.", "The ERROR state indicates the node pool may be unusable. Details\ncan be found in the `statusMessage` field." ], - "enum": [ - "STATUS_UNSPECIFIED", - "PROVISIONING", - "RUNNING", - "RUNNING_WITH_ERROR", - "RECONCILING", - "STOPPING", - "ERROR" - ] - }, - "config": { - "$ref": "NodeConfig", - "description": "The node configuration of the pool." + "type": "string" }, "statusMessage": { "description": "[Output only] Additional information about the current status of this\nnode pool instance, if available.", "type": "string" }, - "name": { - "description": "The name of the node pool.", + "version": { + "description": "The version of the Kubernetes of this node.", "type": "string" + } + }, + "type": "object" + }, + "NodePoolAutoscaling": { + "description": "NodePoolAutoscaling contains information required by cluster autoscaler to\nadjust the size of the node pool to the current cluster usage.", + "id": "NodePoolAutoscaling", + "properties": { + "enabled": { + "description": "Is autoscaling enabled for this node pool.", + "type": "boolean" }, - "autoscaling": { - "$ref": "NodePoolAutoscaling", - "description": "Autoscaler configuration for this NodePool. Autoscaler is enabled\nonly if a valid configuration is present." - }, - "initialNodeCount": { - "description": "The initial node count for the pool. You must ensure that your\nCompute Engine \u003ca href=\"/compute/docs/resource-quotas\"\u003eresource quota\u003c/a\u003e\nis sufficient for this number of instances. You must also have available\nfirewall and routes quota.", + "maxNodeCount": { + "description": "Maximum number of nodes in the NodePool. Must be \u003e= min_node_count. There\nhas to enough quota to scale up the cluster.", "format": "int32", "type": "integer" }, - "management": { - "$ref": "NodeManagement", - "description": "NodeManagement configuration for this NodePool." + "minNodeCount": { + "description": "Minimum number of nodes in the NodePool. Must be \u003e= 1 and \u003c=\nmax_node_count.", + "format": "int32", + "type": "integer" } }, - "id": "NodePool" - }, - "NodeManagement": { - "properties": { - "autoUpgrade": { - "description": "A flag that specifies whether node auto-upgrade is enabled for the node\npool. If enabled, node auto-upgrade helps keep the nodes in your node pool\nup to date with the latest release version of Kubernetes.", - "type": "boolean" - }, - "autoRepair": { - "description": "A flag that specifies whether the node auto-repair is enabled for the node\npool. If enabled, the nodes in this node pool will be monitored and, if\nthey fail health checks too many times, an automatic repair action will be\ntriggered.", - "type": "boolean" - }, - "upgradeOptions": { - "description": "Specifies the Auto Upgrade knobs for the node pool.", - "$ref": "AutoUpgradeOptions" - } - }, - "id": "NodeManagement", - "description": "NodeManagement defines the set of node management services turned on for the\nnode pool.", "type": "object" }, - "CancelOperationRequest": { - "properties": {}, - "id": "CancelOperationRequest", - "description": "CancelOperationRequest cancels a single operation.", - "type": "object" - }, - "KubernetesDashboard": { - "description": "Configuration for the Kubernetes Dashboard.", - "type": "object", - "properties": { - "disabled": { - "description": "Whether the Kubernetes Dashboard is enabled for this cluster.", - "type": "boolean" - } - }, - "id": "KubernetesDashboard" - }, "Operation": { "description": "This operation resource represents operations that may have happened or are\nhappening on the cluster. All fields are output only.", - "type": "object", + "id": "Operation", "properties": { - "statusMessage": { - "description": "If an error has occurred, a textual description of the error.", - "type": "string" - }, - "name": { - "description": "The server-assigned ID for the operation.", - "type": "string" - }, - "selfLink": { - "description": "Server-defined URL for the resource.", - "type": "string" - }, "detail": { "description": "Detailed operation progress, if available.", "type": "string" }, - "targetLink": { - "description": "Server-defined URL for the target of the operation.", - "type": "string" - }, "endTime": { "description": "[Output only] The time the operation completed, in\n[RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.", "type": "string" }, + "location": { + "description": "[Output only] The name of the Google Compute Engine\n[zone](/compute/docs/regions-zones/regions-zones#available) or\n[region](/compute/docs/regions-zones/regions-zones#available) in which\nthe cluster resides.", + "type": "string" + }, + "name": { + "description": "The server-assigned ID for the operation.", + "type": "string" + }, "operationType": { + "description": "The operation type.", "enum": [ "TYPE_UNSPECIFIED", "CREATE_CLUSTER", @@ -172,8 +3280,6 @@ "SET_NETWORK_POLICY", "SET_MAINTENANCE_POLICY" ], - "description": "The operation type.", - "type": "string", "enumDescriptions": [ "Not set.", "Cluster create.", @@ -192,17 +3298,19 @@ "Set node pool size.", "Updates network policy for a cluster.", "Set the maintenance policy." - ] + ], + "type": "string" + }, + "selfLink": { + "description": "Server-defined URL for the resource.", + "type": "string" }, "startTime": { "description": "[Output only] The time the operation started, in\n[RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.", "type": "string" }, - "zone": { - "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the operation\nis taking place.", - "type": "string" - }, "status": { + "description": "The current status of the operation.", "enum": [ "STATUS_UNSPECIFIED", "PENDING", @@ -210,128 +3318,61 @@ "DONE", "ABORTING" ], - "description": "The current status of the operation.", - "type": "string", "enumDescriptions": [ "Not set.", "The operation has been created.", "The operation is currently running.", "The operation is done, either cancelled or completed.", "The operation is aborting." - ] + ], + "type": "string" + }, + "statusMessage": { + "description": "If an error has occurred, a textual description of the error.", + "type": "string" + }, + "targetLink": { + "description": "Server-defined URL for the target of the operation.", + "type": "string" + }, + "zone": { + "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the operation\nis taking place.\nThis field is deprecated, use location instead.", + "type": "string" } }, - "id": "Operation" - }, - "MaintenanceWindow": { - "description": "MaintenanceWindow defines the maintenance window to be used for the cluster.", - "type": "object", - "properties": { - "dailyMaintenanceWindow": { - "description": "DailyMaintenanceWindow specifies a daily maintenance operation window.", - "$ref": "DailyMaintenanceWindow" - } - }, - "id": "MaintenanceWindow" + "type": "object" }, "RollbackNodePoolUpgradeRequest": { - "properties": {}, - "id": "RollbackNodePoolUpgradeRequest", "description": "RollbackNodePoolUpgradeRequest rollbacks the previously Aborted or Failed\nNodePool upgrade. This will be an no-op if the last upgrade successfully\ncompleted.", + "id": "RollbackNodePoolUpgradeRequest", + "properties": { + "clusterId": { + "description": "Deprecated. The name of the cluster to rollback.\nThis field has been deprecated and replaced by the name field.", + "type": "string" + }, + "name": { + "description": "The name (project, location, cluster, node pool id) of the node poll to\nrollback upgrade.\nSpecified in the format 'projects/*/locations/*/clusters/*/nodePools/*'.", + "type": "string" + }, + "nodePoolId": { + "description": "Deprecated. The name of the node pool to rollback.\nThis field has been deprecated and replaced by the name field.", + "type": "string" + }, + "projectId": { + "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field has been deprecated and replaced by the name field.", + "type": "string" + }, + "zone": { + "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the name field.", + "type": "string" + } + }, "type": "object" }, - "NetworkPolicy": { - "properties": { - "enabled": { - "description": "Whether network policy is enabled on the cluster.", - "type": "boolean" - }, - "provider": { - "enum": [ - "PROVIDER_UNSPECIFIED", - "CALICO" - ], - "description": "The selected network policy provider.", - "type": "string", - "enumDescriptions": [ - "Not set", - "Tigera (Calico Felix)." - ] - } - }, - "id": "NetworkPolicy", - "description": "Configuration options for the NetworkPolicy feature.\nhttps://kubernetes.io/docs/concepts/services-networking/networkpolicies/", - "type": "object" - }, - "UpdateMasterRequest": { - "description": "UpdateMasterRequest updates the master of the cluster.", - "type": "object", - "properties": { - "masterVersion": { - "description": "The Kubernetes version to change the master to. Use \"-\" to have the server\nautomatically select the default version.", - "type": "string" - } - }, - "id": "UpdateMasterRequest" - }, - "ListOperationsResponse": { - "description": "ListOperationsResponse is the result of ListOperationsRequest.", - "type": "object", - "properties": { - "operations": { - "description": "A list of operations in the project in the specified zone.", - "type": "array", - "items": { - "$ref": "Operation" - } - }, - "missingZones": { - "description": "If any zones are listed here, the list of operations returned\nmay be missing the operations from those zones.", - "type": "array", - "items": { - "type": "string" - } - } - }, - "id": "ListOperationsResponse" - }, - "CidrBlock": { - "description": "CidrBlock contains an optional name and one CIDR block.", - "type": "object", - "properties": { - "cidrBlock": { - "description": "cidr_block must be specified in CIDR notation.", - "type": "string" - }, - "displayName": { - "description": "display_name is an optional field for users to identify CIDR blocks.", - "type": "string" - } - }, - "id": "CidrBlock" - }, - "SetMonitoringServiceRequest": { - "description": "SetMonitoringServiceRequest sets the monitoring service of a cluster.", - "type": "object", - "properties": { - "monitoringService": { - "description": "The monitoring service the cluster should use to write metrics.\nCurrently available options:\n\n* \"monitoring.googleapis.com\" - the Google Cloud Monitoring service\n* \"none\" - no metrics will be exported from the cluster", - "type": "string" - } - }, - "id": "SetMonitoringServiceRequest" - }, "ServerConfig": { "description": "Kubernetes Engine service configuration.", - "type": "object", + "id": "ServerConfig", "properties": { - "validMasterVersions": { - "description": "List of valid master versions.", - "type": "array", - "items": { - "type": "string" - } - }, "defaultClusterVersion": { "description": "Version of Kubernetes the service deploys by default.", "type": "string" @@ -340,2174 +3381,507 @@ "description": "Default image type.", "type": "string" }, - "validNodeVersions": { - "description": "List of valid node upgrade target versions.", - "type": "array", - "items": { - "type": "string" - } - }, "validImageTypes": { "description": "List of valid image types.", - "type": "array", "items": { "type": "string" - } - } - }, - "id": "ServerConfig" - }, - "NodeConfig": { - "properties": { - "machineType": { - "description": "The name of a Google Compute Engine [machine\ntype](/compute/docs/machine-types) (e.g.\n`n1-standard-1`).\n\nIf unspecified, the default machine type is\n`n1-standard-1`.", - "type": "string" - }, - "minCpuPlatform": { - "description": "Minimum CPU platform to be used by this instance. The instance may be\nscheduled on the specified or newer CPU platform. Applicable values are the\nfriendly names of CPU platforms, such as\n\u003ccode\u003eminCpuPlatform: "Intel Haswell"\u003c/code\u003e or\n\u003ccode\u003eminCpuPlatform: "Intel Sandy Bridge"\u003c/code\u003e. For more\ninformation, read [how to specify min CPU platform](https://cloud.google.com/compute/docs/instances/specify-min-cpu-platform)", - "type": "string" - }, - "preemptible": { - "description": "Whether the nodes are created as preemptible VM instances. See:\nhttps://cloud.google.com/compute/docs/instances/preemptible for more\ninformation about preemptible VM instances.", - "type": "boolean" - }, - "localSsdCount": { - "description": "The number of local SSD disks to be attached to the node.\n\nThe limit for this value is dependant upon the maximum number of\ndisks available on a machine per zone. See:\nhttps://cloud.google.com/compute/docs/disks/local-ssd#local_ssd_limits\nfor more information.", - "format": "int32", - "type": "integer" - }, - "metadata": { - "additionalProperties": { - "type": "string" }, - "description": "The metadata key/value pairs assigned to instances in the cluster.\n\nKeys must conform to the regexp [a-zA-Z0-9-_]+ and be less than 128 bytes\nin length. These are reflected as part of a URL in the metadata server.\nAdditionally, to avoid ambiguity, keys must not conflict with any other\nmetadata keys for the project or be one of the reserved keys:\n \"cluster-name\"\n \"cluster-uid\"\n \"configure-sh\"\n \"gci-update-strategy\"\n \"gci-ensure-gke-docker\"\n \"instance-template\"\n \"kube-env\"\n \"startup-script\"\n \"user-data\"\n\nValues are free-form strings, and only have meaning as interpreted by\nthe image running in the instance. The only restriction placed on them is\nthat each value's size must be less than or equal to 32 KB.\n\nThe total size of all keys and values must be less than 512 KB.", - "type": "object" + "type": "array" }, - "tags": { - "description": "The list of instance tags applied to all nodes. Tags are used to identify\nvalid sources or targets for network firewalls and are specified by\nthe client during cluster or node pool creation. Each tag within the list\nmust comply with RFC1035.", - "type": "array", + "validMasterVersions": { + "description": "List of valid master versions.", "items": { "type": "string" - } + }, + "type": "array" }, - "serviceAccount": { - "description": "The Google Cloud Platform Service Account to be used by the node VMs. If\nno Service Account is specified, the \"default\" service account is used.", - "type": "string" - }, - "imageType": { - "description": "The image type to use for this node. Note that for a given image type,\nthe latest version of it will be used.", - "type": "string" - }, - "oauthScopes": { - "description": "The set of Google API scopes to be made available on all of the\nnode VMs under the \"default\" service account.\n\nThe following scopes are recommended, but not required, and by default are\nnot included:\n\n* `https://www.googleapis.com/auth/compute` is required for mounting\npersistent storage on your nodes.\n* `https://www.googleapis.com/auth/devstorage.read_only` is required for\ncommunicating with **gcr.io**\n(the [Google Container Registry](/container-registry/)).\n\nIf unspecified, no scopes are added, unless Cloud Logging or Cloud\nMonitoring are enabled, in which case their required scopes will be added.", - "type": "array", + "validNodeVersions": { + "description": "List of valid node upgrade target versions.", "items": { "type": "string" - } - }, - "labels": { - "description": "The map of Kubernetes labels (key/value pairs) to be applied to each node.\nThese will added in addition to any default label(s) that\nKubernetes may apply to the node.\nIn case of conflict in label keys, the applied set may differ depending on\nthe Kubernetes version -- it's best to assume the behavior is undefined\nand conflicts should be avoided.\nFor more information, including usage and the valid values, see:\nhttps://kubernetes.io/docs/concepts/overview/working-with-objects/labels/", - "type": "object", - "additionalProperties": { - "type": "string" - } - }, - "diskSizeGb": { - "description": "Size of the disk attached to each node, specified in GB.\nThe smallest allowed disk size is 10GB.\n\nIf unspecified, the default disk size is 100GB.", - "format": "int32", - "type": "integer" - }, - "accelerators": { - "description": "A list of hardware accelerators to be attached to each node.\nSee https://cloud.google.com/compute/docs/gpus for more information about\nsupport for GPUs.", - "type": "array", - "items": { - "$ref": "AcceleratorConfig" - } + }, + "type": "array" } }, - "id": "NodeConfig", - "description": "Parameters that describe the nodes in a cluster.", "type": "object" }, - "AutoUpgradeOptions": { - "description": "AutoUpgradeOptions defines the set of options for the user to control how\nthe Auto Upgrades will proceed.", - "type": "object", - "properties": { - "description": { - "description": "[Output only] This field is set when upgrades are about to commence\nwith the description of the upgrade.", - "type": "string" - }, - "autoUpgradeStartTime": { - "description": "[Output only] This field is set when upgrades are about to commence\nwith the approximate start time for the upgrades, in\n[RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.", - "type": "string" - } - }, - "id": "AutoUpgradeOptions" - }, - "ListClustersResponse": { - "description": "ListClustersResponse is the result of ListClustersRequest.", - "type": "object", - "properties": { - "clusters": { - "description": "A list of clusters in the project in the specified zone, or\nacross all ones.", - "type": "array", - "items": { - "$ref": "Cluster" - } - }, - "missingZones": { - "description": "If any zones are listed here, the list of clusters returned\nmay be missing those zones.", - "type": "array", - "items": { - "type": "string" - } - } - }, - "id": "ListClustersResponse" - }, - "HttpLoadBalancing": { - "description": "Configuration options for the HTTP (L7) load balancing controller addon,\nwhich makes it easy to set up HTTP load balancers for services in a cluster.", - "type": "object", - "properties": { - "disabled": { - "description": "Whether the HTTP Load Balancing controller is enabled in the cluster.\nWhen enabled, it runs a small pod in the cluster that manages the load\nbalancers.", - "type": "boolean" - } - }, - "id": "HttpLoadBalancing" - }, - "SetNetworkPolicyRequest": { - "description": "SetNetworkPolicyRequest enables/disables network policy for a cluster.", - "type": "object", - "properties": { - "networkPolicy": { - "$ref": "NetworkPolicy", - "description": "Configuration options for the NetworkPolicy feature." - } - }, - "id": "SetNetworkPolicyRequest" - }, - "NodePoolAutoscaling": { - "properties": { - "maxNodeCount": { - "description": "Maximum number of nodes in the NodePool. Must be \u003e= min_node_count. There\nhas to enough quota to scale up the cluster.", - "format": "int32", - "type": "integer" - }, - "minNodeCount": { - "description": "Minimum number of nodes in the NodePool. Must be \u003e= 1 and \u003c=\nmax_node_count.", - "format": "int32", - "type": "integer" - }, - "enabled": { - "description": "Is autoscaling enabled for this node pool.", - "type": "boolean" - } - }, - "id": "NodePoolAutoscaling", - "description": "NodePoolAutoscaling contains information required by cluster autoscaler to\nadjust the size of the node pool to the current cluster usage.", - "type": "object" - }, - "SetMasterAuthRequest": { - "description": "SetMasterAuthRequest updates the admin password of a cluster.", - "type": "object", - "properties": { - "update": { - "description": "A description of the update.", - "$ref": "MasterAuth" - }, - "action": { - "enumDescriptions": [ - "Operation is unknown and will error out.", - "Set the password to a user generated value.", - "Generate a new password and set it to that.", - "Set the username. If an empty username is provided, basic authentication\nis disabled for the cluster. If a non-empty username is provided, basic\nauthentication is enabled, with either a provided password or a generated\none." - ], - "enum": [ - "UNKNOWN", - "SET_PASSWORD", - "GENERATE_PASSWORD", - "SET_USERNAME" - ], - "description": "The exact form of action to be taken on the master auth.", - "type": "string" - } - }, - "id": "SetMasterAuthRequest" - }, - "IPAllocationPolicy": { - "description": "Configuration for controlling how IPs are allocated in the cluster.", - "type": "object", - "properties": { - "nodeIpv4Cidr": { - "description": "This field is deprecated, use node_ipv4_cidr_block.", - "type": "string" - }, - "clusterSecondaryRangeName": { - "description": "The name of the secondary range to be used for the cluster CIDR\nblock. The secondary range will be used for pod IP\naddresses. This must be an existing secondary range associated\nwith the cluster subnetwork.\n\nThis field is only applicable with use_ip_aliases is true and\ncreate_subnetwork is false.", - "type": "string" - }, - "clusterIpv4CidrBlock": { - "description": "The IP address range for the cluster pod IPs. If this field is set, then\n`cluster.cluster_ipv4_cidr` must be left blank.\n\nThis field is only applicable when `use_ip_aliases` is true.\n\nSet to blank to have a range chosen with the default size.\n\nSet to /netmask (e.g. `/14`) to have a range chosen with a specific\nnetmask.\n\nSet to a\n[CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)\nnotation (e.g. `10.96.0.0/14`) from the RFC-1918 private networks (e.g.\n`10.0.0.0/8`, `172.16.0.0/12`, `192.168.0.0/16`) to pick a specific range\nto use.", - "type": "string" - }, - "nodeIpv4CidrBlock": { - "description": "The IP address range of the instance IPs in this cluster.\n\nThis is applicable only if `create_subnetwork` is true.\n\nSet to blank to have a range chosen with the default size.\n\nSet to /netmask (e.g. `/14`) to have a range chosen with a specific\nnetmask.\n\nSet to a\n[CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)\nnotation (e.g. `10.96.0.0/14`) from the RFC-1918 private networks (e.g.\n`10.0.0.0/8`, `172.16.0.0/12`, `192.168.0.0/16`) to pick a specific range\nto use.", - "type": "string" - }, - "servicesIpv4Cidr": { - "description": "This field is deprecated, use services_ipv4_cidr_block.", - "type": "string" - }, - "servicesSecondaryRangeName": { - "description": "The name of the secondary range to be used as for the services\nCIDR block. The secondary range will be used for service\nClusterIPs. This must be an existing secondary range associated\nwith the cluster subnetwork.\n\nThis field is only applicable with use_ip_aliases is true and\ncreate_subnetwork is false.", - "type": "string" - }, - "useIpAliases": { - "description": "Whether alias IPs will be used for pod IPs in the cluster.", - "type": "boolean" - }, - "createSubnetwork": { - "description": "Whether a new subnetwork will be created automatically for the cluster.\n\nThis field is only applicable when `use_ip_aliases` is true.", - "type": "boolean" - }, - "subnetworkName": { - "description": "A custom subnetwork name to be used if `create_subnetwork` is true. If\nthis field is empty, then an automatic name will be chosen for the new\nsubnetwork.", - "type": "string" - }, - "servicesIpv4CidrBlock": { - "description": "The IP address range of the services IPs in this cluster. If blank, a range\nwill be automatically chosen with the default size.\n\nThis field is only applicable when `use_ip_aliases` is true.\n\nSet to blank to have a range chosen with the default size.\n\nSet to /netmask (e.g. `/14`) to have a range chosen with a specific\nnetmask.\n\nSet to a\n[CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)\nnotation (e.g. `10.96.0.0/14`) from the RFC-1918 private networks (e.g.\n`10.0.0.0/8`, `172.16.0.0/12`, `192.168.0.0/16`) to pick a specific range\nto use.", - "type": "string" - }, - "clusterIpv4Cidr": { - "description": "This field is deprecated, use cluster_ipv4_cidr_block.", - "type": "string" - } - }, - "id": "IPAllocationPolicy" - }, - "ClusterUpdate": { - "description": "ClusterUpdate describes an update to the cluster. Exactly one update can\nbe applied to a cluster with each request, so at most one field can be\nprovided.", - "type": "object", - "properties": { - "desiredLocations": { - "description": "The desired list of Google Compute Engine\n[locations](/compute/docs/zones#available) in which the cluster's nodes\nshould be located. Changing the locations a cluster is in will result\nin nodes being either created or removed from the cluster, depending on\nwhether locations are being added or removed.\n\nThis list must always include the cluster's primary zone.", - "type": "array", - "items": { - "type": "string" - } - }, - "desiredNodePoolAutoscaling": { - "description": "Autoscaler configuration for the node pool specified in\ndesired_node_pool_id. If there is only one pool in the\ncluster and desired_node_pool_id is not provided then\nthe change applies to that single node pool.", - "$ref": "NodePoolAutoscaling" - }, - "desiredMonitoringService": { - "description": "The monitoring service the cluster should use to write metrics.\nCurrently available options:\n\n* \"monitoring.googleapis.com\" - the Google Cloud Monitoring service\n* \"none\" - no metrics will be exported from the cluster", - "type": "string" - }, - "desiredImageType": { - "description": "The desired image type for the node pool.\nNOTE: Set the \"desired_node_pool\" field as well.", - "type": "string" - }, - "desiredAddonsConfig": { - "description": "Configurations for the various addons available to run in the cluster.", - "$ref": "AddonsConfig" - }, - "desiredNodePoolId": { - "description": "The node pool to be upgraded. This field is mandatory if\n\"desired_node_version\", \"desired_image_family\" or\n\"desired_node_pool_autoscaling\" is specified and there is more than one\nnode pool on the cluster.", - "type": "string" - }, - "desiredNodeVersion": { - "description": "The Kubernetes version to change the nodes to (typically an\nupgrade). Use `-` to upgrade to the latest version supported by\nthe server.", - "type": "string" - }, - "desiredMasterVersion": { - "description": "The Kubernetes version to change the master to. The only valid value is the\nlatest supported version. Use \"-\" to have the server automatically select\nthe latest version.", - "type": "string" - }, - "desiredMasterAuthorizedNetworksConfig": { - "description": "Master authorized networks is a Beta feature.\nThe desired configuration options for master authorized networks feature.", - "$ref": "MasterAuthorizedNetworksConfig" - } - }, - "id": "ClusterUpdate" - }, - "HorizontalPodAutoscaling": { - "description": "Configuration options for the horizontal pod autoscaling feature, which\nincreases or decreases the number of replica pods a replication controller\nhas based on the resource usage of the existing pods.", - "type": "object", - "properties": { - "disabled": { - "description": "Whether the Horizontal Pod Autoscaling feature is enabled in the cluster.\nWhen enabled, it ensures that a Heapster pod is running in the cluster,\nwhich is also used by the Cloud Monitoring service.", - "type": "boolean" - } - }, - "id": "HorizontalPodAutoscaling" - }, - "MasterAuthorizedNetworksConfig": { - "description": "Master authorized networks is a Beta feature.\nConfiguration options for the master authorized networks feature. Enabled\nmaster authorized networks will disallow all external traffic to access\nKubernetes master through HTTPS except traffic from the given CIDR blocks,\nGoogle Compute Engine Public IPs and Google Prod IPs.", - "type": "object", - "properties": { - "enabled": { - "description": "Whether or not master authorized networks is enabled.", - "type": "boolean" - }, - "cidrBlocks": { - "description": "cidr_blocks define up to 10 external networks that could access\nKubernetes master through HTTPS.", - "type": "array", - "items": { - "$ref": "CidrBlock" - } - } - }, - "id": "MasterAuthorizedNetworksConfig" - }, - "SetNodePoolManagementRequest": { - "description": "SetNodePoolManagementRequest sets the node management properties of a node\npool.", - "type": "object", - "properties": { - "management": { - "description": "NodeManagement configuration for the node pool.", - "$ref": "NodeManagement" - } - }, - "id": "SetNodePoolManagementRequest" - }, - "SetNodePoolAutoscalingRequest": { - "description": "SetNodePoolAutoscalingRequest sets the autoscaler settings of a node pool.", - "type": "object", - "properties": { - "autoscaling": { - "$ref": "NodePoolAutoscaling", - "description": "Autoscaling configuration for the node pool." - } - }, - "id": "SetNodePoolAutoscalingRequest" - }, - "CreateClusterRequest": { - "properties": { - "cluster": { - "description": "A [cluster\nresource](/container-engine/reference/rest/v1/projects.zones.clusters)", - "$ref": "Cluster" - } - }, - "id": "CreateClusterRequest", - "description": "CreateClusterRequest creates a cluster.", - "type": "object" - }, - "UpdateNodePoolRequest": { - "description": "UpdateNodePoolRequests update a node pool's image and/or version.", - "type": "object", - "properties": { - "nodeVersion": { - "description": "The Kubernetes version to change the nodes to (typically an\nupgrade). Use `-` to upgrade to the latest version supported by\nthe server.", - "type": "string" - }, - "imageType": { - "description": "The desired image type for the node pool.", - "type": "string" - } - }, - "id": "UpdateNodePoolRequest" - }, - "AcceleratorConfig": { - "description": "AcceleratorConfig represents a Hardware Accelerator request.", - "type": "object", - "properties": { - "acceleratorCount": { - "description": "The number of the accelerator cards exposed to an instance.", - "format": "int64", - "type": "string" - }, - "acceleratorType": { - "description": "The accelerator type resource name. List of supported accelerators\n[here](/compute/docs/gpus/#Introduction)", - "type": "string" - } - }, - "id": "AcceleratorConfig" - }, - "LegacyAbac": { - "description": "Configuration for the legacy Attribute Based Access Control authorization\nmode.", - "type": "object", - "properties": { - "enabled": { - "description": "Whether the ABAC authorizer is enabled for this cluster. When enabled,\nidentities in the system, including service accounts, nodes, and\ncontrollers, will have statically granted permissions beyond those\nprovided by the RBAC configuration or IAM.", - "type": "boolean" - } - }, - "id": "LegacyAbac" - }, "SetAddonsConfigRequest": { "description": "SetAddonsConfigRequest sets the addons associated with the cluster.", - "type": "object", + "id": "SetAddonsConfigRequest", "properties": { "addonsConfig": { - "description": "The desired configurations for the various addons available to run in the\ncluster.", - "$ref": "AddonsConfig" - } - }, - "id": "SetAddonsConfigRequest" - }, - "SetLegacyAbacRequest": { - "description": "SetLegacyAbacRequest enables or disables the ABAC authorization mechanism for\na cluster.", - "type": "object", - "properties": { - "enabled": { - "description": "Whether ABAC authorization will be enabled in the cluster.", - "type": "boolean" - } - }, - "id": "SetLegacyAbacRequest" - }, - "AddonsConfig": { - "description": "Configuration for the addons that can be automatically spun up in the\ncluster, enabling additional functionality.", - "type": "object", - "properties": { - "horizontalPodAutoscaling": { - "$ref": "HorizontalPodAutoscaling", - "description": "Configuration for the horizontal pod autoscaling feature, which\nincreases or decreases the number of replica pods a replication controller\nhas based on the resource usage of the existing pods." + "$ref": "AddonsConfig", + "description": "The desired configurations for the various addons available to run in the\ncluster." }, - "httpLoadBalancing": { - "description": "Configuration for the HTTP (L7) load balancing controller addon, which\nmakes it easy to set up HTTP load balancers for services in a cluster.", - "$ref": "HttpLoadBalancing" - }, - "kubernetesDashboard": { - "description": "Configuration for the Kubernetes Dashboard.", - "$ref": "KubernetesDashboard" - }, - "networkPolicyConfig": { - "description": "Configuration for NetworkPolicy. This only tracks whether the addon\nis enabled or not on the Master, it does not track whether network policy\nis enabled for the nodes.", - "$ref": "NetworkPolicyConfig" - } - }, - "id": "AddonsConfig" - }, - "SetLocationsRequest": { - "properties": { - "locations": { - "description": "The desired list of Google Compute Engine\n[locations](/compute/docs/zones#available) in which the cluster's nodes\nshould be located. Changing the locations a cluster is in will result\nin nodes being either created or removed from the cluster, depending on\nwhether locations are being added or removed.\n\nThis list must always include the cluster's primary zone.", - "type": "array", - "items": { - "type": "string" - } - } - }, - "id": "SetLocationsRequest", - "description": "SetLocationsRequest sets the locations of the cluster.", - "type": "object" - }, - "SetNodePoolSizeRequest": { - "description": "SetNodePoolSizeRequest sets the size a node\npool.", - "type": "object", - "properties": { - "nodeCount": { - "description": "The desired node count for the pool.", - "format": "int32", - "type": "integer" - } - }, - "id": "SetNodePoolSizeRequest" - }, - "NetworkPolicyConfig": { - "description": "Configuration for NetworkPolicy. This only tracks whether the addon\nis enabled or not on the Master, it does not track whether network policy\nis enabled for the nodes.", - "type": "object", - "properties": { - "disabled": { - "description": "Whether NetworkPolicy is enabled for this cluster.", - "type": "boolean" - } - }, - "id": "NetworkPolicyConfig" - }, - "UpdateClusterRequest": { - "description": "UpdateClusterRequest updates the settings of a cluster.", - "type": "object", - "properties": { - "update": { - "description": "A description of the update.", - "$ref": "ClusterUpdate" - } - }, - "id": "UpdateClusterRequest" - }, - "Cluster": { - "description": "A Google Kubernetes Engine cluster.", - "type": "object", - "properties": { - "initialClusterVersion": { - "description": "The initial Kubernetes version for this cluster. Valid versions are those\nfound in validMasterVersions returned by getServerConfig. The version can\nbe upgraded over time; such upgrades are reflected in\ncurrentMasterVersion and currentNodeVersion.", + "clusterId": { + "description": "Deprecated. The name of the cluster to upgrade.\nThis field has been deprecated and replaced by the name field.", "type": "string" }, - "ipAllocationPolicy": { - "description": "Configuration for cluster IP allocation.", - "$ref": "IPAllocationPolicy" - }, - "legacyAbac": { - "$ref": "LegacyAbac", - "description": "Configuration for the legacy ABAC authorization mode." - }, - "endpoint": { - "description": "[Output only] The IP address of this cluster's master endpoint.\nThe endpoint can be accessed from the internet at\n`https://username:password@endpoint/`.\n\nSee the `masterAuth` property of this resource for username and\npassword information.", + "name": { + "description": "The name (project, location, cluster) of the cluster to set addons.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", "type": "string" }, - "createTime": { - "description": "[Output only] The time the cluster was created, in\n[RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.", - "type": "string" - }, - "clusterIpv4Cidr": { - "description": "The IP address range of the container pods in this cluster, in\n[CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)\nnotation (e.g. `10.96.0.0/14`). Leave blank to have\none automatically chosen or specify a `/14` block in `10.0.0.0/8`.", - "type": "string" - }, - "initialNodeCount": { - "description": "The number of nodes to create in this cluster. You must ensure that your\nCompute Engine \u003ca href=\"/compute/docs/resource-quotas\"\u003eresource quota\u003c/a\u003e\nis sufficient for this number of instances. You must also have available\nfirewall and routes quota.\nFor requests, this field should only be used in lieu of a\n\"node_pool\" object, since this configuration (along with the\n\"node_config\") will be used to create a \"NodePool\" object with an\nauto-generated name. Do not use this and a node_pool at the same time.", - "format": "int32", - "type": "integer" - }, - "selfLink": { - "description": "[Output only] Server-defined URL for the resource.", - "type": "string" - }, - "locations": { - "description": "The list of Google Compute Engine\n[locations](/compute/docs/zones#available) in which the cluster's nodes\nshould be located.", - "type": "array", - "items": { - "type": "string" - } - }, - "nodePools": { - "description": "The node pools associated with this cluster.\nThis field should not be set if \"node_config\" or \"initial_node_count\" are\nspecified.", - "type": "array", - "items": { - "$ref": "NodePool" - } - }, - "instanceGroupUrls": { - "description": "Deprecated. Use node_pools.instance_group_urls.", - "type": "array", - "items": { - "type": "string" - } - }, - "servicesIpv4Cidr": { - "description": "[Output only] The IP address range of the Kubernetes services in\nthis cluster, in\n[CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)\nnotation (e.g. `1.2.3.4/29`). Service addresses are\ntypically put in the last `/16` from the container CIDR.", - "type": "string" - }, - "networkPolicy": { - "$ref": "NetworkPolicy", - "description": "Configuration options for the NetworkPolicy feature." - }, - "enableKubernetesAlpha": { - "description": "Kubernetes alpha features are enabled on this cluster. This includes alpha\nAPI groups (e.g. v1alpha1) and features that may not be production ready in\nthe kubernetes version of the master and nodes.\nThe cluster has no SLA for uptime and master/node upgrades are disabled.\nAlpha enabled clusters are automatically deleted thirty days after\ncreation.", - "type": "boolean" - }, - "description": { - "description": "An optional description of this cluster.", - "type": "string" - }, - "currentNodeCount": { - "description": "[Output only] The number of nodes currently in the cluster.", - "format": "int32", - "type": "integer" - }, - "monitoringService": { - "description": "The monitoring service the cluster should use to write metrics.\nCurrently available options:\n\n* `monitoring.googleapis.com` - the Google Cloud Monitoring service.\n* `none` - no metrics will be exported from the cluster.\n* if left as an empty string, `monitoring.googleapis.com` will be used.", - "type": "string" - }, - "network": { - "description": "The name of the Google Compute Engine\n[network](/compute/docs/networks-and-firewalls#networks) to which the\ncluster is connected. If left unspecified, the `default` network\nwill be used.", - "type": "string" - }, - "labelFingerprint": { - "description": "The fingerprint of the set of labels for this cluster.", + "projectId": { + "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field has been deprecated and replaced by the name field.", "type": "string" }, "zone": { - "description": "[Output only] The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.", + "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the name field.", + "type": "string" + } + }, + "type": "object" + }, + "SetLabelsRequest": { + "description": "SetLabelsRequest sets the Google Cloud Platform labels on a Google Container\nEngine cluster, which will in turn set them for Google Compute Engine\nresources used by that cluster", + "id": "SetLabelsRequest", + "properties": { + "clusterId": { + "description": "Deprecated. The name of the cluster.\nThis field has been deprecated and replaced by the name field.", "type": "string" }, - "nodeIpv4CidrSize": { - "description": "[Output only] The size of the address space on each node for hosting\ncontainers. This is provisioned from within the `container_ipv4_cidr`\nrange.", - "format": "int32", - "type": "integer" - }, - "expireTime": { - "description": "[Output only] The time the cluster will be automatically\ndeleted in [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.", + "labelFingerprint": { + "description": "The fingerprint of the previous set of labels for this resource,\nused to detect conflicts. The fingerprint is initially generated by\nKubernetes Engine and changes after every request to modify or update\nlabels. You must always provide an up-to-date fingerprint hash when\nupdating or changing labels. Make a \u003ccode\u003eget()\u003c/code\u003e request to the\nresource to get the latest fingerprint.", "type": "string" }, - "loggingService": { - "description": "The logging service the cluster should use to write logs.\nCurrently available options:\n\n* `logging.googleapis.com` - the Google Cloud Logging service.\n* `none` - no logs will be exported from the cluster.\n* if left as an empty string,`logging.googleapis.com` will be used.", - "type": "string" - }, - "masterAuthorizedNetworksConfig": { - "$ref": "MasterAuthorizedNetworksConfig", - "description": "Master authorized networks is a Beta feature.\nThe configuration options for master authorized networks feature." - }, - "statusMessage": { - "description": "[Output only] Additional information about the current status of this\ncluster, if available.", - "type": "string" - }, - "masterAuth": { - "$ref": "MasterAuth", - "description": "The authentication information for accessing the master endpoint." - }, - "currentMasterVersion": { - "description": "[Output only] The current software version of the master endpoint.", - "type": "string" - }, - "nodeConfig": { - "$ref": "NodeConfig", - "description": "Parameters used in creating the cluster's nodes.\nSee `nodeConfig` for the description of its properties.\nFor requests, this field should only be used in lieu of a\n\"node_pool\" object, since this configuration (along with the\n\"initial_node_count\") will be used to create a \"NodePool\" object with an\nauto-generated name. Do not use this and a node_pool at the same time.\nFor responses, this field will be populated with the node configuration of\nthe first node pool.\n\nIf unspecified, the defaults are used." - }, - "addonsConfig": { - "$ref": "AddonsConfig", - "description": "Configurations for the various addons available to run in the cluster." - }, - "status": { - "enum": [ - "STATUS_UNSPECIFIED", - "PROVISIONING", - "RUNNING", - "RECONCILING", - "STOPPING", - "ERROR" - ], - "description": "[Output only] The current status of this cluster.", - "type": "string", - "enumDescriptions": [ - "Not set.", - "The PROVISIONING state indicates the cluster is being created.", - "The RUNNING state indicates the cluster has been created and is fully\nusable.", - "The RECONCILING state indicates that some work is actively being done on\nthe cluster, such as upgrading the master or node software. Details can\nbe found in the `statusMessage` field.", - "The STOPPING state indicates the cluster is being deleted.", - "The ERROR state indicates the cluster may be unusable. Details\ncan be found in the `statusMessage` field." - ] - }, - "currentNodeVersion": { - "description": "[Output only] The current version of the node software components.\nIf they are currently at multiple versions because they're in the process\nof being upgraded, this reflects the minimum version of all nodes.", - "type": "string" - }, - "subnetwork": { - "description": "The name of the Google Compute Engine\n[subnetwork](/compute/docs/subnetworks) to which the\ncluster is connected.", - "type": "string" - }, - "maintenancePolicy": { - "$ref": "MaintenancePolicy", - "description": "Configure the maintenance policy for this cluster." - }, "name": { - "description": "The name of this cluster. The name must be unique within this project\nand zone, and can be up to 40 characters with the following restrictions:\n\n* Lowercase letters, numbers, and hyphens only.\n* Must start with a letter.\n* Must end with a number or a letter.", + "description": "The name (project, location, cluster id) of the cluster to set labels.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", + "type": "string" + }, + "projectId": { + "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://developers.google.com/console/help/new/#projectnumber).\nThis field has been deprecated and replaced by the name field.", "type": "string" }, "resourceLabels": { "additionalProperties": { "type": "string" }, - "description": "The resource labels for the cluster to use to annotate any related\nGoogle Compute Engine resources.", + "description": "The labels to set for that cluster.", "type": "object" - } - }, - "id": "Cluster" - }, - "CreateNodePoolRequest": { - "description": "CreateNodePoolRequest creates a node pool for a cluster.", - "type": "object", - "properties": { - "nodePool": { - "description": "The node pool to create.", - "$ref": "NodePool" - } - }, - "id": "CreateNodePoolRequest" - }, - "MasterAuth": { - "description": "The authentication information for accessing the master endpoint.\nAuthentication can be done using HTTP basic auth or using client\ncertificates.", - "type": "object", - "properties": { - "password": { - "description": "The password to use for HTTP basic authentication to the master endpoint.\nBecause the master endpoint is open to the Internet, you should create a\nstrong password. If a password is provided for cluster creation, username\nmust be non-empty.", - "type": "string" }, - "clientCertificateConfig": { - "description": "Configuration for client certificate authentication on the cluster. If no\nconfiguration is specified, a client certificate is issued.", - "$ref": "ClientCertificateConfig" - }, - "clientKey": { - "description": "[Output only] Base64-encoded private key used by clients to authenticate\nto the cluster endpoint.", - "type": "string" - }, - "clusterCaCertificate": { - "description": "[Output only] Base64-encoded public certificate that is the root of\ntrust for the cluster.", - "type": "string" - }, - "clientCertificate": { - "description": "[Output only] Base64-encoded public certificate used by clients to\nauthenticate to the cluster endpoint.", - "type": "string" - }, - "username": { - "description": "The username to use for HTTP basic authentication to the master endpoint.\nFor clusters v1.6.0 and later, you can disable basic authentication by\nproviding an empty username.", + "zone": { + "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the name field.", "type": "string" } }, - "id": "MasterAuth" + "type": "object" }, - "DailyMaintenanceWindow": { - "description": "Time window specified for daily maintenance operations.", - "type": "object", + "SetLegacyAbacRequest": { + "description": "SetLegacyAbacRequest enables or disables the ABAC authorization mechanism for\na cluster.", + "id": "SetLegacyAbacRequest", "properties": { - "duration": { - "description": "[Output only] Duration of the time window, automatically chosen to be\nsmallest possible in the given scenario.\nDuration will be in [RFC3339](https://www.ietf.org/rfc/rfc3339.txt)\nformat \"PTnHnMnS\".", + "clusterId": { + "description": "Deprecated. The name of the cluster to update.\nThis field has been deprecated and replaced by the name field.", "type": "string" }, - "startTime": { - "description": "Time within the maintenance window to start the maintenance operations.\nTime format should be in [RFC3339](https://www.ietf.org/rfc/rfc3339.txt)\nformat \"HH:MM”, where HH : [00-23] and MM : [00-59] GMT.", - "type": "string" - } - }, - "id": "DailyMaintenanceWindow" - }, - "ClientCertificateConfig": { - "description": "Configuration for client certificates on the cluster.", - "type": "object", - "properties": { - "issueClientCertificate": { - "description": "Issue a client certificate.", + "enabled": { + "description": "Whether ABAC authorization will be enabled in the cluster.", "type": "boolean" + }, + "name": { + "description": "The name (project, location, cluster id) of the cluster to set legacy abac.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", + "type": "string" + }, + "projectId": { + "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field has been deprecated and replaced by the name field.", + "type": "string" + }, + "zone": { + "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the name field.", + "type": "string" } }, - "id": "ClientCertificateConfig" + "type": "object" }, - "MaintenancePolicy": { - "description": "MaintenancePolicy defines the maintenance policy to be used for the cluster.", - "type": "object", + "SetLocationsRequest": { + "description": "SetLocationsRequest sets the locations of the cluster.", + "id": "SetLocationsRequest", "properties": { - "window": { - "description": "Specifies the maintenance window in which maintenance may be performed.", - "$ref": "MaintenanceWindow" + "clusterId": { + "description": "Deprecated. The name of the cluster to upgrade.\nThis field has been deprecated and replaced by the name field.", + "type": "string" + }, + "locations": { + "description": "The desired list of Google Compute Engine\n[locations](/compute/docs/zones#available) in which the cluster's nodes\nshould be located. Changing the locations a cluster is in will result\nin nodes being either created or removed from the cluster, depending on\nwhether locations are being added or removed.\n\nThis list must always include the cluster's primary zone.", + "items": { + "type": "string" + }, + "type": "array" + }, + "name": { + "description": "The name (project, location, cluster) of the cluster to set locations.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", + "type": "string" + }, + "projectId": { + "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field has been deprecated and replaced by the name field.", + "type": "string" + }, + "zone": { + "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the name field.", + "type": "string" } }, - "id": "MaintenancePolicy" + "type": "object" }, "SetLoggingServiceRequest": { "description": "SetLoggingServiceRequest sets the logging service of a cluster.", - "type": "object", + "id": "SetLoggingServiceRequest", "properties": { + "clusterId": { + "description": "Deprecated. The name of the cluster to upgrade.\nThis field has been deprecated and replaced by the name field.", + "type": "string" + }, "loggingService": { "description": "The logging service the cluster should use to write metrics.\nCurrently available options:\n\n* \"logging.googleapis.com\" - the Google Cloud Logging service\n* \"none\" - no metrics will be exported from the cluster", "type": "string" + }, + "name": { + "description": "The name (project, location, cluster) of the cluster to set logging.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", + "type": "string" + }, + "projectId": { + "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field has been deprecated and replaced by the name field.", + "type": "string" + }, + "zone": { + "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the name field.", + "type": "string" } }, - "id": "SetLoggingServiceRequest" + "type": "object" }, "SetMaintenancePolicyRequest": { - "properties": { - "maintenancePolicy": { - "description": "The maintenance policy to be set for the cluster. An empty field\nclears the existing maintenance policy.", - "$ref": "MaintenancePolicy" - } - }, - "id": "SetMaintenancePolicyRequest", "description": "SetMaintenancePolicyRequest sets the maintenance policy for a cluster.", - "type": "object" - }, - "Empty": { - "properties": {}, - "id": "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 `{}`.", - "type": "object" - }, - "ListNodePoolsResponse": { + "id": "SetMaintenancePolicyRequest", "properties": { - "nodePools": { - "description": "A list of node pools for a cluster.", - "type": "array", - "items": { - "$ref": "NodePool" - } + "clusterId": { + "description": "The name of the cluster to update.", + "type": "string" + }, + "maintenancePolicy": { + "$ref": "MaintenancePolicy", + "description": "The maintenance policy to be set for the cluster. An empty field\nclears the existing maintenance policy." + }, + "name": { + "description": "The name (project, location, cluster id) of the cluster to set maintenance\npolicy.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", + "type": "string" + }, + "projectId": { + "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).", + "type": "string" + }, + "zone": { + "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.", + "type": "string" } }, - "id": "ListNodePoolsResponse", - "description": "ListNodePoolsResponse is the result of ListNodePoolsRequest.", "type": "object" }, - "CompleteIPRotationRequest": { - "description": "CompleteIPRotationRequest moves the cluster master back into single-IP mode.", - "type": "object", - "properties": {}, - "id": "CompleteIPRotationRequest" + "SetMasterAuthRequest": { + "description": "SetMasterAuthRequest updates the admin password of a cluster.", + "id": "SetMasterAuthRequest", + "properties": { + "action": { + "description": "The exact form of action to be taken on the master auth.", + "enum": [ + "UNKNOWN", + "SET_PASSWORD", + "GENERATE_PASSWORD", + "SET_USERNAME" + ], + "enumDescriptions": [ + "Operation is unknown and will error out.", + "Set the password to a user generated value.", + "Generate a new password and set it to that.", + "Set the username. If an empty username is provided, basic authentication\nis disabled for the cluster. If a non-empty username is provided, basic\nauthentication is enabled, with either a provided password or a generated\none." + ], + "type": "string" + }, + "clusterId": { + "description": "Deprecated. The name of the cluster to upgrade.\nThis field has been deprecated and replaced by the name field.", + "type": "string" + }, + "name": { + "description": "The name (project, location, cluster) of the cluster to set auth.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", + "type": "string" + }, + "projectId": { + "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field has been deprecated and replaced by the name field.", + "type": "string" + }, + "update": { + "$ref": "MasterAuth", + "description": "A description of the update." + }, + "zone": { + "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the name field.", + "type": "string" + } + }, + "type": "object" + }, + "SetMonitoringServiceRequest": { + "description": "SetMonitoringServiceRequest sets the monitoring service of a cluster.", + "id": "SetMonitoringServiceRequest", + "properties": { + "clusterId": { + "description": "Deprecated. The name of the cluster to upgrade.\nThis field has been deprecated and replaced by the name field.", + "type": "string" + }, + "monitoringService": { + "description": "The monitoring service the cluster should use to write metrics.\nCurrently available options:\n\n* \"monitoring.googleapis.com\" - the Google Cloud Monitoring service\n* \"none\" - no metrics will be exported from the cluster", + "type": "string" + }, + "name": { + "description": "The name (project, location, cluster) of the cluster to set monitoring.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", + "type": "string" + }, + "projectId": { + "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field has been deprecated and replaced by the name field.", + "type": "string" + }, + "zone": { + "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the name field.", + "type": "string" + } + }, + "type": "object" + }, + "SetNetworkPolicyRequest": { + "description": "SetNetworkPolicyRequest enables/disables network policy for a cluster.", + "id": "SetNetworkPolicyRequest", + "properties": { + "clusterId": { + "description": "Deprecated. The name of the cluster.\nThis field has been deprecated and replaced by the name field.", + "type": "string" + }, + "name": { + "description": "The name (project, location, cluster id) of the cluster to set networking policy.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", + "type": "string" + }, + "networkPolicy": { + "$ref": "NetworkPolicy", + "description": "Configuration options for the NetworkPolicy feature." + }, + "projectId": { + "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://developers.google.com/console/help/new/#projectnumber).\nThis field has been deprecated and replaced by the name field.", + "type": "string" + }, + "zone": { + "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the name field.", + "type": "string" + } + }, + "type": "object" + }, + "SetNodePoolAutoscalingRequest": { + "description": "SetNodePoolAutoscalingRequest sets the autoscaler settings of a node pool.", + "id": "SetNodePoolAutoscalingRequest", + "properties": { + "autoscaling": { + "$ref": "NodePoolAutoscaling", + "description": "Autoscaling configuration for the node pool." + }, + "clusterId": { + "description": "Deprecated. The name of the cluster to upgrade.\nThis field has been deprecated and replaced by the name field.", + "type": "string" + }, + "name": { + "description": "The name (project, location, cluster, node pool) of the node pool to set\nautoscaler settings. Specified in the format\n'projects/*/locations/*/clusters/*/nodePools/*'.", + "type": "string" + }, + "nodePoolId": { + "description": "Deprecated. The name of the node pool to upgrade.\nThis field has been deprecated and replaced by the name field.", + "type": "string" + }, + "projectId": { + "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field has been deprecated and replaced by the name field.", + "type": "string" + }, + "zone": { + "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the name field.", + "type": "string" + } + }, + "type": "object" + }, + "SetNodePoolManagementRequest": { + "description": "SetNodePoolManagementRequest sets the node management properties of a node\npool.", + "id": "SetNodePoolManagementRequest", + "properties": { + "clusterId": { + "description": "Deprecated. The name of the cluster to update.\nThis field has been deprecated and replaced by the name field.", + "type": "string" + }, + "management": { + "$ref": "NodeManagement", + "description": "NodeManagement configuration for the node pool." + }, + "name": { + "description": "The name (project, location, cluster, node pool id) of the node pool to set\nmanagement properties. Specified in the format\n'projects/*/locations/*/clusters/*/nodePools/*'.", + "type": "string" + }, + "nodePoolId": { + "description": "Deprecated. The name of the node pool to update.\nThis field has been deprecated and replaced by the name field.", + "type": "string" + }, + "projectId": { + "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field has been deprecated and replaced by the name field.", + "type": "string" + }, + "zone": { + "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the name field.", + "type": "string" + } + }, + "type": "object" + }, + "SetNodePoolSizeRequest": { + "description": "SetNodePoolSizeRequest sets the size a node\npool.", + "id": "SetNodePoolSizeRequest", + "properties": { + "clusterId": { + "description": "Deprecated. The name of the cluster to update.\nThis field has been deprecated and replaced by the name field.", + "type": "string" + }, + "name": { + "description": "The name (project, location, cluster, node pool id) of the node pool to set\nsize.\nSpecified in the format 'projects/*/locations/*/clusters/*/nodePools/*'.", + "type": "string" + }, + "nodeCount": { + "description": "The desired node count for the pool.", + "format": "int32", + "type": "integer" + }, + "nodePoolId": { + "description": "Deprecated. The name of the node pool to update.\nThis field has been deprecated and replaced by the name field.", + "type": "string" + }, + "projectId": { + "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field has been deprecated and replaced by the name field.", + "type": "string" + }, + "zone": { + "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the name field.", + "type": "string" + } + }, + "type": "object" }, "StartIPRotationRequest": { - "properties": {}, - "id": "StartIPRotationRequest", "description": "StartIPRotationRequest creates a new IP for the cluster and then performs\na node upgrade on each node pool to point to the new IP.", + "id": "StartIPRotationRequest", + "properties": { + "clusterId": { + "description": "Deprecated. The name of the cluster.\nThis field has been deprecated and replaced by the name field.", + "type": "string" + }, + "name": { + "description": "The name (project, location, cluster id) of the cluster to start IP rotation.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", + "type": "string" + }, + "projectId": { + "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://developers.google.com/console/help/new/#projectnumber).\nThis field has been deprecated and replaced by the name field.", + "type": "string" + }, + "zone": { + "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the name field.", + "type": "string" + } + }, + "type": "object" + }, + "UpdateClusterRequest": { + "description": "UpdateClusterRequest updates the settings of a cluster.", + "id": "UpdateClusterRequest", + "properties": { + "clusterId": { + "description": "Deprecated. The name of the cluster to upgrade.\nThis field has been deprecated and replaced by the name field.", + "type": "string" + }, + "name": { + "description": "The name (project, location, cluster) of the cluster to update.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", + "type": "string" + }, + "projectId": { + "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field has been deprecated and replaced by the name field.", + "type": "string" + }, + "update": { + "$ref": "ClusterUpdate", + "description": "A description of the update." + }, + "zone": { + "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the name field.", + "type": "string" + } + }, + "type": "object" + }, + "UpdateMasterRequest": { + "description": "UpdateMasterRequest updates the master of the cluster.", + "id": "UpdateMasterRequest", + "properties": { + "clusterId": { + "description": "Deprecated. The name of the cluster to upgrade.\nThis field has been deprecated and replaced by the name field.", + "type": "string" + }, + "masterVersion": { + "description": "The Kubernetes version to change the master to.\n\nUsers may specify either explicit versions offered by Kubernetes Engine or\nversion aliases, which have the following behavior:\n\n- \"latest\": picks the highest valid Kubernetes version\n- \"1.X\": picks the highest valid patch+gke.N patch in the 1.X version\n- \"1.X.Y\": picks the highest valid gke.N patch in the 1.X.Y version\n- \"1.X.Y-gke.N\": picks an explicit Kubernetes version\n- \"-\": picks the default Kubernetes version", + "type": "string" + }, + "name": { + "description": "The name (project, location, cluster) of the cluster to update.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", + "type": "string" + }, + "projectId": { + "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field has been deprecated and replaced by the name field.", + "type": "string" + }, + "zone": { + "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the name field.", + "type": "string" + } + }, + "type": "object" + }, + "UpdateNodePoolRequest": { + "description": "UpdateNodePoolRequests update a node pool's image and/or version.", + "id": "UpdateNodePoolRequest", + "properties": { + "clusterId": { + "description": "Deprecated. The name of the cluster to upgrade.\nThis field has been deprecated and replaced by the name field.", + "type": "string" + }, + "imageType": { + "description": "The desired image type for the node pool.", + "type": "string" + }, + "name": { + "description": "The name (project, location, cluster, node pool) of the node pool to update.\nSpecified in the format 'projects/*/locations/*/clusters/*/nodePools/*'.", + "type": "string" + }, + "nodePoolId": { + "description": "Deprecated. The name of the node pool to upgrade.\nThis field has been deprecated and replaced by the name field.", + "type": "string" + }, + "nodeVersion": { + "description": "The Kubernetes version to change the nodes to (typically an\nupgrade).\n\nUsers may specify either explicit versions offered by Kubernetes Engine or\nversion aliases, which have the following behavior:\n\n- \"latest\": picks the highest valid Kubernetes version\n- \"1.X\": picks the highest valid patch+gke.N patch in the 1.X version\n- \"1.X.Y\": picks the highest valid gke.N patch in the 1.X.Y version\n- \"1.X.Y-gke.N\": picks an explicit Kubernetes version\n- \"-\": picks the Kubernetes master version", + "type": "string" + }, + "projectId": { + "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field has been deprecated and replaced by the name field.", + "type": "string" + }, + "zone": { + "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the name field.", + "type": "string" + } + }, "type": "object" } }, - "icons": { - "x16": "http://www.google.com/images/icons/product/search-16.gif", - "x32": "http://www.google.com/images/icons/product/search-32.gif" - }, - "protocol": "rest", - "canonicalName": "Container", - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/cloud-platform": { - "description": "View and manage your data across Google Cloud Platform services" - } - } - } - }, - "rootUrl": "https://container.googleapis.com/", - "ownerDomain": "google.com", - "name": "container", - "batchPath": "batch", - "fullyEncodeReservedExpansion": true, - "title": "Google Kubernetes Engine API", - "ownerName": "Google", - "resources": { - "projects": { - "resources": { - "zones": { - "methods": { - "getServerconfig": { - "description": "Returns configuration info about the Kubernetes Engine service.", - "response": { - "$ref": "ServerConfig" - }, - "parameterOrder": [ - "projectId", - "zone" - ], - "httpMethod": "GET", - "parameters": { - "projectId": { - "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).", - "required": true, - "type": "string", - "location": "path" - }, - "zone": { - "description": "The name of the Google Compute Engine [zone](/compute/docs/zones#available)\nto return operations for.", - "required": true, - "type": "string", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/projects/{projectId}/zones/{zone}/serverconfig", - "path": "v1/projects/{projectId}/zones/{zone}/serverconfig", - "id": "container.projects.zones.getServerconfig" - } - }, - "resources": { - "clusters": { - "methods": { - "startIpRotation": { - "path": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}:startIpRotation", - "id": "container.projects.zones.clusters.startIpRotation", - "request": { - "$ref": "StartIPRotationRequest" - }, - "description": "Start master IP rotation.", - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "projectId", - "zone", - "clusterId" - ], - "httpMethod": "POST", - "parameters": { - "projectId": { - "location": "path", - "description": "The Google Developers Console [project ID or project\nnumber](https://developers.google.com/console/help/new/#projectnumber).", - "required": true, - "type": "string" - }, - "zone": { - "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.", - "required": true, - "type": "string", - "location": "path" - }, - "clusterId": { - "location": "path", - "description": "The name of the cluster.", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}:startIpRotation" - }, - "setMaintenancePolicy": { - "path": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}:setMaintenancePolicy", - "id": "container.projects.zones.clusters.setMaintenancePolicy", - "description": "Sets the maintenance policy for a cluster.", - "request": { - "$ref": "SetMaintenancePolicyRequest" - }, - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "projectId", - "zone", - "clusterId" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "zone": { - "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.", - "required": true, - "type": "string", - "location": "path" - }, - "clusterId": { - "description": "The name of the cluster to update.", - "required": true, - "type": "string", - "location": "path" - }, - "projectId": { - "location": "path", - "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).", - "required": true, - "type": "string" - } - }, - "flatPath": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}:setMaintenancePolicy" - }, - "addons": { - "request": { - "$ref": "SetAddonsConfigRequest" - }, - "description": "Sets the addons of a specific cluster.", - "httpMethod": "POST", - "parameterOrder": [ - "projectId", - "zone", - "clusterId" - ], - "response": { - "$ref": "Operation" - }, - "parameters": { - "projectId": { - "location": "path", - "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).", - "required": true, - "type": "string" - }, - "zone": { - "location": "path", - "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.", - "required": true, - "type": "string" - }, - "clusterId": { - "description": "The name of the cluster to upgrade.", - "required": true, - "type": "string", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/addons", - "id": "container.projects.zones.clusters.addons", - "path": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/addons" - }, - "delete": { - "description": "Deletes the cluster, including the Kubernetes endpoint and all worker\nnodes.\n\nFirewalls and routes that were configured during cluster creation\nare also deleted.\n\nOther Google Compute Engine resources that might be in use by the cluster\n(e.g. load balancer resources) will not be deleted if they weren't present\nat the initial create time.", - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "projectId", - "zone", - "clusterId" - ], - "httpMethod": "DELETE", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "projectId": { - "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).", - "required": true, - "type": "string", - "location": "path" - }, - "zone": { - "location": "path", - "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.", - "required": true, - "type": "string" - }, - "clusterId": { - "description": "The name of the cluster to delete.", - "required": true, - "type": "string", - "location": "path" - } - }, - "flatPath": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}", - "path": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}", - "id": "container.projects.zones.clusters.delete" - }, - "locations": { - "path": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/locations", - "id": "container.projects.zones.clusters.locations", - "request": { - "$ref": "SetLocationsRequest" - }, - "description": "Sets the locations of a specific cluster.", - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "projectId", - "zone", - "clusterId" - ], - "httpMethod": "POST", - "parameters": { - "projectId": { - "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).", - "required": true, - "type": "string", - "location": "path" - }, - "zone": { - "location": "path", - "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.", - "required": true, - "type": "string" - }, - "clusterId": { - "location": "path", - "description": "The name of the cluster to upgrade.", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/locations" - }, - "update": { - "description": "Updates the settings of a specific cluster.", - "request": { - "$ref": "UpdateClusterRequest" - }, - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "projectId", - "zone", - "clusterId" - ], - "httpMethod": "PUT", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "zone": { - "location": "path", - "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.", - "required": true, - "type": "string" - }, - "clusterId": { - "location": "path", - "description": "The name of the cluster to upgrade.", - "required": true, - "type": "string" - }, - "projectId": { - "location": "path", - "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).", - "required": true, - "type": "string" - } - }, - "flatPath": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}", - "path": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}", - "id": "container.projects.zones.clusters.update" - }, - "monitoring": { - "path": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/monitoring", - "id": "container.projects.zones.clusters.monitoring", - "description": "Sets the monitoring service of a specific cluster.", - "request": { - "$ref": "SetMonitoringServiceRequest" - }, - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "projectId", - "zone", - "clusterId" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "projectId": { - "location": "path", - "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).", - "required": true, - "type": "string" - }, - "zone": { - "location": "path", - "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.", - "required": true, - "type": "string" - }, - "clusterId": { - "description": "The name of the cluster to upgrade.", - "required": true, - "type": "string", - "location": "path" - } - }, - "flatPath": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/monitoring" - }, - "master": { - "description": "Updates the master of a specific cluster.", - "request": { - "$ref": "UpdateMasterRequest" - }, - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "projectId", - "zone", - "clusterId" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "projectId": { - "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).", - "required": true, - "type": "string", - "location": "path" - }, - "zone": { - "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.", - "required": true, - "type": "string", - "location": "path" - }, - "clusterId": { - "location": "path", - "description": "The name of the cluster to upgrade.", - "required": true, - "type": "string" - } - }, - "flatPath": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/master", - "path": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/master", - "id": "container.projects.zones.clusters.master" - }, - "setMasterAuth": { - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "projectId", - "zone", - "clusterId" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "projectId": { - "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).", - "required": true, - "type": "string", - "location": "path" - }, - "zone": { - "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.", - "required": true, - "type": "string", - "location": "path" - }, - "clusterId": { - "description": "The name of the cluster to upgrade.", - "required": true, - "type": "string", - "location": "path" - } - }, - "flatPath": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}:setMasterAuth", - "path": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}:setMasterAuth", - "id": "container.projects.zones.clusters.setMasterAuth", - "description": "Used to set master auth materials. Currently supports :-\nChanging the admin password of a specific cluster.\nThis can be either via password generation or explicitly set the password.", - "request": { - "$ref": "SetMasterAuthRequest" - } - }, - "logging": { - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "projectId", - "zone", - "clusterId" - ], - "httpMethod": "POST", - "parameters": { - "zone": { - "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.", - "required": true, - "type": "string", - "location": "path" - }, - "clusterId": { - "description": "The name of the cluster to upgrade.", - "required": true, - "type": "string", - "location": "path" - }, - "projectId": { - "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).", - "required": true, - "type": "string", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/logging", - "path": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/logging", - "id": "container.projects.zones.clusters.logging", - "request": { - "$ref": "SetLoggingServiceRequest" - }, - "description": "Sets the logging service of a specific cluster." - }, - "list": { - "flatPath": "v1/projects/{projectId}/zones/{zone}/clusters", - "id": "container.projects.zones.clusters.list", - "path": "v1/projects/{projectId}/zones/{zone}/clusters", - "description": "Lists all clusters owned by a project in either the specified zone or all\nzones.", - "httpMethod": "GET", - "parameterOrder": [ - "projectId", - "zone" - ], - "response": { - "$ref": "ListClustersResponse" - }, - "parameters": { - "projectId": { - "location": "path", - "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).", - "required": true, - "type": "string" - }, - "zone": { - "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides, or \"-\" for all zones.", - "required": true, - "type": "string", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "create": { - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "projectId", - "zone" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "projectId": { - "location": "path", - "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).", - "required": true, - "type": "string" - }, - "zone": { - "location": "path", - "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.", - "required": true, - "type": "string" - } - }, - "flatPath": "v1/projects/{projectId}/zones/{zone}/clusters", - "path": "v1/projects/{projectId}/zones/{zone}/clusters", - "id": "container.projects.zones.clusters.create", - "description": "Creates a cluster, consisting of the specified number and type of Google\nCompute Engine instances.\n\nBy default, the cluster is created in the project's\n[default network](/compute/docs/networks-and-firewalls#networks).\n\nOne firewall is added for the cluster. After cluster creation,\nthe cluster creates routes for each node to allow the containers\non that node to communicate with all other instances in the\ncluster.\n\nFinally, an entry is added to the project's global metadata indicating\nwhich CIDR range is being used by the cluster.", - "request": { - "$ref": "CreateClusterRequest" - } - }, - "resourceLabels": { - "description": "Sets labels on a cluster.", - "request": { - "$ref": "SetLabelsRequest" - }, - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "projectId", - "zone", - "clusterId" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "projectId": { - "location": "path", - "description": "The Google Developers Console [project ID or project\nnumber](https://developers.google.com/console/help/new/#projectnumber).", - "required": true, - "type": "string" - }, - "zone": { - "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.", - "required": true, - "type": "string", - "location": "path" - }, - "clusterId": { - "description": "The name of the cluster.", - "required": true, - "type": "string", - "location": "path" - } - }, - "flatPath": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/resourceLabels", - "path": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/resourceLabels", - "id": "container.projects.zones.clusters.resourceLabels" - }, - "completeIpRotation": { - "description": "Completes master IP rotation.", - "request": { - "$ref": "CompleteIPRotationRequest" - }, - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "projectId", - "zone", - "clusterId" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "zone": { - "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.", - "required": true, - "type": "string", - "location": "path" - }, - "clusterId": { - "description": "The name of the cluster.", - "required": true, - "type": "string", - "location": "path" - }, - "projectId": { - "description": "The Google Developers Console [project ID or project\nnumber](https://developers.google.com/console/help/new/#projectnumber).", - "required": true, - "type": "string", - "location": "path" - } - }, - "flatPath": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}:completeIpRotation", - "path": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}:completeIpRotation", - "id": "container.projects.zones.clusters.completeIpRotation" - }, - "setNetworkPolicy": { - "flatPath": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}:setNetworkPolicy", - "path": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}:setNetworkPolicy", - "id": "container.projects.zones.clusters.setNetworkPolicy", - "description": "Enables/Disables Network Policy for a cluster.", - "request": { - "$ref": "SetNetworkPolicyRequest" - }, - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "projectId", - "zone", - "clusterId" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "projectId": { - "description": "The Google Developers Console [project ID or project\nnumber](https://developers.google.com/console/help/new/#projectnumber).", - "required": true, - "type": "string", - "location": "path" - }, - "zone": { - "location": "path", - "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.", - "required": true, - "type": "string" - }, - "clusterId": { - "description": "The name of the cluster.", - "required": true, - "type": "string", - "location": "path" - } - } - }, - "legacyAbac": { - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "projectId", - "zone", - "clusterId" - ], - "httpMethod": "POST", - "parameters": { - "projectId": { - "location": "path", - "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).", - "required": true, - "type": "string" - }, - "zone": { - "location": "path", - "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.", - "required": true, - "type": "string" - }, - "clusterId": { - "location": "path", - "description": "The name of the cluster to update.", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/legacyAbac", - "path": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/legacyAbac", - "id": "container.projects.zones.clusters.legacyAbac", - "request": { - "$ref": "SetLegacyAbacRequest" - }, - "description": "Enables or disables the ABAC authorization mechanism on a cluster." - }, - "get": { - "response": { - "$ref": "Cluster" - }, - "parameterOrder": [ - "projectId", - "zone", - "clusterId" - ], - "httpMethod": "GET", - "parameters": { - "projectId": { - "location": "path", - "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).", - "required": true, - "type": "string" - }, - "zone": { - "location": "path", - "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.", - "required": true, - "type": "string" - }, - "clusterId": { - "description": "The name of the cluster to retrieve.", - "required": true, - "type": "string", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}", - "path": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}", - "id": "container.projects.zones.clusters.get", - "description": "Gets the details of a specific cluster." - } - }, - "resources": { - "nodePools": { - "methods": { - "update": { - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "projectId", - "zone", - "clusterId", - "nodePoolId" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "projectId": { - "location": "path", - "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).", - "required": true, - "type": "string" - }, - "zone": { - "location": "path", - "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.", - "required": true, - "type": "string" - }, - "clusterId": { - "location": "path", - "description": "The name of the cluster to upgrade.", - "required": true, - "type": "string" - }, - "nodePoolId": { - "description": "The name of the node pool to upgrade.", - "required": true, - "type": "string", - "location": "path" - } - }, - "flatPath": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/nodePools/{nodePoolId}/update", - "path": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/nodePools/{nodePoolId}/update", - "id": "container.projects.zones.clusters.nodePools.update", - "description": "Updates the version and/or image type of a specific node pool.", - "request": { - "$ref": "UpdateNodePoolRequest" - } - }, - "setSize": { - "httpMethod": "POST", - "parameterOrder": [ - "projectId", - "zone", - "clusterId", - "nodePoolId" - ], - "response": { - "$ref": "Operation" - }, - "parameters": { - "zone": { - "location": "path", - "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.", - "required": true, - "type": "string" - }, - "clusterId": { - "location": "path", - "description": "The name of the cluster to update.", - "required": true, - "type": "string" - }, - "nodePoolId": { - "description": "The name of the node pool to update.", - "required": true, - "type": "string", - "location": "path" - }, - "projectId": { - "location": "path", - "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/nodePools/{nodePoolId}/setSize", - "id": "container.projects.zones.clusters.nodePools.setSize", - "path": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/nodePools/{nodePoolId}/setSize", - "request": { - "$ref": "SetNodePoolSizeRequest" - }, - "description": "Sets the size of a specific node pool." - }, - "setManagement": { - "description": "Sets the NodeManagement options for a node pool.", - "request": { - "$ref": "SetNodePoolManagementRequest" - }, - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "projectId", - "zone", - "clusterId", - "nodePoolId" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "projectId": { - "location": "path", - "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).", - "required": true, - "type": "string" - }, - "zone": { - "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.", - "required": true, - "type": "string", - "location": "path" - }, - "clusterId": { - "location": "path", - "description": "The name of the cluster to update.", - "required": true, - "type": "string" - }, - "nodePoolId": { - "location": "path", - "description": "The name of the node pool to update.", - "required": true, - "type": "string" - } - }, - "flatPath": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/nodePools/{nodePoolId}/setManagement", - "path": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/nodePools/{nodePoolId}/setManagement", - "id": "container.projects.zones.clusters.nodePools.setManagement" - }, - "delete": { - "flatPath": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/nodePools/{nodePoolId}", - "path": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/nodePools/{nodePoolId}", - "id": "container.projects.zones.clusters.nodePools.delete", - "description": "Deletes a node pool from a cluster.", - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "projectId", - "zone", - "clusterId", - "nodePoolId" - ], - "httpMethod": "DELETE", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "projectId": { - "location": "path", - "description": "The Google Developers Console [project ID or project\nnumber](https://developers.google.com/console/help/new/#projectnumber).", - "required": true, - "type": "string" - }, - "zone": { - "location": "path", - "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.", - "required": true, - "type": "string" - }, - "clusterId": { - "description": "The name of the cluster.", - "required": true, - "type": "string", - "location": "path" - }, - "nodePoolId": { - "location": "path", - "description": "The name of the node pool to delete.", - "required": true, - "type": "string" - } - } - }, - "list": { - "description": "Lists the node pools for a cluster.", - "response": { - "$ref": "ListNodePoolsResponse" - }, - "parameterOrder": [ - "projectId", - "zone", - "clusterId" - ], - "httpMethod": "GET", - "parameters": { - "projectId": { - "description": "The Google Developers Console [project ID or project\nnumber](https://developers.google.com/console/help/new/#projectnumber).", - "required": true, - "type": "string", - "location": "path" - }, - "zone": { - "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.", - "required": true, - "type": "string", - "location": "path" - }, - "clusterId": { - "location": "path", - "description": "The name of the cluster.", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/nodePools", - "path": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/nodePools", - "id": "container.projects.zones.clusters.nodePools.list" - }, - "rollback": { - "request": { - "$ref": "RollbackNodePoolUpgradeRequest" - }, - "description": "Roll back the previously Aborted or Failed NodePool upgrade.\nThis will be an no-op if the last upgrade successfully completed.", - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "projectId", - "zone", - "clusterId", - "nodePoolId" - ], - "httpMethod": "POST", - "parameters": { - "projectId": { - "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).", - "required": true, - "type": "string", - "location": "path" - }, - "zone": { - "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.", - "required": true, - "type": "string", - "location": "path" - }, - "clusterId": { - "location": "path", - "description": "The name of the cluster to rollback.", - "required": true, - "type": "string" - }, - "nodePoolId": { - "location": "path", - "description": "The name of the node pool to rollback.", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/nodePools/{nodePoolId}:rollback", - "path": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/nodePools/{nodePoolId}:rollback", - "id": "container.projects.zones.clusters.nodePools.rollback" - }, - "create": { - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "projectId", - "zone", - "clusterId" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "zone": { - "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.", - "required": true, - "type": "string", - "location": "path" - }, - "clusterId": { - "description": "The name of the cluster.", - "required": true, - "type": "string", - "location": "path" - }, - "projectId": { - "location": "path", - "description": "The Google Developers Console [project ID or project\nnumber](https://developers.google.com/console/help/new/#projectnumber).", - "required": true, - "type": "string" - } - }, - "flatPath": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/nodePools", - "path": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/nodePools", - "id": "container.projects.zones.clusters.nodePools.create", - "description": "Creates a node pool for a cluster.", - "request": { - "$ref": "CreateNodePoolRequest" - } - }, - "autoscaling": { - "path": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/nodePools/{nodePoolId}/autoscaling", - "id": "container.projects.zones.clusters.nodePools.autoscaling", - "description": "Sets the autoscaling settings of a specific node pool.", - "request": { - "$ref": "SetNodePoolAutoscalingRequest" - }, - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "projectId", - "zone", - "clusterId", - "nodePoolId" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "zone": { - "location": "path", - "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.", - "required": true, - "type": "string" - }, - "clusterId": { - "location": "path", - "description": "The name of the cluster to upgrade.", - "required": true, - "type": "string" - }, - "nodePoolId": { - "description": "The name of the node pool to upgrade.", - "required": true, - "type": "string", - "location": "path" - }, - "projectId": { - "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).", - "required": true, - "type": "string", - "location": "path" - } - }, - "flatPath": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/nodePools/{nodePoolId}/autoscaling" - }, - "get": { - "response": { - "$ref": "NodePool" - }, - "parameterOrder": [ - "projectId", - "zone", - "clusterId", - "nodePoolId" - ], - "httpMethod": "GET", - "parameters": { - "projectId": { - "location": "path", - "description": "The Google Developers Console [project ID or project\nnumber](https://developers.google.com/console/help/new/#projectnumber).", - "required": true, - "type": "string" - }, - "zone": { - "location": "path", - "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.", - "required": true, - "type": "string" - }, - "clusterId": { - "description": "The name of the cluster.", - "required": true, - "type": "string", - "location": "path" - }, - "nodePoolId": { - "location": "path", - "description": "The name of the node pool.", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/nodePools/{nodePoolId}", - "path": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/nodePools/{nodePoolId}", - "id": "container.projects.zones.clusters.nodePools.get", - "description": "Retrieves the node pool requested." - } - } - } - } - }, - "operations": { - "methods": { - "cancel": { - "id": "container.projects.zones.operations.cancel", - "path": "v1/projects/{projectId}/zones/{zone}/operations/{operationId}:cancel", - "request": { - "$ref": "CancelOperationRequest" - }, - "description": "Cancels the specified operation.", - "httpMethod": "POST", - "parameterOrder": [ - "projectId", - "zone", - "operationId" - ], - "response": { - "$ref": "Empty" - }, - "parameters": { - "zone": { - "location": "path", - "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the operation resides.", - "required": true, - "type": "string" - }, - "operationId": { - "description": "The server-assigned `name` of the operation.", - "required": true, - "type": "string", - "location": "path" - }, - "projectId": { - "location": "path", - "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/projects/{projectId}/zones/{zone}/operations/{operationId}:cancel" - }, - "list": { - "description": "Lists all operations in a project in a specific zone or all zones.", - "response": { - "$ref": "ListOperationsResponse" - }, - "parameterOrder": [ - "projectId", - "zone" - ], - "httpMethod": "GET", - "parameters": { - "projectId": { - "location": "path", - "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).", - "required": true, - "type": "string" - }, - "zone": { - "description": "The name of the Google Compute Engine [zone](/compute/docs/zones#available)\nto return operations for, or `-` for all zones.", - "required": true, - "type": "string", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/projects/{projectId}/zones/{zone}/operations", - "path": "v1/projects/{projectId}/zones/{zone}/operations", - "id": "container.projects.zones.operations.list" - }, - "get": { - "flatPath": "v1/projects/{projectId}/zones/{zone}/operations/{operationId}", - "path": "v1/projects/{projectId}/zones/{zone}/operations/{operationId}", - "id": "container.projects.zones.operations.get", - "description": "Gets the specified operation.", - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "projectId", - "zone", - "operationId" - ], - "httpMethod": "GET", - "parameters": { - "operationId": { - "location": "path", - "description": "The server-assigned `name` of the operation.", - "required": true, - "type": "string" - }, - "projectId": { - "location": "path", - "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).", - "required": true, - "type": "string" - }, - "zone": { - "location": "path", - "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - } - } - } - } - } - } - } - }, - "parameters": { - "quotaUser": { - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", - "type": "string", - "location": "query" - }, - "pp": { - "location": "query", - "description": "Pretty-print response.", - "type": "boolean", - "default": "true" - }, - "oauth_token": { - "description": "OAuth 2.0 token for the current user.", - "type": "string", - "location": "query" - }, - "bearer_token": { - "location": "query", - "description": "OAuth bearer token.", - "type": "string" - }, - "upload_protocol": { - "location": "query", - "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", - "type": "string" - }, - "prettyPrint": { - "description": "Returns response with indentations and line breaks.", - "type": "boolean", - "default": "true", - "location": "query" - }, - "fields": { - "location": "query", - "description": "Selector specifying which fields to include in a partial response.", - "type": "string" - }, - "uploadType": { - "location": "query", - "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", - "type": "string" - }, - "$.xgafv": { - "enumDescriptions": [ - "v1 error format", - "v2 error format" - ], - "location": "query", - "enum": [ - "1", - "2" - ], - "description": "V1 error format.", - "type": "string" - }, - "callback": { - "location": "query", - "description": "JSONP", - "type": "string" - }, - "alt": { - "type": "string", - "enumDescriptions": [ - "Responses with Content-Type of application/json", - "Media download with context-dependent Content-Type", - "Responses with Content-Type of application/x-protobuf" - ], - "location": "query", - "description": "Data format for response.", - "default": "json", - "enum": [ - "json", - "media", - "proto" - ] - }, - "access_token": { - "description": "OAuth access token.", - "type": "string", - "location": "query" - }, - "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.", - "type": "string", - "location": "query" - } - }, - "version": "v1", - "baseUrl": "https://container.googleapis.com/", "servicePath": "", - "description": "The Google Kubernetes Engine API is used for building and managing container based applications, powered by the open source Kubernetes technology.", - "kind": "discovery#restDescription", - "basePath": "", - "documentationLink": "https://cloud.google.com/container-engine/", - "revision": "20180108", - "id": "container:v1" -} + "title": "Google Kubernetes Engine API", + "version": "v1" +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/container/v1/container-gen.go b/vendor/google.golang.org/api/container/v1/container-gen.go index b6c69885e..f1f6912f2 100644 --- a/vendor/google.golang.org/api/container/v1/container-gen.go +++ b/vendor/google.golang.org/api/container/v1/container-gen.go @@ -77,6 +77,7 @@ func (s *Service) userAgent() string { func NewProjectsService(s *Service) *ProjectsService { rs := &ProjectsService{s: s} + rs.Locations = NewProjectsLocationsService(s) rs.Zones = NewProjectsZonesService(s) return rs } @@ -84,9 +85,56 @@ func NewProjectsService(s *Service) *ProjectsService { type ProjectsService struct { s *Service + Locations *ProjectsLocationsService + Zones *ProjectsZonesService } +func NewProjectsLocationsService(s *Service) *ProjectsLocationsService { + rs := &ProjectsLocationsService{s: s} + rs.Clusters = NewProjectsLocationsClustersService(s) + rs.Operations = NewProjectsLocationsOperationsService(s) + return rs +} + +type ProjectsLocationsService struct { + s *Service + + Clusters *ProjectsLocationsClustersService + + Operations *ProjectsLocationsOperationsService +} + +func NewProjectsLocationsClustersService(s *Service) *ProjectsLocationsClustersService { + rs := &ProjectsLocationsClustersService{s: s} + rs.NodePools = NewProjectsLocationsClustersNodePoolsService(s) + return rs +} + +type ProjectsLocationsClustersService struct { + s *Service + + NodePools *ProjectsLocationsClustersNodePoolsService +} + +func NewProjectsLocationsClustersNodePoolsService(s *Service) *ProjectsLocationsClustersNodePoolsService { + rs := &ProjectsLocationsClustersNodePoolsService{s: s} + return rs +} + +type ProjectsLocationsClustersNodePoolsService struct { + s *Service +} + +func NewProjectsLocationsOperationsService(s *Service) *ProjectsLocationsOperationsService { + rs := &ProjectsLocationsOperationsService{s: s} + return rs +} + +type ProjectsLocationsOperationsService struct { + s *Service +} + func NewProjectsZonesService(s *Service) *ProjectsZonesService { rs := &ProjectsZonesService{s: s} rs.Clusters = NewProjectsZonesClustersService(s) @@ -264,6 +312,51 @@ func (s *AutoUpgradeOptions) MarshalJSON() ([]byte, error) { // CancelOperationRequest: CancelOperationRequest cancels a single // operation. type CancelOperationRequest struct { + // Name: The name (project, location, operation id) of the operation to + // cancel. + // Specified in the format 'projects/*/locations/*/operations/*'. + Name string `json:"name,omitempty"` + + // OperationId: Deprecated. The server-assigned `name` of the + // operation. + // This field has been deprecated and replaced by the name field. + OperationId string `json:"operationId,omitempty"` + + // ProjectId: Deprecated. The Google Developers Console [project ID or + // project + // number](https://support.google.com/cloud/answer/6158840). + // This + // field has been deprecated and replaced by the name field. + ProjectId string `json:"projectId,omitempty"` + + // Zone: Deprecated. The name of the Google Compute + // Engine + // [zone](/compute/docs/zones#available) in which the operation + // resides. + // This field has been deprecated and replaced by the name field. + Zone string `json:"zone,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Name") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Name") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *CancelOperationRequest) MarshalJSON() ([]byte, error) { + type NoMethod CancelOperationRequest + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } // CidrBlock: CidrBlock contains an optional name and one CIDR block. @@ -403,6 +496,17 @@ type Cluster struct { // be upgraded over time; such upgrades are reflected // in // currentMasterVersion and currentNodeVersion. + // + // Users may specify either explicit versions offered by + // Kubernetes Engine or version aliases, which have the following + // behavior: + // + // - "latest": picks the highest valid Kubernetes version + // - "1.X": picks the highest valid patch+gke.N patch in the 1.X + // version + // - "1.X.Y": picks the highest valid gke.N patch in the 1.X.Y version + // - "1.X.Y-gke.N": picks an explicit Kubernetes version + // - "","-": picks the default Kubernetes version InitialClusterVersion string `json:"initialClusterVersion,omitempty"` // InitialNodeCount: The number of nodes to create in this cluster. You @@ -434,6 +538,15 @@ type Cluster struct { // LegacyAbac: Configuration for the legacy ABAC authorization mode. LegacyAbac *LegacyAbac `json:"legacyAbac,omitempty"` + // Location: [Output only] The name of the Google Compute + // Engine + // [zone](/compute/docs/regions-zones/regions-zones#available) + // or + // [region](/compute/docs/regions-zones/regions-zones#available) in + // which + // the cluster resides. + Location string `json:"location,omitempty"` + // Locations: The list of Google Compute // Engine // [locations](/compute/docs/zones#available) in which the cluster's @@ -560,6 +673,10 @@ type Cluster struct { // "ERROR" - The ERROR state indicates the cluster may be unusable. // Details // can be found in the `statusMessage` field. + // "DEGRADED" - The DEGRADED state indicates the cluster requires user + // action to restore + // full functionality. Details can be found in the `statusMessage` + // field. Status string `json:"status,omitempty"` // StatusMessage: [Output only] Additional information about the current @@ -575,8 +692,10 @@ type Cluster struct { // Zone: [Output only] The name of the Google Compute // Engine - // [zone](/compute/docs/zones#available) in which the cluster + // [zone](/compute/docs/zones#available) in which the + // cluster // resides. + // This field is deprecated, use location instead. Zone string `json:"zone,omitempty"` // ServerResponse contains the HTTP response code and headers from the @@ -639,11 +758,19 @@ type ClusterUpdate struct { // feature. DesiredMasterAuthorizedNetworksConfig *MasterAuthorizedNetworksConfig `json:"desiredMasterAuthorizedNetworksConfig,omitempty"` - // DesiredMasterVersion: The Kubernetes version to change the master to. - // The only valid value is the - // latest supported version. Use "-" to have the server automatically - // select - // the latest version. + // DesiredMasterVersion: The Kubernetes version to change the master + // to. + // + // Users may specify either explicit versions offered by + // Kubernetes Engine or version aliases, which have the following + // behavior: + // + // - "latest": picks the highest valid Kubernetes version + // - "1.X": picks the highest valid patch+gke.N patch in the 1.X + // version + // - "1.X.Y": picks the highest valid gke.N patch in the 1.X.Y version + // - "1.X.Y-gke.N": picks an explicit Kubernetes version + // - "-": picks the default Kubernetes version DesiredMasterVersion string `json:"desiredMasterVersion,omitempty"` // DesiredMonitoringService: The monitoring service the cluster should @@ -672,8 +799,18 @@ type ClusterUpdate struct { // DesiredNodeVersion: The Kubernetes version to change the nodes to // (typically an - // upgrade). Use `-` to upgrade to the latest version supported by - // the server. + // upgrade). + // + // Users may specify either explicit versions offered by + // Kubernetes Engine or version aliases, which have the following + // behavior: + // + // - "latest": picks the highest valid Kubernetes version + // - "1.X": picks the highest valid patch+gke.N patch in the 1.X + // version + // - "1.X.Y": picks the highest valid gke.N patch in the 1.X.Y version + // - "1.X.Y-gke.N": picks an explicit Kubernetes version + // - "-": picks the Kubernetes master version DesiredNodeVersion string `json:"desiredNodeVersion,omitempty"` // ForceSendFields is a list of field names (e.g. "DesiredAddonsConfig") @@ -703,6 +840,51 @@ func (s *ClusterUpdate) MarshalJSON() ([]byte, error) { // CompleteIPRotationRequest: CompleteIPRotationRequest moves the // cluster master back into single-IP mode. type CompleteIPRotationRequest struct { + // ClusterId: Deprecated. The name of the cluster. + // This field has been deprecated and replaced by the name field. + ClusterId string `json:"clusterId,omitempty"` + + // Name: The name (project, location, cluster id) of the cluster to + // complete IP rotation. + // Specified in the format 'projects/*/locations/*/clusters/*'. + Name string `json:"name,omitempty"` + + // ProjectId: Deprecated. The Google Developers Console [project ID or + // project + // number](https://developers.google.com/console/help/new/#projec + // tnumber). + // This field has been deprecated and replaced by the name field. + ProjectId string `json:"projectId,omitempty"` + + // Zone: Deprecated. The name of the Google Compute + // Engine + // [zone](/compute/docs/zones#available) in which the + // cluster + // resides. + // This field has been deprecated and replaced by the name field. + Zone string `json:"zone,omitempty"` + + // ForceSendFields is a list of field names (e.g. "ClusterId") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "ClusterId") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *CompleteIPRotationRequest) MarshalJSON() ([]byte, error) { + type NoMethod CompleteIPRotationRequest + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } // CreateClusterRequest: CreateClusterRequest creates a cluster. @@ -713,6 +895,26 @@ type CreateClusterRequest struct { // clusters) Cluster *Cluster `json:"cluster,omitempty"` + // Parent: The parent (project and location) where the cluster will be + // created. + // Specified in the format 'projects/*/locations/*'. + Parent string `json:"parent,omitempty"` + + // ProjectId: Deprecated. The Google Developers Console [project ID or + // project + // number](https://support.google.com/cloud/answer/6158840). + // This + // field has been deprecated and replaced by the parent field. + ProjectId string `json:"projectId,omitempty"` + + // Zone: Deprecated. The name of the Google Compute + // Engine + // [zone](/compute/docs/zones#available) in which the + // cluster + // resides. + // This field has been deprecated and replaced by the parent field. + Zone string `json:"zone,omitempty"` + // ForceSendFields is a list of field names (e.g. "Cluster") to // unconditionally include in API requests. By default, fields with // empty values are omitted from API requests. However, any non-pointer, @@ -739,10 +941,35 @@ func (s *CreateClusterRequest) MarshalJSON() ([]byte, error) { // CreateNodePoolRequest: CreateNodePoolRequest creates a node pool for // a cluster. type CreateNodePoolRequest struct { + // ClusterId: Deprecated. The name of the cluster. + // This field has been deprecated and replaced by the parent field. + ClusterId string `json:"clusterId,omitempty"` + // NodePool: The node pool to create. NodePool *NodePool `json:"nodePool,omitempty"` - // ForceSendFields is a list of field names (e.g. "NodePool") to + // Parent: The parent (project, location, cluster id) where the node + // pool will be created. + // Specified in the format + // 'projects/*/locations/*/clusters/*/nodePools/*'. + Parent string `json:"parent,omitempty"` + + // ProjectId: Deprecated. The Google Developers Console [project ID or + // project + // number](https://developers.google.com/console/help/new/#projec + // tnumber). + // This field has been deprecated and replaced by the parent field. + ProjectId string `json:"projectId,omitempty"` + + // Zone: Deprecated. The name of the Google Compute + // Engine + // [zone](/compute/docs/zones#available) in which the + // cluster + // resides. + // This field has been deprecated and replaced by the parent field. + Zone string `json:"zone,omitempty"` + + // ForceSendFields is a list of field names (e.g. "ClusterId") to // unconditionally include in API requests. By default, fields with // empty values are omitted from API requests. However, any non-pointer, // non-interface field appearing in ForceSendFields will be sent to the @@ -750,7 +977,7 @@ type CreateNodePoolRequest struct { // used to include empty fields in Patch requests. ForceSendFields []string `json:"-"` - // NullFields is a list of field names (e.g. "NodePool") to include in + // NullFields is a list of field names (e.g. "ClusterId") to include in // API requests with the JSON null value. By default, fields with empty // values are omitted from API requests. However, any field with an // empty value appearing in NullFields will be sent to the server as @@ -1523,6 +1750,7 @@ type NodeConfig struct { // Additionally, to avoid ambiguity, keys must not conflict with any // other // metadata keys for the project or be one of the reserved keys: + // "cluster-location" // "cluster-name" // "cluster-uid" // "configure-sh" @@ -1829,6 +2057,15 @@ type Operation struct { // [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format. EndTime string `json:"endTime,omitempty"` + // Location: [Output only] The name of the Google Compute + // Engine + // [zone](/compute/docs/regions-zones/regions-zones#available) + // or + // [region](/compute/docs/regions-zones/regions-zones#available) in + // which + // the cluster resides. + Location string `json:"location,omitempty"` + // Name: The server-assigned ID for the operation. Name string `json:"name,omitempty"` @@ -1883,6 +2120,7 @@ type Operation struct { // Engine // [zone](/compute/docs/zones#available) in which the operation // is taking place. + // This field is deprecated, use location instead. Zone string `json:"zone,omitempty"` // ServerResponse contains the HTTP response code and headers from the @@ -1918,6 +2156,57 @@ func (s *Operation) MarshalJSON() ([]byte, error) { // successfully // completed. type RollbackNodePoolUpgradeRequest struct { + // ClusterId: Deprecated. The name of the cluster to rollback. + // This field has been deprecated and replaced by the name field. + ClusterId string `json:"clusterId,omitempty"` + + // Name: The name (project, location, cluster, node pool id) of the node + // poll to + // rollback upgrade. + // Specified in the format + // 'projects/*/locations/*/clusters/*/nodePools/*'. + Name string `json:"name,omitempty"` + + // NodePoolId: Deprecated. The name of the node pool to rollback. + // This field has been deprecated and replaced by the name field. + NodePoolId string `json:"nodePoolId,omitempty"` + + // ProjectId: Deprecated. The Google Developers Console [project ID or + // project + // number](https://support.google.com/cloud/answer/6158840). + // This + // field has been deprecated and replaced by the name field. + ProjectId string `json:"projectId,omitempty"` + + // Zone: Deprecated. The name of the Google Compute + // Engine + // [zone](/compute/docs/zones#available) in which the + // cluster + // resides. + // This field has been deprecated and replaced by the name field. + Zone string `json:"zone,omitempty"` + + // ForceSendFields is a list of field names (e.g. "ClusterId") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "ClusterId") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *RollbackNodePoolUpgradeRequest) MarshalJSON() ([]byte, error) { + type NoMethod RollbackNodePoolUpgradeRequest + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } // ServerConfig: Kubernetes Engine service configuration. @@ -1975,6 +2264,30 @@ type SetAddonsConfigRequest struct { // cluster. AddonsConfig *AddonsConfig `json:"addonsConfig,omitempty"` + // ClusterId: Deprecated. The name of the cluster to upgrade. + // This field has been deprecated and replaced by the name field. + ClusterId string `json:"clusterId,omitempty"` + + // Name: The name (project, location, cluster) of the cluster to set + // addons. + // Specified in the format 'projects/*/locations/*/clusters/*'. + Name string `json:"name,omitempty"` + + // ProjectId: Deprecated. The Google Developers Console [project ID or + // project + // number](https://support.google.com/cloud/answer/6158840). + // This + // field has been deprecated and replaced by the name field. + ProjectId string `json:"projectId,omitempty"` + + // Zone: Deprecated. The name of the Google Compute + // Engine + // [zone](/compute/docs/zones#available) in which the + // cluster + // resides. + // This field has been deprecated and replaced by the name field. + Zone string `json:"zone,omitempty"` + // ForceSendFields is a list of field names (e.g. "AddonsConfig") to // unconditionally include in API requests. By default, fields with // empty values are omitted from API requests. However, any non-pointer, @@ -2004,6 +2317,10 @@ func (s *SetAddonsConfigRequest) MarshalJSON() ([]byte, error) { // Engine // resources used by that cluster type SetLabelsRequest struct { + // ClusterId: Deprecated. The name of the cluster. + // This field has been deprecated and replaced by the name field. + ClusterId string `json:"clusterId,omitempty"` + // LabelFingerprint: The fingerprint of the previous set of labels for // this resource, // used to detect conflicts. The fingerprint is initially generated @@ -2017,10 +2334,30 @@ type SetLabelsRequest struct { // resource to get the latest fingerprint. LabelFingerprint string `json:"labelFingerprint,omitempty"` + // Name: The name (project, location, cluster id) of the cluster to set + // labels. + // Specified in the format 'projects/*/locations/*/clusters/*'. + Name string `json:"name,omitempty"` + + // ProjectId: Deprecated. The Google Developers Console [project ID or + // project + // number](https://developers.google.com/console/help/new/#projec + // tnumber). + // This field has been deprecated and replaced by the name field. + ProjectId string `json:"projectId,omitempty"` + // ResourceLabels: The labels to set for that cluster. ResourceLabels map[string]string `json:"resourceLabels,omitempty"` - // ForceSendFields is a list of field names (e.g. "LabelFingerprint") to + // Zone: Deprecated. The name of the Google Compute + // Engine + // [zone](/compute/docs/zones#available) in which the + // cluster + // resides. + // This field has been deprecated and replaced by the name field. + Zone string `json:"zone,omitempty"` + + // ForceSendFields is a list of field names (e.g. "ClusterId") to // unconditionally include in API requests. By default, fields with // empty values are omitted from API requests. However, any non-pointer, // non-interface field appearing in ForceSendFields will be sent to the @@ -2028,13 +2365,12 @@ type SetLabelsRequest struct { // used to include empty fields in Patch requests. ForceSendFields []string `json:"-"` - // NullFields is a list of field names (e.g. "LabelFingerprint") to - // include in API requests with the JSON null value. By default, fields - // with empty values are omitted from API requests. However, any field - // with an empty value appearing in NullFields will be sent to the - // server as null. It is an error if a field in this list has a - // non-empty value. This may be used to include null fields in Patch - // requests. + // NullFields is a list of field names (e.g. "ClusterId") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. NullFields []string `json:"-"` } @@ -2048,10 +2384,34 @@ func (s *SetLabelsRequest) MarshalJSON() ([]byte, error) { // ABAC authorization mechanism for // a cluster. type SetLegacyAbacRequest struct { + // ClusterId: Deprecated. The name of the cluster to update. + // This field has been deprecated and replaced by the name field. + ClusterId string `json:"clusterId,omitempty"` + // Enabled: Whether ABAC authorization will be enabled in the cluster. Enabled bool `json:"enabled,omitempty"` - // ForceSendFields is a list of field names (e.g. "Enabled") to + // Name: The name (project, location, cluster id) of the cluster to set + // legacy abac. + // Specified in the format 'projects/*/locations/*/clusters/*'. + Name string `json:"name,omitempty"` + + // ProjectId: Deprecated. The Google Developers Console [project ID or + // project + // number](https://support.google.com/cloud/answer/6158840). + // This + // field has been deprecated and replaced by the name field. + ProjectId string `json:"projectId,omitempty"` + + // Zone: Deprecated. The name of the Google Compute + // Engine + // [zone](/compute/docs/zones#available) in which the + // cluster + // resides. + // This field has been deprecated and replaced by the name field. + Zone string `json:"zone,omitempty"` + + // ForceSendFields is a list of field names (e.g. "ClusterId") to // unconditionally include in API requests. By default, fields with // empty values are omitted from API requests. However, any non-pointer, // non-interface field appearing in ForceSendFields will be sent to the @@ -2059,7 +2419,7 @@ type SetLegacyAbacRequest struct { // used to include empty fields in Patch requests. ForceSendFields []string `json:"-"` - // NullFields is a list of field names (e.g. "Enabled") to include in + // NullFields is a list of field names (e.g. "ClusterId") to include in // API requests with the JSON null value. By default, fields with empty // values are omitted from API requests. However, any field with an // empty value appearing in NullFields will be sent to the server as @@ -2077,6 +2437,10 @@ func (s *SetLegacyAbacRequest) MarshalJSON() ([]byte, error) { // SetLocationsRequest: SetLocationsRequest sets the locations of the // cluster. type SetLocationsRequest struct { + // ClusterId: Deprecated. The name of the cluster to upgrade. + // This field has been deprecated and replaced by the name field. + ClusterId string `json:"clusterId,omitempty"` + // Locations: The desired list of Google Compute // Engine // [locations](/compute/docs/zones#available) in which the cluster's @@ -2090,7 +2454,27 @@ type SetLocationsRequest struct { // This list must always include the cluster's primary zone. Locations []string `json:"locations,omitempty"` - // ForceSendFields is a list of field names (e.g. "Locations") to + // Name: The name (project, location, cluster) of the cluster to set + // locations. + // Specified in the format 'projects/*/locations/*/clusters/*'. + Name string `json:"name,omitempty"` + + // ProjectId: Deprecated. The Google Developers Console [project ID or + // project + // number](https://support.google.com/cloud/answer/6158840). + // This + // field has been deprecated and replaced by the name field. + ProjectId string `json:"projectId,omitempty"` + + // Zone: Deprecated. The name of the Google Compute + // Engine + // [zone](/compute/docs/zones#available) in which the + // cluster + // resides. + // This field has been deprecated and replaced by the name field. + Zone string `json:"zone,omitempty"` + + // ForceSendFields is a list of field names (e.g. "ClusterId") to // unconditionally include in API requests. By default, fields with // empty values are omitted from API requests. However, any non-pointer, // non-interface field appearing in ForceSendFields will be sent to the @@ -2098,7 +2482,7 @@ type SetLocationsRequest struct { // used to include empty fields in Patch requests. ForceSendFields []string `json:"-"` - // NullFields is a list of field names (e.g. "Locations") to include in + // NullFields is a list of field names (e.g. "ClusterId") to include in // API requests with the JSON null value. By default, fields with empty // values are omitted from API requests. However, any field with an // empty value appearing in NullFields will be sent to the server as @@ -2116,6 +2500,10 @@ func (s *SetLocationsRequest) MarshalJSON() ([]byte, error) { // SetLoggingServiceRequest: SetLoggingServiceRequest sets the logging // service of a cluster. type SetLoggingServiceRequest struct { + // ClusterId: Deprecated. The name of the cluster to upgrade. + // This field has been deprecated and replaced by the name field. + ClusterId string `json:"clusterId,omitempty"` + // LoggingService: The logging service the cluster should use to write // metrics. // Currently available options: @@ -2124,7 +2512,27 @@ type SetLoggingServiceRequest struct { // * "none" - no metrics will be exported from the cluster LoggingService string `json:"loggingService,omitempty"` - // ForceSendFields is a list of field names (e.g. "LoggingService") to + // Name: The name (project, location, cluster) of the cluster to set + // logging. + // Specified in the format 'projects/*/locations/*/clusters/*'. + Name string `json:"name,omitempty"` + + // ProjectId: Deprecated. The Google Developers Console [project ID or + // project + // number](https://support.google.com/cloud/answer/6158840). + // This + // field has been deprecated and replaced by the name field. + ProjectId string `json:"projectId,omitempty"` + + // Zone: Deprecated. The name of the Google Compute + // Engine + // [zone](/compute/docs/zones#available) in which the + // cluster + // resides. + // This field has been deprecated and replaced by the name field. + Zone string `json:"zone,omitempty"` + + // ForceSendFields is a list of field names (e.g. "ClusterId") to // unconditionally include in API requests. By default, fields with // empty values are omitted from API requests. However, any non-pointer, // non-interface field appearing in ForceSendFields will be sent to the @@ -2132,13 +2540,12 @@ type SetLoggingServiceRequest struct { // used to include empty fields in Patch requests. ForceSendFields []string `json:"-"` - // NullFields is a list of field names (e.g. "LoggingService") to - // include in API requests with the JSON null value. By default, fields - // with empty values are omitted from API requests. However, any field - // with an empty value appearing in NullFields will be sent to the - // server as null. It is an error if a field in this list has a - // non-empty value. This may be used to include null fields in Patch - // requests. + // NullFields is a list of field names (e.g. "ClusterId") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. NullFields []string `json:"-"` } @@ -2151,26 +2558,45 @@ func (s *SetLoggingServiceRequest) MarshalJSON() ([]byte, error) { // SetMaintenancePolicyRequest: SetMaintenancePolicyRequest sets the // maintenance policy for a cluster. type SetMaintenancePolicyRequest struct { + // ClusterId: The name of the cluster to update. + ClusterId string `json:"clusterId,omitempty"` + // MaintenancePolicy: The maintenance policy to be set for the cluster. // An empty field // clears the existing maintenance policy. MaintenancePolicy *MaintenancePolicy `json:"maintenancePolicy,omitempty"` - // ForceSendFields is a list of field names (e.g. "MaintenancePolicy") - // to unconditionally include in API requests. By default, fields with + // Name: The name (project, location, cluster id) of the cluster to set + // maintenance + // policy. + // Specified in the format 'projects/*/locations/*/clusters/*'. + Name string `json:"name,omitempty"` + + // ProjectId: The Google Developers Console [project ID or + // project + // number](https://support.google.com/cloud/answer/6158840). + ProjectId string `json:"projectId,omitempty"` + + // Zone: The name of the Google Compute + // Engine + // [zone](/compute/docs/zones#available) in which the cluster + // resides. + Zone string `json:"zone,omitempty"` + + // ForceSendFields is a list of field names (e.g. "ClusterId") to + // unconditionally include in API requests. By default, fields with // empty values are omitted from API requests. However, any non-pointer, // non-interface field appearing in ForceSendFields will be sent to the // server regardless of whether the field is empty or not. This may be // used to include empty fields in Patch requests. ForceSendFields []string `json:"-"` - // NullFields is a list of field names (e.g. "MaintenancePolicy") to - // include in API requests with the JSON null value. By default, fields - // with empty values are omitted from API requests. However, any field - // with an empty value appearing in NullFields will be sent to the - // server as null. It is an error if a field in this list has a - // non-empty value. This may be used to include null fields in Patch - // requests. + // NullFields is a list of field names (e.g. "ClusterId") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. NullFields []string `json:"-"` } @@ -2198,9 +2624,33 @@ type SetMasterAuthRequest struct { // one. Action string `json:"action,omitempty"` + // ClusterId: Deprecated. The name of the cluster to upgrade. + // This field has been deprecated and replaced by the name field. + ClusterId string `json:"clusterId,omitempty"` + + // Name: The name (project, location, cluster) of the cluster to set + // auth. + // Specified in the format 'projects/*/locations/*/clusters/*'. + Name string `json:"name,omitempty"` + + // ProjectId: Deprecated. The Google Developers Console [project ID or + // project + // number](https://support.google.com/cloud/answer/6158840). + // This + // field has been deprecated and replaced by the name field. + ProjectId string `json:"projectId,omitempty"` + // Update: A description of the update. Update *MasterAuth `json:"update,omitempty"` + // Zone: Deprecated. The name of the Google Compute + // Engine + // [zone](/compute/docs/zones#available) in which the + // cluster + // resides. + // This field has been deprecated and replaced by the name field. + Zone string `json:"zone,omitempty"` + // ForceSendFields is a list of field names (e.g. "Action") to // unconditionally include in API requests. By default, fields with // empty values are omitted from API requests. However, any non-pointer, @@ -2227,6 +2677,10 @@ func (s *SetMasterAuthRequest) MarshalJSON() ([]byte, error) { // SetMonitoringServiceRequest: SetMonitoringServiceRequest sets the // monitoring service of a cluster. type SetMonitoringServiceRequest struct { + // ClusterId: Deprecated. The name of the cluster to upgrade. + // This field has been deprecated and replaced by the name field. + ClusterId string `json:"clusterId,omitempty"` + // MonitoringService: The monitoring service the cluster should use to // write metrics. // Currently available options: @@ -2235,21 +2689,40 @@ type SetMonitoringServiceRequest struct { // * "none" - no metrics will be exported from the cluster MonitoringService string `json:"monitoringService,omitempty"` - // ForceSendFields is a list of field names (e.g. "MonitoringService") - // to unconditionally include in API requests. By default, fields with + // Name: The name (project, location, cluster) of the cluster to set + // monitoring. + // Specified in the format 'projects/*/locations/*/clusters/*'. + Name string `json:"name,omitempty"` + + // ProjectId: Deprecated. The Google Developers Console [project ID or + // project + // number](https://support.google.com/cloud/answer/6158840). + // This + // field has been deprecated and replaced by the name field. + ProjectId string `json:"projectId,omitempty"` + + // Zone: Deprecated. The name of the Google Compute + // Engine + // [zone](/compute/docs/zones#available) in which the + // cluster + // resides. + // This field has been deprecated and replaced by the name field. + Zone string `json:"zone,omitempty"` + + // ForceSendFields is a list of field names (e.g. "ClusterId") to + // unconditionally include in API requests. By default, fields with // empty values are omitted from API requests. However, any non-pointer, // non-interface field appearing in ForceSendFields will be sent to the // server regardless of whether the field is empty or not. This may be // used to include empty fields in Patch requests. ForceSendFields []string `json:"-"` - // NullFields is a list of field names (e.g. "MonitoringService") to - // include in API requests with the JSON null value. By default, fields - // with empty values are omitted from API requests. However, any field - // with an empty value appearing in NullFields will be sent to the - // server as null. It is an error if a field in this list has a - // non-empty value. This may be used to include null fields in Patch - // requests. + // NullFields is a list of field names (e.g. "ClusterId") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. NullFields []string `json:"-"` } @@ -2262,10 +2735,34 @@ func (s *SetMonitoringServiceRequest) MarshalJSON() ([]byte, error) { // SetNetworkPolicyRequest: SetNetworkPolicyRequest enables/disables // network policy for a cluster. type SetNetworkPolicyRequest struct { + // ClusterId: Deprecated. The name of the cluster. + // This field has been deprecated and replaced by the name field. + ClusterId string `json:"clusterId,omitempty"` + + // Name: The name (project, location, cluster id) of the cluster to set + // networking policy. + // Specified in the format 'projects/*/locations/*/clusters/*'. + Name string `json:"name,omitempty"` + // NetworkPolicy: Configuration options for the NetworkPolicy feature. NetworkPolicy *NetworkPolicy `json:"networkPolicy,omitempty"` - // ForceSendFields is a list of field names (e.g. "NetworkPolicy") to + // ProjectId: Deprecated. The Google Developers Console [project ID or + // project + // number](https://developers.google.com/console/help/new/#projec + // tnumber). + // This field has been deprecated and replaced by the name field. + ProjectId string `json:"projectId,omitempty"` + + // Zone: Deprecated. The name of the Google Compute + // Engine + // [zone](/compute/docs/zones#available) in which the + // cluster + // resides. + // This field has been deprecated and replaced by the name field. + Zone string `json:"zone,omitempty"` + + // ForceSendFields is a list of field names (e.g. "ClusterId") to // unconditionally include in API requests. By default, fields with // empty values are omitted from API requests. However, any non-pointer, // non-interface field appearing in ForceSendFields will be sent to the @@ -2273,10 +2770,10 @@ type SetNetworkPolicyRequest struct { // used to include empty fields in Patch requests. ForceSendFields []string `json:"-"` - // NullFields is a list of field names (e.g. "NetworkPolicy") to include - // in API requests with the JSON null value. By default, fields with - // empty values are omitted from API requests. However, any field with - // an empty value appearing in NullFields will be sent to the server as + // NullFields is a list of field names (e.g. "ClusterId") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as // null. It is an error if a field in this list has a non-empty value. // This may be used to include null fields in Patch requests. NullFields []string `json:"-"` @@ -2294,6 +2791,36 @@ type SetNodePoolAutoscalingRequest struct { // Autoscaling: Autoscaling configuration for the node pool. Autoscaling *NodePoolAutoscaling `json:"autoscaling,omitempty"` + // ClusterId: Deprecated. The name of the cluster to upgrade. + // This field has been deprecated and replaced by the name field. + ClusterId string `json:"clusterId,omitempty"` + + // Name: The name (project, location, cluster, node pool) of the node + // pool to set + // autoscaler settings. Specified in the + // format + // 'projects/*/locations/*/clusters/*/nodePools/*'. + Name string `json:"name,omitempty"` + + // NodePoolId: Deprecated. The name of the node pool to upgrade. + // This field has been deprecated and replaced by the name field. + NodePoolId string `json:"nodePoolId,omitempty"` + + // ProjectId: Deprecated. The Google Developers Console [project ID or + // project + // number](https://support.google.com/cloud/answer/6158840). + // This + // field has been deprecated and replaced by the name field. + ProjectId string `json:"projectId,omitempty"` + + // Zone: Deprecated. The name of the Google Compute + // Engine + // [zone](/compute/docs/zones#available) in which the + // cluster + // resides. + // This field has been deprecated and replaced by the name field. + Zone string `json:"zone,omitempty"` + // ForceSendFields is a list of field names (e.g. "Autoscaling") to // unconditionally include in API requests. By default, fields with // empty values are omitted from API requests. However, any non-pointer, @@ -2321,10 +2848,40 @@ func (s *SetNodePoolAutoscalingRequest) MarshalJSON() ([]byte, error) { // node management properties of a node // pool. type SetNodePoolManagementRequest struct { + // ClusterId: Deprecated. The name of the cluster to update. + // This field has been deprecated and replaced by the name field. + ClusterId string `json:"clusterId,omitempty"` + // Management: NodeManagement configuration for the node pool. Management *NodeManagement `json:"management,omitempty"` - // ForceSendFields is a list of field names (e.g. "Management") to + // Name: The name (project, location, cluster, node pool id) of the node + // pool to set + // management properties. Specified in the + // format + // 'projects/*/locations/*/clusters/*/nodePools/*'. + Name string `json:"name,omitempty"` + + // NodePoolId: Deprecated. The name of the node pool to update. + // This field has been deprecated and replaced by the name field. + NodePoolId string `json:"nodePoolId,omitempty"` + + // ProjectId: Deprecated. The Google Developers Console [project ID or + // project + // number](https://support.google.com/cloud/answer/6158840). + // This + // field has been deprecated and replaced by the name field. + ProjectId string `json:"projectId,omitempty"` + + // Zone: Deprecated. The name of the Google Compute + // Engine + // [zone](/compute/docs/zones#available) in which the + // cluster + // resides. + // This field has been deprecated and replaced by the name field. + Zone string `json:"zone,omitempty"` + + // ForceSendFields is a list of field names (e.g. "ClusterId") to // unconditionally include in API requests. By default, fields with // empty values are omitted from API requests. However, any non-pointer, // non-interface field appearing in ForceSendFields will be sent to the @@ -2332,7 +2889,7 @@ type SetNodePoolManagementRequest struct { // used to include empty fields in Patch requests. ForceSendFields []string `json:"-"` - // NullFields is a list of field names (e.g. "Management") to include in + // NullFields is a list of field names (e.g. "ClusterId") to include in // API requests with the JSON null value. By default, fields with empty // values are omitted from API requests. However, any field with an // empty value appearing in NullFields will be sent to the server as @@ -2351,10 +2908,40 @@ func (s *SetNodePoolManagementRequest) MarshalJSON() ([]byte, error) { // node // pool. type SetNodePoolSizeRequest struct { + // ClusterId: Deprecated. The name of the cluster to update. + // This field has been deprecated and replaced by the name field. + ClusterId string `json:"clusterId,omitempty"` + + // Name: The name (project, location, cluster, node pool id) of the node + // pool to set + // size. + // Specified in the format + // 'projects/*/locations/*/clusters/*/nodePools/*'. + Name string `json:"name,omitempty"` + // NodeCount: The desired node count for the pool. NodeCount int64 `json:"nodeCount,omitempty"` - // ForceSendFields is a list of field names (e.g. "NodeCount") to + // NodePoolId: Deprecated. The name of the node pool to update. + // This field has been deprecated and replaced by the name field. + NodePoolId string `json:"nodePoolId,omitempty"` + + // ProjectId: Deprecated. The Google Developers Console [project ID or + // project + // number](https://support.google.com/cloud/answer/6158840). + // This + // field has been deprecated and replaced by the name field. + ProjectId string `json:"projectId,omitempty"` + + // Zone: Deprecated. The name of the Google Compute + // Engine + // [zone](/compute/docs/zones#available) in which the + // cluster + // resides. + // This field has been deprecated and replaced by the name field. + Zone string `json:"zone,omitempty"` + + // ForceSendFields is a list of field names (e.g. "ClusterId") to // unconditionally include in API requests. By default, fields with // empty values are omitted from API requests. However, any non-pointer, // non-interface field appearing in ForceSendFields will be sent to the @@ -2362,7 +2949,7 @@ type SetNodePoolSizeRequest struct { // used to include empty fields in Patch requests. ForceSendFields []string `json:"-"` - // NullFields is a list of field names (e.g. "NodeCount") to include in + // NullFields is a list of field names (e.g. "ClusterId") to include in // API requests with the JSON null value. By default, fields with empty // values are omitted from API requests. However, any field with an // empty value appearing in NullFields will be sent to the server as @@ -2381,15 +2968,31 @@ func (s *SetNodePoolSizeRequest) MarshalJSON() ([]byte, error) { // the cluster and then performs // a node upgrade on each node pool to point to the new IP. type StartIPRotationRequest struct { -} + // ClusterId: Deprecated. The name of the cluster. + // This field has been deprecated and replaced by the name field. + ClusterId string `json:"clusterId,omitempty"` -// UpdateClusterRequest: UpdateClusterRequest updates the settings of a -// cluster. -type UpdateClusterRequest struct { - // Update: A description of the update. - Update *ClusterUpdate `json:"update,omitempty"` + // Name: The name (project, location, cluster id) of the cluster to + // start IP rotation. + // Specified in the format 'projects/*/locations/*/clusters/*'. + Name string `json:"name,omitempty"` - // ForceSendFields is a list of field names (e.g. "Update") to + // ProjectId: Deprecated. The Google Developers Console [project ID or + // project + // number](https://developers.google.com/console/help/new/#projec + // tnumber). + // This field has been deprecated and replaced by the name field. + ProjectId string `json:"projectId,omitempty"` + + // Zone: Deprecated. The name of the Google Compute + // Engine + // [zone](/compute/docs/zones#available) in which the + // cluster + // resides. + // This field has been deprecated and replaced by the name field. + Zone string `json:"zone,omitempty"` + + // ForceSendFields is a list of field names (e.g. "ClusterId") to // unconditionally include in API requests. By default, fields with // empty values are omitted from API requests. However, any non-pointer, // non-interface field appearing in ForceSendFields will be sent to the @@ -2397,8 +3000,61 @@ type UpdateClusterRequest struct { // used to include empty fields in Patch requests. ForceSendFields []string `json:"-"` - // NullFields is a list of field names (e.g. "Update") to include in API - // requests with the JSON null value. By default, fields with empty + // NullFields is a list of field names (e.g. "ClusterId") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *StartIPRotationRequest) MarshalJSON() ([]byte, error) { + type NoMethod StartIPRotationRequest + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// UpdateClusterRequest: UpdateClusterRequest updates the settings of a +// cluster. +type UpdateClusterRequest struct { + // ClusterId: Deprecated. The name of the cluster to upgrade. + // This field has been deprecated and replaced by the name field. + ClusterId string `json:"clusterId,omitempty"` + + // Name: The name (project, location, cluster) of the cluster to + // update. + // Specified in the format 'projects/*/locations/*/clusters/*'. + Name string `json:"name,omitempty"` + + // ProjectId: Deprecated. The Google Developers Console [project ID or + // project + // number](https://support.google.com/cloud/answer/6158840). + // This + // field has been deprecated and replaced by the name field. + ProjectId string `json:"projectId,omitempty"` + + // Update: A description of the update. + Update *ClusterUpdate `json:"update,omitempty"` + + // Zone: Deprecated. The name of the Google Compute + // Engine + // [zone](/compute/docs/zones#available) in which the + // cluster + // resides. + // This field has been deprecated and replaced by the name field. + Zone string `json:"zone,omitempty"` + + // ForceSendFields is a list of field names (e.g. "ClusterId") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "ClusterId") to include in + // API requests with the JSON null value. By default, fields with empty // values are omitted from API requests. However, any field with an // empty value appearing in NullFields will be sent to the server as // null. It is an error if a field in this list has a non-empty value. @@ -2415,12 +3071,45 @@ func (s *UpdateClusterRequest) MarshalJSON() ([]byte, error) { // UpdateMasterRequest: UpdateMasterRequest updates the master of the // cluster. type UpdateMasterRequest struct { - // MasterVersion: The Kubernetes version to change the master to. Use - // "-" to have the server - // automatically select the default version. + // ClusterId: Deprecated. The name of the cluster to upgrade. + // This field has been deprecated and replaced by the name field. + ClusterId string `json:"clusterId,omitempty"` + + // MasterVersion: The Kubernetes version to change the master to. + // + // Users may specify either explicit versions offered by Kubernetes + // Engine or + // version aliases, which have the following behavior: + // + // - "latest": picks the highest valid Kubernetes version + // - "1.X": picks the highest valid patch+gke.N patch in the 1.X + // version + // - "1.X.Y": picks the highest valid gke.N patch in the 1.X.Y version + // - "1.X.Y-gke.N": picks an explicit Kubernetes version + // - "-": picks the default Kubernetes version MasterVersion string `json:"masterVersion,omitempty"` - // ForceSendFields is a list of field names (e.g. "MasterVersion") to + // Name: The name (project, location, cluster) of the cluster to + // update. + // Specified in the format 'projects/*/locations/*/clusters/*'. + Name string `json:"name,omitempty"` + + // ProjectId: Deprecated. The Google Developers Console [project ID or + // project + // number](https://support.google.com/cloud/answer/6158840). + // This + // field has been deprecated and replaced by the name field. + ProjectId string `json:"projectId,omitempty"` + + // Zone: Deprecated. The name of the Google Compute + // Engine + // [zone](/compute/docs/zones#available) in which the + // cluster + // resides. + // This field has been deprecated and replaced by the name field. + Zone string `json:"zone,omitempty"` + + // ForceSendFields is a list of field names (e.g. "ClusterId") to // unconditionally include in API requests. By default, fields with // empty values are omitted from API requests. However, any non-pointer, // non-interface field appearing in ForceSendFields will be sent to the @@ -2428,10 +3117,10 @@ type UpdateMasterRequest struct { // used to include empty fields in Patch requests. ForceSendFields []string `json:"-"` - // NullFields is a list of field names (e.g. "MasterVersion") to include - // in API requests with the JSON null value. By default, fields with - // empty values are omitted from API requests. However, any field with - // an empty value appearing in NullFields will be sent to the server as + // NullFields is a list of field names (e.g. "ClusterId") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as // null. It is an error if a field in this list has a non-empty value. // This may be used to include null fields in Patch requests. NullFields []string `json:"-"` @@ -2446,16 +3135,55 @@ func (s *UpdateMasterRequest) MarshalJSON() ([]byte, error) { // UpdateNodePoolRequest: UpdateNodePoolRequests update a node pool's // image and/or version. type UpdateNodePoolRequest struct { + // ClusterId: Deprecated. The name of the cluster to upgrade. + // This field has been deprecated and replaced by the name field. + ClusterId string `json:"clusterId,omitempty"` + // ImageType: The desired image type for the node pool. ImageType string `json:"imageType,omitempty"` + // Name: The name (project, location, cluster, node pool) of the node + // pool to update. + // Specified in the format + // 'projects/*/locations/*/clusters/*/nodePools/*'. + Name string `json:"name,omitempty"` + + // NodePoolId: Deprecated. The name of the node pool to upgrade. + // This field has been deprecated and replaced by the name field. + NodePoolId string `json:"nodePoolId,omitempty"` + // NodeVersion: The Kubernetes version to change the nodes to (typically // an - // upgrade). Use `-` to upgrade to the latest version supported by - // the server. + // upgrade). + // + // Users may specify either explicit versions offered by Kubernetes + // Engine or + // version aliases, which have the following behavior: + // + // - "latest": picks the highest valid Kubernetes version + // - "1.X": picks the highest valid patch+gke.N patch in the 1.X + // version + // - "1.X.Y": picks the highest valid gke.N patch in the 1.X.Y version + // - "1.X.Y-gke.N": picks an explicit Kubernetes version + // - "-": picks the Kubernetes master version NodeVersion string `json:"nodeVersion,omitempty"` - // ForceSendFields is a list of field names (e.g. "ImageType") to + // ProjectId: Deprecated. The Google Developers Console [project ID or + // project + // number](https://support.google.com/cloud/answer/6158840). + // This + // field has been deprecated and replaced by the name field. + ProjectId string `json:"projectId,omitempty"` + + // Zone: Deprecated. The name of the Google Compute + // Engine + // [zone](/compute/docs/zones#available) in which the + // cluster + // resides. + // This field has been deprecated and replaced by the name field. + Zone string `json:"zone,omitempty"` + + // ForceSendFields is a list of field names (e.g. "ClusterId") to // unconditionally include in API requests. By default, fields with // empty values are omitted from API requests. However, any non-pointer, // non-interface field appearing in ForceSendFields will be sent to the @@ -2463,7 +3191,7 @@ type UpdateNodePoolRequest struct { // used to include empty fields in Patch requests. ForceSendFields []string `json:"-"` - // NullFields is a list of field names (e.g. "ImageType") to include in + // NullFields is a list of field names (e.g. "ClusterId") to include in // API requests with the JSON null value. By default, fields with empty // values are omitted from API requests. However, any field with an // empty value appearing in NullFields will be sent to the server as @@ -2478,6 +3206,4491 @@ func (s *UpdateNodePoolRequest) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// method id "container.projects.locations.getServerConfig": + +type ProjectsLocationsGetServerConfigCall struct { + s *Service + name string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// GetServerConfig: Returns configuration info about the Kubernetes +// Engine service. +func (r *ProjectsLocationsService) GetServerConfig(name string) *ProjectsLocationsGetServerConfigCall { + c := &ProjectsLocationsGetServerConfigCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + return c +} + +// ProjectId sets the optional parameter "projectId": Deprecated. The +// Google Developers Console [project ID or +// project +// number](https://support.google.com/cloud/answer/6158840). +// This +// field has been deprecated and replaced by the name field. +func (c *ProjectsLocationsGetServerConfigCall) ProjectId(projectId string) *ProjectsLocationsGetServerConfigCall { + c.urlParams_.Set("projectId", projectId) + return c +} + +// Zone sets the optional parameter "zone": Deprecated. The name of the +// Google Compute Engine +// [zone](/compute/docs/zones#available) to return operations for. +// This field has been deprecated and replaced by the name field. +func (c *ProjectsLocationsGetServerConfigCall) Zone(zone string) *ProjectsLocationsGetServerConfigCall { + c.urlParams_.Set("zone", zone) + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsLocationsGetServerConfigCall) Fields(s ...googleapi.Field) *ProjectsLocationsGetServerConfigCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// IfNoneMatch sets the optional parameter which makes the operation +// fail if the object's ETag matches the given value. This is useful for +// getting updates only after the object has changed since the last +// request. Use googleapi.IsNotModified to check whether the response +// error from Do is the result of In-None-Match. +func (c *ProjectsLocationsGetServerConfigCall) IfNoneMatch(entityTag string) *ProjectsLocationsGetServerConfigCall { + c.ifNoneMatch_ = entityTag + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsLocationsGetServerConfigCall) Context(ctx context.Context) *ProjectsLocationsGetServerConfigCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsLocationsGetServerConfigCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsLocationsGetServerConfigCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + if c.ifNoneMatch_ != "" { + reqHeaders.Set("If-None-Match", c.ifNoneMatch_) + } + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}/serverConfig") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("GET", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "container.projects.locations.getServerConfig" call. +// Exactly one of *ServerConfig or error will be non-nil. Any non-2xx +// status code is an error. Response headers are in either +// *ServerConfig.ServerResponse.Header or (if a response was returned at +// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified +// to check whether the returned error was because +// http.StatusNotModified was returned. +func (c *ProjectsLocationsGetServerConfigCall) Do(opts ...googleapi.CallOption) (*ServerConfig, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &ServerConfig{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Returns configuration info about the Kubernetes Engine service.", + // "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/serverConfig", + // "httpMethod": "GET", + // "id": "container.projects.locations.getServerConfig", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "The name (project and location) of the server config to get\nSpecified in the format 'projects/*/locations/*'.", + // "location": "path", + // "pattern": "^projects/[^/]+/locations/[^/]+$", + // "required": true, + // "type": "string" + // }, + // "projectId": { + // "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field has been deprecated and replaced by the name field.", + // "location": "query", + // "type": "string" + // }, + // "zone": { + // "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) to return operations for.\nThis field has been deprecated and replaced by the name field.", + // "location": "query", + // "type": "string" + // } + // }, + // "path": "v1/{+name}/serverConfig", + // "response": { + // "$ref": "ServerConfig" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "container.projects.locations.clusters.completeIpRotation": + +type ProjectsLocationsClustersCompleteIpRotationCall struct { + s *Service + name string + completeiprotationrequest *CompleteIPRotationRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// CompleteIpRotation: Completes master IP rotation. +func (r *ProjectsLocationsClustersService) CompleteIpRotation(name string, completeiprotationrequest *CompleteIPRotationRequest) *ProjectsLocationsClustersCompleteIpRotationCall { + c := &ProjectsLocationsClustersCompleteIpRotationCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + c.completeiprotationrequest = completeiprotationrequest + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsLocationsClustersCompleteIpRotationCall) Fields(s ...googleapi.Field) *ProjectsLocationsClustersCompleteIpRotationCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsLocationsClustersCompleteIpRotationCall) Context(ctx context.Context) *ProjectsLocationsClustersCompleteIpRotationCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsLocationsClustersCompleteIpRotationCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsLocationsClustersCompleteIpRotationCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.completeiprotationrequest) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}:completeIpRotation") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("POST", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "container.projects.locations.clusters.completeIpRotation" call. +// Exactly one of *Operation or error will be non-nil. Any non-2xx +// status code is an error. Response headers are in either +// *Operation.ServerResponse.Header or (if a response was returned at +// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified +// to check whether the returned error was because +// http.StatusNotModified was returned. +func (c *ProjectsLocationsClustersCompleteIpRotationCall) Do(opts ...googleapi.CallOption) (*Operation, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &Operation{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Completes master IP rotation.", + // "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}:completeIpRotation", + // "httpMethod": "POST", + // "id": "container.projects.locations.clusters.completeIpRotation", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "The name (project, location, cluster id) of the cluster to complete IP rotation.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", + // "location": "path", + // "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1/{+name}:completeIpRotation", + // "request": { + // "$ref": "CompleteIPRotationRequest" + // }, + // "response": { + // "$ref": "Operation" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "container.projects.locations.clusters.create": + +type ProjectsLocationsClustersCreateCall struct { + s *Service + parent string + createclusterrequest *CreateClusterRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Create: Creates a cluster, consisting of the specified number and +// type of Google +// Compute Engine instances. +// +// By default, the cluster is created in the project's +// [default +// network](/compute/docs/networks-and-firewalls#networks). +// +// One firewall is added for the cluster. After cluster creation, +// the cluster creates routes for each node to allow the containers +// on that node to communicate with all other instances in +// the +// cluster. +// +// Finally, an entry is added to the project's global metadata +// indicating +// which CIDR range is being used by the cluster. +func (r *ProjectsLocationsClustersService) Create(parent string, createclusterrequest *CreateClusterRequest) *ProjectsLocationsClustersCreateCall { + c := &ProjectsLocationsClustersCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.parent = parent + c.createclusterrequest = createclusterrequest + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsLocationsClustersCreateCall) Fields(s ...googleapi.Field) *ProjectsLocationsClustersCreateCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsLocationsClustersCreateCall) Context(ctx context.Context) *ProjectsLocationsClustersCreateCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsLocationsClustersCreateCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsLocationsClustersCreateCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.createclusterrequest) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/clusters") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("POST", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "parent": c.parent, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "container.projects.locations.clusters.create" call. +// Exactly one of *Operation or error will be non-nil. Any non-2xx +// status code is an error. Response headers are in either +// *Operation.ServerResponse.Header or (if a response was returned at +// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified +// to check whether the returned error was because +// http.StatusNotModified was returned. +func (c *ProjectsLocationsClustersCreateCall) Do(opts ...googleapi.CallOption) (*Operation, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &Operation{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Creates a cluster, consisting of the specified number and type of Google\nCompute Engine instances.\n\nBy default, the cluster is created in the project's\n[default network](/compute/docs/networks-and-firewalls#networks).\n\nOne firewall is added for the cluster. After cluster creation,\nthe cluster creates routes for each node to allow the containers\non that node to communicate with all other instances in the\ncluster.\n\nFinally, an entry is added to the project's global metadata indicating\nwhich CIDR range is being used by the cluster.", + // "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/clusters", + // "httpMethod": "POST", + // "id": "container.projects.locations.clusters.create", + // "parameterOrder": [ + // "parent" + // ], + // "parameters": { + // "parent": { + // "description": "The parent (project and location) where the cluster will be created.\nSpecified in the format 'projects/*/locations/*'.", + // "location": "path", + // "pattern": "^projects/[^/]+/locations/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1/{+parent}/clusters", + // "request": { + // "$ref": "CreateClusterRequest" + // }, + // "response": { + // "$ref": "Operation" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "container.projects.locations.clusters.delete": + +type ProjectsLocationsClustersDeleteCall struct { + s *Service + name string + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Delete: Deletes the cluster, including the Kubernetes endpoint and +// all worker +// nodes. +// +// Firewalls and routes that were configured during cluster creation +// are also deleted. +// +// Other Google Compute Engine resources that might be in use by the +// cluster +// (e.g. load balancer resources) will not be deleted if they weren't +// present +// at the initial create time. +func (r *ProjectsLocationsClustersService) Delete(name string) *ProjectsLocationsClustersDeleteCall { + c := &ProjectsLocationsClustersDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + return c +} + +// ClusterId sets the optional parameter "clusterId": Deprecated. The +// name of the cluster to delete. +// This field has been deprecated and replaced by the name field. +func (c *ProjectsLocationsClustersDeleteCall) ClusterId(clusterId string) *ProjectsLocationsClustersDeleteCall { + c.urlParams_.Set("clusterId", clusterId) + return c +} + +// ProjectId sets the optional parameter "projectId": Deprecated. The +// Google Developers Console [project ID or +// project +// number](https://support.google.com/cloud/answer/6158840). +// This +// field has been deprecated and replaced by the name field. +func (c *ProjectsLocationsClustersDeleteCall) ProjectId(projectId string) *ProjectsLocationsClustersDeleteCall { + c.urlParams_.Set("projectId", projectId) + return c +} + +// Zone sets the optional parameter "zone": Deprecated. The name of the +// Google Compute Engine +// [zone](/compute/docs/zones#available) in which the +// cluster +// resides. +// This field has been deprecated and replaced by the name field. +func (c *ProjectsLocationsClustersDeleteCall) Zone(zone string) *ProjectsLocationsClustersDeleteCall { + c.urlParams_.Set("zone", zone) + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsLocationsClustersDeleteCall) Fields(s ...googleapi.Field) *ProjectsLocationsClustersDeleteCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsLocationsClustersDeleteCall) Context(ctx context.Context) *ProjectsLocationsClustersDeleteCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsLocationsClustersDeleteCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsLocationsClustersDeleteCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("DELETE", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "container.projects.locations.clusters.delete" call. +// Exactly one of *Operation or error will be non-nil. Any non-2xx +// status code is an error. Response headers are in either +// *Operation.ServerResponse.Header or (if a response was returned at +// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified +// to check whether the returned error was because +// http.StatusNotModified was returned. +func (c *ProjectsLocationsClustersDeleteCall) Do(opts ...googleapi.CallOption) (*Operation, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &Operation{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Deletes the cluster, including the Kubernetes endpoint and all worker\nnodes.\n\nFirewalls and routes that were configured during cluster creation\nare also deleted.\n\nOther Google Compute Engine resources that might be in use by the cluster\n(e.g. load balancer resources) will not be deleted if they weren't present\nat the initial create time.", + // "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}", + // "httpMethod": "DELETE", + // "id": "container.projects.locations.clusters.delete", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "clusterId": { + // "description": "Deprecated. The name of the cluster to delete.\nThis field has been deprecated and replaced by the name field.", + // "location": "query", + // "type": "string" + // }, + // "name": { + // "description": "The name (project, location, cluster) of the cluster to delete.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", + // "location": "path", + // "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+$", + // "required": true, + // "type": "string" + // }, + // "projectId": { + // "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field has been deprecated and replaced by the name field.", + // "location": "query", + // "type": "string" + // }, + // "zone": { + // "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the name field.", + // "location": "query", + // "type": "string" + // } + // }, + // "path": "v1/{+name}", + // "response": { + // "$ref": "Operation" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "container.projects.locations.clusters.get": + +type ProjectsLocationsClustersGetCall struct { + s *Service + name string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// Get: Gets the details of a specific cluster. +func (r *ProjectsLocationsClustersService) Get(name string) *ProjectsLocationsClustersGetCall { + c := &ProjectsLocationsClustersGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + return c +} + +// ClusterId sets the optional parameter "clusterId": Deprecated. The +// name of the cluster to retrieve. +// This field has been deprecated and replaced by the name field. +func (c *ProjectsLocationsClustersGetCall) ClusterId(clusterId string) *ProjectsLocationsClustersGetCall { + c.urlParams_.Set("clusterId", clusterId) + return c +} + +// ProjectId sets the optional parameter "projectId": Deprecated. The +// Google Developers Console [project ID or +// project +// number](https://support.google.com/cloud/answer/6158840). +// This +// field has been deprecated and replaced by the name field. +func (c *ProjectsLocationsClustersGetCall) ProjectId(projectId string) *ProjectsLocationsClustersGetCall { + c.urlParams_.Set("projectId", projectId) + return c +} + +// Zone sets the optional parameter "zone": Deprecated. The name of the +// Google Compute Engine +// [zone](/compute/docs/zones#available) in which the +// cluster +// resides. +// This field has been deprecated and replaced by the name field. +func (c *ProjectsLocationsClustersGetCall) Zone(zone string) *ProjectsLocationsClustersGetCall { + c.urlParams_.Set("zone", zone) + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsLocationsClustersGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsClustersGetCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// IfNoneMatch sets the optional parameter which makes the operation +// fail if the object's ETag matches the given value. This is useful for +// getting updates only after the object has changed since the last +// request. Use googleapi.IsNotModified to check whether the response +// error from Do is the result of In-None-Match. +func (c *ProjectsLocationsClustersGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsClustersGetCall { + c.ifNoneMatch_ = entityTag + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsLocationsClustersGetCall) Context(ctx context.Context) *ProjectsLocationsClustersGetCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsLocationsClustersGetCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsLocationsClustersGetCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + if c.ifNoneMatch_ != "" { + reqHeaders.Set("If-None-Match", c.ifNoneMatch_) + } + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("GET", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "container.projects.locations.clusters.get" call. +// Exactly one of *Cluster or error will be non-nil. Any non-2xx status +// code is an error. Response headers are in either +// *Cluster.ServerResponse.Header or (if a response was returned at all) +// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to +// check whether the returned error was because http.StatusNotModified +// was returned. +func (c *ProjectsLocationsClustersGetCall) Do(opts ...googleapi.CallOption) (*Cluster, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &Cluster{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Gets the details of a specific cluster.", + // "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}", + // "httpMethod": "GET", + // "id": "container.projects.locations.clusters.get", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "clusterId": { + // "description": "Deprecated. The name of the cluster to retrieve.\nThis field has been deprecated and replaced by the name field.", + // "location": "query", + // "type": "string" + // }, + // "name": { + // "description": "The name (project, location, cluster) of the cluster to retrieve.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", + // "location": "path", + // "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+$", + // "required": true, + // "type": "string" + // }, + // "projectId": { + // "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field has been deprecated and replaced by the name field.", + // "location": "query", + // "type": "string" + // }, + // "zone": { + // "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the name field.", + // "location": "query", + // "type": "string" + // } + // }, + // "path": "v1/{+name}", + // "response": { + // "$ref": "Cluster" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "container.projects.locations.clusters.list": + +type ProjectsLocationsClustersListCall struct { + s *Service + parent string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// List: Lists all clusters owned by a project in either the specified +// zone or all +// zones. +func (r *ProjectsLocationsClustersService) List(parent string) *ProjectsLocationsClustersListCall { + c := &ProjectsLocationsClustersListCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.parent = parent + return c +} + +// ProjectId sets the optional parameter "projectId": Deprecated. The +// Google Developers Console [project ID or +// project +// number](https://support.google.com/cloud/answer/6158840). +// This +// field has been deprecated and replaced by the parent field. +func (c *ProjectsLocationsClustersListCall) ProjectId(projectId string) *ProjectsLocationsClustersListCall { + c.urlParams_.Set("projectId", projectId) + return c +} + +// Zone sets the optional parameter "zone": Deprecated. The name of the +// Google Compute Engine +// [zone](/compute/docs/zones#available) in which the cluster +// resides, or "-" for all zones. +// This field has been deprecated and replaced by the parent field. +func (c *ProjectsLocationsClustersListCall) Zone(zone string) *ProjectsLocationsClustersListCall { + c.urlParams_.Set("zone", zone) + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsLocationsClustersListCall) Fields(s ...googleapi.Field) *ProjectsLocationsClustersListCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// IfNoneMatch sets the optional parameter which makes the operation +// fail if the object's ETag matches the given value. This is useful for +// getting updates only after the object has changed since the last +// request. Use googleapi.IsNotModified to check whether the response +// error from Do is the result of In-None-Match. +func (c *ProjectsLocationsClustersListCall) IfNoneMatch(entityTag string) *ProjectsLocationsClustersListCall { + c.ifNoneMatch_ = entityTag + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsLocationsClustersListCall) Context(ctx context.Context) *ProjectsLocationsClustersListCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsLocationsClustersListCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsLocationsClustersListCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + if c.ifNoneMatch_ != "" { + reqHeaders.Set("If-None-Match", c.ifNoneMatch_) + } + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/clusters") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("GET", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "parent": c.parent, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "container.projects.locations.clusters.list" call. +// Exactly one of *ListClustersResponse or error will be non-nil. Any +// non-2xx status code is an error. Response headers are in either +// *ListClustersResponse.ServerResponse.Header or (if a response was +// returned at all) in error.(*googleapi.Error).Header. Use +// googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *ProjectsLocationsClustersListCall) Do(opts ...googleapi.CallOption) (*ListClustersResponse, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &ListClustersResponse{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Lists all clusters owned by a project in either the specified zone or all\nzones.", + // "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/clusters", + // "httpMethod": "GET", + // "id": "container.projects.locations.clusters.list", + // "parameterOrder": [ + // "parent" + // ], + // "parameters": { + // "parent": { + // "description": "The parent (project and location) where the clusters will be listed.\nSpecified in the format 'projects/*/locations/*'.\nLocation \"-\" matches all zones and all regions.", + // "location": "path", + // "pattern": "^projects/[^/]+/locations/[^/]+$", + // "required": true, + // "type": "string" + // }, + // "projectId": { + // "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field has been deprecated and replaced by the parent field.", + // "location": "query", + // "type": "string" + // }, + // "zone": { + // "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides, or \"-\" for all zones.\nThis field has been deprecated and replaced by the parent field.", + // "location": "query", + // "type": "string" + // } + // }, + // "path": "v1/{+parent}/clusters", + // "response": { + // "$ref": "ListClustersResponse" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "container.projects.locations.clusters.setAddons": + +type ProjectsLocationsClustersSetAddonsCall struct { + s *Service + name string + setaddonsconfigrequest *SetAddonsConfigRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// SetAddons: Sets the addons of a specific cluster. +func (r *ProjectsLocationsClustersService) SetAddons(name string, setaddonsconfigrequest *SetAddonsConfigRequest) *ProjectsLocationsClustersSetAddonsCall { + c := &ProjectsLocationsClustersSetAddonsCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + c.setaddonsconfigrequest = setaddonsconfigrequest + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsLocationsClustersSetAddonsCall) Fields(s ...googleapi.Field) *ProjectsLocationsClustersSetAddonsCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsLocationsClustersSetAddonsCall) Context(ctx context.Context) *ProjectsLocationsClustersSetAddonsCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsLocationsClustersSetAddonsCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsLocationsClustersSetAddonsCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.setaddonsconfigrequest) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}:setAddons") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("POST", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "container.projects.locations.clusters.setAddons" call. +// Exactly one of *Operation or error will be non-nil. Any non-2xx +// status code is an error. Response headers are in either +// *Operation.ServerResponse.Header or (if a response was returned at +// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified +// to check whether the returned error was because +// http.StatusNotModified was returned. +func (c *ProjectsLocationsClustersSetAddonsCall) Do(opts ...googleapi.CallOption) (*Operation, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &Operation{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Sets the addons of a specific cluster.", + // "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}:setAddons", + // "httpMethod": "POST", + // "id": "container.projects.locations.clusters.setAddons", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "The name (project, location, cluster) of the cluster to set addons.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", + // "location": "path", + // "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1/{+name}:setAddons", + // "request": { + // "$ref": "SetAddonsConfigRequest" + // }, + // "response": { + // "$ref": "Operation" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "container.projects.locations.clusters.setLegacyAbac": + +type ProjectsLocationsClustersSetLegacyAbacCall struct { + s *Service + name string + setlegacyabacrequest *SetLegacyAbacRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// SetLegacyAbac: Enables or disables the ABAC authorization mechanism +// on a cluster. +func (r *ProjectsLocationsClustersService) SetLegacyAbac(name string, setlegacyabacrequest *SetLegacyAbacRequest) *ProjectsLocationsClustersSetLegacyAbacCall { + c := &ProjectsLocationsClustersSetLegacyAbacCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + c.setlegacyabacrequest = setlegacyabacrequest + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsLocationsClustersSetLegacyAbacCall) Fields(s ...googleapi.Field) *ProjectsLocationsClustersSetLegacyAbacCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsLocationsClustersSetLegacyAbacCall) Context(ctx context.Context) *ProjectsLocationsClustersSetLegacyAbacCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsLocationsClustersSetLegacyAbacCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsLocationsClustersSetLegacyAbacCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.setlegacyabacrequest) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}:setLegacyAbac") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("POST", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "container.projects.locations.clusters.setLegacyAbac" call. +// Exactly one of *Operation or error will be non-nil. Any non-2xx +// status code is an error. Response headers are in either +// *Operation.ServerResponse.Header or (if a response was returned at +// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified +// to check whether the returned error was because +// http.StatusNotModified was returned. +func (c *ProjectsLocationsClustersSetLegacyAbacCall) Do(opts ...googleapi.CallOption) (*Operation, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &Operation{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Enables or disables the ABAC authorization mechanism on a cluster.", + // "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}:setLegacyAbac", + // "httpMethod": "POST", + // "id": "container.projects.locations.clusters.setLegacyAbac", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "The name (project, location, cluster id) of the cluster to set legacy abac.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", + // "location": "path", + // "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1/{+name}:setLegacyAbac", + // "request": { + // "$ref": "SetLegacyAbacRequest" + // }, + // "response": { + // "$ref": "Operation" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "container.projects.locations.clusters.setLocations": + +type ProjectsLocationsClustersSetLocationsCall struct { + s *Service + name string + setlocationsrequest *SetLocationsRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// SetLocations: Sets the locations of a specific cluster. +func (r *ProjectsLocationsClustersService) SetLocations(name string, setlocationsrequest *SetLocationsRequest) *ProjectsLocationsClustersSetLocationsCall { + c := &ProjectsLocationsClustersSetLocationsCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + c.setlocationsrequest = setlocationsrequest + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsLocationsClustersSetLocationsCall) Fields(s ...googleapi.Field) *ProjectsLocationsClustersSetLocationsCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsLocationsClustersSetLocationsCall) Context(ctx context.Context) *ProjectsLocationsClustersSetLocationsCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsLocationsClustersSetLocationsCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsLocationsClustersSetLocationsCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.setlocationsrequest) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}:setLocations") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("POST", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "container.projects.locations.clusters.setLocations" call. +// Exactly one of *Operation or error will be non-nil. Any non-2xx +// status code is an error. Response headers are in either +// *Operation.ServerResponse.Header or (if a response was returned at +// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified +// to check whether the returned error was because +// http.StatusNotModified was returned. +func (c *ProjectsLocationsClustersSetLocationsCall) Do(opts ...googleapi.CallOption) (*Operation, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &Operation{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Sets the locations of a specific cluster.", + // "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}:setLocations", + // "httpMethod": "POST", + // "id": "container.projects.locations.clusters.setLocations", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "The name (project, location, cluster) of the cluster to set locations.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", + // "location": "path", + // "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1/{+name}:setLocations", + // "request": { + // "$ref": "SetLocationsRequest" + // }, + // "response": { + // "$ref": "Operation" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "container.projects.locations.clusters.setLogging": + +type ProjectsLocationsClustersSetLoggingCall struct { + s *Service + name string + setloggingservicerequest *SetLoggingServiceRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// SetLogging: Sets the logging service of a specific cluster. +func (r *ProjectsLocationsClustersService) SetLogging(name string, setloggingservicerequest *SetLoggingServiceRequest) *ProjectsLocationsClustersSetLoggingCall { + c := &ProjectsLocationsClustersSetLoggingCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + c.setloggingservicerequest = setloggingservicerequest + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsLocationsClustersSetLoggingCall) Fields(s ...googleapi.Field) *ProjectsLocationsClustersSetLoggingCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsLocationsClustersSetLoggingCall) Context(ctx context.Context) *ProjectsLocationsClustersSetLoggingCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsLocationsClustersSetLoggingCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsLocationsClustersSetLoggingCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.setloggingservicerequest) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}:setLogging") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("POST", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "container.projects.locations.clusters.setLogging" call. +// Exactly one of *Operation or error will be non-nil. Any non-2xx +// status code is an error. Response headers are in either +// *Operation.ServerResponse.Header or (if a response was returned at +// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified +// to check whether the returned error was because +// http.StatusNotModified was returned. +func (c *ProjectsLocationsClustersSetLoggingCall) Do(opts ...googleapi.CallOption) (*Operation, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &Operation{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Sets the logging service of a specific cluster.", + // "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}:setLogging", + // "httpMethod": "POST", + // "id": "container.projects.locations.clusters.setLogging", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "The name (project, location, cluster) of the cluster to set logging.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", + // "location": "path", + // "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1/{+name}:setLogging", + // "request": { + // "$ref": "SetLoggingServiceRequest" + // }, + // "response": { + // "$ref": "Operation" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "container.projects.locations.clusters.setMaintenancePolicy": + +type ProjectsLocationsClustersSetMaintenancePolicyCall struct { + s *Service + name string + setmaintenancepolicyrequest *SetMaintenancePolicyRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// SetMaintenancePolicy: Sets the maintenance policy for a cluster. +func (r *ProjectsLocationsClustersService) SetMaintenancePolicy(name string, setmaintenancepolicyrequest *SetMaintenancePolicyRequest) *ProjectsLocationsClustersSetMaintenancePolicyCall { + c := &ProjectsLocationsClustersSetMaintenancePolicyCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + c.setmaintenancepolicyrequest = setmaintenancepolicyrequest + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsLocationsClustersSetMaintenancePolicyCall) Fields(s ...googleapi.Field) *ProjectsLocationsClustersSetMaintenancePolicyCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsLocationsClustersSetMaintenancePolicyCall) Context(ctx context.Context) *ProjectsLocationsClustersSetMaintenancePolicyCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsLocationsClustersSetMaintenancePolicyCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsLocationsClustersSetMaintenancePolicyCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.setmaintenancepolicyrequest) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}:setMaintenancePolicy") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("POST", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "container.projects.locations.clusters.setMaintenancePolicy" call. +// Exactly one of *Operation or error will be non-nil. Any non-2xx +// status code is an error. Response headers are in either +// *Operation.ServerResponse.Header or (if a response was returned at +// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified +// to check whether the returned error was because +// http.StatusNotModified was returned. +func (c *ProjectsLocationsClustersSetMaintenancePolicyCall) Do(opts ...googleapi.CallOption) (*Operation, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &Operation{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Sets the maintenance policy for a cluster.", + // "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}:setMaintenancePolicy", + // "httpMethod": "POST", + // "id": "container.projects.locations.clusters.setMaintenancePolicy", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "The name (project, location, cluster id) of the cluster to set maintenance\npolicy.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", + // "location": "path", + // "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1/{+name}:setMaintenancePolicy", + // "request": { + // "$ref": "SetMaintenancePolicyRequest" + // }, + // "response": { + // "$ref": "Operation" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "container.projects.locations.clusters.setMasterAuth": + +type ProjectsLocationsClustersSetMasterAuthCall struct { + s *Service + name string + setmasterauthrequest *SetMasterAuthRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// SetMasterAuth: Used to set master auth materials. Currently supports +// :- +// Changing the admin password of a specific cluster. +// This can be either via password generation or explicitly set the +// password. +func (r *ProjectsLocationsClustersService) SetMasterAuth(name string, setmasterauthrequest *SetMasterAuthRequest) *ProjectsLocationsClustersSetMasterAuthCall { + c := &ProjectsLocationsClustersSetMasterAuthCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + c.setmasterauthrequest = setmasterauthrequest + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsLocationsClustersSetMasterAuthCall) Fields(s ...googleapi.Field) *ProjectsLocationsClustersSetMasterAuthCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsLocationsClustersSetMasterAuthCall) Context(ctx context.Context) *ProjectsLocationsClustersSetMasterAuthCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsLocationsClustersSetMasterAuthCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsLocationsClustersSetMasterAuthCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.setmasterauthrequest) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}:setMasterAuth") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("POST", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "container.projects.locations.clusters.setMasterAuth" call. +// Exactly one of *Operation or error will be non-nil. Any non-2xx +// status code is an error. Response headers are in either +// *Operation.ServerResponse.Header or (if a response was returned at +// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified +// to check whether the returned error was because +// http.StatusNotModified was returned. +func (c *ProjectsLocationsClustersSetMasterAuthCall) Do(opts ...googleapi.CallOption) (*Operation, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &Operation{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Used to set master auth materials. Currently supports :-\nChanging the admin password of a specific cluster.\nThis can be either via password generation or explicitly set the password.", + // "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}:setMasterAuth", + // "httpMethod": "POST", + // "id": "container.projects.locations.clusters.setMasterAuth", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "The name (project, location, cluster) of the cluster to set auth.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", + // "location": "path", + // "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1/{+name}:setMasterAuth", + // "request": { + // "$ref": "SetMasterAuthRequest" + // }, + // "response": { + // "$ref": "Operation" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "container.projects.locations.clusters.setMonitoring": + +type ProjectsLocationsClustersSetMonitoringCall struct { + s *Service + name string + setmonitoringservicerequest *SetMonitoringServiceRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// SetMonitoring: Sets the monitoring service of a specific cluster. +func (r *ProjectsLocationsClustersService) SetMonitoring(name string, setmonitoringservicerequest *SetMonitoringServiceRequest) *ProjectsLocationsClustersSetMonitoringCall { + c := &ProjectsLocationsClustersSetMonitoringCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + c.setmonitoringservicerequest = setmonitoringservicerequest + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsLocationsClustersSetMonitoringCall) Fields(s ...googleapi.Field) *ProjectsLocationsClustersSetMonitoringCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsLocationsClustersSetMonitoringCall) Context(ctx context.Context) *ProjectsLocationsClustersSetMonitoringCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsLocationsClustersSetMonitoringCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsLocationsClustersSetMonitoringCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.setmonitoringservicerequest) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}:setMonitoring") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("POST", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "container.projects.locations.clusters.setMonitoring" call. +// Exactly one of *Operation or error will be non-nil. Any non-2xx +// status code is an error. Response headers are in either +// *Operation.ServerResponse.Header or (if a response was returned at +// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified +// to check whether the returned error was because +// http.StatusNotModified was returned. +func (c *ProjectsLocationsClustersSetMonitoringCall) Do(opts ...googleapi.CallOption) (*Operation, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &Operation{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Sets the monitoring service of a specific cluster.", + // "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}:setMonitoring", + // "httpMethod": "POST", + // "id": "container.projects.locations.clusters.setMonitoring", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "The name (project, location, cluster) of the cluster to set monitoring.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", + // "location": "path", + // "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1/{+name}:setMonitoring", + // "request": { + // "$ref": "SetMonitoringServiceRequest" + // }, + // "response": { + // "$ref": "Operation" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "container.projects.locations.clusters.setNetworkPolicy": + +type ProjectsLocationsClustersSetNetworkPolicyCall struct { + s *Service + name string + setnetworkpolicyrequest *SetNetworkPolicyRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// SetNetworkPolicy: Enables/Disables Network Policy for a cluster. +func (r *ProjectsLocationsClustersService) SetNetworkPolicy(name string, setnetworkpolicyrequest *SetNetworkPolicyRequest) *ProjectsLocationsClustersSetNetworkPolicyCall { + c := &ProjectsLocationsClustersSetNetworkPolicyCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + c.setnetworkpolicyrequest = setnetworkpolicyrequest + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsLocationsClustersSetNetworkPolicyCall) Fields(s ...googleapi.Field) *ProjectsLocationsClustersSetNetworkPolicyCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsLocationsClustersSetNetworkPolicyCall) Context(ctx context.Context) *ProjectsLocationsClustersSetNetworkPolicyCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsLocationsClustersSetNetworkPolicyCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsLocationsClustersSetNetworkPolicyCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.setnetworkpolicyrequest) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}:setNetworkPolicy") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("POST", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "container.projects.locations.clusters.setNetworkPolicy" call. +// Exactly one of *Operation or error will be non-nil. Any non-2xx +// status code is an error. Response headers are in either +// *Operation.ServerResponse.Header or (if a response was returned at +// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified +// to check whether the returned error was because +// http.StatusNotModified was returned. +func (c *ProjectsLocationsClustersSetNetworkPolicyCall) Do(opts ...googleapi.CallOption) (*Operation, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &Operation{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Enables/Disables Network Policy for a cluster.", + // "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}:setNetworkPolicy", + // "httpMethod": "POST", + // "id": "container.projects.locations.clusters.setNetworkPolicy", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "The name (project, location, cluster id) of the cluster to set networking policy.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", + // "location": "path", + // "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1/{+name}:setNetworkPolicy", + // "request": { + // "$ref": "SetNetworkPolicyRequest" + // }, + // "response": { + // "$ref": "Operation" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "container.projects.locations.clusters.setResourceLabels": + +type ProjectsLocationsClustersSetResourceLabelsCall struct { + s *Service + name string + setlabelsrequest *SetLabelsRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// SetResourceLabels: Sets labels on a cluster. +func (r *ProjectsLocationsClustersService) SetResourceLabels(name string, setlabelsrequest *SetLabelsRequest) *ProjectsLocationsClustersSetResourceLabelsCall { + c := &ProjectsLocationsClustersSetResourceLabelsCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + c.setlabelsrequest = setlabelsrequest + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsLocationsClustersSetResourceLabelsCall) Fields(s ...googleapi.Field) *ProjectsLocationsClustersSetResourceLabelsCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsLocationsClustersSetResourceLabelsCall) Context(ctx context.Context) *ProjectsLocationsClustersSetResourceLabelsCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsLocationsClustersSetResourceLabelsCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsLocationsClustersSetResourceLabelsCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.setlabelsrequest) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}:setResourceLabels") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("POST", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "container.projects.locations.clusters.setResourceLabels" call. +// Exactly one of *Operation or error will be non-nil. Any non-2xx +// status code is an error. Response headers are in either +// *Operation.ServerResponse.Header or (if a response was returned at +// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified +// to check whether the returned error was because +// http.StatusNotModified was returned. +func (c *ProjectsLocationsClustersSetResourceLabelsCall) Do(opts ...googleapi.CallOption) (*Operation, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &Operation{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Sets labels on a cluster.", + // "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}:setResourceLabels", + // "httpMethod": "POST", + // "id": "container.projects.locations.clusters.setResourceLabels", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "The name (project, location, cluster id) of the cluster to set labels.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", + // "location": "path", + // "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1/{+name}:setResourceLabels", + // "request": { + // "$ref": "SetLabelsRequest" + // }, + // "response": { + // "$ref": "Operation" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "container.projects.locations.clusters.startIpRotation": + +type ProjectsLocationsClustersStartIpRotationCall struct { + s *Service + name string + startiprotationrequest *StartIPRotationRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// StartIpRotation: Start master IP rotation. +func (r *ProjectsLocationsClustersService) StartIpRotation(name string, startiprotationrequest *StartIPRotationRequest) *ProjectsLocationsClustersStartIpRotationCall { + c := &ProjectsLocationsClustersStartIpRotationCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + c.startiprotationrequest = startiprotationrequest + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsLocationsClustersStartIpRotationCall) Fields(s ...googleapi.Field) *ProjectsLocationsClustersStartIpRotationCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsLocationsClustersStartIpRotationCall) Context(ctx context.Context) *ProjectsLocationsClustersStartIpRotationCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsLocationsClustersStartIpRotationCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsLocationsClustersStartIpRotationCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.startiprotationrequest) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}:startIpRotation") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("POST", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "container.projects.locations.clusters.startIpRotation" call. +// Exactly one of *Operation or error will be non-nil. Any non-2xx +// status code is an error. Response headers are in either +// *Operation.ServerResponse.Header or (if a response was returned at +// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified +// to check whether the returned error was because +// http.StatusNotModified was returned. +func (c *ProjectsLocationsClustersStartIpRotationCall) Do(opts ...googleapi.CallOption) (*Operation, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &Operation{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Start master IP rotation.", + // "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}:startIpRotation", + // "httpMethod": "POST", + // "id": "container.projects.locations.clusters.startIpRotation", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "The name (project, location, cluster id) of the cluster to start IP rotation.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", + // "location": "path", + // "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1/{+name}:startIpRotation", + // "request": { + // "$ref": "StartIPRotationRequest" + // }, + // "response": { + // "$ref": "Operation" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "container.projects.locations.clusters.update": + +type ProjectsLocationsClustersUpdateCall struct { + s *Service + name string + updateclusterrequest *UpdateClusterRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Update: Updates the settings of a specific cluster. +func (r *ProjectsLocationsClustersService) Update(name string, updateclusterrequest *UpdateClusterRequest) *ProjectsLocationsClustersUpdateCall { + c := &ProjectsLocationsClustersUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + c.updateclusterrequest = updateclusterrequest + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsLocationsClustersUpdateCall) Fields(s ...googleapi.Field) *ProjectsLocationsClustersUpdateCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsLocationsClustersUpdateCall) Context(ctx context.Context) *ProjectsLocationsClustersUpdateCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsLocationsClustersUpdateCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsLocationsClustersUpdateCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.updateclusterrequest) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("PUT", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "container.projects.locations.clusters.update" call. +// Exactly one of *Operation or error will be non-nil. Any non-2xx +// status code is an error. Response headers are in either +// *Operation.ServerResponse.Header or (if a response was returned at +// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified +// to check whether the returned error was because +// http.StatusNotModified was returned. +func (c *ProjectsLocationsClustersUpdateCall) Do(opts ...googleapi.CallOption) (*Operation, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &Operation{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Updates the settings of a specific cluster.", + // "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}", + // "httpMethod": "PUT", + // "id": "container.projects.locations.clusters.update", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "The name (project, location, cluster) of the cluster to update.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", + // "location": "path", + // "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1/{+name}", + // "request": { + // "$ref": "UpdateClusterRequest" + // }, + // "response": { + // "$ref": "Operation" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "container.projects.locations.clusters.updateMaster": + +type ProjectsLocationsClustersUpdateMasterCall struct { + s *Service + name string + updatemasterrequest *UpdateMasterRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// UpdateMaster: Updates the master of a specific cluster. +func (r *ProjectsLocationsClustersService) UpdateMaster(name string, updatemasterrequest *UpdateMasterRequest) *ProjectsLocationsClustersUpdateMasterCall { + c := &ProjectsLocationsClustersUpdateMasterCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + c.updatemasterrequest = updatemasterrequest + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsLocationsClustersUpdateMasterCall) Fields(s ...googleapi.Field) *ProjectsLocationsClustersUpdateMasterCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsLocationsClustersUpdateMasterCall) Context(ctx context.Context) *ProjectsLocationsClustersUpdateMasterCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsLocationsClustersUpdateMasterCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsLocationsClustersUpdateMasterCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.updatemasterrequest) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}:updateMaster") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("POST", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "container.projects.locations.clusters.updateMaster" call. +// Exactly one of *Operation or error will be non-nil. Any non-2xx +// status code is an error. Response headers are in either +// *Operation.ServerResponse.Header or (if a response was returned at +// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified +// to check whether the returned error was because +// http.StatusNotModified was returned. +func (c *ProjectsLocationsClustersUpdateMasterCall) Do(opts ...googleapi.CallOption) (*Operation, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &Operation{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Updates the master of a specific cluster.", + // "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}:updateMaster", + // "httpMethod": "POST", + // "id": "container.projects.locations.clusters.updateMaster", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "The name (project, location, cluster) of the cluster to update.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", + // "location": "path", + // "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1/{+name}:updateMaster", + // "request": { + // "$ref": "UpdateMasterRequest" + // }, + // "response": { + // "$ref": "Operation" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "container.projects.locations.clusters.nodePools.create": + +type ProjectsLocationsClustersNodePoolsCreateCall struct { + s *Service + parent string + createnodepoolrequest *CreateNodePoolRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Create: Creates a node pool for a cluster. +func (r *ProjectsLocationsClustersNodePoolsService) Create(parent string, createnodepoolrequest *CreateNodePoolRequest) *ProjectsLocationsClustersNodePoolsCreateCall { + c := &ProjectsLocationsClustersNodePoolsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.parent = parent + c.createnodepoolrequest = createnodepoolrequest + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsLocationsClustersNodePoolsCreateCall) Fields(s ...googleapi.Field) *ProjectsLocationsClustersNodePoolsCreateCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsLocationsClustersNodePoolsCreateCall) Context(ctx context.Context) *ProjectsLocationsClustersNodePoolsCreateCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsLocationsClustersNodePoolsCreateCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsLocationsClustersNodePoolsCreateCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.createnodepoolrequest) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/nodePools") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("POST", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "parent": c.parent, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "container.projects.locations.clusters.nodePools.create" call. +// Exactly one of *Operation or error will be non-nil. Any non-2xx +// status code is an error. Response headers are in either +// *Operation.ServerResponse.Header or (if a response was returned at +// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified +// to check whether the returned error was because +// http.StatusNotModified was returned. +func (c *ProjectsLocationsClustersNodePoolsCreateCall) Do(opts ...googleapi.CallOption) (*Operation, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &Operation{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Creates a node pool for a cluster.", + // "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}/nodePools", + // "httpMethod": "POST", + // "id": "container.projects.locations.clusters.nodePools.create", + // "parameterOrder": [ + // "parent" + // ], + // "parameters": { + // "parent": { + // "description": "The parent (project, location, cluster id) where the node pool will be created.\nSpecified in the format 'projects/*/locations/*/clusters/*/nodePools/*'.", + // "location": "path", + // "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1/{+parent}/nodePools", + // "request": { + // "$ref": "CreateNodePoolRequest" + // }, + // "response": { + // "$ref": "Operation" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "container.projects.locations.clusters.nodePools.delete": + +type ProjectsLocationsClustersNodePoolsDeleteCall struct { + s *Service + name string + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Delete: Deletes a node pool from a cluster. +func (r *ProjectsLocationsClustersNodePoolsService) Delete(name string) *ProjectsLocationsClustersNodePoolsDeleteCall { + c := &ProjectsLocationsClustersNodePoolsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + return c +} + +// ClusterId sets the optional parameter "clusterId": Deprecated. The +// name of the cluster. +// This field has been deprecated and replaced by the name field. +func (c *ProjectsLocationsClustersNodePoolsDeleteCall) ClusterId(clusterId string) *ProjectsLocationsClustersNodePoolsDeleteCall { + c.urlParams_.Set("clusterId", clusterId) + return c +} + +// NodePoolId sets the optional parameter "nodePoolId": Deprecated. The +// name of the node pool to delete. +// This field has been deprecated and replaced by the name field. +func (c *ProjectsLocationsClustersNodePoolsDeleteCall) NodePoolId(nodePoolId string) *ProjectsLocationsClustersNodePoolsDeleteCall { + c.urlParams_.Set("nodePoolId", nodePoolId) + return c +} + +// ProjectId sets the optional parameter "projectId": Deprecated. The +// Google Developers Console [project ID or +// project +// number](https://developers.google.com/console/help/new/#projec +// tnumber). +// This field has been deprecated and replaced by the name field. +func (c *ProjectsLocationsClustersNodePoolsDeleteCall) ProjectId(projectId string) *ProjectsLocationsClustersNodePoolsDeleteCall { + c.urlParams_.Set("projectId", projectId) + return c +} + +// Zone sets the optional parameter "zone": Deprecated. The name of the +// Google Compute Engine +// [zone](/compute/docs/zones#available) in which the +// cluster +// resides. +// This field has been deprecated and replaced by the name field. +func (c *ProjectsLocationsClustersNodePoolsDeleteCall) Zone(zone string) *ProjectsLocationsClustersNodePoolsDeleteCall { + c.urlParams_.Set("zone", zone) + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsLocationsClustersNodePoolsDeleteCall) Fields(s ...googleapi.Field) *ProjectsLocationsClustersNodePoolsDeleteCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsLocationsClustersNodePoolsDeleteCall) Context(ctx context.Context) *ProjectsLocationsClustersNodePoolsDeleteCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsLocationsClustersNodePoolsDeleteCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsLocationsClustersNodePoolsDeleteCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("DELETE", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "container.projects.locations.clusters.nodePools.delete" call. +// Exactly one of *Operation or error will be non-nil. Any non-2xx +// status code is an error. Response headers are in either +// *Operation.ServerResponse.Header or (if a response was returned at +// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified +// to check whether the returned error was because +// http.StatusNotModified was returned. +func (c *ProjectsLocationsClustersNodePoolsDeleteCall) Do(opts ...googleapi.CallOption) (*Operation, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &Operation{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Deletes a node pool from a cluster.", + // "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}/nodePools/{nodePoolsId}", + // "httpMethod": "DELETE", + // "id": "container.projects.locations.clusters.nodePools.delete", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "clusterId": { + // "description": "Deprecated. The name of the cluster.\nThis field has been deprecated and replaced by the name field.", + // "location": "query", + // "type": "string" + // }, + // "name": { + // "description": "The name (project, location, cluster, node pool id) of the node pool to delete.\nSpecified in the format 'projects/*/locations/*/clusters/*/nodePools/*'.", + // "location": "path", + // "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+/nodePools/[^/]+$", + // "required": true, + // "type": "string" + // }, + // "nodePoolId": { + // "description": "Deprecated. The name of the node pool to delete.\nThis field has been deprecated and replaced by the name field.", + // "location": "query", + // "type": "string" + // }, + // "projectId": { + // "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://developers.google.com/console/help/new/#projectnumber).\nThis field has been deprecated and replaced by the name field.", + // "location": "query", + // "type": "string" + // }, + // "zone": { + // "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the name field.", + // "location": "query", + // "type": "string" + // } + // }, + // "path": "v1/{+name}", + // "response": { + // "$ref": "Operation" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "container.projects.locations.clusters.nodePools.get": + +type ProjectsLocationsClustersNodePoolsGetCall struct { + s *Service + name string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// Get: Retrieves the node pool requested. +func (r *ProjectsLocationsClustersNodePoolsService) Get(name string) *ProjectsLocationsClustersNodePoolsGetCall { + c := &ProjectsLocationsClustersNodePoolsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + return c +} + +// ClusterId sets the optional parameter "clusterId": Deprecated. The +// name of the cluster. +// This field has been deprecated and replaced by the name field. +func (c *ProjectsLocationsClustersNodePoolsGetCall) ClusterId(clusterId string) *ProjectsLocationsClustersNodePoolsGetCall { + c.urlParams_.Set("clusterId", clusterId) + return c +} + +// NodePoolId sets the optional parameter "nodePoolId": Deprecated. The +// name of the node pool. +// This field has been deprecated and replaced by the name field. +func (c *ProjectsLocationsClustersNodePoolsGetCall) NodePoolId(nodePoolId string) *ProjectsLocationsClustersNodePoolsGetCall { + c.urlParams_.Set("nodePoolId", nodePoolId) + return c +} + +// ProjectId sets the optional parameter "projectId": Deprecated. The +// Google Developers Console [project ID or +// project +// number](https://developers.google.com/console/help/new/#projec +// tnumber). +// This field has been deprecated and replaced by the name field. +func (c *ProjectsLocationsClustersNodePoolsGetCall) ProjectId(projectId string) *ProjectsLocationsClustersNodePoolsGetCall { + c.urlParams_.Set("projectId", projectId) + return c +} + +// Zone sets the optional parameter "zone": Deprecated. The name of the +// Google Compute Engine +// [zone](/compute/docs/zones#available) in which the +// cluster +// resides. +// This field has been deprecated and replaced by the name field. +func (c *ProjectsLocationsClustersNodePoolsGetCall) Zone(zone string) *ProjectsLocationsClustersNodePoolsGetCall { + c.urlParams_.Set("zone", zone) + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsLocationsClustersNodePoolsGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsClustersNodePoolsGetCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// IfNoneMatch sets the optional parameter which makes the operation +// fail if the object's ETag matches the given value. This is useful for +// getting updates only after the object has changed since the last +// request. Use googleapi.IsNotModified to check whether the response +// error from Do is the result of In-None-Match. +func (c *ProjectsLocationsClustersNodePoolsGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsClustersNodePoolsGetCall { + c.ifNoneMatch_ = entityTag + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsLocationsClustersNodePoolsGetCall) Context(ctx context.Context) *ProjectsLocationsClustersNodePoolsGetCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsLocationsClustersNodePoolsGetCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsLocationsClustersNodePoolsGetCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + if c.ifNoneMatch_ != "" { + reqHeaders.Set("If-None-Match", c.ifNoneMatch_) + } + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("GET", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "container.projects.locations.clusters.nodePools.get" call. +// Exactly one of *NodePool or error will be non-nil. Any non-2xx status +// code is an error. Response headers are in either +// *NodePool.ServerResponse.Header or (if a response was returned at +// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified +// to check whether the returned error was because +// http.StatusNotModified was returned. +func (c *ProjectsLocationsClustersNodePoolsGetCall) Do(opts ...googleapi.CallOption) (*NodePool, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &NodePool{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Retrieves the node pool requested.", + // "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}/nodePools/{nodePoolsId}", + // "httpMethod": "GET", + // "id": "container.projects.locations.clusters.nodePools.get", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "clusterId": { + // "description": "Deprecated. The name of the cluster.\nThis field has been deprecated and replaced by the name field.", + // "location": "query", + // "type": "string" + // }, + // "name": { + // "description": "The name (project, location, cluster, node pool id) of the node pool to get.\nSpecified in the format 'projects/*/locations/*/clusters/*/nodePools/*'.", + // "location": "path", + // "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+/nodePools/[^/]+$", + // "required": true, + // "type": "string" + // }, + // "nodePoolId": { + // "description": "Deprecated. The name of the node pool.\nThis field has been deprecated and replaced by the name field.", + // "location": "query", + // "type": "string" + // }, + // "projectId": { + // "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://developers.google.com/console/help/new/#projectnumber).\nThis field has been deprecated and replaced by the name field.", + // "location": "query", + // "type": "string" + // }, + // "zone": { + // "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the name field.", + // "location": "query", + // "type": "string" + // } + // }, + // "path": "v1/{+name}", + // "response": { + // "$ref": "NodePool" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "container.projects.locations.clusters.nodePools.list": + +type ProjectsLocationsClustersNodePoolsListCall struct { + s *Service + parent string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// List: Lists the node pools for a cluster. +func (r *ProjectsLocationsClustersNodePoolsService) List(parent string) *ProjectsLocationsClustersNodePoolsListCall { + c := &ProjectsLocationsClustersNodePoolsListCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.parent = parent + return c +} + +// ClusterId sets the optional parameter "clusterId": Deprecated. The +// name of the cluster. +// This field has been deprecated and replaced by the parent field. +func (c *ProjectsLocationsClustersNodePoolsListCall) ClusterId(clusterId string) *ProjectsLocationsClustersNodePoolsListCall { + c.urlParams_.Set("clusterId", clusterId) + return c +} + +// ProjectId sets the optional parameter "projectId": Deprecated. The +// Google Developers Console [project ID or +// project +// number](https://developers.google.com/console/help/new/#projec +// tnumber). +// This field has been deprecated and replaced by the parent field. +func (c *ProjectsLocationsClustersNodePoolsListCall) ProjectId(projectId string) *ProjectsLocationsClustersNodePoolsListCall { + c.urlParams_.Set("projectId", projectId) + return c +} + +// Zone sets the optional parameter "zone": Deprecated. The name of the +// Google Compute Engine +// [zone](/compute/docs/zones#available) in which the +// cluster +// resides. +// This field has been deprecated and replaced by the parent field. +func (c *ProjectsLocationsClustersNodePoolsListCall) Zone(zone string) *ProjectsLocationsClustersNodePoolsListCall { + c.urlParams_.Set("zone", zone) + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsLocationsClustersNodePoolsListCall) Fields(s ...googleapi.Field) *ProjectsLocationsClustersNodePoolsListCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// IfNoneMatch sets the optional parameter which makes the operation +// fail if the object's ETag matches the given value. This is useful for +// getting updates only after the object has changed since the last +// request. Use googleapi.IsNotModified to check whether the response +// error from Do is the result of In-None-Match. +func (c *ProjectsLocationsClustersNodePoolsListCall) IfNoneMatch(entityTag string) *ProjectsLocationsClustersNodePoolsListCall { + c.ifNoneMatch_ = entityTag + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsLocationsClustersNodePoolsListCall) Context(ctx context.Context) *ProjectsLocationsClustersNodePoolsListCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsLocationsClustersNodePoolsListCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsLocationsClustersNodePoolsListCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + if c.ifNoneMatch_ != "" { + reqHeaders.Set("If-None-Match", c.ifNoneMatch_) + } + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/nodePools") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("GET", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "parent": c.parent, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "container.projects.locations.clusters.nodePools.list" call. +// Exactly one of *ListNodePoolsResponse or error will be non-nil. Any +// non-2xx status code is an error. Response headers are in either +// *ListNodePoolsResponse.ServerResponse.Header or (if a response was +// returned at all) in error.(*googleapi.Error).Header. Use +// googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *ProjectsLocationsClustersNodePoolsListCall) Do(opts ...googleapi.CallOption) (*ListNodePoolsResponse, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &ListNodePoolsResponse{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Lists the node pools for a cluster.", + // "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}/nodePools", + // "httpMethod": "GET", + // "id": "container.projects.locations.clusters.nodePools.list", + // "parameterOrder": [ + // "parent" + // ], + // "parameters": { + // "clusterId": { + // "description": "Deprecated. The name of the cluster.\nThis field has been deprecated and replaced by the parent field.", + // "location": "query", + // "type": "string" + // }, + // "parent": { + // "description": "The parent (project, location, cluster id) where the node pools will be listed.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", + // "location": "path", + // "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+$", + // "required": true, + // "type": "string" + // }, + // "projectId": { + // "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://developers.google.com/console/help/new/#projectnumber).\nThis field has been deprecated and replaced by the parent field.", + // "location": "query", + // "type": "string" + // }, + // "zone": { + // "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the parent field.", + // "location": "query", + // "type": "string" + // } + // }, + // "path": "v1/{+parent}/nodePools", + // "response": { + // "$ref": "ListNodePoolsResponse" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "container.projects.locations.clusters.nodePools.rollback": + +type ProjectsLocationsClustersNodePoolsRollbackCall struct { + s *Service + name string + rollbacknodepoolupgraderequest *RollbackNodePoolUpgradeRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Rollback: Roll back the previously Aborted or Failed NodePool +// upgrade. +// This will be an no-op if the last upgrade successfully completed. +func (r *ProjectsLocationsClustersNodePoolsService) Rollback(name string, rollbacknodepoolupgraderequest *RollbackNodePoolUpgradeRequest) *ProjectsLocationsClustersNodePoolsRollbackCall { + c := &ProjectsLocationsClustersNodePoolsRollbackCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + c.rollbacknodepoolupgraderequest = rollbacknodepoolupgraderequest + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsLocationsClustersNodePoolsRollbackCall) Fields(s ...googleapi.Field) *ProjectsLocationsClustersNodePoolsRollbackCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsLocationsClustersNodePoolsRollbackCall) Context(ctx context.Context) *ProjectsLocationsClustersNodePoolsRollbackCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsLocationsClustersNodePoolsRollbackCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsLocationsClustersNodePoolsRollbackCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.rollbacknodepoolupgraderequest) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}:rollback") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("POST", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "container.projects.locations.clusters.nodePools.rollback" call. +// Exactly one of *Operation or error will be non-nil. Any non-2xx +// status code is an error. Response headers are in either +// *Operation.ServerResponse.Header or (if a response was returned at +// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified +// to check whether the returned error was because +// http.StatusNotModified was returned. +func (c *ProjectsLocationsClustersNodePoolsRollbackCall) Do(opts ...googleapi.CallOption) (*Operation, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &Operation{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Roll back the previously Aborted or Failed NodePool upgrade.\nThis will be an no-op if the last upgrade successfully completed.", + // "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}/nodePools/{nodePoolsId}:rollback", + // "httpMethod": "POST", + // "id": "container.projects.locations.clusters.nodePools.rollback", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "The name (project, location, cluster, node pool id) of the node poll to\nrollback upgrade.\nSpecified in the format 'projects/*/locations/*/clusters/*/nodePools/*'.", + // "location": "path", + // "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+/nodePools/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1/{+name}:rollback", + // "request": { + // "$ref": "RollbackNodePoolUpgradeRequest" + // }, + // "response": { + // "$ref": "Operation" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "container.projects.locations.clusters.nodePools.setAutoscaling": + +type ProjectsLocationsClustersNodePoolsSetAutoscalingCall struct { + s *Service + name string + setnodepoolautoscalingrequest *SetNodePoolAutoscalingRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// SetAutoscaling: Sets the autoscaling settings of a specific node +// pool. +func (r *ProjectsLocationsClustersNodePoolsService) SetAutoscaling(name string, setnodepoolautoscalingrequest *SetNodePoolAutoscalingRequest) *ProjectsLocationsClustersNodePoolsSetAutoscalingCall { + c := &ProjectsLocationsClustersNodePoolsSetAutoscalingCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + c.setnodepoolautoscalingrequest = setnodepoolautoscalingrequest + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsLocationsClustersNodePoolsSetAutoscalingCall) Fields(s ...googleapi.Field) *ProjectsLocationsClustersNodePoolsSetAutoscalingCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsLocationsClustersNodePoolsSetAutoscalingCall) Context(ctx context.Context) *ProjectsLocationsClustersNodePoolsSetAutoscalingCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsLocationsClustersNodePoolsSetAutoscalingCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsLocationsClustersNodePoolsSetAutoscalingCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.setnodepoolautoscalingrequest) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}:setAutoscaling") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("POST", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "container.projects.locations.clusters.nodePools.setAutoscaling" call. +// Exactly one of *Operation or error will be non-nil. Any non-2xx +// status code is an error. Response headers are in either +// *Operation.ServerResponse.Header or (if a response was returned at +// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified +// to check whether the returned error was because +// http.StatusNotModified was returned. +func (c *ProjectsLocationsClustersNodePoolsSetAutoscalingCall) Do(opts ...googleapi.CallOption) (*Operation, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &Operation{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Sets the autoscaling settings of a specific node pool.", + // "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}/nodePools/{nodePoolsId}:setAutoscaling", + // "httpMethod": "POST", + // "id": "container.projects.locations.clusters.nodePools.setAutoscaling", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "The name (project, location, cluster, node pool) of the node pool to set\nautoscaler settings. Specified in the format\n'projects/*/locations/*/clusters/*/nodePools/*'.", + // "location": "path", + // "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+/nodePools/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1/{+name}:setAutoscaling", + // "request": { + // "$ref": "SetNodePoolAutoscalingRequest" + // }, + // "response": { + // "$ref": "Operation" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "container.projects.locations.clusters.nodePools.setManagement": + +type ProjectsLocationsClustersNodePoolsSetManagementCall struct { + s *Service + name string + setnodepoolmanagementrequest *SetNodePoolManagementRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// SetManagement: Sets the NodeManagement options for a node pool. +func (r *ProjectsLocationsClustersNodePoolsService) SetManagement(name string, setnodepoolmanagementrequest *SetNodePoolManagementRequest) *ProjectsLocationsClustersNodePoolsSetManagementCall { + c := &ProjectsLocationsClustersNodePoolsSetManagementCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + c.setnodepoolmanagementrequest = setnodepoolmanagementrequest + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsLocationsClustersNodePoolsSetManagementCall) Fields(s ...googleapi.Field) *ProjectsLocationsClustersNodePoolsSetManagementCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsLocationsClustersNodePoolsSetManagementCall) Context(ctx context.Context) *ProjectsLocationsClustersNodePoolsSetManagementCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsLocationsClustersNodePoolsSetManagementCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsLocationsClustersNodePoolsSetManagementCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.setnodepoolmanagementrequest) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}:setManagement") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("POST", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "container.projects.locations.clusters.nodePools.setManagement" call. +// Exactly one of *Operation or error will be non-nil. Any non-2xx +// status code is an error. Response headers are in either +// *Operation.ServerResponse.Header or (if a response was returned at +// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified +// to check whether the returned error was because +// http.StatusNotModified was returned. +func (c *ProjectsLocationsClustersNodePoolsSetManagementCall) Do(opts ...googleapi.CallOption) (*Operation, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &Operation{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Sets the NodeManagement options for a node pool.", + // "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}/nodePools/{nodePoolsId}:setManagement", + // "httpMethod": "POST", + // "id": "container.projects.locations.clusters.nodePools.setManagement", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "The name (project, location, cluster, node pool id) of the node pool to set\nmanagement properties. Specified in the format\n'projects/*/locations/*/clusters/*/nodePools/*'.", + // "location": "path", + // "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+/nodePools/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1/{+name}:setManagement", + // "request": { + // "$ref": "SetNodePoolManagementRequest" + // }, + // "response": { + // "$ref": "Operation" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "container.projects.locations.clusters.nodePools.setSize": + +type ProjectsLocationsClustersNodePoolsSetSizeCall struct { + s *Service + name string + setnodepoolsizerequest *SetNodePoolSizeRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// SetSize: Sets the size of a specific node pool. +func (r *ProjectsLocationsClustersNodePoolsService) SetSize(name string, setnodepoolsizerequest *SetNodePoolSizeRequest) *ProjectsLocationsClustersNodePoolsSetSizeCall { + c := &ProjectsLocationsClustersNodePoolsSetSizeCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + c.setnodepoolsizerequest = setnodepoolsizerequest + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsLocationsClustersNodePoolsSetSizeCall) Fields(s ...googleapi.Field) *ProjectsLocationsClustersNodePoolsSetSizeCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsLocationsClustersNodePoolsSetSizeCall) Context(ctx context.Context) *ProjectsLocationsClustersNodePoolsSetSizeCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsLocationsClustersNodePoolsSetSizeCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsLocationsClustersNodePoolsSetSizeCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.setnodepoolsizerequest) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}:setSize") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("POST", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "container.projects.locations.clusters.nodePools.setSize" call. +// Exactly one of *Operation or error will be non-nil. Any non-2xx +// status code is an error. Response headers are in either +// *Operation.ServerResponse.Header or (if a response was returned at +// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified +// to check whether the returned error was because +// http.StatusNotModified was returned. +func (c *ProjectsLocationsClustersNodePoolsSetSizeCall) Do(opts ...googleapi.CallOption) (*Operation, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &Operation{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Sets the size of a specific node pool.", + // "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}/nodePools/{nodePoolsId}:setSize", + // "httpMethod": "POST", + // "id": "container.projects.locations.clusters.nodePools.setSize", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "The name (project, location, cluster, node pool id) of the node pool to set\nsize.\nSpecified in the format 'projects/*/locations/*/clusters/*/nodePools/*'.", + // "location": "path", + // "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+/nodePools/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1/{+name}:setSize", + // "request": { + // "$ref": "SetNodePoolSizeRequest" + // }, + // "response": { + // "$ref": "Operation" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "container.projects.locations.clusters.nodePools.update": + +type ProjectsLocationsClustersNodePoolsUpdateCall struct { + s *Service + name string + updatenodepoolrequest *UpdateNodePoolRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Update: Updates the version and/or image type of a specific node +// pool. +func (r *ProjectsLocationsClustersNodePoolsService) Update(name string, updatenodepoolrequest *UpdateNodePoolRequest) *ProjectsLocationsClustersNodePoolsUpdateCall { + c := &ProjectsLocationsClustersNodePoolsUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + c.updatenodepoolrequest = updatenodepoolrequest + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsLocationsClustersNodePoolsUpdateCall) Fields(s ...googleapi.Field) *ProjectsLocationsClustersNodePoolsUpdateCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsLocationsClustersNodePoolsUpdateCall) Context(ctx context.Context) *ProjectsLocationsClustersNodePoolsUpdateCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsLocationsClustersNodePoolsUpdateCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsLocationsClustersNodePoolsUpdateCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.updatenodepoolrequest) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("PUT", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "container.projects.locations.clusters.nodePools.update" call. +// Exactly one of *Operation or error will be non-nil. Any non-2xx +// status code is an error. Response headers are in either +// *Operation.ServerResponse.Header or (if a response was returned at +// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified +// to check whether the returned error was because +// http.StatusNotModified was returned. +func (c *ProjectsLocationsClustersNodePoolsUpdateCall) Do(opts ...googleapi.CallOption) (*Operation, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &Operation{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Updates the version and/or image type of a specific node pool.", + // "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}/nodePools/{nodePoolsId}", + // "httpMethod": "PUT", + // "id": "container.projects.locations.clusters.nodePools.update", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "The name (project, location, cluster, node pool) of the node pool to update.\nSpecified in the format 'projects/*/locations/*/clusters/*/nodePools/*'.", + // "location": "path", + // "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+/nodePools/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1/{+name}", + // "request": { + // "$ref": "UpdateNodePoolRequest" + // }, + // "response": { + // "$ref": "Operation" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "container.projects.locations.operations.cancel": + +type ProjectsLocationsOperationsCancelCall struct { + s *Service + name string + canceloperationrequest *CancelOperationRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Cancel: Cancels the specified operation. +func (r *ProjectsLocationsOperationsService) Cancel(name string, canceloperationrequest *CancelOperationRequest) *ProjectsLocationsOperationsCancelCall { + c := &ProjectsLocationsOperationsCancelCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + c.canceloperationrequest = canceloperationrequest + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsLocationsOperationsCancelCall) Fields(s ...googleapi.Field) *ProjectsLocationsOperationsCancelCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsLocationsOperationsCancelCall) Context(ctx context.Context) *ProjectsLocationsOperationsCancelCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsLocationsOperationsCancelCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsLocationsOperationsCancelCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.canceloperationrequest) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}:cancel") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("POST", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "container.projects.locations.operations.cancel" call. +// Exactly one of *Empty or error will be non-nil. Any non-2xx status +// code is an error. Response headers are in either +// *Empty.ServerResponse.Header or (if a response was returned at all) +// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to +// check whether the returned error was because http.StatusNotModified +// was returned. +func (c *ProjectsLocationsOperationsCancelCall) Do(opts ...googleapi.CallOption) (*Empty, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &Empty{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Cancels the specified operation.", + // "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/operations/{operationsId}:cancel", + // "httpMethod": "POST", + // "id": "container.projects.locations.operations.cancel", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "The name (project, location, operation id) of the operation to cancel.\nSpecified in the format 'projects/*/locations/*/operations/*'.", + // "location": "path", + // "pattern": "^projects/[^/]+/locations/[^/]+/operations/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1/{+name}:cancel", + // "request": { + // "$ref": "CancelOperationRequest" + // }, + // "response": { + // "$ref": "Empty" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "container.projects.locations.operations.get": + +type ProjectsLocationsOperationsGetCall struct { + s *Service + name string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// Get: Gets the specified operation. +func (r *ProjectsLocationsOperationsService) Get(name string) *ProjectsLocationsOperationsGetCall { + c := &ProjectsLocationsOperationsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + return c +} + +// OperationId sets the optional parameter "operationId": Deprecated. +// The server-assigned `name` of the operation. +// This field has been deprecated and replaced by the name field. +func (c *ProjectsLocationsOperationsGetCall) OperationId(operationId string) *ProjectsLocationsOperationsGetCall { + c.urlParams_.Set("operationId", operationId) + return c +} + +// ProjectId sets the optional parameter "projectId": Deprecated. The +// Google Developers Console [project ID or +// project +// number](https://support.google.com/cloud/answer/6158840). +// This +// field has been deprecated and replaced by the name field. +func (c *ProjectsLocationsOperationsGetCall) ProjectId(projectId string) *ProjectsLocationsOperationsGetCall { + c.urlParams_.Set("projectId", projectId) + return c +} + +// Zone sets the optional parameter "zone": Deprecated. The name of the +// Google Compute Engine +// [zone](/compute/docs/zones#available) in which the +// cluster +// resides. +// This field has been deprecated and replaced by the name field. +func (c *ProjectsLocationsOperationsGetCall) Zone(zone string) *ProjectsLocationsOperationsGetCall { + c.urlParams_.Set("zone", zone) + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsLocationsOperationsGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsOperationsGetCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// IfNoneMatch sets the optional parameter which makes the operation +// fail if the object's ETag matches the given value. This is useful for +// getting updates only after the object has changed since the last +// request. Use googleapi.IsNotModified to check whether the response +// error from Do is the result of In-None-Match. +func (c *ProjectsLocationsOperationsGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsOperationsGetCall { + c.ifNoneMatch_ = entityTag + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsLocationsOperationsGetCall) Context(ctx context.Context) *ProjectsLocationsOperationsGetCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsLocationsOperationsGetCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsLocationsOperationsGetCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + if c.ifNoneMatch_ != "" { + reqHeaders.Set("If-None-Match", c.ifNoneMatch_) + } + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("GET", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "container.projects.locations.operations.get" call. +// Exactly one of *Operation or error will be non-nil. Any non-2xx +// status code is an error. Response headers are in either +// *Operation.ServerResponse.Header or (if a response was returned at +// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified +// to check whether the returned error was because +// http.StatusNotModified was returned. +func (c *ProjectsLocationsOperationsGetCall) Do(opts ...googleapi.CallOption) (*Operation, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &Operation{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Gets the specified operation.", + // "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/operations/{operationsId}", + // "httpMethod": "GET", + // "id": "container.projects.locations.operations.get", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "The name (project, location, operation id) of the operation to get.\nSpecified in the format 'projects/*/locations/*/operations/*'.", + // "location": "path", + // "pattern": "^projects/[^/]+/locations/[^/]+/operations/[^/]+$", + // "required": true, + // "type": "string" + // }, + // "operationId": { + // "description": "Deprecated. The server-assigned `name` of the operation.\nThis field has been deprecated and replaced by the name field.", + // "location": "query", + // "type": "string" + // }, + // "projectId": { + // "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field has been deprecated and replaced by the name field.", + // "location": "query", + // "type": "string" + // }, + // "zone": { + // "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the name field.", + // "location": "query", + // "type": "string" + // } + // }, + // "path": "v1/{+name}", + // "response": { + // "$ref": "Operation" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "container.projects.locations.operations.list": + +type ProjectsLocationsOperationsListCall struct { + s *Service + parent string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// List: Lists all operations in a project in a specific zone or all +// zones. +func (r *ProjectsLocationsOperationsService) List(parent string) *ProjectsLocationsOperationsListCall { + c := &ProjectsLocationsOperationsListCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.parent = parent + return c +} + +// ProjectId sets the optional parameter "projectId": Deprecated. The +// Google Developers Console [project ID or +// project +// number](https://support.google.com/cloud/answer/6158840). +// This +// field has been deprecated and replaced by the parent field. +func (c *ProjectsLocationsOperationsListCall) ProjectId(projectId string) *ProjectsLocationsOperationsListCall { + c.urlParams_.Set("projectId", projectId) + return c +} + +// Zone sets the optional parameter "zone": Deprecated. The name of the +// Google Compute Engine [zone](/compute/docs/zones#available) +// to return operations for, or `-` for all zones. +// This field has been deprecated and replaced by the parent field. +func (c *ProjectsLocationsOperationsListCall) Zone(zone string) *ProjectsLocationsOperationsListCall { + c.urlParams_.Set("zone", zone) + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsLocationsOperationsListCall) Fields(s ...googleapi.Field) *ProjectsLocationsOperationsListCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// IfNoneMatch sets the optional parameter which makes the operation +// fail if the object's ETag matches the given value. This is useful for +// getting updates only after the object has changed since the last +// request. Use googleapi.IsNotModified to check whether the response +// error from Do is the result of In-None-Match. +func (c *ProjectsLocationsOperationsListCall) IfNoneMatch(entityTag string) *ProjectsLocationsOperationsListCall { + c.ifNoneMatch_ = entityTag + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsLocationsOperationsListCall) Context(ctx context.Context) *ProjectsLocationsOperationsListCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsLocationsOperationsListCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsLocationsOperationsListCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + if c.ifNoneMatch_ != "" { + reqHeaders.Set("If-None-Match", c.ifNoneMatch_) + } + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/operations") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("GET", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "parent": c.parent, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "container.projects.locations.operations.list" call. +// Exactly one of *ListOperationsResponse or error will be non-nil. Any +// non-2xx status code is an error. Response headers are in either +// *ListOperationsResponse.ServerResponse.Header or (if a response was +// returned at all) in error.(*googleapi.Error).Header. Use +// googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *ProjectsLocationsOperationsListCall) Do(opts ...googleapi.CallOption) (*ListOperationsResponse, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &ListOperationsResponse{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Lists all operations in a project in a specific zone or all zones.", + // "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/operations", + // "httpMethod": "GET", + // "id": "container.projects.locations.operations.list", + // "parameterOrder": [ + // "parent" + // ], + // "parameters": { + // "parent": { + // "description": "The parent (project and location) where the operations will be listed.\nSpecified in the format 'projects/*/locations/*'.\nLocation \"-\" matches all zones and all regions.", + // "location": "path", + // "pattern": "^projects/[^/]+/locations/[^/]+$", + // "required": true, + // "type": "string" + // }, + // "projectId": { + // "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field has been deprecated and replaced by the parent field.", + // "location": "query", + // "type": "string" + // }, + // "zone": { + // "description": "Deprecated. The name of the Google Compute Engine [zone](/compute/docs/zones#available)\nto return operations for, or `-` for all zones.\nThis field has been deprecated and replaced by the parent field.", + // "location": "query", + // "type": "string" + // } + // }, + // "path": "v1/{+parent}/operations", + // "response": { + // "$ref": "ListOperationsResponse" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + // method id "container.projects.zones.getServerconfig": type ProjectsZonesGetServerconfigCall struct { @@ -2499,6 +7712,14 @@ func (r *ProjectsZonesService) GetServerconfig(projectId string, zone string) *P return c } +// Name sets the optional parameter "name": The name (project and +// location) of the server config to get +// Specified in the format 'projects/*/locations/*'. +func (c *ProjectsZonesGetServerconfigCall) Name(name string) *ProjectsZonesGetServerconfigCall { + c.urlParams_.Set("name", name) + return c +} + // Fields allows partial responses to be retrieved. See // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse // for more information. @@ -2603,14 +7824,19 @@ func (c *ProjectsZonesGetServerconfigCall) Do(opts ...googleapi.CallOption) (*Se // "zone" // ], // "parameters": { + // "name": { + // "description": "The name (project and location) of the server config to get\nSpecified in the format 'projects/*/locations/*'.", + // "location": "query", + // "type": "string" + // }, // "projectId": { - // "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).", + // "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" // }, // "zone": { - // "description": "The name of the Google Compute Engine [zone](/compute/docs/zones#available)\nto return operations for.", + // "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) to return operations for.\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" @@ -2749,19 +7975,19 @@ func (c *ProjectsZonesClustersAddonsCall) Do(opts ...googleapi.CallOption) (*Ope // ], // "parameters": { // "clusterId": { - // "description": "The name of the cluster to upgrade.", + // "description": "Deprecated. The name of the cluster to upgrade.\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" // }, // "projectId": { - // "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).", + // "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" // }, // "zone": { - // "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.", + // "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" @@ -2903,19 +8129,19 @@ func (c *ProjectsZonesClustersCompleteIpRotationCall) Do(opts ...googleapi.CallO // ], // "parameters": { // "clusterId": { - // "description": "The name of the cluster.", + // "description": "Deprecated. The name of the cluster.\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" // }, // "projectId": { - // "description": "The Google Developers Console [project ID or project\nnumber](https://developers.google.com/console/help/new/#projectnumber).", + // "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://developers.google.com/console/help/new/#projectnumber).\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" // }, // "zone": { - // "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.", + // "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" @@ -3069,13 +8295,13 @@ func (c *ProjectsZonesClustersCreateCall) Do(opts ...googleapi.CallOption) (*Ope // ], // "parameters": { // "projectId": { - // "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).", + // "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field has been deprecated and replaced by the parent field.", // "location": "path", // "required": true, // "type": "string" // }, // "zone": { - // "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.", + // "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the parent field.", // "location": "path", // "required": true, // "type": "string" @@ -3127,6 +8353,14 @@ func (r *ProjectsZonesClustersService) Delete(projectId string, zone string, clu return c } +// Name sets the optional parameter "name": The name (project, location, +// cluster) of the cluster to delete. +// Specified in the format 'projects/*/locations/*/clusters/*'. +func (c *ProjectsZonesClustersDeleteCall) Name(name string) *ProjectsZonesClustersDeleteCall { + c.urlParams_.Set("name", name) + return c +} + // Fields allows partial responses to be retrieved. See // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse // for more information. @@ -3221,19 +8455,24 @@ func (c *ProjectsZonesClustersDeleteCall) Do(opts ...googleapi.CallOption) (*Ope // ], // "parameters": { // "clusterId": { - // "description": "The name of the cluster to delete.", + // "description": "Deprecated. The name of the cluster to delete.\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" // }, + // "name": { + // "description": "The name (project, location, cluster) of the cluster to delete.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", + // "location": "query", + // "type": "string" + // }, // "projectId": { - // "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).", + // "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" // }, // "zone": { - // "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.", + // "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" @@ -3272,6 +8511,14 @@ func (r *ProjectsZonesClustersService) Get(projectId string, zone string, cluste return c } +// Name sets the optional parameter "name": The name (project, location, +// cluster) of the cluster to retrieve. +// Specified in the format 'projects/*/locations/*/clusters/*'. +func (c *ProjectsZonesClustersGetCall) Name(name string) *ProjectsZonesClustersGetCall { + c.urlParams_.Set("name", name) + return c +} + // Fields allows partial responses to be retrieved. See // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse // for more information. @@ -3379,19 +8626,24 @@ func (c *ProjectsZonesClustersGetCall) Do(opts ...googleapi.CallOption) (*Cluste // ], // "parameters": { // "clusterId": { - // "description": "The name of the cluster to retrieve.", + // "description": "Deprecated. The name of the cluster to retrieve.\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" // }, + // "name": { + // "description": "The name (project, location, cluster) of the cluster to retrieve.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", + // "location": "query", + // "type": "string" + // }, // "projectId": { - // "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).", + // "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" // }, // "zone": { - // "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.", + // "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" @@ -3531,19 +8783,19 @@ func (c *ProjectsZonesClustersLegacyAbacCall) Do(opts ...googleapi.CallOption) ( // ], // "parameters": { // "clusterId": { - // "description": "The name of the cluster to update.", + // "description": "Deprecated. The name of the cluster to update.\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" // }, // "projectId": { - // "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).", + // "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" // }, // "zone": { - // "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.", + // "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" @@ -3585,6 +8837,15 @@ func (r *ProjectsZonesClustersService) List(projectId string, zone string) *Proj return c } +// Parent sets the optional parameter "parent": The parent (project and +// location) where the clusters will be listed. +// Specified in the format 'projects/*/locations/*'. +// Location "-" matches all zones and all regions. +func (c *ProjectsZonesClustersListCall) Parent(parent string) *ProjectsZonesClustersListCall { + c.urlParams_.Set("parent", parent) + return c +} + // Fields allows partial responses to be retrieved. See // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse // for more information. @@ -3689,14 +8950,19 @@ func (c *ProjectsZonesClustersListCall) Do(opts ...googleapi.CallOption) (*ListC // "zone" // ], // "parameters": { + // "parent": { + // "description": "The parent (project and location) where the clusters will be listed.\nSpecified in the format 'projects/*/locations/*'.\nLocation \"-\" matches all zones and all regions.", + // "location": "query", + // "type": "string" + // }, // "projectId": { - // "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).", + // "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field has been deprecated and replaced by the parent field.", // "location": "path", // "required": true, // "type": "string" // }, // "zone": { - // "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides, or \"-\" for all zones.", + // "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides, or \"-\" for all zones.\nThis field has been deprecated and replaced by the parent field.", // "location": "path", // "required": true, // "type": "string" @@ -3835,19 +9101,19 @@ func (c *ProjectsZonesClustersLocationsCall) Do(opts ...googleapi.CallOption) (* // ], // "parameters": { // "clusterId": { - // "description": "The name of the cluster to upgrade.", + // "description": "Deprecated. The name of the cluster to upgrade.\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" // }, // "projectId": { - // "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).", + // "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" // }, // "zone": { - // "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.", + // "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" @@ -3989,19 +9255,19 @@ func (c *ProjectsZonesClustersLoggingCall) Do(opts ...googleapi.CallOption) (*Op // ], // "parameters": { // "clusterId": { - // "description": "The name of the cluster to upgrade.", + // "description": "Deprecated. The name of the cluster to upgrade.\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" // }, // "projectId": { - // "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).", + // "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" // }, // "zone": { - // "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.", + // "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" @@ -4143,19 +9409,19 @@ func (c *ProjectsZonesClustersMasterCall) Do(opts ...googleapi.CallOption) (*Ope // ], // "parameters": { // "clusterId": { - // "description": "The name of the cluster to upgrade.", + // "description": "Deprecated. The name of the cluster to upgrade.\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" // }, // "projectId": { - // "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).", + // "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" // }, // "zone": { - // "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.", + // "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" @@ -4297,19 +9563,19 @@ func (c *ProjectsZonesClustersMonitoringCall) Do(opts ...googleapi.CallOption) ( // ], // "parameters": { // "clusterId": { - // "description": "The name of the cluster to upgrade.", + // "description": "Deprecated. The name of the cluster to upgrade.\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" // }, // "projectId": { - // "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).", + // "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" // }, // "zone": { - // "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.", + // "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" @@ -4451,19 +9717,19 @@ func (c *ProjectsZonesClustersResourceLabelsCall) Do(opts ...googleapi.CallOptio // ], // "parameters": { // "clusterId": { - // "description": "The name of the cluster.", + // "description": "Deprecated. The name of the cluster.\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" // }, // "projectId": { - // "description": "The Google Developers Console [project ID or project\nnumber](https://developers.google.com/console/help/new/#projectnumber).", + // "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://developers.google.com/console/help/new/#projectnumber).\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" // }, // "zone": { - // "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.", + // "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" @@ -4763,19 +10029,19 @@ func (c *ProjectsZonesClustersSetMasterAuthCall) Do(opts ...googleapi.CallOption // ], // "parameters": { // "clusterId": { - // "description": "The name of the cluster to upgrade.", + // "description": "Deprecated. The name of the cluster to upgrade.\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" // }, // "projectId": { - // "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).", + // "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" // }, // "zone": { - // "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.", + // "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" @@ -4917,19 +10183,19 @@ func (c *ProjectsZonesClustersSetNetworkPolicyCall) Do(opts ...googleapi.CallOpt // ], // "parameters": { // "clusterId": { - // "description": "The name of the cluster.", + // "description": "Deprecated. The name of the cluster.\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" // }, // "projectId": { - // "description": "The Google Developers Console [project ID or project\nnumber](https://developers.google.com/console/help/new/#projectnumber).", + // "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://developers.google.com/console/help/new/#projectnumber).\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" // }, // "zone": { - // "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.", + // "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" @@ -5071,19 +10337,19 @@ func (c *ProjectsZonesClustersStartIpRotationCall) Do(opts ...googleapi.CallOpti // ], // "parameters": { // "clusterId": { - // "description": "The name of the cluster.", + // "description": "Deprecated. The name of the cluster.\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" // }, // "projectId": { - // "description": "The Google Developers Console [project ID or project\nnumber](https://developers.google.com/console/help/new/#projectnumber).", + // "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://developers.google.com/console/help/new/#projectnumber).\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" // }, // "zone": { - // "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.", + // "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" @@ -5225,19 +10491,19 @@ func (c *ProjectsZonesClustersUpdateCall) Do(opts ...googleapi.CallOption) (*Ope // ], // "parameters": { // "clusterId": { - // "description": "The name of the cluster to upgrade.", + // "description": "Deprecated. The name of the cluster to upgrade.\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" // }, // "projectId": { - // "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).", + // "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" // }, // "zone": { - // "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.", + // "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" @@ -5383,25 +10649,25 @@ func (c *ProjectsZonesClustersNodePoolsAutoscalingCall) Do(opts ...googleapi.Cal // ], // "parameters": { // "clusterId": { - // "description": "The name of the cluster to upgrade.", + // "description": "Deprecated. The name of the cluster to upgrade.\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" // }, // "nodePoolId": { - // "description": "The name of the node pool to upgrade.", + // "description": "Deprecated. The name of the node pool to upgrade.\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" // }, // "projectId": { - // "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).", + // "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" // }, // "zone": { - // "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.", + // "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" @@ -5543,19 +10809,19 @@ func (c *ProjectsZonesClustersNodePoolsCreateCall) Do(opts ...googleapi.CallOpti // ], // "parameters": { // "clusterId": { - // "description": "The name of the cluster.", + // "description": "Deprecated. The name of the cluster.\nThis field has been deprecated and replaced by the parent field.", // "location": "path", // "required": true, // "type": "string" // }, // "projectId": { - // "description": "The Google Developers Console [project ID or project\nnumber](https://developers.google.com/console/help/new/#projectnumber).", + // "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://developers.google.com/console/help/new/#projectnumber).\nThis field has been deprecated and replaced by the parent field.", // "location": "path", // "required": true, // "type": "string" // }, // "zone": { - // "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.", + // "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the parent field.", // "location": "path", // "required": true, // "type": "string" @@ -5598,6 +10864,15 @@ func (r *ProjectsZonesClustersNodePoolsService) Delete(projectId string, zone st return c } +// Name sets the optional parameter "name": The name (project, location, +// cluster, node pool id) of the node pool to delete. +// Specified in the format +// 'projects/*/locations/*/clusters/*/nodePools/*'. +func (c *ProjectsZonesClustersNodePoolsDeleteCall) Name(name string) *ProjectsZonesClustersNodePoolsDeleteCall { + c.urlParams_.Set("name", name) + return c +} + // Fields allows partial responses to be retrieved. See // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse // for more information. @@ -5694,25 +10969,30 @@ func (c *ProjectsZonesClustersNodePoolsDeleteCall) Do(opts ...googleapi.CallOpti // ], // "parameters": { // "clusterId": { - // "description": "The name of the cluster.", + // "description": "Deprecated. The name of the cluster.\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" // }, + // "name": { + // "description": "The name (project, location, cluster, node pool id) of the node pool to delete.\nSpecified in the format 'projects/*/locations/*/clusters/*/nodePools/*'.", + // "location": "query", + // "type": "string" + // }, // "nodePoolId": { - // "description": "The name of the node pool to delete.", + // "description": "Deprecated. The name of the node pool to delete.\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" // }, // "projectId": { - // "description": "The Google Developers Console [project ID or project\nnumber](https://developers.google.com/console/help/new/#projectnumber).", + // "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://developers.google.com/console/help/new/#projectnumber).\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" // }, // "zone": { - // "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.", + // "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" @@ -5753,6 +11033,15 @@ func (r *ProjectsZonesClustersNodePoolsService) Get(projectId string, zone strin return c } +// Name sets the optional parameter "name": The name (project, location, +// cluster, node pool id) of the node pool to get. +// Specified in the format +// 'projects/*/locations/*/clusters/*/nodePools/*'. +func (c *ProjectsZonesClustersNodePoolsGetCall) Name(name string) *ProjectsZonesClustersNodePoolsGetCall { + c.urlParams_.Set("name", name) + return c +} + // Fields allows partial responses to be retrieved. See // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse // for more information. @@ -5862,25 +11151,30 @@ func (c *ProjectsZonesClustersNodePoolsGetCall) Do(opts ...googleapi.CallOption) // ], // "parameters": { // "clusterId": { - // "description": "The name of the cluster.", + // "description": "Deprecated. The name of the cluster.\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" // }, + // "name": { + // "description": "The name (project, location, cluster, node pool id) of the node pool to get.\nSpecified in the format 'projects/*/locations/*/clusters/*/nodePools/*'.", + // "location": "query", + // "type": "string" + // }, // "nodePoolId": { - // "description": "The name of the node pool.", + // "description": "Deprecated. The name of the node pool.\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" // }, // "projectId": { - // "description": "The Google Developers Console [project ID or project\nnumber](https://developers.google.com/console/help/new/#projectnumber).", + // "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://developers.google.com/console/help/new/#projectnumber).\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" // }, // "zone": { - // "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.", + // "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" @@ -5919,6 +11213,14 @@ func (r *ProjectsZonesClustersNodePoolsService) List(projectId string, zone stri return c } +// Parent sets the optional parameter "parent": The parent (project, +// location, cluster id) where the node pools will be listed. +// Specified in the format 'projects/*/locations/*/clusters/*'. +func (c *ProjectsZonesClustersNodePoolsListCall) Parent(parent string) *ProjectsZonesClustersNodePoolsListCall { + c.urlParams_.Set("parent", parent) + return c +} + // Fields allows partial responses to be retrieved. See // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse // for more information. @@ -6026,19 +11328,24 @@ func (c *ProjectsZonesClustersNodePoolsListCall) Do(opts ...googleapi.CallOption // ], // "parameters": { // "clusterId": { - // "description": "The name of the cluster.", + // "description": "Deprecated. The name of the cluster.\nThis field has been deprecated and replaced by the parent field.", // "location": "path", // "required": true, // "type": "string" // }, + // "parent": { + // "description": "The parent (project, location, cluster id) where the node pools will be listed.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", + // "location": "query", + // "type": "string" + // }, // "projectId": { - // "description": "The Google Developers Console [project ID or project\nnumber](https://developers.google.com/console/help/new/#projectnumber).", + // "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://developers.google.com/console/help/new/#projectnumber).\nThis field has been deprecated and replaced by the parent field.", // "location": "path", // "required": true, // "type": "string" // }, // "zone": { - // "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.", + // "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the parent field.", // "location": "path", // "required": true, // "type": "string" @@ -6183,25 +11490,25 @@ func (c *ProjectsZonesClustersNodePoolsRollbackCall) Do(opts ...googleapi.CallOp // ], // "parameters": { // "clusterId": { - // "description": "The name of the cluster to rollback.", + // "description": "Deprecated. The name of the cluster to rollback.\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" // }, // "nodePoolId": { - // "description": "The name of the node pool to rollback.", + // "description": "Deprecated. The name of the node pool to rollback.\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" // }, // "projectId": { - // "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).", + // "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" // }, // "zone": { - // "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.", + // "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" @@ -6347,25 +11654,25 @@ func (c *ProjectsZonesClustersNodePoolsSetManagementCall) Do(opts ...googleapi.C // ], // "parameters": { // "clusterId": { - // "description": "The name of the cluster to update.", + // "description": "Deprecated. The name of the cluster to update.\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" // }, // "nodePoolId": { - // "description": "The name of the node pool to update.", + // "description": "Deprecated. The name of the node pool to update.\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" // }, // "projectId": { - // "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).", + // "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" // }, // "zone": { - // "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.", + // "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" @@ -6511,25 +11818,25 @@ func (c *ProjectsZonesClustersNodePoolsSetSizeCall) Do(opts ...googleapi.CallOpt // ], // "parameters": { // "clusterId": { - // "description": "The name of the cluster to update.", + // "description": "Deprecated. The name of the cluster to update.\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" // }, // "nodePoolId": { - // "description": "The name of the node pool to update.", + // "description": "Deprecated. The name of the node pool to update.\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" // }, // "projectId": { - // "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).", + // "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" // }, // "zone": { - // "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.", + // "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" @@ -6676,25 +11983,25 @@ func (c *ProjectsZonesClustersNodePoolsUpdateCall) Do(opts ...googleapi.CallOpti // ], // "parameters": { // "clusterId": { - // "description": "The name of the cluster to upgrade.", + // "description": "Deprecated. The name of the cluster to upgrade.\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" // }, // "nodePoolId": { - // "description": "The name of the node pool to upgrade.", + // "description": "Deprecated. The name of the node pool to upgrade.\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" // }, // "projectId": { - // "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).", + // "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" // }, // "zone": { - // "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.", + // "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" @@ -6836,19 +12143,19 @@ func (c *ProjectsZonesOperationsCancelCall) Do(opts ...googleapi.CallOption) (*E // ], // "parameters": { // "operationId": { - // "description": "The server-assigned `name` of the operation.", + // "description": "Deprecated. The server-assigned `name` of the operation.\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" // }, // "projectId": { - // "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).", + // "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" // }, // "zone": { - // "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the operation resides.", + // "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the operation resides.\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" @@ -6890,6 +12197,14 @@ func (r *ProjectsZonesOperationsService) Get(projectId string, zone string, oper return c } +// Name sets the optional parameter "name": The name (project, location, +// operation id) of the operation to get. +// Specified in the format 'projects/*/locations/*/operations/*'. +func (c *ProjectsZonesOperationsGetCall) Name(name string) *ProjectsZonesOperationsGetCall { + c.urlParams_.Set("name", name) + return c +} + // Fields allows partial responses to be retrieved. See // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse // for more information. @@ -6996,20 +12311,25 @@ func (c *ProjectsZonesOperationsGetCall) Do(opts ...googleapi.CallOption) (*Oper // "operationId" // ], // "parameters": { + // "name": { + // "description": "The name (project, location, operation id) of the operation to get.\nSpecified in the format 'projects/*/locations/*/operations/*'.", + // "location": "query", + // "type": "string" + // }, // "operationId": { - // "description": "The server-assigned `name` of the operation.", + // "description": "Deprecated. The server-assigned `name` of the operation.\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" // }, // "projectId": { - // "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).", + // "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" // }, // "zone": { - // "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.", + // "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" @@ -7047,6 +12367,15 @@ func (r *ProjectsZonesOperationsService) List(projectId string, zone string) *Pr return c } +// Parent sets the optional parameter "parent": The parent (project and +// location) where the operations will be listed. +// Specified in the format 'projects/*/locations/*'. +// Location "-" matches all zones and all regions. +func (c *ProjectsZonesOperationsListCall) Parent(parent string) *ProjectsZonesOperationsListCall { + c.urlParams_.Set("parent", parent) + return c +} + // Fields allows partial responses to be retrieved. See // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse // for more information. @@ -7151,14 +12480,19 @@ func (c *ProjectsZonesOperationsListCall) Do(opts ...googleapi.CallOption) (*Lis // "zone" // ], // "parameters": { + // "parent": { + // "description": "The parent (project and location) where the operations will be listed.\nSpecified in the format 'projects/*/locations/*'.\nLocation \"-\" matches all zones and all regions.", + // "location": "query", + // "type": "string" + // }, // "projectId": { - // "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).", + // "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field has been deprecated and replaced by the parent field.", // "location": "path", // "required": true, // "type": "string" // }, // "zone": { - // "description": "The name of the Google Compute Engine [zone](/compute/docs/zones#available)\nto return operations for, or `-` for all zones.", + // "description": "Deprecated. The name of the Google Compute Engine [zone](/compute/docs/zones#available)\nto return operations for, or `-` for all zones.\nThis field has been deprecated and replaced by the parent field.", // "location": "path", // "required": true, // "type": "string" diff --git a/vendor/google.golang.org/api/container/v1beta1/container-api.json b/vendor/google.golang.org/api/container/v1beta1/container-api.json index 09680650d..3c6ca89e4 100644 --- a/vendor/google.golang.org/api/container/v1beta1/container-api.json +++ b/vendor/google.golang.org/api/container/v1beta1/container-api.json @@ -1,2563 +1,3103 @@ { + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/cloud-platform": { + "description": "View and manage your data across Google Cloud Platform services" + } + } + } + }, + "basePath": "", + "baseUrl": "https://container.googleapis.com/", + "batchPath": "batch", + "canonicalName": "Container", + "description": "The Google Kubernetes Engine API is used for building and managing container based applications, powered by the open source Kubernetes technology.", + "discoveryVersion": "v1", + "documentationLink": "https://cloud.google.com/container-engine/", "fullyEncodeReservedExpansion": true, - "title": "Google Kubernetes Engine API", + "icons": { + "x16": "http://www.google.com/images/icons/product/search-16.gif", + "x32": "http://www.google.com/images/icons/product/search-32.gif" + }, + "id": "container:v1beta1", + "kind": "discovery#restDescription", + "name": "container", + "ownerDomain": "google.com", "ownerName": "Google", + "parameters": { + "$.xgafv": { + "description": "V1 error format.", + "enum": [ + "1", + "2" + ], + "enumDescriptions": [ + "v1 error format", + "v2 error format" + ], + "location": "query", + "type": "string" + }, + "access_token": { + "description": "OAuth access token.", + "location": "query", + "type": "string" + }, + "alt": { + "default": "json", + "description": "Data format for response.", + "enum": [ + "json", + "media", + "proto" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json", + "Media download with context-dependent Content-Type", + "Responses with Content-Type of application/x-protobuf" + ], + "location": "query", + "type": "string" + }, + "bearer_token": { + "description": "OAuth bearer token.", + "location": "query", + "type": "string" + }, + "callback": { + "description": "JSONP", + "location": "query", + "type": "string" + }, + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "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.", + "location": "query", + "type": "string" + }, + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "pp": { + "default": "true", + "description": "Pretty-print response.", + "location": "query", + "type": "boolean" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", + "location": "query", + "type": "string" + }, + "uploadType": { + "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", + "location": "query", + "type": "string" + }, + "upload_protocol": { + "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", + "location": "query", + "type": "string" + } + }, + "protocol": "rest", "resources": { "projects": { "resources": { - "zones": { + "locations": { "methods": { - "getServerconfig": { - "path": "v1beta1/projects/{projectId}/zones/{zone}/serverconfig", - "id": "container.projects.zones.getServerconfig", + "getServerConfig": { "description": "Returns configuration info about the Kubernetes Engine service.", - "response": { - "$ref": "ServerConfig" - }, - "parameterOrder": [ - "projectId", - "zone" - ], + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/serverConfig", "httpMethod": "GET", + "id": "container.projects.locations.getServerConfig", + "parameterOrder": [ + "name" + ], "parameters": { - "projectId": { + "name": { + "description": "The name (project and location) of the server config to get\nSpecified in the format 'projects/*/locations/*'.", "location": "path", - "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field is deprecated, use name instead.", + "pattern": "^projects/[^/]+/locations/[^/]+$", "required": true, "type": "string" }, + "projectId": { + "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field has been deprecated and replaced by the name field.", + "location": "query", + "type": "string" + }, "zone": { - "location": "path", - "description": "The name of the Google Compute Engine [zone](/compute/docs/zones#available)\nto return operations for.\nThis field is deprecated, use name instead.", - "required": true, - "type": "string" - }, - "name": { + "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) to return operations for.\nThis field has been deprecated and replaced by the name field.", "location": "query", - "description": "The name (project and location) of the server config to get\nSpecified in the format 'projects/*/locations/*'.", "type": "string" } }, + "path": "v1beta1/{+name}/serverConfig", + "response": { + "$ref": "ServerConfig" + }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta1/projects/{projectId}/zones/{zone}/serverconfig" + ] } }, "resources": { "clusters": { "methods": { - "locations": { - "request": { - "$ref": "SetLocationsRequest" - }, - "description": "Sets the locations of a specific cluster.", - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "projectId", - "zone", - "clusterId" - ], - "httpMethod": "POST", - "parameters": { - "projectId": { - "location": "path", - "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field is deprecated, use name instead.", - "required": true, - "type": "string" - }, - "zone": { - "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field is deprecated, use name instead.", - "required": true, - "type": "string", - "location": "path" - }, - "clusterId": { - "description": "The name of the cluster to upgrade.\nThis field is deprecated, use name instead.", - "required": true, - "type": "string", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/locations", - "path": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/locations", - "id": "container.projects.zones.clusters.locations" - }, - "update": { - "path": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}", - "id": "container.projects.zones.clusters.update", - "request": { - "$ref": "UpdateClusterRequest" - }, - "description": "Updates the settings of a specific cluster.", - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "projectId", - "zone", - "clusterId" - ], - "httpMethod": "PUT", - "parameters": { - "zone": { - "location": "path", - "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field is deprecated, use name instead.", - "required": true, - "type": "string" - }, - "clusterId": { - "location": "path", - "description": "The name of the cluster to upgrade.\nThis field is deprecated, use name instead.", - "required": true, - "type": "string" - }, - "projectId": { - "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field is deprecated, use name instead.", - "required": true, - "type": "string", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}" - }, - "monitoring": { - "id": "container.projects.zones.clusters.monitoring", - "path": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/monitoring", - "request": { - "$ref": "SetMonitoringServiceRequest" - }, - "description": "Sets the monitoring service of a specific cluster.", - "httpMethod": "POST", - "parameterOrder": [ - "projectId", - "zone", - "clusterId" - ], - "response": { - "$ref": "Operation" - }, - "parameters": { - "zone": { - "location": "path", - "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field is deprecated, use name instead.", - "required": true, - "type": "string" - }, - "clusterId": { - "location": "path", - "description": "The name of the cluster to upgrade.\nThis field is deprecated, use name instead.", - "required": true, - "type": "string" - }, - "projectId": { - "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field is deprecated, use name instead.", - "required": true, - "type": "string", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/monitoring" - }, - "master": { - "request": { - "$ref": "UpdateMasterRequest" - }, - "description": "Updates the master of a specific cluster.", - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "projectId", - "zone", - "clusterId" - ], - "httpMethod": "POST", - "parameters": { - "projectId": { - "location": "path", - "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).", - "required": true, - "type": "string" - }, - "zone": { - "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field is deprecated, use name instead.", - "required": true, - "type": "string", - "location": "path" - }, - "clusterId": { - "description": "The name of the cluster to upgrade.\nThis field is deprecated, use name instead.", - "required": true, - "type": "string", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/master", - "path": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/master", - "id": "container.projects.zones.clusters.master" - }, - "setMasterAuth": { - "path": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}:setMasterAuth", - "id": "container.projects.zones.clusters.setMasterAuth", - "description": "Used to set master auth materials. Currently supports :-\nChanging the admin password of a specific cluster.\nThis can be either via password generation or explicitly set.\nModify basic_auth.csv and reset the K8S API server.", - "request": { - "$ref": "SetMasterAuthRequest" - }, - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "projectId", - "zone", - "clusterId" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "projectId": { - "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field is deprecated, use name instead.", - "required": true, - "type": "string", - "location": "path" - }, - "zone": { - "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field is deprecated, use name instead.", - "required": true, - "type": "string", - "location": "path" - }, - "clusterId": { - "description": "The name of the cluster to upgrade.\nThis field is deprecated, use name instead.", - "required": true, - "type": "string", - "location": "path" - } - }, - "flatPath": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}:setMasterAuth" - }, - "logging": { - "flatPath": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/logging", - "id": "container.projects.zones.clusters.logging", - "path": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/logging", - "request": { - "$ref": "SetLoggingServiceRequest" - }, - "description": "Sets the logging service of a specific cluster.", - "httpMethod": "POST", - "parameterOrder": [ - "projectId", - "zone", - "clusterId" - ], - "response": { - "$ref": "Operation" - }, - "parameters": { - "projectId": { - "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field is deprecated, use name instead.", - "required": true, - "type": "string", - "location": "path" - }, - "zone": { - "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.", - "required": true, - "type": "string", - "location": "path" - }, - "clusterId": { - "location": "path", - "description": "The name of the cluster to upgrade.\nThis field is deprecated, use name instead.", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "list": { - "httpMethod": "GET", - "response": { - "$ref": "ListClustersResponse" - }, - "parameterOrder": [ - "projectId", - "zone" - ], - "parameters": { - "zone": { - "location": "path", - "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides, or \"-\" for all zones.\nThis field is deprecated, use parent instead.", - "required": true, - "type": "string" - }, - "parent": { - "location": "query", - "description": "The parent (project and location) where the clusters will be listed.\nSpecified in the format 'projects/*/locations/*'.\nLocation \"-\" matches all zones and all regions.", - "type": "string" - }, - "projectId": { - "location": "path", - "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field is deprecated, use parent instead.", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta1/projects/{projectId}/zones/{zone}/clusters", - "id": "container.projects.zones.clusters.list", - "path": "v1beta1/projects/{projectId}/zones/{zone}/clusters", - "description": "Lists all clusters owned by a project in either the specified zone or all\nzones." - }, - "create": { - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "projectId", - "zone" - ], - "httpMethod": "POST", - "parameters": { - "zone": { - "location": "path", - "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field is deprecated, use parent instead.", - "required": true, - "type": "string" - }, - "projectId": { - "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field is deprecated, use parent instead.", - "required": true, - "type": "string", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta1/projects/{projectId}/zones/{zone}/clusters", - "path": "v1beta1/projects/{projectId}/zones/{zone}/clusters", - "id": "container.projects.zones.clusters.create", - "request": { - "$ref": "CreateClusterRequest" - }, - "description": "Creates a cluster, consisting of the specified number and type of Google\nCompute Engine instances.\n\nBy default, the cluster is created in the project's\n[default network](/compute/docs/networks-and-firewalls#networks).\n\nOne firewall is added for the cluster. After cluster creation,\nthe cluster creates routes for each node to allow the containers\non that node to communicate with all other instances in the\ncluster.\n\nFinally, an entry is added to the project's global metadata indicating\nwhich CIDR range is being used by the cluster." - }, - "resourceLabels": { - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "projectId", - "zone", - "clusterId" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "projectId": { - "location": "path", - "description": "The Google Developers Console [project ID or project\nnumber](https://developers.google.com/console/help/new/#projectnumber).\nThis field is deprecated, use name instead.", - "required": true, - "type": "string" - }, - "zone": { - "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field is deprecated, use name instead.", - "required": true, - "type": "string", - "location": "path" - }, - "clusterId": { - "description": "The name of the cluster.\nThis field is deprecated, use name instead.", - "required": true, - "type": "string", - "location": "path" - } - }, - "flatPath": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/resourceLabels", - "path": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/resourceLabels", - "id": "container.projects.zones.clusters.resourceLabels", - "description": "Sets labels on a cluster.", - "request": { - "$ref": "SetLabelsRequest" - } - }, "completeIpRotation": { - "flatPath": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}:completeIpRotation", - "path": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}:completeIpRotation", - "id": "container.projects.zones.clusters.completeIpRotation", - "request": { - "$ref": "CompleteIPRotationRequest" - }, "description": "Completes master IP rotation.", - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "projectId", - "zone", - "clusterId" - ], + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}:completeIpRotation", "httpMethod": "POST", - "parameters": { - "projectId": { - "location": "path", - "description": "The Google Developers Console [project ID or project\nnumber](https://developers.google.com/console/help/new/#projectnumber).\nThis field is deprecated, use name instead.", - "required": true, - "type": "string" - }, - "zone": { - "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field is deprecated, use name instead.", - "required": true, - "type": "string", - "location": "path" - }, - "clusterId": { - "description": "The name of the cluster.\nThis field is deprecated, use name instead.", - "required": true, - "type": "string", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "get": { - "path": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}", - "id": "container.projects.zones.clusters.get", - "description": "Gets the details of a specific cluster.", - "response": { - "$ref": "Cluster" - }, - "parameterOrder": [ - "projectId", - "zone", - "clusterId" - ], - "httpMethod": "GET", - "parameters": { - "name": { - "description": "The name (project, location, cluster) of the cluster to retrieve.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", - "type": "string", - "location": "query" - }, - "projectId": { - "location": "path", - "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field is deprecated, use name instead.", - "required": true, - "type": "string" - }, - "zone": { - "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field is deprecated, use name instead.", - "required": true, - "type": "string", - "location": "path" - }, - "clusterId": { - "description": "The name of the cluster to retrieve.\nThis field is deprecated, use name instead.", - "required": true, - "type": "string", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}" - }, - "legacyAbac": { - "path": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/legacyAbac", - "id": "container.projects.zones.clusters.legacyAbac", - "request": { - "$ref": "SetLegacyAbacRequest" - }, - "description": "Enables or disables the ABAC authorization mechanism on a cluster.", - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "projectId", - "zone", - "clusterId" - ], - "httpMethod": "POST", - "parameters": { - "zone": { - "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field is deprecated, use name instead.", - "required": true, - "type": "string", - "location": "path" - }, - "clusterId": { - "description": "The name of the cluster to update.\nThis field is deprecated, use name instead.", - "required": true, - "type": "string", - "location": "path" - }, - "projectId": { - "location": "path", - "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field is deprecated, use name instead.", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/legacyAbac" - }, - "setNetworkPolicy": { - "flatPath": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}:setNetworkPolicy", - "path": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}:setNetworkPolicy", - "id": "container.projects.zones.clusters.setNetworkPolicy", - "description": "Enables/Disables Network Policy for a cluster.", - "request": { - "$ref": "SetNetworkPolicyRequest" - }, - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "projectId", - "zone", - "clusterId" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "projectId": { - "location": "path", - "description": "The Google Developers Console [project ID or project\nnumber](https://developers.google.com/console/help/new/#projectnumber).\nThis field is deprecated, use name instead.", - "required": true, - "type": "string" - }, - "zone": { - "location": "path", - "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field is deprecated, use name instead.", - "required": true, - "type": "string" - }, - "clusterId": { - "location": "path", - "description": "The name of the cluster.\nThis field is deprecated, use name instead.", - "required": true, - "type": "string" - } - } - }, - "startIpRotation": { - "request": { - "$ref": "StartIPRotationRequest" - }, - "description": "Start master IP rotation.", - "httpMethod": "POST", - "parameterOrder": [ - "projectId", - "zone", - "clusterId" - ], - "response": { - "$ref": "Operation" - }, - "parameters": { - "projectId": { - "description": "The Google Developers Console [project ID or project\nnumber](https://developers.google.com/console/help/new/#projectnumber).\nThis field is deprecated, use name instead.", - "required": true, - "type": "string", - "location": "path" - }, - "zone": { - "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field is deprecated, use name instead.", - "required": true, - "type": "string", - "location": "path" - }, - "clusterId": { - "location": "path", - "description": "The name of the cluster.\nThis field is deprecated, use name instead.", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}:startIpRotation", - "id": "container.projects.zones.clusters.startIpRotation", - "path": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}:startIpRotation" - }, - "setMaintenancePolicy": { - "path": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}:setMaintenancePolicy", - "id": "container.projects.zones.clusters.setMaintenancePolicy", - "description": "Sets the maintenance policy for a cluster.", - "request": { - "$ref": "SetMaintenancePolicyRequest" - }, - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "projectId", - "zone", - "clusterId" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "projectId": { - "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).", - "required": true, - "type": "string", - "location": "path" - }, - "zone": { - "location": "path", - "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.", - "required": true, - "type": "string" - }, - "clusterId": { - "location": "path", - "description": "The name of the cluster to update.", - "required": true, - "type": "string" - } - }, - "flatPath": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}:setMaintenancePolicy" - }, - "addons": { - "flatPath": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/addons", - "path": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/addons", - "id": "container.projects.zones.clusters.addons", - "description": "Sets the addons of a specific cluster.", - "request": { - "$ref": "SetAddonsConfigRequest" - }, - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "projectId", - "zone", - "clusterId" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "projectId": { - "location": "path", - "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field is deprecated, use name instead.", - "required": true, - "type": "string" - }, - "zone": { - "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field is deprecated, use name instead.", - "required": true, - "type": "string", - "location": "path" - }, - "clusterId": { - "description": "The name of the cluster to upgrade.\nThis field is deprecated, use name instead.", - "required": true, - "type": "string", - "location": "path" - } - } - }, - "delete": { - "flatPath": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}", - "path": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}", - "id": "container.projects.zones.clusters.delete", - "description": "Deletes the cluster, including the Kubernetes endpoint and all worker\nnodes.\n\nFirewalls and routes that were configured during cluster creation\nare also deleted.\n\nOther Google Compute Engine resources that might be in use by the cluster\n(e.g. load balancer resources) will not be deleted if they weren't present\nat the initial create time.", - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "projectId", - "zone", - "clusterId" - ], - "httpMethod": "DELETE", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "name": { - "description": "The name (project, location, cluster) of the cluster to delete.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", - "type": "string", - "location": "query" - }, - "projectId": { - "location": "path", - "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field is deprecated, use name instead.", - "required": true, - "type": "string" - }, - "zone": { - "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field is deprecated, use name instead.", - "required": true, - "type": "string", - "location": "path" - }, - "clusterId": { - "description": "The name of the cluster to delete.\nThis field is deprecated, use name instead.", - "required": true, - "type": "string", - "location": "path" - } - } - } - }, - "resources": { - "nodePools": { - "methods": { - "get": { - "description": "Retrieves the node pool requested.", - "response": { - "$ref": "NodePool" - }, - "parameterOrder": [ - "projectId", - "zone", - "clusterId", - "nodePoolId" - ], - "httpMethod": "GET", - "parameters": { - "projectId": { - "location": "path", - "description": "The Google Developers Console [project ID or project\nnumber](https://developers.google.com/console/help/new/#projectnumber).\nThis field is deprecated, use name instead.", - "required": true, - "type": "string" - }, - "zone": { - "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field is deprecated, use name instead.", - "required": true, - "type": "string", - "location": "path" - }, - "clusterId": { - "description": "The name of the cluster.\nThis field is deprecated, use name instead.", - "required": true, - "type": "string", - "location": "path" - }, - "nodePoolId": { - "description": "The name of the node pool.\nThis field is deprecated, use name instead.", - "required": true, - "type": "string", - "location": "path" - }, - "name": { - "location": "query", - "description": "The name (project, location, cluster, node pool id) of the node pool to get.\nSpecified in the format 'projects/*/locations/*/clusters/*/nodePools/*'.", - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/nodePools/{nodePoolId}", - "path": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/nodePools/{nodePoolId}", - "id": "container.projects.zones.clusters.nodePools.get" - }, - "update": { - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "projectId", - "zone", - "clusterId", - "nodePoolId" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "projectId": { - "location": "path", - "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field is deprecated, use name instead.", - "required": true, - "type": "string" - }, - "zone": { - "location": "path", - "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field is deprecated, use name instead.", - "required": true, - "type": "string" - }, - "clusterId": { - "location": "path", - "description": "The name of the cluster to upgrade.\nThis field is deprecated, use name instead.", - "required": true, - "type": "string" - }, - "nodePoolId": { - "location": "path", - "description": "The name of the node pool to upgrade.\nThis field is deprecated, use name instead.", - "required": true, - "type": "string" - } - }, - "flatPath": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/nodePools/{nodePoolId}/update", - "path": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/nodePools/{nodePoolId}/update", - "id": "container.projects.zones.clusters.nodePools.update", - "description": "Updates the version and/or iamge type of a specific node pool.", - "request": { - "$ref": "UpdateNodePoolRequest" - } - }, - "delete": { - "description": "Deletes a node pool from a cluster.", - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "projectId", - "zone", - "clusterId", - "nodePoolId" - ], - "httpMethod": "DELETE", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "name": { - "location": "query", - "description": "The name (project, location, cluster, node pool id) of the node pool to delete.\nSpecified in the format 'projects/*/locations/*/clusters/*/nodePools/*'.", - "type": "string" - }, - "projectId": { - "description": "The Google Developers Console [project ID or project\nnumber](https://developers.google.com/console/help/new/#projectnumber).\nThis field is deprecated, use name instead.", - "required": true, - "type": "string", - "location": "path" - }, - "zone": { - "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field is deprecated, use name instead.", - "required": true, - "type": "string", - "location": "path" - }, - "clusterId": { - "location": "path", - "description": "The name of the cluster.\nThis field is deprecated, use name instead.", - "required": true, - "type": "string" - }, - "nodePoolId": { - "location": "path", - "description": "The name of the node pool to delete.\nThis field is deprecated, use name instead.", - "required": true, - "type": "string" - } - }, - "flatPath": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/nodePools/{nodePoolId}", - "path": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/nodePools/{nodePoolId}", - "id": "container.projects.zones.clusters.nodePools.delete" - }, - "setManagement": { - "id": "container.projects.zones.clusters.nodePools.setManagement", - "path": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/nodePools/{nodePoolId}/setManagement", - "request": { - "$ref": "SetNodePoolManagementRequest" - }, - "description": "Sets the NodeManagement options for a node pool.", - "httpMethod": "POST", - "parameterOrder": [ - "projectId", - "zone", - "clusterId", - "nodePoolId" - ], - "response": { - "$ref": "Operation" - }, - "parameters": { - "projectId": { - "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field is deprecated, use name instead.", - "required": true, - "type": "string", - "location": "path" - }, - "zone": { - "location": "path", - "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field is deprecated, use name instead.", - "required": true, - "type": "string" - }, - "clusterId": { - "location": "path", - "description": "The name of the cluster to update.\nThis field is deprecated, use name instead.", - "required": true, - "type": "string" - }, - "nodePoolId": { - "location": "path", - "description": "The name of the node pool to update.\nThis field is deprecated, use name instead.", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/nodePools/{nodePoolId}/setManagement" - }, - "setSize": { - "request": { - "$ref": "SetNodePoolSizeRequest" - }, - "description": "Sets the size of a specific node pool.", - "httpMethod": "POST", - "parameterOrder": [ - "projectId", - "zone", - "clusterId", - "nodePoolId" - ], - "response": { - "$ref": "Operation" - }, - "parameters": { - "projectId": { - "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).", - "required": true, - "type": "string", - "location": "path" - }, - "zone": { - "location": "path", - "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field is deprecated, use name instead.", - "required": true, - "type": "string" - }, - "clusterId": { - "description": "The name of the cluster to update.\nThis field is deprecated, use name instead.", - "required": true, - "type": "string", - "location": "path" - }, - "nodePoolId": { - "location": "path", - "description": "The name of the node pool to update.\nThis field is deprecated, use name instead.", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/nodePools/{nodePoolId}/setSize", - "id": "container.projects.zones.clusters.nodePools.setSize", - "path": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/nodePools/{nodePoolId}/setSize" - }, - "list": { - "description": "Lists the node pools for a cluster.", - "response": { - "$ref": "ListNodePoolsResponse" - }, - "parameterOrder": [ - "projectId", - "zone", - "clusterId" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "projectId": { - "description": "The Google Developers Console [project ID or project\nnumber](https://developers.google.com/console/help/new/#projectnumber).\nThis field is deprecated, use parent instead.", - "required": true, - "type": "string", - "location": "path" - }, - "zone": { - "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field is deprecated, use parent instead.", - "required": true, - "type": "string", - "location": "path" - }, - "clusterId": { - "description": "The name of the cluster.\nThis field is deprecated, use parent instead.", - "required": true, - "type": "string", - "location": "path" - }, - "parent": { - "location": "query", - "description": "The parent (project, location, cluster id) where the node pools will be listed.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", - "type": "string" - } - }, - "flatPath": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/nodePools", - "path": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/nodePools", - "id": "container.projects.zones.clusters.nodePools.list" - }, - "rollback": { - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "projectId", - "zone", - "clusterId", - "nodePoolId" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "zone": { - "location": "path", - "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field is deprecated, use name instead.", - "required": true, - "type": "string" - }, - "clusterId": { - "location": "path", - "description": "The name of the cluster to rollback.\nThis field is deprecated, use name instead.", - "required": true, - "type": "string" - }, - "nodePoolId": { - "description": "The name of the node pool to rollback.\nThis field is deprecated, use name instead.", - "required": true, - "type": "string", - "location": "path" - }, - "projectId": { - "location": "path", - "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field is deprecated, use name instead.", - "required": true, - "type": "string" - } - }, - "flatPath": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/nodePools/{nodePoolId}:rollback", - "path": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/nodePools/{nodePoolId}:rollback", - "id": "container.projects.zones.clusters.nodePools.rollback", - "description": "Roll back the previously Aborted or Failed NodePool upgrade.\nThis will be an no-op if the last upgrade successfully completed.", - "request": { - "$ref": "RollbackNodePoolUpgradeRequest" - } - }, - "create": { - "description": "Creates a node pool for a cluster.", - "request": { - "$ref": "CreateNodePoolRequest" - }, - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "projectId", - "zone", - "clusterId" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "projectId": { - "description": "The Google Developers Console [project ID or project\nnumber](https://developers.google.com/console/help/new/#projectnumber).\nThis field is deprecated, use parent instead.", - "required": true, - "type": "string", - "location": "path" - }, - "zone": { - "location": "path", - "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field is deprecated, use parent instead.", - "required": true, - "type": "string" - }, - "clusterId": { - "location": "path", - "description": "The name of the cluster.\nThis field is deprecated, use parent instead.", - "required": true, - "type": "string" - } - }, - "flatPath": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/nodePools", - "path": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/nodePools", - "id": "container.projects.zones.clusters.nodePools.create" - }, - "autoscaling": { - "request": { - "$ref": "SetNodePoolAutoscalingRequest" - }, - "description": "Sets the autoscaling settings of a specific node pool.", - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "projectId", - "zone", - "clusterId", - "nodePoolId" - ], - "httpMethod": "POST", - "parameters": { - "projectId": { - "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field is deprecated, use name instead.", - "required": true, - "type": "string", - "location": "path" - }, - "zone": { - "location": "path", - "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field is deprecated, use name instead.", - "required": true, - "type": "string" - }, - "clusterId": { - "description": "The name of the cluster to upgrade.\nThis field is deprecated, use name instead.", - "required": true, - "type": "string", - "location": "path" - }, - "nodePoolId": { - "description": "The name of the node pool to upgrade.\nThis field is deprecated, use name instead.", - "required": true, - "type": "string", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/nodePools/{nodePoolId}/autoscaling", - "path": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/nodePools/{nodePoolId}/autoscaling", - "id": "container.projects.zones.clusters.nodePools.autoscaling" - } - } - } - } - }, - "operations": { - "methods": { - "cancel": { - "request": { - "$ref": "CancelOperationRequest" - }, - "description": "Cancels the specified operation.", - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "projectId", - "zone", - "operationId" - ], - "httpMethod": "POST", - "parameters": { - "operationId": { - "description": "The server-assigned `name` of the operation.\nThis field is deprecated, use name instead.", - "required": true, - "type": "string", - "location": "path" - }, - "projectId": { - "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field is deprecated, use name instead.", - "required": true, - "type": "string", - "location": "path" - }, - "zone": { - "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the operation resides.\nThis field is deprecated, use name instead.", - "required": true, - "type": "string", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta1/projects/{projectId}/zones/{zone}/operations/{operationId}:cancel", - "path": "v1beta1/projects/{projectId}/zones/{zone}/operations/{operationId}:cancel", - "id": "container.projects.zones.operations.cancel" - }, - "list": { - "description": "Lists all operations in a project in a specific zone or all zones.", - "response": { - "$ref": "ListOperationsResponse" - }, - "parameterOrder": [ - "projectId", - "zone" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "zone": { - "description": "The name of the Google Compute Engine [zone](/compute/docs/zones#available)\nto return operations for, or `-` for all zones.\nThis field is deprecated, use parent instead.", - "required": true, - "type": "string", - "location": "path" - }, - "parent": { - "description": "The parent (project and location) where the operations will be listed.\nSpecified in the format 'projects/*/locations/*'.\nLocation \"-\" matches all zones and all regions.", - "type": "string", - "location": "query" - }, - "projectId": { - "location": "path", - "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field is deprecated, use parent instead.", - "required": true, - "type": "string" - } - }, - "flatPath": "v1beta1/projects/{projectId}/zones/{zone}/operations", - "path": "v1beta1/projects/{projectId}/zones/{zone}/operations", - "id": "container.projects.zones.operations.list" - }, - "get": { - "flatPath": "v1beta1/projects/{projectId}/zones/{zone}/operations/{operationId}", - "path": "v1beta1/projects/{projectId}/zones/{zone}/operations/{operationId}", - "id": "container.projects.zones.operations.get", - "description": "Gets the specified operation.", - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "projectId", - "zone", - "operationId" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "name": { - "location": "query", - "description": "The name (project, location, operation id) of the operation to get.\nSpecified in the format 'projects/*/locations/*/operations/*'.", - "type": "string" - }, - "operationId": { - "location": "path", - "description": "The server-assigned `name` of the operation.\nThis field is deprecated, use name instead.", - "required": true, - "type": "string" - }, - "projectId": { - "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field is deprecated, use name instead.", - "required": true, - "type": "string", - "location": "path" - }, - "zone": { - "location": "path", - "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field is deprecated, use name instead.", - "required": true, - "type": "string" - } - } - } - } - } - } - }, - "locations": { - "resources": { - "operations": { - "methods": { - "list": { - "description": "Lists all operations in a project in a specific zone or all zones.", - "response": { - "$ref": "ListOperationsResponse" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "GET", - "parameters": { - "projectId": { - "location": "query", - "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field is deprecated, use parent instead.", - "type": "string" - }, - "zone": { - "location": "query", - "description": "The name of the Google Compute Engine [zone](/compute/docs/zones#available)\nto return operations for, or `-` for all zones.\nThis field is deprecated, use parent instead.", - "type": "string" - }, - "parent": { - "description": "The parent (project and location) where the operations will be listed.\nSpecified in the format 'projects/*/locations/*'.\nLocation \"-\" matches all zones and all regions.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/operations", - "path": "v1beta1/{+parent}/operations", - "id": "container.projects.locations.operations.list" - }, - "get": { - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/operations/{operationsId}", - "id": "container.projects.locations.operations.get", - "path": "v1beta1/{+name}", - "description": "Gets the specified operation.", - "httpMethod": "GET", + "id": "container.projects.locations.clusters.completeIpRotation", "parameterOrder": [ "name" ], - "response": { - "$ref": "Operation" - }, - "parameters": { - "name": { - "pattern": "^projects/[^/]+/locations/[^/]+/operations/[^/]+$", - "location": "path", - "description": "The name (project, location, operation id) of the operation to get.\nSpecified in the format 'projects/*/locations/*/operations/*'.", - "required": true, - "type": "string" - }, - "operationId": { - "location": "query", - "description": "The server-assigned `name` of the operation.\nThis field is deprecated, use name instead.", - "type": "string" - }, - "projectId": { - "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field is deprecated, use name instead.", - "type": "string", - "location": "query" - }, - "zone": { - "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field is deprecated, use name instead.", - "type": "string", - "location": "query" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "cancel": { - "path": "v1beta1/{+name}:cancel", - "id": "container.projects.locations.operations.cancel", - "description": "Cancels the specified operation.", - "request": { - "$ref": "CancelOperationRequest" - }, - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "name": { - "location": "path", - "description": "The name (project, location, operation id) of the operation to cancel.\nSpecified in the format 'projects/*/locations/*/operations/*'.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+/operations/[^/]+$" - } - }, - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/operations/{operationsId}:cancel" - } - } - }, - "clusters": { - "methods": { - "create": { - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "parent": { - "pattern": "^projects/[^/]+/locations/[^/]+$", - "location": "path", - "description": "The parent (project and location) where the cluster will be created.\nSpecified in the format 'projects/*/locations/*'.", - "required": true, - "type": "string" - } - }, - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/clusters", - "path": "v1beta1/{+parent}/clusters", - "id": "container.projects.locations.clusters.create", - "description": "Creates a cluster, consisting of the specified number and type of Google\nCompute Engine instances.\n\nBy default, the cluster is created in the project's\n[default network](/compute/docs/networks-and-firewalls#networks).\n\nOne firewall is added for the cluster. After cluster creation,\nthe cluster creates routes for each node to allow the containers\non that node to communicate with all other instances in the\ncluster.\n\nFinally, an entry is added to the project's global metadata indicating\nwhich CIDR range is being used by the cluster.", - "request": { - "$ref": "CreateClusterRequest" - } - }, - "completeIpRotation": { - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], "parameters": { "name": { "description": "The name (project, location, cluster id) of the cluster to complete IP rotation.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", - "required": true, - "type": "string", + "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+$", - "location": "path" + "required": true, + "type": "string" } }, - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}:completeIpRotation", "path": "v1beta1/{+name}:completeIpRotation", - "id": "container.projects.locations.clusters.completeIpRotation", - "description": "Completes master IP rotation.", "request": { "$ref": "CompleteIPRotationRequest" - } - }, - "setNetworkPolicy": { - "id": "container.projects.locations.clusters.setNetworkPolicy", - "path": "v1beta1/{+name}:setNetworkPolicy", - "request": { - "$ref": "SetNetworkPolicyRequest" }, - "description": "Enables/Disables Network Policy for a cluster.", - "httpMethod": "POST", - "parameterOrder": [ - "name" - ], "response": { "$ref": "Operation" }, - "parameters": { - "name": { - "location": "path", - "description": "The name (project, location, cluster id) of the cluster to set networking policy.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+$" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}:setNetworkPolicy" - }, - "get": { - "id": "container.projects.locations.clusters.get", - "path": "v1beta1/{+name}", - "description": "Gets the details of a specific cluster.", - "httpMethod": "GET", - "parameterOrder": [ - "name" - ], - "response": { - "$ref": "Cluster" - }, - "parameters": { - "name": { - "location": "path", - "description": "The name (project, location, cluster) of the cluster to retrieve.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+$" - }, - "projectId": { - "location": "query", - "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field is deprecated, use name instead.", - "type": "string" - }, - "zone": { - "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field is deprecated, use name instead.", - "type": "string", - "location": "query" - }, - "clusterId": { - "description": "The name of the cluster to retrieve.\nThis field is deprecated, use name instead.", - "type": "string", - "location": "query" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}" - }, - "setAddons": { - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}:setAddons", - "path": "v1beta1/{+name}:setAddons", - "id": "container.projects.locations.clusters.setAddons", - "request": { - "$ref": "SetAddonsConfigRequest" - }, - "description": "Sets the addons of a specific cluster.", - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "POST", - "parameters": { - "name": { - "description": "The name (project, location, cluster) of the cluster to set addons.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+$", - "location": "path" - } - }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ] }, - "startIpRotation": { + "create": { + "description": "Creates a cluster, consisting of the specified number and type of Google\nCompute Engine instances.\n\nBy default, the cluster is created in the project's\n[default network](/compute/docs/networks-and-firewalls#networks).\n\nOne firewall is added for the cluster. After cluster creation,\nthe cluster creates routes for each node to allow the containers\non that node to communicate with all other instances in the\ncluster.\n\nFinally, an entry is added to the project's global metadata indicating\nwhich CIDR range is being used by the cluster.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/clusters", "httpMethod": "POST", + "id": "container.projects.locations.clusters.create", "parameterOrder": [ - "name" + "parent" ], - "response": { - "$ref": "Operation" - }, "parameters": { - "name": { + "parent": { + "description": "The parent (project and location) where the cluster will be created.\nSpecified in the format 'projects/*/locations/*'.", "location": "path", - "description": "The name (project, location, cluster id) of the cluster to start IP rotation.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", + "pattern": "^projects/[^/]+/locations/[^/]+$", "required": true, - "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+$" + "type": "string" } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}:startIpRotation", - "id": "container.projects.locations.clusters.startIpRotation", - "path": "v1beta1/{+name}:startIpRotation", + "path": "v1beta1/{+parent}/clusters", "request": { - "$ref": "StartIPRotationRequest" + "$ref": "CreateClusterRequest" }, - "description": "Start master IP rotation." - }, - "setMonitoring": { "response": { "$ref": "Operation" }, - "parameterOrder": [ - "name" - ], - "httpMethod": "POST", - "parameters": { - "name": { - "description": "The name (project, location, cluster) of the cluster to set monitoring.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+$", - "location": "path" - } - }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}:setMonitoring", - "path": "v1beta1/{+name}:setMonitoring", - "id": "container.projects.locations.clusters.setMonitoring", - "request": { - "$ref": "SetMonitoringServiceRequest" - }, - "description": "Sets the monitoring service of a specific cluster." - }, - "setMaintenancePolicy": { - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "name": { - "location": "path", - "description": "The name (project, location, cluster id) of the cluster to set maintenance\npolicy.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+$" - } - }, - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}:setMaintenancePolicy", - "path": "v1beta1/{+name}:setMaintenancePolicy", - "id": "container.projects.locations.clusters.setMaintenancePolicy", - "description": "Sets the maintenance policy for a cluster.", - "request": { - "$ref": "SetMaintenancePolicyRequest" - } + ] }, "delete": { - "response": { - "$ref": "Operation" - }, + "description": "Deletes the cluster, including the Kubernetes endpoint and all worker\nnodes.\n\nFirewalls and routes that were configured during cluster creation\nare also deleted.\n\nOther Google Compute Engine resources that might be in use by the cluster\n(e.g. load balancer resources) will not be deleted if they weren't present\nat the initial create time.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}", + "httpMethod": "DELETE", + "id": "container.projects.locations.clusters.delete", "parameterOrder": [ "name" ], - "httpMethod": "DELETE", "parameters": { - "projectId": { + "clusterId": { + "description": "Deprecated. The name of the cluster to delete.\nThis field has been deprecated and replaced by the name field.", + "location": "query", + "type": "string" + }, + "name": { + "description": "The name (project, location, cluster) of the cluster to delete.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+$", + "required": true, + "type": "string" + }, + "projectId": { + "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field has been deprecated and replaced by the name field.", "location": "query", - "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field is deprecated, use name instead.", "type": "string" }, "zone": { + "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the name field.", + "location": "query", + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Gets the details of a specific cluster.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}", + "httpMethod": "GET", + "id": "container.projects.locations.clusters.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "clusterId": { + "description": "Deprecated. The name of the cluster to retrieve.\nThis field has been deprecated and replaced by the name field.", "location": "query", - "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field is deprecated, use name instead.", "type": "string" }, - "clusterId": { - "description": "The name of the cluster to delete.\nThis field is deprecated, use name instead.", - "type": "string", - "location": "query" - }, "name": { + "description": "The name (project, location, cluster) of the cluster to retrieve.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", "location": "path", - "description": "The name (project, location, cluster) of the cluster to delete.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", + "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+$", "required": true, - "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+$" + "type": "string" + }, + "projectId": { + "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field has been deprecated and replaced by the name field.", + "location": "query", + "type": "string" + }, + "zone": { + "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the name field.", + "location": "query", + "type": "string" } }, + "path": "v1beta1/{+name}", + "response": { + "$ref": "Cluster" + }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}", - "path": "v1beta1/{+name}", - "id": "container.projects.locations.clusters.delete", - "description": "Deletes the cluster, including the Kubernetes endpoint and all worker\nnodes.\n\nFirewalls and routes that were configured during cluster creation\nare also deleted.\n\nOther Google Compute Engine resources that might be in use by the cluster\n(e.g. load balancer resources) will not be deleted if they weren't present\nat the initial create time." + ] }, - "setResourceLabels": { + "list": { + "description": "Lists all clusters owned by a project in either the specified zone or all\nzones.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/clusters", + "httpMethod": "GET", + "id": "container.projects.locations.clusters.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "The parent (project and location) where the clusters will be listed.\nSpecified in the format 'projects/*/locations/*'.\nLocation \"-\" matches all zones and all regions.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + }, + "projectId": { + "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field has been deprecated and replaced by the parent field.", + "location": "query", + "type": "string" + }, + "zone": { + "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides, or \"-\" for all zones.\nThis field has been deprecated and replaced by the parent field.", + "location": "query", + "type": "string" + } + }, + "path": "v1beta1/{+parent}/clusters", + "response": { + "$ref": "ListClustersResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "setAddons": { + "description": "Sets the addons of a specific cluster.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}:setAddons", "httpMethod": "POST", + "id": "container.projects.locations.clusters.setAddons", "parameterOrder": [ "name" ], - "response": { - "$ref": "Operation" - }, "parameters": { "name": { - "description": "The name (project, location, cluster id) of the cluster to set labels.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", - "required": true, - "type": "string", + "description": "The name (project, location, cluster) of the cluster to set addons.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", + "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+$", - "location": "path" + "required": true, + "type": "string" } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}:setResourceLabels", - "id": "container.projects.locations.clusters.setResourceLabels", - "path": "v1beta1/{+name}:setResourceLabels", + "path": "v1beta1/{+name}:setAddons", "request": { - "$ref": "SetLabelsRequest" + "$ref": "SetAddonsConfigRequest" }, - "description": "Sets labels on a cluster." - }, - "setLegacyAbac": { "response": { "$ref": "Operation" }, - "parameterOrder": [ - "name" - ], - "httpMethod": "POST", "scopes": [ "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "setLegacyAbac": { + "description": "Enables or disables the ABAC authorization mechanism on a cluster.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}:setLegacyAbac", + "httpMethod": "POST", + "id": "container.projects.locations.clusters.setLegacyAbac", + "parameterOrder": [ + "name" ], "parameters": { "name": { "description": "The name (project, location, cluster id) of the cluster to set legacy abac.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+$", - "location": "path" - } - }, - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}:setLegacyAbac", - "path": "v1beta1/{+name}:setLegacyAbac", - "id": "container.projects.locations.clusters.setLegacyAbac", - "description": "Enables or disables the ABAC authorization mechanism on a cluster.", - "request": { - "$ref": "SetLegacyAbacRequest" - } - }, - "updateMaster": { - "request": { - "$ref": "UpdateMasterRequest" - }, - "description": "Updates the master of a specific cluster.", - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "POST", - "parameters": { - "name": { - "description": "The name (project, location, cluster) of the cluster to update.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}:updateMaster", - "path": "v1beta1/{+name}:updateMaster", - "id": "container.projects.locations.clusters.updateMaster" - }, - "setLocations": { - "request": { - "$ref": "SetLocationsRequest" - }, - "description": "Sets the locations of a specific cluster.", - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "POST", - "parameters": { - "name": { - "description": "The name (project, location, cluster) of the cluster to set locations.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}:setLocations", - "path": "v1beta1/{+name}:setLocations", - "id": "container.projects.locations.clusters.setLocations" - }, - "update": { - "request": { - "$ref": "UpdateClusterRequest" - }, - "description": "Updates the settings of a specific cluster.", - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "PUT", - "parameters": { - "name": { "location": "path", - "description": "The name (project, location, cluster) of the cluster to update.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+$" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}", - "path": "v1beta1/{+name}", - "id": "container.projects.locations.clusters.update" - }, - "setMasterAuth": { - "path": "v1beta1/{+name}:setMasterAuth", - "id": "container.projects.locations.clusters.setMasterAuth", - "request": { - "$ref": "SetMasterAuthRequest" - }, - "description": "Used to set master auth materials. Currently supports :-\nChanging the admin password of a specific cluster.\nThis can be either via password generation or explicitly set.\nModify basic_auth.csv and reset the K8S API server.", - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "POST", - "parameters": { - "name": { "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+$", - "location": "path", - "description": "The name (project, location, cluster) of the cluster to set auth.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", "required": true, "type": "string" } }, + "path": "v1beta1/{+name}:setLegacyAbac", + "request": { + "$ref": "SetLegacyAbacRequest" + }, + "response": { + "$ref": "Operation" + }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "setLocations": { + "description": "Sets the locations of a specific cluster.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}:setLocations", + "httpMethod": "POST", + "id": "container.projects.locations.clusters.setLocations", + "parameterOrder": [ + "name" ], - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}:setMasterAuth" + "parameters": { + "name": { + "description": "The name (project, location, cluster) of the cluster to set locations.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}:setLocations", + "request": { + "$ref": "SetLocationsRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] }, "setLogging": { - "path": "v1beta1/{+name}:setLogging", - "id": "container.projects.locations.clusters.setLogging", "description": "Sets the logging service of a specific cluster.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}:setLogging", + "httpMethod": "POST", + "id": "container.projects.locations.clusters.setLogging", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name (project, location, cluster) of the cluster to set logging.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}:setLogging", "request": { "$ref": "SetLoggingServiceRequest" }, "response": { "$ref": "Operation" }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "setMaintenancePolicy": { + "description": "Sets the maintenance policy for a cluster.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}:setMaintenancePolicy", + "httpMethod": "POST", + "id": "container.projects.locations.clusters.setMaintenancePolicy", "parameterOrder": [ "name" ], - "httpMethod": "POST", + "parameters": { + "name": { + "description": "The name (project, location, cluster id) of the cluster to set maintenance\npolicy.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}:setMaintenancePolicy", + "request": { + "$ref": "SetMaintenancePolicyRequest" + }, + "response": { + "$ref": "Operation" + }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "setMasterAuth": { + "description": "Used to set master auth materials. Currently supports :-\nChanging the admin password of a specific cluster.\nThis can be either via password generation or explicitly set.\nModify basic_auth.csv and reset the K8S API server.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}:setMasterAuth", + "httpMethod": "POST", + "id": "container.projects.locations.clusters.setMasterAuth", + "parameterOrder": [ + "name" ], "parameters": { "name": { - "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+$", + "description": "The name (project, location, cluster) of the cluster to set auth.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", "location": "path", - "description": "The name (project, location, cluster) of the cluster to set logging.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", + "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+$", "required": true, "type": "string" } }, - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}:setLogging" - }, - "list": { - "httpMethod": "GET", + "path": "v1beta1/{+name}:setMasterAuth", + "request": { + "$ref": "SetMasterAuthRequest" + }, "response": { - "$ref": "ListClustersResponse" - }, - "parameterOrder": [ - "parent" - ], - "parameters": { - "zone": { - "location": "query", - "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides, or \"-\" for all zones.\nThis field is deprecated, use parent instead.", - "type": "string" - }, - "parent": { - "description": "The parent (project and location) where the clusters will be listed.\nSpecified in the format 'projects/*/locations/*'.\nLocation \"-\" matches all zones and all regions.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+$", - "location": "path" - }, - "projectId": { - "location": "query", - "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field is deprecated, use parent instead.", - "type": "string" - } + "$ref": "Operation" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "setMonitoring": { + "description": "Sets the monitoring service of a specific cluster.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}:setMonitoring", + "httpMethod": "POST", + "id": "container.projects.locations.clusters.setMonitoring", + "parameterOrder": [ + "name" ], - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/clusters", - "id": "container.projects.locations.clusters.list", - "path": "v1beta1/{+parent}/clusters", - "description": "Lists all clusters owned by a project in either the specified zone or all\nzones." + "parameters": { + "name": { + "description": "The name (project, location, cluster) of the cluster to set monitoring.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}:setMonitoring", + "request": { + "$ref": "SetMonitoringServiceRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "setNetworkPolicy": { + "description": "Enables/Disables Network Policy for a cluster.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}:setNetworkPolicy", + "httpMethod": "POST", + "id": "container.projects.locations.clusters.setNetworkPolicy", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name (project, location, cluster id) of the cluster to set networking policy.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}:setNetworkPolicy", + "request": { + "$ref": "SetNetworkPolicyRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "setResourceLabels": { + "description": "Sets labels on a cluster.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}:setResourceLabels", + "httpMethod": "POST", + "id": "container.projects.locations.clusters.setResourceLabels", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name (project, location, cluster id) of the cluster to set labels.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}:setResourceLabels", + "request": { + "$ref": "SetLabelsRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "startIpRotation": { + "description": "Start master IP rotation.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}:startIpRotation", + "httpMethod": "POST", + "id": "container.projects.locations.clusters.startIpRotation", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name (project, location, cluster id) of the cluster to start IP rotation.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}:startIpRotation", + "request": { + "$ref": "StartIPRotationRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "update": { + "description": "Updates the settings of a specific cluster.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}", + "httpMethod": "PUT", + "id": "container.projects.locations.clusters.update", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name (project, location, cluster) of the cluster to update.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "request": { + "$ref": "UpdateClusterRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "updateMaster": { + "description": "Updates the master of a specific cluster.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}:updateMaster", + "httpMethod": "POST", + "id": "container.projects.locations.clusters.updateMaster", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name (project, location, cluster) of the cluster to update.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}:updateMaster", + "request": { + "$ref": "UpdateMasterRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] } }, "resources": { "nodePools": { "methods": { - "delete": { - "description": "Deletes a node pool from a cluster.", - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "DELETE", - "parameters": { - "projectId": { - "description": "The Google Developers Console [project ID or project\nnumber](https://developers.google.com/console/help/new/#projectnumber).\nThis field is deprecated, use name instead.", - "type": "string", - "location": "query" - }, - "zone": { - "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field is deprecated, use name instead.", - "type": "string", - "location": "query" - }, - "clusterId": { - "location": "query", - "description": "The name of the cluster.\nThis field is deprecated, use name instead.", - "type": "string" - }, - "nodePoolId": { - "description": "The name of the node pool to delete.\nThis field is deprecated, use name instead.", - "type": "string", - "location": "query" - }, - "name": { - "description": "The name (project, location, cluster, node pool id) of the node pool to delete.\nSpecified in the format 'projects/*/locations/*/clusters/*/nodePools/*'.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+/nodePools/[^/]+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}/nodePools/{nodePoolsId}", - "path": "v1beta1/{+name}", - "id": "container.projects.locations.clusters.nodePools.delete" - }, - "setManagement": { - "path": "v1beta1/{+name}:setManagement", - "id": "container.projects.locations.clusters.nodePools.setManagement", - "request": { - "$ref": "SetNodePoolManagementRequest" - }, - "description": "Sets the NodeManagement options for a node pool.", - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "name" - ], + "create": { + "description": "Creates a node pool for a cluster.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}/nodePools", "httpMethod": "POST", - "parameters": { - "name": { - "location": "path", - "description": "The name (project, location, cluster, node pool id) of the node pool to set\nmanagement properties. Specified in the format\n'projects/*/locations/*/clusters/*/nodePools/*'.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+/nodePools/[^/]+$" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}/nodePools/{nodePoolsId}:setManagement" - }, - "setSize": { - "httpMethod": "POST", - "parameterOrder": [ - "name" - ], - "response": { - "$ref": "Operation" - }, - "parameters": { - "name": { - "description": "The name (project, location, cluster, node pool id) of the node pool to set\nsize.\nSpecified in the format 'projects/*/locations/*/clusters/*/nodePools/*'.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+/nodePools/[^/]+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}/nodePools/{nodePoolsId}:setSize", - "id": "container.projects.locations.clusters.nodePools.setSize", - "path": "v1beta1/{+name}:setSize", - "request": { - "$ref": "SetNodePoolSizeRequest" - }, - "description": "Sets the size of a specific node pool." - }, - "list": { - "path": "v1beta1/{+parent}/nodePools", - "id": "container.projects.locations.clusters.nodePools.list", - "description": "Lists the node pools for a cluster.", - "response": { - "$ref": "ListNodePoolsResponse" - }, + "id": "container.projects.locations.clusters.nodePools.create", "parameterOrder": [ "parent" ], - "httpMethod": "GET", "parameters": { - "zone": { - "location": "query", - "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field is deprecated, use parent instead.", - "type": "string" - }, "parent": { - "description": "The parent (project, location, cluster id) where the node pools will be listed.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+$", - "location": "path" - }, - "clusterId": { - "location": "query", - "description": "The name of the cluster.\nThis field is deprecated, use parent instead.", - "type": "string" - }, - "projectId": { - "location": "query", - "description": "The Google Developers Console [project ID or project\nnumber](https://developers.google.com/console/help/new/#projectnumber).\nThis field is deprecated, use parent instead.", - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}/nodePools" - }, - "rollback": { - "httpMethod": "POST", - "parameterOrder": [ - "name" - ], - "response": { - "$ref": "Operation" - }, - "parameters": { - "name": { + "description": "The parent (project, location, cluster id) where the node pool will be created.\nSpecified in the format 'projects/*/locations/*/clusters/*/nodePools/*'.", "location": "path", - "description": "The name (project, location, cluster, node pool id) of the node poll to\nrollback upgrade.\nSpecified in the format 'projects/*/locations/*/clusters/*/nodePools/*'.", + "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+$", "required": true, - "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+/nodePools/[^/]+$" + "type": "string" } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}/nodePools/{nodePoolsId}:rollback", - "id": "container.projects.locations.clusters.nodePools.rollback", - "path": "v1beta1/{+name}:rollback", - "request": { - "$ref": "RollbackNodePoolUpgradeRequest" - }, - "description": "Roll back the previously Aborted or Failed NodePool upgrade.\nThis will be an no-op if the last upgrade successfully completed." - }, - "create": { - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}/nodePools", - "id": "container.projects.locations.clusters.nodePools.create", "path": "v1beta1/{+parent}/nodePools", "request": { "$ref": "CreateNodePoolRequest" }, - "description": "Creates a node pool for a cluster.", - "httpMethod": "POST", - "parameterOrder": [ - "parent" - ], "response": { "$ref": "Operation" }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Deletes a node pool from a cluster.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}/nodePools/{nodePoolsId}", + "httpMethod": "DELETE", + "id": "container.projects.locations.clusters.nodePools.delete", + "parameterOrder": [ + "name" + ], "parameters": { - "parent": { - "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+$", + "clusterId": { + "description": "Deprecated. The name of the cluster.\nThis field has been deprecated and replaced by the name field.", + "location": "query", + "type": "string" + }, + "name": { + "description": "The name (project, location, cluster, node pool id) of the node pool to delete.\nSpecified in the format 'projects/*/locations/*/clusters/*/nodePools/*'.", "location": "path", - "description": "The parent (project, location, cluster id) where the node pool will be created.\nSpecified in the format 'projects/*/locations/*/clusters/*/nodePools/*'.", + "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+/nodePools/[^/]+$", "required": true, "type": "string" + }, + "nodePoolId": { + "description": "Deprecated. The name of the node pool to delete.\nThis field has been deprecated and replaced by the name field.", + "location": "query", + "type": "string" + }, + "projectId": { + "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://developers.google.com/console/help/new/#projectnumber).\nThis field has been deprecated and replaced by the name field.", + "location": "query", + "type": "string" + }, + "zone": { + "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the name field.", + "location": "query", + "type": "string" } }, + "path": "v1beta1/{+name}", + "response": { + "$ref": "Operation" + }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ] }, "get": { "description": "Retrieves the node pool requested.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}/nodePools/{nodePoolsId}", "httpMethod": "GET", + "id": "container.projects.locations.clusters.nodePools.get", "parameterOrder": [ "name" ], - "response": { - "$ref": "NodePool" - }, "parameters": { - "nodePoolId": { + "clusterId": { + "description": "Deprecated. The name of the cluster.\nThis field has been deprecated and replaced by the name field.", "location": "query", - "description": "The name of the node pool.\nThis field is deprecated, use name instead.", "type": "string" }, "name": { "description": "The name (project, location, cluster, node pool id) of the node pool to get.\nSpecified in the format 'projects/*/locations/*/clusters/*/nodePools/*'.", - "required": true, - "type": "string", + "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+/nodePools/[^/]+$", - "location": "path" - }, - "projectId": { - "description": "The Google Developers Console [project ID or project\nnumber](https://developers.google.com/console/help/new/#projectnumber).\nThis field is deprecated, use name instead.", - "type": "string", - "location": "query" - }, - "zone": { - "location": "query", - "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field is deprecated, use name instead.", + "required": true, "type": "string" }, - "clusterId": { - "description": "The name of the cluster.\nThis field is deprecated, use name instead.", - "type": "string", - "location": "query" + "nodePoolId": { + "description": "Deprecated. The name of the node pool.\nThis field has been deprecated and replaced by the name field.", + "location": "query", + "type": "string" + }, + "projectId": { + "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://developers.google.com/console/help/new/#projectnumber).\nThis field has been deprecated and replaced by the name field.", + "location": "query", + "type": "string" + }, + "zone": { + "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the name field.", + "location": "query", + "type": "string" } }, + "path": "v1beta1/{+name}", + "response": { + "$ref": "NodePool" + }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}/nodePools/{nodePoolsId}", - "id": "container.projects.locations.clusters.nodePools.get", - "path": "v1beta1/{+name}" + ] }, - "update": { - "response": { - "$ref": "Operation" + "list": { + "description": "Lists the node pools for a cluster.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}/nodePools", + "httpMethod": "GET", + "id": "container.projects.locations.clusters.nodePools.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "clusterId": { + "description": "Deprecated. The name of the cluster.\nThis field has been deprecated and replaced by the parent field.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "The parent (project, location, cluster id) where the node pools will be listed.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+$", + "required": true, + "type": "string" + }, + "projectId": { + "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://developers.google.com/console/help/new/#projectnumber).\nThis field has been deprecated and replaced by the parent field.", + "location": "query", + "type": "string" + }, + "zone": { + "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the parent field.", + "location": "query", + "type": "string" + } }, + "path": "v1beta1/{+parent}/nodePools", + "response": { + "$ref": "ListNodePoolsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "rollback": { + "description": "Roll back the previously Aborted or Failed NodePool upgrade.\nThis will be an no-op if the last upgrade successfully completed.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}/nodePools/{nodePoolsId}:rollback", + "httpMethod": "POST", + "id": "container.projects.locations.clusters.nodePools.rollback", "parameterOrder": [ "name" ], - "httpMethod": "PUT", + "parameters": { + "name": { + "description": "The name (project, location, cluster, node pool id) of the node poll to\nrollback upgrade.\nSpecified in the format 'projects/*/locations/*/clusters/*/nodePools/*'.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+/nodePools/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}:rollback", + "request": { + "$ref": "RollbackNodePoolUpgradeRequest" + }, + "response": { + "$ref": "Operation" + }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "setAutoscaling": { + "description": "Sets the autoscaling settings of a specific node pool.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}/nodePools/{nodePoolsId}:setAutoscaling", + "httpMethod": "POST", + "id": "container.projects.locations.clusters.nodePools.setAutoscaling", + "parameterOrder": [ + "name" ], "parameters": { "name": { + "description": "The name (project, location, cluster, node pool) of the node pool to set\nautoscaler settings. Specified in the format\n'projects/*/locations/*/clusters/*/nodePools/*'.", "location": "path", - "description": "The name (project, location, cluster, node pool) of the node pool to update.\nSpecified in the format 'projects/*/locations/*/clusters/*/nodePools/*'.", + "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+/nodePools/[^/]+$", "required": true, - "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+/nodePools/[^/]+$" + "type": "string" } }, - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}/nodePools/{nodePoolsId}", - "path": "v1beta1/{+name}", - "id": "container.projects.locations.clusters.nodePools.update", - "description": "Updates the version and/or iamge type of a specific node pool.", - "request": { - "$ref": "UpdateNodePoolRequest" - } - }, - "setAutoscaling": { "path": "v1beta1/{+name}:setAutoscaling", - "id": "container.projects.locations.clusters.nodePools.setAutoscaling", "request": { "$ref": "SetNodePoolAutoscalingRequest" }, - "description": "Sets the autoscaling settings of a specific node pool.", "response": { "$ref": "Operation" }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "setManagement": { + "description": "Sets the NodeManagement options for a node pool.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}/nodePools/{nodePoolsId}:setManagement", + "httpMethod": "POST", + "id": "container.projects.locations.clusters.nodePools.setManagement", "parameterOrder": [ "name" ], - "httpMethod": "POST", "parameters": { "name": { + "description": "The name (project, location, cluster, node pool id) of the node pool to set\nmanagement properties. Specified in the format\n'projects/*/locations/*/clusters/*/nodePools/*'.", "location": "path", - "description": "The name (project, location, cluster, node pool) of the node pool to set\nautoscaler settings. Specified in the format\n'projects/*/locations/*/clusters/*/nodePools/*'.", + "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+/nodePools/[^/]+$", "required": true, - "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+/nodePools/[^/]+$" + "type": "string" } }, + "path": "v1beta1/{+name}:setManagement", + "request": { + "$ref": "SetNodePoolManagementRequest" + }, + "response": { + "$ref": "Operation" + }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "setSize": { + "description": "Sets the size of a specific node pool.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}/nodePools/{nodePoolsId}:setSize", + "httpMethod": "POST", + "id": "container.projects.locations.clusters.nodePools.setSize", + "parameterOrder": [ + "name" ], - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}/nodePools/{nodePoolsId}:setAutoscaling" + "parameters": { + "name": { + "description": "The name (project, location, cluster, node pool id) of the node pool to set\nsize.\nSpecified in the format 'projects/*/locations/*/clusters/*/nodePools/*'.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+/nodePools/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}:setSize", + "request": { + "$ref": "SetNodePoolSizeRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "update": { + "description": "Updates the version and/or image type of a specific node pool.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}/nodePools/{nodePoolsId}", + "httpMethod": "PUT", + "id": "container.projects.locations.clusters.nodePools.update", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name (project, location, cluster, node pool) of the node pool to update.\nSpecified in the format 'projects/*/locations/*/clusters/*/nodePools/*'.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+/nodePools/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "request": { + "$ref": "UpdateNodePoolRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] } } } } + }, + "operations": { + "methods": { + "cancel": { + "description": "Cancels the specified operation.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/operations/{operationsId}:cancel", + "httpMethod": "POST", + "id": "container.projects.locations.operations.cancel", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name (project, location, operation id) of the operation to cancel.\nSpecified in the format 'projects/*/locations/*/operations/*'.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}:cancel", + "request": { + "$ref": "CancelOperationRequest" + }, + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Gets the specified operation.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/operations/{operationsId}", + "httpMethod": "GET", + "id": "container.projects.locations.operations.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name (project, location, operation id) of the operation to get.\nSpecified in the format 'projects/*/locations/*/operations/*'.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + }, + "operationId": { + "description": "Deprecated. The server-assigned `name` of the operation.\nThis field has been deprecated and replaced by the name field.", + "location": "query", + "type": "string" + }, + "projectId": { + "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field has been deprecated and replaced by the name field.", + "location": "query", + "type": "string" + }, + "zone": { + "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the name field.", + "location": "query", + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists all operations in a project in a specific zone or all zones.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/operations", + "httpMethod": "GET", + "id": "container.projects.locations.operations.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "The parent (project and location) where the operations will be listed.\nSpecified in the format 'projects/*/locations/*'.\nLocation \"-\" matches all zones and all regions.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + }, + "projectId": { + "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field has been deprecated and replaced by the parent field.", + "location": "query", + "type": "string" + }, + "zone": { + "description": "Deprecated. The name of the Google Compute Engine [zone](/compute/docs/zones#available)\nto return operations for, or `-` for all zones.\nThis field has been deprecated and replaced by the parent field.", + "location": "query", + "type": "string" + } + }, + "path": "v1beta1/{+parent}/operations", + "response": { + "$ref": "ListOperationsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } } - }, + } + }, + "zones": { "methods": { - "getServerConfig": { - "response": { - "$ref": "ServerConfig" - }, - "parameterOrder": [ - "name" - ], + "getServerconfig": { + "description": "Returns configuration info about the Kubernetes Engine service.", + "flatPath": "v1beta1/projects/{projectId}/zones/{zone}/serverconfig", "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "id": "container.projects.zones.getServerconfig", + "parameterOrder": [ + "projectId", + "zone" ], "parameters": { - "zone": { - "description": "The name of the Google Compute Engine [zone](/compute/docs/zones#available)\nto return operations for.\nThis field is deprecated, use name instead.", - "type": "string", - "location": "query" - }, "name": { "description": "The name (project and location) of the server config to get\nSpecified in the format 'projects/*/locations/*'.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+$", - "location": "path" + "location": "query", + "type": "string" }, "projectId": { - "location": "query", - "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field is deprecated, use name instead.", + "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + }, + "zone": { + "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) to return operations for.\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, "type": "string" } }, - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/serverConfig", - "path": "v1beta1/{+name}/serverConfig", - "id": "container.projects.locations.getServerConfig", - "description": "Returns configuration info about the Kubernetes Engine service." + "path": "v1beta1/projects/{projectId}/zones/{zone}/serverconfig", + "response": { + "$ref": "ServerConfig" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + }, + "resources": { + "clusters": { + "methods": { + "addons": { + "description": "Sets the addons of a specific cluster.", + "flatPath": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/addons", + "httpMethod": "POST", + "id": "container.projects.zones.clusters.addons", + "parameterOrder": [ + "projectId", + "zone", + "clusterId" + ], + "parameters": { + "clusterId": { + "description": "Deprecated. The name of the cluster to upgrade.\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + }, + "projectId": { + "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + }, + "zone": { + "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/addons", + "request": { + "$ref": "SetAddonsConfigRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "completeIpRotation": { + "description": "Completes master IP rotation.", + "flatPath": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}:completeIpRotation", + "httpMethod": "POST", + "id": "container.projects.zones.clusters.completeIpRotation", + "parameterOrder": [ + "projectId", + "zone", + "clusterId" + ], + "parameters": { + "clusterId": { + "description": "Deprecated. The name of the cluster.\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + }, + "projectId": { + "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://developers.google.com/console/help/new/#projectnumber).\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + }, + "zone": { + "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}:completeIpRotation", + "request": { + "$ref": "CompleteIPRotationRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "create": { + "description": "Creates a cluster, consisting of the specified number and type of Google\nCompute Engine instances.\n\nBy default, the cluster is created in the project's\n[default network](/compute/docs/networks-and-firewalls#networks).\n\nOne firewall is added for the cluster. After cluster creation,\nthe cluster creates routes for each node to allow the containers\non that node to communicate with all other instances in the\ncluster.\n\nFinally, an entry is added to the project's global metadata indicating\nwhich CIDR range is being used by the cluster.", + "flatPath": "v1beta1/projects/{projectId}/zones/{zone}/clusters", + "httpMethod": "POST", + "id": "container.projects.zones.clusters.create", + "parameterOrder": [ + "projectId", + "zone" + ], + "parameters": { + "projectId": { + "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field has been deprecated and replaced by the parent field.", + "location": "path", + "required": true, + "type": "string" + }, + "zone": { + "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the parent field.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/projects/{projectId}/zones/{zone}/clusters", + "request": { + "$ref": "CreateClusterRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Deletes the cluster, including the Kubernetes endpoint and all worker\nnodes.\n\nFirewalls and routes that were configured during cluster creation\nare also deleted.\n\nOther Google Compute Engine resources that might be in use by the cluster\n(e.g. load balancer resources) will not be deleted if they weren't present\nat the initial create time.", + "flatPath": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}", + "httpMethod": "DELETE", + "id": "container.projects.zones.clusters.delete", + "parameterOrder": [ + "projectId", + "zone", + "clusterId" + ], + "parameters": { + "clusterId": { + "description": "Deprecated. The name of the cluster to delete.\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + }, + "name": { + "description": "The name (project, location, cluster) of the cluster to delete.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", + "location": "query", + "type": "string" + }, + "projectId": { + "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + }, + "zone": { + "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Gets the details of a specific cluster.", + "flatPath": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}", + "httpMethod": "GET", + "id": "container.projects.zones.clusters.get", + "parameterOrder": [ + "projectId", + "zone", + "clusterId" + ], + "parameters": { + "clusterId": { + "description": "Deprecated. The name of the cluster to retrieve.\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + }, + "name": { + "description": "The name (project, location, cluster) of the cluster to retrieve.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", + "location": "query", + "type": "string" + }, + "projectId": { + "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + }, + "zone": { + "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}", + "response": { + "$ref": "Cluster" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "legacyAbac": { + "description": "Enables or disables the ABAC authorization mechanism on a cluster.", + "flatPath": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/legacyAbac", + "httpMethod": "POST", + "id": "container.projects.zones.clusters.legacyAbac", + "parameterOrder": [ + "projectId", + "zone", + "clusterId" + ], + "parameters": { + "clusterId": { + "description": "Deprecated. The name of the cluster to update.\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + }, + "projectId": { + "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + }, + "zone": { + "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/legacyAbac", + "request": { + "$ref": "SetLegacyAbacRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists all clusters owned by a project in either the specified zone or all\nzones.", + "flatPath": "v1beta1/projects/{projectId}/zones/{zone}/clusters", + "httpMethod": "GET", + "id": "container.projects.zones.clusters.list", + "parameterOrder": [ + "projectId", + "zone" + ], + "parameters": { + "parent": { + "description": "The parent (project and location) where the clusters will be listed.\nSpecified in the format 'projects/*/locations/*'.\nLocation \"-\" matches all zones and all regions.", + "location": "query", + "type": "string" + }, + "projectId": { + "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field has been deprecated and replaced by the parent field.", + "location": "path", + "required": true, + "type": "string" + }, + "zone": { + "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides, or \"-\" for all zones.\nThis field has been deprecated and replaced by the parent field.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/projects/{projectId}/zones/{zone}/clusters", + "response": { + "$ref": "ListClustersResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "locations": { + "description": "Sets the locations of a specific cluster.", + "flatPath": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/locations", + "httpMethod": "POST", + "id": "container.projects.zones.clusters.locations", + "parameterOrder": [ + "projectId", + "zone", + "clusterId" + ], + "parameters": { + "clusterId": { + "description": "Deprecated. The name of the cluster to upgrade.\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + }, + "projectId": { + "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + }, + "zone": { + "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/locations", + "request": { + "$ref": "SetLocationsRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "logging": { + "description": "Sets the logging service of a specific cluster.", + "flatPath": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/logging", + "httpMethod": "POST", + "id": "container.projects.zones.clusters.logging", + "parameterOrder": [ + "projectId", + "zone", + "clusterId" + ], + "parameters": { + "clusterId": { + "description": "Deprecated. The name of the cluster to upgrade.\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + }, + "projectId": { + "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + }, + "zone": { + "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/logging", + "request": { + "$ref": "SetLoggingServiceRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "master": { + "description": "Updates the master of a specific cluster.", + "flatPath": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/master", + "httpMethod": "POST", + "id": "container.projects.zones.clusters.master", + "parameterOrder": [ + "projectId", + "zone", + "clusterId" + ], + "parameters": { + "clusterId": { + "description": "Deprecated. The name of the cluster to upgrade.\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + }, + "projectId": { + "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + }, + "zone": { + "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/master", + "request": { + "$ref": "UpdateMasterRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "monitoring": { + "description": "Sets the monitoring service of a specific cluster.", + "flatPath": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/monitoring", + "httpMethod": "POST", + "id": "container.projects.zones.clusters.monitoring", + "parameterOrder": [ + "projectId", + "zone", + "clusterId" + ], + "parameters": { + "clusterId": { + "description": "Deprecated. The name of the cluster to upgrade.\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + }, + "projectId": { + "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + }, + "zone": { + "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/monitoring", + "request": { + "$ref": "SetMonitoringServiceRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "resourceLabels": { + "description": "Sets labels on a cluster.", + "flatPath": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/resourceLabels", + "httpMethod": "POST", + "id": "container.projects.zones.clusters.resourceLabels", + "parameterOrder": [ + "projectId", + "zone", + "clusterId" + ], + "parameters": { + "clusterId": { + "description": "Deprecated. The name of the cluster.\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + }, + "projectId": { + "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://developers.google.com/console/help/new/#projectnumber).\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + }, + "zone": { + "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/resourceLabels", + "request": { + "$ref": "SetLabelsRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "setMaintenancePolicy": { + "description": "Sets the maintenance policy for a cluster.", + "flatPath": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}:setMaintenancePolicy", + "httpMethod": "POST", + "id": "container.projects.zones.clusters.setMaintenancePolicy", + "parameterOrder": [ + "projectId", + "zone", + "clusterId" + ], + "parameters": { + "clusterId": { + "description": "The name of the cluster to update.", + "location": "path", + "required": true, + "type": "string" + }, + "projectId": { + "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).", + "location": "path", + "required": true, + "type": "string" + }, + "zone": { + "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}:setMaintenancePolicy", + "request": { + "$ref": "SetMaintenancePolicyRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "setMasterAuth": { + "description": "Used to set master auth materials. Currently supports :-\nChanging the admin password of a specific cluster.\nThis can be either via password generation or explicitly set.\nModify basic_auth.csv and reset the K8S API server.", + "flatPath": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}:setMasterAuth", + "httpMethod": "POST", + "id": "container.projects.zones.clusters.setMasterAuth", + "parameterOrder": [ + "projectId", + "zone", + "clusterId" + ], + "parameters": { + "clusterId": { + "description": "Deprecated. The name of the cluster to upgrade.\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + }, + "projectId": { + "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + }, + "zone": { + "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}:setMasterAuth", + "request": { + "$ref": "SetMasterAuthRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "setNetworkPolicy": { + "description": "Enables/Disables Network Policy for a cluster.", + "flatPath": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}:setNetworkPolicy", + "httpMethod": "POST", + "id": "container.projects.zones.clusters.setNetworkPolicy", + "parameterOrder": [ + "projectId", + "zone", + "clusterId" + ], + "parameters": { + "clusterId": { + "description": "Deprecated. The name of the cluster.\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + }, + "projectId": { + "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://developers.google.com/console/help/new/#projectnumber).\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + }, + "zone": { + "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}:setNetworkPolicy", + "request": { + "$ref": "SetNetworkPolicyRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "startIpRotation": { + "description": "Start master IP rotation.", + "flatPath": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}:startIpRotation", + "httpMethod": "POST", + "id": "container.projects.zones.clusters.startIpRotation", + "parameterOrder": [ + "projectId", + "zone", + "clusterId" + ], + "parameters": { + "clusterId": { + "description": "Deprecated. The name of the cluster.\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + }, + "projectId": { + "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://developers.google.com/console/help/new/#projectnumber).\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + }, + "zone": { + "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}:startIpRotation", + "request": { + "$ref": "StartIPRotationRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "update": { + "description": "Updates the settings of a specific cluster.", + "flatPath": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}", + "httpMethod": "PUT", + "id": "container.projects.zones.clusters.update", + "parameterOrder": [ + "projectId", + "zone", + "clusterId" + ], + "parameters": { + "clusterId": { + "description": "Deprecated. The name of the cluster to upgrade.\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + }, + "projectId": { + "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + }, + "zone": { + "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}", + "request": { + "$ref": "UpdateClusterRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + }, + "resources": { + "nodePools": { + "methods": { + "autoscaling": { + "description": "Sets the autoscaling settings of a specific node pool.", + "flatPath": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/nodePools/{nodePoolId}/autoscaling", + "httpMethod": "POST", + "id": "container.projects.zones.clusters.nodePools.autoscaling", + "parameterOrder": [ + "projectId", + "zone", + "clusterId", + "nodePoolId" + ], + "parameters": { + "clusterId": { + "description": "Deprecated. The name of the cluster to upgrade.\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + }, + "nodePoolId": { + "description": "Deprecated. The name of the node pool to upgrade.\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + }, + "projectId": { + "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + }, + "zone": { + "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/nodePools/{nodePoolId}/autoscaling", + "request": { + "$ref": "SetNodePoolAutoscalingRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "create": { + "description": "Creates a node pool for a cluster.", + "flatPath": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/nodePools", + "httpMethod": "POST", + "id": "container.projects.zones.clusters.nodePools.create", + "parameterOrder": [ + "projectId", + "zone", + "clusterId" + ], + "parameters": { + "clusterId": { + "description": "Deprecated. The name of the cluster.\nThis field has been deprecated and replaced by the parent field.", + "location": "path", + "required": true, + "type": "string" + }, + "projectId": { + "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://developers.google.com/console/help/new/#projectnumber).\nThis field has been deprecated and replaced by the parent field.", + "location": "path", + "required": true, + "type": "string" + }, + "zone": { + "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the parent field.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/nodePools", + "request": { + "$ref": "CreateNodePoolRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Deletes a node pool from a cluster.", + "flatPath": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/nodePools/{nodePoolId}", + "httpMethod": "DELETE", + "id": "container.projects.zones.clusters.nodePools.delete", + "parameterOrder": [ + "projectId", + "zone", + "clusterId", + "nodePoolId" + ], + "parameters": { + "clusterId": { + "description": "Deprecated. The name of the cluster.\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + }, + "name": { + "description": "The name (project, location, cluster, node pool id) of the node pool to delete.\nSpecified in the format 'projects/*/locations/*/clusters/*/nodePools/*'.", + "location": "query", + "type": "string" + }, + "nodePoolId": { + "description": "Deprecated. The name of the node pool to delete.\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + }, + "projectId": { + "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://developers.google.com/console/help/new/#projectnumber).\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + }, + "zone": { + "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/nodePools/{nodePoolId}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Retrieves the node pool requested.", + "flatPath": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/nodePools/{nodePoolId}", + "httpMethod": "GET", + "id": "container.projects.zones.clusters.nodePools.get", + "parameterOrder": [ + "projectId", + "zone", + "clusterId", + "nodePoolId" + ], + "parameters": { + "clusterId": { + "description": "Deprecated. The name of the cluster.\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + }, + "name": { + "description": "The name (project, location, cluster, node pool id) of the node pool to get.\nSpecified in the format 'projects/*/locations/*/clusters/*/nodePools/*'.", + "location": "query", + "type": "string" + }, + "nodePoolId": { + "description": "Deprecated. The name of the node pool.\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + }, + "projectId": { + "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://developers.google.com/console/help/new/#projectnumber).\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + }, + "zone": { + "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/nodePools/{nodePoolId}", + "response": { + "$ref": "NodePool" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists the node pools for a cluster.", + "flatPath": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/nodePools", + "httpMethod": "GET", + "id": "container.projects.zones.clusters.nodePools.list", + "parameterOrder": [ + "projectId", + "zone", + "clusterId" + ], + "parameters": { + "clusterId": { + "description": "Deprecated. The name of the cluster.\nThis field has been deprecated and replaced by the parent field.", + "location": "path", + "required": true, + "type": "string" + }, + "parent": { + "description": "The parent (project, location, cluster id) where the node pools will be listed.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", + "location": "query", + "type": "string" + }, + "projectId": { + "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://developers.google.com/console/help/new/#projectnumber).\nThis field has been deprecated and replaced by the parent field.", + "location": "path", + "required": true, + "type": "string" + }, + "zone": { + "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the parent field.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/nodePools", + "response": { + "$ref": "ListNodePoolsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "rollback": { + "description": "Roll back the previously Aborted or Failed NodePool upgrade.\nThis will be an no-op if the last upgrade successfully completed.", + "flatPath": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/nodePools/{nodePoolId}:rollback", + "httpMethod": "POST", + "id": "container.projects.zones.clusters.nodePools.rollback", + "parameterOrder": [ + "projectId", + "zone", + "clusterId", + "nodePoolId" + ], + "parameters": { + "clusterId": { + "description": "Deprecated. The name of the cluster to rollback.\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + }, + "nodePoolId": { + "description": "Deprecated. The name of the node pool to rollback.\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + }, + "projectId": { + "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + }, + "zone": { + "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/nodePools/{nodePoolId}:rollback", + "request": { + "$ref": "RollbackNodePoolUpgradeRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "setManagement": { + "description": "Sets the NodeManagement options for a node pool.", + "flatPath": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/nodePools/{nodePoolId}/setManagement", + "httpMethod": "POST", + "id": "container.projects.zones.clusters.nodePools.setManagement", + "parameterOrder": [ + "projectId", + "zone", + "clusterId", + "nodePoolId" + ], + "parameters": { + "clusterId": { + "description": "Deprecated. The name of the cluster to update.\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + }, + "nodePoolId": { + "description": "Deprecated. The name of the node pool to update.\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + }, + "projectId": { + "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + }, + "zone": { + "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/nodePools/{nodePoolId}/setManagement", + "request": { + "$ref": "SetNodePoolManagementRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "setSize": { + "description": "Sets the size of a specific node pool.", + "flatPath": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/nodePools/{nodePoolId}/setSize", + "httpMethod": "POST", + "id": "container.projects.zones.clusters.nodePools.setSize", + "parameterOrder": [ + "projectId", + "zone", + "clusterId", + "nodePoolId" + ], + "parameters": { + "clusterId": { + "description": "Deprecated. The name of the cluster to update.\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + }, + "nodePoolId": { + "description": "Deprecated. The name of the node pool to update.\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + }, + "projectId": { + "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + }, + "zone": { + "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/nodePools/{nodePoolId}/setSize", + "request": { + "$ref": "SetNodePoolSizeRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "update": { + "description": "Updates the version and/or image type of a specific node pool.", + "flatPath": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/nodePools/{nodePoolId}/update", + "httpMethod": "POST", + "id": "container.projects.zones.clusters.nodePools.update", + "parameterOrder": [ + "projectId", + "zone", + "clusterId", + "nodePoolId" + ], + "parameters": { + "clusterId": { + "description": "Deprecated. The name of the cluster to upgrade.\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + }, + "nodePoolId": { + "description": "Deprecated. The name of the node pool to upgrade.\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + }, + "projectId": { + "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + }, + "zone": { + "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/nodePools/{nodePoolId}/update", + "request": { + "$ref": "UpdateNodePoolRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + } + } + }, + "operations": { + "methods": { + "cancel": { + "description": "Cancels the specified operation.", + "flatPath": "v1beta1/projects/{projectId}/zones/{zone}/operations/{operationId}:cancel", + "httpMethod": "POST", + "id": "container.projects.zones.operations.cancel", + "parameterOrder": [ + "projectId", + "zone", + "operationId" + ], + "parameters": { + "operationId": { + "description": "Deprecated. The server-assigned `name` of the operation.\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + }, + "projectId": { + "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + }, + "zone": { + "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the operation resides.\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/projects/{projectId}/zones/{zone}/operations/{operationId}:cancel", + "request": { + "$ref": "CancelOperationRequest" + }, + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Gets the specified operation.", + "flatPath": "v1beta1/projects/{projectId}/zones/{zone}/operations/{operationId}", + "httpMethod": "GET", + "id": "container.projects.zones.operations.get", + "parameterOrder": [ + "projectId", + "zone", + "operationId" + ], + "parameters": { + "name": { + "description": "The name (project, location, operation id) of the operation to get.\nSpecified in the format 'projects/*/locations/*/operations/*'.", + "location": "query", + "type": "string" + }, + "operationId": { + "description": "Deprecated. The server-assigned `name` of the operation.\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + }, + "projectId": { + "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + }, + "zone": { + "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the name field.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/projects/{projectId}/zones/{zone}/operations/{operationId}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists all operations in a project in a specific zone or all zones.", + "flatPath": "v1beta1/projects/{projectId}/zones/{zone}/operations", + "httpMethod": "GET", + "id": "container.projects.zones.operations.list", + "parameterOrder": [ + "projectId", + "zone" + ], + "parameters": { + "parent": { + "description": "The parent (project and location) where the operations will be listed.\nSpecified in the format 'projects/*/locations/*'.\nLocation \"-\" matches all zones and all regions.", + "location": "query", + "type": "string" + }, + "projectId": { + "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field has been deprecated and replaced by the parent field.", + "location": "path", + "required": true, + "type": "string" + }, + "zone": { + "description": "Deprecated. The name of the Google Compute Engine [zone](/compute/docs/zones#available)\nto return operations for, or `-` for all zones.\nThis field has been deprecated and replaced by the parent field.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/projects/{projectId}/zones/{zone}/operations", + "response": { + "$ref": "ListOperationsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } } } } } } }, - "parameters": { - "upload_protocol": { - "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", - "type": "string", - "location": "query" - }, - "prettyPrint": { - "location": "query", - "description": "Returns response with indentations and line breaks.", - "type": "boolean", - "default": "true" - }, - "uploadType": { - "location": "query", - "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", - "type": "string" - }, - "fields": { - "location": "query", - "description": "Selector specifying which fields to include in a partial response.", - "type": "string" - }, - "callback": { - "description": "JSONP", - "type": "string", - "location": "query" - }, - "$.xgafv": { - "enumDescriptions": [ - "v1 error format", - "v2 error format" - ], - "location": "query", - "enum": [ - "1", - "2" - ], - "description": "V1 error format.", - "type": "string" - }, - "alt": { - "enum": [ - "json", - "media", - "proto" - ], - "type": "string", - "enumDescriptions": [ - "Responses with Content-Type of application/json", - "Media download with context-dependent Content-Type", - "Responses with Content-Type of application/x-protobuf" - ], - "location": "query", - "description": "Data format for response.", - "default": "json" - }, - "key": { - "location": "query", - "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.", - "type": "string" - }, - "access_token": { - "description": "OAuth access token.", - "type": "string", - "location": "query" - }, - "quotaUser": { - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", - "type": "string", - "location": "query" - }, - "pp": { - "location": "query", - "description": "Pretty-print response.", - "type": "boolean", - "default": "true" - }, - "bearer_token": { - "location": "query", - "description": "OAuth bearer token.", - "type": "string" - }, - "oauth_token": { - "description": "OAuth 2.0 token for the current user.", - "type": "string", - "location": "query" - } - }, - "version": "v1beta1", - "baseUrl": "https://container.googleapis.com/", - "servicePath": "", - "description": "The Google Kubernetes Engine API is used for building and managing container based applications, powered by the open source Kubernetes technology.", - "kind": "discovery#restDescription", - "basePath": "", - "documentationLink": "https://cloud.google.com/container-engine/", - "id": "container:v1beta1", - "revision": "20180108", - "discoveryVersion": "v1", - "version_module": true, + "revision": "20180308", + "rootUrl": "https://container.googleapis.com/", "schemas": { - "RollbackNodePoolUpgradeRequest": { - "description": "RollbackNodePoolUpgradeRequest rollbacks the previously Aborted or Failed\nNodePool upgrade. This will be an no-op if the last upgrade successfully\ncompleted.", - "type": "object", + "AcceleratorConfig": { + "description": "AcceleratorConfig represents a Hardware Accelerator request.", + "id": "AcceleratorConfig", "properties": { - "projectId": { - "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field is deprecated, use name instead.", + "acceleratorCount": { + "description": "The number of the accelerator cards exposed to an instance.", + "format": "int64", "type": "string" }, - "zone": { - "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field is deprecated, use name instead.", - "type": "string" - }, - "clusterId": { - "description": "The name of the cluster to rollback.\nThis field is deprecated, use name instead.", - "type": "string" - }, - "nodePoolId": { - "description": "The name of the node pool to rollback.\nThis field is deprecated, use name instead.", - "type": "string" - }, - "name": { - "description": "The name (project, location, cluster, node pool id) of the node poll to\nrollback upgrade.\nSpecified in the format 'projects/*/locations/*/clusters/*/nodePools/*'.", + "acceleratorType": { + "description": "The accelerator type resource name. List of supported accelerators\n[here](/compute/docs/gpus/#Introduction)", "type": "string" } }, - "id": "RollbackNodePoolUpgradeRequest" + "type": "object" + }, + "AddonsConfig": { + "description": "Configuration for the addons that can be automatically spun up in the\ncluster, enabling additional functionality.", + "id": "AddonsConfig", + "properties": { + "horizontalPodAutoscaling": { + "$ref": "HorizontalPodAutoscaling", + "description": "Configuration for the horizontal pod autoscaling feature, which\nincreases or decreases the number of replica pods a replication controller\nhas based on the resource usage of the existing pods." + }, + "httpLoadBalancing": { + "$ref": "HttpLoadBalancing", + "description": "Configuration for the HTTP (L7) load balancing controller addon, which\nmakes it easy to set up HTTP load balancers for services in a cluster." + }, + "kubernetesDashboard": { + "$ref": "KubernetesDashboard", + "description": "Configuration for the Kubernetes Dashboard." + }, + "networkPolicyConfig": { + "$ref": "NetworkPolicyConfig", + "description": "Configuration for NetworkPolicy. This only tracks whether the addon\nis enabled or not on the Master, it does not track whether network policy\nis enabled for the nodes." + } + }, + "type": "object" + }, + "AutoUpgradeOptions": { + "description": "AutoUpgradeOptions defines the set of options for the user to control how\nthe Auto Upgrades will proceed.", + "id": "AutoUpgradeOptions", + "properties": { + "autoUpgradeStartTime": { + "description": "[Output only] This field is set when upgrades are about to commence\nwith the approximate start time for the upgrades, in\n[RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.", + "type": "string" + }, + "description": { + "description": "[Output only] This field is set when upgrades are about to commence\nwith the description of the upgrade.", + "type": "string" + } + }, + "type": "object" + }, + "CancelOperationRequest": { + "description": "CancelOperationRequest cancels a single operation.", + "id": "CancelOperationRequest", + "properties": { + "name": { + "description": "The name (project, location, operation id) of the operation to cancel.\nSpecified in the format 'projects/*/locations/*/operations/*'.", + "type": "string" + }, + "operationId": { + "description": "Deprecated. The server-assigned `name` of the operation.\nThis field has been deprecated and replaced by the name field.", + "type": "string" + }, + "projectId": { + "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field has been deprecated and replaced by the name field.", + "type": "string" + }, + "zone": { + "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the operation resides.\nThis field has been deprecated and replaced by the name field.", + "type": "string" + } + }, + "type": "object" + }, + "CidrBlock": { + "description": "CidrBlock contains an optional name and one CIDR block.", + "id": "CidrBlock", + "properties": { + "cidrBlock": { + "description": "cidr_block must be specified in CIDR notation.", + "type": "string" + }, + "displayName": { + "description": "display_name is an optional field for users to identify CIDR blocks.", + "type": "string" + } + }, + "type": "object" + }, + "ClientCertificateConfig": { + "description": "Configuration for client certificates on the cluster.", + "id": "ClientCertificateConfig", + "properties": { + "issueClientCertificate": { + "description": "Issue a client certificate.", + "type": "boolean" + } + }, + "type": "object" + }, + "Cluster": { + "description": "A Google Kubernetes Engine cluster.", + "id": "Cluster", + "properties": { + "addonsConfig": { + "$ref": "AddonsConfig", + "description": "Configurations for the various addons available to run in the cluster." + }, + "clusterIpv4Cidr": { + "description": "The IP address range of the container pods in this cluster, in\n[CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)\nnotation (e.g. `10.96.0.0/14`). Leave blank to have\none automatically chosen or specify a `/14` block in `10.0.0.0/8`.", + "type": "string" + }, + "createTime": { + "description": "[Output only] The time the cluster was created, in\n[RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.", + "type": "string" + }, + "currentMasterVersion": { + "description": "[Output only] The current software version of the master endpoint.", + "type": "string" + }, + "currentNodeCount": { + "description": "[Output only] The number of nodes currently in the cluster.", + "format": "int32", + "type": "integer" + }, + "currentNodeVersion": { + "description": "[Output only] The current version of the node software components.\nIf they are currently at multiple versions because they're in the process\nof being upgraded, this reflects the minimum version of all nodes.", + "type": "string" + }, + "description": { + "description": "An optional description of this cluster.", + "type": "string" + }, + "enableKubernetesAlpha": { + "description": "Kubernetes alpha features are enabled on this cluster. This includes alpha\nAPI groups (e.g. v1beta1) and features that may not be production ready in\nthe kubernetes version of the master and nodes.\nThe cluster has no SLA for uptime and master/node upgrades are disabled.\nAlpha enabled clusters are automatically deleted thirty days after\ncreation.", + "type": "boolean" + }, + "endpoint": { + "description": "[Output only] The IP address of this cluster's master endpoint.\nThe endpoint can be accessed from the internet at\n`https://username:password@endpoint/`.\n\nSee the `masterAuth` property of this resource for username and\npassword information.", + "type": "string" + }, + "expireTime": { + "description": "[Output only] The time the cluster will be automatically\ndeleted in [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.", + "type": "string" + }, + "initialClusterVersion": { + "description": "The initial Kubernetes version for this cluster. Valid versions are those\nfound in validMasterVersions returned by getServerConfig. The version can\nbe upgraded over time; such upgrades are reflected in\ncurrentMasterVersion and currentNodeVersion.\n\nUsers may specify either explicit versions offered by\nKubernetes Engine or version aliases, which have the following behavior:\n\n- \"latest\": picks the highest valid Kubernetes version\n- \"1.X\": picks the highest valid patch+gke.N patch in the 1.X version\n- \"1.X.Y\": picks the highest valid gke.N patch in the 1.X.Y version\n- \"1.X.Y-gke.N\": picks an explicit Kubernetes version\n- \"\",\"-\": picks the default Kubernetes version", + "type": "string" + }, + "initialNodeCount": { + "description": "The number of nodes to create in this cluster. You must ensure that your\nCompute Engine \u003ca href=\"/compute/docs/resource-quotas\"\u003eresource quota\u003c/a\u003e\nis sufficient for this number of instances. You must also have available\nfirewall and routes quota.\nFor requests, this field should only be used in lieu of a\n\"node_pool\" object, since this configuration (along with the\n\"node_config\") will be used to create a \"NodePool\" object with an\nauto-generated name. Do not use this and a node_pool at the same time.", + "format": "int32", + "type": "integer" + }, + "instanceGroupUrls": { + "description": "Deprecated. Use node_pools.instance_group_urls.", + "items": { + "type": "string" + }, + "type": "array" + }, + "ipAllocationPolicy": { + "$ref": "IPAllocationPolicy", + "description": "Configuration for cluster IP allocation." + }, + "labelFingerprint": { + "description": "The fingerprint of the set of labels for this cluster.", + "type": "string" + }, + "legacyAbac": { + "$ref": "LegacyAbac", + "description": "Configuration for the legacy ABAC authorization mode." + }, + "location": { + "description": "[Output only] The name of the Google Compute Engine\n[zone](/compute/docs/regions-zones/regions-zones#available) or\n[region](/compute/docs/regions-zones/regions-zones#available) in which\nthe cluster resides.", + "type": "string" + }, + "locations": { + "description": "The list of Google Compute Engine\n[locations](/compute/docs/zones#available) in which the cluster's nodes\nshould be located.", + "items": { + "type": "string" + }, + "type": "array" + }, + "loggingService": { + "description": "The logging service the cluster should use to write logs.\nCurrently available options:\n\n* `logging.googleapis.com` - the Google Cloud Logging service.\n* `none` - no logs will be exported from the cluster.\n* if left as an empty string,`logging.googleapis.com` will be used.", + "type": "string" + }, + "maintenancePolicy": { + "$ref": "MaintenancePolicy", + "description": "Configure the maintenance policy for this cluster." + }, + "masterAuth": { + "$ref": "MasterAuth", + "description": "The authentication information for accessing the master endpoint." + }, + "masterAuthorizedNetworksConfig": { + "$ref": "MasterAuthorizedNetworksConfig", + "description": "The configuration options for master authorized networks feature." + }, + "masterIpv4CidrBlock": { + "description": "The IP prefix in CIDR notation to use for the hosted master network.\nThis prefix will be used for assigning private IP addresses to the\nmaster or set of masters, as well as the ILB VIP.", + "type": "string" + }, + "monitoringService": { + "description": "The monitoring service the cluster should use to write metrics.\nCurrently available options:\n\n* `monitoring.googleapis.com` - the Google Cloud Monitoring service.\n* `none` - no metrics will be exported from the cluster.\n* if left as an empty string, `monitoring.googleapis.com` will be used.", + "type": "string" + }, + "name": { + "description": "The name of this cluster. The name must be unique within this project\nand zone, and can be up to 40 characters with the following restrictions:\n\n* Lowercase letters, numbers, and hyphens only.\n* Must start with a letter.\n* Must end with a number or a letter.", + "type": "string" + }, + "network": { + "description": "The name of the Google Compute Engine\n[network](/compute/docs/networks-and-firewalls#networks) to which the\ncluster is connected. If left unspecified, the `default` network\nwill be used. On output this shows the network ID instead of\nthe name.", + "type": "string" + }, + "networkPolicy": { + "$ref": "NetworkPolicy", + "description": "Configuration options for the NetworkPolicy feature." + }, + "nodeConfig": { + "$ref": "NodeConfig", + "description": "Parameters used in creating the cluster's nodes.\nSee `nodeConfig` for the description of its properties.\nFor requests, this field should only be used in lieu of a\n\"node_pool\" object, since this configuration (along with the\n\"initial_node_count\") will be used to create a \"NodePool\" object with an\nauto-generated name. Do not use this and a node_pool at the same time.\nFor responses, this field will be populated with the node configuration of\nthe first node pool.\n\nIf unspecified, the defaults are used." + }, + "nodeIpv4CidrSize": { + "description": "[Output only] The size of the address space on each node for hosting\ncontainers. This is provisioned from within the `container_ipv4_cidr`\nrange.", + "format": "int32", + "type": "integer" + }, + "nodePools": { + "description": "The node pools associated with this cluster.\nThis field should not be set if \"node_config\" or \"initial_node_count\" are\nspecified.", + "items": { + "$ref": "NodePool" + }, + "type": "array" + }, + "podSecurityPolicyConfig": { + "$ref": "PodSecurityPolicyConfig", + "description": "Configuration for the PodSecurityPolicy feature." + }, + "privateCluster": { + "description": "If this is a private cluster setup. Private clusters are clusters that, by\ndefault have no external IP addresses on the nodes and where nodes and the\nmaster communicate over private IP addresses.", + "type": "boolean" + }, + "resourceLabels": { + "additionalProperties": { + "type": "string" + }, + "description": "The resource labels for the cluster to use to annotate any related GCE\nresources.", + "type": "object" + }, + "selfLink": { + "description": "[Output only] Server-defined URL for the resource.", + "type": "string" + }, + "servicesIpv4Cidr": { + "description": "[Output only] The IP address range of the Kubernetes services in\nthis cluster, in\n[CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)\nnotation (e.g. `1.2.3.4/29`). Service addresses are\ntypically put in the last `/16` from the container CIDR.", + "type": "string" + }, + "status": { + "description": "[Output only] The current status of this cluster.", + "enum": [ + "STATUS_UNSPECIFIED", + "PROVISIONING", + "RUNNING", + "RECONCILING", + "STOPPING", + "ERROR", + "DEGRADED" + ], + "enumDescriptions": [ + "Not set.", + "The PROVISIONING state indicates the cluster is being created.", + "The RUNNING state indicates the cluster has been created and is fully\nusable.", + "The RECONCILING state indicates that some work is actively being done on\nthe cluster, such as upgrading the master or node software. Details can\nbe found in the `statusMessage` field.", + "The STOPPING state indicates the cluster is being deleted.", + "The ERROR state indicates the cluster may be unusable. Details\ncan be found in the `statusMessage` field.", + "The DEGRADED state indicates the cluster requires user action to restore\nfull functionality. Details can be found in the `statusMessage` field." + ], + "type": "string" + }, + "statusMessage": { + "description": "[Output only] Additional information about the current status of this\ncluster, if available.", + "type": "string" + }, + "subnetwork": { + "description": "The name of the Google Compute Engine\n[subnetwork](/compute/docs/subnetworks) to which the\ncluster is connected. On output this shows the subnetwork ID instead of\nthe name.", + "type": "string" + }, + "zone": { + "description": "[Output only] The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field is deprecated, use location instead.", + "type": "string" + } + }, + "type": "object" + }, + "ClusterUpdate": { + "description": "ClusterUpdate describes an update to the cluster. Exactly one update can\nbe applied to a cluster with each request, so at most one field can be\nprovided.", + "id": "ClusterUpdate", + "properties": { + "desiredAddonsConfig": { + "$ref": "AddonsConfig", + "description": "Configurations for the various addons available to run in the cluster." + }, + "desiredImageType": { + "description": "The desired image type for the node pool.\nNOTE: Set the \"desired_node_pool\" field as well.", + "type": "string" + }, + "desiredLocations": { + "description": "The desired list of Google Compute Engine\n[locations](/compute/docs/zones#available) in which the cluster's nodes\nshould be located. Changing the locations a cluster is in will result\nin nodes being either created or removed from the cluster, depending on\nwhether locations are being added or removed.\n\nThis list must always include the cluster's primary zone.", + "items": { + "type": "string" + }, + "type": "array" + }, + "desiredMasterAuthorizedNetworksConfig": { + "$ref": "MasterAuthorizedNetworksConfig", + "description": "The desired configuration options for master authorized networks feature." + }, + "desiredMasterVersion": { + "description": "The Kubernetes version to change the master to. The only valid value is the\nlatest supported version.\n\nUsers may specify either explicit versions offered by\nKubernetes Engine or version aliases, which have the following behavior:\n\n- \"latest\": picks the highest valid Kubernetes version\n- \"1.X\": picks the highest valid patch+gke.N patch in the 1.X version\n- \"1.X.Y\": picks the highest valid gke.N patch in the 1.X.Y version\n- \"1.X.Y-gke.N\": picks an explicit Kubernetes version\n- \"-\": picks the default Kubernetes version", + "type": "string" + }, + "desiredMonitoringService": { + "description": "The monitoring service the cluster should use to write metrics.\nCurrently available options:\n\n* \"monitoring.googleapis.com\" - the Google Cloud Monitoring service\n* \"none\" - no metrics will be exported from the cluster", + "type": "string" + }, + "desiredNodePoolAutoscaling": { + "$ref": "NodePoolAutoscaling", + "description": "Autoscaler configuration for the node pool specified in\ndesired_node_pool_id. If there is only one pool in the\ncluster and desired_node_pool_id is not provided then\nthe change applies to that single node pool." + }, + "desiredNodePoolId": { + "description": "The node pool to be upgraded. This field is mandatory if\n\"desired_node_version\", \"desired_image_family\" or\n\"desired_node_pool_autoscaling\" is specified and there is more than one\nnode pool on the cluster.", + "type": "string" + }, + "desiredNodeVersion": { + "description": "The Kubernetes version to change the nodes to (typically an\nupgrade).\n\nUsers may specify either explicit versions offered by\nKubernetes Engine or version aliases, which have the following behavior:\n\n- \"latest\": picks the highest valid Kubernetes version\n- \"1.X\": picks the highest valid patch+gke.N patch in the 1.X version\n- \"1.X.Y\": picks the highest valid gke.N patch in the 1.X.Y version\n- \"1.X.Y-gke.N\": picks an explicit Kubernetes version\n- \"-\": picks the Kubernetes master version", + "type": "string" + }, + "desiredPodSecurityPolicyConfig": { + "$ref": "PodSecurityPolicyConfig", + "description": "The desired configuration options for the PodSecurityPolicy feature." + } + }, + "type": "object" + }, + "CompleteIPRotationRequest": { + "description": "CompleteIPRotationRequest moves the cluster master back into single-IP mode.", + "id": "CompleteIPRotationRequest", + "properties": { + "clusterId": { + "description": "Deprecated. The name of the cluster.\nThis field has been deprecated and replaced by the name field.", + "type": "string" + }, + "name": { + "description": "The name (project, location, cluster id) of the cluster to complete IP rotation.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", + "type": "string" + }, + "projectId": { + "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://developers.google.com/console/help/new/#projectnumber).\nThis field has been deprecated and replaced by the name field.", + "type": "string" + }, + "zone": { + "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the name field.", + "type": "string" + } + }, + "type": "object" + }, + "CreateClusterRequest": { + "description": "CreateClusterRequest creates a cluster.", + "id": "CreateClusterRequest", + "properties": { + "cluster": { + "$ref": "Cluster", + "description": "A [cluster\nresource](/container-engine/reference/rest/v1beta1/projects.zones.clusters)" + }, + "parent": { + "description": "The parent (project and location) where the cluster will be created.\nSpecified in the format 'projects/*/locations/*'.", + "type": "string" + }, + "projectId": { + "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field has been deprecated and replaced by the parent field.", + "type": "string" + }, + "zone": { + "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the parent field.", + "type": "string" + } + }, + "type": "object" + }, + "CreateNodePoolRequest": { + "description": "CreateNodePoolRequest creates a node pool for a cluster.", + "id": "CreateNodePoolRequest", + "properties": { + "clusterId": { + "description": "Deprecated. The name of the cluster.\nThis field has been deprecated and replaced by the parent field.", + "type": "string" + }, + "nodePool": { + "$ref": "NodePool", + "description": "The node pool to create." + }, + "parent": { + "description": "The parent (project, location, cluster id) where the node pool will be created.\nSpecified in the format 'projects/*/locations/*/clusters/*/nodePools/*'.", + "type": "string" + }, + "projectId": { + "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://developers.google.com/console/help/new/#projectnumber).\nThis field has been deprecated and replaced by the parent field.", + "type": "string" + }, + "zone": { + "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the parent field.", + "type": "string" + } + }, + "type": "object" + }, + "DailyMaintenanceWindow": { + "description": "Time window specified for daily maintenance operations.", + "id": "DailyMaintenanceWindow", + "properties": { + "duration": { + "description": "[Output only] Duration of the time window, automatically chosen to be\nsmallest possible in the given scenario.", + "type": "string" + }, + "startTime": { + "description": "Time within the maintenance window to start the maintenance operations.\nIt must be in format \"HH:MM”, where HH : [00-23] and MM : [00-59] GMT.", + "type": "string" + } + }, + "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" + }, + "HorizontalPodAutoscaling": { + "description": "Configuration options for the horizontal pod autoscaling feature, which\nincreases or decreases the number of replica pods a replication controller\nhas based on the resource usage of the existing pods.", + "id": "HorizontalPodAutoscaling", + "properties": { + "disabled": { + "description": "Whether the Horizontal Pod Autoscaling feature is enabled in the cluster.\nWhen enabled, it ensures that a Heapster pod is running in the cluster,\nwhich is also used by the Cloud Monitoring service.", + "type": "boolean" + } + }, + "type": "object" + }, + "HttpLoadBalancing": { + "description": "Configuration options for the HTTP (L7) load balancing controller addon,\nwhich makes it easy to set up HTTP load balancers for services in a cluster.", + "id": "HttpLoadBalancing", + "properties": { + "disabled": { + "description": "Whether the HTTP Load Balancing controller is enabled in the cluster.\nWhen enabled, it runs a small pod in the cluster that manages the load\nbalancers.", + "type": "boolean" + } + }, + "type": "object" + }, + "IPAllocationPolicy": { + "description": "Configuration for controlling how IPs are allocated in the cluster.", + "id": "IPAllocationPolicy", + "properties": { + "allowRouteOverlap": { + "description": "If true, allow allocation of cluster CIDR ranges that overlap with certain\nkinds of network routes. By default we do not allow cluster CIDR ranges to\nintersect with any user declared routes. With allow_route_overlap == true,\nwe allow overlapping with CIDR ranges that are larger than the cluster CIDR\nrange.\n\nIf this field is set to true, then cluster and services CIDRs must be\nfully-specified (e.g. `10.96.0.0/14`, but not `/14`), which means:\n1) When `use_ip_aliases` is true, `cluster_ipv4_cidr_block` and\n `services_ipv4_cidr_block` must be fully-specified.\n2) When `use_ip_aliases` is false, `cluster.cluster_ipv4_cidr` muse be\n fully-specified.", + "type": "boolean" + }, + "clusterIpv4Cidr": { + "description": "This field is deprecated, use cluster_ipv4_cidr_block.", + "type": "string" + }, + "clusterIpv4CidrBlock": { + "description": "The IP address range for the cluster pod IPs. If this field is set, then\n`cluster.cluster_ipv4_cidr` must be left blank.\n\nThis field is only applicable when `use_ip_aliases` is true.\n\nSet to blank to have a range chosen with the default size.\n\nSet to /netmask (e.g. `/14`) to have a range chosen with a specific\nnetmask.\n\nSet to a\n[CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)\nnotation (e.g. `10.96.0.0/14`) from the RFC-1918 private networks (e.g.\n`10.0.0.0/8`, `172.16.0.0/12`, `192.168.0.0/16`) to pick a specific range\nto use.", + "type": "string" + }, + "clusterSecondaryRangeName": { + "description": "The name of the secondary range to be used for the cluster CIDR\nblock. The secondary range will be used for pod IP\naddresses. This must be an existing secondary range associated\nwith the cluster subnetwork.\n\nThis field is only applicable with use_ip_aliases and\ncreate_subnetwork is false.", + "type": "string" + }, + "createSubnetwork": { + "description": "Whether a new subnetwork will be created automatically for the cluster.\n\nThis field is only applicable when `use_ip_aliases` is true.", + "type": "boolean" + }, + "nodeIpv4Cidr": { + "description": "This field is deprecated, use node_ipv4_cidr_block.", + "type": "string" + }, + "nodeIpv4CidrBlock": { + "description": "The IP address range of the instance IPs in this cluster.\n\nThis is applicable only if `create_subnetwork` is true.\n\nSet to blank to have a range chosen with the default size.\n\nSet to /netmask (e.g. `/14`) to have a range chosen with a specific\nnetmask.\n\nSet to a\n[CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)\nnotation (e.g. `10.96.0.0/14`) from the RFC-1918 private networks (e.g.\n`10.0.0.0/8`, `172.16.0.0/12`, `192.168.0.0/16`) to pick a specific range\nto use.", + "type": "string" + }, + "servicesIpv4Cidr": { + "description": "This field is deprecated, use services_ipv4_cidr_block.", + "type": "string" + }, + "servicesIpv4CidrBlock": { + "description": "The IP address range of the services IPs in this cluster. If blank, a range\nwill be automatically chosen with the default size.\n\nThis field is only applicable when `use_ip_aliases` is true.\n\nSet to blank to have a range chosen with the default size.\n\nSet to /netmask (e.g. `/14`) to have a range chosen with a specific\nnetmask.\n\nSet to a\n[CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)\nnotation (e.g. `10.96.0.0/14`) from the RFC-1918 private networks (e.g.\n`10.0.0.0/8`, `172.16.0.0/12`, `192.168.0.0/16`) to pick a specific range\nto use.", + "type": "string" + }, + "servicesSecondaryRangeName": { + "description": "The name of the secondary range to be used as for the services\nCIDR block. The secondary range will be used for service\nClusterIPs. This must be an existing secondary range associated\nwith the cluster subnetwork.\n\nThis field is only applicable with use_ip_aliases and\ncreate_subnetwork is false.", + "type": "string" + }, + "subnetworkName": { + "description": "A custom subnetwork name to be used if `create_subnetwork` is true. If\nthis field is empty, then an automatic name will be chosen for the new\nsubnetwork.", + "type": "string" + }, + "useIpAliases": { + "description": "Whether alias IPs will be used for pod IPs in the cluster.", + "type": "boolean" + } + }, + "type": "object" + }, + "KubernetesDashboard": { + "description": "Configuration for the Kubernetes Dashboard.", + "id": "KubernetesDashboard", + "properties": { + "disabled": { + "description": "Whether the Kubernetes Dashboard is enabled for this cluster.", + "type": "boolean" + } + }, + "type": "object" + }, + "LegacyAbac": { + "description": "Configuration for the legacy Attribute Based Access Control authorization\nmode.", + "id": "LegacyAbac", + "properties": { + "enabled": { + "description": "Whether the ABAC authorizer is enabled for this cluster. When enabled,\nidentities in the system, including service accounts, nodes, and\ncontrollers, will have statically granted permissions beyond those\nprovided by the RBAC configuration or IAM.", + "type": "boolean" + } + }, + "type": "object" + }, + "ListClustersResponse": { + "description": "ListClustersResponse is the result of ListClustersRequest.", + "id": "ListClustersResponse", + "properties": { + "clusters": { + "description": "A list of clusters in the project in the specified zone, or\nacross all ones.", + "items": { + "$ref": "Cluster" + }, + "type": "array" + }, + "missingZones": { + "description": "If any zones are listed here, the list of clusters returned\nmay be missing those zones.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "ListNodePoolsResponse": { + "description": "ListNodePoolsResponse is the result of ListNodePoolsRequest.", + "id": "ListNodePoolsResponse", + "properties": { + "nodePools": { + "description": "A list of node pools for a cluster.", + "items": { + "$ref": "NodePool" + }, + "type": "array" + } + }, + "type": "object" + }, + "ListOperationsResponse": { + "description": "ListOperationsResponse is the result of ListOperationsRequest.", + "id": "ListOperationsResponse", + "properties": { + "missingZones": { + "description": "If any zones are listed here, the list of operations returned\nmay be missing the operations from those zones.", + "items": { + "type": "string" + }, + "type": "array" + }, + "operations": { + "description": "A list of operations in the project in the specified zone.", + "items": { + "$ref": "Operation" + }, + "type": "array" + } + }, + "type": "object" + }, + "MaintenancePolicy": { + "description": "MaintenancePolicy defines the maintenance policy to be used for the cluster.", + "id": "MaintenancePolicy", + "properties": { + "window": { + "$ref": "MaintenanceWindow", + "description": "Specifies the maintenance window in which maintenance may be performed." + } + }, + "type": "object" + }, + "MaintenanceWindow": { + "description": "MaintenanceWindow defines the maintenance window to be used for the cluster.", + "id": "MaintenanceWindow", + "properties": { + "dailyMaintenanceWindow": { + "$ref": "DailyMaintenanceWindow", + "description": "DailyMaintenanceWindow specifies a daily maintenance operation window." + } + }, + "type": "object" + }, + "MasterAuth": { + "description": "The authentication information for accessing the master endpoint.\nAuthentication can be done using HTTP basic auth or using client\ncertificates.", + "id": "MasterAuth", + "properties": { + "clientCertificate": { + "description": "[Output only] Base64-encoded public certificate used by clients to\nauthenticate to the cluster endpoint.", + "type": "string" + }, + "clientCertificateConfig": { + "$ref": "ClientCertificateConfig", + "description": "Configuration for client certificate authentication on the cluster. If no\nconfiguration is specified, a client certificate is issued." + }, + "clientKey": { + "description": "[Output only] Base64-encoded private key used by clients to authenticate\nto the cluster endpoint.", + "type": "string" + }, + "clusterCaCertificate": { + "description": "[Output only] Base64-encoded public certificate that is the root of\ntrust for the cluster.", + "type": "string" + }, + "password": { + "description": "The password to use for HTTP basic authentication to the master endpoint.\nBecause the master endpoint is open to the Internet, you should create a\nstrong password. If a password is provided for cluster creation, username\nmust be non-empty.", + "type": "string" + }, + "username": { + "description": "The username to use for HTTP basic authentication to the master endpoint.\nFor clusters v1.6.0 and later, you can disable basic authentication by\nproviding an empty username.", + "type": "string" + } + }, + "type": "object" + }, + "MasterAuthorizedNetworksConfig": { + "description": "Configuration options for the master authorized networks feature. Enabled\nmaster authorized networks will disallow all external traffic to access\nKubernetes master through HTTPS except traffic from the given CIDR blocks,\nGoogle Compute Engine Public IPs and Google Prod IPs.", + "id": "MasterAuthorizedNetworksConfig", + "properties": { + "cidrBlocks": { + "description": "cidr_blocks define up to 10 external networks that could access\nKubernetes master through HTTPS.", + "items": { + "$ref": "CidrBlock" + }, + "type": "array" + }, + "enabled": { + "description": "Whether or not master authorized networks is enabled.", + "type": "boolean" + } + }, + "type": "object" }, "NetworkPolicy": { "description": "Configuration options for the NetworkPolicy feature.\nhttps://kubernetes.io/docs/concepts/services-networking/networkpolicies/", - "type": "object", + "id": "NetworkPolicy", "properties": { "enabled": { "description": "Whether network policy is enabled on the cluster.", "type": "boolean" }, "provider": { - "enumDescriptions": [ - "Not set", - "Tigera (Calico Felix)." - ], + "description": "The selected network policy provider.", "enum": [ "PROVIDER_UNSPECIFIED", "CALICO" ], - "description": "The selected network policy provider.", + "enumDescriptions": [ + "Not set", + "Tigera (Calico Felix)." + ], "type": "string" } }, - "id": "NetworkPolicy" - }, - "UpdateMasterRequest": { - "description": "UpdateMasterRequest updates the master of the cluster.", - "type": "object", - "properties": { - "name": { - "description": "The name (project, location, cluster) of the cluster to update.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", - "type": "string" - }, - "projectId": { - "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).", - "type": "string" - }, - "zone": { - "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field is deprecated, use name instead.", - "type": "string" - }, - "masterVersion": { - "description": "The Kubernetes version to change the master to. The only valid value is the\nlatest supported version. Use \"-\" to have the server automatically select\nthe latest version.", - "type": "string" - }, - "clusterId": { - "description": "The name of the cluster to upgrade.\nThis field is deprecated, use name instead.", - "type": "string" - } - }, - "id": "UpdateMasterRequest" - }, - "ListOperationsResponse": { - "properties": { - "operations": { - "description": "A list of operations in the project in the specified zone.", - "type": "array", - "items": { - "$ref": "Operation" - } - }, - "missingZones": { - "description": "If any zones are listed here, the list of operations returned\nmay be missing the operations from those zones.", - "type": "array", - "items": { - "type": "string" - } - } - }, - "id": "ListOperationsResponse", - "description": "ListOperationsResponse is the result of ListOperationsRequest.", "type": "object" }, - "SetMonitoringServiceRequest": { - "description": "SetMonitoringServiceRequest sets the monitoring service of a cluster.", - "type": "object", + "NetworkPolicyConfig": { + "description": "Configuration for NetworkPolicy. This only tracks whether the addon\nis enabled or not on the Master, it does not track whether network policy\nis enabled for the nodes.", + "id": "NetworkPolicyConfig", "properties": { - "monitoringService": { - "description": "The monitoring service the cluster should use to write metrics.\nCurrently available options:\n\n* \"monitoring.googleapis.com\" - the Google Cloud Monitoring service\n* \"none\" - no metrics will be exported from the cluster", - "type": "string" - }, - "name": { - "description": "The name (project, location, cluster) of the cluster to set monitoring.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", - "type": "string" - }, - "projectId": { - "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field is deprecated, use name instead.", - "type": "string" - }, - "zone": { - "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field is deprecated, use name instead.", - "type": "string" - }, - "clusterId": { - "description": "The name of the cluster to upgrade.\nThis field is deprecated, use name instead.", - "type": "string" + "disabled": { + "description": "Whether NetworkPolicy is enabled for this cluster.", + "type": "boolean" } }, - "id": "SetMonitoringServiceRequest" - }, - "CidrBlock": { - "description": "CidrBlock contains an optional name and one CIDR block.", - "type": "object", - "properties": { - "displayName": { - "description": "display_name is an optional field for users to identify CIDR blocks.", - "type": "string" - }, - "cidrBlock": { - "description": "cidr_block must be specified in CIDR notation.", - "type": "string" - } - }, - "id": "CidrBlock" - }, - "ServerConfig": { - "description": "Kubernetes Engine service configuration.", - "type": "object", - "properties": { - "defaultClusterVersion": { - "description": "Version of Kubernetes the service deploys by default.", - "type": "string" - }, - "defaultImageType": { - "description": "Default image type.", - "type": "string" - }, - "validNodeVersions": { - "description": "List of valid node upgrade target versions.", - "type": "array", - "items": { - "type": "string" - } - }, - "validImageTypes": { - "description": "List of valid image types.", - "type": "array", - "items": { - "type": "string" - } - }, - "validMasterVersions": { - "description": "List of valid master versions.", - "type": "array", - "items": { - "type": "string" - } - } - }, - "id": "ServerConfig" + "type": "object" }, "NodeConfig": { "description": "Parameters that describe the nodes in a cluster.", - "type": "object", + "id": "NodeConfig", "properties": { + "accelerators": { + "description": "A list of hardware accelerators to be attached to each node.\nSee https://cloud.google.com/compute/docs/gpus for more information about\nsupport for GPUs.", + "items": { + "$ref": "AcceleratorConfig" + }, + "type": "array" + }, + "diskSizeGb": { + "description": "Size of the disk attached to each node, specified in GB.\nThe smallest allowed disk size is 10GB.\n\nIf unspecified, the default disk size is 100GB.", + "format": "int32", + "type": "integer" + }, "imageType": { "description": "The image type to use for this node. Note that for a given image type,\nthe latest version of it will be used.", "type": "string" }, - "oauthScopes": { - "description": "The set of Google API scopes to be made available on all of the\nnode VMs under the \"default\" service account.\n\nThe following scopes are recommended, but not required, and by default are\nnot included:\n\n* `https://www.googleapis.com/auth/compute` is required for mounting\npersistent storage on your nodes.\n* `https://www.googleapis.com/auth/devstorage.read_only` is required for\ncommunicating with **gcr.io**\n(the [Google Container Registry](/container-registry/)).\n\nIf unspecified, no scopes are added, unless Cloud Logging or Cloud\nMonitoring are enabled, in which case their required scopes will be added.", - "type": "array", - "items": { - "type": "string" - } - }, - "taints": { - "description": "List of kubernetes taints to be applied to each node.\n\nFor more information, including usage and the valid values, see:\nhttps://kubernetes.io/docs/concepts/configuration/taint-and-toleration/", - "type": "array", - "items": { - "$ref": "NodeTaint" - } - }, "labels": { "additionalProperties": { "type": "string" @@ -2565,162 +3105,153 @@ "description": "The map of Kubernetes labels (key/value pairs) to be applied to each node.\nThese will added in addition to any default label(s) that\nKubernetes may apply to the node.\nIn case of conflict in label keys, the applied set may differ depending on\nthe Kubernetes version -- it's best to assume the behavior is undefined\nand conflicts should be avoided.\nFor more information, including usage and the valid values, see:\nhttps://kubernetes.io/docs/concepts/overview/working-with-objects/labels/", "type": "object" }, - "diskSizeGb": { - "description": "Size of the disk attached to each node, specified in GB.\nThe smallest allowed disk size is 10GB.\n\nIf unspecified, the default disk size is 100GB.", - "format": "int32", - "type": "integer" - }, - "workloadMetadataConfig": { - "description": "The workload metadata configuration for this node.", - "$ref": "WorkloadMetadataConfig" - }, - "accelerators": { - "description": "A list of hardware accelerators to be attached to each node.\nSee https://cloud.google.com/compute/docs/gpus for more information about\nsupport for GPUs.", - "type": "array", - "items": { - "$ref": "AcceleratorConfig" - } - }, - "machineType": { - "description": "The name of a Google Compute Engine [machine\ntype](/compute/docs/machine-types) (e.g.\n`n1-standard-1`).\n\nIf unspecified, the default machine type is\n`n1-standard-1`.", - "type": "string" - }, - "minCpuPlatform": { - "description": "Minimum CPU platform to be used by this instance. The instance may be\nscheduled on the specified or newer CPU platform. Applicable values are the\nfriendly names of CPU platforms, such as\n\u003ccode\u003eminCpuPlatform: "Intel Haswell"\u003c/code\u003e or\n\u003ccode\u003eminCpuPlatform: "Intel Sandy Bridge"\u003c/code\u003e. For more\ninformation, read [how to specify min CPU platform](https://cloud.google.com/compute/docs/instances/specify-min-cpu-platform)", - "type": "string" - }, - "preemptible": { - "description": "Whether the nodes are created as preemptible VM instances. See:\nhttps://cloud.google.com/compute/docs/instances/preemptible for more\ninforamtion about preemptible VM instances.", - "type": "boolean" - }, "localSsdCount": { "description": "The number of local SSD disks to be attached to the node.\n\nThe limit for this value is dependant upon the maximum number of\ndisks available on a machine per zone. See:\nhttps://cloud.google.com/compute/docs/disks/local-ssd#local_ssd_limits\nfor more information.", "format": "int32", "type": "integer" }, + "machineType": { + "description": "The name of a Google Compute Engine [machine\ntype](/compute/docs/machine-types) (e.g.\n`n1-standard-1`).\n\nIf unspecified, the default machine type is\n`n1-standard-1`.", + "type": "string" + }, "metadata": { - "description": "The metadata key/value pairs assigned to instances in the cluster.\n\nKeys must conform to the regexp [a-zA-Z0-9-_]+ and be less than 128 bytes\nin length. These are reflected as part of a URL in the metadata server.\nAdditionally, to avoid ambiguity, keys must not conflict with any other\nmetadata keys for the project or be one of the reserved keys:\n \"cluster-name\"\n \"cluster-uid\"\n \"configure-sh\"\n \"gci-update-strategy\"\n \"gci-ensure-gke-docker\"\n \"instance-template\"\n \"kube-env\"\n \"startup-script\"\n \"user-data\"\n\nValues are free-form strings, and only have meaning as interpreted by\nthe image running in the instance. The only restriction placed on them is\nthat each value's size must be less than or equal to 32 KB.\n\nThe total size of all keys and values must be less than 512 KB.", - "type": "object", "additionalProperties": { "type": "string" - } + }, + "description": "The metadata key/value pairs assigned to instances in the cluster.\n\nKeys must conform to the regexp [a-zA-Z0-9-_]+ and be less than 128 bytes\nin length. These are reflected as part of a URL in the metadata server.\nAdditionally, to avoid ambiguity, keys must not conflict with any other\nmetadata keys for the project or be one of the reserved keys:\n \"cluster-location\"\n \"cluster-name\"\n \"cluster-uid\"\n \"configure-sh\"\n \"gci-update-strategy\"\n \"gci-ensure-gke-docker\"\n \"instance-template\"\n \"kube-env\"\n \"startup-script\"\n \"user-data\"\n\nValues are free-form strings, and only have meaning as interpreted by\nthe image running in the instance. The only restriction placed on them is\nthat each value's size must be less than or equal to 32 KB.\n\nThe total size of all keys and values must be less than 512 KB.", + "type": "object" }, - "tags": { - "description": "The list of instance tags applied to all nodes. Tags are used to identify\nvalid sources or targets for network firewalls and are specified by\nthe client during cluster or node pool creation. Each tag within the list\nmust comply with RFC1035.", - "type": "array", + "minCpuPlatform": { + "description": "Minimum CPU platform to be used by this instance. The instance may be\nscheduled on the specified or newer CPU platform. Applicable values are the\nfriendly names of CPU platforms, such as\n\u003ccode\u003eminCpuPlatform: \u0026quot;Intel Haswell\u0026quot;\u003c/code\u003e or\n\u003ccode\u003eminCpuPlatform: \u0026quot;Intel Sandy Bridge\u0026quot;\u003c/code\u003e. For more\ninformation, read [how to specify min CPU platform](https://cloud.google.com/compute/docs/instances/specify-min-cpu-platform)", + "type": "string" + }, + "oauthScopes": { + "description": "The set of Google API scopes to be made available on all of the\nnode VMs under the \"default\" service account.\n\nThe following scopes are recommended, but not required, and by default are\nnot included:\n\n* `https://www.googleapis.com/auth/compute` is required for mounting\npersistent storage on your nodes.\n* `https://www.googleapis.com/auth/devstorage.read_only` is required for\ncommunicating with **gcr.io**\n(the [Google Container Registry](/container-registry/)).\n\nIf unspecified, no scopes are added, unless Cloud Logging or Cloud\nMonitoring are enabled, in which case their required scopes will be added.", "items": { "type": "string" - } + }, + "type": "array" + }, + "preemptible": { + "description": "Whether the nodes are created as preemptible VM instances. See:\nhttps://cloud.google.com/compute/docs/instances/preemptible for more\ninforamtion about preemptible VM instances.", + "type": "boolean" }, "serviceAccount": { "description": "The Google Cloud Platform Service Account to be used by the node VMs. If\nno Service Account is specified, the \"default\" service account is used.", "type": "string" - } - }, - "id": "NodeConfig" - }, - "AutoUpgradeOptions": { - "description": "AutoUpgradeOptions defines the set of options for the user to control how\nthe Auto Upgrades will proceed.", - "type": "object", - "properties": { - "description": { - "description": "[Output only] This field is set when upgrades are about to commence\nwith the description of the upgrade.", - "type": "string" }, - "autoUpgradeStartTime": { - "description": "[Output only] This field is set when upgrades are about to commence\nwith the approximate start time for the upgrades, in\n[RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.", - "type": "string" - } - }, - "id": "AutoUpgradeOptions" - }, - "ListClustersResponse": { - "description": "ListClustersResponse is the result of ListClustersRequest.", - "type": "object", - "properties": { - "clusters": { - "description": "A list of clusters in the project in the specified zone, or\nacross all ones.", - "type": "array", - "items": { - "$ref": "Cluster" - } - }, - "missingZones": { - "description": "If any zones are listed here, the list of clusters returned\nmay be missing those zones.", - "type": "array", + "tags": { + "description": "The list of instance tags applied to all nodes. Tags are used to identify\nvalid sources or targets for network firewalls and are specified by\nthe client during cluster or node pool creation. Each tag within the list\nmust comply with RFC1035.", "items": { "type": "string" - } + }, + "type": "array" + }, + "taints": { + "description": "List of kubernetes taints to be applied to each node.\n\nFor more information, including usage and the valid values, see:\nhttps://kubernetes.io/docs/concepts/configuration/taint-and-toleration/", + "items": { + "$ref": "NodeTaint" + }, + "type": "array" + }, + "workloadMetadataConfig": { + "$ref": "WorkloadMetadataConfig", + "description": "The workload metadata configuration for this node." } }, - "id": "ListClustersResponse" - }, - "PodSecurityPolicyConfig": { - "properties": { - "enabled": { - "description": "Enable the PodSecurityPolicy controller for this cluster. If enabled, pods\nmust be valid under a PodSecurityPolicy to be created.", - "type": "boolean" - } - }, - "id": "PodSecurityPolicyConfig", - "description": "Configuration for the PodSecurityPolicy feature.", "type": "object" }, - "HttpLoadBalancing": { - "description": "Configuration options for the HTTP (L7) load balancing controller addon,\nwhich makes it easy to set up HTTP load balancers for services in a cluster.", - "type": "object", + "NodeManagement": { + "description": "NodeManagement defines the set of node management services turned on for the\nnode pool.", + "id": "NodeManagement", "properties": { - "disabled": { - "description": "Whether the HTTP Load Balancing controller is enabled in the cluster.\nWhen enabled, it runs a small pod in the cluster that manages the load\nbalancers.", + "autoRepair": { + "description": "Whether the nodes will be automatically repaired.", "type": "boolean" + }, + "autoUpgrade": { + "description": "Whether the nodes will be automatically upgraded.", + "type": "boolean" + }, + "upgradeOptions": { + "$ref": "AutoUpgradeOptions", + "description": "Specifies the Auto Upgrade knobs for the node pool." } }, - "id": "HttpLoadBalancing" + "type": "object" }, - "SetMasterAuthRequest": { - "description": "SetMasterAuthRequest updates the admin password of a cluster.", - "type": "object", + "NodePool": { + "description": "NodePool contains the name and configuration for a cluster's node pool.\nNode pools are a set of nodes (i.e. VM's), with a common configuration and\nspecification, under the control of the cluster master. They may have a set\nof Kubernetes labels applied to them, which may be used to reference them\nduring pod scheduling. They may also be resized up or down, to accommodate\nthe workload.", + "id": "NodePool", "properties": { - "projectId": { - "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field is deprecated, use name instead.", - "type": "string" + "autoscaling": { + "$ref": "NodePoolAutoscaling", + "description": "Autoscaler configuration for this NodePool. Autoscaler is enabled\nonly if a valid configuration is present." }, - "clusterId": { - "description": "The name of the cluster to upgrade.\nThis field is deprecated, use name instead.", - "type": "string" + "config": { + "$ref": "NodeConfig", + "description": "The node configuration of the pool." }, - "update": { - "description": "A description of the update.", - "$ref": "MasterAuth" + "initialNodeCount": { + "description": "The initial node count for the pool. You must ensure that your\nCompute Engine \u003ca href=\"/compute/docs/resource-quotas\"\u003eresource quota\u003c/a\u003e\nis sufficient for this number of instances. You must also have available\nfirewall and routes quota.", + "format": "int32", + "type": "integer" }, - "zone": { - "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field is deprecated, use name instead.", - "type": "string" + "instanceGroupUrls": { + "description": "[Output only] The resource URLs of the [managed instance\ngroups](/compute/docs/instance-groups/creating-groups-of-managed-instances)\nassociated with this node pool.", + "items": { + "type": "string" + }, + "type": "array" + }, + "management": { + "$ref": "NodeManagement", + "description": "NodeManagement configuration for this NodePool." }, "name": { - "description": "The name (project, location, cluster) of the cluster to set auth.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", + "description": "The name of the node pool.", "type": "string" }, - "action": { + "selfLink": { + "description": "[Output only] Server-defined URL for the resource.", + "type": "string" + }, + "status": { + "description": "[Output only] The status of the nodes in this pool instance.", "enum": [ - "UNKNOWN", - "SET_PASSWORD", - "GENERATE_PASSWORD", - "SET_USERNAME" + "STATUS_UNSPECIFIED", + "PROVISIONING", + "RUNNING", + "RUNNING_WITH_ERROR", + "RECONCILING", + "STOPPING", + "ERROR" ], - "description": "The exact form of action to be taken on the master auth.", - "type": "string", "enumDescriptions": [ - "Operation is unknown and will error out.", - "Set the password to a user generated value.", - "Generate a new password and set it to that.", - "Set the username. If an empty username is provided, basic authentication\nis disabled for the cluster. If a non-empty username is provided, basic\nauthentication is enabled, with either a provided password or a generated\none." - ] + "Not set.", + "The PROVISIONING state indicates the node pool is being created.", + "The RUNNING state indicates the node pool has been created\nand is fully usable.", + "The RUNNING_WITH_ERROR state indicates the node pool has been created\nand is partially usable. Some error state has occurred and some\nfunctionality may be impaired. Customer may need to reissue a request\nor trigger a new update.", + "The RECONCILING state indicates that some work is actively being done on\nthe node pool, such as upgrading node software. Details can\nbe found in the `statusMessage` field.", + "The STOPPING state indicates the node pool is being deleted.", + "The ERROR state indicates the node pool may be unusable. Details\ncan be found in the `statusMessage` field." + ], + "type": "string" + }, + "statusMessage": { + "description": "[Output only] Additional information about the current status of this\nnode pool instance, if available.", + "type": "string" + }, + "version": { + "description": "The version of the Kubernetes of this node.", + "type": "string" } }, - "id": "SetMasterAuthRequest" + "type": "object" }, "NodePoolAutoscaling": { + "description": "NodePoolAutoscaling contains information required by cluster autoscaler to\nadjust the size of the node pool to the current cluster usage.", + "id": "NodePoolAutoscaling", "properties": { "enabled": { "description": "Is autoscaling enabled for this node pool.", @@ -2737,1084 +3268,45 @@ "type": "integer" } }, - "id": "NodePoolAutoscaling", - "description": "NodePoolAutoscaling contains information required by cluster autoscaler to\nadjust the size of the node pool to the current cluster usage.", "type": "object" }, - "SetNetworkPolicyRequest": { - "description": "SetNetworkPolicyRequest enables/disables network policy for a cluster.", - "type": "object", - "properties": { - "zone": { - "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field is deprecated, use name instead.", - "type": "string" - }, - "clusterId": { - "description": "The name of the cluster.\nThis field is deprecated, use name instead.", - "type": "string" - }, - "networkPolicy": { - "description": "Configuration options for the NetworkPolicy feature.", - "$ref": "NetworkPolicy" - }, - "name": { - "description": "The name (project, location, cluster id) of the cluster to set networking policy.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", - "type": "string" - }, - "projectId": { - "description": "The Google Developers Console [project ID or project\nnumber](https://developers.google.com/console/help/new/#projectnumber).\nThis field is deprecated, use name instead.", - "type": "string" - } - }, - "id": "SetNetworkPolicyRequest" - }, - "ClusterUpdate": { - "description": "ClusterUpdate describes an update to the cluster. Exactly one update can\nbe applied to a cluster with each request, so at most one field can be\nprovided.", - "type": "object", - "properties": { - "desiredLocations": { - "description": "The desired list of Google Compute Engine\n[locations](/compute/docs/zones#available) in which the cluster's nodes\nshould be located. Changing the locations a cluster is in will result\nin nodes being either created or removed from the cluster, depending on\nwhether locations are being added or removed.\n\nThis list must always include the cluster's primary zone.", - "type": "array", - "items": { - "type": "string" - } - }, - "desiredNodePoolAutoscaling": { - "$ref": "NodePoolAutoscaling", - "description": "Autoscaler configuration for the node pool specified in\ndesired_node_pool_id. If there is only one pool in the\ncluster and desired_node_pool_id is not provided then\nthe change applies to that single node pool." - }, - "desiredMonitoringService": { - "description": "The monitoring service the cluster should use to write metrics.\nCurrently available options:\n\n* \"monitoring.googleapis.com\" - the Google Cloud Monitoring service\n* \"none\" - no metrics will be exported from the cluster", - "type": "string" - }, - "desiredImageType": { - "description": "The desired image type for the node pool.\nNOTE: Set the \"desired_node_pool\" field as well.", - "type": "string" - }, - "desiredAddonsConfig": { - "description": "Configurations for the various addons available to run in the cluster.", - "$ref": "AddonsConfig" - }, - "desiredNodePoolId": { - "description": "The node pool to be upgraded. This field is mandatory if\n\"desired_node_version\", \"desired_image_family\" or\n\"desired_node_pool_autoscaling\" is specified and there is more than one\nnode pool on the cluster.", - "type": "string" - }, - "desiredNodeVersion": { - "description": "The Kubernetes version to change the nodes to (typically an\nupgrade). Use `-` to upgrade to the latest version supported by\nthe server.", - "type": "string" - }, - "desiredMasterVersion": { - "description": "The Kubernetes version to change the master to. The only valid value is the\nlatest supported version. Use \"-\" to have the server automatically select\nthe latest version.", - "type": "string" - }, - "desiredPodSecurityPolicyConfig": { - "$ref": "PodSecurityPolicyConfig", - "description": "The desired configuration options for the PodSecurityPolicy feature." - }, - "desiredMasterAuthorizedNetworksConfig": { - "$ref": "MasterAuthorizedNetworksConfig", - "description": "The desired configuration options for master authorized networks feature." - } - }, - "id": "ClusterUpdate" - }, - "IPAllocationPolicy": { - "description": "Configuration for controlling how IPs are allocated in the cluster.", - "type": "object", - "properties": { - "servicesIpv4Cidr": { - "description": "This field is deprecated, use services_ipv4_cidr_block.", - "type": "string" - }, - "servicesIpv4CidrBlock": { - "description": "The IP address range of the services IPs in this cluster. If blank, a range\nwill be automatically chosen with the default size.\n\nThis field is only applicable when `use_ip_aliases` is true.\n\nSet to blank to have a range chosen with the default size.\n\nSet to /netmask (e.g. `/14`) to have a range chosen with a specific\nnetmask.\n\nSet to a\n[CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)\nnotation (e.g. `10.96.0.0/14`) from the RFC-1918 private networks (e.g.\n`10.0.0.0/8`, `172.16.0.0/12`, `192.168.0.0/16`) to pick a specific range\nto use.", - "type": "string" - }, - "allowRouteOverlap": { - "description": "If true, allow allocation of cluster CIDR ranges that overlap with certain\nkinds of network routes. By default we do not allow cluster CIDR ranges to\nintersect with any user declared routes. With allow_route_overlap == true,\nwe allow overlapping with CIDR ranges that are larger than the cluster CIDR\nrange.\n\nIf this field is set to true, then cluster and services CIDRs must be\nfully-specified (e.g. `10.96.0.0/14`, but not `/14`), which means:\n1) When `use_ip_aliases` is true, `cluster_ipv4_cidr_block` and\n `services_ipv4_cidr_block` must be fully-specified.\n2) When `use_ip_aliases` is false, `cluster.cluster_ipv4_cidr` muse be\n fully-specified.", - "type": "boolean" - }, - "nodeIpv4Cidr": { - "description": "This field is deprecated, use node_ipv4_cidr_block.", - "type": "string" - }, - "clusterSecondaryRangeName": { - "description": "The name of the secondary range to be used for the cluster CIDR\nblock. The secondary range will be used for pod IP\naddresses. This must be an existing secondary range associated\nwith the cluster subnetwork.\n\nThis field is only applicable with use_ip_aliases and\ncreate_subnetwork is false.", - "type": "string" - }, - "clusterIpv4CidrBlock": { - "description": "The IP address range for the cluster pod IPs. If this field is set, then\n`cluster.cluster_ipv4_cidr` must be left blank.\n\nThis field is only applicable when `use_ip_aliases` is true.\n\nSet to blank to have a range chosen with the default size.\n\nSet to /netmask (e.g. `/14`) to have a range chosen with a specific\nnetmask.\n\nSet to a\n[CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)\nnotation (e.g. `10.96.0.0/14`) from the RFC-1918 private networks (e.g.\n`10.0.0.0/8`, `172.16.0.0/12`, `192.168.0.0/16`) to pick a specific range\nto use.", - "type": "string" - }, - "nodeIpv4CidrBlock": { - "description": "The IP address range of the instance IPs in this cluster.\n\nThis is applicable only if `create_subnetwork` is true.\n\nSet to blank to have a range chosen with the default size.\n\nSet to /netmask (e.g. `/14`) to have a range chosen with a specific\nnetmask.\n\nSet to a\n[CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)\nnotation (e.g. `10.96.0.0/14`) from the RFC-1918 private networks (e.g.\n`10.0.0.0/8`, `172.16.0.0/12`, `192.168.0.0/16`) to pick a specific range\nto use.", - "type": "string" - }, - "servicesSecondaryRangeName": { - "description": "The name of the secondary range to be used as for the services\nCIDR block. The secondary range will be used for service\nClusterIPs. This must be an existing secondary range associated\nwith the cluster subnetwork.\n\nThis field is only applicable with use_ip_aliases and\ncreate_subnetwork is false.", - "type": "string" - }, - "useIpAliases": { - "description": "Whether alias IPs will be used for pod IPs in the cluster.", - "type": "boolean" - }, - "createSubnetwork": { - "description": "Whether a new subnetwork will be created automatically for the cluster.\n\nThis field is only applicable when `use_ip_aliases` is true.", - "type": "boolean" - }, - "subnetworkName": { - "description": "A custom subnetwork name to be used if `create_subnetwork` is true. If\nthis field is empty, then an automatic name will be chosen for the new\nsubnetwork.", - "type": "string" - }, - "clusterIpv4Cidr": { - "description": "This field is deprecated, use cluster_ipv4_cidr_block.", - "type": "string" - } - }, - "id": "IPAllocationPolicy" - }, - "HorizontalPodAutoscaling": { - "properties": { - "disabled": { - "description": "Whether the Horizontal Pod Autoscaling feature is enabled in the cluster.\nWhen enabled, it ensures that a Heapster pod is running in the cluster,\nwhich is also used by the Cloud Monitoring service.", - "type": "boolean" - } - }, - "id": "HorizontalPodAutoscaling", - "description": "Configuration options for the horizontal pod autoscaling feature, which\nincreases or decreases the number of replica pods a replication controller\nhas based on the resource usage of the existing pods.", - "type": "object" - }, - "SetNodePoolManagementRequest": { - "properties": { - "projectId": { - "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field is deprecated, use name instead.", - "type": "string" - }, - "management": { - "description": "NodeManagement configuration for the node pool.", - "$ref": "NodeManagement" - }, - "clusterId": { - "description": "The name of the cluster to update.\nThis field is deprecated, use name instead.", - "type": "string" - }, - "nodePoolId": { - "description": "The name of the node pool to update.\nThis field is deprecated, use name instead.", - "type": "string" - }, - "zone": { - "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field is deprecated, use name instead.", - "type": "string" - }, - "name": { - "description": "The name (project, location, cluster, node pool id) of the node pool to set\nmanagement properties. Specified in the format\n'projects/*/locations/*/clusters/*/nodePools/*'.", - "type": "string" - } - }, - "id": "SetNodePoolManagementRequest", - "description": "SetNodePoolManagementRequest sets the node management properties of a node\npool.", - "type": "object" - }, - "MasterAuthorizedNetworksConfig": { - "properties": { - "enabled": { - "description": "Whether or not master authorized networks is enabled.", - "type": "boolean" - }, - "cidrBlocks": { - "description": "cidr_blocks define up to 10 external networks that could access\nKubernetes master through HTTPS.", - "type": "array", - "items": { - "$ref": "CidrBlock" - } - } - }, - "id": "MasterAuthorizedNetworksConfig", - "description": "Configuration options for the master authorized networks feature. Enabled\nmaster authorized networks will disallow all external traffic to access\nKubernetes master through HTTPS except traffic from the given CIDR blocks,\nGoogle Compute Engine Public IPs and Google Prod IPs.", - "type": "object" - }, - "SetNodePoolAutoscalingRequest": { - "description": "SetNodePoolAutoscalingRequest sets the autoscaler settings of a node pool.", - "type": "object", - "properties": { - "name": { - "description": "The name (project, location, cluster, node pool) of the node pool to set\nautoscaler settings. Specified in the format\n'projects/*/locations/*/clusters/*/nodePools/*'.", - "type": "string" - }, - "autoscaling": { - "description": "Autoscaling configuration for the node pool.", - "$ref": "NodePoolAutoscaling" - }, - "projectId": { - "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field is deprecated, use name instead.", - "type": "string" - }, - "clusterId": { - "description": "The name of the cluster to upgrade.\nThis field is deprecated, use name instead.", - "type": "string" - }, - "nodePoolId": { - "description": "The name of the node pool to upgrade.\nThis field is deprecated, use name instead.", - "type": "string" - }, - "zone": { - "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field is deprecated, use name instead.", - "type": "string" - } - }, - "id": "SetNodePoolAutoscalingRequest" - }, - "CreateClusterRequest": { - "description": "CreateClusterRequest creates a cluster.", - "type": "object", - "properties": { - "zone": { - "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field is deprecated, use parent instead.", - "type": "string" - }, - "parent": { - "description": "The parent (project and location) where the cluster will be created.\nSpecified in the format 'projects/*/locations/*'.", - "type": "string" - }, - "projectId": { - "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field is deprecated, use parent instead.", - "type": "string" - }, - "cluster": { - "$ref": "Cluster", - "description": "A [cluster\nresource](/container-engine/reference/rest/v1beta1/projects.zones.clusters)" - } - }, - "id": "CreateClusterRequest" - }, - "UpdateNodePoolRequest": { - "description": "SetNodePoolVersionRequest updates the version of a node pool.", - "type": "object", - "properties": { - "nodePoolId": { - "description": "The name of the node pool to upgrade.\nThis field is deprecated, use name instead.", - "type": "string" - }, - "imageType": { - "description": "The desired image type for the node pool.", - "type": "string" - }, - "zone": { - "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field is deprecated, use name instead.", - "type": "string" - }, - "nodeVersion": { - "description": "The Kubernetes version to change the nodes to (typically an\nupgrade). Use `-` to upgrade to the latest version supported by\nthe server.", - "type": "string" - }, - "name": { - "description": "The name (project, location, cluster, node pool) of the node pool to update.\nSpecified in the format 'projects/*/locations/*/clusters/*/nodePools/*'.", - "type": "string" - }, - "projectId": { - "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field is deprecated, use name instead.", - "type": "string" - }, - "clusterId": { - "description": "The name of the cluster to upgrade.\nThis field is deprecated, use name instead.", - "type": "string" - } - }, - "id": "UpdateNodePoolRequest" - }, - "AcceleratorConfig": { - "properties": { - "acceleratorCount": { - "description": "The number of the accelerator cards exposed to an instance.", - "format": "int64", - "type": "string" - }, - "acceleratorType": { - "description": "The accelerator type resource name. List of supported accelerators\n[here](/compute/docs/gpus/#Introduction)", - "type": "string" - } - }, - "id": "AcceleratorConfig", - "description": "AcceleratorConfig represents a Hardware Accelerator request.", - "type": "object" - }, - "SetAddonsConfigRequest": { - "description": "SetAddonsRequest sets the addons associated with the cluster.", - "type": "object", - "properties": { - "projectId": { - "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field is deprecated, use name instead.", - "type": "string" - }, - "zone": { - "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field is deprecated, use name instead.", - "type": "string" - }, - "clusterId": { - "description": "The name of the cluster to upgrade.\nThis field is deprecated, use name instead.", - "type": "string" - }, - "addonsConfig": { - "description": "The desired configurations for the various addons available to run in the\ncluster.", - "$ref": "AddonsConfig" - }, - "name": { - "description": "The name (project, location, cluster) of the cluster to set addons.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", - "type": "string" - } - }, - "id": "SetAddonsConfigRequest" - }, "NodeTaint": { "description": "Kubernetes taint is comprised of three fields: key, value, and effect. Effect\ncan only be one of three types: NoSchedule, PreferNoSchedule or NoExecute.\n\nFor more information, including usage and the valid values, see:\nhttps://kubernetes.io/docs/concepts/configuration/taint-and-toleration/", - "type": "object", + "id": "NodeTaint", "properties": { - "value": { - "description": "Value for taint.", - "type": "string" - }, "effect": { - "enumDescriptions": [ - "Not set", - "NoSchedule", - "PreferNoSchedule", - "NoExecute" - ], + "description": "Effect for taint.", "enum": [ "EFFECT_UNSPECIFIED", "NO_SCHEDULE", "PREFER_NO_SCHEDULE", "NO_EXECUTE" ], - "description": "Effect for taint.", + "enumDescriptions": [ + "Not set", + "NoSchedule", + "PreferNoSchedule", + "NoExecute" + ], "type": "string" }, "key": { "description": "Key for taint.", "type": "string" - } - }, - "id": "NodeTaint" - }, - "SetLegacyAbacRequest": { - "properties": { - "zone": { - "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field is deprecated, use name instead.", - "type": "string" }, - "clusterId": { - "description": "The name of the cluster to update.\nThis field is deprecated, use name instead.", - "type": "string" - }, - "name": { - "description": "The name (project, location, cluster id) of the cluster to set legacy abac.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", - "type": "string" - }, - "enabled": { - "description": "Whether ABAC authorization will be enabled in the cluster.", - "type": "boolean" - }, - "projectId": { - "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field is deprecated, use name instead.", + "value": { + "description": "Value for taint.", "type": "string" } }, - "id": "SetLegacyAbacRequest", - "description": "SetLegacyAbacRequest enables or disables the ABAC authorization mechanism for\na cluster.", - "type": "object" - }, - "AddonsConfig": { - "description": "Configuration for the addons that can be automatically spun up in the\ncluster, enabling additional functionality.", - "type": "object", - "properties": { - "kubernetesDashboard": { - "$ref": "KubernetesDashboard", - "description": "Configuration for the Kubernetes Dashboard." - }, - "networkPolicyConfig": { - "description": "Configuration for NetworkPolicy. This only tracks whether the addon\nis enabled or not on the Master, it does not track whether network policy\nis enabled for the nodes.", - "$ref": "NetworkPolicyConfig" - }, - "horizontalPodAutoscaling": { - "$ref": "HorizontalPodAutoscaling", - "description": "Configuration for the horizontal pod autoscaling feature, which\nincreases or decreases the number of replica pods a replication controller\nhas based on the resource usage of the existing pods." - }, - "httpLoadBalancing": { - "description": "Configuration for the HTTP (L7) load balancing controller addon, which\nmakes it easy to set up HTTP load balancers for services in a cluster.", - "$ref": "HttpLoadBalancing" - } - }, - "id": "AddonsConfig" - }, - "SetLocationsRequest": { - "description": "SetLocationsRequest sets the locations of the cluster.", - "type": "object", - "properties": { - "zone": { - "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field is deprecated, use name instead.", - "type": "string" - }, - "locations": { - "description": "The desired list of Google Compute Engine\n[locations](/compute/docs/zones#available) in which the cluster's nodes\nshould be located. Changing the locations a cluster is in will result\nin nodes being either created or removed from the cluster, depending on\nwhether locations are being added or removed.\n\nThis list must always include the cluster's primary zone.", - "type": "array", - "items": { - "type": "string" - } - }, - "clusterId": { - "description": "The name of the cluster to upgrade.\nThis field is deprecated, use name instead.", - "type": "string" - }, - "name": { - "description": "The name (project, location, cluster) of the cluster to set locations.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", - "type": "string" - }, - "projectId": { - "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field is deprecated, use name instead.", - "type": "string" - } - }, - "id": "SetLocationsRequest" - }, - "SetNodePoolSizeRequest": { - "description": "SetNodePoolSizeRequest sets the size a node\npool.", - "type": "object", - "properties": { - "name": { - "description": "The name (project, location, cluster, node pool id) of the node pool to set\nsize.\nSpecified in the format 'projects/*/locations/*/clusters/*/nodePools/*'.", - "type": "string" - }, - "projectId": { - "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).", - "type": "string" - }, - "clusterId": { - "description": "The name of the cluster to update.\nThis field is deprecated, use name instead.", - "type": "string" - }, - "nodePoolId": { - "description": "The name of the node pool to update.\nThis field is deprecated, use name instead.", - "type": "string" - }, - "zone": { - "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field is deprecated, use name instead.", - "type": "string" - }, - "nodeCount": { - "description": "The desired node count for the pool.", - "format": "int32", - "type": "integer" - } - }, - "id": "SetNodePoolSizeRequest" - }, - "NetworkPolicyConfig": { - "properties": { - "disabled": { - "description": "Whether NetworkPolicy is enabled for this cluster.", - "type": "boolean" - } - }, - "id": "NetworkPolicyConfig", - "description": "Configuration for NetworkPolicy. This only tracks whether the addon\nis enabled or not on the Master, it does not track whether network policy\nis enabled for the nodes.", - "type": "object" - }, - "UpdateClusterRequest": { - "properties": { - "update": { - "$ref": "ClusterUpdate", - "description": "A description of the update." - }, - "name": { - "description": "The name (project, location, cluster) of the cluster to update.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", - "type": "string" - }, - "projectId": { - "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field is deprecated, use name instead.", - "type": "string" - }, - "zone": { - "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field is deprecated, use name instead.", - "type": "string" - }, - "clusterId": { - "description": "The name of the cluster to upgrade.\nThis field is deprecated, use name instead.", - "type": "string" - } - }, - "id": "UpdateClusterRequest", - "description": "UpdateClusterRequest updates the settings of a cluster.", - "type": "object" - }, - "Cluster": { - "description": "A Google Kubernetes Engine cluster.", - "type": "object", - "properties": { - "clusterIpv4Cidr": { - "description": "The IP address range of the container pods in this cluster, in\n[CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)\nnotation (e.g. `10.96.0.0/14`). Leave blank to have\none automatically chosen or specify a `/14` block in `10.0.0.0/8`.", - "type": "string" - }, - "initialNodeCount": { - "description": "The number of nodes to create in this cluster. You must ensure that your\nCompute Engine \u003ca href=\"/compute/docs/resource-quotas\"\u003eresource quota\u003c/a\u003e\nis sufficient for this number of instances. You must also have available\nfirewall and routes quota.\nFor requests, this field should only be used in lieu of a\n\"node_pool\" object, since this configuration (along with the\n\"node_config\") will be used to create a \"NodePool\" object with an\nauto-generated name. Do not use this and a node_pool at the same time.", - "format": "int32", - "type": "integer" - }, - "nodePools": { - "description": "The node pools associated with this cluster.\nThis field should not be set if \"node_config\" or \"initial_node_count\" are\nspecified.", - "type": "array", - "items": { - "$ref": "NodePool" - } - }, - "locations": { - "description": "The list of Google Compute Engine\n[locations](/compute/docs/zones#available) in which the cluster's nodes\nshould be located.", - "type": "array", - "items": { - "type": "string" - } - }, - "selfLink": { - "description": "[Output only] Server-defined URL for the resource.", - "type": "string" - }, - "instanceGroupUrls": { - "description": "Deprecated. Use node_pools.instance_group_urls.", - "type": "array", - "items": { - "type": "string" - } - }, - "servicesIpv4Cidr": { - "description": "[Output only] The IP address range of the Kubernetes services in\nthis cluster, in\n[CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)\nnotation (e.g. `1.2.3.4/29`). Service addresses are\ntypically put in the last `/16` from the container CIDR.", - "type": "string" - }, - "networkPolicy": { - "$ref": "NetworkPolicy", - "description": "Configuration options for the NetworkPolicy feature." - }, - "enableKubernetesAlpha": { - "description": "Kubernetes alpha features are enabled on this cluster. This includes alpha\nAPI groups (e.g. v1beta1) and features that may not be production ready in\nthe kubernetes version of the master and nodes.\nThe cluster has no SLA for uptime and master/node upgrades are disabled.\nAlpha enabled clusters are automatically deleted thirty days after\ncreation.", - "type": "boolean" - }, - "description": { - "description": "An optional description of this cluster.", - "type": "string" - }, - "currentNodeCount": { - "description": "[Output only] The number of nodes currently in the cluster.", - "format": "int32", - "type": "integer" - }, - "monitoringService": { - "description": "The monitoring service the cluster should use to write metrics.\nCurrently available options:\n\n* `monitoring.googleapis.com` - the Google Cloud Monitoring service.\n* `none` - no metrics will be exported from the cluster.\n* if left as an empty string, `monitoring.googleapis.com` will be used.", - "type": "string" - }, - "network": { - "description": "The name of the Google Compute Engine\n[network](/compute/docs/networks-and-firewalls#networks) to which the\ncluster is connected. If left unspecified, the `default` network\nwill be used.", - "type": "string" - }, - "zone": { - "description": "[Output only] The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field is deprecated, use location instead.", - "type": "string" - }, - "loggingService": { - "description": "The logging service the cluster should use to write logs.\nCurrently available options:\n\n* `logging.googleapis.com` - the Google Cloud Logging service.\n* `none` - no logs will be exported from the cluster.\n* if left as an empty string,`logging.googleapis.com` will be used.", - "type": "string" - }, - "nodeIpv4CidrSize": { - "description": "[Output only] The size of the address space on each node for hosting\ncontainers. This is provisioned from within the `container_ipv4_cidr`\nrange.", - "format": "int32", - "type": "integer" - }, - "expireTime": { - "description": "[Output only] The time the cluster will be automatically\ndeleted in [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.", - "type": "string" - }, - "masterAuthorizedNetworksConfig": { - "description": "The configuration options for master authorized networks feature.", - "$ref": "MasterAuthorizedNetworksConfig" - }, - "statusMessage": { - "description": "[Output only] Additional information about the current status of this\ncluster, if available.", - "type": "string" - }, - "masterAuth": { - "$ref": "MasterAuth", - "description": "The authentication information for accessing the master endpoint." - }, - "currentMasterVersion": { - "description": "[Output only] The current software version of the master endpoint.", - "type": "string" - }, - "nodeConfig": { - "description": "Parameters used in creating the cluster's nodes.\nSee `nodeConfig` for the description of its properties.\nFor requests, this field should only be used in lieu of a\n\"node_pool\" object, since this configuration (along with the\n\"initial_node_count\") will be used to create a \"NodePool\" object with an\nauto-generated name. Do not use this and a node_pool at the same time.\nFor responses, this field will be populated with the node configuration of\nthe first node pool.\n\nIf unspecified, the defaults are used.", - "$ref": "NodeConfig" - }, - "podSecurityPolicyConfig": { - "description": "Configuration for the PodSecurityPolicy feature.", - "$ref": "PodSecurityPolicyConfig" - }, - "addonsConfig": { - "description": "Configurations for the various addons available to run in the cluster.", - "$ref": "AddonsConfig" - }, - "status": { - "enum": [ - "STATUS_UNSPECIFIED", - "PROVISIONING", - "RUNNING", - "RECONCILING", - "STOPPING", - "ERROR" - ], - "description": "[Output only] The current status of this cluster.", - "type": "string", - "enumDescriptions": [ - "Not set.", - "The PROVISIONING state indicates the cluster is being created.", - "The RUNNING state indicates the cluster has been created and is fully\nusable.", - "The RECONCILING state indicates that some work is actively being done on\nthe cluster, such as upgrading the master or node software. Details can\nbe found in the `statusMessage` field.", - "The STOPPING state indicates the cluster is being deleted.", - "The ERROR state indicates the cluster may be unusable. Details\ncan be found in the `statusMessage` field." - ] - }, - "currentNodeVersion": { - "description": "[Output only] The current version of the node software components.\nIf they are currently at multiple versions because they're in the process\nof being upgraded, this reflects the minimum version of all nodes.", - "type": "string" - }, - "subnetwork": { - "description": "The name of the Google Compute Engine\n[subnetwork](/compute/docs/subnetworks) to which the\ncluster is connected.", - "type": "string" - }, - "name": { - "description": "The name of this cluster. The name must be unique within this project\nand zone, and can be up to 40 characters with the following restrictions:\n\n* Lowercase letters, numbers, and hyphens only.\n* Must start with a letter.\n* Must end with a number or a letter.", - "type": "string" - }, - "maintenancePolicy": { - "description": "Configure the maintenance policy for this cluster.", - "$ref": "MaintenancePolicy" - }, - "initialClusterVersion": { - "description": "The initial Kubernetes version for this cluster. Valid versions are those\nfound in validMasterVersions returned by getServerConfig. The version can\nbe upgraded over time; such upgrades are reflected in\ncurrentMasterVersion and currentNodeVersion.", - "type": "string" - }, - "ipAllocationPolicy": { - "$ref": "IPAllocationPolicy", - "description": "Configuration for cluster IP allocation." - }, - "endpoint": { - "description": "[Output only] The IP address of this cluster's master endpoint.\nThe endpoint can be accessed from the internet at\n`https://username:password@endpoint/`.\n\nSee the `masterAuth` property of this resource for username and\npassword information.", - "type": "string" - }, - "location": { - "description": "[Output only] The name of the Google Compute Engine\n[zone](/compute/docs/regions-zones/regions-zones#available) or\n[region](/compute/docs/regions-zones/regions-zones#available) in which\nthe cluster resides.", - "type": "string" - }, - "createTime": { - "description": "[Output only] The time the cluster was created, in\n[RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.", - "type": "string" - } - }, - "id": "Cluster" - }, - "CreateNodePoolRequest": { - "description": "CreateNodePoolRequest creates a node pool for a cluster.", - "type": "object", - "properties": { - "projectId": { - "description": "The Google Developers Console [project ID or project\nnumber](https://developers.google.com/console/help/new/#projectnumber).\nThis field is deprecated, use parent instead.", - "type": "string" - }, - "zone": { - "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field is deprecated, use parent instead.", - "type": "string" - }, - "clusterId": { - "description": "The name of the cluster.\nThis field is deprecated, use parent instead.", - "type": "string" - }, - "nodePool": { - "description": "The node pool to create.", - "$ref": "NodePool" - }, - "parent": { - "description": "The parent (project, location, cluster id) where the node pool will be created.\nSpecified in the format 'projects/*/locations/*/clusters/*/nodePools/*'.", - "type": "string" - } - }, - "id": "CreateNodePoolRequest" - }, - "MasterAuth": { - "description": "The authentication information for accessing the master endpoint.\nAuthentication can be done using HTTP basic auth or using client\ncertificates.", - "type": "object", - "properties": { - "password": { - "description": "The password to use for HTTP basic authentication to the master endpoint.\nBecause the master endpoint is open to the Internet, you should create a\nstrong password. If a password is provided for cluster creation, username\nmust be non-empty.", - "type": "string" - }, - "clientCertificateConfig": { - "description": "Configuration for client certificate authentication on the cluster. If no\nconfiguration is specified, a client certificate is issued.", - "$ref": "ClientCertificateConfig" - }, - "clientKey": { - "description": "[Output only] Base64-encoded private key used by clients to authenticate\nto the cluster endpoint.", - "type": "string" - }, - "clusterCaCertificate": { - "description": "[Output only] Base64-encoded public certificate that is the root of\ntrust for the cluster.", - "type": "string" - }, - "clientCertificate": { - "description": "[Output only] Base64-encoded public certificate used by clients to\nauthenticate to the cluster endpoint.", - "type": "string" - }, - "username": { - "description": "The username to use for HTTP basic authentication to the master endpoint.\nFor clusters v1.6.0 and later, you can disable basic authentication by\nproviding an empty username.", - "type": "string" - } - }, - "id": "MasterAuth" - }, - "DailyMaintenanceWindow": { - "description": "Time window specified for daily maintenance operations.", - "type": "object", - "properties": { - "duration": { - "description": "[Output only] Duration of the time window, automatically chosen to be\nsmallest possible in the given scenario.", - "type": "string" - }, - "startTime": { - "description": "Time within the maintenance window to start the maintenance operations.\nIt must be in format \"HH:MM”, where HH : [00-23] and MM : [00-59] GMT.", - "type": "string" - } - }, - "id": "DailyMaintenanceWindow" - }, - "MaintenancePolicy": { - "description": "MaintenancePolicy defines the maintenance policy to be used for the cluster.", - "type": "object", - "properties": { - "window": { - "description": "Specifies the maintenance window in which maintenance may be performed.", - "$ref": "MaintenanceWindow" - } - }, - "id": "MaintenancePolicy" - }, - "ClientCertificateConfig": { - "properties": { - "issueClientCertificate": { - "description": "Issue a client certificate.", - "type": "boolean" - } - }, - "id": "ClientCertificateConfig", - "description": "Configuration for client certificates on the cluster.", - "type": "object" - }, - "SetLoggingServiceRequest": { - "description": "SetLoggingServiceRequest sets the logging service of a cluster.", - "type": "object", - "properties": { - "loggingService": { - "description": "The logging service the cluster should use to write metrics.\nCurrently available options:\n\n* \"logging.googleapis.com\" - the Google Cloud Logging service\n* \"none\" - no metrics will be exported from the cluster", - "type": "string" - }, - "name": { - "description": "The name (project, location, cluster) of the cluster to set logging.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", - "type": "string" - }, - "projectId": { - "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field is deprecated, use name instead.", - "type": "string" - }, - "zone": { - "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.", - "type": "string" - }, - "clusterId": { - "description": "The name of the cluster to upgrade.\nThis field is deprecated, use name instead.", - "type": "string" - } - }, - "id": "SetLoggingServiceRequest" - }, - "SetMaintenancePolicyRequest": { - "description": "SetMaintenancePolicyRequest sets the maintenance policy for a cluster.", - "type": "object", - "properties": { - "zone": { - "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.", - "type": "string" - }, - "clusterId": { - "description": "The name of the cluster to update.", - "type": "string" - }, - "maintenancePolicy": { - "$ref": "MaintenancePolicy", - "description": "The maintenance policy to be set for the cluster. An empty field\nclears the existing maintenance policy." - }, - "name": { - "description": "The name (project, location, cluster id) of the cluster to set maintenance\npolicy.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", - "type": "string" - }, - "projectId": { - "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).", - "type": "string" - } - }, - "id": "SetMaintenancePolicyRequest" - }, - "Empty": { - "properties": {}, - "id": "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 `{}`.", - "type": "object" - }, - "WorkloadMetadataConfig": { - "description": "WorkloadMetadataConfig defines the metadata configuration to expose to\nworkloads on the node pool.", - "type": "object", - "properties": { - "nodeMetadata": { - "enumDescriptions": [ - "Not set.", - "Expose only a secure subset of metadata to pods. Currently, this blocks\nkube-env, but exposes all other metadata.", - "Expose all GCE metadata to pods." - ], - "enum": [ - "UNSPECIFIED", - "SECURE", - "EXPOSE" - ], - "description": "NodeMetadata is the configuration for if and how to expose the node\nmetadata to the workload running on the node.", - "type": "string" - } - }, - "id": "WorkloadMetadataConfig" - }, - "ListNodePoolsResponse": { - "description": "ListNodePoolsResponse is the result of ListNodePoolsRequest.", - "type": "object", - "properties": { - "nodePools": { - "description": "A list of node pools for a cluster.", - "type": "array", - "items": { - "$ref": "NodePool" - } - } - }, - "id": "ListNodePoolsResponse" - }, - "CompleteIPRotationRequest": { - "description": "CompleteIPRotationRequest moves the cluster master back into single-IP mode.", - "type": "object", - "properties": { - "projectId": { - "description": "The Google Developers Console [project ID or project\nnumber](https://developers.google.com/console/help/new/#projectnumber).\nThis field is deprecated, use name instead.", - "type": "string" - }, - "zone": { - "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field is deprecated, use name instead.", - "type": "string" - }, - "clusterId": { - "description": "The name of the cluster.\nThis field is deprecated, use name instead.", - "type": "string" - }, - "name": { - "description": "The name (project, location, cluster id) of the cluster to complete IP rotation.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", - "type": "string" - } - }, - "id": "CompleteIPRotationRequest" - }, - "StartIPRotationRequest": { - "description": "StartIPRotationRequest creates a new IP for the cluster and then performs\na node upgrade on each node pool to point to the new IP.", - "type": "object", - "properties": { - "name": { - "description": "The name (project, location, cluster id) of the cluster to start IP rotation.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", - "type": "string" - }, - "projectId": { - "description": "The Google Developers Console [project ID or project\nnumber](https://developers.google.com/console/help/new/#projectnumber).\nThis field is deprecated, use name instead.", - "type": "string" - }, - "zone": { - "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field is deprecated, use name instead.", - "type": "string" - }, - "clusterId": { - "description": "The name of the cluster.\nThis field is deprecated, use name instead.", - "type": "string" - } - }, - "id": "StartIPRotationRequest" - }, - "NodePool": { - "description": "NodePool contains the name and configuration for a cluster's node pool.\nNode pools are a set of nodes (i.e. VM's), with a common configuration and\nspecification, under the control of the cluster master. They may have a set\nof Kubernetes labels applied to them, which may be used to reference them\nduring pod scheduling. They may also be resized up or down, to accommodate\nthe workload.", - "type": "object", - "properties": { - "selfLink": { - "description": "[Output only] Server-defined URL for the resource.", - "type": "string" - }, - "version": { - "description": "The version of the Kubernetes of this node.", - "type": "string" - }, - "instanceGroupUrls": { - "description": "[Output only] The resource URLs of the [managed instance\ngroups](/compute/docs/instance-groups/creating-groups-of-managed-instances)\nassociated with this node pool.", - "type": "array", - "items": { - "type": "string" - } - }, - "status": { - "enumDescriptions": [ - "Not set.", - "The PROVISIONING state indicates the node pool is being created.", - "The RUNNING state indicates the node pool has been created\nand is fully usable.", - "The RUNNING_WITH_ERROR state indicates the node pool has been created\nand is partially usable. Some error state has occurred and some\nfunctionality may be impaired. Customer may need to reissue a request\nor trigger a new update.", - "The RECONCILING state indicates that some work is actively being done on\nthe node pool, such as upgrading node software. Details can\nbe found in the `statusMessage` field.", - "The STOPPING state indicates the node pool is being deleted.", - "The ERROR state indicates the node pool may be unusable. Details\ncan be found in the `statusMessage` field." - ], - "enum": [ - "STATUS_UNSPECIFIED", - "PROVISIONING", - "RUNNING", - "RUNNING_WITH_ERROR", - "RECONCILING", - "STOPPING", - "ERROR" - ], - "description": "[Output only] The status of the nodes in this pool instance.", - "type": "string" - }, - "config": { - "description": "The node configuration of the pool.", - "$ref": "NodeConfig" - }, - "statusMessage": { - "description": "[Output only] Additional information about the current status of this\nnode pool instance, if available.", - "type": "string" - }, - "name": { - "description": "The name of the node pool.", - "type": "string" - }, - "autoscaling": { - "description": "Autoscaler configuration for this NodePool. Autoscaler is enabled\nonly if a valid configuration is present.", - "$ref": "NodePoolAutoscaling" - }, - "initialNodeCount": { - "description": "The initial node count for the pool. You must ensure that your\nCompute Engine \u003ca href=\"/compute/docs/resource-quotas\"\u003eresource quota\u003c/a\u003e\nis sufficient for this number of instances. You must also have available\nfirewall and routes quota.", - "format": "int32", - "type": "integer" - }, - "management": { - "description": "NodeManagement configuration for this NodePool.", - "$ref": "NodeManagement" - } - }, - "id": "NodePool" - }, - "SetLabelsRequest": { - "properties": { - "zone": { - "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field is deprecated, use name instead.", - "type": "string" - }, - "name": { - "description": "The name (project, location, cluster id) of the cluster to set labels.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", - "type": "string" - }, - "resourceLabels": { - "additionalProperties": { - "type": "string" - }, - "description": "The labels to set for that cluster.", - "type": "object" - }, - "projectId": { - "description": "The Google Developers Console [project ID or project\nnumber](https://developers.google.com/console/help/new/#projectnumber).\nThis field is deprecated, use name instead.", - "type": "string" - }, - "clusterId": { - "description": "The name of the cluster.\nThis field is deprecated, use name instead.", - "type": "string" - }, - "labelFingerprint": { - "description": "The fingerprint of the previous set of labels for this resource,\nused to detect conflicts. The fingerprint is initially generated by\nKubernetes Engine and changes after every request to modify or update\nlabels. You must always provide an up-to-date fingerprint hash when\nupdating or changing labels. Make a \u003ccode\u003eget()\u003c/code\u003e request to the\nresource to get the latest fingerprint.", - "type": "string" - } - }, - "id": "SetLabelsRequest", - "description": "SetLabelsRequest sets the Google Cloud Platform labels on a Google Container\nEngine cluster, which will in turn set them for Google Compute Engine\nresources used by that cluster", - "type": "object" - }, - "NodeManagement": { - "description": "NodeManagement defines the set of node management services turned on for the\nnode pool.", - "type": "object", - "properties": { - "autoUpgrade": { - "description": "Whether the nodes will be automatically upgraded.", - "type": "boolean" - }, - "autoRepair": { - "description": "Whether the nodes will be automatically repaired.", - "type": "boolean" - }, - "upgradeOptions": { - "$ref": "AutoUpgradeOptions", - "description": "Specifies the Auto Upgrade knobs for the node pool." - } - }, - "id": "NodeManagement" - }, - "CancelOperationRequest": { - "description": "CancelOperationRequest cancels a single operation.", - "type": "object", - "properties": { - "name": { - "description": "The name (project, location, operation id) of the operation to cancel.\nSpecified in the format 'projects/*/locations/*/operations/*'.", - "type": "string" - }, - "operationId": { - "description": "The server-assigned `name` of the operation.\nThis field is deprecated, use name instead.", - "type": "string" - }, - "projectId": { - "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field is deprecated, use name instead.", - "type": "string" - }, - "zone": { - "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the operation resides.\nThis field is deprecated, use name instead.", - "type": "string" - } - }, - "id": "CancelOperationRequest" - }, - "KubernetesDashboard": { - "properties": { - "disabled": { - "description": "Whether the Kubernetes Dashboard is enabled for this cluster.", - "type": "boolean" - } - }, - "id": "KubernetesDashboard", - "description": "Configuration for the Kubernetes Dashboard.", "type": "object" }, "Operation": { "description": "This operation resource represents operations that may have happened or are\nhappening on the cluster. All fields are output only.", - "type": "object", + "id": "Operation", "properties": { - "selfLink": { - "description": "Server-defined URL for the resource.", + "detail": { + "description": "Detailed operation progress, if available.", "type": "string" }, "endTime": { @@ -3825,17 +3317,31 @@ "description": "[Output only] The name of the Google Compute Engine\n[zone](/compute/docs/regions-zones/regions-zones#available) or\n[region](/compute/docs/regions-zones/regions-zones#available) in which\nthe cluster resides.", "type": "string" }, - "targetLink": { - "description": "Server-defined URL for the target of the operation.", - "type": "string" - }, - "detail": { - "description": "Detailed operation progress, if available.", + "name": { + "description": "The server-assigned ID for the operation.", "type": "string" }, "operationType": { "description": "The operation type.", - "type": "string", + "enum": [ + "TYPE_UNSPECIFIED", + "CREATE_CLUSTER", + "DELETE_CLUSTER", + "UPGRADE_MASTER", + "UPGRADE_NODES", + "REPAIR_CLUSTER", + "UPDATE_CLUSTER", + "CREATE_NODE_POOL", + "DELETE_NODE_POOL", + "SET_NODE_POOL_MANAGEMENT", + "AUTO_REPAIR_NODES", + "AUTO_UPGRADE_NODES", + "SET_LABELS", + "SET_MASTER_AUTH", + "SET_NODE_POOL_SIZE", + "SET_NETWORK_POLICY", + "SET_MAINTENANCE_POLICY" + ], "enumDescriptions": [ "Not set.", "Cluster create.", @@ -3855,42 +3361,18 @@ "Updates network policy for a cluster.", "Set the maintenance policy." ], - "enum": [ - "TYPE_UNSPECIFIED", - "CREATE_CLUSTER", - "DELETE_CLUSTER", - "UPGRADE_MASTER", - "UPGRADE_NODES", - "REPAIR_CLUSTER", - "UPDATE_CLUSTER", - "CREATE_NODE_POOL", - "DELETE_NODE_POOL", - "SET_NODE_POOL_MANAGEMENT", - "AUTO_REPAIR_NODES", - "AUTO_UPGRADE_NODES", - "SET_LABELS", - "SET_MASTER_AUTH", - "SET_NODE_POOL_SIZE", - "SET_NETWORK_POLICY", - "SET_MAINTENANCE_POLICY" - ] + "type": "string" + }, + "selfLink": { + "description": "Server-defined URL for the resource.", + "type": "string" }, "startTime": { "description": "[Output only] The time the operation started, in\n[RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.", "type": "string" }, - "zone": { - "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the operation\nis taking place.\nThis field is deprecated, use location instead.", - "type": "string" - }, "status": { - "enumDescriptions": [ - "Not set.", - "The operation has been created.", - "The operation is currently running.", - "The operation is done, either cancelled or completed.", - "The operation is aborting." - ], + "description": "The current status of the operation.", "enum": [ "STATUS_UNSPECIFIED", "PENDING", @@ -3898,49 +3380,603 @@ "DONE", "ABORTING" ], - "description": "The current status of the operation.", - "type": "string" - }, - "name": { - "description": "The server-assigned ID for the operation.", + "enumDescriptions": [ + "Not set.", + "The operation has been created.", + "The operation is currently running.", + "The operation is done, either cancelled or completed.", + "The operation is aborting." + ], "type": "string" }, "statusMessage": { "description": "If an error has occurred, a textual description of the error.", "type": "string" + }, + "targetLink": { + "description": "Server-defined URL for the target of the operation.", + "type": "string" + }, + "zone": { + "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the operation\nis taking place.\nThis field is deprecated, use location instead.", + "type": "string" } }, - "id": "Operation" + "type": "object" }, - "MaintenanceWindow": { + "PodSecurityPolicyConfig": { + "description": "Configuration for the PodSecurityPolicy feature.", + "id": "PodSecurityPolicyConfig", "properties": { - "dailyMaintenanceWindow": { - "description": "DailyMaintenanceWindow specifies a daily maintenance operation window.", - "$ref": "DailyMaintenanceWindow" + "enabled": { + "description": "Enable the PodSecurityPolicy controller for this cluster. If enabled, pods\nmust be valid under a PodSecurityPolicy to be created.", + "type": "boolean" + } + }, + "type": "object" + }, + "RollbackNodePoolUpgradeRequest": { + "description": "RollbackNodePoolUpgradeRequest rollbacks the previously Aborted or Failed\nNodePool upgrade. This will be an no-op if the last upgrade successfully\ncompleted.", + "id": "RollbackNodePoolUpgradeRequest", + "properties": { + "clusterId": { + "description": "Deprecated. The name of the cluster to rollback.\nThis field has been deprecated and replaced by the name field.", + "type": "string" + }, + "name": { + "description": "The name (project, location, cluster, node pool id) of the node poll to\nrollback upgrade.\nSpecified in the format 'projects/*/locations/*/clusters/*/nodePools/*'.", + "type": "string" + }, + "nodePoolId": { + "description": "Deprecated. The name of the node pool to rollback.\nThis field has been deprecated and replaced by the name field.", + "type": "string" + }, + "projectId": { + "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field has been deprecated and replaced by the name field.", + "type": "string" + }, + "zone": { + "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the name field.", + "type": "string" + } + }, + "type": "object" + }, + "ServerConfig": { + "description": "Kubernetes Engine service configuration.", + "id": "ServerConfig", + "properties": { + "defaultClusterVersion": { + "description": "Version of Kubernetes the service deploys by default.", + "type": "string" + }, + "defaultImageType": { + "description": "Default image type.", + "type": "string" + }, + "validImageTypes": { + "description": "List of valid image types.", + "items": { + "type": "string" + }, + "type": "array" + }, + "validMasterVersions": { + "description": "List of valid master versions.", + "items": { + "type": "string" + }, + "type": "array" + }, + "validNodeVersions": { + "description": "List of valid node upgrade target versions.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "SetAddonsConfigRequest": { + "description": "SetAddonsRequest sets the addons associated with the cluster.", + "id": "SetAddonsConfigRequest", + "properties": { + "addonsConfig": { + "$ref": "AddonsConfig", + "description": "The desired configurations for the various addons available to run in the\ncluster." + }, + "clusterId": { + "description": "Deprecated. The name of the cluster to upgrade.\nThis field has been deprecated and replaced by the name field.", + "type": "string" + }, + "name": { + "description": "The name (project, location, cluster) of the cluster to set addons.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", + "type": "string" + }, + "projectId": { + "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field has been deprecated and replaced by the name field.", + "type": "string" + }, + "zone": { + "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the name field.", + "type": "string" + } + }, + "type": "object" + }, + "SetLabelsRequest": { + "description": "SetLabelsRequest sets the Google Cloud Platform labels on a Google Container\nEngine cluster, which will in turn set them for Google Compute Engine\nresources used by that cluster", + "id": "SetLabelsRequest", + "properties": { + "clusterId": { + "description": "Deprecated. The name of the cluster.\nThis field has been deprecated and replaced by the name field.", + "type": "string" + }, + "labelFingerprint": { + "description": "The fingerprint of the previous set of labels for this resource,\nused to detect conflicts. The fingerprint is initially generated by\nKubernetes Engine and changes after every request to modify or update\nlabels. You must always provide an up-to-date fingerprint hash when\nupdating or changing labels. Make a \u003ccode\u003eget()\u003c/code\u003e request to the\nresource to get the latest fingerprint.", + "type": "string" + }, + "name": { + "description": "The name (project, location, cluster id) of the cluster to set labels.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", + "type": "string" + }, + "projectId": { + "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://developers.google.com/console/help/new/#projectnumber).\nThis field has been deprecated and replaced by the name field.", + "type": "string" + }, + "resourceLabels": { + "additionalProperties": { + "type": "string" + }, + "description": "The labels to set for that cluster.", + "type": "object" + }, + "zone": { + "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the name field.", + "type": "string" + } + }, + "type": "object" + }, + "SetLegacyAbacRequest": { + "description": "SetLegacyAbacRequest enables or disables the ABAC authorization mechanism for\na cluster.", + "id": "SetLegacyAbacRequest", + "properties": { + "clusterId": { + "description": "Deprecated. The name of the cluster to update.\nThis field has been deprecated and replaced by the name field.", + "type": "string" + }, + "enabled": { + "description": "Whether ABAC authorization will be enabled in the cluster.", + "type": "boolean" + }, + "name": { + "description": "The name (project, location, cluster id) of the cluster to set legacy abac.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", + "type": "string" + }, + "projectId": { + "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field has been deprecated and replaced by the name field.", + "type": "string" + }, + "zone": { + "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the name field.", + "type": "string" + } + }, + "type": "object" + }, + "SetLocationsRequest": { + "description": "SetLocationsRequest sets the locations of the cluster.", + "id": "SetLocationsRequest", + "properties": { + "clusterId": { + "description": "Deprecated. The name of the cluster to upgrade.\nThis field has been deprecated and replaced by the name field.", + "type": "string" + }, + "locations": { + "description": "The desired list of Google Compute Engine\n[locations](/compute/docs/zones#available) in which the cluster's nodes\nshould be located. Changing the locations a cluster is in will result\nin nodes being either created or removed from the cluster, depending on\nwhether locations are being added or removed.\n\nThis list must always include the cluster's primary zone.", + "items": { + "type": "string" + }, + "type": "array" + }, + "name": { + "description": "The name (project, location, cluster) of the cluster to set locations.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", + "type": "string" + }, + "projectId": { + "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field has been deprecated and replaced by the name field.", + "type": "string" + }, + "zone": { + "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the name field.", + "type": "string" + } + }, + "type": "object" + }, + "SetLoggingServiceRequest": { + "description": "SetLoggingServiceRequest sets the logging service of a cluster.", + "id": "SetLoggingServiceRequest", + "properties": { + "clusterId": { + "description": "Deprecated. The name of the cluster to upgrade.\nThis field has been deprecated and replaced by the name field.", + "type": "string" + }, + "loggingService": { + "description": "The logging service the cluster should use to write metrics.\nCurrently available options:\n\n* \"logging.googleapis.com\" - the Google Cloud Logging service\n* \"none\" - no metrics will be exported from the cluster", + "type": "string" + }, + "name": { + "description": "The name (project, location, cluster) of the cluster to set logging.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", + "type": "string" + }, + "projectId": { + "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field has been deprecated and replaced by the name field.", + "type": "string" + }, + "zone": { + "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the name field.", + "type": "string" + } + }, + "type": "object" + }, + "SetMaintenancePolicyRequest": { + "description": "SetMaintenancePolicyRequest sets the maintenance policy for a cluster.", + "id": "SetMaintenancePolicyRequest", + "properties": { + "clusterId": { + "description": "The name of the cluster to update.", + "type": "string" + }, + "maintenancePolicy": { + "$ref": "MaintenancePolicy", + "description": "The maintenance policy to be set for the cluster. An empty field\nclears the existing maintenance policy." + }, + "name": { + "description": "The name (project, location, cluster id) of the cluster to set maintenance\npolicy.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", + "type": "string" + }, + "projectId": { + "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).", + "type": "string" + }, + "zone": { + "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.", + "type": "string" + } + }, + "type": "object" + }, + "SetMasterAuthRequest": { + "description": "SetMasterAuthRequest updates the admin password of a cluster.", + "id": "SetMasterAuthRequest", + "properties": { + "action": { + "description": "The exact form of action to be taken on the master auth.", + "enum": [ + "UNKNOWN", + "SET_PASSWORD", + "GENERATE_PASSWORD", + "SET_USERNAME" + ], + "enumDescriptions": [ + "Operation is unknown and will error out.", + "Set the password to a user generated value.", + "Generate a new password and set it to that.", + "Set the username. If an empty username is provided, basic authentication\nis disabled for the cluster. If a non-empty username is provided, basic\nauthentication is enabled, with either a provided password or a generated\none." + ], + "type": "string" + }, + "clusterId": { + "description": "Deprecated. The name of the cluster to upgrade.\nThis field has been deprecated and replaced by the name field.", + "type": "string" + }, + "name": { + "description": "The name (project, location, cluster) of the cluster to set auth.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", + "type": "string" + }, + "projectId": { + "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field has been deprecated and replaced by the name field.", + "type": "string" + }, + "update": { + "$ref": "MasterAuth", + "description": "A description of the update." + }, + "zone": { + "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the name field.", + "type": "string" + } + }, + "type": "object" + }, + "SetMonitoringServiceRequest": { + "description": "SetMonitoringServiceRequest sets the monitoring service of a cluster.", + "id": "SetMonitoringServiceRequest", + "properties": { + "clusterId": { + "description": "Deprecated. The name of the cluster to upgrade.\nThis field has been deprecated and replaced by the name field.", + "type": "string" + }, + "monitoringService": { + "description": "The monitoring service the cluster should use to write metrics.\nCurrently available options:\n\n* \"monitoring.googleapis.com\" - the Google Cloud Monitoring service\n* \"none\" - no metrics will be exported from the cluster", + "type": "string" + }, + "name": { + "description": "The name (project, location, cluster) of the cluster to set monitoring.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", + "type": "string" + }, + "projectId": { + "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field has been deprecated and replaced by the name field.", + "type": "string" + }, + "zone": { + "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the name field.", + "type": "string" + } + }, + "type": "object" + }, + "SetNetworkPolicyRequest": { + "description": "SetNetworkPolicyRequest enables/disables network policy for a cluster.", + "id": "SetNetworkPolicyRequest", + "properties": { + "clusterId": { + "description": "Deprecated. The name of the cluster.\nThis field has been deprecated and replaced by the name field.", + "type": "string" + }, + "name": { + "description": "The name (project, location, cluster id) of the cluster to set networking policy.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", + "type": "string" + }, + "networkPolicy": { + "$ref": "NetworkPolicy", + "description": "Configuration options for the NetworkPolicy feature." + }, + "projectId": { + "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://developers.google.com/console/help/new/#projectnumber).\nThis field has been deprecated and replaced by the name field.", + "type": "string" + }, + "zone": { + "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the name field.", + "type": "string" + } + }, + "type": "object" + }, + "SetNodePoolAutoscalingRequest": { + "description": "SetNodePoolAutoscalingRequest sets the autoscaler settings of a node pool.", + "id": "SetNodePoolAutoscalingRequest", + "properties": { + "autoscaling": { + "$ref": "NodePoolAutoscaling", + "description": "Autoscaling configuration for the node pool." + }, + "clusterId": { + "description": "Deprecated. The name of the cluster to upgrade.\nThis field has been deprecated and replaced by the name field.", + "type": "string" + }, + "name": { + "description": "The name (project, location, cluster, node pool) of the node pool to set\nautoscaler settings. Specified in the format\n'projects/*/locations/*/clusters/*/nodePools/*'.", + "type": "string" + }, + "nodePoolId": { + "description": "Deprecated. The name of the node pool to upgrade.\nThis field has been deprecated and replaced by the name field.", + "type": "string" + }, + "projectId": { + "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field has been deprecated and replaced by the name field.", + "type": "string" + }, + "zone": { + "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the name field.", + "type": "string" + } + }, + "type": "object" + }, + "SetNodePoolManagementRequest": { + "description": "SetNodePoolManagementRequest sets the node management properties of a node\npool.", + "id": "SetNodePoolManagementRequest", + "properties": { + "clusterId": { + "description": "Deprecated. The name of the cluster to update.\nThis field has been deprecated and replaced by the name field.", + "type": "string" + }, + "management": { + "$ref": "NodeManagement", + "description": "NodeManagement configuration for the node pool." + }, + "name": { + "description": "The name (project, location, cluster, node pool id) of the node pool to set\nmanagement properties. Specified in the format\n'projects/*/locations/*/clusters/*/nodePools/*'.", + "type": "string" + }, + "nodePoolId": { + "description": "Deprecated. The name of the node pool to update.\nThis field has been deprecated and replaced by the name field.", + "type": "string" + }, + "projectId": { + "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field has been deprecated and replaced by the name field.", + "type": "string" + }, + "zone": { + "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the name field.", + "type": "string" + } + }, + "type": "object" + }, + "SetNodePoolSizeRequest": { + "description": "SetNodePoolSizeRequest sets the size a node\npool.", + "id": "SetNodePoolSizeRequest", + "properties": { + "clusterId": { + "description": "Deprecated. The name of the cluster to update.\nThis field has been deprecated and replaced by the name field.", + "type": "string" + }, + "name": { + "description": "The name (project, location, cluster, node pool id) of the node pool to set\nsize.\nSpecified in the format 'projects/*/locations/*/clusters/*/nodePools/*'.", + "type": "string" + }, + "nodeCount": { + "description": "The desired node count for the pool.", + "format": "int32", + "type": "integer" + }, + "nodePoolId": { + "description": "Deprecated. The name of the node pool to update.\nThis field has been deprecated and replaced by the name field.", + "type": "string" + }, + "projectId": { + "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field has been deprecated and replaced by the name field.", + "type": "string" + }, + "zone": { + "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the name field.", + "type": "string" + } + }, + "type": "object" + }, + "StartIPRotationRequest": { + "description": "StartIPRotationRequest creates a new IP for the cluster and then performs\na node upgrade on each node pool to point to the new IP.", + "id": "StartIPRotationRequest", + "properties": { + "clusterId": { + "description": "Deprecated. The name of the cluster.\nThis field has been deprecated and replaced by the name field.", + "type": "string" + }, + "name": { + "description": "The name (project, location, cluster id) of the cluster to start IP rotation.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", + "type": "string" + }, + "projectId": { + "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://developers.google.com/console/help/new/#projectnumber).\nThis field has been deprecated and replaced by the name field.", + "type": "string" + }, + "zone": { + "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the name field.", + "type": "string" + } + }, + "type": "object" + }, + "UpdateClusterRequest": { + "description": "UpdateClusterRequest updates the settings of a cluster.", + "id": "UpdateClusterRequest", + "properties": { + "clusterId": { + "description": "Deprecated. The name of the cluster to upgrade.\nThis field has been deprecated and replaced by the name field.", + "type": "string" + }, + "name": { + "description": "The name (project, location, cluster) of the cluster to update.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", + "type": "string" + }, + "projectId": { + "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field has been deprecated and replaced by the name field.", + "type": "string" + }, + "update": { + "$ref": "ClusterUpdate", + "description": "A description of the update." + }, + "zone": { + "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the name field.", + "type": "string" + } + }, + "type": "object" + }, + "UpdateMasterRequest": { + "description": "UpdateMasterRequest updates the master of the cluster.", + "id": "UpdateMasterRequest", + "properties": { + "clusterId": { + "description": "Deprecated. The name of the cluster to upgrade.\nThis field has been deprecated and replaced by the name field.", + "type": "string" + }, + "masterVersion": { + "description": "The Kubernetes version to change the master to.\n\nUsers may specify either explicit versions offered by\nKubernetes Engine or version aliases, which have the following behavior:\n\n- \"latest\": picks the highest valid Kubernetes version\n- \"1.X\": picks the highest valid patch+gke.N patch in the 1.X version\n- \"1.X.Y\": picks the highest valid gke.N patch in the 1.X.Y version\n- \"1.X.Y-gke.N\": picks an explicit Kubernetes version\n- \"-\": picks the default Kubernetes version", + "type": "string" + }, + "name": { + "description": "The name (project, location, cluster) of the cluster to update.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", + "type": "string" + }, + "projectId": { + "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field has been deprecated and replaced by the name field.", + "type": "string" + }, + "zone": { + "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the name field.", + "type": "string" + } + }, + "type": "object" + }, + "UpdateNodePoolRequest": { + "description": "SetNodePoolVersionRequest updates the version of a node pool.", + "id": "UpdateNodePoolRequest", + "properties": { + "clusterId": { + "description": "Deprecated. The name of the cluster to upgrade.\nThis field has been deprecated and replaced by the name field.", + "type": "string" + }, + "imageType": { + "description": "The desired image type for the node pool.", + "type": "string" + }, + "name": { + "description": "The name (project, location, cluster, node pool) of the node pool to update.\nSpecified in the format 'projects/*/locations/*/clusters/*/nodePools/*'.", + "type": "string" + }, + "nodePoolId": { + "description": "Deprecated. The name of the node pool to upgrade.\nThis field has been deprecated and replaced by the name field.", + "type": "string" + }, + "nodeVersion": { + "description": "The Kubernetes version to change the nodes to (typically an\nupgrade).\n\nUsers may specify either explicit versions offered by Kubernetes Engine or\nversion aliases, which have the following behavior:\n\n- \"latest\": picks the highest valid Kubernetes version\n- \"1.X\": picks the highest valid patch+gke.N patch in the 1.X version\n- \"1.X.Y\": picks the highest valid gke.N patch in the 1.X.Y version\n- \"1.X.Y-gke.N\": picks an explicit Kubernetes version\n- \"-\": picks the Kubernetes master version", + "type": "string" + }, + "projectId": { + "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field has been deprecated and replaced by the name field.", + "type": "string" + }, + "zone": { + "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the name field.", + "type": "string" + } + }, + "type": "object" + }, + "WorkloadMetadataConfig": { + "description": "WorkloadMetadataConfig defines the metadata configuration to expose to\nworkloads on the node pool.", + "id": "WorkloadMetadataConfig", + "properties": { + "nodeMetadata": { + "description": "NodeMetadata is the configuration for how to expose the node metadata to\nthe workload running on the node.", + "enum": [ + "UNSPECIFIED", + "SECURE", + "EXPOSE" + ], + "enumDescriptions": [ + "Not set.", + "Prevent workloads not in hostNetwork from accessing certain VM metadata,\nspecifically kube-env, which contains Kubelet credentials, and the\ninstance identity token.\n\nMetadata concealment is a temporary security solution available while the\nbootstrapping process for cluster nodes is being redesigned with\nsignificant security improvements. This feature is scheduled to be\ndeprecated in the future and later removed.", + "Expose all VM metadata to pods." + ], + "type": "string" } }, - "id": "MaintenanceWindow", - "description": "MaintenanceWindow defines the maintenance window to be used for the cluster.", "type": "object" } }, - "protocol": "rest", - "icons": { - "x16": "http://www.google.com/images/icons/product/search-16.gif", - "x32": "http://www.google.com/images/icons/product/search-32.gif" - }, - "canonicalName": "Container", - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/cloud-platform": { - "description": "View and manage your data across Google Cloud Platform services" - } - } - } - }, - "rootUrl": "https://container.googleapis.com/", - "ownerDomain": "google.com", - "name": "container", - "batchPath": "batch" -} + "servicePath": "", + "title": "Google Kubernetes Engine API", + "version": "v1beta1", + "version_module": true +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/container/v1beta1/container-gen.go b/vendor/google.golang.org/api/container/v1beta1/container-gen.go index 38c490b43..7bde17245 100644 --- a/vendor/google.golang.org/api/container/v1beta1/container-gen.go +++ b/vendor/google.golang.org/api/container/v1beta1/container-gen.go @@ -317,22 +317,23 @@ type CancelOperationRequest struct { // Specified in the format 'projects/*/locations/*/operations/*'. Name string `json:"name,omitempty"` - // OperationId: The server-assigned `name` of the operation. - // This field is deprecated, use name instead. + // OperationId: Deprecated. The server-assigned `name` of the + // operation. + // This field has been deprecated and replaced by the name field. OperationId string `json:"operationId,omitempty"` - // ProjectId: The Google Developers Console [project ID or + // ProjectId: Deprecated. The Google Developers Console [project ID or // project // number](https://support.google.com/cloud/answer/6158840). // This - // field is deprecated, use name instead. + // field has been deprecated and replaced by the name field. ProjectId string `json:"projectId,omitempty"` - // Zone: The name of the Google Compute + // Zone: Deprecated. The name of the Google Compute // Engine // [zone](/compute/docs/zones#available) in which the operation // resides. - // This field is deprecated, use name instead. + // This field has been deprecated and replaced by the name field. Zone string `json:"zone,omitempty"` // ForceSendFields is a list of field names (e.g. "Name") to @@ -495,6 +496,17 @@ type Cluster struct { // be upgraded over time; such upgrades are reflected // in // currentMasterVersion and currentNodeVersion. + // + // Users may specify either explicit versions offered by + // Kubernetes Engine or version aliases, which have the following + // behavior: + // + // - "latest": picks the highest valid Kubernetes version + // - "1.X": picks the highest valid patch+gke.N patch in the 1.X + // version + // - "1.X.Y": picks the highest valid gke.N patch in the 1.X.Y version + // - "1.X.Y-gke.N": picks an explicit Kubernetes version + // - "","-": picks the default Kubernetes version InitialClusterVersion string `json:"initialClusterVersion,omitempty"` // InitialNodeCount: The number of nodes to create in this cluster. You @@ -519,6 +531,13 @@ type Cluster struct { // IpAllocationPolicy: Configuration for cluster IP allocation. IpAllocationPolicy *IPAllocationPolicy `json:"ipAllocationPolicy,omitempty"` + // LabelFingerprint: The fingerprint of the set of labels for this + // cluster. + LabelFingerprint string `json:"labelFingerprint,omitempty"` + + // LegacyAbac: Configuration for the legacy ABAC authorization mode. + LegacyAbac *LegacyAbac `json:"legacyAbac,omitempty"` + // Location: [Output only] The name of the Google Compute // Engine // [zone](/compute/docs/regions-zones/regions-zones#available) @@ -555,6 +574,13 @@ type Cluster struct { // authorized networks feature. MasterAuthorizedNetworksConfig *MasterAuthorizedNetworksConfig `json:"masterAuthorizedNetworksConfig,omitempty"` + // MasterIpv4CidrBlock: The IP prefix in CIDR notation to use for the + // hosted master network. + // This prefix will be used for assigning private IP addresses to + // the + // master or set of masters, as well as the ILB VIP. + MasterIpv4CidrBlock string `json:"masterIpv4CidrBlock,omitempty"` + // MonitoringService: The monitoring service the cluster should use to // write metrics. // Currently available options: @@ -581,7 +607,8 @@ type Cluster struct { // [network](/compute/docs/networks-and-firewalls#networks) to which // the // cluster is connected. If left unspecified, the `default` network - // will be used. + // will be used. On output this shows the network ID instead of + // the name. Network string `json:"network,omitempty"` // NetworkPolicy: Configuration options for the NetworkPolicy feature. @@ -620,6 +647,18 @@ type Cluster struct { // feature. PodSecurityPolicyConfig *PodSecurityPolicyConfig `json:"podSecurityPolicyConfig,omitempty"` + // PrivateCluster: If this is a private cluster setup. Private clusters + // are clusters that, by + // default have no external IP addresses on the nodes and where nodes + // and the + // master communicate over private IP addresses. + PrivateCluster bool `json:"privateCluster,omitempty"` + + // ResourceLabels: The resource labels for the cluster to use to + // annotate any related GCE + // resources. + ResourceLabels map[string]string `json:"resourceLabels,omitempty"` + // SelfLink: [Output only] Server-defined URL for the resource. SelfLink string `json:"selfLink,omitempty"` @@ -652,6 +691,10 @@ type Cluster struct { // "ERROR" - The ERROR state indicates the cluster may be unusable. // Details // can be found in the `statusMessage` field. + // "DEGRADED" - The DEGRADED state indicates the cluster requires user + // action to restore + // full functionality. Details can be found in the `statusMessage` + // field. Status string `json:"status,omitempty"` // StatusMessage: [Output only] Additional information about the current @@ -662,7 +705,9 @@ type Cluster struct { // Subnetwork: The name of the Google Compute // Engine // [subnetwork](/compute/docs/subnetworks) to which the - // cluster is connected. + // cluster is connected. On output this shows the subnetwork ID instead + // of + // the name. Subnetwork string `json:"subnetwork,omitempty"` // Zone: [Output only] The name of the Google Compute @@ -733,9 +778,18 @@ type ClusterUpdate struct { // DesiredMasterVersion: The Kubernetes version to change the master to. // The only valid value is the - // latest supported version. Use "-" to have the server automatically - // select - // the latest version. + // latest supported version. + // + // Users may specify either explicit versions offered by + // Kubernetes Engine or version aliases, which have the following + // behavior: + // + // - "latest": picks the highest valid Kubernetes version + // - "1.X": picks the highest valid patch+gke.N patch in the 1.X + // version + // - "1.X.Y": picks the highest valid gke.N patch in the 1.X.Y version + // - "1.X.Y-gke.N": picks an explicit Kubernetes version + // - "-": picks the default Kubernetes version DesiredMasterVersion string `json:"desiredMasterVersion,omitempty"` // DesiredMonitoringService: The monitoring service the cluster should @@ -764,8 +818,18 @@ type ClusterUpdate struct { // DesiredNodeVersion: The Kubernetes version to change the nodes to // (typically an - // upgrade). Use `-` to upgrade to the latest version supported by - // the server. + // upgrade). + // + // Users may specify either explicit versions offered by + // Kubernetes Engine or version aliases, which have the following + // behavior: + // + // - "latest": picks the highest valid Kubernetes version + // - "1.X": picks the highest valid patch+gke.N patch in the 1.X + // version + // - "1.X.Y": picks the highest valid gke.N patch in the 1.X.Y version + // - "1.X.Y-gke.N": picks an explicit Kubernetes version + // - "-": picks the Kubernetes master version DesiredNodeVersion string `json:"desiredNodeVersion,omitempty"` // DesiredPodSecurityPolicyConfig: The desired configuration options for @@ -799,8 +863,8 @@ func (s *ClusterUpdate) MarshalJSON() ([]byte, error) { // CompleteIPRotationRequest: CompleteIPRotationRequest moves the // cluster master back into single-IP mode. type CompleteIPRotationRequest struct { - // ClusterId: The name of the cluster. - // This field is deprecated, use name instead. + // ClusterId: Deprecated. The name of the cluster. + // This field has been deprecated and replaced by the name field. ClusterId string `json:"clusterId,omitempty"` // Name: The name (project, location, cluster id) of the cluster to @@ -808,19 +872,19 @@ type CompleteIPRotationRequest struct { // Specified in the format 'projects/*/locations/*/clusters/*'. Name string `json:"name,omitempty"` - // ProjectId: The Google Developers Console [project ID or + // ProjectId: Deprecated. The Google Developers Console [project ID or // project // number](https://developers.google.com/console/help/new/#projec // tnumber). - // This field is deprecated, use name instead. + // This field has been deprecated and replaced by the name field. ProjectId string `json:"projectId,omitempty"` - // Zone: The name of the Google Compute + // Zone: Deprecated. The name of the Google Compute // Engine // [zone](/compute/docs/zones#available) in which the // cluster // resides. - // This field is deprecated, use name instead. + // This field has been deprecated and replaced by the name field. Zone string `json:"zone,omitempty"` // ForceSendFields is a list of field names (e.g. "ClusterId") to @@ -859,19 +923,19 @@ type CreateClusterRequest struct { // Specified in the format 'projects/*/locations/*'. Parent string `json:"parent,omitempty"` - // ProjectId: The Google Developers Console [project ID or + // ProjectId: Deprecated. The Google Developers Console [project ID or // project // number](https://support.google.com/cloud/answer/6158840). // This - // field is deprecated, use parent instead. + // field has been deprecated and replaced by the parent field. ProjectId string `json:"projectId,omitempty"` - // Zone: The name of the Google Compute + // Zone: Deprecated. The name of the Google Compute // Engine // [zone](/compute/docs/zones#available) in which the // cluster // resides. - // This field is deprecated, use parent instead. + // This field has been deprecated and replaced by the parent field. Zone string `json:"zone,omitempty"` // ForceSendFields is a list of field names (e.g. "Cluster") to @@ -900,8 +964,8 @@ func (s *CreateClusterRequest) MarshalJSON() ([]byte, error) { // CreateNodePoolRequest: CreateNodePoolRequest creates a node pool for // a cluster. type CreateNodePoolRequest struct { - // ClusterId: The name of the cluster. - // This field is deprecated, use parent instead. + // ClusterId: Deprecated. The name of the cluster. + // This field has been deprecated and replaced by the parent field. ClusterId string `json:"clusterId,omitempty"` // NodePool: The node pool to create. @@ -913,19 +977,19 @@ type CreateNodePoolRequest struct { // 'projects/*/locations/*/clusters/*/nodePools/*'. Parent string `json:"parent,omitempty"` - // ProjectId: The Google Developers Console [project ID or + // ProjectId: Deprecated. The Google Developers Console [project ID or // project // number](https://developers.google.com/console/help/new/#projec // tnumber). - // This field is deprecated, use parent instead. + // This field has been deprecated and replaced by the parent field. ProjectId string `json:"projectId,omitempty"` - // Zone: The name of the Google Compute + // Zone: Deprecated. The name of the Google Compute // Engine // [zone](/compute/docs/zones#available) in which the // cluster // resides. - // This field is deprecated, use parent instead. + // This field has been deprecated and replaced by the parent field. Zone string `json:"zone,omitempty"` // ForceSendFields is a list of field names (e.g. "ClusterId") to @@ -1271,6 +1335,42 @@ func (s *KubernetesDashboard) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// LegacyAbac: Configuration for the legacy Attribute Based Access +// Control authorization +// mode. +type LegacyAbac struct { + // Enabled: Whether the ABAC authorizer is enabled for this cluster. + // When enabled, + // identities in the system, including service accounts, nodes, + // and + // controllers, will have statically granted permissions beyond + // those + // provided by the RBAC configuration or IAM. + Enabled bool `json:"enabled,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Enabled") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Enabled") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *LegacyAbac) MarshalJSON() ([]byte, error) { + type NoMethod LegacyAbac + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // ListClustersResponse: ListClustersResponse is the result of // ListClustersRequest. type ListClustersResponse struct { @@ -1687,6 +1787,7 @@ type NodeConfig struct { // Additionally, to avoid ambiguity, keys must not conflict with any // other // metadata keys for the project or be one of the reserved keys: + // "cluster-location" // "cluster-name" // "cluster-uid" // "configure-sh" @@ -2173,8 +2274,8 @@ func (s *PodSecurityPolicyConfig) MarshalJSON() ([]byte, error) { // successfully // completed. type RollbackNodePoolUpgradeRequest struct { - // ClusterId: The name of the cluster to rollback. - // This field is deprecated, use name instead. + // ClusterId: Deprecated. The name of the cluster to rollback. + // This field has been deprecated and replaced by the name field. ClusterId string `json:"clusterId,omitempty"` // Name: The name (project, location, cluster, node pool id) of the node @@ -2184,23 +2285,23 @@ type RollbackNodePoolUpgradeRequest struct { // 'projects/*/locations/*/clusters/*/nodePools/*'. Name string `json:"name,omitempty"` - // NodePoolId: The name of the node pool to rollback. - // This field is deprecated, use name instead. + // NodePoolId: Deprecated. The name of the node pool to rollback. + // This field has been deprecated and replaced by the name field. NodePoolId string `json:"nodePoolId,omitempty"` - // ProjectId: The Google Developers Console [project ID or + // ProjectId: Deprecated. The Google Developers Console [project ID or // project // number](https://support.google.com/cloud/answer/6158840). // This - // field is deprecated, use name instead. + // field has been deprecated and replaced by the name field. ProjectId string `json:"projectId,omitempty"` - // Zone: The name of the Google Compute + // Zone: Deprecated. The name of the Google Compute // Engine // [zone](/compute/docs/zones#available) in which the // cluster // resides. - // This field is deprecated, use name instead. + // This field has been deprecated and replaced by the name field. Zone string `json:"zone,omitempty"` // ForceSendFields is a list of field names (e.g. "ClusterId") to @@ -2281,8 +2382,8 @@ type SetAddonsConfigRequest struct { // cluster. AddonsConfig *AddonsConfig `json:"addonsConfig,omitempty"` - // ClusterId: The name of the cluster to upgrade. - // This field is deprecated, use name instead. + // ClusterId: Deprecated. The name of the cluster to upgrade. + // This field has been deprecated and replaced by the name field. ClusterId string `json:"clusterId,omitempty"` // Name: The name (project, location, cluster) of the cluster to set @@ -2290,19 +2391,19 @@ type SetAddonsConfigRequest struct { // Specified in the format 'projects/*/locations/*/clusters/*'. Name string `json:"name,omitempty"` - // ProjectId: The Google Developers Console [project ID or + // ProjectId: Deprecated. The Google Developers Console [project ID or // project // number](https://support.google.com/cloud/answer/6158840). // This - // field is deprecated, use name instead. + // field has been deprecated and replaced by the name field. ProjectId string `json:"projectId,omitempty"` - // Zone: The name of the Google Compute + // Zone: Deprecated. The name of the Google Compute // Engine // [zone](/compute/docs/zones#available) in which the // cluster // resides. - // This field is deprecated, use name instead. + // This field has been deprecated and replaced by the name field. Zone string `json:"zone,omitempty"` // ForceSendFields is a list of field names (e.g. "AddonsConfig") to @@ -2334,8 +2435,8 @@ func (s *SetAddonsConfigRequest) MarshalJSON() ([]byte, error) { // Engine // resources used by that cluster type SetLabelsRequest struct { - // ClusterId: The name of the cluster. - // This field is deprecated, use name instead. + // ClusterId: Deprecated. The name of the cluster. + // This field has been deprecated and replaced by the name field. ClusterId string `json:"clusterId,omitempty"` // LabelFingerprint: The fingerprint of the previous set of labels for @@ -2356,22 +2457,22 @@ type SetLabelsRequest struct { // Specified in the format 'projects/*/locations/*/clusters/*'. Name string `json:"name,omitempty"` - // ProjectId: The Google Developers Console [project ID or + // ProjectId: Deprecated. The Google Developers Console [project ID or // project // number](https://developers.google.com/console/help/new/#projec // tnumber). - // This field is deprecated, use name instead. + // This field has been deprecated and replaced by the name field. ProjectId string `json:"projectId,omitempty"` // ResourceLabels: The labels to set for that cluster. ResourceLabels map[string]string `json:"resourceLabels,omitempty"` - // Zone: The name of the Google Compute + // Zone: Deprecated. The name of the Google Compute // Engine // [zone](/compute/docs/zones#available) in which the // cluster // resides. - // This field is deprecated, use name instead. + // This field has been deprecated and replaced by the name field. Zone string `json:"zone,omitempty"` // ForceSendFields is a list of field names (e.g. "ClusterId") to @@ -2401,8 +2502,8 @@ func (s *SetLabelsRequest) MarshalJSON() ([]byte, error) { // ABAC authorization mechanism for // a cluster. type SetLegacyAbacRequest struct { - // ClusterId: The name of the cluster to update. - // This field is deprecated, use name instead. + // ClusterId: Deprecated. The name of the cluster to update. + // This field has been deprecated and replaced by the name field. ClusterId string `json:"clusterId,omitempty"` // Enabled: Whether ABAC authorization will be enabled in the cluster. @@ -2413,19 +2514,19 @@ type SetLegacyAbacRequest struct { // Specified in the format 'projects/*/locations/*/clusters/*'. Name string `json:"name,omitempty"` - // ProjectId: The Google Developers Console [project ID or + // ProjectId: Deprecated. The Google Developers Console [project ID or // project // number](https://support.google.com/cloud/answer/6158840). // This - // field is deprecated, use name instead. + // field has been deprecated and replaced by the name field. ProjectId string `json:"projectId,omitempty"` - // Zone: The name of the Google Compute + // Zone: Deprecated. The name of the Google Compute // Engine // [zone](/compute/docs/zones#available) in which the // cluster // resides. - // This field is deprecated, use name instead. + // This field has been deprecated and replaced by the name field. Zone string `json:"zone,omitempty"` // ForceSendFields is a list of field names (e.g. "ClusterId") to @@ -2454,8 +2555,8 @@ func (s *SetLegacyAbacRequest) MarshalJSON() ([]byte, error) { // SetLocationsRequest: SetLocationsRequest sets the locations of the // cluster. type SetLocationsRequest struct { - // ClusterId: The name of the cluster to upgrade. - // This field is deprecated, use name instead. + // ClusterId: Deprecated. The name of the cluster to upgrade. + // This field has been deprecated and replaced by the name field. ClusterId string `json:"clusterId,omitempty"` // Locations: The desired list of Google Compute @@ -2476,19 +2577,19 @@ type SetLocationsRequest struct { // Specified in the format 'projects/*/locations/*/clusters/*'. Name string `json:"name,omitempty"` - // ProjectId: The Google Developers Console [project ID or + // ProjectId: Deprecated. The Google Developers Console [project ID or // project // number](https://support.google.com/cloud/answer/6158840). // This - // field is deprecated, use name instead. + // field has been deprecated and replaced by the name field. ProjectId string `json:"projectId,omitempty"` - // Zone: The name of the Google Compute + // Zone: Deprecated. The name of the Google Compute // Engine // [zone](/compute/docs/zones#available) in which the // cluster // resides. - // This field is deprecated, use name instead. + // This field has been deprecated and replaced by the name field. Zone string `json:"zone,omitempty"` // ForceSendFields is a list of field names (e.g. "ClusterId") to @@ -2517,8 +2618,8 @@ func (s *SetLocationsRequest) MarshalJSON() ([]byte, error) { // SetLoggingServiceRequest: SetLoggingServiceRequest sets the logging // service of a cluster. type SetLoggingServiceRequest struct { - // ClusterId: The name of the cluster to upgrade. - // This field is deprecated, use name instead. + // ClusterId: Deprecated. The name of the cluster to upgrade. + // This field has been deprecated and replaced by the name field. ClusterId string `json:"clusterId,omitempty"` // LoggingService: The logging service the cluster should use to write @@ -2534,17 +2635,19 @@ type SetLoggingServiceRequest struct { // Specified in the format 'projects/*/locations/*/clusters/*'. Name string `json:"name,omitempty"` - // ProjectId: The Google Developers Console [project ID or + // ProjectId: Deprecated. The Google Developers Console [project ID or // project // number](https://support.google.com/cloud/answer/6158840). // This - // field is deprecated, use name instead. + // field has been deprecated and replaced by the name field. ProjectId string `json:"projectId,omitempty"` - // Zone: The name of the Google Compute + // Zone: Deprecated. The name of the Google Compute // Engine - // [zone](/compute/docs/zones#available) in which the cluster + // [zone](/compute/docs/zones#available) in which the + // cluster // resides. + // This field has been deprecated and replaced by the name field. Zone string `json:"zone,omitempty"` // ForceSendFields is a list of field names (e.g. "ClusterId") to @@ -2639,8 +2742,8 @@ type SetMasterAuthRequest struct { // one. Action string `json:"action,omitempty"` - // ClusterId: The name of the cluster to upgrade. - // This field is deprecated, use name instead. + // ClusterId: Deprecated. The name of the cluster to upgrade. + // This field has been deprecated and replaced by the name field. ClusterId string `json:"clusterId,omitempty"` // Name: The name (project, location, cluster) of the cluster to set @@ -2648,22 +2751,22 @@ type SetMasterAuthRequest struct { // Specified in the format 'projects/*/locations/*/clusters/*'. Name string `json:"name,omitempty"` - // ProjectId: The Google Developers Console [project ID or + // ProjectId: Deprecated. The Google Developers Console [project ID or // project // number](https://support.google.com/cloud/answer/6158840). // This - // field is deprecated, use name instead. + // field has been deprecated and replaced by the name field. ProjectId string `json:"projectId,omitempty"` // Update: A description of the update. Update *MasterAuth `json:"update,omitempty"` - // Zone: The name of the Google Compute + // Zone: Deprecated. The name of the Google Compute // Engine // [zone](/compute/docs/zones#available) in which the // cluster // resides. - // This field is deprecated, use name instead. + // This field has been deprecated and replaced by the name field. Zone string `json:"zone,omitempty"` // ForceSendFields is a list of field names (e.g. "Action") to @@ -2692,8 +2795,8 @@ func (s *SetMasterAuthRequest) MarshalJSON() ([]byte, error) { // SetMonitoringServiceRequest: SetMonitoringServiceRequest sets the // monitoring service of a cluster. type SetMonitoringServiceRequest struct { - // ClusterId: The name of the cluster to upgrade. - // This field is deprecated, use name instead. + // ClusterId: Deprecated. The name of the cluster to upgrade. + // This field has been deprecated and replaced by the name field. ClusterId string `json:"clusterId,omitempty"` // MonitoringService: The monitoring service the cluster should use to @@ -2709,19 +2812,19 @@ type SetMonitoringServiceRequest struct { // Specified in the format 'projects/*/locations/*/clusters/*'. Name string `json:"name,omitempty"` - // ProjectId: The Google Developers Console [project ID or + // ProjectId: Deprecated. The Google Developers Console [project ID or // project // number](https://support.google.com/cloud/answer/6158840). // This - // field is deprecated, use name instead. + // field has been deprecated and replaced by the name field. ProjectId string `json:"projectId,omitempty"` - // Zone: The name of the Google Compute + // Zone: Deprecated. The name of the Google Compute // Engine // [zone](/compute/docs/zones#available) in which the // cluster // resides. - // This field is deprecated, use name instead. + // This field has been deprecated and replaced by the name field. Zone string `json:"zone,omitempty"` // ForceSendFields is a list of field names (e.g. "ClusterId") to @@ -2750,8 +2853,8 @@ func (s *SetMonitoringServiceRequest) MarshalJSON() ([]byte, error) { // SetNetworkPolicyRequest: SetNetworkPolicyRequest enables/disables // network policy for a cluster. type SetNetworkPolicyRequest struct { - // ClusterId: The name of the cluster. - // This field is deprecated, use name instead. + // ClusterId: Deprecated. The name of the cluster. + // This field has been deprecated and replaced by the name field. ClusterId string `json:"clusterId,omitempty"` // Name: The name (project, location, cluster id) of the cluster to set @@ -2762,19 +2865,19 @@ type SetNetworkPolicyRequest struct { // NetworkPolicy: Configuration options for the NetworkPolicy feature. NetworkPolicy *NetworkPolicy `json:"networkPolicy,omitempty"` - // ProjectId: The Google Developers Console [project ID or + // ProjectId: Deprecated. The Google Developers Console [project ID or // project // number](https://developers.google.com/console/help/new/#projec // tnumber). - // This field is deprecated, use name instead. + // This field has been deprecated and replaced by the name field. ProjectId string `json:"projectId,omitempty"` - // Zone: The name of the Google Compute + // Zone: Deprecated. The name of the Google Compute // Engine // [zone](/compute/docs/zones#available) in which the // cluster // resides. - // This field is deprecated, use name instead. + // This field has been deprecated and replaced by the name field. Zone string `json:"zone,omitempty"` // ForceSendFields is a list of field names (e.g. "ClusterId") to @@ -2806,8 +2909,8 @@ type SetNodePoolAutoscalingRequest struct { // Autoscaling: Autoscaling configuration for the node pool. Autoscaling *NodePoolAutoscaling `json:"autoscaling,omitempty"` - // ClusterId: The name of the cluster to upgrade. - // This field is deprecated, use name instead. + // ClusterId: Deprecated. The name of the cluster to upgrade. + // This field has been deprecated and replaced by the name field. ClusterId string `json:"clusterId,omitempty"` // Name: The name (project, location, cluster, node pool) of the node @@ -2817,23 +2920,23 @@ type SetNodePoolAutoscalingRequest struct { // 'projects/*/locations/*/clusters/*/nodePools/*'. Name string `json:"name,omitempty"` - // NodePoolId: The name of the node pool to upgrade. - // This field is deprecated, use name instead. + // NodePoolId: Deprecated. The name of the node pool to upgrade. + // This field has been deprecated and replaced by the name field. NodePoolId string `json:"nodePoolId,omitempty"` - // ProjectId: The Google Developers Console [project ID or + // ProjectId: Deprecated. The Google Developers Console [project ID or // project // number](https://support.google.com/cloud/answer/6158840). // This - // field is deprecated, use name instead. + // field has been deprecated and replaced by the name field. ProjectId string `json:"projectId,omitempty"` - // Zone: The name of the Google Compute + // Zone: Deprecated. The name of the Google Compute // Engine // [zone](/compute/docs/zones#available) in which the // cluster // resides. - // This field is deprecated, use name instead. + // This field has been deprecated and replaced by the name field. Zone string `json:"zone,omitempty"` // ForceSendFields is a list of field names (e.g. "Autoscaling") to @@ -2863,8 +2966,8 @@ func (s *SetNodePoolAutoscalingRequest) MarshalJSON() ([]byte, error) { // node management properties of a node // pool. type SetNodePoolManagementRequest struct { - // ClusterId: The name of the cluster to update. - // This field is deprecated, use name instead. + // ClusterId: Deprecated. The name of the cluster to update. + // This field has been deprecated and replaced by the name field. ClusterId string `json:"clusterId,omitempty"` // Management: NodeManagement configuration for the node pool. @@ -2877,23 +2980,23 @@ type SetNodePoolManagementRequest struct { // 'projects/*/locations/*/clusters/*/nodePools/*'. Name string `json:"name,omitempty"` - // NodePoolId: The name of the node pool to update. - // This field is deprecated, use name instead. + // NodePoolId: Deprecated. The name of the node pool to update. + // This field has been deprecated and replaced by the name field. NodePoolId string `json:"nodePoolId,omitempty"` - // ProjectId: The Google Developers Console [project ID or + // ProjectId: Deprecated. The Google Developers Console [project ID or // project // number](https://support.google.com/cloud/answer/6158840). // This - // field is deprecated, use name instead. + // field has been deprecated and replaced by the name field. ProjectId string `json:"projectId,omitempty"` - // Zone: The name of the Google Compute + // Zone: Deprecated. The name of the Google Compute // Engine // [zone](/compute/docs/zones#available) in which the // cluster // resides. - // This field is deprecated, use name instead. + // This field has been deprecated and replaced by the name field. Zone string `json:"zone,omitempty"` // ForceSendFields is a list of field names (e.g. "ClusterId") to @@ -2923,8 +3026,8 @@ func (s *SetNodePoolManagementRequest) MarshalJSON() ([]byte, error) { // node // pool. type SetNodePoolSizeRequest struct { - // ClusterId: The name of the cluster to update. - // This field is deprecated, use name instead. + // ClusterId: Deprecated. The name of the cluster to update. + // This field has been deprecated and replaced by the name field. ClusterId string `json:"clusterId,omitempty"` // Name: The name (project, location, cluster, node pool id) of the node @@ -2937,21 +3040,23 @@ type SetNodePoolSizeRequest struct { // NodeCount: The desired node count for the pool. NodeCount int64 `json:"nodeCount,omitempty"` - // NodePoolId: The name of the node pool to update. - // This field is deprecated, use name instead. + // NodePoolId: Deprecated. The name of the node pool to update. + // This field has been deprecated and replaced by the name field. NodePoolId string `json:"nodePoolId,omitempty"` - // ProjectId: The Google Developers Console [project ID or + // ProjectId: Deprecated. The Google Developers Console [project ID or // project // number](https://support.google.com/cloud/answer/6158840). + // This + // field has been deprecated and replaced by the name field. ProjectId string `json:"projectId,omitempty"` - // Zone: The name of the Google Compute + // Zone: Deprecated. The name of the Google Compute // Engine // [zone](/compute/docs/zones#available) in which the // cluster // resides. - // This field is deprecated, use name instead. + // This field has been deprecated and replaced by the name field. Zone string `json:"zone,omitempty"` // ForceSendFields is a list of field names (e.g. "ClusterId") to @@ -2981,8 +3086,8 @@ func (s *SetNodePoolSizeRequest) MarshalJSON() ([]byte, error) { // the cluster and then performs // a node upgrade on each node pool to point to the new IP. type StartIPRotationRequest struct { - // ClusterId: The name of the cluster. - // This field is deprecated, use name instead. + // ClusterId: Deprecated. The name of the cluster. + // This field has been deprecated and replaced by the name field. ClusterId string `json:"clusterId,omitempty"` // Name: The name (project, location, cluster id) of the cluster to @@ -2990,19 +3095,19 @@ type StartIPRotationRequest struct { // Specified in the format 'projects/*/locations/*/clusters/*'. Name string `json:"name,omitempty"` - // ProjectId: The Google Developers Console [project ID or + // ProjectId: Deprecated. The Google Developers Console [project ID or // project // number](https://developers.google.com/console/help/new/#projec // tnumber). - // This field is deprecated, use name instead. + // This field has been deprecated and replaced by the name field. ProjectId string `json:"projectId,omitempty"` - // Zone: The name of the Google Compute + // Zone: Deprecated. The name of the Google Compute // Engine // [zone](/compute/docs/zones#available) in which the // cluster // resides. - // This field is deprecated, use name instead. + // This field has been deprecated and replaced by the name field. Zone string `json:"zone,omitempty"` // ForceSendFields is a list of field names (e.g. "ClusterId") to @@ -3031,8 +3136,8 @@ func (s *StartIPRotationRequest) MarshalJSON() ([]byte, error) { // UpdateClusterRequest: UpdateClusterRequest updates the settings of a // cluster. type UpdateClusterRequest struct { - // ClusterId: The name of the cluster to upgrade. - // This field is deprecated, use name instead. + // ClusterId: Deprecated. The name of the cluster to upgrade. + // This field has been deprecated and replaced by the name field. ClusterId string `json:"clusterId,omitempty"` // Name: The name (project, location, cluster) of the cluster to @@ -3040,22 +3145,22 @@ type UpdateClusterRequest struct { // Specified in the format 'projects/*/locations/*/clusters/*'. Name string `json:"name,omitempty"` - // ProjectId: The Google Developers Console [project ID or + // ProjectId: Deprecated. The Google Developers Console [project ID or // project // number](https://support.google.com/cloud/answer/6158840). // This - // field is deprecated, use name instead. + // field has been deprecated and replaced by the name field. ProjectId string `json:"projectId,omitempty"` // Update: A description of the update. Update *ClusterUpdate `json:"update,omitempty"` - // Zone: The name of the Google Compute + // Zone: Deprecated. The name of the Google Compute // Engine // [zone](/compute/docs/zones#available) in which the // cluster // resides. - // This field is deprecated, use name instead. + // This field has been deprecated and replaced by the name field. Zone string `json:"zone,omitempty"` // ForceSendFields is a list of field names (e.g. "ClusterId") to @@ -3084,15 +3189,22 @@ func (s *UpdateClusterRequest) MarshalJSON() ([]byte, error) { // UpdateMasterRequest: UpdateMasterRequest updates the master of the // cluster. type UpdateMasterRequest struct { - // ClusterId: The name of the cluster to upgrade. - // This field is deprecated, use name instead. + // ClusterId: Deprecated. The name of the cluster to upgrade. + // This field has been deprecated and replaced by the name field. ClusterId string `json:"clusterId,omitempty"` - // MasterVersion: The Kubernetes version to change the master to. The - // only valid value is the - // latest supported version. Use "-" to have the server automatically - // select - // the latest version. + // MasterVersion: The Kubernetes version to change the master to. + // + // Users may specify either explicit versions offered by + // Kubernetes Engine or version aliases, which have the following + // behavior: + // + // - "latest": picks the highest valid Kubernetes version + // - "1.X": picks the highest valid patch+gke.N patch in the 1.X + // version + // - "1.X.Y": picks the highest valid gke.N patch in the 1.X.Y version + // - "1.X.Y-gke.N": picks an explicit Kubernetes version + // - "-": picks the default Kubernetes version MasterVersion string `json:"masterVersion,omitempty"` // Name: The name (project, location, cluster) of the cluster to @@ -3100,17 +3212,19 @@ type UpdateMasterRequest struct { // Specified in the format 'projects/*/locations/*/clusters/*'. Name string `json:"name,omitempty"` - // ProjectId: The Google Developers Console [project ID or + // ProjectId: Deprecated. The Google Developers Console [project ID or // project // number](https://support.google.com/cloud/answer/6158840). + // This + // field has been deprecated and replaced by the name field. ProjectId string `json:"projectId,omitempty"` - // Zone: The name of the Google Compute + // Zone: Deprecated. The name of the Google Compute // Engine // [zone](/compute/docs/zones#available) in which the // cluster // resides. - // This field is deprecated, use name instead. + // This field has been deprecated and replaced by the name field. Zone string `json:"zone,omitempty"` // ForceSendFields is a list of field names (e.g. "ClusterId") to @@ -3139,8 +3253,8 @@ func (s *UpdateMasterRequest) MarshalJSON() ([]byte, error) { // UpdateNodePoolRequest: SetNodePoolVersionRequest updates the version // of a node pool. type UpdateNodePoolRequest struct { - // ClusterId: The name of the cluster to upgrade. - // This field is deprecated, use name instead. + // ClusterId: Deprecated. The name of the cluster to upgrade. + // This field has been deprecated and replaced by the name field. ClusterId string `json:"clusterId,omitempty"` // ImageType: The desired image type for the node pool. @@ -3152,29 +3266,39 @@ type UpdateNodePoolRequest struct { // 'projects/*/locations/*/clusters/*/nodePools/*'. Name string `json:"name,omitempty"` - // NodePoolId: The name of the node pool to upgrade. - // This field is deprecated, use name instead. + // NodePoolId: Deprecated. The name of the node pool to upgrade. + // This field has been deprecated and replaced by the name field. NodePoolId string `json:"nodePoolId,omitempty"` // NodeVersion: The Kubernetes version to change the nodes to (typically // an - // upgrade). Use `-` to upgrade to the latest version supported by - // the server. + // upgrade). + // + // Users may specify either explicit versions offered by Kubernetes + // Engine or + // version aliases, which have the following behavior: + // + // - "latest": picks the highest valid Kubernetes version + // - "1.X": picks the highest valid patch+gke.N patch in the 1.X + // version + // - "1.X.Y": picks the highest valid gke.N patch in the 1.X.Y version + // - "1.X.Y-gke.N": picks an explicit Kubernetes version + // - "-": picks the Kubernetes master version NodeVersion string `json:"nodeVersion,omitempty"` - // ProjectId: The Google Developers Console [project ID or + // ProjectId: Deprecated. The Google Developers Console [project ID or // project // number](https://support.google.com/cloud/answer/6158840). // This - // field is deprecated, use name instead. + // field has been deprecated and replaced by the name field. ProjectId string `json:"projectId,omitempty"` - // Zone: The name of the Google Compute + // Zone: Deprecated. The name of the Google Compute // Engine // [zone](/compute/docs/zones#available) in which the // cluster // resides. - // This field is deprecated, use name instead. + // This field has been deprecated and replaced by the name field. Zone string `json:"zone,omitempty"` // ForceSendFields is a list of field names (e.g. "ClusterId") to @@ -3204,16 +3328,26 @@ func (s *UpdateNodePoolRequest) MarshalJSON() ([]byte, error) { // configuration to expose to // workloads on the node pool. type WorkloadMetadataConfig struct { - // NodeMetadata: NodeMetadata is the configuration for if and how to - // expose the node - // metadata to the workload running on the node. + // NodeMetadata: NodeMetadata is the configuration for how to expose the + // node metadata to + // the workload running on the node. // // Possible values: // "UNSPECIFIED" - Not set. - // "SECURE" - Expose only a secure subset of metadata to pods. - // Currently, this blocks - // kube-env, but exposes all other metadata. - // "EXPOSE" - Expose all GCE metadata to pods. + // "SECURE" - Prevent workloads not in hostNetwork from accessing + // certain VM metadata, + // specifically kube-env, which contains Kubelet credentials, and + // the + // instance identity token. + // + // Metadata concealment is a temporary security solution available while + // the + // bootstrapping process for cluster nodes is being redesigned + // with + // significant security improvements. This feature is scheduled to + // be + // deprecated in the future and later removed. + // "EXPOSE" - Expose all VM metadata to pods. NodeMetadata string `json:"nodeMetadata,omitempty"` // ForceSendFields is a list of field names (e.g. "NodeMetadata") to @@ -3258,21 +3392,21 @@ func (r *ProjectsLocationsService) GetServerConfig(name string) *ProjectsLocatio return c } -// ProjectId sets the optional parameter "projectId": The Google -// Developers Console [project ID or +// ProjectId sets the optional parameter "projectId": Deprecated. The +// Google Developers Console [project ID or // project // number](https://support.google.com/cloud/answer/6158840). // This -// field is deprecated, use name instead. +// field has been deprecated and replaced by the name field. func (c *ProjectsLocationsGetServerConfigCall) ProjectId(projectId string) *ProjectsLocationsGetServerConfigCall { c.urlParams_.Set("projectId", projectId) return c } -// Zone sets the optional parameter "zone": The name of the Google -// Compute Engine [zone](/compute/docs/zones#available) -// to return operations for. -// This field is deprecated, use name instead. +// Zone sets the optional parameter "zone": Deprecated. The name of the +// Google Compute Engine +// [zone](/compute/docs/zones#available) to return operations for. +// This field has been deprecated and replaced by the name field. func (c *ProjectsLocationsGetServerConfigCall) Zone(zone string) *ProjectsLocationsGetServerConfigCall { c.urlParams_.Set("zone", zone) return c @@ -3388,12 +3522,12 @@ func (c *ProjectsLocationsGetServerConfigCall) Do(opts ...googleapi.CallOption) // "type": "string" // }, // "projectId": { - // "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field is deprecated, use name instead.", + // "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field has been deprecated and replaced by the name field.", // "location": "query", // "type": "string" // }, // "zone": { - // "description": "The name of the Google Compute Engine [zone](/compute/docs/zones#available)\nto return operations for.\nThis field is deprecated, use name instead.", + // "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) to return operations for.\nThis field has been deprecated and replaced by the name field.", // "location": "query", // "type": "string" // } @@ -3723,31 +3857,31 @@ func (r *ProjectsLocationsClustersService) Delete(name string) *ProjectsLocation return c } -// ClusterId sets the optional parameter "clusterId": The name of the -// cluster to delete. -// This field is deprecated, use name instead. +// ClusterId sets the optional parameter "clusterId": Deprecated. The +// name of the cluster to delete. +// This field has been deprecated and replaced by the name field. func (c *ProjectsLocationsClustersDeleteCall) ClusterId(clusterId string) *ProjectsLocationsClustersDeleteCall { c.urlParams_.Set("clusterId", clusterId) return c } -// ProjectId sets the optional parameter "projectId": The Google -// Developers Console [project ID or +// ProjectId sets the optional parameter "projectId": Deprecated. The +// Google Developers Console [project ID or // project // number](https://support.google.com/cloud/answer/6158840). // This -// field is deprecated, use name instead. +// field has been deprecated and replaced by the name field. func (c *ProjectsLocationsClustersDeleteCall) ProjectId(projectId string) *ProjectsLocationsClustersDeleteCall { c.urlParams_.Set("projectId", projectId) return c } -// Zone sets the optional parameter "zone": The name of the Google -// Compute Engine +// Zone sets the optional parameter "zone": Deprecated. The name of the +// Google Compute Engine // [zone](/compute/docs/zones#available) in which the // cluster // resides. -// This field is deprecated, use name instead. +// This field has been deprecated and replaced by the name field. func (c *ProjectsLocationsClustersDeleteCall) Zone(zone string) *ProjectsLocationsClustersDeleteCall { c.urlParams_.Set("zone", zone) return c @@ -3843,7 +3977,7 @@ func (c *ProjectsLocationsClustersDeleteCall) Do(opts ...googleapi.CallOption) ( // ], // "parameters": { // "clusterId": { - // "description": "The name of the cluster to delete.\nThis field is deprecated, use name instead.", + // "description": "Deprecated. The name of the cluster to delete.\nThis field has been deprecated and replaced by the name field.", // "location": "query", // "type": "string" // }, @@ -3855,12 +3989,12 @@ func (c *ProjectsLocationsClustersDeleteCall) Do(opts ...googleapi.CallOption) ( // "type": "string" // }, // "projectId": { - // "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field is deprecated, use name instead.", + // "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field has been deprecated and replaced by the name field.", // "location": "query", // "type": "string" // }, // "zone": { - // "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field is deprecated, use name instead.", + // "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the name field.", // "location": "query", // "type": "string" // } @@ -3894,31 +4028,31 @@ func (r *ProjectsLocationsClustersService) Get(name string) *ProjectsLocationsCl return c } -// ClusterId sets the optional parameter "clusterId": The name of the -// cluster to retrieve. -// This field is deprecated, use name instead. +// ClusterId sets the optional parameter "clusterId": Deprecated. The +// name of the cluster to retrieve. +// This field has been deprecated and replaced by the name field. func (c *ProjectsLocationsClustersGetCall) ClusterId(clusterId string) *ProjectsLocationsClustersGetCall { c.urlParams_.Set("clusterId", clusterId) return c } -// ProjectId sets the optional parameter "projectId": The Google -// Developers Console [project ID or +// ProjectId sets the optional parameter "projectId": Deprecated. The +// Google Developers Console [project ID or // project // number](https://support.google.com/cloud/answer/6158840). // This -// field is deprecated, use name instead. +// field has been deprecated and replaced by the name field. func (c *ProjectsLocationsClustersGetCall) ProjectId(projectId string) *ProjectsLocationsClustersGetCall { c.urlParams_.Set("projectId", projectId) return c } -// Zone sets the optional parameter "zone": The name of the Google -// Compute Engine +// Zone sets the optional parameter "zone": Deprecated. The name of the +// Google Compute Engine // [zone](/compute/docs/zones#available) in which the // cluster // resides. -// This field is deprecated, use name instead. +// This field has been deprecated and replaced by the name field. func (c *ProjectsLocationsClustersGetCall) Zone(zone string) *ProjectsLocationsClustersGetCall { c.urlParams_.Set("zone", zone) return c @@ -4027,7 +4161,7 @@ func (c *ProjectsLocationsClustersGetCall) Do(opts ...googleapi.CallOption) (*Cl // ], // "parameters": { // "clusterId": { - // "description": "The name of the cluster to retrieve.\nThis field is deprecated, use name instead.", + // "description": "Deprecated. The name of the cluster to retrieve.\nThis field has been deprecated and replaced by the name field.", // "location": "query", // "type": "string" // }, @@ -4039,12 +4173,12 @@ func (c *ProjectsLocationsClustersGetCall) Do(opts ...googleapi.CallOption) (*Cl // "type": "string" // }, // "projectId": { - // "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field is deprecated, use name instead.", + // "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field has been deprecated and replaced by the name field.", // "location": "query", // "type": "string" // }, // "zone": { - // "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field is deprecated, use name instead.", + // "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the name field.", // "location": "query", // "type": "string" // } @@ -4080,22 +4214,22 @@ func (r *ProjectsLocationsClustersService) List(parent string) *ProjectsLocation return c } -// ProjectId sets the optional parameter "projectId": The Google -// Developers Console [project ID or +// ProjectId sets the optional parameter "projectId": Deprecated. The +// Google Developers Console [project ID or // project // number](https://support.google.com/cloud/answer/6158840). // This -// field is deprecated, use parent instead. +// field has been deprecated and replaced by the parent field. func (c *ProjectsLocationsClustersListCall) ProjectId(projectId string) *ProjectsLocationsClustersListCall { c.urlParams_.Set("projectId", projectId) return c } -// Zone sets the optional parameter "zone": The name of the Google -// Compute Engine +// Zone sets the optional parameter "zone": Deprecated. The name of the +// Google Compute Engine // [zone](/compute/docs/zones#available) in which the cluster // resides, or "-" for all zones. -// This field is deprecated, use parent instead. +// This field has been deprecated and replaced by the parent field. func (c *ProjectsLocationsClustersListCall) Zone(zone string) *ProjectsLocationsClustersListCall { c.urlParams_.Set("zone", zone) return c @@ -4211,12 +4345,12 @@ func (c *ProjectsLocationsClustersListCall) Do(opts ...googleapi.CallOption) (*L // "type": "string" // }, // "projectId": { - // "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field is deprecated, use parent instead.", + // "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field has been deprecated and replaced by the parent field.", // "location": "query", // "type": "string" // }, // "zone": { - // "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides, or \"-\" for all zones.\nThis field is deprecated, use parent instead.", + // "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides, or \"-\" for all zones.\nThis field has been deprecated and replaced by the parent field.", // "location": "query", // "type": "string" // } @@ -6009,39 +6143,39 @@ func (r *ProjectsLocationsClustersNodePoolsService) Delete(name string) *Project return c } -// ClusterId sets the optional parameter "clusterId": The name of the -// cluster. -// This field is deprecated, use name instead. +// ClusterId sets the optional parameter "clusterId": Deprecated. The +// name of the cluster. +// This field has been deprecated and replaced by the name field. func (c *ProjectsLocationsClustersNodePoolsDeleteCall) ClusterId(clusterId string) *ProjectsLocationsClustersNodePoolsDeleteCall { c.urlParams_.Set("clusterId", clusterId) return c } -// NodePoolId sets the optional parameter "nodePoolId": The name of the -// node pool to delete. -// This field is deprecated, use name instead. +// NodePoolId sets the optional parameter "nodePoolId": Deprecated. The +// name of the node pool to delete. +// This field has been deprecated and replaced by the name field. func (c *ProjectsLocationsClustersNodePoolsDeleteCall) NodePoolId(nodePoolId string) *ProjectsLocationsClustersNodePoolsDeleteCall { c.urlParams_.Set("nodePoolId", nodePoolId) return c } -// ProjectId sets the optional parameter "projectId": The Google -// Developers Console [project ID or +// ProjectId sets the optional parameter "projectId": Deprecated. The +// Google Developers Console [project ID or // project // number](https://developers.google.com/console/help/new/#projec // tnumber). -// This field is deprecated, use name instead. +// This field has been deprecated and replaced by the name field. func (c *ProjectsLocationsClustersNodePoolsDeleteCall) ProjectId(projectId string) *ProjectsLocationsClustersNodePoolsDeleteCall { c.urlParams_.Set("projectId", projectId) return c } -// Zone sets the optional parameter "zone": The name of the Google -// Compute Engine +// Zone sets the optional parameter "zone": Deprecated. The name of the +// Google Compute Engine // [zone](/compute/docs/zones#available) in which the // cluster // resides. -// This field is deprecated, use name instead. +// This field has been deprecated and replaced by the name field. func (c *ProjectsLocationsClustersNodePoolsDeleteCall) Zone(zone string) *ProjectsLocationsClustersNodePoolsDeleteCall { c.urlParams_.Set("zone", zone) return c @@ -6137,7 +6271,7 @@ func (c *ProjectsLocationsClustersNodePoolsDeleteCall) Do(opts ...googleapi.Call // ], // "parameters": { // "clusterId": { - // "description": "The name of the cluster.\nThis field is deprecated, use name instead.", + // "description": "Deprecated. The name of the cluster.\nThis field has been deprecated and replaced by the name field.", // "location": "query", // "type": "string" // }, @@ -6149,17 +6283,17 @@ func (c *ProjectsLocationsClustersNodePoolsDeleteCall) Do(opts ...googleapi.Call // "type": "string" // }, // "nodePoolId": { - // "description": "The name of the node pool to delete.\nThis field is deprecated, use name instead.", + // "description": "Deprecated. The name of the node pool to delete.\nThis field has been deprecated and replaced by the name field.", // "location": "query", // "type": "string" // }, // "projectId": { - // "description": "The Google Developers Console [project ID or project\nnumber](https://developers.google.com/console/help/new/#projectnumber).\nThis field is deprecated, use name instead.", + // "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://developers.google.com/console/help/new/#projectnumber).\nThis field has been deprecated and replaced by the name field.", // "location": "query", // "type": "string" // }, // "zone": { - // "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field is deprecated, use name instead.", + // "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the name field.", // "location": "query", // "type": "string" // } @@ -6193,39 +6327,39 @@ func (r *ProjectsLocationsClustersNodePoolsService) Get(name string) *ProjectsLo return c } -// ClusterId sets the optional parameter "clusterId": The name of the -// cluster. -// This field is deprecated, use name instead. +// ClusterId sets the optional parameter "clusterId": Deprecated. The +// name of the cluster. +// This field has been deprecated and replaced by the name field. func (c *ProjectsLocationsClustersNodePoolsGetCall) ClusterId(clusterId string) *ProjectsLocationsClustersNodePoolsGetCall { c.urlParams_.Set("clusterId", clusterId) return c } -// NodePoolId sets the optional parameter "nodePoolId": The name of the -// node pool. -// This field is deprecated, use name instead. +// NodePoolId sets the optional parameter "nodePoolId": Deprecated. The +// name of the node pool. +// This field has been deprecated and replaced by the name field. func (c *ProjectsLocationsClustersNodePoolsGetCall) NodePoolId(nodePoolId string) *ProjectsLocationsClustersNodePoolsGetCall { c.urlParams_.Set("nodePoolId", nodePoolId) return c } -// ProjectId sets the optional parameter "projectId": The Google -// Developers Console [project ID or +// ProjectId sets the optional parameter "projectId": Deprecated. The +// Google Developers Console [project ID or // project // number](https://developers.google.com/console/help/new/#projec // tnumber). -// This field is deprecated, use name instead. +// This field has been deprecated and replaced by the name field. func (c *ProjectsLocationsClustersNodePoolsGetCall) ProjectId(projectId string) *ProjectsLocationsClustersNodePoolsGetCall { c.urlParams_.Set("projectId", projectId) return c } -// Zone sets the optional parameter "zone": The name of the Google -// Compute Engine +// Zone sets the optional parameter "zone": Deprecated. The name of the +// Google Compute Engine // [zone](/compute/docs/zones#available) in which the // cluster // resides. -// This field is deprecated, use name instead. +// This field has been deprecated and replaced by the name field. func (c *ProjectsLocationsClustersNodePoolsGetCall) Zone(zone string) *ProjectsLocationsClustersNodePoolsGetCall { c.urlParams_.Set("zone", zone) return c @@ -6334,7 +6468,7 @@ func (c *ProjectsLocationsClustersNodePoolsGetCall) Do(opts ...googleapi.CallOpt // ], // "parameters": { // "clusterId": { - // "description": "The name of the cluster.\nThis field is deprecated, use name instead.", + // "description": "Deprecated. The name of the cluster.\nThis field has been deprecated and replaced by the name field.", // "location": "query", // "type": "string" // }, @@ -6346,17 +6480,17 @@ func (c *ProjectsLocationsClustersNodePoolsGetCall) Do(opts ...googleapi.CallOpt // "type": "string" // }, // "nodePoolId": { - // "description": "The name of the node pool.\nThis field is deprecated, use name instead.", + // "description": "Deprecated. The name of the node pool.\nThis field has been deprecated and replaced by the name field.", // "location": "query", // "type": "string" // }, // "projectId": { - // "description": "The Google Developers Console [project ID or project\nnumber](https://developers.google.com/console/help/new/#projectnumber).\nThis field is deprecated, use name instead.", + // "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://developers.google.com/console/help/new/#projectnumber).\nThis field has been deprecated and replaced by the name field.", // "location": "query", // "type": "string" // }, // "zone": { - // "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field is deprecated, use name instead.", + // "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the name field.", // "location": "query", // "type": "string" // } @@ -6390,31 +6524,31 @@ func (r *ProjectsLocationsClustersNodePoolsService) List(parent string) *Project return c } -// ClusterId sets the optional parameter "clusterId": The name of the -// cluster. -// This field is deprecated, use parent instead. +// ClusterId sets the optional parameter "clusterId": Deprecated. The +// name of the cluster. +// This field has been deprecated and replaced by the parent field. func (c *ProjectsLocationsClustersNodePoolsListCall) ClusterId(clusterId string) *ProjectsLocationsClustersNodePoolsListCall { c.urlParams_.Set("clusterId", clusterId) return c } -// ProjectId sets the optional parameter "projectId": The Google -// Developers Console [project ID or +// ProjectId sets the optional parameter "projectId": Deprecated. The +// Google Developers Console [project ID or // project // number](https://developers.google.com/console/help/new/#projec // tnumber). -// This field is deprecated, use parent instead. +// This field has been deprecated and replaced by the parent field. func (c *ProjectsLocationsClustersNodePoolsListCall) ProjectId(projectId string) *ProjectsLocationsClustersNodePoolsListCall { c.urlParams_.Set("projectId", projectId) return c } -// Zone sets the optional parameter "zone": The name of the Google -// Compute Engine +// Zone sets the optional parameter "zone": Deprecated. The name of the +// Google Compute Engine // [zone](/compute/docs/zones#available) in which the // cluster // resides. -// This field is deprecated, use parent instead. +// This field has been deprecated and replaced by the parent field. func (c *ProjectsLocationsClustersNodePoolsListCall) Zone(zone string) *ProjectsLocationsClustersNodePoolsListCall { c.urlParams_.Set("zone", zone) return c @@ -6523,7 +6657,7 @@ func (c *ProjectsLocationsClustersNodePoolsListCall) Do(opts ...googleapi.CallOp // ], // "parameters": { // "clusterId": { - // "description": "The name of the cluster.\nThis field is deprecated, use parent instead.", + // "description": "Deprecated. The name of the cluster.\nThis field has been deprecated and replaced by the parent field.", // "location": "query", // "type": "string" // }, @@ -6535,12 +6669,12 @@ func (c *ProjectsLocationsClustersNodePoolsListCall) Do(opts ...googleapi.CallOp // "type": "string" // }, // "projectId": { - // "description": "The Google Developers Console [project ID or project\nnumber](https://developers.google.com/console/help/new/#projectnumber).\nThis field is deprecated, use parent instead.", + // "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://developers.google.com/console/help/new/#projectnumber).\nThis field has been deprecated and replaced by the parent field.", // "location": "query", // "type": "string" // }, // "zone": { - // "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field is deprecated, use parent instead.", + // "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the parent field.", // "location": "query", // "type": "string" // } @@ -7110,7 +7244,7 @@ type ProjectsLocationsClustersNodePoolsUpdateCall struct { header_ http.Header } -// Update: Updates the version and/or iamge type of a specific node +// Update: Updates the version and/or image type of a specific node // pool. func (r *ProjectsLocationsClustersNodePoolsService) Update(name string, updatenodepoolrequest *UpdateNodePoolRequest) *ProjectsLocationsClustersNodePoolsUpdateCall { c := &ProjectsLocationsClustersNodePoolsUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)} @@ -7205,7 +7339,7 @@ func (c *ProjectsLocationsClustersNodePoolsUpdateCall) Do(opts ...googleapi.Call } return ret, nil // { - // "description": "Updates the version and/or iamge type of a specific node pool.", + // "description": "Updates the version and/or image type of a specific node pool.", // "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}/nodePools/{nodePoolsId}", // "httpMethod": "PUT", // "id": "container.projects.locations.clusters.nodePools.update", @@ -7388,31 +7522,31 @@ func (r *ProjectsLocationsOperationsService) Get(name string) *ProjectsLocations return c } -// OperationId sets the optional parameter "operationId": The -// server-assigned `name` of the operation. -// This field is deprecated, use name instead. +// OperationId sets the optional parameter "operationId": Deprecated. +// The server-assigned `name` of the operation. +// This field has been deprecated and replaced by the name field. func (c *ProjectsLocationsOperationsGetCall) OperationId(operationId string) *ProjectsLocationsOperationsGetCall { c.urlParams_.Set("operationId", operationId) return c } -// ProjectId sets the optional parameter "projectId": The Google -// Developers Console [project ID or +// ProjectId sets the optional parameter "projectId": Deprecated. The +// Google Developers Console [project ID or // project // number](https://support.google.com/cloud/answer/6158840). // This -// field is deprecated, use name instead. +// field has been deprecated and replaced by the name field. func (c *ProjectsLocationsOperationsGetCall) ProjectId(projectId string) *ProjectsLocationsOperationsGetCall { c.urlParams_.Set("projectId", projectId) return c } -// Zone sets the optional parameter "zone": The name of the Google -// Compute Engine +// Zone sets the optional parameter "zone": Deprecated. The name of the +// Google Compute Engine // [zone](/compute/docs/zones#available) in which the // cluster // resides. -// This field is deprecated, use name instead. +// This field has been deprecated and replaced by the name field. func (c *ProjectsLocationsOperationsGetCall) Zone(zone string) *ProjectsLocationsOperationsGetCall { c.urlParams_.Set("zone", zone) return c @@ -7528,17 +7662,17 @@ func (c *ProjectsLocationsOperationsGetCall) Do(opts ...googleapi.CallOption) (* // "type": "string" // }, // "operationId": { - // "description": "The server-assigned `name` of the operation.\nThis field is deprecated, use name instead.", + // "description": "Deprecated. The server-assigned `name` of the operation.\nThis field has been deprecated and replaced by the name field.", // "location": "query", // "type": "string" // }, // "projectId": { - // "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field is deprecated, use name instead.", + // "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field has been deprecated and replaced by the name field.", // "location": "query", // "type": "string" // }, // "zone": { - // "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field is deprecated, use name instead.", + // "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the name field.", // "location": "query", // "type": "string" // } @@ -7573,21 +7707,21 @@ func (r *ProjectsLocationsOperationsService) List(parent string) *ProjectsLocati return c } -// ProjectId sets the optional parameter "projectId": The Google -// Developers Console [project ID or +// ProjectId sets the optional parameter "projectId": Deprecated. The +// Google Developers Console [project ID or // project // number](https://support.google.com/cloud/answer/6158840). // This -// field is deprecated, use parent instead. +// field has been deprecated and replaced by the parent field. func (c *ProjectsLocationsOperationsListCall) ProjectId(projectId string) *ProjectsLocationsOperationsListCall { c.urlParams_.Set("projectId", projectId) return c } -// Zone sets the optional parameter "zone": The name of the Google -// Compute Engine [zone](/compute/docs/zones#available) +// Zone sets the optional parameter "zone": Deprecated. The name of the +// Google Compute Engine [zone](/compute/docs/zones#available) // to return operations for, or `-` for all zones. -// This field is deprecated, use parent instead. +// This field has been deprecated and replaced by the parent field. func (c *ProjectsLocationsOperationsListCall) Zone(zone string) *ProjectsLocationsOperationsListCall { c.urlParams_.Set("zone", zone) return c @@ -7703,12 +7837,12 @@ func (c *ProjectsLocationsOperationsListCall) Do(opts ...googleapi.CallOption) ( // "type": "string" // }, // "projectId": { - // "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field is deprecated, use parent instead.", + // "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field has been deprecated and replaced by the parent field.", // "location": "query", // "type": "string" // }, // "zone": { - // "description": "The name of the Google Compute Engine [zone](/compute/docs/zones#available)\nto return operations for, or `-` for all zones.\nThis field is deprecated, use parent instead.", + // "description": "Deprecated. The name of the Google Compute Engine [zone](/compute/docs/zones#available)\nto return operations for, or `-` for all zones.\nThis field has been deprecated and replaced by the parent field.", // "location": "query", // "type": "string" // } @@ -7863,13 +7997,13 @@ func (c *ProjectsZonesGetServerconfigCall) Do(opts ...googleapi.CallOption) (*Se // "type": "string" // }, // "projectId": { - // "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field is deprecated, use name instead.", + // "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" // }, // "zone": { - // "description": "The name of the Google Compute Engine [zone](/compute/docs/zones#available)\nto return operations for.\nThis field is deprecated, use name instead.", + // "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) to return operations for.\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" @@ -8008,19 +8142,19 @@ func (c *ProjectsZonesClustersAddonsCall) Do(opts ...googleapi.CallOption) (*Ope // ], // "parameters": { // "clusterId": { - // "description": "The name of the cluster to upgrade.\nThis field is deprecated, use name instead.", + // "description": "Deprecated. The name of the cluster to upgrade.\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" // }, // "projectId": { - // "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field is deprecated, use name instead.", + // "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" // }, // "zone": { - // "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field is deprecated, use name instead.", + // "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" @@ -8162,19 +8296,19 @@ func (c *ProjectsZonesClustersCompleteIpRotationCall) Do(opts ...googleapi.CallO // ], // "parameters": { // "clusterId": { - // "description": "The name of the cluster.\nThis field is deprecated, use name instead.", + // "description": "Deprecated. The name of the cluster.\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" // }, // "projectId": { - // "description": "The Google Developers Console [project ID or project\nnumber](https://developers.google.com/console/help/new/#projectnumber).\nThis field is deprecated, use name instead.", + // "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://developers.google.com/console/help/new/#projectnumber).\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" // }, // "zone": { - // "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field is deprecated, use name instead.", + // "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" @@ -8328,13 +8462,13 @@ func (c *ProjectsZonesClustersCreateCall) Do(opts ...googleapi.CallOption) (*Ope // ], // "parameters": { // "projectId": { - // "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field is deprecated, use parent instead.", + // "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field has been deprecated and replaced by the parent field.", // "location": "path", // "required": true, // "type": "string" // }, // "zone": { - // "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field is deprecated, use parent instead.", + // "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the parent field.", // "location": "path", // "required": true, // "type": "string" @@ -8488,7 +8622,7 @@ func (c *ProjectsZonesClustersDeleteCall) Do(opts ...googleapi.CallOption) (*Ope // ], // "parameters": { // "clusterId": { - // "description": "The name of the cluster to delete.\nThis field is deprecated, use name instead.", + // "description": "Deprecated. The name of the cluster to delete.\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" @@ -8499,13 +8633,13 @@ func (c *ProjectsZonesClustersDeleteCall) Do(opts ...googleapi.CallOption) (*Ope // "type": "string" // }, // "projectId": { - // "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field is deprecated, use name instead.", + // "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" // }, // "zone": { - // "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field is deprecated, use name instead.", + // "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" @@ -8659,7 +8793,7 @@ func (c *ProjectsZonesClustersGetCall) Do(opts ...googleapi.CallOption) (*Cluste // ], // "parameters": { // "clusterId": { - // "description": "The name of the cluster to retrieve.\nThis field is deprecated, use name instead.", + // "description": "Deprecated. The name of the cluster to retrieve.\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" @@ -8670,13 +8804,13 @@ func (c *ProjectsZonesClustersGetCall) Do(opts ...googleapi.CallOption) (*Cluste // "type": "string" // }, // "projectId": { - // "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field is deprecated, use name instead.", + // "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" // }, // "zone": { - // "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field is deprecated, use name instead.", + // "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" @@ -8816,19 +8950,19 @@ func (c *ProjectsZonesClustersLegacyAbacCall) Do(opts ...googleapi.CallOption) ( // ], // "parameters": { // "clusterId": { - // "description": "The name of the cluster to update.\nThis field is deprecated, use name instead.", + // "description": "Deprecated. The name of the cluster to update.\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" // }, // "projectId": { - // "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field is deprecated, use name instead.", + // "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" // }, // "zone": { - // "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field is deprecated, use name instead.", + // "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" @@ -8989,13 +9123,13 @@ func (c *ProjectsZonesClustersListCall) Do(opts ...googleapi.CallOption) (*ListC // "type": "string" // }, // "projectId": { - // "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field is deprecated, use parent instead.", + // "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field has been deprecated and replaced by the parent field.", // "location": "path", // "required": true, // "type": "string" // }, // "zone": { - // "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides, or \"-\" for all zones.\nThis field is deprecated, use parent instead.", + // "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides, or \"-\" for all zones.\nThis field has been deprecated and replaced by the parent field.", // "location": "path", // "required": true, // "type": "string" @@ -9134,19 +9268,19 @@ func (c *ProjectsZonesClustersLocationsCall) Do(opts ...googleapi.CallOption) (* // ], // "parameters": { // "clusterId": { - // "description": "The name of the cluster to upgrade.\nThis field is deprecated, use name instead.", + // "description": "Deprecated. The name of the cluster to upgrade.\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" // }, // "projectId": { - // "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field is deprecated, use name instead.", + // "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" // }, // "zone": { - // "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field is deprecated, use name instead.", + // "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" @@ -9288,19 +9422,19 @@ func (c *ProjectsZonesClustersLoggingCall) Do(opts ...googleapi.CallOption) (*Op // ], // "parameters": { // "clusterId": { - // "description": "The name of the cluster to upgrade.\nThis field is deprecated, use name instead.", + // "description": "Deprecated. The name of the cluster to upgrade.\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" // }, // "projectId": { - // "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field is deprecated, use name instead.", + // "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" // }, // "zone": { - // "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.", + // "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" @@ -9442,19 +9576,19 @@ func (c *ProjectsZonesClustersMasterCall) Do(opts ...googleapi.CallOption) (*Ope // ], // "parameters": { // "clusterId": { - // "description": "The name of the cluster to upgrade.\nThis field is deprecated, use name instead.", + // "description": "Deprecated. The name of the cluster to upgrade.\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" // }, // "projectId": { - // "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).", + // "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" // }, // "zone": { - // "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field is deprecated, use name instead.", + // "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" @@ -9596,19 +9730,19 @@ func (c *ProjectsZonesClustersMonitoringCall) Do(opts ...googleapi.CallOption) ( // ], // "parameters": { // "clusterId": { - // "description": "The name of the cluster to upgrade.\nThis field is deprecated, use name instead.", + // "description": "Deprecated. The name of the cluster to upgrade.\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" // }, // "projectId": { - // "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field is deprecated, use name instead.", + // "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" // }, // "zone": { - // "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field is deprecated, use name instead.", + // "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" @@ -9750,19 +9884,19 @@ func (c *ProjectsZonesClustersResourceLabelsCall) Do(opts ...googleapi.CallOptio // ], // "parameters": { // "clusterId": { - // "description": "The name of the cluster.\nThis field is deprecated, use name instead.", + // "description": "Deprecated. The name of the cluster.\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" // }, // "projectId": { - // "description": "The Google Developers Console [project ID or project\nnumber](https://developers.google.com/console/help/new/#projectnumber).\nThis field is deprecated, use name instead.", + // "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://developers.google.com/console/help/new/#projectnumber).\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" // }, // "zone": { - // "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field is deprecated, use name instead.", + // "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" @@ -10062,19 +10196,19 @@ func (c *ProjectsZonesClustersSetMasterAuthCall) Do(opts ...googleapi.CallOption // ], // "parameters": { // "clusterId": { - // "description": "The name of the cluster to upgrade.\nThis field is deprecated, use name instead.", + // "description": "Deprecated. The name of the cluster to upgrade.\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" // }, // "projectId": { - // "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field is deprecated, use name instead.", + // "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" // }, // "zone": { - // "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field is deprecated, use name instead.", + // "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" @@ -10216,19 +10350,19 @@ func (c *ProjectsZonesClustersSetNetworkPolicyCall) Do(opts ...googleapi.CallOpt // ], // "parameters": { // "clusterId": { - // "description": "The name of the cluster.\nThis field is deprecated, use name instead.", + // "description": "Deprecated. The name of the cluster.\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" // }, // "projectId": { - // "description": "The Google Developers Console [project ID or project\nnumber](https://developers.google.com/console/help/new/#projectnumber).\nThis field is deprecated, use name instead.", + // "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://developers.google.com/console/help/new/#projectnumber).\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" // }, // "zone": { - // "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field is deprecated, use name instead.", + // "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" @@ -10370,19 +10504,19 @@ func (c *ProjectsZonesClustersStartIpRotationCall) Do(opts ...googleapi.CallOpti // ], // "parameters": { // "clusterId": { - // "description": "The name of the cluster.\nThis field is deprecated, use name instead.", + // "description": "Deprecated. The name of the cluster.\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" // }, // "projectId": { - // "description": "The Google Developers Console [project ID or project\nnumber](https://developers.google.com/console/help/new/#projectnumber).\nThis field is deprecated, use name instead.", + // "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://developers.google.com/console/help/new/#projectnumber).\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" // }, // "zone": { - // "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field is deprecated, use name instead.", + // "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" @@ -10524,19 +10658,19 @@ func (c *ProjectsZonesClustersUpdateCall) Do(opts ...googleapi.CallOption) (*Ope // ], // "parameters": { // "clusterId": { - // "description": "The name of the cluster to upgrade.\nThis field is deprecated, use name instead.", + // "description": "Deprecated. The name of the cluster to upgrade.\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" // }, // "projectId": { - // "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field is deprecated, use name instead.", + // "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" // }, // "zone": { - // "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field is deprecated, use name instead.", + // "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" @@ -10682,25 +10816,25 @@ func (c *ProjectsZonesClustersNodePoolsAutoscalingCall) Do(opts ...googleapi.Cal // ], // "parameters": { // "clusterId": { - // "description": "The name of the cluster to upgrade.\nThis field is deprecated, use name instead.", + // "description": "Deprecated. The name of the cluster to upgrade.\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" // }, // "nodePoolId": { - // "description": "The name of the node pool to upgrade.\nThis field is deprecated, use name instead.", + // "description": "Deprecated. The name of the node pool to upgrade.\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" // }, // "projectId": { - // "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field is deprecated, use name instead.", + // "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" // }, // "zone": { - // "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field is deprecated, use name instead.", + // "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" @@ -10842,19 +10976,19 @@ func (c *ProjectsZonesClustersNodePoolsCreateCall) Do(opts ...googleapi.CallOpti // ], // "parameters": { // "clusterId": { - // "description": "The name of the cluster.\nThis field is deprecated, use parent instead.", + // "description": "Deprecated. The name of the cluster.\nThis field has been deprecated and replaced by the parent field.", // "location": "path", // "required": true, // "type": "string" // }, // "projectId": { - // "description": "The Google Developers Console [project ID or project\nnumber](https://developers.google.com/console/help/new/#projectnumber).\nThis field is deprecated, use parent instead.", + // "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://developers.google.com/console/help/new/#projectnumber).\nThis field has been deprecated and replaced by the parent field.", // "location": "path", // "required": true, // "type": "string" // }, // "zone": { - // "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field is deprecated, use parent instead.", + // "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the parent field.", // "location": "path", // "required": true, // "type": "string" @@ -11002,7 +11136,7 @@ func (c *ProjectsZonesClustersNodePoolsDeleteCall) Do(opts ...googleapi.CallOpti // ], // "parameters": { // "clusterId": { - // "description": "The name of the cluster.\nThis field is deprecated, use name instead.", + // "description": "Deprecated. The name of the cluster.\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" @@ -11013,19 +11147,19 @@ func (c *ProjectsZonesClustersNodePoolsDeleteCall) Do(opts ...googleapi.CallOpti // "type": "string" // }, // "nodePoolId": { - // "description": "The name of the node pool to delete.\nThis field is deprecated, use name instead.", + // "description": "Deprecated. The name of the node pool to delete.\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" // }, // "projectId": { - // "description": "The Google Developers Console [project ID or project\nnumber](https://developers.google.com/console/help/new/#projectnumber).\nThis field is deprecated, use name instead.", + // "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://developers.google.com/console/help/new/#projectnumber).\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" // }, // "zone": { - // "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field is deprecated, use name instead.", + // "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" @@ -11184,7 +11318,7 @@ func (c *ProjectsZonesClustersNodePoolsGetCall) Do(opts ...googleapi.CallOption) // ], // "parameters": { // "clusterId": { - // "description": "The name of the cluster.\nThis field is deprecated, use name instead.", + // "description": "Deprecated. The name of the cluster.\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" @@ -11195,19 +11329,19 @@ func (c *ProjectsZonesClustersNodePoolsGetCall) Do(opts ...googleapi.CallOption) // "type": "string" // }, // "nodePoolId": { - // "description": "The name of the node pool.\nThis field is deprecated, use name instead.", + // "description": "Deprecated. The name of the node pool.\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" // }, // "projectId": { - // "description": "The Google Developers Console [project ID or project\nnumber](https://developers.google.com/console/help/new/#projectnumber).\nThis field is deprecated, use name instead.", + // "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://developers.google.com/console/help/new/#projectnumber).\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" // }, // "zone": { - // "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field is deprecated, use name instead.", + // "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" @@ -11361,7 +11495,7 @@ func (c *ProjectsZonesClustersNodePoolsListCall) Do(opts ...googleapi.CallOption // ], // "parameters": { // "clusterId": { - // "description": "The name of the cluster.\nThis field is deprecated, use parent instead.", + // "description": "Deprecated. The name of the cluster.\nThis field has been deprecated and replaced by the parent field.", // "location": "path", // "required": true, // "type": "string" @@ -11372,13 +11506,13 @@ func (c *ProjectsZonesClustersNodePoolsListCall) Do(opts ...googleapi.CallOption // "type": "string" // }, // "projectId": { - // "description": "The Google Developers Console [project ID or project\nnumber](https://developers.google.com/console/help/new/#projectnumber).\nThis field is deprecated, use parent instead.", + // "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://developers.google.com/console/help/new/#projectnumber).\nThis field has been deprecated and replaced by the parent field.", // "location": "path", // "required": true, // "type": "string" // }, // "zone": { - // "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field is deprecated, use parent instead.", + // "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the parent field.", // "location": "path", // "required": true, // "type": "string" @@ -11523,25 +11657,25 @@ func (c *ProjectsZonesClustersNodePoolsRollbackCall) Do(opts ...googleapi.CallOp // ], // "parameters": { // "clusterId": { - // "description": "The name of the cluster to rollback.\nThis field is deprecated, use name instead.", + // "description": "Deprecated. The name of the cluster to rollback.\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" // }, // "nodePoolId": { - // "description": "The name of the node pool to rollback.\nThis field is deprecated, use name instead.", + // "description": "Deprecated. The name of the node pool to rollback.\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" // }, // "projectId": { - // "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field is deprecated, use name instead.", + // "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" // }, // "zone": { - // "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field is deprecated, use name instead.", + // "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" @@ -11687,25 +11821,25 @@ func (c *ProjectsZonesClustersNodePoolsSetManagementCall) Do(opts ...googleapi.C // ], // "parameters": { // "clusterId": { - // "description": "The name of the cluster to update.\nThis field is deprecated, use name instead.", + // "description": "Deprecated. The name of the cluster to update.\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" // }, // "nodePoolId": { - // "description": "The name of the node pool to update.\nThis field is deprecated, use name instead.", + // "description": "Deprecated. The name of the node pool to update.\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" // }, // "projectId": { - // "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field is deprecated, use name instead.", + // "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" // }, // "zone": { - // "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field is deprecated, use name instead.", + // "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" @@ -11851,25 +11985,25 @@ func (c *ProjectsZonesClustersNodePoolsSetSizeCall) Do(opts ...googleapi.CallOpt // ], // "parameters": { // "clusterId": { - // "description": "The name of the cluster to update.\nThis field is deprecated, use name instead.", + // "description": "Deprecated. The name of the cluster to update.\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" // }, // "nodePoolId": { - // "description": "The name of the node pool to update.\nThis field is deprecated, use name instead.", + // "description": "Deprecated. The name of the node pool to update.\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" // }, // "projectId": { - // "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).", + // "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" // }, // "zone": { - // "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field is deprecated, use name instead.", + // "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" @@ -11903,7 +12037,7 @@ type ProjectsZonesClustersNodePoolsUpdateCall struct { header_ http.Header } -// Update: Updates the version and/or iamge type of a specific node +// Update: Updates the version and/or image type of a specific node // pool. func (r *ProjectsZonesClustersNodePoolsService) Update(projectId string, zone string, clusterId string, nodePoolId string, updatenodepoolrequest *UpdateNodePoolRequest) *ProjectsZonesClustersNodePoolsUpdateCall { c := &ProjectsZonesClustersNodePoolsUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)} @@ -12004,7 +12138,7 @@ func (c *ProjectsZonesClustersNodePoolsUpdateCall) Do(opts ...googleapi.CallOpti } return ret, nil // { - // "description": "Updates the version and/or iamge type of a specific node pool.", + // "description": "Updates the version and/or image type of a specific node pool.", // "flatPath": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/nodePools/{nodePoolId}/update", // "httpMethod": "POST", // "id": "container.projects.zones.clusters.nodePools.update", @@ -12016,25 +12150,25 @@ func (c *ProjectsZonesClustersNodePoolsUpdateCall) Do(opts ...googleapi.CallOpti // ], // "parameters": { // "clusterId": { - // "description": "The name of the cluster to upgrade.\nThis field is deprecated, use name instead.", + // "description": "Deprecated. The name of the cluster to upgrade.\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" // }, // "nodePoolId": { - // "description": "The name of the node pool to upgrade.\nThis field is deprecated, use name instead.", + // "description": "Deprecated. The name of the node pool to upgrade.\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" // }, // "projectId": { - // "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field is deprecated, use name instead.", + // "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" // }, // "zone": { - // "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field is deprecated, use name instead.", + // "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" @@ -12176,19 +12310,19 @@ func (c *ProjectsZonesOperationsCancelCall) Do(opts ...googleapi.CallOption) (*E // ], // "parameters": { // "operationId": { - // "description": "The server-assigned `name` of the operation.\nThis field is deprecated, use name instead.", + // "description": "Deprecated. The server-assigned `name` of the operation.\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" // }, // "projectId": { - // "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field is deprecated, use name instead.", + // "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" // }, // "zone": { - // "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the operation resides.\nThis field is deprecated, use name instead.", + // "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the operation resides.\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" @@ -12350,19 +12484,19 @@ func (c *ProjectsZonesOperationsGetCall) Do(opts ...googleapi.CallOption) (*Oper // "type": "string" // }, // "operationId": { - // "description": "The server-assigned `name` of the operation.\nThis field is deprecated, use name instead.", + // "description": "Deprecated. The server-assigned `name` of the operation.\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" // }, // "projectId": { - // "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field is deprecated, use name instead.", + // "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" // }, // "zone": { - // "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field is deprecated, use name instead.", + // "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.\nThis field has been deprecated and replaced by the name field.", // "location": "path", // "required": true, // "type": "string" @@ -12519,13 +12653,13 @@ func (c *ProjectsZonesOperationsListCall) Do(opts ...googleapi.CallOption) (*Lis // "type": "string" // }, // "projectId": { - // "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field is deprecated, use parent instead.", + // "description": "Deprecated. The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).\nThis field has been deprecated and replaced by the parent field.", // "location": "path", // "required": true, // "type": "string" // }, // "zone": { - // "description": "The name of the Google Compute Engine [zone](/compute/docs/zones#available)\nto return operations for, or `-` for all zones.\nThis field is deprecated, use parent instead.", + // "description": "Deprecated. The name of the Google Compute Engine [zone](/compute/docs/zones#available)\nto return operations for, or `-` for all zones.\nThis field has been deprecated and replaced by the parent field.", // "location": "path", // "required": true, // "type": "string" diff --git a/vendor/google.golang.org/api/content/v2/content-api.json b/vendor/google.golang.org/api/content/v2/content-api.json index c2a0b97d6..02d950460 100644 --- a/vendor/google.golang.org/api/content/v2/content-api.json +++ b/vendor/google.golang.org/api/content/v2/content-api.json @@ -1,7273 +1,8821 @@ { - "kind": "discovery#restDescription", - "etag": "\"-iA1DTNe4s-I6JZXPt1t1Ypy8IU/WRBt7xb1XuIBXdKCPdttIufspds\"", - "discoveryVersion": "v1", - "id": "content:v2", - "name": "content", - "canonicalName": "Shopping Content", - "version": "v2", - "revision": "20180122", - "title": "Content API for Shopping", - "description": "Manages product items, inventory, and Merchant Center accounts for Google Shopping.", - "ownerDomain": "google.com", - "ownerName": "Google", - "icons": { - "x16": "https://www.gstatic.com/images/branding/product/1x/googleg_16dp.png", - "x32": "https://www.gstatic.com/images/branding/product/1x/googleg_32dp.png" - }, - "documentationLink": "https://developers.google.com/shopping-content", - "protocol": "rest", - "baseUrl": "https://www.googleapis.com/content/v2/", - "basePath": "/content/v2/", - "rootUrl": "https://www.googleapis.com/", - "servicePath": "content/v2/", - "batchPath": "batch/content/v2", - "parameters": { - "alt": { - "type": "string", - "description": "Data format for the response.", - "default": "json", - "enum": [ - "json" - ], - "enumDescriptions": [ - "Responses with Content-Type of application/json" - ], - "location": "query" - }, - "fields": { - "type": "string", - "description": "Selector specifying which fields to include in a partial response.", - "location": "query" - }, - "key": { - "type": "string", - "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" - }, - "oauth_token": { - "type": "string", - "description": "OAuth 2.0 token for the current user.", - "location": "query" - }, - "prettyPrint": { - "type": "boolean", - "description": "Returns response with indentations and line breaks.", - "default": "true", - "location": "query" - }, - "quotaUser": { - "type": "string", - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", - "location": "query" - }, - "userIp": { - "type": "string", - "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", - "location": "query" - } - }, - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/content": { - "description": "Manage your product listings and accounts for Google Shopping" + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/content": { + "description": "Manage your product listings and accounts for Google Shopping" + } + } } - } - } - }, - "schemas": { - "Account": { - "id": "Account", - "type": "object", - "description": "Account data.", - "properties": { - "adultContent": { - "type": "boolean", - "description": "Indicates whether the merchant sells adult content." - }, - "adwordsLinks": { - "type": "array", - "description": "List of linked AdWords accounts that are active or pending approval. To create a new link request, add a new link with status active to the list. It will remain in a pending state until approved or rejected either in the AdWords interface or through the AdWords API. To delete an active link, or to cancel a link request, remove it from the list.", - "items": { - "$ref": "AccountAdwordsLink" - } - }, - "googleMyBusinessLink": { - "$ref": "AccountGoogleMyBusinessLink", - "description": "The GMB account which is linked or in the process of being linked with the Merchant Center accounnt." - }, - "id": { - "type": "string", - "description": "Merchant Center account ID.", - "format": "uint64", - "annotations": { - "required": [ - "content.accounts.update" - ] - } - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"content#account\".", - "default": "content#account" - }, - "name": { - "type": "string", - "description": "Display name for the account.", - "annotations": { - "required": [ - "content.accounts.insert", - "content.accounts.update" - ] - } - }, - "reviewsUrl": { - "type": "string", - "description": "URL for individual seller reviews, i.e., reviews for each child account." - }, - "sellerId": { - "type": "string", - "description": "Client-specific, locally-unique, internal ID for the child account." - }, - "users": { - "type": "array", - "description": "Users with access to the account. Every account (except for subaccounts) must have at least one admin user.", - "items": { - "$ref": "AccountUser" - } - }, - "websiteUrl": { - "type": "string", - "description": "The merchant's website." - }, - "youtubeChannelLinks": { - "type": "array", - "description": "List of linked YouTube channels that are active or pending approval. To create a new link request, add a new link with status active to the list. It will remain in a pending state until approved or rejected in the YT Creator Studio interface. To delete an active link, or to cancel a link request, remove it from the list.", - "items": { - "$ref": "AccountYouTubeChannelLink" - } - } - } }, - "AccountAdwordsLink": { - "id": "AccountAdwordsLink", - "type": "object", - "properties": { - "adwordsId": { - "type": "string", - "description": "Customer ID of the AdWords account.", - "format": "uint64" - }, - "status": { - "type": "string", - "description": "Status of the link between this Merchant Center account and the AdWords account. Upon retrieval, it represents the actual status of the link and can be either active if it was approved in Google AdWords or pending if it's pending approval. Upon insertion, it represents the intended status of the link. Re-uploading a link with status active when it's still pending or with status pending when it's already active will have no effect: the status will remain unchanged. Re-uploading a link with deprecated status inactive is equivalent to not submitting the link at all and will delete the link if it was active or cancel the link request if it was pending." - } - } + "basePath": "/content/v2/", + "baseUrl": "https://www.googleapis.com/content/v2/", + "batchPath": "batch/content/v2", + "canonicalName": "Shopping Content", + "description": "Manages product items, inventory, and Merchant Center accounts for Google Shopping.", + "discoveryVersion": "v1", + "documentationLink": "https://developers.google.com/shopping-content", + "etag": "\"-iA1DTNe4s-I6JZXPt1t1Ypy8IU/7AU-xNxfu9N_gwoFbvlNkxATsnE\"", + "icons": { + "x16": "https://www.gstatic.com/images/branding/product/1x/googleg_16dp.png", + "x32": "https://www.gstatic.com/images/branding/product/1x/googleg_32dp.png" }, - "AccountGoogleMyBusinessLink": { - "id": "AccountGoogleMyBusinessLink", - "type": "object", - "properties": { - "gmbEmail": { - "type": "string", - "description": "The GMB email address." - }, - "status": { - "type": "string", - "description": "Status of the link between this Merchant Center account and the GMB account." - } - } - }, - "AccountIdentifier": { - "id": "AccountIdentifier", - "type": "object", - "properties": { - "aggregatorId": { - "type": "string", - "description": "The aggregator ID, set for aggregators and subaccounts (in that case, it represents the aggregator of the subaccount).", - "format": "uint64" - }, - "merchantId": { - "type": "string", - "description": "The merchant account ID, set for individual accounts and subaccounts.", - "format": "uint64" - } - } - }, - "AccountStatus": { - "id": "AccountStatus", - "type": "object", - "description": "The status of an account, i.e., information about its products, which is computed offline and not returned immediately at insertion time.", - "properties": { - "accountId": { - "type": "string", - "description": "The ID of the account for which the status is reported." - }, - "accountLevelIssues": { - "type": "array", - "description": "A list of account level issues.", - "items": { - "$ref": "AccountStatusAccountLevelIssue" - } - }, - "dataQualityIssues": { - "type": "array", - "description": "A list of data quality issues.", - "items": { - "$ref": "AccountStatusDataQualityIssue" - } - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"content#accountStatus\".", - "default": "content#accountStatus" - }, - "websiteClaimed": { - "type": "boolean", - "description": "Whether the account's website is claimed or not." - } - } - }, - "AccountStatusAccountLevelIssue": { - "id": "AccountStatusAccountLevelIssue", - "type": "object", - "properties": { - "country": { - "type": "string", - "description": "Country for which this issue is reported." - }, - "detail": { - "type": "string", - "description": "Additional details about the issue." - }, - "id": { - "type": "string", - "description": "Issue identifier." - }, - "severity": { - "type": "string", - "description": "Severity of the issue." - }, - "title": { - "type": "string", - "description": "Short description of the issue." - } - } - }, - "AccountStatusDataQualityIssue": { - "id": "AccountStatusDataQualityIssue", - "type": "object", - "properties": { - "country": { - "type": "string", - "description": "Country for which this issue is reported." - }, - "detail": { - "type": "string", - "description": "A more detailed description of the issue." - }, - "displayedValue": { - "type": "string", - "description": "Actual value displayed on the landing page." - }, - "exampleItems": { - "type": "array", - "description": "Example items featuring the issue.", - "items": { - "$ref": "AccountStatusExampleItem" - } - }, - "id": { - "type": "string", - "description": "Issue identifier." - }, - "lastChecked": { - "type": "string", - "description": "Last time the account was checked for this issue." - }, - "location": { - "type": "string", - "description": "The attribute name that is relevant for the issue." - }, - "numItems": { - "type": "integer", - "description": "Number of items in the account found to have the said issue.", - "format": "uint32" - }, - "severity": { - "type": "string", - "description": "Severity of the problem." - }, - "submittedValue": { - "type": "string", - "description": "Submitted value that causes the issue." - } - } - }, - "AccountStatusExampleItem": { - "id": "AccountStatusExampleItem", - "type": "object", - "description": "An example of an item that has poor data quality. An item value on the landing page differs from what is submitted, or conflicts with a policy.", - "properties": { - "itemId": { - "type": "string", - "description": "Unique item ID as specified in the uploaded product data." - }, - "link": { - "type": "string", - "description": "Landing page of the item." - }, - "submittedValue": { - "type": "string", - "description": "The item value that was submitted." - }, - "title": { - "type": "string", - "description": "Title of the item." - }, - "valueOnLandingPage": { - "type": "string", - "description": "The actual value on the landing page." - } - } - }, - "AccountTax": { - "id": "AccountTax", - "type": "object", - "description": "The tax settings of a merchant account.", - "properties": { - "accountId": { - "type": "string", - "description": "The ID of the account to which these account tax settings belong.", - "format": "uint64", - "annotations": { - "required": [ - "content.accounttax.update" - ] - } - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"content#accountTax\".", - "default": "content#accountTax" - }, - "rules": { - "type": "array", - "description": "Tax rules. Updating the tax rules will enable US taxes (not reversible). Defining no rules is equivalent to not charging tax at all.", - "items": { - "$ref": "AccountTaxTaxRule" - } - } - } - }, - "AccountTaxTaxRule": { - "id": "AccountTaxTaxRule", - "type": "object", - "description": "Tax calculation rule to apply in a state or province (USA only).", - "properties": { - "country": { - "type": "string", - "description": "Country code in which tax is applicable." - }, - "locationId": { - "type": "string", - "description": "State (or province) is which the tax is applicable, described by its location id (also called criteria id).", - "format": "uint64", - "annotations": { - "required": [ - "content.accounttax.update" - ] - } - }, - "ratePercent": { - "type": "string", - "description": "Explicit tax rate in percent, represented as a floating point number without the percentage character. Must not be negative." - }, - "shippingTaxed": { - "type": "boolean", - "description": "If true, shipping charges are also taxed." - }, - "useGlobalRate": { - "type": "boolean", - "description": "Whether the tax rate is taken from a global tax table or specified explicitly." - } - } - }, - "AccountUser": { - "id": "AccountUser", - "type": "object", - "properties": { - "admin": { - "type": "boolean", - "description": "Whether user is an admin." - }, - "emailAddress": { - "type": "string", - "description": "User's email address." - } - } - }, - "AccountYouTubeChannelLink": { - "id": "AccountYouTubeChannelLink", - "type": "object", - "properties": { - "channelId": { - "type": "string", - "description": "Channel ID." - }, - "status": { - "type": "string", - "description": "Status of the link between this Merchant Center account and the YouTube channel. Upon retrieval, it represents the actual status of the link and can be either active if it was approved in YT Creator Studio or pending if it's pending approval. Upon insertion, it represents the intended status of the link. Re-uploading a link with status active when it's still pending or with status pending when it's already active will have no effect: the status will remain unchanged. Re-uploading a link with deprecated status inactive is equivalent to not submitting the link at all and will delete the link if it was active or cancel the link request if it was pending." - } - } - }, - "AccountsAuthInfoResponse": { - "id": "AccountsAuthInfoResponse", - "type": "object", - "properties": { - "accountIdentifiers": { - "type": "array", - "description": "The account identifiers corresponding to the authenticated user.\n- For an individual account: only the merchant ID is defined\n- For an aggregator: only the aggregator ID is defined\n- For a subaccount of an MCA: both the merchant ID and the aggregator ID are defined.", - "items": { - "$ref": "AccountIdentifier" - } - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"content#accountsAuthInfoResponse\".", - "default": "content#accountsAuthInfoResponse" - } - } - }, - "AccountsClaimWebsiteResponse": { - "id": "AccountsClaimWebsiteResponse", - "type": "object", - "properties": { - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"content#accountsClaimWebsiteResponse\".", - "default": "content#accountsClaimWebsiteResponse" - } - } - }, - "AccountsCustomBatchRequest": { - "id": "AccountsCustomBatchRequest", - "type": "object", - "properties": { - "entries": { - "type": "array", - "description": "The request entries to be processed in the batch.", - "items": { - "$ref": "AccountsCustomBatchRequestEntry" - } - } - } - }, - "AccountsCustomBatchRequestEntry": { - "id": "AccountsCustomBatchRequestEntry", - "type": "object", - "description": "A batch entry encoding a single non-batch accounts request.", - "properties": { - "account": { - "$ref": "Account", - "description": "The account to create or update. Only defined if the method is insert or update." - }, - "accountId": { - "type": "string", - "description": "The ID of the targeted account. Only defined if the method is get, delete or claimwebsite.", - "format": "uint64" - }, - "batchId": { - "type": "integer", - "description": "An entry ID, unique within the batch request.", - "format": "uint32" - }, - "force": { - "type": "boolean", - "description": "Whether the account should be deleted if the account has offers. Only applicable if the method is delete." - }, - "merchantId": { - "type": "string", - "description": "The ID of the managing account.", - "format": "uint64" - }, - "method": { - "type": "string" - }, - "overwrite": { - "type": "boolean", - "description": "Only applicable if the method is claimwebsite. Indicates whether or not to take the claim from another account in case there is a conflict." - } - } - }, - "AccountsCustomBatchResponse": { - "id": "AccountsCustomBatchResponse", - "type": "object", - "properties": { - "entries": { - "type": "array", - "description": "The result of the execution of the batch requests.", - "items": { - "$ref": "AccountsCustomBatchResponseEntry" - } - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"content#accountsCustomBatchResponse\".", - "default": "content#accountsCustomBatchResponse" - } - } - }, - "AccountsCustomBatchResponseEntry": { - "id": "AccountsCustomBatchResponseEntry", - "type": "object", - "description": "A batch entry encoding a single non-batch accounts response.", - "properties": { - "account": { - "$ref": "Account", - "description": "The retrieved, created, or updated account. Not defined if the method was delete or claimwebsite." - }, - "batchId": { - "type": "integer", - "description": "The ID of the request entry this entry responds to.", - "format": "uint32" - }, - "errors": { - "$ref": "Errors", - "description": "A list of errors defined if and only if the request failed." - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"content#accountsCustomBatchResponseEntry\".", - "default": "content#accountsCustomBatchResponseEntry" - } - } - }, - "AccountsListResponse": { - "id": "AccountsListResponse", - "type": "object", - "properties": { - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"content#accountsListResponse\".", - "default": "content#accountsListResponse" - }, - "nextPageToken": { - "type": "string", - "description": "The token for the retrieval of the next page of accounts." - }, - "resources": { - "type": "array", - "items": { - "$ref": "Account" - } - } - } - }, - "AccountstatusesCustomBatchRequest": { - "id": "AccountstatusesCustomBatchRequest", - "type": "object", - "properties": { - "entries": { - "type": "array", - "description": "The request entries to be processed in the batch.", - "items": { - "$ref": "AccountstatusesCustomBatchRequestEntry" - } - } - } - }, - "AccountstatusesCustomBatchRequestEntry": { - "id": "AccountstatusesCustomBatchRequestEntry", - "type": "object", - "description": "A batch entry encoding a single non-batch accountstatuses request.", - "properties": { - "accountId": { - "type": "string", - "description": "The ID of the (sub-)account whose status to get.", - "format": "uint64" - }, - "batchId": { - "type": "integer", - "description": "An entry ID, unique within the batch request.", - "format": "uint32" - }, - "merchantId": { - "type": "string", - "description": "The ID of the managing account.", - "format": "uint64" - }, - "method": { - "type": "string", - "description": "The method (get)." - } - } - }, - "AccountstatusesCustomBatchResponse": { - "id": "AccountstatusesCustomBatchResponse", - "type": "object", - "properties": { - "entries": { - "type": "array", - "description": "The result of the execution of the batch requests.", - "items": { - "$ref": "AccountstatusesCustomBatchResponseEntry" - } - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"content#accountstatusesCustomBatchResponse\".", - "default": "content#accountstatusesCustomBatchResponse" - } - } - }, - "AccountstatusesCustomBatchResponseEntry": { - "id": "AccountstatusesCustomBatchResponseEntry", - "type": "object", - "description": "A batch entry encoding a single non-batch accountstatuses response.", - "properties": { - "accountStatus": { - "$ref": "AccountStatus", - "description": "The requested account status. Defined if and only if the request was successful." - }, - "batchId": { - "type": "integer", - "description": "The ID of the request entry this entry responds to.", - "format": "uint32" - }, - "errors": { - "$ref": "Errors", - "description": "A list of errors defined if and only if the request failed." - } - } - }, - "AccountstatusesListResponse": { - "id": "AccountstatusesListResponse", - "type": "object", - "properties": { - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"content#accountstatusesListResponse\".", - "default": "content#accountstatusesListResponse" - }, - "nextPageToken": { - "type": "string", - "description": "The token for the retrieval of the next page of account statuses." - }, - "resources": { - "type": "array", - "items": { - "$ref": "AccountStatus" - } - } - } - }, - "AccounttaxCustomBatchRequest": { - "id": "AccounttaxCustomBatchRequest", - "type": "object", - "properties": { - "entries": { - "type": "array", - "description": "The request entries to be processed in the batch.", - "items": { - "$ref": "AccounttaxCustomBatchRequestEntry" - } - } - } - }, - "AccounttaxCustomBatchRequestEntry": { - "id": "AccounttaxCustomBatchRequestEntry", - "type": "object", - "description": "A batch entry encoding a single non-batch accounttax request.", - "properties": { - "accountId": { - "type": "string", - "description": "The ID of the account for which to get/update account tax settings.", - "format": "uint64" - }, - "accountTax": { - "$ref": "AccountTax", - "description": "The account tax settings to update. Only defined if the method is update." - }, - "batchId": { - "type": "integer", - "description": "An entry ID, unique within the batch request.", - "format": "uint32" - }, - "merchantId": { - "type": "string", - "description": "The ID of the managing account.", - "format": "uint64" - }, - "method": { - "type": "string" - } - } - }, - "AccounttaxCustomBatchResponse": { - "id": "AccounttaxCustomBatchResponse", - "type": "object", - "properties": { - "entries": { - "type": "array", - "description": "The result of the execution of the batch requests.", - "items": { - "$ref": "AccounttaxCustomBatchResponseEntry" - } - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"content#accounttaxCustomBatchResponse\".", - "default": "content#accounttaxCustomBatchResponse" - } - } - }, - "AccounttaxCustomBatchResponseEntry": { - "id": "AccounttaxCustomBatchResponseEntry", - "type": "object", - "description": "A batch entry encoding a single non-batch accounttax response.", - "properties": { - "accountTax": { - "$ref": "AccountTax", - "description": "The retrieved or updated account tax settings." - }, - "batchId": { - "type": "integer", - "description": "The ID of the request entry this entry responds to.", - "format": "uint32" - }, - "errors": { - "$ref": "Errors", - "description": "A list of errors defined if and only if the request failed." - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"content#accounttaxCustomBatchResponseEntry\".", - "default": "content#accounttaxCustomBatchResponseEntry" - } - } - }, - "AccounttaxListResponse": { - "id": "AccounttaxListResponse", - "type": "object", - "properties": { - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"content#accounttaxListResponse\".", - "default": "content#accounttaxListResponse" - }, - "nextPageToken": { - "type": "string", - "description": "The token for the retrieval of the next page of account tax settings." - }, - "resources": { - "type": "array", - "items": { - "$ref": "AccountTax" - } - } - } - }, - "CarrierRate": { - "id": "CarrierRate", - "type": "object", - "properties": { - "carrierName": { - "type": "string", - "description": "Carrier service, such as \"UPS\" or \"Fedex\". The list of supported carriers can be retrieved via the getSupportedCarriers method. Required." - }, - "carrierService": { - "type": "string", - "description": "Carrier service, such as \"ground\" or \"2 days\". The list of supported services for a carrier can be retrieved via the getSupportedCarriers method. Required." - }, - "flatAdjustment": { - "$ref": "Price", - "description": "Additive shipping rate modifier. Can be negative. For example { \"value\": \"1\", \"currency\" : \"USD\" } adds $1 to the rate, { \"value\": \"-3\", \"currency\" : \"USD\" } removes $3 from the rate. Optional." - }, - "name": { - "type": "string", - "description": "Name of the carrier rate. Must be unique per rate group. Required." - }, - "originPostalCode": { - "type": "string", - "description": "Shipping origin for this carrier rate. Required." - }, - "percentageAdjustment": { - "type": "string", - "description": "Multiplicative shipping rate modifier as a number in decimal notation. Can be negative. For example \"5.4\" increases the rate by 5.4%, \"-3\" decreases the rate by 3%. Optional." - } - } - }, - "CarriersCarrier": { - "id": "CarriersCarrier", - "type": "object", - "properties": { - "country": { - "type": "string", - "description": "The CLDR country code of the carrier (e.g., \"US\"). Always present." - }, - "name": { - "type": "string", - "description": "The name of the carrier (e.g., \"UPS\"). Always present." - }, - "services": { - "type": "array", - "description": "A list of supported services (e.g., \"ground\") for that carrier. Contains at least one service.", - "items": { + "id": "content:v2", + "kind": "discovery#restDescription", + "name": "content", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "alt": { + "default": "json", + "description": "Data format for the response.", + "enum": [ + "json" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json" + ], + "location": "query", "type": "string" - } - } - } - }, - "Datafeed": { - "id": "Datafeed", - "type": "object", - "description": "Datafeed configuration data.", - "properties": { - "attributeLanguage": { - "type": "string", - "description": "The two-letter ISO 639-1 language in which the attributes are defined in the data feed." }, - "contentLanguage": { - "type": "string", - "description": "[DEPRECATED] Please use targets[].language instead. The two-letter ISO 639-1 language of the items in the feed. Must be a valid language for targetCountry." - }, - "contentType": { - "type": "string", - "description": "The type of data feed. For product inventory feeds, only feeds for local stores, not online stores, are supported.", - "annotations": { - "required": [ - "content.datafeeds.insert", - "content.datafeeds.update" - ] - } - }, - "fetchSchedule": { - "$ref": "DatafeedFetchSchedule", - "description": "Fetch schedule for the feed file." - }, - "fileName": { - "type": "string", - "description": "The filename of the feed. All feeds must have a unique file name.", - "annotations": { - "required": [ - "content.datafeeds.insert", - "content.datafeeds.update" - ] - } - }, - "format": { - "$ref": "DatafeedFormat", - "description": "Format of the feed file." - }, - "id": { - "type": "string", - "description": "The ID of the data feed.", - "format": "int64", - "annotations": { - "required": [ - "content.datafeeds.update" - ] - } - }, - "intendedDestinations": { - "type": "array", - "description": "[DEPRECATED] Please use targets[].includedDestinations instead. The list of intended destinations (corresponds to checked check boxes in Merchant Center).", - "items": { + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "location": "query", "type": "string" - } }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"content#datafeed\".", - "default": "content#datafeed" - }, - "name": { - "type": "string", - "description": "A descriptive name of the data feed.", - "annotations": { - "required": [ - "content.datafeeds.insert" - ] - } - }, - "targetCountry": { - "type": "string", - "description": "[DEPRECATED] Please use targets[].country instead. The country where the items in the feed will be included in the search index, represented as a CLDR territory code." - }, - "targets": { - "type": "array", - "description": "The targets this feed should apply to (country, language, destinations).", - "items": { - "$ref": "DatafeedTarget" - } - } - } - }, - "DatafeedFetchSchedule": { - "id": "DatafeedFetchSchedule", - "type": "object", - "description": "The required fields vary based on the frequency of fetching. For a monthly fetch schedule, day_of_month and hour are required. For a weekly fetch schedule, weekday and hour are required. For a daily fetch schedule, only hour is required.", - "properties": { - "dayOfMonth": { - "type": "integer", - "description": "The day of the month the feed file should be fetched (1-31).", - "format": "uint32" - }, - "fetchUrl": { - "type": "string", - "description": "The URL where the feed file can be fetched. Google Merchant Center will support automatic scheduled uploads using the HTTP, HTTPS, FTP, or SFTP protocols, so the value will need to be a valid link using one of those four protocols." - }, - "hour": { - "type": "integer", - "description": "The hour of the day the feed file should be fetched (0-23).", - "format": "uint32" - }, - "minuteOfHour": { - "type": "integer", - "description": "The minute of the hour the feed file should be fetched (0-59). Read-only.", - "format": "uint32" - }, - "password": { - "type": "string", - "description": "An optional password for fetch_url." - }, - "paused": { - "type": "boolean", - "description": "Whether the scheduled fetch is paused or not." - }, - "timeZone": { - "type": "string", - "description": "Time zone used for schedule. UTC by default. E.g., \"America/Los_Angeles\"." - }, - "username": { - "type": "string", - "description": "An optional user name for fetch_url." - }, - "weekday": { - "type": "string", - "description": "The day of the week the feed file should be fetched." - } - } - }, - "DatafeedFormat": { - "id": "DatafeedFormat", - "type": "object", - "properties": { - "columnDelimiter": { - "type": "string", - "description": "Delimiter for the separation of values in a delimiter-separated values feed. If not specified, the delimiter will be auto-detected. Ignored for non-DSV data feeds." - }, - "fileEncoding": { - "type": "string", - "description": "Character encoding scheme of the data feed. If not specified, the encoding will be auto-detected." - }, - "quotingMode": { - "type": "string", - "description": "Specifies how double quotes are interpreted. If not specified, the mode will be auto-detected. Ignored for non-DSV data feeds." - } - } - }, - "DatafeedStatus": { - "id": "DatafeedStatus", - "type": "object", - "description": "The status of a datafeed, i.e., the result of the last retrieval of the datafeed computed asynchronously when the feed processing is finished.", - "properties": { - "country": { - "type": "string", - "description": "The country for which the status is reported, represented as a CLDR territory code." - }, - "datafeedId": { - "type": "string", - "description": "The ID of the feed for which the status is reported.", - "format": "uint64" - }, - "errors": { - "type": "array", - "description": "The list of errors occurring in the feed.", - "items": { - "$ref": "DatafeedStatusError" - } - }, - "itemsTotal": { - "type": "string", - "description": "The number of items in the feed that were processed.", - "format": "uint64" - }, - "itemsValid": { - "type": "string", - "description": "The number of items in the feed that were valid.", - "format": "uint64" - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"content#datafeedStatus\".", - "default": "content#datafeedStatus" - }, - "language": { - "type": "string", - "description": "The two-letter ISO 639-1 language for which the status is reported." - }, - "lastUploadDate": { - "type": "string", - "description": "The last date at which the feed was uploaded." - }, - "processingStatus": { - "type": "string", - "description": "The processing status of the feed." - }, - "warnings": { - "type": "array", - "description": "The list of errors occurring in the feed.", - "items": { - "$ref": "DatafeedStatusError" - } - } - } - }, - "DatafeedStatusError": { - "id": "DatafeedStatusError", - "type": "object", - "description": "An error occurring in the feed, like \"invalid price\".", - "properties": { - "code": { - "type": "string", - "description": "The code of the error, e.g., \"validation/invalid_value\"." - }, - "count": { - "type": "string", - "description": "The number of occurrences of the error in the feed.", - "format": "uint64" - }, - "examples": { - "type": "array", - "description": "A list of example occurrences of the error, grouped by product.", - "items": { - "$ref": "DatafeedStatusExample" - } - }, - "message": { - "type": "string", - "description": "The error message, e.g., \"Invalid price\"." - } - } - }, - "DatafeedStatusExample": { - "id": "DatafeedStatusExample", - "type": "object", - "description": "An example occurrence for a particular error.", - "properties": { - "itemId": { - "type": "string", - "description": "The ID of the example item." - }, - "lineNumber": { - "type": "string", - "description": "Line number in the data feed where the example is found.", - "format": "uint64" - }, - "value": { - "type": "string", - "description": "The problematic value." - } - } - }, - "DatafeedTarget": { - "id": "DatafeedTarget", - "type": "object", - "properties": { - "country": { - "type": "string", - "description": "The country where the items in the feed will be included in the search index, represented as a CLDR territory code." - }, - "excludedDestinations": { - "type": "array", - "description": "The list of destinations to exclude for this target (corresponds to unchecked check boxes in Merchant Center).", - "items": { + "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" - } }, - "includedDestinations": { - "type": "array", - "description": "The list of destinations to include for this target (corresponds to checked check boxes in Merchant Center). Default destinations are always included unless provided in the excluded_destination field.", - "items": { + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", "type": "string" - } }, - "language": { - "type": "string", - "description": "The two-letter ISO 639-1 language of the items in the feed. Must be a valid language for targets[].country." - } - } - }, - "DatafeedsCustomBatchRequest": { - "id": "DatafeedsCustomBatchRequest", - "type": "object", - "properties": { - "entries": { - "type": "array", - "description": "The request entries to be processed in the batch.", - "items": { - "$ref": "DatafeedsCustomBatchRequestEntry" - } - } - } - }, - "DatafeedsCustomBatchRequestEntry": { - "id": "DatafeedsCustomBatchRequestEntry", - "type": "object", - "description": "A batch entry encoding a single non-batch datafeeds request.", - "properties": { - "batchId": { - "type": "integer", - "description": "An entry ID, unique within the batch request.", - "format": "uint32" + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" }, - "datafeed": { - "$ref": "Datafeed", - "description": "The data feed to insert." - }, - "datafeedId": { - "type": "string", - "description": "The ID of the data feed to get or delete.", - "format": "uint64" - }, - "merchantId": { - "type": "string", - "description": "The ID of the managing account.", - "format": "uint64" - }, - "method": { - "type": "string" - } - } - }, - "DatafeedsCustomBatchResponse": { - "id": "DatafeedsCustomBatchResponse", - "type": "object", - "properties": { - "entries": { - "type": "array", - "description": "The result of the execution of the batch requests.", - "items": { - "$ref": "DatafeedsCustomBatchResponseEntry" - } - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"content#datafeedsCustomBatchResponse\".", - "default": "content#datafeedsCustomBatchResponse" - } - } - }, - "DatafeedsCustomBatchResponseEntry": { - "id": "DatafeedsCustomBatchResponseEntry", - "type": "object", - "description": "A batch entry encoding a single non-batch datafeeds response.", - "properties": { - "batchId": { - "type": "integer", - "description": "The ID of the request entry this entry responds to.", - "format": "uint32" - }, - "datafeed": { - "$ref": "Datafeed", - "description": "The requested data feed. Defined if and only if the request was successful." - }, - "errors": { - "$ref": "Errors", - "description": "A list of errors defined if and only if the request failed." - } - } - }, - "DatafeedsListResponse": { - "id": "DatafeedsListResponse", - "type": "object", - "properties": { - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"content#datafeedsListResponse\".", - "default": "content#datafeedsListResponse" - }, - "nextPageToken": { - "type": "string", - "description": "The token for the retrieval of the next page of datafeeds." - }, - "resources": { - "type": "array", - "items": { - "$ref": "Datafeed" - } - } - } - }, - "DatafeedstatusesCustomBatchRequest": { - "id": "DatafeedstatusesCustomBatchRequest", - "type": "object", - "properties": { - "entries": { - "type": "array", - "description": "The request entries to be processed in the batch.", - "items": { - "$ref": "DatafeedstatusesCustomBatchRequestEntry" - } - } - } - }, - "DatafeedstatusesCustomBatchRequestEntry": { - "id": "DatafeedstatusesCustomBatchRequestEntry", - "type": "object", - "description": "A batch entry encoding a single non-batch datafeedstatuses request.", - "properties": { - "batchId": { - "type": "integer", - "description": "An entry ID, unique within the batch request.", - "format": "uint32" - }, - "country": { - "type": "string", - "description": "The country for which to get the datafeed status. If this parameter is provided then language must also be provided. Note that for multi-target datafeeds this parameter is required." - }, - "datafeedId": { - "type": "string", - "description": "The ID of the data feed to get.", - "format": "uint64" - }, - "language": { - "type": "string", - "description": "The language for which to get the datafeed status. If this parameter is provided then country must also be provided. Note that for multi-target datafeeds this parameter is required." - }, - "merchantId": { - "type": "string", - "description": "The ID of the managing account.", - "format": "uint64" - }, - "method": { - "type": "string" - } - } - }, - "DatafeedstatusesCustomBatchResponse": { - "id": "DatafeedstatusesCustomBatchResponse", - "type": "object", - "properties": { - "entries": { - "type": "array", - "description": "The result of the execution of the batch requests.", - "items": { - "$ref": "DatafeedstatusesCustomBatchResponseEntry" - } - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"content#datafeedstatusesCustomBatchResponse\".", - "default": "content#datafeedstatusesCustomBatchResponse" - } - } - }, - "DatafeedstatusesCustomBatchResponseEntry": { - "id": "DatafeedstatusesCustomBatchResponseEntry", - "type": "object", - "description": "A batch entry encoding a single non-batch datafeedstatuses response.", - "properties": { - "batchId": { - "type": "integer", - "description": "The ID of the request entry this entry responds to.", - "format": "uint32" - }, - "datafeedStatus": { - "$ref": "DatafeedStatus", - "description": "The requested data feed status. Defined if and only if the request was successful." - }, - "errors": { - "$ref": "Errors", - "description": "A list of errors defined if and only if the request failed." - } - } - }, - "DatafeedstatusesListResponse": { - "id": "DatafeedstatusesListResponse", - "type": "object", - "properties": { - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"content#datafeedstatusesListResponse\".", - "default": "content#datafeedstatusesListResponse" - }, - "nextPageToken": { - "type": "string", - "description": "The token for the retrieval of the next page of datafeed statuses." - }, - "resources": { - "type": "array", - "items": { - "$ref": "DatafeedStatus" - } - } - } - }, - "DeliveryTime": { - "id": "DeliveryTime", - "type": "object", - "properties": { - "holidayCutoffs": { - "type": "array", - "description": "Holiday cutoff definitions. If configured, they specify order cutoff times for holiday-specific shipping.", - "items": { - "$ref": "HolidayCutoff" - } - }, - "maxTransitTimeInDays": { - "type": "integer", - "description": "Maximum number of business days that is spent in transit. 0 means same day delivery, 1 means next day delivery. Must be greater than or equal to minTransitTimeInDays. Required.", - "format": "uint32" - }, - "minTransitTimeInDays": { - "type": "integer", - "description": "Minimum number of business days that is spent in transit. 0 means same day delivery, 1 means next day delivery. Required.", - "format": "uint32" - } - } - }, - "Error": { - "id": "Error", - "type": "object", - "description": "An error returned by the API.", - "properties": { - "domain": { - "type": "string", - "description": "The domain of the error." - }, - "message": { - "type": "string", - "description": "A description of the error." - }, - "reason": { - "type": "string", - "description": "The error code." - } - } - }, - "Errors": { - "id": "Errors", - "type": "object", - "description": "A list of errors returned by a failed batch entry.", - "properties": { - "code": { - "type": "integer", - "description": "The HTTP status of the first error in errors.", - "format": "uint32" - }, - "errors": { - "type": "array", - "description": "A list of errors.", - "items": { - "$ref": "Error" - } - }, - "message": { - "type": "string", - "description": "The message of the first error in errors." - } - } - }, - "Headers": { - "id": "Headers", - "type": "object", - "description": "A non-empty list of row or column headers for a table. Exactly one of prices, weights, numItems, postalCodeGroupNames, or locations must be set.", - "properties": { - "locations": { - "type": "array", - "description": "A list of location ID sets. Must be non-empty. Can only be set if all other fields are not set.", - "items": { - "$ref": "LocationIdSet" - } - }, - "numberOfItems": { - "type": "array", - "description": "A list of inclusive number of items upper bounds. The last value can be \"infinity\". For example [\"10\", \"50\", \"infinity\"] represents the headers \"\u003c= 10 items\", \" 50 items\". Must be non-empty. Can only be set if all other fields are not set.", - "items": { + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", + "location": "query", "type": "string" - } }, - "postalCodeGroupNames": { - "type": "array", - "description": "A list of postal group names. The last value can be \"all other locations\". Example: [\"zone 1\", \"zone 2\", \"all other locations\"]. The referred postal code groups must match the delivery country of the service. Must be non-empty. Can only be set if all other fields are not set.", - "items": { + "userIp": { + "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", + "location": "query", "type": "string" - } - }, - "prices": { - "type": "array", - "description": "A list of inclusive order price upper bounds. The last price's value can be \"infinity\". For example [{\"value\": \"10\", \"currency\": \"USD\"}, {\"value\": \"500\", \"currency\": \"USD\"}, {\"value\": \"infinity\", \"currency\": \"USD\"}] represents the headers \"\u003c= $10\", \" $500\". All prices within a service must have the same currency. Must be non-empty. Can only be set if all other fields are not set.", - "items": { - "$ref": "Price" - } - }, - "weights": { - "type": "array", - "description": "A list of inclusive order weight upper bounds. The last weight's value can be \"infinity\". For example [{\"value\": \"10\", \"unit\": \"kg\"}, {\"value\": \"50\", \"unit\": \"kg\"}, {\"value\": \"infinity\", \"unit\": \"kg\"}] represents the headers \"\u003c= 10kg\", \" 50kg\". All weights within a service must have the same unit. Must be non-empty. Can only be set if all other fields are not set.", - "items": { - "$ref": "Weight" - } } - } }, - "HolidayCutoff": { - "id": "HolidayCutoff", - "type": "object", - "properties": { - "deadlineDate": { - "type": "string", - "description": "Date of the order deadline, in ISO 8601 format. E.g. \"2016-11-29\" for 29th November 2016. Required." + "protocol": "rest", + "resources": { + "accounts": { + "methods": { + "authinfo": { + "description": "Returns information about the authenticated user.", + "httpMethod": "GET", + "id": "content.accounts.authinfo", + "path": "accounts/authinfo", + "response": { + "$ref": "AccountsAuthInfoResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/content" + ] + }, + "claimwebsite": { + "description": "Claims the website of a Merchant Center sub-account.", + "httpMethod": "POST", + "id": "content.accounts.claimwebsite", + "parameterOrder": [ + "merchantId", + "accountId" + ], + "parameters": { + "accountId": { + "description": "The ID of the account whose website is claimed.", + "format": "uint64", + "location": "path", + "required": true, + "type": "string" + }, + "merchantId": { + "description": "The ID of the managing account. If this parameter is not the same as accountId, then this account must be a multi-client account and accountId must be the ID of a sub-account of this account.", + "format": "uint64", + "location": "path", + "required": true, + "type": "string" + }, + "overwrite": { + "description": "Only available to selected merchants. When set to True, this flag removes any existing claim on the requested website by another account and replaces it with a claim from this account.", + "location": "query", + "type": "boolean" + } + }, + "path": "{merchantId}/accounts/{accountId}/claimwebsite", + "response": { + "$ref": "AccountsClaimWebsiteResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/content" + ] + }, + "custombatch": { + "description": "Retrieves, inserts, updates, and deletes multiple Merchant Center (sub-)accounts in a single request.", + "httpMethod": "POST", + "id": "content.accounts.custombatch", + "parameters": { + "dryRun": { + "description": "Flag to run the request in dry-run mode.", + "location": "query", + "type": "boolean" + } + }, + "path": "accounts/batch", + "request": { + "$ref": "AccountsCustomBatchRequest" + }, + "response": { + "$ref": "AccountsCustomBatchResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/content" + ] + }, + "delete": { + "description": "Deletes a Merchant Center sub-account.", + "httpMethod": "DELETE", + "id": "content.accounts.delete", + "parameterOrder": [ + "merchantId", + "accountId" + ], + "parameters": { + "accountId": { + "description": "The ID of the account.", + "format": "uint64", + "location": "path", + "required": true, + "type": "string" + }, + "dryRun": { + "description": "Flag to run the request in dry-run mode.", + "location": "query", + "type": "boolean" + }, + "force": { + "default": "false", + "description": "Flag to delete sub-accounts with products. The default value is false.", + "location": "query", + "type": "boolean" + }, + "merchantId": { + "description": "The ID of the managing account. This must be a multi-client account, and accountId must be the ID of a sub-account of this account.", + "format": "uint64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{merchantId}/accounts/{accountId}", + "scopes": [ + "https://www.googleapis.com/auth/content" + ] + }, + "get": { + "description": "Retrieves a Merchant Center account.", + "httpMethod": "GET", + "id": "content.accounts.get", + "parameterOrder": [ + "merchantId", + "accountId" + ], + "parameters": { + "accountId": { + "description": "The ID of the account.", + "format": "uint64", + "location": "path", + "required": true, + "type": "string" + }, + "merchantId": { + "description": "The ID of the managing account. If this parameter is not the same as accountId, then this account must be a multi-client account and accountId must be the ID of a sub-account of this account.", + "format": "uint64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{merchantId}/accounts/{accountId}", + "response": { + "$ref": "Account" + }, + "scopes": [ + "https://www.googleapis.com/auth/content" + ] + }, + "insert": { + "description": "Creates a Merchant Center sub-account.", + "httpMethod": "POST", + "id": "content.accounts.insert", + "parameterOrder": [ + "merchantId" + ], + "parameters": { + "dryRun": { + "description": "Flag to run the request in dry-run mode.", + "location": "query", + "type": "boolean" + }, + "merchantId": { + "description": "The ID of the managing account. This must be a multi-client account.", + "format": "uint64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{merchantId}/accounts", + "request": { + "$ref": "Account" + }, + "response": { + "$ref": "Account" + }, + "scopes": [ + "https://www.googleapis.com/auth/content" + ] + }, + "list": { + "description": "Lists the sub-accounts in your Merchant Center account.", + "httpMethod": "GET", + "id": "content.accounts.list", + "parameterOrder": [ + "merchantId" + ], + "parameters": { + "maxResults": { + "description": "The maximum number of accounts to return in the response, used for paging.", + "format": "uint32", + "location": "query", + "type": "integer" + }, + "merchantId": { + "description": "The ID of the managing account. This must be a multi-client account.", + "format": "uint64", + "location": "path", + "required": true, + "type": "string" + }, + "pageToken": { + "description": "The token returned by the previous request.", + "location": "query", + "type": "string" + } + }, + "path": "{merchantId}/accounts", + "response": { + "$ref": "AccountsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/content" + ] + }, + "patch": { + "description": "Updates a Merchant Center account. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "content.accounts.patch", + "parameterOrder": [ + "merchantId", + "accountId" + ], + "parameters": { + "accountId": { + "description": "The ID of the account.", + "format": "uint64", + "location": "path", + "required": true, + "type": "string" + }, + "dryRun": { + "description": "Flag to run the request in dry-run mode.", + "location": "query", + "type": "boolean" + }, + "merchantId": { + "description": "The ID of the managing account. If this parameter is not the same as accountId, then this account must be a multi-client account and accountId must be the ID of a sub-account of this account.", + "format": "uint64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{merchantId}/accounts/{accountId}", + "request": { + "$ref": "Account" + }, + "response": { + "$ref": "Account" + }, + "scopes": [ + "https://www.googleapis.com/auth/content" + ] + }, + "update": { + "description": "Updates a Merchant Center account.", + "httpMethod": "PUT", + "id": "content.accounts.update", + "parameterOrder": [ + "merchantId", + "accountId" + ], + "parameters": { + "accountId": { + "description": "The ID of the account.", + "format": "uint64", + "location": "path", + "required": true, + "type": "string" + }, + "dryRun": { + "description": "Flag to run the request in dry-run mode.", + "location": "query", + "type": "boolean" + }, + "merchantId": { + "description": "The ID of the managing account. If this parameter is not the same as accountId, then this account must be a multi-client account and accountId must be the ID of a sub-account of this account.", + "format": "uint64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{merchantId}/accounts/{accountId}", + "request": { + "$ref": "Account" + }, + "response": { + "$ref": "Account" + }, + "scopes": [ + "https://www.googleapis.com/auth/content" + ] + } + } }, - "deadlineHour": { - "type": "integer", - "description": "Hour of the day on the deadline date until which the order has to be placed to qualify for the delivery guarantee. Possible values are: 0 (midnight), 1, ..., 12 (noon), 13, ..., 23. Required.", - "format": "uint32" + "accountstatuses": { + "methods": { + "custombatch": { + "httpMethod": "POST", + "id": "content.accountstatuses.custombatch", + "path": "accountstatuses/batch", + "request": { + "$ref": "AccountstatusesCustomBatchRequest" + }, + "response": { + "$ref": "AccountstatusesCustomBatchResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/content" + ] + }, + "get": { + "description": "Retrieves the status of a Merchant Center account.", + "httpMethod": "GET", + "id": "content.accountstatuses.get", + "parameterOrder": [ + "merchantId", + "accountId" + ], + "parameters": { + "accountId": { + "description": "The ID of the account.", + "format": "uint64", + "location": "path", + "required": true, + "type": "string" + }, + "merchantId": { + "description": "The ID of the managing account. If this parameter is not the same as accountId, then this account must be a multi-client account and accountId must be the ID of a sub-account of this account.", + "format": "uint64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{merchantId}/accountstatuses/{accountId}", + "response": { + "$ref": "AccountStatus" + }, + "scopes": [ + "https://www.googleapis.com/auth/content" + ] + }, + "list": { + "description": "Lists the statuses of the sub-accounts in your Merchant Center account.", + "httpMethod": "GET", + "id": "content.accountstatuses.list", + "parameterOrder": [ + "merchantId" + ], + "parameters": { + "maxResults": { + "description": "The maximum number of account statuses to return in the response, used for paging.", + "format": "uint32", + "location": "query", + "type": "integer" + }, + "merchantId": { + "description": "The ID of the managing account. This must be a multi-client account.", + "format": "uint64", + "location": "path", + "required": true, + "type": "string" + }, + "pageToken": { + "description": "The token returned by the previous request.", + "location": "query", + "type": "string" + } + }, + "path": "{merchantId}/accountstatuses", + "response": { + "$ref": "AccountstatusesListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/content" + ] + } + } }, - "deadlineTimezone": { - "type": "string", - "description": "Timezone identifier for the deadline hour. A list of identifiers can be found in the AdWords API documentation. E.g. \"Europe/Zurich\". Required." + "accounttax": { + "methods": { + "custombatch": { + "description": "Retrieves and updates tax settings of multiple accounts in a single request.", + "httpMethod": "POST", + "id": "content.accounttax.custombatch", + "parameters": { + "dryRun": { + "description": "Flag to run the request in dry-run mode.", + "location": "query", + "type": "boolean" + } + }, + "path": "accounttax/batch", + "request": { + "$ref": "AccounttaxCustomBatchRequest" + }, + "response": { + "$ref": "AccounttaxCustomBatchResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/content" + ] + }, + "get": { + "description": "Retrieves the tax settings of the account.", + "httpMethod": "GET", + "id": "content.accounttax.get", + "parameterOrder": [ + "merchantId", + "accountId" + ], + "parameters": { + "accountId": { + "description": "The ID of the account for which to get/update account tax settings.", + "format": "uint64", + "location": "path", + "required": true, + "type": "string" + }, + "merchantId": { + "description": "The ID of the managing account. If this parameter is not the same as accountId, then this account must be a multi-client account and accountId must be the ID of a sub-account of this account.", + "format": "uint64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{merchantId}/accounttax/{accountId}", + "response": { + "$ref": "AccountTax" + }, + "scopes": [ + "https://www.googleapis.com/auth/content" + ] + }, + "list": { + "description": "Lists the tax settings of the sub-accounts in your Merchant Center account.", + "httpMethod": "GET", + "id": "content.accounttax.list", + "parameterOrder": [ + "merchantId" + ], + "parameters": { + "maxResults": { + "description": "The maximum number of tax settings to return in the response, used for paging.", + "format": "uint32", + "location": "query", + "type": "integer" + }, + "merchantId": { + "description": "The ID of the managing account. This must be a multi-client account.", + "format": "uint64", + "location": "path", + "required": true, + "type": "string" + }, + "pageToken": { + "description": "The token returned by the previous request.", + "location": "query", + "type": "string" + } + }, + "path": "{merchantId}/accounttax", + "response": { + "$ref": "AccounttaxListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/content" + ] + }, + "patch": { + "description": "Updates the tax settings of the account. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "content.accounttax.patch", + "parameterOrder": [ + "merchantId", + "accountId" + ], + "parameters": { + "accountId": { + "description": "The ID of the account for which to get/update account tax settings.", + "format": "uint64", + "location": "path", + "required": true, + "type": "string" + }, + "dryRun": { + "description": "Flag to run the request in dry-run mode.", + "location": "query", + "type": "boolean" + }, + "merchantId": { + "description": "The ID of the managing account. If this parameter is not the same as accountId, then this account must be a multi-client account and accountId must be the ID of a sub-account of this account.", + "format": "uint64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{merchantId}/accounttax/{accountId}", + "request": { + "$ref": "AccountTax" + }, + "response": { + "$ref": "AccountTax" + }, + "scopes": [ + "https://www.googleapis.com/auth/content" + ] + }, + "update": { + "description": "Updates the tax settings of the account.", + "httpMethod": "PUT", + "id": "content.accounttax.update", + "parameterOrder": [ + "merchantId", + "accountId" + ], + "parameters": { + "accountId": { + "description": "The ID of the account for which to get/update account tax settings.", + "format": "uint64", + "location": "path", + "required": true, + "type": "string" + }, + "dryRun": { + "description": "Flag to run the request in dry-run mode.", + "location": "query", + "type": "boolean" + }, + "merchantId": { + "description": "The ID of the managing account. If this parameter is not the same as accountId, then this account must be a multi-client account and accountId must be the ID of a sub-account of this account.", + "format": "uint64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{merchantId}/accounttax/{accountId}", + "request": { + "$ref": "AccountTax" + }, + "response": { + "$ref": "AccountTax" + }, + "scopes": [ + "https://www.googleapis.com/auth/content" + ] + } + } }, - "holidayId": { - "type": "string", - "description": "Unique identifier for the holiday. Required." + "datafeeds": { + "methods": { + "custombatch": { + "httpMethod": "POST", + "id": "content.datafeeds.custombatch", + "parameters": { + "dryRun": { + "description": "Flag to run the request in dry-run mode.", + "location": "query", + "type": "boolean" + } + }, + "path": "datafeeds/batch", + "request": { + "$ref": "DatafeedsCustomBatchRequest" + }, + "response": { + "$ref": "DatafeedsCustomBatchResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/content" + ] + }, + "delete": { + "description": "Deletes a datafeed configuration from your Merchant Center account.", + "httpMethod": "DELETE", + "id": "content.datafeeds.delete", + "parameterOrder": [ + "merchantId", + "datafeedId" + ], + "parameters": { + "datafeedId": { + "description": "The ID of the datafeed.", + "format": "uint64", + "location": "path", + "required": true, + "type": "string" + }, + "dryRun": { + "description": "Flag to run the request in dry-run mode.", + "location": "query", + "type": "boolean" + }, + "merchantId": { + "description": "The ID of the account that manages the datafeed. This account cannot be a multi-client account.", + "format": "uint64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{merchantId}/datafeeds/{datafeedId}", + "scopes": [ + "https://www.googleapis.com/auth/content" + ] + }, + "get": { + "description": "Retrieves a datafeed configuration from your Merchant Center account.", + "httpMethod": "GET", + "id": "content.datafeeds.get", + "parameterOrder": [ + "merchantId", + "datafeedId" + ], + "parameters": { + "datafeedId": { + "description": "The ID of the datafeed.", + "format": "uint64", + "location": "path", + "required": true, + "type": "string" + }, + "merchantId": { + "description": "The ID of the account that manages the datafeed. This account cannot be a multi-client account.", + "format": "uint64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{merchantId}/datafeeds/{datafeedId}", + "response": { + "$ref": "Datafeed" + }, + "scopes": [ + "https://www.googleapis.com/auth/content" + ] + }, + "insert": { + "description": "Registers a datafeed configuration with your Merchant Center account.", + "httpMethod": "POST", + "id": "content.datafeeds.insert", + "parameterOrder": [ + "merchantId" + ], + "parameters": { + "dryRun": { + "description": "Flag to run the request in dry-run mode.", + "location": "query", + "type": "boolean" + }, + "merchantId": { + "description": "The ID of the account that manages the datafeed. This account cannot be a multi-client account.", + "format": "uint64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{merchantId}/datafeeds", + "request": { + "$ref": "Datafeed" + }, + "response": { + "$ref": "Datafeed" + }, + "scopes": [ + "https://www.googleapis.com/auth/content" + ] + }, + "list": { + "description": "Lists the configurations for datafeeds in your Merchant Center account.", + "httpMethod": "GET", + "id": "content.datafeeds.list", + "parameterOrder": [ + "merchantId" + ], + "parameters": { + "maxResults": { + "description": "The maximum number of products to return in the response, used for paging.", + "format": "uint32", + "location": "query", + "type": "integer" + }, + "merchantId": { + "description": "The ID of the account that manages the datafeeds. This account cannot be a multi-client account.", + "format": "uint64", + "location": "path", + "required": true, + "type": "string" + }, + "pageToken": { + "description": "The token returned by the previous request.", + "location": "query", + "type": "string" + } + }, + "path": "{merchantId}/datafeeds", + "response": { + "$ref": "DatafeedsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/content" + ] + }, + "patch": { + "description": "Updates a datafeed configuration of your Merchant Center account. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "content.datafeeds.patch", + "parameterOrder": [ + "merchantId", + "datafeedId" + ], + "parameters": { + "datafeedId": { + "description": "The ID of the datafeed.", + "format": "uint64", + "location": "path", + "required": true, + "type": "string" + }, + "dryRun": { + "description": "Flag to run the request in dry-run mode.", + "location": "query", + "type": "boolean" + }, + "merchantId": { + "description": "The ID of the account that manages the datafeed. This account cannot be a multi-client account.", + "format": "uint64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{merchantId}/datafeeds/{datafeedId}", + "request": { + "$ref": "Datafeed" + }, + "response": { + "$ref": "Datafeed" + }, + "scopes": [ + "https://www.googleapis.com/auth/content" + ] + }, + "update": { + "description": "Updates a datafeed configuration of your Merchant Center account.", + "httpMethod": "PUT", + "id": "content.datafeeds.update", + "parameterOrder": [ + "merchantId", + "datafeedId" + ], + "parameters": { + "datafeedId": { + "description": "The ID of the datafeed.", + "format": "uint64", + "location": "path", + "required": true, + "type": "string" + }, + "dryRun": { + "description": "Flag to run the request in dry-run mode.", + "location": "query", + "type": "boolean" + }, + "merchantId": { + "description": "The ID of the account that manages the datafeed. This account cannot be a multi-client account.", + "format": "uint64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{merchantId}/datafeeds/{datafeedId}", + "request": { + "$ref": "Datafeed" + }, + "response": { + "$ref": "Datafeed" + }, + "scopes": [ + "https://www.googleapis.com/auth/content" + ] + } + } }, - "visibleFromDate": { - "type": "string", - "description": "Date on which the deadline will become visible to consumers in ISO 8601 format. E.g. \"2016-10-31\" for 31st October 2016. Required." - } - } - }, - "HolidaysHoliday": { - "id": "HolidaysHoliday", - "type": "object", - "properties": { - "countryCode": { - "type": "string", - "description": "The CLDR territory code of the country in which the holiday is available. E.g. \"US\", \"DE\", \"GB\". A holiday cutoff can only be configured in a shipping settings service with matching delivery country. Always present." - }, - "date": { - "type": "string", - "description": "Date of the holiday, in ISO 8601 format. E.g. \"2016-12-25\" for Christmas 2016. Always present." - }, - "deliveryGuaranteeDate": { - "type": "string", - "description": "Date on which the order has to arrive at the customer's, in ISO 8601 format. E.g. \"2016-12-24\" for 24th December 2016. Always present." - }, - "deliveryGuaranteeHour": { - "type": "string", - "description": "Hour of the day in the delivery location's timezone on the guaranteed delivery date by which the order has to arrive at the customer's. Possible values are: 0 (midnight), 1, ..., 12 (noon), 13, ..., 23. Always present.", - "format": "uint64" - }, - "id": { - "type": "string", - "description": "Unique identifier for the holiday to be used when configuring holiday cutoffs. Always present." - }, - "type": { - "type": "string", - "description": "The holiday type. Always present." - } - } - }, - "Installment": { - "id": "Installment", - "type": "object", - "properties": { - "amount": { - "$ref": "Price", - "description": "The amount the buyer has to pay per month." - }, - "months": { - "type": "string", - "description": "The number of installments the buyer has to pay.", - "format": "int64" - } - } - }, - "Inventory": { - "id": "Inventory", - "type": "object", - "properties": { - "availability": { - "type": "string", - "description": "The availability of the product." - }, - "installment": { - "$ref": "Installment", - "description": "Number and amount of installments to pay for an item. Brazil only." - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"content#inventory\".", - "default": "content#inventory" - }, - "loyaltyPoints": { - "$ref": "LoyaltyPoints", - "description": "Loyalty points that users receive after purchasing the item. Japan only." - }, - "pickup": { - "$ref": "InventoryPickup", - "description": "Store pickup information. Only supported for local inventory. Not setting pickup means \"don't update\" while setting it to the empty value ({} in JSON) means \"delete\". Otherwise, pickupMethod and pickupSla must be set together, unless pickupMethod is \"not supported\"." - }, - "price": { - "$ref": "Price", - "description": "The price of the product." - }, - "quantity": { - "type": "integer", - "description": "The quantity of the product. Must be equal to or greater than zero. Supported only for local products.", - "format": "uint32" - }, - "salePrice": { - "$ref": "Price", - "description": "The sale price of the product. Mandatory if sale_price_effective_date is defined." - }, - "salePriceEffectiveDate": { - "type": "string", - "description": "A date range represented by a pair of ISO 8601 dates separated by a space, comma, or slash. Both dates might be specified as 'null' if undecided." - }, - "sellOnGoogleQuantity": { - "type": "integer", - "description": "The quantity of the product that is reserved for sell-on-google ads. Supported only for online products.", - "format": "uint32" - } - } - }, - "InventoryCustomBatchRequest": { - "id": "InventoryCustomBatchRequest", - "type": "object", - "properties": { - "entries": { - "type": "array", - "description": "The request entries to be processed in the batch.", - "items": { - "$ref": "InventoryCustomBatchRequestEntry" - } - } - } - }, - "InventoryCustomBatchRequestEntry": { - "id": "InventoryCustomBatchRequestEntry", - "type": "object", - "description": "A batch entry encoding a single non-batch inventory request.", - "properties": { - "batchId": { - "type": "integer", - "description": "An entry ID, unique within the batch request.", - "format": "uint32" + "datafeedstatuses": { + "methods": { + "custombatch": { + "httpMethod": "POST", + "id": "content.datafeedstatuses.custombatch", + "path": "datafeedstatuses/batch", + "request": { + "$ref": "DatafeedstatusesCustomBatchRequest" + }, + "response": { + "$ref": "DatafeedstatusesCustomBatchResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/content" + ] + }, + "get": { + "description": "Retrieves the status of a datafeed from your Merchant Center account.", + "httpMethod": "GET", + "id": "content.datafeedstatuses.get", + "parameterOrder": [ + "merchantId", + "datafeedId" + ], + "parameters": { + "country": { + "description": "The country for which to get the datafeed status. If this parameter is provided then language must also be provided. Note that this parameter is required for feeds targeting multiple countries and languages, since a feed may have a different status for each target.", + "location": "query", + "type": "string" + }, + "datafeedId": { + "description": "The ID of the datafeed.", + "format": "uint64", + "location": "path", + "required": true, + "type": "string" + }, + "language": { + "description": "The language for which to get the datafeed status. If this parameter is provided then country must also be provided. Note that this parameter is required for feeds targeting multiple countries and languages, since a feed may have a different status for each target.", + "location": "query", + "type": "string" + }, + "merchantId": { + "description": "The ID of the account that manages the datafeed. This account cannot be a multi-client account.", + "format": "uint64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{merchantId}/datafeedstatuses/{datafeedId}", + "response": { + "$ref": "DatafeedStatus" + }, + "scopes": [ + "https://www.googleapis.com/auth/content" + ] + }, + "list": { + "description": "Lists the statuses of the datafeeds in your Merchant Center account.", + "httpMethod": "GET", + "id": "content.datafeedstatuses.list", + "parameterOrder": [ + "merchantId" + ], + "parameters": { + "maxResults": { + "description": "The maximum number of products to return in the response, used for paging.", + "format": "uint32", + "location": "query", + "type": "integer" + }, + "merchantId": { + "description": "The ID of the account that manages the datafeeds. This account cannot be a multi-client account.", + "format": "uint64", + "location": "path", + "required": true, + "type": "string" + }, + "pageToken": { + "description": "The token returned by the previous request.", + "location": "query", + "type": "string" + } + }, + "path": "{merchantId}/datafeedstatuses", + "response": { + "$ref": "DatafeedstatusesListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/content" + ] + } + } }, "inventory": { - "$ref": "Inventory", - "description": "Price and availability of the product." - }, - "merchantId": { - "type": "string", - "description": "The ID of the managing account.", - "format": "uint64" - }, - "productId": { - "type": "string", - "description": "The ID of the product for which to update price and availability." - }, - "storeCode": { - "type": "string", - "description": "The code of the store for which to update price and availability. Use online to update price and availability of an online product." - } - } - }, - "InventoryCustomBatchResponse": { - "id": "InventoryCustomBatchResponse", - "type": "object", - "properties": { - "entries": { - "type": "array", - "description": "The result of the execution of the batch requests.", - "items": { - "$ref": "InventoryCustomBatchResponseEntry" - } - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"content#inventoryCustomBatchResponse\".", - "default": "content#inventoryCustomBatchResponse" - } - } - }, - "InventoryCustomBatchResponseEntry": { - "id": "InventoryCustomBatchResponseEntry", - "type": "object", - "description": "A batch entry encoding a single non-batch inventory response.", - "properties": { - "batchId": { - "type": "integer", - "description": "The ID of the request entry this entry responds to.", - "format": "uint32" - }, - "errors": { - "$ref": "Errors", - "description": "A list of errors defined if and only if the request failed." - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"content#inventoryCustomBatchResponseEntry\".", - "default": "content#inventoryCustomBatchResponseEntry" - } - } - }, - "InventoryPickup": { - "id": "InventoryPickup", - "type": "object", - "properties": { - "pickupMethod": { - "type": "string", - "description": "Whether store pickup is available for this offer and whether the pickup option should be shown as buy, reserve, or not supported. Only supported for local inventory. Unless the value is \"not supported\", must be submitted together with pickupSla." - }, - "pickupSla": { - "type": "string", - "description": "The expected date that an order will be ready for pickup, relative to when the order is placed. Only supported for local inventory. Must be submitted together with pickupMethod." - } - } - }, - "InventorySetRequest": { - "id": "InventorySetRequest", - "type": "object", - "properties": { - "availability": { - "type": "string", - "description": "The availability of the product." - }, - "installment": { - "$ref": "Installment", - "description": "Number and amount of installments to pay for an item. Brazil only." - }, - "loyaltyPoints": { - "$ref": "LoyaltyPoints", - "description": "Loyalty points that users receive after purchasing the item. Japan only." - }, - "pickup": { - "$ref": "InventoryPickup", - "description": "Store pickup information. Only supported for local inventory. Not setting pickup means \"don't update\" while setting it to the empty value ({} in JSON) means \"delete\". Otherwise, pickupMethod and pickupSla must be set together, unless pickupMethod is \"not supported\"." - }, - "price": { - "$ref": "Price", - "description": "The price of the product." - }, - "quantity": { - "type": "integer", - "description": "The quantity of the product. Must be equal to or greater than zero. Supported only for local products.", - "format": "uint32" - }, - "salePrice": { - "$ref": "Price", - "description": "The sale price of the product. Mandatory if sale_price_effective_date is defined." - }, - "salePriceEffectiveDate": { - "type": "string", - "description": "A date range represented by a pair of ISO 8601 dates separated by a space, comma, or slash. Both dates might be specified as 'null' if undecided." - }, - "sellOnGoogleQuantity": { - "type": "integer", - "description": "The quantity of the product that is reserved for sell-on-google ads. Supported only for online products.", - "format": "uint32" - } - } - }, - "InventorySetResponse": { - "id": "InventorySetResponse", - "type": "object", - "properties": { - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"content#inventorySetResponse\".", - "default": "content#inventorySetResponse" - } - } - }, - "LocationIdSet": { - "id": "LocationIdSet", - "type": "object", - "properties": { - "locationIds": { - "type": "array", - "description": "A non-empty list of location IDs. They must all be of the same location type (e.g., state).", - "items": { - "type": "string" - } - } - } - }, - "LoyaltyPoints": { - "id": "LoyaltyPoints", - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "Name of loyalty points program. It is recommended to limit the name to 12 full-width characters or 24 Roman characters." - }, - "pointsValue": { - "type": "string", - "description": "The retailer's loyalty points in absolute value.", - "format": "int64" - }, - "ratio": { - "type": "number", - "description": "The ratio of a point when converted to currency. Google assumes currency based on Merchant Center settings. If ratio is left out, it defaults to 1.0.", - "format": "double" - } - } - }, - "Order": { - "id": "Order", - "type": "object", - "properties": { - "acknowledged": { - "type": "boolean", - "description": "Whether the order was acknowledged." - }, - "channelType": { - "type": "string", - "description": "The channel type of the order: \"purchaseOnGoogle\" or \"googleExpress\"." - }, - "customer": { - "$ref": "OrderCustomer", - "description": "The details of the customer who placed the order." - }, - "deliveryDetails": { - "$ref": "OrderDeliveryDetails", - "description": "The details for the delivery." - }, - "id": { - "type": "string", - "description": "The REST id of the order. Globally unique." - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"content#order\".", - "default": "content#order" - }, - "lineItems": { - "type": "array", - "description": "Line items that are ordered.", - "items": { - "$ref": "OrderLineItem" - } - }, - "merchantId": { - "type": "string", - "format": "uint64" - }, - "merchantOrderId": { - "type": "string", - "description": "Merchant-provided id of the order." - }, - "netAmount": { - "$ref": "Price", - "description": "The net amount for the order. For example, if an order was originally for a grand total of $100 and a refund was issued for $20, the net amount will be $80." - }, - "paymentMethod": { - "$ref": "OrderPaymentMethod", - "description": "The details of the payment method." - }, - "paymentStatus": { - "type": "string", - "description": "The status of the payment." - }, - "placedDate": { - "type": "string", - "description": "The date when the order was placed, in ISO 8601 format." - }, - "promotions": { - "type": "array", - "description": "The details of the merchant provided promotions applied to the order. More details about the program are here.", - "items": { - "$ref": "OrderPromotion" - } - }, - "refunds": { - "type": "array", - "description": "Refunds for the order.", - "items": { - "$ref": "OrderRefund" - } - }, - "shipments": { - "type": "array", - "description": "Shipments of the order.", - "items": { - "$ref": "OrderShipment" - } - }, - "shippingCost": { - "$ref": "Price", - "description": "The total cost of shipping for all items." - }, - "shippingCostTax": { - "$ref": "Price", - "description": "The tax for the total shipping cost." - }, - "shippingOption": { - "type": "string", - "description": "The requested shipping option." - }, - "status": { - "type": "string", - "description": "The status of the order." - } - } - }, - "OrderAddress": { - "id": "OrderAddress", - "type": "object", - "properties": { - "country": { - "type": "string", - "description": "CLDR country code (e.g. \"US\")." - }, - "fullAddress": { - "type": "array", - "description": "Strings representing the lines of the printed label for mailing the order, for example:\nJohn Smith\n1600 Amphitheatre Parkway\nMountain View, CA, 94043\nUnited States", - "items": { - "type": "string" - } - }, - "isPostOfficeBox": { - "type": "boolean", - "description": "Whether the address is a post office box." - }, - "locality": { - "type": "string", - "description": "City, town or commune. May also include dependent localities or sublocalities (e.g. neighborhoods or suburbs)." - }, - "postalCode": { - "type": "string", - "description": "Postal Code or ZIP (e.g. \"94043\")." - }, - "recipientName": { - "type": "string", - "description": "Name of the recipient." - }, - "region": { - "type": "string", - "description": "Top-level administrative subdivision of the country (e.g. \"CA\")." - }, - "streetAddress": { - "type": "array", - "description": "Street-level part of the address.", - "items": { - "type": "string" - } - } - } - }, - "OrderCancellation": { - "id": "OrderCancellation", - "type": "object", - "properties": { - "actor": { - "type": "string", - "description": "The actor that created the cancellation." - }, - "creationDate": { - "type": "string", - "description": "Date on which the cancellation has been created, in ISO 8601 format." - }, - "quantity": { - "type": "integer", - "description": "The quantity that was canceled.", - "format": "uint32" - }, - "reason": { - "type": "string", - "description": "The reason for the cancellation. Orders that are cancelled with a noInventory reason will lead to the removal of the product from POG until you make an update to that product. This will not affect your Shopping ads." - }, - "reasonText": { - "type": "string", - "description": "The explanation of the reason." - } - } - }, - "OrderCustomer": { - "id": "OrderCustomer", - "type": "object", - "properties": { - "email": { - "type": "string", - "description": "Email address of the customer." - }, - "explicitMarketingPreference": { - "type": "boolean", - "description": "If set, this indicates the user explicitly chose to opt in or out of providing marketing rights to the merchant. If unset, this indicates the user has already made this choice in a previous purchase, and was thus not shown the marketing right opt in/out checkbox during the checkout flow." - }, - "fullName": { - "type": "string", - "description": "Full name of the customer." - } - } - }, - "OrderDeliveryDetails": { - "id": "OrderDeliveryDetails", - "type": "object", - "properties": { - "address": { - "$ref": "OrderAddress", - "description": "The delivery address" - }, - "phoneNumber": { - "type": "string", - "description": "The phone number of the person receiving the delivery." - } - } - }, - "OrderLineItem": { - "id": "OrderLineItem", - "type": "object", - "properties": { - "annotations": { - "type": "array", - "description": "Annotations that are attached to the line item.", - "items": { - "$ref": "OrderMerchantProvidedAnnotation" - } - }, - "cancellations": { - "type": "array", - "description": "Cancellations of the line item.", - "items": { - "$ref": "OrderCancellation" - } - }, - "id": { - "type": "string", - "description": "The id of the line item." - }, - "price": { - "$ref": "Price", - "description": "Total price for the line item. For example, if two items for $10 are purchased, the total price will be $20." - }, - "product": { - "$ref": "OrderLineItemProduct", - "description": "Product data from the time of the order placement." - }, - "quantityCanceled": { - "type": "integer", - "description": "Number of items canceled.", - "format": "uint32" - }, - "quantityDelivered": { - "type": "integer", - "description": "Number of items delivered.", - "format": "uint32" - }, - "quantityOrdered": { - "type": "integer", - "description": "Number of items ordered.", - "format": "uint32" - }, - "quantityPending": { - "type": "integer", - "description": "Number of items pending.", - "format": "uint32" - }, - "quantityReturned": { - "type": "integer", - "description": "Number of items returned.", - "format": "uint32" - }, - "quantityShipped": { - "type": "integer", - "description": "Number of items shipped.", - "format": "uint32" - }, - "returnInfo": { - "$ref": "OrderLineItemReturnInfo", - "description": "Details of the return policy for the line item." - }, - "returns": { - "type": "array", - "description": "Returns of the line item.", - "items": { - "$ref": "OrderReturn" - } - }, - "shippingDetails": { - "$ref": "OrderLineItemShippingDetails", - "description": "Details of the requested shipping for the line item." - }, - "tax": { - "$ref": "Price", - "description": "Total tax amount for the line item. For example, if two items are purchased, and each have a cost tax of $2, the total tax amount will be $4." - } - } - }, - "OrderLineItemProduct": { - "id": "OrderLineItemProduct", - "type": "object", - "properties": { - "brand": { - "type": "string", - "description": "Brand of the item." - }, - "channel": { - "type": "string", - "description": "The item's channel (online or local)." - }, - "condition": { - "type": "string", - "description": "Condition or state of the item." - }, - "contentLanguage": { - "type": "string", - "description": "The two-letter ISO 639-1 language code for the item." - }, - "gtin": { - "type": "string", - "description": "Global Trade Item Number (GTIN) of the item." - }, - "id": { - "type": "string", - "description": "The REST id of the product." - }, - "imageLink": { - "type": "string", - "description": "URL of an image of the item." - }, - "itemGroupId": { - "type": "string", - "description": "Shared identifier for all variants of the same product." - }, - "mpn": { - "type": "string", - "description": "Manufacturer Part Number (MPN) of the item." - }, - "offerId": { - "type": "string", - "description": "An identifier of the item." - }, - "price": { - "$ref": "Price", - "description": "Price of the item." - }, - "shownImage": { - "type": "string", - "description": "URL to the cached image shown to the user when order was placed." - }, - "targetCountry": { - "type": "string", - "description": "The CLDR territory code of the target country of the product." - }, - "title": { - "type": "string", - "description": "The title of the product." - }, - "variantAttributes": { - "type": "array", - "description": "Variant attributes for the item. These are dimensions of the product, such as color, gender, material, pattern, and size. You can find a comprehensive list of variant attributes here.", - "items": { - "$ref": "OrderLineItemProductVariantAttribute" - } - } - } - }, - "OrderLineItemProductVariantAttribute": { - "id": "OrderLineItemProductVariantAttribute", - "type": "object", - "properties": { - "dimension": { - "type": "string", - "description": "The dimension of the variant." - }, - "value": { - "type": "string", - "description": "The value for the dimension." - } - } - }, - "OrderLineItemReturnInfo": { - "id": "OrderLineItemReturnInfo", - "type": "object", - "properties": { - "daysToReturn": { - "type": "integer", - "description": "How many days later the item can be returned.", - "format": "int32", - "annotations": { - "required": [ - "content.orders.createtestorder" - ] - } - }, - "isReturnable": { - "type": "boolean", - "description": "Whether the item is returnable.", - "annotations": { - "required": [ - "content.orders.createtestorder" - ] - } - }, - "policyUrl": { - "type": "string", - "description": "URL of the item return policy.", - "annotations": { - "required": [ - "content.orders.createtestorder" - ] - } - } - } - }, - "OrderLineItemShippingDetails": { - "id": "OrderLineItemShippingDetails", - "type": "object", - "properties": { - "deliverByDate": { - "type": "string", - "description": "The delivery by date, in ISO 8601 format.", - "annotations": { - "required": [ - "content.orders.createtestorder" - ] - } - }, - "method": { - "$ref": "OrderLineItemShippingDetailsMethod", - "description": "Details of the shipping method.", - "annotations": { - "required": [ - "content.orders.createtestorder" - ] - } - }, - "shipByDate": { - "type": "string", - "description": "The ship by date, in ISO 8601 format.", - "annotations": { - "required": [ - "content.orders.createtestorder" - ] - } - } - } - }, - "OrderLineItemShippingDetailsMethod": { - "id": "OrderLineItemShippingDetailsMethod", - "type": "object", - "properties": { - "carrier": { - "type": "string", - "description": "The carrier for the shipping. Optional. See shipments[].carrier for a list of acceptable values." - }, - "maxDaysInTransit": { - "type": "integer", - "description": "Maximum transit time.", - "format": "uint32", - "annotations": { - "required": [ - "content.orders.createtestorder" - ] - } - }, - "methodName": { - "type": "string", - "description": "The name of the shipping method.", - "annotations": { - "required": [ - "content.orders.createtestorder" - ] - } - }, - "minDaysInTransit": { - "type": "integer", - "description": "Minimum transit time.", - "format": "uint32", - "annotations": { - "required": [ - "content.orders.createtestorder" - ] - } - } - } - }, - "OrderMerchantProvidedAnnotation": { - "id": "OrderMerchantProvidedAnnotation", - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "Key for additional merchant provided (as key-value pairs) annotation about the line item." - }, - "value": { - "type": "string", - "description": "Value for additional merchant provided (as key-value pairs) annotation about the line item." - } - } - }, - "OrderPaymentMethod": { - "id": "OrderPaymentMethod", - "type": "object", - "properties": { - "billingAddress": { - "$ref": "OrderAddress", - "description": "The billing address." - }, - "expirationMonth": { - "type": "integer", - "description": "The card expiration month (January = 1, February = 2 etc.).", - "format": "int32" - }, - "expirationYear": { - "type": "integer", - "description": "The card expiration year (4-digit, e.g. 2015).", - "format": "int32" - }, - "lastFourDigits": { - "type": "string", - "description": "The last four digits of the card number." - }, - "phoneNumber": { - "type": "string", - "description": "The billing phone number." - }, - "type": { - "type": "string", - "description": "The type of instrument.\n\nAcceptable values are: \n- \"AMEX\" \n- \"DISCOVER\" \n- \"JCB\" \n- \"MASTERCARD\" \n- \"UNIONPAY\" \n- \"VISA\" \n- \"\"" - } - } - }, - "OrderPromotion": { - "id": "OrderPromotion", - "type": "object", - "properties": { - "benefits": { - "type": "array", - "items": { - "$ref": "OrderPromotionBenefit" - } - }, - "effectiveDates": { - "type": "string", - "description": "The date and time frame when the promotion is active and ready for validation review. Note that the promotion live time may be delayed for a few hours due to the validation review.\nStart date and end date are separated by a forward slash (/). The start date is specified by the format (YYYY-MM-DD), followed by the letter ?T?, the time of the day when the sale starts (in Greenwich Mean Time, GMT), followed by an expression of the time zone for the sale. The end date is in the same format." - }, - "genericRedemptionCode": { - "type": "string", - "description": "Optional. The text code that corresponds to the promotion when applied on the retailer?s website." - }, - "id": { - "type": "string", - "description": "The unique ID of the promotion." - }, - "longTitle": { - "type": "string", - "description": "The full title of the promotion." - }, - "productApplicability": { - "type": "string", - "description": "Whether the promotion is applicable to all products or only specific products." - }, - "redemptionChannel": { - "type": "string", - "description": "Indicates that the promotion is valid online." - } - } - }, - "OrderPromotionBenefit": { - "id": "OrderPromotionBenefit", - "type": "object", - "properties": { - "discount": { - "$ref": "Price", - "description": "The discount in the order price when the promotion is applied." - }, - "offerIds": { - "type": "array", - "description": "The OfferId(s) that were purchased in this order and map to this specific benefit of the promotion.", - "items": { - "type": "string" - } - }, - "subType": { - "type": "string", - "description": "Further describes the benefit of the promotion. Note that we will expand on this enumeration as we support new promotion sub-types." - }, - "taxImpact": { - "$ref": "Price", - "description": "The impact on tax when the promotion is applied." - }, - "type": { - "type": "string", - "description": "Describes whether the promotion applies to products (e.g. 20% off) or to shipping (e.g. Free Shipping)." - } - } - }, - "OrderRefund": { - "id": "OrderRefund", - "type": "object", - "properties": { - "actor": { - "type": "string", - "description": "The actor that created the refund." - }, - "amount": { - "$ref": "Price", - "description": "The amount that is refunded." - }, - "creationDate": { - "type": "string", - "description": "Date on which the item has been created, in ISO 8601 format." - }, - "reason": { - "type": "string", - "description": "The reason for the refund." - }, - "reasonText": { - "type": "string", - "description": "The explanation of the reason." - } - } - }, - "OrderReturn": { - "id": "OrderReturn", - "type": "object", - "properties": { - "actor": { - "type": "string", - "description": "The actor that created the refund." - }, - "creationDate": { - "type": "string", - "description": "Date on which the item has been created, in ISO 8601 format." - }, - "quantity": { - "type": "integer", - "description": "Quantity that is returned.", - "format": "uint32" - }, - "reason": { - "type": "string", - "description": "The reason for the return." - }, - "reasonText": { - "type": "string", - "description": "The explanation of the reason." - } - } - }, - "OrderShipment": { - "id": "OrderShipment", - "type": "object", - "properties": { - "carrier": { - "type": "string", - "description": "The carrier handling the shipment.\n\nAcceptable values are: \n- \"gsx\" \n- \"ups\" \n- \"usps\" \n- \"fedex\" \n- \"dhl\" \n- \"ecourier\" \n- \"cxt\" \n- \"google\" \n- \"ontrac\" \n- \"emsy\" \n- \"ont\" \n- \"deliv\" \n- \"dynamex\" \n- \"lasership\" \n- \"mpx\" \n- \"uds\"" - }, - "creationDate": { - "type": "string", - "description": "Date on which the shipment has been created, in ISO 8601 format." - }, - "deliveryDate": { - "type": "string", - "description": "Date on which the shipment has been delivered, in ISO 8601 format. Present only if status is delievered" - }, - "id": { - "type": "string", - "description": "The id of the shipment." - }, - "lineItems": { - "type": "array", - "description": "The line items that are shipped.", - "items": { - "$ref": "OrderShipmentLineItemShipment" - } - }, - "status": { - "type": "string", - "description": "The status of the shipment." - }, - "trackingId": { - "type": "string", - "description": "The tracking id for the shipment." - } - } - }, - "OrderShipmentLineItemShipment": { - "id": "OrderShipmentLineItemShipment", - "type": "object", - "properties": { - "lineItemId": { - "type": "string", - "description": "The id of the line item that is shipped. Either lineItemId or productId is required." - }, - "productId": { - "type": "string", - "description": "The ID of the product to ship. This is the REST ID used in the products service. Either lineItemId or productId is required." - }, - "quantity": { - "type": "integer", - "description": "The quantity that is shipped.", - "format": "uint32" - } - } - }, - "OrdersAcknowledgeRequest": { - "id": "OrdersAcknowledgeRequest", - "type": "object", - "properties": { - "operationId": { - "type": "string", - "description": "The ID of the operation. Unique across all operations for a given order." - } - } - }, - "OrdersAcknowledgeResponse": { - "id": "OrdersAcknowledgeResponse", - "type": "object", - "properties": { - "executionStatus": { - "type": "string", - "description": "The status of the execution." - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"content#ordersAcknowledgeResponse\".", - "default": "content#ordersAcknowledgeResponse" - } - } - }, - "OrdersAdvanceTestOrderResponse": { - "id": "OrdersAdvanceTestOrderResponse", - "type": "object", - "properties": { - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"content#ordersAdvanceTestOrderResponse\".", - "default": "content#ordersAdvanceTestOrderResponse" - } - } - }, - "OrdersCancelLineItemRequest": { - "id": "OrdersCancelLineItemRequest", - "type": "object", - "properties": { - "amount": { - "$ref": "Price", - "description": "Amount to refund for the cancelation. Optional. If not set, Google will calculate the default based on the price and tax of the items involved. The amount must not be larger than the net amount left on the order." - }, - "amountPretax": { - "$ref": "Price", - "description": "Amount to refund for the cancelation. Optional. If not set, Google will calculate the default based on the price and tax of the items involved. The amount must not be larger than the net amount left on the order." - }, - "amountTax": { - "$ref": "Price", - "description": "Tax amount that correspond to cancellation amount in amountPretax." - }, - "lineItemId": { - "type": "string", - "description": "The ID of the line item to cancel. Either lineItemId or productId is required." - }, - "operationId": { - "type": "string", - "description": "The ID of the operation. Unique across all operations for a given order." - }, - "productId": { - "type": "string", - "description": "The ID of the product to cancel. This is the REST ID used in the products service. Either lineItemId or productId is required." - }, - "quantity": { - "type": "integer", - "description": "The quantity to cancel.", - "format": "uint32" - }, - "reason": { - "type": "string", - "description": "The reason for the cancellation." - }, - "reasonText": { - "type": "string", - "description": "The explanation of the reason." - } - } - }, - "OrdersCancelLineItemResponse": { - "id": "OrdersCancelLineItemResponse", - "type": "object", - "properties": { - "executionStatus": { - "type": "string", - "description": "The status of the execution." - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"content#ordersCancelLineItemResponse\".", - "default": "content#ordersCancelLineItemResponse" - } - } - }, - "OrdersCancelRequest": { - "id": "OrdersCancelRequest", - "type": "object", - "properties": { - "operationId": { - "type": "string", - "description": "The ID of the operation. Unique across all operations for a given order." - }, - "reason": { - "type": "string", - "description": "The reason for the cancellation." - }, - "reasonText": { - "type": "string", - "description": "The explanation of the reason." - } - } - }, - "OrdersCancelResponse": { - "id": "OrdersCancelResponse", - "type": "object", - "properties": { - "executionStatus": { - "type": "string", - "description": "The status of the execution." - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"content#ordersCancelResponse\".", - "default": "content#ordersCancelResponse" - } - } - }, - "OrdersCreateTestOrderRequest": { - "id": "OrdersCreateTestOrderRequest", - "type": "object", - "properties": { - "templateName": { - "type": "string", - "description": "The test order template to use. Specify as an alternative to testOrder as a shortcut for retrieving a template and then creating an order using that template." - }, - "testOrder": { - "$ref": "TestOrder", - "description": "The test order to create." - } - } - }, - "OrdersCreateTestOrderResponse": { - "id": "OrdersCreateTestOrderResponse", - "type": "object", - "properties": { - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"content#ordersCreateTestOrderResponse\".", - "default": "content#ordersCreateTestOrderResponse" - }, - "orderId": { - "type": "string", - "description": "The ID of the newly created test order." - } - } - }, - "OrdersCustomBatchRequest": { - "id": "OrdersCustomBatchRequest", - "type": "object", - "properties": { - "entries": { - "type": "array", - "description": "The request entries to be processed in the batch.", - "items": { - "$ref": "OrdersCustomBatchRequestEntry" - } - } - } - }, - "OrdersCustomBatchRequestEntry": { - "id": "OrdersCustomBatchRequestEntry", - "type": "object", - "properties": { - "batchId": { - "type": "integer", - "description": "An entry ID, unique within the batch request.", - "format": "uint32" - }, - "cancel": { - "$ref": "OrdersCustomBatchRequestEntryCancel", - "description": "Required for cancel method." - }, - "cancelLineItem": { - "$ref": "OrdersCustomBatchRequestEntryCancelLineItem", - "description": "Required for cancelLineItem method." - }, - "inStoreRefundLineItem": { - "$ref": "OrdersCustomBatchRequestEntryInStoreRefundLineItem", - "description": "Required for inStoreReturnLineItem method." - }, - "merchantId": { - "type": "string", - "description": "The ID of the managing account.", - "format": "uint64" - }, - "merchantOrderId": { - "type": "string", - "description": "The merchant order id. Required for updateMerchantOrderId and getByMerchantOrderId methods." - }, - "method": { - "type": "string", - "description": "The method to apply." - }, - "operationId": { - "type": "string", - "description": "The ID of the operation. Unique across all operations for a given order. Required for all methods beside get and getByMerchantOrderId." - }, - "orderId": { - "type": "string", - "description": "The ID of the order. Required for all methods beside getByMerchantOrderId." - }, - "refund": { - "$ref": "OrdersCustomBatchRequestEntryRefund", - "description": "Required for refund method." - }, - "rejectReturnLineItem": { - "$ref": "OrdersCustomBatchRequestEntryRejectReturnLineItem", - "description": "Required for rejectReturnLineItem method." - }, - "returnLineItem": { - "$ref": "OrdersCustomBatchRequestEntryReturnLineItem", - "description": "Required for returnLineItem method." - }, - "returnRefundLineItem": { - "$ref": "OrdersCustomBatchRequestEntryReturnRefundLineItem", - "description": "Required for returnRefundLineItem method." - }, - "setLineItemMetadata": { - "$ref": "OrdersCustomBatchRequestEntrySetLineItemMetadata", - "description": "Required for setLineItemMetadata method." - }, - "shipLineItems": { - "$ref": "OrdersCustomBatchRequestEntryShipLineItems", - "description": "Required for shipLineItems method." - }, - "updateLineItemShippingDetails": { - "$ref": "OrdersCustomBatchRequestEntryUpdateLineItemShippingDetails", - "description": "Required for updateLineItemShippingDate method." - }, - "updateShipment": { - "$ref": "OrdersCustomBatchRequestEntryUpdateShipment", - "description": "Required for updateShipment method." - } - } - }, - "OrdersCustomBatchRequestEntryCancel": { - "id": "OrdersCustomBatchRequestEntryCancel", - "type": "object", - "properties": { - "reason": { - "type": "string", - "description": "The reason for the cancellation." - }, - "reasonText": { - "type": "string", - "description": "The explanation of the reason." - } - } - }, - "OrdersCustomBatchRequestEntryCancelLineItem": { - "id": "OrdersCustomBatchRequestEntryCancelLineItem", - "type": "object", - "properties": { - "amount": { - "$ref": "Price", - "description": "Amount to refund for the cancelation. Optional. If not set, Google will calculate the default based on the price and tax of the items involved. The amount must not be larger than the net amount left on the order." - }, - "amountPretax": { - "$ref": "Price", - "description": "Amount to refund for the cancelation. Optional. If not set, Google will calculate the default based on the price and tax of the items involved. The amount must not be larger than the net amount left on the order." - }, - "amountTax": { - "$ref": "Price", - "description": "Tax amount that correspond to cancellation amount in amountPretax." - }, - "lineItemId": { - "type": "string", - "description": "The ID of the line item to cancel. Either lineItemId or productId is required." - }, - "productId": { - "type": "string", - "description": "The ID of the product to cancel. This is the REST ID used in the products service. Either lineItemId or productId is required." - }, - "quantity": { - "type": "integer", - "description": "The quantity to cancel.", - "format": "uint32" - }, - "reason": { - "type": "string", - "description": "The reason for the cancellation." - }, - "reasonText": { - "type": "string", - "description": "The explanation of the reason." - } - } - }, - "OrdersCustomBatchRequestEntryInStoreRefundLineItem": { - "id": "OrdersCustomBatchRequestEntryInStoreRefundLineItem", - "type": "object", - "properties": { - "amountPretax": { - "$ref": "Price", - "description": "The amount that is refunded. Required." - }, - "amountTax": { - "$ref": "Price", - "description": "Tax amount that correspond to refund amount in amountPretax. Required." - }, - "lineItemId": { - "type": "string", - "description": "The ID of the line item to return. Either lineItemId or productId is required." - }, - "productId": { - "type": "string", - "description": "The ID of the product to return. This is the REST ID used in the products service. Either lineItemId or productId is required." - }, - "quantity": { - "type": "integer", - "description": "The quantity to return and refund.", - "format": "uint32" - }, - "reason": { - "type": "string", - "description": "The reason for the return." - }, - "reasonText": { - "type": "string", - "description": "The explanation of the reason." - } - } - }, - "OrdersCustomBatchRequestEntryRefund": { - "id": "OrdersCustomBatchRequestEntryRefund", - "type": "object", - "properties": { - "amount": { - "$ref": "Price", - "description": "The amount that is refunded." - }, - "amountPretax": { - "$ref": "Price", - "description": "The amount that is refunded. Either amount or amountPretax and amountTax should be filled." - }, - "amountTax": { - "$ref": "Price", - "description": "Tax amount that correspond to refund amount in amountPretax." - }, - "reason": { - "type": "string", - "description": "The reason for the refund." - }, - "reasonText": { - "type": "string", - "description": "The explanation of the reason." - } - } - }, - "OrdersCustomBatchRequestEntryRejectReturnLineItem": { - "id": "OrdersCustomBatchRequestEntryRejectReturnLineItem", - "type": "object", - "properties": { - "lineItemId": { - "type": "string", - "description": "The ID of the line item to return. Either lineItemId or productId is required." - }, - "productId": { - "type": "string", - "description": "The ID of the product to return. This is the REST ID used in the products service. Either lineItemId or productId is required." - }, - "quantity": { - "type": "integer", - "description": "The quantity to return and refund.", - "format": "uint32" - }, - "reason": { - "type": "string", - "description": "The reason for the return." - }, - "reasonText": { - "type": "string", - "description": "The explanation of the reason." - } - } - }, - "OrdersCustomBatchRequestEntryReturnLineItem": { - "id": "OrdersCustomBatchRequestEntryReturnLineItem", - "type": "object", - "properties": { - "lineItemId": { - "type": "string", - "description": "The ID of the line item to return. Either lineItemId or productId is required." - }, - "productId": { - "type": "string", - "description": "The ID of the product to return. This is the REST ID used in the products service. Either lineItemId or productId is required." - }, - "quantity": { - "type": "integer", - "description": "The quantity to return.", - "format": "uint32" - }, - "reason": { - "type": "string", - "description": "The reason for the return." - }, - "reasonText": { - "type": "string", - "description": "The explanation of the reason." - } - } - }, - "OrdersCustomBatchRequestEntryReturnRefundLineItem": { - "id": "OrdersCustomBatchRequestEntryReturnRefundLineItem", - "type": "object", - "properties": { - "amountPretax": { - "$ref": "Price", - "description": "The amount that is refunded. Optional, but if filled then both amountPretax and amountTax must be set." - }, - "amountTax": { - "$ref": "Price", - "description": "Tax amount that correspond to refund amount in amountPretax." - }, - "lineItemId": { - "type": "string", - "description": "The ID of the line item to return. Either lineItemId or productId is required." - }, - "productId": { - "type": "string", - "description": "The ID of the product to return. This is the REST ID used in the products service. Either lineItemId or productId is required." - }, - "quantity": { - "type": "integer", - "description": "The quantity to return and refund.", - "format": "uint32" - }, - "reason": { - "type": "string", - "description": "The reason for the return." - }, - "reasonText": { - "type": "string", - "description": "The explanation of the reason." - } - } - }, - "OrdersCustomBatchRequestEntrySetLineItemMetadata": { - "id": "OrdersCustomBatchRequestEntrySetLineItemMetadata", - "type": "object", - "properties": { - "annotations": { - "type": "array", - "items": { - "$ref": "OrderMerchantProvidedAnnotation" - } - }, - "lineItemId": { - "type": "string", - "description": "The ID of the line item to set metadata. Either lineItemId or productId is required." - }, - "productId": { - "type": "string", - "description": "The ID of the product to set metadata. This is the REST ID used in the products service. Either lineItemId or productId is required." - } - } - }, - "OrdersCustomBatchRequestEntryShipLineItems": { - "id": "OrdersCustomBatchRequestEntryShipLineItems", - "type": "object", - "properties": { - "carrier": { - "type": "string", - "description": "Deprecated. Please use shipmentInfo instead. The carrier handling the shipment. See shipments[].carrier in the Orders resource representation for a list of acceptable values." - }, - "lineItems": { - "type": "array", - "description": "Line items to ship.", - "items": { - "$ref": "OrderShipmentLineItemShipment" - } - }, - "shipmentId": { - "type": "string", - "description": "Deprecated. Please use shipmentInfo instead. The ID of the shipment." - }, - "shipmentInfos": { - "type": "array", - "description": "Shipment information. This field is repeated because a single line item can be shipped in several packages (and have several tracking IDs).", - "items": { - "$ref": "OrdersCustomBatchRequestEntryShipLineItemsShipmentInfo" - } - }, - "trackingId": { - "type": "string", - "description": "Deprecated. Please use shipmentInfo instead. The tracking id for the shipment." - } - } - }, - "OrdersCustomBatchRequestEntryShipLineItemsShipmentInfo": { - "id": "OrdersCustomBatchRequestEntryShipLineItemsShipmentInfo", - "type": "object", - "properties": { - "carrier": { - "type": "string", - "description": "The carrier handling the shipment. See shipments[].carrier in the Orders resource representation for a list of acceptable values." - }, - "shipmentId": { - "type": "string", - "description": "The ID of the shipment.", - "annotations": { - "required": [ - "content.orders.shiplineitems" - ] - } - }, - "trackingId": { - "type": "string", - "description": "The tracking id for the shipment." - } - } - }, - "OrdersCustomBatchRequestEntryUpdateLineItemShippingDetails": { - "id": "OrdersCustomBatchRequestEntryUpdateLineItemShippingDetails", - "type": "object", - "properties": { - "deliverByDate": { - "type": "string", - "description": "Updated delivery by date, in ISO 8601 format. If not specified only ship by date is updated." - }, - "lineItemId": { - "type": "string", - "description": "The ID of the line item to set metadata. Either lineItemId or productId is required." - }, - "productId": { - "type": "string", - "description": "The ID of the product to set metadata. This is the REST ID used in the products service. Either lineItemId or productId is required." - }, - "shipByDate": { - "type": "string", - "description": "Updated ship by date, in ISO 8601 format. If not specified only deliver by date is updated." - } - } - }, - "OrdersCustomBatchRequestEntryUpdateShipment": { - "id": "OrdersCustomBatchRequestEntryUpdateShipment", - "type": "object", - "properties": { - "carrier": { - "type": "string", - "description": "The carrier handling the shipment. Not updated if missing. See shipments[].carrier in the Orders resource representation for a list of acceptable values." - }, - "shipmentId": { - "type": "string", - "description": "The ID of the shipment." - }, - "status": { - "type": "string", - "description": "New status for the shipment. Not updated if missing." - }, - "trackingId": { - "type": "string", - "description": "The tracking id for the shipment. Not updated if missing." - } - } - }, - "OrdersCustomBatchResponse": { - "id": "OrdersCustomBatchResponse", - "type": "object", - "properties": { - "entries": { - "type": "array", - "description": "The result of the execution of the batch requests.", - "items": { - "$ref": "OrdersCustomBatchResponseEntry" - } - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"content#ordersCustomBatchResponse\".", - "default": "content#ordersCustomBatchResponse" - } - } - }, - "OrdersCustomBatchResponseEntry": { - "id": "OrdersCustomBatchResponseEntry", - "type": "object", - "properties": { - "batchId": { - "type": "integer", - "description": "The ID of the request entry this entry responds to.", - "format": "uint32" - }, - "errors": { - "$ref": "Errors", - "description": "A list of errors defined if and only if the request failed." - }, - "executionStatus": { - "type": "string", - "description": "The status of the execution. Only defined if the method is not get or getByMerchantOrderId and if the request was successful." - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"content#ordersCustomBatchResponseEntry\".", - "default": "content#ordersCustomBatchResponseEntry" - }, - "order": { - "$ref": "Order", - "description": "The retrieved order. Only defined if the method is get and if the request was successful." - } - } - }, - "OrdersGetByMerchantOrderIdResponse": { - "id": "OrdersGetByMerchantOrderIdResponse", - "type": "object", - "properties": { - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"content#ordersGetByMerchantOrderIdResponse\".", - "default": "content#ordersGetByMerchantOrderIdResponse" - }, - "order": { - "$ref": "Order", - "description": "The requested order." - } - } - }, - "OrdersGetTestOrderTemplateResponse": { - "id": "OrdersGetTestOrderTemplateResponse", - "type": "object", - "properties": { - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"content#ordersGetTestOrderTemplateResponse\".", - "default": "content#ordersGetTestOrderTemplateResponse" - }, - "template": { - "$ref": "TestOrder", - "description": "The requested test order template." - } - } - }, - "OrdersInStoreRefundLineItemRequest": { - "id": "OrdersInStoreRefundLineItemRequest", - "type": "object", - "properties": { - "amountPretax": { - "$ref": "Price", - "description": "The amount that is refunded. Required." - }, - "amountTax": { - "$ref": "Price", - "description": "Tax amount that correspond to refund amount in amountPretax. Required." - }, - "lineItemId": { - "type": "string", - "description": "The ID of the line item to return. Either lineItemId or productId is required." - }, - "operationId": { - "type": "string", - "description": "The ID of the operation. Unique across all operations for a given order." - }, - "productId": { - "type": "string", - "description": "The ID of the product to return. This is the REST ID used in the products service. Either lineItemId or productId is required." - }, - "quantity": { - "type": "integer", - "description": "The quantity to return and refund.", - "format": "uint32" - }, - "reason": { - "type": "string", - "description": "The reason for the return." - }, - "reasonText": { - "type": "string", - "description": "The explanation of the reason." - } - } - }, - "OrdersInStoreRefundLineItemResponse": { - "id": "OrdersInStoreRefundLineItemResponse", - "type": "object", - "properties": { - "executionStatus": { - "type": "string", - "description": "The status of the execution." - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"content#ordersInStoreRefundLineItemResponse\".", - "default": "content#ordersInStoreRefundLineItemResponse" - } - } - }, - "OrdersListResponse": { - "id": "OrdersListResponse", - "type": "object", - "properties": { - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"content#ordersListResponse\".", - "default": "content#ordersListResponse" - }, - "nextPageToken": { - "type": "string", - "description": "The token for the retrieval of the next page of orders." - }, - "resources": { - "type": "array", - "items": { - "$ref": "Order" - } - } - } - }, - "OrdersRefundRequest": { - "id": "OrdersRefundRequest", - "type": "object", - "properties": { - "amount": { - "$ref": "Price", - "description": "The amount that is refunded." - }, - "amountPretax": { - "$ref": "Price", - "description": "The amount that is refunded. Either amount or amountPretax and amountTax should be filled." - }, - "amountTax": { - "$ref": "Price", - "description": "Tax amount that correspond to refund amount in amountPretax." - }, - "operationId": { - "type": "string", - "description": "The ID of the operation. Unique across all operations for a given order." - }, - "reason": { - "type": "string", - "description": "The reason for the refund." - }, - "reasonText": { - "type": "string", - "description": "The explanation of the reason." - } - } - }, - "OrdersRefundResponse": { - "id": "OrdersRefundResponse", - "type": "object", - "properties": { - "executionStatus": { - "type": "string", - "description": "The status of the execution." - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"content#ordersRefundResponse\".", - "default": "content#ordersRefundResponse" - } - } - }, - "OrdersRejectReturnLineItemRequest": { - "id": "OrdersRejectReturnLineItemRequest", - "type": "object", - "properties": { - "lineItemId": { - "type": "string", - "description": "The ID of the line item to return. Either lineItemId or productId is required." - }, - "operationId": { - "type": "string", - "description": "The ID of the operation. Unique across all operations for a given order." - }, - "productId": { - "type": "string", - "description": "The ID of the product to return. This is the REST ID used in the products service. Either lineItemId or productId is required." - }, - "quantity": { - "type": "integer", - "description": "The quantity to return and refund.", - "format": "uint32" - }, - "reason": { - "type": "string", - "description": "The reason for the return." - }, - "reasonText": { - "type": "string", - "description": "The explanation of the reason." - } - } - }, - "OrdersRejectReturnLineItemResponse": { - "id": "OrdersRejectReturnLineItemResponse", - "type": "object", - "properties": { - "executionStatus": { - "type": "string", - "description": "The status of the execution." - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"content#ordersRejectReturnLineItemResponse\".", - "default": "content#ordersRejectReturnLineItemResponse" - } - } - }, - "OrdersReturnLineItemRequest": { - "id": "OrdersReturnLineItemRequest", - "type": "object", - "properties": { - "lineItemId": { - "type": "string", - "description": "The ID of the line item to return. Either lineItemId or productId is required." - }, - "operationId": { - "type": "string", - "description": "The ID of the operation. Unique across all operations for a given order." - }, - "productId": { - "type": "string", - "description": "The ID of the product to return. This is the REST ID used in the products service. Either lineItemId or productId is required." - }, - "quantity": { - "type": "integer", - "description": "The quantity to return.", - "format": "uint32" - }, - "reason": { - "type": "string", - "description": "The reason for the return." - }, - "reasonText": { - "type": "string", - "description": "The explanation of the reason." - } - } - }, - "OrdersReturnLineItemResponse": { - "id": "OrdersReturnLineItemResponse", - "type": "object", - "properties": { - "executionStatus": { - "type": "string", - "description": "The status of the execution." - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"content#ordersReturnLineItemResponse\".", - "default": "content#ordersReturnLineItemResponse" - } - } - }, - "OrdersReturnRefundLineItemRequest": { - "id": "OrdersReturnRefundLineItemRequest", - "type": "object", - "properties": { - "amountPretax": { - "$ref": "Price", - "description": "The amount that is refunded. Optional, but if filled then both amountPretax and amountTax must be set." - }, - "amountTax": { - "$ref": "Price", - "description": "Tax amount that correspond to refund amount in amountPretax." - }, - "lineItemId": { - "type": "string", - "description": "The ID of the line item to return. Either lineItemId or productId is required." - }, - "operationId": { - "type": "string", - "description": "The ID of the operation. Unique across all operations for a given order." - }, - "productId": { - "type": "string", - "description": "The ID of the product to return. This is the REST ID used in the products service. Either lineItemId or productId is required." - }, - "quantity": { - "type": "integer", - "description": "The quantity to return and refund.", - "format": "uint32" - }, - "reason": { - "type": "string", - "description": "The reason for the return." - }, - "reasonText": { - "type": "string", - "description": "The explanation of the reason." - } - } - }, - "OrdersReturnRefundLineItemResponse": { - "id": "OrdersReturnRefundLineItemResponse", - "type": "object", - "properties": { - "executionStatus": { - "type": "string", - "description": "The status of the execution." - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"content#ordersReturnRefundLineItemResponse\".", - "default": "content#ordersReturnRefundLineItemResponse" - } - } - }, - "OrdersSetLineItemMetadataRequest": { - "id": "OrdersSetLineItemMetadataRequest", - "type": "object", - "properties": { - "annotations": { - "type": "array", - "items": { - "$ref": "OrderMerchantProvidedAnnotation" - } - }, - "lineItemId": { - "type": "string", - "description": "The ID of the line item to set metadata. Either lineItemId or productId is required." - }, - "operationId": { - "type": "string", - "description": "The ID of the operation. Unique across all operations for a given order." - }, - "productId": { - "type": "string", - "description": "The ID of the product to set metadata. This is the REST ID used in the products service. Either lineItemId or productId is required." - } - } - }, - "OrdersSetLineItemMetadataResponse": { - "id": "OrdersSetLineItemMetadataResponse", - "type": "object", - "properties": { - "executionStatus": { - "type": "string", - "description": "The status of the execution." - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"content#ordersSetLineItemMetadataResponse\".", - "default": "content#ordersSetLineItemMetadataResponse" - } - } - }, - "OrdersShipLineItemsRequest": { - "id": "OrdersShipLineItemsRequest", - "type": "object", - "properties": { - "carrier": { - "type": "string", - "description": "Deprecated. Please use shipmentInfo instead. The carrier handling the shipment. See shipments[].carrier in the Orders resource representation for a list of acceptable values." - }, - "lineItems": { - "type": "array", - "description": "Line items to ship.", - "items": { - "$ref": "OrderShipmentLineItemShipment" - } - }, - "operationId": { - "type": "string", - "description": "The ID of the operation. Unique across all operations for a given order." - }, - "shipmentId": { - "type": "string", - "description": "Deprecated. Please use shipmentInfo instead. The ID of the shipment." - }, - "shipmentInfos": { - "type": "array", - "description": "Shipment information. This field is repeated because a single line item can be shipped in several packages (and have several tracking IDs).", - "items": { - "$ref": "OrdersCustomBatchRequestEntryShipLineItemsShipmentInfo" - } - }, - "trackingId": { - "type": "string", - "description": "Deprecated. Please use shipmentInfo instead. The tracking id for the shipment." - } - } - }, - "OrdersShipLineItemsResponse": { - "id": "OrdersShipLineItemsResponse", - "type": "object", - "properties": { - "executionStatus": { - "type": "string", - "description": "The status of the execution." - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"content#ordersShipLineItemsResponse\".", - "default": "content#ordersShipLineItemsResponse" - } - } - }, - "OrdersUpdateLineItemShippingDetailsRequest": { - "id": "OrdersUpdateLineItemShippingDetailsRequest", - "type": "object", - "properties": { - "deliverByDate": { - "type": "string", - "description": "Updated delivery by date, in ISO 8601 format. If not specified only ship by date is updated." - }, - "lineItemId": { - "type": "string", - "description": "The ID of the line item to set metadata. Either lineItemId or productId is required." - }, - "operationId": { - "type": "string", - "description": "The ID of the operation. Unique across all operations for a given order." - }, - "productId": { - "type": "string", - "description": "The ID of the product to set metadata. This is the REST ID used in the products service. Either lineItemId or productId is required." - }, - "shipByDate": { - "type": "string", - "description": "Updated ship by date, in ISO 8601 format. If not specified only deliver by date is updated." - } - } - }, - "OrdersUpdateLineItemShippingDetailsResponse": { - "id": "OrdersUpdateLineItemShippingDetailsResponse", - "type": "object", - "properties": { - "executionStatus": { - "type": "string", - "description": "The status of the execution." - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"content#ordersUpdateLineItemShippingDetailsResponse\".", - "default": "content#ordersUpdateLineItemShippingDetailsResponse" - } - } - }, - "OrdersUpdateMerchantOrderIdRequest": { - "id": "OrdersUpdateMerchantOrderIdRequest", - "type": "object", - "properties": { - "merchantOrderId": { - "type": "string", - "description": "The merchant order id to be assigned to the order. Must be unique per merchant." - }, - "operationId": { - "type": "string", - "description": "The ID of the operation. Unique across all operations for a given order." - } - } - }, - "OrdersUpdateMerchantOrderIdResponse": { - "id": "OrdersUpdateMerchantOrderIdResponse", - "type": "object", - "properties": { - "executionStatus": { - "type": "string", - "description": "The status of the execution." - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"content#ordersUpdateMerchantOrderIdResponse\".", - "default": "content#ordersUpdateMerchantOrderIdResponse" - } - } - }, - "OrdersUpdateShipmentRequest": { - "id": "OrdersUpdateShipmentRequest", - "type": "object", - "properties": { - "carrier": { - "type": "string", - "description": "The carrier handling the shipment. Not updated if missing. See shipments[].carrier in the Orders resource representation for a list of acceptable values." - }, - "operationId": { - "type": "string", - "description": "The ID of the operation. Unique across all operations for a given order." - }, - "shipmentId": { - "type": "string", - "description": "The ID of the shipment." - }, - "status": { - "type": "string", - "description": "New status for the shipment. Not updated if missing." - }, - "trackingId": { - "type": "string", - "description": "The tracking id for the shipment. Not updated if missing." - } - } - }, - "OrdersUpdateShipmentResponse": { - "id": "OrdersUpdateShipmentResponse", - "type": "object", - "properties": { - "executionStatus": { - "type": "string", - "description": "The status of the execution." - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"content#ordersUpdateShipmentResponse\".", - "default": "content#ordersUpdateShipmentResponse" - } - } - }, - "PostalCodeGroup": { - "id": "PostalCodeGroup", - "type": "object", - "properties": { - "country": { - "type": "string", - "description": "The CLDR territory code of the country the postal code group applies to. Required." - }, - "name": { - "type": "string", - "description": "The name of the postal code group, referred to in headers. Required." - }, - "postalCodeRanges": { - "type": "array", - "description": "A range of postal codes. Required.", - "items": { - "$ref": "PostalCodeRange" - } - } - } - }, - "PostalCodeRange": { - "id": "PostalCodeRange", - "type": "object", - "properties": { - "postalCodeRangeBegin": { - "type": "string", - "description": "A postal code or a pattern of the form prefix* denoting the inclusive lower bound of the range defining the area. Examples values: \"94108\", \"9410*\", \"9*\". Required." - }, - "postalCodeRangeEnd": { - "type": "string", - "description": "A postal code or a pattern of the form prefix* denoting the inclusive upper bound of the range defining the area. It must have the same length as postalCodeRangeBegin: if postalCodeRangeBegin is a postal code then postalCodeRangeEnd must be a postal code too; if postalCodeRangeBegin is a pattern then postalCodeRangeEnd must be a pattern with the same prefix length. Optional: if not set, then the area is defined as being all the postal codes matching postalCodeRangeBegin." - } - } - }, - "Price": { - "id": "Price", - "type": "object", - "properties": { - "currency": { - "type": "string", - "description": "The currency of the price." - }, - "value": { - "type": "string", - "description": "The price represented as a number." - } - } - }, - "Product": { - "id": "Product", - "type": "object", - "description": "Product data.", - "properties": { - "additionalImageLinks": { - "type": "array", - "description": "Additional URLs of images of the item.", - "items": { - "type": "string" - } - }, - "additionalProductTypes": { - "type": "array", - "description": "Additional categories of the item (formatted as in products feed specification).", - "items": { - "type": "string" - } - }, - "adult": { - "type": "boolean", - "description": "Set to true if the item is targeted towards adults." - }, - "adwordsGrouping": { - "type": "string", - "description": "Used to group items in an arbitrary way. Only for CPA%, discouraged otherwise." - }, - "adwordsLabels": { - "type": "array", - "description": "Similar to adwords_grouping, but only works on CPC.", - "items": { - "type": "string" - } - }, - "adwordsRedirect": { - "type": "string", - "description": "Allows advertisers to override the item URL when the product is shown within the context of Product Ads." - }, - "ageGroup": { - "type": "string", - "description": "Target age group of the item." - }, - "aspects": { - "type": "array", - "description": "Specifies the intended aspects for the product.", - "items": { - "$ref": "ProductAspect" - } - }, - "availability": { - "type": "string", - "description": "Availability status of the item." - }, - "availabilityDate": { - "type": "string", - "description": "The day a pre-ordered product becomes available for delivery, in ISO 8601 format." - }, - "brand": { - "type": "string", - "description": "Brand of the item." - }, - "channel": { - "type": "string", - "description": "The item's channel (online or local).", - "annotations": { - "required": [ - "content.products.insert" - ] - } - }, - "color": { - "type": "string", - "description": "Color of the item." - }, - "condition": { - "type": "string", - "description": "Condition or state of the item." - }, - "contentLanguage": { - "type": "string", - "description": "The two-letter ISO 639-1 language code for the item.", - "annotations": { - "required": [ - "content.products.insert" - ] - } - }, - "customAttributes": { - "type": "array", - "description": "A list of custom (merchant-provided) attributes. It can also be used for submitting any attribute of the feed specification in its generic form (e.g., { \"name\": \"size type\", \"type\": \"text\", \"value\": \"regular\" }). This is useful for submitting attributes not explicitly exposed by the API.", - "items": { - "$ref": "ProductCustomAttribute" - } - }, - "customGroups": { - "type": "array", - "description": "A list of custom (merchant-provided) custom attribute groups.", - "items": { - "$ref": "ProductCustomGroup" - } - }, - "customLabel0": { - "type": "string", - "description": "Custom label 0 for custom grouping of items in a Shopping campaign." - }, - "customLabel1": { - "type": "string", - "description": "Custom label 1 for custom grouping of items in a Shopping campaign." - }, - "customLabel2": { - "type": "string", - "description": "Custom label 2 for custom grouping of items in a Shopping campaign." - }, - "customLabel3": { - "type": "string", - "description": "Custom label 3 for custom grouping of items in a Shopping campaign." - }, - "customLabel4": { - "type": "string", - "description": "Custom label 4 for custom grouping of items in a Shopping campaign." - }, - "description": { - "type": "string", - "description": "Description of the item." - }, - "destinations": { - "type": "array", - "description": "Specifies the intended destinations for the product.", - "items": { - "$ref": "ProductDestination" - } - }, - "displayAdsId": { - "type": "string", - "description": "An identifier for an item for dynamic remarketing campaigns." - }, - "displayAdsLink": { - "type": "string", - "description": "URL directly to your item's landing page for dynamic remarketing campaigns." - }, - "displayAdsSimilarIds": { - "type": "array", - "description": "Advertiser-specified recommendations.", - "items": { - "type": "string" - } - }, - "displayAdsTitle": { - "type": "string", - "description": "Title of an item for dynamic remarketing campaigns." - }, - "displayAdsValue": { - "type": "number", - "description": "Offer margin for dynamic remarketing campaigns.", - "format": "double" - }, - "energyEfficiencyClass": { - "type": "string", - "description": "The energy efficiency class as defined in EU directive 2010/30/EU." - }, - "expirationDate": { - "type": "string", - "description": "Date on which the item should expire, as specified upon insertion, in ISO 8601 format. The actual expiration date in Google Shopping is exposed in productstatuses as googleExpirationDate and might be earlier if expirationDate is too far in the future." - }, - "gender": { - "type": "string", - "description": "Target gender of the item." - }, - "googleProductCategory": { - "type": "string", - "description": "Google's category of the item (see Google product taxonomy)." - }, - "gtin": { - "type": "string", - "description": "Global Trade Item Number (GTIN) of the item." - }, - "id": { - "type": "string", - "description": "The REST id of the product. Content API methods that operate on products take this as their productId parameter.\nThe REST id for a product is of the form channel:contentLanguage:targetCountry:offerId." - }, - "identifierExists": { - "type": "boolean", - "description": "False when the item does not have unique product identifiers appropriate to its category, such as GTIN, MPN, and brand. Required according to the Unique Product Identifier Rules for all target countries except for Canada." - }, - "imageLink": { - "type": "string", - "description": "URL of an image of the item." - }, - "installment": { - "$ref": "Installment", - "description": "Number and amount of installments to pay for an item. Brazil only." - }, - "isBundle": { - "type": "boolean", - "description": "Whether the item is a merchant-defined bundle. A bundle is a custom grouping of different products sold by a merchant for a single price." - }, - "itemGroupId": { - "type": "string", - "description": "Shared identifier for all variants of the same product." - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"content#product\".", - "default": "content#product" - }, - "link": { - "type": "string", - "description": "URL directly linking to your item's page on your website." - }, - "loyaltyPoints": { - "$ref": "LoyaltyPoints", - "description": "Loyalty points that users receive after purchasing the item. Japan only." - }, - "material": { - "type": "string", - "description": "The material of which the item is made." - }, - "maxHandlingTime": { - "type": "string", - "description": "Maximal product handling time (in business days).", - "format": "int64" - }, - "minHandlingTime": { - "type": "string", - "description": "Minimal product handling time (in business days).", - "format": "int64" - }, - "mobileLink": { - "type": "string", - "description": "Link to a mobile-optimized version of the landing page." - }, - "mpn": { - "type": "string", - "description": "Manufacturer Part Number (MPN) of the item." - }, - "multipack": { - "type": "string", - "description": "The number of identical products in a merchant-defined multipack.", - "format": "int64" - }, - "offerId": { - "type": "string", - "description": "A unique identifier for the item. Leading and trailing whitespaces are stripped and multiple whitespaces are replaced by a single whitespace upon submission. Only valid unicode characters are accepted. See the products feed specification for details.\nNote: Content API methods that operate on products take the REST id of the product, not this identifier.", - "annotations": { - "required": [ - "content.products.insert" - ] - } - }, - "onlineOnly": { - "type": "boolean", - "description": "Whether an item is available for purchase only online." - }, - "pattern": { - "type": "string", - "description": "The item's pattern (e.g. polka dots)." - }, - "price": { - "$ref": "Price", - "description": "Price of the item." - }, - "productType": { - "type": "string", - "description": "Your category of the item (formatted as in products feed specification)." - }, - "promotionIds": { - "type": "array", - "description": "The unique ID of a promotion.", - "items": { - "type": "string" - } - }, - "salePrice": { - "$ref": "Price", - "description": "Advertised sale price of the item." - }, - "salePriceEffectiveDate": { - "type": "string", - "description": "Date range during which the item is on sale (see products feed specification)." - }, - "sellOnGoogleQuantity": { - "type": "string", - "description": "The quantity of the product that is reserved for sell-on-google ads.", - "format": "int64" - }, - "shipping": { - "type": "array", - "description": "Shipping rules.", - "items": { - "$ref": "ProductShipping" - } - }, - "shippingHeight": { - "$ref": "ProductShippingDimension", - "description": "Height of the item for shipping." - }, - "shippingLabel": { - "type": "string", - "description": "The shipping label of the product, used to group product in account-level shipping rules." - }, - "shippingLength": { - "$ref": "ProductShippingDimension", - "description": "Length of the item for shipping." - }, - "shippingWeight": { - "$ref": "ProductShippingWeight", - "description": "Weight of the item for shipping." - }, - "shippingWidth": { - "$ref": "ProductShippingDimension", - "description": "Width of the item for shipping." - }, - "sizeSystem": { - "type": "string", - "description": "System in which the size is specified. Recommended for apparel items." - }, - "sizeType": { - "type": "string", - "description": "The cut of the item. Recommended for apparel items." - }, - "sizes": { - "type": "array", - "description": "Size of the item.", - "items": { - "type": "string" - } - }, - "targetCountry": { - "type": "string", - "description": "The CLDR territory code for the item.", - "annotations": { - "required": [ - "content.products.insert" - ] - } - }, - "taxes": { - "type": "array", - "description": "Tax information.", - "items": { - "$ref": "ProductTax" - } - }, - "title": { - "type": "string", - "description": "Title of the item." - }, - "unitPricingBaseMeasure": { - "$ref": "ProductUnitPricingBaseMeasure", - "description": "The preference of the denominator of the unit price." - }, - "unitPricingMeasure": { - "$ref": "ProductUnitPricingMeasure", - "description": "The measure and dimension of an item." - }, - "validatedDestinations": { - "type": "array", - "description": "The read-only list of intended destinations which passed validation.", - "items": { - "type": "string" - } - }, - "warnings": { - "type": "array", - "description": "Read-only warnings.", - "items": { - "$ref": "Error" - } - } - } - }, - "ProductAspect": { - "id": "ProductAspect", - "type": "object", - "properties": { - "aspectName": { - "type": "string", - "description": "The name of the aspect." - }, - "destinationName": { - "type": "string", - "description": "The name of the destination. Leave out to apply to all destinations." - }, - "intention": { - "type": "string", - "description": "Whether the aspect is required, excluded or should be validated." - } - } - }, - "ProductCustomAttribute": { - "id": "ProductCustomAttribute", - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "The name of the attribute. Underscores will be replaced by spaces upon insertion." - }, - "type": { - "type": "string", - "description": "The type of the attribute." - }, - "unit": { - "type": "string", - "description": "Free-form unit of the attribute. Unit can only be used for values of type INT or FLOAT." - }, - "value": { - "type": "string", - "description": "The value of the attribute." - } - } - }, - "ProductCustomGroup": { - "id": "ProductCustomGroup", - "type": "object", - "properties": { - "attributes": { - "type": "array", - "description": "The sub-attributes.", - "items": { - "$ref": "ProductCustomAttribute" - } - }, - "name": { - "type": "string", - "description": "The name of the group. Underscores will be replaced by spaces upon insertion." - } - } - }, - "ProductDestination": { - "id": "ProductDestination", - "type": "object", - "properties": { - "destinationName": { - "type": "string", - "description": "The name of the destination." - }, - "intention": { - "type": "string", - "description": "Whether the destination is required, excluded or should be validated." - } - } - }, - "ProductShipping": { - "id": "ProductShipping", - "type": "object", - "properties": { - "country": { - "type": "string", - "description": "The CLDR territory code of the country to which an item will ship." - }, - "locationGroupName": { - "type": "string", - "description": "The location where the shipping is applicable, represented by a location group name." - }, - "locationId": { - "type": "string", - "description": "The numeric id of a location that the shipping rate applies to as defined in the AdWords API.", - "format": "int64" - }, - "postalCode": { - "type": "string", - "description": "The postal code range that the shipping rate applies to, represented by a postal code, a postal code prefix followed by a * wildcard, a range between two postal codes or two postal code prefixes of equal length." - }, - "price": { - "$ref": "Price", - "description": "Fixed shipping price, represented as a number." - }, - "region": { - "type": "string", - "description": "The geographic region to which a shipping rate applies." - }, - "service": { - "type": "string", - "description": "A free-form description of the service class or delivery speed." - } - } - }, - "ProductShippingDimension": { - "id": "ProductShippingDimension", - "type": "object", - "properties": { - "unit": { - "type": "string", - "description": "The unit of value.\n\nAcceptable values are: \n- \"cm\" \n- \"in\"" - }, - "value": { - "type": "number", - "description": "The dimension of the product used to calculate the shipping cost of the item.", - "format": "double" - } - } - }, - "ProductShippingWeight": { - "id": "ProductShippingWeight", - "type": "object", - "properties": { - "unit": { - "type": "string", - "description": "The unit of value." - }, - "value": { - "type": "number", - "description": "The weight of the product used to calculate the shipping cost of the item.", - "format": "double" - } - } - }, - "ProductStatus": { - "id": "ProductStatus", - "type": "object", - "description": "The status of a product, i.e., information about a product computed asynchronously by the data quality analysis.", - "properties": { - "creationDate": { - "type": "string", - "description": "Date on which the item has been created, in ISO 8601 format." - }, - "dataQualityIssues": { - "type": "array", - "description": "A list of data quality issues associated with the product.", - "items": { - "$ref": "ProductStatusDataQualityIssue" - } - }, - "destinationStatuses": { - "type": "array", - "description": "The intended destinations for the product.", - "items": { - "$ref": "ProductStatusDestinationStatus" - } - }, - "googleExpirationDate": { - "type": "string", - "description": "Date on which the item expires in Google Shopping, in ISO 8601 format." - }, - "itemLevelIssues": { - "type": "array", - "description": "A list of all issues associated with the product.", - "items": { - "$ref": "ProductStatusItemLevelIssue" - } - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"content#productStatus\".", - "default": "content#productStatus" - }, - "lastUpdateDate": { - "type": "string", - "description": "Date on which the item has been last updated, in ISO 8601 format." - }, - "link": { - "type": "string", - "description": "The link to the product." - }, - "product": { - "$ref": "Product", - "description": "Product data after applying all the join inputs." - }, - "productId": { - "type": "string", - "description": "The id of the product for which status is reported." - }, - "title": { - "type": "string", - "description": "The title of the product." - } - } - }, - "ProductStatusDataQualityIssue": { - "id": "ProductStatusDataQualityIssue", - "type": "object", - "properties": { - "detail": { - "type": "string", - "description": "A more detailed error string." - }, - "fetchStatus": { - "type": "string", - "description": "The fetch status for landing_page_errors." - }, - "id": { - "type": "string", - "description": "The id of the data quality issue." - }, - "location": { - "type": "string", - "description": "The attribute name that is relevant for the issue." - }, - "severity": { - "type": "string", - "description": "The severity of the data quality issue." - }, - "timestamp": { - "type": "string", - "description": "The time stamp of the data quality issue." - }, - "valueOnLandingPage": { - "type": "string", - "description": "The value of that attribute that was found on the landing page" - }, - "valueProvided": { - "type": "string", - "description": "The value the attribute had at time of evaluation." - } - } - }, - "ProductStatusDestinationStatus": { - "id": "ProductStatusDestinationStatus", - "type": "object", - "properties": { - "approvalPending": { - "type": "boolean", - "description": "Whether the approval status might change due to further processing." - }, - "approvalStatus": { - "type": "string", - "description": "The destination's approval status." - }, - "destination": { - "type": "string", - "description": "The name of the destination" - }, - "intention": { - "type": "string", - "description": "Provided for backward compatibility only. Always set to \"required\"." - } - } - }, - "ProductStatusItemLevelIssue": { - "id": "ProductStatusItemLevelIssue", - "type": "object", - "properties": { - "attributeName": { - "type": "string", - "description": "The attribute's name, if the issue is caused by a single attribute." - }, - "code": { - "type": "string", - "description": "The error code of the issue." - }, - "destination": { - "type": "string", - "description": "The destination the issue applies to." - }, - "resolution": { - "type": "string", - "description": "Whether the issue can be resolved by the merchant." - }, - "servability": { - "type": "string", - "description": "How this issue affects serving of the offer." - } - } - }, - "ProductTax": { - "id": "ProductTax", - "type": "object", - "properties": { - "country": { - "type": "string", - "description": "The country within which the item is taxed, specified as a CLDR territory code." - }, - "locationId": { - "type": "string", - "description": "The numeric id of a location that the tax rate applies to as defined in the AdWords API.", - "format": "int64" - }, - "postalCode": { - "type": "string", - "description": "The postal code range that the tax rate applies to, represented by a ZIP code, a ZIP code prefix using * wildcard, a range between two ZIP codes or two ZIP code prefixes of equal length. Examples: 94114, 94*, 94002-95460, 94*-95*." - }, - "rate": { - "type": "number", - "description": "The percentage of tax rate that applies to the item price.", - "format": "double" - }, - "region": { - "type": "string", - "description": "The geographic region to which the tax rate applies." - }, - "taxShip": { - "type": "boolean", - "description": "Set to true if tax is charged on shipping." - } - } - }, - "ProductUnitPricingBaseMeasure": { - "id": "ProductUnitPricingBaseMeasure", - "type": "object", - "properties": { - "unit": { - "type": "string", - "description": "The unit of the denominator." - }, - "value": { - "type": "string", - "description": "The denominator of the unit price.", - "format": "int64" - } - } - }, - "ProductUnitPricingMeasure": { - "id": "ProductUnitPricingMeasure", - "type": "object", - "properties": { - "unit": { - "type": "string", - "description": "The unit of the measure." - }, - "value": { - "type": "number", - "description": "The measure of an item.", - "format": "double" - } - } - }, - "ProductsCustomBatchRequest": { - "id": "ProductsCustomBatchRequest", - "type": "object", - "properties": { - "entries": { - "type": "array", - "description": "The request entries to be processed in the batch.", - "items": { - "$ref": "ProductsCustomBatchRequestEntry" - } - } - } - }, - "ProductsCustomBatchRequestEntry": { - "id": "ProductsCustomBatchRequestEntry", - "type": "object", - "description": "A batch entry encoding a single non-batch products request.", - "properties": { - "batchId": { - "type": "integer", - "description": "An entry ID, unique within the batch request.", - "format": "uint32" - }, - "merchantId": { - "type": "string", - "description": "The ID of the managing account.", - "format": "uint64" - }, - "method": { - "type": "string" - }, - "product": { - "$ref": "Product", - "description": "The product to insert. Only required if the method is insert." - }, - "productId": { - "type": "string", - "description": "The ID of the product to get or delete. Only defined if the method is get or delete." - } - } - }, - "ProductsCustomBatchResponse": { - "id": "ProductsCustomBatchResponse", - "type": "object", - "properties": { - "entries": { - "type": "array", - "description": "The result of the execution of the batch requests.", - "items": { - "$ref": "ProductsCustomBatchResponseEntry" - } - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"content#productsCustomBatchResponse\".", - "default": "content#productsCustomBatchResponse" - } - } - }, - "ProductsCustomBatchResponseEntry": { - "id": "ProductsCustomBatchResponseEntry", - "type": "object", - "description": "A batch entry encoding a single non-batch products response.", - "properties": { - "batchId": { - "type": "integer", - "description": "The ID of the request entry this entry responds to.", - "format": "uint32" - }, - "errors": { - "$ref": "Errors", - "description": "A list of errors defined if and only if the request failed." - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"content#productsCustomBatchResponseEntry\".", - "default": "content#productsCustomBatchResponseEntry" - }, - "product": { - "$ref": "Product", - "description": "The inserted product. Only defined if the method is insert and if the request was successful." - } - } - }, - "ProductsListResponse": { - "id": "ProductsListResponse", - "type": "object", - "properties": { - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"content#productsListResponse\".", - "default": "content#productsListResponse" - }, - "nextPageToken": { - "type": "string", - "description": "The token for the retrieval of the next page of products." - }, - "resources": { - "type": "array", - "items": { - "$ref": "Product" - } - } - } - }, - "ProductstatusesCustomBatchRequest": { - "id": "ProductstatusesCustomBatchRequest", - "type": "object", - "properties": { - "entries": { - "type": "array", - "description": "The request entries to be processed in the batch.", - "items": { - "$ref": "ProductstatusesCustomBatchRequestEntry" - } - } - } - }, - "ProductstatusesCustomBatchRequestEntry": { - "id": "ProductstatusesCustomBatchRequestEntry", - "type": "object", - "description": "A batch entry encoding a single non-batch productstatuses request.", - "properties": { - "batchId": { - "type": "integer", - "description": "An entry ID, unique within the batch request.", - "format": "uint32" - }, - "includeAttributes": { - "type": "boolean" - }, - "merchantId": { - "type": "string", - "description": "The ID of the managing account.", - "format": "uint64" - }, - "method": { - "type": "string" - }, - "productId": { - "type": "string", - "description": "The ID of the product whose status to get." - } - } - }, - "ProductstatusesCustomBatchResponse": { - "id": "ProductstatusesCustomBatchResponse", - "type": "object", - "properties": { - "entries": { - "type": "array", - "description": "The result of the execution of the batch requests.", - "items": { - "$ref": "ProductstatusesCustomBatchResponseEntry" - } - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"content#productstatusesCustomBatchResponse\".", - "default": "content#productstatusesCustomBatchResponse" - } - } - }, - "ProductstatusesCustomBatchResponseEntry": { - "id": "ProductstatusesCustomBatchResponseEntry", - "type": "object", - "description": "A batch entry encoding a single non-batch productstatuses response.", - "properties": { - "batchId": { - "type": "integer", - "description": "The ID of the request entry this entry responds to.", - "format": "uint32" - }, - "errors": { - "$ref": "Errors", - "description": "A list of errors, if the request failed." - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"content#productstatusesCustomBatchResponseEntry\".", - "default": "content#productstatusesCustomBatchResponseEntry" - }, - "productStatus": { - "$ref": "ProductStatus", - "description": "The requested product status. Only defined if the request was successful." - } - } - }, - "ProductstatusesListResponse": { - "id": "ProductstatusesListResponse", - "type": "object", - "properties": { - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"content#productstatusesListResponse\".", - "default": "content#productstatusesListResponse" - }, - "nextPageToken": { - "type": "string", - "description": "The token for the retrieval of the next page of products statuses." - }, - "resources": { - "type": "array", - "items": { - "$ref": "ProductStatus" - } - } - } - }, - "RateGroup": { - "id": "RateGroup", - "type": "object", - "properties": { - "applicableShippingLabels": { - "type": "array", - "description": "A list of shipping labels defining the products to which this rate group applies to. This is a disjunction: only one of the labels has to match for the rate group to apply. May only be empty for the last rate group of a service. Required.", - "items": { - "type": "string" - } - }, - "carrierRates": { - "type": "array", - "description": "A list of carrier rates that can be referred to by mainTable or singleValue.", - "items": { - "$ref": "CarrierRate" - } - }, - "mainTable": { - "$ref": "Table", - "description": "A table defining the rate group, when singleValue is not expressive enough. Can only be set if singleValue is not set." - }, - "singleValue": { - "$ref": "Value", - "description": "The value of the rate group (e.g. flat rate $10). Can only be set if mainTable and subtables are not set." - }, - "subtables": { - "type": "array", - "description": "A list of subtables referred to by mainTable. Can only be set if mainTable is set.", - "items": { - "$ref": "Table" - } - } - } - }, - "Row": { - "id": "Row", - "type": "object", - "properties": { - "cells": { - "type": "array", - "description": "The list of cells that constitute the row. Must have the same length as columnHeaders for two-dimensional tables, a length of 1 for one-dimensional tables. Required.", - "items": { - "$ref": "Value" - } - } - } - }, - "Service": { - "id": "Service", - "type": "object", - "properties": { - "active": { - "type": "boolean", - "description": "A boolean exposing the active status of the shipping service. Required." - }, - "currency": { - "type": "string", - "description": "The CLDR code of the currency to which this service applies. Must match that of the prices in rate groups." - }, - "deliveryCountry": { - "type": "string", - "description": "The CLDR territory code of the country to which the service applies. Required." - }, - "deliveryTime": { - "$ref": "DeliveryTime", - "description": "Time spent in various aspects from order to the delivery of the product. Required." - }, - "minimumOrderValue": { - "$ref": "Price", - "description": "Minimum order value for this service. If set, indicates that customers will have to spend at least this amount. All prices within a service must have the same currency." - }, - "name": { - "type": "string", - "description": "Free-form name of the service. Must be unique within target account. Required." - }, - "rateGroups": { - "type": "array", - "description": "Shipping rate group definitions. Only the last one is allowed to have an empty applicableShippingLabels, which means \"everything else\". The other applicableShippingLabels must not overlap.", - "items": { - "$ref": "RateGroup" - } - } - } - }, - "ShippingSettings": { - "id": "ShippingSettings", - "type": "object", - "description": "The merchant account's shipping settings.", - "properties": { - "accountId": { - "type": "string", - "description": "The ID of the account to which these account shipping settings belong. Ignored upon update, always present in get request responses.", - "format": "uint64" - }, - "postalCodeGroups": { - "type": "array", - "description": "A list of postal code groups that can be referred to in services. Optional.", - "items": { - "$ref": "PostalCodeGroup" - } - }, - "services": { - "type": "array", - "description": "The target account's list of services. Optional.", - "items": { - "$ref": "Service" - } - } - } - }, - "ShippingsettingsCustomBatchRequest": { - "id": "ShippingsettingsCustomBatchRequest", - "type": "object", - "properties": { - "entries": { - "type": "array", - "description": "The request entries to be processed in the batch.", - "items": { - "$ref": "ShippingsettingsCustomBatchRequestEntry" - } - } - } - }, - "ShippingsettingsCustomBatchRequestEntry": { - "id": "ShippingsettingsCustomBatchRequestEntry", - "type": "object", - "description": "A batch entry encoding a single non-batch shippingsettings request.", - "properties": { - "accountId": { - "type": "string", - "description": "The ID of the account for which to get/update account shipping settings.", - "format": "uint64" - }, - "batchId": { - "type": "integer", - "description": "An entry ID, unique within the batch request.", - "format": "uint32" - }, - "merchantId": { - "type": "string", - "description": "The ID of the managing account.", - "format": "uint64" - }, - "method": { - "type": "string" - }, - "shippingSettings": { - "$ref": "ShippingSettings", - "description": "The account shipping settings to update. Only defined if the method is update." - } - } - }, - "ShippingsettingsCustomBatchResponse": { - "id": "ShippingsettingsCustomBatchResponse", - "type": "object", - "properties": { - "entries": { - "type": "array", - "description": "The result of the execution of the batch requests.", - "items": { - "$ref": "ShippingsettingsCustomBatchResponseEntry" - } - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"content#shippingsettingsCustomBatchResponse\".", - "default": "content#shippingsettingsCustomBatchResponse" - } - } - }, - "ShippingsettingsCustomBatchResponseEntry": { - "id": "ShippingsettingsCustomBatchResponseEntry", - "type": "object", - "description": "A batch entry encoding a single non-batch shipping settings response.", - "properties": { - "batchId": { - "type": "integer", - "description": "The ID of the request entry to which this entry responds.", - "format": "uint32" - }, - "errors": { - "$ref": "Errors", - "description": "A list of errors defined if, and only if, the request failed." - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"content#shippingsettingsCustomBatchResponseEntry\".", - "default": "content#shippingsettingsCustomBatchResponseEntry" - }, - "shippingSettings": { - "$ref": "ShippingSettings", - "description": "The retrieved or updated account shipping settings." - } - } - }, - "ShippingsettingsGetSupportedCarriersResponse": { - "id": "ShippingsettingsGetSupportedCarriersResponse", - "type": "object", - "properties": { - "carriers": { - "type": "array", - "description": "A list of supported carriers. May be empty.", - "items": { - "$ref": "CarriersCarrier" - } - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"content#shippingsettingsGetSupportedCarriersResponse\".", - "default": "content#shippingsettingsGetSupportedCarriersResponse" - } - } - }, - "ShippingsettingsGetSupportedHolidaysResponse": { - "id": "ShippingsettingsGetSupportedHolidaysResponse", - "type": "object", - "properties": { - "holidays": { - "type": "array", - "description": "A list of holidays applicable for delivery guarantees. May be empty.", - "items": { - "$ref": "HolidaysHoliday" - } - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"content#shippingsettingsGetSupportedHolidaysResponse\".", - "default": "content#shippingsettingsGetSupportedHolidaysResponse" - } - } - }, - "ShippingsettingsListResponse": { - "id": "ShippingsettingsListResponse", - "type": "object", - "properties": { - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"content#shippingsettingsListResponse\".", - "default": "content#shippingsettingsListResponse" - }, - "nextPageToken": { - "type": "string", - "description": "The token for the retrieval of the next page of shipping settings." - }, - "resources": { - "type": "array", - "items": { - "$ref": "ShippingSettings" - } - } - } - }, - "Table": { - "id": "Table", - "type": "object", - "properties": { - "columnHeaders": { - "$ref": "Headers", - "description": "Headers of the table's columns. Optional: if not set then the table has only one dimension." - }, - "name": { - "type": "string", - "description": "Name of the table. Required for subtables, ignored for the main table." - }, - "rowHeaders": { - "$ref": "Headers", - "description": "Headers of the table's rows. Required." - }, - "rows": { - "type": "array", - "description": "The list of rows that constitute the table. Must have the same length as rowHeaders. Required.", - "items": { - "$ref": "Row" - } - } - } - }, - "TestOrder": { - "id": "TestOrder", - "type": "object", - "properties": { - "customer": { - "$ref": "TestOrderCustomer", - "description": "The details of the customer who placed the order.", - "annotations": { - "required": [ - "content.orders.createtestorder" - ] - } - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"content#testOrder\".", - "default": "content#testOrder" - }, - "lineItems": { - "type": "array", - "description": "Line items that are ordered. At least one line item must be provided.", - "items": { - "$ref": "TestOrderLineItem" - }, - "annotations": { - "required": [ - "content.orders.createtestorder" - ] - } - }, - "notificationMode": { - "type": "string", - "description": "Determines if test order must be pulled by merchant or pushed to merchant via push integration." - }, - "paymentMethod": { - "$ref": "TestOrderPaymentMethod", - "description": "The details of the payment method." - }, - "predefinedDeliveryAddress": { - "type": "string", - "description": "Identifier of one of the predefined delivery addresses for the delivery.", - "annotations": { - "required": [ - "content.orders.createtestorder" - ] - } - }, - "promotions": { - "type": "array", - "description": "The details of the merchant provided promotions applied to the order. More details about the program are here.", - "items": { - "$ref": "OrderPromotion" - } - }, - "shippingCost": { - "$ref": "Price", - "description": "The total cost of shipping for all items.", - "annotations": { - "required": [ - "content.orders.createtestorder" - ] - } - }, - "shippingCostTax": { - "$ref": "Price", - "description": "The tax for the total shipping cost.", - "annotations": { - "required": [ - "content.orders.createtestorder" - ] - } - }, - "shippingOption": { - "type": "string", - "description": "The requested shipping option.", - "annotations": { - "required": [ - "content.orders.createtestorder" - ] - } - } - } - }, - "TestOrderCustomer": { - "id": "TestOrderCustomer", - "type": "object", - "properties": { - "email": { - "type": "string", - "description": "Email address of the customer.", - "annotations": { - "required": [ - "content.orders.createtestorder" - ] - } - }, - "explicitMarketingPreference": { - "type": "boolean", - "description": "If set, this indicates the user explicitly chose to opt in or out of providing marketing rights to the merchant. If unset, this indicates the user has already made this choice in a previous purchase, and was thus not shown the marketing right opt in/out checkbox during the checkout flow. Optional." - }, - "fullName": { - "type": "string", - "description": "Full name of the customer." - } - } - }, - "TestOrderLineItem": { - "id": "TestOrderLineItem", - "type": "object", - "properties": { - "product": { - "$ref": "TestOrderLineItemProduct", - "description": "Product data from the time of the order placement." - }, - "quantityOrdered": { - "type": "integer", - "description": "Number of items ordered.", - "format": "uint32", - "annotations": { - "required": [ - "content.orders.createtestorder" - ] - } - }, - "returnInfo": { - "$ref": "OrderLineItemReturnInfo", - "description": "Details of the return policy for the line item.", - "annotations": { - "required": [ - "content.orders.createtestorder" - ] - } - }, - "shippingDetails": { - "$ref": "OrderLineItemShippingDetails", - "description": "Details of the requested shipping for the line item.", - "annotations": { - "required": [ - "content.orders.createtestorder" - ] - } - }, - "unitTax": { - "$ref": "Price", - "description": "Unit tax for the line item.", - "annotations": { - "required": [ - "content.orders.createtestorder" - ] - } - } - } - }, - "TestOrderLineItemProduct": { - "id": "TestOrderLineItemProduct", - "type": "object", - "properties": { - "brand": { - "type": "string", - "description": "Brand of the item.", - "annotations": { - "required": [ - "content.orders.createtestorder" - ] - } - }, - "channel": { - "type": "string", - "description": "The item's channel.", - "annotations": { - "required": [ - "content.orders.createtestorder" - ] - } - }, - "condition": { - "type": "string", - "description": "Condition or state of the item.", - "annotations": { - "required": [ - "content.orders.createtestorder" - ] - } - }, - "contentLanguage": { - "type": "string", - "description": "The two-letter ISO 639-1 language code for the item.", - "annotations": { - "required": [ - "content.orders.createtestorder" - ] - } - }, - "gtin": { - "type": "string", - "description": "Global Trade Item Number (GTIN) of the item. Optional." - }, - "imageLink": { - "type": "string", - "description": "URL of an image of the item.", - "annotations": { - "required": [ - "content.orders.createtestorder" - ] - } - }, - "itemGroupId": { - "type": "string", - "description": "Shared identifier for all variants of the same product. Optional." - }, - "mpn": { - "type": "string", - "description": "Manufacturer Part Number (MPN) of the item. Optional." - }, - "offerId": { - "type": "string", - "description": "An identifier of the item.", - "annotations": { - "required": [ - "content.orders.createtestorder" - ] - } - }, - "price": { - "$ref": "Price", - "description": "The price for the product.", - "annotations": { - "required": [ - "content.orders.createtestorder" - ] - } - }, - "targetCountry": { - "type": "string", - "description": "The CLDR territory code of the target country of the product.", - "annotations": { - "required": [ - "content.orders.createtestorder" - ] - } - }, - "title": { - "type": "string", - "description": "The title of the product.", - "annotations": { - "required": [ - "content.orders.createtestorder" - ] - } - }, - "variantAttributes": { - "type": "array", - "description": "Variant attributes for the item. Optional.", - "items": { - "$ref": "OrderLineItemProductVariantAttribute" - } - } - } - }, - "TestOrderPaymentMethod": { - "id": "TestOrderPaymentMethod", - "type": "object", - "properties": { - "expirationMonth": { - "type": "integer", - "description": "The card expiration month (January = 1, February = 2 etc.).", - "format": "int32" - }, - "expirationYear": { - "type": "integer", - "description": "The card expiration year (4-digit, e.g. 2015).", - "format": "int32" - }, - "lastFourDigits": { - "type": "string", - "description": "The last four digits of the card number." - }, - "predefinedBillingAddress": { - "type": "string", - "description": "The billing address." - }, - "type": { - "type": "string", - "description": "The type of instrument. Note that real orders might have different values than the four values accepted by createTestOrder." - } - } - }, - "Value": { - "id": "Value", - "type": "object", - "description": "The single value of a rate group or the value of a rate group table's cell. Exactly one of noShipping, flatRate, pricePercentage, carrierRateName, subtableName must be set.", - "properties": { - "carrierRateName": { - "type": "string", - "description": "The name of a carrier rate referring to a carrier rate defined in the same rate group. Can only be set if all other fields are not set." - }, - "flatRate": { - "$ref": "Price", - "description": "A flat rate. Can only be set if all other fields are not set." - }, - "noShipping": { - "type": "boolean", - "description": "If true, then the product can't ship. Must be true when set, can only be set if all other fields are not set." - }, - "pricePercentage": { - "type": "string", - "description": "A percentage of the price represented as a number in decimal notation (e.g., \"5.4\"). Can only be set if all other fields are not set." - }, - "subtableName": { - "type": "string", - "description": "The name of a subtable. Can only be set in table cells (i.e., not for single values), and only if all other fields are not set." - } - } - }, - "Weight": { - "id": "Weight", - "type": "object", - "properties": { - "unit": { - "type": "string", - "description": "The weight unit." - }, - "value": { - "type": "string", - "description": "The weight represented as a number." - } - } - } - }, - "resources": { - "accounts": { - "methods": { - "authinfo": { - "id": "content.accounts.authinfo", - "path": "accounts/authinfo", - "httpMethod": "GET", - "description": "Returns information about the authenticated user.", - "response": { - "$ref": "AccountsAuthInfoResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/content" - ] - }, - "claimwebsite": { - "id": "content.accounts.claimwebsite", - "path": "{merchantId}/accounts/{accountId}/claimwebsite", - "httpMethod": "POST", - "description": "Claims the website of a Merchant Center sub-account.", - "parameters": { - "accountId": { - "type": "string", - "description": "The ID of the account whose website is claimed.", - "required": true, - "format": "uint64", - "location": "path" - }, - "merchantId": { - "type": "string", - "description": "The ID of the managing account. If this parameter is not the same as accountId, then this account must be a multi-client account and accountId must be the ID of a sub-account of this account.", - "required": true, - "format": "uint64", - "location": "path" - }, - "overwrite": { - "type": "boolean", - "description": "Only available to selected merchants. When set to True, this flag removes any existing claim on the requested website by another account and replaces it with a claim from this account.", - "location": "query" + "methods": { + "custombatch": { + "description": "Updates price and availability for multiple products or stores in a single request. This operation does not update the expiration date of the products.", + "httpMethod": "POST", + "id": "content.inventory.custombatch", + "parameters": { + "dryRun": { + "description": "Flag to run the request in dry-run mode.", + "location": "query", + "type": "boolean" + } + }, + "path": "inventory/batch", + "request": { + "$ref": "InventoryCustomBatchRequest" + }, + "response": { + "$ref": "InventoryCustomBatchResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/content" + ] + }, + "set": { + "description": "Updates price and availability of a product in your Merchant Center account.", + "httpMethod": "POST", + "id": "content.inventory.set", + "parameterOrder": [ + "merchantId", + "storeCode", + "productId" + ], + "parameters": { + "dryRun": { + "description": "Flag to run the request in dry-run mode.", + "location": "query", + "type": "boolean" + }, + "merchantId": { + "description": "The ID of the account that contains the product. This account cannot be a multi-client account.", + "format": "uint64", + "location": "path", + "required": true, + "type": "string" + }, + "productId": { + "description": "The REST id of the product for which to update price and availability.", + "location": "path", + "required": true, + "type": "string" + }, + "storeCode": { + "description": "The code of the store for which to update price and availability. Use online to update price and availability of an online product.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{merchantId}/inventory/{storeCode}/products/{productId}", + "request": { + "$ref": "InventorySetRequest" + }, + "response": { + "$ref": "InventorySetResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/content" + ] + } } - }, - "parameterOrder": [ - "merchantId", - "accountId" - ], - "response": { - "$ref": "AccountsClaimWebsiteResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/content" - ] }, - "custombatch": { - "id": "content.accounts.custombatch", - "path": "accounts/batch", - "httpMethod": "POST", - "description": "Retrieves, inserts, updates, and deletes multiple Merchant Center (sub-)accounts in a single request.", - "parameters": { - "dryRun": { - "type": "boolean", - "description": "Flag to run the request in dry-run mode.", - "location": "query" + "liasettings": { + "methods": { + "custombatch": { + "description": "Retrieves and/or updates the LIA settings of multiple accounts in a single request.", + "httpMethod": "POST", + "id": "content.liasettings.custombatch", + "parameters": { + "dryRun": { + "description": "Flag to run the request in dry-run mode.", + "location": "query", + "type": "boolean" + } + }, + "path": "liasettings/batch", + "request": { + "$ref": "LiasettingsCustomBatchRequest" + }, + "response": { + "$ref": "LiasettingsCustomBatchResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/content" + ] + }, + "get": { + "description": "Retrieves the LIA settings of the account.", + "httpMethod": "GET", + "id": "content.liasettings.get", + "parameterOrder": [ + "merchantId", + "accountId" + ], + "parameters": { + "accountId": { + "description": "The ID of the account for which to get or update LIA settings.", + "format": "uint64", + "location": "path", + "required": true, + "type": "string" + }, + "merchantId": { + "description": "The ID of the managing account. If this parameter is not the same as accountId, then this account must be a multi-client account and accountId must be the ID of a sub-account of this account.", + "format": "uint64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{merchantId}/liasettings/{accountId}", + "response": { + "$ref": "LiaSettings" + }, + "scopes": [ + "https://www.googleapis.com/auth/content" + ] + }, + "getaccessiblegmbaccounts": { + "description": "Retrieves the list of accessible Google My Business accounts.", + "httpMethod": "GET", + "id": "content.liasettings.getaccessiblegmbaccounts", + "parameterOrder": [ + "merchantId", + "accountId" + ], + "parameters": { + "accountId": { + "description": "The ID of the account for which to retrieve accessible Google My Business accounts.", + "format": "uint64", + "location": "path", + "required": true, + "type": "string" + }, + "merchantId": { + "description": "The ID of the managing account. If this parameter is not the same as accountId, then this account must be a multi-client account and accountId must be the ID of a sub-account of this account.", + "format": "uint64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{merchantId}/liasettings/{accountId}/accessiblegmbaccounts", + "response": { + "$ref": "LiasettingsGetAccessibleGmbAccountsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/content" + ] + }, + "list": { + "description": "Lists the LIA settings of the sub-accounts in your Merchant Center account.", + "httpMethod": "GET", + "id": "content.liasettings.list", + "parameterOrder": [ + "merchantId" + ], + "parameters": { + "maxResults": { + "description": "The maximum number of LIA settings to return in the response, used for paging.", + "format": "uint32", + "location": "query", + "type": "integer" + }, + "merchantId": { + "description": "The ID of the managing account. This must be a multi-client account.", + "format": "uint64", + "location": "path", + "required": true, + "type": "string" + }, + "pageToken": { + "description": "The token returned by the previous request.", + "location": "query", + "type": "string" + } + }, + "path": "{merchantId}/liasettings", + "response": { + "$ref": "LiasettingsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/content" + ] + }, + "patch": { + "description": "Updates the LIA settings of the account. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "content.liasettings.patch", + "parameterOrder": [ + "merchantId", + "accountId" + ], + "parameters": { + "accountId": { + "description": "The ID of the account for which to get or update LIA settings.", + "format": "uint64", + "location": "path", + "required": true, + "type": "string" + }, + "dryRun": { + "description": "Flag to run the request in dry-run mode.", + "location": "query", + "type": "boolean" + }, + "merchantId": { + "description": "The ID of the managing account. If this parameter is not the same as accountId, then this account must be a multi-client account and accountId must be the ID of a sub-account of this account.", + "format": "uint64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{merchantId}/liasettings/{accountId}", + "request": { + "$ref": "LiaSettings" + }, + "response": { + "$ref": "LiaSettings" + }, + "scopes": [ + "https://www.googleapis.com/auth/content" + ] + }, + "requestgmbaccess": { + "description": "Requests access to a specified Google My Business account.", + "httpMethod": "POST", + "id": "content.liasettings.requestgmbaccess", + "parameterOrder": [ + "merchantId", + "accountId" + ], + "parameters": { + "accountId": { + "description": "The ID of the account for which GMB access is requested.", + "format": "uint64", + "location": "path", + "required": true, + "type": "string" + }, + "gmbEmail": { + "description": "The email of the Google My Business account.", + "location": "query", + "type": "string" + }, + "merchantId": { + "description": "The ID of the managing account. If this parameter is not the same as accountId, then this account must be a multi-client account and accountId must be the ID of a sub-account of this account.", + "format": "uint64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{merchantId}/liasettings/{accountId}/requestgmbaccess", + "response": { + "$ref": "LiasettingsRequestGmbAccessResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/content" + ] + }, + "requestinventoryverification": { + "description": "Requests inventory validation for the specified country.", + "httpMethod": "POST", + "id": "content.liasettings.requestinventoryverification", + "parameterOrder": [ + "merchantId", + "accountId", + "country" + ], + "parameters": { + "accountId": { + "description": "The ID of the account that manages the order. This cannot be a multi-client account.", + "format": "uint64", + "location": "path", + "required": true, + "type": "string" + }, + "country": { + "description": "The country for which inventory validation is requested.", + "location": "path", + "required": true, + "type": "string" + }, + "merchantId": { + "description": "The ID of the managing account. If this parameter is not the same as accountId, then this account must be a multi-client account and accountId must be the ID of a sub-account of this account.", + "format": "uint64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{merchantId}/liasettings/{accountId}/requestinventoryverification/{country}", + "response": { + "$ref": "LiasettingsRequestInventoryVerificationResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/content" + ] + }, + "setinventoryverificationcontact": { + "description": "Sets the inventory verification contract for the specified country.", + "httpMethod": "POST", + "id": "content.liasettings.setinventoryverificationcontact", + "parameterOrder": [ + "merchantId", + "accountId" + ], + "parameters": { + "accountId": { + "description": "The ID of the account that manages the order. This cannot be a multi-client account.", + "format": "uint64", + "location": "path", + "required": true, + "type": "string" + }, + "contactEmail": { + "description": "The email of the inventory verification contact.", + "location": "query", + "type": "string" + }, + "contactName": { + "description": "The name of the inventory verification contact.", + "location": "query", + "type": "string" + }, + "country": { + "description": "The country for which inventory verification is requested.", + "location": "query", + "type": "string" + }, + "language": { + "description": "The language for which inventory verification is requested.", + "location": "query", + "type": "string" + }, + "merchantId": { + "description": "The ID of the managing account. If this parameter is not the same as accountId, then this account must be a multi-client account and accountId must be the ID of a sub-account of this account.", + "format": "uint64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{merchantId}/liasettings/{accountId}/setinventoryverificationcontact", + "response": { + "$ref": "LiasettingsSetInventoryVerificationContactResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/content" + ] + }, + "update": { + "description": "Updates the LIA settings of the account.", + "httpMethod": "PUT", + "id": "content.liasettings.update", + "parameterOrder": [ + "merchantId", + "accountId" + ], + "parameters": { + "accountId": { + "description": "The ID of the account for which to get or update LIA settings.", + "format": "uint64", + "location": "path", + "required": true, + "type": "string" + }, + "dryRun": { + "description": "Flag to run the request in dry-run mode.", + "location": "query", + "type": "boolean" + }, + "merchantId": { + "description": "The ID of the managing account. If this parameter is not the same as accountId, then this account must be a multi-client account and accountId must be the ID of a sub-account of this account.", + "format": "uint64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{merchantId}/liasettings/{accountId}", + "request": { + "$ref": "LiaSettings" + }, + "response": { + "$ref": "LiaSettings" + }, + "scopes": [ + "https://www.googleapis.com/auth/content" + ] + } } - }, - "request": { - "$ref": "AccountsCustomBatchRequest" - }, - "response": { - "$ref": "AccountsCustomBatchResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/content" - ] }, - "delete": { - "id": "content.accounts.delete", - "path": "{merchantId}/accounts/{accountId}", - "httpMethod": "DELETE", - "description": "Deletes a Merchant Center sub-account.", - "parameters": { - "accountId": { - "type": "string", - "description": "The ID of the account.", - "required": true, - "format": "uint64", - "location": "path" - }, - "dryRun": { - "type": "boolean", - "description": "Flag to run the request in dry-run mode.", - "location": "query" - }, - "force": { - "type": "boolean", - "description": "Flag to delete sub-accounts with products. The default value is false.", - "default": "false", - "location": "query" - }, - "merchantId": { - "type": "string", - "description": "The ID of the managing account. This must be a multi-client account, and accountId must be the ID of a sub-account of this account.", - "required": true, - "format": "uint64", - "location": "path" + "orders": { + "methods": { + "acknowledge": { + "description": "Marks an order as acknowledged.", + "httpMethod": "POST", + "id": "content.orders.acknowledge", + "parameterOrder": [ + "merchantId", + "orderId" + ], + "parameters": { + "merchantId": { + "description": "The ID of the account that manages the order. This cannot be a multi-client account.", + "format": "uint64", + "location": "path", + "required": true, + "type": "string" + }, + "orderId": { + "description": "The ID of the order.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{merchantId}/orders/{orderId}/acknowledge", + "request": { + "$ref": "OrdersAcknowledgeRequest" + }, + "response": { + "$ref": "OrdersAcknowledgeResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/content" + ] + }, + "advancetestorder": { + "description": "Sandbox only. Moves a test order from state \"inProgress\" to state \"pendingShipment\".", + "httpMethod": "POST", + "id": "content.orders.advancetestorder", + "parameterOrder": [ + "merchantId", + "orderId" + ], + "parameters": { + "merchantId": { + "description": "The ID of the account that manages the order. This cannot be a multi-client account.", + "format": "uint64", + "location": "path", + "required": true, + "type": "string" + }, + "orderId": { + "description": "The ID of the test order to modify.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{merchantId}/testorders/{orderId}/advance", + "response": { + "$ref": "OrdersAdvanceTestOrderResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/content" + ] + }, + "cancel": { + "description": "Cancels all line items in an order, making a full refund.", + "httpMethod": "POST", + "id": "content.orders.cancel", + "parameterOrder": [ + "merchantId", + "orderId" + ], + "parameters": { + "merchantId": { + "description": "The ID of the account that manages the order. This cannot be a multi-client account.", + "format": "uint64", + "location": "path", + "required": true, + "type": "string" + }, + "orderId": { + "description": "The ID of the order to cancel.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{merchantId}/orders/{orderId}/cancel", + "request": { + "$ref": "OrdersCancelRequest" + }, + "response": { + "$ref": "OrdersCancelResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/content" + ] + }, + "cancellineitem": { + "description": "Cancels a line item, making a full refund.", + "httpMethod": "POST", + "id": "content.orders.cancellineitem", + "parameterOrder": [ + "merchantId", + "orderId" + ], + "parameters": { + "merchantId": { + "description": "The ID of the account that manages the order. This cannot be a multi-client account.", + "format": "uint64", + "location": "path", + "required": true, + "type": "string" + }, + "orderId": { + "description": "The ID of the order.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{merchantId}/orders/{orderId}/cancelLineItem", + "request": { + "$ref": "OrdersCancelLineItemRequest" + }, + "response": { + "$ref": "OrdersCancelLineItemResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/content" + ] + }, + "createtestorder": { + "description": "Sandbox only. Creates a test order.", + "httpMethod": "POST", + "id": "content.orders.createtestorder", + "parameterOrder": [ + "merchantId" + ], + "parameters": { + "merchantId": { + "description": "The ID of the account that should manage the order. This cannot be a multi-client account.", + "format": "uint64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{merchantId}/testorders", + "request": { + "$ref": "OrdersCreateTestOrderRequest" + }, + "response": { + "$ref": "OrdersCreateTestOrderResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/content" + ] + }, + "custombatch": { + "description": "Retrieves or modifies multiple orders in a single request.", + "httpMethod": "POST", + "id": "content.orders.custombatch", + "path": "orders/batch", + "request": { + "$ref": "OrdersCustomBatchRequest" + }, + "response": { + "$ref": "OrdersCustomBatchResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/content" + ] + }, + "get": { + "description": "Retrieves an order from your Merchant Center account.", + "httpMethod": "GET", + "id": "content.orders.get", + "parameterOrder": [ + "merchantId", + "orderId" + ], + "parameters": { + "merchantId": { + "description": "The ID of the account that manages the order. This cannot be a multi-client account.", + "format": "uint64", + "location": "path", + "required": true, + "type": "string" + }, + "orderId": { + "description": "The ID of the order.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{merchantId}/orders/{orderId}", + "response": { + "$ref": "Order" + }, + "scopes": [ + "https://www.googleapis.com/auth/content" + ] + }, + "getbymerchantorderid": { + "description": "Retrieves an order using merchant order id.", + "httpMethod": "GET", + "id": "content.orders.getbymerchantorderid", + "parameterOrder": [ + "merchantId", + "merchantOrderId" + ], + "parameters": { + "merchantId": { + "description": "The ID of the account that manages the order. This cannot be a multi-client account.", + "format": "uint64", + "location": "path", + "required": true, + "type": "string" + }, + "merchantOrderId": { + "description": "The merchant order id to be looked for.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{merchantId}/ordersbymerchantid/{merchantOrderId}", + "response": { + "$ref": "OrdersGetByMerchantOrderIdResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/content" + ] + }, + "gettestordertemplate": { + "description": "Sandbox only. Retrieves an order template that can be used to quickly create a new order in sandbox.", + "httpMethod": "GET", + "id": "content.orders.gettestordertemplate", + "parameterOrder": [ + "merchantId", + "templateName" + ], + "parameters": { + "merchantId": { + "description": "The ID of the account that should manage the order. This cannot be a multi-client account.", + "format": "uint64", + "location": "path", + "required": true, + "type": "string" + }, + "templateName": { + "description": "The name of the template to retrieve.", + "enum": [ + "template1", + "template1a", + "template1b", + "template2" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ], + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{merchantId}/testordertemplates/{templateName}", + "response": { + "$ref": "OrdersGetTestOrderTemplateResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/content" + ] + }, + "instorerefundlineitem": { + "description": "Notifies that item return and refund was handled directly in store.", + "httpMethod": "POST", + "id": "content.orders.instorerefundlineitem", + "parameterOrder": [ + "merchantId", + "orderId" + ], + "parameters": { + "merchantId": { + "description": "The ID of the account that manages the order. This cannot be a multi-client account.", + "format": "uint64", + "location": "path", + "required": true, + "type": "string" + }, + "orderId": { + "description": "The ID of the order.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{merchantId}/orders/{orderId}/inStoreRefundLineItem", + "request": { + "$ref": "OrdersInStoreRefundLineItemRequest" + }, + "response": { + "$ref": "OrdersInStoreRefundLineItemResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/content" + ] + }, + "list": { + "description": "Lists the orders in your Merchant Center account.", + "httpMethod": "GET", + "id": "content.orders.list", + "parameterOrder": [ + "merchantId" + ], + "parameters": { + "acknowledged": { + "description": "Obtains orders that match the acknowledgement status. When set to true, obtains orders that have been acknowledged. When false, obtains orders that have not been acknowledged.\nWe recommend using this filter set to false, in conjunction with the acknowledge call, such that only un-acknowledged orders are returned.", + "location": "query", + "type": "boolean" + }, + "maxResults": { + "description": "The maximum number of orders to return in the response, used for paging. The default value is 25 orders per page, and the maximum allowed value is 250 orders per page.\nKnown issue: All List calls will return all Orders without limit regardless of the value of this field.", + "format": "uint32", + "location": "query", + "type": "integer" + }, + "merchantId": { + "description": "The ID of the account that manages the order. This cannot be a multi-client account.", + "format": "uint64", + "location": "path", + "required": true, + "type": "string" + }, + "orderBy": { + "description": "The ordering of the returned list. The only supported value are placedDate desc and placedDate asc for now, which returns orders sorted by placement date. \"placedDate desc\" stands for listing orders by placement date, from oldest to most recent. \"placedDate asc\" stands for listing orders by placement date, from most recent to oldest. In future releases we'll support other sorting criteria.", + "enum": [ + "placedDate asc", + "placedDate desc" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "The token returned by the previous request.", + "location": "query", + "type": "string" + }, + "placedDateEnd": { + "description": "Obtains orders placed before this date (exclusively), in ISO 8601 format.", + "location": "query", + "type": "string" + }, + "placedDateStart": { + "description": "Obtains orders placed after this date (inclusively), in ISO 8601 format.", + "location": "query", + "type": "string" + }, + "statuses": { + "description": "Obtains orders that match any of the specified statuses. Multiple values can be specified with comma separation. Additionally, please note that active is a shortcut for pendingShipment and partiallyShipped, and completed is a shortcut for shipped , partiallyDelivered, delivered, partiallyReturned, returned, and canceled.", + "enum": [ + "active", + "canceled", + "completed", + "delivered", + "inProgress", + "partiallyDelivered", + "partiallyReturned", + "partiallyShipped", + "pendingShipment", + "returned", + "shipped" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "location": "query", + "repeated": true, + "type": "string" + } + }, + "path": "{merchantId}/orders", + "response": { + "$ref": "OrdersListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/content" + ] + }, + "refund": { + "description": "Refund a portion of the order, up to the full amount paid.", + "httpMethod": "POST", + "id": "content.orders.refund", + "parameterOrder": [ + "merchantId", + "orderId" + ], + "parameters": { + "merchantId": { + "description": "The ID of the account that manages the order. This cannot be a multi-client account.", + "format": "uint64", + "location": "path", + "required": true, + "type": "string" + }, + "orderId": { + "description": "The ID of the order to refund.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{merchantId}/orders/{orderId}/refund", + "request": { + "$ref": "OrdersRefundRequest" + }, + "response": { + "$ref": "OrdersRefundResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/content" + ] + }, + "rejectreturnlineitem": { + "description": "Rejects return on an line item.", + "httpMethod": "POST", + "id": "content.orders.rejectreturnlineitem", + "parameterOrder": [ + "merchantId", + "orderId" + ], + "parameters": { + "merchantId": { + "description": "The ID of the account that manages the order. This cannot be a multi-client account.", + "format": "uint64", + "location": "path", + "required": true, + "type": "string" + }, + "orderId": { + "description": "The ID of the order.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{merchantId}/orders/{orderId}/rejectReturnLineItem", + "request": { + "$ref": "OrdersRejectReturnLineItemRequest" + }, + "response": { + "$ref": "OrdersRejectReturnLineItemResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/content" + ] + }, + "returnlineitem": { + "description": "Returns a line item.", + "httpMethod": "POST", + "id": "content.orders.returnlineitem", + "parameterOrder": [ + "merchantId", + "orderId" + ], + "parameters": { + "merchantId": { + "description": "The ID of the account that manages the order. This cannot be a multi-client account.", + "format": "uint64", + "location": "path", + "required": true, + "type": "string" + }, + "orderId": { + "description": "The ID of the order.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{merchantId}/orders/{orderId}/returnLineItem", + "request": { + "$ref": "OrdersReturnLineItemRequest" + }, + "response": { + "$ref": "OrdersReturnLineItemResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/content" + ] + }, + "returnrefundlineitem": { + "description": "Returns and refunds a line item. Note that this method can only be called on fully shipped orders.", + "httpMethod": "POST", + "id": "content.orders.returnrefundlineitem", + "parameterOrder": [ + "merchantId", + "orderId" + ], + "parameters": { + "merchantId": { + "description": "The ID of the account that manages the order. This cannot be a multi-client account.", + "format": "uint64", + "location": "path", + "required": true, + "type": "string" + }, + "orderId": { + "description": "The ID of the order.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{merchantId}/orders/{orderId}/returnRefundLineItem", + "request": { + "$ref": "OrdersReturnRefundLineItemRequest" + }, + "response": { + "$ref": "OrdersReturnRefundLineItemResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/content" + ] + }, + "setlineitemmetadata": { + "description": "Sets (overrides) merchant provided annotations on the line item.", + "httpMethod": "POST", + "id": "content.orders.setlineitemmetadata", + "parameterOrder": [ + "merchantId", + "orderId" + ], + "parameters": { + "merchantId": { + "description": "The ID of the account that manages the order. This cannot be a multi-client account.", + "format": "uint64", + "location": "path", + "required": true, + "type": "string" + }, + "orderId": { + "description": "The ID of the order.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{merchantId}/orders/{orderId}/setLineItemMetadata", + "request": { + "$ref": "OrdersSetLineItemMetadataRequest" + }, + "response": { + "$ref": "OrdersSetLineItemMetadataResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/content" + ] + }, + "shiplineitems": { + "description": "Marks line item(s) as shipped.", + "httpMethod": "POST", + "id": "content.orders.shiplineitems", + "parameterOrder": [ + "merchantId", + "orderId" + ], + "parameters": { + "merchantId": { + "description": "The ID of the account that manages the order. This cannot be a multi-client account.", + "format": "uint64", + "location": "path", + "required": true, + "type": "string" + }, + "orderId": { + "description": "The ID of the order.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{merchantId}/orders/{orderId}/shipLineItems", + "request": { + "$ref": "OrdersShipLineItemsRequest" + }, + "response": { + "$ref": "OrdersShipLineItemsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/content" + ] + }, + "updatelineitemshippingdetails": { + "description": "Updates ship by and delivery by dates for a line item.", + "httpMethod": "POST", + "id": "content.orders.updatelineitemshippingdetails", + "parameterOrder": [ + "merchantId", + "orderId" + ], + "parameters": { + "merchantId": { + "description": "The ID of the account that manages the order. This cannot be a multi-client account.", + "format": "uint64", + "location": "path", + "required": true, + "type": "string" + }, + "orderId": { + "description": "The ID of the order.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{merchantId}/orders/{orderId}/updateLineItemShippingDetails", + "request": { + "$ref": "OrdersUpdateLineItemShippingDetailsRequest" + }, + "response": { + "$ref": "OrdersUpdateLineItemShippingDetailsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/content" + ] + }, + "updatemerchantorderid": { + "description": "Updates the merchant order ID for a given order.", + "httpMethod": "POST", + "id": "content.orders.updatemerchantorderid", + "parameterOrder": [ + "merchantId", + "orderId" + ], + "parameters": { + "merchantId": { + "description": "The ID of the account that manages the order. This cannot be a multi-client account.", + "format": "uint64", + "location": "path", + "required": true, + "type": "string" + }, + "orderId": { + "description": "The ID of the order.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{merchantId}/orders/{orderId}/updateMerchantOrderId", + "request": { + "$ref": "OrdersUpdateMerchantOrderIdRequest" + }, + "response": { + "$ref": "OrdersUpdateMerchantOrderIdResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/content" + ] + }, + "updateshipment": { + "description": "Updates a shipment's status, carrier, and/or tracking ID.", + "httpMethod": "POST", + "id": "content.orders.updateshipment", + "parameterOrder": [ + "merchantId", + "orderId" + ], + "parameters": { + "merchantId": { + "description": "The ID of the account that manages the order. This cannot be a multi-client account.", + "format": "uint64", + "location": "path", + "required": true, + "type": "string" + }, + "orderId": { + "description": "The ID of the order.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{merchantId}/orders/{orderId}/updateShipment", + "request": { + "$ref": "OrdersUpdateShipmentRequest" + }, + "response": { + "$ref": "OrdersUpdateShipmentResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/content" + ] + } } - }, - "parameterOrder": [ - "merchantId", - "accountId" - ], - "scopes": [ - "https://www.googleapis.com/auth/content" - ] }, - "get": { - "id": "content.accounts.get", - "path": "{merchantId}/accounts/{accountId}", - "httpMethod": "GET", - "description": "Retrieves a Merchant Center account.", - "parameters": { - "accountId": { - "type": "string", - "description": "The ID of the account.", - "required": true, - "format": "uint64", - "location": "path" - }, - "merchantId": { - "type": "string", - "description": "The ID of the managing account. If this parameter is not the same as accountId, then this account must be a multi-client account and accountId must be the ID of a sub-account of this account.", - "required": true, - "format": "uint64", - "location": "path" + "pos": { + "methods": { + "custombatch": { + "description": "Batches multiple POS-related calls in a single request.", + "httpMethod": "POST", + "id": "content.pos.custombatch", + "parameters": { + "dryRun": { + "description": "Flag to run the request in dry-run mode.", + "location": "query", + "type": "boolean" + } + }, + "path": "pos/batch", + "request": { + "$ref": "PosCustomBatchRequest" + }, + "response": { + "$ref": "PosCustomBatchResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/content" + ] + }, + "delete": { + "description": "Deletes a store for the given merchant.", + "httpMethod": "DELETE", + "id": "content.pos.delete", + "parameterOrder": [ + "merchantId", + "targetMerchantId", + "storeCode" + ], + "parameters": { + "dryRun": { + "description": "Flag to run the request in dry-run mode.", + "location": "query", + "type": "boolean" + }, + "merchantId": { + "description": "The ID of the POS or inventory data provider.", + "format": "uint64", + "location": "path", + "required": true, + "type": "string" + }, + "storeCode": { + "description": "A store code that is unique per merchant.", + "location": "path", + "required": true, + "type": "string" + }, + "targetMerchantId": { + "description": "The ID of the target merchant.", + "format": "uint64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{merchantId}/pos/{targetMerchantId}/store/{storeCode}", + "scopes": [ + "https://www.googleapis.com/auth/content" + ] + }, + "get": { + "description": "Retrieves information about the given store.", + "httpMethod": "GET", + "id": "content.pos.get", + "parameterOrder": [ + "merchantId", + "targetMerchantId", + "storeCode" + ], + "parameters": { + "merchantId": { + "description": "The ID of the POS or inventory data provider.", + "format": "uint64", + "location": "path", + "required": true, + "type": "string" + }, + "storeCode": { + "description": "A store code that is unique per merchant.", + "location": "path", + "required": true, + "type": "string" + }, + "targetMerchantId": { + "description": "The ID of the target merchant.", + "format": "uint64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{merchantId}/pos/{targetMerchantId}/store/{storeCode}", + "response": { + "$ref": "PosStore" + }, + "scopes": [ + "https://www.googleapis.com/auth/content" + ] + }, + "insert": { + "description": "Creates a store for the given merchant.", + "httpMethod": "POST", + "id": "content.pos.insert", + "parameterOrder": [ + "merchantId", + "targetMerchantId" + ], + "parameters": { + "dryRun": { + "description": "Flag to run the request in dry-run mode.", + "location": "query", + "type": "boolean" + }, + "merchantId": { + "description": "The ID of the POS or inventory data provider.", + "format": "uint64", + "location": "path", + "required": true, + "type": "string" + }, + "targetMerchantId": { + "description": "The ID of the target merchant.", + "format": "uint64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{merchantId}/pos/{targetMerchantId}/store", + "request": { + "$ref": "PosStore" + }, + "response": { + "$ref": "PosStore" + }, + "scopes": [ + "https://www.googleapis.com/auth/content" + ] + }, + "inventory": { + "description": "Submit inventory for the given merchant.", + "httpMethod": "POST", + "id": "content.pos.inventory", + "parameterOrder": [ + "merchantId", + "targetMerchantId" + ], + "parameters": { + "dryRun": { + "description": "Flag to run the request in dry-run mode.", + "location": "query", + "type": "boolean" + }, + "merchantId": { + "description": "The ID of the POS or inventory data provider.", + "format": "uint64", + "location": "path", + "required": true, + "type": "string" + }, + "targetMerchantId": { + "description": "The ID of the target merchant.", + "format": "uint64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{merchantId}/pos/{targetMerchantId}/inventory", + "request": { + "$ref": "PosInventoryRequest" + }, + "response": { + "$ref": "PosInventoryResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/content" + ] + }, + "list": { + "description": "Lists the stores of the target merchant.", + "httpMethod": "GET", + "id": "content.pos.list", + "parameterOrder": [ + "merchantId", + "targetMerchantId" + ], + "parameters": { + "merchantId": { + "description": "The ID of the POS or inventory data provider.", + "format": "uint64", + "location": "path", + "required": true, + "type": "string" + }, + "targetMerchantId": { + "description": "The ID of the target merchant.", + "format": "uint64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{merchantId}/pos/{targetMerchantId}/store", + "response": { + "$ref": "PosListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/content" + ] + }, + "sale": { + "description": "Submit a sale event for the given merchant.", + "httpMethod": "POST", + "id": "content.pos.sale", + "parameterOrder": [ + "merchantId", + "targetMerchantId" + ], + "parameters": { + "dryRun": { + "description": "Flag to run the request in dry-run mode.", + "location": "query", + "type": "boolean" + }, + "merchantId": { + "description": "The ID of the POS or inventory data provider.", + "format": "uint64", + "location": "path", + "required": true, + "type": "string" + }, + "targetMerchantId": { + "description": "The ID of the target merchant.", + "format": "uint64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{merchantId}/pos/{targetMerchantId}/sale", + "request": { + "$ref": "PosSaleRequest" + }, + "response": { + "$ref": "PosSaleResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/content" + ] + } } - }, - "parameterOrder": [ - "merchantId", - "accountId" - ], - "response": { - "$ref": "Account" - }, - "scopes": [ - "https://www.googleapis.com/auth/content" - ] }, - "insert": { - "id": "content.accounts.insert", - "path": "{merchantId}/accounts", - "httpMethod": "POST", - "description": "Creates a Merchant Center sub-account.", - "parameters": { - "dryRun": { - "type": "boolean", - "description": "Flag to run the request in dry-run mode.", - "location": "query" - }, - "merchantId": { - "type": "string", - "description": "The ID of the managing account. This must be a multi-client account.", - "required": true, - "format": "uint64", - "location": "path" + "products": { + "methods": { + "custombatch": { + "description": "Retrieves, inserts, and deletes multiple products in a single request.", + "httpMethod": "POST", + "id": "content.products.custombatch", + "parameters": { + "dryRun": { + "description": "Flag to run the request in dry-run mode.", + "location": "query", + "type": "boolean" + } + }, + "path": "products/batch", + "request": { + "$ref": "ProductsCustomBatchRequest" + }, + "response": { + "$ref": "ProductsCustomBatchResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/content" + ] + }, + "delete": { + "description": "Deletes a product from your Merchant Center account.", + "httpMethod": "DELETE", + "id": "content.products.delete", + "parameterOrder": [ + "merchantId", + "productId" + ], + "parameters": { + "dryRun": { + "description": "Flag to run the request in dry-run mode.", + "location": "query", + "type": "boolean" + }, + "merchantId": { + "description": "The ID of the account that contains the product. This account cannot be a multi-client account.", + "format": "uint64", + "location": "path", + "required": true, + "type": "string" + }, + "productId": { + "description": "The REST id of the product.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{merchantId}/products/{productId}", + "scopes": [ + "https://www.googleapis.com/auth/content" + ] + }, + "get": { + "description": "Retrieves a product from your Merchant Center account.", + "httpMethod": "GET", + "id": "content.products.get", + "parameterOrder": [ + "merchantId", + "productId" + ], + "parameters": { + "merchantId": { + "description": "The ID of the account that contains the product. This account cannot be a multi-client account.", + "format": "uint64", + "location": "path", + "required": true, + "type": "string" + }, + "productId": { + "description": "The REST id of the product.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{merchantId}/products/{productId}", + "response": { + "$ref": "Product" + }, + "scopes": [ + "https://www.googleapis.com/auth/content" + ] + }, + "insert": { + "description": "Uploads a product to your Merchant Center account. If an item with the same channel, contentLanguage, offerId, and targetCountry already exists, this method updates that entry.", + "httpMethod": "POST", + "id": "content.products.insert", + "parameterOrder": [ + "merchantId" + ], + "parameters": { + "dryRun": { + "description": "Flag to run the request in dry-run mode.", + "location": "query", + "type": "boolean" + }, + "merchantId": { + "description": "The ID of the account that contains the product. This account cannot be a multi-client account.", + "format": "uint64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{merchantId}/products", + "request": { + "$ref": "Product" + }, + "response": { + "$ref": "Product" + }, + "scopes": [ + "https://www.googleapis.com/auth/content" + ] + }, + "list": { + "description": "Lists the products in your Merchant Center account.", + "httpMethod": "GET", + "id": "content.products.list", + "parameterOrder": [ + "merchantId" + ], + "parameters": { + "includeInvalidInsertedItems": { + "description": "Flag to include the invalid inserted items in the result of the list request. By default the invalid items are not shown (the default value is false).", + "location": "query", + "type": "boolean" + }, + "maxResults": { + "description": "The maximum number of products to return in the response, used for paging.", + "format": "uint32", + "location": "query", + "type": "integer" + }, + "merchantId": { + "description": "The ID of the account that contains the products. This account cannot be a multi-client account.", + "format": "uint64", + "location": "path", + "required": true, + "type": "string" + }, + "pageToken": { + "description": "The token returned by the previous request.", + "location": "query", + "type": "string" + } + }, + "path": "{merchantId}/products", + "response": { + "$ref": "ProductsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/content" + ] + } } - }, - "parameterOrder": [ - "merchantId" - ], - "request": { - "$ref": "Account" - }, - "response": { - "$ref": "Account" - }, - "scopes": [ - "https://www.googleapis.com/auth/content" - ] }, - "list": { - "id": "content.accounts.list", - "path": "{merchantId}/accounts", - "httpMethod": "GET", - "description": "Lists the sub-accounts in your Merchant Center account.", - "parameters": { - "maxResults": { - "type": "integer", - "description": "The maximum number of accounts to return in the response, used for paging.", - "format": "uint32", - "location": "query" - }, - "merchantId": { - "type": "string", - "description": "The ID of the managing account. This must be a multi-client account.", - "required": true, - "format": "uint64", - "location": "path" - }, - "pageToken": { - "type": "string", - "description": "The token returned by the previous request.", - "location": "query" + "productstatuses": { + "methods": { + "custombatch": { + "description": "Gets the statuses of multiple products in a single request.", + "httpMethod": "POST", + "id": "content.productstatuses.custombatch", + "parameters": { + "includeAttributes": { + "description": "Flag to include full product data in the results of this request. The default value is false.", + "location": "query", + "type": "boolean" + } + }, + "path": "productstatuses/batch", + "request": { + "$ref": "ProductstatusesCustomBatchRequest" + }, + "response": { + "$ref": "ProductstatusesCustomBatchResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/content" + ] + }, + "get": { + "description": "Gets the status of a product from your Merchant Center account.", + "httpMethod": "GET", + "id": "content.productstatuses.get", + "parameterOrder": [ + "merchantId", + "productId" + ], + "parameters": { + "includeAttributes": { + "description": "Flag to include full product data in the result of this get request. The default value is false.", + "location": "query", + "type": "boolean" + }, + "merchantId": { + "description": "The ID of the account that contains the product. This account cannot be a multi-client account.", + "format": "uint64", + "location": "path", + "required": true, + "type": "string" + }, + "productId": { + "description": "The REST id of the product.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{merchantId}/productstatuses/{productId}", + "response": { + "$ref": "ProductStatus" + }, + "scopes": [ + "https://www.googleapis.com/auth/content" + ] + }, + "list": { + "description": "Lists the statuses of the products in your Merchant Center account.", + "httpMethod": "GET", + "id": "content.productstatuses.list", + "parameterOrder": [ + "merchantId" + ], + "parameters": { + "includeAttributes": { + "description": "Flag to include full product data in the results of the list request. The default value is false.", + "location": "query", + "type": "boolean" + }, + "includeInvalidInsertedItems": { + "description": "Flag to include the invalid inserted items in the result of the list request. By default the invalid items are not shown (the default value is false).", + "location": "query", + "type": "boolean" + }, + "maxResults": { + "description": "The maximum number of product statuses to return in the response, used for paging.", + "format": "uint32", + "location": "query", + "type": "integer" + }, + "merchantId": { + "description": "The ID of the account that contains the products. This account cannot be a multi-client account.", + "format": "uint64", + "location": "path", + "required": true, + "type": "string" + }, + "pageToken": { + "description": "The token returned by the previous request.", + "location": "query", + "type": "string" + } + }, + "path": "{merchantId}/productstatuses", + "response": { + "$ref": "ProductstatusesListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/content" + ] + } } - }, - "parameterOrder": [ - "merchantId" - ], - "response": { - "$ref": "AccountsListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/content" - ] }, - "patch": { - "id": "content.accounts.patch", - "path": "{merchantId}/accounts/{accountId}", - "httpMethod": "PATCH", - "description": "Updates a Merchant Center account. This method supports patch semantics.", - "parameters": { - "accountId": { - "type": "string", - "description": "The ID of the account.", - "required": true, - "format": "uint64", - "location": "path" - }, - "dryRun": { - "type": "boolean", - "description": "Flag to run the request in dry-run mode.", - "location": "query" - }, - "merchantId": { - "type": "string", - "description": "The ID of the managing account. If this parameter is not the same as accountId, then this account must be a multi-client account and accountId must be the ID of a sub-account of this account.", - "required": true, - "format": "uint64", - "location": "path" + "shippingsettings": { + "methods": { + "custombatch": { + "description": "Retrieves and updates the shipping settings of multiple accounts in a single request.", + "httpMethod": "POST", + "id": "content.shippingsettings.custombatch", + "parameters": { + "dryRun": { + "description": "Flag to run the request in dry-run mode.", + "location": "query", + "type": "boolean" + } + }, + "path": "shippingsettings/batch", + "request": { + "$ref": "ShippingsettingsCustomBatchRequest" + }, + "response": { + "$ref": "ShippingsettingsCustomBatchResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/content" + ] + }, + "get": { + "description": "Retrieves the shipping settings of the account.", + "httpMethod": "GET", + "id": "content.shippingsettings.get", + "parameterOrder": [ + "merchantId", + "accountId" + ], + "parameters": { + "accountId": { + "description": "The ID of the account for which to get/update shipping settings.", + "format": "uint64", + "location": "path", + "required": true, + "type": "string" + }, + "merchantId": { + "description": "The ID of the managing account. If this parameter is not the same as accountId, then this account must be a multi-client account and accountId must be the ID of a sub-account of this account.", + "format": "uint64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{merchantId}/shippingsettings/{accountId}", + "response": { + "$ref": "ShippingSettings" + }, + "scopes": [ + "https://www.googleapis.com/auth/content" + ] + }, + "getsupportedcarriers": { + "description": "Retrieves supported carriers and carrier services for an account.", + "httpMethod": "GET", + "id": "content.shippingsettings.getsupportedcarriers", + "parameterOrder": [ + "merchantId" + ], + "parameters": { + "merchantId": { + "description": "The ID of the account for which to retrieve the supported carriers.", + "format": "uint64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{merchantId}/supportedCarriers", + "response": { + "$ref": "ShippingsettingsGetSupportedCarriersResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/content" + ] + }, + "getsupportedholidays": { + "description": "Retrieves supported holidays for an account.", + "httpMethod": "GET", + "id": "content.shippingsettings.getsupportedholidays", + "parameterOrder": [ + "merchantId" + ], + "parameters": { + "merchantId": { + "description": "The ID of the account for which to retrieve the supported holidays.", + "format": "uint64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{merchantId}/supportedHolidays", + "response": { + "$ref": "ShippingsettingsGetSupportedHolidaysResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/content" + ] + }, + "list": { + "description": "Lists the shipping settings of the sub-accounts in your Merchant Center account.", + "httpMethod": "GET", + "id": "content.shippingsettings.list", + "parameterOrder": [ + "merchantId" + ], + "parameters": { + "maxResults": { + "description": "The maximum number of shipping settings to return in the response, used for paging.", + "format": "uint32", + "location": "query", + "type": "integer" + }, + "merchantId": { + "description": "The ID of the managing account. This must be a multi-client account.", + "format": "uint64", + "location": "path", + "required": true, + "type": "string" + }, + "pageToken": { + "description": "The token returned by the previous request.", + "location": "query", + "type": "string" + } + }, + "path": "{merchantId}/shippingsettings", + "response": { + "$ref": "ShippingsettingsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/content" + ] + }, + "patch": { + "description": "Updates the shipping settings of the account. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "content.shippingsettings.patch", + "parameterOrder": [ + "merchantId", + "accountId" + ], + "parameters": { + "accountId": { + "description": "The ID of the account for which to get/update shipping settings.", + "format": "uint64", + "location": "path", + "required": true, + "type": "string" + }, + "dryRun": { + "description": "Flag to run the request in dry-run mode.", + "location": "query", + "type": "boolean" + }, + "merchantId": { + "description": "The ID of the managing account. If this parameter is not the same as accountId, then this account must be a multi-client account and accountId must be the ID of a sub-account of this account.", + "format": "uint64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{merchantId}/shippingsettings/{accountId}", + "request": { + "$ref": "ShippingSettings" + }, + "response": { + "$ref": "ShippingSettings" + }, + "scopes": [ + "https://www.googleapis.com/auth/content" + ] + }, + "update": { + "description": "Updates the shipping settings of the account.", + "httpMethod": "PUT", + "id": "content.shippingsettings.update", + "parameterOrder": [ + "merchantId", + "accountId" + ], + "parameters": { + "accountId": { + "description": "The ID of the account for which to get/update shipping settings.", + "format": "uint64", + "location": "path", + "required": true, + "type": "string" + }, + "dryRun": { + "description": "Flag to run the request in dry-run mode.", + "location": "query", + "type": "boolean" + }, + "merchantId": { + "description": "The ID of the managing account. If this parameter is not the same as accountId, then this account must be a multi-client account and accountId must be the ID of a sub-account of this account.", + "format": "uint64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{merchantId}/shippingsettings/{accountId}", + "request": { + "$ref": "ShippingSettings" + }, + "response": { + "$ref": "ShippingSettings" + }, + "scopes": [ + "https://www.googleapis.com/auth/content" + ] + } } - }, - "parameterOrder": [ - "merchantId", - "accountId" - ], - "request": { - "$ref": "Account" - }, - "response": { - "$ref": "Account" - }, - "scopes": [ - "https://www.googleapis.com/auth/content" - ] - }, - "update": { - "id": "content.accounts.update", - "path": "{merchantId}/accounts/{accountId}", - "httpMethod": "PUT", - "description": "Updates a Merchant Center account.", - "parameters": { - "accountId": { - "type": "string", - "description": "The ID of the account.", - "required": true, - "format": "uint64", - "location": "path" - }, - "dryRun": { - "type": "boolean", - "description": "Flag to run the request in dry-run mode.", - "location": "query" - }, - "merchantId": { - "type": "string", - "description": "The ID of the managing account. If this parameter is not the same as accountId, then this account must be a multi-client account and accountId must be the ID of a sub-account of this account.", - "required": true, - "format": "uint64", - "location": "path" - } - }, - "parameterOrder": [ - "merchantId", - "accountId" - ], - "request": { - "$ref": "Account" - }, - "response": { - "$ref": "Account" - }, - "scopes": [ - "https://www.googleapis.com/auth/content" - ] } - } }, - "accountstatuses": { - "methods": { - "custombatch": { - "id": "content.accountstatuses.custombatch", - "path": "accountstatuses/batch", - "httpMethod": "POST", - "request": { - "$ref": "AccountstatusesCustomBatchRequest" - }, - "response": { - "$ref": "AccountstatusesCustomBatchResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/content" - ] + "revision": "20180316", + "rootUrl": "https://www.googleapis.com/", + "schemas": { + "Account": { + "description": "Account data.", + "id": "Account", + "properties": { + "adultContent": { + "description": "Indicates whether the merchant sells adult content.", + "type": "boolean" + }, + "adwordsLinks": { + "description": "List of linked AdWords accounts that are active or pending approval. To create a new link request, add a new link with status active to the list. It will remain in a pending state until approved or rejected either in the AdWords interface or through the AdWords API. To delete an active link, or to cancel a link request, remove it from the list.", + "items": { + "$ref": "AccountAdwordsLink" + }, + "type": "array" + }, + "googleMyBusinessLink": { + "$ref": "AccountGoogleMyBusinessLink", + "description": "The GMB account which is linked or in the process of being linked with the Merchant Center accounnt." + }, + "id": { + "annotations": { + "required": [ + "content.accounts.update" + ] + }, + "description": "Merchant Center account ID.", + "format": "uint64", + "type": "string" + }, + "kind": { + "default": "content#account", + "description": "Identifies what kind of resource this is. Value: the fixed string \"content#account\".", + "type": "string" + }, + "name": { + "annotations": { + "required": [ + "content.accounts.insert", + "content.accounts.update" + ] + }, + "description": "Display name for the account.", + "type": "string" + }, + "reviewsUrl": { + "description": "[DEPRECATED] This field is never returned and will be ignored if provided.", + "type": "string" + }, + "sellerId": { + "description": "Client-specific, locally-unique, internal ID for the child account.", + "type": "string" + }, + "users": { + "description": "Users with access to the account. Every account (except for subaccounts) must have at least one admin user.", + "items": { + "$ref": "AccountUser" + }, + "type": "array" + }, + "websiteUrl": { + "description": "The merchant's website.", + "type": "string" + }, + "youtubeChannelLinks": { + "description": "List of linked YouTube channels that are active or pending approval. To create a new link request, add a new link with status active to the list. It will remain in a pending state until approved or rejected in the YT Creator Studio interface. To delete an active link, or to cancel a link request, remove it from the list.", + "items": { + "$ref": "AccountYouTubeChannelLink" + }, + "type": "array" + } + }, + "type": "object" }, - "get": { - "id": "content.accountstatuses.get", - "path": "{merchantId}/accountstatuses/{accountId}", - "httpMethod": "GET", - "description": "Retrieves the status of a Merchant Center account.", - "parameters": { - "accountId": { - "type": "string", - "description": "The ID of the account.", - "required": true, - "format": "uint64", - "location": "path" + "AccountAdwordsLink": { + "id": "AccountAdwordsLink", + "properties": { + "adwordsId": { + "description": "Customer ID of the AdWords account.", + "format": "uint64", + "type": "string" + }, + "status": { + "description": "Status of the link between this Merchant Center account and the AdWords account. Upon retrieval, it represents the actual status of the link and can be either active if it was approved in Google AdWords or pending if it's pending approval. Upon insertion, it represents the intended status of the link. Re-uploading a link with status active when it's still pending or with status pending when it's already active will have no effect: the status will remain unchanged. Re-uploading a link with deprecated status inactive is equivalent to not submitting the link at all and will delete the link if it was active or cancel the link request if it was pending.", + "type": "string" + } }, - "merchantId": { - "type": "string", - "description": "The ID of the managing account. If this parameter is not the same as accountId, then this account must be a multi-client account and accountId must be the ID of a sub-account of this account.", - "required": true, - "format": "uint64", - "location": "path" - } - }, - "parameterOrder": [ - "merchantId", - "accountId" - ], - "response": { - "$ref": "AccountStatus" - }, - "scopes": [ - "https://www.googleapis.com/auth/content" - ] + "type": "object" }, - "list": { - "id": "content.accountstatuses.list", - "path": "{merchantId}/accountstatuses", - "httpMethod": "GET", - "description": "Lists the statuses of the sub-accounts in your Merchant Center account.", - "parameters": { - "maxResults": { - "type": "integer", - "description": "The maximum number of account statuses to return in the response, used for paging.", - "format": "uint32", - "location": "query" + "AccountGoogleMyBusinessLink": { + "id": "AccountGoogleMyBusinessLink", + "properties": { + "gmbEmail": { + "description": "The GMB email address of which a specific account within a GMB account. A sample account within a GMB account could be a business account with set of locations, managed under the GMB account.", + "type": "string" + }, + "status": { + "description": "Status of the link between this Merchant Center account and the GMB account.", + "type": "string" + } }, - "merchantId": { - "type": "string", - "description": "The ID of the managing account. This must be a multi-client account.", - "required": true, - "format": "uint64", - "location": "path" + "type": "object" + }, + "AccountIdentifier": { + "id": "AccountIdentifier", + "properties": { + "aggregatorId": { + "description": "The aggregator ID, set for aggregators and subaccounts (in that case, it represents the aggregator of the subaccount).", + "format": "uint64", + "type": "string" + }, + "merchantId": { + "description": "The merchant account ID, set for individual accounts and subaccounts.", + "format": "uint64", + "type": "string" + } }, - "pageToken": { - "type": "string", - "description": "The token returned by the previous request.", - "location": "query" - } - }, - "parameterOrder": [ - "merchantId" - ], - "response": { - "$ref": "AccountstatusesListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/content" - ] + "type": "object" + }, + "AccountStatus": { + "description": "The status of an account, i.e., information about its products, which is computed offline and not returned immediately at insertion time.", + "id": "AccountStatus", + "properties": { + "accountId": { + "description": "The ID of the account for which the status is reported.", + "type": "string" + }, + "accountLevelIssues": { + "description": "A list of account level issues.", + "items": { + "$ref": "AccountStatusAccountLevelIssue" + }, + "type": "array" + }, + "dataQualityIssues": { + "description": "A list of data quality issues.", + "items": { + "$ref": "AccountStatusDataQualityIssue" + }, + "type": "array" + }, + "kind": { + "default": "content#accountStatus", + "description": "Identifies what kind of resource this is. Value: the fixed string \"content#accountStatus\".", + "type": "string" + }, + "websiteClaimed": { + "description": "Whether the account's website is claimed or not.", + "type": "boolean" + } + }, + "type": "object" + }, + "AccountStatusAccountLevelIssue": { + "id": "AccountStatusAccountLevelIssue", + "properties": { + "country": { + "description": "Country for which this issue is reported.", + "type": "string" + }, + "detail": { + "description": "Additional details about the issue.", + "type": "string" + }, + "id": { + "description": "Issue identifier.", + "type": "string" + }, + "severity": { + "description": "Severity of the issue.", + "type": "string" + }, + "title": { + "description": "Short description of the issue.", + "type": "string" + } + }, + "type": "object" + }, + "AccountStatusDataQualityIssue": { + "id": "AccountStatusDataQualityIssue", + "properties": { + "country": { + "description": "Country for which this issue is reported.", + "type": "string" + }, + "detail": { + "description": "A more detailed description of the issue.", + "type": "string" + }, + "displayedValue": { + "description": "Actual value displayed on the landing page.", + "type": "string" + }, + "exampleItems": { + "description": "Example items featuring the issue.", + "items": { + "$ref": "AccountStatusExampleItem" + }, + "type": "array" + }, + "id": { + "description": "Issue identifier.", + "type": "string" + }, + "lastChecked": { + "description": "Last time the account was checked for this issue.", + "type": "string" + }, + "location": { + "description": "The attribute name that is relevant for the issue.", + "type": "string" + }, + "numItems": { + "description": "Number of items in the account found to have the said issue.", + "format": "uint32", + "type": "integer" + }, + "severity": { + "description": "Severity of the problem.", + "type": "string" + }, + "submittedValue": { + "description": "Submitted value that causes the issue.", + "type": "string" + } + }, + "type": "object" + }, + "AccountStatusExampleItem": { + "description": "An example of an item that has poor data quality. An item value on the landing page differs from what is submitted, or conflicts with a policy.", + "id": "AccountStatusExampleItem", + "properties": { + "itemId": { + "description": "Unique item ID as specified in the uploaded product data.", + "type": "string" + }, + "link": { + "description": "Landing page of the item.", + "type": "string" + }, + "submittedValue": { + "description": "The item value that was submitted.", + "type": "string" + }, + "title": { + "description": "Title of the item.", + "type": "string" + }, + "valueOnLandingPage": { + "description": "The actual value on the landing page.", + "type": "string" + } + }, + "type": "object" + }, + "AccountTax": { + "description": "The tax settings of a merchant account.", + "id": "AccountTax", + "properties": { + "accountId": { + "annotations": { + "required": [ + "content.accounttax.update" + ] + }, + "description": "The ID of the account to which these account tax settings belong.", + "format": "uint64", + "type": "string" + }, + "kind": { + "default": "content#accountTax", + "description": "Identifies what kind of resource this is. Value: the fixed string \"content#accountTax\".", + "type": "string" + }, + "rules": { + "description": "Tax rules. Updating the tax rules will enable US taxes (not reversible). Defining no rules is equivalent to not charging tax at all.", + "items": { + "$ref": "AccountTaxTaxRule" + }, + "type": "array" + } + }, + "type": "object" + }, + "AccountTaxTaxRule": { + "description": "Tax calculation rule to apply in a state or province (USA only).", + "id": "AccountTaxTaxRule", + "properties": { + "country": { + "description": "Country code in which tax is applicable.", + "type": "string" + }, + "locationId": { + "annotations": { + "required": [ + "content.accounttax.update" + ] + }, + "description": "State (or province) is which the tax is applicable, described by its location id (also called criteria id).", + "format": "uint64", + "type": "string" + }, + "ratePercent": { + "description": "Explicit tax rate in percent, represented as a floating point number without the percentage character. Must not be negative.", + "type": "string" + }, + "shippingTaxed": { + "description": "If true, shipping charges are also taxed.", + "type": "boolean" + }, + "useGlobalRate": { + "description": "Whether the tax rate is taken from a global tax table or specified explicitly.", + "type": "boolean" + } + }, + "type": "object" + }, + "AccountUser": { + "id": "AccountUser", + "properties": { + "admin": { + "description": "Whether user is an admin.", + "type": "boolean" + }, + "emailAddress": { + "description": "User's email address.", + "type": "string" + } + }, + "type": "object" + }, + "AccountYouTubeChannelLink": { + "id": "AccountYouTubeChannelLink", + "properties": { + "channelId": { + "description": "Channel ID.", + "type": "string" + }, + "status": { + "description": "Status of the link between this Merchant Center account and the YouTube channel. Upon retrieval, it represents the actual status of the link and can be either active if it was approved in YT Creator Studio or pending if it's pending approval. Upon insertion, it represents the intended status of the link. Re-uploading a link with status active when it's still pending or with status pending when it's already active will have no effect: the status will remain unchanged. Re-uploading a link with deprecated status inactive is equivalent to not submitting the link at all and will delete the link if it was active or cancel the link request if it was pending.", + "type": "string" + } + }, + "type": "object" + }, + "AccountsAuthInfoResponse": { + "id": "AccountsAuthInfoResponse", + "properties": { + "accountIdentifiers": { + "description": "The account identifiers corresponding to the authenticated user.\n- For an individual account: only the merchant ID is defined\n- For an aggregator: only the aggregator ID is defined\n- For a subaccount of an MCA: both the merchant ID and the aggregator ID are defined.", + "items": { + "$ref": "AccountIdentifier" + }, + "type": "array" + }, + "kind": { + "default": "content#accountsAuthInfoResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"content#accountsAuthInfoResponse\".", + "type": "string" + } + }, + "type": "object" + }, + "AccountsClaimWebsiteResponse": { + "id": "AccountsClaimWebsiteResponse", + "properties": { + "kind": { + "default": "content#accountsClaimWebsiteResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"content#accountsClaimWebsiteResponse\".", + "type": "string" + } + }, + "type": "object" + }, + "AccountsCustomBatchRequest": { + "id": "AccountsCustomBatchRequest", + "properties": { + "entries": { + "description": "The request entries to be processed in the batch.", + "items": { + "$ref": "AccountsCustomBatchRequestEntry" + }, + "type": "array" + } + }, + "type": "object" + }, + "AccountsCustomBatchRequestEntry": { + "description": "A batch entry encoding a single non-batch accounts request.", + "id": "AccountsCustomBatchRequestEntry", + "properties": { + "account": { + "$ref": "Account", + "description": "The account to create or update. Only defined if the method is insert or update." + }, + "accountId": { + "description": "The ID of the targeted account. Only defined if the method is get, delete or claimwebsite.", + "format": "uint64", + "type": "string" + }, + "batchId": { + "description": "An entry ID, unique within the batch request.", + "format": "uint32", + "type": "integer" + }, + "force": { + "description": "Whether the account should be deleted if the account has offers. Only applicable if the method is delete.", + "type": "boolean" + }, + "merchantId": { + "description": "The ID of the managing account.", + "format": "uint64", + "type": "string" + }, + "method": { + "type": "string" + }, + "overwrite": { + "description": "Only applicable if the method is claimwebsite. Indicates whether or not to take the claim from another account in case there is a conflict.", + "type": "boolean" + } + }, + "type": "object" + }, + "AccountsCustomBatchResponse": { + "id": "AccountsCustomBatchResponse", + "properties": { + "entries": { + "description": "The result of the execution of the batch requests.", + "items": { + "$ref": "AccountsCustomBatchResponseEntry" + }, + "type": "array" + }, + "kind": { + "default": "content#accountsCustomBatchResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"content#accountsCustomBatchResponse\".", + "type": "string" + } + }, + "type": "object" + }, + "AccountsCustomBatchResponseEntry": { + "description": "A batch entry encoding a single non-batch accounts response.", + "id": "AccountsCustomBatchResponseEntry", + "properties": { + "account": { + "$ref": "Account", + "description": "The retrieved, created, or updated account. Not defined if the method was delete or claimwebsite." + }, + "batchId": { + "description": "The ID of the request entry this entry responds to.", + "format": "uint32", + "type": "integer" + }, + "errors": { + "$ref": "Errors", + "description": "A list of errors defined if and only if the request failed." + }, + "kind": { + "default": "content#accountsCustomBatchResponseEntry", + "description": "Identifies what kind of resource this is. Value: the fixed string \"content#accountsCustomBatchResponseEntry\".", + "type": "string" + } + }, + "type": "object" + }, + "AccountsListResponse": { + "id": "AccountsListResponse", + "properties": { + "kind": { + "default": "content#accountsListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"content#accountsListResponse\".", + "type": "string" + }, + "nextPageToken": { + "description": "The token for the retrieval of the next page of accounts.", + "type": "string" + }, + "resources": { + "items": { + "$ref": "Account" + }, + "type": "array" + } + }, + "type": "object" + }, + "AccountstatusesCustomBatchRequest": { + "id": "AccountstatusesCustomBatchRequest", + "properties": { + "entries": { + "description": "The request entries to be processed in the batch.", + "items": { + "$ref": "AccountstatusesCustomBatchRequestEntry" + }, + "type": "array" + } + }, + "type": "object" + }, + "AccountstatusesCustomBatchRequestEntry": { + "description": "A batch entry encoding a single non-batch accountstatuses request.", + "id": "AccountstatusesCustomBatchRequestEntry", + "properties": { + "accountId": { + "description": "The ID of the (sub-)account whose status to get.", + "format": "uint64", + "type": "string" + }, + "batchId": { + "description": "An entry ID, unique within the batch request.", + "format": "uint32", + "type": "integer" + }, + "merchantId": { + "description": "The ID of the managing account.", + "format": "uint64", + "type": "string" + }, + "method": { + "description": "The method (get).", + "type": "string" + } + }, + "type": "object" + }, + "AccountstatusesCustomBatchResponse": { + "id": "AccountstatusesCustomBatchResponse", + "properties": { + "entries": { + "description": "The result of the execution of the batch requests.", + "items": { + "$ref": "AccountstatusesCustomBatchResponseEntry" + }, + "type": "array" + }, + "kind": { + "default": "content#accountstatusesCustomBatchResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"content#accountstatusesCustomBatchResponse\".", + "type": "string" + } + }, + "type": "object" + }, + "AccountstatusesCustomBatchResponseEntry": { + "description": "A batch entry encoding a single non-batch accountstatuses response.", + "id": "AccountstatusesCustomBatchResponseEntry", + "properties": { + "accountStatus": { + "$ref": "AccountStatus", + "description": "The requested account status. Defined if and only if the request was successful." + }, + "batchId": { + "description": "The ID of the request entry this entry responds to.", + "format": "uint32", + "type": "integer" + }, + "errors": { + "$ref": "Errors", + "description": "A list of errors defined if and only if the request failed." + } + }, + "type": "object" + }, + "AccountstatusesListResponse": { + "id": "AccountstatusesListResponse", + "properties": { + "kind": { + "default": "content#accountstatusesListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"content#accountstatusesListResponse\".", + "type": "string" + }, + "nextPageToken": { + "description": "The token for the retrieval of the next page of account statuses.", + "type": "string" + }, + "resources": { + "items": { + "$ref": "AccountStatus" + }, + "type": "array" + } + }, + "type": "object" + }, + "AccounttaxCustomBatchRequest": { + "id": "AccounttaxCustomBatchRequest", + "properties": { + "entries": { + "description": "The request entries to be processed in the batch.", + "items": { + "$ref": "AccounttaxCustomBatchRequestEntry" + }, + "type": "array" + } + }, + "type": "object" + }, + "AccounttaxCustomBatchRequestEntry": { + "description": "A batch entry encoding a single non-batch accounttax request.", + "id": "AccounttaxCustomBatchRequestEntry", + "properties": { + "accountId": { + "description": "The ID of the account for which to get/update account tax settings.", + "format": "uint64", + "type": "string" + }, + "accountTax": { + "$ref": "AccountTax", + "description": "The account tax settings to update. Only defined if the method is update." + }, + "batchId": { + "description": "An entry ID, unique within the batch request.", + "format": "uint32", + "type": "integer" + }, + "merchantId": { + "description": "The ID of the managing account.", + "format": "uint64", + "type": "string" + }, + "method": { + "type": "string" + } + }, + "type": "object" + }, + "AccounttaxCustomBatchResponse": { + "id": "AccounttaxCustomBatchResponse", + "properties": { + "entries": { + "description": "The result of the execution of the batch requests.", + "items": { + "$ref": "AccounttaxCustomBatchResponseEntry" + }, + "type": "array" + }, + "kind": { + "default": "content#accounttaxCustomBatchResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"content#accounttaxCustomBatchResponse\".", + "type": "string" + } + }, + "type": "object" + }, + "AccounttaxCustomBatchResponseEntry": { + "description": "A batch entry encoding a single non-batch accounttax response.", + "id": "AccounttaxCustomBatchResponseEntry", + "properties": { + "accountTax": { + "$ref": "AccountTax", + "description": "The retrieved or updated account tax settings." + }, + "batchId": { + "description": "The ID of the request entry this entry responds to.", + "format": "uint32", + "type": "integer" + }, + "errors": { + "$ref": "Errors", + "description": "A list of errors defined if and only if the request failed." + }, + "kind": { + "default": "content#accounttaxCustomBatchResponseEntry", + "description": "Identifies what kind of resource this is. Value: the fixed string \"content#accounttaxCustomBatchResponseEntry\".", + "type": "string" + } + }, + "type": "object" + }, + "AccounttaxListResponse": { + "id": "AccounttaxListResponse", + "properties": { + "kind": { + "default": "content#accounttaxListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"content#accounttaxListResponse\".", + "type": "string" + }, + "nextPageToken": { + "description": "The token for the retrieval of the next page of account tax settings.", + "type": "string" + }, + "resources": { + "items": { + "$ref": "AccountTax" + }, + "type": "array" + } + }, + "type": "object" + }, + "CarrierRate": { + "id": "CarrierRate", + "properties": { + "carrierName": { + "description": "Carrier service, such as \"UPS\" or \"Fedex\". The list of supported carriers can be retrieved via the getSupportedCarriers method. Required.", + "type": "string" + }, + "carrierService": { + "description": "Carrier service, such as \"ground\" or \"2 days\". The list of supported services for a carrier can be retrieved via the getSupportedCarriers method. Required.", + "type": "string" + }, + "flatAdjustment": { + "$ref": "Price", + "description": "Additive shipping rate modifier. Can be negative. For example { \"value\": \"1\", \"currency\" : \"USD\" } adds $1 to the rate, { \"value\": \"-3\", \"currency\" : \"USD\" } removes $3 from the rate. Optional." + }, + "name": { + "description": "Name of the carrier rate. Must be unique per rate group. Required.", + "type": "string" + }, + "originPostalCode": { + "description": "Shipping origin for this carrier rate. Required.", + "type": "string" + }, + "percentageAdjustment": { + "description": "Multiplicative shipping rate modifier as a number in decimal notation. Can be negative. For example \"5.4\" increases the rate by 5.4%, \"-3\" decreases the rate by 3%. Optional.", + "type": "string" + } + }, + "type": "object" + }, + "CarriersCarrier": { + "id": "CarriersCarrier", + "properties": { + "country": { + "description": "The CLDR country code of the carrier (e.g., \"US\"). Always present.", + "type": "string" + }, + "name": { + "description": "The name of the carrier (e.g., \"UPS\"). Always present.", + "type": "string" + }, + "services": { + "description": "A list of supported services (e.g., \"ground\") for that carrier. Contains at least one service.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "Datafeed": { + "description": "Datafeed configuration data.", + "id": "Datafeed", + "properties": { + "attributeLanguage": { + "description": "The two-letter ISO 639-1 language in which the attributes are defined in the data feed.", + "type": "string" + }, + "contentLanguage": { + "description": "[DEPRECATED] Please use targets[].language instead. The two-letter ISO 639-1 language of the items in the feed. Must be a valid language for targetCountry.", + "type": "string" + }, + "contentType": { + "annotations": { + "required": [ + "content.datafeeds.insert", + "content.datafeeds.update" + ] + }, + "description": "The type of data feed. For product inventory feeds, only feeds for local stores, not online stores, are supported.", + "type": "string" + }, + "fetchSchedule": { + "$ref": "DatafeedFetchSchedule", + "description": "Fetch schedule for the feed file." + }, + "fileName": { + "annotations": { + "required": [ + "content.datafeeds.insert", + "content.datafeeds.update" + ] + }, + "description": "The filename of the feed. All feeds must have a unique file name.", + "type": "string" + }, + "format": { + "$ref": "DatafeedFormat", + "description": "Format of the feed file." + }, + "id": { + "annotations": { + "required": [ + "content.datafeeds.update" + ] + }, + "description": "The ID of the data feed.", + "format": "int64", + "type": "string" + }, + "intendedDestinations": { + "description": "[DEPRECATED] Please use targets[].includedDestinations instead. The list of intended destinations (corresponds to checked check boxes in Merchant Center).", + "items": { + "type": "string" + }, + "type": "array" + }, + "kind": { + "default": "content#datafeed", + "description": "Identifies what kind of resource this is. Value: the fixed string \"content#datafeed\".", + "type": "string" + }, + "name": { + "annotations": { + "required": [ + "content.datafeeds.insert" + ] + }, + "description": "A descriptive name of the data feed.", + "type": "string" + }, + "targetCountry": { + "description": "[DEPRECATED] Please use targets[].country instead. The country where the items in the feed will be included in the search index, represented as a CLDR territory code.", + "type": "string" + }, + "targets": { + "description": "The targets this feed should apply to (country, language, destinations).", + "items": { + "$ref": "DatafeedTarget" + }, + "type": "array" + } + }, + "type": "object" + }, + "DatafeedFetchSchedule": { + "description": "The required fields vary based on the frequency of fetching. For a monthly fetch schedule, day_of_month and hour are required. For a weekly fetch schedule, weekday and hour are required. For a daily fetch schedule, only hour is required.", + "id": "DatafeedFetchSchedule", + "properties": { + "dayOfMonth": { + "description": "The day of the month the feed file should be fetched (1-31).", + "format": "uint32", + "type": "integer" + }, + "fetchUrl": { + "description": "The URL where the feed file can be fetched. Google Merchant Center will support automatic scheduled uploads using the HTTP, HTTPS, FTP, or SFTP protocols, so the value will need to be a valid link using one of those four protocols.", + "type": "string" + }, + "hour": { + "description": "The hour of the day the feed file should be fetched (0-23).", + "format": "uint32", + "type": "integer" + }, + "minuteOfHour": { + "description": "The minute of the hour the feed file should be fetched (0-59). Read-only.", + "format": "uint32", + "type": "integer" + }, + "password": { + "description": "An optional password for fetch_url.", + "type": "string" + }, + "paused": { + "description": "Whether the scheduled fetch is paused or not.", + "type": "boolean" + }, + "timeZone": { + "description": "Time zone used for schedule. UTC by default. E.g., \"America/Los_Angeles\".", + "type": "string" + }, + "username": { + "description": "An optional user name for fetch_url.", + "type": "string" + }, + "weekday": { + "description": "The day of the week the feed file should be fetched.", + "type": "string" + } + }, + "type": "object" + }, + "DatafeedFormat": { + "id": "DatafeedFormat", + "properties": { + "columnDelimiter": { + "description": "Delimiter for the separation of values in a delimiter-separated values feed. If not specified, the delimiter will be auto-detected. Ignored for non-DSV data feeds.", + "type": "string" + }, + "fileEncoding": { + "description": "Character encoding scheme of the data feed. If not specified, the encoding will be auto-detected.", + "type": "string" + }, + "quotingMode": { + "description": "Specifies how double quotes are interpreted. If not specified, the mode will be auto-detected. Ignored for non-DSV data feeds.", + "type": "string" + } + }, + "type": "object" + }, + "DatafeedStatus": { + "description": "The status of a datafeed, i.e., the result of the last retrieval of the datafeed computed asynchronously when the feed processing is finished.", + "id": "DatafeedStatus", + "properties": { + "country": { + "description": "The country for which the status is reported, represented as a CLDR territory code.", + "type": "string" + }, + "datafeedId": { + "description": "The ID of the feed for which the status is reported.", + "format": "uint64", + "type": "string" + }, + "errors": { + "description": "The list of errors occurring in the feed.", + "items": { + "$ref": "DatafeedStatusError" + }, + "type": "array" + }, + "itemsTotal": { + "description": "The number of items in the feed that were processed.", + "format": "uint64", + "type": "string" + }, + "itemsValid": { + "description": "The number of items in the feed that were valid.", + "format": "uint64", + "type": "string" + }, + "kind": { + "default": "content#datafeedStatus", + "description": "Identifies what kind of resource this is. Value: the fixed string \"content#datafeedStatus\".", + "type": "string" + }, + "language": { + "description": "The two-letter ISO 639-1 language for which the status is reported.", + "type": "string" + }, + "lastUploadDate": { + "description": "The last date at which the feed was uploaded.", + "type": "string" + }, + "processingStatus": { + "description": "The processing status of the feed.", + "type": "string" + }, + "warnings": { + "description": "The list of errors occurring in the feed.", + "items": { + "$ref": "DatafeedStatusError" + }, + "type": "array" + } + }, + "type": "object" + }, + "DatafeedStatusError": { + "description": "An error occurring in the feed, like \"invalid price\".", + "id": "DatafeedStatusError", + "properties": { + "code": { + "description": "The code of the error, e.g., \"validation/invalid_value\".", + "type": "string" + }, + "count": { + "description": "The number of occurrences of the error in the feed.", + "format": "uint64", + "type": "string" + }, + "examples": { + "description": "A list of example occurrences of the error, grouped by product.", + "items": { + "$ref": "DatafeedStatusExample" + }, + "type": "array" + }, + "message": { + "description": "The error message, e.g., \"Invalid price\".", + "type": "string" + } + }, + "type": "object" + }, + "DatafeedStatusExample": { + "description": "An example occurrence for a particular error.", + "id": "DatafeedStatusExample", + "properties": { + "itemId": { + "description": "The ID of the example item.", + "type": "string" + }, + "lineNumber": { + "description": "Line number in the data feed where the example is found.", + "format": "uint64", + "type": "string" + }, + "value": { + "description": "The problematic value.", + "type": "string" + } + }, + "type": "object" + }, + "DatafeedTarget": { + "id": "DatafeedTarget", + "properties": { + "country": { + "description": "The country where the items in the feed will be included in the search index, represented as a CLDR territory code.", + "type": "string" + }, + "excludedDestinations": { + "description": "The list of destinations to exclude for this target (corresponds to unchecked check boxes in Merchant Center).", + "items": { + "type": "string" + }, + "type": "array" + }, + "includedDestinations": { + "description": "The list of destinations to include for this target (corresponds to checked check boxes in Merchant Center). Default destinations are always included unless provided in the excluded_destination field.", + "items": { + "type": "string" + }, + "type": "array" + }, + "language": { + "description": "The two-letter ISO 639-1 language of the items in the feed. Must be a valid language for targets[].country.", + "type": "string" + } + }, + "type": "object" + }, + "DatafeedsCustomBatchRequest": { + "id": "DatafeedsCustomBatchRequest", + "properties": { + "entries": { + "description": "The request entries to be processed in the batch.", + "items": { + "$ref": "DatafeedsCustomBatchRequestEntry" + }, + "type": "array" + } + }, + "type": "object" + }, + "DatafeedsCustomBatchRequestEntry": { + "description": "A batch entry encoding a single non-batch datafeeds request.", + "id": "DatafeedsCustomBatchRequestEntry", + "properties": { + "batchId": { + "description": "An entry ID, unique within the batch request.", + "format": "uint32", + "type": "integer" + }, + "datafeed": { + "$ref": "Datafeed", + "description": "The data feed to insert." + }, + "datafeedId": { + "description": "The ID of the data feed to get, delete or fetch.", + "format": "uint64", + "type": "string" + }, + "merchantId": { + "description": "The ID of the managing account.", + "format": "uint64", + "type": "string" + }, + "method": { + "type": "string" + } + }, + "type": "object" + }, + "DatafeedsCustomBatchResponse": { + "id": "DatafeedsCustomBatchResponse", + "properties": { + "entries": { + "description": "The result of the execution of the batch requests.", + "items": { + "$ref": "DatafeedsCustomBatchResponseEntry" + }, + "type": "array" + }, + "kind": { + "default": "content#datafeedsCustomBatchResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"content#datafeedsCustomBatchResponse\".", + "type": "string" + } + }, + "type": "object" + }, + "DatafeedsCustomBatchResponseEntry": { + "description": "A batch entry encoding a single non-batch datafeeds response.", + "id": "DatafeedsCustomBatchResponseEntry", + "properties": { + "batchId": { + "description": "The ID of the request entry this entry responds to.", + "format": "uint32", + "type": "integer" + }, + "datafeed": { + "$ref": "Datafeed", + "description": "The requested data feed. Defined if and only if the request was successful." + }, + "errors": { + "$ref": "Errors", + "description": "A list of errors defined if and only if the request failed." + } + }, + "type": "object" + }, + "DatafeedsListResponse": { + "id": "DatafeedsListResponse", + "properties": { + "kind": { + "default": "content#datafeedsListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"content#datafeedsListResponse\".", + "type": "string" + }, + "nextPageToken": { + "description": "The token for the retrieval of the next page of datafeeds.", + "type": "string" + }, + "resources": { + "items": { + "$ref": "Datafeed" + }, + "type": "array" + } + }, + "type": "object" + }, + "DatafeedstatusesCustomBatchRequest": { + "id": "DatafeedstatusesCustomBatchRequest", + "properties": { + "entries": { + "description": "The request entries to be processed in the batch.", + "items": { + "$ref": "DatafeedstatusesCustomBatchRequestEntry" + }, + "type": "array" + } + }, + "type": "object" + }, + "DatafeedstatusesCustomBatchRequestEntry": { + "description": "A batch entry encoding a single non-batch datafeedstatuses request.", + "id": "DatafeedstatusesCustomBatchRequestEntry", + "properties": { + "batchId": { + "description": "An entry ID, unique within the batch request.", + "format": "uint32", + "type": "integer" + }, + "country": { + "description": "The country for which to get the datafeed status. If this parameter is provided then language must also be provided. Note that for multi-target datafeeds this parameter is required.", + "type": "string" + }, + "datafeedId": { + "description": "The ID of the data feed to get.", + "format": "uint64", + "type": "string" + }, + "language": { + "description": "The language for which to get the datafeed status. If this parameter is provided then country must also be provided. Note that for multi-target datafeeds this parameter is required.", + "type": "string" + }, + "merchantId": { + "description": "The ID of the managing account.", + "format": "uint64", + "type": "string" + }, + "method": { + "type": "string" + } + }, + "type": "object" + }, + "DatafeedstatusesCustomBatchResponse": { + "id": "DatafeedstatusesCustomBatchResponse", + "properties": { + "entries": { + "description": "The result of the execution of the batch requests.", + "items": { + "$ref": "DatafeedstatusesCustomBatchResponseEntry" + }, + "type": "array" + }, + "kind": { + "default": "content#datafeedstatusesCustomBatchResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"content#datafeedstatusesCustomBatchResponse\".", + "type": "string" + } + }, + "type": "object" + }, + "DatafeedstatusesCustomBatchResponseEntry": { + "description": "A batch entry encoding a single non-batch datafeedstatuses response.", + "id": "DatafeedstatusesCustomBatchResponseEntry", + "properties": { + "batchId": { + "description": "The ID of the request entry this entry responds to.", + "format": "uint32", + "type": "integer" + }, + "datafeedStatus": { + "$ref": "DatafeedStatus", + "description": "The requested data feed status. Defined if and only if the request was successful." + }, + "errors": { + "$ref": "Errors", + "description": "A list of errors defined if and only if the request failed." + } + }, + "type": "object" + }, + "DatafeedstatusesListResponse": { + "id": "DatafeedstatusesListResponse", + "properties": { + "kind": { + "default": "content#datafeedstatusesListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"content#datafeedstatusesListResponse\".", + "type": "string" + }, + "nextPageToken": { + "description": "The token for the retrieval of the next page of datafeed statuses.", + "type": "string" + }, + "resources": { + "items": { + "$ref": "DatafeedStatus" + }, + "type": "array" + } + }, + "type": "object" + }, + "DeliveryTime": { + "id": "DeliveryTime", + "properties": { + "holidayCutoffs": { + "description": "Holiday cutoff definitions. If configured, they specify order cutoff times for holiday-specific shipping.", + "items": { + "$ref": "HolidayCutoff" + }, + "type": "array" + }, + "maxTransitTimeInDays": { + "description": "Maximum number of business days that is spent in transit. 0 means same day delivery, 1 means next day delivery. Must be greater than or equal to minTransitTimeInDays. Required.", + "format": "uint32", + "type": "integer" + }, + "minTransitTimeInDays": { + "description": "Minimum number of business days that is spent in transit. 0 means same day delivery, 1 means next day delivery. Required.", + "format": "uint32", + "type": "integer" + } + }, + "type": "object" + }, + "Error": { + "description": "An error returned by the API.", + "id": "Error", + "properties": { + "domain": { + "description": "The domain of the error.", + "type": "string" + }, + "message": { + "description": "A description of the error.", + "type": "string" + }, + "reason": { + "description": "The error code.", + "type": "string" + } + }, + "type": "object" + }, + "Errors": { + "description": "A list of errors returned by a failed batch entry.", + "id": "Errors", + "properties": { + "code": { + "description": "The HTTP status of the first error in errors.", + "format": "uint32", + "type": "integer" + }, + "errors": { + "description": "A list of errors.", + "items": { + "$ref": "Error" + }, + "type": "array" + }, + "message": { + "description": "The message of the first error in errors.", + "type": "string" + } + }, + "type": "object" + }, + "GmbAccounts": { + "id": "GmbAccounts", + "properties": { + "accountId": { + "description": "The ID of the account.", + "format": "uint64", + "type": "string" + }, + "gmbAccounts": { + "description": "A list of GMB accounts which are available to the merchant.", + "items": { + "$ref": "GmbAccountsGmbAccount" + }, + "type": "array" + } + }, + "type": "object" + }, + "GmbAccountsGmbAccount": { + "id": "GmbAccountsGmbAccount", + "properties": { + "email": { + "description": "The email which identifies the GMB account.", + "type": "string" + }, + "listingCount": { + "description": "Number of listings under this account.", + "format": "uint64", + "type": "string" + }, + "name": { + "description": "The name of the GMB account.", + "type": "string" + }, + "type": { + "description": "The type of the GMB account (User or Business).", + "type": "string" + } + }, + "type": "object" + }, + "Headers": { + "description": "A non-empty list of row or column headers for a table. Exactly one of prices, weights, numItems, postalCodeGroupNames, or locations must be set.", + "id": "Headers", + "properties": { + "locations": { + "description": "A list of location ID sets. Must be non-empty. Can only be set if all other fields are not set.", + "items": { + "$ref": "LocationIdSet" + }, + "type": "array" + }, + "numberOfItems": { + "description": "A list of inclusive number of items upper bounds. The last value can be \"infinity\". For example [\"10\", \"50\", \"infinity\"] represents the headers \"\u003c= 10 items\", \" 50 items\". Must be non-empty. Can only be set if all other fields are not set.", + "items": { + "type": "string" + }, + "type": "array" + }, + "postalCodeGroupNames": { + "description": "A list of postal group names. The last value can be \"all other locations\". Example: [\"zone 1\", \"zone 2\", \"all other locations\"]. The referred postal code groups must match the delivery country of the service. Must be non-empty. Can only be set if all other fields are not set.", + "items": { + "type": "string" + }, + "type": "array" + }, + "prices": { + "description": "A list of inclusive order price upper bounds. The last price's value can be \"infinity\". For example [{\"value\": \"10\", \"currency\": \"USD\"}, {\"value\": \"500\", \"currency\": \"USD\"}, {\"value\": \"infinity\", \"currency\": \"USD\"}] represents the headers \"\u003c= $10\", \" $500\". All prices within a service must have the same currency. Must be non-empty. Can only be set if all other fields are not set.", + "items": { + "$ref": "Price" + }, + "type": "array" + }, + "weights": { + "description": "A list of inclusive order weight upper bounds. The last weight's value can be \"infinity\". For example [{\"value\": \"10\", \"unit\": \"kg\"}, {\"value\": \"50\", \"unit\": \"kg\"}, {\"value\": \"infinity\", \"unit\": \"kg\"}] represents the headers \"\u003c= 10kg\", \" 50kg\". All weights within a service must have the same unit. Must be non-empty. Can only be set if all other fields are not set.", + "items": { + "$ref": "Weight" + }, + "type": "array" + } + }, + "type": "object" + }, + "HolidayCutoff": { + "id": "HolidayCutoff", + "properties": { + "deadlineDate": { + "description": "Date of the order deadline, in ISO 8601 format. E.g. \"2016-11-29\" for 29th November 2016. Required.", + "type": "string" + }, + "deadlineHour": { + "description": "Hour of the day on the deadline date until which the order has to be placed to qualify for the delivery guarantee. Possible values are: 0 (midnight), 1, ..., 12 (noon), 13, ..., 23. Required.", + "format": "uint32", + "type": "integer" + }, + "deadlineTimezone": { + "description": "Timezone identifier for the deadline hour. A list of identifiers can be found in the AdWords API documentation. E.g. \"Europe/Zurich\". Required.", + "type": "string" + }, + "holidayId": { + "description": "Unique identifier for the holiday. Required.", + "type": "string" + }, + "visibleFromDate": { + "description": "Date on which the deadline will become visible to consumers in ISO 8601 format. E.g. \"2016-10-31\" for 31st October 2016. Required.", + "type": "string" + } + }, + "type": "object" + }, + "HolidaysHoliday": { + "id": "HolidaysHoliday", + "properties": { + "countryCode": { + "description": "The CLDR territory code of the country in which the holiday is available. E.g. \"US\", \"DE\", \"GB\". A holiday cutoff can only be configured in a shipping settings service with matching delivery country. Always present.", + "type": "string" + }, + "date": { + "description": "Date of the holiday, in ISO 8601 format. E.g. \"2016-12-25\" for Christmas 2016. Always present.", + "type": "string" + }, + "deliveryGuaranteeDate": { + "description": "Date on which the order has to arrive at the customer's, in ISO 8601 format. E.g. \"2016-12-24\" for 24th December 2016. Always present.", + "type": "string" + }, + "deliveryGuaranteeHour": { + "description": "Hour of the day in the delivery location's timezone on the guaranteed delivery date by which the order has to arrive at the customer's. Possible values are: 0 (midnight), 1, ..., 12 (noon), 13, ..., 23. Always present.", + "format": "uint64", + "type": "string" + }, + "id": { + "description": "Unique identifier for the holiday to be used when configuring holiday cutoffs. Always present.", + "type": "string" + }, + "type": { + "description": "The holiday type. Always present.", + "type": "string" + } + }, + "type": "object" + }, + "Installment": { + "id": "Installment", + "properties": { + "amount": { + "$ref": "Price", + "description": "The amount the buyer has to pay per month." + }, + "months": { + "description": "The number of installments the buyer has to pay.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "Inventory": { + "id": "Inventory", + "properties": { + "availability": { + "description": "The availability of the product.", + "type": "string" + }, + "installment": { + "$ref": "Installment", + "description": "Number and amount of installments to pay for an item. Brazil only." + }, + "kind": { + "default": "content#inventory", + "description": "Identifies what kind of resource this is. Value: the fixed string \"content#inventory\".", + "type": "string" + }, + "loyaltyPoints": { + "$ref": "LoyaltyPoints", + "description": "Loyalty points that users receive after purchasing the item. Japan only." + }, + "pickup": { + "$ref": "InventoryPickup", + "description": "Store pickup information. Only supported for local inventory. Not setting pickup means \"don't update\" while setting it to the empty value ({} in JSON) means \"delete\". Otherwise, pickupMethod and pickupSla must be set together, unless pickupMethod is \"not supported\"." + }, + "price": { + "$ref": "Price", + "description": "The price of the product." + }, + "quantity": { + "description": "The quantity of the product. Must be equal to or greater than zero. Supported only for local products.", + "format": "uint32", + "type": "integer" + }, + "salePrice": { + "$ref": "Price", + "description": "The sale price of the product. Mandatory if sale_price_effective_date is defined." + }, + "salePriceEffectiveDate": { + "description": "A date range represented by a pair of ISO 8601 dates separated by a space, comma, or slash. Both dates might be specified as 'null' if undecided.", + "type": "string" + }, + "sellOnGoogleQuantity": { + "description": "The quantity of the product that is reserved for sell-on-google ads. Supported only for online products.", + "format": "uint32", + "type": "integer" + } + }, + "type": "object" + }, + "InventoryCustomBatchRequest": { + "id": "InventoryCustomBatchRequest", + "properties": { + "entries": { + "description": "The request entries to be processed in the batch.", + "items": { + "$ref": "InventoryCustomBatchRequestEntry" + }, + "type": "array" + } + }, + "type": "object" + }, + "InventoryCustomBatchRequestEntry": { + "description": "A batch entry encoding a single non-batch inventory request.", + "id": "InventoryCustomBatchRequestEntry", + "properties": { + "batchId": { + "description": "An entry ID, unique within the batch request.", + "format": "uint32", + "type": "integer" + }, + "inventory": { + "$ref": "Inventory", + "description": "Price and availability of the product." + }, + "merchantId": { + "description": "The ID of the managing account.", + "format": "uint64", + "type": "string" + }, + "productId": { + "description": "The ID of the product for which to update price and availability.", + "type": "string" + }, + "storeCode": { + "description": "The code of the store for which to update price and availability. Use online to update price and availability of an online product.", + "type": "string" + } + }, + "type": "object" + }, + "InventoryCustomBatchResponse": { + "id": "InventoryCustomBatchResponse", + "properties": { + "entries": { + "description": "The result of the execution of the batch requests.", + "items": { + "$ref": "InventoryCustomBatchResponseEntry" + }, + "type": "array" + }, + "kind": { + "default": "content#inventoryCustomBatchResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"content#inventoryCustomBatchResponse\".", + "type": "string" + } + }, + "type": "object" + }, + "InventoryCustomBatchResponseEntry": { + "description": "A batch entry encoding a single non-batch inventory response.", + "id": "InventoryCustomBatchResponseEntry", + "properties": { + "batchId": { + "description": "The ID of the request entry this entry responds to.", + "format": "uint32", + "type": "integer" + }, + "errors": { + "$ref": "Errors", + "description": "A list of errors defined if and only if the request failed." + }, + "kind": { + "default": "content#inventoryCustomBatchResponseEntry", + "description": "Identifies what kind of resource this is. Value: the fixed string \"content#inventoryCustomBatchResponseEntry\".", + "type": "string" + } + }, + "type": "object" + }, + "InventoryPickup": { + "id": "InventoryPickup", + "properties": { + "pickupMethod": { + "description": "Whether store pickup is available for this offer and whether the pickup option should be shown as buy, reserve, or not supported. Only supported for local inventory. Unless the value is \"not supported\", must be submitted together with pickupSla.", + "type": "string" + }, + "pickupSla": { + "description": "The expected date that an order will be ready for pickup, relative to when the order is placed. Only supported for local inventory. Must be submitted together with pickupMethod.", + "type": "string" + } + }, + "type": "object" + }, + "InventorySetRequest": { + "id": "InventorySetRequest", + "properties": { + "availability": { + "description": "The availability of the product.", + "type": "string" + }, + "installment": { + "$ref": "Installment", + "description": "Number and amount of installments to pay for an item. Brazil only." + }, + "loyaltyPoints": { + "$ref": "LoyaltyPoints", + "description": "Loyalty points that users receive after purchasing the item. Japan only." + }, + "pickup": { + "$ref": "InventoryPickup", + "description": "Store pickup information. Only supported for local inventory. Not setting pickup means \"don't update\" while setting it to the empty value ({} in JSON) means \"delete\". Otherwise, pickupMethod and pickupSla must be set together, unless pickupMethod is \"not supported\"." + }, + "price": { + "$ref": "Price", + "description": "The price of the product." + }, + "quantity": { + "description": "The quantity of the product. Must be equal to or greater than zero. Supported only for local products.", + "format": "uint32", + "type": "integer" + }, + "salePrice": { + "$ref": "Price", + "description": "The sale price of the product. Mandatory if sale_price_effective_date is defined." + }, + "salePriceEffectiveDate": { + "description": "A date range represented by a pair of ISO 8601 dates separated by a space, comma, or slash. Both dates might be specified as 'null' if undecided.", + "type": "string" + }, + "sellOnGoogleQuantity": { + "description": "The quantity of the product that is reserved for sell-on-google ads. Supported only for online products.", + "format": "uint32", + "type": "integer" + } + }, + "type": "object" + }, + "InventorySetResponse": { + "id": "InventorySetResponse", + "properties": { + "kind": { + "default": "content#inventorySetResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"content#inventorySetResponse\".", + "type": "string" + } + }, + "type": "object" + }, + "LiaAboutPageSettings": { + "id": "LiaAboutPageSettings", + "properties": { + "status": { + "description": "The status of the verification process for the About page.", + "type": "string" + }, + "url": { + "description": "The URL for the About page.", + "type": "string" + } + }, + "type": "object" + }, + "LiaCountrySettings": { + "id": "LiaCountrySettings", + "properties": { + "about": { + "$ref": "LiaAboutPageSettings", + "description": "The settings for the About page." + }, + "country": { + "annotations": { + "required": [ + "content.liasettings.update" + ] + }, + "description": "CLDR country code (e.g. \"US\").", + "type": "string" + }, + "hostedLocalStorefrontActive": { + "description": "The status of the \"Merchant hosted local storefront\" feature.", + "type": "boolean" + }, + "inventory": { + "$ref": "LiaInventorySettings", + "description": "LIA inventory verification settings." + }, + "onDisplayToOrder": { + "$ref": "LiaOnDisplayToOrderSettings", + "description": "LIA \"On Display To Order\" settings." + }, + "storePickupActive": { + "description": "The status of the \"Store pickup\" feature.", + "type": "boolean" + } + }, + "type": "object" + }, + "LiaInventorySettings": { + "id": "LiaInventorySettings", + "properties": { + "inventoryVerificationContactEmail": { + "description": "The email of the contact for the inventory verification process.", + "type": "string" + }, + "inventoryVerificationContactName": { + "description": "The name of the contact for the inventory verification process.", + "type": "string" + }, + "inventoryVerificationContactStatus": { + "description": "The status of the verification contact.", + "type": "string" + }, + "status": { + "description": "The status of the inventory verification process.", + "type": "string" + } + }, + "type": "object" + }, + "LiaOnDisplayToOrderSettings": { + "id": "LiaOnDisplayToOrderSettings", + "properties": { + "shippingCostPolicyUrl": { + "description": "Shipping cost and policy URL.", + "type": "string" + }, + "status": { + "description": "The status of the ?On display to order? feature.", + "type": "string" + } + }, + "type": "object" + }, + "LiaSettings": { + "id": "LiaSettings", + "properties": { + "accountId": { + "description": "The ID of the account to which these LIA settings belong. Ignored upon update, always present in get request responses.", + "format": "uint64", + "type": "string" + }, + "countrySettings": { + "description": "The LIA settings for each country.", + "items": { + "$ref": "LiaCountrySettings" + }, + "type": "array" + }, + "kind": { + "default": "content#liaSettings", + "description": "Identifies what kind of resource this is. Value: the fixed string \"content#liaSettings\".", + "type": "string" + } + }, + "type": "object" + }, + "LiasettingsCustomBatchRequest": { + "id": "LiasettingsCustomBatchRequest", + "properties": { + "entries": { + "description": "The request entries to be processed in the batch.", + "items": { + "$ref": "LiasettingsCustomBatchRequestEntry" + }, + "type": "array" + } + }, + "type": "object" + }, + "LiasettingsCustomBatchRequestEntry": { + "id": "LiasettingsCustomBatchRequestEntry", + "properties": { + "accountId": { + "description": "The ID of the account for which to get/update account shipping settings.", + "format": "uint64", + "type": "string" + }, + "batchId": { + "description": "An entry ID, unique within the batch request.", + "format": "uint32", + "type": "integer" + }, + "contactEmail": { + "description": "Inventory validation contact email. Required only for SetInventoryValidationContact.", + "type": "string" + }, + "contactName": { + "description": "Inventory validation contact name. Required only for SetInventoryValidationContact.", + "type": "string" + }, + "country": { + "description": "The country code. Required only for RequestInventoryVerification.", + "type": "string" + }, + "gmbEmail": { + "description": "The GMB account. Required only for RequestGmbAccess.", + "type": "string" + }, + "liaSettings": { + "$ref": "LiaSettings", + "description": "The account Lia settings to update. Only defined if the method is update." + }, + "merchantId": { + "description": "The ID of the managing account.", + "format": "uint64", + "type": "string" + }, + "method": { + "type": "string" + } + }, + "type": "object" + }, + "LiasettingsCustomBatchResponse": { + "id": "LiasettingsCustomBatchResponse", + "properties": { + "entries": { + "description": "The result of the execution of the batch requests.", + "items": { + "$ref": "LiasettingsCustomBatchResponseEntry" + }, + "type": "array" + }, + "kind": { + "default": "content#liasettingsCustomBatchResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"content#liasettingsCustomBatchResponse\".", + "type": "string" + } + }, + "type": "object" + }, + "LiasettingsCustomBatchResponseEntry": { + "id": "LiasettingsCustomBatchResponseEntry", + "properties": { + "batchId": { + "description": "The ID of the request entry to which this entry responds.", + "format": "uint32", + "type": "integer" + }, + "errors": { + "$ref": "Errors", + "description": "A list of errors defined if, and only if, the request failed." + }, + "gmbAccounts": { + "$ref": "GmbAccounts", + "description": "The the list of accessible GMB accounts." + }, + "kind": { + "default": "content#liasettingsCustomBatchResponseEntry", + "description": "Identifies what kind of resource this is. Value: the fixed string \"content#liasettingsCustomBatchResponseEntry\".", + "type": "string" + }, + "liaSettings": { + "$ref": "LiaSettings", + "description": "The retrieved or updated Lia settings." + } + }, + "type": "object" + }, + "LiasettingsGetAccessibleGmbAccountsResponse": { + "id": "LiasettingsGetAccessibleGmbAccountsResponse", + "properties": { + "accountId": { + "description": "The ID of the account.", + "format": "uint64", + "type": "string" + }, + "gmbAccounts": { + "description": "A list of GMB accounts which are available to the merchant.", + "items": { + "$ref": "GmbAccountsGmbAccount" + }, + "type": "array" + }, + "kind": { + "default": "content#liasettingsGetAccessibleGmbAccountsResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"content#liasettingsGetAccessibleGmbAccountsResponse\".", + "type": "string" + } + }, + "type": "object" + }, + "LiasettingsListResponse": { + "id": "LiasettingsListResponse", + "properties": { + "kind": { + "default": "content#liasettingsListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"content#liasettingsListResponse\".", + "type": "string" + }, + "nextPageToken": { + "description": "The token for the retrieval of the next page of LIA settings.", + "type": "string" + }, + "resources": { + "items": { + "$ref": "LiaSettings" + }, + "type": "array" + } + }, + "type": "object" + }, + "LiasettingsRequestGmbAccessResponse": { + "id": "LiasettingsRequestGmbAccessResponse", + "properties": { + "kind": { + "default": "content#liasettingsRequestGmbAccessResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"content#liasettingsRequestGmbAccessResponse\".", + "type": "string" + } + }, + "type": "object" + }, + "LiasettingsRequestInventoryVerificationResponse": { + "id": "LiasettingsRequestInventoryVerificationResponse", + "properties": { + "kind": { + "default": "content#liasettingsRequestInventoryVerificationResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"content#liasettingsRequestInventoryVerificationResponse\".", + "type": "string" + } + }, + "type": "object" + }, + "LiasettingsSetInventoryVerificationContactResponse": { + "id": "LiasettingsSetInventoryVerificationContactResponse", + "properties": { + "kind": { + "default": "content#liasettingsSetInventoryVerificationContactResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"content#liasettingsSetInventoryVerificationContactResponse\".", + "type": "string" + } + }, + "type": "object" + }, + "LocationIdSet": { + "id": "LocationIdSet", + "properties": { + "locationIds": { + "description": "A non-empty list of location IDs. They must all be of the same location type (e.g., state).", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "LoyaltyPoints": { + "id": "LoyaltyPoints", + "properties": { + "name": { + "description": "Name of loyalty points program. It is recommended to limit the name to 12 full-width characters or 24 Roman characters.", + "type": "string" + }, + "pointsValue": { + "description": "The retailer's loyalty points in absolute value.", + "format": "int64", + "type": "string" + }, + "ratio": { + "description": "The ratio of a point when converted to currency. Google assumes currency based on Merchant Center settings. If ratio is left out, it defaults to 1.0.", + "format": "double", + "type": "number" + } + }, + "type": "object" + }, + "Order": { + "id": "Order", + "properties": { + "acknowledged": { + "description": "Whether the order was acknowledged.", + "type": "boolean" + }, + "channelType": { + "description": "The channel type of the order: \"purchaseOnGoogle\" or \"googleExpress\".", + "type": "string" + }, + "customer": { + "$ref": "OrderCustomer", + "description": "The details of the customer who placed the order." + }, + "deliveryDetails": { + "$ref": "OrderDeliveryDetails", + "description": "The details for the delivery." + }, + "id": { + "description": "The REST id of the order. Globally unique.", + "type": "string" + }, + "kind": { + "default": "content#order", + "description": "Identifies what kind of resource this is. Value: the fixed string \"content#order\".", + "type": "string" + }, + "lineItems": { + "description": "Line items that are ordered.", + "items": { + "$ref": "OrderLineItem" + }, + "type": "array" + }, + "merchantId": { + "format": "uint64", + "type": "string" + }, + "merchantOrderId": { + "description": "Merchant-provided id of the order.", + "type": "string" + }, + "netAmount": { + "$ref": "Price", + "description": "The net amount for the order. For example, if an order was originally for a grand total of $100 and a refund was issued for $20, the net amount will be $80." + }, + "paymentMethod": { + "$ref": "OrderPaymentMethod", + "description": "The details of the payment method." + }, + "paymentStatus": { + "description": "The status of the payment.", + "type": "string" + }, + "placedDate": { + "description": "The date when the order was placed, in ISO 8601 format.", + "type": "string" + }, + "promotions": { + "description": "The details of the merchant provided promotions applied to the order. More details about the program are here.", + "items": { + "$ref": "OrderPromotion" + }, + "type": "array" + }, + "refunds": { + "description": "Refunds for the order.", + "items": { + "$ref": "OrderRefund" + }, + "type": "array" + }, + "shipments": { + "description": "Shipments of the order.", + "items": { + "$ref": "OrderShipment" + }, + "type": "array" + }, + "shippingCost": { + "$ref": "Price", + "description": "The total cost of shipping for all items." + }, + "shippingCostTax": { + "$ref": "Price", + "description": "The tax for the total shipping cost." + }, + "shippingOption": { + "description": "The requested shipping option.", + "type": "string" + }, + "status": { + "description": "The status of the order.", + "type": "string" + } + }, + "type": "object" + }, + "OrderAddress": { + "id": "OrderAddress", + "properties": { + "country": { + "description": "CLDR country code (e.g. \"US\").", + "type": "string" + }, + "fullAddress": { + "description": "Strings representing the lines of the printed label for mailing the order, for example:\nJohn Smith\n1600 Amphitheatre Parkway\nMountain View, CA, 94043\nUnited States", + "items": { + "type": "string" + }, + "type": "array" + }, + "isPostOfficeBox": { + "description": "Whether the address is a post office box.", + "type": "boolean" + }, + "locality": { + "description": "City, town or commune. May also include dependent localities or sublocalities (e.g. neighborhoods or suburbs).", + "type": "string" + }, + "postalCode": { + "description": "Postal Code or ZIP (e.g. \"94043\").", + "type": "string" + }, + "recipientName": { + "description": "Name of the recipient.", + "type": "string" + }, + "region": { + "description": "Top-level administrative subdivision of the country (e.g. \"CA\").", + "type": "string" + }, + "streetAddress": { + "description": "Street-level part of the address.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "OrderCancellation": { + "id": "OrderCancellation", + "properties": { + "actor": { + "description": "The actor that created the cancellation.", + "type": "string" + }, + "creationDate": { + "description": "Date on which the cancellation has been created, in ISO 8601 format.", + "type": "string" + }, + "quantity": { + "description": "The quantity that was canceled.", + "format": "uint32", + "type": "integer" + }, + "reason": { + "description": "The reason for the cancellation. Orders that are cancelled with a noInventory reason will lead to the removal of the product from POG until you make an update to that product. This will not affect your Shopping ads.", + "type": "string" + }, + "reasonText": { + "description": "The explanation of the reason.", + "type": "string" + } + }, + "type": "object" + }, + "OrderCustomer": { + "id": "OrderCustomer", + "properties": { + "email": { + "description": "Email address that should be used for order related communications. In certain cases this might not be a real users email, but a proxy email.", + "type": "string" + }, + "explicitMarketingPreference": { + "description": "If set, this indicates the user explicitly chose to opt in or out of providing marketing rights to the merchant. If unset, this indicates the user has already made this choice in a previous purchase, and was thus not shown the marketing right opt in/out checkbox during the checkout flow.", + "type": "boolean" + }, + "fullName": { + "description": "Full name of the customer.", + "type": "string" + } + }, + "type": "object" + }, + "OrderDeliveryDetails": { + "id": "OrderDeliveryDetails", + "properties": { + "address": { + "$ref": "OrderAddress", + "description": "The delivery address" + }, + "phoneNumber": { + "description": "The phone number of the person receiving the delivery.", + "type": "string" + } + }, + "type": "object" + }, + "OrderLineItem": { + "id": "OrderLineItem", + "properties": { + "annotations": { + "description": "Annotations that are attached to the line item.", + "items": { + "$ref": "OrderMerchantProvidedAnnotation" + }, + "type": "array" + }, + "cancellations": { + "description": "Cancellations of the line item.", + "items": { + "$ref": "OrderCancellation" + }, + "type": "array" + }, + "id": { + "description": "The id of the line item.", + "type": "string" + }, + "price": { + "$ref": "Price", + "description": "Total price for the line item. For example, if two items for $10 are purchased, the total price will be $20." + }, + "product": { + "$ref": "OrderLineItemProduct", + "description": "Product data from the time of the order placement." + }, + "quantityCanceled": { + "description": "Number of items canceled.", + "format": "uint32", + "type": "integer" + }, + "quantityDelivered": { + "description": "Number of items delivered.", + "format": "uint32", + "type": "integer" + }, + "quantityOrdered": { + "description": "Number of items ordered.", + "format": "uint32", + "type": "integer" + }, + "quantityPending": { + "description": "Number of items pending.", + "format": "uint32", + "type": "integer" + }, + "quantityReturned": { + "description": "Number of items returned.", + "format": "uint32", + "type": "integer" + }, + "quantityShipped": { + "description": "Number of items shipped.", + "format": "uint32", + "type": "integer" + }, + "returnInfo": { + "$ref": "OrderLineItemReturnInfo", + "description": "Details of the return policy for the line item." + }, + "returns": { + "description": "Returns of the line item.", + "items": { + "$ref": "OrderReturn" + }, + "type": "array" + }, + "shippingDetails": { + "$ref": "OrderLineItemShippingDetails", + "description": "Details of the requested shipping for the line item." + }, + "tax": { + "$ref": "Price", + "description": "Total tax amount for the line item. For example, if two items are purchased, and each have a cost tax of $2, the total tax amount will be $4." + } + }, + "type": "object" + }, + "OrderLineItemProduct": { + "id": "OrderLineItemProduct", + "properties": { + "brand": { + "description": "Brand of the item.", + "type": "string" + }, + "channel": { + "description": "The item's channel (online or local).", + "type": "string" + }, + "condition": { + "description": "Condition or state of the item.", + "type": "string" + }, + "contentLanguage": { + "description": "The two-letter ISO 639-1 language code for the item.", + "type": "string" + }, + "gtin": { + "description": "Global Trade Item Number (GTIN) of the item.", + "type": "string" + }, + "id": { + "description": "The REST id of the product.", + "type": "string" + }, + "imageLink": { + "description": "URL of an image of the item.", + "type": "string" + }, + "itemGroupId": { + "description": "Shared identifier for all variants of the same product.", + "type": "string" + }, + "mpn": { + "description": "Manufacturer Part Number (MPN) of the item.", + "type": "string" + }, + "offerId": { + "description": "An identifier of the item.", + "type": "string" + }, + "price": { + "$ref": "Price", + "description": "Price of the item." + }, + "shownImage": { + "description": "URL to the cached image shown to the user when order was placed.", + "type": "string" + }, + "targetCountry": { + "description": "The CLDR territory code of the target country of the product.", + "type": "string" + }, + "title": { + "description": "The title of the product.", + "type": "string" + }, + "variantAttributes": { + "description": "Variant attributes for the item. These are dimensions of the product, such as color, gender, material, pattern, and size. You can find a comprehensive list of variant attributes here.", + "items": { + "$ref": "OrderLineItemProductVariantAttribute" + }, + "type": "array" + } + }, + "type": "object" + }, + "OrderLineItemProductVariantAttribute": { + "id": "OrderLineItemProductVariantAttribute", + "properties": { + "dimension": { + "description": "The dimension of the variant.", + "type": "string" + }, + "value": { + "description": "The value for the dimension.", + "type": "string" + } + }, + "type": "object" + }, + "OrderLineItemReturnInfo": { + "id": "OrderLineItemReturnInfo", + "properties": { + "daysToReturn": { + "annotations": { + "required": [ + "content.orders.createtestorder" + ] + }, + "description": "How many days later the item can be returned.", + "format": "int32", + "type": "integer" + }, + "isReturnable": { + "annotations": { + "required": [ + "content.orders.createtestorder" + ] + }, + "description": "Whether the item is returnable.", + "type": "boolean" + }, + "policyUrl": { + "annotations": { + "required": [ + "content.orders.createtestorder" + ] + }, + "description": "URL of the item return policy.", + "type": "string" + } + }, + "type": "object" + }, + "OrderLineItemShippingDetails": { + "id": "OrderLineItemShippingDetails", + "properties": { + "deliverByDate": { + "annotations": { + "required": [ + "content.orders.createtestorder" + ] + }, + "description": "The delivery by date, in ISO 8601 format.", + "type": "string" + }, + "method": { + "$ref": "OrderLineItemShippingDetailsMethod", + "annotations": { + "required": [ + "content.orders.createtestorder" + ] + }, + "description": "Details of the shipping method." + }, + "shipByDate": { + "annotations": { + "required": [ + "content.orders.createtestorder" + ] + }, + "description": "The ship by date, in ISO 8601 format.", + "type": "string" + } + }, + "type": "object" + }, + "OrderLineItemShippingDetailsMethod": { + "id": "OrderLineItemShippingDetailsMethod", + "properties": { + "carrier": { + "description": "The carrier for the shipping. Optional. See shipments[].carrier for a list of acceptable values.", + "type": "string" + }, + "maxDaysInTransit": { + "annotations": { + "required": [ + "content.orders.createtestorder" + ] + }, + "description": "Maximum transit time.", + "format": "uint32", + "type": "integer" + }, + "methodName": { + "annotations": { + "required": [ + "content.orders.createtestorder" + ] + }, + "description": "The name of the shipping method.", + "type": "string" + }, + "minDaysInTransit": { + "annotations": { + "required": [ + "content.orders.createtestorder" + ] + }, + "description": "Minimum transit time.", + "format": "uint32", + "type": "integer" + } + }, + "type": "object" + }, + "OrderMerchantProvidedAnnotation": { + "id": "OrderMerchantProvidedAnnotation", + "properties": { + "key": { + "description": "Key for additional merchant provided (as key-value pairs) annotation about the line item.", + "type": "string" + }, + "value": { + "description": "Value for additional merchant provided (as key-value pairs) annotation about the line item.", + "type": "string" + } + }, + "type": "object" + }, + "OrderPaymentMethod": { + "id": "OrderPaymentMethod", + "properties": { + "billingAddress": { + "$ref": "OrderAddress", + "description": "The billing address." + }, + "expirationMonth": { + "description": "The card expiration month (January = 1, February = 2 etc.).", + "format": "int32", + "type": "integer" + }, + "expirationYear": { + "description": "The card expiration year (4-digit, e.g. 2015).", + "format": "int32", + "type": "integer" + }, + "lastFourDigits": { + "description": "The last four digits of the card number.", + "type": "string" + }, + "phoneNumber": { + "description": "The billing phone number.", + "type": "string" + }, + "type": { + "description": "The type of instrument.\n\nAcceptable values are: \n- \"AMEX\" \n- \"DISCOVER\" \n- \"JCB\" \n- \"MASTERCARD\" \n- \"UNIONPAY\" \n- \"VISA\" \n- \"\"", + "type": "string" + } + }, + "type": "object" + }, + "OrderPromotion": { + "id": "OrderPromotion", + "properties": { + "benefits": { + "items": { + "$ref": "OrderPromotionBenefit" + }, + "type": "array" + }, + "effectiveDates": { + "description": "The date and time frame when the promotion is active and ready for validation review. Note that the promotion live time may be delayed for a few hours due to the validation review.\nStart date and end date are separated by a forward slash (/). The start date is specified by the format (YYYY-MM-DD), followed by the letter ?T?, the time of the day when the sale starts (in Greenwich Mean Time, GMT), followed by an expression of the time zone for the sale. The end date is in the same format.", + "type": "string" + }, + "genericRedemptionCode": { + "description": "Optional. The text code that corresponds to the promotion when applied on the retailer?s website.", + "type": "string" + }, + "id": { + "description": "The unique ID of the promotion.", + "type": "string" + }, + "longTitle": { + "description": "The full title of the promotion.", + "type": "string" + }, + "productApplicability": { + "description": "Whether the promotion is applicable to all products or only specific products.", + "type": "string" + }, + "redemptionChannel": { + "description": "Indicates that the promotion is valid online.", + "type": "string" + } + }, + "type": "object" + }, + "OrderPromotionBenefit": { + "id": "OrderPromotionBenefit", + "properties": { + "discount": { + "$ref": "Price", + "description": "The discount in the order price when the promotion is applied." + }, + "offerIds": { + "description": "The OfferId(s) that were purchased in this order and map to this specific benefit of the promotion.", + "items": { + "type": "string" + }, + "type": "array" + }, + "subType": { + "description": "Further describes the benefit of the promotion. Note that we will expand on this enumeration as we support new promotion sub-types.", + "type": "string" + }, + "taxImpact": { + "$ref": "Price", + "description": "The impact on tax when the promotion is applied." + }, + "type": { + "description": "Describes whether the promotion applies to products (e.g. 20% off) or to shipping (e.g. Free Shipping).", + "type": "string" + } + }, + "type": "object" + }, + "OrderRefund": { + "id": "OrderRefund", + "properties": { + "actor": { + "description": "The actor that created the refund.", + "type": "string" + }, + "amount": { + "$ref": "Price", + "description": "The amount that is refunded." + }, + "creationDate": { + "description": "Date on which the item has been created, in ISO 8601 format.", + "type": "string" + }, + "reason": { + "description": "The reason for the refund.", + "type": "string" + }, + "reasonText": { + "description": "The explanation of the reason.", + "type": "string" + } + }, + "type": "object" + }, + "OrderReturn": { + "id": "OrderReturn", + "properties": { + "actor": { + "description": "The actor that created the refund.", + "type": "string" + }, + "creationDate": { + "description": "Date on which the item has been created, in ISO 8601 format.", + "type": "string" + }, + "quantity": { + "description": "Quantity that is returned.", + "format": "uint32", + "type": "integer" + }, + "reason": { + "description": "The reason for the return.", + "type": "string" + }, + "reasonText": { + "description": "The explanation of the reason.", + "type": "string" + } + }, + "type": "object" + }, + "OrderShipment": { + "id": "OrderShipment", + "properties": { + "carrier": { + "description": "The carrier handling the shipment.\n\nAcceptable values are: \n- \"gsx\" \n- \"ups\" \n- \"usps\" \n- \"fedex\" \n- \"dhl\" \n- \"ecourier\" \n- \"cxt\" \n- \"google\" \n- \"ontrac\" \n- \"emsy\" \n- \"ont\" \n- \"deliv\" \n- \"dynamex\" \n- \"lasership\" \n- \"mpx\" \n- \"uds\"", + "type": "string" + }, + "creationDate": { + "description": "Date on which the shipment has been created, in ISO 8601 format.", + "type": "string" + }, + "deliveryDate": { + "description": "Date on which the shipment has been delivered, in ISO 8601 format. Present only if status is delievered", + "type": "string" + }, + "id": { + "description": "The id of the shipment.", + "type": "string" + }, + "lineItems": { + "description": "The line items that are shipped.", + "items": { + "$ref": "OrderShipmentLineItemShipment" + }, + "type": "array" + }, + "status": { + "description": "The status of the shipment.", + "type": "string" + }, + "trackingId": { + "description": "The tracking id for the shipment.", + "type": "string" + } + }, + "type": "object" + }, + "OrderShipmentLineItemShipment": { + "id": "OrderShipmentLineItemShipment", + "properties": { + "lineItemId": { + "description": "The id of the line item that is shipped. Either lineItemId or productId is required.", + "type": "string" + }, + "productId": { + "description": "The ID of the product to ship. This is the REST ID used in the products service. Either lineItemId or productId is required.", + "type": "string" + }, + "quantity": { + "description": "The quantity that is shipped.", + "format": "uint32", + "type": "integer" + } + }, + "type": "object" + }, + "OrdersAcknowledgeRequest": { + "id": "OrdersAcknowledgeRequest", + "properties": { + "operationId": { + "description": "The ID of the operation. Unique across all operations for a given order.", + "type": "string" + } + }, + "type": "object" + }, + "OrdersAcknowledgeResponse": { + "id": "OrdersAcknowledgeResponse", + "properties": { + "executionStatus": { + "description": "The status of the execution.", + "type": "string" + }, + "kind": { + "default": "content#ordersAcknowledgeResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"content#ordersAcknowledgeResponse\".", + "type": "string" + } + }, + "type": "object" + }, + "OrdersAdvanceTestOrderResponse": { + "id": "OrdersAdvanceTestOrderResponse", + "properties": { + "kind": { + "default": "content#ordersAdvanceTestOrderResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"content#ordersAdvanceTestOrderResponse\".", + "type": "string" + } + }, + "type": "object" + }, + "OrdersCancelLineItemRequest": { + "id": "OrdersCancelLineItemRequest", + "properties": { + "amount": { + "$ref": "Price", + "description": "Amount to refund for the cancelation. Optional. If not set, Google will calculate the default based on the price and tax of the items involved. The amount must not be larger than the net amount left on the order." + }, + "amountPretax": { + "$ref": "Price", + "description": "Amount to refund for the cancelation. Optional. If not set, Google will calculate the default based on the price and tax of the items involved. The amount must not be larger than the net amount left on the order." + }, + "amountTax": { + "$ref": "Price", + "description": "Tax amount that correspond to cancellation amount in amountPretax." + }, + "lineItemId": { + "description": "The ID of the line item to cancel. Either lineItemId or productId is required.", + "type": "string" + }, + "operationId": { + "description": "The ID of the operation. Unique across all operations for a given order.", + "type": "string" + }, + "productId": { + "description": "The ID of the product to cancel. This is the REST ID used in the products service. Either lineItemId or productId is required.", + "type": "string" + }, + "quantity": { + "description": "The quantity to cancel.", + "format": "uint32", + "type": "integer" + }, + "reason": { + "description": "The reason for the cancellation.", + "type": "string" + }, + "reasonText": { + "description": "The explanation of the reason.", + "type": "string" + } + }, + "type": "object" + }, + "OrdersCancelLineItemResponse": { + "id": "OrdersCancelLineItemResponse", + "properties": { + "executionStatus": { + "description": "The status of the execution.", + "type": "string" + }, + "kind": { + "default": "content#ordersCancelLineItemResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"content#ordersCancelLineItemResponse\".", + "type": "string" + } + }, + "type": "object" + }, + "OrdersCancelRequest": { + "id": "OrdersCancelRequest", + "properties": { + "operationId": { + "description": "The ID of the operation. Unique across all operations for a given order.", + "type": "string" + }, + "reason": { + "description": "The reason for the cancellation.", + "type": "string" + }, + "reasonText": { + "description": "The explanation of the reason.", + "type": "string" + } + }, + "type": "object" + }, + "OrdersCancelResponse": { + "id": "OrdersCancelResponse", + "properties": { + "executionStatus": { + "description": "The status of the execution.", + "type": "string" + }, + "kind": { + "default": "content#ordersCancelResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"content#ordersCancelResponse\".", + "type": "string" + } + }, + "type": "object" + }, + "OrdersCreateTestOrderRequest": { + "id": "OrdersCreateTestOrderRequest", + "properties": { + "templateName": { + "description": "The test order template to use. Specify as an alternative to testOrder as a shortcut for retrieving a template and then creating an order using that template.", + "type": "string" + }, + "testOrder": { + "$ref": "TestOrder", + "description": "The test order to create." + } + }, + "type": "object" + }, + "OrdersCreateTestOrderResponse": { + "id": "OrdersCreateTestOrderResponse", + "properties": { + "kind": { + "default": "content#ordersCreateTestOrderResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"content#ordersCreateTestOrderResponse\".", + "type": "string" + }, + "orderId": { + "description": "The ID of the newly created test order.", + "type": "string" + } + }, + "type": "object" + }, + "OrdersCustomBatchRequest": { + "id": "OrdersCustomBatchRequest", + "properties": { + "entries": { + "description": "The request entries to be processed in the batch.", + "items": { + "$ref": "OrdersCustomBatchRequestEntry" + }, + "type": "array" + } + }, + "type": "object" + }, + "OrdersCustomBatchRequestEntry": { + "id": "OrdersCustomBatchRequestEntry", + "properties": { + "batchId": { + "description": "An entry ID, unique within the batch request.", + "format": "uint32", + "type": "integer" + }, + "cancel": { + "$ref": "OrdersCustomBatchRequestEntryCancel", + "description": "Required for cancel method." + }, + "cancelLineItem": { + "$ref": "OrdersCustomBatchRequestEntryCancelLineItem", + "description": "Required for cancelLineItem method." + }, + "inStoreRefundLineItem": { + "$ref": "OrdersCustomBatchRequestEntryInStoreRefundLineItem", + "description": "Required for inStoreReturnLineItem method." + }, + "merchantId": { + "description": "The ID of the managing account.", + "format": "uint64", + "type": "string" + }, + "merchantOrderId": { + "description": "The merchant order id. Required for updateMerchantOrderId and getByMerchantOrderId methods.", + "type": "string" + }, + "method": { + "description": "The method to apply.", + "type": "string" + }, + "operationId": { + "description": "The ID of the operation. Unique across all operations for a given order. Required for all methods beside get and getByMerchantOrderId.", + "type": "string" + }, + "orderId": { + "description": "The ID of the order. Required for all methods beside getByMerchantOrderId.", + "type": "string" + }, + "refund": { + "$ref": "OrdersCustomBatchRequestEntryRefund", + "description": "Required for refund method." + }, + "rejectReturnLineItem": { + "$ref": "OrdersCustomBatchRequestEntryRejectReturnLineItem", + "description": "Required for rejectReturnLineItem method." + }, + "returnLineItem": { + "$ref": "OrdersCustomBatchRequestEntryReturnLineItem", + "description": "Required for returnLineItem method." + }, + "returnRefundLineItem": { + "$ref": "OrdersCustomBatchRequestEntryReturnRefundLineItem", + "description": "Required for returnRefundLineItem method." + }, + "setLineItemMetadata": { + "$ref": "OrdersCustomBatchRequestEntrySetLineItemMetadata", + "description": "Required for setLineItemMetadata method." + }, + "shipLineItems": { + "$ref": "OrdersCustomBatchRequestEntryShipLineItems", + "description": "Required for shipLineItems method." + }, + "updateLineItemShippingDetails": { + "$ref": "OrdersCustomBatchRequestEntryUpdateLineItemShippingDetails", + "description": "Required for updateLineItemShippingDate method." + }, + "updateShipment": { + "$ref": "OrdersCustomBatchRequestEntryUpdateShipment", + "description": "Required for updateShipment method." + } + }, + "type": "object" + }, + "OrdersCustomBatchRequestEntryCancel": { + "id": "OrdersCustomBatchRequestEntryCancel", + "properties": { + "reason": { + "description": "The reason for the cancellation.", + "type": "string" + }, + "reasonText": { + "description": "The explanation of the reason.", + "type": "string" + } + }, + "type": "object" + }, + "OrdersCustomBatchRequestEntryCancelLineItem": { + "id": "OrdersCustomBatchRequestEntryCancelLineItem", + "properties": { + "amount": { + "$ref": "Price", + "description": "Amount to refund for the cancelation. Optional. If not set, Google will calculate the default based on the price and tax of the items involved. The amount must not be larger than the net amount left on the order." + }, + "amountPretax": { + "$ref": "Price", + "description": "Amount to refund for the cancelation. Optional. If not set, Google will calculate the default based on the price and tax of the items involved. The amount must not be larger than the net amount left on the order." + }, + "amountTax": { + "$ref": "Price", + "description": "Tax amount that correspond to cancellation amount in amountPretax." + }, + "lineItemId": { + "description": "The ID of the line item to cancel. Either lineItemId or productId is required.", + "type": "string" + }, + "productId": { + "description": "The ID of the product to cancel. This is the REST ID used in the products service. Either lineItemId or productId is required.", + "type": "string" + }, + "quantity": { + "description": "The quantity to cancel.", + "format": "uint32", + "type": "integer" + }, + "reason": { + "description": "The reason for the cancellation.", + "type": "string" + }, + "reasonText": { + "description": "The explanation of the reason.", + "type": "string" + } + }, + "type": "object" + }, + "OrdersCustomBatchRequestEntryInStoreRefundLineItem": { + "id": "OrdersCustomBatchRequestEntryInStoreRefundLineItem", + "properties": { + "amountPretax": { + "$ref": "Price", + "description": "The amount that is refunded. Required." + }, + "amountTax": { + "$ref": "Price", + "description": "Tax amount that correspond to refund amount in amountPretax. Required." + }, + "lineItemId": { + "description": "The ID of the line item to return. Either lineItemId or productId is required.", + "type": "string" + }, + "productId": { + "description": "The ID of the product to return. This is the REST ID used in the products service. Either lineItemId or productId is required.", + "type": "string" + }, + "quantity": { + "description": "The quantity to return and refund.", + "format": "uint32", + "type": "integer" + }, + "reason": { + "description": "The reason for the return.", + "type": "string" + }, + "reasonText": { + "description": "The explanation of the reason.", + "type": "string" + } + }, + "type": "object" + }, + "OrdersCustomBatchRequestEntryRefund": { + "id": "OrdersCustomBatchRequestEntryRefund", + "properties": { + "amount": { + "$ref": "Price", + "description": "The amount that is refunded." + }, + "amountPretax": { + "$ref": "Price", + "description": "The amount that is refunded. Either amount or amountPretax and amountTax should be filled." + }, + "amountTax": { + "$ref": "Price", + "description": "Tax amount that correspond to refund amount in amountPretax." + }, + "reason": { + "description": "The reason for the refund.", + "type": "string" + }, + "reasonText": { + "description": "The explanation of the reason.", + "type": "string" + } + }, + "type": "object" + }, + "OrdersCustomBatchRequestEntryRejectReturnLineItem": { + "id": "OrdersCustomBatchRequestEntryRejectReturnLineItem", + "properties": { + "lineItemId": { + "description": "The ID of the line item to return. Either lineItemId or productId is required.", + "type": "string" + }, + "productId": { + "description": "The ID of the product to return. This is the REST ID used in the products service. Either lineItemId or productId is required.", + "type": "string" + }, + "quantity": { + "description": "The quantity to return and refund.", + "format": "uint32", + "type": "integer" + }, + "reason": { + "description": "The reason for the return.", + "type": "string" + }, + "reasonText": { + "description": "The explanation of the reason.", + "type": "string" + } + }, + "type": "object" + }, + "OrdersCustomBatchRequestEntryReturnLineItem": { + "id": "OrdersCustomBatchRequestEntryReturnLineItem", + "properties": { + "lineItemId": { + "description": "The ID of the line item to return. Either lineItemId or productId is required.", + "type": "string" + }, + "productId": { + "description": "The ID of the product to return. This is the REST ID used in the products service. Either lineItemId or productId is required.", + "type": "string" + }, + "quantity": { + "description": "The quantity to return.", + "format": "uint32", + "type": "integer" + }, + "reason": { + "description": "The reason for the return.", + "type": "string" + }, + "reasonText": { + "description": "The explanation of the reason.", + "type": "string" + } + }, + "type": "object" + }, + "OrdersCustomBatchRequestEntryReturnRefundLineItem": { + "id": "OrdersCustomBatchRequestEntryReturnRefundLineItem", + "properties": { + "amountPretax": { + "$ref": "Price", + "description": "The amount that is refunded. Optional, but if filled then both amountPretax and amountTax must be set." + }, + "amountTax": { + "$ref": "Price", + "description": "Tax amount that correspond to refund amount in amountPretax." + }, + "lineItemId": { + "description": "The ID of the line item to return. Either lineItemId or productId is required.", + "type": "string" + }, + "productId": { + "description": "The ID of the product to return. This is the REST ID used in the products service. Either lineItemId or productId is required.", + "type": "string" + }, + "quantity": { + "description": "The quantity to return and refund.", + "format": "uint32", + "type": "integer" + }, + "reason": { + "description": "The reason for the return.", + "type": "string" + }, + "reasonText": { + "description": "The explanation of the reason.", + "type": "string" + } + }, + "type": "object" + }, + "OrdersCustomBatchRequestEntrySetLineItemMetadata": { + "id": "OrdersCustomBatchRequestEntrySetLineItemMetadata", + "properties": { + "annotations": { + "items": { + "$ref": "OrderMerchantProvidedAnnotation" + }, + "type": "array" + }, + "lineItemId": { + "description": "The ID of the line item to set metadata. Either lineItemId or productId is required.", + "type": "string" + }, + "productId": { + "description": "The ID of the product to set metadata. This is the REST ID used in the products service. Either lineItemId or productId is required.", + "type": "string" + } + }, + "type": "object" + }, + "OrdersCustomBatchRequestEntryShipLineItems": { + "id": "OrdersCustomBatchRequestEntryShipLineItems", + "properties": { + "carrier": { + "description": "Deprecated. Please use shipmentInfo instead. The carrier handling the shipment. See shipments[].carrier in the Orders resource representation for a list of acceptable values.", + "type": "string" + }, + "lineItems": { + "description": "Line items to ship.", + "items": { + "$ref": "OrderShipmentLineItemShipment" + }, + "type": "array" + }, + "shipmentId": { + "description": "Deprecated. Please use shipmentInfo instead. The ID of the shipment.", + "type": "string" + }, + "shipmentInfos": { + "description": "Shipment information. This field is repeated because a single line item can be shipped in several packages (and have several tracking IDs).", + "items": { + "$ref": "OrdersCustomBatchRequestEntryShipLineItemsShipmentInfo" + }, + "type": "array" + }, + "trackingId": { + "description": "Deprecated. Please use shipmentInfo instead. The tracking id for the shipment.", + "type": "string" + } + }, + "type": "object" + }, + "OrdersCustomBatchRequestEntryShipLineItemsShipmentInfo": { + "id": "OrdersCustomBatchRequestEntryShipLineItemsShipmentInfo", + "properties": { + "carrier": { + "description": "The carrier handling the shipment. See shipments[].carrier in the Orders resource representation for a list of acceptable values.", + "type": "string" + }, + "shipmentId": { + "annotations": { + "required": [ + "content.orders.shiplineitems" + ] + }, + "description": "The ID of the shipment.", + "type": "string" + }, + "trackingId": { + "description": "The tracking id for the shipment.", + "type": "string" + } + }, + "type": "object" + }, + "OrdersCustomBatchRequestEntryUpdateLineItemShippingDetails": { + "id": "OrdersCustomBatchRequestEntryUpdateLineItemShippingDetails", + "properties": { + "deliverByDate": { + "description": "Updated delivery by date, in ISO 8601 format. If not specified only ship by date is updated.", + "type": "string" + }, + "lineItemId": { + "description": "The ID of the line item to set metadata. Either lineItemId or productId is required.", + "type": "string" + }, + "productId": { + "description": "The ID of the product to set metadata. This is the REST ID used in the products service. Either lineItemId or productId is required.", + "type": "string" + }, + "shipByDate": { + "description": "Updated ship by date, in ISO 8601 format. If not specified only deliver by date is updated.", + "type": "string" + } + }, + "type": "object" + }, + "OrdersCustomBatchRequestEntryUpdateShipment": { + "id": "OrdersCustomBatchRequestEntryUpdateShipment", + "properties": { + "carrier": { + "description": "The carrier handling the shipment. Not updated if missing. See shipments[].carrier in the Orders resource representation for a list of acceptable values.", + "type": "string" + }, + "shipmentId": { + "description": "The ID of the shipment.", + "type": "string" + }, + "status": { + "description": "New status for the shipment. Not updated if missing.", + "type": "string" + }, + "trackingId": { + "description": "The tracking id for the shipment. Not updated if missing.", + "type": "string" + } + }, + "type": "object" + }, + "OrdersCustomBatchResponse": { + "id": "OrdersCustomBatchResponse", + "properties": { + "entries": { + "description": "The result of the execution of the batch requests.", + "items": { + "$ref": "OrdersCustomBatchResponseEntry" + }, + "type": "array" + }, + "kind": { + "default": "content#ordersCustomBatchResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"content#ordersCustomBatchResponse\".", + "type": "string" + } + }, + "type": "object" + }, + "OrdersCustomBatchResponseEntry": { + "id": "OrdersCustomBatchResponseEntry", + "properties": { + "batchId": { + "description": "The ID of the request entry this entry responds to.", + "format": "uint32", + "type": "integer" + }, + "errors": { + "$ref": "Errors", + "description": "A list of errors defined if and only if the request failed." + }, + "executionStatus": { + "description": "The status of the execution. Only defined if the method is not get or getByMerchantOrderId and if the request was successful.", + "type": "string" + }, + "kind": { + "default": "content#ordersCustomBatchResponseEntry", + "description": "Identifies what kind of resource this is. Value: the fixed string \"content#ordersCustomBatchResponseEntry\".", + "type": "string" + }, + "order": { + "$ref": "Order", + "description": "The retrieved order. Only defined if the method is get and if the request was successful." + } + }, + "type": "object" + }, + "OrdersGetByMerchantOrderIdResponse": { + "id": "OrdersGetByMerchantOrderIdResponse", + "properties": { + "kind": { + "default": "content#ordersGetByMerchantOrderIdResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"content#ordersGetByMerchantOrderIdResponse\".", + "type": "string" + }, + "order": { + "$ref": "Order", + "description": "The requested order." + } + }, + "type": "object" + }, + "OrdersGetTestOrderTemplateResponse": { + "id": "OrdersGetTestOrderTemplateResponse", + "properties": { + "kind": { + "default": "content#ordersGetTestOrderTemplateResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"content#ordersGetTestOrderTemplateResponse\".", + "type": "string" + }, + "template": { + "$ref": "TestOrder", + "description": "The requested test order template." + } + }, + "type": "object" + }, + "OrdersInStoreRefundLineItemRequest": { + "id": "OrdersInStoreRefundLineItemRequest", + "properties": { + "amountPretax": { + "$ref": "Price", + "description": "The amount that is refunded. Required." + }, + "amountTax": { + "$ref": "Price", + "description": "Tax amount that correspond to refund amount in amountPretax. Required." + }, + "lineItemId": { + "description": "The ID of the line item to return. Either lineItemId or productId is required.", + "type": "string" + }, + "operationId": { + "description": "The ID of the operation. Unique across all operations for a given order.", + "type": "string" + }, + "productId": { + "description": "The ID of the product to return. This is the REST ID used in the products service. Either lineItemId or productId is required.", + "type": "string" + }, + "quantity": { + "description": "The quantity to return and refund.", + "format": "uint32", + "type": "integer" + }, + "reason": { + "description": "The reason for the return.", + "type": "string" + }, + "reasonText": { + "description": "The explanation of the reason.", + "type": "string" + } + }, + "type": "object" + }, + "OrdersInStoreRefundLineItemResponse": { + "id": "OrdersInStoreRefundLineItemResponse", + "properties": { + "executionStatus": { + "description": "The status of the execution.", + "type": "string" + }, + "kind": { + "default": "content#ordersInStoreRefundLineItemResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"content#ordersInStoreRefundLineItemResponse\".", + "type": "string" + } + }, + "type": "object" + }, + "OrdersListResponse": { + "id": "OrdersListResponse", + "properties": { + "kind": { + "default": "content#ordersListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"content#ordersListResponse\".", + "type": "string" + }, + "nextPageToken": { + "description": "The token for the retrieval of the next page of orders.", + "type": "string" + }, + "resources": { + "items": { + "$ref": "Order" + }, + "type": "array" + } + }, + "type": "object" + }, + "OrdersRefundRequest": { + "id": "OrdersRefundRequest", + "properties": { + "amount": { + "$ref": "Price", + "description": "The amount that is refunded." + }, + "amountPretax": { + "$ref": "Price", + "description": "The amount that is refunded. Either amount or amountPretax and amountTax should be filled." + }, + "amountTax": { + "$ref": "Price", + "description": "Tax amount that correspond to refund amount in amountPretax." + }, + "operationId": { + "description": "The ID of the operation. Unique across all operations for a given order.", + "type": "string" + }, + "reason": { + "description": "The reason for the refund.", + "type": "string" + }, + "reasonText": { + "description": "The explanation of the reason.", + "type": "string" + } + }, + "type": "object" + }, + "OrdersRefundResponse": { + "id": "OrdersRefundResponse", + "properties": { + "executionStatus": { + "description": "The status of the execution.", + "type": "string" + }, + "kind": { + "default": "content#ordersRefundResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"content#ordersRefundResponse\".", + "type": "string" + } + }, + "type": "object" + }, + "OrdersRejectReturnLineItemRequest": { + "id": "OrdersRejectReturnLineItemRequest", + "properties": { + "lineItemId": { + "description": "The ID of the line item to return. Either lineItemId or productId is required.", + "type": "string" + }, + "operationId": { + "description": "The ID of the operation. Unique across all operations for a given order.", + "type": "string" + }, + "productId": { + "description": "The ID of the product to return. This is the REST ID used in the products service. Either lineItemId or productId is required.", + "type": "string" + }, + "quantity": { + "description": "The quantity to return and refund.", + "format": "uint32", + "type": "integer" + }, + "reason": { + "description": "The reason for the return.", + "type": "string" + }, + "reasonText": { + "description": "The explanation of the reason.", + "type": "string" + } + }, + "type": "object" + }, + "OrdersRejectReturnLineItemResponse": { + "id": "OrdersRejectReturnLineItemResponse", + "properties": { + "executionStatus": { + "description": "The status of the execution.", + "type": "string" + }, + "kind": { + "default": "content#ordersRejectReturnLineItemResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"content#ordersRejectReturnLineItemResponse\".", + "type": "string" + } + }, + "type": "object" + }, + "OrdersReturnLineItemRequest": { + "id": "OrdersReturnLineItemRequest", + "properties": { + "lineItemId": { + "description": "The ID of the line item to return. Either lineItemId or productId is required.", + "type": "string" + }, + "operationId": { + "description": "The ID of the operation. Unique across all operations for a given order.", + "type": "string" + }, + "productId": { + "description": "The ID of the product to return. This is the REST ID used in the products service. Either lineItemId or productId is required.", + "type": "string" + }, + "quantity": { + "description": "The quantity to return.", + "format": "uint32", + "type": "integer" + }, + "reason": { + "description": "The reason for the return.", + "type": "string" + }, + "reasonText": { + "description": "The explanation of the reason.", + "type": "string" + } + }, + "type": "object" + }, + "OrdersReturnLineItemResponse": { + "id": "OrdersReturnLineItemResponse", + "properties": { + "executionStatus": { + "description": "The status of the execution.", + "type": "string" + }, + "kind": { + "default": "content#ordersReturnLineItemResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"content#ordersReturnLineItemResponse\".", + "type": "string" + } + }, + "type": "object" + }, + "OrdersReturnRefundLineItemRequest": { + "id": "OrdersReturnRefundLineItemRequest", + "properties": { + "amountPretax": { + "$ref": "Price", + "description": "The amount that is refunded. Optional, but if filled then both amountPretax and amountTax must be set." + }, + "amountTax": { + "$ref": "Price", + "description": "Tax amount that correspond to refund amount in amountPretax." + }, + "lineItemId": { + "description": "The ID of the line item to return. Either lineItemId or productId is required.", + "type": "string" + }, + "operationId": { + "description": "The ID of the operation. Unique across all operations for a given order.", + "type": "string" + }, + "productId": { + "description": "The ID of the product to return. This is the REST ID used in the products service. Either lineItemId or productId is required.", + "type": "string" + }, + "quantity": { + "description": "The quantity to return and refund.", + "format": "uint32", + "type": "integer" + }, + "reason": { + "description": "The reason for the return.", + "type": "string" + }, + "reasonText": { + "description": "The explanation of the reason.", + "type": "string" + } + }, + "type": "object" + }, + "OrdersReturnRefundLineItemResponse": { + "id": "OrdersReturnRefundLineItemResponse", + "properties": { + "executionStatus": { + "description": "The status of the execution.", + "type": "string" + }, + "kind": { + "default": "content#ordersReturnRefundLineItemResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"content#ordersReturnRefundLineItemResponse\".", + "type": "string" + } + }, + "type": "object" + }, + "OrdersSetLineItemMetadataRequest": { + "id": "OrdersSetLineItemMetadataRequest", + "properties": { + "annotations": { + "items": { + "$ref": "OrderMerchantProvidedAnnotation" + }, + "type": "array" + }, + "lineItemId": { + "description": "The ID of the line item to set metadata. Either lineItemId or productId is required.", + "type": "string" + }, + "operationId": { + "description": "The ID of the operation. Unique across all operations for a given order.", + "type": "string" + }, + "productId": { + "description": "The ID of the product to set metadata. This is the REST ID used in the products service. Either lineItemId or productId is required.", + "type": "string" + } + }, + "type": "object" + }, + "OrdersSetLineItemMetadataResponse": { + "id": "OrdersSetLineItemMetadataResponse", + "properties": { + "executionStatus": { + "description": "The status of the execution.", + "type": "string" + }, + "kind": { + "default": "content#ordersSetLineItemMetadataResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"content#ordersSetLineItemMetadataResponse\".", + "type": "string" + } + }, + "type": "object" + }, + "OrdersShipLineItemsRequest": { + "id": "OrdersShipLineItemsRequest", + "properties": { + "carrier": { + "description": "Deprecated. Please use shipmentInfo instead. The carrier handling the shipment. See shipments[].carrier in the Orders resource representation for a list of acceptable values.", + "type": "string" + }, + "lineItems": { + "description": "Line items to ship.", + "items": { + "$ref": "OrderShipmentLineItemShipment" + }, + "type": "array" + }, + "operationId": { + "description": "The ID of the operation. Unique across all operations for a given order.", + "type": "string" + }, + "shipmentId": { + "description": "Deprecated. Please use shipmentInfo instead. The ID of the shipment.", + "type": "string" + }, + "shipmentInfos": { + "description": "Shipment information. This field is repeated because a single line item can be shipped in several packages (and have several tracking IDs).", + "items": { + "$ref": "OrdersCustomBatchRequestEntryShipLineItemsShipmentInfo" + }, + "type": "array" + }, + "trackingId": { + "description": "Deprecated. Please use shipmentInfo instead. The tracking id for the shipment.", + "type": "string" + } + }, + "type": "object" + }, + "OrdersShipLineItemsResponse": { + "id": "OrdersShipLineItemsResponse", + "properties": { + "executionStatus": { + "description": "The status of the execution.", + "type": "string" + }, + "kind": { + "default": "content#ordersShipLineItemsResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"content#ordersShipLineItemsResponse\".", + "type": "string" + } + }, + "type": "object" + }, + "OrdersUpdateLineItemShippingDetailsRequest": { + "id": "OrdersUpdateLineItemShippingDetailsRequest", + "properties": { + "deliverByDate": { + "description": "Updated delivery by date, in ISO 8601 format. If not specified only ship by date is updated.", + "type": "string" + }, + "lineItemId": { + "description": "The ID of the line item to set metadata. Either lineItemId or productId is required.", + "type": "string" + }, + "operationId": { + "description": "The ID of the operation. Unique across all operations for a given order.", + "type": "string" + }, + "productId": { + "description": "The ID of the product to set metadata. This is the REST ID used in the products service. Either lineItemId or productId is required.", + "type": "string" + }, + "shipByDate": { + "description": "Updated ship by date, in ISO 8601 format. If not specified only deliver by date is updated.", + "type": "string" + } + }, + "type": "object" + }, + "OrdersUpdateLineItemShippingDetailsResponse": { + "id": "OrdersUpdateLineItemShippingDetailsResponse", + "properties": { + "executionStatus": { + "description": "The status of the execution.", + "type": "string" + }, + "kind": { + "default": "content#ordersUpdateLineItemShippingDetailsResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"content#ordersUpdateLineItemShippingDetailsResponse\".", + "type": "string" + } + }, + "type": "object" + }, + "OrdersUpdateMerchantOrderIdRequest": { + "id": "OrdersUpdateMerchantOrderIdRequest", + "properties": { + "merchantOrderId": { + "description": "The merchant order id to be assigned to the order. Must be unique per merchant.", + "type": "string" + }, + "operationId": { + "description": "The ID of the operation. Unique across all operations for a given order.", + "type": "string" + } + }, + "type": "object" + }, + "OrdersUpdateMerchantOrderIdResponse": { + "id": "OrdersUpdateMerchantOrderIdResponse", + "properties": { + "executionStatus": { + "description": "The status of the execution.", + "type": "string" + }, + "kind": { + "default": "content#ordersUpdateMerchantOrderIdResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"content#ordersUpdateMerchantOrderIdResponse\".", + "type": "string" + } + }, + "type": "object" + }, + "OrdersUpdateShipmentRequest": { + "id": "OrdersUpdateShipmentRequest", + "properties": { + "carrier": { + "description": "The carrier handling the shipment. Not updated if missing. See shipments[].carrier in the Orders resource representation for a list of acceptable values.", + "type": "string" + }, + "operationId": { + "description": "The ID of the operation. Unique across all operations for a given order.", + "type": "string" + }, + "shipmentId": { + "description": "The ID of the shipment.", + "type": "string" + }, + "status": { + "description": "New status for the shipment. Not updated if missing.", + "type": "string" + }, + "trackingId": { + "description": "The tracking id for the shipment. Not updated if missing.", + "type": "string" + } + }, + "type": "object" + }, + "OrdersUpdateShipmentResponse": { + "id": "OrdersUpdateShipmentResponse", + "properties": { + "executionStatus": { + "description": "The status of the execution.", + "type": "string" + }, + "kind": { + "default": "content#ordersUpdateShipmentResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"content#ordersUpdateShipmentResponse\".", + "type": "string" + } + }, + "type": "object" + }, + "PosCustomBatchRequest": { + "id": "PosCustomBatchRequest", + "properties": { + "entries": { + "description": "The request entries to be processed in the batch.", + "items": { + "$ref": "PosCustomBatchRequestEntry" + }, + "type": "array" + } + }, + "type": "object" + }, + "PosCustomBatchRequestEntry": { + "id": "PosCustomBatchRequestEntry", + "properties": { + "batchId": { + "description": "An entry ID, unique within the batch request.", + "format": "uint32", + "type": "integer" + }, + "inventory": { + "$ref": "PosInventory", + "description": "The inventory to submit. Set this only if the method is inventory." + }, + "merchantId": { + "description": "The ID of the POS provider.", + "format": "uint64", + "type": "string" + }, + "method": { + "type": "string" + }, + "sale": { + "$ref": "PosSale", + "description": "The sale information to submit. Set this only if the method is sale." + }, + "store": { + "$ref": "PosStore", + "description": "The store information to submit. Set this only if the method is insert." + }, + "storeCode": { + "description": "The store code. Required only to get/submit store information.", + "type": "string" + }, + "targetMerchantId": { + "description": "The ID of the account for which to get/submit data.", + "format": "uint64", + "type": "string" + } + }, + "type": "object" + }, + "PosCustomBatchResponse": { + "id": "PosCustomBatchResponse", + "properties": { + "entries": { + "description": "The result of the execution of the batch requests.", + "items": { + "$ref": "PosCustomBatchResponseEntry" + }, + "type": "array" + }, + "kind": { + "default": "content#posCustomBatchResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"content#posCustomBatchResponse\".", + "type": "string" + } + }, + "type": "object" + }, + "PosCustomBatchResponseEntry": { + "id": "PosCustomBatchResponseEntry", + "properties": { + "batchId": { + "description": "The ID of the request entry to which this entry responds.", + "format": "uint32", + "type": "integer" + }, + "errors": { + "$ref": "Errors", + "description": "A list of errors defined if, and only if, the request failed." + }, + "inventory": { + "$ref": "PosInventory", + "description": "The updated inventory information." + }, + "kind": { + "default": "content#posCustomBatchResponseEntry", + "description": "Identifies what kind of resource this is. Value: the fixed string \"content#posCustomBatchResponseEntry\".", + "type": "string" + }, + "sale": { + "$ref": "PosSale", + "description": "The updated sale information." + }, + "store": { + "$ref": "PosStore", + "description": "The retrieved or updated store information." + } + }, + "type": "object" + }, + "PosInventory": { + "description": "The absolute quantity of an item available at the given store.", + "id": "PosInventory", + "properties": { + "contentLanguage": { + "annotations": { + "required": [ + "content.pos.inventory" + ] + }, + "description": "The two-letter ISO 639-1 language code for the item.", + "type": "string" + }, + "gtin": { + "description": "Global Trade Item Number.", + "type": "string" + }, + "itemId": { + "annotations": { + "required": [ + "content.pos.inventory" + ] + }, + "description": "A unique identifier for the item.", + "type": "string" + }, + "kind": { + "default": "content#posInventory", + "description": "Identifies what kind of resource this is. Value: the fixed string \"content#posInventory\".", + "type": "string" + }, + "price": { + "$ref": "Price", + "annotations": { + "required": [ + "content.pos.inventory" + ] + }, + "description": "The current price of the item." + }, + "quantity": { + "annotations": { + "required": [ + "content.pos.inventory" + ] + }, + "description": "The available quantity of the item.", + "format": "int64", + "type": "string" + }, + "storeCode": { + "annotations": { + "required": [ + "content.pos.inventory" + ] + }, + "description": "The identifier of the merchant's store. Either a storeCode inserted via the API or the code of the store in Google My Business.", + "type": "string" + }, + "targetCountry": { + "annotations": { + "required": [ + "content.pos.inventory" + ] + }, + "description": "The CLDR territory code for the item.", + "type": "string" + }, + "timestamp": { + "annotations": { + "required": [ + "content.pos.inventory" + ] + }, + "description": "The inventory timestamp, in ISO 8601 format.", + "type": "string" + } + }, + "type": "object" + }, + "PosInventoryRequest": { + "id": "PosInventoryRequest", + "properties": { + "contentLanguage": { + "annotations": { + "required": [ + "content.pos.inventory" + ] + }, + "description": "The two-letter ISO 639-1 language code for the item.", + "type": "string" + }, + "gtin": { + "description": "Global Trade Item Number.", + "type": "string" + }, + "itemId": { + "annotations": { + "required": [ + "content.pos.inventory" + ] + }, + "description": "A unique identifier for the item.", + "type": "string" + }, + "price": { + "$ref": "Price", + "annotations": { + "required": [ + "content.pos.inventory" + ] + }, + "description": "The current price of the item." + }, + "quantity": { + "annotations": { + "required": [ + "content.pos.inventory" + ] + }, + "description": "The available quantity of the item.", + "format": "int64", + "type": "string" + }, + "storeCode": { + "annotations": { + "required": [ + "content.pos.inventory" + ] + }, + "description": "The identifier of the merchant's store. Either a storeCode inserted via the API or the code of the store in Google My Business.", + "type": "string" + }, + "targetCountry": { + "annotations": { + "required": [ + "content.pos.inventory" + ] + }, + "description": "The CLDR territory code for the item.", + "type": "string" + }, + "timestamp": { + "annotations": { + "required": [ + "content.pos.inventory" + ] + }, + "description": "The inventory timestamp, in ISO 8601 format.", + "type": "string" + } + }, + "type": "object" + }, + "PosInventoryResponse": { + "id": "PosInventoryResponse", + "properties": { + "contentLanguage": { + "annotations": { + "required": [ + "content.pos.inventory" + ] + }, + "description": "The two-letter ISO 639-1 language code for the item.", + "type": "string" + }, + "gtin": { + "description": "Global Trade Item Number.", + "type": "string" + }, + "itemId": { + "annotations": { + "required": [ + "content.pos.inventory" + ] + }, + "description": "A unique identifier for the item.", + "type": "string" + }, + "kind": { + "default": "content#posInventoryResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"content#posInventoryResponse\".", + "type": "string" + }, + "price": { + "$ref": "Price", + "annotations": { + "required": [ + "content.pos.inventory" + ] + }, + "description": "The current price of the item." + }, + "quantity": { + "annotations": { + "required": [ + "content.pos.inventory" + ] + }, + "description": "The available quantity of the item.", + "format": "int64", + "type": "string" + }, + "storeCode": { + "annotations": { + "required": [ + "content.pos.inventory" + ] + }, + "description": "The identifier of the merchant's store. Either a storeCode inserted via the API or the code of the store in Google My Business.", + "type": "string" + }, + "targetCountry": { + "annotations": { + "required": [ + "content.pos.inventory" + ] + }, + "description": "The CLDR territory code for the item.", + "type": "string" + }, + "timestamp": { + "annotations": { + "required": [ + "content.pos.inventory" + ] + }, + "description": "The inventory timestamp, in ISO 8601 format.", + "type": "string" + } + }, + "type": "object" + }, + "PosListResponse": { + "id": "PosListResponse", + "properties": { + "kind": { + "default": "content#posListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"content#posListResponse\".", + "type": "string" + }, + "resources": { + "items": { + "$ref": "PosStore" + }, + "type": "array" + } + }, + "type": "object" + }, + "PosSale": { + "description": "The change of the available quantity of an item at the given store.", + "id": "PosSale", + "properties": { + "contentLanguage": { + "annotations": { + "required": [ + "content.pos.sale" + ] + }, + "description": "The two-letter ISO 639-1 language code for the item.", + "type": "string" + }, + "gtin": { + "description": "Global Trade Item Number.", + "type": "string" + }, + "itemId": { + "annotations": { + "required": [ + "content.pos.sale" + ] + }, + "description": "A unique identifier for the item.", + "type": "string" + }, + "kind": { + "default": "content#posSale", + "description": "Identifies what kind of resource this is. Value: the fixed string \"content#posSale\".", + "type": "string" + }, + "price": { + "$ref": "Price", + "annotations": { + "required": [ + "content.pos.sale" + ] + }, + "description": "The price of the item." + }, + "quantity": { + "annotations": { + "required": [ + "content.pos.sale" + ] + }, + "description": "The relative change of the available quantity. Negative for items sold.", + "format": "int64", + "type": "string" + }, + "saleId": { + "description": "A unique ID to group items from the same sale event.", + "type": "string" + }, + "storeCode": { + "annotations": { + "required": [ + "content.pos.sale" + ] + }, + "description": "The identifier of the merchant's store. Either a storeCode inserted via the API or the code of the store in Google My Business.", + "type": "string" + }, + "targetCountry": { + "annotations": { + "required": [ + "content.pos.sale" + ] + }, + "description": "The CLDR territory code for the item.", + "type": "string" + }, + "timestamp": { + "annotations": { + "required": [ + "content.pos.sale" + ] + }, + "description": "The inventory timestamp, in ISO 8601 format.", + "type": "string" + } + }, + "type": "object" + }, + "PosSaleRequest": { + "id": "PosSaleRequest", + "properties": { + "contentLanguage": { + "annotations": { + "required": [ + "content.pos.sale" + ] + }, + "description": "The two-letter ISO 639-1 language code for the item.", + "type": "string" + }, + "gtin": { + "description": "Global Trade Item Number.", + "type": "string" + }, + "itemId": { + "annotations": { + "required": [ + "content.pos.sale" + ] + }, + "description": "A unique identifier for the item.", + "type": "string" + }, + "price": { + "$ref": "Price", + "annotations": { + "required": [ + "content.pos.sale" + ] + }, + "description": "The price of the item." + }, + "quantity": { + "annotations": { + "required": [ + "content.pos.sale" + ] + }, + "description": "The relative change of the available quantity. Negative for items sold.", + "format": "int64", + "type": "string" + }, + "saleId": { + "description": "A unique ID to group items from the same sale event.", + "type": "string" + }, + "storeCode": { + "annotations": { + "required": [ + "content.pos.sale" + ] + }, + "description": "The identifier of the merchant's store. Either a storeCode inserted via the API or the code of the store in Google My Business.", + "type": "string" + }, + "targetCountry": { + "annotations": { + "required": [ + "content.pos.sale" + ] + }, + "description": "The CLDR territory code for the item.", + "type": "string" + }, + "timestamp": { + "annotations": { + "required": [ + "content.pos.sale" + ] + }, + "description": "The inventory timestamp, in ISO 8601 format.", + "type": "string" + } + }, + "type": "object" + }, + "PosSaleResponse": { + "id": "PosSaleResponse", + "properties": { + "contentLanguage": { + "annotations": { + "required": [ + "content.pos.sale" + ] + }, + "description": "The two-letter ISO 639-1 language code for the item.", + "type": "string" + }, + "gtin": { + "description": "Global Trade Item Number.", + "type": "string" + }, + "itemId": { + "annotations": { + "required": [ + "content.pos.sale" + ] + }, + "description": "A unique identifier for the item.", + "type": "string" + }, + "kind": { + "default": "content#posSaleResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"content#posSaleResponse\".", + "type": "string" + }, + "price": { + "$ref": "Price", + "annotations": { + "required": [ + "content.pos.sale" + ] + }, + "description": "The price of the item." + }, + "quantity": { + "annotations": { + "required": [ + "content.pos.sale" + ] + }, + "description": "The relative change of the available quantity. Negative for items sold.", + "format": "int64", + "type": "string" + }, + "saleId": { + "description": "A unique ID to group items from the same sale event.", + "type": "string" + }, + "storeCode": { + "annotations": { + "required": [ + "content.pos.sale" + ] + }, + "description": "The identifier of the merchant's store. Either a storeCode inserted via the API or the code of the store in Google My Business.", + "type": "string" + }, + "targetCountry": { + "annotations": { + "required": [ + "content.pos.sale" + ] + }, + "description": "The CLDR territory code for the item.", + "type": "string" + }, + "timestamp": { + "annotations": { + "required": [ + "content.pos.sale" + ] + }, + "description": "The inventory timestamp, in ISO 8601 format.", + "type": "string" + } + }, + "type": "object" + }, + "PosStore": { + "description": "Store resource.", + "id": "PosStore", + "properties": { + "kind": { + "default": "content#posStore", + "description": "Identifies what kind of resource this is. Value: the fixed string \"content#posStore\".", + "type": "string" + }, + "storeAddress": { + "annotations": { + "required": [ + "content.pos.insert" + ] + }, + "description": "The street address of the store.", + "type": "string" + }, + "storeCode": { + "annotations": { + "required": [ + "content.pos.insert" + ] + }, + "description": "A store identifier that is unique for the given merchant.", + "type": "string" + } + }, + "type": "object" + }, + "PostalCodeGroup": { + "id": "PostalCodeGroup", + "properties": { + "country": { + "description": "The CLDR territory code of the country the postal code group applies to. Required.", + "type": "string" + }, + "name": { + "description": "The name of the postal code group, referred to in headers. Required.", + "type": "string" + }, + "postalCodeRanges": { + "description": "A range of postal codes. Required.", + "items": { + "$ref": "PostalCodeRange" + }, + "type": "array" + } + }, + "type": "object" + }, + "PostalCodeRange": { + "id": "PostalCodeRange", + "properties": { + "postalCodeRangeBegin": { + "description": "A postal code or a pattern of the form prefix* denoting the inclusive lower bound of the range defining the area. Examples values: \"94108\", \"9410*\", \"9*\". Required.", + "type": "string" + }, + "postalCodeRangeEnd": { + "description": "A postal code or a pattern of the form prefix* denoting the inclusive upper bound of the range defining the area. It must have the same length as postalCodeRangeBegin: if postalCodeRangeBegin is a postal code then postalCodeRangeEnd must be a postal code too; if postalCodeRangeBegin is a pattern then postalCodeRangeEnd must be a pattern with the same prefix length. Optional: if not set, then the area is defined as being all the postal codes matching postalCodeRangeBegin.", + "type": "string" + } + }, + "type": "object" + }, + "Price": { + "id": "Price", + "properties": { + "currency": { + "description": "The currency of the price.", + "type": "string" + }, + "value": { + "description": "The price represented as a number.", + "type": "string" + } + }, + "type": "object" + }, + "Product": { + "description": "Product data.", + "id": "Product", + "properties": { + "additionalImageLinks": { + "description": "Additional URLs of images of the item.", + "items": { + "type": "string" + }, + "type": "array" + }, + "additionalProductTypes": { + "description": "Additional categories of the item (formatted as in products feed specification).", + "items": { + "type": "string" + }, + "type": "array" + }, + "adult": { + "description": "Set to true if the item is targeted towards adults.", + "type": "boolean" + }, + "adwordsGrouping": { + "description": "Used to group items in an arbitrary way. Only for CPA%, discouraged otherwise.", + "type": "string" + }, + "adwordsLabels": { + "description": "Similar to adwords_grouping, but only works on CPC.", + "items": { + "type": "string" + }, + "type": "array" + }, + "adwordsRedirect": { + "description": "Allows advertisers to override the item URL when the product is shown within the context of Product Ads.", + "type": "string" + }, + "ageGroup": { + "description": "Target age group of the item.", + "type": "string" + }, + "aspects": { + "description": "Specifies the intended aspects for the product.", + "items": { + "$ref": "ProductAspect" + }, + "type": "array" + }, + "availability": { + "description": "Availability status of the item.", + "type": "string" + }, + "availabilityDate": { + "description": "The day a pre-ordered product becomes available for delivery, in ISO 8601 format.", + "type": "string" + }, + "brand": { + "description": "Brand of the item.", + "type": "string" + }, + "channel": { + "annotations": { + "required": [ + "content.products.insert" + ] + }, + "description": "The item's channel (online or local).", + "type": "string" + }, + "color": { + "description": "Color of the item.", + "type": "string" + }, + "condition": { + "description": "Condition or state of the item.", + "type": "string" + }, + "contentLanguage": { + "annotations": { + "required": [ + "content.products.insert" + ] + }, + "description": "The two-letter ISO 639-1 language code for the item.", + "type": "string" + }, + "customAttributes": { + "description": "A list of custom (merchant-provided) attributes. It can also be used for submitting any attribute of the feed specification in its generic form (e.g., { \"name\": \"size type\", \"type\": \"text\", \"value\": \"regular\" }). This is useful for submitting attributes not explicitly exposed by the API.", + "items": { + "$ref": "ProductCustomAttribute" + }, + "type": "array" + }, + "customGroups": { + "description": "A list of custom (merchant-provided) custom attribute groups.", + "items": { + "$ref": "ProductCustomGroup" + }, + "type": "array" + }, + "customLabel0": { + "description": "Custom label 0 for custom grouping of items in a Shopping campaign.", + "type": "string" + }, + "customLabel1": { + "description": "Custom label 1 for custom grouping of items in a Shopping campaign.", + "type": "string" + }, + "customLabel2": { + "description": "Custom label 2 for custom grouping of items in a Shopping campaign.", + "type": "string" + }, + "customLabel3": { + "description": "Custom label 3 for custom grouping of items in a Shopping campaign.", + "type": "string" + }, + "customLabel4": { + "description": "Custom label 4 for custom grouping of items in a Shopping campaign.", + "type": "string" + }, + "description": { + "description": "Description of the item.", + "type": "string" + }, + "destinations": { + "description": "Specifies the intended destinations for the product.", + "items": { + "$ref": "ProductDestination" + }, + "type": "array" + }, + "displayAdsId": { + "description": "An identifier for an item for dynamic remarketing campaigns.", + "type": "string" + }, + "displayAdsLink": { + "description": "URL directly to your item's landing page for dynamic remarketing campaigns.", + "type": "string" + }, + "displayAdsSimilarIds": { + "description": "Advertiser-specified recommendations.", + "items": { + "type": "string" + }, + "type": "array" + }, + "displayAdsTitle": { + "description": "Title of an item for dynamic remarketing campaigns.", + "type": "string" + }, + "displayAdsValue": { + "description": "Offer margin for dynamic remarketing campaigns.", + "format": "double", + "type": "number" + }, + "energyEfficiencyClass": { + "description": "The energy efficiency class as defined in EU directive 2010/30/EU.", + "type": "string" + }, + "expirationDate": { + "description": "Date on which the item should expire, as specified upon insertion, in ISO 8601 format. The actual expiration date in Google Shopping is exposed in productstatuses as googleExpirationDate and might be earlier if expirationDate is too far in the future.", + "type": "string" + }, + "gender": { + "description": "Target gender of the item.", + "type": "string" + }, + "googleProductCategory": { + "description": "Google's category of the item (see Google product taxonomy).", + "type": "string" + }, + "gtin": { + "description": "Global Trade Item Number (GTIN) of the item.", + "type": "string" + }, + "id": { + "description": "The REST id of the product. Content API methods that operate on products take this as their productId parameter.\nThe REST id for a product is of the form channel:contentLanguage:targetCountry:offerId.", + "type": "string" + }, + "identifierExists": { + "description": "False when the item does not have unique product identifiers appropriate to its category, such as GTIN, MPN, and brand. Required according to the Unique Product Identifier Rules for all target countries except for Canada.", + "type": "boolean" + }, + "imageLink": { + "description": "URL of an image of the item.", + "type": "string" + }, + "installment": { + "$ref": "Installment", + "description": "Number and amount of installments to pay for an item. Brazil only." + }, + "isBundle": { + "description": "Whether the item is a merchant-defined bundle. A bundle is a custom grouping of different products sold by a merchant for a single price.", + "type": "boolean" + }, + "itemGroupId": { + "description": "Shared identifier for all variants of the same product.", + "type": "string" + }, + "kind": { + "default": "content#product", + "description": "Identifies what kind of resource this is. Value: the fixed string \"content#product\".", + "type": "string" + }, + "link": { + "description": "URL directly linking to your item's page on your website.", + "type": "string" + }, + "loyaltyPoints": { + "$ref": "LoyaltyPoints", + "description": "Loyalty points that users receive after purchasing the item. Japan only." + }, + "material": { + "description": "The material of which the item is made.", + "type": "string" + }, + "maxHandlingTime": { + "description": "Maximal product handling time (in business days).", + "format": "int64", + "type": "string" + }, + "minHandlingTime": { + "description": "Minimal product handling time (in business days).", + "format": "int64", + "type": "string" + }, + "mobileLink": { + "description": "Link to a mobile-optimized version of the landing page.", + "type": "string" + }, + "mpn": { + "description": "Manufacturer Part Number (MPN) of the item.", + "type": "string" + }, + "multipack": { + "description": "The number of identical products in a merchant-defined multipack.", + "format": "int64", + "type": "string" + }, + "offerId": { + "annotations": { + "required": [ + "content.products.insert" + ] + }, + "description": "A unique identifier for the item. Leading and trailing whitespaces are stripped and multiple whitespaces are replaced by a single whitespace upon submission. Only valid unicode characters are accepted. See the products feed specification for details.\nNote: Content API methods that operate on products take the REST id of the product, not this identifier.", + "type": "string" + }, + "onlineOnly": { + "description": "Whether an item is available for purchase only online.", + "type": "boolean" + }, + "pattern": { + "description": "The item's pattern (e.g. polka dots).", + "type": "string" + }, + "price": { + "$ref": "Price", + "description": "Price of the item." + }, + "productType": { + "description": "Your category of the item (formatted as in products feed specification).", + "type": "string" + }, + "promotionIds": { + "description": "The unique ID of a promotion.", + "items": { + "type": "string" + }, + "type": "array" + }, + "salePrice": { + "$ref": "Price", + "description": "Advertised sale price of the item." + }, + "salePriceEffectiveDate": { + "description": "Date range during which the item is on sale (see products feed specification).", + "type": "string" + }, + "sellOnGoogleQuantity": { + "description": "The quantity of the product that is reserved for sell-on-google ads.", + "format": "int64", + "type": "string" + }, + "shipping": { + "description": "Shipping rules.", + "items": { + "$ref": "ProductShipping" + }, + "type": "array" + }, + "shippingHeight": { + "$ref": "ProductShippingDimension", + "description": "Height of the item for shipping." + }, + "shippingLabel": { + "description": "The shipping label of the product, used to group product in account-level shipping rules.", + "type": "string" + }, + "shippingLength": { + "$ref": "ProductShippingDimension", + "description": "Length of the item for shipping." + }, + "shippingWeight": { + "$ref": "ProductShippingWeight", + "description": "Weight of the item for shipping." + }, + "shippingWidth": { + "$ref": "ProductShippingDimension", + "description": "Width of the item for shipping." + }, + "sizeSystem": { + "description": "System in which the size is specified. Recommended for apparel items.", + "type": "string" + }, + "sizeType": { + "description": "The cut of the item. Recommended for apparel items.", + "type": "string" + }, + "sizes": { + "description": "Size of the item.", + "items": { + "type": "string" + }, + "type": "array" + }, + "targetCountry": { + "annotations": { + "required": [ + "content.products.insert" + ] + }, + "description": "The CLDR territory code for the item.", + "type": "string" + }, + "taxes": { + "description": "Tax information.", + "items": { + "$ref": "ProductTax" + }, + "type": "array" + }, + "title": { + "description": "Title of the item.", + "type": "string" + }, + "unitPricingBaseMeasure": { + "$ref": "ProductUnitPricingBaseMeasure", + "description": "The preference of the denominator of the unit price." + }, + "unitPricingMeasure": { + "$ref": "ProductUnitPricingMeasure", + "description": "The measure and dimension of an item." + }, + "validatedDestinations": { + "description": "The read-only list of intended destinations which passed validation.", + "items": { + "type": "string" + }, + "type": "array" + }, + "warnings": { + "description": "Read-only warnings.", + "items": { + "$ref": "Error" + }, + "type": "array" + } + }, + "type": "object" + }, + "ProductAspect": { + "id": "ProductAspect", + "properties": { + "aspectName": { + "description": "The name of the aspect.", + "type": "string" + }, + "destinationName": { + "description": "The name of the destination. Leave out to apply to all destinations.", + "type": "string" + }, + "intention": { + "description": "Whether the aspect is required, excluded or should be validated.", + "type": "string" + } + }, + "type": "object" + }, + "ProductCustomAttribute": { + "id": "ProductCustomAttribute", + "properties": { + "name": { + "description": "The name of the attribute. Underscores will be replaced by spaces upon insertion.", + "type": "string" + }, + "type": { + "description": "The type of the attribute.", + "type": "string" + }, + "unit": { + "description": "Free-form unit of the attribute. Unit can only be used for values of type INT or FLOAT.", + "type": "string" + }, + "value": { + "description": "The value of the attribute.", + "type": "string" + } + }, + "type": "object" + }, + "ProductCustomGroup": { + "id": "ProductCustomGroup", + "properties": { + "attributes": { + "description": "The sub-attributes.", + "items": { + "$ref": "ProductCustomAttribute" + }, + "type": "array" + }, + "name": { + "description": "The name of the group. Underscores will be replaced by spaces upon insertion.", + "type": "string" + } + }, + "type": "object" + }, + "ProductDestination": { + "id": "ProductDestination", + "properties": { + "destinationName": { + "description": "The name of the destination.", + "type": "string" + }, + "intention": { + "description": "Whether the destination is required, excluded or should be validated.", + "type": "string" + } + }, + "type": "object" + }, + "ProductShipping": { + "id": "ProductShipping", + "properties": { + "country": { + "description": "The CLDR territory code of the country to which an item will ship.", + "type": "string" + }, + "locationGroupName": { + "description": "The location where the shipping is applicable, represented by a location group name.", + "type": "string" + }, + "locationId": { + "description": "The numeric id of a location that the shipping rate applies to as defined in the AdWords API.", + "format": "int64", + "type": "string" + }, + "postalCode": { + "description": "The postal code range that the shipping rate applies to, represented by a postal code, a postal code prefix followed by a * wildcard, a range between two postal codes or two postal code prefixes of equal length.", + "type": "string" + }, + "price": { + "$ref": "Price", + "description": "Fixed shipping price, represented as a number." + }, + "region": { + "description": "The geographic region to which a shipping rate applies.", + "type": "string" + }, + "service": { + "description": "A free-form description of the service class or delivery speed.", + "type": "string" + } + }, + "type": "object" + }, + "ProductShippingDimension": { + "id": "ProductShippingDimension", + "properties": { + "unit": { + "description": "The unit of value.\n\nAcceptable values are: \n- \"cm\" \n- \"in\"", + "type": "string" + }, + "value": { + "description": "The dimension of the product used to calculate the shipping cost of the item.", + "format": "double", + "type": "number" + } + }, + "type": "object" + }, + "ProductShippingWeight": { + "id": "ProductShippingWeight", + "properties": { + "unit": { + "description": "The unit of value.", + "type": "string" + }, + "value": { + "description": "The weight of the product used to calculate the shipping cost of the item.", + "format": "double", + "type": "number" + } + }, + "type": "object" + }, + "ProductStatus": { + "description": "The status of a product, i.e., information about a product computed asynchronously by the data quality analysis.", + "id": "ProductStatus", + "properties": { + "creationDate": { + "description": "Date on which the item has been created, in ISO 8601 format.", + "type": "string" + }, + "dataQualityIssues": { + "description": "A list of data quality issues associated with the product.", + "items": { + "$ref": "ProductStatusDataQualityIssue" + }, + "type": "array" + }, + "destinationStatuses": { + "description": "The intended destinations for the product.", + "items": { + "$ref": "ProductStatusDestinationStatus" + }, + "type": "array" + }, + "googleExpirationDate": { + "description": "Date on which the item expires in Google Shopping, in ISO 8601 format.", + "type": "string" + }, + "itemLevelIssues": { + "description": "A list of all issues associated with the product.", + "items": { + "$ref": "ProductStatusItemLevelIssue" + }, + "type": "array" + }, + "kind": { + "default": "content#productStatus", + "description": "Identifies what kind of resource this is. Value: the fixed string \"content#productStatus\".", + "type": "string" + }, + "lastUpdateDate": { + "description": "Date on which the item has been last updated, in ISO 8601 format.", + "type": "string" + }, + "link": { + "description": "The link to the product.", + "type": "string" + }, + "product": { + "$ref": "Product", + "description": "Product data after applying all the join inputs." + }, + "productId": { + "description": "The id of the product for which status is reported.", + "type": "string" + }, + "title": { + "description": "The title of the product.", + "type": "string" + } + }, + "type": "object" + }, + "ProductStatusDataQualityIssue": { + "id": "ProductStatusDataQualityIssue", + "properties": { + "detail": { + "description": "A more detailed error string.", + "type": "string" + }, + "fetchStatus": { + "description": "The fetch status for landing_page_errors.", + "type": "string" + }, + "id": { + "description": "The id of the data quality issue.", + "type": "string" + }, + "location": { + "description": "The attribute name that is relevant for the issue.", + "type": "string" + }, + "severity": { + "description": "The severity of the data quality issue.", + "type": "string" + }, + "timestamp": { + "description": "The time stamp of the data quality issue.", + "type": "string" + }, + "valueOnLandingPage": { + "description": "The value of that attribute that was found on the landing page", + "type": "string" + }, + "valueProvided": { + "description": "The value the attribute had at time of evaluation.", + "type": "string" + } + }, + "type": "object" + }, + "ProductStatusDestinationStatus": { + "id": "ProductStatusDestinationStatus", + "properties": { + "approvalPending": { + "description": "Whether the approval status might change due to further processing.", + "type": "boolean" + }, + "approvalStatus": { + "description": "The destination's approval status.", + "type": "string" + }, + "destination": { + "description": "The name of the destination", + "type": "string" + }, + "intention": { + "description": "Provided for backward compatibility only. Always set to \"required\".", + "type": "string" + } + }, + "type": "object" + }, + "ProductStatusItemLevelIssue": { + "id": "ProductStatusItemLevelIssue", + "properties": { + "attributeName": { + "description": "The attribute's name, if the issue is caused by a single attribute.", + "type": "string" + }, + "code": { + "description": "The error code of the issue.", + "type": "string" + }, + "destination": { + "description": "The destination the issue applies to.", + "type": "string" + }, + "resolution": { + "description": "Whether the issue can be resolved by the merchant.", + "type": "string" + }, + "servability": { + "description": "How this issue affects serving of the offer.", + "type": "string" + } + }, + "type": "object" + }, + "ProductTax": { + "id": "ProductTax", + "properties": { + "country": { + "description": "The country within which the item is taxed, specified as a CLDR territory code.", + "type": "string" + }, + "locationId": { + "description": "The numeric id of a location that the tax rate applies to as defined in the AdWords API.", + "format": "int64", + "type": "string" + }, + "postalCode": { + "description": "The postal code range that the tax rate applies to, represented by a ZIP code, a ZIP code prefix using * wildcard, a range between two ZIP codes or two ZIP code prefixes of equal length. Examples: 94114, 94*, 94002-95460, 94*-95*.", + "type": "string" + }, + "rate": { + "description": "The percentage of tax rate that applies to the item price.", + "format": "double", + "type": "number" + }, + "region": { + "description": "The geographic region to which the tax rate applies.", + "type": "string" + }, + "taxShip": { + "description": "Set to true if tax is charged on shipping.", + "type": "boolean" + } + }, + "type": "object" + }, + "ProductUnitPricingBaseMeasure": { + "id": "ProductUnitPricingBaseMeasure", + "properties": { + "unit": { + "description": "The unit of the denominator.", + "type": "string" + }, + "value": { + "description": "The denominator of the unit price.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "ProductUnitPricingMeasure": { + "id": "ProductUnitPricingMeasure", + "properties": { + "unit": { + "description": "The unit of the measure.", + "type": "string" + }, + "value": { + "description": "The measure of an item.", + "format": "double", + "type": "number" + } + }, + "type": "object" + }, + "ProductsCustomBatchRequest": { + "id": "ProductsCustomBatchRequest", + "properties": { + "entries": { + "description": "The request entries to be processed in the batch.", + "items": { + "$ref": "ProductsCustomBatchRequestEntry" + }, + "type": "array" + } + }, + "type": "object" + }, + "ProductsCustomBatchRequestEntry": { + "description": "A batch entry encoding a single non-batch products request.", + "id": "ProductsCustomBatchRequestEntry", + "properties": { + "batchId": { + "description": "An entry ID, unique within the batch request.", + "format": "uint32", + "type": "integer" + }, + "merchantId": { + "description": "The ID of the managing account.", + "format": "uint64", + "type": "string" + }, + "method": { + "type": "string" + }, + "product": { + "$ref": "Product", + "description": "The product to insert. Only required if the method is insert." + }, + "productId": { + "description": "The ID of the product to get or delete. Only defined if the method is get or delete.", + "type": "string" + } + }, + "type": "object" + }, + "ProductsCustomBatchResponse": { + "id": "ProductsCustomBatchResponse", + "properties": { + "entries": { + "description": "The result of the execution of the batch requests.", + "items": { + "$ref": "ProductsCustomBatchResponseEntry" + }, + "type": "array" + }, + "kind": { + "default": "content#productsCustomBatchResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"content#productsCustomBatchResponse\".", + "type": "string" + } + }, + "type": "object" + }, + "ProductsCustomBatchResponseEntry": { + "description": "A batch entry encoding a single non-batch products response.", + "id": "ProductsCustomBatchResponseEntry", + "properties": { + "batchId": { + "description": "The ID of the request entry this entry responds to.", + "format": "uint32", + "type": "integer" + }, + "errors": { + "$ref": "Errors", + "description": "A list of errors defined if and only if the request failed." + }, + "kind": { + "default": "content#productsCustomBatchResponseEntry", + "description": "Identifies what kind of resource this is. Value: the fixed string \"content#productsCustomBatchResponseEntry\".", + "type": "string" + }, + "product": { + "$ref": "Product", + "description": "The inserted product. Only defined if the method is insert and if the request was successful." + } + }, + "type": "object" + }, + "ProductsListResponse": { + "id": "ProductsListResponse", + "properties": { + "kind": { + "default": "content#productsListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"content#productsListResponse\".", + "type": "string" + }, + "nextPageToken": { + "description": "The token for the retrieval of the next page of products.", + "type": "string" + }, + "resources": { + "items": { + "$ref": "Product" + }, + "type": "array" + } + }, + "type": "object" + }, + "ProductstatusesCustomBatchRequest": { + "id": "ProductstatusesCustomBatchRequest", + "properties": { + "entries": { + "description": "The request entries to be processed in the batch.", + "items": { + "$ref": "ProductstatusesCustomBatchRequestEntry" + }, + "type": "array" + } + }, + "type": "object" + }, + "ProductstatusesCustomBatchRequestEntry": { + "description": "A batch entry encoding a single non-batch productstatuses request.", + "id": "ProductstatusesCustomBatchRequestEntry", + "properties": { + "batchId": { + "description": "An entry ID, unique within the batch request.", + "format": "uint32", + "type": "integer" + }, + "includeAttributes": { + "type": "boolean" + }, + "merchantId": { + "description": "The ID of the managing account.", + "format": "uint64", + "type": "string" + }, + "method": { + "type": "string" + }, + "productId": { + "description": "The ID of the product whose status to get.", + "type": "string" + } + }, + "type": "object" + }, + "ProductstatusesCustomBatchResponse": { + "id": "ProductstatusesCustomBatchResponse", + "properties": { + "entries": { + "description": "The result of the execution of the batch requests.", + "items": { + "$ref": "ProductstatusesCustomBatchResponseEntry" + }, + "type": "array" + }, + "kind": { + "default": "content#productstatusesCustomBatchResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"content#productstatusesCustomBatchResponse\".", + "type": "string" + } + }, + "type": "object" + }, + "ProductstatusesCustomBatchResponseEntry": { + "description": "A batch entry encoding a single non-batch productstatuses response.", + "id": "ProductstatusesCustomBatchResponseEntry", + "properties": { + "batchId": { + "description": "The ID of the request entry this entry responds to.", + "format": "uint32", + "type": "integer" + }, + "errors": { + "$ref": "Errors", + "description": "A list of errors, if the request failed." + }, + "kind": { + "default": "content#productstatusesCustomBatchResponseEntry", + "description": "Identifies what kind of resource this is. Value: the fixed string \"content#productstatusesCustomBatchResponseEntry\".", + "type": "string" + }, + "productStatus": { + "$ref": "ProductStatus", + "description": "The requested product status. Only defined if the request was successful." + } + }, + "type": "object" + }, + "ProductstatusesListResponse": { + "id": "ProductstatusesListResponse", + "properties": { + "kind": { + "default": "content#productstatusesListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"content#productstatusesListResponse\".", + "type": "string" + }, + "nextPageToken": { + "description": "The token for the retrieval of the next page of products statuses.", + "type": "string" + }, + "resources": { + "items": { + "$ref": "ProductStatus" + }, + "type": "array" + } + }, + "type": "object" + }, + "RateGroup": { + "id": "RateGroup", + "properties": { + "applicableShippingLabels": { + "description": "A list of shipping labels defining the products to which this rate group applies to. This is a disjunction: only one of the labels has to match for the rate group to apply. May only be empty for the last rate group of a service. Required.", + "items": { + "type": "string" + }, + "type": "array" + }, + "carrierRates": { + "description": "A list of carrier rates that can be referred to by mainTable or singleValue.", + "items": { + "$ref": "CarrierRate" + }, + "type": "array" + }, + "mainTable": { + "$ref": "Table", + "description": "A table defining the rate group, when singleValue is not expressive enough. Can only be set if singleValue is not set." + }, + "singleValue": { + "$ref": "Value", + "description": "The value of the rate group (e.g. flat rate $10). Can only be set if mainTable and subtables are not set." + }, + "subtables": { + "description": "A list of subtables referred to by mainTable. Can only be set if mainTable is set.", + "items": { + "$ref": "Table" + }, + "type": "array" + } + }, + "type": "object" + }, + "Row": { + "id": "Row", + "properties": { + "cells": { + "description": "The list of cells that constitute the row. Must have the same length as columnHeaders for two-dimensional tables, a length of 1 for one-dimensional tables. Required.", + "items": { + "$ref": "Value" + }, + "type": "array" + } + }, + "type": "object" + }, + "Service": { + "id": "Service", + "properties": { + "active": { + "description": "A boolean exposing the active status of the shipping service. Required.", + "type": "boolean" + }, + "currency": { + "description": "The CLDR code of the currency to which this service applies. Must match that of the prices in rate groups.", + "type": "string" + }, + "deliveryCountry": { + "description": "The CLDR territory code of the country to which the service applies. Required.", + "type": "string" + }, + "deliveryTime": { + "$ref": "DeliveryTime", + "description": "Time spent in various aspects from order to the delivery of the product. Required." + }, + "minimumOrderValue": { + "$ref": "Price", + "description": "Minimum order value for this service. If set, indicates that customers will have to spend at least this amount. All prices within a service must have the same currency." + }, + "name": { + "description": "Free-form name of the service. Must be unique within target account. Required.", + "type": "string" + }, + "rateGroups": { + "description": "Shipping rate group definitions. Only the last one is allowed to have an empty applicableShippingLabels, which means \"everything else\". The other applicableShippingLabels must not overlap.", + "items": { + "$ref": "RateGroup" + }, + "type": "array" + } + }, + "type": "object" + }, + "ShippingSettings": { + "description": "The merchant account's shipping settings.", + "id": "ShippingSettings", + "properties": { + "accountId": { + "description": "The ID of the account to which these account shipping settings belong. Ignored upon update, always present in get request responses.", + "format": "uint64", + "type": "string" + }, + "postalCodeGroups": { + "description": "A list of postal code groups that can be referred to in services. Optional.", + "items": { + "$ref": "PostalCodeGroup" + }, + "type": "array" + }, + "services": { + "description": "The target account's list of services. Optional.", + "items": { + "$ref": "Service" + }, + "type": "array" + } + }, + "type": "object" + }, + "ShippingsettingsCustomBatchRequest": { + "id": "ShippingsettingsCustomBatchRequest", + "properties": { + "entries": { + "description": "The request entries to be processed in the batch.", + "items": { + "$ref": "ShippingsettingsCustomBatchRequestEntry" + }, + "type": "array" + } + }, + "type": "object" + }, + "ShippingsettingsCustomBatchRequestEntry": { + "description": "A batch entry encoding a single non-batch shippingsettings request.", + "id": "ShippingsettingsCustomBatchRequestEntry", + "properties": { + "accountId": { + "description": "The ID of the account for which to get/update account shipping settings.", + "format": "uint64", + "type": "string" + }, + "batchId": { + "description": "An entry ID, unique within the batch request.", + "format": "uint32", + "type": "integer" + }, + "merchantId": { + "description": "The ID of the managing account.", + "format": "uint64", + "type": "string" + }, + "method": { + "type": "string" + }, + "shippingSettings": { + "$ref": "ShippingSettings", + "description": "The account shipping settings to update. Only defined if the method is update." + } + }, + "type": "object" + }, + "ShippingsettingsCustomBatchResponse": { + "id": "ShippingsettingsCustomBatchResponse", + "properties": { + "entries": { + "description": "The result of the execution of the batch requests.", + "items": { + "$ref": "ShippingsettingsCustomBatchResponseEntry" + }, + "type": "array" + }, + "kind": { + "default": "content#shippingsettingsCustomBatchResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"content#shippingsettingsCustomBatchResponse\".", + "type": "string" + } + }, + "type": "object" + }, + "ShippingsettingsCustomBatchResponseEntry": { + "description": "A batch entry encoding a single non-batch shipping settings response.", + "id": "ShippingsettingsCustomBatchResponseEntry", + "properties": { + "batchId": { + "description": "The ID of the request entry to which this entry responds.", + "format": "uint32", + "type": "integer" + }, + "errors": { + "$ref": "Errors", + "description": "A list of errors defined if, and only if, the request failed." + }, + "kind": { + "default": "content#shippingsettingsCustomBatchResponseEntry", + "description": "Identifies what kind of resource this is. Value: the fixed string \"content#shippingsettingsCustomBatchResponseEntry\".", + "type": "string" + }, + "shippingSettings": { + "$ref": "ShippingSettings", + "description": "The retrieved or updated account shipping settings." + } + }, + "type": "object" + }, + "ShippingsettingsGetSupportedCarriersResponse": { + "id": "ShippingsettingsGetSupportedCarriersResponse", + "properties": { + "carriers": { + "description": "A list of supported carriers. May be empty.", + "items": { + "$ref": "CarriersCarrier" + }, + "type": "array" + }, + "kind": { + "default": "content#shippingsettingsGetSupportedCarriersResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"content#shippingsettingsGetSupportedCarriersResponse\".", + "type": "string" + } + }, + "type": "object" + }, + "ShippingsettingsGetSupportedHolidaysResponse": { + "id": "ShippingsettingsGetSupportedHolidaysResponse", + "properties": { + "holidays": { + "description": "A list of holidays applicable for delivery guarantees. May be empty.", + "items": { + "$ref": "HolidaysHoliday" + }, + "type": "array" + }, + "kind": { + "default": "content#shippingsettingsGetSupportedHolidaysResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"content#shippingsettingsGetSupportedHolidaysResponse\".", + "type": "string" + } + }, + "type": "object" + }, + "ShippingsettingsListResponse": { + "id": "ShippingsettingsListResponse", + "properties": { + "kind": { + "default": "content#shippingsettingsListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"content#shippingsettingsListResponse\".", + "type": "string" + }, + "nextPageToken": { + "description": "The token for the retrieval of the next page of shipping settings.", + "type": "string" + }, + "resources": { + "items": { + "$ref": "ShippingSettings" + }, + "type": "array" + } + }, + "type": "object" + }, + "Table": { + "id": "Table", + "properties": { + "columnHeaders": { + "$ref": "Headers", + "description": "Headers of the table's columns. Optional: if not set then the table has only one dimension." + }, + "name": { + "description": "Name of the table. Required for subtables, ignored for the main table.", + "type": "string" + }, + "rowHeaders": { + "$ref": "Headers", + "description": "Headers of the table's rows. Required." + }, + "rows": { + "description": "The list of rows that constitute the table. Must have the same length as rowHeaders. Required.", + "items": { + "$ref": "Row" + }, + "type": "array" + } + }, + "type": "object" + }, + "TestOrder": { + "id": "TestOrder", + "properties": { + "customer": { + "$ref": "TestOrderCustomer", + "annotations": { + "required": [ + "content.orders.createtestorder" + ] + }, + "description": "The details of the customer who placed the order." + }, + "kind": { + "default": "content#testOrder", + "description": "Identifies what kind of resource this is. Value: the fixed string \"content#testOrder\".", + "type": "string" + }, + "lineItems": { + "annotations": { + "required": [ + "content.orders.createtestorder" + ] + }, + "description": "Line items that are ordered. At least one line item must be provided.", + "items": { + "$ref": "TestOrderLineItem" + }, + "type": "array" + }, + "notificationMode": { + "description": "Determines if test order must be pulled by merchant or pushed to merchant via push integration.", + "type": "string" + }, + "paymentMethod": { + "$ref": "TestOrderPaymentMethod", + "description": "The details of the payment method." + }, + "predefinedDeliveryAddress": { + "annotations": { + "required": [ + "content.orders.createtestorder" + ] + }, + "description": "Identifier of one of the predefined delivery addresses for the delivery.", + "type": "string" + }, + "promotions": { + "description": "The details of the merchant provided promotions applied to the order. More details about the program are here.", + "items": { + "$ref": "OrderPromotion" + }, + "type": "array" + }, + "shippingCost": { + "$ref": "Price", + "annotations": { + "required": [ + "content.orders.createtestorder" + ] + }, + "description": "The total cost of shipping for all items." + }, + "shippingCostTax": { + "$ref": "Price", + "annotations": { + "required": [ + "content.orders.createtestorder" + ] + }, + "description": "The tax for the total shipping cost." + }, + "shippingOption": { + "annotations": { + "required": [ + "content.orders.createtestorder" + ] + }, + "description": "The requested shipping option.", + "type": "string" + } + }, + "type": "object" + }, + "TestOrderCustomer": { + "id": "TestOrderCustomer", + "properties": { + "email": { + "annotations": { + "required": [ + "content.orders.createtestorder" + ] + }, + "description": "Email address of the customer.", + "type": "string" + }, + "explicitMarketingPreference": { + "description": "If set, this indicates the user explicitly chose to opt in or out of providing marketing rights to the merchant. If unset, this indicates the user has already made this choice in a previous purchase, and was thus not shown the marketing right opt in/out checkbox during the checkout flow. Optional.", + "type": "boolean" + }, + "fullName": { + "description": "Full name of the customer.", + "type": "string" + } + }, + "type": "object" + }, + "TestOrderLineItem": { + "id": "TestOrderLineItem", + "properties": { + "product": { + "$ref": "TestOrderLineItemProduct", + "description": "Product data from the time of the order placement." + }, + "quantityOrdered": { + "annotations": { + "required": [ + "content.orders.createtestorder" + ] + }, + "description": "Number of items ordered.", + "format": "uint32", + "type": "integer" + }, + "returnInfo": { + "$ref": "OrderLineItemReturnInfo", + "annotations": { + "required": [ + "content.orders.createtestorder" + ] + }, + "description": "Details of the return policy for the line item." + }, + "shippingDetails": { + "$ref": "OrderLineItemShippingDetails", + "annotations": { + "required": [ + "content.orders.createtestorder" + ] + }, + "description": "Details of the requested shipping for the line item." + }, + "unitTax": { + "$ref": "Price", + "annotations": { + "required": [ + "content.orders.createtestorder" + ] + }, + "description": "Unit tax for the line item." + } + }, + "type": "object" + }, + "TestOrderLineItemProduct": { + "id": "TestOrderLineItemProduct", + "properties": { + "brand": { + "annotations": { + "required": [ + "content.orders.createtestorder" + ] + }, + "description": "Brand of the item.", + "type": "string" + }, + "channel": { + "annotations": { + "required": [ + "content.orders.createtestorder" + ] + }, + "description": "The item's channel.", + "type": "string" + }, + "condition": { + "annotations": { + "required": [ + "content.orders.createtestorder" + ] + }, + "description": "Condition or state of the item.", + "type": "string" + }, + "contentLanguage": { + "annotations": { + "required": [ + "content.orders.createtestorder" + ] + }, + "description": "The two-letter ISO 639-1 language code for the item.", + "type": "string" + }, + "gtin": { + "description": "Global Trade Item Number (GTIN) of the item. Optional.", + "type": "string" + }, + "imageLink": { + "annotations": { + "required": [ + "content.orders.createtestorder" + ] + }, + "description": "URL of an image of the item.", + "type": "string" + }, + "itemGroupId": { + "description": "Shared identifier for all variants of the same product. Optional.", + "type": "string" + }, + "mpn": { + "description": "Manufacturer Part Number (MPN) of the item. Optional.", + "type": "string" + }, + "offerId": { + "annotations": { + "required": [ + "content.orders.createtestorder" + ] + }, + "description": "An identifier of the item.", + "type": "string" + }, + "price": { + "$ref": "Price", + "annotations": { + "required": [ + "content.orders.createtestorder" + ] + }, + "description": "The price for the product." + }, + "targetCountry": { + "annotations": { + "required": [ + "content.orders.createtestorder" + ] + }, + "description": "The CLDR territory code of the target country of the product.", + "type": "string" + }, + "title": { + "annotations": { + "required": [ + "content.orders.createtestorder" + ] + }, + "description": "The title of the product.", + "type": "string" + }, + "variantAttributes": { + "description": "Variant attributes for the item. Optional.", + "items": { + "$ref": "OrderLineItemProductVariantAttribute" + }, + "type": "array" + } + }, + "type": "object" + }, + "TestOrderPaymentMethod": { + "id": "TestOrderPaymentMethod", + "properties": { + "expirationMonth": { + "description": "The card expiration month (January = 1, February = 2 etc.).", + "format": "int32", + "type": "integer" + }, + "expirationYear": { + "description": "The card expiration year (4-digit, e.g. 2015).", + "format": "int32", + "type": "integer" + }, + "lastFourDigits": { + "description": "The last four digits of the card number.", + "type": "string" + }, + "predefinedBillingAddress": { + "description": "The billing address.", + "type": "string" + }, + "type": { + "description": "The type of instrument. Note that real orders might have different values than the four values accepted by createTestOrder.", + "type": "string" + } + }, + "type": "object" + }, + "Value": { + "description": "The single value of a rate group or the value of a rate group table's cell. Exactly one of noShipping, flatRate, pricePercentage, carrierRateName, subtableName must be set.", + "id": "Value", + "properties": { + "carrierRateName": { + "description": "The name of a carrier rate referring to a carrier rate defined in the same rate group. Can only be set if all other fields are not set.", + "type": "string" + }, + "flatRate": { + "$ref": "Price", + "description": "A flat rate. Can only be set if all other fields are not set." + }, + "noShipping": { + "description": "If true, then the product can't ship. Must be true when set, can only be set if all other fields are not set.", + "type": "boolean" + }, + "pricePercentage": { + "description": "A percentage of the price represented as a number in decimal notation (e.g., \"5.4\"). Can only be set if all other fields are not set.", + "type": "string" + }, + "subtableName": { + "description": "The name of a subtable. Can only be set in table cells (i.e., not for single values), and only if all other fields are not set.", + "type": "string" + } + }, + "type": "object" + }, + "Weight": { + "id": "Weight", + "properties": { + "unit": { + "description": "The weight unit.", + "type": "string" + }, + "value": { + "description": "The weight represented as a number.", + "type": "string" + } + }, + "type": "object" } - } }, - "accounttax": { - "methods": { - "custombatch": { - "id": "content.accounttax.custombatch", - "path": "accounttax/batch", - "httpMethod": "POST", - "description": "Retrieves and updates tax settings of multiple accounts in a single request.", - "parameters": { - "dryRun": { - "type": "boolean", - "description": "Flag to run the request in dry-run mode.", - "location": "query" - } - }, - "request": { - "$ref": "AccounttaxCustomBatchRequest" - }, - "response": { - "$ref": "AccounttaxCustomBatchResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/content" - ] - }, - "get": { - "id": "content.accounttax.get", - "path": "{merchantId}/accounttax/{accountId}", - "httpMethod": "GET", - "description": "Retrieves the tax settings of the account.", - "parameters": { - "accountId": { - "type": "string", - "description": "The ID of the account for which to get/update account tax settings.", - "required": true, - "format": "uint64", - "location": "path" - }, - "merchantId": { - "type": "string", - "description": "The ID of the managing account. If this parameter is not the same as accountId, then this account must be a multi-client account and accountId must be the ID of a sub-account of this account.", - "required": true, - "format": "uint64", - "location": "path" - } - }, - "parameterOrder": [ - "merchantId", - "accountId" - ], - "response": { - "$ref": "AccountTax" - }, - "scopes": [ - "https://www.googleapis.com/auth/content" - ] - }, - "list": { - "id": "content.accounttax.list", - "path": "{merchantId}/accounttax", - "httpMethod": "GET", - "description": "Lists the tax settings of the sub-accounts in your Merchant Center account.", - "parameters": { - "maxResults": { - "type": "integer", - "description": "The maximum number of tax settings to return in the response, used for paging.", - "format": "uint32", - "location": "query" - }, - "merchantId": { - "type": "string", - "description": "The ID of the managing account. This must be a multi-client account.", - "required": true, - "format": "uint64", - "location": "path" - }, - "pageToken": { - "type": "string", - "description": "The token returned by the previous request.", - "location": "query" - } - }, - "parameterOrder": [ - "merchantId" - ], - "response": { - "$ref": "AccounttaxListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/content" - ] - }, - "patch": { - "id": "content.accounttax.patch", - "path": "{merchantId}/accounttax/{accountId}", - "httpMethod": "PATCH", - "description": "Updates the tax settings of the account. This method supports patch semantics.", - "parameters": { - "accountId": { - "type": "string", - "description": "The ID of the account for which to get/update account tax settings.", - "required": true, - "format": "uint64", - "location": "path" - }, - "dryRun": { - "type": "boolean", - "description": "Flag to run the request in dry-run mode.", - "location": "query" - }, - "merchantId": { - "type": "string", - "description": "The ID of the managing account. If this parameter is not the same as accountId, then this account must be a multi-client account and accountId must be the ID of a sub-account of this account.", - "required": true, - "format": "uint64", - "location": "path" - } - }, - "parameterOrder": [ - "merchantId", - "accountId" - ], - "request": { - "$ref": "AccountTax" - }, - "response": { - "$ref": "AccountTax" - }, - "scopes": [ - "https://www.googleapis.com/auth/content" - ] - }, - "update": { - "id": "content.accounttax.update", - "path": "{merchantId}/accounttax/{accountId}", - "httpMethod": "PUT", - "description": "Updates the tax settings of the account.", - "parameters": { - "accountId": { - "type": "string", - "description": "The ID of the account for which to get/update account tax settings.", - "required": true, - "format": "uint64", - "location": "path" - }, - "dryRun": { - "type": "boolean", - "description": "Flag to run the request in dry-run mode.", - "location": "query" - }, - "merchantId": { - "type": "string", - "description": "The ID of the managing account. If this parameter is not the same as accountId, then this account must be a multi-client account and accountId must be the ID of a sub-account of this account.", - "required": true, - "format": "uint64", - "location": "path" - } - }, - "parameterOrder": [ - "merchantId", - "accountId" - ], - "request": { - "$ref": "AccountTax" - }, - "response": { - "$ref": "AccountTax" - }, - "scopes": [ - "https://www.googleapis.com/auth/content" - ] - } - } - }, - "datafeeds": { - "methods": { - "custombatch": { - "id": "content.datafeeds.custombatch", - "path": "datafeeds/batch", - "httpMethod": "POST", - "parameters": { - "dryRun": { - "type": "boolean", - "description": "Flag to run the request in dry-run mode.", - "location": "query" - } - }, - "request": { - "$ref": "DatafeedsCustomBatchRequest" - }, - "response": { - "$ref": "DatafeedsCustomBatchResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/content" - ] - }, - "delete": { - "id": "content.datafeeds.delete", - "path": "{merchantId}/datafeeds/{datafeedId}", - "httpMethod": "DELETE", - "description": "Deletes a datafeed configuration from your Merchant Center account.", - "parameters": { - "datafeedId": { - "type": "string", - "description": "The ID of the datafeed.", - "required": true, - "format": "uint64", - "location": "path" - }, - "dryRun": { - "type": "boolean", - "description": "Flag to run the request in dry-run mode.", - "location": "query" - }, - "merchantId": { - "type": "string", - "description": "The ID of the account that manages the datafeed. This account cannot be a multi-client account.", - "required": true, - "format": "uint64", - "location": "path" - } - }, - "parameterOrder": [ - "merchantId", - "datafeedId" - ], - "scopes": [ - "https://www.googleapis.com/auth/content" - ] - }, - "get": { - "id": "content.datafeeds.get", - "path": "{merchantId}/datafeeds/{datafeedId}", - "httpMethod": "GET", - "description": "Retrieves a datafeed configuration from your Merchant Center account.", - "parameters": { - "datafeedId": { - "type": "string", - "description": "The ID of the datafeed.", - "required": true, - "format": "uint64", - "location": "path" - }, - "merchantId": { - "type": "string", - "description": "The ID of the account that manages the datafeed. This account cannot be a multi-client account.", - "required": true, - "format": "uint64", - "location": "path" - } - }, - "parameterOrder": [ - "merchantId", - "datafeedId" - ], - "response": { - "$ref": "Datafeed" - }, - "scopes": [ - "https://www.googleapis.com/auth/content" - ] - }, - "insert": { - "id": "content.datafeeds.insert", - "path": "{merchantId}/datafeeds", - "httpMethod": "POST", - "description": "Registers a datafeed configuration with your Merchant Center account.", - "parameters": { - "dryRun": { - "type": "boolean", - "description": "Flag to run the request in dry-run mode.", - "location": "query" - }, - "merchantId": { - "type": "string", - "description": "The ID of the account that manages the datafeed. This account cannot be a multi-client account.", - "required": true, - "format": "uint64", - "location": "path" - } - }, - "parameterOrder": [ - "merchantId" - ], - "request": { - "$ref": "Datafeed" - }, - "response": { - "$ref": "Datafeed" - }, - "scopes": [ - "https://www.googleapis.com/auth/content" - ] - }, - "list": { - "id": "content.datafeeds.list", - "path": "{merchantId}/datafeeds", - "httpMethod": "GET", - "description": "Lists the configurations for datafeeds in your Merchant Center account.", - "parameters": { - "maxResults": { - "type": "integer", - "description": "The maximum number of products to return in the response, used for paging.", - "format": "uint32", - "location": "query" - }, - "merchantId": { - "type": "string", - "description": "The ID of the account that manages the datafeeds. This account cannot be a multi-client account.", - "required": true, - "format": "uint64", - "location": "path" - }, - "pageToken": { - "type": "string", - "description": "The token returned by the previous request.", - "location": "query" - } - }, - "parameterOrder": [ - "merchantId" - ], - "response": { - "$ref": "DatafeedsListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/content" - ] - }, - "patch": { - "id": "content.datafeeds.patch", - "path": "{merchantId}/datafeeds/{datafeedId}", - "httpMethod": "PATCH", - "description": "Updates a datafeed configuration of your Merchant Center account. This method supports patch semantics.", - "parameters": { - "datafeedId": { - "type": "string", - "description": "The ID of the datafeed.", - "required": true, - "format": "uint64", - "location": "path" - }, - "dryRun": { - "type": "boolean", - "description": "Flag to run the request in dry-run mode.", - "location": "query" - }, - "merchantId": { - "type": "string", - "description": "The ID of the account that manages the datafeed. This account cannot be a multi-client account.", - "required": true, - "format": "uint64", - "location": "path" - } - }, - "parameterOrder": [ - "merchantId", - "datafeedId" - ], - "request": { - "$ref": "Datafeed" - }, - "response": { - "$ref": "Datafeed" - }, - "scopes": [ - "https://www.googleapis.com/auth/content" - ] - }, - "update": { - "id": "content.datafeeds.update", - "path": "{merchantId}/datafeeds/{datafeedId}", - "httpMethod": "PUT", - "description": "Updates a datafeed configuration of your Merchant Center account.", - "parameters": { - "datafeedId": { - "type": "string", - "description": "The ID of the datafeed.", - "required": true, - "format": "uint64", - "location": "path" - }, - "dryRun": { - "type": "boolean", - "description": "Flag to run the request in dry-run mode.", - "location": "query" - }, - "merchantId": { - "type": "string", - "description": "The ID of the account that manages the datafeed. This account cannot be a multi-client account.", - "required": true, - "format": "uint64", - "location": "path" - } - }, - "parameterOrder": [ - "merchantId", - "datafeedId" - ], - "request": { - "$ref": "Datafeed" - }, - "response": { - "$ref": "Datafeed" - }, - "scopes": [ - "https://www.googleapis.com/auth/content" - ] - } - } - }, - "datafeedstatuses": { - "methods": { - "custombatch": { - "id": "content.datafeedstatuses.custombatch", - "path": "datafeedstatuses/batch", - "httpMethod": "POST", - "request": { - "$ref": "DatafeedstatusesCustomBatchRequest" - }, - "response": { - "$ref": "DatafeedstatusesCustomBatchResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/content" - ] - }, - "get": { - "id": "content.datafeedstatuses.get", - "path": "{merchantId}/datafeedstatuses/{datafeedId}", - "httpMethod": "GET", - "description": "Retrieves the status of a datafeed from your Merchant Center account.", - "parameters": { - "country": { - "type": "string", - "description": "The country for which to get the datafeed status. If this parameter is provided then language must also be provided. Note that this parameter is required for feeds targeting multiple countries and languages, since a feed may have a different status for each target.", - "location": "query" - }, - "datafeedId": { - "type": "string", - "description": "The ID of the datafeed.", - "required": true, - "format": "uint64", - "location": "path" - }, - "language": { - "type": "string", - "description": "The language for which to get the datafeed status. If this parameter is provided then country must also be provided. Note that this parameter is required for feeds targeting multiple countries and languages, since a feed may have a different status for each target.", - "location": "query" - }, - "merchantId": { - "type": "string", - "description": "The ID of the account that manages the datafeed. This account cannot be a multi-client account.", - "required": true, - "format": "uint64", - "location": "path" - } - }, - "parameterOrder": [ - "merchantId", - "datafeedId" - ], - "response": { - "$ref": "DatafeedStatus" - }, - "scopes": [ - "https://www.googleapis.com/auth/content" - ] - }, - "list": { - "id": "content.datafeedstatuses.list", - "path": "{merchantId}/datafeedstatuses", - "httpMethod": "GET", - "description": "Lists the statuses of the datafeeds in your Merchant Center account.", - "parameters": { - "maxResults": { - "type": "integer", - "description": "The maximum number of products to return in the response, used for paging.", - "format": "uint32", - "location": "query" - }, - "merchantId": { - "type": "string", - "description": "The ID of the account that manages the datafeeds. This account cannot be a multi-client account.", - "required": true, - "format": "uint64", - "location": "path" - }, - "pageToken": { - "type": "string", - "description": "The token returned by the previous request.", - "location": "query" - } - }, - "parameterOrder": [ - "merchantId" - ], - "response": { - "$ref": "DatafeedstatusesListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/content" - ] - } - } - }, - "inventory": { - "methods": { - "custombatch": { - "id": "content.inventory.custombatch", - "path": "inventory/batch", - "httpMethod": "POST", - "description": "Updates price and availability for multiple products or stores in a single request. This operation does not update the expiration date of the products.", - "parameters": { - "dryRun": { - "type": "boolean", - "description": "Flag to run the request in dry-run mode.", - "location": "query" - } - }, - "request": { - "$ref": "InventoryCustomBatchRequest" - }, - "response": { - "$ref": "InventoryCustomBatchResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/content" - ] - }, - "set": { - "id": "content.inventory.set", - "path": "{merchantId}/inventory/{storeCode}/products/{productId}", - "httpMethod": "POST", - "description": "Updates price and availability of a product in your Merchant Center account.", - "parameters": { - "dryRun": { - "type": "boolean", - "description": "Flag to run the request in dry-run mode.", - "location": "query" - }, - "merchantId": { - "type": "string", - "description": "The ID of the account that contains the product. This account cannot be a multi-client account.", - "required": true, - "format": "uint64", - "location": "path" - }, - "productId": { - "type": "string", - "description": "The REST id of the product for which to update price and availability.", - "required": true, - "location": "path" - }, - "storeCode": { - "type": "string", - "description": "The code of the store for which to update price and availability. Use online to update price and availability of an online product.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "merchantId", - "storeCode", - "productId" - ], - "request": { - "$ref": "InventorySetRequest" - }, - "response": { - "$ref": "InventorySetResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/content" - ] - } - } - }, - "orders": { - "methods": { - "acknowledge": { - "id": "content.orders.acknowledge", - "path": "{merchantId}/orders/{orderId}/acknowledge", - "httpMethod": "POST", - "description": "Marks an order as acknowledged.", - "parameters": { - "merchantId": { - "type": "string", - "description": "The ID of the account that manages the order. This cannot be a multi-client account.", - "required": true, - "format": "uint64", - "location": "path" - }, - "orderId": { - "type": "string", - "description": "The ID of the order.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "merchantId", - "orderId" - ], - "request": { - "$ref": "OrdersAcknowledgeRequest" - }, - "response": { - "$ref": "OrdersAcknowledgeResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/content" - ] - }, - "advancetestorder": { - "id": "content.orders.advancetestorder", - "path": "{merchantId}/testorders/{orderId}/advance", - "httpMethod": "POST", - "description": "Sandbox only. Moves a test order from state \"inProgress\" to state \"pendingShipment\".", - "parameters": { - "merchantId": { - "type": "string", - "description": "The ID of the account that manages the order. This cannot be a multi-client account.", - "required": true, - "format": "uint64", - "location": "path" - }, - "orderId": { - "type": "string", - "description": "The ID of the test order to modify.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "merchantId", - "orderId" - ], - "response": { - "$ref": "OrdersAdvanceTestOrderResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/content" - ] - }, - "cancel": { - "id": "content.orders.cancel", - "path": "{merchantId}/orders/{orderId}/cancel", - "httpMethod": "POST", - "description": "Cancels all line items in an order, making a full refund.", - "parameters": { - "merchantId": { - "type": "string", - "description": "The ID of the account that manages the order. This cannot be a multi-client account.", - "required": true, - "format": "uint64", - "location": "path" - }, - "orderId": { - "type": "string", - "description": "The ID of the order to cancel.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "merchantId", - "orderId" - ], - "request": { - "$ref": "OrdersCancelRequest" - }, - "response": { - "$ref": "OrdersCancelResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/content" - ] - }, - "cancellineitem": { - "id": "content.orders.cancellineitem", - "path": "{merchantId}/orders/{orderId}/cancelLineItem", - "httpMethod": "POST", - "description": "Cancels a line item, making a full refund.", - "parameters": { - "merchantId": { - "type": "string", - "description": "The ID of the account that manages the order. This cannot be a multi-client account.", - "required": true, - "format": "uint64", - "location": "path" - }, - "orderId": { - "type": "string", - "description": "The ID of the order.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "merchantId", - "orderId" - ], - "request": { - "$ref": "OrdersCancelLineItemRequest" - }, - "response": { - "$ref": "OrdersCancelLineItemResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/content" - ] - }, - "createtestorder": { - "id": "content.orders.createtestorder", - "path": "{merchantId}/testorders", - "httpMethod": "POST", - "description": "Sandbox only. Creates a test order.", - "parameters": { - "merchantId": { - "type": "string", - "description": "The ID of the account that should manage the order. This cannot be a multi-client account.", - "required": true, - "format": "uint64", - "location": "path" - } - }, - "parameterOrder": [ - "merchantId" - ], - "request": { - "$ref": "OrdersCreateTestOrderRequest" - }, - "response": { - "$ref": "OrdersCreateTestOrderResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/content" - ] - }, - "custombatch": { - "id": "content.orders.custombatch", - "path": "orders/batch", - "httpMethod": "POST", - "description": "Retrieves or modifies multiple orders in a single request.", - "request": { - "$ref": "OrdersCustomBatchRequest" - }, - "response": { - "$ref": "OrdersCustomBatchResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/content" - ] - }, - "get": { - "id": "content.orders.get", - "path": "{merchantId}/orders/{orderId}", - "httpMethod": "GET", - "description": "Retrieves an order from your Merchant Center account.", - "parameters": { - "merchantId": { - "type": "string", - "description": "The ID of the account that manages the order. This cannot be a multi-client account.", - "required": true, - "format": "uint64", - "location": "path" - }, - "orderId": { - "type": "string", - "description": "The ID of the order.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "merchantId", - "orderId" - ], - "response": { - "$ref": "Order" - }, - "scopes": [ - "https://www.googleapis.com/auth/content" - ] - }, - "getbymerchantorderid": { - "id": "content.orders.getbymerchantorderid", - "path": "{merchantId}/ordersbymerchantid/{merchantOrderId}", - "httpMethod": "GET", - "description": "Retrieves an order using merchant order id.", - "parameters": { - "merchantId": { - "type": "string", - "description": "The ID of the account that manages the order. This cannot be a multi-client account.", - "required": true, - "format": "uint64", - "location": "path" - }, - "merchantOrderId": { - "type": "string", - "description": "The merchant order id to be looked for.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "merchantId", - "merchantOrderId" - ], - "response": { - "$ref": "OrdersGetByMerchantOrderIdResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/content" - ] - }, - "gettestordertemplate": { - "id": "content.orders.gettestordertemplate", - "path": "{merchantId}/testordertemplates/{templateName}", - "httpMethod": "GET", - "description": "Sandbox only. Retrieves an order template that can be used to quickly create a new order in sandbox.", - "parameters": { - "merchantId": { - "type": "string", - "description": "The ID of the account that should manage the order. This cannot be a multi-client account.", - "required": true, - "format": "uint64", - "location": "path" - }, - "templateName": { - "type": "string", - "description": "The name of the template to retrieve.", - "required": true, - "enum": [ - "template1", - "template1a", - "template1b", - "template2" - ], - "enumDescriptions": [ - "", - "", - "", - "" - ], - "location": "path" - } - }, - "parameterOrder": [ - "merchantId", - "templateName" - ], - "response": { - "$ref": "OrdersGetTestOrderTemplateResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/content" - ] - }, - "instorerefundlineitem": { - "id": "content.orders.instorerefundlineitem", - "path": "{merchantId}/orders/{orderId}/inStoreRefundLineItem", - "httpMethod": "POST", - "description": "Notifies that item return and refund was handled directly in store.", - "parameters": { - "merchantId": { - "type": "string", - "description": "The ID of the account that manages the order. This cannot be a multi-client account.", - "required": true, - "format": "uint64", - "location": "path" - }, - "orderId": { - "type": "string", - "description": "The ID of the order.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "merchantId", - "orderId" - ], - "request": { - "$ref": "OrdersInStoreRefundLineItemRequest" - }, - "response": { - "$ref": "OrdersInStoreRefundLineItemResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/content" - ] - }, - "list": { - "id": "content.orders.list", - "path": "{merchantId}/orders", - "httpMethod": "GET", - "description": "Lists the orders in your Merchant Center account.", - "parameters": { - "acknowledged": { - "type": "boolean", - "description": "Obtains orders that match the acknowledgement status. When set to true, obtains orders that have been acknowledged. When false, obtains orders that have not been acknowledged.\nWe recommend using this filter set to false, in conjunction with the acknowledge call, such that only un-acknowledged orders are returned.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of orders to return in the response, used for paging. The default value is 25 orders per page, and the maximum allowed value is 250 orders per page.\nKnown issue: All List calls will return all Orders without limit regardless of the value of this field.", - "format": "uint32", - "location": "query" - }, - "merchantId": { - "type": "string", - "description": "The ID of the account that manages the order. This cannot be a multi-client account.", - "required": true, - "format": "uint64", - "location": "path" - }, - "orderBy": { - "type": "string", - "description": "The ordering of the returned list. The only supported value are placedDate desc and placedDate asc for now, which returns orders sorted by placement date. \"placedDate desc\" stands for listing orders by placement date, from oldest to most recent. \"placedDate asc\" stands for listing orders by placement date, from most recent to oldest. In future releases we'll support other sorting criteria.", - "enum": [ - "placedDate asc", - "placedDate desc" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "The token returned by the previous request.", - "location": "query" - }, - "placedDateEnd": { - "type": "string", - "description": "Obtains orders placed before this date (exclusively), in ISO 8601 format.", - "location": "query" - }, - "placedDateStart": { - "type": "string", - "description": "Obtains orders placed after this date (inclusively), in ISO 8601 format.", - "location": "query" - }, - "statuses": { - "type": "string", - "description": "Obtains orders that match any of the specified statuses. Multiple values can be specified with comma separation. Additionally, please note that active is a shortcut for pendingShipment and partiallyShipped, and completed is a shortcut for shipped , partiallyDelivered, delivered, partiallyReturned, returned, and canceled.", - "enum": [ - "active", - "canceled", - "completed", - "delivered", - "inProgress", - "partiallyDelivered", - "partiallyReturned", - "partiallyShipped", - "pendingShipment", - "returned", - "shipped" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ], - "repeated": true, - "location": "query" - } - }, - "parameterOrder": [ - "merchantId" - ], - "response": { - "$ref": "OrdersListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/content" - ] - }, - "refund": { - "id": "content.orders.refund", - "path": "{merchantId}/orders/{orderId}/refund", - "httpMethod": "POST", - "description": "Refund a portion of the order, up to the full amount paid.", - "parameters": { - "merchantId": { - "type": "string", - "description": "The ID of the account that manages the order. This cannot be a multi-client account.", - "required": true, - "format": "uint64", - "location": "path" - }, - "orderId": { - "type": "string", - "description": "The ID of the order to refund.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "merchantId", - "orderId" - ], - "request": { - "$ref": "OrdersRefundRequest" - }, - "response": { - "$ref": "OrdersRefundResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/content" - ] - }, - "rejectreturnlineitem": { - "id": "content.orders.rejectreturnlineitem", - "path": "{merchantId}/orders/{orderId}/rejectReturnLineItem", - "httpMethod": "POST", - "description": "Rejects return on an line item.", - "parameters": { - "merchantId": { - "type": "string", - "description": "The ID of the account that manages the order. This cannot be a multi-client account.", - "required": true, - "format": "uint64", - "location": "path" - }, - "orderId": { - "type": "string", - "description": "The ID of the order.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "merchantId", - "orderId" - ], - "request": { - "$ref": "OrdersRejectReturnLineItemRequest" - }, - "response": { - "$ref": "OrdersRejectReturnLineItemResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/content" - ] - }, - "returnlineitem": { - "id": "content.orders.returnlineitem", - "path": "{merchantId}/orders/{orderId}/returnLineItem", - "httpMethod": "POST", - "description": "Returns a line item.", - "parameters": { - "merchantId": { - "type": "string", - "description": "The ID of the account that manages the order. This cannot be a multi-client account.", - "required": true, - "format": "uint64", - "location": "path" - }, - "orderId": { - "type": "string", - "description": "The ID of the order.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "merchantId", - "orderId" - ], - "request": { - "$ref": "OrdersReturnLineItemRequest" - }, - "response": { - "$ref": "OrdersReturnLineItemResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/content" - ] - }, - "returnrefundlineitem": { - "id": "content.orders.returnrefundlineitem", - "path": "{merchantId}/orders/{orderId}/returnRefundLineItem", - "httpMethod": "POST", - "description": "Returns and refunds a line item. Note that this method can only be called on fully shipped orders.", - "parameters": { - "merchantId": { - "type": "string", - "description": "The ID of the account that manages the order. This cannot be a multi-client account.", - "required": true, - "format": "uint64", - "location": "path" - }, - "orderId": { - "type": "string", - "description": "The ID of the order.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "merchantId", - "orderId" - ], - "request": { - "$ref": "OrdersReturnRefundLineItemRequest" - }, - "response": { - "$ref": "OrdersReturnRefundLineItemResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/content" - ] - }, - "setlineitemmetadata": { - "id": "content.orders.setlineitemmetadata", - "path": "{merchantId}/orders/{orderId}/setLineItemMetadata", - "httpMethod": "POST", - "description": "Sets (overrides) merchant provided annotations on the line item.", - "parameters": { - "merchantId": { - "type": "string", - "description": "The ID of the account that manages the order. This cannot be a multi-client account.", - "required": true, - "format": "uint64", - "location": "path" - }, - "orderId": { - "type": "string", - "description": "The ID of the order.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "merchantId", - "orderId" - ], - "request": { - "$ref": "OrdersSetLineItemMetadataRequest" - }, - "response": { - "$ref": "OrdersSetLineItemMetadataResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/content" - ] - }, - "shiplineitems": { - "id": "content.orders.shiplineitems", - "path": "{merchantId}/orders/{orderId}/shipLineItems", - "httpMethod": "POST", - "description": "Marks line item(s) as shipped.", - "parameters": { - "merchantId": { - "type": "string", - "description": "The ID of the account that manages the order. This cannot be a multi-client account.", - "required": true, - "format": "uint64", - "location": "path" - }, - "orderId": { - "type": "string", - "description": "The ID of the order.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "merchantId", - "orderId" - ], - "request": { - "$ref": "OrdersShipLineItemsRequest" - }, - "response": { - "$ref": "OrdersShipLineItemsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/content" - ] - }, - "updatelineitemshippingdetails": { - "id": "content.orders.updatelineitemshippingdetails", - "path": "{merchantId}/orders/{orderId}/updateLineItemShippingDetails", - "httpMethod": "POST", - "description": "Updates ship by and delivery by dates for a line item.", - "parameters": { - "merchantId": { - "type": "string", - "description": "The ID of the account that manages the order. This cannot be a multi-client account.", - "required": true, - "format": "uint64", - "location": "path" - }, - "orderId": { - "type": "string", - "description": "The ID of the order.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "merchantId", - "orderId" - ], - "request": { - "$ref": "OrdersUpdateLineItemShippingDetailsRequest" - }, - "response": { - "$ref": "OrdersUpdateLineItemShippingDetailsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/content" - ] - }, - "updatemerchantorderid": { - "id": "content.orders.updatemerchantorderid", - "path": "{merchantId}/orders/{orderId}/updateMerchantOrderId", - "httpMethod": "POST", - "description": "Updates the merchant order ID for a given order.", - "parameters": { - "merchantId": { - "type": "string", - "description": "The ID of the account that manages the order. This cannot be a multi-client account.", - "required": true, - "format": "uint64", - "location": "path" - }, - "orderId": { - "type": "string", - "description": "The ID of the order.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "merchantId", - "orderId" - ], - "request": { - "$ref": "OrdersUpdateMerchantOrderIdRequest" - }, - "response": { - "$ref": "OrdersUpdateMerchantOrderIdResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/content" - ] - }, - "updateshipment": { - "id": "content.orders.updateshipment", - "path": "{merchantId}/orders/{orderId}/updateShipment", - "httpMethod": "POST", - "description": "Updates a shipment's status, carrier, and/or tracking ID.", - "parameters": { - "merchantId": { - "type": "string", - "description": "The ID of the account that manages the order. This cannot be a multi-client account.", - "required": true, - "format": "uint64", - "location": "path" - }, - "orderId": { - "type": "string", - "description": "The ID of the order.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "merchantId", - "orderId" - ], - "request": { - "$ref": "OrdersUpdateShipmentRequest" - }, - "response": { - "$ref": "OrdersUpdateShipmentResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/content" - ] - } - } - }, - "products": { - "methods": { - "custombatch": { - "id": "content.products.custombatch", - "path": "products/batch", - "httpMethod": "POST", - "description": "Retrieves, inserts, and deletes multiple products in a single request.", - "parameters": { - "dryRun": { - "type": "boolean", - "description": "Flag to run the request in dry-run mode.", - "location": "query" - } - }, - "request": { - "$ref": "ProductsCustomBatchRequest" - }, - "response": { - "$ref": "ProductsCustomBatchResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/content" - ] - }, - "delete": { - "id": "content.products.delete", - "path": "{merchantId}/products/{productId}", - "httpMethod": "DELETE", - "description": "Deletes a product from your Merchant Center account.", - "parameters": { - "dryRun": { - "type": "boolean", - "description": "Flag to run the request in dry-run mode.", - "location": "query" - }, - "merchantId": { - "type": "string", - "description": "The ID of the account that contains the product. This account cannot be a multi-client account.", - "required": true, - "format": "uint64", - "location": "path" - }, - "productId": { - "type": "string", - "description": "The REST id of the product.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "merchantId", - "productId" - ], - "scopes": [ - "https://www.googleapis.com/auth/content" - ] - }, - "get": { - "id": "content.products.get", - "path": "{merchantId}/products/{productId}", - "httpMethod": "GET", - "description": "Retrieves a product from your Merchant Center account.", - "parameters": { - "merchantId": { - "type": "string", - "description": "The ID of the account that contains the product. This account cannot be a multi-client account.", - "required": true, - "format": "uint64", - "location": "path" - }, - "productId": { - "type": "string", - "description": "The REST id of the product.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "merchantId", - "productId" - ], - "response": { - "$ref": "Product" - }, - "scopes": [ - "https://www.googleapis.com/auth/content" - ] - }, - "insert": { - "id": "content.products.insert", - "path": "{merchantId}/products", - "httpMethod": "POST", - "description": "Uploads a product to your Merchant Center account. If an item with the same channel, contentLanguage, offerId, and targetCountry already exists, this method updates that entry.", - "parameters": { - "dryRun": { - "type": "boolean", - "description": "Flag to run the request in dry-run mode.", - "location": "query" - }, - "merchantId": { - "type": "string", - "description": "The ID of the account that contains the product. This account cannot be a multi-client account.", - "required": true, - "format": "uint64", - "location": "path" - } - }, - "parameterOrder": [ - "merchantId" - ], - "request": { - "$ref": "Product" - }, - "response": { - "$ref": "Product" - }, - "scopes": [ - "https://www.googleapis.com/auth/content" - ] - }, - "list": { - "id": "content.products.list", - "path": "{merchantId}/products", - "httpMethod": "GET", - "description": "Lists the products in your Merchant Center account.", - "parameters": { - "includeInvalidInsertedItems": { - "type": "boolean", - "description": "Flag to include the invalid inserted items in the result of the list request. By default the invalid items are not shown (the default value is false).", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of products to return in the response, used for paging.", - "format": "uint32", - "location": "query" - }, - "merchantId": { - "type": "string", - "description": "The ID of the account that contains the products. This account cannot be a multi-client account.", - "required": true, - "format": "uint64", - "location": "path" - }, - "pageToken": { - "type": "string", - "description": "The token returned by the previous request.", - "location": "query" - } - }, - "parameterOrder": [ - "merchantId" - ], - "response": { - "$ref": "ProductsListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/content" - ] - } - } - }, - "productstatuses": { - "methods": { - "custombatch": { - "id": "content.productstatuses.custombatch", - "path": "productstatuses/batch", - "httpMethod": "POST", - "description": "Gets the statuses of multiple products in a single request.", - "parameters": { - "includeAttributes": { - "type": "boolean", - "description": "Flag to include full product data in the results of this request. The default value is false.", - "location": "query" - } - }, - "request": { - "$ref": "ProductstatusesCustomBatchRequest" - }, - "response": { - "$ref": "ProductstatusesCustomBatchResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/content" - ] - }, - "get": { - "id": "content.productstatuses.get", - "path": "{merchantId}/productstatuses/{productId}", - "httpMethod": "GET", - "description": "Gets the status of a product from your Merchant Center account.", - "parameters": { - "includeAttributes": { - "type": "boolean", - "description": "Flag to include full product data in the result of this get request. The default value is false.", - "location": "query" - }, - "merchantId": { - "type": "string", - "description": "The ID of the account that contains the product. This account cannot be a multi-client account.", - "required": true, - "format": "uint64", - "location": "path" - }, - "productId": { - "type": "string", - "description": "The REST id of the product.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "merchantId", - "productId" - ], - "response": { - "$ref": "ProductStatus" - }, - "scopes": [ - "https://www.googleapis.com/auth/content" - ] - }, - "list": { - "id": "content.productstatuses.list", - "path": "{merchantId}/productstatuses", - "httpMethod": "GET", - "description": "Lists the statuses of the products in your Merchant Center account.", - "parameters": { - "includeAttributes": { - "type": "boolean", - "description": "Flag to include full product data in the results of the list request. The default value is false.", - "location": "query" - }, - "includeInvalidInsertedItems": { - "type": "boolean", - "description": "Flag to include the invalid inserted items in the result of the list request. By default the invalid items are not shown (the default value is false).", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of product statuses to return in the response, used for paging.", - "format": "uint32", - "location": "query" - }, - "merchantId": { - "type": "string", - "description": "The ID of the account that contains the products. This account cannot be a multi-client account.", - "required": true, - "format": "uint64", - "location": "path" - }, - "pageToken": { - "type": "string", - "description": "The token returned by the previous request.", - "location": "query" - } - }, - "parameterOrder": [ - "merchantId" - ], - "response": { - "$ref": "ProductstatusesListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/content" - ] - } - } - }, - "shippingsettings": { - "methods": { - "custombatch": { - "id": "content.shippingsettings.custombatch", - "path": "shippingsettings/batch", - "httpMethod": "POST", - "description": "Retrieves and updates the shipping settings of multiple accounts in a single request.", - "parameters": { - "dryRun": { - "type": "boolean", - "description": "Flag to run the request in dry-run mode.", - "location": "query" - } - }, - "request": { - "$ref": "ShippingsettingsCustomBatchRequest" - }, - "response": { - "$ref": "ShippingsettingsCustomBatchResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/content" - ] - }, - "get": { - "id": "content.shippingsettings.get", - "path": "{merchantId}/shippingsettings/{accountId}", - "httpMethod": "GET", - "description": "Retrieves the shipping settings of the account.", - "parameters": { - "accountId": { - "type": "string", - "description": "The ID of the account for which to get/update shipping settings.", - "required": true, - "format": "uint64", - "location": "path" - }, - "merchantId": { - "type": "string", - "description": "The ID of the managing account. If this parameter is not the same as accountId, then this account must be a multi-client account and accountId must be the ID of a sub-account of this account.", - "required": true, - "format": "uint64", - "location": "path" - } - }, - "parameterOrder": [ - "merchantId", - "accountId" - ], - "response": { - "$ref": "ShippingSettings" - }, - "scopes": [ - "https://www.googleapis.com/auth/content" - ] - }, - "getsupportedcarriers": { - "id": "content.shippingsettings.getsupportedcarriers", - "path": "{merchantId}/supportedCarriers", - "httpMethod": "GET", - "description": "Retrieves supported carriers and carrier services for an account.", - "parameters": { - "merchantId": { - "type": "string", - "description": "The ID of the account for which to retrieve the supported carriers.", - "required": true, - "format": "uint64", - "location": "path" - } - }, - "parameterOrder": [ - "merchantId" - ], - "response": { - "$ref": "ShippingsettingsGetSupportedCarriersResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/content" - ] - }, - "getsupportedholidays": { - "id": "content.shippingsettings.getsupportedholidays", - "path": "{merchantId}/supportedHolidays", - "httpMethod": "GET", - "description": "Retrieves supported holidays for an account.", - "parameters": { - "merchantId": { - "type": "string", - "description": "The ID of the account for which to retrieve the supported holidays.", - "required": true, - "format": "uint64", - "location": "path" - } - }, - "parameterOrder": [ - "merchantId" - ], - "response": { - "$ref": "ShippingsettingsGetSupportedHolidaysResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/content" - ] - }, - "list": { - "id": "content.shippingsettings.list", - "path": "{merchantId}/shippingsettings", - "httpMethod": "GET", - "description": "Lists the shipping settings of the sub-accounts in your Merchant Center account.", - "parameters": { - "maxResults": { - "type": "integer", - "description": "The maximum number of shipping settings to return in the response, used for paging.", - "format": "uint32", - "location": "query" - }, - "merchantId": { - "type": "string", - "description": "The ID of the managing account. This must be a multi-client account.", - "required": true, - "format": "uint64", - "location": "path" - }, - "pageToken": { - "type": "string", - "description": "The token returned by the previous request.", - "location": "query" - } - }, - "parameterOrder": [ - "merchantId" - ], - "response": { - "$ref": "ShippingsettingsListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/content" - ] - }, - "patch": { - "id": "content.shippingsettings.patch", - "path": "{merchantId}/shippingsettings/{accountId}", - "httpMethod": "PATCH", - "description": "Updates the shipping settings of the account. This method supports patch semantics.", - "parameters": { - "accountId": { - "type": "string", - "description": "The ID of the account for which to get/update shipping settings.", - "required": true, - "format": "uint64", - "location": "path" - }, - "dryRun": { - "type": "boolean", - "description": "Flag to run the request in dry-run mode.", - "location": "query" - }, - "merchantId": { - "type": "string", - "description": "The ID of the managing account. If this parameter is not the same as accountId, then this account must be a multi-client account and accountId must be the ID of a sub-account of this account.", - "required": true, - "format": "uint64", - "location": "path" - } - }, - "parameterOrder": [ - "merchantId", - "accountId" - ], - "request": { - "$ref": "ShippingSettings" - }, - "response": { - "$ref": "ShippingSettings" - }, - "scopes": [ - "https://www.googleapis.com/auth/content" - ] - }, - "update": { - "id": "content.shippingsettings.update", - "path": "{merchantId}/shippingsettings/{accountId}", - "httpMethod": "PUT", - "description": "Updates the shipping settings of the account.", - "parameters": { - "accountId": { - "type": "string", - "description": "The ID of the account for which to get/update shipping settings.", - "required": true, - "format": "uint64", - "location": "path" - }, - "dryRun": { - "type": "boolean", - "description": "Flag to run the request in dry-run mode.", - "location": "query" - }, - "merchantId": { - "type": "string", - "description": "The ID of the managing account. If this parameter is not the same as accountId, then this account must be a multi-client account and accountId must be the ID of a sub-account of this account.", - "required": true, - "format": "uint64", - "location": "path" - } - }, - "parameterOrder": [ - "merchantId", - "accountId" - ], - "request": { - "$ref": "ShippingSettings" - }, - "response": { - "$ref": "ShippingSettings" - }, - "scopes": [ - "https://www.googleapis.com/auth/content" - ] - } - } - } - } -} + "servicePath": "content/v2/", + "title": "Content API for Shopping", + "version": "v2" +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/content/v2/content-gen.go b/vendor/google.golang.org/api/content/v2/content-gen.go index 464d76ee3..9f7ed5908 100644 --- a/vendor/google.golang.org/api/content/v2/content-gen.go +++ b/vendor/google.golang.org/api/content/v2/content-gen.go @@ -62,7 +62,9 @@ func New(client *http.Client) (*APIService, error) { s.Datafeeds = NewDatafeedsService(s) s.Datafeedstatuses = NewDatafeedstatusesService(s) s.Inventory = NewInventoryService(s) + s.Liasettings = NewLiasettingsService(s) s.Orders = NewOrdersService(s) + s.Pos = NewPosService(s) s.Products = NewProductsService(s) s.Productstatuses = NewProductstatusesService(s) s.Shippingsettings = NewShippingsettingsService(s) @@ -86,8 +88,12 @@ type APIService struct { Inventory *InventoryService + Liasettings *LiasettingsService + Orders *OrdersService + Pos *PosService + Products *ProductsService Productstatuses *ProductstatusesService @@ -156,6 +162,15 @@ type InventoryService struct { s *APIService } +func NewLiasettingsService(s *APIService) *LiasettingsService { + rs := &LiasettingsService{s: s} + return rs +} + +type LiasettingsService struct { + s *APIService +} + func NewOrdersService(s *APIService) *OrdersService { rs := &OrdersService{s: s} return rs @@ -165,6 +180,15 @@ type OrdersService struct { s *APIService } +func NewPosService(s *APIService) *PosService { + rs := &PosService{s: s} + return rs +} + +type PosService struct { + s *APIService +} + func NewProductsService(s *APIService) *ProductsService { rs := &ProductsService{s: s} return rs @@ -219,8 +243,8 @@ type Account struct { // Name: Display name for the account. Name string `json:"name,omitempty"` - // ReviewsUrl: URL for individual seller reviews, i.e., reviews for each - // child account. + // ReviewsUrl: [DEPRECATED] This field is never returned and will be + // ignored if provided. ReviewsUrl string `json:"reviewsUrl,omitempty"` // SellerId: Client-specific, locally-unique, internal ID for the child @@ -309,7 +333,10 @@ func (s *AccountAdwordsLink) MarshalJSON() ([]byte, error) { } type AccountGoogleMyBusinessLink struct { - // GmbEmail: The GMB email address. + // GmbEmail: The GMB email address of which a specific account within a + // GMB account. A sample account within a GMB account could be a + // business account with set of locations, managed under the GMB + // account. GmbEmail string `json:"gmbEmail,omitempty"` // Status: Status of the link between this Merchant Center account and @@ -1807,7 +1834,7 @@ type DatafeedsCustomBatchRequestEntry struct { // Datafeed: The data feed to insert. Datafeed *Datafeed `json:"datafeed,omitempty"` - // DatafeedId: The ID of the data feed to get or delete. + // DatafeedId: The ID of the data feed to get, delete or fetch. DatafeedId uint64 `json:"datafeedId,omitempty,string"` // MerchantId: The ID of the managing account. @@ -2237,6 +2264,73 @@ func (s *Errors) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +type GmbAccounts struct { + // AccountId: The ID of the account. + AccountId uint64 `json:"accountId,omitempty,string"` + + // GmbAccounts: A list of GMB accounts which are available to the + // merchant. + GmbAccounts []*GmbAccountsGmbAccount `json:"gmbAccounts,omitempty"` + + // ForceSendFields is a list of field names (e.g. "AccountId") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "AccountId") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GmbAccounts) MarshalJSON() ([]byte, error) { + type NoMethod GmbAccounts + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +type GmbAccountsGmbAccount struct { + // Email: The email which identifies the GMB account. + Email string `json:"email,omitempty"` + + // ListingCount: Number of listings under this account. + ListingCount uint64 `json:"listingCount,omitempty,string"` + + // Name: The name of the GMB account. + Name string `json:"name,omitempty"` + + // Type: The type of the GMB account (User or Business). + Type string `json:"type,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Email") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Email") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GmbAccountsGmbAccount) MarshalJSON() ([]byte, error) { + type NoMethod GmbAccountsGmbAccount + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // Headers: A non-empty list of row or column headers for a table. // Exactly one of prices, weights, numItems, postalCodeGroupNames, or // locations must be set. @@ -2763,6 +2857,521 @@ func (s *InventorySetResponse) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +type LiaAboutPageSettings struct { + // Status: The status of the verification process for the About page. + Status string `json:"status,omitempty"` + + // Url: The URL for the About page. + Url string `json:"url,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Status") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Status") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *LiaAboutPageSettings) MarshalJSON() ([]byte, error) { + type NoMethod LiaAboutPageSettings + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +type LiaCountrySettings struct { + // About: The settings for the About page. + About *LiaAboutPageSettings `json:"about,omitempty"` + + // Country: CLDR country code (e.g. "US"). + Country string `json:"country,omitempty"` + + // HostedLocalStorefrontActive: The status of the "Merchant hosted local + // storefront" feature. + HostedLocalStorefrontActive bool `json:"hostedLocalStorefrontActive,omitempty"` + + // Inventory: LIA inventory verification settings. + Inventory *LiaInventorySettings `json:"inventory,omitempty"` + + // OnDisplayToOrder: LIA "On Display To Order" settings. + OnDisplayToOrder *LiaOnDisplayToOrderSettings `json:"onDisplayToOrder,omitempty"` + + // StorePickupActive: The status of the "Store pickup" feature. + StorePickupActive bool `json:"storePickupActive,omitempty"` + + // ForceSendFields is a list of field names (e.g. "About") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "About") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *LiaCountrySettings) MarshalJSON() ([]byte, error) { + type NoMethod LiaCountrySettings + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +type LiaInventorySettings struct { + // InventoryVerificationContactEmail: The email of the contact for the + // inventory verification process. + InventoryVerificationContactEmail string `json:"inventoryVerificationContactEmail,omitempty"` + + // InventoryVerificationContactName: The name of the contact for the + // inventory verification process. + InventoryVerificationContactName string `json:"inventoryVerificationContactName,omitempty"` + + // InventoryVerificationContactStatus: The status of the verification + // contact. + InventoryVerificationContactStatus string `json:"inventoryVerificationContactStatus,omitempty"` + + // Status: The status of the inventory verification process. + Status string `json:"status,omitempty"` + + // ForceSendFields is a list of field names (e.g. + // "InventoryVerificationContactEmail") to unconditionally include in + // API requests. By default, fields with empty values are omitted from + // API requests. However, any non-pointer, non-interface field appearing + // in ForceSendFields will be sent to the server regardless of whether + // the field is empty or not. This may be used to include empty fields + // in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. + // "InventoryVerificationContactEmail") to include in API requests with + // the JSON null value. By default, fields with empty values are omitted + // from API requests. However, any field with an empty value appearing + // in NullFields will be sent to the server as null. It is an error if a + // field in this list has a non-empty value. This may be used to include + // null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *LiaInventorySettings) MarshalJSON() ([]byte, error) { + type NoMethod LiaInventorySettings + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +type LiaOnDisplayToOrderSettings struct { + // ShippingCostPolicyUrl: Shipping cost and policy URL. + ShippingCostPolicyUrl string `json:"shippingCostPolicyUrl,omitempty"` + + // Status: The status of the ?On display to order? feature. + Status string `json:"status,omitempty"` + + // ForceSendFields is a list of field names (e.g. + // "ShippingCostPolicyUrl") to unconditionally include in API requests. + // By default, fields with empty values are omitted from API requests. + // However, any non-pointer, non-interface field appearing in + // ForceSendFields will be sent to the server regardless of whether the + // field is empty or not. This may be used to include empty fields in + // Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "ShippingCostPolicyUrl") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *LiaOnDisplayToOrderSettings) MarshalJSON() ([]byte, error) { + type NoMethod LiaOnDisplayToOrderSettings + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +type LiaSettings struct { + // AccountId: The ID of the account to which these LIA settings belong. + // Ignored upon update, always present in get request responses. + AccountId uint64 `json:"accountId,omitempty,string"` + + // CountrySettings: The LIA settings for each country. + CountrySettings []*LiaCountrySettings `json:"countrySettings,omitempty"` + + // Kind: Identifies what kind of resource this is. Value: the fixed + // string "content#liaSettings". + Kind string `json:"kind,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "AccountId") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "AccountId") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *LiaSettings) MarshalJSON() ([]byte, error) { + type NoMethod LiaSettings + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +type LiasettingsCustomBatchRequest struct { + // Entries: The request entries to be processed in the batch. + Entries []*LiasettingsCustomBatchRequestEntry `json:"entries,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Entries") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Entries") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *LiasettingsCustomBatchRequest) MarshalJSON() ([]byte, error) { + type NoMethod LiasettingsCustomBatchRequest + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +type LiasettingsCustomBatchRequestEntry struct { + // AccountId: The ID of the account for which to get/update account + // shipping settings. + AccountId uint64 `json:"accountId,omitempty,string"` + + // BatchId: An entry ID, unique within the batch request. + BatchId int64 `json:"batchId,omitempty"` + + // ContactEmail: Inventory validation contact email. Required only for + // SetInventoryValidationContact. + ContactEmail string `json:"contactEmail,omitempty"` + + // ContactName: Inventory validation contact name. Required only for + // SetInventoryValidationContact. + ContactName string `json:"contactName,omitempty"` + + // Country: The country code. Required only for + // RequestInventoryVerification. + Country string `json:"country,omitempty"` + + // GmbEmail: The GMB account. Required only for RequestGmbAccess. + GmbEmail string `json:"gmbEmail,omitempty"` + + // LiaSettings: The account Lia settings to update. Only defined if the + // method is update. + LiaSettings *LiaSettings `json:"liaSettings,omitempty"` + + // MerchantId: The ID of the managing account. + MerchantId uint64 `json:"merchantId,omitempty,string"` + + Method string `json:"method,omitempty"` + + // ForceSendFields is a list of field names (e.g. "AccountId") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "AccountId") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *LiasettingsCustomBatchRequestEntry) MarshalJSON() ([]byte, error) { + type NoMethod LiasettingsCustomBatchRequestEntry + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +type LiasettingsCustomBatchResponse struct { + // Entries: The result of the execution of the batch requests. + Entries []*LiasettingsCustomBatchResponseEntry `json:"entries,omitempty"` + + // Kind: Identifies what kind of resource this is. Value: the fixed + // string "content#liasettingsCustomBatchResponse". + Kind string `json:"kind,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "Entries") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Entries") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *LiasettingsCustomBatchResponse) MarshalJSON() ([]byte, error) { + type NoMethod LiasettingsCustomBatchResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +type LiasettingsCustomBatchResponseEntry struct { + // BatchId: The ID of the request entry to which this entry responds. + BatchId int64 `json:"batchId,omitempty"` + + // Errors: A list of errors defined if, and only if, the request failed. + Errors *Errors `json:"errors,omitempty"` + + // GmbAccounts: The the list of accessible GMB accounts. + GmbAccounts *GmbAccounts `json:"gmbAccounts,omitempty"` + + // Kind: Identifies what kind of resource this is. Value: the fixed + // string "content#liasettingsCustomBatchResponseEntry". + Kind string `json:"kind,omitempty"` + + // LiaSettings: The retrieved or updated Lia settings. + LiaSettings *LiaSettings `json:"liaSettings,omitempty"` + + // ForceSendFields is a list of field names (e.g. "BatchId") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "BatchId") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *LiasettingsCustomBatchResponseEntry) MarshalJSON() ([]byte, error) { + type NoMethod LiasettingsCustomBatchResponseEntry + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +type LiasettingsGetAccessibleGmbAccountsResponse struct { + // AccountId: The ID of the account. + AccountId uint64 `json:"accountId,omitempty,string"` + + // GmbAccounts: A list of GMB accounts which are available to the + // merchant. + GmbAccounts []*GmbAccountsGmbAccount `json:"gmbAccounts,omitempty"` + + // Kind: Identifies what kind of resource this is. Value: the fixed + // string "content#liasettingsGetAccessibleGmbAccountsResponse". + Kind string `json:"kind,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "AccountId") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "AccountId") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *LiasettingsGetAccessibleGmbAccountsResponse) MarshalJSON() ([]byte, error) { + type NoMethod LiasettingsGetAccessibleGmbAccountsResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +type LiasettingsListResponse struct { + // Kind: Identifies what kind of resource this is. Value: the fixed + // string "content#liasettingsListResponse". + Kind string `json:"kind,omitempty"` + + // NextPageToken: The token for the retrieval of the next page of LIA + // settings. + NextPageToken string `json:"nextPageToken,omitempty"` + + Resources []*LiaSettings `json:"resources,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "Kind") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Kind") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *LiasettingsListResponse) MarshalJSON() ([]byte, error) { + type NoMethod LiasettingsListResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +type LiasettingsRequestGmbAccessResponse struct { + // Kind: Identifies what kind of resource this is. Value: the fixed + // string "content#liasettingsRequestGmbAccessResponse". + Kind string `json:"kind,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "Kind") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Kind") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *LiasettingsRequestGmbAccessResponse) MarshalJSON() ([]byte, error) { + type NoMethod LiasettingsRequestGmbAccessResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +type LiasettingsRequestInventoryVerificationResponse struct { + // Kind: Identifies what kind of resource this is. Value: the fixed + // string "content#liasettingsRequestInventoryVerificationResponse". + Kind string `json:"kind,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "Kind") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Kind") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *LiasettingsRequestInventoryVerificationResponse) MarshalJSON() ([]byte, error) { + type NoMethod LiasettingsRequestInventoryVerificationResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +type LiasettingsSetInventoryVerificationContactResponse struct { + // Kind: Identifies what kind of resource this is. Value: the fixed + // string "content#liasettingsSetInventoryVerificationContactResponse". + Kind string `json:"kind,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "Kind") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Kind") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *LiasettingsSetInventoryVerificationContactResponse) MarshalJSON() ([]byte, error) { + type NoMethod LiasettingsSetInventoryVerificationContactResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + type LocationIdSet struct { // LocationIds: A non-empty list of location IDs. They must all be of // the same location type (e.g., state). @@ -3032,7 +3641,9 @@ func (s *OrderCancellation) MarshalJSON() ([]byte, error) { } type OrderCustomer struct { - // Email: Email address of the customer. + // Email: Email address that should be used for order related + // communications. In certain cases this might not be a real users + // email, but a proxy email. Email string `json:"email,omitempty"` // ExplicitMarketingPreference: If set, this indicates the user @@ -5671,6 +6282,575 @@ func (s *OrdersUpdateShipmentResponse) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +type PosCustomBatchRequest struct { + // Entries: The request entries to be processed in the batch. + Entries []*PosCustomBatchRequestEntry `json:"entries,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Entries") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Entries") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *PosCustomBatchRequest) MarshalJSON() ([]byte, error) { + type NoMethod PosCustomBatchRequest + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +type PosCustomBatchRequestEntry struct { + // BatchId: An entry ID, unique within the batch request. + BatchId int64 `json:"batchId,omitempty"` + + // Inventory: The inventory to submit. Set this only if the method is + // inventory. + Inventory *PosInventory `json:"inventory,omitempty"` + + // MerchantId: The ID of the POS provider. + MerchantId uint64 `json:"merchantId,omitempty,string"` + + Method string `json:"method,omitempty"` + + // Sale: The sale information to submit. Set this only if the method is + // sale. + Sale *PosSale `json:"sale,omitempty"` + + // Store: The store information to submit. Set this only if the method + // is insert. + Store *PosStore `json:"store,omitempty"` + + // StoreCode: The store code. Required only to get/submit store + // information. + StoreCode string `json:"storeCode,omitempty"` + + // TargetMerchantId: The ID of the account for which to get/submit data. + TargetMerchantId uint64 `json:"targetMerchantId,omitempty,string"` + + // ForceSendFields is a list of field names (e.g. "BatchId") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "BatchId") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *PosCustomBatchRequestEntry) MarshalJSON() ([]byte, error) { + type NoMethod PosCustomBatchRequestEntry + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +type PosCustomBatchResponse struct { + // Entries: The result of the execution of the batch requests. + Entries []*PosCustomBatchResponseEntry `json:"entries,omitempty"` + + // Kind: Identifies what kind of resource this is. Value: the fixed + // string "content#posCustomBatchResponse". + Kind string `json:"kind,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "Entries") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Entries") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *PosCustomBatchResponse) MarshalJSON() ([]byte, error) { + type NoMethod PosCustomBatchResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +type PosCustomBatchResponseEntry struct { + // BatchId: The ID of the request entry to which this entry responds. + BatchId int64 `json:"batchId,omitempty"` + + // Errors: A list of errors defined if, and only if, the request failed. + Errors *Errors `json:"errors,omitempty"` + + // Inventory: The updated inventory information. + Inventory *PosInventory `json:"inventory,omitempty"` + + // Kind: Identifies what kind of resource this is. Value: the fixed + // string "content#posCustomBatchResponseEntry". + Kind string `json:"kind,omitempty"` + + // Sale: The updated sale information. + Sale *PosSale `json:"sale,omitempty"` + + // Store: The retrieved or updated store information. + Store *PosStore `json:"store,omitempty"` + + // ForceSendFields is a list of field names (e.g. "BatchId") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "BatchId") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *PosCustomBatchResponseEntry) MarshalJSON() ([]byte, error) { + type NoMethod PosCustomBatchResponseEntry + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// PosInventory: The absolute quantity of an item available at the given +// store. +type PosInventory struct { + // ContentLanguage: The two-letter ISO 639-1 language code for the item. + ContentLanguage string `json:"contentLanguage,omitempty"` + + // Gtin: Global Trade Item Number. + Gtin string `json:"gtin,omitempty"` + + // ItemId: A unique identifier for the item. + ItemId string `json:"itemId,omitempty"` + + // Kind: Identifies what kind of resource this is. Value: the fixed + // string "content#posInventory". + Kind string `json:"kind,omitempty"` + + // Price: The current price of the item. + Price *Price `json:"price,omitempty"` + + // Quantity: The available quantity of the item. + Quantity int64 `json:"quantity,omitempty,string"` + + // StoreCode: The identifier of the merchant's store. Either a storeCode + // inserted via the API or the code of the store in Google My Business. + StoreCode string `json:"storeCode,omitempty"` + + // TargetCountry: The CLDR territory code for the item. + TargetCountry string `json:"targetCountry,omitempty"` + + // Timestamp: The inventory timestamp, in ISO 8601 format. + Timestamp string `json:"timestamp,omitempty"` + + // ForceSendFields is a list of field names (e.g. "ContentLanguage") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "ContentLanguage") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *PosInventory) MarshalJSON() ([]byte, error) { + type NoMethod PosInventory + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +type PosInventoryRequest struct { + // ContentLanguage: The two-letter ISO 639-1 language code for the item. + ContentLanguage string `json:"contentLanguage,omitempty"` + + // Gtin: Global Trade Item Number. + Gtin string `json:"gtin,omitempty"` + + // ItemId: A unique identifier for the item. + ItemId string `json:"itemId,omitempty"` + + // Price: The current price of the item. + Price *Price `json:"price,omitempty"` + + // Quantity: The available quantity of the item. + Quantity int64 `json:"quantity,omitempty,string"` + + // StoreCode: The identifier of the merchant's store. Either a storeCode + // inserted via the API or the code of the store in Google My Business. + StoreCode string `json:"storeCode,omitempty"` + + // TargetCountry: The CLDR territory code for the item. + TargetCountry string `json:"targetCountry,omitempty"` + + // Timestamp: The inventory timestamp, in ISO 8601 format. + Timestamp string `json:"timestamp,omitempty"` + + // ForceSendFields is a list of field names (e.g. "ContentLanguage") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "ContentLanguage") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *PosInventoryRequest) MarshalJSON() ([]byte, error) { + type NoMethod PosInventoryRequest + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +type PosInventoryResponse struct { + // ContentLanguage: The two-letter ISO 639-1 language code for the item. + ContentLanguage string `json:"contentLanguage,omitempty"` + + // Gtin: Global Trade Item Number. + Gtin string `json:"gtin,omitempty"` + + // ItemId: A unique identifier for the item. + ItemId string `json:"itemId,omitempty"` + + // Kind: Identifies what kind of resource this is. Value: the fixed + // string "content#posInventoryResponse". + Kind string `json:"kind,omitempty"` + + // Price: The current price of the item. + Price *Price `json:"price,omitempty"` + + // Quantity: The available quantity of the item. + Quantity int64 `json:"quantity,omitempty,string"` + + // StoreCode: The identifier of the merchant's store. Either a storeCode + // inserted via the API or the code of the store in Google My Business. + StoreCode string `json:"storeCode,omitempty"` + + // TargetCountry: The CLDR territory code for the item. + TargetCountry string `json:"targetCountry,omitempty"` + + // Timestamp: The inventory timestamp, in ISO 8601 format. + Timestamp string `json:"timestamp,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "ContentLanguage") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "ContentLanguage") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *PosInventoryResponse) MarshalJSON() ([]byte, error) { + type NoMethod PosInventoryResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +type PosListResponse struct { + // Kind: Identifies what kind of resource this is. Value: the fixed + // string "content#posListResponse". + Kind string `json:"kind,omitempty"` + + Resources []*PosStore `json:"resources,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "Kind") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Kind") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *PosListResponse) MarshalJSON() ([]byte, error) { + type NoMethod PosListResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// PosSale: The change of the available quantity of an item at the given +// store. +type PosSale struct { + // ContentLanguage: The two-letter ISO 639-1 language code for the item. + ContentLanguage string `json:"contentLanguage,omitempty"` + + // Gtin: Global Trade Item Number. + Gtin string `json:"gtin,omitempty"` + + // ItemId: A unique identifier for the item. + ItemId string `json:"itemId,omitempty"` + + // Kind: Identifies what kind of resource this is. Value: the fixed + // string "content#posSale". + Kind string `json:"kind,omitempty"` + + // Price: The price of the item. + Price *Price `json:"price,omitempty"` + + // Quantity: The relative change of the available quantity. Negative for + // items sold. + Quantity int64 `json:"quantity,omitempty,string"` + + // SaleId: A unique ID to group items from the same sale event. + SaleId string `json:"saleId,omitempty"` + + // StoreCode: The identifier of the merchant's store. Either a storeCode + // inserted via the API or the code of the store in Google My Business. + StoreCode string `json:"storeCode,omitempty"` + + // TargetCountry: The CLDR territory code for the item. + TargetCountry string `json:"targetCountry,omitempty"` + + // Timestamp: The inventory timestamp, in ISO 8601 format. + Timestamp string `json:"timestamp,omitempty"` + + // ForceSendFields is a list of field names (e.g. "ContentLanguage") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "ContentLanguage") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *PosSale) MarshalJSON() ([]byte, error) { + type NoMethod PosSale + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +type PosSaleRequest struct { + // ContentLanguage: The two-letter ISO 639-1 language code for the item. + ContentLanguage string `json:"contentLanguage,omitempty"` + + // Gtin: Global Trade Item Number. + Gtin string `json:"gtin,omitempty"` + + // ItemId: A unique identifier for the item. + ItemId string `json:"itemId,omitempty"` + + // Price: The price of the item. + Price *Price `json:"price,omitempty"` + + // Quantity: The relative change of the available quantity. Negative for + // items sold. + Quantity int64 `json:"quantity,omitempty,string"` + + // SaleId: A unique ID to group items from the same sale event. + SaleId string `json:"saleId,omitempty"` + + // StoreCode: The identifier of the merchant's store. Either a storeCode + // inserted via the API or the code of the store in Google My Business. + StoreCode string `json:"storeCode,omitempty"` + + // TargetCountry: The CLDR territory code for the item. + TargetCountry string `json:"targetCountry,omitempty"` + + // Timestamp: The inventory timestamp, in ISO 8601 format. + Timestamp string `json:"timestamp,omitempty"` + + // ForceSendFields is a list of field names (e.g. "ContentLanguage") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "ContentLanguage") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *PosSaleRequest) MarshalJSON() ([]byte, error) { + type NoMethod PosSaleRequest + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +type PosSaleResponse struct { + // ContentLanguage: The two-letter ISO 639-1 language code for the item. + ContentLanguage string `json:"contentLanguage,omitempty"` + + // Gtin: Global Trade Item Number. + Gtin string `json:"gtin,omitempty"` + + // ItemId: A unique identifier for the item. + ItemId string `json:"itemId,omitempty"` + + // Kind: Identifies what kind of resource this is. Value: the fixed + // string "content#posSaleResponse". + Kind string `json:"kind,omitempty"` + + // Price: The price of the item. + Price *Price `json:"price,omitempty"` + + // Quantity: The relative change of the available quantity. Negative for + // items sold. + Quantity int64 `json:"quantity,omitempty,string"` + + // SaleId: A unique ID to group items from the same sale event. + SaleId string `json:"saleId,omitempty"` + + // StoreCode: The identifier of the merchant's store. Either a storeCode + // inserted via the API or the code of the store in Google My Business. + StoreCode string `json:"storeCode,omitempty"` + + // TargetCountry: The CLDR territory code for the item. + TargetCountry string `json:"targetCountry,omitempty"` + + // Timestamp: The inventory timestamp, in ISO 8601 format. + Timestamp string `json:"timestamp,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "ContentLanguage") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "ContentLanguage") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *PosSaleResponse) MarshalJSON() ([]byte, error) { + type NoMethod PosSaleResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// PosStore: Store resource. +type PosStore struct { + // Kind: Identifies what kind of resource this is. Value: the fixed + // string "content#posStore". + Kind string `json:"kind,omitempty"` + + // StoreAddress: The street address of the store. + StoreAddress string `json:"storeAddress,omitempty"` + + // StoreCode: A store identifier that is unique for the given merchant. + StoreCode string `json:"storeCode,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "Kind") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Kind") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *PosStore) MarshalJSON() ([]byte, error) { + type NoMethod PosStore + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + type PostalCodeGroup struct { // Country: The CLDR territory code of the country the postal code group // applies to. Required. @@ -12241,6 +13421,1422 @@ func (c *InventorySetCall) Do(opts ...googleapi.CallOption) (*InventorySetRespon } +// method id "content.liasettings.custombatch": + +type LiasettingsCustombatchCall struct { + s *APIService + liasettingscustombatchrequest *LiasettingsCustomBatchRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Custombatch: Retrieves and/or updates the LIA settings of multiple +// accounts in a single request. +func (r *LiasettingsService) Custombatch(liasettingscustombatchrequest *LiasettingsCustomBatchRequest) *LiasettingsCustombatchCall { + c := &LiasettingsCustombatchCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.liasettingscustombatchrequest = liasettingscustombatchrequest + return c +} + +// DryRun sets the optional parameter "dryRun": Flag to run the request +// in dry-run mode. +func (c *LiasettingsCustombatchCall) DryRun(dryRun bool) *LiasettingsCustombatchCall { + c.urlParams_.Set("dryRun", fmt.Sprint(dryRun)) + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *LiasettingsCustombatchCall) Fields(s ...googleapi.Field) *LiasettingsCustombatchCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *LiasettingsCustombatchCall) Context(ctx context.Context) *LiasettingsCustombatchCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *LiasettingsCustombatchCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *LiasettingsCustombatchCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.liasettingscustombatchrequest) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "liasettings/batch") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("POST", urls, body) + req.Header = reqHeaders + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "content.liasettings.custombatch" call. +// Exactly one of *LiasettingsCustomBatchResponse or error will be +// non-nil. Any non-2xx status code is an error. Response headers are in +// either *LiasettingsCustomBatchResponse.ServerResponse.Header or (if a +// response was returned at all) in error.(*googleapi.Error).Header. Use +// googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *LiasettingsCustombatchCall) Do(opts ...googleapi.CallOption) (*LiasettingsCustomBatchResponse, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &LiasettingsCustomBatchResponse{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Retrieves and/or updates the LIA settings of multiple accounts in a single request.", + // "httpMethod": "POST", + // "id": "content.liasettings.custombatch", + // "parameters": { + // "dryRun": { + // "description": "Flag to run the request in dry-run mode.", + // "location": "query", + // "type": "boolean" + // } + // }, + // "path": "liasettings/batch", + // "request": { + // "$ref": "LiasettingsCustomBatchRequest" + // }, + // "response": { + // "$ref": "LiasettingsCustomBatchResponse" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/content" + // ] + // } + +} + +// method id "content.liasettings.get": + +type LiasettingsGetCall struct { + s *APIService + merchantId uint64 + accountId uint64 + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// Get: Retrieves the LIA settings of the account. +func (r *LiasettingsService) Get(merchantId uint64, accountId uint64) *LiasettingsGetCall { + c := &LiasettingsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.merchantId = merchantId + c.accountId = accountId + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *LiasettingsGetCall) Fields(s ...googleapi.Field) *LiasettingsGetCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// IfNoneMatch sets the optional parameter which makes the operation +// fail if the object's ETag matches the given value. This is useful for +// getting updates only after the object has changed since the last +// request. Use googleapi.IsNotModified to check whether the response +// error from Do is the result of In-None-Match. +func (c *LiasettingsGetCall) IfNoneMatch(entityTag string) *LiasettingsGetCall { + c.ifNoneMatch_ = entityTag + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *LiasettingsGetCall) Context(ctx context.Context) *LiasettingsGetCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *LiasettingsGetCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *LiasettingsGetCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + if c.ifNoneMatch_ != "" { + reqHeaders.Set("If-None-Match", c.ifNoneMatch_) + } + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/liasettings/{accountId}") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("GET", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "merchantId": strconv.FormatUint(c.merchantId, 10), + "accountId": strconv.FormatUint(c.accountId, 10), + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "content.liasettings.get" call. +// Exactly one of *LiaSettings or error will be non-nil. Any non-2xx +// status code is an error. Response headers are in either +// *LiaSettings.ServerResponse.Header or (if a response was returned at +// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified +// to check whether the returned error was because +// http.StatusNotModified was returned. +func (c *LiasettingsGetCall) Do(opts ...googleapi.CallOption) (*LiaSettings, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &LiaSettings{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Retrieves the LIA settings of the account.", + // "httpMethod": "GET", + // "id": "content.liasettings.get", + // "parameterOrder": [ + // "merchantId", + // "accountId" + // ], + // "parameters": { + // "accountId": { + // "description": "The ID of the account for which to get or update LIA settings.", + // "format": "uint64", + // "location": "path", + // "required": true, + // "type": "string" + // }, + // "merchantId": { + // "description": "The ID of the managing account. If this parameter is not the same as accountId, then this account must be a multi-client account and accountId must be the ID of a sub-account of this account.", + // "format": "uint64", + // "location": "path", + // "required": true, + // "type": "string" + // } + // }, + // "path": "{merchantId}/liasettings/{accountId}", + // "response": { + // "$ref": "LiaSettings" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/content" + // ] + // } + +} + +// method id "content.liasettings.getaccessiblegmbaccounts": + +type LiasettingsGetaccessiblegmbaccountsCall struct { + s *APIService + merchantId uint64 + accountId uint64 + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// Getaccessiblegmbaccounts: Retrieves the list of accessible Google My +// Business accounts. +func (r *LiasettingsService) Getaccessiblegmbaccounts(merchantId uint64, accountId uint64) *LiasettingsGetaccessiblegmbaccountsCall { + c := &LiasettingsGetaccessiblegmbaccountsCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.merchantId = merchantId + c.accountId = accountId + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *LiasettingsGetaccessiblegmbaccountsCall) Fields(s ...googleapi.Field) *LiasettingsGetaccessiblegmbaccountsCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// IfNoneMatch sets the optional parameter which makes the operation +// fail if the object's ETag matches the given value. This is useful for +// getting updates only after the object has changed since the last +// request. Use googleapi.IsNotModified to check whether the response +// error from Do is the result of In-None-Match. +func (c *LiasettingsGetaccessiblegmbaccountsCall) IfNoneMatch(entityTag string) *LiasettingsGetaccessiblegmbaccountsCall { + c.ifNoneMatch_ = entityTag + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *LiasettingsGetaccessiblegmbaccountsCall) Context(ctx context.Context) *LiasettingsGetaccessiblegmbaccountsCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *LiasettingsGetaccessiblegmbaccountsCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *LiasettingsGetaccessiblegmbaccountsCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + if c.ifNoneMatch_ != "" { + reqHeaders.Set("If-None-Match", c.ifNoneMatch_) + } + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/liasettings/{accountId}/accessiblegmbaccounts") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("GET", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "merchantId": strconv.FormatUint(c.merchantId, 10), + "accountId": strconv.FormatUint(c.accountId, 10), + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "content.liasettings.getaccessiblegmbaccounts" call. +// Exactly one of *LiasettingsGetAccessibleGmbAccountsResponse or error +// will be non-nil. Any non-2xx status code is an error. Response +// headers are in either +// *LiasettingsGetAccessibleGmbAccountsResponse.ServerResponse.Header or +// (if a response was returned at all) in +// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check +// whether the returned error was because http.StatusNotModified was +// returned. +func (c *LiasettingsGetaccessiblegmbaccountsCall) Do(opts ...googleapi.CallOption) (*LiasettingsGetAccessibleGmbAccountsResponse, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &LiasettingsGetAccessibleGmbAccountsResponse{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Retrieves the list of accessible Google My Business accounts.", + // "httpMethod": "GET", + // "id": "content.liasettings.getaccessiblegmbaccounts", + // "parameterOrder": [ + // "merchantId", + // "accountId" + // ], + // "parameters": { + // "accountId": { + // "description": "The ID of the account for which to retrieve accessible Google My Business accounts.", + // "format": "uint64", + // "location": "path", + // "required": true, + // "type": "string" + // }, + // "merchantId": { + // "description": "The ID of the managing account. If this parameter is not the same as accountId, then this account must be a multi-client account and accountId must be the ID of a sub-account of this account.", + // "format": "uint64", + // "location": "path", + // "required": true, + // "type": "string" + // } + // }, + // "path": "{merchantId}/liasettings/{accountId}/accessiblegmbaccounts", + // "response": { + // "$ref": "LiasettingsGetAccessibleGmbAccountsResponse" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/content" + // ] + // } + +} + +// method id "content.liasettings.list": + +type LiasettingsListCall struct { + s *APIService + merchantId uint64 + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// List: Lists the LIA settings of the sub-accounts in your Merchant +// Center account. +func (r *LiasettingsService) List(merchantId uint64) *LiasettingsListCall { + c := &LiasettingsListCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.merchantId = merchantId + return c +} + +// MaxResults sets the optional parameter "maxResults": The maximum +// number of LIA settings to return in the response, used for paging. +func (c *LiasettingsListCall) MaxResults(maxResults int64) *LiasettingsListCall { + c.urlParams_.Set("maxResults", fmt.Sprint(maxResults)) + return c +} + +// PageToken sets the optional parameter "pageToken": The token returned +// by the previous request. +func (c *LiasettingsListCall) PageToken(pageToken string) *LiasettingsListCall { + c.urlParams_.Set("pageToken", pageToken) + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *LiasettingsListCall) Fields(s ...googleapi.Field) *LiasettingsListCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// IfNoneMatch sets the optional parameter which makes the operation +// fail if the object's ETag matches the given value. This is useful for +// getting updates only after the object has changed since the last +// request. Use googleapi.IsNotModified to check whether the response +// error from Do is the result of In-None-Match. +func (c *LiasettingsListCall) IfNoneMatch(entityTag string) *LiasettingsListCall { + c.ifNoneMatch_ = entityTag + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *LiasettingsListCall) Context(ctx context.Context) *LiasettingsListCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *LiasettingsListCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *LiasettingsListCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + if c.ifNoneMatch_ != "" { + reqHeaders.Set("If-None-Match", c.ifNoneMatch_) + } + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/liasettings") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("GET", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "merchantId": strconv.FormatUint(c.merchantId, 10), + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "content.liasettings.list" call. +// Exactly one of *LiasettingsListResponse or error will be non-nil. Any +// non-2xx status code is an error. Response headers are in either +// *LiasettingsListResponse.ServerResponse.Header or (if a response was +// returned at all) in error.(*googleapi.Error).Header. Use +// googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *LiasettingsListCall) Do(opts ...googleapi.CallOption) (*LiasettingsListResponse, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &LiasettingsListResponse{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Lists the LIA settings of the sub-accounts in your Merchant Center account.", + // "httpMethod": "GET", + // "id": "content.liasettings.list", + // "parameterOrder": [ + // "merchantId" + // ], + // "parameters": { + // "maxResults": { + // "description": "The maximum number of LIA settings to return in the response, used for paging.", + // "format": "uint32", + // "location": "query", + // "type": "integer" + // }, + // "merchantId": { + // "description": "The ID of the managing account. This must be a multi-client account.", + // "format": "uint64", + // "location": "path", + // "required": true, + // "type": "string" + // }, + // "pageToken": { + // "description": "The token returned by the previous request.", + // "location": "query", + // "type": "string" + // } + // }, + // "path": "{merchantId}/liasettings", + // "response": { + // "$ref": "LiasettingsListResponse" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/content" + // ] + // } + +} + +// Pages invokes f for each page of results. +// A non-nil error returned from f will halt the iteration. +// The provided context supersedes any context provided to the Context method. +func (c *LiasettingsListCall) Pages(ctx context.Context, f func(*LiasettingsListResponse) error) error { + c.ctx_ = ctx + defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point + for { + x, err := c.Do() + if err != nil { + return err + } + if err := f(x); err != nil { + return err + } + if x.NextPageToken == "" { + return nil + } + c.PageToken(x.NextPageToken) + } +} + +// method id "content.liasettings.patch": + +type LiasettingsPatchCall struct { + s *APIService + merchantId uint64 + accountId uint64 + liasettings *LiaSettings + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Patch: Updates the LIA settings of the account. This method supports +// patch semantics. +func (r *LiasettingsService) Patch(merchantId uint64, accountId uint64, liasettings *LiaSettings) *LiasettingsPatchCall { + c := &LiasettingsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.merchantId = merchantId + c.accountId = accountId + c.liasettings = liasettings + return c +} + +// DryRun sets the optional parameter "dryRun": Flag to run the request +// in dry-run mode. +func (c *LiasettingsPatchCall) DryRun(dryRun bool) *LiasettingsPatchCall { + c.urlParams_.Set("dryRun", fmt.Sprint(dryRun)) + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *LiasettingsPatchCall) Fields(s ...googleapi.Field) *LiasettingsPatchCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *LiasettingsPatchCall) Context(ctx context.Context) *LiasettingsPatchCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *LiasettingsPatchCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *LiasettingsPatchCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.liasettings) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/liasettings/{accountId}") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("PATCH", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "merchantId": strconv.FormatUint(c.merchantId, 10), + "accountId": strconv.FormatUint(c.accountId, 10), + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "content.liasettings.patch" call. +// Exactly one of *LiaSettings or error will be non-nil. Any non-2xx +// status code is an error. Response headers are in either +// *LiaSettings.ServerResponse.Header or (if a response was returned at +// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified +// to check whether the returned error was because +// http.StatusNotModified was returned. +func (c *LiasettingsPatchCall) Do(opts ...googleapi.CallOption) (*LiaSettings, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &LiaSettings{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Updates the LIA settings of the account. This method supports patch semantics.", + // "httpMethod": "PATCH", + // "id": "content.liasettings.patch", + // "parameterOrder": [ + // "merchantId", + // "accountId" + // ], + // "parameters": { + // "accountId": { + // "description": "The ID of the account for which to get or update LIA settings.", + // "format": "uint64", + // "location": "path", + // "required": true, + // "type": "string" + // }, + // "dryRun": { + // "description": "Flag to run the request in dry-run mode.", + // "location": "query", + // "type": "boolean" + // }, + // "merchantId": { + // "description": "The ID of the managing account. If this parameter is not the same as accountId, then this account must be a multi-client account and accountId must be the ID of a sub-account of this account.", + // "format": "uint64", + // "location": "path", + // "required": true, + // "type": "string" + // } + // }, + // "path": "{merchantId}/liasettings/{accountId}", + // "request": { + // "$ref": "LiaSettings" + // }, + // "response": { + // "$ref": "LiaSettings" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/content" + // ] + // } + +} + +// method id "content.liasettings.requestgmbaccess": + +type LiasettingsRequestgmbaccessCall struct { + s *APIService + merchantId uint64 + accountId uint64 + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Requestgmbaccess: Requests access to a specified Google My Business +// account. +func (r *LiasettingsService) Requestgmbaccess(merchantId uint64, accountId uint64) *LiasettingsRequestgmbaccessCall { + c := &LiasettingsRequestgmbaccessCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.merchantId = merchantId + c.accountId = accountId + return c +} + +// GmbEmail sets the optional parameter "gmbEmail": The email of the +// Google My Business account. +func (c *LiasettingsRequestgmbaccessCall) GmbEmail(gmbEmail string) *LiasettingsRequestgmbaccessCall { + c.urlParams_.Set("gmbEmail", gmbEmail) + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *LiasettingsRequestgmbaccessCall) Fields(s ...googleapi.Field) *LiasettingsRequestgmbaccessCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *LiasettingsRequestgmbaccessCall) Context(ctx context.Context) *LiasettingsRequestgmbaccessCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *LiasettingsRequestgmbaccessCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *LiasettingsRequestgmbaccessCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/liasettings/{accountId}/requestgmbaccess") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("POST", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "merchantId": strconv.FormatUint(c.merchantId, 10), + "accountId": strconv.FormatUint(c.accountId, 10), + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "content.liasettings.requestgmbaccess" call. +// Exactly one of *LiasettingsRequestGmbAccessResponse or error will be +// non-nil. Any non-2xx status code is an error. Response headers are in +// either *LiasettingsRequestGmbAccessResponse.ServerResponse.Header or +// (if a response was returned at all) in +// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check +// whether the returned error was because http.StatusNotModified was +// returned. +func (c *LiasettingsRequestgmbaccessCall) Do(opts ...googleapi.CallOption) (*LiasettingsRequestGmbAccessResponse, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &LiasettingsRequestGmbAccessResponse{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Requests access to a specified Google My Business account.", + // "httpMethod": "POST", + // "id": "content.liasettings.requestgmbaccess", + // "parameterOrder": [ + // "merchantId", + // "accountId" + // ], + // "parameters": { + // "accountId": { + // "description": "The ID of the account for which GMB access is requested.", + // "format": "uint64", + // "location": "path", + // "required": true, + // "type": "string" + // }, + // "gmbEmail": { + // "description": "The email of the Google My Business account.", + // "location": "query", + // "type": "string" + // }, + // "merchantId": { + // "description": "The ID of the managing account. If this parameter is not the same as accountId, then this account must be a multi-client account and accountId must be the ID of a sub-account of this account.", + // "format": "uint64", + // "location": "path", + // "required": true, + // "type": "string" + // } + // }, + // "path": "{merchantId}/liasettings/{accountId}/requestgmbaccess", + // "response": { + // "$ref": "LiasettingsRequestGmbAccessResponse" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/content" + // ] + // } + +} + +// method id "content.liasettings.requestinventoryverification": + +type LiasettingsRequestinventoryverificationCall struct { + s *APIService + merchantId uint64 + accountId uint64 + country string + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Requestinventoryverification: Requests inventory validation for the +// specified country. +func (r *LiasettingsService) Requestinventoryverification(merchantId uint64, accountId uint64, country string) *LiasettingsRequestinventoryverificationCall { + c := &LiasettingsRequestinventoryverificationCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.merchantId = merchantId + c.accountId = accountId + c.country = country + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *LiasettingsRequestinventoryverificationCall) Fields(s ...googleapi.Field) *LiasettingsRequestinventoryverificationCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *LiasettingsRequestinventoryverificationCall) Context(ctx context.Context) *LiasettingsRequestinventoryverificationCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *LiasettingsRequestinventoryverificationCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *LiasettingsRequestinventoryverificationCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/liasettings/{accountId}/requestinventoryverification/{country}") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("POST", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "merchantId": strconv.FormatUint(c.merchantId, 10), + "accountId": strconv.FormatUint(c.accountId, 10), + "country": c.country, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "content.liasettings.requestinventoryverification" call. +// Exactly one of *LiasettingsRequestInventoryVerificationResponse or +// error will be non-nil. Any non-2xx status code is an error. Response +// headers are in either +// *LiasettingsRequestInventoryVerificationResponse.ServerResponse.Header +// or (if a response was returned at all) in +// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check +// whether the returned error was because http.StatusNotModified was +// returned. +func (c *LiasettingsRequestinventoryverificationCall) Do(opts ...googleapi.CallOption) (*LiasettingsRequestInventoryVerificationResponse, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &LiasettingsRequestInventoryVerificationResponse{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Requests inventory validation for the specified country.", + // "httpMethod": "POST", + // "id": "content.liasettings.requestinventoryverification", + // "parameterOrder": [ + // "merchantId", + // "accountId", + // "country" + // ], + // "parameters": { + // "accountId": { + // "description": "The ID of the account that manages the order. This cannot be a multi-client account.", + // "format": "uint64", + // "location": "path", + // "required": true, + // "type": "string" + // }, + // "country": { + // "description": "The country for which inventory validation is requested.", + // "location": "path", + // "required": true, + // "type": "string" + // }, + // "merchantId": { + // "description": "The ID of the managing account. If this parameter is not the same as accountId, then this account must be a multi-client account and accountId must be the ID of a sub-account of this account.", + // "format": "uint64", + // "location": "path", + // "required": true, + // "type": "string" + // } + // }, + // "path": "{merchantId}/liasettings/{accountId}/requestinventoryverification/{country}", + // "response": { + // "$ref": "LiasettingsRequestInventoryVerificationResponse" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/content" + // ] + // } + +} + +// method id "content.liasettings.setinventoryverificationcontact": + +type LiasettingsSetinventoryverificationcontactCall struct { + s *APIService + merchantId uint64 + accountId uint64 + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Setinventoryverificationcontact: Sets the inventory verification +// contract for the specified country. +func (r *LiasettingsService) Setinventoryverificationcontact(merchantId uint64, accountId uint64) *LiasettingsSetinventoryverificationcontactCall { + c := &LiasettingsSetinventoryverificationcontactCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.merchantId = merchantId + c.accountId = accountId + return c +} + +// ContactEmail sets the optional parameter "contactEmail": The email of +// the inventory verification contact. +func (c *LiasettingsSetinventoryverificationcontactCall) ContactEmail(contactEmail string) *LiasettingsSetinventoryverificationcontactCall { + c.urlParams_.Set("contactEmail", contactEmail) + return c +} + +// ContactName sets the optional parameter "contactName": The name of +// the inventory verification contact. +func (c *LiasettingsSetinventoryverificationcontactCall) ContactName(contactName string) *LiasettingsSetinventoryverificationcontactCall { + c.urlParams_.Set("contactName", contactName) + return c +} + +// Country sets the optional parameter "country": The country for which +// inventory verification is requested. +func (c *LiasettingsSetinventoryverificationcontactCall) Country(country string) *LiasettingsSetinventoryverificationcontactCall { + c.urlParams_.Set("country", country) + return c +} + +// Language sets the optional parameter "language": The language for +// which inventory verification is requested. +func (c *LiasettingsSetinventoryverificationcontactCall) Language(language string) *LiasettingsSetinventoryverificationcontactCall { + c.urlParams_.Set("language", language) + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *LiasettingsSetinventoryverificationcontactCall) Fields(s ...googleapi.Field) *LiasettingsSetinventoryverificationcontactCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *LiasettingsSetinventoryverificationcontactCall) Context(ctx context.Context) *LiasettingsSetinventoryverificationcontactCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *LiasettingsSetinventoryverificationcontactCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *LiasettingsSetinventoryverificationcontactCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/liasettings/{accountId}/setinventoryverificationcontact") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("POST", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "merchantId": strconv.FormatUint(c.merchantId, 10), + "accountId": strconv.FormatUint(c.accountId, 10), + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "content.liasettings.setinventoryverificationcontact" call. +// Exactly one of *LiasettingsSetInventoryVerificationContactResponse or +// error will be non-nil. Any non-2xx status code is an error. Response +// headers are in either +// *LiasettingsSetInventoryVerificationContactResponse.ServerResponse.Hea +// der or (if a response was returned at all) in +// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check +// whether the returned error was because http.StatusNotModified was +// returned. +func (c *LiasettingsSetinventoryverificationcontactCall) Do(opts ...googleapi.CallOption) (*LiasettingsSetInventoryVerificationContactResponse, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &LiasettingsSetInventoryVerificationContactResponse{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Sets the inventory verification contract for the specified country.", + // "httpMethod": "POST", + // "id": "content.liasettings.setinventoryverificationcontact", + // "parameterOrder": [ + // "merchantId", + // "accountId" + // ], + // "parameters": { + // "accountId": { + // "description": "The ID of the account that manages the order. This cannot be a multi-client account.", + // "format": "uint64", + // "location": "path", + // "required": true, + // "type": "string" + // }, + // "contactEmail": { + // "description": "The email of the inventory verification contact.", + // "location": "query", + // "type": "string" + // }, + // "contactName": { + // "description": "The name of the inventory verification contact.", + // "location": "query", + // "type": "string" + // }, + // "country": { + // "description": "The country for which inventory verification is requested.", + // "location": "query", + // "type": "string" + // }, + // "language": { + // "description": "The language for which inventory verification is requested.", + // "location": "query", + // "type": "string" + // }, + // "merchantId": { + // "description": "The ID of the managing account. If this parameter is not the same as accountId, then this account must be a multi-client account and accountId must be the ID of a sub-account of this account.", + // "format": "uint64", + // "location": "path", + // "required": true, + // "type": "string" + // } + // }, + // "path": "{merchantId}/liasettings/{accountId}/setinventoryverificationcontact", + // "response": { + // "$ref": "LiasettingsSetInventoryVerificationContactResponse" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/content" + // ] + // } + +} + +// method id "content.liasettings.update": + +type LiasettingsUpdateCall struct { + s *APIService + merchantId uint64 + accountId uint64 + liasettings *LiaSettings + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Update: Updates the LIA settings of the account. +func (r *LiasettingsService) Update(merchantId uint64, accountId uint64, liasettings *LiaSettings) *LiasettingsUpdateCall { + c := &LiasettingsUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.merchantId = merchantId + c.accountId = accountId + c.liasettings = liasettings + return c +} + +// DryRun sets the optional parameter "dryRun": Flag to run the request +// in dry-run mode. +func (c *LiasettingsUpdateCall) DryRun(dryRun bool) *LiasettingsUpdateCall { + c.urlParams_.Set("dryRun", fmt.Sprint(dryRun)) + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *LiasettingsUpdateCall) Fields(s ...googleapi.Field) *LiasettingsUpdateCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *LiasettingsUpdateCall) Context(ctx context.Context) *LiasettingsUpdateCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *LiasettingsUpdateCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *LiasettingsUpdateCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.liasettings) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/liasettings/{accountId}") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("PUT", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "merchantId": strconv.FormatUint(c.merchantId, 10), + "accountId": strconv.FormatUint(c.accountId, 10), + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "content.liasettings.update" call. +// Exactly one of *LiaSettings or error will be non-nil. Any non-2xx +// status code is an error. Response headers are in either +// *LiaSettings.ServerResponse.Header or (if a response was returned at +// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified +// to check whether the returned error was because +// http.StatusNotModified was returned. +func (c *LiasettingsUpdateCall) Do(opts ...googleapi.CallOption) (*LiaSettings, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &LiaSettings{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Updates the LIA settings of the account.", + // "httpMethod": "PUT", + // "id": "content.liasettings.update", + // "parameterOrder": [ + // "merchantId", + // "accountId" + // ], + // "parameters": { + // "accountId": { + // "description": "The ID of the account for which to get or update LIA settings.", + // "format": "uint64", + // "location": "path", + // "required": true, + // "type": "string" + // }, + // "dryRun": { + // "description": "Flag to run the request in dry-run mode.", + // "location": "query", + // "type": "boolean" + // }, + // "merchantId": { + // "description": "The ID of the managing account. If this parameter is not the same as accountId, then this account must be a multi-client account and accountId must be the ID of a sub-account of this account.", + // "format": "uint64", + // "location": "path", + // "required": true, + // "type": "string" + // } + // }, + // "path": "{merchantId}/liasettings/{accountId}", + // "request": { + // "$ref": "LiaSettings" + // }, + // "response": { + // "$ref": "LiaSettings" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/content" + // ] + // } + +} + // method id "content.orders.acknowledge": type OrdersAcknowledgeCall struct { @@ -15286,6 +17882,1045 @@ func (c *OrdersUpdateshipmentCall) Do(opts ...googleapi.CallOption) (*OrdersUpda } +// method id "content.pos.custombatch": + +type PosCustombatchCall struct { + s *APIService + poscustombatchrequest *PosCustomBatchRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Custombatch: Batches multiple POS-related calls in a single request. +func (r *PosService) Custombatch(poscustombatchrequest *PosCustomBatchRequest) *PosCustombatchCall { + c := &PosCustombatchCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.poscustombatchrequest = poscustombatchrequest + return c +} + +// DryRun sets the optional parameter "dryRun": Flag to run the request +// in dry-run mode. +func (c *PosCustombatchCall) DryRun(dryRun bool) *PosCustombatchCall { + c.urlParams_.Set("dryRun", fmt.Sprint(dryRun)) + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *PosCustombatchCall) Fields(s ...googleapi.Field) *PosCustombatchCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *PosCustombatchCall) Context(ctx context.Context) *PosCustombatchCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *PosCustombatchCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *PosCustombatchCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.poscustombatchrequest) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "pos/batch") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("POST", urls, body) + req.Header = reqHeaders + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "content.pos.custombatch" call. +// Exactly one of *PosCustomBatchResponse or error will be non-nil. Any +// non-2xx status code is an error. Response headers are in either +// *PosCustomBatchResponse.ServerResponse.Header or (if a response was +// returned at all) in error.(*googleapi.Error).Header. Use +// googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *PosCustombatchCall) Do(opts ...googleapi.CallOption) (*PosCustomBatchResponse, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &PosCustomBatchResponse{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Batches multiple POS-related calls in a single request.", + // "httpMethod": "POST", + // "id": "content.pos.custombatch", + // "parameters": { + // "dryRun": { + // "description": "Flag to run the request in dry-run mode.", + // "location": "query", + // "type": "boolean" + // } + // }, + // "path": "pos/batch", + // "request": { + // "$ref": "PosCustomBatchRequest" + // }, + // "response": { + // "$ref": "PosCustomBatchResponse" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/content" + // ] + // } + +} + +// method id "content.pos.delete": + +type PosDeleteCall struct { + s *APIService + merchantId uint64 + targetMerchantId uint64 + storeCode string + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Delete: Deletes a store for the given merchant. +func (r *PosService) Delete(merchantId uint64, targetMerchantId uint64, storeCode string) *PosDeleteCall { + c := &PosDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.merchantId = merchantId + c.targetMerchantId = targetMerchantId + c.storeCode = storeCode + return c +} + +// DryRun sets the optional parameter "dryRun": Flag to run the request +// in dry-run mode. +func (c *PosDeleteCall) DryRun(dryRun bool) *PosDeleteCall { + c.urlParams_.Set("dryRun", fmt.Sprint(dryRun)) + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *PosDeleteCall) Fields(s ...googleapi.Field) *PosDeleteCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *PosDeleteCall) Context(ctx context.Context) *PosDeleteCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *PosDeleteCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *PosDeleteCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/pos/{targetMerchantId}/store/{storeCode}") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("DELETE", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "merchantId": strconv.FormatUint(c.merchantId, 10), + "targetMerchantId": strconv.FormatUint(c.targetMerchantId, 10), + "storeCode": c.storeCode, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "content.pos.delete" call. +func (c *PosDeleteCall) Do(opts ...googleapi.CallOption) error { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if err != nil { + return err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return err + } + return nil + // { + // "description": "Deletes a store for the given merchant.", + // "httpMethod": "DELETE", + // "id": "content.pos.delete", + // "parameterOrder": [ + // "merchantId", + // "targetMerchantId", + // "storeCode" + // ], + // "parameters": { + // "dryRun": { + // "description": "Flag to run the request in dry-run mode.", + // "location": "query", + // "type": "boolean" + // }, + // "merchantId": { + // "description": "The ID of the POS or inventory data provider.", + // "format": "uint64", + // "location": "path", + // "required": true, + // "type": "string" + // }, + // "storeCode": { + // "description": "A store code that is unique per merchant.", + // "location": "path", + // "required": true, + // "type": "string" + // }, + // "targetMerchantId": { + // "description": "The ID of the target merchant.", + // "format": "uint64", + // "location": "path", + // "required": true, + // "type": "string" + // } + // }, + // "path": "{merchantId}/pos/{targetMerchantId}/store/{storeCode}", + // "scopes": [ + // "https://www.googleapis.com/auth/content" + // ] + // } + +} + +// method id "content.pos.get": + +type PosGetCall struct { + s *APIService + merchantId uint64 + targetMerchantId uint64 + storeCode string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// Get: Retrieves information about the given store. +func (r *PosService) Get(merchantId uint64, targetMerchantId uint64, storeCode string) *PosGetCall { + c := &PosGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.merchantId = merchantId + c.targetMerchantId = targetMerchantId + c.storeCode = storeCode + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *PosGetCall) Fields(s ...googleapi.Field) *PosGetCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// IfNoneMatch sets the optional parameter which makes the operation +// fail if the object's ETag matches the given value. This is useful for +// getting updates only after the object has changed since the last +// request. Use googleapi.IsNotModified to check whether the response +// error from Do is the result of In-None-Match. +func (c *PosGetCall) IfNoneMatch(entityTag string) *PosGetCall { + c.ifNoneMatch_ = entityTag + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *PosGetCall) Context(ctx context.Context) *PosGetCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *PosGetCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *PosGetCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + if c.ifNoneMatch_ != "" { + reqHeaders.Set("If-None-Match", c.ifNoneMatch_) + } + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/pos/{targetMerchantId}/store/{storeCode}") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("GET", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "merchantId": strconv.FormatUint(c.merchantId, 10), + "targetMerchantId": strconv.FormatUint(c.targetMerchantId, 10), + "storeCode": c.storeCode, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "content.pos.get" call. +// Exactly one of *PosStore or error will be non-nil. Any non-2xx status +// code is an error. Response headers are in either +// *PosStore.ServerResponse.Header or (if a response was returned at +// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified +// to check whether the returned error was because +// http.StatusNotModified was returned. +func (c *PosGetCall) Do(opts ...googleapi.CallOption) (*PosStore, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &PosStore{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Retrieves information about the given store.", + // "httpMethod": "GET", + // "id": "content.pos.get", + // "parameterOrder": [ + // "merchantId", + // "targetMerchantId", + // "storeCode" + // ], + // "parameters": { + // "merchantId": { + // "description": "The ID of the POS or inventory data provider.", + // "format": "uint64", + // "location": "path", + // "required": true, + // "type": "string" + // }, + // "storeCode": { + // "description": "A store code that is unique per merchant.", + // "location": "path", + // "required": true, + // "type": "string" + // }, + // "targetMerchantId": { + // "description": "The ID of the target merchant.", + // "format": "uint64", + // "location": "path", + // "required": true, + // "type": "string" + // } + // }, + // "path": "{merchantId}/pos/{targetMerchantId}/store/{storeCode}", + // "response": { + // "$ref": "PosStore" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/content" + // ] + // } + +} + +// method id "content.pos.insert": + +type PosInsertCall struct { + s *APIService + merchantId uint64 + targetMerchantId uint64 + posstore *PosStore + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Insert: Creates a store for the given merchant. +func (r *PosService) Insert(merchantId uint64, targetMerchantId uint64, posstore *PosStore) *PosInsertCall { + c := &PosInsertCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.merchantId = merchantId + c.targetMerchantId = targetMerchantId + c.posstore = posstore + return c +} + +// DryRun sets the optional parameter "dryRun": Flag to run the request +// in dry-run mode. +func (c *PosInsertCall) DryRun(dryRun bool) *PosInsertCall { + c.urlParams_.Set("dryRun", fmt.Sprint(dryRun)) + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *PosInsertCall) Fields(s ...googleapi.Field) *PosInsertCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *PosInsertCall) Context(ctx context.Context) *PosInsertCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *PosInsertCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *PosInsertCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.posstore) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/pos/{targetMerchantId}/store") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("POST", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "merchantId": strconv.FormatUint(c.merchantId, 10), + "targetMerchantId": strconv.FormatUint(c.targetMerchantId, 10), + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "content.pos.insert" call. +// Exactly one of *PosStore or error will be non-nil. Any non-2xx status +// code is an error. Response headers are in either +// *PosStore.ServerResponse.Header or (if a response was returned at +// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified +// to check whether the returned error was because +// http.StatusNotModified was returned. +func (c *PosInsertCall) Do(opts ...googleapi.CallOption) (*PosStore, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &PosStore{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Creates a store for the given merchant.", + // "httpMethod": "POST", + // "id": "content.pos.insert", + // "parameterOrder": [ + // "merchantId", + // "targetMerchantId" + // ], + // "parameters": { + // "dryRun": { + // "description": "Flag to run the request in dry-run mode.", + // "location": "query", + // "type": "boolean" + // }, + // "merchantId": { + // "description": "The ID of the POS or inventory data provider.", + // "format": "uint64", + // "location": "path", + // "required": true, + // "type": "string" + // }, + // "targetMerchantId": { + // "description": "The ID of the target merchant.", + // "format": "uint64", + // "location": "path", + // "required": true, + // "type": "string" + // } + // }, + // "path": "{merchantId}/pos/{targetMerchantId}/store", + // "request": { + // "$ref": "PosStore" + // }, + // "response": { + // "$ref": "PosStore" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/content" + // ] + // } + +} + +// method id "content.pos.inventory": + +type PosInventoryCall struct { + s *APIService + merchantId uint64 + targetMerchantId uint64 + posinventoryrequest *PosInventoryRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Inventory: Submit inventory for the given merchant. +func (r *PosService) Inventory(merchantId uint64, targetMerchantId uint64, posinventoryrequest *PosInventoryRequest) *PosInventoryCall { + c := &PosInventoryCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.merchantId = merchantId + c.targetMerchantId = targetMerchantId + c.posinventoryrequest = posinventoryrequest + return c +} + +// DryRun sets the optional parameter "dryRun": Flag to run the request +// in dry-run mode. +func (c *PosInventoryCall) DryRun(dryRun bool) *PosInventoryCall { + c.urlParams_.Set("dryRun", fmt.Sprint(dryRun)) + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *PosInventoryCall) Fields(s ...googleapi.Field) *PosInventoryCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *PosInventoryCall) Context(ctx context.Context) *PosInventoryCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *PosInventoryCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *PosInventoryCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.posinventoryrequest) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/pos/{targetMerchantId}/inventory") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("POST", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "merchantId": strconv.FormatUint(c.merchantId, 10), + "targetMerchantId": strconv.FormatUint(c.targetMerchantId, 10), + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "content.pos.inventory" call. +// Exactly one of *PosInventoryResponse or error will be non-nil. Any +// non-2xx status code is an error. Response headers are in either +// *PosInventoryResponse.ServerResponse.Header or (if a response was +// returned at all) in error.(*googleapi.Error).Header. Use +// googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *PosInventoryCall) Do(opts ...googleapi.CallOption) (*PosInventoryResponse, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &PosInventoryResponse{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Submit inventory for the given merchant.", + // "httpMethod": "POST", + // "id": "content.pos.inventory", + // "parameterOrder": [ + // "merchantId", + // "targetMerchantId" + // ], + // "parameters": { + // "dryRun": { + // "description": "Flag to run the request in dry-run mode.", + // "location": "query", + // "type": "boolean" + // }, + // "merchantId": { + // "description": "The ID of the POS or inventory data provider.", + // "format": "uint64", + // "location": "path", + // "required": true, + // "type": "string" + // }, + // "targetMerchantId": { + // "description": "The ID of the target merchant.", + // "format": "uint64", + // "location": "path", + // "required": true, + // "type": "string" + // } + // }, + // "path": "{merchantId}/pos/{targetMerchantId}/inventory", + // "request": { + // "$ref": "PosInventoryRequest" + // }, + // "response": { + // "$ref": "PosInventoryResponse" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/content" + // ] + // } + +} + +// method id "content.pos.list": + +type PosListCall struct { + s *APIService + merchantId uint64 + targetMerchantId uint64 + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// List: Lists the stores of the target merchant. +func (r *PosService) List(merchantId uint64, targetMerchantId uint64) *PosListCall { + c := &PosListCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.merchantId = merchantId + c.targetMerchantId = targetMerchantId + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *PosListCall) Fields(s ...googleapi.Field) *PosListCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// IfNoneMatch sets the optional parameter which makes the operation +// fail if the object's ETag matches the given value. This is useful for +// getting updates only after the object has changed since the last +// request. Use googleapi.IsNotModified to check whether the response +// error from Do is the result of In-None-Match. +func (c *PosListCall) IfNoneMatch(entityTag string) *PosListCall { + c.ifNoneMatch_ = entityTag + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *PosListCall) Context(ctx context.Context) *PosListCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *PosListCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *PosListCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + if c.ifNoneMatch_ != "" { + reqHeaders.Set("If-None-Match", c.ifNoneMatch_) + } + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/pos/{targetMerchantId}/store") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("GET", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "merchantId": strconv.FormatUint(c.merchantId, 10), + "targetMerchantId": strconv.FormatUint(c.targetMerchantId, 10), + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "content.pos.list" call. +// Exactly one of *PosListResponse or error will be non-nil. Any non-2xx +// status code is an error. Response headers are in either +// *PosListResponse.ServerResponse.Header or (if a response was returned +// at all) in error.(*googleapi.Error).Header. Use +// googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *PosListCall) Do(opts ...googleapi.CallOption) (*PosListResponse, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &PosListResponse{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Lists the stores of the target merchant.", + // "httpMethod": "GET", + // "id": "content.pos.list", + // "parameterOrder": [ + // "merchantId", + // "targetMerchantId" + // ], + // "parameters": { + // "merchantId": { + // "description": "The ID of the POS or inventory data provider.", + // "format": "uint64", + // "location": "path", + // "required": true, + // "type": "string" + // }, + // "targetMerchantId": { + // "description": "The ID of the target merchant.", + // "format": "uint64", + // "location": "path", + // "required": true, + // "type": "string" + // } + // }, + // "path": "{merchantId}/pos/{targetMerchantId}/store", + // "response": { + // "$ref": "PosListResponse" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/content" + // ] + // } + +} + +// method id "content.pos.sale": + +type PosSaleCall struct { + s *APIService + merchantId uint64 + targetMerchantId uint64 + possalerequest *PosSaleRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Sale: Submit a sale event for the given merchant. +func (r *PosService) Sale(merchantId uint64, targetMerchantId uint64, possalerequest *PosSaleRequest) *PosSaleCall { + c := &PosSaleCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.merchantId = merchantId + c.targetMerchantId = targetMerchantId + c.possalerequest = possalerequest + return c +} + +// DryRun sets the optional parameter "dryRun": Flag to run the request +// in dry-run mode. +func (c *PosSaleCall) DryRun(dryRun bool) *PosSaleCall { + c.urlParams_.Set("dryRun", fmt.Sprint(dryRun)) + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *PosSaleCall) Fields(s ...googleapi.Field) *PosSaleCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *PosSaleCall) Context(ctx context.Context) *PosSaleCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *PosSaleCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *PosSaleCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.possalerequest) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/pos/{targetMerchantId}/sale") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("POST", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "merchantId": strconv.FormatUint(c.merchantId, 10), + "targetMerchantId": strconv.FormatUint(c.targetMerchantId, 10), + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "content.pos.sale" call. +// Exactly one of *PosSaleResponse or error will be non-nil. Any non-2xx +// status code is an error. Response headers are in either +// *PosSaleResponse.ServerResponse.Header or (if a response was returned +// at all) in error.(*googleapi.Error).Header. Use +// googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *PosSaleCall) Do(opts ...googleapi.CallOption) (*PosSaleResponse, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &PosSaleResponse{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Submit a sale event for the given merchant.", + // "httpMethod": "POST", + // "id": "content.pos.sale", + // "parameterOrder": [ + // "merchantId", + // "targetMerchantId" + // ], + // "parameters": { + // "dryRun": { + // "description": "Flag to run the request in dry-run mode.", + // "location": "query", + // "type": "boolean" + // }, + // "merchantId": { + // "description": "The ID of the POS or inventory data provider.", + // "format": "uint64", + // "location": "path", + // "required": true, + // "type": "string" + // }, + // "targetMerchantId": { + // "description": "The ID of the target merchant.", + // "format": "uint64", + // "location": "path", + // "required": true, + // "type": "string" + // } + // }, + // "path": "{merchantId}/pos/{targetMerchantId}/sale", + // "request": { + // "$ref": "PosSaleRequest" + // }, + // "response": { + // "$ref": "PosSaleResponse" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/content" + // ] + // } + +} + // method id "content.products.custombatch": type ProductsCustombatchCall struct { diff --git a/vendor/google.golang.org/api/content/v2sandbox/content-api.json b/vendor/google.golang.org/api/content/v2sandbox/content-api.json index 9c99cdc9d..ca02e5b40 100644 --- a/vendor/google.golang.org/api/content/v2sandbox/content-api.json +++ b/vendor/google.golang.org/api/content/v2sandbox/content-api.json @@ -1,2947 +1,2947 @@ { - "kind": "discovery#restDescription", - "etag": "\"YWOzh2SDasdU84ArJnpYek-OMdg/pdq_G-7e0J9K1HvpHySXgoj-edo\"", - "discoveryVersion": "v1", - "id": "content:v2sandbox", - "name": "content", - "canonicalName": "Shopping Content", - "version": "v2sandbox", - "revision": "20180111", - "title": "Content API for Shopping", - "description": "Manages product items, inventory, and Merchant Center accounts for Google Shopping.", - "ownerDomain": "google.com", - "ownerName": "Google", - "icons": { - "x16": "https://www.gstatic.com/images/branding/product/1x/googleg_16dp.png", - "x32": "https://www.gstatic.com/images/branding/product/1x/googleg_32dp.png" - }, - "documentationLink": "https://developers.google.com/shopping-content", - "protocol": "rest", - "baseUrl": "https://www.googleapis.com/content/v2sandbox/", - "basePath": "/content/v2sandbox/", - "rootUrl": "https://www.googleapis.com/", - "servicePath": "content/v2sandbox/", - "batchPath": "batch/content/v2sandbox", - "parameters": { - "alt": { - "type": "string", - "description": "Data format for the response.", - "default": "json", - "enum": [ - "json" - ], - "enumDescriptions": [ - "Responses with Content-Type of application/json" - ], - "location": "query" - }, - "fields": { - "type": "string", - "description": "Selector specifying which fields to include in a partial response.", - "location": "query" - }, - "key": { - "type": "string", - "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" - }, - "oauth_token": { - "type": "string", - "description": "OAuth 2.0 token for the current user.", - "location": "query" - }, - "prettyPrint": { - "type": "boolean", - "description": "Returns response with indentations and line breaks.", - "default": "true", - "location": "query" - }, - "quotaUser": { - "type": "string", - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", - "location": "query" - }, - "userIp": { - "type": "string", - "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", - "location": "query" - } - }, - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/content": { - "description": "Manage your product listings and accounts for Google Shopping" + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/content": { + "description": "Manage your product listings and accounts for Google Shopping" + } + } } - } - } - }, - "schemas": { - "Error": { - "id": "Error", - "type": "object", - "description": "An error returned by the API.", - "properties": { - "domain": { - "type": "string", - "description": "The domain of the error." - }, - "message": { - "type": "string", - "description": "A description of the error." - }, - "reason": { - "type": "string", - "description": "The error code." - } - } }, - "Errors": { - "id": "Errors", - "type": "object", - "description": "A list of errors returned by a failed batch entry.", - "properties": { - "code": { - "type": "integer", - "description": "The HTTP status of the first error in errors.", - "format": "uint32" - }, - "errors": { - "type": "array", - "description": "A list of errors.", - "items": { - "$ref": "Error" - } - }, - "message": { - "type": "string", - "description": "The message of the first error in errors." - } - } + "basePath": "/content/v2sandbox/", + "baseUrl": "https://www.googleapis.com/content/v2sandbox/", + "batchPath": "batch/content/v2sandbox", + "canonicalName": "Shopping Content", + "description": "Manages product items, inventory, and Merchant Center accounts for Google Shopping.", + "discoveryVersion": "v1", + "documentationLink": "https://developers.google.com/shopping-content", + "etag": "\"-iA1DTNe4s-I6JZXPt1t1Ypy8IU/GzeGhrgiJKQlQpHAXI2VovJdlQo\"", + "icons": { + "x16": "https://www.gstatic.com/images/branding/product/1x/googleg_16dp.png", + "x32": "https://www.gstatic.com/images/branding/product/1x/googleg_32dp.png" }, - "Order": { - "id": "Order", - "type": "object", - "properties": { - "acknowledged": { - "type": "boolean", - "description": "Whether the order was acknowledged." - }, - "channelType": { - "type": "string", - "description": "The channel type of the order: \"purchaseOnGoogle\" or \"googleExpress\"." - }, - "customer": { - "$ref": "OrderCustomer", - "description": "The details of the customer who placed the order." - }, - "deliveryDetails": { - "$ref": "OrderDeliveryDetails", - "description": "The details for the delivery." - }, - "id": { - "type": "string", - "description": "The REST id of the order. Globally unique." - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"content#order\".", - "default": "content#order" - }, - "lineItems": { - "type": "array", - "description": "Line items that are ordered.", - "items": { - "$ref": "OrderLineItem" - } - }, - "merchantId": { - "type": "string", - "format": "uint64" - }, - "merchantOrderId": { - "type": "string", - "description": "Merchant-provided id of the order." - }, - "netAmount": { - "$ref": "Price", - "description": "The net amount for the order. For example, if an order was originally for a grand total of $100 and a refund was issued for $20, the net amount will be $80." - }, - "paymentMethod": { - "$ref": "OrderPaymentMethod", - "description": "The details of the payment method." - }, - "paymentStatus": { - "type": "string", - "description": "The status of the payment." - }, - "placedDate": { - "type": "string", - "description": "The date when the order was placed, in ISO 8601 format." - }, - "promotions": { - "type": "array", - "description": "The details of the merchant provided promotions applied to the order. More details about the program are here.", - "items": { - "$ref": "OrderPromotion" - } - }, - "refunds": { - "type": "array", - "description": "Refunds for the order.", - "items": { - "$ref": "OrderRefund" - } - }, - "shipments": { - "type": "array", - "description": "Shipments of the order.", - "items": { - "$ref": "OrderShipment" - } - }, - "shippingCost": { - "$ref": "Price", - "description": "The total cost of shipping for all items." - }, - "shippingCostTax": { - "$ref": "Price", - "description": "The tax for the total shipping cost." - }, - "shippingOption": { - "type": "string", - "description": "The requested shipping option." - }, - "status": { - "type": "string", - "description": "The status of the order." - } - } - }, - "OrderAddress": { - "id": "OrderAddress", - "type": "object", - "properties": { - "country": { - "type": "string", - "description": "CLDR country code (e.g. \"US\")." - }, - "fullAddress": { - "type": "array", - "description": "Strings representing the lines of the printed label for mailing the order, for example:\nJohn Smith\n1600 Amphitheatre Parkway\nMountain View, CA, 94043\nUnited States", - "items": { + "id": "content:v2sandbox", + "kind": "discovery#restDescription", + "name": "content", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "alt": { + "default": "json", + "description": "Data format for the response.", + "enum": [ + "json" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json" + ], + "location": "query", "type": "string" - } }, - "isPostOfficeBox": { - "type": "boolean", - "description": "Whether the address is a post office box." - }, - "locality": { - "type": "string", - "description": "City, town or commune. May also include dependent localities or sublocalities (e.g. neighborhoods or suburbs)." - }, - "postalCode": { - "type": "string", - "description": "Postal Code or ZIP (e.g. \"94043\")." - }, - "recipientName": { - "type": "string", - "description": "Name of the recipient." - }, - "region": { - "type": "string", - "description": "Top-level administrative subdivision of the country (e.g. \"CA\")." - }, - "streetAddress": { - "type": "array", - "description": "Street-level part of the address.", - "items": { + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "location": "query", "type": "string" - } - } - } - }, - "OrderCancellation": { - "id": "OrderCancellation", - "type": "object", - "properties": { - "actor": { - "type": "string", - "description": "The actor that created the cancellation." }, - "creationDate": { - "type": "string", - "description": "Date on which the cancellation has been created, in ISO 8601 format." - }, - "quantity": { - "type": "integer", - "description": "The quantity that was canceled.", - "format": "uint32" - }, - "reason": { - "type": "string", - "description": "The reason for the cancellation. Orders that are cancelled with a noInventory reason will lead to the removal of the product from POG until you make an update to that product. This will not affect your Shopping ads." - }, - "reasonText": { - "type": "string", - "description": "The explanation of the reason." - } - } - }, - "OrderCustomer": { - "id": "OrderCustomer", - "type": "object", - "properties": { - "email": { - "type": "string", - "description": "Email address of the customer." - }, - "explicitMarketingPreference": { - "type": "boolean", - "description": "If set, this indicates the user explicitly chose to opt in or out of providing marketing rights to the merchant. If unset, this indicates the user has already made this choice in a previous purchase, and was thus not shown the marketing right opt in/out checkbox during the checkout flow." - }, - "fullName": { - "type": "string", - "description": "Full name of the customer." - } - } - }, - "OrderDeliveryDetails": { - "id": "OrderDeliveryDetails", - "type": "object", - "properties": { - "address": { - "$ref": "OrderAddress", - "description": "The delivery address" - }, - "phoneNumber": { - "type": "string", - "description": "The phone number of the person receiving the delivery." - } - } - }, - "OrderLineItem": { - "id": "OrderLineItem", - "type": "object", - "properties": { - "annotations": { - "type": "array", - "description": "Annotations that are attached to the line item.", - "items": { - "$ref": "OrderMerchantProvidedAnnotation" - } - }, - "cancellations": { - "type": "array", - "description": "Cancellations of the line item.", - "items": { - "$ref": "OrderCancellation" - } - }, - "id": { - "type": "string", - "description": "The id of the line item." - }, - "price": { - "$ref": "Price", - "description": "Total price for the line item. For example, if two items for $10 are purchased, the total price will be $20." - }, - "product": { - "$ref": "OrderLineItemProduct", - "description": "Product data from the time of the order placement." - }, - "quantityCanceled": { - "type": "integer", - "description": "Number of items canceled.", - "format": "uint32" - }, - "quantityDelivered": { - "type": "integer", - "description": "Number of items delivered.", - "format": "uint32" - }, - "quantityOrdered": { - "type": "integer", - "description": "Number of items ordered.", - "format": "uint32" - }, - "quantityPending": { - "type": "integer", - "description": "Number of items pending.", - "format": "uint32" - }, - "quantityReturned": { - "type": "integer", - "description": "Number of items returned.", - "format": "uint32" - }, - "quantityShipped": { - "type": "integer", - "description": "Number of items shipped.", - "format": "uint32" - }, - "returnInfo": { - "$ref": "OrderLineItemReturnInfo", - "description": "Details of the return policy for the line item." - }, - "returns": { - "type": "array", - "description": "Returns of the line item.", - "items": { - "$ref": "OrderReturn" - } - }, - "shippingDetails": { - "$ref": "OrderLineItemShippingDetails", - "description": "Details of the requested shipping for the line item." - }, - "tax": { - "$ref": "Price", - "description": "Total tax amount for the line item. For example, if two items are purchased, and each have a cost tax of $2, the total tax amount will be $4." - } - } - }, - "OrderLineItemProduct": { - "id": "OrderLineItemProduct", - "type": "object", - "properties": { - "brand": { - "type": "string", - "description": "Brand of the item." - }, - "channel": { - "type": "string", - "description": "The item's channel (online or local)." - }, - "condition": { - "type": "string", - "description": "Condition or state of the item." - }, - "contentLanguage": { - "type": "string", - "description": "The two-letter ISO 639-1 language code for the item." - }, - "gtin": { - "type": "string", - "description": "Global Trade Item Number (GTIN) of the item." - }, - "id": { - "type": "string", - "description": "The REST id of the product." - }, - "imageLink": { - "type": "string", - "description": "URL of an image of the item." - }, - "itemGroupId": { - "type": "string", - "description": "Shared identifier for all variants of the same product." - }, - "mpn": { - "type": "string", - "description": "Manufacturer Part Number (MPN) of the item." - }, - "offerId": { - "type": "string", - "description": "An identifier of the item." - }, - "price": { - "$ref": "Price", - "description": "Price of the item." - }, - "shownImage": { - "type": "string", - "description": "URL to the cached image shown to the user when order was placed." - }, - "targetCountry": { - "type": "string", - "description": "The CLDR territory code of the target country of the product." - }, - "title": { - "type": "string", - "description": "The title of the product." - }, - "variantAttributes": { - "type": "array", - "description": "Variant attributes for the item. These are dimensions of the product, such as color, gender, material, pattern, and size. You can find a comprehensive list of variant attributes here.", - "items": { - "$ref": "OrderLineItemProductVariantAttribute" - } - } - } - }, - "OrderLineItemProductVariantAttribute": { - "id": "OrderLineItemProductVariantAttribute", - "type": "object", - "properties": { - "dimension": { - "type": "string", - "description": "The dimension of the variant." - }, - "value": { - "type": "string", - "description": "The value for the dimension." - } - } - }, - "OrderLineItemReturnInfo": { - "id": "OrderLineItemReturnInfo", - "type": "object", - "properties": { - "daysToReturn": { - "type": "integer", - "description": "How many days later the item can be returned.", - "format": "int32", - "annotations": { - "required": [ - "content.orders.createtestorder" - ] - } - }, - "isReturnable": { - "type": "boolean", - "description": "Whether the item is returnable.", - "annotations": { - "required": [ - "content.orders.createtestorder" - ] - } - }, - "policyUrl": { - "type": "string", - "description": "URL of the item return policy.", - "annotations": { - "required": [ - "content.orders.createtestorder" - ] - } - } - } - }, - "OrderLineItemShippingDetails": { - "id": "OrderLineItemShippingDetails", - "type": "object", - "properties": { - "deliverByDate": { - "type": "string", - "description": "The delivery by date, in ISO 8601 format.", - "annotations": { - "required": [ - "content.orders.createtestorder" - ] - } - }, - "method": { - "$ref": "OrderLineItemShippingDetailsMethod", - "description": "Details of the shipping method.", - "annotations": { - "required": [ - "content.orders.createtestorder" - ] - } - }, - "shipByDate": { - "type": "string", - "description": "The ship by date, in ISO 8601 format.", - "annotations": { - "required": [ - "content.orders.createtestorder" - ] - } - } - } - }, - "OrderLineItemShippingDetailsMethod": { - "id": "OrderLineItemShippingDetailsMethod", - "type": "object", - "properties": { - "carrier": { - "type": "string", - "description": "The carrier for the shipping. Optional. See shipments[].carrier for a list of acceptable values." - }, - "maxDaysInTransit": { - "type": "integer", - "description": "Maximum transit time.", - "format": "uint32", - "annotations": { - "required": [ - "content.orders.createtestorder" - ] - } - }, - "methodName": { - "type": "string", - "description": "The name of the shipping method.", - "annotations": { - "required": [ - "content.orders.createtestorder" - ] - } - }, - "minDaysInTransit": { - "type": "integer", - "description": "Minimum transit time.", - "format": "uint32", - "annotations": { - "required": [ - "content.orders.createtestorder" - ] - } - } - } - }, - "OrderMerchantProvidedAnnotation": { - "id": "OrderMerchantProvidedAnnotation", - "type": "object", - "properties": { "key": { - "type": "string", - "description": "Key for additional merchant provided (as key-value pairs) annotation about the line item." - }, - "value": { - "type": "string", - "description": "Value for additional merchant provided (as key-value pairs) annotation about the line item." - } - } - }, - "OrderPaymentMethod": { - "id": "OrderPaymentMethod", - "type": "object", - "properties": { - "billingAddress": { - "$ref": "OrderAddress", - "description": "The billing address." - }, - "expirationMonth": { - "type": "integer", - "description": "The card expiration month (January = 1, February = 2 etc.).", - "format": "int32" - }, - "expirationYear": { - "type": "integer", - "description": "The card expiration year (4-digit, e.g. 2015).", - "format": "int32" - }, - "lastFourDigits": { - "type": "string", - "description": "The last four digits of the card number." - }, - "phoneNumber": { - "type": "string", - "description": "The billing phone number." - }, - "type": { - "type": "string", - "description": "The type of instrument.\n\nAcceptable values are: \n- \"AMEX\" \n- \"DISCOVER\" \n- \"JCB\" \n- \"MASTERCARD\" \n- \"UNIONPAY\" \n- \"VISA\" \n- \"\"" - } - } - }, - "OrderPromotion": { - "id": "OrderPromotion", - "type": "object", - "properties": { - "benefits": { - "type": "array", - "items": { - "$ref": "OrderPromotionBenefit" - } - }, - "effectiveDates": { - "type": "string", - "description": "The date and time frame when the promotion is active and ready for validation review. Note that the promotion live time may be delayed for a few hours due to the validation review.\nStart date and end date are separated by a forward slash (/). The start date is specified by the format (YYYY-MM-DD), followed by the letter ?T?, the time of the day when the sale starts (in Greenwich Mean Time, GMT), followed by an expression of the time zone for the sale. The end date is in the same format." - }, - "genericRedemptionCode": { - "type": "string", - "description": "Optional. The text code that corresponds to the promotion when applied on the retailer?s website." - }, - "id": { - "type": "string", - "description": "The unique ID of the promotion." - }, - "longTitle": { - "type": "string", - "description": "The full title of the promotion." - }, - "productApplicability": { - "type": "string", - "description": "Whether the promotion is applicable to all products or only specific products." - }, - "redemptionChannel": { - "type": "string", - "description": "Indicates that the promotion is valid online." - } - } - }, - "OrderPromotionBenefit": { - "id": "OrderPromotionBenefit", - "type": "object", - "properties": { - "discount": { - "$ref": "Price", - "description": "The discount in the order price when the promotion is applied." - }, - "offerIds": { - "type": "array", - "description": "The OfferId(s) that were purchased in this order and map to this specific benefit of the promotion.", - "items": { + "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" - } }, - "subType": { - "type": "string", - "description": "Further describes the benefit of the promotion. Note that we will expand on this enumeration as we support new promotion sub-types." + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" }, - "taxImpact": { - "$ref": "Price", - "description": "The impact on tax when the promotion is applied." + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" }, - "type": { - "type": "string", - "description": "Describes whether the promotion applies to products (e.g. 20% off) or to shipping (e.g. Free Shipping)." + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", + "location": "query", + "type": "string" + }, + "userIp": { + "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", + "location": "query", + "type": "string" } - } }, - "OrderRefund": { - "id": "OrderRefund", - "type": "object", - "properties": { - "actor": { - "type": "string", - "description": "The actor that created the refund." - }, - "amount": { - "$ref": "Price", - "description": "The amount that is refunded." - }, - "creationDate": { - "type": "string", - "description": "Date on which the item has been created, in ISO 8601 format." - }, - "reason": { - "type": "string", - "description": "The reason for the refund." - }, - "reasonText": { - "type": "string", - "description": "The explanation of the reason." - } - } - }, - "OrderReturn": { - "id": "OrderReturn", - "type": "object", - "properties": { - "actor": { - "type": "string", - "description": "The actor that created the refund." - }, - "creationDate": { - "type": "string", - "description": "Date on which the item has been created, in ISO 8601 format." - }, - "quantity": { - "type": "integer", - "description": "Quantity that is returned.", - "format": "uint32" - }, - "reason": { - "type": "string", - "description": "The reason for the return." - }, - "reasonText": { - "type": "string", - "description": "The explanation of the reason." - } - } - }, - "OrderShipment": { - "id": "OrderShipment", - "type": "object", - "properties": { - "carrier": { - "type": "string", - "description": "The carrier handling the shipment.\n\nAcceptable values are: \n- \"gsx\" \n- \"ups\" \n- \"usps\" \n- \"fedex\" \n- \"dhl\" \n- \"ecourier\" \n- \"cxt\" \n- \"google\" \n- \"ontrac\" \n- \"emsy\" \n- \"ont\" \n- \"deliv\" \n- \"dynamex\" \n- \"lasership\" \n- \"mpx\" \n- \"uds\"" - }, - "creationDate": { - "type": "string", - "description": "Date on which the shipment has been created, in ISO 8601 format." - }, - "deliveryDate": { - "type": "string", - "description": "Date on which the shipment has been delivered, in ISO 8601 format. Present only if status is delievered" - }, - "id": { - "type": "string", - "description": "The id of the shipment." - }, - "lineItems": { - "type": "array", - "description": "The line items that are shipped.", - "items": { - "$ref": "OrderShipmentLineItemShipment" - } - }, - "status": { - "type": "string", - "description": "The status of the shipment." - }, - "trackingId": { - "type": "string", - "description": "The tracking id for the shipment." - } - } - }, - "OrderShipmentLineItemShipment": { - "id": "OrderShipmentLineItemShipment", - "type": "object", - "properties": { - "lineItemId": { - "type": "string", - "description": "The id of the line item that is shipped. Either lineItemId or productId is required." - }, - "productId": { - "type": "string", - "description": "The ID of the product to ship. This is the REST ID used in the products service. Either lineItemId or productId is required." - }, - "quantity": { - "type": "integer", - "description": "The quantity that is shipped.", - "format": "uint32" - } - } - }, - "OrdersAcknowledgeRequest": { - "id": "OrdersAcknowledgeRequest", - "type": "object", - "properties": { - "operationId": { - "type": "string", - "description": "The ID of the operation. Unique across all operations for a given order." - } - } - }, - "OrdersAcknowledgeResponse": { - "id": "OrdersAcknowledgeResponse", - "type": "object", - "properties": { - "executionStatus": { - "type": "string", - "description": "The status of the execution." - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"content#ordersAcknowledgeResponse\".", - "default": "content#ordersAcknowledgeResponse" - } - } - }, - "OrdersAdvanceTestOrderResponse": { - "id": "OrdersAdvanceTestOrderResponse", - "type": "object", - "properties": { - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"content#ordersAdvanceTestOrderResponse\".", - "default": "content#ordersAdvanceTestOrderResponse" - } - } - }, - "OrdersCancelLineItemRequest": { - "id": "OrdersCancelLineItemRequest", - "type": "object", - "properties": { - "amount": { - "$ref": "Price", - "description": "Amount to refund for the cancelation. Optional. If not set, Google will calculate the default based on the price and tax of the items involved. The amount must not be larger than the net amount left on the order." - }, - "amountPretax": { - "$ref": "Price", - "description": "Amount to refund for the cancelation. Optional. If not set, Google will calculate the default based on the price and tax of the items involved. The amount must not be larger than the net amount left on the order." - }, - "amountTax": { - "$ref": "Price", - "description": "Tax amount that correspond to cancellation amount in amountPretax." - }, - "lineItemId": { - "type": "string", - "description": "The ID of the line item to cancel. Either lineItemId or productId is required." - }, - "operationId": { - "type": "string", - "description": "The ID of the operation. Unique across all operations for a given order." - }, - "productId": { - "type": "string", - "description": "The ID of the product to cancel. This is the REST ID used in the products service. Either lineItemId or productId is required." - }, - "quantity": { - "type": "integer", - "description": "The quantity to cancel.", - "format": "uint32" - }, - "reason": { - "type": "string", - "description": "The reason for the cancellation." - }, - "reasonText": { - "type": "string", - "description": "The explanation of the reason." - } - } - }, - "OrdersCancelLineItemResponse": { - "id": "OrdersCancelLineItemResponse", - "type": "object", - "properties": { - "executionStatus": { - "type": "string", - "description": "The status of the execution." - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"content#ordersCancelLineItemResponse\".", - "default": "content#ordersCancelLineItemResponse" - } - } - }, - "OrdersCancelRequest": { - "id": "OrdersCancelRequest", - "type": "object", - "properties": { - "operationId": { - "type": "string", - "description": "The ID of the operation. Unique across all operations for a given order." - }, - "reason": { - "type": "string", - "description": "The reason for the cancellation." - }, - "reasonText": { - "type": "string", - "description": "The explanation of the reason." - } - } - }, - "OrdersCancelResponse": { - "id": "OrdersCancelResponse", - "type": "object", - "properties": { - "executionStatus": { - "type": "string", - "description": "The status of the execution." - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"content#ordersCancelResponse\".", - "default": "content#ordersCancelResponse" - } - } - }, - "OrdersCreateTestOrderRequest": { - "id": "OrdersCreateTestOrderRequest", - "type": "object", - "properties": { - "templateName": { - "type": "string", - "description": "The test order template to use. Specify as an alternative to testOrder as a shortcut for retrieving a template and then creating an order using that template." - }, - "testOrder": { - "$ref": "TestOrder", - "description": "The test order to create." - } - } - }, - "OrdersCreateTestOrderResponse": { - "id": "OrdersCreateTestOrderResponse", - "type": "object", - "properties": { - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"content#ordersCreateTestOrderResponse\".", - "default": "content#ordersCreateTestOrderResponse" - }, - "orderId": { - "type": "string", - "description": "The ID of the newly created test order." - } - } - }, - "OrdersCustomBatchRequest": { - "id": "OrdersCustomBatchRequest", - "type": "object", - "properties": { - "entries": { - "type": "array", - "description": "The request entries to be processed in the batch.", - "items": { - "$ref": "OrdersCustomBatchRequestEntry" - } - } - } - }, - "OrdersCustomBatchRequestEntry": { - "id": "OrdersCustomBatchRequestEntry", - "type": "object", - "properties": { - "batchId": { - "type": "integer", - "description": "An entry ID, unique within the batch request.", - "format": "uint32" - }, - "cancel": { - "$ref": "OrdersCustomBatchRequestEntryCancel", - "description": "Required for cancel method." - }, - "cancelLineItem": { - "$ref": "OrdersCustomBatchRequestEntryCancelLineItem", - "description": "Required for cancelLineItem method." - }, - "inStoreRefundLineItem": { - "$ref": "OrdersCustomBatchRequestEntryInStoreRefundLineItem", - "description": "Required for inStoreReturnLineItem method." - }, - "merchantId": { - "type": "string", - "description": "The ID of the managing account.", - "format": "uint64" - }, - "merchantOrderId": { - "type": "string", - "description": "The merchant order id. Required for updateMerchantOrderId and getByMerchantOrderId methods." - }, - "method": { - "type": "string", - "description": "The method to apply." - }, - "operationId": { - "type": "string", - "description": "The ID of the operation. Unique across all operations for a given order. Required for all methods beside get and getByMerchantOrderId." - }, - "orderId": { - "type": "string", - "description": "The ID of the order. Required for all methods beside getByMerchantOrderId." - }, - "refund": { - "$ref": "OrdersCustomBatchRequestEntryRefund", - "description": "Required for refund method." - }, - "rejectReturnLineItem": { - "$ref": "OrdersCustomBatchRequestEntryRejectReturnLineItem", - "description": "Required for rejectReturnLineItem method." - }, - "returnLineItem": { - "$ref": "OrdersCustomBatchRequestEntryReturnLineItem", - "description": "Required for returnLineItem method." - }, - "returnRefundLineItem": { - "$ref": "OrdersCustomBatchRequestEntryReturnRefundLineItem", - "description": "Required for returnRefundLineItem method." - }, - "setLineItemMetadata": { - "$ref": "OrdersCustomBatchRequestEntrySetLineItemMetadata", - "description": "Required for setLineItemMetadata method." - }, - "shipLineItems": { - "$ref": "OrdersCustomBatchRequestEntryShipLineItems", - "description": "Required for shipLineItems method." - }, - "updateLineItemShippingDetails": { - "$ref": "OrdersCustomBatchRequestEntryUpdateLineItemShippingDetails", - "description": "Required for updateLineItemShippingDate method." - }, - "updateShipment": { - "$ref": "OrdersCustomBatchRequestEntryUpdateShipment", - "description": "Required for updateShipment method." - } - } - }, - "OrdersCustomBatchRequestEntryCancel": { - "id": "OrdersCustomBatchRequestEntryCancel", - "type": "object", - "properties": { - "reason": { - "type": "string", - "description": "The reason for the cancellation." - }, - "reasonText": { - "type": "string", - "description": "The explanation of the reason." - } - } - }, - "OrdersCustomBatchRequestEntryCancelLineItem": { - "id": "OrdersCustomBatchRequestEntryCancelLineItem", - "type": "object", - "properties": { - "amount": { - "$ref": "Price", - "description": "Amount to refund for the cancelation. Optional. If not set, Google will calculate the default based on the price and tax of the items involved. The amount must not be larger than the net amount left on the order." - }, - "amountPretax": { - "$ref": "Price", - "description": "Amount to refund for the cancelation. Optional. If not set, Google will calculate the default based on the price and tax of the items involved. The amount must not be larger than the net amount left on the order." - }, - "amountTax": { - "$ref": "Price", - "description": "Tax amount that correspond to cancellation amount in amountPretax." - }, - "lineItemId": { - "type": "string", - "description": "The ID of the line item to cancel. Either lineItemId or productId is required." - }, - "productId": { - "type": "string", - "description": "The ID of the product to cancel. This is the REST ID used in the products service. Either lineItemId or productId is required." - }, - "quantity": { - "type": "integer", - "description": "The quantity to cancel.", - "format": "uint32" - }, - "reason": { - "type": "string", - "description": "The reason for the cancellation." - }, - "reasonText": { - "type": "string", - "description": "The explanation of the reason." - } - } - }, - "OrdersCustomBatchRequestEntryInStoreRefundLineItem": { - "id": "OrdersCustomBatchRequestEntryInStoreRefundLineItem", - "type": "object", - "properties": { - "amountPretax": { - "$ref": "Price", - "description": "The amount that is refunded. Required." - }, - "amountTax": { - "$ref": "Price", - "description": "Tax amount that correspond to refund amount in amountPretax. Required." - }, - "lineItemId": { - "type": "string", - "description": "The ID of the line item to return. Either lineItemId or productId is required." - }, - "productId": { - "type": "string", - "description": "The ID of the product to return. This is the REST ID used in the products service. Either lineItemId or productId is required." - }, - "quantity": { - "type": "integer", - "description": "The quantity to return and refund.", - "format": "uint32" - }, - "reason": { - "type": "string", - "description": "The reason for the return." - }, - "reasonText": { - "type": "string", - "description": "The explanation of the reason." - } - } - }, - "OrdersCustomBatchRequestEntryRefund": { - "id": "OrdersCustomBatchRequestEntryRefund", - "type": "object", - "properties": { - "amount": { - "$ref": "Price", - "description": "The amount that is refunded." - }, - "amountPretax": { - "$ref": "Price", - "description": "The amount that is refunded. Either amount or amountPretax and amountTax should be filled." - }, - "amountTax": { - "$ref": "Price", - "description": "Tax amount that correspond to refund amount in amountPretax." - }, - "reason": { - "type": "string", - "description": "The reason for the refund." - }, - "reasonText": { - "type": "string", - "description": "The explanation of the reason." - } - } - }, - "OrdersCustomBatchRequestEntryRejectReturnLineItem": { - "id": "OrdersCustomBatchRequestEntryRejectReturnLineItem", - "type": "object", - "properties": { - "lineItemId": { - "type": "string", - "description": "The ID of the line item to return. Either lineItemId or productId is required." - }, - "productId": { - "type": "string", - "description": "The ID of the product to return. This is the REST ID used in the products service. Either lineItemId or productId is required." - }, - "quantity": { - "type": "integer", - "description": "The quantity to return and refund.", - "format": "uint32" - }, - "reason": { - "type": "string", - "description": "The reason for the return." - }, - "reasonText": { - "type": "string", - "description": "The explanation of the reason." - } - } - }, - "OrdersCustomBatchRequestEntryReturnLineItem": { - "id": "OrdersCustomBatchRequestEntryReturnLineItem", - "type": "object", - "properties": { - "lineItemId": { - "type": "string", - "description": "The ID of the line item to return. Either lineItemId or productId is required." - }, - "productId": { - "type": "string", - "description": "The ID of the product to return. This is the REST ID used in the products service. Either lineItemId or productId is required." - }, - "quantity": { - "type": "integer", - "description": "The quantity to return.", - "format": "uint32" - }, - "reason": { - "type": "string", - "description": "The reason for the return." - }, - "reasonText": { - "type": "string", - "description": "The explanation of the reason." - } - } - }, - "OrdersCustomBatchRequestEntryReturnRefundLineItem": { - "id": "OrdersCustomBatchRequestEntryReturnRefundLineItem", - "type": "object", - "properties": { - "amountPretax": { - "$ref": "Price", - "description": "The amount that is refunded. Optional, but if filled then both amountPretax and amountTax must be set." - }, - "amountTax": { - "$ref": "Price", - "description": "Tax amount that correspond to refund amount in amountPretax." - }, - "lineItemId": { - "type": "string", - "description": "The ID of the line item to return. Either lineItemId or productId is required." - }, - "productId": { - "type": "string", - "description": "The ID of the product to return. This is the REST ID used in the products service. Either lineItemId or productId is required." - }, - "quantity": { - "type": "integer", - "description": "The quantity to return and refund.", - "format": "uint32" - }, - "reason": { - "type": "string", - "description": "The reason for the return." - }, - "reasonText": { - "type": "string", - "description": "The explanation of the reason." - } - } - }, - "OrdersCustomBatchRequestEntrySetLineItemMetadata": { - "id": "OrdersCustomBatchRequestEntrySetLineItemMetadata", - "type": "object", - "properties": { - "annotations": { - "type": "array", - "items": { - "$ref": "OrderMerchantProvidedAnnotation" - } - }, - "lineItemId": { - "type": "string", - "description": "The ID of the line item to set metadata. Either lineItemId or productId is required." - }, - "productId": { - "type": "string", - "description": "The ID of the product to set metadata. This is the REST ID used in the products service. Either lineItemId or productId is required." - } - } - }, - "OrdersCustomBatchRequestEntryShipLineItems": { - "id": "OrdersCustomBatchRequestEntryShipLineItems", - "type": "object", - "properties": { - "carrier": { - "type": "string", - "description": "Deprecated. Please use shipmentInfo instead. The carrier handling the shipment. See shipments[].carrier in the Orders resource representation for a list of acceptable values." - }, - "lineItems": { - "type": "array", - "description": "Line items to ship.", - "items": { - "$ref": "OrderShipmentLineItemShipment" - } - }, - "shipmentId": { - "type": "string", - "description": "Deprecated. Please use shipmentInfo instead. The ID of the shipment." - }, - "shipmentInfos": { - "type": "array", - "description": "Shipment information. This field is repeated because a single line item can be shipped in several packages (and have several tracking IDs).", - "items": { - "$ref": "OrdersCustomBatchRequestEntryShipLineItemsShipmentInfo" - } - }, - "trackingId": { - "type": "string", - "description": "Deprecated. Please use shipmentInfo instead. The tracking id for the shipment." - } - } - }, - "OrdersCustomBatchRequestEntryShipLineItemsShipmentInfo": { - "id": "OrdersCustomBatchRequestEntryShipLineItemsShipmentInfo", - "type": "object", - "properties": { - "carrier": { - "type": "string", - "description": "The carrier handling the shipment. See shipments[].carrier in the Orders resource representation for a list of acceptable values." - }, - "shipmentId": { - "type": "string", - "description": "The ID of the shipment.", - "annotations": { - "required": [ - "content.orders.shiplineitems" - ] - } - }, - "trackingId": { - "type": "string", - "description": "The tracking id for the shipment." - } - } - }, - "OrdersCustomBatchRequestEntryUpdateLineItemShippingDetails": { - "id": "OrdersCustomBatchRequestEntryUpdateLineItemShippingDetails", - "type": "object", - "properties": { - "deliverByDate": { - "type": "string", - "description": "Updated delivery by date, in ISO 8601 format. If not specified only ship by date is updated." - }, - "lineItemId": { - "type": "string", - "description": "The ID of the line item to set metadata. Either lineItemId or productId is required." - }, - "productId": { - "type": "string", - "description": "The ID of the product to set metadata. This is the REST ID used in the products service. Either lineItemId or productId is required." - }, - "shipByDate": { - "type": "string", - "description": "Updated ship by date, in ISO 8601 format. If not specified only deliver by date is updated." - } - } - }, - "OrdersCustomBatchRequestEntryUpdateShipment": { - "id": "OrdersCustomBatchRequestEntryUpdateShipment", - "type": "object", - "properties": { - "carrier": { - "type": "string", - "description": "The carrier handling the shipment. Not updated if missing. See shipments[].carrier in the Orders resource representation for a list of acceptable values." - }, - "shipmentId": { - "type": "string", - "description": "The ID of the shipment." - }, - "status": { - "type": "string", - "description": "New status for the shipment. Not updated if missing." - }, - "trackingId": { - "type": "string", - "description": "The tracking id for the shipment. Not updated if missing." - } - } - }, - "OrdersCustomBatchResponse": { - "id": "OrdersCustomBatchResponse", - "type": "object", - "properties": { - "entries": { - "type": "array", - "description": "The result of the execution of the batch requests.", - "items": { - "$ref": "OrdersCustomBatchResponseEntry" - } - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"content#ordersCustomBatchResponse\".", - "default": "content#ordersCustomBatchResponse" - } - } - }, - "OrdersCustomBatchResponseEntry": { - "id": "OrdersCustomBatchResponseEntry", - "type": "object", - "properties": { - "batchId": { - "type": "integer", - "description": "The ID of the request entry this entry responds to.", - "format": "uint32" - }, - "errors": { - "$ref": "Errors", - "description": "A list of errors defined if and only if the request failed." - }, - "executionStatus": { - "type": "string", - "description": "The status of the execution. Only defined if the method is not get or getByMerchantOrderId and if the request was successful." - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"content#ordersCustomBatchResponseEntry\".", - "default": "content#ordersCustomBatchResponseEntry" - }, - "order": { - "$ref": "Order", - "description": "The retrieved order. Only defined if the method is get and if the request was successful." - } - } - }, - "OrdersGetByMerchantOrderIdResponse": { - "id": "OrdersGetByMerchantOrderIdResponse", - "type": "object", - "properties": { - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"content#ordersGetByMerchantOrderIdResponse\".", - "default": "content#ordersGetByMerchantOrderIdResponse" - }, - "order": { - "$ref": "Order", - "description": "The requested order." - } - } - }, - "OrdersGetTestOrderTemplateResponse": { - "id": "OrdersGetTestOrderTemplateResponse", - "type": "object", - "properties": { - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"content#ordersGetTestOrderTemplateResponse\".", - "default": "content#ordersGetTestOrderTemplateResponse" - }, - "template": { - "$ref": "TestOrder", - "description": "The requested test order template." - } - } - }, - "OrdersInStoreRefundLineItemRequest": { - "id": "OrdersInStoreRefundLineItemRequest", - "type": "object", - "properties": { - "amountPretax": { - "$ref": "Price", - "description": "The amount that is refunded. Required." - }, - "amountTax": { - "$ref": "Price", - "description": "Tax amount that correspond to refund amount in amountPretax. Required." - }, - "lineItemId": { - "type": "string", - "description": "The ID of the line item to return. Either lineItemId or productId is required." - }, - "operationId": { - "type": "string", - "description": "The ID of the operation. Unique across all operations for a given order." - }, - "productId": { - "type": "string", - "description": "The ID of the product to return. This is the REST ID used in the products service. Either lineItemId or productId is required." - }, - "quantity": { - "type": "integer", - "description": "The quantity to return and refund.", - "format": "uint32" - }, - "reason": { - "type": "string", - "description": "The reason for the return." - }, - "reasonText": { - "type": "string", - "description": "The explanation of the reason." - } - } - }, - "OrdersInStoreRefundLineItemResponse": { - "id": "OrdersInStoreRefundLineItemResponse", - "type": "object", - "properties": { - "executionStatus": { - "type": "string", - "description": "The status of the execution." - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"content#ordersInStoreRefundLineItemResponse\".", - "default": "content#ordersInStoreRefundLineItemResponse" - } - } - }, - "OrdersListResponse": { - "id": "OrdersListResponse", - "type": "object", - "properties": { - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"content#ordersListResponse\".", - "default": "content#ordersListResponse" - }, - "nextPageToken": { - "type": "string", - "description": "The token for the retrieval of the next page of orders." - }, - "resources": { - "type": "array", - "items": { - "$ref": "Order" - } - } - } - }, - "OrdersRefundRequest": { - "id": "OrdersRefundRequest", - "type": "object", - "properties": { - "amount": { - "$ref": "Price", - "description": "The amount that is refunded." - }, - "amountPretax": { - "$ref": "Price", - "description": "The amount that is refunded. Either amount or amountPretax and amountTax should be filled." - }, - "amountTax": { - "$ref": "Price", - "description": "Tax amount that correspond to refund amount in amountPretax." - }, - "operationId": { - "type": "string", - "description": "The ID of the operation. Unique across all operations for a given order." - }, - "reason": { - "type": "string", - "description": "The reason for the refund." - }, - "reasonText": { - "type": "string", - "description": "The explanation of the reason." - } - } - }, - "OrdersRefundResponse": { - "id": "OrdersRefundResponse", - "type": "object", - "properties": { - "executionStatus": { - "type": "string", - "description": "The status of the execution." - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"content#ordersRefundResponse\".", - "default": "content#ordersRefundResponse" - } - } - }, - "OrdersRejectReturnLineItemRequest": { - "id": "OrdersRejectReturnLineItemRequest", - "type": "object", - "properties": { - "lineItemId": { - "type": "string", - "description": "The ID of the line item to return. Either lineItemId or productId is required." - }, - "operationId": { - "type": "string", - "description": "The ID of the operation. Unique across all operations for a given order." - }, - "productId": { - "type": "string", - "description": "The ID of the product to return. This is the REST ID used in the products service. Either lineItemId or productId is required." - }, - "quantity": { - "type": "integer", - "description": "The quantity to return and refund.", - "format": "uint32" - }, - "reason": { - "type": "string", - "description": "The reason for the return." - }, - "reasonText": { - "type": "string", - "description": "The explanation of the reason." - } - } - }, - "OrdersRejectReturnLineItemResponse": { - "id": "OrdersRejectReturnLineItemResponse", - "type": "object", - "properties": { - "executionStatus": { - "type": "string", - "description": "The status of the execution." - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"content#ordersRejectReturnLineItemResponse\".", - "default": "content#ordersRejectReturnLineItemResponse" - } - } - }, - "OrdersReturnLineItemRequest": { - "id": "OrdersReturnLineItemRequest", - "type": "object", - "properties": { - "lineItemId": { - "type": "string", - "description": "The ID of the line item to return. Either lineItemId or productId is required." - }, - "operationId": { - "type": "string", - "description": "The ID of the operation. Unique across all operations for a given order." - }, - "productId": { - "type": "string", - "description": "The ID of the product to return. This is the REST ID used in the products service. Either lineItemId or productId is required." - }, - "quantity": { - "type": "integer", - "description": "The quantity to return.", - "format": "uint32" - }, - "reason": { - "type": "string", - "description": "The reason for the return." - }, - "reasonText": { - "type": "string", - "description": "The explanation of the reason." - } - } - }, - "OrdersReturnLineItemResponse": { - "id": "OrdersReturnLineItemResponse", - "type": "object", - "properties": { - "executionStatus": { - "type": "string", - "description": "The status of the execution." - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"content#ordersReturnLineItemResponse\".", - "default": "content#ordersReturnLineItemResponse" - } - } - }, - "OrdersReturnRefundLineItemRequest": { - "id": "OrdersReturnRefundLineItemRequest", - "type": "object", - "properties": { - "amountPretax": { - "$ref": "Price", - "description": "The amount that is refunded. Optional, but if filled then both amountPretax and amountTax must be set." - }, - "amountTax": { - "$ref": "Price", - "description": "Tax amount that correspond to refund amount in amountPretax." - }, - "lineItemId": { - "type": "string", - "description": "The ID of the line item to return. Either lineItemId or productId is required." - }, - "operationId": { - "type": "string", - "description": "The ID of the operation. Unique across all operations for a given order." - }, - "productId": { - "type": "string", - "description": "The ID of the product to return. This is the REST ID used in the products service. Either lineItemId or productId is required." - }, - "quantity": { - "type": "integer", - "description": "The quantity to return and refund.", - "format": "uint32" - }, - "reason": { - "type": "string", - "description": "The reason for the return." - }, - "reasonText": { - "type": "string", - "description": "The explanation of the reason." - } - } - }, - "OrdersReturnRefundLineItemResponse": { - "id": "OrdersReturnRefundLineItemResponse", - "type": "object", - "properties": { - "executionStatus": { - "type": "string", - "description": "The status of the execution." - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"content#ordersReturnRefundLineItemResponse\".", - "default": "content#ordersReturnRefundLineItemResponse" - } - } - }, - "OrdersSetLineItemMetadataRequest": { - "id": "OrdersSetLineItemMetadataRequest", - "type": "object", - "properties": { - "annotations": { - "type": "array", - "items": { - "$ref": "OrderMerchantProvidedAnnotation" - } - }, - "lineItemId": { - "type": "string", - "description": "The ID of the line item to set metadata. Either lineItemId or productId is required." - }, - "operationId": { - "type": "string", - "description": "The ID of the operation. Unique across all operations for a given order." - }, - "productId": { - "type": "string", - "description": "The ID of the product to set metadata. This is the REST ID used in the products service. Either lineItemId or productId is required." - } - } - }, - "OrdersSetLineItemMetadataResponse": { - "id": "OrdersSetLineItemMetadataResponse", - "type": "object", - "properties": { - "executionStatus": { - "type": "string", - "description": "The status of the execution." - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"content#ordersSetLineItemMetadataResponse\".", - "default": "content#ordersSetLineItemMetadataResponse" - } - } - }, - "OrdersShipLineItemsRequest": { - "id": "OrdersShipLineItemsRequest", - "type": "object", - "properties": { - "carrier": { - "type": "string", - "description": "Deprecated. Please use shipmentInfo instead. The carrier handling the shipment. See shipments[].carrier in the Orders resource representation for a list of acceptable values." - }, - "lineItems": { - "type": "array", - "description": "Line items to ship.", - "items": { - "$ref": "OrderShipmentLineItemShipment" - } - }, - "operationId": { - "type": "string", - "description": "The ID of the operation. Unique across all operations for a given order." - }, - "shipmentId": { - "type": "string", - "description": "Deprecated. Please use shipmentInfo instead. The ID of the shipment." - }, - "shipmentInfos": { - "type": "array", - "description": "Shipment information. This field is repeated because a single line item can be shipped in several packages (and have several tracking IDs).", - "items": { - "$ref": "OrdersCustomBatchRequestEntryShipLineItemsShipmentInfo" - } - }, - "trackingId": { - "type": "string", - "description": "Deprecated. Please use shipmentInfo instead. The tracking id for the shipment." - } - } - }, - "OrdersShipLineItemsResponse": { - "id": "OrdersShipLineItemsResponse", - "type": "object", - "properties": { - "executionStatus": { - "type": "string", - "description": "The status of the execution." - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"content#ordersShipLineItemsResponse\".", - "default": "content#ordersShipLineItemsResponse" - } - } - }, - "OrdersUpdateLineItemShippingDetailsRequest": { - "id": "OrdersUpdateLineItemShippingDetailsRequest", - "type": "object", - "properties": { - "deliverByDate": { - "type": "string", - "description": "Updated delivery by date, in ISO 8601 format. If not specified only ship by date is updated." - }, - "lineItemId": { - "type": "string", - "description": "The ID of the line item to set metadata. Either lineItemId or productId is required." - }, - "operationId": { - "type": "string", - "description": "The ID of the operation. Unique across all operations for a given order." - }, - "productId": { - "type": "string", - "description": "The ID of the product to set metadata. This is the REST ID used in the products service. Either lineItemId or productId is required." - }, - "shipByDate": { - "type": "string", - "description": "Updated ship by date, in ISO 8601 format. If not specified only deliver by date is updated." - } - } - }, - "OrdersUpdateLineItemShippingDetailsResponse": { - "id": "OrdersUpdateLineItemShippingDetailsResponse", - "type": "object", - "properties": { - "executionStatus": { - "type": "string", - "description": "The status of the execution." - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"content#ordersUpdateLineItemShippingDetailsResponse\".", - "default": "content#ordersUpdateLineItemShippingDetailsResponse" - } - } - }, - "OrdersUpdateMerchantOrderIdRequest": { - "id": "OrdersUpdateMerchantOrderIdRequest", - "type": "object", - "properties": { - "merchantOrderId": { - "type": "string", - "description": "The merchant order id to be assigned to the order. Must be unique per merchant." - }, - "operationId": { - "type": "string", - "description": "The ID of the operation. Unique across all operations for a given order." - } - } - }, - "OrdersUpdateMerchantOrderIdResponse": { - "id": "OrdersUpdateMerchantOrderIdResponse", - "type": "object", - "properties": { - "executionStatus": { - "type": "string", - "description": "The status of the execution." - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"content#ordersUpdateMerchantOrderIdResponse\".", - "default": "content#ordersUpdateMerchantOrderIdResponse" - } - } - }, - "OrdersUpdateShipmentRequest": { - "id": "OrdersUpdateShipmentRequest", - "type": "object", - "properties": { - "carrier": { - "type": "string", - "description": "The carrier handling the shipment. Not updated if missing. See shipments[].carrier in the Orders resource representation for a list of acceptable values." - }, - "operationId": { - "type": "string", - "description": "The ID of the operation. Unique across all operations for a given order." - }, - "shipmentId": { - "type": "string", - "description": "The ID of the shipment." - }, - "status": { - "type": "string", - "description": "New status for the shipment. Not updated if missing." - }, - "trackingId": { - "type": "string", - "description": "The tracking id for the shipment. Not updated if missing." - } - } - }, - "OrdersUpdateShipmentResponse": { - "id": "OrdersUpdateShipmentResponse", - "type": "object", - "properties": { - "executionStatus": { - "type": "string", - "description": "The status of the execution." - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"content#ordersUpdateShipmentResponse\".", - "default": "content#ordersUpdateShipmentResponse" - } - } - }, - "Price": { - "id": "Price", - "type": "object", - "properties": { - "currency": { - "type": "string", - "description": "The currency of the price." - }, - "value": { - "type": "string", - "description": "The price represented as a number." - } - } - }, - "TestOrder": { - "id": "TestOrder", - "type": "object", - "properties": { - "customer": { - "$ref": "TestOrderCustomer", - "description": "The details of the customer who placed the order.", - "annotations": { - "required": [ - "content.orders.createtestorder" - ] - } - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"content#testOrder\".", - "default": "content#testOrder" - }, - "lineItems": { - "type": "array", - "description": "Line items that are ordered. At least one line item must be provided.", - "items": { - "$ref": "TestOrderLineItem" - }, - "annotations": { - "required": [ - "content.orders.createtestorder" - ] - } - }, - "notificationMode": { - "type": "string", - "description": "Determines if test order must be pulled by merchant or pushed to merchant via push integration." - }, - "paymentMethod": { - "$ref": "TestOrderPaymentMethod", - "description": "The details of the payment method." - }, - "predefinedDeliveryAddress": { - "type": "string", - "description": "Identifier of one of the predefined delivery addresses for the delivery.", - "annotations": { - "required": [ - "content.orders.createtestorder" - ] - } - }, - "promotions": { - "type": "array", - "description": "The details of the merchant provided promotions applied to the order. More details about the program are here.", - "items": { - "$ref": "OrderPromotion" - } - }, - "shippingCost": { - "$ref": "Price", - "description": "The total cost of shipping for all items.", - "annotations": { - "required": [ - "content.orders.createtestorder" - ] - } - }, - "shippingCostTax": { - "$ref": "Price", - "description": "The tax for the total shipping cost.", - "annotations": { - "required": [ - "content.orders.createtestorder" - ] - } - }, - "shippingOption": { - "type": "string", - "description": "The requested shipping option.", - "annotations": { - "required": [ - "content.orders.createtestorder" - ] - } - } - } - }, - "TestOrderCustomer": { - "id": "TestOrderCustomer", - "type": "object", - "properties": { - "email": { - "type": "string", - "description": "Email address of the customer.", - "annotations": { - "required": [ - "content.orders.createtestorder" - ] - } - }, - "explicitMarketingPreference": { - "type": "boolean", - "description": "If set, this indicates the user explicitly chose to opt in or out of providing marketing rights to the merchant. If unset, this indicates the user has already made this choice in a previous purchase, and was thus not shown the marketing right opt in/out checkbox during the checkout flow. Optional." - }, - "fullName": { - "type": "string", - "description": "Full name of the customer." - } - } - }, - "TestOrderLineItem": { - "id": "TestOrderLineItem", - "type": "object", - "properties": { - "product": { - "$ref": "TestOrderLineItemProduct", - "description": "Product data from the time of the order placement." - }, - "quantityOrdered": { - "type": "integer", - "description": "Number of items ordered.", - "format": "uint32", - "annotations": { - "required": [ - "content.orders.createtestorder" - ] - } - }, - "returnInfo": { - "$ref": "OrderLineItemReturnInfo", - "description": "Details of the return policy for the line item.", - "annotations": { - "required": [ - "content.orders.createtestorder" - ] - } - }, - "shippingDetails": { - "$ref": "OrderLineItemShippingDetails", - "description": "Details of the requested shipping for the line item.", - "annotations": { - "required": [ - "content.orders.createtestorder" - ] - } - }, - "unitTax": { - "$ref": "Price", - "description": "Unit tax for the line item.", - "annotations": { - "required": [ - "content.orders.createtestorder" - ] - } - } - } - }, - "TestOrderLineItemProduct": { - "id": "TestOrderLineItemProduct", - "type": "object", - "properties": { - "brand": { - "type": "string", - "description": "Brand of the item.", - "annotations": { - "required": [ - "content.orders.createtestorder" - ] - } - }, - "channel": { - "type": "string", - "description": "The item's channel.", - "annotations": { - "required": [ - "content.orders.createtestorder" - ] - } - }, - "condition": { - "type": "string", - "description": "Condition or state of the item.", - "annotations": { - "required": [ - "content.orders.createtestorder" - ] - } - }, - "contentLanguage": { - "type": "string", - "description": "The two-letter ISO 639-1 language code for the item.", - "annotations": { - "required": [ - "content.orders.createtestorder" - ] - } - }, - "gtin": { - "type": "string", - "description": "Global Trade Item Number (GTIN) of the item. Optional." - }, - "imageLink": { - "type": "string", - "description": "URL of an image of the item.", - "annotations": { - "required": [ - "content.orders.createtestorder" - ] - } - }, - "itemGroupId": { - "type": "string", - "description": "Shared identifier for all variants of the same product. Optional." - }, - "mpn": { - "type": "string", - "description": "Manufacturer Part Number (MPN) of the item. Optional." - }, - "offerId": { - "type": "string", - "description": "An identifier of the item.", - "annotations": { - "required": [ - "content.orders.createtestorder" - ] - } - }, - "price": { - "$ref": "Price", - "description": "The price for the product.", - "annotations": { - "required": [ - "content.orders.createtestorder" - ] - } - }, - "targetCountry": { - "type": "string", - "description": "The CLDR territory code of the target country of the product.", - "annotations": { - "required": [ - "content.orders.createtestorder" - ] - } - }, - "title": { - "type": "string", - "description": "The title of the product.", - "annotations": { - "required": [ - "content.orders.createtestorder" - ] - } - }, - "variantAttributes": { - "type": "array", - "description": "Variant attributes for the item. Optional.", - "items": { - "$ref": "OrderLineItemProductVariantAttribute" - } - } - } - }, - "TestOrderPaymentMethod": { - "id": "TestOrderPaymentMethod", - "type": "object", - "properties": { - "expirationMonth": { - "type": "integer", - "description": "The card expiration month (January = 1, February = 2 etc.).", - "format": "int32" - }, - "expirationYear": { - "type": "integer", - "description": "The card expiration year (4-digit, e.g. 2015).", - "format": "int32" - }, - "lastFourDigits": { - "type": "string", - "description": "The last four digits of the card number." - }, - "predefinedBillingAddress": { - "type": "string", - "description": "The billing address." - }, - "type": { - "type": "string", - "description": "The type of instrument. Note that real orders might have different values than the four values accepted by createTestOrder." - } - } - } - }, - "resources": { - "orders": { - "methods": { - "acknowledge": { - "id": "content.orders.acknowledge", - "path": "{merchantId}/orders/{orderId}/acknowledge", - "httpMethod": "POST", - "description": "Marks an order as acknowledged.", - "parameters": { - "merchantId": { - "type": "string", - "description": "The ID of the account that manages the order. This cannot be a multi-client account.", - "required": true, - "format": "uint64", - "location": "path" - }, - "orderId": { - "type": "string", - "description": "The ID of the order.", - "required": true, - "location": "path" + "protocol": "rest", + "resources": { + "orders": { + "methods": { + "acknowledge": { + "description": "Marks an order as acknowledged.", + "httpMethod": "POST", + "id": "content.orders.acknowledge", + "parameterOrder": [ + "merchantId", + "orderId" + ], + "parameters": { + "merchantId": { + "description": "The ID of the account that manages the order. This cannot be a multi-client account.", + "format": "uint64", + "location": "path", + "required": true, + "type": "string" + }, + "orderId": { + "description": "The ID of the order.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{merchantId}/orders/{orderId}/acknowledge", + "request": { + "$ref": "OrdersAcknowledgeRequest" + }, + "response": { + "$ref": "OrdersAcknowledgeResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/content" + ] + }, + "advancetestorder": { + "description": "Sandbox only. Moves a test order from state \"inProgress\" to state \"pendingShipment\".", + "httpMethod": "POST", + "id": "content.orders.advancetestorder", + "parameterOrder": [ + "merchantId", + "orderId" + ], + "parameters": { + "merchantId": { + "description": "The ID of the account that manages the order. This cannot be a multi-client account.", + "format": "uint64", + "location": "path", + "required": true, + "type": "string" + }, + "orderId": { + "description": "The ID of the test order to modify.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{merchantId}/testorders/{orderId}/advance", + "response": { + "$ref": "OrdersAdvanceTestOrderResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/content" + ] + }, + "cancel": { + "description": "Cancels all line items in an order, making a full refund.", + "httpMethod": "POST", + "id": "content.orders.cancel", + "parameterOrder": [ + "merchantId", + "orderId" + ], + "parameters": { + "merchantId": { + "description": "The ID of the account that manages the order. This cannot be a multi-client account.", + "format": "uint64", + "location": "path", + "required": true, + "type": "string" + }, + "orderId": { + "description": "The ID of the order to cancel.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{merchantId}/orders/{orderId}/cancel", + "request": { + "$ref": "OrdersCancelRequest" + }, + "response": { + "$ref": "OrdersCancelResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/content" + ] + }, + "cancellineitem": { + "description": "Cancels a line item, making a full refund.", + "httpMethod": "POST", + "id": "content.orders.cancellineitem", + "parameterOrder": [ + "merchantId", + "orderId" + ], + "parameters": { + "merchantId": { + "description": "The ID of the account that manages the order. This cannot be a multi-client account.", + "format": "uint64", + "location": "path", + "required": true, + "type": "string" + }, + "orderId": { + "description": "The ID of the order.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{merchantId}/orders/{orderId}/cancelLineItem", + "request": { + "$ref": "OrdersCancelLineItemRequest" + }, + "response": { + "$ref": "OrdersCancelLineItemResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/content" + ] + }, + "createtestorder": { + "description": "Sandbox only. Creates a test order.", + "httpMethod": "POST", + "id": "content.orders.createtestorder", + "parameterOrder": [ + "merchantId" + ], + "parameters": { + "merchantId": { + "description": "The ID of the account that should manage the order. This cannot be a multi-client account.", + "format": "uint64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{merchantId}/testorders", + "request": { + "$ref": "OrdersCreateTestOrderRequest" + }, + "response": { + "$ref": "OrdersCreateTestOrderResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/content" + ] + }, + "custombatch": { + "description": "Retrieves or modifies multiple orders in a single request.", + "httpMethod": "POST", + "id": "content.orders.custombatch", + "path": "orders/batch", + "request": { + "$ref": "OrdersCustomBatchRequest" + }, + "response": { + "$ref": "OrdersCustomBatchResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/content" + ] + }, + "get": { + "description": "Retrieves an order from your Merchant Center account.", + "httpMethod": "GET", + "id": "content.orders.get", + "parameterOrder": [ + "merchantId", + "orderId" + ], + "parameters": { + "merchantId": { + "description": "The ID of the account that manages the order. This cannot be a multi-client account.", + "format": "uint64", + "location": "path", + "required": true, + "type": "string" + }, + "orderId": { + "description": "The ID of the order.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{merchantId}/orders/{orderId}", + "response": { + "$ref": "Order" + }, + "scopes": [ + "https://www.googleapis.com/auth/content" + ] + }, + "getbymerchantorderid": { + "description": "Retrieves an order using merchant order id.", + "httpMethod": "GET", + "id": "content.orders.getbymerchantorderid", + "parameterOrder": [ + "merchantId", + "merchantOrderId" + ], + "parameters": { + "merchantId": { + "description": "The ID of the account that manages the order. This cannot be a multi-client account.", + "format": "uint64", + "location": "path", + "required": true, + "type": "string" + }, + "merchantOrderId": { + "description": "The merchant order id to be looked for.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{merchantId}/ordersbymerchantid/{merchantOrderId}", + "response": { + "$ref": "OrdersGetByMerchantOrderIdResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/content" + ] + }, + "gettestordertemplate": { + "description": "Sandbox only. Retrieves an order template that can be used to quickly create a new order in sandbox.", + "httpMethod": "GET", + "id": "content.orders.gettestordertemplate", + "parameterOrder": [ + "merchantId", + "templateName" + ], + "parameters": { + "merchantId": { + "description": "The ID of the account that should manage the order. This cannot be a multi-client account.", + "format": "uint64", + "location": "path", + "required": true, + "type": "string" + }, + "templateName": { + "description": "The name of the template to retrieve.", + "enum": [ + "template1", + "template1a", + "template1b", + "template2" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ], + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{merchantId}/testordertemplates/{templateName}", + "response": { + "$ref": "OrdersGetTestOrderTemplateResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/content" + ] + }, + "instorerefundlineitem": { + "description": "Notifies that item return and refund was handled directly in store.", + "httpMethod": "POST", + "id": "content.orders.instorerefundlineitem", + "parameterOrder": [ + "merchantId", + "orderId" + ], + "parameters": { + "merchantId": { + "description": "The ID of the account that manages the order. This cannot be a multi-client account.", + "format": "uint64", + "location": "path", + "required": true, + "type": "string" + }, + "orderId": { + "description": "The ID of the order.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{merchantId}/orders/{orderId}/inStoreRefundLineItem", + "request": { + "$ref": "OrdersInStoreRefundLineItemRequest" + }, + "response": { + "$ref": "OrdersInStoreRefundLineItemResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/content" + ] + }, + "list": { + "description": "Lists the orders in your Merchant Center account.", + "httpMethod": "GET", + "id": "content.orders.list", + "parameterOrder": [ + "merchantId" + ], + "parameters": { + "acknowledged": { + "description": "Obtains orders that match the acknowledgement status. When set to true, obtains orders that have been acknowledged. When false, obtains orders that have not been acknowledged.\nWe recommend using this filter set to false, in conjunction with the acknowledge call, such that only un-acknowledged orders are returned.", + "location": "query", + "type": "boolean" + }, + "maxResults": { + "description": "The maximum number of orders to return in the response, used for paging. The default value is 25 orders per page, and the maximum allowed value is 250 orders per page.\nKnown issue: All List calls will return all Orders without limit regardless of the value of this field.", + "format": "uint32", + "location": "query", + "type": "integer" + }, + "merchantId": { + "description": "The ID of the account that manages the order. This cannot be a multi-client account.", + "format": "uint64", + "location": "path", + "required": true, + "type": "string" + }, + "orderBy": { + "description": "The ordering of the returned list. The only supported value are placedDate desc and placedDate asc for now, which returns orders sorted by placement date. \"placedDate desc\" stands for listing orders by placement date, from oldest to most recent. \"placedDate asc\" stands for listing orders by placement date, from most recent to oldest. In future releases we'll support other sorting criteria.", + "enum": [ + "placedDate asc", + "placedDate desc" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "The token returned by the previous request.", + "location": "query", + "type": "string" + }, + "placedDateEnd": { + "description": "Obtains orders placed before this date (exclusively), in ISO 8601 format.", + "location": "query", + "type": "string" + }, + "placedDateStart": { + "description": "Obtains orders placed after this date (inclusively), in ISO 8601 format.", + "location": "query", + "type": "string" + }, + "statuses": { + "description": "Obtains orders that match any of the specified statuses. Multiple values can be specified with comma separation. Additionally, please note that active is a shortcut for pendingShipment and partiallyShipped, and completed is a shortcut for shipped , partiallyDelivered, delivered, partiallyReturned, returned, and canceled.", + "enum": [ + "active", + "canceled", + "completed", + "delivered", + "inProgress", + "partiallyDelivered", + "partiallyReturned", + "partiallyShipped", + "pendingShipment", + "returned", + "shipped" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "location": "query", + "repeated": true, + "type": "string" + } + }, + "path": "{merchantId}/orders", + "response": { + "$ref": "OrdersListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/content" + ] + }, + "refund": { + "description": "Refund a portion of the order, up to the full amount paid.", + "httpMethod": "POST", + "id": "content.orders.refund", + "parameterOrder": [ + "merchantId", + "orderId" + ], + "parameters": { + "merchantId": { + "description": "The ID of the account that manages the order. This cannot be a multi-client account.", + "format": "uint64", + "location": "path", + "required": true, + "type": "string" + }, + "orderId": { + "description": "The ID of the order to refund.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{merchantId}/orders/{orderId}/refund", + "request": { + "$ref": "OrdersRefundRequest" + }, + "response": { + "$ref": "OrdersRefundResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/content" + ] + }, + "rejectreturnlineitem": { + "description": "Rejects return on an line item.", + "httpMethod": "POST", + "id": "content.orders.rejectreturnlineitem", + "parameterOrder": [ + "merchantId", + "orderId" + ], + "parameters": { + "merchantId": { + "description": "The ID of the account that manages the order. This cannot be a multi-client account.", + "format": "uint64", + "location": "path", + "required": true, + "type": "string" + }, + "orderId": { + "description": "The ID of the order.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{merchantId}/orders/{orderId}/rejectReturnLineItem", + "request": { + "$ref": "OrdersRejectReturnLineItemRequest" + }, + "response": { + "$ref": "OrdersRejectReturnLineItemResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/content" + ] + }, + "returnlineitem": { + "description": "Returns a line item.", + "httpMethod": "POST", + "id": "content.orders.returnlineitem", + "parameterOrder": [ + "merchantId", + "orderId" + ], + "parameters": { + "merchantId": { + "description": "The ID of the account that manages the order. This cannot be a multi-client account.", + "format": "uint64", + "location": "path", + "required": true, + "type": "string" + }, + "orderId": { + "description": "The ID of the order.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{merchantId}/orders/{orderId}/returnLineItem", + "request": { + "$ref": "OrdersReturnLineItemRequest" + }, + "response": { + "$ref": "OrdersReturnLineItemResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/content" + ] + }, + "returnrefundlineitem": { + "description": "Returns and refunds a line item. Note that this method can only be called on fully shipped orders.", + "httpMethod": "POST", + "id": "content.orders.returnrefundlineitem", + "parameterOrder": [ + "merchantId", + "orderId" + ], + "parameters": { + "merchantId": { + "description": "The ID of the account that manages the order. This cannot be a multi-client account.", + "format": "uint64", + "location": "path", + "required": true, + "type": "string" + }, + "orderId": { + "description": "The ID of the order.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{merchantId}/orders/{orderId}/returnRefundLineItem", + "request": { + "$ref": "OrdersReturnRefundLineItemRequest" + }, + "response": { + "$ref": "OrdersReturnRefundLineItemResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/content" + ] + }, + "setlineitemmetadata": { + "description": "Sets (overrides) merchant provided annotations on the line item.", + "httpMethod": "POST", + "id": "content.orders.setlineitemmetadata", + "parameterOrder": [ + "merchantId", + "orderId" + ], + "parameters": { + "merchantId": { + "description": "The ID of the account that manages the order. This cannot be a multi-client account.", + "format": "uint64", + "location": "path", + "required": true, + "type": "string" + }, + "orderId": { + "description": "The ID of the order.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{merchantId}/orders/{orderId}/setLineItemMetadata", + "request": { + "$ref": "OrdersSetLineItemMetadataRequest" + }, + "response": { + "$ref": "OrdersSetLineItemMetadataResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/content" + ] + }, + "shiplineitems": { + "description": "Marks line item(s) as shipped.", + "httpMethod": "POST", + "id": "content.orders.shiplineitems", + "parameterOrder": [ + "merchantId", + "orderId" + ], + "parameters": { + "merchantId": { + "description": "The ID of the account that manages the order. This cannot be a multi-client account.", + "format": "uint64", + "location": "path", + "required": true, + "type": "string" + }, + "orderId": { + "description": "The ID of the order.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{merchantId}/orders/{orderId}/shipLineItems", + "request": { + "$ref": "OrdersShipLineItemsRequest" + }, + "response": { + "$ref": "OrdersShipLineItemsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/content" + ] + }, + "updatelineitemshippingdetails": { + "description": "Updates ship by and delivery by dates for a line item.", + "httpMethod": "POST", + "id": "content.orders.updatelineitemshippingdetails", + "parameterOrder": [ + "merchantId", + "orderId" + ], + "parameters": { + "merchantId": { + "description": "The ID of the account that manages the order. This cannot be a multi-client account.", + "format": "uint64", + "location": "path", + "required": true, + "type": "string" + }, + "orderId": { + "description": "The ID of the order.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{merchantId}/orders/{orderId}/updateLineItemShippingDetails", + "request": { + "$ref": "OrdersUpdateLineItemShippingDetailsRequest" + }, + "response": { + "$ref": "OrdersUpdateLineItemShippingDetailsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/content" + ] + }, + "updatemerchantorderid": { + "description": "Updates the merchant order ID for a given order.", + "httpMethod": "POST", + "id": "content.orders.updatemerchantorderid", + "parameterOrder": [ + "merchantId", + "orderId" + ], + "parameters": { + "merchantId": { + "description": "The ID of the account that manages the order. This cannot be a multi-client account.", + "format": "uint64", + "location": "path", + "required": true, + "type": "string" + }, + "orderId": { + "description": "The ID of the order.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{merchantId}/orders/{orderId}/updateMerchantOrderId", + "request": { + "$ref": "OrdersUpdateMerchantOrderIdRequest" + }, + "response": { + "$ref": "OrdersUpdateMerchantOrderIdResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/content" + ] + }, + "updateshipment": { + "description": "Updates a shipment's status, carrier, and/or tracking ID.", + "httpMethod": "POST", + "id": "content.orders.updateshipment", + "parameterOrder": [ + "merchantId", + "orderId" + ], + "parameters": { + "merchantId": { + "description": "The ID of the account that manages the order. This cannot be a multi-client account.", + "format": "uint64", + "location": "path", + "required": true, + "type": "string" + }, + "orderId": { + "description": "The ID of the order.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{merchantId}/orders/{orderId}/updateShipment", + "request": { + "$ref": "OrdersUpdateShipmentRequest" + }, + "response": { + "$ref": "OrdersUpdateShipmentResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/content" + ] + } } - }, - "parameterOrder": [ - "merchantId", - "orderId" - ], - "request": { - "$ref": "OrdersAcknowledgeRequest" - }, - "response": { - "$ref": "OrdersAcknowledgeResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/content" - ] - }, - "advancetestorder": { - "id": "content.orders.advancetestorder", - "path": "{merchantId}/testorders/{orderId}/advance", - "httpMethod": "POST", - "description": "Sandbox only. Moves a test order from state \"inProgress\" to state \"pendingShipment\".", - "parameters": { - "merchantId": { - "type": "string", - "description": "The ID of the account that manages the order. This cannot be a multi-client account.", - "required": true, - "format": "uint64", - "location": "path" - }, - "orderId": { - "type": "string", - "description": "The ID of the test order to modify.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "merchantId", - "orderId" - ], - "response": { - "$ref": "OrdersAdvanceTestOrderResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/content" - ] - }, - "cancel": { - "id": "content.orders.cancel", - "path": "{merchantId}/orders/{orderId}/cancel", - "httpMethod": "POST", - "description": "Cancels all line items in an order, making a full refund.", - "parameters": { - "merchantId": { - "type": "string", - "description": "The ID of the account that manages the order. This cannot be a multi-client account.", - "required": true, - "format": "uint64", - "location": "path" - }, - "orderId": { - "type": "string", - "description": "The ID of the order to cancel.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "merchantId", - "orderId" - ], - "request": { - "$ref": "OrdersCancelRequest" - }, - "response": { - "$ref": "OrdersCancelResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/content" - ] - }, - "cancellineitem": { - "id": "content.orders.cancellineitem", - "path": "{merchantId}/orders/{orderId}/cancelLineItem", - "httpMethod": "POST", - "description": "Cancels a line item, making a full refund.", - "parameters": { - "merchantId": { - "type": "string", - "description": "The ID of the account that manages the order. This cannot be a multi-client account.", - "required": true, - "format": "uint64", - "location": "path" - }, - "orderId": { - "type": "string", - "description": "The ID of the order.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "merchantId", - "orderId" - ], - "request": { - "$ref": "OrdersCancelLineItemRequest" - }, - "response": { - "$ref": "OrdersCancelLineItemResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/content" - ] - }, - "createtestorder": { - "id": "content.orders.createtestorder", - "path": "{merchantId}/testorders", - "httpMethod": "POST", - "description": "Sandbox only. Creates a test order.", - "parameters": { - "merchantId": { - "type": "string", - "description": "The ID of the account that should manage the order. This cannot be a multi-client account.", - "required": true, - "format": "uint64", - "location": "path" - } - }, - "parameterOrder": [ - "merchantId" - ], - "request": { - "$ref": "OrdersCreateTestOrderRequest" - }, - "response": { - "$ref": "OrdersCreateTestOrderResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/content" - ] - }, - "custombatch": { - "id": "content.orders.custombatch", - "path": "orders/batch", - "httpMethod": "POST", - "description": "Retrieves or modifies multiple orders in a single request.", - "request": { - "$ref": "OrdersCustomBatchRequest" - }, - "response": { - "$ref": "OrdersCustomBatchResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/content" - ] - }, - "get": { - "id": "content.orders.get", - "path": "{merchantId}/orders/{orderId}", - "httpMethod": "GET", - "description": "Retrieves an order from your Merchant Center account.", - "parameters": { - "merchantId": { - "type": "string", - "description": "The ID of the account that manages the order. This cannot be a multi-client account.", - "required": true, - "format": "uint64", - "location": "path" - }, - "orderId": { - "type": "string", - "description": "The ID of the order.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "merchantId", - "orderId" - ], - "response": { - "$ref": "Order" - }, - "scopes": [ - "https://www.googleapis.com/auth/content" - ] - }, - "getbymerchantorderid": { - "id": "content.orders.getbymerchantorderid", - "path": "{merchantId}/ordersbymerchantid/{merchantOrderId}", - "httpMethod": "GET", - "description": "Retrieves an order using merchant order id.", - "parameters": { - "merchantId": { - "type": "string", - "description": "The ID of the account that manages the order. This cannot be a multi-client account.", - "required": true, - "format": "uint64", - "location": "path" - }, - "merchantOrderId": { - "type": "string", - "description": "The merchant order id to be looked for.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "merchantId", - "merchantOrderId" - ], - "response": { - "$ref": "OrdersGetByMerchantOrderIdResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/content" - ] - }, - "gettestordertemplate": { - "id": "content.orders.gettestordertemplate", - "path": "{merchantId}/testordertemplates/{templateName}", - "httpMethod": "GET", - "description": "Sandbox only. Retrieves an order template that can be used to quickly create a new order in sandbox.", - "parameters": { - "merchantId": { - "type": "string", - "description": "The ID of the account that should manage the order. This cannot be a multi-client account.", - "required": true, - "format": "uint64", - "location": "path" - }, - "templateName": { - "type": "string", - "description": "The name of the template to retrieve.", - "required": true, - "enum": [ - "template1", - "template1a", - "template1b", - "template2" - ], - "enumDescriptions": [ - "", - "", - "", - "" - ], - "location": "path" - } - }, - "parameterOrder": [ - "merchantId", - "templateName" - ], - "response": { - "$ref": "OrdersGetTestOrderTemplateResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/content" - ] - }, - "instorerefundlineitem": { - "id": "content.orders.instorerefundlineitem", - "path": "{merchantId}/orders/{orderId}/inStoreRefundLineItem", - "httpMethod": "POST", - "description": "Notifies that item return and refund was handled directly in store.", - "parameters": { - "merchantId": { - "type": "string", - "description": "The ID of the account that manages the order. This cannot be a multi-client account.", - "required": true, - "format": "uint64", - "location": "path" - }, - "orderId": { - "type": "string", - "description": "The ID of the order.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "merchantId", - "orderId" - ], - "request": { - "$ref": "OrdersInStoreRefundLineItemRequest" - }, - "response": { - "$ref": "OrdersInStoreRefundLineItemResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/content" - ] - }, - "list": { - "id": "content.orders.list", - "path": "{merchantId}/orders", - "httpMethod": "GET", - "description": "Lists the orders in your Merchant Center account.", - "parameters": { - "acknowledged": { - "type": "boolean", - "description": "Obtains orders that match the acknowledgement status. When set to true, obtains orders that have been acknowledged. When false, obtains orders that have not been acknowledged.\nWe recommend using this filter set to false, in conjunction with the acknowledge call, such that only un-acknowledged orders are returned.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of orders to return in the response, used for paging. The default value is 25 orders per page, and the maximum allowed value is 250 orders per page.\nKnown issue: All List calls will return all Orders without limit regardless of the value of this field.", - "format": "uint32", - "location": "query" - }, - "merchantId": { - "type": "string", - "description": "The ID of the account that manages the order. This cannot be a multi-client account.", - "required": true, - "format": "uint64", - "location": "path" - }, - "orderBy": { - "type": "string", - "description": "The ordering of the returned list. The only supported value are placedDate desc and placedDate asc for now, which returns orders sorted by placement date. \"placedDate desc\" stands for listing orders by placement date, from oldest to most recent. \"placedDate asc\" stands for listing orders by placement date, from most recent to oldest. In future releases we'll support other sorting criteria.", - "enum": [ - "placedDate asc", - "placedDate desc" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "The token returned by the previous request.", - "location": "query" - }, - "placedDateEnd": { - "type": "string", - "description": "Obtains orders placed before this date (exclusively), in ISO 8601 format.", - "location": "query" - }, - "placedDateStart": { - "type": "string", - "description": "Obtains orders placed after this date (inclusively), in ISO 8601 format.", - "location": "query" - }, - "statuses": { - "type": "string", - "description": "Obtains orders that match any of the specified statuses. Multiple values can be specified with comma separation. Additionally, please note that active is a shortcut for pendingShipment and partiallyShipped, and completed is a shortcut for shipped , partiallyDelivered, delivered, partiallyReturned, returned, and canceled.", - "enum": [ - "active", - "canceled", - "completed", - "delivered", - "inProgress", - "partiallyDelivered", - "partiallyReturned", - "partiallyShipped", - "pendingShipment", - "returned", - "shipped" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ], - "repeated": true, - "location": "query" - } - }, - "parameterOrder": [ - "merchantId" - ], - "response": { - "$ref": "OrdersListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/content" - ] - }, - "refund": { - "id": "content.orders.refund", - "path": "{merchantId}/orders/{orderId}/refund", - "httpMethod": "POST", - "description": "Refund a portion of the order, up to the full amount paid.", - "parameters": { - "merchantId": { - "type": "string", - "description": "The ID of the account that manages the order. This cannot be a multi-client account.", - "required": true, - "format": "uint64", - "location": "path" - }, - "orderId": { - "type": "string", - "description": "The ID of the order to refund.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "merchantId", - "orderId" - ], - "request": { - "$ref": "OrdersRefundRequest" - }, - "response": { - "$ref": "OrdersRefundResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/content" - ] - }, - "rejectreturnlineitem": { - "id": "content.orders.rejectreturnlineitem", - "path": "{merchantId}/orders/{orderId}/rejectReturnLineItem", - "httpMethod": "POST", - "description": "Rejects return on an line item.", - "parameters": { - "merchantId": { - "type": "string", - "description": "The ID of the account that manages the order. This cannot be a multi-client account.", - "required": true, - "format": "uint64", - "location": "path" - }, - "orderId": { - "type": "string", - "description": "The ID of the order.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "merchantId", - "orderId" - ], - "request": { - "$ref": "OrdersRejectReturnLineItemRequest" - }, - "response": { - "$ref": "OrdersRejectReturnLineItemResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/content" - ] - }, - "returnlineitem": { - "id": "content.orders.returnlineitem", - "path": "{merchantId}/orders/{orderId}/returnLineItem", - "httpMethod": "POST", - "description": "Returns a line item.", - "parameters": { - "merchantId": { - "type": "string", - "description": "The ID of the account that manages the order. This cannot be a multi-client account.", - "required": true, - "format": "uint64", - "location": "path" - }, - "orderId": { - "type": "string", - "description": "The ID of the order.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "merchantId", - "orderId" - ], - "request": { - "$ref": "OrdersReturnLineItemRequest" - }, - "response": { - "$ref": "OrdersReturnLineItemResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/content" - ] - }, - "returnrefundlineitem": { - "id": "content.orders.returnrefundlineitem", - "path": "{merchantId}/orders/{orderId}/returnRefundLineItem", - "httpMethod": "POST", - "description": "Returns and refunds a line item. Note that this method can only be called on fully shipped orders.", - "parameters": { - "merchantId": { - "type": "string", - "description": "The ID of the account that manages the order. This cannot be a multi-client account.", - "required": true, - "format": "uint64", - "location": "path" - }, - "orderId": { - "type": "string", - "description": "The ID of the order.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "merchantId", - "orderId" - ], - "request": { - "$ref": "OrdersReturnRefundLineItemRequest" - }, - "response": { - "$ref": "OrdersReturnRefundLineItemResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/content" - ] - }, - "setlineitemmetadata": { - "id": "content.orders.setlineitemmetadata", - "path": "{merchantId}/orders/{orderId}/setLineItemMetadata", - "httpMethod": "POST", - "description": "Sets (overrides) merchant provided annotations on the line item.", - "parameters": { - "merchantId": { - "type": "string", - "description": "The ID of the account that manages the order. This cannot be a multi-client account.", - "required": true, - "format": "uint64", - "location": "path" - }, - "orderId": { - "type": "string", - "description": "The ID of the order.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "merchantId", - "orderId" - ], - "request": { - "$ref": "OrdersSetLineItemMetadataRequest" - }, - "response": { - "$ref": "OrdersSetLineItemMetadataResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/content" - ] - }, - "shiplineitems": { - "id": "content.orders.shiplineitems", - "path": "{merchantId}/orders/{orderId}/shipLineItems", - "httpMethod": "POST", - "description": "Marks line item(s) as shipped.", - "parameters": { - "merchantId": { - "type": "string", - "description": "The ID of the account that manages the order. This cannot be a multi-client account.", - "required": true, - "format": "uint64", - "location": "path" - }, - "orderId": { - "type": "string", - "description": "The ID of the order.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "merchantId", - "orderId" - ], - "request": { - "$ref": "OrdersShipLineItemsRequest" - }, - "response": { - "$ref": "OrdersShipLineItemsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/content" - ] - }, - "updatelineitemshippingdetails": { - "id": "content.orders.updatelineitemshippingdetails", - "path": "{merchantId}/orders/{orderId}/updateLineItemShippingDetails", - "httpMethod": "POST", - "description": "Updates ship by and delivery by dates for a line item.", - "parameters": { - "merchantId": { - "type": "string", - "description": "The ID of the account that manages the order. This cannot be a multi-client account.", - "required": true, - "format": "uint64", - "location": "path" - }, - "orderId": { - "type": "string", - "description": "The ID of the order.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "merchantId", - "orderId" - ], - "request": { - "$ref": "OrdersUpdateLineItemShippingDetailsRequest" - }, - "response": { - "$ref": "OrdersUpdateLineItemShippingDetailsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/content" - ] - }, - "updatemerchantorderid": { - "id": "content.orders.updatemerchantorderid", - "path": "{merchantId}/orders/{orderId}/updateMerchantOrderId", - "httpMethod": "POST", - "description": "Updates the merchant order ID for a given order.", - "parameters": { - "merchantId": { - "type": "string", - "description": "The ID of the account that manages the order. This cannot be a multi-client account.", - "required": true, - "format": "uint64", - "location": "path" - }, - "orderId": { - "type": "string", - "description": "The ID of the order.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "merchantId", - "orderId" - ], - "request": { - "$ref": "OrdersUpdateMerchantOrderIdRequest" - }, - "response": { - "$ref": "OrdersUpdateMerchantOrderIdResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/content" - ] - }, - "updateshipment": { - "id": "content.orders.updateshipment", - "path": "{merchantId}/orders/{orderId}/updateShipment", - "httpMethod": "POST", - "description": "Updates a shipment's status, carrier, and/or tracking ID.", - "parameters": { - "merchantId": { - "type": "string", - "description": "The ID of the account that manages the order. This cannot be a multi-client account.", - "required": true, - "format": "uint64", - "location": "path" - }, - "orderId": { - "type": "string", - "description": "The ID of the order.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "merchantId", - "orderId" - ], - "request": { - "$ref": "OrdersUpdateShipmentRequest" - }, - "response": { - "$ref": "OrdersUpdateShipmentResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/content" - ] } - } - } - } -} + }, + "revision": "20180316", + "rootUrl": "https://www.googleapis.com/", + "schemas": { + "Error": { + "description": "An error returned by the API.", + "id": "Error", + "properties": { + "domain": { + "description": "The domain of the error.", + "type": "string" + }, + "message": { + "description": "A description of the error.", + "type": "string" + }, + "reason": { + "description": "The error code.", + "type": "string" + } + }, + "type": "object" + }, + "Errors": { + "description": "A list of errors returned by a failed batch entry.", + "id": "Errors", + "properties": { + "code": { + "description": "The HTTP status of the first error in errors.", + "format": "uint32", + "type": "integer" + }, + "errors": { + "description": "A list of errors.", + "items": { + "$ref": "Error" + }, + "type": "array" + }, + "message": { + "description": "The message of the first error in errors.", + "type": "string" + } + }, + "type": "object" + }, + "Order": { + "id": "Order", + "properties": { + "acknowledged": { + "description": "Whether the order was acknowledged.", + "type": "boolean" + }, + "channelType": { + "description": "The channel type of the order: \"purchaseOnGoogle\" or \"googleExpress\".", + "type": "string" + }, + "customer": { + "$ref": "OrderCustomer", + "description": "The details of the customer who placed the order." + }, + "deliveryDetails": { + "$ref": "OrderDeliveryDetails", + "description": "The details for the delivery." + }, + "id": { + "description": "The REST id of the order. Globally unique.", + "type": "string" + }, + "kind": { + "default": "content#order", + "description": "Identifies what kind of resource this is. Value: the fixed string \"content#order\".", + "type": "string" + }, + "lineItems": { + "description": "Line items that are ordered.", + "items": { + "$ref": "OrderLineItem" + }, + "type": "array" + }, + "merchantId": { + "format": "uint64", + "type": "string" + }, + "merchantOrderId": { + "description": "Merchant-provided id of the order.", + "type": "string" + }, + "netAmount": { + "$ref": "Price", + "description": "The net amount for the order. For example, if an order was originally for a grand total of $100 and a refund was issued for $20, the net amount will be $80." + }, + "paymentMethod": { + "$ref": "OrderPaymentMethod", + "description": "The details of the payment method." + }, + "paymentStatus": { + "description": "The status of the payment.", + "type": "string" + }, + "placedDate": { + "description": "The date when the order was placed, in ISO 8601 format.", + "type": "string" + }, + "promotions": { + "description": "The details of the merchant provided promotions applied to the order. More details about the program are here.", + "items": { + "$ref": "OrderPromotion" + }, + "type": "array" + }, + "refunds": { + "description": "Refunds for the order.", + "items": { + "$ref": "OrderRefund" + }, + "type": "array" + }, + "shipments": { + "description": "Shipments of the order.", + "items": { + "$ref": "OrderShipment" + }, + "type": "array" + }, + "shippingCost": { + "$ref": "Price", + "description": "The total cost of shipping for all items." + }, + "shippingCostTax": { + "$ref": "Price", + "description": "The tax for the total shipping cost." + }, + "shippingOption": { + "description": "The requested shipping option.", + "type": "string" + }, + "status": { + "description": "The status of the order.", + "type": "string" + } + }, + "type": "object" + }, + "OrderAddress": { + "id": "OrderAddress", + "properties": { + "country": { + "description": "CLDR country code (e.g. \"US\").", + "type": "string" + }, + "fullAddress": { + "description": "Strings representing the lines of the printed label for mailing the order, for example:\nJohn Smith\n1600 Amphitheatre Parkway\nMountain View, CA, 94043\nUnited States", + "items": { + "type": "string" + }, + "type": "array" + }, + "isPostOfficeBox": { + "description": "Whether the address is a post office box.", + "type": "boolean" + }, + "locality": { + "description": "City, town or commune. May also include dependent localities or sublocalities (e.g. neighborhoods or suburbs).", + "type": "string" + }, + "postalCode": { + "description": "Postal Code or ZIP (e.g. \"94043\").", + "type": "string" + }, + "recipientName": { + "description": "Name of the recipient.", + "type": "string" + }, + "region": { + "description": "Top-level administrative subdivision of the country (e.g. \"CA\").", + "type": "string" + }, + "streetAddress": { + "description": "Street-level part of the address.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "OrderCancellation": { + "id": "OrderCancellation", + "properties": { + "actor": { + "description": "The actor that created the cancellation.", + "type": "string" + }, + "creationDate": { + "description": "Date on which the cancellation has been created, in ISO 8601 format.", + "type": "string" + }, + "quantity": { + "description": "The quantity that was canceled.", + "format": "uint32", + "type": "integer" + }, + "reason": { + "description": "The reason for the cancellation. Orders that are cancelled with a noInventory reason will lead to the removal of the product from POG until you make an update to that product. This will not affect your Shopping ads.", + "type": "string" + }, + "reasonText": { + "description": "The explanation of the reason.", + "type": "string" + } + }, + "type": "object" + }, + "OrderCustomer": { + "id": "OrderCustomer", + "properties": { + "email": { + "description": "Email address that should be used for order related communications. In certain cases this might not be a real users email, but a proxy email.", + "type": "string" + }, + "explicitMarketingPreference": { + "description": "If set, this indicates the user explicitly chose to opt in or out of providing marketing rights to the merchant. If unset, this indicates the user has already made this choice in a previous purchase, and was thus not shown the marketing right opt in/out checkbox during the checkout flow.", + "type": "boolean" + }, + "fullName": { + "description": "Full name of the customer.", + "type": "string" + } + }, + "type": "object" + }, + "OrderDeliveryDetails": { + "id": "OrderDeliveryDetails", + "properties": { + "address": { + "$ref": "OrderAddress", + "description": "The delivery address" + }, + "phoneNumber": { + "description": "The phone number of the person receiving the delivery.", + "type": "string" + } + }, + "type": "object" + }, + "OrderLineItem": { + "id": "OrderLineItem", + "properties": { + "annotations": { + "description": "Annotations that are attached to the line item.", + "items": { + "$ref": "OrderMerchantProvidedAnnotation" + }, + "type": "array" + }, + "cancellations": { + "description": "Cancellations of the line item.", + "items": { + "$ref": "OrderCancellation" + }, + "type": "array" + }, + "id": { + "description": "The id of the line item.", + "type": "string" + }, + "price": { + "$ref": "Price", + "description": "Total price for the line item. For example, if two items for $10 are purchased, the total price will be $20." + }, + "product": { + "$ref": "OrderLineItemProduct", + "description": "Product data from the time of the order placement." + }, + "quantityCanceled": { + "description": "Number of items canceled.", + "format": "uint32", + "type": "integer" + }, + "quantityDelivered": { + "description": "Number of items delivered.", + "format": "uint32", + "type": "integer" + }, + "quantityOrdered": { + "description": "Number of items ordered.", + "format": "uint32", + "type": "integer" + }, + "quantityPending": { + "description": "Number of items pending.", + "format": "uint32", + "type": "integer" + }, + "quantityReturned": { + "description": "Number of items returned.", + "format": "uint32", + "type": "integer" + }, + "quantityShipped": { + "description": "Number of items shipped.", + "format": "uint32", + "type": "integer" + }, + "returnInfo": { + "$ref": "OrderLineItemReturnInfo", + "description": "Details of the return policy for the line item." + }, + "returns": { + "description": "Returns of the line item.", + "items": { + "$ref": "OrderReturn" + }, + "type": "array" + }, + "shippingDetails": { + "$ref": "OrderLineItemShippingDetails", + "description": "Details of the requested shipping for the line item." + }, + "tax": { + "$ref": "Price", + "description": "Total tax amount for the line item. For example, if two items are purchased, and each have a cost tax of $2, the total tax amount will be $4." + } + }, + "type": "object" + }, + "OrderLineItemProduct": { + "id": "OrderLineItemProduct", + "properties": { + "brand": { + "description": "Brand of the item.", + "type": "string" + }, + "channel": { + "description": "The item's channel (online or local).", + "type": "string" + }, + "condition": { + "description": "Condition or state of the item.", + "type": "string" + }, + "contentLanguage": { + "description": "The two-letter ISO 639-1 language code for the item.", + "type": "string" + }, + "gtin": { + "description": "Global Trade Item Number (GTIN) of the item.", + "type": "string" + }, + "id": { + "description": "The REST id of the product.", + "type": "string" + }, + "imageLink": { + "description": "URL of an image of the item.", + "type": "string" + }, + "itemGroupId": { + "description": "Shared identifier for all variants of the same product.", + "type": "string" + }, + "mpn": { + "description": "Manufacturer Part Number (MPN) of the item.", + "type": "string" + }, + "offerId": { + "description": "An identifier of the item.", + "type": "string" + }, + "price": { + "$ref": "Price", + "description": "Price of the item." + }, + "shownImage": { + "description": "URL to the cached image shown to the user when order was placed.", + "type": "string" + }, + "targetCountry": { + "description": "The CLDR territory code of the target country of the product.", + "type": "string" + }, + "title": { + "description": "The title of the product.", + "type": "string" + }, + "variantAttributes": { + "description": "Variant attributes for the item. These are dimensions of the product, such as color, gender, material, pattern, and size. You can find a comprehensive list of variant attributes here.", + "items": { + "$ref": "OrderLineItemProductVariantAttribute" + }, + "type": "array" + } + }, + "type": "object" + }, + "OrderLineItemProductVariantAttribute": { + "id": "OrderLineItemProductVariantAttribute", + "properties": { + "dimension": { + "description": "The dimension of the variant.", + "type": "string" + }, + "value": { + "description": "The value for the dimension.", + "type": "string" + } + }, + "type": "object" + }, + "OrderLineItemReturnInfo": { + "id": "OrderLineItemReturnInfo", + "properties": { + "daysToReturn": { + "annotations": { + "required": [ + "content.orders.createtestorder" + ] + }, + "description": "How many days later the item can be returned.", + "format": "int32", + "type": "integer" + }, + "isReturnable": { + "annotations": { + "required": [ + "content.orders.createtestorder" + ] + }, + "description": "Whether the item is returnable.", + "type": "boolean" + }, + "policyUrl": { + "annotations": { + "required": [ + "content.orders.createtestorder" + ] + }, + "description": "URL of the item return policy.", + "type": "string" + } + }, + "type": "object" + }, + "OrderLineItemShippingDetails": { + "id": "OrderLineItemShippingDetails", + "properties": { + "deliverByDate": { + "annotations": { + "required": [ + "content.orders.createtestorder" + ] + }, + "description": "The delivery by date, in ISO 8601 format.", + "type": "string" + }, + "method": { + "$ref": "OrderLineItemShippingDetailsMethod", + "annotations": { + "required": [ + "content.orders.createtestorder" + ] + }, + "description": "Details of the shipping method." + }, + "shipByDate": { + "annotations": { + "required": [ + "content.orders.createtestorder" + ] + }, + "description": "The ship by date, in ISO 8601 format.", + "type": "string" + } + }, + "type": "object" + }, + "OrderLineItemShippingDetailsMethod": { + "id": "OrderLineItemShippingDetailsMethod", + "properties": { + "carrier": { + "description": "The carrier for the shipping. Optional. See shipments[].carrier for a list of acceptable values.", + "type": "string" + }, + "maxDaysInTransit": { + "annotations": { + "required": [ + "content.orders.createtestorder" + ] + }, + "description": "Maximum transit time.", + "format": "uint32", + "type": "integer" + }, + "methodName": { + "annotations": { + "required": [ + "content.orders.createtestorder" + ] + }, + "description": "The name of the shipping method.", + "type": "string" + }, + "minDaysInTransit": { + "annotations": { + "required": [ + "content.orders.createtestorder" + ] + }, + "description": "Minimum transit time.", + "format": "uint32", + "type": "integer" + } + }, + "type": "object" + }, + "OrderMerchantProvidedAnnotation": { + "id": "OrderMerchantProvidedAnnotation", + "properties": { + "key": { + "description": "Key for additional merchant provided (as key-value pairs) annotation about the line item.", + "type": "string" + }, + "value": { + "description": "Value for additional merchant provided (as key-value pairs) annotation about the line item.", + "type": "string" + } + }, + "type": "object" + }, + "OrderPaymentMethod": { + "id": "OrderPaymentMethod", + "properties": { + "billingAddress": { + "$ref": "OrderAddress", + "description": "The billing address." + }, + "expirationMonth": { + "description": "The card expiration month (January = 1, February = 2 etc.).", + "format": "int32", + "type": "integer" + }, + "expirationYear": { + "description": "The card expiration year (4-digit, e.g. 2015).", + "format": "int32", + "type": "integer" + }, + "lastFourDigits": { + "description": "The last four digits of the card number.", + "type": "string" + }, + "phoneNumber": { + "description": "The billing phone number.", + "type": "string" + }, + "type": { + "description": "The type of instrument.\n\nAcceptable values are: \n- \"AMEX\" \n- \"DISCOVER\" \n- \"JCB\" \n- \"MASTERCARD\" \n- \"UNIONPAY\" \n- \"VISA\" \n- \"\"", + "type": "string" + } + }, + "type": "object" + }, + "OrderPromotion": { + "id": "OrderPromotion", + "properties": { + "benefits": { + "items": { + "$ref": "OrderPromotionBenefit" + }, + "type": "array" + }, + "effectiveDates": { + "description": "The date and time frame when the promotion is active and ready for validation review. Note that the promotion live time may be delayed for a few hours due to the validation review.\nStart date and end date are separated by a forward slash (/). The start date is specified by the format (YYYY-MM-DD), followed by the letter ?T?, the time of the day when the sale starts (in Greenwich Mean Time, GMT), followed by an expression of the time zone for the sale. The end date is in the same format.", + "type": "string" + }, + "genericRedemptionCode": { + "description": "Optional. The text code that corresponds to the promotion when applied on the retailer?s website.", + "type": "string" + }, + "id": { + "description": "The unique ID of the promotion.", + "type": "string" + }, + "longTitle": { + "description": "The full title of the promotion.", + "type": "string" + }, + "productApplicability": { + "description": "Whether the promotion is applicable to all products or only specific products.", + "type": "string" + }, + "redemptionChannel": { + "description": "Indicates that the promotion is valid online.", + "type": "string" + } + }, + "type": "object" + }, + "OrderPromotionBenefit": { + "id": "OrderPromotionBenefit", + "properties": { + "discount": { + "$ref": "Price", + "description": "The discount in the order price when the promotion is applied." + }, + "offerIds": { + "description": "The OfferId(s) that were purchased in this order and map to this specific benefit of the promotion.", + "items": { + "type": "string" + }, + "type": "array" + }, + "subType": { + "description": "Further describes the benefit of the promotion. Note that we will expand on this enumeration as we support new promotion sub-types.", + "type": "string" + }, + "taxImpact": { + "$ref": "Price", + "description": "The impact on tax when the promotion is applied." + }, + "type": { + "description": "Describes whether the promotion applies to products (e.g. 20% off) or to shipping (e.g. Free Shipping).", + "type": "string" + } + }, + "type": "object" + }, + "OrderRefund": { + "id": "OrderRefund", + "properties": { + "actor": { + "description": "The actor that created the refund.", + "type": "string" + }, + "amount": { + "$ref": "Price", + "description": "The amount that is refunded." + }, + "creationDate": { + "description": "Date on which the item has been created, in ISO 8601 format.", + "type": "string" + }, + "reason": { + "description": "The reason for the refund.", + "type": "string" + }, + "reasonText": { + "description": "The explanation of the reason.", + "type": "string" + } + }, + "type": "object" + }, + "OrderReturn": { + "id": "OrderReturn", + "properties": { + "actor": { + "description": "The actor that created the refund.", + "type": "string" + }, + "creationDate": { + "description": "Date on which the item has been created, in ISO 8601 format.", + "type": "string" + }, + "quantity": { + "description": "Quantity that is returned.", + "format": "uint32", + "type": "integer" + }, + "reason": { + "description": "The reason for the return.", + "type": "string" + }, + "reasonText": { + "description": "The explanation of the reason.", + "type": "string" + } + }, + "type": "object" + }, + "OrderShipment": { + "id": "OrderShipment", + "properties": { + "carrier": { + "description": "The carrier handling the shipment.\n\nAcceptable values are: \n- \"gsx\" \n- \"ups\" \n- \"usps\" \n- \"fedex\" \n- \"dhl\" \n- \"ecourier\" \n- \"cxt\" \n- \"google\" \n- \"ontrac\" \n- \"emsy\" \n- \"ont\" \n- \"deliv\" \n- \"dynamex\" \n- \"lasership\" \n- \"mpx\" \n- \"uds\"", + "type": "string" + }, + "creationDate": { + "description": "Date on which the shipment has been created, in ISO 8601 format.", + "type": "string" + }, + "deliveryDate": { + "description": "Date on which the shipment has been delivered, in ISO 8601 format. Present only if status is delievered", + "type": "string" + }, + "id": { + "description": "The id of the shipment.", + "type": "string" + }, + "lineItems": { + "description": "The line items that are shipped.", + "items": { + "$ref": "OrderShipmentLineItemShipment" + }, + "type": "array" + }, + "status": { + "description": "The status of the shipment.", + "type": "string" + }, + "trackingId": { + "description": "The tracking id for the shipment.", + "type": "string" + } + }, + "type": "object" + }, + "OrderShipmentLineItemShipment": { + "id": "OrderShipmentLineItemShipment", + "properties": { + "lineItemId": { + "description": "The id of the line item that is shipped. Either lineItemId or productId is required.", + "type": "string" + }, + "productId": { + "description": "The ID of the product to ship. This is the REST ID used in the products service. Either lineItemId or productId is required.", + "type": "string" + }, + "quantity": { + "description": "The quantity that is shipped.", + "format": "uint32", + "type": "integer" + } + }, + "type": "object" + }, + "OrdersAcknowledgeRequest": { + "id": "OrdersAcknowledgeRequest", + "properties": { + "operationId": { + "description": "The ID of the operation. Unique across all operations for a given order.", + "type": "string" + } + }, + "type": "object" + }, + "OrdersAcknowledgeResponse": { + "id": "OrdersAcknowledgeResponse", + "properties": { + "executionStatus": { + "description": "The status of the execution.", + "type": "string" + }, + "kind": { + "default": "content#ordersAcknowledgeResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"content#ordersAcknowledgeResponse\".", + "type": "string" + } + }, + "type": "object" + }, + "OrdersAdvanceTestOrderResponse": { + "id": "OrdersAdvanceTestOrderResponse", + "properties": { + "kind": { + "default": "content#ordersAdvanceTestOrderResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"content#ordersAdvanceTestOrderResponse\".", + "type": "string" + } + }, + "type": "object" + }, + "OrdersCancelLineItemRequest": { + "id": "OrdersCancelLineItemRequest", + "properties": { + "amount": { + "$ref": "Price", + "description": "Amount to refund for the cancelation. Optional. If not set, Google will calculate the default based on the price and tax of the items involved. The amount must not be larger than the net amount left on the order." + }, + "amountPretax": { + "$ref": "Price", + "description": "Amount to refund for the cancelation. Optional. If not set, Google will calculate the default based on the price and tax of the items involved. The amount must not be larger than the net amount left on the order." + }, + "amountTax": { + "$ref": "Price", + "description": "Tax amount that correspond to cancellation amount in amountPretax." + }, + "lineItemId": { + "description": "The ID of the line item to cancel. Either lineItemId or productId is required.", + "type": "string" + }, + "operationId": { + "description": "The ID of the operation. Unique across all operations for a given order.", + "type": "string" + }, + "productId": { + "description": "The ID of the product to cancel. This is the REST ID used in the products service. Either lineItemId or productId is required.", + "type": "string" + }, + "quantity": { + "description": "The quantity to cancel.", + "format": "uint32", + "type": "integer" + }, + "reason": { + "description": "The reason for the cancellation.", + "type": "string" + }, + "reasonText": { + "description": "The explanation of the reason.", + "type": "string" + } + }, + "type": "object" + }, + "OrdersCancelLineItemResponse": { + "id": "OrdersCancelLineItemResponse", + "properties": { + "executionStatus": { + "description": "The status of the execution.", + "type": "string" + }, + "kind": { + "default": "content#ordersCancelLineItemResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"content#ordersCancelLineItemResponse\".", + "type": "string" + } + }, + "type": "object" + }, + "OrdersCancelRequest": { + "id": "OrdersCancelRequest", + "properties": { + "operationId": { + "description": "The ID of the operation. Unique across all operations for a given order.", + "type": "string" + }, + "reason": { + "description": "The reason for the cancellation.", + "type": "string" + }, + "reasonText": { + "description": "The explanation of the reason.", + "type": "string" + } + }, + "type": "object" + }, + "OrdersCancelResponse": { + "id": "OrdersCancelResponse", + "properties": { + "executionStatus": { + "description": "The status of the execution.", + "type": "string" + }, + "kind": { + "default": "content#ordersCancelResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"content#ordersCancelResponse\".", + "type": "string" + } + }, + "type": "object" + }, + "OrdersCreateTestOrderRequest": { + "id": "OrdersCreateTestOrderRequest", + "properties": { + "templateName": { + "description": "The test order template to use. Specify as an alternative to testOrder as a shortcut for retrieving a template and then creating an order using that template.", + "type": "string" + }, + "testOrder": { + "$ref": "TestOrder", + "description": "The test order to create." + } + }, + "type": "object" + }, + "OrdersCreateTestOrderResponse": { + "id": "OrdersCreateTestOrderResponse", + "properties": { + "kind": { + "default": "content#ordersCreateTestOrderResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"content#ordersCreateTestOrderResponse\".", + "type": "string" + }, + "orderId": { + "description": "The ID of the newly created test order.", + "type": "string" + } + }, + "type": "object" + }, + "OrdersCustomBatchRequest": { + "id": "OrdersCustomBatchRequest", + "properties": { + "entries": { + "description": "The request entries to be processed in the batch.", + "items": { + "$ref": "OrdersCustomBatchRequestEntry" + }, + "type": "array" + } + }, + "type": "object" + }, + "OrdersCustomBatchRequestEntry": { + "id": "OrdersCustomBatchRequestEntry", + "properties": { + "batchId": { + "description": "An entry ID, unique within the batch request.", + "format": "uint32", + "type": "integer" + }, + "cancel": { + "$ref": "OrdersCustomBatchRequestEntryCancel", + "description": "Required for cancel method." + }, + "cancelLineItem": { + "$ref": "OrdersCustomBatchRequestEntryCancelLineItem", + "description": "Required for cancelLineItem method." + }, + "inStoreRefundLineItem": { + "$ref": "OrdersCustomBatchRequestEntryInStoreRefundLineItem", + "description": "Required for inStoreReturnLineItem method." + }, + "merchantId": { + "description": "The ID of the managing account.", + "format": "uint64", + "type": "string" + }, + "merchantOrderId": { + "description": "The merchant order id. Required for updateMerchantOrderId and getByMerchantOrderId methods.", + "type": "string" + }, + "method": { + "description": "The method to apply.", + "type": "string" + }, + "operationId": { + "description": "The ID of the operation. Unique across all operations for a given order. Required for all methods beside get and getByMerchantOrderId.", + "type": "string" + }, + "orderId": { + "description": "The ID of the order. Required for all methods beside getByMerchantOrderId.", + "type": "string" + }, + "refund": { + "$ref": "OrdersCustomBatchRequestEntryRefund", + "description": "Required for refund method." + }, + "rejectReturnLineItem": { + "$ref": "OrdersCustomBatchRequestEntryRejectReturnLineItem", + "description": "Required for rejectReturnLineItem method." + }, + "returnLineItem": { + "$ref": "OrdersCustomBatchRequestEntryReturnLineItem", + "description": "Required for returnLineItem method." + }, + "returnRefundLineItem": { + "$ref": "OrdersCustomBatchRequestEntryReturnRefundLineItem", + "description": "Required for returnRefundLineItem method." + }, + "setLineItemMetadata": { + "$ref": "OrdersCustomBatchRequestEntrySetLineItemMetadata", + "description": "Required for setLineItemMetadata method." + }, + "shipLineItems": { + "$ref": "OrdersCustomBatchRequestEntryShipLineItems", + "description": "Required for shipLineItems method." + }, + "updateLineItemShippingDetails": { + "$ref": "OrdersCustomBatchRequestEntryUpdateLineItemShippingDetails", + "description": "Required for updateLineItemShippingDate method." + }, + "updateShipment": { + "$ref": "OrdersCustomBatchRequestEntryUpdateShipment", + "description": "Required for updateShipment method." + } + }, + "type": "object" + }, + "OrdersCustomBatchRequestEntryCancel": { + "id": "OrdersCustomBatchRequestEntryCancel", + "properties": { + "reason": { + "description": "The reason for the cancellation.", + "type": "string" + }, + "reasonText": { + "description": "The explanation of the reason.", + "type": "string" + } + }, + "type": "object" + }, + "OrdersCustomBatchRequestEntryCancelLineItem": { + "id": "OrdersCustomBatchRequestEntryCancelLineItem", + "properties": { + "amount": { + "$ref": "Price", + "description": "Amount to refund for the cancelation. Optional. If not set, Google will calculate the default based on the price and tax of the items involved. The amount must not be larger than the net amount left on the order." + }, + "amountPretax": { + "$ref": "Price", + "description": "Amount to refund for the cancelation. Optional. If not set, Google will calculate the default based on the price and tax of the items involved. The amount must not be larger than the net amount left on the order." + }, + "amountTax": { + "$ref": "Price", + "description": "Tax amount that correspond to cancellation amount in amountPretax." + }, + "lineItemId": { + "description": "The ID of the line item to cancel. Either lineItemId or productId is required.", + "type": "string" + }, + "productId": { + "description": "The ID of the product to cancel. This is the REST ID used in the products service. Either lineItemId or productId is required.", + "type": "string" + }, + "quantity": { + "description": "The quantity to cancel.", + "format": "uint32", + "type": "integer" + }, + "reason": { + "description": "The reason for the cancellation.", + "type": "string" + }, + "reasonText": { + "description": "The explanation of the reason.", + "type": "string" + } + }, + "type": "object" + }, + "OrdersCustomBatchRequestEntryInStoreRefundLineItem": { + "id": "OrdersCustomBatchRequestEntryInStoreRefundLineItem", + "properties": { + "amountPretax": { + "$ref": "Price", + "description": "The amount that is refunded. Required." + }, + "amountTax": { + "$ref": "Price", + "description": "Tax amount that correspond to refund amount in amountPretax. Required." + }, + "lineItemId": { + "description": "The ID of the line item to return. Either lineItemId or productId is required.", + "type": "string" + }, + "productId": { + "description": "The ID of the product to return. This is the REST ID used in the products service. Either lineItemId or productId is required.", + "type": "string" + }, + "quantity": { + "description": "The quantity to return and refund.", + "format": "uint32", + "type": "integer" + }, + "reason": { + "description": "The reason for the return.", + "type": "string" + }, + "reasonText": { + "description": "The explanation of the reason.", + "type": "string" + } + }, + "type": "object" + }, + "OrdersCustomBatchRequestEntryRefund": { + "id": "OrdersCustomBatchRequestEntryRefund", + "properties": { + "amount": { + "$ref": "Price", + "description": "The amount that is refunded." + }, + "amountPretax": { + "$ref": "Price", + "description": "The amount that is refunded. Either amount or amountPretax and amountTax should be filled." + }, + "amountTax": { + "$ref": "Price", + "description": "Tax amount that correspond to refund amount in amountPretax." + }, + "reason": { + "description": "The reason for the refund.", + "type": "string" + }, + "reasonText": { + "description": "The explanation of the reason.", + "type": "string" + } + }, + "type": "object" + }, + "OrdersCustomBatchRequestEntryRejectReturnLineItem": { + "id": "OrdersCustomBatchRequestEntryRejectReturnLineItem", + "properties": { + "lineItemId": { + "description": "The ID of the line item to return. Either lineItemId or productId is required.", + "type": "string" + }, + "productId": { + "description": "The ID of the product to return. This is the REST ID used in the products service. Either lineItemId or productId is required.", + "type": "string" + }, + "quantity": { + "description": "The quantity to return and refund.", + "format": "uint32", + "type": "integer" + }, + "reason": { + "description": "The reason for the return.", + "type": "string" + }, + "reasonText": { + "description": "The explanation of the reason.", + "type": "string" + } + }, + "type": "object" + }, + "OrdersCustomBatchRequestEntryReturnLineItem": { + "id": "OrdersCustomBatchRequestEntryReturnLineItem", + "properties": { + "lineItemId": { + "description": "The ID of the line item to return. Either lineItemId or productId is required.", + "type": "string" + }, + "productId": { + "description": "The ID of the product to return. This is the REST ID used in the products service. Either lineItemId or productId is required.", + "type": "string" + }, + "quantity": { + "description": "The quantity to return.", + "format": "uint32", + "type": "integer" + }, + "reason": { + "description": "The reason for the return.", + "type": "string" + }, + "reasonText": { + "description": "The explanation of the reason.", + "type": "string" + } + }, + "type": "object" + }, + "OrdersCustomBatchRequestEntryReturnRefundLineItem": { + "id": "OrdersCustomBatchRequestEntryReturnRefundLineItem", + "properties": { + "amountPretax": { + "$ref": "Price", + "description": "The amount that is refunded. Optional, but if filled then both amountPretax and amountTax must be set." + }, + "amountTax": { + "$ref": "Price", + "description": "Tax amount that correspond to refund amount in amountPretax." + }, + "lineItemId": { + "description": "The ID of the line item to return. Either lineItemId or productId is required.", + "type": "string" + }, + "productId": { + "description": "The ID of the product to return. This is the REST ID used in the products service. Either lineItemId or productId is required.", + "type": "string" + }, + "quantity": { + "description": "The quantity to return and refund.", + "format": "uint32", + "type": "integer" + }, + "reason": { + "description": "The reason for the return.", + "type": "string" + }, + "reasonText": { + "description": "The explanation of the reason.", + "type": "string" + } + }, + "type": "object" + }, + "OrdersCustomBatchRequestEntrySetLineItemMetadata": { + "id": "OrdersCustomBatchRequestEntrySetLineItemMetadata", + "properties": { + "annotations": { + "items": { + "$ref": "OrderMerchantProvidedAnnotation" + }, + "type": "array" + }, + "lineItemId": { + "description": "The ID of the line item to set metadata. Either lineItemId or productId is required.", + "type": "string" + }, + "productId": { + "description": "The ID of the product to set metadata. This is the REST ID used in the products service. Either lineItemId or productId is required.", + "type": "string" + } + }, + "type": "object" + }, + "OrdersCustomBatchRequestEntryShipLineItems": { + "id": "OrdersCustomBatchRequestEntryShipLineItems", + "properties": { + "carrier": { + "description": "Deprecated. Please use shipmentInfo instead. The carrier handling the shipment. See shipments[].carrier in the Orders resource representation for a list of acceptable values.", + "type": "string" + }, + "lineItems": { + "description": "Line items to ship.", + "items": { + "$ref": "OrderShipmentLineItemShipment" + }, + "type": "array" + }, + "shipmentId": { + "description": "Deprecated. Please use shipmentInfo instead. The ID of the shipment.", + "type": "string" + }, + "shipmentInfos": { + "description": "Shipment information. This field is repeated because a single line item can be shipped in several packages (and have several tracking IDs).", + "items": { + "$ref": "OrdersCustomBatchRequestEntryShipLineItemsShipmentInfo" + }, + "type": "array" + }, + "trackingId": { + "description": "Deprecated. Please use shipmentInfo instead. The tracking id for the shipment.", + "type": "string" + } + }, + "type": "object" + }, + "OrdersCustomBatchRequestEntryShipLineItemsShipmentInfo": { + "id": "OrdersCustomBatchRequestEntryShipLineItemsShipmentInfo", + "properties": { + "carrier": { + "description": "The carrier handling the shipment. See shipments[].carrier in the Orders resource representation for a list of acceptable values.", + "type": "string" + }, + "shipmentId": { + "annotations": { + "required": [ + "content.orders.shiplineitems" + ] + }, + "description": "The ID of the shipment.", + "type": "string" + }, + "trackingId": { + "description": "The tracking id for the shipment.", + "type": "string" + } + }, + "type": "object" + }, + "OrdersCustomBatchRequestEntryUpdateLineItemShippingDetails": { + "id": "OrdersCustomBatchRequestEntryUpdateLineItemShippingDetails", + "properties": { + "deliverByDate": { + "description": "Updated delivery by date, in ISO 8601 format. If not specified only ship by date is updated.", + "type": "string" + }, + "lineItemId": { + "description": "The ID of the line item to set metadata. Either lineItemId or productId is required.", + "type": "string" + }, + "productId": { + "description": "The ID of the product to set metadata. This is the REST ID used in the products service. Either lineItemId or productId is required.", + "type": "string" + }, + "shipByDate": { + "description": "Updated ship by date, in ISO 8601 format. If not specified only deliver by date is updated.", + "type": "string" + } + }, + "type": "object" + }, + "OrdersCustomBatchRequestEntryUpdateShipment": { + "id": "OrdersCustomBatchRequestEntryUpdateShipment", + "properties": { + "carrier": { + "description": "The carrier handling the shipment. Not updated if missing. See shipments[].carrier in the Orders resource representation for a list of acceptable values.", + "type": "string" + }, + "shipmentId": { + "description": "The ID of the shipment.", + "type": "string" + }, + "status": { + "description": "New status for the shipment. Not updated if missing.", + "type": "string" + }, + "trackingId": { + "description": "The tracking id for the shipment. Not updated if missing.", + "type": "string" + } + }, + "type": "object" + }, + "OrdersCustomBatchResponse": { + "id": "OrdersCustomBatchResponse", + "properties": { + "entries": { + "description": "The result of the execution of the batch requests.", + "items": { + "$ref": "OrdersCustomBatchResponseEntry" + }, + "type": "array" + }, + "kind": { + "default": "content#ordersCustomBatchResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"content#ordersCustomBatchResponse\".", + "type": "string" + } + }, + "type": "object" + }, + "OrdersCustomBatchResponseEntry": { + "id": "OrdersCustomBatchResponseEntry", + "properties": { + "batchId": { + "description": "The ID of the request entry this entry responds to.", + "format": "uint32", + "type": "integer" + }, + "errors": { + "$ref": "Errors", + "description": "A list of errors defined if and only if the request failed." + }, + "executionStatus": { + "description": "The status of the execution. Only defined if the method is not get or getByMerchantOrderId and if the request was successful.", + "type": "string" + }, + "kind": { + "default": "content#ordersCustomBatchResponseEntry", + "description": "Identifies what kind of resource this is. Value: the fixed string \"content#ordersCustomBatchResponseEntry\".", + "type": "string" + }, + "order": { + "$ref": "Order", + "description": "The retrieved order. Only defined if the method is get and if the request was successful." + } + }, + "type": "object" + }, + "OrdersGetByMerchantOrderIdResponse": { + "id": "OrdersGetByMerchantOrderIdResponse", + "properties": { + "kind": { + "default": "content#ordersGetByMerchantOrderIdResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"content#ordersGetByMerchantOrderIdResponse\".", + "type": "string" + }, + "order": { + "$ref": "Order", + "description": "The requested order." + } + }, + "type": "object" + }, + "OrdersGetTestOrderTemplateResponse": { + "id": "OrdersGetTestOrderTemplateResponse", + "properties": { + "kind": { + "default": "content#ordersGetTestOrderTemplateResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"content#ordersGetTestOrderTemplateResponse\".", + "type": "string" + }, + "template": { + "$ref": "TestOrder", + "description": "The requested test order template." + } + }, + "type": "object" + }, + "OrdersInStoreRefundLineItemRequest": { + "id": "OrdersInStoreRefundLineItemRequest", + "properties": { + "amountPretax": { + "$ref": "Price", + "description": "The amount that is refunded. Required." + }, + "amountTax": { + "$ref": "Price", + "description": "Tax amount that correspond to refund amount in amountPretax. Required." + }, + "lineItemId": { + "description": "The ID of the line item to return. Either lineItemId or productId is required.", + "type": "string" + }, + "operationId": { + "description": "The ID of the operation. Unique across all operations for a given order.", + "type": "string" + }, + "productId": { + "description": "The ID of the product to return. This is the REST ID used in the products service. Either lineItemId or productId is required.", + "type": "string" + }, + "quantity": { + "description": "The quantity to return and refund.", + "format": "uint32", + "type": "integer" + }, + "reason": { + "description": "The reason for the return.", + "type": "string" + }, + "reasonText": { + "description": "The explanation of the reason.", + "type": "string" + } + }, + "type": "object" + }, + "OrdersInStoreRefundLineItemResponse": { + "id": "OrdersInStoreRefundLineItemResponse", + "properties": { + "executionStatus": { + "description": "The status of the execution.", + "type": "string" + }, + "kind": { + "default": "content#ordersInStoreRefundLineItemResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"content#ordersInStoreRefundLineItemResponse\".", + "type": "string" + } + }, + "type": "object" + }, + "OrdersListResponse": { + "id": "OrdersListResponse", + "properties": { + "kind": { + "default": "content#ordersListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"content#ordersListResponse\".", + "type": "string" + }, + "nextPageToken": { + "description": "The token for the retrieval of the next page of orders.", + "type": "string" + }, + "resources": { + "items": { + "$ref": "Order" + }, + "type": "array" + } + }, + "type": "object" + }, + "OrdersRefundRequest": { + "id": "OrdersRefundRequest", + "properties": { + "amount": { + "$ref": "Price", + "description": "The amount that is refunded." + }, + "amountPretax": { + "$ref": "Price", + "description": "The amount that is refunded. Either amount or amountPretax and amountTax should be filled." + }, + "amountTax": { + "$ref": "Price", + "description": "Tax amount that correspond to refund amount in amountPretax." + }, + "operationId": { + "description": "The ID of the operation. Unique across all operations for a given order.", + "type": "string" + }, + "reason": { + "description": "The reason for the refund.", + "type": "string" + }, + "reasonText": { + "description": "The explanation of the reason.", + "type": "string" + } + }, + "type": "object" + }, + "OrdersRefundResponse": { + "id": "OrdersRefundResponse", + "properties": { + "executionStatus": { + "description": "The status of the execution.", + "type": "string" + }, + "kind": { + "default": "content#ordersRefundResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"content#ordersRefundResponse\".", + "type": "string" + } + }, + "type": "object" + }, + "OrdersRejectReturnLineItemRequest": { + "id": "OrdersRejectReturnLineItemRequest", + "properties": { + "lineItemId": { + "description": "The ID of the line item to return. Either lineItemId or productId is required.", + "type": "string" + }, + "operationId": { + "description": "The ID of the operation. Unique across all operations for a given order.", + "type": "string" + }, + "productId": { + "description": "The ID of the product to return. This is the REST ID used in the products service. Either lineItemId or productId is required.", + "type": "string" + }, + "quantity": { + "description": "The quantity to return and refund.", + "format": "uint32", + "type": "integer" + }, + "reason": { + "description": "The reason for the return.", + "type": "string" + }, + "reasonText": { + "description": "The explanation of the reason.", + "type": "string" + } + }, + "type": "object" + }, + "OrdersRejectReturnLineItemResponse": { + "id": "OrdersRejectReturnLineItemResponse", + "properties": { + "executionStatus": { + "description": "The status of the execution.", + "type": "string" + }, + "kind": { + "default": "content#ordersRejectReturnLineItemResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"content#ordersRejectReturnLineItemResponse\".", + "type": "string" + } + }, + "type": "object" + }, + "OrdersReturnLineItemRequest": { + "id": "OrdersReturnLineItemRequest", + "properties": { + "lineItemId": { + "description": "The ID of the line item to return. Either lineItemId or productId is required.", + "type": "string" + }, + "operationId": { + "description": "The ID of the operation. Unique across all operations for a given order.", + "type": "string" + }, + "productId": { + "description": "The ID of the product to return. This is the REST ID used in the products service. Either lineItemId or productId is required.", + "type": "string" + }, + "quantity": { + "description": "The quantity to return.", + "format": "uint32", + "type": "integer" + }, + "reason": { + "description": "The reason for the return.", + "type": "string" + }, + "reasonText": { + "description": "The explanation of the reason.", + "type": "string" + } + }, + "type": "object" + }, + "OrdersReturnLineItemResponse": { + "id": "OrdersReturnLineItemResponse", + "properties": { + "executionStatus": { + "description": "The status of the execution.", + "type": "string" + }, + "kind": { + "default": "content#ordersReturnLineItemResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"content#ordersReturnLineItemResponse\".", + "type": "string" + } + }, + "type": "object" + }, + "OrdersReturnRefundLineItemRequest": { + "id": "OrdersReturnRefundLineItemRequest", + "properties": { + "amountPretax": { + "$ref": "Price", + "description": "The amount that is refunded. Optional, but if filled then both amountPretax and amountTax must be set." + }, + "amountTax": { + "$ref": "Price", + "description": "Tax amount that correspond to refund amount in amountPretax." + }, + "lineItemId": { + "description": "The ID of the line item to return. Either lineItemId or productId is required.", + "type": "string" + }, + "operationId": { + "description": "The ID of the operation. Unique across all operations for a given order.", + "type": "string" + }, + "productId": { + "description": "The ID of the product to return. This is the REST ID used in the products service. Either lineItemId or productId is required.", + "type": "string" + }, + "quantity": { + "description": "The quantity to return and refund.", + "format": "uint32", + "type": "integer" + }, + "reason": { + "description": "The reason for the return.", + "type": "string" + }, + "reasonText": { + "description": "The explanation of the reason.", + "type": "string" + } + }, + "type": "object" + }, + "OrdersReturnRefundLineItemResponse": { + "id": "OrdersReturnRefundLineItemResponse", + "properties": { + "executionStatus": { + "description": "The status of the execution.", + "type": "string" + }, + "kind": { + "default": "content#ordersReturnRefundLineItemResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"content#ordersReturnRefundLineItemResponse\".", + "type": "string" + } + }, + "type": "object" + }, + "OrdersSetLineItemMetadataRequest": { + "id": "OrdersSetLineItemMetadataRequest", + "properties": { + "annotations": { + "items": { + "$ref": "OrderMerchantProvidedAnnotation" + }, + "type": "array" + }, + "lineItemId": { + "description": "The ID of the line item to set metadata. Either lineItemId or productId is required.", + "type": "string" + }, + "operationId": { + "description": "The ID of the operation. Unique across all operations for a given order.", + "type": "string" + }, + "productId": { + "description": "The ID of the product to set metadata. This is the REST ID used in the products service. Either lineItemId or productId is required.", + "type": "string" + } + }, + "type": "object" + }, + "OrdersSetLineItemMetadataResponse": { + "id": "OrdersSetLineItemMetadataResponse", + "properties": { + "executionStatus": { + "description": "The status of the execution.", + "type": "string" + }, + "kind": { + "default": "content#ordersSetLineItemMetadataResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"content#ordersSetLineItemMetadataResponse\".", + "type": "string" + } + }, + "type": "object" + }, + "OrdersShipLineItemsRequest": { + "id": "OrdersShipLineItemsRequest", + "properties": { + "carrier": { + "description": "Deprecated. Please use shipmentInfo instead. The carrier handling the shipment. See shipments[].carrier in the Orders resource representation for a list of acceptable values.", + "type": "string" + }, + "lineItems": { + "description": "Line items to ship.", + "items": { + "$ref": "OrderShipmentLineItemShipment" + }, + "type": "array" + }, + "operationId": { + "description": "The ID of the operation. Unique across all operations for a given order.", + "type": "string" + }, + "shipmentId": { + "description": "Deprecated. Please use shipmentInfo instead. The ID of the shipment.", + "type": "string" + }, + "shipmentInfos": { + "description": "Shipment information. This field is repeated because a single line item can be shipped in several packages (and have several tracking IDs).", + "items": { + "$ref": "OrdersCustomBatchRequestEntryShipLineItemsShipmentInfo" + }, + "type": "array" + }, + "trackingId": { + "description": "Deprecated. Please use shipmentInfo instead. The tracking id for the shipment.", + "type": "string" + } + }, + "type": "object" + }, + "OrdersShipLineItemsResponse": { + "id": "OrdersShipLineItemsResponse", + "properties": { + "executionStatus": { + "description": "The status of the execution.", + "type": "string" + }, + "kind": { + "default": "content#ordersShipLineItemsResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"content#ordersShipLineItemsResponse\".", + "type": "string" + } + }, + "type": "object" + }, + "OrdersUpdateLineItemShippingDetailsRequest": { + "id": "OrdersUpdateLineItemShippingDetailsRequest", + "properties": { + "deliverByDate": { + "description": "Updated delivery by date, in ISO 8601 format. If not specified only ship by date is updated.", + "type": "string" + }, + "lineItemId": { + "description": "The ID of the line item to set metadata. Either lineItemId or productId is required.", + "type": "string" + }, + "operationId": { + "description": "The ID of the operation. Unique across all operations for a given order.", + "type": "string" + }, + "productId": { + "description": "The ID of the product to set metadata. This is the REST ID used in the products service. Either lineItemId or productId is required.", + "type": "string" + }, + "shipByDate": { + "description": "Updated ship by date, in ISO 8601 format. If not specified only deliver by date is updated.", + "type": "string" + } + }, + "type": "object" + }, + "OrdersUpdateLineItemShippingDetailsResponse": { + "id": "OrdersUpdateLineItemShippingDetailsResponse", + "properties": { + "executionStatus": { + "description": "The status of the execution.", + "type": "string" + }, + "kind": { + "default": "content#ordersUpdateLineItemShippingDetailsResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"content#ordersUpdateLineItemShippingDetailsResponse\".", + "type": "string" + } + }, + "type": "object" + }, + "OrdersUpdateMerchantOrderIdRequest": { + "id": "OrdersUpdateMerchantOrderIdRequest", + "properties": { + "merchantOrderId": { + "description": "The merchant order id to be assigned to the order. Must be unique per merchant.", + "type": "string" + }, + "operationId": { + "description": "The ID of the operation. Unique across all operations for a given order.", + "type": "string" + } + }, + "type": "object" + }, + "OrdersUpdateMerchantOrderIdResponse": { + "id": "OrdersUpdateMerchantOrderIdResponse", + "properties": { + "executionStatus": { + "description": "The status of the execution.", + "type": "string" + }, + "kind": { + "default": "content#ordersUpdateMerchantOrderIdResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"content#ordersUpdateMerchantOrderIdResponse\".", + "type": "string" + } + }, + "type": "object" + }, + "OrdersUpdateShipmentRequest": { + "id": "OrdersUpdateShipmentRequest", + "properties": { + "carrier": { + "description": "The carrier handling the shipment. Not updated if missing. See shipments[].carrier in the Orders resource representation for a list of acceptable values.", + "type": "string" + }, + "operationId": { + "description": "The ID of the operation. Unique across all operations for a given order.", + "type": "string" + }, + "shipmentId": { + "description": "The ID of the shipment.", + "type": "string" + }, + "status": { + "description": "New status for the shipment. Not updated if missing.", + "type": "string" + }, + "trackingId": { + "description": "The tracking id for the shipment. Not updated if missing.", + "type": "string" + } + }, + "type": "object" + }, + "OrdersUpdateShipmentResponse": { + "id": "OrdersUpdateShipmentResponse", + "properties": { + "executionStatus": { + "description": "The status of the execution.", + "type": "string" + }, + "kind": { + "default": "content#ordersUpdateShipmentResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"content#ordersUpdateShipmentResponse\".", + "type": "string" + } + }, + "type": "object" + }, + "Price": { + "id": "Price", + "properties": { + "currency": { + "description": "The currency of the price.", + "type": "string" + }, + "value": { + "description": "The price represented as a number.", + "type": "string" + } + }, + "type": "object" + }, + "TestOrder": { + "id": "TestOrder", + "properties": { + "customer": { + "$ref": "TestOrderCustomer", + "annotations": { + "required": [ + "content.orders.createtestorder" + ] + }, + "description": "The details of the customer who placed the order." + }, + "kind": { + "default": "content#testOrder", + "description": "Identifies what kind of resource this is. Value: the fixed string \"content#testOrder\".", + "type": "string" + }, + "lineItems": { + "annotations": { + "required": [ + "content.orders.createtestorder" + ] + }, + "description": "Line items that are ordered. At least one line item must be provided.", + "items": { + "$ref": "TestOrderLineItem" + }, + "type": "array" + }, + "notificationMode": { + "description": "Determines if test order must be pulled by merchant or pushed to merchant via push integration.", + "type": "string" + }, + "paymentMethod": { + "$ref": "TestOrderPaymentMethod", + "description": "The details of the payment method." + }, + "predefinedDeliveryAddress": { + "annotations": { + "required": [ + "content.orders.createtestorder" + ] + }, + "description": "Identifier of one of the predefined delivery addresses for the delivery.", + "type": "string" + }, + "promotions": { + "description": "The details of the merchant provided promotions applied to the order. More details about the program are here.", + "items": { + "$ref": "OrderPromotion" + }, + "type": "array" + }, + "shippingCost": { + "$ref": "Price", + "annotations": { + "required": [ + "content.orders.createtestorder" + ] + }, + "description": "The total cost of shipping for all items." + }, + "shippingCostTax": { + "$ref": "Price", + "annotations": { + "required": [ + "content.orders.createtestorder" + ] + }, + "description": "The tax for the total shipping cost." + }, + "shippingOption": { + "annotations": { + "required": [ + "content.orders.createtestorder" + ] + }, + "description": "The requested shipping option.", + "type": "string" + } + }, + "type": "object" + }, + "TestOrderCustomer": { + "id": "TestOrderCustomer", + "properties": { + "email": { + "annotations": { + "required": [ + "content.orders.createtestorder" + ] + }, + "description": "Email address of the customer.", + "type": "string" + }, + "explicitMarketingPreference": { + "description": "If set, this indicates the user explicitly chose to opt in or out of providing marketing rights to the merchant. If unset, this indicates the user has already made this choice in a previous purchase, and was thus not shown the marketing right opt in/out checkbox during the checkout flow. Optional.", + "type": "boolean" + }, + "fullName": { + "description": "Full name of the customer.", + "type": "string" + } + }, + "type": "object" + }, + "TestOrderLineItem": { + "id": "TestOrderLineItem", + "properties": { + "product": { + "$ref": "TestOrderLineItemProduct", + "description": "Product data from the time of the order placement." + }, + "quantityOrdered": { + "annotations": { + "required": [ + "content.orders.createtestorder" + ] + }, + "description": "Number of items ordered.", + "format": "uint32", + "type": "integer" + }, + "returnInfo": { + "$ref": "OrderLineItemReturnInfo", + "annotations": { + "required": [ + "content.orders.createtestorder" + ] + }, + "description": "Details of the return policy for the line item." + }, + "shippingDetails": { + "$ref": "OrderLineItemShippingDetails", + "annotations": { + "required": [ + "content.orders.createtestorder" + ] + }, + "description": "Details of the requested shipping for the line item." + }, + "unitTax": { + "$ref": "Price", + "annotations": { + "required": [ + "content.orders.createtestorder" + ] + }, + "description": "Unit tax for the line item." + } + }, + "type": "object" + }, + "TestOrderLineItemProduct": { + "id": "TestOrderLineItemProduct", + "properties": { + "brand": { + "annotations": { + "required": [ + "content.orders.createtestorder" + ] + }, + "description": "Brand of the item.", + "type": "string" + }, + "channel": { + "annotations": { + "required": [ + "content.orders.createtestorder" + ] + }, + "description": "The item's channel.", + "type": "string" + }, + "condition": { + "annotations": { + "required": [ + "content.orders.createtestorder" + ] + }, + "description": "Condition or state of the item.", + "type": "string" + }, + "contentLanguage": { + "annotations": { + "required": [ + "content.orders.createtestorder" + ] + }, + "description": "The two-letter ISO 639-1 language code for the item.", + "type": "string" + }, + "gtin": { + "description": "Global Trade Item Number (GTIN) of the item. Optional.", + "type": "string" + }, + "imageLink": { + "annotations": { + "required": [ + "content.orders.createtestorder" + ] + }, + "description": "URL of an image of the item.", + "type": "string" + }, + "itemGroupId": { + "description": "Shared identifier for all variants of the same product. Optional.", + "type": "string" + }, + "mpn": { + "description": "Manufacturer Part Number (MPN) of the item. Optional.", + "type": "string" + }, + "offerId": { + "annotations": { + "required": [ + "content.orders.createtestorder" + ] + }, + "description": "An identifier of the item.", + "type": "string" + }, + "price": { + "$ref": "Price", + "annotations": { + "required": [ + "content.orders.createtestorder" + ] + }, + "description": "The price for the product." + }, + "targetCountry": { + "annotations": { + "required": [ + "content.orders.createtestorder" + ] + }, + "description": "The CLDR territory code of the target country of the product.", + "type": "string" + }, + "title": { + "annotations": { + "required": [ + "content.orders.createtestorder" + ] + }, + "description": "The title of the product.", + "type": "string" + }, + "variantAttributes": { + "description": "Variant attributes for the item. Optional.", + "items": { + "$ref": "OrderLineItemProductVariantAttribute" + }, + "type": "array" + } + }, + "type": "object" + }, + "TestOrderPaymentMethod": { + "id": "TestOrderPaymentMethod", + "properties": { + "expirationMonth": { + "description": "The card expiration month (January = 1, February = 2 etc.).", + "format": "int32", + "type": "integer" + }, + "expirationYear": { + "description": "The card expiration year (4-digit, e.g. 2015).", + "format": "int32", + "type": "integer" + }, + "lastFourDigits": { + "description": "The last four digits of the card number.", + "type": "string" + }, + "predefinedBillingAddress": { + "description": "The billing address.", + "type": "string" + }, + "type": { + "description": "The type of instrument. Note that real orders might have different values than the four values accepted by createTestOrder.", + "type": "string" + } + }, + "type": "object" + } + }, + "servicePath": "content/v2sandbox/", + "title": "Content API for Shopping", + "version": "v2sandbox" +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/content/v2sandbox/content-gen.go b/vendor/google.golang.org/api/content/v2sandbox/content-gen.go index c99cdda8c..db59b247a 100644 --- a/vendor/google.golang.org/api/content/v2sandbox/content-gen.go +++ b/vendor/google.golang.org/api/content/v2sandbox/content-gen.go @@ -343,7 +343,9 @@ func (s *OrderCancellation) MarshalJSON() ([]byte, error) { } type OrderCustomer struct { - // Email: Email address of the customer. + // Email: Email address that should be used for order related + // communications. In certain cases this might not be a real users + // email, but a proxy email. Email string `json:"email,omitempty"` // ExplicitMarketingPreference: If set, this indicates the user diff --git a/vendor/google.golang.org/api/customsearch/v1/customsearch-api.json b/vendor/google.golang.org/api/customsearch/v1/customsearch-api.json index 30705c2be..fd3341adc 100644 --- a/vendor/google.golang.org/api/customsearch/v1/customsearch-api.json +++ b/vendor/google.golang.org/api/customsearch/v1/customsearch-api.json @@ -1,806 +1,1158 @@ { - "kind": "discovery#restDescription", - "etag": "\"YWOzh2SDasdU84ArJnpYek-OMdg/vjsLOntBAplI6gHuETouIyrKBJI\"", - "discoveryVersion": "v1", - "id": "customsearch:v1", - "name": "customsearch", - "version": "v1", - "revision": "20170615", - "title": "CustomSearch API", - "description": "Searches over a website or collection of websites", - "ownerDomain": "google.com", - "ownerName": "Google", - "icons": { - "x16": "https://www.gstatic.com/images/branding/product/1x/googleg_16dp.png", - "x32": "https://www.gstatic.com/images/branding/product/1x/googleg_32dp.png" - }, - "documentationLink": "https://developers.google.com/custom-search/v1/using_rest", - "protocol": "rest", - "baseUrl": "https://www.googleapis.com/customsearch/", - "basePath": "/customsearch/", - "rootUrl": "https://www.googleapis.com/", - "servicePath": "customsearch/", - "batchPath": "batch/customsearch/v1", - "parameters": { - "alt": { - "type": "string", - "description": "Data format for the response.", - "default": "json", - "enum": [ - "atom", - "json" - ], - "enumDescriptions": [ - "Responses with Content-Type of application/atom+xml", - "Responses with Content-Type of application/json" - ], - "location": "query" + "basePath": "/customsearch/", + "baseUrl": "https://www.googleapis.com/customsearch/", + "batchPath": "batch/customsearch/v1", + "description": "Searches over a website or collection of websites", + "discoveryVersion": "v1", + "documentationLink": "https://developers.google.com/custom-search/v1/using_rest", + "etag": "\"-iA1DTNe4s-I6JZXPt1t1Ypy8IU/WZw06ascIaWh_DLEVTvERCFA66s\"", + "icons": { + "x16": "https://www.gstatic.com/images/branding/product/1x/googleg_16dp.png", + "x32": "https://www.gstatic.com/images/branding/product/1x/googleg_32dp.png" }, - "fields": { - "type": "string", - "description": "Selector specifying which fields to include in a partial response.", - "location": "query" + "id": "customsearch:v1", + "kind": "discovery#restDescription", + "name": "customsearch", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "alt": { + "default": "json", + "description": "Data format for the response.", + "enum": [ + "atom", + "json" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/atom+xml", + "Responses with Content-Type of application/json" + ], + "location": "query", + "type": "string" + }, + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "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.", + "location": "query", + "type": "string" + }, + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", + "location": "query", + "type": "string" + }, + "userIp": { + "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", + "location": "query", + "type": "string" + } }, - "key": { - "type": "string", - "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" - }, - "oauth_token": { - "type": "string", - "description": "OAuth 2.0 token for the current user.", - "location": "query" - }, - "prettyPrint": { - "type": "boolean", - "description": "Returns response with indentations and line breaks.", - "default": "true", - "location": "query" - }, - "quotaUser": { - "type": "string", - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", - "location": "query" - }, - "userIp": { - "type": "string", - "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", - "location": "query" - } - }, - "schemas": { - "Context": { - "id": "Context", - "type": "object", - "properties": { - "facets": { - "type": "array", - "items": { - "type": "array", - "items": { - "type": "object", - "properties": { - "anchor": { - "type": "string" - }, - "label": { - "type": "string" - }, - "label_with_op": { - "type": "string" + "protocol": "rest", + "resources": { + "cse": { + "methods": { + "list": { + "description": "Returns metadata about the search performed, metadata about the custom search engine used for the search, and the search results.", + "httpMethod": "GET", + "id": "search.cse.list", + "parameterOrder": [ + "q" + ], + "parameters": { + "c2coff": { + "description": "Turns off the translation between zh-CN and zh-TW.", + "location": "query", + "type": "string" + }, + "cr": { + "description": "Country restrict(s).", + "location": "query", + "type": "string" + }, + "cx": { + "description": "The custom search engine ID to scope this search query", + "location": "query", + "type": "string" + }, + "dateRestrict": { + "description": "Specifies all search results are from a time period", + "location": "query", + "type": "string" + }, + "exactTerms": { + "description": "Identifies a phrase that all documents in the search results must contain", + "location": "query", + "type": "string" + }, + "excludeTerms": { + "description": "Identifies a word or phrase that should not appear in any documents in the search results", + "location": "query", + "type": "string" + }, + "fileType": { + "description": "Returns images of a specified type. Some of the allowed values are: bmp, gif, png, jpg, svg, pdf, ...", + "location": "query", + "type": "string" + }, + "filter": { + "description": "Controls turning on or off the duplicate content filter.", + "enum": [ + "0", + "1" + ], + "enumDescriptions": [ + "Turns off duplicate content filter.", + "Turns on duplicate content filter." + ], + "location": "query", + "type": "string" + }, + "gl": { + "description": "Geolocation of end user.", + "location": "query", + "type": "string" + }, + "googlehost": { + "description": "The local Google domain to use to perform the search.", + "location": "query", + "type": "string" + }, + "highRange": { + "description": "Creates a range in form as_nlo value..as_nhi value and attempts to append it to query", + "location": "query", + "type": "string" + }, + "hl": { + "description": "Sets the user interface language.", + "location": "query", + "type": "string" + }, + "hq": { + "description": "Appends the extra query terms to the query.", + "location": "query", + "type": "string" + }, + "imgColorType": { + "description": "Returns black and white, grayscale, or color images: mono, gray, and color.", + "enum": [ + "color", + "gray", + "mono" + ], + "enumDescriptions": [ + "color", + "gray", + "mono" + ], + "location": "query", + "type": "string" + }, + "imgDominantColor": { + "description": "Returns images of a specific dominant color: yellow, green, teal, blue, purple, pink, white, gray, black and brown.", + "enum": [ + "black", + "blue", + "brown", + "gray", + "green", + "pink", + "purple", + "teal", + "white", + "yellow" + ], + "enumDescriptions": [ + "black", + "blue", + "brown", + "gray", + "green", + "pink", + "purple", + "teal", + "white", + "yellow" + ], + "location": "query", + "type": "string" + }, + "imgSize": { + "description": "Returns images of a specified size, where size can be one of: icon, small, medium, large, xlarge, xxlarge, and huge.", + "enum": [ + "huge", + "icon", + "large", + "medium", + "small", + "xlarge", + "xxlarge" + ], + "enumDescriptions": [ + "huge", + "icon", + "large", + "medium", + "small", + "xlarge", + "xxlarge" + ], + "location": "query", + "type": "string" + }, + "imgType": { + "description": "Returns images of a type, which can be one of: clipart, face, lineart, news, and photo.", + "enum": [ + "clipart", + "face", + "lineart", + "news", + "photo" + ], + "enumDescriptions": [ + "clipart", + "face", + "lineart", + "news", + "photo" + ], + "location": "query", + "type": "string" + }, + "linkSite": { + "description": "Specifies that all search results should contain a link to a particular URL", + "location": "query", + "type": "string" + }, + "lowRange": { + "description": "Creates a range in form as_nlo value..as_nhi value and attempts to append it to query", + "location": "query", + "type": "string" + }, + "lr": { + "description": "The language restriction for the search results", + "enum": [ + "lang_ar", + "lang_bg", + "lang_ca", + "lang_cs", + "lang_da", + "lang_de", + "lang_el", + "lang_en", + "lang_es", + "lang_et", + "lang_fi", + "lang_fr", + "lang_hr", + "lang_hu", + "lang_id", + "lang_is", + "lang_it", + "lang_iw", + "lang_ja", + "lang_ko", + "lang_lt", + "lang_lv", + "lang_nl", + "lang_no", + "lang_pl", + "lang_pt", + "lang_ro", + "lang_ru", + "lang_sk", + "lang_sl", + "lang_sr", + "lang_sv", + "lang_tr", + "lang_zh-CN", + "lang_zh-TW" + ], + "enumDescriptions": [ + "Arabic", + "Bulgarian", + "Catalan", + "Czech", + "Danish", + "German", + "Greek", + "English", + "Spanish", + "Estonian", + "Finnish", + "French", + "Croatian", + "Hungarian", + "Indonesian", + "Icelandic", + "Italian", + "Hebrew", + "Japanese", + "Korean", + "Lithuanian", + "Latvian", + "Dutch", + "Norwegian", + "Polish", + "Portuguese", + "Romanian", + "Russian", + "Slovak", + "Slovenian", + "Serbian", + "Swedish", + "Turkish", + "Chinese (Simplified)", + "Chinese (Traditional)" + ], + "location": "query", + "type": "string" + }, + "num": { + "default": "10", + "description": "Number of search results to return", + "format": "uint32", + "location": "query", + "type": "integer" + }, + "orTerms": { + "description": "Provides additional search terms to check for in a document, where each document in the search results must contain at least one of the additional search terms", + "location": "query", + "type": "string" + }, + "q": { + "description": "Query", + "location": "query", + "required": true, + "type": "string" + }, + "relatedSite": { + "description": "Specifies that all search results should be pages that are related to the specified URL", + "location": "query", + "type": "string" + }, + "rights": { + "description": "Filters based on licensing. Supported values include: cc_publicdomain, cc_attribute, cc_sharealike, cc_noncommercial, cc_nonderived and combinations of these.", + "location": "query", + "type": "string" + }, + "safe": { + "default": "off", + "description": "Search safety level", + "enum": [ + "high", + "medium", + "off" + ], + "enumDescriptions": [ + "Enables highest level of safe search filtering.", + "Enables moderate safe search filtering.", + "Disables safe search filtering." + ], + "location": "query", + "type": "string" + }, + "searchType": { + "description": "Specifies the search type: image.", + "enum": [ + "image" + ], + "enumDescriptions": [ + "custom image search" + ], + "location": "query", + "type": "string" + }, + "siteSearch": { + "description": "Specifies all search results should be pages from a given site", + "location": "query", + "type": "string" + }, + "siteSearchFilter": { + "description": "Controls whether to include or exclude results from the site named in the as_sitesearch parameter", + "enum": [ + "e", + "i" + ], + "enumDescriptions": [ + "exclude", + "include" + ], + "location": "query", + "type": "string" + }, + "sort": { + "description": "The sort expression to apply to the results", + "location": "query", + "type": "string" + }, + "start": { + "description": "The index of the first result to return", + "format": "uint32", + "location": "query", + "type": "integer" + } + }, + "path": "v1", + "response": { + "$ref": "Search" + } + } + }, + "resources": { + "siterestrict": { + "methods": { + "list": { + "description": "(Closed Beta API) Returns metadata about the search performed, metadata about the custom search engine used for the search, and the search results only for site-restrict cses.", + "httpMethod": "GET", + "id": "search.cse.siterestrict.list", + "parameterOrder": [ + "q" + ], + "parameters": { + "c2coff": { + "description": "Turns off the translation between zh-CN and zh-TW.", + "location": "query", + "type": "string" + }, + "cr": { + "description": "Country restrict(s).", + "location": "query", + "type": "string" + }, + "cx": { + "description": "The custom search engine ID to scope this search query", + "location": "query", + "type": "string" + }, + "dateRestrict": { + "description": "Specifies all search results are from a time period", + "location": "query", + "type": "string" + }, + "exactTerms": { + "description": "Identifies a phrase that all documents in the search results must contain", + "location": "query", + "type": "string" + }, + "excludeTerms": { + "description": "Identifies a word or phrase that should not appear in any documents in the search results", + "location": "query", + "type": "string" + }, + "fileType": { + "description": "Returns images of a specified type. Some of the allowed values are: bmp, gif, png, jpg, svg, pdf, ...", + "location": "query", + "type": "string" + }, + "filter": { + "description": "Controls turning on or off the duplicate content filter.", + "enum": [ + "0", + "1" + ], + "enumDescriptions": [ + "Turns off duplicate content filter.", + "Turns on duplicate content filter." + ], + "location": "query", + "type": "string" + }, + "gl": { + "description": "Geolocation of end user.", + "location": "query", + "type": "string" + }, + "googlehost": { + "description": "The local Google domain to use to perform the search.", + "location": "query", + "type": "string" + }, + "highRange": { + "description": "Creates a range in form as_nlo value..as_nhi value and attempts to append it to query", + "location": "query", + "type": "string" + }, + "hl": { + "description": "Sets the user interface language.", + "location": "query", + "type": "string" + }, + "hq": { + "description": "Appends the extra query terms to the query.", + "location": "query", + "type": "string" + }, + "imgColorType": { + "description": "Returns black and white, grayscale, or color images: mono, gray, and color.", + "enum": [ + "color", + "gray", + "mono" + ], + "enumDescriptions": [ + "color", + "gray", + "mono" + ], + "location": "query", + "type": "string" + }, + "imgDominantColor": { + "description": "Returns images of a specific dominant color: yellow, green, teal, blue, purple, pink, white, gray, black and brown.", + "enum": [ + "black", + "blue", + "brown", + "gray", + "green", + "pink", + "purple", + "teal", + "white", + "yellow" + ], + "enumDescriptions": [ + "black", + "blue", + "brown", + "gray", + "green", + "pink", + "purple", + "teal", + "white", + "yellow" + ], + "location": "query", + "type": "string" + }, + "imgSize": { + "description": "Returns images of a specified size, where size can be one of: icon, small, medium, large, xlarge, xxlarge, and huge.", + "enum": [ + "huge", + "icon", + "large", + "medium", + "small", + "xlarge", + "xxlarge" + ], + "enumDescriptions": [ + "huge", + "icon", + "large", + "medium", + "small", + "xlarge", + "xxlarge" + ], + "location": "query", + "type": "string" + }, + "imgType": { + "description": "Returns images of a type, which can be one of: clipart, face, lineart, news, and photo.", + "enum": [ + "clipart", + "face", + "lineart", + "news", + "photo" + ], + "enumDescriptions": [ + "clipart", + "face", + "lineart", + "news", + "photo" + ], + "location": "query", + "type": "string" + }, + "linkSite": { + "description": "Specifies that all search results should contain a link to a particular URL", + "location": "query", + "type": "string" + }, + "lowRange": { + "description": "Creates a range in form as_nlo value..as_nhi value and attempts to append it to query", + "location": "query", + "type": "string" + }, + "lr": { + "description": "The language restriction for the search results", + "enum": [ + "lang_ar", + "lang_bg", + "lang_ca", + "lang_cs", + "lang_da", + "lang_de", + "lang_el", + "lang_en", + "lang_es", + "lang_et", + "lang_fi", + "lang_fr", + "lang_hr", + "lang_hu", + "lang_id", + "lang_is", + "lang_it", + "lang_iw", + "lang_ja", + "lang_ko", + "lang_lt", + "lang_lv", + "lang_nl", + "lang_no", + "lang_pl", + "lang_pt", + "lang_ro", + "lang_ru", + "lang_sk", + "lang_sl", + "lang_sr", + "lang_sv", + "lang_tr", + "lang_zh-CN", + "lang_zh-TW" + ], + "enumDescriptions": [ + "Arabic", + "Bulgarian", + "Catalan", + "Czech", + "Danish", + "German", + "Greek", + "English", + "Spanish", + "Estonian", + "Finnish", + "French", + "Croatian", + "Hungarian", + "Indonesian", + "Icelandic", + "Italian", + "Hebrew", + "Japanese", + "Korean", + "Lithuanian", + "Latvian", + "Dutch", + "Norwegian", + "Polish", + "Portuguese", + "Romanian", + "Russian", + "Slovak", + "Slovenian", + "Serbian", + "Swedish", + "Turkish", + "Chinese (Simplified)", + "Chinese (Traditional)" + ], + "location": "query", + "type": "string" + }, + "num": { + "default": "10", + "description": "Number of search results to return", + "format": "uint32", + "location": "query", + "type": "integer" + }, + "orTerms": { + "description": "Provides additional search terms to check for in a document, where each document in the search results must contain at least one of the additional search terms", + "location": "query", + "type": "string" + }, + "q": { + "description": "Query", + "location": "query", + "required": true, + "type": "string" + }, + "relatedSite": { + "description": "Specifies that all search results should be pages that are related to the specified URL", + "location": "query", + "type": "string" + }, + "rights": { + "description": "Filters based on licensing. Supported values include: cc_publicdomain, cc_attribute, cc_sharealike, cc_noncommercial, cc_nonderived and combinations of these.", + "location": "query", + "type": "string" + }, + "safe": { + "default": "off", + "description": "Search safety level", + "enum": [ + "high", + "medium", + "off" + ], + "enumDescriptions": [ + "Enables highest level of safe search filtering.", + "Enables moderate safe search filtering.", + "Disables safe search filtering." + ], + "location": "query", + "type": "string" + }, + "searchType": { + "description": "Specifies the search type: image.", + "enum": [ + "image" + ], + "enumDescriptions": [ + "custom image search" + ], + "location": "query", + "type": "string" + }, + "siteSearch": { + "description": "Specifies all search results should be pages from a given site", + "location": "query", + "type": "string" + }, + "siteSearchFilter": { + "description": "Controls whether to include or exclude results from the site named in the as_sitesearch parameter", + "enum": [ + "e", + "i" + ], + "enumDescriptions": [ + "exclude", + "include" + ], + "location": "query", + "type": "string" + }, + "sort": { + "description": "The sort expression to apply to the results", + "location": "query", + "type": "string" + }, + "start": { + "description": "The index of the first result to return", + "format": "uint32", + "location": "query", + "type": "integer" + } + }, + "path": "v1/siterestrict", + "response": { + "$ref": "Search" + } + } + } } - } } - } - }, - "title": { - "type": "string" } - } }, - "Promotion": { - "id": "Promotion", - "type": "object", - "properties": { - "bodyLines": { - "type": "array", - "items": { - "type": "object", + "revision": "20180220", + "rootUrl": "https://www.googleapis.com/", + "schemas": { + "Context": { + "id": "Context", "properties": { - "htmlTitle": { - "type": "string" - }, - "link": { - "type": "string" - }, - "title": { - "type": "string" - }, - "url": { - "type": "string" - } - } - } - }, - "displayLink": { - "type": "string" - }, - "htmlTitle": { - "type": "string" - }, - "image": { - "type": "object", - "properties": { - "height": { - "type": "integer", - "format": "int32" + "facets": { + "items": { + "items": { + "properties": { + "anchor": { + "type": "string" + }, + "label": { + "type": "string" + }, + "label_with_op": { + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "type": "array" + }, + "title": { + "type": "string" + } }, - "source": { - "type": "string" - }, - "width": { - "type": "integer", - "format": "int32" - } - } + "type": "object" }, - "link": { - "type": "string" - }, - "title": { - "type": "string" - } - } - }, - "Query": { - "id": "Query", - "type": "object", - "properties": { - "count": { - "type": "integer", - "format": "int32" - }, - "cr": { - "type": "string" - }, - "cx": { - "type": "string" - }, - "dateRestrict": { - "type": "string" - }, - "disableCnTwTranslation": { - "type": "string" - }, - "exactTerms": { - "type": "string" - }, - "excludeTerms": { - "type": "string" - }, - "fileType": { - "type": "string" - }, - "filter": { - "type": "string" - }, - "gl": { - "type": "string" - }, - "googleHost": { - "type": "string" - }, - "highRange": { - "type": "string" - }, - "hl": { - "type": "string" - }, - "hq": { - "type": "string" - }, - "imgColorType": { - "type": "string" - }, - "imgDominantColor": { - "type": "string" - }, - "imgSize": { - "type": "string" - }, - "imgType": { - "type": "string" - }, - "inputEncoding": { - "type": "string" - }, - "language": { - "type": "string" - }, - "linkSite": { - "type": "string" - }, - "lowRange": { - "type": "string" - }, - "orTerms": { - "type": "string" - }, - "outputEncoding": { - "type": "string" - }, - "relatedSite": { - "type": "string" - }, - "rights": { - "type": "string" - }, - "safe": { - "type": "string" - }, - "searchTerms": { - "type": "string" - }, - "searchType": { - "type": "string" - }, - "siteSearch": { - "type": "string" - }, - "siteSearchFilter": { - "type": "string" - }, - "sort": { - "type": "string" - }, - "startIndex": { - "type": "integer", - "format": "int32" - }, - "startPage": { - "type": "integer", - "format": "int32" - }, - "title": { - "type": "string" - }, - "totalResults": { - "type": "string", - "format": "int64" - } - } - }, - "Result": { - "id": "Result", - "type": "object", - "properties": { - "cacheId": { - "type": "string" - }, - "displayLink": { - "type": "string" - }, - "fileFormat": { - "type": "string" - }, - "formattedUrl": { - "type": "string" - }, - "htmlFormattedUrl": { - "type": "string" - }, - "htmlSnippet": { - "type": "string" - }, - "htmlTitle": { - "type": "string" - }, - "image": { - "type": "object", - "properties": { - "byteSize": { - "type": "integer", - "format": "int32" - }, - "contextLink": { - "type": "string" - }, - "height": { - "type": "integer", - "format": "int32" - }, - "thumbnailHeight": { - "type": "integer", - "format": "int32" - }, - "thumbnailLink": { - "type": "string" - }, - "thumbnailWidth": { - "type": "integer", - "format": "int32" - }, - "width": { - "type": "integer", - "format": "int32" - } - } - }, - "kind": { - "type": "string", - "default": "customsearch#result" - }, - "labels": { - "type": "array", - "items": { - "type": "object", + "Promotion": { + "id": "Promotion", "properties": { - "displayName": { - "type": "string" - }, - "label_with_op": { - "type": "string" - }, - "name": { - "type": "string" - } - } - } + "bodyLines": { + "items": { + "properties": { + "htmlTitle": { + "type": "string" + }, + "link": { + "type": "string" + }, + "title": { + "type": "string" + }, + "url": { + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "displayLink": { + "type": "string" + }, + "htmlTitle": { + "type": "string" + }, + "image": { + "properties": { + "height": { + "format": "int32", + "type": "integer" + }, + "source": { + "type": "string" + }, + "width": { + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "link": { + "type": "string" + }, + "title": { + "type": "string" + } + }, + "type": "object" }, - "link": { - "type": "string" + "Query": { + "id": "Query", + "properties": { + "count": { + "format": "int32", + "type": "integer" + }, + "cr": { + "type": "string" + }, + "cx": { + "type": "string" + }, + "dateRestrict": { + "type": "string" + }, + "disableCnTwTranslation": { + "type": "string" + }, + "exactTerms": { + "type": "string" + }, + "excludeTerms": { + "type": "string" + }, + "fileType": { + "type": "string" + }, + "filter": { + "type": "string" + }, + "gl": { + "type": "string" + }, + "googleHost": { + "type": "string" + }, + "highRange": { + "type": "string" + }, + "hl": { + "type": "string" + }, + "hq": { + "type": "string" + }, + "imgColorType": { + "type": "string" + }, + "imgDominantColor": { + "type": "string" + }, + "imgSize": { + "type": "string" + }, + "imgType": { + "type": "string" + }, + "inputEncoding": { + "type": "string" + }, + "language": { + "type": "string" + }, + "linkSite": { + "type": "string" + }, + "lowRange": { + "type": "string" + }, + "orTerms": { + "type": "string" + }, + "outputEncoding": { + "type": "string" + }, + "relatedSite": { + "type": "string" + }, + "rights": { + "type": "string" + }, + "safe": { + "type": "string" + }, + "searchTerms": { + "type": "string" + }, + "searchType": { + "type": "string" + }, + "siteSearch": { + "type": "string" + }, + "siteSearchFilter": { + "type": "string" + }, + "sort": { + "type": "string" + }, + "startIndex": { + "format": "int32", + "type": "integer" + }, + "startPage": { + "format": "int32", + "type": "integer" + }, + "title": { + "type": "string" + }, + "totalResults": { + "format": "int64", + "type": "string" + } + }, + "type": "object" }, - "mime": { - "type": "string" + "Result": { + "id": "Result", + "properties": { + "cacheId": { + "type": "string" + }, + "displayLink": { + "type": "string" + }, + "fileFormat": { + "type": "string" + }, + "formattedUrl": { + "type": "string" + }, + "htmlFormattedUrl": { + "type": "string" + }, + "htmlSnippet": { + "type": "string" + }, + "htmlTitle": { + "type": "string" + }, + "image": { + "properties": { + "byteSize": { + "format": "int32", + "type": "integer" + }, + "contextLink": { + "type": "string" + }, + "height": { + "format": "int32", + "type": "integer" + }, + "thumbnailHeight": { + "format": "int32", + "type": "integer" + }, + "thumbnailLink": { + "type": "string" + }, + "thumbnailWidth": { + "format": "int32", + "type": "integer" + }, + "width": { + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "kind": { + "default": "customsearch#result", + "type": "string" + }, + "labels": { + "items": { + "properties": { + "displayName": { + "type": "string" + }, + "label_with_op": { + "type": "string" + }, + "name": { + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "link": { + "type": "string" + }, + "mime": { + "type": "string" + }, + "pagemap": { + "additionalProperties": { + "items": { + "additionalProperties": { + "type": "any" + }, + "type": "object" + }, + "type": "array" + }, + "type": "object" + }, + "snippet": { + "type": "string" + }, + "title": { + "type": "string" + } + }, + "type": "object" }, - "pagemap": { - "type": "object", - "additionalProperties": { - "type": "array", - "items": { - "type": "object", - "additionalProperties": { - "type": "any" - } - } - } - }, - "snippet": { - "type": "string" - }, - "title": { - "type": "string" + "Search": { + "id": "Search", + "properties": { + "context": { + "$ref": "Context" + }, + "items": { + "items": { + "$ref": "Result" + }, + "type": "array" + }, + "kind": { + "default": "customsearch#search", + "type": "string" + }, + "promotions": { + "items": { + "$ref": "Promotion" + }, + "type": "array" + }, + "queries": { + "additionalProperties": { + "items": { + "$ref": "Query" + }, + "type": "array" + }, + "type": "object" + }, + "searchInformation": { + "properties": { + "formattedSearchTime": { + "type": "string" + }, + "formattedTotalResults": { + "type": "string" + }, + "searchTime": { + "format": "double", + "type": "number" + }, + "totalResults": { + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "spelling": { + "properties": { + "correctedQuery": { + "type": "string" + }, + "htmlCorrectedQuery": { + "type": "string" + } + }, + "type": "object" + }, + "url": { + "properties": { + "template": { + "default": "https://www.googleapis.com/customsearch/v1?q={searchTerms}\u0026num={count?}\u0026start={startIndex?}\u0026lr={language?}\u0026safe={safe?}\u0026cx={cx?}\u0026sort={sort?}\u0026filter={filter?}\u0026gl={gl?}\u0026cr={cr?}\u0026googlehost={googleHost?}\u0026c2coff={disableCnTwTranslation?}\u0026hq={hq?}\u0026hl={hl?}\u0026siteSearch={siteSearch?}\u0026siteSearchFilter={siteSearchFilter?}\u0026exactTerms={exactTerms?}\u0026excludeTerms={excludeTerms?}\u0026linkSite={linkSite?}\u0026orTerms={orTerms?}\u0026relatedSite={relatedSite?}\u0026dateRestrict={dateRestrict?}\u0026lowRange={lowRange?}\u0026highRange={highRange?}\u0026searchType={searchType}\u0026fileType={fileType?}\u0026rights={rights?}\u0026imgSize={imgSize?}\u0026imgType={imgType?}\u0026imgColorType={imgColorType?}\u0026imgDominantColor={imgDominantColor?}\u0026alt=json", + "type": "string" + }, + "type": { + "default": "application/json", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" } - } }, - "Search": { - "id": "Search", - "type": "object", - "properties": { - "context": { - "$ref": "Context" - }, - "items": { - "type": "array", - "items": { - "$ref": "Result" - } - }, - "kind": { - "type": "string", - "default": "customsearch#search" - }, - "promotions": { - "type": "array", - "items": { - "$ref": "Promotion" - } - }, - "queries": { - "type": "object", - "additionalProperties": { - "type": "array", - "items": { - "$ref": "Query" - } - } - }, - "searchInformation": { - "type": "object", - "properties": { - "formattedSearchTime": { - "type": "string" - }, - "formattedTotalResults": { - "type": "string" - }, - "searchTime": { - "type": "number", - "format": "double" - }, - "totalResults": { - "type": "string", - "format": "int64" - } - } - }, - "spelling": { - "type": "object", - "properties": { - "correctedQuery": { - "type": "string" - }, - "htmlCorrectedQuery": { - "type": "string" - } - } - }, - "url": { - "type": "object", - "properties": { - "template": { - "type": "string", - "default": "https://www.googleapis.com/customsearch/v1?q={searchTerms}&num={count?}&start={startIndex?}&lr={language?}&safe={safe?}&cx={cx?}&sort={sort?}&filter={filter?}&gl={gl?}&cr={cr?}&googlehost={googleHost?}&c2coff={disableCnTwTranslation?}&hq={hq?}&hl={hl?}&siteSearch={siteSearch?}&siteSearchFilter={siteSearchFilter?}&exactTerms={exactTerms?}&excludeTerms={excludeTerms?}&linkSite={linkSite?}&orTerms={orTerms?}&relatedSite={relatedSite?}&dateRestrict={dateRestrict?}&lowRange={lowRange?}&highRange={highRange?}&searchType={searchType}&fileType={fileType?}&rights={rights?}&imgSize={imgSize?}&imgType={imgType?}&imgColorType={imgColorType?}&imgDominantColor={imgDominantColor?}&alt=json" - }, - "type": { - "type": "string", - "default": "application/json" - } - } - } - } - } - }, - "resources": { - "cse": { - "methods": { - "list": { - "id": "search.cse.list", - "path": "v1", - "httpMethod": "GET", - "description": "Returns metadata about the search performed, metadata about the custom search engine used for the search, and the search results.", - "parameters": { - "c2coff": { - "type": "string", - "description": "Turns off the translation between zh-CN and zh-TW.", - "location": "query" - }, - "cr": { - "type": "string", - "description": "Country restrict(s).", - "location": "query" - }, - "cx": { - "type": "string", - "description": "The custom search engine ID to scope this search query", - "location": "query" - }, - "dateRestrict": { - "type": "string", - "description": "Specifies all search results are from a time period", - "location": "query" - }, - "exactTerms": { - "type": "string", - "description": "Identifies a phrase that all documents in the search results must contain", - "location": "query" - }, - "excludeTerms": { - "type": "string", - "description": "Identifies a word or phrase that should not appear in any documents in the search results", - "location": "query" - }, - "fileType": { - "type": "string", - "description": "Returns images of a specified type. Some of the allowed values are: bmp, gif, png, jpg, svg, pdf, ...", - "location": "query" - }, - "filter": { - "type": "string", - "description": "Controls turning on or off the duplicate content filter.", - "enum": [ - "0", - "1" - ], - "enumDescriptions": [ - "Turns off duplicate content filter.", - "Turns on duplicate content filter." - ], - "location": "query" - }, - "gl": { - "type": "string", - "description": "Geolocation of end user.", - "location": "query" - }, - "googlehost": { - "type": "string", - "description": "The local Google domain to use to perform the search.", - "location": "query" - }, - "highRange": { - "type": "string", - "description": "Creates a range in form as_nlo value..as_nhi value and attempts to append it to query", - "location": "query" - }, - "hl": { - "type": "string", - "description": "Sets the user interface language.", - "location": "query" - }, - "hq": { - "type": "string", - "description": "Appends the extra query terms to the query.", - "location": "query" - }, - "imgColorType": { - "type": "string", - "description": "Returns black and white, grayscale, or color images: mono, gray, and color.", - "enum": [ - "color", - "gray", - "mono" - ], - "enumDescriptions": [ - "color", - "gray", - "mono" - ], - "location": "query" - }, - "imgDominantColor": { - "type": "string", - "description": "Returns images of a specific dominant color: yellow, green, teal, blue, purple, pink, white, gray, black and brown.", - "enum": [ - "black", - "blue", - "brown", - "gray", - "green", - "pink", - "purple", - "teal", - "white", - "yellow" - ], - "enumDescriptions": [ - "black", - "blue", - "brown", - "gray", - "green", - "pink", - "purple", - "teal", - "white", - "yellow" - ], - "location": "query" - }, - "imgSize": { - "type": "string", - "description": "Returns images of a specified size, where size can be one of: icon, small, medium, large, xlarge, xxlarge, and huge.", - "enum": [ - "huge", - "icon", - "large", - "medium", - "small", - "xlarge", - "xxlarge" - ], - "enumDescriptions": [ - "huge", - "icon", - "large", - "medium", - "small", - "xlarge", - "xxlarge" - ], - "location": "query" - }, - "imgType": { - "type": "string", - "description": "Returns images of a type, which can be one of: clipart, face, lineart, news, and photo.", - "enum": [ - "clipart", - "face", - "lineart", - "news", - "photo" - ], - "enumDescriptions": [ - "clipart", - "face", - "lineart", - "news", - "photo" - ], - "location": "query" - }, - "linkSite": { - "type": "string", - "description": "Specifies that all search results should contain a link to a particular URL", - "location": "query" - }, - "lowRange": { - "type": "string", - "description": "Creates a range in form as_nlo value..as_nhi value and attempts to append it to query", - "location": "query" - }, - "lr": { - "type": "string", - "description": "The language restriction for the search results", - "enum": [ - "lang_ar", - "lang_bg", - "lang_ca", - "lang_cs", - "lang_da", - "lang_de", - "lang_el", - "lang_en", - "lang_es", - "lang_et", - "lang_fi", - "lang_fr", - "lang_hr", - "lang_hu", - "lang_id", - "lang_is", - "lang_it", - "lang_iw", - "lang_ja", - "lang_ko", - "lang_lt", - "lang_lv", - "lang_nl", - "lang_no", - "lang_pl", - "lang_pt", - "lang_ro", - "lang_ru", - "lang_sk", - "lang_sl", - "lang_sr", - "lang_sv", - "lang_tr", - "lang_zh-CN", - "lang_zh-TW" - ], - "enumDescriptions": [ - "Arabic", - "Bulgarian", - "Catalan", - "Czech", - "Danish", - "German", - "Greek", - "English", - "Spanish", - "Estonian", - "Finnish", - "French", - "Croatian", - "Hungarian", - "Indonesian", - "Icelandic", - "Italian", - "Hebrew", - "Japanese", - "Korean", - "Lithuanian", - "Latvian", - "Dutch", - "Norwegian", - "Polish", - "Portuguese", - "Romanian", - "Russian", - "Slovak", - "Slovenian", - "Serbian", - "Swedish", - "Turkish", - "Chinese (Simplified)", - "Chinese (Traditional)" - ], - "location": "query" - }, - "num": { - "type": "integer", - "description": "Number of search results to return", - "default": "10", - "format": "uint32", - "location": "query" - }, - "orTerms": { - "type": "string", - "description": "Provides additional search terms to check for in a document, where each document in the search results must contain at least one of the additional search terms", - "location": "query" - }, - "q": { - "type": "string", - "description": "Query", - "required": true, - "location": "query" - }, - "relatedSite": { - "type": "string", - "description": "Specifies that all search results should be pages that are related to the specified URL", - "location": "query" - }, - "rights": { - "type": "string", - "description": "Filters based on licensing. Supported values include: cc_publicdomain, cc_attribute, cc_sharealike, cc_noncommercial, cc_nonderived and combinations of these.", - "location": "query" - }, - "safe": { - "type": "string", - "description": "Search safety level", - "default": "off", - "enum": [ - "high", - "medium", - "off" - ], - "enumDescriptions": [ - "Enables highest level of safe search filtering.", - "Enables moderate safe search filtering.", - "Disables safe search filtering." - ], - "location": "query" - }, - "searchType": { - "type": "string", - "description": "Specifies the search type: image.", - "enum": [ - "image" - ], - "enumDescriptions": [ - "custom image search" - ], - "location": "query" - }, - "siteSearch": { - "type": "string", - "description": "Specifies all search results should be pages from a given site", - "location": "query" - }, - "siteSearchFilter": { - "type": "string", - "description": "Controls whether to include or exclude results from the site named in the as_sitesearch parameter", - "enum": [ - "e", - "i" - ], - "enumDescriptions": [ - "exclude", - "include" - ], - "location": "query" - }, - "sort": { - "type": "string", - "description": "The sort expression to apply to the results", - "location": "query" - }, - "start": { - "type": "integer", - "description": "The index of the first result to return", - "format": "uint32", - "location": "query" - } - }, - "parameterOrder": [ - "q" - ], - "response": { - "$ref": "Search" - } - } - } - } - } -} + "servicePath": "customsearch/", + "title": "CustomSearch API", + "version": "v1" +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/customsearch/v1/customsearch-gen.go b/vendor/google.golang.org/api/customsearch/v1/customsearch-gen.go index c654cebd4..c6bb0afc8 100644 --- a/vendor/google.golang.org/api/customsearch/v1/customsearch-gen.go +++ b/vendor/google.golang.org/api/customsearch/v1/customsearch-gen.go @@ -71,11 +71,23 @@ func (s *Service) userAgent() string { func NewCseService(s *Service) *CseService { rs := &CseService{s: s} + rs.Siterestrict = NewCseSiterestrictService(s) return rs } type CseService struct { s *Service + + Siterestrict *CseSiterestrictService +} + +func NewCseSiterestrictService(s *Service) *CseSiterestrictService { + rs := &CseSiterestrictService{s: s} + return rs +} + +type CseSiterestrictService struct { + s *Service } type Context struct { @@ -1359,3 +1371,764 @@ func (c *CseListCall) Do(opts ...googleapi.CallOption) (*Search, error) { // } } + +// method id "search.cse.siterestrict.list": + +type CseSiterestrictListCall struct { + s *Service + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// List: (Closed Beta API) Returns metadata about the search performed, +// metadata about the custom search engine used for the search, and the +// search results only for site-restrict cses. +func (r *CseSiterestrictService) List(q string) *CseSiterestrictListCall { + c := &CseSiterestrictListCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.urlParams_.Set("q", q) + return c +} + +// C2coff sets the optional parameter "c2coff": Turns off the +// translation between zh-CN and zh-TW. +func (c *CseSiterestrictListCall) C2coff(c2coff string) *CseSiterestrictListCall { + c.urlParams_.Set("c2coff", c2coff) + return c +} + +// Cr sets the optional parameter "cr": Country restrict(s). +func (c *CseSiterestrictListCall) Cr(cr string) *CseSiterestrictListCall { + c.urlParams_.Set("cr", cr) + return c +} + +// Cx sets the optional parameter "cx": The custom search engine ID to +// scope this search query +func (c *CseSiterestrictListCall) Cx(cx string) *CseSiterestrictListCall { + c.urlParams_.Set("cx", cx) + return c +} + +// DateRestrict sets the optional parameter "dateRestrict": Specifies +// all search results are from a time period +func (c *CseSiterestrictListCall) DateRestrict(dateRestrict string) *CseSiterestrictListCall { + c.urlParams_.Set("dateRestrict", dateRestrict) + return c +} + +// ExactTerms sets the optional parameter "exactTerms": Identifies a +// phrase that all documents in the search results must contain +func (c *CseSiterestrictListCall) ExactTerms(exactTerms string) *CseSiterestrictListCall { + c.urlParams_.Set("exactTerms", exactTerms) + return c +} + +// ExcludeTerms sets the optional parameter "excludeTerms": Identifies a +// word or phrase that should not appear in any documents in the search +// results +func (c *CseSiterestrictListCall) ExcludeTerms(excludeTerms string) *CseSiterestrictListCall { + c.urlParams_.Set("excludeTerms", excludeTerms) + return c +} + +// FileType sets the optional parameter "fileType": Returns images of a +// specified type. Some of the allowed values are: bmp, gif, png, jpg, +// svg, pdf, ... +func (c *CseSiterestrictListCall) FileType(fileType string) *CseSiterestrictListCall { + c.urlParams_.Set("fileType", fileType) + return c +} + +// Filter sets the optional parameter "filter": Controls turning on or +// off the duplicate content filter. +// +// Possible values: +// "0" - Turns off duplicate content filter. +// "1" - Turns on duplicate content filter. +func (c *CseSiterestrictListCall) Filter(filter string) *CseSiterestrictListCall { + c.urlParams_.Set("filter", filter) + return c +} + +// Gl sets the optional parameter "gl": Geolocation of end user. +func (c *CseSiterestrictListCall) Gl(gl string) *CseSiterestrictListCall { + c.urlParams_.Set("gl", gl) + return c +} + +// Googlehost sets the optional parameter "googlehost": The local Google +// domain to use to perform the search. +func (c *CseSiterestrictListCall) Googlehost(googlehost string) *CseSiterestrictListCall { + c.urlParams_.Set("googlehost", googlehost) + return c +} + +// HighRange sets the optional parameter "highRange": Creates a range in +// form as_nlo value..as_nhi value and attempts to append it to query +func (c *CseSiterestrictListCall) HighRange(highRange string) *CseSiterestrictListCall { + c.urlParams_.Set("highRange", highRange) + return c +} + +// Hl sets the optional parameter "hl": Sets the user interface +// language. +func (c *CseSiterestrictListCall) Hl(hl string) *CseSiterestrictListCall { + c.urlParams_.Set("hl", hl) + return c +} + +// Hq sets the optional parameter "hq": Appends the extra query terms to +// the query. +func (c *CseSiterestrictListCall) Hq(hq string) *CseSiterestrictListCall { + c.urlParams_.Set("hq", hq) + return c +} + +// ImgColorType sets the optional parameter "imgColorType": Returns +// black and white, grayscale, or color images: mono, gray, and color. +// +// Possible values: +// "color" - color +// "gray" - gray +// "mono" - mono +func (c *CseSiterestrictListCall) ImgColorType(imgColorType string) *CseSiterestrictListCall { + c.urlParams_.Set("imgColorType", imgColorType) + return c +} + +// ImgDominantColor sets the optional parameter "imgDominantColor": +// Returns images of a specific dominant color: yellow, green, teal, +// blue, purple, pink, white, gray, black and brown. +// +// Possible values: +// "black" - black +// "blue" - blue +// "brown" - brown +// "gray" - gray +// "green" - green +// "pink" - pink +// "purple" - purple +// "teal" - teal +// "white" - white +// "yellow" - yellow +func (c *CseSiterestrictListCall) ImgDominantColor(imgDominantColor string) *CseSiterestrictListCall { + c.urlParams_.Set("imgDominantColor", imgDominantColor) + return c +} + +// ImgSize sets the optional parameter "imgSize": Returns images of a +// specified size, where size can be one of: icon, small, medium, large, +// xlarge, xxlarge, and huge. +// +// Possible values: +// "huge" - huge +// "icon" - icon +// "large" - large +// "medium" - medium +// "small" - small +// "xlarge" - xlarge +// "xxlarge" - xxlarge +func (c *CseSiterestrictListCall) ImgSize(imgSize string) *CseSiterestrictListCall { + c.urlParams_.Set("imgSize", imgSize) + return c +} + +// ImgType sets the optional parameter "imgType": Returns images of a +// type, which can be one of: clipart, face, lineart, news, and photo. +// +// Possible values: +// "clipart" - clipart +// "face" - face +// "lineart" - lineart +// "news" - news +// "photo" - photo +func (c *CseSiterestrictListCall) ImgType(imgType string) *CseSiterestrictListCall { + c.urlParams_.Set("imgType", imgType) + return c +} + +// LinkSite sets the optional parameter "linkSite": Specifies that all +// search results should contain a link to a particular URL +func (c *CseSiterestrictListCall) LinkSite(linkSite string) *CseSiterestrictListCall { + c.urlParams_.Set("linkSite", linkSite) + return c +} + +// LowRange sets the optional parameter "lowRange": Creates a range in +// form as_nlo value..as_nhi value and attempts to append it to query +func (c *CseSiterestrictListCall) LowRange(lowRange string) *CseSiterestrictListCall { + c.urlParams_.Set("lowRange", lowRange) + return c +} + +// Lr sets the optional parameter "lr": The language restriction for the +// search results +// +// Possible values: +// "lang_ar" - Arabic +// "lang_bg" - Bulgarian +// "lang_ca" - Catalan +// "lang_cs" - Czech +// "lang_da" - Danish +// "lang_de" - German +// "lang_el" - Greek +// "lang_en" - English +// "lang_es" - Spanish +// "lang_et" - Estonian +// "lang_fi" - Finnish +// "lang_fr" - French +// "lang_hr" - Croatian +// "lang_hu" - Hungarian +// "lang_id" - Indonesian +// "lang_is" - Icelandic +// "lang_it" - Italian +// "lang_iw" - Hebrew +// "lang_ja" - Japanese +// "lang_ko" - Korean +// "lang_lt" - Lithuanian +// "lang_lv" - Latvian +// "lang_nl" - Dutch +// "lang_no" - Norwegian +// "lang_pl" - Polish +// "lang_pt" - Portuguese +// "lang_ro" - Romanian +// "lang_ru" - Russian +// "lang_sk" - Slovak +// "lang_sl" - Slovenian +// "lang_sr" - Serbian +// "lang_sv" - Swedish +// "lang_tr" - Turkish +// "lang_zh-CN" - Chinese (Simplified) +// "lang_zh-TW" - Chinese (Traditional) +func (c *CseSiterestrictListCall) Lr(lr string) *CseSiterestrictListCall { + c.urlParams_.Set("lr", lr) + return c +} + +// Num sets the optional parameter "num": Number of search results to +// return +func (c *CseSiterestrictListCall) Num(num int64) *CseSiterestrictListCall { + c.urlParams_.Set("num", fmt.Sprint(num)) + return c +} + +// OrTerms sets the optional parameter "orTerms": Provides additional +// search terms to check for in a document, where each document in the +// search results must contain at least one of the additional search +// terms +func (c *CseSiterestrictListCall) OrTerms(orTerms string) *CseSiterestrictListCall { + c.urlParams_.Set("orTerms", orTerms) + return c +} + +// RelatedSite sets the optional parameter "relatedSite": Specifies that +// all search results should be pages that are related to the specified +// URL +func (c *CseSiterestrictListCall) RelatedSite(relatedSite string) *CseSiterestrictListCall { + c.urlParams_.Set("relatedSite", relatedSite) + return c +} + +// Rights sets the optional parameter "rights": Filters based on +// licensing. Supported values include: cc_publicdomain, cc_attribute, +// cc_sharealike, cc_noncommercial, cc_nonderived and combinations of +// these. +func (c *CseSiterestrictListCall) Rights(rights string) *CseSiterestrictListCall { + c.urlParams_.Set("rights", rights) + return c +} + +// Safe sets the optional parameter "safe": Search safety level +// +// Possible values: +// "high" - Enables highest level of safe search filtering. +// "medium" - Enables moderate safe search filtering. +// "off" (default) - Disables safe search filtering. +func (c *CseSiterestrictListCall) Safe(safe string) *CseSiterestrictListCall { + c.urlParams_.Set("safe", safe) + return c +} + +// SearchType sets the optional parameter "searchType": Specifies the +// search type: image. +// +// Possible values: +// "image" - custom image search +func (c *CseSiterestrictListCall) SearchType(searchType string) *CseSiterestrictListCall { + c.urlParams_.Set("searchType", searchType) + return c +} + +// SiteSearch sets the optional parameter "siteSearch": Specifies all +// search results should be pages from a given site +func (c *CseSiterestrictListCall) SiteSearch(siteSearch string) *CseSiterestrictListCall { + c.urlParams_.Set("siteSearch", siteSearch) + return c +} + +// SiteSearchFilter sets the optional parameter "siteSearchFilter": +// Controls whether to include or exclude results from the site named in +// the as_sitesearch parameter +// +// Possible values: +// "e" - exclude +// "i" - include +func (c *CseSiterestrictListCall) SiteSearchFilter(siteSearchFilter string) *CseSiterestrictListCall { + c.urlParams_.Set("siteSearchFilter", siteSearchFilter) + return c +} + +// Sort sets the optional parameter "sort": The sort expression to apply +// to the results +func (c *CseSiterestrictListCall) Sort(sort string) *CseSiterestrictListCall { + c.urlParams_.Set("sort", sort) + return c +} + +// Start sets the optional parameter "start": The index of the first +// result to return +func (c *CseSiterestrictListCall) Start(start int64) *CseSiterestrictListCall { + c.urlParams_.Set("start", fmt.Sprint(start)) + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *CseSiterestrictListCall) Fields(s ...googleapi.Field) *CseSiterestrictListCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// IfNoneMatch sets the optional parameter which makes the operation +// fail if the object's ETag matches the given value. This is useful for +// getting updates only after the object has changed since the last +// request. Use googleapi.IsNotModified to check whether the response +// error from Do is the result of In-None-Match. +func (c *CseSiterestrictListCall) IfNoneMatch(entityTag string) *CseSiterestrictListCall { + c.ifNoneMatch_ = entityTag + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *CseSiterestrictListCall) Context(ctx context.Context) *CseSiterestrictListCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *CseSiterestrictListCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *CseSiterestrictListCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + if c.ifNoneMatch_ != "" { + reqHeaders.Set("If-None-Match", c.ifNoneMatch_) + } + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v1/siterestrict") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("GET", urls, body) + req.Header = reqHeaders + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "search.cse.siterestrict.list" call. +// Exactly one of *Search or error will be non-nil. Any non-2xx status +// code is an error. Response headers are in either +// *Search.ServerResponse.Header or (if a response was returned at all) +// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to +// check whether the returned error was because http.StatusNotModified +// was returned. +func (c *CseSiterestrictListCall) Do(opts ...googleapi.CallOption) (*Search, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &Search{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "(Closed Beta API) Returns metadata about the search performed, metadata about the custom search engine used for the search, and the search results only for site-restrict cses.", + // "httpMethod": "GET", + // "id": "search.cse.siterestrict.list", + // "parameterOrder": [ + // "q" + // ], + // "parameters": { + // "c2coff": { + // "description": "Turns off the translation between zh-CN and zh-TW.", + // "location": "query", + // "type": "string" + // }, + // "cr": { + // "description": "Country restrict(s).", + // "location": "query", + // "type": "string" + // }, + // "cx": { + // "description": "The custom search engine ID to scope this search query", + // "location": "query", + // "type": "string" + // }, + // "dateRestrict": { + // "description": "Specifies all search results are from a time period", + // "location": "query", + // "type": "string" + // }, + // "exactTerms": { + // "description": "Identifies a phrase that all documents in the search results must contain", + // "location": "query", + // "type": "string" + // }, + // "excludeTerms": { + // "description": "Identifies a word or phrase that should not appear in any documents in the search results", + // "location": "query", + // "type": "string" + // }, + // "fileType": { + // "description": "Returns images of a specified type. Some of the allowed values are: bmp, gif, png, jpg, svg, pdf, ...", + // "location": "query", + // "type": "string" + // }, + // "filter": { + // "description": "Controls turning on or off the duplicate content filter.", + // "enum": [ + // "0", + // "1" + // ], + // "enumDescriptions": [ + // "Turns off duplicate content filter.", + // "Turns on duplicate content filter." + // ], + // "location": "query", + // "type": "string" + // }, + // "gl": { + // "description": "Geolocation of end user.", + // "location": "query", + // "type": "string" + // }, + // "googlehost": { + // "description": "The local Google domain to use to perform the search.", + // "location": "query", + // "type": "string" + // }, + // "highRange": { + // "description": "Creates a range in form as_nlo value..as_nhi value and attempts to append it to query", + // "location": "query", + // "type": "string" + // }, + // "hl": { + // "description": "Sets the user interface language.", + // "location": "query", + // "type": "string" + // }, + // "hq": { + // "description": "Appends the extra query terms to the query.", + // "location": "query", + // "type": "string" + // }, + // "imgColorType": { + // "description": "Returns black and white, grayscale, or color images: mono, gray, and color.", + // "enum": [ + // "color", + // "gray", + // "mono" + // ], + // "enumDescriptions": [ + // "color", + // "gray", + // "mono" + // ], + // "location": "query", + // "type": "string" + // }, + // "imgDominantColor": { + // "description": "Returns images of a specific dominant color: yellow, green, teal, blue, purple, pink, white, gray, black and brown.", + // "enum": [ + // "black", + // "blue", + // "brown", + // "gray", + // "green", + // "pink", + // "purple", + // "teal", + // "white", + // "yellow" + // ], + // "enumDescriptions": [ + // "black", + // "blue", + // "brown", + // "gray", + // "green", + // "pink", + // "purple", + // "teal", + // "white", + // "yellow" + // ], + // "location": "query", + // "type": "string" + // }, + // "imgSize": { + // "description": "Returns images of a specified size, where size can be one of: icon, small, medium, large, xlarge, xxlarge, and huge.", + // "enum": [ + // "huge", + // "icon", + // "large", + // "medium", + // "small", + // "xlarge", + // "xxlarge" + // ], + // "enumDescriptions": [ + // "huge", + // "icon", + // "large", + // "medium", + // "small", + // "xlarge", + // "xxlarge" + // ], + // "location": "query", + // "type": "string" + // }, + // "imgType": { + // "description": "Returns images of a type, which can be one of: clipart, face, lineart, news, and photo.", + // "enum": [ + // "clipart", + // "face", + // "lineart", + // "news", + // "photo" + // ], + // "enumDescriptions": [ + // "clipart", + // "face", + // "lineart", + // "news", + // "photo" + // ], + // "location": "query", + // "type": "string" + // }, + // "linkSite": { + // "description": "Specifies that all search results should contain a link to a particular URL", + // "location": "query", + // "type": "string" + // }, + // "lowRange": { + // "description": "Creates a range in form as_nlo value..as_nhi value and attempts to append it to query", + // "location": "query", + // "type": "string" + // }, + // "lr": { + // "description": "The language restriction for the search results", + // "enum": [ + // "lang_ar", + // "lang_bg", + // "lang_ca", + // "lang_cs", + // "lang_da", + // "lang_de", + // "lang_el", + // "lang_en", + // "lang_es", + // "lang_et", + // "lang_fi", + // "lang_fr", + // "lang_hr", + // "lang_hu", + // "lang_id", + // "lang_is", + // "lang_it", + // "lang_iw", + // "lang_ja", + // "lang_ko", + // "lang_lt", + // "lang_lv", + // "lang_nl", + // "lang_no", + // "lang_pl", + // "lang_pt", + // "lang_ro", + // "lang_ru", + // "lang_sk", + // "lang_sl", + // "lang_sr", + // "lang_sv", + // "lang_tr", + // "lang_zh-CN", + // "lang_zh-TW" + // ], + // "enumDescriptions": [ + // "Arabic", + // "Bulgarian", + // "Catalan", + // "Czech", + // "Danish", + // "German", + // "Greek", + // "English", + // "Spanish", + // "Estonian", + // "Finnish", + // "French", + // "Croatian", + // "Hungarian", + // "Indonesian", + // "Icelandic", + // "Italian", + // "Hebrew", + // "Japanese", + // "Korean", + // "Lithuanian", + // "Latvian", + // "Dutch", + // "Norwegian", + // "Polish", + // "Portuguese", + // "Romanian", + // "Russian", + // "Slovak", + // "Slovenian", + // "Serbian", + // "Swedish", + // "Turkish", + // "Chinese (Simplified)", + // "Chinese (Traditional)" + // ], + // "location": "query", + // "type": "string" + // }, + // "num": { + // "default": "10", + // "description": "Number of search results to return", + // "format": "uint32", + // "location": "query", + // "type": "integer" + // }, + // "orTerms": { + // "description": "Provides additional search terms to check for in a document, where each document in the search results must contain at least one of the additional search terms", + // "location": "query", + // "type": "string" + // }, + // "q": { + // "description": "Query", + // "location": "query", + // "required": true, + // "type": "string" + // }, + // "relatedSite": { + // "description": "Specifies that all search results should be pages that are related to the specified URL", + // "location": "query", + // "type": "string" + // }, + // "rights": { + // "description": "Filters based on licensing. Supported values include: cc_publicdomain, cc_attribute, cc_sharealike, cc_noncommercial, cc_nonderived and combinations of these.", + // "location": "query", + // "type": "string" + // }, + // "safe": { + // "default": "off", + // "description": "Search safety level", + // "enum": [ + // "high", + // "medium", + // "off" + // ], + // "enumDescriptions": [ + // "Enables highest level of safe search filtering.", + // "Enables moderate safe search filtering.", + // "Disables safe search filtering." + // ], + // "location": "query", + // "type": "string" + // }, + // "searchType": { + // "description": "Specifies the search type: image.", + // "enum": [ + // "image" + // ], + // "enumDescriptions": [ + // "custom image search" + // ], + // "location": "query", + // "type": "string" + // }, + // "siteSearch": { + // "description": "Specifies all search results should be pages from a given site", + // "location": "query", + // "type": "string" + // }, + // "siteSearchFilter": { + // "description": "Controls whether to include or exclude results from the site named in the as_sitesearch parameter", + // "enum": [ + // "e", + // "i" + // ], + // "enumDescriptions": [ + // "exclude", + // "include" + // ], + // "location": "query", + // "type": "string" + // }, + // "sort": { + // "description": "The sort expression to apply to the results", + // "location": "query", + // "type": "string" + // }, + // "start": { + // "description": "The index of the first result to return", + // "format": "uint32", + // "location": "query", + // "type": "integer" + // } + // }, + // "path": "v1/siterestrict", + // "response": { + // "$ref": "Search" + // } + // } + +} diff --git a/vendor/google.golang.org/api/dataflow/v1b3/dataflow-api.json b/vendor/google.golang.org/api/dataflow/v1b3/dataflow-api.json index 596f738f4..b4a39a72a 100644 --- a/vendor/google.golang.org/api/dataflow/v1b3/dataflow-api.json +++ b/vendor/google.golang.org/api/dataflow/v1b3/dataflow-api.json @@ -1,197 +1,220 @@ { - "title": "Google Dataflow API", - "ownerName": "Google", + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/cloud-platform": { + "description": "View and manage your data across Google Cloud Platform services" + }, + "https://www.googleapis.com/auth/compute": { + "description": "View and manage your Google Compute Engine resources" + }, + "https://www.googleapis.com/auth/compute.readonly": { + "description": "View your Google Compute Engine resources" + }, + "https://www.googleapis.com/auth/userinfo.email": { + "description": "View your email address" + } + } + } + }, + "basePath": "", + "baseUrl": "https://dataflow.googleapis.com/", + "batchPath": "batch", + "description": "Manages Google Cloud Dataflow projects on Google Cloud Platform.", "discoveryVersion": "v1", + "documentationLink": "https://cloud.google.com/dataflow", + "icons": { + "x16": "http://www.google.com/images/icons/product/search-16.gif", + "x32": "http://www.google.com/images/icons/product/search-32.gif" + }, + "id": "dataflow:v1b3", + "kind": "discovery#restDescription", + "name": "dataflow", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "$.xgafv": { + "description": "V1 error format.", + "enum": [ + "1", + "2" + ], + "enumDescriptions": [ + "v1 error format", + "v2 error format" + ], + "location": "query", + "type": "string" + }, + "access_token": { + "description": "OAuth access token.", + "location": "query", + "type": "string" + }, + "alt": { + "default": "json", + "description": "Data format for response.", + "enum": [ + "json", + "media", + "proto" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json", + "Media download with context-dependent Content-Type", + "Responses with Content-Type of application/x-protobuf" + ], + "location": "query", + "type": "string" + }, + "bearer_token": { + "description": "OAuth bearer token.", + "location": "query", + "type": "string" + }, + "callback": { + "description": "JSONP", + "location": "query", + "type": "string" + }, + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "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.", + "location": "query", + "type": "string" + }, + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "pp": { + "default": "true", + "description": "Pretty-print response.", + "location": "query", + "type": "boolean" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", + "location": "query", + "type": "string" + }, + "uploadType": { + "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", + "location": "query", + "type": "string" + }, + "upload_protocol": { + "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", + "location": "query", + "type": "string" + } + }, + "protocol": "rest", "resources": { "projects": { "methods": { "workerMessages": { - "response": { - "$ref": "SendWorkerMessagesResponse" - }, + "description": "Send a worker_message to the service.", + "flatPath": "v1b3/projects/{projectId}/WorkerMessages", + "httpMethod": "POST", + "id": "dataflow.projects.workerMessages", "parameterOrder": [ "projectId" ], - "httpMethod": "POST", "parameters": { "projectId": { - "location": "path", "description": "The project to send the WorkerMessages to.", + "location": "path", "required": true, "type": "string" } }, + "path": "v1b3/projects/{projectId}/WorkerMessages", + "request": { + "$ref": "SendWorkerMessagesRequest" + }, + "response": { + "$ref": "SendWorkerMessagesResponse" + }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/compute", "https://www.googleapis.com/auth/compute.readonly", "https://www.googleapis.com/auth/userinfo.email" - ], - "flatPath": "v1b3/projects/{projectId}/WorkerMessages", - "path": "v1b3/projects/{projectId}/WorkerMessages", - "id": "dataflow.projects.workerMessages", - "request": { - "$ref": "SendWorkerMessagesRequest" - }, - "description": "Send a worker_message to the service." + ] } }, "resources": { - "templates": { + "jobs": { "methods": { - "launch": { - "flatPath": "v1b3/projects/{projectId}/templates:launch", - "path": "v1b3/projects/{projectId}/templates:launch", - "id": "dataflow.projects.templates.launch", - "description": "Launch a template.", - "request": { - "$ref": "LaunchTemplateParameters" - }, - "response": { - "$ref": "LaunchTemplateResponse" - }, + "aggregated": { + "description": "List the jobs of a project across all regions.", + "flatPath": "v1b3/projects/{projectId}/jobs:aggregated", + "httpMethod": "GET", + "id": "dataflow.projects.jobs.aggregated", "parameterOrder": [ "projectId" ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly", - "https://www.googleapis.com/auth/userinfo.email" - ], "parameters": { - "gcsPath": { + "filter": { + "description": "The kind of filter to use.", + "enum": [ + "UNKNOWN", + "ALL", + "TERMINATED", + "ACTIVE" + ], "location": "query", - "description": "Required. A Cloud Storage path to the template from which to create\nthe job.\nMust be valid Cloud Storage URL, beginning with 'gs://'.", "type": "string" }, "location": { - "description": "The location to which to direct the request.", - "type": "string", - "location": "query" - }, - "validateOnly": { + "description": "The location that contains this job.", "location": "query", - "description": "If true, the request is validated but not actually executed.\nDefaults to false.", - "type": "boolean" + "type": "string" + }, + "pageSize": { + "description": "If there are many jobs, limit response to at most this many.\nThe actual number of jobs returned will be the lesser of max_responses\nand an unspecified server-defined limit.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Set this to the 'next_page_token' field of a previous response\nto request additional results in a long list.", + "location": "query", + "type": "string" }, "projectId": { - "description": "Required. The ID of the Cloud Platform project that the job belongs to.", + "description": "The project which owns the jobs.", + "location": "path", "required": true, - "type": "string", - "location": "path" - } - } - }, - "get": { - "httpMethod": "GET", - "parameterOrder": [ - "projectId" - ], - "response": { - "$ref": "GetTemplateResponse" - }, - "parameters": { - "location": { - "description": "The location to which to direct the request.", - "type": "string", - "location": "query" - }, - "projectId": { - "description": "Required. The ID of the Cloud Platform project that the job belongs to.", - "required": true, - "type": "string", - "location": "path" + "type": "string" }, "view": { - "description": "The view to retrieve. Defaults to METADATA_ONLY.", - "type": "string", - "location": "query", + "description": "Level of information requested in response. Default is `JOB_VIEW_SUMMARY`.", "enum": [ - "METADATA_ONLY" - ] - }, - "gcsPath": { + "JOB_VIEW_UNKNOWN", + "JOB_VIEW_SUMMARY", + "JOB_VIEW_ALL", + "JOB_VIEW_DESCRIPTION" + ], "location": "query", - "description": "Required. A Cloud Storage path to the template from which to\ncreate the job.\nMust be a valid Cloud Storage URL, beginning with `gs://`.", "type": "string" } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly", - "https://www.googleapis.com/auth/userinfo.email" - ], - "flatPath": "v1b3/projects/{projectId}/templates:get", - "id": "dataflow.projects.templates.get", - "path": "v1b3/projects/{projectId}/templates:get", - "description": "Get the template associated with a template." - }, - "create": { - "path": "v1b3/projects/{projectId}/templates", - "id": "dataflow.projects.templates.create", - "request": { - "$ref": "CreateJobFromTemplateRequest" - }, - "description": "Creates a Cloud Dataflow job from a template.", + "path": "v1b3/projects/{projectId}/jobs:aggregated", "response": { - "$ref": "Job" - }, - "parameterOrder": [ - "projectId" - ], - "httpMethod": "POST", - "parameters": { - "projectId": { - "description": "Required. The ID of the Cloud Platform project that the job belongs to.", - "required": true, - "type": "string", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly", - "https://www.googleapis.com/auth/userinfo.email" - ], - "flatPath": "v1b3/projects/{projectId}/templates" - } - } - }, - "locations": { - "methods": { - "workerMessages": { - "flatPath": "v1b3/projects/{projectId}/locations/{location}/WorkerMessages", - "path": "v1b3/projects/{projectId}/locations/{location}/WorkerMessages", - "id": "dataflow.projects.locations.workerMessages", - "request": { - "$ref": "SendWorkerMessagesRequest" - }, - "description": "Send a worker_message to the service.", - "response": { - "$ref": "SendWorkerMessagesResponse" - }, - "parameterOrder": [ - "projectId", - "location" - ], - "httpMethod": "POST", - "parameters": { - "location": { - "location": "path", - "description": "The location which contains the job", - "required": true, - "type": "string" - }, - "projectId": { - "description": "The project to send the WorkerMessages to.", - "required": true, - "type": "string", - "location": "path" - } + "$ref": "ListJobsResponse" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", @@ -199,720 +222,146 @@ "https://www.googleapis.com/auth/compute.readonly", "https://www.googleapis.com/auth/userinfo.email" ] - } - }, - "resources": { - "templates": { - "methods": { - "launch": { - "description": "Launch a template.", - "request": { - "$ref": "LaunchTemplateParameters" - }, - "response": { - "$ref": "LaunchTemplateResponse" - }, - "parameterOrder": [ - "projectId", - "location" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly", - "https://www.googleapis.com/auth/userinfo.email" - ], - "parameters": { - "validateOnly": { - "location": "query", - "description": "If true, the request is validated but not actually executed.\nDefaults to false.", - "type": "boolean" - }, - "projectId": { - "description": "Required. The ID of the Cloud Platform project that the job belongs to.", - "required": true, - "type": "string", - "location": "path" - }, - "gcsPath": { - "location": "query", - "description": "Required. A Cloud Storage path to the template from which to create\nthe job.\nMust be valid Cloud Storage URL, beginning with 'gs://'.", - "type": "string" - }, - "location": { - "description": "The location to which to direct the request.", - "required": true, - "type": "string", - "location": "path" - } - }, - "flatPath": "v1b3/projects/{projectId}/locations/{location}/templates:launch", - "path": "v1b3/projects/{projectId}/locations/{location}/templates:launch", - "id": "dataflow.projects.locations.templates.launch" - }, - "get": { - "path": "v1b3/projects/{projectId}/locations/{location}/templates:get", - "id": "dataflow.projects.locations.templates.get", - "description": "Get the template associated with a template.", - "response": { - "$ref": "GetTemplateResponse" - }, - "parameterOrder": [ - "projectId", - "location" - ], - "httpMethod": "GET", - "parameters": { - "projectId": { - "location": "path", - "description": "Required. The ID of the Cloud Platform project that the job belongs to.", - "required": true, - "type": "string" - }, - "view": { - "location": "query", - "enum": [ - "METADATA_ONLY" - ], - "description": "The view to retrieve. Defaults to METADATA_ONLY.", - "type": "string" - }, - "gcsPath": { - "location": "query", - "description": "Required. A Cloud Storage path to the template from which to\ncreate the job.\nMust be a valid Cloud Storage URL, beginning with `gs://`.", - "type": "string" - }, - "location": { - "description": "The location to which to direct the request.", - "required": true, - "type": "string", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly", - "https://www.googleapis.com/auth/userinfo.email" - ], - "flatPath": "v1b3/projects/{projectId}/locations/{location}/templates:get" - }, - "create": { - "httpMethod": "POST", - "parameterOrder": [ - "projectId", - "location" - ], - "response": { - "$ref": "Job" - }, - "parameters": { - "projectId": { - "description": "Required. The ID of the Cloud Platform project that the job belongs to.", - "required": true, - "type": "string", - "location": "path" - }, - "location": { - "location": "path", - "description": "The location to which to direct the request.", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly", - "https://www.googleapis.com/auth/userinfo.email" - ], - "flatPath": "v1b3/projects/{projectId}/locations/{location}/templates", - "id": "dataflow.projects.locations.templates.create", - "path": "v1b3/projects/{projectId}/locations/{location}/templates", - "request": { - "$ref": "CreateJobFromTemplateRequest" - }, - "description": "Creates a Cloud Dataflow job from a template." - } - } }, - "jobs": { - "methods": { - "getMetrics": { - "response": { - "$ref": "JobMetrics" - }, - "parameterOrder": [ - "projectId", - "location", - "jobId" - ], - "httpMethod": "GET", - "parameters": { - "projectId": { - "location": "path", - "description": "A project id.", - "required": true, - "type": "string" - }, - "jobId": { - "location": "path", - "description": "The job to get messages for.", - "required": true, - "type": "string" - }, - "location": { - "location": "path", - "description": "The location which contains the job specified by job_id.", - "required": true, - "type": "string" - }, - "startTime": { - "location": "query", - "description": "Return only metric data that has changed since this time.\nDefault is to return all information about all metrics for the job.", - "format": "google-datetime", - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly", - "https://www.googleapis.com/auth/userinfo.email" - ], - "flatPath": "v1b3/projects/{projectId}/locations/{location}/jobs/{jobId}/metrics", - "path": "v1b3/projects/{projectId}/locations/{location}/jobs/{jobId}/metrics", - "id": "dataflow.projects.locations.jobs.getMetrics", - "description": "Request the job status." + "create": { + "description": "Creates a Cloud Dataflow job.", + "flatPath": "v1b3/projects/{projectId}/jobs", + "httpMethod": "POST", + "id": "dataflow.projects.jobs.create", + "parameterOrder": [ + "projectId" + ], + "parameters": { + "location": { + "description": "The location that contains this job.", + "location": "query", + "type": "string" }, - "get": { - "response": { - "$ref": "Job" - }, - "parameterOrder": [ - "projectId", - "location", - "jobId" - ], - "httpMethod": "GET", - "parameters": { - "projectId": { - "description": "The ID of the Cloud Platform project that the job belongs to.", - "required": true, - "type": "string", - "location": "path" - }, - "jobId": { - "location": "path", - "description": "The job ID.", - "required": true, - "type": "string" - }, - "view": { - "enum": [ - "JOB_VIEW_UNKNOWN", - "JOB_VIEW_SUMMARY", - "JOB_VIEW_ALL", - "JOB_VIEW_DESCRIPTION" - ], - "description": "The level of information requested in response.", - "type": "string", - "location": "query" - }, - "location": { - "location": "path", - "description": "The location that contains this job.", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly", - "https://www.googleapis.com/auth/userinfo.email" - ], - "flatPath": "v1b3/projects/{projectId}/locations/{location}/jobs/{jobId}", - "path": "v1b3/projects/{projectId}/locations/{location}/jobs/{jobId}", - "id": "dataflow.projects.locations.jobs.get", - "description": "Gets the state of the specified Cloud Dataflow job." + "projectId": { + "description": "The ID of the Cloud Platform project that the job belongs to.", + "location": "path", + "required": true, + "type": "string" }, - "list": { - "flatPath": "v1b3/projects/{projectId}/locations/{location}/jobs", - "id": "dataflow.projects.locations.jobs.list", - "path": "v1b3/projects/{projectId}/locations/{location}/jobs", - "description": "List the jobs of a project in a given region.", - "httpMethod": "GET", - "parameterOrder": [ - "projectId", - "location" - ], - "response": { - "$ref": "ListJobsResponse" - }, - "parameters": { - "filter": { - "location": "query", - "enum": [ - "UNKNOWN", - "ALL", - "TERMINATED", - "ACTIVE" - ], - "description": "The kind of filter to use.", - "type": "string" - }, - "location": { - "description": "The location that contains this job.", - "required": true, - "type": "string", - "location": "path" - }, - "pageToken": { - "description": "Set this to the 'next_page_token' field of a previous response\nto request additional results in a long list.", - "type": "string", - "location": "query" - }, - "pageSize": { - "description": "If there are many jobs, limit response to at most this many.\nThe actual number of jobs returned will be the lesser of max_responses\nand an unspecified server-defined limit.", - "format": "int32", - "type": "integer", - "location": "query" - }, - "view": { - "enum": [ - "JOB_VIEW_UNKNOWN", - "JOB_VIEW_SUMMARY", - "JOB_VIEW_ALL", - "JOB_VIEW_DESCRIPTION" - ], - "description": "Level of information requested in response. Default is `JOB_VIEW_SUMMARY`.", - "type": "string", - "location": "query" - }, - "projectId": { - "location": "path", - "description": "The project which owns the jobs.", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly", - "https://www.googleapis.com/auth/userinfo.email" - ] + "replaceJobId": { + "description": "Deprecated. This field is now in the Job message.", + "location": "query", + "type": "string" }, - "update": { - "description": "Updates the state of an existing Cloud Dataflow job.", - "request": { - "$ref": "Job" - }, - "response": { - "$ref": "Job" - }, - "parameterOrder": [ - "projectId", - "location", - "jobId" + "view": { + "description": "The level of information requested in response.", + "enum": [ + "JOB_VIEW_UNKNOWN", + "JOB_VIEW_SUMMARY", + "JOB_VIEW_ALL", + "JOB_VIEW_DESCRIPTION" ], - "httpMethod": "PUT", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly", - "https://www.googleapis.com/auth/userinfo.email" - ], - "parameters": { - "location": { - "location": "path", - "description": "The location that contains this job.", - "required": true, - "type": "string" - }, - "projectId": { - "location": "path", - "description": "The ID of the Cloud Platform project that the job belongs to.", - "required": true, - "type": "string" - }, - "jobId": { - "location": "path", - "description": "The job ID.", - "required": true, - "type": "string" - } - }, - "flatPath": "v1b3/projects/{projectId}/locations/{location}/jobs/{jobId}", - "path": "v1b3/projects/{projectId}/locations/{location}/jobs/{jobId}", - "id": "dataflow.projects.locations.jobs.update" - }, - "create": { - "id": "dataflow.projects.locations.jobs.create", - "path": "v1b3/projects/{projectId}/locations/{location}/jobs", - "request": { - "$ref": "Job" - }, - "description": "Creates a Cloud Dataflow job.", - "httpMethod": "POST", - "parameterOrder": [ - "projectId", - "location" - ], - "response": { - "$ref": "Job" - }, - "parameters": { - "location": { - "description": "The location that contains this job.", - "required": true, - "type": "string", - "location": "path" - }, - "replaceJobId": { - "description": "Deprecated. This field is now in the Job message.", - "type": "string", - "location": "query" - }, - "projectId": { - "description": "The ID of the Cloud Platform project that the job belongs to.", - "required": true, - "type": "string", - "location": "path" - }, - "view": { - "description": "The level of information requested in response.", - "type": "string", - "location": "query", - "enum": [ - "JOB_VIEW_UNKNOWN", - "JOB_VIEW_SUMMARY", - "JOB_VIEW_ALL", - "JOB_VIEW_DESCRIPTION" - ] - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly", - "https://www.googleapis.com/auth/userinfo.email" - ], - "flatPath": "v1b3/projects/{projectId}/locations/{location}/jobs" + "location": "query", + "type": "string" } }, - "resources": { - "debug": { - "methods": { - "getConfig": { - "flatPath": "v1b3/projects/{projectId}/locations/{location}/jobs/{jobId}/debug/getConfig", - "path": "v1b3/projects/{projectId}/locations/{location}/jobs/{jobId}/debug/getConfig", - "id": "dataflow.projects.locations.jobs.debug.getConfig", - "description": "Get encoded debug configuration for component. Not cacheable.", - "request": { - "$ref": "GetDebugConfigRequest" - }, - "response": { - "$ref": "GetDebugConfigResponse" - }, - "parameterOrder": [ - "projectId", - "location", - "jobId" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly", - "https://www.googleapis.com/auth/userinfo.email" - ], - "parameters": { - "projectId": { - "location": "path", - "description": "The project id.", - "required": true, - "type": "string" - }, - "jobId": { - "description": "The job id.", - "required": true, - "type": "string", - "location": "path" - }, - "location": { - "description": "The location which contains the job specified by job_id.", - "required": true, - "type": "string", - "location": "path" - } - } - }, - "sendCapture": { - "httpMethod": "POST", - "parameterOrder": [ - "projectId", - "location", - "jobId" - ], - "response": { - "$ref": "SendDebugCaptureResponse" - }, - "parameters": { - "location": { - "location": "path", - "description": "The location which contains the job specified by job_id.", - "required": true, - "type": "string" - }, - "projectId": { - "location": "path", - "description": "The project id.", - "required": true, - "type": "string" - }, - "jobId": { - "description": "The job id.", - "required": true, - "type": "string", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly", - "https://www.googleapis.com/auth/userinfo.email" - ], - "flatPath": "v1b3/projects/{projectId}/locations/{location}/jobs/{jobId}/debug/sendCapture", - "id": "dataflow.projects.locations.jobs.debug.sendCapture", - "path": "v1b3/projects/{projectId}/locations/{location}/jobs/{jobId}/debug/sendCapture", - "request": { - "$ref": "SendDebugCaptureRequest" - }, - "description": "Send encoded debug capture data for component." - } - } - }, - "workItems": { - "methods": { - "reportStatus": { - "response": { - "$ref": "ReportWorkItemStatusResponse" - }, - "parameterOrder": [ - "projectId", - "location", - "jobId" - ], - "httpMethod": "POST", - "parameters": { - "projectId": { - "description": "The project which owns the WorkItem's job.", - "required": true, - "type": "string", - "location": "path" - }, - "jobId": { - "description": "The job which the WorkItem is part of.", - "required": true, - "type": "string", - "location": "path" - }, - "location": { - "location": "path", - "description": "The location which contains the WorkItem's job.", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly", - "https://www.googleapis.com/auth/userinfo.email" - ], - "flatPath": "v1b3/projects/{projectId}/locations/{location}/jobs/{jobId}/workItems:reportStatus", - "path": "v1b3/projects/{projectId}/locations/{location}/jobs/{jobId}/workItems:reportStatus", - "id": "dataflow.projects.locations.jobs.workItems.reportStatus", - "request": { - "$ref": "ReportWorkItemStatusRequest" - }, - "description": "Reports the status of dataflow WorkItems leased by a worker." - }, - "lease": { - "request": { - "$ref": "LeaseWorkItemRequest" - }, - "description": "Leases a dataflow WorkItem to run.", - "response": { - "$ref": "LeaseWorkItemResponse" - }, - "parameterOrder": [ - "projectId", - "location", - "jobId" - ], - "httpMethod": "POST", - "parameters": { - "projectId": { - "description": "Identifies the project this worker belongs to.", - "required": true, - "type": "string", - "location": "path" - }, - "jobId": { - "description": "Identifies the workflow job this worker belongs to.", - "required": true, - "type": "string", - "location": "path" - }, - "location": { - "description": "The location which contains the WorkItem's job.", - "required": true, - "type": "string", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly", - "https://www.googleapis.com/auth/userinfo.email" - ], - "flatPath": "v1b3/projects/{projectId}/locations/{location}/jobs/{jobId}/workItems:lease", - "path": "v1b3/projects/{projectId}/locations/{location}/jobs/{jobId}/workItems:lease", - "id": "dataflow.projects.locations.jobs.workItems.lease" - } - } - }, - "messages": { - "methods": { - "list": { - "description": "Request the job status.", - "httpMethod": "GET", - "response": { - "$ref": "ListJobMessagesResponse" - }, - "parameterOrder": [ - "projectId", - "location", - "jobId" - ], - "parameters": { - "jobId": { - "location": "path", - "description": "The job to get messages about.", - "required": true, - "type": "string" - }, - "projectId": { - "description": "A project id.", - "required": true, - "type": "string", - "location": "path" - }, - "endTime": { - "location": "query", - "description": "Return only messages with timestamps \u003c end_time. The default is now\n(i.e. return up to the latest messages available).", - "format": "google-datetime", - "type": "string" - }, - "location": { - "location": "path", - "description": "The location which contains the job specified by job_id.", - "required": true, - "type": "string" - }, - "startTime": { - "location": "query", - "description": "If specified, return only messages with timestamps \u003e= start_time.\nThe default is the job creation time (i.e. beginning of messages).", - "format": "google-datetime", - "type": "string" - }, - "pageToken": { - "description": "If supplied, this should be the value of next_page_token returned\nby an earlier call. This will cause the next page of results to\nbe returned.", - "type": "string", - "location": "query" - }, - "pageSize": { - "description": "If specified, determines the maximum number of messages to\nreturn. If unspecified, the service may choose an appropriate\ndefault, or may return an arbitrarily large number of results.", - "format": "int32", - "type": "integer", - "location": "query" - }, - "minimumImportance": { - "location": "query", - "enum": [ - "JOB_MESSAGE_IMPORTANCE_UNKNOWN", - "JOB_MESSAGE_DEBUG", - "JOB_MESSAGE_DETAILED", - "JOB_MESSAGE_BASIC", - "JOB_MESSAGE_WARNING", - "JOB_MESSAGE_ERROR" - ], - "description": "Filter to only get messages with importance \u003e= level", - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly", - "https://www.googleapis.com/auth/userinfo.email" - ], - "flatPath": "v1b3/projects/{projectId}/locations/{location}/jobs/{jobId}/messages", - "id": "dataflow.projects.locations.jobs.messages.list", - "path": "v1b3/projects/{projectId}/locations/{location}/jobs/{jobId}/messages" - } - } - } - } - } - } - }, - "jobs": { - "methods": { - "getMetrics": { - "flatPath": "v1b3/projects/{projectId}/jobs/{jobId}/metrics", - "path": "v1b3/projects/{projectId}/jobs/{jobId}/metrics", - "id": "dataflow.projects.jobs.getMetrics", - "description": "Request the job status.", + "path": "v1b3/projects/{projectId}/jobs", + "request": { + "$ref": "Job" + }, "response": { - "$ref": "JobMetrics" + "$ref": "Job" }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly", + "https://www.googleapis.com/auth/userinfo.email" + ] + }, + "get": { + "description": "Gets the state of the specified Cloud Dataflow job.", + "flatPath": "v1b3/projects/{projectId}/jobs/{jobId}", + "httpMethod": "GET", + "id": "dataflow.projects.jobs.get", "parameterOrder": [ "projectId", "jobId" ], - "httpMethod": "GET", "parameters": { - "projectId": { - "description": "A project id.", - "required": true, - "type": "string", - "location": "path" - }, "jobId": { + "description": "The job ID.", "location": "path", + "required": true, + "type": "string" + }, + "location": { + "description": "The location that contains this job.", + "location": "query", + "type": "string" + }, + "projectId": { + "description": "The ID of the Cloud Platform project that the job belongs to.", + "location": "path", + "required": true, + "type": "string" + }, + "view": { + "description": "The level of information requested in response.", + "enum": [ + "JOB_VIEW_UNKNOWN", + "JOB_VIEW_SUMMARY", + "JOB_VIEW_ALL", + "JOB_VIEW_DESCRIPTION" + ], + "location": "query", + "type": "string" + } + }, + "path": "v1b3/projects/{projectId}/jobs/{jobId}", + "response": { + "$ref": "Job" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly", + "https://www.googleapis.com/auth/userinfo.email" + ] + }, + "getMetrics": { + "description": "Request the job status.", + "flatPath": "v1b3/projects/{projectId}/jobs/{jobId}/metrics", + "httpMethod": "GET", + "id": "dataflow.projects.jobs.getMetrics", + "parameterOrder": [ + "projectId", + "jobId" + ], + "parameters": { + "jobId": { "description": "The job to get messages for.", + "location": "path", "required": true, "type": "string" }, "location": { "description": "The location which contains the job specified by job_id.", - "type": "string", - "location": "query" + "location": "query", + "type": "string" + }, + "projectId": { + "description": "A project id.", + "location": "path", + "required": true, + "type": "string" }, "startTime": { "description": "Return only metric data that has changed since this time.\nDefault is to return all information about all metrics for the job.", "format": "google-datetime", - "type": "string", - "location": "query" + "location": "query", + "type": "string" } }, + "path": "v1b3/projects/{projectId}/jobs/{jobId}/metrics", + "response": { + "$ref": "JobMetrics" + }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/compute", @@ -920,278 +369,112 @@ "https://www.googleapis.com/auth/userinfo.email" ] }, - "get": { - "response": { - "$ref": "Job" - }, - "parameterOrder": [ - "projectId", - "jobId" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly", - "https://www.googleapis.com/auth/userinfo.email" - ], - "parameters": { - "location": { - "location": "query", - "description": "The location that contains this job.", - "type": "string" - }, - "projectId": { - "description": "The ID of the Cloud Platform project that the job belongs to.", - "required": true, - "type": "string", - "location": "path" - }, - "jobId": { - "location": "path", - "description": "The job ID.", - "required": true, - "type": "string" - }, - "view": { - "description": "The level of information requested in response.", - "type": "string", - "location": "query", - "enum": [ - "JOB_VIEW_UNKNOWN", - "JOB_VIEW_SUMMARY", - "JOB_VIEW_ALL", - "JOB_VIEW_DESCRIPTION" - ] - } - }, - "flatPath": "v1b3/projects/{projectId}/jobs/{jobId}", - "path": "v1b3/projects/{projectId}/jobs/{jobId}", - "id": "dataflow.projects.jobs.get", - "description": "Gets the state of the specified Cloud Dataflow job." - }, - "update": { - "request": { - "$ref": "Job" - }, - "description": "Updates the state of an existing Cloud Dataflow job.", - "response": { - "$ref": "Job" - }, - "parameterOrder": [ - "projectId", - "jobId" - ], - "httpMethod": "PUT", - "parameters": { - "location": { - "description": "The location that contains this job.", - "type": "string", - "location": "query" - }, - "projectId": { - "description": "The ID of the Cloud Platform project that the job belongs to.", - "required": true, - "type": "string", - "location": "path" - }, - "jobId": { - "description": "The job ID.", - "required": true, - "type": "string", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly", - "https://www.googleapis.com/auth/userinfo.email" - ], - "flatPath": "v1b3/projects/{projectId}/jobs/{jobId}", - "path": "v1b3/projects/{projectId}/jobs/{jobId}", - "id": "dataflow.projects.jobs.update" - }, - "aggregated": { - "description": "List the jobs of a project across all regions.", - "response": { - "$ref": "ListJobsResponse" - }, - "parameterOrder": [ - "projectId" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly", - "https://www.googleapis.com/auth/userinfo.email" - ], - "parameters": { - "projectId": { - "location": "path", - "description": "The project which owns the jobs.", - "required": true, - "type": "string" - }, - "filter": { - "description": "The kind of filter to use.", - "type": "string", - "location": "query", - "enum": [ - "UNKNOWN", - "ALL", - "TERMINATED", - "ACTIVE" - ] - }, - "location": { - "location": "query", - "description": "The location that contains this job.", - "type": "string" - }, - "pageToken": { - "description": "Set this to the 'next_page_token' field of a previous response\nto request additional results in a long list.", - "type": "string", - "location": "query" - }, - "pageSize": { - "location": "query", - "description": "If there are many jobs, limit response to at most this many.\nThe actual number of jobs returned will be the lesser of max_responses\nand an unspecified server-defined limit.", - "format": "int32", - "type": "integer" - }, - "view": { - "description": "Level of information requested in response. Default is `JOB_VIEW_SUMMARY`.", - "type": "string", - "location": "query", - "enum": [ - "JOB_VIEW_UNKNOWN", - "JOB_VIEW_SUMMARY", - "JOB_VIEW_ALL", - "JOB_VIEW_DESCRIPTION" - ] - } - }, - "flatPath": "v1b3/projects/{projectId}/jobs:aggregated", - "path": "v1b3/projects/{projectId}/jobs:aggregated", - "id": "dataflow.projects.jobs.aggregated" - }, "list": { "description": "List the jobs of a project in a given region.", - "response": { - "$ref": "ListJobsResponse" - }, + "flatPath": "v1b3/projects/{projectId}/jobs", + "httpMethod": "GET", + "id": "dataflow.projects.jobs.list", "parameterOrder": [ "projectId" ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly", - "https://www.googleapis.com/auth/userinfo.email" - ], "parameters": { - "projectId": { - "location": "path", - "description": "The project which owns the jobs.", - "required": true, - "type": "string" - }, "filter": { - "location": "query", + "description": "The kind of filter to use.", "enum": [ "UNKNOWN", "ALL", "TERMINATED", "ACTIVE" ], - "description": "The kind of filter to use.", + "location": "query", "type": "string" }, "location": { "description": "The location that contains this job.", - "type": "string", - "location": "query" + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "If there are many jobs, limit response to at most this many.\nThe actual number of jobs returned will be the lesser of max_responses\nand an unspecified server-defined limit.", + "format": "int32", + "location": "query", + "type": "integer" }, "pageToken": { "description": "Set this to the 'next_page_token' field of a previous response\nto request additional results in a long list.", - "type": "string", - "location": "query" - }, - "pageSize": { "location": "query", - "description": "If there are many jobs, limit response to at most this many.\nThe actual number of jobs returned will be the lesser of max_responses\nand an unspecified server-defined limit.", - "format": "int32", - "type": "integer" - }, - "view": { - "location": "query", - "enum": [ - "JOB_VIEW_UNKNOWN", - "JOB_VIEW_SUMMARY", - "JOB_VIEW_ALL", - "JOB_VIEW_DESCRIPTION" - ], - "description": "Level of information requested in response. Default is `JOB_VIEW_SUMMARY`.", "type": "string" - } - }, - "flatPath": "v1b3/projects/{projectId}/jobs", - "path": "v1b3/projects/{projectId}/jobs", - "id": "dataflow.projects.jobs.list" - }, - "create": { - "httpMethod": "POST", - "parameterOrder": [ - "projectId" - ], - "response": { - "$ref": "Job" - }, - "parameters": { - "location": { - "location": "query", - "description": "The location that contains this job.", - "type": "string" - }, - "replaceJobId": { - "description": "Deprecated. This field is now in the Job message.", - "type": "string", - "location": "query" }, "projectId": { - "description": "The ID of the Cloud Platform project that the job belongs to.", + "description": "The project which owns the jobs.", + "location": "path", "required": true, - "type": "string", - "location": "path" + "type": "string" }, "view": { - "location": "query", + "description": "Level of information requested in response. Default is `JOB_VIEW_SUMMARY`.", "enum": [ "JOB_VIEW_UNKNOWN", "JOB_VIEW_SUMMARY", "JOB_VIEW_ALL", "JOB_VIEW_DESCRIPTION" ], - "description": "The level of information requested in response.", + "location": "query", "type": "string" } }, + "path": "v1b3/projects/{projectId}/jobs", + "response": { + "$ref": "ListJobsResponse" + }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/compute", "https://www.googleapis.com/auth/compute.readonly", "https://www.googleapis.com/auth/userinfo.email" + ] + }, + "update": { + "description": "Updates the state of an existing Cloud Dataflow job.", + "flatPath": "v1b3/projects/{projectId}/jobs/{jobId}", + "httpMethod": "PUT", + "id": "dataflow.projects.jobs.update", + "parameterOrder": [ + "projectId", + "jobId" ], - "flatPath": "v1b3/projects/{projectId}/jobs", - "id": "dataflow.projects.jobs.create", - "path": "v1b3/projects/{projectId}/jobs", + "parameters": { + "jobId": { + "description": "The job ID.", + "location": "path", + "required": true, + "type": "string" + }, + "location": { + "description": "The location that contains this job.", + "location": "query", + "type": "string" + }, + "projectId": { + "description": "The ID of the Cloud Platform project that the job belongs to.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1b3/projects/{projectId}/jobs/{jobId}", "request": { "$ref": "Job" }, - "description": "Creates a Cloud Dataflow job." + "response": { + "$ref": "Job" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly", + "https://www.googleapis.com/auth/userinfo.email" + ] } }, "resources": { @@ -1199,71 +482,150 @@ "methods": { "getConfig": { "description": "Get encoded debug configuration for component. Not cacheable.", + "flatPath": "v1b3/projects/{projectId}/jobs/{jobId}/debug/getConfig", + "httpMethod": "POST", + "id": "dataflow.projects.jobs.debug.getConfig", + "parameterOrder": [ + "projectId", + "jobId" + ], + "parameters": { + "jobId": { + "description": "The job id.", + "location": "path", + "required": true, + "type": "string" + }, + "projectId": { + "description": "The project id.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1b3/projects/{projectId}/jobs/{jobId}/debug/getConfig", "request": { "$ref": "GetDebugConfigRequest" }, "response": { "$ref": "GetDebugConfigResponse" }, - "parameterOrder": [ - "projectId", - "jobId" - ], - "httpMethod": "POST", "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/compute", "https://www.googleapis.com/auth/compute.readonly", "https://www.googleapis.com/auth/userinfo.email" - ], - "parameters": { - "projectId": { - "description": "The project id.", - "required": true, - "type": "string", - "location": "path" - }, - "jobId": { - "location": "path", - "description": "The job id.", - "required": true, - "type": "string" - } - }, - "flatPath": "v1b3/projects/{projectId}/jobs/{jobId}/debug/getConfig", - "path": "v1b3/projects/{projectId}/jobs/{jobId}/debug/getConfig", - "id": "dataflow.projects.jobs.debug.getConfig" + ] }, "sendCapture": { - "flatPath": "v1b3/projects/{projectId}/jobs/{jobId}/debug/sendCapture", - "path": "v1b3/projects/{projectId}/jobs/{jobId}/debug/sendCapture", - "id": "dataflow.projects.jobs.debug.sendCapture", - "request": { - "$ref": "SendDebugCaptureRequest" - }, "description": "Send encoded debug capture data for component.", - "response": { - "$ref": "SendDebugCaptureResponse" - }, + "flatPath": "v1b3/projects/{projectId}/jobs/{jobId}/debug/sendCapture", + "httpMethod": "POST", + "id": "dataflow.projects.jobs.debug.sendCapture", "parameterOrder": [ "projectId", "jobId" ], - "httpMethod": "POST", "parameters": { - "projectId": { + "jobId": { + "description": "The job id.", "location": "path", - "description": "The project id.", "required": true, "type": "string" }, - "jobId": { - "description": "The job id.", + "projectId": { + "description": "The project id.", + "location": "path", "required": true, - "type": "string", - "location": "path" + "type": "string" } }, + "path": "v1b3/projects/{projectId}/jobs/{jobId}/debug/sendCapture", + "request": { + "$ref": "SendDebugCaptureRequest" + }, + "response": { + "$ref": "SendDebugCaptureResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly", + "https://www.googleapis.com/auth/userinfo.email" + ] + } + } + }, + "messages": { + "methods": { + "list": { + "description": "Request the job status.", + "flatPath": "v1b3/projects/{projectId}/jobs/{jobId}/messages", + "httpMethod": "GET", + "id": "dataflow.projects.jobs.messages.list", + "parameterOrder": [ + "projectId", + "jobId" + ], + "parameters": { + "endTime": { + "description": "Return only messages with timestamps \u003c end_time. The default is now\n(i.e. return up to the latest messages available).", + "format": "google-datetime", + "location": "query", + "type": "string" + }, + "jobId": { + "description": "The job to get messages about.", + "location": "path", + "required": true, + "type": "string" + }, + "location": { + "description": "The location which contains the job specified by job_id.", + "location": "query", + "type": "string" + }, + "minimumImportance": { + "description": "Filter to only get messages with importance \u003e= level", + "enum": [ + "JOB_MESSAGE_IMPORTANCE_UNKNOWN", + "JOB_MESSAGE_DEBUG", + "JOB_MESSAGE_DETAILED", + "JOB_MESSAGE_BASIC", + "JOB_MESSAGE_WARNING", + "JOB_MESSAGE_ERROR" + ], + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "If specified, determines the maximum number of messages to\nreturn. If unspecified, the service may choose an appropriate\ndefault, or may return an arbitrarily large number of results.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "If supplied, this should be the value of next_page_token returned\nby an earlier call. This will cause the next page of results to\nbe returned.", + "location": "query", + "type": "string" + }, + "projectId": { + "description": "A project id.", + "location": "path", + "required": true, + "type": "string" + }, + "startTime": { + "description": "If specified, return only messages with timestamps \u003e= start_time.\nThe default is the job creation time (i.e. beginning of messages).", + "format": "google-datetime", + "location": "query", + "type": "string" + } + }, + "path": "v1b3/projects/{projectId}/jobs/{jobId}/messages", + "response": { + "$ref": "ListJobMessagesResponse" + }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/compute", @@ -1275,1045 +637,1047 @@ }, "workItems": { "methods": { - "reportStatus": { - "response": { - "$ref": "ReportWorkItemStatusResponse" - }, + "lease": { + "description": "Leases a dataflow WorkItem to run.", + "flatPath": "v1b3/projects/{projectId}/jobs/{jobId}/workItems:lease", + "httpMethod": "POST", + "id": "dataflow.projects.jobs.workItems.lease", "parameterOrder": [ "projectId", "jobId" ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly", - "https://www.googleapis.com/auth/userinfo.email" - ], "parameters": { - "projectId": { - "description": "The project which owns the WorkItem's job.", - "required": true, - "type": "string", - "location": "path" - }, "jobId": { - "description": "The job which the WorkItem is part of.", + "description": "Identifies the workflow job this worker belongs to.", + "location": "path", "required": true, - "type": "string", - "location": "path" + "type": "string" + }, + "projectId": { + "description": "Identifies the project this worker belongs to.", + "location": "path", + "required": true, + "type": "string" } }, - "flatPath": "v1b3/projects/{projectId}/jobs/{jobId}/workItems:reportStatus", - "path": "v1b3/projects/{projectId}/jobs/{jobId}/workItems:reportStatus", - "id": "dataflow.projects.jobs.workItems.reportStatus", - "description": "Reports the status of dataflow WorkItems leased by a worker.", - "request": { - "$ref": "ReportWorkItemStatusRequest" - } - }, - "lease": { + "path": "v1b3/projects/{projectId}/jobs/{jobId}/workItems:lease", "request": { "$ref": "LeaseWorkItemRequest" }, - "description": "Leases a dataflow WorkItem to run.", - "httpMethod": "POST", - "parameterOrder": [ - "projectId", - "jobId" - ], "response": { "$ref": "LeaseWorkItemResponse" }, - "parameters": { - "projectId": { - "description": "Identifies the project this worker belongs to.", - "required": true, - "type": "string", - "location": "path" - }, - "jobId": { - "description": "Identifies the workflow job this worker belongs to.", - "required": true, - "type": "string", - "location": "path" - } - }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/compute", "https://www.googleapis.com/auth/compute.readonly", "https://www.googleapis.com/auth/userinfo.email" - ], - "flatPath": "v1b3/projects/{projectId}/jobs/{jobId}/workItems:lease", - "id": "dataflow.projects.jobs.workItems.lease", - "path": "v1b3/projects/{projectId}/jobs/{jobId}/workItems:lease" - } - } - }, - "messages": { - "methods": { - "list": { - "description": "Request the job status.", - "response": { - "$ref": "ListJobMessagesResponse" - }, + ] + }, + "reportStatus": { + "description": "Reports the status of dataflow WorkItems leased by a worker.", + "flatPath": "v1b3/projects/{projectId}/jobs/{jobId}/workItems:reportStatus", + "httpMethod": "POST", + "id": "dataflow.projects.jobs.workItems.reportStatus", "parameterOrder": [ "projectId", "jobId" ], - "httpMethod": "GET", "parameters": { - "projectId": { - "description": "A project id.", - "required": true, - "type": "string", - "location": "path" - }, "jobId": { + "description": "The job which the WorkItem is part of.", + "location": "path", + "required": true, + "type": "string" + }, + "projectId": { + "description": "The project which owns the WorkItem's job.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1b3/projects/{projectId}/jobs/{jobId}/workItems:reportStatus", + "request": { + "$ref": "ReportWorkItemStatusRequest" + }, + "response": { + "$ref": "ReportWorkItemStatusResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly", + "https://www.googleapis.com/auth/userinfo.email" + ] + } + } + } + } + }, + "locations": { + "methods": { + "workerMessages": { + "description": "Send a worker_message to the service.", + "flatPath": "v1b3/projects/{projectId}/locations/{location}/WorkerMessages", + "httpMethod": "POST", + "id": "dataflow.projects.locations.workerMessages", + "parameterOrder": [ + "projectId", + "location" + ], + "parameters": { + "location": { + "description": "The location which contains the job", + "location": "path", + "required": true, + "type": "string" + }, + "projectId": { + "description": "The project to send the WorkerMessages to.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1b3/projects/{projectId}/locations/{location}/WorkerMessages", + "request": { + "$ref": "SendWorkerMessagesRequest" + }, + "response": { + "$ref": "SendWorkerMessagesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly", + "https://www.googleapis.com/auth/userinfo.email" + ] + } + }, + "resources": { + "jobs": { + "methods": { + "create": { + "description": "Creates a Cloud Dataflow job.", + "flatPath": "v1b3/projects/{projectId}/locations/{location}/jobs", + "httpMethod": "POST", + "id": "dataflow.projects.locations.jobs.create", + "parameterOrder": [ + "projectId", + "location" + ], + "parameters": { + "location": { + "description": "The location that contains this job.", + "location": "path", + "required": true, + "type": "string" + }, + "projectId": { + "description": "The ID of the Cloud Platform project that the job belongs to.", + "location": "path", + "required": true, + "type": "string" + }, + "replaceJobId": { + "description": "Deprecated. This field is now in the Job message.", + "location": "query", + "type": "string" + }, + "view": { + "description": "The level of information requested in response.", + "enum": [ + "JOB_VIEW_UNKNOWN", + "JOB_VIEW_SUMMARY", + "JOB_VIEW_ALL", + "JOB_VIEW_DESCRIPTION" + ], + "location": "query", + "type": "string" + } + }, + "path": "v1b3/projects/{projectId}/locations/{location}/jobs", + "request": { + "$ref": "Job" + }, + "response": { + "$ref": "Job" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly", + "https://www.googleapis.com/auth/userinfo.email" + ] + }, + "get": { + "description": "Gets the state of the specified Cloud Dataflow job.", + "flatPath": "v1b3/projects/{projectId}/locations/{location}/jobs/{jobId}", + "httpMethod": "GET", + "id": "dataflow.projects.locations.jobs.get", + "parameterOrder": [ + "projectId", + "location", + "jobId" + ], + "parameters": { + "jobId": { + "description": "The job ID.", "location": "path", - "description": "The job to get messages about.", "required": true, "type": "string" }, "location": { - "location": "query", - "description": "The location which contains the job specified by job_id.", + "description": "The location that contains this job.", + "location": "path", + "required": true, "type": "string" }, - "endTime": { - "description": "Return only messages with timestamps \u003c end_time. The default is now\n(i.e. return up to the latest messages available).", - "format": "google-datetime", - "type": "string", - "location": "query" - }, - "pageToken": { - "location": "query", - "description": "If supplied, this should be the value of next_page_token returned\nby an earlier call. This will cause the next page of results to\nbe returned.", + "projectId": { + "description": "The ID of the Cloud Platform project that the job belongs to.", + "location": "path", + "required": true, "type": "string" }, - "startTime": { - "location": "query", - "description": "If specified, return only messages with timestamps \u003e= start_time.\nThe default is the job creation time (i.e. beginning of messages).", - "format": "google-datetime", - "type": "string" - }, - "pageSize": { - "location": "query", - "description": "If specified, determines the maximum number of messages to\nreturn. If unspecified, the service may choose an appropriate\ndefault, or may return an arbitrarily large number of results.", - "format": "int32", - "type": "integer" - }, - "minimumImportance": { - "location": "query", + "view": { + "description": "The level of information requested in response.", "enum": [ - "JOB_MESSAGE_IMPORTANCE_UNKNOWN", - "JOB_MESSAGE_DEBUG", - "JOB_MESSAGE_DETAILED", - "JOB_MESSAGE_BASIC", - "JOB_MESSAGE_WARNING", - "JOB_MESSAGE_ERROR" + "JOB_VIEW_UNKNOWN", + "JOB_VIEW_SUMMARY", + "JOB_VIEW_ALL", + "JOB_VIEW_DESCRIPTION" ], - "description": "Filter to only get messages with importance \u003e= level", + "location": "query", "type": "string" } }, + "path": "v1b3/projects/{projectId}/locations/{location}/jobs/{jobId}", + "response": { + "$ref": "Job" + }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/compute", "https://www.googleapis.com/auth/compute.readonly", "https://www.googleapis.com/auth/userinfo.email" + ] + }, + "getMetrics": { + "description": "Request the job status.", + "flatPath": "v1b3/projects/{projectId}/locations/{location}/jobs/{jobId}/metrics", + "httpMethod": "GET", + "id": "dataflow.projects.locations.jobs.getMetrics", + "parameterOrder": [ + "projectId", + "location", + "jobId" ], - "flatPath": "v1b3/projects/{projectId}/jobs/{jobId}/messages", - "path": "v1b3/projects/{projectId}/jobs/{jobId}/messages", - "id": "dataflow.projects.jobs.messages.list" + "parameters": { + "jobId": { + "description": "The job to get messages for.", + "location": "path", + "required": true, + "type": "string" + }, + "location": { + "description": "The location which contains the job specified by job_id.", + "location": "path", + "required": true, + "type": "string" + }, + "projectId": { + "description": "A project id.", + "location": "path", + "required": true, + "type": "string" + }, + "startTime": { + "description": "Return only metric data that has changed since this time.\nDefault is to return all information about all metrics for the job.", + "format": "google-datetime", + "location": "query", + "type": "string" + } + }, + "path": "v1b3/projects/{projectId}/locations/{location}/jobs/{jobId}/metrics", + "response": { + "$ref": "JobMetrics" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly", + "https://www.googleapis.com/auth/userinfo.email" + ] + }, + "list": { + "description": "List the jobs of a project in a given region.", + "flatPath": "v1b3/projects/{projectId}/locations/{location}/jobs", + "httpMethod": "GET", + "id": "dataflow.projects.locations.jobs.list", + "parameterOrder": [ + "projectId", + "location" + ], + "parameters": { + "filter": { + "description": "The kind of filter to use.", + "enum": [ + "UNKNOWN", + "ALL", + "TERMINATED", + "ACTIVE" + ], + "location": "query", + "type": "string" + }, + "location": { + "description": "The location that contains this job.", + "location": "path", + "required": true, + "type": "string" + }, + "pageSize": { + "description": "If there are many jobs, limit response to at most this many.\nThe actual number of jobs returned will be the lesser of max_responses\nand an unspecified server-defined limit.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Set this to the 'next_page_token' field of a previous response\nto request additional results in a long list.", + "location": "query", + "type": "string" + }, + "projectId": { + "description": "The project which owns the jobs.", + "location": "path", + "required": true, + "type": "string" + }, + "view": { + "description": "Level of information requested in response. Default is `JOB_VIEW_SUMMARY`.", + "enum": [ + "JOB_VIEW_UNKNOWN", + "JOB_VIEW_SUMMARY", + "JOB_VIEW_ALL", + "JOB_VIEW_DESCRIPTION" + ], + "location": "query", + "type": "string" + } + }, + "path": "v1b3/projects/{projectId}/locations/{location}/jobs", + "response": { + "$ref": "ListJobsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly", + "https://www.googleapis.com/auth/userinfo.email" + ] + }, + "update": { + "description": "Updates the state of an existing Cloud Dataflow job.", + "flatPath": "v1b3/projects/{projectId}/locations/{location}/jobs/{jobId}", + "httpMethod": "PUT", + "id": "dataflow.projects.locations.jobs.update", + "parameterOrder": [ + "projectId", + "location", + "jobId" + ], + "parameters": { + "jobId": { + "description": "The job ID.", + "location": "path", + "required": true, + "type": "string" + }, + "location": { + "description": "The location that contains this job.", + "location": "path", + "required": true, + "type": "string" + }, + "projectId": { + "description": "The ID of the Cloud Platform project that the job belongs to.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1b3/projects/{projectId}/locations/{location}/jobs/{jobId}", + "request": { + "$ref": "Job" + }, + "response": { + "$ref": "Job" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly", + "https://www.googleapis.com/auth/userinfo.email" + ] + } + }, + "resources": { + "debug": { + "methods": { + "getConfig": { + "description": "Get encoded debug configuration for component. Not cacheable.", + "flatPath": "v1b3/projects/{projectId}/locations/{location}/jobs/{jobId}/debug/getConfig", + "httpMethod": "POST", + "id": "dataflow.projects.locations.jobs.debug.getConfig", + "parameterOrder": [ + "projectId", + "location", + "jobId" + ], + "parameters": { + "jobId": { + "description": "The job id.", + "location": "path", + "required": true, + "type": "string" + }, + "location": { + "description": "The location which contains the job specified by job_id.", + "location": "path", + "required": true, + "type": "string" + }, + "projectId": { + "description": "The project id.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1b3/projects/{projectId}/locations/{location}/jobs/{jobId}/debug/getConfig", + "request": { + "$ref": "GetDebugConfigRequest" + }, + "response": { + "$ref": "GetDebugConfigResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly", + "https://www.googleapis.com/auth/userinfo.email" + ] + }, + "sendCapture": { + "description": "Send encoded debug capture data for component.", + "flatPath": "v1b3/projects/{projectId}/locations/{location}/jobs/{jobId}/debug/sendCapture", + "httpMethod": "POST", + "id": "dataflow.projects.locations.jobs.debug.sendCapture", + "parameterOrder": [ + "projectId", + "location", + "jobId" + ], + "parameters": { + "jobId": { + "description": "The job id.", + "location": "path", + "required": true, + "type": "string" + }, + "location": { + "description": "The location which contains the job specified by job_id.", + "location": "path", + "required": true, + "type": "string" + }, + "projectId": { + "description": "The project id.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1b3/projects/{projectId}/locations/{location}/jobs/{jobId}/debug/sendCapture", + "request": { + "$ref": "SendDebugCaptureRequest" + }, + "response": { + "$ref": "SendDebugCaptureResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly", + "https://www.googleapis.com/auth/userinfo.email" + ] + } + } + }, + "messages": { + "methods": { + "list": { + "description": "Request the job status.", + "flatPath": "v1b3/projects/{projectId}/locations/{location}/jobs/{jobId}/messages", + "httpMethod": "GET", + "id": "dataflow.projects.locations.jobs.messages.list", + "parameterOrder": [ + "projectId", + "location", + "jobId" + ], + "parameters": { + "endTime": { + "description": "Return only messages with timestamps \u003c end_time. The default is now\n(i.e. return up to the latest messages available).", + "format": "google-datetime", + "location": "query", + "type": "string" + }, + "jobId": { + "description": "The job to get messages about.", + "location": "path", + "required": true, + "type": "string" + }, + "location": { + "description": "The location which contains the job specified by job_id.", + "location": "path", + "required": true, + "type": "string" + }, + "minimumImportance": { + "description": "Filter to only get messages with importance \u003e= level", + "enum": [ + "JOB_MESSAGE_IMPORTANCE_UNKNOWN", + "JOB_MESSAGE_DEBUG", + "JOB_MESSAGE_DETAILED", + "JOB_MESSAGE_BASIC", + "JOB_MESSAGE_WARNING", + "JOB_MESSAGE_ERROR" + ], + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "If specified, determines the maximum number of messages to\nreturn. If unspecified, the service may choose an appropriate\ndefault, or may return an arbitrarily large number of results.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "If supplied, this should be the value of next_page_token returned\nby an earlier call. This will cause the next page of results to\nbe returned.", + "location": "query", + "type": "string" + }, + "projectId": { + "description": "A project id.", + "location": "path", + "required": true, + "type": "string" + }, + "startTime": { + "description": "If specified, return only messages with timestamps \u003e= start_time.\nThe default is the job creation time (i.e. beginning of messages).", + "format": "google-datetime", + "location": "query", + "type": "string" + } + }, + "path": "v1b3/projects/{projectId}/locations/{location}/jobs/{jobId}/messages", + "response": { + "$ref": "ListJobMessagesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly", + "https://www.googleapis.com/auth/userinfo.email" + ] + } + } + }, + "workItems": { + "methods": { + "lease": { + "description": "Leases a dataflow WorkItem to run.", + "flatPath": "v1b3/projects/{projectId}/locations/{location}/jobs/{jobId}/workItems:lease", + "httpMethod": "POST", + "id": "dataflow.projects.locations.jobs.workItems.lease", + "parameterOrder": [ + "projectId", + "location", + "jobId" + ], + "parameters": { + "jobId": { + "description": "Identifies the workflow job this worker belongs to.", + "location": "path", + "required": true, + "type": "string" + }, + "location": { + "description": "The location which contains the WorkItem's job.", + "location": "path", + "required": true, + "type": "string" + }, + "projectId": { + "description": "Identifies the project this worker belongs to.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1b3/projects/{projectId}/locations/{location}/jobs/{jobId}/workItems:lease", + "request": { + "$ref": "LeaseWorkItemRequest" + }, + "response": { + "$ref": "LeaseWorkItemResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly", + "https://www.googleapis.com/auth/userinfo.email" + ] + }, + "reportStatus": { + "description": "Reports the status of dataflow WorkItems leased by a worker.", + "flatPath": "v1b3/projects/{projectId}/locations/{location}/jobs/{jobId}/workItems:reportStatus", + "httpMethod": "POST", + "id": "dataflow.projects.locations.jobs.workItems.reportStatus", + "parameterOrder": [ + "projectId", + "location", + "jobId" + ], + "parameters": { + "jobId": { + "description": "The job which the WorkItem is part of.", + "location": "path", + "required": true, + "type": "string" + }, + "location": { + "description": "The location which contains the WorkItem's job.", + "location": "path", + "required": true, + "type": "string" + }, + "projectId": { + "description": "The project which owns the WorkItem's job.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1b3/projects/{projectId}/locations/{location}/jobs/{jobId}/workItems:reportStatus", + "request": { + "$ref": "ReportWorkItemStatusRequest" + }, + "response": { + "$ref": "ReportWorkItemStatusResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly", + "https://www.googleapis.com/auth/userinfo.email" + ] + } + } } } + }, + "templates": { + "methods": { + "create": { + "description": "Creates a Cloud Dataflow job from a template.", + "flatPath": "v1b3/projects/{projectId}/locations/{location}/templates", + "httpMethod": "POST", + "id": "dataflow.projects.locations.templates.create", + "parameterOrder": [ + "projectId", + "location" + ], + "parameters": { + "location": { + "description": "The location to which to direct the request.", + "location": "path", + "required": true, + "type": "string" + }, + "projectId": { + "description": "Required. The ID of the Cloud Platform project that the job belongs to.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1b3/projects/{projectId}/locations/{location}/templates", + "request": { + "$ref": "CreateJobFromTemplateRequest" + }, + "response": { + "$ref": "Job" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly", + "https://www.googleapis.com/auth/userinfo.email" + ] + }, + "get": { + "description": "Get the template associated with a template.", + "flatPath": "v1b3/projects/{projectId}/locations/{location}/templates:get", + "httpMethod": "GET", + "id": "dataflow.projects.locations.templates.get", + "parameterOrder": [ + "projectId", + "location" + ], + "parameters": { + "gcsPath": { + "description": "Required. A Cloud Storage path to the template from which to\ncreate the job.\nMust be a valid Cloud Storage URL, beginning with `gs://`.", + "location": "query", + "type": "string" + }, + "location": { + "description": "The location to which to direct the request.", + "location": "path", + "required": true, + "type": "string" + }, + "projectId": { + "description": "Required. The ID of the Cloud Platform project that the job belongs to.", + "location": "path", + "required": true, + "type": "string" + }, + "view": { + "description": "The view to retrieve. Defaults to METADATA_ONLY.", + "enum": [ + "METADATA_ONLY" + ], + "location": "query", + "type": "string" + } + }, + "path": "v1b3/projects/{projectId}/locations/{location}/templates:get", + "response": { + "$ref": "GetTemplateResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly", + "https://www.googleapis.com/auth/userinfo.email" + ] + }, + "launch": { + "description": "Launch a template.", + "flatPath": "v1b3/projects/{projectId}/locations/{location}/templates:launch", + "httpMethod": "POST", + "id": "dataflow.projects.locations.templates.launch", + "parameterOrder": [ + "projectId", + "location" + ], + "parameters": { + "gcsPath": { + "description": "Required. A Cloud Storage path to the template from which to create\nthe job.\nMust be valid Cloud Storage URL, beginning with 'gs://'.", + "location": "query", + "type": "string" + }, + "location": { + "description": "The location to which to direct the request.", + "location": "path", + "required": true, + "type": "string" + }, + "projectId": { + "description": "Required. The ID of the Cloud Platform project that the job belongs to.", + "location": "path", + "required": true, + "type": "string" + }, + "validateOnly": { + "description": "If true, the request is validated but not actually executed.\nDefaults to false.", + "location": "query", + "type": "boolean" + } + }, + "path": "v1b3/projects/{projectId}/locations/{location}/templates:launch", + "request": { + "$ref": "LaunchTemplateParameters" + }, + "response": { + "$ref": "LaunchTemplateResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly", + "https://www.googleapis.com/auth/userinfo.email" + ] + } + } + } + } + }, + "templates": { + "methods": { + "create": { + "description": "Creates a Cloud Dataflow job from a template.", + "flatPath": "v1b3/projects/{projectId}/templates", + "httpMethod": "POST", + "id": "dataflow.projects.templates.create", + "parameterOrder": [ + "projectId" + ], + "parameters": { + "projectId": { + "description": "Required. The ID of the Cloud Platform project that the job belongs to.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1b3/projects/{projectId}/templates", + "request": { + "$ref": "CreateJobFromTemplateRequest" + }, + "response": { + "$ref": "Job" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly", + "https://www.googleapis.com/auth/userinfo.email" + ] + }, + "get": { + "description": "Get the template associated with a template.", + "flatPath": "v1b3/projects/{projectId}/templates:get", + "httpMethod": "GET", + "id": "dataflow.projects.templates.get", + "parameterOrder": [ + "projectId" + ], + "parameters": { + "gcsPath": { + "description": "Required. A Cloud Storage path to the template from which to\ncreate the job.\nMust be a valid Cloud Storage URL, beginning with `gs://`.", + "location": "query", + "type": "string" + }, + "location": { + "description": "The location to which to direct the request.", + "location": "query", + "type": "string" + }, + "projectId": { + "description": "Required. The ID of the Cloud Platform project that the job belongs to.", + "location": "path", + "required": true, + "type": "string" + }, + "view": { + "description": "The view to retrieve. Defaults to METADATA_ONLY.", + "enum": [ + "METADATA_ONLY" + ], + "location": "query", + "type": "string" + } + }, + "path": "v1b3/projects/{projectId}/templates:get", + "response": { + "$ref": "GetTemplateResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly", + "https://www.googleapis.com/auth/userinfo.email" + ] + }, + "launch": { + "description": "Launch a template.", + "flatPath": "v1b3/projects/{projectId}/templates:launch", + "httpMethod": "POST", + "id": "dataflow.projects.templates.launch", + "parameterOrder": [ + "projectId" + ], + "parameters": { + "gcsPath": { + "description": "Required. A Cloud Storage path to the template from which to create\nthe job.\nMust be valid Cloud Storage URL, beginning with 'gs://'.", + "location": "query", + "type": "string" + }, + "location": { + "description": "The location to which to direct the request.", + "location": "query", + "type": "string" + }, + "projectId": { + "description": "Required. The ID of the Cloud Platform project that the job belongs to.", + "location": "path", + "required": true, + "type": "string" + }, + "validateOnly": { + "description": "If true, the request is validated but not actually executed.\nDefaults to false.", + "location": "query", + "type": "boolean" + } + }, + "path": "v1b3/projects/{projectId}/templates:launch", + "request": { + "$ref": "LaunchTemplateParameters" + }, + "response": { + "$ref": "LaunchTemplateResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly", + "https://www.googleapis.com/auth/userinfo.email" + ] } } } } } }, - "parameters": { - "bearer_token": { - "description": "OAuth bearer token.", - "type": "string", - "location": "query" - }, - "oauth_token": { - "location": "query", - "description": "OAuth 2.0 token for the current user.", - "type": "string" - }, - "upload_protocol": { - "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", - "type": "string", - "location": "query" - }, - "prettyPrint": { - "location": "query", - "description": "Returns response with indentations and line breaks.", - "type": "boolean", - "default": "true" - }, - "uploadType": { - "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", - "type": "string", - "location": "query" - }, - "fields": { - "location": "query", - "description": "Selector specifying which fields to include in a partial response.", - "type": "string" - }, - "callback": { - "location": "query", - "description": "JSONP", - "type": "string" - }, - "$.xgafv": { - "enum": [ - "1", - "2" - ], - "description": "V1 error format.", - "type": "string", - "enumDescriptions": [ - "v1 error format", - "v2 error format" - ], - "location": "query" - }, - "alt": { - "enum": [ - "json", - "media", - "proto" - ], - "type": "string", - "enumDescriptions": [ - "Responses with Content-Type of application/json", - "Media download with context-dependent Content-Type", - "Responses with Content-Type of application/x-protobuf" - ], - "location": "query", - "description": "Data format for response.", - "default": "json" - }, - "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.", - "type": "string", - "location": "query" - }, - "access_token": { - "location": "query", - "description": "OAuth access token.", - "type": "string" - }, - "quotaUser": { - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", - "type": "string", - "location": "query" - }, - "pp": { - "location": "query", - "description": "Pretty-print response.", - "type": "boolean", - "default": "true" - } - }, + "revision": "20180314", + "rootUrl": "https://dataflow.googleapis.com/", "schemas": { - "MetricStructuredName": { - "description": "Identifies a metric, by describing the source which generated the\nmetric.", - "type": "object", + "ApproximateProgress": { + "description": "Obsolete in favor of ApproximateReportedProgress and ApproximateSplitRequest.", + "id": "ApproximateProgress", "properties": { - "origin": { - "description": "Origin (namespace) of metric name. May be blank for user-define metrics;\nwill be \"dataflow\" for metrics defined by the Dataflow service or SDK.", - "type": "string" + "percentComplete": { + "description": "Obsolete.", + "format": "float", + "type": "number" }, - "name": { - "description": "Worker-defined metric name.", - "type": "string" + "position": { + "$ref": "Position", + "description": "Obsolete." }, - "context": { - "additionalProperties": { - "type": "string" - }, - "description": "Zero or more labeled fields which identify the part of the job this\nmetric is associated with, such as the name of a step or collection.\n\nFor example, built-in counters associated with steps will have\ncontext['step'] = \u003cstep-name\u003e. Counters associated with PCollections\nin the SDK will have context['pcollection'] = \u003cpcollection-name\u003e.", - "type": "object" - } - }, - "id": "MetricStructuredName" - }, - "SeqMapTaskOutputInfo": { - "description": "Information about an output of a SeqMapTask.", - "type": "object", - "properties": { - "tag": { - "description": "The id of the TupleTag the user code will tag the output value by.", - "type": "string" - }, - "sink": { - "description": "The sink to write the output value to.", - "$ref": "Sink" - } - }, - "id": "SeqMapTaskOutputInfo" - }, - "JobExecutionStageInfo": { - "description": "Contains information about how a particular\ngoogle.dataflow.v1beta3.Step will be executed.", - "type": "object", - "properties": { - "stepName": { - "description": "The steps associated with the execution stage.\nNote that stages may have several steps, and that a given step\nmight be run by more than one stage.", - "type": "array", - "items": { - "type": "string" - } - } - }, - "id": "JobExecutionStageInfo" - }, - "KeyRangeLocation": { - "description": "Location information for a specific key-range of a sharded computation.\nCurrently we only support UTF-8 character splits to simplify encoding into\nJSON.", - "type": "object", - "properties": { - "end": { - "description": "The end (exclusive) of the key range.", - "type": "string" - }, - "deprecatedPersistentDirectory": { - "description": "DEPRECATED. The location of the persistent state for this range, as a\npersistent directory in the worker local filesystem.", - "type": "string" - }, - "deliveryEndpoint": { - "description": "The physical location of this range assignment to be used for\nstreaming computation cross-worker message delivery.", - "type": "string" - }, - "start": { - "description": "The start (inclusive) of the key range.", - "type": "string" - }, - "dataDisk": { - "description": "The name of the data disk where data for this range is stored.\nThis name is local to the Google Cloud Platform project and uniquely\nidentifies the disk within that project, for example\n\"myproject-1014-104817-4c2-harness-0-disk-1\".", + "remainingTime": { + "description": "Obsolete.", + "format": "google-duration", "type": "string" } }, - "id": "KeyRangeLocation" + "type": "object" }, - "SourceGetMetadataRequest": { - "description": "A request to compute the SourceMetadata of a Source.", - "type": "object", + "ApproximateReportedProgress": { + "description": "A progress measurement of a WorkItem by a worker.", + "id": "ApproximateReportedProgress", "properties": { - "source": { - "$ref": "Source", - "description": "Specification of the source whose metadata should be computed." - } - }, - "id": "SourceGetMetadataRequest" - }, - "NameAndKind": { - "description": "Basic metadata about a counter.", - "type": "object", - "properties": { - "name": { - "description": "Name of the counter.", - "type": "string" + "consumedParallelism": { + "$ref": "ReportedParallelism", + "description": "Total amount of parallelism in the portion of input of this task that has\nalready been consumed and is no longer active. In the first two examples\nabove (see remaining_parallelism), the value should be 29 or 2\nrespectively. The sum of remaining_parallelism and consumed_parallelism\nshould equal the total amount of parallelism in this work item. If\nspecified, must be finite." }, - "kind": { - "enumDescriptions": [ - "Counter aggregation kind was not set.", - "Aggregated value is the sum of all contributed values.", - "Aggregated value is the max of all contributed values.", - "Aggregated value is the min of all contributed values.", - "Aggregated value is the mean of all contributed values.", - "Aggregated value represents the logical 'or' of all contributed values.", - "Aggregated value represents the logical 'and' of all contributed values.", - "Aggregated value is a set of unique contributed values.", - "Aggregated value captures statistics about a distribution." - ], - "enum": [ - "INVALID", - "SUM", - "MAX", - "MIN", - "MEAN", - "OR", - "AND", - "SET", - "DISTRIBUTION" - ], - "description": "Counter aggregation kind.", - "type": "string" - } - }, - "id": "NameAndKind" - }, - "SeqMapTask": { - "description": "Describes a particular function to invoke.", - "type": "object", - "properties": { - "name": { - "description": "The user-provided name of the SeqDo operation.", - "type": "string" - }, - "outputInfos": { - "description": "Information about each of the outputs.", - "type": "array", - "items": { - "$ref": "SeqMapTaskOutputInfo" - } - }, - "inputs": { - "description": "Information about each of the inputs.", - "type": "array", - "items": { - "$ref": "SideInputInfo" - } - }, - "stageName": { - "description": "System-defined name of the stage containing the SeqDo operation.\nUnique across the workflow.", - "type": "string" - }, - "systemName": { - "description": "System-defined name of the SeqDo operation.\nUnique across the workflow.", - "type": "string" - }, - "userFn": { - "description": "The user function to invoke.", - "type": "object", - "additionalProperties": { - "description": "Properties of the object.", - "type": "any" - } - } - }, - "id": "SeqMapTask" - }, - "WorkerMessageCode": { - "description": "A message code is used to report status and error messages to the service.\nThe message codes are intended to be machine readable. The service will\ntake care of translating these into user understandable messages if\nnecessary.\n\nExample use cases:\n 1. Worker processes reporting successful startup.\n 2. Worker processes reporting specific errors (e.g. package staging\n failure).", - "type": "object", - "properties": { - "code": { - "description": "The code is a string intended for consumption by a machine that identifies\nthe type of message being sent.\nExamples:\n 1. \"HARNESS_STARTED\" might be used to indicate the worker harness has\n started.\n 2. \"GCS_DOWNLOAD_ERROR\" might be used to indicate an error downloading\n a GCS file as part of the boot process of one of the worker containers.\n\nThis is a string and not an enum to make it easy to add new codes without\nwaiting for an API change.", - "type": "string" - }, - "parameters": { - "additionalProperties": { - "description": "Properties of the object.", - "type": "any" - }, - "description": "Parameters contains specific information about the code.\n\nThis is a struct to allow parameters of different types.\n\nExamples:\n 1. For a \"HARNESS_STARTED\" message parameters might provide the name\n of the worker and additional data like timing information.\n 2. For a \"GCS_DOWNLOAD_ERROR\" parameters might contain fields listing\n the GCS objects being downloaded and fields containing errors.\n\nIn general complex data structures should be avoided. If a worker\nneeds to send a specific and complicated data structure then please\nconsider defining a new proto and adding it to the data oneof in\nWorkerMessageResponse.\n\nConventions:\n Parameters should only be used for information that isn't typically passed\n as a label.\n hostname and other worker identifiers should almost always be passed\n as labels since they will be included on most messages.", - "type": "object" - } - }, - "id": "WorkerMessageCode" - }, - "CustomSourceLocation": { - "description": "Identifies the location of a custom souce.", - "type": "object", - "properties": { - "stateful": { - "description": "Whether this source is stateful.", - "type": "boolean" - } - }, - "id": "CustomSourceLocation" - }, - "MapTask": { - "description": "MapTask consists of an ordered set of instructions, each of which\ndescribes one particular low-level operation for the worker to\nperform in order to accomplish the MapTask's WorkItem.\n\nEach instruction must appear in the list before any instructions which\ndepends on its output.", - "type": "object", - "properties": { - "systemName": { - "description": "System-defined name of this MapTask.\nUnique across the workflow.", - "type": "string" - }, - "stageName": { - "description": "System-defined name of the stage containing this MapTask.\nUnique across the workflow.", - "type": "string" - }, - "instructions": { - "description": "The instructions in the MapTask.", - "type": "array", - "items": { - "$ref": "ParallelInstruction" - } - } - }, - "id": "MapTask" - }, - "FloatingPointMean": { - "description": "A representation of a floating point mean metric contribution.", - "type": "object", - "properties": { - "sum": { - "description": "The sum of all values being aggregated.", + "fractionConsumed": { + "description": "Completion as fraction of the input consumed, from 0.0 (beginning, nothing\nconsumed), to 1.0 (end of the input, entire input consumed).", "format": "double", "type": "number" }, - "count": { - "description": "The number of values being aggregated.", - "$ref": "SplitInt64" + "position": { + "$ref": "Position", + "description": "A Position within the work to represent a progress." + }, + "remainingParallelism": { + "$ref": "ReportedParallelism", + "description": "Total amount of parallelism in the input of this task that remains,\n(i.e. can be delegated to this task and any new tasks via dynamic\nsplitting). Always at least 1 for non-finished work items and 0 for\nfinished.\n\n\"Amount of parallelism\" refers to how many non-empty parts of the input\ncan be read in parallel. This does not necessarily equal number\nof records. An input that can be read in parallel down to the\nindividual records is called \"perfectly splittable\".\nAn example of non-perfectly parallelizable input is a block-compressed\nfile format where a block of records has to be read as a whole,\nbut different blocks can be read in parallel.\n\nExamples:\n* If we are processing record #30 (starting at 1) out of 50 in a perfectly\n splittable 50-record input, this value should be 21 (20 remaining + 1\n current).\n* If we are reading through block 3 in a block-compressed file consisting\n of 5 blocks, this value should be 3 (since blocks 4 and 5 can be\n processed in parallel by new tasks via dynamic splitting and the current\n task remains processing block 3).\n* If we are reading through the last block in a block-compressed file,\n or reading or processing the last record in a perfectly splittable\n input, this value should be 1, because apart from the current task, no\n additional remainder can be split off." } }, - "id": "FloatingPointMean" - }, - "ReportWorkItemStatusResponse": { - "description": "Response from a request to report the status of WorkItems.", - "type": "object", - "properties": { - "workItemServiceStates": { - "description": "A set of messages indicating the service-side state for each\nWorkItem whose status was reported, in the same order as the\nWorkItemStatus messages in the ReportWorkItemStatusRequest which\nresulting in this response.", - "type": "array", - "items": { - "$ref": "WorkItemServiceState" - } - } - }, - "id": "ReportWorkItemStatusResponse" - }, - "InstructionOutput": { - "description": "An output of an instruction.", - "type": "object", - "properties": { - "codec": { - "additionalProperties": { - "description": "Properties of the object.", - "type": "any" - }, - "description": "The codec to use to encode data being written via this output.", - "type": "object" - }, - "name": { - "description": "The user-provided name of this output.", - "type": "string" - }, - "originalName": { - "description": "System-defined name for this output in the original workflow graph.\nOutputs that do not contribute to an original instruction do not set this.", - "type": "string" - }, - "systemName": { - "description": "System-defined name of this output.\nUnique across the workflow.", - "type": "string" - }, - "onlyCountKeyBytes": { - "description": "For system-generated byte and mean byte metrics, certain instructions\nshould only report the key size.", - "type": "boolean" - }, - "onlyCountValueBytes": { - "description": "For system-generated byte and mean byte metrics, certain instructions\nshould only report the value size.", - "type": "boolean" - } - }, - "id": "InstructionOutput" - }, - "CreateJobFromTemplateRequest": { - "description": "A request to create a Cloud Dataflow job from a template.", - "type": "object", - "properties": { - "jobName": { - "description": "Required. The job name to use for the created job.", - "type": "string" - }, - "gcsPath": { - "description": "Required. A Cloud Storage path to the template from which to\ncreate the job.\nMust be a valid Cloud Storage URL, beginning with `gs://`.", - "type": "string" - }, - "environment": { - "$ref": "RuntimeEnvironment", - "description": "The runtime environment for the job." - }, - "location": { - "description": "The location to which to direct the request.", - "type": "string" - }, - "parameters": { - "additionalProperties": { - "type": "string" - }, - "description": "The runtime parameters to pass to the job.", - "type": "object" - } - }, - "id": "CreateJobFromTemplateRequest" - }, - "IntegerMean": { - "description": "A representation of an integer mean metric contribution.", - "type": "object", - "properties": { - "sum": { - "description": "The sum of all values being aggregated.", - "$ref": "SplitInt64" - }, - "count": { - "description": "The number of values being aggregated.", - "$ref": "SplitInt64" - } - }, - "id": "IntegerMean" - }, - "ListJobsResponse": { - "properties": { - "jobs": { - "description": "A subset of the requested job information.", - "type": "array", - "items": { - "$ref": "Job" - } - }, - "nextPageToken": { - "description": "Set if there may be more results than fit in this response.", - "type": "string" - }, - "failedLocation": { - "description": "Zero or more messages describing locations that failed to respond.", - "type": "array", - "items": { - "$ref": "FailedLocation" - } - } - }, - "id": "ListJobsResponse", - "description": "Response to a request to list Cloud Dataflow jobs. This may be a partial\nresponse, depending on the page size in the ListJobsRequest.", "type": "object" }, - "ComputationTopology": { - "description": "All configuration data for a particular Computation.", - "type": "object", + "ApproximateSplitRequest": { + "description": "A suggestion by the service to the worker to dynamically split the WorkItem.", + "id": "ApproximateSplitRequest", "properties": { - "computationId": { - "description": "The ID of the computation.", - "type": "string" - }, - "inputs": { - "description": "The inputs to the computation.", - "type": "array", - "items": { - "$ref": "StreamLocation" - } - }, - "keyRanges": { - "description": "The key ranges processed by the computation.", - "type": "array", - "items": { - "$ref": "KeyRangeLocation" - } - }, - "stateFamilies": { - "description": "The state family values.", - "type": "array", - "items": { - "$ref": "StateFamilyConfig" - } - }, - "outputs": { - "description": "The outputs from the computation.", - "type": "array", - "items": { - "$ref": "StreamLocation" - } - }, - "systemStageName": { - "description": "The system stage name.", - "type": "string" - } - }, - "id": "ComputationTopology" - }, - "RuntimeEnvironment": { - "description": "The environment values to set at runtime.", - "type": "object", - "properties": { - "serviceAccountEmail": { - "description": "The email address of the service account to run the job as.", - "type": "string" - }, - "tempLocation": { - "description": "The Cloud Storage path to use for temporary files.\nMust be a valid Cloud Storage URL, beginning with `gs://`.", - "type": "string" - }, - "bypassTempDirValidation": { - "description": "Whether to bypass the safety checks for the job's temporary directory.\nUse with caution.", - "type": "boolean" - }, - "machineType": { - "description": "The machine type to use for the job. Defaults to the value from the\ntemplate if not specified.", - "type": "string" - }, - "zone": { - "description": "The Compute Engine [availability\nzone](https://cloud.google.com/compute/docs/regions-zones/regions-zones)\nfor launching worker instances to run your pipeline.", - "type": "string" - }, - "additionalExperiments": { - "description": "Additional experiment flags for the job.", - "type": "array", - "items": { - "type": "string" - } - }, - "maxWorkers": { - "description": "The maximum number of Google Compute Engine instances to be made\navailable to your pipeline during execution, from 1 to 1000.", - "format": "int32", - "type": "integer" - } - }, - "id": "RuntimeEnvironment" - }, - "StreamingSideInputLocation": { - "properties": { - "stateFamily": { - "description": "Identifies the state family where this side input is stored.", - "type": "string" - }, - "tag": { - "description": "Identifies the particular side input within the streaming Dataflow job.", - "type": "string" - } - }, - "id": "StreamingSideInputLocation", - "description": "Identifies the location of a streaming side input.", - "type": "object" - }, - "MountedDataDisk": { - "description": "Describes mounted data disk.", - "type": "object", - "properties": { - "dataDisk": { - "description": "The name of the data disk.\nThis name is local to the Google Cloud Platform project and uniquely\nidentifies the disk within that project, for example\n\"myproject-1014-104817-4c2-harness-0-disk-1\".", - "type": "string" - } - }, - "id": "MountedDataDisk" - }, - "LaunchTemplateResponse": { - "description": "Response to the request to launch a template.", - "type": "object", - "properties": { - "job": { - "$ref": "Job", - "description": "The job that was launched, if the request was not a dry run and\nthe job was successfully launched." - } - }, - "id": "LaunchTemplateResponse" - }, - "DerivedSource": { - "description": "Specification of one of the bundles produced as a result of splitting\na Source (e.g. when executing a SourceSplitRequest, or when\nsplitting an active task using WorkItemStatus.dynamic_source_split),\nrelative to the source being split.", - "type": "object", - "properties": { - "derivationMode": { - "enumDescriptions": [ - "The source derivation is unknown, or unspecified.", - "Produce a completely independent Source with no base.", - "Produce a Source based on the Source being split.", - "Produce a Source based on the base of the Source being split." - ], - "enum": [ - "SOURCE_DERIVATION_MODE_UNKNOWN", - "SOURCE_DERIVATION_MODE_INDEPENDENT", - "SOURCE_DERIVATION_MODE_CHILD_OF_CURRENT", - "SOURCE_DERIVATION_MODE_SIBLING_OF_CURRENT" - ], - "description": "What source to base the produced source on (if any).", - "type": "string" - }, - "source": { - "description": "Specification of the source.", - "$ref": "Source" - } - }, - "id": "DerivedSource" - }, - "DynamicSourceSplit": { - "description": "When a task splits using WorkItemStatus.dynamic_source_split, this\nmessage describes the two parts of the split relative to the\ndescription of the current task's input.", - "type": "object", - "properties": { - "primary": { - "$ref": "DerivedSource", - "description": "Primary part (continued to be processed by worker).\nSpecified relative to the previously-current source.\nBecomes current." - }, - "residual": { - "description": "Residual part (returned to the pool of work).\nSpecified relative to the previously-current source.", - "$ref": "DerivedSource" - } - }, - "id": "DynamicSourceSplit" - }, - "Job": { - "description": "Defines a job to be run by the Cloud Dataflow service.", - "type": "object", - "properties": { - "clientRequestId": { - "description": "The client's unique identifier of the job, re-used across retried attempts.\nIf this field is set, the service will ensure its uniqueness.\nThe request to create a job will fail if the service has knowledge of a\npreviously submitted job with the same client's ID and job name.\nThe caller may use this field to ensure idempotence of job\ncreation across retried attempts to create a job.\nBy default, the field is empty and, in that case, the service ignores it.", - "type": "string" - }, - "name": { - "description": "The user-specified Cloud Dataflow job name.\n\nOnly one Job with a given name may exist in a project at any\ngiven time. If a caller attempts to create a Job with the same\nname as an already-existing Job, the attempt returns the\nexisting Job.\n\nThe name must match the regular expression\n`[a-z]([-a-z0-9]{0,38}[a-z0-9])?`", - "type": "string" - }, - "replacedByJobId": { - "description": "If another job is an update of this job (and thus, this job is in\n`JOB_STATE_UPDATED`), this field contains the ID of that job.", - "type": "string" - }, - "steps": { - "description": "The top-level steps that constitute the entire job.", - "type": "array", - "items": { - "$ref": "Step" - } - }, - "id": { - "description": "The unique ID of this job.\n\nThis field is set by the Cloud Dataflow service when the Job is\ncreated, and is immutable for the life of the job.", - "type": "string" - }, - "executionInfo": { - "description": "Deprecated.", - "$ref": "JobExecutionInfo" - }, - "currentState": { - "enum": [ - "JOB_STATE_UNKNOWN", - "JOB_STATE_STOPPED", - "JOB_STATE_RUNNING", - "JOB_STATE_DONE", - "JOB_STATE_FAILED", - "JOB_STATE_CANCELLED", - "JOB_STATE_UPDATED", - "JOB_STATE_DRAINING", - "JOB_STATE_DRAINED", - "JOB_STATE_PENDING", - "JOB_STATE_CANCELLING" - ], - "description": "The current state of the job.\n\nJobs are created in the `JOB_STATE_STOPPED` state unless otherwise\nspecified.\n\nA job in the `JOB_STATE_RUNNING` state may asynchronously enter a\nterminal state. After a job has reached a terminal state, no\nfurther state updates may be made.\n\nThis field may be mutated by the Cloud Dataflow service;\ncallers cannot mutate it.", - "type": "string", - "enumDescriptions": [ - "The job's run state isn't specified.", - "`JOB_STATE_STOPPED` indicates that the job has not\nyet started to run.", - "`JOB_STATE_RUNNING` indicates that the job is currently running.", - "`JOB_STATE_DONE` indicates that the job has successfully completed.\nThis is a terminal job state. This state may be set by the Cloud Dataflow\nservice, as a transition from `JOB_STATE_RUNNING`. It may also be set via a\nCloud Dataflow `UpdateJob` call, if the job has not yet reached a terminal\nstate.", - "`JOB_STATE_FAILED` indicates that the job has failed. This is a\nterminal job state. This state may only be set by the Cloud Dataflow\nservice, and only as a transition from `JOB_STATE_RUNNING`.", - "`JOB_STATE_CANCELLED` indicates that the job has been explicitly\ncancelled. This is a terminal job state. This state may only be\nset via a Cloud Dataflow `UpdateJob` call, and only if the job has not\nyet reached another terminal state.", - "`JOB_STATE_UPDATED` indicates that the job was successfully updated,\nmeaning that this job was stopped and another job was started, inheriting\nstate from this one. This is a terminal job state. This state may only be\nset by the Cloud Dataflow service, and only as a transition from\n`JOB_STATE_RUNNING`.", - "`JOB_STATE_DRAINING` indicates that the job is in the process of draining.\nA draining job has stopped pulling from its input sources and is processing\nany data that remains in-flight. This state may be set via a Cloud Dataflow\n`UpdateJob` call, but only as a transition from `JOB_STATE_RUNNING`. Jobs\nthat are draining may only transition to `JOB_STATE_DRAINED`,\n`JOB_STATE_CANCELLED`, or `JOB_STATE_FAILED`.", - "`JOB_STATE_DRAINED` indicates that the job has been drained.\nA drained job terminated by stopping pulling from its input sources and\nprocessing any data that remained in-flight when draining was requested.\nThis state is a terminal state, may only be set by the Cloud Dataflow\nservice, and only as a transition from `JOB_STATE_DRAINING`.", - "'JOB_STATE_PENDING' indicates that the job has been created but is not yet\nrunning. Jobs that are pending may only transition to `JOB_STATE_RUNNING`,\nor `JOB_STATE_FAILED`.", - "'JOB_STATE_CANCELLING' indicates that the job has been explicitly cancelled\nand is in the process of stopping. Jobs that are cancelling may only\ntransition to 'JOB_STATE_CANCELLED' or 'JOB_STATE_FAILED'." - ] - }, - "location": { - "description": "The location that contains this job.", - "type": "string" - }, - "currentStateTime": { - "description": "The timestamp associated with the current state.", - "format": "google-datetime", - "type": "string" - }, - "transformNameMapping": { - "description": "The map of transform name prefixes of the job to be replaced to the\ncorresponding name prefixes of the new job.", - "type": "object", - "additionalProperties": { - "type": "string" - } - }, - "createTime": { - "description": "The timestamp when the job was initially created. Immutable and set by the\nCloud Dataflow service.", - "format": "google-datetime", - "type": "string" - }, - "environment": { - "description": "The environment for the job.", - "$ref": "Environment" - }, - "labels": { - "additionalProperties": { - "type": "string" - }, - "description": "User-defined labels for this job.\n\nThe labels map can contain no more than 64 entries. Entries of the labels\nmap are UTF8 strings that comply with the following restrictions:\n\n* Keys must conform to regexp: \\p{Ll}\\p{Lo}{0,62}\n* Values must conform to regexp: [\\p{Ll}\\p{Lo}\\p{N}_-]{0,63}\n* Both keys and values are additionally constrained to be \u003c= 128 bytes in\nsize.", - "type": "object" - }, - "stageStates": { - "description": "This field may be mutated by the Cloud Dataflow service;\ncallers cannot mutate it.", - "type": "array", - "items": { - "$ref": "ExecutionStageState" - } - }, - "projectId": { - "description": "The ID of the Cloud Platform project that the job belongs to.", - "type": "string" - }, - "type": { - "enumDescriptions": [ - "The type of the job is unspecified, or unknown.", - "A batch job with a well-defined end point: data is read, data is\nprocessed, data is written, and the job is done.", - "A continuously streaming job with no end: data is read,\nprocessed, and written continuously." - ], - "enum": [ - "JOB_TYPE_UNKNOWN", - "JOB_TYPE_BATCH", - "JOB_TYPE_STREAMING" - ], - "description": "The type of Cloud Dataflow job.", - "type": "string" - }, - "pipelineDescription": { - "$ref": "PipelineDescription", - "description": "Preliminary field: The format of this data may change at any time.\nA description of the user pipeline and stages through which it is executed.\nCreated by Cloud Dataflow service. Only retrieved with\nJOB_VIEW_DESCRIPTION or JOB_VIEW_ALL." - }, - "replaceJobId": { - "description": "If this job is an update of an existing job, this field is the job ID\nof the job it replaced.\n\nWhen sending a `CreateJobRequest`, you can update a job by specifying it\nhere. The job named here is stopped, and its intermediate state is\ntransferred to this job.", - "type": "string" - }, - "requestedState": { - "enumDescriptions": [ - "The job's run state isn't specified.", - "`JOB_STATE_STOPPED` indicates that the job has not\nyet started to run.", - "`JOB_STATE_RUNNING` indicates that the job is currently running.", - "`JOB_STATE_DONE` indicates that the job has successfully completed.\nThis is a terminal job state. This state may be set by the Cloud Dataflow\nservice, as a transition from `JOB_STATE_RUNNING`. It may also be set via a\nCloud Dataflow `UpdateJob` call, if the job has not yet reached a terminal\nstate.", - "`JOB_STATE_FAILED` indicates that the job has failed. This is a\nterminal job state. This state may only be set by the Cloud Dataflow\nservice, and only as a transition from `JOB_STATE_RUNNING`.", - "`JOB_STATE_CANCELLED` indicates that the job has been explicitly\ncancelled. This is a terminal job state. This state may only be\nset via a Cloud Dataflow `UpdateJob` call, and only if the job has not\nyet reached another terminal state.", - "`JOB_STATE_UPDATED` indicates that the job was successfully updated,\nmeaning that this job was stopped and another job was started, inheriting\nstate from this one. This is a terminal job state. This state may only be\nset by the Cloud Dataflow service, and only as a transition from\n`JOB_STATE_RUNNING`.", - "`JOB_STATE_DRAINING` indicates that the job is in the process of draining.\nA draining job has stopped pulling from its input sources and is processing\nany data that remains in-flight. This state may be set via a Cloud Dataflow\n`UpdateJob` call, but only as a transition from `JOB_STATE_RUNNING`. Jobs\nthat are draining may only transition to `JOB_STATE_DRAINED`,\n`JOB_STATE_CANCELLED`, or `JOB_STATE_FAILED`.", - "`JOB_STATE_DRAINED` indicates that the job has been drained.\nA drained job terminated by stopping pulling from its input sources and\nprocessing any data that remained in-flight when draining was requested.\nThis state is a terminal state, may only be set by the Cloud Dataflow\nservice, and only as a transition from `JOB_STATE_DRAINING`.", - "'JOB_STATE_PENDING' indicates that the job has been created but is not yet\nrunning. Jobs that are pending may only transition to `JOB_STATE_RUNNING`,\nor `JOB_STATE_FAILED`.", - "'JOB_STATE_CANCELLING' indicates that the job has been explicitly cancelled\nand is in the process of stopping. Jobs that are cancelling may only\ntransition to 'JOB_STATE_CANCELLED' or 'JOB_STATE_FAILED'." - ], - "enum": [ - "JOB_STATE_UNKNOWN", - "JOB_STATE_STOPPED", - "JOB_STATE_RUNNING", - "JOB_STATE_DONE", - "JOB_STATE_FAILED", - "JOB_STATE_CANCELLED", - "JOB_STATE_UPDATED", - "JOB_STATE_DRAINING", - "JOB_STATE_DRAINED", - "JOB_STATE_PENDING", - "JOB_STATE_CANCELLING" - ], - "description": "The job's requested state.\n\n`UpdateJob` may be used to switch between the `JOB_STATE_STOPPED` and\n`JOB_STATE_RUNNING` states, by setting requested_state. `UpdateJob` may\nalso be used to directly set a job's requested state to\n`JOB_STATE_CANCELLED` or `JOB_STATE_DONE`, irrevocably terminating the\njob if it has not already reached a terminal state.", - "type": "string" - }, - "tempFiles": { - "description": "A set of files the system should be aware of that are used\nfor temporary storage. These temporary files will be\nremoved on job completion.\nNo duplicates are allowed.\nNo file patterns are supported.\n\nThe supported files are:\n\nGoogle Cloud Storage:\n\n storage.googleapis.com/{bucket}/{object}\n bucket.storage.googleapis.com/{object}", - "type": "array", - "items": { - "type": "string" - } - } - }, - "id": "Job" - }, - "SourceOperationResponse": { - "description": "The result of a SourceOperationRequest, specified in\nReportWorkItemStatusRequest.source_operation when the work item\nis completed.", - "type": "object", - "properties": { - "getMetadata": { - "description": "A response to a request to get metadata about a source.", - "$ref": "SourceGetMetadataResponse" - }, - "split": { - "$ref": "SourceSplitResponse", - "description": "A response to a request to split a source." - } - }, - "id": "SourceOperationResponse" - }, - "SideInputInfo": { - "description": "Information about a side input of a DoFn or an input of a SeqDoFn.", - "type": "object", - "properties": { - "sources": { - "description": "The source(s) to read element(s) from to get the value of this side input.\nIf more than one source, then the elements are taken from the\nsources, in the specified order if order matters.\nAt least one source is required.", - "type": "array", - "items": { - "$ref": "Source" - } - }, - "kind": { - "additionalProperties": { - "description": "Properties of the object.", - "type": "any" - }, - "description": "How to interpret the source element(s) as a side input value.", - "type": "object" - }, - "tag": { - "description": "The id of the tag the user code will access this side input by;\nthis should correspond to the tag of some MultiOutputInfo.", - "type": "string" - } - }, - "id": "SideInputInfo" - }, - "SendDebugCaptureResponse": { - "description": "Response to a send capture request.\nnothing", - "type": "object", - "properties": {}, - "id": "SendDebugCaptureResponse" - }, - "WriteInstruction": { - "description": "An instruction that writes records.\nTakes one input, produces no outputs.", - "type": "object", - "properties": { - "input": { - "description": "The input.", - "$ref": "InstructionInput" - }, - "sink": { - "description": "The sink to write to.", - "$ref": "Sink" - } - }, - "id": "WriteInstruction" - }, - "ConcatPosition": { - "description": "A position that encapsulates an inner position and an index for the inner\nposition. A ConcatPosition can be used by a reader of a source that\nencapsulates a set of other sources.", - "type": "object", - "properties": { - "index": { - "description": "Index of the inner source.", - "format": "int32", - "type": "integer" + "fractionConsumed": { + "description": "A fraction at which to split the work item, from 0.0 (beginning of the\ninput) to 1.0 (end of the input).", + "format": "double", + "type": "number" }, "position": { - "description": "Position within the inner source.", - "$ref": "Position" + "$ref": "Position", + "description": "A Position at which to split the work item." } }, - "id": "ConcatPosition" + "type": "object" }, - "CounterStructuredNameAndMetadata": { + "AutoscalingEvent": { + "description": "A structured message reporting an autoscaling decision made by the Dataflow\nservice.", + "id": "AutoscalingEvent", "properties": { - "name": { - "$ref": "CounterStructuredName", - "description": "Structured name of the counter." + "currentNumWorkers": { + "description": "The current number of workers the job has.", + "format": "int64", + "type": "string" }, - "metadata": { - "description": "Metadata associated with a counter", - "$ref": "CounterMetadata" + "description": { + "$ref": "StructuredMessage", + "description": "A message describing why the system decided to adjust the current\nnumber of workers, why it failed, or why the system decided to\nnot make any changes to the number of workers." + }, + "eventType": { + "description": "The type of autoscaling event to report.", + "enum": [ + "TYPE_UNKNOWN", + "TARGET_NUM_WORKERS_CHANGED", + "CURRENT_NUM_WORKERS_CHANGED", + "ACTUATION_FAILURE", + "NO_CHANGE" + ], + "enumDescriptions": [ + "Default type for the enum. Value should never be returned.", + "The TARGET_NUM_WORKERS_CHANGED type should be used when the target\nworker pool size has changed at the start of an actuation. An event\nshould always be specified as TARGET_NUM_WORKERS_CHANGED if it reflects\na change in the target_num_workers.", + "The CURRENT_NUM_WORKERS_CHANGED type should be used when actual worker\npool size has been changed, but the target_num_workers has not changed.", + "The ACTUATION_FAILURE type should be used when we want to report\nan error to the user indicating why the current number of workers\nin the pool could not be changed.\nDisplayed in the current status and history widgets.", + "Used when we want to report to the user a reason why we are\nnot currently adjusting the number of workers.\nShould specify both target_num_workers, current_num_workers and a\ndecision_message." + ], + "type": "string" + }, + "targetNumWorkers": { + "description": "The target number of workers the worker pool wants to resize to use.", + "format": "int64", + "type": "string" + }, + "time": { + "description": "The time this event was emitted to indicate a new target or current\nnum_workers value.", + "format": "google-datetime", + "type": "string" } }, - "id": "CounterStructuredNameAndMetadata", - "description": "A single message which encapsulates structured name and metadata for a given\ncounter.", "type": "object" }, "AutoscalingSettings": { "description": "Settings for WorkerPool autoscaling.", - "type": "object", + "id": "AutoscalingSettings", "properties": { "algorithm": { - "enumDescriptions": [ - "The algorithm is unknown, or unspecified.", - "Disable autoscaling.", - "Increase worker count over time to reduce job execution time." - ], + "description": "The algorithm to use for autoscaling.", "enum": [ "AUTOSCALING_ALGORITHM_UNKNOWN", "AUTOSCALING_ALGORITHM_NONE", "AUTOSCALING_ALGORITHM_BASIC" ], - "description": "The algorithm to use for autoscaling.", + "enumDescriptions": [ + "The algorithm is unknown, or unspecified.", + "Disable autoscaling.", + "Increase worker count over time to reduce job execution time." + ], "type": "string" }, "maxNumWorkers": { @@ -2322,141 +1686,11 @@ "type": "integer" } }, - "id": "AutoscalingSettings" - }, - "StreamingComputationRanges": { - "description": "Describes full or partial data disk assignment information of the computation\nranges.", - "type": "object", - "properties": { - "rangeAssignments": { - "description": "Data disk assignments for ranges from this computation.", - "type": "array", - "items": { - "$ref": "KeyRangeDataDiskAssignment" - } - }, - "computationId": { - "description": "The ID of the computation.", - "type": "string" - } - }, - "id": "StreamingComputationRanges" - }, - "ExecutionStageSummary": { - "description": "Description of the composing transforms, names/ids, and input/outputs of a\nstage of execution. Some composing transforms and sources may have been\ngenerated by the Dataflow service during execution planning.", - "type": "object", - "properties": { - "outputSource": { - "description": "Output sources for this stage.", - "type": "array", - "items": { - "$ref": "StageSource" - } - }, - "name": { - "description": "Dataflow service generated name for this stage.", - "type": "string" - }, - "inputSource": { - "description": "Input sources for this stage.", - "type": "array", - "items": { - "$ref": "StageSource" - } - }, - "id": { - "description": "Dataflow service generated id for this stage.", - "type": "string" - }, - "componentTransform": { - "description": "Transforms that comprise this execution stage.", - "type": "array", - "items": { - "$ref": "ComponentTransform" - } - }, - "componentSource": { - "description": "Collections produced and consumed by component transforms of this stage.", - "type": "array", - "items": { - "$ref": "ComponentSource" - } - }, - "kind": { - "enum": [ - "UNKNOWN_KIND", - "PAR_DO_KIND", - "GROUP_BY_KEY_KIND", - "FLATTEN_KIND", - "READ_KIND", - "WRITE_KIND", - "CONSTANT_KIND", - "SINGLETON_KIND", - "SHUFFLE_KIND" - ], - "description": "Type of tranform this stage is executing.", - "type": "string", - "enumDescriptions": [ - "Unrecognized transform type.", - "ParDo transform.", - "Group By Key transform.", - "Flatten transform.", - "Read transform.", - "Write transform.", - "Constructs from a constant value, such as with Create.of.", - "Creates a Singleton view of a collection.", - "Opening or closing a shuffle session, often as part of a GroupByKey." - ] - } - }, - "id": "ExecutionStageSummary" - }, - "SendWorkerMessagesRequest": { - "properties": { - "workerMessages": { - "description": "The WorkerMessages to send.", - "type": "array", - "items": { - "$ref": "WorkerMessage" - } - }, - "location": { - "description": "The location which contains the job", - "type": "string" - } - }, - "id": "SendWorkerMessagesRequest", - "description": "A request for sending worker messages to the service.", - "type": "object" - }, - "SourceSplitShard": { - "properties": { - "derivationMode": { - "description": "DEPRECATED", - "type": "string", - "enumDescriptions": [ - "The source derivation is unknown, or unspecified.", - "Produce a completely independent Source with no base.", - "Produce a Source based on the Source being split.", - "Produce a Source based on the base of the Source being split." - ], - "enum": [ - "SOURCE_DERIVATION_MODE_UNKNOWN", - "SOURCE_DERIVATION_MODE_INDEPENDENT", - "SOURCE_DERIVATION_MODE_CHILD_OF_CURRENT", - "SOURCE_DERIVATION_MODE_SIBLING_OF_CURRENT" - ] - }, - "source": { - "$ref": "Source", - "description": "DEPRECATED" - } - }, - "id": "SourceSplitShard", - "description": "DEPRECATED in favor of DerivedSource.", "type": "object" }, "CPUTime": { + "description": "Modeled after information exposed by /proc/stat.", + "id": "CPUTime", "properties": { "rate": { "description": "Average CPU utilization rate (% non-idle cpu / second) since previous\nsample.", @@ -2474,59 +1708,552 @@ "type": "string" } }, - "id": "CPUTime", - "description": "Modeled after information exposed by /proc/stat.", + "type": "object" + }, + "ComponentSource": { + "description": "Description of an interstitial value between transforms in an execution\nstage.", + "id": "ComponentSource", + "properties": { + "name": { + "description": "Dataflow service generated name for this source.", + "type": "string" + }, + "originalTransformOrCollection": { + "description": "User name for the original user transform or collection with which this\nsource is most closely associated.", + "type": "string" + }, + "userName": { + "description": "Human-readable name for this transform; may be user or system generated.", + "type": "string" + } + }, + "type": "object" + }, + "ComponentTransform": { + "description": "Description of a transform executed as part of an execution stage.", + "id": "ComponentTransform", + "properties": { + "name": { + "description": "Dataflow service generated name for this source.", + "type": "string" + }, + "originalTransform": { + "description": "User name for the original user transform with which this transform is\nmost closely associated.", + "type": "string" + }, + "userName": { + "description": "Human-readable name for this transform; may be user or system generated.", + "type": "string" + } + }, + "type": "object" + }, + "ComputationTopology": { + "description": "All configuration data for a particular Computation.", + "id": "ComputationTopology", + "properties": { + "computationId": { + "description": "The ID of the computation.", + "type": "string" + }, + "inputs": { + "description": "The inputs to the computation.", + "items": { + "$ref": "StreamLocation" + }, + "type": "array" + }, + "keyRanges": { + "description": "The key ranges processed by the computation.", + "items": { + "$ref": "KeyRangeLocation" + }, + "type": "array" + }, + "outputs": { + "description": "The outputs from the computation.", + "items": { + "$ref": "StreamLocation" + }, + "type": "array" + }, + "stateFamilies": { + "description": "The state family values.", + "items": { + "$ref": "StateFamilyConfig" + }, + "type": "array" + }, + "systemStageName": { + "description": "The system stage name.", + "type": "string" + } + }, + "type": "object" + }, + "ConcatPosition": { + "description": "A position that encapsulates an inner position and an index for the inner\nposition. A ConcatPosition can be used by a reader of a source that\nencapsulates a set of other sources.", + "id": "ConcatPosition", + "properties": { + "index": { + "description": "Index of the inner source.", + "format": "int32", + "type": "integer" + }, + "position": { + "$ref": "Position", + "description": "Position within the inner source." + } + }, + "type": "object" + }, + "CounterMetadata": { + "description": "CounterMetadata includes all static non-name non-value counter attributes.", + "id": "CounterMetadata", + "properties": { + "description": { + "description": "Human-readable description of the counter semantics.", + "type": "string" + }, + "kind": { + "description": "Counter aggregation kind.", + "enum": [ + "INVALID", + "SUM", + "MAX", + "MIN", + "MEAN", + "OR", + "AND", + "SET", + "DISTRIBUTION", + "LATEST_VALUE" + ], + "enumDescriptions": [ + "Counter aggregation kind was not set.", + "Aggregated value is the sum of all contributed values.", + "Aggregated value is the max of all contributed values.", + "Aggregated value is the min of all contributed values.", + "Aggregated value is the mean of all contributed values.", + "Aggregated value represents the logical 'or' of all contributed values.", + "Aggregated value represents the logical 'and' of all contributed values.", + "Aggregated value is a set of unique contributed values.", + "Aggregated value captures statistics about a distribution.", + "Aggregated value tracks the latest value of a variable." + ], + "type": "string" + }, + "otherUnits": { + "description": "A string referring to the unit type.", + "type": "string" + }, + "standardUnits": { + "description": "System defined Units, see above enum.", + "enum": [ + "BYTES", + "BYTES_PER_SEC", + "MILLISECONDS", + "MICROSECONDS", + "NANOSECONDS", + "TIMESTAMP_MSEC", + "TIMESTAMP_USEC", + "TIMESTAMP_NSEC" + ], + "enumDescriptions": [ + "Counter returns a value in bytes.", + "Counter returns a value in bytes per second.", + "Counter returns a value in milliseconds.", + "Counter returns a value in microseconds.", + "Counter returns a value in nanoseconds.", + "Counter returns a timestamp in milliseconds.", + "Counter returns a timestamp in microseconds.", + "Counter returns a timestamp in nanoseconds." + ], + "type": "string" + } + }, + "type": "object" + }, + "CounterStructuredName": { + "description": "Identifies a counter within a per-job namespace. Counters whose structured\nnames are the same get merged into a single value for the job.", + "id": "CounterStructuredName", + "properties": { + "componentStepName": { + "description": "Name of the optimized step being executed by the workers.", + "type": "string" + }, + "executionStepName": { + "description": "Name of the stage. An execution step contains multiple component steps.", + "type": "string" + }, + "inputIndex": { + "description": "Index of an input collection that's being read from/written to as a side\ninput.\nThe index identifies a step's side inputs starting by 1 (e.g. the first\nside input has input_index 1, the third has input_index 3).\nSide inputs are identified by a pair of (original_step_name, input_index).\nThis field helps uniquely identify them.", + "format": "int32", + "type": "integer" + }, + "name": { + "description": "Counter name. Not necessarily globally-unique, but unique within the\ncontext of the other fields.\nRequired.", + "type": "string" + }, + "origin": { + "description": "One of the standard Origins defined above.", + "enum": [ + "SYSTEM", + "USER" + ], + "enumDescriptions": [ + "Counter was created by the Dataflow system.", + "Counter was created by the user." + ], + "type": "string" + }, + "originNamespace": { + "description": "A string containing a more specific namespace of the counter's origin.", + "type": "string" + }, + "originalRequestingStepName": { + "description": "The step name requesting an operation, such as GBK.\nI.e. the ParDo causing a read/write from shuffle to occur, or a\nread from side inputs.", + "type": "string" + }, + "originalStepName": { + "description": "System generated name of the original step in the user's graph, before\noptimization.", + "type": "string" + }, + "portion": { + "description": "Portion of this counter, either key or value.", + "enum": [ + "ALL", + "KEY", + "VALUE" + ], + "enumDescriptions": [ + "Counter portion has not been set.", + "Counter reports a key.", + "Counter reports a value." + ], + "type": "string" + }, + "workerId": { + "description": "ID of a particular worker.", + "type": "string" + } + }, + "type": "object" + }, + "CounterStructuredNameAndMetadata": { + "description": "A single message which encapsulates structured name and metadata for a given\ncounter.", + "id": "CounterStructuredNameAndMetadata", + "properties": { + "metadata": { + "$ref": "CounterMetadata", + "description": "Metadata associated with a counter" + }, + "name": { + "$ref": "CounterStructuredName", + "description": "Structured name of the counter." + } + }, + "type": "object" + }, + "CounterUpdate": { + "description": "An update to a Counter sent from a worker.", + "id": "CounterUpdate", + "properties": { + "boolean": { + "description": "Boolean value for And, Or.", + "type": "boolean" + }, + "cumulative": { + "description": "True if this counter is reported as the total cumulative aggregate\nvalue accumulated since the worker started working on this WorkItem.\nBy default this is false, indicating that this counter is reported\nas a delta.", + "type": "boolean" + }, + "distribution": { + "$ref": "DistributionUpdate", + "description": "Distribution data" + }, + "floatingPoint": { + "description": "Floating point value for Sum, Max, Min.", + "format": "double", + "type": "number" + }, + "floatingPointList": { + "$ref": "FloatingPointList", + "description": "List of floating point numbers, for Set." + }, + "floatingPointMean": { + "$ref": "FloatingPointMean", + "description": "Floating point mean aggregation value for Mean." + }, + "integer": { + "$ref": "SplitInt64", + "description": "Integer value for Sum, Max, Min." + }, + "integerGauge": { + "$ref": "IntegerGauge", + "description": "Gauge data" + }, + "integerList": { + "$ref": "IntegerList", + "description": "List of integers, for Set." + }, + "integerMean": { + "$ref": "IntegerMean", + "description": "Integer mean aggregation value for Mean." + }, + "internal": { + "description": "Value for internally-defined counters used by the Dataflow service.", + "type": "any" + }, + "nameAndKind": { + "$ref": "NameAndKind", + "description": "Counter name and aggregation type." + }, + "shortId": { + "description": "The service-generated short identifier for this counter.\nThe short_id -\u003e (name, metadata) mapping is constant for the lifetime of\na job.", + "format": "int64", + "type": "string" + }, + "stringList": { + "$ref": "StringList", + "description": "List of strings, for Set." + }, + "structuredNameAndMetadata": { + "$ref": "CounterStructuredNameAndMetadata", + "description": "Counter structured name and metadata." + } + }, + "type": "object" + }, + "CreateJobFromTemplateRequest": { + "description": "A request to create a Cloud Dataflow job from a template.", + "id": "CreateJobFromTemplateRequest", + "properties": { + "environment": { + "$ref": "RuntimeEnvironment", + "description": "The runtime environment for the job." + }, + "gcsPath": { + "description": "Required. A Cloud Storage path to the template from which to\ncreate the job.\nMust be a valid Cloud Storage URL, beginning with `gs://`.", + "type": "string" + }, + "jobName": { + "description": "Required. The job name to use for the created job.", + "type": "string" + }, + "location": { + "description": "The location to which to direct the request.", + "type": "string" + }, + "parameters": { + "additionalProperties": { + "type": "string" + }, + "description": "The runtime parameters to pass to the job.", + "type": "object" + } + }, + "type": "object" + }, + "CustomSourceLocation": { + "description": "Identifies the location of a custom souce.", + "id": "CustomSourceLocation", + "properties": { + "stateful": { + "description": "Whether this source is stateful.", + "type": "boolean" + } + }, + "type": "object" + }, + "DataDiskAssignment": { + "description": "Data disk assignment for a given VM instance.", + "id": "DataDiskAssignment", + "properties": { + "dataDisks": { + "description": "Mounted data disks. The order is important a data disk's 0-based index in\nthis list defines which persistent directory the disk is mounted to, for\nexample the list of { \"myproject-1014-104817-4c2-harness-0-disk-0\" },\n{ \"myproject-1014-104817-4c2-harness-0-disk-1\" }.", + "items": { + "type": "string" + }, + "type": "array" + }, + "vmInstance": { + "description": "VM instance name the data disks mounted to, for example\n\"myproject-1014-104817-4c2-harness-0\".", + "type": "string" + } + }, + "type": "object" + }, + "DerivedSource": { + "description": "Specification of one of the bundles produced as a result of splitting\na Source (e.g. when executing a SourceSplitRequest, or when\nsplitting an active task using WorkItemStatus.dynamic_source_split),\nrelative to the source being split.", + "id": "DerivedSource", + "properties": { + "derivationMode": { + "description": "What source to base the produced source on (if any).", + "enum": [ + "SOURCE_DERIVATION_MODE_UNKNOWN", + "SOURCE_DERIVATION_MODE_INDEPENDENT", + "SOURCE_DERIVATION_MODE_CHILD_OF_CURRENT", + "SOURCE_DERIVATION_MODE_SIBLING_OF_CURRENT" + ], + "enumDescriptions": [ + "The source derivation is unknown, or unspecified.", + "Produce a completely independent Source with no base.", + "Produce a Source based on the Source being split.", + "Produce a Source based on the base of the Source being split." + ], + "type": "string" + }, + "source": { + "$ref": "Source", + "description": "Specification of the source." + } + }, + "type": "object" + }, + "Disk": { + "description": "Describes the data disk used by a workflow job.", + "id": "Disk", + "properties": { + "diskType": { + "description": "Disk storage type, as defined by Google Compute Engine. This\nmust be a disk type appropriate to the project and zone in which\nthe workers will run. If unknown or unspecified, the service\nwill attempt to choose a reasonable default.\n\nFor example, the standard persistent disk type is a resource name\ntypically ending in \"pd-standard\". If SSD persistent disks are\navailable, the resource name typically ends with \"pd-ssd\". The\nactual valid values are defined the Google Compute Engine API,\nnot by the Cloud Dataflow API; consult the Google Compute Engine\ndocumentation for more information about determining the set of\navailable disk types for a particular project and zone.\n\nGoogle Compute Engine Disk types are local to a particular\nproject in a particular zone, and so the resource name will\ntypically look something like this:\n\ncompute.googleapis.com/projects/project-id/zones/zone/diskTypes/pd-standard", + "type": "string" + }, + "mountPoint": { + "description": "Directory in a VM where disk is mounted.", + "type": "string" + }, + "sizeGb": { + "description": "Size of disk in GB. If zero or unspecified, the service will\nattempt to choose a reasonable default.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "DisplayData": { + "description": "Data provided with a pipeline or transform to provide descriptive info.", + "id": "DisplayData", + "properties": { + "boolValue": { + "description": "Contains value if the data is of a boolean type.", + "type": "boolean" + }, + "durationValue": { + "description": "Contains value if the data is of duration type.", + "format": "google-duration", + "type": "string" + }, + "floatValue": { + "description": "Contains value if the data is of float type.", + "format": "float", + "type": "number" + }, + "int64Value": { + "description": "Contains value if the data is of int64 type.", + "format": "int64", + "type": "string" + }, + "javaClassValue": { + "description": "Contains value if the data is of java class type.", + "type": "string" + }, + "key": { + "description": "The key identifying the display data.\nThis is intended to be used as a label for the display data\nwhen viewed in a dax monitoring system.", + "type": "string" + }, + "label": { + "description": "An optional label to display in a dax UI for the element.", + "type": "string" + }, + "namespace": { + "description": "The namespace for the key. This is usually a class name or programming\nlanguage namespace (i.e. python module) which defines the display data.\nThis allows a dax monitoring system to specially handle the data\nand perform custom rendering.", + "type": "string" + }, + "shortStrValue": { + "description": "A possible additional shorter value to display.\nFor example a java_class_name_value of com.mypackage.MyDoFn\nwill be stored with MyDoFn as the short_str_value and\ncom.mypackage.MyDoFn as the java_class_name value.\nshort_str_value can be displayed and java_class_name_value\nwill be displayed as a tooltip.", + "type": "string" + }, + "strValue": { + "description": "Contains value if the data is of string type.", + "type": "string" + }, + "timestampValue": { + "description": "Contains value if the data is of timestamp type.", + "format": "google-datetime", + "type": "string" + }, + "url": { + "description": "An optional full URL.", + "type": "string" + } + }, + "type": "object" + }, + "DistributionUpdate": { + "description": "A metric value representing a distribution.", + "id": "DistributionUpdate", + "properties": { + "count": { + "$ref": "SplitInt64", + "description": "The count of the number of elements present in the distribution." + }, + "histogram": { + "$ref": "Histogram", + "description": "(Optional) Histogram of value counts for the distribution." + }, + "max": { + "$ref": "SplitInt64", + "description": "The maximum value present in the distribution." + }, + "min": { + "$ref": "SplitInt64", + "description": "The minimum value present in the distribution." + }, + "sum": { + "$ref": "SplitInt64", + "description": "Use an int64 since we'd prefer the added precision. If overflow is a common\nproblem we can detect it and use an additional int64 or a double." + }, + "sumOfSquares": { + "description": "Use a double since the sum of squares is likely to overflow int64.", + "format": "double", + "type": "number" + } + }, + "type": "object" + }, + "DynamicSourceSplit": { + "description": "When a task splits using WorkItemStatus.dynamic_source_split, this\nmessage describes the two parts of the split relative to the\ndescription of the current task's input.", + "id": "DynamicSourceSplit", + "properties": { + "primary": { + "$ref": "DerivedSource", + "description": "Primary part (continued to be processed by worker).\nSpecified relative to the previously-current source.\nBecomes current." + }, + "residual": { + "$ref": "DerivedSource", + "description": "Residual part (returned to the pool of work).\nSpecified relative to the previously-current source." + } + }, "type": "object" }, "Environment": { "description": "Describes the environment in which a Dataflow Job runs.", - "type": "object", + "id": "Environment", "properties": { - "serviceAccountEmail": { - "description": "Identity to run virtual machines as. Defaults to the default account.", - "type": "string" - }, - "userAgent": { - "description": "A description of the process that generated the request.", - "type": "object", - "additionalProperties": { - "description": "Properties of the object.", - "type": "any" - } - }, - "sdkPipelineOptions": { - "additionalProperties": { - "description": "Properties of the object.", - "type": "any" - }, - "description": "The Cloud Dataflow SDK pipeline options specified by the user. These\noptions are passed through the service and are used to recreate the\nSDK pipeline options on the worker in a language agnostic and platform\nindependent way.", - "type": "object" - }, "clusterManagerApiService": { "description": "The type of cluster manager API to use. If unknown or\nunspecified, the service will attempt to choose a reasonable\ndefault. This should be in the form of the API service name,\ne.g. \"compute.googleapis.com\".", "type": "string" }, - "tempStoragePrefix": { - "description": "The prefix of the resources the system should use for temporary\nstorage. The system will append the suffix \"/temp-{JOBNAME} to\nthis resource prefix, where {JOBNAME} is the value of the\njob_name field. The resulting bucket and object prefix is used\nas the prefix of the resources used to store temporary data\nneeded during the job execution. NOTE: This will override the\nvalue in taskrunner_settings.\nThe supported resource type is:\n\nGoogle Cloud Storage:\n\n storage.googleapis.com/{bucket}/{object}\n bucket.storage.googleapis.com/{object}", - "type": "string" - }, - "workerPools": { - "description": "The worker pools. At least one \"harness\" worker pool must be\nspecified in order for the job to have workers.", - "type": "array", - "items": { - "$ref": "WorkerPool" - } - }, "dataset": { "description": "The dataset for the current project where various workflow\nrelated tables are stored.\n\nThe supported resource type is:\n\nGoogle BigQuery:\n bigquery.googleapis.com/{dataset}", "type": "string" }, "experiments": { "description": "The list of experiments to enable.", - "type": "array", "items": { "type": "string" - } + }, + "type": "array" }, "internalExperiments": { "additionalProperties": { @@ -2536,6 +2263,30 @@ "description": "Experimental settings.", "type": "object" }, + "sdkPipelineOptions": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "description": "The Cloud Dataflow SDK pipeline options specified by the user. These\noptions are passed through the service and are used to recreate the\nSDK pipeline options on the worker in a language agnostic and platform\nindependent way.", + "type": "object" + }, + "serviceAccountEmail": { + "description": "Identity to run virtual machines as. Defaults to the default account.", + "type": "string" + }, + "tempStoragePrefix": { + "description": "The prefix of the resources the system should use for temporary\nstorage. The system will append the suffix \"/temp-{JOBNAME} to\nthis resource prefix, where {JOBNAME} is the value of the\njob_name field. The resulting bucket and object prefix is used\nas the prefix of the resources used to store temporary data\nneeded during the job execution. NOTE: This will override the\nvalue in taskrunner_settings.\nThe supported resource type is:\n\nGoogle Cloud Storage:\n\n storage.googleapis.com/{bucket}/{object}\n bucket.storage.googleapis.com/{object}", + "type": "string" + }, + "userAgent": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "description": "A description of the process that generated the request.", + "type": "object" + }, "version": { "additionalProperties": { "description": "Properties of the object.", @@ -2543,208 +2294,554 @@ }, "description": "A structure describing which components and their versions of the service\nare required in order to run the job.", "type": "object" + }, + "workerPools": { + "description": "The worker pools. At least one \"harness\" worker pool must be\nspecified in order for the job to have workers.", + "items": { + "$ref": "WorkerPool" + }, + "type": "array" } }, - "id": "Environment" + "type": "object" }, - "StreamingComputationTask": { - "description": "A task which describes what action should be performed for the specified\nstreaming computation ranges.", - "type": "object", + "ExecutionStageState": { + "description": "A message describing the state of a particular execution stage.", + "id": "ExecutionStageState", "properties": { - "computationRanges": { - "description": "Contains ranges of a streaming computation this task should apply to.", - "type": "array", - "items": { - "$ref": "StreamingComputationRanges" - } - }, - "dataDisks": { - "description": "Describes the set of data disks this task should apply to.", - "type": "array", - "items": { - "$ref": "MountedDataDisk" - } - }, - "taskType": { - "enum": [ - "STREAMING_COMPUTATION_TASK_UNKNOWN", - "STREAMING_COMPUTATION_TASK_STOP", - "STREAMING_COMPUTATION_TASK_START" - ], - "description": "A type of streaming computation task.", - "type": "string", - "enumDescriptions": [ - "The streaming computation task is unknown, or unspecified.", - "Stop processing specified streaming computation range(s).", - "Start processing specified streaming computation range(s)." - ] - } - }, - "id": "StreamingComputationTask" - }, - "SendDebugCaptureRequest": { - "properties": { - "componentId": { - "description": "The internal component id for which debug information is sent.", + "currentStateTime": { + "description": "The time at which the stage transitioned to this state.", + "format": "google-datetime", "type": "string" }, - "workerId": { - "description": "The worker id, i.e., VM hostname.", + "executionStageName": { + "description": "The name of the execution stage.", + "type": "string" + }, + "executionStageState": { + "description": "Executions stage states allow the same set of values as JobState.", + "enum": [ + "JOB_STATE_UNKNOWN", + "JOB_STATE_STOPPED", + "JOB_STATE_RUNNING", + "JOB_STATE_DONE", + "JOB_STATE_FAILED", + "JOB_STATE_CANCELLED", + "JOB_STATE_UPDATED", + "JOB_STATE_DRAINING", + "JOB_STATE_DRAINED", + "JOB_STATE_PENDING", + "JOB_STATE_CANCELLING" + ], + "enumDescriptions": [ + "The job's run state isn't specified.", + "`JOB_STATE_STOPPED` indicates that the job has not\nyet started to run.", + "`JOB_STATE_RUNNING` indicates that the job is currently running.", + "`JOB_STATE_DONE` indicates that the job has successfully completed.\nThis is a terminal job state. This state may be set by the Cloud Dataflow\nservice, as a transition from `JOB_STATE_RUNNING`. It may also be set via a\nCloud Dataflow `UpdateJob` call, if the job has not yet reached a terminal\nstate.", + "`JOB_STATE_FAILED` indicates that the job has failed. This is a\nterminal job state. This state may only be set by the Cloud Dataflow\nservice, and only as a transition from `JOB_STATE_RUNNING`.", + "`JOB_STATE_CANCELLED` indicates that the job has been explicitly\ncancelled. This is a terminal job state. This state may only be\nset via a Cloud Dataflow `UpdateJob` call, and only if the job has not\nyet reached another terminal state.", + "`JOB_STATE_UPDATED` indicates that the job was successfully updated,\nmeaning that this job was stopped and another job was started, inheriting\nstate from this one. This is a terminal job state. This state may only be\nset by the Cloud Dataflow service, and only as a transition from\n`JOB_STATE_RUNNING`.", + "`JOB_STATE_DRAINING` indicates that the job is in the process of draining.\nA draining job has stopped pulling from its input sources and is processing\nany data that remains in-flight. This state may be set via a Cloud Dataflow\n`UpdateJob` call, but only as a transition from `JOB_STATE_RUNNING`. Jobs\nthat are draining may only transition to `JOB_STATE_DRAINED`,\n`JOB_STATE_CANCELLED`, or `JOB_STATE_FAILED`.", + "`JOB_STATE_DRAINED` indicates that the job has been drained.\nA drained job terminated by stopping pulling from its input sources and\nprocessing any data that remained in-flight when draining was requested.\nThis state is a terminal state, may only be set by the Cloud Dataflow\nservice, and only as a transition from `JOB_STATE_DRAINING`.", + "'JOB_STATE_PENDING' indicates that the job has been created but is not yet\nrunning. Jobs that are pending may only transition to `JOB_STATE_RUNNING`,\nor `JOB_STATE_FAILED`.", + "'JOB_STATE_CANCELLING' indicates that the job has been explicitly cancelled\nand is in the process of stopping. Jobs that are cancelling may only\ntransition to 'JOB_STATE_CANCELLED' or 'JOB_STATE_FAILED'." + ], + "type": "string" + } + }, + "type": "object" + }, + "ExecutionStageSummary": { + "description": "Description of the composing transforms, names/ids, and input/outputs of a\nstage of execution. Some composing transforms and sources may have been\ngenerated by the Dataflow service during execution planning.", + "id": "ExecutionStageSummary", + "properties": { + "componentSource": { + "description": "Collections produced and consumed by component transforms of this stage.", + "items": { + "$ref": "ComponentSource" + }, + "type": "array" + }, + "componentTransform": { + "description": "Transforms that comprise this execution stage.", + "items": { + "$ref": "ComponentTransform" + }, + "type": "array" + }, + "id": { + "description": "Dataflow service generated id for this stage.", + "type": "string" + }, + "inputSource": { + "description": "Input sources for this stage.", + "items": { + "$ref": "StageSource" + }, + "type": "array" + }, + "kind": { + "description": "Type of tranform this stage is executing.", + "enum": [ + "UNKNOWN_KIND", + "PAR_DO_KIND", + "GROUP_BY_KEY_KIND", + "FLATTEN_KIND", + "READ_KIND", + "WRITE_KIND", + "CONSTANT_KIND", + "SINGLETON_KIND", + "SHUFFLE_KIND" + ], + "enumDescriptions": [ + "Unrecognized transform type.", + "ParDo transform.", + "Group By Key transform.", + "Flatten transform.", + "Read transform.", + "Write transform.", + "Constructs from a constant value, such as with Create.of.", + "Creates a Singleton view of a collection.", + "Opening or closing a shuffle session, often as part of a GroupByKey." + ], + "type": "string" + }, + "name": { + "description": "Dataflow service generated name for this stage.", + "type": "string" + }, + "outputSource": { + "description": "Output sources for this stage.", + "items": { + "$ref": "StageSource" + }, + "type": "array" + } + }, + "type": "object" + }, + "FailedLocation": { + "description": "Indicates which location failed to respond to a request for data.", + "id": "FailedLocation", + "properties": { + "name": { + "description": "The name of the failed location.", + "type": "string" + } + }, + "type": "object" + }, + "FlattenInstruction": { + "description": "An instruction that copies its inputs (zero or more) to its (single) output.", + "id": "FlattenInstruction", + "properties": { + "inputs": { + "description": "Describes the inputs to the flatten instruction.", + "items": { + "$ref": "InstructionInput" + }, + "type": "array" + } + }, + "type": "object" + }, + "FloatingPointList": { + "description": "A metric value representing a list of floating point numbers.", + "id": "FloatingPointList", + "properties": { + "elements": { + "description": "Elements of the list.", + "items": { + "format": "double", + "type": "number" + }, + "type": "array" + } + }, + "type": "object" + }, + "FloatingPointMean": { + "description": "A representation of a floating point mean metric contribution.", + "id": "FloatingPointMean", + "properties": { + "count": { + "$ref": "SplitInt64", + "description": "The number of values being aggregated." + }, + "sum": { + "description": "The sum of all values being aggregated.", + "format": "double", + "type": "number" + } + }, + "type": "object" + }, + "GetDebugConfigRequest": { + "description": "Request to get updated debug configuration for component.", + "id": "GetDebugConfigRequest", + "properties": { + "componentId": { + "description": "The internal component id for which debug configuration is\nrequested.", "type": "string" }, "location": { "description": "The location which contains the job specified by job_id.", "type": "string" }, - "data": { - "description": "The encoded debug information.", + "workerId": { + "description": "The worker id, i.e., VM hostname.", "type": "string" } }, - "id": "SendDebugCaptureRequest", - "description": "Request to send encoded debug information.", "type": "object" }, "GetDebugConfigResponse": { "description": "Response to a get debug configuration request.", - "type": "object", + "id": "GetDebugConfigResponse", "properties": { "config": { "description": "The encoded debug configuration for the requested component.", "type": "string" } }, - "id": "GetDebugConfigResponse" + "type": "object" }, - "ComponentTransform": { - "description": "Description of a transform executed as part of an execution stage.", - "type": "object", + "GetTemplateResponse": { + "description": "The response to a GetTemplate request.", + "id": "GetTemplateResponse", "properties": { - "originalTransform": { - "description": "User name for the original user transform with which this transform is\nmost closely associated.", + "metadata": { + "$ref": "TemplateMetadata", + "description": "The template metadata describing the template name, available\nparameters, etc." + }, + "status": { + "$ref": "Status", + "description": "The status of the get template request. Any problems with the\nrequest will be indicated in the error_details." + } + }, + "type": "object" + }, + "Histogram": { + "description": "Histogram of value counts for a distribution.\n\nBuckets have an inclusive lower bound and exclusive upper bound and use\n\"1,2,5 bucketing\": The first bucket range is from [0,1) and all subsequent\nbucket boundaries are powers of ten multiplied by 1, 2, or 5. Thus, bucket\nboundaries are 0, 1, 2, 5, 10, 20, 50, 100, 200, 500, 1000, ...\nNegative values are not supported.", + "id": "Histogram", + "properties": { + "bucketCounts": { + "description": "Counts of values in each bucket. For efficiency, prefix and trailing\nbuckets with count = 0 are elided. Buckets can store the full range of\nvalues of an unsigned long, with ULLONG_MAX falling into the 59th bucket\nwith range [1e19, 2e19).", + "items": { + "format": "int64", + "type": "string" + }, + "type": "array" + }, + "firstBucketOffset": { + "description": "Starting index of first stored bucket. The non-inclusive upper-bound of\nthe ith bucket is given by:\n pow(10,(i-first_bucket_offset)/3) * (1,2,5)[(i-first_bucket_offset)%3]", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "InstructionInput": { + "description": "An input of an instruction, as a reference to an output of a\nproducer instruction.", + "id": "InstructionInput", + "properties": { + "outputNum": { + "description": "The output index (origin zero) within the producer.", + "format": "int32", + "type": "integer" + }, + "producerInstructionIndex": { + "description": "The index (origin zero) of the parallel instruction that produces\nthe output to be consumed by this input. This index is relative\nto the list of instructions in this input's instruction's\ncontaining MapTask.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "InstructionOutput": { + "description": "An output of an instruction.", + "id": "InstructionOutput", + "properties": { + "codec": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "description": "The codec to use to encode data being written via this output.", + "type": "object" + }, + "name": { + "description": "The user-provided name of this output.", + "type": "string" + }, + "onlyCountKeyBytes": { + "description": "For system-generated byte and mean byte metrics, certain instructions\nshould only report the key size.", + "type": "boolean" + }, + "onlyCountValueBytes": { + "description": "For system-generated byte and mean byte metrics, certain instructions\nshould only report the value size.", + "type": "boolean" + }, + "originalName": { + "description": "System-defined name for this output in the original workflow graph.\nOutputs that do not contribute to an original instruction do not set this.", + "type": "string" + }, + "systemName": { + "description": "System-defined name of this output.\nUnique across the workflow.", + "type": "string" + } + }, + "type": "object" + }, + "IntegerGauge": { + "description": "A metric value representing temporal values of a variable.", + "id": "IntegerGauge", + "properties": { + "timestamp": { + "description": "The time at which this value was measured. Measured as msecs from epoch.", + "format": "google-datetime", + "type": "string" + }, + "value": { + "$ref": "SplitInt64", + "description": "The value of the variable represented by this gauge." + } + }, + "type": "object" + }, + "IntegerList": { + "description": "A metric value representing a list of integers.", + "id": "IntegerList", + "properties": { + "elements": { + "description": "Elements of the list.", + "items": { + "$ref": "SplitInt64" + }, + "type": "array" + } + }, + "type": "object" + }, + "IntegerMean": { + "description": "A representation of an integer mean metric contribution.", + "id": "IntegerMean", + "properties": { + "count": { + "$ref": "SplitInt64", + "description": "The number of values being aggregated." + }, + "sum": { + "$ref": "SplitInt64", + "description": "The sum of all values being aggregated." + } + }, + "type": "object" + }, + "Job": { + "description": "Defines a job to be run by the Cloud Dataflow service.", + "id": "Job", + "properties": { + "clientRequestId": { + "description": "The client's unique identifier of the job, re-used across retried attempts.\nIf this field is set, the service will ensure its uniqueness.\nThe request to create a job will fail if the service has knowledge of a\npreviously submitted job with the same client's ID and job name.\nThe caller may use this field to ensure idempotence of job\ncreation across retried attempts to create a job.\nBy default, the field is empty and, in that case, the service ignores it.", + "type": "string" + }, + "createTime": { + "description": "The timestamp when the job was initially created. Immutable and set by the\nCloud Dataflow service.", + "format": "google-datetime", + "type": "string" + }, + "currentState": { + "description": "The current state of the job.\n\nJobs are created in the `JOB_STATE_STOPPED` state unless otherwise\nspecified.\n\nA job in the `JOB_STATE_RUNNING` state may asynchronously enter a\nterminal state. After a job has reached a terminal state, no\nfurther state updates may be made.\n\nThis field may be mutated by the Cloud Dataflow service;\ncallers cannot mutate it.", + "enum": [ + "JOB_STATE_UNKNOWN", + "JOB_STATE_STOPPED", + "JOB_STATE_RUNNING", + "JOB_STATE_DONE", + "JOB_STATE_FAILED", + "JOB_STATE_CANCELLED", + "JOB_STATE_UPDATED", + "JOB_STATE_DRAINING", + "JOB_STATE_DRAINED", + "JOB_STATE_PENDING", + "JOB_STATE_CANCELLING" + ], + "enumDescriptions": [ + "The job's run state isn't specified.", + "`JOB_STATE_STOPPED` indicates that the job has not\nyet started to run.", + "`JOB_STATE_RUNNING` indicates that the job is currently running.", + "`JOB_STATE_DONE` indicates that the job has successfully completed.\nThis is a terminal job state. This state may be set by the Cloud Dataflow\nservice, as a transition from `JOB_STATE_RUNNING`. It may also be set via a\nCloud Dataflow `UpdateJob` call, if the job has not yet reached a terminal\nstate.", + "`JOB_STATE_FAILED` indicates that the job has failed. This is a\nterminal job state. This state may only be set by the Cloud Dataflow\nservice, and only as a transition from `JOB_STATE_RUNNING`.", + "`JOB_STATE_CANCELLED` indicates that the job has been explicitly\ncancelled. This is a terminal job state. This state may only be\nset via a Cloud Dataflow `UpdateJob` call, and only if the job has not\nyet reached another terminal state.", + "`JOB_STATE_UPDATED` indicates that the job was successfully updated,\nmeaning that this job was stopped and another job was started, inheriting\nstate from this one. This is a terminal job state. This state may only be\nset by the Cloud Dataflow service, and only as a transition from\n`JOB_STATE_RUNNING`.", + "`JOB_STATE_DRAINING` indicates that the job is in the process of draining.\nA draining job has stopped pulling from its input sources and is processing\nany data that remains in-flight. This state may be set via a Cloud Dataflow\n`UpdateJob` call, but only as a transition from `JOB_STATE_RUNNING`. Jobs\nthat are draining may only transition to `JOB_STATE_DRAINED`,\n`JOB_STATE_CANCELLED`, or `JOB_STATE_FAILED`.", + "`JOB_STATE_DRAINED` indicates that the job has been drained.\nA drained job terminated by stopping pulling from its input sources and\nprocessing any data that remained in-flight when draining was requested.\nThis state is a terminal state, may only be set by the Cloud Dataflow\nservice, and only as a transition from `JOB_STATE_DRAINING`.", + "'JOB_STATE_PENDING' indicates that the job has been created but is not yet\nrunning. Jobs that are pending may only transition to `JOB_STATE_RUNNING`,\nor `JOB_STATE_FAILED`.", + "'JOB_STATE_CANCELLING' indicates that the job has been explicitly cancelled\nand is in the process of stopping. Jobs that are cancelling may only\ntransition to 'JOB_STATE_CANCELLED' or 'JOB_STATE_FAILED'." + ], + "type": "string" + }, + "currentStateTime": { + "description": "The timestamp associated with the current state.", + "format": "google-datetime", + "type": "string" + }, + "environment": { + "$ref": "Environment", + "description": "The environment for the job." + }, + "executionInfo": { + "$ref": "JobExecutionInfo", + "description": "Deprecated." + }, + "id": { + "description": "The unique ID of this job.\n\nThis field is set by the Cloud Dataflow service when the Job is\ncreated, and is immutable for the life of the job.", + "type": "string" + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "User-defined labels for this job.\n\nThe labels map can contain no more than 64 entries. Entries of the labels\nmap are UTF8 strings that comply with the following restrictions:\n\n* Keys must conform to regexp: \\p{Ll}\\p{Lo}{0,62}\n* Values must conform to regexp: [\\p{Ll}\\p{Lo}\\p{N}_-]{0,63}\n* Both keys and values are additionally constrained to be \u003c= 128 bytes in\nsize.", + "type": "object" + }, + "location": { + "description": "The location that contains this job.", "type": "string" }, "name": { - "description": "Dataflow service generated name for this source.", + "description": "The user-specified Cloud Dataflow job name.\n\nOnly one Job with a given name may exist in a project at any\ngiven time. If a caller attempts to create a Job with the same\nname as an already-existing Job, the attempt returns the\nexisting Job.\n\nThe name must match the regular expression\n`[a-z]([-a-z0-9]{0,38}[a-z0-9])?`", "type": "string" }, - "userName": { - "description": "Human-readable name for this transform; may be user or system generated.", - "type": "string" - } - }, - "id": "ComponentTransform" - }, - "StreamingSetupTask": { - "description": "A task which initializes part of a streaming Dataflow job.", - "type": "object", - "properties": { - "receiveWorkPort": { - "description": "The TCP port on which the worker should listen for messages from\nother streaming computation workers.", - "format": "int32", - "type": "integer" + "pipelineDescription": { + "$ref": "PipelineDescription", + "description": "Preliminary field: The format of this data may change at any time.\nA description of the user pipeline and stages through which it is executed.\nCreated by Cloud Dataflow service. Only retrieved with\nJOB_VIEW_DESCRIPTION or JOB_VIEW_ALL." }, - "streamingComputationTopology": { - "description": "The global topology of the streaming Dataflow job.", - "$ref": "TopologyConfig" - }, - "workerHarnessPort": { - "description": "The TCP port used by the worker to communicate with the Dataflow\nworker harness.", - "format": "int32", - "type": "integer" - }, - "drain": { - "description": "The user has requested drain.", - "type": "boolean" - } - }, - "id": "StreamingSetupTask" - }, - "PubsubLocation": { - "description": "Identifies a pubsub location to use for transferring data into or\nout of a streaming Dataflow job.", - "type": "object", - "properties": { - "trackingSubscription": { - "description": "If set, specifies the pubsub subscription that will be used for tracking\ncustom time timestamps for watermark estimation.", + "projectId": { + "description": "The ID of the Cloud Platform project that the job belongs to.", "type": "string" }, - "withAttributes": { - "description": "If true, then the client has requested to get pubsub attributes.", - "type": "boolean" - }, - "idLabel": { - "description": "If set, contains a pubsub label from which to extract record ids.\nIf left empty, record deduplication will be strictly best effort.", + "replaceJobId": { + "description": "If this job is an update of an existing job, this field is the job ID\nof the job it replaced.\n\nWhen sending a `CreateJobRequest`, you can update a job by specifying it\nhere. The job named here is stopped, and its intermediate state is\ntransferred to this job.", "type": "string" }, - "topic": { - "description": "A pubsub topic, in the form of\n\"pubsub.googleapis.com/topics/\u003cproject-id\u003e/\u003ctopic-name\u003e\"", + "replacedByJobId": { + "description": "If another job is an update of this job (and thus, this job is in\n`JOB_STATE_UPDATED`), this field contains the ID of that job.", "type": "string" }, - "timestampLabel": { - "description": "If set, contains a pubsub label from which to extract record timestamps.\nIf left empty, record timestamps will be generated upon arrival.", + "requestedState": { + "description": "The job's requested state.\n\n`UpdateJob` may be used to switch between the `JOB_STATE_STOPPED` and\n`JOB_STATE_RUNNING` states, by setting requested_state. `UpdateJob` may\nalso be used to directly set a job's requested state to\n`JOB_STATE_CANCELLED` or `JOB_STATE_DONE`, irrevocably terminating the\njob if it has not already reached a terminal state.", + "enum": [ + "JOB_STATE_UNKNOWN", + "JOB_STATE_STOPPED", + "JOB_STATE_RUNNING", + "JOB_STATE_DONE", + "JOB_STATE_FAILED", + "JOB_STATE_CANCELLED", + "JOB_STATE_UPDATED", + "JOB_STATE_DRAINING", + "JOB_STATE_DRAINED", + "JOB_STATE_PENDING", + "JOB_STATE_CANCELLING" + ], + "enumDescriptions": [ + "The job's run state isn't specified.", + "`JOB_STATE_STOPPED` indicates that the job has not\nyet started to run.", + "`JOB_STATE_RUNNING` indicates that the job is currently running.", + "`JOB_STATE_DONE` indicates that the job has successfully completed.\nThis is a terminal job state. This state may be set by the Cloud Dataflow\nservice, as a transition from `JOB_STATE_RUNNING`. It may also be set via a\nCloud Dataflow `UpdateJob` call, if the job has not yet reached a terminal\nstate.", + "`JOB_STATE_FAILED` indicates that the job has failed. This is a\nterminal job state. This state may only be set by the Cloud Dataflow\nservice, and only as a transition from `JOB_STATE_RUNNING`.", + "`JOB_STATE_CANCELLED` indicates that the job has been explicitly\ncancelled. This is a terminal job state. This state may only be\nset via a Cloud Dataflow `UpdateJob` call, and only if the job has not\nyet reached another terminal state.", + "`JOB_STATE_UPDATED` indicates that the job was successfully updated,\nmeaning that this job was stopped and another job was started, inheriting\nstate from this one. This is a terminal job state. This state may only be\nset by the Cloud Dataflow service, and only as a transition from\n`JOB_STATE_RUNNING`.", + "`JOB_STATE_DRAINING` indicates that the job is in the process of draining.\nA draining job has stopped pulling from its input sources and is processing\nany data that remains in-flight. This state may be set via a Cloud Dataflow\n`UpdateJob` call, but only as a transition from `JOB_STATE_RUNNING`. Jobs\nthat are draining may only transition to `JOB_STATE_DRAINED`,\n`JOB_STATE_CANCELLED`, or `JOB_STATE_FAILED`.", + "`JOB_STATE_DRAINED` indicates that the job has been drained.\nA drained job terminated by stopping pulling from its input sources and\nprocessing any data that remained in-flight when draining was requested.\nThis state is a terminal state, may only be set by the Cloud Dataflow\nservice, and only as a transition from `JOB_STATE_DRAINING`.", + "'JOB_STATE_PENDING' indicates that the job has been created but is not yet\nrunning. Jobs that are pending may only transition to `JOB_STATE_RUNNING`,\nor `JOB_STATE_FAILED`.", + "'JOB_STATE_CANCELLING' indicates that the job has been explicitly cancelled\nand is in the process of stopping. Jobs that are cancelling may only\ntransition to 'JOB_STATE_CANCELLED' or 'JOB_STATE_FAILED'." + ], "type": "string" }, - "subscription": { - "description": "A pubsub subscription, in the form of\n\"pubsub.googleapis.com/subscriptions/\u003cproject-id\u003e/\u003csubscription-name\u003e\"", - "type": "string" - }, - "dropLateData": { - "description": "Indicates whether the pipeline allows late-arriving data.", - "type": "boolean" - } - }, - "id": "PubsubLocation" - }, - "WorkerHealthReport": { - "description": "WorkerHealthReport contains information about the health of a worker.\n\nThe VM should be identified by the labels attached to the WorkerMessage that\nthis health ping belongs to.", - "type": "object", - "properties": { - "vmIsHealthy": { - "description": "Whether the VM is healthy.", - "type": "boolean" - }, - "reportInterval": { - "description": "The interval at which the worker is sending health reports.\nThe default value of 0 should be interpreted as the field is not being\nexplicitly set by the worker.", - "format": "google-duration", - "type": "string" - }, - "pods": { - "description": "The pods running on the worker. See:\nhttp://kubernetes.io/v1.1/docs/api-reference/v1/definitions.html#_v1_pod\n\nThis field is used by the worker to send the status of the indvidual\ncontainers running on each worker.", - "type": "array", + "stageStates": { + "description": "This field may be mutated by the Cloud Dataflow service;\ncallers cannot mutate it.", "items": { - "additionalProperties": { - "description": "Properties of the object.", - "type": "any" - }, - "type": "object" - } + "$ref": "ExecutionStageState" + }, + "type": "array" }, - "vmStartupTime": { - "description": "The time the VM was booted.", - "format": "google-datetime", + "steps": { + "description": "The top-level steps that constitute the entire job.", + "items": { + "$ref": "Step" + }, + "type": "array" + }, + "tempFiles": { + "description": "A set of files the system should be aware of that are used\nfor temporary storage. These temporary files will be\nremoved on job completion.\nNo duplicates are allowed.\nNo file patterns are supported.\n\nThe supported files are:\n\nGoogle Cloud Storage:\n\n storage.googleapis.com/{bucket}/{object}\n bucket.storage.googleapis.com/{object}", + "items": { + "type": "string" + }, + "type": "array" + }, + "transformNameMapping": { + "additionalProperties": { + "type": "string" + }, + "description": "The map of transform name prefixes of the job to be replaced to the\ncorresponding name prefixes of the new job.", + "type": "object" + }, + "type": { + "description": "The type of Cloud Dataflow job.", + "enum": [ + "JOB_TYPE_UNKNOWN", + "JOB_TYPE_BATCH", + "JOB_TYPE_STREAMING" + ], + "enumDescriptions": [ + "The type of the job is unspecified, or unknown.", + "A batch job with a well-defined end point: data is read, data is\nprocessed, data is written, and the job is done.", + "A continuously streaming job with no end: data is read,\nprocessed, and written continuously." + ], "type": "string" } }, - "id": "WorkerHealthReport" + "type": "object" + }, + "JobExecutionInfo": { + "description": "Additional information about how a Cloud Dataflow job will be executed that\nisn't contained in the submitted job.", + "id": "JobExecutionInfo", + "properties": { + "stages": { + "additionalProperties": { + "$ref": "JobExecutionStageInfo" + }, + "description": "A mapping from each stage to the information about that stage.", + "type": "object" + } + }, + "type": "object" + }, + "JobExecutionStageInfo": { + "description": "Contains information about how a particular\ngoogle.dataflow.v1beta3.Step will be executed.", + "id": "JobExecutionStageInfo", + "properties": { + "stepName": { + "description": "The steps associated with the execution stage.\nNote that stages may have several steps, and that a given step\nmight be run by more than one stage.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" }, "JobMessage": { "description": "A particular message pertaining to a Dataflow job.", - "type": "object", + "id": "JobMessage", "properties": { - "time": { - "description": "The timestamp of the message.", - "format": "google-datetime", - "type": "string" - }, "id": { "description": "Deprecated.", "type": "string" }, - "messageText": { - "description": "The text of the message.", - "type": "string" - }, "messageImportance": { + "description": "Importance level of the message.", "enum": [ "JOB_MESSAGE_IMPORTANCE_UNKNOWN", "JOB_MESSAGE_DEBUG", @@ -2753,8 +2850,6 @@ "JOB_MESSAGE_WARNING", "JOB_MESSAGE_ERROR" ], - "description": "Importance level of the message.", - "type": "string", "enumDescriptions": [ "The message importance isn't specified, or is unknown.", "The message is at the 'debug' level: typically only useful for\nsoftware engineers working on the code the job is running.\nTypically, Dataflow pipeline runners do not display log messages\nat this level by default.", @@ -2762,125 +2857,247 @@ "The message is at the 'basic' level: useful for keeping\ntrack of the execution of a Dataflow pipeline. Typically,\nDataflow pipeline runners display log messages at this level by\ndefault, and these messages are displayed by default in the\nDataflow monitoring UI.", "The message is at the 'warning' level: indicating a condition\npertaining to a job which may require human intervention.\nTypically, Dataflow pipeline runners display log messages at this\nlevel by default, and these messages are displayed by default in\nthe Dataflow monitoring UI.", "The message is at the 'error' level: indicating a condition\npreventing a job from succeeding. Typically, Dataflow pipeline\nrunners display log messages at this level by default, and these\nmessages are displayed by default in the Dataflow monitoring UI." - ] - } - }, - "id": "JobMessage" - }, - "ParameterMetadata": { - "description": "Metadata for a specific parameter.", - "type": "object", - "properties": { - "isOptional": { - "description": "Optional. Whether the parameter is optional. Defaults to false.", - "type": "boolean" - }, - "name": { - "description": "Required. The name of the parameter.", + ], "type": "string" }, - "regexes": { - "description": "Optional. Regexes that the parameter must match.", - "type": "array", - "items": { - "type": "string" - } - }, - "label": { - "description": "Required. The label to display for the parameter.", + "messageText": { + "description": "The text of the message.", "type": "string" }, - "helpText": { - "description": "Required. The help text to display for the parameter.", - "type": "string" - } - }, - "id": "ParameterMetadata" - }, - "MultiOutputInfo": { - "description": "Information about an output of a multi-output DoFn.", - "type": "object", - "properties": { - "tag": { - "description": "The id of the tag the user code will emit to this output by; this\nshould correspond to the tag of some SideInputInfo.", - "type": "string" - } - }, - "id": "MultiOutputInfo" - }, - "SourceSplitRequest": { - "properties": { - "source": { - "description": "Specification of the source to be split.", - "$ref": "Source" - }, - "options": { - "description": "Hints for tuning the splitting process.", - "$ref": "SourceSplitOptions" - } - }, - "id": "SourceSplitRequest", - "description": "Represents the operation to split a high-level Source specification\ninto bundles (parts for parallel processing).\n\nAt a high level, splitting of a source into bundles happens as follows:\nSourceSplitRequest is applied to the source. If it returns\nSOURCE_SPLIT_OUTCOME_USE_CURRENT, no further splitting happens and the source\nis used \"as is\". Otherwise, splitting is applied recursively to each\nproduced DerivedSource.\n\nAs an optimization, for any Source, if its does_not_need_splitting is\ntrue, the framework assumes that splitting this source would return\nSOURCE_SPLIT_OUTCOME_USE_CURRENT, and doesn't initiate a SourceSplitRequest.\nThis applies both to the initial source being split and to bundles\nproduced from it.", - "type": "object" - }, - "SourceGetMetadataResponse": { - "description": "The result of a SourceGetMetadataOperation.", - "type": "object", - "properties": { - "metadata": { - "description": "The computed metadata.", - "$ref": "SourceMetadata" - } - }, - "id": "SourceGetMetadataResponse" - }, - "AutoscalingEvent": { - "description": "A structured message reporting an autoscaling decision made by the Dataflow\nservice.", - "type": "object", - "properties": { - "currentNumWorkers": { - "description": "The current number of workers the job has.", - "format": "int64", - "type": "string" - }, - "description": { - "description": "A message describing why the system decided to adjust the current\nnumber of workers, why it failed, or why the system decided to\nnot make any changes to the number of workers.", - "$ref": "StructuredMessage" - }, "time": { - "description": "The time this event was emitted to indicate a new target or current\nnum_workers value.", + "description": "The timestamp of the message.", + "format": "google-datetime", + "type": "string" + } + }, + "type": "object" + }, + "JobMetrics": { + "description": "JobMetrics contains a collection of metrics descibing the detailed progress\nof a Dataflow job. Metrics correspond to user-defined and system-defined\nmetrics in the job.\n\nThis resource captures only the most recent values of each metric;\ntime-series data can be queried for them (under the same metric names)\nfrom Cloud Monitoring.", + "id": "JobMetrics", + "properties": { + "metricTime": { + "description": "Timestamp as of which metric values are current.", "format": "google-datetime", "type": "string" }, - "targetNumWorkers": { - "description": "The target number of workers the worker pool wants to resize to use.", - "format": "int64", - "type": "string" - }, - "eventType": { - "enum": [ - "TYPE_UNKNOWN", - "TARGET_NUM_WORKERS_CHANGED", - "CURRENT_NUM_WORKERS_CHANGED", - "ACTUATION_FAILURE", - "NO_CHANGE" - ], - "description": "The type of autoscaling event to report.", - "type": "string", - "enumDescriptions": [ - "Default type for the enum. Value should never be returned.", - "The TARGET_NUM_WORKERS_CHANGED type should be used when the target\nworker pool size has changed at the start of an actuation. An event\nshould always be specified as TARGET_NUM_WORKERS_CHANGED if it reflects\na change in the target_num_workers.", - "The CURRENT_NUM_WORKERS_CHANGED type should be used when actual worker\npool size has been changed, but the target_num_workers has not changed.", - "The ACTUATION_FAILURE type should be used when we want to report\nan error to the user indicating why the current number of workers\nin the pool could not be changed.\nDisplayed in the current status and history widgets.", - "Used when we want to report to the user a reason why we are\nnot currently adjusting the number of workers.\nShould specify both target_num_workers, current_num_workers and a\ndecision_message." - ] + "metrics": { + "description": "All metrics for this job.", + "items": { + "$ref": "MetricUpdate" + }, + "type": "array" } }, - "id": "AutoscalingEvent" + "type": "object" + }, + "KeyRangeDataDiskAssignment": { + "description": "Data disk assignment information for a specific key-range of a sharded\ncomputation.\nCurrently we only support UTF-8 character splits to simplify encoding into\nJSON.", + "id": "KeyRangeDataDiskAssignment", + "properties": { + "dataDisk": { + "description": "The name of the data disk where data for this range is stored.\nThis name is local to the Google Cloud Platform project and uniquely\nidentifies the disk within that project, for example\n\"myproject-1014-104817-4c2-harness-0-disk-1\".", + "type": "string" + }, + "end": { + "description": "The end (exclusive) of the key range.", + "type": "string" + }, + "start": { + "description": "The start (inclusive) of the key range.", + "type": "string" + } + }, + "type": "object" + }, + "KeyRangeLocation": { + "description": "Location information for a specific key-range of a sharded computation.\nCurrently we only support UTF-8 character splits to simplify encoding into\nJSON.", + "id": "KeyRangeLocation", + "properties": { + "dataDisk": { + "description": "The name of the data disk where data for this range is stored.\nThis name is local to the Google Cloud Platform project and uniquely\nidentifies the disk within that project, for example\n\"myproject-1014-104817-4c2-harness-0-disk-1\".", + "type": "string" + }, + "deliveryEndpoint": { + "description": "The physical location of this range assignment to be used for\nstreaming computation cross-worker message delivery.", + "type": "string" + }, + "deprecatedPersistentDirectory": { + "description": "DEPRECATED. The location of the persistent state for this range, as a\npersistent directory in the worker local filesystem.", + "type": "string" + }, + "end": { + "description": "The end (exclusive) of the key range.", + "type": "string" + }, + "start": { + "description": "The start (inclusive) of the key range.", + "type": "string" + } + }, + "type": "object" + }, + "LaunchTemplateParameters": { + "description": "Parameters to provide to the template being launched.", + "id": "LaunchTemplateParameters", + "properties": { + "environment": { + "$ref": "RuntimeEnvironment", + "description": "The runtime environment for the job." + }, + "jobName": { + "description": "Required. The job name to use for the created job.", + "type": "string" + }, + "parameters": { + "additionalProperties": { + "type": "string" + }, + "description": "The runtime parameters to pass to the job.", + "type": "object" + } + }, + "type": "object" + }, + "LaunchTemplateResponse": { + "description": "Response to the request to launch a template.", + "id": "LaunchTemplateResponse", + "properties": { + "job": { + "$ref": "Job", + "description": "The job that was launched, if the request was not a dry run and\nthe job was successfully launched." + } + }, + "type": "object" + }, + "LeaseWorkItemRequest": { + "description": "Request to lease WorkItems.", + "id": "LeaseWorkItemRequest", + "properties": { + "currentWorkerTime": { + "description": "The current timestamp at the worker.", + "format": "google-datetime", + "type": "string" + }, + "location": { + "description": "The location which contains the WorkItem's job.", + "type": "string" + }, + "requestedLeaseDuration": { + "description": "The initial lease period.", + "format": "google-duration", + "type": "string" + }, + "workItemTypes": { + "description": "Filter for WorkItem type.", + "items": { + "type": "string" + }, + "type": "array" + }, + "workerCapabilities": { + "description": "Worker capabilities. WorkItems might be limited to workers with specific\ncapabilities.", + "items": { + "type": "string" + }, + "type": "array" + }, + "workerId": { + "description": "Identifies the worker leasing work -- typically the ID of the\nvirtual machine running the worker.", + "type": "string" + } + }, + "type": "object" + }, + "LeaseWorkItemResponse": { + "description": "Response to a request to lease WorkItems.", + "id": "LeaseWorkItemResponse", + "properties": { + "workItems": { + "description": "A list of the leased WorkItems.", + "items": { + "$ref": "WorkItem" + }, + "type": "array" + } + }, + "type": "object" + }, + "ListJobMessagesResponse": { + "description": "Response to a request to list job messages.", + "id": "ListJobMessagesResponse", + "properties": { + "autoscalingEvents": { + "description": "Autoscaling events in ascending timestamp order.", + "items": { + "$ref": "AutoscalingEvent" + }, + "type": "array" + }, + "jobMessages": { + "description": "Messages in ascending timestamp order.", + "items": { + "$ref": "JobMessage" + }, + "type": "array" + }, + "nextPageToken": { + "description": "The token to obtain the next page of results if there are more.", + "type": "string" + } + }, + "type": "object" + }, + "ListJobsResponse": { + "description": "Response to a request to list Cloud Dataflow jobs. This may be a partial\nresponse, depending on the page size in the ListJobsRequest.", + "id": "ListJobsResponse", + "properties": { + "failedLocation": { + "description": "Zero or more messages describing locations that failed to respond.", + "items": { + "$ref": "FailedLocation" + }, + "type": "array" + }, + "jobs": { + "description": "A subset of the requested job information.", + "items": { + "$ref": "Job" + }, + "type": "array" + }, + "nextPageToken": { + "description": "Set if there may be more results than fit in this response.", + "type": "string" + } + }, + "type": "object" + }, + "MapTask": { + "description": "MapTask consists of an ordered set of instructions, each of which\ndescribes one particular low-level operation for the worker to\nperform in order to accomplish the MapTask's WorkItem.\n\nEach instruction must appear in the list before any instructions which\ndepends on its output.", + "id": "MapTask", + "properties": { + "instructions": { + "description": "The instructions in the MapTask.", + "items": { + "$ref": "ParallelInstruction" + }, + "type": "array" + }, + "stageName": { + "description": "System-defined name of the stage containing this MapTask.\nUnique across the workflow.", + "type": "string" + }, + "systemName": { + "description": "System-defined name of this MapTask.\nUnique across the workflow.", + "type": "string" + } + }, + "type": "object" }, "MetricShortId": { "description": "The metric short id is returned to the user alongside an offset into\nReportWorkItemStatusRequest", - "type": "object", + "id": "MetricShortId", "properties": { "metricIndex": { "description": "The index of the corresponding metric in\nthe ReportWorkItemStatusRequest. Required.", @@ -2893,114 +3110,366 @@ "type": "string" } }, - "id": "MetricShortId" + "type": "object" }, - "ShellTask": { + "MetricStructuredName": { + "description": "Identifies a metric, by describing the source which generated the\nmetric.", + "id": "MetricStructuredName", "properties": { - "exitCode": { - "description": "Exit code for the task.", + "context": { + "additionalProperties": { + "type": "string" + }, + "description": "Zero or more labeled fields which identify the part of the job this\nmetric is associated with, such as the name of a step or collection.\n\nFor example, built-in counters associated with steps will have\ncontext['step'] = \u003cstep-name\u003e. Counters associated with PCollections\nin the SDK will have context['pcollection'] = \u003cpcollection-name\u003e.", + "type": "object" + }, + "name": { + "description": "Worker-defined metric name.", + "type": "string" + }, + "origin": { + "description": "Origin (namespace) of metric name. May be blank for user-define metrics;\nwill be \"dataflow\" for metrics defined by the Dataflow service or SDK.", + "type": "string" + } + }, + "type": "object" + }, + "MetricUpdate": { + "description": "Describes the state of a metric.", + "id": "MetricUpdate", + "properties": { + "cumulative": { + "description": "True if this metric is reported as the total cumulative aggregate\nvalue accumulated since the worker started working on this WorkItem.\nBy default this is false, indicating that this metric is reported\nas a delta that is not associated with any WorkItem.", + "type": "boolean" + }, + "distribution": { + "description": "A struct value describing properties of a distribution of numeric values.", + "type": "any" + }, + "internal": { + "description": "Worker-computed aggregate value for internal use by the Dataflow\nservice.", + "type": "any" + }, + "kind": { + "description": "Metric aggregation kind. The possible metric aggregation kinds are\n\"Sum\", \"Max\", \"Min\", \"Mean\", \"Set\", \"And\", \"Or\", and \"Distribution\".\nThe specified aggregation kind is case-insensitive.\n\nIf omitted, this is not an aggregated value but instead\na single metric sample value.", + "type": "string" + }, + "meanCount": { + "description": "Worker-computed aggregate value for the \"Mean\" aggregation kind.\nThis holds the count of the aggregated values and is used in combination\nwith mean_sum above to obtain the actual mean aggregate value.\nThe only possible value type is Long.", + "type": "any" + }, + "meanSum": { + "description": "Worker-computed aggregate value for the \"Mean\" aggregation kind.\nThis holds the sum of the aggregated values and is used in combination\nwith mean_count below to obtain the actual mean aggregate value.\nThe only possible value types are Long and Double.", + "type": "any" + }, + "name": { + "$ref": "MetricStructuredName", + "description": "Name of the metric." + }, + "scalar": { + "description": "Worker-computed aggregate value for aggregation kinds \"Sum\", \"Max\", \"Min\",\n\"And\", and \"Or\". The possible value types are Long, Double, and Boolean.", + "type": "any" + }, + "set": { + "description": "Worker-computed aggregate value for the \"Set\" aggregation kind. The only\npossible value type is a list of Values whose type can be Long, Double,\nor String, according to the metric's type. All Values in the list must\nbe of the same type.", + "type": "any" + }, + "updateTime": { + "description": "Timestamp associated with the metric value. Optional when workers are\nreporting work progress; it will be filled in responses from the\nmetrics API.", + "format": "google-datetime", + "type": "string" + } + }, + "type": "object" + }, + "MountedDataDisk": { + "description": "Describes mounted data disk.", + "id": "MountedDataDisk", + "properties": { + "dataDisk": { + "description": "The name of the data disk.\nThis name is local to the Google Cloud Platform project and uniquely\nidentifies the disk within that project, for example\n\"myproject-1014-104817-4c2-harness-0-disk-1\".", + "type": "string" + } + }, + "type": "object" + }, + "MultiOutputInfo": { + "description": "Information about an output of a multi-output DoFn.", + "id": "MultiOutputInfo", + "properties": { + "tag": { + "description": "The id of the tag the user code will emit to this output by; this\nshould correspond to the tag of some SideInputInfo.", + "type": "string" + } + }, + "type": "object" + }, + "NameAndKind": { + "description": "Basic metadata about a counter.", + "id": "NameAndKind", + "properties": { + "kind": { + "description": "Counter aggregation kind.", + "enum": [ + "INVALID", + "SUM", + "MAX", + "MIN", + "MEAN", + "OR", + "AND", + "SET", + "DISTRIBUTION", + "LATEST_VALUE" + ], + "enumDescriptions": [ + "Counter aggregation kind was not set.", + "Aggregated value is the sum of all contributed values.", + "Aggregated value is the max of all contributed values.", + "Aggregated value is the min of all contributed values.", + "Aggregated value is the mean of all contributed values.", + "Aggregated value represents the logical 'or' of all contributed values.", + "Aggregated value represents the logical 'and' of all contributed values.", + "Aggregated value is a set of unique contributed values.", + "Aggregated value captures statistics about a distribution.", + "Aggregated value tracks the latest value of a variable." + ], + "type": "string" + }, + "name": { + "description": "Name of the counter.", + "type": "string" + } + }, + "type": "object" + }, + "Package": { + "description": "The packages that must be installed in order for a worker to run the\nsteps of the Cloud Dataflow job that will be assigned to its worker\npool.\n\nThis is the mechanism by which the Cloud Dataflow SDK causes code to\nbe loaded onto the workers. For example, the Cloud Dataflow Java SDK\nmight use this to install jars containing the user's code and all of the\nvarious dependencies (libraries, data files, etc.) required in order\nfor that code to run.", + "id": "Package", + "properties": { + "location": { + "description": "The resource to read the package from. The supported resource type is:\n\nGoogle Cloud Storage:\n\n storage.googleapis.com/{bucket}\n bucket.storage.googleapis.com/", + "type": "string" + }, + "name": { + "description": "The name of the package.", + "type": "string" + } + }, + "type": "object" + }, + "ParDoInstruction": { + "description": "An instruction that does a ParDo operation.\nTakes one main input and zero or more side inputs, and produces\nzero or more outputs.\nRuns user code.", + "id": "ParDoInstruction", + "properties": { + "input": { + "$ref": "InstructionInput", + "description": "The input." + }, + "multiOutputInfos": { + "description": "Information about each of the outputs, if user_fn is a MultiDoFn.", + "items": { + "$ref": "MultiOutputInfo" + }, + "type": "array" + }, + "numOutputs": { + "description": "The number of outputs.", "format": "int32", "type": "integer" }, - "command": { - "description": "The shell command to run.", - "type": "string" + "sideInputs": { + "description": "Zero or more side inputs.", + "items": { + "$ref": "SideInputInfo" + }, + "type": "array" + }, + "userFn": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "description": "The user function to invoke.", + "type": "object" } }, - "id": "ShellTask", - "description": "A task which consists of a shell command for the worker to execute.", "type": "object" }, - "TaskRunnerSettings": { - "description": "Taskrunner configuration settings.", - "type": "object", + "ParallelInstruction": { + "description": "Describes a particular operation comprising a MapTask.", + "id": "ParallelInstruction", "properties": { - "baseTaskDir": { - "description": "The location on the worker for task-specific subdirectories.", + "flatten": { + "$ref": "FlattenInstruction", + "description": "Additional information for Flatten instructions." + }, + "name": { + "description": "User-provided name of this operation.", "type": "string" }, - "languageHint": { - "description": "The suggested backend language.", + "originalName": { + "description": "System-defined name for the operation in the original workflow graph.", "type": "string" }, - "commandlinesFileName": { - "description": "The file to store preprocessing commands in.", - "type": "string" - }, - "tempStoragePrefix": { - "description": "The prefix of the resources the taskrunner should use for\ntemporary storage.\n\nThe supported resource type is:\n\nGoogle Cloud Storage:\n storage.googleapis.com/{bucket}/{object}\n bucket.storage.googleapis.com/{object}", - "type": "string" - }, - "baseUrl": { - "description": "The base URL for the taskrunner to use when accessing Google Cloud APIs.\n\nWhen workers access Google Cloud APIs, they logically do so via\nrelative URLs. If this field is specified, it supplies the base\nURL to use for resolving these relative URLs. The normative\nalgorithm used is defined by RFC 1808, \"Relative Uniform Resource\nLocators\".\n\nIf not specified, the default value is \"http://www.googleapis.com/\"", - "type": "string" - }, - "logToSerialconsole": { - "description": "Whether to send taskrunner log info to Google Compute Engine VM serial\nconsole.", - "type": "boolean" - }, - "continueOnException": { - "description": "Whether to continue taskrunner if an exception is hit.", - "type": "boolean" - }, - "parallelWorkerSettings": { - "description": "The settings to pass to the parallel worker harness.", - "$ref": "WorkerSettings" - }, - "taskUser": { - "description": "The UNIX user ID on the worker VM to use for tasks launched by\ntaskrunner; e.g. \"root\".", - "type": "string" - }, - "vmId": { - "description": "The ID string of the VM.", - "type": "string" - }, - "alsologtostderr": { - "description": "Whether to also send taskrunner log info to stderr.", - "type": "boolean" - }, - "taskGroup": { - "description": "The UNIX group ID on the worker VM to use for tasks launched by\ntaskrunner; e.g. \"wheel\".", - "type": "string" - }, - "harnessCommand": { - "description": "The command to launch the worker harness.", - "type": "string" - }, - "logDir": { - "description": "The directory on the VM to store logs.", - "type": "string" - }, - "oauthScopes": { - "description": "The OAuth2 scopes to be requested by the taskrunner in order to\naccess the Cloud Dataflow API.", - "type": "array", + "outputs": { + "description": "Describes the outputs of the instruction.", "items": { - "type": "string" - } + "$ref": "InstructionOutput" + }, + "type": "array" }, - "dataflowApiVersion": { - "description": "The API version of endpoint, e.g. \"v1b3\"", + "parDo": { + "$ref": "ParDoInstruction", + "description": "Additional information for ParDo instructions." + }, + "partialGroupByKey": { + "$ref": "PartialGroupByKeyInstruction", + "description": "Additional information for PartialGroupByKey instructions." + }, + "read": { + "$ref": "ReadInstruction", + "description": "Additional information for Read instructions." + }, + "systemName": { + "description": "System-defined name of this operation.\nUnique across the workflow.", "type": "string" }, - "streamingWorkerMainClass": { - "description": "The streaming worker main class name.", - "type": "string" - }, - "logUploadLocation": { - "description": "Indicates where to put logs. If this is not specified, the logs\nwill not be uploaded.\n\nThe supported resource type is:\n\nGoogle Cloud Storage:\n storage.googleapis.com/{bucket}/{object}\n bucket.storage.googleapis.com/{object}", - "type": "string" - }, - "workflowFileName": { - "description": "The file to store the workflow in.", - "type": "string" + "write": { + "$ref": "WriteInstruction", + "description": "Additional information for Write instructions." } }, - "id": "TaskRunnerSettings" + "type": "object" + }, + "Parameter": { + "description": "Structured data associated with this message.", + "id": "Parameter", + "properties": { + "key": { + "description": "Key or name for this parameter.", + "type": "string" + }, + "value": { + "description": "Value for this parameter.", + "type": "any" + } + }, + "type": "object" + }, + "ParameterMetadata": { + "description": "Metadata for a specific parameter.", + "id": "ParameterMetadata", + "properties": { + "helpText": { + "description": "Required. The help text to display for the parameter.", + "type": "string" + }, + "isOptional": { + "description": "Optional. Whether the parameter is optional. Defaults to false.", + "type": "boolean" + }, + "label": { + "description": "Required. The label to display for the parameter.", + "type": "string" + }, + "name": { + "description": "Required. The name of the parameter.", + "type": "string" + }, + "regexes": { + "description": "Optional. Regexes that the parameter must match.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "PartialGroupByKeyInstruction": { + "description": "An instruction that does a partial group-by-key.\nOne input and one output.", + "id": "PartialGroupByKeyInstruction", + "properties": { + "input": { + "$ref": "InstructionInput", + "description": "Describes the input to the partial group-by-key instruction." + }, + "inputElementCodec": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "description": "The codec to use for interpreting an element in the input PTable.", + "type": "object" + }, + "originalCombineValuesInputStoreName": { + "description": "If this instruction includes a combining function this is the name of the\nintermediate store between the GBK and the CombineValues.", + "type": "string" + }, + "originalCombineValuesStepName": { + "description": "If this instruction includes a combining function, this is the name of the\nCombineValues instruction lifted into this instruction.", + "type": "string" + }, + "sideInputs": { + "description": "Zero or more side inputs.", + "items": { + "$ref": "SideInputInfo" + }, + "type": "array" + }, + "valueCombiningFn": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "description": "The value combining function to invoke.", + "type": "object" + } + }, + "type": "object" + }, + "PipelineDescription": { + "description": "A descriptive representation of submitted pipeline as well as the executed\nform. This data is provided by the Dataflow service for ease of visualizing\nthe pipeline and interpretting Dataflow provided metrics.", + "id": "PipelineDescription", + "properties": { + "displayData": { + "description": "Pipeline level display data.", + "items": { + "$ref": "DisplayData" + }, + "type": "array" + }, + "executionPipelineStage": { + "description": "Description of each stage of execution of the pipeline.", + "items": { + "$ref": "ExecutionStageSummary" + }, + "type": "array" + }, + "originalPipelineTransform": { + "description": "Description of each transform in the pipeline and collections between them.", + "items": { + "$ref": "TransformSummary" + }, + "type": "array" + } + }, + "type": "object" }, "Position": { "description": "Position defines a position within a collection of data. The value\ncan be either the end position, a key (used with ordered\ncollections), a byte offset, or a record index.", - "type": "object", + "id": "Position", "properties": { + "byteOffset": { + "description": "Position is a byte offset.", + "format": "int64", + "type": "string" + }, + "concatPosition": { + "$ref": "ConcatPosition", + "description": "CloudPosition is a concat position." + }, "end": { "description": "Position is past all other positions. Also useful for the end\nposition of an unbounded range.", "type": "boolean" @@ -3017,363 +3486,100 @@ "shufflePosition": { "description": "CloudPosition is a base64 encoded BatchShufflePosition (with FIXED\nsharding).", "type": "string" - }, - "concatPosition": { - "description": "CloudPosition is a concat position.", - "$ref": "ConcatPosition" - }, - "byteOffset": { - "description": "Position is a byte offset.", - "format": "int64", - "type": "string" } }, - "id": "Position" + "type": "object" }, - "Source": { - "description": "A source that records can be read and decoded from.", - "type": "object", + "PubsubLocation": { + "description": "Identifies a pubsub location to use for transferring data into or\nout of a streaming Dataflow job.", + "id": "PubsubLocation", "properties": { - "spec": { - "additionalProperties": { - "description": "Properties of the object.", - "type": "any" - }, - "description": "The source to read from, plus its parameters.", - "type": "object" + "dropLateData": { + "description": "Indicates whether the pipeline allows late-arriving data.", + "type": "boolean" }, - "metadata": { - "description": "Optionally, metadata for this source can be supplied right away,\navoiding a SourceGetMetadataOperation roundtrip\n(see SourceOperationRequest).\n\nThis field is meaningful only in the Source objects populated\nby the user (e.g. when filling in a DerivedSource).\nSource objects supplied by the framework to the user don't have\nthis field populated.", - "$ref": "SourceMetadata" + "idLabel": { + "description": "If set, contains a pubsub label from which to extract record ids.\nIf left empty, record deduplication will be strictly best effort.", + "type": "string" }, - "baseSpecs": { - "description": "While splitting, sources may specify the produced bundles\nas differences against another source, in order to save backend-side\nmemory and allow bigger jobs. For details, see SourceSplitRequest.\nTo support this use case, the full set of parameters of the source\nis logically obtained by taking the latest explicitly specified value\nof each parameter in the order:\nbase_specs (later items win), spec (overrides anything in base_specs).", - "type": "array", - "items": { - "type": "object", - "additionalProperties": { - "description": "Properties of the object.", - "type": "any" - } - } + "subscription": { + "description": "A pubsub subscription, in the form of\n\"pubsub.googleapis.com/subscriptions/\u003cproject-id\u003e/\u003csubscription-name\u003e\"", + "type": "string" }, - "codec": { - "description": "The codec to use to decode data read from the source.", - "type": "object", - "additionalProperties": { - "description": "Properties of the object.", - "type": "any" - } + "timestampLabel": { + "description": "If set, contains a pubsub label from which to extract record timestamps.\nIf left empty, record timestamps will be generated upon arrival.", + "type": "string" }, - "doesNotNeedSplitting": { - "description": "Setting this value to true hints to the framework that the source\ndoesn't need splitting, and using SourceSplitRequest on it would\nyield SOURCE_SPLIT_OUTCOME_USE_CURRENT.\n\nE.g. a file splitter may set this to true when splitting a single file\ninto a set of byte ranges of appropriate size, and set this\nto false when splitting a filepattern into individual files.\nHowever, for efficiency, a file splitter may decide to produce\nfile subranges directly from the filepattern to avoid a splitting\nround-trip.\n\nSee SourceSplitRequest for an overview of the splitting process.\n\nThis field is meaningful only in the Source objects populated\nby the user (e.g. when filling in a DerivedSource).\nSource objects supplied by the framework to the user don't have\nthis field populated.", + "topic": { + "description": "A pubsub topic, in the form of\n\"pubsub.googleapis.com/topics/\u003cproject-id\u003e/\u003ctopic-name\u003e\"", + "type": "string" + }, + "trackingSubscription": { + "description": "If set, specifies the pubsub subscription that will be used for tracking\ncustom time timestamps for watermark estimation.", + "type": "string" + }, + "withAttributes": { + "description": "If true, then the client has requested to get pubsub attributes.", "type": "boolean" } }, - "id": "Source" - }, - "SplitInt64": { - "properties": { - "lowBits": { - "description": "The low order bits: n & 0xffffffff.", - "format": "uint32", - "type": "integer" - }, - "highBits": { - "description": "The high order bits, including the sign: n \u003e\u003e 32.", - "format": "int32", - "type": "integer" - } - }, - "id": "SplitInt64", - "description": "A representation of an int64, n, that is immune to precision loss when\nencoded in JSON.", "type": "object" }, - "WorkerPool": { - "description": "Describes one particular pool of Cloud Dataflow workers to be\ninstantiated by the Cloud Dataflow service in order to perform the\ncomputations required by a job. Note that a workflow job may use\nmultiple pools, in order to match the various computational\nrequirements of the various stages of the job.", - "type": "object", + "ReadInstruction": { + "description": "An instruction that reads records.\nTakes no inputs, produces one output.", + "id": "ReadInstruction", "properties": { - "zone": { - "description": "Zone to run the worker pools in. If empty or unspecified, the service\nwill attempt to choose a reasonable default.", - "type": "string" - }, - "numWorkers": { - "description": "Number of Google Compute Engine workers in this pool needed to\nexecute the job. If zero or unspecified, the service will\nattempt to choose a reasonable default.", - "format": "int32", - "type": "integer" - }, - "numThreadsPerWorker": { - "description": "The number of threads per worker harness. If empty or unspecified, the\nservice will choose a number of threads (according to the number of cores\non the selected machine type for batch, or 1 by convention for streaming).", - "format": "int32", - "type": "integer" - }, - "diskSourceImage": { - "description": "Fully qualified source image for disks.", - "type": "string" - }, - "packages": { - "description": "Packages to be installed on workers.", - "type": "array", - "items": { - "$ref": "Package" - } - }, - "teardownPolicy": { - "enumDescriptions": [ - "The teardown policy isn't specified, or is unknown.", - "Always teardown the resource.", - "Teardown the resource on success. This is useful for debugging\nfailures.", - "Never teardown the resource. This is useful for debugging and\ndevelopment." - ], - "enum": [ - "TEARDOWN_POLICY_UNKNOWN", - "TEARDOWN_ALWAYS", - "TEARDOWN_ON_SUCCESS", - "TEARDOWN_NEVER" - ], - "description": "Sets the policy for determining when to turndown worker pool.\nAllowed values are: `TEARDOWN_ALWAYS`, `TEARDOWN_ON_SUCCESS`, and\n`TEARDOWN_NEVER`.\n`TEARDOWN_ALWAYS` means workers are always torn down regardless of whether\nthe job succeeds. `TEARDOWN_ON_SUCCESS` means workers are torn down\nif the job succeeds. `TEARDOWN_NEVER` means the workers are never torn\ndown.\n\nIf the workers are not torn down by the service, they will\ncontinue to run and use Google Compute Engine VM resources in the\nuser's project until they are explicitly terminated by the user.\nBecause of this, Google recommends using the `TEARDOWN_ALWAYS`\npolicy except for small, manually supervised test jobs.\n\nIf unknown or unspecified, the service will attempt to choose a reasonable\ndefault.", - "type": "string" - }, - "onHostMaintenance": { - "description": "The action to take on host maintenance, as defined by the Google\nCompute Engine API.", - "type": "string" - }, - "poolArgs": { - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - }, - "description": "Extra arguments for this worker pool.", - "type": "object" - }, - "diskSizeGb": { - "description": "Size of root disk for VMs, in GB. If zero or unspecified, the service will\nattempt to choose a reasonable default.", - "format": "int32", - "type": "integer" - }, - "workerHarnessContainerImage": { - "description": "Required. Docker container image that executes the Cloud Dataflow worker\nharness, residing in Google Container Registry.", - "type": "string" - }, - "diskType": { - "description": "Type of root disk for VMs. If empty or unspecified, the service will\nattempt to choose a reasonable default.", - "type": "string" - }, - "machineType": { - "description": "Machine type (e.g. \"n1-standard-1\"). If empty or unspecified, the\nservice will attempt to choose a reasonable default.", - "type": "string" - }, - "kind": { - "description": "The kind of the worker pool; currently only `harness` and `shuffle`\nare supported.", - "type": "string" - }, - "dataDisks": { - "description": "Data disks that are used by a VM in this workflow.", - "type": "array", - "items": { - "$ref": "Disk" - } - }, - "subnetwork": { - "description": "Subnetwork to which VMs will be assigned, if desired. Expected to be of\nthe form \"regions/REGION/subnetworks/SUBNETWORK\".", - "type": "string" - }, - "ipConfiguration": { - "enumDescriptions": [ - "The configuration is unknown, or unspecified.", - "Workers should have public IP addresses.", - "Workers should have private IP addresses." - ], - "enum": [ - "WORKER_IP_UNSPECIFIED", - "WORKER_IP_PUBLIC", - "WORKER_IP_PRIVATE" - ], - "description": "Configuration for VM IPs.", - "type": "string" - }, - "autoscalingSettings": { - "$ref": "AutoscalingSettings", - "description": "Settings for autoscaling of this WorkerPool." - }, - "taskrunnerSettings": { - "description": "Settings passed through to Google Compute Engine workers when\nusing the standard Dataflow task runner. Users should ignore\nthis field.", - "$ref": "TaskRunnerSettings" - }, - "metadata": { - "additionalProperties": { - "type": "string" - }, - "description": "Metadata to set on the Google Compute Engine VMs.", - "type": "object" - }, - "defaultPackageSet": { - "enumDescriptions": [ - "The default set of packages to stage is unknown, or unspecified.", - "Indicates that no packages should be staged at the worker unless\nexplicitly specified by the job.", - "Stage packages typically useful to workers written in Java.", - "Stage pacakges typically useful to workers written in Python." - ], - "enum": [ - "DEFAULT_PACKAGE_SET_UNKNOWN", - "DEFAULT_PACKAGE_SET_NONE", - "DEFAULT_PACKAGE_SET_JAVA", - "DEFAULT_PACKAGE_SET_PYTHON" - ], - "description": "The default package set to install. This allows the service to\nselect a default set of packages which are useful to worker\nharnesses written in a particular language.", - "type": "string" - }, - "network": { - "description": "Network to which VMs will be assigned. If empty or unspecified,\nthe service will use the network \"default\".", - "type": "string" + "source": { + "$ref": "Source", + "description": "The source to read from." } }, - "id": "WorkerPool" + "type": "object" }, - "SourceOperationRequest": { - "description": "A work item that represents the different operations that can be\nperformed on a user-defined Source specification.", - "type": "object", + "ReportWorkItemStatusRequest": { + "description": "Request to report the status of WorkItems.", + "id": "ReportWorkItemStatusRequest", "properties": { - "name": { - "description": "User-provided name of the Read instruction for this source.", - "type": "string" - }, - "originalName": { - "description": "System-defined name for the Read instruction for this source\nin the original workflow graph.", - "type": "string" - }, - "systemName": { - "description": "System-defined name of the Read instruction for this source.\nUnique across the workflow.", - "type": "string" - }, - "stageName": { - "description": "System-defined name of the stage containing the source operation.\nUnique across the workflow.", - "type": "string" - }, - "getMetadata": { - "$ref": "SourceGetMetadataRequest", - "description": "Information about a request to get metadata about a source." - }, - "split": { - "$ref": "SourceSplitRequest", - "description": "Information about a request to split a source." - } - }, - "id": "SourceOperationRequest" - }, - "WorkItem": { - "properties": { - "streamingComputationTask": { - "$ref": "StreamingComputationTask", - "description": "Additional information for StreamingComputationTask WorkItems." - }, - "shellTask": { - "description": "Additional information for ShellTask WorkItems.", - "$ref": "ShellTask" - }, - "jobId": { - "description": "Identifies the workflow job this WorkItem belongs to.", - "type": "string" - }, - "id": { - "description": "Identifies this WorkItem.", - "format": "int64", - "type": "string" - }, - "configuration": { - "description": "Work item-specific configuration as an opaque blob.", - "type": "string" - }, - "mapTask": { - "$ref": "MapTask", - "description": "Additional information for MapTask WorkItems." - }, - "seqMapTask": { - "description": "Additional information for SeqMapTask WorkItems.", - "$ref": "SeqMapTask" - }, - "packages": { - "description": "Any required packages that need to be fetched in order to execute\nthis WorkItem.", - "type": "array", - "items": { - "$ref": "Package" - } - }, - "projectId": { - "description": "Identifies the cloud project this WorkItem belongs to.", - "type": "string" - }, - "sourceOperationTask": { - "$ref": "SourceOperationRequest", - "description": "Additional information for source operation WorkItems." - }, - "streamingSetupTask": { - "$ref": "StreamingSetupTask", - "description": "Additional information for StreamingSetupTask WorkItems." - }, - "reportStatusInterval": { - "description": "Recommended reporting interval.", - "format": "google-duration", - "type": "string" - }, - "streamingConfigTask": { - "$ref": "StreamingConfigTask", - "description": "Additional information for StreamingConfigTask WorkItems." - }, - "leaseExpireTime": { - "description": "Time when the lease on this Work will expire.", + "currentWorkerTime": { + "description": "The current timestamp at the worker.", "format": "google-datetime", "type": "string" }, - "initialReportIndex": { - "description": "The initial index to use when reporting the status of the WorkItem.", - "format": "int64", + "location": { + "description": "The location which contains the WorkItem's job.", + "type": "string" + }, + "workItemStatuses": { + "description": "The order is unimportant, except that the order of the\nWorkItemServiceState messages in the ReportWorkItemStatusResponse\ncorresponds to the order of WorkItemStatus messages here.", + "items": { + "$ref": "WorkItemStatus" + }, + "type": "array" + }, + "workerId": { + "description": "The ID of the worker reporting the WorkItem status. If this\ndoes not match the ID of the worker which the Dataflow service\nbelieves currently has the lease on the WorkItem, the report\nwill be dropped (with an error response).", "type": "string" } }, - "id": "WorkItem", - "description": "WorkItem represents basic information about a WorkItem to be executed\nin the cloud.", "type": "object" }, - "StructuredMessage": { - "description": "A rich message format, including a human readable string, a key for\nidentifying the message, and structured data associated with the message for\nprogrammatic consumption.", - "type": "object", + "ReportWorkItemStatusResponse": { + "description": "Response from a request to report the status of WorkItems.", + "id": "ReportWorkItemStatusResponse", "properties": { - "messageText": { - "description": "Human-readable version of message.", - "type": "string" - }, - "parameters": { - "description": "The structured data associated with this message.", - "type": "array", + "workItemServiceStates": { + "description": "A set of messages indicating the service-side state for each\nWorkItem whose status was reported, in the same order as the\nWorkItemStatus messages in the ReportWorkItemStatusRequest which\nresulting in this response.", "items": { - "$ref": "Parameter" - } - }, - "messageKey": { - "description": "Idenfier for this message type. Used by external systems to\ninternationalize or personalize message.", - "type": "string" + "$ref": "WorkItemServiceState" + }, + "type": "array" } }, - "id": "StructuredMessage" - }, - "ResourceUtilizationReport": { - "description": "Worker metrics exported from workers. This contains resource utilization\nmetrics accumulated from a variety of sources. For more information, see\ngo/df-resource-signals.", - "type": "object", - "properties": { - "cpuTime": { - "description": "CPU utilization samples.", - "type": "array", - "items": { - "$ref": "CPUTime" - } - } - }, - "id": "ResourceUtilizationReport" + "type": "object" }, "ReportedParallelism": { "description": "Represents the level of parallelism in a WorkItem's input,\nreported by the worker.", - "type": "object", + "id": "ReportedParallelism", "properties": { "isInfinite": { "description": "Specifies whether the parallelism is infinite. If true, \"value\" is\nignored.\nInfinite parallelism means the service will assume that the work item\ncan always be split into more non-empty work items by dynamic splitting.\nThis is a work-around for lack of support for infinity by the current\nJSON-based Java RPC stack.", @@ -3385,365 +3591,237 @@ "type": "number" } }, - "id": "ReportedParallelism" - }, - "TopologyConfig": { - "description": "Global topology of the streaming Dataflow job, including all\ncomputations and their sharded locations.", - "type": "object", - "properties": { - "userStageToComputationNameMap": { - "additionalProperties": { - "type": "string" - }, - "description": "Maps user stage names to stable computation names.", - "type": "object" - }, - "computations": { - "description": "The computations associated with a streaming Dataflow job.", - "type": "array", - "items": { - "$ref": "ComputationTopology" - } - }, - "dataDiskAssignments": { - "description": "The disks assigned to a streaming Dataflow job.", - "type": "array", - "items": { - "$ref": "DataDiskAssignment" - } - }, - "persistentStateVersion": { - "description": "Version number for persistent state.", - "format": "int32", - "type": "integer" - }, - "forwardingKeyBits": { - "description": "The size (in bits) of keys that will be assigned to source messages.", - "format": "int32", - "type": "integer" - } - }, - "id": "TopologyConfig" - }, - "SourceSplitOptions": { - "description": "Hints for splitting a Source into bundles (parts for parallel\nprocessing) using SourceSplitRequest.", - "type": "object", - "properties": { - "desiredBundleSizeBytes": { - "description": "The source should be split into a set of bundles where the estimated size\nof each is approximately this many bytes.", - "format": "int64", - "type": "string" - }, - "desiredShardSizeBytes": { - "description": "DEPRECATED in favor of desired_bundle_size_bytes.", - "format": "int64", - "type": "string" - } - }, - "id": "SourceSplitOptions" - }, - "ReadInstruction": { - "properties": { - "source": { - "$ref": "Source", - "description": "The source to read from." - } - }, - "id": "ReadInstruction", - "description": "An instruction that reads records.\nTakes no inputs, produces one output.", "type": "object" }, - "WorkerSettings": { - "description": "Provides data to pass through to the worker harness.", - "type": "object", + "ResourceUtilizationReport": { + "description": "Worker metrics exported from workers. This contains resource utilization\nmetrics accumulated from a variety of sources. For more information, see\ngo/df-resource-signals.", + "id": "ResourceUtilizationReport", "properties": { - "baseUrl": { - "description": "The base URL for accessing Google Cloud APIs.\n\nWhen workers access Google Cloud APIs, they logically do so via\nrelative URLs. If this field is specified, it supplies the base\nURL to use for resolving these relative URLs. The normative\nalgorithm used is defined by RFC 1808, \"Relative Uniform Resource\nLocators\".\n\nIf not specified, the default value is \"http://www.googleapis.com/\"", - "type": "string" + "cpuTime": { + "description": "CPU utilization samples.", + "items": { + "$ref": "CPUTime" + }, + "type": "array" + } + }, + "type": "object" + }, + "ResourceUtilizationReportResponse": { + "description": "Service-side response to WorkerMessage reporting resource utilization.", + "id": "ResourceUtilizationReportResponse", + "properties": {}, + "type": "object" + }, + "RuntimeEnvironment": { + "description": "The environment values to set at runtime.", + "id": "RuntimeEnvironment", + "properties": { + "additionalExperiments": { + "description": "Additional experiment flags for the job.", + "items": { + "type": "string" + }, + "type": "array" }, - "reportingEnabled": { - "description": "Whether to send work progress updates to the service.", + "bypassTempDirValidation": { + "description": "Whether to bypass the safety checks for the job's temporary directory.\nUse with caution.", "type": "boolean" }, - "servicePath": { - "description": "The Cloud Dataflow service path relative to the root URL, for example,\n\"dataflow/v1b3/projects\".", + "machineType": { + "description": "The machine type to use for the job. Defaults to the value from the\ntemplate if not specified.", "type": "string" }, - "shuffleServicePath": { - "description": "The Shuffle service path relative to the root URL, for example,\n\"shuffle/v1beta1\".", + "maxWorkers": { + "description": "The maximum number of Google Compute Engine instances to be made\navailable to your pipeline during execution, from 1 to 1000.", + "format": "int32", + "type": "integer" + }, + "network": { + "description": "Network to which VMs will be assigned. If empty or unspecified,\nthe service will use the network \"default\".", + "type": "string" + }, + "serviceAccountEmail": { + "description": "The email address of the service account to run the job as.", + "type": "string" + }, + "subnetwork": { + "description": "Subnetwork to which VMs will be assigned, if desired. Expected to be of\nthe form \"regions/REGION/subnetworks/SUBNETWORK\".", + "type": "string" + }, + "tempLocation": { + "description": "The Cloud Storage path to use for temporary files.\nMust be a valid Cloud Storage URL, beginning with `gs://`.", + "type": "string" + }, + "zone": { + "description": "The Compute Engine [availability\nzone](https://cloud.google.com/compute/docs/regions-zones/regions-zones)\nfor launching worker instances to run your pipeline.", + "type": "string" + } + }, + "type": "object" + }, + "SendDebugCaptureRequest": { + "description": "Request to send encoded debug information.", + "id": "SendDebugCaptureRequest", + "properties": { + "componentId": { + "description": "The internal component id for which debug information is sent.", + "type": "string" + }, + "data": { + "description": "The encoded debug information.", + "type": "string" + }, + "location": { + "description": "The location which contains the job specified by job_id.", "type": "string" }, "workerId": { - "description": "The ID of the worker running this pipeline.", - "type": "string" - }, - "tempStoragePrefix": { - "description": "The prefix of the resources the system should use for temporary\nstorage.\n\nThe supported resource type is:\n\nGoogle Cloud Storage:\n\n storage.googleapis.com/{bucket}/{object}\n bucket.storage.googleapis.com/{object}", + "description": "The worker id, i.e., VM hostname.", "type": "string" } }, - "id": "WorkerSettings" + "type": "object" }, - "DataDiskAssignment": { - "description": "Data disk assignment for a given VM instance.", - "type": "object", + "SendDebugCaptureResponse": { + "description": "Response to a send capture request.\nnothing", + "id": "SendDebugCaptureResponse", + "properties": {}, + "type": "object" + }, + "SendWorkerMessagesRequest": { + "description": "A request for sending worker messages to the service.", + "id": "SendWorkerMessagesRequest", "properties": { - "dataDisks": { - "description": "Mounted data disks. The order is important a data disk's 0-based index in\nthis list defines which persistent directory the disk is mounted to, for\nexample the list of { \"myproject-1014-104817-4c2-harness-0-disk-0\" },\n{ \"myproject-1014-104817-4c2-harness-0-disk-1\" }.", - "type": "array", + "location": { + "description": "The location which contains the job", + "type": "string" + }, + "workerMessages": { + "description": "The WorkerMessages to send.", "items": { - "type": "string" - } - }, - "vmInstance": { - "description": "VM instance name the data disks mounted to, for example\n\"myproject-1014-104817-4c2-harness-0\".", - "type": "string" + "$ref": "WorkerMessage" + }, + "type": "array" } }, - "id": "DataDiskAssignment" - }, - "StreamingStageLocation": { - "description": "Identifies the location of a streaming computation stage, for\nstage-to-stage communication.", - "type": "object", - "properties": { - "streamId": { - "description": "Identifies the particular stream within the streaming Dataflow\njob.", - "type": "string" - } - }, - "id": "StreamingStageLocation" - }, - "ApproximateSplitRequest": { - "description": "A suggestion by the service to the worker to dynamically split the WorkItem.", - "type": "object", - "properties": { - "position": { - "$ref": "Position", - "description": "A Position at which to split the work item." - }, - "fractionConsumed": { - "description": "A fraction at which to split the work item, from 0.0 (beginning of the\ninput) to 1.0 (end of the input).", - "format": "double", - "type": "number" - } - }, - "id": "ApproximateSplitRequest" - }, - "Status": { - "description": "The `Status` type defines a logical error model that is suitable for different\nprogramming environments, including REST APIs and RPC APIs. It is used by\n[gRPC](https://github.com/grpc). The error model is designed to be:\n\n- Simple to use and understand for most users\n- Flexible enough to meet unexpected needs\n\n# Overview\n\nThe `Status` message contains three pieces of data: error code, error message,\nand error details. The error code should be an enum value of\ngoogle.rpc.Code, but it may accept additional error codes if needed. The\nerror message should be a developer-facing English message that helps\ndevelopers *understand* and *resolve* the error. If a localized user-facing\nerror message is needed, put the localized message in the error details or\nlocalize it in the client. The optional error details may contain arbitrary\ninformation about the error. There is a predefined set of error detail types\nin the package `google.rpc` that can be used for common error conditions.\n\n# Language mapping\n\nThe `Status` message is the logical representation of the error model, but it\nis not necessarily the actual wire format. When the `Status` message is\nexposed in different client libraries and different wire protocols, it can be\nmapped differently. For example, it will likely be mapped to some exceptions\nin Java, but more likely mapped to some error codes in C.\n\n# Other uses\n\nThe error model and the `Status` message can be used in a variety of\nenvironments, either with or without APIs, to provide a\nconsistent developer experience across different environments.\n\nExample uses of this error model include:\n\n- Partial errors. If a service needs to return partial errors to the client,\n it may embed the `Status` in the normal response to indicate the partial\n errors.\n\n- Workflow errors. A typical workflow has multiple steps. Each step may\n have a `Status` message for error reporting.\n\n- Batch operations. If a client uses batch request and batch response, the\n `Status` message should be used directly inside batch response, one for\n each error sub-response.\n\n- Asynchronous operations. If an API call embeds asynchronous operation\n results in its response, the status of those operations should be\n represented directly using the `Status` message.\n\n- Logging. If some API errors are stored in logs, the message `Status` could\n be used directly after any stripping needed for security/privacy reasons.", - "type": "object", - "properties": { - "code": { - "description": "The status code, which should be an enum value of google.rpc.Code.", - "format": "int32", - "type": "integer" - }, - "message": { - "description": "A developer-facing error message, which should be in English. Any\nuser-facing error message should be localized and sent in the\ngoogle.rpc.Status.details field, or localized by the client.", - "type": "string" - }, - "details": { - "description": "A list of messages that carry the error details. There is a common set of\nmessage types for APIs to use.", - "type": "array", - "items": { - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - }, - "type": "object" - } - } - }, - "id": "Status" - }, - "ExecutionStageState": { - "description": "A message describing the state of a particular execution stage.", - "type": "object", - "properties": { - "executionStageState": { - "description": "Executions stage states allow the same set of values as JobState.", - "type": "string", - "enumDescriptions": [ - "The job's run state isn't specified.", - "`JOB_STATE_STOPPED` indicates that the job has not\nyet started to run.", - "`JOB_STATE_RUNNING` indicates that the job is currently running.", - "`JOB_STATE_DONE` indicates that the job has successfully completed.\nThis is a terminal job state. This state may be set by the Cloud Dataflow\nservice, as a transition from `JOB_STATE_RUNNING`. It may also be set via a\nCloud Dataflow `UpdateJob` call, if the job has not yet reached a terminal\nstate.", - "`JOB_STATE_FAILED` indicates that the job has failed. This is a\nterminal job state. This state may only be set by the Cloud Dataflow\nservice, and only as a transition from `JOB_STATE_RUNNING`.", - "`JOB_STATE_CANCELLED` indicates that the job has been explicitly\ncancelled. This is a terminal job state. This state may only be\nset via a Cloud Dataflow `UpdateJob` call, and only if the job has not\nyet reached another terminal state.", - "`JOB_STATE_UPDATED` indicates that the job was successfully updated,\nmeaning that this job was stopped and another job was started, inheriting\nstate from this one. This is a terminal job state. This state may only be\nset by the Cloud Dataflow service, and only as a transition from\n`JOB_STATE_RUNNING`.", - "`JOB_STATE_DRAINING` indicates that the job is in the process of draining.\nA draining job has stopped pulling from its input sources and is processing\nany data that remains in-flight. This state may be set via a Cloud Dataflow\n`UpdateJob` call, but only as a transition from `JOB_STATE_RUNNING`. Jobs\nthat are draining may only transition to `JOB_STATE_DRAINED`,\n`JOB_STATE_CANCELLED`, or `JOB_STATE_FAILED`.", - "`JOB_STATE_DRAINED` indicates that the job has been drained.\nA drained job terminated by stopping pulling from its input sources and\nprocessing any data that remained in-flight when draining was requested.\nThis state is a terminal state, may only be set by the Cloud Dataflow\nservice, and only as a transition from `JOB_STATE_DRAINING`.", - "'JOB_STATE_PENDING' indicates that the job has been created but is not yet\nrunning. Jobs that are pending may only transition to `JOB_STATE_RUNNING`,\nor `JOB_STATE_FAILED`.", - "'JOB_STATE_CANCELLING' indicates that the job has been explicitly cancelled\nand is in the process of stopping. Jobs that are cancelling may only\ntransition to 'JOB_STATE_CANCELLED' or 'JOB_STATE_FAILED'." - ], - "enum": [ - "JOB_STATE_UNKNOWN", - "JOB_STATE_STOPPED", - "JOB_STATE_RUNNING", - "JOB_STATE_DONE", - "JOB_STATE_FAILED", - "JOB_STATE_CANCELLED", - "JOB_STATE_UPDATED", - "JOB_STATE_DRAINING", - "JOB_STATE_DRAINED", - "JOB_STATE_PENDING", - "JOB_STATE_CANCELLING" - ] - }, - "executionStageName": { - "description": "The name of the execution stage.", - "type": "string" - }, - "currentStateTime": { - "description": "The time at which the stage transitioned to this state.", - "format": "google-datetime", - "type": "string" - } - }, - "id": "ExecutionStageState" - }, - "StreamLocation": { - "description": "Describes a stream of data, either as input to be processed or as\noutput of a streaming Dataflow job.", - "type": "object", - "properties": { - "customSourceLocation": { - "$ref": "CustomSourceLocation", - "description": "The stream is a custom source." - }, - "streamingStageLocation": { - "$ref": "StreamingStageLocation", - "description": "The stream is part of another computation within the current\nstreaming Dataflow job." - }, - "pubsubLocation": { - "$ref": "PubsubLocation", - "description": "The stream is a pubsub stream." - }, - "sideInputLocation": { - "$ref": "StreamingSideInputLocation", - "description": "The stream is a streaming side input." - } - }, - "id": "StreamLocation" + "type": "object" }, "SendWorkerMessagesResponse": { "description": "The response to the worker messages.", - "type": "object", + "id": "SendWorkerMessagesResponse", "properties": { "workerMessageResponses": { "description": "The servers response to the worker messages.", - "type": "array", "items": { "$ref": "WorkerMessageResponse" - } + }, + "type": "array" } }, - "id": "SendWorkerMessagesResponse" - }, - "LeaseWorkItemResponse": { - "description": "Response to a request to lease WorkItems.", - "type": "object", - "properties": { - "workItems": { - "description": "A list of the leased WorkItems.", - "type": "array", - "items": { - "$ref": "WorkItem" - } - } - }, - "id": "LeaseWorkItemResponse" - }, - "TransformSummary": { - "properties": { - "kind": { - "enumDescriptions": [ - "Unrecognized transform type.", - "ParDo transform.", - "Group By Key transform.", - "Flatten transform.", - "Read transform.", - "Write transform.", - "Constructs from a constant value, such as with Create.of.", - "Creates a Singleton view of a collection.", - "Opening or closing a shuffle session, often as part of a GroupByKey." - ], - "enum": [ - "UNKNOWN_KIND", - "PAR_DO_KIND", - "GROUP_BY_KEY_KIND", - "FLATTEN_KIND", - "READ_KIND", - "WRITE_KIND", - "CONSTANT_KIND", - "SINGLETON_KIND", - "SHUFFLE_KIND" - ], - "description": "Type of transform.", - "type": "string" - }, - "inputCollectionName": { - "description": "User names for all collection inputs to this transform.", - "type": "array", - "items": { - "type": "string" - } - }, - "name": { - "description": "User provided name for this transform instance.", - "type": "string" - }, - "id": { - "description": "SDK generated id of this transform instance.", - "type": "string" - }, - "displayData": { - "description": "Transform-specific display data.", - "type": "array", - "items": { - "$ref": "DisplayData" - } - }, - "outputCollectionName": { - "description": "User names for all collection outputs to this transform.", - "type": "array", - "items": { - "type": "string" - } - } - }, - "id": "TransformSummary", - "description": "Description of the type, names/ids, and input/outputs for a transform.", "type": "object" }, - "StreamingComputationConfig": { - "description": "Configuration information for a single streaming computation.", - "type": "object", + "SeqMapTask": { + "description": "Describes a particular function to invoke.", + "id": "SeqMapTask", "properties": { - "systemName": { - "description": "System defined name for this computation.", + "inputs": { + "description": "Information about each of the inputs.", + "items": { + "$ref": "SideInputInfo" + }, + "type": "array" + }, + "name": { + "description": "The user-provided name of the SeqDo operation.", "type": "string" }, + "outputInfos": { + "description": "Information about each of the outputs.", + "items": { + "$ref": "SeqMapTaskOutputInfo" + }, + "type": "array" + }, "stageName": { - "description": "Stage name of this computation.", + "description": "System-defined name of the stage containing the SeqDo operation.\nUnique across the workflow.", "type": "string" }, - "instructions": { - "description": "Instructions that comprise the computation.", - "type": "array", - "items": { - "$ref": "ParallelInstruction" - } + "systemName": { + "description": "System-defined name of the SeqDo operation.\nUnique across the workflow.", + "type": "string" }, - "computationId": { - "description": "Unique identifier for this computation.", + "userFn": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "description": "The user function to invoke.", + "type": "object" + } + }, + "type": "object" + }, + "SeqMapTaskOutputInfo": { + "description": "Information about an output of a SeqMapTask.", + "id": "SeqMapTaskOutputInfo", + "properties": { + "sink": { + "$ref": "Sink", + "description": "The sink to write the output value to." + }, + "tag": { + "description": "The id of the TupleTag the user code will tag the output value by.", "type": "string" } }, - "id": "StreamingComputationConfig" + "type": "object" + }, + "ShellTask": { + "description": "A task which consists of a shell command for the worker to execute.", + "id": "ShellTask", + "properties": { + "command": { + "description": "The shell command to run.", + "type": "string" + }, + "exitCode": { + "description": "Exit code for the task.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "SideInputInfo": { + "description": "Information about a side input of a DoFn or an input of a SeqDoFn.", + "id": "SideInputInfo", + "properties": { + "kind": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "description": "How to interpret the source element(s) as a side input value.", + "type": "object" + }, + "sources": { + "description": "The source(s) to read element(s) from to get the value of this side input.\nIf more than one source, then the elements are taken from the\nsources, in the specified order if order matters.\nAt least one source is required.", + "items": { + "$ref": "Source" + }, + "type": "array" + }, + "tag": { + "description": "The id of the tag the user code will access this side input by;\nthis should correspond to the tag of some MultiOutputInfo.", + "type": "string" + } + }, + "type": "object" }, "Sink": { "description": "A sink that records can be encoded and written to.", - "type": "object", + "id": "Sink", "properties": { "codec": { "additionalProperties": { @@ -3762,1142 +3840,54 @@ "type": "object" } }, - "id": "Sink" - }, - "LaunchTemplateParameters": { - "description": "Parameters to provide to the template being launched.", - "type": "object", - "properties": { - "environment": { - "$ref": "RuntimeEnvironment", - "description": "The runtime environment for the job." - }, - "parameters": { - "additionalProperties": { - "type": "string" - }, - "description": "The runtime parameters to pass to the job.", - "type": "object" - }, - "jobName": { - "description": "Required. The job name to use for the created job.", - "type": "string" - } - }, - "id": "LaunchTemplateParameters" - }, - "FlattenInstruction": { - "description": "An instruction that copies its inputs (zero or more) to its (single) output.", - "type": "object", - "properties": { - "inputs": { - "description": "Describes the inputs to the flatten instruction.", - "type": "array", - "items": { - "$ref": "InstructionInput" - } - } - }, - "id": "FlattenInstruction" - }, - "PartialGroupByKeyInstruction": { - "properties": { - "inputElementCodec": { - "additionalProperties": { - "description": "Properties of the object.", - "type": "any" - }, - "description": "The codec to use for interpreting an element in the input PTable.", - "type": "object" - }, - "valueCombiningFn": { - "additionalProperties": { - "description": "Properties of the object.", - "type": "any" - }, - "description": "The value combining function to invoke.", - "type": "object" - }, - "originalCombineValuesInputStoreName": { - "description": "If this instruction includes a combining function this is the name of the\nintermediate store between the GBK and the CombineValues.", - "type": "string" - }, - "originalCombineValuesStepName": { - "description": "If this instruction includes a combining function, this is the name of the\nCombineValues instruction lifted into this instruction.", - "type": "string" - }, - "sideInputs": { - "description": "Zero or more side inputs.", - "type": "array", - "items": { - "$ref": "SideInputInfo" - } - }, - "input": { - "description": "Describes the input to the partial group-by-key instruction.", - "$ref": "InstructionInput" - } - }, - "id": "PartialGroupByKeyInstruction", - "description": "An instruction that does a partial group-by-key.\nOne input and one output.", "type": "object" }, - "InstructionInput": { - "description": "An input of an instruction, as a reference to an output of a\nproducer instruction.", - "type": "object", + "Source": { + "description": "A source that records can be read and decoded from.", + "id": "Source", "properties": { - "outputNum": { - "description": "The output index (origin zero) within the producer.", - "format": "int32", - "type": "integer" - }, - "producerInstructionIndex": { - "description": "The index (origin zero) of the parallel instruction that produces\nthe output to be consumed by this input. This index is relative\nto the list of instructions in this input's instruction's\ncontaining MapTask.", - "format": "int32", - "type": "integer" - } - }, - "id": "InstructionInput" - }, - "StageSource": { - "description": "Description of an input or output of an execution stage.", - "type": "object", - "properties": { - "userName": { - "description": "Human-readable name for this source; may be user or system generated.", - "type": "string" - }, - "originalTransformOrCollection": { - "description": "User name for the original user transform or collection with which this\nsource is most closely associated.", - "type": "string" - }, - "name": { - "description": "Dataflow service generated name for this source.", - "type": "string" - }, - "sizeBytes": { - "description": "Size of the source, if measurable.", - "format": "int64", - "type": "string" - } - }, - "id": "StageSource" - }, - "StringList": { - "description": "A metric value representing a list of strings.", - "type": "object", - "properties": { - "elements": { - "description": "Elements of the list.", - "type": "array", + "baseSpecs": { + "description": "While splitting, sources may specify the produced bundles\nas differences against another source, in order to save backend-side\nmemory and allow bigger jobs. For details, see SourceSplitRequest.\nTo support this use case, the full set of parameters of the source\nis logically obtained by taking the latest explicitly specified value\nof each parameter in the order:\nbase_specs (later items win), spec (overrides anything in base_specs).", "items": { - "type": "string" - } - } - }, - "id": "StringList" - }, - "DisplayData": { - "description": "Data provided with a pipeline or transform to provide descriptive info.", - "type": "object", - "properties": { - "timestampValue": { - "description": "Contains value if the data is of timestamp type.", - "format": "google-datetime", - "type": "string" + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "type": "object" + }, + "type": "array" }, - "boolValue": { - "description": "Contains value if the data is of a boolean type.", + "codec": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "description": "The codec to use to decode data read from the source.", + "type": "object" + }, + "doesNotNeedSplitting": { + "description": "Setting this value to true hints to the framework that the source\ndoesn't need splitting, and using SourceSplitRequest on it would\nyield SOURCE_SPLIT_OUTCOME_USE_CURRENT.\n\nE.g. a file splitter may set this to true when splitting a single file\ninto a set of byte ranges of appropriate size, and set this\nto false when splitting a filepattern into individual files.\nHowever, for efficiency, a file splitter may decide to produce\nfile subranges directly from the filepattern to avoid a splitting\nround-trip.\n\nSee SourceSplitRequest for an overview of the splitting process.\n\nThis field is meaningful only in the Source objects populated\nby the user (e.g. when filling in a DerivedSource).\nSource objects supplied by the framework to the user don't have\nthis field populated.", "type": "boolean" }, - "javaClassValue": { - "description": "Contains value if the data is of java class type.", - "type": "string" - }, - "strValue": { - "description": "Contains value if the data is of string type.", - "type": "string" - }, - "int64Value": { - "description": "Contains value if the data is of int64 type.", - "format": "int64", - "type": "string" - }, - "durationValue": { - "description": "Contains value if the data is of duration type.", - "format": "google-duration", - "type": "string" - }, - "namespace": { - "description": "The namespace for the key. This is usually a class name or programming\nlanguage namespace (i.e. python module) which defines the display data.\nThis allows a dax monitoring system to specially handle the data\nand perform custom rendering.", - "type": "string" - }, - "floatValue": { - "description": "Contains value if the data is of float type.", - "format": "float", - "type": "number" - }, - "key": { - "description": "The key identifying the display data.\nThis is intended to be used as a label for the display data\nwhen viewed in a dax monitoring system.", - "type": "string" - }, - "shortStrValue": { - "description": "A possible additional shorter value to display.\nFor example a java_class_name_value of com.mypackage.MyDoFn\nwill be stored with MyDoFn as the short_str_value and\ncom.mypackage.MyDoFn as the java_class_name value.\nshort_str_value can be displayed and java_class_name_value\nwill be displayed as a tooltip.", - "type": "string" - }, - "url": { - "description": "An optional full URL.", - "type": "string" - }, - "label": { - "description": "An optional label to display in a dax UI for the element.", - "type": "string" - } - }, - "id": "DisplayData" - }, - "LeaseWorkItemRequest": { - "properties": { - "workerCapabilities": { - "description": "Worker capabilities. WorkItems might be limited to workers with specific\ncapabilities.", - "type": "array", - "items": { - "type": "string" - } - }, - "workerId": { - "description": "Identifies the worker leasing work -- typically the ID of the\nvirtual machine running the worker.", - "type": "string" - }, - "requestedLeaseDuration": { - "description": "The initial lease period.", - "format": "google-duration", - "type": "string" - }, - "currentWorkerTime": { - "description": "The current timestamp at the worker.", - "format": "google-datetime", - "type": "string" - }, - "location": { - "description": "The location which contains the WorkItem's job.", - "type": "string" - }, - "workItemTypes": { - "description": "Filter for WorkItem type.", - "type": "array", - "items": { - "type": "string" - } - } - }, - "id": "LeaseWorkItemRequest", - "description": "Request to lease WorkItems.", - "type": "object" - }, - "GetDebugConfigRequest": { - "description": "Request to get updated debug configuration for component.", - "type": "object", - "properties": { - "componentId": { - "description": "The internal component id for which debug configuration is\nrequested.", - "type": "string" - }, - "workerId": { - "description": "The worker id, i.e., VM hostname.", - "type": "string" - }, - "location": { - "description": "The location which contains the job specified by job_id.", - "type": "string" - } - }, - "id": "GetDebugConfigRequest" - }, - "GetTemplateResponse": { - "description": "The response to a GetTemplate request.", - "type": "object", - "properties": { "metadata": { - "description": "The template metadata describing the template name, available\nparameters, etc.", - "$ref": "TemplateMetadata" + "$ref": "SourceMetadata", + "description": "Optionally, metadata for this source can be supplied right away,\navoiding a SourceGetMetadataOperation roundtrip\n(see SourceOperationRequest).\n\nThis field is meaningful only in the Source objects populated\nby the user (e.g. when filling in a DerivedSource).\nSource objects supplied by the framework to the user don't have\nthis field populated." }, - "status": { - "description": "The status of the get template request. Any problems with the\nrequest will be indicated in the error_details.", - "$ref": "Status" - } - }, - "id": "GetTemplateResponse" - }, - "Parameter": { - "description": "Structured data associated with this message.", - "type": "object", - "properties": { - "key": { - "description": "Key or name for this parameter.", - "type": "string" - }, - "value": { - "description": "Value for this parameter.", - "type": "any" - } - }, - "id": "Parameter" - }, - "ReportWorkItemStatusRequest": { - "description": "Request to report the status of WorkItems.", - "type": "object", - "properties": { - "workerId": { - "description": "The ID of the worker reporting the WorkItem status. If this\ndoes not match the ID of the worker which the Dataflow service\nbelieves currently has the lease on the WorkItem, the report\nwill be dropped (with an error response).", - "type": "string" - }, - "currentWorkerTime": { - "description": "The current timestamp at the worker.", - "format": "google-datetime", - "type": "string" - }, - "location": { - "description": "The location which contains the WorkItem's job.", - "type": "string" - }, - "workItemStatuses": { - "description": "The order is unimportant, except that the order of the\nWorkItemServiceState messages in the ReportWorkItemStatusResponse\ncorresponds to the order of WorkItemStatus messages here.", - "type": "array", - "items": { - "$ref": "WorkItemStatus" - } - } - }, - "id": "ReportWorkItemStatusRequest" - }, - "PipelineDescription": { - "description": "A descriptive representation of submitted pipeline as well as the executed\nform. This data is provided by the Dataflow service for ease of visualizing\nthe pipeline and interpretting Dataflow provided metrics.", - "type": "object", - "properties": { - "displayData": { - "description": "Pipeline level display data.", - "type": "array", - "items": { - "$ref": "DisplayData" - } - }, - "executionPipelineStage": { - "description": "Description of each stage of execution of the pipeline.", - "type": "array", - "items": { - "$ref": "ExecutionStageSummary" - } - }, - "originalPipelineTransform": { - "description": "Description of each transform in the pipeline and collections between them.", - "type": "array", - "items": { - "$ref": "TransformSummary" - } - } - }, - "id": "PipelineDescription" - }, - "StreamingConfigTask": { - "properties": { - "userStepToStateFamilyNameMap": { - "additionalProperties": { - "type": "string" - }, - "description": "Map from user step names to state families.", - "type": "object" - }, - "windmillServicePort": { - "description": "If present, the worker must use this port to communicate with Windmill\nService dispatchers. Only applicable when windmill_service_endpoint is\nspecified.", - "format": "int64", - "type": "string" - }, - "streamingComputationConfigs": { - "description": "Set of computation configuration information.", - "type": "array", - "items": { - "$ref": "StreamingComputationConfig" - } - }, - "windmillServiceEndpoint": { - "description": "If present, the worker must use this endpoint to communicate with Windmill\nService dispatchers, otherwise the worker must continue to use whatever\nendpoint it had been using.", - "type": "string" - } - }, - "id": "StreamingConfigTask", - "description": "A task that carries configuration information for streaming computations.", - "type": "object" - }, - "JobExecutionInfo": { - "description": "Additional information about how a Cloud Dataflow job will be executed that\nisn't contained in the submitted job.", - "type": "object", - "properties": { - "stages": { - "description": "A mapping from each stage to the information about that stage.", - "type": "object", - "additionalProperties": { - "$ref": "JobExecutionStageInfo" - } - } - }, - "id": "JobExecutionInfo" - }, - "Step": { - "description": "Defines a particular step within a Cloud Dataflow job.\n\nA job consists of multiple steps, each of which performs some\nspecific operation as part of the overall job. Data is typically\npassed from one step to another as part of the job.\n\nHere's an example of a sequence of steps which together implement a\nMap-Reduce job:\n\n * Read a collection of data from some source, parsing the\n collection's elements.\n\n * Validate the elements.\n\n * Apply a user-defined function to map each element to some value\n and extract an element-specific key value.\n\n * Group elements with the same key into a single element with\n that key, transforming a multiply-keyed collection into a\n uniquely-keyed collection.\n\n * Write the elements out to some data sink.\n\nNote that the Cloud Dataflow service may be used to run many different\ntypes of jobs, not just Map-Reduce.", - "type": "object", - "properties": { - "properties": { + "spec": { "additionalProperties": { "description": "Properties of the object.", "type": "any" }, - "description": "Named properties associated with the step. Each kind of\npredefined step has its own required set of properties.\nMust be provided on Create. Only retrieved with JOB_VIEW_ALL.", - "type": "object" - }, - "name": { - "description": "The name that identifies the step. This must be unique for each\nstep with respect to all other steps in the Cloud Dataflow job.", - "type": "string" - }, - "kind": { - "description": "The kind of step in the Cloud Dataflow job.", - "type": "string" - } - }, - "id": "Step" - }, - "FailedLocation": { - "properties": { - "name": { - "description": "The name of the failed location.", - "type": "string" - } - }, - "id": "FailedLocation", - "description": "Indicates which location failed to respond to a request for data.", - "type": "object" - }, - "Disk": { - "properties": { - "sizeGb": { - "description": "Size of disk in GB. If zero or unspecified, the service will\nattempt to choose a reasonable default.", - "format": "int32", - "type": "integer" - }, - "diskType": { - "description": "Disk storage type, as defined by Google Compute Engine. This\nmust be a disk type appropriate to the project and zone in which\nthe workers will run. If unknown or unspecified, the service\nwill attempt to choose a reasonable default.\n\nFor example, the standard persistent disk type is a resource name\ntypically ending in \"pd-standard\". If SSD persistent disks are\navailable, the resource name typically ends with \"pd-ssd\". The\nactual valid values are defined the Google Compute Engine API,\nnot by the Cloud Dataflow API; consult the Google Compute Engine\ndocumentation for more information about determining the set of\navailable disk types for a particular project and zone.\n\nGoogle Compute Engine Disk types are local to a particular\nproject in a particular zone, and so the resource name will\ntypically look something like this:\n\ncompute.googleapis.com/projects/project-id/zones/zone/diskTypes/pd-standard", - "type": "string" - }, - "mountPoint": { - "description": "Directory in a VM where disk is mounted.", - "type": "string" - } - }, - "id": "Disk", - "description": "Describes the data disk used by a workflow job.", - "type": "object" - }, - "ListJobMessagesResponse": { - "description": "Response to a request to list job messages.", - "type": "object", - "properties": { - "jobMessages": { - "description": "Messages in ascending timestamp order.", - "type": "array", - "items": { - "$ref": "JobMessage" - } - }, - "nextPageToken": { - "description": "The token to obtain the next page of results if there are more.", - "type": "string" - }, - "autoscalingEvents": { - "description": "Autoscaling events in ascending timestamp order.", - "type": "array", - "items": { - "$ref": "AutoscalingEvent" - } - } - }, - "id": "ListJobMessagesResponse" - }, - "CounterMetadata": { - "properties": { - "kind": { - "enum": [ - "INVALID", - "SUM", - "MAX", - "MIN", - "MEAN", - "OR", - "AND", - "SET", - "DISTRIBUTION" - ], - "description": "Counter aggregation kind.", - "type": "string", - "enumDescriptions": [ - "Counter aggregation kind was not set.", - "Aggregated value is the sum of all contributed values.", - "Aggregated value is the max of all contributed values.", - "Aggregated value is the min of all contributed values.", - "Aggregated value is the mean of all contributed values.", - "Aggregated value represents the logical 'or' of all contributed values.", - "Aggregated value represents the logical 'and' of all contributed values.", - "Aggregated value is a set of unique contributed values.", - "Aggregated value captures statistics about a distribution." - ] - }, - "description": { - "description": "Human-readable description of the counter semantics.", - "type": "string" - }, - "standardUnits": { - "description": "System defined Units, see above enum.", - "type": "string", - "enumDescriptions": [ - "Counter returns a value in bytes.", - "Counter returns a value in bytes per second.", - "Counter returns a value in milliseconds.", - "Counter returns a value in microseconds.", - "Counter returns a value in nanoseconds.", - "Counter returns a timestamp in milliseconds.", - "Counter returns a timestamp in microseconds.", - "Counter returns a timestamp in nanoseconds." - ], - "enum": [ - "BYTES", - "BYTES_PER_SEC", - "MILLISECONDS", - "MICROSECONDS", - "NANOSECONDS", - "TIMESTAMP_MSEC", - "TIMESTAMP_USEC", - "TIMESTAMP_NSEC" - ] - }, - "otherUnits": { - "description": "A string referring to the unit type.", - "type": "string" - } - }, - "id": "CounterMetadata", - "description": "CounterMetadata includes all static non-name non-value counter attributes.", - "type": "object" - }, - "ApproximateReportedProgress": { - "properties": { - "position": { - "description": "A Position within the work to represent a progress.", - "$ref": "Position" - }, - "fractionConsumed": { - "description": "Completion as fraction of the input consumed, from 0.0 (beginning, nothing\nconsumed), to 1.0 (end of the input, entire input consumed).", - "format": "double", - "type": "number" - }, - "consumedParallelism": { - "$ref": "ReportedParallelism", - "description": "Total amount of parallelism in the portion of input of this task that has\nalready been consumed and is no longer active. In the first two examples\nabove (see remaining_parallelism), the value should be 29 or 2\nrespectively. The sum of remaining_parallelism and consumed_parallelism\nshould equal the total amount of parallelism in this work item. If\nspecified, must be finite." - }, - "remainingParallelism": { - "$ref": "ReportedParallelism", - "description": "Total amount of parallelism in the input of this task that remains,\n(i.e. can be delegated to this task and any new tasks via dynamic\nsplitting). Always at least 1 for non-finished work items and 0 for\nfinished.\n\n\"Amount of parallelism\" refers to how many non-empty parts of the input\ncan be read in parallel. This does not necessarily equal number\nof records. An input that can be read in parallel down to the\nindividual records is called \"perfectly splittable\".\nAn example of non-perfectly parallelizable input is a block-compressed\nfile format where a block of records has to be read as a whole,\nbut different blocks can be read in parallel.\n\nExamples:\n* If we are processing record #30 (starting at 1) out of 50 in a perfectly\n splittable 50-record input, this value should be 21 (20 remaining + 1\n current).\n* If we are reading through block 3 in a block-compressed file consisting\n of 5 blocks, this value should be 3 (since blocks 4 and 5 can be\n processed in parallel by new tasks via dynamic splitting and the current\n task remains processing block 3).\n* If we are reading through the last block in a block-compressed file,\n or reading or processing the last record in a perfectly splittable\n input, this value should be 1, because apart from the current task, no\n additional remainder can be split off." - } - }, - "id": "ApproximateReportedProgress", - "description": "A progress measurement of a WorkItem by a worker.", - "type": "object" - }, - "StateFamilyConfig": { - "description": "State family configuration.", - "type": "object", - "properties": { - "isRead": { - "description": "If true, this family corresponds to a read operation.", - "type": "boolean" - }, - "stateFamily": { - "description": "The state family value.", - "type": "string" - } - }, - "id": "StateFamilyConfig" - }, - "IntegerList": { - "description": "A metric value representing a list of integers.", - "type": "object", - "properties": { - "elements": { - "description": "Elements of the list.", - "type": "array", - "items": { - "$ref": "SplitInt64" - } - } - }, - "id": "IntegerList" - }, - "ResourceUtilizationReportResponse": { - "description": "Service-side response to WorkerMessage reporting resource utilization.", - "type": "object", - "properties": {}, - "id": "ResourceUtilizationReportResponse" - }, - "SourceSplitResponse": { - "description": "The response to a SourceSplitRequest.", - "type": "object", - "properties": { - "outcome": { - "enumDescriptions": [ - "The source split outcome is unknown, or unspecified.", - "The current source should be processed \"as is\" without splitting.", - "Splitting produced a list of bundles." - ], - "enum": [ - "SOURCE_SPLIT_OUTCOME_UNKNOWN", - "SOURCE_SPLIT_OUTCOME_USE_CURRENT", - "SOURCE_SPLIT_OUTCOME_SPLITTING_HAPPENED" - ], - "description": "Indicates whether splitting happened and produced a list of bundles.\nIf this is USE_CURRENT_SOURCE_AS_IS, the current source should\nbe processed \"as is\" without splitting. \"bundles\" is ignored in this case.\nIf this is SPLITTING_HAPPENED, then \"bundles\" contains a list of\nbundles into which the source was split.", - "type": "string" - }, - "bundles": { - "description": "If outcome is SPLITTING_HAPPENED, then this is a list of bundles\ninto which the source was split. Otherwise this field is ignored.\nThis list can be empty, which means the source represents an empty input.", - "type": "array", - "items": { - "$ref": "DerivedSource" - } - }, - "shards": { - "description": "DEPRECATED in favor of bundles.", - "type": "array", - "items": { - "$ref": "SourceSplitShard" - } - } - }, - "id": "SourceSplitResponse" - }, - "ParallelInstruction": { - "properties": { - "parDo": { - "$ref": "ParDoInstruction", - "description": "Additional information for ParDo instructions." - }, - "read": { - "description": "Additional information for Read instructions.", - "$ref": "ReadInstruction" - }, - "originalName": { - "description": "System-defined name for the operation in the original workflow graph.", - "type": "string" - }, - "flatten": { - "description": "Additional information for Flatten instructions.", - "$ref": "FlattenInstruction" - }, - "write": { - "description": "Additional information for Write instructions.", - "$ref": "WriteInstruction" - }, - "systemName": { - "description": "System-defined name of this operation.\nUnique across the workflow.", - "type": "string" - }, - "partialGroupByKey": { - "description": "Additional information for PartialGroupByKey instructions.", - "$ref": "PartialGroupByKeyInstruction" - }, - "outputs": { - "description": "Describes the outputs of the instruction.", - "type": "array", - "items": { - "$ref": "InstructionOutput" - } - }, - "name": { - "description": "User-provided name of this operation.", - "type": "string" - } - }, - "id": "ParallelInstruction", - "description": "Describes a particular operation comprising a MapTask.", - "type": "object" - }, - "KeyRangeDataDiskAssignment": { - "description": "Data disk assignment information for a specific key-range of a sharded\ncomputation.\nCurrently we only support UTF-8 character splits to simplify encoding into\nJSON.", - "type": "object", - "properties": { - "start": { - "description": "The start (inclusive) of the key range.", - "type": "string" - }, - "dataDisk": { - "description": "The name of the data disk where data for this range is stored.\nThis name is local to the Google Cloud Platform project and uniquely\nidentifies the disk within that project, for example\n\"myproject-1014-104817-4c2-harness-0-disk-1\".", - "type": "string" - }, - "end": { - "description": "The end (exclusive) of the key range.", - "type": "string" - } - }, - "id": "KeyRangeDataDiskAssignment" - }, - "Package": { - "description": "The packages that must be installed in order for a worker to run the\nsteps of the Cloud Dataflow job that will be assigned to its worker\npool.\n\nThis is the mechanism by which the Cloud Dataflow SDK causes code to\nbe loaded onto the workers. For example, the Cloud Dataflow Java SDK\nmight use this to install jars containing the user's code and all of the\nvarious dependencies (libraries, data files, etc.) required in order\nfor that code to run.", - "type": "object", - "properties": { - "location": { - "description": "The resource to read the package from. The supported resource type is:\n\nGoogle Cloud Storage:\n\n storage.googleapis.com/{bucket}\n bucket.storage.googleapis.com/", - "type": "string" - }, - "name": { - "description": "The name of the package.", - "type": "string" - } - }, - "id": "Package" - }, - "ParDoInstruction": { - "properties": { - "multiOutputInfos": { - "description": "Information about each of the outputs, if user_fn is a MultiDoFn.", - "type": "array", - "items": { - "$ref": "MultiOutputInfo" - } - }, - "userFn": { - "additionalProperties": { - "description": "Properties of the object.", - "type": "any" - }, - "description": "The user function to invoke.", - "type": "object" - }, - "input": { - "$ref": "InstructionInput", - "description": "The input." - }, - "numOutputs": { - "description": "The number of outputs.", - "format": "int32", - "type": "integer" - }, - "sideInputs": { - "description": "Zero or more side inputs.", - "type": "array", - "items": { - "$ref": "SideInputInfo" - } - } - }, - "id": "ParDoInstruction", - "description": "An instruction that does a ParDo operation.\nTakes one main input and zero or more side inputs, and produces\nzero or more outputs.\nRuns user code.", - "type": "object" - }, - "WorkerShutdownNotice": { - "properties": { - "reason": { - "description": "The reason for the worker shutdown.\nCurrent possible values are:\n \"UNKNOWN\": shutdown reason is unknown.\n \"PREEMPTION\": shutdown reason is preemption.\nOther possible reasons may be added in the future.", - "type": "string" - } - }, - "id": "WorkerShutdownNotice", - "description": "Shutdown notification from workers. This is to be sent by the shutdown\nscript of the worker VM so that the backend knows that the VM is being\nshut down.", - "type": "object" - }, - "CounterStructuredName": { - "properties": { - "originalRequestingStepName": { - "description": "The step name requesting an operation, such as GBK.\nI.e. the ParDo causing a read/write from shuffle to occur, or a\nread from side inputs.", - "type": "string" - }, - "inputIndex": { - "description": "Index of an input collection that's being read from/written to as a side\ninput.\nThe index identifies a step's side inputs starting by 1 (e.g. the first\nside input has input_index 1, the third has input_index 3).\nSide inputs are identified by a pair of (original_step_name, input_index).\nThis field helps uniquely identify them.", - "format": "int32", - "type": "integer" - }, - "componentStepName": { - "description": "Name of the optimized step being executed by the workers.", - "type": "string" - }, - "portion": { - "enum": [ - "ALL", - "KEY", - "VALUE" - ], - "description": "Portion of this counter, either key or value.", - "type": "string", - "enumDescriptions": [ - "Counter portion has not been set.", - "Counter reports a key.", - "Counter reports a value." - ] - }, - "originalStepName": { - "description": "System generated name of the original step in the user's graph, before\noptimization.", - "type": "string" - }, - "workerId": { - "description": "ID of a particular worker.", - "type": "string" - }, - "originNamespace": { - "description": "A string containing a more specific namespace of the counter's origin.", - "type": "string" - }, - "origin": { - "enumDescriptions": [ - "Counter was created by the Dataflow system.", - "Counter was created by the user." - ], - "enum": [ - "SYSTEM", - "USER" - ], - "description": "One of the standard Origins defined above.", - "type": "string" - }, - "name": { - "description": "Counter name. Not necessarily globally-unique, but unique within the\ncontext of the other fields.\nRequired.", - "type": "string" - }, - "executionStepName": { - "description": "Name of the stage. An execution step contains multiple component steps.", - "type": "string" - } - }, - "id": "CounterStructuredName", - "description": "Identifies a counter within a per-job namespace. Counters whose structured\nnames are the same get merged into a single value for the job.", - "type": "object" - }, - "MetricUpdate": { - "description": "Describes the state of a metric.", - "type": "object", - "properties": { - "meanSum": { - "description": "Worker-computed aggregate value for the \"Mean\" aggregation kind.\nThis holds the sum of the aggregated values and is used in combination\nwith mean_count below to obtain the actual mean aggregate value.\nThe only possible value types are Long and Double.", - "type": "any" - }, - "updateTime": { - "description": "Timestamp associated with the metric value. Optional when workers are\nreporting work progress; it will be filled in responses from the\nmetrics API.", - "format": "google-datetime", - "type": "string" - }, - "name": { - "description": "Name of the metric.", - "$ref": "MetricStructuredName" - }, - "distribution": { - "description": "A struct value describing properties of a distribution of numeric values.", - "type": "any" - }, - "set": { - "description": "Worker-computed aggregate value for the \"Set\" aggregation kind. The only\npossible value type is a list of Values whose type can be Long, Double,\nor String, according to the metric's type. All Values in the list must\nbe of the same type.", - "type": "any" - }, - "internal": { - "description": "Worker-computed aggregate value for internal use by the Dataflow\nservice.", - "type": "any" - }, - "cumulative": { - "description": "True if this metric is reported as the total cumulative aggregate\nvalue accumulated since the worker started working on this WorkItem.\nBy default this is false, indicating that this metric is reported\nas a delta that is not associated with any WorkItem.", - "type": "boolean" - }, - "kind": { - "description": "Metric aggregation kind. The possible metric aggregation kinds are\n\"Sum\", \"Max\", \"Min\", \"Mean\", \"Set\", \"And\", \"Or\", and \"Distribution\".\nThe specified aggregation kind is case-insensitive.\n\nIf omitted, this is not an aggregated value but instead\na single metric sample value.", - "type": "string" - }, - "scalar": { - "description": "Worker-computed aggregate value for aggregation kinds \"Sum\", \"Max\", \"Min\",\n\"And\", and \"Or\". The possible value types are Long, Double, and Boolean.", - "type": "any" - }, - "meanCount": { - "description": "Worker-computed aggregate value for the \"Mean\" aggregation kind.\nThis holds the count of the aggregated values and is used in combination\nwith mean_sum above to obtain the actual mean aggregate value.\nThe only possible value type is Long.", - "type": "any" - } - }, - "id": "MetricUpdate" - }, - "ApproximateProgress": { - "properties": { - "percentComplete": { - "description": "Obsolete.", - "format": "float", - "type": "number" - }, - "remainingTime": { - "description": "Obsolete.", - "format": "google-duration", - "type": "string" - }, - "position": { - "description": "Obsolete.", - "$ref": "Position" - } - }, - "id": "ApproximateProgress", - "description": "Obsolete in favor of ApproximateReportedProgress and ApproximateSplitRequest.", - "type": "object" - }, - "WorkerMessageResponse": { - "properties": { - "workerHealthReportResponse": { - "$ref": "WorkerHealthReportResponse", - "description": "The service's response to a worker's health report." - }, - "workerMetricsResponse": { - "description": "Service's response to reporting worker metrics (currently empty).", - "$ref": "ResourceUtilizationReportResponse" - }, - "workerShutdownNoticeResponse": { - "$ref": "WorkerShutdownNoticeResponse", - "description": "Service's response to shutdown notice (currently empty)." - } - }, - "id": "WorkerMessageResponse", - "description": "A worker_message response allows the server to pass information to the\nsender.", - "type": "object" - }, - "TemplateMetadata": { - "description": "Metadata describing a template.", - "type": "object", - "properties": { - "description": { - "description": "Optional. A description of the template.", - "type": "string" - }, - "name": { - "description": "Required. The name of the template.", - "type": "string" - }, - "parameters": { - "description": "The parameters for the template.", - "type": "array", - "items": { - "$ref": "ParameterMetadata" - } - } - }, - "id": "TemplateMetadata" - }, - "WorkerMessage": { - "description": "WorkerMessage provides information to the backend about a worker.", - "type": "object", - "properties": { - "time": { - "description": "The timestamp of the worker_message.", - "format": "google-datetime", - "type": "string" - }, - "workerShutdownNotice": { - "$ref": "WorkerShutdownNotice", - "description": "Shutdown notice by workers." - }, - "workerHealthReport": { - "description": "The health of a worker.", - "$ref": "WorkerHealthReport" - }, - "workerMessageCode": { - "$ref": "WorkerMessageCode", - "description": "A worker message code." - }, - "workerMetrics": { - "description": "Resource metrics reported by workers.", - "$ref": "ResourceUtilizationReport" - }, - "labels": { - "additionalProperties": { - "type": "string" - }, - "description": "Labels are used to group WorkerMessages.\nFor example, a worker_message about a particular container\nmight have the labels:\n{ \"JOB_ID\": \"2015-04-22\",\n \"WORKER_ID\": \"wordcount-vm-2015…\"\n \"CONTAINER_TYPE\": \"worker\",\n \"CONTAINER_ID\": \"ac1234def\"}\nLabel tags typically correspond to Label enum values. However, for ease\nof development other strings can be used as tags. LABEL_UNSPECIFIED should\nnot be used here.", + "description": "The source to read from, plus its parameters.", "type": "object" } }, - "id": "WorkerMessage" - }, - "WorkerShutdownNoticeResponse": { - "description": "Service-side response to WorkerMessage issuing shutdown notice.", - "type": "object", - "properties": {}, - "id": "WorkerShutdownNoticeResponse" - }, - "JobMetrics": { - "properties": { - "metricTime": { - "description": "Timestamp as of which metric values are current.", - "format": "google-datetime", - "type": "string" - }, - "metrics": { - "description": "All metrics for this job.", - "type": "array", - "items": { - "$ref": "MetricUpdate" - } - } - }, - "id": "JobMetrics", - "description": "JobMetrics contains a collection of metrics descibing the detailed progress\nof a Dataflow job. Metrics correspond to user-defined and system-defined\nmetrics in the job.\n\nThis resource captures only the most recent values of each metric;\ntime-series data can be queried for them (under the same metric names)\nfrom Cloud Monitoring.", "type": "object" }, - "FloatingPointList": { - "properties": { - "elements": { - "description": "Elements of the list.", - "type": "array", - "items": { - "format": "double", - "type": "number" - } - } - }, - "id": "FloatingPointList", - "description": "A metric value representing a list of floating point numbers.", - "type": "object" - }, - "CounterUpdate": { - "description": "An update to a Counter sent from a worker.", - "type": "object", - "properties": { - "floatingPointMean": { - "$ref": "FloatingPointMean", - "description": "Floating point mean aggregation value for Mean." - }, - "boolean": { - "description": "Boolean value for And, Or.", - "type": "boolean" - }, - "nameAndKind": { - "$ref": "NameAndKind", - "description": "Counter name and aggregation type." - }, - "stringList": { - "$ref": "StringList", - "description": "List of strings, for Set." - }, - "distribution": { - "description": "Distribution data", - "$ref": "DistributionUpdate" - }, - "shortId": { - "description": "The service-generated short identifier for this counter.\nThe short_id -\u003e (name, metadata) mapping is constant for the lifetime of\na job.", - "format": "int64", - "type": "string" - }, - "floatingPointList": { - "$ref": "FloatingPointList", - "description": "List of floating point numbers, for Set." - }, - "integer": { - "description": "Integer value for Sum, Max, Min.", - "$ref": "SplitInt64" - }, - "integerList": { - "$ref": "IntegerList", - "description": "List of integers, for Set." - }, - "structuredNameAndMetadata": { - "description": "Counter structured name and metadata.", - "$ref": "CounterStructuredNameAndMetadata" - }, - "floatingPoint": { - "description": "Floating point value for Sum, Max, Min.", - "format": "double", - "type": "number" - }, - "integerMean": { - "$ref": "IntegerMean", - "description": "Integer mean aggregation value for Mean." - }, - "internal": { - "description": "Value for internally-defined counters used by the Dataflow service.", - "type": "any" - }, - "cumulative": { - "description": "True if this counter is reported as the total cumulative aggregate\nvalue accumulated since the worker started working on this WorkItem.\nBy default this is false, indicating that this counter is reported\nas a delta.", - "type": "boolean" - } - }, - "id": "CounterUpdate" - }, - "SourceMetadata": { - "description": "Metadata about a Source useful for automatically optimizing\nand tuning the pipeline, etc.", - "type": "object", - "properties": { - "producesSortedKeys": { - "description": "Whether this source is known to produce key/value pairs with\nthe (encoded) keys in lexicographically sorted order.", - "type": "boolean" - }, - "infinite": { - "description": "Specifies that the size of this source is known to be infinite\n(this is a streaming source).", - "type": "boolean" - }, - "estimatedSizeBytes": { - "description": "An estimate of the total size (in bytes) of the data that would be\nread from this source. This estimate is in terms of external storage\nsize, before any decompression or other processing done by the reader.", - "format": "int64", - "type": "string" - } - }, - "id": "SourceMetadata" - }, - "DistributionUpdate": { - "properties": { - "max": { - "$ref": "SplitInt64", - "description": "The maximum value present in the distribution." - }, - "histogram": { - "$ref": "Histogram", - "description": "(Optional) Histogram of value counts for the distribution." - }, - "count": { - "description": "The count of the number of elements present in the distribution.", - "$ref": "SplitInt64" - }, - "min": { - "description": "The minimum value present in the distribution.", - "$ref": "SplitInt64" - }, - "sumOfSquares": { - "description": "Use a double since the sum of squares is likely to overflow int64.", - "format": "double", - "type": "number" - }, - "sum": { - "description": "Use an int64 since we'd prefer the added precision. If overflow is a common\nproblem we can detect it and use an additional int64 or a double.", - "$ref": "SplitInt64" - } - }, - "id": "DistributionUpdate", - "description": "A metric value representing a distribution.", - "type": "object" - }, - "WorkerHealthReportResponse": { - "description": "WorkerHealthReportResponse contains information returned to the worker\nin response to a health ping.", - "type": "object", - "properties": { - "reportInterval": { - "description": "A positive value indicates the worker should change its reporting interval\nto the specified value.\n\nThe default value of zero means no change in report rate is requested by\nthe server.", - "format": "google-duration", - "type": "string" - } - }, - "id": "WorkerHealthReportResponse" - }, "SourceFork": { "description": "DEPRECATED in favor of DynamicSourceSplit.", - "type": "object", + "id": "SourceFork", "properties": { - "residualSource": { - "description": "DEPRECATED", - "$ref": "DerivedSource" - }, "primary": { "$ref": "SourceSplitShard", "description": "DEPRECATED" @@ -4909,135 +3899,807 @@ "residual": { "$ref": "SourceSplitShard", "description": "DEPRECATED" + }, + "residualSource": { + "$ref": "DerivedSource", + "description": "DEPRECATED" } }, - "id": "SourceFork" + "type": "object" }, - "WorkItemStatus": { - "description": "Conveys a worker's progress through the work described by a WorkItem.", - "type": "object", + "SourceGetMetadataRequest": { + "description": "A request to compute the SourceMetadata of a Source.", + "id": "SourceGetMetadataRequest", "properties": { - "stopPosition": { - "$ref": "Position", - "description": "A worker may split an active map task in two parts, \"primary\" and\n\"residual\", continuing to process the primary part and returning the\nresidual part into the pool of available work.\nThis event is called a \"dynamic split\" and is critical to the dynamic\nwork rebalancing feature. The two obtained sub-tasks are called\n\"parts\" of the split.\nThe parts, if concatenated, must represent the same input as would\nbe read by the current task if the split did not happen.\nThe exact way in which the original task is decomposed into the two\nparts is specified either as a position demarcating them\n(stop_position), or explicitly as two DerivedSources, if this\ntask consumes a user-defined source type (dynamic_source_split).\n\nThe \"current\" task is adjusted as a result of the split: after a task\nwith range [A, B) sends a stop_position update at C, its range is\nconsidered to be [A, C), e.g.:\n* Progress should be interpreted relative to the new range, e.g.\n \"75% completed\" means \"75% of [A, C) completed\"\n* The worker should interpret proposed_stop_position relative to the\n new range, e.g. \"split at 68%\" should be interpreted as\n \"split at 68% of [A, C)\".\n* If the worker chooses to split again using stop_position, only\n stop_positions in [A, C) will be accepted.\n* Etc.\ndynamic_source_split has similar semantics: e.g., if a task with\nsource S splits using dynamic_source_split into {P, R}\n(where P and R must be together equivalent to S), then subsequent\nprogress and proposed_stop_position should be interpreted relative\nto P, and in a potential subsequent dynamic_source_split into {P', R'},\nP' and R' must be together equivalent to P, etc." + "source": { + "$ref": "Source", + "description": "Specification of the source whose metadata should be computed." + } + }, + "type": "object" + }, + "SourceGetMetadataResponse": { + "description": "The result of a SourceGetMetadataOperation.", + "id": "SourceGetMetadataResponse", + "properties": { + "metadata": { + "$ref": "SourceMetadata", + "description": "The computed metadata." + } + }, + "type": "object" + }, + "SourceMetadata": { + "description": "Metadata about a Source useful for automatically optimizing\nand tuning the pipeline, etc.", + "id": "SourceMetadata", + "properties": { + "estimatedSizeBytes": { + "description": "An estimate of the total size (in bytes) of the data that would be\nread from this source. This estimate is in terms of external storage\nsize, before any decompression or other processing done by the reader.", + "format": "int64", + "type": "string" }, - "completed": { - "description": "True if the WorkItem was completed (successfully or unsuccessfully).", + "infinite": { + "description": "Specifies that the size of this source is known to be infinite\n(this is a streaming source).", "type": "boolean" }, - "reportedProgress": { - "$ref": "ApproximateReportedProgress", - "description": "The worker's progress through this WorkItem." + "producesSortedKeys": { + "description": "Whether this source is known to produce key/value pairs with\nthe (encoded) keys in lexicographically sorted order.", + "type": "boolean" + } + }, + "type": "object" + }, + "SourceOperationRequest": { + "description": "A work item that represents the different operations that can be\nperformed on a user-defined Source specification.", + "id": "SourceOperationRequest", + "properties": { + "getMetadata": { + "$ref": "SourceGetMetadataRequest", + "description": "Information about a request to get metadata about a source." }, - "sourceFork": { - "$ref": "SourceFork", - "description": "DEPRECATED in favor of dynamic_source_split." - }, - "totalThrottlerWaitTimeSeconds": { - "description": "Total time the worker spent being throttled by external systems.", - "format": "double", - "type": "number" - }, - "counterUpdates": { - "description": "Worker output counters for this WorkItem.", - "type": "array", - "items": { - "$ref": "CounterUpdate" - } - }, - "workItemId": { - "description": "Identifies the WorkItem.", + "name": { + "description": "User-provided name of the Read instruction for this source.", "type": "string" }, - "errors": { - "description": "Specifies errors which occurred during processing. If errors are\nprovided, and completed = true, then the WorkItem is considered\nto have failed.", - "type": "array", - "items": { - "$ref": "Status" - } - }, - "metricUpdates": { - "description": "DEPRECATED in favor of counter_updates.", - "type": "array", - "items": { - "$ref": "MetricUpdate" - } - }, - "dynamicSourceSplit": { - "description": "See documentation of stop_position.", - "$ref": "DynamicSourceSplit" - }, - "sourceOperationResponse": { - "description": "If the work item represented a SourceOperationRequest, and the work\nis completed, contains the result of the operation.", - "$ref": "SourceOperationResponse" - }, - "progress": { - "description": "DEPRECATED in favor of reported_progress.", - "$ref": "ApproximateProgress" - }, - "requestedLeaseDuration": { - "description": "Amount of time the worker requests for its lease.", - "format": "google-duration", + "originalName": { + "description": "System-defined name for the Read instruction for this source\nin the original workflow graph.", "type": "string" }, - "reportIndex": { - "description": "The report index. When a WorkItem is leased, the lease will\ncontain an initial report index. When a WorkItem's status is\nreported to the system, the report should be sent with\nthat report index, and the response will contain the index the\nworker should use for the next report. Reports received with\nunexpected index values will be rejected by the service.\n\nIn order to preserve idempotency, the worker should not alter the\ncontents of a report, even if the worker must submit the same\nreport multiple times before getting back a response. The worker\nshould not submit a subsequent report until the response for the\nprevious report had been received from the service.", + "split": { + "$ref": "SourceSplitRequest", + "description": "Information about a request to split a source." + }, + "stageName": { + "description": "System-defined name of the stage containing the source operation.\nUnique across the workflow.", + "type": "string" + }, + "systemName": { + "description": "System-defined name of the Read instruction for this source.\nUnique across the workflow.", + "type": "string" + } + }, + "type": "object" + }, + "SourceOperationResponse": { + "description": "The result of a SourceOperationRequest, specified in\nReportWorkItemStatusRequest.source_operation when the work item\nis completed.", + "id": "SourceOperationResponse", + "properties": { + "getMetadata": { + "$ref": "SourceGetMetadataResponse", + "description": "A response to a request to get metadata about a source." + }, + "split": { + "$ref": "SourceSplitResponse", + "description": "A response to a request to split a source." + } + }, + "type": "object" + }, + "SourceSplitOptions": { + "description": "Hints for splitting a Source into bundles (parts for parallel\nprocessing) using SourceSplitRequest.", + "id": "SourceSplitOptions", + "properties": { + "desiredBundleSizeBytes": { + "description": "The source should be split into a set of bundles where the estimated size\nof each is approximately this many bytes.", + "format": "int64", + "type": "string" + }, + "desiredShardSizeBytes": { + "description": "DEPRECATED in favor of desired_bundle_size_bytes.", "format": "int64", "type": "string" } }, - "id": "WorkItemStatus" + "type": "object" }, - "ComponentSource": { + "SourceSplitRequest": { + "description": "Represents the operation to split a high-level Source specification\ninto bundles (parts for parallel processing).\n\nAt a high level, splitting of a source into bundles happens as follows:\nSourceSplitRequest is applied to the source. If it returns\nSOURCE_SPLIT_OUTCOME_USE_CURRENT, no further splitting happens and the source\nis used \"as is\". Otherwise, splitting is applied recursively to each\nproduced DerivedSource.\n\nAs an optimization, for any Source, if its does_not_need_splitting is\ntrue, the framework assumes that splitting this source would return\nSOURCE_SPLIT_OUTCOME_USE_CURRENT, and doesn't initiate a SourceSplitRequest.\nThis applies both to the initial source being split and to bundles\nproduced from it.", + "id": "SourceSplitRequest", "properties": { - "originalTransformOrCollection": { - "description": "User name for the original user transform or collection with which this\nsource is most closely associated.", + "options": { + "$ref": "SourceSplitOptions", + "description": "Hints for tuning the splitting process." + }, + "source": { + "$ref": "Source", + "description": "Specification of the source to be split." + } + }, + "type": "object" + }, + "SourceSplitResponse": { + "description": "The response to a SourceSplitRequest.", + "id": "SourceSplitResponse", + "properties": { + "bundles": { + "description": "If outcome is SPLITTING_HAPPENED, then this is a list of bundles\ninto which the source was split. Otherwise this field is ignored.\nThis list can be empty, which means the source represents an empty input.", + "items": { + "$ref": "DerivedSource" + }, + "type": "array" + }, + "outcome": { + "description": "Indicates whether splitting happened and produced a list of bundles.\nIf this is USE_CURRENT_SOURCE_AS_IS, the current source should\nbe processed \"as is\" without splitting. \"bundles\" is ignored in this case.\nIf this is SPLITTING_HAPPENED, then \"bundles\" contains a list of\nbundles into which the source was split.", + "enum": [ + "SOURCE_SPLIT_OUTCOME_UNKNOWN", + "SOURCE_SPLIT_OUTCOME_USE_CURRENT", + "SOURCE_SPLIT_OUTCOME_SPLITTING_HAPPENED" + ], + "enumDescriptions": [ + "The source split outcome is unknown, or unspecified.", + "The current source should be processed \"as is\" without splitting.", + "Splitting produced a list of bundles." + ], "type": "string" }, + "shards": { + "description": "DEPRECATED in favor of bundles.", + "items": { + "$ref": "SourceSplitShard" + }, + "type": "array" + } + }, + "type": "object" + }, + "SourceSplitShard": { + "description": "DEPRECATED in favor of DerivedSource.", + "id": "SourceSplitShard", + "properties": { + "derivationMode": { + "description": "DEPRECATED", + "enum": [ + "SOURCE_DERIVATION_MODE_UNKNOWN", + "SOURCE_DERIVATION_MODE_INDEPENDENT", + "SOURCE_DERIVATION_MODE_CHILD_OF_CURRENT", + "SOURCE_DERIVATION_MODE_SIBLING_OF_CURRENT" + ], + "enumDescriptions": [ + "The source derivation is unknown, or unspecified.", + "Produce a completely independent Source with no base.", + "Produce a Source based on the Source being split.", + "Produce a Source based on the base of the Source being split." + ], + "type": "string" + }, + "source": { + "$ref": "Source", + "description": "DEPRECATED" + } + }, + "type": "object" + }, + "SplitInt64": { + "description": "A representation of an int64, n, that is immune to precision loss when\nencoded in JSON.", + "id": "SplitInt64", + "properties": { + "highBits": { + "description": "The high order bits, including the sign: n \u003e\u003e 32.", + "format": "int32", + "type": "integer" + }, + "lowBits": { + "description": "The low order bits: n \u0026 0xffffffff.", + "format": "uint32", + "type": "integer" + } + }, + "type": "object" + }, + "StageSource": { + "description": "Description of an input or output of an execution stage.", + "id": "StageSource", + "properties": { "name": { "description": "Dataflow service generated name for this source.", "type": "string" }, + "originalTransformOrCollection": { + "description": "User name for the original user transform or collection with which this\nsource is most closely associated.", + "type": "string" + }, + "sizeBytes": { + "description": "Size of the source, if measurable.", + "format": "int64", + "type": "string" + }, "userName": { - "description": "Human-readable name for this transform; may be user or system generated.", + "description": "Human-readable name for this source; may be user or system generated.", "type": "string" } }, - "id": "ComponentSource", - "description": "Description of an interstitial value between transforms in an execution\nstage.", "type": "object" }, - "Histogram": { - "description": "Histogram of value counts for a distribution.\n\nBuckets have an inclusive lower bound and exclusive upper bound and use\n\"1,2,5 bucketing\": The first bucket range is from [0,1) and all subsequent\nbucket boundaries are powers of ten multiplied by 1, 2, or 5. Thus, bucket\nboundaries are 0, 1, 2, 5, 10, 20, 50, 100, 200, 500, 1000, ...\nNegative values are not supported.", - "type": "object", + "StateFamilyConfig": { + "description": "State family configuration.", + "id": "StateFamilyConfig", "properties": { - "bucketCounts": { - "description": "Counts of values in each bucket. For efficiency, prefix and trailing\nbuckets with count = 0 are elided. Buckets can store the full range of\nvalues of an unsigned long, with ULLONG_MAX falling into the 59th bucket\nwith range [1e19, 2e19).", - "type": "array", - "items": { - "format": "int64", - "type": "string" - } + "isRead": { + "description": "If true, this family corresponds to a read operation.", + "type": "boolean" }, - "firstBucketOffset": { - "description": "Starting index of first stored bucket. The non-inclusive upper-bound of\nthe ith bucket is given by:\n pow(10,(i-first_bucket_offset)/3) * (1,2,5)[(i-first_bucket_offset)%3]", + "stateFamily": { + "description": "The state family value.", + "type": "string" + } + }, + "type": "object" + }, + "Status": { + "description": "The `Status` type defines a logical error model that is suitable for different\nprogramming environments, including REST APIs and RPC APIs. It is used by\n[gRPC](https://github.com/grpc). The error model is designed to be:\n\n- Simple to use and understand for most users\n- Flexible enough to meet unexpected needs\n\n# Overview\n\nThe `Status` message contains three pieces of data: error code, error message,\nand error details. The error code should be an enum value of\ngoogle.rpc.Code, but it may accept additional error codes if needed. The\nerror message should be a developer-facing English message that helps\ndevelopers *understand* and *resolve* the error. If a localized user-facing\nerror message is needed, put the localized message in the error details or\nlocalize it in the client. The optional error details may contain arbitrary\ninformation about the error. There is a predefined set of error detail types\nin the package `google.rpc` that can be used for common error conditions.\n\n# Language mapping\n\nThe `Status` message is the logical representation of the error model, but it\nis not necessarily the actual wire format. When the `Status` message is\nexposed in different client libraries and different wire protocols, it can be\nmapped differently. For example, it will likely be mapped to some exceptions\nin Java, but more likely mapped to some error codes in C.\n\n# Other uses\n\nThe error model and the `Status` message can be used in a variety of\nenvironments, either with or without APIs, to provide a\nconsistent developer experience across different environments.\n\nExample uses of this error model include:\n\n- Partial errors. If a service needs to return partial errors to the client,\n it may embed the `Status` in the normal response to indicate the partial\n errors.\n\n- Workflow errors. A typical workflow has multiple steps. Each step may\n have a `Status` message for error reporting.\n\n- Batch operations. If a client uses batch request and batch response, the\n `Status` message should be used directly inside batch response, one for\n each error sub-response.\n\n- Asynchronous operations. If an API call embeds asynchronous operation\n results in its response, the status of those operations should be\n represented directly using the `Status` message.\n\n- Logging. If some API errors are stored in logs, the message `Status` could\n be used directly after any stripping needed for security/privacy reasons.", + "id": "Status", + "properties": { + "code": { + "description": "The status code, which should be an enum value of google.rpc.Code.", + "format": "int32", + "type": "integer" + }, + "details": { + "description": "A list of messages that carry the error details. There is a common set of\nmessage types for APIs to use.", + "items": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "A developer-facing error message, which should be in English. Any\nuser-facing error message should be localized and sent in the\ngoogle.rpc.Status.details field, or localized by the client.", + "type": "string" + } + }, + "type": "object" + }, + "Step": { + "description": "Defines a particular step within a Cloud Dataflow job.\n\nA job consists of multiple steps, each of which performs some\nspecific operation as part of the overall job. Data is typically\npassed from one step to another as part of the job.\n\nHere's an example of a sequence of steps which together implement a\nMap-Reduce job:\n\n * Read a collection of data from some source, parsing the\n collection's elements.\n\n * Validate the elements.\n\n * Apply a user-defined function to map each element to some value\n and extract an element-specific key value.\n\n * Group elements with the same key into a single element with\n that key, transforming a multiply-keyed collection into a\n uniquely-keyed collection.\n\n * Write the elements out to some data sink.\n\nNote that the Cloud Dataflow service may be used to run many different\ntypes of jobs, not just Map-Reduce.", + "id": "Step", + "properties": { + "kind": { + "description": "The kind of step in the Cloud Dataflow job.", + "type": "string" + }, + "name": { + "description": "The name that identifies the step. This must be unique for each\nstep with respect to all other steps in the Cloud Dataflow job.", + "type": "string" + }, + "properties": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "description": "Named properties associated with the step. Each kind of\npredefined step has its own required set of properties.\nMust be provided on Create. Only retrieved with JOB_VIEW_ALL.", + "type": "object" + } + }, + "type": "object" + }, + "StreamLocation": { + "description": "Describes a stream of data, either as input to be processed or as\noutput of a streaming Dataflow job.", + "id": "StreamLocation", + "properties": { + "customSourceLocation": { + "$ref": "CustomSourceLocation", + "description": "The stream is a custom source." + }, + "pubsubLocation": { + "$ref": "PubsubLocation", + "description": "The stream is a pubsub stream." + }, + "sideInputLocation": { + "$ref": "StreamingSideInputLocation", + "description": "The stream is a streaming side input." + }, + "streamingStageLocation": { + "$ref": "StreamingStageLocation", + "description": "The stream is part of another computation within the current\nstreaming Dataflow job." + } + }, + "type": "object" + }, + "StreamingComputationConfig": { + "description": "Configuration information for a single streaming computation.", + "id": "StreamingComputationConfig", + "properties": { + "computationId": { + "description": "Unique identifier for this computation.", + "type": "string" + }, + "instructions": { + "description": "Instructions that comprise the computation.", + "items": { + "$ref": "ParallelInstruction" + }, + "type": "array" + }, + "stageName": { + "description": "Stage name of this computation.", + "type": "string" + }, + "systemName": { + "description": "System defined name for this computation.", + "type": "string" + } + }, + "type": "object" + }, + "StreamingComputationRanges": { + "description": "Describes full or partial data disk assignment information of the computation\nranges.", + "id": "StreamingComputationRanges", + "properties": { + "computationId": { + "description": "The ID of the computation.", + "type": "string" + }, + "rangeAssignments": { + "description": "Data disk assignments for ranges from this computation.", + "items": { + "$ref": "KeyRangeDataDiskAssignment" + }, + "type": "array" + } + }, + "type": "object" + }, + "StreamingComputationTask": { + "description": "A task which describes what action should be performed for the specified\nstreaming computation ranges.", + "id": "StreamingComputationTask", + "properties": { + "computationRanges": { + "description": "Contains ranges of a streaming computation this task should apply to.", + "items": { + "$ref": "StreamingComputationRanges" + }, + "type": "array" + }, + "dataDisks": { + "description": "Describes the set of data disks this task should apply to.", + "items": { + "$ref": "MountedDataDisk" + }, + "type": "array" + }, + "taskType": { + "description": "A type of streaming computation task.", + "enum": [ + "STREAMING_COMPUTATION_TASK_UNKNOWN", + "STREAMING_COMPUTATION_TASK_STOP", + "STREAMING_COMPUTATION_TASK_START" + ], + "enumDescriptions": [ + "The streaming computation task is unknown, or unspecified.", + "Stop processing specified streaming computation range(s).", + "Start processing specified streaming computation range(s)." + ], + "type": "string" + } + }, + "type": "object" + }, + "StreamingConfigTask": { + "description": "A task that carries configuration information for streaming computations.", + "id": "StreamingConfigTask", + "properties": { + "streamingComputationConfigs": { + "description": "Set of computation configuration information.", + "items": { + "$ref": "StreamingComputationConfig" + }, + "type": "array" + }, + "userStepToStateFamilyNameMap": { + "additionalProperties": { + "type": "string" + }, + "description": "Map from user step names to state families.", + "type": "object" + }, + "windmillServiceEndpoint": { + "description": "If present, the worker must use this endpoint to communicate with Windmill\nService dispatchers, otherwise the worker must continue to use whatever\nendpoint it had been using.", + "type": "string" + }, + "windmillServicePort": { + "description": "If present, the worker must use this port to communicate with Windmill\nService dispatchers. Only applicable when windmill_service_endpoint is\nspecified.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "StreamingSetupTask": { + "description": "A task which initializes part of a streaming Dataflow job.", + "id": "StreamingSetupTask", + "properties": { + "drain": { + "description": "The user has requested drain.", + "type": "boolean" + }, + "receiveWorkPort": { + "description": "The TCP port on which the worker should listen for messages from\nother streaming computation workers.", + "format": "int32", + "type": "integer" + }, + "streamingComputationTopology": { + "$ref": "TopologyConfig", + "description": "The global topology of the streaming Dataflow job." + }, + "workerHarnessPort": { + "description": "The TCP port used by the worker to communicate with the Dataflow\nworker harness.", "format": "int32", "type": "integer" } }, - "id": "Histogram" + "type": "object" }, - "WorkItemServiceState": { + "StreamingSideInputLocation": { + "description": "Identifies the location of a streaming side input.", + "id": "StreamingSideInputLocation", "properties": { - "suggestedStopPosition": { - "$ref": "Position", - "description": "Obsolete, always empty." + "stateFamily": { + "description": "Identifies the state family where this side input is stored.", + "type": "string" + }, + "tag": { + "description": "Identifies the particular side input within the streaming Dataflow job.", + "type": "string" + } + }, + "type": "object" + }, + "StreamingStageLocation": { + "description": "Identifies the location of a streaming computation stage, for\nstage-to-stage communication.", + "id": "StreamingStageLocation", + "properties": { + "streamId": { + "description": "Identifies the particular stream within the streaming Dataflow\njob.", + "type": "string" + } + }, + "type": "object" + }, + "StringList": { + "description": "A metric value representing a list of strings.", + "id": "StringList", + "properties": { + "elements": { + "description": "Elements of the list.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "StructuredMessage": { + "description": "A rich message format, including a human readable string, a key for\nidentifying the message, and structured data associated with the message for\nprogrammatic consumption.", + "id": "StructuredMessage", + "properties": { + "messageKey": { + "description": "Idenfier for this message type. Used by external systems to\ninternationalize or personalize message.", + "type": "string" + }, + "messageText": { + "description": "Human-readable version of message.", + "type": "string" + }, + "parameters": { + "description": "The structured data associated with this message.", + "items": { + "$ref": "Parameter" + }, + "type": "array" + } + }, + "type": "object" + }, + "TaskRunnerSettings": { + "description": "Taskrunner configuration settings.", + "id": "TaskRunnerSettings", + "properties": { + "alsologtostderr": { + "description": "Whether to also send taskrunner log info to stderr.", + "type": "boolean" + }, + "baseTaskDir": { + "description": "The location on the worker for task-specific subdirectories.", + "type": "string" + }, + "baseUrl": { + "description": "The base URL for the taskrunner to use when accessing Google Cloud APIs.\n\nWhen workers access Google Cloud APIs, they logically do so via\nrelative URLs. If this field is specified, it supplies the base\nURL to use for resolving these relative URLs. The normative\nalgorithm used is defined by RFC 1808, \"Relative Uniform Resource\nLocators\".\n\nIf not specified, the default value is \"http://www.googleapis.com/\"", + "type": "string" + }, + "commandlinesFileName": { + "description": "The file to store preprocessing commands in.", + "type": "string" + }, + "continueOnException": { + "description": "Whether to continue taskrunner if an exception is hit.", + "type": "boolean" + }, + "dataflowApiVersion": { + "description": "The API version of endpoint, e.g. \"v1b3\"", + "type": "string" + }, + "harnessCommand": { + "description": "The command to launch the worker harness.", + "type": "string" + }, + "languageHint": { + "description": "The suggested backend language.", + "type": "string" + }, + "logDir": { + "description": "The directory on the VM to store logs.", + "type": "string" + }, + "logToSerialconsole": { + "description": "Whether to send taskrunner log info to Google Compute Engine VM serial\nconsole.", + "type": "boolean" + }, + "logUploadLocation": { + "description": "Indicates where to put logs. If this is not specified, the logs\nwill not be uploaded.\n\nThe supported resource type is:\n\nGoogle Cloud Storage:\n storage.googleapis.com/{bucket}/{object}\n bucket.storage.googleapis.com/{object}", + "type": "string" + }, + "oauthScopes": { + "description": "The OAuth2 scopes to be requested by the taskrunner in order to\naccess the Cloud Dataflow API.", + "items": { + "type": "string" + }, + "type": "array" + }, + "parallelWorkerSettings": { + "$ref": "WorkerSettings", + "description": "The settings to pass to the parallel worker harness." + }, + "streamingWorkerMainClass": { + "description": "The streaming worker main class name.", + "type": "string" + }, + "taskGroup": { + "description": "The UNIX group ID on the worker VM to use for tasks launched by\ntaskrunner; e.g. \"wheel\".", + "type": "string" + }, + "taskUser": { + "description": "The UNIX user ID on the worker VM to use for tasks launched by\ntaskrunner; e.g. \"root\".", + "type": "string" + }, + "tempStoragePrefix": { + "description": "The prefix of the resources the taskrunner should use for\ntemporary storage.\n\nThe supported resource type is:\n\nGoogle Cloud Storage:\n storage.googleapis.com/{bucket}/{object}\n bucket.storage.googleapis.com/{object}", + "type": "string" + }, + "vmId": { + "description": "The ID string of the VM.", + "type": "string" + }, + "workflowFileName": { + "description": "The file to store the workflow in.", + "type": "string" + } + }, + "type": "object" + }, + "TemplateMetadata": { + "description": "Metadata describing a template.", + "id": "TemplateMetadata", + "properties": { + "description": { + "description": "Optional. A description of the template.", + "type": "string" + }, + "name": { + "description": "Required. The name of the template.", + "type": "string" + }, + "parameters": { + "description": "The parameters for the template.", + "items": { + "$ref": "ParameterMetadata" + }, + "type": "array" + } + }, + "type": "object" + }, + "TopologyConfig": { + "description": "Global topology of the streaming Dataflow job, including all\ncomputations and their sharded locations.", + "id": "TopologyConfig", + "properties": { + "computations": { + "description": "The computations associated with a streaming Dataflow job.", + "items": { + "$ref": "ComputationTopology" + }, + "type": "array" + }, + "dataDiskAssignments": { + "description": "The disks assigned to a streaming Dataflow job.", + "items": { + "$ref": "DataDiskAssignment" + }, + "type": "array" + }, + "forwardingKeyBits": { + "description": "The size (in bits) of keys that will be assigned to source messages.", + "format": "int32", + "type": "integer" + }, + "persistentStateVersion": { + "description": "Version number for persistent state.", + "format": "int32", + "type": "integer" + }, + "userStageToComputationNameMap": { + "additionalProperties": { + "type": "string" + }, + "description": "Maps user stage names to stable computation names.", + "type": "object" + } + }, + "type": "object" + }, + "TransformSummary": { + "description": "Description of the type, names/ids, and input/outputs for a transform.", + "id": "TransformSummary", + "properties": { + "displayData": { + "description": "Transform-specific display data.", + "items": { + "$ref": "DisplayData" + }, + "type": "array" + }, + "id": { + "description": "SDK generated id of this transform instance.", + "type": "string" + }, + "inputCollectionName": { + "description": "User names for all collection inputs to this transform.", + "items": { + "type": "string" + }, + "type": "array" + }, + "kind": { + "description": "Type of transform.", + "enum": [ + "UNKNOWN_KIND", + "PAR_DO_KIND", + "GROUP_BY_KEY_KIND", + "FLATTEN_KIND", + "READ_KIND", + "WRITE_KIND", + "CONSTANT_KIND", + "SINGLETON_KIND", + "SHUFFLE_KIND" + ], + "enumDescriptions": [ + "Unrecognized transform type.", + "ParDo transform.", + "Group By Key transform.", + "Flatten transform.", + "Read transform.", + "Write transform.", + "Constructs from a constant value, such as with Create.of.", + "Creates a Singleton view of a collection.", + "Opening or closing a shuffle session, often as part of a GroupByKey." + ], + "type": "string" + }, + "name": { + "description": "User provided name for this transform instance.", + "type": "string" + }, + "outputCollectionName": { + "description": "User names for all collection outputs to this transform.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "WorkItem": { + "description": "WorkItem represents basic information about a WorkItem to be executed\nin the cloud.", + "id": "WorkItem", + "properties": { + "configuration": { + "description": "Work item-specific configuration as an opaque blob.", + "type": "string" + }, + "id": { + "description": "Identifies this WorkItem.", + "format": "int64", + "type": "string" + }, + "initialReportIndex": { + "description": "The initial index to use when reporting the status of the WorkItem.", + "format": "int64", + "type": "string" + }, + "jobId": { + "description": "Identifies the workflow job this WorkItem belongs to.", + "type": "string" + }, + "leaseExpireTime": { + "description": "Time when the lease on this Work will expire.", + "format": "google-datetime", + "type": "string" + }, + "mapTask": { + "$ref": "MapTask", + "description": "Additional information for MapTask WorkItems." + }, + "packages": { + "description": "Any required packages that need to be fetched in order to execute\nthis WorkItem.", + "items": { + "$ref": "Package" + }, + "type": "array" + }, + "projectId": { + "description": "Identifies the cloud project this WorkItem belongs to.", + "type": "string" }, "reportStatusInterval": { - "description": "New recommended reporting interval.", + "description": "Recommended reporting interval.", "format": "google-duration", "type": "string" }, + "seqMapTask": { + "$ref": "SeqMapTask", + "description": "Additional information for SeqMapTask WorkItems." + }, + "shellTask": { + "$ref": "ShellTask", + "description": "Additional information for ShellTask WorkItems." + }, + "sourceOperationTask": { + "$ref": "SourceOperationRequest", + "description": "Additional information for source operation WorkItems." + }, + "streamingComputationTask": { + "$ref": "StreamingComputationTask", + "description": "Additional information for StreamingComputationTask WorkItems." + }, + "streamingConfigTask": { + "$ref": "StreamingConfigTask", + "description": "Additional information for StreamingConfigTask WorkItems." + }, + "streamingSetupTask": { + "$ref": "StreamingSetupTask", + "description": "Additional information for StreamingSetupTask WorkItems." + } + }, + "type": "object" + }, + "WorkItemServiceState": { + "description": "The Dataflow service's idea of the current state of a WorkItem\nbeing processed by a worker.", + "id": "WorkItemServiceState", + "properties": { "harnessData": { "additionalProperties": { "description": "Properties of the object.", @@ -5053,64 +4715,481 @@ }, "metricShortId": { "description": "The short ids that workers should use in subsequent metric updates.\nWorkers should strive to use short ids whenever possible, but it is ok\nto request the short_id again if a worker lost track of it\n(e.g. if the worker is recovering from a crash).\nNOTE: it is possible that the response may have short ids for a subset\nof the metrics.", - "type": "array", "items": { "$ref": "MetricShortId" - } + }, + "type": "array" }, "nextReportIndex": { "description": "The index value to use for the next report sent by the worker.\nNote: If the report call fails for whatever reason, the worker should\nreuse this index for subsequent report attempts.", "format": "int64", "type": "string" }, - "suggestedStopPoint": { - "$ref": "ApproximateProgress", - "description": "DEPRECATED in favor of split_request." + "reportStatusInterval": { + "description": "New recommended reporting interval.", + "format": "google-duration", + "type": "string" }, "splitRequest": { "$ref": "ApproximateSplitRequest", "description": "The progress point in the WorkItem where the Dataflow service\nsuggests that the worker truncate the task." + }, + "suggestedStopPoint": { + "$ref": "ApproximateProgress", + "description": "DEPRECATED in favor of split_request." + }, + "suggestedStopPosition": { + "$ref": "Position", + "description": "Obsolete, always empty." + } + }, + "type": "object" + }, + "WorkItemStatus": { + "description": "Conveys a worker's progress through the work described by a WorkItem.", + "id": "WorkItemStatus", + "properties": { + "completed": { + "description": "True if the WorkItem was completed (successfully or unsuccessfully).", + "type": "boolean" + }, + "counterUpdates": { + "description": "Worker output counters for this WorkItem.", + "items": { + "$ref": "CounterUpdate" + }, + "type": "array" + }, + "dynamicSourceSplit": { + "$ref": "DynamicSourceSplit", + "description": "See documentation of stop_position." + }, + "errors": { + "description": "Specifies errors which occurred during processing. If errors are\nprovided, and completed = true, then the WorkItem is considered\nto have failed.", + "items": { + "$ref": "Status" + }, + "type": "array" + }, + "metricUpdates": { + "description": "DEPRECATED in favor of counter_updates.", + "items": { + "$ref": "MetricUpdate" + }, + "type": "array" + }, + "progress": { + "$ref": "ApproximateProgress", + "description": "DEPRECATED in favor of reported_progress." + }, + "reportIndex": { + "description": "The report index. When a WorkItem is leased, the lease will\ncontain an initial report index. When a WorkItem's status is\nreported to the system, the report should be sent with\nthat report index, and the response will contain the index the\nworker should use for the next report. Reports received with\nunexpected index values will be rejected by the service.\n\nIn order to preserve idempotency, the worker should not alter the\ncontents of a report, even if the worker must submit the same\nreport multiple times before getting back a response. The worker\nshould not submit a subsequent report until the response for the\nprevious report had been received from the service.", + "format": "int64", + "type": "string" + }, + "reportedProgress": { + "$ref": "ApproximateReportedProgress", + "description": "The worker's progress through this WorkItem." + }, + "requestedLeaseDuration": { + "description": "Amount of time the worker requests for its lease.", + "format": "google-duration", + "type": "string" + }, + "sourceFork": { + "$ref": "SourceFork", + "description": "DEPRECATED in favor of dynamic_source_split." + }, + "sourceOperationResponse": { + "$ref": "SourceOperationResponse", + "description": "If the work item represented a SourceOperationRequest, and the work\nis completed, contains the result of the operation." + }, + "stopPosition": { + "$ref": "Position", + "description": "A worker may split an active map task in two parts, \"primary\" and\n\"residual\", continuing to process the primary part and returning the\nresidual part into the pool of available work.\nThis event is called a \"dynamic split\" and is critical to the dynamic\nwork rebalancing feature. The two obtained sub-tasks are called\n\"parts\" of the split.\nThe parts, if concatenated, must represent the same input as would\nbe read by the current task if the split did not happen.\nThe exact way in which the original task is decomposed into the two\nparts is specified either as a position demarcating them\n(stop_position), or explicitly as two DerivedSources, if this\ntask consumes a user-defined source type (dynamic_source_split).\n\nThe \"current\" task is adjusted as a result of the split: after a task\nwith range [A, B) sends a stop_position update at C, its range is\nconsidered to be [A, C), e.g.:\n* Progress should be interpreted relative to the new range, e.g.\n \"75% completed\" means \"75% of [A, C) completed\"\n* The worker should interpret proposed_stop_position relative to the\n new range, e.g. \"split at 68%\" should be interpreted as\n \"split at 68% of [A, C)\".\n* If the worker chooses to split again using stop_position, only\n stop_positions in [A, C) will be accepted.\n* Etc.\ndynamic_source_split has similar semantics: e.g., if a task with\nsource S splits using dynamic_source_split into {P, R}\n(where P and R must be together equivalent to S), then subsequent\nprogress and proposed_stop_position should be interpreted relative\nto P, and in a potential subsequent dynamic_source_split into {P', R'},\nP' and R' must be together equivalent to P, etc." + }, + "totalThrottlerWaitTimeSeconds": { + "description": "Total time the worker spent being throttled by external systems.", + "format": "double", + "type": "number" + }, + "workItemId": { + "description": "Identifies the WorkItem.", + "type": "string" + } + }, + "type": "object" + }, + "WorkerHealthReport": { + "description": "WorkerHealthReport contains information about the health of a worker.\n\nThe VM should be identified by the labels attached to the WorkerMessage that\nthis health ping belongs to.", + "id": "WorkerHealthReport", + "properties": { + "pods": { + "description": "The pods running on the worker. See:\nhttp://kubernetes.io/v1.1/docs/api-reference/v1/definitions.html#_v1_pod\n\nThis field is used by the worker to send the status of the indvidual\ncontainers running on each worker.", + "items": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "type": "object" + }, + "type": "array" + }, + "reportInterval": { + "description": "The interval at which the worker is sending health reports.\nThe default value of 0 should be interpreted as the field is not being\nexplicitly set by the worker.", + "format": "google-duration", + "type": "string" + }, + "vmIsHealthy": { + "description": "Whether the VM is healthy.", + "type": "boolean" + }, + "vmStartupTime": { + "description": "The time the VM was booted.", + "format": "google-datetime", + "type": "string" + } + }, + "type": "object" + }, + "WorkerHealthReportResponse": { + "description": "WorkerHealthReportResponse contains information returned to the worker\nin response to a health ping.", + "id": "WorkerHealthReportResponse", + "properties": { + "reportInterval": { + "description": "A positive value indicates the worker should change its reporting interval\nto the specified value.\n\nThe default value of zero means no change in report rate is requested by\nthe server.", + "format": "google-duration", + "type": "string" + } + }, + "type": "object" + }, + "WorkerLifecycleEvent": { + "description": "A report of an event in a worker's lifecycle.\nThe proto contains one event, because the worker is expected to\nasynchronously send each message immediately after the event.\nDue to this asynchrony, messages may arrive out of order (or missing), and it\nis up to the consumer to interpret.\nThe timestamp of the event is in the enclosing WorkerMessage proto.", + "id": "WorkerLifecycleEvent", + "properties": { + "containerStartTime": { + "description": "The start time of this container. All events will report this so that\nevents can be grouped together across container/VM restarts.", + "format": "google-datetime", + "type": "string" + }, + "event": { + "description": "The event being reported.", + "enum": [ + "UNKNOWN_EVENT", + "OS_START", + "CONTAINER_START", + "NETWORK_UP", + "STAGING_FILES_DOWNLOAD_START", + "STAGING_FILES_DOWNLOAD_FINISH", + "SDK_INSTALL_START", + "SDK_INSTALL_FINISH" + ], + "enumDescriptions": [ + "Invalid event.", + "The time the VM started.", + "Our container code starts running. Multiple containers could be\ndistinguished with WorkerMessage.labels if desired.", + "The worker has a functional external network connection.", + "Started downloading staging files.", + "Finished downloading all staging files.", + "For applicable SDKs, started installation of SDK and worker packages.", + "Finished installing SDK." + ], + "type": "string" + }, + "metadata": { + "additionalProperties": { + "type": "string" + }, + "description": "Other stats that can accompany an event. E.g.\n{ \"downloaded_bytes\" : \"123456\" }", + "type": "object" + } + }, + "type": "object" + }, + "WorkerMessage": { + "description": "WorkerMessage provides information to the backend about a worker.", + "id": "WorkerMessage", + "properties": { + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Labels are used to group WorkerMessages.\nFor example, a worker_message about a particular container\nmight have the labels:\n{ \"JOB_ID\": \"2015-04-22\",\n \"WORKER_ID\": \"wordcount-vm-2015…\"\n \"CONTAINER_TYPE\": \"worker\",\n \"CONTAINER_ID\": \"ac1234def\"}\nLabel tags typically correspond to Label enum values. However, for ease\nof development other strings can be used as tags. LABEL_UNSPECIFIED should\nnot be used here.", + "type": "object" + }, + "time": { + "description": "The timestamp of the worker_message.", + "format": "google-datetime", + "type": "string" + }, + "workerHealthReport": { + "$ref": "WorkerHealthReport", + "description": "The health of a worker." + }, + "workerLifecycleEvent": { + "$ref": "WorkerLifecycleEvent", + "description": "Record of worker lifecycle events." + }, + "workerMessageCode": { + "$ref": "WorkerMessageCode", + "description": "A worker message code." + }, + "workerMetrics": { + "$ref": "ResourceUtilizationReport", + "description": "Resource metrics reported by workers." + }, + "workerShutdownNotice": { + "$ref": "WorkerShutdownNotice", + "description": "Shutdown notice by workers." + } + }, + "type": "object" + }, + "WorkerMessageCode": { + "description": "A message code is used to report status and error messages to the service.\nThe message codes are intended to be machine readable. The service will\ntake care of translating these into user understandable messages if\nnecessary.\n\nExample use cases:\n 1. Worker processes reporting successful startup.\n 2. Worker processes reporting specific errors (e.g. package staging\n failure).", + "id": "WorkerMessageCode", + "properties": { + "code": { + "description": "The code is a string intended for consumption by a machine that identifies\nthe type of message being sent.\nExamples:\n 1. \"HARNESS_STARTED\" might be used to indicate the worker harness has\n started.\n 2. \"GCS_DOWNLOAD_ERROR\" might be used to indicate an error downloading\n a GCS file as part of the boot process of one of the worker containers.\n\nThis is a string and not an enum to make it easy to add new codes without\nwaiting for an API change.", + "type": "string" + }, + "parameters": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "description": "Parameters contains specific information about the code.\n\nThis is a struct to allow parameters of different types.\n\nExamples:\n 1. For a \"HARNESS_STARTED\" message parameters might provide the name\n of the worker and additional data like timing information.\n 2. For a \"GCS_DOWNLOAD_ERROR\" parameters might contain fields listing\n the GCS objects being downloaded and fields containing errors.\n\nIn general complex data structures should be avoided. If a worker\nneeds to send a specific and complicated data structure then please\nconsider defining a new proto and adding it to the data oneof in\nWorkerMessageResponse.\n\nConventions:\n Parameters should only be used for information that isn't typically passed\n as a label.\n hostname and other worker identifiers should almost always be passed\n as labels since they will be included on most messages.", + "type": "object" + } + }, + "type": "object" + }, + "WorkerMessageResponse": { + "description": "A worker_message response allows the server to pass information to the\nsender.", + "id": "WorkerMessageResponse", + "properties": { + "workerHealthReportResponse": { + "$ref": "WorkerHealthReportResponse", + "description": "The service's response to a worker's health report." + }, + "workerMetricsResponse": { + "$ref": "ResourceUtilizationReportResponse", + "description": "Service's response to reporting worker metrics (currently empty)." + }, + "workerShutdownNoticeResponse": { + "$ref": "WorkerShutdownNoticeResponse", + "description": "Service's response to shutdown notice (currently empty)." + } + }, + "type": "object" + }, + "WorkerPool": { + "description": "Describes one particular pool of Cloud Dataflow workers to be\ninstantiated by the Cloud Dataflow service in order to perform the\ncomputations required by a job. Note that a workflow job may use\nmultiple pools, in order to match the various computational\nrequirements of the various stages of the job.", + "id": "WorkerPool", + "properties": { + "autoscalingSettings": { + "$ref": "AutoscalingSettings", + "description": "Settings for autoscaling of this WorkerPool." + }, + "dataDisks": { + "description": "Data disks that are used by a VM in this workflow.", + "items": { + "$ref": "Disk" + }, + "type": "array" + }, + "defaultPackageSet": { + "description": "The default package set to install. This allows the service to\nselect a default set of packages which are useful to worker\nharnesses written in a particular language.", + "enum": [ + "DEFAULT_PACKAGE_SET_UNKNOWN", + "DEFAULT_PACKAGE_SET_NONE", + "DEFAULT_PACKAGE_SET_JAVA", + "DEFAULT_PACKAGE_SET_PYTHON" + ], + "enumDescriptions": [ + "The default set of packages to stage is unknown, or unspecified.", + "Indicates that no packages should be staged at the worker unless\nexplicitly specified by the job.", + "Stage packages typically useful to workers written in Java.", + "Stage pacakges typically useful to workers written in Python." + ], + "type": "string" + }, + "diskSizeGb": { + "description": "Size of root disk for VMs, in GB. If zero or unspecified, the service will\nattempt to choose a reasonable default.", + "format": "int32", + "type": "integer" + }, + "diskSourceImage": { + "description": "Fully qualified source image for disks.", + "type": "string" + }, + "diskType": { + "description": "Type of root disk for VMs. If empty or unspecified, the service will\nattempt to choose a reasonable default.", + "type": "string" + }, + "ipConfiguration": { + "description": "Configuration for VM IPs.", + "enum": [ + "WORKER_IP_UNSPECIFIED", + "WORKER_IP_PUBLIC", + "WORKER_IP_PRIVATE" + ], + "enumDescriptions": [ + "The configuration is unknown, or unspecified.", + "Workers should have public IP addresses.", + "Workers should have private IP addresses." + ], + "type": "string" + }, + "kind": { + "description": "The kind of the worker pool; currently only `harness` and `shuffle`\nare supported.", + "type": "string" + }, + "machineType": { + "description": "Machine type (e.g. \"n1-standard-1\"). If empty or unspecified, the\nservice will attempt to choose a reasonable default.", + "type": "string" + }, + "metadata": { + "additionalProperties": { + "type": "string" + }, + "description": "Metadata to set on the Google Compute Engine VMs.", + "type": "object" + }, + "network": { + "description": "Network to which VMs will be assigned. If empty or unspecified,\nthe service will use the network \"default\".", + "type": "string" + }, + "numThreadsPerWorker": { + "description": "The number of threads per worker harness. If empty or unspecified, the\nservice will choose a number of threads (according to the number of cores\non the selected machine type for batch, or 1 by convention for streaming).", + "format": "int32", + "type": "integer" + }, + "numWorkers": { + "description": "Number of Google Compute Engine workers in this pool needed to\nexecute the job. If zero or unspecified, the service will\nattempt to choose a reasonable default.", + "format": "int32", + "type": "integer" + }, + "onHostMaintenance": { + "description": "The action to take on host maintenance, as defined by the Google\nCompute Engine API.", + "type": "string" + }, + "packages": { + "description": "Packages to be installed on workers.", + "items": { + "$ref": "Package" + }, + "type": "array" + }, + "poolArgs": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "description": "Extra arguments for this worker pool.", + "type": "object" + }, + "subnetwork": { + "description": "Subnetwork to which VMs will be assigned, if desired. Expected to be of\nthe form \"regions/REGION/subnetworks/SUBNETWORK\".", + "type": "string" + }, + "taskrunnerSettings": { + "$ref": "TaskRunnerSettings", + "description": "Settings passed through to Google Compute Engine workers when\nusing the standard Dataflow task runner. Users should ignore\nthis field." + }, + "teardownPolicy": { + "description": "Sets the policy for determining when to turndown worker pool.\nAllowed values are: `TEARDOWN_ALWAYS`, `TEARDOWN_ON_SUCCESS`, and\n`TEARDOWN_NEVER`.\n`TEARDOWN_ALWAYS` means workers are always torn down regardless of whether\nthe job succeeds. `TEARDOWN_ON_SUCCESS` means workers are torn down\nif the job succeeds. `TEARDOWN_NEVER` means the workers are never torn\ndown.\n\nIf the workers are not torn down by the service, they will\ncontinue to run and use Google Compute Engine VM resources in the\nuser's project until they are explicitly terminated by the user.\nBecause of this, Google recommends using the `TEARDOWN_ALWAYS`\npolicy except for small, manually supervised test jobs.\n\nIf unknown or unspecified, the service will attempt to choose a reasonable\ndefault.", + "enum": [ + "TEARDOWN_POLICY_UNKNOWN", + "TEARDOWN_ALWAYS", + "TEARDOWN_ON_SUCCESS", + "TEARDOWN_NEVER" + ], + "enumDescriptions": [ + "The teardown policy isn't specified, or is unknown.", + "Always teardown the resource.", + "Teardown the resource on success. This is useful for debugging\nfailures.", + "Never teardown the resource. This is useful for debugging and\ndevelopment." + ], + "type": "string" + }, + "workerHarnessContainerImage": { + "description": "Required. Docker container image that executes the Cloud Dataflow worker\nharness, residing in Google Container Registry.", + "type": "string" + }, + "zone": { + "description": "Zone to run the worker pools in. If empty or unspecified, the service\nwill attempt to choose a reasonable default.", + "type": "string" + } + }, + "type": "object" + }, + "WorkerSettings": { + "description": "Provides data to pass through to the worker harness.", + "id": "WorkerSettings", + "properties": { + "baseUrl": { + "description": "The base URL for accessing Google Cloud APIs.\n\nWhen workers access Google Cloud APIs, they logically do so via\nrelative URLs. If this field is specified, it supplies the base\nURL to use for resolving these relative URLs. The normative\nalgorithm used is defined by RFC 1808, \"Relative Uniform Resource\nLocators\".\n\nIf not specified, the default value is \"http://www.googleapis.com/\"", + "type": "string" + }, + "reportingEnabled": { + "description": "Whether to send work progress updates to the service.", + "type": "boolean" + }, + "servicePath": { + "description": "The Cloud Dataflow service path relative to the root URL, for example,\n\"dataflow/v1b3/projects\".", + "type": "string" + }, + "shuffleServicePath": { + "description": "The Shuffle service path relative to the root URL, for example,\n\"shuffle/v1beta1\".", + "type": "string" + }, + "tempStoragePrefix": { + "description": "The prefix of the resources the system should use for temporary\nstorage.\n\nThe supported resource type is:\n\nGoogle Cloud Storage:\n\n storage.googleapis.com/{bucket}/{object}\n bucket.storage.googleapis.com/{object}", + "type": "string" + }, + "workerId": { + "description": "The ID of the worker running this pipeline.", + "type": "string" + } + }, + "type": "object" + }, + "WorkerShutdownNotice": { + "description": "Shutdown notification from workers. This is to be sent by the shutdown\nscript of the worker VM so that the backend knows that the VM is being\nshut down.", + "id": "WorkerShutdownNotice", + "properties": { + "reason": { + "description": "The reason for the worker shutdown.\nCurrent possible values are:\n \"UNKNOWN\": shutdown reason is unknown.\n \"PREEMPTION\": shutdown reason is preemption.\nOther possible reasons may be added in the future.", + "type": "string" + } + }, + "type": "object" + }, + "WorkerShutdownNoticeResponse": { + "description": "Service-side response to WorkerMessage issuing shutdown notice.", + "id": "WorkerShutdownNoticeResponse", + "properties": {}, + "type": "object" + }, + "WriteInstruction": { + "description": "An instruction that writes records.\nTakes one input, produces no outputs.", + "id": "WriteInstruction", + "properties": { + "input": { + "$ref": "InstructionInput", + "description": "The input." + }, + "sink": { + "$ref": "Sink", + "description": "The sink to write to." } }, - "id": "WorkItemServiceState", - "description": "The Dataflow service's idea of the current state of a WorkItem\nbeing processed by a worker.", "type": "object" } }, - "protocol": "rest", - "icons": { - "x32": "http://www.google.com/images/icons/product/search-32.gif", - "x16": "http://www.google.com/images/icons/product/search-16.gif" - }, - "version": "v1b3", - "baseUrl": "https://dataflow.googleapis.com/", - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/cloud-platform": { - "description": "View and manage your data across Google Cloud Platform services" - }, - "https://www.googleapis.com/auth/userinfo.email": { - "description": "View your email address" - }, - "https://www.googleapis.com/auth/compute.readonly": { - "description": "View your Google Compute Engine resources" - }, - "https://www.googleapis.com/auth/compute": { - "description": "View and manage your Google Compute Engine resources" - } - } - } - }, - "kind": "discovery#restDescription", - "description": "Manages Google Cloud Dataflow projects on Google Cloud Platform.", "servicePath": "", - "rootUrl": "https://dataflow.googleapis.com/", - "basePath": "", - "ownerDomain": "google.com", - "name": "dataflow", - "batchPath": "batch", - "revision": "20180112", - "documentationLink": "https://cloud.google.com/dataflow", - "id": "dataflow:v1b3" -} + "title": "Dataflow API", + "version": "v1b3" +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/dataflow/v1b3/dataflow-gen.go b/vendor/google.golang.org/api/dataflow/v1b3/dataflow-gen.go index 172057482..2990b2e60 100644 --- a/vendor/google.golang.org/api/dataflow/v1b3/dataflow-gen.go +++ b/vendor/google.golang.org/api/dataflow/v1b3/dataflow-gen.go @@ -1,4 +1,4 @@ -// Package dataflow provides access to the Google Dataflow API. +// Package dataflow provides access to the Dataflow API. // // See https://cloud.google.com/dataflow // @@ -767,6 +767,8 @@ type CounterMetadata struct { // "SET" - Aggregated value is a set of unique contributed values. // "DISTRIBUTION" - Aggregated value captures statistics about a // distribution. + // "LATEST_VALUE" - Aggregated value tracks the latest value of a + // variable. Kind string `json:"kind,omitempty"` // OtherUnits: A string referring to the unit type. @@ -955,6 +957,9 @@ type CounterUpdate struct { // Integer: Integer value for Sum, Max, Min. Integer *SplitInt64 `json:"integer,omitempty"` + // IntegerGauge: Gauge data + IntegerGauge *IntegerGauge `json:"integerGauge,omitempty"` + // IntegerList: List of integers, for Set. IntegerList *IntegerList `json:"integerList,omitempty"` @@ -2068,6 +2073,39 @@ func (s *InstructionOutput) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// IntegerGauge: A metric value representing temporal values of a +// variable. +type IntegerGauge struct { + // Timestamp: The time at which this value was measured. Measured as + // msecs from epoch. + Timestamp string `json:"timestamp,omitempty"` + + // Value: The value of the variable represented by this gauge. + Value *SplitInt64 `json:"value,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Timestamp") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Timestamp") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *IntegerGauge) MarshalJSON() ([]byte, error) { + type NoMethod IntegerGauge + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // IntegerList: A metric value representing a list of integers. type IntegerList struct { // Elements: Elements of the list. @@ -3262,6 +3300,8 @@ type NameAndKind struct { // "SET" - Aggregated value is a set of unique contributed values. // "DISTRIBUTION" - Aggregated value captures statistics about a // distribution. + // "LATEST_VALUE" - Aggregated value tracks the latest value of a + // variable. Kind string `json:"kind,omitempty"` // Name: Name of the counter. @@ -3946,10 +3986,20 @@ type RuntimeEnvironment struct { // available to your pipeline during execution, from 1 to 1000. MaxWorkers int64 `json:"maxWorkers,omitempty"` + // Network: Network to which VMs will be assigned. If empty or + // unspecified, + // the service will use the network "default". + Network string `json:"network,omitempty"` + // ServiceAccountEmail: The email address of the service account to run // the job as. ServiceAccountEmail string `json:"serviceAccountEmail,omitempty"` + // Subnetwork: Subnetwork to which VMs will be assigned, if desired. + // Expected to be of + // the form "regions/REGION/subnetworks/SUBNETWORK". + Subnetwork string `json:"subnetwork,omitempty"` + // TempLocation: The Cloud Storage path to use for temporary files. // Must be a valid Cloud Storage URL, beginning with `gs://`. TempLocation string `json:"tempLocation,omitempty"` @@ -6096,6 +6146,67 @@ func (s *WorkerHealthReportResponse) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// WorkerLifecycleEvent: A report of an event in a worker's +// lifecycle. +// The proto contains one event, because the worker is expected +// to +// asynchronously send each message immediately after the event. +// Due to this asynchrony, messages may arrive out of order (or +// missing), and it +// is up to the consumer to interpret. +// The timestamp of the event is in the enclosing WorkerMessage proto. +type WorkerLifecycleEvent struct { + // ContainerStartTime: The start time of this container. All events will + // report this so that + // events can be grouped together across container/VM restarts. + ContainerStartTime string `json:"containerStartTime,omitempty"` + + // Event: The event being reported. + // + // Possible values: + // "UNKNOWN_EVENT" - Invalid event. + // "OS_START" - The time the VM started. + // "CONTAINER_START" - Our container code starts running. Multiple + // containers could be + // distinguished with WorkerMessage.labels if desired. + // "NETWORK_UP" - The worker has a functional external network + // connection. + // "STAGING_FILES_DOWNLOAD_START" - Started downloading staging files. + // "STAGING_FILES_DOWNLOAD_FINISH" - Finished downloading all staging + // files. + // "SDK_INSTALL_START" - For applicable SDKs, started installation of + // SDK and worker packages. + // "SDK_INSTALL_FINISH" - Finished installing SDK. + Event string `json:"event,omitempty"` + + // Metadata: Other stats that can accompany an event. E.g. + // { "downloaded_bytes" : "123456" } + Metadata map[string]string `json:"metadata,omitempty"` + + // ForceSendFields is a list of field names (e.g. "ContainerStartTime") + // to unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "ContainerStartTime") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *WorkerLifecycleEvent) MarshalJSON() ([]byte, error) { + type NoMethod WorkerLifecycleEvent + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // WorkerMessage: WorkerMessage provides information to the backend // about a worker. type WorkerMessage struct { @@ -6119,6 +6230,9 @@ type WorkerMessage struct { // WorkerHealthReport: The health of a worker. WorkerHealthReport *WorkerHealthReport `json:"workerHealthReport,omitempty"` + // WorkerLifecycleEvent: Record of worker lifecycle events. + WorkerLifecycleEvent *WorkerLifecycleEvent `json:"workerLifecycleEvent,omitempty"` + // WorkerMessageCode: A worker message code. WorkerMessageCode *WorkerMessageCode `json:"workerMessageCode,omitempty"` diff --git a/vendor/google.golang.org/api/dataproc/v1/dataproc-api.json b/vendor/google.golang.org/api/dataproc/v1/dataproc-api.json index d7a06f664..f44e78e0a 100644 --- a/vendor/google.golang.org/api/dataproc/v1/dataproc-api.json +++ b/vendor/google.golang.org/api/dataproc/v1/dataproc-api.json @@ -1,643 +1,777 @@ { + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/cloud-platform": { + "description": "View and manage your data across Google Cloud Platform services" + } + } + } + }, + "basePath": "", + "baseUrl": "https://dataproc.googleapis.com/", + "batchPath": "batch", + "canonicalName": "Dataproc", + "description": "Manages Hadoop-based clusters and jobs on Google Cloud Platform.", + "discoveryVersion": "v1", + "documentationLink": "https://cloud.google.com/dataproc/", + "fullyEncodeReservedExpansion": true, + "icons": { + "x16": "http://www.google.com/images/icons/product/search-16.gif", + "x32": "http://www.google.com/images/icons/product/search-32.gif" + }, + "id": "dataproc:v1", + "kind": "discovery#restDescription", + "name": "dataproc", + "ownerDomain": "google.com", "ownerName": "Google", + "parameters": { + "$.xgafv": { + "description": "V1 error format.", + "enum": [ + "1", + "2" + ], + "enumDescriptions": [ + "v1 error format", + "v2 error format" + ], + "location": "query", + "type": "string" + }, + "access_token": { + "description": "OAuth access token.", + "location": "query", + "type": "string" + }, + "alt": { + "default": "json", + "description": "Data format for response.", + "enum": [ + "json", + "media", + "proto" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json", + "Media download with context-dependent Content-Type", + "Responses with Content-Type of application/x-protobuf" + ], + "location": "query", + "type": "string" + }, + "bearer_token": { + "description": "OAuth bearer token.", + "location": "query", + "type": "string" + }, + "callback": { + "description": "JSONP", + "location": "query", + "type": "string" + }, + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "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.", + "location": "query", + "type": "string" + }, + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "pp": { + "default": "true", + "description": "Pretty-print response.", + "location": "query", + "type": "boolean" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", + "location": "query", + "type": "string" + }, + "uploadType": { + "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", + "location": "query", + "type": "string" + }, + "upload_protocol": { + "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", + "location": "query", + "type": "string" + } + }, + "protocol": "rest", "resources": { "projects": { "resources": { "regions": { "resources": { - "operations": { - "methods": { - "list": { - "response": { - "$ref": "ListOperationsResponse" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "GET", - "parameters": { - "name": { - "location": "path", - "description": "The name of the operation's parent resource.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/regions/[^/]+/operations$" - }, - "pageToken": { - "type": "string", - "location": "query", - "description": "The standard list page token." - }, - "pageSize": { - "type": "integer", - "location": "query", - "description": "The standard list page size.", - "format": "int32" - }, - "filter": { - "type": "string", - "location": "query", - "description": "The standard list filter." - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/projects/{projectsId}/regions/{regionsId}/operations", - "path": "v1/{+name}", - "id": "dataproc.projects.regions.operations.list", - "description": "Lists operations that match the specified filter in the request. If the server doesn't support this method, it returns UNIMPLEMENTED.NOTE: the name binding allows API services to override the binding to use different resource name schemes, such as users/*/operations. To override the binding, API services can add a binding such as \"/v1/{name=users/*}/operations\" to their service configuration. For backwards compatibility, the default name includes the operations collection id, however overriding users must ensure the name binding is the parent resource, without the operations collection id." - }, - "get": { - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "GET", - "parameters": { - "name": { - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/regions/[^/]+/operations/[^/]+$", - "location": "path", - "description": "The name of the operation resource." - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/projects/{projectsId}/regions/{regionsId}/operations/{operationsId}", - "path": "v1/{+name}", - "id": "dataproc.projects.regions.operations.get", - "description": "Gets the latest state of a long-running operation. Clients can use this method to poll the operation result at intervals as recommended by the API service." - }, - "cancel": { - "description": "Starts asynchronous cancellation on a long-running operation. The server makes a best effort to cancel the operation, but success is not guaranteed. If the server doesn't support this method, it returns google.rpc.Code.UNIMPLEMENTED. Clients can use Operations.GetOperation or other methods to check whether the cancellation succeeded or whether the operation completed despite cancellation. On successful cancellation, the operation is not deleted; instead, it becomes an operation with an Operation.error value with a google.rpc.Status.code of 1, corresponding to Code.CANCELLED.", - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "POST", - "parameters": { - "name": { - "location": "path", - "description": "The name of the operation resource to be cancelled.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/regions/[^/]+/operations/[^/]+$" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/projects/{projectsId}/regions/{regionsId}/operations/{operationsId}:cancel", - "path": "v1/{+name}:cancel", - "id": "dataproc.projects.regions.operations.cancel" - }, - "delete": { - "flatPath": "v1/projects/{projectsId}/regions/{regionsId}/operations/{operationsId}", - "path": "v1/{+name}", - "id": "dataproc.projects.regions.operations.delete", - "description": "Deletes a long-running operation. This method indicates that the client is no longer interested in the operation result. It does not cancel the operation. If the server doesn't support this method, it returns google.rpc.Code.UNIMPLEMENTED.", - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "DELETE", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "name": { - "location": "path", - "description": "The name of the operation resource to be deleted.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/regions/[^/]+/operations/[^/]+$" - } - } - } - } - }, - "jobs": { - "methods": { - "submit": { - "response": { - "$ref": "Job" - }, - "parameterOrder": [ - "projectId", - "region" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "projectId": { - "required": true, - "type": "string", - "location": "path", - "description": "Required. The ID of the Google Cloud Platform project that the job belongs to." - }, - "region": { - "location": "path", - "description": "Required. The Cloud Dataproc region in which to handle the request.", - "required": true, - "type": "string" - } - }, - "flatPath": "v1/projects/{projectId}/regions/{region}/jobs:submit", - "path": "v1/projects/{projectId}/regions/{region}/jobs:submit", - "id": "dataproc.projects.regions.jobs.submit", - "description": "Submits a job to a cluster.", - "request": { - "$ref": "SubmitJobRequest" - } - }, - "delete": { - "description": "Deletes the job from the project. If the job is active, the delete fails, and the response returns FAILED_PRECONDITION.", - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "projectId", - "region", - "jobId" - ], - "httpMethod": "DELETE", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "projectId": { - "required": true, - "type": "string", - "location": "path", - "description": "Required. The ID of the Google Cloud Platform project that the job belongs to." - }, - "jobId": { - "location": "path", - "description": "Required. The job ID.", - "required": true, - "type": "string" - }, - "region": { - "required": true, - "type": "string", - "location": "path", - "description": "Required. The Cloud Dataproc region in which to handle the request." - } - }, - "flatPath": "v1/projects/{projectId}/regions/{region}/jobs/{jobId}", - "path": "v1/projects/{projectId}/regions/{region}/jobs/{jobId}", - "id": "dataproc.projects.regions.jobs.delete" - }, - "list": { - "flatPath": "v1/projects/{projectId}/regions/{region}/jobs", - "id": "dataproc.projects.regions.jobs.list", - "path": "v1/projects/{projectId}/regions/{region}/jobs", - "description": "Lists regions/{region}/jobs in a project.", - "httpMethod": "GET", - "parameterOrder": [ - "projectId", - "region" - ], - "response": { - "$ref": "ListJobsResponse" - }, - "parameters": { - "clusterName": { - "location": "query", - "description": "Optional. If set, the returned jobs list includes only jobs that were submitted to the named cluster.", - "type": "string" - }, - "projectId": { - "location": "path", - "description": "Required. The ID of the Google Cloud Platform project that the job belongs to.", - "required": true, - "type": "string" - }, - "filter": { - "type": "string", - "location": "query", - "description": "Optional. A filter constraining the jobs to list. Filters are case-sensitive and have the following syntax:field = value AND field = value ...where field is status.state or labels.[KEY], and [KEY] is a label key. value can be * to match all values. status.state can be either ACTIVE or NON_ACTIVE. Only the logical AND operator is supported; space-separated items are treated as having an implicit AND operator.Example filter:status.state = ACTIVE AND labels.env = staging AND labels.starred = *" - }, - "jobStateMatcher": { - "location": "query", - "enum": [ - "ALL", - "ACTIVE", - "NON_ACTIVE" - ], - "description": "Optional. Specifies enumerated categories of jobs to list. (default = match ALL jobs).If filter is provided, jobStateMatcher will be ignored.", - "type": "string" - }, - "pageToken": { - "type": "string", - "location": "query", - "description": "Optional. The page token, returned by a previous call, to request the next page of results." - }, - "pageSize": { - "type": "integer", - "location": "query", - "description": "Optional. The number of results to return in each response.", - "format": "int32" - }, - "region": { - "required": true, - "type": "string", - "location": "path", - "description": "Required. The Cloud Dataproc region in which to handle the request." - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "cancel": { - "request": { - "$ref": "CancelJobRequest" - }, - "description": "Starts a job cancellation request. To access the job resource after cancellation, call regions/{region}/jobs.list or regions/{region}/jobs.get.", - "httpMethod": "POST", - "parameterOrder": [ - "projectId", - "region", - "jobId" - ], - "response": { - "$ref": "Job" - }, - "parameters": { - "projectId": { - "location": "path", - "description": "Required. The ID of the Google Cloud Platform project that the job belongs to.", - "required": true, - "type": "string" - }, - "jobId": { - "required": true, - "type": "string", - "location": "path", - "description": "Required. The job ID." - }, - "region": { - "required": true, - "type": "string", - "location": "path", - "description": "Required. The Cloud Dataproc region in which to handle the request." - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/projects/{projectId}/regions/{region}/jobs/{jobId}:cancel", - "id": "dataproc.projects.regions.jobs.cancel", - "path": "v1/projects/{projectId}/regions/{region}/jobs/{jobId}:cancel" - }, - "get": { - "response": { - "$ref": "Job" - }, - "parameterOrder": [ - "projectId", - "region", - "jobId" - ], - "httpMethod": "GET", - "parameters": { - "projectId": { - "location": "path", - "description": "Required. The ID of the Google Cloud Platform project that the job belongs to.", - "required": true, - "type": "string" - }, - "jobId": { - "required": true, - "type": "string", - "location": "path", - "description": "Required. The job ID." - }, - "region": { - "required": true, - "type": "string", - "location": "path", - "description": "Required. The Cloud Dataproc region in which to handle the request." - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/projects/{projectId}/regions/{region}/jobs/{jobId}", - "path": "v1/projects/{projectId}/regions/{region}/jobs/{jobId}", - "id": "dataproc.projects.regions.jobs.get", - "description": "Gets the resource representation for a job in a project." - }, - "patch": { - "response": { - "$ref": "Job" - }, - "parameterOrder": [ - "projectId", - "region", - "jobId" - ], - "httpMethod": "PATCH", - "parameters": { - "projectId": { - "location": "path", - "description": "Required. The ID of the Google Cloud Platform project that the job belongs to.", - "required": true, - "type": "string" - }, - "jobId": { - "required": true, - "type": "string", - "location": "path", - "description": "Required. The job ID." - }, - "region": { - "location": "path", - "description": "Required. The Cloud Dataproc region in which to handle the request.", - "required": true, - "type": "string" - }, - "updateMask": { - "type": "string", - "location": "query", - "description": "Required. Specifies the path, relative to \u003ccode\u003eJob\u003c/code\u003e, of the field to update. For example, to update the labels of a Job the \u003ccode\u003eupdate_mask\u003c/code\u003e parameter would be specified as \u003ccode\u003elabels\u003c/code\u003e, and the PATCH request body would specify the new value. \u003cstrong\u003eNote:\u003c/strong\u003e Currently, \u003ccode\u003elabels\u003c/code\u003e is the only field that can be updated.", - "format": "google-fieldmask" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/projects/{projectId}/regions/{region}/jobs/{jobId}", - "path": "v1/projects/{projectId}/regions/{region}/jobs/{jobId}", - "id": "dataproc.projects.regions.jobs.patch", - "request": { - "$ref": "Job" - }, - "description": "Updates a job in a project." - } - } - }, "clusters": { "methods": { - "diagnose": { - "flatPath": "v1/projects/{projectId}/regions/{region}/clusters/{clusterName}:diagnose", - "id": "dataproc.projects.regions.clusters.diagnose", - "path": "v1/projects/{projectId}/regions/{region}/clusters/{clusterName}:diagnose", - "request": { - "$ref": "DiagnoseClusterRequest" - }, - "description": "Gets cluster diagnostic information. After the operation completes, the Operation.response field contains DiagnoseClusterOutputLocation.", - "httpMethod": "POST", - "parameterOrder": [ - "projectId", - "region", - "clusterName" - ], - "response": { - "$ref": "Operation" - }, - "parameters": { - "clusterName": { - "location": "path", - "description": "Required. The cluster name.", - "required": true, - "type": "string" - }, - "projectId": { - "required": true, - "type": "string", - "location": "path", - "description": "Required. The ID of the Google Cloud Platform project that the cluster belongs to." - }, - "region": { - "location": "path", - "description": "Required. The Cloud Dataproc region in which to handle the request.", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "delete": { - "httpMethod": "DELETE", - "parameterOrder": [ - "projectId", - "region", - "clusterName" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "clusterName": { - "required": true, - "type": "string", - "location": "path", - "description": "Required. The cluster name." - }, - "projectId": { - "location": "path", - "description": "Required. The ID of the Google Cloud Platform project that the cluster belongs to.", - "required": true, - "type": "string" - }, - "region": { - "required": true, - "type": "string", - "location": "path", - "description": "Required. The Cloud Dataproc region in which to handle the request." - } - }, - "flatPath": "v1/projects/{projectId}/regions/{region}/clusters/{clusterName}", - "id": "dataproc.projects.regions.clusters.delete", - "path": "v1/projects/{projectId}/regions/{region}/clusters/{clusterName}", - "description": "Deletes a cluster in a project." - }, - "list": { + "create": { + "description": "Creates a cluster in a project.", "flatPath": "v1/projects/{projectId}/regions/{region}/clusters", - "id": "dataproc.projects.regions.clusters.list", - "path": "v1/projects/{projectId}/regions/{region}/clusters", - "description": "Lists all regions/{region}/clusters in a project.", - "httpMethod": "GET", - "response": { - "$ref": "ListClustersResponse" - }, + "httpMethod": "POST", + "id": "dataproc.projects.regions.clusters.create", "parameterOrder": [ "projectId", "region" ], "parameters": { "projectId": { - "location": "path", "description": "Required. The ID of the Google Cloud Platform project that the cluster belongs to.", + "location": "path", "required": true, "type": "string" }, "region": { - "required": true, - "type": "string", + "description": "Required. The Cloud Dataproc region in which to handle the request.", "location": "path", - "description": "Required. The Cloud Dataproc region in which to handle the request." - }, - "filter": { - "location": "query", - "description": "Optional. A filter constraining the clusters to list. Filters are case-sensitive and have the following syntax:field = value AND field = value ...where field is one of status.state, clusterName, or labels.[KEY], and [KEY] is a label key. value can be * to match all values. status.state can be one of the following: ACTIVE, INACTIVE, CREATING, RUNNING, ERROR, DELETING, or UPDATING. ACTIVE contains the CREATING, UPDATING, and RUNNING states. INACTIVE contains the DELETING and ERROR states. clusterName is the name of the cluster provided at creation time. Only the logical AND operator is supported; space-separated items are treated as having an implicit AND operator.Example filter:status.state = ACTIVE AND clusterName = mycluster AND labels.env = staging AND labels.starred = *", + "required": true, "type": "string" }, - "pageToken": { - "type": "string", + "requestId": { + "description": "Optional. A unique id used to identify the request. If the server receives two CreateClusterRequest requests with the same id, then the second request will be ignored and the first google.longrunning.Operation created and stored in the backend is returned.It is recommended to always set this value to a UUID (https://en.wikipedia.org/wiki/Universally_unique_identifier).The id must contain only letters (a-z, A-Z), numbers (0-9), underscores (_), and hyphens (-). The maximum length is 40 characters.", "location": "query", - "description": "Optional. The standard List page token." - }, - "pageSize": { - "type": "integer", - "location": "query", - "description": "Optional. The standard List page size.", - "format": "int32" + "type": "string" } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "create": { - "flatPath": "v1/projects/{projectId}/regions/{region}/clusters", - "id": "dataproc.projects.regions.clusters.create", "path": "v1/projects/{projectId}/regions/{region}/clusters", "request": { "$ref": "Cluster" }, - "description": "Creates a cluster in a project.", - "httpMethod": "POST", - "parameterOrder": [ - "projectId", - "region" - ], "response": { "$ref": "Operation" }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Deletes a cluster in a project.", + "flatPath": "v1/projects/{projectId}/regions/{region}/clusters/{clusterName}", + "httpMethod": "DELETE", + "id": "dataproc.projects.regions.clusters.delete", + "parameterOrder": [ + "projectId", + "region", + "clusterName" + ], "parameters": { - "projectId": { - "required": true, - "type": "string", + "clusterName": { + "description": "Required. The cluster name.", "location": "path", - "description": "Required. The ID of the Google Cloud Platform project that the cluster belongs to." + "required": true, + "type": "string" + }, + "clusterUuid": { + "description": "Optional. Specifying the cluster_uuid means the RPC should fail (with error NOT_FOUND) if cluster with specified UUID does not exist.", + "location": "query", + "type": "string" + }, + "projectId": { + "description": "Required. The ID of the Google Cloud Platform project that the cluster belongs to.", + "location": "path", + "required": true, + "type": "string" }, "region": { - "location": "path", "description": "Required. The Cloud Dataproc region in which to handle the request.", + "location": "path", + "required": true, + "type": "string" + }, + "requestId": { + "description": "Optional. A unique id used to identify the request. If the server receives two DeleteClusterRequest requests with the same id, then the second request will be ignored and the first google.longrunning.Operation created and stored in the backend is returned.It is recommended to always set this value to a UUID (https://en.wikipedia.org/wiki/Universally_unique_identifier).The id must contain only letters (a-z, A-Z), numbers (0-9), underscores (_), and hyphens (-). The maximum length is 40 characters.", + "location": "query", + "type": "string" + } + }, + "path": "v1/projects/{projectId}/regions/{region}/clusters/{clusterName}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "diagnose": { + "description": "Gets cluster diagnostic information. After the operation completes, the Operation.response field contains DiagnoseClusterOutputLocation.", + "flatPath": "v1/projects/{projectId}/regions/{region}/clusters/{clusterName}:diagnose", + "httpMethod": "POST", + "id": "dataproc.projects.regions.clusters.diagnose", + "parameterOrder": [ + "projectId", + "region", + "clusterName" + ], + "parameters": { + "clusterName": { + "description": "Required. The cluster name.", + "location": "path", + "required": true, + "type": "string" + }, + "projectId": { + "description": "Required. The ID of the Google Cloud Platform project that the cluster belongs to.", + "location": "path", + "required": true, + "type": "string" + }, + "region": { + "description": "Required. The Cloud Dataproc region in which to handle the request.", + "location": "path", "required": true, "type": "string" } }, + "path": "v1/projects/{projectId}/regions/{region}/clusters/{clusterName}:diagnose", + "request": { + "$ref": "DiagnoseClusterRequest" + }, + "response": { + "$ref": "Operation" + }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ] }, "get": { "description": "Gets the resource representation for a cluster in a project.", - "response": { - "$ref": "Cluster" - }, + "flatPath": "v1/projects/{projectId}/regions/{region}/clusters/{clusterName}", + "httpMethod": "GET", + "id": "dataproc.projects.regions.clusters.get", "parameterOrder": [ "projectId", "region", "clusterName" ], - "httpMethod": "GET", "parameters": { - "projectId": { + "clusterName": { + "description": "Required. The cluster name.", "location": "path", + "required": true, + "type": "string" + }, + "projectId": { "description": "Required. The ID of the Google Cloud Platform project that the cluster belongs to.", + "location": "path", "required": true, "type": "string" }, "region": { - "required": true, - "type": "string", + "description": "Required. The Cloud Dataproc region in which to handle the request.", "location": "path", - "description": "Required. The Cloud Dataproc region in which to handle the request." - }, - "clusterName": { "required": true, - "type": "string", - "location": "path", - "description": "Required. The cluster name." + "type": "string" } }, + "path": "v1/projects/{projectId}/regions/{region}/clusters/{clusterName}", + "response": { + "$ref": "Cluster" + }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists all regions/{region}/clusters in a project.", + "flatPath": "v1/projects/{projectId}/regions/{region}/clusters", + "httpMethod": "GET", + "id": "dataproc.projects.regions.clusters.list", + "parameterOrder": [ + "projectId", + "region" ], - "flatPath": "v1/projects/{projectId}/regions/{region}/clusters/{clusterName}", - "path": "v1/projects/{projectId}/regions/{region}/clusters/{clusterName}", - "id": "dataproc.projects.regions.clusters.get" + "parameters": { + "filter": { + "description": "Optional. A filter constraining the clusters to list. Filters are case-sensitive and have the following syntax:field = value AND field = value ...where field is one of status.state, clusterName, or labels.[KEY], and [KEY] is a label key. value can be * to match all values. status.state can be one of the following: ACTIVE, INACTIVE, CREATING, RUNNING, ERROR, DELETING, or UPDATING. ACTIVE contains the CREATING, UPDATING, and RUNNING states. INACTIVE contains the DELETING and ERROR states. clusterName is the name of the cluster provided at creation time. Only the logical AND operator is supported; space-separated items are treated as having an implicit AND operator.Example filter:status.state = ACTIVE AND clusterName = mycluster AND labels.env = staging AND labels.starred = *", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "Optional. The standard List page size.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional. The standard List page token.", + "location": "query", + "type": "string" + }, + "projectId": { + "description": "Required. The ID of the Google Cloud Platform project that the cluster belongs to.", + "location": "path", + "required": true, + "type": "string" + }, + "region": { + "description": "Required. The Cloud Dataproc region in which to handle the request.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/projects/{projectId}/regions/{region}/clusters", + "response": { + "$ref": "ListClustersResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] }, "patch": { + "description": "Updates a cluster in a project.", "flatPath": "v1/projects/{projectId}/regions/{region}/clusters/{clusterName}", + "httpMethod": "PATCH", "id": "dataproc.projects.regions.clusters.patch", + "parameterOrder": [ + "projectId", + "region", + "clusterName" + ], + "parameters": { + "clusterName": { + "description": "Required. The cluster name.", + "location": "path", + "required": true, + "type": "string" + }, + "gracefulDecommissionTimeout": { + "description": "Optional. Timeout for graceful YARN decomissioning. Graceful decommissioning allows removing nodes from the cluster without interrupting jobs in progress. Timeout specifies how long to wait for jobs in progress to finish before forcefully removing nodes (and potentially interrupting jobs). Default timeout is 0 (for forceful decommission), and the maximum allowed timeout is 1 day.Only supported on Dataproc image versions 1.2 and higher.", + "format": "google-duration", + "location": "query", + "type": "string" + }, + "projectId": { + "description": "Required. The ID of the Google Cloud Platform project the cluster belongs to.", + "location": "path", + "required": true, + "type": "string" + }, + "region": { + "description": "Required. The Cloud Dataproc region in which to handle the request.", + "location": "path", + "required": true, + "type": "string" + }, + "requestId": { + "description": "Optional. A unique id used to identify the request. If the server receives two UpdateClusterRequest requests with the same id, then the second request will be ignored and the first google.longrunning.Operation created and stored in the backend is returned.It is recommended to always set this value to a UUID (https://en.wikipedia.org/wiki/Universally_unique_identifier).The id must contain only letters (a-z, A-Z), numbers (0-9), underscores (_), and hyphens (-). The maximum length is 40 characters.", + "location": "query", + "type": "string" + }, + "updateMask": { + "description": "Required. Specifies the path, relative to Cluster, of the field to update. For example, to change the number of workers in a cluster to 5, the update_mask parameter would be specified as config.worker_config.num_instances, and the PATCH request body would specify the new value, as follows:\n{\n \"config\":{\n \"workerConfig\":{\n \"numInstances\":\"5\"\n }\n }\n}\nSimilarly, to change the number of preemptible workers in a cluster to 5, the update_mask parameter would be config.secondary_worker_config.num_instances, and the PATCH request body would be set as follows:\n{\n \"config\":{\n \"secondaryWorkerConfig\":{\n \"numInstances\":\"5\"\n }\n }\n}\n\u003cstrong\u003eNote:\u003c/strong\u003e Currently, only the following fields can be updated:\u003ctable\u003e \u003ctbody\u003e \u003ctr\u003e \u003ctd\u003e\u003cstrong\u003eMask\u003c/strong\u003e\u003c/td\u003e \u003ctd\u003e\u003cstrong\u003ePurpose\u003c/strong\u003e\u003c/td\u003e \u003c/tr\u003e \u003ctr\u003e \u003ctd\u003e\u003cstrong\u003e\u003cem\u003elabels\u003c/em\u003e\u003c/strong\u003e\u003c/td\u003e \u003ctd\u003eUpdate labels\u003c/td\u003e \u003c/tr\u003e \u003ctr\u003e \u003ctd\u003e\u003cstrong\u003e\u003cem\u003econfig.worker_config.num_instances\u003c/em\u003e\u003c/strong\u003e\u003c/td\u003e \u003ctd\u003eResize primary worker group\u003c/td\u003e \u003c/tr\u003e \u003ctr\u003e \u003ctd\u003e\u003cstrong\u003e\u003cem\u003econfig.secondary_worker_config.num_instances\u003c/em\u003e\u003c/strong\u003e\u003c/td\u003e \u003ctd\u003eResize secondary worker group\u003c/td\u003e \u003c/tr\u003e \u003c/tbody\u003e \u003c/table\u003e", + "format": "google-fieldmask", + "location": "query", + "type": "string" + } + }, "path": "v1/projects/{projectId}/regions/{region}/clusters/{clusterName}", "request": { "$ref": "Cluster" }, - "description": "Updates a cluster in a project.", - "httpMethod": "PATCH", - "parameterOrder": [ - "projectId", - "region", - "clusterName" - ], "response": { "$ref": "Operation" }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + }, + "jobs": { + "methods": { + "cancel": { + "description": "Starts a job cancellation request. To access the job resource after cancellation, call regions/{region}/jobs.list or regions/{region}/jobs.get.", + "flatPath": "v1/projects/{projectId}/regions/{region}/jobs/{jobId}:cancel", + "httpMethod": "POST", + "id": "dataproc.projects.regions.jobs.cancel", + "parameterOrder": [ + "projectId", + "region", + "jobId" + ], "parameters": { - "projectId": { - "required": true, - "type": "string", + "jobId": { + "description": "Required. The job ID.", "location": "path", - "description": "Required. The ID of the Google Cloud Platform project the cluster belongs to." + "required": true, + "type": "string" + }, + "projectId": { + "description": "Required. The ID of the Google Cloud Platform project that the job belongs to.", + "location": "path", + "required": true, + "type": "string" }, "region": { - "location": "path", "description": "Required. The Cloud Dataproc region in which to handle the request.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/projects/{projectId}/regions/{region}/jobs/{jobId}:cancel", + "request": { + "$ref": "CancelJobRequest" + }, + "response": { + "$ref": "Job" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Deletes the job from the project. If the job is active, the delete fails, and the response returns FAILED_PRECONDITION.", + "flatPath": "v1/projects/{projectId}/regions/{region}/jobs/{jobId}", + "httpMethod": "DELETE", + "id": "dataproc.projects.regions.jobs.delete", + "parameterOrder": [ + "projectId", + "region", + "jobId" + ], + "parameters": { + "jobId": { + "description": "Required. The job ID.", + "location": "path", + "required": true, + "type": "string" + }, + "projectId": { + "description": "Required. The ID of the Google Cloud Platform project that the job belongs to.", + "location": "path", + "required": true, + "type": "string" + }, + "region": { + "description": "Required. The Cloud Dataproc region in which to handle the request.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/projects/{projectId}/regions/{region}/jobs/{jobId}", + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Gets the resource representation for a job in a project.", + "flatPath": "v1/projects/{projectId}/regions/{region}/jobs/{jobId}", + "httpMethod": "GET", + "id": "dataproc.projects.regions.jobs.get", + "parameterOrder": [ + "projectId", + "region", + "jobId" + ], + "parameters": { + "jobId": { + "description": "Required. The job ID.", + "location": "path", + "required": true, + "type": "string" + }, + "projectId": { + "description": "Required. The ID of the Google Cloud Platform project that the job belongs to.", + "location": "path", + "required": true, + "type": "string" + }, + "region": { + "description": "Required. The Cloud Dataproc region in which to handle the request.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/projects/{projectId}/regions/{region}/jobs/{jobId}", + "response": { + "$ref": "Job" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists regions/{region}/jobs in a project.", + "flatPath": "v1/projects/{projectId}/regions/{region}/jobs", + "httpMethod": "GET", + "id": "dataproc.projects.regions.jobs.list", + "parameterOrder": [ + "projectId", + "region" + ], + "parameters": { + "clusterName": { + "description": "Optional. If set, the returned jobs list includes only jobs that were submitted to the named cluster.", + "location": "query", + "type": "string" + }, + "filter": { + "description": "Optional. A filter constraining the jobs to list. Filters are case-sensitive and have the following syntax:field = value AND field = value ...where field is status.state or labels.[KEY], and [KEY] is a label key. value can be * to match all values. status.state can be either ACTIVE or NON_ACTIVE. Only the logical AND operator is supported; space-separated items are treated as having an implicit AND operator.Example filter:status.state = ACTIVE AND labels.env = staging AND labels.starred = *", + "location": "query", + "type": "string" + }, + "jobStateMatcher": { + "description": "Optional. Specifies enumerated categories of jobs to list. (default = match ALL jobs).If filter is provided, jobStateMatcher will be ignored.", + "enum": [ + "ALL", + "ACTIVE", + "NON_ACTIVE" + ], + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "Optional. The number of results to return in each response.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional. The page token, returned by a previous call, to request the next page of results.", + "location": "query", + "type": "string" + }, + "projectId": { + "description": "Required. The ID of the Google Cloud Platform project that the job belongs to.", + "location": "path", + "required": true, + "type": "string" + }, + "region": { + "description": "Required. The Cloud Dataproc region in which to handle the request.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/projects/{projectId}/regions/{region}/jobs", + "response": { + "$ref": "ListJobsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "patch": { + "description": "Updates a job in a project.", + "flatPath": "v1/projects/{projectId}/regions/{region}/jobs/{jobId}", + "httpMethod": "PATCH", + "id": "dataproc.projects.regions.jobs.patch", + "parameterOrder": [ + "projectId", + "region", + "jobId" + ], + "parameters": { + "jobId": { + "description": "Required. The job ID.", + "location": "path", + "required": true, + "type": "string" + }, + "projectId": { + "description": "Required. The ID of the Google Cloud Platform project that the job belongs to.", + "location": "path", + "required": true, + "type": "string" + }, + "region": { + "description": "Required. The Cloud Dataproc region in which to handle the request.", + "location": "path", "required": true, "type": "string" }, "updateMask": { - "location": "query", - "description": "Required. Specifies the path, relative to Cluster, of the field to update. For example, to change the number of workers in a cluster to 5, the update_mask parameter would be specified as config.worker_config.num_instances, and the PATCH request body would specify the new value, as follows:\n{\n \"config\":{\n \"workerConfig\":{\n \"numInstances\":\"5\"\n }\n }\n}\nSimilarly, to change the number of preemptible workers in a cluster to 5, the update_mask parameter would be config.secondary_worker_config.num_instances, and the PATCH request body would be set as follows:\n{\n \"config\":{\n \"secondaryWorkerConfig\":{\n \"numInstances\":\"5\"\n }\n }\n}\n\u003cstrong\u003eNote:\u003c/strong\u003e Currently, only the following fields can be updated:\u003ctable\u003e \u003ctbody\u003e \u003ctr\u003e \u003ctd\u003e\u003cstrong\u003eMask\u003c/strong\u003e\u003c/td\u003e \u003ctd\u003e\u003cstrong\u003ePurpose\u003c/strong\u003e\u003c/td\u003e \u003c/tr\u003e \u003ctr\u003e \u003ctd\u003e\u003cstrong\u003e\u003cem\u003elabels\u003c/em\u003e\u003c/strong\u003e\u003c/td\u003e \u003ctd\u003eUpdate labels\u003c/td\u003e \u003c/tr\u003e \u003ctr\u003e \u003ctd\u003e\u003cstrong\u003e\u003cem\u003econfig.worker_config.num_instances\u003c/em\u003e\u003c/strong\u003e\u003c/td\u003e \u003ctd\u003eResize primary worker group\u003c/td\u003e \u003c/tr\u003e \u003ctr\u003e \u003ctd\u003e\u003cstrong\u003e\u003cem\u003econfig.secondary_worker_config.num_instances\u003c/em\u003e\u003c/strong\u003e\u003c/td\u003e \u003ctd\u003eResize secondary worker group\u003c/td\u003e \u003c/tr\u003e \u003c/tbody\u003e \u003c/table\u003e", + "description": "Required. Specifies the path, relative to \u003ccode\u003eJob\u003c/code\u003e, of the field to update. For example, to update the labels of a Job the \u003ccode\u003eupdate_mask\u003c/code\u003e parameter would be specified as \u003ccode\u003elabels\u003c/code\u003e, and the PATCH request body would specify the new value. \u003cstrong\u003eNote:\u003c/strong\u003e Currently, \u003ccode\u003elabels\u003c/code\u003e is the only field that can be updated.", "format": "google-fieldmask", - "type": "string" - }, - "clusterName": { - "required": true, - "type": "string", - "location": "path", - "description": "Required. The cluster name." - }, - "gracefulDecommissionTimeout": { "location": "query", - "description": "Optional. Timeout for graceful YARN decomissioning. Graceful decommissioning allows removing nodes from the cluster without interrupting jobs in progress. Timeout specifies how long to wait for jobs in progress to finish before forcefully removing nodes (and potentially interrupting jobs). Default timeout is 0 (for forceful decommission), and the maximum allowed timeout is 1 day.Only supported on Dataproc image versions 1.2 and higher.", - "format": "google-duration", "type": "string" } }, + "path": "v1/projects/{projectId}/regions/{region}/jobs/{jobId}", + "request": { + "$ref": "Job" + }, + "response": { + "$ref": "Job" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "submit": { + "description": "Submits a job to a cluster.", + "flatPath": "v1/projects/{projectId}/regions/{region}/jobs:submit", + "httpMethod": "POST", + "id": "dataproc.projects.regions.jobs.submit", + "parameterOrder": [ + "projectId", + "region" + ], + "parameters": { + "projectId": { + "description": "Required. The ID of the Google Cloud Platform project that the job belongs to.", + "location": "path", + "required": true, + "type": "string" + }, + "region": { + "description": "Required. The Cloud Dataproc region in which to handle the request.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/projects/{projectId}/regions/{region}/jobs:submit", + "request": { + "$ref": "SubmitJobRequest" + }, + "response": { + "$ref": "Job" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + }, + "operations": { + "methods": { + "cancel": { + "description": "Starts asynchronous cancellation on a long-running operation. The server makes a best effort to cancel the operation, but success is not guaranteed. If the server doesn't support this method, it returns google.rpc.Code.UNIMPLEMENTED. Clients can use Operations.GetOperation or other methods to check whether the cancellation succeeded or whether the operation completed despite cancellation. On successful cancellation, the operation is not deleted; instead, it becomes an operation with an Operation.error value with a google.rpc.Status.code of 1, corresponding to Code.CANCELLED.", + "flatPath": "v1/projects/{projectsId}/regions/{regionsId}/operations/{operationsId}:cancel", + "httpMethod": "POST", + "id": "dataproc.projects.regions.operations.cancel", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource to be cancelled.", + "location": "path", + "pattern": "^projects/[^/]+/regions/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}:cancel", + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Deletes a long-running operation. This method indicates that the client is no longer interested in the operation result. It does not cancel the operation. If the server doesn't support this method, it returns google.rpc.Code.UNIMPLEMENTED.", + "flatPath": "v1/projects/{projectsId}/regions/{regionsId}/operations/{operationsId}", + "httpMethod": "DELETE", + "id": "dataproc.projects.regions.operations.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource to be deleted.", + "location": "path", + "pattern": "^projects/[^/]+/regions/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Gets the latest state of a long-running operation. Clients can use this method to poll the operation result at intervals as recommended by the API service.", + "flatPath": "v1/projects/{projectsId}/regions/{regionsId}/operations/{operationsId}", + "httpMethod": "GET", + "id": "dataproc.projects.regions.operations.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource.", + "location": "path", + "pattern": "^projects/[^/]+/regions/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists operations that match the specified filter in the request. If the server doesn't support this method, it returns UNIMPLEMENTED.NOTE: the name binding allows API services to override the binding to use different resource name schemes, such as users/*/operations. To override the binding, API services can add a binding such as \"/v1/{name=users/*}/operations\" to their service configuration. For backwards compatibility, the default name includes the operations collection id, however overriding users must ensure the name binding is the parent resource, without the operations collection id.", + "flatPath": "v1/projects/{projectsId}/regions/{regionsId}/operations", + "httpMethod": "GET", + "id": "dataproc.projects.regions.operations.list", + "parameterOrder": [ + "name" + ], + "parameters": { + "filter": { + "description": "The standard list filter.", + "location": "query", + "type": "string" + }, + "name": { + "description": "The name of the operation's parent resource.", + "location": "path", + "pattern": "^projects/[^/]+/regions/[^/]+/operations$", + "required": true, + "type": "string" + }, + "pageSize": { + "description": "The standard list page size.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "The standard list page token.", + "location": "query", + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "ListOperationsResponse" + }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ] @@ -649,186 +783,515 @@ } } }, - "parameters": { - "upload_protocol": { - "type": "string", - "location": "query", - "description": "Upload protocol for media (e.g. \"raw\", \"multipart\")." - }, - "prettyPrint": { - "type": "boolean", - "default": "true", - "location": "query", - "description": "Returns response with indentations and line breaks." - }, - "fields": { - "type": "string", - "location": "query", - "description": "Selector specifying which fields to include in a partial response." - }, - "uploadType": { - "type": "string", - "location": "query", - "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\")." - }, - "callback": { - "location": "query", - "description": "JSONP", - "type": "string" - }, - "$.xgafv": { - "type": "string", - "enumDescriptions": [ - "v1 error format", - "v2 error format" - ], - "location": "query", - "enum": [ - "1", - "2" - ], - "description": "V1 error format." - }, - "alt": { - "enum": [ - "json", - "media", - "proto" - ], - "type": "string", - "enumDescriptions": [ - "Responses with Content-Type of application/json", - "Media download with context-dependent Content-Type", - "Responses with Content-Type of application/x-protobuf" - ], - "location": "query", - "description": "Data format for response.", - "default": "json" - }, - "key": { - "type": "string", - "location": "query", - "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": { - "type": "string", - "location": "query", - "description": "OAuth access token." - }, - "quotaUser": { - "type": "string", - "location": "query", - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters." - }, - "pp": { - "location": "query", - "description": "Pretty-print response.", - "type": "boolean", - "default": "true" - }, - "bearer_token": { - "location": "query", - "description": "OAuth bearer token.", - "type": "string" - }, - "oauth_token": { - "location": "query", - "description": "OAuth 2.0 token for the current user.", - "type": "string" - } - }, - "version": "v1", - "baseUrl": "https://dataproc.googleapis.com/", - "servicePath": "", - "description": "Manages Hadoop-based clusters and jobs on Google Cloud Platform.", - "kind": "discovery#restDescription", - "basePath": "", - "id": "dataproc:v1", - "documentationLink": "https://cloud.google.com/dataproc/", - "revision": "20180109", - "discoveryVersion": "v1", + "revision": "20180312", + "rootUrl": "https://dataproc.googleapis.com/", "schemas": { - "SparkJob": { - "type": "object", + "AcceleratorConfig": { + "description": "Specifies the type and number of accelerator cards attached to the instances of an instance. See GPUs on Compute Engine.", + "id": "AcceleratorConfig", "properties": { + "acceleratorCount": { + "description": "The number of the accelerator cards of this type exposed to this instance.", + "format": "int32", + "type": "integer" + }, + "acceleratorTypeUri": { + "description": "Full URL, partial URI, or short name of the accelerator type resource to expose to this instance. See Compute Engine AcceleratorTypes.Examples:\nhttps://www.googleapis.com/compute/beta/projects/[project_id]/zones/us-east1-a/acceleratorTypes/nvidia-tesla-k80\nprojects/[project_id]/zones/us-east1-a/acceleratorTypes/nvidia-tesla-k80\nnvidia-tesla-k80", + "type": "string" + } + }, + "type": "object" + }, + "CancelJobRequest": { + "description": "A request to cancel a job.", + "id": "CancelJobRequest", + "properties": {}, + "type": "object" + }, + "Cluster": { + "description": "Describes the identifying information, config, and status of a cluster of Compute Engine instances.", + "id": "Cluster", + "properties": { + "clusterName": { + "description": "Required. The cluster name. Cluster names within a project must be unique. Names of deleted clusters can be reused.", + "type": "string" + }, + "clusterUuid": { + "description": "Output only. A cluster UUID (Unique Universal Identifier). Cloud Dataproc generates this value when it creates the cluster.", + "type": "string" + }, + "config": { + "$ref": "ClusterConfig", + "description": "Required. The cluster config. Note that Cloud Dataproc may set default values, and values may change when clusters are updated." + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Optional. The labels to associate with this cluster. Label keys must contain 1 to 63 characters, and must conform to RFC 1035 (https://www.ietf.org/rfc/rfc1035.txt). Label values may be empty, but, if present, must contain 1 to 63 characters, and must conform to RFC 1035 (https://www.ietf.org/rfc/rfc1035.txt). No more than 32 labels can be associated with a cluster.", + "type": "object" + }, + "metrics": { + "$ref": "ClusterMetrics", + "description": "Contains cluster daemon metrics such as HDFS and YARN stats.Beta Feature: This report is available for testing purposes only. It may be changed before final release." + }, + "projectId": { + "description": "Required. The Google Cloud Platform project ID that the cluster belongs to.", + "type": "string" + }, + "status": { + "$ref": "ClusterStatus", + "description": "Output only. Cluster status." + }, + "statusHistory": { + "description": "Output only. The previous cluster status.", + "items": { + "$ref": "ClusterStatus" + }, + "type": "array" + } + }, + "type": "object" + }, + "ClusterConfig": { + "description": "The cluster config.", + "id": "ClusterConfig", + "properties": { + "configBucket": { + "description": "Optional. A Cloud Storage staging bucket used for sharing generated SSH keys and config. If you do not specify a staging bucket, Cloud Dataproc will determine an appropriate Cloud Storage location (US, ASIA, or EU) for your cluster's staging bucket according to the Google Compute Engine zone where your cluster is deployed, and then it will create and manage this project-level, per-location bucket for you.", + "type": "string" + }, + "gceClusterConfig": { + "$ref": "GceClusterConfig", + "description": "Required. The shared Compute Engine config settings for all instances in a cluster." + }, + "initializationActions": { + "description": "Optional. Commands to execute on each node after config is completed. By default, executables are run on master and all worker nodes. You can test a node's role metadata to run an executable on a master or worker node, as shown below using curl (you can also use wget):\nROLE=$(curl -H Metadata-Flavor:Google http://metadata/computeMetadata/v1/instance/attributes/dataproc-role)\nif [[ \"${ROLE}\" == 'Master' ]]; then\n ... master specific actions ...\nelse\n ... worker specific actions ...\nfi\n", + "items": { + "$ref": "NodeInitializationAction" + }, + "type": "array" + }, + "masterConfig": { + "$ref": "InstanceGroupConfig", + "description": "Optional. The Compute Engine config settings for the master instance in a cluster." + }, + "secondaryWorkerConfig": { + "$ref": "InstanceGroupConfig", + "description": "Optional. The Compute Engine config settings for additional worker instances in a cluster." + }, + "softwareConfig": { + "$ref": "SoftwareConfig", + "description": "Optional. The config settings for software inside the cluster." + }, + "workerConfig": { + "$ref": "InstanceGroupConfig", + "description": "Optional. The Compute Engine config settings for worker instances in a cluster." + } + }, + "type": "object" + }, + "ClusterMetrics": { + "description": "Contains cluster daemon metrics, such as HDFS and YARN stats.Beta Feature: This report is available for testing purposes only. It may be changed before final release.", + "id": "ClusterMetrics", + "properties": { + "hdfsMetrics": { + "additionalProperties": { + "format": "int64", + "type": "string" + }, + "description": "The HDFS metrics.", + "type": "object" + }, + "yarnMetrics": { + "additionalProperties": { + "format": "int64", + "type": "string" + }, + "description": "The YARN metrics.", + "type": "object" + } + }, + "type": "object" + }, + "ClusterOperationMetadata": { + "description": "Metadata describing the operation.", + "id": "ClusterOperationMetadata", + "properties": { + "clusterName": { + "description": "Output only. Name of the cluster for the operation.", + "type": "string" + }, + "clusterUuid": { + "description": "Output only. Cluster UUID for the operation.", + "type": "string" + }, + "description": { + "description": "Output only. Short description of operation.", + "type": "string" + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Output only. Labels associated with the operation", + "type": "object" + }, + "operationType": { + "description": "Output only. The operation type.", + "type": "string" + }, + "status": { + "$ref": "ClusterOperationStatus", + "description": "Output only. Current operation status." + }, + "statusHistory": { + "description": "Output only. The previous operation status.", + "items": { + "$ref": "ClusterOperationStatus" + }, + "type": "array" + }, + "warnings": { + "description": "Output only. Errors encountered during operation execution.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "ClusterOperationStatus": { + "description": "The status of the operation.", + "id": "ClusterOperationStatus", + "properties": { + "details": { + "description": "Output only. A message containing any operation metadata details.", + "type": "string" + }, + "innerState": { + "description": "Output only. A message containing the detailed operation state.", + "type": "string" + }, + "state": { + "description": "Output only. A message containing the operation state.", + "enum": [ + "UNKNOWN", + "PENDING", + "RUNNING", + "DONE" + ], + "enumDescriptions": [ + "Unused.", + "The operation has been created.", + "The operation is running.", + "The operation is done; either cancelled or completed." + ], + "type": "string" + }, + "stateStartTime": { + "description": "Output only. The time this state was entered.", + "format": "google-datetime", + "type": "string" + } + }, + "type": "object" + }, + "ClusterStatus": { + "description": "The status of a cluster and its instances.", + "id": "ClusterStatus", + "properties": { + "detail": { + "description": "Output only. Optional details of cluster's state.", + "type": "string" + }, + "state": { + "description": "Output only. The cluster's state.", + "enum": [ + "UNKNOWN", + "CREATING", + "RUNNING", + "ERROR", + "DELETING", + "UPDATING" + ], + "enumDescriptions": [ + "The cluster state is unknown.", + "The cluster is being created and set up. It is not ready for use.", + "The cluster is currently running and healthy. It is ready for use.", + "The cluster encountered an error. It is not ready for use.", + "The cluster is being deleted. It cannot be used.", + "The cluster is being updated. It continues to accept and process jobs." + ], + "type": "string" + }, + "stateStartTime": { + "description": "Output only. Time when this state was entered.", + "format": "google-datetime", + "type": "string" + }, + "substate": { + "description": "Output only. Additional state information that includes status reported by the agent.", + "enum": [ + "UNSPECIFIED", + "UNHEALTHY", + "STALE_STATUS" + ], + "enumDescriptions": [ + "The cluster substate is unknown.", + "The cluster is known to be in an unhealthy state (for example, critical daemons are not running or HDFS capacity is exhausted).Applies to RUNNING state.", + "The agent-reported status is out of date (may occur if Cloud Dataproc loses communication with Agent).Applies to RUNNING state." + ], + "type": "string" + } + }, + "type": "object" + }, + "DiagnoseClusterRequest": { + "description": "A request to collect cluster diagnostic information.", + "id": "DiagnoseClusterRequest", + "properties": {}, + "type": "object" + }, + "DiagnoseClusterResults": { + "description": "The location of diagnostic output.", + "id": "DiagnoseClusterResults", + "properties": { + "outputUri": { + "description": "Output only. The Google Cloud Storage URI of the diagnostic output. The output report is a plain text file with a summary of collected diagnostics.", + "type": "string" + } + }, + "type": "object" + }, + "DiskConfig": { + "description": "Specifies the config of disk options for a group of VM instances.", + "id": "DiskConfig", + "properties": { + "bootDiskSizeGb": { + "description": "Optional. Size in GB of the boot disk (default is 500GB).", + "format": "int32", + "type": "integer" + }, + "numLocalSsds": { + "description": "Optional. Number of attached SSDs, from 0 to 4 (default is 0). If SSDs are not attached, the boot disk is used to store runtime logs and HDFS (https://hadoop.apache.org/docs/r1.2.1/hdfs_user_guide.html) data. If one or more SSDs are attached, this runtime bulk data is spread across them, and the boot disk contains only basic config and installed binaries.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "Empty": { + "description": "A generic empty message that you can re-use to avoid defining duplicated empty messages in your APIs. A typical example is to use it as the request or the response type of an API method. For instance:\nservice Foo {\n rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty);\n}\nThe JSON representation for Empty is empty JSON object {}.", + "id": "Empty", + "properties": {}, + "type": "object" + }, + "GceClusterConfig": { + "description": "Common config settings for resources of Compute Engine cluster instances, applicable to all instances in the cluster.", + "id": "GceClusterConfig", + "properties": { + "internalIpOnly": { + "description": "Optional. If true, all instances in the cluster will only have internal IP addresses. By default, clusters are not restricted to internal IP addresses, and will have ephemeral external IP addresses assigned to each instance. This internal_ip_only restriction can only be enabled for subnetwork enabled networks, and all off-cluster dependencies must be configured to be accessible without external IP addresses.", + "type": "boolean" + }, + "metadata": { + "additionalProperties": { + "type": "string" + }, + "description": "The Compute Engine metadata entries to add to all instances (see Project and instance metadata (https://cloud.google.com/compute/docs/storing-retrieving-metadata#project_and_instance_metadata)).", + "type": "object" + }, + "networkUri": { + "description": "Optional. The Compute Engine network to be used for machine communications. Cannot be specified with subnetwork_uri. If neither network_uri nor subnetwork_uri is specified, the \"default\" network of the project is used, if it exists. Cannot be a \"Custom Subnet Network\" (see Using Subnetworks for more information).A full URL, partial URI, or short name are valid. Examples:\nhttps://www.googleapis.com/compute/v1/projects/[project_id]/regions/global/default\nprojects/[project_id]/regions/global/default\ndefault", + "type": "string" + }, + "serviceAccount": { + "description": "Optional. The service account of the instances. Defaults to the default Compute Engine service account. Custom service accounts need permissions equivalent to the folloing IAM roles:\nroles/logging.logWriter\nroles/storage.objectAdmin(see https://cloud.google.com/compute/docs/access/service-accounts#custom_service_accounts for more information). Example: [account_id]@[project_id].iam.gserviceaccount.com", + "type": "string" + }, + "serviceAccountScopes": { + "description": "Optional. The URIs of service account scopes to be included in Google Compute Engine instances. The following base set of scopes is always included:\nhttps://www.googleapis.com/auth/cloud.useraccounts.readonly\nhttps://www.googleapis.com/auth/devstorage.read_write\nhttps://www.googleapis.com/auth/logging.writeIf no scopes are specified, the following defaults are also provided:\nhttps://www.googleapis.com/auth/bigquery\nhttps://www.googleapis.com/auth/bigtable.admin.table\nhttps://www.googleapis.com/auth/bigtable.data\nhttps://www.googleapis.com/auth/devstorage.full_control", + "items": { + "type": "string" + }, + "type": "array" + }, + "subnetworkUri": { + "description": "Optional. The Compute Engine subnetwork to be used for machine communications. Cannot be specified with network_uri.A full URL, partial URI, or short name are valid. Examples:\nhttps://www.googleapis.com/compute/v1/projects/[project_id]/regions/us-east1/sub0\nprojects/[project_id]/regions/us-east1/sub0\nsub0", + "type": "string" + }, + "tags": { + "description": "The Compute Engine tags to add to all instances (see Tagging instances).", + "items": { + "type": "string" + }, + "type": "array" + }, + "zoneUri": { + "description": "Optional. The zone where the Compute Engine cluster will be located. On a create request, it is required in the \"global\" region. If omitted in a non-global Cloud Dataproc region, the service will pick a zone in the corresponding Compute Engine region. On a get request, zone will always be present.A full URL, partial URI, or short name are valid. Examples:\nhttps://www.googleapis.com/compute/v1/projects/[project_id]/zones/[zone]\nprojects/[project_id]/zones/[zone]\nus-central1-f", + "type": "string" + } + }, + "type": "object" + }, + "HadoopJob": { + "description": "A Cloud Dataproc job for running Apache Hadoop MapReduce (https://hadoop.apache.org/docs/current/hadoop-mapreduce-client/hadoop-mapreduce-client-core/MapReduceTutorial.html) jobs on Apache Hadoop YARN (https://hadoop.apache.org/docs/r2.7.1/hadoop-yarn/hadoop-yarn-site/YARN.html).", + "id": "HadoopJob", + "properties": { + "archiveUris": { + "description": "Optional. HCFS URIs of archives to be extracted in the working directory of Hadoop drivers and tasks. Supported file types: .jar, .tar, .tar.gz, .tgz, or .zip.", + "items": { + "type": "string" + }, + "type": "array" + }, + "args": { + "description": "Optional. The arguments to pass to the driver. Do not include arguments, such as -libjars or -Dfoo=bar, that can be set as job properties, since a collision may occur that causes an incorrect job submission.", + "items": { + "type": "string" + }, + "type": "array" + }, + "fileUris": { + "description": "Optional. HCFS (Hadoop Compatible Filesystem) URIs of files to be copied to the working directory of Hadoop drivers and distributed tasks. Useful for naively parallel tasks.", + "items": { + "type": "string" + }, + "type": "array" + }, + "jarFileUris": { + "description": "Optional. Jar file URIs to add to the CLASSPATHs of the Hadoop driver and tasks.", + "items": { + "type": "string" + }, + "type": "array" + }, "loggingConfig": { "$ref": "LoggingConfig", "description": "Optional. The runtime log config for job execution." }, + "mainClass": { + "description": "The name of the driver's main class. The jar file containing the class must be in the default CLASSPATH or specified in jar_file_uris.", + "type": "string" + }, + "mainJarFileUri": { + "description": "The HCFS URI of the jar file containing the main class. Examples: 'gs://foo-bucket/analytics-binaries/extract-useful-metrics-mr.jar' 'hdfs:/tmp/test-samples/custom-wordcount.jar' 'file:///home/usr/lib/hadoop-mapreduce/hadoop-mapreduce-examples.jar'", + "type": "string" + }, "properties": { "additionalProperties": { "type": "string" }, - "description": "Optional. A mapping of property names to values, used to configure Spark. Properties that conflict with values set by the Cloud Dataproc API may be overwritten. Can include properties set in /etc/spark/conf/spark-defaults.conf and classes in user code.", + "description": "Optional. A mapping of property names to values, used to configure Hadoop. Properties that conflict with values set by the Cloud Dataproc API may be overwritten. Can include properties set in /etc/hadoop/conf/*-site and classes in user code.", "type": "object" + } + }, + "type": "object" + }, + "HiveJob": { + "description": "A Cloud Dataproc job for running Apache Hive (https://hive.apache.org/) queries on YARN.", + "id": "HiveJob", + "properties": { + "continueOnFailure": { + "description": "Optional. Whether to continue executing queries if a query fails. The default value is false. Setting to true can be useful when executing independent parallel queries.", + "type": "boolean" }, - "args": { - "description": "Optional. The arguments to pass to the driver. Do not include arguments, such as --conf, that can be set as job properties, since a collision may occur that causes an incorrect job submission.", - "type": "array", - "items": { - "type": "string" - } - }, - "fileUris": { - "type": "array", + "jarFileUris": { + "description": "Optional. HCFS URIs of jar files to add to the CLASSPATH of the Hive server and Hadoop MapReduce (MR) tasks. Can contain Hive SerDes and UDFs.", "items": { "type": "string" }, - "description": "Optional. HCFS URIs of files to be copied to the working directory of Spark drivers and distributed tasks. Useful for naively parallel tasks." + "type": "array" }, - "mainClass": { - "type": "string", - "description": "The name of the driver's main class. The jar file that contains the class must be in the default CLASSPATH or specified in jar_file_uris." - }, - "archiveUris": { - "description": "Optional. HCFS URIs of archives to be extracted in the working directory of Spark drivers and tasks. Supported file types: .jar, .tar, .tar.gz, .tgz, and .zip.", - "type": "array", - "items": { + "properties": { + "additionalProperties": { "type": "string" - } + }, + "description": "Optional. A mapping of property names and values, used to configure Hive. Properties that conflict with values set by the Cloud Dataproc API may be overwritten. Can include properties set in /etc/hadoop/conf/*-site.xml, /etc/hive/conf/hive-site.xml, and classes in user code.", + "type": "object" }, - "mainJarFileUri": { - "type": "string", - "description": "The HCFS URI of the jar file that contains the main class." + "queryFileUri": { + "description": "The HCFS URI of the script that contains Hive queries.", + "type": "string" }, - "jarFileUris": { - "description": "Optional. HCFS URIs of jar files to add to the CLASSPATHs of the Spark driver and tasks.", - "type": "array", - "items": { + "queryList": { + "$ref": "QueryList", + "description": "A list of queries." + }, + "scriptVariables": { + "additionalProperties": { "type": "string" - } + }, + "description": "Optional. Mapping of query variable names to values (equivalent to the Hive command: SET name=\"value\";).", + "type": "object" } }, - "id": "SparkJob", - "description": "A Cloud Dataproc job for running Apache Spark (http://spark.apache.org/) applications on YARN." + "type": "object" + }, + "InstanceGroupConfig": { + "description": "Optional. The config settings for Compute Engine resources in an instance group, such as a master or worker group.", + "id": "InstanceGroupConfig", + "properties": { + "accelerators": { + "description": "Optional. The Compute Engine accelerator configuration for these instances.Beta Feature: This feature is still under development. It may be changed before final release.", + "items": { + "$ref": "AcceleratorConfig" + }, + "type": "array" + }, + "diskConfig": { + "$ref": "DiskConfig", + "description": "Optional. Disk option config settings." + }, + "imageUri": { + "description": "Output only. The Compute Engine image resource used for cluster instances. Inferred from SoftwareConfig.image_version.", + "type": "string" + }, + "instanceNames": { + "description": "Optional. The list of instance names. Cloud Dataproc derives the names from cluster_name, num_instances, and the instance group if not set by user (recommended practice is to let Cloud Dataproc derive the name).", + "items": { + "type": "string" + }, + "type": "array" + }, + "isPreemptible": { + "description": "Optional. Specifies that this instance group contains preemptible instances.", + "type": "boolean" + }, + "machineTypeUri": { + "description": "Optional. The Compute Engine machine type used for cluster instances.A full URL, partial URI, or short name are valid. Examples:\nhttps://www.googleapis.com/compute/v1/projects/[project_id]/zones/us-east1-a/machineTypes/n1-standard-2\nprojects/[project_id]/zones/us-east1-a/machineTypes/n1-standard-2\nn1-standard-2", + "type": "string" + }, + "managedGroupConfig": { + "$ref": "ManagedGroupConfig", + "description": "Output only. The config for Compute Engine Instance Group Manager that manages this group. This is only used for preemptible instance groups." + }, + "numInstances": { + "description": "Optional. The number of VM instances in the instance group. For master instance groups, must be set to 1.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" }, "Job": { - "type": "object", + "description": "A Cloud Dataproc job resource.", + "id": "Job", "properties": { + "driverControlFilesUri": { + "description": "Output only. If present, the location of miscellaneous control files which may be used as part of job setup and handling. If not present, control files may be placed in the same location as driver_output_uri.", + "type": "string" + }, + "driverOutputResourceUri": { + "description": "Output only. A URI pointing to the location of the stdout of the job's driver program.", + "type": "string" + }, "hadoopJob": { "$ref": "HadoopJob", "description": "Job is a Hadoop job." }, - "placement": { - "$ref": "JobPlacement", - "description": "Required. Job information, including how, when, and where to run the job." - }, - "status": { - "$ref": "JobStatus", - "description": "Output only. The job status. Additional application-specific status information may be contained in the \u003ccode\u003etype_job\u003c/code\u003e and \u003ccode\u003eyarn_applications\u003c/code\u003e fields." - }, - "driverControlFilesUri": { - "type": "string", - "description": "Output only. If present, the location of miscellaneous control files which may be used as part of job setup and handling. If not present, control files may be placed in the same location as driver_output_uri." - }, - "scheduling": { - "$ref": "JobScheduling", - "description": "Optional. Job scheduling configuration." - }, - "pigJob": { - "$ref": "PigJob", - "description": "Job is a Pig job." - }, "hiveJob": { "$ref": "HiveJob", "description": "Job is a Hive job." @@ -840,31 +1303,13 @@ "description": "Optional. The labels to associate with this job. Label keys must contain 1 to 63 characters, and must conform to RFC 1035 (https://www.ietf.org/rfc/rfc1035.txt). Label values may be empty, but, if present, must contain 1 to 63 characters, and must conform to RFC 1035 (https://www.ietf.org/rfc/rfc1035.txt). No more than 32 labels can be associated with a job.", "type": "object" }, - "driverOutputResourceUri": { - "type": "string", - "description": "Output only. A URI pointing to the location of the stdout of the job's driver program." + "pigJob": { + "$ref": "PigJob", + "description": "Job is a Pig job." }, - "statusHistory": { - "type": "array", - "items": { - "$ref": "JobStatus" - }, - "description": "Output only. The previous job status." - }, - "sparkSqlJob": { - "$ref": "SparkSqlJob", - "description": "Job is a SparkSql job." - }, - "sparkJob": { - "$ref": "SparkJob", - "description": "Job is a Spark job." - }, - "yarnApplications": { - "type": "array", - "items": { - "$ref": "YarnApplication" - }, - "description": "Output only. The collection of YARN applications spun up by this job.Beta Feature: This report is available for testing purposes only. It may be changed before final release." + "placement": { + "$ref": "JobPlacement", + "description": "Required. Job information, including how, when, and where to run the job." }, "pysparkJob": { "$ref": "PySparkJob", @@ -873,28 +1318,92 @@ "reference": { "$ref": "JobReference", "description": "Optional. The fully qualified reference to the job, which can be used to obtain the equivalent REST path of the job resource. If this property is not specified when a job is created, the server generates a \u003ccode\u003ejob_id\u003c/code\u003e." + }, + "scheduling": { + "$ref": "JobScheduling", + "description": "Optional. Job scheduling configuration." + }, + "sparkJob": { + "$ref": "SparkJob", + "description": "Job is a Spark job." + }, + "sparkSqlJob": { + "$ref": "SparkSqlJob", + "description": "Job is a SparkSql job." + }, + "status": { + "$ref": "JobStatus", + "description": "Output only. The job status. Additional application-specific status information may be contained in the \u003ccode\u003etype_job\u003c/code\u003e and \u003ccode\u003eyarn_applications\u003c/code\u003e fields." + }, + "statusHistory": { + "description": "Output only. The previous job status.", + "items": { + "$ref": "JobStatus" + }, + "type": "array" + }, + "yarnApplications": { + "description": "Output only. The collection of YARN applications spun up by this job.Beta Feature: This report is available for testing purposes only. It may be changed before final release.", + "items": { + "$ref": "YarnApplication" + }, + "type": "array" } }, - "id": "Job", - "description": "A Cloud Dataproc job resource." + "type": "object" + }, + "JobPlacement": { + "description": "Cloud Dataproc job config.", + "id": "JobPlacement", + "properties": { + "clusterName": { + "description": "Required. The name of the cluster where the job will be submitted.", + "type": "string" + }, + "clusterUuid": { + "description": "Output only. A cluster UUID generated by the Cloud Dataproc service when the job is submitted.", + "type": "string" + } + }, + "type": "object" + }, + "JobReference": { + "description": "Encapsulates the full scoping used to reference a job.", + "id": "JobReference", + "properties": { + "jobId": { + "description": "Optional. The job ID, which must be unique within the project. The job ID is generated by the server upon job submission or provided by the user as a means to perform retries without creating duplicate jobs. The ID must contain only letters (a-z, A-Z), numbers (0-9), underscores (_), or hyphens (-). The maximum length is 100 characters.", + "type": "string" + }, + "projectId": { + "description": "Required. The ID of the Google Cloud Platform project that the job belongs to.", + "type": "string" + } + }, + "type": "object" + }, + "JobScheduling": { + "description": "Job scheduling options.", + "id": "JobScheduling", + "properties": { + "maxFailuresPerHour": { + "description": "Optional. Maximum number of times per hour a driver may be restarted as a result of driver terminating with non-zero code before job is reported failed.A job may be reported as thrashing if driver exits with non-zero code 4 times within 10 minute window.Maximum value is 10.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" }, "JobStatus": { - "type": "object", + "description": "Cloud Dataproc job status.", + "id": "JobStatus", "properties": { + "details": { + "description": "Output only. Optional job state details, such as an error description if the state is \u003ccode\u003eERROR\u003c/code\u003e.", + "type": "string" + }, "state": { - "type": "string", - "enumDescriptions": [ - "The job state is unknown.", - "The job is pending; it has been submitted, but is not yet running.", - "Job has been received by the service and completed initial setup; it will soon be submitted to the cluster.", - "The job is running on the cluster.", - "A CancelJob request has been received, but is pending.", - "Transient in-flight resources have been canceled, and the request to cancel the running job has been issued to the cluster.", - "The job cancellation was successful.", - "The job has completed successfully.", - "The job has completed, but encountered an error.", - "Job attempt has failed. The detail field contains failure details for this attempt.Applies to restartable jobs only." - ], + "description": "Output only. A state message specifying the overall job state.", "enum": [ "STATE_UNSPECIFIED", "PENDING", @@ -907,515 +1416,101 @@ "ERROR", "ATTEMPT_FAILURE" ], - "description": "Output only. A state message specifying the overall job state." - }, - "details": { - "description": "Output only. Optional job state details, such as an error description if the state is \u003ccode\u003eERROR\u003c/code\u003e.", + "enumDescriptions": [ + "The job state is unknown.", + "The job is pending; it has been submitted, but is not yet running.", + "Job has been received by the service and completed initial setup; it will soon be submitted to the cluster.", + "The job is running on the cluster.", + "A CancelJob request has been received, but is pending.", + "Transient in-flight resources have been canceled, and the request to cancel the running job has been issued to the cluster.", + "The job cancellation was successful.", + "The job has completed successfully.", + "The job has completed, but encountered an error.", + "Job attempt has failed. The detail field contains failure details for this attempt.Applies to restartable jobs only." + ], "type": "string" }, "stateStartTime": { - "type": "string", "description": "Output only. The time when this state was entered.", - "format": "google-datetime" + "format": "google-datetime", + "type": "string" }, "substate": { + "description": "Output only. Additional state information, which includes status reported by the agent.", "enum": [ "UNSPECIFIED", "SUBMITTED", "QUEUED", "STALE_STATUS" ], - "description": "Output only. Additional state information, which includes status reported by the agent.", - "type": "string", "enumDescriptions": [ "The job substate is unknown.", "The Job is submitted to the agent.Applies to RUNNING state.", "The Job has been received and is awaiting execution (it may be waiting for a condition to be met). See the \"details\" field for the reason for the delay.Applies to RUNNING state.", "The agent-reported status is out of date, which may be caused by a loss of communication between the agent and Cloud Dataproc. If the agent does not send a timely update, the job will fail.Applies to RUNNING state." - ] - } - }, - "id": "JobStatus", - "description": "Cloud Dataproc job status." - }, - "ManagedGroupConfig": { - "type": "object", - "properties": { - "instanceGroupManagerName": { - "type": "string", - "description": "Output only. The name of the Instance Group Manager for this group." - }, - "instanceTemplateName": { - "type": "string", - "description": "Output only. The name of the Instance Template used for the Managed Instance Group." - } - }, - "id": "ManagedGroupConfig", - "description": "Specifies the resources used to actively manage an instance group." - }, - "ClusterOperationStatus": { - "description": "The status of the operation.", - "type": "object", - "properties": { - "innerState": { - "description": "Output only. A message containing the detailed operation state.", - "type": "string" - }, - "stateStartTime": { - "type": "string", - "description": "Output only. The time this state was entered.", - "format": "google-datetime" - }, - "state": { - "enum": [ - "UNKNOWN", - "PENDING", - "RUNNING", - "DONE" ], - "description": "Output only. A message containing the operation state.", - "type": "string", - "enumDescriptions": [ - "Unused.", - "The operation has been created.", - "The operation is running.", - "The operation is done; either cancelled or completed." - ] - }, - "details": { - "type": "string", - "description": "Output only. A message containing any operation metadata details." - } - }, - "id": "ClusterOperationStatus" - }, - "HadoopJob": { - "type": "object", - "properties": { - "archiveUris": { - "description": "Optional. HCFS URIs of archives to be extracted in the working directory of Hadoop drivers and tasks. Supported file types: .jar, .tar, .tar.gz, .tgz, or .zip.", - "type": "array", - "items": { - "type": "string" - } - }, - "mainJarFileUri": { - "type": "string", - "description": "The HCFS URI of the jar file containing the main class. Examples: 'gs://foo-bucket/analytics-binaries/extract-useful-metrics-mr.jar' 'hdfs:/tmp/test-samples/custom-wordcount.jar' 'file:///home/usr/lib/hadoop-mapreduce/hadoop-mapreduce-examples.jar'" - }, - "jarFileUris": { - "description": "Optional. Jar file URIs to add to the CLASSPATHs of the Hadoop driver and tasks.", - "type": "array", - "items": { - "type": "string" - } - }, - "loggingConfig": { - "$ref": "LoggingConfig", - "description": "Optional. The runtime log config for job execution." - }, - "properties": { - "additionalProperties": { - "type": "string" - }, - "description": "Optional. A mapping of property names to values, used to configure Hadoop. Properties that conflict with values set by the Cloud Dataproc API may be overwritten. Can include properties set in /etc/hadoop/conf/*-site and classes in user code.", - "type": "object" - }, - "args": { - "type": "array", - "items": { - "type": "string" - }, - "description": "Optional. The arguments to pass to the driver. Do not include arguments, such as -libjars or -Dfoo=bar, that can be set as job properties, since a collision may occur that causes an incorrect job submission." - }, - "fileUris": { - "description": "Optional. HCFS (Hadoop Compatible Filesystem) URIs of files to be copied to the working directory of Hadoop drivers and distributed tasks. Useful for naively parallel tasks.", - "type": "array", - "items": { - "type": "string" - } - }, - "mainClass": { - "type": "string", - "description": "The name of the driver's main class. The jar file containing the class must be in the default CLASSPATH or specified in jar_file_uris." - } - }, - "id": "HadoopJob", - "description": "A Cloud Dataproc job for running Apache Hadoop MapReduce (https://hadoop.apache.org/docs/current/hadoop-mapreduce-client/hadoop-mapreduce-client-core/MapReduceTutorial.html) jobs on Apache Hadoop YARN (https://hadoop.apache.org/docs/r2.7.1/hadoop-yarn/hadoop-yarn-site/YARN.html)." - }, - "QueryList": { - "description": "A list of queries to run on a cluster.", - "type": "object", - "properties": { - "queries": { - "description": "Required. The queries to execute. You do not need to terminate a query with a semicolon. Multiple queries can be specified in one string by separating each with a semicolon. Here is an example of an Cloud Dataproc API snippet that uses a QueryList to specify a HiveJob:\n\"hiveJob\": {\n \"queryList\": {\n \"queries\": [\n \"query1\",\n \"query2\",\n \"query3;query4\",\n ]\n }\n}\n", - "type": "array", - "items": { - "type": "string" - } - } - }, - "id": "QueryList" - }, - "YarnApplication": { - "description": "A YARN application created by a job. Application information is a subset of \u003ccode\u003eorg.apache.hadoop.yarn.proto.YarnProtos.ApplicationReportProto\u003c/code\u003e.Beta Feature: This report is available for testing purposes only. It may be changed before final release.", - "type": "object", - "properties": { - "progress": { - "description": "Required. The numerical progress of the application, from 1 to 100.", - "format": "float", - "type": "number" - }, - "state": { - "enum": [ - "STATE_UNSPECIFIED", - "NEW", - "NEW_SAVING", - "SUBMITTED", - "ACCEPTED", - "RUNNING", - "FINISHED", - "FAILED", - "KILLED" - ], - "description": "Required. The application state.", - "type": "string", - "enumDescriptions": [ - "Status is unspecified.", - "Status is NEW.", - "Status is NEW_SAVING.", - "Status is SUBMITTED.", - "Status is ACCEPTED.", - "Status is RUNNING.", - "Status is FINISHED.", - "Status is FAILED.", - "Status is KILLED." - ] - }, - "name": { - "description": "Required. The application name.", - "type": "string" - }, - "trackingUrl": { - "description": "Optional. The HTTP URL of the ApplicationMaster, HistoryServer, or TimelineServer that provides application-specific information. The URL uses the internal hostname, and requires a proxy server for resolution and, possibly, access.", "type": "string" } }, - "id": "YarnApplication" + "type": "object" }, - "DiagnoseClusterRequest": { - "description": "A request to collect cluster diagnostic information.", - "type": "object", - "properties": {}, - "id": "DiagnoseClusterRequest" - }, - "DiskConfig": { - "type": "object", + "ListClustersResponse": { + "description": "The list of all clusters in a project.", + "id": "ListClustersResponse", "properties": { - "numLocalSsds": { - "description": "Optional. Number of attached SSDs, from 0 to 4 (default is 0). If SSDs are not attached, the boot disk is used to store runtime logs and HDFS (https://hadoop.apache.org/docs/r1.2.1/hdfs_user_guide.html) data. If one or more SSDs are attached, this runtime bulk data is spread across them, and the boot disk contains only basic config and installed binaries.", - "format": "int32", - "type": "integer" - }, - "bootDiskSizeGb": { - "type": "integer", - "description": "Optional. Size in GB of the boot disk (default is 500GB).", - "format": "int32" - } - }, - "id": "DiskConfig", - "description": "Specifies the config of disk options for a group of VM instances." - }, - "ClusterOperationMetadata": { - "type": "object", - "properties": { - "status": { - "$ref": "ClusterOperationStatus", - "description": "Output only. Current operation status." - }, - "statusHistory": { - "description": "Output only. The previous operation status.", - "type": "array", + "clusters": { + "description": "Output only. The clusters in the project.", "items": { - "$ref": "ClusterOperationStatus" - } - }, - "clusterUuid": { - "description": "Output only. Cluster UUID for the operation.", - "type": "string" - }, - "clusterName": { - "type": "string", - "description": "Output only. Name of the cluster for the operation." - }, - "operationType": { - "description": "Output only. The operation type.", - "type": "string" - }, - "description": { - "type": "string", - "description": "Output only. Short description of operation." - }, - "warnings": { - "type": "array", - "items": { - "type": "string" + "$ref": "Cluster" }, - "description": "Output only. Errors encountered during operation execution." + "type": "array" }, - "labels": { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "description": "Output only. Labels associated with the operation" - } - }, - "id": "ClusterOperationMetadata", - "description": "Metadata describing the operation." - }, - "Empty": { - "type": "object", - "properties": {}, - "id": "Empty", - "description": "A generic empty message that you can re-use to avoid defining duplicated empty messages in your APIs. A typical example is to use it as the request or the response type of an API method. For instance:\nservice Foo {\n rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty);\n}\nThe JSON representation for Empty is empty JSON object {}." - }, - "HiveJob": { - "type": "object", - "properties": { - "jarFileUris": { - "type": "array", - "items": { - "type": "string" - }, - "description": "Optional. HCFS URIs of jar files to add to the CLASSPATH of the Hive server and Hadoop MapReduce (MR) tasks. Can contain Hive SerDes and UDFs." - }, - "scriptVariables": { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "description": "Optional. Mapping of query variable names to values (equivalent to the Hive command: SET name=\"value\";)." - }, - "properties": { - "additionalProperties": { - "type": "string" - }, - "description": "Optional. A mapping of property names and values, used to configure Hive. Properties that conflict with values set by the Cloud Dataproc API may be overwritten. Can include properties set in /etc/hadoop/conf/*-site.xml, /etc/hive/conf/hive-site.xml, and classes in user code.", - "type": "object" - }, - "continueOnFailure": { - "type": "boolean", - "description": "Optional. Whether to continue executing queries if a query fails. The default value is false. Setting to true can be useful when executing independent parallel queries." - }, - "queryFileUri": { - "type": "string", - "description": "The HCFS URI of the script that contains Hive queries." - }, - "queryList": { - "$ref": "QueryList", - "description": "A list of queries." - } - }, - "id": "HiveJob", - "description": "A Cloud Dataproc job for running Apache Hive (https://hive.apache.org/) queries on YARN." - }, - "DiagnoseClusterResults": { - "description": "The location of diagnostic output.", - "type": "object", - "properties": { - "outputUri": { - "type": "string", - "description": "Output only. The Google Cloud Storage URI of the diagnostic output. The output report is a plain text file with a summary of collected diagnostics." - } - }, - "id": "DiagnoseClusterResults" - }, - "ClusterConfig": { - "description": "The cluster config.", - "type": "object", - "properties": { - "softwareConfig": { - "$ref": "SoftwareConfig", - "description": "Optional. The config settings for software inside the cluster." - }, - "masterConfig": { - "$ref": "InstanceGroupConfig", - "description": "Optional. The Google Compute Engine config settings for the master instance in a cluster." - }, - "secondaryWorkerConfig": { - "$ref": "InstanceGroupConfig", - "description": "Optional. The Google Compute Engine config settings for additional worker instances in a cluster." - }, - "initializationActions": { - "description": "Optional. Commands to execute on each node after config is completed. By default, executables are run on master and all worker nodes. You can test a node's role metadata to run an executable on a master or worker node, as shown below using curl (you can also use wget):\nROLE=$(curl -H Metadata-Flavor:Google http://metadata/computeMetadata/v1/instance/attributes/dataproc-role)\nif [[ \"${ROLE}\" == 'Master' ]]; then\n ... master specific actions ...\nelse\n ... worker specific actions ...\nfi\n", - "type": "array", - "items": { - "$ref": "NodeInitializationAction" - } - }, - "configBucket": { - "type": "string", - "description": "Optional. A Google Cloud Storage staging bucket used for sharing generated SSH keys and config. If you do not specify a staging bucket, Cloud Dataproc will determine an appropriate Cloud Storage location (US, ASIA, or EU) for your cluster's staging bucket according to the Google Compute Engine zone where your cluster is deployed, and then it will create and manage this project-level, per-location bucket for you." - }, - "workerConfig": { - "$ref": "InstanceGroupConfig", - "description": "Optional. The Google Compute Engine config settings for worker instances in a cluster." - }, - "gceClusterConfig": { - "$ref": "GceClusterConfig", - "description": "Required. The shared Google Compute Engine config settings for all instances in a cluster." - } - }, - "id": "ClusterConfig" - }, - "PySparkJob": { - "description": "A Cloud Dataproc job for running Apache PySpark (https://spark.apache.org/docs/0.9.0/python-programming-guide.html) applications on YARN.", - "type": "object", - "properties": { - "archiveUris": { - "description": "Optional. HCFS URIs of archives to be extracted in the working directory of .jar, .tar, .tar.gz, .tgz, and .zip.", - "type": "array", - "items": { - "type": "string" - } - }, - "jarFileUris": { - "type": "array", - "items": { - "type": "string" - }, - "description": "Optional. HCFS URIs of jar files to add to the CLASSPATHs of the Python driver and tasks." - }, - "loggingConfig": { - "$ref": "LoggingConfig", - "description": "Optional. The runtime log config for job execution." - }, - "properties": { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "description": "Optional. A mapping of property names to values, used to configure PySpark. Properties that conflict with values set by the Cloud Dataproc API may be overwritten. Can include properties set in /etc/spark/conf/spark-defaults.conf and classes in user code." - }, - "args": { - "type": "array", - "items": { - "type": "string" - }, - "description": "Optional. The arguments to pass to the driver. Do not include arguments, such as --conf, that can be set as job properties, since a collision may occur that causes an incorrect job submission." - }, - "fileUris": { - "description": "Optional. HCFS URIs of files to be copied to the working directory of Python drivers and distributed tasks. Useful for naively parallel tasks.", - "type": "array", - "items": { - "type": "string" - } - }, - "pythonFileUris": { - "type": "array", - "items": { - "type": "string" - }, - "description": "Optional. HCFS file URIs of Python files to pass to the PySpark framework. Supported file types: .py, .egg, and .zip." - }, - "mainPythonFileUri": { - "description": "Required. The HCFS URI of the main Python file to use as the driver. Must be a .py file.", + "nextPageToken": { + "description": "Output only. This token is included in the response if there are more results to fetch. To fetch additional results, provide this value as the page_token in a subsequent ListClustersRequest.", "type": "string" } }, - "id": "PySparkJob" + "type": "object" }, - "GceClusterConfig": { - "type": "object", + "ListJobsResponse": { + "description": "A list of jobs in a project.", + "id": "ListJobsResponse", "properties": { - "subnetworkUri": { - "type": "string", - "description": "Optional. The Google Compute Engine subnetwork to be used for machine communications. Cannot be specified with network_uri.A full URL, partial URI, or short name are valid. Examples:\nhttps://www.googleapis.com/compute/v1/projects/[project_id]/regions/us-east1/sub0\nprojects/[project_id]/regions/us-east1/sub0\nsub0" - }, - "networkUri": { - "type": "string", - "description": "Optional. The Google Compute Engine network to be used for machine communications. Cannot be specified with subnetwork_uri. If neither network_uri nor subnetwork_uri is specified, the \"default\" network of the project is used, if it exists. Cannot be a \"Custom Subnet Network\" (see Using Subnetworks for more information).A full URL, partial URI, or short name are valid. Examples:\nhttps://www.googleapis.com/compute/v1/projects/[project_id]/regions/global/default\nprojects/[project_id]/regions/global/default\ndefault" - }, - "zoneUri": { - "type": "string", - "description": "Optional. The zone where the Google Compute Engine cluster will be located. On a create request, it is required in the \"global\" region. If omitted in a non-global Cloud Dataproc region, the service will pick a zone in the corresponding Compute Engine region. On a get request, zone will always be present.A full URL, partial URI, or short name are valid. Examples:\nhttps://www.googleapis.com/compute/v1/projects/[project_id]/zones/[zone]\nprojects/[project_id]/zones/[zone]\nus-central1-f" - }, - "metadata": { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "description": "The Google Compute Engine metadata entries to add to all instances (see Project and instance metadata (https://cloud.google.com/compute/docs/storing-retrieving-metadata#project_and_instance_metadata))." - }, - "internalIpOnly": { - "description": "Optional. If true, all instances in the cluster will only have internal IP addresses. By default, clusters are not restricted to internal IP addresses, and will have ephemeral external IP addresses assigned to each instance. This internal_ip_only restriction can only be enabled for subnetwork enabled networks, and all off-cluster dependencies must be configured to be accessible without external IP addresses.", - "type": "boolean" - }, - "serviceAccountScopes": { - "description": "Optional. The URIs of service account scopes to be included in Google Compute Engine instances. The following base set of scopes is always included:\nhttps://www.googleapis.com/auth/cloud.useraccounts.readonly\nhttps://www.googleapis.com/auth/devstorage.read_write\nhttps://www.googleapis.com/auth/logging.writeIf no scopes are specified, the following defaults are also provided:\nhttps://www.googleapis.com/auth/bigquery\nhttps://www.googleapis.com/auth/bigtable.admin.table\nhttps://www.googleapis.com/auth/bigtable.data\nhttps://www.googleapis.com/auth/devstorage.full_control", - "type": "array", + "jobs": { + "description": "Output only. Jobs list.", "items": { - "type": "string" - } - }, - "tags": { - "type": "array", - "items": { - "type": "string" + "$ref": "Job" }, - "description": "The Google Compute Engine tags to add to all instances (see Tagging instances)." + "type": "array" }, - "serviceAccount": { - "description": "Optional. The service account of the instances. Defaults to the default Google Compute Engine service account. Custom service accounts need permissions equivalent to the folloing IAM roles:\nroles/logging.logWriter\nroles/storage.objectAdmin(see https://cloud.google.com/compute/docs/access/service-accounts#custom_service_accounts for more information). Example: [account_id]@[project_id].iam.gserviceaccount.com", + "nextPageToken": { + "description": "Optional. This token is included in the response if there are more results to fetch. To fetch additional results, provide this value as the page_token in a subsequent \u003ccode\u003eListJobsRequest\u003c/code\u003e.", "type": "string" } }, - "id": "GceClusterConfig", - "description": "Common config settings for resources of Google Compute Engine cluster instances, applicable to all instances in the cluster." + "type": "object" }, - "AcceleratorConfig": { - "type": "object", + "ListOperationsResponse": { + "description": "The response message for Operations.ListOperations.", + "id": "ListOperationsResponse", "properties": { - "acceleratorCount": { - "type": "integer", - "description": "The number of the accelerator cards of this type exposed to this instance.", - "format": "int32" + "nextPageToken": { + "description": "The standard List next-page token.", + "type": "string" }, - "acceleratorTypeUri": { - "type": "string", - "description": "Full URL, partial URI, or short name of the accelerator type resource to expose to this instance. See Google Compute Engine AcceleratorTypes( /compute/docs/reference/beta/acceleratorTypes)Examples * https://www.googleapis.com/compute/beta/projects/[project_id]/zones/us-east1-a/acceleratorTypes/nvidia-tesla-k80 * projects/[project_id]/zones/us-east1-a/acceleratorTypes/nvidia-tesla-k80 * nvidia-tesla-k80" + "operations": { + "description": "A list of operations that matches the specified filter in the request.", + "items": { + "$ref": "Operation" + }, + "type": "array" } }, - "id": "AcceleratorConfig", - "description": "Specifies the type and number of accelerator cards attached to the instances of an instance group (see GPUs on Compute Engine)." - }, - "ClusterMetrics": { - "description": "Contains cluster daemon metrics, such as HDFS and YARN stats.Beta Feature: This report is available for testing purposes only. It may be changed before final release.", - "type": "object", - "properties": { - "hdfsMetrics": { - "type": "object", - "additionalProperties": { - "format": "int64", - "type": "string" - }, - "description": "The HDFS metrics." - }, - "yarnMetrics": { - "additionalProperties": { - "format": "int64", - "type": "string" - }, - "description": "The YARN metrics.", - "type": "object" - } - }, - "id": "ClusterMetrics" + "type": "object" }, "LoggingConfig": { "description": "The runtime logging config of the job.", - "type": "object", + "id": "LoggingConfig", "properties": { "driverLogLevels": { "additionalProperties": { @@ -1436,198 +1531,272 @@ "type": "object" } }, - "id": "LoggingConfig" + "type": "object" }, - "Operation": { - "type": "object", + "ManagedGroupConfig": { + "description": "Specifies the resources used to actively manage an instance group.", + "id": "ManagedGroupConfig", "properties": { - "metadata": { - "type": "object", - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - }, - "description": "Service-specific metadata associated with the operation. It typically contains progress information and common metadata such as create time. Some services might not provide such metadata. Any method that returns a long-running operation should document the metadata type, if any." + "instanceGroupManagerName": { + "description": "Output only. The name of the Instance Group Manager for this group.", + "type": "string" }, - "done": { - "description": "If the value is false, it means the operation is still in progress. If true, the operation is completed, and either error or response is available.", - "type": "boolean" - }, - "response": { - "type": "object", - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - }, - "description": "The normal response of the operation in case of success. If the original method returns no data on success, such as Delete, the response is google.protobuf.Empty. If the original method is standard Get/Create/Update, the response should be the resource. For other methods, the response should have the type XxxResponse, where Xxx is the original method name. For example, if the original method name is TakeSnapshot(), the inferred response type is TakeSnapshotResponse." - }, - "name": { - "type": "string", - "description": "The server-assigned name, which is only unique within the same service that originally returns it. If you use the default HTTP mapping, the name should have the format of operations/some/unique/name." - }, - "error": { - "$ref": "Status", - "description": "The error result of the operation in case of failure or cancellation." - } - }, - "id": "Operation", - "description": "This resource represents a long-running operation that is the result of a network API call." - }, - "JobReference": { - "type": "object", - "properties": { - "projectId": { - "type": "string", - "description": "Required. The ID of the Google Cloud Platform project that the job belongs to." - }, - "jobId": { - "description": "Optional. The job ID, which must be unique within the project. The job ID is generated by the server upon job submission or provided by the user as a means to perform retries without creating duplicate jobs. The ID must contain only letters (a-z, A-Z), numbers (0-9), underscores (_), or hyphens (-). The maximum length is 100 characters.", + "instanceTemplateName": { + "description": "Output only. The name of the Instance Template used for the Managed Instance Group.", "type": "string" } }, - "id": "JobReference", - "description": "Encapsulates the full scoping used to reference a job." - }, - "SubmitJobRequest": { - "description": "A request to submit a job.", - "type": "object", - "properties": { - "job": { - "$ref": "Job", - "description": "Required. The job resource." - } - }, - "id": "SubmitJobRequest" - }, - "Status": { - "description": "The Status type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by gRPC (https://github.com/grpc). The error model is designed to be:\nSimple to use and understand for most users\nFlexible enough to meet unexpected needsOverviewThe Status message contains three pieces of data: error code, error message, and error details. The error code should be an enum value of google.rpc.Code, but it may accept additional error codes if needed. The error message should be a developer-facing English message that helps developers understand and resolve the error. If a localized user-facing error message is needed, put the localized message in the error details or localize it in the client. The optional error details may contain arbitrary information about the error. There is a predefined set of error detail types in the package google.rpc that can be used for common error conditions.Language mappingThe Status message is the logical representation of the error model, but it is not necessarily the actual wire format. When the Status message is exposed in different client libraries and different wire protocols, it can be mapped differently. For example, it will likely be mapped to some exceptions in Java, but more likely mapped to some error codes in C.Other usesThe error model and the Status message can be used in a variety of environments, either with or without APIs, to provide a consistent developer experience across different environments.Example uses of this error model include:\nPartial errors. If a service needs to return partial errors to the client, it may embed the Status in the normal response to indicate the partial errors.\nWorkflow errors. A typical workflow has multiple steps. Each step may have a Status message for error reporting.\nBatch operations. If a client uses batch request and batch response, the Status message should be used directly inside batch response, one for each error sub-response.\nAsynchronous operations. If an API call embeds asynchronous operation results in its response, the status of those operations should be represented directly using the Status message.\nLogging. If some API errors are stored in logs, the message Status could be used directly after any stripping needed for security/privacy reasons.", - "type": "object", - "properties": { - "code": { - "type": "integer", - "description": "The status code, which should be an enum value of google.rpc.Code.", - "format": "int32" - }, - "message": { - "description": "A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the google.rpc.Status.details field, or localized by the client.", - "type": "string" - }, - "details": { - "type": "array", - "items": { - "type": "object", - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - } - }, - "description": "A list of messages that carry the error details. There is a common set of message types for APIs to use." - } - }, - "id": "Status" - }, - "InstanceGroupConfig": { - "type": "object", - "properties": { - "diskConfig": { - "$ref": "DiskConfig", - "description": "Optional. Disk option config settings." - }, - "managedGroupConfig": { - "$ref": "ManagedGroupConfig", - "description": "Output only. The config for Google Compute Engine Instance Group Manager that manages this group. This is only used for preemptible instance groups." - }, - "isPreemptible": { - "type": "boolean", - "description": "Optional. Specifies that this instance group contains preemptible instances." - }, - "imageUri": { - "description": "Output only. The Google Compute Engine image resource used for cluster instances. Inferred from SoftwareConfig.image_version.", - "type": "string" - }, - "machineTypeUri": { - "description": "Optional. The Google Compute Engine machine type used for cluster instances.A full URL, partial URI, or short name are valid. Examples:\nhttps://www.googleapis.com/compute/v1/projects/[project_id]/zones/us-east1-a/machineTypes/n1-standard-2\nprojects/[project_id]/zones/us-east1-a/machineTypes/n1-standard-2\nn1-standard-2", - "type": "string" - }, - "instanceNames": { - "type": "array", - "items": { - "type": "string" - }, - "description": "Optional. The list of instance names. Cloud Dataproc derives the names from cluster_name, num_instances, and the instance group if not set by user (recommended practice is to let Cloud Dataproc derive the name)." - }, - "accelerators": { - "description": "Optional. The Google Compute Engine accelerator configuration for these instances.Beta Feature: This feature is still under development. It may be changed before final release.", - "type": "array", - "items": { - "$ref": "AcceleratorConfig" - } - }, - "numInstances": { - "type": "integer", - "description": "Optional. The number of VM instances in the instance group. For master instance groups, must be set to 1.", - "format": "int32" - } - }, - "id": "InstanceGroupConfig", - "description": "Optional. The config settings for Google Compute Engine resources in an instance group, such as a master or worker group." - }, - "JobScheduling": { - "description": "Job scheduling options.", - "type": "object", - "properties": { - "maxFailuresPerHour": { - "description": "Optional. Maximum number of times per hour a driver may be restarted as a result of driver terminating with non-zero code before job is reported failed.A job may be reported as thrashing if driver exits with non-zero code 4 times within 10 minute window.Maximum value is 10.", - "format": "int32", - "type": "integer" - } - }, - "id": "JobScheduling" + "type": "object" }, "NodeInitializationAction": { - "type": "object", + "description": "Specifies an executable to run on a fully configured node and a timeout period for executable completion.", + "id": "NodeInitializationAction", "properties": { + "executableFile": { + "description": "Required. Cloud Storage URI of executable file.", + "type": "string" + }, "executionTimeout": { "description": "Optional. Amount of time executable has to complete. Default is 10 minutes. Cluster creation fails with an explanatory error message (the name of the executable that caused the error and the exceeded timeout period) if the executable is not completed at end of the timeout period.", "format": "google-duration", "type": "string" - }, - "executableFile": { - "description": "Required. Google Cloud Storage URI of executable file.", - "type": "string" } }, - "id": "NodeInitializationAction", - "description": "Specifies an executable to run on a fully configured node and a timeout period for executable completion." + "type": "object" }, - "ListJobsResponse": { - "type": "object", + "Operation": { + "description": "This resource represents a long-running operation that is the result of a network API call.", + "id": "Operation", "properties": { - "nextPageToken": { - "type": "string", - "description": "Optional. This token is included in the response if there are more results to fetch. To fetch additional results, provide this value as the page_token in a subsequent \u003ccode\u003eListJobsRequest\u003c/code\u003e." + "done": { + "description": "If the value is false, it means the operation is still in progress. If true, the operation is completed, and either error or response is available.", + "type": "boolean" }, - "jobs": { - "type": "array", - "items": { - "$ref": "Job" + "error": { + "$ref": "Status", + "description": "The error result of the operation in case of failure or cancellation." + }, + "metadata": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" }, - "description": "Output only. Jobs list." + "description": "Service-specific metadata associated with the operation. It typically contains progress information and common metadata such as create time. Some services might not provide such metadata. Any method that returns a long-running operation should document the metadata type, if any.", + "type": "object" + }, + "name": { + "description": "The server-assigned name, which is only unique within the same service that originally returns it. If you use the default HTTP mapping, the name should have the format of operations/some/unique/name.", + "type": "string" + }, + "response": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "description": "The normal response of the operation in case of success. If the original method returns no data on success, such as Delete, the response is google.protobuf.Empty. If the original method is standard Get/Create/Update, the response should be the resource. For other methods, the response should have the type XxxResponse, where Xxx is the original method name. For example, if the original method name is TakeSnapshot(), the inferred response type is TakeSnapshotResponse.", + "type": "object" } }, - "id": "ListJobsResponse", - "description": "A list of jobs in a project." + "type": "object" }, - "CancelJobRequest": { - "description": "A request to cancel a job.", - "type": "object", - "properties": {}, - "id": "CancelJobRequest" + "PigJob": { + "description": "A Cloud Dataproc job for running Apache Pig (https://pig.apache.org/) queries on YARN.", + "id": "PigJob", + "properties": { + "continueOnFailure": { + "description": "Optional. Whether to continue executing queries if a query fails. The default value is false. Setting to true can be useful when executing independent parallel queries.", + "type": "boolean" + }, + "jarFileUris": { + "description": "Optional. HCFS URIs of jar files to add to the CLASSPATH of the Pig Client and Hadoop MapReduce (MR) tasks. Can contain Pig UDFs.", + "items": { + "type": "string" + }, + "type": "array" + }, + "loggingConfig": { + "$ref": "LoggingConfig", + "description": "Optional. The runtime log config for job execution." + }, + "properties": { + "additionalProperties": { + "type": "string" + }, + "description": "Optional. A mapping of property names to values, used to configure Pig. Properties that conflict with values set by the Cloud Dataproc API may be overwritten. Can include properties set in /etc/hadoop/conf/*-site.xml, /etc/pig/conf/pig.properties, and classes in user code.", + "type": "object" + }, + "queryFileUri": { + "description": "The HCFS URI of the script that contains the Pig queries.", + "type": "string" + }, + "queryList": { + "$ref": "QueryList", + "description": "A list of queries." + }, + "scriptVariables": { + "additionalProperties": { + "type": "string" + }, + "description": "Optional. Mapping of query variable names to values (equivalent to the Pig command: name=[value]).", + "type": "object" + } + }, + "type": "object" + }, + "PySparkJob": { + "description": "A Cloud Dataproc job for running Apache PySpark (https://spark.apache.org/docs/0.9.0/python-programming-guide.html) applications on YARN.", + "id": "PySparkJob", + "properties": { + "archiveUris": { + "description": "Optional. HCFS URIs of archives to be extracted in the working directory of .jar, .tar, .tar.gz, .tgz, and .zip.", + "items": { + "type": "string" + }, + "type": "array" + }, + "args": { + "description": "Optional. The arguments to pass to the driver. Do not include arguments, such as --conf, that can be set as job properties, since a collision may occur that causes an incorrect job submission.", + "items": { + "type": "string" + }, + "type": "array" + }, + "fileUris": { + "description": "Optional. HCFS URIs of files to be copied to the working directory of Python drivers and distributed tasks. Useful for naively parallel tasks.", + "items": { + "type": "string" + }, + "type": "array" + }, + "jarFileUris": { + "description": "Optional. HCFS URIs of jar files to add to the CLASSPATHs of the Python driver and tasks.", + "items": { + "type": "string" + }, + "type": "array" + }, + "loggingConfig": { + "$ref": "LoggingConfig", + "description": "Optional. The runtime log config for job execution." + }, + "mainPythonFileUri": { + "description": "Required. The HCFS URI of the main Python file to use as the driver. Must be a .py file.", + "type": "string" + }, + "properties": { + "additionalProperties": { + "type": "string" + }, + "description": "Optional. A mapping of property names to values, used to configure PySpark. Properties that conflict with values set by the Cloud Dataproc API may be overwritten. Can include properties set in /etc/spark/conf/spark-defaults.conf and classes in user code.", + "type": "object" + }, + "pythonFileUris": { + "description": "Optional. HCFS file URIs of Python files to pass to the PySpark framework. Supported file types: .py, .egg, and .zip.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "QueryList": { + "description": "A list of queries to run on a cluster.", + "id": "QueryList", + "properties": { + "queries": { + "description": "Required. The queries to execute. You do not need to terminate a query with a semicolon. Multiple queries can be specified in one string by separating each with a semicolon. Here is an example of an Cloud Dataproc API snippet that uses a QueryList to specify a HiveJob:\n\"hiveJob\": {\n \"queryList\": {\n \"queries\": [\n \"query1\",\n \"query2\",\n \"query3;query4\",\n ]\n }\n}\n", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "SoftwareConfig": { + "description": "Specifies the selection and config of software inside the cluster.", + "id": "SoftwareConfig", + "properties": { + "imageVersion": { + "description": "Optional. The version of software inside the cluster. It must match the regular expression [0-9]+\\.[0-9]+. If unspecified, it defaults to the latest version (see Cloud Dataproc Versioning).", + "type": "string" + }, + "properties": { + "additionalProperties": { + "type": "string" + }, + "description": "Optional. The properties to set on daemon config files.Property keys are specified in prefix:property format, such as core:fs.defaultFS. The following are supported prefixes and their mappings:\ncapacity-scheduler: capacity-scheduler.xml\ncore: core-site.xml\ndistcp: distcp-default.xml\nhdfs: hdfs-site.xml\nhive: hive-site.xml\nmapred: mapred-site.xml\npig: pig.properties\nspark: spark-defaults.conf\nyarn: yarn-site.xmlFor more information, see Cluster properties.", + "type": "object" + } + }, + "type": "object" + }, + "SparkJob": { + "description": "A Cloud Dataproc job for running Apache Spark (http://spark.apache.org/) applications on YARN.", + "id": "SparkJob", + "properties": { + "archiveUris": { + "description": "Optional. HCFS URIs of archives to be extracted in the working directory of Spark drivers and tasks. Supported file types: .jar, .tar, .tar.gz, .tgz, and .zip.", + "items": { + "type": "string" + }, + "type": "array" + }, + "args": { + "description": "Optional. The arguments to pass to the driver. Do not include arguments, such as --conf, that can be set as job properties, since a collision may occur that causes an incorrect job submission.", + "items": { + "type": "string" + }, + "type": "array" + }, + "fileUris": { + "description": "Optional. HCFS URIs of files to be copied to the working directory of Spark drivers and distributed tasks. Useful for naively parallel tasks.", + "items": { + "type": "string" + }, + "type": "array" + }, + "jarFileUris": { + "description": "Optional. HCFS URIs of jar files to add to the CLASSPATHs of the Spark driver and tasks.", + "items": { + "type": "string" + }, + "type": "array" + }, + "loggingConfig": { + "$ref": "LoggingConfig", + "description": "Optional. The runtime log config for job execution." + }, + "mainClass": { + "description": "The name of the driver's main class. The jar file that contains the class must be in the default CLASSPATH or specified in jar_file_uris.", + "type": "string" + }, + "mainJarFileUri": { + "description": "The HCFS URI of the jar file that contains the main class.", + "type": "string" + }, + "properties": { + "additionalProperties": { + "type": "string" + }, + "description": "Optional. A mapping of property names to values, used to configure Spark. Properties that conflict with values set by the Cloud Dataproc API may be overwritten. Can include properties set in /etc/spark/conf/spark-defaults.conf and classes in user code.", + "type": "object" + } + }, + "type": "object" }, "SparkSqlJob": { "description": "A Cloud Dataproc job for running Apache Spark SQL (http://spark.apache.org/sql/) queries.", - "type": "object", + "id": "SparkSqlJob", "properties": { + "jarFileUris": { + "description": "Optional. HCFS URIs of jar files to be added to the Spark CLASSPATH.", + "items": { + "type": "string" + }, + "type": "array" + }, "loggingConfig": { "$ref": "LoggingConfig", "description": "Optional. The runtime log config for job execution." @@ -1639,259 +1808,114 @@ "description": "Optional. A mapping of property names to values, used to configure Spark SQL's SparkConf. Properties that conflict with values set by the Cloud Dataproc API may be overwritten.", "type": "object" }, + "queryFileUri": { + "description": "The HCFS URI of the script that contains SQL queries.", + "type": "string" + }, "queryList": { "$ref": "QueryList", "description": "A list of queries." }, - "queryFileUri": { - "type": "string", - "description": "The HCFS URI of the script that contains SQL queries." - }, "scriptVariables": { "additionalProperties": { "type": "string" }, "description": "Optional. Mapping of query variable names to values (equivalent to the Spark SQL command: SET name=\"value\";).", "type": "object" + } + }, + "type": "object" + }, + "Status": { + "description": "The Status type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by gRPC (https://github.com/grpc). The error model is designed to be:\nSimple to use and understand for most users\nFlexible enough to meet unexpected needsOverviewThe Status message contains three pieces of data: error code, error message, and error details. The error code should be an enum value of google.rpc.Code, but it may accept additional error codes if needed. The error message should be a developer-facing English message that helps developers understand and resolve the error. If a localized user-facing error message is needed, put the localized message in the error details or localize it in the client. The optional error details may contain arbitrary information about the error. There is a predefined set of error detail types in the package google.rpc that can be used for common error conditions.Language mappingThe Status message is the logical representation of the error model, but it is not necessarily the actual wire format. When the Status message is exposed in different client libraries and different wire protocols, it can be mapped differently. For example, it will likely be mapped to some exceptions in Java, but more likely mapped to some error codes in C.Other usesThe error model and the Status message can be used in a variety of environments, either with or without APIs, to provide a consistent developer experience across different environments.Example uses of this error model include:\nPartial errors. If a service needs to return partial errors to the client, it may embed the Status in the normal response to indicate the partial errors.\nWorkflow errors. A typical workflow has multiple steps. Each step may have a Status message for error reporting.\nBatch operations. If a client uses batch request and batch response, the Status message should be used directly inside batch response, one for each error sub-response.\nAsynchronous operations. If an API call embeds asynchronous operation results in its response, the status of those operations should be represented directly using the Status message.\nLogging. If some API errors are stored in logs, the message Status could be used directly after any stripping needed for security/privacy reasons.", + "id": "Status", + "properties": { + "code": { + "description": "The status code, which should be an enum value of google.rpc.Code.", + "format": "int32", + "type": "integer" }, - "jarFileUris": { - "type": "array", + "details": { + "description": "A list of messages that carry the error details. There is a common set of message types for APIs to use.", "items": { - "type": "string" + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "type": "object" }, - "description": "Optional. HCFS URIs of jar files to be added to the Spark CLASSPATH." - } - }, - "id": "SparkSqlJob" - }, - "Cluster": { - "description": "Describes the identifying information, config, and status of a cluster of Google Compute Engine instances.", - "type": "object", - "properties": { - "projectId": { - "description": "Required. The Google Cloud Platform project ID that the cluster belongs to.", - "type": "string" + "type": "array" }, - "labels": { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "description": "Optional. The labels to associate with this cluster. Label keys must contain 1 to 63 characters, and must conform to RFC 1035 (https://www.ietf.org/rfc/rfc1035.txt). Label values may be empty, but, if present, must contain 1 to 63 characters, and must conform to RFC 1035 (https://www.ietf.org/rfc/rfc1035.txt). No more than 32 labels can be associated with a cluster." - }, - "metrics": { - "$ref": "ClusterMetrics", - "description": "Contains cluster daemon metrics such as HDFS and YARN stats.Beta Feature: This report is available for testing purposes only. It may be changed before final release." - }, - "status": { - "$ref": "ClusterStatus", - "description": "Output only. Cluster status." - }, - "config": { - "$ref": "ClusterConfig", - "description": "Required. The cluster config. Note that Cloud Dataproc may set default values, and values may change when clusters are updated." - }, - "statusHistory": { - "description": "Output only. The previous cluster status.", - "type": "array", - "items": { - "$ref": "ClusterStatus" - } - }, - "clusterName": { - "description": "Required. The cluster name. Cluster names within a project must be unique. Names of deleted clusters can be reused.", - "type": "string" - }, - "clusterUuid": { - "type": "string", - "description": "Output only. A cluster UUID (Unique Universal Identifier). Cloud Dataproc generates this value when it creates the cluster." - } - }, - "id": "Cluster" - }, - "ListOperationsResponse": { - "description": "The response message for Operations.ListOperations.", - "type": "object", - "properties": { - "nextPageToken": { - "type": "string", - "description": "The standard List next-page token." - }, - "operations": { - "description": "A list of operations that matches the specified filter in the request.", - "type": "array", - "items": { - "$ref": "Operation" - } - } - }, - "id": "ListOperationsResponse" - }, - "SoftwareConfig": { - "type": "object", - "properties": { - "imageVersion": { - "type": "string", - "description": "Optional. The version of software inside the cluster. It must match the regular expression [0-9]+\\.[0-9]+. If unspecified, it defaults to the latest version (see Cloud Dataproc Versioning)." - }, - "properties": { - "additionalProperties": { - "type": "string" - }, - "description": "Optional. The properties to set on daemon config files.Property keys are specified in prefix:property format, such as core:fs.defaultFS. The following are supported prefixes and their mappings:\ncapacity-scheduler: capacity-scheduler.xml\ncore: core-site.xml\ndistcp: distcp-default.xml\nhdfs: hdfs-site.xml\nhive: hive-site.xml\nmapred: mapred-site.xml\npig: pig.properties\nspark: spark-defaults.conf\nyarn: yarn-site.xmlFor more information, see Cluster properties.", - "type": "object" - } - }, - "id": "SoftwareConfig", - "description": "Specifies the selection and config of software inside the cluster." - }, - "JobPlacement": { - "description": "Cloud Dataproc job config.", - "type": "object", - "properties": { - "clusterName": { - "type": "string", - "description": "Required. The name of the cluster where the job will be submitted." - }, - "clusterUuid": { - "description": "Output only. A cluster UUID generated by the Cloud Dataproc service when the job is submitted.", + "message": { + "description": "A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the google.rpc.Status.details field, or localized by the client.", "type": "string" } }, - "id": "JobPlacement" + "type": "object" }, - "PigJob": { - "description": "A Cloud Dataproc job for running Apache Pig (https://pig.apache.org/) queries on YARN.", - "type": "object", + "SubmitJobRequest": { + "description": "A request to submit a job.", + "id": "SubmitJobRequest", "properties": { - "continueOnFailure": { - "description": "Optional. Whether to continue executing queries if a query fails. The default value is false. Setting to true can be useful when executing independent parallel queries.", - "type": "boolean" + "job": { + "$ref": "Job", + "description": "Required. The job resource." }, - "queryList": { - "$ref": "QueryList", - "description": "A list of queries." - }, - "queryFileUri": { - "type": "string", - "description": "The HCFS URI of the script that contains the Pig queries." - }, - "jarFileUris": { - "description": "Optional. HCFS URIs of jar files to add to the CLASSPATH of the Pig Client and Hadoop MapReduce (MR) tasks. Can contain Pig UDFs.", - "type": "array", - "items": { - "type": "string" - } - }, - "scriptVariables": { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "description": "Optional. Mapping of query variable names to values (equivalent to the Pig command: name=[value])." - }, - "loggingConfig": { - "$ref": "LoggingConfig", - "description": "Optional. The runtime log config for job execution." - }, - "properties": { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "description": "Optional. A mapping of property names to values, used to configure Pig. Properties that conflict with values set by the Cloud Dataproc API may be overwritten. Can include properties set in /etc/hadoop/conf/*-site.xml, /etc/pig/conf/pig.properties, and classes in user code." + "requestId": { + "description": "Optional. A unique id used to identify the request. If the server receives two SubmitJobRequest requests with the same id, then the second request will be ignored and the first Job created and stored in the backend is returned.It is recommended to always set this value to a UUID (https://en.wikipedia.org/wiki/Universally_unique_identifier).The id must contain only letters (a-z, A-Z), numbers (0-9), underscores (_), and hyphens (-). The maximum length is 40 characters.", + "type": "string" } }, - "id": "PigJob" + "type": "object" }, - "ClusterStatus": { - "type": "object", + "YarnApplication": { + "description": "A YARN application created by a job. Application information is a subset of \u003ccode\u003eorg.apache.hadoop.yarn.proto.YarnProtos.ApplicationReportProto\u003c/code\u003e.Beta Feature: This report is available for testing purposes only. It may be changed before final release.", + "id": "YarnApplication", "properties": { - "detail": { - "description": "Output only. Optional details of cluster's state.", + "name": { + "description": "Required. The application name.", "type": "string" }, + "progress": { + "description": "Required. The numerical progress of the application, from 1 to 100.", + "format": "float", + "type": "number" + }, "state": { + "description": "Required. The application state.", "enum": [ - "UNKNOWN", - "CREATING", + "STATE_UNSPECIFIED", + "NEW", + "NEW_SAVING", + "SUBMITTED", + "ACCEPTED", "RUNNING", - "ERROR", - "DELETING", - "UPDATING" + "FINISHED", + "FAILED", + "KILLED" ], - "description": "Output only. The cluster's state.", - "type": "string", "enumDescriptions": [ - "The cluster state is unknown.", - "The cluster is being created and set up. It is not ready for use.", - "The cluster is currently running and healthy. It is ready for use.", - "The cluster encountered an error. It is not ready for use.", - "The cluster is being deleted. It cannot be used.", - "The cluster is being updated. It continues to accept and process jobs." - ] - }, - "stateStartTime": { - "description": "Output only. Time when this state was entered.", - "format": "google-datetime", + "Status is unspecified.", + "Status is NEW.", + "Status is NEW_SAVING.", + "Status is SUBMITTED.", + "Status is ACCEPTED.", + "Status is RUNNING.", + "Status is FINISHED.", + "Status is FAILED.", + "Status is KILLED." + ], "type": "string" }, - "substate": { - "enum": [ - "UNSPECIFIED", - "UNHEALTHY", - "STALE_STATUS" - ], - "description": "Output only. Additional state information that includes status reported by the agent.", - "type": "string", - "enumDescriptions": [ - "The cluster substate is unknown.", - "The cluster is known to be in an unhealthy state (for example, critical daemons are not running or HDFS capacity is exhausted).Applies to RUNNING state.", - "The agent-reported status is out of date (may occur if Cloud Dataproc loses communication with Agent).Applies to RUNNING state." - ] + "trackingUrl": { + "description": "Optional. The HTTP URL of the ApplicationMaster, HistoryServer, or TimelineServer that provides application-specific information. The URL uses the internal hostname, and requires a proxy server for resolution and, possibly, access.", + "type": "string" } }, - "id": "ClusterStatus", - "description": "The status of a cluster and its instances." - }, - "ListClustersResponse": { - "description": "The list of all clusters in a project.", - "type": "object", - "properties": { - "clusters": { - "description": "Output only. The clusters in the project.", - "type": "array", - "items": { - "$ref": "Cluster" - } - }, - "nextPageToken": { - "type": "string", - "description": "Output only. This token is included in the response if there are more results to fetch. To fetch additional results, provide this value as the page_token in a subsequent ListClustersRequest." - } - }, - "id": "ListClustersResponse" + "type": "object" } }, - "icons": { - "x32": "http://www.google.com/images/icons/product/search-32.gif", - "x16": "http://www.google.com/images/icons/product/search-16.gif" - }, - "protocol": "rest", - "canonicalName": "Dataproc", - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/cloud-platform": { - "description": "View and manage your data across Google Cloud Platform services" - } - } - } - }, - "rootUrl": "https://dataproc.googleapis.com/", - "ownerDomain": "google.com", - "name": "dataproc", - "batchPath": "batch", - "fullyEncodeReservedExpansion": true, - "title": "Google Cloud Dataproc API" -} + "servicePath": "", + "title": "Google Cloud Dataproc API", + "version": "v1" +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/dataproc/v1/dataproc-gen.go b/vendor/google.golang.org/api/dataproc/v1/dataproc-gen.go index c48725743..da0840d99 100644 --- a/vendor/google.golang.org/api/dataproc/v1/dataproc-gen.go +++ b/vendor/google.golang.org/api/dataproc/v1/dataproc-gen.go @@ -133,18 +133,21 @@ type ProjectsRegionsOperationsService struct { } // AcceleratorConfig: Specifies the type and number of accelerator cards -// attached to the instances of an instance group (see GPUs on Compute -// Engine). +// attached to the instances of an instance. See GPUs on Compute Engine. type AcceleratorConfig struct { // AcceleratorCount: The number of the accelerator cards of this type // exposed to this instance. AcceleratorCount int64 `json:"acceleratorCount,omitempty"` // AcceleratorTypeUri: Full URL, partial URI, or short name of the - // accelerator type resource to expose to this instance. See Google - // Compute Engine AcceleratorTypes( - // /compute/docs/reference/beta/acceleratorTypes)Examples * - // https://www.googleapis.com/compute/beta/projects/[project_id]/zones/us-east1-a/acceleratorTypes/nvidia-tesla-k80 * projects/[project_id]/zones/us-east1-a/acceleratorTypes/nvidia-tesla-k80 * + // accelerator type resource to expose to this instance. See Compute + // Engine + // AcceleratorTypes.Examples: + // https://www.googleapis.com/compute/beta/pro + // jects/[project_id]/zones/us-east1-a/acceleratorTypes/nvidia-tesla-k80 + // + // projects/[project_id]/zones/us-east1-a/acceleratorTypes/nvidia-tesla-k + // 80 // nvidia-tesla-k80 AcceleratorTypeUri string `json:"acceleratorTypeUri,omitempty"` @@ -177,7 +180,7 @@ type CancelJobRequest struct { } // Cluster: Describes the identifying information, config, and status of -// a cluster of Google Compute Engine instances. +// a cluster of Compute Engine instances. type Cluster struct { // ClusterName: Required. The cluster name. Cluster names within a // project must be unique. Names of deleted clusters can be reused. @@ -244,8 +247,8 @@ func (s *Cluster) MarshalJSON() ([]byte, error) { // ClusterConfig: The cluster config. type ClusterConfig struct { - // ConfigBucket: Optional. A Google Cloud Storage staging bucket used - // for sharing generated SSH keys and config. If you do not specify a + // ConfigBucket: Optional. A Cloud Storage staging bucket used for + // sharing generated SSH keys and config. If you do not specify a // staging bucket, Cloud Dataproc will determine an appropriate Cloud // Storage location (US, ASIA, or EU) for your cluster's staging bucket // according to the Google Compute Engine zone where your cluster is @@ -253,8 +256,8 @@ type ClusterConfig struct { // per-location bucket for you. ConfigBucket string `json:"configBucket,omitempty"` - // GceClusterConfig: Required. The shared Google Compute Engine config - // settings for all instances in a cluster. + // GceClusterConfig: Required. The shared Compute Engine config settings + // for all instances in a cluster. GceClusterConfig *GceClusterConfig `json:"gceClusterConfig,omitempty"` // InitializationActions: Optional. Commands to execute on each node @@ -273,20 +276,20 @@ type ClusterConfig struct { // InitializationActions []*NodeInitializationAction `json:"initializationActions,omitempty"` - // MasterConfig: Optional. The Google Compute Engine config settings for - // the master instance in a cluster. + // MasterConfig: Optional. The Compute Engine config settings for the + // master instance in a cluster. MasterConfig *InstanceGroupConfig `json:"masterConfig,omitempty"` - // SecondaryWorkerConfig: Optional. The Google Compute Engine config - // settings for additional worker instances in a cluster. + // SecondaryWorkerConfig: Optional. The Compute Engine config settings + // for additional worker instances in a cluster. SecondaryWorkerConfig *InstanceGroupConfig `json:"secondaryWorkerConfig,omitempty"` // SoftwareConfig: Optional. The config settings for software inside the // cluster. SoftwareConfig *SoftwareConfig `json:"softwareConfig,omitempty"` - // WorkerConfig: Optional. The Google Compute Engine config settings for - // worker instances in a cluster. + // WorkerConfig: Optional. The Compute Engine config settings for worker + // instances in a cluster. WorkerConfig *InstanceGroupConfig `json:"workerConfig,omitempty"` // ForceSendFields is a list of field names (e.g. "ConfigBucket") to @@ -588,9 +591,8 @@ type Empty struct { googleapi.ServerResponse `json:"-"` } -// GceClusterConfig: Common config settings for resources of Google -// Compute Engine cluster instances, applicable to all instances in the -// cluster. +// GceClusterConfig: Common config settings for resources of Compute +// Engine cluster instances, applicable to all instances in the cluster. type GceClusterConfig struct { // InternalIpOnly: Optional. If true, all instances in the cluster will // only have internal IP addresses. By default, clusters are not @@ -601,15 +603,15 @@ type GceClusterConfig struct { // without external IP addresses. InternalIpOnly bool `json:"internalIpOnly,omitempty"` - // Metadata: The Google Compute Engine metadata entries to add to all - // instances (see Project and instance metadata + // Metadata: The Compute Engine metadata entries to add to all instances + // (see Project and instance metadata // (https://cloud.google.com/compute/docs/storing-retrieving-metadata#pro // ject_and_instance_metadata)). Metadata map[string]string `json:"metadata,omitempty"` - // NetworkUri: Optional. The Google Compute Engine network to be used - // for machine communications. Cannot be specified with subnetwork_uri. - // If neither network_uri nor subnetwork_uri is specified, the "default" + // NetworkUri: Optional. The Compute Engine network to be used for + // machine communications. Cannot be specified with subnetwork_uri. If + // neither network_uri nor subnetwork_uri is specified, the "default" // network of the project is used, if it exists. Cannot be a "Custom // Subnet Network" (see Using Subnetworks for more information).A full // URL, partial URI, or short name are valid. @@ -622,7 +624,7 @@ type GceClusterConfig struct { NetworkUri string `json:"networkUri,omitempty"` // ServiceAccount: Optional. The service account of the instances. - // Defaults to the default Google Compute Engine service account. Custom + // Defaults to the default Compute Engine service account. Custom // service accounts need permissions equivalent to the folloing IAM // roles: // roles/logging.logWriter @@ -650,9 +652,9 @@ type GceClusterConfig struct { // https://www.googleapis.com/auth/devstorage.full_control ServiceAccountScopes []string `json:"serviceAccountScopes,omitempty"` - // SubnetworkUri: Optional. The Google Compute Engine subnetwork to be - // used for machine communications. Cannot be specified with - // network_uri.A full URL, partial URI, or short name are valid. + // SubnetworkUri: Optional. The Compute Engine subnetwork to be used for + // machine communications. Cannot be specified with network_uri.A full + // URL, partial URI, or short name are valid. // Examples: // https://www.googleapis.com/compute/v1/projects/[project_id]/ // regions/us-east1/sub0 @@ -660,14 +662,14 @@ type GceClusterConfig struct { // sub0 SubnetworkUri string `json:"subnetworkUri,omitempty"` - // Tags: The Google Compute Engine tags to add to all instances (see - // Tagging instances). + // Tags: The Compute Engine tags to add to all instances (see Tagging + // instances). Tags []string `json:"tags,omitempty"` - // ZoneUri: Optional. The zone where the Google Compute Engine cluster - // will be located. On a create request, it is required in the "global" - // region. If omitted in a non-global Cloud Dataproc region, the service - // will pick a zone in the corresponding Compute Engine region. On a get + // ZoneUri: Optional. The zone where the Compute Engine cluster will be + // located. On a create request, it is required in the "global" region. + // If omitted in a non-global Cloud Dataproc region, the service will + // pick a zone in the corresponding Compute Engine region. On a get // request, zone will always be present.A full URL, partial URI, or // short name are valid. // Examples: @@ -826,20 +828,19 @@ func (s *HiveJob) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -// InstanceGroupConfig: Optional. The config settings for Google Compute -// Engine resources in an instance group, such as a master or worker -// group. +// InstanceGroupConfig: Optional. The config settings for Compute Engine +// resources in an instance group, such as a master or worker group. type InstanceGroupConfig struct { - // Accelerators: Optional. The Google Compute Engine accelerator - // configuration for these instances.Beta Feature: This feature is still - // under development. It may be changed before final release. + // Accelerators: Optional. The Compute Engine accelerator configuration + // for these instances.Beta Feature: This feature is still under + // development. It may be changed before final release. Accelerators []*AcceleratorConfig `json:"accelerators,omitempty"` // DiskConfig: Optional. Disk option config settings. DiskConfig *DiskConfig `json:"diskConfig,omitempty"` - // ImageUri: Output only. The Google Compute Engine image resource used - // for cluster instances. Inferred from SoftwareConfig.image_version. + // ImageUri: Output only. The Compute Engine image resource used for + // cluster instances. Inferred from SoftwareConfig.image_version. ImageUri string `json:"imageUri,omitempty"` // InstanceNames: Optional. The list of instance names. Cloud Dataproc @@ -852,9 +853,8 @@ type InstanceGroupConfig struct { // preemptible instances. IsPreemptible bool `json:"isPreemptible,omitempty"` - // MachineTypeUri: Optional. The Google Compute Engine machine type used - // for cluster instances.A full URL, partial URI, or short name are - // valid. + // MachineTypeUri: Optional. The Compute Engine machine type used for + // cluster instances.A full URL, partial URI, or short name are valid. // Examples: // https://www.googleapis.com/compute/v1/projects/[project_id]/ // zones/us-east1-a/machineTypes/n1-standard-2 @@ -863,7 +863,7 @@ type InstanceGroupConfig struct { // n1-standard-2 MachineTypeUri string `json:"machineTypeUri,omitempty"` - // ManagedGroupConfig: Output only. The config for Google Compute Engine + // ManagedGroupConfig: Output only. The config for Compute Engine // Instance Group Manager that manages this group. This is only used for // preemptible instance groups. ManagedGroupConfig *ManagedGroupConfig `json:"managedGroupConfig,omitempty"` @@ -1343,8 +1343,7 @@ func (s *ManagedGroupConfig) MarshalJSON() ([]byte, error) { // NodeInitializationAction: Specifies an executable to run on a fully // configured node and a timeout period for executable completion. type NodeInitializationAction struct { - // ExecutableFile: Required. Google Cloud Storage URI of executable - // file. + // ExecutableFile: Required. Cloud Storage URI of executable file. ExecutableFile string `json:"executableFile,omitempty"` // ExecutionTimeout: Optional. Amount of time executable has to @@ -1839,6 +1838,16 @@ type SubmitJobRequest struct { // Job: Required. The job resource. Job *Job `json:"job,omitempty"` + // RequestId: Optional. A unique id used to identify the request. If the + // server receives two SubmitJobRequest requests with the same id, then + // the second request will be ignored and the first Job created and + // stored in the backend is returned.It is recommended to always set + // this value to a UUID + // (https://en.wikipedia.org/wiki/Universally_unique_identifier).The id + // must contain only letters (a-z, A-Z), numbers (0-9), underscores (_), + // and hyphens (-). The maximum length is 40 characters. + RequestId string `json:"requestId,omitempty"` + // ForceSendFields is a list of field names (e.g. "Job") to // unconditionally include in API requests. By default, fields with // empty values are omitted from API requests. However, any non-pointer, @@ -1953,6 +1962,20 @@ func (r *ProjectsRegionsClustersService) Create(projectId string, region string, return c } +// RequestId sets the optional parameter "requestId": A unique id used +// to identify the request. If the server receives two +// CreateClusterRequest requests with the same id, then the second +// request will be ignored and the first google.longrunning.Operation +// created and stored in the backend is returned.It is recommended to +// always set this value to a UUID +// (https://en.wikipedia.org/wiki/Universally_unique_identifier).The id +// must contain only letters (a-z, A-Z), numbers (0-9), underscores (_), +// and hyphens (-). The maximum length is 40 characters. +func (c *ProjectsRegionsClustersCreateCall) RequestId(requestId string) *ProjectsRegionsClustersCreateCall { + c.urlParams_.Set("requestId", requestId) + return c +} + // Fields allows partial responses to be retrieved. See // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse // for more information. @@ -2060,6 +2083,11 @@ func (c *ProjectsRegionsClustersCreateCall) Do(opts ...googleapi.CallOption) (*O // "location": "path", // "required": true, // "type": "string" + // }, + // "requestId": { + // "description": "Optional. A unique id used to identify the request. If the server receives two CreateClusterRequest requests with the same id, then the second request will be ignored and the first google.longrunning.Operation created and stored in the backend is returned.It is recommended to always set this value to a UUID (https://en.wikipedia.org/wiki/Universally_unique_identifier).The id must contain only letters (a-z, A-Z), numbers (0-9), underscores (_), and hyphens (-). The maximum length is 40 characters.", + // "location": "query", + // "type": "string" // } // }, // "path": "v1/projects/{projectId}/regions/{region}/clusters", @@ -2097,6 +2125,28 @@ func (r *ProjectsRegionsClustersService) Delete(projectId string, region string, return c } +// ClusterUuid sets the optional parameter "clusterUuid": Specifying the +// cluster_uuid means the RPC should fail (with error NOT_FOUND) if +// cluster with specified UUID does not exist. +func (c *ProjectsRegionsClustersDeleteCall) ClusterUuid(clusterUuid string) *ProjectsRegionsClustersDeleteCall { + c.urlParams_.Set("clusterUuid", clusterUuid) + return c +} + +// RequestId sets the optional parameter "requestId": A unique id used +// to identify the request. If the server receives two +// DeleteClusterRequest requests with the same id, then the second +// request will be ignored and the first google.longrunning.Operation +// created and stored in the backend is returned.It is recommended to +// always set this value to a UUID +// (https://en.wikipedia.org/wiki/Universally_unique_identifier).The id +// must contain only letters (a-z, A-Z), numbers (0-9), underscores (_), +// and hyphens (-). The maximum length is 40 characters. +func (c *ProjectsRegionsClustersDeleteCall) RequestId(requestId string) *ProjectsRegionsClustersDeleteCall { + c.urlParams_.Set("requestId", requestId) + return c +} + // Fields allows partial responses to be retrieved. See // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse // for more information. @@ -2196,6 +2246,11 @@ func (c *ProjectsRegionsClustersDeleteCall) Do(opts ...googleapi.CallOption) (*O // "required": true, // "type": "string" // }, + // "clusterUuid": { + // "description": "Optional. Specifying the cluster_uuid means the RPC should fail (with error NOT_FOUND) if cluster with specified UUID does not exist.", + // "location": "query", + // "type": "string" + // }, // "projectId": { // "description": "Required. The ID of the Google Cloud Platform project that the cluster belongs to.", // "location": "path", @@ -2207,6 +2262,11 @@ func (c *ProjectsRegionsClustersDeleteCall) Do(opts ...googleapi.CallOption) (*O // "location": "path", // "required": true, // "type": "string" + // }, + // "requestId": { + // "description": "Optional. A unique id used to identify the request. If the server receives two DeleteClusterRequest requests with the same id, then the second request will be ignored and the first google.longrunning.Operation created and stored in the backend is returned.It is recommended to always set this value to a UUID (https://en.wikipedia.org/wiki/Universally_unique_identifier).The id must contain only letters (a-z, A-Z), numbers (0-9), underscores (_), and hyphens (-). The maximum length is 40 characters.", + // "location": "query", + // "type": "string" // } // }, // "path": "v1/projects/{projectId}/regions/{region}/clusters/{clusterName}", @@ -2787,6 +2847,20 @@ func (c *ProjectsRegionsClustersPatchCall) GracefulDecommissionTimeout(gracefulD return c } +// RequestId sets the optional parameter "requestId": A unique id used +// to identify the request. If the server receives two +// UpdateClusterRequest requests with the same id, then the second +// request will be ignored and the first google.longrunning.Operation +// created and stored in the backend is returned.It is recommended to +// always set this value to a UUID +// (https://en.wikipedia.org/wiki/Universally_unique_identifier).The id +// must contain only letters (a-z, A-Z), numbers (0-9), underscores (_), +// and hyphens (-). The maximum length is 40 characters. +func (c *ProjectsRegionsClustersPatchCall) RequestId(requestId string) *ProjectsRegionsClustersPatchCall { + c.urlParams_.Set("requestId", requestId) + return c +} + // UpdateMask sets the optional parameter "updateMask": Required. // Specifies the path, relative to Cluster, of the field to update. For // example, to change the number of workers in a cluster to 5, the @@ -2948,6 +3022,11 @@ func (c *ProjectsRegionsClustersPatchCall) Do(opts ...googleapi.CallOption) (*Op // "required": true, // "type": "string" // }, + // "requestId": { + // "description": "Optional. A unique id used to identify the request. If the server receives two UpdateClusterRequest requests with the same id, then the second request will be ignored and the first google.longrunning.Operation created and stored in the backend is returned.It is recommended to always set this value to a UUID (https://en.wikipedia.org/wiki/Universally_unique_identifier).The id must contain only letters (a-z, A-Z), numbers (0-9), underscores (_), and hyphens (-). The maximum length is 40 characters.", + // "location": "query", + // "type": "string" + // }, // "updateMask": { // "description": "Required. Specifies the path, relative to Cluster, of the field to update. For example, to change the number of workers in a cluster to 5, the update_mask parameter would be specified as config.worker_config.num_instances, and the PATCH request body would specify the new value, as follows:\n{\n \"config\":{\n \"workerConfig\":{\n \"numInstances\":\"5\"\n }\n }\n}\nSimilarly, to change the number of preemptible workers in a cluster to 5, the update_mask parameter would be config.secondary_worker_config.num_instances, and the PATCH request body would be set as follows:\n{\n \"config\":{\n \"secondaryWorkerConfig\":{\n \"numInstances\":\"5\"\n }\n }\n}\n\u003cstrong\u003eNote:\u003c/strong\u003e Currently, only the following fields can be updated:\u003ctable\u003e \u003ctbody\u003e \u003ctr\u003e \u003ctd\u003e\u003cstrong\u003eMask\u003c/strong\u003e\u003c/td\u003e \u003ctd\u003e\u003cstrong\u003ePurpose\u003c/strong\u003e\u003c/td\u003e \u003c/tr\u003e \u003ctr\u003e \u003ctd\u003e\u003cstrong\u003e\u003cem\u003elabels\u003c/em\u003e\u003c/strong\u003e\u003c/td\u003e \u003ctd\u003eUpdate labels\u003c/td\u003e \u003c/tr\u003e \u003ctr\u003e \u003ctd\u003e\u003cstrong\u003e\u003cem\u003econfig.worker_config.num_instances\u003c/em\u003e\u003c/strong\u003e\u003c/td\u003e \u003ctd\u003eResize primary worker group\u003c/td\u003e \u003c/tr\u003e \u003ctr\u003e \u003ctd\u003e\u003cstrong\u003e\u003cem\u003econfig.secondary_worker_config.num_instances\u003c/em\u003e\u003c/strong\u003e\u003c/td\u003e \u003ctd\u003eResize secondary worker group\u003c/td\u003e \u003c/tr\u003e \u003c/tbody\u003e \u003c/table\u003e", // "format": "google-fieldmask", diff --git a/vendor/google.golang.org/api/dataproc/v1alpha1/dataproc-gen.go b/vendor/google.golang.org/api/dataproc/v1alpha1/dataproc-gen.go index c2d548fb0..7eec52e67 100644 --- a/vendor/google.golang.org/api/dataproc/v1alpha1/dataproc-gen.go +++ b/vendor/google.golang.org/api/dataproc/v1alpha1/dataproc-gen.go @@ -164,8 +164,8 @@ type AcceleratorConfiguration struct { } func (s *AcceleratorConfiguration) MarshalJSON() ([]byte, error) { - type noMethod AcceleratorConfiguration - raw := noMethod(*s) + type NoMethod AcceleratorConfiguration + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -241,8 +241,8 @@ type Cluster struct { } func (s *Cluster) MarshalJSON() ([]byte, error) { - type noMethod Cluster - raw := noMethod(*s) + type NoMethod Cluster + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -336,8 +336,8 @@ type ClusterConfiguration struct { } func (s *ClusterConfiguration) MarshalJSON() ([]byte, error) { - type noMethod ClusterConfiguration - raw := noMethod(*s) + type NoMethod ClusterConfiguration + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -368,8 +368,8 @@ type ClusterMetrics struct { } func (s *ClusterMetrics) MarshalJSON() ([]byte, error) { - type noMethod ClusterMetrics - raw := noMethod(*s) + type NoMethod ClusterMetrics + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -417,8 +417,8 @@ type ClusterOperationMetadata struct { } func (s *ClusterOperationMetadata) MarshalJSON() ([]byte, error) { - type noMethod ClusterOperationMetadata - raw := noMethod(*s) + type NoMethod ClusterOperationMetadata + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -462,8 +462,8 @@ type ClusterOperationStatus struct { } func (s *ClusterOperationStatus) MarshalJSON() ([]byte, error) { - type noMethod ClusterOperationStatus - raw := noMethod(*s) + type NoMethod ClusterOperationStatus + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -521,8 +521,8 @@ type ClusterStatus struct { } func (s *ClusterStatus) MarshalJSON() ([]byte, error) { - type noMethod ClusterStatus - raw := noMethod(*s) + type NoMethod ClusterStatus + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -552,8 +552,8 @@ type DiagnoseClusterOutputLocation struct { } func (s *DiagnoseClusterOutputLocation) MarshalJSON() ([]byte, error) { - type noMethod DiagnoseClusterOutputLocation - raw := noMethod(*s) + type NoMethod DiagnoseClusterOutputLocation + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -582,8 +582,8 @@ type DiagnoseClusterResults struct { } func (s *DiagnoseClusterResults) MarshalJSON() ([]byte, error) { - type noMethod DiagnoseClusterResults - raw := noMethod(*s) + type NoMethod DiagnoseClusterResults + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -620,8 +620,8 @@ type DiskConfiguration struct { } func (s *DiskConfiguration) MarshalJSON() ([]byte, error) { - type noMethod DiskConfiguration - raw := noMethod(*s) + type NoMethod DiskConfiguration + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -715,8 +715,8 @@ type GceClusterConfiguration struct { } func (s *GceClusterConfiguration) MarshalJSON() ([]byte, error) { - type noMethod GceClusterConfiguration - raw := noMethod(*s) + type NoMethod GceClusterConfiguration + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -773,8 +773,8 @@ type GceConfiguration struct { } func (s *GceConfiguration) MarshalJSON() ([]byte, error) { - type noMethod GceConfiguration - raw := noMethod(*s) + type NoMethod GceConfiguration + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -841,8 +841,8 @@ type HadoopJob struct { } func (s *HadoopJob) MarshalJSON() ([]byte, error) { - type noMethod HadoopJob - raw := noMethod(*s) + type NoMethod HadoopJob + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -894,8 +894,8 @@ type HiveJob struct { } func (s *HiveJob) MarshalJSON() ([]byte, error) { - type noMethod HiveJob - raw := noMethod(*s) + type NoMethod HiveJob + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -959,8 +959,8 @@ type InstanceGroupConfiguration struct { } func (s *InstanceGroupConfiguration) MarshalJSON() ([]byte, error) { - type noMethod InstanceGroupConfiguration - raw := noMethod(*s) + type NoMethod InstanceGroupConfiguration + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -1071,8 +1071,8 @@ type Job struct { } func (s *Job) MarshalJSON() ([]byte, error) { - type noMethod Job - raw := noMethod(*s) + type NoMethod Job + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -1104,8 +1104,8 @@ type JobPlacement struct { } func (s *JobPlacement) MarshalJSON() ([]byte, error) { - type noMethod JobPlacement - raw := noMethod(*s) + type NoMethod JobPlacement + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -1140,8 +1140,8 @@ type JobReference struct { } func (s *JobReference) MarshalJSON() ([]byte, error) { - type noMethod JobReference - raw := noMethod(*s) + type NoMethod JobReference + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -1175,8 +1175,8 @@ type JobScheduling struct { } func (s *JobScheduling) MarshalJSON() ([]byte, error) { - type noMethod JobScheduling - raw := noMethod(*s) + type NoMethod JobScheduling + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -1254,8 +1254,8 @@ type JobStatus struct { } func (s *JobStatus) MarshalJSON() ([]byte, error) { - type noMethod JobStatus - raw := noMethod(*s) + type NoMethod JobStatus + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -1289,8 +1289,8 @@ type ListClustersResponse struct { } func (s *ListClustersResponse) MarshalJSON() ([]byte, error) { - type noMethod ListClustersResponse - raw := noMethod(*s) + type NoMethod ListClustersResponse + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -1341,8 +1341,8 @@ type ListJobsRequest struct { } func (s *ListJobsRequest) MarshalJSON() ([]byte, error) { - type noMethod ListJobsRequest - raw := noMethod(*s) + type NoMethod ListJobsRequest + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -1379,8 +1379,8 @@ type ListJobsResponse struct { } func (s *ListJobsResponse) MarshalJSON() ([]byte, error) { - type noMethod ListJobsResponse - raw := noMethod(*s) + type NoMethod ListJobsResponse + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -1416,8 +1416,8 @@ type ListOperationsResponse struct { } func (s *ListOperationsResponse) MarshalJSON() ([]byte, error) { - type noMethod ListOperationsResponse - raw := noMethod(*s) + type NoMethod ListOperationsResponse + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -1447,8 +1447,8 @@ type LoggingConfiguration struct { } func (s *LoggingConfiguration) MarshalJSON() ([]byte, error) { - type noMethod LoggingConfiguration - raw := noMethod(*s) + type NoMethod LoggingConfiguration + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -1483,8 +1483,8 @@ type ManagedGroupConfiguration struct { } func (s *ManagedGroupConfiguration) MarshalJSON() ([]byte, error) { - type noMethod ManagedGroupConfiguration - raw := noMethod(*s) + type NoMethod ManagedGroupConfiguration + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -1520,8 +1520,8 @@ type NodeInitializationAction struct { } func (s *NodeInitializationAction) MarshalJSON() ([]byte, error) { - type noMethod NodeInitializationAction - raw := noMethod(*s) + type NoMethod NodeInitializationAction + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -1575,8 +1575,8 @@ type Operation struct { } func (s *Operation) MarshalJSON() ([]byte, error) { - type noMethod Operation - raw := noMethod(*s) + type NoMethod Operation + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -1645,8 +1645,8 @@ type OperationMetadata struct { } func (s *OperationMetadata) MarshalJSON() ([]byte, error) { - type noMethod OperationMetadata - raw := noMethod(*s) + type NoMethod OperationMetadata + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -1688,8 +1688,8 @@ type OperationStatus struct { } func (s *OperationStatus) MarshalJSON() ([]byte, error) { - type noMethod OperationStatus - raw := noMethod(*s) + type NoMethod OperationStatus + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -1746,8 +1746,8 @@ type PigJob struct { } func (s *PigJob) MarshalJSON() ([]byte, error) { - type noMethod PigJob - raw := noMethod(*s) + type NoMethod PigJob + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -1808,8 +1808,8 @@ type PySparkJob struct { } func (s *PySparkJob) MarshalJSON() ([]byte, error) { - type noMethod PySparkJob - raw := noMethod(*s) + type NoMethod PySparkJob + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -1850,8 +1850,8 @@ type QueryList struct { } func (s *QueryList) MarshalJSON() ([]byte, error) { - type noMethod QueryList - raw := noMethod(*s) + type NoMethod QueryList + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -1889,8 +1889,8 @@ type SoftwareConfiguration struct { } func (s *SoftwareConfiguration) MarshalJSON() ([]byte, error) { - type noMethod SoftwareConfiguration - raw := noMethod(*s) + type NoMethod SoftwareConfiguration + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -1953,8 +1953,8 @@ type SparkJob struct { } func (s *SparkJob) MarshalJSON() ([]byte, error) { - type noMethod SparkJob - raw := noMethod(*s) + type NoMethod SparkJob + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -2001,8 +2001,8 @@ type SparkSqlJob struct { } func (s *SparkSqlJob) MarshalJSON() ([]byte, error) { - type noMethod SparkSqlJob - raw := noMethod(*s) + type NoMethod SparkSqlJob + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -2077,8 +2077,8 @@ type Status struct { } func (s *Status) MarshalJSON() ([]byte, error) { - type noMethod Status - raw := noMethod(*s) + type NoMethod Status + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -2105,8 +2105,8 @@ type SubmitJobRequest struct { } func (s *SubmitJobRequest) MarshalJSON() ([]byte, error) { - type noMethod SubmitJobRequest - raw := noMethod(*s) + type NoMethod SubmitJobRequest + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -2160,18 +2160,18 @@ type YarnApplication struct { } func (s *YarnApplication) MarshalJSON() ([]byte, error) { - type noMethod YarnApplication - raw := noMethod(*s) + type NoMethod YarnApplication + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } func (s *YarnApplication) UnmarshalJSON(data []byte) error { - type noMethod YarnApplication + type NoMethod YarnApplication var s1 struct { Progress gensupport.JSONFloat64 `json:"progress"` - *noMethod + *NoMethod } - s1.noMethod = (*noMethod)(s) + s1.NoMethod = (*NoMethod)(s) if err := json.Unmarshal(data, &s1); err != nil { return err } @@ -2285,7 +2285,7 @@ func (c *OperationsCancelCall) Do(opts ...googleapi.CallOption) (*Empty, error) }, } target := &ret - if err := json.NewDecoder(res.Body).Decode(target); err != nil { + if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil @@ -2415,7 +2415,7 @@ func (c *OperationsDeleteCall) Do(opts ...googleapi.CallOption) (*Empty, error) }, } target := &ret - if err := json.NewDecoder(res.Body).Decode(target); err != nil { + if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil @@ -2556,7 +2556,7 @@ func (c *OperationsGetCall) Do(opts ...googleapi.CallOption) (*Operation, error) }, } target := &ret - if err := json.NewDecoder(res.Body).Decode(target); err != nil { + if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil @@ -2727,7 +2727,7 @@ func (c *OperationsListCall) Do(opts ...googleapi.CallOption) (*ListOperationsRe }, } target := &ret - if err := json.NewDecoder(res.Body).Decode(target); err != nil { + if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil @@ -2899,7 +2899,7 @@ func (c *ProjectsRegionsClustersCreateCall) Do(opts ...googleapi.CallOption) (*O }, } target := &ret - if err := json.NewDecoder(res.Body).Decode(target); err != nil { + if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil @@ -3039,7 +3039,7 @@ func (c *ProjectsRegionsClustersDeleteCall) Do(opts ...googleapi.CallOption) (*O }, } target := &ret - if err := json.NewDecoder(res.Body).Decode(target); err != nil { + if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil @@ -3198,7 +3198,7 @@ func (c *ProjectsRegionsClustersGetCall) Do(opts ...googleapi.CallOption) (*Clus }, } target := &ret - if err := json.NewDecoder(res.Body).Decode(target); err != nil { + if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil @@ -3376,7 +3376,7 @@ func (c *ProjectsRegionsClustersListCall) Do(opts ...googleapi.CallOption) (*Lis }, } target := &ret - if err := json.NewDecoder(res.Body).Decode(target); err != nil { + if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil @@ -3578,7 +3578,7 @@ func (c *ProjectsRegionsClustersPatchCall) Do(opts ...googleapi.CallOption) (*Op }, } target := &ret - if err := json.NewDecoder(res.Body).Decode(target); err != nil { + if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil @@ -3740,7 +3740,7 @@ func (c *ProjectsRegionsJobsCancelCall) Do(opts ...googleapi.CallOption) (*Job, }, } target := &ret - if err := json.NewDecoder(res.Body).Decode(target); err != nil { + if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil @@ -3888,7 +3888,7 @@ func (c *ProjectsRegionsJobsDeleteCall) Do(opts ...googleapi.CallOption) (*Job, }, } target := &ret - if err := json.NewDecoder(res.Body).Decode(target); err != nil { + if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil @@ -4046,7 +4046,7 @@ func (c *ProjectsRegionsJobsGetCall) Do(opts ...googleapi.CallOption) (*Job, err }, } target := &ret - if err := json.NewDecoder(res.Body).Decode(target); err != nil { + if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil @@ -4194,7 +4194,7 @@ func (c *ProjectsRegionsJobsListCall) Do(opts ...googleapi.CallOption) (*ListJob }, } target := &ret - if err := json.NewDecoder(res.Body).Decode(target); err != nil { + if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil @@ -4374,7 +4374,7 @@ func (c *ProjectsRegionsJobsPatchCall) Do(opts ...googleapi.CallOption) (*Job, e }, } target := &ret - if err := json.NewDecoder(res.Body).Decode(target); err != nil { + if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil @@ -4531,7 +4531,7 @@ func (c *ProjectsRegionsJobsSubmitCall) Do(opts ...googleapi.CallOption) (*Job, }, } target := &ret - if err := json.NewDecoder(res.Body).Decode(target); err != nil { + if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil diff --git a/vendor/google.golang.org/api/dataproc/v1beta1/dataproc-gen.go b/vendor/google.golang.org/api/dataproc/v1beta1/dataproc-gen.go index 35988dc4c..90f63882c 100644 --- a/vendor/google.golang.org/api/dataproc/v1beta1/dataproc-gen.go +++ b/vendor/google.golang.org/api/dataproc/v1beta1/dataproc-gen.go @@ -152,8 +152,8 @@ type AcceleratorConfiguration struct { } func (s *AcceleratorConfiguration) MarshalJSON() ([]byte, error) { - type noMethod AcceleratorConfiguration - raw := noMethod(*s) + type NoMethod AcceleratorConfiguration + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -226,8 +226,8 @@ type Cluster struct { } func (s *Cluster) MarshalJSON() ([]byte, error) { - type noMethod Cluster - raw := noMethod(*s) + type NoMethod Cluster + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -295,8 +295,8 @@ type ClusterConfiguration struct { } func (s *ClusterConfiguration) MarshalJSON() ([]byte, error) { - type noMethod ClusterConfiguration - raw := noMethod(*s) + type NoMethod ClusterConfiguration + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -327,8 +327,8 @@ type ClusterMetrics struct { } func (s *ClusterMetrics) MarshalJSON() ([]byte, error) { - type noMethod ClusterMetrics - raw := noMethod(*s) + type NoMethod ClusterMetrics + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -376,8 +376,8 @@ type ClusterOperationMetadata struct { } func (s *ClusterOperationMetadata) MarshalJSON() ([]byte, error) { - type noMethod ClusterOperationMetadata - raw := noMethod(*s) + type NoMethod ClusterOperationMetadata + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -421,8 +421,8 @@ type ClusterOperationStatus struct { } func (s *ClusterOperationStatus) MarshalJSON() ([]byte, error) { - type noMethod ClusterOperationStatus - raw := noMethod(*s) + type NoMethod ClusterOperationStatus + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -480,8 +480,8 @@ type ClusterStatus struct { } func (s *ClusterStatus) MarshalJSON() ([]byte, error) { - type noMethod ClusterStatus - raw := noMethod(*s) + type NoMethod ClusterStatus + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -510,8 +510,8 @@ type DiagnoseClusterOutputLocation struct { } func (s *DiagnoseClusterOutputLocation) MarshalJSON() ([]byte, error) { - type noMethod DiagnoseClusterOutputLocation - raw := noMethod(*s) + type NoMethod DiagnoseClusterOutputLocation + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -545,8 +545,8 @@ type DiagnoseClusterResults struct { } func (s *DiagnoseClusterResults) MarshalJSON() ([]byte, error) { - type noMethod DiagnoseClusterResults - raw := noMethod(*s) + type NoMethod DiagnoseClusterResults + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -583,8 +583,8 @@ type DiskConfiguration struct { } func (s *DiskConfiguration) MarshalJSON() ([]byte, error) { - type noMethod DiskConfiguration - raw := noMethod(*s) + type NoMethod DiskConfiguration + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -684,8 +684,8 @@ type GceClusterConfiguration struct { } func (s *GceClusterConfiguration) MarshalJSON() ([]byte, error) { - type noMethod GceClusterConfiguration - raw := noMethod(*s) + type NoMethod GceClusterConfiguration + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -752,8 +752,8 @@ type HadoopJob struct { } func (s *HadoopJob) MarshalJSON() ([]byte, error) { - type noMethod HadoopJob - raw := noMethod(*s) + type NoMethod HadoopJob + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -805,8 +805,8 @@ type HiveJob struct { } func (s *HiveJob) MarshalJSON() ([]byte, error) { - type noMethod HiveJob - raw := noMethod(*s) + type NoMethod HiveJob + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -867,8 +867,8 @@ type InstanceGroupConfiguration struct { } func (s *InstanceGroupConfiguration) MarshalJSON() ([]byte, error) { - type noMethod InstanceGroupConfiguration - raw := noMethod(*s) + type NoMethod InstanceGroupConfiguration + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -974,8 +974,8 @@ type Job struct { } func (s *Job) MarshalJSON() ([]byte, error) { - type noMethod Job - raw := noMethod(*s) + type NoMethod Job + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -1007,8 +1007,8 @@ type JobPlacement struct { } func (s *JobPlacement) MarshalJSON() ([]byte, error) { - type noMethod JobPlacement - raw := noMethod(*s) + type NoMethod JobPlacement + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -1044,8 +1044,8 @@ type JobReference struct { } func (s *JobReference) MarshalJSON() ([]byte, error) { - type noMethod JobReference - raw := noMethod(*s) + type NoMethod JobReference + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -1079,8 +1079,8 @@ type JobScheduling struct { } func (s *JobScheduling) MarshalJSON() ([]byte, error) { - type noMethod JobScheduling - raw := noMethod(*s) + type NoMethod JobScheduling + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -1149,8 +1149,8 @@ type JobStatus struct { } func (s *JobStatus) MarshalJSON() ([]byte, error) { - type noMethod JobStatus - raw := noMethod(*s) + type NoMethod JobStatus + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -1184,8 +1184,8 @@ type ListClustersResponse struct { } func (s *ListClustersResponse) MarshalJSON() ([]byte, error) { - type noMethod ListClustersResponse - raw := noMethod(*s) + type NoMethod ListClustersResponse + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -1222,8 +1222,8 @@ type ListJobsResponse struct { } func (s *ListJobsResponse) MarshalJSON() ([]byte, error) { - type noMethod ListJobsResponse - raw := noMethod(*s) + type NoMethod ListJobsResponse + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -1259,8 +1259,8 @@ type ListOperationsResponse struct { } func (s *ListOperationsResponse) MarshalJSON() ([]byte, error) { - type noMethod ListOperationsResponse - raw := noMethod(*s) + type NoMethod ListOperationsResponse + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -1290,8 +1290,8 @@ type LoggingConfiguration struct { } func (s *LoggingConfiguration) MarshalJSON() ([]byte, error) { - type noMethod LoggingConfiguration - raw := noMethod(*s) + type NoMethod LoggingConfiguration + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -1326,8 +1326,8 @@ type ManagedGroupConfiguration struct { } func (s *ManagedGroupConfiguration) MarshalJSON() ([]byte, error) { - type noMethod ManagedGroupConfiguration - raw := noMethod(*s) + type NoMethod ManagedGroupConfiguration + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -1363,8 +1363,8 @@ type NodeInitializationAction struct { } func (s *NodeInitializationAction) MarshalJSON() ([]byte, error) { - type noMethod NodeInitializationAction - raw := noMethod(*s) + type NoMethod NodeInitializationAction + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -1424,8 +1424,8 @@ type Operation struct { } func (s *Operation) MarshalJSON() ([]byte, error) { - type noMethod Operation - raw := noMethod(*s) + type NoMethod Operation + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -1470,8 +1470,8 @@ type OperationMetadata struct { } func (s *OperationMetadata) MarshalJSON() ([]byte, error) { - type noMethod OperationMetadata - raw := noMethod(*s) + type NoMethod OperationMetadata + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -1513,8 +1513,8 @@ type OperationStatus struct { } func (s *OperationStatus) MarshalJSON() ([]byte, error) { - type noMethod OperationStatus - raw := noMethod(*s) + type NoMethod OperationStatus + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -1571,8 +1571,8 @@ type PigJob struct { } func (s *PigJob) MarshalJSON() ([]byte, error) { - type noMethod PigJob - raw := noMethod(*s) + type NoMethod PigJob + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -1633,8 +1633,8 @@ type PySparkJob struct { } func (s *PySparkJob) MarshalJSON() ([]byte, error) { - type noMethod PySparkJob - raw := noMethod(*s) + type NoMethod PySparkJob + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -1675,8 +1675,8 @@ type QueryList struct { } func (s *QueryList) MarshalJSON() ([]byte, error) { - type noMethod QueryList - raw := noMethod(*s) + type NoMethod QueryList + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -1714,8 +1714,8 @@ type SoftwareConfiguration struct { } func (s *SoftwareConfiguration) MarshalJSON() ([]byte, error) { - type noMethod SoftwareConfiguration - raw := noMethod(*s) + type NoMethod SoftwareConfiguration + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -1778,8 +1778,8 @@ type SparkJob struct { } func (s *SparkJob) MarshalJSON() ([]byte, error) { - type noMethod SparkJob - raw := noMethod(*s) + type NoMethod SparkJob + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -1826,8 +1826,8 @@ type SparkSqlJob struct { } func (s *SparkSqlJob) MarshalJSON() ([]byte, error) { - type noMethod SparkSqlJob - raw := noMethod(*s) + type NoMethod SparkSqlJob + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -1902,8 +1902,8 @@ type Status struct { } func (s *Status) MarshalJSON() ([]byte, error) { - type noMethod Status - raw := noMethod(*s) + type NoMethod Status + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -1930,8 +1930,8 @@ type SubmitJobRequest struct { } func (s *SubmitJobRequest) MarshalJSON() ([]byte, error) { - type noMethod SubmitJobRequest - raw := noMethod(*s) + type NoMethod SubmitJobRequest + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -1985,18 +1985,18 @@ type YarnApplication struct { } func (s *YarnApplication) MarshalJSON() ([]byte, error) { - type noMethod YarnApplication - raw := noMethod(*s) + type NoMethod YarnApplication + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } func (s *YarnApplication) UnmarshalJSON(data []byte) error { - type noMethod YarnApplication + type NoMethod YarnApplication var s1 struct { Progress gensupport.JSONFloat64 `json:"progress"` - *noMethod + *NoMethod } - s1.noMethod = (*noMethod)(s) + s1.NoMethod = (*NoMethod)(s) if err := json.Unmarshal(data, &s1); err != nil { return err } @@ -2109,7 +2109,7 @@ func (c *OperationsCancelCall) Do(opts ...googleapi.CallOption) (*Empty, error) }, } target := &ret - if err := json.NewDecoder(res.Body).Decode(target); err != nil { + if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil @@ -2240,7 +2240,7 @@ func (c *OperationsDeleteCall) Do(opts ...googleapi.CallOption) (*Empty, error) }, } target := &ret - if err := json.NewDecoder(res.Body).Decode(target); err != nil { + if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil @@ -2381,7 +2381,7 @@ func (c *OperationsGetCall) Do(opts ...googleapi.CallOption) (*Operation, error) }, } target := &ret - if err := json.NewDecoder(res.Body).Decode(target); err != nil { + if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil @@ -2545,7 +2545,7 @@ func (c *OperationsListCall) Do(opts ...googleapi.CallOption) (*ListOperationsRe }, } target := &ret - if err := json.NewDecoder(res.Body).Decode(target); err != nil { + if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil @@ -2714,7 +2714,7 @@ func (c *ProjectsClustersCreateCall) Do(opts ...googleapi.CallOption) (*Operatio }, } target := &ret - if err := json.NewDecoder(res.Body).Decode(target); err != nil { + if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil @@ -2844,7 +2844,7 @@ func (c *ProjectsClustersDeleteCall) Do(opts ...googleapi.CallOption) (*Operatio }, } target := &ret - if err := json.NewDecoder(res.Body).Decode(target); err != nil { + if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil @@ -2987,7 +2987,7 @@ func (c *ProjectsClustersDiagnoseCall) Do(opts ...googleapi.CallOption) (*Operat }, } target := &ret - if err := json.NewDecoder(res.Body).Decode(target); err != nil { + if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil @@ -3138,7 +3138,7 @@ func (c *ProjectsClustersGetCall) Do(opts ...googleapi.CallOption) (*Cluster, er }, } target := &ret - if err := json.NewDecoder(res.Body).Decode(target); err != nil { + if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil @@ -3306,7 +3306,7 @@ func (c *ProjectsClustersListCall) Do(opts ...googleapi.CallOption) (*ListCluste }, } target := &ret - if err := json.NewDecoder(res.Body).Decode(target); err != nil { + if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil @@ -3510,7 +3510,7 @@ func (c *ProjectsClustersPatchCall) Do(opts ...googleapi.CallOption) (*Operation }, } target := &ret - if err := json.NewDecoder(res.Body).Decode(target); err != nil { + if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil @@ -3661,7 +3661,7 @@ func (c *ProjectsJobsCancelCall) Do(opts ...googleapi.CallOption) (*Job, error) }, } target := &ret - if err := json.NewDecoder(res.Body).Decode(target); err != nil { + if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil @@ -3799,7 +3799,7 @@ func (c *ProjectsJobsDeleteCall) Do(opts ...googleapi.CallOption) (*Empty, error }, } target := &ret - if err := json.NewDecoder(res.Body).Decode(target); err != nil { + if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil @@ -3947,7 +3947,7 @@ func (c *ProjectsJobsGetCall) Do(opts ...googleapi.CallOption) (*Job, error) { }, } target := &ret - if err := json.NewDecoder(res.Body).Decode(target); err != nil { + if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil @@ -4136,7 +4136,7 @@ func (c *ProjectsJobsListCall) Do(opts ...googleapi.CallOption) (*ListJobsRespon }, } target := &ret - if err := json.NewDecoder(res.Body).Decode(target); err != nil { + if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil @@ -4334,7 +4334,7 @@ func (c *ProjectsJobsPatchCall) Do(opts ...googleapi.CallOption) (*Job, error) { }, } target := &ret - if err := json.NewDecoder(res.Body).Decode(target); err != nil { + if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil @@ -4481,7 +4481,7 @@ func (c *ProjectsJobsSubmitCall) Do(opts ...googleapi.CallOption) (*Job, error) }, } target := &ret - if err := json.NewDecoder(res.Body).Decode(target); err != nil { + if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil diff --git a/vendor/google.golang.org/api/dataproc/v1beta2/dataproc-api.json b/vendor/google.golang.org/api/dataproc/v1beta2/dataproc-api.json index f8fdb0e21..017df3e9f 100644 --- a/vendor/google.golang.org/api/dataproc/v1beta2/dataproc-api.json +++ b/vendor/google.golang.org/api/dataproc/v1beta2/dataproc-api.json @@ -1,7 +1,119 @@ { + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/cloud-platform": { + "description": "View and manage your data across Google Cloud Platform services" + } + } + } + }, + "basePath": "", + "baseUrl": "https://dataproc.googleapis.com/", + "batchPath": "batch", + "canonicalName": "Dataproc", + "description": "Manages Hadoop-based clusters and jobs on Google Cloud Platform.", + "discoveryVersion": "v1", + "documentationLink": "https://cloud.google.com/dataproc/", "fullyEncodeReservedExpansion": true, - "title": "Google Cloud Dataproc API", + "icons": { + "x16": "http://www.google.com/images/icons/product/search-16.gif", + "x32": "http://www.google.com/images/icons/product/search-32.gif" + }, + "id": "dataproc:v1beta2", + "kind": "discovery#restDescription", + "name": "dataproc", + "ownerDomain": "google.com", "ownerName": "Google", + "parameters": { + "$.xgafv": { + "description": "V1 error format.", + "enum": [ + "1", + "2" + ], + "enumDescriptions": [ + "v1 error format", + "v2 error format" + ], + "location": "query", + "type": "string" + }, + "access_token": { + "description": "OAuth access token.", + "location": "query", + "type": "string" + }, + "alt": { + "default": "json", + "description": "Data format for response.", + "enum": [ + "json", + "media", + "proto" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json", + "Media download with context-dependent Content-Type", + "Responses with Content-Type of application/x-protobuf" + ], + "location": "query", + "type": "string" + }, + "bearer_token": { + "description": "OAuth bearer token.", + "location": "query", + "type": "string" + }, + "callback": { + "description": "JSONP", + "location": "query", + "type": "string" + }, + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "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.", + "location": "query", + "type": "string" + }, + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "pp": { + "default": "true", + "description": "Pretty-print response.", + "location": "query", + "type": "boolean" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", + "location": "query", + "type": "string" + }, + "uploadType": { + "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", + "location": "query", + "type": "string" + }, + "upload_protocol": { + "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", + "location": "query", + "type": "string" + } + }, + "protocol": "rest", "resources": { "projects": { "resources": { @@ -9,220 +121,301 @@ "resources": { "workflowTemplates": { "methods": { - "update": { - "response": { - "$ref": "WorkflowTemplate" - }, + "create": { + "description": "Creates new workflow template.", + "flatPath": "v1beta2/projects/{projectsId}/locations/{locationsId}/workflowTemplates", + "httpMethod": "POST", + "id": "dataproc.projects.locations.workflowTemplates.create", "parameterOrder": [ - "name" + "parent" ], - "httpMethod": "PUT", "parameters": { - "name": { - "pattern": "^projects/[^/]+/locations/[^/]+/workflowTemplates/[^/]+$", + "parent": { + "description": "Required. The \"resource name\" of the region, as described in https://cloud.google.com/apis/design/resource_names of the form projects/{project_id}/regions/{region}", "location": "path", - "description": "Output only. The \"resource name\" of the template, as described in https://cloud.google.com/apis/design/resource_names of the form projects/{project_id}/regions/{region}/workflowTemplates/{template_id}", + "pattern": "^projects/[^/]+/locations/[^/]+$", "required": true, "type": "string" } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta2/projects/{projectsId}/locations/{locationsId}/workflowTemplates/{workflowTemplatesId}", - "path": "v1beta2/{+name}", - "id": "dataproc.projects.locations.workflowTemplates.update", + "path": "v1beta2/{+parent}/workflowTemplates", "request": { "$ref": "WorkflowTemplate" }, - "description": "Updates (replaces) workflow template. The updated template must contain version that matches the current server version." - }, - "delete": { "response": { - "$ref": "Empty" + "$ref": "WorkflowTemplate" }, - "parameterOrder": [ - "name" - ], - "httpMethod": "DELETE", "scopes": [ "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Deletes a workflow template. It does not cancel in-progress workflows.", + "flatPath": "v1beta2/projects/{projectsId}/locations/{locationsId}/workflowTemplates/{workflowTemplatesId}", + "httpMethod": "DELETE", + "id": "dataproc.projects.locations.workflowTemplates.delete", + "parameterOrder": [ + "name" ], "parameters": { "name": { "description": "Required. The \"resource name\" of the workflow template, as described in https://cloud.google.com/apis/design/resource_names of the form projects/{project_id}/regions/{region}/workflowTemplates/{template_id}", - "required": true, - "type": "string", + "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+/workflowTemplates/[^/]+$", - "location": "path" + "required": true, + "type": "string" }, "version": { - "location": "query", "description": "Optional. The version of workflow template to delete. If specified, will only delete the template if the current server version matches specified version.", "format": "int32", - "type": "integer" - } - }, - "flatPath": "v1beta2/projects/{projectsId}/locations/{locationsId}/workflowTemplates/{workflowTemplatesId}", - "path": "v1beta2/{+name}", - "id": "dataproc.projects.locations.workflowTemplates.delete", - "description": "Deletes a workflow template. It does not cancel in-progress workflows." - }, - "list": { - "response": { - "$ref": "ListWorkflowTemplatesResponse" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "pageToken": { - "description": "Optional. The page token, returned by a previous call, to request the next page of results.", - "type": "string", - "location": "query" - }, - "pageSize": { "location": "query", - "description": "Optional. The maximum number of results to return in each response.", - "format": "int32", "type": "integer" - }, - "parent": { - "location": "path", - "description": "Required. The \"resource name\" of the region, as described in https://cloud.google.com/apis/design/resource_names of the form projects/{project_id}/regions/{region}", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+$" } }, - "flatPath": "v1beta2/projects/{projectsId}/locations/{locationsId}/workflowTemplates", - "path": "v1beta2/{+parent}/workflowTemplates", - "id": "dataproc.projects.locations.workflowTemplates.list", - "description": "Lists workflows that match the specified filter in the request." - }, - "create": { + "path": "v1beta2/{+name}", "response": { - "$ref": "WorkflowTemplate" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "POST", - "parameters": { - "parent": { - "location": "path", - "description": "Required. The \"resource name\" of the region, as described in https://cloud.google.com/apis/design/resource_names of the form projects/{project_id}/regions/{region}", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+$" - } + "$ref": "Empty" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Retrieves the latest workflow template.Can retrieve previously instantiated template by specifying optional version parameter.", + "flatPath": "v1beta2/projects/{projectsId}/locations/{locationsId}/workflowTemplates/{workflowTemplatesId}", + "httpMethod": "GET", + "id": "dataproc.projects.locations.workflowTemplates.get", + "parameterOrder": [ + "name" ], - "flatPath": "v1beta2/projects/{projectsId}/locations/{locationsId}/workflowTemplates", - "path": "v1beta2/{+parent}/workflowTemplates", - "id": "dataproc.projects.locations.workflowTemplates.create", - "request": { + "parameters": { + "name": { + "description": "Required. The \"resource name\" of the workflow template, as described in https://cloud.google.com/apis/design/resource_names of the form projects/{project_id}/regions/{region}/workflowTemplates/{template_id}", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/workflowTemplates/[^/]+$", + "required": true, + "type": "string" + }, + "version": { + "description": "Optional. The version of workflow template to retrieve. Only previously instatiated versions can be retrieved.If unspecified, retrieves the current version.", + "format": "int32", + "location": "query", + "type": "integer" + } + }, + "path": "v1beta2/{+name}", + "response": { "$ref": "WorkflowTemplate" }, - "description": "Creates new workflow template." + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "getIamPolicy": { + "description": "Gets the access control policy for a resource. Returns an empty policy if the resource exists and does not have a policy set.", + "flatPath": "v1beta2/projects/{projectsId}/locations/{locationsId}/workflowTemplates/{workflowTemplatesId}:getIamPolicy", + "httpMethod": "GET", + "id": "dataproc.projects.locations.workflowTemplates.getIamPolicy", + "parameterOrder": [ + "resource" + ], + "parameters": { + "resource": { + "description": "REQUIRED: The resource for which the policy is being requested. See the operation documentation for the appropriate value for this field.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/workflowTemplates/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta2/{+resource}:getIamPolicy", + "response": { + "$ref": "Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] }, "instantiate": { + "description": "Instantiates a template and begins execution.The returned Operation can be used to track execution of workflow by polling operations.get. The Operation will complete when entire workflow is finished.The running workflow can be aborted via operations.cancel. This will cause any inflight jobs to be cancelled and workflow-owned clusters to be deleted.The Operation.metadata will be WorkflowMetadata.On successful completion, Operation.response will be Empty.", + "flatPath": "v1beta2/projects/{projectsId}/locations/{locationsId}/workflowTemplates/{workflowTemplatesId}:instantiate", + "httpMethod": "POST", "id": "dataproc.projects.locations.workflowTemplates.instantiate", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The \"resource name\" of the workflow template, as described in https://cloud.google.com/apis/design/resource_names of the form projects/{project_id}/regions/{region}/workflowTemplates/{template_id}", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/workflowTemplates/[^/]+$", + "required": true, + "type": "string" + } + }, "path": "v1beta2/{+name}:instantiate", "request": { "$ref": "InstantiateWorkflowTemplateRequest" }, - "description": "Instantiates a template and begins execution.The returned Operation can be used to track execution of workflow by polling google.cloud.dataproc.v1beta2.OperationService.GetOperation. The Operation will complete when entire workflow is finished.The running workflow can be aborted via google.cloud.dataproc.v1beta2.OperationService.CancelOperation.The google.cloud.dataproc.v1beta2.Operation.metadata will always be google.cloud.dataproc.v1beta2.WorkflowMetadata.The google.cloud.dataproc.v1beta2.Operation.result will always be google.protobuf.Empty.", - "httpMethod": "POST", - "parameterOrder": [ - "name" - ], "response": { "$ref": "Operation" }, - "parameters": { - "name": { - "description": "Required. The \"resource name\" of the workflow template, as described in https://cloud.google.com/apis/design/resource_names of the form projects/{project_id}/regions/{region}/workflowTemplates/{template_id}", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+/workflowTemplates/[^/]+$", - "location": "path" - } - }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta2/projects/{projectsId}/locations/{locationsId}/workflowTemplates/{workflowTemplatesId}:instantiate" + ] }, "instantiateInline": { - "response": { - "$ref": "Operation" - }, + "description": "Instantiates a template and begins execution.This method is equivalent to executing the sequence CreateWorkflowTemplate, InstantiateWorkflowTemplate, DeleteWorkflowTemplate.The returned Operation can be used to track execution of workflow by polling operations.get. The Operation will complete when entire workflow is finished.The running workflow can be aborted via operations.cancel. This will cause any inflight jobs to be cancelled and workflow-owned clusters to be deleted.The Operation.metadata will be WorkflowMetadata.On successful completion, Operation.response will be Empty.", + "flatPath": "v1beta2/projects/{projectsId}/locations/{locationsId}/workflowTemplates:instantiateInline", + "httpMethod": "POST", + "id": "dataproc.projects.locations.workflowTemplates.instantiateInline", "parameterOrder": [ "parent" ], - "httpMethod": "POST", "parameters": { "instanceId": { - "location": "query", "description": "Optional. A tag that prevents multiple concurrent workflow instances with the same tag from running. This mitigates risk of concurrent instances started due to retries.It is recommended to always set this value to a UUID (https://en.wikipedia.org/wiki/Universally_unique_identifier).The tag must contain only letters (a-z, A-Z), numbers (0-9), underscores (_), and hyphens (-). The maximum length is 40 characters.", + "location": "query", "type": "string" }, "parent": { "description": "Required. The \"resource name\" of the workflow template region, as described in https://cloud.google.com/apis/design/resource_names of the form projects/{project_id}/regions/{region}", - "required": true, - "type": "string", + "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+$", - "location": "path" + "required": true, + "type": "string" } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta2/projects/{projectsId}/locations/{locationsId}/workflowTemplates:instantiateInline", "path": "v1beta2/{+parent}/workflowTemplates:instantiateInline", - "id": "dataproc.projects.locations.workflowTemplates.instantiateInline", "request": { "$ref": "WorkflowTemplate" }, - "description": "Instantiates a template and begins execution.This method is equivalent to executing the sequence CreateWorkflowTemplate, InstantiateWorkflowTemplate, DeleteWorkflowTemplate.The returned Operation can be used to track execution of workflow by polling google.cloud.dataproc.v1beta2.OperationService.GetOperation. The Operation will complete when entire workflow is finished.The running workflow can be aborted via google.cloud.dataproc.v1beta2.OperationService.CancelOperation.The google.cloud.dataproc.v1beta2.Operation.metadata will always be google.cloud.dataproc.v1beta2.WorkflowMetadata.The google.cloud.dataproc.v1beta2.Operation.result will always be google.protobuf.Empty." - }, - "get": { - "description": "Retrieves the latest workflow template.Can retrieve previously instantiated template by specifying optional version parameter.", - "httpMethod": "GET", - "parameterOrder": [ - "name" - ], "response": { - "$ref": "WorkflowTemplate" - }, - "parameters": { - "name": { - "description": "Required. The \"resource name\" of the workflow template, as described in https://cloud.google.com/apis/design/resource_names of the form projects/{project_id}/regions/{region}/workflowTemplates/{template_id}", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+/workflowTemplates/[^/]+$", - "location": "path" - }, - "version": { - "location": "query", - "description": "Optional. The version of workflow template to retrieve. Only previously instatiated versions can be retrieved.If unspecified, retrieves the current version.", - "format": "int32", - "type": "integer" - } + "$ref": "Operation" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists workflows that match the specified filter in the request.", + "flatPath": "v1beta2/projects/{projectsId}/locations/{locationsId}/workflowTemplates", + "httpMethod": "GET", + "id": "dataproc.projects.locations.workflowTemplates.list", + "parameterOrder": [ + "parent" ], + "parameters": { + "pageSize": { + "description": "Optional. The maximum number of results to return in each response.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional. The page token, returned by a previous call, to request the next page of results.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The \"resource name\" of the region, as described in https://cloud.google.com/apis/design/resource_names of the form projects/{project_id}/regions/{region}", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta2/{+parent}/workflowTemplates", + "response": { + "$ref": "ListWorkflowTemplatesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "setIamPolicy": { + "description": "Sets the access control policy on the specified resource. Replaces any existing policy.", + "flatPath": "v1beta2/projects/{projectsId}/locations/{locationsId}/workflowTemplates/{workflowTemplatesId}:setIamPolicy", + "httpMethod": "POST", + "id": "dataproc.projects.locations.workflowTemplates.setIamPolicy", + "parameterOrder": [ + "resource" + ], + "parameters": { + "resource": { + "description": "REQUIRED: The resource for which the policy is being specified. See the operation documentation for the appropriate value for this field.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/workflowTemplates/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta2/{+resource}:setIamPolicy", + "request": { + "$ref": "SetIamPolicyRequest" + }, + "response": { + "$ref": "Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource. If the resource does not exist, this will return an empty set of permissions, not a NOT_FOUND error.Note: This operation is designed to be used for building permission-aware UIs and command-line tools, not for authorization checking. This operation may \"fail open\" without warning.", + "flatPath": "v1beta2/projects/{projectsId}/locations/{locationsId}/workflowTemplates/{workflowTemplatesId}:testIamPermissions", + "httpMethod": "POST", + "id": "dataproc.projects.locations.workflowTemplates.testIamPermissions", + "parameterOrder": [ + "resource" + ], + "parameters": { + "resource": { + "description": "REQUIRED: The resource for which the policy detail is being requested. See the operation documentation for the appropriate value for this field.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/workflowTemplates/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta2/{+resource}:testIamPermissions", + "request": { + "$ref": "TestIamPermissionsRequest" + }, + "response": { + "$ref": "TestIamPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "update": { + "description": "Updates (replaces) workflow template. The updated template must contain version that matches the current server version.", "flatPath": "v1beta2/projects/{projectsId}/locations/{locationsId}/workflowTemplates/{workflowTemplatesId}", - "id": "dataproc.projects.locations.workflowTemplates.get", - "path": "v1beta2/{+name}" + "httpMethod": "PUT", + "id": "dataproc.projects.locations.workflowTemplates.update", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Output only. The \"resource name\" of the template, as described in https://cloud.google.com/apis/design/resource_names of the form projects/{project_id}/regions/{region}/workflowTemplates/{template_id}", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/workflowTemplates/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta2/{+name}", + "request": { + "$ref": "WorkflowTemplate" + }, + "response": { + "$ref": "WorkflowTemplate" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] } } } @@ -230,947 +423,1205 @@ }, "regions": { "resources": { - "jobs": { - "methods": { - "submit": { - "id": "dataproc.projects.regions.jobs.submit", - "path": "v1beta2/projects/{projectId}/regions/{region}/jobs:submit", - "request": { - "$ref": "SubmitJobRequest" - }, - "description": "Submits a job to a cluster.", - "httpMethod": "POST", - "parameterOrder": [ - "projectId", - "region" - ], - "response": { - "$ref": "Job" - }, - "parameters": { - "region": { - "location": "path", - "description": "Required. The Cloud Dataproc region in which to handle the request.", - "required": true, - "type": "string" - }, - "projectId": { - "location": "path", - "description": "Required. The ID of the Google Cloud Platform project that the job belongs to.", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta2/projects/{projectId}/regions/{region}/jobs:submit" - }, - "delete": { - "httpMethod": "DELETE", - "parameterOrder": [ - "projectId", - "region", - "jobId" - ], - "response": { - "$ref": "Empty" - }, - "parameters": { - "projectId": { - "location": "path", - "description": "Required. The ID of the Google Cloud Platform project that the job belongs to.", - "required": true, - "type": "string" - }, - "jobId": { - "description": "Required. The job ID.", - "required": true, - "type": "string", - "location": "path" - }, - "region": { - "location": "path", - "description": "Required. The Cloud Dataproc region in which to handle the request.", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta2/projects/{projectId}/regions/{region}/jobs/{jobId}", - "id": "dataproc.projects.regions.jobs.delete", - "path": "v1beta2/projects/{projectId}/regions/{region}/jobs/{jobId}", - "description": "Deletes the job from the project. If the job is active, the delete fails, and the response returns FAILED_PRECONDITION." - }, - "list": { - "flatPath": "v1beta2/projects/{projectId}/regions/{region}/jobs", - "path": "v1beta2/projects/{projectId}/regions/{region}/jobs", - "id": "dataproc.projects.regions.jobs.list", - "description": "Lists regions/{region}/jobs in a project.", - "response": { - "$ref": "ListJobsResponse" - }, - "parameterOrder": [ - "projectId", - "region" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "filter": { - "location": "query", - "description": "Optional. A filter constraining the jobs to list. Filters are case-sensitive and have the following syntax:field = value AND field = value ...where field is status.state or labels.[KEY], and [KEY] is a label key. value can be * to match all values. status.state can be either ACTIVE or NON_ACTIVE. Only the logical AND operator is supported; space-separated items are treated as having an implicit AND operator.Example filter:status.state = ACTIVE AND labels.env = staging AND labels.starred = *", - "type": "string" - }, - "jobStateMatcher": { - "enum": [ - "ALL", - "ACTIVE", - "NON_ACTIVE" - ], - "description": "Optional. Specifies enumerated categories of jobs to list. (default = match ALL jobs).If filter is provided, jobStateMatcher will be ignored.", - "type": "string", - "location": "query" - }, - "pageToken": { - "location": "query", - "description": "Optional. The page token, returned by a previous call, to request the next page of results.", - "type": "string" - }, - "pageSize": { - "location": "query", - "description": "Optional. The number of results to return in each response.", - "format": "int32", - "type": "integer" - }, - "region": { - "location": "path", - "description": "Required. The Cloud Dataproc region in which to handle the request.", - "required": true, - "type": "string" - }, - "clusterName": { - "description": "Optional. If set, the returned jobs list includes only jobs that were submitted to the named cluster.", - "type": "string", - "location": "query" - }, - "projectId": { - "description": "Required. The ID of the Google Cloud Platform project that the job belongs to.", - "required": true, - "type": "string", - "location": "path" - } - } - }, - "cancel": { - "response": { - "$ref": "Job" - }, - "parameterOrder": [ - "projectId", - "region", - "jobId" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "projectId": { - "location": "path", - "description": "Required. The ID of the Google Cloud Platform project that the job belongs to.", - "required": true, - "type": "string" - }, - "jobId": { - "description": "Required. The job ID.", - "required": true, - "type": "string", - "location": "path" - }, - "region": { - "location": "path", - "description": "Required. The Cloud Dataproc region in which to handle the request.", - "required": true, - "type": "string" - } - }, - "flatPath": "v1beta2/projects/{projectId}/regions/{region}/jobs/{jobId}:cancel", - "path": "v1beta2/projects/{projectId}/regions/{region}/jobs/{jobId}:cancel", - "id": "dataproc.projects.regions.jobs.cancel", - "description": "Starts a job cancellation request. To access the job resource after cancellation, call regions/{region}/jobs.list or regions/{region}/jobs.get.", - "request": { - "$ref": "CancelJobRequest" - } - }, - "get": { - "description": "Gets the resource representation for a job in a project.", - "response": { - "$ref": "Job" - }, - "parameterOrder": [ - "projectId", - "region", - "jobId" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "projectId": { - "description": "Required. The ID of the Google Cloud Platform project that the job belongs to.", - "required": true, - "type": "string", - "location": "path" - }, - "jobId": { - "description": "Required. The job ID.", - "required": true, - "type": "string", - "location": "path" - }, - "region": { - "description": "Required. The Cloud Dataproc region in which to handle the request.", - "required": true, - "type": "string", - "location": "path" - } - }, - "flatPath": "v1beta2/projects/{projectId}/regions/{region}/jobs/{jobId}", - "path": "v1beta2/projects/{projectId}/regions/{region}/jobs/{jobId}", - "id": "dataproc.projects.regions.jobs.get" - }, - "patch": { - "response": { - "$ref": "Job" - }, - "parameterOrder": [ - "projectId", - "region", - "jobId" - ], - "httpMethod": "PATCH", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "projectId": { - "location": "path", - "description": "Required. The ID of the Google Cloud Platform project that the job belongs to.", - "required": true, - "type": "string" - }, - "jobId": { - "location": "path", - "description": "Required. The job ID.", - "required": true, - "type": "string" - }, - "region": { - "description": "Required. The Cloud Dataproc region in which to handle the request.", - "required": true, - "type": "string", - "location": "path" - }, - "updateMask": { - "description": "Required. Specifies the path, relative to \u003ccode\u003eJob\u003c/code\u003e, of the field to update. For example, to update the labels of a Job the \u003ccode\u003eupdate_mask\u003c/code\u003e parameter would be specified as \u003ccode\u003elabels\u003c/code\u003e, and the PATCH request body would specify the new value. \u003cstrong\u003eNote:\u003c/strong\u003e Currently, \u003ccode\u003elabels\u003c/code\u003e is the only field that can be updated.", - "format": "google-fieldmask", - "type": "string", - "location": "query" - } - }, - "flatPath": "v1beta2/projects/{projectId}/regions/{region}/jobs/{jobId}", - "path": "v1beta2/projects/{projectId}/regions/{region}/jobs/{jobId}", - "id": "dataproc.projects.regions.jobs.patch", - "description": "Updates a job in a project.", - "request": { - "$ref": "Job" - } - } - } - }, "clusters": { "methods": { - "patch": { + "create": { + "description": "Creates a cluster in a project.", + "flatPath": "v1beta2/projects/{projectId}/regions/{region}/clusters", + "httpMethod": "POST", + "id": "dataproc.projects.regions.clusters.create", + "parameterOrder": [ + "projectId", + "region" + ], + "parameters": { + "projectId": { + "description": "Required. The ID of the Google Cloud Platform project that the cluster belongs to.", + "location": "path", + "required": true, + "type": "string" + }, + "region": { + "description": "Required. The Cloud Dataproc region in which to handle the request.", + "location": "path", + "required": true, + "type": "string" + }, + "requestId": { + "description": "Optional. A unique id used to identify the request. If the server receives two CreateClusterRequest requests with the same id, then the second request will be ignored and the first google.longrunning.Operation created and stored in the backend is returned.It is recommended to always set this value to a UUID (https://en.wikipedia.org/wiki/Universally_unique_identifier).The id must contain only letters (a-z, A-Z), numbers (0-9), underscores (_), and hyphens (-). The maximum length is 40 characters.", + "location": "query", + "type": "string" + } + }, + "path": "v1beta2/projects/{projectId}/regions/{region}/clusters", "request": { "$ref": "Cluster" }, - "description": "Updates a cluster in a project.", - "httpMethod": "PATCH", - "parameterOrder": [ - "projectId", - "region", - "clusterName" - ], "response": { "$ref": "Operation" }, - "parameters": { - "region": { - "location": "path", - "description": "Required. The Cloud Dataproc region in which to handle the request.", - "required": true, - "type": "string" - }, - "updateMask": { - "description": "Required. Specifies the path, relative to \u003ccode\u003eCluster\u003c/code\u003e, of the field to update. For example, to change the number of workers in a cluster to 5, the \u003ccode\u003eupdate_mask\u003c/code\u003e parameter would be specified as \u003ccode\u003econfig.worker_config.num_instances\u003c/code\u003e, and the PATCH request body would specify the new value, as follows:\n{\n \"config\":{\n \"workerConfig\":{\n \"numInstances\":\"5\"\n }\n }\n}\nSimilarly, to change the number of preemptible workers in a cluster to 5, the \u003ccode\u003eupdate_mask\u003c/code\u003e parameter would be \u003ccode\u003econfig.secondary_worker_config.num_instances\u003c/code\u003e, and the PATCH request body would be set as follows:\n{\n \"config\":{\n \"secondaryWorkerConfig\":{\n \"numInstances\":\"5\"\n }\n }\n}\n\u003cstrong\u003eNote:\u003c/strong\u003e currently only some fields can be updated: |Mask|Purpose| |labels|Updates labels| |config.worker_config.num_instances|Resize primary worker group| |config.secondary_worker_config.num_instances|Resize secondary worker group|", - "format": "google-fieldmask", - "type": "string", - "location": "query" - }, - "clusterName": { - "location": "path", - "description": "Required. The cluster name.", - "required": true, - "type": "string" - }, - "gracefulDecommissionTimeout": { - "description": "Optional. Timeout for graceful YARN decomissioning. Graceful decommissioning allows removing nodes from the cluster without interrupting jobs in progress. Timeout specifies how long to wait for jobs in progress to finish before forcefully removing nodes (and potentially interrupting jobs). Default timeout is 0 (for forceful decommission), and the maximum allowed timeout is 1 day.Only supported on Dataproc image versions 1.2 and higher.", - "format": "google-duration", - "type": "string", - "location": "query" - }, - "projectId": { - "location": "path", - "description": "Required. The ID of the Google Cloud Platform project the cluster belongs to.", - "required": true, - "type": "string" - } - }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta2/projects/{projectId}/regions/{region}/clusters/{clusterName}", - "id": "dataproc.projects.regions.clusters.patch", - "path": "v1beta2/projects/{projectId}/regions/{region}/clusters/{clusterName}" - }, - "get": { - "description": "Gets the resource representation for a cluster in a project.", - "response": { - "$ref": "Cluster" - }, - "parameterOrder": [ - "projectId", - "region", - "clusterName" - ], - "httpMethod": "GET", - "parameters": { - "clusterName": { - "description": "Required. The cluster name.", - "required": true, - "type": "string", - "location": "path" - }, - "projectId": { - "description": "Required. The ID of the Google Cloud Platform project that the cluster belongs to.", - "required": true, - "type": "string", - "location": "path" - }, - "region": { - "description": "Required. The Cloud Dataproc region in which to handle the request.", - "required": true, - "type": "string", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta2/projects/{projectId}/regions/{region}/clusters/{clusterName}", - "path": "v1beta2/projects/{projectId}/regions/{region}/clusters/{clusterName}", - "id": "dataproc.projects.regions.clusters.get" - }, - "testIamPermissions": { - "path": "v1beta2/{+resource}:testIamPermissions", - "id": "dataproc.projects.regions.clusters.testIamPermissions", - "request": { - "$ref": "TestIamPermissionsRequest" - }, - "description": "Returns permissions that a caller has on the specified resource. If the resource does not exist, this will return an empty set of permissions, not a NOT_FOUND error.Note: This operation is designed to be used for building permission-aware UIs and command-line tools, not for authorization checking. This operation may \"fail open\" without warning.", - "response": { - "$ref": "TestIamPermissionsResponse" - }, - "parameterOrder": [ - "resource" - ], - "httpMethod": "POST", - "parameters": { - "resource": { - "description": "REQUIRED: The resource for which the policy detail is being requested. See the operation documentation for the appropriate value for this field.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/regions/[^/]+/clusters/[^/]+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta2/projects/{projectsId}/regions/{regionsId}/clusters/{clustersId}:testIamPermissions" + ] }, "delete": { "description": "Deletes a cluster in a project.", - "response": { - "$ref": "Operation" - }, + "flatPath": "v1beta2/projects/{projectId}/regions/{region}/clusters/{clusterName}", + "httpMethod": "DELETE", + "id": "dataproc.projects.regions.clusters.delete", "parameterOrder": [ "projectId", "region", "clusterName" ], - "httpMethod": "DELETE", "parameters": { - "region": { + "clusterName": { + "description": "Required. The cluster name.", "location": "path", - "description": "Required. The Cloud Dataproc region in which to handle the request.", "required": true, "type": "string" }, - "clusterName": { - "description": "Required. The cluster name.", - "required": true, - "type": "string", - "location": "path" - }, "clusterUuid": { "description": "Optional. Specifying the cluster_uuid means the RPC should fail (with error NOT_FOUND) if cluster with specified UUID does not exist.", - "type": "string", - "location": "query" + "location": "query", + "type": "string" }, "projectId": { - "location": "path", "description": "Required. The ID of the Google Cloud Platform project that the cluster belongs to.", + "location": "path", + "required": true, + "type": "string" + }, + "region": { + "description": "Required. The Cloud Dataproc region in which to handle the request.", + "location": "path", + "required": true, + "type": "string" + }, + "requestId": { + "description": "Optional. A unique id used to identify the request. If the server receives two DeleteClusterRequest requests with the same id, then the second request will be ignored and the first google.longrunning.Operation created and stored in the backend is returned.It is recommended to always set this value to a UUID (https://en.wikipedia.org/wiki/Universally_unique_identifier).The id must contain only letters (a-z, A-Z), numbers (0-9), underscores (_), and hyphens (-). The maximum length is 40 characters.", + "location": "query", + "type": "string" + } + }, + "path": "v1beta2/projects/{projectId}/regions/{region}/clusters/{clusterName}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "diagnose": { + "description": "Gets cluster diagnostic information. After the operation completes, the Operation.response field contains DiagnoseClusterOutputLocation.", + "flatPath": "v1beta2/projects/{projectId}/regions/{region}/clusters/{clusterName}:diagnose", + "httpMethod": "POST", + "id": "dataproc.projects.regions.clusters.diagnose", + "parameterOrder": [ + "projectId", + "region", + "clusterName" + ], + "parameters": { + "clusterName": { + "description": "Required. The cluster name.", + "location": "path", + "required": true, + "type": "string" + }, + "projectId": { + "description": "Required. The ID of the Google Cloud Platform project that the cluster belongs to.", + "location": "path", + "required": true, + "type": "string" + }, + "region": { + "description": "Required. The Cloud Dataproc region in which to handle the request.", + "location": "path", "required": true, "type": "string" } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta2/projects/{projectId}/regions/{region}/clusters/{clusterName}", - "path": "v1beta2/projects/{projectId}/regions/{region}/clusters/{clusterName}", - "id": "dataproc.projects.regions.clusters.delete" - }, - "diagnose": { - "description": "Gets cluster diagnostic information. After the operation completes, the Operation.response field contains DiagnoseClusterOutputLocation.", + "path": "v1beta2/projects/{projectId}/regions/{region}/clusters/{clusterName}:diagnose", "request": { "$ref": "DiagnoseClusterRequest" }, "response": { "$ref": "Operation" }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Gets the resource representation for a cluster in a project.", + "flatPath": "v1beta2/projects/{projectId}/regions/{region}/clusters/{clusterName}", + "httpMethod": "GET", + "id": "dataproc.projects.regions.clusters.get", "parameterOrder": [ "projectId", "region", "clusterName" ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], "parameters": { - "region": { + "clusterName": { + "description": "Required. The cluster name.", "location": "path", - "description": "Required. The Cloud Dataproc region in which to handle the request.", "required": true, "type": "string" }, - "clusterName": { - "description": "Required. The cluster name.", - "required": true, - "type": "string", - "location": "path" - }, "projectId": { - "location": "path", "description": "Required. The ID of the Google Cloud Platform project that the cluster belongs to.", + "location": "path", + "required": true, + "type": "string" + }, + "region": { + "description": "Required. The Cloud Dataproc region in which to handle the request.", + "location": "path", "required": true, "type": "string" } }, - "flatPath": "v1beta2/projects/{projectId}/regions/{region}/clusters/{clusterName}:diagnose", - "path": "v1beta2/projects/{projectId}/regions/{region}/clusters/{clusterName}:diagnose", - "id": "dataproc.projects.regions.clusters.diagnose" + "path": "v1beta2/projects/{projectId}/regions/{region}/clusters/{clusterName}", + "response": { + "$ref": "Cluster" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "getIamPolicy": { + "description": "Gets the access control policy for a resource. Returns an empty policy if the resource exists and does not have a policy set.", + "flatPath": "v1beta2/projects/{projectsId}/regions/{regionsId}/clusters/{clustersId}:getIamPolicy", + "httpMethod": "GET", + "id": "dataproc.projects.regions.clusters.getIamPolicy", + "parameterOrder": [ + "resource" + ], + "parameters": { + "resource": { + "description": "REQUIRED: The resource for which the policy is being requested. See the operation documentation for the appropriate value for this field.", + "location": "path", + "pattern": "^projects/[^/]+/regions/[^/]+/clusters/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta2/{+resource}:getIamPolicy", + "response": { + "$ref": "Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] }, "list": { + "description": "Lists all regions/{region}/clusters in a project.", + "flatPath": "v1beta2/projects/{projectId}/regions/{region}/clusters", "httpMethod": "GET", - "response": { - "$ref": "ListClustersResponse" - }, + "id": "dataproc.projects.regions.clusters.list", "parameterOrder": [ "projectId", "region" ], "parameters": { + "filter": { + "description": "Optional. A filter constraining the clusters to list. Filters are case-sensitive and have the following syntax:field = value AND field = value ...where field is one of status.state, clusterName, or labels.[KEY], and [KEY] is a label key. value can be * to match all values. status.state can be one of the following: ACTIVE, INACTIVE, CREATING, RUNNING, ERROR, DELETING, or UPDATING. ACTIVE contains the CREATING, UPDATING, and RUNNING states. INACTIVE contains the DELETING and ERROR states. clusterName is the name of the cluster provided at creation time. Only the logical AND operator is supported; space-separated items are treated as having an implicit AND operator.Example filter:status.state = ACTIVE AND clusterName = mycluster AND labels.env = staging AND labels.starred = *", + "location": "query", + "type": "string" + }, "pageSize": { "description": "Optional. The standard List page size.", "format": "int32", - "type": "integer", - "location": "query" + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional. The standard List page token.", + "location": "query", + "type": "string" }, "projectId": { - "location": "path", "description": "Required. The ID of the Google Cloud Platform project that the cluster belongs to.", + "location": "path", "required": true, "type": "string" }, "region": { "description": "Required. The Cloud Dataproc region in which to handle the request.", + "location": "path", "required": true, - "type": "string", - "location": "path" - }, - "filter": { - "description": "Optional. A filter constraining the clusters to list. Filters are case-sensitive and have the following syntax:field = value AND field = value ...where field is one of status.state, clusterName, or labels.[KEY], and [KEY] is a label key. value can be * to match all values. status.state can be one of the following: ACTIVE, INACTIVE, CREATING, RUNNING, ERROR, DELETING, or UPDATING. ACTIVE contains the CREATING, UPDATING, and RUNNING states. INACTIVE contains the DELETING and ERROR states. clusterName is the name of the cluster provided at creation time. Only the logical AND operator is supported; space-separated items are treated as having an implicit AND operator.Example filter:status.state = ACTIVE AND clusterName = mycluster AND labels.env = staging AND labels.starred = *", - "type": "string", - "location": "query" - }, - "pageToken": { - "location": "query", - "description": "Optional. The standard List page token.", "type": "string" } }, + "path": "v1beta2/projects/{projectId}/regions/{region}/clusters", + "response": { + "$ref": "ListClustersResponse" + }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta2/projects/{projectId}/regions/{region}/clusters", - "id": "dataproc.projects.regions.clusters.list", - "path": "v1beta2/projects/{projectId}/regions/{region}/clusters", - "description": "Lists all regions/{region}/clusters in a project." + ] }, - "setIamPolicy": { - "response": { - "$ref": "Policy" - }, + "patch": { + "description": "Updates a cluster in a project.", + "flatPath": "v1beta2/projects/{projectId}/regions/{region}/clusters/{clusterName}", + "httpMethod": "PATCH", + "id": "dataproc.projects.regions.clusters.patch", "parameterOrder": [ - "resource" + "projectId", + "region", + "clusterName" ], - "httpMethod": "POST", "parameters": { - "resource": { - "description": "REQUIRED: The resource for which the policy is being specified. See the operation documentation for the appropriate value for this field.", + "clusterName": { + "description": "Required. The cluster name.", + "location": "path", "required": true, - "type": "string", - "pattern": "^projects/[^/]+/regions/[^/]+/clusters/[^/]+$", - "location": "path" + "type": "string" + }, + "gracefulDecommissionTimeout": { + "description": "Optional. Timeout for graceful YARN decomissioning. Graceful decommissioning allows removing nodes from the cluster without interrupting jobs in progress. Timeout specifies how long to wait for jobs in progress to finish before forcefully removing nodes (and potentially interrupting jobs). Default timeout is 0 (for forceful decommission), and the maximum allowed timeout is 1 day.Only supported on Dataproc image versions 1.2 and higher.", + "format": "google-duration", + "location": "query", + "type": "string" + }, + "projectId": { + "description": "Required. The ID of the Google Cloud Platform project the cluster belongs to.", + "location": "path", + "required": true, + "type": "string" + }, + "region": { + "description": "Required. The Cloud Dataproc region in which to handle the request.", + "location": "path", + "required": true, + "type": "string" + }, + "requestId": { + "description": "Optional. A unique id used to identify the request. If the server receives two UpdateClusterRequest requests with the same id, then the second request will be ignored and the first google.longrunning.Operation created and stored in the backend is returned.It is recommended to always set this value to a UUID (https://en.wikipedia.org/wiki/Universally_unique_identifier).The id must contain only letters (a-z, A-Z), numbers (0-9), underscores (_), and hyphens (-). The maximum length is 40 characters.", + "location": "query", + "type": "string" + }, + "updateMask": { + "description": "Required. Specifies the path, relative to Cluster, of the field to update. For example, to change the number of workers in a cluster to 5, the update_mask parameter would be specified as config.worker_config.num_instances, and the PATCH request body would specify the new value, as follows:\n{\n \"config\":{\n \"workerConfig\":{\n \"numInstances\":\"5\"\n }\n }\n}\nSimilarly, to change the number of preemptible workers in a cluster to 5, the update_mask parameter would be config.secondary_worker_config.num_instances, and the PATCH request body would be set as follows:\n{\n \"config\":{\n \"secondaryWorkerConfig\":{\n \"numInstances\":\"5\"\n }\n }\n}\n\u003cstrong\u003eNote:\u003c/strong\u003e currently only the following fields can be updated:\n\u003ctable\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003cstrong\u003eMask\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003e\u003cstrong\u003ePurpose\u003c/strong\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003elabels\u003c/td\u003e\u003ctd\u003eUpdates labels\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003econfig.worker_config.num_instances\u003c/td\u003e\u003ctd\u003eResize primary worker group\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003econfig.secondary_worker_config.num_instances\u003c/td\u003e\u003ctd\u003eResize secondary worker group\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003econfig.lifecycle_config.auto_delete_ttl\u003c/td\u003e\u003ctd\u003eReset MAX TTL duration\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003econfig.lifecycle_config.auto_delete_time\u003c/td\u003e\u003ctd\u003eUpdate MAX TTL deletion timestamp\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003econfig.lifecycle_config.idle_delete_ttl\u003c/td\u003e\u003ctd\u003eUpdate Idle TTL duration\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/table\u003e", + "format": "google-fieldmask", + "location": "query", + "type": "string" } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta2/projects/{projectsId}/regions/{regionsId}/clusters/{clustersId}:setIamPolicy", - "path": "v1beta2/{+resource}:setIamPolicy", - "id": "dataproc.projects.regions.clusters.setIamPolicy", - "request": { - "$ref": "SetIamPolicyRequest" - }, - "description": "Sets the access control policy on the specified resource. Replaces any existing policy." - }, - "create": { - "path": "v1beta2/projects/{projectId}/regions/{region}/clusters", - "id": "dataproc.projects.regions.clusters.create", - "description": "Creates a cluster in a project.", + "path": "v1beta2/projects/{projectId}/regions/{region}/clusters/{clusterName}", "request": { "$ref": "Cluster" }, "response": { "$ref": "Operation" }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "setIamPolicy": { + "description": "Sets the access control policy on the specified resource. Replaces any existing policy.", + "flatPath": "v1beta2/projects/{projectsId}/regions/{regionsId}/clusters/{clustersId}:setIamPolicy", + "httpMethod": "POST", + "id": "dataproc.projects.regions.clusters.setIamPolicy", + "parameterOrder": [ + "resource" + ], + "parameters": { + "resource": { + "description": "REQUIRED: The resource for which the policy is being specified. See the operation documentation for the appropriate value for this field.", + "location": "path", + "pattern": "^projects/[^/]+/regions/[^/]+/clusters/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta2/{+resource}:setIamPolicy", + "request": { + "$ref": "SetIamPolicyRequest" + }, + "response": { + "$ref": "Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource. If the resource does not exist, this will return an empty set of permissions, not a NOT_FOUND error.Note: This operation is designed to be used for building permission-aware UIs and command-line tools, not for authorization checking. This operation may \"fail open\" without warning.", + "flatPath": "v1beta2/projects/{projectsId}/regions/{regionsId}/clusters/{clustersId}:testIamPermissions", + "httpMethod": "POST", + "id": "dataproc.projects.regions.clusters.testIamPermissions", + "parameterOrder": [ + "resource" + ], + "parameters": { + "resource": { + "description": "REQUIRED: The resource for which the policy detail is being requested. See the operation documentation for the appropriate value for this field.", + "location": "path", + "pattern": "^projects/[^/]+/regions/[^/]+/clusters/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta2/{+resource}:testIamPermissions", + "request": { + "$ref": "TestIamPermissionsRequest" + }, + "response": { + "$ref": "TestIamPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + }, + "jobs": { + "methods": { + "cancel": { + "description": "Starts a job cancellation request. To access the job resource after cancellation, call regions/{region}/jobs.list or regions/{region}/jobs.get.", + "flatPath": "v1beta2/projects/{projectId}/regions/{region}/jobs/{jobId}:cancel", + "httpMethod": "POST", + "id": "dataproc.projects.regions.jobs.cancel", + "parameterOrder": [ + "projectId", + "region", + "jobId" + ], + "parameters": { + "jobId": { + "description": "Required. The job ID.", + "location": "path", + "required": true, + "type": "string" + }, + "projectId": { + "description": "Required. The ID of the Google Cloud Platform project that the job belongs to.", + "location": "path", + "required": true, + "type": "string" + }, + "region": { + "description": "Required. The Cloud Dataproc region in which to handle the request.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1beta2/projects/{projectId}/regions/{region}/jobs/{jobId}:cancel", + "request": { + "$ref": "CancelJobRequest" + }, + "response": { + "$ref": "Job" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Deletes the job from the project. If the job is active, the delete fails, and the response returns FAILED_PRECONDITION.", + "flatPath": "v1beta2/projects/{projectId}/regions/{region}/jobs/{jobId}", + "httpMethod": "DELETE", + "id": "dataproc.projects.regions.jobs.delete", + "parameterOrder": [ + "projectId", + "region", + "jobId" + ], + "parameters": { + "jobId": { + "description": "Required. The job ID.", + "location": "path", + "required": true, + "type": "string" + }, + "projectId": { + "description": "Required. The ID of the Google Cloud Platform project that the job belongs to.", + "location": "path", + "required": true, + "type": "string" + }, + "region": { + "description": "Required. The Cloud Dataproc region in which to handle the request.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1beta2/projects/{projectId}/regions/{region}/jobs/{jobId}", + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Gets the resource representation for a job in a project.", + "flatPath": "v1beta2/projects/{projectId}/regions/{region}/jobs/{jobId}", + "httpMethod": "GET", + "id": "dataproc.projects.regions.jobs.get", + "parameterOrder": [ + "projectId", + "region", + "jobId" + ], + "parameters": { + "jobId": { + "description": "Required. The job ID.", + "location": "path", + "required": true, + "type": "string" + }, + "projectId": { + "description": "Required. The ID of the Google Cloud Platform project that the job belongs to.", + "location": "path", + "required": true, + "type": "string" + }, + "region": { + "description": "Required. The Cloud Dataproc region in which to handle the request.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1beta2/projects/{projectId}/regions/{region}/jobs/{jobId}", + "response": { + "$ref": "Job" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "getIamPolicy": { + "description": "Gets the access control policy for a resource. Returns an empty policy if the resource exists and does not have a policy set.", + "flatPath": "v1beta2/projects/{projectsId}/regions/{regionsId}/jobs/{jobsId}:getIamPolicy", + "httpMethod": "GET", + "id": "dataproc.projects.regions.jobs.getIamPolicy", + "parameterOrder": [ + "resource" + ], + "parameters": { + "resource": { + "description": "REQUIRED: The resource for which the policy is being requested. See the operation documentation for the appropriate value for this field.", + "location": "path", + "pattern": "^projects/[^/]+/regions/[^/]+/jobs/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta2/{+resource}:getIamPolicy", + "response": { + "$ref": "Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists regions/{region}/jobs in a project.", + "flatPath": "v1beta2/projects/{projectId}/regions/{region}/jobs", + "httpMethod": "GET", + "id": "dataproc.projects.regions.jobs.list", "parameterOrder": [ "projectId", "region" ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], "parameters": { - "region": { - "description": "Required. The Cloud Dataproc region in which to handle the request.", - "required": true, - "type": "string", - "location": "path" + "clusterName": { + "description": "Optional. If set, the returned jobs list includes only jobs that were submitted to the named cluster.", + "location": "query", + "type": "string" + }, + "filter": { + "description": "Optional. A filter constraining the jobs to list. Filters are case-sensitive and have the following syntax:field = value AND field = value ...where field is status.state or labels.[KEY], and [KEY] is a label key. value can be * to match all values. status.state can be either ACTIVE or NON_ACTIVE. Only the logical AND operator is supported; space-separated items are treated as having an implicit AND operator.Example filter:status.state = ACTIVE AND labels.env = staging AND labels.starred = *", + "location": "query", + "type": "string" + }, + "jobStateMatcher": { + "description": "Optional. Specifies enumerated categories of jobs to list. (default = match ALL jobs).If filter is provided, jobStateMatcher will be ignored.", + "enum": [ + "ALL", + "ACTIVE", + "NON_ACTIVE" + ], + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "Optional. The number of results to return in each response.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional. The page token, returned by a previous call, to request the next page of results.", + "location": "query", + "type": "string" }, "projectId": { + "description": "Required. The ID of the Google Cloud Platform project that the job belongs to.", + "location": "path", + "required": true, + "type": "string" + }, + "region": { + "description": "Required. The Cloud Dataproc region in which to handle the request.", "location": "path", - "description": "Required. The ID of the Google Cloud Platform project that the cluster belongs to.", "required": true, "type": "string" } }, - "flatPath": "v1beta2/projects/{projectId}/regions/{region}/clusters" - }, - "getIamPolicy": { + "path": "v1beta2/projects/{projectId}/regions/{region}/jobs", "response": { - "$ref": "Policy" + "$ref": "ListJobsResponse" }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "patch": { + "description": "Updates a job in a project.", + "flatPath": "v1beta2/projects/{projectId}/regions/{region}/jobs/{jobId}", + "httpMethod": "PATCH", + "id": "dataproc.projects.regions.jobs.patch", + "parameterOrder": [ + "projectId", + "region", + "jobId" + ], + "parameters": { + "jobId": { + "description": "Required. The job ID.", + "location": "path", + "required": true, + "type": "string" + }, + "projectId": { + "description": "Required. The ID of the Google Cloud Platform project that the job belongs to.", + "location": "path", + "required": true, + "type": "string" + }, + "region": { + "description": "Required. The Cloud Dataproc region in which to handle the request.", + "location": "path", + "required": true, + "type": "string" + }, + "updateMask": { + "description": "Required. Specifies the path, relative to \u003ccode\u003eJob\u003c/code\u003e, of the field to update. For example, to update the labels of a Job the \u003ccode\u003eupdate_mask\u003c/code\u003e parameter would be specified as \u003ccode\u003elabels\u003c/code\u003e, and the PATCH request body would specify the new value. \u003cstrong\u003eNote:\u003c/strong\u003e Currently, \u003ccode\u003elabels\u003c/code\u003e is the only field that can be updated.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + } + }, + "path": "v1beta2/projects/{projectId}/regions/{region}/jobs/{jobId}", + "request": { + "$ref": "Job" + }, + "response": { + "$ref": "Job" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "setIamPolicy": { + "description": "Sets the access control policy on the specified resource. Replaces any existing policy.", + "flatPath": "v1beta2/projects/{projectsId}/regions/{regionsId}/jobs/{jobsId}:setIamPolicy", + "httpMethod": "POST", + "id": "dataproc.projects.regions.jobs.setIamPolicy", "parameterOrder": [ "resource" ], - "httpMethod": "GET", "parameters": { "resource": { - "description": "REQUIRED: The resource for which the policy is being requested. See the operation documentation for the appropriate value for this field.", + "description": "REQUIRED: The resource for which the policy is being specified. See the operation documentation for the appropriate value for this field.", + "location": "path", + "pattern": "^projects/[^/]+/regions/[^/]+/jobs/[^/]+$", "required": true, - "type": "string", - "pattern": "^projects/[^/]+/regions/[^/]+/clusters/[^/]+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta2/projects/{projectsId}/regions/{regionsId}/clusters/{clustersId}:getIamPolicy", - "path": "v1beta2/{+resource}:getIamPolicy", - "id": "dataproc.projects.regions.clusters.getIamPolicy", - "description": "Gets the access control policy for a resource. Returns an empty policy if the resource exists and does not have a policy set." - } - } - }, - "workflowTemplates": { - "methods": { - "instantiate": { - "request": { - "$ref": "InstantiateWorkflowTemplateRequest" - }, - "description": "Instantiates a template and begins execution.The returned Operation can be used to track execution of workflow by polling google.cloud.dataproc.v1beta2.OperationService.GetOperation. The Operation will complete when entire workflow is finished.The running workflow can be aborted via google.cloud.dataproc.v1beta2.OperationService.CancelOperation.The google.cloud.dataproc.v1beta2.Operation.metadata will always be google.cloud.dataproc.v1beta2.WorkflowMetadata.The google.cloud.dataproc.v1beta2.Operation.result will always be google.protobuf.Empty.", - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "POST", - "parameters": { - "name": { - "description": "Required. The \"resource name\" of the workflow template, as described in https://cloud.google.com/apis/design/resource_names of the form projects/{project_id}/regions/{region}/workflowTemplates/{template_id}", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/regions/[^/]+/workflowTemplates/[^/]+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta2/projects/{projectsId}/regions/{regionsId}/workflowTemplates/{workflowTemplatesId}:instantiate", - "path": "v1beta2/{+name}:instantiate", - "id": "dataproc.projects.regions.workflowTemplates.instantiate" - }, - "instantiateInline": { - "description": "Instantiates a template and begins execution.This method is equivalent to executing the sequence CreateWorkflowTemplate, InstantiateWorkflowTemplate, DeleteWorkflowTemplate.The returned Operation can be used to track execution of workflow by polling google.cloud.dataproc.v1beta2.OperationService.GetOperation. The Operation will complete when entire workflow is finished.The running workflow can be aborted via google.cloud.dataproc.v1beta2.OperationService.CancelOperation.The google.cloud.dataproc.v1beta2.Operation.metadata will always be google.cloud.dataproc.v1beta2.WorkflowMetadata.The google.cloud.dataproc.v1beta2.Operation.result will always be google.protobuf.Empty.", - "request": { - "$ref": "WorkflowTemplate" - }, - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "parent": { - "description": "Required. The \"resource name\" of the workflow template region, as described in https://cloud.google.com/apis/design/resource_names of the form projects/{project_id}/regions/{region}", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/regions/[^/]+$", - "location": "path" - }, - "instanceId": { - "location": "query", - "description": "Optional. A tag that prevents multiple concurrent workflow instances with the same tag from running. This mitigates risk of concurrent instances started due to retries.It is recommended to always set this value to a UUID (https://en.wikipedia.org/wiki/Universally_unique_identifier).The tag must contain only letters (a-z, A-Z), numbers (0-9), underscores (_), and hyphens (-). The maximum length is 40 characters.", "type": "string" } }, - "flatPath": "v1beta2/projects/{projectsId}/regions/{regionsId}/workflowTemplates:instantiateInline", - "path": "v1beta2/{+parent}/workflowTemplates:instantiateInline", - "id": "dataproc.projects.regions.workflowTemplates.instantiateInline" - }, - "get": { - "description": "Retrieves the latest workflow template.Can retrieve previously instantiated template by specifying optional version parameter.", - "httpMethod": "GET", - "response": { - "$ref": "WorkflowTemplate" - }, - "parameterOrder": [ - "name" - ], - "parameters": { - "name": { - "description": "Required. The \"resource name\" of the workflow template, as described in https://cloud.google.com/apis/design/resource_names of the form projects/{project_id}/regions/{region}/workflowTemplates/{template_id}", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/regions/[^/]+/workflowTemplates/[^/]+$", - "location": "path" - }, - "version": { - "description": "Optional. The version of workflow template to retrieve. Only previously instatiated versions can be retrieved.If unspecified, retrieves the current version.", - "format": "int32", - "type": "integer", - "location": "query" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta2/projects/{projectsId}/regions/{regionsId}/workflowTemplates/{workflowTemplatesId}", - "id": "dataproc.projects.regions.workflowTemplates.get", - "path": "v1beta2/{+name}" - }, - "update": { - "response": { - "$ref": "WorkflowTemplate" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "PUT", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "name": { - "location": "path", - "description": "Output only. The \"resource name\" of the template, as described in https://cloud.google.com/apis/design/resource_names of the form projects/{project_id}/regions/{region}/workflowTemplates/{template_id}", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/regions/[^/]+/workflowTemplates/[^/]+$" - } - }, - "flatPath": "v1beta2/projects/{projectsId}/regions/{regionsId}/workflowTemplates/{workflowTemplatesId}", - "path": "v1beta2/{+name}", - "id": "dataproc.projects.regions.workflowTemplates.update", - "description": "Updates (replaces) workflow template. The updated template must contain version that matches the current server version.", + "path": "v1beta2/{+resource}:setIamPolicy", "request": { - "$ref": "WorkflowTemplate" - } - }, - "delete": { - "httpMethod": "DELETE", - "parameterOrder": [ - "name" - ], - "response": { - "$ref": "Empty" + "$ref": "SetIamPolicyRequest" }, - "parameters": { - "name": { - "pattern": "^projects/[^/]+/regions/[^/]+/workflowTemplates/[^/]+$", - "location": "path", - "description": "Required. The \"resource name\" of the workflow template, as described in https://cloud.google.com/apis/design/resource_names of the form projects/{project_id}/regions/{region}/workflowTemplates/{template_id}", - "required": true, - "type": "string" - }, - "version": { - "location": "query", - "description": "Optional. The version of workflow template to delete. If specified, will only delete the template if the current server version matches specified version.", - "format": "int32", - "type": "integer" - } + "response": { + "$ref": "Policy" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta2/projects/{projectsId}/regions/{regionsId}/workflowTemplates/{workflowTemplatesId}", - "id": "dataproc.projects.regions.workflowTemplates.delete", - "path": "v1beta2/{+name}", - "description": "Deletes a workflow template. It does not cancel in-progress workflows." + ] }, - "list": { - "response": { - "$ref": "ListWorkflowTemplatesResponse" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "pageSize": { - "location": "query", - "description": "Optional. The maximum number of results to return in each response.", - "format": "int32", - "type": "integer" - }, - "parent": { - "location": "path", - "description": "Required. The \"resource name\" of the region, as described in https://cloud.google.com/apis/design/resource_names of the form projects/{project_id}/regions/{region}", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/regions/[^/]+$" - }, - "pageToken": { - "location": "query", - "description": "Optional. The page token, returned by a previous call, to request the next page of results.", - "type": "string" - } - }, - "flatPath": "v1beta2/projects/{projectsId}/regions/{regionsId}/workflowTemplates", - "path": "v1beta2/{+parent}/workflowTemplates", - "id": "dataproc.projects.regions.workflowTemplates.list", - "description": "Lists workflows that match the specified filter in the request." - }, - "create": { - "request": { - "$ref": "WorkflowTemplate" - }, - "description": "Creates new workflow template.", + "submit": { + "description": "Submits a job to a cluster.", + "flatPath": "v1beta2/projects/{projectId}/regions/{region}/jobs:submit", "httpMethod": "POST", + "id": "dataproc.projects.regions.jobs.submit", "parameterOrder": [ - "parent" + "projectId", + "region" ], - "response": { - "$ref": "WorkflowTemplate" - }, "parameters": { - "parent": { - "description": "Required. The \"resource name\" of the region, as described in https://cloud.google.com/apis/design/resource_names of the form projects/{project_id}/regions/{region}", + "projectId": { + "description": "Required. The ID of the Google Cloud Platform project that the job belongs to.", + "location": "path", "required": true, - "type": "string", - "pattern": "^projects/[^/]+/regions/[^/]+$", - "location": "path" + "type": "string" + }, + "region": { + "description": "Required. The Cloud Dataproc region in which to handle the request.", + "location": "path", + "required": true, + "type": "string" } }, + "path": "v1beta2/projects/{projectId}/regions/{region}/jobs:submit", + "request": { + "$ref": "SubmitJobRequest" + }, + "response": { + "$ref": "Job" + }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource. If the resource does not exist, this will return an empty set of permissions, not a NOT_FOUND error.Note: This operation is designed to be used for building permission-aware UIs and command-line tools, not for authorization checking. This operation may \"fail open\" without warning.", + "flatPath": "v1beta2/projects/{projectsId}/regions/{regionsId}/jobs/{jobsId}:testIamPermissions", + "httpMethod": "POST", + "id": "dataproc.projects.regions.jobs.testIamPermissions", + "parameterOrder": [ + "resource" ], - "flatPath": "v1beta2/projects/{projectsId}/regions/{regionsId}/workflowTemplates", - "id": "dataproc.projects.regions.workflowTemplates.create", - "path": "v1beta2/{+parent}/workflowTemplates" + "parameters": { + "resource": { + "description": "REQUIRED: The resource for which the policy detail is being requested. See the operation documentation for the appropriate value for this field.", + "location": "path", + "pattern": "^projects/[^/]+/regions/[^/]+/jobs/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta2/{+resource}:testIamPermissions", + "request": { + "$ref": "TestIamPermissionsRequest" + }, + "response": { + "$ref": "TestIamPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] } } }, "operations": { "methods": { "cancel": { - "flatPath": "v1beta2/projects/{projectsId}/regions/{regionsId}/operations/{operationsId}:cancel", - "path": "v1beta2/{+name}:cancel", - "id": "dataproc.projects.regions.operations.cancel", "description": "Starts asynchronous cancellation on a long-running operation. The server makes a best effort to cancel the operation, but success is not guaranteed. If the server doesn't support this method, it returns google.rpc.Code.UNIMPLEMENTED. Clients can use Operations.GetOperation or other methods to check whether the cancellation succeeded or whether the operation completed despite cancellation. On successful cancellation, the operation is not deleted; instead, it becomes an operation with an Operation.error value with a google.rpc.Status.code of 1, corresponding to Code.CANCELLED.", - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "name" - ], + "flatPath": "v1beta2/projects/{projectsId}/regions/{regionsId}/operations/{operationsId}:cancel", "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "name": { - "location": "path", - "description": "The name of the operation resource to be cancelled.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/regions/[^/]+/operations/[^/]+$" - } - } - }, - "delete": { - "description": "Deletes a long-running operation. This method indicates that the client is no longer interested in the operation result. It does not cancel the operation. If the server doesn't support this method, it returns google.rpc.Code.UNIMPLEMENTED.", - "response": { - "$ref": "Empty" - }, + "id": "dataproc.projects.regions.operations.cancel", "parameterOrder": [ "name" ], - "httpMethod": "DELETE", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], "parameters": { "name": { - "pattern": "^projects/[^/]+/regions/[^/]+/operations/[^/]+$", + "description": "The name of the operation resource to be cancelled.", "location": "path", - "description": "The name of the operation resource to be deleted.", + "pattern": "^projects/[^/]+/regions/[^/]+/operations/[^/]+$", "required": true, "type": "string" } }, - "flatPath": "v1beta2/projects/{projectsId}/regions/{regionsId}/operations/{operationsId}", - "path": "v1beta2/{+name}", - "id": "dataproc.projects.regions.operations.delete" - }, - "list": { - "httpMethod": "GET", - "parameterOrder": [ - "name" - ], + "path": "v1beta2/{+name}:cancel", "response": { - "$ref": "ListOperationsResponse" - }, - "parameters": { - "filter": { - "description": "The standard list filter.", - "type": "string", - "location": "query" - }, - "name": { - "location": "path", - "description": "The name of the operation's parent resource.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/regions/[^/]+/operations$" - }, - "pageToken": { - "description": "The standard list page token.", - "type": "string", - "location": "query" - }, - "pageSize": { - "location": "query", - "description": "The standard list page size.", - "format": "int32", - "type": "integer" - } + "$ref": "Empty" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Deletes a long-running operation. This method indicates that the client is no longer interested in the operation result. It does not cancel the operation. If the server doesn't support this method, it returns google.rpc.Code.UNIMPLEMENTED.", + "flatPath": "v1beta2/projects/{projectsId}/regions/{regionsId}/operations/{operationsId}", + "httpMethod": "DELETE", + "id": "dataproc.projects.regions.operations.delete", + "parameterOrder": [ + "name" ], - "flatPath": "v1beta2/projects/{projectsId}/regions/{regionsId}/operations", - "id": "dataproc.projects.regions.operations.list", + "parameters": { + "name": { + "description": "The name of the operation resource to be deleted.", + "location": "path", + "pattern": "^projects/[^/]+/regions/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + } + }, "path": "v1beta2/{+name}", - "description": "Lists operations that match the specified filter in the request. If the server doesn't support this method, it returns UNIMPLEMENTED.NOTE: the name binding allows API services to override the binding to use different resource name schemes, such as users/*/operations. To override the binding, API services can add a binding such as \"/v1/{name=users/*}/operations\" to their service configuration. For backwards compatibility, the default name includes the operations collection id, however overriding users must ensure the name binding is the parent resource, without the operations collection id." + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] }, "get": { "description": "Gets the latest state of a long-running operation. Clients can use this method to poll the operation result at intervals as recommended by the API service.", + "flatPath": "v1beta2/projects/{projectsId}/regions/{regionsId}/operations/{operationsId}", "httpMethod": "GET", - "response": { - "$ref": "Operation" - }, + "id": "dataproc.projects.regions.operations.get", "parameterOrder": [ "name" ], "parameters": { "name": { "description": "The name of the operation resource.", - "required": true, - "type": "string", + "location": "path", "pattern": "^projects/[^/]+/regions/[^/]+/operations/[^/]+$", - "location": "path" + "required": true, + "type": "string" } }, + "path": "v1beta2/{+name}", + "response": { + "$ref": "Operation" + }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "getIamPolicy": { + "description": "Gets the access control policy for a resource. Returns an empty policy if the resource exists and does not have a policy set.", + "flatPath": "v1beta2/projects/{projectsId}/regions/{regionsId}/operations/{operationsId}:getIamPolicy", + "httpMethod": "GET", + "id": "dataproc.projects.regions.operations.getIamPolicy", + "parameterOrder": [ + "resource" ], - "flatPath": "v1beta2/projects/{projectsId}/regions/{regionsId}/operations/{operationsId}", - "id": "dataproc.projects.regions.operations.get", - "path": "v1beta2/{+name}" + "parameters": { + "resource": { + "description": "REQUIRED: The resource for which the policy is being requested. See the operation documentation for the appropriate value for this field.", + "location": "path", + "pattern": "^projects/[^/]+/regions/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta2/{+resource}:getIamPolicy", + "response": { + "$ref": "Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists operations that match the specified filter in the request. If the server doesn't support this method, it returns UNIMPLEMENTED.NOTE: the name binding allows API services to override the binding to use different resource name schemes, such as users/*/operations. To override the binding, API services can add a binding such as \"/v1/{name=users/*}/operations\" to their service configuration. For backwards compatibility, the default name includes the operations collection id, however overriding users must ensure the name binding is the parent resource, without the operations collection id.", + "flatPath": "v1beta2/projects/{projectsId}/regions/{regionsId}/operations", + "httpMethod": "GET", + "id": "dataproc.projects.regions.operations.list", + "parameterOrder": [ + "name" + ], + "parameters": { + "filter": { + "description": "The standard list filter.", + "location": "query", + "type": "string" + }, + "name": { + "description": "The name of the operation's parent resource.", + "location": "path", + "pattern": "^projects/[^/]+/regions/[^/]+/operations$", + "required": true, + "type": "string" + }, + "pageSize": { + "description": "The standard list page size.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "The standard list page token.", + "location": "query", + "type": "string" + } + }, + "path": "v1beta2/{+name}", + "response": { + "$ref": "ListOperationsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "setIamPolicy": { + "description": "Sets the access control policy on the specified resource. Replaces any existing policy.", + "flatPath": "v1beta2/projects/{projectsId}/regions/{regionsId}/operations/{operationsId}:setIamPolicy", + "httpMethod": "POST", + "id": "dataproc.projects.regions.operations.setIamPolicy", + "parameterOrder": [ + "resource" + ], + "parameters": { + "resource": { + "description": "REQUIRED: The resource for which the policy is being specified. See the operation documentation for the appropriate value for this field.", + "location": "path", + "pattern": "^projects/[^/]+/regions/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta2/{+resource}:setIamPolicy", + "request": { + "$ref": "SetIamPolicyRequest" + }, + "response": { + "$ref": "Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource. If the resource does not exist, this will return an empty set of permissions, not a NOT_FOUND error.Note: This operation is designed to be used for building permission-aware UIs and command-line tools, not for authorization checking. This operation may \"fail open\" without warning.", + "flatPath": "v1beta2/projects/{projectsId}/regions/{regionsId}/operations/{operationsId}:testIamPermissions", + "httpMethod": "POST", + "id": "dataproc.projects.regions.operations.testIamPermissions", + "parameterOrder": [ + "resource" + ], + "parameters": { + "resource": { + "description": "REQUIRED: The resource for which the policy detail is being requested. See the operation documentation for the appropriate value for this field.", + "location": "path", + "pattern": "^projects/[^/]+/regions/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta2/{+resource}:testIamPermissions", + "request": { + "$ref": "TestIamPermissionsRequest" + }, + "response": { + "$ref": "TestIamPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + }, + "workflowTemplates": { + "methods": { + "create": { + "description": "Creates new workflow template.", + "flatPath": "v1beta2/projects/{projectsId}/regions/{regionsId}/workflowTemplates", + "httpMethod": "POST", + "id": "dataproc.projects.regions.workflowTemplates.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. The \"resource name\" of the region, as described in https://cloud.google.com/apis/design/resource_names of the form projects/{project_id}/regions/{region}", + "location": "path", + "pattern": "^projects/[^/]+/regions/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta2/{+parent}/workflowTemplates", + "request": { + "$ref": "WorkflowTemplate" + }, + "response": { + "$ref": "WorkflowTemplate" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Deletes a workflow template. It does not cancel in-progress workflows.", + "flatPath": "v1beta2/projects/{projectsId}/regions/{regionsId}/workflowTemplates/{workflowTemplatesId}", + "httpMethod": "DELETE", + "id": "dataproc.projects.regions.workflowTemplates.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The \"resource name\" of the workflow template, as described in https://cloud.google.com/apis/design/resource_names of the form projects/{project_id}/regions/{region}/workflowTemplates/{template_id}", + "location": "path", + "pattern": "^projects/[^/]+/regions/[^/]+/workflowTemplates/[^/]+$", + "required": true, + "type": "string" + }, + "version": { + "description": "Optional. The version of workflow template to delete. If specified, will only delete the template if the current server version matches specified version.", + "format": "int32", + "location": "query", + "type": "integer" + } + }, + "path": "v1beta2/{+name}", + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Retrieves the latest workflow template.Can retrieve previously instantiated template by specifying optional version parameter.", + "flatPath": "v1beta2/projects/{projectsId}/regions/{regionsId}/workflowTemplates/{workflowTemplatesId}", + "httpMethod": "GET", + "id": "dataproc.projects.regions.workflowTemplates.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The \"resource name\" of the workflow template, as described in https://cloud.google.com/apis/design/resource_names of the form projects/{project_id}/regions/{region}/workflowTemplates/{template_id}", + "location": "path", + "pattern": "^projects/[^/]+/regions/[^/]+/workflowTemplates/[^/]+$", + "required": true, + "type": "string" + }, + "version": { + "description": "Optional. The version of workflow template to retrieve. Only previously instatiated versions can be retrieved.If unspecified, retrieves the current version.", + "format": "int32", + "location": "query", + "type": "integer" + } + }, + "path": "v1beta2/{+name}", + "response": { + "$ref": "WorkflowTemplate" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "getIamPolicy": { + "description": "Gets the access control policy for a resource. Returns an empty policy if the resource exists and does not have a policy set.", + "flatPath": "v1beta2/projects/{projectsId}/regions/{regionsId}/workflowTemplates/{workflowTemplatesId}:getIamPolicy", + "httpMethod": "GET", + "id": "dataproc.projects.regions.workflowTemplates.getIamPolicy", + "parameterOrder": [ + "resource" + ], + "parameters": { + "resource": { + "description": "REQUIRED: The resource for which the policy is being requested. See the operation documentation for the appropriate value for this field.", + "location": "path", + "pattern": "^projects/[^/]+/regions/[^/]+/workflowTemplates/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta2/{+resource}:getIamPolicy", + "response": { + "$ref": "Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "instantiate": { + "description": "Instantiates a template and begins execution.The returned Operation can be used to track execution of workflow by polling operations.get. The Operation will complete when entire workflow is finished.The running workflow can be aborted via operations.cancel. This will cause any inflight jobs to be cancelled and workflow-owned clusters to be deleted.The Operation.metadata will be WorkflowMetadata.On successful completion, Operation.response will be Empty.", + "flatPath": "v1beta2/projects/{projectsId}/regions/{regionsId}/workflowTemplates/{workflowTemplatesId}:instantiate", + "httpMethod": "POST", + "id": "dataproc.projects.regions.workflowTemplates.instantiate", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The \"resource name\" of the workflow template, as described in https://cloud.google.com/apis/design/resource_names of the form projects/{project_id}/regions/{region}/workflowTemplates/{template_id}", + "location": "path", + "pattern": "^projects/[^/]+/regions/[^/]+/workflowTemplates/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta2/{+name}:instantiate", + "request": { + "$ref": "InstantiateWorkflowTemplateRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "instantiateInline": { + "description": "Instantiates a template and begins execution.This method is equivalent to executing the sequence CreateWorkflowTemplate, InstantiateWorkflowTemplate, DeleteWorkflowTemplate.The returned Operation can be used to track execution of workflow by polling operations.get. The Operation will complete when entire workflow is finished.The running workflow can be aborted via operations.cancel. This will cause any inflight jobs to be cancelled and workflow-owned clusters to be deleted.The Operation.metadata will be WorkflowMetadata.On successful completion, Operation.response will be Empty.", + "flatPath": "v1beta2/projects/{projectsId}/regions/{regionsId}/workflowTemplates:instantiateInline", + "httpMethod": "POST", + "id": "dataproc.projects.regions.workflowTemplates.instantiateInline", + "parameterOrder": [ + "parent" + ], + "parameters": { + "instanceId": { + "description": "Optional. A tag that prevents multiple concurrent workflow instances with the same tag from running. This mitigates risk of concurrent instances started due to retries.It is recommended to always set this value to a UUID (https://en.wikipedia.org/wiki/Universally_unique_identifier).The tag must contain only letters (a-z, A-Z), numbers (0-9), underscores (_), and hyphens (-). The maximum length is 40 characters.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The \"resource name\" of the workflow template region, as described in https://cloud.google.com/apis/design/resource_names of the form projects/{project_id}/regions/{region}", + "location": "path", + "pattern": "^projects/[^/]+/regions/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta2/{+parent}/workflowTemplates:instantiateInline", + "request": { + "$ref": "WorkflowTemplate" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists workflows that match the specified filter in the request.", + "flatPath": "v1beta2/projects/{projectsId}/regions/{regionsId}/workflowTemplates", + "httpMethod": "GET", + "id": "dataproc.projects.regions.workflowTemplates.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "pageSize": { + "description": "Optional. The maximum number of results to return in each response.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional. The page token, returned by a previous call, to request the next page of results.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The \"resource name\" of the region, as described in https://cloud.google.com/apis/design/resource_names of the form projects/{project_id}/regions/{region}", + "location": "path", + "pattern": "^projects/[^/]+/regions/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta2/{+parent}/workflowTemplates", + "response": { + "$ref": "ListWorkflowTemplatesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "setIamPolicy": { + "description": "Sets the access control policy on the specified resource. Replaces any existing policy.", + "flatPath": "v1beta2/projects/{projectsId}/regions/{regionsId}/workflowTemplates/{workflowTemplatesId}:setIamPolicy", + "httpMethod": "POST", + "id": "dataproc.projects.regions.workflowTemplates.setIamPolicy", + "parameterOrder": [ + "resource" + ], + "parameters": { + "resource": { + "description": "REQUIRED: The resource for which the policy is being specified. See the operation documentation for the appropriate value for this field.", + "location": "path", + "pattern": "^projects/[^/]+/regions/[^/]+/workflowTemplates/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta2/{+resource}:setIamPolicy", + "request": { + "$ref": "SetIamPolicyRequest" + }, + "response": { + "$ref": "Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource. If the resource does not exist, this will return an empty set of permissions, not a NOT_FOUND error.Note: This operation is designed to be used for building permission-aware UIs and command-line tools, not for authorization checking. This operation may \"fail open\" without warning.", + "flatPath": "v1beta2/projects/{projectsId}/regions/{regionsId}/workflowTemplates/{workflowTemplatesId}:testIamPermissions", + "httpMethod": "POST", + "id": "dataproc.projects.regions.workflowTemplates.testIamPermissions", + "parameterOrder": [ + "resource" + ], + "parameters": { + "resource": { + "description": "REQUIRED: The resource for which the policy detail is being requested. See the operation documentation for the appropriate value for this field.", + "location": "path", + "pattern": "^projects/[^/]+/regions/[^/]+/workflowTemplates/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta2/{+resource}:testIamPermissions", + "request": { + "$ref": "TestIamPermissionsRequest" + }, + "response": { + "$ref": "TestIamPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "update": { + "description": "Updates (replaces) workflow template. The updated template must contain version that matches the current server version.", + "flatPath": "v1beta2/projects/{projectsId}/regions/{regionsId}/workflowTemplates/{workflowTemplatesId}", + "httpMethod": "PUT", + "id": "dataproc.projects.regions.workflowTemplates.update", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Output only. The \"resource name\" of the template, as described in https://cloud.google.com/apis/design/resource_names of the form projects/{project_id}/regions/{region}/workflowTemplates/{template_id}", + "location": "path", + "pattern": "^projects/[^/]+/regions/[^/]+/workflowTemplates/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta2/{+name}", + "request": { + "$ref": "WorkflowTemplate" + }, + "response": { + "$ref": "WorkflowTemplate" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] } } } @@ -1179,127 +1630,265 @@ } } }, - "parameters": { - "upload_protocol": { - "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", - "type": "string", - "location": "query" - }, - "prettyPrint": { - "description": "Returns response with indentations and line breaks.", - "type": "boolean", - "default": "true", - "location": "query" - }, - "fields": { - "location": "query", - "description": "Selector specifying which fields to include in a partial response.", - "type": "string" - }, - "uploadType": { - "location": "query", - "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", - "type": "string" - }, - "callback": { - "description": "JSONP", - "type": "string", - "location": "query" - }, - "$.xgafv": { - "enum": [ - "1", - "2" - ], - "description": "V1 error format.", - "type": "string", - "enumDescriptions": [ - "v1 error format", - "v2 error format" - ], - "location": "query" - }, - "alt": { - "type": "string", - "enumDescriptions": [ - "Responses with Content-Type of application/json", - "Media download with context-dependent Content-Type", - "Responses with Content-Type of application/x-protobuf" - ], - "location": "query", - "description": "Data format for response.", - "default": "json", - "enum": [ - "json", - "media", - "proto" - ] - }, - "key": { - "location": "query", - "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.", - "type": "string" - }, - "access_token": { - "description": "OAuth access token.", - "type": "string", - "location": "query" - }, - "quotaUser": { - "location": "query", - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", - "type": "string" - }, - "pp": { - "location": "query", - "description": "Pretty-print response.", - "type": "boolean", - "default": "true" - }, - "bearer_token": { - "description": "OAuth bearer token.", - "type": "string", - "location": "query" - }, - "oauth_token": { - "description": "OAuth 2.0 token for the current user.", - "type": "string", - "location": "query" - } - }, - "version": "v1beta2", - "baseUrl": "https://dataproc.googleapis.com/", - "kind": "discovery#restDescription", - "description": "Manages Hadoop-based clusters and jobs on Google Cloud Platform.", - "servicePath": "", - "basePath": "", - "revision": "20180109", - "documentationLink": "https://cloud.google.com/dataproc/", - "id": "dataproc:v1beta2", - "discoveryVersion": "v1", - "version_module": true, + "revision": "20180320", + "rootUrl": "https://dataproc.googleapis.com/", "schemas": { - "SoftwareConfig": { - "description": "Specifies the selection and config of software inside the cluster.", - "type": "object", + "AcceleratorConfig": { + "description": "Specifies the type and number of accelerator cards attached to the instances of an instance group (see GPUs on Compute Engine).", + "id": "AcceleratorConfig", "properties": { - "properties": { - "description": "Optional. The properties to set on daemon config files.Property keys are specified in prefix:property format, such as core:fs.defaultFS. The following are supported prefixes and their mappings:\ncapacity-scheduler: capacity-scheduler.xml\ncore: core-site.xml\ndistcp: distcp-default.xml\nhdfs: hdfs-site.xml\nhive: hive-site.xml\nmapred: mapred-site.xml\npig: pig.properties\nspark: spark-defaults.conf\nyarn: yarn-site.xmlFor more information, see Cluster properties.", - "type": "object", - "additionalProperties": { - "type": "string" - } + "acceleratorCount": { + "description": "The number of the accelerator cards of this type exposed to this instance.", + "format": "int32", + "type": "integer" }, - "imageVersion": { - "description": "Optional. The version of software inside the cluster. It must match the regular expression [0-9]+\\.[0-9]+. If unspecified, it defaults to the latest version (see Cloud Dataproc Versioning).", + "acceleratorTypeUri": { + "description": "Full URL, partial URI, or short name of the accelerator type resource to expose to this instance. See Compute Engine AcceleratorTypes( /compute/docs/reference/beta/acceleratorTypes)Examples * https://www.googleapis.com/compute/beta/projects/[project_id]/zones/us-east1-a/acceleratorTypes/nvidia-tesla-k80 * projects/[project_id]/zones/us-east1-a/acceleratorTypes/nvidia-tesla-k80 * nvidia-tesla-k80", "type": "string" } }, - "id": "SoftwareConfig" + "type": "object" + }, + "Binding": { + "description": "Associates members with a role.", + "id": "Binding", + "properties": { + "members": { + "description": "Specifies the identities requesting access for a Cloud Platform resource. members can have the following values:\nallUsers: A special identifier that represents anyone who is on the internet; with or without a Google account.\nallAuthenticatedUsers: A special identifier that represents anyone who is authenticated with a Google account or a service account.\nuser:{emailid}: An email address that represents a specific Google account. For example, alice@gmail.com or joe@example.com.\nserviceAccount:{emailid}: An email address that represents a service account. For example, my-other-app@appspot.gserviceaccount.com.\ngroup:{emailid}: An email address that represents a Google group. For example, admins@example.com.\ndomain:{domain}: A Google Apps domain name that represents all the users of that domain. For example, google.com or example.com.", + "items": { + "type": "string" + }, + "type": "array" + }, + "role": { + "description": "Role that is assigned to members. For example, roles/viewer, roles/editor, or roles/owner. Required", + "type": "string" + } + }, + "type": "object" + }, + "CancelJobRequest": { + "description": "A request to cancel a job.", + "id": "CancelJobRequest", + "properties": {}, + "type": "object" + }, + "Cluster": { + "description": "Describes the identifying information, config, and status of a cluster of Compute Engine instances.", + "id": "Cluster", + "properties": { + "clusterName": { + "description": "Required. The cluster name. Cluster names within a project must be unique. Names of deleted clusters can be reused.", + "type": "string" + }, + "clusterUuid": { + "description": "Output only. A cluster UUID (Unique Universal Identifier). Cloud Dataproc generates this value when it creates the cluster.", + "type": "string" + }, + "config": { + "$ref": "ClusterConfig", + "description": "Required. The cluster config. Note that Cloud Dataproc may set default values, and values may change when clusters are updated." + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Optional. The labels to associate with this cluster. Label keys must contain 1 to 63 characters, and must conform to RFC 1035 (https://www.ietf.org/rfc/rfc1035.txt). Label values may be empty, but, if present, must contain 1 to 63 characters, and must conform to RFC 1035 (https://www.ietf.org/rfc/rfc1035.txt). No more than 32 labels can be associated with a cluster.", + "type": "object" + }, + "metrics": { + "$ref": "ClusterMetrics", + "description": "Contains cluster daemon metrics such as HDFS and YARN stats.Beta Feature: This report is available for testing purposes only. It may be changed before final release." + }, + "projectId": { + "description": "Required. The Google Cloud Platform project ID that the cluster belongs to.", + "type": "string" + }, + "status": { + "$ref": "ClusterStatus", + "description": "Output only. Cluster status." + }, + "statusHistory": { + "description": "Output only. The previous cluster status.", + "items": { + "$ref": "ClusterStatus" + }, + "type": "array" + } + }, + "type": "object" + }, + "ClusterConfig": { + "description": "The cluster config.", + "id": "ClusterConfig", + "properties": { + "configBucket": { + "description": "Optional. A Cloud Storage staging bucket used for sharing generated SSH keys and config. If you do not specify a staging bucket, Cloud Dataproc will determine an appropriate Cloud Storage location (US, ASIA, or EU) for your cluster's staging bucket according to the Google Compute Engine zone where your cluster is deployed, and then it will create and manage this project-level, per-location bucket for you.", + "type": "string" + }, + "gceClusterConfig": { + "$ref": "GceClusterConfig", + "description": "Required. The shared Compute Engine config settings for all instances in a cluster." + }, + "initializationActions": { + "description": "Optional. Commands to execute on each node after config is completed. By default, executables are run on master and all worker nodes. You can test a node's \u003ccode\u003erole\u003c/code\u003e metadata to run an executable on a master or worker node, as shown below using curl (you can also use wget):\nROLE=$(curl -H Metadata-Flavor:Google http://metadata/computeMetadata/v1beta2/instance/attributes/dataproc-role)\nif [[ \"${ROLE}\" == 'Master' ]]; then\n ... master specific actions ...\nelse\n ... worker specific actions ...\nfi\n", + "items": { + "$ref": "NodeInitializationAction" + }, + "type": "array" + }, + "lifecycleConfig": { + "$ref": "LifecycleConfig", + "description": "Optional. The config setting for auto delete cluster schedule." + }, + "masterConfig": { + "$ref": "InstanceGroupConfig", + "description": "Optional. The Compute Engine config settings for the master instance in a cluster." + }, + "secondaryWorkerConfig": { + "$ref": "InstanceGroupConfig", + "description": "Optional. The Compute Engine config settings for additional worker instances in a cluster." + }, + "softwareConfig": { + "$ref": "SoftwareConfig", + "description": "Optional. The config settings for software inside the cluster." + }, + "workerConfig": { + "$ref": "InstanceGroupConfig", + "description": "Optional. The Compute Engine config settings for worker instances in a cluster." + } + }, + "type": "object" + }, + "ClusterMetrics": { + "description": "Contains cluster daemon metrics, such as HDFS and YARN stats.Beta Feature: This report is available for testing purposes only. It may be changed before final release.", + "id": "ClusterMetrics", + "properties": { + "hdfsMetrics": { + "additionalProperties": { + "format": "int64", + "type": "string" + }, + "description": "The HDFS metrics.", + "type": "object" + }, + "yarnMetrics": { + "additionalProperties": { + "format": "int64", + "type": "string" + }, + "description": "The YARN metrics.", + "type": "object" + } + }, + "type": "object" + }, + "ClusterOperation": { + "description": "The cluster operation triggered by a workflow.", + "id": "ClusterOperation", + "properties": { + "done": { + "description": "Output only. Indicates the operation is done.", + "type": "boolean" + }, + "error": { + "description": "Output only. Error, if operation failed.", + "type": "string" + }, + "operationId": { + "description": "Output only. The id of the cluster operation.", + "type": "string" + } + }, + "type": "object" + }, + "ClusterOperationMetadata": { + "description": "Metadata describing the operation.", + "id": "ClusterOperationMetadata", + "properties": { + "clusterName": { + "description": "Output only. Name of the cluster for the operation.", + "type": "string" + }, + "clusterUuid": { + "description": "Output only. Cluster UUID for the operation.", + "type": "string" + }, + "description": { + "description": "Output only. Short description of operation.", + "type": "string" + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Output only. Labels associated with the operation", + "type": "object" + }, + "operationType": { + "description": "Output only. The operation type.", + "type": "string" + }, + "status": { + "$ref": "ClusterOperationStatus", + "description": "Output only. Current operation status." + }, + "statusHistory": { + "description": "Output only. The previous operation status.", + "items": { + "$ref": "ClusterOperationStatus" + }, + "type": "array" + }, + "warnings": { + "description": "Output only. Errors encountered during operation execution.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "ClusterOperationStatus": { + "description": "The status of the operation.", + "id": "ClusterOperationStatus", + "properties": { + "details": { + "description": "Output only. A message containing any operation metadata details.", + "type": "string" + }, + "innerState": { + "description": "Output only. A message containing the detailed operation state.", + "type": "string" + }, + "state": { + "description": "Output only. A message containing the operation state.", + "enum": [ + "UNKNOWN", + "PENDING", + "RUNNING", + "DONE" + ], + "enumDescriptions": [ + "Unused.", + "The operation has been created.", + "The operation is running.", + "The operation is done; either cancelled or completed." + ], + "type": "string" + }, + "stateStartTime": { + "description": "Output only. The time this state was entered.", + "format": "google-datetime", + "type": "string" + } + }, + "type": "object" }, "ClusterSelector": { "description": "A selector that chooses target cluster for jobs based on metadata.", - "type": "object", + "id": "ClusterSelector", "properties": { "clusterLabels": { "additionalProperties": { @@ -1313,690 +1902,18 @@ "type": "string" } }, - "id": "ClusterSelector" - }, - "WorkflowTemplatePlacement": { - "description": "Specifies workflow execution target.Either managed_cluster or cluster_selector is required.", - "type": "object", - "properties": { - "clusterSelector": { - "$ref": "ClusterSelector", - "description": "Optional. A selector that chooses target cluster for jobs based on metadata.The selector is evaluated at the time each job is submitted." - }, - "managedCluster": { - "description": "Optional. A cluster that is managed by the workflow.", - "$ref": "ManagedCluster" - } - }, - "id": "WorkflowTemplatePlacement" - }, - "ClusterOperation": { - "description": "The cluster operation triggered by a workflow.", - "type": "object", - "properties": { - "operationId": { - "description": "Output only. The id of the cluster operation.", - "type": "string" - }, - "error": { - "description": "Output only. Error, if operation failed.", - "type": "string" - }, - "done": { - "description": "Output only. Indicates the operation is done.", - "type": "boolean" - } - }, - "id": "ClusterOperation" - }, - "WorkflowMetadata": { - "description": "A Cloud Dataproc workflow template resource.", - "type": "object", - "properties": { - "deleteCluster": { - "description": "Output only. The delete cluster operation metadata.", - "$ref": "ClusterOperation" - }, - "state": { - "enum": [ - "UNKNOWN", - "PENDING", - "RUNNING", - "DONE" - ], - "description": "Output only. The workflow state.", - "type": "string", - "enumDescriptions": [ - "Unused.", - "The operation has been created.", - "The operation is running.", - "The operation is done; either cancelled or completed." - ] - }, - "clusterName": { - "description": "Output only. The name of the managed cluster.", - "type": "string" - }, - "createCluster": { - "description": "Output only. The create cluster operation metadata.", - "$ref": "ClusterOperation" - }, - "graph": { - "description": "Output only. The workflow graph.", - "$ref": "WorkflowGraph" - }, - "version": { - "description": "Output only. The version of template at the time of workflow instantiation.", - "format": "int32", - "type": "integer" - }, - "template": { - "description": "Output only. The \"resource name\" of the template.", - "type": "string" - } - }, - "id": "WorkflowMetadata" - }, - "SparkJob": { - "description": "A Cloud Dataproc job for running Apache Spark (http://spark.apache.org/) applications on YARN.", - "type": "object", - "properties": { - "mainClass": { - "description": "The name of the driver's main class. The jar file that contains the class must be in the default CLASSPATH or specified in jar_file_uris.", - "type": "string" - }, - "archiveUris": { - "description": "Optional. HCFS URIs of archives to be extracted in the working directory of Spark drivers and tasks. Supported file types: .jar, .tar, .tar.gz, .tgz, and .zip.", - "type": "array", - "items": { - "type": "string" - } - }, - "mainJarFileUri": { - "description": "The HCFS URI of the jar file that contains the main class.", - "type": "string" - }, - "jarFileUris": { - "description": "Optional. HCFS URIs of jar files to add to the CLASSPATHs of the Spark driver and tasks.", - "type": "array", - "items": { - "type": "string" - } - }, - "loggingConfig": { - "$ref": "LoggingConfig", - "description": "Optional. The runtime log config for job execution." - }, - "properties": { - "description": "Optional. A mapping of property names to values, used to configure Spark. Properties that conflict with values set by the Cloud Dataproc API may be overwritten. Can include properties set in /etc/spark/conf/spark-defaults.conf and classes in user code.", - "type": "object", - "additionalProperties": { - "type": "string" - } - }, - "args": { - "description": "Optional. The arguments to pass to the driver. Do not include arguments, such as --conf, that can be set as job properties, since a collision may occur that causes an incorrect job submission.", - "type": "array", - "items": { - "type": "string" - } - }, - "fileUris": { - "description": "Optional. HCFS URIs of files to be copied to the working directory of Spark drivers and distributed tasks. Useful for naively parallel tasks.", - "type": "array", - "items": { - "type": "string" - } - } - }, - "id": "SparkJob" - }, - "JobStatus": { - "properties": { - "state": { - "enumDescriptions": [ - "The job state is unknown.", - "The job is pending; it has been submitted, but is not yet running.", - "Job has been received by the service and completed initial setup; it will soon be submitted to the cluster.", - "The job is running on the cluster.", - "A CancelJob request has been received, but is pending.", - "Transient in-flight resources have been canceled, and the request to cancel the running job has been issued to the cluster.", - "The job cancellation was successful.", - "The job has completed successfully.", - "The job has completed, but encountered an error.", - "Job attempt has failed. The detail field contains failure details for this attempt.Applies to restartable jobs only." - ], - "enum": [ - "STATE_UNSPECIFIED", - "PENDING", - "SETUP_DONE", - "RUNNING", - "CANCEL_PENDING", - "CANCEL_STARTED", - "CANCELLED", - "DONE", - "ERROR", - "ATTEMPT_FAILURE" - ], - "description": "Output only. A state message specifying the overall job state.", - "type": "string" - }, - "details": { - "description": "Output only. Optional job state details, such as an error description if the state is \u003ccode\u003eERROR\u003c/code\u003e.", - "type": "string" - }, - "stateStartTime": { - "description": "Output only. The time when this state was entered.", - "format": "google-datetime", - "type": "string" - }, - "substate": { - "description": "Output only. Additional state information, which includes status reported by the agent.", - "type": "string", - "enumDescriptions": [ - "The job substate is unknown.", - "The Job is submitted to the agent.Applies to RUNNING state.", - "The Job has been received and is awaiting execution (it may be waiting for a condition to be met). See the \"details\" field for the reason for the delay.Applies to RUNNING state.", - "The agent-reported status is out of date, which may be caused by a loss of communication between the agent and Cloud Dataproc. If the agent does not send a timely update, the job will fail.Applies to RUNNING state." - ], - "enum": [ - "UNSPECIFIED", - "SUBMITTED", - "QUEUED", - "STALE_STATUS" - ] - } - }, - "id": "JobStatus", - "description": "Cloud Dataproc job status.", - "type": "object" - }, - "DiagnoseClusterRequest": { - "description": "A request to collect cluster diagnostic information.", - "type": "object", - "properties": {}, - "id": "DiagnoseClusterRequest" - }, - "DiskConfig": { - "description": "Specifies the config of disk options for a group of VM instances.", - "type": "object", - "properties": { - "bootDiskType": { - "description": "Optional. Type of the boot disk (default is 'pd-standard'). Valid values: 'pd-ssd', 'pd-standard'", - "type": "string" - }, - "numLocalSsds": { - "description": "Optional. Number of attached SSDs, from 0 to 4 (default is 0). If SSDs are not attached, the boot disk is used to store runtime logs and HDFS (https://hadoop.apache.org/docs/r1.2.1/hdfs_user_guide.html) data. If one or more SSDs are attached, this runtime bulk data is spread across them, and the boot disk contains only basic config and installed binaries.", - "format": "int32", - "type": "integer" - }, - "bootDiskSizeGb": { - "description": "Optional. Size in GB of the boot disk (default is 500GB).", - "format": "int32", - "type": "integer" - } - }, - "id": "DiskConfig" - }, - "ClusterOperationMetadata": { - "description": "Metadata describing the operation.", - "type": "object", - "properties": { - "statusHistory": { - "description": "Output only. The previous operation status.", - "type": "array", - "items": { - "$ref": "ClusterOperationStatus" - } - }, - "clusterName": { - "description": "Output only. Name of the cluster for the operation.", - "type": "string" - }, - "clusterUuid": { - "description": "Output only. Cluster UUID for the operation.", - "type": "string" - }, - "operationType": { - "description": "Output only. The operation type.", - "type": "string" - }, - "description": { - "description": "Output only. Short description of operation.", - "type": "string" - }, - "warnings": { - "description": "Output only. Errors encountered during operation execution.", - "type": "array", - "items": { - "type": "string" - } - }, - "labels": { - "additionalProperties": { - "type": "string" - }, - "description": "Output only. Labels associated with the operation", - "type": "object" - }, - "status": { - "$ref": "ClusterOperationStatus", - "description": "Output only. Current operation status." - } - }, - "id": "ClusterOperationMetadata" - }, - "Empty": { - "description": "A generic empty message that you can re-use to avoid defining duplicated empty messages in your APIs. A typical example is to use it as the request or the response type of an API method. For instance:\nservice Foo {\n rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty);\n}\nThe JSON representation for Empty is empty JSON object {}.", - "type": "object", - "properties": {}, - "id": "Empty" - }, - "GceClusterConfig": { - "properties": { - "subnetworkUri": { - "description": "Optional. The Google Compute Engine subnetwork to be used for machine communications. Cannot be specified with network_uri.A full URL, partial URI, or short name are valid. Examples:\nhttps://www.googleapis.com/compute/v1/projects/[project_id]/regions/us-east1/sub0\nprojects/[project_id]/regions/us-east1/sub0\nsub0", - "type": "string" - }, - "networkUri": { - "description": "Optional. The Google Compute Engine network to be used for machine communications. Cannot be specified with subnetwork_uri. If neither network_uri nor subnetwork_uri is specified, the \"default\" network of the project is used, if it exists. Cannot be a \"Custom Subnet Network\" (see Using Subnetworks for more information).A full URL, partial URI, or short name are valid. Examples:\nhttps://www.googleapis.com/compute/v1/projects/[project_id]/regions/global/default\nprojects/[project_id]/regions/global/default\ndefault", - "type": "string" - }, - "zoneUri": { - "description": "Optional. The zone where the Google Compute Engine cluster will be located. On a create request, it is required in the \"global\" region. If omitted in a non-global Cloud Dataproc region, the service will pick a zone in the corresponding Compute Engine region. On a get request, zone will always be present.A full URL, partial URI, or short name are valid. Examples:\nhttps://www.googleapis.com/compute/v1/projects/[project_id]/zones/[zone]\nprojects/[project_id]/zones/[zone]\nus-central1-f", - "type": "string" - }, - "metadata": { - "additionalProperties": { - "type": "string" - }, - "description": "The Google Compute Engine metadata entries to add to all instances (see Project and instance metadata (https://cloud.google.com/compute/docs/storing-retrieving-metadata#project_and_instance_metadata)).", - "type": "object" - }, - "internalIpOnly": { - "description": "Optional. If true, all instances in the cluster will only have internal IP addresses. By default, clusters are not restricted to internal IP addresses, and will have ephemeral external IP addresses assigned to each instance. This internal_ip_only restriction can only be enabled for subnetwork enabled networks, and all off-cluster dependencies must be configured to be accessible without external IP addresses.", - "type": "boolean" - }, - "serviceAccountScopes": { - "description": "Optional. The URIs of service account scopes to be included in Google Compute Engine instances. The following base set of scopes is always included:\nhttps://www.googleapis.com/auth/cloud.useraccounts.readonly\nhttps://www.googleapis.com/auth/devstorage.read_write\nhttps://www.googleapis.com/auth/logging.writeIf no scopes are specified, the following defaults are also provided:\nhttps://www.googleapis.com/auth/bigquery\nhttps://www.googleapis.com/auth/bigtable.admin.table\nhttps://www.googleapis.com/auth/bigtable.data\nhttps://www.googleapis.com/auth/devstorage.full_control", - "type": "array", - "items": { - "type": "string" - } - }, - "tags": { - "description": "The Google Compute Engine tags to add to all instances (see Tagging instances).", - "type": "array", - "items": { - "type": "string" - } - }, - "serviceAccount": { - "description": "Optional. The service account of the instances. Defaults to the default Google Compute Engine service account. Custom service accounts need permissions equivalent to the folloing IAM roles:\nroles/logging.logWriter\nroles/storage.objectAdmin(see https://cloud.google.com/compute/docs/access/service-accounts#custom_service_accounts for more information). Example: [account_id]@[project_id].iam.gserviceaccount.com", - "type": "string" - } - }, - "id": "GceClusterConfig", - "description": "Common config settings for resources of Google Compute Engine cluster instances, applicable to all instances in the cluster.", - "type": "object" - }, - "Policy": { - "description": "Defines an Identity and Access Management (IAM) policy. It is used to specify access control policies for Cloud Platform resources.A Policy consists of a list of bindings. A Binding binds a list of members to a role, where the members can be user accounts, Google groups, Google domains, and service accounts. A role is a named list of permissions defined by IAM.Example\n{\n \"bindings\": [\n {\n \"role\": \"roles/owner\",\n \"members\": [\n \"user:mike@example.com\",\n \"group:admins@example.com\",\n \"domain:google.com\",\n \"serviceAccount:my-other-app@appspot.gserviceaccount.com\",\n ]\n },\n {\n \"role\": \"roles/viewer\",\n \"members\": [\"user:sean@example.com\"]\n }\n ]\n}\nFor a description of IAM and its features, see the IAM developer's guide (https://cloud.google.com/iam/docs).", - "type": "object", - "properties": { - "etag": { - "description": "etag is used for optimistic concurrency control as a way to help prevent simultaneous updates of a policy from overwriting each other. It is strongly suggested that systems make use of the etag in the read-modify-write cycle to perform policy updates in order to avoid race conditions: An etag is returned in the response to getIamPolicy, and systems are expected to put that etag in the request to setIamPolicy to ensure that their change will be applied to the same version of the policy.If no etag is provided in the call to setIamPolicy, then the existing policy is overwritten blindly.", - "format": "byte", - "type": "string" - }, - "version": { - "description": "Deprecated.", - "format": "int32", - "type": "integer" - }, - "bindings": { - "description": "Associates a list of members to a role. bindings with no members will result in an error.", - "type": "array", - "items": { - "$ref": "Binding" - } - } - }, - "id": "Policy" - }, - "Operation": { - "description": "This resource represents a long-running operation that is the result of a network API call.", - "type": "object", - "properties": { - "error": { - "$ref": "Status", - "description": "The error result of the operation in case of failure or cancellation." - }, - "metadata": { - "description": "Service-specific metadata associated with the operation. It typically contains progress information and common metadata such as create time. Some services might not provide such metadata. Any method that returns a long-running operation should document the metadata type, if any.", - "type": "object", - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - } - }, - "done": { - "description": "If the value is false, it means the operation is still in progress. If true, the operation is completed, and either error or response is available.", - "type": "boolean" - }, - "response": { - "description": "The normal response of the operation in case of success. If the original method returns no data on success, such as Delete, the response is google.protobuf.Empty. If the original method is standard Get/Create/Update, the response should be the resource. For other methods, the response should have the type XxxResponse, where Xxx is the original method name. For example, if the original method name is TakeSnapshot(), the inferred response type is TakeSnapshotResponse.", - "type": "object", - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - } - }, - "name": { - "description": "The server-assigned name, which is only unique within the same service that originally returns it. If you use the default HTTP mapping, the name should have the format of operations/some/unique/name.", - "type": "string" - } - }, - "id": "Operation" - }, - "ListWorkflowTemplatesResponse": { - "description": "A response to a request to list workflow templates in a project.", - "type": "object", - "properties": { - "nextPageToken": { - "description": "Output only. This token is included in the response if there are more results to fetch. To fetch additional results, provide this value as the page_token in a subsequent \u003ccode\u003eListWorkflowTemplatesRequest\u003c/code\u003e.", - "type": "string" - }, - "templates": { - "description": "Output only. WorkflowTemplates list.", - "type": "array", - "items": { - "$ref": "WorkflowTemplate" - } - } - }, - "id": "ListWorkflowTemplatesResponse" - }, - "JobReference": { - "description": "Encapsulates the full scoping used to reference a job.", - "type": "object", - "properties": { - "projectId": { - "description": "Required. The ID of the Google Cloud Platform project that the job belongs to.", - "type": "string" - }, - "jobId": { - "description": "Optional. The job ID, which must be unique within the project. The job ID is generated by the server upon job submission or provided by the user as a means to perform retries without creating duplicate jobs. The ID must contain only letters (a-z, A-Z), numbers (0-9), underscores (_), or hyphens (-). The maximum length is 100 characters.", - "type": "string" - } - }, - "id": "JobReference" - }, - "Status": { - "description": "The Status type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by gRPC (https://github.com/grpc). The error model is designed to be:\nSimple to use and understand for most users\nFlexible enough to meet unexpected needsOverviewThe Status message contains three pieces of data: error code, error message, and error details. The error code should be an enum value of google.rpc.Code, but it may accept additional error codes if needed. The error message should be a developer-facing English message that helps developers understand and resolve the error. If a localized user-facing error message is needed, put the localized message in the error details or localize it in the client. The optional error details may contain arbitrary information about the error. There is a predefined set of error detail types in the package google.rpc that can be used for common error conditions.Language mappingThe Status message is the logical representation of the error model, but it is not necessarily the actual wire format. When the Status message is exposed in different client libraries and different wire protocols, it can be mapped differently. For example, it will likely be mapped to some exceptions in Java, but more likely mapped to some error codes in C.Other usesThe error model and the Status message can be used in a variety of environments, either with or without APIs, to provide a consistent developer experience across different environments.Example uses of this error model include:\nPartial errors. If a service needs to return partial errors to the client, it may embed the Status in the normal response to indicate the partial errors.\nWorkflow errors. A typical workflow has multiple steps. Each step may have a Status message for error reporting.\nBatch operations. If a client uses batch request and batch response, the Status message should be used directly inside batch response, one for each error sub-response.\nAsynchronous operations. If an API call embeds asynchronous operation results in its response, the status of those operations should be represented directly using the Status message.\nLogging. If some API errors are stored in logs, the message Status could be used directly after any stripping needed for security/privacy reasons.", - "type": "object", - "properties": { - "code": { - "description": "The status code, which should be an enum value of google.rpc.Code.", - "format": "int32", - "type": "integer" - }, - "message": { - "description": "A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the google.rpc.Status.details field, or localized by the client.", - "type": "string" - }, - "details": { - "description": "A list of messages that carry the error details. There is a common set of message types for APIs to use.", - "type": "array", - "items": { - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - }, - "type": "object" - } - } - }, - "id": "Status" - }, - "Binding": { - "properties": { - "members": { - "description": "Specifies the identities requesting access for a Cloud Platform resource. members can have the following values:\nallUsers: A special identifier that represents anyone who is on the internet; with or without a Google account.\nallAuthenticatedUsers: A special identifier that represents anyone who is authenticated with a Google account or a service account.\nuser:{emailid}: An email address that represents a specific Google account. For example, alice@gmail.com or joe@example.com.\nserviceAccount:{emailid}: An email address that represents a service account. For example, my-other-app@appspot.gserviceaccount.com.\ngroup:{emailid}: An email address that represents a Google group. For example, admins@example.com.\ndomain:{domain}: A Google Apps domain name that represents all the users of that domain. For example, google.com or example.com.", - "type": "array", - "items": { - "type": "string" - } - }, - "role": { - "description": "Role that is assigned to members. For example, roles/viewer, roles/editor, or roles/owner. Required", - "type": "string" - } - }, - "id": "Binding", - "description": "Associates members with a role.", - "type": "object" - }, - "InstanceGroupConfig": { - "description": "Optional. The config settings for Google Compute Engine resources in an instance group, such as a master or worker group.", - "type": "object", - "properties": { - "instanceNames": { - "description": "Optional. The list of instance names. Cloud Dataproc derives the names from cluster_name, num_instances, and the instance group if not set by user (recommended practice is to let Cloud Dataproc derive the name).", - "type": "array", - "items": { - "type": "string" - } - }, - "accelerators": { - "description": "Optional. The Google Compute Engine accelerator configuration for these instances.Beta Feature: This feature is still under development. It may be changed before final release.", - "type": "array", - "items": { - "$ref": "AcceleratorConfig" - } - }, - "numInstances": { - "description": "Optional. The number of VM instances in the instance group. For master instance groups, must be set to 1.", - "format": "int32", - "type": "integer" - }, - "minCpuPlatform": { - "description": "Optional. Specifies the minimum cpu platform for the Instance Group. See Cloud Dataproc→Minimum CPU Platform.", - "type": "string" - }, - "diskConfig": { - "$ref": "DiskConfig", - "description": "Optional. Disk option config settings." - }, - "machineTypeUri": { - "description": "Optional. The Google Compute Engine machine type used for cluster instances.A full URL, partial URI, or short name are valid. Examples:\nhttps://www.googleapis.com/compute/v1/projects/[project_id]/zones/us-east1-a/machineTypes/n1-standard-2\nprojects/[project_id]/zones/us-east1-a/machineTypes/n1-standard-2\nn1-standard-2", - "type": "string" - }, - "managedGroupConfig": { - "description": "Output only. The config for Google Compute Engine Instance Group Manager that manages this group. This is only used for preemptible instance groups.", - "$ref": "ManagedGroupConfig" - }, - "isPreemptible": { - "description": "Optional. Specifies that this instance group contains preemptible instances.", - "type": "boolean" - }, - "imageUri": { - "description": "Output only. The Google Compute Engine image resource used for cluster instances. Inferred from SoftwareConfig.image_version.", - "type": "string" - } - }, - "id": "InstanceGroupConfig" - }, - "NodeInitializationAction": { - "description": "Specifies an executable to run on a fully configured node and a timeout period for executable completion.", - "type": "object", - "properties": { - "executionTimeout": { - "description": "Optional. Amount of time executable has to complete. Default is 10 minutes. Cluster creation fails with an explanatory error message (the name of the executable that caused the error and the exceeded timeout period) if the executable is not completed at end of the timeout period.", - "format": "google-duration", - "type": "string" - }, - "executableFile": { - "description": "Required. Google Cloud Storage URI of executable file.", - "type": "string" - } - }, - "id": "NodeInitializationAction" - }, - "ListJobsResponse": { - "description": "A list of jobs in a project.", - "type": "object", - "properties": { - "jobs": { - "description": "Output only. Jobs list.", - "type": "array", - "items": { - "$ref": "Job" - } - }, - "nextPageToken": { - "description": "Optional. This token is included in the response if there are more results to fetch. To fetch additional results, provide this value as the page_token in a subsequent \u003ccode\u003eListJobsRequest\u003c/code\u003e.", - "type": "string" - } - }, - "id": "ListJobsResponse" - }, - "CancelJobRequest": { - "description": "A request to cancel a job.", - "type": "object", - "properties": {}, - "id": "CancelJobRequest" - }, - "SparkSqlJob": { - "description": "A Cloud Dataproc job for running Apache Spark SQL (http://spark.apache.org/sql/) queries.", - "type": "object", - "properties": { - "queryFileUri": { - "description": "The HCFS URI of the script that contains SQL queries.", - "type": "string" - }, - "queryList": { - "description": "A list of queries.", - "$ref": "QueryList" - }, - "scriptVariables": { - "description": "Optional. Mapping of query variable names to values (equivalent to the Spark SQL command: SET name=\"value\";).", - "type": "object", - "additionalProperties": { - "type": "string" - } - }, - "jarFileUris": { - "description": "Optional. HCFS URIs of jar files to be added to the Spark CLASSPATH.", - "type": "array", - "items": { - "type": "string" - } - }, - "loggingConfig": { - "description": "Optional. The runtime log config for job execution.", - "$ref": "LoggingConfig" - }, - "properties": { - "additionalProperties": { - "type": "string" - }, - "description": "Optional. A mapping of property names to values, used to configure Spark SQL's SparkConf. Properties that conflict with values set by the Cloud Dataproc API may be overwritten.", - "type": "object" - } - }, - "id": "SparkSqlJob" - }, - "ListOperationsResponse": { - "description": "The response message for Operations.ListOperations.", - "type": "object", - "properties": { - "operations": { - "description": "A list of operations that matches the specified filter in the request.", - "type": "array", - "items": { - "$ref": "Operation" - } - }, - "nextPageToken": { - "description": "The standard List next-page token.", - "type": "string" - } - }, - "id": "ListOperationsResponse" - }, - "JobPlacement": { - "description": "Cloud Dataproc job config.", - "type": "object", - "properties": { - "clusterName": { - "description": "Required. The name of the cluster where the job will be submitted.", - "type": "string" - }, - "clusterUuid": { - "description": "Output only. A cluster UUID generated by the Cloud Dataproc service when the job is submitted.", - "type": "string" - } - }, - "id": "JobPlacement" - }, - "PigJob": { - "properties": { - "jarFileUris": { - "description": "Optional. HCFS URIs of jar files to add to the CLASSPATH of the Pig Client and Hadoop MapReduce (MR) tasks. Can contain Pig UDFs.", - "type": "array", - "items": { - "type": "string" - } - }, - "scriptVariables": { - "description": "Optional. Mapping of query variable names to values (equivalent to the Pig command: name=[value]).", - "type": "object", - "additionalProperties": { - "type": "string" - } - }, - "loggingConfig": { - "$ref": "LoggingConfig", - "description": "Optional. The runtime log config for job execution." - }, - "properties": { - "additionalProperties": { - "type": "string" - }, - "description": "Optional. A mapping of property names to values, used to configure Pig. Properties that conflict with values set by the Cloud Dataproc API may be overwritten. Can include properties set in /etc/hadoop/conf/*-site.xml, /etc/pig/conf/pig.properties, and classes in user code.", - "type": "object" - }, - "continueOnFailure": { - "description": "Optional. Whether to continue executing queries if a query fails. The default value is false. Setting to true can be useful when executing independent parallel queries.", - "type": "boolean" - }, - "queryList": { - "description": "A list of queries.", - "$ref": "QueryList" - }, - "queryFileUri": { - "description": "The HCFS URI of the script that contains the Pig queries.", - "type": "string" - } - }, - "id": "PigJob", - "description": "A Cloud Dataproc job for running Apache Pig (https://pig.apache.org/) queries on YARN.", "type": "object" }, "ClusterStatus": { "description": "The status of a cluster and its instances.", - "type": "object", + "id": "ClusterStatus", "properties": { + "detail": { + "description": "Output only. Optional details of cluster's state.", + "type": "string" + }, "state": { - "enumDescriptions": [ - "The cluster state is unknown.", - "The cluster is being created and set up. It is not ready for use.", - "The cluster is currently running and healthy. It is ready for use.", - "The cluster encountered an error. It is not ready for use.", - "The cluster is being deleted. It cannot be used.", - "The cluster is being updated. It continues to accept and process jobs." - ], + "description": "Output only. The cluster's state.", "enum": [ "UNKNOWN", "CREATING", @@ -2005,7 +1922,14 @@ "DELETING", "UPDATING" ], - "description": "Output only. The cluster's state.", + "enumDescriptions": [ + "The cluster state is unknown.", + "The cluster is being created and set up. It is not ready for use.", + "The cluster is currently running and healthy. It is ready for use.", + "The cluster encountered an error. It is not ready for use.", + "The cluster is being deleted. It cannot be used.", + "The cluster is being updated. It continues to accept and process jobs." + ], "type": "string" }, "stateStartTime": { @@ -2014,119 +1938,289 @@ "type": "string" }, "substate": { + "description": "Output only. Additional state information that includes status reported by the agent.", "enum": [ "UNSPECIFIED", "UNHEALTHY", "STALE_STATUS" ], - "description": "Output only. Additional state information that includes status reported by the agent.", - "type": "string", "enumDescriptions": [ "The cluster substate is unknown.", "The cluster is known to be in an unhealthy state (for example, critical daemons are not running or HDFS capacity is exhausted).Applies to RUNNING state.", "The agent-reported status is out of date (may occur if Cloud Dataproc loses communication with Agent).Applies to RUNNING state." - ] - }, - "detail": { - "description": "Output only. Optional details of cluster's state.", + ], "type": "string" } }, - "id": "ClusterStatus" + "type": "object" }, - "WorkflowTemplate": { - "description": "A Cloud Dataproc workflow template resource.", - "type": "object", + "DiagnoseClusterRequest": { + "description": "A request to collect cluster diagnostic information.", + "id": "DiagnoseClusterRequest", + "properties": {}, + "type": "object" + }, + "DiagnoseClusterResults": { + "description": "The location of diagnostic output.", + "id": "DiagnoseClusterResults", "properties": { - "jobs": { - "description": "Required. The Directed Acyclic Graph of Jobs to submit.", - "type": "array", - "items": { - "$ref": "OrderedJob" - } + "outputUri": { + "description": "Output only. The Cloud Storage URI of the diagnostic output. The output report is a plain text file with a summary of collected diagnostics.", + "type": "string" + } + }, + "type": "object" + }, + "DiskConfig": { + "description": "Specifies the config of disk options for a group of VM instances.", + "id": "DiskConfig", + "properties": { + "bootDiskSizeGb": { + "description": "Optional. Size in GB of the boot disk (default is 500GB).", + "format": "int32", + "type": "integer" }, - "labels": { - "additionalProperties": { - "type": "string" - }, - "description": "Optional. The labels to associate with this template. These labels will be propagated to all jobs and clusters created by the workflow instance.Label keys must contain 1 to 63 characters, and must conform to RFC 1035 (https://www.ietf.org/rfc/rfc1035.txt).Label values may be empty, but, if present, must contain 1 to 63 characters, and must conform to RFC 1035 (https://www.ietf.org/rfc/rfc1035.txt).No more than 32 labels can be associated with a template.", - "type": "object" - }, - "createTime": { - "description": "Output only. The time template was created.", - "format": "google-datetime", + "bootDiskType": { + "description": "Optional. Type of the boot disk (default is \"pd-standard\"). Valid values: \"pd-ssd\" (Persistent Disk Solid State Drive) or \"pd-standard\" (Persistent Disk Hard Disk Drive).", "type": "string" }, - "placement": { - "description": "Required. WorkflowTemplate scheduling information.", - "$ref": "WorkflowTemplatePlacement" - }, - "updateTime": { - "description": "Output only. The time template was last updated.", - "format": "google-datetime", - "type": "string" - }, - "name": { - "description": "Output only. The \"resource name\" of the template, as described in https://cloud.google.com/apis/design/resource_names of the form projects/{project_id}/regions/{region}/workflowTemplates/{template_id}", - "type": "string" - }, - "id": { - "description": "Required. The template id.", - "type": "string" - }, - "version": { - "description": "Optional. Used to perform a consistent read-modify-write.This field should be left blank for a CreateWorkflowTemplate request. It is required for an UpdateWorkflowTemplate request, and must match the current server version. A typical update template flow would fetch the current template with a GetWorkflowTemplate request, which will return the current template with the version field filled in with the current server version. The user updates other fields in the template, then returns it as part of the UpdateWorkflowTemplate request.", + "numLocalSsds": { + "description": "Optional. Number of attached SSDs, from 0 to 4 (default is 0). If SSDs are not attached, the boot disk is used to store runtime logs and HDFS (https://hadoop.apache.org/docs/r1.2.1/hdfs_user_guide.html) data. If one or more SSDs are attached, this runtime bulk data is spread across them, and the boot disk contains only basic config and installed binaries.", "format": "int32", "type": "integer" } }, - "id": "WorkflowTemplate" + "type": "object" }, - "ListClustersResponse": { - "description": "The list of all clusters in a project.", - "type": "object", + "Empty": { + "description": "A generic empty message that you can re-use to avoid defining duplicated empty messages in your APIs. A typical example is to use it as the request or the response type of an API method. For instance:\nservice Foo {\n rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty);\n}\nThe JSON representation for Empty is empty JSON object {}.", + "id": "Empty", + "properties": {}, + "type": "object" + }, + "GceClusterConfig": { + "description": "Common config settings for resources of Compute Engine cluster instances, applicable to all instances in the cluster.", + "id": "GceClusterConfig", "properties": { - "clusters": { - "description": "Output only. The clusters in the project.", - "type": "array", - "items": { - "$ref": "Cluster" - } + "internalIpOnly": { + "description": "Optional. If true, all instances in the cluster will only have internal IP addresses. By default, clusters are not restricted to internal IP addresses, and will have ephemeral external IP addresses assigned to each instance. This internal_ip_only restriction can only be enabled for subnetwork enabled networks, and all off-cluster dependencies must be configured to be accessible without external IP addresses.", + "type": "boolean" }, - "nextPageToken": { - "description": "Output only. This token is included in the response if there are more results to fetch. To fetch additional results, provide this value as the page_token in a subsequent \u003ccode\u003eListClustersRequest\u003c/code\u003e.", + "metadata": { + "additionalProperties": { + "type": "string" + }, + "description": "The Compute Engine metadata entries to add to all instances (see Project and instance metadata (https://cloud.google.com/compute/docs/storing-retrieving-metadata#project_and_instance_metadata)).", + "type": "object" + }, + "networkUri": { + "description": "Optional. The Compute Engine network to be used for machine communications. Cannot be specified with subnetwork_uri. If neither network_uri nor subnetwork_uri is specified, the \"default\" network of the project is used, if it exists. Cannot be a \"Custom Subnet Network\" (see Using Subnetworks for more information).A full URL, partial URI, or short name are valid. Examples:\nhttps://www.googleapis.com/compute/v1/projects/[project_id]/regions/global/default\nprojects/[project_id]/regions/global/default\ndefault", + "type": "string" + }, + "serviceAccount": { + "description": "Optional. The service account of the instances. Defaults to the default Compute Engine service account. Custom service accounts need permissions equivalent to the folloing IAM roles:\nroles/logging.logWriter\nroles/storage.objectAdmin(see https://cloud.google.com/compute/docs/access/service-accounts#custom_service_accounts for more information). Example: [account_id]@[project_id].iam.gserviceaccount.com", + "type": "string" + }, + "serviceAccountScopes": { + "description": "Optional. The URIs of service account scopes to be included in Google Compute Engine instances. The following base set of scopes is always included:\nhttps://www.googleapis.com/auth/cloud.useraccounts.readonly\nhttps://www.googleapis.com/auth/devstorage.read_write\nhttps://www.googleapis.com/auth/logging.writeIf no scopes are specified, the following defaults are also provided:\nhttps://www.googleapis.com/auth/bigquery\nhttps://www.googleapis.com/auth/bigtable.admin.table\nhttps://www.googleapis.com/auth/bigtable.data\nhttps://www.googleapis.com/auth/devstorage.full_control", + "items": { + "type": "string" + }, + "type": "array" + }, + "subnetworkUri": { + "description": "Optional. The Compute Engine subnetwork to be used for machine communications. Cannot be specified with network_uri.A full URL, partial URI, or short name are valid. Examples:\nhttps://www.googleapis.com/compute/v1/projects/[project_id]/regions/us-east1/sub0\nprojects/[project_id]/regions/us-east1/sub0\nsub0", + "type": "string" + }, + "tags": { + "description": "The Compute Engine tags to add to all instances (see Tagging instances).", + "items": { + "type": "string" + }, + "type": "array" + }, + "zoneUri": { + "description": "Optional. The zone where the Compute Engine cluster will be located. On a create request, it is required in the \"global\" region. If omitted in a non-global Cloud Dataproc region, the service will pick a zone in the corresponding Compute Engine region. On a get request, zone will always be present.A full URL, partial URI, or short name are valid. Examples:\nhttps://www.googleapis.com/compute/v1/projects/[project_id]/zones/[zone]\nprojects/[project_id]/zones/[zone]\nus-central1-f", "type": "string" } }, - "id": "ListClustersResponse" + "type": "object" + }, + "HadoopJob": { + "description": "A Cloud Dataproc job for running Apache Hadoop MapReduce (https://hadoop.apache.org/docs/current/hadoop-mapreduce-client/hadoop-mapreduce-client-core/MapReduceTutorial.html) jobs on Apache Hadoop YARN (https://hadoop.apache.org/docs/r2.7.1/hadoop-yarn/hadoop-yarn-site/YARN.html).", + "id": "HadoopJob", + "properties": { + "archiveUris": { + "description": "Optional. HCFS URIs of archives to be extracted in the working directory of Hadoop drivers and tasks. Supported file types: .jar, .tar, .tar.gz, .tgz, or .zip.", + "items": { + "type": "string" + }, + "type": "array" + }, + "args": { + "description": "Optional. The arguments to pass to the driver. Do not include arguments, such as -libjars or -Dfoo=bar, that can be set as job properties, since a collision may occur that causes an incorrect job submission.", + "items": { + "type": "string" + }, + "type": "array" + }, + "fileUris": { + "description": "Optional. HCFS (Hadoop Compatible Filesystem) URIs of files to be copied to the working directory of Hadoop drivers and distributed tasks. Useful for naively parallel tasks.", + "items": { + "type": "string" + }, + "type": "array" + }, + "jarFileUris": { + "description": "Optional. Jar file URIs to add to the CLASSPATHs of the Hadoop driver and tasks.", + "items": { + "type": "string" + }, + "type": "array" + }, + "loggingConfig": { + "$ref": "LoggingConfig", + "description": "Optional. The runtime log config for job execution." + }, + "mainClass": { + "description": "The name of the driver's main class. The jar file containing the class must be in the default CLASSPATH or specified in jar_file_uris.", + "type": "string" + }, + "mainJarFileUri": { + "description": "The HCFS URI of the jar file containing the main class. Examples: 'gs://foo-bucket/analytics-binaries/extract-useful-metrics-mr.jar' 'hdfs:/tmp/test-samples/custom-wordcount.jar' 'file:///home/usr/lib/hadoop-mapreduce/hadoop-mapreduce-examples.jar'", + "type": "string" + }, + "properties": { + "additionalProperties": { + "type": "string" + }, + "description": "Optional. A mapping of property names to values, used to configure Hadoop. Properties that conflict with values set by the Cloud Dataproc API may be overwritten. Can include properties set in /etc/hadoop/conf/*-site and classes in user code.", + "type": "object" + } + }, + "type": "object" + }, + "HiveJob": { + "description": "A Cloud Dataproc job for running Apache Hive (https://hive.apache.org/) queries on YARN.", + "id": "HiveJob", + "properties": { + "continueOnFailure": { + "description": "Optional. Whether to continue executing queries if a query fails. The default value is false. Setting to true can be useful when executing independent parallel queries.", + "type": "boolean" + }, + "jarFileUris": { + "description": "Optional. HCFS URIs of jar files to add to the CLASSPATH of the Hive server and Hadoop MapReduce (MR) tasks. Can contain Hive SerDes and UDFs.", + "items": { + "type": "string" + }, + "type": "array" + }, + "properties": { + "additionalProperties": { + "type": "string" + }, + "description": "Optional. A mapping of property names and values, used to configure Hive. Properties that conflict with values set by the Cloud Dataproc API may be overwritten. Can include properties set in /etc/hadoop/conf/*-site.xml, /etc/hive/conf/hive-site.xml, and classes in user code.", + "type": "object" + }, + "queryFileUri": { + "description": "The HCFS URI of the script that contains Hive queries.", + "type": "string" + }, + "queryList": { + "$ref": "QueryList", + "description": "A list of queries." + }, + "scriptVariables": { + "additionalProperties": { + "type": "string" + }, + "description": "Optional. Mapping of query variable names to values (equivalent to the Hive command: SET name=\"value\";).", + "type": "object" + } + }, + "type": "object" + }, + "InstanceGroupConfig": { + "description": "Optional. The config settings for Compute Engine resources in an instance group, such as a master or worker group.", + "id": "InstanceGroupConfig", + "properties": { + "accelerators": { + "description": "Optional. The Compute Engine accelerator configuration for these instances.Beta Feature: This feature is still under development. It may be changed before final release.", + "items": { + "$ref": "AcceleratorConfig" + }, + "type": "array" + }, + "diskConfig": { + "$ref": "DiskConfig", + "description": "Optional. Disk option config settings." + }, + "imageUri": { + "description": "Output only. The Compute Engine image resource used for cluster instances. Inferred from SoftwareConfig.image_version.", + "type": "string" + }, + "instanceNames": { + "description": "Optional. The list of instance names. Cloud Dataproc derives the names from cluster_name, num_instances, and the instance group if not set by user (recommended practice is to let Cloud Dataproc derive the name).", + "items": { + "type": "string" + }, + "type": "array" + }, + "isPreemptible": { + "description": "Optional. Specifies that this instance group contains preemptible instances.", + "type": "boolean" + }, + "machineTypeUri": { + "description": "Optional. The Compute Engine machine type used for cluster instances.A full URL, partial URI, or short name are valid. Examples:\nhttps://www.googleapis.com/compute/v1/projects/[project_id]/zones/us-east1-a/machineTypes/n1-standard-2\nprojects/[project_id]/zones/us-east1-a/machineTypes/n1-standard-2\nn1-standard-2", + "type": "string" + }, + "managedGroupConfig": { + "$ref": "ManagedGroupConfig", + "description": "Output only. The config for Compute Engine Instance Group Manager that manages this group. This is only used for preemptible instance groups." + }, + "minCpuPlatform": { + "description": "Optional. Specifies the minimum cpu platform for the Instance Group. See Cloud Dataproc\u0026rarr;Minimum CPU Platform.", + "type": "string" + }, + "numInstances": { + "description": "Optional. The number of VM instances in the instance group. For master instance groups, must be set to 1.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "InstantiateWorkflowTemplateRequest": { + "description": "A request to instantiate a workflow template.", + "id": "InstantiateWorkflowTemplateRequest", + "properties": { + "instanceId": { + "description": "Optional. A tag that prevents multiple concurrent workflow instances with the same tag from running. This mitigates risk of concurrent instances started due to retries.It is recommended to always set this value to a UUID (https://en.wikipedia.org/wiki/Universally_unique_identifier).The tag must contain only letters (a-z, A-Z), numbers (0-9), underscores (_), and hyphens (-). The maximum length is 40 characters.", + "type": "string" + }, + "version": { + "description": "Optional. The version of workflow template to instantiate. If specified, the workflow will be instantiated only if the current version of the workflow template has the supplied version.This option cannot be used to instantiate a previous version of workflow template.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" }, "Job": { "description": "A Cloud Dataproc job resource.", - "type": "object", + "id": "Job", "properties": { - "hadoopJob": { - "description": "Job is a Hadoop job.", - "$ref": "HadoopJob" - }, - "status": { - "description": "Output only. The job status. Additional application-specific status information may be contained in the \u003ccode\u003etype_job\u003c/code\u003e and \u003ccode\u003eyarn_applications\u003c/code\u003e fields.", - "$ref": "JobStatus" - }, - "placement": { - "$ref": "JobPlacement", - "description": "Required. Job information, including how, when, and where to run the job." - }, "driverControlFilesUri": { "description": "Output only. If present, the location of miscellaneous control files which may be used as part of job setup and handling. If not present, control files may be placed in the same location as driver_output_uri.", "type": "string" }, - "scheduling": { - "$ref": "JobScheduling", - "description": "Optional. Job scheduling configuration." + "driverOutputResourceUri": { + "description": "Output only. A URI pointing to the location of the stdout of the job's driver program.", + "type": "string" }, - "pigJob": { - "$ref": "PigJob", - "description": "Job is a Pig job." + "hadoopJob": { + "$ref": "HadoopJob", + "description": "Job is a Hadoop job." }, "hiveJob": { "$ref": "HiveJob", @@ -2139,483 +2233,254 @@ "description": "Optional. The labels to associate with this job. Label keys must contain 1 to 63 characters, and must conform to RFC 1035 (https://www.ietf.org/rfc/rfc1035.txt). Label values may be empty, but, if present, must contain 1 to 63 characters, and must conform to RFC 1035 (https://www.ietf.org/rfc/rfc1035.txt). No more than 32 labels can be associated with a job.", "type": "object" }, - "driverOutputResourceUri": { - "description": "Output only. A URI pointing to the location of the stdout of the job's driver program.", - "type": "string" + "pigJob": { + "$ref": "PigJob", + "description": "Job is a Pig job." }, - "sparkJob": { - "description": "Job is a Spark job.", - "$ref": "SparkJob" - }, - "sparkSqlJob": { - "description": "Job is a SparkSql job.", - "$ref": "SparkSqlJob" - }, - "statusHistory": { - "description": "Output only. The previous job status.", - "type": "array", - "items": { - "$ref": "JobStatus" - } - }, - "yarnApplications": { - "description": "Output only. The collection of YARN applications spun up by this job.Beta Feature: This report is available for testing purposes only. It may be changed before final release.", - "type": "array", - "items": { - "$ref": "YarnApplication" - } + "placement": { + "$ref": "JobPlacement", + "description": "Required. Job information, including how, when, and where to run the job." }, "pysparkJob": { "$ref": "PySparkJob", "description": "Job is a Pyspark job." }, "reference": { - "description": "Optional. The fully qualified reference to the job, which can be used to obtain the equivalent REST path of the job resource. If this property is not specified when a job is created, the server generates a \u003ccode\u003ejob_id\u003c/code\u003e.", - "$ref": "JobReference" + "$ref": "JobReference", + "description": "Optional. The fully qualified reference to the job, which can be used to obtain the equivalent REST path of the job resource. If this property is not specified when a job is created, the server generates a \u003ccode\u003ejob_id\u003c/code\u003e." + }, + "scheduling": { + "$ref": "JobScheduling", + "description": "Optional. Job scheduling configuration." + }, + "sparkJob": { + "$ref": "SparkJob", + "description": "Job is a Spark job." + }, + "sparkSqlJob": { + "$ref": "SparkSqlJob", + "description": "Job is a SparkSql job." + }, + "status": { + "$ref": "JobStatus", + "description": "Output only. The job status. Additional application-specific status information may be contained in the \u003ccode\u003etype_job\u003c/code\u003e and \u003ccode\u003eyarn_applications\u003c/code\u003e fields." + }, + "statusHistory": { + "description": "Output only. The previous job status.", + "items": { + "$ref": "JobStatus" + }, + "type": "array" + }, + "yarnApplications": { + "description": "Output only. The collection of YARN applications spun up by this job.Beta Feature: This report is available for testing purposes only. It may be changed before final release.", + "items": { + "$ref": "YarnApplication" + }, + "type": "array" } }, - "id": "Job" + "type": "object" }, - "ManagedGroupConfig": { + "JobPlacement": { + "description": "Cloud Dataproc job config.", + "id": "JobPlacement", "properties": { - "instanceGroupManagerName": { - "description": "Output only. The name of the Instance Group Manager for this group.", + "clusterName": { + "description": "Required. The name of the cluster where the job will be submitted.", "type": "string" }, - "instanceTemplateName": { - "description": "Output only. The name of the Instance Template used for the Managed Instance Group.", + "clusterUuid": { + "description": "Output only. A cluster UUID generated by the Cloud Dataproc service when the job is submitted.", + "type": "string" + } + }, + "type": "object" + }, + "JobReference": { + "description": "Encapsulates the full scoping used to reference a job.", + "id": "JobReference", + "properties": { + "jobId": { + "description": "Optional. The job ID, which must be unique within the project. The job ID is generated by the server upon job submission or provided by the user as a means to perform retries without creating duplicate jobs. The ID must contain only letters (a-z, A-Z), numbers (0-9), underscores (_), or hyphens (-). The maximum length is 100 characters.", + "type": "string" + }, + "projectId": { + "description": "Required. The ID of the Google Cloud Platform project that the job belongs to.", + "type": "string" + } + }, + "type": "object" + }, + "JobScheduling": { + "description": "Job scheduling options.", + "id": "JobScheduling", + "properties": { + "maxFailuresPerHour": { + "description": "Optional. Maximum number of times per hour a driver may be restarted as a result of driver terminating with non-zero code before job is reported failed.A job may be reported as thrashing if driver exits with non-zero code 4 times within 10 minute window.Maximum value is 10.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "JobStatus": { + "description": "Cloud Dataproc job status.", + "id": "JobStatus", + "properties": { + "details": { + "description": "Output only. Optional job state details, such as an error description if the state is \u003ccode\u003eERROR\u003c/code\u003e.", + "type": "string" + }, + "state": { + "description": "Output only. A state message specifying the overall job state.", + "enum": [ + "STATE_UNSPECIFIED", + "PENDING", + "SETUP_DONE", + "RUNNING", + "CANCEL_PENDING", + "CANCEL_STARTED", + "CANCELLED", + "DONE", + "ERROR", + "ATTEMPT_FAILURE" + ], + "enumDescriptions": [ + "The job state is unknown.", + "The job is pending; it has been submitted, but is not yet running.", + "Job has been received by the service and completed initial setup; it will soon be submitted to the cluster.", + "The job is running on the cluster.", + "A CancelJob request has been received, but is pending.", + "Transient in-flight resources have been canceled, and the request to cancel the running job has been issued to the cluster.", + "The job cancellation was successful.", + "The job has completed successfully.", + "The job has completed, but encountered an error.", + "Job attempt has failed. The detail field contains failure details for this attempt.Applies to restartable jobs only." + ], + "type": "string" + }, + "stateStartTime": { + "description": "Output only. The time when this state was entered.", + "format": "google-datetime", + "type": "string" + }, + "substate": { + "description": "Output only. Additional state information, which includes status reported by the agent.", + "enum": [ + "UNSPECIFIED", + "SUBMITTED", + "QUEUED", + "STALE_STATUS" + ], + "enumDescriptions": [ + "The job substate is unknown.", + "The Job is submitted to the agent.Applies to RUNNING state.", + "The Job has been received and is awaiting execution (it may be waiting for a condition to be met). See the \"details\" field for the reason for the delay.Applies to RUNNING state.", + "The agent-reported status is out of date, which may be caused by a loss of communication between the agent and Cloud Dataproc. If the agent does not send a timely update, the job will fail.Applies to RUNNING state." + ], "type": "string" } }, - "id": "ManagedGroupConfig", - "description": "Specifies the resources used to actively manage an instance group.", "type": "object" }, "LifecycleConfig": { "description": "Specifies the cluster auto delete related schedule configuration.", - "type": "object", + "id": "LifecycleConfig", "properties": { - "autoDeleteTtl": { - "description": "Optional. The life duration of cluster, the cluster will be auto-deleted at the end of this duration.", - "format": "google-duration", - "type": "string" - }, "autoDeleteTime": { "description": "Optional. The time when cluster will be auto-deleted.", "format": "google-datetime", "type": "string" }, + "autoDeleteTtl": { + "description": "Optional. The life duration of cluster, the cluster will be auto-deleted at the end of this duration.", + "format": "google-duration", + "type": "string" + }, "idleDeleteTtl": { "description": "Optional. The longest duration that cluster would keep alive while staying idle; passing this threshold will cause cluster to be auto-deleted.", "format": "google-duration", "type": "string" } }, - "id": "LifecycleConfig" - }, - "ManagedCluster": { - "description": "Cluster that is managed by the workflow.", - "type": "object", - "properties": { - "labels": { - "additionalProperties": { - "type": "string" - }, - "description": "Optional. The labels to associate with this cluster.Label keys must be between 1 and 63 characters long, and must conform to the following PCRE regular expression: \\p{Ll}\\p{Lo}{0,62}Label values must be between 1 and 63 characters long, and must conform to the following PCRE regular expression: \\p{Ll}\\p{Lo}\\p{N}_-{0,63}No more than 64 labels can be associated with a given cluster.", - "type": "object" - }, - "config": { - "description": "Required. The cluster configuration.", - "$ref": "ClusterConfig" - }, - "clusterName": { - "description": "Required. The cluster name. Cluster names within a project must be unique. Names from deleted clusters can be reused.", - "type": "string" - } - }, - "id": "ManagedCluster" - }, - "ClusterOperationStatus": { - "description": "The status of the operation.", - "type": "object", - "properties": { - "state": { - "enumDescriptions": [ - "Unused.", - "The operation has been created.", - "The operation is running.", - "The operation is done; either cancelled or completed." - ], - "enum": [ - "UNKNOWN", - "PENDING", - "RUNNING", - "DONE" - ], - "description": "Output only. A message containing the operation state.", - "type": "string" - }, - "details": { - "description": "Output only. A message containing any operation metadata details.", - "type": "string" - }, - "innerState": { - "description": "Output only. A message containing the detailed operation state.", - "type": "string" - }, - "stateStartTime": { - "description": "Output only. The time this state was entered.", - "format": "google-datetime", - "type": "string" - } - }, - "id": "ClusterOperationStatus" - }, - "QueryList": { - "description": "A list of queries to run on a cluster.", - "type": "object", - "properties": { - "queries": { - "description": "Required. The queries to execute. You do not need to terminate a query with a semicolon. Multiple queries can be specified in one string by separating each with a semicolon. Here is an example of an Cloud Dataproc API snippet that uses a QueryList to specify a HiveJob:\n\"hiveJob\": {\n \"queryList\": {\n \"queries\": [\n \"query1\",\n \"query2\",\n \"query3;query4\",\n ]\n }\n}\n", - "type": "array", - "items": { - "type": "string" - } - } - }, - "id": "QueryList" - }, - "HadoopJob": { - "description": "A Cloud Dataproc job for running Apache Hadoop MapReduce (https://hadoop.apache.org/docs/current/hadoop-mapreduce-client/hadoop-mapreduce-client-core/MapReduceTutorial.html) jobs on Apache Hadoop YARN (https://hadoop.apache.org/docs/r2.7.1/hadoop-yarn/hadoop-yarn-site/YARN.html).", - "type": "object", - "properties": { - "args": { - "description": "Optional. The arguments to pass to the driver. Do not include arguments, such as -libjars or -Dfoo=bar, that can be set as job properties, since a collision may occur that causes an incorrect job submission.", - "type": "array", - "items": { - "type": "string" - } - }, - "fileUris": { - "description": "Optional. HCFS (Hadoop Compatible Filesystem) URIs of files to be copied to the working directory of Hadoop drivers and distributed tasks. Useful for naively parallel tasks.", - "type": "array", - "items": { - "type": "string" - } - }, - "mainClass": { - "description": "The name of the driver's main class. The jar file containing the class must be in the default CLASSPATH or specified in jar_file_uris.", - "type": "string" - }, - "archiveUris": { - "description": "Optional. HCFS URIs of archives to be extracted in the working directory of Hadoop drivers and tasks. Supported file types: .jar, .tar, .tar.gz, .tgz, or .zip.", - "type": "array", - "items": { - "type": "string" - } - }, - "mainJarFileUri": { - "description": "The HCFS URI of the jar file containing the main class. Examples: 'gs://foo-bucket/analytics-binaries/extract-useful-metrics-mr.jar' 'hdfs:/tmp/test-samples/custom-wordcount.jar' 'file:///home/usr/lib/hadoop-mapreduce/hadoop-mapreduce-examples.jar'", - "type": "string" - }, - "jarFileUris": { - "description": "Optional. Jar file URIs to add to the CLASSPATHs of the Hadoop driver and tasks.", - "type": "array", - "items": { - "type": "string" - } - }, - "loggingConfig": { - "description": "Optional. The runtime log config for job execution.", - "$ref": "LoggingConfig" - }, - "properties": { - "additionalProperties": { - "type": "string" - }, - "description": "Optional. A mapping of property names to values, used to configure Hadoop. Properties that conflict with values set by the Cloud Dataproc API may be overwritten. Can include properties set in /etc/hadoop/conf/*-site and classes in user code.", - "type": "object" - } - }, - "id": "HadoopJob" - }, - "YarnApplication": { - "description": "A YARN application created by a job. Application information is a subset of \u003ccode\u003eorg.apache.hadoop.yarn.proto.YarnProtos.ApplicationReportProto\u003c/code\u003e.Beta Feature: This report is available for testing purposes only. It may be changed before final release.", - "type": "object", - "properties": { - "state": { - "enumDescriptions": [ - "Status is unspecified.", - "Status is NEW.", - "Status is NEW_SAVING.", - "Status is SUBMITTED.", - "Status is ACCEPTED.", - "Status is RUNNING.", - "Status is FINISHED.", - "Status is FAILED.", - "Status is KILLED." - ], - "enum": [ - "STATE_UNSPECIFIED", - "NEW", - "NEW_SAVING", - "SUBMITTED", - "ACCEPTED", - "RUNNING", - "FINISHED", - "FAILED", - "KILLED" - ], - "description": "Required. The application state.", - "type": "string" - }, - "name": { - "description": "Required. The application name.", - "type": "string" - }, - "trackingUrl": { - "description": "Optional. The HTTP URL of the ApplicationMaster, HistoryServer, or TimelineServer that provides application-specific information. The URL uses the internal hostname, and requires a proxy server for resolution and, possibly, access.", - "type": "string" - }, - "progress": { - "description": "Required. The numerical progress of the application, from 1 to 100.", - "format": "float", - "type": "number" - } - }, - "id": "YarnApplication" - }, - "SetIamPolicyRequest": { - "properties": { - "policy": { - "description": "REQUIRED: The complete policy to be applied to the resource. The size of the policy is limited to a few 10s of KB. An empty policy is a valid policy but certain Cloud Platform services (such as Projects) might reject them.", - "$ref": "Policy" - } - }, - "id": "SetIamPolicyRequest", - "description": "Request message for SetIamPolicy method.", "type": "object" }, - "HiveJob": { - "description": "A Cloud Dataproc job for running Apache Hive (https://hive.apache.org/) queries on YARN.", - "type": "object", + "ListClustersResponse": { + "description": "The list of all clusters in a project.", + "id": "ListClustersResponse", "properties": { - "jarFileUris": { - "description": "Optional. HCFS URIs of jar files to add to the CLASSPATH of the Hive server and Hadoop MapReduce (MR) tasks. Can contain Hive SerDes and UDFs.", - "type": "array", + "clusters": { + "description": "Output only. The clusters in the project.", "items": { - "type": "string" - } - }, - "scriptVariables": { - "additionalProperties": { - "type": "string" + "$ref": "Cluster" }, - "description": "Optional. Mapping of query variable names to values (equivalent to the Hive command: SET name=\"value\";).", - "type": "object" + "type": "array" }, - "properties": { - "additionalProperties": { - "type": "string" - }, - "description": "Optional. A mapping of property names and values, used to configure Hive. Properties that conflict with values set by the Cloud Dataproc API may be overwritten. Can include properties set in /etc/hadoop/conf/*-site.xml, /etc/hive/conf/hive-site.xml, and classes in user code.", - "type": "object" - }, - "continueOnFailure": { - "description": "Optional. Whether to continue executing queries if a query fails. The default value is false. Setting to true can be useful when executing independent parallel queries.", - "type": "boolean" - }, - "queryFileUri": { - "description": "The HCFS URI of the script that contains Hive queries.", - "type": "string" - }, - "queryList": { - "$ref": "QueryList", - "description": "A list of queries." - } - }, - "id": "HiveJob" - }, - "WorkflowGraph": { - "description": "The workflow graph.", - "type": "object", - "properties": { - "nodes": { - "description": "Output only. The workflow nodes.", - "type": "array", - "items": { - "$ref": "WorkflowNode" - } - } - }, - "id": "WorkflowGraph" - }, - "DiagnoseClusterResults": { - "properties": { - "outputUri": { - "description": "Output only. The Google Cloud Storage URI of the diagnostic output. The output report is a plain text file with a summary of collected diagnostics.", + "nextPageToken": { + "description": "Output only. This token is included in the response if there are more results to fetch. To fetch additional results, provide this value as the page_token in a subsequent \u003ccode\u003eListClustersRequest\u003c/code\u003e.", "type": "string" } }, - "id": "DiagnoseClusterResults", - "description": "The location of diagnostic output.", "type": "object" }, - "ClusterConfig": { - "description": "The cluster config.", - "type": "object", + "ListJobsResponse": { + "description": "A list of jobs in a project.", + "id": "ListJobsResponse", "properties": { - "initializationActions": { - "description": "Optional. Commands to execute on each node after config is completed. By default, executables are run on master and all worker nodes. You can test a node's \u003ccode\u003erole\u003c/code\u003e metadata to run an executable on a master or worker node, as shown below using curl (you can also use wget):\nROLE=$(curl -H Metadata-Flavor:Google http://metadata/computeMetadata/v1beta2/instance/attributes/dataproc-role)\nif [[ \"${ROLE}\" == 'Master' ]]; then\n ... master specific actions ...\nelse\n ... worker specific actions ...\nfi\n", - "type": "array", + "jobs": { + "description": "Output only. Jobs list.", "items": { - "$ref": "NodeInitializationAction" - } + "$ref": "Job" + }, + "type": "array" }, - "lifecycleConfig": { - "$ref": "LifecycleConfig", - "description": "Optional. The config setting for auto delete cluster schedule." - }, - "configBucket": { - "description": "Optional. A Google Cloud Storage staging bucket used for sharing generated SSH keys and config. If you do not specify a staging bucket, Cloud Dataproc will determine an appropriate Cloud Storage location (US, ASIA, or EU) for your cluster's staging bucket according to the Google Compute Engine zone where your cluster is deployed, and then it will create and manage this project-level, per-location bucket for you.", - "type": "string" - }, - "workerConfig": { - "description": "Optional. The Google Compute Engine config settings for worker instances in a cluster.", - "$ref": "InstanceGroupConfig" - }, - "gceClusterConfig": { - "description": "Required. The shared Google Compute Engine config settings for all instances in a cluster.", - "$ref": "GceClusterConfig" - }, - "softwareConfig": { - "description": "Optional. The config settings for software inside the cluster.", - "$ref": "SoftwareConfig" - }, - "masterConfig": { - "description": "Optional. The Google Compute Engine config settings for the master instance in a cluster.", - "$ref": "InstanceGroupConfig" - }, - "secondaryWorkerConfig": { - "$ref": "InstanceGroupConfig", - "description": "Optional. The Google Compute Engine config settings for additional worker instances in a cluster." - } - }, - "id": "ClusterConfig" - }, - "PySparkJob": { - "description": "A Cloud Dataproc job for running Apache PySpark (https://spark.apache.org/docs/0.9.0/python-programming-guide.html) applications on YARN.", - "type": "object", - "properties": { - "jarFileUris": { - "description": "Optional. HCFS URIs of jar files to add to the CLASSPATHs of the Python driver and tasks.", - "type": "array", - "items": { - "type": "string" - } - }, - "loggingConfig": { - "$ref": "LoggingConfig", - "description": "Optional. The runtime log config for job execution." - }, - "properties": { - "description": "Optional. A mapping of property names to values, used to configure PySpark. Properties that conflict with values set by the Cloud Dataproc API may be overwritten. Can include properties set in /etc/spark/conf/spark-defaults.conf and classes in user code.", - "type": "object", - "additionalProperties": { - "type": "string" - } - }, - "args": { - "description": "Optional. The arguments to pass to the driver. Do not include arguments, such as --conf, that can be set as job properties, since a collision may occur that causes an incorrect job submission.", - "type": "array", - "items": { - "type": "string" - } - }, - "fileUris": { - "description": "Optional. HCFS URIs of files to be copied to the working directory of Python drivers and distributed tasks. Useful for naively parallel tasks.", - "type": "array", - "items": { - "type": "string" - } - }, - "pythonFileUris": { - "description": "Optional. HCFS file URIs of Python files to pass to the PySpark framework. Supported file types: .py, .egg, and .zip.", - "type": "array", - "items": { - "type": "string" - } - }, - "mainPythonFileUri": { - "description": "Required. The HCFS URI of the main Python file to use as the driver. Must be a .py file.", - "type": "string" - }, - "archiveUris": { - "description": "Optional. HCFS URIs of archives to be extracted in the working directory of .jar, .tar, .tar.gz, .tgz, and .zip.", - "type": "array", - "items": { - "type": "string" - } - } - }, - "id": "PySparkJob" - }, - "ClusterMetrics": { - "description": "Contains cluster daemon metrics, such as HDFS and YARN stats.Beta Feature: This report is available for testing purposes only. It may be changed before final release.", - "type": "object", - "properties": { - "yarnMetrics": { - "description": "The YARN metrics.", - "type": "object", - "additionalProperties": { - "format": "int64", - "type": "string" - } - }, - "hdfsMetrics": { - "description": "The HDFS metrics.", - "type": "object", - "additionalProperties": { - "format": "int64", - "type": "string" - } - } - }, - "id": "ClusterMetrics" - }, - "AcceleratorConfig": { - "description": "Specifies the type and number of accelerator cards attached to the instances of an instance group (see GPUs on Compute Engine).", - "type": "object", - "properties": { - "acceleratorCount": { - "description": "The number of the accelerator cards of this type exposed to this instance.", - "format": "int32", - "type": "integer" - }, - "acceleratorTypeUri": { - "description": "Full URL, partial URI, or short name of the accelerator type resource to expose to this instance. See Google Compute Engine AcceleratorTypes( /compute/docs/reference/beta/acceleratorTypes)Examples * https://www.googleapis.com/compute/beta/projects/[project_id]/zones/us-east1-a/acceleratorTypes/nvidia-tesla-k80 * projects/[project_id]/zones/us-east1-a/acceleratorTypes/nvidia-tesla-k80 * nvidia-tesla-k80", + "nextPageToken": { + "description": "Optional. This token is included in the response if there are more results to fetch. To fetch additional results, provide this value as the page_token in a subsequent \u003ccode\u003eListJobsRequest\u003c/code\u003e.", "type": "string" } }, - "id": "AcceleratorConfig" + "type": "object" }, - "TestIamPermissionsRequest": { - "description": "Request message for TestIamPermissions method.", - "type": "object", + "ListOperationsResponse": { + "description": "The response message for Operations.ListOperations.", + "id": "ListOperationsResponse", "properties": { - "permissions": { - "description": "The set of permissions to check for the resource. Permissions with wildcards (such as '*' or 'storage.*') are not allowed. For more information see IAM Overview (https://cloud.google.com/iam/docs/overview#permissions).", - "type": "array", + "nextPageToken": { + "description": "The standard List next-page token.", + "type": "string" + }, + "operations": { + "description": "A list of operations that matches the specified filter in the request.", "items": { - "type": "string" - } + "$ref": "Operation" + }, + "type": "array" } }, - "id": "TestIamPermissionsRequest" + "type": "object" + }, + "ListWorkflowTemplatesResponse": { + "description": "A response to a request to list workflow templates in a project.", + "id": "ListWorkflowTemplatesResponse", + "properties": { + "nextPageToken": { + "description": "Output only. This token is included in the response if there are more results to fetch. To fetch additional results, provide this value as the page_token in a subsequent \u003ccode\u003eListWorkflowTemplatesRequest\u003c/code\u003e.", + "type": "string" + }, + "templates": { + "description": "Output only. WorkflowTemplates list.", + "items": { + "$ref": "WorkflowTemplate" + }, + "type": "array" + } + }, + "type": "object" }, "LoggingConfig": { "description": "The runtime logging config of the job.", - "type": "object", + "id": "LoggingConfig", "properties": { "driverLogLevels": { "additionalProperties": { @@ -2636,41 +2501,133 @@ "type": "object" } }, - "id": "LoggingConfig" + "type": "object" + }, + "ManagedCluster": { + "description": "Cluster that is managed by the workflow.", + "id": "ManagedCluster", + "properties": { + "clusterName": { + "description": "Required. The cluster name prefix. A unique cluster name will be formed by appending a random suffix.The name must contain only lower-case letters (a-z), numbers (0-9), and hyphens (-). Must begin with a letter. Cannot begin or end with hyphen. Must consist of between 2 and 35 characters.", + "type": "string" + }, + "config": { + "$ref": "ClusterConfig", + "description": "Required. The cluster configuration." + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Optional. The labels to associate with this cluster.Label keys must be between 1 and 63 characters long, and must conform to the following PCRE regular expression: \\p{Ll}\\p{Lo}{0,62}Label values must be between 1 and 63 characters long, and must conform to the following PCRE regular expression: \\p{Ll}\\p{Lo}\\p{N}_-{0,63}No more than 32 labels can be associated with a given cluster.", + "type": "object" + } + }, + "type": "object" + }, + "ManagedGroupConfig": { + "description": "Specifies the resources used to actively manage an instance group.", + "id": "ManagedGroupConfig", + "properties": { + "instanceGroupManagerName": { + "description": "Output only. The name of the Instance Group Manager for this group.", + "type": "string" + }, + "instanceTemplateName": { + "description": "Output only. The name of the Instance Template used for the Managed Instance Group.", + "type": "string" + } + }, + "type": "object" + }, + "NodeInitializationAction": { + "description": "Specifies an executable to run on a fully configured node and a timeout period for executable completion.", + "id": "NodeInitializationAction", + "properties": { + "executableFile": { + "description": "Required. Cloud Storage URI of executable file.", + "type": "string" + }, + "executionTimeout": { + "description": "Optional. Amount of time executable has to complete. Default is 10 minutes. Cluster creation fails with an explanatory error message (the name of the executable that caused the error and the exceeded timeout period) if the executable is not completed at end of the timeout period.", + "format": "google-duration", + "type": "string" + } + }, + "type": "object" + }, + "Operation": { + "description": "This resource represents a long-running operation that is the result of a network API call.", + "id": "Operation", + "properties": { + "done": { + "description": "If the value is false, it means the operation is still in progress. If true, the operation is completed, and either error or response is available.", + "type": "boolean" + }, + "error": { + "$ref": "Status", + "description": "The error result of the operation in case of failure or cancellation." + }, + "metadata": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "description": "Service-specific metadata associated with the operation. It typically contains progress information and common metadata such as create time. Some services might not provide such metadata. Any method that returns a long-running operation should document the metadata type, if any.", + "type": "object" + }, + "name": { + "description": "The server-assigned name, which is only unique within the same service that originally returns it. If you use the default HTTP mapping, the name should have the format of operations/some/unique/name.", + "type": "string" + }, + "response": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "description": "The normal response of the operation in case of success. If the original method returns no data on success, such as Delete, the response is google.protobuf.Empty. If the original method is standard Get/Create/Update, the response should be the resource. For other methods, the response should have the type XxxResponse, where Xxx is the original method name. For example, if the original method name is TakeSnapshot(), the inferred response type is TakeSnapshotResponse.", + "type": "object" + } + }, + "type": "object" }, "OrderedJob": { "description": "A job executed by the workflow.", - "type": "object", + "id": "OrderedJob", "properties": { - "pigJob": { - "$ref": "PigJob", - "description": "Job is a Pig job." - }, - "stepId": { - "description": "Required. The step id. The id must be unique among all jobs within the template.The step id is used as prefix for job id, as job workflow-step-id label, and in prerequisite_step_ids field from other steps.", - "type": "string" - }, "hadoopJob": { - "description": "Job is a Hadoop job.", - "$ref": "HadoopJob" + "$ref": "HadoopJob", + "description": "Job is a Hadoop job." }, "hiveJob": { "$ref": "HiveJob", "description": "Job is a Hive job." }, - "prerequisiteStepIds": { - "description": "Optional. The optional list of prerequisite job step_ids. If not specified, the job will start at the beginning of workflow.", - "type": "array", - "items": { - "type": "string" - } - }, "labels": { - "description": "Optional. The labels to associate with this job.Label keys must be between 1 and 63 characters long, and must conform to the following regular expression: \\p{Ll}\\p{Lo}{0,62}Label values must be between 1 and 63 characters long, and must conform to the following regular expression: \\p{Ll}\\p{Lo}\\p{N}_-{0,63}No more than 64 labels can be associated with a given job.", - "type": "object", "additionalProperties": { "type": "string" - } + }, + "description": "Optional. The labels to associate with this job.Label keys must be between 1 and 63 characters long, and must conform to the following regular expression: \\p{Ll}\\p{Lo}{0,62}Label values must be between 1 and 63 characters long, and must conform to the following regular expression: \\p{Ll}\\p{Lo}\\p{N}_-{0,63}No more than 32 labels can be associated with a given job.", + "type": "object" + }, + "pigJob": { + "$ref": "PigJob", + "description": "Job is a Pig job." + }, + "prerequisiteStepIds": { + "description": "Optional. The optional list of prerequisite job step_ids. If not specified, the job will start at the beginning of workflow.", + "items": { + "type": "string" + }, + "type": "array" + }, + "pysparkJob": { + "$ref": "PySparkJob", + "description": "Job is a Pyspark job." + }, + "scheduling": { + "$ref": "JobScheduling", + "description": "Optional. Job scheduling configuration." }, "sparkJob": { "$ref": "SparkJob", @@ -2680,45 +2637,418 @@ "$ref": "SparkSqlJob", "description": "Job is a SparkSql job." }, - "pysparkJob": { - "description": "Job is a Pyspark job.", - "$ref": "PySparkJob" - }, - "scheduling": { - "description": "Optional. Job scheduling configuration.", - "$ref": "JobScheduling" + "stepId": { + "description": "Required. The step id. The id must be unique among all jobs within the template.The step id is used as prefix for job id, as job goog-dataproc-workflow-step-id label, and in prerequisiteStepIds field from other steps.The id must contain only letters (a-z, A-Z), numbers (0-9), underscores (_), and hyphens (-). Cannot begin or end with underscore or hyphen. Must consist of between 3 and 50 characters.", + "type": "string" } }, - "id": "OrderedJob" + "type": "object" + }, + "PigJob": { + "description": "A Cloud Dataproc job for running Apache Pig (https://pig.apache.org/) queries on YARN.", + "id": "PigJob", + "properties": { + "continueOnFailure": { + "description": "Optional. Whether to continue executing queries if a query fails. The default value is false. Setting to true can be useful when executing independent parallel queries.", + "type": "boolean" + }, + "jarFileUris": { + "description": "Optional. HCFS URIs of jar files to add to the CLASSPATH of the Pig Client and Hadoop MapReduce (MR) tasks. Can contain Pig UDFs.", + "items": { + "type": "string" + }, + "type": "array" + }, + "loggingConfig": { + "$ref": "LoggingConfig", + "description": "Optional. The runtime log config for job execution." + }, + "properties": { + "additionalProperties": { + "type": "string" + }, + "description": "Optional. A mapping of property names to values, used to configure Pig. Properties that conflict with values set by the Cloud Dataproc API may be overwritten. Can include properties set in /etc/hadoop/conf/*-site.xml, /etc/pig/conf/pig.properties, and classes in user code.", + "type": "object" + }, + "queryFileUri": { + "description": "The HCFS URI of the script that contains the Pig queries.", + "type": "string" + }, + "queryList": { + "$ref": "QueryList", + "description": "A list of queries." + }, + "scriptVariables": { + "additionalProperties": { + "type": "string" + }, + "description": "Optional. Mapping of query variable names to values (equivalent to the Pig command: name=[value]).", + "type": "object" + } + }, + "type": "object" + }, + "Policy": { + "description": "Defines an Identity and Access Management (IAM) policy. It is used to specify access control policies for Cloud Platform resources.A Policy consists of a list of bindings. A Binding binds a list of members to a role, where the members can be user accounts, Google groups, Google domains, and service accounts. A role is a named list of permissions defined by IAM.Example\n{\n \"bindings\": [\n {\n \"role\": \"roles/owner\",\n \"members\": [\n \"user:mike@example.com\",\n \"group:admins@example.com\",\n \"domain:google.com\",\n \"serviceAccount:my-other-app@appspot.gserviceaccount.com\",\n ]\n },\n {\n \"role\": \"roles/viewer\",\n \"members\": [\"user:sean@example.com\"]\n }\n ]\n}\nFor a description of IAM and its features, see the IAM developer's guide (https://cloud.google.com/iam/docs).", + "id": "Policy", + "properties": { + "bindings": { + "description": "Associates a list of members to a role. bindings with no members will result in an error.", + "items": { + "$ref": "Binding" + }, + "type": "array" + }, + "etag": { + "description": "etag is used for optimistic concurrency control as a way to help prevent simultaneous updates of a policy from overwriting each other. It is strongly suggested that systems make use of the etag in the read-modify-write cycle to perform policy updates in order to avoid race conditions: An etag is returned in the response to getIamPolicy, and systems are expected to put that etag in the request to setIamPolicy to ensure that their change will be applied to the same version of the policy.If no etag is provided in the call to setIamPolicy, then the existing policy is overwritten blindly.", + "format": "byte", + "type": "string" + }, + "version": { + "description": "Deprecated.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "PySparkJob": { + "description": "A Cloud Dataproc job for running Apache PySpark (https://spark.apache.org/docs/0.9.0/python-programming-guide.html) applications on YARN.", + "id": "PySparkJob", + "properties": { + "archiveUris": { + "description": "Optional. HCFS URIs of archives to be extracted in the working directory of .jar, .tar, .tar.gz, .tgz, and .zip.", + "items": { + "type": "string" + }, + "type": "array" + }, + "args": { + "description": "Optional. The arguments to pass to the driver. Do not include arguments, such as --conf, that can be set as job properties, since a collision may occur that causes an incorrect job submission.", + "items": { + "type": "string" + }, + "type": "array" + }, + "fileUris": { + "description": "Optional. HCFS URIs of files to be copied to the working directory of Python drivers and distributed tasks. Useful for naively parallel tasks.", + "items": { + "type": "string" + }, + "type": "array" + }, + "jarFileUris": { + "description": "Optional. HCFS URIs of jar files to add to the CLASSPATHs of the Python driver and tasks.", + "items": { + "type": "string" + }, + "type": "array" + }, + "loggingConfig": { + "$ref": "LoggingConfig", + "description": "Optional. The runtime log config for job execution." + }, + "mainPythonFileUri": { + "description": "Required. The HCFS URI of the main Python file to use as the driver. Must be a .py file.", + "type": "string" + }, + "properties": { + "additionalProperties": { + "type": "string" + }, + "description": "Optional. A mapping of property names to values, used to configure PySpark. Properties that conflict with values set by the Cloud Dataproc API may be overwritten. Can include properties set in /etc/spark/conf/spark-defaults.conf and classes in user code.", + "type": "object" + }, + "pythonFileUris": { + "description": "Optional. HCFS file URIs of Python files to pass to the PySpark framework. Supported file types: .py, .egg, and .zip.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "QueryList": { + "description": "A list of queries to run on a cluster.", + "id": "QueryList", + "properties": { + "queries": { + "description": "Required. The queries to execute. You do not need to terminate a query with a semicolon. Multiple queries can be specified in one string by separating each with a semicolon. Here is an example of an Cloud Dataproc API snippet that uses a QueryList to specify a HiveJob:\n\"hiveJob\": {\n \"queryList\": {\n \"queries\": [\n \"query1\",\n \"query2\",\n \"query3;query4\",\n ]\n }\n}\n", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "SetIamPolicyRequest": { + "description": "Request message for SetIamPolicy method.", + "id": "SetIamPolicyRequest", + "properties": { + "policy": { + "$ref": "Policy", + "description": "REQUIRED: The complete policy to be applied to the resource. The size of the policy is limited to a few 10s of KB. An empty policy is a valid policy but certain Cloud Platform services (such as Projects) might reject them." + } + }, + "type": "object" + }, + "SoftwareConfig": { + "description": "Specifies the selection and config of software inside the cluster.", + "id": "SoftwareConfig", + "properties": { + "imageVersion": { + "description": "Optional. The version of software inside the cluster. It must match the regular expression [0-9]+\\.[0-9]+. If unspecified, it defaults to the latest version (see Cloud Dataproc Versioning).", + "type": "string" + }, + "properties": { + "additionalProperties": { + "type": "string" + }, + "description": "Optional. The properties to set on daemon config files.Property keys are specified in prefix:property format, such as core:fs.defaultFS. The following are supported prefixes and their mappings:\ncapacity-scheduler: capacity-scheduler.xml\ncore: core-site.xml\ndistcp: distcp-default.xml\nhdfs: hdfs-site.xml\nhive: hive-site.xml\nmapred: mapred-site.xml\npig: pig.properties\nspark: spark-defaults.conf\nyarn: yarn-site.xmlFor more information, see Cluster properties.", + "type": "object" + } + }, + "type": "object" + }, + "SparkJob": { + "description": "A Cloud Dataproc job for running Apache Spark (http://spark.apache.org/) applications on YARN.", + "id": "SparkJob", + "properties": { + "archiveUris": { + "description": "Optional. HCFS URIs of archives to be extracted in the working directory of Spark drivers and tasks. Supported file types: .jar, .tar, .tar.gz, .tgz, and .zip.", + "items": { + "type": "string" + }, + "type": "array" + }, + "args": { + "description": "Optional. The arguments to pass to the driver. Do not include arguments, such as --conf, that can be set as job properties, since a collision may occur that causes an incorrect job submission.", + "items": { + "type": "string" + }, + "type": "array" + }, + "fileUris": { + "description": "Optional. HCFS URIs of files to be copied to the working directory of Spark drivers and distributed tasks. Useful for naively parallel tasks.", + "items": { + "type": "string" + }, + "type": "array" + }, + "jarFileUris": { + "description": "Optional. HCFS URIs of jar files to add to the CLASSPATHs of the Spark driver and tasks.", + "items": { + "type": "string" + }, + "type": "array" + }, + "loggingConfig": { + "$ref": "LoggingConfig", + "description": "Optional. The runtime log config for job execution." + }, + "mainClass": { + "description": "The name of the driver's main class. The jar file that contains the class must be in the default CLASSPATH or specified in jar_file_uris.", + "type": "string" + }, + "mainJarFileUri": { + "description": "The HCFS URI of the jar file that contains the main class.", + "type": "string" + }, + "properties": { + "additionalProperties": { + "type": "string" + }, + "description": "Optional. A mapping of property names to values, used to configure Spark. Properties that conflict with values set by the Cloud Dataproc API may be overwritten. Can include properties set in /etc/spark/conf/spark-defaults.conf and classes in user code.", + "type": "object" + } + }, + "type": "object" + }, + "SparkSqlJob": { + "description": "A Cloud Dataproc job for running Apache Spark SQL (http://spark.apache.org/sql/) queries.", + "id": "SparkSqlJob", + "properties": { + "jarFileUris": { + "description": "Optional. HCFS URIs of jar files to be added to the Spark CLASSPATH.", + "items": { + "type": "string" + }, + "type": "array" + }, + "loggingConfig": { + "$ref": "LoggingConfig", + "description": "Optional. The runtime log config for job execution." + }, + "properties": { + "additionalProperties": { + "type": "string" + }, + "description": "Optional. A mapping of property names to values, used to configure Spark SQL's SparkConf. Properties that conflict with values set by the Cloud Dataproc API may be overwritten.", + "type": "object" + }, + "queryFileUri": { + "description": "The HCFS URI of the script that contains SQL queries.", + "type": "string" + }, + "queryList": { + "$ref": "QueryList", + "description": "A list of queries." + }, + "scriptVariables": { + "additionalProperties": { + "type": "string" + }, + "description": "Optional. Mapping of query variable names to values (equivalent to the Spark SQL command: SET name=\"value\";).", + "type": "object" + } + }, + "type": "object" + }, + "Status": { + "description": "The Status type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by gRPC (https://github.com/grpc). The error model is designed to be:\nSimple to use and understand for most users\nFlexible enough to meet unexpected needsOverviewThe Status message contains three pieces of data: error code, error message, and error details. The error code should be an enum value of google.rpc.Code, but it may accept additional error codes if needed. The error message should be a developer-facing English message that helps developers understand and resolve the error. If a localized user-facing error message is needed, put the localized message in the error details or localize it in the client. The optional error details may contain arbitrary information about the error. There is a predefined set of error detail types in the package google.rpc that can be used for common error conditions.Language mappingThe Status message is the logical representation of the error model, but it is not necessarily the actual wire format. When the Status message is exposed in different client libraries and different wire protocols, it can be mapped differently. For example, it will likely be mapped to some exceptions in Java, but more likely mapped to some error codes in C.Other usesThe error model and the Status message can be used in a variety of environments, either with or without APIs, to provide a consistent developer experience across different environments.Example uses of this error model include:\nPartial errors. If a service needs to return partial errors to the client, it may embed the Status in the normal response to indicate the partial errors.\nWorkflow errors. A typical workflow has multiple steps. Each step may have a Status message for error reporting.\nBatch operations. If a client uses batch request and batch response, the Status message should be used directly inside batch response, one for each error sub-response.\nAsynchronous operations. If an API call embeds asynchronous operation results in its response, the status of those operations should be represented directly using the Status message.\nLogging. If some API errors are stored in logs, the message Status could be used directly after any stripping needed for security/privacy reasons.", + "id": "Status", + "properties": { + "code": { + "description": "The status code, which should be an enum value of google.rpc.Code.", + "format": "int32", + "type": "integer" + }, + "details": { + "description": "A list of messages that carry the error details. There is a common set of message types for APIs to use.", + "items": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the google.rpc.Status.details field, or localized by the client.", + "type": "string" + } + }, + "type": "object" + }, + "SubmitJobRequest": { + "description": "A request to submit a job.", + "id": "SubmitJobRequest", + "properties": { + "job": { + "$ref": "Job", + "description": "Required. The job resource." + }, + "requestId": { + "description": "Optional. A unique id used to identify the request. If the server receives two SubmitJobRequest requests with the same id, then the second request will be ignored and the first Job created and stored in the backend is returned.It is recommended to always set this value to a UUID (https://en.wikipedia.org/wiki/Universally_unique_identifier).The id must contain only letters (a-z, A-Z), numbers (0-9), underscores (_), and hyphens (-). The maximum length is 40 characters.", + "type": "string" + } + }, + "type": "object" + }, + "TestIamPermissionsRequest": { + "description": "Request message for TestIamPermissions method.", + "id": "TestIamPermissionsRequest", + "properties": { + "permissions": { + "description": "The set of permissions to check for the resource. Permissions with wildcards (such as '*' or 'storage.*') are not allowed. For more information see IAM Overview (https://cloud.google.com/iam/docs/overview#permissions).", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "TestIamPermissionsResponse": { + "description": "Response message for TestIamPermissions method.", + "id": "TestIamPermissionsResponse", + "properties": { + "permissions": { + "description": "A subset of TestPermissionsRequest.permissions that the caller is allowed.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "WorkflowGraph": { + "description": "The workflow graph.", + "id": "WorkflowGraph", + "properties": { + "nodes": { + "description": "Output only. The workflow nodes.", + "items": { + "$ref": "WorkflowNode" + }, + "type": "array" + } + }, + "type": "object" + }, + "WorkflowMetadata": { + "description": "A Cloud Dataproc workflow template resource.", + "id": "WorkflowMetadata", + "properties": { + "clusterName": { + "description": "Output only. The name of the managed cluster.", + "type": "string" + }, + "createCluster": { + "$ref": "ClusterOperation", + "description": "Output only. The create cluster operation metadata." + }, + "deleteCluster": { + "$ref": "ClusterOperation", + "description": "Output only. The delete cluster operation metadata." + }, + "graph": { + "$ref": "WorkflowGraph", + "description": "Output only. The workflow graph." + }, + "parameters": { + "additionalProperties": { + "type": "string" + }, + "description": "Map from parameter names to values that were used for those parameters.", + "type": "object" + }, + "state": { + "description": "Output only. The workflow state.", + "enum": [ + "UNKNOWN", + "PENDING", + "RUNNING", + "DONE" + ], + "enumDescriptions": [ + "Unused.", + "The operation has been created.", + "The operation is running.", + "The operation is done; either cancelled or completed." + ], + "type": "string" + }, + "template": { + "description": "Output only. The \"resource name\" of the template.", + "type": "string" + }, + "version": { + "description": "Output only. The version of template at the time of workflow instantiation.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" }, "WorkflowNode": { "description": "The workflow node.", - "type": "object", + "id": "WorkflowNode", "properties": { - "state": { - "enumDescriptions": [ - "State is unspecified.", - "The node is awaiting prerequisite node to finish.", - "The node is runnable but not running.", - "The node is running.", - "The node completed successfully.", - "The node failed. A node can be marked FAILED because its ancestor or peer failed." - ], - "enum": [ - "NODE_STATUS_UNSPECIFIED", - "BLOCKED", - "RUNNABLE", - "RUNNING", - "COMPLETED", - "FAILED" - ], - "description": "Output only. The node state.", - "type": "string" - }, - "stepId": { - "description": "Output only. The name of the node.", - "type": "string" - }, "error": { "description": "Output only. The error detail.", "type": "string" @@ -2729,130 +3059,150 @@ }, "prerequisiteStepIds": { "description": "Output only. Node's prerequisite nodes.", - "type": "array", "items": { "type": "string" - } - } - }, - "id": "WorkflowNode" - }, - "InstantiateWorkflowTemplateRequest": { - "description": "A request to instantiate a workflow template.", - "type": "object", - "properties": { - "version": { - "description": "Optional. The version of workflow template to instantiate. If specified, the workflow will be instantiated only if the current version of the workflow template has the supplied version.This option cannot be used to instantiate a previous version of workflow template.", - "format": "int32", - "type": "integer" + }, + "type": "array" }, - "instanceId": { - "description": "Optional. A tag that prevents multiple concurrent workflow instances with the same tag from running. This mitigates risk of concurrent instances started due to retries.It is recommended to always set this value to a UUID (https://en.wikipedia.org/wiki/Universally_unique_identifier).The tag must contain only letters (a-z, A-Z), numbers (0-9), underscores (_), and hyphens (-). The maximum length is 40 characters.", + "state": { + "description": "Output only. The node state.", + "enum": [ + "NODE_STATUS_UNSPECIFIED", + "BLOCKED", + "RUNNABLE", + "RUNNING", + "COMPLETED", + "FAILED" + ], + "enumDescriptions": [ + "State is unspecified.", + "The node is awaiting prerequisite node to finish.", + "The node is runnable but not running.", + "The node is running.", + "The node completed successfully.", + "The node failed. A node can be marked FAILED because its ancestor or peer failed." + ], + "type": "string" + }, + "stepId": { + "description": "Output only. The name of the node.", "type": "string" } }, - "id": "InstantiateWorkflowTemplateRequest" + "type": "object" }, - "SubmitJobRequest": { - "description": "A request to submit a job.", - "type": "object", - "properties": { - "job": { - "$ref": "Job", - "description": "Required. The job resource." - } - }, - "id": "SubmitJobRequest" - }, - "JobScheduling": { - "description": "Job scheduling options.", - "type": "object", - "properties": { - "maxFailuresPerHour": { - "description": "Optional. Maximum number of times per hour a driver may be restarted as a result of driver terminating with non-zero code before job is reported failed.A job may be reported as thrashing if driver exits with non-zero code 4 times within 10 minute window.Maximum value is 10.", - "format": "int32", - "type": "integer" - } - }, - "id": "JobScheduling" - }, - "Cluster": { - "description": "Describes the identifying information, config, and status of a cluster of Google Compute Engine instances.", - "type": "object", + "WorkflowTemplate": { + "description": "A Cloud Dataproc workflow template resource.", + "id": "WorkflowTemplate", "properties": { + "createTime": { + "description": "Output only. The time template was created.", + "format": "google-datetime", + "type": "string" + }, + "id": { + "description": "Required. The template id.The id must contain only letters (a-z, A-Z), numbers (0-9), underscores (_), and hyphens (-). Cannot begin or end with underscore or hyphen. Must consist of between 3 and 50 characters.", + "type": "string" + }, + "jobs": { + "description": "Required. The Directed Acyclic Graph of Jobs to submit.", + "items": { + "$ref": "OrderedJob" + }, + "type": "array" + }, "labels": { "additionalProperties": { "type": "string" }, - "description": "Optional. The labels to associate with this cluster. Label keys must contain 1 to 63 characters, and must conform to RFC 1035 (https://www.ietf.org/rfc/rfc1035.txt). Label values may be empty, but, if present, must contain 1 to 63 characters, and must conform to RFC 1035 (https://www.ietf.org/rfc/rfc1035.txt). No more than 32 labels can be associated with a cluster.", + "description": "Optional. The labels to associate with this template. These labels will be propagated to all jobs and clusters created by the workflow instance.Label keys must contain 1 to 63 characters, and must conform to RFC 1035 (https://www.ietf.org/rfc/rfc1035.txt).Label values may be empty, but, if present, must contain 1 to 63 characters, and must conform to RFC 1035 (https://www.ietf.org/rfc/rfc1035.txt).No more than 32 labels can be associated with a template.", "type": "object" }, - "metrics": { - "description": "Contains cluster daemon metrics such as HDFS and YARN stats.Beta Feature: This report is available for testing purposes only. It may be changed before final release.", - "$ref": "ClusterMetrics" - }, - "status": { - "description": "Output only. Cluster status.", - "$ref": "ClusterStatus" - }, - "config": { - "description": "Required. The cluster config. Note that Cloud Dataproc may set default values, and values may change when clusters are updated.", - "$ref": "ClusterConfig" - }, - "statusHistory": { - "description": "Output only. The previous cluster status.", - "type": "array", - "items": { - "$ref": "ClusterStatus" - } - }, - "clusterName": { - "description": "Required. The cluster name. Cluster names within a project must be unique. Names of deleted clusters can be reused.", + "name": { + "description": "Output only. The \"resource name\" of the template, as described in https://cloud.google.com/apis/design/resource_names of the form projects/{project_id}/regions/{region}/workflowTemplates/{template_id}", "type": "string" }, - "clusterUuid": { - "description": "Output only. A cluster UUID (Unique Universal Identifier). Cloud Dataproc generates this value when it creates the cluster.", + "placement": { + "$ref": "WorkflowTemplatePlacement", + "description": "Required. WorkflowTemplate scheduling information." + }, + "updateTime": { + "description": "Output only. The time template was last updated.", + "format": "google-datetime", "type": "string" }, - "projectId": { - "description": "Required. The Google Cloud Platform project ID that the cluster belongs to.", - "type": "string" + "version": { + "description": "Optional. Used to perform a consistent read-modify-write.This field should be left blank for a CreateWorkflowTemplate request. It is required for an UpdateWorkflowTemplate request, and must match the current server version. A typical update template flow would fetch the current template with a GetWorkflowTemplate request, which will return the current template with the version field filled in with the current server version. The user updates other fields in the template, then returns it as part of the UpdateWorkflowTemplate request.", + "format": "int32", + "type": "integer" } }, - "id": "Cluster" + "type": "object" }, - "TestIamPermissionsResponse": { - "description": "Response message for TestIamPermissions method.", - "type": "object", + "WorkflowTemplatePlacement": { + "description": "Specifies workflow execution target.Either managed_cluster or cluster_selector is required.", + "id": "WorkflowTemplatePlacement", "properties": { - "permissions": { - "description": "A subset of TestPermissionsRequest.permissions that the caller is allowed.", - "type": "array", - "items": { - "type": "string" - } + "clusterSelector": { + "$ref": "ClusterSelector", + "description": "Optional. A selector that chooses target cluster for jobs based on metadata.The selector is evaluated at the time each job is submitted." + }, + "managedCluster": { + "$ref": "ManagedCluster", + "description": "Optional. A cluster that is managed by the workflow." } }, - "id": "TestIamPermissionsResponse" - } - }, - "protocol": "rest", - "icons": { - "x32": "http://www.google.com/images/icons/product/search-32.gif", - "x16": "http://www.google.com/images/icons/product/search-16.gif" - }, - "canonicalName": "Dataproc", - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/cloud-platform": { - "description": "View and manage your data across Google Cloud Platform services" + "type": "object" + }, + "YarnApplication": { + "description": "A YARN application created by a job. Application information is a subset of \u003ccode\u003eorg.apache.hadoop.yarn.proto.YarnProtos.ApplicationReportProto\u003c/code\u003e.Beta Feature: This report is available for testing purposes only. It may be changed before final release.", + "id": "YarnApplication", + "properties": { + "name": { + "description": "Required. The application name.", + "type": "string" + }, + "progress": { + "description": "Required. The numerical progress of the application, from 1 to 100.", + "format": "float", + "type": "number" + }, + "state": { + "description": "Required. The application state.", + "enum": [ + "STATE_UNSPECIFIED", + "NEW", + "NEW_SAVING", + "SUBMITTED", + "ACCEPTED", + "RUNNING", + "FINISHED", + "FAILED", + "KILLED" + ], + "enumDescriptions": [ + "Status is unspecified.", + "Status is NEW.", + "Status is NEW_SAVING.", + "Status is SUBMITTED.", + "Status is ACCEPTED.", + "Status is RUNNING.", + "Status is FINISHED.", + "Status is FAILED.", + "Status is KILLED." + ], + "type": "string" + }, + "trackingUrl": { + "description": "Optional. The HTTP URL of the ApplicationMaster, HistoryServer, or TimelineServer that provides application-specific information. The URL uses the internal hostname, and requires a proxy server for resolution and, possibly, access.", + "type": "string" } - } + }, + "type": "object" } }, - "rootUrl": "https://dataproc.googleapis.com/", - "ownerDomain": "google.com", - "name": "dataproc", - "batchPath": "batch" -} + "servicePath": "", + "title": "Google Cloud Dataproc API", + "version": "v1beta2", + "version_module": true +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/dataproc/v1beta2/dataproc-gen.go b/vendor/google.golang.org/api/dataproc/v1beta2/dataproc-gen.go index 31abf9a80..070faf3a5 100644 --- a/vendor/google.golang.org/api/dataproc/v1beta2/dataproc-gen.go +++ b/vendor/google.golang.org/api/dataproc/v1beta2/dataproc-gen.go @@ -177,8 +177,8 @@ type AcceleratorConfig struct { AcceleratorCount int64 `json:"acceleratorCount,omitempty"` // AcceleratorTypeUri: Full URL, partial URI, or short name of the - // accelerator type resource to expose to this instance. See Google - // Compute Engine AcceleratorTypes( + // accelerator type resource to expose to this instance. See Compute + // Engine AcceleratorTypes( // /compute/docs/reference/beta/acceleratorTypes)Examples * // https://www.googleapis.com/compute/beta/projects/[project_id]/zones/us-east1-a/acceleratorTypes/nvidia-tesla-k80 * projects/[project_id]/zones/us-east1-a/acceleratorTypes/nvidia-tesla-k80 * // nvidia-tesla-k80 @@ -261,7 +261,7 @@ type CancelJobRequest struct { } // Cluster: Describes the identifying information, config, and status of -// a cluster of Google Compute Engine instances. +// a cluster of Compute Engine instances. type Cluster struct { // ClusterName: Required. The cluster name. Cluster names within a // project must be unique. Names of deleted clusters can be reused. @@ -328,8 +328,8 @@ func (s *Cluster) MarshalJSON() ([]byte, error) { // ClusterConfig: The cluster config. type ClusterConfig struct { - // ConfigBucket: Optional. A Google Cloud Storage staging bucket used - // for sharing generated SSH keys and config. If you do not specify a + // ConfigBucket: Optional. A Cloud Storage staging bucket used for + // sharing generated SSH keys and config. If you do not specify a // staging bucket, Cloud Dataproc will determine an appropriate Cloud // Storage location (US, ASIA, or EU) for your cluster's staging bucket // according to the Google Compute Engine zone where your cluster is @@ -337,8 +337,8 @@ type ClusterConfig struct { // per-location bucket for you. ConfigBucket string `json:"configBucket,omitempty"` - // GceClusterConfig: Required. The shared Google Compute Engine config - // settings for all instances in a cluster. + // GceClusterConfig: Required. The shared Compute Engine config settings + // for all instances in a cluster. GceClusterConfig *GceClusterConfig `json:"gceClusterConfig,omitempty"` // InitializationActions: Optional. Commands to execute on each node @@ -360,20 +360,20 @@ type ClusterConfig struct { // schedule. LifecycleConfig *LifecycleConfig `json:"lifecycleConfig,omitempty"` - // MasterConfig: Optional. The Google Compute Engine config settings for - // the master instance in a cluster. + // MasterConfig: Optional. The Compute Engine config settings for the + // master instance in a cluster. MasterConfig *InstanceGroupConfig `json:"masterConfig,omitempty"` - // SecondaryWorkerConfig: Optional. The Google Compute Engine config - // settings for additional worker instances in a cluster. + // SecondaryWorkerConfig: Optional. The Compute Engine config settings + // for additional worker instances in a cluster. SecondaryWorkerConfig *InstanceGroupConfig `json:"secondaryWorkerConfig,omitempty"` // SoftwareConfig: Optional. The config settings for software inside the // cluster. SoftwareConfig *SoftwareConfig `json:"softwareConfig,omitempty"` - // WorkerConfig: Optional. The Google Compute Engine config settings for - // worker instances in a cluster. + // WorkerConfig: Optional. The Compute Engine config settings for worker + // instances in a cluster. WorkerConfig *InstanceGroupConfig `json:"workerConfig,omitempty"` // ForceSendFields is a list of field names (e.g. "ConfigBucket") to @@ -662,9 +662,9 @@ type DiagnoseClusterRequest struct { // DiagnoseClusterResults: The location of diagnostic output. type DiagnoseClusterResults struct { - // OutputUri: Output only. The Google Cloud Storage URI of the - // diagnostic output. The output report is a plain text file with a - // summary of collected diagnostics. + // OutputUri: Output only. The Cloud Storage URI of the diagnostic + // output. The output report is a plain text file with a summary of + // collected diagnostics. OutputUri string `json:"outputUri,omitempty"` // ForceSendFields is a list of field names (e.g. "OutputUri") to @@ -698,7 +698,8 @@ type DiskConfig struct { BootDiskSizeGb int64 `json:"bootDiskSizeGb,omitempty"` // BootDiskType: Optional. Type of the boot disk (default is - // 'pd-standard'). Valid values: 'pd-ssd', 'pd-standard' + // "pd-standard"). Valid values: "pd-ssd" (Persistent Disk Solid State + // Drive) or "pd-standard" (Persistent Disk Hard Disk Drive). BootDiskType string `json:"bootDiskType,omitempty"` // NumLocalSsds: Optional. Number of attached SSDs, from 0 to 4 (default @@ -749,9 +750,8 @@ type Empty struct { googleapi.ServerResponse `json:"-"` } -// GceClusterConfig: Common config settings for resources of Google -// Compute Engine cluster instances, applicable to all instances in the -// cluster. +// GceClusterConfig: Common config settings for resources of Compute +// Engine cluster instances, applicable to all instances in the cluster. type GceClusterConfig struct { // InternalIpOnly: Optional. If true, all instances in the cluster will // only have internal IP addresses. By default, clusters are not @@ -762,15 +762,15 @@ type GceClusterConfig struct { // without external IP addresses. InternalIpOnly bool `json:"internalIpOnly,omitempty"` - // Metadata: The Google Compute Engine metadata entries to add to all - // instances (see Project and instance metadata + // Metadata: The Compute Engine metadata entries to add to all instances + // (see Project and instance metadata // (https://cloud.google.com/compute/docs/storing-retrieving-metadata#pro // ject_and_instance_metadata)). Metadata map[string]string `json:"metadata,omitempty"` - // NetworkUri: Optional. The Google Compute Engine network to be used - // for machine communications. Cannot be specified with subnetwork_uri. - // If neither network_uri nor subnetwork_uri is specified, the "default" + // NetworkUri: Optional. The Compute Engine network to be used for + // machine communications. Cannot be specified with subnetwork_uri. If + // neither network_uri nor subnetwork_uri is specified, the "default" // network of the project is used, if it exists. Cannot be a "Custom // Subnet Network" (see Using Subnetworks for more information).A full // URL, partial URI, or short name are valid. @@ -783,7 +783,7 @@ type GceClusterConfig struct { NetworkUri string `json:"networkUri,omitempty"` // ServiceAccount: Optional. The service account of the instances. - // Defaults to the default Google Compute Engine service account. Custom + // Defaults to the default Compute Engine service account. Custom // service accounts need permissions equivalent to the folloing IAM // roles: // roles/logging.logWriter @@ -811,9 +811,9 @@ type GceClusterConfig struct { // https://www.googleapis.com/auth/devstorage.full_control ServiceAccountScopes []string `json:"serviceAccountScopes,omitempty"` - // SubnetworkUri: Optional. The Google Compute Engine subnetwork to be - // used for machine communications. Cannot be specified with - // network_uri.A full URL, partial URI, or short name are valid. + // SubnetworkUri: Optional. The Compute Engine subnetwork to be used for + // machine communications. Cannot be specified with network_uri.A full + // URL, partial URI, or short name are valid. // Examples: // https://www.googleapis.com/compute/v1/projects/[project_id]/ // regions/us-east1/sub0 @@ -821,14 +821,14 @@ type GceClusterConfig struct { // sub0 SubnetworkUri string `json:"subnetworkUri,omitempty"` - // Tags: The Google Compute Engine tags to add to all instances (see - // Tagging instances). + // Tags: The Compute Engine tags to add to all instances (see Tagging + // instances). Tags []string `json:"tags,omitempty"` - // ZoneUri: Optional. The zone where the Google Compute Engine cluster - // will be located. On a create request, it is required in the "global" - // region. If omitted in a non-global Cloud Dataproc region, the service - // will pick a zone in the corresponding Compute Engine region. On a get + // ZoneUri: Optional. The zone where the Compute Engine cluster will be + // located. On a create request, it is required in the "global" region. + // If omitted in a non-global Cloud Dataproc region, the service will + // pick a zone in the corresponding Compute Engine region. On a get // request, zone will always be present.A full URL, partial URI, or // short name are valid. // Examples: @@ -987,20 +987,19 @@ func (s *HiveJob) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -// InstanceGroupConfig: Optional. The config settings for Google Compute -// Engine resources in an instance group, such as a master or worker -// group. +// InstanceGroupConfig: Optional. The config settings for Compute Engine +// resources in an instance group, such as a master or worker group. type InstanceGroupConfig struct { - // Accelerators: Optional. The Google Compute Engine accelerator - // configuration for these instances.Beta Feature: This feature is still - // under development. It may be changed before final release. + // Accelerators: Optional. The Compute Engine accelerator configuration + // for these instances.Beta Feature: This feature is still under + // development. It may be changed before final release. Accelerators []*AcceleratorConfig `json:"accelerators,omitempty"` // DiskConfig: Optional. Disk option config settings. DiskConfig *DiskConfig `json:"diskConfig,omitempty"` - // ImageUri: Output only. The Google Compute Engine image resource used - // for cluster instances. Inferred from SoftwareConfig.image_version. + // ImageUri: Output only. The Compute Engine image resource used for + // cluster instances. Inferred from SoftwareConfig.image_version. ImageUri string `json:"imageUri,omitempty"` // InstanceNames: Optional. The list of instance names. Cloud Dataproc @@ -1013,9 +1012,8 @@ type InstanceGroupConfig struct { // preemptible instances. IsPreemptible bool `json:"isPreemptible,omitempty"` - // MachineTypeUri: Optional. The Google Compute Engine machine type used - // for cluster instances.A full URL, partial URI, or short name are - // valid. + // MachineTypeUri: Optional. The Compute Engine machine type used for + // cluster instances.A full URL, partial URI, or short name are valid. // Examples: // https://www.googleapis.com/compute/v1/projects/[project_id]/ // zones/us-east1-a/machineTypes/n1-standard-2 @@ -1024,7 +1022,7 @@ type InstanceGroupConfig struct { // n1-standard-2 MachineTypeUri string `json:"machineTypeUri,omitempty"` - // ManagedGroupConfig: Output only. The config for Google Compute Engine + // ManagedGroupConfig: Output only. The config for Compute Engine // Instance Group Manager that manages this group. This is only used for // preemptible instance groups. ManagedGroupConfig *ManagedGroupConfig `json:"managedGroupConfig,omitempty"` @@ -1592,8 +1590,11 @@ func (s *LoggingConfig) MarshalJSON() ([]byte, error) { // ManagedCluster: Cluster that is managed by the workflow. type ManagedCluster struct { - // ClusterName: Required. The cluster name. Cluster names within a - // project must be unique. Names from deleted clusters can be reused. + // ClusterName: Required. The cluster name prefix. A unique cluster name + // will be formed by appending a random suffix.The name must contain + // only lower-case letters (a-z), numbers (0-9), and hyphens (-). Must + // begin with a letter. Cannot begin or end with hyphen. Must consist of + // between 2 and 35 characters. ClusterName string `json:"clusterName,omitempty"` // Config: Required. The cluster configuration. @@ -1604,7 +1605,7 @@ type ManagedCluster struct { // the following PCRE regular expression: \p{Ll}\p{Lo}{0,62}Label values // must be between 1 and 63 characters long, and must conform to the // following PCRE regular expression: \p{Ll}\p{Lo}\p{N}_-{0,63}No more - // than 64 labels can be associated with a given cluster. + // than 32 labels can be associated with a given cluster. Labels map[string]string `json:"labels,omitempty"` // ForceSendFields is a list of field names (e.g. "ClusterName") to @@ -1669,8 +1670,7 @@ func (s *ManagedGroupConfig) MarshalJSON() ([]byte, error) { // NodeInitializationAction: Specifies an executable to run on a fully // configured node and a timeout period for executable completion. type NodeInitializationAction struct { - // ExecutableFile: Required. Google Cloud Storage URI of executable - // file. + // ExecutableFile: Required. Cloud Storage URI of executable file. ExecutableFile string `json:"executableFile,omitempty"` // ExecutionTimeout: Optional. Amount of time executable has to @@ -1777,7 +1777,7 @@ type OrderedJob struct { // must be between 1 and 63 characters long, and must conform to the // following regular expression: \p{Ll}\p{Lo}{0,62}Label values must be // between 1 and 63 characters long, and must conform to the following - // regular expression: \p{Ll}\p{Lo}\p{N}_-{0,63}No more than 64 labels + // regular expression: \p{Ll}\p{Lo}\p{N}_-{0,63}No more than 32 labels // can be associated with a given job. Labels map[string]string `json:"labels,omitempty"` @@ -1803,8 +1803,11 @@ type OrderedJob struct { // StepId: Required. The step id. The id must be unique among all jobs // within the template.The step id is used as prefix for job id, as job - // workflow-step-id label, and in prerequisite_step_ids field from other - // steps. + // goog-dataproc-workflow-step-id label, and in prerequisiteStepIds + // field from other steps.The id must contain only letters (a-z, A-Z), + // numbers (0-9), underscores (_), and hyphens (-). Cannot begin or end + // with underscore or hyphen. Must consist of between 3 and 50 + // characters. StepId string `json:"stepId,omitempty"` // ForceSendFields is a list of field names (e.g. "HadoopJob") to @@ -2332,6 +2335,16 @@ type SubmitJobRequest struct { // Job: Required. The job resource. Job *Job `json:"job,omitempty"` + // RequestId: Optional. A unique id used to identify the request. If the + // server receives two SubmitJobRequest requests with the same id, then + // the second request will be ignored and the first Job created and + // stored in the backend is returned.It is recommended to always set + // this value to a UUID + // (https://en.wikipedia.org/wiki/Universally_unique_identifier).The id + // must contain only letters (a-z, A-Z), numbers (0-9), underscores (_), + // and hyphens (-). The maximum length is 40 characters. + RequestId string `json:"requestId,omitempty"` + // ForceSendFields is a list of field names (e.g. "Job") to // unconditionally include in API requests. By default, fields with // empty values are omitted from API requests. However, any non-pointer, @@ -2463,6 +2476,10 @@ type WorkflowMetadata struct { // Graph: Output only. The workflow graph. Graph *WorkflowGraph `json:"graph,omitempty"` + // Parameters: Map from parameter names to values that were used for + // those parameters. + Parameters map[string]string `json:"parameters,omitempty"` + // State: Output only. The workflow state. // // Possible values: @@ -2557,7 +2574,10 @@ type WorkflowTemplate struct { // CreateTime: Output only. The time template was created. CreateTime string `json:"createTime,omitempty"` - // Id: Required. The template id. + // Id: Required. The template id.The id must contain only letters (a-z, + // A-Z), numbers (0-9), underscores (_), and hyphens (-). Cannot begin + // or end with underscore or hyphen. Must consist of between 3 and 50 + // characters. Id string `json:"id,omitempty"` // Jobs: Required. The Directed Acyclic Graph of Jobs to submit. @@ -3156,6 +3176,147 @@ func (c *ProjectsLocationsWorkflowTemplatesGetCall) Do(opts ...googleapi.CallOpt } +// method id "dataproc.projects.locations.workflowTemplates.getIamPolicy": + +type ProjectsLocationsWorkflowTemplatesGetIamPolicyCall struct { + s *Service + resource string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// GetIamPolicy: Gets the access control policy for a resource. Returns +// an empty policy if the resource exists and does not have a policy +// set. +func (r *ProjectsLocationsWorkflowTemplatesService) GetIamPolicy(resource string) *ProjectsLocationsWorkflowTemplatesGetIamPolicyCall { + c := &ProjectsLocationsWorkflowTemplatesGetIamPolicyCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.resource = resource + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsLocationsWorkflowTemplatesGetIamPolicyCall) Fields(s ...googleapi.Field) *ProjectsLocationsWorkflowTemplatesGetIamPolicyCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// IfNoneMatch sets the optional parameter which makes the operation +// fail if the object's ETag matches the given value. This is useful for +// getting updates only after the object has changed since the last +// request. Use googleapi.IsNotModified to check whether the response +// error from Do is the result of In-None-Match. +func (c *ProjectsLocationsWorkflowTemplatesGetIamPolicyCall) IfNoneMatch(entityTag string) *ProjectsLocationsWorkflowTemplatesGetIamPolicyCall { + c.ifNoneMatch_ = entityTag + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsLocationsWorkflowTemplatesGetIamPolicyCall) Context(ctx context.Context) *ProjectsLocationsWorkflowTemplatesGetIamPolicyCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsLocationsWorkflowTemplatesGetIamPolicyCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsLocationsWorkflowTemplatesGetIamPolicyCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + if c.ifNoneMatch_ != "" { + reqHeaders.Set("If-None-Match", c.ifNoneMatch_) + } + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta2/{+resource}:getIamPolicy") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("GET", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "resource": c.resource, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "dataproc.projects.locations.workflowTemplates.getIamPolicy" call. +// Exactly one of *Policy or error will be non-nil. Any non-2xx status +// code is an error. Response headers are in either +// *Policy.ServerResponse.Header or (if a response was returned at all) +// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to +// check whether the returned error was because http.StatusNotModified +// was returned. +func (c *ProjectsLocationsWorkflowTemplatesGetIamPolicyCall) Do(opts ...googleapi.CallOption) (*Policy, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &Policy{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Gets the access control policy for a resource. Returns an empty policy if the resource exists and does not have a policy set.", + // "flatPath": "v1beta2/projects/{projectsId}/locations/{locationsId}/workflowTemplates/{workflowTemplatesId}:getIamPolicy", + // "httpMethod": "GET", + // "id": "dataproc.projects.locations.workflowTemplates.getIamPolicy", + // "parameterOrder": [ + // "resource" + // ], + // "parameters": { + // "resource": { + // "description": "REQUIRED: The resource for which the policy is being requested. See the operation documentation for the appropriate value for this field.", + // "location": "path", + // "pattern": "^projects/[^/]+/locations/[^/]+/workflowTemplates/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1beta2/{+resource}:getIamPolicy", + // "response": { + // "$ref": "Policy" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + // method id "dataproc.projects.locations.workflowTemplates.instantiate": type ProjectsLocationsWorkflowTemplatesInstantiateCall struct { @@ -3169,14 +3330,12 @@ type ProjectsLocationsWorkflowTemplatesInstantiateCall struct { // Instantiate: Instantiates a template and begins execution.The // returned Operation can be used to track execution of workflow by -// polling google.cloud.dataproc.v1beta2.OperationService.GetOperation. -// The Operation will complete when entire workflow is finished.The -// running workflow can be aborted via -// google.cloud.dataproc.v1beta2.OperationService.CancelOperation.The -// google.cloud.dataproc.v1beta2.Operation.metadata will always be -// google.cloud.dataproc.v1beta2.WorkflowMetadata.The -// google.cloud.dataproc.v1beta2.Operation.result will always be -// google.protobuf.Empty. +// polling operations.get. The Operation will complete when entire +// workflow is finished.The running workflow can be aborted via +// operations.cancel. This will cause any inflight jobs to be cancelled +// and workflow-owned clusters to be deleted.The Operation.metadata will +// be WorkflowMetadata.On successful completion, Operation.response will +// be Empty. func (r *ProjectsLocationsWorkflowTemplatesService) Instantiate(name string, instantiateworkflowtemplaterequest *InstantiateWorkflowTemplateRequest) *ProjectsLocationsWorkflowTemplatesInstantiateCall { c := &ProjectsLocationsWorkflowTemplatesInstantiateCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.name = name @@ -3270,7 +3429,7 @@ func (c *ProjectsLocationsWorkflowTemplatesInstantiateCall) Do(opts ...googleapi } return ret, nil // { - // "description": "Instantiates a template and begins execution.The returned Operation can be used to track execution of workflow by polling google.cloud.dataproc.v1beta2.OperationService.GetOperation. The Operation will complete when entire workflow is finished.The running workflow can be aborted via google.cloud.dataproc.v1beta2.OperationService.CancelOperation.The google.cloud.dataproc.v1beta2.Operation.metadata will always be google.cloud.dataproc.v1beta2.WorkflowMetadata.The google.cloud.dataproc.v1beta2.Operation.result will always be google.protobuf.Empty.", + // "description": "Instantiates a template and begins execution.The returned Operation can be used to track execution of workflow by polling operations.get. The Operation will complete when entire workflow is finished.The running workflow can be aborted via operations.cancel. This will cause any inflight jobs to be cancelled and workflow-owned clusters to be deleted.The Operation.metadata will be WorkflowMetadata.On successful completion, Operation.response will be Empty.", // "flatPath": "v1beta2/projects/{projectsId}/locations/{locationsId}/workflowTemplates/{workflowTemplatesId}:instantiate", // "httpMethod": "POST", // "id": "dataproc.projects.locations.workflowTemplates.instantiate", @@ -3315,15 +3474,12 @@ type ProjectsLocationsWorkflowTemplatesInstantiateInlineCall struct { // method is equivalent to executing the sequence // CreateWorkflowTemplate, InstantiateWorkflowTemplate, // DeleteWorkflowTemplate.The returned Operation can be used to track -// execution of workflow by polling -// google.cloud.dataproc.v1beta2.OperationService.GetOperation. The -// Operation will complete when entire workflow is finished.The running -// workflow can be aborted via -// google.cloud.dataproc.v1beta2.OperationService.CancelOperation.The -// google.cloud.dataproc.v1beta2.Operation.metadata will always be -// google.cloud.dataproc.v1beta2.WorkflowMetadata.The -// google.cloud.dataproc.v1beta2.Operation.result will always be -// google.protobuf.Empty. +// execution of workflow by polling operations.get. The Operation will +// complete when entire workflow is finished.The running workflow can be +// aborted via operations.cancel. This will cause any inflight jobs to +// be cancelled and workflow-owned clusters to be deleted.The +// Operation.metadata will be WorkflowMetadata.On successful completion, +// Operation.response will be Empty. func (r *ProjectsLocationsWorkflowTemplatesService) InstantiateInline(parent string, workflowtemplate *WorkflowTemplate) *ProjectsLocationsWorkflowTemplatesInstantiateInlineCall { c := &ProjectsLocationsWorkflowTemplatesInstantiateInlineCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.parent = parent @@ -3429,7 +3585,7 @@ func (c *ProjectsLocationsWorkflowTemplatesInstantiateInlineCall) Do(opts ...goo } return ret, nil // { - // "description": "Instantiates a template and begins execution.This method is equivalent to executing the sequence CreateWorkflowTemplate, InstantiateWorkflowTemplate, DeleteWorkflowTemplate.The returned Operation can be used to track execution of workflow by polling google.cloud.dataproc.v1beta2.OperationService.GetOperation. The Operation will complete when entire workflow is finished.The running workflow can be aborted via google.cloud.dataproc.v1beta2.OperationService.CancelOperation.The google.cloud.dataproc.v1beta2.Operation.metadata will always be google.cloud.dataproc.v1beta2.WorkflowMetadata.The google.cloud.dataproc.v1beta2.Operation.result will always be google.protobuf.Empty.", + // "description": "Instantiates a template and begins execution.This method is equivalent to executing the sequence CreateWorkflowTemplate, InstantiateWorkflowTemplate, DeleteWorkflowTemplate.The returned Operation can be used to track execution of workflow by polling operations.get. The Operation will complete when entire workflow is finished.The running workflow can be aborted via operations.cancel. This will cause any inflight jobs to be cancelled and workflow-owned clusters to be deleted.The Operation.metadata will be WorkflowMetadata.On successful completion, Operation.response will be Empty.", // "flatPath": "v1beta2/projects/{projectsId}/locations/{locationsId}/workflowTemplates:instantiateInline", // "httpMethod": "POST", // "id": "dataproc.projects.locations.workflowTemplates.instantiateInline", @@ -3649,6 +3805,282 @@ func (c *ProjectsLocationsWorkflowTemplatesListCall) Pages(ctx context.Context, } } +// method id "dataproc.projects.locations.workflowTemplates.setIamPolicy": + +type ProjectsLocationsWorkflowTemplatesSetIamPolicyCall struct { + s *Service + resource string + setiampolicyrequest *SetIamPolicyRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// SetIamPolicy: Sets the access control policy on the specified +// resource. Replaces any existing policy. +func (r *ProjectsLocationsWorkflowTemplatesService) SetIamPolicy(resource string, setiampolicyrequest *SetIamPolicyRequest) *ProjectsLocationsWorkflowTemplatesSetIamPolicyCall { + c := &ProjectsLocationsWorkflowTemplatesSetIamPolicyCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.resource = resource + c.setiampolicyrequest = setiampolicyrequest + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsLocationsWorkflowTemplatesSetIamPolicyCall) Fields(s ...googleapi.Field) *ProjectsLocationsWorkflowTemplatesSetIamPolicyCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsLocationsWorkflowTemplatesSetIamPolicyCall) Context(ctx context.Context) *ProjectsLocationsWorkflowTemplatesSetIamPolicyCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsLocationsWorkflowTemplatesSetIamPolicyCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsLocationsWorkflowTemplatesSetIamPolicyCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.setiampolicyrequest) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta2/{+resource}:setIamPolicy") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("POST", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "resource": c.resource, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "dataproc.projects.locations.workflowTemplates.setIamPolicy" call. +// Exactly one of *Policy or error will be non-nil. Any non-2xx status +// code is an error. Response headers are in either +// *Policy.ServerResponse.Header or (if a response was returned at all) +// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to +// check whether the returned error was because http.StatusNotModified +// was returned. +func (c *ProjectsLocationsWorkflowTemplatesSetIamPolicyCall) Do(opts ...googleapi.CallOption) (*Policy, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &Policy{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Sets the access control policy on the specified resource. Replaces any existing policy.", + // "flatPath": "v1beta2/projects/{projectsId}/locations/{locationsId}/workflowTemplates/{workflowTemplatesId}:setIamPolicy", + // "httpMethod": "POST", + // "id": "dataproc.projects.locations.workflowTemplates.setIamPolicy", + // "parameterOrder": [ + // "resource" + // ], + // "parameters": { + // "resource": { + // "description": "REQUIRED: The resource for which the policy is being specified. See the operation documentation for the appropriate value for this field.", + // "location": "path", + // "pattern": "^projects/[^/]+/locations/[^/]+/workflowTemplates/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1beta2/{+resource}:setIamPolicy", + // "request": { + // "$ref": "SetIamPolicyRequest" + // }, + // "response": { + // "$ref": "Policy" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "dataproc.projects.locations.workflowTemplates.testIamPermissions": + +type ProjectsLocationsWorkflowTemplatesTestIamPermissionsCall struct { + s *Service + resource string + testiampermissionsrequest *TestIamPermissionsRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// TestIamPermissions: Returns permissions that a caller has on the +// specified resource. If the resource does not exist, this will return +// an empty set of permissions, not a NOT_FOUND error.Note: This +// operation is designed to be used for building permission-aware UIs +// and command-line tools, not for authorization checking. This +// operation may "fail open" without warning. +func (r *ProjectsLocationsWorkflowTemplatesService) TestIamPermissions(resource string, testiampermissionsrequest *TestIamPermissionsRequest) *ProjectsLocationsWorkflowTemplatesTestIamPermissionsCall { + c := &ProjectsLocationsWorkflowTemplatesTestIamPermissionsCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.resource = resource + c.testiampermissionsrequest = testiampermissionsrequest + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsLocationsWorkflowTemplatesTestIamPermissionsCall) Fields(s ...googleapi.Field) *ProjectsLocationsWorkflowTemplatesTestIamPermissionsCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsLocationsWorkflowTemplatesTestIamPermissionsCall) Context(ctx context.Context) *ProjectsLocationsWorkflowTemplatesTestIamPermissionsCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsLocationsWorkflowTemplatesTestIamPermissionsCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsLocationsWorkflowTemplatesTestIamPermissionsCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.testiampermissionsrequest) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta2/{+resource}:testIamPermissions") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("POST", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "resource": c.resource, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "dataproc.projects.locations.workflowTemplates.testIamPermissions" call. +// Exactly one of *TestIamPermissionsResponse or error will be non-nil. +// Any non-2xx status code is an error. Response headers are in either +// *TestIamPermissionsResponse.ServerResponse.Header or (if a response +// was returned at all) in error.(*googleapi.Error).Header. Use +// googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *ProjectsLocationsWorkflowTemplatesTestIamPermissionsCall) Do(opts ...googleapi.CallOption) (*TestIamPermissionsResponse, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &TestIamPermissionsResponse{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Returns permissions that a caller has on the specified resource. If the resource does not exist, this will return an empty set of permissions, not a NOT_FOUND error.Note: This operation is designed to be used for building permission-aware UIs and command-line tools, not for authorization checking. This operation may \"fail open\" without warning.", + // "flatPath": "v1beta2/projects/{projectsId}/locations/{locationsId}/workflowTemplates/{workflowTemplatesId}:testIamPermissions", + // "httpMethod": "POST", + // "id": "dataproc.projects.locations.workflowTemplates.testIamPermissions", + // "parameterOrder": [ + // "resource" + // ], + // "parameters": { + // "resource": { + // "description": "REQUIRED: The resource for which the policy detail is being requested. See the operation documentation for the appropriate value for this field.", + // "location": "path", + // "pattern": "^projects/[^/]+/locations/[^/]+/workflowTemplates/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1beta2/{+resource}:testIamPermissions", + // "request": { + // "$ref": "TestIamPermissionsRequest" + // }, + // "response": { + // "$ref": "TestIamPermissionsResponse" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + // method id "dataproc.projects.locations.workflowTemplates.update": type ProjectsLocationsWorkflowTemplatesUpdateCall struct { @@ -3806,6 +4238,20 @@ func (r *ProjectsRegionsClustersService) Create(projectId string, region string, return c } +// RequestId sets the optional parameter "requestId": A unique id used +// to identify the request. If the server receives two +// CreateClusterRequest requests with the same id, then the second +// request will be ignored and the first google.longrunning.Operation +// created and stored in the backend is returned.It is recommended to +// always set this value to a UUID +// (https://en.wikipedia.org/wiki/Universally_unique_identifier).The id +// must contain only letters (a-z, A-Z), numbers (0-9), underscores (_), +// and hyphens (-). The maximum length is 40 characters. +func (c *ProjectsRegionsClustersCreateCall) RequestId(requestId string) *ProjectsRegionsClustersCreateCall { + c.urlParams_.Set("requestId", requestId) + return c +} + // Fields allows partial responses to be retrieved. See // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse // for more information. @@ -3913,6 +4359,11 @@ func (c *ProjectsRegionsClustersCreateCall) Do(opts ...googleapi.CallOption) (*O // "location": "path", // "required": true, // "type": "string" + // }, + // "requestId": { + // "description": "Optional. A unique id used to identify the request. If the server receives two CreateClusterRequest requests with the same id, then the second request will be ignored and the first google.longrunning.Operation created and stored in the backend is returned.It is recommended to always set this value to a UUID (https://en.wikipedia.org/wiki/Universally_unique_identifier).The id must contain only letters (a-z, A-Z), numbers (0-9), underscores (_), and hyphens (-). The maximum length is 40 characters.", + // "location": "query", + // "type": "string" // } // }, // "path": "v1beta2/projects/{projectId}/regions/{region}/clusters", @@ -3958,6 +4409,20 @@ func (c *ProjectsRegionsClustersDeleteCall) ClusterUuid(clusterUuid string) *Pro return c } +// RequestId sets the optional parameter "requestId": A unique id used +// to identify the request. If the server receives two +// DeleteClusterRequest requests with the same id, then the second +// request will be ignored and the first google.longrunning.Operation +// created and stored in the backend is returned.It is recommended to +// always set this value to a UUID +// (https://en.wikipedia.org/wiki/Universally_unique_identifier).The id +// must contain only letters (a-z, A-Z), numbers (0-9), underscores (_), +// and hyphens (-). The maximum length is 40 characters. +func (c *ProjectsRegionsClustersDeleteCall) RequestId(requestId string) *ProjectsRegionsClustersDeleteCall { + c.urlParams_.Set("requestId", requestId) + return c +} + // Fields allows partial responses to be retrieved. See // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse // for more information. @@ -4073,6 +4538,11 @@ func (c *ProjectsRegionsClustersDeleteCall) Do(opts ...googleapi.CallOption) (*O // "location": "path", // "required": true, // "type": "string" + // }, + // "requestId": { + // "description": "Optional. A unique id used to identify the request. If the server receives two DeleteClusterRequest requests with the same id, then the second request will be ignored and the first google.longrunning.Operation created and stored in the backend is returned.It is recommended to always set this value to a UUID (https://en.wikipedia.org/wiki/Universally_unique_identifier).The id must contain only letters (a-z, A-Z), numbers (0-9), underscores (_), and hyphens (-). The maximum length is 40 characters.", + // "location": "query", + // "type": "string" // } // }, // "path": "v1beta2/projects/{projectId}/regions/{region}/clusters/{clusterName}", @@ -4794,12 +5264,26 @@ func (c *ProjectsRegionsClustersPatchCall) GracefulDecommissionTimeout(gracefulD return c } +// RequestId sets the optional parameter "requestId": A unique id used +// to identify the request. If the server receives two +// UpdateClusterRequest requests with the same id, then the second +// request will be ignored and the first google.longrunning.Operation +// created and stored in the backend is returned.It is recommended to +// always set this value to a UUID +// (https://en.wikipedia.org/wiki/Universally_unique_identifier).The id +// must contain only letters (a-z, A-Z), numbers (0-9), underscores (_), +// and hyphens (-). The maximum length is 40 characters. +func (c *ProjectsRegionsClustersPatchCall) RequestId(requestId string) *ProjectsRegionsClustersPatchCall { + c.urlParams_.Set("requestId", requestId) + return c +} + // UpdateMask sets the optional parameter "updateMask": Required. -// Specifies the path, relative to Cluster, of the field to -// update. For example, to change the number of workers in a cluster to -// 5, the update_mask parameter would be specified as -// config.worker_config.num_instances, and the PATCH -// request body would specify the new value, as follows: +// Specifies the path, relative to Cluster, of the field to update. For +// example, to change the number of workers in a cluster to 5, the +// update_mask parameter would be specified as +// config.worker_config.num_instances, and the PATCH request body would +// specify the new value, as follows: // { // "config":{ // "workerConfig":{ @@ -4808,9 +5292,9 @@ func (c *ProjectsRegionsClustersPatchCall) GracefulDecommissionTimeout(gracefulD // } // } // Similarly, to change the number of preemptible workers in a cluster -// to 5, the update_mask parameter would be -// config.secondary_worker_config.num_instances, and the -// PATCH request body would be set as follows: +// to 5, the update_mask parameter would be +// config.secondary_worker_config.num_instances, and the PATCH request +// body would be set as follows: // { // "config":{ // "secondaryWorkerConfig":{ @@ -4818,11 +5302,42 @@ func (c *ProjectsRegionsClustersPatchCall) GracefulDecommissionTimeout(gracefulD // } // } // } -// Note: currently only some fields can be updated: -// |Mask|Purpose| |labels|Updates labels| -// |config.worker_config.num_instances|Resize primary worker group| -// |config.secondary_worker_config.num_instances|Resize secondary worker -// group| +// Note: currently only the following fields can be +// updated: +// +// +// +// +// +// +// +// +// +// +// +// +// +// +// +// +// +// +// +// +// +// +// +//
MaskPurpos +// e
labelsUpdates +// labels
config.worker_config.num_instances +// Resize primary worker +// group
config.secondary_worker_config.num_instances +// Resize secondary worker +// group
config.lifecycle_config.auto_delete_ttlReset MAX TTL +// duration
config.lifecycle_config.auto_delete_time< +// /td>Update MAX TTL deletion +// timestamp
config.lifecycle_config.idle_delete_ttl< +// /td>Update Idle TTL duration
func (c *ProjectsRegionsClustersPatchCall) UpdateMask(updateMask string) *ProjectsRegionsClustersPatchCall { c.urlParams_.Set("updateMask", updateMask) return c @@ -4950,8 +5465,13 @@ func (c *ProjectsRegionsClustersPatchCall) Do(opts ...googleapi.CallOption) (*Op // "required": true, // "type": "string" // }, + // "requestId": { + // "description": "Optional. A unique id used to identify the request. If the server receives two UpdateClusterRequest requests with the same id, then the second request will be ignored and the first google.longrunning.Operation created and stored in the backend is returned.It is recommended to always set this value to a UUID (https://en.wikipedia.org/wiki/Universally_unique_identifier).The id must contain only letters (a-z, A-Z), numbers (0-9), underscores (_), and hyphens (-). The maximum length is 40 characters.", + // "location": "query", + // "type": "string" + // }, // "updateMask": { - // "description": "Required. Specifies the path, relative to \u003ccode\u003eCluster\u003c/code\u003e, of the field to update. For example, to change the number of workers in a cluster to 5, the \u003ccode\u003eupdate_mask\u003c/code\u003e parameter would be specified as \u003ccode\u003econfig.worker_config.num_instances\u003c/code\u003e, and the PATCH request body would specify the new value, as follows:\n{\n \"config\":{\n \"workerConfig\":{\n \"numInstances\":\"5\"\n }\n }\n}\nSimilarly, to change the number of preemptible workers in a cluster to 5, the \u003ccode\u003eupdate_mask\u003c/code\u003e parameter would be \u003ccode\u003econfig.secondary_worker_config.num_instances\u003c/code\u003e, and the PATCH request body would be set as follows:\n{\n \"config\":{\n \"secondaryWorkerConfig\":{\n \"numInstances\":\"5\"\n }\n }\n}\n\u003cstrong\u003eNote:\u003c/strong\u003e currently only some fields can be updated: |Mask|Purpose| |labels|Updates labels| |config.worker_config.num_instances|Resize primary worker group| |config.secondary_worker_config.num_instances|Resize secondary worker group|", + // "description": "Required. Specifies the path, relative to Cluster, of the field to update. For example, to change the number of workers in a cluster to 5, the update_mask parameter would be specified as config.worker_config.num_instances, and the PATCH request body would specify the new value, as follows:\n{\n \"config\":{\n \"workerConfig\":{\n \"numInstances\":\"5\"\n }\n }\n}\nSimilarly, to change the number of preemptible workers in a cluster to 5, the update_mask parameter would be config.secondary_worker_config.num_instances, and the PATCH request body would be set as follows:\n{\n \"config\":{\n \"secondaryWorkerConfig\":{\n \"numInstances\":\"5\"\n }\n }\n}\n\u003cstrong\u003eNote:\u003c/strong\u003e currently only the following fields can be updated:\n\u003ctable\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003cstrong\u003eMask\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003e\u003cstrong\u003ePurpose\u003c/strong\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003elabels\u003c/td\u003e\u003ctd\u003eUpdates labels\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003econfig.worker_config.num_instances\u003c/td\u003e\u003ctd\u003eResize primary worker group\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003econfig.secondary_worker_config.num_instances\u003c/td\u003e\u003ctd\u003eResize secondary worker group\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003econfig.lifecycle_config.auto_delete_ttl\u003c/td\u003e\u003ctd\u003eReset MAX TTL duration\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003econfig.lifecycle_config.auto_delete_time\u003c/td\u003e\u003ctd\u003eUpdate MAX TTL deletion timestamp\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003econfig.lifecycle_config.idle_delete_ttl\u003c/td\u003e\u003ctd\u003eUpdate Idle TTL duration\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/table\u003e", // "format": "google-fieldmask", // "location": "query", // "type": "string" @@ -5706,6 +6226,147 @@ func (c *ProjectsRegionsJobsGetCall) Do(opts ...googleapi.CallOption) (*Job, err } +// method id "dataproc.projects.regions.jobs.getIamPolicy": + +type ProjectsRegionsJobsGetIamPolicyCall struct { + s *Service + resource string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// GetIamPolicy: Gets the access control policy for a resource. Returns +// an empty policy if the resource exists and does not have a policy +// set. +func (r *ProjectsRegionsJobsService) GetIamPolicy(resource string) *ProjectsRegionsJobsGetIamPolicyCall { + c := &ProjectsRegionsJobsGetIamPolicyCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.resource = resource + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsRegionsJobsGetIamPolicyCall) Fields(s ...googleapi.Field) *ProjectsRegionsJobsGetIamPolicyCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// IfNoneMatch sets the optional parameter which makes the operation +// fail if the object's ETag matches the given value. This is useful for +// getting updates only after the object has changed since the last +// request. Use googleapi.IsNotModified to check whether the response +// error from Do is the result of In-None-Match. +func (c *ProjectsRegionsJobsGetIamPolicyCall) IfNoneMatch(entityTag string) *ProjectsRegionsJobsGetIamPolicyCall { + c.ifNoneMatch_ = entityTag + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsRegionsJobsGetIamPolicyCall) Context(ctx context.Context) *ProjectsRegionsJobsGetIamPolicyCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsRegionsJobsGetIamPolicyCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsRegionsJobsGetIamPolicyCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + if c.ifNoneMatch_ != "" { + reqHeaders.Set("If-None-Match", c.ifNoneMatch_) + } + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta2/{+resource}:getIamPolicy") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("GET", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "resource": c.resource, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "dataproc.projects.regions.jobs.getIamPolicy" call. +// Exactly one of *Policy or error will be non-nil. Any non-2xx status +// code is an error. Response headers are in either +// *Policy.ServerResponse.Header or (if a response was returned at all) +// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to +// check whether the returned error was because http.StatusNotModified +// was returned. +func (c *ProjectsRegionsJobsGetIamPolicyCall) Do(opts ...googleapi.CallOption) (*Policy, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &Policy{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Gets the access control policy for a resource. Returns an empty policy if the resource exists and does not have a policy set.", + // "flatPath": "v1beta2/projects/{projectsId}/regions/{regionsId}/jobs/{jobsId}:getIamPolicy", + // "httpMethod": "GET", + // "id": "dataproc.projects.regions.jobs.getIamPolicy", + // "parameterOrder": [ + // "resource" + // ], + // "parameters": { + // "resource": { + // "description": "REQUIRED: The resource for which the policy is being requested. See the operation documentation for the appropriate value for this field.", + // "location": "path", + // "pattern": "^projects/[^/]+/regions/[^/]+/jobs/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1beta2/{+resource}:getIamPolicy", + // "response": { + // "$ref": "Policy" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + // method id "dataproc.projects.regions.jobs.list": type ProjectsRegionsJobsListCall struct { @@ -6126,6 +6787,142 @@ func (c *ProjectsRegionsJobsPatchCall) Do(opts ...googleapi.CallOption) (*Job, e } +// method id "dataproc.projects.regions.jobs.setIamPolicy": + +type ProjectsRegionsJobsSetIamPolicyCall struct { + s *Service + resource string + setiampolicyrequest *SetIamPolicyRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// SetIamPolicy: Sets the access control policy on the specified +// resource. Replaces any existing policy. +func (r *ProjectsRegionsJobsService) SetIamPolicy(resource string, setiampolicyrequest *SetIamPolicyRequest) *ProjectsRegionsJobsSetIamPolicyCall { + c := &ProjectsRegionsJobsSetIamPolicyCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.resource = resource + c.setiampolicyrequest = setiampolicyrequest + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsRegionsJobsSetIamPolicyCall) Fields(s ...googleapi.Field) *ProjectsRegionsJobsSetIamPolicyCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsRegionsJobsSetIamPolicyCall) Context(ctx context.Context) *ProjectsRegionsJobsSetIamPolicyCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsRegionsJobsSetIamPolicyCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsRegionsJobsSetIamPolicyCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.setiampolicyrequest) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta2/{+resource}:setIamPolicy") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("POST", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "resource": c.resource, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "dataproc.projects.regions.jobs.setIamPolicy" call. +// Exactly one of *Policy or error will be non-nil. Any non-2xx status +// code is an error. Response headers are in either +// *Policy.ServerResponse.Header or (if a response was returned at all) +// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to +// check whether the returned error was because http.StatusNotModified +// was returned. +func (c *ProjectsRegionsJobsSetIamPolicyCall) Do(opts ...googleapi.CallOption) (*Policy, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &Policy{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Sets the access control policy on the specified resource. Replaces any existing policy.", + // "flatPath": "v1beta2/projects/{projectsId}/regions/{regionsId}/jobs/{jobsId}:setIamPolicy", + // "httpMethod": "POST", + // "id": "dataproc.projects.regions.jobs.setIamPolicy", + // "parameterOrder": [ + // "resource" + // ], + // "parameters": { + // "resource": { + // "description": "REQUIRED: The resource for which the policy is being specified. See the operation documentation for the appropriate value for this field.", + // "location": "path", + // "pattern": "^projects/[^/]+/regions/[^/]+/jobs/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1beta2/{+resource}:setIamPolicy", + // "request": { + // "$ref": "SetIamPolicyRequest" + // }, + // "response": { + // "$ref": "Policy" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + // method id "dataproc.projects.regions.jobs.submit": type ProjectsRegionsJobsSubmitCall struct { @@ -6270,6 +7067,146 @@ func (c *ProjectsRegionsJobsSubmitCall) Do(opts ...googleapi.CallOption) (*Job, } +// method id "dataproc.projects.regions.jobs.testIamPermissions": + +type ProjectsRegionsJobsTestIamPermissionsCall struct { + s *Service + resource string + testiampermissionsrequest *TestIamPermissionsRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// TestIamPermissions: Returns permissions that a caller has on the +// specified resource. If the resource does not exist, this will return +// an empty set of permissions, not a NOT_FOUND error.Note: This +// operation is designed to be used for building permission-aware UIs +// and command-line tools, not for authorization checking. This +// operation may "fail open" without warning. +func (r *ProjectsRegionsJobsService) TestIamPermissions(resource string, testiampermissionsrequest *TestIamPermissionsRequest) *ProjectsRegionsJobsTestIamPermissionsCall { + c := &ProjectsRegionsJobsTestIamPermissionsCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.resource = resource + c.testiampermissionsrequest = testiampermissionsrequest + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsRegionsJobsTestIamPermissionsCall) Fields(s ...googleapi.Field) *ProjectsRegionsJobsTestIamPermissionsCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsRegionsJobsTestIamPermissionsCall) Context(ctx context.Context) *ProjectsRegionsJobsTestIamPermissionsCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsRegionsJobsTestIamPermissionsCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsRegionsJobsTestIamPermissionsCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.testiampermissionsrequest) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta2/{+resource}:testIamPermissions") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("POST", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "resource": c.resource, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "dataproc.projects.regions.jobs.testIamPermissions" call. +// Exactly one of *TestIamPermissionsResponse or error will be non-nil. +// Any non-2xx status code is an error. Response headers are in either +// *TestIamPermissionsResponse.ServerResponse.Header or (if a response +// was returned at all) in error.(*googleapi.Error).Header. Use +// googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *ProjectsRegionsJobsTestIamPermissionsCall) Do(opts ...googleapi.CallOption) (*TestIamPermissionsResponse, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &TestIamPermissionsResponse{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Returns permissions that a caller has on the specified resource. If the resource does not exist, this will return an empty set of permissions, not a NOT_FOUND error.Note: This operation is designed to be used for building permission-aware UIs and command-line tools, not for authorization checking. This operation may \"fail open\" without warning.", + // "flatPath": "v1beta2/projects/{projectsId}/regions/{regionsId}/jobs/{jobsId}:testIamPermissions", + // "httpMethod": "POST", + // "id": "dataproc.projects.regions.jobs.testIamPermissions", + // "parameterOrder": [ + // "resource" + // ], + // "parameters": { + // "resource": { + // "description": "REQUIRED: The resource for which the policy detail is being requested. See the operation documentation for the appropriate value for this field.", + // "location": "path", + // "pattern": "^projects/[^/]+/regions/[^/]+/jobs/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1beta2/{+resource}:testIamPermissions", + // "request": { + // "$ref": "TestIamPermissionsRequest" + // }, + // "response": { + // "$ref": "TestIamPermissionsResponse" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + // method id "dataproc.projects.regions.operations.cancel": type ProjectsRegionsOperationsCancelCall struct { @@ -6673,6 +7610,147 @@ func (c *ProjectsRegionsOperationsGetCall) Do(opts ...googleapi.CallOption) (*Op } +// method id "dataproc.projects.regions.operations.getIamPolicy": + +type ProjectsRegionsOperationsGetIamPolicyCall struct { + s *Service + resource string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// GetIamPolicy: Gets the access control policy for a resource. Returns +// an empty policy if the resource exists and does not have a policy +// set. +func (r *ProjectsRegionsOperationsService) GetIamPolicy(resource string) *ProjectsRegionsOperationsGetIamPolicyCall { + c := &ProjectsRegionsOperationsGetIamPolicyCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.resource = resource + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsRegionsOperationsGetIamPolicyCall) Fields(s ...googleapi.Field) *ProjectsRegionsOperationsGetIamPolicyCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// IfNoneMatch sets the optional parameter which makes the operation +// fail if the object's ETag matches the given value. This is useful for +// getting updates only after the object has changed since the last +// request. Use googleapi.IsNotModified to check whether the response +// error from Do is the result of In-None-Match. +func (c *ProjectsRegionsOperationsGetIamPolicyCall) IfNoneMatch(entityTag string) *ProjectsRegionsOperationsGetIamPolicyCall { + c.ifNoneMatch_ = entityTag + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsRegionsOperationsGetIamPolicyCall) Context(ctx context.Context) *ProjectsRegionsOperationsGetIamPolicyCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsRegionsOperationsGetIamPolicyCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsRegionsOperationsGetIamPolicyCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + if c.ifNoneMatch_ != "" { + reqHeaders.Set("If-None-Match", c.ifNoneMatch_) + } + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta2/{+resource}:getIamPolicy") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("GET", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "resource": c.resource, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "dataproc.projects.regions.operations.getIamPolicy" call. +// Exactly one of *Policy or error will be non-nil. Any non-2xx status +// code is an error. Response headers are in either +// *Policy.ServerResponse.Header or (if a response was returned at all) +// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to +// check whether the returned error was because http.StatusNotModified +// was returned. +func (c *ProjectsRegionsOperationsGetIamPolicyCall) Do(opts ...googleapi.CallOption) (*Policy, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &Policy{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Gets the access control policy for a resource. Returns an empty policy if the resource exists and does not have a policy set.", + // "flatPath": "v1beta2/projects/{projectsId}/regions/{regionsId}/operations/{operationsId}:getIamPolicy", + // "httpMethod": "GET", + // "id": "dataproc.projects.regions.operations.getIamPolicy", + // "parameterOrder": [ + // "resource" + // ], + // "parameters": { + // "resource": { + // "description": "REQUIRED: The resource for which the policy is being requested. See the operation documentation for the appropriate value for this field.", + // "location": "path", + // "pattern": "^projects/[^/]+/regions/[^/]+/operations/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1beta2/{+resource}:getIamPolicy", + // "response": { + // "$ref": "Policy" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + // method id "dataproc.projects.regions.operations.list": type ProjectsRegionsOperationsListCall struct { @@ -6879,6 +7957,282 @@ func (c *ProjectsRegionsOperationsListCall) Pages(ctx context.Context, f func(*L } } +// method id "dataproc.projects.regions.operations.setIamPolicy": + +type ProjectsRegionsOperationsSetIamPolicyCall struct { + s *Service + resource string + setiampolicyrequest *SetIamPolicyRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// SetIamPolicy: Sets the access control policy on the specified +// resource. Replaces any existing policy. +func (r *ProjectsRegionsOperationsService) SetIamPolicy(resource string, setiampolicyrequest *SetIamPolicyRequest) *ProjectsRegionsOperationsSetIamPolicyCall { + c := &ProjectsRegionsOperationsSetIamPolicyCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.resource = resource + c.setiampolicyrequest = setiampolicyrequest + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsRegionsOperationsSetIamPolicyCall) Fields(s ...googleapi.Field) *ProjectsRegionsOperationsSetIamPolicyCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsRegionsOperationsSetIamPolicyCall) Context(ctx context.Context) *ProjectsRegionsOperationsSetIamPolicyCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsRegionsOperationsSetIamPolicyCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsRegionsOperationsSetIamPolicyCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.setiampolicyrequest) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta2/{+resource}:setIamPolicy") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("POST", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "resource": c.resource, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "dataproc.projects.regions.operations.setIamPolicy" call. +// Exactly one of *Policy or error will be non-nil. Any non-2xx status +// code is an error. Response headers are in either +// *Policy.ServerResponse.Header or (if a response was returned at all) +// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to +// check whether the returned error was because http.StatusNotModified +// was returned. +func (c *ProjectsRegionsOperationsSetIamPolicyCall) Do(opts ...googleapi.CallOption) (*Policy, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &Policy{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Sets the access control policy on the specified resource. Replaces any existing policy.", + // "flatPath": "v1beta2/projects/{projectsId}/regions/{regionsId}/operations/{operationsId}:setIamPolicy", + // "httpMethod": "POST", + // "id": "dataproc.projects.regions.operations.setIamPolicy", + // "parameterOrder": [ + // "resource" + // ], + // "parameters": { + // "resource": { + // "description": "REQUIRED: The resource for which the policy is being specified. See the operation documentation for the appropriate value for this field.", + // "location": "path", + // "pattern": "^projects/[^/]+/regions/[^/]+/operations/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1beta2/{+resource}:setIamPolicy", + // "request": { + // "$ref": "SetIamPolicyRequest" + // }, + // "response": { + // "$ref": "Policy" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "dataproc.projects.regions.operations.testIamPermissions": + +type ProjectsRegionsOperationsTestIamPermissionsCall struct { + s *Service + resource string + testiampermissionsrequest *TestIamPermissionsRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// TestIamPermissions: Returns permissions that a caller has on the +// specified resource. If the resource does not exist, this will return +// an empty set of permissions, not a NOT_FOUND error.Note: This +// operation is designed to be used for building permission-aware UIs +// and command-line tools, not for authorization checking. This +// operation may "fail open" without warning. +func (r *ProjectsRegionsOperationsService) TestIamPermissions(resource string, testiampermissionsrequest *TestIamPermissionsRequest) *ProjectsRegionsOperationsTestIamPermissionsCall { + c := &ProjectsRegionsOperationsTestIamPermissionsCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.resource = resource + c.testiampermissionsrequest = testiampermissionsrequest + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsRegionsOperationsTestIamPermissionsCall) Fields(s ...googleapi.Field) *ProjectsRegionsOperationsTestIamPermissionsCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsRegionsOperationsTestIamPermissionsCall) Context(ctx context.Context) *ProjectsRegionsOperationsTestIamPermissionsCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsRegionsOperationsTestIamPermissionsCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsRegionsOperationsTestIamPermissionsCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.testiampermissionsrequest) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta2/{+resource}:testIamPermissions") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("POST", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "resource": c.resource, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "dataproc.projects.regions.operations.testIamPermissions" call. +// Exactly one of *TestIamPermissionsResponse or error will be non-nil. +// Any non-2xx status code is an error. Response headers are in either +// *TestIamPermissionsResponse.ServerResponse.Header or (if a response +// was returned at all) in error.(*googleapi.Error).Header. Use +// googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *ProjectsRegionsOperationsTestIamPermissionsCall) Do(opts ...googleapi.CallOption) (*TestIamPermissionsResponse, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &TestIamPermissionsResponse{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Returns permissions that a caller has on the specified resource. If the resource does not exist, this will return an empty set of permissions, not a NOT_FOUND error.Note: This operation is designed to be used for building permission-aware UIs and command-line tools, not for authorization checking. This operation may \"fail open\" without warning.", + // "flatPath": "v1beta2/projects/{projectsId}/regions/{regionsId}/operations/{operationsId}:testIamPermissions", + // "httpMethod": "POST", + // "id": "dataproc.projects.regions.operations.testIamPermissions", + // "parameterOrder": [ + // "resource" + // ], + // "parameters": { + // "resource": { + // "description": "REQUIRED: The resource for which the policy detail is being requested. See the operation documentation for the appropriate value for this field.", + // "location": "path", + // "pattern": "^projects/[^/]+/regions/[^/]+/operations/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1beta2/{+resource}:testIamPermissions", + // "request": { + // "$ref": "TestIamPermissionsRequest" + // }, + // "response": { + // "$ref": "TestIamPermissionsResponse" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + // method id "dataproc.projects.regions.workflowTemplates.create": type ProjectsRegionsWorkflowTemplatesCreateCall struct { @@ -7308,6 +8662,147 @@ func (c *ProjectsRegionsWorkflowTemplatesGetCall) Do(opts ...googleapi.CallOptio } +// method id "dataproc.projects.regions.workflowTemplates.getIamPolicy": + +type ProjectsRegionsWorkflowTemplatesGetIamPolicyCall struct { + s *Service + resource string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// GetIamPolicy: Gets the access control policy for a resource. Returns +// an empty policy if the resource exists and does not have a policy +// set. +func (r *ProjectsRegionsWorkflowTemplatesService) GetIamPolicy(resource string) *ProjectsRegionsWorkflowTemplatesGetIamPolicyCall { + c := &ProjectsRegionsWorkflowTemplatesGetIamPolicyCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.resource = resource + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsRegionsWorkflowTemplatesGetIamPolicyCall) Fields(s ...googleapi.Field) *ProjectsRegionsWorkflowTemplatesGetIamPolicyCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// IfNoneMatch sets the optional parameter which makes the operation +// fail if the object's ETag matches the given value. This is useful for +// getting updates only after the object has changed since the last +// request. Use googleapi.IsNotModified to check whether the response +// error from Do is the result of In-None-Match. +func (c *ProjectsRegionsWorkflowTemplatesGetIamPolicyCall) IfNoneMatch(entityTag string) *ProjectsRegionsWorkflowTemplatesGetIamPolicyCall { + c.ifNoneMatch_ = entityTag + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsRegionsWorkflowTemplatesGetIamPolicyCall) Context(ctx context.Context) *ProjectsRegionsWorkflowTemplatesGetIamPolicyCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsRegionsWorkflowTemplatesGetIamPolicyCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsRegionsWorkflowTemplatesGetIamPolicyCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + if c.ifNoneMatch_ != "" { + reqHeaders.Set("If-None-Match", c.ifNoneMatch_) + } + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta2/{+resource}:getIamPolicy") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("GET", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "resource": c.resource, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "dataproc.projects.regions.workflowTemplates.getIamPolicy" call. +// Exactly one of *Policy or error will be non-nil. Any non-2xx status +// code is an error. Response headers are in either +// *Policy.ServerResponse.Header or (if a response was returned at all) +// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to +// check whether the returned error was because http.StatusNotModified +// was returned. +func (c *ProjectsRegionsWorkflowTemplatesGetIamPolicyCall) Do(opts ...googleapi.CallOption) (*Policy, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &Policy{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Gets the access control policy for a resource. Returns an empty policy if the resource exists and does not have a policy set.", + // "flatPath": "v1beta2/projects/{projectsId}/regions/{regionsId}/workflowTemplates/{workflowTemplatesId}:getIamPolicy", + // "httpMethod": "GET", + // "id": "dataproc.projects.regions.workflowTemplates.getIamPolicy", + // "parameterOrder": [ + // "resource" + // ], + // "parameters": { + // "resource": { + // "description": "REQUIRED: The resource for which the policy is being requested. See the operation documentation for the appropriate value for this field.", + // "location": "path", + // "pattern": "^projects/[^/]+/regions/[^/]+/workflowTemplates/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1beta2/{+resource}:getIamPolicy", + // "response": { + // "$ref": "Policy" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + // method id "dataproc.projects.regions.workflowTemplates.instantiate": type ProjectsRegionsWorkflowTemplatesInstantiateCall struct { @@ -7321,14 +8816,12 @@ type ProjectsRegionsWorkflowTemplatesInstantiateCall struct { // Instantiate: Instantiates a template and begins execution.The // returned Operation can be used to track execution of workflow by -// polling google.cloud.dataproc.v1beta2.OperationService.GetOperation. -// The Operation will complete when entire workflow is finished.The -// running workflow can be aborted via -// google.cloud.dataproc.v1beta2.OperationService.CancelOperation.The -// google.cloud.dataproc.v1beta2.Operation.metadata will always be -// google.cloud.dataproc.v1beta2.WorkflowMetadata.The -// google.cloud.dataproc.v1beta2.Operation.result will always be -// google.protobuf.Empty. +// polling operations.get. The Operation will complete when entire +// workflow is finished.The running workflow can be aborted via +// operations.cancel. This will cause any inflight jobs to be cancelled +// and workflow-owned clusters to be deleted.The Operation.metadata will +// be WorkflowMetadata.On successful completion, Operation.response will +// be Empty. func (r *ProjectsRegionsWorkflowTemplatesService) Instantiate(name string, instantiateworkflowtemplaterequest *InstantiateWorkflowTemplateRequest) *ProjectsRegionsWorkflowTemplatesInstantiateCall { c := &ProjectsRegionsWorkflowTemplatesInstantiateCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.name = name @@ -7422,7 +8915,7 @@ func (c *ProjectsRegionsWorkflowTemplatesInstantiateCall) Do(opts ...googleapi.C } return ret, nil // { - // "description": "Instantiates a template and begins execution.The returned Operation can be used to track execution of workflow by polling google.cloud.dataproc.v1beta2.OperationService.GetOperation. The Operation will complete when entire workflow is finished.The running workflow can be aborted via google.cloud.dataproc.v1beta2.OperationService.CancelOperation.The google.cloud.dataproc.v1beta2.Operation.metadata will always be google.cloud.dataproc.v1beta2.WorkflowMetadata.The google.cloud.dataproc.v1beta2.Operation.result will always be google.protobuf.Empty.", + // "description": "Instantiates a template and begins execution.The returned Operation can be used to track execution of workflow by polling operations.get. The Operation will complete when entire workflow is finished.The running workflow can be aborted via operations.cancel. This will cause any inflight jobs to be cancelled and workflow-owned clusters to be deleted.The Operation.metadata will be WorkflowMetadata.On successful completion, Operation.response will be Empty.", // "flatPath": "v1beta2/projects/{projectsId}/regions/{regionsId}/workflowTemplates/{workflowTemplatesId}:instantiate", // "httpMethod": "POST", // "id": "dataproc.projects.regions.workflowTemplates.instantiate", @@ -7467,15 +8960,12 @@ type ProjectsRegionsWorkflowTemplatesInstantiateInlineCall struct { // method is equivalent to executing the sequence // CreateWorkflowTemplate, InstantiateWorkflowTemplate, // DeleteWorkflowTemplate.The returned Operation can be used to track -// execution of workflow by polling -// google.cloud.dataproc.v1beta2.OperationService.GetOperation. The -// Operation will complete when entire workflow is finished.The running -// workflow can be aborted via -// google.cloud.dataproc.v1beta2.OperationService.CancelOperation.The -// google.cloud.dataproc.v1beta2.Operation.metadata will always be -// google.cloud.dataproc.v1beta2.WorkflowMetadata.The -// google.cloud.dataproc.v1beta2.Operation.result will always be -// google.protobuf.Empty. +// execution of workflow by polling operations.get. The Operation will +// complete when entire workflow is finished.The running workflow can be +// aborted via operations.cancel. This will cause any inflight jobs to +// be cancelled and workflow-owned clusters to be deleted.The +// Operation.metadata will be WorkflowMetadata.On successful completion, +// Operation.response will be Empty. func (r *ProjectsRegionsWorkflowTemplatesService) InstantiateInline(parent string, workflowtemplate *WorkflowTemplate) *ProjectsRegionsWorkflowTemplatesInstantiateInlineCall { c := &ProjectsRegionsWorkflowTemplatesInstantiateInlineCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.parent = parent @@ -7581,7 +9071,7 @@ func (c *ProjectsRegionsWorkflowTemplatesInstantiateInlineCall) Do(opts ...googl } return ret, nil // { - // "description": "Instantiates a template and begins execution.This method is equivalent to executing the sequence CreateWorkflowTemplate, InstantiateWorkflowTemplate, DeleteWorkflowTemplate.The returned Operation can be used to track execution of workflow by polling google.cloud.dataproc.v1beta2.OperationService.GetOperation. The Operation will complete when entire workflow is finished.The running workflow can be aborted via google.cloud.dataproc.v1beta2.OperationService.CancelOperation.The google.cloud.dataproc.v1beta2.Operation.metadata will always be google.cloud.dataproc.v1beta2.WorkflowMetadata.The google.cloud.dataproc.v1beta2.Operation.result will always be google.protobuf.Empty.", + // "description": "Instantiates a template and begins execution.This method is equivalent to executing the sequence CreateWorkflowTemplate, InstantiateWorkflowTemplate, DeleteWorkflowTemplate.The returned Operation can be used to track execution of workflow by polling operations.get. The Operation will complete when entire workflow is finished.The running workflow can be aborted via operations.cancel. This will cause any inflight jobs to be cancelled and workflow-owned clusters to be deleted.The Operation.metadata will be WorkflowMetadata.On successful completion, Operation.response will be Empty.", // "flatPath": "v1beta2/projects/{projectsId}/regions/{regionsId}/workflowTemplates:instantiateInline", // "httpMethod": "POST", // "id": "dataproc.projects.regions.workflowTemplates.instantiateInline", @@ -7801,6 +9291,282 @@ func (c *ProjectsRegionsWorkflowTemplatesListCall) Pages(ctx context.Context, f } } +// method id "dataproc.projects.regions.workflowTemplates.setIamPolicy": + +type ProjectsRegionsWorkflowTemplatesSetIamPolicyCall struct { + s *Service + resource string + setiampolicyrequest *SetIamPolicyRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// SetIamPolicy: Sets the access control policy on the specified +// resource. Replaces any existing policy. +func (r *ProjectsRegionsWorkflowTemplatesService) SetIamPolicy(resource string, setiampolicyrequest *SetIamPolicyRequest) *ProjectsRegionsWorkflowTemplatesSetIamPolicyCall { + c := &ProjectsRegionsWorkflowTemplatesSetIamPolicyCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.resource = resource + c.setiampolicyrequest = setiampolicyrequest + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsRegionsWorkflowTemplatesSetIamPolicyCall) Fields(s ...googleapi.Field) *ProjectsRegionsWorkflowTemplatesSetIamPolicyCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsRegionsWorkflowTemplatesSetIamPolicyCall) Context(ctx context.Context) *ProjectsRegionsWorkflowTemplatesSetIamPolicyCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsRegionsWorkflowTemplatesSetIamPolicyCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsRegionsWorkflowTemplatesSetIamPolicyCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.setiampolicyrequest) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta2/{+resource}:setIamPolicy") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("POST", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "resource": c.resource, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "dataproc.projects.regions.workflowTemplates.setIamPolicy" call. +// Exactly one of *Policy or error will be non-nil. Any non-2xx status +// code is an error. Response headers are in either +// *Policy.ServerResponse.Header or (if a response was returned at all) +// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to +// check whether the returned error was because http.StatusNotModified +// was returned. +func (c *ProjectsRegionsWorkflowTemplatesSetIamPolicyCall) Do(opts ...googleapi.CallOption) (*Policy, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &Policy{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Sets the access control policy on the specified resource. Replaces any existing policy.", + // "flatPath": "v1beta2/projects/{projectsId}/regions/{regionsId}/workflowTemplates/{workflowTemplatesId}:setIamPolicy", + // "httpMethod": "POST", + // "id": "dataproc.projects.regions.workflowTemplates.setIamPolicy", + // "parameterOrder": [ + // "resource" + // ], + // "parameters": { + // "resource": { + // "description": "REQUIRED: The resource for which the policy is being specified. See the operation documentation for the appropriate value for this field.", + // "location": "path", + // "pattern": "^projects/[^/]+/regions/[^/]+/workflowTemplates/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1beta2/{+resource}:setIamPolicy", + // "request": { + // "$ref": "SetIamPolicyRequest" + // }, + // "response": { + // "$ref": "Policy" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "dataproc.projects.regions.workflowTemplates.testIamPermissions": + +type ProjectsRegionsWorkflowTemplatesTestIamPermissionsCall struct { + s *Service + resource string + testiampermissionsrequest *TestIamPermissionsRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// TestIamPermissions: Returns permissions that a caller has on the +// specified resource. If the resource does not exist, this will return +// an empty set of permissions, not a NOT_FOUND error.Note: This +// operation is designed to be used for building permission-aware UIs +// and command-line tools, not for authorization checking. This +// operation may "fail open" without warning. +func (r *ProjectsRegionsWorkflowTemplatesService) TestIamPermissions(resource string, testiampermissionsrequest *TestIamPermissionsRequest) *ProjectsRegionsWorkflowTemplatesTestIamPermissionsCall { + c := &ProjectsRegionsWorkflowTemplatesTestIamPermissionsCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.resource = resource + c.testiampermissionsrequest = testiampermissionsrequest + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsRegionsWorkflowTemplatesTestIamPermissionsCall) Fields(s ...googleapi.Field) *ProjectsRegionsWorkflowTemplatesTestIamPermissionsCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsRegionsWorkflowTemplatesTestIamPermissionsCall) Context(ctx context.Context) *ProjectsRegionsWorkflowTemplatesTestIamPermissionsCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsRegionsWorkflowTemplatesTestIamPermissionsCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsRegionsWorkflowTemplatesTestIamPermissionsCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.testiampermissionsrequest) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta2/{+resource}:testIamPermissions") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("POST", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "resource": c.resource, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "dataproc.projects.regions.workflowTemplates.testIamPermissions" call. +// Exactly one of *TestIamPermissionsResponse or error will be non-nil. +// Any non-2xx status code is an error. Response headers are in either +// *TestIamPermissionsResponse.ServerResponse.Header or (if a response +// was returned at all) in error.(*googleapi.Error).Header. Use +// googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *ProjectsRegionsWorkflowTemplatesTestIamPermissionsCall) Do(opts ...googleapi.CallOption) (*TestIamPermissionsResponse, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &TestIamPermissionsResponse{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Returns permissions that a caller has on the specified resource. If the resource does not exist, this will return an empty set of permissions, not a NOT_FOUND error.Note: This operation is designed to be used for building permission-aware UIs and command-line tools, not for authorization checking. This operation may \"fail open\" without warning.", + // "flatPath": "v1beta2/projects/{projectsId}/regions/{regionsId}/workflowTemplates/{workflowTemplatesId}:testIamPermissions", + // "httpMethod": "POST", + // "id": "dataproc.projects.regions.workflowTemplates.testIamPermissions", + // "parameterOrder": [ + // "resource" + // ], + // "parameters": { + // "resource": { + // "description": "REQUIRED: The resource for which the policy detail is being requested. See the operation documentation for the appropriate value for this field.", + // "location": "path", + // "pattern": "^projects/[^/]+/regions/[^/]+/workflowTemplates/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1beta2/{+resource}:testIamPermissions", + // "request": { + // "$ref": "TestIamPermissionsRequest" + // }, + // "response": { + // "$ref": "TestIamPermissionsResponse" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + // method id "dataproc.projects.regions.workflowTemplates.update": type ProjectsRegionsWorkflowTemplatesUpdateCall struct { diff --git a/vendor/google.golang.org/api/datastore/v1/datastore-api.json b/vendor/google.golang.org/api/datastore/v1/datastore-api.json index e6d2c356f..ec291f75d 100644 --- a/vendor/google.golang.org/api/datastore/v1/datastore-api.json +++ b/vendor/google.golang.org/api/datastore/v1/datastore-api.json @@ -1,729 +1,608 @@ { + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/cloud-platform": { + "description": "View and manage your data across Google Cloud Platform services" + }, + "https://www.googleapis.com/auth/datastore": { + "description": "View and manage your Google Cloud Datastore data" + } + } + } + }, + "basePath": "", + "baseUrl": "https://datastore.googleapis.com/", + "batchPath": "batch", + "description": "Accesses the schemaless NoSQL database to provide fully managed, robust, scalable storage for your application.\n", + "discoveryVersion": "v1", + "documentationLink": "https://cloud.google.com/datastore/", + "icons": { + "x16": "http://www.google.com/images/icons/product/search-16.gif", + "x32": "http://www.google.com/images/icons/product/search-32.gif" + }, + "id": "datastore:v1", + "kind": "discovery#restDescription", + "name": "datastore", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "$.xgafv": { + "description": "V1 error format.", + "enum": [ + "1", + "2" + ], + "enumDescriptions": [ + "v1 error format", + "v2 error format" + ], + "location": "query", + "type": "string" + }, + "access_token": { + "description": "OAuth access token.", + "location": "query", + "type": "string" + }, + "alt": { + "default": "json", + "description": "Data format for response.", + "enum": [ + "json", + "media", + "proto" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json", + "Media download with context-dependent Content-Type", + "Responses with Content-Type of application/x-protobuf" + ], + "location": "query", + "type": "string" + }, + "bearer_token": { + "description": "OAuth bearer token.", + "location": "query", + "type": "string" + }, + "callback": { + "description": "JSONP", + "location": "query", + "type": "string" + }, + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "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.", + "location": "query", + "type": "string" + }, + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "pp": { + "default": "true", + "description": "Pretty-print response.", + "location": "query", + "type": "boolean" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", + "location": "query", + "type": "string" + }, + "uploadType": { + "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", + "location": "query", + "type": "string" + }, + "upload_protocol": { + "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", + "location": "query", + "type": "string" + } + }, + "protocol": "rest", "resources": { "projects": { "methods": { - "reserveIds": { - "request": { - "$ref": "ReserveIdsRequest" - }, - "description": "Prevents the supplied keys' IDs from being auto-allocated by Cloud\nDatastore.", - "response": { - "$ref": "ReserveIdsResponse" - }, + "allocateIds": { + "description": "Allocates IDs for the given keys, which is useful for referencing an entity\nbefore it is inserted.", + "flatPath": "v1/projects/{projectId}:allocateIds", + "httpMethod": "POST", + "id": "datastore.projects.allocateIds", "parameterOrder": [ "projectId" ], - "httpMethod": "POST", "parameters": { "projectId": { - "location": "path", "description": "The ID of the project against which to make the request.", + "location": "path", "required": true, "type": "string" } }, + "path": "v1/projects/{projectId}:allocateIds", + "request": { + "$ref": "AllocateIdsRequest" + }, + "response": { + "$ref": "AllocateIdsResponse" + }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/datastore" - ], - "flatPath": "v1/projects/{projectId}:reserveIds", - "path": "v1/projects/{projectId}:reserveIds", - "id": "datastore.projects.reserveIds" + ] }, - "rollback": { - "request": { - "$ref": "RollbackRequest" - }, - "description": "Rolls back a transaction.", + "beginTransaction": { + "description": "Begins a new transaction.", + "flatPath": "v1/projects/{projectId}:beginTransaction", "httpMethod": "POST", + "id": "datastore.projects.beginTransaction", "parameterOrder": [ "projectId" ], - "response": { - "$ref": "RollbackResponse" - }, "parameters": { "projectId": { "description": "The ID of the project against which to make the request.", - "required": true, - "type": "string", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/datastore" - ], - "flatPath": "v1/projects/{projectId}:rollback", - "id": "datastore.projects.rollback", - "path": "v1/projects/{projectId}:rollback" - }, - "runQuery": { - "description": "Queries for entities.", - "request": { - "$ref": "RunQueryRequest" - }, - "response": { - "$ref": "RunQueryResponse" - }, - "parameterOrder": [ - "projectId" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/datastore" - ], - "parameters": { - "projectId": { "location": "path", - "description": "The ID of the project against which to make the request.", "required": true, "type": "string" } }, - "flatPath": "v1/projects/{projectId}:runQuery", - "path": "v1/projects/{projectId}:runQuery", - "id": "datastore.projects.runQuery" + "path": "v1/projects/{projectId}:beginTransaction", + "request": { + "$ref": "BeginTransactionRequest" + }, + "response": { + "$ref": "BeginTransactionResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/datastore" + ] + }, + "commit": { + "description": "Commits a transaction, optionally creating, deleting or modifying some\nentities.", + "flatPath": "v1/projects/{projectId}:commit", + "httpMethod": "POST", + "id": "datastore.projects.commit", + "parameterOrder": [ + "projectId" + ], + "parameters": { + "projectId": { + "description": "The ID of the project against which to make the request.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/projects/{projectId}:commit", + "request": { + "$ref": "CommitRequest" + }, + "response": { + "$ref": "CommitResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/datastore" + ] + }, + "export": { + "description": "Exports a copy of all or a subset of entities from Google Cloud Datastore\nto another storage system, such as Google Cloud Storage. Recent updates to\nentities may not be reflected in the export. The export occurs in the\nbackground and its progress can be monitored and managed via the\nOperation resource that is created. The output of an export may only be\nused once the associated operation is done. If an export operation is\ncancelled before completion it may leave partial data behind in Google\nCloud Storage.", + "flatPath": "v1/projects/{projectId}:export", + "httpMethod": "POST", + "id": "datastore.projects.export", + "parameterOrder": [ + "projectId" + ], + "parameters": { + "projectId": { + "description": "Project ID against which to make the request.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/projects/{projectId}:export", + "request": { + "$ref": "GoogleDatastoreAdminV1ExportEntitiesRequest" + }, + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/datastore" + ] + }, + "import": { + "description": "Imports entities into Google Cloud Datastore. Existing entities with the\nsame key are overwritten. The import occurs in the background and its\nprogress can be monitored and managed via the Operation resource that is\ncreated. If an ImportEntities operation is cancelled, it is possible\nthat a subset of the data has already been imported to Cloud Datastore.", + "flatPath": "v1/projects/{projectId}:import", + "httpMethod": "POST", + "id": "datastore.projects.import", + "parameterOrder": [ + "projectId" + ], + "parameters": { + "projectId": { + "description": "Project ID against which to make the request.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/projects/{projectId}:import", + "request": { + "$ref": "GoogleDatastoreAdminV1ImportEntitiesRequest" + }, + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/datastore" + ] }, "lookup": { - "flatPath": "v1/projects/{projectId}:lookup", - "path": "v1/projects/{projectId}:lookup", - "id": "datastore.projects.lookup", "description": "Looks up entities by key.", + "flatPath": "v1/projects/{projectId}:lookup", + "httpMethod": "POST", + "id": "datastore.projects.lookup", + "parameterOrder": [ + "projectId" + ], + "parameters": { + "projectId": { + "description": "The ID of the project against which to make the request.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/projects/{projectId}:lookup", "request": { "$ref": "LookupRequest" }, "response": { "$ref": "LookupResponse" }, - "parameterOrder": [ - "projectId" - ], - "httpMethod": "POST", "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/datastore" - ], - "parameters": { - "projectId": { - "description": "The ID of the project against which to make the request.", - "required": true, - "type": "string", - "location": "path" - } - } + ] }, - "allocateIds": { + "reserveIds": { + "description": "Prevents the supplied keys' IDs from being auto-allocated by Cloud\nDatastore.", + "flatPath": "v1/projects/{projectId}:reserveIds", "httpMethod": "POST", + "id": "datastore.projects.reserveIds", "parameterOrder": [ "projectId" ], - "response": { - "$ref": "AllocateIdsResponse" - }, "parameters": { "projectId": { - "location": "path", "description": "The ID of the project against which to make the request.", + "location": "path", "required": true, "type": "string" } }, + "path": "v1/projects/{projectId}:reserveIds", + "request": { + "$ref": "ReserveIdsRequest" + }, + "response": { + "$ref": "ReserveIdsResponse" + }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/datastore" - ], - "flatPath": "v1/projects/{projectId}:allocateIds", - "id": "datastore.projects.allocateIds", - "path": "v1/projects/{projectId}:allocateIds", - "request": { - "$ref": "AllocateIdsRequest" - }, - "description": "Allocates IDs for the given keys, which is useful for referencing an entity\nbefore it is inserted." + ] }, - "beginTransaction": { + "rollback": { + "description": "Rolls back a transaction.", + "flatPath": "v1/projects/{projectId}:rollback", "httpMethod": "POST", + "id": "datastore.projects.rollback", "parameterOrder": [ "projectId" ], - "response": { - "$ref": "BeginTransactionResponse" - }, "parameters": { "projectId": { "description": "The ID of the project against which to make the request.", + "location": "path", "required": true, - "type": "string", - "location": "path" + "type": "string" } }, + "path": "v1/projects/{projectId}:rollback", + "request": { + "$ref": "RollbackRequest" + }, + "response": { + "$ref": "RollbackResponse" + }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/datastore" - ], - "flatPath": "v1/projects/{projectId}:beginTransaction", - "id": "datastore.projects.beginTransaction", - "path": "v1/projects/{projectId}:beginTransaction", - "request": { - "$ref": "BeginTransactionRequest" - }, - "description": "Begins a new transaction." + ] }, - "commit": { + "runQuery": { + "description": "Queries for entities.", + "flatPath": "v1/projects/{projectId}:runQuery", "httpMethod": "POST", + "id": "datastore.projects.runQuery", "parameterOrder": [ "projectId" ], - "response": { - "$ref": "CommitResponse" - }, "parameters": { "projectId": { "description": "The ID of the project against which to make the request.", + "location": "path", "required": true, - "type": "string", - "location": "path" + "type": "string" } }, + "path": "v1/projects/{projectId}:runQuery", + "request": { + "$ref": "RunQueryRequest" + }, + "response": { + "$ref": "RunQueryResponse" + }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/datastore" - ], - "flatPath": "v1/projects/{projectId}:commit", - "id": "datastore.projects.commit", - "path": "v1/projects/{projectId}:commit", - "request": { - "$ref": "CommitRequest" - }, - "description": "Commits a transaction, optionally creating, deleting or modifying some\nentities." + ] } }, "resources": { "operations": { "methods": { - "list": { - "flatPath": "v1/projects/{projectsId}/operations", - "path": "v1/{+name}/operations", - "id": "datastore.projects.operations.list", - "description": "Lists operations that match the specified filter in the request. If the\nserver doesn't support this method, it returns `UNIMPLEMENTED`.\n\nNOTE: the `name` binding allows API services to override the binding\nto use different resource name schemes, such as `users/*/operations`. To\noverride the binding, API services can add a binding such as\n`\"/v1/{name=users/*}/operations\"` to their service configuration.\nFor backwards compatibility, the default name includes the operations\ncollection id, however overriding users must ensure the name binding\nis the parent resource, without the operations collection id.", - "response": { - "$ref": "GoogleLongrunningListOperationsResponse" - }, + "cancel": { + "description": "Starts asynchronous cancellation on a long-running operation. The server\nmakes a best effort to cancel the operation, but success is not\nguaranteed. If the server doesn't support this method, it returns\n`google.rpc.Code.UNIMPLEMENTED`. Clients can use\nOperations.GetOperation or\nother methods to check whether the cancellation succeeded or whether the\noperation completed despite cancellation. On successful cancellation,\nthe operation is not deleted; instead, it becomes an operation with\nan Operation.error value with a google.rpc.Status.code of 1,\ncorresponding to `Code.CANCELLED`.", + "flatPath": "v1/projects/{projectsId}/operations/{operationsId}:cancel", + "httpMethod": "POST", + "id": "datastore.projects.operations.cancel", "parameterOrder": [ "name" ], - "httpMethod": "GET", + "parameters": { + "name": { + "description": "The name of the operation resource to be cancelled.", + "location": "path", + "pattern": "^projects/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}:cancel", + "response": { + "$ref": "Empty" + }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/datastore" + ] + }, + "delete": { + "description": "Deletes a long-running operation. This method indicates that the client is\nno longer interested in the operation result. It does not cancel the\noperation. If the server doesn't support this method, it returns\n`google.rpc.Code.UNIMPLEMENTED`.", + "flatPath": "v1/projects/{projectsId}/operations/{operationsId}", + "httpMethod": "DELETE", + "id": "datastore.projects.operations.delete", + "parameterOrder": [ + "name" ], "parameters": { - "filter": { - "location": "query", - "description": "The standard list filter.", - "type": "string" - }, "name": { + "description": "The name of the operation resource to be deleted.", "location": "path", - "description": "The name of the operation's parent resource.", + "pattern": "^projects/[^/]+/operations/[^/]+$", "required": true, - "type": "string", - "pattern": "^projects/[^/]+$" - }, - "pageToken": { - "description": "The standard list page token.", - "type": "string", - "location": "query" - }, - "pageSize": { - "location": "query", - "description": "The standard list page size.", - "format": "int32", - "type": "integer" + "type": "string" } - } + }, + "path": "v1/{+name}", + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/datastore" + ] }, "get": { "description": "Gets the latest state of a long-running operation. Clients can use this\nmethod to poll the operation result at intervals as recommended by the API\nservice.", + "flatPath": "v1/projects/{projectsId}/operations/{operationsId}", "httpMethod": "GET", + "id": "datastore.projects.operations.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource.", + "location": "path", + "pattern": "^projects/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", "response": { "$ref": "GoogleLongrunningOperation" }, - "parameterOrder": [ - "name" - ], - "parameters": { - "name": { - "location": "path", - "description": "The name of the operation resource.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/operations/[^/]+$" - } - }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/datastore" - ], - "flatPath": "v1/projects/{projectsId}/operations/{operationsId}", - "id": "datastore.projects.operations.get", - "path": "v1/{+name}" + ] }, - "cancel": { - "description": "Starts asynchronous cancellation on a long-running operation. The server\nmakes a best effort to cancel the operation, but success is not\nguaranteed. If the server doesn't support this method, it returns\n`google.rpc.Code.UNIMPLEMENTED`. Clients can use\nOperations.GetOperation or\nother methods to check whether the cancellation succeeded or whether the\noperation completed despite cancellation. On successful cancellation,\nthe operation is not deleted; instead, it becomes an operation with\nan Operation.error value with a google.rpc.Status.code of 1,\ncorresponding to `Code.CANCELLED`.", - "response": { - "$ref": "Empty" - }, + "list": { + "description": "Lists operations that match the specified filter in the request. If the\nserver doesn't support this method, it returns `UNIMPLEMENTED`.\n\nNOTE: the `name` binding allows API services to override the binding\nto use different resource name schemes, such as `users/*/operations`. To\noverride the binding, API services can add a binding such as\n`\"/v1/{name=users/*}/operations\"` to their service configuration.\nFor backwards compatibility, the default name includes the operations\ncollection id, however overriding users must ensure the name binding\nis the parent resource, without the operations collection id.", + "flatPath": "v1/projects/{projectsId}/operations", + "httpMethod": "GET", + "id": "datastore.projects.operations.list", "parameterOrder": [ "name" ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/datastore" - ], "parameters": { + "filter": { + "description": "The standard list filter.", + "location": "query", + "type": "string" + }, "name": { + "description": "The name of the operation's parent resource.", "location": "path", - "description": "The name of the operation resource to be cancelled.", + "pattern": "^projects/[^/]+$", "required": true, - "type": "string", - "pattern": "^projects/[^/]+/operations/[^/]+$" + "type": "string" + }, + "pageSize": { + "description": "The standard list page size.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "The standard list page token.", + "location": "query", + "type": "string" } }, - "flatPath": "v1/projects/{projectsId}/operations/{operationsId}:cancel", - "path": "v1/{+name}:cancel", - "id": "datastore.projects.operations.cancel" - }, - "delete": { - "flatPath": "v1/projects/{projectsId}/operations/{operationsId}", - "path": "v1/{+name}", - "id": "datastore.projects.operations.delete", - "description": "Deletes a long-running operation. This method indicates that the client is\nno longer interested in the operation result. It does not cancel the\noperation. If the server doesn't support this method, it returns\n`google.rpc.Code.UNIMPLEMENTED`.", + "path": "v1/{+name}/operations", "response": { - "$ref": "Empty" + "$ref": "GoogleLongrunningListOperationsResponse" }, - "parameterOrder": [ - "name" - ], - "httpMethod": "DELETE", "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/datastore" - ], - "parameters": { - "name": { - "location": "path", - "description": "The name of the operation resource to be deleted.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/operations/[^/]+$" - } - } + ] } } } } } }, - "parameters": { - "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.", - "type": "string", - "location": "query" - }, - "access_token": { - "location": "query", - "description": "OAuth access token.", - "type": "string" - }, - "quotaUser": { - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", - "type": "string", - "location": "query" - }, - "pp": { - "location": "query", - "description": "Pretty-print response.", - "type": "boolean", - "default": "true" - }, - "oauth_token": { - "location": "query", - "description": "OAuth 2.0 token for the current user.", - "type": "string" - }, - "bearer_token": { - "location": "query", - "description": "OAuth bearer token.", - "type": "string" - }, - "upload_protocol": { - "location": "query", - "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", - "type": "string" - }, - "prettyPrint": { - "location": "query", - "description": "Returns response with indentations and line breaks.", - "type": "boolean", - "default": "true" - }, - "uploadType": { - "location": "query", - "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", - "type": "string" - }, - "fields": { - "description": "Selector specifying which fields to include in a partial response.", - "type": "string", - "location": "query" - }, - "$.xgafv": { - "enumDescriptions": [ - "v1 error format", - "v2 error format" - ], - "location": "query", - "enum": [ - "1", - "2" - ], - "description": "V1 error format.", - "type": "string" - }, - "callback": { - "description": "JSONP", - "type": "string", - "location": "query" - }, - "alt": { - "description": "Data format for response.", - "default": "json", - "enum": [ - "json", - "media", - "proto" - ], - "type": "string", - "enumDescriptions": [ - "Responses with Content-Type of application/json", - "Media download with context-dependent Content-Type", - "Responses with Content-Type of application/x-protobuf" - ], - "location": "query" - } - }, + "revision": "20180321", + "rootUrl": "https://datastore.googleapis.com/", "schemas": { - "PropertyOrder": { - "description": "The desired order for a specific property.", - "type": "object", + "AllocateIdsRequest": { + "description": "The request for Datastore.AllocateIds.", + "id": "AllocateIdsRequest", "properties": { - "property": { - "$ref": "PropertyReference", - "description": "The property to order by." - }, - "direction": { - "enumDescriptions": [ - "Unspecified. This value must not be used.", - "Ascending.", - "Descending." - ], - "enum": [ - "DIRECTION_UNSPECIFIED", - "ASCENDING", - "DESCENDING" - ], - "description": "The direction to order by. Defaults to `ASCENDING`.", - "type": "string" + "keys": { + "description": "A list of keys with incomplete key paths for which to allocate IDs.\nNo key may be reserved/read-only.", + "items": { + "$ref": "Key" + }, + "type": "array" } }, - "id": "PropertyOrder" - }, - "ReserveIdsResponse": { - "properties": {}, - "id": "ReserveIdsResponse", - "description": "The response for Datastore.ReserveIds.", "type": "object" }, - "GoogleDatastoreAdminV1beta1EntityFilter": { - "properties": { - "namespaceIds": { - "description": "An empty list represents all namespaces. This is the preferred\nusage for projects that don't use namespaces.\n\nAn empty string element represents the default namespace. This should be\nused if the project has data in non-default namespaces, but doesn't want to\ninclude them.\nEach namespace in this list must be unique.", - "type": "array", - "items": { - "type": "string" - } - }, - "kinds": { - "description": "If empty, then this represents all kinds.", - "type": "array", - "items": { - "type": "string" - } - } - }, - "id": "GoogleDatastoreAdminV1beta1EntityFilter", - "description": "Identifies a subset of entities in a project. This is specified as\ncombinations of kinds and namespaces (either or both of which may be all, as\ndescribed in the following examples).\nExample usage:\n\nEntire project:\n kinds=[], namespace_ids=[]\n\nKinds Foo and Bar in all namespaces:\n kinds=['Foo', 'Bar'], namespace_ids=[]\n\nKinds Foo and Bar only in the default namespace:\n kinds=['Foo', 'Bar'], namespace_ids=['']\n\nKinds Foo and Bar in both the default and Baz namespaces:\n kinds=['Foo', 'Bar'], namespace_ids=['', 'Baz']\n\nThe entire Baz namespace:\n kinds=[], namespace_ids=['Baz']", - "type": "object" - }, - "PropertyReference": { - "description": "A reference to a property relative to the kind expressions.", - "type": "object", - "properties": { - "name": { - "description": "The name of the property.\nIf name includes \".\"s, it may be interpreted as a property name path.", - "type": "string" - } - }, - "id": "PropertyReference" - }, - "Projection": { - "description": "A representation of a property in a projection.", - "type": "object", - "properties": { - "property": { - "$ref": "PropertyReference", - "description": "The property to project." - } - }, - "id": "Projection" - }, - "Mutation": { - "description": "A mutation to apply to an entity.", - "type": "object", - "properties": { - "delete": { - "description": "The key of the entity to delete. The entity may or may not already exist.\nMust have a complete key path and must not be reserved/read-only.", - "$ref": "Key" - }, - "insert": { - "$ref": "Entity", - "description": "The entity to insert. The entity must not already exist.\nThe entity key's final path element may be incomplete." - }, - "baseVersion": { - "description": "The version of the entity that this mutation is being applied to. If this\ndoes not match the current version on the server, the mutation conflicts.", - "format": "int64", - "type": "string" - }, - "update": { - "description": "The entity to update. The entity must already exist.\nMust have a complete key path.", - "$ref": "Entity" - }, - "upsert": { - "$ref": "Entity", - "description": "The entity to upsert. The entity may or may not already exist.\nThe entity key's final path element may be incomplete." - } - }, - "id": "Mutation" - }, - "ReadOptions": { - "description": "The options shared by read requests.", - "type": "object", - "properties": { - "readConsistency": { - "enumDescriptions": [ - "Unspecified. This value must not be used.", - "Strong consistency.", - "Eventual consistency." - ], - "enum": [ - "READ_CONSISTENCY_UNSPECIFIED", - "STRONG", - "EVENTUAL" - ], - "description": "The non-transactional read consistency to use.\nCannot be set to `STRONG` for global queries.", - "type": "string" - }, - "transaction": { - "description": "The identifier of the transaction in which to read. A\ntransaction identifier is returned by a call to\nDatastore.BeginTransaction.", - "format": "byte", - "type": "string" - } - }, - "id": "ReadOptions" - }, - "RollbackResponse": { - "description": "The response for Datastore.Rollback.\n(an empty message).", - "type": "object", - "properties": {}, - "id": "RollbackResponse" - }, - "MutationResult": { - "description": "The result of applying a mutation.", - "type": "object", - "properties": { - "conflictDetected": { - "description": "Whether a conflict was detected for this mutation. Always false when a\nconflict detection strategy field is not set in the mutation.", - "type": "boolean" - }, - "key": { - "description": "The automatically allocated key.\nSet only when the mutation allocated a key.", - "$ref": "Key" - }, - "version": { - "description": "The version of the entity on the server after processing the mutation. If\nthe mutation doesn't change anything on the server, then the version will\nbe the version of the current entity or, if no entity is present, a version\nthat is strictly greater than the version of any previous entity and less\nthan the version of any possible future entity.", - "format": "int64", - "type": "string" - } - }, - "id": "MutationResult" - }, - "RollbackRequest": { - "description": "The request for Datastore.Rollback.", - "type": "object", - "properties": { - "transaction": { - "description": "The transaction identifier, returned by a call to\nDatastore.BeginTransaction.", - "format": "byte", - "type": "string" - } - }, - "id": "RollbackRequest" - }, - "GoogleDatastoreAdminV1beta1ExportEntitiesMetadata": { - "description": "Metadata for ExportEntities operations.", - "type": "object", - "properties": { - "common": { - "$ref": "GoogleDatastoreAdminV1beta1CommonMetadata", - "description": "Metadata common to all Datastore Admin operations." - }, - "progressBytes": { - "description": "An estimate of the number of bytes processed.", - "$ref": "GoogleDatastoreAdminV1beta1Progress" - }, - "entityFilter": { - "description": "Description of which entities are being exported.", - "$ref": "GoogleDatastoreAdminV1beta1EntityFilter" - }, - "outputUrlPrefix": { - "description": "Location for the export metadata and data files. This will be the same\nvalue as the\ngoogle.datastore.admin.v1beta1.ExportEntitiesRequest.output_url_prefix\nfield. The final output location is provided in\ngoogle.datastore.admin.v1beta1.ExportEntitiesResponse.output_url.", - "type": "string" - }, - "progressEntities": { - "$ref": "GoogleDatastoreAdminV1beta1Progress", - "description": "An estimate of the number of entities processed." - } - }, - "id": "GoogleDatastoreAdminV1beta1ExportEntitiesMetadata" - }, - "CompositeFilter": { - "description": "A filter that merges multiple other filters using the given operator.", - "type": "object", - "properties": { - "filters": { - "description": "The list of filters to combine.\nMust contain at least one filter.", - "type": "array", - "items": { - "$ref": "Filter" - } - }, - "op": { - "enumDescriptions": [ - "Unspecified. This value must not be used.", - "The results are required to satisfy each of the combined filters." - ], - "enum": [ - "OPERATOR_UNSPECIFIED", - "AND" - ], - "description": "The operator for combining multiple filters.", - "type": "string" - } - }, - "id": "CompositeFilter" - }, "AllocateIdsResponse": { "description": "The response for Datastore.AllocateIds.", - "type": "object", + "id": "AllocateIdsResponse", "properties": { "keys": { "description": "The keys specified in the request (in the same order), each with\nits key path completed with a newly allocated ID.", - "type": "array", "items": { "$ref": "Key" - } + }, + "type": "array" } }, - "id": "AllocateIdsResponse" - }, - "GoogleLongrunningOperation": { - "properties": { - "done": { - "description": "If the value is `false`, it means the operation is still in progress.\nIf `true`, the operation is completed, and either `error` or `response` is\navailable.", - "type": "boolean" - }, - "response": { - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - }, - "description": "The normal response of the operation in case of success. If the original\nmethod returns no data on success, such as `Delete`, the response is\n`google.protobuf.Empty`. If the original method is standard\n`Get`/`Create`/`Update`, the response should be the resource. For other\nmethods, the response should have the type `XxxResponse`, where `Xxx`\nis the original method name. For example, if the original method name\nis `TakeSnapshot()`, the inferred response type is\n`TakeSnapshotResponse`.", - "type": "object" - }, - "name": { - "description": "The server-assigned name, which is only unique within the same service that\noriginally returns it. If you use the default HTTP mapping, the\n`name` should have the format of `operations/some/unique/name`.", - "type": "string" - }, - "error": { - "description": "The error result of the operation in case of failure or cancellation.", - "$ref": "Status" - }, - "metadata": { - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - }, - "description": "Service-specific metadata associated with the operation. It typically\ncontains progress information and common metadata such as create time.\nSome services might not provide such metadata. Any method that returns a\nlong-running operation should document the metadata type, if any.", - "type": "object" - } - }, - "id": "GoogleLongrunningOperation", - "description": "This resource represents a long-running operation that is the result of a\nnetwork API call.", "type": "object" }, - "PropertyFilter": { - "description": "A filter on a specific property.", - "type": "object", + "ArrayValue": { + "description": "An array value.", + "id": "ArrayValue", "properties": { - "property": { - "description": "The property to filter by.", - "$ref": "PropertyReference" - }, - "op": { - "enum": [ - "OPERATOR_UNSPECIFIED", - "LESS_THAN", - "LESS_THAN_OR_EQUAL", - "GREATER_THAN", - "GREATER_THAN_OR_EQUAL", - "EQUAL", - "HAS_ANCESTOR" - ], - "description": "The operator to filter by.", - "type": "string", - "enumDescriptions": [ - "Unspecified. This value must not be used.", - "Less than.", - "Less than or equal.", - "Greater than.", - "Greater than or equal.", - "Equal.", - "Has ancestor." - ] - }, - "value": { - "description": "The value to compare the property to.", - "$ref": "Value" + "values": { + "description": "Values in the array.\nThe order of this array may not be preserved if it contains a mix of\nindexed and unindexed values.", + "items": { + "$ref": "Value" + }, + "type": "array" } }, - "id": "PropertyFilter" + "type": "object" + }, + "BeginTransactionRequest": { + "description": "The request for Datastore.BeginTransaction.", + "id": "BeginTransactionRequest", + "properties": { + "transactionOptions": { + "$ref": "TransactionOptions", + "description": "Options for a new transaction." + } + }, + "type": "object" + }, + "BeginTransactionResponse": { + "description": "The response for Datastore.BeginTransaction.", + "id": "BeginTransactionResponse", + "properties": { + "transaction": { + "description": "The transaction identifier (always present).", + "format": "byte", + "type": "string" + } + }, + "type": "object" + }, + "CommitRequest": { + "description": "The request for Datastore.Commit.", + "id": "CommitRequest", + "properties": { + "mode": { + "description": "The type of commit to perform. Defaults to `TRANSACTIONAL`.", + "enum": [ + "MODE_UNSPECIFIED", + "TRANSACTIONAL", + "NON_TRANSACTIONAL" + ], + "enumDescriptions": [ + "Unspecified. This value must not be used.", + "Transactional: The mutations are either all applied, or none are applied.\nLearn about transactions [here](https://cloud.google.com/datastore/docs/concepts/transactions).", + "Non-transactional: The mutations may not apply as all or none." + ], + "type": "string" + }, + "mutations": { + "description": "The mutations to perform.\n\nWhen mode is `TRANSACTIONAL`, mutations affecting a single entity are\napplied in order. The following sequences of mutations affecting a single\nentity are not permitted in a single `Commit` request:\n\n- `insert` followed by `insert`\n- `update` followed by `insert`\n- `upsert` followed by `insert`\n- `delete` followed by `update`\n\nWhen mode is `NON_TRANSACTIONAL`, no two mutations may affect a single\nentity.", + "items": { + "$ref": "Mutation" + }, + "type": "array" + }, + "transaction": { + "description": "The identifier of the transaction associated with the commit. A\ntransaction identifier is returned by a call to\nDatastore.BeginTransaction.", + "format": "byte", + "type": "string" + } + }, + "type": "object" }, "CommitResponse": { "description": "The response for Datastore.Commit.", - "type": "object", + "id": "CommitResponse", "properties": { "indexUpdates": { "description": "The number of index entries updated during the commit, or zero if none were\nupdated.", @@ -732,116 +611,295 @@ }, "mutationResults": { "description": "The result of performing the mutations.\nThe i-th mutation result corresponds to the i-th mutation in the request.", - "type": "array", "items": { "$ref": "MutationResult" - } + }, + "type": "array" } }, - "id": "CommitResponse" + "type": "object" }, - "PartitionId": { - "description": "A partition ID identifies a grouping of entities. The grouping is always\nby project and namespace, however the namespace ID may be empty.\n\nA partition ID contains several dimensions:\nproject ID and namespace ID.\n\nPartition dimensions:\n\n- May be `\"\"`.\n- Must be valid UTF-8 bytes.\n- Must have values that match regex `[A-Za-z\\d\\.\\-_]{1,100}`\nIf the value of any dimension matches regex `__.*__`, the partition is\nreserved/read-only.\nA reserved/read-only partition ID is forbidden in certain documented\ncontexts.\n\nForeign partition IDs (in which the project ID does\nnot match the context project ID ) are discouraged.\nReads and writes of foreign partition IDs may fail if the project is not in an active state.", - "type": "object", + "CompositeFilter": { + "description": "A filter that merges multiple other filters using the given operator.", + "id": "CompositeFilter", "properties": { - "namespaceId": { - "description": "If not empty, the ID of the namespace to which the entities belong.", - "type": "string" + "filters": { + "description": "The list of filters to combine.\nMust contain at least one filter.", + "items": { + "$ref": "Filter" + }, + "type": "array" }, - "projectId": { - "description": "The ID of the project to which the entities belong.", + "op": { + "description": "The operator for combining multiple filters.", + "enum": [ + "OPERATOR_UNSPECIFIED", + "AND" + ], + "enumDescriptions": [ + "Unspecified. This value must not be used.", + "The results are required to satisfy each of the combined filters." + ], "type": "string" } }, - "id": "PartitionId" + "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" }, "Entity": { "description": "A Datastore data object.\n\nAn entity is limited to 1 megabyte when stored. That _roughly_\ncorresponds to a limit of 1 megabyte for the serialized form of this\nmessage.", - "type": "object", + "id": "Entity", "properties": { "key": { - "description": "The entity's key.\n\nAn entity must have a key, unless otherwise documented (for example,\nan entity in `Value.entity_value` may have no key).\nAn entity's kind is its key path's last element's kind,\nor null if it has no key.", - "$ref": "Key" + "$ref": "Key", + "description": "The entity's key.\n\nAn entity must have a key, unless otherwise documented (for example,\nan entity in `Value.entity_value` may have no key).\nAn entity's kind is its key path's last element's kind,\nor null if it has no key." }, "properties": { - "description": "The entity's properties.\nThe map's keys are property names.\nA property name matching regex `__.*__` is reserved.\nA reserved property name is forbidden in certain documented contexts.\nThe name must not contain more than 500 characters.\nThe name cannot be `\"\"`.", - "type": "object", "additionalProperties": { "$ref": "Value" - } + }, + "description": "The entity's properties.\nThe map's keys are property names.\nA property name matching regex `__.*__` is reserved.\nA reserved property name is forbidden in certain documented contexts.\nThe name must not contain more than 500 characters.\nThe name cannot be `\"\"`.", + "type": "object" } }, - "id": "Entity" + "type": "object" }, - "QueryResultBatch": { - "description": "A batch of results produced by a query.", - "type": "object", + "EntityResult": { + "description": "The result of fetching an entity from Datastore.", + "id": "EntityResult", "properties": { - "entityResults": { - "description": "The results for this batch.", - "type": "array", - "items": { - "$ref": "EntityResult" - } - }, - "endCursor": { - "description": "A cursor that points to the position after the last result in the batch.", + "cursor": { + "description": "A cursor that points to the position after the result entity.\nSet only when the `EntityResult` is part of a `QueryResultBatch` message.", "format": "byte", "type": "string" }, - "moreResults": { - "enumDescriptions": [ - "Unspecified. This value is never used.", - "There may be additional batches to fetch from this query.", - "The query is finished, but there may be more results after the limit.", - "The query is finished, but there may be more results after the end\ncursor.", - "The query is finished, and there are no more results." - ], - "enum": [ - "MORE_RESULTS_TYPE_UNSPECIFIED", - "NOT_FINISHED", - "MORE_RESULTS_AFTER_LIMIT", - "MORE_RESULTS_AFTER_CURSOR", - "NO_MORE_RESULTS" - ], - "description": "The state of the query after the current batch.", - "type": "string" + "entity": { + "$ref": "Entity", + "description": "The resulting entity." }, - "snapshotVersion": { - "description": "The version number of the snapshot this batch was returned from.\nThis applies to the range of results from the query's `start_cursor` (or\nthe beginning of the query if no cursor was given) to this batch's\n`end_cursor` (not the query's `end_cursor`).\n\nIn a single transaction, subsequent query result batches for the same query\ncan have a greater snapshot version number. Each batch's snapshot version\nis valid for all preceding batches.\nThe value will be zero for eventually consistent queries.", + "version": { + "description": "The version of the entity, a strictly positive number that monotonically\nincreases with changes to the entity.\n\nThis field is set for `FULL` entity\nresults.\n\nFor missing entities in `LookupResponse`, this\nis the version of the snapshot that was used to look up the entity, and it\nis always set except for eventually consistent reads.", "format": "int64", "type": "string" - }, - "skippedCursor": { - "description": "A cursor that points to the position after the last skipped result.\nWill be set when `skipped_results` != 0.", - "format": "byte", - "type": "string" - }, - "skippedResults": { - "description": "The number of results skipped, typically because of an offset.", - "format": "int32", - "type": "integer" - }, - "entityResultType": { - "description": "The result type for every entity in `entity_results`.", - "type": "string", - "enumDescriptions": [ - "Unspecified. This value is never used.", - "The key and properties.", - "A projected subset of properties. The entity may have no key.", - "Only the key." - ], - "enum": [ - "RESULT_TYPE_UNSPECIFIED", - "FULL", - "PROJECTION", - "KEY_ONLY" - ] } }, - "id": "QueryResultBatch" + "type": "object" }, - "GoogleDatastoreAdminV1beta1Progress": { + "Filter": { + "description": "A holder for any type of filter.", + "id": "Filter", + "properties": { + "compositeFilter": { + "$ref": "CompositeFilter", + "description": "A composite filter." + }, + "propertyFilter": { + "$ref": "PropertyFilter", + "description": "A filter on a property." + } + }, + "type": "object" + }, + "GoogleDatastoreAdminV1CommonMetadata": { + "description": "Metadata common to all Datastore Admin operations.", + "id": "GoogleDatastoreAdminV1CommonMetadata", + "properties": { + "endTime": { + "description": "The time the operation ended, either successfully or otherwise.", + "format": "google-datetime", + "type": "string" + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "The client-assigned labels which were provided when the operation was\ncreated. May also include additional labels.", + "type": "object" + }, + "operationType": { + "description": "The type of the operation. Can be used as a filter in\nListOperationsRequest.", + "enum": [ + "OPERATION_TYPE_UNSPECIFIED", + "EXPORT_ENTITIES", + "IMPORT_ENTITIES" + ], + "enumDescriptions": [ + "Unspecified.", + "ExportEntities.", + "ImportEntities." + ], + "type": "string" + }, + "startTime": { + "description": "The time that work began on the operation.", + "format": "google-datetime", + "type": "string" + }, + "state": { + "description": "The current state of the Operation.", + "enum": [ + "STATE_UNSPECIFIED", + "INITIALIZING", + "PROCESSING", + "CANCELLING", + "FINALIZING", + "SUCCESSFUL", + "FAILED", + "CANCELLED" + ], + "enumDescriptions": [ + "Unspecified.", + "Request is being prepared for processing.", + "Request is actively being processed.", + "Request is in the process of being cancelled after user called\ngoogle.longrunning.Operations.CancelOperation on the operation.", + "Request has been processed and is in its finalization stage.", + "Request has completed successfully.", + "Request has finished being processed, but encountered an error.", + "Request has finished being cancelled after user called\ngoogle.longrunning.Operations.CancelOperation." + ], + "type": "string" + } + }, + "type": "object" + }, + "GoogleDatastoreAdminV1EntityFilter": { + "description": "Identifies a subset of entities in a project. This is specified as\ncombinations of kinds and namespaces (either or both of which may be all, as\ndescribed in the following examples).\nExample usage:\n\nEntire project:\n kinds=[], namespace_ids=[]\n\nKinds Foo and Bar in all namespaces:\n kinds=['Foo', 'Bar'], namespace_ids=[]\n\nKinds Foo and Bar only in the default namespace:\n kinds=['Foo', 'Bar'], namespace_ids=['']\n\nKinds Foo and Bar in both the default and Baz namespaces:\n kinds=['Foo', 'Bar'], namespace_ids=['', 'Baz']\n\nThe entire Baz namespace:\n kinds=[], namespace_ids=['Baz']", + "id": "GoogleDatastoreAdminV1EntityFilter", + "properties": { + "kinds": { + "description": "If empty, then this represents all kinds.", + "items": { + "type": "string" + }, + "type": "array" + }, + "namespaceIds": { + "description": "An empty list represents all namespaces. This is the preferred\nusage for projects that don't use namespaces.\n\nAn empty string element represents the default namespace. This should be\nused if the project has data in non-default namespaces, but doesn't want to\ninclude them.\nEach namespace in this list must be unique.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "GoogleDatastoreAdminV1ExportEntitiesMetadata": { + "description": "Metadata for ExportEntities operations.", + "id": "GoogleDatastoreAdminV1ExportEntitiesMetadata", + "properties": { + "common": { + "$ref": "GoogleDatastoreAdminV1CommonMetadata", + "description": "Metadata common to all Datastore Admin operations." + }, + "entityFilter": { + "$ref": "GoogleDatastoreAdminV1EntityFilter", + "description": "Description of which entities are being exported." + }, + "outputUrlPrefix": { + "description": "Location for the export metadata and data files. This will be the same\nvalue as the\ngoogle.datastore.admin.v1.ExportEntitiesRequest.output_url_prefix\nfield. The final output location is provided in\ngoogle.datastore.admin.v1.ExportEntitiesResponse.output_url.", + "type": "string" + }, + "progressBytes": { + "$ref": "GoogleDatastoreAdminV1Progress", + "description": "An estimate of the number of bytes processed." + }, + "progressEntities": { + "$ref": "GoogleDatastoreAdminV1Progress", + "description": "An estimate of the number of entities processed." + } + }, + "type": "object" + }, + "GoogleDatastoreAdminV1ExportEntitiesRequest": { + "description": "The request for\ngoogle.datastore.admin.v1.DatastoreAdmin.ExportEntities.", + "id": "GoogleDatastoreAdminV1ExportEntitiesRequest", + "properties": { + "entityFilter": { + "$ref": "GoogleDatastoreAdminV1EntityFilter", + "description": "Description of what data from the project is included in the export." + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Client-assigned labels.", + "type": "object" + }, + "outputUrlPrefix": { + "description": "Location for the export metadata and data files.\n\nThe full resource URL of the external storage location. Currently, only\nGoogle Cloud Storage is supported. So output_url_prefix should be of the\nform: `gs://BUCKET_NAME[/NAMESPACE_PATH]`, where `BUCKET_NAME` is the\nname of the Cloud Storage bucket and `NAMESPACE_PATH` is an optional Cloud\nStorage namespace path (this is not a Cloud Datastore namespace). For more\ninformation about Cloud Storage namespace paths, see\n[Object name\nconsiderations](https://cloud.google.com/storage/docs/naming#object-considerations).\n\nThe resulting files will be nested deeper than the specified URL prefix.\nThe final output URL will be provided in the\ngoogle.datastore.admin.v1.ExportEntitiesResponse.output_url field. That\nvalue should be used for subsequent ImportEntities operations.\n\nBy nesting the data files deeper, the same Cloud Storage bucket can be used\nin multiple ExportEntities operations without conflict.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleDatastoreAdminV1ExportEntitiesResponse": { + "description": "The response for\ngoogle.datastore.admin.v1.DatastoreAdmin.ExportEntities.", + "id": "GoogleDatastoreAdminV1ExportEntitiesResponse", + "properties": { + "outputUrl": { + "description": "Location of the output metadata file. This can be used to begin an import\ninto Cloud Datastore (this project or another project). See\ngoogle.datastore.admin.v1.ImportEntitiesRequest.input_url.\nOnly present if the operation completed successfully.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleDatastoreAdminV1ImportEntitiesMetadata": { + "description": "Metadata for ImportEntities operations.", + "id": "GoogleDatastoreAdminV1ImportEntitiesMetadata", + "properties": { + "common": { + "$ref": "GoogleDatastoreAdminV1CommonMetadata", + "description": "Metadata common to all Datastore Admin operations." + }, + "entityFilter": { + "$ref": "GoogleDatastoreAdminV1EntityFilter", + "description": "Description of which entities are being imported." + }, + "inputUrl": { + "description": "The location of the import metadata file. This will be the same value as\nthe google.datastore.admin.v1.ExportEntitiesResponse.output_url field.", + "type": "string" + }, + "progressBytes": { + "$ref": "GoogleDatastoreAdminV1Progress", + "description": "An estimate of the number of bytes processed." + }, + "progressEntities": { + "$ref": "GoogleDatastoreAdminV1Progress", + "description": "An estimate of the number of entities processed." + } + }, + "type": "object" + }, + "GoogleDatastoreAdminV1ImportEntitiesRequest": { + "description": "The request for\ngoogle.datastore.admin.v1.DatastoreAdmin.ImportEntities.", + "id": "GoogleDatastoreAdminV1ImportEntitiesRequest", + "properties": { + "entityFilter": { + "$ref": "GoogleDatastoreAdminV1EntityFilter", + "description": "Optionally specify which kinds/namespaces are to be imported. If provided,\nthe list must be a subset of the EntityFilter used in creating the export,\notherwise a FAILED_PRECONDITION error will be returned. If no filter is\nspecified then all entities from the export are imported." + }, + "inputUrl": { + "description": "The full resource URL of the external storage location. Currently, only\nGoogle Cloud Storage is supported. So input_url should be of the form:\n`gs://BUCKET_NAME[/NAMESPACE_PATH]/OVERALL_EXPORT_METADATA_FILE`, where\n`BUCKET_NAME` is the name of the Cloud Storage bucket, `NAMESPACE_PATH` is\nan optional Cloud Storage namespace path (this is not a Cloud Datastore\nnamespace), and `OVERALL_EXPORT_METADATA_FILE` is the metadata file written\nby the ExportEntities operation. For more information about Cloud Storage\nnamespace paths, see\n[Object name\nconsiderations](https://cloud.google.com/storage/docs/naming#object-considerations).\n\nFor more information, see\ngoogle.datastore.admin.v1.ExportEntitiesResponse.output_url.", + "type": "string" + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Client-assigned labels.", + "type": "object" + } + }, + "type": "object" + }, + "GoogleDatastoreAdminV1Progress": { + "description": "Measures the progress of a particular metric.", + "id": "GoogleDatastoreAdminV1Progress", "properties": { "workCompleted": { "description": "The amount of work that has been completed. Note that this may be greater\nthan work_estimated.", @@ -854,254 +912,45 @@ "type": "string" } }, - "id": "GoogleDatastoreAdminV1beta1Progress", - "description": "Measures the progress of a particular metric.", "type": "object" }, - "PathElement": { - "description": "A (kind, ID/name) pair used to construct a key path.\n\nIf either name or ID is set, the element is complete.\nIf neither is set, the element is incomplete.", - "type": "object", - "properties": { - "id": { - "description": "The auto-allocated ID of the entity.\nNever equal to zero. Values less than zero are discouraged and may not\nbe supported in the future.", - "format": "int64", - "type": "string" - }, - "name": { - "description": "The name of the entity.\nA name matching regex `__.*__` is reserved/read-only.\nA name must not be more than 1500 bytes when UTF-8 encoded.\nCannot be `\"\"`.", - "type": "string" - }, - "kind": { - "description": "The kind of the entity.\nA kind matching regex `__.*__` is reserved/read-only.\nA kind must not contain more than 1500 bytes when UTF-8 encoded.\nCannot be `\"\"`.", - "type": "string" - } - }, - "id": "PathElement" - }, - "GqlQueryParameter": { - "description": "A binding parameter for a GQL query.", - "type": "object", - "properties": { - "cursor": { - "description": "A query cursor. Query cursors are returned in query\nresult batches.", - "format": "byte", - "type": "string" - }, - "value": { - "$ref": "Value", - "description": "A value parameter." - } - }, - "id": "GqlQueryParameter" - }, - "GoogleLongrunningListOperationsResponse": { - "description": "The response message for Operations.ListOperations.", - "type": "object", - "properties": { - "operations": { - "description": "A list of operations that matches the specified filter in the request.", - "type": "array", - "items": { - "$ref": "GoogleLongrunningOperation" - } - }, - "nextPageToken": { - "description": "The standard List next-page token.", - "type": "string" - } - }, - "id": "GoogleLongrunningListOperationsResponse" - }, - "BeginTransactionResponse": { - "description": "The response for Datastore.BeginTransaction.", - "type": "object", - "properties": { - "transaction": { - "description": "The transaction identifier (always present).", - "format": "byte", - "type": "string" - } - }, - "id": "BeginTransactionResponse" - }, - "LookupResponse": { - "description": "The response for Datastore.Lookup.", - "type": "object", - "properties": { - "found": { - "description": "Entities found as `ResultType.FULL` entities. The order of results in this\nfield is undefined and has no relation to the order of the keys in the\ninput.", - "type": "array", - "items": { - "$ref": "EntityResult" - } - }, - "missing": { - "description": "Entities not found as `ResultType.KEY_ONLY` entities. The order of results\nin this field is undefined and has no relation to the order of the keys\nin the input.", - "type": "array", - "items": { - "$ref": "EntityResult" - } - }, - "deferred": { - "description": "A list of keys that were not looked up due to resource constraints. The\norder of results in this field is undefined and has no relation to the\norder of the keys in the input.", - "type": "array", - "items": { - "$ref": "Key" - } - } - }, - "id": "LookupResponse" - }, - "RunQueryResponse": { - "description": "The response for Datastore.RunQuery.", - "type": "object", - "properties": { - "query": { - "$ref": "Query", - "description": "The parsed form of the `GqlQuery` from the request, if it was set." - }, - "batch": { - "$ref": "QueryResultBatch", - "description": "A batch of query results (always present)." - } - }, - "id": "RunQueryResponse" - }, - "AllocateIdsRequest": { - "description": "The request for Datastore.AllocateIds.", - "type": "object", - "properties": { - "keys": { - "description": "A list of keys with incomplete key paths for which to allocate IDs.\nNo key may be reserved/read-only.", - "type": "array", - "items": { - "$ref": "Key" - } - } - }, - "id": "AllocateIdsRequest" - }, - "BeginTransactionRequest": { - "description": "The request for Datastore.BeginTransaction.", - "type": "object", - "properties": { - "transactionOptions": { - "description": "Options for a new transaction.", - "$ref": "TransactionOptions" - } - }, - "id": "BeginTransactionRequest" - }, - "CommitRequest": { - "description": "The request for Datastore.Commit.", - "type": "object", - "properties": { - "transaction": { - "description": "The identifier of the transaction associated with the commit. A\ntransaction identifier is returned by a call to\nDatastore.BeginTransaction.", - "format": "byte", - "type": "string" - }, - "mode": { - "enumDescriptions": [ - "Unspecified. This value must not be used.", - "Transactional: The mutations are either all applied, or none are applied.\nLearn about transactions [here](https://cloud.google.com/datastore/docs/concepts/transactions).", - "Non-transactional: The mutations may not apply as all or none." - ], - "enum": [ - "MODE_UNSPECIFIED", - "TRANSACTIONAL", - "NON_TRANSACTIONAL" - ], - "description": "The type of commit to perform. Defaults to `TRANSACTIONAL`.", - "type": "string" - }, - "mutations": { - "description": "The mutations to perform.\n\nWhen mode is `TRANSACTIONAL`, mutations affecting a single entity are\napplied in order. The following sequences of mutations affecting a single\nentity are not permitted in a single `Commit` request:\n\n- `insert` followed by `insert`\n- `update` followed by `insert`\n- `upsert` followed by `insert`\n- `delete` followed by `update`\n\nWhen mode is `NON_TRANSACTIONAL`, no two mutations may affect a single\nentity.", - "type": "array", - "items": { - "$ref": "Mutation" - } - } - }, - "id": "CommitRequest" - }, - "KindExpression": { - "properties": { - "name": { - "description": "The name of the kind.", - "type": "string" - } - }, - "id": "KindExpression", - "description": "A representation of a kind.", - "type": "object" - }, - "LatLng": { - "properties": { - "latitude": { - "description": "The latitude in degrees. It must be in the range [-90.0, +90.0].", - "format": "double", - "type": "number" - }, - "longitude": { - "description": "The longitude in degrees. It must be in the range [-180.0, +180.0].", - "format": "double", - "type": "number" - } - }, - "id": "LatLng", - "description": "An object representing a latitude/longitude pair. This is expressed as a pair\nof doubles representing degrees latitude and degrees longitude. Unless\nspecified otherwise, this must conform to the\n\u003ca href=\"http://www.unoosa.org/pdf/icg/2012/template/WGS_84.pdf\"\u003eWGS84\nstandard\u003c/a\u003e. Values must be within normalized ranges.", - "type": "object" - }, - "Key": { - "description": "A unique identifier for an entity.\nIf a key's partition ID or any of its path kinds or names are\nreserved/read-only, the key is reserved/read-only.\nA reserved/read-only key is forbidden in certain documented contexts.", - "type": "object", - "properties": { - "partitionId": { - "description": "Entities are partitioned into subsets, currently identified by a project\nID and namespace ID.\nQueries are scoped to a single partition.", - "$ref": "PartitionId" - }, - "path": { - "description": "The entity path.\nAn entity path consists of one or more elements composed of a kind and a\nstring or numerical identifier, which identify entities. The first\nelement identifies a _root entity_, the second element identifies\na _child_ of the root entity, the third element identifies a child of the\nsecond entity, and so forth. The entities identified by all prefixes of\nthe path are called the element's _ancestors_.\n\nAn entity path is always fully complete: *all* of the entity's ancestors\nare required to be in the path along with the entity identifier itself.\nThe only exception is that in some documented cases, the identifier in the\nlast path element (for the entity) itself may be omitted. For example,\nthe last path element of the key of `Mutation.insert` may have no\nidentifier.\n\nA path can never be empty, and a path can have at most 100 elements.", - "type": "array", - "items": { - "$ref": "PathElement" - } - } - }, - "id": "Key" - }, "GoogleDatastoreAdminV1beta1CommonMetadata": { "description": "Metadata common to all Datastore Admin operations.", - "type": "object", + "id": "GoogleDatastoreAdminV1beta1CommonMetadata", "properties": { - "labels": { - "description": "The client-assigned labels which were provided when the operation was\ncreated. May also include additional labels.", - "type": "object", - "additionalProperties": { - "type": "string" - } - }, "endTime": { "description": "The time the operation ended, either successfully or otherwise.", "format": "google-datetime", "type": "string" }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "The client-assigned labels which were provided when the operation was\ncreated. May also include additional labels.", + "type": "object" + }, "operationType": { - "enumDescriptions": [ - "Unspecified.", - "ExportEntities.", - "ImportEntities." - ], + "description": "The type of the operation. Can be used as a filter in\nListOperationsRequest.", "enum": [ "OPERATION_TYPE_UNSPECIFIED", "EXPORT_ENTITIES", "IMPORT_ENTITIES" ], - "description": "The type of the operation. Can be used as a filter in\nListOperationsRequest.", + "enumDescriptions": [ + "Unspecified.", + "ExportEntities.", + "ImportEntities." + ], + "type": "string" + }, + "startTime": { + "description": "The time that work began on the operation.", + "format": "google-datetime", "type": "string" }, "state": { + "description": "The current state of the Operation.", "enum": [ "STATE_UNSPECIFIED", "INITIALIZING", @@ -1112,8 +961,6 @@ "FAILED", "CANCELLED" ], - "description": "The current state of the Operation.", - "type": "string", "enumDescriptions": [ "Unspecified.", "Request is being prepared for processing.", @@ -1123,49 +970,172 @@ "Request has completed successfully.", "Request has finished being processed, but encountered an error.", "Request has finished being cancelled after user called\ngoogle.longrunning.Operations.CancelOperation." - ] - }, - "startTime": { - "description": "The time that work began on the operation.", - "format": "google-datetime", + ], "type": "string" } }, - "id": "GoogleDatastoreAdminV1beta1CommonMetadata" + "type": "object" }, - "ArrayValue": { - "description": "An array value.", - "type": "object", + "GoogleDatastoreAdminV1beta1EntityFilter": { + "description": "Identifies a subset of entities in a project. This is specified as\ncombinations of kinds and namespaces (either or both of which may be all, as\ndescribed in the following examples).\nExample usage:\n\nEntire project:\n kinds=[], namespace_ids=[]\n\nKinds Foo and Bar in all namespaces:\n kinds=['Foo', 'Bar'], namespace_ids=[]\n\nKinds Foo and Bar only in the default namespace:\n kinds=['Foo', 'Bar'], namespace_ids=['']\n\nKinds Foo and Bar in both the default and Baz namespaces:\n kinds=['Foo', 'Bar'], namespace_ids=['', 'Baz']\n\nThe entire Baz namespace:\n kinds=[], namespace_ids=['Baz']", + "id": "GoogleDatastoreAdminV1beta1EntityFilter", "properties": { - "values": { - "description": "Values in the array.\nThe order of this array may not be preserved if it contains a mix of\nindexed and unindexed values.", - "type": "array", + "kinds": { + "description": "If empty, then this represents all kinds.", "items": { - "$ref": "Value" - } + "type": "string" + }, + "type": "array" + }, + "namespaceIds": { + "description": "An empty list represents all namespaces. This is the preferred\nusage for projects that don't use namespaces.\n\nAn empty string element represents the default namespace. This should be\nused if the project has data in non-default namespaces, but doesn't want to\ninclude them.\nEach namespace in this list must be unique.", + "items": { + "type": "string" + }, + "type": "array" } }, - "id": "ArrayValue" + "type": "object" + }, + "GoogleDatastoreAdminV1beta1ExportEntitiesMetadata": { + "description": "Metadata for ExportEntities operations.", + "id": "GoogleDatastoreAdminV1beta1ExportEntitiesMetadata", + "properties": { + "common": { + "$ref": "GoogleDatastoreAdminV1beta1CommonMetadata", + "description": "Metadata common to all Datastore Admin operations." + }, + "entityFilter": { + "$ref": "GoogleDatastoreAdminV1beta1EntityFilter", + "description": "Description of which entities are being exported." + }, + "outputUrlPrefix": { + "description": "Location for the export metadata and data files. This will be the same\nvalue as the\ngoogle.datastore.admin.v1beta1.ExportEntitiesRequest.output_url_prefix\nfield. The final output location is provided in\ngoogle.datastore.admin.v1beta1.ExportEntitiesResponse.output_url.", + "type": "string" + }, + "progressBytes": { + "$ref": "GoogleDatastoreAdminV1beta1Progress", + "description": "An estimate of the number of bytes processed." + }, + "progressEntities": { + "$ref": "GoogleDatastoreAdminV1beta1Progress", + "description": "An estimate of the number of entities processed." + } + }, + "type": "object" }, "GoogleDatastoreAdminV1beta1ExportEntitiesResponse": { "description": "The response for\ngoogle.datastore.admin.v1beta1.DatastoreAdmin.ExportEntities.", - "type": "object", + "id": "GoogleDatastoreAdminV1beta1ExportEntitiesResponse", "properties": { "outputUrl": { "description": "Location of the output metadata file. This can be used to begin an import\ninto Cloud Datastore (this project or another project). See\ngoogle.datastore.admin.v1beta1.ImportEntitiesRequest.input_url.\nOnly present if the operation completed successfully.", "type": "string" } }, - "id": "GoogleDatastoreAdminV1beta1ExportEntitiesResponse" + "type": "object" + }, + "GoogleDatastoreAdminV1beta1ImportEntitiesMetadata": { + "description": "Metadata for ImportEntities operations.", + "id": "GoogleDatastoreAdminV1beta1ImportEntitiesMetadata", + "properties": { + "common": { + "$ref": "GoogleDatastoreAdminV1beta1CommonMetadata", + "description": "Metadata common to all Datastore Admin operations." + }, + "entityFilter": { + "$ref": "GoogleDatastoreAdminV1beta1EntityFilter", + "description": "Description of which entities are being imported." + }, + "inputUrl": { + "description": "The location of the import metadata file. This will be the same value as\nthe google.datastore.admin.v1beta1.ExportEntitiesResponse.output_url\nfield.", + "type": "string" + }, + "progressBytes": { + "$ref": "GoogleDatastoreAdminV1beta1Progress", + "description": "An estimate of the number of bytes processed." + }, + "progressEntities": { + "$ref": "GoogleDatastoreAdminV1beta1Progress", + "description": "An estimate of the number of entities processed." + } + }, + "type": "object" + }, + "GoogleDatastoreAdminV1beta1Progress": { + "description": "Measures the progress of a particular metric.", + "id": "GoogleDatastoreAdminV1beta1Progress", + "properties": { + "workCompleted": { + "description": "The amount of work that has been completed. Note that this may be greater\nthan work_estimated.", + "format": "int64", + "type": "string" + }, + "workEstimated": { + "description": "An estimate of how much work needs to be performed. May be zero if the\nwork estimate is unavailable.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "GoogleLongrunningListOperationsResponse": { + "description": "The response message for Operations.ListOperations.", + "id": "GoogleLongrunningListOperationsResponse", + "properties": { + "nextPageToken": { + "description": "The standard List next-page token.", + "type": "string" + }, + "operations": { + "description": "A list of operations that matches the specified filter in the request.", + "items": { + "$ref": "GoogleLongrunningOperation" + }, + "type": "array" + } + }, + "type": "object" + }, + "GoogleLongrunningOperation": { + "description": "This resource represents a long-running operation that is the result of a\nnetwork API call.", + "id": "GoogleLongrunningOperation", + "properties": { + "done": { + "description": "If the value is `false`, it means the operation is still in progress.\nIf `true`, the operation is completed, and either `error` or `response` is\navailable.", + "type": "boolean" + }, + "error": { + "$ref": "Status", + "description": "The error result of the operation in case of failure or cancellation." + }, + "metadata": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "description": "Service-specific metadata associated with the operation. It typically\ncontains progress information and common metadata such as create time.\nSome services might not provide such metadata. Any method that returns a\nlong-running operation should document the metadata type, if any.", + "type": "object" + }, + "name": { + "description": "The server-assigned name, which is only unique within the same service that\noriginally returns it. If you use the default HTTP mapping, the\n`name` should have the format of `operations/some/unique/name`.", + "type": "string" + }, + "response": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "description": "The normal response of the operation in case of success. If the original\nmethod returns no data on success, such as `Delete`, the response is\n`google.protobuf.Empty`. If the original method is standard\n`Get`/`Create`/`Update`, the response should be the resource. For other\nmethods, the response should have the type `XxxResponse`, where `Xxx`\nis the original method name. For example, if the original method name\nis `TakeSnapshot()`, the inferred response type is\n`TakeSnapshotResponse`.", + "type": "object" + } + }, + "type": "object" }, "GqlQuery": { "description": "A [GQL query](https://cloud.google.com/datastore/docs/apis/gql/gql_reference).", - "type": "object", + "id": "GqlQuery", "properties": { - "queryString": { - "description": "A string of the format described\n[here](https://cloud.google.com/datastore/docs/apis/gql/gql_reference).", - "type": "string" - }, "allowLiterals": { "description": "When false, the query string must not contain any literals and instead must\nbind all values. For example,\n`SELECT * FROM Kind WHERE a = 'string literal'` is not allowed, while\n`SELECT * FROM Kind WHERE a = @value` is.", "type": "boolean" @@ -1179,259 +1149,455 @@ }, "positionalBindings": { "description": "Numbered binding site @1 references the first numbered parameter,\neffectively using 1-based indexing, rather than the usual 0.\n\nFor each binding site numbered i in `query_string`, there must be an i-th\nnumbered parameter. The inverse must also be true.", - "type": "array", "items": { "$ref": "GqlQueryParameter" - } - } - }, - "id": "GqlQuery" - }, - "Filter": { - "properties": { - "compositeFilter": { - "$ref": "CompositeFilter", - "description": "A composite filter." + }, + "type": "array" }, - "propertyFilter": { - "$ref": "PropertyFilter", - "description": "A filter on a property." + "queryString": { + "description": "A string of the format described\n[here](https://cloud.google.com/datastore/docs/apis/gql/gql_reference).", + "type": "string" } }, - "id": "Filter", - "description": "A holder for any type of filter.", "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 `{}`.", - "type": "object", - "properties": {}, - "id": "Empty" - }, - "RunQueryRequest": { + "GqlQueryParameter": { + "description": "A binding parameter for a GQL query.", + "id": "GqlQueryParameter", "properties": { - "readOptions": { - "$ref": "ReadOptions", - "description": "The options for this query." - }, - "query": { - "$ref": "Query", - "description": "The query to run." - }, - "partitionId": { - "$ref": "PartitionId", - "description": "Entities are partitioned into subsets, identified by a partition ID.\nQueries are scoped to a single partition.\nThis partition ID is normalized with the standard default context\npartition ID." - }, - "gqlQuery": { - "$ref": "GqlQuery", - "description": "The GQL query to run." - } - }, - "id": "RunQueryRequest", - "description": "The request for Datastore.RunQuery.", - "type": "object" - }, - "TransactionOptions": { - "properties": { - "readWrite": { - "$ref": "ReadWrite", - "description": "The transaction should allow both reads and writes." - }, - "readOnly": { - "description": "The transaction should only allow reads.", - "$ref": "ReadOnly" - } - }, - "id": "TransactionOptions", - "description": "Options for beginning a new transaction.\n\nTransactions can be created explicitly with calls to\nDatastore.BeginTransaction or implicitly by setting\nReadOptions.new_transaction in read requests.", - "type": "object" - }, - "GoogleDatastoreAdminV1beta1ImportEntitiesMetadata": { - "description": "Metadata for ImportEntities operations.", - "type": "object", - "properties": { - "common": { - "description": "Metadata common to all Datastore Admin operations.", - "$ref": "GoogleDatastoreAdminV1beta1CommonMetadata" - }, - "progressBytes": { - "description": "An estimate of the number of bytes processed.", - "$ref": "GoogleDatastoreAdminV1beta1Progress" - }, - "inputUrl": { - "description": "The location of the import metadata file. This will be the same value as\nthe google.datastore.admin.v1beta1.ExportEntitiesResponse.output_url\nfield.", + "cursor": { + "description": "A query cursor. Query cursors are returned in query\nresult batches.", + "format": "byte", "type": "string" }, - "entityFilter": { - "description": "Description of which entities are being imported.", - "$ref": "GoogleDatastoreAdminV1beta1EntityFilter" - }, - "progressEntities": { - "description": "An estimate of the number of entities processed.", - "$ref": "GoogleDatastoreAdminV1beta1Progress" + "value": { + "$ref": "Value", + "description": "A value parameter." } }, - "id": "GoogleDatastoreAdminV1beta1ImportEntitiesMetadata" + "type": "object" + }, + "Key": { + "description": "A unique identifier for an entity.\nIf a key's partition ID or any of its path kinds or names are\nreserved/read-only, the key is reserved/read-only.\nA reserved/read-only key is forbidden in certain documented contexts.", + "id": "Key", + "properties": { + "partitionId": { + "$ref": "PartitionId", + "description": "Entities are partitioned into subsets, currently identified by a project\nID and namespace ID.\nQueries are scoped to a single partition." + }, + "path": { + "description": "The entity path.\nAn entity path consists of one or more elements composed of a kind and a\nstring or numerical identifier, which identify entities. The first\nelement identifies a _root entity_, the second element identifies\na _child_ of the root entity, the third element identifies a child of the\nsecond entity, and so forth. The entities identified by all prefixes of\nthe path are called the element's _ancestors_.\n\nAn entity path is always fully complete: *all* of the entity's ancestors\nare required to be in the path along with the entity identifier itself.\nThe only exception is that in some documented cases, the identifier in the\nlast path element (for the entity) itself may be omitted. For example,\nthe last path element of the key of `Mutation.insert` may have no\nidentifier.\n\nA path can never be empty, and a path can have at most 100 elements.", + "items": { + "$ref": "PathElement" + }, + "type": "array" + } + }, + "type": "object" + }, + "KindExpression": { + "description": "A representation of a kind.", + "id": "KindExpression", + "properties": { + "name": { + "description": "The name of the kind.", + "type": "string" + } + }, + "type": "object" + }, + "LatLng": { + "description": "An object representing a latitude/longitude pair. This is expressed as a pair\nof doubles representing degrees latitude and degrees longitude. Unless\nspecified otherwise, this must conform to the\n\u003ca href=\"http://www.unoosa.org/pdf/icg/2012/template/WGS_84.pdf\"\u003eWGS84\nstandard\u003c/a\u003e. Values must be within normalized ranges.", + "id": "LatLng", + "properties": { + "latitude": { + "description": "The latitude in degrees. It must be in the range [-90.0, +90.0].", + "format": "double", + "type": "number" + }, + "longitude": { + "description": "The longitude in degrees. It must be in the range [-180.0, +180.0].", + "format": "double", + "type": "number" + } + }, + "type": "object" + }, + "LookupRequest": { + "description": "The request for Datastore.Lookup.", + "id": "LookupRequest", + "properties": { + "keys": { + "description": "Keys of entities to look up.", + "items": { + "$ref": "Key" + }, + "type": "array" + }, + "readOptions": { + "$ref": "ReadOptions", + "description": "The options for this lookup request." + } + }, + "type": "object" + }, + "LookupResponse": { + "description": "The response for Datastore.Lookup.", + "id": "LookupResponse", + "properties": { + "deferred": { + "description": "A list of keys that were not looked up due to resource constraints. The\norder of results in this field is undefined and has no relation to the\norder of the keys in the input.", + "items": { + "$ref": "Key" + }, + "type": "array" + }, + "found": { + "description": "Entities found as `ResultType.FULL` entities. The order of results in this\nfield is undefined and has no relation to the order of the keys in the\ninput.", + "items": { + "$ref": "EntityResult" + }, + "type": "array" + }, + "missing": { + "description": "Entities not found as `ResultType.KEY_ONLY` entities. The order of results\nin this field is undefined and has no relation to the order of the keys\nin the input.", + "items": { + "$ref": "EntityResult" + }, + "type": "array" + } + }, + "type": "object" + }, + "Mutation": { + "description": "A mutation to apply to an entity.", + "id": "Mutation", + "properties": { + "baseVersion": { + "description": "The version of the entity that this mutation is being applied to. If this\ndoes not match the current version on the server, the mutation conflicts.", + "format": "int64", + "type": "string" + }, + "delete": { + "$ref": "Key", + "description": "The key of the entity to delete. The entity may or may not already exist.\nMust have a complete key path and must not be reserved/read-only." + }, + "insert": { + "$ref": "Entity", + "description": "The entity to insert. The entity must not already exist.\nThe entity key's final path element may be incomplete." + }, + "update": { + "$ref": "Entity", + "description": "The entity to update. The entity must already exist.\nMust have a complete key path." + }, + "upsert": { + "$ref": "Entity", + "description": "The entity to upsert. The entity may or may not already exist.\nThe entity key's final path element may be incomplete." + } + }, + "type": "object" + }, + "MutationResult": { + "description": "The result of applying a mutation.", + "id": "MutationResult", + "properties": { + "conflictDetected": { + "description": "Whether a conflict was detected for this mutation. Always false when a\nconflict detection strategy field is not set in the mutation.", + "type": "boolean" + }, + "key": { + "$ref": "Key", + "description": "The automatically allocated key.\nSet only when the mutation allocated a key." + }, + "version": { + "description": "The version of the entity on the server after processing the mutation. If\nthe mutation doesn't change anything on the server, then the version will\nbe the version of the current entity or, if no entity is present, a version\nthat is strictly greater than the version of any previous entity and less\nthan the version of any possible future entity.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "PartitionId": { + "description": "A partition ID identifies a grouping of entities. The grouping is always\nby project and namespace, however the namespace ID may be empty.\n\nA partition ID contains several dimensions:\nproject ID and namespace ID.\n\nPartition dimensions:\n\n- May be `\"\"`.\n- Must be valid UTF-8 bytes.\n- Must have values that match regex `[A-Za-z\\d\\.\\-_]{1,100}`\nIf the value of any dimension matches regex `__.*__`, the partition is\nreserved/read-only.\nA reserved/read-only partition ID is forbidden in certain documented\ncontexts.\n\nForeign partition IDs (in which the project ID does\nnot match the context project ID ) are discouraged.\nReads and writes of foreign partition IDs may fail if the project is not in an active state.", + "id": "PartitionId", + "properties": { + "namespaceId": { + "description": "If not empty, the ID of the namespace to which the entities belong.", + "type": "string" + }, + "projectId": { + "description": "The ID of the project to which the entities belong.", + "type": "string" + } + }, + "type": "object" + }, + "PathElement": { + "description": "A (kind, ID/name) pair used to construct a key path.\n\nIf either name or ID is set, the element is complete.\nIf neither is set, the element is incomplete.", + "id": "PathElement", + "properties": { + "id": { + "description": "The auto-allocated ID of the entity.\nNever equal to zero. Values less than zero are discouraged and may not\nbe supported in the future.", + "format": "int64", + "type": "string" + }, + "kind": { + "description": "The kind of the entity.\nA kind matching regex `__.*__` is reserved/read-only.\nA kind must not contain more than 1500 bytes when UTF-8 encoded.\nCannot be `\"\"`.", + "type": "string" + }, + "name": { + "description": "The name of the entity.\nA name matching regex `__.*__` is reserved/read-only.\nA name must not be more than 1500 bytes when UTF-8 encoded.\nCannot be `\"\"`.", + "type": "string" + } + }, + "type": "object" + }, + "Projection": { + "description": "A representation of a property in a projection.", + "id": "Projection", + "properties": { + "property": { + "$ref": "PropertyReference", + "description": "The property to project." + } + }, + "type": "object" + }, + "PropertyFilter": { + "description": "A filter on a specific property.", + "id": "PropertyFilter", + "properties": { + "op": { + "description": "The operator to filter by.", + "enum": [ + "OPERATOR_UNSPECIFIED", + "LESS_THAN", + "LESS_THAN_OR_EQUAL", + "GREATER_THAN", + "GREATER_THAN_OR_EQUAL", + "EQUAL", + "HAS_ANCESTOR" + ], + "enumDescriptions": [ + "Unspecified. This value must not be used.", + "Less than.", + "Less than or equal.", + "Greater than.", + "Greater than or equal.", + "Equal.", + "Has ancestor." + ], + "type": "string" + }, + "property": { + "$ref": "PropertyReference", + "description": "The property to filter by." + }, + "value": { + "$ref": "Value", + "description": "The value to compare the property to." + } + }, + "type": "object" + }, + "PropertyOrder": { + "description": "The desired order for a specific property.", + "id": "PropertyOrder", + "properties": { + "direction": { + "description": "The direction to order by. Defaults to `ASCENDING`.", + "enum": [ + "DIRECTION_UNSPECIFIED", + "ASCENDING", + "DESCENDING" + ], + "enumDescriptions": [ + "Unspecified. This value must not be used.", + "Ascending.", + "Descending." + ], + "type": "string" + }, + "property": { + "$ref": "PropertyReference", + "description": "The property to order by." + } + }, + "type": "object" + }, + "PropertyReference": { + "description": "A reference to a property relative to the kind expressions.", + "id": "PropertyReference", + "properties": { + "name": { + "description": "The name of the property.\nIf name includes \".\"s, it may be interpreted as a property name path.", + "type": "string" + } + }, + "type": "object" }, "Query": { + "description": "A query for entities.", + "id": "Query", "properties": { + "distinctOn": { + "description": "The properties to make distinct. The query results will contain the first\nresult for each distinct combination of values for the given properties\n(if empty, all results are returned).", + "items": { + "$ref": "PropertyReference" + }, + "type": "array" + }, "endCursor": { "description": "An ending point for the query results. Query cursors are\nreturned in query result batches and\n[can only be used to limit the same query](https://cloud.google.com/datastore/docs/concepts/queries#cursors_limits_and_offsets).", "format": "byte", "type": "string" }, + "filter": { + "$ref": "Filter", + "description": "The filter to apply." + }, + "kind": { + "description": "The kinds to query (if empty, returns entities of all kinds).\nCurrently at most 1 kind may be specified.", + "items": { + "$ref": "KindExpression" + }, + "type": "array" + }, "limit": { "description": "The maximum number of results to return. Applies after all other\nconstraints. Optional.\nUnspecified is interpreted as no limit.\nMust be \u003e= 0 if specified.", "format": "int32", "type": "integer" }, - "filter": { - "$ref": "Filter", - "description": "The filter to apply." - }, "offset": { "description": "The number of results to skip. Applies before limit, but after all other\nconstraints. Optional. Must be \u003e= 0 if specified.", "format": "int32", "type": "integer" }, + "order": { + "description": "The order to apply to the query results (if empty, order is unspecified).", + "items": { + "$ref": "PropertyOrder" + }, + "type": "array" + }, + "projection": { + "description": "The projection to return. Defaults to returning all properties.", + "items": { + "$ref": "Projection" + }, + "type": "array" + }, "startCursor": { "description": "A starting point for the query results. Query cursors are\nreturned in query result batches and\n[can only be used to continue the same query](https://cloud.google.com/datastore/docs/concepts/queries#cursors_limits_and_offsets).", "format": "byte", "type": "string" - }, - "kind": { - "description": "The kinds to query (if empty, returns entities of all kinds).\nCurrently at most 1 kind may be specified.", - "type": "array", - "items": { - "$ref": "KindExpression" - } - }, - "distinctOn": { - "description": "The properties to make distinct. The query results will contain the first\nresult for each distinct combination of values for the given properties\n(if empty, all results are returned).", - "type": "array", - "items": { - "$ref": "PropertyReference" - } - }, - "order": { - "description": "The order to apply to the query results (if empty, order is unspecified).", - "type": "array", - "items": { - "$ref": "PropertyOrder" - } - }, - "projection": { - "description": "The projection to return. Defaults to returning all properties.", - "type": "array", - "items": { - "$ref": "Projection" - } } }, - "id": "Query", - "description": "A query for entities.", "type": "object" }, - "ReadOnly": { - "properties": {}, - "id": "ReadOnly", - "description": "Options specific to read-only transactions.", - "type": "object" - }, - "EntityResult": { - "description": "The result of fetching an entity from Datastore.", - "type": "object", + "QueryResultBatch": { + "description": "A batch of results produced by a query.", + "id": "QueryResultBatch", "properties": { - "cursor": { - "description": "A cursor that points to the position after the result entity.\nSet only when the `EntityResult` is part of a `QueryResultBatch` message.", + "endCursor": { + "description": "A cursor that points to the position after the last result in the batch.", "format": "byte", "type": "string" }, - "version": { - "description": "The version of the entity, a strictly positive number that monotonically\nincreases with changes to the entity.\n\nThis field is set for `FULL` entity\nresults.\n\nFor missing entities in `LookupResponse`, this\nis the version of the snapshot that was used to look up the entity, and it\nis always set except for eventually consistent reads.", - "format": "int64", + "entityResultType": { + "description": "The result type for every entity in `entity_results`.", + "enum": [ + "RESULT_TYPE_UNSPECIFIED", + "FULL", + "PROJECTION", + "KEY_ONLY" + ], + "enumDescriptions": [ + "Unspecified. This value is never used.", + "The key and properties.", + "A projected subset of properties. The entity may have no key.", + "Only the key." + ], "type": "string" }, - "entity": { - "description": "The resulting entity.", - "$ref": "Entity" - } - }, - "id": "EntityResult" - }, - "Value": { - "properties": { - "blobValue": { - "description": "A blob value.\nMay have at most 1,000,000 bytes.\nWhen `exclude_from_indexes` is false, may have at most 1500 bytes.\nIn JSON requests, must be base64-encoded.", + "entityResults": { + "description": "The results for this batch.", + "items": { + "$ref": "EntityResult" + }, + "type": "array" + }, + "moreResults": { + "description": "The state of the query after the current batch.", + "enum": [ + "MORE_RESULTS_TYPE_UNSPECIFIED", + "NOT_FINISHED", + "MORE_RESULTS_AFTER_LIMIT", + "MORE_RESULTS_AFTER_CURSOR", + "NO_MORE_RESULTS" + ], + "enumDescriptions": [ + "Unspecified. This value is never used.", + "There may be additional batches to fetch from this query.", + "The query is finished, but there may be more results after the limit.", + "The query is finished, but there may be more results after the end\ncursor.", + "The query is finished, and there are no more results." + ], + "type": "string" + }, + "skippedCursor": { + "description": "A cursor that points to the position after the last skipped result.\nWill be set when `skipped_results` != 0.", "format": "byte", "type": "string" }, - "meaning": { - "description": "The `meaning` field should only be populated for backwards compatibility.", + "skippedResults": { + "description": "The number of results skipped, typically because of an offset.", "format": "int32", "type": "integer" }, - "arrayValue": { - "description": "An array value.\nCannot contain another array value.\nA `Value` instance that sets field `array_value` must not set fields\n`meaning` or `exclude_from_indexes`.", - "$ref": "ArrayValue" - }, - "entityValue": { - "$ref": "Entity", - "description": "An entity value.\n\n- May have no key.\n- May have a key with an incomplete key path.\n- May have a reserved/read-only key." - }, - "geoPointValue": { - "$ref": "LatLng", - "description": "A geo point value representing a point on the surface of Earth." - }, - "keyValue": { - "description": "A key value.", - "$ref": "Key" - }, - "integerValue": { - "description": "An integer value.", + "snapshotVersion": { + "description": "The version number of the snapshot this batch was returned from.\nThis applies to the range of results from the query's `start_cursor` (or\nthe beginning of the query if no cursor was given) to this batch's\n`end_cursor` (not the query's `end_cursor`).\n\nIn a single transaction, subsequent query result batches for the same query\ncan have a greater snapshot version number. Each batch's snapshot version\nis valid for all preceding batches.\nThe value will be zero for eventually consistent queries.", "format": "int64", "type": "string" - }, - "stringValue": { - "description": "A UTF-8 encoded string value.\nWhen `exclude_from_indexes` is false (it is indexed) , may have at most 1500 bytes.\nOtherwise, may be set to at least 1,000,000 bytes.", - "type": "string" - }, - "excludeFromIndexes": { - "description": "If the value should be excluded from all indexes including those defined\nexplicitly.", - "type": "boolean" - }, - "doubleValue": { - "description": "A double value.", - "format": "double", - "type": "number" - }, - "timestampValue": { - "description": "A timestamp value.\nWhen stored in the Datastore, precise only to microseconds;\nany additional precision is rounded down.", - "format": "google-datetime", - "type": "string" - }, - "booleanValue": { - "description": "A boolean value.", - "type": "boolean" - }, - "nullValue": { - "enumDescriptions": [ - "Null value." - ], - "enum": [ - "NULL_VALUE" - ], - "description": "A null value.", - "type": "string" } }, - "id": "Value", - "description": "A message that can hold any of the supported value types and associated\nmetadata.", + "type": "object" + }, + "ReadOnly": { + "description": "Options specific to read-only transactions.", + "id": "ReadOnly", + "properties": {}, + "type": "object" + }, + "ReadOptions": { + "description": "The options shared by read requests.", + "id": "ReadOptions", + "properties": { + "readConsistency": { + "description": "The non-transactional read consistency to use.\nCannot be set to `STRONG` for global queries.", + "enum": [ + "READ_CONSISTENCY_UNSPECIFIED", + "STRONG", + "EVENTUAL" + ], + "enumDescriptions": [ + "Unspecified. This value must not be used.", + "Strong consistency.", + "Eventual consistency." + ], + "type": "string" + }, + "transaction": { + "description": "The identifier of the transaction in which to read. A\ntransaction identifier is returned by a call to\nDatastore.BeginTransaction.", + "format": "byte", + "type": "string" + } + }, "type": "object" }, "ReadWrite": { "description": "Options specific to read / write transactions.", - "type": "object", + "id": "ReadWrite", "properties": { "previousTransaction": { "description": "The transaction identifier of the transaction being retried.", @@ -1439,104 +1605,203 @@ "type": "string" } }, - "id": "ReadWrite" - }, - "LookupRequest": { - "description": "The request for Datastore.Lookup.", - "type": "object", - "properties": { - "readOptions": { - "$ref": "ReadOptions", - "description": "The options for this lookup request." - }, - "keys": { - "description": "Keys of entities to look up.", - "type": "array", - "items": { - "$ref": "Key" - } - } - }, - "id": "LookupRequest" + "type": "object" }, "ReserveIdsRequest": { "description": "The request for Datastore.ReserveIds.", - "type": "object", + "id": "ReserveIdsRequest", "properties": { - "keys": { - "description": "A list of keys with complete key paths whose numeric IDs should not be\nauto-allocated.", - "type": "array", - "items": { - "$ref": "Key" - } - }, "databaseId": { "description": "If not empty, the ID of the database against which to make the request.", "type": "string" + }, + "keys": { + "description": "A list of keys with complete key paths whose numeric IDs should not be\nauto-allocated.", + "items": { + "$ref": "Key" + }, + "type": "array" } }, - "id": "ReserveIdsRequest" + "type": "object" + }, + "ReserveIdsResponse": { + "description": "The response for Datastore.ReserveIds.", + "id": "ReserveIdsResponse", + "properties": {}, + "type": "object" + }, + "RollbackRequest": { + "description": "The request for Datastore.Rollback.", + "id": "RollbackRequest", + "properties": { + "transaction": { + "description": "The transaction identifier, returned by a call to\nDatastore.BeginTransaction.", + "format": "byte", + "type": "string" + } + }, + "type": "object" + }, + "RollbackResponse": { + "description": "The response for Datastore.Rollback.\n(an empty message).", + "id": "RollbackResponse", + "properties": {}, + "type": "object" + }, + "RunQueryRequest": { + "description": "The request for Datastore.RunQuery.", + "id": "RunQueryRequest", + "properties": { + "gqlQuery": { + "$ref": "GqlQuery", + "description": "The GQL query to run." + }, + "partitionId": { + "$ref": "PartitionId", + "description": "Entities are partitioned into subsets, identified by a partition ID.\nQueries are scoped to a single partition.\nThis partition ID is normalized with the standard default context\npartition ID." + }, + "query": { + "$ref": "Query", + "description": "The query to run." + }, + "readOptions": { + "$ref": "ReadOptions", + "description": "The options for this query." + } + }, + "type": "object" + }, + "RunQueryResponse": { + "description": "The response for Datastore.RunQuery.", + "id": "RunQueryResponse", + "properties": { + "batch": { + "$ref": "QueryResultBatch", + "description": "A batch of query results (always present)." + }, + "query": { + "$ref": "Query", + "description": "The parsed form of the `GqlQuery` from the request, if it was set." + } + }, + "type": "object" }, "Status": { + "description": "The `Status` type defines a logical error model that is suitable for different\nprogramming environments, including REST APIs and RPC APIs. It is used by\n[gRPC](https://github.com/grpc). The error model is designed to be:\n\n- Simple to use and understand for most users\n- Flexible enough to meet unexpected needs\n\n# Overview\n\nThe `Status` message contains three pieces of data: error code, error message,\nand error details. The error code should be an enum value of\ngoogle.rpc.Code, but it may accept additional error codes if needed. The\nerror message should be a developer-facing English message that helps\ndevelopers *understand* and *resolve* the error. If a localized user-facing\nerror message is needed, put the localized message in the error details or\nlocalize it in the client. The optional error details may contain arbitrary\ninformation about the error. There is a predefined set of error detail types\nin the package `google.rpc` that can be used for common error conditions.\n\n# Language mapping\n\nThe `Status` message is the logical representation of the error model, but it\nis not necessarily the actual wire format. When the `Status` message is\nexposed in different client libraries and different wire protocols, it can be\nmapped differently. For example, it will likely be mapped to some exceptions\nin Java, but more likely mapped to some error codes in C.\n\n# Other uses\n\nThe error model and the `Status` message can be used in a variety of\nenvironments, either with or without APIs, to provide a\nconsistent developer experience across different environments.\n\nExample uses of this error model include:\n\n- Partial errors. If a service needs to return partial errors to the client,\n it may embed the `Status` in the normal response to indicate the partial\n errors.\n\n- Workflow errors. A typical workflow has multiple steps. Each step may\n have a `Status` message for error reporting.\n\n- Batch operations. If a client uses batch request and batch response, the\n `Status` message should be used directly inside batch response, one for\n each error sub-response.\n\n- Asynchronous operations. If an API call embeds asynchronous operation\n results in its response, the status of those operations should be\n represented directly using the `Status` message.\n\n- Logging. If some API errors are stored in logs, the message `Status` could\n be used directly after any stripping needed for security/privacy reasons.", + "id": "Status", "properties": { - "details": { - "description": "A list of messages that carry the error details. There is a common set of\nmessage types for APIs to use.", - "type": "array", - "items": { - "type": "object", - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - } - } - }, "code": { "description": "The status code, which should be an enum value of google.rpc.Code.", "format": "int32", "type": "integer" }, + "details": { + "description": "A list of messages that carry the error details. There is a common set of\nmessage types for APIs to use.", + "items": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "type": "object" + }, + "type": "array" + }, "message": { "description": "A developer-facing error message, which should be in English. Any\nuser-facing error message should be localized and sent in the\ngoogle.rpc.Status.details field, or localized by the client.", "type": "string" } }, - "id": "Status", - "description": "The `Status` type defines a logical error model that is suitable for different\nprogramming environments, including REST APIs and RPC APIs. It is used by\n[gRPC](https://github.com/grpc). The error model is designed to be:\n\n- Simple to use and understand for most users\n- Flexible enough to meet unexpected needs\n\n# Overview\n\nThe `Status` message contains three pieces of data: error code, error message,\nand error details. The error code should be an enum value of\ngoogle.rpc.Code, but it may accept additional error codes if needed. The\nerror message should be a developer-facing English message that helps\ndevelopers *understand* and *resolve* the error. If a localized user-facing\nerror message is needed, put the localized message in the error details or\nlocalize it in the client. The optional error details may contain arbitrary\ninformation about the error. There is a predefined set of error detail types\nin the package `google.rpc` that can be used for common error conditions.\n\n# Language mapping\n\nThe `Status` message is the logical representation of the error model, but it\nis not necessarily the actual wire format. When the `Status` message is\nexposed in different client libraries and different wire protocols, it can be\nmapped differently. For example, it will likely be mapped to some exceptions\nin Java, but more likely mapped to some error codes in C.\n\n# Other uses\n\nThe error model and the `Status` message can be used in a variety of\nenvironments, either with or without APIs, to provide a\nconsistent developer experience across different environments.\n\nExample uses of this error model include:\n\n- Partial errors. If a service needs to return partial errors to the client,\n it may embed the `Status` in the normal response to indicate the partial\n errors.\n\n- Workflow errors. A typical workflow has multiple steps. Each step may\n have a `Status` message for error reporting.\n\n- Batch operations. If a client uses batch request and batch response, the\n `Status` message should be used directly inside batch response, one for\n each error sub-response.\n\n- Asynchronous operations. If an API call embeds asynchronous operation\n results in its response, the status of those operations should be\n represented directly using the `Status` message.\n\n- Logging. If some API errors are stored in logs, the message `Status` could\n be used directly after any stripping needed for security/privacy reasons.", + "type": "object" + }, + "TransactionOptions": { + "description": "Options for beginning a new transaction.\n\nTransactions can be created explicitly with calls to\nDatastore.BeginTransaction or implicitly by setting\nReadOptions.new_transaction in read requests.", + "id": "TransactionOptions", + "properties": { + "readOnly": { + "$ref": "ReadOnly", + "description": "The transaction should only allow reads." + }, + "readWrite": { + "$ref": "ReadWrite", + "description": "The transaction should allow both reads and writes." + } + }, + "type": "object" + }, + "Value": { + "description": "A message that can hold any of the supported value types and associated\nmetadata.", + "id": "Value", + "properties": { + "arrayValue": { + "$ref": "ArrayValue", + "description": "An array value.\nCannot contain another array value.\nA `Value` instance that sets field `array_value` must not set fields\n`meaning` or `exclude_from_indexes`." + }, + "blobValue": { + "description": "A blob value.\nMay have at most 1,000,000 bytes.\nWhen `exclude_from_indexes` is false, may have at most 1500 bytes.\nIn JSON requests, must be base64-encoded.", + "format": "byte", + "type": "string" + }, + "booleanValue": { + "description": "A boolean value.", + "type": "boolean" + }, + "doubleValue": { + "description": "A double value.", + "format": "double", + "type": "number" + }, + "entityValue": { + "$ref": "Entity", + "description": "An entity value.\n\n- May have no key.\n- May have a key with an incomplete key path.\n- May have a reserved/read-only key." + }, + "excludeFromIndexes": { + "description": "If the value should be excluded from all indexes including those defined\nexplicitly.", + "type": "boolean" + }, + "geoPointValue": { + "$ref": "LatLng", + "description": "A geo point value representing a point on the surface of Earth." + }, + "integerValue": { + "description": "An integer value.", + "format": "int64", + "type": "string" + }, + "keyValue": { + "$ref": "Key", + "description": "A key value." + }, + "meaning": { + "description": "The `meaning` field should only be populated for backwards compatibility.", + "format": "int32", + "type": "integer" + }, + "nullValue": { + "description": "A null value.", + "enum": [ + "NULL_VALUE" + ], + "enumDescriptions": [ + "Null value." + ], + "type": "string" + }, + "stringValue": { + "description": "A UTF-8 encoded string value.\nWhen `exclude_from_indexes` is false (it is indexed) , may have at most 1500 bytes.\nOtherwise, may be set to at least 1,000,000 bytes.", + "type": "string" + }, + "timestampValue": { + "description": "A timestamp value.\nWhen stored in the Datastore, precise only to microseconds;\nany additional precision is rounded down.", + "format": "google-datetime", + "type": "string" + } + }, "type": "object" } }, - "icons": { - "x16": "http://www.google.com/images/icons/product/search-16.gif", - "x32": "http://www.google.com/images/icons/product/search-32.gif" - }, - "protocol": "rest", - "version": "v1", - "baseUrl": "https://datastore.googleapis.com/", - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/datastore": { - "description": "View and manage your Google Cloud Datastore data" - }, - "https://www.googleapis.com/auth/cloud-platform": { - "description": "View and manage your data across Google Cloud Platform services" - } - } - } - }, - "kind": "discovery#restDescription", - "description": "Accesses the schemaless NoSQL database to provide fully managed, robust, scalable storage for your application.\n", "servicePath": "", - "rootUrl": "https://datastore.googleapis.com/", - "basePath": "", - "ownerDomain": "google.com", - "name": "datastore", - "batchPath": "batch", - "revision": "20180109", - "documentationLink": "https://cloud.google.com/datastore/", - "id": "datastore:v1", "title": "Google Cloud Datastore API", - "discoveryVersion": "v1", - "ownerName": "Google", + "version": "v1", "version_module": true -} +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/datastore/v1/datastore-gen.go b/vendor/google.golang.org/api/datastore/v1/datastore-gen.go index 2119e341d..29a48dd5d 100644 --- a/vendor/google.golang.org/api/datastore/v1/datastore-gen.go +++ b/vendor/google.golang.org/api/datastore/v1/datastore-gen.go @@ -541,6 +541,427 @@ func (s *Filter) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// GoogleDatastoreAdminV1CommonMetadata: Metadata common to all +// Datastore Admin operations. +type GoogleDatastoreAdminV1CommonMetadata struct { + // EndTime: The time the operation ended, either successfully or + // otherwise. + EndTime string `json:"endTime,omitempty"` + + // Labels: The client-assigned labels which were provided when the + // operation was + // created. May also include additional labels. + Labels map[string]string `json:"labels,omitempty"` + + // OperationType: The type of the operation. Can be used as a filter + // in + // ListOperationsRequest. + // + // Possible values: + // "OPERATION_TYPE_UNSPECIFIED" - Unspecified. + // "EXPORT_ENTITIES" - ExportEntities. + // "IMPORT_ENTITIES" - ImportEntities. + OperationType string `json:"operationType,omitempty"` + + // StartTime: The time that work began on the operation. + StartTime string `json:"startTime,omitempty"` + + // State: The current state of the Operation. + // + // Possible values: + // "STATE_UNSPECIFIED" - Unspecified. + // "INITIALIZING" - Request is being prepared for processing. + // "PROCESSING" - Request is actively being processed. + // "CANCELLING" - Request is in the process of being cancelled after + // user called + // google.longrunning.Operations.CancelOperation on the operation. + // "FINALIZING" - Request has been processed and is in its + // finalization stage. + // "SUCCESSFUL" - Request has completed successfully. + // "FAILED" - Request has finished being processed, but encountered an + // error. + // "CANCELLED" - Request has finished being cancelled after user + // called + // google.longrunning.Operations.CancelOperation. + State string `json:"state,omitempty"` + + // ForceSendFields is a list of field names (e.g. "EndTime") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "EndTime") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleDatastoreAdminV1CommonMetadata) MarshalJSON() ([]byte, error) { + type NoMethod GoogleDatastoreAdminV1CommonMetadata + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleDatastoreAdminV1EntityFilter: Identifies a subset of entities +// in a project. This is specified as +// combinations of kinds and namespaces (either or both of which may be +// all, as +// described in the following examples). +// Example usage: +// +// Entire project: +// kinds=[], namespace_ids=[] +// +// Kinds Foo and Bar in all namespaces: +// kinds=['Foo', 'Bar'], namespace_ids=[] +// +// Kinds Foo and Bar only in the default namespace: +// kinds=['Foo', 'Bar'], namespace_ids=[''] +// +// Kinds Foo and Bar in both the default and Baz namespaces: +// kinds=['Foo', 'Bar'], namespace_ids=['', 'Baz'] +// +// The entire Baz namespace: +// kinds=[], namespace_ids=['Baz'] +type GoogleDatastoreAdminV1EntityFilter struct { + // Kinds: If empty, then this represents all kinds. + Kinds []string `json:"kinds,omitempty"` + + // NamespaceIds: An empty list represents all namespaces. This is the + // preferred + // usage for projects that don't use namespaces. + // + // An empty string element represents the default namespace. This should + // be + // used if the project has data in non-default namespaces, but doesn't + // want to + // include them. + // Each namespace in this list must be unique. + NamespaceIds []string `json:"namespaceIds,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Kinds") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Kinds") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleDatastoreAdminV1EntityFilter) MarshalJSON() ([]byte, error) { + type NoMethod GoogleDatastoreAdminV1EntityFilter + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleDatastoreAdminV1ExportEntitiesMetadata: Metadata for +// ExportEntities operations. +type GoogleDatastoreAdminV1ExportEntitiesMetadata struct { + // Common: Metadata common to all Datastore Admin operations. + Common *GoogleDatastoreAdminV1CommonMetadata `json:"common,omitempty"` + + // EntityFilter: Description of which entities are being exported. + EntityFilter *GoogleDatastoreAdminV1EntityFilter `json:"entityFilter,omitempty"` + + // OutputUrlPrefix: Location for the export metadata and data files. + // This will be the same + // value as + // the + // google.datastore.admin.v1.ExportEntitiesRequest.output_url_prefix + // + // field. The final output location is provided + // in + // google.datastore.admin.v1.ExportEntitiesResponse.output_url. + OutputUrlPrefix string `json:"outputUrlPrefix,omitempty"` + + // ProgressBytes: An estimate of the number of bytes processed. + ProgressBytes *GoogleDatastoreAdminV1Progress `json:"progressBytes,omitempty"` + + // ProgressEntities: An estimate of the number of entities processed. + ProgressEntities *GoogleDatastoreAdminV1Progress `json:"progressEntities,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Common") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Common") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleDatastoreAdminV1ExportEntitiesMetadata) MarshalJSON() ([]byte, error) { + type NoMethod GoogleDatastoreAdminV1ExportEntitiesMetadata + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleDatastoreAdminV1ExportEntitiesRequest: The request +// for +// google.datastore.admin.v1.DatastoreAdmin.ExportEntities. +type GoogleDatastoreAdminV1ExportEntitiesRequest struct { + // EntityFilter: Description of what data from the project is included + // in the export. + EntityFilter *GoogleDatastoreAdminV1EntityFilter `json:"entityFilter,omitempty"` + + // Labels: Client-assigned labels. + Labels map[string]string `json:"labels,omitempty"` + + // OutputUrlPrefix: Location for the export metadata and data + // files. + // + // The full resource URL of the external storage location. Currently, + // only + // Google Cloud Storage is supported. So output_url_prefix should be of + // the + // form: `gs://BUCKET_NAME[/NAMESPACE_PATH]`, where `BUCKET_NAME` is + // the + // name of the Cloud Storage bucket and `NAMESPACE_PATH` is an optional + // Cloud + // Storage namespace path (this is not a Cloud Datastore namespace). For + // more + // information about Cloud Storage namespace paths, see + // [Object + // name + // considerations](https://cloud.google.com/storage/docs/naming#obje + // ct-considerations). + // + // The resulting files will be nested deeper than the specified URL + // prefix. + // The final output URL will be provided in + // the + // google.datastore.admin.v1.ExportEntitiesResponse.output_url field. + // That + // value should be used for subsequent ImportEntities operations. + // + // By nesting the data files deeper, the same Cloud Storage bucket can + // be used + // in multiple ExportEntities operations without conflict. + OutputUrlPrefix string `json:"outputUrlPrefix,omitempty"` + + // ForceSendFields is a list of field names (e.g. "EntityFilter") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "EntityFilter") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleDatastoreAdminV1ExportEntitiesRequest) MarshalJSON() ([]byte, error) { + type NoMethod GoogleDatastoreAdminV1ExportEntitiesRequest + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleDatastoreAdminV1ExportEntitiesResponse: The response +// for +// google.datastore.admin.v1.DatastoreAdmin.ExportEntities. +type GoogleDatastoreAdminV1ExportEntitiesResponse struct { + // OutputUrl: Location of the output metadata file. This can be used to + // begin an import + // into Cloud Datastore (this project or another project). + // See + // google.datastore.admin.v1.ImportEntitiesRequest.input_url. + // Only present if the operation completed successfully. + OutputUrl string `json:"outputUrl,omitempty"` + + // ForceSendFields is a list of field names (e.g. "OutputUrl") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "OutputUrl") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleDatastoreAdminV1ExportEntitiesResponse) MarshalJSON() ([]byte, error) { + type NoMethod GoogleDatastoreAdminV1ExportEntitiesResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleDatastoreAdminV1ImportEntitiesMetadata: Metadata for +// ImportEntities operations. +type GoogleDatastoreAdminV1ImportEntitiesMetadata struct { + // Common: Metadata common to all Datastore Admin operations. + Common *GoogleDatastoreAdminV1CommonMetadata `json:"common,omitempty"` + + // EntityFilter: Description of which entities are being imported. + EntityFilter *GoogleDatastoreAdminV1EntityFilter `json:"entityFilter,omitempty"` + + // InputUrl: The location of the import metadata file. This will be the + // same value as + // the google.datastore.admin.v1.ExportEntitiesResponse.output_url + // field. + InputUrl string `json:"inputUrl,omitempty"` + + // ProgressBytes: An estimate of the number of bytes processed. + ProgressBytes *GoogleDatastoreAdminV1Progress `json:"progressBytes,omitempty"` + + // ProgressEntities: An estimate of the number of entities processed. + ProgressEntities *GoogleDatastoreAdminV1Progress `json:"progressEntities,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Common") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Common") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleDatastoreAdminV1ImportEntitiesMetadata) MarshalJSON() ([]byte, error) { + type NoMethod GoogleDatastoreAdminV1ImportEntitiesMetadata + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleDatastoreAdminV1ImportEntitiesRequest: The request +// for +// google.datastore.admin.v1.DatastoreAdmin.ImportEntities. +type GoogleDatastoreAdminV1ImportEntitiesRequest struct { + // EntityFilter: Optionally specify which kinds/namespaces are to be + // imported. If provided, + // the list must be a subset of the EntityFilter used in creating the + // export, + // otherwise a FAILED_PRECONDITION error will be returned. If no filter + // is + // specified then all entities from the export are imported. + EntityFilter *GoogleDatastoreAdminV1EntityFilter `json:"entityFilter,omitempty"` + + // InputUrl: The full resource URL of the external storage location. + // Currently, only + // Google Cloud Storage is supported. So input_url should be of the + // form: + // `gs://BUCKET_NAME[/NAMESPACE_PATH]/OVERALL_EXPORT_METADATA_FILE` + // , where + // `BUCKET_NAME` is the name of the Cloud Storage bucket, + // `NAMESPACE_PATH` is + // an optional Cloud Storage namespace path (this is not a Cloud + // Datastore + // namespace), and `OVERALL_EXPORT_METADATA_FILE` is the metadata file + // written + // by the ExportEntities operation. For more information about Cloud + // Storage + // namespace paths, see + // [Object + // name + // considerations](https://cloud.google.com/storage/docs/naming#obje + // ct-considerations). + // + // For more information, + // see + // google.datastore.admin.v1.ExportEntitiesResponse.output_url. + InputUrl string `json:"inputUrl,omitempty"` + + // Labels: Client-assigned labels. + Labels map[string]string `json:"labels,omitempty"` + + // ForceSendFields is a list of field names (e.g. "EntityFilter") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "EntityFilter") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleDatastoreAdminV1ImportEntitiesRequest) MarshalJSON() ([]byte, error) { + type NoMethod GoogleDatastoreAdminV1ImportEntitiesRequest + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleDatastoreAdminV1Progress: Measures the progress of a particular +// metric. +type GoogleDatastoreAdminV1Progress struct { + // WorkCompleted: The amount of work that has been completed. Note that + // this may be greater + // than work_estimated. + WorkCompleted int64 `json:"workCompleted,omitempty,string"` + + // WorkEstimated: An estimate of how much work needs to be performed. + // May be zero if the + // work estimate is unavailable. + WorkEstimated int64 `json:"workEstimated,omitempty,string"` + + // ForceSendFields is a list of field names (e.g. "WorkCompleted") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "WorkCompleted") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleDatastoreAdminV1Progress) MarshalJSON() ([]byte, error) { + type NoMethod GoogleDatastoreAdminV1Progress + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // GoogleDatastoreAdminV1beta1CommonMetadata: Metadata common to all // Datastore Admin operations. type GoogleDatastoreAdminV1beta1CommonMetadata struct { @@ -2663,6 +3084,299 @@ func (c *ProjectsCommitCall) Do(opts ...googleapi.CallOption) (*CommitResponse, } +// method id "datastore.projects.export": + +type ProjectsExportCall struct { + s *Service + projectId string + googledatastoreadminv1exportentitiesrequest *GoogleDatastoreAdminV1ExportEntitiesRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Export: Exports a copy of all or a subset of entities from Google +// Cloud Datastore +// to another storage system, such as Google Cloud Storage. Recent +// updates to +// entities may not be reflected in the export. The export occurs in +// the +// background and its progress can be monitored and managed via +// the +// Operation resource that is created. The output of an export may only +// be +// used once the associated operation is done. If an export operation +// is +// cancelled before completion it may leave partial data behind in +// Google +// Cloud Storage. +func (r *ProjectsService) Export(projectId string, googledatastoreadminv1exportentitiesrequest *GoogleDatastoreAdminV1ExportEntitiesRequest) *ProjectsExportCall { + c := &ProjectsExportCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.projectId = projectId + c.googledatastoreadminv1exportentitiesrequest = googledatastoreadminv1exportentitiesrequest + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsExportCall) Fields(s ...googleapi.Field) *ProjectsExportCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsExportCall) Context(ctx context.Context) *ProjectsExportCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsExportCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsExportCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.googledatastoreadminv1exportentitiesrequest) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v1/projects/{projectId}:export") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("POST", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "projectId": c.projectId, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "datastore.projects.export" call. +// Exactly one of *GoogleLongrunningOperation or error will be non-nil. +// Any non-2xx status code is an error. Response headers are in either +// *GoogleLongrunningOperation.ServerResponse.Header or (if a response +// was returned at all) in error.(*googleapi.Error).Header. Use +// googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *ProjectsExportCall) Do(opts ...googleapi.CallOption) (*GoogleLongrunningOperation, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &GoogleLongrunningOperation{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Exports a copy of all or a subset of entities from Google Cloud Datastore\nto another storage system, such as Google Cloud Storage. Recent updates to\nentities may not be reflected in the export. The export occurs in the\nbackground and its progress can be monitored and managed via the\nOperation resource that is created. The output of an export may only be\nused once the associated operation is done. If an export operation is\ncancelled before completion it may leave partial data behind in Google\nCloud Storage.", + // "flatPath": "v1/projects/{projectId}:export", + // "httpMethod": "POST", + // "id": "datastore.projects.export", + // "parameterOrder": [ + // "projectId" + // ], + // "parameters": { + // "projectId": { + // "description": "Project ID against which to make the request.", + // "location": "path", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1/projects/{projectId}:export", + // "request": { + // "$ref": "GoogleDatastoreAdminV1ExportEntitiesRequest" + // }, + // "response": { + // "$ref": "GoogleLongrunningOperation" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform", + // "https://www.googleapis.com/auth/datastore" + // ] + // } + +} + +// method id "datastore.projects.import": + +type ProjectsImportCall struct { + s *Service + projectId string + googledatastoreadminv1importentitiesrequest *GoogleDatastoreAdminV1ImportEntitiesRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Import: Imports entities into Google Cloud Datastore. Existing +// entities with the +// same key are overwritten. The import occurs in the background and +// its +// progress can be monitored and managed via the Operation resource that +// is +// created. If an ImportEntities operation is cancelled, it is +// possible +// that a subset of the data has already been imported to Cloud +// Datastore. +func (r *ProjectsService) Import(projectId string, googledatastoreadminv1importentitiesrequest *GoogleDatastoreAdminV1ImportEntitiesRequest) *ProjectsImportCall { + c := &ProjectsImportCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.projectId = projectId + c.googledatastoreadminv1importentitiesrequest = googledatastoreadminv1importentitiesrequest + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsImportCall) Fields(s ...googleapi.Field) *ProjectsImportCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsImportCall) Context(ctx context.Context) *ProjectsImportCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsImportCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsImportCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.googledatastoreadminv1importentitiesrequest) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v1/projects/{projectId}:import") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("POST", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "projectId": c.projectId, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "datastore.projects.import" call. +// Exactly one of *GoogleLongrunningOperation or error will be non-nil. +// Any non-2xx status code is an error. Response headers are in either +// *GoogleLongrunningOperation.ServerResponse.Header or (if a response +// was returned at all) in error.(*googleapi.Error).Header. Use +// googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *ProjectsImportCall) Do(opts ...googleapi.CallOption) (*GoogleLongrunningOperation, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &GoogleLongrunningOperation{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Imports entities into Google Cloud Datastore. Existing entities with the\nsame key are overwritten. The import occurs in the background and its\nprogress can be monitored and managed via the Operation resource that is\ncreated. If an ImportEntities operation is cancelled, it is possible\nthat a subset of the data has already been imported to Cloud Datastore.", + // "flatPath": "v1/projects/{projectId}:import", + // "httpMethod": "POST", + // "id": "datastore.projects.import", + // "parameterOrder": [ + // "projectId" + // ], + // "parameters": { + // "projectId": { + // "description": "Project ID against which to make the request.", + // "location": "path", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1/projects/{projectId}:import", + // "request": { + // "$ref": "GoogleDatastoreAdminV1ImportEntitiesRequest" + // }, + // "response": { + // "$ref": "GoogleLongrunningOperation" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform", + // "https://www.googleapis.com/auth/datastore" + // ] + // } + +} + // method id "datastore.projects.lookup": type ProjectsLookupCall struct { diff --git a/vendor/google.golang.org/api/datastore/v1beta1/datastore-api.json b/vendor/google.golang.org/api/datastore/v1beta1/datastore-api.json index 9fb98d30d..f0f8ec0a1 100644 --- a/vendor/google.golang.org/api/datastore/v1beta1/datastore-api.json +++ b/vendor/google.golang.org/api/datastore/v1beta1/datastore-api.json @@ -1,167 +1,194 @@ { - "batchPath": "batch", - "documentationLink": "https://cloud.google.com/datastore/", - "id": "datastore:v1beta1", - "revision": "20180109", - "title": "Google Cloud Datastore API", - "ownerName": "Google", - "discoveryVersion": "v1", - "version_module": true, - "resources": { - "projects": { - "methods": { - "export": { - "httpMethod": "POST", - "parameterOrder": [ - "projectId" - ], - "response": { - "$ref": "GoogleLongrunningOperation" - }, - "parameters": { - "projectId": { - "description": "Project ID against which to make the request.", - "required": true, - "type": "string", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/datastore" - ], - "flatPath": "v1beta1/projects/{projectId}:export", - "id": "datastore.projects.export", - "path": "v1beta1/projects/{projectId}:export", - "request": { - "$ref": "GoogleDatastoreAdminV1beta1ExportEntitiesRequest" - }, - "description": "Exports a copy of all or a subset of entities from Google Cloud Datastore\nto another storage system, such as Google Cloud Storage. Recent updates to\nentities may not be reflected in the export. The export occurs in the\nbackground and its progress can be monitored and managed via the\nOperation resource that is created. The output of an export may only be\nused once the associated operation is done. If an export operation is\ncancelled before completion it may leave partial data behind in Google\nCloud Storage." + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/cloud-platform": { + "description": "View and manage your data across Google Cloud Platform services" }, - "import": { - "request": { - "$ref": "GoogleDatastoreAdminV1beta1ImportEntitiesRequest" - }, - "description": "Imports entities into Google Cloud Datastore. Existing entities with the\nsame key are overwritten. The import occurs in the background and its\nprogress can be monitored and managed via the Operation resource that is\ncreated. If an ImportEntities operation is cancelled, it is possible\nthat a subset of the data has already been imported to Cloud Datastore.", - "response": { - "$ref": "GoogleLongrunningOperation" - }, - "parameterOrder": [ - "projectId" - ], - "httpMethod": "POST", - "parameters": { - "projectId": { - "description": "Project ID against which to make the request.", - "required": true, - "type": "string", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/datastore" - ], - "flatPath": "v1beta1/projects/{projectId}:import", - "path": "v1beta1/projects/{projectId}:import", - "id": "datastore.projects.import" + "https://www.googleapis.com/auth/datastore": { + "description": "View and manage your Google Cloud Datastore data" } } } }, + "basePath": "", + "baseUrl": "https://datastore.googleapis.com/", + "batchPath": "batch", + "description": "Accesses the schemaless NoSQL database to provide fully managed, robust, scalable storage for your application.\n", + "discoveryVersion": "v1", + "documentationLink": "https://cloud.google.com/datastore/", + "icons": { + "x16": "http://www.google.com/images/icons/product/search-16.gif", + "x32": "http://www.google.com/images/icons/product/search-32.gif" + }, + "id": "datastore:v1beta1", + "kind": "discovery#restDescription", + "name": "datastore", + "ownerDomain": "google.com", + "ownerName": "Google", "parameters": { - "fields": { - "location": "query", - "description": "Selector specifying which fields to include in a partial response.", - "type": "string" - }, - "uploadType": { - "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", - "type": "string", - "location": "query" - }, - "callback": { - "description": "JSONP", - "type": "string", - "location": "query" - }, "$.xgafv": { + "description": "V1 error format.", + "enum": [ + "1", + "2" + ], "enumDescriptions": [ "v1 error format", "v2 error format" ], "location": "query", - "enum": [ - "1", - "2" - ], - "description": "V1 error format.", + "type": "string" + }, + "access_token": { + "description": "OAuth access token.", + "location": "query", "type": "string" }, "alt": { - "description": "Data format for response.", "default": "json", + "description": "Data format for response.", "enum": [ "json", "media", "proto" ], - "type": "string", "enumDescriptions": [ "Responses with Content-Type of application/json", "Media download with context-dependent Content-Type", "Responses with Content-Type of application/x-protobuf" ], - "location": "query" - }, - "access_token": { "location": "query", - "description": "OAuth access token.", + "type": "string" + }, + "bearer_token": { + "description": "OAuth bearer token.", + "location": "query", + "type": "string" + }, + "callback": { + "description": "JSONP", + "location": "query", + "type": "string" + }, + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "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.", - "type": "string", - "location": "query" - }, - "quotaUser": { - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", - "type": "string", - "location": "query" - }, - "pp": { "location": "query", - "description": "Pretty-print response.", - "type": "boolean", - "default": "true" - }, - "bearer_token": { - "location": "query", - "description": "OAuth bearer token.", "type": "string" }, "oauth_token": { "description": "OAuth 2.0 token for the current user.", - "type": "string", - "location": "query" + "location": "query", + "type": "string" + }, + "pp": { + "default": "true", + "description": "Pretty-print response.", + "location": "query", + "type": "boolean" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", + "location": "query", + "type": "string" + }, + "uploadType": { + "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", + "location": "query", + "type": "string" }, "upload_protocol": { "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", - "type": "string", - "location": "query" - }, - "prettyPrint": { "location": "query", - "description": "Returns response with indentations and line breaks.", - "type": "boolean", - "default": "true" + "type": "string" } }, + "protocol": "rest", + "resources": { + "projects": { + "methods": { + "export": { + "description": "Exports a copy of all or a subset of entities from Google Cloud Datastore\nto another storage system, such as Google Cloud Storage. Recent updates to\nentities may not be reflected in the export. The export occurs in the\nbackground and its progress can be monitored and managed via the\nOperation resource that is created. The output of an export may only be\nused once the associated operation is done. If an export operation is\ncancelled before completion it may leave partial data behind in Google\nCloud Storage.", + "flatPath": "v1beta1/projects/{projectId}:export", + "httpMethod": "POST", + "id": "datastore.projects.export", + "parameterOrder": [ + "projectId" + ], + "parameters": { + "projectId": { + "description": "Project ID against which to make the request.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/projects/{projectId}:export", + "request": { + "$ref": "GoogleDatastoreAdminV1beta1ExportEntitiesRequest" + }, + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/datastore" + ] + }, + "import": { + "description": "Imports entities into Google Cloud Datastore. Existing entities with the\nsame key are overwritten. The import occurs in the background and its\nprogress can be monitored and managed via the Operation resource that is\ncreated. If an ImportEntities operation is cancelled, it is possible\nthat a subset of the data has already been imported to Cloud Datastore.", + "flatPath": "v1beta1/projects/{projectId}:import", + "httpMethod": "POST", + "id": "datastore.projects.import", + "parameterOrder": [ + "projectId" + ], + "parameters": { + "projectId": { + "description": "Project ID against which to make the request.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/projects/{projectId}:import", + "request": { + "$ref": "GoogleDatastoreAdminV1beta1ImportEntitiesRequest" + }, + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/datastore" + ] + } + } + } + }, + "revision": "20180321", + "rootUrl": "https://datastore.googleapis.com/", "schemas": { - "GoogleDatastoreAdminV1beta1CommonMetadata": { + "GoogleDatastoreAdminV1CommonMetadata": { "description": "Metadata common to all Datastore Admin operations.", - "type": "object", + "id": "GoogleDatastoreAdminV1CommonMetadata", "properties": { + "endTime": { + "description": "The time the operation ended, either successfully or otherwise.", + "format": "google-datetime", + "type": "string" + }, "labels": { "additionalProperties": { "type": "string" @@ -169,28 +196,37 @@ "description": "The client-assigned labels which were provided when the operation was\ncreated. May also include additional labels.", "type": "object" }, - "endTime": { - "description": "The time the operation ended, either successfully or otherwise.", - "format": "google-datetime", - "type": "string" - }, "operationType": { - "enumDescriptions": [ - "Unspecified.", - "ExportEntities.", - "ImportEntities." - ], + "description": "The type of the operation. Can be used as a filter in\nListOperationsRequest.", "enum": [ "OPERATION_TYPE_UNSPECIFIED", "EXPORT_ENTITIES", "IMPORT_ENTITIES" ], - "description": "The type of the operation. Can be used as a filter in\nListOperationsRequest.", + "enumDescriptions": [ + "Unspecified.", + "ExportEntities.", + "ImportEntities." + ], + "type": "string" + }, + "startTime": { + "description": "The time that work began on the operation.", + "format": "google-datetime", "type": "string" }, "state": { "description": "The current state of the Operation.", - "type": "string", + "enum": [ + "STATE_UNSPECIFIED", + "INITIALIZING", + "PROCESSING", + "CANCELLING", + "FINALIZING", + "SUCCESSFUL", + "FAILED", + "CANCELLED" + ], "enumDescriptions": [ "Unspecified.", "Request is being prepared for processing.", @@ -201,6 +237,151 @@ "Request has finished being processed, but encountered an error.", "Request has finished being cancelled after user called\ngoogle.longrunning.Operations.CancelOperation." ], + "type": "string" + } + }, + "type": "object" + }, + "GoogleDatastoreAdminV1EntityFilter": { + "description": "Identifies a subset of entities in a project. This is specified as\ncombinations of kinds and namespaces (either or both of which may be all, as\ndescribed in the following examples).\nExample usage:\n\nEntire project:\n kinds=[], namespace_ids=[]\n\nKinds Foo and Bar in all namespaces:\n kinds=['Foo', 'Bar'], namespace_ids=[]\n\nKinds Foo and Bar only in the default namespace:\n kinds=['Foo', 'Bar'], namespace_ids=['']\n\nKinds Foo and Bar in both the default and Baz namespaces:\n kinds=['Foo', 'Bar'], namespace_ids=['', 'Baz']\n\nThe entire Baz namespace:\n kinds=[], namespace_ids=['Baz']", + "id": "GoogleDatastoreAdminV1EntityFilter", + "properties": { + "kinds": { + "description": "If empty, then this represents all kinds.", + "items": { + "type": "string" + }, + "type": "array" + }, + "namespaceIds": { + "description": "An empty list represents all namespaces. This is the preferred\nusage for projects that don't use namespaces.\n\nAn empty string element represents the default namespace. This should be\nused if the project has data in non-default namespaces, but doesn't want to\ninclude them.\nEach namespace in this list must be unique.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "GoogleDatastoreAdminV1ExportEntitiesMetadata": { + "description": "Metadata for ExportEntities operations.", + "id": "GoogleDatastoreAdminV1ExportEntitiesMetadata", + "properties": { + "common": { + "$ref": "GoogleDatastoreAdminV1CommonMetadata", + "description": "Metadata common to all Datastore Admin operations." + }, + "entityFilter": { + "$ref": "GoogleDatastoreAdminV1EntityFilter", + "description": "Description of which entities are being exported." + }, + "outputUrlPrefix": { + "description": "Location for the export metadata and data files. This will be the same\nvalue as the\ngoogle.datastore.admin.v1.ExportEntitiesRequest.output_url_prefix\nfield. The final output location is provided in\ngoogle.datastore.admin.v1.ExportEntitiesResponse.output_url.", + "type": "string" + }, + "progressBytes": { + "$ref": "GoogleDatastoreAdminV1Progress", + "description": "An estimate of the number of bytes processed." + }, + "progressEntities": { + "$ref": "GoogleDatastoreAdminV1Progress", + "description": "An estimate of the number of entities processed." + } + }, + "type": "object" + }, + "GoogleDatastoreAdminV1ExportEntitiesResponse": { + "description": "The response for\ngoogle.datastore.admin.v1.DatastoreAdmin.ExportEntities.", + "id": "GoogleDatastoreAdminV1ExportEntitiesResponse", + "properties": { + "outputUrl": { + "description": "Location of the output metadata file. This can be used to begin an import\ninto Cloud Datastore (this project or another project). See\ngoogle.datastore.admin.v1.ImportEntitiesRequest.input_url.\nOnly present if the operation completed successfully.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleDatastoreAdminV1ImportEntitiesMetadata": { + "description": "Metadata for ImportEntities operations.", + "id": "GoogleDatastoreAdminV1ImportEntitiesMetadata", + "properties": { + "common": { + "$ref": "GoogleDatastoreAdminV1CommonMetadata", + "description": "Metadata common to all Datastore Admin operations." + }, + "entityFilter": { + "$ref": "GoogleDatastoreAdminV1EntityFilter", + "description": "Description of which entities are being imported." + }, + "inputUrl": { + "description": "The location of the import metadata file. This will be the same value as\nthe google.datastore.admin.v1.ExportEntitiesResponse.output_url field.", + "type": "string" + }, + "progressBytes": { + "$ref": "GoogleDatastoreAdminV1Progress", + "description": "An estimate of the number of bytes processed." + }, + "progressEntities": { + "$ref": "GoogleDatastoreAdminV1Progress", + "description": "An estimate of the number of entities processed." + } + }, + "type": "object" + }, + "GoogleDatastoreAdminV1Progress": { + "description": "Measures the progress of a particular metric.", + "id": "GoogleDatastoreAdminV1Progress", + "properties": { + "workCompleted": { + "description": "The amount of work that has been completed. Note that this may be greater\nthan work_estimated.", + "format": "int64", + "type": "string" + }, + "workEstimated": { + "description": "An estimate of how much work needs to be performed. May be zero if the\nwork estimate is unavailable.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "GoogleDatastoreAdminV1beta1CommonMetadata": { + "description": "Metadata common to all Datastore Admin operations.", + "id": "GoogleDatastoreAdminV1beta1CommonMetadata", + "properties": { + "endTime": { + "description": "The time the operation ended, either successfully or otherwise.", + "format": "google-datetime", + "type": "string" + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "The client-assigned labels which were provided when the operation was\ncreated. May also include additional labels.", + "type": "object" + }, + "operationType": { + "description": "The type of the operation. Can be used as a filter in\nListOperationsRequest.", + "enum": [ + "OPERATION_TYPE_UNSPECIFIED", + "EXPORT_ENTITIES", + "IMPORT_ENTITIES" + ], + "enumDescriptions": [ + "Unspecified.", + "ExportEntities.", + "ImportEntities." + ], + "type": "string" + }, + "startTime": { + "description": "The time that work began on the operation.", + "format": "google-datetime", + "type": "string" + }, + "state": { + "description": "The current state of the Operation.", "enum": [ "STATE_UNSPECIFIED", "INITIALIZING", @@ -210,54 +391,50 @@ "SUCCESSFUL", "FAILED", "CANCELLED" - ] - }, - "startTime": { - "description": "The time that work began on the operation.", - "format": "google-datetime", + ], + "enumDescriptions": [ + "Unspecified.", + "Request is being prepared for processing.", + "Request is actively being processed.", + "Request is in the process of being cancelled after user called\ngoogle.longrunning.Operations.CancelOperation on the operation.", + "Request has been processed and is in its finalization stage.", + "Request has completed successfully.", + "Request has finished being processed, but encountered an error.", + "Request has finished being cancelled after user called\ngoogle.longrunning.Operations.CancelOperation." + ], "type": "string" } }, - "id": "GoogleDatastoreAdminV1beta1CommonMetadata" + "type": "object" }, - "Status": { - "description": "The `Status` type defines a logical error model that is suitable for different\nprogramming environments, including REST APIs and RPC APIs. It is used by\n[gRPC](https://github.com/grpc). The error model is designed to be:\n\n- Simple to use and understand for most users\n- Flexible enough to meet unexpected needs\n\n# Overview\n\nThe `Status` message contains three pieces of data: error code, error message,\nand error details. The error code should be an enum value of\ngoogle.rpc.Code, but it may accept additional error codes if needed. The\nerror message should be a developer-facing English message that helps\ndevelopers *understand* and *resolve* the error. If a localized user-facing\nerror message is needed, put the localized message in the error details or\nlocalize it in the client. The optional error details may contain arbitrary\ninformation about the error. There is a predefined set of error detail types\nin the package `google.rpc` that can be used for common error conditions.\n\n# Language mapping\n\nThe `Status` message is the logical representation of the error model, but it\nis not necessarily the actual wire format. When the `Status` message is\nexposed in different client libraries and different wire protocols, it can be\nmapped differently. For example, it will likely be mapped to some exceptions\nin Java, but more likely mapped to some error codes in C.\n\n# Other uses\n\nThe error model and the `Status` message can be used in a variety of\nenvironments, either with or without APIs, to provide a\nconsistent developer experience across different environments.\n\nExample uses of this error model include:\n\n- Partial errors. If a service needs to return partial errors to the client,\n it may embed the `Status` in the normal response to indicate the partial\n errors.\n\n- Workflow errors. A typical workflow has multiple steps. Each step may\n have a `Status` message for error reporting.\n\n- Batch operations. If a client uses batch request and batch response, the\n `Status` message should be used directly inside batch response, one for\n each error sub-response.\n\n- Asynchronous operations. If an API call embeds asynchronous operation\n results in its response, the status of those operations should be\n represented directly using the `Status` message.\n\n- Logging. If some API errors are stored in logs, the message `Status` could\n be used directly after any stripping needed for security/privacy reasons.", - "type": "object", + "GoogleDatastoreAdminV1beta1EntityFilter": { + "description": "Identifies a subset of entities in a project. This is specified as\ncombinations of kinds and namespaces (either or both of which may be all, as\ndescribed in the following examples).\nExample usage:\n\nEntire project:\n kinds=[], namespace_ids=[]\n\nKinds Foo and Bar in all namespaces:\n kinds=['Foo', 'Bar'], namespace_ids=[]\n\nKinds Foo and Bar only in the default namespace:\n kinds=['Foo', 'Bar'], namespace_ids=['']\n\nKinds Foo and Bar in both the default and Baz namespaces:\n kinds=['Foo', 'Bar'], namespace_ids=['', 'Baz']\n\nThe entire Baz namespace:\n kinds=[], namespace_ids=['Baz']", + "id": "GoogleDatastoreAdminV1beta1EntityFilter", "properties": { - "message": { - "description": "A developer-facing error message, which should be in English. Any\nuser-facing error message should be localized and sent in the\ngoogle.rpc.Status.details field, or localized by the client.", - "type": "string" - }, - "details": { - "description": "A list of messages that carry the error details. There is a common set of\nmessage types for APIs to use.", - "type": "array", + "kinds": { + "description": "If empty, then this represents all kinds.", "items": { - "type": "object", - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - } - } + "type": "string" + }, + "type": "array" }, - "code": { - "description": "The status code, which should be an enum value of google.rpc.Code.", - "format": "int32", - "type": "integer" + "namespaceIds": { + "description": "An empty list represents all namespaces. This is the preferred\nusage for projects that don't use namespaces.\n\nAn empty string element represents the default namespace. This should be\nused if the project has data in non-default namespaces, but doesn't want to\ninclude them.\nEach namespace in this list must be unique.", + "items": { + "type": "string" + }, + "type": "array" } }, - "id": "Status" + "type": "object" }, "GoogleDatastoreAdminV1beta1ExportEntitiesMetadata": { "description": "Metadata for ExportEntities operations.", - "type": "object", + "id": "GoogleDatastoreAdminV1beta1ExportEntitiesMetadata", "properties": { "common": { - "description": "Metadata common to all Datastore Admin operations.", - "$ref": "GoogleDatastoreAdminV1beta1CommonMetadata" - }, - "progressBytes": { - "$ref": "GoogleDatastoreAdminV1beta1Progress", - "description": "An estimate of the number of bytes processed." + "$ref": "GoogleDatastoreAdminV1beta1CommonMetadata", + "description": "Metadata common to all Datastore Admin operations." }, "entityFilter": { "$ref": "GoogleDatastoreAdminV1beta1EntityFilter", @@ -267,131 +444,127 @@ "description": "Location for the export metadata and data files. This will be the same\nvalue as the\ngoogle.datastore.admin.v1beta1.ExportEntitiesRequest.output_url_prefix\nfield. The final output location is provided in\ngoogle.datastore.admin.v1beta1.ExportEntitiesResponse.output_url.", "type": "string" }, + "progressBytes": { + "$ref": "GoogleDatastoreAdminV1beta1Progress", + "description": "An estimate of the number of bytes processed." + }, "progressEntities": { "$ref": "GoogleDatastoreAdminV1beta1Progress", "description": "An estimate of the number of entities processed." } }, - "id": "GoogleDatastoreAdminV1beta1ExportEntitiesMetadata" + "type": "object" }, "GoogleDatastoreAdminV1beta1ExportEntitiesRequest": { "description": "The request for\ngoogle.datastore.admin.v1beta1.DatastoreAdmin.ExportEntities.", - "type": "object", + "id": "GoogleDatastoreAdminV1beta1ExportEntitiesRequest", "properties": { "entityFilter": { "$ref": "GoogleDatastoreAdminV1beta1EntityFilter", "description": "Description of what data from the project is included in the export." }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Client-assigned labels.", + "type": "object" + }, "outputUrlPrefix": { "description": "Location for the export metadata and data files.\n\nThe full resource URL of the external storage location. Currently, only\nGoogle Cloud Storage is supported. So output_url_prefix should be of the\nform: `gs://BUCKET_NAME[/NAMESPACE_PATH]`, where `BUCKET_NAME` is the\nname of the Cloud Storage bucket and `NAMESPACE_PATH` is an optional Cloud\nStorage namespace path (this is not a Cloud Datastore namespace). For more\ninformation about Cloud Storage namespace paths, see\n[Object name\nconsiderations](https://cloud.google.com/storage/docs/naming#object-considerations).\n\nThe resulting files will be nested deeper than the specified URL prefix.\nThe final output URL will be provided in the\ngoogle.datastore.admin.v1beta1.ExportEntitiesResponse.output_url\nfield. That value should be used for subsequent ImportEntities operations.\n\nBy nesting the data files deeper, the same Cloud Storage bucket can be used\nin multiple ExportEntities operations without conflict.", "type": "string" - }, - "labels": { - "description": "Client-assigned labels.", - "type": "object", - "additionalProperties": { - "type": "string" - } } }, - "id": "GoogleDatastoreAdminV1beta1ExportEntitiesRequest" + "type": "object" }, "GoogleDatastoreAdminV1beta1ExportEntitiesResponse": { "description": "The response for\ngoogle.datastore.admin.v1beta1.DatastoreAdmin.ExportEntities.", - "type": "object", + "id": "GoogleDatastoreAdminV1beta1ExportEntitiesResponse", "properties": { "outputUrl": { "description": "Location of the output metadata file. This can be used to begin an import\ninto Cloud Datastore (this project or another project). See\ngoogle.datastore.admin.v1beta1.ImportEntitiesRequest.input_url.\nOnly present if the operation completed successfully.", "type": "string" } }, - "id": "GoogleDatastoreAdminV1beta1ExportEntitiesResponse" + "type": "object" + }, + "GoogleDatastoreAdminV1beta1ImportEntitiesMetadata": { + "description": "Metadata for ImportEntities operations.", + "id": "GoogleDatastoreAdminV1beta1ImportEntitiesMetadata", + "properties": { + "common": { + "$ref": "GoogleDatastoreAdminV1beta1CommonMetadata", + "description": "Metadata common to all Datastore Admin operations." + }, + "entityFilter": { + "$ref": "GoogleDatastoreAdminV1beta1EntityFilter", + "description": "Description of which entities are being imported." + }, + "inputUrl": { + "description": "The location of the import metadata file. This will be the same value as\nthe google.datastore.admin.v1beta1.ExportEntitiesResponse.output_url\nfield.", + "type": "string" + }, + "progressBytes": { + "$ref": "GoogleDatastoreAdminV1beta1Progress", + "description": "An estimate of the number of bytes processed." + }, + "progressEntities": { + "$ref": "GoogleDatastoreAdminV1beta1Progress", + "description": "An estimate of the number of entities processed." + } + }, + "type": "object" }, "GoogleDatastoreAdminV1beta1ImportEntitiesRequest": { + "description": "The request for\ngoogle.datastore.admin.v1beta1.DatastoreAdmin.ImportEntities.", + "id": "GoogleDatastoreAdminV1beta1ImportEntitiesRequest", "properties": { + "entityFilter": { + "$ref": "GoogleDatastoreAdminV1beta1EntityFilter", + "description": "Optionally specify which kinds/namespaces are to be imported. If provided,\nthe list must be a subset of the EntityFilter used in creating the export,\notherwise a FAILED_PRECONDITION error will be returned. If no filter is\nspecified then all entities from the export are imported." + }, + "inputUrl": { + "description": "The full resource URL of the external storage location. Currently, only\nGoogle Cloud Storage is supported. So input_url should be of the form:\n`gs://BUCKET_NAME[/NAMESPACE_PATH]/OVERALL_EXPORT_METADATA_FILE`, where\n`BUCKET_NAME` is the name of the Cloud Storage bucket, `NAMESPACE_PATH` is\nan optional Cloud Storage namespace path (this is not a Cloud Datastore\nnamespace), and `OVERALL_EXPORT_METADATA_FILE` is the metadata file written\nby the ExportEntities operation. For more information about Cloud Storage\nnamespace paths, see\n[Object name\nconsiderations](https://cloud.google.com/storage/docs/naming#object-considerations).\n\nFor more information, see\ngoogle.datastore.admin.v1beta1.ExportEntitiesResponse.output_url.", + "type": "string" + }, "labels": { "additionalProperties": { "type": "string" }, "description": "Client-assigned labels.", "type": "object" - }, - "inputUrl": { - "description": "The full resource URL of the external storage location. Currently, only\nGoogle Cloud Storage is supported. So input_url should be of the form:\n`gs://BUCKET_NAME[/NAMESPACE_PATH]/OVERALL_EXPORT_METADATA_FILE`, where\n`BUCKET_NAME` is the name of the Cloud Storage bucket, `NAMESPACE_PATH` is\nan optional Cloud Storage namespace path (this is not a Cloud Datastore\nnamespace), and `OVERALL_EXPORT_METADATA_FILE` is the metadata file written\nby the ExportEntities operation. For more information about Cloud Storage\nnamespace paths, see\n[Object name\nconsiderations](https://cloud.google.com/storage/docs/naming#object-considerations).\n\nFor more information, see\ngoogle.datastore.admin.v1beta1.ExportEntitiesResponse.output_url.", - "type": "string" - }, - "entityFilter": { - "$ref": "GoogleDatastoreAdminV1beta1EntityFilter", - "description": "Optionally specify which kinds/namespaces are to be imported. If provided,\nthe list must be a subset of the EntityFilter used in creating the export,\notherwise a FAILED_PRECONDITION error will be returned. If no filter is\nspecified then all entities from the export are imported." } }, - "id": "GoogleDatastoreAdminV1beta1ImportEntitiesRequest", - "description": "The request for\ngoogle.datastore.admin.v1beta1.DatastoreAdmin.ImportEntities.", - "type": "object" - }, - "GoogleDatastoreAdminV1beta1ImportEntitiesMetadata": { - "properties": { - "progressBytes": { - "description": "An estimate of the number of bytes processed.", - "$ref": "GoogleDatastoreAdminV1beta1Progress" - }, - "inputUrl": { - "description": "The location of the import metadata file. This will be the same value as\nthe google.datastore.admin.v1beta1.ExportEntitiesResponse.output_url\nfield.", - "type": "string" - }, - "entityFilter": { - "$ref": "GoogleDatastoreAdminV1beta1EntityFilter", - "description": "Description of which entities are being imported." - }, - "progressEntities": { - "$ref": "GoogleDatastoreAdminV1beta1Progress", - "description": "An estimate of the number of entities processed." - }, - "common": { - "$ref": "GoogleDatastoreAdminV1beta1CommonMetadata", - "description": "Metadata common to all Datastore Admin operations." - } - }, - "id": "GoogleDatastoreAdminV1beta1ImportEntitiesMetadata", - "description": "Metadata for ImportEntities operations.", "type": "object" }, "GoogleDatastoreAdminV1beta1Progress": { "description": "Measures the progress of a particular metric.", - "type": "object", + "id": "GoogleDatastoreAdminV1beta1Progress", "properties": { - "workEstimated": { - "description": "An estimate of how much work needs to be performed. May be zero if the\nwork estimate is unavailable.", - "format": "int64", - "type": "string" - }, "workCompleted": { "description": "The amount of work that has been completed. Note that this may be greater\nthan work_estimated.", "format": "int64", "type": "string" + }, + "workEstimated": { + "description": "An estimate of how much work needs to be performed. May be zero if the\nwork estimate is unavailable.", + "format": "int64", + "type": "string" } }, - "id": "GoogleDatastoreAdminV1beta1Progress" + "type": "object" }, "GoogleLongrunningOperation": { "description": "This resource represents a long-running operation that is the result of a\nnetwork API call.", - "type": "object", + "id": "GoogleLongrunningOperation", "properties": { - "response": { - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - }, - "description": "The normal response of the operation in case of success. If the original\nmethod returns no data on success, such as `Delete`, the response is\n`google.protobuf.Empty`. If the original method is standard\n`Get`/`Create`/`Update`, the response should be the resource. For other\nmethods, the response should have the type `XxxResponse`, where `Xxx`\nis the original method name. For example, if the original method name\nis `TakeSnapshot()`, the inferred response type is\n`TakeSnapshotResponse`.", - "type": "object" - }, - "name": { - "description": "The server-assigned name, which is only unique within the same service that\noriginally returns it. If you use the default HTTP mapping, the\n`name` should have the format of `operations/some/unique/name`.", - "type": "string" + "done": { + "description": "If the value is `false`, it means the operation is still in progress.\nIf `true`, the operation is completed, and either `error` or `response` is\navailable.", + "type": "boolean" }, "error": { - "description": "The error result of the operation in case of failure or cancellation.", - "$ref": "Status" + "$ref": "Status", + "description": "The error result of the operation in case of failure or cancellation." }, "metadata": { "additionalProperties": { @@ -401,59 +574,51 @@ "description": "Service-specific metadata associated with the operation. It typically\ncontains progress information and common metadata such as create time.\nSome services might not provide such metadata. Any method that returns a\nlong-running operation should document the metadata type, if any.", "type": "object" }, - "done": { - "description": "If the value is `false`, it means the operation is still in progress.\nIf `true`, the operation is completed, and either `error` or `response` is\navailable.", - "type": "boolean" - } - }, - "id": "GoogleLongrunningOperation" - }, - "GoogleDatastoreAdminV1beta1EntityFilter": { - "properties": { - "kinds": { - "description": "If empty, then this represents all kinds.", - "type": "array", - "items": { - "type": "string" - } + "name": { + "description": "The server-assigned name, which is only unique within the same service that\noriginally returns it. If you use the default HTTP mapping, the\n`name` should have the format of `operations/some/unique/name`.", + "type": "string" }, - "namespaceIds": { - "description": "An empty list represents all namespaces. This is the preferred\nusage for projects that don't use namespaces.\n\nAn empty string element represents the default namespace. This should be\nused if the project has data in non-default namespaces, but doesn't want to\ninclude them.\nEach namespace in this list must be unique.", - "type": "array", - "items": { - "type": "string" - } + "response": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "description": "The normal response of the operation in case of success. If the original\nmethod returns no data on success, such as `Delete`, the response is\n`google.protobuf.Empty`. If the original method is standard\n`Get`/`Create`/`Update`, the response should be the resource. For other\nmethods, the response should have the type `XxxResponse`, where `Xxx`\nis the original method name. For example, if the original method name\nis `TakeSnapshot()`, the inferred response type is\n`TakeSnapshotResponse`.", + "type": "object" + } + }, + "type": "object" + }, + "Status": { + "description": "The `Status` type defines a logical error model that is suitable for different\nprogramming environments, including REST APIs and RPC APIs. It is used by\n[gRPC](https://github.com/grpc). The error model is designed to be:\n\n- Simple to use and understand for most users\n- Flexible enough to meet unexpected needs\n\n# Overview\n\nThe `Status` message contains three pieces of data: error code, error message,\nand error details. The error code should be an enum value of\ngoogle.rpc.Code, but it may accept additional error codes if needed. The\nerror message should be a developer-facing English message that helps\ndevelopers *understand* and *resolve* the error. If a localized user-facing\nerror message is needed, put the localized message in the error details or\nlocalize it in the client. The optional error details may contain arbitrary\ninformation about the error. There is a predefined set of error detail types\nin the package `google.rpc` that can be used for common error conditions.\n\n# Language mapping\n\nThe `Status` message is the logical representation of the error model, but it\nis not necessarily the actual wire format. When the `Status` message is\nexposed in different client libraries and different wire protocols, it can be\nmapped differently. For example, it will likely be mapped to some exceptions\nin Java, but more likely mapped to some error codes in C.\n\n# Other uses\n\nThe error model and the `Status` message can be used in a variety of\nenvironments, either with or without APIs, to provide a\nconsistent developer experience across different environments.\n\nExample uses of this error model include:\n\n- Partial errors. If a service needs to return partial errors to the client,\n it may embed the `Status` in the normal response to indicate the partial\n errors.\n\n- Workflow errors. A typical workflow has multiple steps. Each step may\n have a `Status` message for error reporting.\n\n- Batch operations. If a client uses batch request and batch response, the\n `Status` message should be used directly inside batch response, one for\n each error sub-response.\n\n- Asynchronous operations. If an API call embeds asynchronous operation\n results in its response, the status of those operations should be\n represented directly using the `Status` message.\n\n- Logging. If some API errors are stored in logs, the message `Status` could\n be used directly after any stripping needed for security/privacy reasons.", + "id": "Status", + "properties": { + "code": { + "description": "The status code, which should be an enum value of google.rpc.Code.", + "format": "int32", + "type": "integer" + }, + "details": { + "description": "A list of messages that carry the error details. There is a common set of\nmessage types for APIs to use.", + "items": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "A developer-facing error message, which should be in English. Any\nuser-facing error message should be localized and sent in the\ngoogle.rpc.Status.details field, or localized by the client.", + "type": "string" } }, - "id": "GoogleDatastoreAdminV1beta1EntityFilter", - "description": "Identifies a subset of entities in a project. This is specified as\ncombinations of kinds and namespaces (either or both of which may be all, as\ndescribed in the following examples).\nExample usage:\n\nEntire project:\n kinds=[], namespace_ids=[]\n\nKinds Foo and Bar in all namespaces:\n kinds=['Foo', 'Bar'], namespace_ids=[]\n\nKinds Foo and Bar only in the default namespace:\n kinds=['Foo', 'Bar'], namespace_ids=['']\n\nKinds Foo and Bar in both the default and Baz namespaces:\n kinds=['Foo', 'Bar'], namespace_ids=['', 'Baz']\n\nThe entire Baz namespace:\n kinds=[], namespace_ids=['Baz']", "type": "object" } }, - "icons": { - "x16": "http://www.google.com/images/icons/product/search-16.gif", - "x32": "http://www.google.com/images/icons/product/search-32.gif" - }, - "protocol": "rest", - "version": "v1beta1", - "baseUrl": "https://datastore.googleapis.com/", - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/datastore": { - "description": "View and manage your Google Cloud Datastore data" - }, - "https://www.googleapis.com/auth/cloud-platform": { - "description": "View and manage your data across Google Cloud Platform services" - } - } - } - }, - "kind": "discovery#restDescription", - "description": "Accesses the schemaless NoSQL database to provide fully managed, robust, scalable storage for your application.\n", "servicePath": "", - "rootUrl": "https://datastore.googleapis.com/", - "basePath": "", - "ownerDomain": "google.com", - "name": "datastore" -} + "title": "Google Cloud Datastore API", + "version": "v1beta1", + "version_module": true +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/datastore/v1beta1/datastore-gen.go b/vendor/google.golang.org/api/datastore/v1beta1/datastore-gen.go index 33ed9e909..4de19ecc4 100644 --- a/vendor/google.golang.org/api/datastore/v1beta1/datastore-gen.go +++ b/vendor/google.golang.org/api/datastore/v1beta1/datastore-gen.go @@ -87,6 +87,297 @@ type ProjectsService struct { s *Service } +// GoogleDatastoreAdminV1CommonMetadata: Metadata common to all +// Datastore Admin operations. +type GoogleDatastoreAdminV1CommonMetadata struct { + // EndTime: The time the operation ended, either successfully or + // otherwise. + EndTime string `json:"endTime,omitempty"` + + // Labels: The client-assigned labels which were provided when the + // operation was + // created. May also include additional labels. + Labels map[string]string `json:"labels,omitempty"` + + // OperationType: The type of the operation. Can be used as a filter + // in + // ListOperationsRequest. + // + // Possible values: + // "OPERATION_TYPE_UNSPECIFIED" - Unspecified. + // "EXPORT_ENTITIES" - ExportEntities. + // "IMPORT_ENTITIES" - ImportEntities. + OperationType string `json:"operationType,omitempty"` + + // StartTime: The time that work began on the operation. + StartTime string `json:"startTime,omitempty"` + + // State: The current state of the Operation. + // + // Possible values: + // "STATE_UNSPECIFIED" - Unspecified. + // "INITIALIZING" - Request is being prepared for processing. + // "PROCESSING" - Request is actively being processed. + // "CANCELLING" - Request is in the process of being cancelled after + // user called + // google.longrunning.Operations.CancelOperation on the operation. + // "FINALIZING" - Request has been processed and is in its + // finalization stage. + // "SUCCESSFUL" - Request has completed successfully. + // "FAILED" - Request has finished being processed, but encountered an + // error. + // "CANCELLED" - Request has finished being cancelled after user + // called + // google.longrunning.Operations.CancelOperation. + State string `json:"state,omitempty"` + + // ForceSendFields is a list of field names (e.g. "EndTime") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "EndTime") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleDatastoreAdminV1CommonMetadata) MarshalJSON() ([]byte, error) { + type NoMethod GoogleDatastoreAdminV1CommonMetadata + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleDatastoreAdminV1EntityFilter: Identifies a subset of entities +// in a project. This is specified as +// combinations of kinds and namespaces (either or both of which may be +// all, as +// described in the following examples). +// Example usage: +// +// Entire project: +// kinds=[], namespace_ids=[] +// +// Kinds Foo and Bar in all namespaces: +// kinds=['Foo', 'Bar'], namespace_ids=[] +// +// Kinds Foo and Bar only in the default namespace: +// kinds=['Foo', 'Bar'], namespace_ids=[''] +// +// Kinds Foo and Bar in both the default and Baz namespaces: +// kinds=['Foo', 'Bar'], namespace_ids=['', 'Baz'] +// +// The entire Baz namespace: +// kinds=[], namespace_ids=['Baz'] +type GoogleDatastoreAdminV1EntityFilter struct { + // Kinds: If empty, then this represents all kinds. + Kinds []string `json:"kinds,omitempty"` + + // NamespaceIds: An empty list represents all namespaces. This is the + // preferred + // usage for projects that don't use namespaces. + // + // An empty string element represents the default namespace. This should + // be + // used if the project has data in non-default namespaces, but doesn't + // want to + // include them. + // Each namespace in this list must be unique. + NamespaceIds []string `json:"namespaceIds,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Kinds") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Kinds") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleDatastoreAdminV1EntityFilter) MarshalJSON() ([]byte, error) { + type NoMethod GoogleDatastoreAdminV1EntityFilter + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleDatastoreAdminV1ExportEntitiesMetadata: Metadata for +// ExportEntities operations. +type GoogleDatastoreAdminV1ExportEntitiesMetadata struct { + // Common: Metadata common to all Datastore Admin operations. + Common *GoogleDatastoreAdminV1CommonMetadata `json:"common,omitempty"` + + // EntityFilter: Description of which entities are being exported. + EntityFilter *GoogleDatastoreAdminV1EntityFilter `json:"entityFilter,omitempty"` + + // OutputUrlPrefix: Location for the export metadata and data files. + // This will be the same + // value as + // the + // google.datastore.admin.v1.ExportEntitiesRequest.output_url_prefix + // + // field. The final output location is provided + // in + // google.datastore.admin.v1.ExportEntitiesResponse.output_url. + OutputUrlPrefix string `json:"outputUrlPrefix,omitempty"` + + // ProgressBytes: An estimate of the number of bytes processed. + ProgressBytes *GoogleDatastoreAdminV1Progress `json:"progressBytes,omitempty"` + + // ProgressEntities: An estimate of the number of entities processed. + ProgressEntities *GoogleDatastoreAdminV1Progress `json:"progressEntities,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Common") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Common") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleDatastoreAdminV1ExportEntitiesMetadata) MarshalJSON() ([]byte, error) { + type NoMethod GoogleDatastoreAdminV1ExportEntitiesMetadata + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleDatastoreAdminV1ExportEntitiesResponse: The response +// for +// google.datastore.admin.v1.DatastoreAdmin.ExportEntities. +type GoogleDatastoreAdminV1ExportEntitiesResponse struct { + // OutputUrl: Location of the output metadata file. This can be used to + // begin an import + // into Cloud Datastore (this project or another project). + // See + // google.datastore.admin.v1.ImportEntitiesRequest.input_url. + // Only present if the operation completed successfully. + OutputUrl string `json:"outputUrl,omitempty"` + + // ForceSendFields is a list of field names (e.g. "OutputUrl") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "OutputUrl") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleDatastoreAdminV1ExportEntitiesResponse) MarshalJSON() ([]byte, error) { + type NoMethod GoogleDatastoreAdminV1ExportEntitiesResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleDatastoreAdminV1ImportEntitiesMetadata: Metadata for +// ImportEntities operations. +type GoogleDatastoreAdminV1ImportEntitiesMetadata struct { + // Common: Metadata common to all Datastore Admin operations. + Common *GoogleDatastoreAdminV1CommonMetadata `json:"common,omitempty"` + + // EntityFilter: Description of which entities are being imported. + EntityFilter *GoogleDatastoreAdminV1EntityFilter `json:"entityFilter,omitempty"` + + // InputUrl: The location of the import metadata file. This will be the + // same value as + // the google.datastore.admin.v1.ExportEntitiesResponse.output_url + // field. + InputUrl string `json:"inputUrl,omitempty"` + + // ProgressBytes: An estimate of the number of bytes processed. + ProgressBytes *GoogleDatastoreAdminV1Progress `json:"progressBytes,omitempty"` + + // ProgressEntities: An estimate of the number of entities processed. + ProgressEntities *GoogleDatastoreAdminV1Progress `json:"progressEntities,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Common") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Common") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleDatastoreAdminV1ImportEntitiesMetadata) MarshalJSON() ([]byte, error) { + type NoMethod GoogleDatastoreAdminV1ImportEntitiesMetadata + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleDatastoreAdminV1Progress: Measures the progress of a particular +// metric. +type GoogleDatastoreAdminV1Progress struct { + // WorkCompleted: The amount of work that has been completed. Note that + // this may be greater + // than work_estimated. + WorkCompleted int64 `json:"workCompleted,omitempty,string"` + + // WorkEstimated: An estimate of how much work needs to be performed. + // May be zero if the + // work estimate is unavailable. + WorkEstimated int64 `json:"workEstimated,omitempty,string"` + + // ForceSendFields is a list of field names (e.g. "WorkCompleted") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "WorkCompleted") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleDatastoreAdminV1Progress) MarshalJSON() ([]byte, error) { + type NoMethod GoogleDatastoreAdminV1Progress + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // GoogleDatastoreAdminV1beta1CommonMetadata: Metadata common to all // Datastore Admin operations. type GoogleDatastoreAdminV1beta1CommonMetadata struct { diff --git a/vendor/google.golang.org/api/datastore/v1beta3/datastore-api.json b/vendor/google.golang.org/api/datastore/v1beta3/datastore-api.json index 9e8cac2b1..513795645 100644 --- a/vendor/google.golang.org/api/datastore/v1beta3/datastore-api.json +++ b/vendor/google.golang.org/api/datastore/v1beta3/datastore-api.json @@ -11,470 +11,663 @@ } } }, - "kind": "discovery#restDescription", - "description": "Accesses the schemaless NoSQL database to provide fully managed, robust, scalable storage for your application.\n", - "servicePath": "", - "rootUrl": "https://datastore.googleapis.com/", "basePath": "", - "ownerDomain": "google.com", - "name": "datastore", + "baseUrl": "https://datastore.googleapis.com/", "batchPath": "batch", - "revision": "20180109", - "documentationLink": "https://cloud.google.com/datastore/", - "id": "datastore:v1beta3", - "title": "Google Cloud Datastore API", + "description": "Accesses the schemaless NoSQL database to provide fully managed, robust, scalable storage for your application.\n", "discoveryVersion": "v1", - "ownerName": "Google", - "version_module": true, - "resources": { - "projects": { - "methods": { - "allocateIds": { - "response": { - "$ref": "AllocateIdsResponse" - }, - "parameterOrder": [ - "projectId" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/datastore" - ], - "parameters": { - "projectId": { - "description": "The ID of the project against which to make the request.", - "required": true, - "type": "string", - "location": "path" - } - }, - "flatPath": "v1beta3/projects/{projectId}:allocateIds", - "path": "v1beta3/projects/{projectId}:allocateIds", - "id": "datastore.projects.allocateIds", - "description": "Allocates IDs for the given keys, which is useful for referencing an entity\nbefore it is inserted.", - "request": { - "$ref": "AllocateIdsRequest" - } - }, - "commit": { - "response": { - "$ref": "CommitResponse" - }, - "parameterOrder": [ - "projectId" - ], - "httpMethod": "POST", - "parameters": { - "projectId": { - "description": "The ID of the project against which to make the request.", - "required": true, - "type": "string", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/datastore" - ], - "flatPath": "v1beta3/projects/{projectId}:commit", - "path": "v1beta3/projects/{projectId}:commit", - "id": "datastore.projects.commit", - "request": { - "$ref": "CommitRequest" - }, - "description": "Commits a transaction, optionally creating, deleting or modifying some\nentities." - }, - "beginTransaction": { - "description": "Begins a new transaction.", - "request": { - "$ref": "BeginTransactionRequest" - }, - "response": { - "$ref": "BeginTransactionResponse" - }, - "parameterOrder": [ - "projectId" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/datastore" - ], - "parameters": { - "projectId": { - "location": "path", - "description": "The ID of the project against which to make the request.", - "required": true, - "type": "string" - } - }, - "flatPath": "v1beta3/projects/{projectId}:beginTransaction", - "path": "v1beta3/projects/{projectId}:beginTransaction", - "id": "datastore.projects.beginTransaction" - }, - "reserveIds": { - "response": { - "$ref": "ReserveIdsResponse" - }, - "parameterOrder": [ - "projectId" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/datastore" - ], - "parameters": { - "projectId": { - "description": "The ID of the project against which to make the request.", - "required": true, - "type": "string", - "location": "path" - } - }, - "flatPath": "v1beta3/projects/{projectId}:reserveIds", - "path": "v1beta3/projects/{projectId}:reserveIds", - "id": "datastore.projects.reserveIds", - "description": "Prevents the supplied keys' IDs from being auto-allocated by Cloud\nDatastore.", - "request": { - "$ref": "ReserveIdsRequest" - } - }, - "runQuery": { - "response": { - "$ref": "RunQueryResponse" - }, - "parameterOrder": [ - "projectId" - ], - "httpMethod": "POST", - "parameters": { - "projectId": { - "location": "path", - "description": "The ID of the project against which to make the request.", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/datastore" - ], - "flatPath": "v1beta3/projects/{projectId}:runQuery", - "path": "v1beta3/projects/{projectId}:runQuery", - "id": "datastore.projects.runQuery", - "request": { - "$ref": "RunQueryRequest" - }, - "description": "Queries for entities." - }, - "rollback": { - "response": { - "$ref": "RollbackResponse" - }, - "parameterOrder": [ - "projectId" - ], - "httpMethod": "POST", - "parameters": { - "projectId": { - "description": "The ID of the project against which to make the request.", - "required": true, - "type": "string", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/datastore" - ], - "flatPath": "v1beta3/projects/{projectId}:rollback", - "path": "v1beta3/projects/{projectId}:rollback", - "id": "datastore.projects.rollback", - "request": { - "$ref": "RollbackRequest" - }, - "description": "Rolls back a transaction." - }, - "lookup": { - "response": { - "$ref": "LookupResponse" - }, - "parameterOrder": [ - "projectId" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/datastore" - ], - "parameters": { - "projectId": { - "location": "path", - "description": "The ID of the project against which to make the request.", - "required": true, - "type": "string" - } - }, - "flatPath": "v1beta3/projects/{projectId}:lookup", - "path": "v1beta3/projects/{projectId}:lookup", - "id": "datastore.projects.lookup", - "description": "Looks up entities by key.", - "request": { - "$ref": "LookupRequest" - } - } - } - } + "documentationLink": "https://cloud.google.com/datastore/", + "icons": { + "x16": "http://www.google.com/images/icons/product/search-16.gif", + "x32": "http://www.google.com/images/icons/product/search-32.gif" }, + "id": "datastore:v1beta3", + "kind": "discovery#restDescription", + "name": "datastore", + "ownerDomain": "google.com", + "ownerName": "Google", "parameters": { - "bearer_token": { - "location": "query", - "description": "OAuth bearer token.", - "type": "string" - }, - "oauth_token": { - "location": "query", - "description": "OAuth 2.0 token for the current user.", - "type": "string" - }, - "upload_protocol": { - "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", - "type": "string", - "location": "query" - }, - "prettyPrint": { - "description": "Returns response with indentations and line breaks.", - "type": "boolean", - "default": "true", - "location": "query" - }, - "fields": { - "location": "query", - "description": "Selector specifying which fields to include in a partial response.", - "type": "string" - }, - "uploadType": { - "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", - "type": "string", - "location": "query" - }, - "callback": { - "description": "JSONP", - "type": "string", - "location": "query" - }, "$.xgafv": { + "description": "V1 error format.", + "enum": [ + "1", + "2" + ], "enumDescriptions": [ "v1 error format", "v2 error format" ], "location": "query", - "enum": [ - "1", - "2" - ], - "description": "V1 error format.", + "type": "string" + }, + "access_token": { + "description": "OAuth access token.", + "location": "query", "type": "string" }, "alt": { + "default": "json", + "description": "Data format for response.", "enum": [ "json", "media", "proto" ], - "type": "string", "enumDescriptions": [ "Responses with Content-Type of application/json", "Media download with context-dependent Content-Type", "Responses with Content-Type of application/x-protobuf" ], "location": "query", - "description": "Data format for response.", - "default": "json" + "type": "string" }, - "access_token": { - "description": "OAuth access token.", - "type": "string", - "location": "query" + "bearer_token": { + "description": "OAuth bearer token.", + "location": "query", + "type": "string" + }, + "callback": { + "description": "JSONP", + "location": "query", + "type": "string" + }, + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "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.", - "type": "string", - "location": "query" - }, - "quotaUser": { "location": "query", - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", + "type": "string" + }, + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", "type": "string" }, "pp": { - "description": "Pretty-print response.", - "type": "boolean", "default": "true", - "location": "query" + "description": "Pretty-print response.", + "location": "query", + "type": "boolean" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", + "location": "query", + "type": "string" + }, + "uploadType": { + "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", + "location": "query", + "type": "string" + }, + "upload_protocol": { + "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", + "location": "query", + "type": "string" } }, + "protocol": "rest", + "resources": { + "projects": { + "methods": { + "allocateIds": { + "description": "Allocates IDs for the given keys, which is useful for referencing an entity\nbefore it is inserted.", + "flatPath": "v1beta3/projects/{projectId}:allocateIds", + "httpMethod": "POST", + "id": "datastore.projects.allocateIds", + "parameterOrder": [ + "projectId" + ], + "parameters": { + "projectId": { + "description": "The ID of the project against which to make the request.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1beta3/projects/{projectId}:allocateIds", + "request": { + "$ref": "AllocateIdsRequest" + }, + "response": { + "$ref": "AllocateIdsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/datastore" + ] + }, + "beginTransaction": { + "description": "Begins a new transaction.", + "flatPath": "v1beta3/projects/{projectId}:beginTransaction", + "httpMethod": "POST", + "id": "datastore.projects.beginTransaction", + "parameterOrder": [ + "projectId" + ], + "parameters": { + "projectId": { + "description": "The ID of the project against which to make the request.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1beta3/projects/{projectId}:beginTransaction", + "request": { + "$ref": "BeginTransactionRequest" + }, + "response": { + "$ref": "BeginTransactionResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/datastore" + ] + }, + "commit": { + "description": "Commits a transaction, optionally creating, deleting or modifying some\nentities.", + "flatPath": "v1beta3/projects/{projectId}:commit", + "httpMethod": "POST", + "id": "datastore.projects.commit", + "parameterOrder": [ + "projectId" + ], + "parameters": { + "projectId": { + "description": "The ID of the project against which to make the request.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1beta3/projects/{projectId}:commit", + "request": { + "$ref": "CommitRequest" + }, + "response": { + "$ref": "CommitResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/datastore" + ] + }, + "lookup": { + "description": "Looks up entities by key.", + "flatPath": "v1beta3/projects/{projectId}:lookup", + "httpMethod": "POST", + "id": "datastore.projects.lookup", + "parameterOrder": [ + "projectId" + ], + "parameters": { + "projectId": { + "description": "The ID of the project against which to make the request.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1beta3/projects/{projectId}:lookup", + "request": { + "$ref": "LookupRequest" + }, + "response": { + "$ref": "LookupResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/datastore" + ] + }, + "reserveIds": { + "description": "Prevents the supplied keys' IDs from being auto-allocated by Cloud\nDatastore.", + "flatPath": "v1beta3/projects/{projectId}:reserveIds", + "httpMethod": "POST", + "id": "datastore.projects.reserveIds", + "parameterOrder": [ + "projectId" + ], + "parameters": { + "projectId": { + "description": "The ID of the project against which to make the request.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1beta3/projects/{projectId}:reserveIds", + "request": { + "$ref": "ReserveIdsRequest" + }, + "response": { + "$ref": "ReserveIdsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/datastore" + ] + }, + "rollback": { + "description": "Rolls back a transaction.", + "flatPath": "v1beta3/projects/{projectId}:rollback", + "httpMethod": "POST", + "id": "datastore.projects.rollback", + "parameterOrder": [ + "projectId" + ], + "parameters": { + "projectId": { + "description": "The ID of the project against which to make the request.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1beta3/projects/{projectId}:rollback", + "request": { + "$ref": "RollbackRequest" + }, + "response": { + "$ref": "RollbackResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/datastore" + ] + }, + "runQuery": { + "description": "Queries for entities.", + "flatPath": "v1beta3/projects/{projectId}:runQuery", + "httpMethod": "POST", + "id": "datastore.projects.runQuery", + "parameterOrder": [ + "projectId" + ], + "parameters": { + "projectId": { + "description": "The ID of the project against which to make the request.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1beta3/projects/{projectId}:runQuery", + "request": { + "$ref": "RunQueryRequest" + }, + "response": { + "$ref": "RunQueryResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/datastore" + ] + } + } + } + }, + "revision": "20180321", + "rootUrl": "https://datastore.googleapis.com/", "schemas": { - "EntityResult": { + "AllocateIdsRequest": { + "description": "The request for Datastore.AllocateIds.", + "id": "AllocateIdsRequest", "properties": { - "cursor": { - "description": "A cursor that points to the position after the result entity.\nSet only when the `EntityResult` is part of a `QueryResultBatch` message.", - "format": "byte", - "type": "string" - }, - "version": { - "description": "The version of the entity, a strictly positive number that monotonically\nincreases with changes to the entity.\n\nThis field is set for `FULL` entity\nresults.\n\nFor missing entities in `LookupResponse`, this\nis the version of the snapshot that was used to look up the entity, and it\nis always set except for eventually consistent reads.", - "format": "int64", - "type": "string" - }, - "entity": { - "description": "The resulting entity.", - "$ref": "Entity" + "keys": { + "description": "A list of keys with incomplete key paths for which to allocate IDs.\nNo key may be reserved/read-only.", + "items": { + "$ref": "Key" + }, + "type": "array" + } + }, + "type": "object" + }, + "AllocateIdsResponse": { + "description": "The response for Datastore.AllocateIds.", + "id": "AllocateIdsResponse", + "properties": { + "keys": { + "description": "The keys specified in the request (in the same order), each with\nits key path completed with a newly allocated ID.", + "items": { + "$ref": "Key" + }, + "type": "array" + } + }, + "type": "object" + }, + "ArrayValue": { + "description": "An array value.", + "id": "ArrayValue", + "properties": { + "values": { + "description": "Values in the array.\nThe order of this array may not be preserved if it contains a mix of\nindexed and unindexed values.", + "items": { + "$ref": "Value" + }, + "type": "array" + } + }, + "type": "object" + }, + "BeginTransactionRequest": { + "description": "The request for Datastore.BeginTransaction.", + "id": "BeginTransactionRequest", + "properties": { + "transactionOptions": { + "$ref": "TransactionOptions", + "description": "Options for a new transaction." + } + }, + "type": "object" + }, + "BeginTransactionResponse": { + "description": "The response for Datastore.BeginTransaction.", + "id": "BeginTransactionResponse", + "properties": { + "transaction": { + "description": "The transaction identifier (always present).", + "format": "byte", + "type": "string" + } + }, + "type": "object" + }, + "CommitRequest": { + "description": "The request for Datastore.Commit.", + "id": "CommitRequest", + "properties": { + "mode": { + "description": "The type of commit to perform. Defaults to `TRANSACTIONAL`.", + "enum": [ + "MODE_UNSPECIFIED", + "TRANSACTIONAL", + "NON_TRANSACTIONAL" + ], + "enumDescriptions": [ + "Unspecified. This value must not be used.", + "Transactional: The mutations are either all applied, or none are applied.\nLearn about transactions [here](https://cloud.google.com/datastore/docs/concepts/transactions).", + "Non-transactional: The mutations may not apply as all or none." + ], + "type": "string" + }, + "mutations": { + "description": "The mutations to perform.\n\nWhen mode is `TRANSACTIONAL`, mutations affecting a single entity are\napplied in order. The following sequences of mutations affecting a single\nentity are not permitted in a single `Commit` request:\n\n- `insert` followed by `insert`\n- `update` followed by `insert`\n- `upsert` followed by `insert`\n- `delete` followed by `update`\n\nWhen mode is `NON_TRANSACTIONAL`, no two mutations may affect a single\nentity.", + "items": { + "$ref": "Mutation" + }, + "type": "array" + }, + "transaction": { + "description": "The identifier of the transaction associated with the commit. A\ntransaction identifier is returned by a call to\nDatastore.BeginTransaction.", + "format": "byte", + "type": "string" } }, - "id": "EntityResult", - "description": "The result of fetching an entity from Datastore.", "type": "object" }, "CommitResponse": { "description": "The response for Datastore.Commit.", - "type": "object", + "id": "CommitResponse", "properties": { - "mutationResults": { - "description": "The result of performing the mutations.\nThe i-th mutation result corresponds to the i-th mutation in the request.", - "type": "array", - "items": { - "$ref": "MutationResult" - } - }, "indexUpdates": { "description": "The number of index entries updated during the commit, or zero if none were\nupdated.", "format": "int32", "type": "integer" + }, + "mutationResults": { + "description": "The result of performing the mutations.\nThe i-th mutation result corresponds to the i-th mutation in the request.", + "items": { + "$ref": "MutationResult" + }, + "type": "array" } }, - "id": "CommitResponse" + "type": "object" }, - "Value": { + "CompositeFilter": { + "description": "A filter that merges multiple other filters using the given operator.", + "id": "CompositeFilter", "properties": { - "keyValue": { - "$ref": "Key", - "description": "A key value." + "filters": { + "description": "The list of filters to combine.\nMust contain at least one filter.", + "items": { + "$ref": "Filter" + }, + "type": "array" }, - "integerValue": { - "description": "An integer value.", - "format": "int64", - "type": "string" - }, - "stringValue": { - "description": "A UTF-8 encoded string value.\nWhen `exclude_from_indexes` is false (it is indexed) , may have at most 1500 bytes.\nOtherwise, may be set to at least 1,000,000 bytes.", - "type": "string" - }, - "excludeFromIndexes": { - "description": "If the value should be excluded from all indexes including those defined\nexplicitly.", - "type": "boolean" - }, - "doubleValue": { - "description": "A double value.", - "format": "double", - "type": "number" - }, - "timestampValue": { - "description": "A timestamp value.\nWhen stored in the Datastore, precise only to microseconds;\nany additional precision is rounded down.", - "format": "google-datetime", - "type": "string" - }, - "booleanValue": { - "description": "A boolean value.", - "type": "boolean" - }, - "nullValue": { - "enumDescriptions": [ - "Null value." - ], + "op": { + "description": "The operator for combining multiple filters.", "enum": [ - "NULL_VALUE" + "OPERATOR_UNSPECIFIED", + "AND" + ], + "enumDescriptions": [ + "Unspecified. This value must not be used.", + "The results are required to satisfy each of the combined filters." ], - "description": "A null value.", "type": "string" - }, - "blobValue": { - "description": "A blob value.\nMay have at most 1,000,000 bytes.\nWhen `exclude_from_indexes` is false, may have at most 1500 bytes.\nIn JSON requests, must be base64-encoded.", - "format": "byte", - "type": "string" - }, - "meaning": { - "description": "The `meaning` field should only be populated for backwards compatibility.", - "format": "int32", - "type": "integer" - }, - "arrayValue": { - "$ref": "ArrayValue", - "description": "An array value.\nCannot contain another array value.\nA `Value` instance that sets field `array_value` must not set fields\n`meaning` or `exclude_from_indexes`." - }, - "entityValue": { - "$ref": "Entity", - "description": "An entity value.\n\n- May have no key.\n- May have a key with an incomplete key path.\n- May have a reserved/read-only key." - }, - "geoPointValue": { - "description": "A geo point value representing a point on the surface of Earth.", - "$ref": "LatLng" } }, - "id": "Value", - "description": "A message that can hold any of the supported value types and associated\nmetadata.", "type": "object" }, - "PartitionId": { - "properties": { - "namespaceId": { - "description": "If not empty, the ID of the namespace to which the entities belong.", - "type": "string" - }, - "projectId": { - "description": "The ID of the project to which the entities belong.", - "type": "string" - } - }, - "id": "PartitionId", - "description": "A partition ID identifies a grouping of entities. The grouping is always\nby project and namespace, however the namespace ID may be empty.\n\nA partition ID contains several dimensions:\nproject ID and namespace ID.\n\nPartition dimensions:\n\n- May be `\"\"`.\n- Must be valid UTF-8 bytes.\n- Must have values that match regex `[A-Za-z\\d\\.\\-_]{1,100}`\nIf the value of any dimension matches regex `__.*__`, the partition is\nreserved/read-only.\nA reserved/read-only partition ID is forbidden in certain documented\ncontexts.\n\nForeign partition IDs (in which the project ID does\nnot match the context project ID ) are discouraged.\nReads and writes of foreign partition IDs may fail if the project is not in an active state.", - "type": "object" - }, - "ReadWrite": { - "description": "Options specific to read / write transactions.", - "type": "object", - "properties": { - "previousTransaction": { - "description": "The transaction identifier of the transaction being retried.", - "format": "byte", - "type": "string" - } - }, - "id": "ReadWrite" - }, "Entity": { "description": "A Datastore data object.\n\nAn entity is limited to 1 megabyte when stored. That _roughly_\ncorresponds to a limit of 1 megabyte for the serialized form of this\nmessage.", - "type": "object", + "id": "Entity", "properties": { + "key": { + "$ref": "Key", + "description": "The entity's key.\n\nAn entity must have a key, unless otherwise documented (for example,\nan entity in `Value.entity_value` may have no key).\nAn entity's kind is its key path's last element's kind,\nor null if it has no key." + }, "properties": { "additionalProperties": { "$ref": "Value" }, "description": "The entity's properties.\nThe map's keys are property names.\nA property name matching regex `__.*__` is reserved.\nA reserved property name is forbidden in certain documented contexts.\nThe name must not contain more than 500 characters.\nThe name cannot be `\"\"`.", "type": "object" - }, - "key": { - "$ref": "Key", - "description": "The entity's key.\n\nAn entity must have a key, unless otherwise documented (for example,\nan entity in `Value.entity_value` may have no key).\nAn entity's kind is its key path's last element's kind,\nor null if it has no key." } }, - "id": "Entity" + "type": "object" }, - "GoogleDatastoreAdminV1beta1Progress": { + "EntityResult": { + "description": "The result of fetching an entity from Datastore.", + "id": "EntityResult", + "properties": { + "cursor": { + "description": "A cursor that points to the position after the result entity.\nSet only when the `EntityResult` is part of a `QueryResultBatch` message.", + "format": "byte", + "type": "string" + }, + "entity": { + "$ref": "Entity", + "description": "The resulting entity." + }, + "version": { + "description": "The version of the entity, a strictly positive number that monotonically\nincreases with changes to the entity.\n\nThis field is set for `FULL` entity\nresults.\n\nFor missing entities in `LookupResponse`, this\nis the version of the snapshot that was used to look up the entity, and it\nis always set except for eventually consistent reads.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "Filter": { + "description": "A holder for any type of filter.", + "id": "Filter", + "properties": { + "compositeFilter": { + "$ref": "CompositeFilter", + "description": "A composite filter." + }, + "propertyFilter": { + "$ref": "PropertyFilter", + "description": "A filter on a property." + } + }, + "type": "object" + }, + "GoogleDatastoreAdminV1CommonMetadata": { + "description": "Metadata common to all Datastore Admin operations.", + "id": "GoogleDatastoreAdminV1CommonMetadata", + "properties": { + "endTime": { + "description": "The time the operation ended, either successfully or otherwise.", + "format": "google-datetime", + "type": "string" + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "The client-assigned labels which were provided when the operation was\ncreated. May also include additional labels.", + "type": "object" + }, + "operationType": { + "description": "The type of the operation. Can be used as a filter in\nListOperationsRequest.", + "enum": [ + "OPERATION_TYPE_UNSPECIFIED", + "EXPORT_ENTITIES", + "IMPORT_ENTITIES" + ], + "enumDescriptions": [ + "Unspecified.", + "ExportEntities.", + "ImportEntities." + ], + "type": "string" + }, + "startTime": { + "description": "The time that work began on the operation.", + "format": "google-datetime", + "type": "string" + }, + "state": { + "description": "The current state of the Operation.", + "enum": [ + "STATE_UNSPECIFIED", + "INITIALIZING", + "PROCESSING", + "CANCELLING", + "FINALIZING", + "SUCCESSFUL", + "FAILED", + "CANCELLED" + ], + "enumDescriptions": [ + "Unspecified.", + "Request is being prepared for processing.", + "Request is actively being processed.", + "Request is in the process of being cancelled after user called\ngoogle.longrunning.Operations.CancelOperation on the operation.", + "Request has been processed and is in its finalization stage.", + "Request has completed successfully.", + "Request has finished being processed, but encountered an error.", + "Request has finished being cancelled after user called\ngoogle.longrunning.Operations.CancelOperation." + ], + "type": "string" + } + }, + "type": "object" + }, + "GoogleDatastoreAdminV1EntityFilter": { + "description": "Identifies a subset of entities in a project. This is specified as\ncombinations of kinds and namespaces (either or both of which may be all, as\ndescribed in the following examples).\nExample usage:\n\nEntire project:\n kinds=[], namespace_ids=[]\n\nKinds Foo and Bar in all namespaces:\n kinds=['Foo', 'Bar'], namespace_ids=[]\n\nKinds Foo and Bar only in the default namespace:\n kinds=['Foo', 'Bar'], namespace_ids=['']\n\nKinds Foo and Bar in both the default and Baz namespaces:\n kinds=['Foo', 'Bar'], namespace_ids=['', 'Baz']\n\nThe entire Baz namespace:\n kinds=[], namespace_ids=['Baz']", + "id": "GoogleDatastoreAdminV1EntityFilter", + "properties": { + "kinds": { + "description": "If empty, then this represents all kinds.", + "items": { + "type": "string" + }, + "type": "array" + }, + "namespaceIds": { + "description": "An empty list represents all namespaces. This is the preferred\nusage for projects that don't use namespaces.\n\nAn empty string element represents the default namespace. This should be\nused if the project has data in non-default namespaces, but doesn't want to\ninclude them.\nEach namespace in this list must be unique.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "GoogleDatastoreAdminV1ExportEntitiesMetadata": { + "description": "Metadata for ExportEntities operations.", + "id": "GoogleDatastoreAdminV1ExportEntitiesMetadata", + "properties": { + "common": { + "$ref": "GoogleDatastoreAdminV1CommonMetadata", + "description": "Metadata common to all Datastore Admin operations." + }, + "entityFilter": { + "$ref": "GoogleDatastoreAdminV1EntityFilter", + "description": "Description of which entities are being exported." + }, + "outputUrlPrefix": { + "description": "Location for the export metadata and data files. This will be the same\nvalue as the\ngoogle.datastore.admin.v1.ExportEntitiesRequest.output_url_prefix\nfield. The final output location is provided in\ngoogle.datastore.admin.v1.ExportEntitiesResponse.output_url.", + "type": "string" + }, + "progressBytes": { + "$ref": "GoogleDatastoreAdminV1Progress", + "description": "An estimate of the number of bytes processed." + }, + "progressEntities": { + "$ref": "GoogleDatastoreAdminV1Progress", + "description": "An estimate of the number of entities processed." + } + }, + "type": "object" + }, + "GoogleDatastoreAdminV1ExportEntitiesResponse": { + "description": "The response for\ngoogle.datastore.admin.v1.DatastoreAdmin.ExportEntities.", + "id": "GoogleDatastoreAdminV1ExportEntitiesResponse", + "properties": { + "outputUrl": { + "description": "Location of the output metadata file. This can be used to begin an import\ninto Cloud Datastore (this project or another project). See\ngoogle.datastore.admin.v1.ImportEntitiesRequest.input_url.\nOnly present if the operation completed successfully.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleDatastoreAdminV1ImportEntitiesMetadata": { + "description": "Metadata for ImportEntities operations.", + "id": "GoogleDatastoreAdminV1ImportEntitiesMetadata", + "properties": { + "common": { + "$ref": "GoogleDatastoreAdminV1CommonMetadata", + "description": "Metadata common to all Datastore Admin operations." + }, + "entityFilter": { + "$ref": "GoogleDatastoreAdminV1EntityFilter", + "description": "Description of which entities are being imported." + }, + "inputUrl": { + "description": "The location of the import metadata file. This will be the same value as\nthe google.datastore.admin.v1.ExportEntitiesResponse.output_url field.", + "type": "string" + }, + "progressBytes": { + "$ref": "GoogleDatastoreAdminV1Progress", + "description": "An estimate of the number of bytes processed." + }, + "progressEntities": { + "$ref": "GoogleDatastoreAdminV1Progress", + "description": "An estimate of the number of entities processed." + } + }, + "type": "object" + }, + "GoogleDatastoreAdminV1Progress": { "description": "Measures the progress of a particular metric.", - "type": "object", + "id": "GoogleDatastoreAdminV1Progress", "properties": { "workCompleted": { "description": "The amount of work that has been completed. Note that this may be greater\nthan work_estimated.", @@ -487,135 +680,205 @@ "type": "string" } }, - "id": "GoogleDatastoreAdminV1beta1Progress" + "type": "object" }, - "QueryResultBatch": { + "GoogleDatastoreAdminV1beta1CommonMetadata": { + "description": "Metadata common to all Datastore Admin operations.", + "id": "GoogleDatastoreAdminV1beta1CommonMetadata", "properties": { - "skippedCursor": { - "description": "A cursor that points to the position after the last skipped result.\nWill be set when `skipped_results` != 0.", - "format": "byte", + "endTime": { + "description": "The time the operation ended, either successfully or otherwise.", + "format": "google-datetime", "type": "string" }, - "skippedResults": { - "description": "The number of results skipped, typically because of an offset.", - "format": "int32", - "type": "integer" + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "The client-assigned labels which were provided when the operation was\ncreated. May also include additional labels.", + "type": "object" }, - "entityResultType": { - "enumDescriptions": [ - "Unspecified. This value is never used.", - "The key and properties.", - "A projected subset of properties. The entity may have no key.", - "Only the key." - ], + "operationType": { + "description": "The type of the operation. Can be used as a filter in\nListOperationsRequest.", "enum": [ - "RESULT_TYPE_UNSPECIFIED", - "FULL", - "PROJECTION", - "KEY_ONLY" + "OPERATION_TYPE_UNSPECIFIED", + "EXPORT_ENTITIES", + "IMPORT_ENTITIES" + ], + "enumDescriptions": [ + "Unspecified.", + "ExportEntities.", + "ImportEntities." ], - "description": "The result type for every entity in `entity_results`.", "type": "string" }, - "entityResults": { - "description": "The results for this batch.", - "type": "array", + "startTime": { + "description": "The time that work began on the operation.", + "format": "google-datetime", + "type": "string" + }, + "state": { + "description": "The current state of the Operation.", + "enum": [ + "STATE_UNSPECIFIED", + "INITIALIZING", + "PROCESSING", + "CANCELLING", + "FINALIZING", + "SUCCESSFUL", + "FAILED", + "CANCELLED" + ], + "enumDescriptions": [ + "Unspecified.", + "Request is being prepared for processing.", + "Request is actively being processed.", + "Request is in the process of being cancelled after user called\ngoogle.longrunning.Operations.CancelOperation on the operation.", + "Request has been processed and is in its finalization stage.", + "Request has completed successfully.", + "Request has finished being processed, but encountered an error.", + "Request has finished being cancelled after user called\ngoogle.longrunning.Operations.CancelOperation." + ], + "type": "string" + } + }, + "type": "object" + }, + "GoogleDatastoreAdminV1beta1EntityFilter": { + "description": "Identifies a subset of entities in a project. This is specified as\ncombinations of kinds and namespaces (either or both of which may be all, as\ndescribed in the following examples).\nExample usage:\n\nEntire project:\n kinds=[], namespace_ids=[]\n\nKinds Foo and Bar in all namespaces:\n kinds=['Foo', 'Bar'], namespace_ids=[]\n\nKinds Foo and Bar only in the default namespace:\n kinds=['Foo', 'Bar'], namespace_ids=['']\n\nKinds Foo and Bar in both the default and Baz namespaces:\n kinds=['Foo', 'Bar'], namespace_ids=['', 'Baz']\n\nThe entire Baz namespace:\n kinds=[], namespace_ids=['Baz']", + "id": "GoogleDatastoreAdminV1beta1EntityFilter", + "properties": { + "kinds": { + "description": "If empty, then this represents all kinds.", "items": { - "$ref": "EntityResult" - } + "type": "string" + }, + "type": "array" }, - "moreResults": { - "enumDescriptions": [ - "Unspecified. This value is never used.", - "There may be additional batches to fetch from this query.", - "The query is finished, but there may be more results after the limit.", - "The query is finished, but there may be more results after the end\ncursor.", - "The query is finished, and there are no more results." - ], - "enum": [ - "MORE_RESULTS_TYPE_UNSPECIFIED", - "NOT_FINISHED", - "MORE_RESULTS_AFTER_LIMIT", - "MORE_RESULTS_AFTER_CURSOR", - "NO_MORE_RESULTS" - ], - "description": "The state of the query after the current batch.", + "namespaceIds": { + "description": "An empty list represents all namespaces. This is the preferred\nusage for projects that don't use namespaces.\n\nAn empty string element represents the default namespace. This should be\nused if the project has data in non-default namespaces, but doesn't want to\ninclude them.\nEach namespace in this list must be unique.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "GoogleDatastoreAdminV1beta1ExportEntitiesMetadata": { + "description": "Metadata for ExportEntities operations.", + "id": "GoogleDatastoreAdminV1beta1ExportEntitiesMetadata", + "properties": { + "common": { + "$ref": "GoogleDatastoreAdminV1beta1CommonMetadata", + "description": "Metadata common to all Datastore Admin operations." + }, + "entityFilter": { + "$ref": "GoogleDatastoreAdminV1beta1EntityFilter", + "description": "Description of which entities are being exported." + }, + "outputUrlPrefix": { + "description": "Location for the export metadata and data files. This will be the same\nvalue as the\ngoogle.datastore.admin.v1beta1.ExportEntitiesRequest.output_url_prefix\nfield. The final output location is provided in\ngoogle.datastore.admin.v1beta1.ExportEntitiesResponse.output_url.", "type": "string" }, - "endCursor": { - "description": "A cursor that points to the position after the last result in the batch.", - "format": "byte", + "progressBytes": { + "$ref": "GoogleDatastoreAdminV1beta1Progress", + "description": "An estimate of the number of bytes processed." + }, + "progressEntities": { + "$ref": "GoogleDatastoreAdminV1beta1Progress", + "description": "An estimate of the number of entities processed." + } + }, + "type": "object" + }, + "GoogleDatastoreAdminV1beta1ExportEntitiesResponse": { + "description": "The response for\ngoogle.datastore.admin.v1beta1.DatastoreAdmin.ExportEntities.", + "id": "GoogleDatastoreAdminV1beta1ExportEntitiesResponse", + "properties": { + "outputUrl": { + "description": "Location of the output metadata file. This can be used to begin an import\ninto Cloud Datastore (this project or another project). See\ngoogle.datastore.admin.v1beta1.ImportEntitiesRequest.input_url.\nOnly present if the operation completed successfully.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleDatastoreAdminV1beta1ImportEntitiesMetadata": { + "description": "Metadata for ImportEntities operations.", + "id": "GoogleDatastoreAdminV1beta1ImportEntitiesMetadata", + "properties": { + "common": { + "$ref": "GoogleDatastoreAdminV1beta1CommonMetadata", + "description": "Metadata common to all Datastore Admin operations." + }, + "entityFilter": { + "$ref": "GoogleDatastoreAdminV1beta1EntityFilter", + "description": "Description of which entities are being imported." + }, + "inputUrl": { + "description": "The location of the import metadata file. This will be the same value as\nthe google.datastore.admin.v1beta1.ExportEntitiesResponse.output_url\nfield.", "type": "string" }, - "snapshotVersion": { - "description": "The version number of the snapshot this batch was returned from.\nThis applies to the range of results from the query's `start_cursor` (or\nthe beginning of the query if no cursor was given) to this batch's\n`end_cursor` (not the query's `end_cursor`).\n\nIn a single transaction, subsequent query result batches for the same query\ncan have a greater snapshot version number. Each batch's snapshot version\nis valid for all preceding batches.\nThe value will be zero for eventually consistent queries.", + "progressBytes": { + "$ref": "GoogleDatastoreAdminV1beta1Progress", + "description": "An estimate of the number of bytes processed." + }, + "progressEntities": { + "$ref": "GoogleDatastoreAdminV1beta1Progress", + "description": "An estimate of the number of entities processed." + } + }, + "type": "object" + }, + "GoogleDatastoreAdminV1beta1Progress": { + "description": "Measures the progress of a particular metric.", + "id": "GoogleDatastoreAdminV1beta1Progress", + "properties": { + "workCompleted": { + "description": "The amount of work that has been completed. Note that this may be greater\nthan work_estimated.", + "format": "int64", + "type": "string" + }, + "workEstimated": { + "description": "An estimate of how much work needs to be performed. May be zero if the\nwork estimate is unavailable.", "format": "int64", "type": "string" } }, - "id": "QueryResultBatch", - "description": "A batch of results produced by a query.", "type": "object" }, - "LookupRequest": { + "GqlQuery": { + "description": "A [GQL query](https://cloud.google.com/datastore/docs/apis/gql/gql_reference).", + "id": "GqlQuery", "properties": { - "readOptions": { - "$ref": "ReadOptions", - "description": "The options for this lookup request." + "allowLiterals": { + "description": "When false, the query string must not contain any literals and instead must\nbind all values. For example,\n`SELECT * FROM Kind WHERE a = 'string literal'` is not allowed, while\n`SELECT * FROM Kind WHERE a = @value` is.", + "type": "boolean" }, - "keys": { - "description": "Keys of entities to look up.", - "type": "array", + "namedBindings": { + "additionalProperties": { + "$ref": "GqlQueryParameter" + }, + "description": "For each non-reserved named binding site in the query string, there must be\na named parameter with that name, but not necessarily the inverse.\n\nKey must match regex `A-Za-z_$*`, must not match regex\n`__.*__`, and must not be `\"\"`.", + "type": "object" + }, + "positionalBindings": { + "description": "Numbered binding site @1 references the first numbered parameter,\neffectively using 1-based indexing, rather than the usual 0.\n\nFor each binding site numbered i in `query_string`, there must be an i-th\nnumbered parameter. The inverse must also be true.", "items": { - "$ref": "Key" - } + "$ref": "GqlQueryParameter" + }, + "type": "array" + }, + "queryString": { + "description": "A string of the format described\n[here](https://cloud.google.com/datastore/docs/apis/gql/gql_reference).", + "type": "string" } }, - "id": "LookupRequest", - "description": "The request for Datastore.Lookup.", "type": "object" }, - "ReserveIdsRequest": { - "description": "The request for Datastore.ReserveIds.", - "type": "object", - "properties": { - "keys": { - "description": "A list of keys with complete key paths whose numeric IDs should not be\nauto-allocated.", - "type": "array", - "items": { - "$ref": "Key" - } - }, - "databaseId": { - "description": "If not empty, the ID of the database against which to make the request.", - "type": "string" - } - }, - "id": "ReserveIdsRequest" - }, - "PathElement": { - "description": "A (kind, ID/name) pair used to construct a key path.\n\nIf either name or ID is set, the element is complete.\nIf neither is set, the element is incomplete.", - "type": "object", - "properties": { - "id": { - "description": "The auto-allocated ID of the entity.\nNever equal to zero. Values less than zero are discouraged and may not\nbe supported in the future.", - "format": "int64", - "type": "string" - }, - "name": { - "description": "The name of the entity.\nA name matching regex `__.*__` is reserved/read-only.\nA name must not be more than 1500 bytes when UTF-8 encoded.\nCannot be `\"\"`.", - "type": "string" - }, - "kind": { - "description": "The kind of the entity.\nA kind matching regex `__.*__` is reserved/read-only.\nA kind must not contain more than 1500 bytes when UTF-8 encoded.\nCannot be `\"\"`.", - "type": "string" - } - }, - "id": "PathElement" - }, "GqlQueryParameter": { "description": "A binding parameter for a GQL query.", - "type": "object", + "id": "GqlQueryParameter", "properties": { "cursor": { "description": "A query cursor. Query cursors are returned in query\nresult batches.", @@ -627,328 +890,108 @@ "description": "A value parameter." } }, - "id": "GqlQueryParameter" - }, - "BeginTransactionResponse": { - "properties": { - "transaction": { - "description": "The transaction identifier (always present).", - "format": "byte", - "type": "string" - } - }, - "id": "BeginTransactionResponse", - "description": "The response for Datastore.BeginTransaction.", "type": "object" }, - "RunQueryResponse": { - "description": "The response for Datastore.RunQuery.", - "type": "object", + "Key": { + "description": "A unique identifier for an entity.\nIf a key's partition ID or any of its path kinds or names are\nreserved/read-only, the key is reserved/read-only.\nA reserved/read-only key is forbidden in certain documented contexts.", + "id": "Key", "properties": { - "query": { - "description": "The parsed form of the `GqlQuery` from the request, if it was set.", - "$ref": "Query" + "partitionId": { + "$ref": "PartitionId", + "description": "Entities are partitioned into subsets, currently identified by a project\nID and namespace ID.\nQueries are scoped to a single partition." }, - "batch": { - "$ref": "QueryResultBatch", - "description": "A batch of query results (always present)." + "path": { + "description": "The entity path.\nAn entity path consists of one or more elements composed of a kind and a\nstring or numerical identifier, which identify entities. The first\nelement identifies a _root entity_, the second element identifies\na _child_ of the root entity, the third element identifies a child of the\nsecond entity, and so forth. The entities identified by all prefixes of\nthe path are called the element's _ancestors_.\n\nAn entity path is always fully complete: *all* of the entity's ancestors\nare required to be in the path along with the entity identifier itself.\nThe only exception is that in some documented cases, the identifier in the\nlast path element (for the entity) itself may be omitted. For example,\nthe last path element of the key of `Mutation.insert` may have no\nidentifier.\n\nA path can never be empty, and a path can have at most 100 elements.", + "items": { + "$ref": "PathElement" + }, + "type": "array" } }, - "id": "RunQueryResponse" - }, - "LookupResponse": { - "properties": { - "found": { - "description": "Entities found as `ResultType.FULL` entities. The order of results in this\nfield is undefined and has no relation to the order of the keys in the\ninput.", - "type": "array", - "items": { - "$ref": "EntityResult" - } - }, - "missing": { - "description": "Entities not found as `ResultType.KEY_ONLY` entities. The order of results\nin this field is undefined and has no relation to the order of the keys\nin the input.", - "type": "array", - "items": { - "$ref": "EntityResult" - } - }, - "deferred": { - "description": "A list of keys that were not looked up due to resource constraints. The\norder of results in this field is undefined and has no relation to the\norder of the keys in the input.", - "type": "array", - "items": { - "$ref": "Key" - } - } - }, - "id": "LookupResponse", - "description": "The response for Datastore.Lookup.", "type": "object" }, - "AllocateIdsRequest": { - "description": "The request for Datastore.AllocateIds.", - "type": "object", - "properties": { - "keys": { - "description": "A list of keys with incomplete key paths for which to allocate IDs.\nNo key may be reserved/read-only.", - "type": "array", - "items": { - "$ref": "Key" - } - } - }, - "id": "AllocateIdsRequest" - }, - "PropertyOrder": { - "properties": { - "property": { - "description": "The property to order by.", - "$ref": "PropertyReference" - }, - "direction": { - "enumDescriptions": [ - "Unspecified. This value must not be used.", - "Ascending.", - "Descending." - ], - "enum": [ - "DIRECTION_UNSPECIFIED", - "ASCENDING", - "DESCENDING" - ], - "description": "The direction to order by. Defaults to `ASCENDING`.", - "type": "string" - } - }, - "id": "PropertyOrder", - "description": "The desired order for a specific property.", - "type": "object" - }, - "BeginTransactionRequest": { - "properties": { - "transactionOptions": { - "description": "Options for a new transaction.", - "$ref": "TransactionOptions" - } - }, - "id": "BeginTransactionRequest", - "description": "The request for Datastore.BeginTransaction.", - "type": "object" - }, - "CommitRequest": { - "description": "The request for Datastore.Commit.", - "type": "object", - "properties": { - "transaction": { - "description": "The identifier of the transaction associated with the commit. A\ntransaction identifier is returned by a call to\nDatastore.BeginTransaction.", - "format": "byte", - "type": "string" - }, - "mode": { - "enumDescriptions": [ - "Unspecified. This value must not be used.", - "Transactional: The mutations are either all applied, or none are applied.\nLearn about transactions [here](https://cloud.google.com/datastore/docs/concepts/transactions).", - "Non-transactional: The mutations may not apply as all or none." - ], - "enum": [ - "MODE_UNSPECIFIED", - "TRANSACTIONAL", - "NON_TRANSACTIONAL" - ], - "description": "The type of commit to perform. Defaults to `TRANSACTIONAL`.", - "type": "string" - }, - "mutations": { - "description": "The mutations to perform.\n\nWhen mode is `TRANSACTIONAL`, mutations affecting a single entity are\napplied in order. The following sequences of mutations affecting a single\nentity are not permitted in a single `Commit` request:\n\n- `insert` followed by `insert`\n- `update` followed by `insert`\n- `upsert` followed by `insert`\n- `delete` followed by `update`\n\nWhen mode is `NON_TRANSACTIONAL`, no two mutations may affect a single\nentity.", - "type": "array", - "items": { - "$ref": "Mutation" - } - } - }, - "id": "CommitRequest" - }, "KindExpression": { + "description": "A representation of a kind.", + "id": "KindExpression", "properties": { "name": { "description": "The name of the kind.", "type": "string" } }, - "id": "KindExpression", - "description": "A representation of a kind.", "type": "object" }, - "Key": { - "description": "A unique identifier for an entity.\nIf a key's partition ID or any of its path kinds or names are\nreserved/read-only, the key is reserved/read-only.\nA reserved/read-only key is forbidden in certain documented contexts.", - "type": "object", - "properties": { - "path": { - "description": "The entity path.\nAn entity path consists of one or more elements composed of a kind and a\nstring or numerical identifier, which identify entities. The first\nelement identifies a _root entity_, the second element identifies\na _child_ of the root entity, the third element identifies a child of the\nsecond entity, and so forth. The entities identified by all prefixes of\nthe path are called the element's _ancestors_.\n\nAn entity path is always fully complete: *all* of the entity's ancestors\nare required to be in the path along with the entity identifier itself.\nThe only exception is that in some documented cases, the identifier in the\nlast path element (for the entity) itself may be omitted. For example,\nthe last path element of the key of `Mutation.insert` may have no\nidentifier.\n\nA path can never be empty, and a path can have at most 100 elements.", - "type": "array", - "items": { - "$ref": "PathElement" - } - }, - "partitionId": { - "description": "Entities are partitioned into subsets, currently identified by a project\nID and namespace ID.\nQueries are scoped to a single partition.", - "$ref": "PartitionId" - } - }, - "id": "Key" - }, "LatLng": { "description": "An object representing a latitude/longitude pair. This is expressed as a pair\nof doubles representing degrees latitude and degrees longitude. Unless\nspecified otherwise, this must conform to the\n\u003ca href=\"http://www.unoosa.org/pdf/icg/2012/template/WGS_84.pdf\"\u003eWGS84\nstandard\u003c/a\u003e. Values must be within normalized ranges.", - "type": "object", + "id": "LatLng", "properties": { - "longitude": { - "description": "The longitude in degrees. It must be in the range [-180.0, +180.0].", - "format": "double", - "type": "number" - }, "latitude": { "description": "The latitude in degrees. It must be in the range [-90.0, +90.0].", "format": "double", "type": "number" + }, + "longitude": { + "description": "The longitude in degrees. It must be in the range [-180.0, +180.0].", + "format": "double", + "type": "number" } }, - "id": "LatLng" - }, - "ReserveIdsResponse": { - "properties": {}, - "id": "ReserveIdsResponse", - "description": "The response for Datastore.ReserveIds.", "type": "object" }, - "PropertyReference": { + "LookupRequest": { + "description": "The request for Datastore.Lookup.", + "id": "LookupRequest", "properties": { - "name": { - "description": "The name of the property.\nIf name includes \".\"s, it may be interpreted as a property name path.", - "type": "string" - } - }, - "id": "PropertyReference", - "description": "A reference to a property relative to the kind expressions.", - "type": "object" - }, - "GoogleDatastoreAdminV1beta1EntityFilter": { - "description": "Identifies a subset of entities in a project. This is specified as\ncombinations of kinds and namespaces (either or both of which may be all, as\ndescribed in the following examples).\nExample usage:\n\nEntire project:\n kinds=[], namespace_ids=[]\n\nKinds Foo and Bar in all namespaces:\n kinds=['Foo', 'Bar'], namespace_ids=[]\n\nKinds Foo and Bar only in the default namespace:\n kinds=['Foo', 'Bar'], namespace_ids=['']\n\nKinds Foo and Bar in both the default and Baz namespaces:\n kinds=['Foo', 'Bar'], namespace_ids=['', 'Baz']\n\nThe entire Baz namespace:\n kinds=[], namespace_ids=['Baz']", - "type": "object", - "properties": { - "kinds": { - "description": "If empty, then this represents all kinds.", - "type": "array", + "keys": { + "description": "Keys of entities to look up.", "items": { - "type": "string" - } - }, - "namespaceIds": { - "description": "An empty list represents all namespaces. This is the preferred\nusage for projects that don't use namespaces.\n\nAn empty string element represents the default namespace. This should be\nused if the project has data in non-default namespaces, but doesn't want to\ninclude them.\nEach namespace in this list must be unique.", - "type": "array", - "items": { - "type": "string" - } - } - }, - "id": "GoogleDatastoreAdminV1beta1EntityFilter" - }, - "GoogleDatastoreAdminV1beta1CommonMetadata": { - "properties": { - "operationType": { - "enumDescriptions": [ - "Unspecified.", - "ExportEntities.", - "ImportEntities." - ], - "enum": [ - "OPERATION_TYPE_UNSPECIFIED", - "EXPORT_ENTITIES", - "IMPORT_ENTITIES" - ], - "description": "The type of the operation. Can be used as a filter in\nListOperationsRequest.", - "type": "string" - }, - "state": { - "enumDescriptions": [ - "Unspecified.", - "Request is being prepared for processing.", - "Request is actively being processed.", - "Request is in the process of being cancelled after user called\ngoogle.longrunning.Operations.CancelOperation on the operation.", - "Request has been processed and is in its finalization stage.", - "Request has completed successfully.", - "Request has finished being processed, but encountered an error.", - "Request has finished being cancelled after user called\ngoogle.longrunning.Operations.CancelOperation." - ], - "enum": [ - "STATE_UNSPECIFIED", - "INITIALIZING", - "PROCESSING", - "CANCELLING", - "FINALIZING", - "SUCCESSFUL", - "FAILED", - "CANCELLED" - ], - "description": "The current state of the Operation.", - "type": "string" - }, - "startTime": { - "description": "The time that work began on the operation.", - "format": "google-datetime", - "type": "string" - }, - "labels": { - "additionalProperties": { - "type": "string" + "$ref": "Key" }, - "description": "The client-assigned labels which were provided when the operation was\ncreated. May also include additional labels.", - "type": "object" + "type": "array" }, - "endTime": { - "description": "The time the operation ended, either successfully or otherwise.", - "format": "google-datetime", - "type": "string" + "readOptions": { + "$ref": "ReadOptions", + "description": "The options for this lookup request." } }, - "id": "GoogleDatastoreAdminV1beta1CommonMetadata", - "description": "Metadata common to all Datastore Admin operations.", "type": "object" }, - "Projection": { + "LookupResponse": { + "description": "The response for Datastore.Lookup.", + "id": "LookupResponse", "properties": { - "property": { - "$ref": "PropertyReference", - "description": "The property to project." - } - }, - "id": "Projection", - "description": "A representation of a property in a projection.", - "type": "object" - }, - "ArrayValue": { - "description": "An array value.", - "type": "object", - "properties": { - "values": { - "description": "Values in the array.\nThe order of this array may not be preserved if it contains a mix of\nindexed and unindexed values.", - "type": "array", + "deferred": { + "description": "A list of keys that were not looked up due to resource constraints. The\norder of results in this field is undefined and has no relation to the\norder of the keys in the input.", "items": { - "$ref": "Value" - } + "$ref": "Key" + }, + "type": "array" + }, + "found": { + "description": "Entities found as `ResultType.FULL` entities. The order of results in this\nfield is undefined and has no relation to the order of the keys in the\ninput.", + "items": { + "$ref": "EntityResult" + }, + "type": "array" + }, + "missing": { + "description": "Entities not found as `ResultType.KEY_ONLY` entities. The order of results\nin this field is undefined and has no relation to the order of the keys\nin the input.", + "items": { + "$ref": "EntityResult" + }, + "type": "array" } }, - "id": "ArrayValue" + "type": "object" }, "Mutation": { "description": "A mutation to apply to an entity.", - "type": "object", + "id": "Mutation", "properties": { - "update": { - "$ref": "Entity", - "description": "The entity to update. The entity must already exist.\nMust have a complete key path." - }, - "upsert": { - "description": "The entity to upsert. The entity may or may not already exist.\nThe entity key's final path element may be incomplete.", - "$ref": "Entity" + "baseVersion": { + "description": "The version of the entity that this mutation is being applied to. If this\ndoes not match the current version on the server, the mutation conflicts.", + "format": "int64", + "type": "string" }, "delete": { "$ref": "Key", @@ -958,60 +1001,20 @@ "$ref": "Entity", "description": "The entity to insert. The entity must not already exist.\nThe entity key's final path element may be incomplete." }, - "baseVersion": { - "description": "The version of the entity that this mutation is being applied to. If this\ndoes not match the current version on the server, the mutation conflicts.", - "format": "int64", - "type": "string" - } - }, - "id": "Mutation" - }, - "ReadOptions": { - "properties": { - "readConsistency": { - "enumDescriptions": [ - "Unspecified. This value must not be used.", - "Strong consistency.", - "Eventual consistency." - ], - "enum": [ - "READ_CONSISTENCY_UNSPECIFIED", - "STRONG", - "EVENTUAL" - ], - "description": "The non-transactional read consistency to use.\nCannot be set to `STRONG` for global queries.", - "type": "string" + "update": { + "$ref": "Entity", + "description": "The entity to update. The entity must already exist.\nMust have a complete key path." }, - "transaction": { - "description": "The identifier of the transaction in which to read. A\ntransaction identifier is returned by a call to\nDatastore.BeginTransaction.", - "format": "byte", - "type": "string" + "upsert": { + "$ref": "Entity", + "description": "The entity to upsert. The entity may or may not already exist.\nThe entity key's final path element may be incomplete." } }, - "id": "ReadOptions", - "description": "The options shared by read requests.", - "type": "object" - }, - "RollbackResponse": { - "description": "The response for Datastore.Rollback.\n(an empty message).", - "type": "object", - "properties": {}, - "id": "RollbackResponse" - }, - "GoogleDatastoreAdminV1beta1ExportEntitiesResponse": { - "properties": { - "outputUrl": { - "description": "Location of the output metadata file. This can be used to begin an import\ninto Cloud Datastore (this project or another project). See\ngoogle.datastore.admin.v1beta1.ImportEntitiesRequest.input_url.\nOnly present if the operation completed successfully.", - "type": "string" - } - }, - "id": "GoogleDatastoreAdminV1beta1ExportEntitiesResponse", - "description": "The response for\ngoogle.datastore.admin.v1beta1.DatastoreAdmin.ExportEntities.", "type": "object" }, "MutationResult": { "description": "The result of applying a mutation.", - "type": "object", + "id": "MutationResult", "properties": { "conflictDetected": { "description": "Whether a conflict was detected for this mutation. Always false when a\nconflict detection strategy field is not set in the mutation.", @@ -1027,272 +1030,60 @@ "type": "string" } }, - "id": "MutationResult" - }, - "GqlQuery": { - "description": "A [GQL query](https://cloud.google.com/datastore/docs/apis/gql/gql_reference).", - "type": "object", - "properties": { - "queryString": { - "description": "A string of the format described\n[here](https://cloud.google.com/datastore/docs/apis/gql/gql_reference).", - "type": "string" - }, - "allowLiterals": { - "description": "When false, the query string must not contain any literals and instead must\nbind all values. For example,\n`SELECT * FROM Kind WHERE a = 'string literal'` is not allowed, while\n`SELECT * FROM Kind WHERE a = @value` is.", - "type": "boolean" - }, - "namedBindings": { - "additionalProperties": { - "$ref": "GqlQueryParameter" - }, - "description": "For each non-reserved named binding site in the query string, there must be\na named parameter with that name, but not necessarily the inverse.\n\nKey must match regex `A-Za-z_$*`, must not match regex\n`__.*__`, and must not be `\"\"`.", - "type": "object" - }, - "positionalBindings": { - "description": "Numbered binding site @1 references the first numbered parameter,\neffectively using 1-based indexing, rather than the usual 0.\n\nFor each binding site numbered i in `query_string`, there must be an i-th\nnumbered parameter. The inverse must also be true.", - "type": "array", - "items": { - "$ref": "GqlQueryParameter" - } - } - }, - "id": "GqlQuery" - }, - "Filter": { - "properties": { - "propertyFilter": { - "$ref": "PropertyFilter", - "description": "A filter on a property." - }, - "compositeFilter": { - "$ref": "CompositeFilter", - "description": "A composite filter." - } - }, - "id": "Filter", - "description": "A holder for any type of filter.", "type": "object" }, - "RollbackRequest": { + "PartitionId": { + "description": "A partition ID identifies a grouping of entities. The grouping is always\nby project and namespace, however the namespace ID may be empty.\n\nA partition ID contains several dimensions:\nproject ID and namespace ID.\n\nPartition dimensions:\n\n- May be `\"\"`.\n- Must be valid UTF-8 bytes.\n- Must have values that match regex `[A-Za-z\\d\\.\\-_]{1,100}`\nIf the value of any dimension matches regex `__.*__`, the partition is\nreserved/read-only.\nA reserved/read-only partition ID is forbidden in certain documented\ncontexts.\n\nForeign partition IDs (in which the project ID does\nnot match the context project ID ) are discouraged.\nReads and writes of foreign partition IDs may fail if the project is not in an active state.", + "id": "PartitionId", "properties": { - "transaction": { - "description": "The transaction identifier, returned by a call to\nDatastore.BeginTransaction.", - "format": "byte", + "namespaceId": { + "description": "If not empty, the ID of the namespace to which the entities belong.", + "type": "string" + }, + "projectId": { + "description": "The ID of the project to which the entities belong.", "type": "string" } }, - "id": "RollbackRequest", - "description": "The request for Datastore.Rollback.", "type": "object" }, - "RunQueryRequest": { - "description": "The request for Datastore.RunQuery.", - "type": "object", + "PathElement": { + "description": "A (kind, ID/name) pair used to construct a key path.\n\nIf either name or ID is set, the element is complete.\nIf neither is set, the element is incomplete.", + "id": "PathElement", "properties": { - "partitionId": { - "$ref": "PartitionId", - "description": "Entities are partitioned into subsets, identified by a partition ID.\nQueries are scoped to a single partition.\nThis partition ID is normalized with the standard default context\npartition ID." - }, - "gqlQuery": { - "description": "The GQL query to run.", - "$ref": "GqlQuery" - }, - "readOptions": { - "$ref": "ReadOptions", - "description": "The options for this query." - }, - "query": { - "$ref": "Query", - "description": "The query to run." - } - }, - "id": "RunQueryRequest" - }, - "GoogleDatastoreAdminV1beta1ExportEntitiesMetadata": { - "properties": { - "progressEntities": { - "$ref": "GoogleDatastoreAdminV1beta1Progress", - "description": "An estimate of the number of entities processed." - }, - "common": { - "description": "Metadata common to all Datastore Admin operations.", - "$ref": "GoogleDatastoreAdminV1beta1CommonMetadata" - }, - "progressBytes": { - "$ref": "GoogleDatastoreAdminV1beta1Progress", - "description": "An estimate of the number of bytes processed." - }, - "entityFilter": { - "description": "Description of which entities are being exported.", - "$ref": "GoogleDatastoreAdminV1beta1EntityFilter" - }, - "outputUrlPrefix": { - "description": "Location for the export metadata and data files. This will be the same\nvalue as the\ngoogle.datastore.admin.v1beta1.ExportEntitiesRequest.output_url_prefix\nfield. The final output location is provided in\ngoogle.datastore.admin.v1beta1.ExportEntitiesResponse.output_url.", - "type": "string" - } - }, - "id": "GoogleDatastoreAdminV1beta1ExportEntitiesMetadata", - "description": "Metadata for ExportEntities operations.", - "type": "object" - }, - "TransactionOptions": { - "description": "Options for beginning a new transaction.\n\nTransactions can be created explicitly with calls to\nDatastore.BeginTransaction or implicitly by setting\nReadOptions.new_transaction in read requests.", - "type": "object", - "properties": { - "readWrite": { - "description": "The transaction should allow both reads and writes.", - "$ref": "ReadWrite" - }, - "readOnly": { - "description": "The transaction should only allow reads.", - "$ref": "ReadOnly" - } - }, - "id": "TransactionOptions" - }, - "CompositeFilter": { - "description": "A filter that merges multiple other filters using the given operator.", - "type": "object", - "properties": { - "filters": { - "description": "The list of filters to combine.\nMust contain at least one filter.", - "type": "array", - "items": { - "$ref": "Filter" - } - }, - "op": { - "enumDescriptions": [ - "Unspecified. This value must not be used.", - "The results are required to satisfy each of the combined filters." - ], - "enum": [ - "OPERATOR_UNSPECIFIED", - "AND" - ], - "description": "The operator for combining multiple filters.", - "type": "string" - } - }, - "id": "CompositeFilter" - }, - "GoogleDatastoreAdminV1beta1ImportEntitiesMetadata": { - "description": "Metadata for ImportEntities operations.", - "type": "object", - "properties": { - "progressEntities": { - "$ref": "GoogleDatastoreAdminV1beta1Progress", - "description": "An estimate of the number of entities processed." - }, - "common": { - "$ref": "GoogleDatastoreAdminV1beta1CommonMetadata", - "description": "Metadata common to all Datastore Admin operations." - }, - "progressBytes": { - "description": "An estimate of the number of bytes processed.", - "$ref": "GoogleDatastoreAdminV1beta1Progress" - }, - "inputUrl": { - "description": "The location of the import metadata file. This will be the same value as\nthe google.datastore.admin.v1beta1.ExportEntitiesResponse.output_url\nfield.", - "type": "string" - }, - "entityFilter": { - "description": "Description of which entities are being imported.", - "$ref": "GoogleDatastoreAdminV1beta1EntityFilter" - } - }, - "id": "GoogleDatastoreAdminV1beta1ImportEntitiesMetadata" - }, - "AllocateIdsResponse": { - "description": "The response for Datastore.AllocateIds.", - "type": "object", - "properties": { - "keys": { - "description": "The keys specified in the request (in the same order), each with\nits key path completed with a newly allocated ID.", - "type": "array", - "items": { - "$ref": "Key" - } - } - }, - "id": "AllocateIdsResponse" - }, - "Query": { - "description": "A query for entities.", - "type": "object", - "properties": { - "endCursor": { - "description": "An ending point for the query results. Query cursors are\nreturned in query result batches and\n[can only be used to limit the same query](https://cloud.google.com/datastore/docs/concepts/queries#cursors_limits_and_offsets).", - "format": "byte", - "type": "string" - }, - "limit": { - "description": "The maximum number of results to return. Applies after all other\nconstraints. Optional.\nUnspecified is interpreted as no limit.\nMust be \u003e= 0 if specified.", - "format": "int32", - "type": "integer" - }, - "filter": { - "description": "The filter to apply.", - "$ref": "Filter" - }, - "offset": { - "description": "The number of results to skip. Applies before limit, but after all other\nconstraints. Optional. Must be \u003e= 0 if specified.", - "format": "int32", - "type": "integer" - }, - "startCursor": { - "description": "A starting point for the query results. Query cursors are\nreturned in query result batches and\n[can only be used to continue the same query](https://cloud.google.com/datastore/docs/concepts/queries#cursors_limits_and_offsets).", - "format": "byte", + "id": { + "description": "The auto-allocated ID of the entity.\nNever equal to zero. Values less than zero are discouraged and may not\nbe supported in the future.", + "format": "int64", "type": "string" }, "kind": { - "description": "The kinds to query (if empty, returns entities of all kinds).\nCurrently at most 1 kind may be specified.", - "type": "array", - "items": { - "$ref": "KindExpression" - } + "description": "The kind of the entity.\nA kind matching regex `__.*__` is reserved/read-only.\nA kind must not contain more than 1500 bytes when UTF-8 encoded.\nCannot be `\"\"`.", + "type": "string" }, - "distinctOn": { - "description": "The properties to make distinct. The query results will contain the first\nresult for each distinct combination of values for the given properties\n(if empty, all results are returned).", - "type": "array", - "items": { - "$ref": "PropertyReference" - } - }, - "order": { - "description": "The order to apply to the query results (if empty, order is unspecified).", - "type": "array", - "items": { - "$ref": "PropertyOrder" - } - }, - "projection": { - "description": "The projection to return. Defaults to returning all properties.", - "type": "array", - "items": { - "$ref": "Projection" - } + "name": { + "description": "The name of the entity.\nA name matching regex `__.*__` is reserved/read-only.\nA name must not be more than 1500 bytes when UTF-8 encoded.\nCannot be `\"\"`.", + "type": "string" } }, - "id": "Query" + "type": "object" }, - "ReadOnly": { - "properties": {}, - "id": "ReadOnly", - "description": "Options specific to read-only transactions.", + "Projection": { + "description": "A representation of a property in a projection.", + "id": "Projection", + "properties": { + "property": { + "$ref": "PropertyReference", + "description": "The property to project." + } + }, "type": "object" }, "PropertyFilter": { + "description": "A filter on a specific property.", + "id": "PropertyFilter", "properties": { - "value": { - "description": "The value to compare the property to.", - "$ref": "Value" - }, - "property": { - "description": "The property to filter by.", - "$ref": "PropertyReference" - }, "op": { + "description": "The operator to filter by.", "enum": [ "OPERATOR_UNSPECIFIED", "LESS_THAN", @@ -1302,8 +1093,6 @@ "EQUAL", "HAS_ANCESTOR" ], - "description": "The operator to filter by.", - "type": "string", "enumDescriptions": [ "Unspecified. This value must not be used.", "Less than.", @@ -1312,19 +1101,395 @@ "Greater than or equal.", "Equal.", "Has ancestor." - ] + ], + "type": "string" + }, + "property": { + "$ref": "PropertyReference", + "description": "The property to filter by." + }, + "value": { + "$ref": "Value", + "description": "The value to compare the property to." + } + }, + "type": "object" + }, + "PropertyOrder": { + "description": "The desired order for a specific property.", + "id": "PropertyOrder", + "properties": { + "direction": { + "description": "The direction to order by. Defaults to `ASCENDING`.", + "enum": [ + "DIRECTION_UNSPECIFIED", + "ASCENDING", + "DESCENDING" + ], + "enumDescriptions": [ + "Unspecified. This value must not be used.", + "Ascending.", + "Descending." + ], + "type": "string" + }, + "property": { + "$ref": "PropertyReference", + "description": "The property to order by." + } + }, + "type": "object" + }, + "PropertyReference": { + "description": "A reference to a property relative to the kind expressions.", + "id": "PropertyReference", + "properties": { + "name": { + "description": "The name of the property.\nIf name includes \".\"s, it may be interpreted as a property name path.", + "type": "string" + } + }, + "type": "object" + }, + "Query": { + "description": "A query for entities.", + "id": "Query", + "properties": { + "distinctOn": { + "description": "The properties to make distinct. The query results will contain the first\nresult for each distinct combination of values for the given properties\n(if empty, all results are returned).", + "items": { + "$ref": "PropertyReference" + }, + "type": "array" + }, + "endCursor": { + "description": "An ending point for the query results. Query cursors are\nreturned in query result batches and\n[can only be used to limit the same query](https://cloud.google.com/datastore/docs/concepts/queries#cursors_limits_and_offsets).", + "format": "byte", + "type": "string" + }, + "filter": { + "$ref": "Filter", + "description": "The filter to apply." + }, + "kind": { + "description": "The kinds to query (if empty, returns entities of all kinds).\nCurrently at most 1 kind may be specified.", + "items": { + "$ref": "KindExpression" + }, + "type": "array" + }, + "limit": { + "description": "The maximum number of results to return. Applies after all other\nconstraints. Optional.\nUnspecified is interpreted as no limit.\nMust be \u003e= 0 if specified.", + "format": "int32", + "type": "integer" + }, + "offset": { + "description": "The number of results to skip. Applies before limit, but after all other\nconstraints. Optional. Must be \u003e= 0 if specified.", + "format": "int32", + "type": "integer" + }, + "order": { + "description": "The order to apply to the query results (if empty, order is unspecified).", + "items": { + "$ref": "PropertyOrder" + }, + "type": "array" + }, + "projection": { + "description": "The projection to return. Defaults to returning all properties.", + "items": { + "$ref": "Projection" + }, + "type": "array" + }, + "startCursor": { + "description": "A starting point for the query results. Query cursors are\nreturned in query result batches and\n[can only be used to continue the same query](https://cloud.google.com/datastore/docs/concepts/queries#cursors_limits_and_offsets).", + "format": "byte", + "type": "string" + } + }, + "type": "object" + }, + "QueryResultBatch": { + "description": "A batch of results produced by a query.", + "id": "QueryResultBatch", + "properties": { + "endCursor": { + "description": "A cursor that points to the position after the last result in the batch.", + "format": "byte", + "type": "string" + }, + "entityResultType": { + "description": "The result type for every entity in `entity_results`.", + "enum": [ + "RESULT_TYPE_UNSPECIFIED", + "FULL", + "PROJECTION", + "KEY_ONLY" + ], + "enumDescriptions": [ + "Unspecified. This value is never used.", + "The key and properties.", + "A projected subset of properties. The entity may have no key.", + "Only the key." + ], + "type": "string" + }, + "entityResults": { + "description": "The results for this batch.", + "items": { + "$ref": "EntityResult" + }, + "type": "array" + }, + "moreResults": { + "description": "The state of the query after the current batch.", + "enum": [ + "MORE_RESULTS_TYPE_UNSPECIFIED", + "NOT_FINISHED", + "MORE_RESULTS_AFTER_LIMIT", + "MORE_RESULTS_AFTER_CURSOR", + "NO_MORE_RESULTS" + ], + "enumDescriptions": [ + "Unspecified. This value is never used.", + "There may be additional batches to fetch from this query.", + "The query is finished, but there may be more results after the limit.", + "The query is finished, but there may be more results after the end\ncursor.", + "The query is finished, and there are no more results." + ], + "type": "string" + }, + "skippedCursor": { + "description": "A cursor that points to the position after the last skipped result.\nWill be set when `skipped_results` != 0.", + "format": "byte", + "type": "string" + }, + "skippedResults": { + "description": "The number of results skipped, typically because of an offset.", + "format": "int32", + "type": "integer" + }, + "snapshotVersion": { + "description": "The version number of the snapshot this batch was returned from.\nThis applies to the range of results from the query's `start_cursor` (or\nthe beginning of the query if no cursor was given) to this batch's\n`end_cursor` (not the query's `end_cursor`).\n\nIn a single transaction, subsequent query result batches for the same query\ncan have a greater snapshot version number. Each batch's snapshot version\nis valid for all preceding batches.\nThe value will be zero for eventually consistent queries.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "ReadOnly": { + "description": "Options specific to read-only transactions.", + "id": "ReadOnly", + "properties": {}, + "type": "object" + }, + "ReadOptions": { + "description": "The options shared by read requests.", + "id": "ReadOptions", + "properties": { + "readConsistency": { + "description": "The non-transactional read consistency to use.\nCannot be set to `STRONG` for global queries.", + "enum": [ + "READ_CONSISTENCY_UNSPECIFIED", + "STRONG", + "EVENTUAL" + ], + "enumDescriptions": [ + "Unspecified. This value must not be used.", + "Strong consistency.", + "Eventual consistency." + ], + "type": "string" + }, + "transaction": { + "description": "The identifier of the transaction in which to read. A\ntransaction identifier is returned by a call to\nDatastore.BeginTransaction.", + "format": "byte", + "type": "string" + } + }, + "type": "object" + }, + "ReadWrite": { + "description": "Options specific to read / write transactions.", + "id": "ReadWrite", + "properties": { + "previousTransaction": { + "description": "The transaction identifier of the transaction being retried.", + "format": "byte", + "type": "string" + } + }, + "type": "object" + }, + "ReserveIdsRequest": { + "description": "The request for Datastore.ReserveIds.", + "id": "ReserveIdsRequest", + "properties": { + "databaseId": { + "description": "If not empty, the ID of the database against which to make the request.", + "type": "string" + }, + "keys": { + "description": "A list of keys with complete key paths whose numeric IDs should not be\nauto-allocated.", + "items": { + "$ref": "Key" + }, + "type": "array" + } + }, + "type": "object" + }, + "ReserveIdsResponse": { + "description": "The response for Datastore.ReserveIds.", + "id": "ReserveIdsResponse", + "properties": {}, + "type": "object" + }, + "RollbackRequest": { + "description": "The request for Datastore.Rollback.", + "id": "RollbackRequest", + "properties": { + "transaction": { + "description": "The transaction identifier, returned by a call to\nDatastore.BeginTransaction.", + "format": "byte", + "type": "string" + } + }, + "type": "object" + }, + "RollbackResponse": { + "description": "The response for Datastore.Rollback.\n(an empty message).", + "id": "RollbackResponse", + "properties": {}, + "type": "object" + }, + "RunQueryRequest": { + "description": "The request for Datastore.RunQuery.", + "id": "RunQueryRequest", + "properties": { + "gqlQuery": { + "$ref": "GqlQuery", + "description": "The GQL query to run." + }, + "partitionId": { + "$ref": "PartitionId", + "description": "Entities are partitioned into subsets, identified by a partition ID.\nQueries are scoped to a single partition.\nThis partition ID is normalized with the standard default context\npartition ID." + }, + "query": { + "$ref": "Query", + "description": "The query to run." + }, + "readOptions": { + "$ref": "ReadOptions", + "description": "The options for this query." + } + }, + "type": "object" + }, + "RunQueryResponse": { + "description": "The response for Datastore.RunQuery.", + "id": "RunQueryResponse", + "properties": { + "batch": { + "$ref": "QueryResultBatch", + "description": "A batch of query results (always present)." + }, + "query": { + "$ref": "Query", + "description": "The parsed form of the `GqlQuery` from the request, if it was set." + } + }, + "type": "object" + }, + "TransactionOptions": { + "description": "Options for beginning a new transaction.\n\nTransactions can be created explicitly with calls to\nDatastore.BeginTransaction or implicitly by setting\nReadOptions.new_transaction in read requests.", + "id": "TransactionOptions", + "properties": { + "readOnly": { + "$ref": "ReadOnly", + "description": "The transaction should only allow reads." + }, + "readWrite": { + "$ref": "ReadWrite", + "description": "The transaction should allow both reads and writes." + } + }, + "type": "object" + }, + "Value": { + "description": "A message that can hold any of the supported value types and associated\nmetadata.", + "id": "Value", + "properties": { + "arrayValue": { + "$ref": "ArrayValue", + "description": "An array value.\nCannot contain another array value.\nA `Value` instance that sets field `array_value` must not set fields\n`meaning` or `exclude_from_indexes`." + }, + "blobValue": { + "description": "A blob value.\nMay have at most 1,000,000 bytes.\nWhen `exclude_from_indexes` is false, may have at most 1500 bytes.\nIn JSON requests, must be base64-encoded.", + "format": "byte", + "type": "string" + }, + "booleanValue": { + "description": "A boolean value.", + "type": "boolean" + }, + "doubleValue": { + "description": "A double value.", + "format": "double", + "type": "number" + }, + "entityValue": { + "$ref": "Entity", + "description": "An entity value.\n\n- May have no key.\n- May have a key with an incomplete key path.\n- May have a reserved/read-only key." + }, + "excludeFromIndexes": { + "description": "If the value should be excluded from all indexes including those defined\nexplicitly.", + "type": "boolean" + }, + "geoPointValue": { + "$ref": "LatLng", + "description": "A geo point value representing a point on the surface of Earth." + }, + "integerValue": { + "description": "An integer value.", + "format": "int64", + "type": "string" + }, + "keyValue": { + "$ref": "Key", + "description": "A key value." + }, + "meaning": { + "description": "The `meaning` field should only be populated for backwards compatibility.", + "format": "int32", + "type": "integer" + }, + "nullValue": { + "description": "A null value.", + "enum": [ + "NULL_VALUE" + ], + "enumDescriptions": [ + "Null value." + ], + "type": "string" + }, + "stringValue": { + "description": "A UTF-8 encoded string value.\nWhen `exclude_from_indexes` is false (it is indexed) , may have at most 1500 bytes.\nOtherwise, may be set to at least 1,000,000 bytes.", + "type": "string" + }, + "timestampValue": { + "description": "A timestamp value.\nWhen stored in the Datastore, precise only to microseconds;\nany additional precision is rounded down.", + "format": "google-datetime", + "type": "string" } }, - "id": "PropertyFilter", - "description": "A filter on a specific property.", "type": "object" } }, - "protocol": "rest", - "icons": { - "x16": "http://www.google.com/images/icons/product/search-16.gif", - "x32": "http://www.google.com/images/icons/product/search-32.gif" - }, + "servicePath": "", + "title": "Google Cloud Datastore API", "version": "v1beta3", - "baseUrl": "https://datastore.googleapis.com/" -} + "version_module": true +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/datastore/v1beta3/datastore-gen.go b/vendor/google.golang.org/api/datastore/v1beta3/datastore-gen.go index fa5c7e939..0fb05f8eb 100644 --- a/vendor/google.golang.org/api/datastore/v1beta3/datastore-gen.go +++ b/vendor/google.golang.org/api/datastore/v1beta3/datastore-gen.go @@ -511,6 +511,297 @@ func (s *Filter) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// GoogleDatastoreAdminV1CommonMetadata: Metadata common to all +// Datastore Admin operations. +type GoogleDatastoreAdminV1CommonMetadata struct { + // EndTime: The time the operation ended, either successfully or + // otherwise. + EndTime string `json:"endTime,omitempty"` + + // Labels: The client-assigned labels which were provided when the + // operation was + // created. May also include additional labels. + Labels map[string]string `json:"labels,omitempty"` + + // OperationType: The type of the operation. Can be used as a filter + // in + // ListOperationsRequest. + // + // Possible values: + // "OPERATION_TYPE_UNSPECIFIED" - Unspecified. + // "EXPORT_ENTITIES" - ExportEntities. + // "IMPORT_ENTITIES" - ImportEntities. + OperationType string `json:"operationType,omitempty"` + + // StartTime: The time that work began on the operation. + StartTime string `json:"startTime,omitempty"` + + // State: The current state of the Operation. + // + // Possible values: + // "STATE_UNSPECIFIED" - Unspecified. + // "INITIALIZING" - Request is being prepared for processing. + // "PROCESSING" - Request is actively being processed. + // "CANCELLING" - Request is in the process of being cancelled after + // user called + // google.longrunning.Operations.CancelOperation on the operation. + // "FINALIZING" - Request has been processed and is in its + // finalization stage. + // "SUCCESSFUL" - Request has completed successfully. + // "FAILED" - Request has finished being processed, but encountered an + // error. + // "CANCELLED" - Request has finished being cancelled after user + // called + // google.longrunning.Operations.CancelOperation. + State string `json:"state,omitempty"` + + // ForceSendFields is a list of field names (e.g. "EndTime") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "EndTime") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleDatastoreAdminV1CommonMetadata) MarshalJSON() ([]byte, error) { + type NoMethod GoogleDatastoreAdminV1CommonMetadata + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleDatastoreAdminV1EntityFilter: Identifies a subset of entities +// in a project. This is specified as +// combinations of kinds and namespaces (either or both of which may be +// all, as +// described in the following examples). +// Example usage: +// +// Entire project: +// kinds=[], namespace_ids=[] +// +// Kinds Foo and Bar in all namespaces: +// kinds=['Foo', 'Bar'], namespace_ids=[] +// +// Kinds Foo and Bar only in the default namespace: +// kinds=['Foo', 'Bar'], namespace_ids=[''] +// +// Kinds Foo and Bar in both the default and Baz namespaces: +// kinds=['Foo', 'Bar'], namespace_ids=['', 'Baz'] +// +// The entire Baz namespace: +// kinds=[], namespace_ids=['Baz'] +type GoogleDatastoreAdminV1EntityFilter struct { + // Kinds: If empty, then this represents all kinds. + Kinds []string `json:"kinds,omitempty"` + + // NamespaceIds: An empty list represents all namespaces. This is the + // preferred + // usage for projects that don't use namespaces. + // + // An empty string element represents the default namespace. This should + // be + // used if the project has data in non-default namespaces, but doesn't + // want to + // include them. + // Each namespace in this list must be unique. + NamespaceIds []string `json:"namespaceIds,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Kinds") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Kinds") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleDatastoreAdminV1EntityFilter) MarshalJSON() ([]byte, error) { + type NoMethod GoogleDatastoreAdminV1EntityFilter + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleDatastoreAdminV1ExportEntitiesMetadata: Metadata for +// ExportEntities operations. +type GoogleDatastoreAdminV1ExportEntitiesMetadata struct { + // Common: Metadata common to all Datastore Admin operations. + Common *GoogleDatastoreAdminV1CommonMetadata `json:"common,omitempty"` + + // EntityFilter: Description of which entities are being exported. + EntityFilter *GoogleDatastoreAdminV1EntityFilter `json:"entityFilter,omitempty"` + + // OutputUrlPrefix: Location for the export metadata and data files. + // This will be the same + // value as + // the + // google.datastore.admin.v1.ExportEntitiesRequest.output_url_prefix + // + // field. The final output location is provided + // in + // google.datastore.admin.v1.ExportEntitiesResponse.output_url. + OutputUrlPrefix string `json:"outputUrlPrefix,omitempty"` + + // ProgressBytes: An estimate of the number of bytes processed. + ProgressBytes *GoogleDatastoreAdminV1Progress `json:"progressBytes,omitempty"` + + // ProgressEntities: An estimate of the number of entities processed. + ProgressEntities *GoogleDatastoreAdminV1Progress `json:"progressEntities,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Common") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Common") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleDatastoreAdminV1ExportEntitiesMetadata) MarshalJSON() ([]byte, error) { + type NoMethod GoogleDatastoreAdminV1ExportEntitiesMetadata + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleDatastoreAdminV1ExportEntitiesResponse: The response +// for +// google.datastore.admin.v1.DatastoreAdmin.ExportEntities. +type GoogleDatastoreAdminV1ExportEntitiesResponse struct { + // OutputUrl: Location of the output metadata file. This can be used to + // begin an import + // into Cloud Datastore (this project or another project). + // See + // google.datastore.admin.v1.ImportEntitiesRequest.input_url. + // Only present if the operation completed successfully. + OutputUrl string `json:"outputUrl,omitempty"` + + // ForceSendFields is a list of field names (e.g. "OutputUrl") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "OutputUrl") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleDatastoreAdminV1ExportEntitiesResponse) MarshalJSON() ([]byte, error) { + type NoMethod GoogleDatastoreAdminV1ExportEntitiesResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleDatastoreAdminV1ImportEntitiesMetadata: Metadata for +// ImportEntities operations. +type GoogleDatastoreAdminV1ImportEntitiesMetadata struct { + // Common: Metadata common to all Datastore Admin operations. + Common *GoogleDatastoreAdminV1CommonMetadata `json:"common,omitempty"` + + // EntityFilter: Description of which entities are being imported. + EntityFilter *GoogleDatastoreAdminV1EntityFilter `json:"entityFilter,omitempty"` + + // InputUrl: The location of the import metadata file. This will be the + // same value as + // the google.datastore.admin.v1.ExportEntitiesResponse.output_url + // field. + InputUrl string `json:"inputUrl,omitempty"` + + // ProgressBytes: An estimate of the number of bytes processed. + ProgressBytes *GoogleDatastoreAdminV1Progress `json:"progressBytes,omitempty"` + + // ProgressEntities: An estimate of the number of entities processed. + ProgressEntities *GoogleDatastoreAdminV1Progress `json:"progressEntities,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Common") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Common") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleDatastoreAdminV1ImportEntitiesMetadata) MarshalJSON() ([]byte, error) { + type NoMethod GoogleDatastoreAdminV1ImportEntitiesMetadata + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleDatastoreAdminV1Progress: Measures the progress of a particular +// metric. +type GoogleDatastoreAdminV1Progress struct { + // WorkCompleted: The amount of work that has been completed. Note that + // this may be greater + // than work_estimated. + WorkCompleted int64 `json:"workCompleted,omitempty,string"` + + // WorkEstimated: An estimate of how much work needs to be performed. + // May be zero if the + // work estimate is unavailable. + WorkEstimated int64 `json:"workEstimated,omitempty,string"` + + // ForceSendFields is a list of field names (e.g. "WorkCompleted") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "WorkCompleted") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleDatastoreAdminV1Progress) MarshalJSON() ([]byte, error) { + type NoMethod GoogleDatastoreAdminV1Progress + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // GoogleDatastoreAdminV1beta1CommonMetadata: Metadata common to all // Datastore Admin operations. type GoogleDatastoreAdminV1beta1CommonMetadata struct { diff --git a/vendor/google.golang.org/api/deploymentmanager/v0.alpha/deploymentmanager-api.json b/vendor/google.golang.org/api/deploymentmanager/v0.alpha/deploymentmanager-api.json index 938d29e6f..bde75f9c7 100644 --- a/vendor/google.golang.org/api/deploymentmanager/v0.alpha/deploymentmanager-api.json +++ b/vendor/google.golang.org/api/deploymentmanager/v0.alpha/deploymentmanager-api.json @@ -1,3210 +1,3229 @@ { - "kind": "discovery#restDescription", - "etag": "\"YWOzh2SDasdU84ArJnpYek-OMdg/mU9AB3arZXHonawOKvVGxjy7qkY\"", - "discoveryVersion": "v1", - "id": "deploymentmanager:alpha", - "name": "deploymentmanager", - "canonicalName": "Deployment Manager Alpha", - "version": "alpha", - "revision": "20171214", - "title": "Google Cloud Deployment Manager Alpha API", - "description": "The Deployment Manager API allows users to declaratively configure, deploy and run complex solutions on the Google Cloud Platform.", - "ownerDomain": "google.com", - "ownerName": "Google", - "icons": { - "x16": "https://www.gstatic.com/images/branding/product/1x/googleg_16dp.png", - "x32": "https://www.gstatic.com/images/branding/product/1x/googleg_32dp.png" - }, - "documentationLink": "https://cloud.google.com/deployment-manager/", - "protocol": "rest", - "baseUrl": "https://www.googleapis.com/deploymentmanager/alpha/projects/", - "basePath": "/deploymentmanager/alpha/projects/", - "rootUrl": "https://www.googleapis.com/", - "servicePath": "deploymentmanager/alpha/projects/", - "batchPath": "batch/deploymentmanager/alpha", - "parameters": { - "alt": { - "type": "string", - "description": "Data format for the response.", - "default": "json", - "enum": [ - "json" - ], - "enumDescriptions": [ - "Responses with Content-Type of application/json" - ], - "location": "query" - }, - "fields": { - "type": "string", - "description": "Selector specifying which fields to include in a partial response.", - "location": "query" - }, - "key": { - "type": "string", - "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" - }, - "oauth_token": { - "type": "string", - "description": "OAuth 2.0 token for the current user.", - "location": "query" - }, - "prettyPrint": { - "type": "boolean", - "description": "Returns response with indentations and line breaks.", - "default": "true", - "location": "query" - }, - "quotaUser": { - "type": "string", - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", - "location": "query" - }, - "userIp": { - "type": "string", - "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", - "location": "query" - } - }, - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/cloud-platform": { - "description": "View and manage your data across Google Cloud Platform services" - }, - "https://www.googleapis.com/auth/cloud-platform.read-only": { - "description": "View your data across Google Cloud Platform services" - }, - "https://www.googleapis.com/auth/ndev.cloudman": { - "description": "View and manage your Google Cloud Platform management resources and deployment status information" - }, - "https://www.googleapis.com/auth/ndev.cloudman.readonly": { - "description": "View your Google Cloud Platform management resources and deployment status information" + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/cloud-platform": { + "description": "View and manage your data across Google Cloud Platform services" + }, + "https://www.googleapis.com/auth/cloud-platform.read-only": { + "description": "View your data across Google Cloud Platform services" + }, + "https://www.googleapis.com/auth/ndev.cloudman": { + "description": "View and manage your Google Cloud Platform management resources and deployment status information" + }, + "https://www.googleapis.com/auth/ndev.cloudman.readonly": { + "description": "View your Google Cloud Platform management resources and deployment status information" + } + } } - } - } - }, - "schemas": { - "AsyncOptions": { - "id": "AsyncOptions", - "type": "object", - "description": "Async options that determine when a resource should finish.", - "properties": { - "methodMatch": { - "type": "string", - "description": "Method regex where this policy will apply." - }, - "pollingOptions": { - "$ref": "PollingOptions", - "description": "Deployment manager will poll instances for this API resource setting a RUNNING state, and blocking until polling conditions tell whether the resource is completed or failed." - } - } }, - "AuditConfig": { - "id": "AuditConfig", - "type": "object", - "description": "Specifies the audit configuration for a service. The configuration determines which permission types are logged, and what identities, if any, are exempted from logging. An AuditConfig must have one or more AuditLogConfigs.\n\nIf there are AuditConfigs for both `allServices` and a specific service, the union of the two AuditConfigs is used for that service: the log_types specified in each AuditConfig are enabled, and the exempted_members in each AuditConfig are exempted.\n\nExample Policy with multiple AuditConfigs:\n\n{ \"audit_configs\": [ { \"service\": \"allServices\" \"audit_log_configs\": [ { \"log_type\": \"DATA_READ\", \"exempted_members\": [ \"user:foo@gmail.com\" ] }, { \"log_type\": \"DATA_WRITE\", }, { \"log_type\": \"ADMIN_READ\", } ] }, { \"service\": \"fooservice.googleapis.com\" \"audit_log_configs\": [ { \"log_type\": \"DATA_READ\", }, { \"log_type\": \"DATA_WRITE\", \"exempted_members\": [ \"user:bar@gmail.com\" ] } ] } ] }\n\nFor fooservice, this policy enables DATA_READ, DATA_WRITE and ADMIN_READ logging. It also exempts foo@gmail.com from DATA_READ logging, and bar@gmail.com from DATA_WRITE logging.", - "properties": { - "auditLogConfigs": { - "type": "array", - "description": "The configuration for logging of each type of permission.", - "items": { - "$ref": "AuditLogConfig" - } - }, - "exemptedMembers": { - "type": "array", - "description": "", - "items": { + "basePath": "/deploymentmanager/alpha/projects/", + "baseUrl": "https://www.googleapis.com/deploymentmanager/alpha/projects/", + "batchPath": "batch/deploymentmanager/alpha", + "canonicalName": "Deployment Manager Alpha", + "description": "The Deployment Manager API allows users to declaratively configure, deploy and run complex solutions on the Google Cloud Platform.", + "discoveryVersion": "v1", + "documentationLink": "https://cloud.google.com/deployment-manager/", + "etag": "\"-iA1DTNe4s-I6JZXPt1t1Ypy8IU/01WYREYbsLfwRWDJQpCucMHT0XA\"", + "icons": { + "x16": "https://www.gstatic.com/images/branding/product/1x/googleg_16dp.png", + "x32": "https://www.gstatic.com/images/branding/product/1x/googleg_32dp.png" + }, + "id": "deploymentmanager:alpha", + "kind": "discovery#restDescription", + "name": "deploymentmanager", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "alt": { + "default": "json", + "description": "Data format for the response.", + "enum": [ + "json" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json" + ], + "location": "query", "type": "string" - } }, - "service": { - "type": "string", - "description": "Specifies a service that will be enabled for audit logging. For example, `storage.googleapis.com`, `cloudsql.googleapis.com`. `allServices` is a special value that covers all services." - } - } - }, - "AuditLogConfig": { - "id": "AuditLogConfig", - "type": "object", - "description": "Provides the configuration for logging a type of permissions. Example:\n\n{ \"audit_log_configs\": [ { \"log_type\": \"DATA_READ\", \"exempted_members\": [ \"user:foo@gmail.com\" ] }, { \"log_type\": \"DATA_WRITE\", } ] }\n\nThis enables 'DATA_READ' and 'DATA_WRITE' logging, while exempting foo@gmail.com from DATA_READ logging.", - "properties": { - "exemptedMembers": { - "type": "array", - "description": "Specifies the identities that do not cause logging for this type of permission. Follows the same format of [Binding.members][].", - "items": { + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "location": "query", "type": "string" - } }, - "logType": { - "type": "string", - "description": "The log type that this config enables." - } - } - }, - "AuthorizationLoggingOptions": { - "id": "AuthorizationLoggingOptions", - "type": "object", - "description": "Authorization-related information used by Cloud Audit Logging.", - "properties": { - "permissionType": { - "type": "string", - "description": "The type of the permission that was checked." - } - } - }, - "BasicAuth": { - "id": "BasicAuth", - "type": "object", - "description": "Basic Auth used as a credential.", - "properties": { - "password": { - "type": "string" - }, - "user": { - "type": "string" - } - } - }, - "Binding": { - "id": "Binding", - "type": "object", - "description": "Associates `members` with a `role`.", - "properties": { - "condition": { - "$ref": "Expr", - "description": "The condition that is associated with this binding. NOTE: an unsatisfied condition will not allow user access via current binding. Different bindings, including their conditions, are examined independently. This field is GOOGLE_INTERNAL." - }, - "members": { - "type": "array", - "description": "Specifies the identities requesting access for a Cloud Platform resource. `members` can have the following values:\n\n* `allUsers`: A special identifier that represents anyone who is on the internet; with or without a Google account.\n\n* `allAuthenticatedUsers`: A special identifier that represents anyone who is authenticated with a Google account or a service account.\n\n* `user:{emailid}`: An email address that represents a specific Google account. For example, `alice@gmail.com` or `joe@example.com`.\n\n\n\n* `serviceAccount:{emailid}`: An email address that represents a service account. For example, `my-other-app@appspot.gserviceaccount.com`.\n\n* `group:{emailid}`: An email address that represents a Google group. For example, `admins@example.com`.\n\n\n\n* `domain:{domain}`: A Google Apps domain name that represents all the users of that domain. For example, `google.com` or `example.com`.", - "items": { - "type": "string" - } - }, - "role": { - "type": "string", - "description": "Role that is assigned to `members`. For example, `roles/viewer`, `roles/editor`, or `roles/owner`." - } - } - }, - "CollectionOverride": { - "id": "CollectionOverride", - "type": "object", - "description": "CollectionOverride allows resource handling overrides for specific resources within a BaseType", - "properties": { - "collection": { - "type": "string", - "description": "The collection that identifies this resource within its service." - }, - "methodMap": { - "$ref": "MethodMap", - "description": "Custom verb method mappings to support unordered list API mappings." - }, - "options": { - "$ref": "Options", - "description": "The options to apply to this resource-level override" - } - } - }, - "CompositeType": { - "id": "CompositeType", - "type": "object", - "description": "Holds the composite type.", - "properties": { - "description": { - "type": "string", - "description": "An optional textual description of the resource; provided by the client when the resource is created." - }, - "id": { - "type": "string", - "description": "Output only. Unique identifier for the resource; defined by the server.", - "format": "uint64" - }, - "insertTime": { - "type": "string", - "description": "Output only. Timestamp when the composite type was created, in RFC3339 text format." - }, - "labels": { - "type": "array", - "description": "Map of labels; provided by the client when the resource is created or updated. Specifically: Label keys must be between 1 and 63 characters long and must conform to the following regular expression: [a-z]([-a-z0-9]*[a-z0-9])? Label values must be between 0 and 63 characters long and must conform to the regular expression ([a-z]([-a-z0-9]*[a-z0-9])?)?", - "items": { - "$ref": "CompositeTypeLabelEntry" - } - }, - "name": { - "type": "string", - "description": "Name of the composite type, must follow the expression: [a-z]([-a-z0-9_.]{0,61}[a-z0-9])?." - }, - "operation": { - "$ref": "Operation", - "description": "Output only. The Operation that most recently ran, or is currently running, on this composite type." - }, - "selfLink": { - "type": "string", - "description": "Output only. Self link for the type provider." - }, - "status": { - "type": "string" - }, - "templateContents": { - "$ref": "TemplateContents", - "description": "Files for the template type." - } - } - }, - "CompositeTypeLabelEntry": { - "id": "CompositeTypeLabelEntry", - "type": "object", - "properties": { "key": { - "type": "string" + "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" }, - "value": { - "type": "string" + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", + "location": "query", + "type": "string" + }, + "userIp": { + "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", + "location": "query", + "type": "string" } - } }, - "CompositeTypesListResponse": { - "id": "CompositeTypesListResponse", - "type": "object", - "description": "A response that returns all Composite Types supported by Deployment Manager", - "properties": { + "protocol": "rest", + "resources": { "compositeTypes": { - "type": "array", - "description": "Output only. A list of resource composite types supported by Deployment Manager.", - "items": { - "$ref": "CompositeType" - } - }, - "nextPageToken": { - "type": "string", - "description": "A token used to continue a truncated list request." - } - } - }, - "Condition": { - "id": "Condition", - "type": "object", - "description": "A condition to be met.", - "properties": { - "iam": { - "type": "string", - "description": "Trusted attributes supplied by the IAM system." - }, - "op": { - "type": "string", - "description": "An operator to apply the subject with." - }, - "svc": { - "type": "string", - "description": "Trusted attributes discharged by the service." - }, - "sys": { - "type": "string", - "description": "Trusted attributes supplied by any service that owns resources and uses the IAM system for access control." - }, - "value": { - "type": "string", - "description": "DEPRECATED. Use 'values' instead." - }, - "values": { - "type": "array", - "description": "The objects of the condition. This is mutually exclusive with 'value'.", - "items": { - "type": "string" - } - } - } - }, - "ConfigFile": { - "id": "ConfigFile", - "type": "object", - "description": "", - "properties": { - "content": { - "type": "string", - "description": "The contents of the file." - } - } - }, - "ConfigurableService": { - "id": "ConfigurableService", - "type": "object", - "description": "BaseType that describes a service-backed Type.", - "properties": { - "collectionOverrides": { - "type": "array", - "description": "Allows resource handling overrides for specific collections", - "items": { - "$ref": "CollectionOverride" - } - }, - "credential": { - "$ref": "Credential", - "description": "Credential used when interacting with this type." - }, - "descriptorUrl": { - "type": "string", - "description": "Descriptor Url for the this type." - }, - "options": { - "$ref": "Options", - "description": "Options to apply when handling any resources in this service." - } - } - }, - "Credential": { - "id": "Credential", - "type": "object", - "description": "The credential used by Deployment Manager and TypeProvider. Only one of the options is permitted.", - "properties": { - "basicAuth": { - "$ref": "BasicAuth", - "description": "Basic Auth Credential, only used by TypeProvider." - }, - "serviceAccount": { - "$ref": "ServiceAccount", - "description": "Service Account Credential, only used by Deployment." - }, - "useProjectDefault": { - "type": "boolean", - "description": "Specify to use the project default credential, only supported by Deployment." - } - } - }, - "Deployment": { - "id": "Deployment", - "type": "object", - "description": "", - "properties": { - "credential": { - "$ref": "Credential", - "description": "User provided default credential for the deployment." - }, - "description": { - "type": "string", - "description": "An optional user-provided description of the deployment." - }, - "fingerprint": { - "type": "string", - "description": "Provides a fingerprint to use in requests to modify a deployment, such as update(), stop(), and cancelPreview() requests. A fingerprint is a randomly generated value that must be provided with update(), stop(), and cancelPreview() requests to perform optimistic locking. This ensures optimistic concurrency so that only one request happens at a time.\n\nThe fingerprint is initially generated by Deployment Manager and changes after every request to modify data. To get the latest fingerprint value, perform a get() request to a deployment.", - "format": "byte" - }, - "id": { - "type": "string", - "description": "Output only. Unique identifier for the resource; defined by the server.", - "format": "uint64" - }, - "insertTime": { - "type": "string", - "description": "Output only. Timestamp when the deployment was created, in RFC3339 text format ." - }, - "labels": { - "type": "array", - "description": "Map of labels; provided by the client when the resource is created or updated. Specifically: Label keys must be between 1 and 63 characters long and must conform to the following regular expression: [a-z]([-a-z0-9]*[a-z0-9])? Label values must be between 0 and 63 characters long and must conform to the regular expression ([a-z]([-a-z0-9]*[a-z0-9])?)?", - "items": { - "$ref": "DeploymentLabelEntry" - } - }, - "manifest": { - "type": "string", - "description": "Output only. URL of the manifest representing the last manifest that was successfully deployed." - }, - "name": { - "type": "string", - "description": "Name of the resource; provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash." - }, - "operation": { - "$ref": "Operation", - "description": "Output only. The Operation that most recently ran, or is currently running, on this deployment." - }, - "outputs": { - "type": "array", - "description": "Output only. Map of outputs from the last manifest that deployed successfully.", - "items": { - "$ref": "DeploymentOutputsEntry" - } - }, - "selfLink": { - "type": "string", - "description": "Output only. Self link for the deployment." - }, - "target": { - "$ref": "TargetConfiguration", - "description": "[Input Only] The parameters that define your deployment, including the deployment configuration and relevant templates." - }, - "update": { - "$ref": "DeploymentUpdate", - "description": "Output only. If Deployment Manager is currently updating or previewing an update to this deployment, the updated configuration appears here." - } - } - }, - "DeploymentLabelEntry": { - "id": "DeploymentLabelEntry", - "type": "object", - "properties": { - "key": { - "type": "string" - }, - "value": { - "type": "string" - } - } - }, - "DeploymentOutputsEntry": { - "id": "DeploymentOutputsEntry", - "type": "object", - "properties": { - "key": { - "type": "string" - }, - "value": { - "type": "string" - } - } - }, - "DeploymentUpdate": { - "id": "DeploymentUpdate", - "type": "object", - "description": "", - "properties": { - "credential": { - "$ref": "Credential", - "description": "Output only. The user-provided default credential to use when deploying this preview." - }, - "description": { - "type": "string", - "description": "Output only. An optional user-provided description of the deployment after the current update has been applied." - }, - "labels": { - "type": "array", - "description": "Output only. Map of labels; provided by the client when the resource is created or updated. Specifically: Label keys must be between 1 and 63 characters long and must conform to the following regular expression: [a-z]([-a-z0-9]*[a-z0-9])? Label values must be between 0 and 63 characters long and must conform to the regular expression ([a-z]([-a-z0-9]*[a-z0-9])?)?", - "items": { - "$ref": "DeploymentUpdateLabelEntry" - } - }, - "manifest": { - "type": "string", - "description": "Output only. URL of the manifest representing the update configuration of this deployment." - } - } - }, - "DeploymentUpdateLabelEntry": { - "id": "DeploymentUpdateLabelEntry", - "type": "object", - "properties": { - "key": { - "type": "string" - }, - "value": { - "type": "string" - } - } - }, - "DeploymentsCancelPreviewRequest": { - "id": "DeploymentsCancelPreviewRequest", - "type": "object", - "description": "", - "properties": { - "fingerprint": { - "type": "string", - "description": "Specifies a fingerprint for cancelPreview() requests. A fingerprint is a randomly generated value that must be provided in cancelPreview() requests to perform optimistic locking. This ensures optimistic concurrency so that the deployment does not have conflicting requests (e.g. if someone attempts to make a new update request while another user attempts to cancel a preview, this would prevent one of the requests).\n\nThe fingerprint is initially generated by Deployment Manager and changes after every request to modify a deployment. To get the latest fingerprint value, perform a get() request on the deployment.", - "format": "byte" - } - } - }, - "DeploymentsListResponse": { - "id": "DeploymentsListResponse", - "type": "object", - "description": "A response containing a partial list of deployments and a page token used to build the next request if the request has been truncated.", - "properties": { - "deployments": { - "type": "array", - "description": "Output only. The deployments contained in this response.", - "items": { - "$ref": "Deployment" - } - }, - "nextPageToken": { - "type": "string", - "description": "Output only. A token used to continue a truncated list request." - } - } - }, - "DeploymentsStopRequest": { - "id": "DeploymentsStopRequest", - "type": "object", - "description": "", - "properties": { - "fingerprint": { - "type": "string", - "description": "Specifies a fingerprint for stop() requests. A fingerprint is a randomly generated value that must be provided in stop() requests to perform optimistic locking. This ensures optimistic concurrency so that the deployment does not have conflicting requests (e.g. if someone attempts to make a new update request while another user attempts to stop an ongoing update request, this would prevent a collision).\n\nThe fingerprint is initially generated by Deployment Manager and changes after every request to modify a deployment. To get the latest fingerprint value, perform a get() request on the deployment.", - "format": "byte" - } - } - }, - "Diagnostic": { - "id": "Diagnostic", - "type": "object", - "description": "", - "properties": { - "field": { - "type": "string", - "description": "JsonPath expression on the resource that if non empty, indicates that this field needs to be extracted as a diagnostic." - }, - "level": { - "type": "string", - "description": "Level to record this diagnostic." - } - } - }, - "Expr": { - "id": "Expr", - "type": "object", - "description": "Represents an expression text. Example:\n\ntitle: \"User account presence\" description: \"Determines whether the request has a user account\" expression: \"size(request.user) \u003e 0\"", - "properties": { - "description": { - "type": "string", - "description": "An optional description of the expression. This is a longer text which describes the expression, e.g. when hovered over it in a UI." - }, - "expression": { - "type": "string", - "description": "Textual representation of an expression in Common Expression Language syntax.\n\nThe application context of the containing message determines which well-known feature set of CEL is supported." - }, - "location": { - "type": "string", - "description": "An optional string indicating the location of the expression for error reporting, e.g. a file name and a position in the file." - }, - "title": { - "type": "string", - "description": "An optional title for the expression, i.e. a short string describing its purpose. This can be used e.g. in UIs which allow to enter the expression." - } - } - }, - "ImportFile": { - "id": "ImportFile", - "type": "object", - "description": "", - "properties": { - "content": { - "type": "string", - "description": "The contents of the file." - }, - "name": { - "type": "string", - "description": "The name of the file." - } - } - }, - "InputMapping": { - "id": "InputMapping", - "type": "object", - "description": "InputMapping creates a 'virtual' property that will be injected into the properties before sending the request to the underlying API.", - "properties": { - "fieldName": { - "type": "string", - "description": "The name of the field that is going to be injected." - }, - "location": { - "type": "string", - "description": "The location where this mapping applies." - }, - "methodMatch": { - "type": "string", - "description": "Regex to evaluate on method to decide if input applies." - }, - "value": { - "type": "string", - "description": "A jsonPath expression to select an element." - } - } - }, - "LogConfig": { - "id": "LogConfig", - "type": "object", - "description": "Specifies what kind of log the caller must write", - "properties": { - "cloudAudit": { - "$ref": "LogConfigCloudAuditOptions", - "description": "Cloud audit options." - }, - "counter": { - "$ref": "LogConfigCounterOptions", - "description": "Counter options." - }, - "dataAccess": { - "$ref": "LogConfigDataAccessOptions", - "description": "Data access options." - } - } - }, - "LogConfigCloudAuditOptions": { - "id": "LogConfigCloudAuditOptions", - "type": "object", - "description": "Write a Cloud Audit log", - "properties": { - "authorizationLoggingOptions": { - "$ref": "AuthorizationLoggingOptions", - "description": "Information used by the Cloud Audit Logging pipeline." - }, - "logName": { - "type": "string", - "description": "The log_name to populate in the Cloud Audit Record." - } - } - }, - "LogConfigCounterOptions": { - "id": "LogConfigCounterOptions", - "type": "object", - "description": "Increment a streamz counter with the specified metric and field names.\n\nMetric names should start with a '/', generally be lowercase-only, and end in \"_count\". Field names should not contain an initial slash. The actual exported metric names will have \"/iam/policy\" prepended.\n\nField names correspond to IAM request parameters and field values are their respective values.\n\nAt present the only supported field names are - \"iam_principal\", corresponding to IAMContext.principal; - \"\" (empty string), resulting in one aggretated counter with no field.\n\nExamples: counter { metric: \"/debug_access_count\" field: \"iam_principal\" } ==\u003e increment counter /iam/policy/backend_debug_access_count {iam_principal=[value of IAMContext.principal]}\n\nAt this time we do not support: * multiple field names (though this may be supported in the future) * decrementing the counter * incrementing it by anything other than 1", - "properties": { - "field": { - "type": "string", - "description": "The field value to attribute." - }, - "metric": { - "type": "string", - "description": "The metric to update." - } - } - }, - "LogConfigDataAccessOptions": { - "id": "LogConfigDataAccessOptions", - "type": "object", - "description": "Write a Data Access (Gin) log", - "properties": { - "logMode": { - "type": "string", - "description": "Whether Gin logging should happen in a fail-closed manner at the caller. This is relevant only in the LocalIAM implementation, for now." - } - } - }, - "Manifest": { - "id": "Manifest", - "type": "object", - "description": "", - "properties": { - "config": { - "$ref": "ConfigFile", - "description": "Output only. The YAML configuration for this manifest." - }, - "expandedConfig": { - "type": "string", - "description": "Output only. The fully-expanded configuration file, including any templates and references." - }, - "id": { - "type": "string", - "description": "Output only. Unique identifier for the resource; defined by the server.", - "format": "uint64" - }, - "imports": { - "type": "array", - "description": "Output only. The imported files for this manifest.", - "items": { - "$ref": "ImportFile" - } - }, - "insertTime": { - "type": "string", - "description": "Output only. Timestamp when the manifest was created, in RFC3339 text format." - }, - "layout": { - "type": "string", - "description": "Output only. The YAML layout for this manifest." - }, - "name": { - "type": "string", - "description": "Output only.\n\nThe name of the manifest." - }, - "selfLink": { - "type": "string", - "description": "Output only. Self link for the manifest." - } - } - }, - "ManifestsListResponse": { - "id": "ManifestsListResponse", - "type": "object", - "description": "A response containing a partial list of manifests and a page token used to build the next request if the request has been truncated.", - "properties": { - "manifests": { - "type": "array", - "description": "Output only. Manifests contained in this list response.", - "items": { - "$ref": "Manifest" - } - }, - "nextPageToken": { - "type": "string", - "description": "Output only. A token used to continue a truncated list request." - } - } - }, - "MethodMap": { - "id": "MethodMap", - "type": "object", - "description": "Deployment Manager will call these methods during the events of creation/deletion/update/get/setIamPolicy", - "properties": { - "create": { - "type": "string", - "description": "The action identifier for the create method to be used for this collection" - }, - "delete": { - "type": "string", - "description": "The action identifier for the delete method to be used for this collection" - }, - "get": { - "type": "string", - "description": "The action identifier for the get method to be used for this collection" - }, - "setIamPolicy": { - "type": "string", - "description": "The action identifier for the setIamPolicy method to be used for this collection" - }, - "update": { - "type": "string", - "description": "The action identifier for the update method to be used for this collection" - } - } - }, - "Operation": { - "id": "Operation", - "type": "object", - "description": "An Operation resource, used to manage asynchronous API requests. (== resource_for v1.globalOperations ==) (== resource_for beta.globalOperations ==) (== resource_for v1.regionOperations ==) (== resource_for beta.regionOperations ==) (== resource_for v1.zoneOperations ==) (== resource_for beta.zoneOperations ==)", - "properties": { - "clientOperationId": { - "type": "string", - "description": "[Output Only] Reserved for future use." - }, - "creationTimestamp": { - "type": "string", - "description": "[Deprecated] This field is deprecated." - }, - "description": { - "type": "string", - "description": "[Output Only] A textual description of the operation, which is set when the operation is created." - }, - "endTime": { - "type": "string", - "description": "[Output Only] The time that this operation was completed. This value is in RFC3339 text format." - }, - "error": { - "type": "object", - "description": "[Output Only] If errors are generated during processing of the operation, this field will be populated.", - "properties": { - "errors": { - "type": "array", - "description": "[Output Only] The array of errors encountered while processing this operation.", - "items": { - "type": "object", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] The error type identifier for this error." - }, - "location": { - "type": "string", - "description": "[Output Only] Indicates the field in the request that caused the error. This property is optional." - }, - "message": { - "type": "string", - "description": "[Output Only] An optional, human-readable error message." - } - } - } - } - } - }, - "httpErrorMessage": { - "type": "string", - "description": "[Output Only] If the operation fails, this field contains the HTTP error message that was returned, such as NOT FOUND." - }, - "httpErrorStatusCode": { - "type": "integer", - "description": "[Output Only] If the operation fails, this field contains the HTTP error status code that was returned. For example, a 404 means the resource was not found.", - "format": "int32" - }, - "id": { - "type": "string", - "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", - "format": "uint64" - }, - "insertTime": { - "type": "string", - "description": "[Output Only] The time that this operation was requested. This value is in RFC3339 text format." - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of the resource. Always compute#operation for Operation resources.", - "default": "deploymentmanager#operation" - }, - "name": { - "type": "string", - "description": "[Output Only] Name of the resource." - }, - "operationType": { - "type": "string", - "description": "[Output Only] The type of operation, such as insert, update, or delete, and so on." - }, - "progress": { - "type": "integer", - "description": "[Output Only] An optional progress indicator that ranges from 0 to 100. There is no requirement that this be linear or support any granularity of operations. This should not be used to guess when the operation will be complete. This number should monotonically increase as the operation progresses.", - "format": "int32" - }, - "region": { - "type": "string", - "description": "[Output Only] The URL of the region where the operation resides. Only available when performing regional operations." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for the resource." - }, - "startTime": { - "type": "string", - "description": "[Output Only] The time that this operation was started by the server. This value is in RFC3339 text format." - }, - "status": { - "type": "string", - "description": "[Output Only] The status of the operation, which can be one of the following: PENDING, RUNNING, or DONE." - }, - "statusMessage": { - "type": "string", - "description": "[Output Only] An optional textual description of the current status of the operation." - }, - "targetId": { - "type": "string", - "description": "[Output Only] The unique target ID, which identifies a specific incarnation of the target resource.", - "format": "uint64" - }, - "targetLink": { - "type": "string", - "description": "[Output Only] The URL of the resource that the operation modifies. For operations related to creating a snapshot, this points to the persistent disk that the snapshot was created from." - }, - "user": { - "type": "string", - "description": "[Output Only] User who requested the operation, for example: user@example.com." - }, - "warnings": { - "type": "array", - "description": "[Output Only] If warning messages are generated during processing of the operation, this field will be populated.", - "items": { - "type": "object", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response." - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." + "methods": { + "delete": { + "description": "Deletes a composite type.", + "httpMethod": "DELETE", + "id": "deploymentmanager.compositeTypes.delete", + "parameterOrder": [ + "project", + "compositeType" + ], + "parameters": { + "compositeType": { + "description": "The name of the type for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9_.]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "The project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } + "path": "{project}/global/compositeTypes/{compositeType}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/ndev.cloudman" + ] + }, + "get": { + "description": "Gets information about a specific composite type.", + "httpMethod": "GET", + "id": "deploymentmanager.compositeTypes.get", + "parameterOrder": [ + "project", + "compositeType" + ], + "parameters": { + "compositeType": { + "description": "The name of the composite type for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9_.]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "The project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/compositeTypes/{compositeType}", + "response": { + "$ref": "CompositeType" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/ndev.cloudman", + "https://www.googleapis.com/auth/ndev.cloudman.readonly" + ] + }, + "insert": { + "description": "Creates a composite type.", + "httpMethod": "POST", + "id": "deploymentmanager.compositeTypes.insert", + "parameterOrder": [ + "project" + ], + "parameters": { + "project": { + "description": "The project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/compositeTypes", + "request": { + "$ref": "CompositeType" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/ndev.cloudman" + ] + }, + "list": { + "description": "Lists all composite types for Deployment Manager.", + "httpMethod": "GET", + "id": "deploymentmanager.compositeTypes.list", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "The project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/compositeTypes", + "response": { + "$ref": "CompositeTypesListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/ndev.cloudman", + "https://www.googleapis.com/auth/ndev.cloudman.readonly" + ] + }, + "patch": { + "description": "Updates a composite type. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "deploymentmanager.compositeTypes.patch", + "parameterOrder": [ + "project", + "compositeType" + ], + "parameters": { + "compositeType": { + "description": "The name of the composite type for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9_.]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "The project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/compositeTypes/{compositeType}", + "request": { + "$ref": "CompositeType" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/ndev.cloudman" + ] + }, + "update": { + "description": "Updates a composite type.", + "httpMethod": "PUT", + "id": "deploymentmanager.compositeTypes.update", + "parameterOrder": [ + "project", + "compositeType" + ], + "parameters": { + "compositeType": { + "description": "The name of the composite type for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9_.]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "The project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/compositeTypes/{compositeType}", + "request": { + "$ref": "CompositeType" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/ndev.cloudman" + ] } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } } - } }, - "zone": { - "type": "string", - "description": "[Output Only] The URL of the zone where the operation resides. Only available when performing per-zone operations." - } - } - }, - "OperationsListResponse": { - "id": "OperationsListResponse", - "type": "object", - "description": "A response containing a partial list of operations and a page token used to build the next request if the request has been truncated.", - "properties": { - "nextPageToken": { - "type": "string", - "description": "Output only. A token used to continue a truncated list request." + "deployments": { + "methods": { + "cancelPreview": { + "description": "Cancels and removes the preview currently associated with the deployment.", + "httpMethod": "POST", + "id": "deploymentmanager.deployments.cancelPreview", + "parameterOrder": [ + "project", + "deployment" + ], + "parameters": { + "deployment": { + "description": "The name of the deployment for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "The project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/deployments/{deployment}/cancelPreview", + "request": { + "$ref": "DeploymentsCancelPreviewRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/ndev.cloudman" + ] + }, + "delete": { + "description": "Deletes a deployment and all of the resources in the deployment.", + "httpMethod": "DELETE", + "id": "deploymentmanager.deployments.delete", + "parameterOrder": [ + "project", + "deployment" + ], + "parameters": { + "deletePolicy": { + "default": "DELETE", + "description": "Sets the policy to use for deleting resources.", + "enum": [ + "ABANDON", + "DELETE" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + }, + "deployment": { + "description": "The name of the deployment for this request.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "The project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/deployments/{deployment}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/ndev.cloudman" + ] + }, + "get": { + "description": "Gets information about a specific deployment.", + "httpMethod": "GET", + "id": "deploymentmanager.deployments.get", + "parameterOrder": [ + "project", + "deployment" + ], + "parameters": { + "deployment": { + "description": "The name of the deployment for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "The project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/deployments/{deployment}", + "response": { + "$ref": "Deployment" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/ndev.cloudman", + "https://www.googleapis.com/auth/ndev.cloudman.readonly" + ] + }, + "getIamPolicy": { + "description": "Gets the access control policy for a resource. May be empty if no such policy or resource exists.", + "httpMethod": "GET", + "id": "deploymentmanager.deployments.getIamPolicy", + "parameterOrder": [ + "project", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "[a-z0-9](?:[-a-z0-9_]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/deployments/{resource}/getIamPolicy", + "response": { + "$ref": "Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/ndev.cloudman" + ] + }, + "insert": { + "description": "Creates a deployment and all of the resources described by the deployment manifest.", + "httpMethod": "POST", + "id": "deploymentmanager.deployments.insert", + "parameterOrder": [ + "project" + ], + "parameters": { + "createPolicy": { + "default": "CREATE_OR_ACQUIRE", + "description": "Sets the policy to use for creating new resources.", + "enum": [ + "ACQUIRE", + "CREATE", + "CREATE_OR_ACQUIRE" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "location": "query", + "type": "string" + }, + "preview": { + "description": "If set to true, creates a deployment and creates \"shell\" resources but does not actually instantiate these resources. This allows you to preview what your deployment looks like. After previewing a deployment, you can deploy your resources by making a request with the update() method or you can use the cancelPreview() method to cancel the preview altogether. Note that the deployment will still exist after you cancel the preview and you must separately delete this deployment if you want to remove it.", + "location": "query", + "type": "boolean" + }, + "project": { + "description": "The project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/deployments", + "request": { + "$ref": "Deployment" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/ndev.cloudman" + ] + }, + "list": { + "description": "Lists all deployments for a given project.", + "httpMethod": "GET", + "id": "deploymentmanager.deployments.list", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "The project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/deployments", + "response": { + "$ref": "DeploymentsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/ndev.cloudman", + "https://www.googleapis.com/auth/ndev.cloudman.readonly" + ] + }, + "patch": { + "description": "Updates a deployment and all of the resources described by the deployment manifest. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "deploymentmanager.deployments.patch", + "parameterOrder": [ + "project", + "deployment" + ], + "parameters": { + "createPolicy": { + "default": "CREATE_OR_ACQUIRE", + "description": "Sets the policy to use for creating new resources.", + "enum": [ + "ACQUIRE", + "CREATE", + "CREATE_OR_ACQUIRE" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "location": "query", + "type": "string" + }, + "deletePolicy": { + "default": "DELETE", + "description": "Sets the policy to use for deleting resources.", + "enum": [ + "ABANDON", + "DELETE" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + }, + "deployment": { + "description": "The name of the deployment for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "preview": { + "default": "false", + "description": "If set to true, updates the deployment and creates and updates the \"shell\" resources but does not actually alter or instantiate these resources. This allows you to preview what your deployment will look like. You can use this intent to preview how an update would affect your deployment. You must provide a target.config with a configuration if this is set to true. After previewing a deployment, you can deploy your resources by making a request with the update() or you can cancelPreview() to remove the preview altogether. Note that the deployment will still exist after you cancel the preview and you must separately delete this deployment if you want to remove it.", + "location": "query", + "type": "boolean" + }, + "project": { + "description": "The project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/deployments/{deployment}", + "request": { + "$ref": "Deployment" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/ndev.cloudman" + ] + }, + "setIamPolicy": { + "description": "Sets the access control policy on the specified resource. Replaces any existing policy.", + "httpMethod": "POST", + "id": "deploymentmanager.deployments.setIamPolicy", + "parameterOrder": [ + "project", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "[a-z0-9](?:[-a-z0-9_]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/deployments/{resource}/setIamPolicy", + "request": { + "$ref": "Policy" + }, + "response": { + "$ref": "Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/ndev.cloudman" + ] + }, + "stop": { + "description": "Stops an ongoing operation. This does not roll back any work that has already been completed, but prevents any new work from being started.", + "httpMethod": "POST", + "id": "deploymentmanager.deployments.stop", + "parameterOrder": [ + "project", + "deployment" + ], + "parameters": { + "deployment": { + "description": "The name of the deployment for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "The project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/deployments/{deployment}/stop", + "request": { + "$ref": "DeploymentsStopRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/ndev.cloudman" + ] + }, + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource.", + "httpMethod": "POST", + "id": "deploymentmanager.deployments.testIamPermissions", + "parameterOrder": [ + "project", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "(?:[-a-z0-9_]{0,62}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/deployments/{resource}/testIamPermissions", + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/ndev.cloudman" + ] + }, + "update": { + "description": "Updates a deployment and all of the resources described by the deployment manifest.", + "httpMethod": "PUT", + "id": "deploymentmanager.deployments.update", + "parameterOrder": [ + "project", + "deployment" + ], + "parameters": { + "createPolicy": { + "default": "CREATE_OR_ACQUIRE", + "description": "Sets the policy to use for creating new resources.", + "enum": [ + "ACQUIRE", + "CREATE", + "CREATE_OR_ACQUIRE" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "location": "query", + "type": "string" + }, + "deletePolicy": { + "default": "DELETE", + "description": "Sets the policy to use for deleting resources.", + "enum": [ + "ABANDON", + "DELETE" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + }, + "deployment": { + "description": "The name of the deployment for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "preview": { + "default": "false", + "description": "If set to true, updates the deployment and creates and updates the \"shell\" resources but does not actually alter or instantiate these resources. This allows you to preview what your deployment will look like. You can use this intent to preview how an update would affect your deployment. You must provide a target.config with a configuration if this is set to true. After previewing a deployment, you can deploy your resources by making a request with the update() or you can cancelPreview() to remove the preview altogether. Note that the deployment will still exist after you cancel the preview and you must separately delete this deployment if you want to remove it.", + "location": "query", + "type": "boolean" + }, + "project": { + "description": "The project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/deployments/{deployment}", + "request": { + "$ref": "Deployment" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/ndev.cloudman" + ] + } + } + }, + "manifests": { + "methods": { + "get": { + "description": "Gets information about a specific manifest.", + "httpMethod": "GET", + "id": "deploymentmanager.manifests.get", + "parameterOrder": [ + "project", + "deployment", + "manifest" + ], + "parameters": { + "deployment": { + "description": "The name of the deployment for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "manifest": { + "description": "The name of the manifest for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "The project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/deployments/{deployment}/manifests/{manifest}", + "response": { + "$ref": "Manifest" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/ndev.cloudman", + "https://www.googleapis.com/auth/ndev.cloudman.readonly" + ] + }, + "list": { + "description": "Lists all manifests for a given deployment.", + "httpMethod": "GET", + "id": "deploymentmanager.manifests.list", + "parameterOrder": [ + "project", + "deployment" + ], + "parameters": { + "deployment": { + "description": "The name of the deployment for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "The project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/deployments/{deployment}/manifests", + "response": { + "$ref": "ManifestsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/ndev.cloudman", + "https://www.googleapis.com/auth/ndev.cloudman.readonly" + ] + } + } }, "operations": { - "type": "array", - "description": "Output only. Operations contained in this list response.", - "items": { - "$ref": "Operation" - } - } - } - }, - "Options": { - "id": "Options", - "type": "object", - "description": "Options allows customized resource handling by Deployment Manager.", - "properties": { - "asyncOptions": { - "type": "array", - "description": "Options regarding how to thread async requests.", - "items": { - "$ref": "AsyncOptions" - } - }, - "inputMappings": { - "type": "array", - "description": "The mappings that apply for requests.", - "items": { - "$ref": "InputMapping" - } - }, - "nameProperty": { - "type": "string", - "description": "The json path to the field in the resource JSON body into which the resource name should be mapped. Leaving this empty indicates that there should be no mapping performed." - }, - "validationOptions": { - "$ref": "ValidationOptions", - "description": "Options for how to validate and process properties on a resource." - } - } - }, - "Policy": { - "id": "Policy", - "type": "object", - "description": "Defines an Identity and Access Management (IAM) policy. It is used to specify access control policies for Cloud Platform resources.\n\n\n\nA `Policy` consists of a list of `bindings`. A `Binding` binds a list of `members` to a `role`, where the members can be user accounts, Google groups, Google domains, and service accounts. A `role` is a named list of permissions defined by IAM.\n\n**Example**\n\n{ \"bindings\": [ { \"role\": \"roles/owner\", \"members\": [ \"user:mike@example.com\", \"group:admins@example.com\", \"domain:google.com\", \"serviceAccount:my-other-app@appspot.gserviceaccount.com\", ] }, { \"role\": \"roles/viewer\", \"members\": [\"user:sean@example.com\"] } ] }\n\nFor a description of IAM and its features, see the [IAM developer's guide](https://cloud.google.com/iam).", - "properties": { - "auditConfigs": { - "type": "array", - "description": "Specifies cloud audit logging configuration for this policy.", - "items": { - "$ref": "AuditConfig" - } - }, - "bindings": { - "type": "array", - "description": "Associates a list of `members` to a `role`. `bindings` with no members will result in an error.", - "items": { - "$ref": "Binding" - } - }, - "etag": { - "type": "string", - "description": "`etag` is used for optimistic concurrency control as a way to help prevent simultaneous updates of a policy from overwriting each other. It is strongly suggested that systems make use of the `etag` in the read-modify-write cycle to perform policy updates in order to avoid race conditions: An `etag` is returned in the response to `getIamPolicy`, and systems are expected to put that etag in the request to `setIamPolicy` to ensure that their change will be applied to the same version of the policy.\n\nIf no `etag` is provided in the call to `setIamPolicy`, then the existing policy is overwritten blindly.", - "format": "byte" - }, - "iamOwned": { - "type": "boolean", - "description": "" - }, - "rules": { - "type": "array", - "description": "If more than one rule is specified, the rules are applied in the following manner: - All matching LOG rules are always applied. - If any DENY/DENY_WITH_LOG rule matches, permission is denied. Logging will be applied if one or more matching rule requires logging. - Otherwise, if any ALLOW/ALLOW_WITH_LOG rule matches, permission is granted. Logging will be applied if one or more matching rule requires logging. - Otherwise, if no rule applies, permission is denied.", - "items": { - "$ref": "Rule" - } - }, - "version": { - "type": "integer", - "description": "Version of the `Policy`. The default version is 0.", - "format": "int32" - } - } - }, - "PollingOptions": { - "id": "PollingOptions", - "type": "object", - "description": "", - "properties": { - "diagnostics": { - "type": "array", - "description": "An array of diagnostics to be collected by Deployment Manager, these diagnostics will be displayed to the user.", - "items": { - "$ref": "Diagnostic" - } - }, - "failCondition": { - "type": "string", - "description": "JsonPath expression that determines if the request failed." - }, - "finishCondition": { - "type": "string", - "description": "JsonPath expression that determines if the request is completed." - }, - "pollingLink": { - "type": "string", - "description": "JsonPath expression that evaluates to string, it indicates where to poll." - }, - "targetLink": { - "type": "string", - "description": "JsonPath expression, after polling is completed, indicates where to fetch the resource." - } - } - }, - "Resource": { - "id": "Resource", - "type": "object", - "description": "", - "properties": { - "accessControl": { - "$ref": "ResourceAccessControl", - "description": "The Access Control Policy set on this resource." - }, - "finalProperties": { - "type": "string", - "description": "Output only. The evaluated properties of the resource with references expanded. Returned as serialized YAML." - }, - "id": { - "type": "string", - "description": "Output only. Unique identifier for the resource; defined by the server.", - "format": "uint64" - }, - "insertTime": { - "type": "string", - "description": "Output only. Timestamp when the resource was created or acquired, in RFC3339 text format ." - }, - "lastUsedCredential": { - "$ref": "Credential", - "description": "Output only. The last used credential that successfully created/updated the resource." - }, - "manifest": { - "type": "string", - "description": "Output only. URL of the manifest representing the current configuration of this resource." - }, - "name": { - "type": "string", - "description": "Output only. The name of the resource as it appears in the YAML config." - }, - "properties": { - "type": "string", - "description": "Output only. The current properties of the resource before any references have been filled in. Returned as serialized YAML." - }, - "runtimePolicies": { - "type": "array", - "description": "Output only. In case this is an action, it will show the runtimePolicies on which this action will run in the deployment", - "items": { - "type": "string" - } - }, - "type": { - "type": "string", - "description": "Output only. The type of the resource, for example compute.v1.instance, or cloudfunctions.v1beta1.function." - }, - "update": { - "$ref": "ResourceUpdate", - "description": "Output only. If Deployment Manager is currently updating or previewing an update to this resource, the updated configuration appears here." - }, - "updateTime": { - "type": "string", - "description": "Output only. Timestamp when the resource was updated, in RFC3339 text format ." - }, - "url": { - "type": "string", - "description": "Output only. The URL of the actual resource." - }, - "warnings": { - "type": "array", - "description": "Output only. If warning messages are generated during processing of this resource, this field will be populated.", - "items": { - "type": "object", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response." - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." + "methods": { + "get": { + "description": "Gets information about a specific operation.", + "httpMethod": "GET", + "id": "deploymentmanager.operations.get", + "parameterOrder": [ + "project", + "operation" + ], + "parameters": { + "operation": { + "description": "The name of the operation for this request.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "The project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - } - }, - "ResourceAccessControl": { - "id": "ResourceAccessControl", - "type": "object", - "description": "The access controls set on the resource.", - "properties": { - "gcpIamPolicy": { - "type": "string", - "description": "The GCP IAM Policy to set on the resource." - } - } - }, - "ResourceUpdate": { - "id": "ResourceUpdate", - "type": "object", - "description": "", - "properties": { - "accessControl": { - "$ref": "ResourceAccessControl", - "description": "The Access Control Policy to set on this resource after updating the resource itself." - }, - "credential": { - "$ref": "Credential", - "description": "Output only. The credential that will be used creating/updating this resource." - }, - "error": { - "type": "object", - "description": "Output only. If errors are generated during update of the resource, this field will be populated.", - "properties": { - "errors": { - "type": "array", - "description": "[Output Only] The array of errors encountered while processing this operation.", - "items": { - "type": "object", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] The error type identifier for this error." - }, - "location": { - "type": "string", - "description": "[Output Only] Indicates the field in the request that caused the error. This property is optional." - }, - "message": { - "type": "string", - "description": "[Output Only] An optional, human-readable error message." - } - } - } - } - } - }, - "finalProperties": { - "type": "string", - "description": "Output only. The expanded properties of the resource with reference values expanded. Returned as serialized YAML." - }, - "intent": { - "type": "string", - "description": "Output only. The intent of the resource: PREVIEW, UPDATE, or CANCEL." - }, - "manifest": { - "type": "string", - "description": "Output only. URL of the manifest representing the update configuration of this resource." - }, - "properties": { - "type": "string", - "description": "Output only. The set of updated properties for this resource, before references are expanded. Returned as serialized YAML." - }, - "runtimePolicies": { - "type": "array", - "description": "Output only. In case this is an action, it will show the runtimePolicies that this action will have after updating the deployment.", - "items": { - "type": "string" - } - }, - "state": { - "type": "string", - "description": "Output only. The state of the resource." - }, - "warnings": { - "type": "array", - "description": "Output only. If warning messages are generated during processing of this resource, this field will be populated.", - "items": { - "type": "object", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response." - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." + "path": "{project}/global/operations/{operation}", + "response": { + "$ref": "Operation" }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/ndev.cloudman", + "https://www.googleapis.com/auth/ndev.cloudman.readonly" + ] + }, + "list": { + "description": "Lists all operations for a project.", + "httpMethod": "GET", + "id": "deploymentmanager.operations.list", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "The project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/operations", + "response": { + "$ref": "OperationsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/ndev.cloudman", + "https://www.googleapis.com/auth/ndev.cloudman.readonly" + ] } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } } - } - } - } - }, - "ResourcesListResponse": { - "id": "ResourcesListResponse", - "type": "object", - "description": "A response containing a partial list of resources and a page token used to build the next request if the request has been truncated.", - "properties": { - "nextPageToken": { - "type": "string", - "description": "A token used to continue a truncated list request." }, "resources": { - "type": "array", - "description": "Resources contained in this list response.", - "items": { - "$ref": "Resource" - } - } - } - }, - "Rule": { - "id": "Rule", - "type": "object", - "description": "A rule to be applied in a Policy.", - "properties": { - "action": { - "type": "string", - "description": "Required" - }, - "conditions": { - "type": "array", - "description": "Additional restrictions that must be met. All conditions must pass for the rule to match.", - "items": { - "$ref": "Condition" - } - }, - "description": { - "type": "string", - "description": "Human-readable description of the rule." - }, - "ins": { - "type": "array", - "description": "If one or more 'in' clauses are specified, the rule matches if the PRINCIPAL/AUTHORITY_SELECTOR is in at least one of these entries.", - "items": { - "type": "string" - } - }, - "logConfigs": { - "type": "array", - "description": "The config returned to callers of tech.iam.IAM.CheckPolicy for any entries that match the LOG action.", - "items": { - "$ref": "LogConfig" - } - }, - "notIns": { - "type": "array", - "description": "If one or more 'not_in' clauses are specified, the rule matches if the PRINCIPAL/AUTHORITY_SELECTOR is in none of the entries.", - "items": { - "type": "string" - } - }, - "permissions": { - "type": "array", - "description": "A permission is a string of form '..' (e.g., 'storage.buckets.list'). A value of '*' matches all permissions, and a verb part of '*' (e.g., 'storage.buckets.*') matches all verbs.", - "items": { - "type": "string" - } - } - } - }, - "ServiceAccount": { - "id": "ServiceAccount", - "type": "object", - "description": "Service Account used as a credential.", - "properties": { - "email": { - "type": "string", - "description": "The IAM service account email address like test@myproject.iam.gserviceaccount.com" - } - } - }, - "TargetConfiguration": { - "id": "TargetConfiguration", - "type": "object", - "description": "", - "properties": { - "config": { - "$ref": "ConfigFile", - "description": "The configuration to use for this deployment." - }, - "imports": { - "type": "array", - "description": "Specifies any files to import for this configuration. This can be used to import templates or other files. For example, you might import a text file in order to use the file in a template.", - "items": { - "$ref": "ImportFile" - } - } - } - }, - "TemplateContents": { - "id": "TemplateContents", - "type": "object", - "description": "Files that make up the template contents of a template type.", - "properties": { - "imports": { - "type": "array", - "description": "Import files referenced by the main template.", - "items": { - "$ref": "ImportFile" - } - }, - "interpreter": { - "type": "string", - "description": "Which interpreter (python or jinja) should be used during expansion." - }, - "mainTemplate": { - "type": "string", - "description": "The filename of the mainTemplate" - }, - "schema": { - "type": "string", - "description": "The contents of the template schema." - }, - "template": { - "type": "string", - "description": "The contents of the main template file." - } - } - }, - "TestPermissionsRequest": { - "id": "TestPermissionsRequest", - "type": "object", - "properties": { - "permissions": { - "type": "array", - "description": "The set of permissions to check for the 'resource'. Permissions with wildcards (such as '*' or 'storage.*') are not allowed.", - "items": { - "type": "string" - } - } - } - }, - "TestPermissionsResponse": { - "id": "TestPermissionsResponse", - "type": "object", - "properties": { - "permissions": { - "type": "array", - "description": "A subset of `TestPermissionsRequest.permissions` that the caller is allowed.", - "items": { - "type": "string" - } - } - } - }, - "Type": { - "id": "Type", - "type": "object", - "description": "A resource type supported by Deployment Manager.", - "properties": { - "configurableService": { - "$ref": "ConfigurableService", - "description": "Base Type (configurable service) that backs this Type." - }, - "description": { - "type": "string", - "description": "An optional textual description of the resource; provided by the client when the resource is created." - }, - "id": { - "type": "string", - "description": "Output only. Unique identifier for the resource; defined by the server.", - "format": "uint64" - }, - "insertTime": { - "type": "string", - "description": "Output only. Timestamp when the type was created, in RFC3339 text format." - }, - "labels": { - "type": "array", - "description": "Map of labels; provided by the client when the resource is created or updated. Specifically: Label keys must be between 1 and 63 characters long and must conform to the following regular expression: [a-z]([-a-z0-9]*[a-z0-9])? Label values must be between 0 and 63 characters long and must conform to the regular expression ([a-z]([-a-z0-9]*[a-z0-9])?)?", - "items": { - "$ref": "TypeLabelEntry" - } - }, - "name": { - "type": "string", - "description": "Name of the type." - }, - "operation": { - "$ref": "Operation", - "description": "Output only. The Operation that most recently ran, or is currently running, on this type." - }, - "selfLink": { - "type": "string", - "description": "Output only. Self link for the type." - } - } - }, - "TypeInfo": { - "id": "TypeInfo", - "type": "object", - "description": "Contains detailed information about a composite type, base type, or base type with specific collection.", - "properties": { - "description": { - "type": "string", - "description": "The description of the type." - }, - "documentationLink": { - "type": "string", - "description": "For swagger 2.0 externalDocs field will be used. For swagger 1.2 this field will be empty." - }, - "kind": { - "type": "string", - "description": "Output only. Type of the output. Always deploymentManager#TypeInfo for TypeInfo.", - "default": "deploymentmanager#typeInfo" - }, - "name": { - "type": "string", - "description": "The base type or composite type name." - }, - "schema": { - "$ref": "TypeInfoSchemaInfo", - "description": "For base types with a collection, we return a schema and documentation link For template types, we return only a schema" - }, - "selfLink": { - "type": "string", - "description": "Output only. Server-defined URL for the resource." - }, - "title": { - "type": "string", - "description": "The title on the API descriptor URL provided." - } - } - }, - "TypeInfoSchemaInfo": { - "id": "TypeInfoSchemaInfo", - "type": "object", - "description": "", - "properties": { - "input": { - "type": "string", - "description": "The properties that this composite type or base type collection accept as input, represented as a json blob, format is: JSON Schema Draft V4" - }, - "output": { - "type": "string", - "description": "The properties that this composite type or base type collection exposes as output, these properties can be used for references, represented as json blob, format is: JSON Schema Draft V4" - } - } - }, - "TypeLabelEntry": { - "id": "TypeLabelEntry", - "type": "object", - "properties": { - "key": { - "type": "string" - }, - "value": { - "type": "string" - } - } - }, - "TypeProvider": { - "id": "TypeProvider", - "type": "object", - "description": "A type provider that describes a service-backed Type.", - "properties": { - "collectionOverrides": { - "type": "array", - "description": "Allows resource handling overrides for specific collections", - "items": { - "$ref": "CollectionOverride" - } - }, - "credential": { - "$ref": "Credential", - "description": "Credential used when interacting with this type." - }, - "description": { - "type": "string", - "description": "An optional textual description of the resource; provided by the client when the resource is created." - }, - "descriptorUrl": { - "type": "string", - "description": "Descriptor Url for the this type provider." - }, - "id": { - "type": "string", - "description": "Output only. Unique identifier for the resource; defined by the server.", - "format": "uint64" - }, - "insertTime": { - "type": "string", - "description": "Output only. Timestamp when the type provider was created, in RFC3339 text format." - }, - "labels": { - "type": "array", - "description": "Map of labels; provided by the client when the resource is created or updated. Specifically: Label keys must be between 1 and 63 characters long and must conform to the following regular expression: [a-z]([-a-z0-9]*[a-z0-9])? Label values must be between 0 and 63 characters long and must conform to the regular expression ([a-z]([-a-z0-9]*[a-z0-9])?)?", - "items": { - "$ref": "TypeProviderLabelEntry" - } - }, - "name": { - "type": "string", - "description": "Name of the type provider." - }, - "operation": { - "$ref": "Operation", - "description": "Output only. The Operation that most recently ran, or is currently running, on this type provider." - }, - "options": { - "$ref": "Options", - "description": "Options to apply when handling any resources in this service." - }, - "selfLink": { - "type": "string", - "description": "Output only. Self link for the type provider." - } - } - }, - "TypeProviderLabelEntry": { - "id": "TypeProviderLabelEntry", - "type": "object", - "properties": { - "key": { - "type": "string" - }, - "value": { - "type": "string" - } - } - }, - "TypeProvidersListResponse": { - "id": "TypeProvidersListResponse", - "type": "object", - "description": "A response that returns all Type Providers supported by Deployment Manager", - "properties": { - "nextPageToken": { - "type": "string", - "description": "A token used to continue a truncated list request." + "methods": { + "get": { + "description": "Gets information about a single resource.", + "httpMethod": "GET", + "id": "deploymentmanager.resources.get", + "parameterOrder": [ + "project", + "deployment", + "resource" + ], + "parameters": { + "deployment": { + "description": "The name of the deployment for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "The project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "resource": { + "description": "The name of the resource for this request.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/deployments/{deployment}/resources/{resource}", + "response": { + "$ref": "Resource" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/ndev.cloudman", + "https://www.googleapis.com/auth/ndev.cloudman.readonly" + ] + }, + "list": { + "description": "Lists all resources in a given deployment.", + "httpMethod": "GET", + "id": "deploymentmanager.resources.list", + "parameterOrder": [ + "project", + "deployment" + ], + "parameters": { + "deployment": { + "description": "The name of the deployment for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "The project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/deployments/{deployment}/resources", + "response": { + "$ref": "ResourcesListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/ndev.cloudman", + "https://www.googleapis.com/auth/ndev.cloudman.readonly" + ] + } + } }, "typeProviders": { - "type": "array", - "description": "Output only. A list of resource type providers supported by Deployment Manager.", - "items": { - "$ref": "TypeProvider" - } - } - } - }, - "TypeProvidersListTypesResponse": { - "id": "TypeProvidersListTypesResponse", - "type": "object", - "description": "", - "properties": { - "nextPageToken": { - "type": "string", - "description": "A token used to continue a truncated list request." + "methods": { + "delete": { + "description": "Deletes a type provider.", + "httpMethod": "DELETE", + "id": "deploymentmanager.typeProviders.delete", + "parameterOrder": [ + "project", + "typeProvider" + ], + "parameters": { + "project": { + "description": "The project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "typeProvider": { + "description": "The name of the type provider for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/typeProviders/{typeProvider}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/ndev.cloudman" + ] + }, + "get": { + "description": "Gets information about a specific type provider.", + "httpMethod": "GET", + "id": "deploymentmanager.typeProviders.get", + "parameterOrder": [ + "project", + "typeProvider" + ], + "parameters": { + "project": { + "description": "The project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "typeProvider": { + "description": "The name of the type provider for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/typeProviders/{typeProvider}", + "response": { + "$ref": "TypeProvider" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/ndev.cloudman", + "https://www.googleapis.com/auth/ndev.cloudman.readonly" + ] + }, + "getType": { + "description": "Gets a type info for a type provided by a TypeProvider.", + "httpMethod": "GET", + "id": "deploymentmanager.typeProviders.getType", + "parameterOrder": [ + "project", + "typeProvider", + "type" + ], + "parameters": { + "project": { + "description": "The project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "type": { + "description": "The name of the type provider for this request.", + "location": "path", + "required": true, + "type": "string" + }, + "typeProvider": { + "description": "The name of the type provider for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/typeProviders/{typeProvider}/types/{type}", + "response": { + "$ref": "TypeInfo" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/ndev.cloudman", + "https://www.googleapis.com/auth/ndev.cloudman.readonly" + ] + }, + "insert": { + "description": "Creates a type provider.", + "httpMethod": "POST", + "id": "deploymentmanager.typeProviders.insert", + "parameterOrder": [ + "project" + ], + "parameters": { + "project": { + "description": "The project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/typeProviders", + "request": { + "$ref": "TypeProvider" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/ndev.cloudman" + ] + }, + "list": { + "description": "Lists all resource type providers for Deployment Manager.", + "httpMethod": "GET", + "id": "deploymentmanager.typeProviders.list", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "The project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/typeProviders", + "response": { + "$ref": "TypeProvidersListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/ndev.cloudman", + "https://www.googleapis.com/auth/ndev.cloudman.readonly" + ] + }, + "listTypes": { + "description": "Lists all the type info for a TypeProvider.", + "httpMethod": "GET", + "id": "deploymentmanager.typeProviders.listTypes", + "parameterOrder": [ + "project", + "typeProvider" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "The project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "typeProvider": { + "description": "The name of the type provider for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/typeProviders/{typeProvider}/types", + "response": { + "$ref": "TypeProvidersListTypesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/ndev.cloudman", + "https://www.googleapis.com/auth/ndev.cloudman.readonly" + ] + }, + "patch": { + "description": "Updates a type provider. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "deploymentmanager.typeProviders.patch", + "parameterOrder": [ + "project", + "typeProvider" + ], + "parameters": { + "project": { + "description": "The project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "typeProvider": { + "description": "The name of the type provider for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/typeProviders/{typeProvider}", + "request": { + "$ref": "TypeProvider" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/ndev.cloudman" + ] + }, + "update": { + "description": "Updates a type provider.", + "httpMethod": "PUT", + "id": "deploymentmanager.typeProviders.update", + "parameterOrder": [ + "project", + "typeProvider" + ], + "parameters": { + "project": { + "description": "The project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "typeProvider": { + "description": "The name of the type provider for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/typeProviders/{typeProvider}", + "request": { + "$ref": "TypeProvider" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/ndev.cloudman" + ] + } + } }, "types": { - "type": "array", - "description": "Output only. A list of resource type info.", - "items": { - "$ref": "TypeInfo" - } + "methods": { + "delete": { + "description": "Deletes a type and all of the resources in the type.", + "httpMethod": "DELETE", + "id": "deploymentmanager.types.delete", + "parameterOrder": [ + "project", + "type" + ], + "parameters": { + "project": { + "description": "The project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "type": { + "description": "The name of the type for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/types/{type}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/ndev.cloudman" + ] + }, + "get": { + "description": "Gets information about a specific type.", + "httpMethod": "GET", + "id": "deploymentmanager.types.get", + "parameterOrder": [ + "project", + "type" + ], + "parameters": { + "project": { + "description": "The project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "type": { + "description": "The name of the type for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/types/{type}", + "response": { + "$ref": "Type" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/ndev.cloudman", + "https://www.googleapis.com/auth/ndev.cloudman.readonly" + ] + }, + "insert": { + "description": "Creates a type.", + "httpMethod": "POST", + "id": "deploymentmanager.types.insert", + "parameterOrder": [ + "project" + ], + "parameters": { + "project": { + "description": "The project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/types", + "request": { + "$ref": "Type" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/ndev.cloudman" + ] + }, + "list": { + "description": "Lists all resource types for Deployment Manager.", + "httpMethod": "GET", + "id": "deploymentmanager.types.list", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "The project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/types", + "response": { + "$ref": "TypesListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/ndev.cloudman", + "https://www.googleapis.com/auth/ndev.cloudman.readonly" + ] + }, + "patch": { + "description": "Updates a type. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "deploymentmanager.types.patch", + "parameterOrder": [ + "project", + "type" + ], + "parameters": { + "project": { + "description": "The project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "type": { + "description": "The name of the type for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/types/{type}", + "request": { + "$ref": "Type" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/ndev.cloudman" + ] + }, + "update": { + "description": "Updates a type.", + "httpMethod": "PUT", + "id": "deploymentmanager.types.update", + "parameterOrder": [ + "project", + "type" + ], + "parameters": { + "project": { + "description": "The project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "type": { + "description": "The name of the type for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/types/{type}", + "request": { + "$ref": "Type" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/ndev.cloudman" + ] + } + } } - } }, - "TypesListResponse": { - "id": "TypesListResponse", - "type": "object", - "description": "A response that returns all Types supported by Deployment Manager", - "properties": { - "nextPageToken": { - "type": "string", - "description": "A token used to continue a truncated list request." + "revision": "20180309", + "rootUrl": "https://www.googleapis.com/", + "schemas": { + "AsyncOptions": { + "description": "Async options that determine when a resource should finish.", + "id": "AsyncOptions", + "properties": { + "methodMatch": { + "description": "Method regex where this policy will apply.", + "type": "string" + }, + "pollingOptions": { + "$ref": "PollingOptions", + "description": "Deployment manager will poll instances for this API resource setting a RUNNING state, and blocking until polling conditions tell whether the resource is completed or failed." + } + }, + "type": "object" }, - "types": { - "type": "array", - "description": "Output only. A list of resource types supported by Deployment Manager.", - "items": { - "$ref": "Type" - } + "AuditConfig": { + "description": "Specifies the audit configuration for a service. The configuration determines which permission types are logged, and what identities, if any, are exempted from logging. An AuditConfig must have one or more AuditLogConfigs.\n\nIf there are AuditConfigs for both `allServices` and a specific service, the union of the two AuditConfigs is used for that service: the log_types specified in each AuditConfig are enabled, and the exempted_members in each AuditLogConfig are exempted.\n\nExample Policy with multiple AuditConfigs:\n\n{ \"audit_configs\": [ { \"service\": \"allServices\" \"audit_log_configs\": [ { \"log_type\": \"DATA_READ\", \"exempted_members\": [ \"user:foo@gmail.com\" ] }, { \"log_type\": \"DATA_WRITE\", }, { \"log_type\": \"ADMIN_READ\", } ] }, { \"service\": \"fooservice.googleapis.com\" \"audit_log_configs\": [ { \"log_type\": \"DATA_READ\", }, { \"log_type\": \"DATA_WRITE\", \"exempted_members\": [ \"user:bar@gmail.com\" ] } ] } ] }\n\nFor fooservice, this policy enables DATA_READ, DATA_WRITE and ADMIN_READ logging. It also exempts foo@gmail.com from DATA_READ logging, and bar@gmail.com from DATA_WRITE logging.", + "id": "AuditConfig", + "properties": { + "auditLogConfigs": { + "description": "The configuration for logging of each type of permission.", + "items": { + "$ref": "AuditLogConfig" + }, + "type": "array" + }, + "exemptedMembers": { + "description": "", + "items": { + "type": "string" + }, + "type": "array" + }, + "service": { + "description": "Specifies a service that will be enabled for audit logging. For example, `storage.googleapis.com`, `cloudsql.googleapis.com`. `allServices` is a special value that covers all services.", + "type": "string" + } + }, + "type": "object" + }, + "AuditLogConfig": { + "description": "Provides the configuration for logging a type of permissions. Example:\n\n{ \"audit_log_configs\": [ { \"log_type\": \"DATA_READ\", \"exempted_members\": [ \"user:foo@gmail.com\" ] }, { \"log_type\": \"DATA_WRITE\", } ] }\n\nThis enables 'DATA_READ' and 'DATA_WRITE' logging, while exempting foo@gmail.com from DATA_READ logging.", + "id": "AuditLogConfig", + "properties": { + "exemptedMembers": { + "description": "Specifies the identities that do not cause logging for this type of permission. Follows the same format of [Binding.members][].", + "items": { + "type": "string" + }, + "type": "array" + }, + "logType": { + "description": "The log type that this config enables.", + "type": "string" + } + }, + "type": "object" + }, + "AuthorizationLoggingOptions": { + "description": "Authorization-related information used by Cloud Audit Logging.", + "id": "AuthorizationLoggingOptions", + "properties": { + "permissionType": { + "description": "The type of the permission that was checked.", + "type": "string" + } + }, + "type": "object" + }, + "BasicAuth": { + "description": "Basic Auth used as a credential.", + "id": "BasicAuth", + "properties": { + "password": { + "type": "string" + }, + "user": { + "type": "string" + } + }, + "type": "object" + }, + "Binding": { + "description": "Associates `members` with a `role`.", + "id": "Binding", + "properties": { + "condition": { + "$ref": "Expr", + "description": "The condition that is associated with this binding. NOTE: an unsatisfied condition will not allow user access via current binding. Different bindings, including their conditions, are examined independently. This field is only visible as GOOGLE_INTERNAL or CONDITION_TRUSTED_TESTER." + }, + "members": { + "description": "Specifies the identities requesting access for a Cloud Platform resource. `members` can have the following values:\n\n* `allUsers`: A special identifier that represents anyone who is on the internet; with or without a Google account.\n\n* `allAuthenticatedUsers`: A special identifier that represents anyone who is authenticated with a Google account or a service account.\n\n* `user:{emailid}`: An email address that represents a specific Google account. For example, `alice@gmail.com` or `joe@example.com`.\n\n\n\n* `serviceAccount:{emailid}`: An email address that represents a service account. For example, `my-other-app@appspot.gserviceaccount.com`.\n\n* `group:{emailid}`: An email address that represents a Google group. For example, `admins@example.com`.\n\n\n\n* `domain:{domain}`: A Google Apps domain name that represents all the users of that domain. For example, `google.com` or `example.com`.", + "items": { + "type": "string" + }, + "type": "array" + }, + "role": { + "description": "Role that is assigned to `members`. For example, `roles/viewer`, `roles/editor`, or `roles/owner`.", + "type": "string" + } + }, + "type": "object" + }, + "CollectionOverride": { + "description": "CollectionOverride allows resource handling overrides for specific resources within a BaseType", + "id": "CollectionOverride", + "properties": { + "collection": { + "description": "The collection that identifies this resource within its service.", + "type": "string" + }, + "methodMap": { + "$ref": "MethodMap", + "description": "Custom verb method mappings to support unordered list API mappings." + }, + "options": { + "$ref": "Options", + "description": "The options to apply to this resource-level override" + } + }, + "type": "object" + }, + "CompositeType": { + "description": "Holds the composite type.", + "id": "CompositeType", + "properties": { + "description": { + "description": "An optional textual description of the resource; provided by the client when the resource is created.", + "type": "string" + }, + "id": { + "description": "Output only. Unique identifier for the resource; defined by the server.", + "format": "uint64", + "type": "string" + }, + "insertTime": { + "description": "Output only. Timestamp when the composite type was created, in RFC3339 text format.", + "type": "string" + }, + "labels": { + "description": "Map of labels; provided by the client when the resource is created or updated. Specifically: Label keys must be between 1 and 63 characters long and must conform to the following regular expression: [a-z]([-a-z0-9]*[a-z0-9])? Label values must be between 0 and 63 characters long and must conform to the regular expression ([a-z]([-a-z0-9]*[a-z0-9])?)?", + "items": { + "$ref": "CompositeTypeLabelEntry" + }, + "type": "array" + }, + "name": { + "description": "Name of the composite type, must follow the expression: [a-z]([-a-z0-9_.]{0,61}[a-z0-9])?.", + "type": "string" + }, + "operation": { + "$ref": "Operation", + "description": "Output only. The Operation that most recently ran, or is currently running, on this composite type." + }, + "selfLink": { + "description": "Output only. Self link for the type provider.", + "type": "string" + }, + "status": { + "type": "string" + }, + "templateContents": { + "$ref": "TemplateContents", + "description": "Files for the template type." + } + }, + "type": "object" + }, + "CompositeTypeLabelEntry": { + "id": "CompositeTypeLabelEntry", + "properties": { + "key": { + "type": "string" + }, + "value": { + "type": "string" + } + }, + "type": "object" + }, + "CompositeTypesListResponse": { + "description": "A response that returns all Composite Types supported by Deployment Manager", + "id": "CompositeTypesListResponse", + "properties": { + "compositeTypes": { + "description": "Output only. A list of resource composite types supported by Deployment Manager.", + "items": { + "$ref": "CompositeType" + }, + "type": "array" + }, + "nextPageToken": { + "description": "A token used to continue a truncated list request.", + "type": "string" + } + }, + "type": "object" + }, + "Condition": { + "description": "A condition to be met.", + "id": "Condition", + "properties": { + "iam": { + "description": "Trusted attributes supplied by the IAM system.", + "type": "string" + }, + "op": { + "description": "An operator to apply the subject with.", + "type": "string" + }, + "svc": { + "description": "Trusted attributes discharged by the service.", + "type": "string" + }, + "sys": { + "description": "Trusted attributes supplied by any service that owns resources and uses the IAM system for access control.", + "type": "string" + }, + "value": { + "description": "DEPRECATED. Use 'values' instead.", + "type": "string" + }, + "values": { + "description": "The objects of the condition. This is mutually exclusive with 'value'.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "ConfigFile": { + "description": "", + "id": "ConfigFile", + "properties": { + "content": { + "description": "The contents of the file.", + "type": "string" + } + }, + "type": "object" + }, + "ConfigurableService": { + "description": "BaseType that describes a service-backed Type.", + "id": "ConfigurableService", + "properties": { + "collectionOverrides": { + "description": "Allows resource handling overrides for specific collections", + "items": { + "$ref": "CollectionOverride" + }, + "type": "array" + }, + "credential": { + "$ref": "Credential", + "description": "Credential used when interacting with this type." + }, + "descriptorUrl": { + "description": "Descriptor Url for the this type.", + "type": "string" + }, + "options": { + "$ref": "Options", + "description": "Options to apply when handling any resources in this service." + } + }, + "type": "object" + }, + "Credential": { + "description": "The credential used by Deployment Manager and TypeProvider. Only one of the options is permitted.", + "id": "Credential", + "properties": { + "basicAuth": { + "$ref": "BasicAuth", + "description": "Basic Auth Credential, only used by TypeProvider." + }, + "serviceAccount": { + "$ref": "ServiceAccount", + "description": "Service Account Credential, only used by Deployment." + }, + "useProjectDefault": { + "description": "Specify to use the project default credential, only supported by Deployment.", + "type": "boolean" + } + }, + "type": "object" + }, + "Deployment": { + "description": "", + "id": "Deployment", + "properties": { + "credential": { + "$ref": "Credential", + "description": "User provided default credential for the deployment." + }, + "description": { + "description": "An optional user-provided description of the deployment.", + "type": "string" + }, + "fingerprint": { + "description": "Provides a fingerprint to use in requests to modify a deployment, such as update(), stop(), and cancelPreview() requests. A fingerprint is a randomly generated value that must be provided with update(), stop(), and cancelPreview() requests to perform optimistic locking. This ensures optimistic concurrency so that only one request happens at a time.\n\nThe fingerprint is initially generated by Deployment Manager and changes after every request to modify data. To get the latest fingerprint value, perform a get() request to a deployment.", + "format": "byte", + "type": "string" + }, + "id": { + "description": "Output only. Unique identifier for the resource; defined by the server.", + "format": "uint64", + "type": "string" + }, + "insertTime": { + "description": "Output only. Timestamp when the deployment was created, in RFC3339 text format .", + "type": "string" + }, + "labels": { + "description": "Map of labels; provided by the client when the resource is created or updated. Specifically: Label keys must be between 1 and 63 characters long and must conform to the following regular expression: [a-z]([-a-z0-9]*[a-z0-9])? Label values must be between 0 and 63 characters long and must conform to the regular expression ([a-z]([-a-z0-9]*[a-z0-9])?)?", + "items": { + "$ref": "DeploymentLabelEntry" + }, + "type": "array" + }, + "manifest": { + "description": "Output only. URL of the manifest representing the last manifest that was successfully deployed.", + "type": "string" + }, + "name": { + "description": "Name of the resource; provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "type": "string" + }, + "operation": { + "$ref": "Operation", + "description": "Output only. The Operation that most recently ran, or is currently running, on this deployment." + }, + "outputs": { + "description": "Output only. Map of outputs from the last manifest that deployed successfully.", + "items": { + "$ref": "DeploymentOutputsEntry" + }, + "type": "array" + }, + "selfLink": { + "description": "Output only. Self link for the deployment.", + "type": "string" + }, + "target": { + "$ref": "TargetConfiguration", + "description": "[Input Only] The parameters that define your deployment, including the deployment configuration and relevant templates." + }, + "update": { + "$ref": "DeploymentUpdate", + "description": "Output only. If Deployment Manager is currently updating or previewing an update to this deployment, the updated configuration appears here." + } + }, + "type": "object" + }, + "DeploymentLabelEntry": { + "id": "DeploymentLabelEntry", + "properties": { + "key": { + "type": "string" + }, + "value": { + "type": "string" + } + }, + "type": "object" + }, + "DeploymentOutputsEntry": { + "id": "DeploymentOutputsEntry", + "properties": { + "key": { + "type": "string" + }, + "value": { + "type": "string" + } + }, + "type": "object" + }, + "DeploymentUpdate": { + "description": "", + "id": "DeploymentUpdate", + "properties": { + "credential": { + "$ref": "Credential", + "description": "Output only. The user-provided default credential to use when deploying this preview." + }, + "description": { + "description": "Output only. An optional user-provided description of the deployment after the current update has been applied.", + "type": "string" + }, + "labels": { + "description": "Output only. Map of labels; provided by the client when the resource is created or updated. Specifically: Label keys must be between 1 and 63 characters long and must conform to the following regular expression: [a-z]([-a-z0-9]*[a-z0-9])? Label values must be between 0 and 63 characters long and must conform to the regular expression ([a-z]([-a-z0-9]*[a-z0-9])?)?", + "items": { + "$ref": "DeploymentUpdateLabelEntry" + }, + "type": "array" + }, + "manifest": { + "description": "Output only. URL of the manifest representing the update configuration of this deployment.", + "type": "string" + } + }, + "type": "object" + }, + "DeploymentUpdateLabelEntry": { + "id": "DeploymentUpdateLabelEntry", + "properties": { + "key": { + "type": "string" + }, + "value": { + "type": "string" + } + }, + "type": "object" + }, + "DeploymentsCancelPreviewRequest": { + "description": "", + "id": "DeploymentsCancelPreviewRequest", + "properties": { + "fingerprint": { + "description": "Specifies a fingerprint for cancelPreview() requests. A fingerprint is a randomly generated value that must be provided in cancelPreview() requests to perform optimistic locking. This ensures optimistic concurrency so that the deployment does not have conflicting requests (e.g. if someone attempts to make a new update request while another user attempts to cancel a preview, this would prevent one of the requests).\n\nThe fingerprint is initially generated by Deployment Manager and changes after every request to modify a deployment. To get the latest fingerprint value, perform a get() request on the deployment.", + "format": "byte", + "type": "string" + } + }, + "type": "object" + }, + "DeploymentsListResponse": { + "description": "A response containing a partial list of deployments and a page token used to build the next request if the request has been truncated.", + "id": "DeploymentsListResponse", + "properties": { + "deployments": { + "description": "Output only. The deployments contained in this response.", + "items": { + "$ref": "Deployment" + }, + "type": "array" + }, + "nextPageToken": { + "description": "Output only. A token used to continue a truncated list request.", + "type": "string" + } + }, + "type": "object" + }, + "DeploymentsStopRequest": { + "description": "", + "id": "DeploymentsStopRequest", + "properties": { + "fingerprint": { + "description": "Specifies a fingerprint for stop() requests. A fingerprint is a randomly generated value that must be provided in stop() requests to perform optimistic locking. This ensures optimistic concurrency so that the deployment does not have conflicting requests (e.g. if someone attempts to make a new update request while another user attempts to stop an ongoing update request, this would prevent a collision).\n\nThe fingerprint is initially generated by Deployment Manager and changes after every request to modify a deployment. To get the latest fingerprint value, perform a get() request on the deployment.", + "format": "byte", + "type": "string" + } + }, + "type": "object" + }, + "Diagnostic": { + "description": "", + "id": "Diagnostic", + "properties": { + "field": { + "description": "JsonPath expression on the resource that if non empty, indicates that this field needs to be extracted as a diagnostic.", + "type": "string" + }, + "level": { + "description": "Level to record this diagnostic.", + "type": "string" + } + }, + "type": "object" + }, + "Expr": { + "description": "Represents an expression text. Example:\n\ntitle: \"User account presence\" description: \"Determines whether the request has a user account\" expression: \"size(request.user) \u003e 0\"", + "id": "Expr", + "properties": { + "description": { + "description": "An optional description of the expression. This is a longer text which describes the expression, e.g. when hovered over it in a UI.", + "type": "string" + }, + "expression": { + "description": "Textual representation of an expression in Common Expression Language syntax.\n\nThe application context of the containing message determines which well-known feature set of CEL is supported.", + "type": "string" + }, + "location": { + "description": "An optional string indicating the location of the expression for error reporting, e.g. a file name and a position in the file.", + "type": "string" + }, + "title": { + "description": "An optional title for the expression, i.e. a short string describing its purpose. This can be used e.g. in UIs which allow to enter the expression.", + "type": "string" + } + }, + "type": "object" + }, + "ImportFile": { + "description": "", + "id": "ImportFile", + "properties": { + "content": { + "description": "The contents of the file.", + "type": "string" + }, + "name": { + "description": "The name of the file.", + "type": "string" + } + }, + "type": "object" + }, + "InputMapping": { + "description": "InputMapping creates a 'virtual' property that will be injected into the properties before sending the request to the underlying API.", + "id": "InputMapping", + "properties": { + "fieldName": { + "description": "The name of the field that is going to be injected.", + "type": "string" + }, + "location": { + "description": "The location where this mapping applies.", + "type": "string" + }, + "methodMatch": { + "description": "Regex to evaluate on method to decide if input applies.", + "type": "string" + }, + "value": { + "description": "A jsonPath expression to select an element.", + "type": "string" + } + }, + "type": "object" + }, + "LogConfig": { + "description": "Specifies what kind of log the caller must write", + "id": "LogConfig", + "properties": { + "cloudAudit": { + "$ref": "LogConfigCloudAuditOptions", + "description": "Cloud audit options." + }, + "counter": { + "$ref": "LogConfigCounterOptions", + "description": "Counter options." + }, + "dataAccess": { + "$ref": "LogConfigDataAccessOptions", + "description": "Data access options." + } + }, + "type": "object" + }, + "LogConfigCloudAuditOptions": { + "description": "Write a Cloud Audit log", + "id": "LogConfigCloudAuditOptions", + "properties": { + "authorizationLoggingOptions": { + "$ref": "AuthorizationLoggingOptions", + "description": "Information used by the Cloud Audit Logging pipeline." + }, + "logName": { + "description": "The log_name to populate in the Cloud Audit Record.", + "type": "string" + } + }, + "type": "object" + }, + "LogConfigCounterOptions": { + "description": "Increment a streamz counter with the specified metric and field names.\n\nMetric names should start with a '/', generally be lowercase-only, and end in \"_count\". Field names should not contain an initial slash. The actual exported metric names will have \"/iam/policy\" prepended.\n\nField names correspond to IAM request parameters and field values are their respective values.\n\nAt present the only supported field names are - \"iam_principal\", corresponding to IAMContext.principal; - \"\" (empty string), resulting in one aggretated counter with no field.\n\nExamples: counter { metric: \"/debug_access_count\" field: \"iam_principal\" } ==\u003e increment counter /iam/policy/backend_debug_access_count {iam_principal=[value of IAMContext.principal]}\n\nAt this time we do not support: * multiple field names (though this may be supported in the future) * decrementing the counter * incrementing it by anything other than 1", + "id": "LogConfigCounterOptions", + "properties": { + "field": { + "description": "The field value to attribute.", + "type": "string" + }, + "metric": { + "description": "The metric to update.", + "type": "string" + } + }, + "type": "object" + }, + "LogConfigDataAccessOptions": { + "description": "Write a Data Access (Gin) log", + "id": "LogConfigDataAccessOptions", + "properties": { + "logMode": { + "description": "Whether Gin logging should happen in a fail-closed manner at the caller. This is relevant only in the LocalIAM implementation, for now.", + "type": "string" + } + }, + "type": "object" + }, + "Manifest": { + "description": "", + "id": "Manifest", + "properties": { + "config": { + "$ref": "ConfigFile", + "description": "Output only. The YAML configuration for this manifest." + }, + "expandedConfig": { + "description": "Output only. The fully-expanded configuration file, including any templates and references.", + "type": "string" + }, + "id": { + "description": "Output only. Unique identifier for the resource; defined by the server.", + "format": "uint64", + "type": "string" + }, + "imports": { + "description": "Output only. The imported files for this manifest.", + "items": { + "$ref": "ImportFile" + }, + "type": "array" + }, + "insertTime": { + "description": "Output only. Timestamp when the manifest was created, in RFC3339 text format.", + "type": "string" + }, + "layout": { + "description": "Output only. The YAML layout for this manifest.", + "type": "string" + }, + "name": { + "description": "Output only.\n\nThe name of the manifest.", + "type": "string" + }, + "selfLink": { + "description": "Output only. Self link for the manifest.", + "type": "string" + } + }, + "type": "object" + }, + "ManifestsListResponse": { + "description": "A response containing a partial list of manifests and a page token used to build the next request if the request has been truncated.", + "id": "ManifestsListResponse", + "properties": { + "manifests": { + "description": "Output only. Manifests contained in this list response.", + "items": { + "$ref": "Manifest" + }, + "type": "array" + }, + "nextPageToken": { + "description": "Output only. A token used to continue a truncated list request.", + "type": "string" + } + }, + "type": "object" + }, + "MethodMap": { + "description": "Deployment Manager will call these methods during the events of creation/deletion/update/get/setIamPolicy", + "id": "MethodMap", + "properties": { + "create": { + "description": "The action identifier for the create method to be used for this collection", + "type": "string" + }, + "delete": { + "description": "The action identifier for the delete method to be used for this collection", + "type": "string" + }, + "get": { + "description": "The action identifier for the get method to be used for this collection", + "type": "string" + }, + "setIamPolicy": { + "description": "The action identifier for the setIamPolicy method to be used for this collection", + "type": "string" + }, + "update": { + "description": "The action identifier for the update method to be used for this collection", + "type": "string" + } + }, + "type": "object" + }, + "Operation": { + "description": "An Operation resource, used to manage asynchronous API requests. (== resource_for v1.globalOperations ==) (== resource_for beta.globalOperations ==) (== resource_for v1.regionOperations ==) (== resource_for beta.regionOperations ==) (== resource_for v1.zoneOperations ==) (== resource_for beta.zoneOperations ==)", + "id": "Operation", + "properties": { + "clientOperationId": { + "description": "[Output Only] Reserved for future use.", + "type": "string" + }, + "creationTimestamp": { + "description": "[Deprecated] This field is deprecated.", + "type": "string" + }, + "description": { + "description": "[Output Only] A textual description of the operation, which is set when the operation is created.", + "type": "string" + }, + "endTime": { + "description": "[Output Only] The time that this operation was completed. This value is in RFC3339 text format.", + "type": "string" + }, + "error": { + "description": "[Output Only] If errors are generated during processing of the operation, this field will be populated.", + "properties": { + "errors": { + "description": "[Output Only] The array of errors encountered while processing this operation.", + "items": { + "properties": { + "code": { + "description": "[Output Only] The error type identifier for this error.", + "type": "string" + }, + "location": { + "description": "[Output Only] Indicates the field in the request that caused the error. This property is optional.", + "type": "string" + }, + "message": { + "description": "[Output Only] An optional, human-readable error message.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + } + }, + "type": "object" + }, + "httpErrorMessage": { + "description": "[Output Only] If the operation fails, this field contains the HTTP error message that was returned, such as NOT FOUND.", + "type": "string" + }, + "httpErrorStatusCode": { + "description": "[Output Only] If the operation fails, this field contains the HTTP error status code that was returned. For example, a 404 means the resource was not found.", + "format": "int32", + "type": "integer" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64", + "type": "string" + }, + "insertTime": { + "description": "[Output Only] The time that this operation was requested. This value is in RFC3339 text format.", + "type": "string" + }, + "kind": { + "default": "deploymentmanager#operation", + "description": "[Output Only] Type of the resource. Always compute#operation for Operation resources.", + "type": "string" + }, + "name": { + "description": "[Output Only] Name of the resource.", + "type": "string" + }, + "operationType": { + "description": "[Output Only] The type of operation, such as insert, update, or delete, and so on.", + "type": "string" + }, + "progress": { + "description": "[Output Only] An optional progress indicator that ranges from 0 to 100. There is no requirement that this be linear or support any granularity of operations. This should not be used to guess when the operation will be complete. This number should monotonically increase as the operation progresses.", + "format": "int32", + "type": "integer" + }, + "region": { + "description": "[Output Only] The URL of the region where the operation resides. Only available when performing regional operations. You must specify this field as part of the HTTP request URL. It is not settable as a field in the request body.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + }, + "startTime": { + "description": "[Output Only] The time that this operation was started by the server. This value is in RFC3339 text format.", + "type": "string" + }, + "status": { + "description": "[Output Only] The status of the operation, which can be one of the following: PENDING, RUNNING, or DONE.", + "type": "string" + }, + "statusMessage": { + "description": "[Output Only] An optional textual description of the current status of the operation.", + "type": "string" + }, + "targetId": { + "description": "[Output Only] The unique target ID, which identifies a specific incarnation of the target resource.", + "format": "uint64", + "type": "string" + }, + "targetLink": { + "description": "[Output Only] The URL of the resource that the operation modifies. For operations related to creating a snapshot, this points to the persistent disk that the snapshot was created from.", + "type": "string" + }, + "user": { + "description": "[Output Only] User who requested the operation, for example: user@example.com.", + "type": "string" + }, + "warnings": { + "description": "[Output Only] If warning messages are generated during processing of the operation, this field will be populated.", + "items": { + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "zone": { + "description": "[Output Only] The URL of the zone where the operation resides. Only available when performing per-zone operations. You must specify this field as part of the HTTP request URL. It is not settable as a field in the request body.", + "type": "string" + } + }, + "type": "object" + }, + "OperationsListResponse": { + "description": "A response containing a partial list of operations and a page token used to build the next request if the request has been truncated.", + "id": "OperationsListResponse", + "properties": { + "nextPageToken": { + "description": "Output only. A token used to continue a truncated list request.", + "type": "string" + }, + "operations": { + "description": "Output only. Operations contained in this list response.", + "items": { + "$ref": "Operation" + }, + "type": "array" + } + }, + "type": "object" + }, + "Options": { + "description": "Options allows customized resource handling by Deployment Manager.", + "id": "Options", + "properties": { + "asyncOptions": { + "description": "Options regarding how to thread async requests.", + "items": { + "$ref": "AsyncOptions" + }, + "type": "array" + }, + "inputMappings": { + "description": "The mappings that apply for requests.", + "items": { + "$ref": "InputMapping" + }, + "type": "array" + }, + "nameProperty": { + "description": "The json path to the field in the resource JSON body into which the resource name should be mapped. Leaving this empty indicates that there should be no mapping performed.", + "type": "string" + }, + "validationOptions": { + "$ref": "ValidationOptions", + "description": "Options for how to validate and process properties on a resource." + } + }, + "type": "object" + }, + "Policy": { + "description": "Defines an Identity and Access Management (IAM) policy. It is used to specify access control policies for Cloud Platform resources.\n\n\n\nA `Policy` consists of a list of `bindings`. A `Binding` binds a list of `members` to a `role`, where the members can be user accounts, Google groups, Google domains, and service accounts. A `role` is a named list of permissions defined by IAM.\n\n**Example**\n\n{ \"bindings\": [ { \"role\": \"roles/owner\", \"members\": [ \"user:mike@example.com\", \"group:admins@example.com\", \"domain:google.com\", \"serviceAccount:my-other-app@appspot.gserviceaccount.com\", ] }, { \"role\": \"roles/viewer\", \"members\": [\"user:sean@example.com\"] } ] }\n\nFor a description of IAM and its features, see the [IAM developer's guide](https://cloud.google.com/iam/docs).", + "id": "Policy", + "properties": { + "auditConfigs": { + "description": "Specifies cloud audit logging configuration for this policy.", + "items": { + "$ref": "AuditConfig" + }, + "type": "array" + }, + "bindings": { + "description": "Associates a list of `members` to a `role`. `bindings` with no members will result in an error.", + "items": { + "$ref": "Binding" + }, + "type": "array" + }, + "etag": { + "description": "`etag` is used for optimistic concurrency control as a way to help prevent simultaneous updates of a policy from overwriting each other. It is strongly suggested that systems make use of the `etag` in the read-modify-write cycle to perform policy updates in order to avoid race conditions: An `etag` is returned in the response to `getIamPolicy`, and systems are expected to put that etag in the request to `setIamPolicy` to ensure that their change will be applied to the same version of the policy.\n\nIf no `etag` is provided in the call to `setIamPolicy`, then the existing policy is overwritten blindly.", + "format": "byte", + "type": "string" + }, + "iamOwned": { + "description": "", + "type": "boolean" + }, + "rules": { + "description": "If more than one rule is specified, the rules are applied in the following manner: - All matching LOG rules are always applied. - If any DENY/DENY_WITH_LOG rule matches, permission is denied. Logging will be applied if one or more matching rule requires logging. - Otherwise, if any ALLOW/ALLOW_WITH_LOG rule matches, permission is granted. Logging will be applied if one or more matching rule requires logging. - Otherwise, if no rule applies, permission is denied.", + "items": { + "$ref": "Rule" + }, + "type": "array" + }, + "version": { + "description": "Deprecated.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "PollingOptions": { + "description": "", + "id": "PollingOptions", + "properties": { + "diagnostics": { + "description": "An array of diagnostics to be collected by Deployment Manager, these diagnostics will be displayed to the user.", + "items": { + "$ref": "Diagnostic" + }, + "type": "array" + }, + "failCondition": { + "description": "JsonPath expression that determines if the request failed.", + "type": "string" + }, + "finishCondition": { + "description": "JsonPath expression that determines if the request is completed.", + "type": "string" + }, + "pollingLink": { + "description": "JsonPath expression that evaluates to string, it indicates where to poll.", + "type": "string" + }, + "targetLink": { + "description": "JsonPath expression, after polling is completed, indicates where to fetch the resource.", + "type": "string" + } + }, + "type": "object" + }, + "Resource": { + "description": "", + "id": "Resource", + "properties": { + "accessControl": { + "$ref": "ResourceAccessControl", + "description": "The Access Control Policy set on this resource." + }, + "finalProperties": { + "description": "Output only. The evaluated properties of the resource with references expanded. Returned as serialized YAML.", + "type": "string" + }, + "id": { + "description": "Output only. Unique identifier for the resource; defined by the server.", + "format": "uint64", + "type": "string" + }, + "insertTime": { + "description": "Output only. Timestamp when the resource was created or acquired, in RFC3339 text format .", + "type": "string" + }, + "lastUsedCredential": { + "$ref": "Credential", + "description": "Output only. The last used credential that successfully created/updated the resource." + }, + "manifest": { + "description": "Output only. URL of the manifest representing the current configuration of this resource.", + "type": "string" + }, + "name": { + "description": "Output only. The name of the resource as it appears in the YAML config.", + "type": "string" + }, + "properties": { + "description": "Output only. The current properties of the resource before any references have been filled in. Returned as serialized YAML.", + "type": "string" + }, + "runtimePolicies": { + "description": "Output only. In case this is an action, it will show the runtimePolicies on which this action will run in the deployment", + "items": { + "type": "string" + }, + "type": "array" + }, + "type": { + "description": "Output only. The type of the resource, for example compute.v1.instance, or cloudfunctions.v1beta1.function.", + "type": "string" + }, + "update": { + "$ref": "ResourceUpdate", + "description": "Output only. If Deployment Manager is currently updating or previewing an update to this resource, the updated configuration appears here." + }, + "updateTime": { + "description": "Output only. Timestamp when the resource was updated, in RFC3339 text format .", + "type": "string" + }, + "url": { + "description": "Output only. The URL of the actual resource.", + "type": "string" + }, + "warnings": { + "description": "Output only. If warning messages are generated during processing of this resource, this field will be populated.", + "items": { + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + } + }, + "type": "object" + }, + "ResourceAccessControl": { + "description": "The access controls set on the resource.", + "id": "ResourceAccessControl", + "properties": { + "gcpIamPolicy": { + "description": "The GCP IAM Policy to set on the resource.", + "type": "string" + } + }, + "type": "object" + }, + "ResourceUpdate": { + "description": "", + "id": "ResourceUpdate", + "properties": { + "accessControl": { + "$ref": "ResourceAccessControl", + "description": "The Access Control Policy to set on this resource after updating the resource itself." + }, + "credential": { + "$ref": "Credential", + "description": "Output only. The credential that will be used creating/updating this resource." + }, + "error": { + "description": "Output only. If errors are generated during update of the resource, this field will be populated.", + "properties": { + "errors": { + "description": "[Output Only] The array of errors encountered while processing this operation.", + "items": { + "properties": { + "code": { + "description": "[Output Only] The error type identifier for this error.", + "type": "string" + }, + "location": { + "description": "[Output Only] Indicates the field in the request that caused the error. This property is optional.", + "type": "string" + }, + "message": { + "description": "[Output Only] An optional, human-readable error message.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + } + }, + "type": "object" + }, + "finalProperties": { + "description": "Output only. The expanded properties of the resource with reference values expanded. Returned as serialized YAML.", + "type": "string" + }, + "intent": { + "description": "Output only. The intent of the resource: PREVIEW, UPDATE, or CANCEL.", + "type": "string" + }, + "manifest": { + "description": "Output only. URL of the manifest representing the update configuration of this resource.", + "type": "string" + }, + "properties": { + "description": "Output only. The set of updated properties for this resource, before references are expanded. Returned as serialized YAML.", + "type": "string" + }, + "runtimePolicies": { + "description": "Output only. In case this is an action, it will show the runtimePolicies that this action will have after updating the deployment.", + "items": { + "type": "string" + }, + "type": "array" + }, + "state": { + "description": "Output only. The state of the resource.", + "type": "string" + }, + "warnings": { + "description": "Output only. If warning messages are generated during processing of this resource, this field will be populated.", + "items": { + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + } + }, + "type": "object" + }, + "ResourcesListResponse": { + "description": "A response containing a partial list of resources and a page token used to build the next request if the request has been truncated.", + "id": "ResourcesListResponse", + "properties": { + "nextPageToken": { + "description": "A token used to continue a truncated list request.", + "type": "string" + }, + "resources": { + "description": "Resources contained in this list response.", + "items": { + "$ref": "Resource" + }, + "type": "array" + } + }, + "type": "object" + }, + "Rule": { + "description": "A rule to be applied in a Policy.", + "id": "Rule", + "properties": { + "action": { + "description": "Required", + "type": "string" + }, + "conditions": { + "description": "Additional restrictions that must be met. All conditions must pass for the rule to match.", + "items": { + "$ref": "Condition" + }, + "type": "array" + }, + "description": { + "description": "Human-readable description of the rule.", + "type": "string" + }, + "ins": { + "description": "If one or more 'in' clauses are specified, the rule matches if the PRINCIPAL/AUTHORITY_SELECTOR is in at least one of these entries.", + "items": { + "type": "string" + }, + "type": "array" + }, + "logConfigs": { + "description": "The config returned to callers of tech.iam.IAM.CheckPolicy for any entries that match the LOG action.", + "items": { + "$ref": "LogConfig" + }, + "type": "array" + }, + "notIns": { + "description": "If one or more 'not_in' clauses are specified, the rule matches if the PRINCIPAL/AUTHORITY_SELECTOR is in none of the entries.", + "items": { + "type": "string" + }, + "type": "array" + }, + "permissions": { + "description": "A permission is a string of form '..' (e.g., 'storage.buckets.list'). A value of '*' matches all permissions, and a verb part of '*' (e.g., 'storage.buckets.*') matches all verbs.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "ServiceAccount": { + "description": "Service Account used as a credential.", + "id": "ServiceAccount", + "properties": { + "email": { + "description": "The IAM service account email address like test@myproject.iam.gserviceaccount.com", + "type": "string" + } + }, + "type": "object" + }, + "TargetConfiguration": { + "description": "", + "id": "TargetConfiguration", + "properties": { + "config": { + "$ref": "ConfigFile", + "description": "The configuration to use for this deployment." + }, + "imports": { + "description": "Specifies any files to import for this configuration. This can be used to import templates or other files. For example, you might import a text file in order to use the file in a template.", + "items": { + "$ref": "ImportFile" + }, + "type": "array" + } + }, + "type": "object" + }, + "TemplateContents": { + "description": "Files that make up the template contents of a template type.", + "id": "TemplateContents", + "properties": { + "imports": { + "description": "Import files referenced by the main template.", + "items": { + "$ref": "ImportFile" + }, + "type": "array" + }, + "interpreter": { + "description": "Which interpreter (python or jinja) should be used during expansion.", + "type": "string" + }, + "mainTemplate": { + "description": "The filename of the mainTemplate", + "type": "string" + }, + "schema": { + "description": "The contents of the template schema.", + "type": "string" + }, + "template": { + "description": "The contents of the main template file.", + "type": "string" + } + }, + "type": "object" + }, + "TestPermissionsRequest": { + "id": "TestPermissionsRequest", + "properties": { + "permissions": { + "description": "The set of permissions to check for the 'resource'. Permissions with wildcards (such as '*' or 'storage.*') are not allowed.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "TestPermissionsResponse": { + "id": "TestPermissionsResponse", + "properties": { + "permissions": { + "description": "A subset of `TestPermissionsRequest.permissions` that the caller is allowed.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "Type": { + "description": "A resource type supported by Deployment Manager.", + "id": "Type", + "properties": { + "configurableService": { + "$ref": "ConfigurableService", + "description": "Base Type (configurable service) that backs this Type." + }, + "description": { + "description": "An optional textual description of the resource; provided by the client when the resource is created.", + "type": "string" + }, + "id": { + "description": "Output only. Unique identifier for the resource; defined by the server.", + "format": "uint64", + "type": "string" + }, + "insertTime": { + "description": "Output only. Timestamp when the type was created, in RFC3339 text format.", + "type": "string" + }, + "labels": { + "description": "Map of labels; provided by the client when the resource is created or updated. Specifically: Label keys must be between 1 and 63 characters long and must conform to the following regular expression: [a-z]([-a-z0-9]*[a-z0-9])? Label values must be between 0 and 63 characters long and must conform to the regular expression ([a-z]([-a-z0-9]*[a-z0-9])?)?", + "items": { + "$ref": "TypeLabelEntry" + }, + "type": "array" + }, + "name": { + "description": "Name of the type.", + "type": "string" + }, + "operation": { + "$ref": "Operation", + "description": "Output only. The Operation that most recently ran, or is currently running, on this type." + }, + "selfLink": { + "description": "Output only. Self link for the type.", + "type": "string" + } + }, + "type": "object" + }, + "TypeInfo": { + "description": "Contains detailed information about a composite type, base type, or base type with specific collection.", + "id": "TypeInfo", + "properties": { + "description": { + "description": "The description of the type.", + "type": "string" + }, + "documentationLink": { + "description": "For swagger 2.0 externalDocs field will be used. For swagger 1.2 this field will be empty.", + "type": "string" + }, + "kind": { + "default": "deploymentmanager#typeInfo", + "description": "Output only. Type of the output. Always deploymentManager#TypeInfo for TypeInfo.", + "type": "string" + }, + "name": { + "description": "The base type or composite type name.", + "type": "string" + }, + "schema": { + "$ref": "TypeInfoSchemaInfo", + "description": "For base types with a collection, we return a schema and documentation link For template types, we return only a schema" + }, + "selfLink": { + "description": "Output only. Server-defined URL for the resource.", + "type": "string" + }, + "title": { + "description": "The title on the API descriptor URL provided.", + "type": "string" + } + }, + "type": "object" + }, + "TypeInfoSchemaInfo": { + "description": "", + "id": "TypeInfoSchemaInfo", + "properties": { + "input": { + "description": "The properties that this composite type or base type collection accept as input, represented as a json blob, format is: JSON Schema Draft V4", + "type": "string" + }, + "output": { + "description": "The properties that this composite type or base type collection exposes as output, these properties can be used for references, represented as json blob, format is: JSON Schema Draft V4", + "type": "string" + } + }, + "type": "object" + }, + "TypeLabelEntry": { + "id": "TypeLabelEntry", + "properties": { + "key": { + "type": "string" + }, + "value": { + "type": "string" + } + }, + "type": "object" + }, + "TypeProvider": { + "description": "A type provider that describes a service-backed Type.", + "id": "TypeProvider", + "properties": { + "collectionOverrides": { + "description": "Allows resource handling overrides for specific collections", + "items": { + "$ref": "CollectionOverride" + }, + "type": "array" + }, + "credential": { + "$ref": "Credential", + "description": "Credential used when interacting with this type." + }, + "description": { + "description": "An optional textual description of the resource; provided by the client when the resource is created.", + "type": "string" + }, + "descriptorUrl": { + "description": "Descriptor Url for the this type provider.", + "type": "string" + }, + "id": { + "description": "Output only. Unique identifier for the resource; defined by the server.", + "format": "uint64", + "type": "string" + }, + "insertTime": { + "description": "Output only. Timestamp when the type provider was created, in RFC3339 text format.", + "type": "string" + }, + "labels": { + "description": "Map of labels; provided by the client when the resource is created or updated. Specifically: Label keys must be between 1 and 63 characters long and must conform to the following regular expression: [a-z]([-a-z0-9]*[a-z0-9])? Label values must be between 0 and 63 characters long and must conform to the regular expression ([a-z]([-a-z0-9]*[a-z0-9])?)?", + "items": { + "$ref": "TypeProviderLabelEntry" + }, + "type": "array" + }, + "name": { + "description": "Name of the resource; provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "type": "string" + }, + "operation": { + "$ref": "Operation", + "description": "Output only. The Operation that most recently ran, or is currently running, on this type provider." + }, + "options": { + "$ref": "Options", + "description": "Options to apply when handling any resources in this service." + }, + "selfLink": { + "description": "Output only. Self link for the type provider.", + "type": "string" + } + }, + "type": "object" + }, + "TypeProviderLabelEntry": { + "id": "TypeProviderLabelEntry", + "properties": { + "key": { + "type": "string" + }, + "value": { + "type": "string" + } + }, + "type": "object" + }, + "TypeProvidersListResponse": { + "description": "A response that returns all Type Providers supported by Deployment Manager", + "id": "TypeProvidersListResponse", + "properties": { + "nextPageToken": { + "description": "A token used to continue a truncated list request.", + "type": "string" + }, + "typeProviders": { + "description": "Output only. A list of resource type providers supported by Deployment Manager.", + "items": { + "$ref": "TypeProvider" + }, + "type": "array" + } + }, + "type": "object" + }, + "TypeProvidersListTypesResponse": { + "description": "", + "id": "TypeProvidersListTypesResponse", + "properties": { + "nextPageToken": { + "description": "A token used to continue a truncated list request.", + "type": "string" + }, + "types": { + "description": "Output only. A list of resource type info.", + "items": { + "$ref": "TypeInfo" + }, + "type": "array" + } + }, + "type": "object" + }, + "TypesListResponse": { + "description": "A response that returns all Types supported by Deployment Manager", + "id": "TypesListResponse", + "properties": { + "nextPageToken": { + "description": "A token used to continue a truncated list request.", + "type": "string" + }, + "types": { + "description": "Output only. A list of resource types supported by Deployment Manager.", + "items": { + "$ref": "Type" + }, + "type": "array" + } + }, + "type": "object" + }, + "ValidationOptions": { + "description": "Options for how to validate and process properties on a resource.", + "id": "ValidationOptions", + "properties": { + "schemaValidation": { + "description": "Customize how deployment manager will validate the resource against schema errors.", + "type": "string" + }, + "undeclaredProperties": { + "description": "Specify what to do with extra properties when executing a request.", + "type": "string" + } + }, + "type": "object" } - } }, - "ValidationOptions": { - "id": "ValidationOptions", - "type": "object", - "description": "Options for how to validate and process properties on a resource.", - "properties": { - "schemaValidation": { - "type": "string", - "description": "Customize how deployment manager will validate the resource against schema errors." - }, - "undeclaredProperties": { - "type": "string", - "description": "Specify what to do with extra properties when executing a request." - } - } - } - }, - "resources": { - "compositeTypes": { - "methods": { - "delete": { - "id": "deploymentmanager.compositeTypes.delete", - "path": "{project}/global/compositeTypes/{compositeType}", - "httpMethod": "DELETE", - "description": "Deletes a composite type.", - "parameters": { - "compositeType": { - "type": "string", - "description": "The name of the type for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9_.]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "The project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "compositeType" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/ndev.cloudman" - ] - }, - "get": { - "id": "deploymentmanager.compositeTypes.get", - "path": "{project}/global/compositeTypes/{compositeType}", - "httpMethod": "GET", - "description": "Gets information about a specific composite type.", - "parameters": { - "compositeType": { - "type": "string", - "description": "The name of the composite type for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9_.]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "The project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "compositeType" - ], - "response": { - "$ref": "CompositeType" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/ndev.cloudman", - "https://www.googleapis.com/auth/ndev.cloudman.readonly" - ] - }, - "insert": { - "id": "deploymentmanager.compositeTypes.insert", - "path": "{project}/global/compositeTypes", - "httpMethod": "POST", - "description": "Creates a composite type.", - "parameters": { - "project": { - "type": "string", - "description": "The project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "request": { - "$ref": "CompositeType" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/ndev.cloudman" - ] - }, - "list": { - "id": "deploymentmanager.compositeTypes.list", - "path": "{project}/global/compositeTypes", - "httpMethod": "GET", - "description": "Lists all composite types for Deployment Manager.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "The project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "CompositeTypesListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/ndev.cloudman", - "https://www.googleapis.com/auth/ndev.cloudman.readonly" - ] - }, - "patch": { - "id": "deploymentmanager.compositeTypes.patch", - "path": "{project}/global/compositeTypes/{compositeType}", - "httpMethod": "PATCH", - "description": "Updates a composite type. This method supports patch semantics.", - "parameters": { - "compositeType": { - "type": "string", - "description": "The name of the composite type for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9_.]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "The project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "compositeType" - ], - "request": { - "$ref": "CompositeType" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/ndev.cloudman" - ] - }, - "update": { - "id": "deploymentmanager.compositeTypes.update", - "path": "{project}/global/compositeTypes/{compositeType}", - "httpMethod": "PUT", - "description": "Updates a composite type.", - "parameters": { - "compositeType": { - "type": "string", - "description": "The name of the composite type for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9_.]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "The project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "compositeType" - ], - "request": { - "$ref": "CompositeType" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/ndev.cloudman" - ] - } - } - }, - "deployments": { - "methods": { - "cancelPreview": { - "id": "deploymentmanager.deployments.cancelPreview", - "path": "{project}/global/deployments/{deployment}/cancelPreview", - "httpMethod": "POST", - "description": "Cancels and removes the preview currently associated with the deployment.", - "parameters": { - "deployment": { - "type": "string", - "description": "The name of the deployment for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "The project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "deployment" - ], - "request": { - "$ref": "DeploymentsCancelPreviewRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/ndev.cloudman" - ] - }, - "delete": { - "id": "deploymentmanager.deployments.delete", - "path": "{project}/global/deployments/{deployment}", - "httpMethod": "DELETE", - "description": "Deletes a deployment and all of the resources in the deployment.", - "parameters": { - "deletePolicy": { - "type": "string", - "description": "Sets the policy to use for deleting resources.", - "default": "DELETE", - "enum": [ - "ABANDON", - "DELETE" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - }, - "deployment": { - "type": "string", - "description": "The name of the deployment for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "The project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "deployment" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/ndev.cloudman" - ] - }, - "get": { - "id": "deploymentmanager.deployments.get", - "path": "{project}/global/deployments/{deployment}", - "httpMethod": "GET", - "description": "Gets information about a specific deployment.", - "parameters": { - "deployment": { - "type": "string", - "description": "The name of the deployment for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "The project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "deployment" - ], - "response": { - "$ref": "Deployment" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/ndev.cloudman", - "https://www.googleapis.com/auth/ndev.cloudman.readonly" - ] - }, - "getIamPolicy": { - "id": "deploymentmanager.deployments.getIamPolicy", - "path": "{project}/global/deployments/{resource}/getIamPolicy", - "httpMethod": "GET", - "description": "Gets the access control policy for a resource. May be empty if no such policy or resource exists.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "[a-z0-9](?:[-a-z0-9_]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "resource" - ], - "response": { - "$ref": "Policy" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/ndev.cloudman" - ] - }, - "insert": { - "id": "deploymentmanager.deployments.insert", - "path": "{project}/global/deployments", - "httpMethod": "POST", - "description": "Creates a deployment and all of the resources described by the deployment manifest.", - "parameters": { - "preview": { - "type": "boolean", - "description": "If set to true, creates a deployment and creates \"shell\" resources but does not actually instantiate these resources. This allows you to preview what your deployment looks like. After previewing a deployment, you can deploy your resources by making a request with the update() method or you can use the cancelPreview() method to cancel the preview altogether. Note that the deployment will still exist after you cancel the preview and you must separately delete this deployment if you want to remove it.", - "location": "query" - }, - "project": { - "type": "string", - "description": "The project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "request": { - "$ref": "Deployment" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/ndev.cloudman" - ] - }, - "list": { - "id": "deploymentmanager.deployments.list", - "path": "{project}/global/deployments", - "httpMethod": "GET", - "description": "Lists all deployments for a given project.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "The project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "DeploymentsListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/ndev.cloudman", - "https://www.googleapis.com/auth/ndev.cloudman.readonly" - ] - }, - "patch": { - "id": "deploymentmanager.deployments.patch", - "path": "{project}/global/deployments/{deployment}", - "httpMethod": "PATCH", - "description": "Updates a deployment and all of the resources described by the deployment manifest. This method supports patch semantics.", - "parameters": { - "createPolicy": { - "type": "string", - "description": "Sets the policy to use for creating new resources.", - "default": "CREATE_OR_ACQUIRE", - "enum": [ - "ACQUIRE", - "CREATE_OR_ACQUIRE" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - }, - "deletePolicy": { - "type": "string", - "description": "Sets the policy to use for deleting resources.", - "default": "DELETE", - "enum": [ - "ABANDON", - "DELETE" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - }, - "deployment": { - "type": "string", - "description": "The name of the deployment for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "preview": { - "type": "boolean", - "description": "If set to true, updates the deployment and creates and updates the \"shell\" resources but does not actually alter or instantiate these resources. This allows you to preview what your deployment will look like. You can use this intent to preview how an update would affect your deployment. You must provide a target.config with a configuration if this is set to true. After previewing a deployment, you can deploy your resources by making a request with the update() or you can cancelPreview() to remove the preview altogether. Note that the deployment will still exist after you cancel the preview and you must separately delete this deployment if you want to remove it.", - "default": "false", - "location": "query" - }, - "project": { - "type": "string", - "description": "The project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "deployment" - ], - "request": { - "$ref": "Deployment" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/ndev.cloudman" - ] - }, - "setIamPolicy": { - "id": "deploymentmanager.deployments.setIamPolicy", - "path": "{project}/global/deployments/{resource}/setIamPolicy", - "httpMethod": "POST", - "description": "Sets the access control policy on the specified resource. Replaces any existing policy.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "[a-z0-9](?:[-a-z0-9_]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "resource" - ], - "request": { - "$ref": "Policy" - }, - "response": { - "$ref": "Policy" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/ndev.cloudman" - ] - }, - "stop": { - "id": "deploymentmanager.deployments.stop", - "path": "{project}/global/deployments/{deployment}/stop", - "httpMethod": "POST", - "description": "Stops an ongoing operation. This does not roll back any work that has already been completed, but prevents any new work from being started.", - "parameters": { - "deployment": { - "type": "string", - "description": "The name of the deployment for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "The project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "deployment" - ], - "request": { - "$ref": "DeploymentsStopRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/ndev.cloudman" - ] - }, - "testIamPermissions": { - "id": "deploymentmanager.deployments.testIamPermissions", - "path": "{project}/global/deployments/{resource}/testIamPermissions", - "httpMethod": "POST", - "description": "Returns permissions that a caller has on the specified resource.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "(?:[-a-z0-9_]{0,62}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "resource" - ], - "request": { - "$ref": "TestPermissionsRequest" - }, - "response": { - "$ref": "TestPermissionsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/ndev.cloudman" - ] - }, - "update": { - "id": "deploymentmanager.deployments.update", - "path": "{project}/global/deployments/{deployment}", - "httpMethod": "PUT", - "description": "Updates a deployment and all of the resources described by the deployment manifest.", - "parameters": { - "createPolicy": { - "type": "string", - "description": "Sets the policy to use for creating new resources.", - "default": "CREATE_OR_ACQUIRE", - "enum": [ - "ACQUIRE", - "CREATE_OR_ACQUIRE" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - }, - "deletePolicy": { - "type": "string", - "description": "Sets the policy to use for deleting resources.", - "default": "DELETE", - "enum": [ - "ABANDON", - "DELETE" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - }, - "deployment": { - "type": "string", - "description": "The name of the deployment for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "preview": { - "type": "boolean", - "description": "If set to true, updates the deployment and creates and updates the \"shell\" resources but does not actually alter or instantiate these resources. This allows you to preview what your deployment will look like. You can use this intent to preview how an update would affect your deployment. You must provide a target.config with a configuration if this is set to true. After previewing a deployment, you can deploy your resources by making a request with the update() or you can cancelPreview() to remove the preview altogether. Note that the deployment will still exist after you cancel the preview and you must separately delete this deployment if you want to remove it.", - "default": "false", - "location": "query" - }, - "project": { - "type": "string", - "description": "The project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "deployment" - ], - "request": { - "$ref": "Deployment" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/ndev.cloudman" - ] - } - } - }, - "manifests": { - "methods": { - "get": { - "id": "deploymentmanager.manifests.get", - "path": "{project}/global/deployments/{deployment}/manifests/{manifest}", - "httpMethod": "GET", - "description": "Gets information about a specific manifest.", - "parameters": { - "deployment": { - "type": "string", - "description": "The name of the deployment for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "manifest": { - "type": "string", - "description": "The name of the manifest for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "The project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "deployment", - "manifest" - ], - "response": { - "$ref": "Manifest" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/ndev.cloudman", - "https://www.googleapis.com/auth/ndev.cloudman.readonly" - ] - }, - "list": { - "id": "deploymentmanager.manifests.list", - "path": "{project}/global/deployments/{deployment}/manifests", - "httpMethod": "GET", - "description": "Lists all manifests for a given deployment.", - "parameters": { - "deployment": { - "type": "string", - "description": "The name of the deployment for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "The project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "deployment" - ], - "response": { - "$ref": "ManifestsListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/ndev.cloudman", - "https://www.googleapis.com/auth/ndev.cloudman.readonly" - ] - } - } - }, - "operations": { - "methods": { - "get": { - "id": "deploymentmanager.operations.get", - "path": "{project}/global/operations/{operation}", - "httpMethod": "GET", - "description": "Gets information about a specific operation.", - "parameters": { - "operation": { - "type": "string", - "description": "The name of the operation for this request.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "The project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "operation" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/ndev.cloudman", - "https://www.googleapis.com/auth/ndev.cloudman.readonly" - ] - }, - "list": { - "id": "deploymentmanager.operations.list", - "path": "{project}/global/operations", - "httpMethod": "GET", - "description": "Lists all operations for a project.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "The project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "OperationsListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/ndev.cloudman", - "https://www.googleapis.com/auth/ndev.cloudman.readonly" - ] - } - } - }, - "resources": { - "methods": { - "get": { - "id": "deploymentmanager.resources.get", - "path": "{project}/global/deployments/{deployment}/resources/{resource}", - "httpMethod": "GET", - "description": "Gets information about a single resource.", - "parameters": { - "deployment": { - "type": "string", - "description": "The name of the deployment for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "The project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "resource": { - "type": "string", - "description": "The name of the resource for this request.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "deployment", - "resource" - ], - "response": { - "$ref": "Resource" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/ndev.cloudman", - "https://www.googleapis.com/auth/ndev.cloudman.readonly" - ] - }, - "list": { - "id": "deploymentmanager.resources.list", - "path": "{project}/global/deployments/{deployment}/resources", - "httpMethod": "GET", - "description": "Lists all resources in a given deployment.", - "parameters": { - "deployment": { - "type": "string", - "description": "The name of the deployment for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "The project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "deployment" - ], - "response": { - "$ref": "ResourcesListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/ndev.cloudman", - "https://www.googleapis.com/auth/ndev.cloudman.readonly" - ] - } - } - }, - "typeProviders": { - "methods": { - "delete": { - "id": "deploymentmanager.typeProviders.delete", - "path": "{project}/global/typeProviders/{typeProvider}", - "httpMethod": "DELETE", - "description": "Deletes a type provider.", - "parameters": { - "project": { - "type": "string", - "description": "The project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "typeProvider": { - "type": "string", - "description": "The name of the type provider for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "typeProvider" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/ndev.cloudman" - ] - }, - "get": { - "id": "deploymentmanager.typeProviders.get", - "path": "{project}/global/typeProviders/{typeProvider}", - "httpMethod": "GET", - "description": "Gets information about a specific type provider.", - "parameters": { - "project": { - "type": "string", - "description": "The project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "typeProvider": { - "type": "string", - "description": "The name of the type provider for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "typeProvider" - ], - "response": { - "$ref": "TypeProvider" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/ndev.cloudman", - "https://www.googleapis.com/auth/ndev.cloudman.readonly" - ] - }, - "getType": { - "id": "deploymentmanager.typeProviders.getType", - "path": "{project}/global/typeProviders/{typeProvider}/types/{type}", - "httpMethod": "GET", - "description": "Gets a type info for a type provided by a TypeProvider.", - "parameters": { - "project": { - "type": "string", - "description": "The project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "type": { - "type": "string", - "description": "The name of the type provider for this request.", - "required": true, - "location": "path" - }, - "typeProvider": { - "type": "string", - "description": "The name of the type provider for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "typeProvider", - "type" - ], - "response": { - "$ref": "TypeInfo" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/ndev.cloudman", - "https://www.googleapis.com/auth/ndev.cloudman.readonly" - ] - }, - "insert": { - "id": "deploymentmanager.typeProviders.insert", - "path": "{project}/global/typeProviders", - "httpMethod": "POST", - "description": "Creates a type provider.", - "parameters": { - "project": { - "type": "string", - "description": "The project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "request": { - "$ref": "TypeProvider" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/ndev.cloudman" - ] - }, - "list": { - "id": "deploymentmanager.typeProviders.list", - "path": "{project}/global/typeProviders", - "httpMethod": "GET", - "description": "Lists all resource type providers for Deployment Manager.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "The project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "TypeProvidersListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/ndev.cloudman", - "https://www.googleapis.com/auth/ndev.cloudman.readonly" - ] - }, - "listTypes": { - "id": "deploymentmanager.typeProviders.listTypes", - "path": "{project}/global/typeProviders/{typeProvider}/types", - "httpMethod": "GET", - "description": "Lists all the type info for a TypeProvider.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "The project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "typeProvider": { - "type": "string", - "description": "The name of the type provider for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "typeProvider" - ], - "response": { - "$ref": "TypeProvidersListTypesResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/ndev.cloudman", - "https://www.googleapis.com/auth/ndev.cloudman.readonly" - ] - }, - "patch": { - "id": "deploymentmanager.typeProviders.patch", - "path": "{project}/global/typeProviders/{typeProvider}", - "httpMethod": "PATCH", - "description": "Updates a type provider. This method supports patch semantics.", - "parameters": { - "project": { - "type": "string", - "description": "The project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "typeProvider": { - "type": "string", - "description": "The name of the type provider for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "typeProvider" - ], - "request": { - "$ref": "TypeProvider" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/ndev.cloudman" - ] - }, - "update": { - "id": "deploymentmanager.typeProviders.update", - "path": "{project}/global/typeProviders/{typeProvider}", - "httpMethod": "PUT", - "description": "Updates a type provider.", - "parameters": { - "project": { - "type": "string", - "description": "The project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "typeProvider": { - "type": "string", - "description": "The name of the type provider for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "typeProvider" - ], - "request": { - "$ref": "TypeProvider" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/ndev.cloudman" - ] - } - } - }, - "types": { - "methods": { - "delete": { - "id": "deploymentmanager.types.delete", - "path": "{project}/global/types/{type}", - "httpMethod": "DELETE", - "description": "Deletes a type and all of the resources in the type.", - "parameters": { - "project": { - "type": "string", - "description": "The project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "type": { - "type": "string", - "description": "The name of the type for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "type" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/ndev.cloudman" - ] - }, - "get": { - "id": "deploymentmanager.types.get", - "path": "{project}/global/types/{type}", - "httpMethod": "GET", - "description": "Gets information about a specific type.", - "parameters": { - "project": { - "type": "string", - "description": "The project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "type": { - "type": "string", - "description": "The name of the type for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "type" - ], - "response": { - "$ref": "Type" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/ndev.cloudman", - "https://www.googleapis.com/auth/ndev.cloudman.readonly" - ] - }, - "insert": { - "id": "deploymentmanager.types.insert", - "path": "{project}/global/types", - "httpMethod": "POST", - "description": "Creates a type.", - "parameters": { - "project": { - "type": "string", - "description": "The project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "request": { - "$ref": "Type" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/ndev.cloudman" - ] - }, - "list": { - "id": "deploymentmanager.types.list", - "path": "{project}/global/types", - "httpMethod": "GET", - "description": "Lists all resource types for Deployment Manager.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "The project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "TypesListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/ndev.cloudman", - "https://www.googleapis.com/auth/ndev.cloudman.readonly" - ] - }, - "patch": { - "id": "deploymentmanager.types.patch", - "path": "{project}/global/types/{type}", - "httpMethod": "PATCH", - "description": "Updates a type. This method supports patch semantics.", - "parameters": { - "project": { - "type": "string", - "description": "The project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "type": { - "type": "string", - "description": "The name of the type for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "type" - ], - "request": { - "$ref": "Type" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/ndev.cloudman" - ] - }, - "update": { - "id": "deploymentmanager.types.update", - "path": "{project}/global/types/{type}", - "httpMethod": "PUT", - "description": "Updates a type.", - "parameters": { - "project": { - "type": "string", - "description": "The project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "type": { - "type": "string", - "description": "The name of the type for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "type" - ], - "request": { - "$ref": "Type" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/ndev.cloudman" - ] - } - } - } - } -} + "servicePath": "deploymentmanager/alpha/projects/", + "title": "Google Cloud Deployment Manager Alpha API", + "version": "alpha" +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/deploymentmanager/v0.alpha/deploymentmanager-gen.go b/vendor/google.golang.org/api/deploymentmanager/v0.alpha/deploymentmanager-gen.go index f6bcb052a..f2bf91725 100644 --- a/vendor/google.golang.org/api/deploymentmanager/v0.alpha/deploymentmanager-gen.go +++ b/vendor/google.golang.org/api/deploymentmanager/v0.alpha/deploymentmanager-gen.go @@ -209,7 +209,7 @@ func (s *AsyncOptions) MarshalJSON() ([]byte, error) { // If there are AuditConfigs for both `allServices` and a specific // service, the union of the two AuditConfigs is used for that service: // the log_types specified in each AuditConfig are enabled, and the -// exempted_members in each AuditConfig are exempted. +// exempted_members in each AuditLogConfig are exempted. // // Example Policy with multiple AuditConfigs: // @@ -366,7 +366,8 @@ type Binding struct { // Condition: The condition that is associated with this binding. NOTE: // an unsatisfied condition will not allow user access via current // binding. Different bindings, including their conditions, are examined - // independently. This field is GOOGLE_INTERNAL. + // independently. This field is only visible as GOOGLE_INTERNAL or + // CONDITION_TRUSTED_TESTER. Condition *Expr `json:"condition,omitempty"` // Members: Specifies the identities requesting access for a Cloud @@ -1578,7 +1579,9 @@ type Operation struct { Progress int64 `json:"progress,omitempty"` // Region: [Output Only] The URL of the region where the operation - // resides. Only available when performing regional operations. + // resides. Only available when performing regional operations. You must + // specify this field as part of the HTTP request URL. It is not + // settable as a field in the request body. Region string `json:"region,omitempty"` // SelfLink: [Output Only] Server-defined URL for the resource. @@ -1614,7 +1617,9 @@ type Operation struct { Warnings []*OperationWarnings `json:"warnings,omitempty"` // Zone: [Output Only] The URL of the zone where the operation resides. - // Only available when performing per-zone operations. + // Only available when performing per-zone operations. You must specify + // this field as part of the HTTP request URL. It is not settable as a + // field in the request body. Zone string `json:"zone,omitempty"` // ServerResponse contains the HTTP response code and headers from the @@ -1884,7 +1889,7 @@ func (s *Options) MarshalJSON() ([]byte, error) { // } // // For a description of IAM and its features, see the [IAM developer's -// guide](https://cloud.google.com/iam). +// guide](https://cloud.google.com/iam/docs). type Policy struct { // AuditConfigs: Specifies cloud audit logging configuration for this // policy. @@ -1919,7 +1924,7 @@ type Policy struct { // denied. Rules []*Rule `json:"rules,omitempty"` - // Version: Version of the `Policy`. The default version is 0. + // Version: Deprecated. Version int64 `json:"version,omitempty"` // ServerResponse contains the HTTP response code and headers from the @@ -2850,7 +2855,13 @@ type TypeProvider struct { // ([a-z]([-a-z0-9]*[a-z0-9])?)? Labels []*TypeProviderLabelEntry `json:"labels,omitempty"` - // Name: Name of the type provider. + // Name: Name of the resource; provided by the client when the resource + // is created. The name must be 1-63 characters long, and comply with + // RFC1035. Specifically, the name must be 1-63 characters long and + // match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means + // the first character must be a lowercase letter, and all following + // characters must be a dash, lowercase letter, or digit, except the + // last character, which cannot be a dash. Name string `json:"name,omitempty"` // Operation: Output only. The Operation that most recently ran, or is @@ -3504,32 +3515,28 @@ func (r *CompositeTypesService) List(project string) *CompositeTypesListCall { return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *CompositeTypesListCall) Filter(filter string) *CompositeTypesListCall { c.urlParams_.Set("filter", filter) return c @@ -3673,7 +3680,7 @@ func (c *CompositeTypesListCall) Do(opts ...googleapi.CallOption) (*CompositeTyp // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -4316,7 +4323,6 @@ func (c *DeploymentsDeleteCall) Do(opts ...googleapi.CallOption) (*Operation, er // "deployment": { // "description": "The name of the deployment for this request.", // "location": "path", - // "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", // "required": true, // "type": "string" // }, @@ -4663,6 +4669,18 @@ func (r *DeploymentsService) Insert(project string, deployment *Deployment) *Dep return c } +// CreatePolicy sets the optional parameter "createPolicy": Sets the +// policy to use for creating new resources. +// +// Possible values: +// "ACQUIRE" +// "CREATE" +// "CREATE_OR_ACQUIRE" (default) +func (c *DeploymentsInsertCall) CreatePolicy(createPolicy string) *DeploymentsInsertCall { + c.urlParams_.Set("createPolicy", createPolicy) + return c +} + // Preview sets the optional parameter "preview": If set to true, // creates a deployment and creates "shell" resources but does not // actually instantiate these resources. This allows you to preview what @@ -4770,6 +4788,22 @@ func (c *DeploymentsInsertCall) Do(opts ...googleapi.CallOption) (*Operation, er // "project" // ], // "parameters": { + // "createPolicy": { + // "default": "CREATE_OR_ACQUIRE", + // "description": "Sets the policy to use for creating new resources.", + // "enum": [ + // "ACQUIRE", + // "CREATE", + // "CREATE_OR_ACQUIRE" + // ], + // "enumDescriptions": [ + // "", + // "", + // "" + // ], + // "location": "query", + // "type": "string" + // }, // "preview": { // "description": "If set to true, creates a deployment and creates \"shell\" resources but does not actually instantiate these resources. This allows you to preview what your deployment looks like. After previewing a deployment, you can deploy your resources by making a request with the update() method or you can use the cancelPreview() method to cancel the preview altogether. Note that the deployment will still exist after you cancel the preview and you must separately delete this deployment if you want to remove it.", // "location": "query", @@ -4816,32 +4850,28 @@ func (r *DeploymentsService) List(project string) *DeploymentsListCall { return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *DeploymentsListCall) Filter(filter string) *DeploymentsListCall { c.urlParams_.Set("filter", filter) return c @@ -4985,7 +5015,7 @@ func (c *DeploymentsListCall) Do(opts ...googleapi.CallOption) (*DeploymentsList // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -5077,6 +5107,7 @@ func (r *DeploymentsService) Patch(project string, deployment string, deployment // // Possible values: // "ACQUIRE" +// "CREATE" // "CREATE_OR_ACQUIRE" (default) func (c *DeploymentsPatchCall) CreatePolicy(createPolicy string) *DeploymentsPatchCall { c.urlParams_.Set("createPolicy", createPolicy) @@ -5210,10 +5241,12 @@ func (c *DeploymentsPatchCall) Do(opts ...googleapi.CallOption) (*Operation, err // "description": "Sets the policy to use for creating new resources.", // "enum": [ // "ACQUIRE", + // "CREATE", // "CREATE_OR_ACQUIRE" // ], // "enumDescriptions": [ // "", + // "", // "" // ], // "location": "query", @@ -5738,6 +5771,7 @@ func (r *DeploymentsService) Update(project string, deployment string, deploymen // // Possible values: // "ACQUIRE" +// "CREATE" // "CREATE_OR_ACQUIRE" (default) func (c *DeploymentsUpdateCall) CreatePolicy(createPolicy string) *DeploymentsUpdateCall { c.urlParams_.Set("createPolicy", createPolicy) @@ -5871,10 +5905,12 @@ func (c *DeploymentsUpdateCall) Do(opts ...googleapi.CallOption) (*Operation, er // "description": "Sets the policy to use for creating new resources.", // "enum": [ // "ACQUIRE", + // "CREATE", // "CREATE_OR_ACQUIRE" // ], // "enumDescriptions": [ // "", + // "", // "" // ], // "location": "query", @@ -6113,32 +6149,28 @@ func (r *ManifestsService) List(project string, deployment string) *ManifestsLis return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *ManifestsListCall) Filter(filter string) *ManifestsListCall { c.urlParams_.Set("filter", filter) return c @@ -6291,7 +6323,7 @@ func (c *ManifestsListCall) Do(opts ...googleapi.CallOption) (*ManifestsListResp // "type": "string" // }, // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -6525,32 +6557,28 @@ func (r *OperationsService) List(project string) *OperationsListCall { return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *OperationsListCall) Filter(filter string) *OperationsListCall { c.urlParams_.Set("filter", filter) return c @@ -6694,7 +6722,7 @@ func (c *OperationsListCall) Do(opts ...googleapi.CallOption) (*OperationsListRe // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -6941,32 +6969,28 @@ func (r *ResourcesService) List(project string, deployment string) *ResourcesLis return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *ResourcesListCall) Filter(filter string) *ResourcesListCall { c.urlParams_.Set("filter", filter) return c @@ -7119,7 +7143,7 @@ func (c *ResourcesListCall) Do(opts ...googleapi.CallOption) (*ResourcesListResp // "type": "string" // }, // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -7787,32 +7811,28 @@ func (r *TypeProvidersService) List(project string) *TypeProvidersListCall { return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *TypeProvidersListCall) Filter(filter string) *TypeProvidersListCall { c.urlParams_.Set("filter", filter) return c @@ -7956,7 +7976,7 @@ func (c *TypeProvidersListCall) Do(opts ...googleapi.CallOption) (*TypeProviders // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -8041,32 +8061,28 @@ func (r *TypeProvidersService) ListTypes(project string, typeProvider string) *T return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *TypeProvidersListTypesCall) Filter(filter string) *TypeProvidersListTypesCall { c.urlParams_.Set("filter", filter) return c @@ -8212,7 +8228,7 @@ func (c *TypeProvidersListTypesCall) Do(opts ...googleapi.CallOption) (*TypeProv // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -9017,32 +9033,28 @@ func (r *TypesService) List(project string) *TypesListCall { return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *TypesListCall) Filter(filter string) *TypesListCall { c.urlParams_.Set("filter", filter) return c @@ -9186,7 +9198,7 @@ func (c *TypesListCall) Do(opts ...googleapi.CallOption) (*TypesListResponse, er // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, diff --git a/vendor/google.golang.org/api/deploymentmanager/v2/deploymentmanager-api.json b/vendor/google.golang.org/api/deploymentmanager/v2/deploymentmanager-api.json index 207dfb296..d54647e36 100644 --- a/vendor/google.golang.org/api/deploymentmanager/v2/deploymentmanager-api.json +++ b/vendor/google.golang.org/api/deploymentmanager/v2/deploymentmanager-api.json @@ -1,1917 +1,1930 @@ { - "kind": "discovery#restDescription", - "etag": "\"YWOzh2SDasdU84ArJnpYek-OMdg/GDaMgEo2rpzvf2TXCj_2gpZ3fIE\"", - "discoveryVersion": "v1", - "id": "deploymentmanager:v2", - "name": "deploymentmanager", - "canonicalName": "Deployment Manager", - "version": "v2", - "revision": "20171201", - "title": "Google Cloud Deployment Manager API", - "description": "Declares, configures, and deploys complex solutions on Google Cloud Platform.", - "ownerDomain": "google.com", - "ownerName": "Google", - "icons": { - "x16": "https://www.gstatic.com/images/branding/product/1x/googleg_16dp.png", - "x32": "https://www.gstatic.com/images/branding/product/1x/googleg_32dp.png" - }, - "documentationLink": "https://cloud.google.com/deployment-manager/", - "protocol": "rest", - "baseUrl": "https://www.googleapis.com/deploymentmanager/v2/projects/", - "basePath": "/deploymentmanager/v2/projects/", - "rootUrl": "https://www.googleapis.com/", - "servicePath": "deploymentmanager/v2/projects/", - "batchPath": "batch/deploymentmanager/v2", - "parameters": { - "alt": { - "type": "string", - "description": "Data format for the response.", - "default": "json", - "enum": [ - "json" - ], - "enumDescriptions": [ - "Responses with Content-Type of application/json" - ], - "location": "query" - }, - "fields": { - "type": "string", - "description": "Selector specifying which fields to include in a partial response.", - "location": "query" - }, - "key": { - "type": "string", - "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" - }, - "oauth_token": { - "type": "string", - "description": "OAuth 2.0 token for the current user.", - "location": "query" - }, - "prettyPrint": { - "type": "boolean", - "description": "Returns response with indentations and line breaks.", - "default": "true", - "location": "query" - }, - "quotaUser": { - "type": "string", - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", - "location": "query" - }, - "userIp": { - "type": "string", - "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", - "location": "query" - } - }, - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/cloud-platform": { - "description": "View and manage your data across Google Cloud Platform services" - }, - "https://www.googleapis.com/auth/cloud-platform.read-only": { - "description": "View your data across Google Cloud Platform services" - }, - "https://www.googleapis.com/auth/ndev.cloudman": { - "description": "View and manage your Google Cloud Platform management resources and deployment status information" - }, - "https://www.googleapis.com/auth/ndev.cloudman.readonly": { - "description": "View your Google Cloud Platform management resources and deployment status information" + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/cloud-platform": { + "description": "View and manage your data across Google Cloud Platform services" + }, + "https://www.googleapis.com/auth/cloud-platform.read-only": { + "description": "View your data across Google Cloud Platform services" + }, + "https://www.googleapis.com/auth/ndev.cloudman": { + "description": "View and manage your Google Cloud Platform management resources and deployment status information" + }, + "https://www.googleapis.com/auth/ndev.cloudman.readonly": { + "description": "View your Google Cloud Platform management resources and deployment status information" + } + } } - } - } - }, - "schemas": { - "AuditConfig": { - "id": "AuditConfig", - "type": "object", - "description": "Specifies the audit configuration for a service. The configuration determines which permission types are logged, and what identities, if any, are exempted from logging. An AuditConfig must have one or more AuditLogConfigs.\n\nIf there are AuditConfigs for both `allServices` and a specific service, the union of the two AuditConfigs is used for that service: the log_types specified in each AuditConfig are enabled, and the exempted_members in each AuditConfig are exempted.\n\nExample Policy with multiple AuditConfigs:\n\n{ \"audit_configs\": [ { \"service\": \"allServices\" \"audit_log_configs\": [ { \"log_type\": \"DATA_READ\", \"exempted_members\": [ \"user:foo@gmail.com\" ] }, { \"log_type\": \"DATA_WRITE\", }, { \"log_type\": \"ADMIN_READ\", } ] }, { \"service\": \"fooservice.googleapis.com\" \"audit_log_configs\": [ { \"log_type\": \"DATA_READ\", }, { \"log_type\": \"DATA_WRITE\", \"exempted_members\": [ \"user:bar@gmail.com\" ] } ] } ] }\n\nFor fooservice, this policy enables DATA_READ, DATA_WRITE and ADMIN_READ logging. It also exempts foo@gmail.com from DATA_READ logging, and bar@gmail.com from DATA_WRITE logging.", - "properties": { - "auditLogConfigs": { - "type": "array", - "description": "The configuration for logging of each type of permission.", - "items": { - "$ref": "AuditLogConfig" - } - }, - "exemptedMembers": { - "type": "array", - "description": "", - "items": { + }, + "basePath": "/deploymentmanager/v2/projects/", + "baseUrl": "https://www.googleapis.com/deploymentmanager/v2/projects/", + "batchPath": "batch/deploymentmanager/v2", + "canonicalName": "Deployment Manager", + "description": "Declares, configures, and deploys complex solutions on Google Cloud Platform.", + "discoveryVersion": "v1", + "documentationLink": "https://cloud.google.com/deployment-manager/", + "etag": "\"-iA1DTNe4s-I6JZXPt1t1Ypy8IU/e3d_k3vYLbSd_vluuySMj1lei3Y\"", + "icons": { + "x16": "https://www.gstatic.com/images/branding/product/1x/googleg_16dp.png", + "x32": "https://www.gstatic.com/images/branding/product/1x/googleg_32dp.png" + }, + "id": "deploymentmanager:v2", + "kind": "discovery#restDescription", + "name": "deploymentmanager", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "alt": { + "default": "json", + "description": "Data format for the response.", + "enum": [ + "json" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json" + ], + "location": "query", "type": "string" - } }, - "service": { - "type": "string", - "description": "Specifies a service that will be enabled for audit logging. For example, `storage.googleapis.com`, `cloudsql.googleapis.com`. `allServices` is a special value that covers all services." - } - } - }, - "AuditLogConfig": { - "id": "AuditLogConfig", - "type": "object", - "description": "Provides the configuration for logging a type of permissions. Example:\n\n{ \"audit_log_configs\": [ { \"log_type\": \"DATA_READ\", \"exempted_members\": [ \"user:foo@gmail.com\" ] }, { \"log_type\": \"DATA_WRITE\", } ] }\n\nThis enables 'DATA_READ' and 'DATA_WRITE' logging, while exempting foo@gmail.com from DATA_READ logging.", - "properties": { - "exemptedMembers": { - "type": "array", - "description": "Specifies the identities that do not cause logging for this type of permission. Follows the same format of [Binding.members][].", - "items": { + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "location": "query", "type": "string" - } }, - "logType": { - "type": "string", - "description": "The log type that this config enables." - } - } - }, - "AuthorizationLoggingOptions": { - "id": "AuthorizationLoggingOptions", - "type": "object", - "description": "Authorization-related information used by Cloud Audit Logging.", - "properties": { - "permissionType": { - "type": "string", - "description": "The type of the permission that was checked." - } - } - }, - "Binding": { - "id": "Binding", - "type": "object", - "description": "Associates `members` with a `role`.", - "properties": { - "condition": { - "$ref": "Expr", - "description": "The condition that is associated with this binding. NOTE: an unsatisfied condition will not allow user access via current binding. Different bindings, including their conditions, are examined independently. This field is GOOGLE_INTERNAL." - }, - "members": { - "type": "array", - "description": "Specifies the identities requesting access for a Cloud Platform resource. `members` can have the following values:\n\n* `allUsers`: A special identifier that represents anyone who is on the internet; with or without a Google account.\n\n* `allAuthenticatedUsers`: A special identifier that represents anyone who is authenticated with a Google account or a service account.\n\n* `user:{emailid}`: An email address that represents a specific Google account. For example, `alice@gmail.com` or `joe@example.com`.\n\n\n\n* `serviceAccount:{emailid}`: An email address that represents a service account. For example, `my-other-app@appspot.gserviceaccount.com`.\n\n* `group:{emailid}`: An email address that represents a Google group. For example, `admins@example.com`.\n\n\n\n* `domain:{domain}`: A Google Apps domain name that represents all the users of that domain. For example, `google.com` or `example.com`.", - "items": { - "type": "string" - } - }, - "role": { - "type": "string", - "description": "Role that is assigned to `members`. For example, `roles/viewer`, `roles/editor`, or `roles/owner`." - } - } - }, - "Condition": { - "id": "Condition", - "type": "object", - "description": "A condition to be met.", - "properties": { - "iam": { - "type": "string", - "description": "Trusted attributes supplied by the IAM system." - }, - "op": { - "type": "string", - "description": "An operator to apply the subject with." - }, - "svc": { - "type": "string", - "description": "Trusted attributes discharged by the service." - }, - "sys": { - "type": "string", - "description": "Trusted attributes supplied by any service that owns resources and uses the IAM system for access control." - }, - "value": { - "type": "string", - "description": "DEPRECATED. Use 'values' instead." - }, - "values": { - "type": "array", - "description": "The objects of the condition. This is mutually exclusive with 'value'.", - "items": { - "type": "string" - } - } - } - }, - "ConfigFile": { - "id": "ConfigFile", - "type": "object", - "description": "", - "properties": { - "content": { - "type": "string", - "description": "The contents of the file." - } - } - }, - "Deployment": { - "id": "Deployment", - "type": "object", - "description": "", - "properties": { - "description": { - "type": "string", - "description": "An optional user-provided description of the deployment." - }, - "fingerprint": { - "type": "string", - "description": "Provides a fingerprint to use in requests to modify a deployment, such as update(), stop(), and cancelPreview() requests. A fingerprint is a randomly generated value that must be provided with update(), stop(), and cancelPreview() requests to perform optimistic locking. This ensures optimistic concurrency so that only one request happens at a time.\n\nThe fingerprint is initially generated by Deployment Manager and changes after every request to modify data. To get the latest fingerprint value, perform a get() request to a deployment.", - "format": "byte" - }, - "id": { - "type": "string", - "description": "Output only. Unique identifier for the resource; defined by the server.", - "format": "uint64" - }, - "insertTime": { - "type": "string", - "description": "Output only. Timestamp when the deployment was created, in RFC3339 text format ." - }, - "labels": { - "type": "array", - "description": "Map of labels; provided by the client when the resource is created or updated. Specifically: Label keys must be between 1 and 63 characters long and must conform to the following regular expression: [a-z]([-a-z0-9]*[a-z0-9])? Label values must be between 0 and 63 characters long and must conform to the regular expression ([a-z]([-a-z0-9]*[a-z0-9])?)?", - "items": { - "$ref": "DeploymentLabelEntry" - } - }, - "manifest": { - "type": "string", - "description": "Output only. URL of the manifest representing the last manifest that was successfully deployed." - }, - "name": { - "type": "string", - "description": "Name of the resource; provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash." - }, - "operation": { - "$ref": "Operation", - "description": "Output only. The Operation that most recently ran, or is currently running, on this deployment." - }, - "selfLink": { - "type": "string", - "description": "Output only. Self link for the deployment." - }, - "target": { - "$ref": "TargetConfiguration", - "description": "[Input Only] The parameters that define your deployment, including the deployment configuration and relevant templates." - }, - "update": { - "$ref": "DeploymentUpdate", - "description": "Output only. If Deployment Manager is currently updating or previewing an update to this deployment, the updated configuration appears here." - } - } - }, - "DeploymentLabelEntry": { - "id": "DeploymentLabelEntry", - "type": "object", - "properties": { "key": { - "type": "string" + "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" }, - "value": { - "type": "string" - } - } - }, - "DeploymentUpdate": { - "id": "DeploymentUpdate", - "type": "object", - "description": "", - "properties": { - "description": { - "type": "string", - "description": "Output only. An optional user-provided description of the deployment after the current update has been applied." + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" }, - "labels": { - "type": "array", - "description": "Output only. Map of labels; provided by the client when the resource is created or updated. Specifically: Label keys must be between 1 and 63 characters long and must conform to the following regular expression: [a-z]([-a-z0-9]*[a-z0-9])? Label values must be between 0 and 63 characters long and must conform to the regular expression ([a-z]([-a-z0-9]*[a-z0-9])?)?", - "items": { - "$ref": "DeploymentUpdateLabelEntry" - } + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" }, - "manifest": { - "type": "string", - "description": "Output only. URL of the manifest representing the update configuration of this deployment." - } - } - }, - "DeploymentUpdateLabelEntry": { - "id": "DeploymentUpdateLabelEntry", - "type": "object", - "properties": { - "key": { - "type": "string" + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", + "location": "query", + "type": "string" }, - "value": { - "type": "string" + "userIp": { + "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", + "location": "query", + "type": "string" } - } }, - "DeploymentsCancelPreviewRequest": { - "id": "DeploymentsCancelPreviewRequest", - "type": "object", - "description": "", - "properties": { - "fingerprint": { - "type": "string", - "description": "Specifies a fingerprint for cancelPreview() requests. A fingerprint is a randomly generated value that must be provided in cancelPreview() requests to perform optimistic locking. This ensures optimistic concurrency so that the deployment does not have conflicting requests (e.g. if someone attempts to make a new update request while another user attempts to cancel a preview, this would prevent one of the requests).\n\nThe fingerprint is initially generated by Deployment Manager and changes after every request to modify a deployment. To get the latest fingerprint value, perform a get() request on the deployment.", - "format": "byte" - } - } - }, - "DeploymentsListResponse": { - "id": "DeploymentsListResponse", - "type": "object", - "description": "A response containing a partial list of deployments and a page token used to build the next request if the request has been truncated.", - "properties": { + "protocol": "rest", + "resources": { "deployments": { - "type": "array", - "description": "Output only. The deployments contained in this response.", - "items": { - "$ref": "Deployment" - } - }, - "nextPageToken": { - "type": "string", - "description": "Output only. A token used to continue a truncated list request." - } - } - }, - "DeploymentsStopRequest": { - "id": "DeploymentsStopRequest", - "type": "object", - "description": "", - "properties": { - "fingerprint": { - "type": "string", - "description": "Specifies a fingerprint for stop() requests. A fingerprint is a randomly generated value that must be provided in stop() requests to perform optimistic locking. This ensures optimistic concurrency so that the deployment does not have conflicting requests (e.g. if someone attempts to make a new update request while another user attempts to stop an ongoing update request, this would prevent a collision).\n\nThe fingerprint is initially generated by Deployment Manager and changes after every request to modify a deployment. To get the latest fingerprint value, perform a get() request on the deployment.", - "format": "byte" - } - } - }, - "Expr": { - "id": "Expr", - "type": "object", - "description": "Represents an expression text. Example:\n\ntitle: \"User account presence\" description: \"Determines whether the request has a user account\" expression: \"size(request.user) \u003e 0\"", - "properties": { - "description": { - "type": "string", - "description": "An optional description of the expression. This is a longer text which describes the expression, e.g. when hovered over it in a UI." - }, - "expression": { - "type": "string", - "description": "Textual representation of an expression in Common Expression Language syntax.\n\nThe application context of the containing message determines which well-known feature set of CEL is supported." - }, - "location": { - "type": "string", - "description": "An optional string indicating the location of the expression for error reporting, e.g. a file name and a position in the file." - }, - "title": { - "type": "string", - "description": "An optional title for the expression, i.e. a short string describing its purpose. This can be used e.g. in UIs which allow to enter the expression." - } - } - }, - "ImportFile": { - "id": "ImportFile", - "type": "object", - "description": "", - "properties": { - "content": { - "type": "string", - "description": "The contents of the file." - }, - "name": { - "type": "string", - "description": "The name of the file." - } - } - }, - "LogConfig": { - "id": "LogConfig", - "type": "object", - "description": "Specifies what kind of log the caller must write", - "properties": { - "cloudAudit": { - "$ref": "LogConfigCloudAuditOptions", - "description": "Cloud audit options." - }, - "counter": { - "$ref": "LogConfigCounterOptions", - "description": "Counter options." - }, - "dataAccess": { - "$ref": "LogConfigDataAccessOptions", - "description": "Data access options." - } - } - }, - "LogConfigCloudAuditOptions": { - "id": "LogConfigCloudAuditOptions", - "type": "object", - "description": "Write a Cloud Audit log", - "properties": { - "authorizationLoggingOptions": { - "$ref": "AuthorizationLoggingOptions", - "description": "Information used by the Cloud Audit Logging pipeline." - }, - "logName": { - "type": "string", - "description": "The log_name to populate in the Cloud Audit Record." - } - } - }, - "LogConfigCounterOptions": { - "id": "LogConfigCounterOptions", - "type": "object", - "description": "Increment a streamz counter with the specified metric and field names.\n\nMetric names should start with a '/', generally be lowercase-only, and end in \"_count\". Field names should not contain an initial slash. The actual exported metric names will have \"/iam/policy\" prepended.\n\nField names correspond to IAM request parameters and field values are their respective values.\n\nAt present the only supported field names are - \"iam_principal\", corresponding to IAMContext.principal; - \"\" (empty string), resulting in one aggretated counter with no field.\n\nExamples: counter { metric: \"/debug_access_count\" field: \"iam_principal\" } ==\u003e increment counter /iam/policy/backend_debug_access_count {iam_principal=[value of IAMContext.principal]}\n\nAt this time we do not support: * multiple field names (though this may be supported in the future) * decrementing the counter * incrementing it by anything other than 1", - "properties": { - "field": { - "type": "string", - "description": "The field value to attribute." - }, - "metric": { - "type": "string", - "description": "The metric to update." - } - } - }, - "LogConfigDataAccessOptions": { - "id": "LogConfigDataAccessOptions", - "type": "object", - "description": "Write a Data Access (Gin) log", - "properties": { - "logMode": { - "type": "string", - "description": "Whether Gin logging should happen in a fail-closed manner at the caller. This is relevant only in the LocalIAM implementation, for now." - } - } - }, - "Manifest": { - "id": "Manifest", - "type": "object", - "description": "", - "properties": { - "config": { - "$ref": "ConfigFile", - "description": "Output only. The YAML configuration for this manifest." - }, - "expandedConfig": { - "type": "string", - "description": "Output only. The fully-expanded configuration file, including any templates and references." - }, - "id": { - "type": "string", - "description": "Output only. Unique identifier for the resource; defined by the server.", - "format": "uint64" - }, - "imports": { - "type": "array", - "description": "Output only. The imported files for this manifest.", - "items": { - "$ref": "ImportFile" - } - }, - "insertTime": { - "type": "string", - "description": "Output only. Timestamp when the manifest was created, in RFC3339 text format." - }, - "layout": { - "type": "string", - "description": "Output only. The YAML layout for this manifest." - }, - "name": { - "type": "string", - "description": "Output only.\n\nThe name of the manifest." - }, - "selfLink": { - "type": "string", - "description": "Output only. Self link for the manifest." - } - } - }, - "ManifestsListResponse": { - "id": "ManifestsListResponse", - "type": "object", - "description": "A response containing a partial list of manifests and a page token used to build the next request if the request has been truncated.", - "properties": { - "manifests": { - "type": "array", - "description": "Output only. Manifests contained in this list response.", - "items": { - "$ref": "Manifest" - } - }, - "nextPageToken": { - "type": "string", - "description": "Output only. A token used to continue a truncated list request." - } - } - }, - "Operation": { - "id": "Operation", - "type": "object", - "description": "An Operation resource, used to manage asynchronous API requests. (== resource_for v1.globalOperations ==) (== resource_for beta.globalOperations ==) (== resource_for v1.regionOperations ==) (== resource_for beta.regionOperations ==) (== resource_for v1.zoneOperations ==) (== resource_for beta.zoneOperations ==)", - "properties": { - "clientOperationId": { - "type": "string", - "description": "[Output Only] Reserved for future use." - }, - "creationTimestamp": { - "type": "string", - "description": "[Deprecated] This field is deprecated." - }, - "description": { - "type": "string", - "description": "[Output Only] A textual description of the operation, which is set when the operation is created." - }, - "endTime": { - "type": "string", - "description": "[Output Only] The time that this operation was completed. This value is in RFC3339 text format." - }, - "error": { - "type": "object", - "description": "[Output Only] If errors are generated during processing of the operation, this field will be populated.", - "properties": { - "errors": { - "type": "array", - "description": "[Output Only] The array of errors encountered while processing this operation.", - "items": { - "type": "object", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] The error type identifier for this error." - }, - "location": { - "type": "string", - "description": "[Output Only] Indicates the field in the request that caused the error. This property is optional." - }, - "message": { - "type": "string", - "description": "[Output Only] An optional, human-readable error message." - } - } - } - } - } - }, - "httpErrorMessage": { - "type": "string", - "description": "[Output Only] If the operation fails, this field contains the HTTP error message that was returned, such as NOT FOUND." - }, - "httpErrorStatusCode": { - "type": "integer", - "description": "[Output Only] If the operation fails, this field contains the HTTP error status code that was returned. For example, a 404 means the resource was not found.", - "format": "int32" - }, - "id": { - "type": "string", - "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", - "format": "uint64" - }, - "insertTime": { - "type": "string", - "description": "[Output Only] The time that this operation was requested. This value is in RFC3339 text format." - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of the resource. Always compute#operation for Operation resources.", - "default": "deploymentmanager#operation" - }, - "name": { - "type": "string", - "description": "[Output Only] Name of the resource." - }, - "operationType": { - "type": "string", - "description": "[Output Only] The type of operation, such as insert, update, or delete, and so on." - }, - "progress": { - "type": "integer", - "description": "[Output Only] An optional progress indicator that ranges from 0 to 100. There is no requirement that this be linear or support any granularity of operations. This should not be used to guess when the operation will be complete. This number should monotonically increase as the operation progresses.", - "format": "int32" - }, - "region": { - "type": "string", - "description": "[Output Only] The URL of the region where the operation resides. Only available when performing regional operations." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for the resource." - }, - "startTime": { - "type": "string", - "description": "[Output Only] The time that this operation was started by the server. This value is in RFC3339 text format." - }, - "status": { - "type": "string", - "description": "[Output Only] The status of the operation, which can be one of the following: PENDING, RUNNING, or DONE." - }, - "statusMessage": { - "type": "string", - "description": "[Output Only] An optional textual description of the current status of the operation." - }, - "targetId": { - "type": "string", - "description": "[Output Only] The unique target ID, which identifies a specific incarnation of the target resource.", - "format": "uint64" - }, - "targetLink": { - "type": "string", - "description": "[Output Only] The URL of the resource that the operation modifies. For operations related to creating a snapshot, this points to the persistent disk that the snapshot was created from." - }, - "user": { - "type": "string", - "description": "[Output Only] User who requested the operation, for example: user@example.com." - }, - "warnings": { - "type": "array", - "description": "[Output Only] If warning messages are generated during processing of the operation, this field will be populated.", - "items": { - "type": "object", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response." - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." + "methods": { + "cancelPreview": { + "description": "Cancels and removes the preview currently associated with the deployment.", + "httpMethod": "POST", + "id": "deploymentmanager.deployments.cancelPreview", + "parameterOrder": [ + "project", + "deployment" + ], + "parameters": { + "deployment": { + "description": "The name of the deployment for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "The project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } + "path": "{project}/global/deployments/{deployment}/cancelPreview", + "request": { + "$ref": "DeploymentsCancelPreviewRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/ndev.cloudman" + ] + }, + "delete": { + "description": "Deletes a deployment and all of the resources in the deployment.", + "httpMethod": "DELETE", + "id": "deploymentmanager.deployments.delete", + "parameterOrder": [ + "project", + "deployment" + ], + "parameters": { + "deletePolicy": { + "default": "DELETE", + "description": "Sets the policy to use for deleting resources.", + "enum": [ + "ABANDON", + "DELETE" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + }, + "deployment": { + "description": "The name of the deployment for this request.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "The project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/deployments/{deployment}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/ndev.cloudman" + ] + }, + "get": { + "description": "Gets information about a specific deployment.", + "httpMethod": "GET", + "id": "deploymentmanager.deployments.get", + "parameterOrder": [ + "project", + "deployment" + ], + "parameters": { + "deployment": { + "description": "The name of the deployment for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "The project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/deployments/{deployment}", + "response": { + "$ref": "Deployment" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/ndev.cloudman", + "https://www.googleapis.com/auth/ndev.cloudman.readonly" + ] + }, + "getIamPolicy": { + "description": "Gets the access control policy for a resource. May be empty if no such policy or resource exists.", + "httpMethod": "GET", + "id": "deploymentmanager.deployments.getIamPolicy", + "parameterOrder": [ + "project", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "[a-z0-9](?:[-a-z0-9_]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/deployments/{resource}/getIamPolicy", + "response": { + "$ref": "Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/ndev.cloudman" + ] + }, + "insert": { + "description": "Creates a deployment and all of the resources described by the deployment manifest.", + "httpMethod": "POST", + "id": "deploymentmanager.deployments.insert", + "parameterOrder": [ + "project" + ], + "parameters": { + "createPolicy": { + "default": "CREATE_OR_ACQUIRE", + "description": "Sets the policy to use for creating new resources.", + "enum": [ + "ACQUIRE", + "CREATE_OR_ACQUIRE" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + }, + "preview": { + "description": "If set to true, creates a deployment and creates \"shell\" resources but does not actually instantiate these resources. This allows you to preview what your deployment looks like. After previewing a deployment, you can deploy your resources by making a request with the update() method or you can use the cancelPreview() method to cancel the preview altogether. Note that the deployment will still exist after you cancel the preview and you must separately delete this deployment if you want to remove it.", + "location": "query", + "type": "boolean" + }, + "project": { + "description": "The project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/deployments", + "request": { + "$ref": "Deployment" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/ndev.cloudman" + ] + }, + "list": { + "description": "Lists all deployments for a given project.", + "httpMethod": "GET", + "id": "deploymentmanager.deployments.list", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "The project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/deployments", + "response": { + "$ref": "DeploymentsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/ndev.cloudman", + "https://www.googleapis.com/auth/ndev.cloudman.readonly" + ] + }, + "patch": { + "description": "Updates a deployment and all of the resources described by the deployment manifest. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "deploymentmanager.deployments.patch", + "parameterOrder": [ + "project", + "deployment" + ], + "parameters": { + "createPolicy": { + "default": "CREATE_OR_ACQUIRE", + "description": "Sets the policy to use for creating new resources.", + "enum": [ + "ACQUIRE", + "CREATE_OR_ACQUIRE" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + }, + "deletePolicy": { + "default": "DELETE", + "description": "Sets the policy to use for deleting resources.", + "enum": [ + "ABANDON", + "DELETE" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + }, + "deployment": { + "description": "The name of the deployment for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "preview": { + "default": "false", + "description": "If set to true, updates the deployment and creates and updates the \"shell\" resources but does not actually alter or instantiate these resources. This allows you to preview what your deployment will look like. You can use this intent to preview how an update would affect your deployment. You must provide a target.config with a configuration if this is set to true. After previewing a deployment, you can deploy your resources by making a request with the update() or you can cancelPreview() to remove the preview altogether. Note that the deployment will still exist after you cancel the preview and you must separately delete this deployment if you want to remove it.", + "location": "query", + "type": "boolean" + }, + "project": { + "description": "The project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/deployments/{deployment}", + "request": { + "$ref": "Deployment" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/ndev.cloudman" + ] + }, + "setIamPolicy": { + "description": "Sets the access control policy on the specified resource. Replaces any existing policy.", + "httpMethod": "POST", + "id": "deploymentmanager.deployments.setIamPolicy", + "parameterOrder": [ + "project", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "[a-z0-9](?:[-a-z0-9_]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/deployments/{resource}/setIamPolicy", + "request": { + "$ref": "Policy" + }, + "response": { + "$ref": "Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/ndev.cloudman" + ] + }, + "stop": { + "description": "Stops an ongoing operation. This does not roll back any work that has already been completed, but prevents any new work from being started.", + "httpMethod": "POST", + "id": "deploymentmanager.deployments.stop", + "parameterOrder": [ + "project", + "deployment" + ], + "parameters": { + "deployment": { + "description": "The name of the deployment for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "The project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/deployments/{deployment}/stop", + "request": { + "$ref": "DeploymentsStopRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/ndev.cloudman" + ] + }, + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource.", + "httpMethod": "POST", + "id": "deploymentmanager.deployments.testIamPermissions", + "parameterOrder": [ + "project", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "(?:[-a-z0-9_]{0,62}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/deployments/{resource}/testIamPermissions", + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/ndev.cloudman" + ] + }, + "update": { + "description": "Updates a deployment and all of the resources described by the deployment manifest.", + "httpMethod": "PUT", + "id": "deploymentmanager.deployments.update", + "parameterOrder": [ + "project", + "deployment" + ], + "parameters": { + "createPolicy": { + "default": "CREATE_OR_ACQUIRE", + "description": "Sets the policy to use for creating new resources.", + "enum": [ + "ACQUIRE", + "CREATE_OR_ACQUIRE" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + }, + "deletePolicy": { + "default": "DELETE", + "description": "Sets the policy to use for deleting resources.", + "enum": [ + "ABANDON", + "DELETE" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + }, + "deployment": { + "description": "The name of the deployment for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "preview": { + "default": "false", + "description": "If set to true, updates the deployment and creates and updates the \"shell\" resources but does not actually alter or instantiate these resources. This allows you to preview what your deployment will look like. You can use this intent to preview how an update would affect your deployment. You must provide a target.config with a configuration if this is set to true. After previewing a deployment, you can deploy your resources by making a request with the update() or you can cancelPreview() to remove the preview altogether. Note that the deployment will still exist after you cancel the preview and you must separately delete this deployment if you want to remove it.", + "location": "query", + "type": "boolean" + }, + "project": { + "description": "The project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/deployments/{deployment}", + "request": { + "$ref": "Deployment" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/ndev.cloudman" + ] } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } } - } }, - "zone": { - "type": "string", - "description": "[Output Only] The URL of the zone where the operation resides. Only available when performing per-zone operations." - } - } - }, - "OperationsListResponse": { - "id": "OperationsListResponse", - "type": "object", - "description": "A response containing a partial list of operations and a page token used to build the next request if the request has been truncated.", - "properties": { - "nextPageToken": { - "type": "string", - "description": "Output only. A token used to continue a truncated list request." + "manifests": { + "methods": { + "get": { + "description": "Gets information about a specific manifest.", + "httpMethod": "GET", + "id": "deploymentmanager.manifests.get", + "parameterOrder": [ + "project", + "deployment", + "manifest" + ], + "parameters": { + "deployment": { + "description": "The name of the deployment for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "manifest": { + "description": "The name of the manifest for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "The project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/deployments/{deployment}/manifests/{manifest}", + "response": { + "$ref": "Manifest" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/ndev.cloudman", + "https://www.googleapis.com/auth/ndev.cloudman.readonly" + ] + }, + "list": { + "description": "Lists all manifests for a given deployment.", + "httpMethod": "GET", + "id": "deploymentmanager.manifests.list", + "parameterOrder": [ + "project", + "deployment" + ], + "parameters": { + "deployment": { + "description": "The name of the deployment for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "The project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/deployments/{deployment}/manifests", + "response": { + "$ref": "ManifestsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/ndev.cloudman", + "https://www.googleapis.com/auth/ndev.cloudman.readonly" + ] + } + } }, "operations": { - "type": "array", - "description": "Output only. Operations contained in this list response.", - "items": { - "$ref": "Operation" - } - } - } - }, - "Policy": { - "id": "Policy", - "type": "object", - "description": "Defines an Identity and Access Management (IAM) policy. It is used to specify access control policies for Cloud Platform resources.\n\n\n\nA `Policy` consists of a list of `bindings`. A `Binding` binds a list of `members` to a `role`, where the members can be user accounts, Google groups, Google domains, and service accounts. A `role` is a named list of permissions defined by IAM.\n\n**Example**\n\n{ \"bindings\": [ { \"role\": \"roles/owner\", \"members\": [ \"user:mike@example.com\", \"group:admins@example.com\", \"domain:google.com\", \"serviceAccount:my-other-app@appspot.gserviceaccount.com\", ] }, { \"role\": \"roles/viewer\", \"members\": [\"user:sean@example.com\"] } ] }\n\nFor a description of IAM and its features, see the [IAM developer's guide](https://cloud.google.com/iam).", - "properties": { - "auditConfigs": { - "type": "array", - "description": "Specifies cloud audit logging configuration for this policy.", - "items": { - "$ref": "AuditConfig" - } - }, - "bindings": { - "type": "array", - "description": "Associates a list of `members` to a `role`. `bindings` with no members will result in an error.", - "items": { - "$ref": "Binding" - } - }, - "etag": { - "type": "string", - "description": "`etag` is used for optimistic concurrency control as a way to help prevent simultaneous updates of a policy from overwriting each other. It is strongly suggested that systems make use of the `etag` in the read-modify-write cycle to perform policy updates in order to avoid race conditions: An `etag` is returned in the response to `getIamPolicy`, and systems are expected to put that etag in the request to `setIamPolicy` to ensure that their change will be applied to the same version of the policy.\n\nIf no `etag` is provided in the call to `setIamPolicy`, then the existing policy is overwritten blindly.", - "format": "byte" - }, - "iamOwned": { - "type": "boolean", - "description": "" - }, - "rules": { - "type": "array", - "description": "If more than one rule is specified, the rules are applied in the following manner: - All matching LOG rules are always applied. - If any DENY/DENY_WITH_LOG rule matches, permission is denied. Logging will be applied if one or more matching rule requires logging. - Otherwise, if any ALLOW/ALLOW_WITH_LOG rule matches, permission is granted. Logging will be applied if one or more matching rule requires logging. - Otherwise, if no rule applies, permission is denied.", - "items": { - "$ref": "Rule" - } - }, - "version": { - "type": "integer", - "description": "Version of the `Policy`. The default version is 0.", - "format": "int32" - } - } - }, - "Resource": { - "id": "Resource", - "type": "object", - "description": "", - "properties": { - "accessControl": { - "$ref": "ResourceAccessControl", - "description": "The Access Control Policy set on this resource." - }, - "finalProperties": { - "type": "string", - "description": "Output only. The evaluated properties of the resource with references expanded. Returned as serialized YAML." - }, - "id": { - "type": "string", - "description": "Output only. Unique identifier for the resource; defined by the server.", - "format": "uint64" - }, - "insertTime": { - "type": "string", - "description": "Output only. Timestamp when the resource was created or acquired, in RFC3339 text format ." - }, - "manifest": { - "type": "string", - "description": "Output only. URL of the manifest representing the current configuration of this resource." - }, - "name": { - "type": "string", - "description": "Output only. The name of the resource as it appears in the YAML config." - }, - "properties": { - "type": "string", - "description": "Output only. The current properties of the resource before any references have been filled in. Returned as serialized YAML." - }, - "type": { - "type": "string", - "description": "Output only. The type of the resource, for example compute.v1.instance, or cloudfunctions.v1beta1.function." - }, - "update": { - "$ref": "ResourceUpdate", - "description": "Output only. If Deployment Manager is currently updating or previewing an update to this resource, the updated configuration appears here." - }, - "updateTime": { - "type": "string", - "description": "Output only. Timestamp when the resource was updated, in RFC3339 text format ." - }, - "url": { - "type": "string", - "description": "Output only. The URL of the actual resource." - }, - "warnings": { - "type": "array", - "description": "Output only. If warning messages are generated during processing of this resource, this field will be populated.", - "items": { - "type": "object", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response." - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." + "methods": { + "get": { + "description": "Gets information about a specific operation.", + "httpMethod": "GET", + "id": "deploymentmanager.operations.get", + "parameterOrder": [ + "project", + "operation" + ], + "parameters": { + "operation": { + "description": "The name of the operation for this request.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "The project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - } - }, - "ResourceAccessControl": { - "id": "ResourceAccessControl", - "type": "object", - "description": "The access controls set on the resource.", - "properties": { - "gcpIamPolicy": { - "type": "string", - "description": "The GCP IAM Policy to set on the resource." - } - } - }, - "ResourceUpdate": { - "id": "ResourceUpdate", - "type": "object", - "description": "", - "properties": { - "accessControl": { - "$ref": "ResourceAccessControl", - "description": "The Access Control Policy to set on this resource after updating the resource itself." - }, - "error": { - "type": "object", - "description": "Output only. If errors are generated during update of the resource, this field will be populated.", - "properties": { - "errors": { - "type": "array", - "description": "[Output Only] The array of errors encountered while processing this operation.", - "items": { - "type": "object", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] The error type identifier for this error." - }, - "location": { - "type": "string", - "description": "[Output Only] Indicates the field in the request that caused the error. This property is optional." - }, - "message": { - "type": "string", - "description": "[Output Only] An optional, human-readable error message." - } - } - } - } - } - }, - "finalProperties": { - "type": "string", - "description": "Output only. The expanded properties of the resource with reference values expanded. Returned as serialized YAML." - }, - "intent": { - "type": "string", - "description": "Output only. The intent of the resource: PREVIEW, UPDATE, or CANCEL." - }, - "manifest": { - "type": "string", - "description": "Output only. URL of the manifest representing the update configuration of this resource." - }, - "properties": { - "type": "string", - "description": "Output only. The set of updated properties for this resource, before references are expanded. Returned as serialized YAML." - }, - "state": { - "type": "string", - "description": "Output only. The state of the resource." - }, - "warnings": { - "type": "array", - "description": "Output only. If warning messages are generated during processing of this resource, this field will be populated.", - "items": { - "type": "object", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response." - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." + "path": "{project}/global/operations/{operation}", + "response": { + "$ref": "Operation" }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/ndev.cloudman", + "https://www.googleapis.com/auth/ndev.cloudman.readonly" + ] + }, + "list": { + "description": "Lists all operations for a project.", + "httpMethod": "GET", + "id": "deploymentmanager.operations.list", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "The project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/operations", + "response": { + "$ref": "OperationsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/ndev.cloudman", + "https://www.googleapis.com/auth/ndev.cloudman.readonly" + ] } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } } - } - } - } - }, - "ResourcesListResponse": { - "id": "ResourcesListResponse", - "type": "object", - "description": "A response containing a partial list of resources and a page token used to build the next request if the request has been truncated.", - "properties": { - "nextPageToken": { - "type": "string", - "description": "A token used to continue a truncated list request." }, "resources": { - "type": "array", - "description": "Resources contained in this list response.", - "items": { - "$ref": "Resource" - } - } - } - }, - "Rule": { - "id": "Rule", - "type": "object", - "description": "A rule to be applied in a Policy.", - "properties": { - "action": { - "type": "string", - "description": "Required" - }, - "conditions": { - "type": "array", - "description": "Additional restrictions that must be met. All conditions must pass for the rule to match.", - "items": { - "$ref": "Condition" - } - }, - "description": { - "type": "string", - "description": "Human-readable description of the rule." - }, - "ins": { - "type": "array", - "description": "If one or more 'in' clauses are specified, the rule matches if the PRINCIPAL/AUTHORITY_SELECTOR is in at least one of these entries.", - "items": { - "type": "string" - } - }, - "logConfigs": { - "type": "array", - "description": "The config returned to callers of tech.iam.IAM.CheckPolicy for any entries that match the LOG action.", - "items": { - "$ref": "LogConfig" - } - }, - "notIns": { - "type": "array", - "description": "If one or more 'not_in' clauses are specified, the rule matches if the PRINCIPAL/AUTHORITY_SELECTOR is in none of the entries.", - "items": { - "type": "string" - } - }, - "permissions": { - "type": "array", - "description": "A permission is a string of form '..' (e.g., 'storage.buckets.list'). A value of '*' matches all permissions, and a verb part of '*' (e.g., 'storage.buckets.*') matches all verbs.", - "items": { - "type": "string" - } - } - } - }, - "TargetConfiguration": { - "id": "TargetConfiguration", - "type": "object", - "description": "", - "properties": { - "config": { - "$ref": "ConfigFile", - "description": "The configuration to use for this deployment." - }, - "imports": { - "type": "array", - "description": "Specifies any files to import for this configuration. This can be used to import templates or other files. For example, you might import a text file in order to use the file in a template.", - "items": { - "$ref": "ImportFile" - } - } - } - }, - "TestPermissionsRequest": { - "id": "TestPermissionsRequest", - "type": "object", - "properties": { - "permissions": { - "type": "array", - "description": "The set of permissions to check for the 'resource'. Permissions with wildcards (such as '*' or 'storage.*') are not allowed.", - "items": { - "type": "string" - } - } - } - }, - "TestPermissionsResponse": { - "id": "TestPermissionsResponse", - "type": "object", - "properties": { - "permissions": { - "type": "array", - "description": "A subset of `TestPermissionsRequest.permissions` that the caller is allowed.", - "items": { - "type": "string" - } - } - } - }, - "Type": { - "id": "Type", - "type": "object", - "description": "A resource type supported by Deployment Manager.", - "properties": { - "id": { - "type": "string", - "description": "Output only. Unique identifier for the resource; defined by the server.", - "format": "uint64" - }, - "insertTime": { - "type": "string", - "description": "Output only. Timestamp when the type was created, in RFC3339 text format." - }, - "name": { - "type": "string", - "description": "Name of the type." - }, - "operation": { - "$ref": "Operation", - "description": "Output only. The Operation that most recently ran, or is currently running, on this type." - }, - "selfLink": { - "type": "string", - "description": "Output only. Self link for the type." - } - } - }, - "TypesListResponse": { - "id": "TypesListResponse", - "type": "object", - "description": "A response that returns all Types supported by Deployment Manager", - "properties": { - "nextPageToken": { - "type": "string", - "description": "A token used to continue a truncated list request." + "methods": { + "get": { + "description": "Gets information about a single resource.", + "httpMethod": "GET", + "id": "deploymentmanager.resources.get", + "parameterOrder": [ + "project", + "deployment", + "resource" + ], + "parameters": { + "deployment": { + "description": "The name of the deployment for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "The project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "resource": { + "description": "The name of the resource for this request.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/deployments/{deployment}/resources/{resource}", + "response": { + "$ref": "Resource" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/ndev.cloudman", + "https://www.googleapis.com/auth/ndev.cloudman.readonly" + ] + }, + "list": { + "description": "Lists all resources in a given deployment.", + "httpMethod": "GET", + "id": "deploymentmanager.resources.list", + "parameterOrder": [ + "project", + "deployment" + ], + "parameters": { + "deployment": { + "description": "The name of the deployment for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "The project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/deployments/{deployment}/resources", + "response": { + "$ref": "ResourcesListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/ndev.cloudman", + "https://www.googleapis.com/auth/ndev.cloudman.readonly" + ] + } + } }, "types": { - "type": "array", - "description": "Output only. A list of resource types supported by Deployment Manager.", - "items": { - "$ref": "Type" - } + "methods": { + "list": { + "description": "Lists all resource types for Deployment Manager.", + "httpMethod": "GET", + "id": "deploymentmanager.types.list", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "The project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/types", + "response": { + "$ref": "TypesListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/ndev.cloudman", + "https://www.googleapis.com/auth/ndev.cloudman.readonly" + ] + } + } } - } - } - }, - "resources": { - "deployments": { - "methods": { - "cancelPreview": { - "id": "deploymentmanager.deployments.cancelPreview", - "path": "{project}/global/deployments/{deployment}/cancelPreview", - "httpMethod": "POST", - "description": "Cancels and removes the preview currently associated with the deployment.", - "parameters": { - "deployment": { - "type": "string", - "description": "The name of the deployment for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "The project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "deployment" - ], - "request": { - "$ref": "DeploymentsCancelPreviewRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/ndev.cloudman" - ] - }, - "delete": { - "id": "deploymentmanager.deployments.delete", - "path": "{project}/global/deployments/{deployment}", - "httpMethod": "DELETE", - "description": "Deletes a deployment and all of the resources in the deployment.", - "parameters": { - "deletePolicy": { - "type": "string", - "description": "Sets the policy to use for deleting resources.", - "default": "DELETE", - "enum": [ - "ABANDON", - "DELETE" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - }, - "deployment": { - "type": "string", - "description": "The name of the deployment for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "The project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "deployment" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/ndev.cloudman" - ] - }, - "get": { - "id": "deploymentmanager.deployments.get", - "path": "{project}/global/deployments/{deployment}", - "httpMethod": "GET", - "description": "Gets information about a specific deployment.", - "parameters": { - "deployment": { - "type": "string", - "description": "The name of the deployment for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "The project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "deployment" - ], - "response": { - "$ref": "Deployment" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/ndev.cloudman", - "https://www.googleapis.com/auth/ndev.cloudman.readonly" - ] - }, - "getIamPolicy": { - "id": "deploymentmanager.deployments.getIamPolicy", - "path": "{project}/global/deployments/{resource}/getIamPolicy", - "httpMethod": "GET", - "description": "Gets the access control policy for a resource. May be empty if no such policy or resource exists.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "[a-z0-9](?:[-a-z0-9_]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "resource" - ], - "response": { - "$ref": "Policy" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/ndev.cloudman" - ] - }, - "insert": { - "id": "deploymentmanager.deployments.insert", - "path": "{project}/global/deployments", - "httpMethod": "POST", - "description": "Creates a deployment and all of the resources described by the deployment manifest.", - "parameters": { - "preview": { - "type": "boolean", - "description": "If set to true, creates a deployment and creates \"shell\" resources but does not actually instantiate these resources. This allows you to preview what your deployment looks like. After previewing a deployment, you can deploy your resources by making a request with the update() method or you can use the cancelPreview() method to cancel the preview altogether. Note that the deployment will still exist after you cancel the preview and you must separately delete this deployment if you want to remove it.", - "location": "query" - }, - "project": { - "type": "string", - "description": "The project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "request": { - "$ref": "Deployment" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/ndev.cloudman" - ] - }, - "list": { - "id": "deploymentmanager.deployments.list", - "path": "{project}/global/deployments", - "httpMethod": "GET", - "description": "Lists all deployments for a given project.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "The project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "DeploymentsListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/ndev.cloudman", - "https://www.googleapis.com/auth/ndev.cloudman.readonly" - ] - }, - "patch": { - "id": "deploymentmanager.deployments.patch", - "path": "{project}/global/deployments/{deployment}", - "httpMethod": "PATCH", - "description": "Updates a deployment and all of the resources described by the deployment manifest. This method supports patch semantics.", - "parameters": { - "createPolicy": { - "type": "string", - "description": "Sets the policy to use for creating new resources.", - "default": "CREATE_OR_ACQUIRE", - "enum": [ - "ACQUIRE", - "CREATE_OR_ACQUIRE" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - }, - "deletePolicy": { - "type": "string", - "description": "Sets the policy to use for deleting resources.", - "default": "DELETE", - "enum": [ - "ABANDON", - "DELETE" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - }, - "deployment": { - "type": "string", - "description": "The name of the deployment for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "preview": { - "type": "boolean", - "description": "If set to true, updates the deployment and creates and updates the \"shell\" resources but does not actually alter or instantiate these resources. This allows you to preview what your deployment will look like. You can use this intent to preview how an update would affect your deployment. You must provide a target.config with a configuration if this is set to true. After previewing a deployment, you can deploy your resources by making a request with the update() or you can cancelPreview() to remove the preview altogether. Note that the deployment will still exist after you cancel the preview and you must separately delete this deployment if you want to remove it.", - "default": "false", - "location": "query" - }, - "project": { - "type": "string", - "description": "The project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "deployment" - ], - "request": { - "$ref": "Deployment" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/ndev.cloudman" - ] - }, - "setIamPolicy": { - "id": "deploymentmanager.deployments.setIamPolicy", - "path": "{project}/global/deployments/{resource}/setIamPolicy", - "httpMethod": "POST", - "description": "Sets the access control policy on the specified resource. Replaces any existing policy.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "[a-z0-9](?:[-a-z0-9_]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "resource" - ], - "request": { - "$ref": "Policy" - }, - "response": { - "$ref": "Policy" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/ndev.cloudman" - ] - }, - "stop": { - "id": "deploymentmanager.deployments.stop", - "path": "{project}/global/deployments/{deployment}/stop", - "httpMethod": "POST", - "description": "Stops an ongoing operation. This does not roll back any work that has already been completed, but prevents any new work from being started.", - "parameters": { - "deployment": { - "type": "string", - "description": "The name of the deployment for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "The project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "deployment" - ], - "request": { - "$ref": "DeploymentsStopRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/ndev.cloudman" - ] - }, - "testIamPermissions": { - "id": "deploymentmanager.deployments.testIamPermissions", - "path": "{project}/global/deployments/{resource}/testIamPermissions", - "httpMethod": "POST", - "description": "Returns permissions that a caller has on the specified resource.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "(?:[-a-z0-9_]{0,62}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "resource" - ], - "request": { - "$ref": "TestPermissionsRequest" - }, - "response": { - "$ref": "TestPermissionsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/ndev.cloudman" - ] - }, - "update": { - "id": "deploymentmanager.deployments.update", - "path": "{project}/global/deployments/{deployment}", - "httpMethod": "PUT", - "description": "Updates a deployment and all of the resources described by the deployment manifest.", - "parameters": { - "createPolicy": { - "type": "string", - "description": "Sets the policy to use for creating new resources.", - "default": "CREATE_OR_ACQUIRE", - "enum": [ - "ACQUIRE", - "CREATE_OR_ACQUIRE" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - }, - "deletePolicy": { - "type": "string", - "description": "Sets the policy to use for deleting resources.", - "default": "DELETE", - "enum": [ - "ABANDON", - "DELETE" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - }, - "deployment": { - "type": "string", - "description": "The name of the deployment for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "preview": { - "type": "boolean", - "description": "If set to true, updates the deployment and creates and updates the \"shell\" resources but does not actually alter or instantiate these resources. This allows you to preview what your deployment will look like. You can use this intent to preview how an update would affect your deployment. You must provide a target.config with a configuration if this is set to true. After previewing a deployment, you can deploy your resources by making a request with the update() or you can cancelPreview() to remove the preview altogether. Note that the deployment will still exist after you cancel the preview and you must separately delete this deployment if you want to remove it.", - "default": "false", - "location": "query" - }, - "project": { - "type": "string", - "description": "The project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "deployment" - ], - "request": { - "$ref": "Deployment" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/ndev.cloudman" - ] - } - } }, - "manifests": { - "methods": { - "get": { - "id": "deploymentmanager.manifests.get", - "path": "{project}/global/deployments/{deployment}/manifests/{manifest}", - "httpMethod": "GET", - "description": "Gets information about a specific manifest.", - "parameters": { - "deployment": { - "type": "string", - "description": "The name of the deployment for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" + "revision": "20180309", + "rootUrl": "https://www.googleapis.com/", + "schemas": { + "AuditConfig": { + "description": "Specifies the audit configuration for a service. The configuration determines which permission types are logged, and what identities, if any, are exempted from logging. An AuditConfig must have one or more AuditLogConfigs.\n\nIf there are AuditConfigs for both `allServices` and a specific service, the union of the two AuditConfigs is used for that service: the log_types specified in each AuditConfig are enabled, and the exempted_members in each AuditLogConfig are exempted.\n\nExample Policy with multiple AuditConfigs:\n\n{ \"audit_configs\": [ { \"service\": \"allServices\" \"audit_log_configs\": [ { \"log_type\": \"DATA_READ\", \"exempted_members\": [ \"user:foo@gmail.com\" ] }, { \"log_type\": \"DATA_WRITE\", }, { \"log_type\": \"ADMIN_READ\", } ] }, { \"service\": \"fooservice.googleapis.com\" \"audit_log_configs\": [ { \"log_type\": \"DATA_READ\", }, { \"log_type\": \"DATA_WRITE\", \"exempted_members\": [ \"user:bar@gmail.com\" ] } ] } ] }\n\nFor fooservice, this policy enables DATA_READ, DATA_WRITE and ADMIN_READ logging. It also exempts foo@gmail.com from DATA_READ logging, and bar@gmail.com from DATA_WRITE logging.", + "id": "AuditConfig", + "properties": { + "auditLogConfigs": { + "description": "The configuration for logging of each type of permission.", + "items": { + "$ref": "AuditLogConfig" + }, + "type": "array" + }, + "exemptedMembers": { + "description": "", + "items": { + "type": "string" + }, + "type": "array" + }, + "service": { + "description": "Specifies a service that will be enabled for audit logging. For example, `storage.googleapis.com`, `cloudsql.googleapis.com`. `allServices` is a special value that covers all services.", + "type": "string" + } }, - "manifest": { - "type": "string", - "description": "The name of the manifest for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "The project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "deployment", - "manifest" - ], - "response": { - "$ref": "Manifest" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/ndev.cloudman", - "https://www.googleapis.com/auth/ndev.cloudman.readonly" - ] + "type": "object" }, - "list": { - "id": "deploymentmanager.manifests.list", - "path": "{project}/global/deployments/{deployment}/manifests", - "httpMethod": "GET", - "description": "Lists all manifests for a given deployment.", - "parameters": { - "deployment": { - "type": "string", - "description": "The name of the deployment for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" + "AuditLogConfig": { + "description": "Provides the configuration for logging a type of permissions. Example:\n\n{ \"audit_log_configs\": [ { \"log_type\": \"DATA_READ\", \"exempted_members\": [ \"user:foo@gmail.com\" ] }, { \"log_type\": \"DATA_WRITE\", } ] }\n\nThis enables 'DATA_READ' and 'DATA_WRITE' logging, while exempting foo@gmail.com from DATA_READ logging.", + "id": "AuditLogConfig", + "properties": { + "exemptedMembers": { + "description": "Specifies the identities that do not cause logging for this type of permission. Follows the same format of [Binding.members][].", + "items": { + "type": "string" + }, + "type": "array" + }, + "logType": { + "description": "The log type that this config enables.", + "type": "string" + } }, - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "The project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "deployment" - ], - "response": { - "$ref": "ManifestsListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/ndev.cloudman", - "https://www.googleapis.com/auth/ndev.cloudman.readonly" - ] - } - } - }, - "operations": { - "methods": { - "get": { - "id": "deploymentmanager.operations.get", - "path": "{project}/global/operations/{operation}", - "httpMethod": "GET", - "description": "Gets information about a specific operation.", - "parameters": { - "operation": { - "type": "string", - "description": "The name of the operation for this request.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "The project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "operation" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/ndev.cloudman", - "https://www.googleapis.com/auth/ndev.cloudman.readonly" - ] + "type": "object" }, - "list": { - "id": "deploymentmanager.operations.list", - "path": "{project}/global/operations", - "httpMethod": "GET", - "description": "Lists all operations for a project.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" + "AuthorizationLoggingOptions": { + "description": "Authorization-related information used by Cloud Audit Logging.", + "id": "AuthorizationLoggingOptions", + "properties": { + "permissionType": { + "description": "The type of the permission that was checked.", + "type": "string" + } }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "The project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "OperationsListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/ndev.cloudman", - "https://www.googleapis.com/auth/ndev.cloudman.readonly" - ] - } - } - }, - "resources": { - "methods": { - "get": { - "id": "deploymentmanager.resources.get", - "path": "{project}/global/deployments/{deployment}/resources/{resource}", - "httpMethod": "GET", - "description": "Gets information about a single resource.", - "parameters": { - "deployment": { - "type": "string", - "description": "The name of the deployment for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "The project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "resource": { - "type": "string", - "description": "The name of the resource for this request.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "deployment", - "resource" - ], - "response": { - "$ref": "Resource" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/ndev.cloudman", - "https://www.googleapis.com/auth/ndev.cloudman.readonly" - ] + "type": "object" }, - "list": { - "id": "deploymentmanager.resources.list", - "path": "{project}/global/deployments/{deployment}/resources", - "httpMethod": "GET", - "description": "Lists all resources in a given deployment.", - "parameters": { - "deployment": { - "type": "string", - "description": "The name of the deployment for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" + "Binding": { + "description": "Associates `members` with a `role`.", + "id": "Binding", + "properties": { + "condition": { + "$ref": "Expr", + "description": "The condition that is associated with this binding. NOTE: an unsatisfied condition will not allow user access via current binding. Different bindings, including their conditions, are examined independently. This field is only visible as GOOGLE_INTERNAL or CONDITION_TRUSTED_TESTER." + }, + "members": { + "description": "Specifies the identities requesting access for a Cloud Platform resource. `members` can have the following values:\n\n* `allUsers`: A special identifier that represents anyone who is on the internet; with or without a Google account.\n\n* `allAuthenticatedUsers`: A special identifier that represents anyone who is authenticated with a Google account or a service account.\n\n* `user:{emailid}`: An email address that represents a specific Google account. For example, `alice@gmail.com` or `joe@example.com`.\n\n\n\n* `serviceAccount:{emailid}`: An email address that represents a service account. For example, `my-other-app@appspot.gserviceaccount.com`.\n\n* `group:{emailid}`: An email address that represents a Google group. For example, `admins@example.com`.\n\n\n\n* `domain:{domain}`: A Google Apps domain name that represents all the users of that domain. For example, `google.com` or `example.com`.", + "items": { + "type": "string" + }, + "type": "array" + }, + "role": { + "description": "Role that is assigned to `members`. For example, `roles/viewer`, `roles/editor`, or `roles/owner`.", + "type": "string" + } }, - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" + "type": "object" + }, + "Condition": { + "description": "A condition to be met.", + "id": "Condition", + "properties": { + "iam": { + "description": "Trusted attributes supplied by the IAM system.", + "type": "string" + }, + "op": { + "description": "An operator to apply the subject with.", + "type": "string" + }, + "svc": { + "description": "Trusted attributes discharged by the service.", + "type": "string" + }, + "sys": { + "description": "Trusted attributes supplied by any service that owns resources and uses the IAM system for access control.", + "type": "string" + }, + "value": { + "description": "DEPRECATED. Use 'values' instead.", + "type": "string" + }, + "values": { + "description": "The objects of the condition. This is mutually exclusive with 'value'.", + "items": { + "type": "string" + }, + "type": "array" + } }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" + "type": "object" + }, + "ConfigFile": { + "description": "", + "id": "ConfigFile", + "properties": { + "content": { + "description": "The contents of the file.", + "type": "string" + } }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" + "type": "object" + }, + "Deployment": { + "description": "", + "id": "Deployment", + "properties": { + "description": { + "description": "An optional user-provided description of the deployment.", + "type": "string" + }, + "fingerprint": { + "description": "Provides a fingerprint to use in requests to modify a deployment, such as update(), stop(), and cancelPreview() requests. A fingerprint is a randomly generated value that must be provided with update(), stop(), and cancelPreview() requests to perform optimistic locking. This ensures optimistic concurrency so that only one request happens at a time.\n\nThe fingerprint is initially generated by Deployment Manager and changes after every request to modify data. To get the latest fingerprint value, perform a get() request to a deployment.", + "format": "byte", + "type": "string" + }, + "id": { + "description": "Output only. Unique identifier for the resource; defined by the server.", + "format": "uint64", + "type": "string" + }, + "insertTime": { + "description": "Output only. Timestamp when the deployment was created, in RFC3339 text format .", + "type": "string" + }, + "labels": { + "description": "Map of labels; provided by the client when the resource is created or updated. Specifically: Label keys must be between 1 and 63 characters long and must conform to the following regular expression: [a-z]([-a-z0-9]*[a-z0-9])? Label values must be between 0 and 63 characters long and must conform to the regular expression ([a-z]([-a-z0-9]*[a-z0-9])?)?", + "items": { + "$ref": "DeploymentLabelEntry" + }, + "type": "array" + }, + "manifest": { + "description": "Output only. URL of the manifest representing the last manifest that was successfully deployed.", + "type": "string" + }, + "name": { + "description": "Name of the resource; provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "type": "string" + }, + "operation": { + "$ref": "Operation", + "description": "Output only. The Operation that most recently ran, or is currently running, on this deployment." + }, + "selfLink": { + "description": "Output only. Self link for the deployment.", + "type": "string" + }, + "target": { + "$ref": "TargetConfiguration", + "description": "[Input Only] The parameters that define your deployment, including the deployment configuration and relevant templates." + }, + "update": { + "$ref": "DeploymentUpdate", + "description": "Output only. If Deployment Manager is currently updating or previewing an update to this deployment, the updated configuration appears here." + } }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" + "type": "object" + }, + "DeploymentLabelEntry": { + "id": "DeploymentLabelEntry", + "properties": { + "key": { + "type": "string" + }, + "value": { + "type": "string" + } }, - "project": { - "type": "string", - "description": "The project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "deployment" - ], - "response": { - "$ref": "ResourcesListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/ndev.cloudman", - "https://www.googleapis.com/auth/ndev.cloudman.readonly" - ] + "type": "object" + }, + "DeploymentUpdate": { + "description": "", + "id": "DeploymentUpdate", + "properties": { + "description": { + "description": "Output only. An optional user-provided description of the deployment after the current update has been applied.", + "type": "string" + }, + "labels": { + "description": "Output only. Map of labels; provided by the client when the resource is created or updated. Specifically: Label keys must be between 1 and 63 characters long and must conform to the following regular expression: [a-z]([-a-z0-9]*[a-z0-9])? Label values must be between 0 and 63 characters long and must conform to the regular expression ([a-z]([-a-z0-9]*[a-z0-9])?)?", + "items": { + "$ref": "DeploymentUpdateLabelEntry" + }, + "type": "array" + }, + "manifest": { + "description": "Output only. URL of the manifest representing the update configuration of this deployment.", + "type": "string" + } + }, + "type": "object" + }, + "DeploymentUpdateLabelEntry": { + "id": "DeploymentUpdateLabelEntry", + "properties": { + "key": { + "type": "string" + }, + "value": { + "type": "string" + } + }, + "type": "object" + }, + "DeploymentsCancelPreviewRequest": { + "description": "", + "id": "DeploymentsCancelPreviewRequest", + "properties": { + "fingerprint": { + "description": "Specifies a fingerprint for cancelPreview() requests. A fingerprint is a randomly generated value that must be provided in cancelPreview() requests to perform optimistic locking. This ensures optimistic concurrency so that the deployment does not have conflicting requests (e.g. if someone attempts to make a new update request while another user attempts to cancel a preview, this would prevent one of the requests).\n\nThe fingerprint is initially generated by Deployment Manager and changes after every request to modify a deployment. To get the latest fingerprint value, perform a get() request on the deployment.", + "format": "byte", + "type": "string" + } + }, + "type": "object" + }, + "DeploymentsListResponse": { + "description": "A response containing a partial list of deployments and a page token used to build the next request if the request has been truncated.", + "id": "DeploymentsListResponse", + "properties": { + "deployments": { + "description": "Output only. The deployments contained in this response.", + "items": { + "$ref": "Deployment" + }, + "type": "array" + }, + "nextPageToken": { + "description": "Output only. A token used to continue a truncated list request.", + "type": "string" + } + }, + "type": "object" + }, + "DeploymentsStopRequest": { + "description": "", + "id": "DeploymentsStopRequest", + "properties": { + "fingerprint": { + "description": "Specifies a fingerprint for stop() requests. A fingerprint is a randomly generated value that must be provided in stop() requests to perform optimistic locking. This ensures optimistic concurrency so that the deployment does not have conflicting requests (e.g. if someone attempts to make a new update request while another user attempts to stop an ongoing update request, this would prevent a collision).\n\nThe fingerprint is initially generated by Deployment Manager and changes after every request to modify a deployment. To get the latest fingerprint value, perform a get() request on the deployment.", + "format": "byte", + "type": "string" + } + }, + "type": "object" + }, + "Expr": { + "description": "Represents an expression text. Example:\n\ntitle: \"User account presence\" description: \"Determines whether the request has a user account\" expression: \"size(request.user) \u003e 0\"", + "id": "Expr", + "properties": { + "description": { + "description": "An optional description of the expression. This is a longer text which describes the expression, e.g. when hovered over it in a UI.", + "type": "string" + }, + "expression": { + "description": "Textual representation of an expression in Common Expression Language syntax.\n\nThe application context of the containing message determines which well-known feature set of CEL is supported.", + "type": "string" + }, + "location": { + "description": "An optional string indicating the location of the expression for error reporting, e.g. a file name and a position in the file.", + "type": "string" + }, + "title": { + "description": "An optional title for the expression, i.e. a short string describing its purpose. This can be used e.g. in UIs which allow to enter the expression.", + "type": "string" + } + }, + "type": "object" + }, + "ImportFile": { + "description": "", + "id": "ImportFile", + "properties": { + "content": { + "description": "The contents of the file.", + "type": "string" + }, + "name": { + "description": "The name of the file.", + "type": "string" + } + }, + "type": "object" + }, + "LogConfig": { + "description": "Specifies what kind of log the caller must write", + "id": "LogConfig", + "properties": { + "cloudAudit": { + "$ref": "LogConfigCloudAuditOptions", + "description": "Cloud audit options." + }, + "counter": { + "$ref": "LogConfigCounterOptions", + "description": "Counter options." + }, + "dataAccess": { + "$ref": "LogConfigDataAccessOptions", + "description": "Data access options." + } + }, + "type": "object" + }, + "LogConfigCloudAuditOptions": { + "description": "Write a Cloud Audit log", + "id": "LogConfigCloudAuditOptions", + "properties": { + "authorizationLoggingOptions": { + "$ref": "AuthorizationLoggingOptions", + "description": "Information used by the Cloud Audit Logging pipeline." + }, + "logName": { + "description": "The log_name to populate in the Cloud Audit Record.", + "type": "string" + } + }, + "type": "object" + }, + "LogConfigCounterOptions": { + "description": "Increment a streamz counter with the specified metric and field names.\n\nMetric names should start with a '/', generally be lowercase-only, and end in \"_count\". Field names should not contain an initial slash. The actual exported metric names will have \"/iam/policy\" prepended.\n\nField names correspond to IAM request parameters and field values are their respective values.\n\nAt present the only supported field names are - \"iam_principal\", corresponding to IAMContext.principal; - \"\" (empty string), resulting in one aggretated counter with no field.\n\nExamples: counter { metric: \"/debug_access_count\" field: \"iam_principal\" } ==\u003e increment counter /iam/policy/backend_debug_access_count {iam_principal=[value of IAMContext.principal]}\n\nAt this time we do not support: * multiple field names (though this may be supported in the future) * decrementing the counter * incrementing it by anything other than 1", + "id": "LogConfigCounterOptions", + "properties": { + "field": { + "description": "The field value to attribute.", + "type": "string" + }, + "metric": { + "description": "The metric to update.", + "type": "string" + } + }, + "type": "object" + }, + "LogConfigDataAccessOptions": { + "description": "Write a Data Access (Gin) log", + "id": "LogConfigDataAccessOptions", + "properties": { + "logMode": { + "description": "Whether Gin logging should happen in a fail-closed manner at the caller. This is relevant only in the LocalIAM implementation, for now.", + "type": "string" + } + }, + "type": "object" + }, + "Manifest": { + "description": "", + "id": "Manifest", + "properties": { + "config": { + "$ref": "ConfigFile", + "description": "Output only. The YAML configuration for this manifest." + }, + "expandedConfig": { + "description": "Output only. The fully-expanded configuration file, including any templates and references.", + "type": "string" + }, + "id": { + "description": "Output only. Unique identifier for the resource; defined by the server.", + "format": "uint64", + "type": "string" + }, + "imports": { + "description": "Output only. The imported files for this manifest.", + "items": { + "$ref": "ImportFile" + }, + "type": "array" + }, + "insertTime": { + "description": "Output only. Timestamp when the manifest was created, in RFC3339 text format.", + "type": "string" + }, + "layout": { + "description": "Output only. The YAML layout for this manifest.", + "type": "string" + }, + "name": { + "description": "Output only.\n\nThe name of the manifest.", + "type": "string" + }, + "selfLink": { + "description": "Output only. Self link for the manifest.", + "type": "string" + } + }, + "type": "object" + }, + "ManifestsListResponse": { + "description": "A response containing a partial list of manifests and a page token used to build the next request if the request has been truncated.", + "id": "ManifestsListResponse", + "properties": { + "manifests": { + "description": "Output only. Manifests contained in this list response.", + "items": { + "$ref": "Manifest" + }, + "type": "array" + }, + "nextPageToken": { + "description": "Output only. A token used to continue a truncated list request.", + "type": "string" + } + }, + "type": "object" + }, + "Operation": { + "description": "An Operation resource, used to manage asynchronous API requests. (== resource_for v1.globalOperations ==) (== resource_for beta.globalOperations ==) (== resource_for v1.regionOperations ==) (== resource_for beta.regionOperations ==) (== resource_for v1.zoneOperations ==) (== resource_for beta.zoneOperations ==)", + "id": "Operation", + "properties": { + "clientOperationId": { + "description": "[Output Only] Reserved for future use.", + "type": "string" + }, + "creationTimestamp": { + "description": "[Deprecated] This field is deprecated.", + "type": "string" + }, + "description": { + "description": "[Output Only] A textual description of the operation, which is set when the operation is created.", + "type": "string" + }, + "endTime": { + "description": "[Output Only] The time that this operation was completed. This value is in RFC3339 text format.", + "type": "string" + }, + "error": { + "description": "[Output Only] If errors are generated during processing of the operation, this field will be populated.", + "properties": { + "errors": { + "description": "[Output Only] The array of errors encountered while processing this operation.", + "items": { + "properties": { + "code": { + "description": "[Output Only] The error type identifier for this error.", + "type": "string" + }, + "location": { + "description": "[Output Only] Indicates the field in the request that caused the error. This property is optional.", + "type": "string" + }, + "message": { + "description": "[Output Only] An optional, human-readable error message.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + } + }, + "type": "object" + }, + "httpErrorMessage": { + "description": "[Output Only] If the operation fails, this field contains the HTTP error message that was returned, such as NOT FOUND.", + "type": "string" + }, + "httpErrorStatusCode": { + "description": "[Output Only] If the operation fails, this field contains the HTTP error status code that was returned. For example, a 404 means the resource was not found.", + "format": "int32", + "type": "integer" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64", + "type": "string" + }, + "insertTime": { + "description": "[Output Only] The time that this operation was requested. This value is in RFC3339 text format.", + "type": "string" + }, + "kind": { + "default": "deploymentmanager#operation", + "description": "[Output Only] Type of the resource. Always compute#operation for Operation resources.", + "type": "string" + }, + "name": { + "description": "[Output Only] Name of the resource.", + "type": "string" + }, + "operationType": { + "description": "[Output Only] The type of operation, such as insert, update, or delete, and so on.", + "type": "string" + }, + "progress": { + "description": "[Output Only] An optional progress indicator that ranges from 0 to 100. There is no requirement that this be linear or support any granularity of operations. This should not be used to guess when the operation will be complete. This number should monotonically increase as the operation progresses.", + "format": "int32", + "type": "integer" + }, + "region": { + "description": "[Output Only] The URL of the region where the operation resides. Only available when performing regional operations. You must specify this field as part of the HTTP request URL. It is not settable as a field in the request body.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + }, + "startTime": { + "description": "[Output Only] The time that this operation was started by the server. This value is in RFC3339 text format.", + "type": "string" + }, + "status": { + "description": "[Output Only] The status of the operation, which can be one of the following: PENDING, RUNNING, or DONE.", + "type": "string" + }, + "statusMessage": { + "description": "[Output Only] An optional textual description of the current status of the operation.", + "type": "string" + }, + "targetId": { + "description": "[Output Only] The unique target ID, which identifies a specific incarnation of the target resource.", + "format": "uint64", + "type": "string" + }, + "targetLink": { + "description": "[Output Only] The URL of the resource that the operation modifies. For operations related to creating a snapshot, this points to the persistent disk that the snapshot was created from.", + "type": "string" + }, + "user": { + "description": "[Output Only] User who requested the operation, for example: user@example.com.", + "type": "string" + }, + "warnings": { + "description": "[Output Only] If warning messages are generated during processing of the operation, this field will be populated.", + "items": { + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "zone": { + "description": "[Output Only] The URL of the zone where the operation resides. Only available when performing per-zone operations. You must specify this field as part of the HTTP request URL. It is not settable as a field in the request body.", + "type": "string" + } + }, + "type": "object" + }, + "OperationsListResponse": { + "description": "A response containing a partial list of operations and a page token used to build the next request if the request has been truncated.", + "id": "OperationsListResponse", + "properties": { + "nextPageToken": { + "description": "Output only. A token used to continue a truncated list request.", + "type": "string" + }, + "operations": { + "description": "Output only. Operations contained in this list response.", + "items": { + "$ref": "Operation" + }, + "type": "array" + } + }, + "type": "object" + }, + "Policy": { + "description": "Defines an Identity and Access Management (IAM) policy. It is used to specify access control policies for Cloud Platform resources.\n\n\n\nA `Policy` consists of a list of `bindings`. A `Binding` binds a list of `members` to a `role`, where the members can be user accounts, Google groups, Google domains, and service accounts. A `role` is a named list of permissions defined by IAM.\n\n**Example**\n\n{ \"bindings\": [ { \"role\": \"roles/owner\", \"members\": [ \"user:mike@example.com\", \"group:admins@example.com\", \"domain:google.com\", \"serviceAccount:my-other-app@appspot.gserviceaccount.com\", ] }, { \"role\": \"roles/viewer\", \"members\": [\"user:sean@example.com\"] } ] }\n\nFor a description of IAM and its features, see the [IAM developer's guide](https://cloud.google.com/iam/docs).", + "id": "Policy", + "properties": { + "auditConfigs": { + "description": "Specifies cloud audit logging configuration for this policy.", + "items": { + "$ref": "AuditConfig" + }, + "type": "array" + }, + "bindings": { + "description": "Associates a list of `members` to a `role`. `bindings` with no members will result in an error.", + "items": { + "$ref": "Binding" + }, + "type": "array" + }, + "etag": { + "description": "`etag` is used for optimistic concurrency control as a way to help prevent simultaneous updates of a policy from overwriting each other. It is strongly suggested that systems make use of the `etag` in the read-modify-write cycle to perform policy updates in order to avoid race conditions: An `etag` is returned in the response to `getIamPolicy`, and systems are expected to put that etag in the request to `setIamPolicy` to ensure that their change will be applied to the same version of the policy.\n\nIf no `etag` is provided in the call to `setIamPolicy`, then the existing policy is overwritten blindly.", + "format": "byte", + "type": "string" + }, + "iamOwned": { + "description": "", + "type": "boolean" + }, + "rules": { + "description": "If more than one rule is specified, the rules are applied in the following manner: - All matching LOG rules are always applied. - If any DENY/DENY_WITH_LOG rule matches, permission is denied. Logging will be applied if one or more matching rule requires logging. - Otherwise, if any ALLOW/ALLOW_WITH_LOG rule matches, permission is granted. Logging will be applied if one or more matching rule requires logging. - Otherwise, if no rule applies, permission is denied.", + "items": { + "$ref": "Rule" + }, + "type": "array" + }, + "version": { + "description": "Deprecated.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "Resource": { + "description": "", + "id": "Resource", + "properties": { + "accessControl": { + "$ref": "ResourceAccessControl", + "description": "The Access Control Policy set on this resource." + }, + "finalProperties": { + "description": "Output only. The evaluated properties of the resource with references expanded. Returned as serialized YAML.", + "type": "string" + }, + "id": { + "description": "Output only. Unique identifier for the resource; defined by the server.", + "format": "uint64", + "type": "string" + }, + "insertTime": { + "description": "Output only. Timestamp when the resource was created or acquired, in RFC3339 text format .", + "type": "string" + }, + "manifest": { + "description": "Output only. URL of the manifest representing the current configuration of this resource.", + "type": "string" + }, + "name": { + "description": "Output only. The name of the resource as it appears in the YAML config.", + "type": "string" + }, + "properties": { + "description": "Output only. The current properties of the resource before any references have been filled in. Returned as serialized YAML.", + "type": "string" + }, + "type": { + "description": "Output only. The type of the resource, for example compute.v1.instance, or cloudfunctions.v1beta1.function.", + "type": "string" + }, + "update": { + "$ref": "ResourceUpdate", + "description": "Output only. If Deployment Manager is currently updating or previewing an update to this resource, the updated configuration appears here." + }, + "updateTime": { + "description": "Output only. Timestamp when the resource was updated, in RFC3339 text format .", + "type": "string" + }, + "url": { + "description": "Output only. The URL of the actual resource.", + "type": "string" + }, + "warnings": { + "description": "Output only. If warning messages are generated during processing of this resource, this field will be populated.", + "items": { + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + } + }, + "type": "object" + }, + "ResourceAccessControl": { + "description": "The access controls set on the resource.", + "id": "ResourceAccessControl", + "properties": { + "gcpIamPolicy": { + "description": "The GCP IAM Policy to set on the resource.", + "type": "string" + } + }, + "type": "object" + }, + "ResourceUpdate": { + "description": "", + "id": "ResourceUpdate", + "properties": { + "accessControl": { + "$ref": "ResourceAccessControl", + "description": "The Access Control Policy to set on this resource after updating the resource itself." + }, + "error": { + "description": "Output only. If errors are generated during update of the resource, this field will be populated.", + "properties": { + "errors": { + "description": "[Output Only] The array of errors encountered while processing this operation.", + "items": { + "properties": { + "code": { + "description": "[Output Only] The error type identifier for this error.", + "type": "string" + }, + "location": { + "description": "[Output Only] Indicates the field in the request that caused the error. This property is optional.", + "type": "string" + }, + "message": { + "description": "[Output Only] An optional, human-readable error message.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + } + }, + "type": "object" + }, + "finalProperties": { + "description": "Output only. The expanded properties of the resource with reference values expanded. Returned as serialized YAML.", + "type": "string" + }, + "intent": { + "description": "Output only. The intent of the resource: PREVIEW, UPDATE, or CANCEL.", + "type": "string" + }, + "manifest": { + "description": "Output only. URL of the manifest representing the update configuration of this resource.", + "type": "string" + }, + "properties": { + "description": "Output only. The set of updated properties for this resource, before references are expanded. Returned as serialized YAML.", + "type": "string" + }, + "state": { + "description": "Output only. The state of the resource.", + "type": "string" + }, + "warnings": { + "description": "Output only. If warning messages are generated during processing of this resource, this field will be populated.", + "items": { + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + } + }, + "type": "object" + }, + "ResourcesListResponse": { + "description": "A response containing a partial list of resources and a page token used to build the next request if the request has been truncated.", + "id": "ResourcesListResponse", + "properties": { + "nextPageToken": { + "description": "A token used to continue a truncated list request.", + "type": "string" + }, + "resources": { + "description": "Resources contained in this list response.", + "items": { + "$ref": "Resource" + }, + "type": "array" + } + }, + "type": "object" + }, + "Rule": { + "description": "A rule to be applied in a Policy.", + "id": "Rule", + "properties": { + "action": { + "description": "Required", + "type": "string" + }, + "conditions": { + "description": "Additional restrictions that must be met. All conditions must pass for the rule to match.", + "items": { + "$ref": "Condition" + }, + "type": "array" + }, + "description": { + "description": "Human-readable description of the rule.", + "type": "string" + }, + "ins": { + "description": "If one or more 'in' clauses are specified, the rule matches if the PRINCIPAL/AUTHORITY_SELECTOR is in at least one of these entries.", + "items": { + "type": "string" + }, + "type": "array" + }, + "logConfigs": { + "description": "The config returned to callers of tech.iam.IAM.CheckPolicy for any entries that match the LOG action.", + "items": { + "$ref": "LogConfig" + }, + "type": "array" + }, + "notIns": { + "description": "If one or more 'not_in' clauses are specified, the rule matches if the PRINCIPAL/AUTHORITY_SELECTOR is in none of the entries.", + "items": { + "type": "string" + }, + "type": "array" + }, + "permissions": { + "description": "A permission is a string of form '..' (e.g., 'storage.buckets.list'). A value of '*' matches all permissions, and a verb part of '*' (e.g., 'storage.buckets.*') matches all verbs.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "TargetConfiguration": { + "description": "", + "id": "TargetConfiguration", + "properties": { + "config": { + "$ref": "ConfigFile", + "description": "The configuration to use for this deployment." + }, + "imports": { + "description": "Specifies any files to import for this configuration. This can be used to import templates or other files. For example, you might import a text file in order to use the file in a template.", + "items": { + "$ref": "ImportFile" + }, + "type": "array" + } + }, + "type": "object" + }, + "TestPermissionsRequest": { + "id": "TestPermissionsRequest", + "properties": { + "permissions": { + "description": "The set of permissions to check for the 'resource'. Permissions with wildcards (such as '*' or 'storage.*') are not allowed.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "TestPermissionsResponse": { + "id": "TestPermissionsResponse", + "properties": { + "permissions": { + "description": "A subset of `TestPermissionsRequest.permissions` that the caller is allowed.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "Type": { + "description": "A resource type supported by Deployment Manager.", + "id": "Type", + "properties": { + "id": { + "description": "Output only. Unique identifier for the resource; defined by the server.", + "format": "uint64", + "type": "string" + }, + "insertTime": { + "description": "Output only. Timestamp when the type was created, in RFC3339 text format.", + "type": "string" + }, + "name": { + "description": "Name of the type.", + "type": "string" + }, + "operation": { + "$ref": "Operation", + "description": "Output only. The Operation that most recently ran, or is currently running, on this type." + }, + "selfLink": { + "description": "Output only. Self link for the type.", + "type": "string" + } + }, + "type": "object" + }, + "TypesListResponse": { + "description": "A response that returns all Types supported by Deployment Manager", + "id": "TypesListResponse", + "properties": { + "nextPageToken": { + "description": "A token used to continue a truncated list request.", + "type": "string" + }, + "types": { + "description": "Output only. A list of resource types supported by Deployment Manager.", + "items": { + "$ref": "Type" + }, + "type": "array" + } + }, + "type": "object" } - } }, - "types": { - "methods": { - "list": { - "id": "deploymentmanager.types.list", - "path": "{project}/global/types", - "httpMethod": "GET", - "description": "Lists all resource types for Deployment Manager.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "The project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "TypesListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/ndev.cloudman", - "https://www.googleapis.com/auth/ndev.cloudman.readonly" - ] - } - } - } - } -} + "servicePath": "deploymentmanager/v2/projects/", + "title": "Google Cloud Deployment Manager API", + "version": "v2" +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/deploymentmanager/v2/deploymentmanager-gen.go b/vendor/google.golang.org/api/deploymentmanager/v2/deploymentmanager-gen.go index 1c6b482fa..b96d4b5a0 100644 --- a/vendor/google.golang.org/api/deploymentmanager/v2/deploymentmanager-gen.go +++ b/vendor/google.golang.org/api/deploymentmanager/v2/deploymentmanager-gen.go @@ -151,7 +151,7 @@ type TypesService struct { // If there are AuditConfigs for both `allServices` and a specific // service, the union of the two AuditConfigs is used for that service: // the log_types specified in each AuditConfig are enabled, and the -// exempted_members in each AuditConfig are exempted. +// exempted_members in each AuditLogConfig are exempted. // // Example Policy with multiple AuditConfigs: // @@ -279,7 +279,8 @@ type Binding struct { // Condition: The condition that is associated with this binding. NOTE: // an unsatisfied condition will not allow user access via current // binding. Different bindings, including their conditions, are examined - // independently. This field is GOOGLE_INTERNAL. + // independently. This field is only visible as GOOGLE_INTERNAL or + // CONDITION_TRUSTED_TESTER. Condition *Expr `json:"condition,omitempty"` // Members: Specifies the identities requesting access for a Cloud @@ -1092,7 +1093,9 @@ type Operation struct { Progress int64 `json:"progress,omitempty"` // Region: [Output Only] The URL of the region where the operation - // resides. Only available when performing regional operations. + // resides. Only available when performing regional operations. You must + // specify this field as part of the HTTP request URL. It is not + // settable as a field in the request body. Region string `json:"region,omitempty"` // SelfLink: [Output Only] Server-defined URL for the resource. @@ -1128,7 +1131,9 @@ type Operation struct { Warnings []*OperationWarnings `json:"warnings,omitempty"` // Zone: [Output Only] The URL of the zone where the operation resides. - // Only available when performing per-zone operations. + // Only available when performing per-zone operations. You must specify + // this field as part of the HTTP request URL. It is not settable as a + // field in the request body. Zone string `json:"zone,omitempty"` // ServerResponse contains the HTTP response code and headers from the @@ -1357,7 +1362,7 @@ func (s *OperationsListResponse) MarshalJSON() ([]byte, error) { // } // // For a description of IAM and its features, see the [IAM developer's -// guide](https://cloud.google.com/iam). +// guide](https://cloud.google.com/iam/docs). type Policy struct { // AuditConfigs: Specifies cloud audit logging configuration for this // policy. @@ -1392,7 +1397,7 @@ type Policy struct { // denied. Rules []*Rule `json:"rules,omitempty"` - // Version: Version of the `Policy`. The default version is 0. + // Version: Deprecated. Version int64 `json:"version,omitempty"` // ServerResponse contains the HTTP response code and headers from the @@ -2344,7 +2349,6 @@ func (c *DeploymentsDeleteCall) Do(opts ...googleapi.CallOption) (*Operation, er // "deployment": { // "description": "The name of the deployment for this request.", // "location": "path", - // "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", // "required": true, // "type": "string" // }, @@ -2691,6 +2695,17 @@ func (r *DeploymentsService) Insert(project string, deployment *Deployment) *Dep return c } +// CreatePolicy sets the optional parameter "createPolicy": Sets the +// policy to use for creating new resources. +// +// Possible values: +// "ACQUIRE" +// "CREATE_OR_ACQUIRE" (default) +func (c *DeploymentsInsertCall) CreatePolicy(createPolicy string) *DeploymentsInsertCall { + c.urlParams_.Set("createPolicy", createPolicy) + return c +} + // Preview sets the optional parameter "preview": If set to true, // creates a deployment and creates "shell" resources but does not // actually instantiate these resources. This allows you to preview what @@ -2798,6 +2813,20 @@ func (c *DeploymentsInsertCall) Do(opts ...googleapi.CallOption) (*Operation, er // "project" // ], // "parameters": { + // "createPolicy": { + // "default": "CREATE_OR_ACQUIRE", + // "description": "Sets the policy to use for creating new resources.", + // "enum": [ + // "ACQUIRE", + // "CREATE_OR_ACQUIRE" + // ], + // "enumDescriptions": [ + // "", + // "" + // ], + // "location": "query", + // "type": "string" + // }, // "preview": { // "description": "If set to true, creates a deployment and creates \"shell\" resources but does not actually instantiate these resources. This allows you to preview what your deployment looks like. After previewing a deployment, you can deploy your resources by making a request with the update() method or you can use the cancelPreview() method to cancel the preview altogether. Note that the deployment will still exist after you cancel the preview and you must separately delete this deployment if you want to remove it.", // "location": "query", @@ -2844,32 +2873,28 @@ func (r *DeploymentsService) List(project string) *DeploymentsListCall { return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *DeploymentsListCall) Filter(filter string) *DeploymentsListCall { c.urlParams_.Set("filter", filter) return c @@ -3013,7 +3038,7 @@ func (c *DeploymentsListCall) Do(opts ...googleapi.CallOption) (*DeploymentsList // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -4141,32 +4166,28 @@ func (r *ManifestsService) List(project string, deployment string) *ManifestsLis return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *ManifestsListCall) Filter(filter string) *ManifestsListCall { c.urlParams_.Set("filter", filter) return c @@ -4319,7 +4340,7 @@ func (c *ManifestsListCall) Do(opts ...googleapi.CallOption) (*ManifestsListResp // "type": "string" // }, // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -4553,32 +4574,28 @@ func (r *OperationsService) List(project string) *OperationsListCall { return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *OperationsListCall) Filter(filter string) *OperationsListCall { c.urlParams_.Set("filter", filter) return c @@ -4722,7 +4739,7 @@ func (c *OperationsListCall) Do(opts ...googleapi.CallOption) (*OperationsListRe // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -4969,32 +4986,28 @@ func (r *ResourcesService) List(project string, deployment string) *ResourcesLis return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *ResourcesListCall) Filter(filter string) *ResourcesListCall { c.urlParams_.Set("filter", filter) return c @@ -5147,7 +5160,7 @@ func (c *ResourcesListCall) Do(opts ...googleapi.CallOption) (*ResourcesListResp // "type": "string" // }, // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -5230,32 +5243,28 @@ func (r *TypesService) List(project string) *TypesListCall { return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *TypesListCall) Filter(filter string) *TypesListCall { c.urlParams_.Set("filter", filter) return c @@ -5399,7 +5408,7 @@ func (c *TypesListCall) Do(opts ...googleapi.CallOption) (*TypesListResponse, er // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, diff --git a/vendor/google.golang.org/api/deploymentmanager/v2beta/deploymentmanager-api.json b/vendor/google.golang.org/api/deploymentmanager/v2beta/deploymentmanager-api.json index ad0d27510..df2169872 100644 --- a/vendor/google.golang.org/api/deploymentmanager/v2beta/deploymentmanager-api.json +++ b/vendor/google.golang.org/api/deploymentmanager/v2beta/deploymentmanager-api.json @@ -1,2895 +1,2981 @@ { - "kind": "discovery#restDescription", - "etag": "\"YWOzh2SDasdU84ArJnpYek-OMdg/Os0QttejTkDUy1hcIScN6tyVIbQ\"", - "discoveryVersion": "v1", - "id": "deploymentmanager:v2beta", - "name": "deploymentmanager", - "canonicalName": "Deployment Manager V2Beta", - "version": "v2beta", - "revision": "20171201", - "title": "Google Cloud Deployment Manager API V2Beta Methods", - "description": "The Deployment Manager API allows users to declaratively configure, deploy and run complex solutions on the Google Cloud Platform.", - "ownerDomain": "google.com", - "ownerName": "Google", - "icons": { - "x16": "https://www.gstatic.com/images/branding/product/1x/googleg_16dp.png", - "x32": "https://www.gstatic.com/images/branding/product/1x/googleg_32dp.png" - }, - "documentationLink": "https://developers.google.com/deployment-manager/", - "protocol": "rest", - "baseUrl": "https://www.googleapis.com/deploymentmanager/v2beta/projects/", - "basePath": "/deploymentmanager/v2beta/projects/", - "rootUrl": "https://www.googleapis.com/", - "servicePath": "deploymentmanager/v2beta/projects/", - "batchPath": "batch/deploymentmanager/v2beta", - "parameters": { - "alt": { - "type": "string", - "description": "Data format for the response.", - "default": "json", - "enum": [ - "json" - ], - "enumDescriptions": [ - "Responses with Content-Type of application/json" - ], - "location": "query" - }, - "fields": { - "type": "string", - "description": "Selector specifying which fields to include in a partial response.", - "location": "query" - }, - "key": { - "type": "string", - "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" - }, - "oauth_token": { - "type": "string", - "description": "OAuth 2.0 token for the current user.", - "location": "query" - }, - "prettyPrint": { - "type": "boolean", - "description": "Returns response with indentations and line breaks.", - "default": "true", - "location": "query" - }, - "quotaUser": { - "type": "string", - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", - "location": "query" - }, - "userIp": { - "type": "string", - "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", - "location": "query" - } - }, - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/cloud-platform": { - "description": "View and manage your data across Google Cloud Platform services" - }, - "https://www.googleapis.com/auth/cloud-platform.read-only": { - "description": "View your data across Google Cloud Platform services" - }, - "https://www.googleapis.com/auth/ndev.cloudman": { - "description": "View and manage your Google Cloud Platform management resources and deployment status information" - }, - "https://www.googleapis.com/auth/ndev.cloudman.readonly": { - "description": "View your Google Cloud Platform management resources and deployment status information" + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/cloud-platform": { + "description": "View and manage your data across Google Cloud Platform services" + }, + "https://www.googleapis.com/auth/cloud-platform.read-only": { + "description": "View your data across Google Cloud Platform services" + }, + "https://www.googleapis.com/auth/ndev.cloudman": { + "description": "View and manage your Google Cloud Platform management resources and deployment status information" + }, + "https://www.googleapis.com/auth/ndev.cloudman.readonly": { + "description": "View your Google Cloud Platform management resources and deployment status information" + } + } } - } - } - }, - "schemas": { - "AuditConfig": { - "id": "AuditConfig", - "type": "object", - "description": "Specifies the audit configuration for a service. The configuration determines which permission types are logged, and what identities, if any, are exempted from logging. An AuditConfig must have one or more AuditLogConfigs.\n\nIf there are AuditConfigs for both `allServices` and a specific service, the union of the two AuditConfigs is used for that service: the log_types specified in each AuditConfig are enabled, and the exempted_members in each AuditConfig are exempted.\n\nExample Policy with multiple AuditConfigs:\n\n{ \"audit_configs\": [ { \"service\": \"allServices\" \"audit_log_configs\": [ { \"log_type\": \"DATA_READ\", \"exempted_members\": [ \"user:foo@gmail.com\" ] }, { \"log_type\": \"DATA_WRITE\", }, { \"log_type\": \"ADMIN_READ\", } ] }, { \"service\": \"fooservice.googleapis.com\" \"audit_log_configs\": [ { \"log_type\": \"DATA_READ\", }, { \"log_type\": \"DATA_WRITE\", \"exempted_members\": [ \"user:bar@gmail.com\" ] } ] } ] }\n\nFor fooservice, this policy enables DATA_READ, DATA_WRITE and ADMIN_READ logging. It also exempts foo@gmail.com from DATA_READ logging, and bar@gmail.com from DATA_WRITE logging.", - "properties": { - "auditLogConfigs": { - "type": "array", - "description": "The configuration for logging of each type of permission.", - "items": { - "$ref": "AuditLogConfig" - } - }, - "exemptedMembers": { - "type": "array", - "description": "", - "items": { + }, + "basePath": "/deploymentmanager/v2beta/projects/", + "baseUrl": "https://www.googleapis.com/deploymentmanager/v2beta/projects/", + "batchPath": "batch/deploymentmanager/v2beta", + "canonicalName": "Deployment Manager V2Beta", + "description": "The Deployment Manager API allows users to declaratively configure, deploy and run complex solutions on the Google Cloud Platform.", + "discoveryVersion": "v1", + "documentationLink": "https://developers.google.com/deployment-manager/", + "etag": "\"-iA1DTNe4s-I6JZXPt1t1Ypy8IU/Y2xp_qL157IVoOjU4Jvc6XPGf28\"", + "icons": { + "x16": "https://www.gstatic.com/images/branding/product/1x/googleg_16dp.png", + "x32": "https://www.gstatic.com/images/branding/product/1x/googleg_32dp.png" + }, + "id": "deploymentmanager:v2beta", + "kind": "discovery#restDescription", + "name": "deploymentmanager", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "alt": { + "default": "json", + "description": "Data format for the response.", + "enum": [ + "json" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json" + ], + "location": "query", "type": "string" - } }, - "service": { - "type": "string", - "description": "Specifies a service that will be enabled for audit logging. For example, `storage.googleapis.com`, `cloudsql.googleapis.com`. `allServices` is a special value that covers all services." - } - } - }, - "AuditLogConfig": { - "id": "AuditLogConfig", - "type": "object", - "description": "Provides the configuration for logging a type of permissions. Example:\n\n{ \"audit_log_configs\": [ { \"log_type\": \"DATA_READ\", \"exempted_members\": [ \"user:foo@gmail.com\" ] }, { \"log_type\": \"DATA_WRITE\", } ] }\n\nThis enables 'DATA_READ' and 'DATA_WRITE' logging, while exempting foo@gmail.com from DATA_READ logging.", - "properties": { - "exemptedMembers": { - "type": "array", - "description": "Specifies the identities that do not cause logging for this type of permission. Follows the same format of [Binding.members][].", - "items": { + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "location": "query", "type": "string" - } }, - "logType": { - "type": "string", - "description": "The log type that this config enables." - } - } - }, - "AuthorizationLoggingOptions": { - "id": "AuthorizationLoggingOptions", - "type": "object", - "description": "Authorization-related information used by Cloud Audit Logging.", - "properties": { - "permissionType": { - "type": "string", - "description": "The type of the permission that was checked." - } - } - }, - "BaseType": { - "id": "BaseType", - "type": "object", - "description": "BaseType that describes a service-backed Type.", - "properties": { - "collectionOverrides": { - "type": "array", - "description": "Allows resource handling overrides for specific collections", - "items": { - "$ref": "CollectionOverride" - } - }, - "credential": { - "$ref": "Credential", - "description": "Credential used when interacting with this type." - }, - "descriptorUrl": { - "type": "string", - "description": "Descriptor Url for the this type." - }, - "options": { - "$ref": "Options", - "description": "Options to apply when handling any resources in this service." - } - } - }, - "BasicAuth": { - "id": "BasicAuth", - "type": "object", - "description": "Basic Auth used as a credential.", - "properties": { - "password": { - "type": "string" - }, - "user": { - "type": "string" - } - } - }, - "Binding": { - "id": "Binding", - "type": "object", - "description": "Associates `members` with a `role`.", - "properties": { - "condition": { - "$ref": "Expr", - "description": "The condition that is associated with this binding. NOTE: an unsatisfied condition will not allow user access via current binding. Different bindings, including their conditions, are examined independently. This field is GOOGLE_INTERNAL." - }, - "members": { - "type": "array", - "description": "Specifies the identities requesting access for a Cloud Platform resource. `members` can have the following values:\n\n* `allUsers`: A special identifier that represents anyone who is on the internet; with or without a Google account.\n\n* `allAuthenticatedUsers`: A special identifier that represents anyone who is authenticated with a Google account or a service account.\n\n* `user:{emailid}`: An email address that represents a specific Google account. For example, `alice@gmail.com` or `joe@example.com`.\n\n\n\n* `serviceAccount:{emailid}`: An email address that represents a service account. For example, `my-other-app@appspot.gserviceaccount.com`.\n\n* `group:{emailid}`: An email address that represents a Google group. For example, `admins@example.com`.\n\n\n\n* `domain:{domain}`: A Google Apps domain name that represents all the users of that domain. For example, `google.com` or `example.com`.", - "items": { - "type": "string" - } - }, - "role": { - "type": "string", - "description": "Role that is assigned to `members`. For example, `roles/viewer`, `roles/editor`, or `roles/owner`." - } - } - }, - "CollectionOverride": { - "id": "CollectionOverride", - "type": "object", - "description": "CollectionOverride allows resource handling overrides for specific resources within a BaseType", - "properties": { - "collection": { - "type": "string", - "description": "The collection that identifies this resource within its service." - }, - "options": { - "$ref": "Options", - "description": "The options to apply to this resource-level override" - } - } - }, - "CompositeType": { - "id": "CompositeType", - "type": "object", - "description": "Holds the composite type.", - "properties": { - "description": { - "type": "string", - "description": "An optional textual description of the resource; provided by the client when the resource is created." - }, - "id": { - "type": "string", - "description": "Output only. Unique identifier for the resource; defined by the server.", - "format": "uint64" - }, - "insertTime": { - "type": "string", - "description": "Output only. Timestamp when the composite type was created, in RFC3339 text format." - }, - "labels": { - "type": "array", - "description": "Map of labels; provided by the client when the resource is created or updated. Specifically: Label keys must be between 1 and 63 characters long and must conform to the following regular expression: [a-z]([-a-z0-9]*[a-z0-9])? Label values must be between 0 and 63 characters long and must conform to the regular expression ([a-z]([-a-z0-9]*[a-z0-9])?)?", - "items": { - "$ref": "CompositeTypeLabelEntry" - } - }, - "name": { - "type": "string", - "description": "Name of the composite type, must follow the expression: [a-z]([-a-z0-9_.]{0,61}[a-z0-9])?." - }, - "operation": { - "$ref": "Operation", - "description": "Output only. The Operation that most recently ran, or is currently running, on this composite type." - }, - "selfLink": { - "type": "string", - "description": "Output only. Self link for the type provider." - }, - "status": { - "type": "string" - }, - "templateContents": { - "$ref": "TemplateContents", - "description": "Files for the template type." - } - } - }, - "CompositeTypeLabelEntry": { - "id": "CompositeTypeLabelEntry", - "type": "object", - "properties": { "key": { - "type": "string" + "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" }, - "value": { - "type": "string" + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", + "location": "query", + "type": "string" + }, + "userIp": { + "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", + "location": "query", + "type": "string" } - } }, - "CompositeTypesListResponse": { - "id": "CompositeTypesListResponse", - "type": "object", - "description": "A response that returns all Composite Types supported by Deployment Manager", - "properties": { + "protocol": "rest", + "resources": { "compositeTypes": { - "type": "array", - "description": "Output only. A list of resource composite types supported by Deployment Manager.", - "items": { - "$ref": "CompositeType" - } - }, - "nextPageToken": { - "type": "string", - "description": "A token used to continue a truncated list request." - } - } - }, - "Condition": { - "id": "Condition", - "type": "object", - "description": "A condition to be met.", - "properties": { - "iam": { - "type": "string", - "description": "Trusted attributes supplied by the IAM system." - }, - "op": { - "type": "string", - "description": "An operator to apply the subject with." - }, - "svc": { - "type": "string", - "description": "Trusted attributes discharged by the service." - }, - "sys": { - "type": "string", - "description": "Trusted attributes supplied by any service that owns resources and uses the IAM system for access control." - }, - "value": { - "type": "string", - "description": "DEPRECATED. Use 'values' instead." - }, - "values": { - "type": "array", - "description": "The objects of the condition. This is mutually exclusive with 'value'.", - "items": { - "type": "string" - } - } - } - }, - "ConfigFile": { - "id": "ConfigFile", - "type": "object", - "description": "", - "properties": { - "content": { - "type": "string", - "description": "The contents of the file." - } - } - }, - "Credential": { - "id": "Credential", - "type": "object", - "description": "The credential used by Deployment Manager and TypeProvider. Only one of the options is permitted.", - "properties": { - "basicAuth": { - "$ref": "BasicAuth", - "description": "Basic Auth Credential, only used by TypeProvider." - }, - "serviceAccount": { - "$ref": "ServiceAccount", - "description": "Service Account Credential, only used by Deployment." - }, - "useProjectDefault": { - "type": "boolean", - "description": "Specify to use the project default credential, only supported by Deployment." - } - } - }, - "Deployment": { - "id": "Deployment", - "type": "object", - "description": "", - "properties": { - "description": { - "type": "string", - "description": "An optional user-provided description of the deployment." - }, - "fingerprint": { - "type": "string", - "description": "Provides a fingerprint to use in requests to modify a deployment, such as update(), stop(), and cancelPreview() requests. A fingerprint is a randomly generated value that must be provided with update(), stop(), and cancelPreview() requests to perform optimistic locking. This ensures optimistic concurrency so that only one request happens at a time.\n\nThe fingerprint is initially generated by Deployment Manager and changes after every request to modify data. To get the latest fingerprint value, perform a get() request to a deployment.", - "format": "byte" - }, - "id": { - "type": "string", - "description": "Output only. Unique identifier for the resource; defined by the server.", - "format": "uint64" - }, - "insertTime": { - "type": "string", - "description": "Output only. Timestamp when the deployment was created, in RFC3339 text format ." - }, - "labels": { - "type": "array", - "description": "Map of labels; provided by the client when the resource is created or updated. Specifically: Label keys must be between 1 and 63 characters long and must conform to the following regular expression: [a-z]([-a-z0-9]*[a-z0-9])? Label values must be between 0 and 63 characters long and must conform to the regular expression ([a-z]([-a-z0-9]*[a-z0-9])?)?", - "items": { - "$ref": "DeploymentLabelEntry" - } - }, - "manifest": { - "type": "string", - "description": "Output only. URL of the manifest representing the last manifest that was successfully deployed." - }, - "name": { - "type": "string", - "description": "Name of the resource; provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash." - }, - "operation": { - "$ref": "Operation", - "description": "Output only. The Operation that most recently ran, or is currently running, on this deployment." - }, - "selfLink": { - "type": "string", - "description": "Output only. Self link for the deployment." - }, - "target": { - "$ref": "TargetConfiguration", - "description": "[Input Only] The parameters that define your deployment, including the deployment configuration and relevant templates." - }, - "update": { - "$ref": "DeploymentUpdate", - "description": "Output only. If Deployment Manager is currently updating or previewing an update to this deployment, the updated configuration appears here." - } - } - }, - "DeploymentLabelEntry": { - "id": "DeploymentLabelEntry", - "type": "object", - "properties": { - "key": { - "type": "string" - }, - "value": { - "type": "string" - } - } - }, - "DeploymentUpdate": { - "id": "DeploymentUpdate", - "type": "object", - "description": "", - "properties": { - "description": { - "type": "string", - "description": "Output only. An optional user-provided description of the deployment after the current update has been applied." - }, - "labels": { - "type": "array", - "description": "Output only. Map of labels; provided by the client when the resource is created or updated. Specifically: Label keys must be between 1 and 63 characters long and must conform to the following regular expression: [a-z]([-a-z0-9]*[a-z0-9])? Label values must be between 0 and 63 characters long and must conform to the regular expression ([a-z]([-a-z0-9]*[a-z0-9])?)?", - "items": { - "$ref": "DeploymentUpdateLabelEntry" - } - }, - "manifest": { - "type": "string", - "description": "Output only. URL of the manifest representing the update configuration of this deployment." - } - } - }, - "DeploymentUpdateLabelEntry": { - "id": "DeploymentUpdateLabelEntry", - "type": "object", - "properties": { - "key": { - "type": "string" - }, - "value": { - "type": "string" - } - } - }, - "DeploymentsCancelPreviewRequest": { - "id": "DeploymentsCancelPreviewRequest", - "type": "object", - "description": "", - "properties": { - "fingerprint": { - "type": "string", - "description": "Specifies a fingerprint for cancelPreview() requests. A fingerprint is a randomly generated value that must be provided in cancelPreview() requests to perform optimistic locking. This ensures optimistic concurrency so that the deployment does not have conflicting requests (e.g. if someone attempts to make a new update request while another user attempts to cancel a preview, this would prevent one of the requests).\n\nThe fingerprint is initially generated by Deployment Manager and changes after every request to modify a deployment. To get the latest fingerprint value, perform a get() request on the deployment.", - "format": "byte" - } - } - }, - "DeploymentsListResponse": { - "id": "DeploymentsListResponse", - "type": "object", - "description": "A response containing a partial list of deployments and a page token used to build the next request if the request has been truncated.", - "properties": { - "deployments": { - "type": "array", - "description": "Output only. The deployments contained in this response.", - "items": { - "$ref": "Deployment" - } - }, - "nextPageToken": { - "type": "string", - "description": "Output only. A token used to continue a truncated list request." - } - } - }, - "DeploymentsStopRequest": { - "id": "DeploymentsStopRequest", - "type": "object", - "description": "", - "properties": { - "fingerprint": { - "type": "string", - "description": "Specifies a fingerprint for stop() requests. A fingerprint is a randomly generated value that must be provided in stop() requests to perform optimistic locking. This ensures optimistic concurrency so that the deployment does not have conflicting requests (e.g. if someone attempts to make a new update request while another user attempts to stop an ongoing update request, this would prevent a collision).\n\nThe fingerprint is initially generated by Deployment Manager and changes after every request to modify a deployment. To get the latest fingerprint value, perform a get() request on the deployment.", - "format": "byte" - } - } - }, - "Expr": { - "id": "Expr", - "type": "object", - "description": "Represents an expression text. Example:\n\ntitle: \"User account presence\" description: \"Determines whether the request has a user account\" expression: \"size(request.user) \u003e 0\"", - "properties": { - "description": { - "type": "string", - "description": "An optional description of the expression. This is a longer text which describes the expression, e.g. when hovered over it in a UI." - }, - "expression": { - "type": "string", - "description": "Textual representation of an expression in Common Expression Language syntax.\n\nThe application context of the containing message determines which well-known feature set of CEL is supported." - }, - "location": { - "type": "string", - "description": "An optional string indicating the location of the expression for error reporting, e.g. a file name and a position in the file." - }, - "title": { - "type": "string", - "description": "An optional title for the expression, i.e. a short string describing its purpose. This can be used e.g. in UIs which allow to enter the expression." - } - } - }, - "ImportFile": { - "id": "ImportFile", - "type": "object", - "description": "", - "properties": { - "content": { - "type": "string", - "description": "The contents of the file." - }, - "name": { - "type": "string", - "description": "The name of the file." - } - } - }, - "InputMapping": { - "id": "InputMapping", - "type": "object", - "description": "InputMapping creates a 'virtual' property that will be injected into the properties before sending the request to the underlying API.", - "properties": { - "fieldName": { - "type": "string", - "description": "The name of the field that is going to be injected." - }, - "location": { - "type": "string", - "description": "The location where this mapping applies." - }, - "methodMatch": { - "type": "string", - "description": "Regex to evaluate on method to decide if input applies." - }, - "value": { - "type": "string", - "description": "A jsonPath expression to select an element." - } - } - }, - "LogConfig": { - "id": "LogConfig", - "type": "object", - "description": "Specifies what kind of log the caller must write", - "properties": { - "cloudAudit": { - "$ref": "LogConfigCloudAuditOptions", - "description": "Cloud audit options." - }, - "counter": { - "$ref": "LogConfigCounterOptions", - "description": "Counter options." - }, - "dataAccess": { - "$ref": "LogConfigDataAccessOptions", - "description": "Data access options." - } - } - }, - "LogConfigCloudAuditOptions": { - "id": "LogConfigCloudAuditOptions", - "type": "object", - "description": "Write a Cloud Audit log", - "properties": { - "authorizationLoggingOptions": { - "$ref": "AuthorizationLoggingOptions", - "description": "Information used by the Cloud Audit Logging pipeline." - }, - "logName": { - "type": "string", - "description": "The log_name to populate in the Cloud Audit Record." - } - } - }, - "LogConfigCounterOptions": { - "id": "LogConfigCounterOptions", - "type": "object", - "description": "Increment a streamz counter with the specified metric and field names.\n\nMetric names should start with a '/', generally be lowercase-only, and end in \"_count\". Field names should not contain an initial slash. The actual exported metric names will have \"/iam/policy\" prepended.\n\nField names correspond to IAM request parameters and field values are their respective values.\n\nAt present the only supported field names are - \"iam_principal\", corresponding to IAMContext.principal; - \"\" (empty string), resulting in one aggretated counter with no field.\n\nExamples: counter { metric: \"/debug_access_count\" field: \"iam_principal\" } ==\u003e increment counter /iam/policy/backend_debug_access_count {iam_principal=[value of IAMContext.principal]}\n\nAt this time we do not support: * multiple field names (though this may be supported in the future) * decrementing the counter * incrementing it by anything other than 1", - "properties": { - "field": { - "type": "string", - "description": "The field value to attribute." - }, - "metric": { - "type": "string", - "description": "The metric to update." - } - } - }, - "LogConfigDataAccessOptions": { - "id": "LogConfigDataAccessOptions", - "type": "object", - "description": "Write a Data Access (Gin) log", - "properties": { - "logMode": { - "type": "string", - "description": "Whether Gin logging should happen in a fail-closed manner at the caller. This is relevant only in the LocalIAM implementation, for now." - } - } - }, - "Manifest": { - "id": "Manifest", - "type": "object", - "description": "", - "properties": { - "config": { - "$ref": "ConfigFile", - "description": "Output only. The YAML configuration for this manifest." - }, - "expandedConfig": { - "type": "string", - "description": "Output only. The fully-expanded configuration file, including any templates and references." - }, - "id": { - "type": "string", - "description": "Output only. Unique identifier for the resource; defined by the server.", - "format": "uint64" - }, - "imports": { - "type": "array", - "description": "Output only. The imported files for this manifest.", - "items": { - "$ref": "ImportFile" - } - }, - "insertTime": { - "type": "string", - "description": "Output only. Timestamp when the manifest was created, in RFC3339 text format." - }, - "layout": { - "type": "string", - "description": "Output only. The YAML layout for this manifest." - }, - "name": { - "type": "string", - "description": "Output only.\n\nThe name of the manifest." - }, - "selfLink": { - "type": "string", - "description": "Output only. Self link for the manifest." - } - } - }, - "ManifestsListResponse": { - "id": "ManifestsListResponse", - "type": "object", - "description": "A response containing a partial list of manifests and a page token used to build the next request if the request has been truncated.", - "properties": { - "manifests": { - "type": "array", - "description": "Output only. Manifests contained in this list response.", - "items": { - "$ref": "Manifest" - } - }, - "nextPageToken": { - "type": "string", - "description": "Output only. A token used to continue a truncated list request." - } - } - }, - "Operation": { - "id": "Operation", - "type": "object", - "description": "An Operation resource, used to manage asynchronous API requests. (== resource_for v1.globalOperations ==) (== resource_for beta.globalOperations ==) (== resource_for v1.regionOperations ==) (== resource_for beta.regionOperations ==) (== resource_for v1.zoneOperations ==) (== resource_for beta.zoneOperations ==)", - "properties": { - "clientOperationId": { - "type": "string", - "description": "[Output Only] Reserved for future use." - }, - "creationTimestamp": { - "type": "string", - "description": "[Deprecated] This field is deprecated." - }, - "description": { - "type": "string", - "description": "[Output Only] A textual description of the operation, which is set when the operation is created." - }, - "endTime": { - "type": "string", - "description": "[Output Only] The time that this operation was completed. This value is in RFC3339 text format." - }, - "error": { - "type": "object", - "description": "[Output Only] If errors are generated during processing of the operation, this field will be populated.", - "properties": { - "errors": { - "type": "array", - "description": "[Output Only] The array of errors encountered while processing this operation.", - "items": { - "type": "object", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] The error type identifier for this error." - }, - "location": { - "type": "string", - "description": "[Output Only] Indicates the field in the request that caused the error. This property is optional." - }, - "message": { - "type": "string", - "description": "[Output Only] An optional, human-readable error message." - } - } - } - } - } - }, - "httpErrorMessage": { - "type": "string", - "description": "[Output Only] If the operation fails, this field contains the HTTP error message that was returned, such as NOT FOUND." - }, - "httpErrorStatusCode": { - "type": "integer", - "description": "[Output Only] If the operation fails, this field contains the HTTP error status code that was returned. For example, a 404 means the resource was not found.", - "format": "int32" - }, - "id": { - "type": "string", - "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", - "format": "uint64" - }, - "insertTime": { - "type": "string", - "description": "[Output Only] The time that this operation was requested. This value is in RFC3339 text format." - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of the resource. Always compute#operation for Operation resources.", - "default": "deploymentmanager#operation" - }, - "name": { - "type": "string", - "description": "[Output Only] Name of the resource." - }, - "operationType": { - "type": "string", - "description": "[Output Only] The type of operation, such as insert, update, or delete, and so on." - }, - "progress": { - "type": "integer", - "description": "[Output Only] An optional progress indicator that ranges from 0 to 100. There is no requirement that this be linear or support any granularity of operations. This should not be used to guess when the operation will be complete. This number should monotonically increase as the operation progresses.", - "format": "int32" - }, - "region": { - "type": "string", - "description": "[Output Only] The URL of the region where the operation resides. Only available when performing regional operations." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined URL for the resource." - }, - "startTime": { - "type": "string", - "description": "[Output Only] The time that this operation was started by the server. This value is in RFC3339 text format." - }, - "status": { - "type": "string", - "description": "[Output Only] The status of the operation, which can be one of the following: PENDING, RUNNING, or DONE." - }, - "statusMessage": { - "type": "string", - "description": "[Output Only] An optional textual description of the current status of the operation." - }, - "targetId": { - "type": "string", - "description": "[Output Only] The unique target ID, which identifies a specific incarnation of the target resource.", - "format": "uint64" - }, - "targetLink": { - "type": "string", - "description": "[Output Only] The URL of the resource that the operation modifies. For operations related to creating a snapshot, this points to the persistent disk that the snapshot was created from." - }, - "user": { - "type": "string", - "description": "[Output Only] User who requested the operation, for example: user@example.com." - }, - "warnings": { - "type": "array", - "description": "[Output Only] If warning messages are generated during processing of the operation, this field will be populated.", - "items": { - "type": "object", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response." - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." + "methods": { + "delete": { + "description": "Deletes a composite type.", + "httpMethod": "DELETE", + "id": "deploymentmanager.compositeTypes.delete", + "parameterOrder": [ + "project", + "compositeType" + ], + "parameters": { + "compositeType": { + "description": "The name of the type for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9_.]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "The project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } + "path": "{project}/global/compositeTypes/{compositeType}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/ndev.cloudman" + ] + }, + "get": { + "description": "Gets information about a specific composite type.", + "httpMethod": "GET", + "id": "deploymentmanager.compositeTypes.get", + "parameterOrder": [ + "project", + "compositeType" + ], + "parameters": { + "compositeType": { + "description": "The name of the composite type for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9_.]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "The project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/compositeTypes/{compositeType}", + "response": { + "$ref": "CompositeType" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/ndev.cloudman", + "https://www.googleapis.com/auth/ndev.cloudman.readonly" + ] + }, + "insert": { + "description": "Creates a composite type.", + "httpMethod": "POST", + "id": "deploymentmanager.compositeTypes.insert", + "parameterOrder": [ + "project" + ], + "parameters": { + "project": { + "description": "The project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/compositeTypes", + "request": { + "$ref": "CompositeType" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/ndev.cloudman" + ] + }, + "list": { + "description": "Lists all composite types for Deployment Manager.", + "httpMethod": "GET", + "id": "deploymentmanager.compositeTypes.list", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "The project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/compositeTypes", + "response": { + "$ref": "CompositeTypesListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/ndev.cloudman", + "https://www.googleapis.com/auth/ndev.cloudman.readonly" + ] + }, + "patch": { + "description": "Updates a composite type. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "deploymentmanager.compositeTypes.patch", + "parameterOrder": [ + "project", + "compositeType" + ], + "parameters": { + "compositeType": { + "description": "The name of the composite type for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9_.]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "The project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/compositeTypes/{compositeType}", + "request": { + "$ref": "CompositeType" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/ndev.cloudman" + ] + }, + "update": { + "description": "Updates a composite type.", + "httpMethod": "PUT", + "id": "deploymentmanager.compositeTypes.update", + "parameterOrder": [ + "project", + "compositeType" + ], + "parameters": { + "compositeType": { + "description": "The name of the composite type for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9_.]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "The project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/compositeTypes/{compositeType}", + "request": { + "$ref": "CompositeType" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/ndev.cloudman" + ] } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } } - } }, - "zone": { - "type": "string", - "description": "[Output Only] The URL of the zone where the operation resides. Only available when performing per-zone operations." - } - } - }, - "OperationsListResponse": { - "id": "OperationsListResponse", - "type": "object", - "description": "A response containing a partial list of operations and a page token used to build the next request if the request has been truncated.", - "properties": { - "nextPageToken": { - "type": "string", - "description": "Output only. A token used to continue a truncated list request." + "deployments": { + "methods": { + "cancelPreview": { + "description": "Cancels and removes the preview currently associated with the deployment.", + "httpMethod": "POST", + "id": "deploymentmanager.deployments.cancelPreview", + "parameterOrder": [ + "project", + "deployment" + ], + "parameters": { + "deployment": { + "description": "The name of the deployment for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "The project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/deployments/{deployment}/cancelPreview", + "request": { + "$ref": "DeploymentsCancelPreviewRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/ndev.cloudman" + ] + }, + "delete": { + "description": "Deletes a deployment and all of the resources in the deployment.", + "httpMethod": "DELETE", + "id": "deploymentmanager.deployments.delete", + "parameterOrder": [ + "project", + "deployment" + ], + "parameters": { + "deletePolicy": { + "default": "DELETE", + "description": "Sets the policy to use for deleting resources.", + "enum": [ + "ABANDON", + "DELETE" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + }, + "deployment": { + "description": "The name of the deployment for this request.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "The project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/deployments/{deployment}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/ndev.cloudman" + ] + }, + "get": { + "description": "Gets information about a specific deployment.", + "httpMethod": "GET", + "id": "deploymentmanager.deployments.get", + "parameterOrder": [ + "project", + "deployment" + ], + "parameters": { + "deployment": { + "description": "The name of the deployment for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "The project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/deployments/{deployment}", + "response": { + "$ref": "Deployment" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/ndev.cloudman", + "https://www.googleapis.com/auth/ndev.cloudman.readonly" + ] + }, + "getIamPolicy": { + "description": "Gets the access control policy for a resource. May be empty if no such policy or resource exists.", + "httpMethod": "GET", + "id": "deploymentmanager.deployments.getIamPolicy", + "parameterOrder": [ + "project", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "[a-z0-9](?:[-a-z0-9_]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/deployments/{resource}/getIamPolicy", + "response": { + "$ref": "Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/ndev.cloudman" + ] + }, + "insert": { + "description": "Creates a deployment and all of the resources described by the deployment manifest.", + "httpMethod": "POST", + "id": "deploymentmanager.deployments.insert", + "parameterOrder": [ + "project" + ], + "parameters": { + "createPolicy": { + "default": "CREATE_OR_ACQUIRE", + "description": "Sets the policy to use for creating new resources.", + "enum": [ + "ACQUIRE", + "CREATE", + "CREATE_OR_ACQUIRE" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "location": "query", + "type": "string" + }, + "preview": { + "description": "If set to true, creates a deployment and creates \"shell\" resources but does not actually instantiate these resources. This allows you to preview what your deployment looks like. After previewing a deployment, you can deploy your resources by making a request with the update() method or you can use the cancelPreview() method to cancel the preview altogether. Note that the deployment will still exist after you cancel the preview and you must separately delete this deployment if you want to remove it.", + "location": "query", + "type": "boolean" + }, + "project": { + "description": "The project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/deployments", + "request": { + "$ref": "Deployment" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/ndev.cloudman" + ] + }, + "list": { + "description": "Lists all deployments for a given project.", + "httpMethod": "GET", + "id": "deploymentmanager.deployments.list", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "The project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/deployments", + "response": { + "$ref": "DeploymentsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/ndev.cloudman", + "https://www.googleapis.com/auth/ndev.cloudman.readonly" + ] + }, + "patch": { + "description": "Updates a deployment and all of the resources described by the deployment manifest. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "deploymentmanager.deployments.patch", + "parameterOrder": [ + "project", + "deployment" + ], + "parameters": { + "createPolicy": { + "default": "CREATE_OR_ACQUIRE", + "description": "Sets the policy to use for creating new resources.", + "enum": [ + "ACQUIRE", + "CREATE", + "CREATE_OR_ACQUIRE" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "location": "query", + "type": "string" + }, + "deletePolicy": { + "default": "DELETE", + "description": "Sets the policy to use for deleting resources.", + "enum": [ + "ABANDON", + "DELETE" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + }, + "deployment": { + "description": "The name of the deployment for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "preview": { + "default": "false", + "description": "If set to true, updates the deployment and creates and updates the \"shell\" resources but does not actually alter or instantiate these resources. This allows you to preview what your deployment will look like. You can use this intent to preview how an update would affect your deployment. You must provide a target.config with a configuration if this is set to true. After previewing a deployment, you can deploy your resources by making a request with the update() or you can cancelPreview() to remove the preview altogether. Note that the deployment will still exist after you cancel the preview and you must separately delete this deployment if you want to remove it.", + "location": "query", + "type": "boolean" + }, + "project": { + "description": "The project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/deployments/{deployment}", + "request": { + "$ref": "Deployment" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/ndev.cloudman" + ] + }, + "setIamPolicy": { + "description": "Sets the access control policy on the specified resource. Replaces any existing policy.", + "httpMethod": "POST", + "id": "deploymentmanager.deployments.setIamPolicy", + "parameterOrder": [ + "project", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "[a-z0-9](?:[-a-z0-9_]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/deployments/{resource}/setIamPolicy", + "request": { + "$ref": "Policy" + }, + "response": { + "$ref": "Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/ndev.cloudman" + ] + }, + "stop": { + "description": "Stops an ongoing operation. This does not roll back any work that has already been completed, but prevents any new work from being started.", + "httpMethod": "POST", + "id": "deploymentmanager.deployments.stop", + "parameterOrder": [ + "project", + "deployment" + ], + "parameters": { + "deployment": { + "description": "The name of the deployment for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "The project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/deployments/{deployment}/stop", + "request": { + "$ref": "DeploymentsStopRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/ndev.cloudman" + ] + }, + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource.", + "httpMethod": "POST", + "id": "deploymentmanager.deployments.testIamPermissions", + "parameterOrder": [ + "project", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name of the resource for this request.", + "location": "path", + "pattern": "(?:[-a-z0-9_]{0,62}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/deployments/{resource}/testIamPermissions", + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/ndev.cloudman" + ] + }, + "update": { + "description": "Updates a deployment and all of the resources described by the deployment manifest.", + "httpMethod": "PUT", + "id": "deploymentmanager.deployments.update", + "parameterOrder": [ + "project", + "deployment" + ], + "parameters": { + "createPolicy": { + "default": "CREATE_OR_ACQUIRE", + "description": "Sets the policy to use for creating new resources.", + "enum": [ + "ACQUIRE", + "CREATE", + "CREATE_OR_ACQUIRE" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "location": "query", + "type": "string" + }, + "deletePolicy": { + "default": "DELETE", + "description": "Sets the policy to use for deleting resources.", + "enum": [ + "ABANDON", + "DELETE" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + }, + "deployment": { + "description": "The name of the deployment for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "preview": { + "default": "false", + "description": "If set to true, updates the deployment and creates and updates the \"shell\" resources but does not actually alter or instantiate these resources. This allows you to preview what your deployment will look like. You can use this intent to preview how an update would affect your deployment. You must provide a target.config with a configuration if this is set to true. After previewing a deployment, you can deploy your resources by making a request with the update() or you can cancelPreview() to remove the preview altogether. Note that the deployment will still exist after you cancel the preview and you must separately delete this deployment if you want to remove it.", + "location": "query", + "type": "boolean" + }, + "project": { + "description": "The project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/deployments/{deployment}", + "request": { + "$ref": "Deployment" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/ndev.cloudman" + ] + } + } + }, + "manifests": { + "methods": { + "get": { + "description": "Gets information about a specific manifest.", + "httpMethod": "GET", + "id": "deploymentmanager.manifests.get", + "parameterOrder": [ + "project", + "deployment", + "manifest" + ], + "parameters": { + "deployment": { + "description": "The name of the deployment for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "manifest": { + "description": "The name of the manifest for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "The project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/deployments/{deployment}/manifests/{manifest}", + "response": { + "$ref": "Manifest" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/ndev.cloudman", + "https://www.googleapis.com/auth/ndev.cloudman.readonly" + ] + }, + "list": { + "description": "Lists all manifests for a given deployment.", + "httpMethod": "GET", + "id": "deploymentmanager.manifests.list", + "parameterOrder": [ + "project", + "deployment" + ], + "parameters": { + "deployment": { + "description": "The name of the deployment for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "The project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/deployments/{deployment}/manifests", + "response": { + "$ref": "ManifestsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/ndev.cloudman", + "https://www.googleapis.com/auth/ndev.cloudman.readonly" + ] + } + } }, "operations": { - "type": "array", - "description": "Output only. Operations contained in this list response.", - "items": { - "$ref": "Operation" - } - } - } - }, - "Options": { - "id": "Options", - "type": "object", - "description": "Options allows customized resource handling by Deployment Manager.", - "properties": { - "inputMappings": { - "type": "array", - "description": "The mappings that apply for requests.", - "items": { - "$ref": "InputMapping" - } - }, - "validationOptions": { - "$ref": "ValidationOptions", - "description": "Options for how to validate and process properties on a resource." - }, - "virtualProperties": { - "type": "string", - "description": "Additional properties block described as a jsonSchema, these properties will never be part of the json payload, but they can be consumed by InputMappings, this must be a valid json schema draft-04. The properties specified here will be decouple in a different section. This schema will be merged to the schema validation, and properties here will be extracted From the payload and consumed explicitly by InputMappings. ex: field1: type: string field2: type: number" - } - } - }, - "Policy": { - "id": "Policy", - "type": "object", - "description": "Defines an Identity and Access Management (IAM) policy. It is used to specify access control policies for Cloud Platform resources.\n\n\n\nA `Policy` consists of a list of `bindings`. A `Binding` binds a list of `members` to a `role`, where the members can be user accounts, Google groups, Google domains, and service accounts. A `role` is a named list of permissions defined by IAM.\n\n**Example**\n\n{ \"bindings\": [ { \"role\": \"roles/owner\", \"members\": [ \"user:mike@example.com\", \"group:admins@example.com\", \"domain:google.com\", \"serviceAccount:my-other-app@appspot.gserviceaccount.com\", ] }, { \"role\": \"roles/viewer\", \"members\": [\"user:sean@example.com\"] } ] }\n\nFor a description of IAM and its features, see the [IAM developer's guide](https://cloud.google.com/iam).", - "properties": { - "auditConfigs": { - "type": "array", - "description": "Specifies cloud audit logging configuration for this policy.", - "items": { - "$ref": "AuditConfig" - } - }, - "bindings": { - "type": "array", - "description": "Associates a list of `members` to a `role`. `bindings` with no members will result in an error.", - "items": { - "$ref": "Binding" - } - }, - "etag": { - "type": "string", - "description": "`etag` is used for optimistic concurrency control as a way to help prevent simultaneous updates of a policy from overwriting each other. It is strongly suggested that systems make use of the `etag` in the read-modify-write cycle to perform policy updates in order to avoid race conditions: An `etag` is returned in the response to `getIamPolicy`, and systems are expected to put that etag in the request to `setIamPolicy` to ensure that their change will be applied to the same version of the policy.\n\nIf no `etag` is provided in the call to `setIamPolicy`, then the existing policy is overwritten blindly.", - "format": "byte" - }, - "iamOwned": { - "type": "boolean", - "description": "" - }, - "rules": { - "type": "array", - "description": "If more than one rule is specified, the rules are applied in the following manner: - All matching LOG rules are always applied. - If any DENY/DENY_WITH_LOG rule matches, permission is denied. Logging will be applied if one or more matching rule requires logging. - Otherwise, if any ALLOW/ALLOW_WITH_LOG rule matches, permission is granted. Logging will be applied if one or more matching rule requires logging. - Otherwise, if no rule applies, permission is denied.", - "items": { - "$ref": "Rule" - } - }, - "version": { - "type": "integer", - "description": "Version of the `Policy`. The default version is 0.", - "format": "int32" - } - } - }, - "Resource": { - "id": "Resource", - "type": "object", - "description": "", - "properties": { - "accessControl": { - "$ref": "ResourceAccessControl", - "description": "The Access Control Policy set on this resource." - }, - "finalProperties": { - "type": "string", - "description": "Output only. The evaluated properties of the resource with references expanded. Returned as serialized YAML." - }, - "id": { - "type": "string", - "description": "Output only. Unique identifier for the resource; defined by the server.", - "format": "uint64" - }, - "insertTime": { - "type": "string", - "description": "Output only. Timestamp when the resource was created or acquired, in RFC3339 text format ." - }, - "manifest": { - "type": "string", - "description": "Output only. URL of the manifest representing the current configuration of this resource." - }, - "name": { - "type": "string", - "description": "Output only. The name of the resource as it appears in the YAML config." - }, - "properties": { - "type": "string", - "description": "Output only. The current properties of the resource before any references have been filled in. Returned as serialized YAML." - }, - "type": { - "type": "string", - "description": "Output only. The type of the resource, for example compute.v1.instance, or cloudfunctions.v1beta1.function." - }, - "update": { - "$ref": "ResourceUpdate", - "description": "Output only. If Deployment Manager is currently updating or previewing an update to this resource, the updated configuration appears here." - }, - "updateTime": { - "type": "string", - "description": "Output only. Timestamp when the resource was updated, in RFC3339 text format ." - }, - "url": { - "type": "string", - "description": "Output only. The URL of the actual resource." - }, - "warnings": { - "type": "array", - "description": "Output only. If warning messages are generated during processing of this resource, this field will be populated.", - "items": { - "type": "object", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response." - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." + "methods": { + "get": { + "description": "Gets information about a specific operation.", + "httpMethod": "GET", + "id": "deploymentmanager.operations.get", + "parameterOrder": [ + "project", + "operation" + ], + "parameters": { + "operation": { + "description": "The name of the operation for this request.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "The project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } - } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } - } - } - } - } - }, - "ResourceAccessControl": { - "id": "ResourceAccessControl", - "type": "object", - "description": "The access controls set on the resource.", - "properties": { - "gcpIamPolicy": { - "type": "string", - "description": "The GCP IAM Policy to set on the resource." - } - } - }, - "ResourceUpdate": { - "id": "ResourceUpdate", - "type": "object", - "description": "", - "properties": { - "accessControl": { - "$ref": "ResourceAccessControl", - "description": "The Access Control Policy to set on this resource after updating the resource itself." - }, - "error": { - "type": "object", - "description": "Output only. If errors are generated during update of the resource, this field will be populated.", - "properties": { - "errors": { - "type": "array", - "description": "[Output Only] The array of errors encountered while processing this operation.", - "items": { - "type": "object", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] The error type identifier for this error." - }, - "location": { - "type": "string", - "description": "[Output Only] Indicates the field in the request that caused the error. This property is optional." - }, - "message": { - "type": "string", - "description": "[Output Only] An optional, human-readable error message." - } - } - } - } - } - }, - "finalProperties": { - "type": "string", - "description": "Output only. The expanded properties of the resource with reference values expanded. Returned as serialized YAML." - }, - "intent": { - "type": "string", - "description": "Output only. The intent of the resource: PREVIEW, UPDATE, or CANCEL." - }, - "manifest": { - "type": "string", - "description": "Output only. URL of the manifest representing the update configuration of this resource." - }, - "properties": { - "type": "string", - "description": "Output only. The set of updated properties for this resource, before references are expanded. Returned as serialized YAML." - }, - "state": { - "type": "string", - "description": "Output only. The state of the resource." - }, - "warnings": { - "type": "array", - "description": "Output only. If warning messages are generated during processing of this resource, this field will be populated.", - "items": { - "type": "object", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response." - }, - "data": { - "type": "array", - "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." + "path": "{project}/global/operations/{operation}", + "response": { + "$ref": "Operation" }, - "value": { - "type": "string", - "description": "[Output Only] A warning data value corresponding to the key." - } - } + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/ndev.cloudman", + "https://www.googleapis.com/auth/ndev.cloudman.readonly" + ] + }, + "list": { + "description": "Lists all operations for a project.", + "httpMethod": "GET", + "id": "deploymentmanager.operations.list", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "The project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/operations", + "response": { + "$ref": "OperationsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/ndev.cloudman", + "https://www.googleapis.com/auth/ndev.cloudman.readonly" + ] } - }, - "message": { - "type": "string", - "description": "[Output Only] A human-readable description of the warning code." - } } - } - } - } - }, - "ResourcesListResponse": { - "id": "ResourcesListResponse", - "type": "object", - "description": "A response containing a partial list of resources and a page token used to build the next request if the request has been truncated.", - "properties": { - "nextPageToken": { - "type": "string", - "description": "A token used to continue a truncated list request." }, "resources": { - "type": "array", - "description": "Resources contained in this list response.", - "items": { - "$ref": "Resource" - } - } - } - }, - "Rule": { - "id": "Rule", - "type": "object", - "description": "A rule to be applied in a Policy.", - "properties": { - "action": { - "type": "string", - "description": "Required" - }, - "conditions": { - "type": "array", - "description": "Additional restrictions that must be met. All conditions must pass for the rule to match.", - "items": { - "$ref": "Condition" - } - }, - "description": { - "type": "string", - "description": "Human-readable description of the rule." - }, - "ins": { - "type": "array", - "description": "If one or more 'in' clauses are specified, the rule matches if the PRINCIPAL/AUTHORITY_SELECTOR is in at least one of these entries.", - "items": { - "type": "string" - } - }, - "logConfigs": { - "type": "array", - "description": "The config returned to callers of tech.iam.IAM.CheckPolicy for any entries that match the LOG action.", - "items": { - "$ref": "LogConfig" - } - }, - "notIns": { - "type": "array", - "description": "If one or more 'not_in' clauses are specified, the rule matches if the PRINCIPAL/AUTHORITY_SELECTOR is in none of the entries.", - "items": { - "type": "string" - } - }, - "permissions": { - "type": "array", - "description": "A permission is a string of form '..' (e.g., 'storage.buckets.list'). A value of '*' matches all permissions, and a verb part of '*' (e.g., 'storage.buckets.*') matches all verbs.", - "items": { - "type": "string" - } - } - } - }, - "ServiceAccount": { - "id": "ServiceAccount", - "type": "object", - "description": "Service Account used as a credential.", - "properties": { - "email": { - "type": "string", - "description": "The IAM service account email address like test@myproject.iam.gserviceaccount.com" - } - } - }, - "TargetConfiguration": { - "id": "TargetConfiguration", - "type": "object", - "description": "", - "properties": { - "config": { - "$ref": "ConfigFile", - "description": "The configuration to use for this deployment." - }, - "imports": { - "type": "array", - "description": "Specifies any files to import for this configuration. This can be used to import templates or other files. For example, you might import a text file in order to use the file in a template.", - "items": { - "$ref": "ImportFile" - } - } - } - }, - "TemplateContents": { - "id": "TemplateContents", - "type": "object", - "description": "Files that make up the template contents of a template type.", - "properties": { - "imports": { - "type": "array", - "description": "Import files referenced by the main template.", - "items": { - "$ref": "ImportFile" - } - }, - "interpreter": { - "type": "string", - "description": "Which interpreter (python or jinja) should be used during expansion." - }, - "mainTemplate": { - "type": "string", - "description": "The filename of the mainTemplate" - }, - "schema": { - "type": "string", - "description": "The contents of the template schema." - }, - "template": { - "type": "string", - "description": "The contents of the main template file." - } - } - }, - "TestPermissionsRequest": { - "id": "TestPermissionsRequest", - "type": "object", - "properties": { - "permissions": { - "type": "array", - "description": "The set of permissions to check for the 'resource'. Permissions with wildcards (such as '*' or 'storage.*') are not allowed.", - "items": { - "type": "string" - } - } - } - }, - "TestPermissionsResponse": { - "id": "TestPermissionsResponse", - "type": "object", - "properties": { - "permissions": { - "type": "array", - "description": "A subset of `TestPermissionsRequest.permissions` that the caller is allowed.", - "items": { - "type": "string" - } - } - } - }, - "Type": { - "id": "Type", - "type": "object", - "description": "A resource type supported by Deployment Manager.", - "properties": { - "base": { - "$ref": "BaseType", - "description": "Base Type (configurable service) that backs this Type." - }, - "description": { - "type": "string", - "description": "An optional textual description of the resource; provided by the client when the resource is created." - }, - "id": { - "type": "string", - "description": "Output only. Unique identifier for the resource; defined by the server.", - "format": "uint64" - }, - "insertTime": { - "type": "string", - "description": "Output only. Timestamp when the type was created, in RFC3339 text format." - }, - "labels": { - "type": "array", - "description": "Map of labels; provided by the client when the resource is created or updated. Specifically: Label keys must be between 1 and 63 characters long and must conform to the following regular expression: [a-z]([-a-z0-9]*[a-z0-9])? Label values must be between 0 and 63 characters long and must conform to the regular expression ([a-z]([-a-z0-9]*[a-z0-9])?)?", - "items": { - "$ref": "TypeLabelEntry" - } - }, - "name": { - "type": "string", - "description": "Name of the type." - }, - "operation": { - "$ref": "Operation", - "description": "Output only. The Operation that most recently ran, or is currently running, on this type." - }, - "selfLink": { - "type": "string", - "description": "Output only. Self link for the type." - } - } - }, - "TypeInfo": { - "id": "TypeInfo", - "type": "object", - "description": "Contains detailed information about a composite type, base type, or base type with specific collection.", - "properties": { - "description": { - "type": "string", - "description": "The description of the type." - }, - "documentationLink": { - "type": "string", - "description": "For swagger 2.0 externalDocs field will be used. For swagger 1.2 this field will be empty." - }, - "kind": { - "type": "string", - "description": "Output only. Type of the output. Always deploymentManager#TypeInfo for TypeInfo.", - "default": "deploymentmanager#typeInfo" - }, - "name": { - "type": "string", - "description": "The base type or composite type name." - }, - "schema": { - "$ref": "TypeInfoSchemaInfo", - "description": "For base types with a collection, we return a schema and documentation link For template types, we return only a schema" - }, - "selfLink": { - "type": "string", - "description": "Output only. Server-defined URL for the resource." - }, - "title": { - "type": "string", - "description": "The title on the API descriptor URL provided." - } - } - }, - "TypeInfoSchemaInfo": { - "id": "TypeInfoSchemaInfo", - "type": "object", - "description": "", - "properties": { - "input": { - "type": "string", - "description": "The properties that this composite type or base type collection accept as input, represented as a json blob, format is: JSON Schema Draft V4" - }, - "output": { - "type": "string", - "description": "The properties that this composite type or base type collection exposes as output, these properties can be used for references, represented as json blob, format is: JSON Schema Draft V4" - } - } - }, - "TypeLabelEntry": { - "id": "TypeLabelEntry", - "type": "object", - "properties": { - "key": { - "type": "string" - }, - "value": { - "type": "string" - } - } - }, - "TypeProvider": { - "id": "TypeProvider", - "type": "object", - "description": "A type provider that describes a service-backed Type.", - "properties": { - "collectionOverrides": { - "type": "array", - "description": "Allows resource handling overrides for specific collections", - "items": { - "$ref": "CollectionOverride" - } - }, - "credential": { - "$ref": "Credential", - "description": "Credential used when interacting with this type." - }, - "description": { - "type": "string", - "description": "An optional textual description of the resource; provided by the client when the resource is created." - }, - "descriptorUrl": { - "type": "string", - "description": "Descriptor Url for the this type provider." - }, - "id": { - "type": "string", - "description": "Output only. Unique identifier for the resource; defined by the server.", - "format": "uint64" - }, - "insertTime": { - "type": "string", - "description": "Output only. Timestamp when the type provider was created, in RFC3339 text format." - }, - "labels": { - "type": "array", - "description": "Map of labels; provided by the client when the resource is created or updated. Specifically: Label keys must be between 1 and 63 characters long and must conform to the following regular expression: [a-z]([-a-z0-9]*[a-z0-9])? Label values must be between 0 and 63 characters long and must conform to the regular expression ([a-z]([-a-z0-9]*[a-z0-9])?)?", - "items": { - "$ref": "TypeProviderLabelEntry" - } - }, - "name": { - "type": "string", - "description": "Name of the type provider." - }, - "operation": { - "$ref": "Operation", - "description": "Output only. The Operation that most recently ran, or is currently running, on this type provider." - }, - "options": { - "$ref": "Options", - "description": "Options to apply when handling any resources in this service." - }, - "selfLink": { - "type": "string", - "description": "Output only. Self link for the type provider." - } - } - }, - "TypeProviderLabelEntry": { - "id": "TypeProviderLabelEntry", - "type": "object", - "properties": { - "key": { - "type": "string" - }, - "value": { - "type": "string" - } - } - }, - "TypeProvidersListResponse": { - "id": "TypeProvidersListResponse", - "type": "object", - "description": "A response that returns all Type Providers supported by Deployment Manager", - "properties": { - "nextPageToken": { - "type": "string", - "description": "A token used to continue a truncated list request." + "methods": { + "get": { + "description": "Gets information about a single resource.", + "httpMethod": "GET", + "id": "deploymentmanager.resources.get", + "parameterOrder": [ + "project", + "deployment", + "resource" + ], + "parameters": { + "deployment": { + "description": "The name of the deployment for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "The project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "resource": { + "description": "The name of the resource for this request.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/deployments/{deployment}/resources/{resource}", + "response": { + "$ref": "Resource" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/ndev.cloudman", + "https://www.googleapis.com/auth/ndev.cloudman.readonly" + ] + }, + "list": { + "description": "Lists all resources in a given deployment.", + "httpMethod": "GET", + "id": "deploymentmanager.resources.list", + "parameterOrder": [ + "project", + "deployment" + ], + "parameters": { + "deployment": { + "description": "The name of the deployment for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "The project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/deployments/{deployment}/resources", + "response": { + "$ref": "ResourcesListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/ndev.cloudman", + "https://www.googleapis.com/auth/ndev.cloudman.readonly" + ] + } + } }, "typeProviders": { - "type": "array", - "description": "Output only. A list of resource type providers supported by Deployment Manager.", - "items": { - "$ref": "TypeProvider" - } - } - } - }, - "TypeProvidersListTypesResponse": { - "id": "TypeProvidersListTypesResponse", - "type": "object", - "description": "", - "properties": { - "nextPageToken": { - "type": "string", - "description": "A token used to continue a truncated list request." + "methods": { + "delete": { + "description": "Deletes a type provider.", + "httpMethod": "DELETE", + "id": "deploymentmanager.typeProviders.delete", + "parameterOrder": [ + "project", + "typeProvider" + ], + "parameters": { + "project": { + "description": "The project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "typeProvider": { + "description": "The name of the type provider for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/typeProviders/{typeProvider}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/ndev.cloudman" + ] + }, + "get": { + "description": "Gets information about a specific type provider.", + "httpMethod": "GET", + "id": "deploymentmanager.typeProviders.get", + "parameterOrder": [ + "project", + "typeProvider" + ], + "parameters": { + "project": { + "description": "The project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "typeProvider": { + "description": "The name of the type provider for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/typeProviders/{typeProvider}", + "response": { + "$ref": "TypeProvider" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/ndev.cloudman", + "https://www.googleapis.com/auth/ndev.cloudman.readonly" + ] + }, + "getType": { + "description": "Gets a type info for a type provided by a TypeProvider.", + "httpMethod": "GET", + "id": "deploymentmanager.typeProviders.getType", + "parameterOrder": [ + "project", + "typeProvider", + "type" + ], + "parameters": { + "project": { + "description": "The project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "type": { + "description": "The name of the type provider for this request.", + "location": "path", + "required": true, + "type": "string" + }, + "typeProvider": { + "description": "The name of the type provider for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/typeProviders/{typeProvider}/types/{type}", + "response": { + "$ref": "TypeInfo" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/ndev.cloudman", + "https://www.googleapis.com/auth/ndev.cloudman.readonly" + ] + }, + "insert": { + "description": "Creates a type provider.", + "httpMethod": "POST", + "id": "deploymentmanager.typeProviders.insert", + "parameterOrder": [ + "project" + ], + "parameters": { + "project": { + "description": "The project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/typeProviders", + "request": { + "$ref": "TypeProvider" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/ndev.cloudman" + ] + }, + "list": { + "description": "Lists all resource type providers for Deployment Manager.", + "httpMethod": "GET", + "id": "deploymentmanager.typeProviders.list", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "The project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/typeProviders", + "response": { + "$ref": "TypeProvidersListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/ndev.cloudman", + "https://www.googleapis.com/auth/ndev.cloudman.readonly" + ] + }, + "listTypes": { + "description": "Lists all the type info for a TypeProvider.", + "httpMethod": "GET", + "id": "deploymentmanager.typeProviders.listTypes", + "parameterOrder": [ + "project", + "typeProvider" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "The project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "typeProvider": { + "description": "The name of the type provider for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/typeProviders/{typeProvider}/types", + "response": { + "$ref": "TypeProvidersListTypesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/ndev.cloudman", + "https://www.googleapis.com/auth/ndev.cloudman.readonly" + ] + }, + "patch": { + "description": "Updates a type provider. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "deploymentmanager.typeProviders.patch", + "parameterOrder": [ + "project", + "typeProvider" + ], + "parameters": { + "project": { + "description": "The project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "typeProvider": { + "description": "The name of the type provider for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/typeProviders/{typeProvider}", + "request": { + "$ref": "TypeProvider" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/ndev.cloudman" + ] + }, + "update": { + "description": "Updates a type provider.", + "httpMethod": "PUT", + "id": "deploymentmanager.typeProviders.update", + "parameterOrder": [ + "project", + "typeProvider" + ], + "parameters": { + "project": { + "description": "The project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "typeProvider": { + "description": "The name of the type provider for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/typeProviders/{typeProvider}", + "request": { + "$ref": "TypeProvider" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/ndev.cloudman" + ] + } + } }, "types": { - "type": "array", - "description": "Output only. A list of resource type info.", - "items": { - "$ref": "TypeInfo" - } + "methods": { + "list": { + "description": "Lists all resource types for Deployment Manager.", + "httpMethod": "GET", + "id": "deploymentmanager.types.list", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "The project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "{project}/global/types", + "response": { + "$ref": "TypesListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/ndev.cloudman", + "https://www.googleapis.com/auth/ndev.cloudman.readonly" + ] + } + } } - } }, - "TypesListResponse": { - "id": "TypesListResponse", - "type": "object", - "description": "A response that returns all Types supported by Deployment Manager", - "properties": { - "nextPageToken": { - "type": "string", - "description": "A token used to continue a truncated list request." + "revision": "20180309", + "rootUrl": "https://www.googleapis.com/", + "schemas": { + "AsyncOptions": { + "description": "Async options that determine when a resource should finish.", + "id": "AsyncOptions", + "properties": { + "methodMatch": { + "description": "Method regex where this policy will apply.", + "type": "string" + }, + "pollingOptions": { + "$ref": "PollingOptions", + "description": "Deployment manager will poll instances for this API resource setting a RUNNING state, and blocking until polling conditions tell whether the resource is completed or failed." + } + }, + "type": "object" }, - "types": { - "type": "array", - "description": "Output only. A list of resource types supported by Deployment Manager.", - "items": { - "$ref": "Type" - } + "AuditConfig": { + "description": "Specifies the audit configuration for a service. The configuration determines which permission types are logged, and what identities, if any, are exempted from logging. An AuditConfig must have one or more AuditLogConfigs.\n\nIf there are AuditConfigs for both `allServices` and a specific service, the union of the two AuditConfigs is used for that service: the log_types specified in each AuditConfig are enabled, and the exempted_members in each AuditLogConfig are exempted.\n\nExample Policy with multiple AuditConfigs:\n\n{ \"audit_configs\": [ { \"service\": \"allServices\" \"audit_log_configs\": [ { \"log_type\": \"DATA_READ\", \"exempted_members\": [ \"user:foo@gmail.com\" ] }, { \"log_type\": \"DATA_WRITE\", }, { \"log_type\": \"ADMIN_READ\", } ] }, { \"service\": \"fooservice.googleapis.com\" \"audit_log_configs\": [ { \"log_type\": \"DATA_READ\", }, { \"log_type\": \"DATA_WRITE\", \"exempted_members\": [ \"user:bar@gmail.com\" ] } ] } ] }\n\nFor fooservice, this policy enables DATA_READ, DATA_WRITE and ADMIN_READ logging. It also exempts foo@gmail.com from DATA_READ logging, and bar@gmail.com from DATA_WRITE logging.", + "id": "AuditConfig", + "properties": { + "auditLogConfigs": { + "description": "The configuration for logging of each type of permission.", + "items": { + "$ref": "AuditLogConfig" + }, + "type": "array" + }, + "exemptedMembers": { + "description": "", + "items": { + "type": "string" + }, + "type": "array" + }, + "service": { + "description": "Specifies a service that will be enabled for audit logging. For example, `storage.googleapis.com`, `cloudsql.googleapis.com`. `allServices` is a special value that covers all services.", + "type": "string" + } + }, + "type": "object" + }, + "AuditLogConfig": { + "description": "Provides the configuration for logging a type of permissions. Example:\n\n{ \"audit_log_configs\": [ { \"log_type\": \"DATA_READ\", \"exempted_members\": [ \"user:foo@gmail.com\" ] }, { \"log_type\": \"DATA_WRITE\", } ] }\n\nThis enables 'DATA_READ' and 'DATA_WRITE' logging, while exempting foo@gmail.com from DATA_READ logging.", + "id": "AuditLogConfig", + "properties": { + "exemptedMembers": { + "description": "Specifies the identities that do not cause logging for this type of permission. Follows the same format of [Binding.members][].", + "items": { + "type": "string" + }, + "type": "array" + }, + "logType": { + "description": "The log type that this config enables.", + "type": "string" + } + }, + "type": "object" + }, + "AuthorizationLoggingOptions": { + "description": "Authorization-related information used by Cloud Audit Logging.", + "id": "AuthorizationLoggingOptions", + "properties": { + "permissionType": { + "description": "The type of the permission that was checked.", + "type": "string" + } + }, + "type": "object" + }, + "BaseType": { + "description": "BaseType that describes a service-backed Type.", + "id": "BaseType", + "properties": { + "collectionOverrides": { + "description": "Allows resource handling overrides for specific collections", + "items": { + "$ref": "CollectionOverride" + }, + "type": "array" + }, + "credential": { + "$ref": "Credential", + "description": "Credential used when interacting with this type." + }, + "descriptorUrl": { + "description": "Descriptor Url for the this type.", + "type": "string" + }, + "options": { + "$ref": "Options", + "description": "Options to apply when handling any resources in this service." + } + }, + "type": "object" + }, + "BasicAuth": { + "description": "Basic Auth used as a credential.", + "id": "BasicAuth", + "properties": { + "password": { + "type": "string" + }, + "user": { + "type": "string" + } + }, + "type": "object" + }, + "Binding": { + "description": "Associates `members` with a `role`.", + "id": "Binding", + "properties": { + "condition": { + "$ref": "Expr", + "description": "The condition that is associated with this binding. NOTE: an unsatisfied condition will not allow user access via current binding. Different bindings, including their conditions, are examined independently. This field is only visible as GOOGLE_INTERNAL or CONDITION_TRUSTED_TESTER." + }, + "members": { + "description": "Specifies the identities requesting access for a Cloud Platform resource. `members` can have the following values:\n\n* `allUsers`: A special identifier that represents anyone who is on the internet; with or without a Google account.\n\n* `allAuthenticatedUsers`: A special identifier that represents anyone who is authenticated with a Google account or a service account.\n\n* `user:{emailid}`: An email address that represents a specific Google account. For example, `alice@gmail.com` or `joe@example.com`.\n\n\n\n* `serviceAccount:{emailid}`: An email address that represents a service account. For example, `my-other-app@appspot.gserviceaccount.com`.\n\n* `group:{emailid}`: An email address that represents a Google group. For example, `admins@example.com`.\n\n\n\n* `domain:{domain}`: A Google Apps domain name that represents all the users of that domain. For example, `google.com` or `example.com`.", + "items": { + "type": "string" + }, + "type": "array" + }, + "role": { + "description": "Role that is assigned to `members`. For example, `roles/viewer`, `roles/editor`, or `roles/owner`.", + "type": "string" + } + }, + "type": "object" + }, + "CollectionOverride": { + "description": "CollectionOverride allows resource handling overrides for specific resources within a BaseType", + "id": "CollectionOverride", + "properties": { + "collection": { + "description": "The collection that identifies this resource within its service.", + "type": "string" + }, + "options": { + "$ref": "Options", + "description": "The options to apply to this resource-level override" + } + }, + "type": "object" + }, + "CompositeType": { + "description": "Holds the composite type.", + "id": "CompositeType", + "properties": { + "description": { + "description": "An optional textual description of the resource; provided by the client when the resource is created.", + "type": "string" + }, + "id": { + "description": "Output only. Unique identifier for the resource; defined by the server.", + "format": "uint64", + "type": "string" + }, + "insertTime": { + "description": "Output only. Timestamp when the composite type was created, in RFC3339 text format.", + "type": "string" + }, + "labels": { + "description": "Map of labels; provided by the client when the resource is created or updated. Specifically: Label keys must be between 1 and 63 characters long and must conform to the following regular expression: [a-z]([-a-z0-9]*[a-z0-9])? Label values must be between 0 and 63 characters long and must conform to the regular expression ([a-z]([-a-z0-9]*[a-z0-9])?)?", + "items": { + "$ref": "CompositeTypeLabelEntry" + }, + "type": "array" + }, + "name": { + "description": "Name of the composite type, must follow the expression: [a-z]([-a-z0-9_.]{0,61}[a-z0-9])?.", + "type": "string" + }, + "operation": { + "$ref": "Operation", + "description": "Output only. The Operation that most recently ran, or is currently running, on this composite type." + }, + "selfLink": { + "description": "Output only. Self link for the type provider.", + "type": "string" + }, + "status": { + "type": "string" + }, + "templateContents": { + "$ref": "TemplateContents", + "description": "Files for the template type." + } + }, + "type": "object" + }, + "CompositeTypeLabelEntry": { + "id": "CompositeTypeLabelEntry", + "properties": { + "key": { + "type": "string" + }, + "value": { + "type": "string" + } + }, + "type": "object" + }, + "CompositeTypesListResponse": { + "description": "A response that returns all Composite Types supported by Deployment Manager", + "id": "CompositeTypesListResponse", + "properties": { + "compositeTypes": { + "description": "Output only. A list of resource composite types supported by Deployment Manager.", + "items": { + "$ref": "CompositeType" + }, + "type": "array" + }, + "nextPageToken": { + "description": "A token used to continue a truncated list request.", + "type": "string" + } + }, + "type": "object" + }, + "Condition": { + "description": "A condition to be met.", + "id": "Condition", + "properties": { + "iam": { + "description": "Trusted attributes supplied by the IAM system.", + "type": "string" + }, + "op": { + "description": "An operator to apply the subject with.", + "type": "string" + }, + "svc": { + "description": "Trusted attributes discharged by the service.", + "type": "string" + }, + "sys": { + "description": "Trusted attributes supplied by any service that owns resources and uses the IAM system for access control.", + "type": "string" + }, + "value": { + "description": "DEPRECATED. Use 'values' instead.", + "type": "string" + }, + "values": { + "description": "The objects of the condition. This is mutually exclusive with 'value'.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "ConfigFile": { + "description": "", + "id": "ConfigFile", + "properties": { + "content": { + "description": "The contents of the file.", + "type": "string" + } + }, + "type": "object" + }, + "Credential": { + "description": "The credential used by Deployment Manager and TypeProvider. Only one of the options is permitted.", + "id": "Credential", + "properties": { + "basicAuth": { + "$ref": "BasicAuth", + "description": "Basic Auth Credential, only used by TypeProvider." + }, + "serviceAccount": { + "$ref": "ServiceAccount", + "description": "Service Account Credential, only used by Deployment." + }, + "useProjectDefault": { + "description": "Specify to use the project default credential, only supported by Deployment.", + "type": "boolean" + } + }, + "type": "object" + }, + "Deployment": { + "description": "", + "id": "Deployment", + "properties": { + "description": { + "description": "An optional user-provided description of the deployment.", + "type": "string" + }, + "fingerprint": { + "description": "Provides a fingerprint to use in requests to modify a deployment, such as update(), stop(), and cancelPreview() requests. A fingerprint is a randomly generated value that must be provided with update(), stop(), and cancelPreview() requests to perform optimistic locking. This ensures optimistic concurrency so that only one request happens at a time.\n\nThe fingerprint is initially generated by Deployment Manager and changes after every request to modify data. To get the latest fingerprint value, perform a get() request to a deployment.", + "format": "byte", + "type": "string" + }, + "id": { + "description": "Output only. Unique identifier for the resource; defined by the server.", + "format": "uint64", + "type": "string" + }, + "insertTime": { + "description": "Output only. Timestamp when the deployment was created, in RFC3339 text format .", + "type": "string" + }, + "labels": { + "description": "Map of labels; provided by the client when the resource is created or updated. Specifically: Label keys must be between 1 and 63 characters long and must conform to the following regular expression: [a-z]([-a-z0-9]*[a-z0-9])? Label values must be between 0 and 63 characters long and must conform to the regular expression ([a-z]([-a-z0-9]*[a-z0-9])?)?", + "items": { + "$ref": "DeploymentLabelEntry" + }, + "type": "array" + }, + "manifest": { + "description": "Output only. URL of the manifest representing the last manifest that was successfully deployed.", + "type": "string" + }, + "name": { + "description": "Name of the resource; provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "type": "string" + }, + "operation": { + "$ref": "Operation", + "description": "Output only. The Operation that most recently ran, or is currently running, on this deployment." + }, + "selfLink": { + "description": "Output only. Self link for the deployment.", + "type": "string" + }, + "target": { + "$ref": "TargetConfiguration", + "description": "[Input Only] The parameters that define your deployment, including the deployment configuration and relevant templates." + }, + "update": { + "$ref": "DeploymentUpdate", + "description": "Output only. If Deployment Manager is currently updating or previewing an update to this deployment, the updated configuration appears here." + } + }, + "type": "object" + }, + "DeploymentLabelEntry": { + "id": "DeploymentLabelEntry", + "properties": { + "key": { + "type": "string" + }, + "value": { + "type": "string" + } + }, + "type": "object" + }, + "DeploymentUpdate": { + "description": "", + "id": "DeploymentUpdate", + "properties": { + "description": { + "description": "Output only. An optional user-provided description of the deployment after the current update has been applied.", + "type": "string" + }, + "labels": { + "description": "Output only. Map of labels; provided by the client when the resource is created or updated. Specifically: Label keys must be between 1 and 63 characters long and must conform to the following regular expression: [a-z]([-a-z0-9]*[a-z0-9])? Label values must be between 0 and 63 characters long and must conform to the regular expression ([a-z]([-a-z0-9]*[a-z0-9])?)?", + "items": { + "$ref": "DeploymentUpdateLabelEntry" + }, + "type": "array" + }, + "manifest": { + "description": "Output only. URL of the manifest representing the update configuration of this deployment.", + "type": "string" + } + }, + "type": "object" + }, + "DeploymentUpdateLabelEntry": { + "id": "DeploymentUpdateLabelEntry", + "properties": { + "key": { + "type": "string" + }, + "value": { + "type": "string" + } + }, + "type": "object" + }, + "DeploymentsCancelPreviewRequest": { + "description": "", + "id": "DeploymentsCancelPreviewRequest", + "properties": { + "fingerprint": { + "description": "Specifies a fingerprint for cancelPreview() requests. A fingerprint is a randomly generated value that must be provided in cancelPreview() requests to perform optimistic locking. This ensures optimistic concurrency so that the deployment does not have conflicting requests (e.g. if someone attempts to make a new update request while another user attempts to cancel a preview, this would prevent one of the requests).\n\nThe fingerprint is initially generated by Deployment Manager and changes after every request to modify a deployment. To get the latest fingerprint value, perform a get() request on the deployment.", + "format": "byte", + "type": "string" + } + }, + "type": "object" + }, + "DeploymentsListResponse": { + "description": "A response containing a partial list of deployments and a page token used to build the next request if the request has been truncated.", + "id": "DeploymentsListResponse", + "properties": { + "deployments": { + "description": "Output only. The deployments contained in this response.", + "items": { + "$ref": "Deployment" + }, + "type": "array" + }, + "nextPageToken": { + "description": "Output only. A token used to continue a truncated list request.", + "type": "string" + } + }, + "type": "object" + }, + "DeploymentsStopRequest": { + "description": "", + "id": "DeploymentsStopRequest", + "properties": { + "fingerprint": { + "description": "Specifies a fingerprint for stop() requests. A fingerprint is a randomly generated value that must be provided in stop() requests to perform optimistic locking. This ensures optimistic concurrency so that the deployment does not have conflicting requests (e.g. if someone attempts to make a new update request while another user attempts to stop an ongoing update request, this would prevent a collision).\n\nThe fingerprint is initially generated by Deployment Manager and changes after every request to modify a deployment. To get the latest fingerprint value, perform a get() request on the deployment.", + "format": "byte", + "type": "string" + } + }, + "type": "object" + }, + "Diagnostic": { + "description": "", + "id": "Diagnostic", + "properties": { + "field": { + "description": "JsonPath expression on the resource that if non empty, indicates that this field needs to be extracted as a diagnostic.", + "type": "string" + }, + "level": { + "description": "Level to record this diagnostic.", + "type": "string" + } + }, + "type": "object" + }, + "Expr": { + "description": "Represents an expression text. Example:\n\ntitle: \"User account presence\" description: \"Determines whether the request has a user account\" expression: \"size(request.user) \u003e 0\"", + "id": "Expr", + "properties": { + "description": { + "description": "An optional description of the expression. This is a longer text which describes the expression, e.g. when hovered over it in a UI.", + "type": "string" + }, + "expression": { + "description": "Textual representation of an expression in Common Expression Language syntax.\n\nThe application context of the containing message determines which well-known feature set of CEL is supported.", + "type": "string" + }, + "location": { + "description": "An optional string indicating the location of the expression for error reporting, e.g. a file name and a position in the file.", + "type": "string" + }, + "title": { + "description": "An optional title for the expression, i.e. a short string describing its purpose. This can be used e.g. in UIs which allow to enter the expression.", + "type": "string" + } + }, + "type": "object" + }, + "ImportFile": { + "description": "", + "id": "ImportFile", + "properties": { + "content": { + "description": "The contents of the file.", + "type": "string" + }, + "name": { + "description": "The name of the file.", + "type": "string" + } + }, + "type": "object" + }, + "InputMapping": { + "description": "InputMapping creates a 'virtual' property that will be injected into the properties before sending the request to the underlying API.", + "id": "InputMapping", + "properties": { + "fieldName": { + "description": "The name of the field that is going to be injected.", + "type": "string" + }, + "location": { + "description": "The location where this mapping applies.", + "type": "string" + }, + "methodMatch": { + "description": "Regex to evaluate on method to decide if input applies.", + "type": "string" + }, + "value": { + "description": "A jsonPath expression to select an element.", + "type": "string" + } + }, + "type": "object" + }, + "LogConfig": { + "description": "Specifies what kind of log the caller must write", + "id": "LogConfig", + "properties": { + "cloudAudit": { + "$ref": "LogConfigCloudAuditOptions", + "description": "Cloud audit options." + }, + "counter": { + "$ref": "LogConfigCounterOptions", + "description": "Counter options." + }, + "dataAccess": { + "$ref": "LogConfigDataAccessOptions", + "description": "Data access options." + } + }, + "type": "object" + }, + "LogConfigCloudAuditOptions": { + "description": "Write a Cloud Audit log", + "id": "LogConfigCloudAuditOptions", + "properties": { + "authorizationLoggingOptions": { + "$ref": "AuthorizationLoggingOptions", + "description": "Information used by the Cloud Audit Logging pipeline." + }, + "logName": { + "description": "The log_name to populate in the Cloud Audit Record.", + "type": "string" + } + }, + "type": "object" + }, + "LogConfigCounterOptions": { + "description": "Increment a streamz counter with the specified metric and field names.\n\nMetric names should start with a '/', generally be lowercase-only, and end in \"_count\". Field names should not contain an initial slash. The actual exported metric names will have \"/iam/policy\" prepended.\n\nField names correspond to IAM request parameters and field values are their respective values.\n\nAt present the only supported field names are - \"iam_principal\", corresponding to IAMContext.principal; - \"\" (empty string), resulting in one aggretated counter with no field.\n\nExamples: counter { metric: \"/debug_access_count\" field: \"iam_principal\" } ==\u003e increment counter /iam/policy/backend_debug_access_count {iam_principal=[value of IAMContext.principal]}\n\nAt this time we do not support: * multiple field names (though this may be supported in the future) * decrementing the counter * incrementing it by anything other than 1", + "id": "LogConfigCounterOptions", + "properties": { + "field": { + "description": "The field value to attribute.", + "type": "string" + }, + "metric": { + "description": "The metric to update.", + "type": "string" + } + }, + "type": "object" + }, + "LogConfigDataAccessOptions": { + "description": "Write a Data Access (Gin) log", + "id": "LogConfigDataAccessOptions", + "properties": { + "logMode": { + "description": "Whether Gin logging should happen in a fail-closed manner at the caller. This is relevant only in the LocalIAM implementation, for now.", + "type": "string" + } + }, + "type": "object" + }, + "Manifest": { + "description": "", + "id": "Manifest", + "properties": { + "config": { + "$ref": "ConfigFile", + "description": "Output only. The YAML configuration for this manifest." + }, + "expandedConfig": { + "description": "Output only. The fully-expanded configuration file, including any templates and references.", + "type": "string" + }, + "id": { + "description": "Output only. Unique identifier for the resource; defined by the server.", + "format": "uint64", + "type": "string" + }, + "imports": { + "description": "Output only. The imported files for this manifest.", + "items": { + "$ref": "ImportFile" + }, + "type": "array" + }, + "insertTime": { + "description": "Output only. Timestamp when the manifest was created, in RFC3339 text format.", + "type": "string" + }, + "layout": { + "description": "Output only. The YAML layout for this manifest.", + "type": "string" + }, + "name": { + "description": "Output only.\n\nThe name of the manifest.", + "type": "string" + }, + "selfLink": { + "description": "Output only. Self link for the manifest.", + "type": "string" + } + }, + "type": "object" + }, + "ManifestsListResponse": { + "description": "A response containing a partial list of manifests and a page token used to build the next request if the request has been truncated.", + "id": "ManifestsListResponse", + "properties": { + "manifests": { + "description": "Output only. Manifests contained in this list response.", + "items": { + "$ref": "Manifest" + }, + "type": "array" + }, + "nextPageToken": { + "description": "Output only. A token used to continue a truncated list request.", + "type": "string" + } + }, + "type": "object" + }, + "Operation": { + "description": "An Operation resource, used to manage asynchronous API requests. (== resource_for v1.globalOperations ==) (== resource_for beta.globalOperations ==) (== resource_for v1.regionOperations ==) (== resource_for beta.regionOperations ==) (== resource_for v1.zoneOperations ==) (== resource_for beta.zoneOperations ==)", + "id": "Operation", + "properties": { + "clientOperationId": { + "description": "[Output Only] Reserved for future use.", + "type": "string" + }, + "creationTimestamp": { + "description": "[Deprecated] This field is deprecated.", + "type": "string" + }, + "description": { + "description": "[Output Only] A textual description of the operation, which is set when the operation is created.", + "type": "string" + }, + "endTime": { + "description": "[Output Only] The time that this operation was completed. This value is in RFC3339 text format.", + "type": "string" + }, + "error": { + "description": "[Output Only] If errors are generated during processing of the operation, this field will be populated.", + "properties": { + "errors": { + "description": "[Output Only] The array of errors encountered while processing this operation.", + "items": { + "properties": { + "code": { + "description": "[Output Only] The error type identifier for this error.", + "type": "string" + }, + "location": { + "description": "[Output Only] Indicates the field in the request that caused the error. This property is optional.", + "type": "string" + }, + "message": { + "description": "[Output Only] An optional, human-readable error message.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + } + }, + "type": "object" + }, + "httpErrorMessage": { + "description": "[Output Only] If the operation fails, this field contains the HTTP error message that was returned, such as NOT FOUND.", + "type": "string" + }, + "httpErrorStatusCode": { + "description": "[Output Only] If the operation fails, this field contains the HTTP error status code that was returned. For example, a 404 means the resource was not found.", + "format": "int32", + "type": "integer" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64", + "type": "string" + }, + "insertTime": { + "description": "[Output Only] The time that this operation was requested. This value is in RFC3339 text format.", + "type": "string" + }, + "kind": { + "default": "deploymentmanager#operation", + "description": "[Output Only] Type of the resource. Always compute#operation for Operation resources.", + "type": "string" + }, + "name": { + "description": "[Output Only] Name of the resource.", + "type": "string" + }, + "operationType": { + "description": "[Output Only] The type of operation, such as insert, update, or delete, and so on.", + "type": "string" + }, + "progress": { + "description": "[Output Only] An optional progress indicator that ranges from 0 to 100. There is no requirement that this be linear or support any granularity of operations. This should not be used to guess when the operation will be complete. This number should monotonically increase as the operation progresses.", + "format": "int32", + "type": "integer" + }, + "region": { + "description": "[Output Only] The URL of the region where the operation resides. Only available when performing regional operations. You must specify this field as part of the HTTP request URL. It is not settable as a field in the request body.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + }, + "startTime": { + "description": "[Output Only] The time that this operation was started by the server. This value is in RFC3339 text format.", + "type": "string" + }, + "status": { + "description": "[Output Only] The status of the operation, which can be one of the following: PENDING, RUNNING, or DONE.", + "type": "string" + }, + "statusMessage": { + "description": "[Output Only] An optional textual description of the current status of the operation.", + "type": "string" + }, + "targetId": { + "description": "[Output Only] The unique target ID, which identifies a specific incarnation of the target resource.", + "format": "uint64", + "type": "string" + }, + "targetLink": { + "description": "[Output Only] The URL of the resource that the operation modifies. For operations related to creating a snapshot, this points to the persistent disk that the snapshot was created from.", + "type": "string" + }, + "user": { + "description": "[Output Only] User who requested the operation, for example: user@example.com.", + "type": "string" + }, + "warnings": { + "description": "[Output Only] If warning messages are generated during processing of the operation, this field will be populated.", + "items": { + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "zone": { + "description": "[Output Only] The URL of the zone where the operation resides. Only available when performing per-zone operations. You must specify this field as part of the HTTP request URL. It is not settable as a field in the request body.", + "type": "string" + } + }, + "type": "object" + }, + "OperationsListResponse": { + "description": "A response containing a partial list of operations and a page token used to build the next request if the request has been truncated.", + "id": "OperationsListResponse", + "properties": { + "nextPageToken": { + "description": "Output only. A token used to continue a truncated list request.", + "type": "string" + }, + "operations": { + "description": "Output only. Operations contained in this list response.", + "items": { + "$ref": "Operation" + }, + "type": "array" + } + }, + "type": "object" + }, + "Options": { + "description": "Options allows customized resource handling by Deployment Manager.", + "id": "Options", + "properties": { + "asyncOptions": { + "description": "Options regarding how to thread async requests.", + "items": { + "$ref": "AsyncOptions" + }, + "type": "array" + }, + "inputMappings": { + "description": "The mappings that apply for requests.", + "items": { + "$ref": "InputMapping" + }, + "type": "array" + }, + "validationOptions": { + "$ref": "ValidationOptions", + "description": "Options for how to validate and process properties on a resource." + }, + "virtualProperties": { + "description": "Additional properties block described as a jsonSchema, these properties will never be part of the json payload, but they can be consumed by InputMappings, this must be a valid json schema draft-04. The properties specified here will be decouple in a different section. This schema will be merged to the schema validation, and properties here will be extracted From the payload and consumed explicitly by InputMappings. ex: field1: type: string field2: type: number", + "type": "string" + } + }, + "type": "object" + }, + "Policy": { + "description": "Defines an Identity and Access Management (IAM) policy. It is used to specify access control policies for Cloud Platform resources.\n\n\n\nA `Policy` consists of a list of `bindings`. A `Binding` binds a list of `members` to a `role`, where the members can be user accounts, Google groups, Google domains, and service accounts. A `role` is a named list of permissions defined by IAM.\n\n**Example**\n\n{ \"bindings\": [ { \"role\": \"roles/owner\", \"members\": [ \"user:mike@example.com\", \"group:admins@example.com\", \"domain:google.com\", \"serviceAccount:my-other-app@appspot.gserviceaccount.com\", ] }, { \"role\": \"roles/viewer\", \"members\": [\"user:sean@example.com\"] } ] }\n\nFor a description of IAM and its features, see the [IAM developer's guide](https://cloud.google.com/iam/docs).", + "id": "Policy", + "properties": { + "auditConfigs": { + "description": "Specifies cloud audit logging configuration for this policy.", + "items": { + "$ref": "AuditConfig" + }, + "type": "array" + }, + "bindings": { + "description": "Associates a list of `members` to a `role`. `bindings` with no members will result in an error.", + "items": { + "$ref": "Binding" + }, + "type": "array" + }, + "etag": { + "description": "`etag` is used for optimistic concurrency control as a way to help prevent simultaneous updates of a policy from overwriting each other. It is strongly suggested that systems make use of the `etag` in the read-modify-write cycle to perform policy updates in order to avoid race conditions: An `etag` is returned in the response to `getIamPolicy`, and systems are expected to put that etag in the request to `setIamPolicy` to ensure that their change will be applied to the same version of the policy.\n\nIf no `etag` is provided in the call to `setIamPolicy`, then the existing policy is overwritten blindly.", + "format": "byte", + "type": "string" + }, + "iamOwned": { + "description": "", + "type": "boolean" + }, + "rules": { + "description": "If more than one rule is specified, the rules are applied in the following manner: - All matching LOG rules are always applied. - If any DENY/DENY_WITH_LOG rule matches, permission is denied. Logging will be applied if one or more matching rule requires logging. - Otherwise, if any ALLOW/ALLOW_WITH_LOG rule matches, permission is granted. Logging will be applied if one or more matching rule requires logging. - Otherwise, if no rule applies, permission is denied.", + "items": { + "$ref": "Rule" + }, + "type": "array" + }, + "version": { + "description": "Deprecated.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "PollingOptions": { + "description": "", + "id": "PollingOptions", + "properties": { + "diagnostics": { + "description": "An array of diagnostics to be collected by Deployment Manager, these diagnostics will be displayed to the user.", + "items": { + "$ref": "Diagnostic" + }, + "type": "array" + }, + "failCondition": { + "description": "JsonPath expression that determines if the request failed.", + "type": "string" + }, + "finishCondition": { + "description": "JsonPath expression that determines if the request is completed.", + "type": "string" + }, + "pollingLink": { + "description": "JsonPath expression that evaluates to string, it indicates where to poll.", + "type": "string" + }, + "targetLink": { + "description": "JsonPath expression, after polling is completed, indicates where to fetch the resource.", + "type": "string" + } + }, + "type": "object" + }, + "Resource": { + "description": "", + "id": "Resource", + "properties": { + "accessControl": { + "$ref": "ResourceAccessControl", + "description": "The Access Control Policy set on this resource." + }, + "finalProperties": { + "description": "Output only. The evaluated properties of the resource with references expanded. Returned as serialized YAML.", + "type": "string" + }, + "id": { + "description": "Output only. Unique identifier for the resource; defined by the server.", + "format": "uint64", + "type": "string" + }, + "insertTime": { + "description": "Output only. Timestamp when the resource was created or acquired, in RFC3339 text format .", + "type": "string" + }, + "manifest": { + "description": "Output only. URL of the manifest representing the current configuration of this resource.", + "type": "string" + }, + "name": { + "description": "Output only. The name of the resource as it appears in the YAML config.", + "type": "string" + }, + "properties": { + "description": "Output only. The current properties of the resource before any references have been filled in. Returned as serialized YAML.", + "type": "string" + }, + "type": { + "description": "Output only. The type of the resource, for example compute.v1.instance, or cloudfunctions.v1beta1.function.", + "type": "string" + }, + "update": { + "$ref": "ResourceUpdate", + "description": "Output only. If Deployment Manager is currently updating or previewing an update to this resource, the updated configuration appears here." + }, + "updateTime": { + "description": "Output only. Timestamp when the resource was updated, in RFC3339 text format .", + "type": "string" + }, + "url": { + "description": "Output only. The URL of the actual resource.", + "type": "string" + }, + "warnings": { + "description": "Output only. If warning messages are generated during processing of this resource, this field will be populated.", + "items": { + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + } + }, + "type": "object" + }, + "ResourceAccessControl": { + "description": "The access controls set on the resource.", + "id": "ResourceAccessControl", + "properties": { + "gcpIamPolicy": { + "description": "The GCP IAM Policy to set on the resource.", + "type": "string" + } + }, + "type": "object" + }, + "ResourceUpdate": { + "description": "", + "id": "ResourceUpdate", + "properties": { + "accessControl": { + "$ref": "ResourceAccessControl", + "description": "The Access Control Policy to set on this resource after updating the resource itself." + }, + "error": { + "description": "Output only. If errors are generated during update of the resource, this field will be populated.", + "properties": { + "errors": { + "description": "[Output Only] The array of errors encountered while processing this operation.", + "items": { + "properties": { + "code": { + "description": "[Output Only] The error type identifier for this error.", + "type": "string" + }, + "location": { + "description": "[Output Only] Indicates the field in the request that caused the error. This property is optional.", + "type": "string" + }, + "message": { + "description": "[Output Only] An optional, human-readable error message.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + } + }, + "type": "object" + }, + "finalProperties": { + "description": "Output only. The expanded properties of the resource with reference values expanded. Returned as serialized YAML.", + "type": "string" + }, + "intent": { + "description": "Output only. The intent of the resource: PREVIEW, UPDATE, or CANCEL.", + "type": "string" + }, + "manifest": { + "description": "Output only. URL of the manifest representing the update configuration of this resource.", + "type": "string" + }, + "properties": { + "description": "Output only. The set of updated properties for this resource, before references are expanded. Returned as serialized YAML.", + "type": "string" + }, + "state": { + "description": "Output only. The state of the resource.", + "type": "string" + }, + "warnings": { + "description": "Output only. If warning messages are generated during processing of this resource, this field will be populated.", + "items": { + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + } + }, + "type": "object" + }, + "ResourcesListResponse": { + "description": "A response containing a partial list of resources and a page token used to build the next request if the request has been truncated.", + "id": "ResourcesListResponse", + "properties": { + "nextPageToken": { + "description": "A token used to continue a truncated list request.", + "type": "string" + }, + "resources": { + "description": "Resources contained in this list response.", + "items": { + "$ref": "Resource" + }, + "type": "array" + } + }, + "type": "object" + }, + "Rule": { + "description": "A rule to be applied in a Policy.", + "id": "Rule", + "properties": { + "action": { + "description": "Required", + "type": "string" + }, + "conditions": { + "description": "Additional restrictions that must be met. All conditions must pass for the rule to match.", + "items": { + "$ref": "Condition" + }, + "type": "array" + }, + "description": { + "description": "Human-readable description of the rule.", + "type": "string" + }, + "ins": { + "description": "If one or more 'in' clauses are specified, the rule matches if the PRINCIPAL/AUTHORITY_SELECTOR is in at least one of these entries.", + "items": { + "type": "string" + }, + "type": "array" + }, + "logConfigs": { + "description": "The config returned to callers of tech.iam.IAM.CheckPolicy for any entries that match the LOG action.", + "items": { + "$ref": "LogConfig" + }, + "type": "array" + }, + "notIns": { + "description": "If one or more 'not_in' clauses are specified, the rule matches if the PRINCIPAL/AUTHORITY_SELECTOR is in none of the entries.", + "items": { + "type": "string" + }, + "type": "array" + }, + "permissions": { + "description": "A permission is a string of form '..' (e.g., 'storage.buckets.list'). A value of '*' matches all permissions, and a verb part of '*' (e.g., 'storage.buckets.*') matches all verbs.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "ServiceAccount": { + "description": "Service Account used as a credential.", + "id": "ServiceAccount", + "properties": { + "email": { + "description": "The IAM service account email address like test@myproject.iam.gserviceaccount.com", + "type": "string" + } + }, + "type": "object" + }, + "TargetConfiguration": { + "description": "", + "id": "TargetConfiguration", + "properties": { + "config": { + "$ref": "ConfigFile", + "description": "The configuration to use for this deployment." + }, + "imports": { + "description": "Specifies any files to import for this configuration. This can be used to import templates or other files. For example, you might import a text file in order to use the file in a template.", + "items": { + "$ref": "ImportFile" + }, + "type": "array" + } + }, + "type": "object" + }, + "TemplateContents": { + "description": "Files that make up the template contents of a template type.", + "id": "TemplateContents", + "properties": { + "imports": { + "description": "Import files referenced by the main template.", + "items": { + "$ref": "ImportFile" + }, + "type": "array" + }, + "interpreter": { + "description": "Which interpreter (python or jinja) should be used during expansion.", + "type": "string" + }, + "mainTemplate": { + "description": "The filename of the mainTemplate", + "type": "string" + }, + "schema": { + "description": "The contents of the template schema.", + "type": "string" + }, + "template": { + "description": "The contents of the main template file.", + "type": "string" + } + }, + "type": "object" + }, + "TestPermissionsRequest": { + "id": "TestPermissionsRequest", + "properties": { + "permissions": { + "description": "The set of permissions to check for the 'resource'. Permissions with wildcards (such as '*' or 'storage.*') are not allowed.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "TestPermissionsResponse": { + "id": "TestPermissionsResponse", + "properties": { + "permissions": { + "description": "A subset of `TestPermissionsRequest.permissions` that the caller is allowed.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "Type": { + "description": "A resource type supported by Deployment Manager.", + "id": "Type", + "properties": { + "base": { + "$ref": "BaseType", + "description": "Base Type (configurable service) that backs this Type." + }, + "description": { + "description": "An optional textual description of the resource; provided by the client when the resource is created.", + "type": "string" + }, + "id": { + "description": "Output only. Unique identifier for the resource; defined by the server.", + "format": "uint64", + "type": "string" + }, + "insertTime": { + "description": "Output only. Timestamp when the type was created, in RFC3339 text format.", + "type": "string" + }, + "labels": { + "description": "Map of labels; provided by the client when the resource is created or updated. Specifically: Label keys must be between 1 and 63 characters long and must conform to the following regular expression: [a-z]([-a-z0-9]*[a-z0-9])? Label values must be between 0 and 63 characters long and must conform to the regular expression ([a-z]([-a-z0-9]*[a-z0-9])?)?", + "items": { + "$ref": "TypeLabelEntry" + }, + "type": "array" + }, + "name": { + "description": "Name of the type.", + "type": "string" + }, + "operation": { + "$ref": "Operation", + "description": "Output only. The Operation that most recently ran, or is currently running, on this type." + }, + "selfLink": { + "description": "Output only. Self link for the type.", + "type": "string" + } + }, + "type": "object" + }, + "TypeInfo": { + "description": "Contains detailed information about a composite type, base type, or base type with specific collection.", + "id": "TypeInfo", + "properties": { + "description": { + "description": "The description of the type.", + "type": "string" + }, + "documentationLink": { + "description": "For swagger 2.0 externalDocs field will be used. For swagger 1.2 this field will be empty.", + "type": "string" + }, + "kind": { + "default": "deploymentmanager#typeInfo", + "description": "Output only. Type of the output. Always deploymentManager#TypeInfo for TypeInfo.", + "type": "string" + }, + "name": { + "description": "The base type or composite type name.", + "type": "string" + }, + "schema": { + "$ref": "TypeInfoSchemaInfo", + "description": "For base types with a collection, we return a schema and documentation link For template types, we return only a schema" + }, + "selfLink": { + "description": "Output only. Server-defined URL for the resource.", + "type": "string" + }, + "title": { + "description": "The title on the API descriptor URL provided.", + "type": "string" + } + }, + "type": "object" + }, + "TypeInfoSchemaInfo": { + "description": "", + "id": "TypeInfoSchemaInfo", + "properties": { + "input": { + "description": "The properties that this composite type or base type collection accept as input, represented as a json blob, format is: JSON Schema Draft V4", + "type": "string" + }, + "output": { + "description": "The properties that this composite type or base type collection exposes as output, these properties can be used for references, represented as json blob, format is: JSON Schema Draft V4", + "type": "string" + } + }, + "type": "object" + }, + "TypeLabelEntry": { + "id": "TypeLabelEntry", + "properties": { + "key": { + "type": "string" + }, + "value": { + "type": "string" + } + }, + "type": "object" + }, + "TypeProvider": { + "description": "A type provider that describes a service-backed Type.", + "id": "TypeProvider", + "properties": { + "collectionOverrides": { + "description": "Allows resource handling overrides for specific collections", + "items": { + "$ref": "CollectionOverride" + }, + "type": "array" + }, + "credential": { + "$ref": "Credential", + "description": "Credential used when interacting with this type." + }, + "description": { + "description": "An optional textual description of the resource; provided by the client when the resource is created.", + "type": "string" + }, + "descriptorUrl": { + "description": "Descriptor Url for the this type provider.", + "type": "string" + }, + "id": { + "description": "Output only. Unique identifier for the resource; defined by the server.", + "format": "uint64", + "type": "string" + }, + "insertTime": { + "description": "Output only. Timestamp when the type provider was created, in RFC3339 text format.", + "type": "string" + }, + "labels": { + "description": "Map of labels; provided by the client when the resource is created or updated. Specifically: Label keys must be between 1 and 63 characters long and must conform to the following regular expression: [a-z]([-a-z0-9]*[a-z0-9])? Label values must be between 0 and 63 characters long and must conform to the regular expression ([a-z]([-a-z0-9]*[a-z0-9])?)?", + "items": { + "$ref": "TypeProviderLabelEntry" + }, + "type": "array" + }, + "name": { + "description": "Name of the resource; provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "type": "string" + }, + "operation": { + "$ref": "Operation", + "description": "Output only. The Operation that most recently ran, or is currently running, on this type provider." + }, + "options": { + "$ref": "Options", + "description": "Options to apply when handling any resources in this service." + }, + "selfLink": { + "description": "Output only. Self link for the type provider.", + "type": "string" + } + }, + "type": "object" + }, + "TypeProviderLabelEntry": { + "id": "TypeProviderLabelEntry", + "properties": { + "key": { + "type": "string" + }, + "value": { + "type": "string" + } + }, + "type": "object" + }, + "TypeProvidersListResponse": { + "description": "A response that returns all Type Providers supported by Deployment Manager", + "id": "TypeProvidersListResponse", + "properties": { + "nextPageToken": { + "description": "A token used to continue a truncated list request.", + "type": "string" + }, + "typeProviders": { + "description": "Output only. A list of resource type providers supported by Deployment Manager.", + "items": { + "$ref": "TypeProvider" + }, + "type": "array" + } + }, + "type": "object" + }, + "TypeProvidersListTypesResponse": { + "description": "", + "id": "TypeProvidersListTypesResponse", + "properties": { + "nextPageToken": { + "description": "A token used to continue a truncated list request.", + "type": "string" + }, + "types": { + "description": "Output only. A list of resource type info.", + "items": { + "$ref": "TypeInfo" + }, + "type": "array" + } + }, + "type": "object" + }, + "TypesListResponse": { + "description": "A response that returns all Types supported by Deployment Manager", + "id": "TypesListResponse", + "properties": { + "nextPageToken": { + "description": "A token used to continue a truncated list request.", + "type": "string" + }, + "types": { + "description": "Output only. A list of resource types supported by Deployment Manager.", + "items": { + "$ref": "Type" + }, + "type": "array" + } + }, + "type": "object" + }, + "ValidationOptions": { + "description": "Options for how to validate and process properties on a resource.", + "id": "ValidationOptions", + "properties": { + "schemaValidation": { + "description": "Customize how deployment manager will validate the resource against schema errors.", + "type": "string" + }, + "undeclaredProperties": { + "description": "Specify what to do with extra properties when executing a request.", + "type": "string" + } + }, + "type": "object" } - } }, - "ValidationOptions": { - "id": "ValidationOptions", - "type": "object", - "description": "Options for how to validate and process properties on a resource.", - "properties": { - "schemaValidation": { - "type": "string", - "description": "Customize how deployment manager will validate the resource against schema errors." - }, - "undeclaredProperties": { - "type": "string", - "description": "Specify what to do with extra properties when executing a request." - } - } - } - }, - "resources": { - "compositeTypes": { - "methods": { - "delete": { - "id": "deploymentmanager.compositeTypes.delete", - "path": "{project}/global/compositeTypes/{compositeType}", - "httpMethod": "DELETE", - "description": "Deletes a composite type.", - "parameters": { - "compositeType": { - "type": "string", - "description": "The name of the type for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9_.]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "The project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "compositeType" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/ndev.cloudman" - ] - }, - "get": { - "id": "deploymentmanager.compositeTypes.get", - "path": "{project}/global/compositeTypes/{compositeType}", - "httpMethod": "GET", - "description": "Gets information about a specific composite type.", - "parameters": { - "compositeType": { - "type": "string", - "description": "The name of the composite type for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9_.]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "The project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "compositeType" - ], - "response": { - "$ref": "CompositeType" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/ndev.cloudman", - "https://www.googleapis.com/auth/ndev.cloudman.readonly" - ] - }, - "insert": { - "id": "deploymentmanager.compositeTypes.insert", - "path": "{project}/global/compositeTypes", - "httpMethod": "POST", - "description": "Creates a composite type.", - "parameters": { - "project": { - "type": "string", - "description": "The project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "request": { - "$ref": "CompositeType" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/ndev.cloudman" - ] - }, - "list": { - "id": "deploymentmanager.compositeTypes.list", - "path": "{project}/global/compositeTypes", - "httpMethod": "GET", - "description": "Lists all composite types for Deployment Manager.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "The project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "CompositeTypesListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/ndev.cloudman", - "https://www.googleapis.com/auth/ndev.cloudman.readonly" - ] - }, - "patch": { - "id": "deploymentmanager.compositeTypes.patch", - "path": "{project}/global/compositeTypes/{compositeType}", - "httpMethod": "PATCH", - "description": "Updates a composite type. This method supports patch semantics.", - "parameters": { - "compositeType": { - "type": "string", - "description": "The name of the composite type for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9_.]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "The project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "compositeType" - ], - "request": { - "$ref": "CompositeType" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/ndev.cloudman" - ] - }, - "update": { - "id": "deploymentmanager.compositeTypes.update", - "path": "{project}/global/compositeTypes/{compositeType}", - "httpMethod": "PUT", - "description": "Updates a composite type.", - "parameters": { - "compositeType": { - "type": "string", - "description": "The name of the composite type for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9_.]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "The project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "compositeType" - ], - "request": { - "$ref": "CompositeType" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/ndev.cloudman" - ] - } - } - }, - "deployments": { - "methods": { - "cancelPreview": { - "id": "deploymentmanager.deployments.cancelPreview", - "path": "{project}/global/deployments/{deployment}/cancelPreview", - "httpMethod": "POST", - "description": "Cancels and removes the preview currently associated with the deployment.", - "parameters": { - "deployment": { - "type": "string", - "description": "The name of the deployment for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "The project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "deployment" - ], - "request": { - "$ref": "DeploymentsCancelPreviewRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/ndev.cloudman" - ] - }, - "delete": { - "id": "deploymentmanager.deployments.delete", - "path": "{project}/global/deployments/{deployment}", - "httpMethod": "DELETE", - "description": "Deletes a deployment and all of the resources in the deployment.", - "parameters": { - "deletePolicy": { - "type": "string", - "description": "Sets the policy to use for deleting resources.", - "default": "DELETE", - "enum": [ - "ABANDON", - "DELETE" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - }, - "deployment": { - "type": "string", - "description": "The name of the deployment for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "The project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "deployment" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/ndev.cloudman" - ] - }, - "get": { - "id": "deploymentmanager.deployments.get", - "path": "{project}/global/deployments/{deployment}", - "httpMethod": "GET", - "description": "Gets information about a specific deployment.", - "parameters": { - "deployment": { - "type": "string", - "description": "The name of the deployment for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "The project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "deployment" - ], - "response": { - "$ref": "Deployment" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/ndev.cloudman", - "https://www.googleapis.com/auth/ndev.cloudman.readonly" - ] - }, - "getIamPolicy": { - "id": "deploymentmanager.deployments.getIamPolicy", - "path": "{project}/global/deployments/{resource}/getIamPolicy", - "httpMethod": "GET", - "description": "Gets the access control policy for a resource. May be empty if no such policy or resource exists.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "[a-z0-9](?:[-a-z0-9_]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "resource" - ], - "response": { - "$ref": "Policy" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/ndev.cloudman" - ] - }, - "insert": { - "id": "deploymentmanager.deployments.insert", - "path": "{project}/global/deployments", - "httpMethod": "POST", - "description": "Creates a deployment and all of the resources described by the deployment manifest.", - "parameters": { - "preview": { - "type": "boolean", - "description": "If set to true, creates a deployment and creates \"shell\" resources but does not actually instantiate these resources. This allows you to preview what your deployment looks like. After previewing a deployment, you can deploy your resources by making a request with the update() method or you can use the cancelPreview() method to cancel the preview altogether. Note that the deployment will still exist after you cancel the preview and you must separately delete this deployment if you want to remove it.", - "location": "query" - }, - "project": { - "type": "string", - "description": "The project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "request": { - "$ref": "Deployment" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/ndev.cloudman" - ] - }, - "list": { - "id": "deploymentmanager.deployments.list", - "path": "{project}/global/deployments", - "httpMethod": "GET", - "description": "Lists all deployments for a given project.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "The project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "DeploymentsListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/ndev.cloudman", - "https://www.googleapis.com/auth/ndev.cloudman.readonly" - ] - }, - "patch": { - "id": "deploymentmanager.deployments.patch", - "path": "{project}/global/deployments/{deployment}", - "httpMethod": "PATCH", - "description": "Updates a deployment and all of the resources described by the deployment manifest. This method supports patch semantics.", - "parameters": { - "createPolicy": { - "type": "string", - "description": "Sets the policy to use for creating new resources.", - "default": "CREATE_OR_ACQUIRE", - "enum": [ - "ACQUIRE", - "CREATE_OR_ACQUIRE" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - }, - "deletePolicy": { - "type": "string", - "description": "Sets the policy to use for deleting resources.", - "default": "DELETE", - "enum": [ - "ABANDON", - "DELETE" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - }, - "deployment": { - "type": "string", - "description": "The name of the deployment for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "preview": { - "type": "boolean", - "description": "If set to true, updates the deployment and creates and updates the \"shell\" resources but does not actually alter or instantiate these resources. This allows you to preview what your deployment will look like. You can use this intent to preview how an update would affect your deployment. You must provide a target.config with a configuration if this is set to true. After previewing a deployment, you can deploy your resources by making a request with the update() or you can cancelPreview() to remove the preview altogether. Note that the deployment will still exist after you cancel the preview and you must separately delete this deployment if you want to remove it.", - "default": "false", - "location": "query" - }, - "project": { - "type": "string", - "description": "The project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "deployment" - ], - "request": { - "$ref": "Deployment" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/ndev.cloudman" - ] - }, - "setIamPolicy": { - "id": "deploymentmanager.deployments.setIamPolicy", - "path": "{project}/global/deployments/{resource}/setIamPolicy", - "httpMethod": "POST", - "description": "Sets the access control policy on the specified resource. Replaces any existing policy.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "[a-z0-9](?:[-a-z0-9_]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "resource" - ], - "request": { - "$ref": "Policy" - }, - "response": { - "$ref": "Policy" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/ndev.cloudman" - ] - }, - "stop": { - "id": "deploymentmanager.deployments.stop", - "path": "{project}/global/deployments/{deployment}/stop", - "httpMethod": "POST", - "description": "Stops an ongoing operation. This does not roll back any work that has already been completed, but prevents any new work from being started.", - "parameters": { - "deployment": { - "type": "string", - "description": "The name of the deployment for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "The project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "deployment" - ], - "request": { - "$ref": "DeploymentsStopRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/ndev.cloudman" - ] - }, - "testIamPermissions": { - "id": "deploymentmanager.deployments.testIamPermissions", - "path": "{project}/global/deployments/{resource}/testIamPermissions", - "httpMethod": "POST", - "description": "Returns permissions that a caller has on the specified resource.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "resource": { - "type": "string", - "description": "Name of the resource for this request.", - "required": true, - "pattern": "(?:[-a-z0-9_]{0,62}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "resource" - ], - "request": { - "$ref": "TestPermissionsRequest" - }, - "response": { - "$ref": "TestPermissionsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/ndev.cloudman" - ] - }, - "update": { - "id": "deploymentmanager.deployments.update", - "path": "{project}/global/deployments/{deployment}", - "httpMethod": "PUT", - "description": "Updates a deployment and all of the resources described by the deployment manifest.", - "parameters": { - "createPolicy": { - "type": "string", - "description": "Sets the policy to use for creating new resources.", - "default": "CREATE_OR_ACQUIRE", - "enum": [ - "ACQUIRE", - "CREATE_OR_ACQUIRE" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - }, - "deletePolicy": { - "type": "string", - "description": "Sets the policy to use for deleting resources.", - "default": "DELETE", - "enum": [ - "ABANDON", - "DELETE" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - }, - "deployment": { - "type": "string", - "description": "The name of the deployment for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "preview": { - "type": "boolean", - "description": "If set to true, updates the deployment and creates and updates the \"shell\" resources but does not actually alter or instantiate these resources. This allows you to preview what your deployment will look like. You can use this intent to preview how an update would affect your deployment. You must provide a target.config with a configuration if this is set to true. After previewing a deployment, you can deploy your resources by making a request with the update() or you can cancelPreview() to remove the preview altogether. Note that the deployment will still exist after you cancel the preview and you must separately delete this deployment if you want to remove it.", - "default": "false", - "location": "query" - }, - "project": { - "type": "string", - "description": "The project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "deployment" - ], - "request": { - "$ref": "Deployment" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/ndev.cloudman" - ] - } - } - }, - "manifests": { - "methods": { - "get": { - "id": "deploymentmanager.manifests.get", - "path": "{project}/global/deployments/{deployment}/manifests/{manifest}", - "httpMethod": "GET", - "description": "Gets information about a specific manifest.", - "parameters": { - "deployment": { - "type": "string", - "description": "The name of the deployment for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "manifest": { - "type": "string", - "description": "The name of the manifest for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "The project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "deployment", - "manifest" - ], - "response": { - "$ref": "Manifest" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/ndev.cloudman", - "https://www.googleapis.com/auth/ndev.cloudman.readonly" - ] - }, - "list": { - "id": "deploymentmanager.manifests.list", - "path": "{project}/global/deployments/{deployment}/manifests", - "httpMethod": "GET", - "description": "Lists all manifests for a given deployment.", - "parameters": { - "deployment": { - "type": "string", - "description": "The name of the deployment for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "The project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "deployment" - ], - "response": { - "$ref": "ManifestsListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/ndev.cloudman", - "https://www.googleapis.com/auth/ndev.cloudman.readonly" - ] - } - } - }, - "operations": { - "methods": { - "get": { - "id": "deploymentmanager.operations.get", - "path": "{project}/global/operations/{operation}", - "httpMethod": "GET", - "description": "Gets information about a specific operation.", - "parameters": { - "operation": { - "type": "string", - "description": "The name of the operation for this request.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "The project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "operation" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/ndev.cloudman", - "https://www.googleapis.com/auth/ndev.cloudman.readonly" - ] - }, - "list": { - "id": "deploymentmanager.operations.list", - "path": "{project}/global/operations", - "httpMethod": "GET", - "description": "Lists all operations for a project.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "The project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "OperationsListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/ndev.cloudman", - "https://www.googleapis.com/auth/ndev.cloudman.readonly" - ] - } - } - }, - "resources": { - "methods": { - "get": { - "id": "deploymentmanager.resources.get", - "path": "{project}/global/deployments/{deployment}/resources/{resource}", - "httpMethod": "GET", - "description": "Gets information about a single resource.", - "parameters": { - "deployment": { - "type": "string", - "description": "The name of the deployment for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "The project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "resource": { - "type": "string", - "description": "The name of the resource for this request.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "deployment", - "resource" - ], - "response": { - "$ref": "Resource" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/ndev.cloudman", - "https://www.googleapis.com/auth/ndev.cloudman.readonly" - ] - }, - "list": { - "id": "deploymentmanager.resources.list", - "path": "{project}/global/deployments/{deployment}/resources", - "httpMethod": "GET", - "description": "Lists all resources in a given deployment.", - "parameters": { - "deployment": { - "type": "string", - "description": "The name of the deployment for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "The project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "deployment" - ], - "response": { - "$ref": "ResourcesListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/ndev.cloudman", - "https://www.googleapis.com/auth/ndev.cloudman.readonly" - ] - } - } - }, - "typeProviders": { - "methods": { - "delete": { - "id": "deploymentmanager.typeProviders.delete", - "path": "{project}/global/typeProviders/{typeProvider}", - "httpMethod": "DELETE", - "description": "Deletes a type provider.", - "parameters": { - "project": { - "type": "string", - "description": "The project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "typeProvider": { - "type": "string", - "description": "The name of the type provider for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "typeProvider" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/ndev.cloudman" - ] - }, - "get": { - "id": "deploymentmanager.typeProviders.get", - "path": "{project}/global/typeProviders/{typeProvider}", - "httpMethod": "GET", - "description": "Gets information about a specific type provider.", - "parameters": { - "project": { - "type": "string", - "description": "The project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "typeProvider": { - "type": "string", - "description": "The name of the type provider for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "typeProvider" - ], - "response": { - "$ref": "TypeProvider" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/ndev.cloudman", - "https://www.googleapis.com/auth/ndev.cloudman.readonly" - ] - }, - "getType": { - "id": "deploymentmanager.typeProviders.getType", - "path": "{project}/global/typeProviders/{typeProvider}/types/{type}", - "httpMethod": "GET", - "description": "Gets a type info for a type provided by a TypeProvider.", - "parameters": { - "project": { - "type": "string", - "description": "The project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "type": { - "type": "string", - "description": "The name of the type provider for this request.", - "required": true, - "location": "path" - }, - "typeProvider": { - "type": "string", - "description": "The name of the type provider for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "typeProvider", - "type" - ], - "response": { - "$ref": "TypeInfo" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/ndev.cloudman", - "https://www.googleapis.com/auth/ndev.cloudman.readonly" - ] - }, - "insert": { - "id": "deploymentmanager.typeProviders.insert", - "path": "{project}/global/typeProviders", - "httpMethod": "POST", - "description": "Creates a type provider.", - "parameters": { - "project": { - "type": "string", - "description": "The project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "request": { - "$ref": "TypeProvider" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/ndev.cloudman" - ] - }, - "list": { - "id": "deploymentmanager.typeProviders.list", - "path": "{project}/global/typeProviders", - "httpMethod": "GET", - "description": "Lists all resource type providers for Deployment Manager.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "The project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "TypeProvidersListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/ndev.cloudman", - "https://www.googleapis.com/auth/ndev.cloudman.readonly" - ] - }, - "listTypes": { - "id": "deploymentmanager.typeProviders.listTypes", - "path": "{project}/global/typeProviders/{typeProvider}/types", - "httpMethod": "GET", - "description": "Lists all the type info for a TypeProvider.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "The project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "typeProvider": { - "type": "string", - "description": "The name of the type provider for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "typeProvider" - ], - "response": { - "$ref": "TypeProvidersListTypesResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/ndev.cloudman", - "https://www.googleapis.com/auth/ndev.cloudman.readonly" - ] - }, - "patch": { - "id": "deploymentmanager.typeProviders.patch", - "path": "{project}/global/typeProviders/{typeProvider}", - "httpMethod": "PATCH", - "description": "Updates a type provider. This method supports patch semantics.", - "parameters": { - "project": { - "type": "string", - "description": "The project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "typeProvider": { - "type": "string", - "description": "The name of the type provider for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "typeProvider" - ], - "request": { - "$ref": "TypeProvider" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/ndev.cloudman" - ] - }, - "update": { - "id": "deploymentmanager.typeProviders.update", - "path": "{project}/global/typeProviders/{typeProvider}", - "httpMethod": "PUT", - "description": "Updates a type provider.", - "parameters": { - "project": { - "type": "string", - "description": "The project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "typeProvider": { - "type": "string", - "description": "The name of the type provider for this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "typeProvider" - ], - "request": { - "$ref": "TypeProvider" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/ndev.cloudman" - ] - } - } - }, - "types": { - "methods": { - "list": { - "id": "deploymentmanager.types.list", - "path": "{project}/global/types", - "httpMethod": "GET", - "description": "Lists all resource types for Deployment Manager.", - "parameters": { - "filter": { - "type": "string", - "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "default": "500", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", - "location": "query" - }, - "project": { - "type": "string", - "description": "The project ID for this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "TypesListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/ndev.cloudman", - "https://www.googleapis.com/auth/ndev.cloudman.readonly" - ] - } - } - } - } -} + "servicePath": "deploymentmanager/v2beta/projects/", + "title": "Google Cloud Deployment Manager API V2Beta Methods", + "version": "v2beta" +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/deploymentmanager/v2beta/deploymentmanager-gen.go b/vendor/google.golang.org/api/deploymentmanager/v2beta/deploymentmanager-gen.go index f86b3d0c6..61a38977b 100644 --- a/vendor/google.golang.org/api/deploymentmanager/v2beta/deploymentmanager-gen.go +++ b/vendor/google.golang.org/api/deploymentmanager/v2beta/deploymentmanager-gen.go @@ -167,6 +167,40 @@ type TypesService struct { s *Service } +// AsyncOptions: Async options that determine when a resource should +// finish. +type AsyncOptions struct { + // MethodMatch: Method regex where this policy will apply. + MethodMatch string `json:"methodMatch,omitempty"` + + // PollingOptions: Deployment manager will poll instances for this API + // resource setting a RUNNING state, and blocking until polling + // conditions tell whether the resource is completed or failed. + PollingOptions *PollingOptions `json:"pollingOptions,omitempty"` + + // ForceSendFields is a list of field names (e.g. "MethodMatch") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "MethodMatch") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *AsyncOptions) MarshalJSON() ([]byte, error) { + type NoMethod AsyncOptions + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // AuditConfig: Specifies the audit configuration for a service. The // configuration determines which permission types are logged, and what // identities, if any, are exempted from logging. An AuditConfig must @@ -175,7 +209,7 @@ type TypesService struct { // If there are AuditConfigs for both `allServices` and a specific // service, the union of the two AuditConfigs is used for that service: // the log_types specified in each AuditConfig are enabled, and the -// exempted_members in each AuditConfig are exempted. +// exempted_members in each AuditLogConfig are exempted. // // Example Policy with multiple AuditConfigs: // @@ -372,7 +406,8 @@ type Binding struct { // Condition: The condition that is associated with this binding. NOTE: // an unsatisfied condition will not allow user access via current // binding. Different bindings, including their conditions, are examined - // independently. This field is GOOGLE_INTERNAL. + // independently. This field is only visible as GOOGLE_INTERNAL or + // CONDITION_TRUSTED_TESTER. Condition *Expr `json:"condition,omitempty"` // Members: Specifies the identities requesting access for a Cloud @@ -999,6 +1034,37 @@ func (s *DeploymentsStopRequest) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +type Diagnostic struct { + // Field: JsonPath expression on the resource that if non empty, + // indicates that this field needs to be extracted as a diagnostic. + Field string `json:"field,omitempty"` + + // Level: Level to record this diagnostic. + Level string `json:"level,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Field") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Field") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *Diagnostic) MarshalJSON() ([]byte, error) { + type NoMethod Diagnostic + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // Expr: Represents an expression text. Example: // // title: "User account presence" description: "Determines whether the @@ -1424,7 +1490,9 @@ type Operation struct { Progress int64 `json:"progress,omitempty"` // Region: [Output Only] The URL of the region where the operation - // resides. Only available when performing regional operations. + // resides. Only available when performing regional operations. You must + // specify this field as part of the HTTP request URL. It is not + // settable as a field in the request body. Region string `json:"region,omitempty"` // SelfLink: [Output Only] Server-defined URL for the resource. @@ -1460,7 +1528,9 @@ type Operation struct { Warnings []*OperationWarnings `json:"warnings,omitempty"` // Zone: [Output Only] The URL of the zone where the operation resides. - // Only available when performing per-zone operations. + // Only available when performing per-zone operations. You must specify + // this field as part of the HTTP request URL. It is not settable as a + // field in the request body. Zone string `json:"zone,omitempty"` // ServerResponse contains the HTTP response code and headers from the @@ -1671,6 +1741,9 @@ func (s *OperationsListResponse) MarshalJSON() ([]byte, error) { // Options: Options allows customized resource handling by Deployment // Manager. type Options struct { + // AsyncOptions: Options regarding how to thread async requests. + AsyncOptions []*AsyncOptions `json:"asyncOptions,omitempty"` + // InputMappings: The mappings that apply for requests. InputMappings []*InputMapping `json:"inputMappings,omitempty"` @@ -1688,7 +1761,7 @@ type Options struct { // field2: type: number VirtualProperties string `json:"virtualProperties,omitempty"` - // ForceSendFields is a list of field names (e.g. "InputMappings") to + // ForceSendFields is a list of field names (e.g. "AsyncOptions") to // unconditionally include in API requests. By default, fields with // empty values are omitted from API requests. However, any non-pointer, // non-interface field appearing in ForceSendFields will be sent to the @@ -1696,7 +1769,7 @@ type Options struct { // used to include empty fields in Patch requests. ForceSendFields []string `json:"-"` - // NullFields is a list of field names (e.g. "InputMappings") to include + // NullFields is a list of field names (e.g. "AsyncOptions") to include // in API requests with the JSON null value. By default, fields with // empty values are omitted from API requests. However, any field with // an empty value appearing in NullFields will be sent to the server as @@ -1732,7 +1805,7 @@ func (s *Options) MarshalJSON() ([]byte, error) { // } // // For a description of IAM and its features, see the [IAM developer's -// guide](https://cloud.google.com/iam). +// guide](https://cloud.google.com/iam/docs). type Policy struct { // AuditConfigs: Specifies cloud audit logging configuration for this // policy. @@ -1767,7 +1840,7 @@ type Policy struct { // denied. Rules []*Rule `json:"rules,omitempty"` - // Version: Version of the `Policy`. The default version is 0. + // Version: Deprecated. Version int64 `json:"version,omitempty"` // ServerResponse contains the HTTP response code and headers from the @@ -1797,6 +1870,50 @@ func (s *Policy) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +type PollingOptions struct { + // Diagnostics: An array of diagnostics to be collected by Deployment + // Manager, these diagnostics will be displayed to the user. + Diagnostics []*Diagnostic `json:"diagnostics,omitempty"` + + // FailCondition: JsonPath expression that determines if the request + // failed. + FailCondition string `json:"failCondition,omitempty"` + + // FinishCondition: JsonPath expression that determines if the request + // is completed. + FinishCondition string `json:"finishCondition,omitempty"` + + // PollingLink: JsonPath expression that evaluates to string, it + // indicates where to poll. + PollingLink string `json:"pollingLink,omitempty"` + + // TargetLink: JsonPath expression, after polling is completed, + // indicates where to fetch the resource. + TargetLink string `json:"targetLink,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Diagnostics") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Diagnostics") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *PollingOptions) MarshalJSON() ([]byte, error) { + type NoMethod PollingOptions + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + type Resource struct { // AccessControl: The Access Control Policy set on this resource. AccessControl *ResourceAccessControl `json:"accessControl,omitempty"` @@ -2631,7 +2748,13 @@ type TypeProvider struct { // ([a-z]([-a-z0-9]*[a-z0-9])?)? Labels []*TypeProviderLabelEntry `json:"labels,omitempty"` - // Name: Name of the type provider. + // Name: Name of the resource; provided by the client when the resource + // is created. The name must be 1-63 characters long, and comply with + // RFC1035. Specifically, the name must be 1-63 characters long and + // match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means + // the first character must be a lowercase letter, and all following + // characters must be a dash, lowercase letter, or digit, except the + // last character, which cannot be a dash. Name string `json:"name,omitempty"` // Operation: Output only. The Operation that most recently ran, or is @@ -3285,32 +3408,28 @@ func (r *CompositeTypesService) List(project string) *CompositeTypesListCall { return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *CompositeTypesListCall) Filter(filter string) *CompositeTypesListCall { c.urlParams_.Set("filter", filter) return c @@ -3454,7 +3573,7 @@ func (c *CompositeTypesListCall) Do(opts ...googleapi.CallOption) (*CompositeTyp // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -4097,7 +4216,6 @@ func (c *DeploymentsDeleteCall) Do(opts ...googleapi.CallOption) (*Operation, er // "deployment": { // "description": "The name of the deployment for this request.", // "location": "path", - // "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", // "required": true, // "type": "string" // }, @@ -4444,6 +4562,18 @@ func (r *DeploymentsService) Insert(project string, deployment *Deployment) *Dep return c } +// CreatePolicy sets the optional parameter "createPolicy": Sets the +// policy to use for creating new resources. +// +// Possible values: +// "ACQUIRE" +// "CREATE" +// "CREATE_OR_ACQUIRE" (default) +func (c *DeploymentsInsertCall) CreatePolicy(createPolicy string) *DeploymentsInsertCall { + c.urlParams_.Set("createPolicy", createPolicy) + return c +} + // Preview sets the optional parameter "preview": If set to true, // creates a deployment and creates "shell" resources but does not // actually instantiate these resources. This allows you to preview what @@ -4551,6 +4681,22 @@ func (c *DeploymentsInsertCall) Do(opts ...googleapi.CallOption) (*Operation, er // "project" // ], // "parameters": { + // "createPolicy": { + // "default": "CREATE_OR_ACQUIRE", + // "description": "Sets the policy to use for creating new resources.", + // "enum": [ + // "ACQUIRE", + // "CREATE", + // "CREATE_OR_ACQUIRE" + // ], + // "enumDescriptions": [ + // "", + // "", + // "" + // ], + // "location": "query", + // "type": "string" + // }, // "preview": { // "description": "If set to true, creates a deployment and creates \"shell\" resources but does not actually instantiate these resources. This allows you to preview what your deployment looks like. After previewing a deployment, you can deploy your resources by making a request with the update() method or you can use the cancelPreview() method to cancel the preview altogether. Note that the deployment will still exist after you cancel the preview and you must separately delete this deployment if you want to remove it.", // "location": "query", @@ -4597,32 +4743,28 @@ func (r *DeploymentsService) List(project string) *DeploymentsListCall { return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *DeploymentsListCall) Filter(filter string) *DeploymentsListCall { c.urlParams_.Set("filter", filter) return c @@ -4766,7 +4908,7 @@ func (c *DeploymentsListCall) Do(opts ...googleapi.CallOption) (*DeploymentsList // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -4858,6 +5000,7 @@ func (r *DeploymentsService) Patch(project string, deployment string, deployment // // Possible values: // "ACQUIRE" +// "CREATE" // "CREATE_OR_ACQUIRE" (default) func (c *DeploymentsPatchCall) CreatePolicy(createPolicy string) *DeploymentsPatchCall { c.urlParams_.Set("createPolicy", createPolicy) @@ -4991,10 +5134,12 @@ func (c *DeploymentsPatchCall) Do(opts ...googleapi.CallOption) (*Operation, err // "description": "Sets the policy to use for creating new resources.", // "enum": [ // "ACQUIRE", + // "CREATE", // "CREATE_OR_ACQUIRE" // ], // "enumDescriptions": [ // "", + // "", // "" // ], // "location": "query", @@ -5519,6 +5664,7 @@ func (r *DeploymentsService) Update(project string, deployment string, deploymen // // Possible values: // "ACQUIRE" +// "CREATE" // "CREATE_OR_ACQUIRE" (default) func (c *DeploymentsUpdateCall) CreatePolicy(createPolicy string) *DeploymentsUpdateCall { c.urlParams_.Set("createPolicy", createPolicy) @@ -5652,10 +5798,12 @@ func (c *DeploymentsUpdateCall) Do(opts ...googleapi.CallOption) (*Operation, er // "description": "Sets the policy to use for creating new resources.", // "enum": [ // "ACQUIRE", + // "CREATE", // "CREATE_OR_ACQUIRE" // ], // "enumDescriptions": [ // "", + // "", // "" // ], // "location": "query", @@ -5894,32 +6042,28 @@ func (r *ManifestsService) List(project string, deployment string) *ManifestsLis return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *ManifestsListCall) Filter(filter string) *ManifestsListCall { c.urlParams_.Set("filter", filter) return c @@ -6072,7 +6216,7 @@ func (c *ManifestsListCall) Do(opts ...googleapi.CallOption) (*ManifestsListResp // "type": "string" // }, // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -6306,32 +6450,28 @@ func (r *OperationsService) List(project string) *OperationsListCall { return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *OperationsListCall) Filter(filter string) *OperationsListCall { c.urlParams_.Set("filter", filter) return c @@ -6475,7 +6615,7 @@ func (c *OperationsListCall) Do(opts ...googleapi.CallOption) (*OperationsListRe // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -6722,32 +6862,28 @@ func (r *ResourcesService) List(project string, deployment string) *ResourcesLis return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *ResourcesListCall) Filter(filter string) *ResourcesListCall { c.urlParams_.Set("filter", filter) return c @@ -6900,7 +7036,7 @@ func (c *ResourcesListCall) Do(opts ...googleapi.CallOption) (*ResourcesListResp // "type": "string" // }, // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -7568,32 +7704,28 @@ func (r *TypeProvidersService) List(project string) *TypeProvidersListCall { return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *TypeProvidersListCall) Filter(filter string) *TypeProvidersListCall { c.urlParams_.Set("filter", filter) return c @@ -7737,7 +7869,7 @@ func (c *TypeProvidersListCall) Do(opts ...googleapi.CallOption) (*TypeProviders // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -7822,32 +7954,28 @@ func (r *TypeProvidersService) ListTypes(project string, typeProvider string) *T return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *TypeProvidersListTypesCall) Filter(filter string) *TypeProvidersListTypesCall { c.urlParams_.Set("filter", filter) return c @@ -7993,7 +8121,7 @@ func (c *TypeProvidersListTypesCall) Do(opts ...googleapi.CallOption) (*TypeProv // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, @@ -8375,32 +8503,28 @@ func (r *TypesService) List(project string) *TypesListCall { return c } -// Filter sets the optional parameter "filter": Sets a filter -// {expression} for filtering listed resources. Your {expression} must -// be in the format: field_name comparison_string literal_string. +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. The expression must specify +// the field name, a comparison operator, and the value that you want to +// use for filtering. The value must be a string, a number, or a +// boolean. The comparison operator must be either =, !=, >, or <. // -// The field_name is the name of the field you want to compare. Only -// atomic field types are supported (string, number, boolean). The -// comparison_string must be either eq (equals) or ne (not equals). The -// literal_string is the string value to filter to. The literal value -// must be valid for the type of field you are filtering by (string, -// number, boolean). For string fields, the literal value is interpreted -// as a regular expression using RE2 syntax. The literal value must -// match the entire field. +// For example, if you are filtering Compute Engine instances, you can +// exclude instances named example-instance by specifying name != +// example-instance. // -// For example, to filter for instances that do not have a name of -// example-instance, you would use name ne example-instance. -// -// You can filter on nested fields. For example, you could filter on -// instances that have set the scheduling.automaticRestart field to -// true. Use filtering on nested fields to take advantage of labels to -// organize and search for results based on label values. +// You can also filter nested fields. For example, you could specify +// scheduling.automaticRestart = false to include instances only if they +// are not scheduled for automatic restarts. You can use filtering on +// nested fields to filter based on resource labels. // // To filter on multiple expressions, provide each separate expression -// within parentheses. For example, (scheduling.automaticRestart eq -// true) (zone eq us-central1-f). Multiple expressions are treated as -// AND expressions, meaning that resources must match all expressions to -// pass the filters. +// within parentheses. For example, (scheduling.automaticRestart = true) +// (cpuPlatform = "Intel Skylake"). By default, each expression is an +// AND expression. However, you can include AND and OR expressions +// explicitly. For example, (cpuPlatform = "Intel Skylake") OR +// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = +// true). func (c *TypesListCall) Filter(filter string) *TypesListCall { c.urlParams_.Set("filter", filter) return c @@ -8544,7 +8668,7 @@ func (c *TypesListCall) Do(opts ...googleapi.CallOption) (*TypesListResponse, er // ], // "parameters": { // "filter": { - // "description": "Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + // "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", // "location": "query", // "type": "string" // }, diff --git a/vendor/google.golang.org/api/dfareporting/v2.7/dfareporting-gen.go b/vendor/google.golang.org/api/dfareporting/v2.7/dfareporting-gen.go index d3c02da80..bf0d39e21 100644 --- a/vendor/google.golang.org/api/dfareporting/v2.7/dfareporting-gen.go +++ b/vendor/google.golang.org/api/dfareporting/v2.7/dfareporting-gen.go @@ -23106,11 +23106,12 @@ func (c *CreativeAssetsInsertCall) doRequest(alt string) (*http.Response, error) body = new(bytes.Buffer) reqHeaders.Set("Content-Type", "application/json") } - body, cleanup := c.mediaInfo_.UploadRequest(reqHeaders, body) + body, getBody, cleanup := c.mediaInfo_.UploadRequest(reqHeaders, body) defer cleanup() urls += "?" + c.urlParams_.Encode() req, _ := http.NewRequest("POST", urls, body) req.Header = reqHeaders + gensupport.SetGetBody(req, getBody) googleapi.Expand(req.URL, map[string]string{ "profileId": strconv.FormatInt(c.profileId, 10), "advertiserId": strconv.FormatInt(c.advertiserId, 10), diff --git a/vendor/google.golang.org/api/dfareporting/v2.8/dfareporting-api.json b/vendor/google.golang.org/api/dfareporting/v2.8/dfareporting-api.json index 252e98acc..07b43977e 100644 --- a/vendor/google.golang.org/api/dfareporting/v2.8/dfareporting-api.json +++ b/vendor/google.golang.org/api/dfareporting/v2.8/dfareporting-api.json @@ -1,19730 +1,19730 @@ { - "kind": "discovery#restDescription", - "etag": "\"YWOzh2SDasdU84ArJnpYek-OMdg/4goAvA_o9T_Nbyckne-XIOvJ_sE\"", - "discoveryVersion": "v1", - "id": "dfareporting:v2.8", - "name": "dfareporting", - "version": "v2.8", - "revision": "20171109", - "title": "DCM/DFA Reporting And Trafficking API", - "description": "Manages your DoubleClick Campaign Manager ad campaigns and reports.", - "ownerDomain": "google.com", - "ownerName": "Google", - "icons": { - "x16": "https://www.google.com/images/icons/product/doubleclick-16.gif", - "x32": "https://www.google.com/images/icons/product/doubleclick-32.gif" - }, - "documentationLink": "https://developers.google.com/doubleclick-advertisers/", - "protocol": "rest", - "baseUrl": "https://www.googleapis.com/dfareporting/v2.8/", - "basePath": "/dfareporting/v2.8/", - "rootUrl": "https://www.googleapis.com/", - "servicePath": "dfareporting/v2.8/", - "batchPath": "batch/dfareporting/v2.8", - "parameters": { - "alt": { - "type": "string", - "description": "Data format for the response.", - "default": "json", - "enum": [ - "json" - ], - "enumDescriptions": [ - "Responses with Content-Type of application/json" - ], - "location": "query" - }, - "fields": { - "type": "string", - "description": "Selector specifying which fields to include in a partial response.", - "location": "query" - }, - "key": { - "type": "string", - "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" - }, - "oauth_token": { - "type": "string", - "description": "OAuth 2.0 token for the current user.", - "location": "query" - }, - "prettyPrint": { - "type": "boolean", - "description": "Returns response with indentations and line breaks.", - "default": "true", - "location": "query" - }, - "quotaUser": { - "type": "string", - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", - "location": "query" - }, - "userIp": { - "type": "string", - "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", - "location": "query" - } - }, - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/ddmconversions": { - "description": "Manage DoubleClick Digital Marketing conversions" - }, - "https://www.googleapis.com/auth/dfareporting": { - "description": "View and manage DoubleClick for Advertisers reports" - }, - "https://www.googleapis.com/auth/dfatrafficking": { - "description": "View and manage your DoubleClick Campaign Manager's (DCM) display ad campaigns" + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/ddmconversions": { + "description": "Manage DoubleClick Digital Marketing conversions" + }, + "https://www.googleapis.com/auth/dfareporting": { + "description": "View and manage DoubleClick for Advertisers reports" + }, + "https://www.googleapis.com/auth/dfatrafficking": { + "description": "View and manage your DoubleClick Campaign Manager's (DCM) display ad campaigns" + } + } } - } - } - }, - "schemas": { - "Account": { - "id": "Account", - "type": "object", - "description": "Contains properties of a DCM account.", - "properties": { - "accountPermissionIds": { - "type": "array", - "description": "Account permissions assigned to this account.", - "items": { - "type": "string", - "format": "int64" - } - }, - "accountProfile": { - "type": "string", - "description": "Profile for this account. This is a read-only field that can be left blank.", - "enum": [ - "ACCOUNT_PROFILE_BASIC", - "ACCOUNT_PROFILE_STANDARD" - ], - "enumDescriptions": [ - "", - "" - ] - }, - "active": { - "type": "boolean", - "description": "Whether this account is active." - }, - "activeAdsLimitTier": { - "type": "string", - "description": "Maximum number of active ads allowed for this account.", - "enum": [ - "ACTIVE_ADS_TIER_100K", - "ACTIVE_ADS_TIER_1M", - "ACTIVE_ADS_TIER_200K", - "ACTIVE_ADS_TIER_300K", - "ACTIVE_ADS_TIER_40K", - "ACTIVE_ADS_TIER_500K", - "ACTIVE_ADS_TIER_750K", - "ACTIVE_ADS_TIER_75K" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "activeViewOptOut": { - "type": "boolean", - "description": "Whether to serve creatives with Active View tags. If disabled, viewability data will not be available for any impressions." - }, - "availablePermissionIds": { - "type": "array", - "description": "User role permissions available to the user roles of this account.", - "items": { - "type": "string", - "format": "int64" - } - }, - "countryId": { - "type": "string", - "description": "ID of the country associated with this account.", - "format": "int64" - }, - "currencyId": { - "type": "string", - "description": "ID of currency associated with this account. This is a required field.\nAcceptable values are: \n- \"1\" for USD \n- \"2\" for GBP \n- \"3\" for ESP \n- \"4\" for SEK \n- \"5\" for CAD \n- \"6\" for JPY \n- \"7\" for DEM \n- \"8\" for AUD \n- \"9\" for FRF \n- \"10\" for ITL \n- \"11\" for DKK \n- \"12\" for NOK \n- \"13\" for FIM \n- \"14\" for ZAR \n- \"15\" for IEP \n- \"16\" for NLG \n- \"17\" for EUR \n- \"18\" for KRW \n- \"19\" for TWD \n- \"20\" for SGD \n- \"21\" for CNY \n- \"22\" for HKD \n- \"23\" for NZD \n- \"24\" for MYR \n- \"25\" for BRL \n- \"26\" for PTE \n- \"27\" for MXP \n- \"28\" for CLP \n- \"29\" for TRY \n- \"30\" for ARS \n- \"31\" for PEN \n- \"32\" for ILS \n- \"33\" for CHF \n- \"34\" for VEF \n- \"35\" for COP \n- \"36\" for GTQ \n- \"37\" for PLN \n- \"39\" for INR \n- \"40\" for THB \n- \"41\" for IDR \n- \"42\" for CZK \n- \"43\" for RON \n- \"44\" for HUF \n- \"45\" for RUB \n- \"46\" for AED \n- \"47\" for BGN \n- \"48\" for HRK \n- \"49\" for MXN \n- \"50\" for NGN", - "format": "int64" - }, - "defaultCreativeSizeId": { - "type": "string", - "description": "Default placement dimensions for this account.", - "format": "int64" - }, - "description": { - "type": "string", - "description": "Description of this account." - }, - "id": { - "type": "string", - "description": "ID of this account. This is a read-only, auto-generated field.", - "format": "int64" - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#account\".", - "default": "dfareporting#account" - }, - "locale": { - "type": "string", - "description": "Locale of this account.\nAcceptable values are: \n- \"cs\" (Czech) \n- \"de\" (German) \n- \"en\" (English) \n- \"en-GB\" (English United Kingdom) \n- \"es\" (Spanish) \n- \"fr\" (French) \n- \"it\" (Italian) \n- \"ja\" (Japanese) \n- \"ko\" (Korean) \n- \"pl\" (Polish) \n- \"pt-BR\" (Portuguese Brazil) \n- \"ru\" (Russian) \n- \"sv\" (Swedish) \n- \"tr\" (Turkish) \n- \"zh-CN\" (Chinese Simplified) \n- \"zh-TW\" (Chinese Traditional)" - }, - "maximumImageSize": { - "type": "string", - "description": "Maximum image size allowed for this account, in kilobytes. Value must be greater than or equal to 1.", - "format": "int64" - }, - "name": { - "type": "string", - "description": "Name of this account. This is a required field, and must be less than 128 characters long and be globally unique." - }, - "nielsenOcrEnabled": { - "type": "boolean", - "description": "Whether campaigns created in this account will be enabled for Nielsen OCR reach ratings by default." - }, - "reportsConfiguration": { - "$ref": "ReportsConfiguration", - "description": "Reporting configuration of this account." - }, - "shareReportsWithTwitter": { - "type": "boolean", - "description": "Share Path to Conversion reports with Twitter." - }, - "teaserSizeLimit": { - "type": "string", - "description": "File size limit in kilobytes of Rich Media teaser creatives. Acceptable values are 1 to 10240, inclusive.", - "format": "int64" - } - } }, - "AccountActiveAdSummary": { - "id": "AccountActiveAdSummary", - "type": "object", - "description": "Gets a summary of active ads in an account.", - "properties": { - "accountId": { - "type": "string", - "description": "ID of the account.", - "format": "int64" - }, - "activeAds": { - "type": "string", - "description": "Ads that have been activated for the account", - "format": "int64" - }, - "activeAdsLimitTier": { - "type": "string", - "description": "Maximum number of active ads allowed for the account.", - "enum": [ - "ACTIVE_ADS_TIER_100K", - "ACTIVE_ADS_TIER_1M", - "ACTIVE_ADS_TIER_200K", - "ACTIVE_ADS_TIER_300K", - "ACTIVE_ADS_TIER_40K", - "ACTIVE_ADS_TIER_500K", - "ACTIVE_ADS_TIER_750K", - "ACTIVE_ADS_TIER_75K" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "availableAds": { - "type": "string", - "description": "Ads that can be activated for the account.", - "format": "int64" - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#accountActiveAdSummary\".", - "default": "dfareporting#accountActiveAdSummary" - } - } + "basePath": "/dfareporting/v2.8/", + "baseUrl": "https://www.googleapis.com/dfareporting/v2.8/", + "batchPath": "batch/dfareporting/v2.8", + "description": "Manages your DoubleClick Campaign Manager ad campaigns and reports.", + "discoveryVersion": "v1", + "documentationLink": "https://developers.google.com/doubleclick-advertisers/", + "etag": "\"-iA1DTNe4s-I6JZXPt1t1Ypy8IU/4goAvA_o9T_Nbyckne-XIOvJ_sE\"", + "icons": { + "x16": "https://www.google.com/images/icons/product/doubleclick-16.gif", + "x32": "https://www.google.com/images/icons/product/doubleclick-32.gif" }, - "AccountPermission": { - "id": "AccountPermission", - "type": "object", - "description": "AccountPermissions contains information about a particular account permission. Some features of DCM require an account permission to be present in the account.", - "properties": { - "accountProfiles": { - "type": "array", - "description": "Account profiles associated with this account permission.\n\nPossible values are:\n- \"ACCOUNT_PROFILE_BASIC\"\n- \"ACCOUNT_PROFILE_STANDARD\"", - "items": { - "type": "string", + "id": "dfareporting:v2.8", + "kind": "discovery#restDescription", + "name": "dfareporting", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "alt": { + "default": "json", + "description": "Data format for the response.", "enum": [ - "ACCOUNT_PROFILE_BASIC", - "ACCOUNT_PROFILE_STANDARD" + "json" ], "enumDescriptions": [ - "", - "" - ] - } + "Responses with Content-Type of application/json" + ], + "location": "query", + "type": "string" }, - "id": { - "type": "string", - "description": "ID of this account permission.", - "format": "int64" + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "location": "query", + "type": "string" }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#accountPermission\".", - "default": "dfareporting#accountPermission" + "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" }, - "level": { - "type": "string", - "description": "Administrative level required to enable this account permission.", - "enum": [ - "ADMINISTRATOR", - "USER" - ], - "enumDescriptions": [ - "", - "" - ] + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" }, - "name": { - "type": "string", - "description": "Name of this account permission." + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" }, - "permissionGroupId": { - "type": "string", - "description": "Permission group of this account permission.", - "format": "int64" + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", + "location": "query", + "type": "string" + }, + "userIp": { + "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", + "location": "query", + "type": "string" } - } }, - "AccountPermissionGroup": { - "id": "AccountPermissionGroup", - "type": "object", - "description": "AccountPermissionGroups contains a mapping of permission group IDs to names. A permission group is a grouping of account permissions.", - "properties": { - "id": { - "type": "string", - "description": "ID of this account permission group.", - "format": "int64" + "protocol": "rest", + "resources": { + "accountActiveAdSummaries": { + "methods": { + "get": { + "description": "Gets the account's active ad summary by account ID.", + "httpMethod": "GET", + "id": "dfareporting.accountActiveAdSummaries.get", + "parameterOrder": [ + "profileId", + "summaryAccountId" + ], + "parameters": { + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "summaryAccountId": { + "description": "Account ID.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/accountActiveAdSummaries/{summaryAccountId}", + "response": { + "$ref": "AccountActiveAdSummary" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#accountPermissionGroup\".", - "default": "dfareporting#accountPermissionGroup" - }, - "name": { - "type": "string", - "description": "Name of this account permission group." - } - } - }, - "AccountPermissionGroupsListResponse": { - "id": "AccountPermissionGroupsListResponse", - "type": "object", - "description": "Account Permission Group List Response", - "properties": { "accountPermissionGroups": { - "type": "array", - "description": "Account permission group collection.", - "items": { - "$ref": "AccountPermissionGroup" - } + "methods": { + "get": { + "description": "Gets one account permission group by ID.", + "httpMethod": "GET", + "id": "dfareporting.accountPermissionGroups.get", + "parameterOrder": [ + "profileId", + "id" + ], + "parameters": { + "id": { + "description": "Account permission group ID.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/accountPermissionGroups/{id}", + "response": { + "$ref": "AccountPermissionGroup" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "description": "Retrieves the list of account permission groups.", + "httpMethod": "GET", + "id": "dfareporting.accountPermissionGroups.list", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/accountPermissionGroups", + "response": { + "$ref": "AccountPermissionGroupsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#accountPermissionGroupsListResponse\".", - "default": "dfareporting#accountPermissionGroupsListResponse" - } - } - }, - "AccountPermissionsListResponse": { - "id": "AccountPermissionsListResponse", - "type": "object", - "description": "Account Permission List Response", - "properties": { "accountPermissions": { - "type": "array", - "description": "Account permission collection.", - "items": { - "$ref": "AccountPermission" - } + "methods": { + "get": { + "description": "Gets one account permission by ID.", + "httpMethod": "GET", + "id": "dfareporting.accountPermissions.get", + "parameterOrder": [ + "profileId", + "id" + ], + "parameters": { + "id": { + "description": "Account permission ID.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/accountPermissions/{id}", + "response": { + "$ref": "AccountPermission" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "description": "Retrieves the list of account permissions.", + "httpMethod": "GET", + "id": "dfareporting.accountPermissions.list", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/accountPermissions", + "response": { + "$ref": "AccountPermissionsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#accountPermissionsListResponse\".", - "default": "dfareporting#accountPermissionsListResponse" - } - } - }, - "AccountUserProfile": { - "id": "AccountUserProfile", - "type": "object", - "description": "AccountUserProfiles contains properties of a DCM user profile. This resource is specifically for managing user profiles, whereas UserProfiles is for accessing the API.", - "properties": { - "accountId": { - "type": "string", - "description": "Account ID of the user profile. This is a read-only field that can be left blank.", - "format": "int64" - }, - "active": { - "type": "boolean", - "description": "Whether this user profile is active. This defaults to false, and must be set true on insert for the user profile to be usable." - }, - "advertiserFilter": { - "$ref": "ObjectFilter", - "description": "Filter that describes which advertisers are visible to the user profile." - }, - "campaignFilter": { - "$ref": "ObjectFilter", - "description": "Filter that describes which campaigns are visible to the user profile." - }, - "comments": { - "type": "string", - "description": "Comments for this user profile." - }, - "email": { - "type": "string", - "description": "Email of the user profile. The email addresss must be linked to a Google Account. This field is required on insertion and is read-only after insertion." - }, - "id": { - "type": "string", - "description": "ID of the user profile. This is a read-only, auto-generated field.", - "format": "int64" - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#accountUserProfile\".", - "default": "dfareporting#accountUserProfile" - }, - "locale": { - "type": "string", - "description": "Locale of the user profile. This is a required field.\nAcceptable values are: \n- \"cs\" (Czech) \n- \"de\" (German) \n- \"en\" (English) \n- \"en-GB\" (English United Kingdom) \n- \"es\" (Spanish) \n- \"fr\" (French) \n- \"it\" (Italian) \n- \"ja\" (Japanese) \n- \"ko\" (Korean) \n- \"pl\" (Polish) \n- \"pt-BR\" (Portuguese Brazil)\n- \"ru\" (Russian) \n- \"sv\" (Swedish) \n- \"tr\" (Turkish) \n- \"zh-CN\" (Chinese Simplified) \n- \"zh-TW\" (Chinese Traditional)" - }, - "name": { - "type": "string", - "description": "Name of the user profile. This is a required field. Must be less than 64 characters long, must be globally unique, and cannot contain whitespace or any of the following characters: \"&;\"#%,\"." - }, - "siteFilter": { - "$ref": "ObjectFilter", - "description": "Filter that describes which sites are visible to the user profile." - }, - "subaccountId": { - "type": "string", - "description": "Subaccount ID of the user profile. This is a read-only field that can be left blank.", - "format": "int64" - }, - "traffickerType": { - "type": "string", - "description": "Trafficker type of this user profile.", - "enum": [ - "EXTERNAL_TRAFFICKER", - "INTERNAL_NON_TRAFFICKER", - "INTERNAL_TRAFFICKER" - ], - "enumDescriptions": [ - "", - "", - "" - ] - }, - "userAccessType": { - "type": "string", - "description": "User type of the user profile. This is a read-only field that can be left blank.", - "enum": [ - "INTERNAL_ADMINISTRATOR", - "NORMAL_USER", - "READ_ONLY_SUPER_USER", - "SUPER_USER" - ], - "enumDescriptions": [ - "", - "", - "", - "" - ] - }, - "userRoleFilter": { - "$ref": "ObjectFilter", - "description": "Filter that describes which user roles are visible to the user profile." - }, - "userRoleId": { - "type": "string", - "description": "User role ID of the user profile. This is a required field.", - "format": "int64" - } - } - }, - "AccountUserProfilesListResponse": { - "id": "AccountUserProfilesListResponse", - "type": "object", - "description": "Account User Profile List Response", - "properties": { "accountUserProfiles": { - "type": "array", - "description": "Account user profile collection.", - "items": { - "$ref": "AccountUserProfile" - } + "methods": { + "get": { + "description": "Gets one account user profile by ID.", + "httpMethod": "GET", + "id": "dfareporting.accountUserProfiles.get", + "parameterOrder": [ + "profileId", + "id" + ], + "parameters": { + "id": { + "description": "User profile ID.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/accountUserProfiles/{id}", + "response": { + "$ref": "AccountUserProfile" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "insert": { + "description": "Inserts a new account user profile.", + "httpMethod": "POST", + "id": "dfareporting.accountUserProfiles.insert", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/accountUserProfiles", + "request": { + "$ref": "AccountUserProfile" + }, + "response": { + "$ref": "AccountUserProfile" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "description": "Retrieves a list of account user profiles, possibly filtered. This method supports paging.", + "httpMethod": "GET", + "id": "dfareporting.accountUserProfiles.list", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "active": { + "description": "Select only active user profiles.", + "location": "query", + "type": "boolean" + }, + "ids": { + "description": "Select only user profiles with these IDs.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "maxResults": { + "default": "1000", + "description": "Maximum number of results to return.", + "format": "int32", + "location": "query", + "maximum": "1000", + "minimum": "0", + "type": "integer" + }, + "pageToken": { + "description": "Value of the nextPageToken from the previous result page.", + "location": "query", + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "searchString": { + "description": "Allows searching for objects by name, ID or email. Wildcards (*) are allowed. For example, \"user profile*2015\" will return objects with names like \"user profile June 2015\", \"user profile April 2015\", or simply \"user profile 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"user profile\" will match objects with name \"my user profile\", \"user profile 2015\", or simply \"user profile\".", + "location": "query", + "type": "string" + }, + "sortField": { + "default": "ID", + "description": "Field by which to sort the list.", + "enum": [ + "ID", + "NAME" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + }, + "sortOrder": { + "default": "ASCENDING", + "description": "Order of sorted results.", + "enum": [ + "ASCENDING", + "DESCENDING" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + }, + "subaccountId": { + "description": "Select only user profiles with the specified subaccount ID.", + "format": "int64", + "location": "query", + "type": "string" + }, + "userRoleId": { + "description": "Select only user profiles with the specified user role ID.", + "format": "int64", + "location": "query", + "type": "string" + } + }, + "path": "userprofiles/{profileId}/accountUserProfiles", + "response": { + "$ref": "AccountUserProfilesListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "patch": { + "description": "Updates an existing account user profile. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "dfareporting.accountUserProfiles.patch", + "parameterOrder": [ + "profileId", + "id" + ], + "parameters": { + "id": { + "description": "User profile ID.", + "format": "int64", + "location": "query", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/accountUserProfiles", + "request": { + "$ref": "AccountUserProfile" + }, + "response": { + "$ref": "AccountUserProfile" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "update": { + "description": "Updates an existing account user profile.", + "httpMethod": "PUT", + "id": "dfareporting.accountUserProfiles.update", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/accountUserProfiles", + "request": { + "$ref": "AccountUserProfile" + }, + "response": { + "$ref": "AccountUserProfile" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#accountUserProfilesListResponse\".", - "default": "dfareporting#accountUserProfilesListResponse" - }, - "nextPageToken": { - "type": "string", - "description": "Pagination token to be used for the next list operation." - } - } - }, - "AccountsListResponse": { - "id": "AccountsListResponse", - "type": "object", - "description": "Account List Response", - "properties": { "accounts": { - "type": "array", - "description": "Account collection.", - "items": { - "$ref": "Account" - } + "methods": { + "get": { + "description": "Gets one account by ID.", + "httpMethod": "GET", + "id": "dfareporting.accounts.get", + "parameterOrder": [ + "profileId", + "id" + ], + "parameters": { + "id": { + "description": "Account ID.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/accounts/{id}", + "response": { + "$ref": "Account" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "description": "Retrieves the list of accounts, possibly filtered. This method supports paging.", + "httpMethod": "GET", + "id": "dfareporting.accounts.list", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "active": { + "description": "Select only active accounts. Don't set this field to select both active and non-active accounts.", + "location": "query", + "type": "boolean" + }, + "ids": { + "description": "Select only accounts with these IDs.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "maxResults": { + "default": "1000", + "description": "Maximum number of results to return.", + "format": "int32", + "location": "query", + "maximum": "1000", + "minimum": "0", + "type": "integer" + }, + "pageToken": { + "description": "Value of the nextPageToken from the previous result page.", + "location": "query", + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "searchString": { + "description": "Allows searching for objects by name or ID. Wildcards (*) are allowed. For example, \"account*2015\" will return objects with names like \"account June 2015\", \"account April 2015\", or simply \"account 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"account\" will match objects with name \"my account\", \"account 2015\", or simply \"account\".", + "location": "query", + "type": "string" + }, + "sortField": { + "default": "ID", + "description": "Field by which to sort the list.", + "enum": [ + "ID", + "NAME" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + }, + "sortOrder": { + "default": "ASCENDING", + "description": "Order of sorted results.", + "enum": [ + "ASCENDING", + "DESCENDING" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + } + }, + "path": "userprofiles/{profileId}/accounts", + "response": { + "$ref": "AccountsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "patch": { + "description": "Updates an existing account. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "dfareporting.accounts.patch", + "parameterOrder": [ + "profileId", + "id" + ], + "parameters": { + "id": { + "description": "Account ID.", + "format": "int64", + "location": "query", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/accounts", + "request": { + "$ref": "Account" + }, + "response": { + "$ref": "Account" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "update": { + "description": "Updates an existing account.", + "httpMethod": "PUT", + "id": "dfareporting.accounts.update", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/accounts", + "request": { + "$ref": "Account" + }, + "response": { + "$ref": "Account" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#accountsListResponse\".", - "default": "dfareporting#accountsListResponse" - }, - "nextPageToken": { - "type": "string", - "description": "Pagination token to be used for the next list operation." - } - } - }, - "Activities": { - "id": "Activities", - "type": "object", - "description": "Represents an activity group.", - "properties": { - "filters": { - "type": "array", - "description": "List of activity filters. The dimension values need to be all either of type \"dfa:activity\" or \"dfa:activityGroup\".", - "items": { - "$ref": "DimensionValue" - } - }, - "kind": { - "type": "string", - "description": "The kind of resource this is, in this case dfareporting#activities.", - "default": "dfareporting#activities" - }, - "metricNames": { - "type": "array", - "description": "List of names of floodlight activity metrics.", - "items": { - "type": "string" - } - } - } - }, - "Ad": { - "id": "Ad", - "type": "object", - "description": "Contains properties of a DCM ad.", - "properties": { - "accountId": { - "type": "string", - "description": "Account ID of this ad. This is a read-only field that can be left blank.", - "format": "int64" - }, - "active": { - "type": "boolean", - "description": "Whether this ad is active. When true, archived must be false." - }, - "advertiserId": { - "type": "string", - "description": "Advertiser ID of this ad. This is a required field on insertion.", - "format": "int64" - }, - "advertiserIdDimensionValue": { - "$ref": "DimensionValue", - "description": "Dimension value for the ID of the advertiser. This is a read-only, auto-generated field." - }, - "archived": { - "type": "boolean", - "description": "Whether this ad is archived. When true, active must be false." - }, - "audienceSegmentId": { - "type": "string", - "description": "Audience segment ID that is being targeted for this ad. Applicable when type is AD_SERVING_STANDARD_AD.", - "format": "int64" - }, - "campaignId": { - "type": "string", - "description": "Campaign ID of this ad. This is a required field on insertion.", - "format": "int64" - }, - "campaignIdDimensionValue": { - "$ref": "DimensionValue", - "description": "Dimension value for the ID of the campaign. This is a read-only, auto-generated field." - }, - "clickThroughUrl": { - "$ref": "ClickThroughUrl", - "description": "Click-through URL for this ad. This is a required field on insertion. Applicable when type is AD_SERVING_CLICK_TRACKER." - }, - "clickThroughUrlSuffixProperties": { - "$ref": "ClickThroughUrlSuffixProperties", - "description": "Click-through URL suffix properties for this ad. Applies to the URL in the ad or (if overriding ad properties) the URL in the creative." - }, - "comments": { - "type": "string", - "description": "Comments for this ad." - }, - "compatibility": { - "type": "string", - "description": "Compatibility of this ad. Applicable when type is AD_SERVING_DEFAULT_AD. DISPLAY and DISPLAY_INTERSTITIAL refer to either rendering on desktop or on mobile devices or in mobile apps for regular or interstitial ads, respectively. APP and APP_INTERSTITIAL are only used for existing default ads. New mobile placements must be assigned DISPLAY or DISPLAY_INTERSTITIAL and default ads created for those placements will be limited to those compatibility types. IN_STREAM_VIDEO refers to rendering in-stream video ads developed with the VAST standard.", - "enum": [ - "APP", - "APP_INTERSTITIAL", - "DISPLAY", - "DISPLAY_INTERSTITIAL", - "IN_STREAM_VIDEO" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "" - ] - }, - "createInfo": { - "$ref": "LastModifiedInfo", - "description": "Information about the creation of this ad. This is a read-only field." - }, - "creativeGroupAssignments": { - "type": "array", - "description": "Creative group assignments for this ad. Applicable when type is AD_SERVING_CLICK_TRACKER. Only one assignment per creative group number is allowed for a maximum of two assignments.", - "items": { - "$ref": "CreativeGroupAssignment" - } - }, - "creativeRotation": { - "$ref": "CreativeRotation", - "description": "Creative rotation for this ad. Applicable when type is AD_SERVING_DEFAULT_AD, AD_SERVING_STANDARD_AD, or AD_SERVING_TRACKING. When type is AD_SERVING_DEFAULT_AD, this field should have exactly one creativeAssignment." - }, - "dayPartTargeting": { - "$ref": "DayPartTargeting", - "description": "Time and day targeting information for this ad. This field must be left blank if the ad is using a targeting template. Applicable when type is AD_SERVING_STANDARD_AD." - }, - "defaultClickThroughEventTagProperties": { - "$ref": "DefaultClickThroughEventTagProperties", - "description": "Default click-through event tag properties for this ad." - }, - "deliverySchedule": { - "$ref": "DeliverySchedule", - "description": "Delivery schedule information for this ad. Applicable when type is AD_SERVING_STANDARD_AD or AD_SERVING_TRACKING. This field along with subfields priority and impressionRatio are required on insertion when type is AD_SERVING_STANDARD_AD." - }, - "dynamicClickTracker": { - "type": "boolean", - "description": "Whether this ad is a dynamic click tracker. Applicable when type is AD_SERVING_CLICK_TRACKER. This is a required field on insert, and is read-only after insert." - }, - "endTime": { - "type": "string", - "description": "Date and time that this ad should stop serving. Must be later than the start time. This is a required field on insertion.", - "format": "date-time" - }, - "eventTagOverrides": { - "type": "array", - "description": "Event tag overrides for this ad.", - "items": { - "$ref": "EventTagOverride" - } - }, - "geoTargeting": { - "$ref": "GeoTargeting", - "description": "Geographical targeting information for this ad. This field must be left blank if the ad is using a targeting template. Applicable when type is AD_SERVING_STANDARD_AD." - }, - "id": { - "type": "string", - "description": "ID of this ad. This is a read-only, auto-generated field.", - "format": "int64" - }, - "idDimensionValue": { - "$ref": "DimensionValue", - "description": "Dimension value for the ID of this ad. This is a read-only, auto-generated field." - }, - "keyValueTargetingExpression": { - "$ref": "KeyValueTargetingExpression", - "description": "Key-value targeting information for this ad. This field must be left blank if the ad is using a targeting template. Applicable when type is AD_SERVING_STANDARD_AD." - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#ad\".", - "default": "dfareporting#ad" - }, - "languageTargeting": { - "$ref": "LanguageTargeting", - "description": "Language targeting information for this ad. This field must be left blank if the ad is using a targeting template. Applicable when type is AD_SERVING_STANDARD_AD." - }, - "lastModifiedInfo": { - "$ref": "LastModifiedInfo", - "description": "Information about the most recent modification of this ad. This is a read-only field." - }, - "name": { - "type": "string", - "description": "Name of this ad. This is a required field and must be less than 256 characters long." - }, - "placementAssignments": { - "type": "array", - "description": "Placement assignments for this ad.", - "items": { - "$ref": "PlacementAssignment" - } - }, - "remarketingListExpression": { - "$ref": "ListTargetingExpression", - "description": "Remarketing list targeting expression for this ad. This field must be left blank if the ad is using a targeting template. Applicable when type is AD_SERVING_STANDARD_AD." - }, - "size": { - "$ref": "Size", - "description": "Size of this ad. Applicable when type is AD_SERVING_DEFAULT_AD." - }, - "sslCompliant": { - "type": "boolean", - "description": "Whether this ad is ssl compliant. This is a read-only field that is auto-generated when the ad is inserted or updated." - }, - "sslRequired": { - "type": "boolean", - "description": "Whether this ad requires ssl. This is a read-only field that is auto-generated when the ad is inserted or updated." - }, - "startTime": { - "type": "string", - "description": "Date and time that this ad should start serving. If creating an ad, this field must be a time in the future. This is a required field on insertion.", - "format": "date-time" - }, - "subaccountId": { - "type": "string", - "description": "Subaccount ID of this ad. This is a read-only field that can be left blank.", - "format": "int64" - }, - "targetingTemplateId": { - "type": "string", - "description": "Targeting template ID, used to apply preconfigured targeting information to this ad. This cannot be set while any of dayPartTargeting, geoTargeting, keyValueTargetingExpression, languageTargeting, remarketingListExpression, or technologyTargeting are set. Applicable when type is AD_SERVING_STANDARD_AD.", - "format": "int64" - }, - "technologyTargeting": { - "$ref": "TechnologyTargeting", - "description": "Technology platform targeting information for this ad. This field must be left blank if the ad is using a targeting template. Applicable when type is AD_SERVING_STANDARD_AD." - }, - "type": { - "type": "string", - "description": "Type of ad. This is a required field on insertion. Note that default ads (AD_SERVING_DEFAULT_AD) cannot be created directly (see Creative resource).", - "enum": [ - "AD_SERVING_CLICK_TRACKER", - "AD_SERVING_DEFAULT_AD", - "AD_SERVING_STANDARD_AD", - "AD_SERVING_TRACKING" - ], - "enumDescriptions": [ - "", - "", - "", - "" - ] - } - } - }, - "AdBlockingConfiguration": { - "id": "AdBlockingConfiguration", - "type": "object", - "description": "Campaign ad blocking settings.", - "properties": { - "clickThroughUrl": { - "type": "string", - "description": "Click-through URL used by brand-neutral ads. This is a required field when overrideClickThroughUrl is set to true." - }, - "creativeBundleId": { - "type": "string", - "description": "ID of a creative bundle to use for this campaign. If set, brand-neutral ads will select creatives from this bundle. Otherwise, a default transparent pixel will be used.", - "format": "int64" - }, - "enabled": { - "type": "boolean", - "description": "Whether this campaign has enabled ad blocking. When true, ad blocking is enabled for placements in the campaign, but this may be overridden by site and placement settings. When false, ad blocking is disabled for all placements under the campaign, regardless of site and placement settings." - }, - "overrideClickThroughUrl": { - "type": "boolean", - "description": "Whether the brand-neutral ad's click-through URL comes from the campaign's creative bundle or the override URL. Must be set to true if ad blocking is enabled and no creative bundle is configured." - } - } - }, - "AdSlot": { - "id": "AdSlot", - "type": "object", - "description": "Ad Slot", - "properties": { - "comment": { - "type": "string", - "description": "Comment for this ad slot." - }, - "compatibility": { - "type": "string", - "description": "Ad slot compatibility. DISPLAY and DISPLAY_INTERSTITIAL refer to rendering either on desktop, mobile devices or in mobile apps for regular or interstitial ads respectively. APP and APP_INTERSTITIAL are for rendering in mobile apps. IN_STREAM_VIDEO refers to rendering in in-stream video ads developed with the VAST standard.", - "enum": [ - "APP", - "APP_INTERSTITIAL", - "DISPLAY", - "DISPLAY_INTERSTITIAL", - "IN_STREAM_VIDEO" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "" - ] - }, - "height": { - "type": "string", - "description": "Height of this ad slot.", - "format": "int64" - }, - "linkedPlacementId": { - "type": "string", - "description": "ID of the placement from an external platform that is linked to this ad slot.", - "format": "int64" - }, - "name": { - "type": "string", - "description": "Name of this ad slot." - }, - "paymentSourceType": { - "type": "string", - "description": "Payment source type of this ad slot.", - "enum": [ - "PLANNING_PAYMENT_SOURCE_TYPE_AGENCY_PAID", - "PLANNING_PAYMENT_SOURCE_TYPE_PUBLISHER_PAID" - ], - "enumDescriptions": [ - "", - "" - ] - }, - "primary": { - "type": "boolean", - "description": "Primary ad slot of a roadblock inventory item." - }, - "width": { - "type": "string", - "description": "Width of this ad slot.", - "format": "int64" - } - } - }, - "AdsListResponse": { - "id": "AdsListResponse", - "type": "object", - "description": "Ad List Response", - "properties": { "ads": { - "type": "array", - "description": "Ad collection.", - "items": { - "$ref": "Ad" - } + "methods": { + "get": { + "description": "Gets one ad by ID.", + "httpMethod": "GET", + "id": "dfareporting.ads.get", + "parameterOrder": [ + "profileId", + "id" + ], + "parameters": { + "id": { + "description": "Ad ID.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/ads/{id}", + "response": { + "$ref": "Ad" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "insert": { + "description": "Inserts a new ad.", + "httpMethod": "POST", + "id": "dfareporting.ads.insert", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/ads", + "request": { + "$ref": "Ad" + }, + "response": { + "$ref": "Ad" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "description": "Retrieves a list of ads, possibly filtered. This method supports paging.", + "httpMethod": "GET", + "id": "dfareporting.ads.list", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "active": { + "description": "Select only active ads.", + "location": "query", + "type": "boolean" + }, + "advertiserId": { + "description": "Select only ads with this advertiser ID.", + "format": "int64", + "location": "query", + "type": "string" + }, + "archived": { + "description": "Select only archived ads.", + "location": "query", + "type": "boolean" + }, + "audienceSegmentIds": { + "description": "Select only ads with these audience segment IDs.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "campaignIds": { + "description": "Select only ads with these campaign IDs.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "compatibility": { + "description": "Select default ads with the specified compatibility. Applicable when type is AD_SERVING_DEFAULT_AD. DISPLAY and DISPLAY_INTERSTITIAL refer to rendering either on desktop or on mobile devices for regular or interstitial ads, respectively. APP and APP_INTERSTITIAL are for rendering in mobile apps. IN_STREAM_VIDEO refers to rendering an in-stream video ads developed with the VAST standard.", + "enum": [ + "APP", + "APP_INTERSTITIAL", + "DISPLAY", + "DISPLAY_INTERSTITIAL", + "IN_STREAM_VIDEO" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "" + ], + "location": "query", + "type": "string" + }, + "creativeIds": { + "description": "Select only ads with these creative IDs assigned.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "creativeOptimizationConfigurationIds": { + "description": "Select only ads with these creative optimization configuration IDs.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "dynamicClickTracker": { + "description": "Select only dynamic click trackers. Applicable when type is AD_SERVING_CLICK_TRACKER. If true, select dynamic click trackers. If false, select static click trackers. Leave unset to select both.", + "location": "query", + "type": "boolean" + }, + "ids": { + "description": "Select only ads with these IDs.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "landingPageIds": { + "description": "Select only ads with these landing page IDs.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "maxResults": { + "default": "1000", + "description": "Maximum number of results to return.", + "format": "int32", + "location": "query", + "maximum": "1000", + "minimum": "0", + "type": "integer" + }, + "overriddenEventTagId": { + "description": "Select only ads with this event tag override ID.", + "format": "int64", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Value of the nextPageToken from the previous result page.", + "location": "query", + "type": "string" + }, + "placementIds": { + "description": "Select only ads with these placement IDs assigned.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "remarketingListIds": { + "description": "Select only ads whose list targeting expression use these remarketing list IDs.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "searchString": { + "description": "Allows searching for objects by name or ID. Wildcards (*) are allowed. For example, \"ad*2015\" will return objects with names like \"ad June 2015\", \"ad April 2015\", or simply \"ad 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"ad\" will match objects with name \"my ad\", \"ad 2015\", or simply \"ad\".", + "location": "query", + "type": "string" + }, + "sizeIds": { + "description": "Select only ads with these size IDs.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "sortField": { + "default": "ID", + "description": "Field by which to sort the list.", + "enum": [ + "ID", + "NAME" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + }, + "sortOrder": { + "default": "ASCENDING", + "description": "Order of sorted results.", + "enum": [ + "ASCENDING", + "DESCENDING" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + }, + "sslCompliant": { + "description": "Select only ads that are SSL-compliant.", + "location": "query", + "type": "boolean" + }, + "sslRequired": { + "description": "Select only ads that require SSL.", + "location": "query", + "type": "boolean" + }, + "type": { + "description": "Select only ads with these types.", + "enum": [ + "AD_SERVING_CLICK_TRACKER", + "AD_SERVING_DEFAULT_AD", + "AD_SERVING_STANDARD_AD", + "AD_SERVING_TRACKING" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ], + "location": "query", + "repeated": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/ads", + "response": { + "$ref": "AdsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "patch": { + "description": "Updates an existing ad. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "dfareporting.ads.patch", + "parameterOrder": [ + "profileId", + "id" + ], + "parameters": { + "id": { + "description": "Ad ID.", + "format": "int64", + "location": "query", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/ads", + "request": { + "$ref": "Ad" + }, + "response": { + "$ref": "Ad" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "update": { + "description": "Updates an existing ad.", + "httpMethod": "PUT", + "id": "dfareporting.ads.update", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/ads", + "request": { + "$ref": "Ad" + }, + "response": { + "$ref": "Ad" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#adsListResponse\".", - "default": "dfareporting#adsListResponse" - }, - "nextPageToken": { - "type": "string", - "description": "Pagination token to be used for the next list operation." - } - } - }, - "Advertiser": { - "id": "Advertiser", - "type": "object", - "description": "Contains properties of a DCM advertiser.", - "properties": { - "accountId": { - "type": "string", - "description": "Account ID of this advertiser.This is a read-only field that can be left blank.", - "format": "int64" - }, - "advertiserGroupId": { - "type": "string", - "description": "ID of the advertiser group this advertiser belongs to. You can group advertisers for reporting purposes, allowing you to see aggregated information for all advertisers in each group.", - "format": "int64" - }, - "clickThroughUrlSuffix": { - "type": "string", - "description": "Suffix added to click-through URL of ad creative associations under this advertiser. Must be less than 129 characters long." - }, - "defaultClickThroughEventTagId": { - "type": "string", - "description": "ID of the click-through event tag to apply by default to the landing pages of this advertiser's campaigns.", - "format": "int64" - }, - "defaultEmail": { - "type": "string", - "description": "Default email address used in sender field for tag emails." - }, - "floodlightConfigurationId": { - "type": "string", - "description": "Floodlight configuration ID of this advertiser. The floodlight configuration ID will be created automatically, so on insert this field should be left blank. This field can be set to another advertiser's floodlight configuration ID in order to share that advertiser's floodlight configuration with this advertiser, so long as: \n- This advertiser's original floodlight configuration is not already associated with floodlight activities or floodlight activity groups. \n- This advertiser's original floodlight configuration is not already shared with another advertiser.", - "format": "int64" - }, - "floodlightConfigurationIdDimensionValue": { - "$ref": "DimensionValue", - "description": "Dimension value for the ID of the floodlight configuration. This is a read-only, auto-generated field." - }, - "id": { - "type": "string", - "description": "ID of this advertiser. This is a read-only, auto-generated field.", - "format": "int64" - }, - "idDimensionValue": { - "$ref": "DimensionValue", - "description": "Dimension value for the ID of this advertiser. This is a read-only, auto-generated field." - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#advertiser\".", - "default": "dfareporting#advertiser" - }, - "name": { - "type": "string", - "description": "Name of this advertiser. This is a required field and must be less than 256 characters long and unique among advertisers of the same account." - }, - "originalFloodlightConfigurationId": { - "type": "string", - "description": "Original floodlight configuration before any sharing occurred. Set the floodlightConfigurationId of this advertiser to originalFloodlightConfigurationId to unshare the advertiser's current floodlight configuration. You cannot unshare an advertiser's floodlight configuration if the shared configuration has activities associated with any campaign or placement.", - "format": "int64" - }, - "status": { - "type": "string", - "description": "Status of this advertiser.", - "enum": [ - "APPROVED", - "ON_HOLD" - ], - "enumDescriptions": [ - "", - "" - ] - }, - "subaccountId": { - "type": "string", - "description": "Subaccount ID of this advertiser.This is a read-only field that can be left blank.", - "format": "int64" - }, - "suspended": { - "type": "boolean", - "description": "Suspension status of this advertiser." - } - } - }, - "AdvertiserGroup": { - "id": "AdvertiserGroup", - "type": "object", - "description": "Groups advertisers together so that reports can be generated for the entire group at once.", - "properties": { - "accountId": { - "type": "string", - "description": "Account ID of this advertiser group. This is a read-only field that can be left blank.", - "format": "int64" - }, - "id": { - "type": "string", - "description": "ID of this advertiser group. This is a read-only, auto-generated field.", - "format": "int64" - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#advertiserGroup\".", - "default": "dfareporting#advertiserGroup" - }, - "name": { - "type": "string", - "description": "Name of this advertiser group. This is a required field and must be less than 256 characters long and unique among advertiser groups of the same account." - } - } - }, - "AdvertiserGroupsListResponse": { - "id": "AdvertiserGroupsListResponse", - "type": "object", - "description": "Advertiser Group List Response", - "properties": { "advertiserGroups": { - "type": "array", - "description": "Advertiser group collection.", - "items": { - "$ref": "AdvertiserGroup" - } + "methods": { + "delete": { + "description": "Deletes an existing advertiser group.", + "httpMethod": "DELETE", + "id": "dfareporting.advertiserGroups.delete", + "parameterOrder": [ + "profileId", + "id" + ], + "parameters": { + "id": { + "description": "Advertiser group ID.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/advertiserGroups/{id}", + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "get": { + "description": "Gets one advertiser group by ID.", + "httpMethod": "GET", + "id": "dfareporting.advertiserGroups.get", + "parameterOrder": [ + "profileId", + "id" + ], + "parameters": { + "id": { + "description": "Advertiser group ID.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/advertiserGroups/{id}", + "response": { + "$ref": "AdvertiserGroup" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "insert": { + "description": "Inserts a new advertiser group.", + "httpMethod": "POST", + "id": "dfareporting.advertiserGroups.insert", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/advertiserGroups", + "request": { + "$ref": "AdvertiserGroup" + }, + "response": { + "$ref": "AdvertiserGroup" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "description": "Retrieves a list of advertiser groups, possibly filtered. This method supports paging.", + "httpMethod": "GET", + "id": "dfareporting.advertiserGroups.list", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "ids": { + "description": "Select only advertiser groups with these IDs.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "maxResults": { + "default": "1000", + "description": "Maximum number of results to return.", + "format": "int32", + "location": "query", + "maximum": "1000", + "minimum": "0", + "type": "integer" + }, + "pageToken": { + "description": "Value of the nextPageToken from the previous result page.", + "location": "query", + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "searchString": { + "description": "Allows searching for objects by name or ID. Wildcards (*) are allowed. For example, \"advertiser*2015\" will return objects with names like \"advertiser group June 2015\", \"advertiser group April 2015\", or simply \"advertiser group 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"advertisergroup\" will match objects with name \"my advertisergroup\", \"advertisergroup 2015\", or simply \"advertisergroup\".", + "location": "query", + "type": "string" + }, + "sortField": { + "default": "ID", + "description": "Field by which to sort the list.", + "enum": [ + "ID", + "NAME" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + }, + "sortOrder": { + "default": "ASCENDING", + "description": "Order of sorted results.", + "enum": [ + "ASCENDING", + "DESCENDING" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + } + }, + "path": "userprofiles/{profileId}/advertiserGroups", + "response": { + "$ref": "AdvertiserGroupsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "patch": { + "description": "Updates an existing advertiser group. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "dfareporting.advertiserGroups.patch", + "parameterOrder": [ + "profileId", + "id" + ], + "parameters": { + "id": { + "description": "Advertiser group ID.", + "format": "int64", + "location": "query", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/advertiserGroups", + "request": { + "$ref": "AdvertiserGroup" + }, + "response": { + "$ref": "AdvertiserGroup" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "update": { + "description": "Updates an existing advertiser group.", + "httpMethod": "PUT", + "id": "dfareporting.advertiserGroups.update", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/advertiserGroups", + "request": { + "$ref": "AdvertiserGroup" + }, + "response": { + "$ref": "AdvertiserGroup" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#advertiserGroupsListResponse\".", - "default": "dfareporting#advertiserGroupsListResponse" - }, - "nextPageToken": { - "type": "string", - "description": "Pagination token to be used for the next list operation." - } - } - }, - "AdvertisersListResponse": { - "id": "AdvertisersListResponse", - "type": "object", - "description": "Advertiser List Response", - "properties": { "advertisers": { - "type": "array", - "description": "Advertiser collection.", - "items": { - "$ref": "Advertiser" - } + "methods": { + "get": { + "description": "Gets one advertiser by ID.", + "httpMethod": "GET", + "id": "dfareporting.advertisers.get", + "parameterOrder": [ + "profileId", + "id" + ], + "parameters": { + "id": { + "description": "Advertiser ID.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/advertisers/{id}", + "response": { + "$ref": "Advertiser" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "insert": { + "description": "Inserts a new advertiser.", + "httpMethod": "POST", + "id": "dfareporting.advertisers.insert", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/advertisers", + "request": { + "$ref": "Advertiser" + }, + "response": { + "$ref": "Advertiser" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "description": "Retrieves a list of advertisers, possibly filtered. This method supports paging.", + "httpMethod": "GET", + "id": "dfareporting.advertisers.list", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "advertiserGroupIds": { + "description": "Select only advertisers with these advertiser group IDs.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "floodlightConfigurationIds": { + "description": "Select only advertisers with these floodlight configuration IDs.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "ids": { + "description": "Select only advertisers with these IDs.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "includeAdvertisersWithoutGroupsOnly": { + "description": "Select only advertisers which do not belong to any advertiser group.", + "location": "query", + "type": "boolean" + }, + "maxResults": { + "default": "1000", + "description": "Maximum number of results to return.", + "format": "int32", + "location": "query", + "maximum": "1000", + "minimum": "0", + "type": "integer" + }, + "onlyParent": { + "description": "Select only advertisers which use another advertiser's floodlight configuration.", + "location": "query", + "type": "boolean" + }, + "pageToken": { + "description": "Value of the nextPageToken from the previous result page.", + "location": "query", + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "searchString": { + "description": "Allows searching for objects by name or ID. Wildcards (*) are allowed. For example, \"advertiser*2015\" will return objects with names like \"advertiser June 2015\", \"advertiser April 2015\", or simply \"advertiser 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"advertiser\" will match objects with name \"my advertiser\", \"advertiser 2015\", or simply \"advertiser\".", + "location": "query", + "type": "string" + }, + "sortField": { + "default": "ID", + "description": "Field by which to sort the list.", + "enum": [ + "ID", + "NAME" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + }, + "sortOrder": { + "default": "ASCENDING", + "description": "Order of sorted results.", + "enum": [ + "ASCENDING", + "DESCENDING" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + }, + "status": { + "description": "Select only advertisers with the specified status.", + "enum": [ + "APPROVED", + "ON_HOLD" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + }, + "subaccountId": { + "description": "Select only advertisers with these subaccount IDs.", + "format": "int64", + "location": "query", + "type": "string" + } + }, + "path": "userprofiles/{profileId}/advertisers", + "response": { + "$ref": "AdvertisersListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "patch": { + "description": "Updates an existing advertiser. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "dfareporting.advertisers.patch", + "parameterOrder": [ + "profileId", + "id" + ], + "parameters": { + "id": { + "description": "Advertiser ID.", + "format": "int64", + "location": "query", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/advertisers", + "request": { + "$ref": "Advertiser" + }, + "response": { + "$ref": "Advertiser" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "update": { + "description": "Updates an existing advertiser.", + "httpMethod": "PUT", + "id": "dfareporting.advertisers.update", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/advertisers", + "request": { + "$ref": "Advertiser" + }, + "response": { + "$ref": "Advertiser" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#advertisersListResponse\".", - "default": "dfareporting#advertisersListResponse" - }, - "nextPageToken": { - "type": "string", - "description": "Pagination token to be used for the next list operation." - } - } - }, - "AudienceSegment": { - "id": "AudienceSegment", - "type": "object", - "description": "Audience Segment.", - "properties": { - "allocation": { - "type": "integer", - "description": "Weight allocated to this segment. The weight assigned will be understood in proportion to the weights assigned to other segments in the same segment group. Acceptable values are 1 to 1000, inclusive.", - "format": "int32" - }, - "id": { - "type": "string", - "description": "ID of this audience segment. This is a read-only, auto-generated field.", - "format": "int64" - }, - "name": { - "type": "string", - "description": "Name of this audience segment. This is a required field and must be less than 65 characters long." - } - } - }, - "AudienceSegmentGroup": { - "id": "AudienceSegmentGroup", - "type": "object", - "description": "Audience Segment Group.", - "properties": { - "audienceSegments": { - "type": "array", - "description": "Audience segments assigned to this group. The number of segments must be between 2 and 100.", - "items": { - "$ref": "AudienceSegment" - } - }, - "id": { - "type": "string", - "description": "ID of this audience segment group. This is a read-only, auto-generated field.", - "format": "int64" - }, - "name": { - "type": "string", - "description": "Name of this audience segment group. This is a required field and must be less than 65 characters long." - } - } - }, - "Browser": { - "id": "Browser", - "type": "object", - "description": "Contains information about a browser that can be targeted by ads.", - "properties": { - "browserVersionId": { - "type": "string", - "description": "ID referring to this grouping of browser and version numbers. This is the ID used for targeting.", - "format": "int64" - }, - "dartId": { - "type": "string", - "description": "DART ID of this browser. This is the ID used when generating reports.", - "format": "int64" - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#browser\".", - "default": "dfareporting#browser" - }, - "majorVersion": { - "type": "string", - "description": "Major version number (leftmost number) of this browser. For example, for Chrome 5.0.376.86 beta, this field should be set to 5. An asterisk (*) may be used to target any version number, and a question mark (?) may be used to target cases where the version number cannot be identified. For example, Chrome *.* targets any version of Chrome: 1.2, 2.5, 3.5, and so on. Chrome 3.* targets Chrome 3.1, 3.5, but not 4.0. Firefox ?.? targets cases where the ad server knows the browser is Firefox but can't tell which version it is." - }, - "minorVersion": { - "type": "string", - "description": "Minor version number (number after first dot on left) of this browser. For example, for Chrome 5.0.375.86 beta, this field should be set to 0. An asterisk (*) may be used to target any version number, and a question mark (?) may be used to target cases where the version number cannot be identified. For example, Chrome *.* targets any version of Chrome: 1.2, 2.5, 3.5, and so on. Chrome 3.* targets Chrome 3.1, 3.5, but not 4.0. Firefox ?.? targets cases where the ad server knows the browser is Firefox but can't tell which version it is." - }, - "name": { - "type": "string", - "description": "Name of this browser." - } - } - }, - "BrowsersListResponse": { - "id": "BrowsersListResponse", - "type": "object", - "description": "Browser List Response", - "properties": { "browsers": { - "type": "array", - "description": "Browser collection.", - "items": { - "$ref": "Browser" - } + "methods": { + "list": { + "description": "Retrieves a list of browsers.", + "httpMethod": "GET", + "id": "dfareporting.browsers.list", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/browsers", + "response": { + "$ref": "BrowsersListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#browsersListResponse\".", - "default": "dfareporting#browsersListResponse" - } - } - }, - "Campaign": { - "id": "Campaign", - "type": "object", - "description": "Contains properties of a DCM campaign.", - "properties": { - "accountId": { - "type": "string", - "description": "Account ID of this campaign. This is a read-only field that can be left blank.", - "format": "int64" - }, - "adBlockingConfiguration": { - "$ref": "AdBlockingConfiguration", - "description": "Ad blocking settings for this campaign." - }, - "additionalCreativeOptimizationConfigurations": { - "type": "array", - "description": "Additional creative optimization configurations for the campaign.", - "items": { - "$ref": "CreativeOptimizationConfiguration" - } - }, - "advertiserGroupId": { - "type": "string", - "description": "Advertiser group ID of the associated advertiser.", - "format": "int64" - }, - "advertiserId": { - "type": "string", - "description": "Advertiser ID of this campaign. This is a required field.", - "format": "int64" - }, - "advertiserIdDimensionValue": { - "$ref": "DimensionValue", - "description": "Dimension value for the advertiser ID of this campaign. This is a read-only, auto-generated field." - }, - "archived": { - "type": "boolean", - "description": "Whether this campaign has been archived." - }, - "audienceSegmentGroups": { - "type": "array", - "description": "Audience segment groups assigned to this campaign. Cannot have more than 300 segment groups.", - "items": { - "$ref": "AudienceSegmentGroup" - } - }, - "billingInvoiceCode": { - "type": "string", - "description": "Billing invoice code included in the DCM client billing invoices associated with the campaign." - }, - "clickThroughUrlSuffixProperties": { - "$ref": "ClickThroughUrlSuffixProperties", - "description": "Click-through URL suffix override properties for this campaign." - }, - "comment": { - "type": "string", - "description": "Arbitrary comments about this campaign. Must be less than 256 characters long." - }, - "createInfo": { - "$ref": "LastModifiedInfo", - "description": "Information about the creation of this campaign. This is a read-only field." - }, - "creativeGroupIds": { - "type": "array", - "description": "List of creative group IDs that are assigned to the campaign.", - "items": { - "type": "string", - "format": "int64" - } - }, - "creativeOptimizationConfiguration": { - "$ref": "CreativeOptimizationConfiguration", - "description": "Creative optimization configuration for the campaign." - }, - "defaultClickThroughEventTagProperties": { - "$ref": "DefaultClickThroughEventTagProperties", - "description": "Click-through event tag ID override properties for this campaign." - }, - "endDate": { - "type": "string", - "description": "Date on which the campaign will stop running. On insert, the end date must be today or a future date. The end date must be later than or be the same as the start date. If, for example, you set 6/25/2015 as both the start and end dates, the effective campaign run date is just that day only, 6/25/2015. The hours, minutes, and seconds of the end date should not be set, as doing so will result in an error. This is a required field.", - "format": "date" - }, - "eventTagOverrides": { - "type": "array", - "description": "Overrides that can be used to activate or deactivate advertiser event tags.", - "items": { - "$ref": "EventTagOverride" - } - }, - "externalId": { - "type": "string", - "description": "External ID for this campaign." - }, - "id": { - "type": "string", - "description": "ID of this campaign. This is a read-only auto-generated field.", - "format": "int64" - }, - "idDimensionValue": { - "$ref": "DimensionValue", - "description": "Dimension value for the ID of this campaign. This is a read-only, auto-generated field." - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#campaign\".", - "default": "dfareporting#campaign" - }, - "lastModifiedInfo": { - "$ref": "LastModifiedInfo", - "description": "Information about the most recent modification of this campaign. This is a read-only field." - }, - "lookbackConfiguration": { - "$ref": "LookbackConfiguration", - "description": "Lookback window settings for the campaign." - }, - "name": { - "type": "string", - "description": "Name of this campaign. This is a required field and must be less than 256 characters long and unique among campaigns of the same advertiser." - }, - "nielsenOcrEnabled": { - "type": "boolean", - "description": "Whether Nielsen reports are enabled for this campaign." - }, - "startDate": { - "type": "string", - "description": "Date on which the campaign starts running. The start date can be any date. The hours, minutes, and seconds of the start date should not be set, as doing so will result in an error. This is a required field.", - "format": "date" - }, - "subaccountId": { - "type": "string", - "description": "Subaccount ID of this campaign. This is a read-only field that can be left blank.", - "format": "int64" - }, - "traffickerEmails": { - "type": "array", - "description": "Campaign trafficker contact emails.", - "items": { - "type": "string" - } - } - } - }, - "CampaignCreativeAssociation": { - "id": "CampaignCreativeAssociation", - "type": "object", - "description": "Identifies a creative which has been associated with a given campaign.", - "properties": { - "creativeId": { - "type": "string", - "description": "ID of the creative associated with the campaign. This is a required field.", - "format": "int64" - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#campaignCreativeAssociation\".", - "default": "dfareporting#campaignCreativeAssociation" - } - } - }, - "CampaignCreativeAssociationsListResponse": { - "id": "CampaignCreativeAssociationsListResponse", - "type": "object", - "description": "Campaign Creative Association List Response", - "properties": { "campaignCreativeAssociations": { - "type": "array", - "description": "Campaign creative association collection", - "items": { - "$ref": "CampaignCreativeAssociation" - } + "methods": { + "insert": { + "description": "Associates a creative with the specified campaign. This method creates a default ad with dimensions matching the creative in the campaign if such a default ad does not exist already.", + "httpMethod": "POST", + "id": "dfareporting.campaignCreativeAssociations.insert", + "parameterOrder": [ + "profileId", + "campaignId" + ], + "parameters": { + "campaignId": { + "description": "Campaign ID in this association.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/campaigns/{campaignId}/campaignCreativeAssociations", + "request": { + "$ref": "CampaignCreativeAssociation" + }, + "response": { + "$ref": "CampaignCreativeAssociation" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "description": "Retrieves the list of creative IDs associated with the specified campaign. This method supports paging.", + "httpMethod": "GET", + "id": "dfareporting.campaignCreativeAssociations.list", + "parameterOrder": [ + "profileId", + "campaignId" + ], + "parameters": { + "campaignId": { + "description": "Campaign ID in this association.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "maxResults": { + "default": "1000", + "description": "Maximum number of results to return.", + "format": "int32", + "location": "query", + "maximum": "1000", + "minimum": "0", + "type": "integer" + }, + "pageToken": { + "description": "Value of the nextPageToken from the previous result page.", + "location": "query", + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "sortOrder": { + "default": "ASCENDING", + "description": "Order of sorted results.", + "enum": [ + "ASCENDING", + "DESCENDING" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + } + }, + "path": "userprofiles/{profileId}/campaigns/{campaignId}/campaignCreativeAssociations", + "response": { + "$ref": "CampaignCreativeAssociationsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#campaignCreativeAssociationsListResponse\".", - "default": "dfareporting#campaignCreativeAssociationsListResponse" - }, - "nextPageToken": { - "type": "string", - "description": "Pagination token to be used for the next list operation." - } - } - }, - "CampaignsListResponse": { - "id": "CampaignsListResponse", - "type": "object", - "description": "Campaign List Response", - "properties": { "campaigns": { - "type": "array", - "description": "Campaign collection.", - "items": { - "$ref": "Campaign" - } + "methods": { + "get": { + "description": "Gets one campaign by ID.", + "httpMethod": "GET", + "id": "dfareporting.campaigns.get", + "parameterOrder": [ + "profileId", + "id" + ], + "parameters": { + "id": { + "description": "Campaign ID.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/campaigns/{id}", + "response": { + "$ref": "Campaign" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "insert": { + "description": "Inserts a new campaign.", + "httpMethod": "POST", + "id": "dfareporting.campaigns.insert", + "parameterOrder": [ + "profileId", + "defaultLandingPageName", + "defaultLandingPageUrl" + ], + "parameters": { + "defaultLandingPageName": { + "description": "Default landing page name for this new campaign. Must be less than 256 characters long.", + "location": "query", + "required": true, + "type": "string" + }, + "defaultLandingPageUrl": { + "description": "Default landing page URL for this new campaign.", + "location": "query", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/campaigns", + "request": { + "$ref": "Campaign" + }, + "response": { + "$ref": "Campaign" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "description": "Retrieves a list of campaigns, possibly filtered. This method supports paging.", + "httpMethod": "GET", + "id": "dfareporting.campaigns.list", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "advertiserGroupIds": { + "description": "Select only campaigns whose advertisers belong to these advertiser groups.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "advertiserIds": { + "description": "Select only campaigns that belong to these advertisers.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "archived": { + "description": "Select only archived campaigns. Don't set this field to select both archived and non-archived campaigns.", + "location": "query", + "type": "boolean" + }, + "atLeastOneOptimizationActivity": { + "description": "Select only campaigns that have at least one optimization activity.", + "location": "query", + "type": "boolean" + }, + "excludedIds": { + "description": "Exclude campaigns with these IDs.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "ids": { + "description": "Select only campaigns with these IDs.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "maxResults": { + "default": "1000", + "description": "Maximum number of results to return.", + "format": "int32", + "location": "query", + "maximum": "1000", + "minimum": "0", + "type": "integer" + }, + "overriddenEventTagId": { + "description": "Select only campaigns that have overridden this event tag ID.", + "format": "int64", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Value of the nextPageToken from the previous result page.", + "location": "query", + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "searchString": { + "description": "Allows searching for campaigns by name or ID. Wildcards (*) are allowed. For example, \"campaign*2015\" will return campaigns with names like \"campaign June 2015\", \"campaign April 2015\", or simply \"campaign 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"campaign\" will match campaigns with name \"my campaign\", \"campaign 2015\", or simply \"campaign\".", + "location": "query", + "type": "string" + }, + "sortField": { + "default": "ID", + "description": "Field by which to sort the list.", + "enum": [ + "ID", + "NAME" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + }, + "sortOrder": { + "default": "ASCENDING", + "description": "Order of sorted results.", + "enum": [ + "ASCENDING", + "DESCENDING" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + }, + "subaccountId": { + "description": "Select only campaigns that belong to this subaccount.", + "format": "int64", + "location": "query", + "type": "string" + } + }, + "path": "userprofiles/{profileId}/campaigns", + "response": { + "$ref": "CampaignsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "patch": { + "description": "Updates an existing campaign. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "dfareporting.campaigns.patch", + "parameterOrder": [ + "profileId", + "id" + ], + "parameters": { + "id": { + "description": "Campaign ID.", + "format": "int64", + "location": "query", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/campaigns", + "request": { + "$ref": "Campaign" + }, + "response": { + "$ref": "Campaign" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "update": { + "description": "Updates an existing campaign.", + "httpMethod": "PUT", + "id": "dfareporting.campaigns.update", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/campaigns", + "request": { + "$ref": "Campaign" + }, + "response": { + "$ref": "Campaign" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#campaignsListResponse\".", - "default": "dfareporting#campaignsListResponse" - }, - "nextPageToken": { - "type": "string", - "description": "Pagination token to be used for the next list operation." - } - } - }, - "ChangeLog": { - "id": "ChangeLog", - "type": "object", - "description": "Describes a change that a user has made to a resource.", - "properties": { - "accountId": { - "type": "string", - "description": "Account ID of the modified object.", - "format": "int64" - }, - "action": { - "type": "string", - "description": "Action which caused the change." - }, - "changeTime": { - "type": "string", - "description": "Time when the object was modified.", - "format": "date-time" - }, - "fieldName": { - "type": "string", - "description": "Field name of the object which changed." - }, - "id": { - "type": "string", - "description": "ID of this change log.", - "format": "int64" - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#changeLog\".", - "default": "dfareporting#changeLog" - }, - "newValue": { - "type": "string", - "description": "New value of the object field." - }, - "objectId": { - "type": "string", - "description": "ID of the object of this change log. The object could be a campaign, placement, ad, or other type.", - "format": "int64" - }, - "objectType": { - "type": "string", - "description": "Object type of the change log." - }, - "oldValue": { - "type": "string", - "description": "Old value of the object field." - }, - "subaccountId": { - "type": "string", - "description": "Subaccount ID of the modified object.", - "format": "int64" - }, - "transactionId": { - "type": "string", - "description": "Transaction ID of this change log. When a single API call results in many changes, each change will have a separate ID in the change log but will share the same transactionId.", - "format": "int64" - }, - "userProfileId": { - "type": "string", - "description": "ID of the user who modified the object.", - "format": "int64" - }, - "userProfileName": { - "type": "string", - "description": "User profile name of the user who modified the object." - } - } - }, - "ChangeLogsListResponse": { - "id": "ChangeLogsListResponse", - "type": "object", - "description": "Change Log List Response", - "properties": { "changeLogs": { - "type": "array", - "description": "Change log collection.", - "items": { - "$ref": "ChangeLog" - } + "methods": { + "get": { + "description": "Gets one change log by ID.", + "httpMethod": "GET", + "id": "dfareporting.changeLogs.get", + "parameterOrder": [ + "profileId", + "id" + ], + "parameters": { + "id": { + "description": "Change log ID.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/changeLogs/{id}", + "response": { + "$ref": "ChangeLog" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "description": "Retrieves a list of change logs. This method supports paging.", + "httpMethod": "GET", + "id": "dfareporting.changeLogs.list", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "action": { + "description": "Select only change logs with the specified action.", + "enum": [ + "ACTION_ADD", + "ACTION_ASSIGN", + "ACTION_ASSOCIATE", + "ACTION_CREATE", + "ACTION_DELETE", + "ACTION_DISABLE", + "ACTION_EMAIL_TAGS", + "ACTION_ENABLE", + "ACTION_LINK", + "ACTION_MARK_AS_DEFAULT", + "ACTION_PUSH", + "ACTION_REMOVE", + "ACTION_SEND", + "ACTION_SHARE", + "ACTION_UNASSIGN", + "ACTION_UNLINK", + "ACTION_UPDATE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "location": "query", + "type": "string" + }, + "ids": { + "description": "Select only change logs with these IDs.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "maxChangeTime": { + "description": "Select only change logs whose change time is before the specified maxChangeTime.The time should be formatted as an RFC3339 date/time string. For example, for 10:54 PM on July 18th, 2015, in the America/New York time zone, the format is \"2015-07-18T22:54:00-04:00\". In other words, the year, month, day, the letter T, the hour (24-hour clock system), minute, second, and then the time zone offset.", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "1000", + "description": "Maximum number of results to return.", + "format": "int32", + "location": "query", + "maximum": "1000", + "minimum": "0", + "type": "integer" + }, + "minChangeTime": { + "description": "Select only change logs whose change time is before the specified minChangeTime.The time should be formatted as an RFC3339 date/time string. For example, for 10:54 PM on July 18th, 2015, in the America/New York time zone, the format is \"2015-07-18T22:54:00-04:00\". In other words, the year, month, day, the letter T, the hour (24-hour clock system), minute, second, and then the time zone offset.", + "location": "query", + "type": "string" + }, + "objectIds": { + "description": "Select only change logs with these object IDs.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "objectType": { + "description": "Select only change logs with the specified object type.", + "enum": [ + "OBJECT_ACCOUNT", + "OBJECT_ACCOUNT_BILLING_FEATURE", + "OBJECT_AD", + "OBJECT_ADVERTISER", + "OBJECT_ADVERTISER_GROUP", + "OBJECT_BILLING_ACCOUNT_GROUP", + "OBJECT_BILLING_FEATURE", + "OBJECT_BILLING_MINIMUM_FEE", + "OBJECT_BILLING_PROFILE", + "OBJECT_CAMPAIGN", + "OBJECT_CONTENT_CATEGORY", + "OBJECT_CREATIVE", + "OBJECT_CREATIVE_ASSET", + "OBJECT_CREATIVE_BUNDLE", + "OBJECT_CREATIVE_FIELD", + "OBJECT_CREATIVE_GROUP", + "OBJECT_DFA_SITE", + "OBJECT_EVENT_TAG", + "OBJECT_FLOODLIGHT_ACTIVITY_GROUP", + "OBJECT_FLOODLIGHT_ACTVITY", + "OBJECT_FLOODLIGHT_CONFIGURATION", + "OBJECT_INSTREAM_CREATIVE", + "OBJECT_LANDING_PAGE", + "OBJECT_MEDIA_ORDER", + "OBJECT_PLACEMENT", + "OBJECT_PLACEMENT_STRATEGY", + "OBJECT_PLAYSTORE_LINK", + "OBJECT_PROVIDED_LIST_CLIENT", + "OBJECT_RATE_CARD", + "OBJECT_REMARKETING_LIST", + "OBJECT_RICHMEDIA_CREATIVE", + "OBJECT_SD_SITE", + "OBJECT_SEARCH_LIFT_STUDY", + "OBJECT_SIZE", + "OBJECT_SUBACCOUNT", + "OBJECT_TARGETING_TEMPLATE", + "OBJECT_USER_PROFILE", + "OBJECT_USER_PROFILE_FILTER", + "OBJECT_USER_ROLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Value of the nextPageToken from the previous result page.", + "location": "query", + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "searchString": { + "description": "Select only change logs whose object ID, user name, old or new values match the search string.", + "location": "query", + "type": "string" + }, + "userProfileIds": { + "description": "Select only change logs with these user profile IDs.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/changeLogs", + "response": { + "$ref": "ChangeLogsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#changeLogsListResponse\".", - "default": "dfareporting#changeLogsListResponse" - }, - "nextPageToken": { - "type": "string", - "description": "Pagination token to be used for the next list operation." - } - } - }, - "CitiesListResponse": { - "id": "CitiesListResponse", - "type": "object", - "description": "City List Response", - "properties": { "cities": { - "type": "array", - "description": "City collection.", - "items": { - "$ref": "City" - } + "methods": { + "list": { + "description": "Retrieves a list of cities, possibly filtered.", + "httpMethod": "GET", + "id": "dfareporting.cities.list", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "countryDartIds": { + "description": "Select only cities from these countries.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "dartIds": { + "description": "Select only cities with these DART IDs.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "namePrefix": { + "description": "Select only cities with names starting with this prefix.", + "location": "query", + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "regionDartIds": { + "description": "Select only cities from these regions.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/cities", + "response": { + "$ref": "CitiesListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#citiesListResponse\".", - "default": "dfareporting#citiesListResponse" - } - } - }, - "City": { - "id": "City", - "type": "object", - "description": "Contains information about a city that can be targeted by ads.", - "properties": { - "countryCode": { - "type": "string", - "description": "Country code of the country to which this city belongs." - }, - "countryDartId": { - "type": "string", - "description": "DART ID of the country to which this city belongs.", - "format": "int64" - }, - "dartId": { - "type": "string", - "description": "DART ID of this city. This is the ID used for targeting and generating reports.", - "format": "int64" - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#city\".", - "default": "dfareporting#city" - }, - "metroCode": { - "type": "string", - "description": "Metro region code of the metro region (DMA) to which this city belongs." - }, - "metroDmaId": { - "type": "string", - "description": "ID of the metro region (DMA) to which this city belongs.", - "format": "int64" - }, - "name": { - "type": "string", - "description": "Name of this city." - }, - "regionCode": { - "type": "string", - "description": "Region code of the region to which this city belongs." - }, - "regionDartId": { - "type": "string", - "description": "DART ID of the region to which this city belongs.", - "format": "int64" - } - } - }, - "ClickTag": { - "id": "ClickTag", - "type": "object", - "description": "Creative Click Tag.", - "properties": { - "eventName": { - "type": "string", - "description": "Advertiser event name associated with the click tag. This field is used by DISPLAY_IMAGE_GALLERY and HTML5_BANNER creatives. Applicable to DISPLAY when the primary asset type is not HTML_IMAGE." - }, - "name": { - "type": "string", - "description": "Parameter name for the specified click tag. For DISPLAY_IMAGE_GALLERY creative assets, this field must match the value of the creative asset's creativeAssetId.name field." - }, - "value": { - "type": "string", - "description": "Parameter value for the specified click tag. This field contains a click-through url." - } - } - }, - "ClickThroughUrl": { - "id": "ClickThroughUrl", - "type": "object", - "description": "Click-through URL", - "properties": { - "computedClickThroughUrl": { - "type": "string", - "description": "Read-only convenience field representing the actual URL that will be used for this click-through. The URL is computed as follows: \n- If defaultLandingPage is enabled then the campaign's default landing page URL is assigned to this field.\n- If defaultLandingPage is not enabled and a landingPageId is specified then that landing page's URL is assigned to this field.\n- If neither of the above cases apply, then the customClickThroughUrl is assigned to this field." - }, - "customClickThroughUrl": { - "type": "string", - "description": "Custom click-through URL. Applicable if the defaultLandingPage field is set to false and the landingPageId field is left unset." - }, - "defaultLandingPage": { - "type": "boolean", - "description": "Whether the campaign default landing page is used." - }, - "landingPageId": { - "type": "string", - "description": "ID of the landing page for the click-through URL. Applicable if the defaultLandingPage field is set to false.", - "format": "int64" - } - } - }, - "ClickThroughUrlSuffixProperties": { - "id": "ClickThroughUrlSuffixProperties", - "type": "object", - "description": "Click Through URL Suffix settings.", - "properties": { - "clickThroughUrlSuffix": { - "type": "string", - "description": "Click-through URL suffix to apply to all ads in this entity's scope. Must be less than 128 characters long." - }, - "overrideInheritedSuffix": { - "type": "boolean", - "description": "Whether this entity should override the inherited click-through URL suffix with its own defined value." - } - } - }, - "CompanionClickThroughOverride": { - "id": "CompanionClickThroughOverride", - "type": "object", - "description": "Companion Click-through override.", - "properties": { - "clickThroughUrl": { - "$ref": "ClickThroughUrl", - "description": "Click-through URL of this companion click-through override." - }, - "creativeId": { - "type": "string", - "description": "ID of the creative for this companion click-through override.", - "format": "int64" - } - } - }, - "CompanionSetting": { - "id": "CompanionSetting", - "type": "object", - "description": "Companion Settings", - "properties": { - "companionsDisabled": { - "type": "boolean", - "description": "Whether companions are disabled for this placement." - }, - "enabledSizes": { - "type": "array", - "description": "Whitelist of companion sizes to be served to this placement. Set this list to null or empty to serve all companion sizes.", - "items": { - "$ref": "Size" - } - }, - "imageOnly": { - "type": "boolean", - "description": "Whether to serve only static images as companions." - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#companionSetting\".", - "default": "dfareporting#companionSetting" - } - } - }, - "CompatibleFields": { - "id": "CompatibleFields", - "type": "object", - "description": "Represents a response to the queryCompatibleFields method.", - "properties": { - "crossDimensionReachReportCompatibleFields": { - "$ref": "CrossDimensionReachReportCompatibleFields", - "description": "Contains items that are compatible to be selected for a report of type \"CROSS_DIMENSION_REACH\"." - }, - "floodlightReportCompatibleFields": { - "$ref": "FloodlightReportCompatibleFields", - "description": "Contains items that are compatible to be selected for a report of type \"FLOODLIGHT\"." - }, - "kind": { - "type": "string", - "description": "The kind of resource this is, in this case dfareporting#compatibleFields.", - "default": "dfareporting#compatibleFields" - }, - "pathToConversionReportCompatibleFields": { - "$ref": "PathToConversionReportCompatibleFields", - "description": "Contains items that are compatible to be selected for a report of type \"PATH_TO_CONVERSION\"." - }, - "reachReportCompatibleFields": { - "$ref": "ReachReportCompatibleFields", - "description": "Contains items that are compatible to be selected for a report of type \"REACH\"." - }, - "reportCompatibleFields": { - "$ref": "ReportCompatibleFields", - "description": "Contains items that are compatible to be selected for a report of type \"STANDARD\"." - } - } - }, - "ConnectionType": { - "id": "ConnectionType", - "type": "object", - "description": "Contains information about an internet connection type that can be targeted by ads. Clients can use the connection type to target mobile vs. broadband users.", - "properties": { - "id": { - "type": "string", - "description": "ID of this connection type.", - "format": "int64" - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#connectionType\".", - "default": "dfareporting#connectionType" - }, - "name": { - "type": "string", - "description": "Name of this connection type." - } - } - }, - "ConnectionTypesListResponse": { - "id": "ConnectionTypesListResponse", - "type": "object", - "description": "Connection Type List Response", - "properties": { "connectionTypes": { - "type": "array", - "description": "Collection of connection types such as broadband and mobile.", - "items": { - "$ref": "ConnectionType" - } + "methods": { + "get": { + "description": "Gets one connection type by ID.", + "httpMethod": "GET", + "id": "dfareporting.connectionTypes.get", + "parameterOrder": [ + "profileId", + "id" + ], + "parameters": { + "id": { + "description": "Connection type ID.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/connectionTypes/{id}", + "response": { + "$ref": "ConnectionType" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "description": "Retrieves a list of connection types.", + "httpMethod": "GET", + "id": "dfareporting.connectionTypes.list", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/connectionTypes", + "response": { + "$ref": "ConnectionTypesListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#connectionTypesListResponse\".", - "default": "dfareporting#connectionTypesListResponse" - } - } - }, - "ContentCategoriesListResponse": { - "id": "ContentCategoriesListResponse", - "type": "object", - "description": "Content Category List Response", - "properties": { "contentCategories": { - "type": "array", - "description": "Content category collection.", - "items": { - "$ref": "ContentCategory" - } + "methods": { + "delete": { + "description": "Deletes an existing content category.", + "httpMethod": "DELETE", + "id": "dfareporting.contentCategories.delete", + "parameterOrder": [ + "profileId", + "id" + ], + "parameters": { + "id": { + "description": "Content category ID.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/contentCategories/{id}", + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "get": { + "description": "Gets one content category by ID.", + "httpMethod": "GET", + "id": "dfareporting.contentCategories.get", + "parameterOrder": [ + "profileId", + "id" + ], + "parameters": { + "id": { + "description": "Content category ID.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/contentCategories/{id}", + "response": { + "$ref": "ContentCategory" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "insert": { + "description": "Inserts a new content category.", + "httpMethod": "POST", + "id": "dfareporting.contentCategories.insert", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/contentCategories", + "request": { + "$ref": "ContentCategory" + }, + "response": { + "$ref": "ContentCategory" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "description": "Retrieves a list of content categories, possibly filtered. This method supports paging.", + "httpMethod": "GET", + "id": "dfareporting.contentCategories.list", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "ids": { + "description": "Select only content categories with these IDs.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "maxResults": { + "default": "1000", + "description": "Maximum number of results to return.", + "format": "int32", + "location": "query", + "maximum": "1000", + "minimum": "0", + "type": "integer" + }, + "pageToken": { + "description": "Value of the nextPageToken from the previous result page.", + "location": "query", + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "searchString": { + "description": "Allows searching for objects by name or ID. Wildcards (*) are allowed. For example, \"contentcategory*2015\" will return objects with names like \"contentcategory June 2015\", \"contentcategory April 2015\", or simply \"contentcategory 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"contentcategory\" will match objects with name \"my contentcategory\", \"contentcategory 2015\", or simply \"contentcategory\".", + "location": "query", + "type": "string" + }, + "sortField": { + "default": "ID", + "description": "Field by which to sort the list.", + "enum": [ + "ID", + "NAME" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + }, + "sortOrder": { + "default": "ASCENDING", + "description": "Order of sorted results.", + "enum": [ + "ASCENDING", + "DESCENDING" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + } + }, + "path": "userprofiles/{profileId}/contentCategories", + "response": { + "$ref": "ContentCategoriesListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "patch": { + "description": "Updates an existing content category. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "dfareporting.contentCategories.patch", + "parameterOrder": [ + "profileId", + "id" + ], + "parameters": { + "id": { + "description": "Content category ID.", + "format": "int64", + "location": "query", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/contentCategories", + "request": { + "$ref": "ContentCategory" + }, + "response": { + "$ref": "ContentCategory" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "update": { + "description": "Updates an existing content category.", + "httpMethod": "PUT", + "id": "dfareporting.contentCategories.update", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/contentCategories", + "request": { + "$ref": "ContentCategory" + }, + "response": { + "$ref": "ContentCategory" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#contentCategoriesListResponse\".", - "default": "dfareporting#contentCategoriesListResponse" - }, - "nextPageToken": { - "type": "string", - "description": "Pagination token to be used for the next list operation." - } - } - }, - "ContentCategory": { - "id": "ContentCategory", - "type": "object", - "description": "Organizes placements according to the contents of their associated webpages.", - "properties": { - "accountId": { - "type": "string", - "description": "Account ID of this content category. This is a read-only field that can be left blank.", - "format": "int64" - }, - "id": { - "type": "string", - "description": "ID of this content category. This is a read-only, auto-generated field.", - "format": "int64" - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#contentCategory\".", - "default": "dfareporting#contentCategory" - }, - "name": { - "type": "string", - "description": "Name of this content category. This is a required field and must be less than 256 characters long and unique among content categories of the same account." - } - } - }, - "Conversion": { - "id": "Conversion", - "type": "object", - "description": "A Conversion represents when a user successfully performs a desired action after seeing an ad.", - "properties": { - "childDirectedTreatment": { - "type": "boolean", - "description": "Whether the conversion was directed toward children." - }, - "customVariables": { - "type": "array", - "description": "Custom floodlight variables.", - "items": { - "$ref": "CustomFloodlightVariable" - } - }, - "encryptedUserId": { - "type": "string", - "description": "The alphanumeric encrypted user ID. When set, encryptionInfo should also be specified. This field is mutually exclusive with encryptedUserIdCandidates[], mobileDeviceId and gclid. This or encryptedUserIdCandidates[] or mobileDeviceId or gclid is a required field." - }, - "encryptedUserIdCandidates": { - "type": "array", - "description": "A list of the alphanumeric encrypted user IDs. Any user ID with exposure prior to the conversion timestamp will be used in the inserted conversion. If no such user ID is found then the conversion will be rejected with NO_COOKIE_MATCH_FOUND error. When set, encryptionInfo should also be specified. This field may only be used when calling batchinsert; it is not supported by batchupdate. This field is mutually exclusive with encryptedUserId, mobileDeviceId and gclid. This or encryptedUserId or mobileDeviceId or gclid is a required field.", - "items": { - "type": "string" - } - }, - "floodlightActivityId": { - "type": "string", - "description": "Floodlight Activity ID of this conversion. This is a required field.", - "format": "int64" - }, - "floodlightConfigurationId": { - "type": "string", - "description": "Floodlight Configuration ID of this conversion. This is a required field.", - "format": "int64" - }, - "gclid": { - "type": "string", - "description": "The Google click ID. This field is mutually exclusive with encryptedUserId, encryptedUserIdCandidates[] and mobileDeviceId. This or encryptedUserId or encryptedUserIdCandidates[] or mobileDeviceId is a required field." - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#conversion\".", - "default": "dfareporting#conversion" - }, - "limitAdTracking": { - "type": "boolean", - "description": "Whether Limit Ad Tracking is enabled. When set to true, the conversion will be used for reporting but not targeting. This will prevent remarketing." - }, - "mobileDeviceId": { - "type": "string", - "description": "The mobile device ID. This field is mutually exclusive with encryptedUserId, encryptedUserIdCandidates[] and gclid. This or encryptedUserId or encryptedUserIdCandidates[] or gclid is a required field." - }, - "ordinal": { - "type": "string", - "description": "The ordinal of the conversion. Use this field to control how conversions of the same user and day are de-duplicated. This is a required field." - }, - "quantity": { - "type": "string", - "description": "The quantity of the conversion.", - "format": "int64" - }, - "timestampMicros": { - "type": "string", - "description": "The timestamp of conversion, in Unix epoch micros. This is a required field.", - "format": "int64" - }, - "value": { - "type": "number", - "description": "The value of the conversion.", - "format": "double" - } - } - }, - "ConversionError": { - "id": "ConversionError", - "type": "object", - "description": "The error code and description for a conversion that failed to insert or update.", - "properties": { - "code": { - "type": "string", - "description": "The error code.", - "enum": [ - "INTERNAL", - "INVALID_ARGUMENT", - "NOT_FOUND", - "PERMISSION_DENIED" - ], - "enumDescriptions": [ - "", - "", - "", - "" - ] - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#conversionError\".", - "default": "dfareporting#conversionError" - }, - "message": { - "type": "string", - "description": "A description of the error." - } - } - }, - "ConversionStatus": { - "id": "ConversionStatus", - "type": "object", - "description": "The original conversion that was inserted or updated and whether there were any errors.", - "properties": { - "conversion": { - "$ref": "Conversion", - "description": "The original conversion that was inserted or updated." - }, - "errors": { - "type": "array", - "description": "A list of errors related to this conversion.", - "items": { - "$ref": "ConversionError" - } - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#conversionStatus\".", - "default": "dfareporting#conversionStatus" - } - } - }, - "ConversionsBatchInsertRequest": { - "id": "ConversionsBatchInsertRequest", - "type": "object", - "description": "Insert Conversions Request.", - "properties": { "conversions": { - "type": "array", - "description": "The set of conversions to insert.", - "items": { - "$ref": "Conversion" - } + "methods": { + "batchinsert": { + "description": "Inserts conversions.", + "httpMethod": "POST", + "id": "dfareporting.conversions.batchinsert", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/conversions/batchinsert", + "request": { + "$ref": "ConversionsBatchInsertRequest" + }, + "response": { + "$ref": "ConversionsBatchInsertResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/ddmconversions" + ] + }, + "batchupdate": { + "description": "Updates existing conversions.", + "httpMethod": "POST", + "id": "dfareporting.conversions.batchupdate", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/conversions/batchupdate", + "request": { + "$ref": "ConversionsBatchUpdateRequest" + }, + "response": { + "$ref": "ConversionsBatchUpdateResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/ddmconversions" + ] + } + } }, - "encryptionInfo": { - "$ref": "EncryptionInfo", - "description": "Describes how encryptedUserId or encryptedUserIdCandidates[] is encrypted. This is a required field if encryptedUserId or encryptedUserIdCandidates[] is used." - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#conversionsBatchInsertRequest\".", - "default": "dfareporting#conversionsBatchInsertRequest" - } - } - }, - "ConversionsBatchInsertResponse": { - "id": "ConversionsBatchInsertResponse", - "type": "object", - "description": "Insert Conversions Response.", - "properties": { - "hasFailures": { - "type": "boolean", - "description": "Indicates that some or all conversions failed to insert." - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#conversionsBatchInsertResponse\".", - "default": "dfareporting#conversionsBatchInsertResponse" - }, - "status": { - "type": "array", - "description": "The insert status of each conversion. Statuses are returned in the same order that conversions are inserted.", - "items": { - "$ref": "ConversionStatus" - } - } - } - }, - "ConversionsBatchUpdateRequest": { - "id": "ConversionsBatchUpdateRequest", - "type": "object", - "description": "Update Conversions Request.", - "properties": { - "conversions": { - "type": "array", - "description": "The set of conversions to update.", - "items": { - "$ref": "Conversion" - } - }, - "encryptionInfo": { - "$ref": "EncryptionInfo", - "description": "Describes how encryptedUserId is encrypted. This is a required field if encryptedUserId is used." - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#conversionsBatchUpdateRequest\".", - "default": "dfareporting#conversionsBatchUpdateRequest" - } - } - }, - "ConversionsBatchUpdateResponse": { - "id": "ConversionsBatchUpdateResponse", - "type": "object", - "description": "Update Conversions Response.", - "properties": { - "hasFailures": { - "type": "boolean", - "description": "Indicates that some or all conversions failed to update." - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#conversionsBatchUpdateResponse\".", - "default": "dfareporting#conversionsBatchUpdateResponse" - }, - "status": { - "type": "array", - "description": "The update status of each conversion. Statuses are returned in the same order that conversions are updated.", - "items": { - "$ref": "ConversionStatus" - } - } - } - }, - "CountriesListResponse": { - "id": "CountriesListResponse", - "type": "object", - "description": "Country List Response", - "properties": { "countries": { - "type": "array", - "description": "Country collection.", - "items": { - "$ref": "Country" - } - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#countriesListResponse\".", - "default": "dfareporting#countriesListResponse" - } - } - }, - "Country": { - "id": "Country", - "type": "object", - "description": "Contains information about a country that can be targeted by ads.", - "properties": { - "countryCode": { - "type": "string", - "description": "Country code." - }, - "dartId": { - "type": "string", - "description": "DART ID of this country. This is the ID used for targeting and generating reports.", - "format": "int64" - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#country\".", - "default": "dfareporting#country" - }, - "name": { - "type": "string", - "description": "Name of this country." - }, - "sslEnabled": { - "type": "boolean", - "description": "Whether ad serving supports secure servers in this country." - } - } - }, - "Creative": { - "id": "Creative", - "type": "object", - "description": "Contains properties of a Creative.", - "properties": { - "accountId": { - "type": "string", - "description": "Account ID of this creative. This field, if left unset, will be auto-generated for both insert and update operations. Applicable to all creative types.", - "format": "int64" - }, - "active": { - "type": "boolean", - "description": "Whether the creative is active. Applicable to all creative types." - }, - "adParameters": { - "type": "string", - "description": "Ad parameters user for VPAID creative. This is a read-only field. Applicable to the following creative types: all VPAID." - }, - "adTagKeys": { - "type": "array", - "description": "Keywords for a Rich Media creative. Keywords let you customize the creative settings of a Rich Media ad running on your site without having to contact the advertiser. You can use keywords to dynamically change the look or functionality of a creative. Applicable to the following creative types: all RICH_MEDIA, and all VPAID.", - "items": { - "type": "string" - } - }, - "advertiserId": { - "type": "string", - "description": "Advertiser ID of this creative. This is a required field. Applicable to all creative types.", - "format": "int64" - }, - "allowScriptAccess": { - "type": "boolean", - "description": "Whether script access is allowed for this creative. This is a read-only and deprecated field which will automatically be set to true on update. Applicable to the following creative types: FLASH_INPAGE." - }, - "archived": { - "type": "boolean", - "description": "Whether the creative is archived. Applicable to all creative types." - }, - "artworkType": { - "type": "string", - "description": "Type of artwork used for the creative. This is a read-only field. Applicable to the following creative types: all RICH_MEDIA, and all VPAID.", - "enum": [ - "ARTWORK_TYPE_FLASH", - "ARTWORK_TYPE_HTML5", - "ARTWORK_TYPE_IMAGE", - "ARTWORK_TYPE_MIXED" - ], - "enumDescriptions": [ - "", - "", - "", - "" - ] - }, - "authoringSource": { - "type": "string", - "description": "Source application where creative was authored. Presently, only DBM authored creatives will have this field set. Applicable to all creative types.", - "enum": [ - "CREATIVE_AUTHORING_SOURCE_DBM", - "CREATIVE_AUTHORING_SOURCE_DCM", - "CREATIVE_AUTHORING_SOURCE_STUDIO" - ], - "enumDescriptions": [ - "", - "", - "" - ] - }, - "authoringTool": { - "type": "string", - "description": "Authoring tool for HTML5 banner creatives. This is a read-only field. Applicable to the following creative types: HTML5_BANNER.", - "enum": [ - "NINJA", - "SWIFFY" - ], - "enumDescriptions": [ - "", - "" - ] - }, - "autoAdvanceImages": { - "type": "boolean", - "description": "Whether images are automatically advanced for image gallery creatives. Applicable to the following creative types: DISPLAY_IMAGE_GALLERY." - }, - "backgroundColor": { - "type": "string", - "description": "The 6-character HTML color code, beginning with #, for the background of the window area where the Flash file is displayed. Default is white. Applicable to the following creative types: FLASH_INPAGE." - }, - "backupImageClickThroughUrl": { - "type": "string", - "description": "Click-through URL for backup image. Applicable to the following creative types: FLASH_INPAGE, and HTML5_BANNER. Applicable to DISPLAY when the primary asset type is not HTML_IMAGE." - }, - "backupImageFeatures": { - "type": "array", - "description": "List of feature dependencies that will cause a backup image to be served if the browser that serves the ad does not support them. Feature dependencies are features that a browser must be able to support in order to render your HTML5 creative asset correctly. This field is initially auto-generated to contain all features detected by DCM for all the assets of this creative and can then be modified by the client. To reset this field, copy over all the creativeAssets' detected features. Applicable to the following creative types: HTML5_BANNER. Applicable to DISPLAY when the primary asset type is not HTML_IMAGE.", - "items": { - "type": "string", - "enum": [ - "APPLICATION_CACHE", - "AUDIO", - "CANVAS", - "CANVAS_TEXT", - "CSS_ANIMATIONS", - "CSS_BACKGROUND_SIZE", - "CSS_BORDER_IMAGE", - "CSS_BORDER_RADIUS", - "CSS_BOX_SHADOW", - "CSS_COLUMNS", - "CSS_FLEX_BOX", - "CSS_FONT_FACE", - "CSS_GENERATED_CONTENT", - "CSS_GRADIENTS", - "CSS_HSLA", - "CSS_MULTIPLE_BGS", - "CSS_OPACITY", - "CSS_REFLECTIONS", - "CSS_RGBA", - "CSS_TEXT_SHADOW", - "CSS_TRANSFORMS", - "CSS_TRANSFORMS3D", - "CSS_TRANSITIONS", - "DRAG_AND_DROP", - "GEO_LOCATION", - "HASH_CHANGE", - "HISTORY", - "INDEXED_DB", - "INLINE_SVG", - "INPUT_ATTR_AUTOCOMPLETE", - "INPUT_ATTR_AUTOFOCUS", - "INPUT_ATTR_LIST", - "INPUT_ATTR_MAX", - "INPUT_ATTR_MIN", - "INPUT_ATTR_MULTIPLE", - "INPUT_ATTR_PATTERN", - "INPUT_ATTR_PLACEHOLDER", - "INPUT_ATTR_REQUIRED", - "INPUT_ATTR_STEP", - "INPUT_TYPE_COLOR", - "INPUT_TYPE_DATE", - "INPUT_TYPE_DATETIME", - "INPUT_TYPE_DATETIME_LOCAL", - "INPUT_TYPE_EMAIL", - "INPUT_TYPE_MONTH", - "INPUT_TYPE_NUMBER", - "INPUT_TYPE_RANGE", - "INPUT_TYPE_SEARCH", - "INPUT_TYPE_TEL", - "INPUT_TYPE_TIME", - "INPUT_TYPE_URL", - "INPUT_TYPE_WEEK", - "LOCAL_STORAGE", - "POST_MESSAGE", - "SESSION_STORAGE", - "SMIL", - "SVG_CLIP_PATHS", - "SVG_FE_IMAGE", - "SVG_FILTERS", - "SVG_HREF", - "TOUCH", - "VIDEO", - "WEBGL", - "WEB_SOCKETS", - "WEB_SQL_DATABASE", - "WEB_WORKERS" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - } - }, - "backupImageReportingLabel": { - "type": "string", - "description": "Reporting label used for HTML5 banner backup image. Applicable to the following creative types: DISPLAY when the primary asset type is not HTML_IMAGE." - }, - "backupImageTargetWindow": { - "$ref": "TargetWindow", - "description": "Target window for backup image. Applicable to the following creative types: FLASH_INPAGE and HTML5_BANNER. Applicable to DISPLAY when the primary asset type is not HTML_IMAGE." - }, - "clickTags": { - "type": "array", - "description": "Click tags of the creative. For DISPLAY, FLASH_INPAGE, and HTML5_BANNER creatives, this is a subset of detected click tags for the assets associated with this creative. After creating a flash asset, detected click tags will be returned in the creativeAssetMetadata. When inserting the creative, populate the creative clickTags field using the creativeAssetMetadata.clickTags field. For DISPLAY_IMAGE_GALLERY creatives, there should be exactly one entry in this list for each image creative asset. A click tag is matched with a corresponding creative asset by matching the clickTag.name field with the creativeAsset.assetIdentifier.name field. Applicable to the following creative types: DISPLAY_IMAGE_GALLERY, FLASH_INPAGE, HTML5_BANNER. Applicable to DISPLAY when the primary asset type is not HTML_IMAGE.", - "items": { - "$ref": "ClickTag" - } - }, - "commercialId": { - "type": "string", - "description": "Industry standard ID assigned to creative for reach and frequency. Applicable to INSTREAM_VIDEO_REDIRECT creatives." - }, - "companionCreatives": { - "type": "array", - "description": "List of companion creatives assigned to an in-Stream videocreative. Acceptable values include IDs of existing flash and image creatives. Applicable to the following creative types: all VPAID and all INSTREAM_VIDEO with dynamicAssetSelection set to false.", - "items": { - "type": "string", - "format": "int64" - } - }, - "compatibility": { - "type": "array", - "description": "Compatibilities associated with this creative. This is a read-only field. DISPLAY and DISPLAY_INTERSTITIAL refer to rendering either on desktop or on mobile devices or in mobile apps for regular or interstitial ads, respectively. APP and APP_INTERSTITIAL are for rendering in mobile apps. Only pre-existing creatives may have these compatibilities since new creatives will either be assigned DISPLAY or DISPLAY_INTERSTITIAL instead. IN_STREAM_VIDEO refers to rendering in in-stream video ads developed with the VAST standard. Applicable to all creative types.\n\nAcceptable values are:\n- \"APP\"\n- \"APP_INTERSTITIAL\"\n- \"IN_STREAM_VIDEO\"\n- \"DISPLAY\"\n- \"DISPLAY_INTERSTITIAL\"", - "items": { - "type": "string", - "enum": [ - "APP", - "APP_INTERSTITIAL", - "DISPLAY", - "DISPLAY_INTERSTITIAL", - "IN_STREAM_VIDEO" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "" - ] - } - }, - "convertFlashToHtml5": { - "type": "boolean", - "description": "Whether Flash assets associated with the creative need to be automatically converted to HTML5. This flag is enabled by default and users can choose to disable it if they don't want the system to generate and use HTML5 asset for this creative. Applicable to the following creative type: FLASH_INPAGE. Applicable to DISPLAY when the primary asset type is not HTML_IMAGE." - }, - "counterCustomEvents": { - "type": "array", - "description": "List of counter events configured for the creative. For DISPLAY_IMAGE_GALLERY creatives, these are read-only and auto-generated from clickTags. Applicable to the following creative types: DISPLAY_IMAGE_GALLERY, all RICH_MEDIA, and all VPAID.", - "items": { - "$ref": "CreativeCustomEvent" - } - }, - "creativeAssetSelection": { - "$ref": "CreativeAssetSelection", - "description": "Required if dynamicAssetSelection is true." + "methods": { + "get": { + "description": "Gets one country by ID.", + "httpMethod": "GET", + "id": "dfareporting.countries.get", + "parameterOrder": [ + "profileId", + "dartId" + ], + "parameters": { + "dartId": { + "description": "Country DART ID.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/countries/{dartId}", + "response": { + "$ref": "Country" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "description": "Retrieves a list of countries.", + "httpMethod": "GET", + "id": "dfareporting.countries.list", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/countries", + "response": { + "$ref": "CountriesListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } }, "creativeAssets": { - "type": "array", - "description": "Assets associated with a creative. Applicable to all but the following creative types: INTERNAL_REDIRECT, INTERSTITIAL_INTERNAL_REDIRECT, and REDIRECT", - "items": { - "$ref": "CreativeAsset" - } + "methods": { + "insert": { + "description": "Inserts a new creative asset.", + "httpMethod": "POST", + "id": "dfareporting.creativeAssets.insert", + "mediaUpload": { + "accept": [ + "*/*" + ], + "maxSize": "1024MB", + "protocols": { + "resumable": { + "multipart": true, + "path": "/resumable/upload/dfareporting/v2.8/userprofiles/{profileId}/creativeAssets/{advertiserId}/creativeAssets" + }, + "simple": { + "multipart": true, + "path": "/upload/dfareporting/v2.8/userprofiles/{profileId}/creativeAssets/{advertiserId}/creativeAssets" + } + } + }, + "parameterOrder": [ + "profileId", + "advertiserId" + ], + "parameters": { + "advertiserId": { + "description": "Advertiser ID of this creative. This is a required field.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/creativeAssets/{advertiserId}/creativeAssets", + "request": { + "$ref": "CreativeAssetMetadata" + }, + "response": { + "$ref": "CreativeAssetMetadata" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ], + "supportsMediaUpload": true + } + } }, - "creativeFieldAssignments": { - "type": "array", - "description": "Creative field assignments for this creative. Applicable to all creative types.", - "items": { - "$ref": "CreativeFieldAssignment" - } - }, - "customKeyValues": { - "type": "array", - "description": "Custom key-values for a Rich Media creative. Key-values let you customize the creative settings of a Rich Media ad running on your site without having to contact the advertiser. You can use key-values to dynamically change the look or functionality of a creative. Applicable to the following creative types: all RICH_MEDIA, and all VPAID.", - "items": { - "type": "string" - } - }, - "dynamicAssetSelection": { - "type": "boolean", - "description": "Set this to true to enable the use of rules to target individual assets in this creative. When set to true creativeAssetSelection must be set. This also controls asset-level companions. When this is true, companion creatives should be assigned to creative assets. Learn more. Applicable to INSTREAM_VIDEO creatives." - }, - "exitCustomEvents": { - "type": "array", - "description": "List of exit events configured for the creative. For DISPLAY and DISPLAY_IMAGE_GALLERY creatives, these are read-only and auto-generated from clickTags, For DISPLAY, an event is also created from the backupImageReportingLabel. Applicable to the following creative types: DISPLAY_IMAGE_GALLERY, all RICH_MEDIA, and all VPAID. Applicable to DISPLAY when the primary asset type is not HTML_IMAGE.", - "items": { - "$ref": "CreativeCustomEvent" - } - }, - "fsCommand": { - "$ref": "FsCommand", - "description": "OpenWindow FSCommand of this creative. This lets the SWF file communicate with either Flash Player or the program hosting Flash Player, such as a web browser. This is only triggered if allowScriptAccess field is true. Applicable to the following creative types: FLASH_INPAGE." - }, - "htmlCode": { - "type": "string", - "description": "HTML code for the creative. This is a required field when applicable. This field is ignored if htmlCodeLocked is true. Applicable to the following creative types: all CUSTOM, FLASH_INPAGE, and HTML5_BANNER, and all RICH_MEDIA." - }, - "htmlCodeLocked": { - "type": "boolean", - "description": "Whether HTML code is DCM-generated or manually entered. Set to true to ignore changes to htmlCode. Applicable to the following creative types: FLASH_INPAGE and HTML5_BANNER." - }, - "id": { - "type": "string", - "description": "ID of this creative. This is a read-only, auto-generated field. Applicable to all creative types.", - "format": "int64" - }, - "idDimensionValue": { - "$ref": "DimensionValue", - "description": "Dimension value for the ID of this creative. This is a read-only field. Applicable to all creative types." - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#creative\".", - "default": "dfareporting#creative" - }, - "lastModifiedInfo": { - "$ref": "LastModifiedInfo", - "description": "Creative last modification information. This is a read-only field. Applicable to all creative types." - }, - "latestTraffickedCreativeId": { - "type": "string", - "description": "Latest Studio trafficked creative ID associated with rich media and VPAID creatives. This is a read-only field. Applicable to the following creative types: all RICH_MEDIA, and all VPAID.", - "format": "int64" - }, - "name": { - "type": "string", - "description": "Name of the creative. This is a required field and must be less than 256 characters long. Applicable to all creative types." - }, - "overrideCss": { - "type": "string", - "description": "Override CSS value for rich media creatives. Applicable to the following creative types: all RICH_MEDIA." - }, - "progressOffset": { - "$ref": "VideoOffset", - "description": "Amount of time to play the video before counting a view. Applicable to the following creative types: all INSTREAM_VIDEO." - }, - "redirectUrl": { - "type": "string", - "description": "URL of hosted image or hosted video or another ad tag. For INSTREAM_VIDEO_REDIRECT creatives this is the in-stream video redirect URL. The standard for a VAST (Video Ad Serving Template) ad response allows for a redirect link to another VAST 2.0 or 3.0 call. This is a required field when applicable. Applicable to the following creative types: DISPLAY_REDIRECT, INTERNAL_REDIRECT, INTERSTITIAL_INTERNAL_REDIRECT, and INSTREAM_VIDEO_REDIRECT" - }, - "renderingId": { - "type": "string", - "description": "ID of current rendering version. This is a read-only field. Applicable to all creative types.", - "format": "int64" - }, - "renderingIdDimensionValue": { - "$ref": "DimensionValue", - "description": "Dimension value for the rendering ID of this creative. This is a read-only field. Applicable to all creative types." - }, - "requiredFlashPluginVersion": { - "type": "string", - "description": "The minimum required Flash plugin version for this creative. For example, 11.2.202.235. This is a read-only field. Applicable to the following creative types: all RICH_MEDIA, and all VPAID." - }, - "requiredFlashVersion": { - "type": "integer", - "description": "The internal Flash version for this creative as calculated by DoubleClick Studio. This is a read-only field. Applicable to the following creative types: FLASH_INPAGE all RICH_MEDIA, and all VPAID. Applicable to DISPLAY when the primary asset type is not HTML_IMAGE.", - "format": "int32" - }, - "size": { - "$ref": "Size", - "description": "Size associated with this creative. When inserting or updating a creative either the size ID field or size width and height fields can be used. This is a required field when applicable; however for IMAGE, FLASH_INPAGE creatives, and for DISPLAY creatives with a primary asset of type HTML_IMAGE, if left blank, this field will be automatically set using the actual size of the associated image assets. Applicable to the following creative types: DISPLAY, DISPLAY_IMAGE_GALLERY, FLASH_INPAGE, HTML5_BANNER, IMAGE, and all RICH_MEDIA." - }, - "skipOffset": { - "$ref": "VideoOffset", - "description": "Amount of time to play the video before the skip button appears. Applicable to the following creative types: all INSTREAM_VIDEO." - }, - "skippable": { - "type": "boolean", - "description": "Whether the user can choose to skip the creative. Applicable to the following creative types: all INSTREAM_VIDEO and all VPAID." - }, - "sslCompliant": { - "type": "boolean", - "description": "Whether the creative is SSL-compliant. This is a read-only field. Applicable to all creative types." - }, - "sslOverride": { - "type": "boolean", - "description": "Whether creative should be treated as SSL compliant even if the system scan shows it's not. Applicable to all creative types." - }, - "studioAdvertiserId": { - "type": "string", - "description": "Studio advertiser ID associated with rich media and VPAID creatives. This is a read-only field. Applicable to the following creative types: all RICH_MEDIA, and all VPAID.", - "format": "int64" - }, - "studioCreativeId": { - "type": "string", - "description": "Studio creative ID associated with rich media and VPAID creatives. This is a read-only field. Applicable to the following creative types: all RICH_MEDIA, and all VPAID.", - "format": "int64" - }, - "studioTraffickedCreativeId": { - "type": "string", - "description": "Studio trafficked creative ID associated with rich media and VPAID creatives. This is a read-only field. Applicable to the following creative types: all RICH_MEDIA, and all VPAID.", - "format": "int64" - }, - "subaccountId": { - "type": "string", - "description": "Subaccount ID of this creative. This field, if left unset, will be auto-generated for both insert and update operations. Applicable to all creative types.", - "format": "int64" - }, - "thirdPartyBackupImageImpressionsUrl": { - "type": "string", - "description": "Third-party URL used to record backup image impressions. Applicable to the following creative types: all RICH_MEDIA." - }, - "thirdPartyRichMediaImpressionsUrl": { - "type": "string", - "description": "Third-party URL used to record rich media impressions. Applicable to the following creative types: all RICH_MEDIA." - }, - "thirdPartyUrls": { - "type": "array", - "description": "Third-party URLs for tracking in-stream video creative events. Applicable to the following creative types: all INSTREAM_VIDEO and all VPAID.", - "items": { - "$ref": "ThirdPartyTrackingUrl" - } - }, - "timerCustomEvents": { - "type": "array", - "description": "List of timer events configured for the creative. For DISPLAY_IMAGE_GALLERY creatives, these are read-only and auto-generated from clickTags. Applicable to the following creative types: DISPLAY_IMAGE_GALLERY, all RICH_MEDIA, and all VPAID. Applicable to DISPLAY when the primary asset is not HTML_IMAGE.", - "items": { - "$ref": "CreativeCustomEvent" - } - }, - "totalFileSize": { - "type": "string", - "description": "Combined size of all creative assets. This is a read-only field. Applicable to the following creative types: all RICH_MEDIA, and all VPAID.", - "format": "int64" - }, - "type": { - "type": "string", - "description": "Type of this creative. This is a required field. Applicable to all creative types.\n\nNote: FLASH_INPAGE, HTML5_BANNER, and IMAGE are only used for existing creatives. New creatives should use DISPLAY as a replacement for these types.", - "enum": [ - "BRAND_SAFE_DEFAULT_INSTREAM_VIDEO", - "CUSTOM_DISPLAY", - "CUSTOM_DISPLAY_INTERSTITIAL", - "DISPLAY", - "DISPLAY_IMAGE_GALLERY", - "DISPLAY_REDIRECT", - "FLASH_INPAGE", - "HTML5_BANNER", - "IMAGE", - "INSTREAM_VIDEO", - "INSTREAM_VIDEO_REDIRECT", - "INTERNAL_REDIRECT", - "INTERSTITIAL_INTERNAL_REDIRECT", - "RICH_MEDIA_DISPLAY_BANNER", - "RICH_MEDIA_DISPLAY_EXPANDING", - "RICH_MEDIA_DISPLAY_INTERSTITIAL", - "RICH_MEDIA_DISPLAY_MULTI_FLOATING_INTERSTITIAL", - "RICH_MEDIA_IM_EXPAND", - "RICH_MEDIA_INPAGE_FLOATING", - "RICH_MEDIA_MOBILE_IN_APP", - "RICH_MEDIA_PEEL_DOWN", - "TRACKING_TEXT", - "VPAID_LINEAR_VIDEO", - "VPAID_NON_LINEAR_VIDEO" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "universalAdId": { - "$ref": "UniversalAdId", - "description": "A Universal Ad ID as per the VAST 4.0 spec. Applicable to the following creative types: INSTREAM_VIDEO and VPAID." - }, - "version": { - "type": "integer", - "description": "The version number helps you keep track of multiple versions of your creative in your reports. The version number will always be auto-generated during insert operations to start at 1. For tracking creatives the version cannot be incremented and will always remain at 1. For all other creative types the version can be incremented only by 1 during update operations. In addition, the version will be automatically incremented by 1 when undergoing Rich Media creative merging. Applicable to all creative types.", - "format": "int32" - }, - "videoDescription": { - "type": "string", - "description": "Description of the video ad. Applicable to the following creative types: all INSTREAM_VIDEO and all VPAID." - }, - "videoDuration": { - "type": "number", - "description": "Creative video duration in seconds. This is a read-only field. Applicable to the following creative types: INSTREAM_VIDEO, all RICH_MEDIA, and all VPAID.", - "format": "float" - } - } - }, - "CreativeAsset": { - "id": "CreativeAsset", - "type": "object", - "description": "Creative Asset.", - "properties": { - "actionScript3": { - "type": "boolean", - "description": "Whether ActionScript3 is enabled for the flash asset. This is a read-only field. Applicable to the following creative type: FLASH_INPAGE. Applicable to DISPLAY when the primary asset type is not HTML_IMAGE." - }, - "active": { - "type": "boolean", - "description": "Whether the video asset is active. This is a read-only field for VPAID_NON_LINEAR_VIDEO assets. Applicable to the following creative types: INSTREAM_VIDEO and all VPAID." - }, - "alignment": { - "type": "string", - "description": "Possible alignments for an asset. This is a read-only field. Applicable to the following creative types: RICH_MEDIA_DISPLAY_MULTI_FLOATING_INTERSTITIAL.", - "enum": [ - "ALIGNMENT_BOTTOM", - "ALIGNMENT_LEFT", - "ALIGNMENT_RIGHT", - "ALIGNMENT_TOP" - ], - "enumDescriptions": [ - "", - "", - "", - "" - ] - }, - "artworkType": { - "type": "string", - "description": "Artwork type of rich media creative. This is a read-only field. Applicable to the following creative types: all RICH_MEDIA.", - "enum": [ - "ARTWORK_TYPE_FLASH", - "ARTWORK_TYPE_HTML5", - "ARTWORK_TYPE_IMAGE", - "ARTWORK_TYPE_MIXED" - ], - "enumDescriptions": [ - "", - "", - "", - "" - ] - }, - "assetIdentifier": { - "$ref": "CreativeAssetId", - "description": "Identifier of this asset. This is the same identifier returned during creative asset insert operation. This is a required field. Applicable to all but the following creative types: all REDIRECT and TRACKING_TEXT." - }, - "backupImageExit": { - "$ref": "CreativeCustomEvent", - "description": "Exit event configured for the backup image. Applicable to the following creative types: all RICH_MEDIA." - }, - "bitRate": { - "type": "integer", - "description": "Detected bit-rate for video asset. This is a read-only field. Applicable to the following creative types: INSTREAM_VIDEO and all VPAID.", - "format": "int32" - }, - "childAssetType": { - "type": "string", - "description": "Rich media child asset type. This is a read-only field. Applicable to the following creative types: all VPAID.", - "enum": [ - "CHILD_ASSET_TYPE_DATA", - "CHILD_ASSET_TYPE_FLASH", - "CHILD_ASSET_TYPE_IMAGE", - "CHILD_ASSET_TYPE_VIDEO" - ], - "enumDescriptions": [ - "", - "", - "", - "" - ] - }, - "collapsedSize": { - "$ref": "Size", - "description": "Size of an asset when collapsed. This is a read-only field. Applicable to the following creative types: all RICH_MEDIA and all VPAID. Additionally, applicable to assets whose displayType is ASSET_DISPLAY_TYPE_EXPANDING or ASSET_DISPLAY_TYPE_PEEL_DOWN." - }, - "companionCreativeIds": { - "type": "array", - "description": "List of companion creatives assigned to an in-stream video creative asset. Acceptable values include IDs of existing flash and image creatives. Applicable to INSTREAM_VIDEO creative type with dynamicAssetSelection set to true.", - "items": { - "type": "string", - "format": "int64" - } - }, - "customStartTimeValue": { - "type": "integer", - "description": "Custom start time in seconds for making the asset visible. Applicable to the following creative types: all RICH_MEDIA. Value must be greater than or equal to 0.", - "format": "int32" - }, - "detectedFeatures": { - "type": "array", - "description": "List of feature dependencies for the creative asset that are detected by DCM. Feature dependencies are features that a browser must be able to support in order to render your HTML5 creative correctly. This is a read-only, auto-generated field. Applicable to the following creative types: HTML5_BANNER. Applicable to DISPLAY when the primary asset type is not HTML_IMAGE.", - "items": { - "type": "string", - "enum": [ - "APPLICATION_CACHE", - "AUDIO", - "CANVAS", - "CANVAS_TEXT", - "CSS_ANIMATIONS", - "CSS_BACKGROUND_SIZE", - "CSS_BORDER_IMAGE", - "CSS_BORDER_RADIUS", - "CSS_BOX_SHADOW", - "CSS_COLUMNS", - "CSS_FLEX_BOX", - "CSS_FONT_FACE", - "CSS_GENERATED_CONTENT", - "CSS_GRADIENTS", - "CSS_HSLA", - "CSS_MULTIPLE_BGS", - "CSS_OPACITY", - "CSS_REFLECTIONS", - "CSS_RGBA", - "CSS_TEXT_SHADOW", - "CSS_TRANSFORMS", - "CSS_TRANSFORMS3D", - "CSS_TRANSITIONS", - "DRAG_AND_DROP", - "GEO_LOCATION", - "HASH_CHANGE", - "HISTORY", - "INDEXED_DB", - "INLINE_SVG", - "INPUT_ATTR_AUTOCOMPLETE", - "INPUT_ATTR_AUTOFOCUS", - "INPUT_ATTR_LIST", - "INPUT_ATTR_MAX", - "INPUT_ATTR_MIN", - "INPUT_ATTR_MULTIPLE", - "INPUT_ATTR_PATTERN", - "INPUT_ATTR_PLACEHOLDER", - "INPUT_ATTR_REQUIRED", - "INPUT_ATTR_STEP", - "INPUT_TYPE_COLOR", - "INPUT_TYPE_DATE", - "INPUT_TYPE_DATETIME", - "INPUT_TYPE_DATETIME_LOCAL", - "INPUT_TYPE_EMAIL", - "INPUT_TYPE_MONTH", - "INPUT_TYPE_NUMBER", - "INPUT_TYPE_RANGE", - "INPUT_TYPE_SEARCH", - "INPUT_TYPE_TEL", - "INPUT_TYPE_TIME", - "INPUT_TYPE_URL", - "INPUT_TYPE_WEEK", - "LOCAL_STORAGE", - "POST_MESSAGE", - "SESSION_STORAGE", - "SMIL", - "SVG_CLIP_PATHS", - "SVG_FE_IMAGE", - "SVG_FILTERS", - "SVG_HREF", - "TOUCH", - "VIDEO", - "WEBGL", - "WEB_SOCKETS", - "WEB_SQL_DATABASE", - "WEB_WORKERS" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - } - }, - "displayType": { - "type": "string", - "description": "Type of rich media asset. This is a read-only field. Applicable to the following creative types: all RICH_MEDIA.", - "enum": [ - "ASSET_DISPLAY_TYPE_BACKDROP", - "ASSET_DISPLAY_TYPE_EXPANDING", - "ASSET_DISPLAY_TYPE_FLASH_IN_FLASH", - "ASSET_DISPLAY_TYPE_FLASH_IN_FLASH_EXPANDING", - "ASSET_DISPLAY_TYPE_FLOATING", - "ASSET_DISPLAY_TYPE_INPAGE", - "ASSET_DISPLAY_TYPE_OVERLAY", - "ASSET_DISPLAY_TYPE_PEEL_DOWN", - "ASSET_DISPLAY_TYPE_VPAID_LINEAR", - "ASSET_DISPLAY_TYPE_VPAID_NON_LINEAR" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "duration": { - "type": "integer", - "description": "Duration in seconds for which an asset will be displayed. Applicable to the following creative types: INSTREAM_VIDEO and VPAID_LINEAR_VIDEO. Value must be greater than or equal to 1.", - "format": "int32" - }, - "durationType": { - "type": "string", - "description": "Duration type for which an asset will be displayed. Applicable to the following creative types: all RICH_MEDIA.", - "enum": [ - "ASSET_DURATION_TYPE_AUTO", - "ASSET_DURATION_TYPE_CUSTOM", - "ASSET_DURATION_TYPE_NONE" - ], - "enumDescriptions": [ - "", - "", - "" - ] - }, - "expandedDimension": { - "$ref": "Size", - "description": "Detected expanded dimension for video asset. This is a read-only field. Applicable to the following creative types: INSTREAM_VIDEO and all VPAID." - }, - "fileSize": { - "type": "string", - "description": "File size associated with this creative asset. This is a read-only field. Applicable to all but the following creative types: all REDIRECT and TRACKING_TEXT.", - "format": "int64" - }, - "flashVersion": { - "type": "integer", - "description": "Flash version of the asset. This is a read-only field. Applicable to the following creative types: FLASH_INPAGE, all RICH_MEDIA, and all VPAID. Applicable to DISPLAY when the primary asset type is not HTML_IMAGE.", - "format": "int32" - }, - "hideFlashObjects": { - "type": "boolean", - "description": "Whether to hide Flash objects flag for an asset. Applicable to the following creative types: all RICH_MEDIA." - }, - "hideSelectionBoxes": { - "type": "boolean", - "description": "Whether to hide selection boxes flag for an asset. Applicable to the following creative types: all RICH_MEDIA." - }, - "horizontallyLocked": { - "type": "boolean", - "description": "Whether the asset is horizontally locked. This is a read-only field. Applicable to the following creative types: all RICH_MEDIA." - }, - "id": { - "type": "string", - "description": "Numeric ID of this creative asset. This is a required field and should not be modified. Applicable to all but the following creative types: all REDIRECT and TRACKING_TEXT.", - "format": "int64" - }, - "idDimensionValue": { - "$ref": "DimensionValue", - "description": "Dimension value for the ID of the asset. This is a read-only, auto-generated field." - }, - "mimeType": { - "type": "string", - "description": "Detected MIME type for video asset. This is a read-only field. Applicable to the following creative types: INSTREAM_VIDEO and all VPAID." - }, - "offset": { - "$ref": "OffsetPosition", - "description": "Offset position for an asset in collapsed mode. This is a read-only field. Applicable to the following creative types: all RICH_MEDIA and all VPAID. Additionally, only applicable to assets whose displayType is ASSET_DISPLAY_TYPE_EXPANDING or ASSET_DISPLAY_TYPE_PEEL_DOWN." - }, - "originalBackup": { - "type": "boolean", - "description": "Whether the backup asset is original or changed by the user in DCM. Applicable to the following creative types: all RICH_MEDIA." - }, - "position": { - "$ref": "OffsetPosition", - "description": "Offset position for an asset. Applicable to the following creative types: all RICH_MEDIA." - }, - "positionLeftUnit": { - "type": "string", - "description": "Offset left unit for an asset. This is a read-only field. Applicable to the following creative types: all RICH_MEDIA.", - "enum": [ - "OFFSET_UNIT_PERCENT", - "OFFSET_UNIT_PIXEL", - "OFFSET_UNIT_PIXEL_FROM_CENTER" - ], - "enumDescriptions": [ - "", - "", - "" - ] - }, - "positionTopUnit": { - "type": "string", - "description": "Offset top unit for an asset. This is a read-only field if the asset displayType is ASSET_DISPLAY_TYPE_OVERLAY. Applicable to the following creative types: all RICH_MEDIA.", - "enum": [ - "OFFSET_UNIT_PERCENT", - "OFFSET_UNIT_PIXEL", - "OFFSET_UNIT_PIXEL_FROM_CENTER" - ], - "enumDescriptions": [ - "", - "", - "" - ] - }, - "progressiveServingUrl": { - "type": "string", - "description": "Progressive URL for video asset. This is a read-only field. Applicable to the following creative types: INSTREAM_VIDEO and all VPAID." - }, - "pushdown": { - "type": "boolean", - "description": "Whether the asset pushes down other content. Applicable to the following creative types: all RICH_MEDIA. Additionally, only applicable when the asset offsets are 0, the collapsedSize.width matches size.width, and the collapsedSize.height is less than size.height." - }, - "pushdownDuration": { - "type": "number", - "description": "Pushdown duration in seconds for an asset. Applicable to the following creative types: all RICH_MEDIA.Additionally, only applicable when the asset pushdown field is true, the offsets are 0, the collapsedSize.width matches size.width, and the collapsedSize.height is less than size.height. Acceptable values are 0 to 9.99, inclusive.", - "format": "float" - }, - "role": { - "type": "string", - "description": "Role of the asset in relation to creative. Applicable to all but the following creative types: all REDIRECT and TRACKING_TEXT. This is a required field.\nPRIMARY applies to DISPLAY, FLASH_INPAGE, HTML5_BANNER, IMAGE, DISPLAY_IMAGE_GALLERY, all RICH_MEDIA (which may contain multiple primary assets), and all VPAID creatives.\nBACKUP_IMAGE applies to FLASH_INPAGE, HTML5_BANNER, all RICH_MEDIA, and all VPAID creatives. Applicable to DISPLAY when the primary asset type is not HTML_IMAGE.\nADDITIONAL_IMAGE and ADDITIONAL_FLASH apply to FLASH_INPAGE creatives.\nOTHER refers to assets from sources other than DCM, such as Studio uploaded assets, applicable to all RICH_MEDIA and all VPAID creatives.\nPARENT_VIDEO refers to videos uploaded by the user in DCM and is applicable to INSTREAM_VIDEO and VPAID_LINEAR_VIDEO creatives.\nTRANSCODED_VIDEO refers to videos transcoded by DCM from PARENT_VIDEO assets and is applicable to INSTREAM_VIDEO and VPAID_LINEAR_VIDEO creatives.\nALTERNATE_VIDEO refers to the DCM representation of child asset videos from Studio, and is applicable to VPAID_LINEAR_VIDEO creatives. These cannot be added or removed within DCM.\nFor VPAID_LINEAR_VIDEO creatives, PARENT_VIDEO, TRANSCODED_VIDEO and ALTERNATE_VIDEO assets that are marked active serve as backup in case the VPAID creative cannot be served. Only PARENT_VIDEO assets can be added or removed for an INSTREAM_VIDEO or VPAID_LINEAR_VIDEO creative.", - "enum": [ - "ADDITIONAL_FLASH", - "ADDITIONAL_IMAGE", - "ALTERNATE_VIDEO", - "BACKUP_IMAGE", - "OTHER", - "PARENT_VIDEO", - "PRIMARY", - "TRANSCODED_VIDEO" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "size": { - "$ref": "Size", - "description": "Size associated with this creative asset. This is a required field when applicable; however for IMAGE and FLASH_INPAGE, creatives if left blank, this field will be automatically set using the actual size of the associated image asset. Applicable to the following creative types: DISPLAY_IMAGE_GALLERY, FLASH_INPAGE, HTML5_BANNER, IMAGE, and all RICH_MEDIA. Applicable to DISPLAY when the primary asset type is not HTML_IMAGE." - }, - "sslCompliant": { - "type": "boolean", - "description": "Whether the asset is SSL-compliant. This is a read-only field. Applicable to all but the following creative types: all REDIRECT and TRACKING_TEXT." - }, - "startTimeType": { - "type": "string", - "description": "Initial wait time type before making the asset visible. Applicable to the following creative types: all RICH_MEDIA.", - "enum": [ - "ASSET_START_TIME_TYPE_CUSTOM", - "ASSET_START_TIME_TYPE_NONE" - ], - "enumDescriptions": [ - "", - "" - ] - }, - "streamingServingUrl": { - "type": "string", - "description": "Streaming URL for video asset. This is a read-only field. Applicable to the following creative types: INSTREAM_VIDEO and all VPAID." - }, - "transparency": { - "type": "boolean", - "description": "Whether the asset is transparent. Applicable to the following creative types: all RICH_MEDIA. Additionally, only applicable to HTML5 assets." - }, - "verticallyLocked": { - "type": "boolean", - "description": "Whether the asset is vertically locked. This is a read-only field. Applicable to the following creative types: all RICH_MEDIA." - }, - "videoDuration": { - "type": "number", - "description": "Detected video duration for video asset. This is a read-only field. Applicable to the following creative types: INSTREAM_VIDEO and all VPAID.", - "format": "float" - }, - "windowMode": { - "type": "string", - "description": "Window mode options for flash assets. Applicable to the following creative types: FLASH_INPAGE, RICH_MEDIA_DISPLAY_EXPANDING, RICH_MEDIA_IM_EXPAND, RICH_MEDIA_DISPLAY_BANNER, and RICH_MEDIA_INPAGE_FLOATING.", - "enum": [ - "OPAQUE", - "TRANSPARENT", - "WINDOW" - ], - "enumDescriptions": [ - "", - "", - "" - ] - }, - "zIndex": { - "type": "integer", - "description": "zIndex value of an asset. Applicable to the following creative types: all RICH_MEDIA.Additionally, only applicable to assets whose displayType is NOT one of the following types: ASSET_DISPLAY_TYPE_INPAGE or ASSET_DISPLAY_TYPE_OVERLAY. Acceptable values are -999999999 to 999999999, inclusive.", - "format": "int32" - }, - "zipFilename": { - "type": "string", - "description": "File name of zip file. This is a read-only field. Applicable to the following creative types: HTML5_BANNER." - }, - "zipFilesize": { - "type": "string", - "description": "Size of zip file. This is a read-only field. Applicable to the following creative types: HTML5_BANNER." - } - } - }, - "CreativeAssetId": { - "id": "CreativeAssetId", - "type": "object", - "description": "Creative Asset ID.", - "properties": { - "name": { - "type": "string", - "description": "Name of the creative asset. This is a required field while inserting an asset. After insertion, this assetIdentifier is used to identify the uploaded asset. Characters in the name must be alphanumeric or one of the following: \".-_ \". Spaces are allowed." - }, - "type": { - "type": "string", - "description": "Type of asset to upload. This is a required field. FLASH and IMAGE are no longer supported for new uploads. All image assets should use HTML_IMAGE.", - "enum": [ - "FLASH", - "HTML", - "HTML_IMAGE", - "IMAGE", - "VIDEO" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "" - ] - } - } - }, - "CreativeAssetMetadata": { - "id": "CreativeAssetMetadata", - "type": "object", - "description": "CreativeAssets contains properties of a creative asset file which will be uploaded or has already been uploaded. Refer to the creative sample code for how to upload assets and insert a creative.", - "properties": { - "assetIdentifier": { - "$ref": "CreativeAssetId", - "description": "ID of the creative asset. This is a required field." - }, - "clickTags": { - "type": "array", - "description": "List of detected click tags for assets. This is a read-only auto-generated field.", - "items": { - "$ref": "ClickTag" - } - }, - "detectedFeatures": { - "type": "array", - "description": "List of feature dependencies for the creative asset that are detected by DCM. Feature dependencies are features that a browser must be able to support in order to render your HTML5 creative correctly. This is a read-only, auto-generated field.", - "items": { - "type": "string", - "enum": [ - "APPLICATION_CACHE", - "AUDIO", - "CANVAS", - "CANVAS_TEXT", - "CSS_ANIMATIONS", - "CSS_BACKGROUND_SIZE", - "CSS_BORDER_IMAGE", - "CSS_BORDER_RADIUS", - "CSS_BOX_SHADOW", - "CSS_COLUMNS", - "CSS_FLEX_BOX", - "CSS_FONT_FACE", - "CSS_GENERATED_CONTENT", - "CSS_GRADIENTS", - "CSS_HSLA", - "CSS_MULTIPLE_BGS", - "CSS_OPACITY", - "CSS_REFLECTIONS", - "CSS_RGBA", - "CSS_TEXT_SHADOW", - "CSS_TRANSFORMS", - "CSS_TRANSFORMS3D", - "CSS_TRANSITIONS", - "DRAG_AND_DROP", - "GEO_LOCATION", - "HASH_CHANGE", - "HISTORY", - "INDEXED_DB", - "INLINE_SVG", - "INPUT_ATTR_AUTOCOMPLETE", - "INPUT_ATTR_AUTOFOCUS", - "INPUT_ATTR_LIST", - "INPUT_ATTR_MAX", - "INPUT_ATTR_MIN", - "INPUT_ATTR_MULTIPLE", - "INPUT_ATTR_PATTERN", - "INPUT_ATTR_PLACEHOLDER", - "INPUT_ATTR_REQUIRED", - "INPUT_ATTR_STEP", - "INPUT_TYPE_COLOR", - "INPUT_TYPE_DATE", - "INPUT_TYPE_DATETIME", - "INPUT_TYPE_DATETIME_LOCAL", - "INPUT_TYPE_EMAIL", - "INPUT_TYPE_MONTH", - "INPUT_TYPE_NUMBER", - "INPUT_TYPE_RANGE", - "INPUT_TYPE_SEARCH", - "INPUT_TYPE_TEL", - "INPUT_TYPE_TIME", - "INPUT_TYPE_URL", - "INPUT_TYPE_WEEK", - "LOCAL_STORAGE", - "POST_MESSAGE", - "SESSION_STORAGE", - "SMIL", - "SVG_CLIP_PATHS", - "SVG_FE_IMAGE", - "SVG_FILTERS", - "SVG_HREF", - "TOUCH", - "VIDEO", - "WEBGL", - "WEB_SOCKETS", - "WEB_SQL_DATABASE", - "WEB_WORKERS" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - } - }, - "id": { - "type": "string", - "description": "Numeric ID of the asset. This is a read-only, auto-generated field.", - "format": "int64" - }, - "idDimensionValue": { - "$ref": "DimensionValue", - "description": "Dimension value for the numeric ID of the asset. This is a read-only, auto-generated field." - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#creativeAssetMetadata\".", - "default": "dfareporting#creativeAssetMetadata" - }, - "warnedValidationRules": { - "type": "array", - "description": "Rules validated during code generation that generated a warning. This is a read-only, auto-generated field.\n\nPossible values are:\n- \"ADMOB_REFERENCED\"\n- \"ASSET_FORMAT_UNSUPPORTED_DCM\"\n- \"ASSET_INVALID\"\n- \"CLICK_TAG_HARD_CODED\"\n- \"CLICK_TAG_INVALID\"\n- \"CLICK_TAG_IN_GWD\"\n- \"CLICK_TAG_MISSING\"\n- \"CLICK_TAG_MORE_THAN_ONE\"\n- \"CLICK_TAG_NON_TOP_LEVEL\"\n- \"COMPONENT_UNSUPPORTED_DCM\"\n- \"ENABLER_UNSUPPORTED_METHOD_DCM\"\n- \"EXTERNAL_FILE_REFERENCED\"\n- \"FILE_DETAIL_EMPTY\"\n- \"FILE_TYPE_INVALID\"\n- \"GWD_PROPERTIES_INVALID\"\n- \"HTML5_FEATURE_UNSUPPORTED\"\n- \"LINKED_FILE_NOT_FOUND\"\n- \"MAX_FLASH_VERSION_11\"\n- \"MRAID_REFERENCED\"\n- \"NOT_SSL_COMPLIANT\"\n- \"ORPHANED_ASSET\"\n- \"PRIMARY_HTML_MISSING\"\n- \"SVG_INVALID\"\n- \"ZIP_INVALID\"", - "items": { - "type": "string", - "enum": [ - "ADMOB_REFERENCED", - "ASSET_FORMAT_UNSUPPORTED_DCM", - "ASSET_INVALID", - "CLICK_TAG_HARD_CODED", - "CLICK_TAG_INVALID", - "CLICK_TAG_IN_GWD", - "CLICK_TAG_MISSING", - "CLICK_TAG_MORE_THAN_ONE", - "CLICK_TAG_NON_TOP_LEVEL", - "COMPONENT_UNSUPPORTED_DCM", - "ENABLER_UNSUPPORTED_METHOD_DCM", - "EXTERNAL_FILE_REFERENCED", - "FILE_DETAIL_EMPTY", - "FILE_TYPE_INVALID", - "GWD_PROPERTIES_INVALID", - "HTML5_FEATURE_UNSUPPORTED", - "LINKED_FILE_NOT_FOUND", - "MAX_FLASH_VERSION_11", - "MRAID_REFERENCED", - "NOT_SSL_COMPLIANT", - "ORPHANED_ASSET", - "PRIMARY_HTML_MISSING", - "SVG_INVALID", - "ZIP_INVALID" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - } - } - } - }, - "CreativeAssetSelection": { - "id": "CreativeAssetSelection", - "type": "object", - "description": "Encapsulates the list of rules for asset selection and a default asset in case none of the rules match. Applicable to INSTREAM_VIDEO creatives.", - "properties": { - "defaultAssetId": { - "type": "string", - "description": "A creativeAssets[].id. This should refer to one of the parent assets in this creative, and will be served if none of the rules match. This is a required field.", - "format": "int64" - }, - "rules": { - "type": "array", - "description": "Rules determine which asset will be served to a viewer. Rules will be evaluated in the order in which they are stored in this list. This list must contain at least one rule. Applicable to INSTREAM_VIDEO creatives.", - "items": { - "$ref": "Rule" - } - } - } - }, - "CreativeAssignment": { - "id": "CreativeAssignment", - "type": "object", - "description": "Creative Assignment.", - "properties": { - "active": { - "type": "boolean", - "description": "Whether this creative assignment is active. When true, the creative will be included in the ad's rotation." - }, - "applyEventTags": { - "type": "boolean", - "description": "Whether applicable event tags should fire when this creative assignment is rendered. If this value is unset when the ad is inserted or updated, it will default to true for all creative types EXCEPT for INTERNAL_REDIRECT, INTERSTITIAL_INTERNAL_REDIRECT, and INSTREAM_VIDEO." - }, - "clickThroughUrl": { - "$ref": "ClickThroughUrl", - "description": "Click-through URL of the creative assignment." - }, - "companionCreativeOverrides": { - "type": "array", - "description": "Companion creative overrides for this creative assignment. Applicable to video ads.", - "items": { - "$ref": "CompanionClickThroughOverride" - } - }, - "creativeGroupAssignments": { - "type": "array", - "description": "Creative group assignments for this creative assignment. Only one assignment per creative group number is allowed for a maximum of two assignments.", - "items": { - "$ref": "CreativeGroupAssignment" - } - }, - "creativeId": { - "type": "string", - "description": "ID of the creative to be assigned. This is a required field.", - "format": "int64" - }, - "creativeIdDimensionValue": { - "$ref": "DimensionValue", - "description": "Dimension value for the ID of the creative. This is a read-only, auto-generated field." - }, - "endTime": { - "type": "string", - "description": "Date and time that the assigned creative should stop serving. Must be later than the start time.", - "format": "date-time" - }, - "richMediaExitOverrides": { - "type": "array", - "description": "Rich media exit overrides for this creative assignment.\nApplicable when the creative type is any of the following: \n- DISPLAY\n- RICH_MEDIA_INPAGE\n- RICH_MEDIA_INPAGE_FLOATING\n- RICH_MEDIA_IM_EXPAND\n- RICH_MEDIA_EXPANDING\n- RICH_MEDIA_INTERSTITIAL_FLOAT\n- RICH_MEDIA_MOBILE_IN_APP\n- RICH_MEDIA_MULTI_FLOATING\n- RICH_MEDIA_PEEL_DOWN\n- VPAID_LINEAR\n- VPAID_NON_LINEAR", - "items": { - "$ref": "RichMediaExitOverride" - } - }, - "sequence": { - "type": "integer", - "description": "Sequence number of the creative assignment, applicable when the rotation type is CREATIVE_ROTATION_TYPE_SEQUENTIAL. Acceptable values are 1 to 65535, inclusive.", - "format": "int32" - }, - "sslCompliant": { - "type": "boolean", - "description": "Whether the creative to be assigned is SSL-compliant. This is a read-only field that is auto-generated when the ad is inserted or updated." - }, - "startTime": { - "type": "string", - "description": "Date and time that the assigned creative should start serving.", - "format": "date-time" - }, - "weight": { - "type": "integer", - "description": "Weight of the creative assignment, applicable when the rotation type is CREATIVE_ROTATION_TYPE_RANDOM. Value must be greater than or equal to 1.", - "format": "int32" - } - } - }, - "CreativeCustomEvent": { - "id": "CreativeCustomEvent", - "type": "object", - "description": "Creative Custom Event.", - "properties": { - "advertiserCustomEventId": { - "type": "string", - "description": "Unique ID of this event used by DDM Reporting and Data Transfer. This is a read-only field.", - "format": "int64" - }, - "advertiserCustomEventName": { - "type": "string", - "description": "User-entered name for the event." - }, - "advertiserCustomEventType": { - "type": "string", - "description": "Type of the event. This is a read-only field.", - "enum": [ - "ADVERTISER_EVENT_COUNTER", - "ADVERTISER_EVENT_EXIT", - "ADVERTISER_EVENT_TIMER" - ], - "enumDescriptions": [ - "", - "", - "" - ] - }, - "artworkLabel": { - "type": "string", - "description": "Artwork label column, used to link events in DCM back to events in Studio. This is a required field and should not be modified after insertion." - }, - "artworkType": { - "type": "string", - "description": "Artwork type used by the creative.This is a read-only field.", - "enum": [ - "ARTWORK_TYPE_FLASH", - "ARTWORK_TYPE_HTML5", - "ARTWORK_TYPE_IMAGE", - "ARTWORK_TYPE_MIXED" - ], - "enumDescriptions": [ - "", - "", - "", - "" - ] - }, - "exitUrl": { - "type": "string", - "description": "Exit URL of the event. This field is used only for exit events." - }, - "id": { - "type": "string", - "description": "ID of this event. This is a required field and should not be modified after insertion.", - "format": "int64" - }, - "popupWindowProperties": { - "$ref": "PopupWindowProperties", - "description": "Properties for rich media popup windows. This field is used only for exit events." - }, - "targetType": { - "type": "string", - "description": "Target type used by the event.", - "enum": [ - "TARGET_BLANK", - "TARGET_PARENT", - "TARGET_POPUP", - "TARGET_SELF", - "TARGET_TOP" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "" - ] - }, - "videoReportingId": { - "type": "string", - "description": "Video reporting ID, used to differentiate multiple videos in a single creative. This is a read-only field." - } - } - }, - "CreativeField": { - "id": "CreativeField", - "type": "object", - "description": "Contains properties of a creative field.", - "properties": { - "accountId": { - "type": "string", - "description": "Account ID of this creative field. This is a read-only field that can be left blank.", - "format": "int64" - }, - "advertiserId": { - "type": "string", - "description": "Advertiser ID of this creative field. This is a required field on insertion.", - "format": "int64" - }, - "advertiserIdDimensionValue": { - "$ref": "DimensionValue", - "description": "Dimension value for the ID of the advertiser. This is a read-only, auto-generated field." - }, - "id": { - "type": "string", - "description": "ID of this creative field. This is a read-only, auto-generated field.", - "format": "int64" - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#creativeField\".", - "default": "dfareporting#creativeField" - }, - "name": { - "type": "string", - "description": "Name of this creative field. This is a required field and must be less than 256 characters long and unique among creative fields of the same advertiser." - }, - "subaccountId": { - "type": "string", - "description": "Subaccount ID of this creative field. This is a read-only field that can be left blank.", - "format": "int64" - } - } - }, - "CreativeFieldAssignment": { - "id": "CreativeFieldAssignment", - "type": "object", - "description": "Creative Field Assignment.", - "properties": { - "creativeFieldId": { - "type": "string", - "description": "ID of the creative field.", - "format": "int64" - }, - "creativeFieldValueId": { - "type": "string", - "description": "ID of the creative field value.", - "format": "int64" - } - } - }, - "CreativeFieldValue": { - "id": "CreativeFieldValue", - "type": "object", - "description": "Contains properties of a creative field value.", - "properties": { - "id": { - "type": "string", - "description": "ID of this creative field value. This is a read-only, auto-generated field.", - "format": "int64" - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#creativeFieldValue\".", - "default": "dfareporting#creativeFieldValue" - }, - "value": { - "type": "string", - "description": "Value of this creative field value. It needs to be less than 256 characters in length and unique per creative field." - } - } - }, - "CreativeFieldValuesListResponse": { - "id": "CreativeFieldValuesListResponse", - "type": "object", - "description": "Creative Field Value List Response", - "properties": { "creativeFieldValues": { - "type": "array", - "description": "Creative field value collection.", - "items": { - "$ref": "CreativeFieldValue" - } + "methods": { + "delete": { + "description": "Deletes an existing creative field value.", + "httpMethod": "DELETE", + "id": "dfareporting.creativeFieldValues.delete", + "parameterOrder": [ + "profileId", + "creativeFieldId", + "id" + ], + "parameters": { + "creativeFieldId": { + "description": "Creative field ID for this creative field value.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "id": { + "description": "Creative Field Value ID", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/creativeFields/{creativeFieldId}/creativeFieldValues/{id}", + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "get": { + "description": "Gets one creative field value by ID.", + "httpMethod": "GET", + "id": "dfareporting.creativeFieldValues.get", + "parameterOrder": [ + "profileId", + "creativeFieldId", + "id" + ], + "parameters": { + "creativeFieldId": { + "description": "Creative field ID for this creative field value.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "id": { + "description": "Creative Field Value ID", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/creativeFields/{creativeFieldId}/creativeFieldValues/{id}", + "response": { + "$ref": "CreativeFieldValue" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "insert": { + "description": "Inserts a new creative field value.", + "httpMethod": "POST", + "id": "dfareporting.creativeFieldValues.insert", + "parameterOrder": [ + "profileId", + "creativeFieldId" + ], + "parameters": { + "creativeFieldId": { + "description": "Creative field ID for this creative field value.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/creativeFields/{creativeFieldId}/creativeFieldValues", + "request": { + "$ref": "CreativeFieldValue" + }, + "response": { + "$ref": "CreativeFieldValue" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "description": "Retrieves a list of creative field values, possibly filtered. This method supports paging.", + "httpMethod": "GET", + "id": "dfareporting.creativeFieldValues.list", + "parameterOrder": [ + "profileId", + "creativeFieldId" + ], + "parameters": { + "creativeFieldId": { + "description": "Creative field ID for this creative field value.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "ids": { + "description": "Select only creative field values with these IDs.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "maxResults": { + "default": "1000", + "description": "Maximum number of results to return.", + "format": "int32", + "location": "query", + "maximum": "1000", + "minimum": "0", + "type": "integer" + }, + "pageToken": { + "description": "Value of the nextPageToken from the previous result page.", + "location": "query", + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "searchString": { + "description": "Allows searching for creative field values by their values. Wildcards (e.g. *) are not allowed.", + "location": "query", + "type": "string" + }, + "sortField": { + "default": "ID", + "description": "Field by which to sort the list.", + "enum": [ + "ID", + "VALUE" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + }, + "sortOrder": { + "default": "ASCENDING", + "description": "Order of sorted results.", + "enum": [ + "ASCENDING", + "DESCENDING" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + } + }, + "path": "userprofiles/{profileId}/creativeFields/{creativeFieldId}/creativeFieldValues", + "response": { + "$ref": "CreativeFieldValuesListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "patch": { + "description": "Updates an existing creative field value. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "dfareporting.creativeFieldValues.patch", + "parameterOrder": [ + "profileId", + "creativeFieldId", + "id" + ], + "parameters": { + "creativeFieldId": { + "description": "Creative field ID for this creative field value.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "id": { + "description": "Creative Field Value ID", + "format": "int64", + "location": "query", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/creativeFields/{creativeFieldId}/creativeFieldValues", + "request": { + "$ref": "CreativeFieldValue" + }, + "response": { + "$ref": "CreativeFieldValue" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "update": { + "description": "Updates an existing creative field value.", + "httpMethod": "PUT", + "id": "dfareporting.creativeFieldValues.update", + "parameterOrder": [ + "profileId", + "creativeFieldId" + ], + "parameters": { + "creativeFieldId": { + "description": "Creative field ID for this creative field value.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/creativeFields/{creativeFieldId}/creativeFieldValues", + "request": { + "$ref": "CreativeFieldValue" + }, + "response": { + "$ref": "CreativeFieldValue" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#creativeFieldValuesListResponse\".", - "default": "dfareporting#creativeFieldValuesListResponse" - }, - "nextPageToken": { - "type": "string", - "description": "Pagination token to be used for the next list operation." - } - } - }, - "CreativeFieldsListResponse": { - "id": "CreativeFieldsListResponse", - "type": "object", - "description": "Creative Field List Response", - "properties": { "creativeFields": { - "type": "array", - "description": "Creative field collection.", - "items": { - "$ref": "CreativeField" - } + "methods": { + "delete": { + "description": "Deletes an existing creative field.", + "httpMethod": "DELETE", + "id": "dfareporting.creativeFields.delete", + "parameterOrder": [ + "profileId", + "id" + ], + "parameters": { + "id": { + "description": "Creative Field ID", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/creativeFields/{id}", + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "get": { + "description": "Gets one creative field by ID.", + "httpMethod": "GET", + "id": "dfareporting.creativeFields.get", + "parameterOrder": [ + "profileId", + "id" + ], + "parameters": { + "id": { + "description": "Creative Field ID", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/creativeFields/{id}", + "response": { + "$ref": "CreativeField" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "insert": { + "description": "Inserts a new creative field.", + "httpMethod": "POST", + "id": "dfareporting.creativeFields.insert", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/creativeFields", + "request": { + "$ref": "CreativeField" + }, + "response": { + "$ref": "CreativeField" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "description": "Retrieves a list of creative fields, possibly filtered. This method supports paging.", + "httpMethod": "GET", + "id": "dfareporting.creativeFields.list", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "advertiserIds": { + "description": "Select only creative fields that belong to these advertisers.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "ids": { + "description": "Select only creative fields with these IDs.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "maxResults": { + "default": "1000", + "description": "Maximum number of results to return.", + "format": "int32", + "location": "query", + "maximum": "1000", + "minimum": "0", + "type": "integer" + }, + "pageToken": { + "description": "Value of the nextPageToken from the previous result page.", + "location": "query", + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "searchString": { + "description": "Allows searching for creative fields by name or ID. Wildcards (*) are allowed. For example, \"creativefield*2015\" will return creative fields with names like \"creativefield June 2015\", \"creativefield April 2015\", or simply \"creativefield 2015\". Most of the searches also add wild-cards implicitly at the start and the end of the search string. For example, a search string of \"creativefield\" will match creative fields with the name \"my creativefield\", \"creativefield 2015\", or simply \"creativefield\".", + "location": "query", + "type": "string" + }, + "sortField": { + "default": "ID", + "description": "Field by which to sort the list.", + "enum": [ + "ID", + "NAME" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + }, + "sortOrder": { + "default": "ASCENDING", + "description": "Order of sorted results.", + "enum": [ + "ASCENDING", + "DESCENDING" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + } + }, + "path": "userprofiles/{profileId}/creativeFields", + "response": { + "$ref": "CreativeFieldsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "patch": { + "description": "Updates an existing creative field. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "dfareporting.creativeFields.patch", + "parameterOrder": [ + "profileId", + "id" + ], + "parameters": { + "id": { + "description": "Creative Field ID", + "format": "int64", + "location": "query", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/creativeFields", + "request": { + "$ref": "CreativeField" + }, + "response": { + "$ref": "CreativeField" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "update": { + "description": "Updates an existing creative field.", + "httpMethod": "PUT", + "id": "dfareporting.creativeFields.update", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/creativeFields", + "request": { + "$ref": "CreativeField" + }, + "response": { + "$ref": "CreativeField" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#creativeFieldsListResponse\".", - "default": "dfareporting#creativeFieldsListResponse" - }, - "nextPageToken": { - "type": "string", - "description": "Pagination token to be used for the next list operation." - } - } - }, - "CreativeGroup": { - "id": "CreativeGroup", - "type": "object", - "description": "Contains properties of a creative group.", - "properties": { - "accountId": { - "type": "string", - "description": "Account ID of this creative group. This is a read-only field that can be left blank.", - "format": "int64" - }, - "advertiserId": { - "type": "string", - "description": "Advertiser ID of this creative group. This is a required field on insertion.", - "format": "int64" - }, - "advertiserIdDimensionValue": { - "$ref": "DimensionValue", - "description": "Dimension value for the ID of the advertiser. This is a read-only, auto-generated field." - }, - "groupNumber": { - "type": "integer", - "description": "Subgroup of the creative group. Assign your creative groups to a subgroup in order to filter or manage them more easily. This field is required on insertion and is read-only after insertion. Acceptable values are 1 to 2, inclusive.", - "format": "int32" - }, - "id": { - "type": "string", - "description": "ID of this creative group. This is a read-only, auto-generated field.", - "format": "int64" - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#creativeGroup\".", - "default": "dfareporting#creativeGroup" - }, - "name": { - "type": "string", - "description": "Name of this creative group. This is a required field and must be less than 256 characters long and unique among creative groups of the same advertiser." - }, - "subaccountId": { - "type": "string", - "description": "Subaccount ID of this creative group. This is a read-only field that can be left blank.", - "format": "int64" - } - } - }, - "CreativeGroupAssignment": { - "id": "CreativeGroupAssignment", - "type": "object", - "description": "Creative Group Assignment.", - "properties": { - "creativeGroupId": { - "type": "string", - "description": "ID of the creative group to be assigned.", - "format": "int64" - }, - "creativeGroupNumber": { - "type": "string", - "description": "Creative group number of the creative group assignment.", - "enum": [ - "CREATIVE_GROUP_ONE", - "CREATIVE_GROUP_TWO" - ], - "enumDescriptions": [ - "", - "" - ] - } - } - }, - "CreativeGroupsListResponse": { - "id": "CreativeGroupsListResponse", - "type": "object", - "description": "Creative Group List Response", - "properties": { "creativeGroups": { - "type": "array", - "description": "Creative group collection.", - "items": { - "$ref": "CreativeGroup" - } + "methods": { + "get": { + "description": "Gets one creative group by ID.", + "httpMethod": "GET", + "id": "dfareporting.creativeGroups.get", + "parameterOrder": [ + "profileId", + "id" + ], + "parameters": { + "id": { + "description": "Creative group ID.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/creativeGroups/{id}", + "response": { + "$ref": "CreativeGroup" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "insert": { + "description": "Inserts a new creative group.", + "httpMethod": "POST", + "id": "dfareporting.creativeGroups.insert", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/creativeGroups", + "request": { + "$ref": "CreativeGroup" + }, + "response": { + "$ref": "CreativeGroup" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "description": "Retrieves a list of creative groups, possibly filtered. This method supports paging.", + "httpMethod": "GET", + "id": "dfareporting.creativeGroups.list", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "advertiserIds": { + "description": "Select only creative groups that belong to these advertisers.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "groupNumber": { + "description": "Select only creative groups that belong to this subgroup.", + "format": "int32", + "location": "query", + "maximum": "2", + "minimum": "1", + "type": "integer" + }, + "ids": { + "description": "Select only creative groups with these IDs.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "maxResults": { + "default": "1000", + "description": "Maximum number of results to return.", + "format": "int32", + "location": "query", + "maximum": "1000", + "minimum": "0", + "type": "integer" + }, + "pageToken": { + "description": "Value of the nextPageToken from the previous result page.", + "location": "query", + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "searchString": { + "description": "Allows searching for creative groups by name or ID. Wildcards (*) are allowed. For example, \"creativegroup*2015\" will return creative groups with names like \"creativegroup June 2015\", \"creativegroup April 2015\", or simply \"creativegroup 2015\". Most of the searches also add wild-cards implicitly at the start and the end of the search string. For example, a search string of \"creativegroup\" will match creative groups with the name \"my creativegroup\", \"creativegroup 2015\", or simply \"creativegroup\".", + "location": "query", + "type": "string" + }, + "sortField": { + "default": "ID", + "description": "Field by which to sort the list.", + "enum": [ + "ID", + "NAME" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + }, + "sortOrder": { + "default": "ASCENDING", + "description": "Order of sorted results.", + "enum": [ + "ASCENDING", + "DESCENDING" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + } + }, + "path": "userprofiles/{profileId}/creativeGroups", + "response": { + "$ref": "CreativeGroupsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "patch": { + "description": "Updates an existing creative group. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "dfareporting.creativeGroups.patch", + "parameterOrder": [ + "profileId", + "id" + ], + "parameters": { + "id": { + "description": "Creative group ID.", + "format": "int64", + "location": "query", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/creativeGroups", + "request": { + "$ref": "CreativeGroup" + }, + "response": { + "$ref": "CreativeGroup" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "update": { + "description": "Updates an existing creative group.", + "httpMethod": "PUT", + "id": "dfareporting.creativeGroups.update", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/creativeGroups", + "request": { + "$ref": "CreativeGroup" + }, + "response": { + "$ref": "CreativeGroup" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#creativeGroupsListResponse\".", - "default": "dfareporting#creativeGroupsListResponse" - }, - "nextPageToken": { - "type": "string", - "description": "Pagination token to be used for the next list operation." - } - } - }, - "CreativeOptimizationConfiguration": { - "id": "CreativeOptimizationConfiguration", - "type": "object", - "description": "Creative optimization settings.", - "properties": { - "id": { - "type": "string", - "description": "ID of this creative optimization config. This field is auto-generated when the campaign is inserted or updated. It can be null for existing campaigns.", - "format": "int64" - }, - "name": { - "type": "string", - "description": "Name of this creative optimization config. This is a required field and must be less than 129 characters long." - }, - "optimizationActivitys": { - "type": "array", - "description": "List of optimization activities associated with this configuration.", - "items": { - "$ref": "OptimizationActivity" - } - }, - "optimizationModel": { - "type": "string", - "description": "Optimization model for this configuration.", - "enum": [ - "CLICK", - "POST_CLICK", - "POST_CLICK_AND_IMPRESSION", - "POST_IMPRESSION", - "VIDEO_COMPLETION" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "" - ] - } - } - }, - "CreativeRotation": { - "id": "CreativeRotation", - "type": "object", - "description": "Creative Rotation.", - "properties": { - "creativeAssignments": { - "type": "array", - "description": "Creative assignments in this creative rotation.", - "items": { - "$ref": "CreativeAssignment" - } - }, - "creativeOptimizationConfigurationId": { - "type": "string", - "description": "Creative optimization configuration that is used by this ad. It should refer to one of the existing optimization configurations in the ad's campaign. If it is unset or set to 0, then the campaign's default optimization configuration will be used for this ad.", - "format": "int64" - }, - "type": { - "type": "string", - "description": "Type of creative rotation. Can be used to specify whether to use sequential or random rotation.", - "enum": [ - "CREATIVE_ROTATION_TYPE_RANDOM", - "CREATIVE_ROTATION_TYPE_SEQUENTIAL" - ], - "enumDescriptions": [ - "", - "" - ] - }, - "weightCalculationStrategy": { - "type": "string", - "description": "Strategy for calculating weights. Used with CREATIVE_ROTATION_TYPE_RANDOM.", - "enum": [ - "WEIGHT_STRATEGY_CUSTOM", - "WEIGHT_STRATEGY_EQUAL", - "WEIGHT_STRATEGY_HIGHEST_CTR", - "WEIGHT_STRATEGY_OPTIMIZED" - ], - "enumDescriptions": [ - "", - "", - "", - "" - ] - } - } - }, - "CreativeSettings": { - "id": "CreativeSettings", - "type": "object", - "description": "Creative Settings", - "properties": { - "iFrameFooter": { - "type": "string", - "description": "Header text for iFrames for this site. Must be less than or equal to 2000 characters long." - }, - "iFrameHeader": { - "type": "string", - "description": "Header text for iFrames for this site. Must be less than or equal to 2000 characters long." - } - } - }, - "CreativesListResponse": { - "id": "CreativesListResponse", - "type": "object", - "description": "Creative List Response", - "properties": { "creatives": { - "type": "array", - "description": "Creative collection.", - "items": { - "$ref": "Creative" - } + "methods": { + "get": { + "description": "Gets one creative by ID.", + "httpMethod": "GET", + "id": "dfareporting.creatives.get", + "parameterOrder": [ + "profileId", + "id" + ], + "parameters": { + "id": { + "description": "Creative ID.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/creatives/{id}", + "response": { + "$ref": "Creative" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "insert": { + "description": "Inserts a new creative.", + "httpMethod": "POST", + "id": "dfareporting.creatives.insert", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/creatives", + "request": { + "$ref": "Creative" + }, + "response": { + "$ref": "Creative" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "description": "Retrieves a list of creatives, possibly filtered. This method supports paging.", + "httpMethod": "GET", + "id": "dfareporting.creatives.list", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "active": { + "description": "Select only active creatives. Leave blank to select active and inactive creatives.", + "location": "query", + "type": "boolean" + }, + "advertiserId": { + "description": "Select only creatives with this advertiser ID.", + "format": "int64", + "location": "query", + "type": "string" + }, + "archived": { + "description": "Select only archived creatives. Leave blank to select archived and unarchived creatives.", + "location": "query", + "type": "boolean" + }, + "campaignId": { + "description": "Select only creatives with this campaign ID.", + "format": "int64", + "location": "query", + "type": "string" + }, + "companionCreativeIds": { + "description": "Select only in-stream video creatives with these companion IDs.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "creativeFieldIds": { + "description": "Select only creatives with these creative field IDs.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "ids": { + "description": "Select only creatives with these IDs.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "maxResults": { + "default": "1000", + "description": "Maximum number of results to return.", + "format": "int32", + "location": "query", + "maximum": "1000", + "minimum": "0", + "type": "integer" + }, + "pageToken": { + "description": "Value of the nextPageToken from the previous result page.", + "location": "query", + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "renderingIds": { + "description": "Select only creatives with these rendering IDs.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "searchString": { + "description": "Allows searching for objects by name or ID. Wildcards (*) are allowed. For example, \"creative*2015\" will return objects with names like \"creative June 2015\", \"creative April 2015\", or simply \"creative 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"creative\" will match objects with name \"my creative\", \"creative 2015\", or simply \"creative\".", + "location": "query", + "type": "string" + }, + "sizeIds": { + "description": "Select only creatives with these size IDs.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "sortField": { + "default": "ID", + "description": "Field by which to sort the list.", + "enum": [ + "ID", + "NAME" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + }, + "sortOrder": { + "default": "ASCENDING", + "description": "Order of sorted results.", + "enum": [ + "ASCENDING", + "DESCENDING" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + }, + "studioCreativeId": { + "description": "Select only creatives corresponding to this Studio creative ID.", + "format": "int64", + "location": "query", + "type": "string" + }, + "types": { + "description": "Select only creatives with these creative types.", + "enum": [ + "BRAND_SAFE_DEFAULT_INSTREAM_VIDEO", + "CUSTOM_DISPLAY", + "CUSTOM_DISPLAY_INTERSTITIAL", + "DISPLAY", + "DISPLAY_IMAGE_GALLERY", + "DISPLAY_REDIRECT", + "FLASH_INPAGE", + "HTML5_BANNER", + "IMAGE", + "INSTREAM_VIDEO", + "INSTREAM_VIDEO_REDIRECT", + "INTERNAL_REDIRECT", + "INTERSTITIAL_INTERNAL_REDIRECT", + "RICH_MEDIA_DISPLAY_BANNER", + "RICH_MEDIA_DISPLAY_EXPANDING", + "RICH_MEDIA_DISPLAY_INTERSTITIAL", + "RICH_MEDIA_DISPLAY_MULTI_FLOATING_INTERSTITIAL", + "RICH_MEDIA_IM_EXPAND", + "RICH_MEDIA_INPAGE_FLOATING", + "RICH_MEDIA_MOBILE_IN_APP", + "RICH_MEDIA_PEEL_DOWN", + "TRACKING_TEXT", + "VPAID_LINEAR_VIDEO", + "VPAID_NON_LINEAR_VIDEO" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "location": "query", + "repeated": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/creatives", + "response": { + "$ref": "CreativesListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "patch": { + "description": "Updates an existing creative. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "dfareporting.creatives.patch", + "parameterOrder": [ + "profileId", + "id" + ], + "parameters": { + "id": { + "description": "Creative ID.", + "format": "int64", + "location": "query", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/creatives", + "request": { + "$ref": "Creative" + }, + "response": { + "$ref": "Creative" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "update": { + "description": "Updates an existing creative.", + "httpMethod": "PUT", + "id": "dfareporting.creatives.update", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/creatives", + "request": { + "$ref": "Creative" + }, + "response": { + "$ref": "Creative" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#creativesListResponse\".", - "default": "dfareporting#creativesListResponse" + "dimensionValues": { + "methods": { + "query": { + "description": "Retrieves list of report dimension values for a list of filters.", + "httpMethod": "POST", + "id": "dfareporting.dimensionValues.query", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "maxResults": { + "default": "100", + "description": "Maximum number of results to return.", + "format": "int32", + "location": "query", + "maximum": "100", + "minimum": "0", + "type": "integer" + }, + "pageToken": { + "description": "The value of the nextToken from the previous result page.", + "location": "query", + "type": "string" + }, + "profileId": { + "description": "The DFA user profile ID.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/dimensionvalues/query", + "request": { + "$ref": "DimensionValueRequest" + }, + "response": { + "$ref": "DimensionValueList" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfareporting" + ] + } + } }, - "nextPageToken": { - "type": "string", - "description": "Pagination token to be used for the next list operation." - } - } - }, - "CrossDimensionReachReportCompatibleFields": { - "id": "CrossDimensionReachReportCompatibleFields", - "type": "object", - "description": "Represents fields that are compatible to be selected for a report of type \"CROSS_DIMENSION_REACH\".", - "properties": { - "breakdown": { - "type": "array", - "description": "Dimensions which are compatible to be selected in the \"breakdown\" section of the report.", - "items": { - "$ref": "Dimension" - } - }, - "dimensionFilters": { - "type": "array", - "description": "Dimensions which are compatible to be selected in the \"dimensionFilters\" section of the report.", - "items": { - "$ref": "Dimension" - } - }, - "kind": { - "type": "string", - "description": "The kind of resource this is, in this case dfareporting#crossDimensionReachReportCompatibleFields.", - "default": "dfareporting#crossDimensionReachReportCompatibleFields" - }, - "metrics": { - "type": "array", - "description": "Metrics which are compatible to be selected in the \"metricNames\" section of the report.", - "items": { - "$ref": "Metric" - } - }, - "overlapMetrics": { - "type": "array", - "description": "Metrics which are compatible to be selected in the \"overlapMetricNames\" section of the report.", - "items": { - "$ref": "Metric" - } - } - } - }, - "CustomFloodlightVariable": { - "id": "CustomFloodlightVariable", - "type": "object", - "description": "A custom floodlight variable.", - "properties": { - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#customFloodlightVariable\".", - "default": "dfareporting#customFloodlightVariable" - }, - "type": { - "type": "string", - "description": "The type of custom floodlight variable to supply a value for. These map to the \"u[1-20]=\" in the tags.", - "enum": [ - "U1", - "U10", - "U100", - "U11", - "U12", - "U13", - "U14", - "U15", - "U16", - "U17", - "U18", - "U19", - "U2", - "U20", - "U21", - "U22", - "U23", - "U24", - "U25", - "U26", - "U27", - "U28", - "U29", - "U3", - "U30", - "U31", - "U32", - "U33", - "U34", - "U35", - "U36", - "U37", - "U38", - "U39", - "U4", - "U40", - "U41", - "U42", - "U43", - "U44", - "U45", - "U46", - "U47", - "U48", - "U49", - "U5", - "U50", - "U51", - "U52", - "U53", - "U54", - "U55", - "U56", - "U57", - "U58", - "U59", - "U6", - "U60", - "U61", - "U62", - "U63", - "U64", - "U65", - "U66", - "U67", - "U68", - "U69", - "U7", - "U70", - "U71", - "U72", - "U73", - "U74", - "U75", - "U76", - "U77", - "U78", - "U79", - "U8", - "U80", - "U81", - "U82", - "U83", - "U84", - "U85", - "U86", - "U87", - "U88", - "U89", - "U9", - "U90", - "U91", - "U92", - "U93", - "U94", - "U95", - "U96", - "U97", - "U98", - "U99" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "value": { - "type": "string", - "description": "The value of the custom floodlight variable. The length of string must not exceed 50 characters." - } - } - }, - "CustomRichMediaEvents": { - "id": "CustomRichMediaEvents", - "type": "object", - "description": "Represents a Custom Rich Media Events group.", - "properties": { - "filteredEventIds": { - "type": "array", - "description": "List of custom rich media event IDs. Dimension values must be all of type dfa:richMediaEventTypeIdAndName.", - "items": { - "$ref": "DimensionValue" - } - }, - "kind": { - "type": "string", - "description": "The kind of resource this is, in this case dfareporting#customRichMediaEvents.", - "default": "dfareporting#customRichMediaEvents" - } - } - }, - "DateRange": { - "id": "DateRange", - "type": "object", - "description": "Represents a date range.", - "properties": { - "endDate": { - "type": "string", - "description": "The end date of the date range, inclusive. A string of the format: \"yyyy-MM-dd\".", - "format": "date" - }, - "kind": { - "type": "string", - "description": "The kind of resource this is, in this case dfareporting#dateRange.", - "default": "dfareporting#dateRange" - }, - "relativeDateRange": { - "type": "string", - "description": "The date range relative to the date of when the report is run.", - "enum": [ - "LAST_24_MONTHS", - "LAST_30_DAYS", - "LAST_365_DAYS", - "LAST_7_DAYS", - "LAST_90_DAYS", - "MONTH_TO_DATE", - "PREVIOUS_MONTH", - "PREVIOUS_QUARTER", - "PREVIOUS_WEEK", - "PREVIOUS_YEAR", - "QUARTER_TO_DATE", - "TODAY", - "WEEK_TO_DATE", - "YEAR_TO_DATE", - "YESTERDAY" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "startDate": { - "type": "string", - "description": "The start date of the date range, inclusive. A string of the format: \"yyyy-MM-dd\".", - "format": "date" - } - } - }, - "DayPartTargeting": { - "id": "DayPartTargeting", - "type": "object", - "description": "Day Part Targeting.", - "properties": { - "daysOfWeek": { - "type": "array", - "description": "Days of the week when the ad will serve.\n\nAcceptable values are:\n- \"SUNDAY\"\n- \"MONDAY\"\n- \"TUESDAY\"\n- \"WEDNESDAY\"\n- \"THURSDAY\"\n- \"FRIDAY\"\n- \"SATURDAY\"", - "items": { - "type": "string", - "enum": [ - "FRIDAY", - "MONDAY", - "SATURDAY", - "SUNDAY", - "THURSDAY", - "TUESDAY", - "WEDNESDAY" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "" - ] - } - }, - "hoursOfDay": { - "type": "array", - "description": "Hours of the day when the ad will serve, where 0 is midnight to 1 AM and 23 is 11 PM to midnight. Can be specified with days of week, in which case the ad would serve during these hours on the specified days. For example if Monday, Wednesday, Friday are the days of week specified and 9-10am, 3-5pm (hours 9, 15, and 16) is specified, the ad would serve Monday, Wednesdays, and Fridays at 9-10am and 3-5pm. Acceptable values are 0 to 23, inclusive.", - "items": { - "type": "integer", - "format": "int32" - } - }, - "userLocalTime": { - "type": "boolean", - "description": "Whether or not to use the user's local time. If false, the America/New York time zone applies." - } - } - }, - "DefaultClickThroughEventTagProperties": { - "id": "DefaultClickThroughEventTagProperties", - "type": "object", - "description": "Properties of inheriting and overriding the default click-through event tag. A campaign may override the event tag defined at the advertiser level, and an ad may also override the campaign's setting further.", - "properties": { - "defaultClickThroughEventTagId": { - "type": "string", - "description": "ID of the click-through event tag to apply to all ads in this entity's scope.", - "format": "int64" - }, - "overrideInheritedEventTag": { - "type": "boolean", - "description": "Whether this entity should override the inherited default click-through event tag with its own defined value." - } - } - }, - "DeliverySchedule": { - "id": "DeliverySchedule", - "type": "object", - "description": "Delivery Schedule.", - "properties": { - "frequencyCap": { - "$ref": "FrequencyCap", - "description": "Limit on the number of times an individual user can be served the ad within a specified period of time." - }, - "hardCutoff": { - "type": "boolean", - "description": "Whether or not hard cutoff is enabled. If true, the ad will not serve after the end date and time. Otherwise the ad will continue to be served until it has reached its delivery goals." - }, - "impressionRatio": { - "type": "string", - "description": "Impression ratio for this ad. This ratio determines how often each ad is served relative to the others. For example, if ad A has an impression ratio of 1 and ad B has an impression ratio of 3, then DCM will serve ad B three times as often as ad A. Acceptable values are 1 to 10, inclusive.", - "format": "int64" - }, - "priority": { - "type": "string", - "description": "Serving priority of an ad, with respect to other ads. The lower the priority number, the greater the priority with which it is served.", - "enum": [ - "AD_PRIORITY_01", - "AD_PRIORITY_02", - "AD_PRIORITY_03", - "AD_PRIORITY_04", - "AD_PRIORITY_05", - "AD_PRIORITY_06", - "AD_PRIORITY_07", - "AD_PRIORITY_08", - "AD_PRIORITY_09", - "AD_PRIORITY_10", - "AD_PRIORITY_11", - "AD_PRIORITY_12", - "AD_PRIORITY_13", - "AD_PRIORITY_14", - "AD_PRIORITY_15", - "AD_PRIORITY_16" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - } - } - }, - "DfpSettings": { - "id": "DfpSettings", - "type": "object", - "description": "DFP Settings", - "properties": { - "dfpNetworkCode": { - "type": "string", - "description": "DFP network code for this directory site." - }, - "dfpNetworkName": { - "type": "string", - "description": "DFP network name for this directory site." - }, - "programmaticPlacementAccepted": { - "type": "boolean", - "description": "Whether this directory site accepts programmatic placements." - }, - "pubPaidPlacementAccepted": { - "type": "boolean", - "description": "Whether this directory site accepts publisher-paid tags." - }, - "publisherPortalOnly": { - "type": "boolean", - "description": "Whether this directory site is available only via DoubleClick Publisher Portal." - } - } - }, - "Dimension": { - "id": "Dimension", - "type": "object", - "description": "Represents a dimension.", - "properties": { - "kind": { - "type": "string", - "description": "The kind of resource this is, in this case dfareporting#dimension.", - "default": "dfareporting#dimension" - }, - "name": { - "type": "string", - "description": "The dimension name, e.g. dfa:advertiser" - } - } - }, - "DimensionFilter": { - "id": "DimensionFilter", - "type": "object", - "description": "Represents a dimension filter.", - "properties": { - "dimensionName": { - "type": "string", - "description": "The name of the dimension to filter." - }, - "kind": { - "type": "string", - "description": "The kind of resource this is, in this case dfareporting#dimensionFilter.", - "default": "dfareporting#dimensionFilter" - }, - "value": { - "type": "string", - "description": "The value of the dimension to filter." - } - } - }, - "DimensionValue": { - "id": "DimensionValue", - "type": "object", - "description": "Represents a DimensionValue resource.", - "properties": { - "dimensionName": { - "type": "string", - "description": "The name of the dimension." - }, - "etag": { - "type": "string", - "description": "The eTag of this response for caching purposes." - }, - "id": { - "type": "string", - "description": "The ID associated with the value if available." - }, - "kind": { - "type": "string", - "description": "The kind of resource this is, in this case dfareporting#dimensionValue.", - "default": "dfareporting#dimensionValue" - }, - "matchType": { - "type": "string", - "description": "Determines how the 'value' field is matched when filtering. If not specified, defaults to EXACT. If set to WILDCARD_EXPRESSION, '*' is allowed as a placeholder for variable length character sequences, and it can be escaped with a backslash. Note, only paid search dimensions ('dfa:paidSearch*') allow a matchType other than EXACT.", - "enum": [ - "BEGINS_WITH", - "CONTAINS", - "EXACT", - "WILDCARD_EXPRESSION" - ], - "enumDescriptions": [ - "", - "", - "", - "" - ] - }, - "value": { - "type": "string", - "description": "The value of the dimension." - } - } - }, - "DimensionValueList": { - "id": "DimensionValueList", - "type": "object", - "description": "Represents the list of DimensionValue resources.", - "properties": { - "etag": { - "type": "string", - "description": "The eTag of this response for caching purposes." - }, - "items": { - "type": "array", - "description": "The dimension values returned in this response.", - "items": { - "$ref": "DimensionValue" - } - }, - "kind": { - "type": "string", - "description": "The kind of list this is, in this case dfareporting#dimensionValueList.", - "default": "dfareporting#dimensionValueList" - }, - "nextPageToken": { - "type": "string", - "description": "Continuation token used to page through dimension values. To retrieve the next page of results, set the next request's \"pageToken\" to the value of this field. The page token is only valid for a limited amount of time and should not be persisted." - } - } - }, - "DimensionValueRequest": { - "id": "DimensionValueRequest", - "type": "object", - "description": "Represents a DimensionValuesRequest.", - "properties": { - "dimensionName": { - "type": "string", - "description": "The name of the dimension for which values should be requested.", - "annotations": { - "required": [ - "dfareporting.dimensionValues.query" - ] - } - }, - "endDate": { - "type": "string", - "description": "The end date of the date range for which to retrieve dimension values. A string of the format \"yyyy-MM-dd\".", - "format": "date", - "annotations": { - "required": [ - "dfareporting.dimensionValues.query" - ] - } - }, - "filters": { - "type": "array", - "description": "The list of filters by which to filter values. The filters are ANDed.", - "items": { - "$ref": "DimensionFilter" - } - }, - "kind": { - "type": "string", - "description": "The kind of request this is, in this case dfareporting#dimensionValueRequest.", - "default": "dfareporting#dimensionValueRequest" - }, - "startDate": { - "type": "string", - "description": "The start date of the date range for which to retrieve dimension values. A string of the format \"yyyy-MM-dd\".", - "format": "date", - "annotations": { - "required": [ - "dfareporting.dimensionValues.query" - ] - } - } - } - }, - "DirectorySite": { - "id": "DirectorySite", - "type": "object", - "description": "DirectorySites contains properties of a website from the Site Directory. Sites need to be added to an account via the Sites resource before they can be assigned to a placement.", - "properties": { - "active": { - "type": "boolean", - "description": "Whether this directory site is active." - }, - "contactAssignments": { - "type": "array", - "description": "Directory site contacts.", - "items": { - "$ref": "DirectorySiteContactAssignment" - } - }, - "countryId": { - "type": "string", - "description": "Country ID of this directory site. This is a read-only field.", - "format": "int64" - }, - "currencyId": { - "type": "string", - "description": "Currency ID of this directory site. This is a read-only field.\nPossible values are: \n- \"1\" for USD \n- \"2\" for GBP \n- \"3\" for ESP \n- \"4\" for SEK \n- \"5\" for CAD \n- \"6\" for JPY \n- \"7\" for DEM \n- \"8\" for AUD \n- \"9\" for FRF \n- \"10\" for ITL \n- \"11\" for DKK \n- \"12\" for NOK \n- \"13\" for FIM \n- \"14\" for ZAR \n- \"15\" for IEP \n- \"16\" for NLG \n- \"17\" for EUR \n- \"18\" for KRW \n- \"19\" for TWD \n- \"20\" for SGD \n- \"21\" for CNY \n- \"22\" for HKD \n- \"23\" for NZD \n- \"24\" for MYR \n- \"25\" for BRL \n- \"26\" for PTE \n- \"27\" for MXP \n- \"28\" for CLP \n- \"29\" for TRY \n- \"30\" for ARS \n- \"31\" for PEN \n- \"32\" for ILS \n- \"33\" for CHF \n- \"34\" for VEF \n- \"35\" for COP \n- \"36\" for GTQ \n- \"37\" for PLN \n- \"39\" for INR \n- \"40\" for THB \n- \"41\" for IDR \n- \"42\" for CZK \n- \"43\" for RON \n- \"44\" for HUF \n- \"45\" for RUB \n- \"46\" for AED \n- \"47\" for BGN \n- \"48\" for HRK \n- \"49\" for MXN \n- \"50\" for NGN", - "format": "int64" - }, - "description": { - "type": "string", - "description": "Description of this directory site. This is a read-only field." - }, - "id": { - "type": "string", - "description": "ID of this directory site. This is a read-only, auto-generated field.", - "format": "int64" - }, - "idDimensionValue": { - "$ref": "DimensionValue", - "description": "Dimension value for the ID of this directory site. This is a read-only, auto-generated field." - }, - "inpageTagFormats": { - "type": "array", - "description": "Tag types for regular placements.\n\nAcceptable values are:\n- \"STANDARD\"\n- \"IFRAME_JAVASCRIPT_INPAGE\"\n- \"INTERNAL_REDIRECT_INPAGE\"\n- \"JAVASCRIPT_INPAGE\"", - "items": { - "type": "string", - "enum": [ - "IFRAME_JAVASCRIPT_INPAGE", - "INTERNAL_REDIRECT_INPAGE", - "JAVASCRIPT_INPAGE", - "STANDARD" - ], - "enumDescriptions": [ - "", - "", - "", - "" - ] - } - }, - "interstitialTagFormats": { - "type": "array", - "description": "Tag types for interstitial placements.\n\nAcceptable values are:\n- \"IFRAME_JAVASCRIPT_INTERSTITIAL\"\n- \"INTERNAL_REDIRECT_INTERSTITIAL\"\n- \"JAVASCRIPT_INTERSTITIAL\"", - "items": { - "type": "string", - "enum": [ - "IFRAME_JAVASCRIPT_INTERSTITIAL", - "INTERNAL_REDIRECT_INTERSTITIAL", - "JAVASCRIPT_INTERSTITIAL" - ], - "enumDescriptions": [ - "", - "", - "" - ] - } - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#directorySite\".", - "default": "dfareporting#directorySite" - }, - "name": { - "type": "string", - "description": "Name of this directory site." - }, - "parentId": { - "type": "string", - "description": "Parent directory site ID.", - "format": "int64" - }, - "settings": { - "$ref": "DirectorySiteSettings", - "description": "Directory site settings." - }, - "url": { - "type": "string", - "description": "URL of this directory site." - } - } - }, - "DirectorySiteContact": { - "id": "DirectorySiteContact", - "type": "object", - "description": "Contains properties of a Site Directory contact.", - "properties": { - "address": { - "type": "string", - "description": "Address of this directory site contact." - }, - "email": { - "type": "string", - "description": "Email address of this directory site contact." - }, - "firstName": { - "type": "string", - "description": "First name of this directory site contact." - }, - "id": { - "type": "string", - "description": "ID of this directory site contact. This is a read-only, auto-generated field.", - "format": "int64" - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#directorySiteContact\".", - "default": "dfareporting#directorySiteContact" - }, - "lastName": { - "type": "string", - "description": "Last name of this directory site contact." - }, - "phone": { - "type": "string", - "description": "Phone number of this directory site contact." - }, - "role": { - "type": "string", - "description": "Directory site contact role.", - "enum": [ - "ADMIN", - "EDIT", - "VIEW" - ], - "enumDescriptions": [ - "", - "", - "" - ] - }, - "title": { - "type": "string", - "description": "Title or designation of this directory site contact." - }, - "type": { - "type": "string", - "description": "Directory site contact type.", - "enum": [ - "BILLING", - "OTHER", - "SALES", - "TECHNICAL" - ], - "enumDescriptions": [ - "", - "", - "", - "" - ] - } - } - }, - "DirectorySiteContactAssignment": { - "id": "DirectorySiteContactAssignment", - "type": "object", - "description": "Directory Site Contact Assignment", - "properties": { - "contactId": { - "type": "string", - "description": "ID of this directory site contact. This is a read-only, auto-generated field.", - "format": "int64" - }, - "visibility": { - "type": "string", - "description": "Visibility of this directory site contact assignment. When set to PUBLIC this contact assignment is visible to all account and agency users; when set to PRIVATE it is visible only to the site.", - "enum": [ - "PRIVATE", - "PUBLIC" - ], - "enumDescriptions": [ - "", - "" - ] - } - } - }, - "DirectorySiteContactsListResponse": { - "id": "DirectorySiteContactsListResponse", - "type": "object", - "description": "Directory Site Contact List Response", - "properties": { "directorySiteContacts": { - "type": "array", - "description": "Directory site contact collection", - "items": { - "$ref": "DirectorySiteContact" - } + "methods": { + "get": { + "description": "Gets one directory site contact by ID.", + "httpMethod": "GET", + "id": "dfareporting.directorySiteContacts.get", + "parameterOrder": [ + "profileId", + "id" + ], + "parameters": { + "id": { + "description": "Directory site contact ID.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/directorySiteContacts/{id}", + "response": { + "$ref": "DirectorySiteContact" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "description": "Retrieves a list of directory site contacts, possibly filtered. This method supports paging.", + "httpMethod": "GET", + "id": "dfareporting.directorySiteContacts.list", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "directorySiteIds": { + "description": "Select only directory site contacts with these directory site IDs. This is a required field.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "ids": { + "description": "Select only directory site contacts with these IDs.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "maxResults": { + "default": "1000", + "description": "Maximum number of results to return.", + "format": "int32", + "location": "query", + "maximum": "1000", + "minimum": "0", + "type": "integer" + }, + "pageToken": { + "description": "Value of the nextPageToken from the previous result page.", + "location": "query", + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "searchString": { + "description": "Allows searching for objects by name, ID or email. Wildcards (*) are allowed. For example, \"directory site contact*2015\" will return objects with names like \"directory site contact June 2015\", \"directory site contact April 2015\", or simply \"directory site contact 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"directory site contact\" will match objects with name \"my directory site contact\", \"directory site contact 2015\", or simply \"directory site contact\".", + "location": "query", + "type": "string" + }, + "sortField": { + "default": "ID", + "description": "Field by which to sort the list.", + "enum": [ + "ID", + "NAME" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + }, + "sortOrder": { + "default": "ASCENDING", + "description": "Order of sorted results.", + "enum": [ + "ASCENDING", + "DESCENDING" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + } + }, + "path": "userprofiles/{profileId}/directorySiteContacts", + "response": { + "$ref": "DirectorySiteContactsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#directorySiteContactsListResponse\".", - "default": "dfareporting#directorySiteContactsListResponse" - }, - "nextPageToken": { - "type": "string", - "description": "Pagination token to be used for the next list operation." - } - } - }, - "DirectorySiteSettings": { - "id": "DirectorySiteSettings", - "type": "object", - "description": "Directory Site Settings", - "properties": { - "activeViewOptOut": { - "type": "boolean", - "description": "Whether this directory site has disabled active view creatives." - }, - "dfpSettings": { - "$ref": "DfpSettings", - "description": "Directory site DFP settings." - }, - "instreamVideoPlacementAccepted": { - "type": "boolean", - "description": "Whether this site accepts in-stream video ads." - }, - "interstitialPlacementAccepted": { - "type": "boolean", - "description": "Whether this site accepts interstitial ads." - }, - "nielsenOcrOptOut": { - "type": "boolean", - "description": "Whether this directory site has disabled Nielsen OCR reach ratings." - }, - "verificationTagOptOut": { - "type": "boolean", - "description": "Whether this directory site has disabled generation of Verification ins tags." - }, - "videoActiveViewOptOut": { - "type": "boolean", - "description": "Whether this directory site has disabled active view for in-stream video creatives. This is a read-only field." - } - } - }, - "DirectorySitesListResponse": { - "id": "DirectorySitesListResponse", - "type": "object", - "description": "Directory Site List Response", - "properties": { "directorySites": { - "type": "array", - "description": "Directory site collection.", - "items": { - "$ref": "DirectorySite" - } + "methods": { + "get": { + "description": "Gets one directory site by ID.", + "httpMethod": "GET", + "id": "dfareporting.directorySites.get", + "parameterOrder": [ + "profileId", + "id" + ], + "parameters": { + "id": { + "description": "Directory site ID.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/directorySites/{id}", + "response": { + "$ref": "DirectorySite" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "insert": { + "description": "Inserts a new directory site.", + "httpMethod": "POST", + "id": "dfareporting.directorySites.insert", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/directorySites", + "request": { + "$ref": "DirectorySite" + }, + "response": { + "$ref": "DirectorySite" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "description": "Retrieves a list of directory sites, possibly filtered. This method supports paging.", + "httpMethod": "GET", + "id": "dfareporting.directorySites.list", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "acceptsInStreamVideoPlacements": { + "description": "This search filter is no longer supported and will have no effect on the results returned.", + "location": "query", + "type": "boolean" + }, + "acceptsInterstitialPlacements": { + "description": "This search filter is no longer supported and will have no effect on the results returned.", + "location": "query", + "type": "boolean" + }, + "acceptsPublisherPaidPlacements": { + "description": "Select only directory sites that accept publisher paid placements. This field can be left blank.", + "location": "query", + "type": "boolean" + }, + "active": { + "description": "Select only active directory sites. Leave blank to retrieve both active and inactive directory sites.", + "location": "query", + "type": "boolean" + }, + "countryId": { + "description": "Select only directory sites with this country ID.", + "format": "int64", + "location": "query", + "type": "string" + }, + "dfpNetworkCode": { + "description": "Select only directory sites with this DFP network code.", + "location": "query", + "type": "string" + }, + "ids": { + "description": "Select only directory sites with these IDs.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "maxResults": { + "default": "1000", + "description": "Maximum number of results to return.", + "format": "int32", + "location": "query", + "maximum": "1000", + "minimum": "0", + "type": "integer" + }, + "pageToken": { + "description": "Value of the nextPageToken from the previous result page.", + "location": "query", + "type": "string" + }, + "parentId": { + "description": "Select only directory sites with this parent ID.", + "format": "int64", + "location": "query", + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "searchString": { + "description": "Allows searching for objects by name, ID or URL. Wildcards (*) are allowed. For example, \"directory site*2015\" will return objects with names like \"directory site June 2015\", \"directory site April 2015\", or simply \"directory site 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"directory site\" will match objects with name \"my directory site\", \"directory site 2015\" or simply, \"directory site\".", + "location": "query", + "type": "string" + }, + "sortField": { + "default": "ID", + "description": "Field by which to sort the list.", + "enum": [ + "ID", + "NAME" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + }, + "sortOrder": { + "default": "ASCENDING", + "description": "Order of sorted results.", + "enum": [ + "ASCENDING", + "DESCENDING" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + } + }, + "path": "userprofiles/{profileId}/directorySites", + "response": { + "$ref": "DirectorySitesListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#directorySitesListResponse\".", - "default": "dfareporting#directorySitesListResponse" - }, - "nextPageToken": { - "type": "string", - "description": "Pagination token to be used for the next list operation." - } - } - }, - "DynamicTargetingKey": { - "id": "DynamicTargetingKey", - "type": "object", - "description": "Contains properties of a dynamic targeting key. Dynamic targeting keys are unique, user-friendly labels, created at the advertiser level in DCM, that can be assigned to ads, creatives, and placements and used for targeting with DoubleClick Studio dynamic creatives. Use these labels instead of numeric DCM IDs (such as placement IDs) to save time and avoid errors in your dynamic feeds.", - "properties": { - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#dynamicTargetingKey\".", - "default": "dfareporting#dynamicTargetingKey" - }, - "name": { - "type": "string", - "description": "Name of this dynamic targeting key. This is a required field. Must be less than 256 characters long and cannot contain commas. All characters are converted to lowercase." - }, - "objectId": { - "type": "string", - "description": "ID of the object of this dynamic targeting key. This is a required field.", - "format": "int64" - }, - "objectType": { - "type": "string", - "description": "Type of the object of this dynamic targeting key. This is a required field.", - "enum": [ - "OBJECT_AD", - "OBJECT_ADVERTISER", - "OBJECT_CREATIVE", - "OBJECT_PLACEMENT" - ], - "enumDescriptions": [ - "", - "", - "", - "" - ] - } - } - }, - "DynamicTargetingKeysListResponse": { - "id": "DynamicTargetingKeysListResponse", - "type": "object", - "description": "Dynamic Targeting Key List Response", - "properties": { "dynamicTargetingKeys": { - "type": "array", - "description": "Dynamic targeting key collection.", - "items": { - "$ref": "DynamicTargetingKey" - } + "methods": { + "delete": { + "description": "Deletes an existing dynamic targeting key.", + "httpMethod": "DELETE", + "id": "dfareporting.dynamicTargetingKeys.delete", + "parameterOrder": [ + "profileId", + "objectId", + "name", + "objectType" + ], + "parameters": { + "name": { + "description": "Name of this dynamic targeting key. This is a required field. Must be less than 256 characters long and cannot contain commas. All characters are converted to lowercase.", + "location": "query", + "required": true, + "type": "string" + }, + "objectId": { + "description": "ID of the object of this dynamic targeting key. This is a required field.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "objectType": { + "description": "Type of the object of this dynamic targeting key. This is a required field.", + "enum": [ + "OBJECT_AD", + "OBJECT_ADVERTISER", + "OBJECT_CREATIVE", + "OBJECT_PLACEMENT" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ], + "location": "query", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/dynamicTargetingKeys/{objectId}", + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "insert": { + "description": "Inserts a new dynamic targeting key. Keys must be created at the advertiser level before being assigned to the advertiser's ads, creatives, or placements. There is a maximum of 1000 keys per advertiser, out of which a maximum of 20 keys can be assigned per ad, creative, or placement.", + "httpMethod": "POST", + "id": "dfareporting.dynamicTargetingKeys.insert", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/dynamicTargetingKeys", + "request": { + "$ref": "DynamicTargetingKey" + }, + "response": { + "$ref": "DynamicTargetingKey" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "description": "Retrieves a list of dynamic targeting keys.", + "httpMethod": "GET", + "id": "dfareporting.dynamicTargetingKeys.list", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "advertiserId": { + "description": "Select only dynamic targeting keys whose object has this advertiser ID.", + "format": "int64", + "location": "query", + "type": "string" + }, + "names": { + "description": "Select only dynamic targeting keys exactly matching these names.", + "location": "query", + "repeated": true, + "type": "string" + }, + "objectId": { + "description": "Select only dynamic targeting keys with this object ID.", + "format": "int64", + "location": "query", + "type": "string" + }, + "objectType": { + "description": "Select only dynamic targeting keys with this object type.", + "enum": [ + "OBJECT_AD", + "OBJECT_ADVERTISER", + "OBJECT_CREATIVE", + "OBJECT_PLACEMENT" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ], + "location": "query", + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/dynamicTargetingKeys", + "response": { + "$ref": "DynamicTargetingKeysListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#dynamicTargetingKeysListResponse\".", - "default": "dfareporting#dynamicTargetingKeysListResponse" - } - } - }, - "EncryptionInfo": { - "id": "EncryptionInfo", - "type": "object", - "description": "A description of how user IDs are encrypted.", - "properties": { - "encryptionEntityId": { - "type": "string", - "description": "The encryption entity ID. This should match the encryption configuration for ad serving or Data Transfer.", - "format": "int64" - }, - "encryptionEntityType": { - "type": "string", - "description": "The encryption entity type. This should match the encryption configuration for ad serving or Data Transfer.", - "enum": [ - "ADWORDS_CUSTOMER", - "DBM_ADVERTISER", - "DBM_PARTNER", - "DCM_ACCOUNT", - "DCM_ADVERTISER", - "ENCRYPTION_ENTITY_TYPE_UNKNOWN" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "" - ] - }, - "encryptionSource": { - "type": "string", - "description": "Describes whether the encrypted cookie was received from ad serving (the %m macro) or from Data Transfer.", - "enum": [ - "AD_SERVING", - "DATA_TRANSFER", - "ENCRYPTION_SCOPE_UNKNOWN" - ], - "enumDescriptions": [ - "", - "", - "" - ] - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#encryptionInfo\".", - "default": "dfareporting#encryptionInfo" - } - } - }, - "EventTag": { - "id": "EventTag", - "type": "object", - "description": "Contains properties of an event tag.", - "properties": { - "accountId": { - "type": "string", - "description": "Account ID of this event tag. This is a read-only field that can be left blank.", - "format": "int64" - }, - "advertiserId": { - "type": "string", - "description": "Advertiser ID of this event tag. This field or the campaignId field is required on insertion.", - "format": "int64" - }, - "advertiserIdDimensionValue": { - "$ref": "DimensionValue", - "description": "Dimension value for the ID of the advertiser. This is a read-only, auto-generated field." - }, - "campaignId": { - "type": "string", - "description": "Campaign ID of this event tag. This field or the advertiserId field is required on insertion.", - "format": "int64" - }, - "campaignIdDimensionValue": { - "$ref": "DimensionValue", - "description": "Dimension value for the ID of the campaign. This is a read-only, auto-generated field." - }, - "enabledByDefault": { - "type": "boolean", - "description": "Whether this event tag should be automatically enabled for all of the advertiser's campaigns and ads." - }, - "excludeFromAdxRequests": { - "type": "boolean", - "description": "Whether to remove this event tag from ads that are trafficked through DoubleClick Bid Manager to Ad Exchange. This may be useful if the event tag uses a pixel that is unapproved for Ad Exchange bids on one or more networks, such as the Google Display Network." - }, - "id": { - "type": "string", - "description": "ID of this event tag. This is a read-only, auto-generated field.", - "format": "int64" - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#eventTag\".", - "default": "dfareporting#eventTag" - }, - "name": { - "type": "string", - "description": "Name of this event tag. This is a required field and must be less than 256 characters long." - }, - "siteFilterType": { - "type": "string", - "description": "Site filter type for this event tag. If no type is specified then the event tag will be applied to all sites.", - "enum": [ - "BLACKLIST", - "WHITELIST" - ], - "enumDescriptions": [ - "", - "" - ] - }, - "siteIds": { - "type": "array", - "description": "Filter list of site IDs associated with this event tag. The siteFilterType determines whether this is a whitelist or blacklist filter.", - "items": { - "type": "string", - "format": "int64" - } - }, - "sslCompliant": { - "type": "boolean", - "description": "Whether this tag is SSL-compliant or not. This is a read-only field." - }, - "status": { - "type": "string", - "description": "Status of this event tag. Must be ENABLED for this event tag to fire. This is a required field.", - "enum": [ - "DISABLED", - "ENABLED" - ], - "enumDescriptions": [ - "", - "" - ] - }, - "subaccountId": { - "type": "string", - "description": "Subaccount ID of this event tag. This is a read-only field that can be left blank.", - "format": "int64" - }, - "type": { - "type": "string", - "description": "Event tag type. Can be used to specify whether to use a third-party pixel, a third-party JavaScript URL, or a third-party click-through URL for either impression or click tracking. This is a required field.", - "enum": [ - "CLICK_THROUGH_EVENT_TAG", - "IMPRESSION_IMAGE_EVENT_TAG", - "IMPRESSION_JAVASCRIPT_EVENT_TAG" - ], - "enumDescriptions": [ - "", - "", - "" - ] - }, - "url": { - "type": "string", - "description": "Payload URL for this event tag. The URL on a click-through event tag should have a landing page URL appended to the end of it. This field is required on insertion." - }, - "urlEscapeLevels": { - "type": "integer", - "description": "Number of times the landing page URL should be URL-escaped before being appended to the click-through event tag URL. Only applies to click-through event tags as specified by the event tag type.", - "format": "int32" - } - } - }, - "EventTagOverride": { - "id": "EventTagOverride", - "type": "object", - "description": "Event tag override information.", - "properties": { - "enabled": { - "type": "boolean", - "description": "Whether this override is enabled." - }, - "id": { - "type": "string", - "description": "ID of this event tag override. This is a read-only, auto-generated field.", - "format": "int64" - } - } - }, - "EventTagsListResponse": { - "id": "EventTagsListResponse", - "type": "object", - "description": "Event Tag List Response", - "properties": { "eventTags": { - "type": "array", - "description": "Event tag collection.", - "items": { - "$ref": "EventTag" - } - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#eventTagsListResponse\".", - "default": "dfareporting#eventTagsListResponse" - } - } - }, - "File": { - "id": "File", - "type": "object", - "description": "Represents a File resource. A file contains the metadata for a report run. It shows the status of the run and holds the URLs to the generated report data if the run is finished and the status is \"REPORT_AVAILABLE\".", - "properties": { - "dateRange": { - "$ref": "DateRange", - "description": "The date range for which the file has report data. The date range will always be the absolute date range for which the report is run." - }, - "etag": { - "type": "string", - "description": "The eTag of this response for caching purposes." - }, - "fileName": { - "type": "string", - "description": "The filename of the file." - }, - "format": { - "type": "string", - "description": "The output format of the report. Only available once the file is available.", - "enum": [ - "CSV", - "EXCEL" - ], - "enumDescriptions": [ - "", - "" - ] - }, - "id": { - "type": "string", - "description": "The unique ID of this report file.", - "format": "int64" - }, - "kind": { - "type": "string", - "description": "The kind of resource this is, in this case dfareporting#file.", - "default": "dfareporting#file" - }, - "lastModifiedTime": { - "type": "string", - "description": "The timestamp in milliseconds since epoch when this file was last modified.", - "format": "int64" - }, - "reportId": { - "type": "string", - "description": "The ID of the report this file was generated from.", - "format": "int64" - }, - "status": { - "type": "string", - "description": "The status of the report file.", - "enum": [ - "CANCELLED", - "FAILED", - "PROCESSING", - "REPORT_AVAILABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "" - ] - }, - "urls": { - "type": "object", - "description": "The URLs where the completed report file can be downloaded.", - "properties": { - "apiUrl": { - "type": "string", - "description": "The URL for downloading the report data through the API." - }, - "browserUrl": { - "type": "string", - "description": "The URL for downloading the report data through a browser." - } - } - } - } - }, - "FileList": { - "id": "FileList", - "type": "object", - "description": "Represents the list of File resources.", - "properties": { - "etag": { - "type": "string", - "description": "The eTag of this response for caching purposes." - }, - "items": { - "type": "array", - "description": "The files returned in this response.", - "items": { - "$ref": "File" - } - }, - "kind": { - "type": "string", - "description": "The kind of list this is, in this case dfareporting#fileList.", - "default": "dfareporting#fileList" - }, - "nextPageToken": { - "type": "string", - "description": "Continuation token used to page through files. To retrieve the next page of results, set the next request's \"pageToken\" to the value of this field. The page token is only valid for a limited amount of time and should not be persisted." - } - } - }, - "Flight": { - "id": "Flight", - "type": "object", - "description": "Flight", - "properties": { - "endDate": { - "type": "string", - "description": "Inventory item flight end date.", - "format": "date" - }, - "rateOrCost": { - "type": "string", - "description": "Rate or cost of this flight.", - "format": "int64" - }, - "startDate": { - "type": "string", - "description": "Inventory item flight start date.", - "format": "date" - }, - "units": { - "type": "string", - "description": "Units of this flight.", - "format": "int64" - } - } - }, - "FloodlightActivitiesGenerateTagResponse": { - "id": "FloodlightActivitiesGenerateTagResponse", - "type": "object", - "description": "Floodlight Activity GenerateTag Response", - "properties": { - "floodlightActivityTag": { - "type": "string", - "description": "Generated tag for this Floodlight activity. For global site tags, this is the event snippet." - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#floodlightActivitiesGenerateTagResponse\".", - "default": "dfareporting#floodlightActivitiesGenerateTagResponse" - } - } - }, - "FloodlightActivitiesListResponse": { - "id": "FloodlightActivitiesListResponse", - "type": "object", - "description": "Floodlight Activity List Response", - "properties": { - "floodlightActivities": { - "type": "array", - "description": "Floodlight activity collection.", - "items": { - "$ref": "FloodlightActivity" - } - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#floodlightActivitiesListResponse\".", - "default": "dfareporting#floodlightActivitiesListResponse" - }, - "nextPageToken": { - "type": "string", - "description": "Pagination token to be used for the next list operation." - } - } - }, - "FloodlightActivity": { - "id": "FloodlightActivity", - "type": "object", - "description": "Contains properties of a Floodlight activity.", - "properties": { - "accountId": { - "type": "string", - "description": "Account ID of this floodlight activity. This is a read-only field that can be left blank.", - "format": "int64" - }, - "advertiserId": { - "type": "string", - "description": "Advertiser ID of this floodlight activity. If this field is left blank, the value will be copied over either from the activity group's advertiser or the existing activity's advertiser.", - "format": "int64" - }, - "advertiserIdDimensionValue": { - "$ref": "DimensionValue", - "description": "Dimension value for the ID of the advertiser. This is a read-only, auto-generated field." - }, - "cacheBustingType": { - "type": "string", - "description": "Code type used for cache busting in the generated tag. Applicable only when floodlightActivityGroupType is COUNTER and countingMethod is STANDARD_COUNTING or UNIQUE_COUNTING.", - "enum": [ - "ACTIVE_SERVER_PAGE", - "COLD_FUSION", - "JAVASCRIPT", - "JSP", - "PHP" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "" - ] - }, - "countingMethod": { - "type": "string", - "description": "Counting method for conversions for this floodlight activity. This is a required field.", - "enum": [ - "ITEMS_SOLD_COUNTING", - "SESSION_COUNTING", - "STANDARD_COUNTING", - "TRANSACTIONS_COUNTING", - "UNIQUE_COUNTING" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "" - ] - }, - "defaultTags": { - "type": "array", - "description": "Dynamic floodlight tags.", - "items": { - "$ref": "FloodlightActivityDynamicTag" - } - }, - "expectedUrl": { - "type": "string", - "description": "URL where this tag will be deployed. If specified, must be less than 256 characters long." - }, - "floodlightActivityGroupId": { - "type": "string", - "description": "Floodlight activity group ID of this floodlight activity. This is a required field.", - "format": "int64" - }, - "floodlightActivityGroupName": { - "type": "string", - "description": "Name of the associated floodlight activity group. This is a read-only field." - }, - "floodlightActivityGroupTagString": { - "type": "string", - "description": "Tag string of the associated floodlight activity group. This is a read-only field." - }, - "floodlightActivityGroupType": { - "type": "string", - "description": "Type of the associated floodlight activity group. This is a read-only field.", - "enum": [ - "COUNTER", - "SALE" - ], - "enumDescriptions": [ - "", - "" - ] - }, - "floodlightConfigurationId": { - "type": "string", - "description": "Floodlight configuration ID of this floodlight activity. If this field is left blank, the value will be copied over either from the activity group's floodlight configuration or from the existing activity's floodlight configuration.", - "format": "int64" - }, - "floodlightConfigurationIdDimensionValue": { - "$ref": "DimensionValue", - "description": "Dimension value for the ID of the floodlight configuration. This is a read-only, auto-generated field." - }, - "hidden": { - "type": "boolean", - "description": "Whether this activity is archived." - }, - "id": { - "type": "string", - "description": "ID of this floodlight activity. This is a read-only, auto-generated field.", - "format": "int64" - }, - "idDimensionValue": { - "$ref": "DimensionValue", - "description": "Dimension value for the ID of this floodlight activity. This is a read-only, auto-generated field." - }, - "imageTagEnabled": { - "type": "boolean", - "description": "Whether the image tag is enabled for this activity." - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#floodlightActivity\".", - "default": "dfareporting#floodlightActivity" - }, - "name": { - "type": "string", - "description": "Name of this floodlight activity. This is a required field. Must be less than 129 characters long and cannot contain quotes." - }, - "notes": { - "type": "string", - "description": "General notes or implementation instructions for the tag." - }, - "publisherTags": { - "type": "array", - "description": "Publisher dynamic floodlight tags.", - "items": { - "$ref": "FloodlightActivityPublisherDynamicTag" - } - }, - "secure": { - "type": "boolean", - "description": "Whether this tag should use SSL." - }, - "sslCompliant": { - "type": "boolean", - "description": "Whether the floodlight activity is SSL-compliant. This is a read-only field, its value detected by the system from the floodlight tags." - }, - "sslRequired": { - "type": "boolean", - "description": "Whether this floodlight activity must be SSL-compliant." - }, - "subaccountId": { - "type": "string", - "description": "Subaccount ID of this floodlight activity. This is a read-only field that can be left blank.", - "format": "int64" - }, - "tagFormat": { - "type": "string", - "description": "Tag format type for the floodlight activity. If left blank, the tag format will default to HTML.", - "enum": [ - "HTML", - "XHTML" - ], - "enumDescriptions": [ - "", - "" - ] - }, - "tagString": { - "type": "string", - "description": "Value of the cat= parameter in the floodlight tag, which the ad servers use to identify the activity. This is optional: if empty, a new tag string will be generated for you. This string must be 1 to 8 characters long, with valid characters being [a-z][A-Z][0-9][-][ _ ]. This tag string must also be unique among activities of the same activity group. This field is read-only after insertion." - }, - "userDefinedVariableTypes": { - "type": "array", - "description": "List of the user-defined variables used by this conversion tag. These map to the \"u[1-100]=\" in the tags. Each of these can have a user defined type.\nAcceptable values are U1 to U100, inclusive.", - "items": { - "type": "string", - "enum": [ - "U1", - "U10", - "U100", - "U11", - "U12", - "U13", - "U14", - "U15", - "U16", - "U17", - "U18", - "U19", - "U2", - "U20", - "U21", - "U22", - "U23", - "U24", - "U25", - "U26", - "U27", - "U28", - "U29", - "U3", - "U30", - "U31", - "U32", - "U33", - "U34", - "U35", - "U36", - "U37", - "U38", - "U39", - "U4", - "U40", - "U41", - "U42", - "U43", - "U44", - "U45", - "U46", - "U47", - "U48", - "U49", - "U5", - "U50", - "U51", - "U52", - "U53", - "U54", - "U55", - "U56", - "U57", - "U58", - "U59", - "U6", - "U60", - "U61", - "U62", - "U63", - "U64", - "U65", - "U66", - "U67", - "U68", - "U69", - "U7", - "U70", - "U71", - "U72", - "U73", - "U74", - "U75", - "U76", - "U77", - "U78", - "U79", - "U8", - "U80", - "U81", - "U82", - "U83", - "U84", - "U85", - "U86", - "U87", - "U88", - "U89", - "U9", - "U90", - "U91", - "U92", - "U93", - "U94", - "U95", - "U96", - "U97", - "U98", - "U99" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - } - } - } - }, - "FloodlightActivityDynamicTag": { - "id": "FloodlightActivityDynamicTag", - "type": "object", - "description": "Dynamic Tag", - "properties": { - "id": { - "type": "string", - "description": "ID of this dynamic tag. This is a read-only, auto-generated field.", - "format": "int64" - }, - "name": { - "type": "string", - "description": "Name of this tag." - }, - "tag": { - "type": "string", - "description": "Tag code." - } - } - }, - "FloodlightActivityGroup": { - "id": "FloodlightActivityGroup", - "type": "object", - "description": "Contains properties of a Floodlight activity group.", - "properties": { - "accountId": { - "type": "string", - "description": "Account ID of this floodlight activity group. This is a read-only field that can be left blank.", - "format": "int64" - }, - "advertiserId": { - "type": "string", - "description": "Advertiser ID of this floodlight activity group. If this field is left blank, the value will be copied over either from the floodlight configuration's advertiser or from the existing activity group's advertiser.", - "format": "int64" - }, - "advertiserIdDimensionValue": { - "$ref": "DimensionValue", - "description": "Dimension value for the ID of the advertiser. This is a read-only, auto-generated field." - }, - "floodlightConfigurationId": { - "type": "string", - "description": "Floodlight configuration ID of this floodlight activity group. This is a required field.", - "format": "int64" - }, - "floodlightConfigurationIdDimensionValue": { - "$ref": "DimensionValue", - "description": "Dimension value for the ID of the floodlight configuration. This is a read-only, auto-generated field." - }, - "id": { - "type": "string", - "description": "ID of this floodlight activity group. This is a read-only, auto-generated field.", - "format": "int64" - }, - "idDimensionValue": { - "$ref": "DimensionValue", - "description": "Dimension value for the ID of this floodlight activity group. This is a read-only, auto-generated field." - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#floodlightActivityGroup\".", - "default": "dfareporting#floodlightActivityGroup" - }, - "name": { - "type": "string", - "description": "Name of this floodlight activity group. This is a required field. Must be less than 65 characters long and cannot contain quotes." - }, - "subaccountId": { - "type": "string", - "description": "Subaccount ID of this floodlight activity group. This is a read-only field that can be left blank.", - "format": "int64" - }, - "tagString": { - "type": "string", - "description": "Value of the type= parameter in the floodlight tag, which the ad servers use to identify the activity group that the activity belongs to. This is optional: if empty, a new tag string will be generated for you. This string must be 1 to 8 characters long, with valid characters being [a-z][A-Z][0-9][-][ _ ]. This tag string must also be unique among activity groups of the same floodlight configuration. This field is read-only after insertion." - }, - "type": { - "type": "string", - "description": "Type of the floodlight activity group. This is a required field that is read-only after insertion.", - "enum": [ - "COUNTER", - "SALE" - ], - "enumDescriptions": [ - "", - "" - ] - } - } - }, - "FloodlightActivityGroupsListResponse": { - "id": "FloodlightActivityGroupsListResponse", - "type": "object", - "description": "Floodlight Activity Group List Response", - "properties": { - "floodlightActivityGroups": { - "type": "array", - "description": "Floodlight activity group collection.", - "items": { - "$ref": "FloodlightActivityGroup" - } - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#floodlightActivityGroupsListResponse\".", - "default": "dfareporting#floodlightActivityGroupsListResponse" - }, - "nextPageToken": { - "type": "string", - "description": "Pagination token to be used for the next list operation." - } - } - }, - "FloodlightActivityPublisherDynamicTag": { - "id": "FloodlightActivityPublisherDynamicTag", - "type": "object", - "description": "Publisher Dynamic Tag", - "properties": { - "clickThrough": { - "type": "boolean", - "description": "Whether this tag is applicable only for click-throughs." - }, - "directorySiteId": { - "type": "string", - "description": "Directory site ID of this dynamic tag. This is a write-only field that can be used as an alternative to the siteId field. When this resource is retrieved, only the siteId field will be populated.", - "format": "int64" - }, - "dynamicTag": { - "$ref": "FloodlightActivityDynamicTag", - "description": "Dynamic floodlight tag." - }, - "siteId": { - "type": "string", - "description": "Site ID of this dynamic tag.", - "format": "int64" - }, - "siteIdDimensionValue": { - "$ref": "DimensionValue", - "description": "Dimension value for the ID of the site. This is a read-only, auto-generated field." - }, - "viewThrough": { - "type": "boolean", - "description": "Whether this tag is applicable only for view-throughs." - } - } - }, - "FloodlightConfiguration": { - "id": "FloodlightConfiguration", - "type": "object", - "description": "Contains properties of a Floodlight configuration.", - "properties": { - "accountId": { - "type": "string", - "description": "Account ID of this floodlight configuration. This is a read-only field that can be left blank.", - "format": "int64" - }, - "advertiserId": { - "type": "string", - "description": "Advertiser ID of the parent advertiser of this floodlight configuration.", - "format": "int64" - }, - "advertiserIdDimensionValue": { - "$ref": "DimensionValue", - "description": "Dimension value for the ID of the advertiser. This is a read-only, auto-generated field." - }, - "analyticsDataSharingEnabled": { - "type": "boolean", - "description": "Whether advertiser data is shared with Google Analytics." - }, - "exposureToConversionEnabled": { - "type": "boolean", - "description": "Whether the exposure-to-conversion report is enabled. This report shows detailed pathway information on up to 10 of the most recent ad exposures seen by a user before converting." - }, - "firstDayOfWeek": { - "type": "string", - "description": "Day that will be counted as the first day of the week in reports. This is a required field.", - "enum": [ - "MONDAY", - "SUNDAY" - ], - "enumDescriptions": [ - "", - "" - ] - }, - "id": { - "type": "string", - "description": "ID of this floodlight configuration. This is a read-only, auto-generated field.", - "format": "int64" - }, - "idDimensionValue": { - "$ref": "DimensionValue", - "description": "Dimension value for the ID of this floodlight configuration. This is a read-only, auto-generated field." - }, - "inAppAttributionTrackingEnabled": { - "type": "boolean", - "description": "Whether in-app attribution tracking is enabled." - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#floodlightConfiguration\".", - "default": "dfareporting#floodlightConfiguration" - }, - "lookbackConfiguration": { - "$ref": "LookbackConfiguration", - "description": "Lookback window settings for this floodlight configuration." - }, - "naturalSearchConversionAttributionOption": { - "type": "string", - "description": "Types of attribution options for natural search conversions.", - "enum": [ - "EXCLUDE_NATURAL_SEARCH_CONVERSION_ATTRIBUTION", - "INCLUDE_NATURAL_SEARCH_CONVERSION_ATTRIBUTION", - "INCLUDE_NATURAL_SEARCH_TIERED_CONVERSION_ATTRIBUTION" - ], - "enumDescriptions": [ - "", - "", - "" - ] - }, - "omnitureSettings": { - "$ref": "OmnitureSettings", - "description": "Settings for DCM Omniture integration." - }, - "subaccountId": { - "type": "string", - "description": "Subaccount ID of this floodlight configuration. This is a read-only field that can be left blank.", - "format": "int64" - }, - "tagSettings": { - "$ref": "TagSettings", - "description": "Configuration settings for dynamic and image floodlight tags." - }, - "thirdPartyAuthenticationTokens": { - "type": "array", - "description": "List of third-party authentication tokens enabled for this configuration.", - "items": { - "$ref": "ThirdPartyAuthenticationToken" - } - }, - "userDefinedVariableConfigurations": { - "type": "array", - "description": "List of user defined variables enabled for this configuration.", - "items": { - "$ref": "UserDefinedVariableConfiguration" - } - } - } - }, - "FloodlightConfigurationsListResponse": { - "id": "FloodlightConfigurationsListResponse", - "type": "object", - "description": "Floodlight Configuration List Response", - "properties": { - "floodlightConfigurations": { - "type": "array", - "description": "Floodlight configuration collection.", - "items": { - "$ref": "FloodlightConfiguration" - } - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#floodlightConfigurationsListResponse\".", - "default": "dfareporting#floodlightConfigurationsListResponse" - } - } - }, - "FloodlightReportCompatibleFields": { - "id": "FloodlightReportCompatibleFields", - "type": "object", - "description": "Represents fields that are compatible to be selected for a report of type \"FlOODLIGHT\".", - "properties": { - "dimensionFilters": { - "type": "array", - "description": "Dimensions which are compatible to be selected in the \"dimensionFilters\" section of the report.", - "items": { - "$ref": "Dimension" - } - }, - "dimensions": { - "type": "array", - "description": "Dimensions which are compatible to be selected in the \"dimensions\" section of the report.", - "items": { - "$ref": "Dimension" - } - }, - "kind": { - "type": "string", - "description": "The kind of resource this is, in this case dfareporting#floodlightReportCompatibleFields.", - "default": "dfareporting#floodlightReportCompatibleFields" - }, - "metrics": { - "type": "array", - "description": "Metrics which are compatible to be selected in the \"metricNames\" section of the report.", - "items": { - "$ref": "Metric" - } - } - } - }, - "FrequencyCap": { - "id": "FrequencyCap", - "type": "object", - "description": "Frequency Cap.", - "properties": { - "duration": { - "type": "string", - "description": "Duration of time, in seconds, for this frequency cap. The maximum duration is 90 days. Acceptable values are 1 to 7776000, inclusive.", - "format": "int64" - }, - "impressions": { - "type": "string", - "description": "Number of times an individual user can be served the ad within the specified duration. Acceptable values are 1 to 15, inclusive.", - "format": "int64" - } - } - }, - "FsCommand": { - "id": "FsCommand", - "type": "object", - "description": "FsCommand.", - "properties": { - "left": { - "type": "integer", - "description": "Distance from the left of the browser.Applicable when positionOption is DISTANCE_FROM_TOP_LEFT_CORNER.", - "format": "int32" - }, - "positionOption": { - "type": "string", - "description": "Position in the browser where the window will open.", - "enum": [ - "CENTERED", - "DISTANCE_FROM_TOP_LEFT_CORNER" - ], - "enumDescriptions": [ - "", - "" - ] - }, - "top": { - "type": "integer", - "description": "Distance from the top of the browser. Applicable when positionOption is DISTANCE_FROM_TOP_LEFT_CORNER.", - "format": "int32" - }, - "windowHeight": { - "type": "integer", - "description": "Height of the window.", - "format": "int32" - }, - "windowWidth": { - "type": "integer", - "description": "Width of the window.", - "format": "int32" - } - } - }, - "GeoTargeting": { - "id": "GeoTargeting", - "type": "object", - "description": "Geographical Targeting.", - "properties": { - "cities": { - "type": "array", - "description": "Cities to be targeted. For each city only dartId is required. The other fields are populated automatically when the ad is inserted or updated. If targeting a city, do not target or exclude the country of the city, and do not target the metro or region of the city.", - "items": { - "$ref": "City" - } - }, - "countries": { - "type": "array", - "description": "Countries to be targeted or excluded from targeting, depending on the setting of the excludeCountries field. For each country only dartId is required. The other fields are populated automatically when the ad is inserted or updated. If targeting or excluding a country, do not target regions, cities, metros, or postal codes in the same country.", - "items": { - "$ref": "Country" - } - }, - "excludeCountries": { - "type": "boolean", - "description": "Whether or not to exclude the countries in the countries field from targeting. If false, the countries field refers to countries which will be targeted by the ad." - }, - "metros": { - "type": "array", - "description": "Metros to be targeted. For each metro only dmaId is required. The other fields are populated automatically when the ad is inserted or updated. If targeting a metro, do not target or exclude the country of the metro.", - "items": { - "$ref": "Metro" - } - }, - "postalCodes": { - "type": "array", - "description": "Postal codes to be targeted. For each postal code only id is required. The other fields are populated automatically when the ad is inserted or updated. If targeting a postal code, do not target or exclude the country of the postal code.", - "items": { - "$ref": "PostalCode" - } - }, - "regions": { - "type": "array", - "description": "Regions to be targeted. For each region only dartId is required. The other fields are populated automatically when the ad is inserted or updated. If targeting a region, do not target or exclude the country of the region.", - "items": { - "$ref": "Region" - } - } - } - }, - "InventoryItem": { - "id": "InventoryItem", - "type": "object", - "description": "Represents a buy from the DoubleClick Planning inventory store.", - "properties": { - "accountId": { - "type": "string", - "description": "Account ID of this inventory item.", - "format": "int64" - }, - "adSlots": { - "type": "array", - "description": "Ad slots of this inventory item. If this inventory item represents a standalone placement, there will be exactly one ad slot. If this inventory item represents a placement group, there will be more than one ad slot, each representing one child placement in that placement group.", - "items": { - "$ref": "AdSlot" - } - }, - "advertiserId": { - "type": "string", - "description": "Advertiser ID of this inventory item.", - "format": "int64" - }, - "contentCategoryId": { - "type": "string", - "description": "Content category ID of this inventory item.", - "format": "int64" - }, - "estimatedClickThroughRate": { - "type": "string", - "description": "Estimated click-through rate of this inventory item.", - "format": "int64" - }, - "estimatedConversionRate": { - "type": "string", - "description": "Estimated conversion rate of this inventory item.", - "format": "int64" - }, - "id": { - "type": "string", - "description": "ID of this inventory item.", - "format": "int64" - }, - "inPlan": { - "type": "boolean", - "description": "Whether this inventory item is in plan." - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#inventoryItem\".", - "default": "dfareporting#inventoryItem" - }, - "lastModifiedInfo": { - "$ref": "LastModifiedInfo", - "description": "Information about the most recent modification of this inventory item." - }, - "name": { - "type": "string", - "description": "Name of this inventory item. For standalone inventory items, this is the same name as that of its only ad slot. For group inventory items, this can differ from the name of any of its ad slots." - }, - "negotiationChannelId": { - "type": "string", - "description": "Negotiation channel ID of this inventory item.", - "format": "int64" - }, - "orderId": { - "type": "string", - "description": "Order ID of this inventory item.", - "format": "int64" - }, - "placementStrategyId": { - "type": "string", - "description": "Placement strategy ID of this inventory item.", - "format": "int64" - }, - "pricing": { - "$ref": "Pricing", - "description": "Pricing of this inventory item." - }, - "projectId": { - "type": "string", - "description": "Project ID of this inventory item.", - "format": "int64" - }, - "rfpId": { - "type": "string", - "description": "RFP ID of this inventory item.", - "format": "int64" - }, - "siteId": { - "type": "string", - "description": "ID of the site this inventory item is associated with.", - "format": "int64" - }, - "subaccountId": { - "type": "string", - "description": "Subaccount ID of this inventory item.", - "format": "int64" - }, - "type": { - "type": "string", - "description": "Type of inventory item.", - "enum": [ - "PLANNING_PLACEMENT_TYPE_CREDIT", - "PLANNING_PLACEMENT_TYPE_REGULAR" - ], - "enumDescriptions": [ - "", - "" - ] - } - } - }, - "InventoryItemsListResponse": { - "id": "InventoryItemsListResponse", - "type": "object", - "description": "Inventory item List Response", - "properties": { - "inventoryItems": { - "type": "array", - "description": "Inventory item collection", - "items": { - "$ref": "InventoryItem" - } - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#inventoryItemsListResponse\".", - "default": "dfareporting#inventoryItemsListResponse" - }, - "nextPageToken": { - "type": "string", - "description": "Pagination token to be used for the next list operation." - } - } - }, - "KeyValueTargetingExpression": { - "id": "KeyValueTargetingExpression", - "type": "object", - "description": "Key Value Targeting Expression.", - "properties": { - "expression": { - "type": "string", - "description": "Keyword expression being targeted by the ad." - } - } - }, - "LandingPage": { - "id": "LandingPage", - "type": "object", - "description": "Contains information about where a user's browser is taken after the user clicks an ad.", - "properties": { - "default": { - "type": "boolean", - "description": "Whether or not this landing page will be assigned to any ads or creatives that do not have a landing page assigned explicitly. Only one default landing page is allowed per campaign." - }, - "id": { - "type": "string", - "description": "ID of this landing page. This is a read-only, auto-generated field.", - "format": "int64" - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#landingPage\".", - "default": "dfareporting#landingPage" - }, - "name": { - "type": "string", - "description": "Name of this landing page. This is a required field. It must be less than 256 characters long, and must be unique among landing pages of the same campaign." - }, - "url": { - "type": "string", - "description": "URL of this landing page. This is a required field." - } - } - }, - "LandingPagesListResponse": { - "id": "LandingPagesListResponse", - "type": "object", - "description": "Landing Page List Response", - "properties": { - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#landingPagesListResponse\".", - "default": "dfareporting#landingPagesListResponse" - }, - "landingPages": { - "type": "array", - "description": "Landing page collection", - "items": { - "$ref": "LandingPage" - } - } - } - }, - "Language": { - "id": "Language", - "type": "object", - "description": "Contains information about a language that can be targeted by ads.", - "properties": { - "id": { - "type": "string", - "description": "Language ID of this language. This is the ID used for targeting and generating reports.", - "format": "int64" - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#language\".", - "default": "dfareporting#language" - }, - "languageCode": { - "type": "string", - "description": "Format of language code is an ISO 639 two-letter language code optionally followed by an underscore followed by an ISO 3166 code. Examples are \"en\" for English or \"zh_CN\" for Simplified Chinese." - }, - "name": { - "type": "string", - "description": "Name of this language." - } - } - }, - "LanguageTargeting": { - "id": "LanguageTargeting", - "type": "object", - "description": "Language Targeting.", - "properties": { - "languages": { - "type": "array", - "description": "Languages that this ad targets. For each language only languageId is required. The other fields are populated automatically when the ad is inserted or updated.", - "items": { - "$ref": "Language" - } - } - } - }, - "LanguagesListResponse": { - "id": "LanguagesListResponse", - "type": "object", - "description": "Language List Response", - "properties": { - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#languagesListResponse\".", - "default": "dfareporting#languagesListResponse" - }, - "languages": { - "type": "array", - "description": "Language collection.", - "items": { - "$ref": "Language" - } - } - } - }, - "LastModifiedInfo": { - "id": "LastModifiedInfo", - "type": "object", - "description": "Modification timestamp.", - "properties": { - "time": { - "type": "string", - "description": "Timestamp of the last change in milliseconds since epoch.", - "format": "int64" - } - } - }, - "ListPopulationClause": { - "id": "ListPopulationClause", - "type": "object", - "description": "A group clause made up of list population terms representing constraints joined by ORs.", - "properties": { - "terms": { - "type": "array", - "description": "Terms of this list population clause. Each clause is made up of list population terms representing constraints and are joined by ORs.", - "items": { - "$ref": "ListPopulationTerm" - } - } - } - }, - "ListPopulationRule": { - "id": "ListPopulationRule", - "type": "object", - "description": "Remarketing List Population Rule.", - "properties": { - "floodlightActivityId": { - "type": "string", - "description": "Floodlight activity ID associated with this rule. This field can be left blank.", - "format": "int64" - }, - "floodlightActivityName": { - "type": "string", - "description": "Name of floodlight activity associated with this rule. This is a read-only, auto-generated field." - }, - "listPopulationClauses": { - "type": "array", - "description": "Clauses that make up this list population rule. Clauses are joined by ANDs, and the clauses themselves are made up of list population terms which are joined by ORs.", - "items": { - "$ref": "ListPopulationClause" - } - } - } - }, - "ListPopulationTerm": { - "id": "ListPopulationTerm", - "type": "object", - "description": "Remarketing List Population Rule Term.", - "properties": { - "contains": { - "type": "boolean", - "description": "Will be true if the term should check if the user is in the list and false if the term should check if the user is not in the list. This field is only relevant when type is set to LIST_MEMBERSHIP_TERM. False by default." - }, - "negation": { - "type": "boolean", - "description": "Whether to negate the comparison result of this term during rule evaluation. This field is only relevant when type is left unset or set to CUSTOM_VARIABLE_TERM or REFERRER_TERM." - }, - "operator": { - "type": "string", - "description": "Comparison operator of this term. This field is only relevant when type is left unset or set to CUSTOM_VARIABLE_TERM or REFERRER_TERM.", - "enum": [ - "NUM_EQUALS", - "NUM_GREATER_THAN", - "NUM_GREATER_THAN_EQUAL", - "NUM_LESS_THAN", - "NUM_LESS_THAN_EQUAL", - "STRING_CONTAINS", - "STRING_EQUALS" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "" - ] - }, - "remarketingListId": { - "type": "string", - "description": "ID of the list in question. This field is only relevant when type is set to LIST_MEMBERSHIP_TERM.", - "format": "int64" - }, - "type": { - "type": "string", - "description": "List population term type determines the applicable fields in this object. If left unset or set to CUSTOM_VARIABLE_TERM, then variableName, variableFriendlyName, operator, value, and negation are applicable. If set to LIST_MEMBERSHIP_TERM then remarketingListId and contains are applicable. If set to REFERRER_TERM then operator, value, and negation are applicable.", - "enum": [ - "CUSTOM_VARIABLE_TERM", - "LIST_MEMBERSHIP_TERM", - "REFERRER_TERM" - ], - "enumDescriptions": [ - "", - "", - "" - ] - }, - "value": { - "type": "string", - "description": "Literal to compare the variable to. This field is only relevant when type is left unset or set to CUSTOM_VARIABLE_TERM or REFERRER_TERM." - }, - "variableFriendlyName": { - "type": "string", - "description": "Friendly name of this term's variable. This is a read-only, auto-generated field. This field is only relevant when type is left unset or set to CUSTOM_VARIABLE_TERM." - }, - "variableName": { - "type": "string", - "description": "Name of the variable (U1, U2, etc.) being compared in this term. This field is only relevant when type is set to null, CUSTOM_VARIABLE_TERM or REFERRER_TERM." - } - } - }, - "ListTargetingExpression": { - "id": "ListTargetingExpression", - "type": "object", - "description": "Remarketing List Targeting Expression.", - "properties": { - "expression": { - "type": "string", - "description": "Expression describing which lists are being targeted by the ad." - } - } - }, - "LookbackConfiguration": { - "id": "LookbackConfiguration", - "type": "object", - "description": "Lookback configuration settings.", - "properties": { - "clickDuration": { - "type": "integer", - "description": "Lookback window, in days, from the last time a given user clicked on one of your ads. If you enter 0, clicks will not be considered as triggering events for floodlight tracking. If you leave this field blank, the default value for your account will be used. Acceptable values are 0 to 90, inclusive.", - "format": "int32" - }, - "postImpressionActivitiesDuration": { - "type": "integer", - "description": "Lookback window, in days, from the last time a given user viewed one of your ads. If you enter 0, impressions will not be considered as triggering events for floodlight tracking. If you leave this field blank, the default value for your account will be used. Acceptable values are 0 to 90, inclusive.", - "format": "int32" - } - } - }, - "Metric": { - "id": "Metric", - "type": "object", - "description": "Represents a metric.", - "properties": { - "kind": { - "type": "string", - "description": "The kind of resource this is, in this case dfareporting#metric.", - "default": "dfareporting#metric" - }, - "name": { - "type": "string", - "description": "The metric name, e.g. dfa:impressions" - } - } - }, - "Metro": { - "id": "Metro", - "type": "object", - "description": "Contains information about a metro region that can be targeted by ads.", - "properties": { - "countryCode": { - "type": "string", - "description": "Country code of the country to which this metro region belongs." - }, - "countryDartId": { - "type": "string", - "description": "DART ID of the country to which this metro region belongs.", - "format": "int64" - }, - "dartId": { - "type": "string", - "description": "DART ID of this metro region.", - "format": "int64" - }, - "dmaId": { - "type": "string", - "description": "DMA ID of this metro region. This is the ID used for targeting and generating reports, and is equivalent to metro_code.", - "format": "int64" - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#metro\".", - "default": "dfareporting#metro" - }, - "metroCode": { - "type": "string", - "description": "Metro code of this metro region. This is equivalent to dma_id." - }, - "name": { - "type": "string", - "description": "Name of this metro region." - } - } - }, - "MetrosListResponse": { - "id": "MetrosListResponse", - "type": "object", - "description": "Metro List Response", - "properties": { - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#metrosListResponse\".", - "default": "dfareporting#metrosListResponse" - }, - "metros": { - "type": "array", - "description": "Metro collection.", - "items": { - "$ref": "Metro" - } - } - } - }, - "MobileCarrier": { - "id": "MobileCarrier", - "type": "object", - "description": "Contains information about a mobile carrier that can be targeted by ads.", - "properties": { - "countryCode": { - "type": "string", - "description": "Country code of the country to which this mobile carrier belongs." - }, - "countryDartId": { - "type": "string", - "description": "DART ID of the country to which this mobile carrier belongs.", - "format": "int64" - }, - "id": { - "type": "string", - "description": "ID of this mobile carrier.", - "format": "int64" - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#mobileCarrier\".", - "default": "dfareporting#mobileCarrier" - }, - "name": { - "type": "string", - "description": "Name of this mobile carrier." - } - } - }, - "MobileCarriersListResponse": { - "id": "MobileCarriersListResponse", - "type": "object", - "description": "Mobile Carrier List Response", - "properties": { - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#mobileCarriersListResponse\".", - "default": "dfareporting#mobileCarriersListResponse" - }, - "mobileCarriers": { - "type": "array", - "description": "Mobile carrier collection.", - "items": { - "$ref": "MobileCarrier" - } - } - } - }, - "ObjectFilter": { - "id": "ObjectFilter", - "type": "object", - "description": "Object Filter.", - "properties": { - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#objectFilter\".", - "default": "dfareporting#objectFilter" - }, - "objectIds": { - "type": "array", - "description": "Applicable when status is ASSIGNED. The user has access to objects with these object IDs.", - "items": { - "type": "string", - "format": "int64" - } - }, - "status": { - "type": "string", - "description": "Status of the filter. NONE means the user has access to none of the objects. ALL means the user has access to all objects. ASSIGNED means the user has access to the objects with IDs in the objectIds list.", - "enum": [ - "ALL", - "ASSIGNED", - "NONE" - ], - "enumDescriptions": [ - "", - "", - "" - ] - } - } - }, - "OffsetPosition": { - "id": "OffsetPosition", - "type": "object", - "description": "Offset Position.", - "properties": { - "left": { - "type": "integer", - "description": "Offset distance from left side of an asset or a window.", - "format": "int32" - }, - "top": { - "type": "integer", - "description": "Offset distance from top side of an asset or a window.", - "format": "int32" - } - } - }, - "OmnitureSettings": { - "id": "OmnitureSettings", - "type": "object", - "description": "Omniture Integration Settings.", - "properties": { - "omnitureCostDataEnabled": { - "type": "boolean", - "description": "Whether placement cost data will be sent to Omniture. This property can be enabled only if omnitureIntegrationEnabled is true." - }, - "omnitureIntegrationEnabled": { - "type": "boolean", - "description": "Whether Omniture integration is enabled. This property can be enabled only when the \"Advanced Ad Serving\" account setting is enabled." - } - } - }, - "OperatingSystem": { - "id": "OperatingSystem", - "type": "object", - "description": "Contains information about an operating system that can be targeted by ads.", - "properties": { - "dartId": { - "type": "string", - "description": "DART ID of this operating system. This is the ID used for targeting.", - "format": "int64" - }, - "desktop": { - "type": "boolean", - "description": "Whether this operating system is for desktop." - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#operatingSystem\".", - "default": "dfareporting#operatingSystem" - }, - "mobile": { - "type": "boolean", - "description": "Whether this operating system is for mobile." - }, - "name": { - "type": "string", - "description": "Name of this operating system." - } - } - }, - "OperatingSystemVersion": { - "id": "OperatingSystemVersion", - "type": "object", - "description": "Contains information about a particular version of an operating system that can be targeted by ads.", - "properties": { - "id": { - "type": "string", - "description": "ID of this operating system version.", - "format": "int64" - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#operatingSystemVersion\".", - "default": "dfareporting#operatingSystemVersion" - }, - "majorVersion": { - "type": "string", - "description": "Major version (leftmost number) of this operating system version." - }, - "minorVersion": { - "type": "string", - "description": "Minor version (number after the first dot) of this operating system version." - }, - "name": { - "type": "string", - "description": "Name of this operating system version." - }, - "operatingSystem": { - "$ref": "OperatingSystem", - "description": "Operating system of this operating system version." - } - } - }, - "OperatingSystemVersionsListResponse": { - "id": "OperatingSystemVersionsListResponse", - "type": "object", - "description": "Operating System Version List Response", - "properties": { - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#operatingSystemVersionsListResponse\".", - "default": "dfareporting#operatingSystemVersionsListResponse" - }, - "operatingSystemVersions": { - "type": "array", - "description": "Operating system version collection.", - "items": { - "$ref": "OperatingSystemVersion" - } - } - } - }, - "OperatingSystemsListResponse": { - "id": "OperatingSystemsListResponse", - "type": "object", - "description": "Operating System List Response", - "properties": { - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#operatingSystemsListResponse\".", - "default": "dfareporting#operatingSystemsListResponse" - }, - "operatingSystems": { - "type": "array", - "description": "Operating system collection.", - "items": { - "$ref": "OperatingSystem" - } - } - } - }, - "OptimizationActivity": { - "id": "OptimizationActivity", - "type": "object", - "description": "Creative optimization activity.", - "properties": { - "floodlightActivityId": { - "type": "string", - "description": "Floodlight activity ID of this optimization activity. This is a required field.", - "format": "int64" - }, - "floodlightActivityIdDimensionValue": { - "$ref": "DimensionValue", - "description": "Dimension value for the ID of the floodlight activity. This is a read-only, auto-generated field." - }, - "weight": { - "type": "integer", - "description": "Weight associated with this optimization. The weight assigned will be understood in proportion to the weights assigned to the other optimization activities. Value must be greater than or equal to 1.", - "format": "int32" - } - } - }, - "Order": { - "id": "Order", - "type": "object", - "description": "Describes properties of a DoubleClick Planning order.", - "properties": { - "accountId": { - "type": "string", - "description": "Account ID of this order.", - "format": "int64" - }, - "advertiserId": { - "type": "string", - "description": "Advertiser ID of this order.", - "format": "int64" - }, - "approverUserProfileIds": { - "type": "array", - "description": "IDs for users that have to approve documents created for this order.", - "items": { - "type": "string", - "format": "int64" - } - }, - "buyerInvoiceId": { - "type": "string", - "description": "Buyer invoice ID associated with this order." - }, - "buyerOrganizationName": { - "type": "string", - "description": "Name of the buyer organization." - }, - "comments": { - "type": "string", - "description": "Comments in this order." - }, - "contacts": { - "type": "array", - "description": "Contacts for this order.", - "items": { - "$ref": "OrderContact" - } - }, - "id": { - "type": "string", - "description": "ID of this order. This is a read-only, auto-generated field.", - "format": "int64" - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#order\".", - "default": "dfareporting#order" - }, - "lastModifiedInfo": { - "$ref": "LastModifiedInfo", - "description": "Information about the most recent modification of this order." - }, - "name": { - "type": "string", - "description": "Name of this order." - }, - "notes": { - "type": "string", - "description": "Notes of this order." - }, - "planningTermId": { - "type": "string", - "description": "ID of the terms and conditions template used in this order.", - "format": "int64" - }, - "projectId": { - "type": "string", - "description": "Project ID of this order.", - "format": "int64" - }, - "sellerOrderId": { - "type": "string", - "description": "Seller order ID associated with this order." - }, - "sellerOrganizationName": { - "type": "string", - "description": "Name of the seller organization." - }, - "siteId": { - "type": "array", - "description": "Site IDs this order is associated with.", - "items": { - "type": "string", - "format": "int64" - } - }, - "siteNames": { - "type": "array", - "description": "Free-form site names this order is associated with.", - "items": { - "type": "string" - } - }, - "subaccountId": { - "type": "string", - "description": "Subaccount ID of this order.", - "format": "int64" - }, - "termsAndConditions": { - "type": "string", - "description": "Terms and conditions of this order." - } - } - }, - "OrderContact": { - "id": "OrderContact", - "type": "object", - "description": "Contact of an order.", - "properties": { - "contactInfo": { - "type": "string", - "description": "Free-form information about this contact. It could be any information related to this contact in addition to type, title, name, and signature user profile ID." - }, - "contactName": { - "type": "string", - "description": "Name of this contact." - }, - "contactTitle": { - "type": "string", - "description": "Title of this contact." - }, - "contactType": { - "type": "string", - "description": "Type of this contact.", - "enum": [ - "PLANNING_ORDER_CONTACT_BUYER_BILLING_CONTACT", - "PLANNING_ORDER_CONTACT_BUYER_CONTACT", - "PLANNING_ORDER_CONTACT_SELLER_CONTACT" - ], - "enumDescriptions": [ - "", - "", - "" - ] - }, - "signatureUserProfileId": { - "type": "string", - "description": "ID of the user profile containing the signature that will be embedded into order documents.", - "format": "int64" - } - } - }, - "OrderDocument": { - "id": "OrderDocument", - "type": "object", - "description": "Contains properties of a DoubleClick Planning order document.", - "properties": { - "accountId": { - "type": "string", - "description": "Account ID of this order document.", - "format": "int64" - }, - "advertiserId": { - "type": "string", - "description": "Advertiser ID of this order document.", - "format": "int64" - }, - "amendedOrderDocumentId": { - "type": "string", - "description": "The amended order document ID of this order document. An order document can be created by optionally amending another order document so that the change history can be preserved.", - "format": "int64" - }, - "approvedByUserProfileIds": { - "type": "array", - "description": "IDs of users who have approved this order document.", - "items": { - "type": "string", - "format": "int64" - } - }, - "cancelled": { - "type": "boolean", - "description": "Whether this order document is cancelled." - }, - "createdInfo": { - "$ref": "LastModifiedInfo", - "description": "Information about the creation of this order document." - }, - "effectiveDate": { - "type": "string", - "description": "Effective date of this order document.", - "format": "date" - }, - "id": { - "type": "string", - "description": "ID of this order document.", - "format": "int64" - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#orderDocument\".", - "default": "dfareporting#orderDocument" - }, - "lastSentRecipients": { - "type": "array", - "description": "List of email addresses that received the last sent document.", - "items": { - "type": "string" - } - }, - "lastSentTime": { - "type": "string", - "description": "Timestamp of the last email sent with this order document.", - "format": "date-time" - }, - "orderId": { - "type": "string", - "description": "ID of the order from which this order document is created.", - "format": "int64" - }, - "projectId": { - "type": "string", - "description": "Project ID of this order document.", - "format": "int64" - }, - "signed": { - "type": "boolean", - "description": "Whether this order document has been signed." - }, - "subaccountId": { - "type": "string", - "description": "Subaccount ID of this order document.", - "format": "int64" - }, - "title": { - "type": "string", - "description": "Title of this order document." - }, - "type": { - "type": "string", - "description": "Type of this order document", - "enum": [ - "PLANNING_ORDER_TYPE_CHANGE_ORDER", - "PLANNING_ORDER_TYPE_INSERTION_ORDER" - ], - "enumDescriptions": [ - "", - "" - ] - } - } - }, - "OrderDocumentsListResponse": { - "id": "OrderDocumentsListResponse", - "type": "object", - "description": "Order document List Response", - "properties": { - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#orderDocumentsListResponse\".", - "default": "dfareporting#orderDocumentsListResponse" - }, - "nextPageToken": { - "type": "string", - "description": "Pagination token to be used for the next list operation." - }, - "orderDocuments": { - "type": "array", - "description": "Order document collection", - "items": { - "$ref": "OrderDocument" - } - } - } - }, - "OrdersListResponse": { - "id": "OrdersListResponse", - "type": "object", - "description": "Order List Response", - "properties": { - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#ordersListResponse\".", - "default": "dfareporting#ordersListResponse" - }, - "nextPageToken": { - "type": "string", - "description": "Pagination token to be used for the next list operation." - }, - "orders": { - "type": "array", - "description": "Order collection.", - "items": { - "$ref": "Order" - } - } - } - }, - "PathToConversionReportCompatibleFields": { - "id": "PathToConversionReportCompatibleFields", - "type": "object", - "description": "Represents fields that are compatible to be selected for a report of type \"PATH_TO_CONVERSION\".", - "properties": { - "conversionDimensions": { - "type": "array", - "description": "Conversion dimensions which are compatible to be selected in the \"conversionDimensions\" section of the report.", - "items": { - "$ref": "Dimension" - } - }, - "customFloodlightVariables": { - "type": "array", - "description": "Custom floodlight variables which are compatible to be selected in the \"customFloodlightVariables\" section of the report.", - "items": { - "$ref": "Dimension" - } - }, - "kind": { - "type": "string", - "description": "The kind of resource this is, in this case dfareporting#pathToConversionReportCompatibleFields.", - "default": "dfareporting#pathToConversionReportCompatibleFields" - }, - "metrics": { - "type": "array", - "description": "Metrics which are compatible to be selected in the \"metricNames\" section of the report.", - "items": { - "$ref": "Metric" - } - }, - "perInteractionDimensions": { - "type": "array", - "description": "Per-interaction dimensions which are compatible to be selected in the \"perInteractionDimensions\" section of the report.", - "items": { - "$ref": "Dimension" - } - } - } - }, - "Placement": { - "id": "Placement", - "type": "object", - "description": "Contains properties of a placement.", - "properties": { - "accountId": { - "type": "string", - "description": "Account ID of this placement. This field can be left blank.", - "format": "int64" - }, - "adBlockingOptOut": { - "type": "boolean", - "description": "Whether this placement opts out of ad blocking. When true, ad blocking is disabled for this placement. When false, the campaign and site settings take effect." - }, - "advertiserId": { - "type": "string", - "description": "Advertiser ID of this placement. This field can be left blank.", - "format": "int64" - }, - "advertiserIdDimensionValue": { - "$ref": "DimensionValue", - "description": "Dimension value for the ID of the advertiser. This is a read-only, auto-generated field." - }, - "archived": { - "type": "boolean", - "description": "Whether this placement is archived." - }, - "campaignId": { - "type": "string", - "description": "Campaign ID of this placement. This field is a required field on insertion.", - "format": "int64" - }, - "campaignIdDimensionValue": { - "$ref": "DimensionValue", - "description": "Dimension value for the ID of the campaign. This is a read-only, auto-generated field." - }, - "comment": { - "type": "string", - "description": "Comments for this placement." - }, - "compatibility": { - "type": "string", - "description": "Placement compatibility. DISPLAY and DISPLAY_INTERSTITIAL refer to rendering on desktop, on mobile devices or in mobile apps for regular or interstitial ads respectively. APP and APP_INTERSTITIAL are no longer allowed for new placement insertions. Instead, use DISPLAY or DISPLAY_INTERSTITIAL. IN_STREAM_VIDEO refers to rendering in in-stream video ads developed with the VAST standard. This field is required on insertion.", - "enum": [ - "APP", - "APP_INTERSTITIAL", - "DISPLAY", - "DISPLAY_INTERSTITIAL", - "IN_STREAM_VIDEO" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "" - ] - }, - "contentCategoryId": { - "type": "string", - "description": "ID of the content category assigned to this placement.", - "format": "int64" - }, - "createInfo": { - "$ref": "LastModifiedInfo", - "description": "Information about the creation of this placement. This is a read-only field." - }, - "directorySiteId": { - "type": "string", - "description": "Directory site ID of this placement. On insert, you must set either this field or the siteId field to specify the site associated with this placement. This is a required field that is read-only after insertion.", - "format": "int64" - }, - "directorySiteIdDimensionValue": { - "$ref": "DimensionValue", - "description": "Dimension value for the ID of the directory site. This is a read-only, auto-generated field." - }, - "externalId": { - "type": "string", - "description": "External ID for this placement." - }, - "id": { - "type": "string", - "description": "ID of this placement. This is a read-only, auto-generated field.", - "format": "int64" - }, - "idDimensionValue": { - "$ref": "DimensionValue", - "description": "Dimension value for the ID of this placement. This is a read-only, auto-generated field." - }, - "keyName": { - "type": "string", - "description": "Key name of this placement. This is a read-only, auto-generated field." - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#placement\".", - "default": "dfareporting#placement" - }, - "lastModifiedInfo": { - "$ref": "LastModifiedInfo", - "description": "Information about the most recent modification of this placement. This is a read-only field." - }, - "lookbackConfiguration": { - "$ref": "LookbackConfiguration", - "description": "Lookback window settings for this placement." - }, - "name": { - "type": "string", - "description": "Name of this placement.This is a required field and must be less than 256 characters long." - }, - "paymentApproved": { - "type": "boolean", - "description": "Whether payment was approved for this placement. This is a read-only field relevant only to publisher-paid placements." - }, - "paymentSource": { - "type": "string", - "description": "Payment source for this placement. This is a required field that is read-only after insertion.", - "enum": [ - "PLACEMENT_AGENCY_PAID", - "PLACEMENT_PUBLISHER_PAID" - ], - "enumDescriptions": [ - "", - "" - ] - }, - "placementGroupId": { - "type": "string", - "description": "ID of this placement's group, if applicable.", - "format": "int64" - }, - "placementGroupIdDimensionValue": { - "$ref": "DimensionValue", - "description": "Dimension value for the ID of the placement group. This is a read-only, auto-generated field." - }, - "placementStrategyId": { - "type": "string", - "description": "ID of the placement strategy assigned to this placement.", - "format": "int64" - }, - "pricingSchedule": { - "$ref": "PricingSchedule", - "description": "Pricing schedule of this placement. This field is required on insertion, specifically subfields startDate, endDate and pricingType." - }, - "primary": { - "type": "boolean", - "description": "Whether this placement is the primary placement of a roadblock (placement group). You cannot change this field from true to false. Setting this field to true will automatically set the primary field on the original primary placement of the roadblock to false, and it will automatically set the roadblock's primaryPlacementId field to the ID of this placement." - }, - "publisherUpdateInfo": { - "$ref": "LastModifiedInfo", - "description": "Information about the last publisher update. This is a read-only field." - }, - "siteId": { - "type": "string", - "description": "Site ID associated with this placement. On insert, you must set either this field or the directorySiteId field to specify the site associated with this placement. This is a required field that is read-only after insertion.", - "format": "int64" - }, - "siteIdDimensionValue": { - "$ref": "DimensionValue", - "description": "Dimension value for the ID of the site. This is a read-only, auto-generated field." - }, - "size": { - "$ref": "Size", - "description": "Size associated with this placement. When inserting or updating a placement, only the size ID field is used. This field is required on insertion." - }, - "sslRequired": { - "type": "boolean", - "description": "Whether creatives assigned to this placement must be SSL-compliant." - }, - "status": { - "type": "string", - "description": "Third-party placement status.", - "enum": [ - "ACKNOWLEDGE_ACCEPTANCE", - "ACKNOWLEDGE_REJECTION", - "DRAFT", - "PAYMENT_ACCEPTED", - "PAYMENT_REJECTED", - "PENDING_REVIEW" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "" - ] - }, - "subaccountId": { - "type": "string", - "description": "Subaccount ID of this placement. This field can be left blank.", - "format": "int64" - }, - "tagFormats": { - "type": "array", - "description": "Tag formats to generate for this placement. This field is required on insertion.\nAcceptable values are:\n- \"PLACEMENT_TAG_STANDARD\"\n- \"PLACEMENT_TAG_IFRAME_JAVASCRIPT\"\n- \"PLACEMENT_TAG_IFRAME_ILAYER\"\n- \"PLACEMENT_TAG_INTERNAL_REDIRECT\"\n- \"PLACEMENT_TAG_JAVASCRIPT\"\n- \"PLACEMENT_TAG_INTERSTITIAL_IFRAME_JAVASCRIPT\"\n- \"PLACEMENT_TAG_INTERSTITIAL_INTERNAL_REDIRECT\"\n- \"PLACEMENT_TAG_INTERSTITIAL_JAVASCRIPT\"\n- \"PLACEMENT_TAG_CLICK_COMMANDS\"\n- \"PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH\"\n- \"PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH_VAST_3\"\n- \"PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH_VAST_4\"\n- \"PLACEMENT_TAG_TRACKING\"\n- \"PLACEMENT_TAG_TRACKING_IFRAME\"\n- \"PLACEMENT_TAG_TRACKING_JAVASCRIPT\"", - "items": { - "type": "string", - "enum": [ - "PLACEMENT_TAG_CLICK_COMMANDS", - "PLACEMENT_TAG_IFRAME_ILAYER", - "PLACEMENT_TAG_IFRAME_JAVASCRIPT", - "PLACEMENT_TAG_IFRAME_JAVASCRIPT_LEGACY", - "PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH", - "PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH_VAST_3", - "PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH_VAST_4", - "PLACEMENT_TAG_INTERNAL_REDIRECT", - "PLACEMENT_TAG_INTERSTITIAL_IFRAME_JAVASCRIPT", - "PLACEMENT_TAG_INTERSTITIAL_IFRAME_JAVASCRIPT_LEGACY", - "PLACEMENT_TAG_INTERSTITIAL_INTERNAL_REDIRECT", - "PLACEMENT_TAG_INTERSTITIAL_JAVASCRIPT", - "PLACEMENT_TAG_INTERSTITIAL_JAVASCRIPT_LEGACY", - "PLACEMENT_TAG_JAVASCRIPT", - "PLACEMENT_TAG_JAVASCRIPT_LEGACY", - "PLACEMENT_TAG_STANDARD", - "PLACEMENT_TAG_TRACKING", - "PLACEMENT_TAG_TRACKING_IFRAME", - "PLACEMENT_TAG_TRACKING_JAVASCRIPT" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - } - }, - "tagSetting": { - "$ref": "TagSetting", - "description": "Tag settings for this placement." - }, - "videoActiveViewOptOut": { - "type": "boolean", - "description": "Whether Verification and ActiveView are disabled for in-stream video creatives for this placement. The same setting videoActiveViewOptOut exists on the site level -- the opt out occurs if either of these settings are true. These settings are distinct from DirectorySites.settings.activeViewOptOut or Sites.siteSettings.activeViewOptOut which only apply to display ads. However, Accounts.activeViewOptOut opts out both video traffic, as well as display ads, from Verification and ActiveView." - }, - "videoSettings": { - "$ref": "VideoSettings", - "description": "A collection of settings which affect video creatives served through this placement. Applicable to placements with IN_STREAM_VIDEO compatibility." - }, - "vpaidAdapterChoice": { - "type": "string", - "description": "VPAID adapter setting for this placement. Controls which VPAID format the measurement adapter will use for in-stream video creatives assigned to this placement.\n\nNote: Flash is no longer supported. This field now defaults to HTML5 when the following values are provided: FLASH, BOTH.", - "enum": [ - "BOTH", - "DEFAULT", - "FLASH", - "HTML5" - ], - "enumDescriptions": [ - "", - "", - "", - "" - ] - } - } - }, - "PlacementAssignment": { - "id": "PlacementAssignment", - "type": "object", - "description": "Placement Assignment.", - "properties": { - "active": { - "type": "boolean", - "description": "Whether this placement assignment is active. When true, the placement will be included in the ad's rotation." - }, - "placementId": { - "type": "string", - "description": "ID of the placement to be assigned. This is a required field.", - "format": "int64" - }, - "placementIdDimensionValue": { - "$ref": "DimensionValue", - "description": "Dimension value for the ID of the placement. This is a read-only, auto-generated field." - }, - "sslRequired": { - "type": "boolean", - "description": "Whether the placement to be assigned requires SSL. This is a read-only field that is auto-generated when the ad is inserted or updated." - } - } - }, - "PlacementGroup": { - "id": "PlacementGroup", - "type": "object", - "description": "Contains properties of a package or roadblock.", - "properties": { - "accountId": { - "type": "string", - "description": "Account ID of this placement group. This is a read-only field that can be left blank.", - "format": "int64" - }, - "advertiserId": { - "type": "string", - "description": "Advertiser ID of this placement group. This is a required field on insertion.", - "format": "int64" - }, - "advertiserIdDimensionValue": { - "$ref": "DimensionValue", - "description": "Dimension value for the ID of the advertiser. This is a read-only, auto-generated field." - }, - "archived": { - "type": "boolean", - "description": "Whether this placement group is archived." - }, - "campaignId": { - "type": "string", - "description": "Campaign ID of this placement group. This field is required on insertion.", - "format": "int64" - }, - "campaignIdDimensionValue": { - "$ref": "DimensionValue", - "description": "Dimension value for the ID of the campaign. This is a read-only, auto-generated field." - }, - "childPlacementIds": { - "type": "array", - "description": "IDs of placements which are assigned to this placement group. This is a read-only, auto-generated field.", - "items": { - "type": "string", - "format": "int64" - } - }, - "comment": { - "type": "string", - "description": "Comments for this placement group." - }, - "contentCategoryId": { - "type": "string", - "description": "ID of the content category assigned to this placement group.", - "format": "int64" - }, - "createInfo": { - "$ref": "LastModifiedInfo", - "description": "Information about the creation of this placement group. This is a read-only field." - }, - "directorySiteId": { - "type": "string", - "description": "Directory site ID associated with this placement group. On insert, you must set either this field or the site_id field to specify the site associated with this placement group. This is a required field that is read-only after insertion.", - "format": "int64" - }, - "directorySiteIdDimensionValue": { - "$ref": "DimensionValue", - "description": "Dimension value for the ID of the directory site. This is a read-only, auto-generated field." - }, - "externalId": { - "type": "string", - "description": "External ID for this placement." - }, - "id": { - "type": "string", - "description": "ID of this placement group. This is a read-only, auto-generated field.", - "format": "int64" - }, - "idDimensionValue": { - "$ref": "DimensionValue", - "description": "Dimension value for the ID of this placement group. This is a read-only, auto-generated field." - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#placementGroup\".", - "default": "dfareporting#placementGroup" - }, - "lastModifiedInfo": { - "$ref": "LastModifiedInfo", - "description": "Information about the most recent modification of this placement group. This is a read-only field." - }, - "name": { - "type": "string", - "description": "Name of this placement group. This is a required field and must be less than 256 characters long." - }, - "placementGroupType": { - "type": "string", - "description": "Type of this placement group. A package is a simple group of placements that acts as a single pricing point for a group of tags. A roadblock is a group of placements that not only acts as a single pricing point, but also assumes that all the tags in it will be served at the same time. A roadblock requires one of its assigned placements to be marked as primary for reporting. This field is required on insertion.", - "enum": [ - "PLACEMENT_PACKAGE", - "PLACEMENT_ROADBLOCK" - ], - "enumDescriptions": [ - "", - "" - ] - }, - "placementStrategyId": { - "type": "string", - "description": "ID of the placement strategy assigned to this placement group.", - "format": "int64" - }, - "pricingSchedule": { - "$ref": "PricingSchedule", - "description": "Pricing schedule of this placement group. This field is required on insertion." - }, - "primaryPlacementId": { - "type": "string", - "description": "ID of the primary placement, used to calculate the media cost of a roadblock (placement group). Modifying this field will automatically modify the primary field on all affected roadblock child placements.", - "format": "int64" - }, - "primaryPlacementIdDimensionValue": { - "$ref": "DimensionValue", - "description": "Dimension value for the ID of the primary placement. This is a read-only, auto-generated field." - }, - "siteId": { - "type": "string", - "description": "Site ID associated with this placement group. On insert, you must set either this field or the directorySiteId field to specify the site associated with this placement group. This is a required field that is read-only after insertion.", - "format": "int64" - }, - "siteIdDimensionValue": { - "$ref": "DimensionValue", - "description": "Dimension value for the ID of the site. This is a read-only, auto-generated field." - }, - "subaccountId": { - "type": "string", - "description": "Subaccount ID of this placement group. This is a read-only field that can be left blank.", - "format": "int64" - } - } - }, - "PlacementGroupsListResponse": { - "id": "PlacementGroupsListResponse", - "type": "object", - "description": "Placement Group List Response", - "properties": { - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#placementGroupsListResponse\".", - "default": "dfareporting#placementGroupsListResponse" - }, - "nextPageToken": { - "type": "string", - "description": "Pagination token to be used for the next list operation." - }, - "placementGroups": { - "type": "array", - "description": "Placement group collection.", - "items": { - "$ref": "PlacementGroup" - } - } - } - }, - "PlacementStrategiesListResponse": { - "id": "PlacementStrategiesListResponse", - "type": "object", - "description": "Placement Strategy List Response", - "properties": { - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#placementStrategiesListResponse\".", - "default": "dfareporting#placementStrategiesListResponse" - }, - "nextPageToken": { - "type": "string", - "description": "Pagination token to be used for the next list operation." - }, - "placementStrategies": { - "type": "array", - "description": "Placement strategy collection.", - "items": { - "$ref": "PlacementStrategy" - } - } - } - }, - "PlacementStrategy": { - "id": "PlacementStrategy", - "type": "object", - "description": "Contains properties of a placement strategy.", - "properties": { - "accountId": { - "type": "string", - "description": "Account ID of this placement strategy.This is a read-only field that can be left blank.", - "format": "int64" - }, - "id": { - "type": "string", - "description": "ID of this placement strategy. This is a read-only, auto-generated field.", - "format": "int64" - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#placementStrategy\".", - "default": "dfareporting#placementStrategy" - }, - "name": { - "type": "string", - "description": "Name of this placement strategy. This is a required field. It must be less than 256 characters long and unique among placement strategies of the same account." - } - } - }, - "PlacementTag": { - "id": "PlacementTag", - "type": "object", - "description": "Placement Tag", - "properties": { - "placementId": { - "type": "string", - "description": "Placement ID", - "format": "int64" - }, - "tagDatas": { - "type": "array", - "description": "Tags generated for this placement.", - "items": { - "$ref": "TagData" - } - } - } - }, - "PlacementsGenerateTagsResponse": { - "id": "PlacementsGenerateTagsResponse", - "type": "object", - "description": "Placement GenerateTags Response", - "properties": { - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#placementsGenerateTagsResponse\".", - "default": "dfareporting#placementsGenerateTagsResponse" - }, - "placementTags": { - "type": "array", - "description": "Set of generated tags for the specified placements.", - "items": { - "$ref": "PlacementTag" - } - } - } - }, - "PlacementsListResponse": { - "id": "PlacementsListResponse", - "type": "object", - "description": "Placement List Response", - "properties": { - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#placementsListResponse\".", - "default": "dfareporting#placementsListResponse" - }, - "nextPageToken": { - "type": "string", - "description": "Pagination token to be used for the next list operation." - }, - "placements": { - "type": "array", - "description": "Placement collection.", - "items": { - "$ref": "Placement" - } - } - } - }, - "PlatformType": { - "id": "PlatformType", - "type": "object", - "description": "Contains information about a platform type that can be targeted by ads.", - "properties": { - "id": { - "type": "string", - "description": "ID of this platform type.", - "format": "int64" - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#platformType\".", - "default": "dfareporting#platformType" - }, - "name": { - "type": "string", - "description": "Name of this platform type." - } - } - }, - "PlatformTypesListResponse": { - "id": "PlatformTypesListResponse", - "type": "object", - "description": "Platform Type List Response", - "properties": { - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#platformTypesListResponse\".", - "default": "dfareporting#platformTypesListResponse" - }, - "platformTypes": { - "type": "array", - "description": "Platform type collection.", - "items": { - "$ref": "PlatformType" - } - } - } - }, - "PopupWindowProperties": { - "id": "PopupWindowProperties", - "type": "object", - "description": "Popup Window Properties.", - "properties": { - "dimension": { - "$ref": "Size", - "description": "Popup dimension for a creative. This is a read-only field. Applicable to the following creative types: all RICH_MEDIA and all VPAID" - }, - "offset": { - "$ref": "OffsetPosition", - "description": "Upper-left corner coordinates of the popup window. Applicable if positionType is COORDINATES." - }, - "positionType": { - "type": "string", - "description": "Popup window position either centered or at specific coordinate.", - "enum": [ - "CENTER", - "COORDINATES" - ], - "enumDescriptions": [ - "", - "" - ] - }, - "showAddressBar": { - "type": "boolean", - "description": "Whether to display the browser address bar." - }, - "showMenuBar": { - "type": "boolean", - "description": "Whether to display the browser menu bar." - }, - "showScrollBar": { - "type": "boolean", - "description": "Whether to display the browser scroll bar." - }, - "showStatusBar": { - "type": "boolean", - "description": "Whether to display the browser status bar." - }, - "showToolBar": { - "type": "boolean", - "description": "Whether to display the browser tool bar." - }, - "title": { - "type": "string", - "description": "Title of popup window." - } - } - }, - "PostalCode": { - "id": "PostalCode", - "type": "object", - "description": "Contains information about a postal code that can be targeted by ads.", - "properties": { - "code": { - "type": "string", - "description": "Postal code. This is equivalent to the id field." - }, - "countryCode": { - "type": "string", - "description": "Country code of the country to which this postal code belongs." - }, - "countryDartId": { - "type": "string", - "description": "DART ID of the country to which this postal code belongs.", - "format": "int64" - }, - "id": { - "type": "string", - "description": "ID of this postal code." - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#postalCode\".", - "default": "dfareporting#postalCode" - } - } - }, - "PostalCodesListResponse": { - "id": "PostalCodesListResponse", - "type": "object", - "description": "Postal Code List Response", - "properties": { - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#postalCodesListResponse\".", - "default": "dfareporting#postalCodesListResponse" - }, - "postalCodes": { - "type": "array", - "description": "Postal code collection.", - "items": { - "$ref": "PostalCode" - } - } - } - }, - "Pricing": { - "id": "Pricing", - "type": "object", - "description": "Pricing Information", - "properties": { - "capCostType": { - "type": "string", - "description": "Cap cost type of this inventory item.", - "enum": [ - "PLANNING_PLACEMENT_CAP_COST_TYPE_CUMULATIVE", - "PLANNING_PLACEMENT_CAP_COST_TYPE_MONTHLY", - "PLANNING_PLACEMENT_CAP_COST_TYPE_NONE" - ], - "enumDescriptions": [ - "", - "", - "" - ] - }, - "endDate": { - "type": "string", - "description": "End date of this inventory item.", - "format": "date" - }, - "flights": { - "type": "array", - "description": "Flights of this inventory item. A flight (a.k.a. pricing period) represents the inventory item pricing information for a specific period of time.", - "items": { - "$ref": "Flight" - } - }, - "groupType": { - "type": "string", - "description": "Group type of this inventory item if it represents a placement group. Is null otherwise. There are two type of placement groups: PLANNING_PLACEMENT_GROUP_TYPE_PACKAGE is a simple group of inventory items that acts as a single pricing point for a group of tags. PLANNING_PLACEMENT_GROUP_TYPE_ROADBLOCK is a group of inventory items that not only acts as a single pricing point, but also assumes that all the tags in it will be served at the same time. A roadblock requires one of its assigned inventory items to be marked as primary.", - "enum": [ - "PLANNING_PLACEMENT_GROUP_TYPE_PACKAGE", - "PLANNING_PLACEMENT_GROUP_TYPE_ROADBLOCK" - ], - "enumDescriptions": [ - "", - "" - ] - }, - "pricingType": { - "type": "string", - "description": "Pricing type of this inventory item.", - "enum": [ - "PLANNING_PLACEMENT_PRICING_TYPE_CLICKS", - "PLANNING_PLACEMENT_PRICING_TYPE_CPA", - "PLANNING_PLACEMENT_PRICING_TYPE_CPC", - "PLANNING_PLACEMENT_PRICING_TYPE_CPM", - "PLANNING_PLACEMENT_PRICING_TYPE_CPM_ACTIVEVIEW", - "PLANNING_PLACEMENT_PRICING_TYPE_FLAT_RATE_CLICKS", - "PLANNING_PLACEMENT_PRICING_TYPE_FLAT_RATE_IMPRESSIONS", - "PLANNING_PLACEMENT_PRICING_TYPE_IMPRESSIONS" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "startDate": { - "type": "string", - "description": "Start date of this inventory item.", - "format": "date" - } - } - }, - "PricingSchedule": { - "id": "PricingSchedule", - "type": "object", - "description": "Pricing Schedule", - "properties": { - "capCostOption": { - "type": "string", - "description": "Placement cap cost option.", - "enum": [ - "CAP_COST_CUMULATIVE", - "CAP_COST_MONTHLY", - "CAP_COST_NONE" - ], - "enumDescriptions": [ - "", - "", - "" - ] - }, - "disregardOverdelivery": { - "type": "boolean", - "description": "Whether cap costs are ignored by ad serving." - }, - "endDate": { - "type": "string", - "description": "Placement end date. This date must be later than, or the same day as, the placement start date, but not later than the campaign end date. If, for example, you set 6/25/2015 as both the start and end dates, the effective placement date is just that day only, 6/25/2015. The hours, minutes, and seconds of the end date should not be set, as doing so will result in an error. This field is required on insertion.", - "format": "date" - }, - "flighted": { - "type": "boolean", - "description": "Whether this placement is flighted. If true, pricing periods will be computed automatically." - }, - "floodlightActivityId": { - "type": "string", - "description": "Floodlight activity ID associated with this placement. This field should be set when placement pricing type is set to PRICING_TYPE_CPA.", - "format": "int64" - }, - "pricingPeriods": { - "type": "array", - "description": "Pricing periods for this placement.", - "items": { - "$ref": "PricingSchedulePricingPeriod" - } - }, - "pricingType": { - "type": "string", - "description": "Placement pricing type. This field is required on insertion.", - "enum": [ - "PRICING_TYPE_CPA", - "PRICING_TYPE_CPC", - "PRICING_TYPE_CPM", - "PRICING_TYPE_CPM_ACTIVEVIEW", - "PRICING_TYPE_FLAT_RATE_CLICKS", - "PRICING_TYPE_FLAT_RATE_IMPRESSIONS" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "" - ] - }, - "startDate": { - "type": "string", - "description": "Placement start date. This date must be later than, or the same day as, the campaign start date. The hours, minutes, and seconds of the start date should not be set, as doing so will result in an error. This field is required on insertion.", - "format": "date" - }, - "testingStartDate": { - "type": "string", - "description": "Testing start date of this placement. The hours, minutes, and seconds of the start date should not be set, as doing so will result in an error.", - "format": "date" - } - } - }, - "PricingSchedulePricingPeriod": { - "id": "PricingSchedulePricingPeriod", - "type": "object", - "description": "Pricing Period", - "properties": { - "endDate": { - "type": "string", - "description": "Pricing period end date. This date must be later than, or the same day as, the pricing period start date, but not later than the placement end date. The period end date can be the same date as the period start date. If, for example, you set 6/25/2015 as both the start and end dates, the effective pricing period date is just that day only, 6/25/2015. The hours, minutes, and seconds of the end date should not be set, as doing so will result in an error.", - "format": "date" - }, - "pricingComment": { - "type": "string", - "description": "Comments for this pricing period." - }, - "rateOrCostNanos": { - "type": "string", - "description": "Rate or cost of this pricing period in nanos (i.e., multipled by 1000000000). Acceptable values are 0 to 1000000000000000000, inclusive.", - "format": "int64" - }, - "startDate": { - "type": "string", - "description": "Pricing period start date. This date must be later than, or the same day as, the placement start date. The hours, minutes, and seconds of the start date should not be set, as doing so will result in an error.", - "format": "date" - }, - "units": { - "type": "string", - "description": "Units of this pricing period. Acceptable values are 0 to 10000000000, inclusive.", - "format": "int64" - } - } - }, - "Project": { - "id": "Project", - "type": "object", - "description": "Contains properties of a DoubleClick Planning project.", - "properties": { - "accountId": { - "type": "string", - "description": "Account ID of this project.", - "format": "int64" - }, - "advertiserId": { - "type": "string", - "description": "Advertiser ID of this project.", - "format": "int64" - }, - "audienceAgeGroup": { - "type": "string", - "description": "Audience age group of this project.", - "enum": [ - "PLANNING_AUDIENCE_AGE_18_24", - "PLANNING_AUDIENCE_AGE_25_34", - "PLANNING_AUDIENCE_AGE_35_44", - "PLANNING_AUDIENCE_AGE_45_54", - "PLANNING_AUDIENCE_AGE_55_64", - "PLANNING_AUDIENCE_AGE_65_OR_MORE", - "PLANNING_AUDIENCE_AGE_UNKNOWN" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "" - ] - }, - "audienceGender": { - "type": "string", - "description": "Audience gender of this project.", - "enum": [ - "PLANNING_AUDIENCE_GENDER_FEMALE", - "PLANNING_AUDIENCE_GENDER_MALE" - ], - "enumDescriptions": [ - "", - "" - ] - }, - "budget": { - "type": "string", - "description": "Budget of this project in the currency specified by the current account. The value stored in this field represents only the non-fractional amount. For example, for USD, the smallest value that can be represented by this field is 1 US dollar.", - "format": "int64" - }, - "clientBillingCode": { - "type": "string", - "description": "Client billing code of this project." - }, - "clientName": { - "type": "string", - "description": "Name of the project client." - }, - "endDate": { - "type": "string", - "description": "End date of the project.", - "format": "date" - }, - "id": { - "type": "string", - "description": "ID of this project. This is a read-only, auto-generated field.", - "format": "int64" - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#project\".", - "default": "dfareporting#project" - }, - "lastModifiedInfo": { - "$ref": "LastModifiedInfo", - "description": "Information about the most recent modification of this project." - }, - "name": { - "type": "string", - "description": "Name of this project." - }, - "overview": { - "type": "string", - "description": "Overview of this project." - }, - "startDate": { - "type": "string", - "description": "Start date of the project.", - "format": "date" - }, - "subaccountId": { - "type": "string", - "description": "Subaccount ID of this project.", - "format": "int64" - }, - "targetClicks": { - "type": "string", - "description": "Number of clicks that the advertiser is targeting.", - "format": "int64" - }, - "targetConversions": { - "type": "string", - "description": "Number of conversions that the advertiser is targeting.", - "format": "int64" - }, - "targetCpaNanos": { - "type": "string", - "description": "CPA that the advertiser is targeting.", - "format": "int64" - }, - "targetCpcNanos": { - "type": "string", - "description": "CPC that the advertiser is targeting.", - "format": "int64" - }, - "targetCpmActiveViewNanos": { - "type": "string", - "description": "vCPM from Active View that the advertiser is targeting.", - "format": "int64" - }, - "targetCpmNanos": { - "type": "string", - "description": "CPM that the advertiser is targeting.", - "format": "int64" - }, - "targetImpressions": { - "type": "string", - "description": "Number of impressions that the advertiser is targeting.", - "format": "int64" - } - } - }, - "ProjectsListResponse": { - "id": "ProjectsListResponse", - "type": "object", - "description": "Project List Response", - "properties": { - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#projectsListResponse\".", - "default": "dfareporting#projectsListResponse" - }, - "nextPageToken": { - "type": "string", - "description": "Pagination token to be used for the next list operation." - }, - "projects": { - "type": "array", - "description": "Project collection.", - "items": { - "$ref": "Project" - } - } - } - }, - "ReachReportCompatibleFields": { - "id": "ReachReportCompatibleFields", - "type": "object", - "description": "Represents fields that are compatible to be selected for a report of type \"REACH\".", - "properties": { - "dimensionFilters": { - "type": "array", - "description": "Dimensions which are compatible to be selected in the \"dimensionFilters\" section of the report.", - "items": { - "$ref": "Dimension" - } - }, - "dimensions": { - "type": "array", - "description": "Dimensions which are compatible to be selected in the \"dimensions\" section of the report.", - "items": { - "$ref": "Dimension" - } - }, - "kind": { - "type": "string", - "description": "The kind of resource this is, in this case dfareporting#reachReportCompatibleFields.", - "default": "dfareporting#reachReportCompatibleFields" - }, - "metrics": { - "type": "array", - "description": "Metrics which are compatible to be selected in the \"metricNames\" section of the report.", - "items": { - "$ref": "Metric" - } - }, - "pivotedActivityMetrics": { - "type": "array", - "description": "Metrics which are compatible to be selected as activity metrics to pivot on in the \"activities\" section of the report.", - "items": { - "$ref": "Metric" - } - }, - "reachByFrequencyMetrics": { - "type": "array", - "description": "Metrics which are compatible to be selected in the \"reachByFrequencyMetricNames\" section of the report.", - "items": { - "$ref": "Metric" - } - } - } - }, - "Recipient": { - "id": "Recipient", - "type": "object", - "description": "Represents a recipient.", - "properties": { - "deliveryType": { - "type": "string", - "description": "The delivery type for the recipient.", - "enum": [ - "ATTACHMENT", - "LINK" - ], - "enumDescriptions": [ - "", - "" - ], - "annotations": { - "required": [ - "dfareporting.reports.insert", - "dfareporting.reports.update" - ] - } - }, - "email": { - "type": "string", - "description": "The email address of the recipient.", - "annotations": { - "required": [ - "dfareporting.reports.insert", - "dfareporting.reports.update" - ] - } - }, - "kind": { - "type": "string", - "description": "The kind of resource this is, in this case dfareporting#recipient.", - "default": "dfareporting#recipient" - } - } - }, - "Region": { - "id": "Region", - "type": "object", - "description": "Contains information about a region that can be targeted by ads.", - "properties": { - "countryCode": { - "type": "string", - "description": "Country code of the country to which this region belongs." - }, - "countryDartId": { - "type": "string", - "description": "DART ID of the country to which this region belongs.", - "format": "int64" - }, - "dartId": { - "type": "string", - "description": "DART ID of this region.", - "format": "int64" - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#region\".", - "default": "dfareporting#region" - }, - "name": { - "type": "string", - "description": "Name of this region." - }, - "regionCode": { - "type": "string", - "description": "Region code." - } - } - }, - "RegionsListResponse": { - "id": "RegionsListResponse", - "type": "object", - "description": "Region List Response", - "properties": { - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#regionsListResponse\".", - "default": "dfareporting#regionsListResponse" - }, - "regions": { - "type": "array", - "description": "Region collection.", - "items": { - "$ref": "Region" - } - } - } - }, - "RemarketingList": { - "id": "RemarketingList", - "type": "object", - "description": "Contains properties of a remarketing list. Remarketing enables you to create lists of users who have performed specific actions on a site, then target ads to members of those lists. This resource can be used to manage remarketing lists that are owned by your advertisers. To see all remarketing lists that are visible to your advertisers, including those that are shared to your advertiser or account, use the TargetableRemarketingLists resource.", - "properties": { - "accountId": { - "type": "string", - "description": "Account ID of this remarketing list. This is a read-only, auto-generated field that is only returned in GET requests.", - "format": "int64" - }, - "active": { - "type": "boolean", - "description": "Whether this remarketing list is active." - }, - "advertiserId": { - "type": "string", - "description": "Dimension value for the advertiser ID that owns this remarketing list. This is a required field.", - "format": "int64" - }, - "advertiserIdDimensionValue": { - "$ref": "DimensionValue", - "description": "Dimension value for the ID of the advertiser. This is a read-only, auto-generated field." - }, - "description": { - "type": "string", - "description": "Remarketing list description." - }, - "id": { - "type": "string", - "description": "Remarketing list ID. This is a read-only, auto-generated field.", - "format": "int64" - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#remarketingList\".", - "default": "dfareporting#remarketingList" - }, - "lifeSpan": { - "type": "string", - "description": "Number of days that a user should remain in the remarketing list without an impression. Acceptable values are 1 to 540, inclusive.", - "format": "int64" - }, - "listPopulationRule": { - "$ref": "ListPopulationRule", - "description": "Rule used to populate the remarketing list with users." - }, - "listSize": { - "type": "string", - "description": "Number of users currently in the list. This is a read-only field.", - "format": "int64" - }, - "listSource": { - "type": "string", - "description": "Product from which this remarketing list was originated.", - "enum": [ - "REMARKETING_LIST_SOURCE_ADX", - "REMARKETING_LIST_SOURCE_DBM", - "REMARKETING_LIST_SOURCE_DFA", - "REMARKETING_LIST_SOURCE_DFP", - "REMARKETING_LIST_SOURCE_DMP", - "REMARKETING_LIST_SOURCE_GA", - "REMARKETING_LIST_SOURCE_GPLUS", - "REMARKETING_LIST_SOURCE_OTHER", - "REMARKETING_LIST_SOURCE_PLAY_STORE", - "REMARKETING_LIST_SOURCE_XFP", - "REMARKETING_LIST_SOURCE_YOUTUBE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "name": { - "type": "string", - "description": "Name of the remarketing list. This is a required field. Must be no greater than 128 characters long." - }, - "subaccountId": { - "type": "string", - "description": "Subaccount ID of this remarketing list. This is a read-only, auto-generated field that is only returned in GET requests.", - "format": "int64" - } - } - }, - "RemarketingListShare": { - "id": "RemarketingListShare", - "type": "object", - "description": "Contains properties of a remarketing list's sharing information. Sharing allows other accounts or advertisers to target to your remarketing lists. This resource can be used to manage remarketing list sharing to other accounts and advertisers.", - "properties": { - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#remarketingListShare\".", - "default": "dfareporting#remarketingListShare" - }, - "remarketingListId": { - "type": "string", - "description": "Remarketing list ID. This is a read-only, auto-generated field.", - "format": "int64" - }, - "sharedAccountIds": { - "type": "array", - "description": "Accounts that the remarketing list is shared with.", - "items": { - "type": "string", - "format": "int64" - } - }, - "sharedAdvertiserIds": { - "type": "array", - "description": "Advertisers that the remarketing list is shared with.", - "items": { - "type": "string", - "format": "int64" - } - } - } - }, - "RemarketingListsListResponse": { - "id": "RemarketingListsListResponse", - "type": "object", - "description": "Remarketing list response", - "properties": { - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#remarketingListsListResponse\".", - "default": "dfareporting#remarketingListsListResponse" - }, - "nextPageToken": { - "type": "string", - "description": "Pagination token to be used for the next list operation." - }, - "remarketingLists": { - "type": "array", - "description": "Remarketing list collection.", - "items": { - "$ref": "RemarketingList" - } - } - } - }, - "Report": { - "id": "Report", - "type": "object", - "description": "Represents a Report resource.", - "properties": { - "accountId": { - "type": "string", - "description": "The account ID to which this report belongs.", - "format": "int64", - "annotations": { - "required": [ - "dfareporting.reports.update" - ] - } - }, - "criteria": { - "type": "object", - "description": "The report criteria for a report of type \"STANDARD\".", - "properties": { - "activities": { - "$ref": "Activities", - "description": "Activity group." - }, - "customRichMediaEvents": { - "$ref": "CustomRichMediaEvents", - "description": "Custom Rich Media Events group." - }, - "dateRange": { - "$ref": "DateRange", - "description": "The date range for which this report should be run." - }, - "dimensionFilters": { - "type": "array", - "description": "The list of filters on which dimensions are filtered.\nFilters for different dimensions are ANDed, filters for the same dimension are grouped together and ORed.", - "items": { - "$ref": "DimensionValue" - } - }, - "dimensions": { - "type": "array", - "description": "The list of standard dimensions the report should include.", - "items": { - "$ref": "SortedDimension" - } - }, - "metricNames": { - "type": "array", - "description": "The list of names of metrics the report should include.", - "items": { - "type": "string" - } - } - } - }, - "crossDimensionReachCriteria": { - "type": "object", - "description": "The report criteria for a report of type \"CROSS_DIMENSION_REACH\".", - "properties": { - "breakdown": { - "type": "array", - "description": "The list of dimensions the report should include.", - "items": { - "$ref": "SortedDimension" - } - }, - "dateRange": { - "$ref": "DateRange", - "description": "The date range this report should be run for." - }, - "dimension": { - "type": "string", - "description": "The dimension option.", - "enum": [ - "ADVERTISER", - "CAMPAIGN", - "SITE_BY_ADVERTISER", - "SITE_BY_CAMPAIGN" - ], - "enumDescriptions": [ - "", - "", - "", - "" - ] - }, - "dimensionFilters": { - "type": "array", - "description": "The list of filters on which dimensions are filtered.", - "items": { - "$ref": "DimensionValue" - } - }, - "metricNames": { - "type": "array", - "description": "The list of names of metrics the report should include.", - "items": { - "type": "string" - } - }, - "overlapMetricNames": { - "type": "array", - "description": "The list of names of overlap metrics the report should include.", - "items": { - "type": "string" - } - }, - "pivoted": { - "type": "boolean", - "description": "Whether the report is pivoted or not. Defaults to true." - } - } - }, - "delivery": { - "type": "object", - "description": "The report's email delivery settings.", - "properties": { - "emailOwner": { - "type": "boolean", - "description": "Whether the report should be emailed to the report owner." - }, - "emailOwnerDeliveryType": { - "type": "string", - "description": "The type of delivery for the owner to receive, if enabled.", - "enum": [ - "ATTACHMENT", - "LINK" - ], - "enumDescriptions": [ - "", - "" - ] - }, - "message": { - "type": "string", - "description": "The message to be sent with each email." - }, - "recipients": { - "type": "array", - "description": "The list of recipients to which to email the report.", - "items": { - "$ref": "Recipient" - } - } - } - }, - "etag": { - "type": "string", - "description": "The eTag of this response for caching purposes." - }, - "fileName": { - "type": "string", - "description": "The filename used when generating report files for this report." - }, - "floodlightCriteria": { - "type": "object", - "description": "The report criteria for a report of type \"FLOODLIGHT\".", - "properties": { - "customRichMediaEvents": { - "type": "array", - "description": "The list of custom rich media events to include.", - "items": { - "$ref": "DimensionValue" - } - }, - "dateRange": { - "$ref": "DateRange", - "description": "The date range this report should be run for." - }, - "dimensionFilters": { - "type": "array", - "description": "The list of filters on which dimensions are filtered.\nFilters for different dimensions are ANDed, filters for the same dimension are grouped together and ORed.", - "items": { - "$ref": "DimensionValue" - } - }, - "dimensions": { - "type": "array", - "description": "The list of dimensions the report should include.", - "items": { - "$ref": "SortedDimension" - } - }, - "floodlightConfigId": { - "$ref": "DimensionValue", - "description": "The floodlight ID for which to show data in this report. All advertisers associated with that ID will automatically be added. The dimension of the value needs to be 'dfa:floodlightConfigId'." - }, - "metricNames": { - "type": "array", - "description": "The list of names of metrics the report should include.", - "items": { - "type": "string" - } - }, - "reportProperties": { - "type": "object", - "description": "The properties of the report.", - "properties": { - "includeAttributedIPConversions": { - "type": "boolean", - "description": "Include conversions that have no cookie, but do have an exposure path." + "methods": { + "delete": { + "description": "Deletes an existing event tag.", + "httpMethod": "DELETE", + "id": "dfareporting.eventTags.delete", + "parameterOrder": [ + "profileId", + "id" + ], + "parameters": { + "id": { + "description": "Event tag ID.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/eventTags/{id}", + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] }, - "includeUnattributedCookieConversions": { - "type": "boolean", - "description": "Include conversions of users with a DoubleClick cookie but without an exposure. That means the user did not click or see an ad from the advertiser within the Floodlight group, or that the interaction happened outside the lookback window." + "get": { + "description": "Gets one event tag by ID.", + "httpMethod": "GET", + "id": "dfareporting.eventTags.get", + "parameterOrder": [ + "profileId", + "id" + ], + "parameters": { + "id": { + "description": "Event tag ID.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/eventTags/{id}", + "response": { + "$ref": "EventTag" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] }, - "includeUnattributedIPConversions": { - "type": "boolean", - "description": "Include conversions that have no associated cookies and no exposures. It’s therefore impossible to know how the user was exposed to your ads during the lookback window prior to a conversion." + "insert": { + "description": "Inserts a new event tag.", + "httpMethod": "POST", + "id": "dfareporting.eventTags.insert", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/eventTags", + "request": { + "$ref": "EventTag" + }, + "response": { + "$ref": "EventTag" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "description": "Retrieves a list of event tags, possibly filtered.", + "httpMethod": "GET", + "id": "dfareporting.eventTags.list", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "adId": { + "description": "Select only event tags that belong to this ad.", + "format": "int64", + "location": "query", + "type": "string" + }, + "advertiserId": { + "description": "Select only event tags that belong to this advertiser.", + "format": "int64", + "location": "query", + "type": "string" + }, + "campaignId": { + "description": "Select only event tags that belong to this campaign.", + "format": "int64", + "location": "query", + "type": "string" + }, + "definitionsOnly": { + "description": "Examine only the specified campaign or advertiser's event tags for matching selector criteria. When set to false, the parent advertiser and parent campaign of the specified ad or campaign is examined as well. In addition, when set to false, the status field is examined as well, along with the enabledByDefault field. This parameter can not be set to true when adId is specified as ads do not define their own even tags.", + "location": "query", + "type": "boolean" + }, + "enabled": { + "description": "Select only enabled event tags. What is considered enabled or disabled depends on the definitionsOnly parameter. When definitionsOnly is set to true, only the specified advertiser or campaign's event tags' enabledByDefault field is examined. When definitionsOnly is set to false, the specified ad or specified campaign's parent advertiser's or parent campaign's event tags' enabledByDefault and status fields are examined as well.", + "location": "query", + "type": "boolean" + }, + "eventTagTypes": { + "description": "Select only event tags with the specified event tag types. Event tag types can be used to specify whether to use a third-party pixel, a third-party JavaScript URL, or a third-party click-through URL for either impression or click tracking.", + "enum": [ + "CLICK_THROUGH_EVENT_TAG", + "IMPRESSION_IMAGE_EVENT_TAG", + "IMPRESSION_JAVASCRIPT_EVENT_TAG" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "location": "query", + "repeated": true, + "type": "string" + }, + "ids": { + "description": "Select only event tags with these IDs.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "searchString": { + "description": "Allows searching for objects by name or ID. Wildcards (*) are allowed. For example, \"eventtag*2015\" will return objects with names like \"eventtag June 2015\", \"eventtag April 2015\", or simply \"eventtag 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"eventtag\" will match objects with name \"my eventtag\", \"eventtag 2015\", or simply \"eventtag\".", + "location": "query", + "type": "string" + }, + "sortField": { + "default": "ID", + "description": "Field by which to sort the list.", + "enum": [ + "ID", + "NAME" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + }, + "sortOrder": { + "default": "ASCENDING", + "description": "Order of sorted results.", + "enum": [ + "ASCENDING", + "DESCENDING" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + } + }, + "path": "userprofiles/{profileId}/eventTags", + "response": { + "$ref": "EventTagsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "patch": { + "description": "Updates an existing event tag. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "dfareporting.eventTags.patch", + "parameterOrder": [ + "profileId", + "id" + ], + "parameters": { + "id": { + "description": "Event tag ID.", + "format": "int64", + "location": "query", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/eventTags", + "request": { + "$ref": "EventTag" + }, + "response": { + "$ref": "EventTag" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "update": { + "description": "Updates an existing event tag.", + "httpMethod": "PUT", + "id": "dfareporting.eventTags.update", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/eventTags", + "request": { + "$ref": "EventTag" + }, + "response": { + "$ref": "EventTag" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] } - } } - } - }, - "format": { - "type": "string", - "description": "The output format of the report. If not specified, default format is \"CSV\". Note that the actual format in the completed report file might differ if for instance the report's size exceeds the format's capabilities. \"CSV\" will then be the fallback format.", - "enum": [ - "CSV", - "EXCEL" - ], - "enumDescriptions": [ - "", - "" - ] - }, - "id": { - "type": "string", - "description": "The unique ID identifying this report resource.", - "format": "int64", - "annotations": { - "required": [ - "dfareporting.reports.update" - ] - } - }, - "kind": { - "type": "string", - "description": "The kind of resource this is, in this case dfareporting#report.", - "default": "dfareporting#report" - }, - "lastModifiedTime": { - "type": "string", - "description": "The timestamp (in milliseconds since epoch) of when this report was last modified.", - "format": "uint64", - "annotations": { - "required": [ - "dfareporting.reports.update" - ] - } - }, - "name": { - "type": "string", - "description": "The name of the report.", - "annotations": { - "required": [ - "dfareporting.reports.insert", - "dfareporting.reports.update" - ] - } - }, - "ownerProfileId": { - "type": "string", - "description": "The user profile id of the owner of this report.", - "format": "int64", - "annotations": { - "required": [ - "dfareporting.reports.update" - ] - } - }, - "pathToConversionCriteria": { - "type": "object", - "description": "The report criteria for a report of type \"PATH_TO_CONVERSION\".", - "properties": { - "activityFilters": { - "type": "array", - "description": "The list of 'dfa:activity' values to filter on.", - "items": { - "$ref": "DimensionValue" - } - }, - "conversionDimensions": { - "type": "array", - "description": "The list of conversion dimensions the report should include.", - "items": { - "$ref": "SortedDimension" - } - }, - "customFloodlightVariables": { - "type": "array", - "description": "The list of custom floodlight variables the report should include.", - "items": { - "$ref": "SortedDimension" - } - }, - "customRichMediaEvents": { - "type": "array", - "description": "The list of custom rich media events to include.", - "items": { - "$ref": "DimensionValue" - } - }, - "dateRange": { - "$ref": "DateRange", - "description": "The date range this report should be run for." - }, - "floodlightConfigId": { - "$ref": "DimensionValue", - "description": "The floodlight ID for which to show data in this report. All advertisers associated with that ID will automatically be added. The dimension of the value needs to be 'dfa:floodlightConfigId'." - }, - "metricNames": { - "type": "array", - "description": "The list of names of metrics the report should include.", - "items": { - "type": "string" - } - }, - "perInteractionDimensions": { - "type": "array", - "description": "The list of per interaction dimensions the report should include.", - "items": { - "$ref": "SortedDimension" - } - }, - "reportProperties": { - "type": "object", - "description": "The properties of the report.", - "properties": { - "clicksLookbackWindow": { - "type": "integer", - "description": "DFA checks to see if a click interaction occurred within the specified period of time before a conversion. By default the value is pulled from Floodlight or you can manually enter a custom value. Valid values: 1-90.", - "format": "int32" - }, - "impressionsLookbackWindow": { - "type": "integer", - "description": "DFA checks to see if an impression interaction occurred within the specified period of time before a conversion. By default the value is pulled from Floodlight or you can manually enter a custom value. Valid values: 1-90.", - "format": "int32" - }, - "includeAttributedIPConversions": { - "type": "boolean", - "description": "Deprecated: has no effect." - }, - "includeUnattributedCookieConversions": { - "type": "boolean", - "description": "Include conversions of users with a DoubleClick cookie but without an exposure. That means the user did not click or see an ad from the advertiser within the Floodlight group, or that the interaction happened outside the lookback window." - }, - "includeUnattributedIPConversions": { - "type": "boolean", - "description": "Include conversions that have no associated cookies and no exposures. It’s therefore impossible to know how the user was exposed to your ads during the lookback window prior to a conversion." - }, - "maximumClickInteractions": { - "type": "integer", - "description": "The maximum number of click interactions to include in the report. Advertisers currently paying for E2C reports get up to 200 (100 clicks, 100 impressions). If another advertiser in your network is paying for E2C, you can have up to 5 total exposures per report.", - "format": "int32" - }, - "maximumImpressionInteractions": { - "type": "integer", - "description": "The maximum number of click interactions to include in the report. Advertisers currently paying for E2C reports get up to 200 (100 clicks, 100 impressions). If another advertiser in your network is paying for E2C, you can have up to 5 total exposures per report.", - "format": "int32" - }, - "maximumInteractionGap": { - "type": "integer", - "description": "The maximum amount of time that can take place between interactions (clicks or impressions) by the same user. Valid values: 1-90.", - "format": "int32" - }, - "pivotOnInteractionPath": { - "type": "boolean", - "description": "Enable pivoting on interaction path." - } - } - } - } - }, - "reachCriteria": { - "type": "object", - "description": "The report criteria for a report of type \"REACH\".", - "properties": { - "activities": { - "$ref": "Activities", - "description": "Activity group." - }, - "customRichMediaEvents": { - "$ref": "CustomRichMediaEvents", - "description": "Custom Rich Media Events group." - }, - "dateRange": { - "$ref": "DateRange", - "description": "The date range this report should be run for." - }, - "dimensionFilters": { - "type": "array", - "description": "The list of filters on which dimensions are filtered.\nFilters for different dimensions are ANDed, filters for the same dimension are grouped together and ORed.", - "items": { - "$ref": "DimensionValue" - } - }, - "dimensions": { - "type": "array", - "description": "The list of dimensions the report should include.", - "items": { - "$ref": "SortedDimension" - } - }, - "enableAllDimensionCombinations": { - "type": "boolean", - "description": "Whether to enable all reach dimension combinations in the report. Defaults to false. If enabled, the date range of the report should be within the last 42 days." - }, - "metricNames": { - "type": "array", - "description": "The list of names of metrics the report should include.", - "items": { - "type": "string" - } - }, - "reachByFrequencyMetricNames": { - "type": "array", - "description": "The list of names of Reach By Frequency metrics the report should include.", - "items": { - "type": "string" - } - } - } - }, - "schedule": { - "type": "object", - "description": "The report's schedule. Can only be set if the report's 'dateRange' is a relative date range and the relative date range is not \"TODAY\".", - "properties": { - "active": { - "type": "boolean", - "description": "Whether the schedule is active or not. Must be set to either true or false.", - "annotations": { - "required": [ - "dfareporting.reports.insert", - "dfareporting.reports.update" - ] - } - }, - "every": { - "type": "integer", - "description": "Defines every how many days, weeks or months the report should be run. Needs to be set when \"repeats\" is either \"DAILY\", \"WEEKLY\" or \"MONTHLY\".", - "format": "int32" - }, - "expirationDate": { - "type": "string", - "description": "The expiration date when the scheduled report stops running.", - "format": "date", - "annotations": { - "required": [ - "dfareporting.reports.insert", - "dfareporting.reports.update" - ] - } - }, - "repeats": { - "type": "string", - "description": "The interval for which the report is repeated. Note: \n- \"DAILY\" also requires field \"every\" to be set. \n- \"WEEKLY\" also requires fields \"every\" and \"repeatsOnWeekDays\" to be set. \n- \"MONTHLY\" also requires fields \"every\" and \"runsOnDayOfMonth\" to be set.", - "annotations": { - "required": [ - "dfareporting.reports.insert", - "dfareporting.reports.update" - ] - } - }, - "repeatsOnWeekDays": { - "type": "array", - "description": "List of week days \"WEEKLY\" on which scheduled reports should run.", - "items": { - "type": "string", - "enum": [ - "FRIDAY", - "MONDAY", - "SATURDAY", - "SUNDAY", - "THURSDAY", - "TUESDAY", - "WEDNESDAY" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "" - ] - } - }, - "runsOnDayOfMonth": { - "type": "string", - "description": "Enum to define for \"MONTHLY\" scheduled reports whether reports should be repeated on the same day of the month as \"startDate\" or the same day of the week of the month.\nExample: If 'startDate' is Monday, April 2nd 2012 (2012-04-02), \"DAY_OF_MONTH\" would run subsequent reports on the 2nd of every Month, and \"WEEK_OF_MONTH\" would run subsequent reports on the first Monday of the month.", - "enum": [ - "DAY_OF_MONTH", - "WEEK_OF_MONTH" - ], - "enumDescriptions": [ - "", - "" - ] - }, - "startDate": { - "type": "string", - "description": "Start date of date range for which scheduled reports should be run.", - "format": "date", - "annotations": { - "required": [ - "dfareporting.reports.insert", - "dfareporting.reports.update" - ] - } - } - } - }, - "subAccountId": { - "type": "string", - "description": "The subaccount ID to which this report belongs if applicable.", - "format": "int64" - }, - "type": { - "type": "string", - "description": "The type of the report.", - "enum": [ - "CROSS_DIMENSION_REACH", - "FLOODLIGHT", - "PATH_TO_CONVERSION", - "REACH", - "STANDARD" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "" - ], - "annotations": { - "required": [ - "dfareporting.reports.insert", - "dfareporting.reports.update" - ] - } - } - } - }, - "ReportCompatibleFields": { - "id": "ReportCompatibleFields", - "type": "object", - "description": "Represents fields that are compatible to be selected for a report of type \"STANDARD\".", - "properties": { - "dimensionFilters": { - "type": "array", - "description": "Dimensions which are compatible to be selected in the \"dimensionFilters\" section of the report.", - "items": { - "$ref": "Dimension" - } - }, - "dimensions": { - "type": "array", - "description": "Dimensions which are compatible to be selected in the \"dimensions\" section of the report.", - "items": { - "$ref": "Dimension" - } - }, - "kind": { - "type": "string", - "description": "The kind of resource this is, in this case dfareporting#reportCompatibleFields.", - "default": "dfareporting#reportCompatibleFields" - }, - "metrics": { - "type": "array", - "description": "Metrics which are compatible to be selected in the \"metricNames\" section of the report.", - "items": { - "$ref": "Metric" - } - }, - "pivotedActivityMetrics": { - "type": "array", - "description": "Metrics which are compatible to be selected as activity metrics to pivot on in the \"activities\" section of the report.", - "items": { - "$ref": "Metric" - } - } - } - }, - "ReportList": { - "id": "ReportList", - "type": "object", - "description": "Represents the list of reports.", - "properties": { - "etag": { - "type": "string", - "description": "The eTag of this response for caching purposes." - }, - "items": { - "type": "array", - "description": "The reports returned in this response.", - "items": { - "$ref": "Report" - } - }, - "kind": { - "type": "string", - "description": "The kind of list this is, in this case dfareporting#reportList.", - "default": "dfareporting#reportList" - }, - "nextPageToken": { - "type": "string", - "description": "Continuation token used to page through reports. To retrieve the next page of results, set the next request's \"pageToken\" to the value of this field. The page token is only valid for a limited amount of time and should not be persisted." - } - } - }, - "ReportsConfiguration": { - "id": "ReportsConfiguration", - "type": "object", - "description": "Reporting Configuration", - "properties": { - "exposureToConversionEnabled": { - "type": "boolean", - "description": "Whether the exposure to conversion report is enabled. This report shows detailed pathway information on up to 10 of the most recent ad exposures seen by a user before converting." - }, - "lookbackConfiguration": { - "$ref": "LookbackConfiguration", - "description": "Default lookback windows for new advertisers in this account." - }, - "reportGenerationTimeZoneId": { - "type": "string", - "description": "Report generation time zone ID of this account. This is a required field that can only be changed by a superuser.\nAcceptable values are:\n\n- \"1\" for \"America/New_York\" \n- \"2\" for \"Europe/London\" \n- \"3\" for \"Europe/Paris\" \n- \"4\" for \"Africa/Johannesburg\" \n- \"5\" for \"Asia/Jerusalem\" \n- \"6\" for \"Asia/Shanghai\" \n- \"7\" for \"Asia/Hong_Kong\" \n- \"8\" for \"Asia/Tokyo\" \n- \"9\" for \"Australia/Sydney\" \n- \"10\" for \"Asia/Dubai\" \n- \"11\" for \"America/Los_Angeles\" \n- \"12\" for \"Pacific/Auckland\" \n- \"13\" for \"America/Sao_Paulo\"", - "format": "int64" - } - } - }, - "RichMediaExitOverride": { - "id": "RichMediaExitOverride", - "type": "object", - "description": "Rich Media Exit Override.", - "properties": { - "clickThroughUrl": { - "$ref": "ClickThroughUrl", - "description": "Click-through URL of this rich media exit override. Applicable if the enabled field is set to true." - }, - "enabled": { - "type": "boolean", - "description": "Whether to use the clickThroughUrl. If false, the creative-level exit will be used." - }, - "exitId": { - "type": "string", - "description": "ID for the override to refer to a specific exit in the creative.", - "format": "int64" - } - } - }, - "Rule": { - "id": "Rule", - "type": "object", - "description": "A rule associates an asset with a targeting template for asset-level targeting. Applicable to INSTREAM_VIDEO creatives.", - "properties": { - "assetId": { - "type": "string", - "description": "A creativeAssets[].id. This should refer to one of the parent assets in this creative. This is a required field.", - "format": "int64" - }, - "name": { - "type": "string", - "description": "A user-friendly name for this rule. This is a required field." - }, - "targetingTemplateId": { - "type": "string", - "description": "A targeting template ID. The targeting from the targeting template will be used to determine whether this asset should be served. This is a required field.", - "format": "int64" - } - } - }, - "Site": { - "id": "Site", - "type": "object", - "description": "Contains properties of a site.", - "properties": { - "accountId": { - "type": "string", - "description": "Account ID of this site. This is a read-only field that can be left blank.", - "format": "int64" - }, - "approved": { - "type": "boolean", - "description": "Whether this site is approved." - }, - "directorySiteId": { - "type": "string", - "description": "Directory site associated with this site. This is a required field that is read-only after insertion.", - "format": "int64" - }, - "directorySiteIdDimensionValue": { - "$ref": "DimensionValue", - "description": "Dimension value for the ID of the directory site. This is a read-only, auto-generated field." - }, - "id": { - "type": "string", - "description": "ID of this site. This is a read-only, auto-generated field.", - "format": "int64" - }, - "idDimensionValue": { - "$ref": "DimensionValue", - "description": "Dimension value for the ID of this site. This is a read-only, auto-generated field." - }, - "keyName": { - "type": "string", - "description": "Key name of this site. This is a read-only, auto-generated field." - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#site\".", - "default": "dfareporting#site" - }, - "name": { - "type": "string", - "description": "Name of this site.This is a required field. Must be less than 128 characters long. If this site is under a subaccount, the name must be unique among sites of the same subaccount. Otherwise, this site is a top-level site, and the name must be unique among top-level sites of the same account." - }, - "siteContacts": { - "type": "array", - "description": "Site contacts.", - "items": { - "$ref": "SiteContact" - } - }, - "siteSettings": { - "$ref": "SiteSettings", - "description": "Site-wide settings." - }, - "subaccountId": { - "type": "string", - "description": "Subaccount ID of this site. This is a read-only field that can be left blank.", - "format": "int64" - } - } - }, - "SiteContact": { - "id": "SiteContact", - "type": "object", - "description": "Site Contact", - "properties": { - "address": { - "type": "string", - "description": "Address of this site contact." - }, - "contactType": { - "type": "string", - "description": "Site contact type.", - "enum": [ - "SALES_PERSON", - "TRAFFICKER" - ], - "enumDescriptions": [ - "", - "" - ] - }, - "email": { - "type": "string", - "description": "Email address of this site contact. This is a required field." - }, - "firstName": { - "type": "string", - "description": "First name of this site contact." - }, - "id": { - "type": "string", - "description": "ID of this site contact. This is a read-only, auto-generated field.", - "format": "int64" - }, - "lastName": { - "type": "string", - "description": "Last name of this site contact." - }, - "phone": { - "type": "string", - "description": "Primary phone number of this site contact." - }, - "title": { - "type": "string", - "description": "Title or designation of this site contact." - } - } - }, - "SiteSettings": { - "id": "SiteSettings", - "type": "object", - "description": "Site Settings", - "properties": { - "activeViewOptOut": { - "type": "boolean", - "description": "Whether active view creatives are disabled for this site." - }, - "adBlockingOptOut": { - "type": "boolean", - "description": "Whether this site opts out of ad blocking. When true, ad blocking is disabled for all placements under the site, regardless of the individual placement settings. When false, the campaign and placement settings take effect." - }, - "creativeSettings": { - "$ref": "CreativeSettings", - "description": "Site-wide creative settings." - }, - "disableNewCookie": { - "type": "boolean", - "description": "Whether new cookies are disabled for this site." - }, - "lookbackConfiguration": { - "$ref": "LookbackConfiguration", - "description": "Lookback window settings for this site." - }, - "tagSetting": { - "$ref": "TagSetting", - "description": "Configuration settings for dynamic and image floodlight tags." - }, - "videoActiveViewOptOutTemplate": { - "type": "boolean", - "description": "Whether Verification and ActiveView for in-stream video creatives are disabled by default for new placements created under this site. This value will be used to populate the placement.videoActiveViewOptOut field, when no value is specified for the new placement." - }, - "vpaidAdapterChoiceTemplate": { - "type": "string", - "description": "Default VPAID adapter setting for new placements created under this site. This value will be used to populate the placements.vpaidAdapterChoice field, when no value is specified for the new placement. Controls which VPAID format the measurement adapter will use for in-stream video creatives assigned to the placement. The publisher's specifications will typically determine this setting. For VPAID creatives, the adapter format will match the VPAID format (HTML5 VPAID creatives use the HTML5 adapter).\n\nNote: Flash is no longer supported. This field now defaults to HTML5 when the following values are provided: FLASH, BOTH.", - "enum": [ - "BOTH", - "DEFAULT", - "FLASH", - "HTML5" - ], - "enumDescriptions": [ - "", - "", - "", - "" - ] - } - } - }, - "SitesListResponse": { - "id": "SitesListResponse", - "type": "object", - "description": "Site List Response", - "properties": { - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#sitesListResponse\".", - "default": "dfareporting#sitesListResponse" - }, - "nextPageToken": { - "type": "string", - "description": "Pagination token to be used for the next list operation." - }, - "sites": { - "type": "array", - "description": "Site collection.", - "items": { - "$ref": "Site" - } - } - } - }, - "Size": { - "id": "Size", - "type": "object", - "description": "Represents the dimensions of ads, placements, creatives, or creative assets.", - "properties": { - "height": { - "type": "integer", - "description": "Height of this size. Acceptable values are 0 to 32767, inclusive.", - "format": "int32" - }, - "iab": { - "type": "boolean", - "description": "IAB standard size. This is a read-only, auto-generated field." - }, - "id": { - "type": "string", - "description": "ID of this size. This is a read-only, auto-generated field.", - "format": "int64" - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#size\".", - "default": "dfareporting#size" - }, - "width": { - "type": "integer", - "description": "Width of this size. Acceptable values are 0 to 32767, inclusive.", - "format": "int32" - } - } - }, - "SizesListResponse": { - "id": "SizesListResponse", - "type": "object", - "description": "Size List Response", - "properties": { - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#sizesListResponse\".", - "default": "dfareporting#sizesListResponse" - }, - "sizes": { - "type": "array", - "description": "Size collection.", - "items": { - "$ref": "Size" - } - } - } - }, - "SkippableSetting": { - "id": "SkippableSetting", - "type": "object", - "description": "Skippable Settings", - "properties": { - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#skippableSetting\".", - "default": "dfareporting#skippableSetting" - }, - "progressOffset": { - "$ref": "VideoOffset", - "description": "Amount of time to play videos served to this placement before counting a view. Applicable when skippable is true." - }, - "skipOffset": { - "$ref": "VideoOffset", - "description": "Amount of time to play videos served to this placement before the skip button should appear. Applicable when skippable is true." - }, - "skippable": { - "type": "boolean", - "description": "Whether the user can skip creatives served to this placement." - } - } - }, - "SortedDimension": { - "id": "SortedDimension", - "type": "object", - "description": "Represents a sorted dimension.", - "properties": { - "kind": { - "type": "string", - "description": "The kind of resource this is, in this case dfareporting#sortedDimension.", - "default": "dfareporting#sortedDimension" - }, - "name": { - "type": "string", - "description": "The name of the dimension." - }, - "sortOrder": { - "type": "string", - "description": "An optional sort order for the dimension column.", - "enum": [ - "ASCENDING", - "DESCENDING" - ], - "enumDescriptions": [ - "", - "" - ] - } - } - }, - "Subaccount": { - "id": "Subaccount", - "type": "object", - "description": "Contains properties of a DCM subaccount.", - "properties": { - "accountId": { - "type": "string", - "description": "ID of the account that contains this subaccount. This is a read-only field that can be left blank.", - "format": "int64" - }, - "availablePermissionIds": { - "type": "array", - "description": "IDs of the available user role permissions for this subaccount.", - "items": { - "type": "string", - "format": "int64" - } - }, - "id": { - "type": "string", - "description": "ID of this subaccount. This is a read-only, auto-generated field.", - "format": "int64" - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#subaccount\".", - "default": "dfareporting#subaccount" - }, - "name": { - "type": "string", - "description": "Name of this subaccount. This is a required field. Must be less than 128 characters long and be unique among subaccounts of the same account." - } - } - }, - "SubaccountsListResponse": { - "id": "SubaccountsListResponse", - "type": "object", - "description": "Subaccount List Response", - "properties": { - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#subaccountsListResponse\".", - "default": "dfareporting#subaccountsListResponse" - }, - "nextPageToken": { - "type": "string", - "description": "Pagination token to be used for the next list operation." - }, - "subaccounts": { - "type": "array", - "description": "Subaccount collection.", - "items": { - "$ref": "Subaccount" - } - } - } - }, - "TagData": { - "id": "TagData", - "type": "object", - "description": "Placement Tag Data", - "properties": { - "adId": { - "type": "string", - "description": "Ad associated with this placement tag. Applicable only when format is PLACEMENT_TAG_TRACKING.", - "format": "int64" - }, - "clickTag": { - "type": "string", - "description": "Tag string to record a click." - }, - "creativeId": { - "type": "string", - "description": "Creative associated with this placement tag. Applicable only when format is PLACEMENT_TAG_TRACKING.", - "format": "int64" - }, - "format": { - "type": "string", - "description": "TagData tag format of this tag.", - "enum": [ - "PLACEMENT_TAG_CLICK_COMMANDS", - "PLACEMENT_TAG_IFRAME_ILAYER", - "PLACEMENT_TAG_IFRAME_JAVASCRIPT", - "PLACEMENT_TAG_IFRAME_JAVASCRIPT_LEGACY", - "PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH", - "PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH_VAST_3", - "PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH_VAST_4", - "PLACEMENT_TAG_INTERNAL_REDIRECT", - "PLACEMENT_TAG_INTERSTITIAL_IFRAME_JAVASCRIPT", - "PLACEMENT_TAG_INTERSTITIAL_IFRAME_JAVASCRIPT_LEGACY", - "PLACEMENT_TAG_INTERSTITIAL_INTERNAL_REDIRECT", - "PLACEMENT_TAG_INTERSTITIAL_JAVASCRIPT", - "PLACEMENT_TAG_INTERSTITIAL_JAVASCRIPT_LEGACY", - "PLACEMENT_TAG_JAVASCRIPT", - "PLACEMENT_TAG_JAVASCRIPT_LEGACY", - "PLACEMENT_TAG_STANDARD", - "PLACEMENT_TAG_TRACKING", - "PLACEMENT_TAG_TRACKING_IFRAME", - "PLACEMENT_TAG_TRACKING_JAVASCRIPT" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "impressionTag": { - "type": "string", - "description": "Tag string for serving an ad." - } - } - }, - "TagSetting": { - "id": "TagSetting", - "type": "object", - "description": "Tag Settings", - "properties": { - "additionalKeyValues": { - "type": "string", - "description": "Additional key-values to be included in tags. Each key-value pair must be of the form key=value, and pairs must be separated by a semicolon (;). Keys and values must not contain commas. For example, id=2;color=red is a valid value for this field." - }, - "includeClickThroughUrls": { - "type": "boolean", - "description": "Whether static landing page URLs should be included in the tags. This setting applies only to placements." - }, - "includeClickTracking": { - "type": "boolean", - "description": "Whether click-tracking string should be included in the tags." - }, - "keywordOption": { - "type": "string", - "description": "Option specifying how keywords are embedded in ad tags. This setting can be used to specify whether keyword placeholders are inserted in placement tags for this site. Publishers can then add keywords to those placeholders.", - "enum": [ - "GENERATE_SEPARATE_TAG_FOR_EACH_KEYWORD", - "IGNORE", - "PLACEHOLDER_WITH_LIST_OF_KEYWORDS" - ], - "enumDescriptions": [ - "", - "", - "" - ] - } - } - }, - "TagSettings": { - "id": "TagSettings", - "type": "object", - "description": "Dynamic and Image Tag Settings.", - "properties": { - "dynamicTagEnabled": { - "type": "boolean", - "description": "Whether dynamic floodlight tags are enabled." - }, - "imageTagEnabled": { - "type": "boolean", - "description": "Whether image tags are enabled." - } - } - }, - "TargetWindow": { - "id": "TargetWindow", - "type": "object", - "description": "Target Window.", - "properties": { - "customHtml": { - "type": "string", - "description": "User-entered value." - }, - "targetWindowOption": { - "type": "string", - "description": "Type of browser window for which the backup image of the flash creative can be displayed.", - "enum": [ - "CURRENT_WINDOW", - "CUSTOM", - "NEW_WINDOW" - ], - "enumDescriptions": [ - "", - "", - "" - ] - } - } - }, - "TargetableRemarketingList": { - "id": "TargetableRemarketingList", - "type": "object", - "description": "Contains properties of a targetable remarketing list. Remarketing enables you to create lists of users who have performed specific actions on a site, then target ads to members of those lists. This resource is a read-only view of a remarketing list to be used to faciliate targeting ads to specific lists. Remarketing lists that are owned by your advertisers and those that are shared to your advertisers or account are accessible via this resource. To manage remarketing lists that are owned by your advertisers, use the RemarketingLists resource.", - "properties": { - "accountId": { - "type": "string", - "description": "Account ID of this remarketing list. This is a read-only, auto-generated field that is only returned in GET requests.", - "format": "int64" - }, - "active": { - "type": "boolean", - "description": "Whether this targetable remarketing list is active." - }, - "advertiserId": { - "type": "string", - "description": "Dimension value for the advertiser ID that owns this targetable remarketing list.", - "format": "int64" - }, - "advertiserIdDimensionValue": { - "$ref": "DimensionValue", - "description": "Dimension value for the ID of the advertiser." - }, - "description": { - "type": "string", - "description": "Targetable remarketing list description." - }, - "id": { - "type": "string", - "description": "Targetable remarketing list ID.", - "format": "int64" - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#targetableRemarketingList\".", - "default": "dfareporting#targetableRemarketingList" - }, - "lifeSpan": { - "type": "string", - "description": "Number of days that a user should remain in the targetable remarketing list without an impression.", - "format": "int64" - }, - "listSize": { - "type": "string", - "description": "Number of users currently in the list. This is a read-only field.", - "format": "int64" - }, - "listSource": { - "type": "string", - "description": "Product from which this targetable remarketing list was originated.", - "enum": [ - "REMARKETING_LIST_SOURCE_ADX", - "REMARKETING_LIST_SOURCE_DBM", - "REMARKETING_LIST_SOURCE_DFA", - "REMARKETING_LIST_SOURCE_DFP", - "REMARKETING_LIST_SOURCE_DMP", - "REMARKETING_LIST_SOURCE_GA", - "REMARKETING_LIST_SOURCE_GPLUS", - "REMARKETING_LIST_SOURCE_OTHER", - "REMARKETING_LIST_SOURCE_PLAY_STORE", - "REMARKETING_LIST_SOURCE_XFP", - "REMARKETING_LIST_SOURCE_YOUTUBE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "name": { - "type": "string", - "description": "Name of the targetable remarketing list. Is no greater than 128 characters long." - }, - "subaccountId": { - "type": "string", - "description": "Subaccount ID of this remarketing list. This is a read-only, auto-generated field that is only returned in GET requests.", - "format": "int64" - } - } - }, - "TargetableRemarketingListsListResponse": { - "id": "TargetableRemarketingListsListResponse", - "type": "object", - "description": "Targetable remarketing list response", - "properties": { - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#targetableRemarketingListsListResponse\".", - "default": "dfareporting#targetableRemarketingListsListResponse" - }, - "nextPageToken": { - "type": "string", - "description": "Pagination token to be used for the next list operation." - }, - "targetableRemarketingLists": { - "type": "array", - "description": "Targetable remarketing list collection.", - "items": { - "$ref": "TargetableRemarketingList" - } - } - } - }, - "TargetingTemplate": { - "id": "TargetingTemplate", - "type": "object", - "description": "Contains properties of a targeting template. A targeting template encapsulates targeting information which can be reused across multiple ads.", - "properties": { - "accountId": { - "type": "string", - "description": "Account ID of this targeting template. This field, if left unset, will be auto-generated on insert and is read-only after insert.", - "format": "int64" - }, - "advertiserId": { - "type": "string", - "description": "Advertiser ID of this targeting template. This is a required field on insert and is read-only after insert.", - "format": "int64" - }, - "advertiserIdDimensionValue": { - "$ref": "DimensionValue", - "description": "Dimension value for the ID of the advertiser. This is a read-only, auto-generated field." - }, - "dayPartTargeting": { - "$ref": "DayPartTargeting", - "description": "Time and day targeting criteria." - }, - "geoTargeting": { - "$ref": "GeoTargeting", - "description": "Geographical targeting criteria." - }, - "id": { - "type": "string", - "description": "ID of this targeting template. This is a read-only, auto-generated field.", - "format": "int64" - }, - "keyValueTargetingExpression": { - "$ref": "KeyValueTargetingExpression", - "description": "Key-value targeting criteria." - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#targetingTemplate\".", - "default": "dfareporting#targetingTemplate" - }, - "languageTargeting": { - "$ref": "LanguageTargeting", - "description": "Language targeting criteria." - }, - "listTargetingExpression": { - "$ref": "ListTargetingExpression", - "description": "Remarketing list targeting criteria." - }, - "name": { - "type": "string", - "description": "Name of this targeting template. This field is required. It must be less than 256 characters long and unique within an advertiser." - }, - "subaccountId": { - "type": "string", - "description": "Subaccount ID of this targeting template. This field, if left unset, will be auto-generated on insert and is read-only after insert.", - "format": "int64" - }, - "technologyTargeting": { - "$ref": "TechnologyTargeting", - "description": "Technology platform targeting criteria." - } - } - }, - "TargetingTemplatesListResponse": { - "id": "TargetingTemplatesListResponse", - "type": "object", - "description": "Targeting Template List Response", - "properties": { - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#targetingTemplatesListResponse\".", - "default": "dfareporting#targetingTemplatesListResponse" - }, - "nextPageToken": { - "type": "string", - "description": "Pagination token to be used for the next list operation." - }, - "targetingTemplates": { - "type": "array", - "description": "Targeting template collection.", - "items": { - "$ref": "TargetingTemplate" - } - } - } - }, - "TechnologyTargeting": { - "id": "TechnologyTargeting", - "type": "object", - "description": "Technology Targeting.", - "properties": { - "browsers": { - "type": "array", - "description": "Browsers that this ad targets. For each browser either set browserVersionId or dartId along with the version numbers. If both are specified, only browserVersionId will be used. The other fields are populated automatically when the ad is inserted or updated.", - "items": { - "$ref": "Browser" - } - }, - "connectionTypes": { - "type": "array", - "description": "Connection types that this ad targets. For each connection type only id is required. The other fields are populated automatically when the ad is inserted or updated.", - "items": { - "$ref": "ConnectionType" - } - }, - "mobileCarriers": { - "type": "array", - "description": "Mobile carriers that this ad targets. For each mobile carrier only id is required, and the other fields are populated automatically when the ad is inserted or updated. If targeting a mobile carrier, do not set targeting for any zip codes.", - "items": { - "$ref": "MobileCarrier" - } - }, - "operatingSystemVersions": { - "type": "array", - "description": "Operating system versions that this ad targets. To target all versions, use operatingSystems. For each operating system version, only id is required. The other fields are populated automatically when the ad is inserted or updated. If targeting an operating system version, do not set targeting for the corresponding operating system in operatingSystems.", - "items": { - "$ref": "OperatingSystemVersion" - } - }, - "operatingSystems": { - "type": "array", - "description": "Operating systems that this ad targets. To target specific versions, use operatingSystemVersions. For each operating system only dartId is required. The other fields are populated automatically when the ad is inserted or updated. If targeting an operating system, do not set targeting for operating system versions for the same operating system.", - "items": { - "$ref": "OperatingSystem" - } - }, - "platformTypes": { - "type": "array", - "description": "Platform types that this ad targets. For example, desktop, mobile, or tablet. For each platform type, only id is required, and the other fields are populated automatically when the ad is inserted or updated.", - "items": { - "$ref": "PlatformType" - } - } - } - }, - "ThirdPartyAuthenticationToken": { - "id": "ThirdPartyAuthenticationToken", - "type": "object", - "description": "Third Party Authentication Token", - "properties": { - "name": { - "type": "string", - "description": "Name of the third-party authentication token." - }, - "value": { - "type": "string", - "description": "Value of the third-party authentication token. This is a read-only, auto-generated field." - } - } - }, - "ThirdPartyTrackingUrl": { - "id": "ThirdPartyTrackingUrl", - "type": "object", - "description": "Third-party Tracking URL.", - "properties": { - "thirdPartyUrlType": { - "type": "string", - "description": "Third-party URL type for in-stream video creatives.", - "enum": [ - "CLICK_TRACKING", - "IMPRESSION", - "RICH_MEDIA_BACKUP_IMPRESSION", - "RICH_MEDIA_IMPRESSION", - "RICH_MEDIA_RM_IMPRESSION", - "SURVEY", - "VIDEO_COMPLETE", - "VIDEO_CUSTOM", - "VIDEO_FIRST_QUARTILE", - "VIDEO_FULLSCREEN", - "VIDEO_MIDPOINT", - "VIDEO_MUTE", - "VIDEO_PAUSE", - "VIDEO_PROGRESS", - "VIDEO_REWIND", - "VIDEO_SKIP", - "VIDEO_START", - "VIDEO_STOP", - "VIDEO_THIRD_QUARTILE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "url": { - "type": "string", - "description": "URL for the specified third-party URL type." - } - } - }, - "TranscodeSetting": { - "id": "TranscodeSetting", - "type": "object", - "description": "Transcode Settings", - "properties": { - "enabledVideoFormats": { - "type": "array", - "description": "Whitelist of video formats to be served to this placement. Set this list to null or empty to serve all video formats.", - "items": { - "type": "integer", - "format": "int32" - } - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#transcodeSetting\".", - "default": "dfareporting#transcodeSetting" - } - } - }, - "UniversalAdId": { - "id": "UniversalAdId", - "type": "object", - "description": "A Universal Ad ID as per the VAST 4.0 spec. Applicable to the following creative types: INSTREAM_VIDEO and VPAID.", - "properties": { - "registry": { - "type": "string", - "description": "Registry used for the Ad ID value.", - "enum": [ - "AD_ID.ORG", - "CLEARCAST", - "DCM", - "OTHER" - ], - "enumDescriptions": [ - "", - "", - "", - "" - ] - }, - "value": { - "type": "string", - "description": "ID value for this creative. Only alphanumeric characters and the following symbols are valid: \"_/\\-\". Maximum length is 64 characters. Read only when registry is DCM." - } - } - }, - "UserDefinedVariableConfiguration": { - "id": "UserDefinedVariableConfiguration", - "type": "object", - "description": "User Defined Variable configuration.", - "properties": { - "dataType": { - "type": "string", - "description": "Data type for the variable. This is a required field.", - "enum": [ - "NUMBER", - "STRING" - ], - "enumDescriptions": [ - "", - "" - ] - }, - "reportName": { - "type": "string", - "description": "User-friendly name for the variable which will appear in reports. This is a required field, must be less than 64 characters long, and cannot contain the following characters: \"\"\u003c\u003e\"." - }, - "variableType": { - "type": "string", - "description": "Variable name in the tag. This is a required field.", - "enum": [ - "U1", - "U10", - "U100", - "U11", - "U12", - "U13", - "U14", - "U15", - "U16", - "U17", - "U18", - "U19", - "U2", - "U20", - "U21", - "U22", - "U23", - "U24", - "U25", - "U26", - "U27", - "U28", - "U29", - "U3", - "U30", - "U31", - "U32", - "U33", - "U34", - "U35", - "U36", - "U37", - "U38", - "U39", - "U4", - "U40", - "U41", - "U42", - "U43", - "U44", - "U45", - "U46", - "U47", - "U48", - "U49", - "U5", - "U50", - "U51", - "U52", - "U53", - "U54", - "U55", - "U56", - "U57", - "U58", - "U59", - "U6", - "U60", - "U61", - "U62", - "U63", - "U64", - "U65", - "U66", - "U67", - "U68", - "U69", - "U7", - "U70", - "U71", - "U72", - "U73", - "U74", - "U75", - "U76", - "U77", - "U78", - "U79", - "U8", - "U80", - "U81", - "U82", - "U83", - "U84", - "U85", - "U86", - "U87", - "U88", - "U89", - "U9", - "U90", - "U91", - "U92", - "U93", - "U94", - "U95", - "U96", - "U97", - "U98", - "U99" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - } - } - }, - "UserProfile": { - "id": "UserProfile", - "type": "object", - "description": "Represents a UserProfile resource.", - "properties": { - "accountId": { - "type": "string", - "description": "The account ID to which this profile belongs.", - "format": "int64" - }, - "accountName": { - "type": "string", - "description": "The account name this profile belongs to." - }, - "etag": { - "type": "string", - "description": "The eTag of this response for caching purposes." - }, - "kind": { - "type": "string", - "description": "The kind of resource this is, in this case dfareporting#userProfile.", - "default": "dfareporting#userProfile" - }, - "profileId": { - "type": "string", - "description": "The unique ID of the user profile.", - "format": "int64" - }, - "subAccountId": { - "type": "string", - "description": "The sub account ID this profile belongs to if applicable.", - "format": "int64" - }, - "subAccountName": { - "type": "string", - "description": "The sub account name this profile belongs to if applicable." - }, - "userName": { - "type": "string", - "description": "The user name." - } - } - }, - "UserProfileList": { - "id": "UserProfileList", - "type": "object", - "description": "Represents the list of user profiles.", - "properties": { - "etag": { - "type": "string", - "description": "The eTag of this response for caching purposes." - }, - "items": { - "type": "array", - "description": "The user profiles returned in this response.", - "items": { - "$ref": "UserProfile" - } - }, - "kind": { - "type": "string", - "description": "The kind of list this is, in this case dfareporting#userProfileList.", - "default": "dfareporting#userProfileList" - } - } - }, - "UserRole": { - "id": "UserRole", - "type": "object", - "description": "Contains properties of auser role, which is used to manage user access.", - "properties": { - "accountId": { - "type": "string", - "description": "Account ID of this user role. This is a read-only field that can be left blank.", - "format": "int64" - }, - "defaultUserRole": { - "type": "boolean", - "description": "Whether this is a default user role. Default user roles are created by the system for the account/subaccount and cannot be modified or deleted. Each default user role comes with a basic set of preassigned permissions." - }, - "id": { - "type": "string", - "description": "ID of this user role. This is a read-only, auto-generated field.", - "format": "int64" - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#userRole\".", - "default": "dfareporting#userRole" - }, - "name": { - "type": "string", - "description": "Name of this user role. This is a required field. Must be less than 256 characters long. If this user role is under a subaccount, the name must be unique among sites of the same subaccount. Otherwise, this user role is a top-level user role, and the name must be unique among top-level user roles of the same account." - }, - "parentUserRoleId": { - "type": "string", - "description": "ID of the user role that this user role is based on or copied from. This is a required field.", - "format": "int64" - }, - "permissions": { - "type": "array", - "description": "List of permissions associated with this user role.", - "items": { - "$ref": "UserRolePermission" - } - }, - "subaccountId": { - "type": "string", - "description": "Subaccount ID of this user role. This is a read-only field that can be left blank.", - "format": "int64" - } - } - }, - "UserRolePermission": { - "id": "UserRolePermission", - "type": "object", - "description": "Contains properties of a user role permission.", - "properties": { - "availability": { - "type": "string", - "description": "Levels of availability for a user role permission.", - "enum": [ - "ACCOUNT_ALWAYS", - "ACCOUNT_BY_DEFAULT", - "NOT_AVAILABLE_BY_DEFAULT", - "SUBACCOUNT_AND_ACCOUNT_ALWAYS", - "SUBACCOUNT_AND_ACCOUNT_BY_DEFAULT" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "" - ] - }, - "id": { - "type": "string", - "description": "ID of this user role permission.", - "format": "int64" - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#userRolePermission\".", - "default": "dfareporting#userRolePermission" - }, - "name": { - "type": "string", - "description": "Name of this user role permission." - }, - "permissionGroupId": { - "type": "string", - "description": "ID of the permission group that this user role permission belongs to.", - "format": "int64" - } - } - }, - "UserRolePermissionGroup": { - "id": "UserRolePermissionGroup", - "type": "object", - "description": "Represents a grouping of related user role permissions.", - "properties": { - "id": { - "type": "string", - "description": "ID of this user role permission.", - "format": "int64" - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#userRolePermissionGroup\".", - "default": "dfareporting#userRolePermissionGroup" - }, - "name": { - "type": "string", - "description": "Name of this user role permission group." - } - } - }, - "UserRolePermissionGroupsListResponse": { - "id": "UserRolePermissionGroupsListResponse", - "type": "object", - "description": "User Role Permission Group List Response", - "properties": { - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#userRolePermissionGroupsListResponse\".", - "default": "dfareporting#userRolePermissionGroupsListResponse" - }, - "userRolePermissionGroups": { - "type": "array", - "description": "User role permission group collection.", - "items": { - "$ref": "UserRolePermissionGroup" - } - } - } - }, - "UserRolePermissionsListResponse": { - "id": "UserRolePermissionsListResponse", - "type": "object", - "description": "User Role Permission List Response", - "properties": { - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#userRolePermissionsListResponse\".", - "default": "dfareporting#userRolePermissionsListResponse" - }, - "userRolePermissions": { - "type": "array", - "description": "User role permission collection.", - "items": { - "$ref": "UserRolePermission" - } - } - } - }, - "UserRolesListResponse": { - "id": "UserRolesListResponse", - "type": "object", - "description": "User Role List Response", - "properties": { - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#userRolesListResponse\".", - "default": "dfareporting#userRolesListResponse" - }, - "nextPageToken": { - "type": "string", - "description": "Pagination token to be used for the next list operation." - }, - "userRoles": { - "type": "array", - "description": "User role collection.", - "items": { - "$ref": "UserRole" - } - } - } - }, - "VideoFormat": { - "id": "VideoFormat", - "type": "object", - "description": "Contains information about supported video formats.", - "properties": { - "fileType": { - "type": "string", - "description": "File type of the video format.", - "enum": [ - "FLV", - "M3U8", - "MP4", - "THREEGPP", - "WEBM" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "" - ] - }, - "id": { - "type": "integer", - "description": "ID of the video format.", - "format": "int32" - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#videoFormat\".", - "default": "dfareporting#videoFormat" - }, - "resolution": { - "$ref": "Size", - "description": "The resolution of this video format." - }, - "targetBitRate": { - "type": "integer", - "description": "The target bit rate of this video format.", - "format": "int32" - } - } - }, - "VideoFormatsListResponse": { - "id": "VideoFormatsListResponse", - "type": "object", - "description": "Video Format List Response", - "properties": { - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#videoFormatsListResponse\".", - "default": "dfareporting#videoFormatsListResponse" - }, - "videoFormats": { - "type": "array", - "description": "Video format collection.", - "items": { - "$ref": "VideoFormat" - } - } - } - }, - "VideoOffset": { - "id": "VideoOffset", - "type": "object", - "description": "Video Offset", - "properties": { - "offsetPercentage": { - "type": "integer", - "description": "Duration, as a percentage of video duration. Do not set when offsetSeconds is set. Acceptable values are 0 to 100, inclusive.", - "format": "int32" - }, - "offsetSeconds": { - "type": "integer", - "description": "Duration, in seconds. Do not set when offsetPercentage is set. Acceptable values are 0 to 86399, inclusive.", - "format": "int32" - } - } - }, - "VideoSettings": { - "id": "VideoSettings", - "type": "object", - "description": "Video Settings", - "properties": { - "companionSettings": { - "$ref": "CompanionSetting", - "description": "Settings for the companion creatives of video creatives served to this placement." - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#videoSettings\".", - "default": "dfareporting#videoSettings" - }, - "skippableSettings": { - "$ref": "SkippableSetting", - "description": "Settings for the skippability of video creatives served to this placement. If this object is provided, the creative-level skippable settings will be overridden." - }, - "transcodeSettings": { - "$ref": "TranscodeSetting", - "description": "Settings for the transcodes of video creatives served to this placement. If this object is provided, the creative-level transcode settings will be overridden." - } - } - } - }, - "resources": { - "accountActiveAdSummaries": { - "methods": { - "get": { - "id": "dfareporting.accountActiveAdSummaries.get", - "path": "userprofiles/{profileId}/accountActiveAdSummaries/{summaryAccountId}", - "httpMethod": "GET", - "description": "Gets the account's active ad summary by account ID.", - "parameters": { - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - }, - "summaryAccountId": { - "type": "string", - "description": "Account ID.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "summaryAccountId" - ], - "response": { - "$ref": "AccountActiveAdSummary" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - } - } - }, - "accountPermissionGroups": { - "methods": { - "get": { - "id": "dfareporting.accountPermissionGroups.get", - "path": "userprofiles/{profileId}/accountPermissionGroups/{id}", - "httpMethod": "GET", - "description": "Gets one account permission group by ID.", - "parameters": { - "id": { - "type": "string", - "description": "Account permission group ID.", - "required": true, - "format": "int64", - "location": "path" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "id" - ], - "response": { - "$ref": "AccountPermissionGroup" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "list": { - "id": "dfareporting.accountPermissionGroups.list", - "path": "userprofiles/{profileId}/accountPermissionGroups", - "httpMethod": "GET", - "description": "Retrieves the list of account permission groups.", - "parameters": { - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId" - ], - "response": { - "$ref": "AccountPermissionGroupsListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - } - } - }, - "accountPermissions": { - "methods": { - "get": { - "id": "dfareporting.accountPermissions.get", - "path": "userprofiles/{profileId}/accountPermissions/{id}", - "httpMethod": "GET", - "description": "Gets one account permission by ID.", - "parameters": { - "id": { - "type": "string", - "description": "Account permission ID.", - "required": true, - "format": "int64", - "location": "path" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "id" - ], - "response": { - "$ref": "AccountPermission" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "list": { - "id": "dfareporting.accountPermissions.list", - "path": "userprofiles/{profileId}/accountPermissions", - "httpMethod": "GET", - "description": "Retrieves the list of account permissions.", - "parameters": { - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId" - ], - "response": { - "$ref": "AccountPermissionsListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - } - } - }, - "accountUserProfiles": { - "methods": { - "get": { - "id": "dfareporting.accountUserProfiles.get", - "path": "userprofiles/{profileId}/accountUserProfiles/{id}", - "httpMethod": "GET", - "description": "Gets one account user profile by ID.", - "parameters": { - "id": { - "type": "string", - "description": "User profile ID.", - "required": true, - "format": "int64", - "location": "path" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "id" - ], - "response": { - "$ref": "AccountUserProfile" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "insert": { - "id": "dfareporting.accountUserProfiles.insert", - "path": "userprofiles/{profileId}/accountUserProfiles", - "httpMethod": "POST", - "description": "Inserts a new account user profile.", - "parameters": { - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId" - ], - "request": { - "$ref": "AccountUserProfile" - }, - "response": { - "$ref": "AccountUserProfile" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "list": { - "id": "dfareporting.accountUserProfiles.list", - "path": "userprofiles/{profileId}/accountUserProfiles", - "httpMethod": "GET", - "description": "Retrieves a list of account user profiles, possibly filtered. This method supports paging.", - "parameters": { - "active": { - "type": "boolean", - "description": "Select only active user profiles.", - "location": "query" - }, - "ids": { - "type": "string", - "description": "Select only user profiles with these IDs.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "Maximum number of results to return.", - "default": "1000", - "format": "int32", - "minimum": "0", - "maximum": "1000", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Value of the nextPageToken from the previous result page.", - "location": "query" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - }, - "searchString": { - "type": "string", - "description": "Allows searching for objects by name, ID or email. Wildcards (*) are allowed. For example, \"user profile*2015\" will return objects with names like \"user profile June 2015\", \"user profile April 2015\", or simply \"user profile 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"user profile\" will match objects with name \"my user profile\", \"user profile 2015\", or simply \"user profile\".", - "location": "query" - }, - "sortField": { - "type": "string", - "description": "Field by which to sort the list.", - "default": "ID", - "enum": [ - "ID", - "NAME" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - }, - "sortOrder": { - "type": "string", - "description": "Order of sorted results.", - "default": "ASCENDING", - "enum": [ - "ASCENDING", - "DESCENDING" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - }, - "subaccountId": { - "type": "string", - "description": "Select only user profiles with the specified subaccount ID.", - "format": "int64", - "location": "query" - }, - "userRoleId": { - "type": "string", - "description": "Select only user profiles with the specified user role ID.", - "format": "int64", - "location": "query" - } - }, - "parameterOrder": [ - "profileId" - ], - "response": { - "$ref": "AccountUserProfilesListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "patch": { - "id": "dfareporting.accountUserProfiles.patch", - "path": "userprofiles/{profileId}/accountUserProfiles", - "httpMethod": "PATCH", - "description": "Updates an existing account user profile. This method supports patch semantics.", - "parameters": { - "id": { - "type": "string", - "description": "User profile ID.", - "required": true, - "format": "int64", - "location": "query" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "id" - ], - "request": { - "$ref": "AccountUserProfile" - }, - "response": { - "$ref": "AccountUserProfile" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "update": { - "id": "dfareporting.accountUserProfiles.update", - "path": "userprofiles/{profileId}/accountUserProfiles", - "httpMethod": "PUT", - "description": "Updates an existing account user profile.", - "parameters": { - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId" - ], - "request": { - "$ref": "AccountUserProfile" - }, - "response": { - "$ref": "AccountUserProfile" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - } - } - }, - "accounts": { - "methods": { - "get": { - "id": "dfareporting.accounts.get", - "path": "userprofiles/{profileId}/accounts/{id}", - "httpMethod": "GET", - "description": "Gets one account by ID.", - "parameters": { - "id": { - "type": "string", - "description": "Account ID.", - "required": true, - "format": "int64", - "location": "path" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "id" - ], - "response": { - "$ref": "Account" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "list": { - "id": "dfareporting.accounts.list", - "path": "userprofiles/{profileId}/accounts", - "httpMethod": "GET", - "description": "Retrieves the list of accounts, possibly filtered. This method supports paging.", - "parameters": { - "active": { - "type": "boolean", - "description": "Select only active accounts. Don't set this field to select both active and non-active accounts.", - "location": "query" - }, - "ids": { - "type": "string", - "description": "Select only accounts with these IDs.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "Maximum number of results to return.", - "default": "1000", - "format": "int32", - "minimum": "0", - "maximum": "1000", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Value of the nextPageToken from the previous result page.", - "location": "query" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - }, - "searchString": { - "type": "string", - "description": "Allows searching for objects by name or ID. Wildcards (*) are allowed. For example, \"account*2015\" will return objects with names like \"account June 2015\", \"account April 2015\", or simply \"account 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"account\" will match objects with name \"my account\", \"account 2015\", or simply \"account\".", - "location": "query" - }, - "sortField": { - "type": "string", - "description": "Field by which to sort the list.", - "default": "ID", - "enum": [ - "ID", - "NAME" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - }, - "sortOrder": { - "type": "string", - "description": "Order of sorted results.", - "default": "ASCENDING", - "enum": [ - "ASCENDING", - "DESCENDING" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - } - }, - "parameterOrder": [ - "profileId" - ], - "response": { - "$ref": "AccountsListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "patch": { - "id": "dfareporting.accounts.patch", - "path": "userprofiles/{profileId}/accounts", - "httpMethod": "PATCH", - "description": "Updates an existing account. This method supports patch semantics.", - "parameters": { - "id": { - "type": "string", - "description": "Account ID.", - "required": true, - "format": "int64", - "location": "query" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "id" - ], - "request": { - "$ref": "Account" - }, - "response": { - "$ref": "Account" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "update": { - "id": "dfareporting.accounts.update", - "path": "userprofiles/{profileId}/accounts", - "httpMethod": "PUT", - "description": "Updates an existing account.", - "parameters": { - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId" - ], - "request": { - "$ref": "Account" - }, - "response": { - "$ref": "Account" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - } - } - }, - "ads": { - "methods": { - "get": { - "id": "dfareporting.ads.get", - "path": "userprofiles/{profileId}/ads/{id}", - "httpMethod": "GET", - "description": "Gets one ad by ID.", - "parameters": { - "id": { - "type": "string", - "description": "Ad ID.", - "required": true, - "format": "int64", - "location": "path" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "id" - ], - "response": { - "$ref": "Ad" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "insert": { - "id": "dfareporting.ads.insert", - "path": "userprofiles/{profileId}/ads", - "httpMethod": "POST", - "description": "Inserts a new ad.", - "parameters": { - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId" - ], - "request": { - "$ref": "Ad" - }, - "response": { - "$ref": "Ad" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "list": { - "id": "dfareporting.ads.list", - "path": "userprofiles/{profileId}/ads", - "httpMethod": "GET", - "description": "Retrieves a list of ads, possibly filtered. This method supports paging.", - "parameters": { - "active": { - "type": "boolean", - "description": "Select only active ads.", - "location": "query" - }, - "advertiserId": { - "type": "string", - "description": "Select only ads with this advertiser ID.", - "format": "int64", - "location": "query" - }, - "archived": { - "type": "boolean", - "description": "Select only archived ads.", - "location": "query" - }, - "audienceSegmentIds": { - "type": "string", - "description": "Select only ads with these audience segment IDs.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "campaignIds": { - "type": "string", - "description": "Select only ads with these campaign IDs.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "compatibility": { - "type": "string", - "description": "Select default ads with the specified compatibility. Applicable when type is AD_SERVING_DEFAULT_AD. DISPLAY and DISPLAY_INTERSTITIAL refer to rendering either on desktop or on mobile devices for regular or interstitial ads, respectively. APP and APP_INTERSTITIAL are for rendering in mobile apps. IN_STREAM_VIDEO refers to rendering an in-stream video ads developed with the VAST standard.", - "enum": [ - "APP", - "APP_INTERSTITIAL", - "DISPLAY", - "DISPLAY_INTERSTITIAL", - "IN_STREAM_VIDEO" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "" - ], - "location": "query" - }, - "creativeIds": { - "type": "string", - "description": "Select only ads with these creative IDs assigned.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "creativeOptimizationConfigurationIds": { - "type": "string", - "description": "Select only ads with these creative optimization configuration IDs.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "dynamicClickTracker": { - "type": "boolean", - "description": "Select only dynamic click trackers. Applicable when type is AD_SERVING_CLICK_TRACKER. If true, select dynamic click trackers. If false, select static click trackers. Leave unset to select both.", - "location": "query" - }, - "ids": { - "type": "string", - "description": "Select only ads with these IDs.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "landingPageIds": { - "type": "string", - "description": "Select only ads with these landing page IDs.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "Maximum number of results to return.", - "default": "1000", - "format": "int32", - "minimum": "0", - "maximum": "1000", - "location": "query" - }, - "overriddenEventTagId": { - "type": "string", - "description": "Select only ads with this event tag override ID.", - "format": "int64", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Value of the nextPageToken from the previous result page.", - "location": "query" - }, - "placementIds": { - "type": "string", - "description": "Select only ads with these placement IDs assigned.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - }, - "remarketingListIds": { - "type": "string", - "description": "Select only ads whose list targeting expression use these remarketing list IDs.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "searchString": { - "type": "string", - "description": "Allows searching for objects by name or ID. Wildcards (*) are allowed. For example, \"ad*2015\" will return objects with names like \"ad June 2015\", \"ad April 2015\", or simply \"ad 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"ad\" will match objects with name \"my ad\", \"ad 2015\", or simply \"ad\".", - "location": "query" - }, - "sizeIds": { - "type": "string", - "description": "Select only ads with these size IDs.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "sortField": { - "type": "string", - "description": "Field by which to sort the list.", - "default": "ID", - "enum": [ - "ID", - "NAME" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - }, - "sortOrder": { - "type": "string", - "description": "Order of sorted results.", - "default": "ASCENDING", - "enum": [ - "ASCENDING", - "DESCENDING" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - }, - "sslCompliant": { - "type": "boolean", - "description": "Select only ads that are SSL-compliant.", - "location": "query" - }, - "sslRequired": { - "type": "boolean", - "description": "Select only ads that require SSL.", - "location": "query" - }, - "type": { - "type": "string", - "description": "Select only ads with these types.", - "enum": [ - "AD_SERVING_CLICK_TRACKER", - "AD_SERVING_DEFAULT_AD", - "AD_SERVING_STANDARD_AD", - "AD_SERVING_TRACKING" - ], - "enumDescriptions": [ - "", - "", - "", - "" - ], - "repeated": true, - "location": "query" - } - }, - "parameterOrder": [ - "profileId" - ], - "response": { - "$ref": "AdsListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "patch": { - "id": "dfareporting.ads.patch", - "path": "userprofiles/{profileId}/ads", - "httpMethod": "PATCH", - "description": "Updates an existing ad. This method supports patch semantics.", - "parameters": { - "id": { - "type": "string", - "description": "Ad ID.", - "required": true, - "format": "int64", - "location": "query" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "id" - ], - "request": { - "$ref": "Ad" - }, - "response": { - "$ref": "Ad" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "update": { - "id": "dfareporting.ads.update", - "path": "userprofiles/{profileId}/ads", - "httpMethod": "PUT", - "description": "Updates an existing ad.", - "parameters": { - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId" - ], - "request": { - "$ref": "Ad" - }, - "response": { - "$ref": "Ad" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - } - } - }, - "advertiserGroups": { - "methods": { - "delete": { - "id": "dfareporting.advertiserGroups.delete", - "path": "userprofiles/{profileId}/advertiserGroups/{id}", - "httpMethod": "DELETE", - "description": "Deletes an existing advertiser group.", - "parameters": { - "id": { - "type": "string", - "description": "Advertiser group ID.", - "required": true, - "format": "int64", - "location": "path" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "id" - ], - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "get": { - "id": "dfareporting.advertiserGroups.get", - "path": "userprofiles/{profileId}/advertiserGroups/{id}", - "httpMethod": "GET", - "description": "Gets one advertiser group by ID.", - "parameters": { - "id": { - "type": "string", - "description": "Advertiser group ID.", - "required": true, - "format": "int64", - "location": "path" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "id" - ], - "response": { - "$ref": "AdvertiserGroup" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "insert": { - "id": "dfareporting.advertiserGroups.insert", - "path": "userprofiles/{profileId}/advertiserGroups", - "httpMethod": "POST", - "description": "Inserts a new advertiser group.", - "parameters": { - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId" - ], - "request": { - "$ref": "AdvertiserGroup" - }, - "response": { - "$ref": "AdvertiserGroup" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "list": { - "id": "dfareporting.advertiserGroups.list", - "path": "userprofiles/{profileId}/advertiserGroups", - "httpMethod": "GET", - "description": "Retrieves a list of advertiser groups, possibly filtered. This method supports paging.", - "parameters": { - "ids": { - "type": "string", - "description": "Select only advertiser groups with these IDs.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "Maximum number of results to return.", - "default": "1000", - "format": "int32", - "minimum": "0", - "maximum": "1000", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Value of the nextPageToken from the previous result page.", - "location": "query" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - }, - "searchString": { - "type": "string", - "description": "Allows searching for objects by name or ID. Wildcards (*) are allowed. For example, \"advertiser*2015\" will return objects with names like \"advertiser group June 2015\", \"advertiser group April 2015\", or simply \"advertiser group 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"advertisergroup\" will match objects with name \"my advertisergroup\", \"advertisergroup 2015\", or simply \"advertisergroup\".", - "location": "query" - }, - "sortField": { - "type": "string", - "description": "Field by which to sort the list.", - "default": "ID", - "enum": [ - "ID", - "NAME" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - }, - "sortOrder": { - "type": "string", - "description": "Order of sorted results.", - "default": "ASCENDING", - "enum": [ - "ASCENDING", - "DESCENDING" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - } - }, - "parameterOrder": [ - "profileId" - ], - "response": { - "$ref": "AdvertiserGroupsListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "patch": { - "id": "dfareporting.advertiserGroups.patch", - "path": "userprofiles/{profileId}/advertiserGroups", - "httpMethod": "PATCH", - "description": "Updates an existing advertiser group. This method supports patch semantics.", - "parameters": { - "id": { - "type": "string", - "description": "Advertiser group ID.", - "required": true, - "format": "int64", - "location": "query" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "id" - ], - "request": { - "$ref": "AdvertiserGroup" - }, - "response": { - "$ref": "AdvertiserGroup" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "update": { - "id": "dfareporting.advertiserGroups.update", - "path": "userprofiles/{profileId}/advertiserGroups", - "httpMethod": "PUT", - "description": "Updates an existing advertiser group.", - "parameters": { - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId" - ], - "request": { - "$ref": "AdvertiserGroup" - }, - "response": { - "$ref": "AdvertiserGroup" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - } - } - }, - "advertisers": { - "methods": { - "get": { - "id": "dfareporting.advertisers.get", - "path": "userprofiles/{profileId}/advertisers/{id}", - "httpMethod": "GET", - "description": "Gets one advertiser by ID.", - "parameters": { - "id": { - "type": "string", - "description": "Advertiser ID.", - "required": true, - "format": "int64", - "location": "path" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "id" - ], - "response": { - "$ref": "Advertiser" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "insert": { - "id": "dfareporting.advertisers.insert", - "path": "userprofiles/{profileId}/advertisers", - "httpMethod": "POST", - "description": "Inserts a new advertiser.", - "parameters": { - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId" - ], - "request": { - "$ref": "Advertiser" - }, - "response": { - "$ref": "Advertiser" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "list": { - "id": "dfareporting.advertisers.list", - "path": "userprofiles/{profileId}/advertisers", - "httpMethod": "GET", - "description": "Retrieves a list of advertisers, possibly filtered. This method supports paging.", - "parameters": { - "advertiserGroupIds": { - "type": "string", - "description": "Select only advertisers with these advertiser group IDs.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "floodlightConfigurationIds": { - "type": "string", - "description": "Select only advertisers with these floodlight configuration IDs.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "ids": { - "type": "string", - "description": "Select only advertisers with these IDs.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "includeAdvertisersWithoutGroupsOnly": { - "type": "boolean", - "description": "Select only advertisers which do not belong to any advertiser group.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "Maximum number of results to return.", - "default": "1000", - "format": "int32", - "minimum": "0", - "maximum": "1000", - "location": "query" - }, - "onlyParent": { - "type": "boolean", - "description": "Select only advertisers which use another advertiser's floodlight configuration.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Value of the nextPageToken from the previous result page.", - "location": "query" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - }, - "searchString": { - "type": "string", - "description": "Allows searching for objects by name or ID. Wildcards (*) are allowed. For example, \"advertiser*2015\" will return objects with names like \"advertiser June 2015\", \"advertiser April 2015\", or simply \"advertiser 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"advertiser\" will match objects with name \"my advertiser\", \"advertiser 2015\", or simply \"advertiser\".", - "location": "query" - }, - "sortField": { - "type": "string", - "description": "Field by which to sort the list.", - "default": "ID", - "enum": [ - "ID", - "NAME" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - }, - "sortOrder": { - "type": "string", - "description": "Order of sorted results.", - "default": "ASCENDING", - "enum": [ - "ASCENDING", - "DESCENDING" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - }, - "status": { - "type": "string", - "description": "Select only advertisers with the specified status.", - "enum": [ - "APPROVED", - "ON_HOLD" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - }, - "subaccountId": { - "type": "string", - "description": "Select only advertisers with these subaccount IDs.", - "format": "int64", - "location": "query" - } - }, - "parameterOrder": [ - "profileId" - ], - "response": { - "$ref": "AdvertisersListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "patch": { - "id": "dfareporting.advertisers.patch", - "path": "userprofiles/{profileId}/advertisers", - "httpMethod": "PATCH", - "description": "Updates an existing advertiser. This method supports patch semantics.", - "parameters": { - "id": { - "type": "string", - "description": "Advertiser ID.", - "required": true, - "format": "int64", - "location": "query" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "id" - ], - "request": { - "$ref": "Advertiser" - }, - "response": { - "$ref": "Advertiser" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "update": { - "id": "dfareporting.advertisers.update", - "path": "userprofiles/{profileId}/advertisers", - "httpMethod": "PUT", - "description": "Updates an existing advertiser.", - "parameters": { - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId" - ], - "request": { - "$ref": "Advertiser" - }, - "response": { - "$ref": "Advertiser" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - } - } - }, - "browsers": { - "methods": { - "list": { - "id": "dfareporting.browsers.list", - "path": "userprofiles/{profileId}/browsers", - "httpMethod": "GET", - "description": "Retrieves a list of browsers.", - "parameters": { - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId" - ], - "response": { - "$ref": "BrowsersListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - } - } - }, - "campaignCreativeAssociations": { - "methods": { - "insert": { - "id": "dfareporting.campaignCreativeAssociations.insert", - "path": "userprofiles/{profileId}/campaigns/{campaignId}/campaignCreativeAssociations", - "httpMethod": "POST", - "description": "Associates a creative with the specified campaign. This method creates a default ad with dimensions matching the creative in the campaign if such a default ad does not exist already.", - "parameters": { - "campaignId": { - "type": "string", - "description": "Campaign ID in this association.", - "required": true, - "format": "int64", - "location": "path" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "campaignId" - ], - "request": { - "$ref": "CampaignCreativeAssociation" - }, - "response": { - "$ref": "CampaignCreativeAssociation" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "list": { - "id": "dfareporting.campaignCreativeAssociations.list", - "path": "userprofiles/{profileId}/campaigns/{campaignId}/campaignCreativeAssociations", - "httpMethod": "GET", - "description": "Retrieves the list of creative IDs associated with the specified campaign. This method supports paging.", - "parameters": { - "campaignId": { - "type": "string", - "description": "Campaign ID in this association.", - "required": true, - "format": "int64", - "location": "path" - }, - "maxResults": { - "type": "integer", - "description": "Maximum number of results to return.", - "default": "1000", - "format": "int32", - "minimum": "0", - "maximum": "1000", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Value of the nextPageToken from the previous result page.", - "location": "query" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - }, - "sortOrder": { - "type": "string", - "description": "Order of sorted results.", - "default": "ASCENDING", - "enum": [ - "ASCENDING", - "DESCENDING" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - } - }, - "parameterOrder": [ - "profileId", - "campaignId" - ], - "response": { - "$ref": "CampaignCreativeAssociationsListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - } - } - }, - "campaigns": { - "methods": { - "get": { - "id": "dfareporting.campaigns.get", - "path": "userprofiles/{profileId}/campaigns/{id}", - "httpMethod": "GET", - "description": "Gets one campaign by ID.", - "parameters": { - "id": { - "type": "string", - "description": "Campaign ID.", - "required": true, - "format": "int64", - "location": "path" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "id" - ], - "response": { - "$ref": "Campaign" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "insert": { - "id": "dfareporting.campaigns.insert", - "path": "userprofiles/{profileId}/campaigns", - "httpMethod": "POST", - "description": "Inserts a new campaign.", - "parameters": { - "defaultLandingPageName": { - "type": "string", - "description": "Default landing page name for this new campaign. Must be less than 256 characters long.", - "required": true, - "location": "query" - }, - "defaultLandingPageUrl": { - "type": "string", - "description": "Default landing page URL for this new campaign.", - "required": true, - "location": "query" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "defaultLandingPageName", - "defaultLandingPageUrl" - ], - "request": { - "$ref": "Campaign" - }, - "response": { - "$ref": "Campaign" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "list": { - "id": "dfareporting.campaigns.list", - "path": "userprofiles/{profileId}/campaigns", - "httpMethod": "GET", - "description": "Retrieves a list of campaigns, possibly filtered. This method supports paging.", - "parameters": { - "advertiserGroupIds": { - "type": "string", - "description": "Select only campaigns whose advertisers belong to these advertiser groups.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "advertiserIds": { - "type": "string", - "description": "Select only campaigns that belong to these advertisers.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "archived": { - "type": "boolean", - "description": "Select only archived campaigns. Don't set this field to select both archived and non-archived campaigns.", - "location": "query" - }, - "atLeastOneOptimizationActivity": { - "type": "boolean", - "description": "Select only campaigns that have at least one optimization activity.", - "location": "query" - }, - "excludedIds": { - "type": "string", - "description": "Exclude campaigns with these IDs.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "ids": { - "type": "string", - "description": "Select only campaigns with these IDs.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "Maximum number of results to return.", - "default": "1000", - "format": "int32", - "minimum": "0", - "maximum": "1000", - "location": "query" - }, - "overriddenEventTagId": { - "type": "string", - "description": "Select only campaigns that have overridden this event tag ID.", - "format": "int64", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Value of the nextPageToken from the previous result page.", - "location": "query" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - }, - "searchString": { - "type": "string", - "description": "Allows searching for campaigns by name or ID. Wildcards (*) are allowed. For example, \"campaign*2015\" will return campaigns with names like \"campaign June 2015\", \"campaign April 2015\", or simply \"campaign 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"campaign\" will match campaigns with name \"my campaign\", \"campaign 2015\", or simply \"campaign\".", - "location": "query" - }, - "sortField": { - "type": "string", - "description": "Field by which to sort the list.", - "default": "ID", - "enum": [ - "ID", - "NAME" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - }, - "sortOrder": { - "type": "string", - "description": "Order of sorted results.", - "default": "ASCENDING", - "enum": [ - "ASCENDING", - "DESCENDING" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - }, - "subaccountId": { - "type": "string", - "description": "Select only campaigns that belong to this subaccount.", - "format": "int64", - "location": "query" - } - }, - "parameterOrder": [ - "profileId" - ], - "response": { - "$ref": "CampaignsListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "patch": { - "id": "dfareporting.campaigns.patch", - "path": "userprofiles/{profileId}/campaigns", - "httpMethod": "PATCH", - "description": "Updates an existing campaign. This method supports patch semantics.", - "parameters": { - "id": { - "type": "string", - "description": "Campaign ID.", - "required": true, - "format": "int64", - "location": "query" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "id" - ], - "request": { - "$ref": "Campaign" - }, - "response": { - "$ref": "Campaign" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "update": { - "id": "dfareporting.campaigns.update", - "path": "userprofiles/{profileId}/campaigns", - "httpMethod": "PUT", - "description": "Updates an existing campaign.", - "parameters": { - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId" - ], - "request": { - "$ref": "Campaign" - }, - "response": { - "$ref": "Campaign" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - } - } - }, - "changeLogs": { - "methods": { - "get": { - "id": "dfareporting.changeLogs.get", - "path": "userprofiles/{profileId}/changeLogs/{id}", - "httpMethod": "GET", - "description": "Gets one change log by ID.", - "parameters": { - "id": { - "type": "string", - "description": "Change log ID.", - "required": true, - "format": "int64", - "location": "path" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "id" - ], - "response": { - "$ref": "ChangeLog" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "list": { - "id": "dfareporting.changeLogs.list", - "path": "userprofiles/{profileId}/changeLogs", - "httpMethod": "GET", - "description": "Retrieves a list of change logs. This method supports paging.", - "parameters": { - "action": { - "type": "string", - "description": "Select only change logs with the specified action.", - "enum": [ - "ACTION_ADD", - "ACTION_ASSIGN", - "ACTION_ASSOCIATE", - "ACTION_CREATE", - "ACTION_DELETE", - "ACTION_DISABLE", - "ACTION_EMAIL_TAGS", - "ACTION_ENABLE", - "ACTION_LINK", - "ACTION_MARK_AS_DEFAULT", - "ACTION_PUSH", - "ACTION_REMOVE", - "ACTION_SEND", - "ACTION_SHARE", - "ACTION_UNASSIGN", - "ACTION_UNLINK", - "ACTION_UPDATE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ], - "location": "query" - }, - "ids": { - "type": "string", - "description": "Select only change logs with these IDs.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "maxChangeTime": { - "type": "string", - "description": "Select only change logs whose change time is before the specified maxChangeTime.The time should be formatted as an RFC3339 date/time string. For example, for 10:54 PM on July 18th, 2015, in the America/New York time zone, the format is \"2015-07-18T22:54:00-04:00\". In other words, the year, month, day, the letter T, the hour (24-hour clock system), minute, second, and then the time zone offset.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "Maximum number of results to return.", - "default": "1000", - "format": "int32", - "minimum": "0", - "maximum": "1000", - "location": "query" - }, - "minChangeTime": { - "type": "string", - "description": "Select only change logs whose change time is before the specified minChangeTime.The time should be formatted as an RFC3339 date/time string. For example, for 10:54 PM on July 18th, 2015, in the America/New York time zone, the format is \"2015-07-18T22:54:00-04:00\". In other words, the year, month, day, the letter T, the hour (24-hour clock system), minute, second, and then the time zone offset.", - "location": "query" - }, - "objectIds": { - "type": "string", - "description": "Select only change logs with these object IDs.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "objectType": { - "type": "string", - "description": "Select only change logs with the specified object type.", - "enum": [ - "OBJECT_ACCOUNT", - "OBJECT_ACCOUNT_BILLING_FEATURE", - "OBJECT_AD", - "OBJECT_ADVERTISER", - "OBJECT_ADVERTISER_GROUP", - "OBJECT_BILLING_ACCOUNT_GROUP", - "OBJECT_BILLING_FEATURE", - "OBJECT_BILLING_MINIMUM_FEE", - "OBJECT_BILLING_PROFILE", - "OBJECT_CAMPAIGN", - "OBJECT_CONTENT_CATEGORY", - "OBJECT_CREATIVE", - "OBJECT_CREATIVE_ASSET", - "OBJECT_CREATIVE_BUNDLE", - "OBJECT_CREATIVE_FIELD", - "OBJECT_CREATIVE_GROUP", - "OBJECT_DFA_SITE", - "OBJECT_EVENT_TAG", - "OBJECT_FLOODLIGHT_ACTIVITY_GROUP", - "OBJECT_FLOODLIGHT_ACTVITY", - "OBJECT_FLOODLIGHT_CONFIGURATION", - "OBJECT_INSTREAM_CREATIVE", - "OBJECT_LANDING_PAGE", - "OBJECT_MEDIA_ORDER", - "OBJECT_PLACEMENT", - "OBJECT_PLACEMENT_STRATEGY", - "OBJECT_PLAYSTORE_LINK", - "OBJECT_PROVIDED_LIST_CLIENT", - "OBJECT_RATE_CARD", - "OBJECT_REMARKETING_LIST", - "OBJECT_RICHMEDIA_CREATIVE", - "OBJECT_SD_SITE", - "OBJECT_SEARCH_LIFT_STUDY", - "OBJECT_SIZE", - "OBJECT_SUBACCOUNT", - "OBJECT_TARGETING_TEMPLATE", - "OBJECT_USER_PROFILE", - "OBJECT_USER_PROFILE_FILTER", - "OBJECT_USER_ROLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ], - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Value of the nextPageToken from the previous result page.", - "location": "query" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - }, - "searchString": { - "type": "string", - "description": "Select only change logs whose object ID, user name, old or new values match the search string.", - "location": "query" - }, - "userProfileIds": { - "type": "string", - "description": "Select only change logs with these user profile IDs.", - "format": "int64", - "repeated": true, - "location": "query" - } - }, - "parameterOrder": [ - "profileId" - ], - "response": { - "$ref": "ChangeLogsListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - } - } - }, - "cities": { - "methods": { - "list": { - "id": "dfareporting.cities.list", - "path": "userprofiles/{profileId}/cities", - "httpMethod": "GET", - "description": "Retrieves a list of cities, possibly filtered.", - "parameters": { - "countryDartIds": { - "type": "string", - "description": "Select only cities from these countries.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "dartIds": { - "type": "string", - "description": "Select only cities with these DART IDs.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "namePrefix": { - "type": "string", - "description": "Select only cities with names starting with this prefix.", - "location": "query" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - }, - "regionDartIds": { - "type": "string", - "description": "Select only cities from these regions.", - "format": "int64", - "repeated": true, - "location": "query" - } - }, - "parameterOrder": [ - "profileId" - ], - "response": { - "$ref": "CitiesListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - } - } - }, - "connectionTypes": { - "methods": { - "get": { - "id": "dfareporting.connectionTypes.get", - "path": "userprofiles/{profileId}/connectionTypes/{id}", - "httpMethod": "GET", - "description": "Gets one connection type by ID.", - "parameters": { - "id": { - "type": "string", - "description": "Connection type ID.", - "required": true, - "format": "int64", - "location": "path" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "id" - ], - "response": { - "$ref": "ConnectionType" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "list": { - "id": "dfareporting.connectionTypes.list", - "path": "userprofiles/{profileId}/connectionTypes", - "httpMethod": "GET", - "description": "Retrieves a list of connection types.", - "parameters": { - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId" - ], - "response": { - "$ref": "ConnectionTypesListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - } - } - }, - "contentCategories": { - "methods": { - "delete": { - "id": "dfareporting.contentCategories.delete", - "path": "userprofiles/{profileId}/contentCategories/{id}", - "httpMethod": "DELETE", - "description": "Deletes an existing content category.", - "parameters": { - "id": { - "type": "string", - "description": "Content category ID.", - "required": true, - "format": "int64", - "location": "path" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "id" - ], - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "get": { - "id": "dfareporting.contentCategories.get", - "path": "userprofiles/{profileId}/contentCategories/{id}", - "httpMethod": "GET", - "description": "Gets one content category by ID.", - "parameters": { - "id": { - "type": "string", - "description": "Content category ID.", - "required": true, - "format": "int64", - "location": "path" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "id" - ], - "response": { - "$ref": "ContentCategory" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "insert": { - "id": "dfareporting.contentCategories.insert", - "path": "userprofiles/{profileId}/contentCategories", - "httpMethod": "POST", - "description": "Inserts a new content category.", - "parameters": { - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId" - ], - "request": { - "$ref": "ContentCategory" - }, - "response": { - "$ref": "ContentCategory" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "list": { - "id": "dfareporting.contentCategories.list", - "path": "userprofiles/{profileId}/contentCategories", - "httpMethod": "GET", - "description": "Retrieves a list of content categories, possibly filtered. This method supports paging.", - "parameters": { - "ids": { - "type": "string", - "description": "Select only content categories with these IDs.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "Maximum number of results to return.", - "default": "1000", - "format": "int32", - "minimum": "0", - "maximum": "1000", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Value of the nextPageToken from the previous result page.", - "location": "query" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - }, - "searchString": { - "type": "string", - "description": "Allows searching for objects by name or ID. Wildcards (*) are allowed. For example, \"contentcategory*2015\" will return objects with names like \"contentcategory June 2015\", \"contentcategory April 2015\", or simply \"contentcategory 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"contentcategory\" will match objects with name \"my contentcategory\", \"contentcategory 2015\", or simply \"contentcategory\".", - "location": "query" - }, - "sortField": { - "type": "string", - "description": "Field by which to sort the list.", - "default": "ID", - "enum": [ - "ID", - "NAME" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - }, - "sortOrder": { - "type": "string", - "description": "Order of sorted results.", - "default": "ASCENDING", - "enum": [ - "ASCENDING", - "DESCENDING" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - } - }, - "parameterOrder": [ - "profileId" - ], - "response": { - "$ref": "ContentCategoriesListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "patch": { - "id": "dfareporting.contentCategories.patch", - "path": "userprofiles/{profileId}/contentCategories", - "httpMethod": "PATCH", - "description": "Updates an existing content category. This method supports patch semantics.", - "parameters": { - "id": { - "type": "string", - "description": "Content category ID.", - "required": true, - "format": "int64", - "location": "query" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "id" - ], - "request": { - "$ref": "ContentCategory" - }, - "response": { - "$ref": "ContentCategory" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "update": { - "id": "dfareporting.contentCategories.update", - "path": "userprofiles/{profileId}/contentCategories", - "httpMethod": "PUT", - "description": "Updates an existing content category.", - "parameters": { - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId" - ], - "request": { - "$ref": "ContentCategory" - }, - "response": { - "$ref": "ContentCategory" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - } - } - }, - "conversions": { - "methods": { - "batchinsert": { - "id": "dfareporting.conversions.batchinsert", - "path": "userprofiles/{profileId}/conversions/batchinsert", - "httpMethod": "POST", - "description": "Inserts conversions.", - "parameters": { - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId" - ], - "request": { - "$ref": "ConversionsBatchInsertRequest" - }, - "response": { - "$ref": "ConversionsBatchInsertResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/ddmconversions" - ] - }, - "batchupdate": { - "id": "dfareporting.conversions.batchupdate", - "path": "userprofiles/{profileId}/conversions/batchupdate", - "httpMethod": "POST", - "description": "Updates existing conversions.", - "parameters": { - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId" - ], - "request": { - "$ref": "ConversionsBatchUpdateRequest" - }, - "response": { - "$ref": "ConversionsBatchUpdateResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/ddmconversions" - ] - } - } - }, - "countries": { - "methods": { - "get": { - "id": "dfareporting.countries.get", - "path": "userprofiles/{profileId}/countries/{dartId}", - "httpMethod": "GET", - "description": "Gets one country by ID.", - "parameters": { - "dartId": { - "type": "string", - "description": "Country DART ID.", - "required": true, - "format": "int64", - "location": "path" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "dartId" - ], - "response": { - "$ref": "Country" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "list": { - "id": "dfareporting.countries.list", - "path": "userprofiles/{profileId}/countries", - "httpMethod": "GET", - "description": "Retrieves a list of countries.", - "parameters": { - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId" - ], - "response": { - "$ref": "CountriesListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - } - } - }, - "creativeAssets": { - "methods": { - "insert": { - "id": "dfareporting.creativeAssets.insert", - "path": "userprofiles/{profileId}/creativeAssets/{advertiserId}/creativeAssets", - "httpMethod": "POST", - "description": "Inserts a new creative asset.", - "parameters": { - "advertiserId": { - "type": "string", - "description": "Advertiser ID of this creative. This is a required field.", - "required": true, - "format": "int64", - "location": "path" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "advertiserId" - ], - "request": { - "$ref": "CreativeAssetMetadata" - }, - "response": { - "$ref": "CreativeAssetMetadata" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ], - "supportsMediaUpload": true, - "mediaUpload": { - "accept": [ - "*/*" - ], - "maxSize": "1024MB", - "protocols": { - "simple": { - "multipart": true, - "path": "/upload/dfareporting/v2.8/userprofiles/{profileId}/creativeAssets/{advertiserId}/creativeAssets" - }, - "resumable": { - "multipart": true, - "path": "/resumable/upload/dfareporting/v2.8/userprofiles/{profileId}/creativeAssets/{advertiserId}/creativeAssets" - } - } - } - } - } - }, - "creativeFieldValues": { - "methods": { - "delete": { - "id": "dfareporting.creativeFieldValues.delete", - "path": "userprofiles/{profileId}/creativeFields/{creativeFieldId}/creativeFieldValues/{id}", - "httpMethod": "DELETE", - "description": "Deletes an existing creative field value.", - "parameters": { - "creativeFieldId": { - "type": "string", - "description": "Creative field ID for this creative field value.", - "required": true, - "format": "int64", - "location": "path" - }, - "id": { - "type": "string", - "description": "Creative Field Value ID", - "required": true, - "format": "int64", - "location": "path" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "creativeFieldId", - "id" - ], - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "get": { - "id": "dfareporting.creativeFieldValues.get", - "path": "userprofiles/{profileId}/creativeFields/{creativeFieldId}/creativeFieldValues/{id}", - "httpMethod": "GET", - "description": "Gets one creative field value by ID.", - "parameters": { - "creativeFieldId": { - "type": "string", - "description": "Creative field ID for this creative field value.", - "required": true, - "format": "int64", - "location": "path" - }, - "id": { - "type": "string", - "description": "Creative Field Value ID", - "required": true, - "format": "int64", - "location": "path" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "creativeFieldId", - "id" - ], - "response": { - "$ref": "CreativeFieldValue" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "insert": { - "id": "dfareporting.creativeFieldValues.insert", - "path": "userprofiles/{profileId}/creativeFields/{creativeFieldId}/creativeFieldValues", - "httpMethod": "POST", - "description": "Inserts a new creative field value.", - "parameters": { - "creativeFieldId": { - "type": "string", - "description": "Creative field ID for this creative field value.", - "required": true, - "format": "int64", - "location": "path" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "creativeFieldId" - ], - "request": { - "$ref": "CreativeFieldValue" - }, - "response": { - "$ref": "CreativeFieldValue" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "list": { - "id": "dfareporting.creativeFieldValues.list", - "path": "userprofiles/{profileId}/creativeFields/{creativeFieldId}/creativeFieldValues", - "httpMethod": "GET", - "description": "Retrieves a list of creative field values, possibly filtered. This method supports paging.", - "parameters": { - "creativeFieldId": { - "type": "string", - "description": "Creative field ID for this creative field value.", - "required": true, - "format": "int64", - "location": "path" - }, - "ids": { - "type": "string", - "description": "Select only creative field values with these IDs.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "Maximum number of results to return.", - "default": "1000", - "format": "int32", - "minimum": "0", - "maximum": "1000", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Value of the nextPageToken from the previous result page.", - "location": "query" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - }, - "searchString": { - "type": "string", - "description": "Allows searching for creative field values by their values. Wildcards (e.g. *) are not allowed.", - "location": "query" - }, - "sortField": { - "type": "string", - "description": "Field by which to sort the list.", - "default": "ID", - "enum": [ - "ID", - "VALUE" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - }, - "sortOrder": { - "type": "string", - "description": "Order of sorted results.", - "default": "ASCENDING", - "enum": [ - "ASCENDING", - "DESCENDING" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - } - }, - "parameterOrder": [ - "profileId", - "creativeFieldId" - ], - "response": { - "$ref": "CreativeFieldValuesListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "patch": { - "id": "dfareporting.creativeFieldValues.patch", - "path": "userprofiles/{profileId}/creativeFields/{creativeFieldId}/creativeFieldValues", - "httpMethod": "PATCH", - "description": "Updates an existing creative field value. This method supports patch semantics.", - "parameters": { - "creativeFieldId": { - "type": "string", - "description": "Creative field ID for this creative field value.", - "required": true, - "format": "int64", - "location": "path" - }, - "id": { - "type": "string", - "description": "Creative Field Value ID", - "required": true, - "format": "int64", - "location": "query" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "creativeFieldId", - "id" - ], - "request": { - "$ref": "CreativeFieldValue" - }, - "response": { - "$ref": "CreativeFieldValue" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "update": { - "id": "dfareporting.creativeFieldValues.update", - "path": "userprofiles/{profileId}/creativeFields/{creativeFieldId}/creativeFieldValues", - "httpMethod": "PUT", - "description": "Updates an existing creative field value.", - "parameters": { - "creativeFieldId": { - "type": "string", - "description": "Creative field ID for this creative field value.", - "required": true, - "format": "int64", - "location": "path" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "creativeFieldId" - ], - "request": { - "$ref": "CreativeFieldValue" - }, - "response": { - "$ref": "CreativeFieldValue" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - } - } - }, - "creativeFields": { - "methods": { - "delete": { - "id": "dfareporting.creativeFields.delete", - "path": "userprofiles/{profileId}/creativeFields/{id}", - "httpMethod": "DELETE", - "description": "Deletes an existing creative field.", - "parameters": { - "id": { - "type": "string", - "description": "Creative Field ID", - "required": true, - "format": "int64", - "location": "path" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "id" - ], - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "get": { - "id": "dfareporting.creativeFields.get", - "path": "userprofiles/{profileId}/creativeFields/{id}", - "httpMethod": "GET", - "description": "Gets one creative field by ID.", - "parameters": { - "id": { - "type": "string", - "description": "Creative Field ID", - "required": true, - "format": "int64", - "location": "path" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "id" - ], - "response": { - "$ref": "CreativeField" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "insert": { - "id": "dfareporting.creativeFields.insert", - "path": "userprofiles/{profileId}/creativeFields", - "httpMethod": "POST", - "description": "Inserts a new creative field.", - "parameters": { - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId" - ], - "request": { - "$ref": "CreativeField" - }, - "response": { - "$ref": "CreativeField" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "list": { - "id": "dfareporting.creativeFields.list", - "path": "userprofiles/{profileId}/creativeFields", - "httpMethod": "GET", - "description": "Retrieves a list of creative fields, possibly filtered. This method supports paging.", - "parameters": { - "advertiserIds": { - "type": "string", - "description": "Select only creative fields that belong to these advertisers.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "ids": { - "type": "string", - "description": "Select only creative fields with these IDs.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "Maximum number of results to return.", - "default": "1000", - "format": "int32", - "minimum": "0", - "maximum": "1000", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Value of the nextPageToken from the previous result page.", - "location": "query" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - }, - "searchString": { - "type": "string", - "description": "Allows searching for creative fields by name or ID. Wildcards (*) are allowed. For example, \"creativefield*2015\" will return creative fields with names like \"creativefield June 2015\", \"creativefield April 2015\", or simply \"creativefield 2015\". Most of the searches also add wild-cards implicitly at the start and the end of the search string. For example, a search string of \"creativefield\" will match creative fields with the name \"my creativefield\", \"creativefield 2015\", or simply \"creativefield\".", - "location": "query" - }, - "sortField": { - "type": "string", - "description": "Field by which to sort the list.", - "default": "ID", - "enum": [ - "ID", - "NAME" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - }, - "sortOrder": { - "type": "string", - "description": "Order of sorted results.", - "default": "ASCENDING", - "enum": [ - "ASCENDING", - "DESCENDING" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - } - }, - "parameterOrder": [ - "profileId" - ], - "response": { - "$ref": "CreativeFieldsListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "patch": { - "id": "dfareporting.creativeFields.patch", - "path": "userprofiles/{profileId}/creativeFields", - "httpMethod": "PATCH", - "description": "Updates an existing creative field. This method supports patch semantics.", - "parameters": { - "id": { - "type": "string", - "description": "Creative Field ID", - "required": true, - "format": "int64", - "location": "query" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "id" - ], - "request": { - "$ref": "CreativeField" - }, - "response": { - "$ref": "CreativeField" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "update": { - "id": "dfareporting.creativeFields.update", - "path": "userprofiles/{profileId}/creativeFields", - "httpMethod": "PUT", - "description": "Updates an existing creative field.", - "parameters": { - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId" - ], - "request": { - "$ref": "CreativeField" - }, - "response": { - "$ref": "CreativeField" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - } - } - }, - "creativeGroups": { - "methods": { - "get": { - "id": "dfareporting.creativeGroups.get", - "path": "userprofiles/{profileId}/creativeGroups/{id}", - "httpMethod": "GET", - "description": "Gets one creative group by ID.", - "parameters": { - "id": { - "type": "string", - "description": "Creative group ID.", - "required": true, - "format": "int64", - "location": "path" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "id" - ], - "response": { - "$ref": "CreativeGroup" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "insert": { - "id": "dfareporting.creativeGroups.insert", - "path": "userprofiles/{profileId}/creativeGroups", - "httpMethod": "POST", - "description": "Inserts a new creative group.", - "parameters": { - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId" - ], - "request": { - "$ref": "CreativeGroup" - }, - "response": { - "$ref": "CreativeGroup" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "list": { - "id": "dfareporting.creativeGroups.list", - "path": "userprofiles/{profileId}/creativeGroups", - "httpMethod": "GET", - "description": "Retrieves a list of creative groups, possibly filtered. This method supports paging.", - "parameters": { - "advertiserIds": { - "type": "string", - "description": "Select only creative groups that belong to these advertisers.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "groupNumber": { - "type": "integer", - "description": "Select only creative groups that belong to this subgroup.", - "format": "int32", - "minimum": "1", - "maximum": "2", - "location": "query" - }, - "ids": { - "type": "string", - "description": "Select only creative groups with these IDs.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "Maximum number of results to return.", - "default": "1000", - "format": "int32", - "minimum": "0", - "maximum": "1000", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Value of the nextPageToken from the previous result page.", - "location": "query" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - }, - "searchString": { - "type": "string", - "description": "Allows searching for creative groups by name or ID. Wildcards (*) are allowed. For example, \"creativegroup*2015\" will return creative groups with names like \"creativegroup June 2015\", \"creativegroup April 2015\", or simply \"creativegroup 2015\". Most of the searches also add wild-cards implicitly at the start and the end of the search string. For example, a search string of \"creativegroup\" will match creative groups with the name \"my creativegroup\", \"creativegroup 2015\", or simply \"creativegroup\".", - "location": "query" - }, - "sortField": { - "type": "string", - "description": "Field by which to sort the list.", - "default": "ID", - "enum": [ - "ID", - "NAME" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - }, - "sortOrder": { - "type": "string", - "description": "Order of sorted results.", - "default": "ASCENDING", - "enum": [ - "ASCENDING", - "DESCENDING" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - } - }, - "parameterOrder": [ - "profileId" - ], - "response": { - "$ref": "CreativeGroupsListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "patch": { - "id": "dfareporting.creativeGroups.patch", - "path": "userprofiles/{profileId}/creativeGroups", - "httpMethod": "PATCH", - "description": "Updates an existing creative group. This method supports patch semantics.", - "parameters": { - "id": { - "type": "string", - "description": "Creative group ID.", - "required": true, - "format": "int64", - "location": "query" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "id" - ], - "request": { - "$ref": "CreativeGroup" - }, - "response": { - "$ref": "CreativeGroup" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "update": { - "id": "dfareporting.creativeGroups.update", - "path": "userprofiles/{profileId}/creativeGroups", - "httpMethod": "PUT", - "description": "Updates an existing creative group.", - "parameters": { - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId" - ], - "request": { - "$ref": "CreativeGroup" - }, - "response": { - "$ref": "CreativeGroup" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - } - } - }, - "creatives": { - "methods": { - "get": { - "id": "dfareporting.creatives.get", - "path": "userprofiles/{profileId}/creatives/{id}", - "httpMethod": "GET", - "description": "Gets one creative by ID.", - "parameters": { - "id": { - "type": "string", - "description": "Creative ID.", - "required": true, - "format": "int64", - "location": "path" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "id" - ], - "response": { - "$ref": "Creative" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "insert": { - "id": "dfareporting.creatives.insert", - "path": "userprofiles/{profileId}/creatives", - "httpMethod": "POST", - "description": "Inserts a new creative.", - "parameters": { - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId" - ], - "request": { - "$ref": "Creative" - }, - "response": { - "$ref": "Creative" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "list": { - "id": "dfareporting.creatives.list", - "path": "userprofiles/{profileId}/creatives", - "httpMethod": "GET", - "description": "Retrieves a list of creatives, possibly filtered. This method supports paging.", - "parameters": { - "active": { - "type": "boolean", - "description": "Select only active creatives. Leave blank to select active and inactive creatives.", - "location": "query" - }, - "advertiserId": { - "type": "string", - "description": "Select only creatives with this advertiser ID.", - "format": "int64", - "location": "query" - }, - "archived": { - "type": "boolean", - "description": "Select only archived creatives. Leave blank to select archived and unarchived creatives.", - "location": "query" - }, - "campaignId": { - "type": "string", - "description": "Select only creatives with this campaign ID.", - "format": "int64", - "location": "query" - }, - "companionCreativeIds": { - "type": "string", - "description": "Select only in-stream video creatives with these companion IDs.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "creativeFieldIds": { - "type": "string", - "description": "Select only creatives with these creative field IDs.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "ids": { - "type": "string", - "description": "Select only creatives with these IDs.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "Maximum number of results to return.", - "default": "1000", - "format": "int32", - "minimum": "0", - "maximum": "1000", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Value of the nextPageToken from the previous result page.", - "location": "query" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - }, - "renderingIds": { - "type": "string", - "description": "Select only creatives with these rendering IDs.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "searchString": { - "type": "string", - "description": "Allows searching for objects by name or ID. Wildcards (*) are allowed. For example, \"creative*2015\" will return objects with names like \"creative June 2015\", \"creative April 2015\", or simply \"creative 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"creative\" will match objects with name \"my creative\", \"creative 2015\", or simply \"creative\".", - "location": "query" - }, - "sizeIds": { - "type": "string", - "description": "Select only creatives with these size IDs.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "sortField": { - "type": "string", - "description": "Field by which to sort the list.", - "default": "ID", - "enum": [ - "ID", - "NAME" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - }, - "sortOrder": { - "type": "string", - "description": "Order of sorted results.", - "default": "ASCENDING", - "enum": [ - "ASCENDING", - "DESCENDING" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - }, - "studioCreativeId": { - "type": "string", - "description": "Select only creatives corresponding to this Studio creative ID.", - "format": "int64", - "location": "query" - }, - "types": { - "type": "string", - "description": "Select only creatives with these creative types.", - "enum": [ - "BRAND_SAFE_DEFAULT_INSTREAM_VIDEO", - "CUSTOM_DISPLAY", - "CUSTOM_DISPLAY_INTERSTITIAL", - "DISPLAY", - "DISPLAY_IMAGE_GALLERY", - "DISPLAY_REDIRECT", - "FLASH_INPAGE", - "HTML5_BANNER", - "IMAGE", - "INSTREAM_VIDEO", - "INSTREAM_VIDEO_REDIRECT", - "INTERNAL_REDIRECT", - "INTERSTITIAL_INTERNAL_REDIRECT", - "RICH_MEDIA_DISPLAY_BANNER", - "RICH_MEDIA_DISPLAY_EXPANDING", - "RICH_MEDIA_DISPLAY_INTERSTITIAL", - "RICH_MEDIA_DISPLAY_MULTI_FLOATING_INTERSTITIAL", - "RICH_MEDIA_IM_EXPAND", - "RICH_MEDIA_INPAGE_FLOATING", - "RICH_MEDIA_MOBILE_IN_APP", - "RICH_MEDIA_PEEL_DOWN", - "TRACKING_TEXT", - "VPAID_LINEAR_VIDEO", - "VPAID_NON_LINEAR_VIDEO" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ], - "repeated": true, - "location": "query" - } - }, - "parameterOrder": [ - "profileId" - ], - "response": { - "$ref": "CreativesListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "patch": { - "id": "dfareporting.creatives.patch", - "path": "userprofiles/{profileId}/creatives", - "httpMethod": "PATCH", - "description": "Updates an existing creative. This method supports patch semantics.", - "parameters": { - "id": { - "type": "string", - "description": "Creative ID.", - "required": true, - "format": "int64", - "location": "query" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "id" - ], - "request": { - "$ref": "Creative" - }, - "response": { - "$ref": "Creative" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "update": { - "id": "dfareporting.creatives.update", - "path": "userprofiles/{profileId}/creatives", - "httpMethod": "PUT", - "description": "Updates an existing creative.", - "parameters": { - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId" - ], - "request": { - "$ref": "Creative" - }, - "response": { - "$ref": "Creative" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - } - } - }, - "dimensionValues": { - "methods": { - "query": { - "id": "dfareporting.dimensionValues.query", - "path": "userprofiles/{profileId}/dimensionvalues/query", - "httpMethod": "POST", - "description": "Retrieves list of report dimension values for a list of filters.", - "parameters": { - "maxResults": { - "type": "integer", - "description": "Maximum number of results to return.", - "default": "100", - "format": "int32", - "minimum": "0", - "maximum": "100", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "The value of the nextToken from the previous result page.", - "location": "query" - }, - "profileId": { - "type": "string", - "description": "The DFA user profile ID.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId" - ], - "request": { - "$ref": "DimensionValueRequest" - }, - "response": { - "$ref": "DimensionValueList" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfareporting" - ] - } - } - }, - "directorySiteContacts": { - "methods": { - "get": { - "id": "dfareporting.directorySiteContacts.get", - "path": "userprofiles/{profileId}/directorySiteContacts/{id}", - "httpMethod": "GET", - "description": "Gets one directory site contact by ID.", - "parameters": { - "id": { - "type": "string", - "description": "Directory site contact ID.", - "required": true, - "format": "int64", - "location": "path" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "id" - ], - "response": { - "$ref": "DirectorySiteContact" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "list": { - "id": "dfareporting.directorySiteContacts.list", - "path": "userprofiles/{profileId}/directorySiteContacts", - "httpMethod": "GET", - "description": "Retrieves a list of directory site contacts, possibly filtered. This method supports paging.", - "parameters": { - "directorySiteIds": { - "type": "string", - "description": "Select only directory site contacts with these directory site IDs. This is a required field.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "ids": { - "type": "string", - "description": "Select only directory site contacts with these IDs.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "Maximum number of results to return.", - "default": "1000", - "format": "int32", - "minimum": "0", - "maximum": "1000", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Value of the nextPageToken from the previous result page.", - "location": "query" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - }, - "searchString": { - "type": "string", - "description": "Allows searching for objects by name, ID or email. Wildcards (*) are allowed. For example, \"directory site contact*2015\" will return objects with names like \"directory site contact June 2015\", \"directory site contact April 2015\", or simply \"directory site contact 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"directory site contact\" will match objects with name \"my directory site contact\", \"directory site contact 2015\", or simply \"directory site contact\".", - "location": "query" - }, - "sortField": { - "type": "string", - "description": "Field by which to sort the list.", - "default": "ID", - "enum": [ - "ID", - "NAME" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - }, - "sortOrder": { - "type": "string", - "description": "Order of sorted results.", - "default": "ASCENDING", - "enum": [ - "ASCENDING", - "DESCENDING" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - } - }, - "parameterOrder": [ - "profileId" - ], - "response": { - "$ref": "DirectorySiteContactsListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - } - } - }, - "directorySites": { - "methods": { - "get": { - "id": "dfareporting.directorySites.get", - "path": "userprofiles/{profileId}/directorySites/{id}", - "httpMethod": "GET", - "description": "Gets one directory site by ID.", - "parameters": { - "id": { - "type": "string", - "description": "Directory site ID.", - "required": true, - "format": "int64", - "location": "path" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "id" - ], - "response": { - "$ref": "DirectorySite" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "insert": { - "id": "dfareporting.directorySites.insert", - "path": "userprofiles/{profileId}/directorySites", - "httpMethod": "POST", - "description": "Inserts a new directory site.", - "parameters": { - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId" - ], - "request": { - "$ref": "DirectorySite" - }, - "response": { - "$ref": "DirectorySite" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "list": { - "id": "dfareporting.directorySites.list", - "path": "userprofiles/{profileId}/directorySites", - "httpMethod": "GET", - "description": "Retrieves a list of directory sites, possibly filtered. This method supports paging.", - "parameters": { - "acceptsInStreamVideoPlacements": { - "type": "boolean", - "description": "This search filter is no longer supported and will have no effect on the results returned.", - "location": "query" - }, - "acceptsInterstitialPlacements": { - "type": "boolean", - "description": "This search filter is no longer supported and will have no effect on the results returned.", - "location": "query" - }, - "acceptsPublisherPaidPlacements": { - "type": "boolean", - "description": "Select only directory sites that accept publisher paid placements. This field can be left blank.", - "location": "query" - }, - "active": { - "type": "boolean", - "description": "Select only active directory sites. Leave blank to retrieve both active and inactive directory sites.", - "location": "query" - }, - "countryId": { - "type": "string", - "description": "Select only directory sites with this country ID.", - "format": "int64", - "location": "query" - }, - "dfpNetworkCode": { - "type": "string", - "description": "Select only directory sites with this DFP network code.", - "location": "query" - }, - "ids": { - "type": "string", - "description": "Select only directory sites with these IDs.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "Maximum number of results to return.", - "default": "1000", - "format": "int32", - "minimum": "0", - "maximum": "1000", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Value of the nextPageToken from the previous result page.", - "location": "query" - }, - "parentId": { - "type": "string", - "description": "Select only directory sites with this parent ID.", - "format": "int64", - "location": "query" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - }, - "searchString": { - "type": "string", - "description": "Allows searching for objects by name, ID or URL. Wildcards (*) are allowed. For example, \"directory site*2015\" will return objects with names like \"directory site June 2015\", \"directory site April 2015\", or simply \"directory site 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"directory site\" will match objects with name \"my directory site\", \"directory site 2015\" or simply, \"directory site\".", - "location": "query" - }, - "sortField": { - "type": "string", - "description": "Field by which to sort the list.", - "default": "ID", - "enum": [ - "ID", - "NAME" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - }, - "sortOrder": { - "type": "string", - "description": "Order of sorted results.", - "default": "ASCENDING", - "enum": [ - "ASCENDING", - "DESCENDING" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - } - }, - "parameterOrder": [ - "profileId" - ], - "response": { - "$ref": "DirectorySitesListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - } - } - }, - "dynamicTargetingKeys": { - "methods": { - "delete": { - "id": "dfareporting.dynamicTargetingKeys.delete", - "path": "userprofiles/{profileId}/dynamicTargetingKeys/{objectId}", - "httpMethod": "DELETE", - "description": "Deletes an existing dynamic targeting key.", - "parameters": { - "name": { - "type": "string", - "description": "Name of this dynamic targeting key. This is a required field. Must be less than 256 characters long and cannot contain commas. All characters are converted to lowercase.", - "required": true, - "location": "query" - }, - "objectId": { - "type": "string", - "description": "ID of the object of this dynamic targeting key. This is a required field.", - "required": true, - "format": "int64", - "location": "path" - }, - "objectType": { - "type": "string", - "description": "Type of the object of this dynamic targeting key. This is a required field.", - "required": true, - "enum": [ - "OBJECT_AD", - "OBJECT_ADVERTISER", - "OBJECT_CREATIVE", - "OBJECT_PLACEMENT" - ], - "enumDescriptions": [ - "", - "", - "", - "" - ], - "location": "query" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "objectId", - "name", - "objectType" - ], - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "insert": { - "id": "dfareporting.dynamicTargetingKeys.insert", - "path": "userprofiles/{profileId}/dynamicTargetingKeys", - "httpMethod": "POST", - "description": "Inserts a new dynamic targeting key. Keys must be created at the advertiser level before being assigned to the advertiser's ads, creatives, or placements. There is a maximum of 1000 keys per advertiser, out of which a maximum of 20 keys can be assigned per ad, creative, or placement.", - "parameters": { - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId" - ], - "request": { - "$ref": "DynamicTargetingKey" - }, - "response": { - "$ref": "DynamicTargetingKey" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "list": { - "id": "dfareporting.dynamicTargetingKeys.list", - "path": "userprofiles/{profileId}/dynamicTargetingKeys", - "httpMethod": "GET", - "description": "Retrieves a list of dynamic targeting keys.", - "parameters": { - "advertiserId": { - "type": "string", - "description": "Select only dynamic targeting keys whose object has this advertiser ID.", - "format": "int64", - "location": "query" - }, - "names": { - "type": "string", - "description": "Select only dynamic targeting keys exactly matching these names.", - "repeated": true, - "location": "query" - }, - "objectId": { - "type": "string", - "description": "Select only dynamic targeting keys with this object ID.", - "format": "int64", - "location": "query" - }, - "objectType": { - "type": "string", - "description": "Select only dynamic targeting keys with this object type.", - "enum": [ - "OBJECT_AD", - "OBJECT_ADVERTISER", - "OBJECT_CREATIVE", - "OBJECT_PLACEMENT" - ], - "enumDescriptions": [ - "", - "", - "", - "" - ], - "location": "query" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId" - ], - "response": { - "$ref": "DynamicTargetingKeysListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - } - } - }, - "eventTags": { - "methods": { - "delete": { - "id": "dfareporting.eventTags.delete", - "path": "userprofiles/{profileId}/eventTags/{id}", - "httpMethod": "DELETE", - "description": "Deletes an existing event tag.", - "parameters": { - "id": { - "type": "string", - "description": "Event tag ID.", - "required": true, - "format": "int64", - "location": "path" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "id" - ], - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "get": { - "id": "dfareporting.eventTags.get", - "path": "userprofiles/{profileId}/eventTags/{id}", - "httpMethod": "GET", - "description": "Gets one event tag by ID.", - "parameters": { - "id": { - "type": "string", - "description": "Event tag ID.", - "required": true, - "format": "int64", - "location": "path" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "id" - ], - "response": { - "$ref": "EventTag" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "insert": { - "id": "dfareporting.eventTags.insert", - "path": "userprofiles/{profileId}/eventTags", - "httpMethod": "POST", - "description": "Inserts a new event tag.", - "parameters": { - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId" - ], - "request": { - "$ref": "EventTag" - }, - "response": { - "$ref": "EventTag" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "list": { - "id": "dfareporting.eventTags.list", - "path": "userprofiles/{profileId}/eventTags", - "httpMethod": "GET", - "description": "Retrieves a list of event tags, possibly filtered.", - "parameters": { - "adId": { - "type": "string", - "description": "Select only event tags that belong to this ad.", - "format": "int64", - "location": "query" - }, - "advertiserId": { - "type": "string", - "description": "Select only event tags that belong to this advertiser.", - "format": "int64", - "location": "query" - }, - "campaignId": { - "type": "string", - "description": "Select only event tags that belong to this campaign.", - "format": "int64", - "location": "query" - }, - "definitionsOnly": { - "type": "boolean", - "description": "Examine only the specified campaign or advertiser's event tags for matching selector criteria. When set to false, the parent advertiser and parent campaign of the specified ad or campaign is examined as well. In addition, when set to false, the status field is examined as well, along with the enabledByDefault field. This parameter can not be set to true when adId is specified as ads do not define their own even tags.", - "location": "query" - }, - "enabled": { - "type": "boolean", - "description": "Select only enabled event tags. What is considered enabled or disabled depends on the definitionsOnly parameter. When definitionsOnly is set to true, only the specified advertiser or campaign's event tags' enabledByDefault field is examined. When definitionsOnly is set to false, the specified ad or specified campaign's parent advertiser's or parent campaign's event tags' enabledByDefault and status fields are examined as well.", - "location": "query" - }, - "eventTagTypes": { - "type": "string", - "description": "Select only event tags with the specified event tag types. Event tag types can be used to specify whether to use a third-party pixel, a third-party JavaScript URL, or a third-party click-through URL for either impression or click tracking.", - "enum": [ - "CLICK_THROUGH_EVENT_TAG", - "IMPRESSION_IMAGE_EVENT_TAG", - "IMPRESSION_JAVASCRIPT_EVENT_TAG" - ], - "enumDescriptions": [ - "", - "", - "" - ], - "repeated": true, - "location": "query" - }, - "ids": { - "type": "string", - "description": "Select only event tags with these IDs.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - }, - "searchString": { - "type": "string", - "description": "Allows searching for objects by name or ID. Wildcards (*) are allowed. For example, \"eventtag*2015\" will return objects with names like \"eventtag June 2015\", \"eventtag April 2015\", or simply \"eventtag 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"eventtag\" will match objects with name \"my eventtag\", \"eventtag 2015\", or simply \"eventtag\".", - "location": "query" - }, - "sortField": { - "type": "string", - "description": "Field by which to sort the list.", - "default": "ID", - "enum": [ - "ID", - "NAME" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - }, - "sortOrder": { - "type": "string", - "description": "Order of sorted results.", - "default": "ASCENDING", - "enum": [ - "ASCENDING", - "DESCENDING" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - } - }, - "parameterOrder": [ - "profileId" - ], - "response": { - "$ref": "EventTagsListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "patch": { - "id": "dfareporting.eventTags.patch", - "path": "userprofiles/{profileId}/eventTags", - "httpMethod": "PATCH", - "description": "Updates an existing event tag. This method supports patch semantics.", - "parameters": { - "id": { - "type": "string", - "description": "Event tag ID.", - "required": true, - "format": "int64", - "location": "query" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "id" - ], - "request": { - "$ref": "EventTag" - }, - "response": { - "$ref": "EventTag" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "update": { - "id": "dfareporting.eventTags.update", - "path": "userprofiles/{profileId}/eventTags", - "httpMethod": "PUT", - "description": "Updates an existing event tag.", - "parameters": { - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId" - ], - "request": { - "$ref": "EventTag" - }, - "response": { - "$ref": "EventTag" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - } - } - }, - "files": { - "methods": { - "get": { - "id": "dfareporting.files.get", - "path": "reports/{reportId}/files/{fileId}", - "httpMethod": "GET", - "description": "Retrieves a report file by its report ID and file ID. This method supports media download.", - "parameters": { - "fileId": { - "type": "string", - "description": "The ID of the report file.", - "required": true, - "format": "int64", - "location": "path" - }, - "reportId": { - "type": "string", - "description": "The ID of the report.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "reportId", - "fileId" - ], - "response": { - "$ref": "File" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfareporting" - ], - "supportsMediaDownload": true - }, - "list": { - "id": "dfareporting.files.list", - "path": "userprofiles/{profileId}/files", - "httpMethod": "GET", - "description": "Lists files for a user profile.", - "parameters": { - "maxResults": { - "type": "integer", - "description": "Maximum number of results to return.", - "default": "10", - "format": "int32", - "minimum": "0", - "maximum": "10", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "The value of the nextToken from the previous result page.", - "location": "query" - }, - "profileId": { - "type": "string", - "description": "The DFA profile ID.", - "required": true, - "format": "int64", - "location": "path" - }, - "scope": { - "type": "string", - "description": "The scope that defines which results are returned.", - "default": "MINE", - "enum": [ - "ALL", - "MINE", - "SHARED_WITH_ME" - ], - "enumDescriptions": [ - "All files in account.", - "My files.", - "Files shared with me." - ], - "location": "query" - }, - "sortField": { - "type": "string", - "description": "The field by which to sort the list.", - "default": "LAST_MODIFIED_TIME", - "enum": [ - "ID", - "LAST_MODIFIED_TIME" - ], - "enumDescriptions": [ - "Sort by file ID.", - "Sort by 'lastmodifiedAt' field." - ], - "location": "query" - }, - "sortOrder": { - "type": "string", - "description": "Order of sorted results.", - "default": "DESCENDING", - "enum": [ - "ASCENDING", - "DESCENDING" - ], - "enumDescriptions": [ - "Ascending order.", - "Descending order." - ], - "location": "query" - } - }, - "parameterOrder": [ - "profileId" - ], - "response": { - "$ref": "FileList" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfareporting" - ] - } - } - }, - "floodlightActivities": { - "methods": { - "delete": { - "id": "dfareporting.floodlightActivities.delete", - "path": "userprofiles/{profileId}/floodlightActivities/{id}", - "httpMethod": "DELETE", - "description": "Deletes an existing floodlight activity.", - "parameters": { - "id": { - "type": "string", - "description": "Floodlight activity ID.", - "required": true, - "format": "int64", - "location": "path" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "id" - ], - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "generatetag": { - "id": "dfareporting.floodlightActivities.generatetag", - "path": "userprofiles/{profileId}/floodlightActivities/generatetag", - "httpMethod": "POST", - "description": "Generates a tag for a floodlight activity.", - "parameters": { - "floodlightActivityId": { - "type": "string", - "description": "Floodlight activity ID for which we want to generate a tag.", - "format": "int64", - "location": "query" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId" - ], - "response": { - "$ref": "FloodlightActivitiesGenerateTagResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "get": { - "id": "dfareporting.floodlightActivities.get", - "path": "userprofiles/{profileId}/floodlightActivities/{id}", - "httpMethod": "GET", - "description": "Gets one floodlight activity by ID.", - "parameters": { - "id": { - "type": "string", - "description": "Floodlight activity ID.", - "required": true, - "format": "int64", - "location": "path" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "id" - ], - "response": { - "$ref": "FloodlightActivity" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "insert": { - "id": "dfareporting.floodlightActivities.insert", - "path": "userprofiles/{profileId}/floodlightActivities", - "httpMethod": "POST", - "description": "Inserts a new floodlight activity.", - "parameters": { - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId" - ], - "request": { - "$ref": "FloodlightActivity" - }, - "response": { - "$ref": "FloodlightActivity" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "list": { - "id": "dfareporting.floodlightActivities.list", - "path": "userprofiles/{profileId}/floodlightActivities", - "httpMethod": "GET", - "description": "Retrieves a list of floodlight activities, possibly filtered. This method supports paging.", - "parameters": { - "advertiserId": { - "type": "string", - "description": "Select only floodlight activities for the specified advertiser ID. Must specify either ids, advertiserId, or floodlightConfigurationId for a non-empty result.", - "format": "int64", - "location": "query" - }, - "floodlightActivityGroupIds": { - "type": "string", - "description": "Select only floodlight activities with the specified floodlight activity group IDs.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "floodlightActivityGroupName": { - "type": "string", - "description": "Select only floodlight activities with the specified floodlight activity group name.", - "location": "query" - }, - "floodlightActivityGroupTagString": { - "type": "string", - "description": "Select only floodlight activities with the specified floodlight activity group tag string.", - "location": "query" - }, - "floodlightActivityGroupType": { - "type": "string", - "description": "Select only floodlight activities with the specified floodlight activity group type.", - "enum": [ - "COUNTER", - "SALE" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - }, - "floodlightConfigurationId": { - "type": "string", - "description": "Select only floodlight activities for the specified floodlight configuration ID. Must specify either ids, advertiserId, or floodlightConfigurationId for a non-empty result.", - "format": "int64", - "location": "query" - }, - "ids": { - "type": "string", - "description": "Select only floodlight activities with the specified IDs. Must specify either ids, advertiserId, or floodlightConfigurationId for a non-empty result.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "Maximum number of results to return.", - "default": "1000", - "format": "int32", - "minimum": "0", - "maximum": "1000", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Value of the nextPageToken from the previous result page.", - "location": "query" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - }, - "searchString": { - "type": "string", - "description": "Allows searching for objects by name or ID. Wildcards (*) are allowed. For example, \"floodlightactivity*2015\" will return objects with names like \"floodlightactivity June 2015\", \"floodlightactivity April 2015\", or simply \"floodlightactivity 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"floodlightactivity\" will match objects with name \"my floodlightactivity activity\", \"floodlightactivity 2015\", or simply \"floodlightactivity\".", - "location": "query" - }, - "sortField": { - "type": "string", - "description": "Field by which to sort the list.", - "default": "ID", - "enum": [ - "ID", - "NAME" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - }, - "sortOrder": { - "type": "string", - "description": "Order of sorted results.", - "default": "ASCENDING", - "enum": [ - "ASCENDING", - "DESCENDING" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - }, - "tagString": { - "type": "string", - "description": "Select only floodlight activities with the specified tag string.", - "location": "query" - } - }, - "parameterOrder": [ - "profileId" - ], - "response": { - "$ref": "FloodlightActivitiesListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "patch": { - "id": "dfareporting.floodlightActivities.patch", - "path": "userprofiles/{profileId}/floodlightActivities", - "httpMethod": "PATCH", - "description": "Updates an existing floodlight activity. This method supports patch semantics.", - "parameters": { - "id": { - "type": "string", - "description": "Floodlight activity ID.", - "required": true, - "format": "int64", - "location": "query" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "id" - ], - "request": { - "$ref": "FloodlightActivity" - }, - "response": { - "$ref": "FloodlightActivity" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "update": { - "id": "dfareporting.floodlightActivities.update", - "path": "userprofiles/{profileId}/floodlightActivities", - "httpMethod": "PUT", - "description": "Updates an existing floodlight activity.", - "parameters": { - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId" - ], - "request": { - "$ref": "FloodlightActivity" - }, - "response": { - "$ref": "FloodlightActivity" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - } - } - }, - "floodlightActivityGroups": { - "methods": { - "get": { - "id": "dfareporting.floodlightActivityGroups.get", - "path": "userprofiles/{profileId}/floodlightActivityGroups/{id}", - "httpMethod": "GET", - "description": "Gets one floodlight activity group by ID.", - "parameters": { - "id": { - "type": "string", - "description": "Floodlight activity Group ID.", - "required": true, - "format": "int64", - "location": "path" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "id" - ], - "response": { - "$ref": "FloodlightActivityGroup" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "insert": { - "id": "dfareporting.floodlightActivityGroups.insert", - "path": "userprofiles/{profileId}/floodlightActivityGroups", - "httpMethod": "POST", - "description": "Inserts a new floodlight activity group.", - "parameters": { - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId" - ], - "request": { - "$ref": "FloodlightActivityGroup" - }, - "response": { - "$ref": "FloodlightActivityGroup" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "list": { - "id": "dfareporting.floodlightActivityGroups.list", - "path": "userprofiles/{profileId}/floodlightActivityGroups", - "httpMethod": "GET", - "description": "Retrieves a list of floodlight activity groups, possibly filtered. This method supports paging.", - "parameters": { - "advertiserId": { - "type": "string", - "description": "Select only floodlight activity groups with the specified advertiser ID. Must specify either advertiserId or floodlightConfigurationId for a non-empty result.", - "format": "int64", - "location": "query" - }, - "floodlightConfigurationId": { - "type": "string", - "description": "Select only floodlight activity groups with the specified floodlight configuration ID. Must specify either advertiserId, or floodlightConfigurationId for a non-empty result.", - "format": "int64", - "location": "query" - }, - "ids": { - "type": "string", - "description": "Select only floodlight activity groups with the specified IDs. Must specify either advertiserId or floodlightConfigurationId for a non-empty result.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "Maximum number of results to return.", - "default": "1000", - "format": "int32", - "minimum": "0", - "maximum": "1000", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Value of the nextPageToken from the previous result page.", - "location": "query" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - }, - "searchString": { - "type": "string", - "description": "Allows searching for objects by name or ID. Wildcards (*) are allowed. For example, \"floodlightactivitygroup*2015\" will return objects with names like \"floodlightactivitygroup June 2015\", \"floodlightactivitygroup April 2015\", or simply \"floodlightactivitygroup 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"floodlightactivitygroup\" will match objects with name \"my floodlightactivitygroup activity\", \"floodlightactivitygroup 2015\", or simply \"floodlightactivitygroup\".", - "location": "query" - }, - "sortField": { - "type": "string", - "description": "Field by which to sort the list.", - "default": "ID", - "enum": [ - "ID", - "NAME" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - }, - "sortOrder": { - "type": "string", - "description": "Order of sorted results.", - "default": "ASCENDING", - "enum": [ - "ASCENDING", - "DESCENDING" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - }, - "type": { - "type": "string", - "description": "Select only floodlight activity groups with the specified floodlight activity group type.", - "enum": [ - "COUNTER", - "SALE" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - } - }, - "parameterOrder": [ - "profileId" - ], - "response": { - "$ref": "FloodlightActivityGroupsListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "patch": { - "id": "dfareporting.floodlightActivityGroups.patch", - "path": "userprofiles/{profileId}/floodlightActivityGroups", - "httpMethod": "PATCH", - "description": "Updates an existing floodlight activity group. This method supports patch semantics.", - "parameters": { - "id": { - "type": "string", - "description": "Floodlight activity Group ID.", - "required": true, - "format": "int64", - "location": "query" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "id" - ], - "request": { - "$ref": "FloodlightActivityGroup" - }, - "response": { - "$ref": "FloodlightActivityGroup" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "update": { - "id": "dfareporting.floodlightActivityGroups.update", - "path": "userprofiles/{profileId}/floodlightActivityGroups", - "httpMethod": "PUT", - "description": "Updates an existing floodlight activity group.", - "parameters": { - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId" - ], - "request": { - "$ref": "FloodlightActivityGroup" - }, - "response": { - "$ref": "FloodlightActivityGroup" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - } - } - }, - "floodlightConfigurations": { - "methods": { - "get": { - "id": "dfareporting.floodlightConfigurations.get", - "path": "userprofiles/{profileId}/floodlightConfigurations/{id}", - "httpMethod": "GET", - "description": "Gets one floodlight configuration by ID.", - "parameters": { - "id": { - "type": "string", - "description": "Floodlight configuration ID.", - "required": true, - "format": "int64", - "location": "path" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "id" - ], - "response": { - "$ref": "FloodlightConfiguration" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "list": { - "id": "dfareporting.floodlightConfigurations.list", - "path": "userprofiles/{profileId}/floodlightConfigurations", - "httpMethod": "GET", - "description": "Retrieves a list of floodlight configurations, possibly filtered.", - "parameters": { - "ids": { - "type": "string", - "description": "Set of IDs of floodlight configurations to retrieve. Required field; otherwise an empty list will be returned.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId" - ], - "response": { - "$ref": "FloodlightConfigurationsListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "patch": { - "id": "dfareporting.floodlightConfigurations.patch", - "path": "userprofiles/{profileId}/floodlightConfigurations", - "httpMethod": "PATCH", - "description": "Updates an existing floodlight configuration. This method supports patch semantics.", - "parameters": { - "id": { - "type": "string", - "description": "Floodlight configuration ID.", - "required": true, - "format": "int64", - "location": "query" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "id" - ], - "request": { - "$ref": "FloodlightConfiguration" - }, - "response": { - "$ref": "FloodlightConfiguration" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "update": { - "id": "dfareporting.floodlightConfigurations.update", - "path": "userprofiles/{profileId}/floodlightConfigurations", - "httpMethod": "PUT", - "description": "Updates an existing floodlight configuration.", - "parameters": { - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId" - ], - "request": { - "$ref": "FloodlightConfiguration" - }, - "response": { - "$ref": "FloodlightConfiguration" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - } - } - }, - "inventoryItems": { - "methods": { - "get": { - "id": "dfareporting.inventoryItems.get", - "path": "userprofiles/{profileId}/projects/{projectId}/inventoryItems/{id}", - "httpMethod": "GET", - "description": "Gets one inventory item by ID.", - "parameters": { - "id": { - "type": "string", - "description": "Inventory item ID.", - "required": true, - "format": "int64", - "location": "path" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - }, - "projectId": { - "type": "string", - "description": "Project ID for order documents.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "projectId", - "id" - ], - "response": { - "$ref": "InventoryItem" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "list": { - "id": "dfareporting.inventoryItems.list", - "path": "userprofiles/{profileId}/projects/{projectId}/inventoryItems", - "httpMethod": "GET", - "description": "Retrieves a list of inventory items, possibly filtered. This method supports paging.", - "parameters": { - "ids": { - "type": "string", - "description": "Select only inventory items with these IDs.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "inPlan": { - "type": "boolean", - "description": "Select only inventory items that are in plan.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "Maximum number of results to return.", - "default": "1000", - "format": "int32", - "minimum": "0", - "maximum": "1000", - "location": "query" - }, - "orderId": { - "type": "string", - "description": "Select only inventory items that belong to specified orders.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Value of the nextPageToken from the previous result page.", - "location": "query" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - }, - "projectId": { - "type": "string", - "description": "Project ID for order documents.", - "required": true, - "format": "int64", - "location": "path" - }, - "siteId": { - "type": "string", - "description": "Select only inventory items that are associated with these sites.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "sortField": { - "type": "string", - "description": "Field by which to sort the list.", - "default": "ID", - "enum": [ - "ID", - "NAME" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - }, - "sortOrder": { - "type": "string", - "description": "Order of sorted results.", - "default": "ASCENDING", - "enum": [ - "ASCENDING", - "DESCENDING" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - }, - "type": { - "type": "string", - "description": "Select only inventory items with this type.", - "enum": [ - "PLANNING_PLACEMENT_TYPE_CREDIT", - "PLANNING_PLACEMENT_TYPE_REGULAR" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - } - }, - "parameterOrder": [ - "profileId", - "projectId" - ], - "response": { - "$ref": "InventoryItemsListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - } - } - }, - "landingPages": { - "methods": { - "delete": { - "id": "dfareporting.landingPages.delete", - "path": "userprofiles/{profileId}/campaigns/{campaignId}/landingPages/{id}", - "httpMethod": "DELETE", - "description": "Deletes an existing campaign landing page.", - "parameters": { - "campaignId": { - "type": "string", - "description": "Landing page campaign ID.", - "required": true, - "format": "int64", - "location": "path" - }, - "id": { - "type": "string", - "description": "Landing page ID.", - "required": true, - "format": "int64", - "location": "path" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "campaignId", - "id" - ], - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "get": { - "id": "dfareporting.landingPages.get", - "path": "userprofiles/{profileId}/campaigns/{campaignId}/landingPages/{id}", - "httpMethod": "GET", - "description": "Gets one campaign landing page by ID.", - "parameters": { - "campaignId": { - "type": "string", - "description": "Landing page campaign ID.", - "required": true, - "format": "int64", - "location": "path" - }, - "id": { - "type": "string", - "description": "Landing page ID.", - "required": true, - "format": "int64", - "location": "path" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "campaignId", - "id" - ], - "response": { - "$ref": "LandingPage" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "insert": { - "id": "dfareporting.landingPages.insert", - "path": "userprofiles/{profileId}/campaigns/{campaignId}/landingPages", - "httpMethod": "POST", - "description": "Inserts a new landing page for the specified campaign.", - "parameters": { - "campaignId": { - "type": "string", - "description": "Landing page campaign ID.", - "required": true, - "format": "int64", - "location": "path" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "campaignId" - ], - "request": { - "$ref": "LandingPage" - }, - "response": { - "$ref": "LandingPage" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "list": { - "id": "dfareporting.landingPages.list", - "path": "userprofiles/{profileId}/campaigns/{campaignId}/landingPages", - "httpMethod": "GET", - "description": "Retrieves the list of landing pages for the specified campaign.", - "parameters": { - "campaignId": { - "type": "string", - "description": "Landing page campaign ID.", - "required": true, - "format": "int64", - "location": "path" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "campaignId" - ], - "response": { - "$ref": "LandingPagesListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "patch": { - "id": "dfareporting.landingPages.patch", - "path": "userprofiles/{profileId}/campaigns/{campaignId}/landingPages", - "httpMethod": "PATCH", - "description": "Updates an existing campaign landing page. This method supports patch semantics.", - "parameters": { - "campaignId": { - "type": "string", - "description": "Landing page campaign ID.", - "required": true, - "format": "int64", - "location": "path" - }, - "id": { - "type": "string", - "description": "Landing page ID.", - "required": true, - "format": "int64", - "location": "query" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "campaignId", - "id" - ], - "request": { - "$ref": "LandingPage" - }, - "response": { - "$ref": "LandingPage" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "update": { - "id": "dfareporting.landingPages.update", - "path": "userprofiles/{profileId}/campaigns/{campaignId}/landingPages", - "httpMethod": "PUT", - "description": "Updates an existing campaign landing page.", - "parameters": { - "campaignId": { - "type": "string", - "description": "Landing page campaign ID.", - "required": true, - "format": "int64", - "location": "path" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "campaignId" - ], - "request": { - "$ref": "LandingPage" - }, - "response": { - "$ref": "LandingPage" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - } - } - }, - "languages": { - "methods": { - "list": { - "id": "dfareporting.languages.list", - "path": "userprofiles/{profileId}/languages", - "httpMethod": "GET", - "description": "Retrieves a list of languages.", - "parameters": { - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId" - ], - "response": { - "$ref": "LanguagesListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - } - } - }, - "metros": { - "methods": { - "list": { - "id": "dfareporting.metros.list", - "path": "userprofiles/{profileId}/metros", - "httpMethod": "GET", - "description": "Retrieves a list of metros.", - "parameters": { - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId" - ], - "response": { - "$ref": "MetrosListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - } - } - }, - "mobileCarriers": { - "methods": { - "get": { - "id": "dfareporting.mobileCarriers.get", - "path": "userprofiles/{profileId}/mobileCarriers/{id}", - "httpMethod": "GET", - "description": "Gets one mobile carrier by ID.", - "parameters": { - "id": { - "type": "string", - "description": "Mobile carrier ID.", - "required": true, - "format": "int64", - "location": "path" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "id" - ], - "response": { - "$ref": "MobileCarrier" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "list": { - "id": "dfareporting.mobileCarriers.list", - "path": "userprofiles/{profileId}/mobileCarriers", - "httpMethod": "GET", - "description": "Retrieves a list of mobile carriers.", - "parameters": { - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId" - ], - "response": { - "$ref": "MobileCarriersListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - } - } - }, - "operatingSystemVersions": { - "methods": { - "get": { - "id": "dfareporting.operatingSystemVersions.get", - "path": "userprofiles/{profileId}/operatingSystemVersions/{id}", - "httpMethod": "GET", - "description": "Gets one operating system version by ID.", - "parameters": { - "id": { - "type": "string", - "description": "Operating system version ID.", - "required": true, - "format": "int64", - "location": "path" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "id" - ], - "response": { - "$ref": "OperatingSystemVersion" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "list": { - "id": "dfareporting.operatingSystemVersions.list", - "path": "userprofiles/{profileId}/operatingSystemVersions", - "httpMethod": "GET", - "description": "Retrieves a list of operating system versions.", - "parameters": { - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId" - ], - "response": { - "$ref": "OperatingSystemVersionsListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - } - } - }, - "operatingSystems": { - "methods": { - "get": { - "id": "dfareporting.operatingSystems.get", - "path": "userprofiles/{profileId}/operatingSystems/{dartId}", - "httpMethod": "GET", - "description": "Gets one operating system by DART ID.", - "parameters": { - "dartId": { - "type": "string", - "description": "Operating system DART ID.", - "required": true, - "format": "int64", - "location": "path" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "dartId" - ], - "response": { - "$ref": "OperatingSystem" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "list": { - "id": "dfareporting.operatingSystems.list", - "path": "userprofiles/{profileId}/operatingSystems", - "httpMethod": "GET", - "description": "Retrieves a list of operating systems.", - "parameters": { - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId" - ], - "response": { - "$ref": "OperatingSystemsListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - } - } - }, - "orderDocuments": { - "methods": { - "get": { - "id": "dfareporting.orderDocuments.get", - "path": "userprofiles/{profileId}/projects/{projectId}/orderDocuments/{id}", - "httpMethod": "GET", - "description": "Gets one order document by ID.", - "parameters": { - "id": { - "type": "string", - "description": "Order document ID.", - "required": true, - "format": "int64", - "location": "path" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - }, - "projectId": { - "type": "string", - "description": "Project ID for order documents.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "projectId", - "id" - ], - "response": { - "$ref": "OrderDocument" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "list": { - "id": "dfareporting.orderDocuments.list", - "path": "userprofiles/{profileId}/projects/{projectId}/orderDocuments", - "httpMethod": "GET", - "description": "Retrieves a list of order documents, possibly filtered. This method supports paging.", - "parameters": { - "approved": { - "type": "boolean", - "description": "Select only order documents that have been approved by at least one user.", - "location": "query" - }, - "ids": { - "type": "string", - "description": "Select only order documents with these IDs.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "Maximum number of results to return.", - "default": "1000", - "format": "int32", - "minimum": "0", - "maximum": "1000", - "location": "query" - }, - "orderId": { - "type": "string", - "description": "Select only order documents for specified orders.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Value of the nextPageToken from the previous result page.", - "location": "query" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - }, - "projectId": { - "type": "string", - "description": "Project ID for order documents.", - "required": true, - "format": "int64", - "location": "path" - }, - "searchString": { - "type": "string", - "description": "Allows searching for order documents by name or ID. Wildcards (*) are allowed. For example, \"orderdocument*2015\" will return order documents with names like \"orderdocument June 2015\", \"orderdocument April 2015\", or simply \"orderdocument 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"orderdocument\" will match order documents with name \"my orderdocument\", \"orderdocument 2015\", or simply \"orderdocument\".", - "location": "query" - }, - "siteId": { - "type": "string", - "description": "Select only order documents that are associated with these sites.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "sortField": { - "type": "string", - "description": "Field by which to sort the list.", - "default": "ID", - "enum": [ - "ID", - "NAME" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - }, - "sortOrder": { - "type": "string", - "description": "Order of sorted results.", - "default": "ASCENDING", - "enum": [ - "ASCENDING", - "DESCENDING" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - } - }, - "parameterOrder": [ - "profileId", - "projectId" - ], - "response": { - "$ref": "OrderDocumentsListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - } - } - }, - "orders": { - "methods": { - "get": { - "id": "dfareporting.orders.get", - "path": "userprofiles/{profileId}/projects/{projectId}/orders/{id}", - "httpMethod": "GET", - "description": "Gets one order by ID.", - "parameters": { - "id": { - "type": "string", - "description": "Order ID.", - "required": true, - "format": "int64", - "location": "path" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - }, - "projectId": { - "type": "string", - "description": "Project ID for orders.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "projectId", - "id" - ], - "response": { - "$ref": "Order" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "list": { - "id": "dfareporting.orders.list", - "path": "userprofiles/{profileId}/projects/{projectId}/orders", - "httpMethod": "GET", - "description": "Retrieves a list of orders, possibly filtered. This method supports paging.", - "parameters": { - "ids": { - "type": "string", - "description": "Select only orders with these IDs.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "Maximum number of results to return.", - "default": "1000", - "format": "int32", - "minimum": "0", - "maximum": "1000", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Value of the nextPageToken from the previous result page.", - "location": "query" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - }, - "projectId": { - "type": "string", - "description": "Project ID for orders.", - "required": true, - "format": "int64", - "location": "path" - }, - "searchString": { - "type": "string", - "description": "Allows searching for orders by name or ID. Wildcards (*) are allowed. For example, \"order*2015\" will return orders with names like \"order June 2015\", \"order April 2015\", or simply \"order 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"order\" will match orders with name \"my order\", \"order 2015\", or simply \"order\".", - "location": "query" - }, - "siteId": { - "type": "string", - "description": "Select only orders that are associated with these site IDs.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "sortField": { - "type": "string", - "description": "Field by which to sort the list.", - "default": "ID", - "enum": [ - "ID", - "NAME" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - }, - "sortOrder": { - "type": "string", - "description": "Order of sorted results.", - "default": "ASCENDING", - "enum": [ - "ASCENDING", - "DESCENDING" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - } - }, - "parameterOrder": [ - "profileId", - "projectId" - ], - "response": { - "$ref": "OrdersListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - } - } - }, - "placementGroups": { - "methods": { - "get": { - "id": "dfareporting.placementGroups.get", - "path": "userprofiles/{profileId}/placementGroups/{id}", - "httpMethod": "GET", - "description": "Gets one placement group by ID.", - "parameters": { - "id": { - "type": "string", - "description": "Placement group ID.", - "required": true, - "format": "int64", - "location": "path" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "id" - ], - "response": { - "$ref": "PlacementGroup" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "insert": { - "id": "dfareporting.placementGroups.insert", - "path": "userprofiles/{profileId}/placementGroups", - "httpMethod": "POST", - "description": "Inserts a new placement group.", - "parameters": { - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId" - ], - "request": { - "$ref": "PlacementGroup" - }, - "response": { - "$ref": "PlacementGroup" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "list": { - "id": "dfareporting.placementGroups.list", - "path": "userprofiles/{profileId}/placementGroups", - "httpMethod": "GET", - "description": "Retrieves a list of placement groups, possibly filtered. This method supports paging.", - "parameters": { - "advertiserIds": { - "type": "string", - "description": "Select only placement groups that belong to these advertisers.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "archived": { - "type": "boolean", - "description": "Select only archived placements. Don't set this field to select both archived and non-archived placements.", - "location": "query" - }, - "campaignIds": { - "type": "string", - "description": "Select only placement groups that belong to these campaigns.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "contentCategoryIds": { - "type": "string", - "description": "Select only placement groups that are associated with these content categories.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "directorySiteIds": { - "type": "string", - "description": "Select only placement groups that are associated with these directory sites.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "ids": { - "type": "string", - "description": "Select only placement groups with these IDs.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "maxEndDate": { - "type": "string", - "description": "Select only placements or placement groups whose end date is on or before the specified maxEndDate. The date should be formatted as \"yyyy-MM-dd\".", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "Maximum number of results to return.", - "default": "800", - "format": "int32", - "minimum": "0", - "maximum": "800", - "location": "query" - }, - "maxStartDate": { - "type": "string", - "description": "Select only placements or placement groups whose start date is on or before the specified maxStartDate. The date should be formatted as \"yyyy-MM-dd\".", - "location": "query" - }, - "minEndDate": { - "type": "string", - "description": "Select only placements or placement groups whose end date is on or after the specified minEndDate. The date should be formatted as \"yyyy-MM-dd\".", - "location": "query" - }, - "minStartDate": { - "type": "string", - "description": "Select only placements or placement groups whose start date is on or after the specified minStartDate. The date should be formatted as \"yyyy-MM-dd\".", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Value of the nextPageToken from the previous result page.", - "location": "query" - }, - "placementGroupType": { - "type": "string", - "description": "Select only placement groups belonging with this group type. A package is a simple group of placements that acts as a single pricing point for a group of tags. A roadblock is a group of placements that not only acts as a single pricing point but also assumes that all the tags in it will be served at the same time. A roadblock requires one of its assigned placements to be marked as primary for reporting.", - "enum": [ - "PLACEMENT_PACKAGE", - "PLACEMENT_ROADBLOCK" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - }, - "placementStrategyIds": { - "type": "string", - "description": "Select only placement groups that are associated with these placement strategies.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "pricingTypes": { - "type": "string", - "description": "Select only placement groups with these pricing types.", - "enum": [ - "PRICING_TYPE_CPA", - "PRICING_TYPE_CPC", - "PRICING_TYPE_CPM", - "PRICING_TYPE_CPM_ACTIVEVIEW", - "PRICING_TYPE_FLAT_RATE_CLICKS", - "PRICING_TYPE_FLAT_RATE_IMPRESSIONS" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "" - ], - "repeated": true, - "location": "query" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - }, - "searchString": { - "type": "string", - "description": "Allows searching for placement groups by name or ID. Wildcards (*) are allowed. For example, \"placement*2015\" will return placement groups with names like \"placement group June 2015\", \"placement group May 2015\", or simply \"placements 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"placementgroup\" will match placement groups with name \"my placementgroup\", \"placementgroup 2015\", or simply \"placementgroup\".", - "location": "query" - }, - "siteIds": { - "type": "string", - "description": "Select only placement groups that are associated with these sites.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "sortField": { - "type": "string", - "description": "Field by which to sort the list.", - "default": "ID", - "enum": [ - "ID", - "NAME" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - }, - "sortOrder": { - "type": "string", - "description": "Order of sorted results.", - "default": "ASCENDING", - "enum": [ - "ASCENDING", - "DESCENDING" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - } - }, - "parameterOrder": [ - "profileId" - ], - "response": { - "$ref": "PlacementGroupsListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "patch": { - "id": "dfareporting.placementGroups.patch", - "path": "userprofiles/{profileId}/placementGroups", - "httpMethod": "PATCH", - "description": "Updates an existing placement group. This method supports patch semantics.", - "parameters": { - "id": { - "type": "string", - "description": "Placement group ID.", - "required": true, - "format": "int64", - "location": "query" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "id" - ], - "request": { - "$ref": "PlacementGroup" - }, - "response": { - "$ref": "PlacementGroup" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "update": { - "id": "dfareporting.placementGroups.update", - "path": "userprofiles/{profileId}/placementGroups", - "httpMethod": "PUT", - "description": "Updates an existing placement group.", - "parameters": { - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId" - ], - "request": { - "$ref": "PlacementGroup" - }, - "response": { - "$ref": "PlacementGroup" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - } - } - }, - "placementStrategies": { - "methods": { - "delete": { - "id": "dfareporting.placementStrategies.delete", - "path": "userprofiles/{profileId}/placementStrategies/{id}", - "httpMethod": "DELETE", - "description": "Deletes an existing placement strategy.", - "parameters": { - "id": { - "type": "string", - "description": "Placement strategy ID.", - "required": true, - "format": "int64", - "location": "path" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "id" - ], - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "get": { - "id": "dfareporting.placementStrategies.get", - "path": "userprofiles/{profileId}/placementStrategies/{id}", - "httpMethod": "GET", - "description": "Gets one placement strategy by ID.", - "parameters": { - "id": { - "type": "string", - "description": "Placement strategy ID.", - "required": true, - "format": "int64", - "location": "path" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "id" - ], - "response": { - "$ref": "PlacementStrategy" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "insert": { - "id": "dfareporting.placementStrategies.insert", - "path": "userprofiles/{profileId}/placementStrategies", - "httpMethod": "POST", - "description": "Inserts a new placement strategy.", - "parameters": { - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId" - ], - "request": { - "$ref": "PlacementStrategy" - }, - "response": { - "$ref": "PlacementStrategy" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "list": { - "id": "dfareporting.placementStrategies.list", - "path": "userprofiles/{profileId}/placementStrategies", - "httpMethod": "GET", - "description": "Retrieves a list of placement strategies, possibly filtered. This method supports paging.", - "parameters": { - "ids": { - "type": "string", - "description": "Select only placement strategies with these IDs.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "Maximum number of results to return.", - "default": "1000", - "format": "int32", - "minimum": "0", - "maximum": "1000", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Value of the nextPageToken from the previous result page.", - "location": "query" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - }, - "searchString": { - "type": "string", - "description": "Allows searching for objects by name or ID. Wildcards (*) are allowed. For example, \"placementstrategy*2015\" will return objects with names like \"placementstrategy June 2015\", \"placementstrategy April 2015\", or simply \"placementstrategy 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"placementstrategy\" will match objects with name \"my placementstrategy\", \"placementstrategy 2015\", or simply \"placementstrategy\".", - "location": "query" - }, - "sortField": { - "type": "string", - "description": "Field by which to sort the list.", - "default": "ID", - "enum": [ - "ID", - "NAME" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - }, - "sortOrder": { - "type": "string", - "description": "Order of sorted results.", - "default": "ASCENDING", - "enum": [ - "ASCENDING", - "DESCENDING" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - } - }, - "parameterOrder": [ - "profileId" - ], - "response": { - "$ref": "PlacementStrategiesListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "patch": { - "id": "dfareporting.placementStrategies.patch", - "path": "userprofiles/{profileId}/placementStrategies", - "httpMethod": "PATCH", - "description": "Updates an existing placement strategy. This method supports patch semantics.", - "parameters": { - "id": { - "type": "string", - "description": "Placement strategy ID.", - "required": true, - "format": "int64", - "location": "query" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "id" - ], - "request": { - "$ref": "PlacementStrategy" - }, - "response": { - "$ref": "PlacementStrategy" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "update": { - "id": "dfareporting.placementStrategies.update", - "path": "userprofiles/{profileId}/placementStrategies", - "httpMethod": "PUT", - "description": "Updates an existing placement strategy.", - "parameters": { - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId" - ], - "request": { - "$ref": "PlacementStrategy" - }, - "response": { - "$ref": "PlacementStrategy" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - } - } - }, - "placements": { - "methods": { - "generatetags": { - "id": "dfareporting.placements.generatetags", - "path": "userprofiles/{profileId}/placements/generatetags", - "httpMethod": "POST", - "description": "Generates tags for a placement.", - "parameters": { - "campaignId": { - "type": "string", - "description": "Generate placements belonging to this campaign. This is a required field.", - "format": "int64", - "location": "query" - }, - "placementIds": { - "type": "string", - "description": "Generate tags for these placements.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - }, - "tagFormats": { - "type": "string", - "description": "Tag formats to generate for these placements.\n\nNote: PLACEMENT_TAG_STANDARD can only be generated for 1x1 placements.", - "enum": [ - "PLACEMENT_TAG_CLICK_COMMANDS", - "PLACEMENT_TAG_IFRAME_ILAYER", - "PLACEMENT_TAG_IFRAME_JAVASCRIPT", - "PLACEMENT_TAG_IFRAME_JAVASCRIPT_LEGACY", - "PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH", - "PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH_VAST_3", - "PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH_VAST_4", - "PLACEMENT_TAG_INTERNAL_REDIRECT", - "PLACEMENT_TAG_INTERSTITIAL_IFRAME_JAVASCRIPT", - "PLACEMENT_TAG_INTERSTITIAL_IFRAME_JAVASCRIPT_LEGACY", - "PLACEMENT_TAG_INTERSTITIAL_INTERNAL_REDIRECT", - "PLACEMENT_TAG_INTERSTITIAL_JAVASCRIPT", - "PLACEMENT_TAG_INTERSTITIAL_JAVASCRIPT_LEGACY", - "PLACEMENT_TAG_JAVASCRIPT", - "PLACEMENT_TAG_JAVASCRIPT_LEGACY", - "PLACEMENT_TAG_STANDARD", - "PLACEMENT_TAG_TRACKING", - "PLACEMENT_TAG_TRACKING_IFRAME", - "PLACEMENT_TAG_TRACKING_JAVASCRIPT" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ], - "repeated": true, - "location": "query" - } - }, - "parameterOrder": [ - "profileId" - ], - "response": { - "$ref": "PlacementsGenerateTagsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "get": { - "id": "dfareporting.placements.get", - "path": "userprofiles/{profileId}/placements/{id}", - "httpMethod": "GET", - "description": "Gets one placement by ID.", - "parameters": { - "id": { - "type": "string", - "description": "Placement ID.", - "required": true, - "format": "int64", - "location": "path" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "id" - ], - "response": { - "$ref": "Placement" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "insert": { - "id": "dfareporting.placements.insert", - "path": "userprofiles/{profileId}/placements", - "httpMethod": "POST", - "description": "Inserts a new placement.", - "parameters": { - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId" - ], - "request": { - "$ref": "Placement" - }, - "response": { - "$ref": "Placement" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "list": { - "id": "dfareporting.placements.list", - "path": "userprofiles/{profileId}/placements", - "httpMethod": "GET", - "description": "Retrieves a list of placements, possibly filtered. This method supports paging.", - "parameters": { - "advertiserIds": { - "type": "string", - "description": "Select only placements that belong to these advertisers.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "archived": { - "type": "boolean", - "description": "Select only archived placements. Don't set this field to select both archived and non-archived placements.", - "location": "query" - }, - "campaignIds": { - "type": "string", - "description": "Select only placements that belong to these campaigns.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "compatibilities": { - "type": "string", - "description": "Select only placements that are associated with these compatibilities. DISPLAY and DISPLAY_INTERSTITIAL refer to rendering either on desktop or on mobile devices for regular or interstitial ads respectively. APP and APP_INTERSTITIAL are for rendering in mobile apps. IN_STREAM_VIDEO refers to rendering in in-stream video ads developed with the VAST standard.", - "enum": [ - "APP", - "APP_INTERSTITIAL", - "DISPLAY", - "DISPLAY_INTERSTITIAL", - "IN_STREAM_VIDEO" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "" - ], - "repeated": true, - "location": "query" - }, - "contentCategoryIds": { - "type": "string", - "description": "Select only placements that are associated with these content categories.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "directorySiteIds": { - "type": "string", - "description": "Select only placements that are associated with these directory sites.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "groupIds": { - "type": "string", - "description": "Select only placements that belong to these placement groups.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "ids": { - "type": "string", - "description": "Select only placements with these IDs.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "maxEndDate": { - "type": "string", - "description": "Select only placements or placement groups whose end date is on or before the specified maxEndDate. The date should be formatted as \"yyyy-MM-dd\".", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "Maximum number of results to return.", - "default": "1000", - "format": "int32", - "minimum": "0", - "maximum": "1000", - "location": "query" - }, - "maxStartDate": { - "type": "string", - "description": "Select only placements or placement groups whose start date is on or before the specified maxStartDate. The date should be formatted as \"yyyy-MM-dd\".", - "location": "query" - }, - "minEndDate": { - "type": "string", - "description": "Select only placements or placement groups whose end date is on or after the specified minEndDate. The date should be formatted as \"yyyy-MM-dd\".", - "location": "query" - }, - "minStartDate": { - "type": "string", - "description": "Select only placements or placement groups whose start date is on or after the specified minStartDate. The date should be formatted as \"yyyy-MM-dd\".", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Value of the nextPageToken from the previous result page.", - "location": "query" - }, - "paymentSource": { - "type": "string", - "description": "Select only placements with this payment source.", - "enum": [ - "PLACEMENT_AGENCY_PAID", - "PLACEMENT_PUBLISHER_PAID" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - }, - "placementStrategyIds": { - "type": "string", - "description": "Select only placements that are associated with these placement strategies.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "pricingTypes": { - "type": "string", - "description": "Select only placements with these pricing types.", - "enum": [ - "PRICING_TYPE_CPA", - "PRICING_TYPE_CPC", - "PRICING_TYPE_CPM", - "PRICING_TYPE_CPM_ACTIVEVIEW", - "PRICING_TYPE_FLAT_RATE_CLICKS", - "PRICING_TYPE_FLAT_RATE_IMPRESSIONS" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "" - ], - "repeated": true, - "location": "query" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - }, - "searchString": { - "type": "string", - "description": "Allows searching for placements by name or ID. Wildcards (*) are allowed. For example, \"placement*2015\" will return placements with names like \"placement June 2015\", \"placement May 2015\", or simply \"placements 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"placement\" will match placements with name \"my placement\", \"placement 2015\", or simply \"placement\".", - "location": "query" - }, - "siteIds": { - "type": "string", - "description": "Select only placements that are associated with these sites.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "sizeIds": { - "type": "string", - "description": "Select only placements that are associated with these sizes.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "sortField": { - "type": "string", - "description": "Field by which to sort the list.", - "default": "ID", - "enum": [ - "ID", - "NAME" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - }, - "sortOrder": { - "type": "string", - "description": "Order of sorted results.", - "default": "ASCENDING", - "enum": [ - "ASCENDING", - "DESCENDING" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - } - }, - "parameterOrder": [ - "profileId" - ], - "response": { - "$ref": "PlacementsListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "patch": { - "id": "dfareporting.placements.patch", - "path": "userprofiles/{profileId}/placements", - "httpMethod": "PATCH", - "description": "Updates an existing placement. This method supports patch semantics.", - "parameters": { - "id": { - "type": "string", - "description": "Placement ID.", - "required": true, - "format": "int64", - "location": "query" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "id" - ], - "request": { - "$ref": "Placement" - }, - "response": { - "$ref": "Placement" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "update": { - "id": "dfareporting.placements.update", - "path": "userprofiles/{profileId}/placements", - "httpMethod": "PUT", - "description": "Updates an existing placement.", - "parameters": { - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId" - ], - "request": { - "$ref": "Placement" - }, - "response": { - "$ref": "Placement" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - } - } - }, - "platformTypes": { - "methods": { - "get": { - "id": "dfareporting.platformTypes.get", - "path": "userprofiles/{profileId}/platformTypes/{id}", - "httpMethod": "GET", - "description": "Gets one platform type by ID.", - "parameters": { - "id": { - "type": "string", - "description": "Platform type ID.", - "required": true, - "format": "int64", - "location": "path" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "id" - ], - "response": { - "$ref": "PlatformType" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "list": { - "id": "dfareporting.platformTypes.list", - "path": "userprofiles/{profileId}/platformTypes", - "httpMethod": "GET", - "description": "Retrieves a list of platform types.", - "parameters": { - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId" - ], - "response": { - "$ref": "PlatformTypesListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - } - } - }, - "postalCodes": { - "methods": { - "get": { - "id": "dfareporting.postalCodes.get", - "path": "userprofiles/{profileId}/postalCodes/{code}", - "httpMethod": "GET", - "description": "Gets one postal code by ID.", - "parameters": { - "code": { - "type": "string", - "description": "Postal code ID.", - "required": true, - "location": "path" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "code" - ], - "response": { - "$ref": "PostalCode" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "list": { - "id": "dfareporting.postalCodes.list", - "path": "userprofiles/{profileId}/postalCodes", - "httpMethod": "GET", - "description": "Retrieves a list of postal codes.", - "parameters": { - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId" - ], - "response": { - "$ref": "PostalCodesListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - } - } - }, - "projects": { - "methods": { - "get": { - "id": "dfareporting.projects.get", - "path": "userprofiles/{profileId}/projects/{id}", - "httpMethod": "GET", - "description": "Gets one project by ID.", - "parameters": { - "id": { - "type": "string", - "description": "Project ID.", - "required": true, - "format": "int64", - "location": "path" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "id" - ], - "response": { - "$ref": "Project" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "list": { - "id": "dfareporting.projects.list", - "path": "userprofiles/{profileId}/projects", - "httpMethod": "GET", - "description": "Retrieves a list of projects, possibly filtered. This method supports paging.", - "parameters": { - "advertiserIds": { - "type": "string", - "description": "Select only projects with these advertiser IDs.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "ids": { - "type": "string", - "description": "Select only projects with these IDs.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "Maximum number of results to return.", - "default": "1000", - "format": "int32", - "minimum": "0", - "maximum": "1000", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Value of the nextPageToken from the previous result page.", - "location": "query" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - }, - "searchString": { - "type": "string", - "description": "Allows searching for projects by name or ID. Wildcards (*) are allowed. For example, \"project*2015\" will return projects with names like \"project June 2015\", \"project April 2015\", or simply \"project 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"project\" will match projects with name \"my project\", \"project 2015\", or simply \"project\".", - "location": "query" - }, - "sortField": { - "type": "string", - "description": "Field by which to sort the list.", - "default": "ID", - "enum": [ - "ID", - "NAME" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - }, - "sortOrder": { - "type": "string", - "description": "Order of sorted results.", - "default": "ASCENDING", - "enum": [ - "ASCENDING", - "DESCENDING" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - } - }, - "parameterOrder": [ - "profileId" - ], - "response": { - "$ref": "ProjectsListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - } - } - }, - "regions": { - "methods": { - "list": { - "id": "dfareporting.regions.list", - "path": "userprofiles/{profileId}/regions", - "httpMethod": "GET", - "description": "Retrieves a list of regions.", - "parameters": { - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId" - ], - "response": { - "$ref": "RegionsListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - } - } - }, - "remarketingListShares": { - "methods": { - "get": { - "id": "dfareporting.remarketingListShares.get", - "path": "userprofiles/{profileId}/remarketingListShares/{remarketingListId}", - "httpMethod": "GET", - "description": "Gets one remarketing list share by remarketing list ID.", - "parameters": { - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - }, - "remarketingListId": { - "type": "string", - "description": "Remarketing list ID.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "remarketingListId" - ], - "response": { - "$ref": "RemarketingListShare" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "patch": { - "id": "dfareporting.remarketingListShares.patch", - "path": "userprofiles/{profileId}/remarketingListShares", - "httpMethod": "PATCH", - "description": "Updates an existing remarketing list share. This method supports patch semantics.", - "parameters": { - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - }, - "remarketingListId": { - "type": "string", - "description": "Remarketing list ID.", - "required": true, - "format": "int64", - "location": "query" - } - }, - "parameterOrder": [ - "profileId", - "remarketingListId" - ], - "request": { - "$ref": "RemarketingListShare" - }, - "response": { - "$ref": "RemarketingListShare" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "update": { - "id": "dfareporting.remarketingListShares.update", - "path": "userprofiles/{profileId}/remarketingListShares", - "httpMethod": "PUT", - "description": "Updates an existing remarketing list share.", - "parameters": { - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId" - ], - "request": { - "$ref": "RemarketingListShare" - }, - "response": { - "$ref": "RemarketingListShare" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - } - } - }, - "remarketingLists": { - "methods": { - "get": { - "id": "dfareporting.remarketingLists.get", - "path": "userprofiles/{profileId}/remarketingLists/{id}", - "httpMethod": "GET", - "description": "Gets one remarketing list by ID.", - "parameters": { - "id": { - "type": "string", - "description": "Remarketing list ID.", - "required": true, - "format": "int64", - "location": "path" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "id" - ], - "response": { - "$ref": "RemarketingList" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "insert": { - "id": "dfareporting.remarketingLists.insert", - "path": "userprofiles/{profileId}/remarketingLists", - "httpMethod": "POST", - "description": "Inserts a new remarketing list.", - "parameters": { - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId" - ], - "request": { - "$ref": "RemarketingList" - }, - "response": { - "$ref": "RemarketingList" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "list": { - "id": "dfareporting.remarketingLists.list", - "path": "userprofiles/{profileId}/remarketingLists", - "httpMethod": "GET", - "description": "Retrieves a list of remarketing lists, possibly filtered. This method supports paging.", - "parameters": { - "active": { - "type": "boolean", - "description": "Select only active or only inactive remarketing lists.", - "location": "query" - }, - "advertiserId": { - "type": "string", - "description": "Select only remarketing lists owned by this advertiser.", - "required": true, - "format": "int64", - "location": "query" - }, - "floodlightActivityId": { - "type": "string", - "description": "Select only remarketing lists that have this floodlight activity ID.", - "format": "int64", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "Maximum number of results to return.", - "default": "1000", - "format": "int32", - "minimum": "0", - "maximum": "1000", - "location": "query" - }, - "name": { - "type": "string", - "description": "Allows searching for objects by name or ID. Wildcards (*) are allowed. For example, \"remarketing list*2015\" will return objects with names like \"remarketing list June 2015\", \"remarketing list April 2015\", or simply \"remarketing list 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"remarketing list\" will match objects with name \"my remarketing list\", \"remarketing list 2015\", or simply \"remarketing list\".", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Value of the nextPageToken from the previous result page.", - "location": "query" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - }, - "sortField": { - "type": "string", - "description": "Field by which to sort the list.", - "default": "ID", - "enum": [ - "ID", - "NAME" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - }, - "sortOrder": { - "type": "string", - "description": "Order of sorted results.", - "default": "ASCENDING", - "enum": [ - "ASCENDING", - "DESCENDING" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - } - }, - "parameterOrder": [ - "profileId", - "advertiserId" - ], - "response": { - "$ref": "RemarketingListsListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "patch": { - "id": "dfareporting.remarketingLists.patch", - "path": "userprofiles/{profileId}/remarketingLists", - "httpMethod": "PATCH", - "description": "Updates an existing remarketing list. This method supports patch semantics.", - "parameters": { - "id": { - "type": "string", - "description": "Remarketing list ID.", - "required": true, - "format": "int64", - "location": "query" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "id" - ], - "request": { - "$ref": "RemarketingList" - }, - "response": { - "$ref": "RemarketingList" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "update": { - "id": "dfareporting.remarketingLists.update", - "path": "userprofiles/{profileId}/remarketingLists", - "httpMethod": "PUT", - "description": "Updates an existing remarketing list.", - "parameters": { - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId" - ], - "request": { - "$ref": "RemarketingList" - }, - "response": { - "$ref": "RemarketingList" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - } - } - }, - "reports": { - "methods": { - "delete": { - "id": "dfareporting.reports.delete", - "path": "userprofiles/{profileId}/reports/{reportId}", - "httpMethod": "DELETE", - "description": "Deletes a report by its ID.", - "parameters": { - "profileId": { - "type": "string", - "description": "The DFA user profile ID.", - "required": true, - "format": "int64", - "location": "path" - }, - "reportId": { - "type": "string", - "description": "The ID of the report.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "reportId" - ], - "scopes": [ - "https://www.googleapis.com/auth/dfareporting" - ] - }, - "get": { - "id": "dfareporting.reports.get", - "path": "userprofiles/{profileId}/reports/{reportId}", - "httpMethod": "GET", - "description": "Retrieves a report by its ID.", - "parameters": { - "profileId": { - "type": "string", - "description": "The DFA user profile ID.", - "required": true, - "format": "int64", - "location": "path" - }, - "reportId": { - "type": "string", - "description": "The ID of the report.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "reportId" - ], - "response": { - "$ref": "Report" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfareporting" - ] - }, - "insert": { - "id": "dfareporting.reports.insert", - "path": "userprofiles/{profileId}/reports", - "httpMethod": "POST", - "description": "Creates a report.", - "parameters": { - "profileId": { - "type": "string", - "description": "The DFA user profile ID.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId" - ], - "request": { - "$ref": "Report" - }, - "response": { - "$ref": "Report" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfareporting" - ] - }, - "list": { - "id": "dfareporting.reports.list", - "path": "userprofiles/{profileId}/reports", - "httpMethod": "GET", - "description": "Retrieves list of reports.", - "parameters": { - "maxResults": { - "type": "integer", - "description": "Maximum number of results to return.", - "default": "10", - "format": "int32", - "minimum": "0", - "maximum": "10", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "The value of the nextToken from the previous result page.", - "location": "query" - }, - "profileId": { - "type": "string", - "description": "The DFA user profile ID.", - "required": true, - "format": "int64", - "location": "path" - }, - "scope": { - "type": "string", - "description": "The scope that defines which results are returned.", - "default": "MINE", - "enum": [ - "ALL", - "MINE" - ], - "enumDescriptions": [ - "All reports in account.", - "My reports." - ], - "location": "query" - }, - "sortField": { - "type": "string", - "description": "The field by which to sort the list.", - "default": "LAST_MODIFIED_TIME", - "enum": [ - "ID", - "LAST_MODIFIED_TIME", - "NAME" - ], - "enumDescriptions": [ - "Sort by report ID.", - "Sort by 'lastModifiedTime' field.", - "Sort by name of reports." - ], - "location": "query" - }, - "sortOrder": { - "type": "string", - "description": "Order of sorted results.", - "default": "DESCENDING", - "enum": [ - "ASCENDING", - "DESCENDING" - ], - "enumDescriptions": [ - "Ascending order.", - "Descending order." - ], - "location": "query" - } - }, - "parameterOrder": [ - "profileId" - ], - "response": { - "$ref": "ReportList" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfareporting" - ] - }, - "patch": { - "id": "dfareporting.reports.patch", - "path": "userprofiles/{profileId}/reports/{reportId}", - "httpMethod": "PATCH", - "description": "Updates a report. This method supports patch semantics.", - "parameters": { - "profileId": { - "type": "string", - "description": "The DFA user profile ID.", - "required": true, - "format": "int64", - "location": "path" - }, - "reportId": { - "type": "string", - "description": "The ID of the report.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "reportId" - ], - "request": { - "$ref": "Report" - }, - "response": { - "$ref": "Report" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfareporting" - ] - }, - "run": { - "id": "dfareporting.reports.run", - "path": "userprofiles/{profileId}/reports/{reportId}/run", - "httpMethod": "POST", - "description": "Runs a report.", - "parameters": { - "profileId": { - "type": "string", - "description": "The DFA profile ID.", - "required": true, - "format": "int64", - "location": "path" - }, - "reportId": { - "type": "string", - "description": "The ID of the report.", - "required": true, - "format": "int64", - "location": "path" - }, - "synchronous": { - "type": "boolean", - "description": "If set and true, tries to run the report synchronously.", - "default": "false", - "location": "query" - } - }, - "parameterOrder": [ - "profileId", - "reportId" - ], - "response": { - "$ref": "File" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfareporting" - ] - }, - "update": { - "id": "dfareporting.reports.update", - "path": "userprofiles/{profileId}/reports/{reportId}", - "httpMethod": "PUT", - "description": "Updates a report.", - "parameters": { - "profileId": { - "type": "string", - "description": "The DFA user profile ID.", - "required": true, - "format": "int64", - "location": "path" - }, - "reportId": { - "type": "string", - "description": "The ID of the report.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "reportId" - ], - "request": { - "$ref": "Report" - }, - "response": { - "$ref": "Report" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfareporting" - ] - } - }, - "resources": { - "compatibleFields": { - "methods": { - "query": { - "id": "dfareporting.reports.compatibleFields.query", - "path": "userprofiles/{profileId}/reports/compatiblefields/query", - "httpMethod": "POST", - "description": "Returns the fields that are compatible to be selected in the respective sections of a report criteria, given the fields already selected in the input report and user permissions.", - "parameters": { - "profileId": { - "type": "string", - "description": "The DFA user profile ID.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId" - ], - "request": { - "$ref": "Report" - }, - "response": { - "$ref": "CompatibleFields" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfareporting" - ] - } - } }, "files": { - "methods": { - "get": { - "id": "dfareporting.reports.files.get", - "path": "userprofiles/{profileId}/reports/{reportId}/files/{fileId}", - "httpMethod": "GET", - "description": "Retrieves a report file. This method supports media download.", - "parameters": { - "fileId": { - "type": "string", - "description": "The ID of the report file.", - "required": true, - "format": "int64", - "location": "path" + "methods": { + "get": { + "description": "Retrieves a report file by its report ID and file ID. This method supports media download.", + "httpMethod": "GET", + "id": "dfareporting.files.get", + "parameterOrder": [ + "reportId", + "fileId" + ], + "parameters": { + "fileId": { + "description": "The ID of the report file.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "reportId": { + "description": "The ID of the report.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "reports/{reportId}/files/{fileId}", + "response": { + "$ref": "File" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfareporting" + ], + "supportsMediaDownload": true }, - "profileId": { - "type": "string", - "description": "The DFA profile ID.", - "required": true, - "format": "int64", - "location": "path" - }, - "reportId": { - "type": "string", - "description": "The ID of the report.", - "required": true, - "format": "int64", - "location": "path" + "list": { + "description": "Lists files for a user profile.", + "httpMethod": "GET", + "id": "dfareporting.files.list", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "maxResults": { + "default": "10", + "description": "Maximum number of results to return.", + "format": "int32", + "location": "query", + "maximum": "10", + "minimum": "0", + "type": "integer" + }, + "pageToken": { + "description": "The value of the nextToken from the previous result page.", + "location": "query", + "type": "string" + }, + "profileId": { + "description": "The DFA profile ID.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "scope": { + "default": "MINE", + "description": "The scope that defines which results are returned.", + "enum": [ + "ALL", + "MINE", + "SHARED_WITH_ME" + ], + "enumDescriptions": [ + "All files in account.", + "My files.", + "Files shared with me." + ], + "location": "query", + "type": "string" + }, + "sortField": { + "default": "LAST_MODIFIED_TIME", + "description": "The field by which to sort the list.", + "enum": [ + "ID", + "LAST_MODIFIED_TIME" + ], + "enumDescriptions": [ + "Sort by file ID.", + "Sort by 'lastmodifiedAt' field." + ], + "location": "query", + "type": "string" + }, + "sortOrder": { + "default": "DESCENDING", + "description": "Order of sorted results.", + "enum": [ + "ASCENDING", + "DESCENDING" + ], + "enumDescriptions": [ + "Ascending order.", + "Descending order." + ], + "location": "query", + "type": "string" + } + }, + "path": "userprofiles/{profileId}/files", + "response": { + "$ref": "FileList" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfareporting" + ] + } + } + }, + "floodlightActivities": { + "methods": { + "delete": { + "description": "Deletes an existing floodlight activity.", + "httpMethod": "DELETE", + "id": "dfareporting.floodlightActivities.delete", + "parameterOrder": [ + "profileId", + "id" + ], + "parameters": { + "id": { + "description": "Floodlight activity ID.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/floodlightActivities/{id}", + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "generatetag": { + "description": "Generates a tag for a floodlight activity.", + "httpMethod": "POST", + "id": "dfareporting.floodlightActivities.generatetag", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "floodlightActivityId": { + "description": "Floodlight activity ID for which we want to generate a tag.", + "format": "int64", + "location": "query", + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/floodlightActivities/generatetag", + "response": { + "$ref": "FloodlightActivitiesGenerateTagResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "get": { + "description": "Gets one floodlight activity by ID.", + "httpMethod": "GET", + "id": "dfareporting.floodlightActivities.get", + "parameterOrder": [ + "profileId", + "id" + ], + "parameters": { + "id": { + "description": "Floodlight activity ID.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/floodlightActivities/{id}", + "response": { + "$ref": "FloodlightActivity" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "insert": { + "description": "Inserts a new floodlight activity.", + "httpMethod": "POST", + "id": "dfareporting.floodlightActivities.insert", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/floodlightActivities", + "request": { + "$ref": "FloodlightActivity" + }, + "response": { + "$ref": "FloodlightActivity" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "description": "Retrieves a list of floodlight activities, possibly filtered. This method supports paging.", + "httpMethod": "GET", + "id": "dfareporting.floodlightActivities.list", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "advertiserId": { + "description": "Select only floodlight activities for the specified advertiser ID. Must specify either ids, advertiserId, or floodlightConfigurationId for a non-empty result.", + "format": "int64", + "location": "query", + "type": "string" + }, + "floodlightActivityGroupIds": { + "description": "Select only floodlight activities with the specified floodlight activity group IDs.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "floodlightActivityGroupName": { + "description": "Select only floodlight activities with the specified floodlight activity group name.", + "location": "query", + "type": "string" + }, + "floodlightActivityGroupTagString": { + "description": "Select only floodlight activities with the specified floodlight activity group tag string.", + "location": "query", + "type": "string" + }, + "floodlightActivityGroupType": { + "description": "Select only floodlight activities with the specified floodlight activity group type.", + "enum": [ + "COUNTER", + "SALE" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + }, + "floodlightConfigurationId": { + "description": "Select only floodlight activities for the specified floodlight configuration ID. Must specify either ids, advertiserId, or floodlightConfigurationId for a non-empty result.", + "format": "int64", + "location": "query", + "type": "string" + }, + "ids": { + "description": "Select only floodlight activities with the specified IDs. Must specify either ids, advertiserId, or floodlightConfigurationId for a non-empty result.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "maxResults": { + "default": "1000", + "description": "Maximum number of results to return.", + "format": "int32", + "location": "query", + "maximum": "1000", + "minimum": "0", + "type": "integer" + }, + "pageToken": { + "description": "Value of the nextPageToken from the previous result page.", + "location": "query", + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "searchString": { + "description": "Allows searching for objects by name or ID. Wildcards (*) are allowed. For example, \"floodlightactivity*2015\" will return objects with names like \"floodlightactivity June 2015\", \"floodlightactivity April 2015\", or simply \"floodlightactivity 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"floodlightactivity\" will match objects with name \"my floodlightactivity activity\", \"floodlightactivity 2015\", or simply \"floodlightactivity\".", + "location": "query", + "type": "string" + }, + "sortField": { + "default": "ID", + "description": "Field by which to sort the list.", + "enum": [ + "ID", + "NAME" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + }, + "sortOrder": { + "default": "ASCENDING", + "description": "Order of sorted results.", + "enum": [ + "ASCENDING", + "DESCENDING" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + }, + "tagString": { + "description": "Select only floodlight activities with the specified tag string.", + "location": "query", + "type": "string" + } + }, + "path": "userprofiles/{profileId}/floodlightActivities", + "response": { + "$ref": "FloodlightActivitiesListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "patch": { + "description": "Updates an existing floodlight activity. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "dfareporting.floodlightActivities.patch", + "parameterOrder": [ + "profileId", + "id" + ], + "parameters": { + "id": { + "description": "Floodlight activity ID.", + "format": "int64", + "location": "query", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/floodlightActivities", + "request": { + "$ref": "FloodlightActivity" + }, + "response": { + "$ref": "FloodlightActivity" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "update": { + "description": "Updates an existing floodlight activity.", + "httpMethod": "PUT", + "id": "dfareporting.floodlightActivities.update", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/floodlightActivities", + "request": { + "$ref": "FloodlightActivity" + }, + "response": { + "$ref": "FloodlightActivity" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "floodlightActivityGroups": { + "methods": { + "get": { + "description": "Gets one floodlight activity group by ID.", + "httpMethod": "GET", + "id": "dfareporting.floodlightActivityGroups.get", + "parameterOrder": [ + "profileId", + "id" + ], + "parameters": { + "id": { + "description": "Floodlight activity Group ID.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/floodlightActivityGroups/{id}", + "response": { + "$ref": "FloodlightActivityGroup" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "insert": { + "description": "Inserts a new floodlight activity group.", + "httpMethod": "POST", + "id": "dfareporting.floodlightActivityGroups.insert", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/floodlightActivityGroups", + "request": { + "$ref": "FloodlightActivityGroup" + }, + "response": { + "$ref": "FloodlightActivityGroup" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "description": "Retrieves a list of floodlight activity groups, possibly filtered. This method supports paging.", + "httpMethod": "GET", + "id": "dfareporting.floodlightActivityGroups.list", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "advertiserId": { + "description": "Select only floodlight activity groups with the specified advertiser ID. Must specify either advertiserId or floodlightConfigurationId for a non-empty result.", + "format": "int64", + "location": "query", + "type": "string" + }, + "floodlightConfigurationId": { + "description": "Select only floodlight activity groups with the specified floodlight configuration ID. Must specify either advertiserId, or floodlightConfigurationId for a non-empty result.", + "format": "int64", + "location": "query", + "type": "string" + }, + "ids": { + "description": "Select only floodlight activity groups with the specified IDs. Must specify either advertiserId or floodlightConfigurationId for a non-empty result.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "maxResults": { + "default": "1000", + "description": "Maximum number of results to return.", + "format": "int32", + "location": "query", + "maximum": "1000", + "minimum": "0", + "type": "integer" + }, + "pageToken": { + "description": "Value of the nextPageToken from the previous result page.", + "location": "query", + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "searchString": { + "description": "Allows searching for objects by name or ID. Wildcards (*) are allowed. For example, \"floodlightactivitygroup*2015\" will return objects with names like \"floodlightactivitygroup June 2015\", \"floodlightactivitygroup April 2015\", or simply \"floodlightactivitygroup 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"floodlightactivitygroup\" will match objects with name \"my floodlightactivitygroup activity\", \"floodlightactivitygroup 2015\", or simply \"floodlightactivitygroup\".", + "location": "query", + "type": "string" + }, + "sortField": { + "default": "ID", + "description": "Field by which to sort the list.", + "enum": [ + "ID", + "NAME" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + }, + "sortOrder": { + "default": "ASCENDING", + "description": "Order of sorted results.", + "enum": [ + "ASCENDING", + "DESCENDING" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + }, + "type": { + "description": "Select only floodlight activity groups with the specified floodlight activity group type.", + "enum": [ + "COUNTER", + "SALE" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + } + }, + "path": "userprofiles/{profileId}/floodlightActivityGroups", + "response": { + "$ref": "FloodlightActivityGroupsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "patch": { + "description": "Updates an existing floodlight activity group. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "dfareporting.floodlightActivityGroups.patch", + "parameterOrder": [ + "profileId", + "id" + ], + "parameters": { + "id": { + "description": "Floodlight activity Group ID.", + "format": "int64", + "location": "query", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/floodlightActivityGroups", + "request": { + "$ref": "FloodlightActivityGroup" + }, + "response": { + "$ref": "FloodlightActivityGroup" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "update": { + "description": "Updates an existing floodlight activity group.", + "httpMethod": "PUT", + "id": "dfareporting.floodlightActivityGroups.update", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/floodlightActivityGroups", + "request": { + "$ref": "FloodlightActivityGroup" + }, + "response": { + "$ref": "FloodlightActivityGroup" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "floodlightConfigurations": { + "methods": { + "get": { + "description": "Gets one floodlight configuration by ID.", + "httpMethod": "GET", + "id": "dfareporting.floodlightConfigurations.get", + "parameterOrder": [ + "profileId", + "id" + ], + "parameters": { + "id": { + "description": "Floodlight configuration ID.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/floodlightConfigurations/{id}", + "response": { + "$ref": "FloodlightConfiguration" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "description": "Retrieves a list of floodlight configurations, possibly filtered.", + "httpMethod": "GET", + "id": "dfareporting.floodlightConfigurations.list", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "ids": { + "description": "Set of IDs of floodlight configurations to retrieve. Required field; otherwise an empty list will be returned.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/floodlightConfigurations", + "response": { + "$ref": "FloodlightConfigurationsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "patch": { + "description": "Updates an existing floodlight configuration. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "dfareporting.floodlightConfigurations.patch", + "parameterOrder": [ + "profileId", + "id" + ], + "parameters": { + "id": { + "description": "Floodlight configuration ID.", + "format": "int64", + "location": "query", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/floodlightConfigurations", + "request": { + "$ref": "FloodlightConfiguration" + }, + "response": { + "$ref": "FloodlightConfiguration" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "update": { + "description": "Updates an existing floodlight configuration.", + "httpMethod": "PUT", + "id": "dfareporting.floodlightConfigurations.update", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/floodlightConfigurations", + "request": { + "$ref": "FloodlightConfiguration" + }, + "response": { + "$ref": "FloodlightConfiguration" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "inventoryItems": { + "methods": { + "get": { + "description": "Gets one inventory item by ID.", + "httpMethod": "GET", + "id": "dfareporting.inventoryItems.get", + "parameterOrder": [ + "profileId", + "projectId", + "id" + ], + "parameters": { + "id": { + "description": "Inventory item ID.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "projectId": { + "description": "Project ID for order documents.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/projects/{projectId}/inventoryItems/{id}", + "response": { + "$ref": "InventoryItem" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "description": "Retrieves a list of inventory items, possibly filtered. This method supports paging.", + "httpMethod": "GET", + "id": "dfareporting.inventoryItems.list", + "parameterOrder": [ + "profileId", + "projectId" + ], + "parameters": { + "ids": { + "description": "Select only inventory items with these IDs.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "inPlan": { + "description": "Select only inventory items that are in plan.", + "location": "query", + "type": "boolean" + }, + "maxResults": { + "default": "1000", + "description": "Maximum number of results to return.", + "format": "int32", + "location": "query", + "maximum": "1000", + "minimum": "0", + "type": "integer" + }, + "orderId": { + "description": "Select only inventory items that belong to specified orders.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "pageToken": { + "description": "Value of the nextPageToken from the previous result page.", + "location": "query", + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "projectId": { + "description": "Project ID for order documents.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "siteId": { + "description": "Select only inventory items that are associated with these sites.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "sortField": { + "default": "ID", + "description": "Field by which to sort the list.", + "enum": [ + "ID", + "NAME" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + }, + "sortOrder": { + "default": "ASCENDING", + "description": "Order of sorted results.", + "enum": [ + "ASCENDING", + "DESCENDING" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + }, + "type": { + "description": "Select only inventory items with this type.", + "enum": [ + "PLANNING_PLACEMENT_TYPE_CREDIT", + "PLANNING_PLACEMENT_TYPE_REGULAR" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + } + }, + "path": "userprofiles/{profileId}/projects/{projectId}/inventoryItems", + "response": { + "$ref": "InventoryItemsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "landingPages": { + "methods": { + "delete": { + "description": "Deletes an existing campaign landing page.", + "httpMethod": "DELETE", + "id": "dfareporting.landingPages.delete", + "parameterOrder": [ + "profileId", + "campaignId", + "id" + ], + "parameters": { + "campaignId": { + "description": "Landing page campaign ID.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "id": { + "description": "Landing page ID.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/campaigns/{campaignId}/landingPages/{id}", + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "get": { + "description": "Gets one campaign landing page by ID.", + "httpMethod": "GET", + "id": "dfareporting.landingPages.get", + "parameterOrder": [ + "profileId", + "campaignId", + "id" + ], + "parameters": { + "campaignId": { + "description": "Landing page campaign ID.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "id": { + "description": "Landing page ID.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/campaigns/{campaignId}/landingPages/{id}", + "response": { + "$ref": "LandingPage" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "insert": { + "description": "Inserts a new landing page for the specified campaign.", + "httpMethod": "POST", + "id": "dfareporting.landingPages.insert", + "parameterOrder": [ + "profileId", + "campaignId" + ], + "parameters": { + "campaignId": { + "description": "Landing page campaign ID.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/campaigns/{campaignId}/landingPages", + "request": { + "$ref": "LandingPage" + }, + "response": { + "$ref": "LandingPage" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "description": "Retrieves the list of landing pages for the specified campaign.", + "httpMethod": "GET", + "id": "dfareporting.landingPages.list", + "parameterOrder": [ + "profileId", + "campaignId" + ], + "parameters": { + "campaignId": { + "description": "Landing page campaign ID.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/campaigns/{campaignId}/landingPages", + "response": { + "$ref": "LandingPagesListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "patch": { + "description": "Updates an existing campaign landing page. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "dfareporting.landingPages.patch", + "parameterOrder": [ + "profileId", + "campaignId", + "id" + ], + "parameters": { + "campaignId": { + "description": "Landing page campaign ID.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "id": { + "description": "Landing page ID.", + "format": "int64", + "location": "query", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/campaigns/{campaignId}/landingPages", + "request": { + "$ref": "LandingPage" + }, + "response": { + "$ref": "LandingPage" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "update": { + "description": "Updates an existing campaign landing page.", + "httpMethod": "PUT", + "id": "dfareporting.landingPages.update", + "parameterOrder": [ + "profileId", + "campaignId" + ], + "parameters": { + "campaignId": { + "description": "Landing page campaign ID.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/campaigns/{campaignId}/landingPages", + "request": { + "$ref": "LandingPage" + }, + "response": { + "$ref": "LandingPage" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "languages": { + "methods": { + "list": { + "description": "Retrieves a list of languages.", + "httpMethod": "GET", + "id": "dfareporting.languages.list", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/languages", + "response": { + "$ref": "LanguagesListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "metros": { + "methods": { + "list": { + "description": "Retrieves a list of metros.", + "httpMethod": "GET", + "id": "dfareporting.metros.list", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/metros", + "response": { + "$ref": "MetrosListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "mobileCarriers": { + "methods": { + "get": { + "description": "Gets one mobile carrier by ID.", + "httpMethod": "GET", + "id": "dfareporting.mobileCarriers.get", + "parameterOrder": [ + "profileId", + "id" + ], + "parameters": { + "id": { + "description": "Mobile carrier ID.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/mobileCarriers/{id}", + "response": { + "$ref": "MobileCarrier" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "description": "Retrieves a list of mobile carriers.", + "httpMethod": "GET", + "id": "dfareporting.mobileCarriers.list", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/mobileCarriers", + "response": { + "$ref": "MobileCarriersListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "operatingSystemVersions": { + "methods": { + "get": { + "description": "Gets one operating system version by ID.", + "httpMethod": "GET", + "id": "dfareporting.operatingSystemVersions.get", + "parameterOrder": [ + "profileId", + "id" + ], + "parameters": { + "id": { + "description": "Operating system version ID.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/operatingSystemVersions/{id}", + "response": { + "$ref": "OperatingSystemVersion" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "description": "Retrieves a list of operating system versions.", + "httpMethod": "GET", + "id": "dfareporting.operatingSystemVersions.list", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/operatingSystemVersions", + "response": { + "$ref": "OperatingSystemVersionsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "operatingSystems": { + "methods": { + "get": { + "description": "Gets one operating system by DART ID.", + "httpMethod": "GET", + "id": "dfareporting.operatingSystems.get", + "parameterOrder": [ + "profileId", + "dartId" + ], + "parameters": { + "dartId": { + "description": "Operating system DART ID.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/operatingSystems/{dartId}", + "response": { + "$ref": "OperatingSystem" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "description": "Retrieves a list of operating systems.", + "httpMethod": "GET", + "id": "dfareporting.operatingSystems.list", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/operatingSystems", + "response": { + "$ref": "OperatingSystemsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "orderDocuments": { + "methods": { + "get": { + "description": "Gets one order document by ID.", + "httpMethod": "GET", + "id": "dfareporting.orderDocuments.get", + "parameterOrder": [ + "profileId", + "projectId", + "id" + ], + "parameters": { + "id": { + "description": "Order document ID.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "projectId": { + "description": "Project ID for order documents.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/projects/{projectId}/orderDocuments/{id}", + "response": { + "$ref": "OrderDocument" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "description": "Retrieves a list of order documents, possibly filtered. This method supports paging.", + "httpMethod": "GET", + "id": "dfareporting.orderDocuments.list", + "parameterOrder": [ + "profileId", + "projectId" + ], + "parameters": { + "approved": { + "description": "Select only order documents that have been approved by at least one user.", + "location": "query", + "type": "boolean" + }, + "ids": { + "description": "Select only order documents with these IDs.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "maxResults": { + "default": "1000", + "description": "Maximum number of results to return.", + "format": "int32", + "location": "query", + "maximum": "1000", + "minimum": "0", + "type": "integer" + }, + "orderId": { + "description": "Select only order documents for specified orders.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "pageToken": { + "description": "Value of the nextPageToken from the previous result page.", + "location": "query", + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "projectId": { + "description": "Project ID for order documents.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "searchString": { + "description": "Allows searching for order documents by name or ID. Wildcards (*) are allowed. For example, \"orderdocument*2015\" will return order documents with names like \"orderdocument June 2015\", \"orderdocument April 2015\", or simply \"orderdocument 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"orderdocument\" will match order documents with name \"my orderdocument\", \"orderdocument 2015\", or simply \"orderdocument\".", + "location": "query", + "type": "string" + }, + "siteId": { + "description": "Select only order documents that are associated with these sites.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "sortField": { + "default": "ID", + "description": "Field by which to sort the list.", + "enum": [ + "ID", + "NAME" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + }, + "sortOrder": { + "default": "ASCENDING", + "description": "Order of sorted results.", + "enum": [ + "ASCENDING", + "DESCENDING" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + } + }, + "path": "userprofiles/{profileId}/projects/{projectId}/orderDocuments", + "response": { + "$ref": "OrderDocumentsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "orders": { + "methods": { + "get": { + "description": "Gets one order by ID.", + "httpMethod": "GET", + "id": "dfareporting.orders.get", + "parameterOrder": [ + "profileId", + "projectId", + "id" + ], + "parameters": { + "id": { + "description": "Order ID.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "projectId": { + "description": "Project ID for orders.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/projects/{projectId}/orders/{id}", + "response": { + "$ref": "Order" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "description": "Retrieves a list of orders, possibly filtered. This method supports paging.", + "httpMethod": "GET", + "id": "dfareporting.orders.list", + "parameterOrder": [ + "profileId", + "projectId" + ], + "parameters": { + "ids": { + "description": "Select only orders with these IDs.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "maxResults": { + "default": "1000", + "description": "Maximum number of results to return.", + "format": "int32", + "location": "query", + "maximum": "1000", + "minimum": "0", + "type": "integer" + }, + "pageToken": { + "description": "Value of the nextPageToken from the previous result page.", + "location": "query", + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "projectId": { + "description": "Project ID for orders.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "searchString": { + "description": "Allows searching for orders by name or ID. Wildcards (*) are allowed. For example, \"order*2015\" will return orders with names like \"order June 2015\", \"order April 2015\", or simply \"order 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"order\" will match orders with name \"my order\", \"order 2015\", or simply \"order\".", + "location": "query", + "type": "string" + }, + "siteId": { + "description": "Select only orders that are associated with these site IDs.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "sortField": { + "default": "ID", + "description": "Field by which to sort the list.", + "enum": [ + "ID", + "NAME" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + }, + "sortOrder": { + "default": "ASCENDING", + "description": "Order of sorted results.", + "enum": [ + "ASCENDING", + "DESCENDING" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + } + }, + "path": "userprofiles/{profileId}/projects/{projectId}/orders", + "response": { + "$ref": "OrdersListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "placementGroups": { + "methods": { + "get": { + "description": "Gets one placement group by ID.", + "httpMethod": "GET", + "id": "dfareporting.placementGroups.get", + "parameterOrder": [ + "profileId", + "id" + ], + "parameters": { + "id": { + "description": "Placement group ID.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/placementGroups/{id}", + "response": { + "$ref": "PlacementGroup" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "insert": { + "description": "Inserts a new placement group.", + "httpMethod": "POST", + "id": "dfareporting.placementGroups.insert", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/placementGroups", + "request": { + "$ref": "PlacementGroup" + }, + "response": { + "$ref": "PlacementGroup" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "description": "Retrieves a list of placement groups, possibly filtered. This method supports paging.", + "httpMethod": "GET", + "id": "dfareporting.placementGroups.list", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "advertiserIds": { + "description": "Select only placement groups that belong to these advertisers.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "archived": { + "description": "Select only archived placements. Don't set this field to select both archived and non-archived placements.", + "location": "query", + "type": "boolean" + }, + "campaignIds": { + "description": "Select only placement groups that belong to these campaigns.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "contentCategoryIds": { + "description": "Select only placement groups that are associated with these content categories.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "directorySiteIds": { + "description": "Select only placement groups that are associated with these directory sites.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "ids": { + "description": "Select only placement groups with these IDs.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "maxEndDate": { + "description": "Select only placements or placement groups whose end date is on or before the specified maxEndDate. The date should be formatted as \"yyyy-MM-dd\".", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "800", + "description": "Maximum number of results to return.", + "format": "int32", + "location": "query", + "maximum": "800", + "minimum": "0", + "type": "integer" + }, + "maxStartDate": { + "description": "Select only placements or placement groups whose start date is on or before the specified maxStartDate. The date should be formatted as \"yyyy-MM-dd\".", + "location": "query", + "type": "string" + }, + "minEndDate": { + "description": "Select only placements or placement groups whose end date is on or after the specified minEndDate. The date should be formatted as \"yyyy-MM-dd\".", + "location": "query", + "type": "string" + }, + "minStartDate": { + "description": "Select only placements or placement groups whose start date is on or after the specified minStartDate. The date should be formatted as \"yyyy-MM-dd\".", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Value of the nextPageToken from the previous result page.", + "location": "query", + "type": "string" + }, + "placementGroupType": { + "description": "Select only placement groups belonging with this group type. A package is a simple group of placements that acts as a single pricing point for a group of tags. A roadblock is a group of placements that not only acts as a single pricing point but also assumes that all the tags in it will be served at the same time. A roadblock requires one of its assigned placements to be marked as primary for reporting.", + "enum": [ + "PLACEMENT_PACKAGE", + "PLACEMENT_ROADBLOCK" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + }, + "placementStrategyIds": { + "description": "Select only placement groups that are associated with these placement strategies.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "pricingTypes": { + "description": "Select only placement groups with these pricing types.", + "enum": [ + "PRICING_TYPE_CPA", + "PRICING_TYPE_CPC", + "PRICING_TYPE_CPM", + "PRICING_TYPE_CPM_ACTIVEVIEW", + "PRICING_TYPE_FLAT_RATE_CLICKS", + "PRICING_TYPE_FLAT_RATE_IMPRESSIONS" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "" + ], + "location": "query", + "repeated": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "searchString": { + "description": "Allows searching for placement groups by name or ID. Wildcards (*) are allowed. For example, \"placement*2015\" will return placement groups with names like \"placement group June 2015\", \"placement group May 2015\", or simply \"placements 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"placementgroup\" will match placement groups with name \"my placementgroup\", \"placementgroup 2015\", or simply \"placementgroup\".", + "location": "query", + "type": "string" + }, + "siteIds": { + "description": "Select only placement groups that are associated with these sites.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "sortField": { + "default": "ID", + "description": "Field by which to sort the list.", + "enum": [ + "ID", + "NAME" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + }, + "sortOrder": { + "default": "ASCENDING", + "description": "Order of sorted results.", + "enum": [ + "ASCENDING", + "DESCENDING" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + } + }, + "path": "userprofiles/{profileId}/placementGroups", + "response": { + "$ref": "PlacementGroupsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "patch": { + "description": "Updates an existing placement group. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "dfareporting.placementGroups.patch", + "parameterOrder": [ + "profileId", + "id" + ], + "parameters": { + "id": { + "description": "Placement group ID.", + "format": "int64", + "location": "query", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/placementGroups", + "request": { + "$ref": "PlacementGroup" + }, + "response": { + "$ref": "PlacementGroup" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "update": { + "description": "Updates an existing placement group.", + "httpMethod": "PUT", + "id": "dfareporting.placementGroups.update", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/placementGroups", + "request": { + "$ref": "PlacementGroup" + }, + "response": { + "$ref": "PlacementGroup" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "placementStrategies": { + "methods": { + "delete": { + "description": "Deletes an existing placement strategy.", + "httpMethod": "DELETE", + "id": "dfareporting.placementStrategies.delete", + "parameterOrder": [ + "profileId", + "id" + ], + "parameters": { + "id": { + "description": "Placement strategy ID.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/placementStrategies/{id}", + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "get": { + "description": "Gets one placement strategy by ID.", + "httpMethod": "GET", + "id": "dfareporting.placementStrategies.get", + "parameterOrder": [ + "profileId", + "id" + ], + "parameters": { + "id": { + "description": "Placement strategy ID.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/placementStrategies/{id}", + "response": { + "$ref": "PlacementStrategy" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "insert": { + "description": "Inserts a new placement strategy.", + "httpMethod": "POST", + "id": "dfareporting.placementStrategies.insert", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/placementStrategies", + "request": { + "$ref": "PlacementStrategy" + }, + "response": { + "$ref": "PlacementStrategy" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "description": "Retrieves a list of placement strategies, possibly filtered. This method supports paging.", + "httpMethod": "GET", + "id": "dfareporting.placementStrategies.list", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "ids": { + "description": "Select only placement strategies with these IDs.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "maxResults": { + "default": "1000", + "description": "Maximum number of results to return.", + "format": "int32", + "location": "query", + "maximum": "1000", + "minimum": "0", + "type": "integer" + }, + "pageToken": { + "description": "Value of the nextPageToken from the previous result page.", + "location": "query", + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "searchString": { + "description": "Allows searching for objects by name or ID. Wildcards (*) are allowed. For example, \"placementstrategy*2015\" will return objects with names like \"placementstrategy June 2015\", \"placementstrategy April 2015\", or simply \"placementstrategy 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"placementstrategy\" will match objects with name \"my placementstrategy\", \"placementstrategy 2015\", or simply \"placementstrategy\".", + "location": "query", + "type": "string" + }, + "sortField": { + "default": "ID", + "description": "Field by which to sort the list.", + "enum": [ + "ID", + "NAME" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + }, + "sortOrder": { + "default": "ASCENDING", + "description": "Order of sorted results.", + "enum": [ + "ASCENDING", + "DESCENDING" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + } + }, + "path": "userprofiles/{profileId}/placementStrategies", + "response": { + "$ref": "PlacementStrategiesListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "patch": { + "description": "Updates an existing placement strategy. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "dfareporting.placementStrategies.patch", + "parameterOrder": [ + "profileId", + "id" + ], + "parameters": { + "id": { + "description": "Placement strategy ID.", + "format": "int64", + "location": "query", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/placementStrategies", + "request": { + "$ref": "PlacementStrategy" + }, + "response": { + "$ref": "PlacementStrategy" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "update": { + "description": "Updates an existing placement strategy.", + "httpMethod": "PUT", + "id": "dfareporting.placementStrategies.update", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/placementStrategies", + "request": { + "$ref": "PlacementStrategy" + }, + "response": { + "$ref": "PlacementStrategy" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "placements": { + "methods": { + "generatetags": { + "description": "Generates tags for a placement.", + "httpMethod": "POST", + "id": "dfareporting.placements.generatetags", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "campaignId": { + "description": "Generate placements belonging to this campaign. This is a required field.", + "format": "int64", + "location": "query", + "type": "string" + }, + "placementIds": { + "description": "Generate tags for these placements.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "tagFormats": { + "description": "Tag formats to generate for these placements.\n\nNote: PLACEMENT_TAG_STANDARD can only be generated for 1x1 placements.", + "enum": [ + "PLACEMENT_TAG_CLICK_COMMANDS", + "PLACEMENT_TAG_IFRAME_ILAYER", + "PLACEMENT_TAG_IFRAME_JAVASCRIPT", + "PLACEMENT_TAG_IFRAME_JAVASCRIPT_LEGACY", + "PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH", + "PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH_VAST_3", + "PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH_VAST_4", + "PLACEMENT_TAG_INTERNAL_REDIRECT", + "PLACEMENT_TAG_INTERSTITIAL_IFRAME_JAVASCRIPT", + "PLACEMENT_TAG_INTERSTITIAL_IFRAME_JAVASCRIPT_LEGACY", + "PLACEMENT_TAG_INTERSTITIAL_INTERNAL_REDIRECT", + "PLACEMENT_TAG_INTERSTITIAL_JAVASCRIPT", + "PLACEMENT_TAG_INTERSTITIAL_JAVASCRIPT_LEGACY", + "PLACEMENT_TAG_JAVASCRIPT", + "PLACEMENT_TAG_JAVASCRIPT_LEGACY", + "PLACEMENT_TAG_STANDARD", + "PLACEMENT_TAG_TRACKING", + "PLACEMENT_TAG_TRACKING_IFRAME", + "PLACEMENT_TAG_TRACKING_JAVASCRIPT" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "location": "query", + "repeated": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/placements/generatetags", + "response": { + "$ref": "PlacementsGenerateTagsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "get": { + "description": "Gets one placement by ID.", + "httpMethod": "GET", + "id": "dfareporting.placements.get", + "parameterOrder": [ + "profileId", + "id" + ], + "parameters": { + "id": { + "description": "Placement ID.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/placements/{id}", + "response": { + "$ref": "Placement" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "insert": { + "description": "Inserts a new placement.", + "httpMethod": "POST", + "id": "dfareporting.placements.insert", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/placements", + "request": { + "$ref": "Placement" + }, + "response": { + "$ref": "Placement" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "description": "Retrieves a list of placements, possibly filtered. This method supports paging.", + "httpMethod": "GET", + "id": "dfareporting.placements.list", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "advertiserIds": { + "description": "Select only placements that belong to these advertisers.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "archived": { + "description": "Select only archived placements. Don't set this field to select both archived and non-archived placements.", + "location": "query", + "type": "boolean" + }, + "campaignIds": { + "description": "Select only placements that belong to these campaigns.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "compatibilities": { + "description": "Select only placements that are associated with these compatibilities. DISPLAY and DISPLAY_INTERSTITIAL refer to rendering either on desktop or on mobile devices for regular or interstitial ads respectively. APP and APP_INTERSTITIAL are for rendering in mobile apps. IN_STREAM_VIDEO refers to rendering in in-stream video ads developed with the VAST standard.", + "enum": [ + "APP", + "APP_INTERSTITIAL", + "DISPLAY", + "DISPLAY_INTERSTITIAL", + "IN_STREAM_VIDEO" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "" + ], + "location": "query", + "repeated": true, + "type": "string" + }, + "contentCategoryIds": { + "description": "Select only placements that are associated with these content categories.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "directorySiteIds": { + "description": "Select only placements that are associated with these directory sites.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "groupIds": { + "description": "Select only placements that belong to these placement groups.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "ids": { + "description": "Select only placements with these IDs.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "maxEndDate": { + "description": "Select only placements or placement groups whose end date is on or before the specified maxEndDate. The date should be formatted as \"yyyy-MM-dd\".", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "1000", + "description": "Maximum number of results to return.", + "format": "int32", + "location": "query", + "maximum": "1000", + "minimum": "0", + "type": "integer" + }, + "maxStartDate": { + "description": "Select only placements or placement groups whose start date is on or before the specified maxStartDate. The date should be formatted as \"yyyy-MM-dd\".", + "location": "query", + "type": "string" + }, + "minEndDate": { + "description": "Select only placements or placement groups whose end date is on or after the specified minEndDate. The date should be formatted as \"yyyy-MM-dd\".", + "location": "query", + "type": "string" + }, + "minStartDate": { + "description": "Select only placements or placement groups whose start date is on or after the specified minStartDate. The date should be formatted as \"yyyy-MM-dd\".", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Value of the nextPageToken from the previous result page.", + "location": "query", + "type": "string" + }, + "paymentSource": { + "description": "Select only placements with this payment source.", + "enum": [ + "PLACEMENT_AGENCY_PAID", + "PLACEMENT_PUBLISHER_PAID" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + }, + "placementStrategyIds": { + "description": "Select only placements that are associated with these placement strategies.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "pricingTypes": { + "description": "Select only placements with these pricing types.", + "enum": [ + "PRICING_TYPE_CPA", + "PRICING_TYPE_CPC", + "PRICING_TYPE_CPM", + "PRICING_TYPE_CPM_ACTIVEVIEW", + "PRICING_TYPE_FLAT_RATE_CLICKS", + "PRICING_TYPE_FLAT_RATE_IMPRESSIONS" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "" + ], + "location": "query", + "repeated": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "searchString": { + "description": "Allows searching for placements by name or ID. Wildcards (*) are allowed. For example, \"placement*2015\" will return placements with names like \"placement June 2015\", \"placement May 2015\", or simply \"placements 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"placement\" will match placements with name \"my placement\", \"placement 2015\", or simply \"placement\".", + "location": "query", + "type": "string" + }, + "siteIds": { + "description": "Select only placements that are associated with these sites.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "sizeIds": { + "description": "Select only placements that are associated with these sizes.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "sortField": { + "default": "ID", + "description": "Field by which to sort the list.", + "enum": [ + "ID", + "NAME" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + }, + "sortOrder": { + "default": "ASCENDING", + "description": "Order of sorted results.", + "enum": [ + "ASCENDING", + "DESCENDING" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + } + }, + "path": "userprofiles/{profileId}/placements", + "response": { + "$ref": "PlacementsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "patch": { + "description": "Updates an existing placement. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "dfareporting.placements.patch", + "parameterOrder": [ + "profileId", + "id" + ], + "parameters": { + "id": { + "description": "Placement ID.", + "format": "int64", + "location": "query", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/placements", + "request": { + "$ref": "Placement" + }, + "response": { + "$ref": "Placement" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "update": { + "description": "Updates an existing placement.", + "httpMethod": "PUT", + "id": "dfareporting.placements.update", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/placements", + "request": { + "$ref": "Placement" + }, + "response": { + "$ref": "Placement" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "platformTypes": { + "methods": { + "get": { + "description": "Gets one platform type by ID.", + "httpMethod": "GET", + "id": "dfareporting.platformTypes.get", + "parameterOrder": [ + "profileId", + "id" + ], + "parameters": { + "id": { + "description": "Platform type ID.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/platformTypes/{id}", + "response": { + "$ref": "PlatformType" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "description": "Retrieves a list of platform types.", + "httpMethod": "GET", + "id": "dfareporting.platformTypes.list", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/platformTypes", + "response": { + "$ref": "PlatformTypesListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "postalCodes": { + "methods": { + "get": { + "description": "Gets one postal code by ID.", + "httpMethod": "GET", + "id": "dfareporting.postalCodes.get", + "parameterOrder": [ + "profileId", + "code" + ], + "parameters": { + "code": { + "description": "Postal code ID.", + "location": "path", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/postalCodes/{code}", + "response": { + "$ref": "PostalCode" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "description": "Retrieves a list of postal codes.", + "httpMethod": "GET", + "id": "dfareporting.postalCodes.list", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/postalCodes", + "response": { + "$ref": "PostalCodesListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "projects": { + "methods": { + "get": { + "description": "Gets one project by ID.", + "httpMethod": "GET", + "id": "dfareporting.projects.get", + "parameterOrder": [ + "profileId", + "id" + ], + "parameters": { + "id": { + "description": "Project ID.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/projects/{id}", + "response": { + "$ref": "Project" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "description": "Retrieves a list of projects, possibly filtered. This method supports paging.", + "httpMethod": "GET", + "id": "dfareporting.projects.list", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "advertiserIds": { + "description": "Select only projects with these advertiser IDs.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "ids": { + "description": "Select only projects with these IDs.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "maxResults": { + "default": "1000", + "description": "Maximum number of results to return.", + "format": "int32", + "location": "query", + "maximum": "1000", + "minimum": "0", + "type": "integer" + }, + "pageToken": { + "description": "Value of the nextPageToken from the previous result page.", + "location": "query", + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "searchString": { + "description": "Allows searching for projects by name or ID. Wildcards (*) are allowed. For example, \"project*2015\" will return projects with names like \"project June 2015\", \"project April 2015\", or simply \"project 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"project\" will match projects with name \"my project\", \"project 2015\", or simply \"project\".", + "location": "query", + "type": "string" + }, + "sortField": { + "default": "ID", + "description": "Field by which to sort the list.", + "enum": [ + "ID", + "NAME" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + }, + "sortOrder": { + "default": "ASCENDING", + "description": "Order of sorted results.", + "enum": [ + "ASCENDING", + "DESCENDING" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + } + }, + "path": "userprofiles/{profileId}/projects", + "response": { + "$ref": "ProjectsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "regions": { + "methods": { + "list": { + "description": "Retrieves a list of regions.", + "httpMethod": "GET", + "id": "dfareporting.regions.list", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/regions", + "response": { + "$ref": "RegionsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "remarketingListShares": { + "methods": { + "get": { + "description": "Gets one remarketing list share by remarketing list ID.", + "httpMethod": "GET", + "id": "dfareporting.remarketingListShares.get", + "parameterOrder": [ + "profileId", + "remarketingListId" + ], + "parameters": { + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "remarketingListId": { + "description": "Remarketing list ID.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/remarketingListShares/{remarketingListId}", + "response": { + "$ref": "RemarketingListShare" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "patch": { + "description": "Updates an existing remarketing list share. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "dfareporting.remarketingListShares.patch", + "parameterOrder": [ + "profileId", + "remarketingListId" + ], + "parameters": { + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "remarketingListId": { + "description": "Remarketing list ID.", + "format": "int64", + "location": "query", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/remarketingListShares", + "request": { + "$ref": "RemarketingListShare" + }, + "response": { + "$ref": "RemarketingListShare" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "update": { + "description": "Updates an existing remarketing list share.", + "httpMethod": "PUT", + "id": "dfareporting.remarketingListShares.update", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/remarketingListShares", + "request": { + "$ref": "RemarketingListShare" + }, + "response": { + "$ref": "RemarketingListShare" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "remarketingLists": { + "methods": { + "get": { + "description": "Gets one remarketing list by ID.", + "httpMethod": "GET", + "id": "dfareporting.remarketingLists.get", + "parameterOrder": [ + "profileId", + "id" + ], + "parameters": { + "id": { + "description": "Remarketing list ID.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/remarketingLists/{id}", + "response": { + "$ref": "RemarketingList" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "insert": { + "description": "Inserts a new remarketing list.", + "httpMethod": "POST", + "id": "dfareporting.remarketingLists.insert", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/remarketingLists", + "request": { + "$ref": "RemarketingList" + }, + "response": { + "$ref": "RemarketingList" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "description": "Retrieves a list of remarketing lists, possibly filtered. This method supports paging.", + "httpMethod": "GET", + "id": "dfareporting.remarketingLists.list", + "parameterOrder": [ + "profileId", + "advertiserId" + ], + "parameters": { + "active": { + "description": "Select only active or only inactive remarketing lists.", + "location": "query", + "type": "boolean" + }, + "advertiserId": { + "description": "Select only remarketing lists owned by this advertiser.", + "format": "int64", + "location": "query", + "required": true, + "type": "string" + }, + "floodlightActivityId": { + "description": "Select only remarketing lists that have this floodlight activity ID.", + "format": "int64", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "1000", + "description": "Maximum number of results to return.", + "format": "int32", + "location": "query", + "maximum": "1000", + "minimum": "0", + "type": "integer" + }, + "name": { + "description": "Allows searching for objects by name or ID. Wildcards (*) are allowed. For example, \"remarketing list*2015\" will return objects with names like \"remarketing list June 2015\", \"remarketing list April 2015\", or simply \"remarketing list 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"remarketing list\" will match objects with name \"my remarketing list\", \"remarketing list 2015\", or simply \"remarketing list\".", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Value of the nextPageToken from the previous result page.", + "location": "query", + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "sortField": { + "default": "ID", + "description": "Field by which to sort the list.", + "enum": [ + "ID", + "NAME" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + }, + "sortOrder": { + "default": "ASCENDING", + "description": "Order of sorted results.", + "enum": [ + "ASCENDING", + "DESCENDING" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + } + }, + "path": "userprofiles/{profileId}/remarketingLists", + "response": { + "$ref": "RemarketingListsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "patch": { + "description": "Updates an existing remarketing list. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "dfareporting.remarketingLists.patch", + "parameterOrder": [ + "profileId", + "id" + ], + "parameters": { + "id": { + "description": "Remarketing list ID.", + "format": "int64", + "location": "query", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/remarketingLists", + "request": { + "$ref": "RemarketingList" + }, + "response": { + "$ref": "RemarketingList" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "update": { + "description": "Updates an existing remarketing list.", + "httpMethod": "PUT", + "id": "dfareporting.remarketingLists.update", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/remarketingLists", + "request": { + "$ref": "RemarketingList" + }, + "response": { + "$ref": "RemarketingList" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "reports": { + "methods": { + "delete": { + "description": "Deletes a report by its ID.", + "httpMethod": "DELETE", + "id": "dfareporting.reports.delete", + "parameterOrder": [ + "profileId", + "reportId" + ], + "parameters": { + "profileId": { + "description": "The DFA user profile ID.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "reportId": { + "description": "The ID of the report.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/reports/{reportId}", + "scopes": [ + "https://www.googleapis.com/auth/dfareporting" + ] + }, + "get": { + "description": "Retrieves a report by its ID.", + "httpMethod": "GET", + "id": "dfareporting.reports.get", + "parameterOrder": [ + "profileId", + "reportId" + ], + "parameters": { + "profileId": { + "description": "The DFA user profile ID.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "reportId": { + "description": "The ID of the report.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/reports/{reportId}", + "response": { + "$ref": "Report" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfareporting" + ] + }, + "insert": { + "description": "Creates a report.", + "httpMethod": "POST", + "id": "dfareporting.reports.insert", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "profileId": { + "description": "The DFA user profile ID.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/reports", + "request": { + "$ref": "Report" + }, + "response": { + "$ref": "Report" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfareporting" + ] + }, + "list": { + "description": "Retrieves list of reports.", + "httpMethod": "GET", + "id": "dfareporting.reports.list", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "maxResults": { + "default": "10", + "description": "Maximum number of results to return.", + "format": "int32", + "location": "query", + "maximum": "10", + "minimum": "0", + "type": "integer" + }, + "pageToken": { + "description": "The value of the nextToken from the previous result page.", + "location": "query", + "type": "string" + }, + "profileId": { + "description": "The DFA user profile ID.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "scope": { + "default": "MINE", + "description": "The scope that defines which results are returned.", + "enum": [ + "ALL", + "MINE" + ], + "enumDescriptions": [ + "All reports in account.", + "My reports." + ], + "location": "query", + "type": "string" + }, + "sortField": { + "default": "LAST_MODIFIED_TIME", + "description": "The field by which to sort the list.", + "enum": [ + "ID", + "LAST_MODIFIED_TIME", + "NAME" + ], + "enumDescriptions": [ + "Sort by report ID.", + "Sort by 'lastModifiedTime' field.", + "Sort by name of reports." + ], + "location": "query", + "type": "string" + }, + "sortOrder": { + "default": "DESCENDING", + "description": "Order of sorted results.", + "enum": [ + "ASCENDING", + "DESCENDING" + ], + "enumDescriptions": [ + "Ascending order.", + "Descending order." + ], + "location": "query", + "type": "string" + } + }, + "path": "userprofiles/{profileId}/reports", + "response": { + "$ref": "ReportList" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfareporting" + ] + }, + "patch": { + "description": "Updates a report. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "dfareporting.reports.patch", + "parameterOrder": [ + "profileId", + "reportId" + ], + "parameters": { + "profileId": { + "description": "The DFA user profile ID.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "reportId": { + "description": "The ID of the report.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/reports/{reportId}", + "request": { + "$ref": "Report" + }, + "response": { + "$ref": "Report" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfareporting" + ] + }, + "run": { + "description": "Runs a report.", + "httpMethod": "POST", + "id": "dfareporting.reports.run", + "parameterOrder": [ + "profileId", + "reportId" + ], + "parameters": { + "profileId": { + "description": "The DFA profile ID.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "reportId": { + "description": "The ID of the report.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "synchronous": { + "default": "false", + "description": "If set and true, tries to run the report synchronously.", + "location": "query", + "type": "boolean" + } + }, + "path": "userprofiles/{profileId}/reports/{reportId}/run", + "response": { + "$ref": "File" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfareporting" + ] + }, + "update": { + "description": "Updates a report.", + "httpMethod": "PUT", + "id": "dfareporting.reports.update", + "parameterOrder": [ + "profileId", + "reportId" + ], + "parameters": { + "profileId": { + "description": "The DFA user profile ID.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "reportId": { + "description": "The ID of the report.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/reports/{reportId}", + "request": { + "$ref": "Report" + }, + "response": { + "$ref": "Report" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfareporting" + ] } - }, - "parameterOrder": [ - "profileId", - "reportId", - "fileId" - ], - "response": { - "$ref": "File" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfareporting" - ], - "supportsMediaDownload": true }, - "list": { - "id": "dfareporting.reports.files.list", - "path": "userprofiles/{profileId}/reports/{reportId}/files", - "httpMethod": "GET", - "description": "Lists files for a report.", - "parameters": { - "maxResults": { - "type": "integer", - "description": "Maximum number of results to return.", - "default": "10", - "format": "int32", - "minimum": "0", - "maximum": "10", - "location": "query" + "resources": { + "compatibleFields": { + "methods": { + "query": { + "description": "Returns the fields that are compatible to be selected in the respective sections of a report criteria, given the fields already selected in the input report and user permissions.", + "httpMethod": "POST", + "id": "dfareporting.reports.compatibleFields.query", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "profileId": { + "description": "The DFA user profile ID.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/reports/compatiblefields/query", + "request": { + "$ref": "Report" + }, + "response": { + "$ref": "CompatibleFields" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfareporting" + ] + } + } }, - "pageToken": { - "type": "string", - "description": "The value of the nextToken from the previous result page.", - "location": "query" + "files": { + "methods": { + "get": { + "description": "Retrieves a report file. This method supports media download.", + "httpMethod": "GET", + "id": "dfareporting.reports.files.get", + "parameterOrder": [ + "profileId", + "reportId", + "fileId" + ], + "parameters": { + "fileId": { + "description": "The ID of the report file.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "profileId": { + "description": "The DFA profile ID.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "reportId": { + "description": "The ID of the report.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/reports/{reportId}/files/{fileId}", + "response": { + "$ref": "File" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfareporting" + ], + "supportsMediaDownload": true + }, + "list": { + "description": "Lists files for a report.", + "httpMethod": "GET", + "id": "dfareporting.reports.files.list", + "parameterOrder": [ + "profileId", + "reportId" + ], + "parameters": { + "maxResults": { + "default": "10", + "description": "Maximum number of results to return.", + "format": "int32", + "location": "query", + "maximum": "10", + "minimum": "0", + "type": "integer" + }, + "pageToken": { + "description": "The value of the nextToken from the previous result page.", + "location": "query", + "type": "string" + }, + "profileId": { + "description": "The DFA profile ID.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "reportId": { + "description": "The ID of the parent report.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "sortField": { + "default": "LAST_MODIFIED_TIME", + "description": "The field by which to sort the list.", + "enum": [ + "ID", + "LAST_MODIFIED_TIME" + ], + "enumDescriptions": [ + "Sort by file ID.", + "Sort by 'lastmodifiedAt' field." + ], + "location": "query", + "type": "string" + }, + "sortOrder": { + "default": "DESCENDING", + "description": "Order of sorted results.", + "enum": [ + "ASCENDING", + "DESCENDING" + ], + "enumDescriptions": [ + "Ascending order.", + "Descending order." + ], + "location": "query", + "type": "string" + } + }, + "path": "userprofiles/{profileId}/reports/{reportId}/files", + "response": { + "$ref": "FileList" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfareporting" + ] + } + } + } + } + }, + "sites": { + "methods": { + "get": { + "description": "Gets one site by ID.", + "httpMethod": "GET", + "id": "dfareporting.sites.get", + "parameterOrder": [ + "profileId", + "id" + ], + "parameters": { + "id": { + "description": "Site ID.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/sites/{id}", + "response": { + "$ref": "Site" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] }, - "profileId": { - "type": "string", - "description": "The DFA profile ID.", - "required": true, - "format": "int64", - "location": "path" + "insert": { + "description": "Inserts a new site.", + "httpMethod": "POST", + "id": "dfareporting.sites.insert", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/sites", + "request": { + "$ref": "Site" + }, + "response": { + "$ref": "Site" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "description": "Retrieves a list of sites, possibly filtered. This method supports paging.", + "httpMethod": "GET", + "id": "dfareporting.sites.list", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "acceptsInStreamVideoPlacements": { + "description": "This search filter is no longer supported and will have no effect on the results returned.", + "location": "query", + "type": "boolean" + }, + "acceptsInterstitialPlacements": { + "description": "This search filter is no longer supported and will have no effect on the results returned.", + "location": "query", + "type": "boolean" + }, + "acceptsPublisherPaidPlacements": { + "description": "Select only sites that accept publisher paid placements.", + "location": "query", + "type": "boolean" + }, + "adWordsSite": { + "description": "Select only AdWords sites.", + "location": "query", + "type": "boolean" + }, + "approved": { + "description": "Select only approved sites.", + "location": "query", + "type": "boolean" + }, + "campaignIds": { + "description": "Select only sites with these campaign IDs.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "directorySiteIds": { + "description": "Select only sites with these directory site IDs.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "ids": { + "description": "Select only sites with these IDs.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "maxResults": { + "default": "1000", + "description": "Maximum number of results to return.", + "format": "int32", + "location": "query", + "maximum": "1000", + "minimum": "0", + "type": "integer" + }, + "pageToken": { + "description": "Value of the nextPageToken from the previous result page.", + "location": "query", + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "searchString": { + "description": "Allows searching for objects by name, ID or keyName. Wildcards (*) are allowed. For example, \"site*2015\" will return objects with names like \"site June 2015\", \"site April 2015\", or simply \"site 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"site\" will match objects with name \"my site\", \"site 2015\", or simply \"site\".", + "location": "query", + "type": "string" + }, + "sortField": { + "default": "ID", + "description": "Field by which to sort the list.", + "enum": [ + "ID", + "NAME" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + }, + "sortOrder": { + "default": "ASCENDING", + "description": "Order of sorted results.", + "enum": [ + "ASCENDING", + "DESCENDING" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + }, + "subaccountId": { + "description": "Select only sites with this subaccount ID.", + "format": "int64", + "location": "query", + "type": "string" + }, + "unmappedSite": { + "description": "Select only sites that have not been mapped to a directory site.", + "location": "query", + "type": "boolean" + } + }, + "path": "userprofiles/{profileId}/sites", + "response": { + "$ref": "SitesListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "patch": { + "description": "Updates an existing site. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "dfareporting.sites.patch", + "parameterOrder": [ + "profileId", + "id" + ], + "parameters": { + "id": { + "description": "Site ID.", + "format": "int64", + "location": "query", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/sites", + "request": { + "$ref": "Site" + }, + "response": { + "$ref": "Site" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "update": { + "description": "Updates an existing site.", + "httpMethod": "PUT", + "id": "dfareporting.sites.update", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/sites", + "request": { + "$ref": "Site" + }, + "response": { + "$ref": "Site" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "sizes": { + "methods": { + "get": { + "description": "Gets one size by ID.", + "httpMethod": "GET", + "id": "dfareporting.sizes.get", + "parameterOrder": [ + "profileId", + "id" + ], + "parameters": { + "id": { + "description": "Size ID.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/sizes/{id}", + "response": { + "$ref": "Size" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "insert": { + "description": "Inserts a new size.", + "httpMethod": "POST", + "id": "dfareporting.sizes.insert", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/sizes", + "request": { + "$ref": "Size" + }, + "response": { + "$ref": "Size" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "description": "Retrieves a list of sizes, possibly filtered.", + "httpMethod": "GET", + "id": "dfareporting.sizes.list", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "height": { + "description": "Select only sizes with this height.", + "format": "int32", + "location": "query", + "maximum": "32767", + "minimum": "0", + "type": "integer" + }, + "iabStandard": { + "description": "Select only IAB standard sizes.", + "location": "query", + "type": "boolean" + }, + "ids": { + "description": "Select only sizes with these IDs.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "width": { + "description": "Select only sizes with this width.", + "format": "int32", + "location": "query", + "maximum": "32767", + "minimum": "0", + "type": "integer" + } + }, + "path": "userprofiles/{profileId}/sizes", + "response": { + "$ref": "SizesListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "subaccounts": { + "methods": { + "get": { + "description": "Gets one subaccount by ID.", + "httpMethod": "GET", + "id": "dfareporting.subaccounts.get", + "parameterOrder": [ + "profileId", + "id" + ], + "parameters": { + "id": { + "description": "Subaccount ID.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/subaccounts/{id}", + "response": { + "$ref": "Subaccount" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "insert": { + "description": "Inserts a new subaccount.", + "httpMethod": "POST", + "id": "dfareporting.subaccounts.insert", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/subaccounts", + "request": { + "$ref": "Subaccount" + }, + "response": { + "$ref": "Subaccount" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "description": "Gets a list of subaccounts, possibly filtered. This method supports paging.", + "httpMethod": "GET", + "id": "dfareporting.subaccounts.list", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "ids": { + "description": "Select only subaccounts with these IDs.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "maxResults": { + "default": "1000", + "description": "Maximum number of results to return.", + "format": "int32", + "location": "query", + "maximum": "1000", + "minimum": "0", + "type": "integer" + }, + "pageToken": { + "description": "Value of the nextPageToken from the previous result page.", + "location": "query", + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "searchString": { + "description": "Allows searching for objects by name or ID. Wildcards (*) are allowed. For example, \"subaccount*2015\" will return objects with names like \"subaccount June 2015\", \"subaccount April 2015\", or simply \"subaccount 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"subaccount\" will match objects with name \"my subaccount\", \"subaccount 2015\", or simply \"subaccount\".", + "location": "query", + "type": "string" + }, + "sortField": { + "default": "ID", + "description": "Field by which to sort the list.", + "enum": [ + "ID", + "NAME" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + }, + "sortOrder": { + "default": "ASCENDING", + "description": "Order of sorted results.", + "enum": [ + "ASCENDING", + "DESCENDING" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + } + }, + "path": "userprofiles/{profileId}/subaccounts", + "response": { + "$ref": "SubaccountsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "patch": { + "description": "Updates an existing subaccount. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "dfareporting.subaccounts.patch", + "parameterOrder": [ + "profileId", + "id" + ], + "parameters": { + "id": { + "description": "Subaccount ID.", + "format": "int64", + "location": "query", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/subaccounts", + "request": { + "$ref": "Subaccount" + }, + "response": { + "$ref": "Subaccount" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "update": { + "description": "Updates an existing subaccount.", + "httpMethod": "PUT", + "id": "dfareporting.subaccounts.update", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/subaccounts", + "request": { + "$ref": "Subaccount" + }, + "response": { + "$ref": "Subaccount" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "targetableRemarketingLists": { + "methods": { + "get": { + "description": "Gets one remarketing list by ID.", + "httpMethod": "GET", + "id": "dfareporting.targetableRemarketingLists.get", + "parameterOrder": [ + "profileId", + "id" + ], + "parameters": { + "id": { + "description": "Remarketing list ID.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/targetableRemarketingLists/{id}", + "response": { + "$ref": "TargetableRemarketingList" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "description": "Retrieves a list of targetable remarketing lists, possibly filtered. This method supports paging.", + "httpMethod": "GET", + "id": "dfareporting.targetableRemarketingLists.list", + "parameterOrder": [ + "profileId", + "advertiserId" + ], + "parameters": { + "active": { + "description": "Select only active or only inactive targetable remarketing lists.", + "location": "query", + "type": "boolean" + }, + "advertiserId": { + "description": "Select only targetable remarketing lists targetable by these advertisers.", + "format": "int64", + "location": "query", + "required": true, + "type": "string" + }, + "maxResults": { + "default": "1000", + "description": "Maximum number of results to return.", + "format": "int32", + "location": "query", + "maximum": "1000", + "minimum": "0", + "type": "integer" + }, + "name": { + "description": "Allows searching for objects by name or ID. Wildcards (*) are allowed. For example, \"remarketing list*2015\" will return objects with names like \"remarketing list June 2015\", \"remarketing list April 2015\", or simply \"remarketing list 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"remarketing list\" will match objects with name \"my remarketing list\", \"remarketing list 2015\", or simply \"remarketing list\".", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Value of the nextPageToken from the previous result page.", + "location": "query", + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "sortField": { + "default": "ID", + "description": "Field by which to sort the list.", + "enum": [ + "ID", + "NAME" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + }, + "sortOrder": { + "default": "ASCENDING", + "description": "Order of sorted results.", + "enum": [ + "ASCENDING", + "DESCENDING" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + } + }, + "path": "userprofiles/{profileId}/targetableRemarketingLists", + "response": { + "$ref": "TargetableRemarketingListsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "targetingTemplates": { + "methods": { + "get": { + "description": "Gets one targeting template by ID.", + "httpMethod": "GET", + "id": "dfareporting.targetingTemplates.get", + "parameterOrder": [ + "profileId", + "id" + ], + "parameters": { + "id": { + "description": "Targeting template ID.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/targetingTemplates/{id}", + "response": { + "$ref": "TargetingTemplate" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "insert": { + "description": "Inserts a new targeting template.", + "httpMethod": "POST", + "id": "dfareporting.targetingTemplates.insert", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/targetingTemplates", + "request": { + "$ref": "TargetingTemplate" + }, + "response": { + "$ref": "TargetingTemplate" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "description": "Retrieves a list of targeting templates, optionally filtered. This method supports paging.", + "httpMethod": "GET", + "id": "dfareporting.targetingTemplates.list", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "advertiserId": { + "description": "Select only targeting templates with this advertiser ID.", + "format": "int64", + "location": "query", + "type": "string" + }, + "ids": { + "description": "Select only targeting templates with these IDs.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "maxResults": { + "default": "1000", + "description": "Maximum number of results to return.", + "format": "int32", + "location": "query", + "maximum": "1000", + "minimum": "0", + "type": "integer" + }, + "pageToken": { + "description": "Value of the nextPageToken from the previous result page.", + "location": "query", + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "searchString": { + "description": "Allows searching for objects by name or ID. Wildcards (*) are allowed. For example, \"template*2015\" will return objects with names like \"template June 2015\", \"template April 2015\", or simply \"template 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"template\" will match objects with name \"my template\", \"template 2015\", or simply \"template\".", + "location": "query", + "type": "string" + }, + "sortField": { + "default": "ID", + "description": "Field by which to sort the list.", + "enum": [ + "ID", + "NAME" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + }, + "sortOrder": { + "default": "ASCENDING", + "description": "Order of sorted results.", + "enum": [ + "ASCENDING", + "DESCENDING" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + } + }, + "path": "userprofiles/{profileId}/targetingTemplates", + "response": { + "$ref": "TargetingTemplatesListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "patch": { + "description": "Updates an existing targeting template. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "dfareporting.targetingTemplates.patch", + "parameterOrder": [ + "profileId", + "id" + ], + "parameters": { + "id": { + "description": "Targeting template ID.", + "format": "int64", + "location": "query", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/targetingTemplates", + "request": { + "$ref": "TargetingTemplate" + }, + "response": { + "$ref": "TargetingTemplate" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "update": { + "description": "Updates an existing targeting template.", + "httpMethod": "PUT", + "id": "dfareporting.targetingTemplates.update", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/targetingTemplates", + "request": { + "$ref": "TargetingTemplate" + }, + "response": { + "$ref": "TargetingTemplate" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "userProfiles": { + "methods": { + "get": { + "description": "Gets one user profile by ID.", + "httpMethod": "GET", + "id": "dfareporting.userProfiles.get", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "profileId": { + "description": "The user profile ID.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}", + "response": { + "$ref": "UserProfile" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfareporting", + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "description": "Retrieves list of user profiles for a user.", + "httpMethod": "GET", + "id": "dfareporting.userProfiles.list", + "path": "userprofiles", + "response": { + "$ref": "UserProfileList" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfareporting", + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "userRolePermissionGroups": { + "methods": { + "get": { + "description": "Gets one user role permission group by ID.", + "httpMethod": "GET", + "id": "dfareporting.userRolePermissionGroups.get", + "parameterOrder": [ + "profileId", + "id" + ], + "parameters": { + "id": { + "description": "User role permission group ID.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/userRolePermissionGroups/{id}", + "response": { + "$ref": "UserRolePermissionGroup" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "description": "Gets a list of all supported user role permission groups.", + "httpMethod": "GET", + "id": "dfareporting.userRolePermissionGroups.list", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/userRolePermissionGroups", + "response": { + "$ref": "UserRolePermissionGroupsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "userRolePermissions": { + "methods": { + "get": { + "description": "Gets one user role permission by ID.", + "httpMethod": "GET", + "id": "dfareporting.userRolePermissions.get", + "parameterOrder": [ + "profileId", + "id" + ], + "parameters": { + "id": { + "description": "User role permission ID.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/userRolePermissions/{id}", + "response": { + "$ref": "UserRolePermission" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "description": "Gets a list of user role permissions, possibly filtered.", + "httpMethod": "GET", + "id": "dfareporting.userRolePermissions.list", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "ids": { + "description": "Select only user role permissions with these IDs.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/userRolePermissions", + "response": { + "$ref": "UserRolePermissionsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "userRoles": { + "methods": { + "delete": { + "description": "Deletes an existing user role.", + "httpMethod": "DELETE", + "id": "dfareporting.userRoles.delete", + "parameterOrder": [ + "profileId", + "id" + ], + "parameters": { + "id": { + "description": "User role ID.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/userRoles/{id}", + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "get": { + "description": "Gets one user role by ID.", + "httpMethod": "GET", + "id": "dfareporting.userRoles.get", + "parameterOrder": [ + "profileId", + "id" + ], + "parameters": { + "id": { + "description": "User role ID.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/userRoles/{id}", + "response": { + "$ref": "UserRole" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "insert": { + "description": "Inserts a new user role.", + "httpMethod": "POST", + "id": "dfareporting.userRoles.insert", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/userRoles", + "request": { + "$ref": "UserRole" + }, + "response": { + "$ref": "UserRole" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "description": "Retrieves a list of user roles, possibly filtered. This method supports paging.", + "httpMethod": "GET", + "id": "dfareporting.userRoles.list", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "accountUserRoleOnly": { + "description": "Select only account level user roles not associated with any specific subaccount.", + "location": "query", + "type": "boolean" + }, + "ids": { + "description": "Select only user roles with the specified IDs.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "maxResults": { + "default": "1000", + "description": "Maximum number of results to return.", + "format": "int32", + "location": "query", + "maximum": "1000", + "minimum": "0", + "type": "integer" + }, + "pageToken": { + "description": "Value of the nextPageToken from the previous result page.", + "location": "query", + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "searchString": { + "description": "Allows searching for objects by name or ID. Wildcards (*) are allowed. For example, \"userrole*2015\" will return objects with names like \"userrole June 2015\", \"userrole April 2015\", or simply \"userrole 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"userrole\" will match objects with name \"my userrole\", \"userrole 2015\", or simply \"userrole\".", + "location": "query", + "type": "string" + }, + "sortField": { + "default": "ID", + "description": "Field by which to sort the list.", + "enum": [ + "ID", + "NAME" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + }, + "sortOrder": { + "default": "ASCENDING", + "description": "Order of sorted results.", + "enum": [ + "ASCENDING", + "DESCENDING" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + }, + "subaccountId": { + "description": "Select only user roles that belong to this subaccount.", + "format": "int64", + "location": "query", + "type": "string" + } + }, + "path": "userprofiles/{profileId}/userRoles", + "response": { + "$ref": "UserRolesListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "patch": { + "description": "Updates an existing user role. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "dfareporting.userRoles.patch", + "parameterOrder": [ + "profileId", + "id" + ], + "parameters": { + "id": { + "description": "User role ID.", + "format": "int64", + "location": "query", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/userRoles", + "request": { + "$ref": "UserRole" + }, + "response": { + "$ref": "UserRole" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "update": { + "description": "Updates an existing user role.", + "httpMethod": "PUT", + "id": "dfareporting.userRoles.update", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/userRoles", + "request": { + "$ref": "UserRole" + }, + "response": { + "$ref": "UserRole" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "videoFormats": { + "methods": { + "get": { + "description": "Gets one video format by ID.", + "httpMethod": "GET", + "id": "dfareporting.videoFormats.get", + "parameterOrder": [ + "profileId", + "id" + ], + "parameters": { + "id": { + "description": "Video format ID.", + "format": "int32", + "location": "path", + "required": true, + "type": "integer" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/videoFormats/{id}", + "response": { + "$ref": "VideoFormat" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "description": "Lists available video formats.", + "httpMethod": "GET", + "id": "dfareporting.videoFormats.list", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/videoFormats", + "response": { + "$ref": "VideoFormatsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + } + }, + "revision": "20171109", + "rootUrl": "https://www.googleapis.com/", + "schemas": { + "Account": { + "description": "Contains properties of a DCM account.", + "id": "Account", + "properties": { + "accountPermissionIds": { + "description": "Account permissions assigned to this account.", + "items": { + "format": "int64", + "type": "string" + }, + "type": "array" + }, + "accountProfile": { + "description": "Profile for this account. This is a read-only field that can be left blank.", + "enum": [ + "ACCOUNT_PROFILE_BASIC", + "ACCOUNT_PROFILE_STANDARD" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "active": { + "description": "Whether this account is active.", + "type": "boolean" + }, + "activeAdsLimitTier": { + "description": "Maximum number of active ads allowed for this account.", + "enum": [ + "ACTIVE_ADS_TIER_100K", + "ACTIVE_ADS_TIER_1M", + "ACTIVE_ADS_TIER_200K", + "ACTIVE_ADS_TIER_300K", + "ACTIVE_ADS_TIER_40K", + "ACTIVE_ADS_TIER_500K", + "ACTIVE_ADS_TIER_750K", + "ACTIVE_ADS_TIER_75K" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "activeViewOptOut": { + "description": "Whether to serve creatives with Active View tags. If disabled, viewability data will not be available for any impressions.", + "type": "boolean" + }, + "availablePermissionIds": { + "description": "User role permissions available to the user roles of this account.", + "items": { + "format": "int64", + "type": "string" + }, + "type": "array" + }, + "countryId": { + "description": "ID of the country associated with this account.", + "format": "int64", + "type": "string" + }, + "currencyId": { + "description": "ID of currency associated with this account. This is a required field.\nAcceptable values are: \n- \"1\" for USD \n- \"2\" for GBP \n- \"3\" for ESP \n- \"4\" for SEK \n- \"5\" for CAD \n- \"6\" for JPY \n- \"7\" for DEM \n- \"8\" for AUD \n- \"9\" for FRF \n- \"10\" for ITL \n- \"11\" for DKK \n- \"12\" for NOK \n- \"13\" for FIM \n- \"14\" for ZAR \n- \"15\" for IEP \n- \"16\" for NLG \n- \"17\" for EUR \n- \"18\" for KRW \n- \"19\" for TWD \n- \"20\" for SGD \n- \"21\" for CNY \n- \"22\" for HKD \n- \"23\" for NZD \n- \"24\" for MYR \n- \"25\" for BRL \n- \"26\" for PTE \n- \"27\" for MXP \n- \"28\" for CLP \n- \"29\" for TRY \n- \"30\" for ARS \n- \"31\" for PEN \n- \"32\" for ILS \n- \"33\" for CHF \n- \"34\" for VEF \n- \"35\" for COP \n- \"36\" for GTQ \n- \"37\" for PLN \n- \"39\" for INR \n- \"40\" for THB \n- \"41\" for IDR \n- \"42\" for CZK \n- \"43\" for RON \n- \"44\" for HUF \n- \"45\" for RUB \n- \"46\" for AED \n- \"47\" for BGN \n- \"48\" for HRK \n- \"49\" for MXN \n- \"50\" for NGN", + "format": "int64", + "type": "string" + }, + "defaultCreativeSizeId": { + "description": "Default placement dimensions for this account.", + "format": "int64", + "type": "string" + }, + "description": { + "description": "Description of this account.", + "type": "string" + }, + "id": { + "description": "ID of this account. This is a read-only, auto-generated field.", + "format": "int64", + "type": "string" + }, + "kind": { + "default": "dfareporting#account", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#account\".", + "type": "string" + }, + "locale": { + "description": "Locale of this account.\nAcceptable values are: \n- \"cs\" (Czech) \n- \"de\" (German) \n- \"en\" (English) \n- \"en-GB\" (English United Kingdom) \n- \"es\" (Spanish) \n- \"fr\" (French) \n- \"it\" (Italian) \n- \"ja\" (Japanese) \n- \"ko\" (Korean) \n- \"pl\" (Polish) \n- \"pt-BR\" (Portuguese Brazil) \n- \"ru\" (Russian) \n- \"sv\" (Swedish) \n- \"tr\" (Turkish) \n- \"zh-CN\" (Chinese Simplified) \n- \"zh-TW\" (Chinese Traditional)", + "type": "string" + }, + "maximumImageSize": { + "description": "Maximum image size allowed for this account, in kilobytes. Value must be greater than or equal to 1.", + "format": "int64", + "type": "string" + }, + "name": { + "description": "Name of this account. This is a required field, and must be less than 128 characters long and be globally unique.", + "type": "string" + }, + "nielsenOcrEnabled": { + "description": "Whether campaigns created in this account will be enabled for Nielsen OCR reach ratings by default.", + "type": "boolean" + }, + "reportsConfiguration": { + "$ref": "ReportsConfiguration", + "description": "Reporting configuration of this account." + }, + "shareReportsWithTwitter": { + "description": "Share Path to Conversion reports with Twitter.", + "type": "boolean" + }, + "teaserSizeLimit": { + "description": "File size limit in kilobytes of Rich Media teaser creatives. Acceptable values are 1 to 10240, inclusive.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "AccountActiveAdSummary": { + "description": "Gets a summary of active ads in an account.", + "id": "AccountActiveAdSummary", + "properties": { + "accountId": { + "description": "ID of the account.", + "format": "int64", + "type": "string" + }, + "activeAds": { + "description": "Ads that have been activated for the account", + "format": "int64", + "type": "string" + }, + "activeAdsLimitTier": { + "description": "Maximum number of active ads allowed for the account.", + "enum": [ + "ACTIVE_ADS_TIER_100K", + "ACTIVE_ADS_TIER_1M", + "ACTIVE_ADS_TIER_200K", + "ACTIVE_ADS_TIER_300K", + "ACTIVE_ADS_TIER_40K", + "ACTIVE_ADS_TIER_500K", + "ACTIVE_ADS_TIER_750K", + "ACTIVE_ADS_TIER_75K" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "availableAds": { + "description": "Ads that can be activated for the account.", + "format": "int64", + "type": "string" + }, + "kind": { + "default": "dfareporting#accountActiveAdSummary", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#accountActiveAdSummary\".", + "type": "string" + } + }, + "type": "object" + }, + "AccountPermission": { + "description": "AccountPermissions contains information about a particular account permission. Some features of DCM require an account permission to be present in the account.", + "id": "AccountPermission", + "properties": { + "accountProfiles": { + "description": "Account profiles associated with this account permission.\n\nPossible values are:\n- \"ACCOUNT_PROFILE_BASIC\"\n- \"ACCOUNT_PROFILE_STANDARD\"", + "items": { + "enum": [ + "ACCOUNT_PROFILE_BASIC", + "ACCOUNT_PROFILE_STANDARD" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "type": "array" + }, + "id": { + "description": "ID of this account permission.", + "format": "int64", + "type": "string" + }, + "kind": { + "default": "dfareporting#accountPermission", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#accountPermission\".", + "type": "string" + }, + "level": { + "description": "Administrative level required to enable this account permission.", + "enum": [ + "ADMINISTRATOR", + "USER" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "name": { + "description": "Name of this account permission.", + "type": "string" + }, + "permissionGroupId": { + "description": "Permission group of this account permission.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "AccountPermissionGroup": { + "description": "AccountPermissionGroups contains a mapping of permission group IDs to names. A permission group is a grouping of account permissions.", + "id": "AccountPermissionGroup", + "properties": { + "id": { + "description": "ID of this account permission group.", + "format": "int64", + "type": "string" + }, + "kind": { + "default": "dfareporting#accountPermissionGroup", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#accountPermissionGroup\".", + "type": "string" + }, + "name": { + "description": "Name of this account permission group.", + "type": "string" + } + }, + "type": "object" + }, + "AccountPermissionGroupsListResponse": { + "description": "Account Permission Group List Response", + "id": "AccountPermissionGroupsListResponse", + "properties": { + "accountPermissionGroups": { + "description": "Account permission group collection.", + "items": { + "$ref": "AccountPermissionGroup" + }, + "type": "array" + }, + "kind": { + "default": "dfareporting#accountPermissionGroupsListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#accountPermissionGroupsListResponse\".", + "type": "string" + } + }, + "type": "object" + }, + "AccountPermissionsListResponse": { + "description": "Account Permission List Response", + "id": "AccountPermissionsListResponse", + "properties": { + "accountPermissions": { + "description": "Account permission collection.", + "items": { + "$ref": "AccountPermission" + }, + "type": "array" + }, + "kind": { + "default": "dfareporting#accountPermissionsListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#accountPermissionsListResponse\".", + "type": "string" + } + }, + "type": "object" + }, + "AccountUserProfile": { + "description": "AccountUserProfiles contains properties of a DCM user profile. This resource is specifically for managing user profiles, whereas UserProfiles is for accessing the API.", + "id": "AccountUserProfile", + "properties": { + "accountId": { + "description": "Account ID of the user profile. This is a read-only field that can be left blank.", + "format": "int64", + "type": "string" + }, + "active": { + "description": "Whether this user profile is active. This defaults to false, and must be set true on insert for the user profile to be usable.", + "type": "boolean" + }, + "advertiserFilter": { + "$ref": "ObjectFilter", + "description": "Filter that describes which advertisers are visible to the user profile." + }, + "campaignFilter": { + "$ref": "ObjectFilter", + "description": "Filter that describes which campaigns are visible to the user profile." + }, + "comments": { + "description": "Comments for this user profile.", + "type": "string" + }, + "email": { + "description": "Email of the user profile. The email addresss must be linked to a Google Account. This field is required on insertion and is read-only after insertion.", + "type": "string" + }, + "id": { + "description": "ID of the user profile. This is a read-only, auto-generated field.", + "format": "int64", + "type": "string" + }, + "kind": { + "default": "dfareporting#accountUserProfile", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#accountUserProfile\".", + "type": "string" + }, + "locale": { + "description": "Locale of the user profile. This is a required field.\nAcceptable values are: \n- \"cs\" (Czech) \n- \"de\" (German) \n- \"en\" (English) \n- \"en-GB\" (English United Kingdom) \n- \"es\" (Spanish) \n- \"fr\" (French) \n- \"it\" (Italian) \n- \"ja\" (Japanese) \n- \"ko\" (Korean) \n- \"pl\" (Polish) \n- \"pt-BR\" (Portuguese Brazil)\n- \"ru\" (Russian) \n- \"sv\" (Swedish) \n- \"tr\" (Turkish) \n- \"zh-CN\" (Chinese Simplified) \n- \"zh-TW\" (Chinese Traditional)", + "type": "string" + }, + "name": { + "description": "Name of the user profile. This is a required field. Must be less than 64 characters long, must be globally unique, and cannot contain whitespace or any of the following characters: \"\u0026;\"#%,\".", + "type": "string" + }, + "siteFilter": { + "$ref": "ObjectFilter", + "description": "Filter that describes which sites are visible to the user profile." + }, + "subaccountId": { + "description": "Subaccount ID of the user profile. This is a read-only field that can be left blank.", + "format": "int64", + "type": "string" + }, + "traffickerType": { + "description": "Trafficker type of this user profile.", + "enum": [ + "EXTERNAL_TRAFFICKER", + "INTERNAL_NON_TRAFFICKER", + "INTERNAL_TRAFFICKER" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, + "userAccessType": { + "description": "User type of the user profile. This is a read-only field that can be left blank.", + "enum": [ + "INTERNAL_ADMINISTRATOR", + "NORMAL_USER", + "READ_ONLY_SUPER_USER", + "SUPER_USER" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ], + "type": "string" + }, + "userRoleFilter": { + "$ref": "ObjectFilter", + "description": "Filter that describes which user roles are visible to the user profile." + }, + "userRoleId": { + "description": "User role ID of the user profile. This is a required field.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "AccountUserProfilesListResponse": { + "description": "Account User Profile List Response", + "id": "AccountUserProfilesListResponse", + "properties": { + "accountUserProfiles": { + "description": "Account user profile collection.", + "items": { + "$ref": "AccountUserProfile" + }, + "type": "array" + }, + "kind": { + "default": "dfareporting#accountUserProfilesListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#accountUserProfilesListResponse\".", + "type": "string" + }, + "nextPageToken": { + "description": "Pagination token to be used for the next list operation.", + "type": "string" + } + }, + "type": "object" + }, + "AccountsListResponse": { + "description": "Account List Response", + "id": "AccountsListResponse", + "properties": { + "accounts": { + "description": "Account collection.", + "items": { + "$ref": "Account" + }, + "type": "array" + }, + "kind": { + "default": "dfareporting#accountsListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#accountsListResponse\".", + "type": "string" + }, + "nextPageToken": { + "description": "Pagination token to be used for the next list operation.", + "type": "string" + } + }, + "type": "object" + }, + "Activities": { + "description": "Represents an activity group.", + "id": "Activities", + "properties": { + "filters": { + "description": "List of activity filters. The dimension values need to be all either of type \"dfa:activity\" or \"dfa:activityGroup\".", + "items": { + "$ref": "DimensionValue" + }, + "type": "array" + }, + "kind": { + "default": "dfareporting#activities", + "description": "The kind of resource this is, in this case dfareporting#activities.", + "type": "string" + }, + "metricNames": { + "description": "List of names of floodlight activity metrics.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "Ad": { + "description": "Contains properties of a DCM ad.", + "id": "Ad", + "properties": { + "accountId": { + "description": "Account ID of this ad. This is a read-only field that can be left blank.", + "format": "int64", + "type": "string" + }, + "active": { + "description": "Whether this ad is active. When true, archived must be false.", + "type": "boolean" + }, + "advertiserId": { + "description": "Advertiser ID of this ad. This is a required field on insertion.", + "format": "int64", + "type": "string" + }, + "advertiserIdDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of the advertiser. This is a read-only, auto-generated field." + }, + "archived": { + "description": "Whether this ad is archived. When true, active must be false.", + "type": "boolean" + }, + "audienceSegmentId": { + "description": "Audience segment ID that is being targeted for this ad. Applicable when type is AD_SERVING_STANDARD_AD.", + "format": "int64", + "type": "string" + }, + "campaignId": { + "description": "Campaign ID of this ad. This is a required field on insertion.", + "format": "int64", + "type": "string" + }, + "campaignIdDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of the campaign. This is a read-only, auto-generated field." + }, + "clickThroughUrl": { + "$ref": "ClickThroughUrl", + "description": "Click-through URL for this ad. This is a required field on insertion. Applicable when type is AD_SERVING_CLICK_TRACKER." + }, + "clickThroughUrlSuffixProperties": { + "$ref": "ClickThroughUrlSuffixProperties", + "description": "Click-through URL suffix properties for this ad. Applies to the URL in the ad or (if overriding ad properties) the URL in the creative." + }, + "comments": { + "description": "Comments for this ad.", + "type": "string" + }, + "compatibility": { + "description": "Compatibility of this ad. Applicable when type is AD_SERVING_DEFAULT_AD. DISPLAY and DISPLAY_INTERSTITIAL refer to either rendering on desktop or on mobile devices or in mobile apps for regular or interstitial ads, respectively. APP and APP_INTERSTITIAL are only used for existing default ads. New mobile placements must be assigned DISPLAY or DISPLAY_INTERSTITIAL and default ads created for those placements will be limited to those compatibility types. IN_STREAM_VIDEO refers to rendering in-stream video ads developed with the VAST standard.", + "enum": [ + "APP", + "APP_INTERSTITIAL", + "DISPLAY", + "DISPLAY_INTERSTITIAL", + "IN_STREAM_VIDEO" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "createInfo": { + "$ref": "LastModifiedInfo", + "description": "Information about the creation of this ad. This is a read-only field." + }, + "creativeGroupAssignments": { + "description": "Creative group assignments for this ad. Applicable when type is AD_SERVING_CLICK_TRACKER. Only one assignment per creative group number is allowed for a maximum of two assignments.", + "items": { + "$ref": "CreativeGroupAssignment" + }, + "type": "array" + }, + "creativeRotation": { + "$ref": "CreativeRotation", + "description": "Creative rotation for this ad. Applicable when type is AD_SERVING_DEFAULT_AD, AD_SERVING_STANDARD_AD, or AD_SERVING_TRACKING. When type is AD_SERVING_DEFAULT_AD, this field should have exactly one creativeAssignment." + }, + "dayPartTargeting": { + "$ref": "DayPartTargeting", + "description": "Time and day targeting information for this ad. This field must be left blank if the ad is using a targeting template. Applicable when type is AD_SERVING_STANDARD_AD." + }, + "defaultClickThroughEventTagProperties": { + "$ref": "DefaultClickThroughEventTagProperties", + "description": "Default click-through event tag properties for this ad." + }, + "deliverySchedule": { + "$ref": "DeliverySchedule", + "description": "Delivery schedule information for this ad. Applicable when type is AD_SERVING_STANDARD_AD or AD_SERVING_TRACKING. This field along with subfields priority and impressionRatio are required on insertion when type is AD_SERVING_STANDARD_AD." + }, + "dynamicClickTracker": { + "description": "Whether this ad is a dynamic click tracker. Applicable when type is AD_SERVING_CLICK_TRACKER. This is a required field on insert, and is read-only after insert.", + "type": "boolean" + }, + "endTime": { + "description": "Date and time that this ad should stop serving. Must be later than the start time. This is a required field on insertion.", + "format": "date-time", + "type": "string" + }, + "eventTagOverrides": { + "description": "Event tag overrides for this ad.", + "items": { + "$ref": "EventTagOverride" + }, + "type": "array" + }, + "geoTargeting": { + "$ref": "GeoTargeting", + "description": "Geographical targeting information for this ad. This field must be left blank if the ad is using a targeting template. Applicable when type is AD_SERVING_STANDARD_AD." + }, + "id": { + "description": "ID of this ad. This is a read-only, auto-generated field.", + "format": "int64", + "type": "string" + }, + "idDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of this ad. This is a read-only, auto-generated field." + }, + "keyValueTargetingExpression": { + "$ref": "KeyValueTargetingExpression", + "description": "Key-value targeting information for this ad. This field must be left blank if the ad is using a targeting template. Applicable when type is AD_SERVING_STANDARD_AD." + }, + "kind": { + "default": "dfareporting#ad", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#ad\".", + "type": "string" + }, + "languageTargeting": { + "$ref": "LanguageTargeting", + "description": "Language targeting information for this ad. This field must be left blank if the ad is using a targeting template. Applicable when type is AD_SERVING_STANDARD_AD." + }, + "lastModifiedInfo": { + "$ref": "LastModifiedInfo", + "description": "Information about the most recent modification of this ad. This is a read-only field." + }, + "name": { + "description": "Name of this ad. This is a required field and must be less than 256 characters long.", + "type": "string" + }, + "placementAssignments": { + "description": "Placement assignments for this ad.", + "items": { + "$ref": "PlacementAssignment" + }, + "type": "array" + }, + "remarketingListExpression": { + "$ref": "ListTargetingExpression", + "description": "Remarketing list targeting expression for this ad. This field must be left blank if the ad is using a targeting template. Applicable when type is AD_SERVING_STANDARD_AD." + }, + "size": { + "$ref": "Size", + "description": "Size of this ad. Applicable when type is AD_SERVING_DEFAULT_AD." + }, + "sslCompliant": { + "description": "Whether this ad is ssl compliant. This is a read-only field that is auto-generated when the ad is inserted or updated.", + "type": "boolean" + }, + "sslRequired": { + "description": "Whether this ad requires ssl. This is a read-only field that is auto-generated when the ad is inserted or updated.", + "type": "boolean" + }, + "startTime": { + "description": "Date and time that this ad should start serving. If creating an ad, this field must be a time in the future. This is a required field on insertion.", + "format": "date-time", + "type": "string" + }, + "subaccountId": { + "description": "Subaccount ID of this ad. This is a read-only field that can be left blank.", + "format": "int64", + "type": "string" + }, + "targetingTemplateId": { + "description": "Targeting template ID, used to apply preconfigured targeting information to this ad. This cannot be set while any of dayPartTargeting, geoTargeting, keyValueTargetingExpression, languageTargeting, remarketingListExpression, or technologyTargeting are set. Applicable when type is AD_SERVING_STANDARD_AD.", + "format": "int64", + "type": "string" + }, + "technologyTargeting": { + "$ref": "TechnologyTargeting", + "description": "Technology platform targeting information for this ad. This field must be left blank if the ad is using a targeting template. Applicable when type is AD_SERVING_STANDARD_AD." + }, + "type": { + "description": "Type of ad. This is a required field on insertion. Note that default ads (AD_SERVING_DEFAULT_AD) cannot be created directly (see Creative resource).", + "enum": [ + "AD_SERVING_CLICK_TRACKER", + "AD_SERVING_DEFAULT_AD", + "AD_SERVING_STANDARD_AD", + "AD_SERVING_TRACKING" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "AdBlockingConfiguration": { + "description": "Campaign ad blocking settings.", + "id": "AdBlockingConfiguration", + "properties": { + "clickThroughUrl": { + "description": "Click-through URL used by brand-neutral ads. This is a required field when overrideClickThroughUrl is set to true.", + "type": "string" + }, + "creativeBundleId": { + "description": "ID of a creative bundle to use for this campaign. If set, brand-neutral ads will select creatives from this bundle. Otherwise, a default transparent pixel will be used.", + "format": "int64", + "type": "string" + }, + "enabled": { + "description": "Whether this campaign has enabled ad blocking. When true, ad blocking is enabled for placements in the campaign, but this may be overridden by site and placement settings. When false, ad blocking is disabled for all placements under the campaign, regardless of site and placement settings.", + "type": "boolean" + }, + "overrideClickThroughUrl": { + "description": "Whether the brand-neutral ad's click-through URL comes from the campaign's creative bundle or the override URL. Must be set to true if ad blocking is enabled and no creative bundle is configured.", + "type": "boolean" + } + }, + "type": "object" + }, + "AdSlot": { + "description": "Ad Slot", + "id": "AdSlot", + "properties": { + "comment": { + "description": "Comment for this ad slot.", + "type": "string" + }, + "compatibility": { + "description": "Ad slot compatibility. DISPLAY and DISPLAY_INTERSTITIAL refer to rendering either on desktop, mobile devices or in mobile apps for regular or interstitial ads respectively. APP and APP_INTERSTITIAL are for rendering in mobile apps. IN_STREAM_VIDEO refers to rendering in in-stream video ads developed with the VAST standard.", + "enum": [ + "APP", + "APP_INTERSTITIAL", + "DISPLAY", + "DISPLAY_INTERSTITIAL", + "IN_STREAM_VIDEO" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "height": { + "description": "Height of this ad slot.", + "format": "int64", + "type": "string" + }, + "linkedPlacementId": { + "description": "ID of the placement from an external platform that is linked to this ad slot.", + "format": "int64", + "type": "string" + }, + "name": { + "description": "Name of this ad slot.", + "type": "string" + }, + "paymentSourceType": { + "description": "Payment source type of this ad slot.", + "enum": [ + "PLANNING_PAYMENT_SOURCE_TYPE_AGENCY_PAID", + "PLANNING_PAYMENT_SOURCE_TYPE_PUBLISHER_PAID" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "primary": { + "description": "Primary ad slot of a roadblock inventory item.", + "type": "boolean" + }, + "width": { + "description": "Width of this ad slot.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "AdsListResponse": { + "description": "Ad List Response", + "id": "AdsListResponse", + "properties": { + "ads": { + "description": "Ad collection.", + "items": { + "$ref": "Ad" + }, + "type": "array" + }, + "kind": { + "default": "dfareporting#adsListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#adsListResponse\".", + "type": "string" + }, + "nextPageToken": { + "description": "Pagination token to be used for the next list operation.", + "type": "string" + } + }, + "type": "object" + }, + "Advertiser": { + "description": "Contains properties of a DCM advertiser.", + "id": "Advertiser", + "properties": { + "accountId": { + "description": "Account ID of this advertiser.This is a read-only field that can be left blank.", + "format": "int64", + "type": "string" + }, + "advertiserGroupId": { + "description": "ID of the advertiser group this advertiser belongs to. You can group advertisers for reporting purposes, allowing you to see aggregated information for all advertisers in each group.", + "format": "int64", + "type": "string" + }, + "clickThroughUrlSuffix": { + "description": "Suffix added to click-through URL of ad creative associations under this advertiser. Must be less than 129 characters long.", + "type": "string" + }, + "defaultClickThroughEventTagId": { + "description": "ID of the click-through event tag to apply by default to the landing pages of this advertiser's campaigns.", + "format": "int64", + "type": "string" + }, + "defaultEmail": { + "description": "Default email address used in sender field for tag emails.", + "type": "string" + }, + "floodlightConfigurationId": { + "description": "Floodlight configuration ID of this advertiser. The floodlight configuration ID will be created automatically, so on insert this field should be left blank. This field can be set to another advertiser's floodlight configuration ID in order to share that advertiser's floodlight configuration with this advertiser, so long as: \n- This advertiser's original floodlight configuration is not already associated with floodlight activities or floodlight activity groups. \n- This advertiser's original floodlight configuration is not already shared with another advertiser.", + "format": "int64", + "type": "string" + }, + "floodlightConfigurationIdDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of the floodlight configuration. This is a read-only, auto-generated field." + }, + "id": { + "description": "ID of this advertiser. This is a read-only, auto-generated field.", + "format": "int64", + "type": "string" + }, + "idDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of this advertiser. This is a read-only, auto-generated field." + }, + "kind": { + "default": "dfareporting#advertiser", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#advertiser\".", + "type": "string" + }, + "name": { + "description": "Name of this advertiser. This is a required field and must be less than 256 characters long and unique among advertisers of the same account.", + "type": "string" + }, + "originalFloodlightConfigurationId": { + "description": "Original floodlight configuration before any sharing occurred. Set the floodlightConfigurationId of this advertiser to originalFloodlightConfigurationId to unshare the advertiser's current floodlight configuration. You cannot unshare an advertiser's floodlight configuration if the shared configuration has activities associated with any campaign or placement.", + "format": "int64", + "type": "string" + }, + "status": { + "description": "Status of this advertiser.", + "enum": [ + "APPROVED", + "ON_HOLD" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "subaccountId": { + "description": "Subaccount ID of this advertiser.This is a read-only field that can be left blank.", + "format": "int64", + "type": "string" + }, + "suspended": { + "description": "Suspension status of this advertiser.", + "type": "boolean" + } + }, + "type": "object" + }, + "AdvertiserGroup": { + "description": "Groups advertisers together so that reports can be generated for the entire group at once.", + "id": "AdvertiserGroup", + "properties": { + "accountId": { + "description": "Account ID of this advertiser group. This is a read-only field that can be left blank.", + "format": "int64", + "type": "string" + }, + "id": { + "description": "ID of this advertiser group. This is a read-only, auto-generated field.", + "format": "int64", + "type": "string" + }, + "kind": { + "default": "dfareporting#advertiserGroup", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#advertiserGroup\".", + "type": "string" + }, + "name": { + "description": "Name of this advertiser group. This is a required field and must be less than 256 characters long and unique among advertiser groups of the same account.", + "type": "string" + } + }, + "type": "object" + }, + "AdvertiserGroupsListResponse": { + "description": "Advertiser Group List Response", + "id": "AdvertiserGroupsListResponse", + "properties": { + "advertiserGroups": { + "description": "Advertiser group collection.", + "items": { + "$ref": "AdvertiserGroup" + }, + "type": "array" + }, + "kind": { + "default": "dfareporting#advertiserGroupsListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#advertiserGroupsListResponse\".", + "type": "string" + }, + "nextPageToken": { + "description": "Pagination token to be used for the next list operation.", + "type": "string" + } + }, + "type": "object" + }, + "AdvertisersListResponse": { + "description": "Advertiser List Response", + "id": "AdvertisersListResponse", + "properties": { + "advertisers": { + "description": "Advertiser collection.", + "items": { + "$ref": "Advertiser" + }, + "type": "array" + }, + "kind": { + "default": "dfareporting#advertisersListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#advertisersListResponse\".", + "type": "string" + }, + "nextPageToken": { + "description": "Pagination token to be used for the next list operation.", + "type": "string" + } + }, + "type": "object" + }, + "AudienceSegment": { + "description": "Audience Segment.", + "id": "AudienceSegment", + "properties": { + "allocation": { + "description": "Weight allocated to this segment. The weight assigned will be understood in proportion to the weights assigned to other segments in the same segment group. Acceptable values are 1 to 1000, inclusive.", + "format": "int32", + "type": "integer" + }, + "id": { + "description": "ID of this audience segment. This is a read-only, auto-generated field.", + "format": "int64", + "type": "string" + }, + "name": { + "description": "Name of this audience segment. This is a required field and must be less than 65 characters long.", + "type": "string" + } + }, + "type": "object" + }, + "AudienceSegmentGroup": { + "description": "Audience Segment Group.", + "id": "AudienceSegmentGroup", + "properties": { + "audienceSegments": { + "description": "Audience segments assigned to this group. The number of segments must be between 2 and 100.", + "items": { + "$ref": "AudienceSegment" + }, + "type": "array" + }, + "id": { + "description": "ID of this audience segment group. This is a read-only, auto-generated field.", + "format": "int64", + "type": "string" + }, + "name": { + "description": "Name of this audience segment group. This is a required field and must be less than 65 characters long.", + "type": "string" + } + }, + "type": "object" + }, + "Browser": { + "description": "Contains information about a browser that can be targeted by ads.", + "id": "Browser", + "properties": { + "browserVersionId": { + "description": "ID referring to this grouping of browser and version numbers. This is the ID used for targeting.", + "format": "int64", + "type": "string" + }, + "dartId": { + "description": "DART ID of this browser. This is the ID used when generating reports.", + "format": "int64", + "type": "string" + }, + "kind": { + "default": "dfareporting#browser", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#browser\".", + "type": "string" + }, + "majorVersion": { + "description": "Major version number (leftmost number) of this browser. For example, for Chrome 5.0.376.86 beta, this field should be set to 5. An asterisk (*) may be used to target any version number, and a question mark (?) may be used to target cases where the version number cannot be identified. For example, Chrome *.* targets any version of Chrome: 1.2, 2.5, 3.5, and so on. Chrome 3.* targets Chrome 3.1, 3.5, but not 4.0. Firefox ?.? targets cases where the ad server knows the browser is Firefox but can't tell which version it is.", + "type": "string" + }, + "minorVersion": { + "description": "Minor version number (number after first dot on left) of this browser. For example, for Chrome 5.0.375.86 beta, this field should be set to 0. An asterisk (*) may be used to target any version number, and a question mark (?) may be used to target cases where the version number cannot be identified. For example, Chrome *.* targets any version of Chrome: 1.2, 2.5, 3.5, and so on. Chrome 3.* targets Chrome 3.1, 3.5, but not 4.0. Firefox ?.? targets cases where the ad server knows the browser is Firefox but can't tell which version it is.", + "type": "string" + }, + "name": { + "description": "Name of this browser.", + "type": "string" + } + }, + "type": "object" + }, + "BrowsersListResponse": { + "description": "Browser List Response", + "id": "BrowsersListResponse", + "properties": { + "browsers": { + "description": "Browser collection.", + "items": { + "$ref": "Browser" + }, + "type": "array" + }, + "kind": { + "default": "dfareporting#browsersListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#browsersListResponse\".", + "type": "string" + } + }, + "type": "object" + }, + "Campaign": { + "description": "Contains properties of a DCM campaign.", + "id": "Campaign", + "properties": { + "accountId": { + "description": "Account ID of this campaign. This is a read-only field that can be left blank.", + "format": "int64", + "type": "string" + }, + "adBlockingConfiguration": { + "$ref": "AdBlockingConfiguration", + "description": "Ad blocking settings for this campaign." + }, + "additionalCreativeOptimizationConfigurations": { + "description": "Additional creative optimization configurations for the campaign.", + "items": { + "$ref": "CreativeOptimizationConfiguration" + }, + "type": "array" + }, + "advertiserGroupId": { + "description": "Advertiser group ID of the associated advertiser.", + "format": "int64", + "type": "string" + }, + "advertiserId": { + "description": "Advertiser ID of this campaign. This is a required field.", + "format": "int64", + "type": "string" + }, + "advertiserIdDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the advertiser ID of this campaign. This is a read-only, auto-generated field." + }, + "archived": { + "description": "Whether this campaign has been archived.", + "type": "boolean" + }, + "audienceSegmentGroups": { + "description": "Audience segment groups assigned to this campaign. Cannot have more than 300 segment groups.", + "items": { + "$ref": "AudienceSegmentGroup" + }, + "type": "array" + }, + "billingInvoiceCode": { + "description": "Billing invoice code included in the DCM client billing invoices associated with the campaign.", + "type": "string" + }, + "clickThroughUrlSuffixProperties": { + "$ref": "ClickThroughUrlSuffixProperties", + "description": "Click-through URL suffix override properties for this campaign." + }, + "comment": { + "description": "Arbitrary comments about this campaign. Must be less than 256 characters long.", + "type": "string" + }, + "createInfo": { + "$ref": "LastModifiedInfo", + "description": "Information about the creation of this campaign. This is a read-only field." + }, + "creativeGroupIds": { + "description": "List of creative group IDs that are assigned to the campaign.", + "items": { + "format": "int64", + "type": "string" + }, + "type": "array" + }, + "creativeOptimizationConfiguration": { + "$ref": "CreativeOptimizationConfiguration", + "description": "Creative optimization configuration for the campaign." + }, + "defaultClickThroughEventTagProperties": { + "$ref": "DefaultClickThroughEventTagProperties", + "description": "Click-through event tag ID override properties for this campaign." + }, + "endDate": { + "description": "Date on which the campaign will stop running. On insert, the end date must be today or a future date. The end date must be later than or be the same as the start date. If, for example, you set 6/25/2015 as both the start and end dates, the effective campaign run date is just that day only, 6/25/2015. The hours, minutes, and seconds of the end date should not be set, as doing so will result in an error. This is a required field.", + "format": "date", + "type": "string" + }, + "eventTagOverrides": { + "description": "Overrides that can be used to activate or deactivate advertiser event tags.", + "items": { + "$ref": "EventTagOverride" + }, + "type": "array" + }, + "externalId": { + "description": "External ID for this campaign.", + "type": "string" + }, + "id": { + "description": "ID of this campaign. This is a read-only auto-generated field.", + "format": "int64", + "type": "string" + }, + "idDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of this campaign. This is a read-only, auto-generated field." + }, + "kind": { + "default": "dfareporting#campaign", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#campaign\".", + "type": "string" + }, + "lastModifiedInfo": { + "$ref": "LastModifiedInfo", + "description": "Information about the most recent modification of this campaign. This is a read-only field." + }, + "lookbackConfiguration": { + "$ref": "LookbackConfiguration", + "description": "Lookback window settings for the campaign." + }, + "name": { + "description": "Name of this campaign. This is a required field and must be less than 256 characters long and unique among campaigns of the same advertiser.", + "type": "string" + }, + "nielsenOcrEnabled": { + "description": "Whether Nielsen reports are enabled for this campaign.", + "type": "boolean" + }, + "startDate": { + "description": "Date on which the campaign starts running. The start date can be any date. The hours, minutes, and seconds of the start date should not be set, as doing so will result in an error. This is a required field.", + "format": "date", + "type": "string" + }, + "subaccountId": { + "description": "Subaccount ID of this campaign. This is a read-only field that can be left blank.", + "format": "int64", + "type": "string" + }, + "traffickerEmails": { + "description": "Campaign trafficker contact emails.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "CampaignCreativeAssociation": { + "description": "Identifies a creative which has been associated with a given campaign.", + "id": "CampaignCreativeAssociation", + "properties": { + "creativeId": { + "description": "ID of the creative associated with the campaign. This is a required field.", + "format": "int64", + "type": "string" + }, + "kind": { + "default": "dfareporting#campaignCreativeAssociation", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#campaignCreativeAssociation\".", + "type": "string" + } + }, + "type": "object" + }, + "CampaignCreativeAssociationsListResponse": { + "description": "Campaign Creative Association List Response", + "id": "CampaignCreativeAssociationsListResponse", + "properties": { + "campaignCreativeAssociations": { + "description": "Campaign creative association collection", + "items": { + "$ref": "CampaignCreativeAssociation" + }, + "type": "array" + }, + "kind": { + "default": "dfareporting#campaignCreativeAssociationsListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#campaignCreativeAssociationsListResponse\".", + "type": "string" + }, + "nextPageToken": { + "description": "Pagination token to be used for the next list operation.", + "type": "string" + } + }, + "type": "object" + }, + "CampaignsListResponse": { + "description": "Campaign List Response", + "id": "CampaignsListResponse", + "properties": { + "campaigns": { + "description": "Campaign collection.", + "items": { + "$ref": "Campaign" + }, + "type": "array" + }, + "kind": { + "default": "dfareporting#campaignsListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#campaignsListResponse\".", + "type": "string" + }, + "nextPageToken": { + "description": "Pagination token to be used for the next list operation.", + "type": "string" + } + }, + "type": "object" + }, + "ChangeLog": { + "description": "Describes a change that a user has made to a resource.", + "id": "ChangeLog", + "properties": { + "accountId": { + "description": "Account ID of the modified object.", + "format": "int64", + "type": "string" + }, + "action": { + "description": "Action which caused the change.", + "type": "string" + }, + "changeTime": { + "description": "Time when the object was modified.", + "format": "date-time", + "type": "string" + }, + "fieldName": { + "description": "Field name of the object which changed.", + "type": "string" + }, + "id": { + "description": "ID of this change log.", + "format": "int64", + "type": "string" + }, + "kind": { + "default": "dfareporting#changeLog", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#changeLog\".", + "type": "string" + }, + "newValue": { + "description": "New value of the object field.", + "type": "string" + }, + "objectId": { + "description": "ID of the object of this change log. The object could be a campaign, placement, ad, or other type.", + "format": "int64", + "type": "string" + }, + "objectType": { + "description": "Object type of the change log.", + "type": "string" + }, + "oldValue": { + "description": "Old value of the object field.", + "type": "string" + }, + "subaccountId": { + "description": "Subaccount ID of the modified object.", + "format": "int64", + "type": "string" + }, + "transactionId": { + "description": "Transaction ID of this change log. When a single API call results in many changes, each change will have a separate ID in the change log but will share the same transactionId.", + "format": "int64", + "type": "string" + }, + "userProfileId": { + "description": "ID of the user who modified the object.", + "format": "int64", + "type": "string" + }, + "userProfileName": { + "description": "User profile name of the user who modified the object.", + "type": "string" + } + }, + "type": "object" + }, + "ChangeLogsListResponse": { + "description": "Change Log List Response", + "id": "ChangeLogsListResponse", + "properties": { + "changeLogs": { + "description": "Change log collection.", + "items": { + "$ref": "ChangeLog" + }, + "type": "array" + }, + "kind": { + "default": "dfareporting#changeLogsListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#changeLogsListResponse\".", + "type": "string" + }, + "nextPageToken": { + "description": "Pagination token to be used for the next list operation.", + "type": "string" + } + }, + "type": "object" + }, + "CitiesListResponse": { + "description": "City List Response", + "id": "CitiesListResponse", + "properties": { + "cities": { + "description": "City collection.", + "items": { + "$ref": "City" + }, + "type": "array" + }, + "kind": { + "default": "dfareporting#citiesListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#citiesListResponse\".", + "type": "string" + } + }, + "type": "object" + }, + "City": { + "description": "Contains information about a city that can be targeted by ads.", + "id": "City", + "properties": { + "countryCode": { + "description": "Country code of the country to which this city belongs.", + "type": "string" + }, + "countryDartId": { + "description": "DART ID of the country to which this city belongs.", + "format": "int64", + "type": "string" + }, + "dartId": { + "description": "DART ID of this city. This is the ID used for targeting and generating reports.", + "format": "int64", + "type": "string" + }, + "kind": { + "default": "dfareporting#city", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#city\".", + "type": "string" + }, + "metroCode": { + "description": "Metro region code of the metro region (DMA) to which this city belongs.", + "type": "string" + }, + "metroDmaId": { + "description": "ID of the metro region (DMA) to which this city belongs.", + "format": "int64", + "type": "string" + }, + "name": { + "description": "Name of this city.", + "type": "string" + }, + "regionCode": { + "description": "Region code of the region to which this city belongs.", + "type": "string" + }, + "regionDartId": { + "description": "DART ID of the region to which this city belongs.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "ClickTag": { + "description": "Creative Click Tag.", + "id": "ClickTag", + "properties": { + "eventName": { + "description": "Advertiser event name associated with the click tag. This field is used by DISPLAY_IMAGE_GALLERY and HTML5_BANNER creatives. Applicable to DISPLAY when the primary asset type is not HTML_IMAGE.", + "type": "string" + }, + "name": { + "description": "Parameter name for the specified click tag. For DISPLAY_IMAGE_GALLERY creative assets, this field must match the value of the creative asset's creativeAssetId.name field.", + "type": "string" + }, + "value": { + "description": "Parameter value for the specified click tag. This field contains a click-through url.", + "type": "string" + } + }, + "type": "object" + }, + "ClickThroughUrl": { + "description": "Click-through URL", + "id": "ClickThroughUrl", + "properties": { + "computedClickThroughUrl": { + "description": "Read-only convenience field representing the actual URL that will be used for this click-through. The URL is computed as follows: \n- If defaultLandingPage is enabled then the campaign's default landing page URL is assigned to this field.\n- If defaultLandingPage is not enabled and a landingPageId is specified then that landing page's URL is assigned to this field.\n- If neither of the above cases apply, then the customClickThroughUrl is assigned to this field.", + "type": "string" + }, + "customClickThroughUrl": { + "description": "Custom click-through URL. Applicable if the defaultLandingPage field is set to false and the landingPageId field is left unset.", + "type": "string" + }, + "defaultLandingPage": { + "description": "Whether the campaign default landing page is used.", + "type": "boolean" + }, + "landingPageId": { + "description": "ID of the landing page for the click-through URL. Applicable if the defaultLandingPage field is set to false.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "ClickThroughUrlSuffixProperties": { + "description": "Click Through URL Suffix settings.", + "id": "ClickThroughUrlSuffixProperties", + "properties": { + "clickThroughUrlSuffix": { + "description": "Click-through URL suffix to apply to all ads in this entity's scope. Must be less than 128 characters long.", + "type": "string" + }, + "overrideInheritedSuffix": { + "description": "Whether this entity should override the inherited click-through URL suffix with its own defined value.", + "type": "boolean" + } + }, + "type": "object" + }, + "CompanionClickThroughOverride": { + "description": "Companion Click-through override.", + "id": "CompanionClickThroughOverride", + "properties": { + "clickThroughUrl": { + "$ref": "ClickThroughUrl", + "description": "Click-through URL of this companion click-through override." + }, + "creativeId": { + "description": "ID of the creative for this companion click-through override.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "CompanionSetting": { + "description": "Companion Settings", + "id": "CompanionSetting", + "properties": { + "companionsDisabled": { + "description": "Whether companions are disabled for this placement.", + "type": "boolean" + }, + "enabledSizes": { + "description": "Whitelist of companion sizes to be served to this placement. Set this list to null or empty to serve all companion sizes.", + "items": { + "$ref": "Size" + }, + "type": "array" + }, + "imageOnly": { + "description": "Whether to serve only static images as companions.", + "type": "boolean" + }, + "kind": { + "default": "dfareporting#companionSetting", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#companionSetting\".", + "type": "string" + } + }, + "type": "object" + }, + "CompatibleFields": { + "description": "Represents a response to the queryCompatibleFields method.", + "id": "CompatibleFields", + "properties": { + "crossDimensionReachReportCompatibleFields": { + "$ref": "CrossDimensionReachReportCompatibleFields", + "description": "Contains items that are compatible to be selected for a report of type \"CROSS_DIMENSION_REACH\"." + }, + "floodlightReportCompatibleFields": { + "$ref": "FloodlightReportCompatibleFields", + "description": "Contains items that are compatible to be selected for a report of type \"FLOODLIGHT\"." + }, + "kind": { + "default": "dfareporting#compatibleFields", + "description": "The kind of resource this is, in this case dfareporting#compatibleFields.", + "type": "string" + }, + "pathToConversionReportCompatibleFields": { + "$ref": "PathToConversionReportCompatibleFields", + "description": "Contains items that are compatible to be selected for a report of type \"PATH_TO_CONVERSION\"." + }, + "reachReportCompatibleFields": { + "$ref": "ReachReportCompatibleFields", + "description": "Contains items that are compatible to be selected for a report of type \"REACH\"." + }, + "reportCompatibleFields": { + "$ref": "ReportCompatibleFields", + "description": "Contains items that are compatible to be selected for a report of type \"STANDARD\"." + } + }, + "type": "object" + }, + "ConnectionType": { + "description": "Contains information about an internet connection type that can be targeted by ads. Clients can use the connection type to target mobile vs. broadband users.", + "id": "ConnectionType", + "properties": { + "id": { + "description": "ID of this connection type.", + "format": "int64", + "type": "string" + }, + "kind": { + "default": "dfareporting#connectionType", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#connectionType\".", + "type": "string" + }, + "name": { + "description": "Name of this connection type.", + "type": "string" + } + }, + "type": "object" + }, + "ConnectionTypesListResponse": { + "description": "Connection Type List Response", + "id": "ConnectionTypesListResponse", + "properties": { + "connectionTypes": { + "description": "Collection of connection types such as broadband and mobile.", + "items": { + "$ref": "ConnectionType" + }, + "type": "array" + }, + "kind": { + "default": "dfareporting#connectionTypesListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#connectionTypesListResponse\".", + "type": "string" + } + }, + "type": "object" + }, + "ContentCategoriesListResponse": { + "description": "Content Category List Response", + "id": "ContentCategoriesListResponse", + "properties": { + "contentCategories": { + "description": "Content category collection.", + "items": { + "$ref": "ContentCategory" + }, + "type": "array" + }, + "kind": { + "default": "dfareporting#contentCategoriesListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#contentCategoriesListResponse\".", + "type": "string" + }, + "nextPageToken": { + "description": "Pagination token to be used for the next list operation.", + "type": "string" + } + }, + "type": "object" + }, + "ContentCategory": { + "description": "Organizes placements according to the contents of their associated webpages.", + "id": "ContentCategory", + "properties": { + "accountId": { + "description": "Account ID of this content category. This is a read-only field that can be left blank.", + "format": "int64", + "type": "string" + }, + "id": { + "description": "ID of this content category. This is a read-only, auto-generated field.", + "format": "int64", + "type": "string" + }, + "kind": { + "default": "dfareporting#contentCategory", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#contentCategory\".", + "type": "string" + }, + "name": { + "description": "Name of this content category. This is a required field and must be less than 256 characters long and unique among content categories of the same account.", + "type": "string" + } + }, + "type": "object" + }, + "Conversion": { + "description": "A Conversion represents when a user successfully performs a desired action after seeing an ad.", + "id": "Conversion", + "properties": { + "childDirectedTreatment": { + "description": "Whether the conversion was directed toward children.", + "type": "boolean" + }, + "customVariables": { + "description": "Custom floodlight variables.", + "items": { + "$ref": "CustomFloodlightVariable" + }, + "type": "array" + }, + "encryptedUserId": { + "description": "The alphanumeric encrypted user ID. When set, encryptionInfo should also be specified. This field is mutually exclusive with encryptedUserIdCandidates[], mobileDeviceId and gclid. This or encryptedUserIdCandidates[] or mobileDeviceId or gclid is a required field.", + "type": "string" + }, + "encryptedUserIdCandidates": { + "description": "A list of the alphanumeric encrypted user IDs. Any user ID with exposure prior to the conversion timestamp will be used in the inserted conversion. If no such user ID is found then the conversion will be rejected with NO_COOKIE_MATCH_FOUND error. When set, encryptionInfo should also be specified. This field may only be used when calling batchinsert; it is not supported by batchupdate. This field is mutually exclusive with encryptedUserId, mobileDeviceId and gclid. This or encryptedUserId or mobileDeviceId or gclid is a required field.", + "items": { + "type": "string" + }, + "type": "array" + }, + "floodlightActivityId": { + "description": "Floodlight Activity ID of this conversion. This is a required field.", + "format": "int64", + "type": "string" + }, + "floodlightConfigurationId": { + "description": "Floodlight Configuration ID of this conversion. This is a required field.", + "format": "int64", + "type": "string" + }, + "gclid": { + "description": "The Google click ID. This field is mutually exclusive with encryptedUserId, encryptedUserIdCandidates[] and mobileDeviceId. This or encryptedUserId or encryptedUserIdCandidates[] or mobileDeviceId is a required field.", + "type": "string" + }, + "kind": { + "default": "dfareporting#conversion", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#conversion\".", + "type": "string" + }, + "limitAdTracking": { + "description": "Whether Limit Ad Tracking is enabled. When set to true, the conversion will be used for reporting but not targeting. This will prevent remarketing.", + "type": "boolean" + }, + "mobileDeviceId": { + "description": "The mobile device ID. This field is mutually exclusive with encryptedUserId, encryptedUserIdCandidates[] and gclid. This or encryptedUserId or encryptedUserIdCandidates[] or gclid is a required field.", + "type": "string" + }, + "ordinal": { + "description": "The ordinal of the conversion. Use this field to control how conversions of the same user and day are de-duplicated. This is a required field.", + "type": "string" + }, + "quantity": { + "description": "The quantity of the conversion.", + "format": "int64", + "type": "string" + }, + "timestampMicros": { + "description": "The timestamp of conversion, in Unix epoch micros. This is a required field.", + "format": "int64", + "type": "string" + }, + "value": { + "description": "The value of the conversion.", + "format": "double", + "type": "number" + } + }, + "type": "object" + }, + "ConversionError": { + "description": "The error code and description for a conversion that failed to insert or update.", + "id": "ConversionError", + "properties": { + "code": { + "description": "The error code.", + "enum": [ + "INTERNAL", + "INVALID_ARGUMENT", + "NOT_FOUND", + "PERMISSION_DENIED" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ], + "type": "string" + }, + "kind": { + "default": "dfareporting#conversionError", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#conversionError\".", + "type": "string" + }, + "message": { + "description": "A description of the error.", + "type": "string" + } + }, + "type": "object" + }, + "ConversionStatus": { + "description": "The original conversion that was inserted or updated and whether there were any errors.", + "id": "ConversionStatus", + "properties": { + "conversion": { + "$ref": "Conversion", + "description": "The original conversion that was inserted or updated." + }, + "errors": { + "description": "A list of errors related to this conversion.", + "items": { + "$ref": "ConversionError" + }, + "type": "array" + }, + "kind": { + "default": "dfareporting#conversionStatus", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#conversionStatus\".", + "type": "string" + } + }, + "type": "object" + }, + "ConversionsBatchInsertRequest": { + "description": "Insert Conversions Request.", + "id": "ConversionsBatchInsertRequest", + "properties": { + "conversions": { + "description": "The set of conversions to insert.", + "items": { + "$ref": "Conversion" + }, + "type": "array" + }, + "encryptionInfo": { + "$ref": "EncryptionInfo", + "description": "Describes how encryptedUserId or encryptedUserIdCandidates[] is encrypted. This is a required field if encryptedUserId or encryptedUserIdCandidates[] is used." + }, + "kind": { + "default": "dfareporting#conversionsBatchInsertRequest", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#conversionsBatchInsertRequest\".", + "type": "string" + } + }, + "type": "object" + }, + "ConversionsBatchInsertResponse": { + "description": "Insert Conversions Response.", + "id": "ConversionsBatchInsertResponse", + "properties": { + "hasFailures": { + "description": "Indicates that some or all conversions failed to insert.", + "type": "boolean" + }, + "kind": { + "default": "dfareporting#conversionsBatchInsertResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#conversionsBatchInsertResponse\".", + "type": "string" + }, + "status": { + "description": "The insert status of each conversion. Statuses are returned in the same order that conversions are inserted.", + "items": { + "$ref": "ConversionStatus" + }, + "type": "array" + } + }, + "type": "object" + }, + "ConversionsBatchUpdateRequest": { + "description": "Update Conversions Request.", + "id": "ConversionsBatchUpdateRequest", + "properties": { + "conversions": { + "description": "The set of conversions to update.", + "items": { + "$ref": "Conversion" + }, + "type": "array" + }, + "encryptionInfo": { + "$ref": "EncryptionInfo", + "description": "Describes how encryptedUserId is encrypted. This is a required field if encryptedUserId is used." + }, + "kind": { + "default": "dfareporting#conversionsBatchUpdateRequest", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#conversionsBatchUpdateRequest\".", + "type": "string" + } + }, + "type": "object" + }, + "ConversionsBatchUpdateResponse": { + "description": "Update Conversions Response.", + "id": "ConversionsBatchUpdateResponse", + "properties": { + "hasFailures": { + "description": "Indicates that some or all conversions failed to update.", + "type": "boolean" + }, + "kind": { + "default": "dfareporting#conversionsBatchUpdateResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#conversionsBatchUpdateResponse\".", + "type": "string" + }, + "status": { + "description": "The update status of each conversion. Statuses are returned in the same order that conversions are updated.", + "items": { + "$ref": "ConversionStatus" + }, + "type": "array" + } + }, + "type": "object" + }, + "CountriesListResponse": { + "description": "Country List Response", + "id": "CountriesListResponse", + "properties": { + "countries": { + "description": "Country collection.", + "items": { + "$ref": "Country" + }, + "type": "array" + }, + "kind": { + "default": "dfareporting#countriesListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#countriesListResponse\".", + "type": "string" + } + }, + "type": "object" + }, + "Country": { + "description": "Contains information about a country that can be targeted by ads.", + "id": "Country", + "properties": { + "countryCode": { + "description": "Country code.", + "type": "string" + }, + "dartId": { + "description": "DART ID of this country. This is the ID used for targeting and generating reports.", + "format": "int64", + "type": "string" + }, + "kind": { + "default": "dfareporting#country", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#country\".", + "type": "string" + }, + "name": { + "description": "Name of this country.", + "type": "string" + }, + "sslEnabled": { + "description": "Whether ad serving supports secure servers in this country.", + "type": "boolean" + } + }, + "type": "object" + }, + "Creative": { + "description": "Contains properties of a Creative.", + "id": "Creative", + "properties": { + "accountId": { + "description": "Account ID of this creative. This field, if left unset, will be auto-generated for both insert and update operations. Applicable to all creative types.", + "format": "int64", + "type": "string" + }, + "active": { + "description": "Whether the creative is active. Applicable to all creative types.", + "type": "boolean" + }, + "adParameters": { + "description": "Ad parameters user for VPAID creative. This is a read-only field. Applicable to the following creative types: all VPAID.", + "type": "string" + }, + "adTagKeys": { + "description": "Keywords for a Rich Media creative. Keywords let you customize the creative settings of a Rich Media ad running on your site without having to contact the advertiser. You can use keywords to dynamically change the look or functionality of a creative. Applicable to the following creative types: all RICH_MEDIA, and all VPAID.", + "items": { + "type": "string" + }, + "type": "array" + }, + "advertiserId": { + "description": "Advertiser ID of this creative. This is a required field. Applicable to all creative types.", + "format": "int64", + "type": "string" + }, + "allowScriptAccess": { + "description": "Whether script access is allowed for this creative. This is a read-only and deprecated field which will automatically be set to true on update. Applicable to the following creative types: FLASH_INPAGE.", + "type": "boolean" + }, + "archived": { + "description": "Whether the creative is archived. Applicable to all creative types.", + "type": "boolean" + }, + "artworkType": { + "description": "Type of artwork used for the creative. This is a read-only field. Applicable to the following creative types: all RICH_MEDIA, and all VPAID.", + "enum": [ + "ARTWORK_TYPE_FLASH", + "ARTWORK_TYPE_HTML5", + "ARTWORK_TYPE_IMAGE", + "ARTWORK_TYPE_MIXED" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ], + "type": "string" + }, + "authoringSource": { + "description": "Source application where creative was authored. Presently, only DBM authored creatives will have this field set. Applicable to all creative types.", + "enum": [ + "CREATIVE_AUTHORING_SOURCE_DBM", + "CREATIVE_AUTHORING_SOURCE_DCM", + "CREATIVE_AUTHORING_SOURCE_STUDIO" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, + "authoringTool": { + "description": "Authoring tool for HTML5 banner creatives. This is a read-only field. Applicable to the following creative types: HTML5_BANNER.", + "enum": [ + "NINJA", + "SWIFFY" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "autoAdvanceImages": { + "description": "Whether images are automatically advanced for image gallery creatives. Applicable to the following creative types: DISPLAY_IMAGE_GALLERY.", + "type": "boolean" + }, + "backgroundColor": { + "description": "The 6-character HTML color code, beginning with #, for the background of the window area where the Flash file is displayed. Default is white. Applicable to the following creative types: FLASH_INPAGE.", + "type": "string" + }, + "backupImageClickThroughUrl": { + "description": "Click-through URL for backup image. Applicable to the following creative types: FLASH_INPAGE, and HTML5_BANNER. Applicable to DISPLAY when the primary asset type is not HTML_IMAGE.", + "type": "string" + }, + "backupImageFeatures": { + "description": "List of feature dependencies that will cause a backup image to be served if the browser that serves the ad does not support them. Feature dependencies are features that a browser must be able to support in order to render your HTML5 creative asset correctly. This field is initially auto-generated to contain all features detected by DCM for all the assets of this creative and can then be modified by the client. To reset this field, copy over all the creativeAssets' detected features. Applicable to the following creative types: HTML5_BANNER. Applicable to DISPLAY when the primary asset type is not HTML_IMAGE.", + "items": { + "enum": [ + "APPLICATION_CACHE", + "AUDIO", + "CANVAS", + "CANVAS_TEXT", + "CSS_ANIMATIONS", + "CSS_BACKGROUND_SIZE", + "CSS_BORDER_IMAGE", + "CSS_BORDER_RADIUS", + "CSS_BOX_SHADOW", + "CSS_COLUMNS", + "CSS_FLEX_BOX", + "CSS_FONT_FACE", + "CSS_GENERATED_CONTENT", + "CSS_GRADIENTS", + "CSS_HSLA", + "CSS_MULTIPLE_BGS", + "CSS_OPACITY", + "CSS_REFLECTIONS", + "CSS_RGBA", + "CSS_TEXT_SHADOW", + "CSS_TRANSFORMS", + "CSS_TRANSFORMS3D", + "CSS_TRANSITIONS", + "DRAG_AND_DROP", + "GEO_LOCATION", + "HASH_CHANGE", + "HISTORY", + "INDEXED_DB", + "INLINE_SVG", + "INPUT_ATTR_AUTOCOMPLETE", + "INPUT_ATTR_AUTOFOCUS", + "INPUT_ATTR_LIST", + "INPUT_ATTR_MAX", + "INPUT_ATTR_MIN", + "INPUT_ATTR_MULTIPLE", + "INPUT_ATTR_PATTERN", + "INPUT_ATTR_PLACEHOLDER", + "INPUT_ATTR_REQUIRED", + "INPUT_ATTR_STEP", + "INPUT_TYPE_COLOR", + "INPUT_TYPE_DATE", + "INPUT_TYPE_DATETIME", + "INPUT_TYPE_DATETIME_LOCAL", + "INPUT_TYPE_EMAIL", + "INPUT_TYPE_MONTH", + "INPUT_TYPE_NUMBER", + "INPUT_TYPE_RANGE", + "INPUT_TYPE_SEARCH", + "INPUT_TYPE_TEL", + "INPUT_TYPE_TIME", + "INPUT_TYPE_URL", + "INPUT_TYPE_WEEK", + "LOCAL_STORAGE", + "POST_MESSAGE", + "SESSION_STORAGE", + "SMIL", + "SVG_CLIP_PATHS", + "SVG_FE_IMAGE", + "SVG_FILTERS", + "SVG_HREF", + "TOUCH", + "VIDEO", + "WEBGL", + "WEB_SOCKETS", + "WEB_SQL_DATABASE", + "WEB_WORKERS" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "type": "array" + }, + "backupImageReportingLabel": { + "description": "Reporting label used for HTML5 banner backup image. Applicable to the following creative types: DISPLAY when the primary asset type is not HTML_IMAGE.", + "type": "string" + }, + "backupImageTargetWindow": { + "$ref": "TargetWindow", + "description": "Target window for backup image. Applicable to the following creative types: FLASH_INPAGE and HTML5_BANNER. Applicable to DISPLAY when the primary asset type is not HTML_IMAGE." + }, + "clickTags": { + "description": "Click tags of the creative. For DISPLAY, FLASH_INPAGE, and HTML5_BANNER creatives, this is a subset of detected click tags for the assets associated with this creative. After creating a flash asset, detected click tags will be returned in the creativeAssetMetadata. When inserting the creative, populate the creative clickTags field using the creativeAssetMetadata.clickTags field. For DISPLAY_IMAGE_GALLERY creatives, there should be exactly one entry in this list for each image creative asset. A click tag is matched with a corresponding creative asset by matching the clickTag.name field with the creativeAsset.assetIdentifier.name field. Applicable to the following creative types: DISPLAY_IMAGE_GALLERY, FLASH_INPAGE, HTML5_BANNER. Applicable to DISPLAY when the primary asset type is not HTML_IMAGE.", + "items": { + "$ref": "ClickTag" + }, + "type": "array" + }, + "commercialId": { + "description": "Industry standard ID assigned to creative for reach and frequency. Applicable to INSTREAM_VIDEO_REDIRECT creatives.", + "type": "string" + }, + "companionCreatives": { + "description": "List of companion creatives assigned to an in-Stream videocreative. Acceptable values include IDs of existing flash and image creatives. Applicable to the following creative types: all VPAID and all INSTREAM_VIDEO with dynamicAssetSelection set to false.", + "items": { + "format": "int64", + "type": "string" + }, + "type": "array" + }, + "compatibility": { + "description": "Compatibilities associated with this creative. This is a read-only field. DISPLAY and DISPLAY_INTERSTITIAL refer to rendering either on desktop or on mobile devices or in mobile apps for regular or interstitial ads, respectively. APP and APP_INTERSTITIAL are for rendering in mobile apps. Only pre-existing creatives may have these compatibilities since new creatives will either be assigned DISPLAY or DISPLAY_INTERSTITIAL instead. IN_STREAM_VIDEO refers to rendering in in-stream video ads developed with the VAST standard. Applicable to all creative types.\n\nAcceptable values are:\n- \"APP\"\n- \"APP_INTERSTITIAL\"\n- \"IN_STREAM_VIDEO\"\n- \"DISPLAY\"\n- \"DISPLAY_INTERSTITIAL\"", + "items": { + "enum": [ + "APP", + "APP_INTERSTITIAL", + "DISPLAY", + "DISPLAY_INTERSTITIAL", + "IN_STREAM_VIDEO" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "type": "array" + }, + "convertFlashToHtml5": { + "description": "Whether Flash assets associated with the creative need to be automatically converted to HTML5. This flag is enabled by default and users can choose to disable it if they don't want the system to generate and use HTML5 asset for this creative. Applicable to the following creative type: FLASH_INPAGE. Applicable to DISPLAY when the primary asset type is not HTML_IMAGE.", + "type": "boolean" + }, + "counterCustomEvents": { + "description": "List of counter events configured for the creative. For DISPLAY_IMAGE_GALLERY creatives, these are read-only and auto-generated from clickTags. Applicable to the following creative types: DISPLAY_IMAGE_GALLERY, all RICH_MEDIA, and all VPAID.", + "items": { + "$ref": "CreativeCustomEvent" + }, + "type": "array" + }, + "creativeAssetSelection": { + "$ref": "CreativeAssetSelection", + "description": "Required if dynamicAssetSelection is true." + }, + "creativeAssets": { + "description": "Assets associated with a creative. Applicable to all but the following creative types: INTERNAL_REDIRECT, INTERSTITIAL_INTERNAL_REDIRECT, and REDIRECT", + "items": { + "$ref": "CreativeAsset" + }, + "type": "array" + }, + "creativeFieldAssignments": { + "description": "Creative field assignments for this creative. Applicable to all creative types.", + "items": { + "$ref": "CreativeFieldAssignment" + }, + "type": "array" + }, + "customKeyValues": { + "description": "Custom key-values for a Rich Media creative. Key-values let you customize the creative settings of a Rich Media ad running on your site without having to contact the advertiser. You can use key-values to dynamically change the look or functionality of a creative. Applicable to the following creative types: all RICH_MEDIA, and all VPAID.", + "items": { + "type": "string" + }, + "type": "array" + }, + "dynamicAssetSelection": { + "description": "Set this to true to enable the use of rules to target individual assets in this creative. When set to true creativeAssetSelection must be set. This also controls asset-level companions. When this is true, companion creatives should be assigned to creative assets. Learn more. Applicable to INSTREAM_VIDEO creatives.", + "type": "boolean" + }, + "exitCustomEvents": { + "description": "List of exit events configured for the creative. For DISPLAY and DISPLAY_IMAGE_GALLERY creatives, these are read-only and auto-generated from clickTags, For DISPLAY, an event is also created from the backupImageReportingLabel. Applicable to the following creative types: DISPLAY_IMAGE_GALLERY, all RICH_MEDIA, and all VPAID. Applicable to DISPLAY when the primary asset type is not HTML_IMAGE.", + "items": { + "$ref": "CreativeCustomEvent" + }, + "type": "array" + }, + "fsCommand": { + "$ref": "FsCommand", + "description": "OpenWindow FSCommand of this creative. This lets the SWF file communicate with either Flash Player or the program hosting Flash Player, such as a web browser. This is only triggered if allowScriptAccess field is true. Applicable to the following creative types: FLASH_INPAGE." + }, + "htmlCode": { + "description": "HTML code for the creative. This is a required field when applicable. This field is ignored if htmlCodeLocked is true. Applicable to the following creative types: all CUSTOM, FLASH_INPAGE, and HTML5_BANNER, and all RICH_MEDIA.", + "type": "string" + }, + "htmlCodeLocked": { + "description": "Whether HTML code is DCM-generated or manually entered. Set to true to ignore changes to htmlCode. Applicable to the following creative types: FLASH_INPAGE and HTML5_BANNER.", + "type": "boolean" + }, + "id": { + "description": "ID of this creative. This is a read-only, auto-generated field. Applicable to all creative types.", + "format": "int64", + "type": "string" + }, + "idDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of this creative. This is a read-only field. Applicable to all creative types." + }, + "kind": { + "default": "dfareporting#creative", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#creative\".", + "type": "string" + }, + "lastModifiedInfo": { + "$ref": "LastModifiedInfo", + "description": "Creative last modification information. This is a read-only field. Applicable to all creative types." + }, + "latestTraffickedCreativeId": { + "description": "Latest Studio trafficked creative ID associated with rich media and VPAID creatives. This is a read-only field. Applicable to the following creative types: all RICH_MEDIA, and all VPAID.", + "format": "int64", + "type": "string" + }, + "name": { + "description": "Name of the creative. This is a required field and must be less than 256 characters long. Applicable to all creative types.", + "type": "string" + }, + "overrideCss": { + "description": "Override CSS value for rich media creatives. Applicable to the following creative types: all RICH_MEDIA.", + "type": "string" + }, + "progressOffset": { + "$ref": "VideoOffset", + "description": "Amount of time to play the video before counting a view. Applicable to the following creative types: all INSTREAM_VIDEO." + }, + "redirectUrl": { + "description": "URL of hosted image or hosted video or another ad tag. For INSTREAM_VIDEO_REDIRECT creatives this is the in-stream video redirect URL. The standard for a VAST (Video Ad Serving Template) ad response allows for a redirect link to another VAST 2.0 or 3.0 call. This is a required field when applicable. Applicable to the following creative types: DISPLAY_REDIRECT, INTERNAL_REDIRECT, INTERSTITIAL_INTERNAL_REDIRECT, and INSTREAM_VIDEO_REDIRECT", + "type": "string" + }, + "renderingId": { + "description": "ID of current rendering version. This is a read-only field. Applicable to all creative types.", + "format": "int64", + "type": "string" + }, + "renderingIdDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the rendering ID of this creative. This is a read-only field. Applicable to all creative types." + }, + "requiredFlashPluginVersion": { + "description": "The minimum required Flash plugin version for this creative. For example, 11.2.202.235. This is a read-only field. Applicable to the following creative types: all RICH_MEDIA, and all VPAID.", + "type": "string" + }, + "requiredFlashVersion": { + "description": "The internal Flash version for this creative as calculated by DoubleClick Studio. This is a read-only field. Applicable to the following creative types: FLASH_INPAGE all RICH_MEDIA, and all VPAID. Applicable to DISPLAY when the primary asset type is not HTML_IMAGE.", + "format": "int32", + "type": "integer" + }, + "size": { + "$ref": "Size", + "description": "Size associated with this creative. When inserting or updating a creative either the size ID field or size width and height fields can be used. This is a required field when applicable; however for IMAGE, FLASH_INPAGE creatives, and for DISPLAY creatives with a primary asset of type HTML_IMAGE, if left blank, this field will be automatically set using the actual size of the associated image assets. Applicable to the following creative types: DISPLAY, DISPLAY_IMAGE_GALLERY, FLASH_INPAGE, HTML5_BANNER, IMAGE, and all RICH_MEDIA." + }, + "skipOffset": { + "$ref": "VideoOffset", + "description": "Amount of time to play the video before the skip button appears. Applicable to the following creative types: all INSTREAM_VIDEO." + }, + "skippable": { + "description": "Whether the user can choose to skip the creative. Applicable to the following creative types: all INSTREAM_VIDEO and all VPAID.", + "type": "boolean" + }, + "sslCompliant": { + "description": "Whether the creative is SSL-compliant. This is a read-only field. Applicable to all creative types.", + "type": "boolean" + }, + "sslOverride": { + "description": "Whether creative should be treated as SSL compliant even if the system scan shows it's not. Applicable to all creative types.", + "type": "boolean" + }, + "studioAdvertiserId": { + "description": "Studio advertiser ID associated with rich media and VPAID creatives. This is a read-only field. Applicable to the following creative types: all RICH_MEDIA, and all VPAID.", + "format": "int64", + "type": "string" + }, + "studioCreativeId": { + "description": "Studio creative ID associated with rich media and VPAID creatives. This is a read-only field. Applicable to the following creative types: all RICH_MEDIA, and all VPAID.", + "format": "int64", + "type": "string" + }, + "studioTraffickedCreativeId": { + "description": "Studio trafficked creative ID associated with rich media and VPAID creatives. This is a read-only field. Applicable to the following creative types: all RICH_MEDIA, and all VPAID.", + "format": "int64", + "type": "string" + }, + "subaccountId": { + "description": "Subaccount ID of this creative. This field, if left unset, will be auto-generated for both insert and update operations. Applicable to all creative types.", + "format": "int64", + "type": "string" + }, + "thirdPartyBackupImageImpressionsUrl": { + "description": "Third-party URL used to record backup image impressions. Applicable to the following creative types: all RICH_MEDIA.", + "type": "string" + }, + "thirdPartyRichMediaImpressionsUrl": { + "description": "Third-party URL used to record rich media impressions. Applicable to the following creative types: all RICH_MEDIA.", + "type": "string" + }, + "thirdPartyUrls": { + "description": "Third-party URLs for tracking in-stream video creative events. Applicable to the following creative types: all INSTREAM_VIDEO and all VPAID.", + "items": { + "$ref": "ThirdPartyTrackingUrl" + }, + "type": "array" + }, + "timerCustomEvents": { + "description": "List of timer events configured for the creative. For DISPLAY_IMAGE_GALLERY creatives, these are read-only and auto-generated from clickTags. Applicable to the following creative types: DISPLAY_IMAGE_GALLERY, all RICH_MEDIA, and all VPAID. Applicable to DISPLAY when the primary asset is not HTML_IMAGE.", + "items": { + "$ref": "CreativeCustomEvent" + }, + "type": "array" + }, + "totalFileSize": { + "description": "Combined size of all creative assets. This is a read-only field. Applicable to the following creative types: all RICH_MEDIA, and all VPAID.", + "format": "int64", + "type": "string" + }, + "type": { + "description": "Type of this creative. This is a required field. Applicable to all creative types.\n\nNote: FLASH_INPAGE, HTML5_BANNER, and IMAGE are only used for existing creatives. New creatives should use DISPLAY as a replacement for these types.", + "enum": [ + "BRAND_SAFE_DEFAULT_INSTREAM_VIDEO", + "CUSTOM_DISPLAY", + "CUSTOM_DISPLAY_INTERSTITIAL", + "DISPLAY", + "DISPLAY_IMAGE_GALLERY", + "DISPLAY_REDIRECT", + "FLASH_INPAGE", + "HTML5_BANNER", + "IMAGE", + "INSTREAM_VIDEO", + "INSTREAM_VIDEO_REDIRECT", + "INTERNAL_REDIRECT", + "INTERSTITIAL_INTERNAL_REDIRECT", + "RICH_MEDIA_DISPLAY_BANNER", + "RICH_MEDIA_DISPLAY_EXPANDING", + "RICH_MEDIA_DISPLAY_INTERSTITIAL", + "RICH_MEDIA_DISPLAY_MULTI_FLOATING_INTERSTITIAL", + "RICH_MEDIA_IM_EXPAND", + "RICH_MEDIA_INPAGE_FLOATING", + "RICH_MEDIA_MOBILE_IN_APP", + "RICH_MEDIA_PEEL_DOWN", + "TRACKING_TEXT", + "VPAID_LINEAR_VIDEO", + "VPAID_NON_LINEAR_VIDEO" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "universalAdId": { + "$ref": "UniversalAdId", + "description": "A Universal Ad ID as per the VAST 4.0 spec. Applicable to the following creative types: INSTREAM_VIDEO and VPAID." + }, + "version": { + "description": "The version number helps you keep track of multiple versions of your creative in your reports. The version number will always be auto-generated during insert operations to start at 1. For tracking creatives the version cannot be incremented and will always remain at 1. For all other creative types the version can be incremented only by 1 during update operations. In addition, the version will be automatically incremented by 1 when undergoing Rich Media creative merging. Applicable to all creative types.", + "format": "int32", + "type": "integer" + }, + "videoDescription": { + "description": "Description of the video ad. Applicable to the following creative types: all INSTREAM_VIDEO and all VPAID.", + "type": "string" + }, + "videoDuration": { + "description": "Creative video duration in seconds. This is a read-only field. Applicable to the following creative types: INSTREAM_VIDEO, all RICH_MEDIA, and all VPAID.", + "format": "float", + "type": "number" + } + }, + "type": "object" + }, + "CreativeAsset": { + "description": "Creative Asset.", + "id": "CreativeAsset", + "properties": { + "actionScript3": { + "description": "Whether ActionScript3 is enabled for the flash asset. This is a read-only field. Applicable to the following creative type: FLASH_INPAGE. Applicable to DISPLAY when the primary asset type is not HTML_IMAGE.", + "type": "boolean" + }, + "active": { + "description": "Whether the video asset is active. This is a read-only field for VPAID_NON_LINEAR_VIDEO assets. Applicable to the following creative types: INSTREAM_VIDEO and all VPAID.", + "type": "boolean" + }, + "alignment": { + "description": "Possible alignments for an asset. This is a read-only field. Applicable to the following creative types: RICH_MEDIA_DISPLAY_MULTI_FLOATING_INTERSTITIAL.", + "enum": [ + "ALIGNMENT_BOTTOM", + "ALIGNMENT_LEFT", + "ALIGNMENT_RIGHT", + "ALIGNMENT_TOP" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ], + "type": "string" + }, + "artworkType": { + "description": "Artwork type of rich media creative. This is a read-only field. Applicable to the following creative types: all RICH_MEDIA.", + "enum": [ + "ARTWORK_TYPE_FLASH", + "ARTWORK_TYPE_HTML5", + "ARTWORK_TYPE_IMAGE", + "ARTWORK_TYPE_MIXED" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ], + "type": "string" + }, + "assetIdentifier": { + "$ref": "CreativeAssetId", + "description": "Identifier of this asset. This is the same identifier returned during creative asset insert operation. This is a required field. Applicable to all but the following creative types: all REDIRECT and TRACKING_TEXT." + }, + "backupImageExit": { + "$ref": "CreativeCustomEvent", + "description": "Exit event configured for the backup image. Applicable to the following creative types: all RICH_MEDIA." + }, + "bitRate": { + "description": "Detected bit-rate for video asset. This is a read-only field. Applicable to the following creative types: INSTREAM_VIDEO and all VPAID.", + "format": "int32", + "type": "integer" + }, + "childAssetType": { + "description": "Rich media child asset type. This is a read-only field. Applicable to the following creative types: all VPAID.", + "enum": [ + "CHILD_ASSET_TYPE_DATA", + "CHILD_ASSET_TYPE_FLASH", + "CHILD_ASSET_TYPE_IMAGE", + "CHILD_ASSET_TYPE_VIDEO" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ], + "type": "string" + }, + "collapsedSize": { + "$ref": "Size", + "description": "Size of an asset when collapsed. This is a read-only field. Applicable to the following creative types: all RICH_MEDIA and all VPAID. Additionally, applicable to assets whose displayType is ASSET_DISPLAY_TYPE_EXPANDING or ASSET_DISPLAY_TYPE_PEEL_DOWN." + }, + "companionCreativeIds": { + "description": "List of companion creatives assigned to an in-stream video creative asset. Acceptable values include IDs of existing flash and image creatives. Applicable to INSTREAM_VIDEO creative type with dynamicAssetSelection set to true.", + "items": { + "format": "int64", + "type": "string" + }, + "type": "array" + }, + "customStartTimeValue": { + "description": "Custom start time in seconds for making the asset visible. Applicable to the following creative types: all RICH_MEDIA. Value must be greater than or equal to 0.", + "format": "int32", + "type": "integer" + }, + "detectedFeatures": { + "description": "List of feature dependencies for the creative asset that are detected by DCM. Feature dependencies are features that a browser must be able to support in order to render your HTML5 creative correctly. This is a read-only, auto-generated field. Applicable to the following creative types: HTML5_BANNER. Applicable to DISPLAY when the primary asset type is not HTML_IMAGE.", + "items": { + "enum": [ + "APPLICATION_CACHE", + "AUDIO", + "CANVAS", + "CANVAS_TEXT", + "CSS_ANIMATIONS", + "CSS_BACKGROUND_SIZE", + "CSS_BORDER_IMAGE", + "CSS_BORDER_RADIUS", + "CSS_BOX_SHADOW", + "CSS_COLUMNS", + "CSS_FLEX_BOX", + "CSS_FONT_FACE", + "CSS_GENERATED_CONTENT", + "CSS_GRADIENTS", + "CSS_HSLA", + "CSS_MULTIPLE_BGS", + "CSS_OPACITY", + "CSS_REFLECTIONS", + "CSS_RGBA", + "CSS_TEXT_SHADOW", + "CSS_TRANSFORMS", + "CSS_TRANSFORMS3D", + "CSS_TRANSITIONS", + "DRAG_AND_DROP", + "GEO_LOCATION", + "HASH_CHANGE", + "HISTORY", + "INDEXED_DB", + "INLINE_SVG", + "INPUT_ATTR_AUTOCOMPLETE", + "INPUT_ATTR_AUTOFOCUS", + "INPUT_ATTR_LIST", + "INPUT_ATTR_MAX", + "INPUT_ATTR_MIN", + "INPUT_ATTR_MULTIPLE", + "INPUT_ATTR_PATTERN", + "INPUT_ATTR_PLACEHOLDER", + "INPUT_ATTR_REQUIRED", + "INPUT_ATTR_STEP", + "INPUT_TYPE_COLOR", + "INPUT_TYPE_DATE", + "INPUT_TYPE_DATETIME", + "INPUT_TYPE_DATETIME_LOCAL", + "INPUT_TYPE_EMAIL", + "INPUT_TYPE_MONTH", + "INPUT_TYPE_NUMBER", + "INPUT_TYPE_RANGE", + "INPUT_TYPE_SEARCH", + "INPUT_TYPE_TEL", + "INPUT_TYPE_TIME", + "INPUT_TYPE_URL", + "INPUT_TYPE_WEEK", + "LOCAL_STORAGE", + "POST_MESSAGE", + "SESSION_STORAGE", + "SMIL", + "SVG_CLIP_PATHS", + "SVG_FE_IMAGE", + "SVG_FILTERS", + "SVG_HREF", + "TOUCH", + "VIDEO", + "WEBGL", + "WEB_SOCKETS", + "WEB_SQL_DATABASE", + "WEB_WORKERS" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "type": "array" + }, + "displayType": { + "description": "Type of rich media asset. This is a read-only field. Applicable to the following creative types: all RICH_MEDIA.", + "enum": [ + "ASSET_DISPLAY_TYPE_BACKDROP", + "ASSET_DISPLAY_TYPE_EXPANDING", + "ASSET_DISPLAY_TYPE_FLASH_IN_FLASH", + "ASSET_DISPLAY_TYPE_FLASH_IN_FLASH_EXPANDING", + "ASSET_DISPLAY_TYPE_FLOATING", + "ASSET_DISPLAY_TYPE_INPAGE", + "ASSET_DISPLAY_TYPE_OVERLAY", + "ASSET_DISPLAY_TYPE_PEEL_DOWN", + "ASSET_DISPLAY_TYPE_VPAID_LINEAR", + "ASSET_DISPLAY_TYPE_VPAID_NON_LINEAR" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "duration": { + "description": "Duration in seconds for which an asset will be displayed. Applicable to the following creative types: INSTREAM_VIDEO and VPAID_LINEAR_VIDEO. Value must be greater than or equal to 1.", + "format": "int32", + "type": "integer" + }, + "durationType": { + "description": "Duration type for which an asset will be displayed. Applicable to the following creative types: all RICH_MEDIA.", + "enum": [ + "ASSET_DURATION_TYPE_AUTO", + "ASSET_DURATION_TYPE_CUSTOM", + "ASSET_DURATION_TYPE_NONE" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, + "expandedDimension": { + "$ref": "Size", + "description": "Detected expanded dimension for video asset. This is a read-only field. Applicable to the following creative types: INSTREAM_VIDEO and all VPAID." + }, + "fileSize": { + "description": "File size associated with this creative asset. This is a read-only field. Applicable to all but the following creative types: all REDIRECT and TRACKING_TEXT.", + "format": "int64", + "type": "string" + }, + "flashVersion": { + "description": "Flash version of the asset. This is a read-only field. Applicable to the following creative types: FLASH_INPAGE, all RICH_MEDIA, and all VPAID. Applicable to DISPLAY when the primary asset type is not HTML_IMAGE.", + "format": "int32", + "type": "integer" + }, + "hideFlashObjects": { + "description": "Whether to hide Flash objects flag for an asset. Applicable to the following creative types: all RICH_MEDIA.", + "type": "boolean" + }, + "hideSelectionBoxes": { + "description": "Whether to hide selection boxes flag for an asset. Applicable to the following creative types: all RICH_MEDIA.", + "type": "boolean" + }, + "horizontallyLocked": { + "description": "Whether the asset is horizontally locked. This is a read-only field. Applicable to the following creative types: all RICH_MEDIA.", + "type": "boolean" + }, + "id": { + "description": "Numeric ID of this creative asset. This is a required field and should not be modified. Applicable to all but the following creative types: all REDIRECT and TRACKING_TEXT.", + "format": "int64", + "type": "string" + }, + "idDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of the asset. This is a read-only, auto-generated field." + }, + "mimeType": { + "description": "Detected MIME type for video asset. This is a read-only field. Applicable to the following creative types: INSTREAM_VIDEO and all VPAID.", + "type": "string" + }, + "offset": { + "$ref": "OffsetPosition", + "description": "Offset position for an asset in collapsed mode. This is a read-only field. Applicable to the following creative types: all RICH_MEDIA and all VPAID. Additionally, only applicable to assets whose displayType is ASSET_DISPLAY_TYPE_EXPANDING or ASSET_DISPLAY_TYPE_PEEL_DOWN." + }, + "originalBackup": { + "description": "Whether the backup asset is original or changed by the user in DCM. Applicable to the following creative types: all RICH_MEDIA.", + "type": "boolean" + }, + "position": { + "$ref": "OffsetPosition", + "description": "Offset position for an asset. Applicable to the following creative types: all RICH_MEDIA." + }, + "positionLeftUnit": { + "description": "Offset left unit for an asset. This is a read-only field. Applicable to the following creative types: all RICH_MEDIA.", + "enum": [ + "OFFSET_UNIT_PERCENT", + "OFFSET_UNIT_PIXEL", + "OFFSET_UNIT_PIXEL_FROM_CENTER" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, + "positionTopUnit": { + "description": "Offset top unit for an asset. This is a read-only field if the asset displayType is ASSET_DISPLAY_TYPE_OVERLAY. Applicable to the following creative types: all RICH_MEDIA.", + "enum": [ + "OFFSET_UNIT_PERCENT", + "OFFSET_UNIT_PIXEL", + "OFFSET_UNIT_PIXEL_FROM_CENTER" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, + "progressiveServingUrl": { + "description": "Progressive URL for video asset. This is a read-only field. Applicable to the following creative types: INSTREAM_VIDEO and all VPAID.", + "type": "string" + }, + "pushdown": { + "description": "Whether the asset pushes down other content. Applicable to the following creative types: all RICH_MEDIA. Additionally, only applicable when the asset offsets are 0, the collapsedSize.width matches size.width, and the collapsedSize.height is less than size.height.", + "type": "boolean" + }, + "pushdownDuration": { + "description": "Pushdown duration in seconds for an asset. Applicable to the following creative types: all RICH_MEDIA.Additionally, only applicable when the asset pushdown field is true, the offsets are 0, the collapsedSize.width matches size.width, and the collapsedSize.height is less than size.height. Acceptable values are 0 to 9.99, inclusive.", + "format": "float", + "type": "number" + }, + "role": { + "description": "Role of the asset in relation to creative. Applicable to all but the following creative types: all REDIRECT and TRACKING_TEXT. This is a required field.\nPRIMARY applies to DISPLAY, FLASH_INPAGE, HTML5_BANNER, IMAGE, DISPLAY_IMAGE_GALLERY, all RICH_MEDIA (which may contain multiple primary assets), and all VPAID creatives.\nBACKUP_IMAGE applies to FLASH_INPAGE, HTML5_BANNER, all RICH_MEDIA, and all VPAID creatives. Applicable to DISPLAY when the primary asset type is not HTML_IMAGE.\nADDITIONAL_IMAGE and ADDITIONAL_FLASH apply to FLASH_INPAGE creatives.\nOTHER refers to assets from sources other than DCM, such as Studio uploaded assets, applicable to all RICH_MEDIA and all VPAID creatives.\nPARENT_VIDEO refers to videos uploaded by the user in DCM and is applicable to INSTREAM_VIDEO and VPAID_LINEAR_VIDEO creatives.\nTRANSCODED_VIDEO refers to videos transcoded by DCM from PARENT_VIDEO assets and is applicable to INSTREAM_VIDEO and VPAID_LINEAR_VIDEO creatives.\nALTERNATE_VIDEO refers to the DCM representation of child asset videos from Studio, and is applicable to VPAID_LINEAR_VIDEO creatives. These cannot be added or removed within DCM.\nFor VPAID_LINEAR_VIDEO creatives, PARENT_VIDEO, TRANSCODED_VIDEO and ALTERNATE_VIDEO assets that are marked active serve as backup in case the VPAID creative cannot be served. Only PARENT_VIDEO assets can be added or removed for an INSTREAM_VIDEO or VPAID_LINEAR_VIDEO creative.", + "enum": [ + "ADDITIONAL_FLASH", + "ADDITIONAL_IMAGE", + "ALTERNATE_VIDEO", + "BACKUP_IMAGE", + "OTHER", + "PARENT_VIDEO", + "PRIMARY", + "TRANSCODED_VIDEO" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "size": { + "$ref": "Size", + "description": "Size associated with this creative asset. This is a required field when applicable; however for IMAGE and FLASH_INPAGE, creatives if left blank, this field will be automatically set using the actual size of the associated image asset. Applicable to the following creative types: DISPLAY_IMAGE_GALLERY, FLASH_INPAGE, HTML5_BANNER, IMAGE, and all RICH_MEDIA. Applicable to DISPLAY when the primary asset type is not HTML_IMAGE." + }, + "sslCompliant": { + "description": "Whether the asset is SSL-compliant. This is a read-only field. Applicable to all but the following creative types: all REDIRECT and TRACKING_TEXT.", + "type": "boolean" + }, + "startTimeType": { + "description": "Initial wait time type before making the asset visible. Applicable to the following creative types: all RICH_MEDIA.", + "enum": [ + "ASSET_START_TIME_TYPE_CUSTOM", + "ASSET_START_TIME_TYPE_NONE" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "streamingServingUrl": { + "description": "Streaming URL for video asset. This is a read-only field. Applicable to the following creative types: INSTREAM_VIDEO and all VPAID.", + "type": "string" + }, + "transparency": { + "description": "Whether the asset is transparent. Applicable to the following creative types: all RICH_MEDIA. Additionally, only applicable to HTML5 assets.", + "type": "boolean" + }, + "verticallyLocked": { + "description": "Whether the asset is vertically locked. This is a read-only field. Applicable to the following creative types: all RICH_MEDIA.", + "type": "boolean" + }, + "videoDuration": { + "description": "Detected video duration for video asset. This is a read-only field. Applicable to the following creative types: INSTREAM_VIDEO and all VPAID.", + "format": "float", + "type": "number" + }, + "windowMode": { + "description": "Window mode options for flash assets. Applicable to the following creative types: FLASH_INPAGE, RICH_MEDIA_DISPLAY_EXPANDING, RICH_MEDIA_IM_EXPAND, RICH_MEDIA_DISPLAY_BANNER, and RICH_MEDIA_INPAGE_FLOATING.", + "enum": [ + "OPAQUE", + "TRANSPARENT", + "WINDOW" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, + "zIndex": { + "description": "zIndex value of an asset. Applicable to the following creative types: all RICH_MEDIA.Additionally, only applicable to assets whose displayType is NOT one of the following types: ASSET_DISPLAY_TYPE_INPAGE or ASSET_DISPLAY_TYPE_OVERLAY. Acceptable values are -999999999 to 999999999, inclusive.", + "format": "int32", + "type": "integer" + }, + "zipFilename": { + "description": "File name of zip file. This is a read-only field. Applicable to the following creative types: HTML5_BANNER.", + "type": "string" + }, + "zipFilesize": { + "description": "Size of zip file. This is a read-only field. Applicable to the following creative types: HTML5_BANNER.", + "type": "string" + } + }, + "type": "object" + }, + "CreativeAssetId": { + "description": "Creative Asset ID.", + "id": "CreativeAssetId", + "properties": { + "name": { + "description": "Name of the creative asset. This is a required field while inserting an asset. After insertion, this assetIdentifier is used to identify the uploaded asset. Characters in the name must be alphanumeric or one of the following: \".-_ \". Spaces are allowed.", + "type": "string" + }, + "type": { + "description": "Type of asset to upload. This is a required field. FLASH and IMAGE are no longer supported for new uploads. All image assets should use HTML_IMAGE.", + "enum": [ + "FLASH", + "HTML", + "HTML_IMAGE", + "IMAGE", + "VIDEO" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "CreativeAssetMetadata": { + "description": "CreativeAssets contains properties of a creative asset file which will be uploaded or has already been uploaded. Refer to the creative sample code for how to upload assets and insert a creative.", + "id": "CreativeAssetMetadata", + "properties": { + "assetIdentifier": { + "$ref": "CreativeAssetId", + "description": "ID of the creative asset. This is a required field." + }, + "clickTags": { + "description": "List of detected click tags for assets. This is a read-only auto-generated field.", + "items": { + "$ref": "ClickTag" + }, + "type": "array" + }, + "detectedFeatures": { + "description": "List of feature dependencies for the creative asset that are detected by DCM. Feature dependencies are features that a browser must be able to support in order to render your HTML5 creative correctly. This is a read-only, auto-generated field.", + "items": { + "enum": [ + "APPLICATION_CACHE", + "AUDIO", + "CANVAS", + "CANVAS_TEXT", + "CSS_ANIMATIONS", + "CSS_BACKGROUND_SIZE", + "CSS_BORDER_IMAGE", + "CSS_BORDER_RADIUS", + "CSS_BOX_SHADOW", + "CSS_COLUMNS", + "CSS_FLEX_BOX", + "CSS_FONT_FACE", + "CSS_GENERATED_CONTENT", + "CSS_GRADIENTS", + "CSS_HSLA", + "CSS_MULTIPLE_BGS", + "CSS_OPACITY", + "CSS_REFLECTIONS", + "CSS_RGBA", + "CSS_TEXT_SHADOW", + "CSS_TRANSFORMS", + "CSS_TRANSFORMS3D", + "CSS_TRANSITIONS", + "DRAG_AND_DROP", + "GEO_LOCATION", + "HASH_CHANGE", + "HISTORY", + "INDEXED_DB", + "INLINE_SVG", + "INPUT_ATTR_AUTOCOMPLETE", + "INPUT_ATTR_AUTOFOCUS", + "INPUT_ATTR_LIST", + "INPUT_ATTR_MAX", + "INPUT_ATTR_MIN", + "INPUT_ATTR_MULTIPLE", + "INPUT_ATTR_PATTERN", + "INPUT_ATTR_PLACEHOLDER", + "INPUT_ATTR_REQUIRED", + "INPUT_ATTR_STEP", + "INPUT_TYPE_COLOR", + "INPUT_TYPE_DATE", + "INPUT_TYPE_DATETIME", + "INPUT_TYPE_DATETIME_LOCAL", + "INPUT_TYPE_EMAIL", + "INPUT_TYPE_MONTH", + "INPUT_TYPE_NUMBER", + "INPUT_TYPE_RANGE", + "INPUT_TYPE_SEARCH", + "INPUT_TYPE_TEL", + "INPUT_TYPE_TIME", + "INPUT_TYPE_URL", + "INPUT_TYPE_WEEK", + "LOCAL_STORAGE", + "POST_MESSAGE", + "SESSION_STORAGE", + "SMIL", + "SVG_CLIP_PATHS", + "SVG_FE_IMAGE", + "SVG_FILTERS", + "SVG_HREF", + "TOUCH", + "VIDEO", + "WEBGL", + "WEB_SOCKETS", + "WEB_SQL_DATABASE", + "WEB_WORKERS" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "type": "array" + }, + "id": { + "description": "Numeric ID of the asset. This is a read-only, auto-generated field.", + "format": "int64", + "type": "string" + }, + "idDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the numeric ID of the asset. This is a read-only, auto-generated field." + }, + "kind": { + "default": "dfareporting#creativeAssetMetadata", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#creativeAssetMetadata\".", + "type": "string" + }, + "warnedValidationRules": { + "description": "Rules validated during code generation that generated a warning. This is a read-only, auto-generated field.\n\nPossible values are:\n- \"ADMOB_REFERENCED\"\n- \"ASSET_FORMAT_UNSUPPORTED_DCM\"\n- \"ASSET_INVALID\"\n- \"CLICK_TAG_HARD_CODED\"\n- \"CLICK_TAG_INVALID\"\n- \"CLICK_TAG_IN_GWD\"\n- \"CLICK_TAG_MISSING\"\n- \"CLICK_TAG_MORE_THAN_ONE\"\n- \"CLICK_TAG_NON_TOP_LEVEL\"\n- \"COMPONENT_UNSUPPORTED_DCM\"\n- \"ENABLER_UNSUPPORTED_METHOD_DCM\"\n- \"EXTERNAL_FILE_REFERENCED\"\n- \"FILE_DETAIL_EMPTY\"\n- \"FILE_TYPE_INVALID\"\n- \"GWD_PROPERTIES_INVALID\"\n- \"HTML5_FEATURE_UNSUPPORTED\"\n- \"LINKED_FILE_NOT_FOUND\"\n- \"MAX_FLASH_VERSION_11\"\n- \"MRAID_REFERENCED\"\n- \"NOT_SSL_COMPLIANT\"\n- \"ORPHANED_ASSET\"\n- \"PRIMARY_HTML_MISSING\"\n- \"SVG_INVALID\"\n- \"ZIP_INVALID\"", + "items": { + "enum": [ + "ADMOB_REFERENCED", + "ASSET_FORMAT_UNSUPPORTED_DCM", + "ASSET_INVALID", + "CLICK_TAG_HARD_CODED", + "CLICK_TAG_INVALID", + "CLICK_TAG_IN_GWD", + "CLICK_TAG_MISSING", + "CLICK_TAG_MORE_THAN_ONE", + "CLICK_TAG_NON_TOP_LEVEL", + "COMPONENT_UNSUPPORTED_DCM", + "ENABLER_UNSUPPORTED_METHOD_DCM", + "EXTERNAL_FILE_REFERENCED", + "FILE_DETAIL_EMPTY", + "FILE_TYPE_INVALID", + "GWD_PROPERTIES_INVALID", + "HTML5_FEATURE_UNSUPPORTED", + "LINKED_FILE_NOT_FOUND", + "MAX_FLASH_VERSION_11", + "MRAID_REFERENCED", + "NOT_SSL_COMPLIANT", + "ORPHANED_ASSET", + "PRIMARY_HTML_MISSING", + "SVG_INVALID", + "ZIP_INVALID" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "CreativeAssetSelection": { + "description": "Encapsulates the list of rules for asset selection and a default asset in case none of the rules match. Applicable to INSTREAM_VIDEO creatives.", + "id": "CreativeAssetSelection", + "properties": { + "defaultAssetId": { + "description": "A creativeAssets[].id. This should refer to one of the parent assets in this creative, and will be served if none of the rules match. This is a required field.", + "format": "int64", + "type": "string" + }, + "rules": { + "description": "Rules determine which asset will be served to a viewer. Rules will be evaluated in the order in which they are stored in this list. This list must contain at least one rule. Applicable to INSTREAM_VIDEO creatives.", + "items": { + "$ref": "Rule" + }, + "type": "array" + } + }, + "type": "object" + }, + "CreativeAssignment": { + "description": "Creative Assignment.", + "id": "CreativeAssignment", + "properties": { + "active": { + "description": "Whether this creative assignment is active. When true, the creative will be included in the ad's rotation.", + "type": "boolean" + }, + "applyEventTags": { + "description": "Whether applicable event tags should fire when this creative assignment is rendered. If this value is unset when the ad is inserted or updated, it will default to true for all creative types EXCEPT for INTERNAL_REDIRECT, INTERSTITIAL_INTERNAL_REDIRECT, and INSTREAM_VIDEO.", + "type": "boolean" + }, + "clickThroughUrl": { + "$ref": "ClickThroughUrl", + "description": "Click-through URL of the creative assignment." + }, + "companionCreativeOverrides": { + "description": "Companion creative overrides for this creative assignment. Applicable to video ads.", + "items": { + "$ref": "CompanionClickThroughOverride" + }, + "type": "array" + }, + "creativeGroupAssignments": { + "description": "Creative group assignments for this creative assignment. Only one assignment per creative group number is allowed for a maximum of two assignments.", + "items": { + "$ref": "CreativeGroupAssignment" + }, + "type": "array" + }, + "creativeId": { + "description": "ID of the creative to be assigned. This is a required field.", + "format": "int64", + "type": "string" + }, + "creativeIdDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of the creative. This is a read-only, auto-generated field." + }, + "endTime": { + "description": "Date and time that the assigned creative should stop serving. Must be later than the start time.", + "format": "date-time", + "type": "string" + }, + "richMediaExitOverrides": { + "description": "Rich media exit overrides for this creative assignment.\nApplicable when the creative type is any of the following: \n- DISPLAY\n- RICH_MEDIA_INPAGE\n- RICH_MEDIA_INPAGE_FLOATING\n- RICH_MEDIA_IM_EXPAND\n- RICH_MEDIA_EXPANDING\n- RICH_MEDIA_INTERSTITIAL_FLOAT\n- RICH_MEDIA_MOBILE_IN_APP\n- RICH_MEDIA_MULTI_FLOATING\n- RICH_MEDIA_PEEL_DOWN\n- VPAID_LINEAR\n- VPAID_NON_LINEAR", + "items": { + "$ref": "RichMediaExitOverride" + }, + "type": "array" + }, + "sequence": { + "description": "Sequence number of the creative assignment, applicable when the rotation type is CREATIVE_ROTATION_TYPE_SEQUENTIAL. Acceptable values are 1 to 65535, inclusive.", + "format": "int32", + "type": "integer" + }, + "sslCompliant": { + "description": "Whether the creative to be assigned is SSL-compliant. This is a read-only field that is auto-generated when the ad is inserted or updated.", + "type": "boolean" + }, + "startTime": { + "description": "Date and time that the assigned creative should start serving.", + "format": "date-time", + "type": "string" + }, + "weight": { + "description": "Weight of the creative assignment, applicable when the rotation type is CREATIVE_ROTATION_TYPE_RANDOM. Value must be greater than or equal to 1.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "CreativeCustomEvent": { + "description": "Creative Custom Event.", + "id": "CreativeCustomEvent", + "properties": { + "advertiserCustomEventId": { + "description": "Unique ID of this event used by DDM Reporting and Data Transfer. This is a read-only field.", + "format": "int64", + "type": "string" + }, + "advertiserCustomEventName": { + "description": "User-entered name for the event.", + "type": "string" + }, + "advertiserCustomEventType": { + "description": "Type of the event. This is a read-only field.", + "enum": [ + "ADVERTISER_EVENT_COUNTER", + "ADVERTISER_EVENT_EXIT", + "ADVERTISER_EVENT_TIMER" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, + "artworkLabel": { + "description": "Artwork label column, used to link events in DCM back to events in Studio. This is a required field and should not be modified after insertion.", + "type": "string" + }, + "artworkType": { + "description": "Artwork type used by the creative.This is a read-only field.", + "enum": [ + "ARTWORK_TYPE_FLASH", + "ARTWORK_TYPE_HTML5", + "ARTWORK_TYPE_IMAGE", + "ARTWORK_TYPE_MIXED" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ], + "type": "string" + }, + "exitUrl": { + "description": "Exit URL of the event. This field is used only for exit events.", + "type": "string" + }, + "id": { + "description": "ID of this event. This is a required field and should not be modified after insertion.", + "format": "int64", + "type": "string" + }, + "popupWindowProperties": { + "$ref": "PopupWindowProperties", + "description": "Properties for rich media popup windows. This field is used only for exit events." + }, + "targetType": { + "description": "Target type used by the event.", + "enum": [ + "TARGET_BLANK", + "TARGET_PARENT", + "TARGET_POPUP", + "TARGET_SELF", + "TARGET_TOP" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "videoReportingId": { + "description": "Video reporting ID, used to differentiate multiple videos in a single creative. This is a read-only field.", + "type": "string" + } + }, + "type": "object" + }, + "CreativeField": { + "description": "Contains properties of a creative field.", + "id": "CreativeField", + "properties": { + "accountId": { + "description": "Account ID of this creative field. This is a read-only field that can be left blank.", + "format": "int64", + "type": "string" + }, + "advertiserId": { + "description": "Advertiser ID of this creative field. This is a required field on insertion.", + "format": "int64", + "type": "string" + }, + "advertiserIdDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of the advertiser. This is a read-only, auto-generated field." + }, + "id": { + "description": "ID of this creative field. This is a read-only, auto-generated field.", + "format": "int64", + "type": "string" + }, + "kind": { + "default": "dfareporting#creativeField", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#creativeField\".", + "type": "string" + }, + "name": { + "description": "Name of this creative field. This is a required field and must be less than 256 characters long and unique among creative fields of the same advertiser.", + "type": "string" + }, + "subaccountId": { + "description": "Subaccount ID of this creative field. This is a read-only field that can be left blank.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "CreativeFieldAssignment": { + "description": "Creative Field Assignment.", + "id": "CreativeFieldAssignment", + "properties": { + "creativeFieldId": { + "description": "ID of the creative field.", + "format": "int64", + "type": "string" + }, + "creativeFieldValueId": { + "description": "ID of the creative field value.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "CreativeFieldValue": { + "description": "Contains properties of a creative field value.", + "id": "CreativeFieldValue", + "properties": { + "id": { + "description": "ID of this creative field value. This is a read-only, auto-generated field.", + "format": "int64", + "type": "string" + }, + "kind": { + "default": "dfareporting#creativeFieldValue", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#creativeFieldValue\".", + "type": "string" + }, + "value": { + "description": "Value of this creative field value. It needs to be less than 256 characters in length and unique per creative field.", + "type": "string" + } + }, + "type": "object" + }, + "CreativeFieldValuesListResponse": { + "description": "Creative Field Value List Response", + "id": "CreativeFieldValuesListResponse", + "properties": { + "creativeFieldValues": { + "description": "Creative field value collection.", + "items": { + "$ref": "CreativeFieldValue" + }, + "type": "array" + }, + "kind": { + "default": "dfareporting#creativeFieldValuesListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#creativeFieldValuesListResponse\".", + "type": "string" + }, + "nextPageToken": { + "description": "Pagination token to be used for the next list operation.", + "type": "string" + } + }, + "type": "object" + }, + "CreativeFieldsListResponse": { + "description": "Creative Field List Response", + "id": "CreativeFieldsListResponse", + "properties": { + "creativeFields": { + "description": "Creative field collection.", + "items": { + "$ref": "CreativeField" + }, + "type": "array" + }, + "kind": { + "default": "dfareporting#creativeFieldsListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#creativeFieldsListResponse\".", + "type": "string" + }, + "nextPageToken": { + "description": "Pagination token to be used for the next list operation.", + "type": "string" + } + }, + "type": "object" + }, + "CreativeGroup": { + "description": "Contains properties of a creative group.", + "id": "CreativeGroup", + "properties": { + "accountId": { + "description": "Account ID of this creative group. This is a read-only field that can be left blank.", + "format": "int64", + "type": "string" + }, + "advertiserId": { + "description": "Advertiser ID of this creative group. This is a required field on insertion.", + "format": "int64", + "type": "string" + }, + "advertiserIdDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of the advertiser. This is a read-only, auto-generated field." + }, + "groupNumber": { + "description": "Subgroup of the creative group. Assign your creative groups to a subgroup in order to filter or manage them more easily. This field is required on insertion and is read-only after insertion. Acceptable values are 1 to 2, inclusive.", + "format": "int32", + "type": "integer" + }, + "id": { + "description": "ID of this creative group. This is a read-only, auto-generated field.", + "format": "int64", + "type": "string" + }, + "kind": { + "default": "dfareporting#creativeGroup", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#creativeGroup\".", + "type": "string" + }, + "name": { + "description": "Name of this creative group. This is a required field and must be less than 256 characters long and unique among creative groups of the same advertiser.", + "type": "string" + }, + "subaccountId": { + "description": "Subaccount ID of this creative group. This is a read-only field that can be left blank.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "CreativeGroupAssignment": { + "description": "Creative Group Assignment.", + "id": "CreativeGroupAssignment", + "properties": { + "creativeGroupId": { + "description": "ID of the creative group to be assigned.", + "format": "int64", + "type": "string" + }, + "creativeGroupNumber": { + "description": "Creative group number of the creative group assignment.", + "enum": [ + "CREATIVE_GROUP_ONE", + "CREATIVE_GROUP_TWO" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "CreativeGroupsListResponse": { + "description": "Creative Group List Response", + "id": "CreativeGroupsListResponse", + "properties": { + "creativeGroups": { + "description": "Creative group collection.", + "items": { + "$ref": "CreativeGroup" + }, + "type": "array" + }, + "kind": { + "default": "dfareporting#creativeGroupsListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#creativeGroupsListResponse\".", + "type": "string" + }, + "nextPageToken": { + "description": "Pagination token to be used for the next list operation.", + "type": "string" + } + }, + "type": "object" + }, + "CreativeOptimizationConfiguration": { + "description": "Creative optimization settings.", + "id": "CreativeOptimizationConfiguration", + "properties": { + "id": { + "description": "ID of this creative optimization config. This field is auto-generated when the campaign is inserted or updated. It can be null for existing campaigns.", + "format": "int64", + "type": "string" + }, + "name": { + "description": "Name of this creative optimization config. This is a required field and must be less than 129 characters long.", + "type": "string" + }, + "optimizationActivitys": { + "description": "List of optimization activities associated with this configuration.", + "items": { + "$ref": "OptimizationActivity" + }, + "type": "array" + }, + "optimizationModel": { + "description": "Optimization model for this configuration.", + "enum": [ + "CLICK", + "POST_CLICK", + "POST_CLICK_AND_IMPRESSION", + "POST_IMPRESSION", + "VIDEO_COMPLETION" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "CreativeRotation": { + "description": "Creative Rotation.", + "id": "CreativeRotation", + "properties": { + "creativeAssignments": { + "description": "Creative assignments in this creative rotation.", + "items": { + "$ref": "CreativeAssignment" + }, + "type": "array" + }, + "creativeOptimizationConfigurationId": { + "description": "Creative optimization configuration that is used by this ad. It should refer to one of the existing optimization configurations in the ad's campaign. If it is unset or set to 0, then the campaign's default optimization configuration will be used for this ad.", + "format": "int64", + "type": "string" + }, + "type": { + "description": "Type of creative rotation. Can be used to specify whether to use sequential or random rotation.", + "enum": [ + "CREATIVE_ROTATION_TYPE_RANDOM", + "CREATIVE_ROTATION_TYPE_SEQUENTIAL" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "weightCalculationStrategy": { + "description": "Strategy for calculating weights. Used with CREATIVE_ROTATION_TYPE_RANDOM.", + "enum": [ + "WEIGHT_STRATEGY_CUSTOM", + "WEIGHT_STRATEGY_EQUAL", + "WEIGHT_STRATEGY_HIGHEST_CTR", + "WEIGHT_STRATEGY_OPTIMIZED" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "CreativeSettings": { + "description": "Creative Settings", + "id": "CreativeSettings", + "properties": { + "iFrameFooter": { + "description": "Header text for iFrames for this site. Must be less than or equal to 2000 characters long.", + "type": "string" + }, + "iFrameHeader": { + "description": "Header text for iFrames for this site. Must be less than or equal to 2000 characters long.", + "type": "string" + } + }, + "type": "object" + }, + "CreativesListResponse": { + "description": "Creative List Response", + "id": "CreativesListResponse", + "properties": { + "creatives": { + "description": "Creative collection.", + "items": { + "$ref": "Creative" + }, + "type": "array" + }, + "kind": { + "default": "dfareporting#creativesListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#creativesListResponse\".", + "type": "string" + }, + "nextPageToken": { + "description": "Pagination token to be used for the next list operation.", + "type": "string" + } + }, + "type": "object" + }, + "CrossDimensionReachReportCompatibleFields": { + "description": "Represents fields that are compatible to be selected for a report of type \"CROSS_DIMENSION_REACH\".", + "id": "CrossDimensionReachReportCompatibleFields", + "properties": { + "breakdown": { + "description": "Dimensions which are compatible to be selected in the \"breakdown\" section of the report.", + "items": { + "$ref": "Dimension" + }, + "type": "array" + }, + "dimensionFilters": { + "description": "Dimensions which are compatible to be selected in the \"dimensionFilters\" section of the report.", + "items": { + "$ref": "Dimension" + }, + "type": "array" + }, + "kind": { + "default": "dfareporting#crossDimensionReachReportCompatibleFields", + "description": "The kind of resource this is, in this case dfareporting#crossDimensionReachReportCompatibleFields.", + "type": "string" + }, + "metrics": { + "description": "Metrics which are compatible to be selected in the \"metricNames\" section of the report.", + "items": { + "$ref": "Metric" + }, + "type": "array" + }, + "overlapMetrics": { + "description": "Metrics which are compatible to be selected in the \"overlapMetricNames\" section of the report.", + "items": { + "$ref": "Metric" + }, + "type": "array" + } + }, + "type": "object" + }, + "CustomFloodlightVariable": { + "description": "A custom floodlight variable.", + "id": "CustomFloodlightVariable", + "properties": { + "kind": { + "default": "dfareporting#customFloodlightVariable", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#customFloodlightVariable\".", + "type": "string" + }, + "type": { + "description": "The type of custom floodlight variable to supply a value for. These map to the \"u[1-20]=\" in the tags.", + "enum": [ + "U1", + "U10", + "U100", + "U11", + "U12", + "U13", + "U14", + "U15", + "U16", + "U17", + "U18", + "U19", + "U2", + "U20", + "U21", + "U22", + "U23", + "U24", + "U25", + "U26", + "U27", + "U28", + "U29", + "U3", + "U30", + "U31", + "U32", + "U33", + "U34", + "U35", + "U36", + "U37", + "U38", + "U39", + "U4", + "U40", + "U41", + "U42", + "U43", + "U44", + "U45", + "U46", + "U47", + "U48", + "U49", + "U5", + "U50", + "U51", + "U52", + "U53", + "U54", + "U55", + "U56", + "U57", + "U58", + "U59", + "U6", + "U60", + "U61", + "U62", + "U63", + "U64", + "U65", + "U66", + "U67", + "U68", + "U69", + "U7", + "U70", + "U71", + "U72", + "U73", + "U74", + "U75", + "U76", + "U77", + "U78", + "U79", + "U8", + "U80", + "U81", + "U82", + "U83", + "U84", + "U85", + "U86", + "U87", + "U88", + "U89", + "U9", + "U90", + "U91", + "U92", + "U93", + "U94", + "U95", + "U96", + "U97", + "U98", + "U99" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "value": { + "description": "The value of the custom floodlight variable. The length of string must not exceed 50 characters.", + "type": "string" + } + }, + "type": "object" + }, + "CustomRichMediaEvents": { + "description": "Represents a Custom Rich Media Events group.", + "id": "CustomRichMediaEvents", + "properties": { + "filteredEventIds": { + "description": "List of custom rich media event IDs. Dimension values must be all of type dfa:richMediaEventTypeIdAndName.", + "items": { + "$ref": "DimensionValue" + }, + "type": "array" + }, + "kind": { + "default": "dfareporting#customRichMediaEvents", + "description": "The kind of resource this is, in this case dfareporting#customRichMediaEvents.", + "type": "string" + } + }, + "type": "object" + }, + "DateRange": { + "description": "Represents a date range.", + "id": "DateRange", + "properties": { + "endDate": { + "description": "The end date of the date range, inclusive. A string of the format: \"yyyy-MM-dd\".", + "format": "date", + "type": "string" + }, + "kind": { + "default": "dfareporting#dateRange", + "description": "The kind of resource this is, in this case dfareporting#dateRange.", + "type": "string" + }, + "relativeDateRange": { + "description": "The date range relative to the date of when the report is run.", + "enum": [ + "LAST_24_MONTHS", + "LAST_30_DAYS", + "LAST_365_DAYS", + "LAST_7_DAYS", + "LAST_90_DAYS", + "MONTH_TO_DATE", + "PREVIOUS_MONTH", + "PREVIOUS_QUARTER", + "PREVIOUS_WEEK", + "PREVIOUS_YEAR", + "QUARTER_TO_DATE", + "TODAY", + "WEEK_TO_DATE", + "YEAR_TO_DATE", + "YESTERDAY" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "startDate": { + "description": "The start date of the date range, inclusive. A string of the format: \"yyyy-MM-dd\".", + "format": "date", + "type": "string" + } + }, + "type": "object" + }, + "DayPartTargeting": { + "description": "Day Part Targeting.", + "id": "DayPartTargeting", + "properties": { + "daysOfWeek": { + "description": "Days of the week when the ad will serve.\n\nAcceptable values are:\n- \"SUNDAY\"\n- \"MONDAY\"\n- \"TUESDAY\"\n- \"WEDNESDAY\"\n- \"THURSDAY\"\n- \"FRIDAY\"\n- \"SATURDAY\"", + "items": { + "enum": [ + "FRIDAY", + "MONDAY", + "SATURDAY", + "SUNDAY", + "THURSDAY", + "TUESDAY", + "WEDNESDAY" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "type": "array" + }, + "hoursOfDay": { + "description": "Hours of the day when the ad will serve, where 0 is midnight to 1 AM and 23 is 11 PM to midnight. Can be specified with days of week, in which case the ad would serve during these hours on the specified days. For example if Monday, Wednesday, Friday are the days of week specified and 9-10am, 3-5pm (hours 9, 15, and 16) is specified, the ad would serve Monday, Wednesdays, and Fridays at 9-10am and 3-5pm. Acceptable values are 0 to 23, inclusive.", + "items": { + "format": "int32", + "type": "integer" + }, + "type": "array" + }, + "userLocalTime": { + "description": "Whether or not to use the user's local time. If false, the America/New York time zone applies.", + "type": "boolean" + } + }, + "type": "object" + }, + "DefaultClickThroughEventTagProperties": { + "description": "Properties of inheriting and overriding the default click-through event tag. A campaign may override the event tag defined at the advertiser level, and an ad may also override the campaign's setting further.", + "id": "DefaultClickThroughEventTagProperties", + "properties": { + "defaultClickThroughEventTagId": { + "description": "ID of the click-through event tag to apply to all ads in this entity's scope.", + "format": "int64", + "type": "string" + }, + "overrideInheritedEventTag": { + "description": "Whether this entity should override the inherited default click-through event tag with its own defined value.", + "type": "boolean" + } + }, + "type": "object" + }, + "DeliverySchedule": { + "description": "Delivery Schedule.", + "id": "DeliverySchedule", + "properties": { + "frequencyCap": { + "$ref": "FrequencyCap", + "description": "Limit on the number of times an individual user can be served the ad within a specified period of time." + }, + "hardCutoff": { + "description": "Whether or not hard cutoff is enabled. If true, the ad will not serve after the end date and time. Otherwise the ad will continue to be served until it has reached its delivery goals.", + "type": "boolean" + }, + "impressionRatio": { + "description": "Impression ratio for this ad. This ratio determines how often each ad is served relative to the others. For example, if ad A has an impression ratio of 1 and ad B has an impression ratio of 3, then DCM will serve ad B three times as often as ad A. Acceptable values are 1 to 10, inclusive.", + "format": "int64", + "type": "string" + }, + "priority": { + "description": "Serving priority of an ad, with respect to other ads. The lower the priority number, the greater the priority with which it is served.", + "enum": [ + "AD_PRIORITY_01", + "AD_PRIORITY_02", + "AD_PRIORITY_03", + "AD_PRIORITY_04", + "AD_PRIORITY_05", + "AD_PRIORITY_06", + "AD_PRIORITY_07", + "AD_PRIORITY_08", + "AD_PRIORITY_09", + "AD_PRIORITY_10", + "AD_PRIORITY_11", + "AD_PRIORITY_12", + "AD_PRIORITY_13", + "AD_PRIORITY_14", + "AD_PRIORITY_15", + "AD_PRIORITY_16" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "DfpSettings": { + "description": "DFP Settings", + "id": "DfpSettings", + "properties": { + "dfpNetworkCode": { + "description": "DFP network code for this directory site.", + "type": "string" + }, + "dfpNetworkName": { + "description": "DFP network name for this directory site.", + "type": "string" + }, + "programmaticPlacementAccepted": { + "description": "Whether this directory site accepts programmatic placements.", + "type": "boolean" + }, + "pubPaidPlacementAccepted": { + "description": "Whether this directory site accepts publisher-paid tags.", + "type": "boolean" + }, + "publisherPortalOnly": { + "description": "Whether this directory site is available only via DoubleClick Publisher Portal.", + "type": "boolean" + } + }, + "type": "object" + }, + "Dimension": { + "description": "Represents a dimension.", + "id": "Dimension", + "properties": { + "kind": { + "default": "dfareporting#dimension", + "description": "The kind of resource this is, in this case dfareporting#dimension.", + "type": "string" + }, + "name": { + "description": "The dimension name, e.g. dfa:advertiser", + "type": "string" + } + }, + "type": "object" + }, + "DimensionFilter": { + "description": "Represents a dimension filter.", + "id": "DimensionFilter", + "properties": { + "dimensionName": { + "description": "The name of the dimension to filter.", + "type": "string" + }, + "kind": { + "default": "dfareporting#dimensionFilter", + "description": "The kind of resource this is, in this case dfareporting#dimensionFilter.", + "type": "string" + }, + "value": { + "description": "The value of the dimension to filter.", + "type": "string" + } + }, + "type": "object" + }, + "DimensionValue": { + "description": "Represents a DimensionValue resource.", + "id": "DimensionValue", + "properties": { + "dimensionName": { + "description": "The name of the dimension.", + "type": "string" + }, + "etag": { + "description": "The eTag of this response for caching purposes.", + "type": "string" + }, + "id": { + "description": "The ID associated with the value if available.", + "type": "string" + }, + "kind": { + "default": "dfareporting#dimensionValue", + "description": "The kind of resource this is, in this case dfareporting#dimensionValue.", + "type": "string" + }, + "matchType": { + "description": "Determines how the 'value' field is matched when filtering. If not specified, defaults to EXACT. If set to WILDCARD_EXPRESSION, '*' is allowed as a placeholder for variable length character sequences, and it can be escaped with a backslash. Note, only paid search dimensions ('dfa:paidSearch*') allow a matchType other than EXACT.", + "enum": [ + "BEGINS_WITH", + "CONTAINS", + "EXACT", + "WILDCARD_EXPRESSION" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ], + "type": "string" + }, + "value": { + "description": "The value of the dimension.", + "type": "string" + } + }, + "type": "object" + }, + "DimensionValueList": { + "description": "Represents the list of DimensionValue resources.", + "id": "DimensionValueList", + "properties": { + "etag": { + "description": "The eTag of this response for caching purposes.", + "type": "string" + }, + "items": { + "description": "The dimension values returned in this response.", + "items": { + "$ref": "DimensionValue" + }, + "type": "array" + }, + "kind": { + "default": "dfareporting#dimensionValueList", + "description": "The kind of list this is, in this case dfareporting#dimensionValueList.", + "type": "string" + }, + "nextPageToken": { + "description": "Continuation token used to page through dimension values. To retrieve the next page of results, set the next request's \"pageToken\" to the value of this field. The page token is only valid for a limited amount of time and should not be persisted.", + "type": "string" + } + }, + "type": "object" + }, + "DimensionValueRequest": { + "description": "Represents a DimensionValuesRequest.", + "id": "DimensionValueRequest", + "properties": { + "dimensionName": { + "annotations": { + "required": [ + "dfareporting.dimensionValues.query" + ] + }, + "description": "The name of the dimension for which values should be requested.", + "type": "string" + }, + "endDate": { + "annotations": { + "required": [ + "dfareporting.dimensionValues.query" + ] + }, + "description": "The end date of the date range for which to retrieve dimension values. A string of the format \"yyyy-MM-dd\".", + "format": "date", + "type": "string" + }, + "filters": { + "description": "The list of filters by which to filter values. The filters are ANDed.", + "items": { + "$ref": "DimensionFilter" + }, + "type": "array" + }, + "kind": { + "default": "dfareporting#dimensionValueRequest", + "description": "The kind of request this is, in this case dfareporting#dimensionValueRequest.", + "type": "string" + }, + "startDate": { + "annotations": { + "required": [ + "dfareporting.dimensionValues.query" + ] + }, + "description": "The start date of the date range for which to retrieve dimension values. A string of the format \"yyyy-MM-dd\".", + "format": "date", + "type": "string" + } + }, + "type": "object" + }, + "DirectorySite": { + "description": "DirectorySites contains properties of a website from the Site Directory. Sites need to be added to an account via the Sites resource before they can be assigned to a placement.", + "id": "DirectorySite", + "properties": { + "active": { + "description": "Whether this directory site is active.", + "type": "boolean" + }, + "contactAssignments": { + "description": "Directory site contacts.", + "items": { + "$ref": "DirectorySiteContactAssignment" + }, + "type": "array" + }, + "countryId": { + "description": "Country ID of this directory site. This is a read-only field.", + "format": "int64", + "type": "string" + }, + "currencyId": { + "description": "Currency ID of this directory site. This is a read-only field.\nPossible values are: \n- \"1\" for USD \n- \"2\" for GBP \n- \"3\" for ESP \n- \"4\" for SEK \n- \"5\" for CAD \n- \"6\" for JPY \n- \"7\" for DEM \n- \"8\" for AUD \n- \"9\" for FRF \n- \"10\" for ITL \n- \"11\" for DKK \n- \"12\" for NOK \n- \"13\" for FIM \n- \"14\" for ZAR \n- \"15\" for IEP \n- \"16\" for NLG \n- \"17\" for EUR \n- \"18\" for KRW \n- \"19\" for TWD \n- \"20\" for SGD \n- \"21\" for CNY \n- \"22\" for HKD \n- \"23\" for NZD \n- \"24\" for MYR \n- \"25\" for BRL \n- \"26\" for PTE \n- \"27\" for MXP \n- \"28\" for CLP \n- \"29\" for TRY \n- \"30\" for ARS \n- \"31\" for PEN \n- \"32\" for ILS \n- \"33\" for CHF \n- \"34\" for VEF \n- \"35\" for COP \n- \"36\" for GTQ \n- \"37\" for PLN \n- \"39\" for INR \n- \"40\" for THB \n- \"41\" for IDR \n- \"42\" for CZK \n- \"43\" for RON \n- \"44\" for HUF \n- \"45\" for RUB \n- \"46\" for AED \n- \"47\" for BGN \n- \"48\" for HRK \n- \"49\" for MXN \n- \"50\" for NGN", + "format": "int64", + "type": "string" + }, + "description": { + "description": "Description of this directory site. This is a read-only field.", + "type": "string" + }, + "id": { + "description": "ID of this directory site. This is a read-only, auto-generated field.", + "format": "int64", + "type": "string" + }, + "idDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of this directory site. This is a read-only, auto-generated field." + }, + "inpageTagFormats": { + "description": "Tag types for regular placements.\n\nAcceptable values are:\n- \"STANDARD\"\n- \"IFRAME_JAVASCRIPT_INPAGE\"\n- \"INTERNAL_REDIRECT_INPAGE\"\n- \"JAVASCRIPT_INPAGE\"", + "items": { + "enum": [ + "IFRAME_JAVASCRIPT_INPAGE", + "INTERNAL_REDIRECT_INPAGE", + "JAVASCRIPT_INPAGE", + "STANDARD" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ], + "type": "string" + }, + "type": "array" + }, + "interstitialTagFormats": { + "description": "Tag types for interstitial placements.\n\nAcceptable values are:\n- \"IFRAME_JAVASCRIPT_INTERSTITIAL\"\n- \"INTERNAL_REDIRECT_INTERSTITIAL\"\n- \"JAVASCRIPT_INTERSTITIAL\"", + "items": { + "enum": [ + "IFRAME_JAVASCRIPT_INTERSTITIAL", + "INTERNAL_REDIRECT_INTERSTITIAL", + "JAVASCRIPT_INTERSTITIAL" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, + "type": "array" + }, + "kind": { + "default": "dfareporting#directorySite", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#directorySite\".", + "type": "string" + }, + "name": { + "description": "Name of this directory site.", + "type": "string" + }, + "parentId": { + "description": "Parent directory site ID.", + "format": "int64", + "type": "string" + }, + "settings": { + "$ref": "DirectorySiteSettings", + "description": "Directory site settings." + }, + "url": { + "description": "URL of this directory site.", + "type": "string" + } + }, + "type": "object" + }, + "DirectorySiteContact": { + "description": "Contains properties of a Site Directory contact.", + "id": "DirectorySiteContact", + "properties": { + "address": { + "description": "Address of this directory site contact.", + "type": "string" + }, + "email": { + "description": "Email address of this directory site contact.", + "type": "string" + }, + "firstName": { + "description": "First name of this directory site contact.", + "type": "string" + }, + "id": { + "description": "ID of this directory site contact. This is a read-only, auto-generated field.", + "format": "int64", + "type": "string" + }, + "kind": { + "default": "dfareporting#directorySiteContact", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#directorySiteContact\".", + "type": "string" + }, + "lastName": { + "description": "Last name of this directory site contact.", + "type": "string" + }, + "phone": { + "description": "Phone number of this directory site contact.", + "type": "string" + }, + "role": { + "description": "Directory site contact role.", + "enum": [ + "ADMIN", + "EDIT", + "VIEW" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, + "title": { + "description": "Title or designation of this directory site contact.", + "type": "string" + }, + "type": { + "description": "Directory site contact type.", + "enum": [ + "BILLING", + "OTHER", + "SALES", + "TECHNICAL" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "DirectorySiteContactAssignment": { + "description": "Directory Site Contact Assignment", + "id": "DirectorySiteContactAssignment", + "properties": { + "contactId": { + "description": "ID of this directory site contact. This is a read-only, auto-generated field.", + "format": "int64", + "type": "string" + }, + "visibility": { + "description": "Visibility of this directory site contact assignment. When set to PUBLIC this contact assignment is visible to all account and agency users; when set to PRIVATE it is visible only to the site.", + "enum": [ + "PRIVATE", + "PUBLIC" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "DirectorySiteContactsListResponse": { + "description": "Directory Site Contact List Response", + "id": "DirectorySiteContactsListResponse", + "properties": { + "directorySiteContacts": { + "description": "Directory site contact collection", + "items": { + "$ref": "DirectorySiteContact" + }, + "type": "array" + }, + "kind": { + "default": "dfareporting#directorySiteContactsListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#directorySiteContactsListResponse\".", + "type": "string" + }, + "nextPageToken": { + "description": "Pagination token to be used for the next list operation.", + "type": "string" + } + }, + "type": "object" + }, + "DirectorySiteSettings": { + "description": "Directory Site Settings", + "id": "DirectorySiteSettings", + "properties": { + "activeViewOptOut": { + "description": "Whether this directory site has disabled active view creatives.", + "type": "boolean" + }, + "dfpSettings": { + "$ref": "DfpSettings", + "description": "Directory site DFP settings." + }, + "instreamVideoPlacementAccepted": { + "description": "Whether this site accepts in-stream video ads.", + "type": "boolean" + }, + "interstitialPlacementAccepted": { + "description": "Whether this site accepts interstitial ads.", + "type": "boolean" + }, + "nielsenOcrOptOut": { + "description": "Whether this directory site has disabled Nielsen OCR reach ratings.", + "type": "boolean" + }, + "verificationTagOptOut": { + "description": "Whether this directory site has disabled generation of Verification ins tags.", + "type": "boolean" + }, + "videoActiveViewOptOut": { + "description": "Whether this directory site has disabled active view for in-stream video creatives. This is a read-only field.", + "type": "boolean" + } + }, + "type": "object" + }, + "DirectorySitesListResponse": { + "description": "Directory Site List Response", + "id": "DirectorySitesListResponse", + "properties": { + "directorySites": { + "description": "Directory site collection.", + "items": { + "$ref": "DirectorySite" + }, + "type": "array" + }, + "kind": { + "default": "dfareporting#directorySitesListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#directorySitesListResponse\".", + "type": "string" + }, + "nextPageToken": { + "description": "Pagination token to be used for the next list operation.", + "type": "string" + } + }, + "type": "object" + }, + "DynamicTargetingKey": { + "description": "Contains properties of a dynamic targeting key. Dynamic targeting keys are unique, user-friendly labels, created at the advertiser level in DCM, that can be assigned to ads, creatives, and placements and used for targeting with DoubleClick Studio dynamic creatives. Use these labels instead of numeric DCM IDs (such as placement IDs) to save time and avoid errors in your dynamic feeds.", + "id": "DynamicTargetingKey", + "properties": { + "kind": { + "default": "dfareporting#dynamicTargetingKey", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#dynamicTargetingKey\".", + "type": "string" + }, + "name": { + "description": "Name of this dynamic targeting key. This is a required field. Must be less than 256 characters long and cannot contain commas. All characters are converted to lowercase.", + "type": "string" + }, + "objectId": { + "description": "ID of the object of this dynamic targeting key. This is a required field.", + "format": "int64", + "type": "string" + }, + "objectType": { + "description": "Type of the object of this dynamic targeting key. This is a required field.", + "enum": [ + "OBJECT_AD", + "OBJECT_ADVERTISER", + "OBJECT_CREATIVE", + "OBJECT_PLACEMENT" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "DynamicTargetingKeysListResponse": { + "description": "Dynamic Targeting Key List Response", + "id": "DynamicTargetingKeysListResponse", + "properties": { + "dynamicTargetingKeys": { + "description": "Dynamic targeting key collection.", + "items": { + "$ref": "DynamicTargetingKey" + }, + "type": "array" + }, + "kind": { + "default": "dfareporting#dynamicTargetingKeysListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#dynamicTargetingKeysListResponse\".", + "type": "string" + } + }, + "type": "object" + }, + "EncryptionInfo": { + "description": "A description of how user IDs are encrypted.", + "id": "EncryptionInfo", + "properties": { + "encryptionEntityId": { + "description": "The encryption entity ID. This should match the encryption configuration for ad serving or Data Transfer.", + "format": "int64", + "type": "string" + }, + "encryptionEntityType": { + "description": "The encryption entity type. This should match the encryption configuration for ad serving or Data Transfer.", + "enum": [ + "ADWORDS_CUSTOMER", + "DBM_ADVERTISER", + "DBM_PARTNER", + "DCM_ACCOUNT", + "DCM_ADVERTISER", + "ENCRYPTION_ENTITY_TYPE_UNKNOWN" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "encryptionSource": { + "description": "Describes whether the encrypted cookie was received from ad serving (the %m macro) or from Data Transfer.", + "enum": [ + "AD_SERVING", + "DATA_TRANSFER", + "ENCRYPTION_SCOPE_UNKNOWN" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, + "kind": { + "default": "dfareporting#encryptionInfo", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#encryptionInfo\".", + "type": "string" + } + }, + "type": "object" + }, + "EventTag": { + "description": "Contains properties of an event tag.", + "id": "EventTag", + "properties": { + "accountId": { + "description": "Account ID of this event tag. This is a read-only field that can be left blank.", + "format": "int64", + "type": "string" + }, + "advertiserId": { + "description": "Advertiser ID of this event tag. This field or the campaignId field is required on insertion.", + "format": "int64", + "type": "string" + }, + "advertiserIdDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of the advertiser. This is a read-only, auto-generated field." + }, + "campaignId": { + "description": "Campaign ID of this event tag. This field or the advertiserId field is required on insertion.", + "format": "int64", + "type": "string" + }, + "campaignIdDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of the campaign. This is a read-only, auto-generated field." + }, + "enabledByDefault": { + "description": "Whether this event tag should be automatically enabled for all of the advertiser's campaigns and ads.", + "type": "boolean" + }, + "excludeFromAdxRequests": { + "description": "Whether to remove this event tag from ads that are trafficked through DoubleClick Bid Manager to Ad Exchange. This may be useful if the event tag uses a pixel that is unapproved for Ad Exchange bids on one or more networks, such as the Google Display Network.", + "type": "boolean" + }, + "id": { + "description": "ID of this event tag. This is a read-only, auto-generated field.", + "format": "int64", + "type": "string" + }, + "kind": { + "default": "dfareporting#eventTag", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#eventTag\".", + "type": "string" + }, + "name": { + "description": "Name of this event tag. This is a required field and must be less than 256 characters long.", + "type": "string" + }, + "siteFilterType": { + "description": "Site filter type for this event tag. If no type is specified then the event tag will be applied to all sites.", + "enum": [ + "BLACKLIST", + "WHITELIST" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "siteIds": { + "description": "Filter list of site IDs associated with this event tag. The siteFilterType determines whether this is a whitelist or blacklist filter.", + "items": { + "format": "int64", + "type": "string" + }, + "type": "array" + }, + "sslCompliant": { + "description": "Whether this tag is SSL-compliant or not. This is a read-only field.", + "type": "boolean" + }, + "status": { + "description": "Status of this event tag. Must be ENABLED for this event tag to fire. This is a required field.", + "enum": [ + "DISABLED", + "ENABLED" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "subaccountId": { + "description": "Subaccount ID of this event tag. This is a read-only field that can be left blank.", + "format": "int64", + "type": "string" + }, + "type": { + "description": "Event tag type. Can be used to specify whether to use a third-party pixel, a third-party JavaScript URL, or a third-party click-through URL for either impression or click tracking. This is a required field.", + "enum": [ + "CLICK_THROUGH_EVENT_TAG", + "IMPRESSION_IMAGE_EVENT_TAG", + "IMPRESSION_JAVASCRIPT_EVENT_TAG" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, + "url": { + "description": "Payload URL for this event tag. The URL on a click-through event tag should have a landing page URL appended to the end of it. This field is required on insertion.", + "type": "string" + }, + "urlEscapeLevels": { + "description": "Number of times the landing page URL should be URL-escaped before being appended to the click-through event tag URL. Only applies to click-through event tags as specified by the event tag type.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "EventTagOverride": { + "description": "Event tag override information.", + "id": "EventTagOverride", + "properties": { + "enabled": { + "description": "Whether this override is enabled.", + "type": "boolean" + }, + "id": { + "description": "ID of this event tag override. This is a read-only, auto-generated field.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "EventTagsListResponse": { + "description": "Event Tag List Response", + "id": "EventTagsListResponse", + "properties": { + "eventTags": { + "description": "Event tag collection.", + "items": { + "$ref": "EventTag" + }, + "type": "array" + }, + "kind": { + "default": "dfareporting#eventTagsListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#eventTagsListResponse\".", + "type": "string" + } + }, + "type": "object" + }, + "File": { + "description": "Represents a File resource. A file contains the metadata for a report run. It shows the status of the run and holds the URLs to the generated report data if the run is finished and the status is \"REPORT_AVAILABLE\".", + "id": "File", + "properties": { + "dateRange": { + "$ref": "DateRange", + "description": "The date range for which the file has report data. The date range will always be the absolute date range for which the report is run." + }, + "etag": { + "description": "The eTag of this response for caching purposes.", + "type": "string" + }, + "fileName": { + "description": "The filename of the file.", + "type": "string" + }, + "format": { + "description": "The output format of the report. Only available once the file is available.", + "enum": [ + "CSV", + "EXCEL" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "id": { + "description": "The unique ID of this report file.", + "format": "int64", + "type": "string" + }, + "kind": { + "default": "dfareporting#file", + "description": "The kind of resource this is, in this case dfareporting#file.", + "type": "string" + }, + "lastModifiedTime": { + "description": "The timestamp in milliseconds since epoch when this file was last modified.", + "format": "int64", + "type": "string" }, "reportId": { - "type": "string", - "description": "The ID of the parent report.", - "required": true, - "format": "int64", - "location": "path" + "description": "The ID of the report this file was generated from.", + "format": "int64", + "type": "string" }, - "sortField": { - "type": "string", - "description": "The field by which to sort the list.", - "default": "LAST_MODIFIED_TIME", - "enum": [ - "ID", - "LAST_MODIFIED_TIME" - ], - "enumDescriptions": [ - "Sort by file ID.", - "Sort by 'lastmodifiedAt' field." - ], - "location": "query" + "status": { + "description": "The status of the report file.", + "enum": [ + "CANCELLED", + "FAILED", + "PROCESSING", + "REPORT_AVAILABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ], + "type": "string" + }, + "urls": { + "description": "The URLs where the completed report file can be downloaded.", + "properties": { + "apiUrl": { + "description": "The URL for downloading the report data through the API.", + "type": "string" + }, + "browserUrl": { + "description": "The URL for downloading the report data through a browser.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "FileList": { + "description": "Represents the list of File resources.", + "id": "FileList", + "properties": { + "etag": { + "description": "The eTag of this response for caching purposes.", + "type": "string" + }, + "items": { + "description": "The files returned in this response.", + "items": { + "$ref": "File" + }, + "type": "array" + }, + "kind": { + "default": "dfareporting#fileList", + "description": "The kind of list this is, in this case dfareporting#fileList.", + "type": "string" + }, + "nextPageToken": { + "description": "Continuation token used to page through files. To retrieve the next page of results, set the next request's \"pageToken\" to the value of this field. The page token is only valid for a limited amount of time and should not be persisted.", + "type": "string" + } + }, + "type": "object" + }, + "Flight": { + "description": "Flight", + "id": "Flight", + "properties": { + "endDate": { + "description": "Inventory item flight end date.", + "format": "date", + "type": "string" + }, + "rateOrCost": { + "description": "Rate or cost of this flight.", + "format": "int64", + "type": "string" + }, + "startDate": { + "description": "Inventory item flight start date.", + "format": "date", + "type": "string" + }, + "units": { + "description": "Units of this flight.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "FloodlightActivitiesGenerateTagResponse": { + "description": "Floodlight Activity GenerateTag Response", + "id": "FloodlightActivitiesGenerateTagResponse", + "properties": { + "floodlightActivityTag": { + "description": "Generated tag for this Floodlight activity. For global site tags, this is the event snippet.", + "type": "string" + }, + "kind": { + "default": "dfareporting#floodlightActivitiesGenerateTagResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#floodlightActivitiesGenerateTagResponse\".", + "type": "string" + } + }, + "type": "object" + }, + "FloodlightActivitiesListResponse": { + "description": "Floodlight Activity List Response", + "id": "FloodlightActivitiesListResponse", + "properties": { + "floodlightActivities": { + "description": "Floodlight activity collection.", + "items": { + "$ref": "FloodlightActivity" + }, + "type": "array" + }, + "kind": { + "default": "dfareporting#floodlightActivitiesListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#floodlightActivitiesListResponse\".", + "type": "string" + }, + "nextPageToken": { + "description": "Pagination token to be used for the next list operation.", + "type": "string" + } + }, + "type": "object" + }, + "FloodlightActivity": { + "description": "Contains properties of a Floodlight activity.", + "id": "FloodlightActivity", + "properties": { + "accountId": { + "description": "Account ID of this floodlight activity. This is a read-only field that can be left blank.", + "format": "int64", + "type": "string" + }, + "advertiserId": { + "description": "Advertiser ID of this floodlight activity. If this field is left blank, the value will be copied over either from the activity group's advertiser or the existing activity's advertiser.", + "format": "int64", + "type": "string" + }, + "advertiserIdDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of the advertiser. This is a read-only, auto-generated field." + }, + "cacheBustingType": { + "description": "Code type used for cache busting in the generated tag. Applicable only when floodlightActivityGroupType is COUNTER and countingMethod is STANDARD_COUNTING or UNIQUE_COUNTING.", + "enum": [ + "ACTIVE_SERVER_PAGE", + "COLD_FUSION", + "JAVASCRIPT", + "JSP", + "PHP" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "countingMethod": { + "description": "Counting method for conversions for this floodlight activity. This is a required field.", + "enum": [ + "ITEMS_SOLD_COUNTING", + "SESSION_COUNTING", + "STANDARD_COUNTING", + "TRANSACTIONS_COUNTING", + "UNIQUE_COUNTING" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "defaultTags": { + "description": "Dynamic floodlight tags.", + "items": { + "$ref": "FloodlightActivityDynamicTag" + }, + "type": "array" + }, + "expectedUrl": { + "description": "URL where this tag will be deployed. If specified, must be less than 256 characters long.", + "type": "string" + }, + "floodlightActivityGroupId": { + "description": "Floodlight activity group ID of this floodlight activity. This is a required field.", + "format": "int64", + "type": "string" + }, + "floodlightActivityGroupName": { + "description": "Name of the associated floodlight activity group. This is a read-only field.", + "type": "string" + }, + "floodlightActivityGroupTagString": { + "description": "Tag string of the associated floodlight activity group. This is a read-only field.", + "type": "string" + }, + "floodlightActivityGroupType": { + "description": "Type of the associated floodlight activity group. This is a read-only field.", + "enum": [ + "COUNTER", + "SALE" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "floodlightConfigurationId": { + "description": "Floodlight configuration ID of this floodlight activity. If this field is left blank, the value will be copied over either from the activity group's floodlight configuration or from the existing activity's floodlight configuration.", + "format": "int64", + "type": "string" + }, + "floodlightConfigurationIdDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of the floodlight configuration. This is a read-only, auto-generated field." + }, + "hidden": { + "description": "Whether this activity is archived.", + "type": "boolean" + }, + "id": { + "description": "ID of this floodlight activity. This is a read-only, auto-generated field.", + "format": "int64", + "type": "string" + }, + "idDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of this floodlight activity. This is a read-only, auto-generated field." + }, + "imageTagEnabled": { + "description": "Whether the image tag is enabled for this activity.", + "type": "boolean" + }, + "kind": { + "default": "dfareporting#floodlightActivity", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#floodlightActivity\".", + "type": "string" + }, + "name": { + "description": "Name of this floodlight activity. This is a required field. Must be less than 129 characters long and cannot contain quotes.", + "type": "string" + }, + "notes": { + "description": "General notes or implementation instructions for the tag.", + "type": "string" + }, + "publisherTags": { + "description": "Publisher dynamic floodlight tags.", + "items": { + "$ref": "FloodlightActivityPublisherDynamicTag" + }, + "type": "array" + }, + "secure": { + "description": "Whether this tag should use SSL.", + "type": "boolean" + }, + "sslCompliant": { + "description": "Whether the floodlight activity is SSL-compliant. This is a read-only field, its value detected by the system from the floodlight tags.", + "type": "boolean" + }, + "sslRequired": { + "description": "Whether this floodlight activity must be SSL-compliant.", + "type": "boolean" + }, + "subaccountId": { + "description": "Subaccount ID of this floodlight activity. This is a read-only field that can be left blank.", + "format": "int64", + "type": "string" + }, + "tagFormat": { + "description": "Tag format type for the floodlight activity. If left blank, the tag format will default to HTML.", + "enum": [ + "HTML", + "XHTML" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "tagString": { + "description": "Value of the cat= parameter in the floodlight tag, which the ad servers use to identify the activity. This is optional: if empty, a new tag string will be generated for you. This string must be 1 to 8 characters long, with valid characters being [a-z][A-Z][0-9][-][ _ ]. This tag string must also be unique among activities of the same activity group. This field is read-only after insertion.", + "type": "string" + }, + "userDefinedVariableTypes": { + "description": "List of the user-defined variables used by this conversion tag. These map to the \"u[1-100]=\" in the tags. Each of these can have a user defined type.\nAcceptable values are U1 to U100, inclusive.", + "items": { + "enum": [ + "U1", + "U10", + "U100", + "U11", + "U12", + "U13", + "U14", + "U15", + "U16", + "U17", + "U18", + "U19", + "U2", + "U20", + "U21", + "U22", + "U23", + "U24", + "U25", + "U26", + "U27", + "U28", + "U29", + "U3", + "U30", + "U31", + "U32", + "U33", + "U34", + "U35", + "U36", + "U37", + "U38", + "U39", + "U4", + "U40", + "U41", + "U42", + "U43", + "U44", + "U45", + "U46", + "U47", + "U48", + "U49", + "U5", + "U50", + "U51", + "U52", + "U53", + "U54", + "U55", + "U56", + "U57", + "U58", + "U59", + "U6", + "U60", + "U61", + "U62", + "U63", + "U64", + "U65", + "U66", + "U67", + "U68", + "U69", + "U7", + "U70", + "U71", + "U72", + "U73", + "U74", + "U75", + "U76", + "U77", + "U78", + "U79", + "U8", + "U80", + "U81", + "U82", + "U83", + "U84", + "U85", + "U86", + "U87", + "U88", + "U89", + "U9", + "U90", + "U91", + "U92", + "U93", + "U94", + "U95", + "U96", + "U97", + "U98", + "U99" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "FloodlightActivityDynamicTag": { + "description": "Dynamic Tag", + "id": "FloodlightActivityDynamicTag", + "properties": { + "id": { + "description": "ID of this dynamic tag. This is a read-only, auto-generated field.", + "format": "int64", + "type": "string" + }, + "name": { + "description": "Name of this tag.", + "type": "string" + }, + "tag": { + "description": "Tag code.", + "type": "string" + } + }, + "type": "object" + }, + "FloodlightActivityGroup": { + "description": "Contains properties of a Floodlight activity group.", + "id": "FloodlightActivityGroup", + "properties": { + "accountId": { + "description": "Account ID of this floodlight activity group. This is a read-only field that can be left blank.", + "format": "int64", + "type": "string" + }, + "advertiserId": { + "description": "Advertiser ID of this floodlight activity group. If this field is left blank, the value will be copied over either from the floodlight configuration's advertiser or from the existing activity group's advertiser.", + "format": "int64", + "type": "string" + }, + "advertiserIdDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of the advertiser. This is a read-only, auto-generated field." + }, + "floodlightConfigurationId": { + "description": "Floodlight configuration ID of this floodlight activity group. This is a required field.", + "format": "int64", + "type": "string" + }, + "floodlightConfigurationIdDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of the floodlight configuration. This is a read-only, auto-generated field." + }, + "id": { + "description": "ID of this floodlight activity group. This is a read-only, auto-generated field.", + "format": "int64", + "type": "string" + }, + "idDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of this floodlight activity group. This is a read-only, auto-generated field." + }, + "kind": { + "default": "dfareporting#floodlightActivityGroup", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#floodlightActivityGroup\".", + "type": "string" + }, + "name": { + "description": "Name of this floodlight activity group. This is a required field. Must be less than 65 characters long and cannot contain quotes.", + "type": "string" + }, + "subaccountId": { + "description": "Subaccount ID of this floodlight activity group. This is a read-only field that can be left blank.", + "format": "int64", + "type": "string" + }, + "tagString": { + "description": "Value of the type= parameter in the floodlight tag, which the ad servers use to identify the activity group that the activity belongs to. This is optional: if empty, a new tag string will be generated for you. This string must be 1 to 8 characters long, with valid characters being [a-z][A-Z][0-9][-][ _ ]. This tag string must also be unique among activity groups of the same floodlight configuration. This field is read-only after insertion.", + "type": "string" + }, + "type": { + "description": "Type of the floodlight activity group. This is a required field that is read-only after insertion.", + "enum": [ + "COUNTER", + "SALE" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "FloodlightActivityGroupsListResponse": { + "description": "Floodlight Activity Group List Response", + "id": "FloodlightActivityGroupsListResponse", + "properties": { + "floodlightActivityGroups": { + "description": "Floodlight activity group collection.", + "items": { + "$ref": "FloodlightActivityGroup" + }, + "type": "array" + }, + "kind": { + "default": "dfareporting#floodlightActivityGroupsListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#floodlightActivityGroupsListResponse\".", + "type": "string" + }, + "nextPageToken": { + "description": "Pagination token to be used for the next list operation.", + "type": "string" + } + }, + "type": "object" + }, + "FloodlightActivityPublisherDynamicTag": { + "description": "Publisher Dynamic Tag", + "id": "FloodlightActivityPublisherDynamicTag", + "properties": { + "clickThrough": { + "description": "Whether this tag is applicable only for click-throughs.", + "type": "boolean" + }, + "directorySiteId": { + "description": "Directory site ID of this dynamic tag. This is a write-only field that can be used as an alternative to the siteId field. When this resource is retrieved, only the siteId field will be populated.", + "format": "int64", + "type": "string" + }, + "dynamicTag": { + "$ref": "FloodlightActivityDynamicTag", + "description": "Dynamic floodlight tag." + }, + "siteId": { + "description": "Site ID of this dynamic tag.", + "format": "int64", + "type": "string" + }, + "siteIdDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of the site. This is a read-only, auto-generated field." + }, + "viewThrough": { + "description": "Whether this tag is applicable only for view-throughs.", + "type": "boolean" + } + }, + "type": "object" + }, + "FloodlightConfiguration": { + "description": "Contains properties of a Floodlight configuration.", + "id": "FloodlightConfiguration", + "properties": { + "accountId": { + "description": "Account ID of this floodlight configuration. This is a read-only field that can be left blank.", + "format": "int64", + "type": "string" + }, + "advertiserId": { + "description": "Advertiser ID of the parent advertiser of this floodlight configuration.", + "format": "int64", + "type": "string" + }, + "advertiserIdDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of the advertiser. This is a read-only, auto-generated field." + }, + "analyticsDataSharingEnabled": { + "description": "Whether advertiser data is shared with Google Analytics.", + "type": "boolean" + }, + "exposureToConversionEnabled": { + "description": "Whether the exposure-to-conversion report is enabled. This report shows detailed pathway information on up to 10 of the most recent ad exposures seen by a user before converting.", + "type": "boolean" + }, + "firstDayOfWeek": { + "description": "Day that will be counted as the first day of the week in reports. This is a required field.", + "enum": [ + "MONDAY", + "SUNDAY" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "id": { + "description": "ID of this floodlight configuration. This is a read-only, auto-generated field.", + "format": "int64", + "type": "string" + }, + "idDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of this floodlight configuration. This is a read-only, auto-generated field." + }, + "inAppAttributionTrackingEnabled": { + "description": "Whether in-app attribution tracking is enabled.", + "type": "boolean" + }, + "kind": { + "default": "dfareporting#floodlightConfiguration", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#floodlightConfiguration\".", + "type": "string" + }, + "lookbackConfiguration": { + "$ref": "LookbackConfiguration", + "description": "Lookback window settings for this floodlight configuration." + }, + "naturalSearchConversionAttributionOption": { + "description": "Types of attribution options for natural search conversions.", + "enum": [ + "EXCLUDE_NATURAL_SEARCH_CONVERSION_ATTRIBUTION", + "INCLUDE_NATURAL_SEARCH_CONVERSION_ATTRIBUTION", + "INCLUDE_NATURAL_SEARCH_TIERED_CONVERSION_ATTRIBUTION" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, + "omnitureSettings": { + "$ref": "OmnitureSettings", + "description": "Settings for DCM Omniture integration." + }, + "subaccountId": { + "description": "Subaccount ID of this floodlight configuration. This is a read-only field that can be left blank.", + "format": "int64", + "type": "string" + }, + "tagSettings": { + "$ref": "TagSettings", + "description": "Configuration settings for dynamic and image floodlight tags." + }, + "thirdPartyAuthenticationTokens": { + "description": "List of third-party authentication tokens enabled for this configuration.", + "items": { + "$ref": "ThirdPartyAuthenticationToken" + }, + "type": "array" + }, + "userDefinedVariableConfigurations": { + "description": "List of user defined variables enabled for this configuration.", + "items": { + "$ref": "UserDefinedVariableConfiguration" + }, + "type": "array" + } + }, + "type": "object" + }, + "FloodlightConfigurationsListResponse": { + "description": "Floodlight Configuration List Response", + "id": "FloodlightConfigurationsListResponse", + "properties": { + "floodlightConfigurations": { + "description": "Floodlight configuration collection.", + "items": { + "$ref": "FloodlightConfiguration" + }, + "type": "array" + }, + "kind": { + "default": "dfareporting#floodlightConfigurationsListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#floodlightConfigurationsListResponse\".", + "type": "string" + } + }, + "type": "object" + }, + "FloodlightReportCompatibleFields": { + "description": "Represents fields that are compatible to be selected for a report of type \"FlOODLIGHT\".", + "id": "FloodlightReportCompatibleFields", + "properties": { + "dimensionFilters": { + "description": "Dimensions which are compatible to be selected in the \"dimensionFilters\" section of the report.", + "items": { + "$ref": "Dimension" + }, + "type": "array" + }, + "dimensions": { + "description": "Dimensions which are compatible to be selected in the \"dimensions\" section of the report.", + "items": { + "$ref": "Dimension" + }, + "type": "array" + }, + "kind": { + "default": "dfareporting#floodlightReportCompatibleFields", + "description": "The kind of resource this is, in this case dfareporting#floodlightReportCompatibleFields.", + "type": "string" + }, + "metrics": { + "description": "Metrics which are compatible to be selected in the \"metricNames\" section of the report.", + "items": { + "$ref": "Metric" + }, + "type": "array" + } + }, + "type": "object" + }, + "FrequencyCap": { + "description": "Frequency Cap.", + "id": "FrequencyCap", + "properties": { + "duration": { + "description": "Duration of time, in seconds, for this frequency cap. The maximum duration is 90 days. Acceptable values are 1 to 7776000, inclusive.", + "format": "int64", + "type": "string" + }, + "impressions": { + "description": "Number of times an individual user can be served the ad within the specified duration. Acceptable values are 1 to 15, inclusive.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "FsCommand": { + "description": "FsCommand.", + "id": "FsCommand", + "properties": { + "left": { + "description": "Distance from the left of the browser.Applicable when positionOption is DISTANCE_FROM_TOP_LEFT_CORNER.", + "format": "int32", + "type": "integer" + }, + "positionOption": { + "description": "Position in the browser where the window will open.", + "enum": [ + "CENTERED", + "DISTANCE_FROM_TOP_LEFT_CORNER" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "top": { + "description": "Distance from the top of the browser. Applicable when positionOption is DISTANCE_FROM_TOP_LEFT_CORNER.", + "format": "int32", + "type": "integer" + }, + "windowHeight": { + "description": "Height of the window.", + "format": "int32", + "type": "integer" + }, + "windowWidth": { + "description": "Width of the window.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "GeoTargeting": { + "description": "Geographical Targeting.", + "id": "GeoTargeting", + "properties": { + "cities": { + "description": "Cities to be targeted. For each city only dartId is required. The other fields are populated automatically when the ad is inserted or updated. If targeting a city, do not target or exclude the country of the city, and do not target the metro or region of the city.", + "items": { + "$ref": "City" + }, + "type": "array" + }, + "countries": { + "description": "Countries to be targeted or excluded from targeting, depending on the setting of the excludeCountries field. For each country only dartId is required. The other fields are populated automatically when the ad is inserted or updated. If targeting or excluding a country, do not target regions, cities, metros, or postal codes in the same country.", + "items": { + "$ref": "Country" + }, + "type": "array" + }, + "excludeCountries": { + "description": "Whether or not to exclude the countries in the countries field from targeting. If false, the countries field refers to countries which will be targeted by the ad.", + "type": "boolean" + }, + "metros": { + "description": "Metros to be targeted. For each metro only dmaId is required. The other fields are populated automatically when the ad is inserted or updated. If targeting a metro, do not target or exclude the country of the metro.", + "items": { + "$ref": "Metro" + }, + "type": "array" + }, + "postalCodes": { + "description": "Postal codes to be targeted. For each postal code only id is required. The other fields are populated automatically when the ad is inserted or updated. If targeting a postal code, do not target or exclude the country of the postal code.", + "items": { + "$ref": "PostalCode" + }, + "type": "array" + }, + "regions": { + "description": "Regions to be targeted. For each region only dartId is required. The other fields are populated automatically when the ad is inserted or updated. If targeting a region, do not target or exclude the country of the region.", + "items": { + "$ref": "Region" + }, + "type": "array" + } + }, + "type": "object" + }, + "InventoryItem": { + "description": "Represents a buy from the DoubleClick Planning inventory store.", + "id": "InventoryItem", + "properties": { + "accountId": { + "description": "Account ID of this inventory item.", + "format": "int64", + "type": "string" + }, + "adSlots": { + "description": "Ad slots of this inventory item. If this inventory item represents a standalone placement, there will be exactly one ad slot. If this inventory item represents a placement group, there will be more than one ad slot, each representing one child placement in that placement group.", + "items": { + "$ref": "AdSlot" + }, + "type": "array" + }, + "advertiserId": { + "description": "Advertiser ID of this inventory item.", + "format": "int64", + "type": "string" + }, + "contentCategoryId": { + "description": "Content category ID of this inventory item.", + "format": "int64", + "type": "string" + }, + "estimatedClickThroughRate": { + "description": "Estimated click-through rate of this inventory item.", + "format": "int64", + "type": "string" + }, + "estimatedConversionRate": { + "description": "Estimated conversion rate of this inventory item.", + "format": "int64", + "type": "string" + }, + "id": { + "description": "ID of this inventory item.", + "format": "int64", + "type": "string" + }, + "inPlan": { + "description": "Whether this inventory item is in plan.", + "type": "boolean" + }, + "kind": { + "default": "dfareporting#inventoryItem", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#inventoryItem\".", + "type": "string" + }, + "lastModifiedInfo": { + "$ref": "LastModifiedInfo", + "description": "Information about the most recent modification of this inventory item." + }, + "name": { + "description": "Name of this inventory item. For standalone inventory items, this is the same name as that of its only ad slot. For group inventory items, this can differ from the name of any of its ad slots.", + "type": "string" + }, + "negotiationChannelId": { + "description": "Negotiation channel ID of this inventory item.", + "format": "int64", + "type": "string" + }, + "orderId": { + "description": "Order ID of this inventory item.", + "format": "int64", + "type": "string" + }, + "placementStrategyId": { + "description": "Placement strategy ID of this inventory item.", + "format": "int64", + "type": "string" + }, + "pricing": { + "$ref": "Pricing", + "description": "Pricing of this inventory item." + }, + "projectId": { + "description": "Project ID of this inventory item.", + "format": "int64", + "type": "string" + }, + "rfpId": { + "description": "RFP ID of this inventory item.", + "format": "int64", + "type": "string" + }, + "siteId": { + "description": "ID of the site this inventory item is associated with.", + "format": "int64", + "type": "string" + }, + "subaccountId": { + "description": "Subaccount ID of this inventory item.", + "format": "int64", + "type": "string" + }, + "type": { + "description": "Type of inventory item.", + "enum": [ + "PLANNING_PLACEMENT_TYPE_CREDIT", + "PLANNING_PLACEMENT_TYPE_REGULAR" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "InventoryItemsListResponse": { + "description": "Inventory item List Response", + "id": "InventoryItemsListResponse", + "properties": { + "inventoryItems": { + "description": "Inventory item collection", + "items": { + "$ref": "InventoryItem" + }, + "type": "array" + }, + "kind": { + "default": "dfareporting#inventoryItemsListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#inventoryItemsListResponse\".", + "type": "string" + }, + "nextPageToken": { + "description": "Pagination token to be used for the next list operation.", + "type": "string" + } + }, + "type": "object" + }, + "KeyValueTargetingExpression": { + "description": "Key Value Targeting Expression.", + "id": "KeyValueTargetingExpression", + "properties": { + "expression": { + "description": "Keyword expression being targeted by the ad.", + "type": "string" + } + }, + "type": "object" + }, + "LandingPage": { + "description": "Contains information about where a user's browser is taken after the user clicks an ad.", + "id": "LandingPage", + "properties": { + "default": { + "description": "Whether or not this landing page will be assigned to any ads or creatives that do not have a landing page assigned explicitly. Only one default landing page is allowed per campaign.", + "type": "boolean" + }, + "id": { + "description": "ID of this landing page. This is a read-only, auto-generated field.", + "format": "int64", + "type": "string" + }, + "kind": { + "default": "dfareporting#landingPage", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#landingPage\".", + "type": "string" + }, + "name": { + "description": "Name of this landing page. This is a required field. It must be less than 256 characters long, and must be unique among landing pages of the same campaign.", + "type": "string" + }, + "url": { + "description": "URL of this landing page. This is a required field.", + "type": "string" + } + }, + "type": "object" + }, + "LandingPagesListResponse": { + "description": "Landing Page List Response", + "id": "LandingPagesListResponse", + "properties": { + "kind": { + "default": "dfareporting#landingPagesListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#landingPagesListResponse\".", + "type": "string" + }, + "landingPages": { + "description": "Landing page collection", + "items": { + "$ref": "LandingPage" + }, + "type": "array" + } + }, + "type": "object" + }, + "Language": { + "description": "Contains information about a language that can be targeted by ads.", + "id": "Language", + "properties": { + "id": { + "description": "Language ID of this language. This is the ID used for targeting and generating reports.", + "format": "int64", + "type": "string" + }, + "kind": { + "default": "dfareporting#language", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#language\".", + "type": "string" + }, + "languageCode": { + "description": "Format of language code is an ISO 639 two-letter language code optionally followed by an underscore followed by an ISO 3166 code. Examples are \"en\" for English or \"zh_CN\" for Simplified Chinese.", + "type": "string" + }, + "name": { + "description": "Name of this language.", + "type": "string" + } + }, + "type": "object" + }, + "LanguageTargeting": { + "description": "Language Targeting.", + "id": "LanguageTargeting", + "properties": { + "languages": { + "description": "Languages that this ad targets. For each language only languageId is required. The other fields are populated automatically when the ad is inserted or updated.", + "items": { + "$ref": "Language" + }, + "type": "array" + } + }, + "type": "object" + }, + "LanguagesListResponse": { + "description": "Language List Response", + "id": "LanguagesListResponse", + "properties": { + "kind": { + "default": "dfareporting#languagesListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#languagesListResponse\".", + "type": "string" + }, + "languages": { + "description": "Language collection.", + "items": { + "$ref": "Language" + }, + "type": "array" + } + }, + "type": "object" + }, + "LastModifiedInfo": { + "description": "Modification timestamp.", + "id": "LastModifiedInfo", + "properties": { + "time": { + "description": "Timestamp of the last change in milliseconds since epoch.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "ListPopulationClause": { + "description": "A group clause made up of list population terms representing constraints joined by ORs.", + "id": "ListPopulationClause", + "properties": { + "terms": { + "description": "Terms of this list population clause. Each clause is made up of list population terms representing constraints and are joined by ORs.", + "items": { + "$ref": "ListPopulationTerm" + }, + "type": "array" + } + }, + "type": "object" + }, + "ListPopulationRule": { + "description": "Remarketing List Population Rule.", + "id": "ListPopulationRule", + "properties": { + "floodlightActivityId": { + "description": "Floodlight activity ID associated with this rule. This field can be left blank.", + "format": "int64", + "type": "string" + }, + "floodlightActivityName": { + "description": "Name of floodlight activity associated with this rule. This is a read-only, auto-generated field.", + "type": "string" + }, + "listPopulationClauses": { + "description": "Clauses that make up this list population rule. Clauses are joined by ANDs, and the clauses themselves are made up of list population terms which are joined by ORs.", + "items": { + "$ref": "ListPopulationClause" + }, + "type": "array" + } + }, + "type": "object" + }, + "ListPopulationTerm": { + "description": "Remarketing List Population Rule Term.", + "id": "ListPopulationTerm", + "properties": { + "contains": { + "description": "Will be true if the term should check if the user is in the list and false if the term should check if the user is not in the list. This field is only relevant when type is set to LIST_MEMBERSHIP_TERM. False by default.", + "type": "boolean" + }, + "negation": { + "description": "Whether to negate the comparison result of this term during rule evaluation. This field is only relevant when type is left unset or set to CUSTOM_VARIABLE_TERM or REFERRER_TERM.", + "type": "boolean" + }, + "operator": { + "description": "Comparison operator of this term. This field is only relevant when type is left unset or set to CUSTOM_VARIABLE_TERM or REFERRER_TERM.", + "enum": [ + "NUM_EQUALS", + "NUM_GREATER_THAN", + "NUM_GREATER_THAN_EQUAL", + "NUM_LESS_THAN", + "NUM_LESS_THAN_EQUAL", + "STRING_CONTAINS", + "STRING_EQUALS" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "remarketingListId": { + "description": "ID of the list in question. This field is only relevant when type is set to LIST_MEMBERSHIP_TERM.", + "format": "int64", + "type": "string" + }, + "type": { + "description": "List population term type determines the applicable fields in this object. If left unset or set to CUSTOM_VARIABLE_TERM, then variableName, variableFriendlyName, operator, value, and negation are applicable. If set to LIST_MEMBERSHIP_TERM then remarketingListId and contains are applicable. If set to REFERRER_TERM then operator, value, and negation are applicable.", + "enum": [ + "CUSTOM_VARIABLE_TERM", + "LIST_MEMBERSHIP_TERM", + "REFERRER_TERM" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, + "value": { + "description": "Literal to compare the variable to. This field is only relevant when type is left unset or set to CUSTOM_VARIABLE_TERM or REFERRER_TERM.", + "type": "string" + }, + "variableFriendlyName": { + "description": "Friendly name of this term's variable. This is a read-only, auto-generated field. This field is only relevant when type is left unset or set to CUSTOM_VARIABLE_TERM.", + "type": "string" + }, + "variableName": { + "description": "Name of the variable (U1, U2, etc.) being compared in this term. This field is only relevant when type is set to null, CUSTOM_VARIABLE_TERM or REFERRER_TERM.", + "type": "string" + } + }, + "type": "object" + }, + "ListTargetingExpression": { + "description": "Remarketing List Targeting Expression.", + "id": "ListTargetingExpression", + "properties": { + "expression": { + "description": "Expression describing which lists are being targeted by the ad.", + "type": "string" + } + }, + "type": "object" + }, + "LookbackConfiguration": { + "description": "Lookback configuration settings.", + "id": "LookbackConfiguration", + "properties": { + "clickDuration": { + "description": "Lookback window, in days, from the last time a given user clicked on one of your ads. If you enter 0, clicks will not be considered as triggering events for floodlight tracking. If you leave this field blank, the default value for your account will be used. Acceptable values are 0 to 90, inclusive.", + "format": "int32", + "type": "integer" + }, + "postImpressionActivitiesDuration": { + "description": "Lookback window, in days, from the last time a given user viewed one of your ads. If you enter 0, impressions will not be considered as triggering events for floodlight tracking. If you leave this field blank, the default value for your account will be used. Acceptable values are 0 to 90, inclusive.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "Metric": { + "description": "Represents a metric.", + "id": "Metric", + "properties": { + "kind": { + "default": "dfareporting#metric", + "description": "The kind of resource this is, in this case dfareporting#metric.", + "type": "string" + }, + "name": { + "description": "The metric name, e.g. dfa:impressions", + "type": "string" + } + }, + "type": "object" + }, + "Metro": { + "description": "Contains information about a metro region that can be targeted by ads.", + "id": "Metro", + "properties": { + "countryCode": { + "description": "Country code of the country to which this metro region belongs.", + "type": "string" + }, + "countryDartId": { + "description": "DART ID of the country to which this metro region belongs.", + "format": "int64", + "type": "string" + }, + "dartId": { + "description": "DART ID of this metro region.", + "format": "int64", + "type": "string" + }, + "dmaId": { + "description": "DMA ID of this metro region. This is the ID used for targeting and generating reports, and is equivalent to metro_code.", + "format": "int64", + "type": "string" + }, + "kind": { + "default": "dfareporting#metro", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#metro\".", + "type": "string" + }, + "metroCode": { + "description": "Metro code of this metro region. This is equivalent to dma_id.", + "type": "string" + }, + "name": { + "description": "Name of this metro region.", + "type": "string" + } + }, + "type": "object" + }, + "MetrosListResponse": { + "description": "Metro List Response", + "id": "MetrosListResponse", + "properties": { + "kind": { + "default": "dfareporting#metrosListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#metrosListResponse\".", + "type": "string" + }, + "metros": { + "description": "Metro collection.", + "items": { + "$ref": "Metro" + }, + "type": "array" + } + }, + "type": "object" + }, + "MobileCarrier": { + "description": "Contains information about a mobile carrier that can be targeted by ads.", + "id": "MobileCarrier", + "properties": { + "countryCode": { + "description": "Country code of the country to which this mobile carrier belongs.", + "type": "string" + }, + "countryDartId": { + "description": "DART ID of the country to which this mobile carrier belongs.", + "format": "int64", + "type": "string" + }, + "id": { + "description": "ID of this mobile carrier.", + "format": "int64", + "type": "string" + }, + "kind": { + "default": "dfareporting#mobileCarrier", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#mobileCarrier\".", + "type": "string" + }, + "name": { + "description": "Name of this mobile carrier.", + "type": "string" + } + }, + "type": "object" + }, + "MobileCarriersListResponse": { + "description": "Mobile Carrier List Response", + "id": "MobileCarriersListResponse", + "properties": { + "kind": { + "default": "dfareporting#mobileCarriersListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#mobileCarriersListResponse\".", + "type": "string" + }, + "mobileCarriers": { + "description": "Mobile carrier collection.", + "items": { + "$ref": "MobileCarrier" + }, + "type": "array" + } + }, + "type": "object" + }, + "ObjectFilter": { + "description": "Object Filter.", + "id": "ObjectFilter", + "properties": { + "kind": { + "default": "dfareporting#objectFilter", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#objectFilter\".", + "type": "string" + }, + "objectIds": { + "description": "Applicable when status is ASSIGNED. The user has access to objects with these object IDs.", + "items": { + "format": "int64", + "type": "string" + }, + "type": "array" + }, + "status": { + "description": "Status of the filter. NONE means the user has access to none of the objects. ALL means the user has access to all objects. ASSIGNED means the user has access to the objects with IDs in the objectIds list.", + "enum": [ + "ALL", + "ASSIGNED", + "NONE" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "OffsetPosition": { + "description": "Offset Position.", + "id": "OffsetPosition", + "properties": { + "left": { + "description": "Offset distance from left side of an asset or a window.", + "format": "int32", + "type": "integer" + }, + "top": { + "description": "Offset distance from top side of an asset or a window.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "OmnitureSettings": { + "description": "Omniture Integration Settings.", + "id": "OmnitureSettings", + "properties": { + "omnitureCostDataEnabled": { + "description": "Whether placement cost data will be sent to Omniture. This property can be enabled only if omnitureIntegrationEnabled is true.", + "type": "boolean" + }, + "omnitureIntegrationEnabled": { + "description": "Whether Omniture integration is enabled. This property can be enabled only when the \"Advanced Ad Serving\" account setting is enabled.", + "type": "boolean" + } + }, + "type": "object" + }, + "OperatingSystem": { + "description": "Contains information about an operating system that can be targeted by ads.", + "id": "OperatingSystem", + "properties": { + "dartId": { + "description": "DART ID of this operating system. This is the ID used for targeting.", + "format": "int64", + "type": "string" + }, + "desktop": { + "description": "Whether this operating system is for desktop.", + "type": "boolean" + }, + "kind": { + "default": "dfareporting#operatingSystem", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#operatingSystem\".", + "type": "string" + }, + "mobile": { + "description": "Whether this operating system is for mobile.", + "type": "boolean" + }, + "name": { + "description": "Name of this operating system.", + "type": "string" + } + }, + "type": "object" + }, + "OperatingSystemVersion": { + "description": "Contains information about a particular version of an operating system that can be targeted by ads.", + "id": "OperatingSystemVersion", + "properties": { + "id": { + "description": "ID of this operating system version.", + "format": "int64", + "type": "string" + }, + "kind": { + "default": "dfareporting#operatingSystemVersion", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#operatingSystemVersion\".", + "type": "string" + }, + "majorVersion": { + "description": "Major version (leftmost number) of this operating system version.", + "type": "string" + }, + "minorVersion": { + "description": "Minor version (number after the first dot) of this operating system version.", + "type": "string" + }, + "name": { + "description": "Name of this operating system version.", + "type": "string" + }, + "operatingSystem": { + "$ref": "OperatingSystem", + "description": "Operating system of this operating system version." + } + }, + "type": "object" + }, + "OperatingSystemVersionsListResponse": { + "description": "Operating System Version List Response", + "id": "OperatingSystemVersionsListResponse", + "properties": { + "kind": { + "default": "dfareporting#operatingSystemVersionsListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#operatingSystemVersionsListResponse\".", + "type": "string" + }, + "operatingSystemVersions": { + "description": "Operating system version collection.", + "items": { + "$ref": "OperatingSystemVersion" + }, + "type": "array" + } + }, + "type": "object" + }, + "OperatingSystemsListResponse": { + "description": "Operating System List Response", + "id": "OperatingSystemsListResponse", + "properties": { + "kind": { + "default": "dfareporting#operatingSystemsListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#operatingSystemsListResponse\".", + "type": "string" + }, + "operatingSystems": { + "description": "Operating system collection.", + "items": { + "$ref": "OperatingSystem" + }, + "type": "array" + } + }, + "type": "object" + }, + "OptimizationActivity": { + "description": "Creative optimization activity.", + "id": "OptimizationActivity", + "properties": { + "floodlightActivityId": { + "description": "Floodlight activity ID of this optimization activity. This is a required field.", + "format": "int64", + "type": "string" + }, + "floodlightActivityIdDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of the floodlight activity. This is a read-only, auto-generated field." + }, + "weight": { + "description": "Weight associated with this optimization. The weight assigned will be understood in proportion to the weights assigned to the other optimization activities. Value must be greater than or equal to 1.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "Order": { + "description": "Describes properties of a DoubleClick Planning order.", + "id": "Order", + "properties": { + "accountId": { + "description": "Account ID of this order.", + "format": "int64", + "type": "string" + }, + "advertiserId": { + "description": "Advertiser ID of this order.", + "format": "int64", + "type": "string" + }, + "approverUserProfileIds": { + "description": "IDs for users that have to approve documents created for this order.", + "items": { + "format": "int64", + "type": "string" + }, + "type": "array" + }, + "buyerInvoiceId": { + "description": "Buyer invoice ID associated with this order.", + "type": "string" + }, + "buyerOrganizationName": { + "description": "Name of the buyer organization.", + "type": "string" + }, + "comments": { + "description": "Comments in this order.", + "type": "string" + }, + "contacts": { + "description": "Contacts for this order.", + "items": { + "$ref": "OrderContact" + }, + "type": "array" + }, + "id": { + "description": "ID of this order. This is a read-only, auto-generated field.", + "format": "int64", + "type": "string" + }, + "kind": { + "default": "dfareporting#order", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#order\".", + "type": "string" + }, + "lastModifiedInfo": { + "$ref": "LastModifiedInfo", + "description": "Information about the most recent modification of this order." + }, + "name": { + "description": "Name of this order.", + "type": "string" + }, + "notes": { + "description": "Notes of this order.", + "type": "string" + }, + "planningTermId": { + "description": "ID of the terms and conditions template used in this order.", + "format": "int64", + "type": "string" + }, + "projectId": { + "description": "Project ID of this order.", + "format": "int64", + "type": "string" + }, + "sellerOrderId": { + "description": "Seller order ID associated with this order.", + "type": "string" + }, + "sellerOrganizationName": { + "description": "Name of the seller organization.", + "type": "string" + }, + "siteId": { + "description": "Site IDs this order is associated with.", + "items": { + "format": "int64", + "type": "string" + }, + "type": "array" + }, + "siteNames": { + "description": "Free-form site names this order is associated with.", + "items": { + "type": "string" + }, + "type": "array" + }, + "subaccountId": { + "description": "Subaccount ID of this order.", + "format": "int64", + "type": "string" + }, + "termsAndConditions": { + "description": "Terms and conditions of this order.", + "type": "string" + } + }, + "type": "object" + }, + "OrderContact": { + "description": "Contact of an order.", + "id": "OrderContact", + "properties": { + "contactInfo": { + "description": "Free-form information about this contact. It could be any information related to this contact in addition to type, title, name, and signature user profile ID.", + "type": "string" + }, + "contactName": { + "description": "Name of this contact.", + "type": "string" + }, + "contactTitle": { + "description": "Title of this contact.", + "type": "string" + }, + "contactType": { + "description": "Type of this contact.", + "enum": [ + "PLANNING_ORDER_CONTACT_BUYER_BILLING_CONTACT", + "PLANNING_ORDER_CONTACT_BUYER_CONTACT", + "PLANNING_ORDER_CONTACT_SELLER_CONTACT" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, + "signatureUserProfileId": { + "description": "ID of the user profile containing the signature that will be embedded into order documents.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "OrderDocument": { + "description": "Contains properties of a DoubleClick Planning order document.", + "id": "OrderDocument", + "properties": { + "accountId": { + "description": "Account ID of this order document.", + "format": "int64", + "type": "string" + }, + "advertiserId": { + "description": "Advertiser ID of this order document.", + "format": "int64", + "type": "string" + }, + "amendedOrderDocumentId": { + "description": "The amended order document ID of this order document. An order document can be created by optionally amending another order document so that the change history can be preserved.", + "format": "int64", + "type": "string" + }, + "approvedByUserProfileIds": { + "description": "IDs of users who have approved this order document.", + "items": { + "format": "int64", + "type": "string" + }, + "type": "array" + }, + "cancelled": { + "description": "Whether this order document is cancelled.", + "type": "boolean" + }, + "createdInfo": { + "$ref": "LastModifiedInfo", + "description": "Information about the creation of this order document." + }, + "effectiveDate": { + "description": "Effective date of this order document.", + "format": "date", + "type": "string" + }, + "id": { + "description": "ID of this order document.", + "format": "int64", + "type": "string" + }, + "kind": { + "default": "dfareporting#orderDocument", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#orderDocument\".", + "type": "string" + }, + "lastSentRecipients": { + "description": "List of email addresses that received the last sent document.", + "items": { + "type": "string" + }, + "type": "array" + }, + "lastSentTime": { + "description": "Timestamp of the last email sent with this order document.", + "format": "date-time", + "type": "string" + }, + "orderId": { + "description": "ID of the order from which this order document is created.", + "format": "int64", + "type": "string" + }, + "projectId": { + "description": "Project ID of this order document.", + "format": "int64", + "type": "string" + }, + "signed": { + "description": "Whether this order document has been signed.", + "type": "boolean" + }, + "subaccountId": { + "description": "Subaccount ID of this order document.", + "format": "int64", + "type": "string" + }, + "title": { + "description": "Title of this order document.", + "type": "string" + }, + "type": { + "description": "Type of this order document", + "enum": [ + "PLANNING_ORDER_TYPE_CHANGE_ORDER", + "PLANNING_ORDER_TYPE_INSERTION_ORDER" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "OrderDocumentsListResponse": { + "description": "Order document List Response", + "id": "OrderDocumentsListResponse", + "properties": { + "kind": { + "default": "dfareporting#orderDocumentsListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#orderDocumentsListResponse\".", + "type": "string" + }, + "nextPageToken": { + "description": "Pagination token to be used for the next list operation.", + "type": "string" + }, + "orderDocuments": { + "description": "Order document collection", + "items": { + "$ref": "OrderDocument" + }, + "type": "array" + } + }, + "type": "object" + }, + "OrdersListResponse": { + "description": "Order List Response", + "id": "OrdersListResponse", + "properties": { + "kind": { + "default": "dfareporting#ordersListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#ordersListResponse\".", + "type": "string" + }, + "nextPageToken": { + "description": "Pagination token to be used for the next list operation.", + "type": "string" + }, + "orders": { + "description": "Order collection.", + "items": { + "$ref": "Order" + }, + "type": "array" + } + }, + "type": "object" + }, + "PathToConversionReportCompatibleFields": { + "description": "Represents fields that are compatible to be selected for a report of type \"PATH_TO_CONVERSION\".", + "id": "PathToConversionReportCompatibleFields", + "properties": { + "conversionDimensions": { + "description": "Conversion dimensions which are compatible to be selected in the \"conversionDimensions\" section of the report.", + "items": { + "$ref": "Dimension" + }, + "type": "array" + }, + "customFloodlightVariables": { + "description": "Custom floodlight variables which are compatible to be selected in the \"customFloodlightVariables\" section of the report.", + "items": { + "$ref": "Dimension" + }, + "type": "array" + }, + "kind": { + "default": "dfareporting#pathToConversionReportCompatibleFields", + "description": "The kind of resource this is, in this case dfareporting#pathToConversionReportCompatibleFields.", + "type": "string" + }, + "metrics": { + "description": "Metrics which are compatible to be selected in the \"metricNames\" section of the report.", + "items": { + "$ref": "Metric" + }, + "type": "array" + }, + "perInteractionDimensions": { + "description": "Per-interaction dimensions which are compatible to be selected in the \"perInteractionDimensions\" section of the report.", + "items": { + "$ref": "Dimension" + }, + "type": "array" + } + }, + "type": "object" + }, + "Placement": { + "description": "Contains properties of a placement.", + "id": "Placement", + "properties": { + "accountId": { + "description": "Account ID of this placement. This field can be left blank.", + "format": "int64", + "type": "string" + }, + "adBlockingOptOut": { + "description": "Whether this placement opts out of ad blocking. When true, ad blocking is disabled for this placement. When false, the campaign and site settings take effect.", + "type": "boolean" + }, + "advertiserId": { + "description": "Advertiser ID of this placement. This field can be left blank.", + "format": "int64", + "type": "string" + }, + "advertiserIdDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of the advertiser. This is a read-only, auto-generated field." + }, + "archived": { + "description": "Whether this placement is archived.", + "type": "boolean" + }, + "campaignId": { + "description": "Campaign ID of this placement. This field is a required field on insertion.", + "format": "int64", + "type": "string" + }, + "campaignIdDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of the campaign. This is a read-only, auto-generated field." + }, + "comment": { + "description": "Comments for this placement.", + "type": "string" + }, + "compatibility": { + "description": "Placement compatibility. DISPLAY and DISPLAY_INTERSTITIAL refer to rendering on desktop, on mobile devices or in mobile apps for regular or interstitial ads respectively. APP and APP_INTERSTITIAL are no longer allowed for new placement insertions. Instead, use DISPLAY or DISPLAY_INTERSTITIAL. IN_STREAM_VIDEO refers to rendering in in-stream video ads developed with the VAST standard. This field is required on insertion.", + "enum": [ + "APP", + "APP_INTERSTITIAL", + "DISPLAY", + "DISPLAY_INTERSTITIAL", + "IN_STREAM_VIDEO" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "contentCategoryId": { + "description": "ID of the content category assigned to this placement.", + "format": "int64", + "type": "string" + }, + "createInfo": { + "$ref": "LastModifiedInfo", + "description": "Information about the creation of this placement. This is a read-only field." + }, + "directorySiteId": { + "description": "Directory site ID of this placement. On insert, you must set either this field or the siteId field to specify the site associated with this placement. This is a required field that is read-only after insertion.", + "format": "int64", + "type": "string" + }, + "directorySiteIdDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of the directory site. This is a read-only, auto-generated field." + }, + "externalId": { + "description": "External ID for this placement.", + "type": "string" + }, + "id": { + "description": "ID of this placement. This is a read-only, auto-generated field.", + "format": "int64", + "type": "string" + }, + "idDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of this placement. This is a read-only, auto-generated field." + }, + "keyName": { + "description": "Key name of this placement. This is a read-only, auto-generated field.", + "type": "string" + }, + "kind": { + "default": "dfareporting#placement", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#placement\".", + "type": "string" + }, + "lastModifiedInfo": { + "$ref": "LastModifiedInfo", + "description": "Information about the most recent modification of this placement. This is a read-only field." + }, + "lookbackConfiguration": { + "$ref": "LookbackConfiguration", + "description": "Lookback window settings for this placement." + }, + "name": { + "description": "Name of this placement.This is a required field and must be less than 256 characters long.", + "type": "string" + }, + "paymentApproved": { + "description": "Whether payment was approved for this placement. This is a read-only field relevant only to publisher-paid placements.", + "type": "boolean" + }, + "paymentSource": { + "description": "Payment source for this placement. This is a required field that is read-only after insertion.", + "enum": [ + "PLACEMENT_AGENCY_PAID", + "PLACEMENT_PUBLISHER_PAID" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "placementGroupId": { + "description": "ID of this placement's group, if applicable.", + "format": "int64", + "type": "string" + }, + "placementGroupIdDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of the placement group. This is a read-only, auto-generated field." + }, + "placementStrategyId": { + "description": "ID of the placement strategy assigned to this placement.", + "format": "int64", + "type": "string" + }, + "pricingSchedule": { + "$ref": "PricingSchedule", + "description": "Pricing schedule of this placement. This field is required on insertion, specifically subfields startDate, endDate and pricingType." + }, + "primary": { + "description": "Whether this placement is the primary placement of a roadblock (placement group). You cannot change this field from true to false. Setting this field to true will automatically set the primary field on the original primary placement of the roadblock to false, and it will automatically set the roadblock's primaryPlacementId field to the ID of this placement.", + "type": "boolean" + }, + "publisherUpdateInfo": { + "$ref": "LastModifiedInfo", + "description": "Information about the last publisher update. This is a read-only field." + }, + "siteId": { + "description": "Site ID associated with this placement. On insert, you must set either this field or the directorySiteId field to specify the site associated with this placement. This is a required field that is read-only after insertion.", + "format": "int64", + "type": "string" + }, + "siteIdDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of the site. This is a read-only, auto-generated field." + }, + "size": { + "$ref": "Size", + "description": "Size associated with this placement. When inserting or updating a placement, only the size ID field is used. This field is required on insertion." + }, + "sslRequired": { + "description": "Whether creatives assigned to this placement must be SSL-compliant.", + "type": "boolean" + }, + "status": { + "description": "Third-party placement status.", + "enum": [ + "ACKNOWLEDGE_ACCEPTANCE", + "ACKNOWLEDGE_REJECTION", + "DRAFT", + "PAYMENT_ACCEPTED", + "PAYMENT_REJECTED", + "PENDING_REVIEW" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "subaccountId": { + "description": "Subaccount ID of this placement. This field can be left blank.", + "format": "int64", + "type": "string" + }, + "tagFormats": { + "description": "Tag formats to generate for this placement. This field is required on insertion.\nAcceptable values are:\n- \"PLACEMENT_TAG_STANDARD\"\n- \"PLACEMENT_TAG_IFRAME_JAVASCRIPT\"\n- \"PLACEMENT_TAG_IFRAME_ILAYER\"\n- \"PLACEMENT_TAG_INTERNAL_REDIRECT\"\n- \"PLACEMENT_TAG_JAVASCRIPT\"\n- \"PLACEMENT_TAG_INTERSTITIAL_IFRAME_JAVASCRIPT\"\n- \"PLACEMENT_TAG_INTERSTITIAL_INTERNAL_REDIRECT\"\n- \"PLACEMENT_TAG_INTERSTITIAL_JAVASCRIPT\"\n- \"PLACEMENT_TAG_CLICK_COMMANDS\"\n- \"PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH\"\n- \"PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH_VAST_3\"\n- \"PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH_VAST_4\"\n- \"PLACEMENT_TAG_TRACKING\"\n- \"PLACEMENT_TAG_TRACKING_IFRAME\"\n- \"PLACEMENT_TAG_TRACKING_JAVASCRIPT\"", + "items": { + "enum": [ + "PLACEMENT_TAG_CLICK_COMMANDS", + "PLACEMENT_TAG_IFRAME_ILAYER", + "PLACEMENT_TAG_IFRAME_JAVASCRIPT", + "PLACEMENT_TAG_IFRAME_JAVASCRIPT_LEGACY", + "PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH", + "PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH_VAST_3", + "PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH_VAST_4", + "PLACEMENT_TAG_INTERNAL_REDIRECT", + "PLACEMENT_TAG_INTERSTITIAL_IFRAME_JAVASCRIPT", + "PLACEMENT_TAG_INTERSTITIAL_IFRAME_JAVASCRIPT_LEGACY", + "PLACEMENT_TAG_INTERSTITIAL_INTERNAL_REDIRECT", + "PLACEMENT_TAG_INTERSTITIAL_JAVASCRIPT", + "PLACEMENT_TAG_INTERSTITIAL_JAVASCRIPT_LEGACY", + "PLACEMENT_TAG_JAVASCRIPT", + "PLACEMENT_TAG_JAVASCRIPT_LEGACY", + "PLACEMENT_TAG_STANDARD", + "PLACEMENT_TAG_TRACKING", + "PLACEMENT_TAG_TRACKING_IFRAME", + "PLACEMENT_TAG_TRACKING_JAVASCRIPT" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "type": "array" + }, + "tagSetting": { + "$ref": "TagSetting", + "description": "Tag settings for this placement." + }, + "videoActiveViewOptOut": { + "description": "Whether Verification and ActiveView are disabled for in-stream video creatives for this placement. The same setting videoActiveViewOptOut exists on the site level -- the opt out occurs if either of these settings are true. These settings are distinct from DirectorySites.settings.activeViewOptOut or Sites.siteSettings.activeViewOptOut which only apply to display ads. However, Accounts.activeViewOptOut opts out both video traffic, as well as display ads, from Verification and ActiveView.", + "type": "boolean" + }, + "videoSettings": { + "$ref": "VideoSettings", + "description": "A collection of settings which affect video creatives served through this placement. Applicable to placements with IN_STREAM_VIDEO compatibility." + }, + "vpaidAdapterChoice": { + "description": "VPAID adapter setting for this placement. Controls which VPAID format the measurement adapter will use for in-stream video creatives assigned to this placement.\n\nNote: Flash is no longer supported. This field now defaults to HTML5 when the following values are provided: FLASH, BOTH.", + "enum": [ + "BOTH", + "DEFAULT", + "FLASH", + "HTML5" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "PlacementAssignment": { + "description": "Placement Assignment.", + "id": "PlacementAssignment", + "properties": { + "active": { + "description": "Whether this placement assignment is active. When true, the placement will be included in the ad's rotation.", + "type": "boolean" + }, + "placementId": { + "description": "ID of the placement to be assigned. This is a required field.", + "format": "int64", + "type": "string" + }, + "placementIdDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of the placement. This is a read-only, auto-generated field." + }, + "sslRequired": { + "description": "Whether the placement to be assigned requires SSL. This is a read-only field that is auto-generated when the ad is inserted or updated.", + "type": "boolean" + } + }, + "type": "object" + }, + "PlacementGroup": { + "description": "Contains properties of a package or roadblock.", + "id": "PlacementGroup", + "properties": { + "accountId": { + "description": "Account ID of this placement group. This is a read-only field that can be left blank.", + "format": "int64", + "type": "string" + }, + "advertiserId": { + "description": "Advertiser ID of this placement group. This is a required field on insertion.", + "format": "int64", + "type": "string" + }, + "advertiserIdDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of the advertiser. This is a read-only, auto-generated field." + }, + "archived": { + "description": "Whether this placement group is archived.", + "type": "boolean" + }, + "campaignId": { + "description": "Campaign ID of this placement group. This field is required on insertion.", + "format": "int64", + "type": "string" + }, + "campaignIdDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of the campaign. This is a read-only, auto-generated field." + }, + "childPlacementIds": { + "description": "IDs of placements which are assigned to this placement group. This is a read-only, auto-generated field.", + "items": { + "format": "int64", + "type": "string" + }, + "type": "array" + }, + "comment": { + "description": "Comments for this placement group.", + "type": "string" + }, + "contentCategoryId": { + "description": "ID of the content category assigned to this placement group.", + "format": "int64", + "type": "string" + }, + "createInfo": { + "$ref": "LastModifiedInfo", + "description": "Information about the creation of this placement group. This is a read-only field." + }, + "directorySiteId": { + "description": "Directory site ID associated with this placement group. On insert, you must set either this field or the site_id field to specify the site associated with this placement group. This is a required field that is read-only after insertion.", + "format": "int64", + "type": "string" + }, + "directorySiteIdDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of the directory site. This is a read-only, auto-generated field." + }, + "externalId": { + "description": "External ID for this placement.", + "type": "string" + }, + "id": { + "description": "ID of this placement group. This is a read-only, auto-generated field.", + "format": "int64", + "type": "string" + }, + "idDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of this placement group. This is a read-only, auto-generated field." + }, + "kind": { + "default": "dfareporting#placementGroup", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#placementGroup\".", + "type": "string" + }, + "lastModifiedInfo": { + "$ref": "LastModifiedInfo", + "description": "Information about the most recent modification of this placement group. This is a read-only field." + }, + "name": { + "description": "Name of this placement group. This is a required field and must be less than 256 characters long.", + "type": "string" + }, + "placementGroupType": { + "description": "Type of this placement group. A package is a simple group of placements that acts as a single pricing point for a group of tags. A roadblock is a group of placements that not only acts as a single pricing point, but also assumes that all the tags in it will be served at the same time. A roadblock requires one of its assigned placements to be marked as primary for reporting. This field is required on insertion.", + "enum": [ + "PLACEMENT_PACKAGE", + "PLACEMENT_ROADBLOCK" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "placementStrategyId": { + "description": "ID of the placement strategy assigned to this placement group.", + "format": "int64", + "type": "string" + }, + "pricingSchedule": { + "$ref": "PricingSchedule", + "description": "Pricing schedule of this placement group. This field is required on insertion." + }, + "primaryPlacementId": { + "description": "ID of the primary placement, used to calculate the media cost of a roadblock (placement group). Modifying this field will automatically modify the primary field on all affected roadblock child placements.", + "format": "int64", + "type": "string" + }, + "primaryPlacementIdDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of the primary placement. This is a read-only, auto-generated field." + }, + "siteId": { + "description": "Site ID associated with this placement group. On insert, you must set either this field or the directorySiteId field to specify the site associated with this placement group. This is a required field that is read-only after insertion.", + "format": "int64", + "type": "string" + }, + "siteIdDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of the site. This is a read-only, auto-generated field." + }, + "subaccountId": { + "description": "Subaccount ID of this placement group. This is a read-only field that can be left blank.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "PlacementGroupsListResponse": { + "description": "Placement Group List Response", + "id": "PlacementGroupsListResponse", + "properties": { + "kind": { + "default": "dfareporting#placementGroupsListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#placementGroupsListResponse\".", + "type": "string" + }, + "nextPageToken": { + "description": "Pagination token to be used for the next list operation.", + "type": "string" + }, + "placementGroups": { + "description": "Placement group collection.", + "items": { + "$ref": "PlacementGroup" + }, + "type": "array" + } + }, + "type": "object" + }, + "PlacementStrategiesListResponse": { + "description": "Placement Strategy List Response", + "id": "PlacementStrategiesListResponse", + "properties": { + "kind": { + "default": "dfareporting#placementStrategiesListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#placementStrategiesListResponse\".", + "type": "string" + }, + "nextPageToken": { + "description": "Pagination token to be used for the next list operation.", + "type": "string" + }, + "placementStrategies": { + "description": "Placement strategy collection.", + "items": { + "$ref": "PlacementStrategy" + }, + "type": "array" + } + }, + "type": "object" + }, + "PlacementStrategy": { + "description": "Contains properties of a placement strategy.", + "id": "PlacementStrategy", + "properties": { + "accountId": { + "description": "Account ID of this placement strategy.This is a read-only field that can be left blank.", + "format": "int64", + "type": "string" + }, + "id": { + "description": "ID of this placement strategy. This is a read-only, auto-generated field.", + "format": "int64", + "type": "string" + }, + "kind": { + "default": "dfareporting#placementStrategy", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#placementStrategy\".", + "type": "string" + }, + "name": { + "description": "Name of this placement strategy. This is a required field. It must be less than 256 characters long and unique among placement strategies of the same account.", + "type": "string" + } + }, + "type": "object" + }, + "PlacementTag": { + "description": "Placement Tag", + "id": "PlacementTag", + "properties": { + "placementId": { + "description": "Placement ID", + "format": "int64", + "type": "string" + }, + "tagDatas": { + "description": "Tags generated for this placement.", + "items": { + "$ref": "TagData" + }, + "type": "array" + } + }, + "type": "object" + }, + "PlacementsGenerateTagsResponse": { + "description": "Placement GenerateTags Response", + "id": "PlacementsGenerateTagsResponse", + "properties": { + "kind": { + "default": "dfareporting#placementsGenerateTagsResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#placementsGenerateTagsResponse\".", + "type": "string" + }, + "placementTags": { + "description": "Set of generated tags for the specified placements.", + "items": { + "$ref": "PlacementTag" + }, + "type": "array" + } + }, + "type": "object" + }, + "PlacementsListResponse": { + "description": "Placement List Response", + "id": "PlacementsListResponse", + "properties": { + "kind": { + "default": "dfareporting#placementsListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#placementsListResponse\".", + "type": "string" + }, + "nextPageToken": { + "description": "Pagination token to be used for the next list operation.", + "type": "string" + }, + "placements": { + "description": "Placement collection.", + "items": { + "$ref": "Placement" + }, + "type": "array" + } + }, + "type": "object" + }, + "PlatformType": { + "description": "Contains information about a platform type that can be targeted by ads.", + "id": "PlatformType", + "properties": { + "id": { + "description": "ID of this platform type.", + "format": "int64", + "type": "string" + }, + "kind": { + "default": "dfareporting#platformType", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#platformType\".", + "type": "string" + }, + "name": { + "description": "Name of this platform type.", + "type": "string" + } + }, + "type": "object" + }, + "PlatformTypesListResponse": { + "description": "Platform Type List Response", + "id": "PlatformTypesListResponse", + "properties": { + "kind": { + "default": "dfareporting#platformTypesListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#platformTypesListResponse\".", + "type": "string" + }, + "platformTypes": { + "description": "Platform type collection.", + "items": { + "$ref": "PlatformType" + }, + "type": "array" + } + }, + "type": "object" + }, + "PopupWindowProperties": { + "description": "Popup Window Properties.", + "id": "PopupWindowProperties", + "properties": { + "dimension": { + "$ref": "Size", + "description": "Popup dimension for a creative. This is a read-only field. Applicable to the following creative types: all RICH_MEDIA and all VPAID" + }, + "offset": { + "$ref": "OffsetPosition", + "description": "Upper-left corner coordinates of the popup window. Applicable if positionType is COORDINATES." + }, + "positionType": { + "description": "Popup window position either centered or at specific coordinate.", + "enum": [ + "CENTER", + "COORDINATES" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "showAddressBar": { + "description": "Whether to display the browser address bar.", + "type": "boolean" + }, + "showMenuBar": { + "description": "Whether to display the browser menu bar.", + "type": "boolean" + }, + "showScrollBar": { + "description": "Whether to display the browser scroll bar.", + "type": "boolean" + }, + "showStatusBar": { + "description": "Whether to display the browser status bar.", + "type": "boolean" + }, + "showToolBar": { + "description": "Whether to display the browser tool bar.", + "type": "boolean" + }, + "title": { + "description": "Title of popup window.", + "type": "string" + } + }, + "type": "object" + }, + "PostalCode": { + "description": "Contains information about a postal code that can be targeted by ads.", + "id": "PostalCode", + "properties": { + "code": { + "description": "Postal code. This is equivalent to the id field.", + "type": "string" + }, + "countryCode": { + "description": "Country code of the country to which this postal code belongs.", + "type": "string" + }, + "countryDartId": { + "description": "DART ID of the country to which this postal code belongs.", + "format": "int64", + "type": "string" + }, + "id": { + "description": "ID of this postal code.", + "type": "string" + }, + "kind": { + "default": "dfareporting#postalCode", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#postalCode\".", + "type": "string" + } + }, + "type": "object" + }, + "PostalCodesListResponse": { + "description": "Postal Code List Response", + "id": "PostalCodesListResponse", + "properties": { + "kind": { + "default": "dfareporting#postalCodesListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#postalCodesListResponse\".", + "type": "string" + }, + "postalCodes": { + "description": "Postal code collection.", + "items": { + "$ref": "PostalCode" + }, + "type": "array" + } + }, + "type": "object" + }, + "Pricing": { + "description": "Pricing Information", + "id": "Pricing", + "properties": { + "capCostType": { + "description": "Cap cost type of this inventory item.", + "enum": [ + "PLANNING_PLACEMENT_CAP_COST_TYPE_CUMULATIVE", + "PLANNING_PLACEMENT_CAP_COST_TYPE_MONTHLY", + "PLANNING_PLACEMENT_CAP_COST_TYPE_NONE" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, + "endDate": { + "description": "End date of this inventory item.", + "format": "date", + "type": "string" + }, + "flights": { + "description": "Flights of this inventory item. A flight (a.k.a. pricing period) represents the inventory item pricing information for a specific period of time.", + "items": { + "$ref": "Flight" + }, + "type": "array" + }, + "groupType": { + "description": "Group type of this inventory item if it represents a placement group. Is null otherwise. There are two type of placement groups: PLANNING_PLACEMENT_GROUP_TYPE_PACKAGE is a simple group of inventory items that acts as a single pricing point for a group of tags. PLANNING_PLACEMENT_GROUP_TYPE_ROADBLOCK is a group of inventory items that not only acts as a single pricing point, but also assumes that all the tags in it will be served at the same time. A roadblock requires one of its assigned inventory items to be marked as primary.", + "enum": [ + "PLANNING_PLACEMENT_GROUP_TYPE_PACKAGE", + "PLANNING_PLACEMENT_GROUP_TYPE_ROADBLOCK" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "pricingType": { + "description": "Pricing type of this inventory item.", + "enum": [ + "PLANNING_PLACEMENT_PRICING_TYPE_CLICKS", + "PLANNING_PLACEMENT_PRICING_TYPE_CPA", + "PLANNING_PLACEMENT_PRICING_TYPE_CPC", + "PLANNING_PLACEMENT_PRICING_TYPE_CPM", + "PLANNING_PLACEMENT_PRICING_TYPE_CPM_ACTIVEVIEW", + "PLANNING_PLACEMENT_PRICING_TYPE_FLAT_RATE_CLICKS", + "PLANNING_PLACEMENT_PRICING_TYPE_FLAT_RATE_IMPRESSIONS", + "PLANNING_PLACEMENT_PRICING_TYPE_IMPRESSIONS" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "startDate": { + "description": "Start date of this inventory item.", + "format": "date", + "type": "string" + } + }, + "type": "object" + }, + "PricingSchedule": { + "description": "Pricing Schedule", + "id": "PricingSchedule", + "properties": { + "capCostOption": { + "description": "Placement cap cost option.", + "enum": [ + "CAP_COST_CUMULATIVE", + "CAP_COST_MONTHLY", + "CAP_COST_NONE" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, + "disregardOverdelivery": { + "description": "Whether cap costs are ignored by ad serving.", + "type": "boolean" + }, + "endDate": { + "description": "Placement end date. This date must be later than, or the same day as, the placement start date, but not later than the campaign end date. If, for example, you set 6/25/2015 as both the start and end dates, the effective placement date is just that day only, 6/25/2015. The hours, minutes, and seconds of the end date should not be set, as doing so will result in an error. This field is required on insertion.", + "format": "date", + "type": "string" + }, + "flighted": { + "description": "Whether this placement is flighted. If true, pricing periods will be computed automatically.", + "type": "boolean" + }, + "floodlightActivityId": { + "description": "Floodlight activity ID associated with this placement. This field should be set when placement pricing type is set to PRICING_TYPE_CPA.", + "format": "int64", + "type": "string" + }, + "pricingPeriods": { + "description": "Pricing periods for this placement.", + "items": { + "$ref": "PricingSchedulePricingPeriod" + }, + "type": "array" + }, + "pricingType": { + "description": "Placement pricing type. This field is required on insertion.", + "enum": [ + "PRICING_TYPE_CPA", + "PRICING_TYPE_CPC", + "PRICING_TYPE_CPM", + "PRICING_TYPE_CPM_ACTIVEVIEW", + "PRICING_TYPE_FLAT_RATE_CLICKS", + "PRICING_TYPE_FLAT_RATE_IMPRESSIONS" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "startDate": { + "description": "Placement start date. This date must be later than, or the same day as, the campaign start date. The hours, minutes, and seconds of the start date should not be set, as doing so will result in an error. This field is required on insertion.", + "format": "date", + "type": "string" + }, + "testingStartDate": { + "description": "Testing start date of this placement. The hours, minutes, and seconds of the start date should not be set, as doing so will result in an error.", + "format": "date", + "type": "string" + } + }, + "type": "object" + }, + "PricingSchedulePricingPeriod": { + "description": "Pricing Period", + "id": "PricingSchedulePricingPeriod", + "properties": { + "endDate": { + "description": "Pricing period end date. This date must be later than, or the same day as, the pricing period start date, but not later than the placement end date. The period end date can be the same date as the period start date. If, for example, you set 6/25/2015 as both the start and end dates, the effective pricing period date is just that day only, 6/25/2015. The hours, minutes, and seconds of the end date should not be set, as doing so will result in an error.", + "format": "date", + "type": "string" + }, + "pricingComment": { + "description": "Comments for this pricing period.", + "type": "string" + }, + "rateOrCostNanos": { + "description": "Rate or cost of this pricing period in nanos (i.e., multipled by 1000000000). Acceptable values are 0 to 1000000000000000000, inclusive.", + "format": "int64", + "type": "string" + }, + "startDate": { + "description": "Pricing period start date. This date must be later than, or the same day as, the placement start date. The hours, minutes, and seconds of the start date should not be set, as doing so will result in an error.", + "format": "date", + "type": "string" + }, + "units": { + "description": "Units of this pricing period. Acceptable values are 0 to 10000000000, inclusive.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "Project": { + "description": "Contains properties of a DoubleClick Planning project.", + "id": "Project", + "properties": { + "accountId": { + "description": "Account ID of this project.", + "format": "int64", + "type": "string" + }, + "advertiserId": { + "description": "Advertiser ID of this project.", + "format": "int64", + "type": "string" + }, + "audienceAgeGroup": { + "description": "Audience age group of this project.", + "enum": [ + "PLANNING_AUDIENCE_AGE_18_24", + "PLANNING_AUDIENCE_AGE_25_34", + "PLANNING_AUDIENCE_AGE_35_44", + "PLANNING_AUDIENCE_AGE_45_54", + "PLANNING_AUDIENCE_AGE_55_64", + "PLANNING_AUDIENCE_AGE_65_OR_MORE", + "PLANNING_AUDIENCE_AGE_UNKNOWN" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "audienceGender": { + "description": "Audience gender of this project.", + "enum": [ + "PLANNING_AUDIENCE_GENDER_FEMALE", + "PLANNING_AUDIENCE_GENDER_MALE" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "budget": { + "description": "Budget of this project in the currency specified by the current account. The value stored in this field represents only the non-fractional amount. For example, for USD, the smallest value that can be represented by this field is 1 US dollar.", + "format": "int64", + "type": "string" + }, + "clientBillingCode": { + "description": "Client billing code of this project.", + "type": "string" + }, + "clientName": { + "description": "Name of the project client.", + "type": "string" + }, + "endDate": { + "description": "End date of the project.", + "format": "date", + "type": "string" + }, + "id": { + "description": "ID of this project. This is a read-only, auto-generated field.", + "format": "int64", + "type": "string" + }, + "kind": { + "default": "dfareporting#project", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#project\".", + "type": "string" + }, + "lastModifiedInfo": { + "$ref": "LastModifiedInfo", + "description": "Information about the most recent modification of this project." + }, + "name": { + "description": "Name of this project.", + "type": "string" + }, + "overview": { + "description": "Overview of this project.", + "type": "string" + }, + "startDate": { + "description": "Start date of the project.", + "format": "date", + "type": "string" + }, + "subaccountId": { + "description": "Subaccount ID of this project.", + "format": "int64", + "type": "string" + }, + "targetClicks": { + "description": "Number of clicks that the advertiser is targeting.", + "format": "int64", + "type": "string" + }, + "targetConversions": { + "description": "Number of conversions that the advertiser is targeting.", + "format": "int64", + "type": "string" + }, + "targetCpaNanos": { + "description": "CPA that the advertiser is targeting.", + "format": "int64", + "type": "string" + }, + "targetCpcNanos": { + "description": "CPC that the advertiser is targeting.", + "format": "int64", + "type": "string" + }, + "targetCpmActiveViewNanos": { + "description": "vCPM from Active View that the advertiser is targeting.", + "format": "int64", + "type": "string" + }, + "targetCpmNanos": { + "description": "CPM that the advertiser is targeting.", + "format": "int64", + "type": "string" + }, + "targetImpressions": { + "description": "Number of impressions that the advertiser is targeting.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "ProjectsListResponse": { + "description": "Project List Response", + "id": "ProjectsListResponse", + "properties": { + "kind": { + "default": "dfareporting#projectsListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#projectsListResponse\".", + "type": "string" + }, + "nextPageToken": { + "description": "Pagination token to be used for the next list operation.", + "type": "string" + }, + "projects": { + "description": "Project collection.", + "items": { + "$ref": "Project" + }, + "type": "array" + } + }, + "type": "object" + }, + "ReachReportCompatibleFields": { + "description": "Represents fields that are compatible to be selected for a report of type \"REACH\".", + "id": "ReachReportCompatibleFields", + "properties": { + "dimensionFilters": { + "description": "Dimensions which are compatible to be selected in the \"dimensionFilters\" section of the report.", + "items": { + "$ref": "Dimension" + }, + "type": "array" + }, + "dimensions": { + "description": "Dimensions which are compatible to be selected in the \"dimensions\" section of the report.", + "items": { + "$ref": "Dimension" + }, + "type": "array" + }, + "kind": { + "default": "dfareporting#reachReportCompatibleFields", + "description": "The kind of resource this is, in this case dfareporting#reachReportCompatibleFields.", + "type": "string" + }, + "metrics": { + "description": "Metrics which are compatible to be selected in the \"metricNames\" section of the report.", + "items": { + "$ref": "Metric" + }, + "type": "array" + }, + "pivotedActivityMetrics": { + "description": "Metrics which are compatible to be selected as activity metrics to pivot on in the \"activities\" section of the report.", + "items": { + "$ref": "Metric" + }, + "type": "array" + }, + "reachByFrequencyMetrics": { + "description": "Metrics which are compatible to be selected in the \"reachByFrequencyMetricNames\" section of the report.", + "items": { + "$ref": "Metric" + }, + "type": "array" + } + }, + "type": "object" + }, + "Recipient": { + "description": "Represents a recipient.", + "id": "Recipient", + "properties": { + "deliveryType": { + "annotations": { + "required": [ + "dfareporting.reports.insert", + "dfareporting.reports.update" + ] + }, + "description": "The delivery type for the recipient.", + "enum": [ + "ATTACHMENT", + "LINK" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "email": { + "annotations": { + "required": [ + "dfareporting.reports.insert", + "dfareporting.reports.update" + ] + }, + "description": "The email address of the recipient.", + "type": "string" + }, + "kind": { + "default": "dfareporting#recipient", + "description": "The kind of resource this is, in this case dfareporting#recipient.", + "type": "string" + } + }, + "type": "object" + }, + "Region": { + "description": "Contains information about a region that can be targeted by ads.", + "id": "Region", + "properties": { + "countryCode": { + "description": "Country code of the country to which this region belongs.", + "type": "string" + }, + "countryDartId": { + "description": "DART ID of the country to which this region belongs.", + "format": "int64", + "type": "string" + }, + "dartId": { + "description": "DART ID of this region.", + "format": "int64", + "type": "string" + }, + "kind": { + "default": "dfareporting#region", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#region\".", + "type": "string" + }, + "name": { + "description": "Name of this region.", + "type": "string" + }, + "regionCode": { + "description": "Region code.", + "type": "string" + } + }, + "type": "object" + }, + "RegionsListResponse": { + "description": "Region List Response", + "id": "RegionsListResponse", + "properties": { + "kind": { + "default": "dfareporting#regionsListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#regionsListResponse\".", + "type": "string" + }, + "regions": { + "description": "Region collection.", + "items": { + "$ref": "Region" + }, + "type": "array" + } + }, + "type": "object" + }, + "RemarketingList": { + "description": "Contains properties of a remarketing list. Remarketing enables you to create lists of users who have performed specific actions on a site, then target ads to members of those lists. This resource can be used to manage remarketing lists that are owned by your advertisers. To see all remarketing lists that are visible to your advertisers, including those that are shared to your advertiser or account, use the TargetableRemarketingLists resource.", + "id": "RemarketingList", + "properties": { + "accountId": { + "description": "Account ID of this remarketing list. This is a read-only, auto-generated field that is only returned in GET requests.", + "format": "int64", + "type": "string" + }, + "active": { + "description": "Whether this remarketing list is active.", + "type": "boolean" + }, + "advertiserId": { + "description": "Dimension value for the advertiser ID that owns this remarketing list. This is a required field.", + "format": "int64", + "type": "string" + }, + "advertiserIdDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of the advertiser. This is a read-only, auto-generated field." + }, + "description": { + "description": "Remarketing list description.", + "type": "string" + }, + "id": { + "description": "Remarketing list ID. This is a read-only, auto-generated field.", + "format": "int64", + "type": "string" + }, + "kind": { + "default": "dfareporting#remarketingList", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#remarketingList\".", + "type": "string" + }, + "lifeSpan": { + "description": "Number of days that a user should remain in the remarketing list without an impression. Acceptable values are 1 to 540, inclusive.", + "format": "int64", + "type": "string" + }, + "listPopulationRule": { + "$ref": "ListPopulationRule", + "description": "Rule used to populate the remarketing list with users." + }, + "listSize": { + "description": "Number of users currently in the list. This is a read-only field.", + "format": "int64", + "type": "string" + }, + "listSource": { + "description": "Product from which this remarketing list was originated.", + "enum": [ + "REMARKETING_LIST_SOURCE_ADX", + "REMARKETING_LIST_SOURCE_DBM", + "REMARKETING_LIST_SOURCE_DFA", + "REMARKETING_LIST_SOURCE_DFP", + "REMARKETING_LIST_SOURCE_DMP", + "REMARKETING_LIST_SOURCE_GA", + "REMARKETING_LIST_SOURCE_GPLUS", + "REMARKETING_LIST_SOURCE_OTHER", + "REMARKETING_LIST_SOURCE_PLAY_STORE", + "REMARKETING_LIST_SOURCE_XFP", + "REMARKETING_LIST_SOURCE_YOUTUBE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "name": { + "description": "Name of the remarketing list. This is a required field. Must be no greater than 128 characters long.", + "type": "string" + }, + "subaccountId": { + "description": "Subaccount ID of this remarketing list. This is a read-only, auto-generated field that is only returned in GET requests.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "RemarketingListShare": { + "description": "Contains properties of a remarketing list's sharing information. Sharing allows other accounts or advertisers to target to your remarketing lists. This resource can be used to manage remarketing list sharing to other accounts and advertisers.", + "id": "RemarketingListShare", + "properties": { + "kind": { + "default": "dfareporting#remarketingListShare", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#remarketingListShare\".", + "type": "string" + }, + "remarketingListId": { + "description": "Remarketing list ID. This is a read-only, auto-generated field.", + "format": "int64", + "type": "string" + }, + "sharedAccountIds": { + "description": "Accounts that the remarketing list is shared with.", + "items": { + "format": "int64", + "type": "string" + }, + "type": "array" + }, + "sharedAdvertiserIds": { + "description": "Advertisers that the remarketing list is shared with.", + "items": { + "format": "int64", + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "RemarketingListsListResponse": { + "description": "Remarketing list response", + "id": "RemarketingListsListResponse", + "properties": { + "kind": { + "default": "dfareporting#remarketingListsListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#remarketingListsListResponse\".", + "type": "string" + }, + "nextPageToken": { + "description": "Pagination token to be used for the next list operation.", + "type": "string" + }, + "remarketingLists": { + "description": "Remarketing list collection.", + "items": { + "$ref": "RemarketingList" + }, + "type": "array" + } + }, + "type": "object" + }, + "Report": { + "description": "Represents a Report resource.", + "id": "Report", + "properties": { + "accountId": { + "annotations": { + "required": [ + "dfareporting.reports.update" + ] + }, + "description": "The account ID to which this report belongs.", + "format": "int64", + "type": "string" + }, + "criteria": { + "description": "The report criteria for a report of type \"STANDARD\".", + "properties": { + "activities": { + "$ref": "Activities", + "description": "Activity group." + }, + "customRichMediaEvents": { + "$ref": "CustomRichMediaEvents", + "description": "Custom Rich Media Events group." + }, + "dateRange": { + "$ref": "DateRange", + "description": "The date range for which this report should be run." + }, + "dimensionFilters": { + "description": "The list of filters on which dimensions are filtered.\nFilters for different dimensions are ANDed, filters for the same dimension are grouped together and ORed.", + "items": { + "$ref": "DimensionValue" + }, + "type": "array" + }, + "dimensions": { + "description": "The list of standard dimensions the report should include.", + "items": { + "$ref": "SortedDimension" + }, + "type": "array" + }, + "metricNames": { + "description": "The list of names of metrics the report should include.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "crossDimensionReachCriteria": { + "description": "The report criteria for a report of type \"CROSS_DIMENSION_REACH\".", + "properties": { + "breakdown": { + "description": "The list of dimensions the report should include.", + "items": { + "$ref": "SortedDimension" + }, + "type": "array" + }, + "dateRange": { + "$ref": "DateRange", + "description": "The date range this report should be run for." + }, + "dimension": { + "description": "The dimension option.", + "enum": [ + "ADVERTISER", + "CAMPAIGN", + "SITE_BY_ADVERTISER", + "SITE_BY_CAMPAIGN" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ], + "type": "string" + }, + "dimensionFilters": { + "description": "The list of filters on which dimensions are filtered.", + "items": { + "$ref": "DimensionValue" + }, + "type": "array" + }, + "metricNames": { + "description": "The list of names of metrics the report should include.", + "items": { + "type": "string" + }, + "type": "array" + }, + "overlapMetricNames": { + "description": "The list of names of overlap metrics the report should include.", + "items": { + "type": "string" + }, + "type": "array" + }, + "pivoted": { + "description": "Whether the report is pivoted or not. Defaults to true.", + "type": "boolean" + } + }, + "type": "object" + }, + "delivery": { + "description": "The report's email delivery settings.", + "properties": { + "emailOwner": { + "description": "Whether the report should be emailed to the report owner.", + "type": "boolean" + }, + "emailOwnerDeliveryType": { + "description": "The type of delivery for the owner to receive, if enabled.", + "enum": [ + "ATTACHMENT", + "LINK" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "message": { + "description": "The message to be sent with each email.", + "type": "string" + }, + "recipients": { + "description": "The list of recipients to which to email the report.", + "items": { + "$ref": "Recipient" + }, + "type": "array" + } + }, + "type": "object" + }, + "etag": { + "description": "The eTag of this response for caching purposes.", + "type": "string" + }, + "fileName": { + "description": "The filename used when generating report files for this report.", + "type": "string" + }, + "floodlightCriteria": { + "description": "The report criteria for a report of type \"FLOODLIGHT\".", + "properties": { + "customRichMediaEvents": { + "description": "The list of custom rich media events to include.", + "items": { + "$ref": "DimensionValue" + }, + "type": "array" + }, + "dateRange": { + "$ref": "DateRange", + "description": "The date range this report should be run for." + }, + "dimensionFilters": { + "description": "The list of filters on which dimensions are filtered.\nFilters for different dimensions are ANDed, filters for the same dimension are grouped together and ORed.", + "items": { + "$ref": "DimensionValue" + }, + "type": "array" + }, + "dimensions": { + "description": "The list of dimensions the report should include.", + "items": { + "$ref": "SortedDimension" + }, + "type": "array" + }, + "floodlightConfigId": { + "$ref": "DimensionValue", + "description": "The floodlight ID for which to show data in this report. All advertisers associated with that ID will automatically be added. The dimension of the value needs to be 'dfa:floodlightConfigId'." + }, + "metricNames": { + "description": "The list of names of metrics the report should include.", + "items": { + "type": "string" + }, + "type": "array" + }, + "reportProperties": { + "description": "The properties of the report.", + "properties": { + "includeAttributedIPConversions": { + "description": "Include conversions that have no cookie, but do have an exposure path.", + "type": "boolean" + }, + "includeUnattributedCookieConversions": { + "description": "Include conversions of users with a DoubleClick cookie but without an exposure. That means the user did not click or see an ad from the advertiser within the Floodlight group, or that the interaction happened outside the lookback window.", + "type": "boolean" + }, + "includeUnattributedIPConversions": { + "description": "Include conversions that have no associated cookies and no exposures. It’s therefore impossible to know how the user was exposed to your ads during the lookback window prior to a conversion.", + "type": "boolean" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "format": { + "description": "The output format of the report. If not specified, default format is \"CSV\". Note that the actual format in the completed report file might differ if for instance the report's size exceeds the format's capabilities. \"CSV\" will then be the fallback format.", + "enum": [ + "CSV", + "EXCEL" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "id": { + "annotations": { + "required": [ + "dfareporting.reports.update" + ] + }, + "description": "The unique ID identifying this report resource.", + "format": "int64", + "type": "string" + }, + "kind": { + "default": "dfareporting#report", + "description": "The kind of resource this is, in this case dfareporting#report.", + "type": "string" + }, + "lastModifiedTime": { + "annotations": { + "required": [ + "dfareporting.reports.update" + ] + }, + "description": "The timestamp (in milliseconds since epoch) of when this report was last modified.", + "format": "uint64", + "type": "string" + }, + "name": { + "annotations": { + "required": [ + "dfareporting.reports.insert", + "dfareporting.reports.update" + ] + }, + "description": "The name of the report.", + "type": "string" + }, + "ownerProfileId": { + "annotations": { + "required": [ + "dfareporting.reports.update" + ] + }, + "description": "The user profile id of the owner of this report.", + "format": "int64", + "type": "string" + }, + "pathToConversionCriteria": { + "description": "The report criteria for a report of type \"PATH_TO_CONVERSION\".", + "properties": { + "activityFilters": { + "description": "The list of 'dfa:activity' values to filter on.", + "items": { + "$ref": "DimensionValue" + }, + "type": "array" + }, + "conversionDimensions": { + "description": "The list of conversion dimensions the report should include.", + "items": { + "$ref": "SortedDimension" + }, + "type": "array" + }, + "customFloodlightVariables": { + "description": "The list of custom floodlight variables the report should include.", + "items": { + "$ref": "SortedDimension" + }, + "type": "array" + }, + "customRichMediaEvents": { + "description": "The list of custom rich media events to include.", + "items": { + "$ref": "DimensionValue" + }, + "type": "array" + }, + "dateRange": { + "$ref": "DateRange", + "description": "The date range this report should be run for." + }, + "floodlightConfigId": { + "$ref": "DimensionValue", + "description": "The floodlight ID for which to show data in this report. All advertisers associated with that ID will automatically be added. The dimension of the value needs to be 'dfa:floodlightConfigId'." + }, + "metricNames": { + "description": "The list of names of metrics the report should include.", + "items": { + "type": "string" + }, + "type": "array" + }, + "perInteractionDimensions": { + "description": "The list of per interaction dimensions the report should include.", + "items": { + "$ref": "SortedDimension" + }, + "type": "array" + }, + "reportProperties": { + "description": "The properties of the report.", + "properties": { + "clicksLookbackWindow": { + "description": "DFA checks to see if a click interaction occurred within the specified period of time before a conversion. By default the value is pulled from Floodlight or you can manually enter a custom value. Valid values: 1-90.", + "format": "int32", + "type": "integer" + }, + "impressionsLookbackWindow": { + "description": "DFA checks to see if an impression interaction occurred within the specified period of time before a conversion. By default the value is pulled from Floodlight or you can manually enter a custom value. Valid values: 1-90.", + "format": "int32", + "type": "integer" + }, + "includeAttributedIPConversions": { + "description": "Deprecated: has no effect.", + "type": "boolean" + }, + "includeUnattributedCookieConversions": { + "description": "Include conversions of users with a DoubleClick cookie but without an exposure. That means the user did not click or see an ad from the advertiser within the Floodlight group, or that the interaction happened outside the lookback window.", + "type": "boolean" + }, + "includeUnattributedIPConversions": { + "description": "Include conversions that have no associated cookies and no exposures. It’s therefore impossible to know how the user was exposed to your ads during the lookback window prior to a conversion.", + "type": "boolean" + }, + "maximumClickInteractions": { + "description": "The maximum number of click interactions to include in the report. Advertisers currently paying for E2C reports get up to 200 (100 clicks, 100 impressions). If another advertiser in your network is paying for E2C, you can have up to 5 total exposures per report.", + "format": "int32", + "type": "integer" + }, + "maximumImpressionInteractions": { + "description": "The maximum number of click interactions to include in the report. Advertisers currently paying for E2C reports get up to 200 (100 clicks, 100 impressions). If another advertiser in your network is paying for E2C, you can have up to 5 total exposures per report.", + "format": "int32", + "type": "integer" + }, + "maximumInteractionGap": { + "description": "The maximum amount of time that can take place between interactions (clicks or impressions) by the same user. Valid values: 1-90.", + "format": "int32", + "type": "integer" + }, + "pivotOnInteractionPath": { + "description": "Enable pivoting on interaction path.", + "type": "boolean" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "reachCriteria": { + "description": "The report criteria for a report of type \"REACH\".", + "properties": { + "activities": { + "$ref": "Activities", + "description": "Activity group." + }, + "customRichMediaEvents": { + "$ref": "CustomRichMediaEvents", + "description": "Custom Rich Media Events group." + }, + "dateRange": { + "$ref": "DateRange", + "description": "The date range this report should be run for." + }, + "dimensionFilters": { + "description": "The list of filters on which dimensions are filtered.\nFilters for different dimensions are ANDed, filters for the same dimension are grouped together and ORed.", + "items": { + "$ref": "DimensionValue" + }, + "type": "array" + }, + "dimensions": { + "description": "The list of dimensions the report should include.", + "items": { + "$ref": "SortedDimension" + }, + "type": "array" + }, + "enableAllDimensionCombinations": { + "description": "Whether to enable all reach dimension combinations in the report. Defaults to false. If enabled, the date range of the report should be within the last 42 days.", + "type": "boolean" + }, + "metricNames": { + "description": "The list of names of metrics the report should include.", + "items": { + "type": "string" + }, + "type": "array" + }, + "reachByFrequencyMetricNames": { + "description": "The list of names of Reach By Frequency metrics the report should include.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "schedule": { + "description": "The report's schedule. Can only be set if the report's 'dateRange' is a relative date range and the relative date range is not \"TODAY\".", + "properties": { + "active": { + "annotations": { + "required": [ + "dfareporting.reports.insert", + "dfareporting.reports.update" + ] + }, + "description": "Whether the schedule is active or not. Must be set to either true or false.", + "type": "boolean" + }, + "every": { + "description": "Defines every how many days, weeks or months the report should be run. Needs to be set when \"repeats\" is either \"DAILY\", \"WEEKLY\" or \"MONTHLY\".", + "format": "int32", + "type": "integer" + }, + "expirationDate": { + "annotations": { + "required": [ + "dfareporting.reports.insert", + "dfareporting.reports.update" + ] + }, + "description": "The expiration date when the scheduled report stops running.", + "format": "date", + "type": "string" + }, + "repeats": { + "annotations": { + "required": [ + "dfareporting.reports.insert", + "dfareporting.reports.update" + ] + }, + "description": "The interval for which the report is repeated. Note: \n- \"DAILY\" also requires field \"every\" to be set. \n- \"WEEKLY\" also requires fields \"every\" and \"repeatsOnWeekDays\" to be set. \n- \"MONTHLY\" also requires fields \"every\" and \"runsOnDayOfMonth\" to be set.", + "type": "string" + }, + "repeatsOnWeekDays": { + "description": "List of week days \"WEEKLY\" on which scheduled reports should run.", + "items": { + "enum": [ + "FRIDAY", + "MONDAY", + "SATURDAY", + "SUNDAY", + "THURSDAY", + "TUESDAY", + "WEDNESDAY" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "type": "array" + }, + "runsOnDayOfMonth": { + "description": "Enum to define for \"MONTHLY\" scheduled reports whether reports should be repeated on the same day of the month as \"startDate\" or the same day of the week of the month.\nExample: If 'startDate' is Monday, April 2nd 2012 (2012-04-02), \"DAY_OF_MONTH\" would run subsequent reports on the 2nd of every Month, and \"WEEK_OF_MONTH\" would run subsequent reports on the first Monday of the month.", + "enum": [ + "DAY_OF_MONTH", + "WEEK_OF_MONTH" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "startDate": { + "annotations": { + "required": [ + "dfareporting.reports.insert", + "dfareporting.reports.update" + ] + }, + "description": "Start date of date range for which scheduled reports should be run.", + "format": "date", + "type": "string" + } + }, + "type": "object" + }, + "subAccountId": { + "description": "The subaccount ID to which this report belongs if applicable.", + "format": "int64", + "type": "string" + }, + "type": { + "annotations": { + "required": [ + "dfareporting.reports.insert", + "dfareporting.reports.update" + ] + }, + "description": "The type of the report.", + "enum": [ + "CROSS_DIMENSION_REACH", + "FLOODLIGHT", + "PATH_TO_CONVERSION", + "REACH", + "STANDARD" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "ReportCompatibleFields": { + "description": "Represents fields that are compatible to be selected for a report of type \"STANDARD\".", + "id": "ReportCompatibleFields", + "properties": { + "dimensionFilters": { + "description": "Dimensions which are compatible to be selected in the \"dimensionFilters\" section of the report.", + "items": { + "$ref": "Dimension" + }, + "type": "array" + }, + "dimensions": { + "description": "Dimensions which are compatible to be selected in the \"dimensions\" section of the report.", + "items": { + "$ref": "Dimension" + }, + "type": "array" + }, + "kind": { + "default": "dfareporting#reportCompatibleFields", + "description": "The kind of resource this is, in this case dfareporting#reportCompatibleFields.", + "type": "string" + }, + "metrics": { + "description": "Metrics which are compatible to be selected in the \"metricNames\" section of the report.", + "items": { + "$ref": "Metric" + }, + "type": "array" + }, + "pivotedActivityMetrics": { + "description": "Metrics which are compatible to be selected as activity metrics to pivot on in the \"activities\" section of the report.", + "items": { + "$ref": "Metric" + }, + "type": "array" + } + }, + "type": "object" + }, + "ReportList": { + "description": "Represents the list of reports.", + "id": "ReportList", + "properties": { + "etag": { + "description": "The eTag of this response for caching purposes.", + "type": "string" + }, + "items": { + "description": "The reports returned in this response.", + "items": { + "$ref": "Report" + }, + "type": "array" + }, + "kind": { + "default": "dfareporting#reportList", + "description": "The kind of list this is, in this case dfareporting#reportList.", + "type": "string" + }, + "nextPageToken": { + "description": "Continuation token used to page through reports. To retrieve the next page of results, set the next request's \"pageToken\" to the value of this field. The page token is only valid for a limited amount of time and should not be persisted.", + "type": "string" + } + }, + "type": "object" + }, + "ReportsConfiguration": { + "description": "Reporting Configuration", + "id": "ReportsConfiguration", + "properties": { + "exposureToConversionEnabled": { + "description": "Whether the exposure to conversion report is enabled. This report shows detailed pathway information on up to 10 of the most recent ad exposures seen by a user before converting.", + "type": "boolean" + }, + "lookbackConfiguration": { + "$ref": "LookbackConfiguration", + "description": "Default lookback windows for new advertisers in this account." + }, + "reportGenerationTimeZoneId": { + "description": "Report generation time zone ID of this account. This is a required field that can only be changed by a superuser.\nAcceptable values are:\n\n- \"1\" for \"America/New_York\" \n- \"2\" for \"Europe/London\" \n- \"3\" for \"Europe/Paris\" \n- \"4\" for \"Africa/Johannesburg\" \n- \"5\" for \"Asia/Jerusalem\" \n- \"6\" for \"Asia/Shanghai\" \n- \"7\" for \"Asia/Hong_Kong\" \n- \"8\" for \"Asia/Tokyo\" \n- \"9\" for \"Australia/Sydney\" \n- \"10\" for \"Asia/Dubai\" \n- \"11\" for \"America/Los_Angeles\" \n- \"12\" for \"Pacific/Auckland\" \n- \"13\" for \"America/Sao_Paulo\"", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "RichMediaExitOverride": { + "description": "Rich Media Exit Override.", + "id": "RichMediaExitOverride", + "properties": { + "clickThroughUrl": { + "$ref": "ClickThroughUrl", + "description": "Click-through URL of this rich media exit override. Applicable if the enabled field is set to true." + }, + "enabled": { + "description": "Whether to use the clickThroughUrl. If false, the creative-level exit will be used.", + "type": "boolean" + }, + "exitId": { + "description": "ID for the override to refer to a specific exit in the creative.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "Rule": { + "description": "A rule associates an asset with a targeting template for asset-level targeting. Applicable to INSTREAM_VIDEO creatives.", + "id": "Rule", + "properties": { + "assetId": { + "description": "A creativeAssets[].id. This should refer to one of the parent assets in this creative. This is a required field.", + "format": "int64", + "type": "string" + }, + "name": { + "description": "A user-friendly name for this rule. This is a required field.", + "type": "string" + }, + "targetingTemplateId": { + "description": "A targeting template ID. The targeting from the targeting template will be used to determine whether this asset should be served. This is a required field.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "Site": { + "description": "Contains properties of a site.", + "id": "Site", + "properties": { + "accountId": { + "description": "Account ID of this site. This is a read-only field that can be left blank.", + "format": "int64", + "type": "string" + }, + "approved": { + "description": "Whether this site is approved.", + "type": "boolean" + }, + "directorySiteId": { + "description": "Directory site associated with this site. This is a required field that is read-only after insertion.", + "format": "int64", + "type": "string" + }, + "directorySiteIdDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of the directory site. This is a read-only, auto-generated field." + }, + "id": { + "description": "ID of this site. This is a read-only, auto-generated field.", + "format": "int64", + "type": "string" + }, + "idDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of this site. This is a read-only, auto-generated field." + }, + "keyName": { + "description": "Key name of this site. This is a read-only, auto-generated field.", + "type": "string" + }, + "kind": { + "default": "dfareporting#site", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#site\".", + "type": "string" + }, + "name": { + "description": "Name of this site.This is a required field. Must be less than 128 characters long. If this site is under a subaccount, the name must be unique among sites of the same subaccount. Otherwise, this site is a top-level site, and the name must be unique among top-level sites of the same account.", + "type": "string" + }, + "siteContacts": { + "description": "Site contacts.", + "items": { + "$ref": "SiteContact" + }, + "type": "array" + }, + "siteSettings": { + "$ref": "SiteSettings", + "description": "Site-wide settings." + }, + "subaccountId": { + "description": "Subaccount ID of this site. This is a read-only field that can be left blank.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "SiteContact": { + "description": "Site Contact", + "id": "SiteContact", + "properties": { + "address": { + "description": "Address of this site contact.", + "type": "string" + }, + "contactType": { + "description": "Site contact type.", + "enum": [ + "SALES_PERSON", + "TRAFFICKER" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "email": { + "description": "Email address of this site contact. This is a required field.", + "type": "string" + }, + "firstName": { + "description": "First name of this site contact.", + "type": "string" + }, + "id": { + "description": "ID of this site contact. This is a read-only, auto-generated field.", + "format": "int64", + "type": "string" + }, + "lastName": { + "description": "Last name of this site contact.", + "type": "string" + }, + "phone": { + "description": "Primary phone number of this site contact.", + "type": "string" + }, + "title": { + "description": "Title or designation of this site contact.", + "type": "string" + } + }, + "type": "object" + }, + "SiteSettings": { + "description": "Site Settings", + "id": "SiteSettings", + "properties": { + "activeViewOptOut": { + "description": "Whether active view creatives are disabled for this site.", + "type": "boolean" + }, + "adBlockingOptOut": { + "description": "Whether this site opts out of ad blocking. When true, ad blocking is disabled for all placements under the site, regardless of the individual placement settings. When false, the campaign and placement settings take effect.", + "type": "boolean" + }, + "creativeSettings": { + "$ref": "CreativeSettings", + "description": "Site-wide creative settings." + }, + "disableNewCookie": { + "description": "Whether new cookies are disabled for this site.", + "type": "boolean" + }, + "lookbackConfiguration": { + "$ref": "LookbackConfiguration", + "description": "Lookback window settings for this site." + }, + "tagSetting": { + "$ref": "TagSetting", + "description": "Configuration settings for dynamic and image floodlight tags." + }, + "videoActiveViewOptOutTemplate": { + "description": "Whether Verification and ActiveView for in-stream video creatives are disabled by default for new placements created under this site. This value will be used to populate the placement.videoActiveViewOptOut field, when no value is specified for the new placement.", + "type": "boolean" + }, + "vpaidAdapterChoiceTemplate": { + "description": "Default VPAID adapter setting for new placements created under this site. This value will be used to populate the placements.vpaidAdapterChoice field, when no value is specified for the new placement. Controls which VPAID format the measurement adapter will use for in-stream video creatives assigned to the placement. The publisher's specifications will typically determine this setting. For VPAID creatives, the adapter format will match the VPAID format (HTML5 VPAID creatives use the HTML5 adapter).\n\nNote: Flash is no longer supported. This field now defaults to HTML5 when the following values are provided: FLASH, BOTH.", + "enum": [ + "BOTH", + "DEFAULT", + "FLASH", + "HTML5" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "SitesListResponse": { + "description": "Site List Response", + "id": "SitesListResponse", + "properties": { + "kind": { + "default": "dfareporting#sitesListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#sitesListResponse\".", + "type": "string" + }, + "nextPageToken": { + "description": "Pagination token to be used for the next list operation.", + "type": "string" + }, + "sites": { + "description": "Site collection.", + "items": { + "$ref": "Site" + }, + "type": "array" + } + }, + "type": "object" + }, + "Size": { + "description": "Represents the dimensions of ads, placements, creatives, or creative assets.", + "id": "Size", + "properties": { + "height": { + "description": "Height of this size. Acceptable values are 0 to 32767, inclusive.", + "format": "int32", + "type": "integer" + }, + "iab": { + "description": "IAB standard size. This is a read-only, auto-generated field.", + "type": "boolean" + }, + "id": { + "description": "ID of this size. This is a read-only, auto-generated field.", + "format": "int64", + "type": "string" + }, + "kind": { + "default": "dfareporting#size", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#size\".", + "type": "string" + }, + "width": { + "description": "Width of this size. Acceptable values are 0 to 32767, inclusive.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "SizesListResponse": { + "description": "Size List Response", + "id": "SizesListResponse", + "properties": { + "kind": { + "default": "dfareporting#sizesListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#sizesListResponse\".", + "type": "string" + }, + "sizes": { + "description": "Size collection.", + "items": { + "$ref": "Size" + }, + "type": "array" + } + }, + "type": "object" + }, + "SkippableSetting": { + "description": "Skippable Settings", + "id": "SkippableSetting", + "properties": { + "kind": { + "default": "dfareporting#skippableSetting", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#skippableSetting\".", + "type": "string" + }, + "progressOffset": { + "$ref": "VideoOffset", + "description": "Amount of time to play videos served to this placement before counting a view. Applicable when skippable is true." + }, + "skipOffset": { + "$ref": "VideoOffset", + "description": "Amount of time to play videos served to this placement before the skip button should appear. Applicable when skippable is true." + }, + "skippable": { + "description": "Whether the user can skip creatives served to this placement.", + "type": "boolean" + } + }, + "type": "object" + }, + "SortedDimension": { + "description": "Represents a sorted dimension.", + "id": "SortedDimension", + "properties": { + "kind": { + "default": "dfareporting#sortedDimension", + "description": "The kind of resource this is, in this case dfareporting#sortedDimension.", + "type": "string" + }, + "name": { + "description": "The name of the dimension.", + "type": "string" }, "sortOrder": { - "type": "string", - "description": "Order of sorted results.", - "default": "DESCENDING", - "enum": [ - "ASCENDING", - "DESCENDING" - ], - "enumDescriptions": [ - "Ascending order.", - "Descending order." - ], - "location": "query" + "description": "An optional sort order for the dimension column.", + "enum": [ + "ASCENDING", + "DESCENDING" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" } - }, - "parameterOrder": [ - "profileId", - "reportId" - ], - "response": { - "$ref": "FileList" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfareporting" - ] - } - } + }, + "type": "object" + }, + "Subaccount": { + "description": "Contains properties of a DCM subaccount.", + "id": "Subaccount", + "properties": { + "accountId": { + "description": "ID of the account that contains this subaccount. This is a read-only field that can be left blank.", + "format": "int64", + "type": "string" + }, + "availablePermissionIds": { + "description": "IDs of the available user role permissions for this subaccount.", + "items": { + "format": "int64", + "type": "string" + }, + "type": "array" + }, + "id": { + "description": "ID of this subaccount. This is a read-only, auto-generated field.", + "format": "int64", + "type": "string" + }, + "kind": { + "default": "dfareporting#subaccount", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#subaccount\".", + "type": "string" + }, + "name": { + "description": "Name of this subaccount. This is a required field. Must be less than 128 characters long and be unique among subaccounts of the same account.", + "type": "string" + } + }, + "type": "object" + }, + "SubaccountsListResponse": { + "description": "Subaccount List Response", + "id": "SubaccountsListResponse", + "properties": { + "kind": { + "default": "dfareporting#subaccountsListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#subaccountsListResponse\".", + "type": "string" + }, + "nextPageToken": { + "description": "Pagination token to be used for the next list operation.", + "type": "string" + }, + "subaccounts": { + "description": "Subaccount collection.", + "items": { + "$ref": "Subaccount" + }, + "type": "array" + } + }, + "type": "object" + }, + "TagData": { + "description": "Placement Tag Data", + "id": "TagData", + "properties": { + "adId": { + "description": "Ad associated with this placement tag. Applicable only when format is PLACEMENT_TAG_TRACKING.", + "format": "int64", + "type": "string" + }, + "clickTag": { + "description": "Tag string to record a click.", + "type": "string" + }, + "creativeId": { + "description": "Creative associated with this placement tag. Applicable only when format is PLACEMENT_TAG_TRACKING.", + "format": "int64", + "type": "string" + }, + "format": { + "description": "TagData tag format of this tag.", + "enum": [ + "PLACEMENT_TAG_CLICK_COMMANDS", + "PLACEMENT_TAG_IFRAME_ILAYER", + "PLACEMENT_TAG_IFRAME_JAVASCRIPT", + "PLACEMENT_TAG_IFRAME_JAVASCRIPT_LEGACY", + "PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH", + "PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH_VAST_3", + "PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH_VAST_4", + "PLACEMENT_TAG_INTERNAL_REDIRECT", + "PLACEMENT_TAG_INTERSTITIAL_IFRAME_JAVASCRIPT", + "PLACEMENT_TAG_INTERSTITIAL_IFRAME_JAVASCRIPT_LEGACY", + "PLACEMENT_TAG_INTERSTITIAL_INTERNAL_REDIRECT", + "PLACEMENT_TAG_INTERSTITIAL_JAVASCRIPT", + "PLACEMENT_TAG_INTERSTITIAL_JAVASCRIPT_LEGACY", + "PLACEMENT_TAG_JAVASCRIPT", + "PLACEMENT_TAG_JAVASCRIPT_LEGACY", + "PLACEMENT_TAG_STANDARD", + "PLACEMENT_TAG_TRACKING", + "PLACEMENT_TAG_TRACKING_IFRAME", + "PLACEMENT_TAG_TRACKING_JAVASCRIPT" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "impressionTag": { + "description": "Tag string for serving an ad.", + "type": "string" + } + }, + "type": "object" + }, + "TagSetting": { + "description": "Tag Settings", + "id": "TagSetting", + "properties": { + "additionalKeyValues": { + "description": "Additional key-values to be included in tags. Each key-value pair must be of the form key=value, and pairs must be separated by a semicolon (;). Keys and values must not contain commas. For example, id=2;color=red is a valid value for this field.", + "type": "string" + }, + "includeClickThroughUrls": { + "description": "Whether static landing page URLs should be included in the tags. This setting applies only to placements.", + "type": "boolean" + }, + "includeClickTracking": { + "description": "Whether click-tracking string should be included in the tags.", + "type": "boolean" + }, + "keywordOption": { + "description": "Option specifying how keywords are embedded in ad tags. This setting can be used to specify whether keyword placeholders are inserted in placement tags for this site. Publishers can then add keywords to those placeholders.", + "enum": [ + "GENERATE_SEPARATE_TAG_FOR_EACH_KEYWORD", + "IGNORE", + "PLACEHOLDER_WITH_LIST_OF_KEYWORDS" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "TagSettings": { + "description": "Dynamic and Image Tag Settings.", + "id": "TagSettings", + "properties": { + "dynamicTagEnabled": { + "description": "Whether dynamic floodlight tags are enabled.", + "type": "boolean" + }, + "imageTagEnabled": { + "description": "Whether image tags are enabled.", + "type": "boolean" + } + }, + "type": "object" + }, + "TargetWindow": { + "description": "Target Window.", + "id": "TargetWindow", + "properties": { + "customHtml": { + "description": "User-entered value.", + "type": "string" + }, + "targetWindowOption": { + "description": "Type of browser window for which the backup image of the flash creative can be displayed.", + "enum": [ + "CURRENT_WINDOW", + "CUSTOM", + "NEW_WINDOW" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "TargetableRemarketingList": { + "description": "Contains properties of a targetable remarketing list. Remarketing enables you to create lists of users who have performed specific actions on a site, then target ads to members of those lists. This resource is a read-only view of a remarketing list to be used to faciliate targeting ads to specific lists. Remarketing lists that are owned by your advertisers and those that are shared to your advertisers or account are accessible via this resource. To manage remarketing lists that are owned by your advertisers, use the RemarketingLists resource.", + "id": "TargetableRemarketingList", + "properties": { + "accountId": { + "description": "Account ID of this remarketing list. This is a read-only, auto-generated field that is only returned in GET requests.", + "format": "int64", + "type": "string" + }, + "active": { + "description": "Whether this targetable remarketing list is active.", + "type": "boolean" + }, + "advertiserId": { + "description": "Dimension value for the advertiser ID that owns this targetable remarketing list.", + "format": "int64", + "type": "string" + }, + "advertiserIdDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of the advertiser." + }, + "description": { + "description": "Targetable remarketing list description.", + "type": "string" + }, + "id": { + "description": "Targetable remarketing list ID.", + "format": "int64", + "type": "string" + }, + "kind": { + "default": "dfareporting#targetableRemarketingList", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#targetableRemarketingList\".", + "type": "string" + }, + "lifeSpan": { + "description": "Number of days that a user should remain in the targetable remarketing list without an impression.", + "format": "int64", + "type": "string" + }, + "listSize": { + "description": "Number of users currently in the list. This is a read-only field.", + "format": "int64", + "type": "string" + }, + "listSource": { + "description": "Product from which this targetable remarketing list was originated.", + "enum": [ + "REMARKETING_LIST_SOURCE_ADX", + "REMARKETING_LIST_SOURCE_DBM", + "REMARKETING_LIST_SOURCE_DFA", + "REMARKETING_LIST_SOURCE_DFP", + "REMARKETING_LIST_SOURCE_DMP", + "REMARKETING_LIST_SOURCE_GA", + "REMARKETING_LIST_SOURCE_GPLUS", + "REMARKETING_LIST_SOURCE_OTHER", + "REMARKETING_LIST_SOURCE_PLAY_STORE", + "REMARKETING_LIST_SOURCE_XFP", + "REMARKETING_LIST_SOURCE_YOUTUBE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "name": { + "description": "Name of the targetable remarketing list. Is no greater than 128 characters long.", + "type": "string" + }, + "subaccountId": { + "description": "Subaccount ID of this remarketing list. This is a read-only, auto-generated field that is only returned in GET requests.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "TargetableRemarketingListsListResponse": { + "description": "Targetable remarketing list response", + "id": "TargetableRemarketingListsListResponse", + "properties": { + "kind": { + "default": "dfareporting#targetableRemarketingListsListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#targetableRemarketingListsListResponse\".", + "type": "string" + }, + "nextPageToken": { + "description": "Pagination token to be used for the next list operation.", + "type": "string" + }, + "targetableRemarketingLists": { + "description": "Targetable remarketing list collection.", + "items": { + "$ref": "TargetableRemarketingList" + }, + "type": "array" + } + }, + "type": "object" + }, + "TargetingTemplate": { + "description": "Contains properties of a targeting template. A targeting template encapsulates targeting information which can be reused across multiple ads.", + "id": "TargetingTemplate", + "properties": { + "accountId": { + "description": "Account ID of this targeting template. This field, if left unset, will be auto-generated on insert and is read-only after insert.", + "format": "int64", + "type": "string" + }, + "advertiserId": { + "description": "Advertiser ID of this targeting template. This is a required field on insert and is read-only after insert.", + "format": "int64", + "type": "string" + }, + "advertiserIdDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of the advertiser. This is a read-only, auto-generated field." + }, + "dayPartTargeting": { + "$ref": "DayPartTargeting", + "description": "Time and day targeting criteria." + }, + "geoTargeting": { + "$ref": "GeoTargeting", + "description": "Geographical targeting criteria." + }, + "id": { + "description": "ID of this targeting template. This is a read-only, auto-generated field.", + "format": "int64", + "type": "string" + }, + "keyValueTargetingExpression": { + "$ref": "KeyValueTargetingExpression", + "description": "Key-value targeting criteria." + }, + "kind": { + "default": "dfareporting#targetingTemplate", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#targetingTemplate\".", + "type": "string" + }, + "languageTargeting": { + "$ref": "LanguageTargeting", + "description": "Language targeting criteria." + }, + "listTargetingExpression": { + "$ref": "ListTargetingExpression", + "description": "Remarketing list targeting criteria." + }, + "name": { + "description": "Name of this targeting template. This field is required. It must be less than 256 characters long and unique within an advertiser.", + "type": "string" + }, + "subaccountId": { + "description": "Subaccount ID of this targeting template. This field, if left unset, will be auto-generated on insert and is read-only after insert.", + "format": "int64", + "type": "string" + }, + "technologyTargeting": { + "$ref": "TechnologyTargeting", + "description": "Technology platform targeting criteria." + } + }, + "type": "object" + }, + "TargetingTemplatesListResponse": { + "description": "Targeting Template List Response", + "id": "TargetingTemplatesListResponse", + "properties": { + "kind": { + "default": "dfareporting#targetingTemplatesListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#targetingTemplatesListResponse\".", + "type": "string" + }, + "nextPageToken": { + "description": "Pagination token to be used for the next list operation.", + "type": "string" + }, + "targetingTemplates": { + "description": "Targeting template collection.", + "items": { + "$ref": "TargetingTemplate" + }, + "type": "array" + } + }, + "type": "object" + }, + "TechnologyTargeting": { + "description": "Technology Targeting.", + "id": "TechnologyTargeting", + "properties": { + "browsers": { + "description": "Browsers that this ad targets. For each browser either set browserVersionId or dartId along with the version numbers. If both are specified, only browserVersionId will be used. The other fields are populated automatically when the ad is inserted or updated.", + "items": { + "$ref": "Browser" + }, + "type": "array" + }, + "connectionTypes": { + "description": "Connection types that this ad targets. For each connection type only id is required. The other fields are populated automatically when the ad is inserted or updated.", + "items": { + "$ref": "ConnectionType" + }, + "type": "array" + }, + "mobileCarriers": { + "description": "Mobile carriers that this ad targets. For each mobile carrier only id is required, and the other fields are populated automatically when the ad is inserted or updated. If targeting a mobile carrier, do not set targeting for any zip codes.", + "items": { + "$ref": "MobileCarrier" + }, + "type": "array" + }, + "operatingSystemVersions": { + "description": "Operating system versions that this ad targets. To target all versions, use operatingSystems. For each operating system version, only id is required. The other fields are populated automatically when the ad is inserted or updated. If targeting an operating system version, do not set targeting for the corresponding operating system in operatingSystems.", + "items": { + "$ref": "OperatingSystemVersion" + }, + "type": "array" + }, + "operatingSystems": { + "description": "Operating systems that this ad targets. To target specific versions, use operatingSystemVersions. For each operating system only dartId is required. The other fields are populated automatically when the ad is inserted or updated. If targeting an operating system, do not set targeting for operating system versions for the same operating system.", + "items": { + "$ref": "OperatingSystem" + }, + "type": "array" + }, + "platformTypes": { + "description": "Platform types that this ad targets. For example, desktop, mobile, or tablet. For each platform type, only id is required, and the other fields are populated automatically when the ad is inserted or updated.", + "items": { + "$ref": "PlatformType" + }, + "type": "array" + } + }, + "type": "object" + }, + "ThirdPartyAuthenticationToken": { + "description": "Third Party Authentication Token", + "id": "ThirdPartyAuthenticationToken", + "properties": { + "name": { + "description": "Name of the third-party authentication token.", + "type": "string" + }, + "value": { + "description": "Value of the third-party authentication token. This is a read-only, auto-generated field.", + "type": "string" + } + }, + "type": "object" + }, + "ThirdPartyTrackingUrl": { + "description": "Third-party Tracking URL.", + "id": "ThirdPartyTrackingUrl", + "properties": { + "thirdPartyUrlType": { + "description": "Third-party URL type for in-stream video creatives.", + "enum": [ + "CLICK_TRACKING", + "IMPRESSION", + "RICH_MEDIA_BACKUP_IMPRESSION", + "RICH_MEDIA_IMPRESSION", + "RICH_MEDIA_RM_IMPRESSION", + "SURVEY", + "VIDEO_COMPLETE", + "VIDEO_CUSTOM", + "VIDEO_FIRST_QUARTILE", + "VIDEO_FULLSCREEN", + "VIDEO_MIDPOINT", + "VIDEO_MUTE", + "VIDEO_PAUSE", + "VIDEO_PROGRESS", + "VIDEO_REWIND", + "VIDEO_SKIP", + "VIDEO_START", + "VIDEO_STOP", + "VIDEO_THIRD_QUARTILE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "url": { + "description": "URL for the specified third-party URL type.", + "type": "string" + } + }, + "type": "object" + }, + "TranscodeSetting": { + "description": "Transcode Settings", + "id": "TranscodeSetting", + "properties": { + "enabledVideoFormats": { + "description": "Whitelist of video formats to be served to this placement. Set this list to null or empty to serve all video formats.", + "items": { + "format": "int32", + "type": "integer" + }, + "type": "array" + }, + "kind": { + "default": "dfareporting#transcodeSetting", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#transcodeSetting\".", + "type": "string" + } + }, + "type": "object" + }, + "UniversalAdId": { + "description": "A Universal Ad ID as per the VAST 4.0 spec. Applicable to the following creative types: INSTREAM_VIDEO and VPAID.", + "id": "UniversalAdId", + "properties": { + "registry": { + "description": "Registry used for the Ad ID value.", + "enum": [ + "AD_ID.ORG", + "CLEARCAST", + "DCM", + "OTHER" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ], + "type": "string" + }, + "value": { + "description": "ID value for this creative. Only alphanumeric characters and the following symbols are valid: \"_/\\-\". Maximum length is 64 characters. Read only when registry is DCM.", + "type": "string" + } + }, + "type": "object" + }, + "UserDefinedVariableConfiguration": { + "description": "User Defined Variable configuration.", + "id": "UserDefinedVariableConfiguration", + "properties": { + "dataType": { + "description": "Data type for the variable. This is a required field.", + "enum": [ + "NUMBER", + "STRING" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "reportName": { + "description": "User-friendly name for the variable which will appear in reports. This is a required field, must be less than 64 characters long, and cannot contain the following characters: \"\"\u003c\u003e\".", + "type": "string" + }, + "variableType": { + "description": "Variable name in the tag. This is a required field.", + "enum": [ + "U1", + "U10", + "U100", + "U11", + "U12", + "U13", + "U14", + "U15", + "U16", + "U17", + "U18", + "U19", + "U2", + "U20", + "U21", + "U22", + "U23", + "U24", + "U25", + "U26", + "U27", + "U28", + "U29", + "U3", + "U30", + "U31", + "U32", + "U33", + "U34", + "U35", + "U36", + "U37", + "U38", + "U39", + "U4", + "U40", + "U41", + "U42", + "U43", + "U44", + "U45", + "U46", + "U47", + "U48", + "U49", + "U5", + "U50", + "U51", + "U52", + "U53", + "U54", + "U55", + "U56", + "U57", + "U58", + "U59", + "U6", + "U60", + "U61", + "U62", + "U63", + "U64", + "U65", + "U66", + "U67", + "U68", + "U69", + "U7", + "U70", + "U71", + "U72", + "U73", + "U74", + "U75", + "U76", + "U77", + "U78", + "U79", + "U8", + "U80", + "U81", + "U82", + "U83", + "U84", + "U85", + "U86", + "U87", + "U88", + "U89", + "U9", + "U90", + "U91", + "U92", + "U93", + "U94", + "U95", + "U96", + "U97", + "U98", + "U99" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "UserProfile": { + "description": "Represents a UserProfile resource.", + "id": "UserProfile", + "properties": { + "accountId": { + "description": "The account ID to which this profile belongs.", + "format": "int64", + "type": "string" + }, + "accountName": { + "description": "The account name this profile belongs to.", + "type": "string" + }, + "etag": { + "description": "The eTag of this response for caching purposes.", + "type": "string" + }, + "kind": { + "default": "dfareporting#userProfile", + "description": "The kind of resource this is, in this case dfareporting#userProfile.", + "type": "string" + }, + "profileId": { + "description": "The unique ID of the user profile.", + "format": "int64", + "type": "string" + }, + "subAccountId": { + "description": "The sub account ID this profile belongs to if applicable.", + "format": "int64", + "type": "string" + }, + "subAccountName": { + "description": "The sub account name this profile belongs to if applicable.", + "type": "string" + }, + "userName": { + "description": "The user name.", + "type": "string" + } + }, + "type": "object" + }, + "UserProfileList": { + "description": "Represents the list of user profiles.", + "id": "UserProfileList", + "properties": { + "etag": { + "description": "The eTag of this response for caching purposes.", + "type": "string" + }, + "items": { + "description": "The user profiles returned in this response.", + "items": { + "$ref": "UserProfile" + }, + "type": "array" + }, + "kind": { + "default": "dfareporting#userProfileList", + "description": "The kind of list this is, in this case dfareporting#userProfileList.", + "type": "string" + } + }, + "type": "object" + }, + "UserRole": { + "description": "Contains properties of auser role, which is used to manage user access.", + "id": "UserRole", + "properties": { + "accountId": { + "description": "Account ID of this user role. This is a read-only field that can be left blank.", + "format": "int64", + "type": "string" + }, + "defaultUserRole": { + "description": "Whether this is a default user role. Default user roles are created by the system for the account/subaccount and cannot be modified or deleted. Each default user role comes with a basic set of preassigned permissions.", + "type": "boolean" + }, + "id": { + "description": "ID of this user role. This is a read-only, auto-generated field.", + "format": "int64", + "type": "string" + }, + "kind": { + "default": "dfareporting#userRole", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#userRole\".", + "type": "string" + }, + "name": { + "description": "Name of this user role. This is a required field. Must be less than 256 characters long. If this user role is under a subaccount, the name must be unique among sites of the same subaccount. Otherwise, this user role is a top-level user role, and the name must be unique among top-level user roles of the same account.", + "type": "string" + }, + "parentUserRoleId": { + "description": "ID of the user role that this user role is based on or copied from. This is a required field.", + "format": "int64", + "type": "string" + }, + "permissions": { + "description": "List of permissions associated with this user role.", + "items": { + "$ref": "UserRolePermission" + }, + "type": "array" + }, + "subaccountId": { + "description": "Subaccount ID of this user role. This is a read-only field that can be left blank.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "UserRolePermission": { + "description": "Contains properties of a user role permission.", + "id": "UserRolePermission", + "properties": { + "availability": { + "description": "Levels of availability for a user role permission.", + "enum": [ + "ACCOUNT_ALWAYS", + "ACCOUNT_BY_DEFAULT", + "NOT_AVAILABLE_BY_DEFAULT", + "SUBACCOUNT_AND_ACCOUNT_ALWAYS", + "SUBACCOUNT_AND_ACCOUNT_BY_DEFAULT" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "id": { + "description": "ID of this user role permission.", + "format": "int64", + "type": "string" + }, + "kind": { + "default": "dfareporting#userRolePermission", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#userRolePermission\".", + "type": "string" + }, + "name": { + "description": "Name of this user role permission.", + "type": "string" + }, + "permissionGroupId": { + "description": "ID of the permission group that this user role permission belongs to.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "UserRolePermissionGroup": { + "description": "Represents a grouping of related user role permissions.", + "id": "UserRolePermissionGroup", + "properties": { + "id": { + "description": "ID of this user role permission.", + "format": "int64", + "type": "string" + }, + "kind": { + "default": "dfareporting#userRolePermissionGroup", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#userRolePermissionGroup\".", + "type": "string" + }, + "name": { + "description": "Name of this user role permission group.", + "type": "string" + } + }, + "type": "object" + }, + "UserRolePermissionGroupsListResponse": { + "description": "User Role Permission Group List Response", + "id": "UserRolePermissionGroupsListResponse", + "properties": { + "kind": { + "default": "dfareporting#userRolePermissionGroupsListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#userRolePermissionGroupsListResponse\".", + "type": "string" + }, + "userRolePermissionGroups": { + "description": "User role permission group collection.", + "items": { + "$ref": "UserRolePermissionGroup" + }, + "type": "array" + } + }, + "type": "object" + }, + "UserRolePermissionsListResponse": { + "description": "User Role Permission List Response", + "id": "UserRolePermissionsListResponse", + "properties": { + "kind": { + "default": "dfareporting#userRolePermissionsListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#userRolePermissionsListResponse\".", + "type": "string" + }, + "userRolePermissions": { + "description": "User role permission collection.", + "items": { + "$ref": "UserRolePermission" + }, + "type": "array" + } + }, + "type": "object" + }, + "UserRolesListResponse": { + "description": "User Role List Response", + "id": "UserRolesListResponse", + "properties": { + "kind": { + "default": "dfareporting#userRolesListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#userRolesListResponse\".", + "type": "string" + }, + "nextPageToken": { + "description": "Pagination token to be used for the next list operation.", + "type": "string" + }, + "userRoles": { + "description": "User role collection.", + "items": { + "$ref": "UserRole" + }, + "type": "array" + } + }, + "type": "object" + }, + "VideoFormat": { + "description": "Contains information about supported video formats.", + "id": "VideoFormat", + "properties": { + "fileType": { + "description": "File type of the video format.", + "enum": [ + "FLV", + "M3U8", + "MP4", + "THREEGPP", + "WEBM" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "id": { + "description": "ID of the video format.", + "format": "int32", + "type": "integer" + }, + "kind": { + "default": "dfareporting#videoFormat", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#videoFormat\".", + "type": "string" + }, + "resolution": { + "$ref": "Size", + "description": "The resolution of this video format." + }, + "targetBitRate": { + "description": "The target bit rate of this video format.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "VideoFormatsListResponse": { + "description": "Video Format List Response", + "id": "VideoFormatsListResponse", + "properties": { + "kind": { + "default": "dfareporting#videoFormatsListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#videoFormatsListResponse\".", + "type": "string" + }, + "videoFormats": { + "description": "Video format collection.", + "items": { + "$ref": "VideoFormat" + }, + "type": "array" + } + }, + "type": "object" + }, + "VideoOffset": { + "description": "Video Offset", + "id": "VideoOffset", + "properties": { + "offsetPercentage": { + "description": "Duration, as a percentage of video duration. Do not set when offsetSeconds is set. Acceptable values are 0 to 100, inclusive.", + "format": "int32", + "type": "integer" + }, + "offsetSeconds": { + "description": "Duration, in seconds. Do not set when offsetPercentage is set. Acceptable values are 0 to 86399, inclusive.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "VideoSettings": { + "description": "Video Settings", + "id": "VideoSettings", + "properties": { + "companionSettings": { + "$ref": "CompanionSetting", + "description": "Settings for the companion creatives of video creatives served to this placement." + }, + "kind": { + "default": "dfareporting#videoSettings", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#videoSettings\".", + "type": "string" + }, + "skippableSettings": { + "$ref": "SkippableSetting", + "description": "Settings for the skippability of video creatives served to this placement. If this object is provided, the creative-level skippable settings will be overridden." + }, + "transcodeSettings": { + "$ref": "TranscodeSetting", + "description": "Settings for the transcodes of video creatives served to this placement. If this object is provided, the creative-level transcode settings will be overridden." + } + }, + "type": "object" } - } }, - "sites": { - "methods": { - "get": { - "id": "dfareporting.sites.get", - "path": "userprofiles/{profileId}/sites/{id}", - "httpMethod": "GET", - "description": "Gets one site by ID.", - "parameters": { - "id": { - "type": "string", - "description": "Site ID.", - "required": true, - "format": "int64", - "location": "path" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "id" - ], - "response": { - "$ref": "Site" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "insert": { - "id": "dfareporting.sites.insert", - "path": "userprofiles/{profileId}/sites", - "httpMethod": "POST", - "description": "Inserts a new site.", - "parameters": { - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId" - ], - "request": { - "$ref": "Site" - }, - "response": { - "$ref": "Site" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "list": { - "id": "dfareporting.sites.list", - "path": "userprofiles/{profileId}/sites", - "httpMethod": "GET", - "description": "Retrieves a list of sites, possibly filtered. This method supports paging.", - "parameters": { - "acceptsInStreamVideoPlacements": { - "type": "boolean", - "description": "This search filter is no longer supported and will have no effect on the results returned.", - "location": "query" - }, - "acceptsInterstitialPlacements": { - "type": "boolean", - "description": "This search filter is no longer supported and will have no effect on the results returned.", - "location": "query" - }, - "acceptsPublisherPaidPlacements": { - "type": "boolean", - "description": "Select only sites that accept publisher paid placements.", - "location": "query" - }, - "adWordsSite": { - "type": "boolean", - "description": "Select only AdWords sites.", - "location": "query" - }, - "approved": { - "type": "boolean", - "description": "Select only approved sites.", - "location": "query" - }, - "campaignIds": { - "type": "string", - "description": "Select only sites with these campaign IDs.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "directorySiteIds": { - "type": "string", - "description": "Select only sites with these directory site IDs.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "ids": { - "type": "string", - "description": "Select only sites with these IDs.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "Maximum number of results to return.", - "default": "1000", - "format": "int32", - "minimum": "0", - "maximum": "1000", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Value of the nextPageToken from the previous result page.", - "location": "query" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - }, - "searchString": { - "type": "string", - "description": "Allows searching for objects by name, ID or keyName. Wildcards (*) are allowed. For example, \"site*2015\" will return objects with names like \"site June 2015\", \"site April 2015\", or simply \"site 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"site\" will match objects with name \"my site\", \"site 2015\", or simply \"site\".", - "location": "query" - }, - "sortField": { - "type": "string", - "description": "Field by which to sort the list.", - "default": "ID", - "enum": [ - "ID", - "NAME" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - }, - "sortOrder": { - "type": "string", - "description": "Order of sorted results.", - "default": "ASCENDING", - "enum": [ - "ASCENDING", - "DESCENDING" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - }, - "subaccountId": { - "type": "string", - "description": "Select only sites with this subaccount ID.", - "format": "int64", - "location": "query" - }, - "unmappedSite": { - "type": "boolean", - "description": "Select only sites that have not been mapped to a directory site.", - "location": "query" - } - }, - "parameterOrder": [ - "profileId" - ], - "response": { - "$ref": "SitesListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "patch": { - "id": "dfareporting.sites.patch", - "path": "userprofiles/{profileId}/sites", - "httpMethod": "PATCH", - "description": "Updates an existing site. This method supports patch semantics.", - "parameters": { - "id": { - "type": "string", - "description": "Site ID.", - "required": true, - "format": "int64", - "location": "query" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "id" - ], - "request": { - "$ref": "Site" - }, - "response": { - "$ref": "Site" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "update": { - "id": "dfareporting.sites.update", - "path": "userprofiles/{profileId}/sites", - "httpMethod": "PUT", - "description": "Updates an existing site.", - "parameters": { - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId" - ], - "request": { - "$ref": "Site" - }, - "response": { - "$ref": "Site" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - } - } - }, - "sizes": { - "methods": { - "get": { - "id": "dfareporting.sizes.get", - "path": "userprofiles/{profileId}/sizes/{id}", - "httpMethod": "GET", - "description": "Gets one size by ID.", - "parameters": { - "id": { - "type": "string", - "description": "Size ID.", - "required": true, - "format": "int64", - "location": "path" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "id" - ], - "response": { - "$ref": "Size" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "insert": { - "id": "dfareporting.sizes.insert", - "path": "userprofiles/{profileId}/sizes", - "httpMethod": "POST", - "description": "Inserts a new size.", - "parameters": { - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId" - ], - "request": { - "$ref": "Size" - }, - "response": { - "$ref": "Size" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "list": { - "id": "dfareporting.sizes.list", - "path": "userprofiles/{profileId}/sizes", - "httpMethod": "GET", - "description": "Retrieves a list of sizes, possibly filtered.", - "parameters": { - "height": { - "type": "integer", - "description": "Select only sizes with this height.", - "format": "int32", - "minimum": "0", - "maximum": "32767", - "location": "query" - }, - "iabStandard": { - "type": "boolean", - "description": "Select only IAB standard sizes.", - "location": "query" - }, - "ids": { - "type": "string", - "description": "Select only sizes with these IDs.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - }, - "width": { - "type": "integer", - "description": "Select only sizes with this width.", - "format": "int32", - "minimum": "0", - "maximum": "32767", - "location": "query" - } - }, - "parameterOrder": [ - "profileId" - ], - "response": { - "$ref": "SizesListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - } - } - }, - "subaccounts": { - "methods": { - "get": { - "id": "dfareporting.subaccounts.get", - "path": "userprofiles/{profileId}/subaccounts/{id}", - "httpMethod": "GET", - "description": "Gets one subaccount by ID.", - "parameters": { - "id": { - "type": "string", - "description": "Subaccount ID.", - "required": true, - "format": "int64", - "location": "path" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "id" - ], - "response": { - "$ref": "Subaccount" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "insert": { - "id": "dfareporting.subaccounts.insert", - "path": "userprofiles/{profileId}/subaccounts", - "httpMethod": "POST", - "description": "Inserts a new subaccount.", - "parameters": { - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId" - ], - "request": { - "$ref": "Subaccount" - }, - "response": { - "$ref": "Subaccount" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "list": { - "id": "dfareporting.subaccounts.list", - "path": "userprofiles/{profileId}/subaccounts", - "httpMethod": "GET", - "description": "Gets a list of subaccounts, possibly filtered. This method supports paging.", - "parameters": { - "ids": { - "type": "string", - "description": "Select only subaccounts with these IDs.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "Maximum number of results to return.", - "default": "1000", - "format": "int32", - "minimum": "0", - "maximum": "1000", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Value of the nextPageToken from the previous result page.", - "location": "query" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - }, - "searchString": { - "type": "string", - "description": "Allows searching for objects by name or ID. Wildcards (*) are allowed. For example, \"subaccount*2015\" will return objects with names like \"subaccount June 2015\", \"subaccount April 2015\", or simply \"subaccount 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"subaccount\" will match objects with name \"my subaccount\", \"subaccount 2015\", or simply \"subaccount\".", - "location": "query" - }, - "sortField": { - "type": "string", - "description": "Field by which to sort the list.", - "default": "ID", - "enum": [ - "ID", - "NAME" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - }, - "sortOrder": { - "type": "string", - "description": "Order of sorted results.", - "default": "ASCENDING", - "enum": [ - "ASCENDING", - "DESCENDING" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - } - }, - "parameterOrder": [ - "profileId" - ], - "response": { - "$ref": "SubaccountsListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "patch": { - "id": "dfareporting.subaccounts.patch", - "path": "userprofiles/{profileId}/subaccounts", - "httpMethod": "PATCH", - "description": "Updates an existing subaccount. This method supports patch semantics.", - "parameters": { - "id": { - "type": "string", - "description": "Subaccount ID.", - "required": true, - "format": "int64", - "location": "query" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "id" - ], - "request": { - "$ref": "Subaccount" - }, - "response": { - "$ref": "Subaccount" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "update": { - "id": "dfareporting.subaccounts.update", - "path": "userprofiles/{profileId}/subaccounts", - "httpMethod": "PUT", - "description": "Updates an existing subaccount.", - "parameters": { - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId" - ], - "request": { - "$ref": "Subaccount" - }, - "response": { - "$ref": "Subaccount" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - } - } - }, - "targetableRemarketingLists": { - "methods": { - "get": { - "id": "dfareporting.targetableRemarketingLists.get", - "path": "userprofiles/{profileId}/targetableRemarketingLists/{id}", - "httpMethod": "GET", - "description": "Gets one remarketing list by ID.", - "parameters": { - "id": { - "type": "string", - "description": "Remarketing list ID.", - "required": true, - "format": "int64", - "location": "path" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "id" - ], - "response": { - "$ref": "TargetableRemarketingList" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "list": { - "id": "dfareporting.targetableRemarketingLists.list", - "path": "userprofiles/{profileId}/targetableRemarketingLists", - "httpMethod": "GET", - "description": "Retrieves a list of targetable remarketing lists, possibly filtered. This method supports paging.", - "parameters": { - "active": { - "type": "boolean", - "description": "Select only active or only inactive targetable remarketing lists.", - "location": "query" - }, - "advertiserId": { - "type": "string", - "description": "Select only targetable remarketing lists targetable by these advertisers.", - "required": true, - "format": "int64", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "Maximum number of results to return.", - "default": "1000", - "format": "int32", - "minimum": "0", - "maximum": "1000", - "location": "query" - }, - "name": { - "type": "string", - "description": "Allows searching for objects by name or ID. Wildcards (*) are allowed. For example, \"remarketing list*2015\" will return objects with names like \"remarketing list June 2015\", \"remarketing list April 2015\", or simply \"remarketing list 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"remarketing list\" will match objects with name \"my remarketing list\", \"remarketing list 2015\", or simply \"remarketing list\".", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Value of the nextPageToken from the previous result page.", - "location": "query" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - }, - "sortField": { - "type": "string", - "description": "Field by which to sort the list.", - "default": "ID", - "enum": [ - "ID", - "NAME" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - }, - "sortOrder": { - "type": "string", - "description": "Order of sorted results.", - "default": "ASCENDING", - "enum": [ - "ASCENDING", - "DESCENDING" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - } - }, - "parameterOrder": [ - "profileId", - "advertiserId" - ], - "response": { - "$ref": "TargetableRemarketingListsListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - } - } - }, - "targetingTemplates": { - "methods": { - "get": { - "id": "dfareporting.targetingTemplates.get", - "path": "userprofiles/{profileId}/targetingTemplates/{id}", - "httpMethod": "GET", - "description": "Gets one targeting template by ID.", - "parameters": { - "id": { - "type": "string", - "description": "Targeting template ID.", - "required": true, - "format": "int64", - "location": "path" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "id" - ], - "response": { - "$ref": "TargetingTemplate" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "insert": { - "id": "dfareporting.targetingTemplates.insert", - "path": "userprofiles/{profileId}/targetingTemplates", - "httpMethod": "POST", - "description": "Inserts a new targeting template.", - "parameters": { - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId" - ], - "request": { - "$ref": "TargetingTemplate" - }, - "response": { - "$ref": "TargetingTemplate" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "list": { - "id": "dfareporting.targetingTemplates.list", - "path": "userprofiles/{profileId}/targetingTemplates", - "httpMethod": "GET", - "description": "Retrieves a list of targeting templates, optionally filtered. This method supports paging.", - "parameters": { - "advertiserId": { - "type": "string", - "description": "Select only targeting templates with this advertiser ID.", - "format": "int64", - "location": "query" - }, - "ids": { - "type": "string", - "description": "Select only targeting templates with these IDs.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "Maximum number of results to return.", - "default": "1000", - "format": "int32", - "minimum": "0", - "maximum": "1000", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Value of the nextPageToken from the previous result page.", - "location": "query" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - }, - "searchString": { - "type": "string", - "description": "Allows searching for objects by name or ID. Wildcards (*) are allowed. For example, \"template*2015\" will return objects with names like \"template June 2015\", \"template April 2015\", or simply \"template 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"template\" will match objects with name \"my template\", \"template 2015\", or simply \"template\".", - "location": "query" - }, - "sortField": { - "type": "string", - "description": "Field by which to sort the list.", - "default": "ID", - "enum": [ - "ID", - "NAME" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - }, - "sortOrder": { - "type": "string", - "description": "Order of sorted results.", - "default": "ASCENDING", - "enum": [ - "ASCENDING", - "DESCENDING" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - } - }, - "parameterOrder": [ - "profileId" - ], - "response": { - "$ref": "TargetingTemplatesListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "patch": { - "id": "dfareporting.targetingTemplates.patch", - "path": "userprofiles/{profileId}/targetingTemplates", - "httpMethod": "PATCH", - "description": "Updates an existing targeting template. This method supports patch semantics.", - "parameters": { - "id": { - "type": "string", - "description": "Targeting template ID.", - "required": true, - "format": "int64", - "location": "query" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "id" - ], - "request": { - "$ref": "TargetingTemplate" - }, - "response": { - "$ref": "TargetingTemplate" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "update": { - "id": "dfareporting.targetingTemplates.update", - "path": "userprofiles/{profileId}/targetingTemplates", - "httpMethod": "PUT", - "description": "Updates an existing targeting template.", - "parameters": { - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId" - ], - "request": { - "$ref": "TargetingTemplate" - }, - "response": { - "$ref": "TargetingTemplate" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - } - } - }, - "userProfiles": { - "methods": { - "get": { - "id": "dfareporting.userProfiles.get", - "path": "userprofiles/{profileId}", - "httpMethod": "GET", - "description": "Gets one user profile by ID.", - "parameters": { - "profileId": { - "type": "string", - "description": "The user profile ID.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId" - ], - "response": { - "$ref": "UserProfile" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfareporting", - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "list": { - "id": "dfareporting.userProfiles.list", - "path": "userprofiles", - "httpMethod": "GET", - "description": "Retrieves list of user profiles for a user.", - "response": { - "$ref": "UserProfileList" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfareporting", - "https://www.googleapis.com/auth/dfatrafficking" - ] - } - } - }, - "userRolePermissionGroups": { - "methods": { - "get": { - "id": "dfareporting.userRolePermissionGroups.get", - "path": "userprofiles/{profileId}/userRolePermissionGroups/{id}", - "httpMethod": "GET", - "description": "Gets one user role permission group by ID.", - "parameters": { - "id": { - "type": "string", - "description": "User role permission group ID.", - "required": true, - "format": "int64", - "location": "path" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "id" - ], - "response": { - "$ref": "UserRolePermissionGroup" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "list": { - "id": "dfareporting.userRolePermissionGroups.list", - "path": "userprofiles/{profileId}/userRolePermissionGroups", - "httpMethod": "GET", - "description": "Gets a list of all supported user role permission groups.", - "parameters": { - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId" - ], - "response": { - "$ref": "UserRolePermissionGroupsListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - } - } - }, - "userRolePermissions": { - "methods": { - "get": { - "id": "dfareporting.userRolePermissions.get", - "path": "userprofiles/{profileId}/userRolePermissions/{id}", - "httpMethod": "GET", - "description": "Gets one user role permission by ID.", - "parameters": { - "id": { - "type": "string", - "description": "User role permission ID.", - "required": true, - "format": "int64", - "location": "path" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "id" - ], - "response": { - "$ref": "UserRolePermission" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "list": { - "id": "dfareporting.userRolePermissions.list", - "path": "userprofiles/{profileId}/userRolePermissions", - "httpMethod": "GET", - "description": "Gets a list of user role permissions, possibly filtered.", - "parameters": { - "ids": { - "type": "string", - "description": "Select only user role permissions with these IDs.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId" - ], - "response": { - "$ref": "UserRolePermissionsListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - } - } - }, - "userRoles": { - "methods": { - "delete": { - "id": "dfareporting.userRoles.delete", - "path": "userprofiles/{profileId}/userRoles/{id}", - "httpMethod": "DELETE", - "description": "Deletes an existing user role.", - "parameters": { - "id": { - "type": "string", - "description": "User role ID.", - "required": true, - "format": "int64", - "location": "path" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "id" - ], - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "get": { - "id": "dfareporting.userRoles.get", - "path": "userprofiles/{profileId}/userRoles/{id}", - "httpMethod": "GET", - "description": "Gets one user role by ID.", - "parameters": { - "id": { - "type": "string", - "description": "User role ID.", - "required": true, - "format": "int64", - "location": "path" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "id" - ], - "response": { - "$ref": "UserRole" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "insert": { - "id": "dfareporting.userRoles.insert", - "path": "userprofiles/{profileId}/userRoles", - "httpMethod": "POST", - "description": "Inserts a new user role.", - "parameters": { - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId" - ], - "request": { - "$ref": "UserRole" - }, - "response": { - "$ref": "UserRole" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "list": { - "id": "dfareporting.userRoles.list", - "path": "userprofiles/{profileId}/userRoles", - "httpMethod": "GET", - "description": "Retrieves a list of user roles, possibly filtered. This method supports paging.", - "parameters": { - "accountUserRoleOnly": { - "type": "boolean", - "description": "Select only account level user roles not associated with any specific subaccount.", - "location": "query" - }, - "ids": { - "type": "string", - "description": "Select only user roles with the specified IDs.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "Maximum number of results to return.", - "default": "1000", - "format": "int32", - "minimum": "0", - "maximum": "1000", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Value of the nextPageToken from the previous result page.", - "location": "query" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - }, - "searchString": { - "type": "string", - "description": "Allows searching for objects by name or ID. Wildcards (*) are allowed. For example, \"userrole*2015\" will return objects with names like \"userrole June 2015\", \"userrole April 2015\", or simply \"userrole 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"userrole\" will match objects with name \"my userrole\", \"userrole 2015\", or simply \"userrole\".", - "location": "query" - }, - "sortField": { - "type": "string", - "description": "Field by which to sort the list.", - "default": "ID", - "enum": [ - "ID", - "NAME" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - }, - "sortOrder": { - "type": "string", - "description": "Order of sorted results.", - "default": "ASCENDING", - "enum": [ - "ASCENDING", - "DESCENDING" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - }, - "subaccountId": { - "type": "string", - "description": "Select only user roles that belong to this subaccount.", - "format": "int64", - "location": "query" - } - }, - "parameterOrder": [ - "profileId" - ], - "response": { - "$ref": "UserRolesListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "patch": { - "id": "dfareporting.userRoles.patch", - "path": "userprofiles/{profileId}/userRoles", - "httpMethod": "PATCH", - "description": "Updates an existing user role. This method supports patch semantics.", - "parameters": { - "id": { - "type": "string", - "description": "User role ID.", - "required": true, - "format": "int64", - "location": "query" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "id" - ], - "request": { - "$ref": "UserRole" - }, - "response": { - "$ref": "UserRole" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "update": { - "id": "dfareporting.userRoles.update", - "path": "userprofiles/{profileId}/userRoles", - "httpMethod": "PUT", - "description": "Updates an existing user role.", - "parameters": { - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId" - ], - "request": { - "$ref": "UserRole" - }, - "response": { - "$ref": "UserRole" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - } - } - }, - "videoFormats": { - "methods": { - "get": { - "id": "dfareporting.videoFormats.get", - "path": "userprofiles/{profileId}/videoFormats/{id}", - "httpMethod": "GET", - "description": "Gets one video format by ID.", - "parameters": { - "id": { - "type": "integer", - "description": "Video format ID.", - "required": true, - "format": "int32", - "location": "path" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "id" - ], - "response": { - "$ref": "VideoFormat" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "list": { - "id": "dfareporting.videoFormats.list", - "path": "userprofiles/{profileId}/videoFormats", - "httpMethod": "GET", - "description": "Lists available video formats.", - "parameters": { - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId" - ], - "response": { - "$ref": "VideoFormatsListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - } - } - } - } -} + "servicePath": "dfareporting/v2.8/", + "title": "DCM/DFA Reporting And Trafficking API", + "version": "v2.8" +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/dfareporting/v2.8/dfareporting-gen.go b/vendor/google.golang.org/api/dfareporting/v2.8/dfareporting-gen.go index f2d8975b1..b19a27008 100644 --- a/vendor/google.golang.org/api/dfareporting/v2.8/dfareporting-gen.go +++ b/vendor/google.golang.org/api/dfareporting/v2.8/dfareporting-gen.go @@ -23411,11 +23411,12 @@ func (c *CreativeAssetsInsertCall) doRequest(alt string) (*http.Response, error) body = new(bytes.Buffer) reqHeaders.Set("Content-Type", "application/json") } - body, cleanup := c.mediaInfo_.UploadRequest(reqHeaders, body) + body, getBody, cleanup := c.mediaInfo_.UploadRequest(reqHeaders, body) defer cleanup() urls += "?" + c.urlParams_.Encode() req, _ := http.NewRequest("POST", urls, body) req.Header = reqHeaders + gensupport.SetGetBody(req, getBody) googleapi.Expand(req.URL, map[string]string{ "profileId": strconv.FormatInt(c.profileId, 10), "advertiserId": strconv.FormatInt(c.advertiserId, 10), diff --git a/vendor/google.golang.org/api/dfareporting/v3.0/dfareporting-api.json b/vendor/google.golang.org/api/dfareporting/v3.0/dfareporting-api.json index 48de6518b..b7b3648a8 100644 --- a/vendor/google.golang.org/api/dfareporting/v3.0/dfareporting-api.json +++ b/vendor/google.golang.org/api/dfareporting/v3.0/dfareporting-api.json @@ -1,19792 +1,19792 @@ { - "kind": "discovery#restDescription", - "etag": "\"YWOzh2SDasdU84ArJnpYek-OMdg/MD943f1mGqBAwUueANXWEMkM_XU\"", - "discoveryVersion": "v1", - "id": "dfareporting:v3.0", - "name": "dfareporting", - "version": "v3.0", - "revision": "20171109", - "title": "DCM/DFA Reporting And Trafficking API", - "description": "Manages your DoubleClick Campaign Manager ad campaigns and reports.", - "ownerDomain": "google.com", - "ownerName": "Google", - "icons": { - "x16": "https://www.google.com/images/icons/product/doubleclick-16.gif", - "x32": "https://www.google.com/images/icons/product/doubleclick-32.gif" - }, - "documentationLink": "https://developers.google.com/doubleclick-advertisers/", - "protocol": "rest", - "baseUrl": "https://www.googleapis.com/dfareporting/v3.0/", - "basePath": "/dfareporting/v3.0/", - "rootUrl": "https://www.googleapis.com/", - "servicePath": "dfareporting/v3.0/", - "batchPath": "batch/dfareporting/v3.0", - "parameters": { - "alt": { - "type": "string", - "description": "Data format for the response.", - "default": "json", - "enum": [ - "json" - ], - "enumDescriptions": [ - "Responses with Content-Type of application/json" - ], - "location": "query" - }, - "fields": { - "type": "string", - "description": "Selector specifying which fields to include in a partial response.", - "location": "query" - }, - "key": { - "type": "string", - "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" - }, - "oauth_token": { - "type": "string", - "description": "OAuth 2.0 token for the current user.", - "location": "query" - }, - "prettyPrint": { - "type": "boolean", - "description": "Returns response with indentations and line breaks.", - "default": "true", - "location": "query" - }, - "quotaUser": { - "type": "string", - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", - "location": "query" - }, - "userIp": { - "type": "string", - "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", - "location": "query" - } - }, - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/ddmconversions": { - "description": "Manage DoubleClick Digital Marketing conversions" - }, - "https://www.googleapis.com/auth/dfareporting": { - "description": "View and manage DoubleClick for Advertisers reports" - }, - "https://www.googleapis.com/auth/dfatrafficking": { - "description": "View and manage your DoubleClick Campaign Manager's (DCM) display ad campaigns" + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/ddmconversions": { + "description": "Manage DoubleClick Digital Marketing conversions" + }, + "https://www.googleapis.com/auth/dfareporting": { + "description": "View and manage DoubleClick for Advertisers reports" + }, + "https://www.googleapis.com/auth/dfatrafficking": { + "description": "View and manage your DoubleClick Campaign Manager's (DCM) display ad campaigns" + } + } } - } - } - }, - "schemas": { - "Account": { - "id": "Account", - "type": "object", - "description": "Contains properties of a DCM account.", - "properties": { - "accountPermissionIds": { - "type": "array", - "description": "Account permissions assigned to this account.", - "items": { - "type": "string", - "format": "int64" - } - }, - "accountProfile": { - "type": "string", - "description": "Profile for this account. This is a read-only field that can be left blank.", - "enum": [ - "ACCOUNT_PROFILE_BASIC", - "ACCOUNT_PROFILE_STANDARD" - ], - "enumDescriptions": [ - "", - "" - ] - }, - "active": { - "type": "boolean", - "description": "Whether this account is active." - }, - "activeAdsLimitTier": { - "type": "string", - "description": "Maximum number of active ads allowed for this account.", - "enum": [ - "ACTIVE_ADS_TIER_100K", - "ACTIVE_ADS_TIER_1M", - "ACTIVE_ADS_TIER_200K", - "ACTIVE_ADS_TIER_300K", - "ACTIVE_ADS_TIER_40K", - "ACTIVE_ADS_TIER_500K", - "ACTIVE_ADS_TIER_750K", - "ACTIVE_ADS_TIER_75K" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "activeViewOptOut": { - "type": "boolean", - "description": "Whether to serve creatives with Active View tags. If disabled, viewability data will not be available for any impressions." - }, - "availablePermissionIds": { - "type": "array", - "description": "User role permissions available to the user roles of this account.", - "items": { - "type": "string", - "format": "int64" - } - }, - "countryId": { - "type": "string", - "description": "ID of the country associated with this account.", - "format": "int64" - }, - "currencyId": { - "type": "string", - "description": "ID of currency associated with this account. This is a required field.\nAcceptable values are: \n- \"1\" for USD \n- \"2\" for GBP \n- \"3\" for ESP \n- \"4\" for SEK \n- \"5\" for CAD \n- \"6\" for JPY \n- \"7\" for DEM \n- \"8\" for AUD \n- \"9\" for FRF \n- \"10\" for ITL \n- \"11\" for DKK \n- \"12\" for NOK \n- \"13\" for FIM \n- \"14\" for ZAR \n- \"15\" for IEP \n- \"16\" for NLG \n- \"17\" for EUR \n- \"18\" for KRW \n- \"19\" for TWD \n- \"20\" for SGD \n- \"21\" for CNY \n- \"22\" for HKD \n- \"23\" for NZD \n- \"24\" for MYR \n- \"25\" for BRL \n- \"26\" for PTE \n- \"27\" for MXP \n- \"28\" for CLP \n- \"29\" for TRY \n- \"30\" for ARS \n- \"31\" for PEN \n- \"32\" for ILS \n- \"33\" for CHF \n- \"34\" for VEF \n- \"35\" for COP \n- \"36\" for GTQ \n- \"37\" for PLN \n- \"39\" for INR \n- \"40\" for THB \n- \"41\" for IDR \n- \"42\" for CZK \n- \"43\" for RON \n- \"44\" for HUF \n- \"45\" for RUB \n- \"46\" for AED \n- \"47\" for BGN \n- \"48\" for HRK \n- \"49\" for MXN \n- \"50\" for NGN", - "format": "int64" - }, - "defaultCreativeSizeId": { - "type": "string", - "description": "Default placement dimensions for this account.", - "format": "int64" - }, - "description": { - "type": "string", - "description": "Description of this account." - }, - "id": { - "type": "string", - "description": "ID of this account. This is a read-only, auto-generated field.", - "format": "int64" - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#account\".", - "default": "dfareporting#account" - }, - "locale": { - "type": "string", - "description": "Locale of this account.\nAcceptable values are: \n- \"cs\" (Czech) \n- \"de\" (German) \n- \"en\" (English) \n- \"en-GB\" (English United Kingdom) \n- \"es\" (Spanish) \n- \"fr\" (French) \n- \"it\" (Italian) \n- \"ja\" (Japanese) \n- \"ko\" (Korean) \n- \"pl\" (Polish) \n- \"pt-BR\" (Portuguese Brazil) \n- \"ru\" (Russian) \n- \"sv\" (Swedish) \n- \"tr\" (Turkish) \n- \"zh-CN\" (Chinese Simplified) \n- \"zh-TW\" (Chinese Traditional)" - }, - "maximumImageSize": { - "type": "string", - "description": "Maximum image size allowed for this account, in kilobytes. Value must be greater than or equal to 1.", - "format": "int64" - }, - "name": { - "type": "string", - "description": "Name of this account. This is a required field, and must be less than 128 characters long and be globally unique." - }, - "nielsenOcrEnabled": { - "type": "boolean", - "description": "Whether campaigns created in this account will be enabled for Nielsen OCR reach ratings by default." - }, - "reportsConfiguration": { - "$ref": "ReportsConfiguration", - "description": "Reporting configuration of this account." - }, - "shareReportsWithTwitter": { - "type": "boolean", - "description": "Share Path to Conversion reports with Twitter." - }, - "teaserSizeLimit": { - "type": "string", - "description": "File size limit in kilobytes of Rich Media teaser creatives. Acceptable values are 1 to 10240, inclusive.", - "format": "int64" - } - } }, - "AccountActiveAdSummary": { - "id": "AccountActiveAdSummary", - "type": "object", - "description": "Gets a summary of active ads in an account.", - "properties": { - "accountId": { - "type": "string", - "description": "ID of the account.", - "format": "int64" - }, - "activeAds": { - "type": "string", - "description": "Ads that have been activated for the account", - "format": "int64" - }, - "activeAdsLimitTier": { - "type": "string", - "description": "Maximum number of active ads allowed for the account.", - "enum": [ - "ACTIVE_ADS_TIER_100K", - "ACTIVE_ADS_TIER_1M", - "ACTIVE_ADS_TIER_200K", - "ACTIVE_ADS_TIER_300K", - "ACTIVE_ADS_TIER_40K", - "ACTIVE_ADS_TIER_500K", - "ACTIVE_ADS_TIER_750K", - "ACTIVE_ADS_TIER_75K" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "availableAds": { - "type": "string", - "description": "Ads that can be activated for the account.", - "format": "int64" - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#accountActiveAdSummary\".", - "default": "dfareporting#accountActiveAdSummary" - } - } + "basePath": "/dfareporting/v3.0/", + "baseUrl": "https://www.googleapis.com/dfareporting/v3.0/", + "batchPath": "batch/dfareporting/v3.0", + "description": "Manages your DoubleClick Campaign Manager ad campaigns and reports.", + "discoveryVersion": "v1", + "documentationLink": "https://developers.google.com/doubleclick-advertisers/", + "etag": "\"-iA1DTNe4s-I6JZXPt1t1Ypy8IU/MD943f1mGqBAwUueANXWEMkM_XU\"", + "icons": { + "x16": "https://www.google.com/images/icons/product/doubleclick-16.gif", + "x32": "https://www.google.com/images/icons/product/doubleclick-32.gif" }, - "AccountPermission": { - "id": "AccountPermission", - "type": "object", - "description": "AccountPermissions contains information about a particular account permission. Some features of DCM require an account permission to be present in the account.", - "properties": { - "accountProfiles": { - "type": "array", - "description": "Account profiles associated with this account permission.\n\nPossible values are:\n- \"ACCOUNT_PROFILE_BASIC\"\n- \"ACCOUNT_PROFILE_STANDARD\"", - "items": { - "type": "string", + "id": "dfareporting:v3.0", + "kind": "discovery#restDescription", + "name": "dfareporting", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "alt": { + "default": "json", + "description": "Data format for the response.", "enum": [ - "ACCOUNT_PROFILE_BASIC", - "ACCOUNT_PROFILE_STANDARD" + "json" ], "enumDescriptions": [ - "", - "" - ] - } + "Responses with Content-Type of application/json" + ], + "location": "query", + "type": "string" }, - "id": { - "type": "string", - "description": "ID of this account permission.", - "format": "int64" + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "location": "query", + "type": "string" }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#accountPermission\".", - "default": "dfareporting#accountPermission" + "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" }, - "level": { - "type": "string", - "description": "Administrative level required to enable this account permission.", - "enum": [ - "ADMINISTRATOR", - "USER" - ], - "enumDescriptions": [ - "", - "" - ] + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" }, - "name": { - "type": "string", - "description": "Name of this account permission." + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" }, - "permissionGroupId": { - "type": "string", - "description": "Permission group of this account permission.", - "format": "int64" + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", + "location": "query", + "type": "string" + }, + "userIp": { + "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", + "location": "query", + "type": "string" } - } }, - "AccountPermissionGroup": { - "id": "AccountPermissionGroup", - "type": "object", - "description": "AccountPermissionGroups contains a mapping of permission group IDs to names. A permission group is a grouping of account permissions.", - "properties": { - "id": { - "type": "string", - "description": "ID of this account permission group.", - "format": "int64" + "protocol": "rest", + "resources": { + "accountActiveAdSummaries": { + "methods": { + "get": { + "description": "Gets the account's active ad summary by account ID.", + "httpMethod": "GET", + "id": "dfareporting.accountActiveAdSummaries.get", + "parameterOrder": [ + "profileId", + "summaryAccountId" + ], + "parameters": { + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "summaryAccountId": { + "description": "Account ID.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/accountActiveAdSummaries/{summaryAccountId}", + "response": { + "$ref": "AccountActiveAdSummary" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#accountPermissionGroup\".", - "default": "dfareporting#accountPermissionGroup" - }, - "name": { - "type": "string", - "description": "Name of this account permission group." - } - } - }, - "AccountPermissionGroupsListResponse": { - "id": "AccountPermissionGroupsListResponse", - "type": "object", - "description": "Account Permission Group List Response", - "properties": { "accountPermissionGroups": { - "type": "array", - "description": "Account permission group collection.", - "items": { - "$ref": "AccountPermissionGroup" - } + "methods": { + "get": { + "description": "Gets one account permission group by ID.", + "httpMethod": "GET", + "id": "dfareporting.accountPermissionGroups.get", + "parameterOrder": [ + "profileId", + "id" + ], + "parameters": { + "id": { + "description": "Account permission group ID.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/accountPermissionGroups/{id}", + "response": { + "$ref": "AccountPermissionGroup" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "description": "Retrieves the list of account permission groups.", + "httpMethod": "GET", + "id": "dfareporting.accountPermissionGroups.list", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/accountPermissionGroups", + "response": { + "$ref": "AccountPermissionGroupsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#accountPermissionGroupsListResponse\".", - "default": "dfareporting#accountPermissionGroupsListResponse" - } - } - }, - "AccountPermissionsListResponse": { - "id": "AccountPermissionsListResponse", - "type": "object", - "description": "Account Permission List Response", - "properties": { "accountPermissions": { - "type": "array", - "description": "Account permission collection.", - "items": { - "$ref": "AccountPermission" - } + "methods": { + "get": { + "description": "Gets one account permission by ID.", + "httpMethod": "GET", + "id": "dfareporting.accountPermissions.get", + "parameterOrder": [ + "profileId", + "id" + ], + "parameters": { + "id": { + "description": "Account permission ID.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/accountPermissions/{id}", + "response": { + "$ref": "AccountPermission" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "description": "Retrieves the list of account permissions.", + "httpMethod": "GET", + "id": "dfareporting.accountPermissions.list", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/accountPermissions", + "response": { + "$ref": "AccountPermissionsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#accountPermissionsListResponse\".", - "default": "dfareporting#accountPermissionsListResponse" - } - } - }, - "AccountUserProfile": { - "id": "AccountUserProfile", - "type": "object", - "description": "AccountUserProfiles contains properties of a DCM user profile. This resource is specifically for managing user profiles, whereas UserProfiles is for accessing the API.", - "properties": { - "accountId": { - "type": "string", - "description": "Account ID of the user profile. This is a read-only field that can be left blank.", - "format": "int64" - }, - "active": { - "type": "boolean", - "description": "Whether this user profile is active. This defaults to false, and must be set true on insert for the user profile to be usable." - }, - "advertiserFilter": { - "$ref": "ObjectFilter", - "description": "Filter that describes which advertisers are visible to the user profile." - }, - "campaignFilter": { - "$ref": "ObjectFilter", - "description": "Filter that describes which campaigns are visible to the user profile." - }, - "comments": { - "type": "string", - "description": "Comments for this user profile." - }, - "email": { - "type": "string", - "description": "Email of the user profile. The email addresss must be linked to a Google Account. This field is required on insertion and is read-only after insertion." - }, - "id": { - "type": "string", - "description": "ID of the user profile. This is a read-only, auto-generated field.", - "format": "int64" - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#accountUserProfile\".", - "default": "dfareporting#accountUserProfile" - }, - "locale": { - "type": "string", - "description": "Locale of the user profile. This is a required field.\nAcceptable values are: \n- \"cs\" (Czech) \n- \"de\" (German) \n- \"en\" (English) \n- \"en-GB\" (English United Kingdom) \n- \"es\" (Spanish) \n- \"fr\" (French) \n- \"it\" (Italian) \n- \"ja\" (Japanese) \n- \"ko\" (Korean) \n- \"pl\" (Polish) \n- \"pt-BR\" (Portuguese Brazil)\n- \"ru\" (Russian) \n- \"sv\" (Swedish) \n- \"tr\" (Turkish) \n- \"zh-CN\" (Chinese Simplified) \n- \"zh-TW\" (Chinese Traditional)" - }, - "name": { - "type": "string", - "description": "Name of the user profile. This is a required field. Must be less than 64 characters long, must be globally unique, and cannot contain whitespace or any of the following characters: \"&;\"#%,\"." - }, - "siteFilter": { - "$ref": "ObjectFilter", - "description": "Filter that describes which sites are visible to the user profile." - }, - "subaccountId": { - "type": "string", - "description": "Subaccount ID of the user profile. This is a read-only field that can be left blank.", - "format": "int64" - }, - "traffickerType": { - "type": "string", - "description": "Trafficker type of this user profile.", - "enum": [ - "EXTERNAL_TRAFFICKER", - "INTERNAL_NON_TRAFFICKER", - "INTERNAL_TRAFFICKER" - ], - "enumDescriptions": [ - "", - "", - "" - ] - }, - "userAccessType": { - "type": "string", - "description": "User type of the user profile. This is a read-only field that can be left blank.", - "enum": [ - "INTERNAL_ADMINISTRATOR", - "NORMAL_USER", - "READ_ONLY_SUPER_USER", - "SUPER_USER" - ], - "enumDescriptions": [ - "", - "", - "", - "" - ] - }, - "userRoleFilter": { - "$ref": "ObjectFilter", - "description": "Filter that describes which user roles are visible to the user profile." - }, - "userRoleId": { - "type": "string", - "description": "User role ID of the user profile. This is a required field.", - "format": "int64" - } - } - }, - "AccountUserProfilesListResponse": { - "id": "AccountUserProfilesListResponse", - "type": "object", - "description": "Account User Profile List Response", - "properties": { "accountUserProfiles": { - "type": "array", - "description": "Account user profile collection.", - "items": { - "$ref": "AccountUserProfile" - } + "methods": { + "get": { + "description": "Gets one account user profile by ID.", + "httpMethod": "GET", + "id": "dfareporting.accountUserProfiles.get", + "parameterOrder": [ + "profileId", + "id" + ], + "parameters": { + "id": { + "description": "User profile ID.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/accountUserProfiles/{id}", + "response": { + "$ref": "AccountUserProfile" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "insert": { + "description": "Inserts a new account user profile.", + "httpMethod": "POST", + "id": "dfareporting.accountUserProfiles.insert", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/accountUserProfiles", + "request": { + "$ref": "AccountUserProfile" + }, + "response": { + "$ref": "AccountUserProfile" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "description": "Retrieves a list of account user profiles, possibly filtered. This method supports paging.", + "httpMethod": "GET", + "id": "dfareporting.accountUserProfiles.list", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "active": { + "description": "Select only active user profiles.", + "location": "query", + "type": "boolean" + }, + "ids": { + "description": "Select only user profiles with these IDs.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "maxResults": { + "default": "1000", + "description": "Maximum number of results to return.", + "format": "int32", + "location": "query", + "maximum": "1000", + "minimum": "0", + "type": "integer" + }, + "pageToken": { + "description": "Value of the nextPageToken from the previous result page.", + "location": "query", + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "searchString": { + "description": "Allows searching for objects by name, ID or email. Wildcards (*) are allowed. For example, \"user profile*2015\" will return objects with names like \"user profile June 2015\", \"user profile April 2015\", or simply \"user profile 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"user profile\" will match objects with name \"my user profile\", \"user profile 2015\", or simply \"user profile\".", + "location": "query", + "type": "string" + }, + "sortField": { + "default": "ID", + "description": "Field by which to sort the list.", + "enum": [ + "ID", + "NAME" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + }, + "sortOrder": { + "default": "ASCENDING", + "description": "Order of sorted results.", + "enum": [ + "ASCENDING", + "DESCENDING" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + }, + "subaccountId": { + "description": "Select only user profiles with the specified subaccount ID.", + "format": "int64", + "location": "query", + "type": "string" + }, + "userRoleId": { + "description": "Select only user profiles with the specified user role ID.", + "format": "int64", + "location": "query", + "type": "string" + } + }, + "path": "userprofiles/{profileId}/accountUserProfiles", + "response": { + "$ref": "AccountUserProfilesListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "patch": { + "description": "Updates an existing account user profile. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "dfareporting.accountUserProfiles.patch", + "parameterOrder": [ + "profileId", + "id" + ], + "parameters": { + "id": { + "description": "User profile ID.", + "format": "int64", + "location": "query", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/accountUserProfiles", + "request": { + "$ref": "AccountUserProfile" + }, + "response": { + "$ref": "AccountUserProfile" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "update": { + "description": "Updates an existing account user profile.", + "httpMethod": "PUT", + "id": "dfareporting.accountUserProfiles.update", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/accountUserProfiles", + "request": { + "$ref": "AccountUserProfile" + }, + "response": { + "$ref": "AccountUserProfile" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#accountUserProfilesListResponse\".", - "default": "dfareporting#accountUserProfilesListResponse" - }, - "nextPageToken": { - "type": "string", - "description": "Pagination token to be used for the next list operation." - } - } - }, - "AccountsListResponse": { - "id": "AccountsListResponse", - "type": "object", - "description": "Account List Response", - "properties": { "accounts": { - "type": "array", - "description": "Account collection.", - "items": { - "$ref": "Account" - } + "methods": { + "get": { + "description": "Gets one account by ID.", + "httpMethod": "GET", + "id": "dfareporting.accounts.get", + "parameterOrder": [ + "profileId", + "id" + ], + "parameters": { + "id": { + "description": "Account ID.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/accounts/{id}", + "response": { + "$ref": "Account" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "description": "Retrieves the list of accounts, possibly filtered. This method supports paging.", + "httpMethod": "GET", + "id": "dfareporting.accounts.list", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "active": { + "description": "Select only active accounts. Don't set this field to select both active and non-active accounts.", + "location": "query", + "type": "boolean" + }, + "ids": { + "description": "Select only accounts with these IDs.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "maxResults": { + "default": "1000", + "description": "Maximum number of results to return.", + "format": "int32", + "location": "query", + "maximum": "1000", + "minimum": "0", + "type": "integer" + }, + "pageToken": { + "description": "Value of the nextPageToken from the previous result page.", + "location": "query", + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "searchString": { + "description": "Allows searching for objects by name or ID. Wildcards (*) are allowed. For example, \"account*2015\" will return objects with names like \"account June 2015\", \"account April 2015\", or simply \"account 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"account\" will match objects with name \"my account\", \"account 2015\", or simply \"account\".", + "location": "query", + "type": "string" + }, + "sortField": { + "default": "ID", + "description": "Field by which to sort the list.", + "enum": [ + "ID", + "NAME" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + }, + "sortOrder": { + "default": "ASCENDING", + "description": "Order of sorted results.", + "enum": [ + "ASCENDING", + "DESCENDING" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + } + }, + "path": "userprofiles/{profileId}/accounts", + "response": { + "$ref": "AccountsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "patch": { + "description": "Updates an existing account. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "dfareporting.accounts.patch", + "parameterOrder": [ + "profileId", + "id" + ], + "parameters": { + "id": { + "description": "Account ID.", + "format": "int64", + "location": "query", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/accounts", + "request": { + "$ref": "Account" + }, + "response": { + "$ref": "Account" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "update": { + "description": "Updates an existing account.", + "httpMethod": "PUT", + "id": "dfareporting.accounts.update", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/accounts", + "request": { + "$ref": "Account" + }, + "response": { + "$ref": "Account" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#accountsListResponse\".", - "default": "dfareporting#accountsListResponse" - }, - "nextPageToken": { - "type": "string", - "description": "Pagination token to be used for the next list operation." - } - } - }, - "Activities": { - "id": "Activities", - "type": "object", - "description": "Represents an activity group.", - "properties": { - "filters": { - "type": "array", - "description": "List of activity filters. The dimension values need to be all either of type \"dfa:activity\" or \"dfa:activityGroup\".", - "items": { - "$ref": "DimensionValue" - } - }, - "kind": { - "type": "string", - "description": "The kind of resource this is, in this case dfareporting#activities.", - "default": "dfareporting#activities" - }, - "metricNames": { - "type": "array", - "description": "List of names of floodlight activity metrics.", - "items": { - "type": "string" - } - } - } - }, - "Ad": { - "id": "Ad", - "type": "object", - "description": "Contains properties of a DCM ad.", - "properties": { - "accountId": { - "type": "string", - "description": "Account ID of this ad. This is a read-only field that can be left blank.", - "format": "int64" - }, - "active": { - "type": "boolean", - "description": "Whether this ad is active. When true, archived must be false." - }, - "advertiserId": { - "type": "string", - "description": "Advertiser ID of this ad. This is a required field on insertion.", - "format": "int64" - }, - "advertiserIdDimensionValue": { - "$ref": "DimensionValue", - "description": "Dimension value for the ID of the advertiser. This is a read-only, auto-generated field." - }, - "archived": { - "type": "boolean", - "description": "Whether this ad is archived. When true, active must be false." - }, - "audienceSegmentId": { - "type": "string", - "description": "Audience segment ID that is being targeted for this ad. Applicable when type is AD_SERVING_STANDARD_AD.", - "format": "int64" - }, - "campaignId": { - "type": "string", - "description": "Campaign ID of this ad. This is a required field on insertion.", - "format": "int64" - }, - "campaignIdDimensionValue": { - "$ref": "DimensionValue", - "description": "Dimension value for the ID of the campaign. This is a read-only, auto-generated field." - }, - "clickThroughUrl": { - "$ref": "ClickThroughUrl", - "description": "Click-through URL for this ad. This is a required field on insertion. Applicable when type is AD_SERVING_CLICK_TRACKER." - }, - "clickThroughUrlSuffixProperties": { - "$ref": "ClickThroughUrlSuffixProperties", - "description": "Click-through URL suffix properties for this ad. Applies to the URL in the ad or (if overriding ad properties) the URL in the creative." - }, - "comments": { - "type": "string", - "description": "Comments for this ad." - }, - "compatibility": { - "type": "string", - "description": "Compatibility of this ad. Applicable when type is AD_SERVING_DEFAULT_AD. DISPLAY and DISPLAY_INTERSTITIAL refer to either rendering on desktop or on mobile devices or in mobile apps for regular or interstitial ads, respectively. APP and APP_INTERSTITIAL are only used for existing default ads. New mobile placements must be assigned DISPLAY or DISPLAY_INTERSTITIAL and default ads created for those placements will be limited to those compatibility types. IN_STREAM_VIDEO refers to rendering in-stream video ads developed with the VAST standard.", - "enum": [ - "APP", - "APP_INTERSTITIAL", - "DISPLAY", - "DISPLAY_INTERSTITIAL", - "IN_STREAM_VIDEO" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "" - ] - }, - "createInfo": { - "$ref": "LastModifiedInfo", - "description": "Information about the creation of this ad. This is a read-only field." - }, - "creativeGroupAssignments": { - "type": "array", - "description": "Creative group assignments for this ad. Applicable when type is AD_SERVING_CLICK_TRACKER. Only one assignment per creative group number is allowed for a maximum of two assignments.", - "items": { - "$ref": "CreativeGroupAssignment" - } - }, - "creativeRotation": { - "$ref": "CreativeRotation", - "description": "Creative rotation for this ad. Applicable when type is AD_SERVING_DEFAULT_AD, AD_SERVING_STANDARD_AD, or AD_SERVING_TRACKING. When type is AD_SERVING_DEFAULT_AD, this field should have exactly one creativeAssignment." - }, - "dayPartTargeting": { - "$ref": "DayPartTargeting", - "description": "Time and day targeting information for this ad. This field must be left blank if the ad is using a targeting template. Applicable when type is AD_SERVING_STANDARD_AD." - }, - "defaultClickThroughEventTagProperties": { - "$ref": "DefaultClickThroughEventTagProperties", - "description": "Default click-through event tag properties for this ad." - }, - "deliverySchedule": { - "$ref": "DeliverySchedule", - "description": "Delivery schedule information for this ad. Applicable when type is AD_SERVING_STANDARD_AD or AD_SERVING_TRACKING. This field along with subfields priority and impressionRatio are required on insertion when type is AD_SERVING_STANDARD_AD." - }, - "dynamicClickTracker": { - "type": "boolean", - "description": "Whether this ad is a dynamic click tracker. Applicable when type is AD_SERVING_CLICK_TRACKER. This is a required field on insert, and is read-only after insert." - }, - "endTime": { - "type": "string", - "description": "Date and time that this ad should stop serving. Must be later than the start time. This is a required field on insertion.", - "format": "date-time" - }, - "eventTagOverrides": { - "type": "array", - "description": "Event tag overrides for this ad.", - "items": { - "$ref": "EventTagOverride" - } - }, - "geoTargeting": { - "$ref": "GeoTargeting", - "description": "Geographical targeting information for this ad. This field must be left blank if the ad is using a targeting template. Applicable when type is AD_SERVING_STANDARD_AD." - }, - "id": { - "type": "string", - "description": "ID of this ad. This is a read-only, auto-generated field.", - "format": "int64" - }, - "idDimensionValue": { - "$ref": "DimensionValue", - "description": "Dimension value for the ID of this ad. This is a read-only, auto-generated field." - }, - "keyValueTargetingExpression": { - "$ref": "KeyValueTargetingExpression", - "description": "Key-value targeting information for this ad. This field must be left blank if the ad is using a targeting template. Applicable when type is AD_SERVING_STANDARD_AD." - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#ad\".", - "default": "dfareporting#ad" - }, - "languageTargeting": { - "$ref": "LanguageTargeting", - "description": "Language targeting information for this ad. This field must be left blank if the ad is using a targeting template. Applicable when type is AD_SERVING_STANDARD_AD." - }, - "lastModifiedInfo": { - "$ref": "LastModifiedInfo", - "description": "Information about the most recent modification of this ad. This is a read-only field." - }, - "name": { - "type": "string", - "description": "Name of this ad. This is a required field and must be less than 256 characters long." - }, - "placementAssignments": { - "type": "array", - "description": "Placement assignments for this ad.", - "items": { - "$ref": "PlacementAssignment" - } - }, - "remarketingListExpression": { - "$ref": "ListTargetingExpression", - "description": "Remarketing list targeting expression for this ad. This field must be left blank if the ad is using a targeting template. Applicable when type is AD_SERVING_STANDARD_AD." - }, - "size": { - "$ref": "Size", - "description": "Size of this ad. Applicable when type is AD_SERVING_DEFAULT_AD." - }, - "sslCompliant": { - "type": "boolean", - "description": "Whether this ad is ssl compliant. This is a read-only field that is auto-generated when the ad is inserted or updated." - }, - "sslRequired": { - "type": "boolean", - "description": "Whether this ad requires ssl. This is a read-only field that is auto-generated when the ad is inserted or updated." - }, - "startTime": { - "type": "string", - "description": "Date and time that this ad should start serving. If creating an ad, this field must be a time in the future. This is a required field on insertion.", - "format": "date-time" - }, - "subaccountId": { - "type": "string", - "description": "Subaccount ID of this ad. This is a read-only field that can be left blank.", - "format": "int64" - }, - "targetingTemplateId": { - "type": "string", - "description": "Targeting template ID, used to apply preconfigured targeting information to this ad. This cannot be set while any of dayPartTargeting, geoTargeting, keyValueTargetingExpression, languageTargeting, remarketingListExpression, or technologyTargeting are set. Applicable when type is AD_SERVING_STANDARD_AD.", - "format": "int64" - }, - "technologyTargeting": { - "$ref": "TechnologyTargeting", - "description": "Technology platform targeting information for this ad. This field must be left blank if the ad is using a targeting template. Applicable when type is AD_SERVING_STANDARD_AD." - }, - "type": { - "type": "string", - "description": "Type of ad. This is a required field on insertion. Note that default ads (AD_SERVING_DEFAULT_AD) cannot be created directly (see Creative resource).", - "enum": [ - "AD_SERVING_CLICK_TRACKER", - "AD_SERVING_DEFAULT_AD", - "AD_SERVING_STANDARD_AD", - "AD_SERVING_TRACKING" - ], - "enumDescriptions": [ - "", - "", - "", - "" - ] - } - } - }, - "AdBlockingConfiguration": { - "id": "AdBlockingConfiguration", - "type": "object", - "description": "Campaign ad blocking settings.", - "properties": { - "clickThroughUrl": { - "type": "string", - "description": "Click-through URL used by brand-neutral ads. This is a required field when overrideClickThroughUrl is set to true." - }, - "creativeBundleId": { - "type": "string", - "description": "ID of a creative bundle to use for this campaign. If set, brand-neutral ads will select creatives from this bundle. Otherwise, a default transparent pixel will be used.", - "format": "int64" - }, - "enabled": { - "type": "boolean", - "description": "Whether this campaign has enabled ad blocking. When true, ad blocking is enabled for placements in the campaign, but this may be overridden by site and placement settings. When false, ad blocking is disabled for all placements under the campaign, regardless of site and placement settings." - }, - "overrideClickThroughUrl": { - "type": "boolean", - "description": "Whether the brand-neutral ad's click-through URL comes from the campaign's creative bundle or the override URL. Must be set to true if ad blocking is enabled and no creative bundle is configured." - } - } - }, - "AdSlot": { - "id": "AdSlot", - "type": "object", - "description": "Ad Slot", - "properties": { - "comment": { - "type": "string", - "description": "Comment for this ad slot." - }, - "compatibility": { - "type": "string", - "description": "Ad slot compatibility. DISPLAY and DISPLAY_INTERSTITIAL refer to rendering either on desktop, mobile devices or in mobile apps for regular or interstitial ads respectively. APP and APP_INTERSTITIAL are for rendering in mobile apps. IN_STREAM_VIDEO refers to rendering in in-stream video ads developed with the VAST standard.", - "enum": [ - "APP", - "APP_INTERSTITIAL", - "DISPLAY", - "DISPLAY_INTERSTITIAL", - "IN_STREAM_VIDEO" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "" - ] - }, - "height": { - "type": "string", - "description": "Height of this ad slot.", - "format": "int64" - }, - "linkedPlacementId": { - "type": "string", - "description": "ID of the placement from an external platform that is linked to this ad slot.", - "format": "int64" - }, - "name": { - "type": "string", - "description": "Name of this ad slot." - }, - "paymentSourceType": { - "type": "string", - "description": "Payment source type of this ad slot.", - "enum": [ - "PLANNING_PAYMENT_SOURCE_TYPE_AGENCY_PAID", - "PLANNING_PAYMENT_SOURCE_TYPE_PUBLISHER_PAID" - ], - "enumDescriptions": [ - "", - "" - ] - }, - "primary": { - "type": "boolean", - "description": "Primary ad slot of a roadblock inventory item." - }, - "width": { - "type": "string", - "description": "Width of this ad slot.", - "format": "int64" - } - } - }, - "AdsListResponse": { - "id": "AdsListResponse", - "type": "object", - "description": "Ad List Response", - "properties": { "ads": { - "type": "array", - "description": "Ad collection.", - "items": { - "$ref": "Ad" - } + "methods": { + "get": { + "description": "Gets one ad by ID.", + "httpMethod": "GET", + "id": "dfareporting.ads.get", + "parameterOrder": [ + "profileId", + "id" + ], + "parameters": { + "id": { + "description": "Ad ID.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/ads/{id}", + "response": { + "$ref": "Ad" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "insert": { + "description": "Inserts a new ad.", + "httpMethod": "POST", + "id": "dfareporting.ads.insert", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/ads", + "request": { + "$ref": "Ad" + }, + "response": { + "$ref": "Ad" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "description": "Retrieves a list of ads, possibly filtered. This method supports paging.", + "httpMethod": "GET", + "id": "dfareporting.ads.list", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "active": { + "description": "Select only active ads.", + "location": "query", + "type": "boolean" + }, + "advertiserId": { + "description": "Select only ads with this advertiser ID.", + "format": "int64", + "location": "query", + "type": "string" + }, + "archived": { + "description": "Select only archived ads.", + "location": "query", + "type": "boolean" + }, + "audienceSegmentIds": { + "description": "Select only ads with these audience segment IDs.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "campaignIds": { + "description": "Select only ads with these campaign IDs.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "compatibility": { + "description": "Select default ads with the specified compatibility. Applicable when type is AD_SERVING_DEFAULT_AD. DISPLAY and DISPLAY_INTERSTITIAL refer to rendering either on desktop or on mobile devices for regular or interstitial ads, respectively. APP and APP_INTERSTITIAL are for rendering in mobile apps. IN_STREAM_VIDEO refers to rendering an in-stream video ads developed with the VAST standard.", + "enum": [ + "APP", + "APP_INTERSTITIAL", + "DISPLAY", + "DISPLAY_INTERSTITIAL", + "IN_STREAM_VIDEO" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "" + ], + "location": "query", + "type": "string" + }, + "creativeIds": { + "description": "Select only ads with these creative IDs assigned.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "creativeOptimizationConfigurationIds": { + "description": "Select only ads with these creative optimization configuration IDs.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "dynamicClickTracker": { + "description": "Select only dynamic click trackers. Applicable when type is AD_SERVING_CLICK_TRACKER. If true, select dynamic click trackers. If false, select static click trackers. Leave unset to select both.", + "location": "query", + "type": "boolean" + }, + "ids": { + "description": "Select only ads with these IDs.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "landingPageIds": { + "description": "Select only ads with these landing page IDs.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "maxResults": { + "default": "1000", + "description": "Maximum number of results to return.", + "format": "int32", + "location": "query", + "maximum": "1000", + "minimum": "0", + "type": "integer" + }, + "overriddenEventTagId": { + "description": "Select only ads with this event tag override ID.", + "format": "int64", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Value of the nextPageToken from the previous result page.", + "location": "query", + "type": "string" + }, + "placementIds": { + "description": "Select only ads with these placement IDs assigned.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "remarketingListIds": { + "description": "Select only ads whose list targeting expression use these remarketing list IDs.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "searchString": { + "description": "Allows searching for objects by name or ID. Wildcards (*) are allowed. For example, \"ad*2015\" will return objects with names like \"ad June 2015\", \"ad April 2015\", or simply \"ad 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"ad\" will match objects with name \"my ad\", \"ad 2015\", or simply \"ad\".", + "location": "query", + "type": "string" + }, + "sizeIds": { + "description": "Select only ads with these size IDs.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "sortField": { + "default": "ID", + "description": "Field by which to sort the list.", + "enum": [ + "ID", + "NAME" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + }, + "sortOrder": { + "default": "ASCENDING", + "description": "Order of sorted results.", + "enum": [ + "ASCENDING", + "DESCENDING" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + }, + "sslCompliant": { + "description": "Select only ads that are SSL-compliant.", + "location": "query", + "type": "boolean" + }, + "sslRequired": { + "description": "Select only ads that require SSL.", + "location": "query", + "type": "boolean" + }, + "type": { + "description": "Select only ads with these types.", + "enum": [ + "AD_SERVING_CLICK_TRACKER", + "AD_SERVING_DEFAULT_AD", + "AD_SERVING_STANDARD_AD", + "AD_SERVING_TRACKING" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ], + "location": "query", + "repeated": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/ads", + "response": { + "$ref": "AdsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "patch": { + "description": "Updates an existing ad. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "dfareporting.ads.patch", + "parameterOrder": [ + "profileId", + "id" + ], + "parameters": { + "id": { + "description": "Ad ID.", + "format": "int64", + "location": "query", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/ads", + "request": { + "$ref": "Ad" + }, + "response": { + "$ref": "Ad" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "update": { + "description": "Updates an existing ad.", + "httpMethod": "PUT", + "id": "dfareporting.ads.update", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/ads", + "request": { + "$ref": "Ad" + }, + "response": { + "$ref": "Ad" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#adsListResponse\".", - "default": "dfareporting#adsListResponse" - }, - "nextPageToken": { - "type": "string", - "description": "Pagination token to be used for the next list operation." - } - } - }, - "Advertiser": { - "id": "Advertiser", - "type": "object", - "description": "Contains properties of a DCM advertiser.", - "properties": { - "accountId": { - "type": "string", - "description": "Account ID of this advertiser.This is a read-only field that can be left blank.", - "format": "int64" - }, - "advertiserGroupId": { - "type": "string", - "description": "ID of the advertiser group this advertiser belongs to. You can group advertisers for reporting purposes, allowing you to see aggregated information for all advertisers in each group.", - "format": "int64" - }, - "clickThroughUrlSuffix": { - "type": "string", - "description": "Suffix added to click-through URL of ad creative associations under this advertiser. Must be less than 129 characters long." - }, - "defaultClickThroughEventTagId": { - "type": "string", - "description": "ID of the click-through event tag to apply by default to the landing pages of this advertiser's campaigns.", - "format": "int64" - }, - "defaultEmail": { - "type": "string", - "description": "Default email address used in sender field for tag emails." - }, - "floodlightConfigurationId": { - "type": "string", - "description": "Floodlight configuration ID of this advertiser. The floodlight configuration ID will be created automatically, so on insert this field should be left blank. This field can be set to another advertiser's floodlight configuration ID in order to share that advertiser's floodlight configuration with this advertiser, so long as: \n- This advertiser's original floodlight configuration is not already associated with floodlight activities or floodlight activity groups. \n- This advertiser's original floodlight configuration is not already shared with another advertiser.", - "format": "int64" - }, - "floodlightConfigurationIdDimensionValue": { - "$ref": "DimensionValue", - "description": "Dimension value for the ID of the floodlight configuration. This is a read-only, auto-generated field." - }, - "id": { - "type": "string", - "description": "ID of this advertiser. This is a read-only, auto-generated field.", - "format": "int64" - }, - "idDimensionValue": { - "$ref": "DimensionValue", - "description": "Dimension value for the ID of this advertiser. This is a read-only, auto-generated field." - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#advertiser\".", - "default": "dfareporting#advertiser" - }, - "name": { - "type": "string", - "description": "Name of this advertiser. This is a required field and must be less than 256 characters long and unique among advertisers of the same account." - }, - "originalFloodlightConfigurationId": { - "type": "string", - "description": "Original floodlight configuration before any sharing occurred. Set the floodlightConfigurationId of this advertiser to originalFloodlightConfigurationId to unshare the advertiser's current floodlight configuration. You cannot unshare an advertiser's floodlight configuration if the shared configuration has activities associated with any campaign or placement.", - "format": "int64" - }, - "status": { - "type": "string", - "description": "Status of this advertiser.", - "enum": [ - "APPROVED", - "ON_HOLD" - ], - "enumDescriptions": [ - "", - "" - ] - }, - "subaccountId": { - "type": "string", - "description": "Subaccount ID of this advertiser.This is a read-only field that can be left blank.", - "format": "int64" - }, - "suspended": { - "type": "boolean", - "description": "Suspension status of this advertiser." - } - } - }, - "AdvertiserGroup": { - "id": "AdvertiserGroup", - "type": "object", - "description": "Groups advertisers together so that reports can be generated for the entire group at once.", - "properties": { - "accountId": { - "type": "string", - "description": "Account ID of this advertiser group. This is a read-only field that can be left blank.", - "format": "int64" - }, - "id": { - "type": "string", - "description": "ID of this advertiser group. This is a read-only, auto-generated field.", - "format": "int64" - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#advertiserGroup\".", - "default": "dfareporting#advertiserGroup" - }, - "name": { - "type": "string", - "description": "Name of this advertiser group. This is a required field and must be less than 256 characters long and unique among advertiser groups of the same account." - } - } - }, - "AdvertiserGroupsListResponse": { - "id": "AdvertiserGroupsListResponse", - "type": "object", - "description": "Advertiser Group List Response", - "properties": { "advertiserGroups": { - "type": "array", - "description": "Advertiser group collection.", - "items": { - "$ref": "AdvertiserGroup" - } + "methods": { + "delete": { + "description": "Deletes an existing advertiser group.", + "httpMethod": "DELETE", + "id": "dfareporting.advertiserGroups.delete", + "parameterOrder": [ + "profileId", + "id" + ], + "parameters": { + "id": { + "description": "Advertiser group ID.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/advertiserGroups/{id}", + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "get": { + "description": "Gets one advertiser group by ID.", + "httpMethod": "GET", + "id": "dfareporting.advertiserGroups.get", + "parameterOrder": [ + "profileId", + "id" + ], + "parameters": { + "id": { + "description": "Advertiser group ID.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/advertiserGroups/{id}", + "response": { + "$ref": "AdvertiserGroup" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "insert": { + "description": "Inserts a new advertiser group.", + "httpMethod": "POST", + "id": "dfareporting.advertiserGroups.insert", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/advertiserGroups", + "request": { + "$ref": "AdvertiserGroup" + }, + "response": { + "$ref": "AdvertiserGroup" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "description": "Retrieves a list of advertiser groups, possibly filtered. This method supports paging.", + "httpMethod": "GET", + "id": "dfareporting.advertiserGroups.list", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "ids": { + "description": "Select only advertiser groups with these IDs.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "maxResults": { + "default": "1000", + "description": "Maximum number of results to return.", + "format": "int32", + "location": "query", + "maximum": "1000", + "minimum": "0", + "type": "integer" + }, + "pageToken": { + "description": "Value of the nextPageToken from the previous result page.", + "location": "query", + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "searchString": { + "description": "Allows searching for objects by name or ID. Wildcards (*) are allowed. For example, \"advertiser*2015\" will return objects with names like \"advertiser group June 2015\", \"advertiser group April 2015\", or simply \"advertiser group 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"advertisergroup\" will match objects with name \"my advertisergroup\", \"advertisergroup 2015\", or simply \"advertisergroup\".", + "location": "query", + "type": "string" + }, + "sortField": { + "default": "ID", + "description": "Field by which to sort the list.", + "enum": [ + "ID", + "NAME" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + }, + "sortOrder": { + "default": "ASCENDING", + "description": "Order of sorted results.", + "enum": [ + "ASCENDING", + "DESCENDING" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + } + }, + "path": "userprofiles/{profileId}/advertiserGroups", + "response": { + "$ref": "AdvertiserGroupsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "patch": { + "description": "Updates an existing advertiser group. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "dfareporting.advertiserGroups.patch", + "parameterOrder": [ + "profileId", + "id" + ], + "parameters": { + "id": { + "description": "Advertiser group ID.", + "format": "int64", + "location": "query", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/advertiserGroups", + "request": { + "$ref": "AdvertiserGroup" + }, + "response": { + "$ref": "AdvertiserGroup" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "update": { + "description": "Updates an existing advertiser group.", + "httpMethod": "PUT", + "id": "dfareporting.advertiserGroups.update", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/advertiserGroups", + "request": { + "$ref": "AdvertiserGroup" + }, + "response": { + "$ref": "AdvertiserGroup" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#advertiserGroupsListResponse\".", - "default": "dfareporting#advertiserGroupsListResponse" + "advertiserLandingPages": { + "methods": { + "get": { + "description": "Gets one landing page by ID.", + "httpMethod": "GET", + "id": "dfareporting.advertiserLandingPages.get", + "parameterOrder": [ + "profileId", + "id" + ], + "parameters": { + "id": { + "description": "Landing page ID.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/advertiserLandingPages/{id}", + "response": { + "$ref": "LandingPage" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "insert": { + "description": "Inserts a new landing page.", + "httpMethod": "POST", + "id": "dfareporting.advertiserLandingPages.insert", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/advertiserLandingPages", + "request": { + "$ref": "LandingPage" + }, + "response": { + "$ref": "LandingPage" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "description": "Retrieves a list of landing pages.", + "httpMethod": "GET", + "id": "dfareporting.advertiserLandingPages.list", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "advertiserIds": { + "description": "Select only landing pages that belong to these advertisers.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "archived": { + "description": "Select only archived landing pages. Don't set this field to select both archived and non-archived landing pages.", + "location": "query", + "type": "boolean" + }, + "ids": { + "description": "Select only landing pages with these IDs.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "maxResults": { + "default": "1000", + "description": "Maximum number of results to return.", + "format": "int32", + "location": "query", + "maximum": "1000", + "minimum": "0", + "type": "integer" + }, + "pageToken": { + "description": "Value of the nextPageToken from the previous result page.", + "location": "query", + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "searchString": { + "description": "Allows searching for landing pages by name or ID. Wildcards (*) are allowed. For example, \"landingpage*2017\" will return landing pages with names like \"landingpage July 2017\", \"landingpage March 2017\", or simply \"landingpage 2017\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"landingpage\" will match campaigns with name \"my landingpage\", \"landingpage 2015\", or simply \"landingpage\".", + "location": "query", + "type": "string" + }, + "sortField": { + "default": "ID", + "description": "Field by which to sort the list.", + "enum": [ + "ID", + "NAME" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + }, + "sortOrder": { + "default": "ASCENDING", + "description": "Order of sorted results.", + "enum": [ + "ASCENDING", + "DESCENDING" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + }, + "subaccountId": { + "description": "Select only landing pages that belong to this subaccount.", + "format": "int64", + "location": "query", + "type": "string" + } + }, + "path": "userprofiles/{profileId}/advertiserLandingPages", + "response": { + "$ref": "AdvertiserLandingPagesListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "patch": { + "description": "Updates an existing landing page. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "dfareporting.advertiserLandingPages.patch", + "parameterOrder": [ + "profileId", + "id" + ], + "parameters": { + "id": { + "description": "Landing page ID.", + "format": "int64", + "location": "query", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/advertiserLandingPages", + "request": { + "$ref": "LandingPage" + }, + "response": { + "$ref": "LandingPage" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "update": { + "description": "Updates an existing landing page.", + "httpMethod": "PUT", + "id": "dfareporting.advertiserLandingPages.update", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/advertiserLandingPages", + "request": { + "$ref": "LandingPage" + }, + "response": { + "$ref": "LandingPage" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } }, - "nextPageToken": { - "type": "string", - "description": "Pagination token to be used for the next list operation." - } - } - }, - "AdvertiserLandingPagesListResponse": { - "id": "AdvertiserLandingPagesListResponse", - "type": "object", - "description": "Landing Page List Response", - "properties": { - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#advertiserLandingPagesListResponse\".", - "default": "dfareporting#advertiserLandingPagesListResponse" - }, - "landingPages": { - "type": "array", - "description": "Landing page collection", - "items": { - "$ref": "LandingPage" - } - }, - "nextPageToken": { - "type": "string", - "description": "Pagination token to be used for the next list operation." - } - } - }, - "AdvertisersListResponse": { - "id": "AdvertisersListResponse", - "type": "object", - "description": "Advertiser List Response", - "properties": { "advertisers": { - "type": "array", - "description": "Advertiser collection.", - "items": { - "$ref": "Advertiser" - } + "methods": { + "get": { + "description": "Gets one advertiser by ID.", + "httpMethod": "GET", + "id": "dfareporting.advertisers.get", + "parameterOrder": [ + "profileId", + "id" + ], + "parameters": { + "id": { + "description": "Advertiser ID.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/advertisers/{id}", + "response": { + "$ref": "Advertiser" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "insert": { + "description": "Inserts a new advertiser.", + "httpMethod": "POST", + "id": "dfareporting.advertisers.insert", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/advertisers", + "request": { + "$ref": "Advertiser" + }, + "response": { + "$ref": "Advertiser" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "description": "Retrieves a list of advertisers, possibly filtered. This method supports paging.", + "httpMethod": "GET", + "id": "dfareporting.advertisers.list", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "advertiserGroupIds": { + "description": "Select only advertisers with these advertiser group IDs.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "floodlightConfigurationIds": { + "description": "Select only advertisers with these floodlight configuration IDs.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "ids": { + "description": "Select only advertisers with these IDs.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "includeAdvertisersWithoutGroupsOnly": { + "description": "Select only advertisers which do not belong to any advertiser group.", + "location": "query", + "type": "boolean" + }, + "maxResults": { + "default": "1000", + "description": "Maximum number of results to return.", + "format": "int32", + "location": "query", + "maximum": "1000", + "minimum": "0", + "type": "integer" + }, + "onlyParent": { + "description": "Select only advertisers which use another advertiser's floodlight configuration.", + "location": "query", + "type": "boolean" + }, + "pageToken": { + "description": "Value of the nextPageToken from the previous result page.", + "location": "query", + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "searchString": { + "description": "Allows searching for objects by name or ID. Wildcards (*) are allowed. For example, \"advertiser*2015\" will return objects with names like \"advertiser June 2015\", \"advertiser April 2015\", or simply \"advertiser 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"advertiser\" will match objects with name \"my advertiser\", \"advertiser 2015\", or simply \"advertiser\".", + "location": "query", + "type": "string" + }, + "sortField": { + "default": "ID", + "description": "Field by which to sort the list.", + "enum": [ + "ID", + "NAME" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + }, + "sortOrder": { + "default": "ASCENDING", + "description": "Order of sorted results.", + "enum": [ + "ASCENDING", + "DESCENDING" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + }, + "status": { + "description": "Select only advertisers with the specified status.", + "enum": [ + "APPROVED", + "ON_HOLD" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + }, + "subaccountId": { + "description": "Select only advertisers with these subaccount IDs.", + "format": "int64", + "location": "query", + "type": "string" + } + }, + "path": "userprofiles/{profileId}/advertisers", + "response": { + "$ref": "AdvertisersListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "patch": { + "description": "Updates an existing advertiser. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "dfareporting.advertisers.patch", + "parameterOrder": [ + "profileId", + "id" + ], + "parameters": { + "id": { + "description": "Advertiser ID.", + "format": "int64", + "location": "query", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/advertisers", + "request": { + "$ref": "Advertiser" + }, + "response": { + "$ref": "Advertiser" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "update": { + "description": "Updates an existing advertiser.", + "httpMethod": "PUT", + "id": "dfareporting.advertisers.update", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/advertisers", + "request": { + "$ref": "Advertiser" + }, + "response": { + "$ref": "Advertiser" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#advertisersListResponse\".", - "default": "dfareporting#advertisersListResponse" - }, - "nextPageToken": { - "type": "string", - "description": "Pagination token to be used for the next list operation." - } - } - }, - "AudienceSegment": { - "id": "AudienceSegment", - "type": "object", - "description": "Audience Segment.", - "properties": { - "allocation": { - "type": "integer", - "description": "Weight allocated to this segment. The weight assigned will be understood in proportion to the weights assigned to other segments in the same segment group. Acceptable values are 1 to 1000, inclusive.", - "format": "int32" - }, - "id": { - "type": "string", - "description": "ID of this audience segment. This is a read-only, auto-generated field.", - "format": "int64" - }, - "name": { - "type": "string", - "description": "Name of this audience segment. This is a required field and must be less than 65 characters long." - } - } - }, - "AudienceSegmentGroup": { - "id": "AudienceSegmentGroup", - "type": "object", - "description": "Audience Segment Group.", - "properties": { - "audienceSegments": { - "type": "array", - "description": "Audience segments assigned to this group. The number of segments must be between 2 and 100.", - "items": { - "$ref": "AudienceSegment" - } - }, - "id": { - "type": "string", - "description": "ID of this audience segment group. This is a read-only, auto-generated field.", - "format": "int64" - }, - "name": { - "type": "string", - "description": "Name of this audience segment group. This is a required field and must be less than 65 characters long." - } - } - }, - "Browser": { - "id": "Browser", - "type": "object", - "description": "Contains information about a browser that can be targeted by ads.", - "properties": { - "browserVersionId": { - "type": "string", - "description": "ID referring to this grouping of browser and version numbers. This is the ID used for targeting.", - "format": "int64" - }, - "dartId": { - "type": "string", - "description": "DART ID of this browser. This is the ID used when generating reports.", - "format": "int64" - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#browser\".", - "default": "dfareporting#browser" - }, - "majorVersion": { - "type": "string", - "description": "Major version number (leftmost number) of this browser. For example, for Chrome 5.0.376.86 beta, this field should be set to 5. An asterisk (*) may be used to target any version number, and a question mark (?) may be used to target cases where the version number cannot be identified. For example, Chrome *.* targets any version of Chrome: 1.2, 2.5, 3.5, and so on. Chrome 3.* targets Chrome 3.1, 3.5, but not 4.0. Firefox ?.? targets cases where the ad server knows the browser is Firefox but can't tell which version it is." - }, - "minorVersion": { - "type": "string", - "description": "Minor version number (number after first dot on left) of this browser. For example, for Chrome 5.0.375.86 beta, this field should be set to 0. An asterisk (*) may be used to target any version number, and a question mark (?) may be used to target cases where the version number cannot be identified. For example, Chrome *.* targets any version of Chrome: 1.2, 2.5, 3.5, and so on. Chrome 3.* targets Chrome 3.1, 3.5, but not 4.0. Firefox ?.? targets cases where the ad server knows the browser is Firefox but can't tell which version it is." - }, - "name": { - "type": "string", - "description": "Name of this browser." - } - } - }, - "BrowsersListResponse": { - "id": "BrowsersListResponse", - "type": "object", - "description": "Browser List Response", - "properties": { "browsers": { - "type": "array", - "description": "Browser collection.", - "items": { - "$ref": "Browser" - } + "methods": { + "list": { + "description": "Retrieves a list of browsers.", + "httpMethod": "GET", + "id": "dfareporting.browsers.list", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/browsers", + "response": { + "$ref": "BrowsersListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#browsersListResponse\".", - "default": "dfareporting#browsersListResponse" - } - } - }, - "Campaign": { - "id": "Campaign", - "type": "object", - "description": "Contains properties of a DCM campaign.", - "properties": { - "accountId": { - "type": "string", - "description": "Account ID of this campaign. This is a read-only field that can be left blank.", - "format": "int64" - }, - "adBlockingConfiguration": { - "$ref": "AdBlockingConfiguration", - "description": "Ad blocking settings for this campaign." - }, - "additionalCreativeOptimizationConfigurations": { - "type": "array", - "description": "Additional creative optimization configurations for the campaign.", - "items": { - "$ref": "CreativeOptimizationConfiguration" - } - }, - "advertiserGroupId": { - "type": "string", - "description": "Advertiser group ID of the associated advertiser.", - "format": "int64" - }, - "advertiserId": { - "type": "string", - "description": "Advertiser ID of this campaign. This is a required field.", - "format": "int64" - }, - "advertiserIdDimensionValue": { - "$ref": "DimensionValue", - "description": "Dimension value for the advertiser ID of this campaign. This is a read-only, auto-generated field." - }, - "archived": { - "type": "boolean", - "description": "Whether this campaign has been archived." - }, - "audienceSegmentGroups": { - "type": "array", - "description": "Audience segment groups assigned to this campaign. Cannot have more than 300 segment groups.", - "items": { - "$ref": "AudienceSegmentGroup" - } - }, - "billingInvoiceCode": { - "type": "string", - "description": "Billing invoice code included in the DCM client billing invoices associated with the campaign." - }, - "clickThroughUrlSuffixProperties": { - "$ref": "ClickThroughUrlSuffixProperties", - "description": "Click-through URL suffix override properties for this campaign." - }, - "comment": { - "type": "string", - "description": "Arbitrary comments about this campaign. Must be less than 256 characters long." - }, - "createInfo": { - "$ref": "LastModifiedInfo", - "description": "Information about the creation of this campaign. This is a read-only field." - }, - "creativeGroupIds": { - "type": "array", - "description": "List of creative group IDs that are assigned to the campaign.", - "items": { - "type": "string", - "format": "int64" - } - }, - "creativeOptimizationConfiguration": { - "$ref": "CreativeOptimizationConfiguration", - "description": "Creative optimization configuration for the campaign." - }, - "defaultClickThroughEventTagProperties": { - "$ref": "DefaultClickThroughEventTagProperties", - "description": "Click-through event tag ID override properties for this campaign." - }, - "defaultLandingPageId": { - "type": "string", - "description": "The default landing page ID for this campaign.", - "format": "int64" - }, - "endDate": { - "type": "string", - "description": "Date on which the campaign will stop running. On insert, the end date must be today or a future date. The end date must be later than or be the same as the start date. If, for example, you set 6/25/2015 as both the start and end dates, the effective campaign run date is just that day only, 6/25/2015. The hours, minutes, and seconds of the end date should not be set, as doing so will result in an error. This is a required field.", - "format": "date" - }, - "eventTagOverrides": { - "type": "array", - "description": "Overrides that can be used to activate or deactivate advertiser event tags.", - "items": { - "$ref": "EventTagOverride" - } - }, - "externalId": { - "type": "string", - "description": "External ID for this campaign." - }, - "id": { - "type": "string", - "description": "ID of this campaign. This is a read-only auto-generated field.", - "format": "int64" - }, - "idDimensionValue": { - "$ref": "DimensionValue", - "description": "Dimension value for the ID of this campaign. This is a read-only, auto-generated field." - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#campaign\".", - "default": "dfareporting#campaign" - }, - "lastModifiedInfo": { - "$ref": "LastModifiedInfo", - "description": "Information about the most recent modification of this campaign. This is a read-only field." - }, - "lookbackConfiguration": { - "$ref": "LookbackConfiguration", - "description": "Lookback window settings for the campaign." - }, - "name": { - "type": "string", - "description": "Name of this campaign. This is a required field and must be less than 256 characters long and unique among campaigns of the same advertiser." - }, - "nielsenOcrEnabled": { - "type": "boolean", - "description": "Whether Nielsen reports are enabled for this campaign." - }, - "startDate": { - "type": "string", - "description": "Date on which the campaign starts running. The start date can be any date. The hours, minutes, and seconds of the start date should not be set, as doing so will result in an error. This is a required field.", - "format": "date" - }, - "subaccountId": { - "type": "string", - "description": "Subaccount ID of this campaign. This is a read-only field that can be left blank.", - "format": "int64" - }, - "traffickerEmails": { - "type": "array", - "description": "Campaign trafficker contact emails.", - "items": { - "type": "string" - } - } - } - }, - "CampaignCreativeAssociation": { - "id": "CampaignCreativeAssociation", - "type": "object", - "description": "Identifies a creative which has been associated with a given campaign.", - "properties": { - "creativeId": { - "type": "string", - "description": "ID of the creative associated with the campaign. This is a required field.", - "format": "int64" - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#campaignCreativeAssociation\".", - "default": "dfareporting#campaignCreativeAssociation" - } - } - }, - "CampaignCreativeAssociationsListResponse": { - "id": "CampaignCreativeAssociationsListResponse", - "type": "object", - "description": "Campaign Creative Association List Response", - "properties": { "campaignCreativeAssociations": { - "type": "array", - "description": "Campaign creative association collection", - "items": { - "$ref": "CampaignCreativeAssociation" - } + "methods": { + "insert": { + "description": "Associates a creative with the specified campaign. This method creates a default ad with dimensions matching the creative in the campaign if such a default ad does not exist already.", + "httpMethod": "POST", + "id": "dfareporting.campaignCreativeAssociations.insert", + "parameterOrder": [ + "profileId", + "campaignId" + ], + "parameters": { + "campaignId": { + "description": "Campaign ID in this association.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/campaigns/{campaignId}/campaignCreativeAssociations", + "request": { + "$ref": "CampaignCreativeAssociation" + }, + "response": { + "$ref": "CampaignCreativeAssociation" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "description": "Retrieves the list of creative IDs associated with the specified campaign. This method supports paging.", + "httpMethod": "GET", + "id": "dfareporting.campaignCreativeAssociations.list", + "parameterOrder": [ + "profileId", + "campaignId" + ], + "parameters": { + "campaignId": { + "description": "Campaign ID in this association.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "maxResults": { + "default": "1000", + "description": "Maximum number of results to return.", + "format": "int32", + "location": "query", + "maximum": "1000", + "minimum": "0", + "type": "integer" + }, + "pageToken": { + "description": "Value of the nextPageToken from the previous result page.", + "location": "query", + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "sortOrder": { + "default": "ASCENDING", + "description": "Order of sorted results.", + "enum": [ + "ASCENDING", + "DESCENDING" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + } + }, + "path": "userprofiles/{profileId}/campaigns/{campaignId}/campaignCreativeAssociations", + "response": { + "$ref": "CampaignCreativeAssociationsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#campaignCreativeAssociationsListResponse\".", - "default": "dfareporting#campaignCreativeAssociationsListResponse" - }, - "nextPageToken": { - "type": "string", - "description": "Pagination token to be used for the next list operation." - } - } - }, - "CampaignsListResponse": { - "id": "CampaignsListResponse", - "type": "object", - "description": "Campaign List Response", - "properties": { "campaigns": { - "type": "array", - "description": "Campaign collection.", - "items": { - "$ref": "Campaign" - } + "methods": { + "get": { + "description": "Gets one campaign by ID.", + "httpMethod": "GET", + "id": "dfareporting.campaigns.get", + "parameterOrder": [ + "profileId", + "id" + ], + "parameters": { + "id": { + "description": "Campaign ID.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/campaigns/{id}", + "response": { + "$ref": "Campaign" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "insert": { + "description": "Inserts a new campaign.", + "httpMethod": "POST", + "id": "dfareporting.campaigns.insert", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/campaigns", + "request": { + "$ref": "Campaign" + }, + "response": { + "$ref": "Campaign" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "description": "Retrieves a list of campaigns, possibly filtered. This method supports paging.", + "httpMethod": "GET", + "id": "dfareporting.campaigns.list", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "advertiserGroupIds": { + "description": "Select only campaigns whose advertisers belong to these advertiser groups.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "advertiserIds": { + "description": "Select only campaigns that belong to these advertisers.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "archived": { + "description": "Select only archived campaigns. Don't set this field to select both archived and non-archived campaigns.", + "location": "query", + "type": "boolean" + }, + "atLeastOneOptimizationActivity": { + "description": "Select only campaigns that have at least one optimization activity.", + "location": "query", + "type": "boolean" + }, + "excludedIds": { + "description": "Exclude campaigns with these IDs.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "ids": { + "description": "Select only campaigns with these IDs.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "maxResults": { + "default": "1000", + "description": "Maximum number of results to return.", + "format": "int32", + "location": "query", + "maximum": "1000", + "minimum": "0", + "type": "integer" + }, + "overriddenEventTagId": { + "description": "Select only campaigns that have overridden this event tag ID.", + "format": "int64", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Value of the nextPageToken from the previous result page.", + "location": "query", + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "searchString": { + "description": "Allows searching for campaigns by name or ID. Wildcards (*) are allowed. For example, \"campaign*2015\" will return campaigns with names like \"campaign June 2015\", \"campaign April 2015\", or simply \"campaign 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"campaign\" will match campaigns with name \"my campaign\", \"campaign 2015\", or simply \"campaign\".", + "location": "query", + "type": "string" + }, + "sortField": { + "default": "ID", + "description": "Field by which to sort the list.", + "enum": [ + "ID", + "NAME" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + }, + "sortOrder": { + "default": "ASCENDING", + "description": "Order of sorted results.", + "enum": [ + "ASCENDING", + "DESCENDING" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + }, + "subaccountId": { + "description": "Select only campaigns that belong to this subaccount.", + "format": "int64", + "location": "query", + "type": "string" + } + }, + "path": "userprofiles/{profileId}/campaigns", + "response": { + "$ref": "CampaignsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "patch": { + "description": "Updates an existing campaign. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "dfareporting.campaigns.patch", + "parameterOrder": [ + "profileId", + "id" + ], + "parameters": { + "id": { + "description": "Campaign ID.", + "format": "int64", + "location": "query", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/campaigns", + "request": { + "$ref": "Campaign" + }, + "response": { + "$ref": "Campaign" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "update": { + "description": "Updates an existing campaign.", + "httpMethod": "PUT", + "id": "dfareporting.campaigns.update", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/campaigns", + "request": { + "$ref": "Campaign" + }, + "response": { + "$ref": "Campaign" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#campaignsListResponse\".", - "default": "dfareporting#campaignsListResponse" - }, - "nextPageToken": { - "type": "string", - "description": "Pagination token to be used for the next list operation." - } - } - }, - "ChangeLog": { - "id": "ChangeLog", - "type": "object", - "description": "Describes a change that a user has made to a resource.", - "properties": { - "accountId": { - "type": "string", - "description": "Account ID of the modified object.", - "format": "int64" - }, - "action": { - "type": "string", - "description": "Action which caused the change." - }, - "changeTime": { - "type": "string", - "description": "Time when the object was modified.", - "format": "date-time" - }, - "fieldName": { - "type": "string", - "description": "Field name of the object which changed." - }, - "id": { - "type": "string", - "description": "ID of this change log.", - "format": "int64" - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#changeLog\".", - "default": "dfareporting#changeLog" - }, - "newValue": { - "type": "string", - "description": "New value of the object field." - }, - "objectId": { - "type": "string", - "description": "ID of the object of this change log. The object could be a campaign, placement, ad, or other type.", - "format": "int64" - }, - "objectType": { - "type": "string", - "description": "Object type of the change log." - }, - "oldValue": { - "type": "string", - "description": "Old value of the object field." - }, - "subaccountId": { - "type": "string", - "description": "Subaccount ID of the modified object.", - "format": "int64" - }, - "transactionId": { - "type": "string", - "description": "Transaction ID of this change log. When a single API call results in many changes, each change will have a separate ID in the change log but will share the same transactionId.", - "format": "int64" - }, - "userProfileId": { - "type": "string", - "description": "ID of the user who modified the object.", - "format": "int64" - }, - "userProfileName": { - "type": "string", - "description": "User profile name of the user who modified the object." - } - } - }, - "ChangeLogsListResponse": { - "id": "ChangeLogsListResponse", - "type": "object", - "description": "Change Log List Response", - "properties": { "changeLogs": { - "type": "array", - "description": "Change log collection.", - "items": { - "$ref": "ChangeLog" - } + "methods": { + "get": { + "description": "Gets one change log by ID.", + "httpMethod": "GET", + "id": "dfareporting.changeLogs.get", + "parameterOrder": [ + "profileId", + "id" + ], + "parameters": { + "id": { + "description": "Change log ID.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/changeLogs/{id}", + "response": { + "$ref": "ChangeLog" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "description": "Retrieves a list of change logs. This method supports paging.", + "httpMethod": "GET", + "id": "dfareporting.changeLogs.list", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "action": { + "description": "Select only change logs with the specified action.", + "enum": [ + "ACTION_ADD", + "ACTION_ASSIGN", + "ACTION_ASSOCIATE", + "ACTION_CREATE", + "ACTION_DELETE", + "ACTION_DISABLE", + "ACTION_EMAIL_TAGS", + "ACTION_ENABLE", + "ACTION_LINK", + "ACTION_MARK_AS_DEFAULT", + "ACTION_PUSH", + "ACTION_REMOVE", + "ACTION_SEND", + "ACTION_SHARE", + "ACTION_UNASSIGN", + "ACTION_UNLINK", + "ACTION_UPDATE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "location": "query", + "type": "string" + }, + "ids": { + "description": "Select only change logs with these IDs.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "maxChangeTime": { + "description": "Select only change logs whose change time is before the specified maxChangeTime.The time should be formatted as an RFC3339 date/time string. For example, for 10:54 PM on July 18th, 2015, in the America/New York time zone, the format is \"2015-07-18T22:54:00-04:00\". In other words, the year, month, day, the letter T, the hour (24-hour clock system), minute, second, and then the time zone offset.", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "1000", + "description": "Maximum number of results to return.", + "format": "int32", + "location": "query", + "maximum": "1000", + "minimum": "0", + "type": "integer" + }, + "minChangeTime": { + "description": "Select only change logs whose change time is before the specified minChangeTime.The time should be formatted as an RFC3339 date/time string. For example, for 10:54 PM on July 18th, 2015, in the America/New York time zone, the format is \"2015-07-18T22:54:00-04:00\". In other words, the year, month, day, the letter T, the hour (24-hour clock system), minute, second, and then the time zone offset.", + "location": "query", + "type": "string" + }, + "objectIds": { + "description": "Select only change logs with these object IDs.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "objectType": { + "description": "Select only change logs with the specified object type.", + "enum": [ + "OBJECT_ACCOUNT", + "OBJECT_ACCOUNT_BILLING_FEATURE", + "OBJECT_AD", + "OBJECT_ADVERTISER", + "OBJECT_ADVERTISER_GROUP", + "OBJECT_BILLING_ACCOUNT_GROUP", + "OBJECT_BILLING_FEATURE", + "OBJECT_BILLING_MINIMUM_FEE", + "OBJECT_BILLING_PROFILE", + "OBJECT_CAMPAIGN", + "OBJECT_CONTENT_CATEGORY", + "OBJECT_CREATIVE", + "OBJECT_CREATIVE_ASSET", + "OBJECT_CREATIVE_BUNDLE", + "OBJECT_CREATIVE_FIELD", + "OBJECT_CREATIVE_GROUP", + "OBJECT_DFA_SITE", + "OBJECT_EVENT_TAG", + "OBJECT_FLOODLIGHT_ACTIVITY_GROUP", + "OBJECT_FLOODLIGHT_ACTVITY", + "OBJECT_FLOODLIGHT_CONFIGURATION", + "OBJECT_INSTREAM_CREATIVE", + "OBJECT_LANDING_PAGE", + "OBJECT_MEDIA_ORDER", + "OBJECT_PLACEMENT", + "OBJECT_PLACEMENT_STRATEGY", + "OBJECT_PLAYSTORE_LINK", + "OBJECT_PROVIDED_LIST_CLIENT", + "OBJECT_RATE_CARD", + "OBJECT_REMARKETING_LIST", + "OBJECT_RICHMEDIA_CREATIVE", + "OBJECT_SD_SITE", + "OBJECT_SEARCH_LIFT_STUDY", + "OBJECT_SIZE", + "OBJECT_SUBACCOUNT", + "OBJECT_TARGETING_TEMPLATE", + "OBJECT_USER_PROFILE", + "OBJECT_USER_PROFILE_FILTER", + "OBJECT_USER_ROLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Value of the nextPageToken from the previous result page.", + "location": "query", + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "searchString": { + "description": "Select only change logs whose object ID, user name, old or new values match the search string.", + "location": "query", + "type": "string" + }, + "userProfileIds": { + "description": "Select only change logs with these user profile IDs.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/changeLogs", + "response": { + "$ref": "ChangeLogsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#changeLogsListResponse\".", - "default": "dfareporting#changeLogsListResponse" - }, - "nextPageToken": { - "type": "string", - "description": "Pagination token to be used for the next list operation." - } - } - }, - "CitiesListResponse": { - "id": "CitiesListResponse", - "type": "object", - "description": "City List Response", - "properties": { "cities": { - "type": "array", - "description": "City collection.", - "items": { - "$ref": "City" - } + "methods": { + "list": { + "description": "Retrieves a list of cities, possibly filtered.", + "httpMethod": "GET", + "id": "dfareporting.cities.list", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "countryDartIds": { + "description": "Select only cities from these countries.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "dartIds": { + "description": "Select only cities with these DART IDs.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "namePrefix": { + "description": "Select only cities with names starting with this prefix.", + "location": "query", + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "regionDartIds": { + "description": "Select only cities from these regions.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/cities", + "response": { + "$ref": "CitiesListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#citiesListResponse\".", - "default": "dfareporting#citiesListResponse" - } - } - }, - "City": { - "id": "City", - "type": "object", - "description": "Contains information about a city that can be targeted by ads.", - "properties": { - "countryCode": { - "type": "string", - "description": "Country code of the country to which this city belongs." - }, - "countryDartId": { - "type": "string", - "description": "DART ID of the country to which this city belongs.", - "format": "int64" - }, - "dartId": { - "type": "string", - "description": "DART ID of this city. This is the ID used for targeting and generating reports.", - "format": "int64" - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#city\".", - "default": "dfareporting#city" - }, - "metroCode": { - "type": "string", - "description": "Metro region code of the metro region (DMA) to which this city belongs." - }, - "metroDmaId": { - "type": "string", - "description": "ID of the metro region (DMA) to which this city belongs.", - "format": "int64" - }, - "name": { - "type": "string", - "description": "Name of this city." - }, - "regionCode": { - "type": "string", - "description": "Region code of the region to which this city belongs." - }, - "regionDartId": { - "type": "string", - "description": "DART ID of the region to which this city belongs.", - "format": "int64" - } - } - }, - "ClickTag": { - "id": "ClickTag", - "type": "object", - "description": "Creative Click Tag.", - "properties": { - "clickThroughUrl": { - "$ref": "CreativeClickThroughUrl", - "description": "Parameter value for the specified click tag. This field contains a click-through url." - }, - "eventName": { - "type": "string", - "description": "Advertiser event name associated with the click tag. This field is used by DISPLAY_IMAGE_GALLERY and HTML5_BANNER creatives. Applicable to DISPLAY when the primary asset type is not HTML_IMAGE." - }, - "name": { - "type": "string", - "description": "Parameter name for the specified click tag. For DISPLAY_IMAGE_GALLERY creative assets, this field must match the value of the creative asset's creativeAssetId.name field." - } - } - }, - "ClickThroughUrl": { - "id": "ClickThroughUrl", - "type": "object", - "description": "Click-through URL", - "properties": { - "computedClickThroughUrl": { - "type": "string", - "description": "Read-only convenience field representing the actual URL that will be used for this click-through. The URL is computed as follows: \n- If defaultLandingPage is enabled then the campaign's default landing page URL is assigned to this field.\n- If defaultLandingPage is not enabled and a landingPageId is specified then that landing page's URL is assigned to this field.\n- If neither of the above cases apply, then the customClickThroughUrl is assigned to this field." - }, - "customClickThroughUrl": { - "type": "string", - "description": "Custom click-through URL. Applicable if the defaultLandingPage field is set to false and the landingPageId field is left unset." - }, - "defaultLandingPage": { - "type": "boolean", - "description": "Whether the campaign default landing page is used." - }, - "landingPageId": { - "type": "string", - "description": "ID of the landing page for the click-through URL. Applicable if the defaultLandingPage field is set to false.", - "format": "int64" - } - } - }, - "ClickThroughUrlSuffixProperties": { - "id": "ClickThroughUrlSuffixProperties", - "type": "object", - "description": "Click Through URL Suffix settings.", - "properties": { - "clickThroughUrlSuffix": { - "type": "string", - "description": "Click-through URL suffix to apply to all ads in this entity's scope. Must be less than 128 characters long." - }, - "overrideInheritedSuffix": { - "type": "boolean", - "description": "Whether this entity should override the inherited click-through URL suffix with its own defined value." - } - } - }, - "CompanionClickThroughOverride": { - "id": "CompanionClickThroughOverride", - "type": "object", - "description": "Companion Click-through override.", - "properties": { - "clickThroughUrl": { - "$ref": "ClickThroughUrl", - "description": "Click-through URL of this companion click-through override." - }, - "creativeId": { - "type": "string", - "description": "ID of the creative for this companion click-through override.", - "format": "int64" - } - } - }, - "CompanionSetting": { - "id": "CompanionSetting", - "type": "object", - "description": "Companion Settings", - "properties": { - "companionsDisabled": { - "type": "boolean", - "description": "Whether companions are disabled for this placement." - }, - "enabledSizes": { - "type": "array", - "description": "Whitelist of companion sizes to be served to this placement. Set this list to null or empty to serve all companion sizes.", - "items": { - "$ref": "Size" - } - }, - "imageOnly": { - "type": "boolean", - "description": "Whether to serve only static images as companions." - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#companionSetting\".", - "default": "dfareporting#companionSetting" - } - } - }, - "CompatibleFields": { - "id": "CompatibleFields", - "type": "object", - "description": "Represents a response to the queryCompatibleFields method.", - "properties": { - "crossDimensionReachReportCompatibleFields": { - "$ref": "CrossDimensionReachReportCompatibleFields", - "description": "Contains items that are compatible to be selected for a report of type \"CROSS_DIMENSION_REACH\"." - }, - "floodlightReportCompatibleFields": { - "$ref": "FloodlightReportCompatibleFields", - "description": "Contains items that are compatible to be selected for a report of type \"FLOODLIGHT\"." - }, - "kind": { - "type": "string", - "description": "The kind of resource this is, in this case dfareporting#compatibleFields.", - "default": "dfareporting#compatibleFields" - }, - "pathToConversionReportCompatibleFields": { - "$ref": "PathToConversionReportCompatibleFields", - "description": "Contains items that are compatible to be selected for a report of type \"PATH_TO_CONVERSION\"." - }, - "reachReportCompatibleFields": { - "$ref": "ReachReportCompatibleFields", - "description": "Contains items that are compatible to be selected for a report of type \"REACH\"." - }, - "reportCompatibleFields": { - "$ref": "ReportCompatibleFields", - "description": "Contains items that are compatible to be selected for a report of type \"STANDARD\"." - } - } - }, - "ConnectionType": { - "id": "ConnectionType", - "type": "object", - "description": "Contains information about an internet connection type that can be targeted by ads. Clients can use the connection type to target mobile vs. broadband users.", - "properties": { - "id": { - "type": "string", - "description": "ID of this connection type.", - "format": "int64" - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#connectionType\".", - "default": "dfareporting#connectionType" - }, - "name": { - "type": "string", - "description": "Name of this connection type." - } - } - }, - "ConnectionTypesListResponse": { - "id": "ConnectionTypesListResponse", - "type": "object", - "description": "Connection Type List Response", - "properties": { "connectionTypes": { - "type": "array", - "description": "Collection of connection types such as broadband and mobile.", - "items": { - "$ref": "ConnectionType" - } + "methods": { + "get": { + "description": "Gets one connection type by ID.", + "httpMethod": "GET", + "id": "dfareporting.connectionTypes.get", + "parameterOrder": [ + "profileId", + "id" + ], + "parameters": { + "id": { + "description": "Connection type ID.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/connectionTypes/{id}", + "response": { + "$ref": "ConnectionType" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "description": "Retrieves a list of connection types.", + "httpMethod": "GET", + "id": "dfareporting.connectionTypes.list", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/connectionTypes", + "response": { + "$ref": "ConnectionTypesListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#connectionTypesListResponse\".", - "default": "dfareporting#connectionTypesListResponse" - } - } - }, - "ContentCategoriesListResponse": { - "id": "ContentCategoriesListResponse", - "type": "object", - "description": "Content Category List Response", - "properties": { "contentCategories": { - "type": "array", - "description": "Content category collection.", - "items": { - "$ref": "ContentCategory" - } + "methods": { + "delete": { + "description": "Deletes an existing content category.", + "httpMethod": "DELETE", + "id": "dfareporting.contentCategories.delete", + "parameterOrder": [ + "profileId", + "id" + ], + "parameters": { + "id": { + "description": "Content category ID.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/contentCategories/{id}", + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "get": { + "description": "Gets one content category by ID.", + "httpMethod": "GET", + "id": "dfareporting.contentCategories.get", + "parameterOrder": [ + "profileId", + "id" + ], + "parameters": { + "id": { + "description": "Content category ID.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/contentCategories/{id}", + "response": { + "$ref": "ContentCategory" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "insert": { + "description": "Inserts a new content category.", + "httpMethod": "POST", + "id": "dfareporting.contentCategories.insert", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/contentCategories", + "request": { + "$ref": "ContentCategory" + }, + "response": { + "$ref": "ContentCategory" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "description": "Retrieves a list of content categories, possibly filtered. This method supports paging.", + "httpMethod": "GET", + "id": "dfareporting.contentCategories.list", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "ids": { + "description": "Select only content categories with these IDs.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "maxResults": { + "default": "1000", + "description": "Maximum number of results to return.", + "format": "int32", + "location": "query", + "maximum": "1000", + "minimum": "0", + "type": "integer" + }, + "pageToken": { + "description": "Value of the nextPageToken from the previous result page.", + "location": "query", + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "searchString": { + "description": "Allows searching for objects by name or ID. Wildcards (*) are allowed. For example, \"contentcategory*2015\" will return objects with names like \"contentcategory June 2015\", \"contentcategory April 2015\", or simply \"contentcategory 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"contentcategory\" will match objects with name \"my contentcategory\", \"contentcategory 2015\", or simply \"contentcategory\".", + "location": "query", + "type": "string" + }, + "sortField": { + "default": "ID", + "description": "Field by which to sort the list.", + "enum": [ + "ID", + "NAME" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + }, + "sortOrder": { + "default": "ASCENDING", + "description": "Order of sorted results.", + "enum": [ + "ASCENDING", + "DESCENDING" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + } + }, + "path": "userprofiles/{profileId}/contentCategories", + "response": { + "$ref": "ContentCategoriesListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "patch": { + "description": "Updates an existing content category. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "dfareporting.contentCategories.patch", + "parameterOrder": [ + "profileId", + "id" + ], + "parameters": { + "id": { + "description": "Content category ID.", + "format": "int64", + "location": "query", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/contentCategories", + "request": { + "$ref": "ContentCategory" + }, + "response": { + "$ref": "ContentCategory" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "update": { + "description": "Updates an existing content category.", + "httpMethod": "PUT", + "id": "dfareporting.contentCategories.update", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/contentCategories", + "request": { + "$ref": "ContentCategory" + }, + "response": { + "$ref": "ContentCategory" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#contentCategoriesListResponse\".", - "default": "dfareporting#contentCategoriesListResponse" - }, - "nextPageToken": { - "type": "string", - "description": "Pagination token to be used for the next list operation." - } - } - }, - "ContentCategory": { - "id": "ContentCategory", - "type": "object", - "description": "Organizes placements according to the contents of their associated webpages.", - "properties": { - "accountId": { - "type": "string", - "description": "Account ID of this content category. This is a read-only field that can be left blank.", - "format": "int64" - }, - "id": { - "type": "string", - "description": "ID of this content category. This is a read-only, auto-generated field.", - "format": "int64" - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#contentCategory\".", - "default": "dfareporting#contentCategory" - }, - "name": { - "type": "string", - "description": "Name of this content category. This is a required field and must be less than 256 characters long and unique among content categories of the same account." - } - } - }, - "Conversion": { - "id": "Conversion", - "type": "object", - "description": "A Conversion represents when a user successfully performs a desired action after seeing an ad.", - "properties": { - "childDirectedTreatment": { - "type": "boolean", - "description": "Whether the conversion was directed toward children." - }, - "customVariables": { - "type": "array", - "description": "Custom floodlight variables.", - "items": { - "$ref": "CustomFloodlightVariable" - } - }, - "encryptedUserId": { - "type": "string", - "description": "The alphanumeric encrypted user ID. When set, encryptionInfo should also be specified. This field is mutually exclusive with encryptedUserIdCandidates[], mobileDeviceId and gclid. This or encryptedUserIdCandidates[] or mobileDeviceId or gclid is a required field." - }, - "encryptedUserIdCandidates": { - "type": "array", - "description": "A list of the alphanumeric encrypted user IDs. Any user ID with exposure prior to the conversion timestamp will be used in the inserted conversion. If no such user ID is found then the conversion will be rejected with NO_COOKIE_MATCH_FOUND error. When set, encryptionInfo should also be specified. This field may only be used when calling batchinsert; it is not supported by batchupdate. This field is mutually exclusive with encryptedUserId, mobileDeviceId and gclid. This or encryptedUserId or mobileDeviceId or gclid is a required field.", - "items": { - "type": "string" - } - }, - "floodlightActivityId": { - "type": "string", - "description": "Floodlight Activity ID of this conversion. This is a required field.", - "format": "int64" - }, - "floodlightConfigurationId": { - "type": "string", - "description": "Floodlight Configuration ID of this conversion. This is a required field.", - "format": "int64" - }, - "gclid": { - "type": "string", - "description": "The Google click ID. This field is mutually exclusive with encryptedUserId, encryptedUserIdCandidates[] and mobileDeviceId. This or encryptedUserId or encryptedUserIdCandidates[] or mobileDeviceId is a required field." - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#conversion\".", - "default": "dfareporting#conversion" - }, - "limitAdTracking": { - "type": "boolean", - "description": "Whether Limit Ad Tracking is enabled. When set to true, the conversion will be used for reporting but not targeting. This will prevent remarketing." - }, - "mobileDeviceId": { - "type": "string", - "description": "The mobile device ID. This field is mutually exclusive with encryptedUserId, encryptedUserIdCandidates[] and gclid. This or encryptedUserId or encryptedUserIdCandidates[] or gclid is a required field." - }, - "ordinal": { - "type": "string", - "description": "The ordinal of the conversion. Use this field to control how conversions of the same user and day are de-duplicated. This is a required field." - }, - "quantity": { - "type": "string", - "description": "The quantity of the conversion.", - "format": "int64" - }, - "timestampMicros": { - "type": "string", - "description": "The timestamp of conversion, in Unix epoch micros. This is a required field.", - "format": "int64" - }, - "value": { - "type": "number", - "description": "The value of the conversion.", - "format": "double" - } - } - }, - "ConversionError": { - "id": "ConversionError", - "type": "object", - "description": "The error code and description for a conversion that failed to insert or update.", - "properties": { - "code": { - "type": "string", - "description": "The error code.", - "enum": [ - "INTERNAL", - "INVALID_ARGUMENT", - "NOT_FOUND", - "PERMISSION_DENIED" - ], - "enumDescriptions": [ - "", - "", - "", - "" - ] - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#conversionError\".", - "default": "dfareporting#conversionError" - }, - "message": { - "type": "string", - "description": "A description of the error." - } - } - }, - "ConversionStatus": { - "id": "ConversionStatus", - "type": "object", - "description": "The original conversion that was inserted or updated and whether there were any errors.", - "properties": { - "conversion": { - "$ref": "Conversion", - "description": "The original conversion that was inserted or updated." - }, - "errors": { - "type": "array", - "description": "A list of errors related to this conversion.", - "items": { - "$ref": "ConversionError" - } - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#conversionStatus\".", - "default": "dfareporting#conversionStatus" - } - } - }, - "ConversionsBatchInsertRequest": { - "id": "ConversionsBatchInsertRequest", - "type": "object", - "description": "Insert Conversions Request.", - "properties": { "conversions": { - "type": "array", - "description": "The set of conversions to insert.", - "items": { - "$ref": "Conversion" - } + "methods": { + "batchinsert": { + "description": "Inserts conversions.", + "httpMethod": "POST", + "id": "dfareporting.conversions.batchinsert", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/conversions/batchinsert", + "request": { + "$ref": "ConversionsBatchInsertRequest" + }, + "response": { + "$ref": "ConversionsBatchInsertResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/ddmconversions" + ] + }, + "batchupdate": { + "description": "Updates existing conversions.", + "httpMethod": "POST", + "id": "dfareporting.conversions.batchupdate", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/conversions/batchupdate", + "request": { + "$ref": "ConversionsBatchUpdateRequest" + }, + "response": { + "$ref": "ConversionsBatchUpdateResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/ddmconversions" + ] + } + } }, - "encryptionInfo": { - "$ref": "EncryptionInfo", - "description": "Describes how encryptedUserId or encryptedUserIdCandidates[] is encrypted. This is a required field if encryptedUserId or encryptedUserIdCandidates[] is used." - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#conversionsBatchInsertRequest\".", - "default": "dfareporting#conversionsBatchInsertRequest" - } - } - }, - "ConversionsBatchInsertResponse": { - "id": "ConversionsBatchInsertResponse", - "type": "object", - "description": "Insert Conversions Response.", - "properties": { - "hasFailures": { - "type": "boolean", - "description": "Indicates that some or all conversions failed to insert." - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#conversionsBatchInsertResponse\".", - "default": "dfareporting#conversionsBatchInsertResponse" - }, - "status": { - "type": "array", - "description": "The insert status of each conversion. Statuses are returned in the same order that conversions are inserted.", - "items": { - "$ref": "ConversionStatus" - } - } - } - }, - "ConversionsBatchUpdateRequest": { - "id": "ConversionsBatchUpdateRequest", - "type": "object", - "description": "Update Conversions Request.", - "properties": { - "conversions": { - "type": "array", - "description": "The set of conversions to update.", - "items": { - "$ref": "Conversion" - } - }, - "encryptionInfo": { - "$ref": "EncryptionInfo", - "description": "Describes how encryptedUserId is encrypted. This is a required field if encryptedUserId is used." - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#conversionsBatchUpdateRequest\".", - "default": "dfareporting#conversionsBatchUpdateRequest" - } - } - }, - "ConversionsBatchUpdateResponse": { - "id": "ConversionsBatchUpdateResponse", - "type": "object", - "description": "Update Conversions Response.", - "properties": { - "hasFailures": { - "type": "boolean", - "description": "Indicates that some or all conversions failed to update." - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#conversionsBatchUpdateResponse\".", - "default": "dfareporting#conversionsBatchUpdateResponse" - }, - "status": { - "type": "array", - "description": "The update status of each conversion. Statuses are returned in the same order that conversions are updated.", - "items": { - "$ref": "ConversionStatus" - } - } - } - }, - "CountriesListResponse": { - "id": "CountriesListResponse", - "type": "object", - "description": "Country List Response", - "properties": { "countries": { - "type": "array", - "description": "Country collection.", - "items": { - "$ref": "Country" - } - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#countriesListResponse\".", - "default": "dfareporting#countriesListResponse" - } - } - }, - "Country": { - "id": "Country", - "type": "object", - "description": "Contains information about a country that can be targeted by ads.", - "properties": { - "countryCode": { - "type": "string", - "description": "Country code." - }, - "dartId": { - "type": "string", - "description": "DART ID of this country. This is the ID used for targeting and generating reports.", - "format": "int64" - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#country\".", - "default": "dfareporting#country" - }, - "name": { - "type": "string", - "description": "Name of this country." - }, - "sslEnabled": { - "type": "boolean", - "description": "Whether ad serving supports secure servers in this country." - } - } - }, - "Creative": { - "id": "Creative", - "type": "object", - "description": "Contains properties of a Creative.", - "properties": { - "accountId": { - "type": "string", - "description": "Account ID of this creative. This field, if left unset, will be auto-generated for both insert and update operations. Applicable to all creative types.", - "format": "int64" - }, - "active": { - "type": "boolean", - "description": "Whether the creative is active. Applicable to all creative types." - }, - "adParameters": { - "type": "string", - "description": "Ad parameters user for VPAID creative. This is a read-only field. Applicable to the following creative types: all VPAID." - }, - "adTagKeys": { - "type": "array", - "description": "Keywords for a Rich Media creative. Keywords let you customize the creative settings of a Rich Media ad running on your site without having to contact the advertiser. You can use keywords to dynamically change the look or functionality of a creative. Applicable to the following creative types: all RICH_MEDIA, and all VPAID.", - "items": { - "type": "string" - } - }, - "advertiserId": { - "type": "string", - "description": "Advertiser ID of this creative. This is a required field. Applicable to all creative types.", - "format": "int64" - }, - "allowScriptAccess": { - "type": "boolean", - "description": "Whether script access is allowed for this creative. This is a read-only and deprecated field which will automatically be set to true on update. Applicable to the following creative types: FLASH_INPAGE." - }, - "archived": { - "type": "boolean", - "description": "Whether the creative is archived. Applicable to all creative types." - }, - "artworkType": { - "type": "string", - "description": "Type of artwork used for the creative. This is a read-only field. Applicable to the following creative types: all RICH_MEDIA, and all VPAID.", - "enum": [ - "ARTWORK_TYPE_FLASH", - "ARTWORK_TYPE_HTML5", - "ARTWORK_TYPE_IMAGE", - "ARTWORK_TYPE_MIXED" - ], - "enumDescriptions": [ - "", - "", - "", - "" - ] - }, - "authoringSource": { - "type": "string", - "description": "Source application where creative was authored. Presently, only DBM authored creatives will have this field set. Applicable to all creative types.", - "enum": [ - "CREATIVE_AUTHORING_SOURCE_DBM", - "CREATIVE_AUTHORING_SOURCE_DCM", - "CREATIVE_AUTHORING_SOURCE_STUDIO" - ], - "enumDescriptions": [ - "", - "", - "" - ] - }, - "authoringTool": { - "type": "string", - "description": "Authoring tool for HTML5 banner creatives. This is a read-only field. Applicable to the following creative types: HTML5_BANNER.", - "enum": [ - "NINJA", - "SWIFFY" - ], - "enumDescriptions": [ - "", - "" - ] - }, - "autoAdvanceImages": { - "type": "boolean", - "description": "Whether images are automatically advanced for image gallery creatives. Applicable to the following creative types: DISPLAY_IMAGE_GALLERY." - }, - "backgroundColor": { - "type": "string", - "description": "The 6-character HTML color code, beginning with #, for the background of the window area where the Flash file is displayed. Default is white. Applicable to the following creative types: FLASH_INPAGE." - }, - "backupImageClickThroughUrl": { - "$ref": "CreativeClickThroughUrl", - "description": "Click-through URL for backup image. Applicable to ENHANCED_BANNER when the primary asset type is not HTML_IMAGE." - }, - "backupImageFeatures": { - "type": "array", - "description": "List of feature dependencies that will cause a backup image to be served if the browser that serves the ad does not support them. Feature dependencies are features that a browser must be able to support in order to render your HTML5 creative asset correctly. This field is initially auto-generated to contain all features detected by DCM for all the assets of this creative and can then be modified by the client. To reset this field, copy over all the creativeAssets' detected features. Applicable to the following creative types: HTML5_BANNER. Applicable to DISPLAY when the primary asset type is not HTML_IMAGE.", - "items": { - "type": "string", - "enum": [ - "APPLICATION_CACHE", - "AUDIO", - "CANVAS", - "CANVAS_TEXT", - "CSS_ANIMATIONS", - "CSS_BACKGROUND_SIZE", - "CSS_BORDER_IMAGE", - "CSS_BORDER_RADIUS", - "CSS_BOX_SHADOW", - "CSS_COLUMNS", - "CSS_FLEX_BOX", - "CSS_FONT_FACE", - "CSS_GENERATED_CONTENT", - "CSS_GRADIENTS", - "CSS_HSLA", - "CSS_MULTIPLE_BGS", - "CSS_OPACITY", - "CSS_REFLECTIONS", - "CSS_RGBA", - "CSS_TEXT_SHADOW", - "CSS_TRANSFORMS", - "CSS_TRANSFORMS3D", - "CSS_TRANSITIONS", - "DRAG_AND_DROP", - "GEO_LOCATION", - "HASH_CHANGE", - "HISTORY", - "INDEXED_DB", - "INLINE_SVG", - "INPUT_ATTR_AUTOCOMPLETE", - "INPUT_ATTR_AUTOFOCUS", - "INPUT_ATTR_LIST", - "INPUT_ATTR_MAX", - "INPUT_ATTR_MIN", - "INPUT_ATTR_MULTIPLE", - "INPUT_ATTR_PATTERN", - "INPUT_ATTR_PLACEHOLDER", - "INPUT_ATTR_REQUIRED", - "INPUT_ATTR_STEP", - "INPUT_TYPE_COLOR", - "INPUT_TYPE_DATE", - "INPUT_TYPE_DATETIME", - "INPUT_TYPE_DATETIME_LOCAL", - "INPUT_TYPE_EMAIL", - "INPUT_TYPE_MONTH", - "INPUT_TYPE_NUMBER", - "INPUT_TYPE_RANGE", - "INPUT_TYPE_SEARCH", - "INPUT_TYPE_TEL", - "INPUT_TYPE_TIME", - "INPUT_TYPE_URL", - "INPUT_TYPE_WEEK", - "LOCAL_STORAGE", - "POST_MESSAGE", - "SESSION_STORAGE", - "SMIL", - "SVG_CLIP_PATHS", - "SVG_FE_IMAGE", - "SVG_FILTERS", - "SVG_HREF", - "TOUCH", - "VIDEO", - "WEBGL", - "WEB_SOCKETS", - "WEB_SQL_DATABASE", - "WEB_WORKERS" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - } - }, - "backupImageReportingLabel": { - "type": "string", - "description": "Reporting label used for HTML5 banner backup image. Applicable to the following creative types: DISPLAY when the primary asset type is not HTML_IMAGE." - }, - "backupImageTargetWindow": { - "$ref": "TargetWindow", - "description": "Target window for backup image. Applicable to the following creative types: FLASH_INPAGE and HTML5_BANNER. Applicable to DISPLAY when the primary asset type is not HTML_IMAGE." - }, - "clickTags": { - "type": "array", - "description": "Click tags of the creative. For DISPLAY, FLASH_INPAGE, and HTML5_BANNER creatives, this is a subset of detected click tags for the assets associated with this creative. After creating a flash asset, detected click tags will be returned in the creativeAssetMetadata. When inserting the creative, populate the creative clickTags field using the creativeAssetMetadata.clickTags field. For DISPLAY_IMAGE_GALLERY creatives, there should be exactly one entry in this list for each image creative asset. A click tag is matched with a corresponding creative asset by matching the clickTag.name field with the creativeAsset.assetIdentifier.name field. Applicable to the following creative types: DISPLAY_IMAGE_GALLERY, FLASH_INPAGE, HTML5_BANNER. Applicable to DISPLAY when the primary asset type is not HTML_IMAGE.", - "items": { - "$ref": "ClickTag" - } - }, - "commercialId": { - "type": "string", - "description": "Industry standard ID assigned to creative for reach and frequency. Applicable to INSTREAM_VIDEO_REDIRECT creatives." - }, - "companionCreatives": { - "type": "array", - "description": "List of companion creatives assigned to an in-Stream videocreative. Acceptable values include IDs of existing flash and image creatives. Applicable to the following creative types: all VPAID and all INSTREAM_VIDEO with dynamicAssetSelection set to false.", - "items": { - "type": "string", - "format": "int64" - } - }, - "compatibility": { - "type": "array", - "description": "Compatibilities associated with this creative. This is a read-only field. DISPLAY and DISPLAY_INTERSTITIAL refer to rendering either on desktop or on mobile devices or in mobile apps for regular or interstitial ads, respectively. APP and APP_INTERSTITIAL are for rendering in mobile apps. Only pre-existing creatives may have these compatibilities since new creatives will either be assigned DISPLAY or DISPLAY_INTERSTITIAL instead. IN_STREAM_VIDEO refers to rendering in in-stream video ads developed with the VAST standard. Applicable to all creative types.\n\nAcceptable values are:\n- \"APP\"\n- \"APP_INTERSTITIAL\"\n- \"IN_STREAM_VIDEO\"\n- \"DISPLAY\"\n- \"DISPLAY_INTERSTITIAL\"", - "items": { - "type": "string", - "enum": [ - "APP", - "APP_INTERSTITIAL", - "DISPLAY", - "DISPLAY_INTERSTITIAL", - "IN_STREAM_VIDEO" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "" - ] - } - }, - "convertFlashToHtml5": { - "type": "boolean", - "description": "Whether Flash assets associated with the creative need to be automatically converted to HTML5. This flag is enabled by default and users can choose to disable it if they don't want the system to generate and use HTML5 asset for this creative. Applicable to the following creative type: FLASH_INPAGE. Applicable to DISPLAY when the primary asset type is not HTML_IMAGE." - }, - "counterCustomEvents": { - "type": "array", - "description": "List of counter events configured for the creative. For DISPLAY_IMAGE_GALLERY creatives, these are read-only and auto-generated from clickTags. Applicable to the following creative types: DISPLAY_IMAGE_GALLERY, all RICH_MEDIA, and all VPAID.", - "items": { - "$ref": "CreativeCustomEvent" - } - }, - "creativeAssetSelection": { - "$ref": "CreativeAssetSelection", - "description": "Required if dynamicAssetSelection is true." + "methods": { + "get": { + "description": "Gets one country by ID.", + "httpMethod": "GET", + "id": "dfareporting.countries.get", + "parameterOrder": [ + "profileId", + "dartId" + ], + "parameters": { + "dartId": { + "description": "Country DART ID.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/countries/{dartId}", + "response": { + "$ref": "Country" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "description": "Retrieves a list of countries.", + "httpMethod": "GET", + "id": "dfareporting.countries.list", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/countries", + "response": { + "$ref": "CountriesListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } }, "creativeAssets": { - "type": "array", - "description": "Assets associated with a creative. Applicable to all but the following creative types: INTERNAL_REDIRECT, INTERSTITIAL_INTERNAL_REDIRECT, and REDIRECT", - "items": { - "$ref": "CreativeAsset" - } + "methods": { + "insert": { + "description": "Inserts a new creative asset.", + "httpMethod": "POST", + "id": "dfareporting.creativeAssets.insert", + "mediaUpload": { + "accept": [ + "*/*" + ], + "maxSize": "1024MB", + "protocols": { + "resumable": { + "multipart": true, + "path": "/resumable/upload/dfareporting/v3.0/userprofiles/{profileId}/creativeAssets/{advertiserId}/creativeAssets" + }, + "simple": { + "multipart": true, + "path": "/upload/dfareporting/v3.0/userprofiles/{profileId}/creativeAssets/{advertiserId}/creativeAssets" + } + } + }, + "parameterOrder": [ + "profileId", + "advertiserId" + ], + "parameters": { + "advertiserId": { + "description": "Advertiser ID of this creative. This is a required field.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/creativeAssets/{advertiserId}/creativeAssets", + "request": { + "$ref": "CreativeAssetMetadata" + }, + "response": { + "$ref": "CreativeAssetMetadata" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ], + "supportsMediaUpload": true + } + } }, - "creativeFieldAssignments": { - "type": "array", - "description": "Creative field assignments for this creative. Applicable to all creative types.", - "items": { - "$ref": "CreativeFieldAssignment" - } - }, - "customKeyValues": { - "type": "array", - "description": "Custom key-values for a Rich Media creative. Key-values let you customize the creative settings of a Rich Media ad running on your site without having to contact the advertiser. You can use key-values to dynamically change the look or functionality of a creative. Applicable to the following creative types: all RICH_MEDIA, and all VPAID.", - "items": { - "type": "string" - } - }, - "dynamicAssetSelection": { - "type": "boolean", - "description": "Set this to true to enable the use of rules to target individual assets in this creative. When set to true creativeAssetSelection must be set. This also controls asset-level companions. When this is true, companion creatives should be assigned to creative assets. Learn more. Applicable to INSTREAM_VIDEO creatives." - }, - "exitCustomEvents": { - "type": "array", - "description": "List of exit events configured for the creative. For DISPLAY and DISPLAY_IMAGE_GALLERY creatives, these are read-only and auto-generated from clickTags, For DISPLAY, an event is also created from the backupImageReportingLabel. Applicable to the following creative types: DISPLAY_IMAGE_GALLERY, all RICH_MEDIA, and all VPAID. Applicable to DISPLAY when the primary asset type is not HTML_IMAGE.", - "items": { - "$ref": "CreativeCustomEvent" - } - }, - "fsCommand": { - "$ref": "FsCommand", - "description": "OpenWindow FSCommand of this creative. This lets the SWF file communicate with either Flash Player or the program hosting Flash Player, such as a web browser. This is only triggered if allowScriptAccess field is true. Applicable to the following creative types: FLASH_INPAGE." - }, - "htmlCode": { - "type": "string", - "description": "HTML code for the creative. This is a required field when applicable. This field is ignored if htmlCodeLocked is true. Applicable to the following creative types: all CUSTOM, FLASH_INPAGE, and HTML5_BANNER, and all RICH_MEDIA." - }, - "htmlCodeLocked": { - "type": "boolean", - "description": "Whether HTML code is DCM-generated or manually entered. Set to true to ignore changes to htmlCode. Applicable to the following creative types: FLASH_INPAGE and HTML5_BANNER." - }, - "id": { - "type": "string", - "description": "ID of this creative. This is a read-only, auto-generated field. Applicable to all creative types.", - "format": "int64" - }, - "idDimensionValue": { - "$ref": "DimensionValue", - "description": "Dimension value for the ID of this creative. This is a read-only field. Applicable to all creative types." - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#creative\".", - "default": "dfareporting#creative" - }, - "lastModifiedInfo": { - "$ref": "LastModifiedInfo", - "description": "Creative last modification information. This is a read-only field. Applicable to all creative types." - }, - "latestTraffickedCreativeId": { - "type": "string", - "description": "Latest Studio trafficked creative ID associated with rich media and VPAID creatives. This is a read-only field. Applicable to the following creative types: all RICH_MEDIA, and all VPAID.", - "format": "int64" - }, - "name": { - "type": "string", - "description": "Name of the creative. This is a required field and must be less than 256 characters long. Applicable to all creative types." - }, - "overrideCss": { - "type": "string", - "description": "Override CSS value for rich media creatives. Applicable to the following creative types: all RICH_MEDIA." - }, - "politeLoadAssetId": { - "type": "string", - "description": "The asset ID of the polite load image asset. Applicable to the creative type: DISPLAY.", - "format": "int64" - }, - "progressOffset": { - "$ref": "VideoOffset", - "description": "Amount of time to play the video before counting a view. Applicable to the following creative types: all INSTREAM_VIDEO." - }, - "redirectUrl": { - "type": "string", - "description": "URL of hosted image or hosted video or another ad tag. For INSTREAM_VIDEO_REDIRECT creatives this is the in-stream video redirect URL. The standard for a VAST (Video Ad Serving Template) ad response allows for a redirect link to another VAST 2.0 or 3.0 call. This is a required field when applicable. Applicable to the following creative types: DISPLAY_REDIRECT, INTERNAL_REDIRECT, INTERSTITIAL_INTERNAL_REDIRECT, and INSTREAM_VIDEO_REDIRECT" - }, - "renderingId": { - "type": "string", - "description": "ID of current rendering version. This is a read-only field. Applicable to all creative types.", - "format": "int64" - }, - "renderingIdDimensionValue": { - "$ref": "DimensionValue", - "description": "Dimension value for the rendering ID of this creative. This is a read-only field. Applicable to all creative types." - }, - "requiredFlashPluginVersion": { - "type": "string", - "description": "The minimum required Flash plugin version for this creative. For example, 11.2.202.235. This is a read-only field. Applicable to the following creative types: all RICH_MEDIA, and all VPAID." - }, - "requiredFlashVersion": { - "type": "integer", - "description": "The internal Flash version for this creative as calculated by DoubleClick Studio. This is a read-only field. Applicable to the following creative types: FLASH_INPAGE all RICH_MEDIA, and all VPAID. Applicable to DISPLAY when the primary asset type is not HTML_IMAGE.", - "format": "int32" - }, - "size": { - "$ref": "Size", - "description": "Size associated with this creative. When inserting or updating a creative either the size ID field or size width and height fields can be used. This is a required field when applicable; however for IMAGE, FLASH_INPAGE creatives, and for DISPLAY creatives with a primary asset of type HTML_IMAGE, if left blank, this field will be automatically set using the actual size of the associated image assets. Applicable to the following creative types: DISPLAY, DISPLAY_IMAGE_GALLERY, FLASH_INPAGE, HTML5_BANNER, IMAGE, and all RICH_MEDIA." - }, - "skipOffset": { - "$ref": "VideoOffset", - "description": "Amount of time to play the video before the skip button appears. Applicable to the following creative types: all INSTREAM_VIDEO." - }, - "skippable": { - "type": "boolean", - "description": "Whether the user can choose to skip the creative. Applicable to the following creative types: all INSTREAM_VIDEO and all VPAID." - }, - "sslCompliant": { - "type": "boolean", - "description": "Whether the creative is SSL-compliant. This is a read-only field. Applicable to all creative types." - }, - "sslOverride": { - "type": "boolean", - "description": "Whether creative should be treated as SSL compliant even if the system scan shows it's not. Applicable to all creative types." - }, - "studioAdvertiserId": { - "type": "string", - "description": "Studio advertiser ID associated with rich media and VPAID creatives. This is a read-only field. Applicable to the following creative types: all RICH_MEDIA, and all VPAID.", - "format": "int64" - }, - "studioCreativeId": { - "type": "string", - "description": "Studio creative ID associated with rich media and VPAID creatives. This is a read-only field. Applicable to the following creative types: all RICH_MEDIA, and all VPAID.", - "format": "int64" - }, - "studioTraffickedCreativeId": { - "type": "string", - "description": "Studio trafficked creative ID associated with rich media and VPAID creatives. This is a read-only field. Applicable to the following creative types: all RICH_MEDIA, and all VPAID.", - "format": "int64" - }, - "subaccountId": { - "type": "string", - "description": "Subaccount ID of this creative. This field, if left unset, will be auto-generated for both insert and update operations. Applicable to all creative types.", - "format": "int64" - }, - "thirdPartyBackupImageImpressionsUrl": { - "type": "string", - "description": "Third-party URL used to record backup image impressions. Applicable to the following creative types: all RICH_MEDIA." - }, - "thirdPartyRichMediaImpressionsUrl": { - "type": "string", - "description": "Third-party URL used to record rich media impressions. Applicable to the following creative types: all RICH_MEDIA." - }, - "thirdPartyUrls": { - "type": "array", - "description": "Third-party URLs for tracking in-stream video creative events. Applicable to the following creative types: all INSTREAM_VIDEO and all VPAID.", - "items": { - "$ref": "ThirdPartyTrackingUrl" - } - }, - "timerCustomEvents": { - "type": "array", - "description": "List of timer events configured for the creative. For DISPLAY_IMAGE_GALLERY creatives, these are read-only and auto-generated from clickTags. Applicable to the following creative types: DISPLAY_IMAGE_GALLERY, all RICH_MEDIA, and all VPAID. Applicable to DISPLAY when the primary asset is not HTML_IMAGE.", - "items": { - "$ref": "CreativeCustomEvent" - } - }, - "totalFileSize": { - "type": "string", - "description": "Combined size of all creative assets. This is a read-only field. Applicable to the following creative types: all RICH_MEDIA, and all VPAID.", - "format": "int64" - }, - "type": { - "type": "string", - "description": "Type of this creative. This is a required field. Applicable to all creative types.\n\nNote: FLASH_INPAGE, HTML5_BANNER, and IMAGE are only used for existing creatives. New creatives should use DISPLAY as a replacement for these types.", - "enum": [ - "BRAND_SAFE_DEFAULT_INSTREAM_VIDEO", - "CUSTOM_DISPLAY", - "CUSTOM_DISPLAY_INTERSTITIAL", - "DISPLAY", - "DISPLAY_IMAGE_GALLERY", - "DISPLAY_REDIRECT", - "FLASH_INPAGE", - "HTML5_BANNER", - "IMAGE", - "INSTREAM_VIDEO", - "INSTREAM_VIDEO_REDIRECT", - "INTERNAL_REDIRECT", - "INTERSTITIAL_INTERNAL_REDIRECT", - "RICH_MEDIA_DISPLAY_BANNER", - "RICH_MEDIA_DISPLAY_EXPANDING", - "RICH_MEDIA_DISPLAY_INTERSTITIAL", - "RICH_MEDIA_DISPLAY_MULTI_FLOATING_INTERSTITIAL", - "RICH_MEDIA_IM_EXPAND", - "RICH_MEDIA_INPAGE_FLOATING", - "RICH_MEDIA_MOBILE_IN_APP", - "RICH_MEDIA_PEEL_DOWN", - "TRACKING_TEXT", - "VPAID_LINEAR_VIDEO", - "VPAID_NON_LINEAR_VIDEO" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "universalAdId": { - "$ref": "UniversalAdId", - "description": "A Universal Ad ID as per the VAST 4.0 spec. Applicable to the following creative types: INSTREAM_VIDEO and VPAID." - }, - "version": { - "type": "integer", - "description": "The version number helps you keep track of multiple versions of your creative in your reports. The version number will always be auto-generated during insert operations to start at 1. For tracking creatives the version cannot be incremented and will always remain at 1. For all other creative types the version can be incremented only by 1 during update operations. In addition, the version will be automatically incremented by 1 when undergoing Rich Media creative merging. Applicable to all creative types.", - "format": "int32" - }, - "videoDescription": { - "type": "string", - "description": "Description of the video ad. Applicable to the following creative types: all INSTREAM_VIDEO and all VPAID." - }, - "videoDuration": { - "type": "number", - "description": "Creative video duration in seconds. This is a read-only field. Applicable to the following creative types: INSTREAM_VIDEO, all RICH_MEDIA, and all VPAID.", - "format": "float" - } - } - }, - "CreativeAsset": { - "id": "CreativeAsset", - "type": "object", - "description": "Creative Asset.", - "properties": { - "actionScript3": { - "type": "boolean", - "description": "Whether ActionScript3 is enabled for the flash asset. This is a read-only field. Applicable to the following creative type: FLASH_INPAGE. Applicable to DISPLAY when the primary asset type is not HTML_IMAGE." - }, - "active": { - "type": "boolean", - "description": "Whether the video asset is active. This is a read-only field for VPAID_NON_LINEAR_VIDEO assets. Applicable to the following creative types: INSTREAM_VIDEO and all VPAID." - }, - "alignment": { - "type": "string", - "description": "Possible alignments for an asset. This is a read-only field. Applicable to the following creative types: RICH_MEDIA_DISPLAY_MULTI_FLOATING_INTERSTITIAL.", - "enum": [ - "ALIGNMENT_BOTTOM", - "ALIGNMENT_LEFT", - "ALIGNMENT_RIGHT", - "ALIGNMENT_TOP" - ], - "enumDescriptions": [ - "", - "", - "", - "" - ] - }, - "artworkType": { - "type": "string", - "description": "Artwork type of rich media creative. This is a read-only field. Applicable to the following creative types: all RICH_MEDIA.", - "enum": [ - "ARTWORK_TYPE_FLASH", - "ARTWORK_TYPE_HTML5", - "ARTWORK_TYPE_IMAGE", - "ARTWORK_TYPE_MIXED" - ], - "enumDescriptions": [ - "", - "", - "", - "" - ] - }, - "assetIdentifier": { - "$ref": "CreativeAssetId", - "description": "Identifier of this asset. This is the same identifier returned during creative asset insert operation. This is a required field. Applicable to all but the following creative types: all REDIRECT and TRACKING_TEXT." - }, - "backupImageExit": { - "$ref": "CreativeCustomEvent", - "description": "Exit event configured for the backup image. Applicable to the following creative types: all RICH_MEDIA." - }, - "bitRate": { - "type": "integer", - "description": "Detected bit-rate for video asset. This is a read-only field. Applicable to the following creative types: INSTREAM_VIDEO and all VPAID.", - "format": "int32" - }, - "childAssetType": { - "type": "string", - "description": "Rich media child asset type. This is a read-only field. Applicable to the following creative types: all VPAID.", - "enum": [ - "CHILD_ASSET_TYPE_DATA", - "CHILD_ASSET_TYPE_FLASH", - "CHILD_ASSET_TYPE_IMAGE", - "CHILD_ASSET_TYPE_VIDEO" - ], - "enumDescriptions": [ - "", - "", - "", - "" - ] - }, - "collapsedSize": { - "$ref": "Size", - "description": "Size of an asset when collapsed. This is a read-only field. Applicable to the following creative types: all RICH_MEDIA and all VPAID. Additionally, applicable to assets whose displayType is ASSET_DISPLAY_TYPE_EXPANDING or ASSET_DISPLAY_TYPE_PEEL_DOWN." - }, - "companionCreativeIds": { - "type": "array", - "description": "List of companion creatives assigned to an in-stream video creative asset. Acceptable values include IDs of existing flash and image creatives. Applicable to INSTREAM_VIDEO creative type with dynamicAssetSelection set to true.", - "items": { - "type": "string", - "format": "int64" - } - }, - "customStartTimeValue": { - "type": "integer", - "description": "Custom start time in seconds for making the asset visible. Applicable to the following creative types: all RICH_MEDIA. Value must be greater than or equal to 0.", - "format": "int32" - }, - "detectedFeatures": { - "type": "array", - "description": "List of feature dependencies for the creative asset that are detected by DCM. Feature dependencies are features that a browser must be able to support in order to render your HTML5 creative correctly. This is a read-only, auto-generated field. Applicable to the following creative types: HTML5_BANNER. Applicable to DISPLAY when the primary asset type is not HTML_IMAGE.", - "items": { - "type": "string", - "enum": [ - "APPLICATION_CACHE", - "AUDIO", - "CANVAS", - "CANVAS_TEXT", - "CSS_ANIMATIONS", - "CSS_BACKGROUND_SIZE", - "CSS_BORDER_IMAGE", - "CSS_BORDER_RADIUS", - "CSS_BOX_SHADOW", - "CSS_COLUMNS", - "CSS_FLEX_BOX", - "CSS_FONT_FACE", - "CSS_GENERATED_CONTENT", - "CSS_GRADIENTS", - "CSS_HSLA", - "CSS_MULTIPLE_BGS", - "CSS_OPACITY", - "CSS_REFLECTIONS", - "CSS_RGBA", - "CSS_TEXT_SHADOW", - "CSS_TRANSFORMS", - "CSS_TRANSFORMS3D", - "CSS_TRANSITIONS", - "DRAG_AND_DROP", - "GEO_LOCATION", - "HASH_CHANGE", - "HISTORY", - "INDEXED_DB", - "INLINE_SVG", - "INPUT_ATTR_AUTOCOMPLETE", - "INPUT_ATTR_AUTOFOCUS", - "INPUT_ATTR_LIST", - "INPUT_ATTR_MAX", - "INPUT_ATTR_MIN", - "INPUT_ATTR_MULTIPLE", - "INPUT_ATTR_PATTERN", - "INPUT_ATTR_PLACEHOLDER", - "INPUT_ATTR_REQUIRED", - "INPUT_ATTR_STEP", - "INPUT_TYPE_COLOR", - "INPUT_TYPE_DATE", - "INPUT_TYPE_DATETIME", - "INPUT_TYPE_DATETIME_LOCAL", - "INPUT_TYPE_EMAIL", - "INPUT_TYPE_MONTH", - "INPUT_TYPE_NUMBER", - "INPUT_TYPE_RANGE", - "INPUT_TYPE_SEARCH", - "INPUT_TYPE_TEL", - "INPUT_TYPE_TIME", - "INPUT_TYPE_URL", - "INPUT_TYPE_WEEK", - "LOCAL_STORAGE", - "POST_MESSAGE", - "SESSION_STORAGE", - "SMIL", - "SVG_CLIP_PATHS", - "SVG_FE_IMAGE", - "SVG_FILTERS", - "SVG_HREF", - "TOUCH", - "VIDEO", - "WEBGL", - "WEB_SOCKETS", - "WEB_SQL_DATABASE", - "WEB_WORKERS" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - } - }, - "displayType": { - "type": "string", - "description": "Type of rich media asset. This is a read-only field. Applicable to the following creative types: all RICH_MEDIA.", - "enum": [ - "ASSET_DISPLAY_TYPE_BACKDROP", - "ASSET_DISPLAY_TYPE_EXPANDING", - "ASSET_DISPLAY_TYPE_FLASH_IN_FLASH", - "ASSET_DISPLAY_TYPE_FLASH_IN_FLASH_EXPANDING", - "ASSET_DISPLAY_TYPE_FLOATING", - "ASSET_DISPLAY_TYPE_INPAGE", - "ASSET_DISPLAY_TYPE_OVERLAY", - "ASSET_DISPLAY_TYPE_PEEL_DOWN", - "ASSET_DISPLAY_TYPE_VPAID_LINEAR", - "ASSET_DISPLAY_TYPE_VPAID_NON_LINEAR" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "duration": { - "type": "integer", - "description": "Duration in seconds for which an asset will be displayed. Applicable to the following creative types: INSTREAM_VIDEO and VPAID_LINEAR_VIDEO. Value must be greater than or equal to 1.", - "format": "int32" - }, - "durationType": { - "type": "string", - "description": "Duration type for which an asset will be displayed. Applicable to the following creative types: all RICH_MEDIA.", - "enum": [ - "ASSET_DURATION_TYPE_AUTO", - "ASSET_DURATION_TYPE_CUSTOM", - "ASSET_DURATION_TYPE_NONE" - ], - "enumDescriptions": [ - "", - "", - "" - ] - }, - "expandedDimension": { - "$ref": "Size", - "description": "Detected expanded dimension for video asset. This is a read-only field. Applicable to the following creative types: INSTREAM_VIDEO and all VPAID." - }, - "fileSize": { - "type": "string", - "description": "File size associated with this creative asset. This is a read-only field. Applicable to all but the following creative types: all REDIRECT and TRACKING_TEXT.", - "format": "int64" - }, - "flashVersion": { - "type": "integer", - "description": "Flash version of the asset. This is a read-only field. Applicable to the following creative types: FLASH_INPAGE, all RICH_MEDIA, and all VPAID. Applicable to DISPLAY when the primary asset type is not HTML_IMAGE.", - "format": "int32" - }, - "hideFlashObjects": { - "type": "boolean", - "description": "Whether to hide Flash objects flag for an asset. Applicable to the following creative types: all RICH_MEDIA." - }, - "hideSelectionBoxes": { - "type": "boolean", - "description": "Whether to hide selection boxes flag for an asset. Applicable to the following creative types: all RICH_MEDIA." - }, - "horizontallyLocked": { - "type": "boolean", - "description": "Whether the asset is horizontally locked. This is a read-only field. Applicable to the following creative types: all RICH_MEDIA." - }, - "id": { - "type": "string", - "description": "Numeric ID of this creative asset. This is a required field and should not be modified. Applicable to all but the following creative types: all REDIRECT and TRACKING_TEXT.", - "format": "int64" - }, - "idDimensionValue": { - "$ref": "DimensionValue", - "description": "Dimension value for the ID of the asset. This is a read-only, auto-generated field." - }, - "mimeType": { - "type": "string", - "description": "Detected MIME type for video asset. This is a read-only field. Applicable to the following creative types: INSTREAM_VIDEO and all VPAID." - }, - "offset": { - "$ref": "OffsetPosition", - "description": "Offset position for an asset in collapsed mode. This is a read-only field. Applicable to the following creative types: all RICH_MEDIA and all VPAID. Additionally, only applicable to assets whose displayType is ASSET_DISPLAY_TYPE_EXPANDING or ASSET_DISPLAY_TYPE_PEEL_DOWN." - }, - "orientation": { - "type": "string", - "description": "Orientation of video asset. This is a read-only, auto-generated field.", - "enum": [ - "LANDSCAPE", - "PORTRAIT", - "SQUARE" - ], - "enumDescriptions": [ - "", - "", - "" - ] - }, - "originalBackup": { - "type": "boolean", - "description": "Whether the backup asset is original or changed by the user in DCM. Applicable to the following creative types: all RICH_MEDIA." - }, - "position": { - "$ref": "OffsetPosition", - "description": "Offset position for an asset. Applicable to the following creative types: all RICH_MEDIA." - }, - "positionLeftUnit": { - "type": "string", - "description": "Offset left unit for an asset. This is a read-only field. Applicable to the following creative types: all RICH_MEDIA.", - "enum": [ - "OFFSET_UNIT_PERCENT", - "OFFSET_UNIT_PIXEL", - "OFFSET_UNIT_PIXEL_FROM_CENTER" - ], - "enumDescriptions": [ - "", - "", - "" - ] - }, - "positionTopUnit": { - "type": "string", - "description": "Offset top unit for an asset. This is a read-only field if the asset displayType is ASSET_DISPLAY_TYPE_OVERLAY. Applicable to the following creative types: all RICH_MEDIA.", - "enum": [ - "OFFSET_UNIT_PERCENT", - "OFFSET_UNIT_PIXEL", - "OFFSET_UNIT_PIXEL_FROM_CENTER" - ], - "enumDescriptions": [ - "", - "", - "" - ] - }, - "progressiveServingUrl": { - "type": "string", - "description": "Progressive URL for video asset. This is a read-only field. Applicable to the following creative types: INSTREAM_VIDEO and all VPAID." - }, - "pushdown": { - "type": "boolean", - "description": "Whether the asset pushes down other content. Applicable to the following creative types: all RICH_MEDIA. Additionally, only applicable when the asset offsets are 0, the collapsedSize.width matches size.width, and the collapsedSize.height is less than size.height." - }, - "pushdownDuration": { - "type": "number", - "description": "Pushdown duration in seconds for an asset. Applicable to the following creative types: all RICH_MEDIA.Additionally, only applicable when the asset pushdown field is true, the offsets are 0, the collapsedSize.width matches size.width, and the collapsedSize.height is less than size.height. Acceptable values are 0 to 9.99, inclusive.", - "format": "float" - }, - "role": { - "type": "string", - "description": "Role of the asset in relation to creative. Applicable to all but the following creative types: all REDIRECT and TRACKING_TEXT. This is a required field.\nPRIMARY applies to DISPLAY, FLASH_INPAGE, HTML5_BANNER, IMAGE, DISPLAY_IMAGE_GALLERY, all RICH_MEDIA (which may contain multiple primary assets), and all VPAID creatives.\nBACKUP_IMAGE applies to FLASH_INPAGE, HTML5_BANNER, all RICH_MEDIA, and all VPAID creatives. Applicable to DISPLAY when the primary asset type is not HTML_IMAGE.\nADDITIONAL_IMAGE and ADDITIONAL_FLASH apply to FLASH_INPAGE creatives.\nOTHER refers to assets from sources other than DCM, such as Studio uploaded assets, applicable to all RICH_MEDIA and all VPAID creatives.\nPARENT_VIDEO refers to videos uploaded by the user in DCM and is applicable to INSTREAM_VIDEO and VPAID_LINEAR_VIDEO creatives.\nTRANSCODED_VIDEO refers to videos transcoded by DCM from PARENT_VIDEO assets and is applicable to INSTREAM_VIDEO and VPAID_LINEAR_VIDEO creatives.\nALTERNATE_VIDEO refers to the DCM representation of child asset videos from Studio, and is applicable to VPAID_LINEAR_VIDEO creatives. These cannot be added or removed within DCM.\nFor VPAID_LINEAR_VIDEO creatives, PARENT_VIDEO, TRANSCODED_VIDEO and ALTERNATE_VIDEO assets that are marked active serve as backup in case the VPAID creative cannot be served. Only PARENT_VIDEO assets can be added or removed for an INSTREAM_VIDEO or VPAID_LINEAR_VIDEO creative.", - "enum": [ - "ADDITIONAL_FLASH", - "ADDITIONAL_IMAGE", - "ALTERNATE_VIDEO", - "BACKUP_IMAGE", - "OTHER", - "PARENT_VIDEO", - "PRIMARY", - "TRANSCODED_VIDEO" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "size": { - "$ref": "Size", - "description": "Size associated with this creative asset. This is a required field when applicable; however for IMAGE and FLASH_INPAGE, creatives if left blank, this field will be automatically set using the actual size of the associated image asset. Applicable to the following creative types: DISPLAY_IMAGE_GALLERY, FLASH_INPAGE, HTML5_BANNER, IMAGE, and all RICH_MEDIA. Applicable to DISPLAY when the primary asset type is not HTML_IMAGE." - }, - "sslCompliant": { - "type": "boolean", - "description": "Whether the asset is SSL-compliant. This is a read-only field. Applicable to all but the following creative types: all REDIRECT and TRACKING_TEXT." - }, - "startTimeType": { - "type": "string", - "description": "Initial wait time type before making the asset visible. Applicable to the following creative types: all RICH_MEDIA.", - "enum": [ - "ASSET_START_TIME_TYPE_CUSTOM", - "ASSET_START_TIME_TYPE_NONE" - ], - "enumDescriptions": [ - "", - "" - ] - }, - "streamingServingUrl": { - "type": "string", - "description": "Streaming URL for video asset. This is a read-only field. Applicable to the following creative types: INSTREAM_VIDEO and all VPAID." - }, - "transparency": { - "type": "boolean", - "description": "Whether the asset is transparent. Applicable to the following creative types: all RICH_MEDIA. Additionally, only applicable to HTML5 assets." - }, - "verticallyLocked": { - "type": "boolean", - "description": "Whether the asset is vertically locked. This is a read-only field. Applicable to the following creative types: all RICH_MEDIA." - }, - "videoDuration": { - "type": "number", - "description": "Detected video duration for video asset. This is a read-only field. Applicable to the following creative types: INSTREAM_VIDEO and all VPAID.", - "format": "float" - }, - "windowMode": { - "type": "string", - "description": "Window mode options for flash assets. Applicable to the following creative types: FLASH_INPAGE, RICH_MEDIA_DISPLAY_EXPANDING, RICH_MEDIA_IM_EXPAND, RICH_MEDIA_DISPLAY_BANNER, and RICH_MEDIA_INPAGE_FLOATING.", - "enum": [ - "OPAQUE", - "TRANSPARENT", - "WINDOW" - ], - "enumDescriptions": [ - "", - "", - "" - ] - }, - "zIndex": { - "type": "integer", - "description": "zIndex value of an asset. Applicable to the following creative types: all RICH_MEDIA.Additionally, only applicable to assets whose displayType is NOT one of the following types: ASSET_DISPLAY_TYPE_INPAGE or ASSET_DISPLAY_TYPE_OVERLAY. Acceptable values are -999999999 to 999999999, inclusive.", - "format": "int32" - }, - "zipFilename": { - "type": "string", - "description": "File name of zip file. This is a read-only field. Applicable to the following creative types: HTML5_BANNER." - }, - "zipFilesize": { - "type": "string", - "description": "Size of zip file. This is a read-only field. Applicable to the following creative types: HTML5_BANNER." - } - } - }, - "CreativeAssetId": { - "id": "CreativeAssetId", - "type": "object", - "description": "Creative Asset ID.", - "properties": { - "name": { - "type": "string", - "description": "Name of the creative asset. This is a required field while inserting an asset. After insertion, this assetIdentifier is used to identify the uploaded asset. Characters in the name must be alphanumeric or one of the following: \".-_ \". Spaces are allowed." - }, - "type": { - "type": "string", - "description": "Type of asset to upload. This is a required field. FLASH and IMAGE are no longer supported for new uploads. All image assets should use HTML_IMAGE.", - "enum": [ - "FLASH", - "HTML", - "HTML_IMAGE", - "IMAGE", - "VIDEO" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "" - ] - } - } - }, - "CreativeAssetMetadata": { - "id": "CreativeAssetMetadata", - "type": "object", - "description": "CreativeAssets contains properties of a creative asset file which will be uploaded or has already been uploaded. Refer to the creative sample code for how to upload assets and insert a creative.", - "properties": { - "assetIdentifier": { - "$ref": "CreativeAssetId", - "description": "ID of the creative asset. This is a required field." - }, - "clickTags": { - "type": "array", - "description": "List of detected click tags for assets. This is a read-only auto-generated field.", - "items": { - "$ref": "ClickTag" - } - }, - "detectedFeatures": { - "type": "array", - "description": "List of feature dependencies for the creative asset that are detected by DCM. Feature dependencies are features that a browser must be able to support in order to render your HTML5 creative correctly. This is a read-only, auto-generated field.", - "items": { - "type": "string", - "enum": [ - "APPLICATION_CACHE", - "AUDIO", - "CANVAS", - "CANVAS_TEXT", - "CSS_ANIMATIONS", - "CSS_BACKGROUND_SIZE", - "CSS_BORDER_IMAGE", - "CSS_BORDER_RADIUS", - "CSS_BOX_SHADOW", - "CSS_COLUMNS", - "CSS_FLEX_BOX", - "CSS_FONT_FACE", - "CSS_GENERATED_CONTENT", - "CSS_GRADIENTS", - "CSS_HSLA", - "CSS_MULTIPLE_BGS", - "CSS_OPACITY", - "CSS_REFLECTIONS", - "CSS_RGBA", - "CSS_TEXT_SHADOW", - "CSS_TRANSFORMS", - "CSS_TRANSFORMS3D", - "CSS_TRANSITIONS", - "DRAG_AND_DROP", - "GEO_LOCATION", - "HASH_CHANGE", - "HISTORY", - "INDEXED_DB", - "INLINE_SVG", - "INPUT_ATTR_AUTOCOMPLETE", - "INPUT_ATTR_AUTOFOCUS", - "INPUT_ATTR_LIST", - "INPUT_ATTR_MAX", - "INPUT_ATTR_MIN", - "INPUT_ATTR_MULTIPLE", - "INPUT_ATTR_PATTERN", - "INPUT_ATTR_PLACEHOLDER", - "INPUT_ATTR_REQUIRED", - "INPUT_ATTR_STEP", - "INPUT_TYPE_COLOR", - "INPUT_TYPE_DATE", - "INPUT_TYPE_DATETIME", - "INPUT_TYPE_DATETIME_LOCAL", - "INPUT_TYPE_EMAIL", - "INPUT_TYPE_MONTH", - "INPUT_TYPE_NUMBER", - "INPUT_TYPE_RANGE", - "INPUT_TYPE_SEARCH", - "INPUT_TYPE_TEL", - "INPUT_TYPE_TIME", - "INPUT_TYPE_URL", - "INPUT_TYPE_WEEK", - "LOCAL_STORAGE", - "POST_MESSAGE", - "SESSION_STORAGE", - "SMIL", - "SVG_CLIP_PATHS", - "SVG_FE_IMAGE", - "SVG_FILTERS", - "SVG_HREF", - "TOUCH", - "VIDEO", - "WEBGL", - "WEB_SOCKETS", - "WEB_SQL_DATABASE", - "WEB_WORKERS" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - } - }, - "id": { - "type": "string", - "description": "Numeric ID of the asset. This is a read-only, auto-generated field.", - "format": "int64" - }, - "idDimensionValue": { - "$ref": "DimensionValue", - "description": "Dimension value for the numeric ID of the asset. This is a read-only, auto-generated field." - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#creativeAssetMetadata\".", - "default": "dfareporting#creativeAssetMetadata" - }, - "warnedValidationRules": { - "type": "array", - "description": "Rules validated during code generation that generated a warning. This is a read-only, auto-generated field.\n\nPossible values are:\n- \"ADMOB_REFERENCED\"\n- \"ASSET_FORMAT_UNSUPPORTED_DCM\"\n- \"ASSET_INVALID\"\n- \"CLICK_TAG_HARD_CODED\"\n- \"CLICK_TAG_INVALID\"\n- \"CLICK_TAG_IN_GWD\"\n- \"CLICK_TAG_MISSING\"\n- \"CLICK_TAG_MORE_THAN_ONE\"\n- \"CLICK_TAG_NON_TOP_LEVEL\"\n- \"COMPONENT_UNSUPPORTED_DCM\"\n- \"ENABLER_UNSUPPORTED_METHOD_DCM\"\n- \"EXTERNAL_FILE_REFERENCED\"\n- \"FILE_DETAIL_EMPTY\"\n- \"FILE_TYPE_INVALID\"\n- \"GWD_PROPERTIES_INVALID\"\n- \"HTML5_FEATURE_UNSUPPORTED\"\n- \"LINKED_FILE_NOT_FOUND\"\n- \"MAX_FLASH_VERSION_11\"\n- \"MRAID_REFERENCED\"\n- \"NOT_SSL_COMPLIANT\"\n- \"ORPHANED_ASSET\"\n- \"PRIMARY_HTML_MISSING\"\n- \"SVG_INVALID\"\n- \"ZIP_INVALID\"", - "items": { - "type": "string", - "enum": [ - "ADMOB_REFERENCED", - "ASSET_FORMAT_UNSUPPORTED_DCM", - "ASSET_INVALID", - "CLICK_TAG_HARD_CODED", - "CLICK_TAG_INVALID", - "CLICK_TAG_IN_GWD", - "CLICK_TAG_MISSING", - "CLICK_TAG_MORE_THAN_ONE", - "CLICK_TAG_NON_TOP_LEVEL", - "COMPONENT_UNSUPPORTED_DCM", - "ENABLER_UNSUPPORTED_METHOD_DCM", - "EXTERNAL_FILE_REFERENCED", - "FILE_DETAIL_EMPTY", - "FILE_TYPE_INVALID", - "GWD_PROPERTIES_INVALID", - "HTML5_FEATURE_UNSUPPORTED", - "LINKED_FILE_NOT_FOUND", - "MAX_FLASH_VERSION_11", - "MRAID_REFERENCED", - "NOT_SSL_COMPLIANT", - "ORPHANED_ASSET", - "PRIMARY_HTML_MISSING", - "SVG_INVALID", - "ZIP_INVALID" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - } - } - } - }, - "CreativeAssetSelection": { - "id": "CreativeAssetSelection", - "type": "object", - "description": "Encapsulates the list of rules for asset selection and a default asset in case none of the rules match. Applicable to INSTREAM_VIDEO creatives.", - "properties": { - "defaultAssetId": { - "type": "string", - "description": "A creativeAssets[].id. This should refer to one of the parent assets in this creative, and will be served if none of the rules match. This is a required field.", - "format": "int64" - }, - "rules": { - "type": "array", - "description": "Rules determine which asset will be served to a viewer. Rules will be evaluated in the order in which they are stored in this list. This list must contain at least one rule. Applicable to INSTREAM_VIDEO creatives.", - "items": { - "$ref": "Rule" - } - } - } - }, - "CreativeAssignment": { - "id": "CreativeAssignment", - "type": "object", - "description": "Creative Assignment.", - "properties": { - "active": { - "type": "boolean", - "description": "Whether this creative assignment is active. When true, the creative will be included in the ad's rotation." - }, - "applyEventTags": { - "type": "boolean", - "description": "Whether applicable event tags should fire when this creative assignment is rendered. If this value is unset when the ad is inserted or updated, it will default to true for all creative types EXCEPT for INTERNAL_REDIRECT, INTERSTITIAL_INTERNAL_REDIRECT, and INSTREAM_VIDEO." - }, - "clickThroughUrl": { - "$ref": "ClickThroughUrl", - "description": "Click-through URL of the creative assignment." - }, - "companionCreativeOverrides": { - "type": "array", - "description": "Companion creative overrides for this creative assignment. Applicable to video ads.", - "items": { - "$ref": "CompanionClickThroughOverride" - } - }, - "creativeGroupAssignments": { - "type": "array", - "description": "Creative group assignments for this creative assignment. Only one assignment per creative group number is allowed for a maximum of two assignments.", - "items": { - "$ref": "CreativeGroupAssignment" - } - }, - "creativeId": { - "type": "string", - "description": "ID of the creative to be assigned. This is a required field.", - "format": "int64" - }, - "creativeIdDimensionValue": { - "$ref": "DimensionValue", - "description": "Dimension value for the ID of the creative. This is a read-only, auto-generated field." - }, - "endTime": { - "type": "string", - "description": "Date and time that the assigned creative should stop serving. Must be later than the start time.", - "format": "date-time" - }, - "richMediaExitOverrides": { - "type": "array", - "description": "Rich media exit overrides for this creative assignment.\nApplicable when the creative type is any of the following: \n- DISPLAY\n- RICH_MEDIA_INPAGE\n- RICH_MEDIA_INPAGE_FLOATING\n- RICH_MEDIA_IM_EXPAND\n- RICH_MEDIA_EXPANDING\n- RICH_MEDIA_INTERSTITIAL_FLOAT\n- RICH_MEDIA_MOBILE_IN_APP\n- RICH_MEDIA_MULTI_FLOATING\n- RICH_MEDIA_PEEL_DOWN\n- VPAID_LINEAR\n- VPAID_NON_LINEAR", - "items": { - "$ref": "RichMediaExitOverride" - } - }, - "sequence": { - "type": "integer", - "description": "Sequence number of the creative assignment, applicable when the rotation type is CREATIVE_ROTATION_TYPE_SEQUENTIAL. Acceptable values are 1 to 65535, inclusive.", - "format": "int32" - }, - "sslCompliant": { - "type": "boolean", - "description": "Whether the creative to be assigned is SSL-compliant. This is a read-only field that is auto-generated when the ad is inserted or updated." - }, - "startTime": { - "type": "string", - "description": "Date and time that the assigned creative should start serving.", - "format": "date-time" - }, - "weight": { - "type": "integer", - "description": "Weight of the creative assignment, applicable when the rotation type is CREATIVE_ROTATION_TYPE_RANDOM. Value must be greater than or equal to 1.", - "format": "int32" - } - } - }, - "CreativeClickThroughUrl": { - "id": "CreativeClickThroughUrl", - "type": "object", - "description": "Click-through URL", - "properties": { - "computedClickThroughUrl": { - "type": "string", - "description": "Read-only convenience field representing the actual URL that will be used for this click-through. The URL is computed as follows: \n- If landingPageId is specified then that landing page's URL is assigned to this field.\n- Otherwise, the customClickThroughUrl is assigned to this field." - }, - "customClickThroughUrl": { - "type": "string", - "description": "Custom click-through URL. Applicable if the landingPageId field is left unset." - }, - "landingPageId": { - "type": "string", - "description": "ID of the landing page for the click-through URL.", - "format": "int64" - } - } - }, - "CreativeCustomEvent": { - "id": "CreativeCustomEvent", - "type": "object", - "description": "Creative Custom Event.", - "properties": { - "advertiserCustomEventId": { - "type": "string", - "description": "Unique ID of this event used by DDM Reporting and Data Transfer. This is a read-only field.", - "format": "int64" - }, - "advertiserCustomEventName": { - "type": "string", - "description": "User-entered name for the event." - }, - "advertiserCustomEventType": { - "type": "string", - "description": "Type of the event. This is a read-only field.", - "enum": [ - "ADVERTISER_EVENT_COUNTER", - "ADVERTISER_EVENT_EXIT", - "ADVERTISER_EVENT_TIMER" - ], - "enumDescriptions": [ - "", - "", - "" - ] - }, - "artworkLabel": { - "type": "string", - "description": "Artwork label column, used to link events in DCM back to events in Studio. This is a required field and should not be modified after insertion." - }, - "artworkType": { - "type": "string", - "description": "Artwork type used by the creative.This is a read-only field.", - "enum": [ - "ARTWORK_TYPE_FLASH", - "ARTWORK_TYPE_HTML5", - "ARTWORK_TYPE_IMAGE", - "ARTWORK_TYPE_MIXED" - ], - "enumDescriptions": [ - "", - "", - "", - "" - ] - }, - "exitClickThroughUrl": { - "$ref": "CreativeClickThroughUrl", - "description": "Exit click-through URL for the event. This field is used only for exit events." - }, - "id": { - "type": "string", - "description": "ID of this event. This is a required field and should not be modified after insertion.", - "format": "int64" - }, - "popupWindowProperties": { - "$ref": "PopupWindowProperties", - "description": "Properties for rich media popup windows. This field is used only for exit events." - }, - "targetType": { - "type": "string", - "description": "Target type used by the event.", - "enum": [ - "TARGET_BLANK", - "TARGET_PARENT", - "TARGET_POPUP", - "TARGET_SELF", - "TARGET_TOP" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "" - ] - }, - "videoReportingId": { - "type": "string", - "description": "Video reporting ID, used to differentiate multiple videos in a single creative. This is a read-only field." - } - } - }, - "CreativeField": { - "id": "CreativeField", - "type": "object", - "description": "Contains properties of a creative field.", - "properties": { - "accountId": { - "type": "string", - "description": "Account ID of this creative field. This is a read-only field that can be left blank.", - "format": "int64" - }, - "advertiserId": { - "type": "string", - "description": "Advertiser ID of this creative field. This is a required field on insertion.", - "format": "int64" - }, - "advertiserIdDimensionValue": { - "$ref": "DimensionValue", - "description": "Dimension value for the ID of the advertiser. This is a read-only, auto-generated field." - }, - "id": { - "type": "string", - "description": "ID of this creative field. This is a read-only, auto-generated field.", - "format": "int64" - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#creativeField\".", - "default": "dfareporting#creativeField" - }, - "name": { - "type": "string", - "description": "Name of this creative field. This is a required field and must be less than 256 characters long and unique among creative fields of the same advertiser." - }, - "subaccountId": { - "type": "string", - "description": "Subaccount ID of this creative field. This is a read-only field that can be left blank.", - "format": "int64" - } - } - }, - "CreativeFieldAssignment": { - "id": "CreativeFieldAssignment", - "type": "object", - "description": "Creative Field Assignment.", - "properties": { - "creativeFieldId": { - "type": "string", - "description": "ID of the creative field.", - "format": "int64" - }, - "creativeFieldValueId": { - "type": "string", - "description": "ID of the creative field value.", - "format": "int64" - } - } - }, - "CreativeFieldValue": { - "id": "CreativeFieldValue", - "type": "object", - "description": "Contains properties of a creative field value.", - "properties": { - "id": { - "type": "string", - "description": "ID of this creative field value. This is a read-only, auto-generated field.", - "format": "int64" - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#creativeFieldValue\".", - "default": "dfareporting#creativeFieldValue" - }, - "value": { - "type": "string", - "description": "Value of this creative field value. It needs to be less than 256 characters in length and unique per creative field." - } - } - }, - "CreativeFieldValuesListResponse": { - "id": "CreativeFieldValuesListResponse", - "type": "object", - "description": "Creative Field Value List Response", - "properties": { "creativeFieldValues": { - "type": "array", - "description": "Creative field value collection.", - "items": { - "$ref": "CreativeFieldValue" - } + "methods": { + "delete": { + "description": "Deletes an existing creative field value.", + "httpMethod": "DELETE", + "id": "dfareporting.creativeFieldValues.delete", + "parameterOrder": [ + "profileId", + "creativeFieldId", + "id" + ], + "parameters": { + "creativeFieldId": { + "description": "Creative field ID for this creative field value.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "id": { + "description": "Creative Field Value ID", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/creativeFields/{creativeFieldId}/creativeFieldValues/{id}", + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "get": { + "description": "Gets one creative field value by ID.", + "httpMethod": "GET", + "id": "dfareporting.creativeFieldValues.get", + "parameterOrder": [ + "profileId", + "creativeFieldId", + "id" + ], + "parameters": { + "creativeFieldId": { + "description": "Creative field ID for this creative field value.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "id": { + "description": "Creative Field Value ID", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/creativeFields/{creativeFieldId}/creativeFieldValues/{id}", + "response": { + "$ref": "CreativeFieldValue" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "insert": { + "description": "Inserts a new creative field value.", + "httpMethod": "POST", + "id": "dfareporting.creativeFieldValues.insert", + "parameterOrder": [ + "profileId", + "creativeFieldId" + ], + "parameters": { + "creativeFieldId": { + "description": "Creative field ID for this creative field value.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/creativeFields/{creativeFieldId}/creativeFieldValues", + "request": { + "$ref": "CreativeFieldValue" + }, + "response": { + "$ref": "CreativeFieldValue" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "description": "Retrieves a list of creative field values, possibly filtered. This method supports paging.", + "httpMethod": "GET", + "id": "dfareporting.creativeFieldValues.list", + "parameterOrder": [ + "profileId", + "creativeFieldId" + ], + "parameters": { + "creativeFieldId": { + "description": "Creative field ID for this creative field value.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "ids": { + "description": "Select only creative field values with these IDs.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "maxResults": { + "default": "1000", + "description": "Maximum number of results to return.", + "format": "int32", + "location": "query", + "maximum": "1000", + "minimum": "0", + "type": "integer" + }, + "pageToken": { + "description": "Value of the nextPageToken from the previous result page.", + "location": "query", + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "searchString": { + "description": "Allows searching for creative field values by their values. Wildcards (e.g. *) are not allowed.", + "location": "query", + "type": "string" + }, + "sortField": { + "default": "ID", + "description": "Field by which to sort the list.", + "enum": [ + "ID", + "VALUE" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + }, + "sortOrder": { + "default": "ASCENDING", + "description": "Order of sorted results.", + "enum": [ + "ASCENDING", + "DESCENDING" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + } + }, + "path": "userprofiles/{profileId}/creativeFields/{creativeFieldId}/creativeFieldValues", + "response": { + "$ref": "CreativeFieldValuesListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "patch": { + "description": "Updates an existing creative field value. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "dfareporting.creativeFieldValues.patch", + "parameterOrder": [ + "profileId", + "creativeFieldId", + "id" + ], + "parameters": { + "creativeFieldId": { + "description": "Creative field ID for this creative field value.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "id": { + "description": "Creative Field Value ID", + "format": "int64", + "location": "query", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/creativeFields/{creativeFieldId}/creativeFieldValues", + "request": { + "$ref": "CreativeFieldValue" + }, + "response": { + "$ref": "CreativeFieldValue" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "update": { + "description": "Updates an existing creative field value.", + "httpMethod": "PUT", + "id": "dfareporting.creativeFieldValues.update", + "parameterOrder": [ + "profileId", + "creativeFieldId" + ], + "parameters": { + "creativeFieldId": { + "description": "Creative field ID for this creative field value.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/creativeFields/{creativeFieldId}/creativeFieldValues", + "request": { + "$ref": "CreativeFieldValue" + }, + "response": { + "$ref": "CreativeFieldValue" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#creativeFieldValuesListResponse\".", - "default": "dfareporting#creativeFieldValuesListResponse" - }, - "nextPageToken": { - "type": "string", - "description": "Pagination token to be used for the next list operation." - } - } - }, - "CreativeFieldsListResponse": { - "id": "CreativeFieldsListResponse", - "type": "object", - "description": "Creative Field List Response", - "properties": { "creativeFields": { - "type": "array", - "description": "Creative field collection.", - "items": { - "$ref": "CreativeField" - } + "methods": { + "delete": { + "description": "Deletes an existing creative field.", + "httpMethod": "DELETE", + "id": "dfareporting.creativeFields.delete", + "parameterOrder": [ + "profileId", + "id" + ], + "parameters": { + "id": { + "description": "Creative Field ID", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/creativeFields/{id}", + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "get": { + "description": "Gets one creative field by ID.", + "httpMethod": "GET", + "id": "dfareporting.creativeFields.get", + "parameterOrder": [ + "profileId", + "id" + ], + "parameters": { + "id": { + "description": "Creative Field ID", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/creativeFields/{id}", + "response": { + "$ref": "CreativeField" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "insert": { + "description": "Inserts a new creative field.", + "httpMethod": "POST", + "id": "dfareporting.creativeFields.insert", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/creativeFields", + "request": { + "$ref": "CreativeField" + }, + "response": { + "$ref": "CreativeField" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "description": "Retrieves a list of creative fields, possibly filtered. This method supports paging.", + "httpMethod": "GET", + "id": "dfareporting.creativeFields.list", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "advertiserIds": { + "description": "Select only creative fields that belong to these advertisers.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "ids": { + "description": "Select only creative fields with these IDs.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "maxResults": { + "default": "1000", + "description": "Maximum number of results to return.", + "format": "int32", + "location": "query", + "maximum": "1000", + "minimum": "0", + "type": "integer" + }, + "pageToken": { + "description": "Value of the nextPageToken from the previous result page.", + "location": "query", + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "searchString": { + "description": "Allows searching for creative fields by name or ID. Wildcards (*) are allowed. For example, \"creativefield*2015\" will return creative fields with names like \"creativefield June 2015\", \"creativefield April 2015\", or simply \"creativefield 2015\". Most of the searches also add wild-cards implicitly at the start and the end of the search string. For example, a search string of \"creativefield\" will match creative fields with the name \"my creativefield\", \"creativefield 2015\", or simply \"creativefield\".", + "location": "query", + "type": "string" + }, + "sortField": { + "default": "ID", + "description": "Field by which to sort the list.", + "enum": [ + "ID", + "NAME" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + }, + "sortOrder": { + "default": "ASCENDING", + "description": "Order of sorted results.", + "enum": [ + "ASCENDING", + "DESCENDING" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + } + }, + "path": "userprofiles/{profileId}/creativeFields", + "response": { + "$ref": "CreativeFieldsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "patch": { + "description": "Updates an existing creative field. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "dfareporting.creativeFields.patch", + "parameterOrder": [ + "profileId", + "id" + ], + "parameters": { + "id": { + "description": "Creative Field ID", + "format": "int64", + "location": "query", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/creativeFields", + "request": { + "$ref": "CreativeField" + }, + "response": { + "$ref": "CreativeField" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "update": { + "description": "Updates an existing creative field.", + "httpMethod": "PUT", + "id": "dfareporting.creativeFields.update", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/creativeFields", + "request": { + "$ref": "CreativeField" + }, + "response": { + "$ref": "CreativeField" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#creativeFieldsListResponse\".", - "default": "dfareporting#creativeFieldsListResponse" - }, - "nextPageToken": { - "type": "string", - "description": "Pagination token to be used for the next list operation." - } - } - }, - "CreativeGroup": { - "id": "CreativeGroup", - "type": "object", - "description": "Contains properties of a creative group.", - "properties": { - "accountId": { - "type": "string", - "description": "Account ID of this creative group. This is a read-only field that can be left blank.", - "format": "int64" - }, - "advertiserId": { - "type": "string", - "description": "Advertiser ID of this creative group. This is a required field on insertion.", - "format": "int64" - }, - "advertiserIdDimensionValue": { - "$ref": "DimensionValue", - "description": "Dimension value for the ID of the advertiser. This is a read-only, auto-generated field." - }, - "groupNumber": { - "type": "integer", - "description": "Subgroup of the creative group. Assign your creative groups to a subgroup in order to filter or manage them more easily. This field is required on insertion and is read-only after insertion. Acceptable values are 1 to 2, inclusive.", - "format": "int32" - }, - "id": { - "type": "string", - "description": "ID of this creative group. This is a read-only, auto-generated field.", - "format": "int64" - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#creativeGroup\".", - "default": "dfareporting#creativeGroup" - }, - "name": { - "type": "string", - "description": "Name of this creative group. This is a required field and must be less than 256 characters long and unique among creative groups of the same advertiser." - }, - "subaccountId": { - "type": "string", - "description": "Subaccount ID of this creative group. This is a read-only field that can be left blank.", - "format": "int64" - } - } - }, - "CreativeGroupAssignment": { - "id": "CreativeGroupAssignment", - "type": "object", - "description": "Creative Group Assignment.", - "properties": { - "creativeGroupId": { - "type": "string", - "description": "ID of the creative group to be assigned.", - "format": "int64" - }, - "creativeGroupNumber": { - "type": "string", - "description": "Creative group number of the creative group assignment.", - "enum": [ - "CREATIVE_GROUP_ONE", - "CREATIVE_GROUP_TWO" - ], - "enumDescriptions": [ - "", - "" - ] - } - } - }, - "CreativeGroupsListResponse": { - "id": "CreativeGroupsListResponse", - "type": "object", - "description": "Creative Group List Response", - "properties": { "creativeGroups": { - "type": "array", - "description": "Creative group collection.", - "items": { - "$ref": "CreativeGroup" - } + "methods": { + "get": { + "description": "Gets one creative group by ID.", + "httpMethod": "GET", + "id": "dfareporting.creativeGroups.get", + "parameterOrder": [ + "profileId", + "id" + ], + "parameters": { + "id": { + "description": "Creative group ID.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/creativeGroups/{id}", + "response": { + "$ref": "CreativeGroup" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "insert": { + "description": "Inserts a new creative group.", + "httpMethod": "POST", + "id": "dfareporting.creativeGroups.insert", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/creativeGroups", + "request": { + "$ref": "CreativeGroup" + }, + "response": { + "$ref": "CreativeGroup" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "description": "Retrieves a list of creative groups, possibly filtered. This method supports paging.", + "httpMethod": "GET", + "id": "dfareporting.creativeGroups.list", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "advertiserIds": { + "description": "Select only creative groups that belong to these advertisers.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "groupNumber": { + "description": "Select only creative groups that belong to this subgroup.", + "format": "int32", + "location": "query", + "maximum": "2", + "minimum": "1", + "type": "integer" + }, + "ids": { + "description": "Select only creative groups with these IDs.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "maxResults": { + "default": "1000", + "description": "Maximum number of results to return.", + "format": "int32", + "location": "query", + "maximum": "1000", + "minimum": "0", + "type": "integer" + }, + "pageToken": { + "description": "Value of the nextPageToken from the previous result page.", + "location": "query", + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "searchString": { + "description": "Allows searching for creative groups by name or ID. Wildcards (*) are allowed. For example, \"creativegroup*2015\" will return creative groups with names like \"creativegroup June 2015\", \"creativegroup April 2015\", or simply \"creativegroup 2015\". Most of the searches also add wild-cards implicitly at the start and the end of the search string. For example, a search string of \"creativegroup\" will match creative groups with the name \"my creativegroup\", \"creativegroup 2015\", or simply \"creativegroup\".", + "location": "query", + "type": "string" + }, + "sortField": { + "default": "ID", + "description": "Field by which to sort the list.", + "enum": [ + "ID", + "NAME" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + }, + "sortOrder": { + "default": "ASCENDING", + "description": "Order of sorted results.", + "enum": [ + "ASCENDING", + "DESCENDING" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + } + }, + "path": "userprofiles/{profileId}/creativeGroups", + "response": { + "$ref": "CreativeGroupsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "patch": { + "description": "Updates an existing creative group. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "dfareporting.creativeGroups.patch", + "parameterOrder": [ + "profileId", + "id" + ], + "parameters": { + "id": { + "description": "Creative group ID.", + "format": "int64", + "location": "query", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/creativeGroups", + "request": { + "$ref": "CreativeGroup" + }, + "response": { + "$ref": "CreativeGroup" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "update": { + "description": "Updates an existing creative group.", + "httpMethod": "PUT", + "id": "dfareporting.creativeGroups.update", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/creativeGroups", + "request": { + "$ref": "CreativeGroup" + }, + "response": { + "$ref": "CreativeGroup" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#creativeGroupsListResponse\".", - "default": "dfareporting#creativeGroupsListResponse" - }, - "nextPageToken": { - "type": "string", - "description": "Pagination token to be used for the next list operation." - } - } - }, - "CreativeOptimizationConfiguration": { - "id": "CreativeOptimizationConfiguration", - "type": "object", - "description": "Creative optimization settings.", - "properties": { - "id": { - "type": "string", - "description": "ID of this creative optimization config. This field is auto-generated when the campaign is inserted or updated. It can be null for existing campaigns.", - "format": "int64" - }, - "name": { - "type": "string", - "description": "Name of this creative optimization config. This is a required field and must be less than 129 characters long." - }, - "optimizationActivitys": { - "type": "array", - "description": "List of optimization activities associated with this configuration.", - "items": { - "$ref": "OptimizationActivity" - } - }, - "optimizationModel": { - "type": "string", - "description": "Optimization model for this configuration.", - "enum": [ - "CLICK", - "POST_CLICK", - "POST_CLICK_AND_IMPRESSION", - "POST_IMPRESSION", - "VIDEO_COMPLETION" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "" - ] - } - } - }, - "CreativeRotation": { - "id": "CreativeRotation", - "type": "object", - "description": "Creative Rotation.", - "properties": { - "creativeAssignments": { - "type": "array", - "description": "Creative assignments in this creative rotation.", - "items": { - "$ref": "CreativeAssignment" - } - }, - "creativeOptimizationConfigurationId": { - "type": "string", - "description": "Creative optimization configuration that is used by this ad. It should refer to one of the existing optimization configurations in the ad's campaign. If it is unset or set to 0, then the campaign's default optimization configuration will be used for this ad.", - "format": "int64" - }, - "type": { - "type": "string", - "description": "Type of creative rotation. Can be used to specify whether to use sequential or random rotation.", - "enum": [ - "CREATIVE_ROTATION_TYPE_RANDOM", - "CREATIVE_ROTATION_TYPE_SEQUENTIAL" - ], - "enumDescriptions": [ - "", - "" - ] - }, - "weightCalculationStrategy": { - "type": "string", - "description": "Strategy for calculating weights. Used with CREATIVE_ROTATION_TYPE_RANDOM.", - "enum": [ - "WEIGHT_STRATEGY_CUSTOM", - "WEIGHT_STRATEGY_EQUAL", - "WEIGHT_STRATEGY_HIGHEST_CTR", - "WEIGHT_STRATEGY_OPTIMIZED" - ], - "enumDescriptions": [ - "", - "", - "", - "" - ] - } - } - }, - "CreativeSettings": { - "id": "CreativeSettings", - "type": "object", - "description": "Creative Settings", - "properties": { - "iFrameFooter": { - "type": "string", - "description": "Header text for iFrames for this site. Must be less than or equal to 2000 characters long." - }, - "iFrameHeader": { - "type": "string", - "description": "Header text for iFrames for this site. Must be less than or equal to 2000 characters long." - } - } - }, - "CreativesListResponse": { - "id": "CreativesListResponse", - "type": "object", - "description": "Creative List Response", - "properties": { "creatives": { - "type": "array", - "description": "Creative collection.", - "items": { - "$ref": "Creative" - } + "methods": { + "get": { + "description": "Gets one creative by ID.", + "httpMethod": "GET", + "id": "dfareporting.creatives.get", + "parameterOrder": [ + "profileId", + "id" + ], + "parameters": { + "id": { + "description": "Creative ID.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/creatives/{id}", + "response": { + "$ref": "Creative" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "insert": { + "description": "Inserts a new creative.", + "httpMethod": "POST", + "id": "dfareporting.creatives.insert", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/creatives", + "request": { + "$ref": "Creative" + }, + "response": { + "$ref": "Creative" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "description": "Retrieves a list of creatives, possibly filtered. This method supports paging.", + "httpMethod": "GET", + "id": "dfareporting.creatives.list", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "active": { + "description": "Select only active creatives. Leave blank to select active and inactive creatives.", + "location": "query", + "type": "boolean" + }, + "advertiserId": { + "description": "Select only creatives with this advertiser ID.", + "format": "int64", + "location": "query", + "type": "string" + }, + "archived": { + "description": "Select only archived creatives. Leave blank to select archived and unarchived creatives.", + "location": "query", + "type": "boolean" + }, + "campaignId": { + "description": "Select only creatives with this campaign ID.", + "format": "int64", + "location": "query", + "type": "string" + }, + "companionCreativeIds": { + "description": "Select only in-stream video creatives with these companion IDs.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "creativeFieldIds": { + "description": "Select only creatives with these creative field IDs.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "ids": { + "description": "Select only creatives with these IDs.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "maxResults": { + "default": "1000", + "description": "Maximum number of results to return.", + "format": "int32", + "location": "query", + "maximum": "1000", + "minimum": "0", + "type": "integer" + }, + "pageToken": { + "description": "Value of the nextPageToken from the previous result page.", + "location": "query", + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "renderingIds": { + "description": "Select only creatives with these rendering IDs.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "searchString": { + "description": "Allows searching for objects by name or ID. Wildcards (*) are allowed. For example, \"creative*2015\" will return objects with names like \"creative June 2015\", \"creative April 2015\", or simply \"creative 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"creative\" will match objects with name \"my creative\", \"creative 2015\", or simply \"creative\".", + "location": "query", + "type": "string" + }, + "sizeIds": { + "description": "Select only creatives with these size IDs.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "sortField": { + "default": "ID", + "description": "Field by which to sort the list.", + "enum": [ + "ID", + "NAME" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + }, + "sortOrder": { + "default": "ASCENDING", + "description": "Order of sorted results.", + "enum": [ + "ASCENDING", + "DESCENDING" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + }, + "studioCreativeId": { + "description": "Select only creatives corresponding to this Studio creative ID.", + "format": "int64", + "location": "query", + "type": "string" + }, + "types": { + "description": "Select only creatives with these creative types.", + "enum": [ + "BRAND_SAFE_DEFAULT_INSTREAM_VIDEO", + "CUSTOM_DISPLAY", + "CUSTOM_DISPLAY_INTERSTITIAL", + "DISPLAY", + "DISPLAY_IMAGE_GALLERY", + "DISPLAY_REDIRECT", + "FLASH_INPAGE", + "HTML5_BANNER", + "IMAGE", + "INSTREAM_VIDEO", + "INSTREAM_VIDEO_REDIRECT", + "INTERNAL_REDIRECT", + "INTERSTITIAL_INTERNAL_REDIRECT", + "RICH_MEDIA_DISPLAY_BANNER", + "RICH_MEDIA_DISPLAY_EXPANDING", + "RICH_MEDIA_DISPLAY_INTERSTITIAL", + "RICH_MEDIA_DISPLAY_MULTI_FLOATING_INTERSTITIAL", + "RICH_MEDIA_IM_EXPAND", + "RICH_MEDIA_INPAGE_FLOATING", + "RICH_MEDIA_MOBILE_IN_APP", + "RICH_MEDIA_PEEL_DOWN", + "TRACKING_TEXT", + "VPAID_LINEAR_VIDEO", + "VPAID_NON_LINEAR_VIDEO" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "location": "query", + "repeated": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/creatives", + "response": { + "$ref": "CreativesListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "patch": { + "description": "Updates an existing creative. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "dfareporting.creatives.patch", + "parameterOrder": [ + "profileId", + "id" + ], + "parameters": { + "id": { + "description": "Creative ID.", + "format": "int64", + "location": "query", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/creatives", + "request": { + "$ref": "Creative" + }, + "response": { + "$ref": "Creative" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "update": { + "description": "Updates an existing creative.", + "httpMethod": "PUT", + "id": "dfareporting.creatives.update", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/creatives", + "request": { + "$ref": "Creative" + }, + "response": { + "$ref": "Creative" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#creativesListResponse\".", - "default": "dfareporting#creativesListResponse" + "dimensionValues": { + "methods": { + "query": { + "description": "Retrieves list of report dimension values for a list of filters.", + "httpMethod": "POST", + "id": "dfareporting.dimensionValues.query", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "maxResults": { + "default": "100", + "description": "Maximum number of results to return.", + "format": "int32", + "location": "query", + "maximum": "100", + "minimum": "0", + "type": "integer" + }, + "pageToken": { + "description": "The value of the nextToken from the previous result page.", + "location": "query", + "type": "string" + }, + "profileId": { + "description": "The DFA user profile ID.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/dimensionvalues/query", + "request": { + "$ref": "DimensionValueRequest" + }, + "response": { + "$ref": "DimensionValueList" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfareporting" + ] + } + } }, - "nextPageToken": { - "type": "string", - "description": "Pagination token to be used for the next list operation." - } - } - }, - "CrossDimensionReachReportCompatibleFields": { - "id": "CrossDimensionReachReportCompatibleFields", - "type": "object", - "description": "Represents fields that are compatible to be selected for a report of type \"CROSS_DIMENSION_REACH\".", - "properties": { - "breakdown": { - "type": "array", - "description": "Dimensions which are compatible to be selected in the \"breakdown\" section of the report.", - "items": { - "$ref": "Dimension" - } - }, - "dimensionFilters": { - "type": "array", - "description": "Dimensions which are compatible to be selected in the \"dimensionFilters\" section of the report.", - "items": { - "$ref": "Dimension" - } - }, - "kind": { - "type": "string", - "description": "The kind of resource this is, in this case dfareporting#crossDimensionReachReportCompatibleFields.", - "default": "dfareporting#crossDimensionReachReportCompatibleFields" - }, - "metrics": { - "type": "array", - "description": "Metrics which are compatible to be selected in the \"metricNames\" section of the report.", - "items": { - "$ref": "Metric" - } - }, - "overlapMetrics": { - "type": "array", - "description": "Metrics which are compatible to be selected in the \"overlapMetricNames\" section of the report.", - "items": { - "$ref": "Metric" - } - } - } - }, - "CustomFloodlightVariable": { - "id": "CustomFloodlightVariable", - "type": "object", - "description": "A custom floodlight variable.", - "properties": { - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#customFloodlightVariable\".", - "default": "dfareporting#customFloodlightVariable" - }, - "type": { - "type": "string", - "description": "The type of custom floodlight variable to supply a value for. These map to the \"u[1-20]=\" in the tags.", - "enum": [ - "U1", - "U10", - "U100", - "U11", - "U12", - "U13", - "U14", - "U15", - "U16", - "U17", - "U18", - "U19", - "U2", - "U20", - "U21", - "U22", - "U23", - "U24", - "U25", - "U26", - "U27", - "U28", - "U29", - "U3", - "U30", - "U31", - "U32", - "U33", - "U34", - "U35", - "U36", - "U37", - "U38", - "U39", - "U4", - "U40", - "U41", - "U42", - "U43", - "U44", - "U45", - "U46", - "U47", - "U48", - "U49", - "U5", - "U50", - "U51", - "U52", - "U53", - "U54", - "U55", - "U56", - "U57", - "U58", - "U59", - "U6", - "U60", - "U61", - "U62", - "U63", - "U64", - "U65", - "U66", - "U67", - "U68", - "U69", - "U7", - "U70", - "U71", - "U72", - "U73", - "U74", - "U75", - "U76", - "U77", - "U78", - "U79", - "U8", - "U80", - "U81", - "U82", - "U83", - "U84", - "U85", - "U86", - "U87", - "U88", - "U89", - "U9", - "U90", - "U91", - "U92", - "U93", - "U94", - "U95", - "U96", - "U97", - "U98", - "U99" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "value": { - "type": "string", - "description": "The value of the custom floodlight variable. The length of string must not exceed 50 characters." - } - } - }, - "CustomRichMediaEvents": { - "id": "CustomRichMediaEvents", - "type": "object", - "description": "Represents a Custom Rich Media Events group.", - "properties": { - "filteredEventIds": { - "type": "array", - "description": "List of custom rich media event IDs. Dimension values must be all of type dfa:richMediaEventTypeIdAndName.", - "items": { - "$ref": "DimensionValue" - } - }, - "kind": { - "type": "string", - "description": "The kind of resource this is, in this case dfareporting#customRichMediaEvents.", - "default": "dfareporting#customRichMediaEvents" - } - } - }, - "DateRange": { - "id": "DateRange", - "type": "object", - "description": "Represents a date range.", - "properties": { - "endDate": { - "type": "string", - "description": "The end date of the date range, inclusive. A string of the format: \"yyyy-MM-dd\".", - "format": "date" - }, - "kind": { - "type": "string", - "description": "The kind of resource this is, in this case dfareporting#dateRange.", - "default": "dfareporting#dateRange" - }, - "relativeDateRange": { - "type": "string", - "description": "The date range relative to the date of when the report is run.", - "enum": [ - "LAST_24_MONTHS", - "LAST_30_DAYS", - "LAST_365_DAYS", - "LAST_7_DAYS", - "LAST_90_DAYS", - "MONTH_TO_DATE", - "PREVIOUS_MONTH", - "PREVIOUS_QUARTER", - "PREVIOUS_WEEK", - "PREVIOUS_YEAR", - "QUARTER_TO_DATE", - "TODAY", - "WEEK_TO_DATE", - "YEAR_TO_DATE", - "YESTERDAY" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "startDate": { - "type": "string", - "description": "The start date of the date range, inclusive. A string of the format: \"yyyy-MM-dd\".", - "format": "date" - } - } - }, - "DayPartTargeting": { - "id": "DayPartTargeting", - "type": "object", - "description": "Day Part Targeting.", - "properties": { - "daysOfWeek": { - "type": "array", - "description": "Days of the week when the ad will serve.\n\nAcceptable values are:\n- \"SUNDAY\"\n- \"MONDAY\"\n- \"TUESDAY\"\n- \"WEDNESDAY\"\n- \"THURSDAY\"\n- \"FRIDAY\"\n- \"SATURDAY\"", - "items": { - "type": "string", - "enum": [ - "FRIDAY", - "MONDAY", - "SATURDAY", - "SUNDAY", - "THURSDAY", - "TUESDAY", - "WEDNESDAY" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "" - ] - } - }, - "hoursOfDay": { - "type": "array", - "description": "Hours of the day when the ad will serve, where 0 is midnight to 1 AM and 23 is 11 PM to midnight. Can be specified with days of week, in which case the ad would serve during these hours on the specified days. For example if Monday, Wednesday, Friday are the days of week specified and 9-10am, 3-5pm (hours 9, 15, and 16) is specified, the ad would serve Monday, Wednesdays, and Fridays at 9-10am and 3-5pm. Acceptable values are 0 to 23, inclusive.", - "items": { - "type": "integer", - "format": "int32" - } - }, - "userLocalTime": { - "type": "boolean", - "description": "Whether or not to use the user's local time. If false, the America/New York time zone applies." - } - } - }, - "DefaultClickThroughEventTagProperties": { - "id": "DefaultClickThroughEventTagProperties", - "type": "object", - "description": "Properties of inheriting and overriding the default click-through event tag. A campaign may override the event tag defined at the advertiser level, and an ad may also override the campaign's setting further.", - "properties": { - "defaultClickThroughEventTagId": { - "type": "string", - "description": "ID of the click-through event tag to apply to all ads in this entity's scope.", - "format": "int64" - }, - "overrideInheritedEventTag": { - "type": "boolean", - "description": "Whether this entity should override the inherited default click-through event tag with its own defined value." - } - } - }, - "DeliverySchedule": { - "id": "DeliverySchedule", - "type": "object", - "description": "Delivery Schedule.", - "properties": { - "frequencyCap": { - "$ref": "FrequencyCap", - "description": "Limit on the number of times an individual user can be served the ad within a specified period of time." - }, - "hardCutoff": { - "type": "boolean", - "description": "Whether or not hard cutoff is enabled. If true, the ad will not serve after the end date and time. Otherwise the ad will continue to be served until it has reached its delivery goals." - }, - "impressionRatio": { - "type": "string", - "description": "Impression ratio for this ad. This ratio determines how often each ad is served relative to the others. For example, if ad A has an impression ratio of 1 and ad B has an impression ratio of 3, then DCM will serve ad B three times as often as ad A. Acceptable values are 1 to 10, inclusive.", - "format": "int64" - }, - "priority": { - "type": "string", - "description": "Serving priority of an ad, with respect to other ads. The lower the priority number, the greater the priority with which it is served.", - "enum": [ - "AD_PRIORITY_01", - "AD_PRIORITY_02", - "AD_PRIORITY_03", - "AD_PRIORITY_04", - "AD_PRIORITY_05", - "AD_PRIORITY_06", - "AD_PRIORITY_07", - "AD_PRIORITY_08", - "AD_PRIORITY_09", - "AD_PRIORITY_10", - "AD_PRIORITY_11", - "AD_PRIORITY_12", - "AD_PRIORITY_13", - "AD_PRIORITY_14", - "AD_PRIORITY_15", - "AD_PRIORITY_16" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - } - } - }, - "DfpSettings": { - "id": "DfpSettings", - "type": "object", - "description": "DFP Settings", - "properties": { - "dfpNetworkCode": { - "type": "string", - "description": "DFP network code for this directory site." - }, - "dfpNetworkName": { - "type": "string", - "description": "DFP network name for this directory site." - }, - "programmaticPlacementAccepted": { - "type": "boolean", - "description": "Whether this directory site accepts programmatic placements." - }, - "pubPaidPlacementAccepted": { - "type": "boolean", - "description": "Whether this directory site accepts publisher-paid tags." - }, - "publisherPortalOnly": { - "type": "boolean", - "description": "Whether this directory site is available only via DoubleClick Publisher Portal." - } - } - }, - "Dimension": { - "id": "Dimension", - "type": "object", - "description": "Represents a dimension.", - "properties": { - "kind": { - "type": "string", - "description": "The kind of resource this is, in this case dfareporting#dimension.", - "default": "dfareporting#dimension" - }, - "name": { - "type": "string", - "description": "The dimension name, e.g. dfa:advertiser" - } - } - }, - "DimensionFilter": { - "id": "DimensionFilter", - "type": "object", - "description": "Represents a dimension filter.", - "properties": { - "dimensionName": { - "type": "string", - "description": "The name of the dimension to filter." - }, - "kind": { - "type": "string", - "description": "The kind of resource this is, in this case dfareporting#dimensionFilter.", - "default": "dfareporting#dimensionFilter" - }, - "value": { - "type": "string", - "description": "The value of the dimension to filter." - } - } - }, - "DimensionValue": { - "id": "DimensionValue", - "type": "object", - "description": "Represents a DimensionValue resource.", - "properties": { - "dimensionName": { - "type": "string", - "description": "The name of the dimension." - }, - "etag": { - "type": "string", - "description": "The eTag of this response for caching purposes." - }, - "id": { - "type": "string", - "description": "The ID associated with the value if available." - }, - "kind": { - "type": "string", - "description": "The kind of resource this is, in this case dfareporting#dimensionValue.", - "default": "dfareporting#dimensionValue" - }, - "matchType": { - "type": "string", - "description": "Determines how the 'value' field is matched when filtering. If not specified, defaults to EXACT. If set to WILDCARD_EXPRESSION, '*' is allowed as a placeholder for variable length character sequences, and it can be escaped with a backslash. Note, only paid search dimensions ('dfa:paidSearch*') allow a matchType other than EXACT.", - "enum": [ - "BEGINS_WITH", - "CONTAINS", - "EXACT", - "WILDCARD_EXPRESSION" - ], - "enumDescriptions": [ - "", - "", - "", - "" - ] - }, - "value": { - "type": "string", - "description": "The value of the dimension." - } - } - }, - "DimensionValueList": { - "id": "DimensionValueList", - "type": "object", - "description": "Represents the list of DimensionValue resources.", - "properties": { - "etag": { - "type": "string", - "description": "The eTag of this response for caching purposes." - }, - "items": { - "type": "array", - "description": "The dimension values returned in this response.", - "items": { - "$ref": "DimensionValue" - } - }, - "kind": { - "type": "string", - "description": "The kind of list this is, in this case dfareporting#dimensionValueList.", - "default": "dfareporting#dimensionValueList" - }, - "nextPageToken": { - "type": "string", - "description": "Continuation token used to page through dimension values. To retrieve the next page of results, set the next request's \"pageToken\" to the value of this field. The page token is only valid for a limited amount of time and should not be persisted." - } - } - }, - "DimensionValueRequest": { - "id": "DimensionValueRequest", - "type": "object", - "description": "Represents a DimensionValuesRequest.", - "properties": { - "dimensionName": { - "type": "string", - "description": "The name of the dimension for which values should be requested.", - "annotations": { - "required": [ - "dfareporting.dimensionValues.query" - ] - } - }, - "endDate": { - "type": "string", - "description": "The end date of the date range for which to retrieve dimension values. A string of the format \"yyyy-MM-dd\".", - "format": "date", - "annotations": { - "required": [ - "dfareporting.dimensionValues.query" - ] - } - }, - "filters": { - "type": "array", - "description": "The list of filters by which to filter values. The filters are ANDed.", - "items": { - "$ref": "DimensionFilter" - } - }, - "kind": { - "type": "string", - "description": "The kind of request this is, in this case dfareporting#dimensionValueRequest.", - "default": "dfareporting#dimensionValueRequest" - }, - "startDate": { - "type": "string", - "description": "The start date of the date range for which to retrieve dimension values. A string of the format \"yyyy-MM-dd\".", - "format": "date", - "annotations": { - "required": [ - "dfareporting.dimensionValues.query" - ] - } - } - } - }, - "DirectorySite": { - "id": "DirectorySite", - "type": "object", - "description": "DirectorySites contains properties of a website from the Site Directory. Sites need to be added to an account via the Sites resource before they can be assigned to a placement.", - "properties": { - "active": { - "type": "boolean", - "description": "Whether this directory site is active." - }, - "contactAssignments": { - "type": "array", - "description": "Directory site contacts.", - "items": { - "$ref": "DirectorySiteContactAssignment" - } - }, - "countryId": { - "type": "string", - "description": "Country ID of this directory site. This is a read-only field.", - "format": "int64" - }, - "currencyId": { - "type": "string", - "description": "Currency ID of this directory site. This is a read-only field.\nPossible values are: \n- \"1\" for USD \n- \"2\" for GBP \n- \"3\" for ESP \n- \"4\" for SEK \n- \"5\" for CAD \n- \"6\" for JPY \n- \"7\" for DEM \n- \"8\" for AUD \n- \"9\" for FRF \n- \"10\" for ITL \n- \"11\" for DKK \n- \"12\" for NOK \n- \"13\" for FIM \n- \"14\" for ZAR \n- \"15\" for IEP \n- \"16\" for NLG \n- \"17\" for EUR \n- \"18\" for KRW \n- \"19\" for TWD \n- \"20\" for SGD \n- \"21\" for CNY \n- \"22\" for HKD \n- \"23\" for NZD \n- \"24\" for MYR \n- \"25\" for BRL \n- \"26\" for PTE \n- \"27\" for MXP \n- \"28\" for CLP \n- \"29\" for TRY \n- \"30\" for ARS \n- \"31\" for PEN \n- \"32\" for ILS \n- \"33\" for CHF \n- \"34\" for VEF \n- \"35\" for COP \n- \"36\" for GTQ \n- \"37\" for PLN \n- \"39\" for INR \n- \"40\" for THB \n- \"41\" for IDR \n- \"42\" for CZK \n- \"43\" for RON \n- \"44\" for HUF \n- \"45\" for RUB \n- \"46\" for AED \n- \"47\" for BGN \n- \"48\" for HRK \n- \"49\" for MXN \n- \"50\" for NGN", - "format": "int64" - }, - "description": { - "type": "string", - "description": "Description of this directory site. This is a read-only field." - }, - "id": { - "type": "string", - "description": "ID of this directory site. This is a read-only, auto-generated field.", - "format": "int64" - }, - "idDimensionValue": { - "$ref": "DimensionValue", - "description": "Dimension value for the ID of this directory site. This is a read-only, auto-generated field." - }, - "inpageTagFormats": { - "type": "array", - "description": "Tag types for regular placements.\n\nAcceptable values are:\n- \"STANDARD\"\n- \"IFRAME_JAVASCRIPT_INPAGE\"\n- \"INTERNAL_REDIRECT_INPAGE\"\n- \"JAVASCRIPT_INPAGE\"", - "items": { - "type": "string", - "enum": [ - "IFRAME_JAVASCRIPT_INPAGE", - "INTERNAL_REDIRECT_INPAGE", - "JAVASCRIPT_INPAGE", - "STANDARD" - ], - "enumDescriptions": [ - "", - "", - "", - "" - ] - } - }, - "interstitialTagFormats": { - "type": "array", - "description": "Tag types for interstitial placements.\n\nAcceptable values are:\n- \"IFRAME_JAVASCRIPT_INTERSTITIAL\"\n- \"INTERNAL_REDIRECT_INTERSTITIAL\"\n- \"JAVASCRIPT_INTERSTITIAL\"", - "items": { - "type": "string", - "enum": [ - "IFRAME_JAVASCRIPT_INTERSTITIAL", - "INTERNAL_REDIRECT_INTERSTITIAL", - "JAVASCRIPT_INTERSTITIAL" - ], - "enumDescriptions": [ - "", - "", - "" - ] - } - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#directorySite\".", - "default": "dfareporting#directorySite" - }, - "name": { - "type": "string", - "description": "Name of this directory site." - }, - "parentId": { - "type": "string", - "description": "Parent directory site ID.", - "format": "int64" - }, - "settings": { - "$ref": "DirectorySiteSettings", - "description": "Directory site settings." - }, - "url": { - "type": "string", - "description": "URL of this directory site." - } - } - }, - "DirectorySiteContact": { - "id": "DirectorySiteContact", - "type": "object", - "description": "Contains properties of a Site Directory contact.", - "properties": { - "address": { - "type": "string", - "description": "Address of this directory site contact." - }, - "email": { - "type": "string", - "description": "Email address of this directory site contact." - }, - "firstName": { - "type": "string", - "description": "First name of this directory site contact." - }, - "id": { - "type": "string", - "description": "ID of this directory site contact. This is a read-only, auto-generated field.", - "format": "int64" - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#directorySiteContact\".", - "default": "dfareporting#directorySiteContact" - }, - "lastName": { - "type": "string", - "description": "Last name of this directory site contact." - }, - "phone": { - "type": "string", - "description": "Phone number of this directory site contact." - }, - "role": { - "type": "string", - "description": "Directory site contact role.", - "enum": [ - "ADMIN", - "EDIT", - "VIEW" - ], - "enumDescriptions": [ - "", - "", - "" - ] - }, - "title": { - "type": "string", - "description": "Title or designation of this directory site contact." - }, - "type": { - "type": "string", - "description": "Directory site contact type.", - "enum": [ - "BILLING", - "OTHER", - "SALES", - "TECHNICAL" - ], - "enumDescriptions": [ - "", - "", - "", - "" - ] - } - } - }, - "DirectorySiteContactAssignment": { - "id": "DirectorySiteContactAssignment", - "type": "object", - "description": "Directory Site Contact Assignment", - "properties": { - "contactId": { - "type": "string", - "description": "ID of this directory site contact. This is a read-only, auto-generated field.", - "format": "int64" - }, - "visibility": { - "type": "string", - "description": "Visibility of this directory site contact assignment. When set to PUBLIC this contact assignment is visible to all account and agency users; when set to PRIVATE it is visible only to the site.", - "enum": [ - "PRIVATE", - "PUBLIC" - ], - "enumDescriptions": [ - "", - "" - ] - } - } - }, - "DirectorySiteContactsListResponse": { - "id": "DirectorySiteContactsListResponse", - "type": "object", - "description": "Directory Site Contact List Response", - "properties": { "directorySiteContacts": { - "type": "array", - "description": "Directory site contact collection", - "items": { - "$ref": "DirectorySiteContact" - } + "methods": { + "get": { + "description": "Gets one directory site contact by ID.", + "httpMethod": "GET", + "id": "dfareporting.directorySiteContacts.get", + "parameterOrder": [ + "profileId", + "id" + ], + "parameters": { + "id": { + "description": "Directory site contact ID.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/directorySiteContacts/{id}", + "response": { + "$ref": "DirectorySiteContact" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "description": "Retrieves a list of directory site contacts, possibly filtered. This method supports paging.", + "httpMethod": "GET", + "id": "dfareporting.directorySiteContacts.list", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "directorySiteIds": { + "description": "Select only directory site contacts with these directory site IDs. This is a required field.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "ids": { + "description": "Select only directory site contacts with these IDs.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "maxResults": { + "default": "1000", + "description": "Maximum number of results to return.", + "format": "int32", + "location": "query", + "maximum": "1000", + "minimum": "0", + "type": "integer" + }, + "pageToken": { + "description": "Value of the nextPageToken from the previous result page.", + "location": "query", + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "searchString": { + "description": "Allows searching for objects by name, ID or email. Wildcards (*) are allowed. For example, \"directory site contact*2015\" will return objects with names like \"directory site contact June 2015\", \"directory site contact April 2015\", or simply \"directory site contact 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"directory site contact\" will match objects with name \"my directory site contact\", \"directory site contact 2015\", or simply \"directory site contact\".", + "location": "query", + "type": "string" + }, + "sortField": { + "default": "ID", + "description": "Field by which to sort the list.", + "enum": [ + "ID", + "NAME" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + }, + "sortOrder": { + "default": "ASCENDING", + "description": "Order of sorted results.", + "enum": [ + "ASCENDING", + "DESCENDING" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + } + }, + "path": "userprofiles/{profileId}/directorySiteContacts", + "response": { + "$ref": "DirectorySiteContactsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#directorySiteContactsListResponse\".", - "default": "dfareporting#directorySiteContactsListResponse" - }, - "nextPageToken": { - "type": "string", - "description": "Pagination token to be used for the next list operation." - } - } - }, - "DirectorySiteSettings": { - "id": "DirectorySiteSettings", - "type": "object", - "description": "Directory Site Settings", - "properties": { - "activeViewOptOut": { - "type": "boolean", - "description": "Whether this directory site has disabled active view creatives." - }, - "dfpSettings": { - "$ref": "DfpSettings", - "description": "Directory site DFP settings." - }, - "instreamVideoPlacementAccepted": { - "type": "boolean", - "description": "Whether this site accepts in-stream video ads." - }, - "interstitialPlacementAccepted": { - "type": "boolean", - "description": "Whether this site accepts interstitial ads." - }, - "nielsenOcrOptOut": { - "type": "boolean", - "description": "Whether this directory site has disabled Nielsen OCR reach ratings." - }, - "verificationTagOptOut": { - "type": "boolean", - "description": "Whether this directory site has disabled generation of Verification ins tags." - }, - "videoActiveViewOptOut": { - "type": "boolean", - "description": "Whether this directory site has disabled active view for in-stream video creatives. This is a read-only field." - } - } - }, - "DirectorySitesListResponse": { - "id": "DirectorySitesListResponse", - "type": "object", - "description": "Directory Site List Response", - "properties": { "directorySites": { - "type": "array", - "description": "Directory site collection.", - "items": { - "$ref": "DirectorySite" - } + "methods": { + "get": { + "description": "Gets one directory site by ID.", + "httpMethod": "GET", + "id": "dfareporting.directorySites.get", + "parameterOrder": [ + "profileId", + "id" + ], + "parameters": { + "id": { + "description": "Directory site ID.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/directorySites/{id}", + "response": { + "$ref": "DirectorySite" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "insert": { + "description": "Inserts a new directory site.", + "httpMethod": "POST", + "id": "dfareporting.directorySites.insert", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/directorySites", + "request": { + "$ref": "DirectorySite" + }, + "response": { + "$ref": "DirectorySite" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "description": "Retrieves a list of directory sites, possibly filtered. This method supports paging.", + "httpMethod": "GET", + "id": "dfareporting.directorySites.list", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "acceptsInStreamVideoPlacements": { + "description": "This search filter is no longer supported and will have no effect on the results returned.", + "location": "query", + "type": "boolean" + }, + "acceptsInterstitialPlacements": { + "description": "This search filter is no longer supported and will have no effect on the results returned.", + "location": "query", + "type": "boolean" + }, + "acceptsPublisherPaidPlacements": { + "description": "Select only directory sites that accept publisher paid placements. This field can be left blank.", + "location": "query", + "type": "boolean" + }, + "active": { + "description": "Select only active directory sites. Leave blank to retrieve both active and inactive directory sites.", + "location": "query", + "type": "boolean" + }, + "countryId": { + "description": "Select only directory sites with this country ID.", + "format": "int64", + "location": "query", + "type": "string" + }, + "dfpNetworkCode": { + "description": "Select only directory sites with this DFP network code.", + "location": "query", + "type": "string" + }, + "ids": { + "description": "Select only directory sites with these IDs.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "maxResults": { + "default": "1000", + "description": "Maximum number of results to return.", + "format": "int32", + "location": "query", + "maximum": "1000", + "minimum": "0", + "type": "integer" + }, + "pageToken": { + "description": "Value of the nextPageToken from the previous result page.", + "location": "query", + "type": "string" + }, + "parentId": { + "description": "Select only directory sites with this parent ID.", + "format": "int64", + "location": "query", + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "searchString": { + "description": "Allows searching for objects by name, ID or URL. Wildcards (*) are allowed. For example, \"directory site*2015\" will return objects with names like \"directory site June 2015\", \"directory site April 2015\", or simply \"directory site 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"directory site\" will match objects with name \"my directory site\", \"directory site 2015\" or simply, \"directory site\".", + "location": "query", + "type": "string" + }, + "sortField": { + "default": "ID", + "description": "Field by which to sort the list.", + "enum": [ + "ID", + "NAME" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + }, + "sortOrder": { + "default": "ASCENDING", + "description": "Order of sorted results.", + "enum": [ + "ASCENDING", + "DESCENDING" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + } + }, + "path": "userprofiles/{profileId}/directorySites", + "response": { + "$ref": "DirectorySitesListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#directorySitesListResponse\".", - "default": "dfareporting#directorySitesListResponse" - }, - "nextPageToken": { - "type": "string", - "description": "Pagination token to be used for the next list operation." - } - } - }, - "DynamicTargetingKey": { - "id": "DynamicTargetingKey", - "type": "object", - "description": "Contains properties of a dynamic targeting key. Dynamic targeting keys are unique, user-friendly labels, created at the advertiser level in DCM, that can be assigned to ads, creatives, and placements and used for targeting with DoubleClick Studio dynamic creatives. Use these labels instead of numeric DCM IDs (such as placement IDs) to save time and avoid errors in your dynamic feeds.", - "properties": { - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#dynamicTargetingKey\".", - "default": "dfareporting#dynamicTargetingKey" - }, - "name": { - "type": "string", - "description": "Name of this dynamic targeting key. This is a required field. Must be less than 256 characters long and cannot contain commas. All characters are converted to lowercase." - }, - "objectId": { - "type": "string", - "description": "ID of the object of this dynamic targeting key. This is a required field.", - "format": "int64" - }, - "objectType": { - "type": "string", - "description": "Type of the object of this dynamic targeting key. This is a required field.", - "enum": [ - "OBJECT_AD", - "OBJECT_ADVERTISER", - "OBJECT_CREATIVE", - "OBJECT_PLACEMENT" - ], - "enumDescriptions": [ - "", - "", - "", - "" - ] - } - } - }, - "DynamicTargetingKeysListResponse": { - "id": "DynamicTargetingKeysListResponse", - "type": "object", - "description": "Dynamic Targeting Key List Response", - "properties": { "dynamicTargetingKeys": { - "type": "array", - "description": "Dynamic targeting key collection.", - "items": { - "$ref": "DynamicTargetingKey" - } + "methods": { + "delete": { + "description": "Deletes an existing dynamic targeting key.", + "httpMethod": "DELETE", + "id": "dfareporting.dynamicTargetingKeys.delete", + "parameterOrder": [ + "profileId", + "objectId", + "name", + "objectType" + ], + "parameters": { + "name": { + "description": "Name of this dynamic targeting key. This is a required field. Must be less than 256 characters long and cannot contain commas. All characters are converted to lowercase.", + "location": "query", + "required": true, + "type": "string" + }, + "objectId": { + "description": "ID of the object of this dynamic targeting key. This is a required field.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "objectType": { + "description": "Type of the object of this dynamic targeting key. This is a required field.", + "enum": [ + "OBJECT_AD", + "OBJECT_ADVERTISER", + "OBJECT_CREATIVE", + "OBJECT_PLACEMENT" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ], + "location": "query", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/dynamicTargetingKeys/{objectId}", + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "insert": { + "description": "Inserts a new dynamic targeting key. Keys must be created at the advertiser level before being assigned to the advertiser's ads, creatives, or placements. There is a maximum of 1000 keys per advertiser, out of which a maximum of 20 keys can be assigned per ad, creative, or placement.", + "httpMethod": "POST", + "id": "dfareporting.dynamicTargetingKeys.insert", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/dynamicTargetingKeys", + "request": { + "$ref": "DynamicTargetingKey" + }, + "response": { + "$ref": "DynamicTargetingKey" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "description": "Retrieves a list of dynamic targeting keys.", + "httpMethod": "GET", + "id": "dfareporting.dynamicTargetingKeys.list", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "advertiserId": { + "description": "Select only dynamic targeting keys whose object has this advertiser ID.", + "format": "int64", + "location": "query", + "type": "string" + }, + "names": { + "description": "Select only dynamic targeting keys exactly matching these names.", + "location": "query", + "repeated": true, + "type": "string" + }, + "objectId": { + "description": "Select only dynamic targeting keys with this object ID.", + "format": "int64", + "location": "query", + "type": "string" + }, + "objectType": { + "description": "Select only dynamic targeting keys with this object type.", + "enum": [ + "OBJECT_AD", + "OBJECT_ADVERTISER", + "OBJECT_CREATIVE", + "OBJECT_PLACEMENT" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ], + "location": "query", + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/dynamicTargetingKeys", + "response": { + "$ref": "DynamicTargetingKeysListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#dynamicTargetingKeysListResponse\".", - "default": "dfareporting#dynamicTargetingKeysListResponse" - } - } - }, - "EncryptionInfo": { - "id": "EncryptionInfo", - "type": "object", - "description": "A description of how user IDs are encrypted.", - "properties": { - "encryptionEntityId": { - "type": "string", - "description": "The encryption entity ID. This should match the encryption configuration for ad serving or Data Transfer.", - "format": "int64" - }, - "encryptionEntityType": { - "type": "string", - "description": "The encryption entity type. This should match the encryption configuration for ad serving or Data Transfer.", - "enum": [ - "ADWORDS_CUSTOMER", - "DBM_ADVERTISER", - "DBM_PARTNER", - "DCM_ACCOUNT", - "DCM_ADVERTISER", - "ENCRYPTION_ENTITY_TYPE_UNKNOWN" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "" - ] - }, - "encryptionSource": { - "type": "string", - "description": "Describes whether the encrypted cookie was received from ad serving (the %m macro) or from Data Transfer.", - "enum": [ - "AD_SERVING", - "DATA_TRANSFER", - "ENCRYPTION_SCOPE_UNKNOWN" - ], - "enumDescriptions": [ - "", - "", - "" - ] - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#encryptionInfo\".", - "default": "dfareporting#encryptionInfo" - } - } - }, - "EventTag": { - "id": "EventTag", - "type": "object", - "description": "Contains properties of an event tag.", - "properties": { - "accountId": { - "type": "string", - "description": "Account ID of this event tag. This is a read-only field that can be left blank.", - "format": "int64" - }, - "advertiserId": { - "type": "string", - "description": "Advertiser ID of this event tag. This field or the campaignId field is required on insertion.", - "format": "int64" - }, - "advertiserIdDimensionValue": { - "$ref": "DimensionValue", - "description": "Dimension value for the ID of the advertiser. This is a read-only, auto-generated field." - }, - "campaignId": { - "type": "string", - "description": "Campaign ID of this event tag. This field or the advertiserId field is required on insertion.", - "format": "int64" - }, - "campaignIdDimensionValue": { - "$ref": "DimensionValue", - "description": "Dimension value for the ID of the campaign. This is a read-only, auto-generated field." - }, - "enabledByDefault": { - "type": "boolean", - "description": "Whether this event tag should be automatically enabled for all of the advertiser's campaigns and ads." - }, - "excludeFromAdxRequests": { - "type": "boolean", - "description": "Whether to remove this event tag from ads that are trafficked through DoubleClick Bid Manager to Ad Exchange. This may be useful if the event tag uses a pixel that is unapproved for Ad Exchange bids on one or more networks, such as the Google Display Network." - }, - "id": { - "type": "string", - "description": "ID of this event tag. This is a read-only, auto-generated field.", - "format": "int64" - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#eventTag\".", - "default": "dfareporting#eventTag" - }, - "name": { - "type": "string", - "description": "Name of this event tag. This is a required field and must be less than 256 characters long." - }, - "siteFilterType": { - "type": "string", - "description": "Site filter type for this event tag. If no type is specified then the event tag will be applied to all sites.", - "enum": [ - "BLACKLIST", - "WHITELIST" - ], - "enumDescriptions": [ - "", - "" - ] - }, - "siteIds": { - "type": "array", - "description": "Filter list of site IDs associated with this event tag. The siteFilterType determines whether this is a whitelist or blacklist filter.", - "items": { - "type": "string", - "format": "int64" - } - }, - "sslCompliant": { - "type": "boolean", - "description": "Whether this tag is SSL-compliant or not. This is a read-only field." - }, - "status": { - "type": "string", - "description": "Status of this event tag. Must be ENABLED for this event tag to fire. This is a required field.", - "enum": [ - "DISABLED", - "ENABLED" - ], - "enumDescriptions": [ - "", - "" - ] - }, - "subaccountId": { - "type": "string", - "description": "Subaccount ID of this event tag. This is a read-only field that can be left blank.", - "format": "int64" - }, - "type": { - "type": "string", - "description": "Event tag type. Can be used to specify whether to use a third-party pixel, a third-party JavaScript URL, or a third-party click-through URL for either impression or click tracking. This is a required field.", - "enum": [ - "CLICK_THROUGH_EVENT_TAG", - "IMPRESSION_IMAGE_EVENT_TAG", - "IMPRESSION_JAVASCRIPT_EVENT_TAG" - ], - "enumDescriptions": [ - "", - "", - "" - ] - }, - "url": { - "type": "string", - "description": "Payload URL for this event tag. The URL on a click-through event tag should have a landing page URL appended to the end of it. This field is required on insertion." - }, - "urlEscapeLevels": { - "type": "integer", - "description": "Number of times the landing page URL should be URL-escaped before being appended to the click-through event tag URL. Only applies to click-through event tags as specified by the event tag type.", - "format": "int32" - } - } - }, - "EventTagOverride": { - "id": "EventTagOverride", - "type": "object", - "description": "Event tag override information.", - "properties": { - "enabled": { - "type": "boolean", - "description": "Whether this override is enabled." - }, - "id": { - "type": "string", - "description": "ID of this event tag override. This is a read-only, auto-generated field.", - "format": "int64" - } - } - }, - "EventTagsListResponse": { - "id": "EventTagsListResponse", - "type": "object", - "description": "Event Tag List Response", - "properties": { "eventTags": { - "type": "array", - "description": "Event tag collection.", - "items": { - "$ref": "EventTag" - } - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#eventTagsListResponse\".", - "default": "dfareporting#eventTagsListResponse" - } - } - }, - "File": { - "id": "File", - "type": "object", - "description": "Represents a File resource. A file contains the metadata for a report run. It shows the status of the run and holds the URLs to the generated report data if the run is finished and the status is \"REPORT_AVAILABLE\".", - "properties": { - "dateRange": { - "$ref": "DateRange", - "description": "The date range for which the file has report data. The date range will always be the absolute date range for which the report is run." - }, - "etag": { - "type": "string", - "description": "The eTag of this response for caching purposes." - }, - "fileName": { - "type": "string", - "description": "The filename of the file." - }, - "format": { - "type": "string", - "description": "The output format of the report. Only available once the file is available.", - "enum": [ - "CSV", - "EXCEL" - ], - "enumDescriptions": [ - "", - "" - ] - }, - "id": { - "type": "string", - "description": "The unique ID of this report file.", - "format": "int64" - }, - "kind": { - "type": "string", - "description": "The kind of resource this is, in this case dfareporting#file.", - "default": "dfareporting#file" - }, - "lastModifiedTime": { - "type": "string", - "description": "The timestamp in milliseconds since epoch when this file was last modified.", - "format": "int64" - }, - "reportId": { - "type": "string", - "description": "The ID of the report this file was generated from.", - "format": "int64" - }, - "status": { - "type": "string", - "description": "The status of the report file.", - "enum": [ - "CANCELLED", - "FAILED", - "PROCESSING", - "REPORT_AVAILABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "" - ] - }, - "urls": { - "type": "object", - "description": "The URLs where the completed report file can be downloaded.", - "properties": { - "apiUrl": { - "type": "string", - "description": "The URL for downloading the report data through the API." - }, - "browserUrl": { - "type": "string", - "description": "The URL for downloading the report data through a browser." - } - } - } - } - }, - "FileList": { - "id": "FileList", - "type": "object", - "description": "Represents the list of File resources.", - "properties": { - "etag": { - "type": "string", - "description": "The eTag of this response for caching purposes." - }, - "items": { - "type": "array", - "description": "The files returned in this response.", - "items": { - "$ref": "File" - } - }, - "kind": { - "type": "string", - "description": "The kind of list this is, in this case dfareporting#fileList.", - "default": "dfareporting#fileList" - }, - "nextPageToken": { - "type": "string", - "description": "Continuation token used to page through files. To retrieve the next page of results, set the next request's \"pageToken\" to the value of this field. The page token is only valid for a limited amount of time and should not be persisted." - } - } - }, - "Flight": { - "id": "Flight", - "type": "object", - "description": "Flight", - "properties": { - "endDate": { - "type": "string", - "description": "Inventory item flight end date.", - "format": "date" - }, - "rateOrCost": { - "type": "string", - "description": "Rate or cost of this flight.", - "format": "int64" - }, - "startDate": { - "type": "string", - "description": "Inventory item flight start date.", - "format": "date" - }, - "units": { - "type": "string", - "description": "Units of this flight.", - "format": "int64" - } - } - }, - "FloodlightActivitiesGenerateTagResponse": { - "id": "FloodlightActivitiesGenerateTagResponse", - "type": "object", - "description": "Floodlight Activity GenerateTag Response", - "properties": { - "floodlightActivityTag": { - "type": "string", - "description": "Generated tag for this Floodlight activity. For global site tags, this is the event snippet." - }, - "globalSiteTagGlobalSnippet": { - "type": "string", - "description": "The global snippet section of a global site tag. The global site tag sets new cookies on your domain, which will store a unique identifier for a user or the ad click that brought the user to your site. Learn more." - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#floodlightActivitiesGenerateTagResponse\".", - "default": "dfareporting#floodlightActivitiesGenerateTagResponse" - } - } - }, - "FloodlightActivitiesListResponse": { - "id": "FloodlightActivitiesListResponse", - "type": "object", - "description": "Floodlight Activity List Response", - "properties": { - "floodlightActivities": { - "type": "array", - "description": "Floodlight activity collection.", - "items": { - "$ref": "FloodlightActivity" - } - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#floodlightActivitiesListResponse\".", - "default": "dfareporting#floodlightActivitiesListResponse" - }, - "nextPageToken": { - "type": "string", - "description": "Pagination token to be used for the next list operation." - } - } - }, - "FloodlightActivity": { - "id": "FloodlightActivity", - "type": "object", - "description": "Contains properties of a Floodlight activity.", - "properties": { - "accountId": { - "type": "string", - "description": "Account ID of this floodlight activity. This is a read-only field that can be left blank.", - "format": "int64" - }, - "advertiserId": { - "type": "string", - "description": "Advertiser ID of this floodlight activity. If this field is left blank, the value will be copied over either from the activity group's advertiser or the existing activity's advertiser.", - "format": "int64" - }, - "advertiserIdDimensionValue": { - "$ref": "DimensionValue", - "description": "Dimension value for the ID of the advertiser. This is a read-only, auto-generated field." - }, - "cacheBustingType": { - "type": "string", - "description": "Code type used for cache busting in the generated tag. Applicable only when floodlightActivityGroupType is COUNTER and countingMethod is STANDARD_COUNTING or UNIQUE_COUNTING.", - "enum": [ - "ACTIVE_SERVER_PAGE", - "COLD_FUSION", - "JAVASCRIPT", - "JSP", - "PHP" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "" - ] - }, - "countingMethod": { - "type": "string", - "description": "Counting method for conversions for this floodlight activity. This is a required field.", - "enum": [ - "ITEMS_SOLD_COUNTING", - "SESSION_COUNTING", - "STANDARD_COUNTING", - "TRANSACTIONS_COUNTING", - "UNIQUE_COUNTING" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "" - ] - }, - "defaultTags": { - "type": "array", - "description": "Dynamic floodlight tags.", - "items": { - "$ref": "FloodlightActivityDynamicTag" - } - }, - "expectedUrl": { - "type": "string", - "description": "URL where this tag will be deployed. If specified, must be less than 256 characters long." - }, - "floodlightActivityGroupId": { - "type": "string", - "description": "Floodlight activity group ID of this floodlight activity. This is a required field.", - "format": "int64" - }, - "floodlightActivityGroupName": { - "type": "string", - "description": "Name of the associated floodlight activity group. This is a read-only field." - }, - "floodlightActivityGroupTagString": { - "type": "string", - "description": "Tag string of the associated floodlight activity group. This is a read-only field." - }, - "floodlightActivityGroupType": { - "type": "string", - "description": "Type of the associated floodlight activity group. This is a read-only field.", - "enum": [ - "COUNTER", - "SALE" - ], - "enumDescriptions": [ - "", - "" - ] - }, - "floodlightConfigurationId": { - "type": "string", - "description": "Floodlight configuration ID of this floodlight activity. If this field is left blank, the value will be copied over either from the activity group's floodlight configuration or from the existing activity's floodlight configuration.", - "format": "int64" - }, - "floodlightConfigurationIdDimensionValue": { - "$ref": "DimensionValue", - "description": "Dimension value for the ID of the floodlight configuration. This is a read-only, auto-generated field." - }, - "floodlightTagType": { - "type": "string", - "description": "The type of Floodlight tag this activity will generate. This is a required field.", - "enum": [ - "GLOBAL_SITE_TAG", - "IFRAME", - "IMAGE" - ], - "enumDescriptions": [ - "", - "", - "" - ] - }, - "hidden": { - "type": "boolean", - "description": "Whether this activity is archived." - }, - "id": { - "type": "string", - "description": "ID of this floodlight activity. This is a read-only, auto-generated field.", - "format": "int64" - }, - "idDimensionValue": { - "$ref": "DimensionValue", - "description": "Dimension value for the ID of this floodlight activity. This is a read-only, auto-generated field." - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#floodlightActivity\".", - "default": "dfareporting#floodlightActivity" - }, - "name": { - "type": "string", - "description": "Name of this floodlight activity. This is a required field. Must be less than 129 characters long and cannot contain quotes." - }, - "notes": { - "type": "string", - "description": "General notes or implementation instructions for the tag." - }, - "publisherTags": { - "type": "array", - "description": "Publisher dynamic floodlight tags.", - "items": { - "$ref": "FloodlightActivityPublisherDynamicTag" - } - }, - "secure": { - "type": "boolean", - "description": "Whether this tag should use SSL." - }, - "sslCompliant": { - "type": "boolean", - "description": "Whether the floodlight activity is SSL-compliant. This is a read-only field, its value detected by the system from the floodlight tags." - }, - "sslRequired": { - "type": "boolean", - "description": "Whether this floodlight activity must be SSL-compliant." - }, - "subaccountId": { - "type": "string", - "description": "Subaccount ID of this floodlight activity. This is a read-only field that can be left blank.", - "format": "int64" - }, - "tagFormat": { - "type": "string", - "description": "Tag format type for the floodlight activity. If left blank, the tag format will default to HTML.", - "enum": [ - "HTML", - "XHTML" - ], - "enumDescriptions": [ - "", - "" - ] - }, - "tagString": { - "type": "string", - "description": "Value of the cat= parameter in the floodlight tag, which the ad servers use to identify the activity. This is optional: if empty, a new tag string will be generated for you. This string must be 1 to 8 characters long, with valid characters being [a-z][A-Z][0-9][-][ _ ]. This tag string must also be unique among activities of the same activity group. This field is read-only after insertion." - }, - "userDefinedVariableTypes": { - "type": "array", - "description": "List of the user-defined variables used by this conversion tag. These map to the \"u[1-100]=\" in the tags. Each of these can have a user defined type.\nAcceptable values are U1 to U100, inclusive.", - "items": { - "type": "string", - "enum": [ - "U1", - "U10", - "U100", - "U11", - "U12", - "U13", - "U14", - "U15", - "U16", - "U17", - "U18", - "U19", - "U2", - "U20", - "U21", - "U22", - "U23", - "U24", - "U25", - "U26", - "U27", - "U28", - "U29", - "U3", - "U30", - "U31", - "U32", - "U33", - "U34", - "U35", - "U36", - "U37", - "U38", - "U39", - "U4", - "U40", - "U41", - "U42", - "U43", - "U44", - "U45", - "U46", - "U47", - "U48", - "U49", - "U5", - "U50", - "U51", - "U52", - "U53", - "U54", - "U55", - "U56", - "U57", - "U58", - "U59", - "U6", - "U60", - "U61", - "U62", - "U63", - "U64", - "U65", - "U66", - "U67", - "U68", - "U69", - "U7", - "U70", - "U71", - "U72", - "U73", - "U74", - "U75", - "U76", - "U77", - "U78", - "U79", - "U8", - "U80", - "U81", - "U82", - "U83", - "U84", - "U85", - "U86", - "U87", - "U88", - "U89", - "U9", - "U90", - "U91", - "U92", - "U93", - "U94", - "U95", - "U96", - "U97", - "U98", - "U99" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - } - } - } - }, - "FloodlightActivityDynamicTag": { - "id": "FloodlightActivityDynamicTag", - "type": "object", - "description": "Dynamic Tag", - "properties": { - "id": { - "type": "string", - "description": "ID of this dynamic tag. This is a read-only, auto-generated field.", - "format": "int64" - }, - "name": { - "type": "string", - "description": "Name of this tag." - }, - "tag": { - "type": "string", - "description": "Tag code." - } - } - }, - "FloodlightActivityGroup": { - "id": "FloodlightActivityGroup", - "type": "object", - "description": "Contains properties of a Floodlight activity group.", - "properties": { - "accountId": { - "type": "string", - "description": "Account ID of this floodlight activity group. This is a read-only field that can be left blank.", - "format": "int64" - }, - "advertiserId": { - "type": "string", - "description": "Advertiser ID of this floodlight activity group. If this field is left blank, the value will be copied over either from the floodlight configuration's advertiser or from the existing activity group's advertiser.", - "format": "int64" - }, - "advertiserIdDimensionValue": { - "$ref": "DimensionValue", - "description": "Dimension value for the ID of the advertiser. This is a read-only, auto-generated field." - }, - "floodlightConfigurationId": { - "type": "string", - "description": "Floodlight configuration ID of this floodlight activity group. This is a required field.", - "format": "int64" - }, - "floodlightConfigurationIdDimensionValue": { - "$ref": "DimensionValue", - "description": "Dimension value for the ID of the floodlight configuration. This is a read-only, auto-generated field." - }, - "id": { - "type": "string", - "description": "ID of this floodlight activity group. This is a read-only, auto-generated field.", - "format": "int64" - }, - "idDimensionValue": { - "$ref": "DimensionValue", - "description": "Dimension value for the ID of this floodlight activity group. This is a read-only, auto-generated field." - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#floodlightActivityGroup\".", - "default": "dfareporting#floodlightActivityGroup" - }, - "name": { - "type": "string", - "description": "Name of this floodlight activity group. This is a required field. Must be less than 65 characters long and cannot contain quotes." - }, - "subaccountId": { - "type": "string", - "description": "Subaccount ID of this floodlight activity group. This is a read-only field that can be left blank.", - "format": "int64" - }, - "tagString": { - "type": "string", - "description": "Value of the type= parameter in the floodlight tag, which the ad servers use to identify the activity group that the activity belongs to. This is optional: if empty, a new tag string will be generated for you. This string must be 1 to 8 characters long, with valid characters being [a-z][A-Z][0-9][-][ _ ]. This tag string must also be unique among activity groups of the same floodlight configuration. This field is read-only after insertion." - }, - "type": { - "type": "string", - "description": "Type of the floodlight activity group. This is a required field that is read-only after insertion.", - "enum": [ - "COUNTER", - "SALE" - ], - "enumDescriptions": [ - "", - "" - ] - } - } - }, - "FloodlightActivityGroupsListResponse": { - "id": "FloodlightActivityGroupsListResponse", - "type": "object", - "description": "Floodlight Activity Group List Response", - "properties": { - "floodlightActivityGroups": { - "type": "array", - "description": "Floodlight activity group collection.", - "items": { - "$ref": "FloodlightActivityGroup" - } - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#floodlightActivityGroupsListResponse\".", - "default": "dfareporting#floodlightActivityGroupsListResponse" - }, - "nextPageToken": { - "type": "string", - "description": "Pagination token to be used for the next list operation." - } - } - }, - "FloodlightActivityPublisherDynamicTag": { - "id": "FloodlightActivityPublisherDynamicTag", - "type": "object", - "description": "Publisher Dynamic Tag", - "properties": { - "clickThrough": { - "type": "boolean", - "description": "Whether this tag is applicable only for click-throughs." - }, - "directorySiteId": { - "type": "string", - "description": "Directory site ID of this dynamic tag. This is a write-only field that can be used as an alternative to the siteId field. When this resource is retrieved, only the siteId field will be populated.", - "format": "int64" - }, - "dynamicTag": { - "$ref": "FloodlightActivityDynamicTag", - "description": "Dynamic floodlight tag." - }, - "siteId": { - "type": "string", - "description": "Site ID of this dynamic tag.", - "format": "int64" - }, - "siteIdDimensionValue": { - "$ref": "DimensionValue", - "description": "Dimension value for the ID of the site. This is a read-only, auto-generated field." - }, - "viewThrough": { - "type": "boolean", - "description": "Whether this tag is applicable only for view-throughs." - } - } - }, - "FloodlightConfiguration": { - "id": "FloodlightConfiguration", - "type": "object", - "description": "Contains properties of a Floodlight configuration.", - "properties": { - "accountId": { - "type": "string", - "description": "Account ID of this floodlight configuration. This is a read-only field that can be left blank.", - "format": "int64" - }, - "advertiserId": { - "type": "string", - "description": "Advertiser ID of the parent advertiser of this floodlight configuration.", - "format": "int64" - }, - "advertiserIdDimensionValue": { - "$ref": "DimensionValue", - "description": "Dimension value for the ID of the advertiser. This is a read-only, auto-generated field." - }, - "analyticsDataSharingEnabled": { - "type": "boolean", - "description": "Whether advertiser data is shared with Google Analytics." - }, - "exposureToConversionEnabled": { - "type": "boolean", - "description": "Whether the exposure-to-conversion report is enabled. This report shows detailed pathway information on up to 10 of the most recent ad exposures seen by a user before converting." - }, - "firstDayOfWeek": { - "type": "string", - "description": "Day that will be counted as the first day of the week in reports. This is a required field.", - "enum": [ - "MONDAY", - "SUNDAY" - ], - "enumDescriptions": [ - "", - "" - ] - }, - "id": { - "type": "string", - "description": "ID of this floodlight configuration. This is a read-only, auto-generated field.", - "format": "int64" - }, - "idDimensionValue": { - "$ref": "DimensionValue", - "description": "Dimension value for the ID of this floodlight configuration. This is a read-only, auto-generated field." - }, - "inAppAttributionTrackingEnabled": { - "type": "boolean", - "description": "Whether in-app attribution tracking is enabled." - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#floodlightConfiguration\".", - "default": "dfareporting#floodlightConfiguration" - }, - "lookbackConfiguration": { - "$ref": "LookbackConfiguration", - "description": "Lookback window settings for this floodlight configuration." - }, - "naturalSearchConversionAttributionOption": { - "type": "string", - "description": "Types of attribution options for natural search conversions.", - "enum": [ - "EXCLUDE_NATURAL_SEARCH_CONVERSION_ATTRIBUTION", - "INCLUDE_NATURAL_SEARCH_CONVERSION_ATTRIBUTION", - "INCLUDE_NATURAL_SEARCH_TIERED_CONVERSION_ATTRIBUTION" - ], - "enumDescriptions": [ - "", - "", - "" - ] - }, - "omnitureSettings": { - "$ref": "OmnitureSettings", - "description": "Settings for DCM Omniture integration." - }, - "subaccountId": { - "type": "string", - "description": "Subaccount ID of this floodlight configuration. This is a read-only field that can be left blank.", - "format": "int64" - }, - "tagSettings": { - "$ref": "TagSettings", - "description": "Configuration settings for dynamic and image floodlight tags." - }, - "thirdPartyAuthenticationTokens": { - "type": "array", - "description": "List of third-party authentication tokens enabled for this configuration.", - "items": { - "$ref": "ThirdPartyAuthenticationToken" - } - }, - "userDefinedVariableConfigurations": { - "type": "array", - "description": "List of user defined variables enabled for this configuration.", - "items": { - "$ref": "UserDefinedVariableConfiguration" - } - } - } - }, - "FloodlightConfigurationsListResponse": { - "id": "FloodlightConfigurationsListResponse", - "type": "object", - "description": "Floodlight Configuration List Response", - "properties": { - "floodlightConfigurations": { - "type": "array", - "description": "Floodlight configuration collection.", - "items": { - "$ref": "FloodlightConfiguration" - } - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#floodlightConfigurationsListResponse\".", - "default": "dfareporting#floodlightConfigurationsListResponse" - } - } - }, - "FloodlightReportCompatibleFields": { - "id": "FloodlightReportCompatibleFields", - "type": "object", - "description": "Represents fields that are compatible to be selected for a report of type \"FlOODLIGHT\".", - "properties": { - "dimensionFilters": { - "type": "array", - "description": "Dimensions which are compatible to be selected in the \"dimensionFilters\" section of the report.", - "items": { - "$ref": "Dimension" - } - }, - "dimensions": { - "type": "array", - "description": "Dimensions which are compatible to be selected in the \"dimensions\" section of the report.", - "items": { - "$ref": "Dimension" - } - }, - "kind": { - "type": "string", - "description": "The kind of resource this is, in this case dfareporting#floodlightReportCompatibleFields.", - "default": "dfareporting#floodlightReportCompatibleFields" - }, - "metrics": { - "type": "array", - "description": "Metrics which are compatible to be selected in the \"metricNames\" section of the report.", - "items": { - "$ref": "Metric" - } - } - } - }, - "FrequencyCap": { - "id": "FrequencyCap", - "type": "object", - "description": "Frequency Cap.", - "properties": { - "duration": { - "type": "string", - "description": "Duration of time, in seconds, for this frequency cap. The maximum duration is 90 days. Acceptable values are 1 to 7776000, inclusive.", - "format": "int64" - }, - "impressions": { - "type": "string", - "description": "Number of times an individual user can be served the ad within the specified duration. Acceptable values are 1 to 15, inclusive.", - "format": "int64" - } - } - }, - "FsCommand": { - "id": "FsCommand", - "type": "object", - "description": "FsCommand.", - "properties": { - "left": { - "type": "integer", - "description": "Distance from the left of the browser.Applicable when positionOption is DISTANCE_FROM_TOP_LEFT_CORNER.", - "format": "int32" - }, - "positionOption": { - "type": "string", - "description": "Position in the browser where the window will open.", - "enum": [ - "CENTERED", - "DISTANCE_FROM_TOP_LEFT_CORNER" - ], - "enumDescriptions": [ - "", - "" - ] - }, - "top": { - "type": "integer", - "description": "Distance from the top of the browser. Applicable when positionOption is DISTANCE_FROM_TOP_LEFT_CORNER.", - "format": "int32" - }, - "windowHeight": { - "type": "integer", - "description": "Height of the window.", - "format": "int32" - }, - "windowWidth": { - "type": "integer", - "description": "Width of the window.", - "format": "int32" - } - } - }, - "GeoTargeting": { - "id": "GeoTargeting", - "type": "object", - "description": "Geographical Targeting.", - "properties": { - "cities": { - "type": "array", - "description": "Cities to be targeted. For each city only dartId is required. The other fields are populated automatically when the ad is inserted or updated. If targeting a city, do not target or exclude the country of the city, and do not target the metro or region of the city.", - "items": { - "$ref": "City" - } - }, - "countries": { - "type": "array", - "description": "Countries to be targeted or excluded from targeting, depending on the setting of the excludeCountries field. For each country only dartId is required. The other fields are populated automatically when the ad is inserted or updated. If targeting or excluding a country, do not target regions, cities, metros, or postal codes in the same country.", - "items": { - "$ref": "Country" - } - }, - "excludeCountries": { - "type": "boolean", - "description": "Whether or not to exclude the countries in the countries field from targeting. If false, the countries field refers to countries which will be targeted by the ad." - }, - "metros": { - "type": "array", - "description": "Metros to be targeted. For each metro only dmaId is required. The other fields are populated automatically when the ad is inserted or updated. If targeting a metro, do not target or exclude the country of the metro.", - "items": { - "$ref": "Metro" - } - }, - "postalCodes": { - "type": "array", - "description": "Postal codes to be targeted. For each postal code only id is required. The other fields are populated automatically when the ad is inserted or updated. If targeting a postal code, do not target or exclude the country of the postal code.", - "items": { - "$ref": "PostalCode" - } - }, - "regions": { - "type": "array", - "description": "Regions to be targeted. For each region only dartId is required. The other fields are populated automatically when the ad is inserted or updated. If targeting a region, do not target or exclude the country of the region.", - "items": { - "$ref": "Region" - } - } - } - }, - "InventoryItem": { - "id": "InventoryItem", - "type": "object", - "description": "Represents a buy from the DoubleClick Planning inventory store.", - "properties": { - "accountId": { - "type": "string", - "description": "Account ID of this inventory item.", - "format": "int64" - }, - "adSlots": { - "type": "array", - "description": "Ad slots of this inventory item. If this inventory item represents a standalone placement, there will be exactly one ad slot. If this inventory item represents a placement group, there will be more than one ad slot, each representing one child placement in that placement group.", - "items": { - "$ref": "AdSlot" - } - }, - "advertiserId": { - "type": "string", - "description": "Advertiser ID of this inventory item.", - "format": "int64" - }, - "contentCategoryId": { - "type": "string", - "description": "Content category ID of this inventory item.", - "format": "int64" - }, - "estimatedClickThroughRate": { - "type": "string", - "description": "Estimated click-through rate of this inventory item.", - "format": "int64" - }, - "estimatedConversionRate": { - "type": "string", - "description": "Estimated conversion rate of this inventory item.", - "format": "int64" - }, - "id": { - "type": "string", - "description": "ID of this inventory item.", - "format": "int64" - }, - "inPlan": { - "type": "boolean", - "description": "Whether this inventory item is in plan." - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#inventoryItem\".", - "default": "dfareporting#inventoryItem" - }, - "lastModifiedInfo": { - "$ref": "LastModifiedInfo", - "description": "Information about the most recent modification of this inventory item." - }, - "name": { - "type": "string", - "description": "Name of this inventory item. For standalone inventory items, this is the same name as that of its only ad slot. For group inventory items, this can differ from the name of any of its ad slots." - }, - "negotiationChannelId": { - "type": "string", - "description": "Negotiation channel ID of this inventory item.", - "format": "int64" - }, - "orderId": { - "type": "string", - "description": "Order ID of this inventory item.", - "format": "int64" - }, - "placementStrategyId": { - "type": "string", - "description": "Placement strategy ID of this inventory item.", - "format": "int64" - }, - "pricing": { - "$ref": "Pricing", - "description": "Pricing of this inventory item." - }, - "projectId": { - "type": "string", - "description": "Project ID of this inventory item.", - "format": "int64" - }, - "rfpId": { - "type": "string", - "description": "RFP ID of this inventory item.", - "format": "int64" - }, - "siteId": { - "type": "string", - "description": "ID of the site this inventory item is associated with.", - "format": "int64" - }, - "subaccountId": { - "type": "string", - "description": "Subaccount ID of this inventory item.", - "format": "int64" - }, - "type": { - "type": "string", - "description": "Type of inventory item.", - "enum": [ - "PLANNING_PLACEMENT_TYPE_CREDIT", - "PLANNING_PLACEMENT_TYPE_REGULAR" - ], - "enumDescriptions": [ - "", - "" - ] - } - } - }, - "InventoryItemsListResponse": { - "id": "InventoryItemsListResponse", - "type": "object", - "description": "Inventory item List Response", - "properties": { - "inventoryItems": { - "type": "array", - "description": "Inventory item collection", - "items": { - "$ref": "InventoryItem" - } - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#inventoryItemsListResponse\".", - "default": "dfareporting#inventoryItemsListResponse" - }, - "nextPageToken": { - "type": "string", - "description": "Pagination token to be used for the next list operation." - } - } - }, - "KeyValueTargetingExpression": { - "id": "KeyValueTargetingExpression", - "type": "object", - "description": "Key Value Targeting Expression.", - "properties": { - "expression": { - "type": "string", - "description": "Keyword expression being targeted by the ad." - } - } - }, - "LandingPage": { - "id": "LandingPage", - "type": "object", - "description": "Contains information about where a user's browser is taken after the user clicks an ad.", - "properties": { - "advertiserId": { - "type": "string", - "description": "Advertiser ID of this landing page. This is a required field.", - "format": "int64" - }, - "archived": { - "type": "boolean", - "description": "Whether this landing page has been archived." - }, - "id": { - "type": "string", - "description": "ID of this landing page. This is a read-only, auto-generated field.", - "format": "int64" - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#landingPage\".", - "default": "dfareporting#landingPage" - }, - "name": { - "type": "string", - "description": "Name of this landing page. This is a required field. It must be less than 256 characters long." - }, - "url": { - "type": "string", - "description": "URL of this landing page. This is a required field." - } - } - }, - "Language": { - "id": "Language", - "type": "object", - "description": "Contains information about a language that can be targeted by ads.", - "properties": { - "id": { - "type": "string", - "description": "Language ID of this language. This is the ID used for targeting and generating reports.", - "format": "int64" - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#language\".", - "default": "dfareporting#language" - }, - "languageCode": { - "type": "string", - "description": "Format of language code is an ISO 639 two-letter language code optionally followed by an underscore followed by an ISO 3166 code. Examples are \"en\" for English or \"zh_CN\" for Simplified Chinese." - }, - "name": { - "type": "string", - "description": "Name of this language." - } - } - }, - "LanguageTargeting": { - "id": "LanguageTargeting", - "type": "object", - "description": "Language Targeting.", - "properties": { - "languages": { - "type": "array", - "description": "Languages that this ad targets. For each language only languageId is required. The other fields are populated automatically when the ad is inserted or updated.", - "items": { - "$ref": "Language" - } - } - } - }, - "LanguagesListResponse": { - "id": "LanguagesListResponse", - "type": "object", - "description": "Language List Response", - "properties": { - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#languagesListResponse\".", - "default": "dfareporting#languagesListResponse" - }, - "languages": { - "type": "array", - "description": "Language collection.", - "items": { - "$ref": "Language" - } - } - } - }, - "LastModifiedInfo": { - "id": "LastModifiedInfo", - "type": "object", - "description": "Modification timestamp.", - "properties": { - "time": { - "type": "string", - "description": "Timestamp of the last change in milliseconds since epoch.", - "format": "int64" - } - } - }, - "ListPopulationClause": { - "id": "ListPopulationClause", - "type": "object", - "description": "A group clause made up of list population terms representing constraints joined by ORs.", - "properties": { - "terms": { - "type": "array", - "description": "Terms of this list population clause. Each clause is made up of list population terms representing constraints and are joined by ORs.", - "items": { - "$ref": "ListPopulationTerm" - } - } - } - }, - "ListPopulationRule": { - "id": "ListPopulationRule", - "type": "object", - "description": "Remarketing List Population Rule.", - "properties": { - "floodlightActivityId": { - "type": "string", - "description": "Floodlight activity ID associated with this rule. This field can be left blank.", - "format": "int64" - }, - "floodlightActivityName": { - "type": "string", - "description": "Name of floodlight activity associated with this rule. This is a read-only, auto-generated field." - }, - "listPopulationClauses": { - "type": "array", - "description": "Clauses that make up this list population rule. Clauses are joined by ANDs, and the clauses themselves are made up of list population terms which are joined by ORs.", - "items": { - "$ref": "ListPopulationClause" - } - } - } - }, - "ListPopulationTerm": { - "id": "ListPopulationTerm", - "type": "object", - "description": "Remarketing List Population Rule Term.", - "properties": { - "contains": { - "type": "boolean", - "description": "Will be true if the term should check if the user is in the list and false if the term should check if the user is not in the list. This field is only relevant when type is set to LIST_MEMBERSHIP_TERM. False by default." - }, - "negation": { - "type": "boolean", - "description": "Whether to negate the comparison result of this term during rule evaluation. This field is only relevant when type is left unset or set to CUSTOM_VARIABLE_TERM or REFERRER_TERM." - }, - "operator": { - "type": "string", - "description": "Comparison operator of this term. This field is only relevant when type is left unset or set to CUSTOM_VARIABLE_TERM or REFERRER_TERM.", - "enum": [ - "NUM_EQUALS", - "NUM_GREATER_THAN", - "NUM_GREATER_THAN_EQUAL", - "NUM_LESS_THAN", - "NUM_LESS_THAN_EQUAL", - "STRING_CONTAINS", - "STRING_EQUALS" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "" - ] - }, - "remarketingListId": { - "type": "string", - "description": "ID of the list in question. This field is only relevant when type is set to LIST_MEMBERSHIP_TERM.", - "format": "int64" - }, - "type": { - "type": "string", - "description": "List population term type determines the applicable fields in this object. If left unset or set to CUSTOM_VARIABLE_TERM, then variableName, variableFriendlyName, operator, value, and negation are applicable. If set to LIST_MEMBERSHIP_TERM then remarketingListId and contains are applicable. If set to REFERRER_TERM then operator, value, and negation are applicable.", - "enum": [ - "CUSTOM_VARIABLE_TERM", - "LIST_MEMBERSHIP_TERM", - "REFERRER_TERM" - ], - "enumDescriptions": [ - "", - "", - "" - ] - }, - "value": { - "type": "string", - "description": "Literal to compare the variable to. This field is only relevant when type is left unset or set to CUSTOM_VARIABLE_TERM or REFERRER_TERM." - }, - "variableFriendlyName": { - "type": "string", - "description": "Friendly name of this term's variable. This is a read-only, auto-generated field. This field is only relevant when type is left unset or set to CUSTOM_VARIABLE_TERM." - }, - "variableName": { - "type": "string", - "description": "Name of the variable (U1, U2, etc.) being compared in this term. This field is only relevant when type is set to null, CUSTOM_VARIABLE_TERM or REFERRER_TERM." - } - } - }, - "ListTargetingExpression": { - "id": "ListTargetingExpression", - "type": "object", - "description": "Remarketing List Targeting Expression.", - "properties": { - "expression": { - "type": "string", - "description": "Expression describing which lists are being targeted by the ad." - } - } - }, - "LookbackConfiguration": { - "id": "LookbackConfiguration", - "type": "object", - "description": "Lookback configuration settings.", - "properties": { - "clickDuration": { - "type": "integer", - "description": "Lookback window, in days, from the last time a given user clicked on one of your ads. If you enter 0, clicks will not be considered as triggering events for floodlight tracking. If you leave this field blank, the default value for your account will be used. Acceptable values are 0 to 90, inclusive.", - "format": "int32" - }, - "postImpressionActivitiesDuration": { - "type": "integer", - "description": "Lookback window, in days, from the last time a given user viewed one of your ads. If you enter 0, impressions will not be considered as triggering events for floodlight tracking. If you leave this field blank, the default value for your account will be used. Acceptable values are 0 to 90, inclusive.", - "format": "int32" - } - } - }, - "Metric": { - "id": "Metric", - "type": "object", - "description": "Represents a metric.", - "properties": { - "kind": { - "type": "string", - "description": "The kind of resource this is, in this case dfareporting#metric.", - "default": "dfareporting#metric" - }, - "name": { - "type": "string", - "description": "The metric name, e.g. dfa:impressions" - } - } - }, - "Metro": { - "id": "Metro", - "type": "object", - "description": "Contains information about a metro region that can be targeted by ads.", - "properties": { - "countryCode": { - "type": "string", - "description": "Country code of the country to which this metro region belongs." - }, - "countryDartId": { - "type": "string", - "description": "DART ID of the country to which this metro region belongs.", - "format": "int64" - }, - "dartId": { - "type": "string", - "description": "DART ID of this metro region.", - "format": "int64" - }, - "dmaId": { - "type": "string", - "description": "DMA ID of this metro region. This is the ID used for targeting and generating reports, and is equivalent to metro_code.", - "format": "int64" - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#metro\".", - "default": "dfareporting#metro" - }, - "metroCode": { - "type": "string", - "description": "Metro code of this metro region. This is equivalent to dma_id." - }, - "name": { - "type": "string", - "description": "Name of this metro region." - } - } - }, - "MetrosListResponse": { - "id": "MetrosListResponse", - "type": "object", - "description": "Metro List Response", - "properties": { - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#metrosListResponse\".", - "default": "dfareporting#metrosListResponse" - }, - "metros": { - "type": "array", - "description": "Metro collection.", - "items": { - "$ref": "Metro" - } - } - } - }, - "MobileCarrier": { - "id": "MobileCarrier", - "type": "object", - "description": "Contains information about a mobile carrier that can be targeted by ads.", - "properties": { - "countryCode": { - "type": "string", - "description": "Country code of the country to which this mobile carrier belongs." - }, - "countryDartId": { - "type": "string", - "description": "DART ID of the country to which this mobile carrier belongs.", - "format": "int64" - }, - "id": { - "type": "string", - "description": "ID of this mobile carrier.", - "format": "int64" - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#mobileCarrier\".", - "default": "dfareporting#mobileCarrier" - }, - "name": { - "type": "string", - "description": "Name of this mobile carrier." - } - } - }, - "MobileCarriersListResponse": { - "id": "MobileCarriersListResponse", - "type": "object", - "description": "Mobile Carrier List Response", - "properties": { - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#mobileCarriersListResponse\".", - "default": "dfareporting#mobileCarriersListResponse" - }, - "mobileCarriers": { - "type": "array", - "description": "Mobile carrier collection.", - "items": { - "$ref": "MobileCarrier" - } - } - } - }, - "ObjectFilter": { - "id": "ObjectFilter", - "type": "object", - "description": "Object Filter.", - "properties": { - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#objectFilter\".", - "default": "dfareporting#objectFilter" - }, - "objectIds": { - "type": "array", - "description": "Applicable when status is ASSIGNED. The user has access to objects with these object IDs.", - "items": { - "type": "string", - "format": "int64" - } - }, - "status": { - "type": "string", - "description": "Status of the filter. NONE means the user has access to none of the objects. ALL means the user has access to all objects. ASSIGNED means the user has access to the objects with IDs in the objectIds list.", - "enum": [ - "ALL", - "ASSIGNED", - "NONE" - ], - "enumDescriptions": [ - "", - "", - "" - ] - } - } - }, - "OffsetPosition": { - "id": "OffsetPosition", - "type": "object", - "description": "Offset Position.", - "properties": { - "left": { - "type": "integer", - "description": "Offset distance from left side of an asset or a window.", - "format": "int32" - }, - "top": { - "type": "integer", - "description": "Offset distance from top side of an asset or a window.", - "format": "int32" - } - } - }, - "OmnitureSettings": { - "id": "OmnitureSettings", - "type": "object", - "description": "Omniture Integration Settings.", - "properties": { - "omnitureCostDataEnabled": { - "type": "boolean", - "description": "Whether placement cost data will be sent to Omniture. This property can be enabled only if omnitureIntegrationEnabled is true." - }, - "omnitureIntegrationEnabled": { - "type": "boolean", - "description": "Whether Omniture integration is enabled. This property can be enabled only when the \"Advanced Ad Serving\" account setting is enabled." - } - } - }, - "OperatingSystem": { - "id": "OperatingSystem", - "type": "object", - "description": "Contains information about an operating system that can be targeted by ads.", - "properties": { - "dartId": { - "type": "string", - "description": "DART ID of this operating system. This is the ID used for targeting.", - "format": "int64" - }, - "desktop": { - "type": "boolean", - "description": "Whether this operating system is for desktop." - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#operatingSystem\".", - "default": "dfareporting#operatingSystem" - }, - "mobile": { - "type": "boolean", - "description": "Whether this operating system is for mobile." - }, - "name": { - "type": "string", - "description": "Name of this operating system." - } - } - }, - "OperatingSystemVersion": { - "id": "OperatingSystemVersion", - "type": "object", - "description": "Contains information about a particular version of an operating system that can be targeted by ads.", - "properties": { - "id": { - "type": "string", - "description": "ID of this operating system version.", - "format": "int64" - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#operatingSystemVersion\".", - "default": "dfareporting#operatingSystemVersion" - }, - "majorVersion": { - "type": "string", - "description": "Major version (leftmost number) of this operating system version." - }, - "minorVersion": { - "type": "string", - "description": "Minor version (number after the first dot) of this operating system version." - }, - "name": { - "type": "string", - "description": "Name of this operating system version." - }, - "operatingSystem": { - "$ref": "OperatingSystem", - "description": "Operating system of this operating system version." - } - } - }, - "OperatingSystemVersionsListResponse": { - "id": "OperatingSystemVersionsListResponse", - "type": "object", - "description": "Operating System Version List Response", - "properties": { - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#operatingSystemVersionsListResponse\".", - "default": "dfareporting#operatingSystemVersionsListResponse" - }, - "operatingSystemVersions": { - "type": "array", - "description": "Operating system version collection.", - "items": { - "$ref": "OperatingSystemVersion" - } - } - } - }, - "OperatingSystemsListResponse": { - "id": "OperatingSystemsListResponse", - "type": "object", - "description": "Operating System List Response", - "properties": { - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#operatingSystemsListResponse\".", - "default": "dfareporting#operatingSystemsListResponse" - }, - "operatingSystems": { - "type": "array", - "description": "Operating system collection.", - "items": { - "$ref": "OperatingSystem" - } - } - } - }, - "OptimizationActivity": { - "id": "OptimizationActivity", - "type": "object", - "description": "Creative optimization activity.", - "properties": { - "floodlightActivityId": { - "type": "string", - "description": "Floodlight activity ID of this optimization activity. This is a required field.", - "format": "int64" - }, - "floodlightActivityIdDimensionValue": { - "$ref": "DimensionValue", - "description": "Dimension value for the ID of the floodlight activity. This is a read-only, auto-generated field." - }, - "weight": { - "type": "integer", - "description": "Weight associated with this optimization. The weight assigned will be understood in proportion to the weights assigned to the other optimization activities. Value must be greater than or equal to 1.", - "format": "int32" - } - } - }, - "Order": { - "id": "Order", - "type": "object", - "description": "Describes properties of a DoubleClick Planning order.", - "properties": { - "accountId": { - "type": "string", - "description": "Account ID of this order.", - "format": "int64" - }, - "advertiserId": { - "type": "string", - "description": "Advertiser ID of this order.", - "format": "int64" - }, - "approverUserProfileIds": { - "type": "array", - "description": "IDs for users that have to approve documents created for this order.", - "items": { - "type": "string", - "format": "int64" - } - }, - "buyerInvoiceId": { - "type": "string", - "description": "Buyer invoice ID associated with this order." - }, - "buyerOrganizationName": { - "type": "string", - "description": "Name of the buyer organization." - }, - "comments": { - "type": "string", - "description": "Comments in this order." - }, - "contacts": { - "type": "array", - "description": "Contacts for this order.", - "items": { - "$ref": "OrderContact" - } - }, - "id": { - "type": "string", - "description": "ID of this order. This is a read-only, auto-generated field.", - "format": "int64" - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#order\".", - "default": "dfareporting#order" - }, - "lastModifiedInfo": { - "$ref": "LastModifiedInfo", - "description": "Information about the most recent modification of this order." - }, - "name": { - "type": "string", - "description": "Name of this order." - }, - "notes": { - "type": "string", - "description": "Notes of this order." - }, - "planningTermId": { - "type": "string", - "description": "ID of the terms and conditions template used in this order.", - "format": "int64" - }, - "projectId": { - "type": "string", - "description": "Project ID of this order.", - "format": "int64" - }, - "sellerOrderId": { - "type": "string", - "description": "Seller order ID associated with this order." - }, - "sellerOrganizationName": { - "type": "string", - "description": "Name of the seller organization." - }, - "siteId": { - "type": "array", - "description": "Site IDs this order is associated with.", - "items": { - "type": "string", - "format": "int64" - } - }, - "siteNames": { - "type": "array", - "description": "Free-form site names this order is associated with.", - "items": { - "type": "string" - } - }, - "subaccountId": { - "type": "string", - "description": "Subaccount ID of this order.", - "format": "int64" - }, - "termsAndConditions": { - "type": "string", - "description": "Terms and conditions of this order." - } - } - }, - "OrderContact": { - "id": "OrderContact", - "type": "object", - "description": "Contact of an order.", - "properties": { - "contactInfo": { - "type": "string", - "description": "Free-form information about this contact. It could be any information related to this contact in addition to type, title, name, and signature user profile ID." - }, - "contactName": { - "type": "string", - "description": "Name of this contact." - }, - "contactTitle": { - "type": "string", - "description": "Title of this contact." - }, - "contactType": { - "type": "string", - "description": "Type of this contact.", - "enum": [ - "PLANNING_ORDER_CONTACT_BUYER_BILLING_CONTACT", - "PLANNING_ORDER_CONTACT_BUYER_CONTACT", - "PLANNING_ORDER_CONTACT_SELLER_CONTACT" - ], - "enumDescriptions": [ - "", - "", - "" - ] - }, - "signatureUserProfileId": { - "type": "string", - "description": "ID of the user profile containing the signature that will be embedded into order documents.", - "format": "int64" - } - } - }, - "OrderDocument": { - "id": "OrderDocument", - "type": "object", - "description": "Contains properties of a DoubleClick Planning order document.", - "properties": { - "accountId": { - "type": "string", - "description": "Account ID of this order document.", - "format": "int64" - }, - "advertiserId": { - "type": "string", - "description": "Advertiser ID of this order document.", - "format": "int64" - }, - "amendedOrderDocumentId": { - "type": "string", - "description": "The amended order document ID of this order document. An order document can be created by optionally amending another order document so that the change history can be preserved.", - "format": "int64" - }, - "approvedByUserProfileIds": { - "type": "array", - "description": "IDs of users who have approved this order document.", - "items": { - "type": "string", - "format": "int64" - } - }, - "cancelled": { - "type": "boolean", - "description": "Whether this order document is cancelled." - }, - "createdInfo": { - "$ref": "LastModifiedInfo", - "description": "Information about the creation of this order document." - }, - "effectiveDate": { - "type": "string", - "description": "Effective date of this order document.", - "format": "date" - }, - "id": { - "type": "string", - "description": "ID of this order document.", - "format": "int64" - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#orderDocument\".", - "default": "dfareporting#orderDocument" - }, - "lastSentRecipients": { - "type": "array", - "description": "List of email addresses that received the last sent document.", - "items": { - "type": "string" - } - }, - "lastSentTime": { - "type": "string", - "description": "Timestamp of the last email sent with this order document.", - "format": "date-time" - }, - "orderId": { - "type": "string", - "description": "ID of the order from which this order document is created.", - "format": "int64" - }, - "projectId": { - "type": "string", - "description": "Project ID of this order document.", - "format": "int64" - }, - "signed": { - "type": "boolean", - "description": "Whether this order document has been signed." - }, - "subaccountId": { - "type": "string", - "description": "Subaccount ID of this order document.", - "format": "int64" - }, - "title": { - "type": "string", - "description": "Title of this order document." - }, - "type": { - "type": "string", - "description": "Type of this order document", - "enum": [ - "PLANNING_ORDER_TYPE_CHANGE_ORDER", - "PLANNING_ORDER_TYPE_INSERTION_ORDER" - ], - "enumDescriptions": [ - "", - "" - ] - } - } - }, - "OrderDocumentsListResponse": { - "id": "OrderDocumentsListResponse", - "type": "object", - "description": "Order document List Response", - "properties": { - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#orderDocumentsListResponse\".", - "default": "dfareporting#orderDocumentsListResponse" - }, - "nextPageToken": { - "type": "string", - "description": "Pagination token to be used for the next list operation." - }, - "orderDocuments": { - "type": "array", - "description": "Order document collection", - "items": { - "$ref": "OrderDocument" - } - } - } - }, - "OrdersListResponse": { - "id": "OrdersListResponse", - "type": "object", - "description": "Order List Response", - "properties": { - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#ordersListResponse\".", - "default": "dfareporting#ordersListResponse" - }, - "nextPageToken": { - "type": "string", - "description": "Pagination token to be used for the next list operation." - }, - "orders": { - "type": "array", - "description": "Order collection.", - "items": { - "$ref": "Order" - } - } - } - }, - "PathToConversionReportCompatibleFields": { - "id": "PathToConversionReportCompatibleFields", - "type": "object", - "description": "Represents fields that are compatible to be selected for a report of type \"PATH_TO_CONVERSION\".", - "properties": { - "conversionDimensions": { - "type": "array", - "description": "Conversion dimensions which are compatible to be selected in the \"conversionDimensions\" section of the report.", - "items": { - "$ref": "Dimension" - } - }, - "customFloodlightVariables": { - "type": "array", - "description": "Custom floodlight variables which are compatible to be selected in the \"customFloodlightVariables\" section of the report.", - "items": { - "$ref": "Dimension" - } - }, - "kind": { - "type": "string", - "description": "The kind of resource this is, in this case dfareporting#pathToConversionReportCompatibleFields.", - "default": "dfareporting#pathToConversionReportCompatibleFields" - }, - "metrics": { - "type": "array", - "description": "Metrics which are compatible to be selected in the \"metricNames\" section of the report.", - "items": { - "$ref": "Metric" - } - }, - "perInteractionDimensions": { - "type": "array", - "description": "Per-interaction dimensions which are compatible to be selected in the \"perInteractionDimensions\" section of the report.", - "items": { - "$ref": "Dimension" - } - } - } - }, - "Placement": { - "id": "Placement", - "type": "object", - "description": "Contains properties of a placement.", - "properties": { - "accountId": { - "type": "string", - "description": "Account ID of this placement. This field can be left blank.", - "format": "int64" - }, - "adBlockingOptOut": { - "type": "boolean", - "description": "Whether this placement opts out of ad blocking. When true, ad blocking is disabled for this placement. When false, the campaign and site settings take effect." - }, - "advertiserId": { - "type": "string", - "description": "Advertiser ID of this placement. This field can be left blank.", - "format": "int64" - }, - "advertiserIdDimensionValue": { - "$ref": "DimensionValue", - "description": "Dimension value for the ID of the advertiser. This is a read-only, auto-generated field." - }, - "archived": { - "type": "boolean", - "description": "Whether this placement is archived." - }, - "campaignId": { - "type": "string", - "description": "Campaign ID of this placement. This field is a required field on insertion.", - "format": "int64" - }, - "campaignIdDimensionValue": { - "$ref": "DimensionValue", - "description": "Dimension value for the ID of the campaign. This is a read-only, auto-generated field." - }, - "comment": { - "type": "string", - "description": "Comments for this placement." - }, - "compatibility": { - "type": "string", - "description": "Placement compatibility. DISPLAY and DISPLAY_INTERSTITIAL refer to rendering on desktop, on mobile devices or in mobile apps for regular or interstitial ads respectively. APP and APP_INTERSTITIAL are no longer allowed for new placement insertions. Instead, use DISPLAY or DISPLAY_INTERSTITIAL. IN_STREAM_VIDEO refers to rendering in in-stream video ads developed with the VAST standard. This field is required on insertion.", - "enum": [ - "APP", - "APP_INTERSTITIAL", - "DISPLAY", - "DISPLAY_INTERSTITIAL", - "IN_STREAM_VIDEO" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "" - ] - }, - "contentCategoryId": { - "type": "string", - "description": "ID of the content category assigned to this placement.", - "format": "int64" - }, - "createInfo": { - "$ref": "LastModifiedInfo", - "description": "Information about the creation of this placement. This is a read-only field." - }, - "directorySiteId": { - "type": "string", - "description": "Directory site ID of this placement. On insert, you must set either this field or the siteId field to specify the site associated with this placement. This is a required field that is read-only after insertion.", - "format": "int64" - }, - "directorySiteIdDimensionValue": { - "$ref": "DimensionValue", - "description": "Dimension value for the ID of the directory site. This is a read-only, auto-generated field." - }, - "externalId": { - "type": "string", - "description": "External ID for this placement." - }, - "id": { - "type": "string", - "description": "ID of this placement. This is a read-only, auto-generated field.", - "format": "int64" - }, - "idDimensionValue": { - "$ref": "DimensionValue", - "description": "Dimension value for the ID of this placement. This is a read-only, auto-generated field." - }, - "keyName": { - "type": "string", - "description": "Key name of this placement. This is a read-only, auto-generated field." - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#placement\".", - "default": "dfareporting#placement" - }, - "lastModifiedInfo": { - "$ref": "LastModifiedInfo", - "description": "Information about the most recent modification of this placement. This is a read-only field." - }, - "lookbackConfiguration": { - "$ref": "LookbackConfiguration", - "description": "Lookback window settings for this placement." - }, - "name": { - "type": "string", - "description": "Name of this placement.This is a required field and must be less than 256 characters long." - }, - "paymentApproved": { - "type": "boolean", - "description": "Whether payment was approved for this placement. This is a read-only field relevant only to publisher-paid placements." - }, - "paymentSource": { - "type": "string", - "description": "Payment source for this placement. This is a required field that is read-only after insertion.", - "enum": [ - "PLACEMENT_AGENCY_PAID", - "PLACEMENT_PUBLISHER_PAID" - ], - "enumDescriptions": [ - "", - "" - ] - }, - "placementGroupId": { - "type": "string", - "description": "ID of this placement's group, if applicable.", - "format": "int64" - }, - "placementGroupIdDimensionValue": { - "$ref": "DimensionValue", - "description": "Dimension value for the ID of the placement group. This is a read-only, auto-generated field." - }, - "placementStrategyId": { - "type": "string", - "description": "ID of the placement strategy assigned to this placement.", - "format": "int64" - }, - "pricingSchedule": { - "$ref": "PricingSchedule", - "description": "Pricing schedule of this placement. This field is required on insertion, specifically subfields startDate, endDate and pricingType." - }, - "primary": { - "type": "boolean", - "description": "Whether this placement is the primary placement of a roadblock (placement group). You cannot change this field from true to false. Setting this field to true will automatically set the primary field on the original primary placement of the roadblock to false, and it will automatically set the roadblock's primaryPlacementId field to the ID of this placement." - }, - "publisherUpdateInfo": { - "$ref": "LastModifiedInfo", - "description": "Information about the last publisher update. This is a read-only field." - }, - "siteId": { - "type": "string", - "description": "Site ID associated with this placement. On insert, you must set either this field or the directorySiteId field to specify the site associated with this placement. This is a required field that is read-only after insertion.", - "format": "int64" - }, - "siteIdDimensionValue": { - "$ref": "DimensionValue", - "description": "Dimension value for the ID of the site. This is a read-only, auto-generated field." - }, - "size": { - "$ref": "Size", - "description": "Size associated with this placement. When inserting or updating a placement, only the size ID field is used. This field is required on insertion." - }, - "sslRequired": { - "type": "boolean", - "description": "Whether creatives assigned to this placement must be SSL-compliant." - }, - "status": { - "type": "string", - "description": "Third-party placement status.", - "enum": [ - "ACKNOWLEDGE_ACCEPTANCE", - "ACKNOWLEDGE_REJECTION", - "DRAFT", - "PAYMENT_ACCEPTED", - "PAYMENT_REJECTED", - "PENDING_REVIEW" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "" - ] - }, - "subaccountId": { - "type": "string", - "description": "Subaccount ID of this placement. This field can be left blank.", - "format": "int64" - }, - "tagFormats": { - "type": "array", - "description": "Tag formats to generate for this placement. This field is required on insertion.\nAcceptable values are:\n- \"PLACEMENT_TAG_STANDARD\"\n- \"PLACEMENT_TAG_IFRAME_JAVASCRIPT\"\n- \"PLACEMENT_TAG_IFRAME_ILAYER\"\n- \"PLACEMENT_TAG_INTERNAL_REDIRECT\"\n- \"PLACEMENT_TAG_JAVASCRIPT\"\n- \"PLACEMENT_TAG_INTERSTITIAL_IFRAME_JAVASCRIPT\"\n- \"PLACEMENT_TAG_INTERSTITIAL_INTERNAL_REDIRECT\"\n- \"PLACEMENT_TAG_INTERSTITIAL_JAVASCRIPT\"\n- \"PLACEMENT_TAG_CLICK_COMMANDS\"\n- \"PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH\"\n- \"PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH_VAST_3\"\n- \"PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH_VAST_4\"\n- \"PLACEMENT_TAG_TRACKING\"\n- \"PLACEMENT_TAG_TRACKING_IFRAME\"\n- \"PLACEMENT_TAG_TRACKING_JAVASCRIPT\"", - "items": { - "type": "string", - "enum": [ - "PLACEMENT_TAG_CLICK_COMMANDS", - "PLACEMENT_TAG_IFRAME_ILAYER", - "PLACEMENT_TAG_IFRAME_JAVASCRIPT", - "PLACEMENT_TAG_IFRAME_JAVASCRIPT_LEGACY", - "PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH", - "PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH_VAST_3", - "PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH_VAST_4", - "PLACEMENT_TAG_INTERNAL_REDIRECT", - "PLACEMENT_TAG_INTERSTITIAL_IFRAME_JAVASCRIPT", - "PLACEMENT_TAG_INTERSTITIAL_IFRAME_JAVASCRIPT_LEGACY", - "PLACEMENT_TAG_INTERSTITIAL_INTERNAL_REDIRECT", - "PLACEMENT_TAG_INTERSTITIAL_JAVASCRIPT", - "PLACEMENT_TAG_INTERSTITIAL_JAVASCRIPT_LEGACY", - "PLACEMENT_TAG_JAVASCRIPT", - "PLACEMENT_TAG_JAVASCRIPT_LEGACY", - "PLACEMENT_TAG_STANDARD", - "PLACEMENT_TAG_TRACKING", - "PLACEMENT_TAG_TRACKING_IFRAME", - "PLACEMENT_TAG_TRACKING_JAVASCRIPT" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - } - }, - "tagSetting": { - "$ref": "TagSetting", - "description": "Tag settings for this placement." - }, - "videoActiveViewOptOut": { - "type": "boolean", - "description": "Whether Verification and ActiveView are disabled for in-stream video creatives for this placement. The same setting videoActiveViewOptOut exists on the site level -- the opt out occurs if either of these settings are true. These settings are distinct from DirectorySites.settings.activeViewOptOut or Sites.siteSettings.activeViewOptOut which only apply to display ads. However, Accounts.activeViewOptOut opts out both video traffic, as well as display ads, from Verification and ActiveView." - }, - "videoSettings": { - "$ref": "VideoSettings", - "description": "A collection of settings which affect video creatives served through this placement. Applicable to placements with IN_STREAM_VIDEO compatibility." - }, - "vpaidAdapterChoice": { - "type": "string", - "description": "VPAID adapter setting for this placement. Controls which VPAID format the measurement adapter will use for in-stream video creatives assigned to this placement.\n\nNote: Flash is no longer supported. This field now defaults to HTML5 when the following values are provided: FLASH, BOTH.", - "enum": [ - "BOTH", - "DEFAULT", - "FLASH", - "HTML5" - ], - "enumDescriptions": [ - "", - "", - "", - "" - ] - } - } - }, - "PlacementAssignment": { - "id": "PlacementAssignment", - "type": "object", - "description": "Placement Assignment.", - "properties": { - "active": { - "type": "boolean", - "description": "Whether this placement assignment is active. When true, the placement will be included in the ad's rotation." - }, - "placementId": { - "type": "string", - "description": "ID of the placement to be assigned. This is a required field.", - "format": "int64" - }, - "placementIdDimensionValue": { - "$ref": "DimensionValue", - "description": "Dimension value for the ID of the placement. This is a read-only, auto-generated field." - }, - "sslRequired": { - "type": "boolean", - "description": "Whether the placement to be assigned requires SSL. This is a read-only field that is auto-generated when the ad is inserted or updated." - } - } - }, - "PlacementGroup": { - "id": "PlacementGroup", - "type": "object", - "description": "Contains properties of a package or roadblock.", - "properties": { - "accountId": { - "type": "string", - "description": "Account ID of this placement group. This is a read-only field that can be left blank.", - "format": "int64" - }, - "advertiserId": { - "type": "string", - "description": "Advertiser ID of this placement group. This is a required field on insertion.", - "format": "int64" - }, - "advertiserIdDimensionValue": { - "$ref": "DimensionValue", - "description": "Dimension value for the ID of the advertiser. This is a read-only, auto-generated field." - }, - "archived": { - "type": "boolean", - "description": "Whether this placement group is archived." - }, - "campaignId": { - "type": "string", - "description": "Campaign ID of this placement group. This field is required on insertion.", - "format": "int64" - }, - "campaignIdDimensionValue": { - "$ref": "DimensionValue", - "description": "Dimension value for the ID of the campaign. This is a read-only, auto-generated field." - }, - "childPlacementIds": { - "type": "array", - "description": "IDs of placements which are assigned to this placement group. This is a read-only, auto-generated field.", - "items": { - "type": "string", - "format": "int64" - } - }, - "comment": { - "type": "string", - "description": "Comments for this placement group." - }, - "contentCategoryId": { - "type": "string", - "description": "ID of the content category assigned to this placement group.", - "format": "int64" - }, - "createInfo": { - "$ref": "LastModifiedInfo", - "description": "Information about the creation of this placement group. This is a read-only field." - }, - "directorySiteId": { - "type": "string", - "description": "Directory site ID associated with this placement group. On insert, you must set either this field or the site_id field to specify the site associated with this placement group. This is a required field that is read-only after insertion.", - "format": "int64" - }, - "directorySiteIdDimensionValue": { - "$ref": "DimensionValue", - "description": "Dimension value for the ID of the directory site. This is a read-only, auto-generated field." - }, - "externalId": { - "type": "string", - "description": "External ID for this placement." - }, - "id": { - "type": "string", - "description": "ID of this placement group. This is a read-only, auto-generated field.", - "format": "int64" - }, - "idDimensionValue": { - "$ref": "DimensionValue", - "description": "Dimension value for the ID of this placement group. This is a read-only, auto-generated field." - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#placementGroup\".", - "default": "dfareporting#placementGroup" - }, - "lastModifiedInfo": { - "$ref": "LastModifiedInfo", - "description": "Information about the most recent modification of this placement group. This is a read-only field." - }, - "name": { - "type": "string", - "description": "Name of this placement group. This is a required field and must be less than 256 characters long." - }, - "placementGroupType": { - "type": "string", - "description": "Type of this placement group. A package is a simple group of placements that acts as a single pricing point for a group of tags. A roadblock is a group of placements that not only acts as a single pricing point, but also assumes that all the tags in it will be served at the same time. A roadblock requires one of its assigned placements to be marked as primary for reporting. This field is required on insertion.", - "enum": [ - "PLACEMENT_PACKAGE", - "PLACEMENT_ROADBLOCK" - ], - "enumDescriptions": [ - "", - "" - ] - }, - "placementStrategyId": { - "type": "string", - "description": "ID of the placement strategy assigned to this placement group.", - "format": "int64" - }, - "pricingSchedule": { - "$ref": "PricingSchedule", - "description": "Pricing schedule of this placement group. This field is required on insertion." - }, - "primaryPlacementId": { - "type": "string", - "description": "ID of the primary placement, used to calculate the media cost of a roadblock (placement group). Modifying this field will automatically modify the primary field on all affected roadblock child placements.", - "format": "int64" - }, - "primaryPlacementIdDimensionValue": { - "$ref": "DimensionValue", - "description": "Dimension value for the ID of the primary placement. This is a read-only, auto-generated field." - }, - "siteId": { - "type": "string", - "description": "Site ID associated with this placement group. On insert, you must set either this field or the directorySiteId field to specify the site associated with this placement group. This is a required field that is read-only after insertion.", - "format": "int64" - }, - "siteIdDimensionValue": { - "$ref": "DimensionValue", - "description": "Dimension value for the ID of the site. This is a read-only, auto-generated field." - }, - "subaccountId": { - "type": "string", - "description": "Subaccount ID of this placement group. This is a read-only field that can be left blank.", - "format": "int64" - } - } - }, - "PlacementGroupsListResponse": { - "id": "PlacementGroupsListResponse", - "type": "object", - "description": "Placement Group List Response", - "properties": { - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#placementGroupsListResponse\".", - "default": "dfareporting#placementGroupsListResponse" - }, - "nextPageToken": { - "type": "string", - "description": "Pagination token to be used for the next list operation." - }, - "placementGroups": { - "type": "array", - "description": "Placement group collection.", - "items": { - "$ref": "PlacementGroup" - } - } - } - }, - "PlacementStrategiesListResponse": { - "id": "PlacementStrategiesListResponse", - "type": "object", - "description": "Placement Strategy List Response", - "properties": { - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#placementStrategiesListResponse\".", - "default": "dfareporting#placementStrategiesListResponse" - }, - "nextPageToken": { - "type": "string", - "description": "Pagination token to be used for the next list operation." - }, - "placementStrategies": { - "type": "array", - "description": "Placement strategy collection.", - "items": { - "$ref": "PlacementStrategy" - } - } - } - }, - "PlacementStrategy": { - "id": "PlacementStrategy", - "type": "object", - "description": "Contains properties of a placement strategy.", - "properties": { - "accountId": { - "type": "string", - "description": "Account ID of this placement strategy.This is a read-only field that can be left blank.", - "format": "int64" - }, - "id": { - "type": "string", - "description": "ID of this placement strategy. This is a read-only, auto-generated field.", - "format": "int64" - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#placementStrategy\".", - "default": "dfareporting#placementStrategy" - }, - "name": { - "type": "string", - "description": "Name of this placement strategy. This is a required field. It must be less than 256 characters long and unique among placement strategies of the same account." - } - } - }, - "PlacementTag": { - "id": "PlacementTag", - "type": "object", - "description": "Placement Tag", - "properties": { - "placementId": { - "type": "string", - "description": "Placement ID", - "format": "int64" - }, - "tagDatas": { - "type": "array", - "description": "Tags generated for this placement.", - "items": { - "$ref": "TagData" - } - } - } - }, - "PlacementsGenerateTagsResponse": { - "id": "PlacementsGenerateTagsResponse", - "type": "object", - "description": "Placement GenerateTags Response", - "properties": { - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#placementsGenerateTagsResponse\".", - "default": "dfareporting#placementsGenerateTagsResponse" - }, - "placementTags": { - "type": "array", - "description": "Set of generated tags for the specified placements.", - "items": { - "$ref": "PlacementTag" - } - } - } - }, - "PlacementsListResponse": { - "id": "PlacementsListResponse", - "type": "object", - "description": "Placement List Response", - "properties": { - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#placementsListResponse\".", - "default": "dfareporting#placementsListResponse" - }, - "nextPageToken": { - "type": "string", - "description": "Pagination token to be used for the next list operation." - }, - "placements": { - "type": "array", - "description": "Placement collection.", - "items": { - "$ref": "Placement" - } - } - } - }, - "PlatformType": { - "id": "PlatformType", - "type": "object", - "description": "Contains information about a platform type that can be targeted by ads.", - "properties": { - "id": { - "type": "string", - "description": "ID of this platform type.", - "format": "int64" - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#platformType\".", - "default": "dfareporting#platformType" - }, - "name": { - "type": "string", - "description": "Name of this platform type." - } - } - }, - "PlatformTypesListResponse": { - "id": "PlatformTypesListResponse", - "type": "object", - "description": "Platform Type List Response", - "properties": { - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#platformTypesListResponse\".", - "default": "dfareporting#platformTypesListResponse" - }, - "platformTypes": { - "type": "array", - "description": "Platform type collection.", - "items": { - "$ref": "PlatformType" - } - } - } - }, - "PopupWindowProperties": { - "id": "PopupWindowProperties", - "type": "object", - "description": "Popup Window Properties.", - "properties": { - "dimension": { - "$ref": "Size", - "description": "Popup dimension for a creative. This is a read-only field. Applicable to the following creative types: all RICH_MEDIA and all VPAID" - }, - "offset": { - "$ref": "OffsetPosition", - "description": "Upper-left corner coordinates of the popup window. Applicable if positionType is COORDINATES." - }, - "positionType": { - "type": "string", - "description": "Popup window position either centered or at specific coordinate.", - "enum": [ - "CENTER", - "COORDINATES" - ], - "enumDescriptions": [ - "", - "" - ] - }, - "showAddressBar": { - "type": "boolean", - "description": "Whether to display the browser address bar." - }, - "showMenuBar": { - "type": "boolean", - "description": "Whether to display the browser menu bar." - }, - "showScrollBar": { - "type": "boolean", - "description": "Whether to display the browser scroll bar." - }, - "showStatusBar": { - "type": "boolean", - "description": "Whether to display the browser status bar." - }, - "showToolBar": { - "type": "boolean", - "description": "Whether to display the browser tool bar." - }, - "title": { - "type": "string", - "description": "Title of popup window." - } - } - }, - "PostalCode": { - "id": "PostalCode", - "type": "object", - "description": "Contains information about a postal code that can be targeted by ads.", - "properties": { - "code": { - "type": "string", - "description": "Postal code. This is equivalent to the id field." - }, - "countryCode": { - "type": "string", - "description": "Country code of the country to which this postal code belongs." - }, - "countryDartId": { - "type": "string", - "description": "DART ID of the country to which this postal code belongs.", - "format": "int64" - }, - "id": { - "type": "string", - "description": "ID of this postal code." - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#postalCode\".", - "default": "dfareporting#postalCode" - } - } - }, - "PostalCodesListResponse": { - "id": "PostalCodesListResponse", - "type": "object", - "description": "Postal Code List Response", - "properties": { - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#postalCodesListResponse\".", - "default": "dfareporting#postalCodesListResponse" - }, - "postalCodes": { - "type": "array", - "description": "Postal code collection.", - "items": { - "$ref": "PostalCode" - } - } - } - }, - "Pricing": { - "id": "Pricing", - "type": "object", - "description": "Pricing Information", - "properties": { - "capCostType": { - "type": "string", - "description": "Cap cost type of this inventory item.", - "enum": [ - "PLANNING_PLACEMENT_CAP_COST_TYPE_CUMULATIVE", - "PLANNING_PLACEMENT_CAP_COST_TYPE_MONTHLY", - "PLANNING_PLACEMENT_CAP_COST_TYPE_NONE" - ], - "enumDescriptions": [ - "", - "", - "" - ] - }, - "endDate": { - "type": "string", - "description": "End date of this inventory item.", - "format": "date" - }, - "flights": { - "type": "array", - "description": "Flights of this inventory item. A flight (a.k.a. pricing period) represents the inventory item pricing information for a specific period of time.", - "items": { - "$ref": "Flight" - } - }, - "groupType": { - "type": "string", - "description": "Group type of this inventory item if it represents a placement group. Is null otherwise. There are two type of placement groups: PLANNING_PLACEMENT_GROUP_TYPE_PACKAGE is a simple group of inventory items that acts as a single pricing point for a group of tags. PLANNING_PLACEMENT_GROUP_TYPE_ROADBLOCK is a group of inventory items that not only acts as a single pricing point, but also assumes that all the tags in it will be served at the same time. A roadblock requires one of its assigned inventory items to be marked as primary.", - "enum": [ - "PLANNING_PLACEMENT_GROUP_TYPE_PACKAGE", - "PLANNING_PLACEMENT_GROUP_TYPE_ROADBLOCK" - ], - "enumDescriptions": [ - "", - "" - ] - }, - "pricingType": { - "type": "string", - "description": "Pricing type of this inventory item.", - "enum": [ - "PLANNING_PLACEMENT_PRICING_TYPE_CLICKS", - "PLANNING_PLACEMENT_PRICING_TYPE_CPA", - "PLANNING_PLACEMENT_PRICING_TYPE_CPC", - "PLANNING_PLACEMENT_PRICING_TYPE_CPM", - "PLANNING_PLACEMENT_PRICING_TYPE_CPM_ACTIVEVIEW", - "PLANNING_PLACEMENT_PRICING_TYPE_FLAT_RATE_CLICKS", - "PLANNING_PLACEMENT_PRICING_TYPE_FLAT_RATE_IMPRESSIONS", - "PLANNING_PLACEMENT_PRICING_TYPE_IMPRESSIONS" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "startDate": { - "type": "string", - "description": "Start date of this inventory item.", - "format": "date" - } - } - }, - "PricingSchedule": { - "id": "PricingSchedule", - "type": "object", - "description": "Pricing Schedule", - "properties": { - "capCostOption": { - "type": "string", - "description": "Placement cap cost option.", - "enum": [ - "CAP_COST_CUMULATIVE", - "CAP_COST_MONTHLY", - "CAP_COST_NONE" - ], - "enumDescriptions": [ - "", - "", - "" - ] - }, - "disregardOverdelivery": { - "type": "boolean", - "description": "Whether cap costs are ignored by ad serving." - }, - "endDate": { - "type": "string", - "description": "Placement end date. This date must be later than, or the same day as, the placement start date, but not later than the campaign end date. If, for example, you set 6/25/2015 as both the start and end dates, the effective placement date is just that day only, 6/25/2015. The hours, minutes, and seconds of the end date should not be set, as doing so will result in an error. This field is required on insertion.", - "format": "date" - }, - "flighted": { - "type": "boolean", - "description": "Whether this placement is flighted. If true, pricing periods will be computed automatically." - }, - "floodlightActivityId": { - "type": "string", - "description": "Floodlight activity ID associated with this placement. This field should be set when placement pricing type is set to PRICING_TYPE_CPA.", - "format": "int64" - }, - "pricingPeriods": { - "type": "array", - "description": "Pricing periods for this placement.", - "items": { - "$ref": "PricingSchedulePricingPeriod" - } - }, - "pricingType": { - "type": "string", - "description": "Placement pricing type. This field is required on insertion.", - "enum": [ - "PRICING_TYPE_CPA", - "PRICING_TYPE_CPC", - "PRICING_TYPE_CPM", - "PRICING_TYPE_CPM_ACTIVEVIEW", - "PRICING_TYPE_FLAT_RATE_CLICKS", - "PRICING_TYPE_FLAT_RATE_IMPRESSIONS" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "" - ] - }, - "startDate": { - "type": "string", - "description": "Placement start date. This date must be later than, or the same day as, the campaign start date. The hours, minutes, and seconds of the start date should not be set, as doing so will result in an error. This field is required on insertion.", - "format": "date" - }, - "testingStartDate": { - "type": "string", - "description": "Testing start date of this placement. The hours, minutes, and seconds of the start date should not be set, as doing so will result in an error.", - "format": "date" - } - } - }, - "PricingSchedulePricingPeriod": { - "id": "PricingSchedulePricingPeriod", - "type": "object", - "description": "Pricing Period", - "properties": { - "endDate": { - "type": "string", - "description": "Pricing period end date. This date must be later than, or the same day as, the pricing period start date, but not later than the placement end date. The period end date can be the same date as the period start date. If, for example, you set 6/25/2015 as both the start and end dates, the effective pricing period date is just that day only, 6/25/2015. The hours, minutes, and seconds of the end date should not be set, as doing so will result in an error.", - "format": "date" - }, - "pricingComment": { - "type": "string", - "description": "Comments for this pricing period." - }, - "rateOrCostNanos": { - "type": "string", - "description": "Rate or cost of this pricing period in nanos (i.e., multipled by 1000000000). Acceptable values are 0 to 1000000000000000000, inclusive.", - "format": "int64" - }, - "startDate": { - "type": "string", - "description": "Pricing period start date. This date must be later than, or the same day as, the placement start date. The hours, minutes, and seconds of the start date should not be set, as doing so will result in an error.", - "format": "date" - }, - "units": { - "type": "string", - "description": "Units of this pricing period. Acceptable values are 0 to 10000000000, inclusive.", - "format": "int64" - } - } - }, - "Project": { - "id": "Project", - "type": "object", - "description": "Contains properties of a DoubleClick Planning project.", - "properties": { - "accountId": { - "type": "string", - "description": "Account ID of this project.", - "format": "int64" - }, - "advertiserId": { - "type": "string", - "description": "Advertiser ID of this project.", - "format": "int64" - }, - "audienceAgeGroup": { - "type": "string", - "description": "Audience age group of this project.", - "enum": [ - "PLANNING_AUDIENCE_AGE_18_24", - "PLANNING_AUDIENCE_AGE_25_34", - "PLANNING_AUDIENCE_AGE_35_44", - "PLANNING_AUDIENCE_AGE_45_54", - "PLANNING_AUDIENCE_AGE_55_64", - "PLANNING_AUDIENCE_AGE_65_OR_MORE", - "PLANNING_AUDIENCE_AGE_UNKNOWN" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "" - ] - }, - "audienceGender": { - "type": "string", - "description": "Audience gender of this project.", - "enum": [ - "PLANNING_AUDIENCE_GENDER_FEMALE", - "PLANNING_AUDIENCE_GENDER_MALE" - ], - "enumDescriptions": [ - "", - "" - ] - }, - "budget": { - "type": "string", - "description": "Budget of this project in the currency specified by the current account. The value stored in this field represents only the non-fractional amount. For example, for USD, the smallest value that can be represented by this field is 1 US dollar.", - "format": "int64" - }, - "clientBillingCode": { - "type": "string", - "description": "Client billing code of this project." - }, - "clientName": { - "type": "string", - "description": "Name of the project client." - }, - "endDate": { - "type": "string", - "description": "End date of the project.", - "format": "date" - }, - "id": { - "type": "string", - "description": "ID of this project. This is a read-only, auto-generated field.", - "format": "int64" - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#project\".", - "default": "dfareporting#project" - }, - "lastModifiedInfo": { - "$ref": "LastModifiedInfo", - "description": "Information about the most recent modification of this project." - }, - "name": { - "type": "string", - "description": "Name of this project." - }, - "overview": { - "type": "string", - "description": "Overview of this project." - }, - "startDate": { - "type": "string", - "description": "Start date of the project.", - "format": "date" - }, - "subaccountId": { - "type": "string", - "description": "Subaccount ID of this project.", - "format": "int64" - }, - "targetClicks": { - "type": "string", - "description": "Number of clicks that the advertiser is targeting.", - "format": "int64" - }, - "targetConversions": { - "type": "string", - "description": "Number of conversions that the advertiser is targeting.", - "format": "int64" - }, - "targetCpaNanos": { - "type": "string", - "description": "CPA that the advertiser is targeting.", - "format": "int64" - }, - "targetCpcNanos": { - "type": "string", - "description": "CPC that the advertiser is targeting.", - "format": "int64" - }, - "targetCpmActiveViewNanos": { - "type": "string", - "description": "vCPM from Active View that the advertiser is targeting.", - "format": "int64" - }, - "targetCpmNanos": { - "type": "string", - "description": "CPM that the advertiser is targeting.", - "format": "int64" - }, - "targetImpressions": { - "type": "string", - "description": "Number of impressions that the advertiser is targeting.", - "format": "int64" - } - } - }, - "ProjectsListResponse": { - "id": "ProjectsListResponse", - "type": "object", - "description": "Project List Response", - "properties": { - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#projectsListResponse\".", - "default": "dfareporting#projectsListResponse" - }, - "nextPageToken": { - "type": "string", - "description": "Pagination token to be used for the next list operation." - }, - "projects": { - "type": "array", - "description": "Project collection.", - "items": { - "$ref": "Project" - } - } - } - }, - "ReachReportCompatibleFields": { - "id": "ReachReportCompatibleFields", - "type": "object", - "description": "Represents fields that are compatible to be selected for a report of type \"REACH\".", - "properties": { - "dimensionFilters": { - "type": "array", - "description": "Dimensions which are compatible to be selected in the \"dimensionFilters\" section of the report.", - "items": { - "$ref": "Dimension" - } - }, - "dimensions": { - "type": "array", - "description": "Dimensions which are compatible to be selected in the \"dimensions\" section of the report.", - "items": { - "$ref": "Dimension" - } - }, - "kind": { - "type": "string", - "description": "The kind of resource this is, in this case dfareporting#reachReportCompatibleFields.", - "default": "dfareporting#reachReportCompatibleFields" - }, - "metrics": { - "type": "array", - "description": "Metrics which are compatible to be selected in the \"metricNames\" section of the report.", - "items": { - "$ref": "Metric" - } - }, - "pivotedActivityMetrics": { - "type": "array", - "description": "Metrics which are compatible to be selected as activity metrics to pivot on in the \"activities\" section of the report.", - "items": { - "$ref": "Metric" - } - }, - "reachByFrequencyMetrics": { - "type": "array", - "description": "Metrics which are compatible to be selected in the \"reachByFrequencyMetricNames\" section of the report.", - "items": { - "$ref": "Metric" - } - } - } - }, - "Recipient": { - "id": "Recipient", - "type": "object", - "description": "Represents a recipient.", - "properties": { - "deliveryType": { - "type": "string", - "description": "The delivery type for the recipient.", - "enum": [ - "ATTACHMENT", - "LINK" - ], - "enumDescriptions": [ - "", - "" - ], - "annotations": { - "required": [ - "dfareporting.reports.insert", - "dfareporting.reports.update" - ] - } - }, - "email": { - "type": "string", - "description": "The email address of the recipient.", - "annotations": { - "required": [ - "dfareporting.reports.insert", - "dfareporting.reports.update" - ] - } - }, - "kind": { - "type": "string", - "description": "The kind of resource this is, in this case dfareporting#recipient.", - "default": "dfareporting#recipient" - } - } - }, - "Region": { - "id": "Region", - "type": "object", - "description": "Contains information about a region that can be targeted by ads.", - "properties": { - "countryCode": { - "type": "string", - "description": "Country code of the country to which this region belongs." - }, - "countryDartId": { - "type": "string", - "description": "DART ID of the country to which this region belongs.", - "format": "int64" - }, - "dartId": { - "type": "string", - "description": "DART ID of this region.", - "format": "int64" - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#region\".", - "default": "dfareporting#region" - }, - "name": { - "type": "string", - "description": "Name of this region." - }, - "regionCode": { - "type": "string", - "description": "Region code." - } - } - }, - "RegionsListResponse": { - "id": "RegionsListResponse", - "type": "object", - "description": "Region List Response", - "properties": { - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#regionsListResponse\".", - "default": "dfareporting#regionsListResponse" - }, - "regions": { - "type": "array", - "description": "Region collection.", - "items": { - "$ref": "Region" - } - } - } - }, - "RemarketingList": { - "id": "RemarketingList", - "type": "object", - "description": "Contains properties of a remarketing list. Remarketing enables you to create lists of users who have performed specific actions on a site, then target ads to members of those lists. This resource can be used to manage remarketing lists that are owned by your advertisers. To see all remarketing lists that are visible to your advertisers, including those that are shared to your advertiser or account, use the TargetableRemarketingLists resource.", - "properties": { - "accountId": { - "type": "string", - "description": "Account ID of this remarketing list. This is a read-only, auto-generated field that is only returned in GET requests.", - "format": "int64" - }, - "active": { - "type": "boolean", - "description": "Whether this remarketing list is active." - }, - "advertiserId": { - "type": "string", - "description": "Dimension value for the advertiser ID that owns this remarketing list. This is a required field.", - "format": "int64" - }, - "advertiserIdDimensionValue": { - "$ref": "DimensionValue", - "description": "Dimension value for the ID of the advertiser. This is a read-only, auto-generated field." - }, - "description": { - "type": "string", - "description": "Remarketing list description." - }, - "id": { - "type": "string", - "description": "Remarketing list ID. This is a read-only, auto-generated field.", - "format": "int64" - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#remarketingList\".", - "default": "dfareporting#remarketingList" - }, - "lifeSpan": { - "type": "string", - "description": "Number of days that a user should remain in the remarketing list without an impression. Acceptable values are 1 to 540, inclusive.", - "format": "int64" - }, - "listPopulationRule": { - "$ref": "ListPopulationRule", - "description": "Rule used to populate the remarketing list with users." - }, - "listSize": { - "type": "string", - "description": "Number of users currently in the list. This is a read-only field.", - "format": "int64" - }, - "listSource": { - "type": "string", - "description": "Product from which this remarketing list was originated.", - "enum": [ - "REMARKETING_LIST_SOURCE_ADX", - "REMARKETING_LIST_SOURCE_DBM", - "REMARKETING_LIST_SOURCE_DFA", - "REMARKETING_LIST_SOURCE_DFP", - "REMARKETING_LIST_SOURCE_DMP", - "REMARKETING_LIST_SOURCE_GA", - "REMARKETING_LIST_SOURCE_GPLUS", - "REMARKETING_LIST_SOURCE_OTHER", - "REMARKETING_LIST_SOURCE_PLAY_STORE", - "REMARKETING_LIST_SOURCE_XFP", - "REMARKETING_LIST_SOURCE_YOUTUBE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "name": { - "type": "string", - "description": "Name of the remarketing list. This is a required field. Must be no greater than 128 characters long." - }, - "subaccountId": { - "type": "string", - "description": "Subaccount ID of this remarketing list. This is a read-only, auto-generated field that is only returned in GET requests.", - "format": "int64" - } - } - }, - "RemarketingListShare": { - "id": "RemarketingListShare", - "type": "object", - "description": "Contains properties of a remarketing list's sharing information. Sharing allows other accounts or advertisers to target to your remarketing lists. This resource can be used to manage remarketing list sharing to other accounts and advertisers.", - "properties": { - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#remarketingListShare\".", - "default": "dfareporting#remarketingListShare" - }, - "remarketingListId": { - "type": "string", - "description": "Remarketing list ID. This is a read-only, auto-generated field.", - "format": "int64" - }, - "sharedAccountIds": { - "type": "array", - "description": "Accounts that the remarketing list is shared with.", - "items": { - "type": "string", - "format": "int64" - } - }, - "sharedAdvertiserIds": { - "type": "array", - "description": "Advertisers that the remarketing list is shared with.", - "items": { - "type": "string", - "format": "int64" - } - } - } - }, - "RemarketingListsListResponse": { - "id": "RemarketingListsListResponse", - "type": "object", - "description": "Remarketing list response", - "properties": { - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#remarketingListsListResponse\".", - "default": "dfareporting#remarketingListsListResponse" - }, - "nextPageToken": { - "type": "string", - "description": "Pagination token to be used for the next list operation." - }, - "remarketingLists": { - "type": "array", - "description": "Remarketing list collection.", - "items": { - "$ref": "RemarketingList" - } - } - } - }, - "Report": { - "id": "Report", - "type": "object", - "description": "Represents a Report resource.", - "properties": { - "accountId": { - "type": "string", - "description": "The account ID to which this report belongs.", - "format": "int64", - "annotations": { - "required": [ - "dfareporting.reports.update" - ] - } - }, - "criteria": { - "type": "object", - "description": "The report criteria for a report of type \"STANDARD\".", - "properties": { - "activities": { - "$ref": "Activities", - "description": "Activity group." - }, - "customRichMediaEvents": { - "$ref": "CustomRichMediaEvents", - "description": "Custom Rich Media Events group." - }, - "dateRange": { - "$ref": "DateRange", - "description": "The date range for which this report should be run." - }, - "dimensionFilters": { - "type": "array", - "description": "The list of filters on which dimensions are filtered.\nFilters for different dimensions are ANDed, filters for the same dimension are grouped together and ORed.", - "items": { - "$ref": "DimensionValue" - } - }, - "dimensions": { - "type": "array", - "description": "The list of standard dimensions the report should include.", - "items": { - "$ref": "SortedDimension" - } - }, - "metricNames": { - "type": "array", - "description": "The list of names of metrics the report should include.", - "items": { - "type": "string" - } - } - } - }, - "crossDimensionReachCriteria": { - "type": "object", - "description": "The report criteria for a report of type \"CROSS_DIMENSION_REACH\".", - "properties": { - "breakdown": { - "type": "array", - "description": "The list of dimensions the report should include.", - "items": { - "$ref": "SortedDimension" - } - }, - "dateRange": { - "$ref": "DateRange", - "description": "The date range this report should be run for." - }, - "dimension": { - "type": "string", - "description": "The dimension option.", - "enum": [ - "ADVERTISER", - "CAMPAIGN", - "SITE_BY_ADVERTISER", - "SITE_BY_CAMPAIGN" - ], - "enumDescriptions": [ - "", - "", - "", - "" - ] - }, - "dimensionFilters": { - "type": "array", - "description": "The list of filters on which dimensions are filtered.", - "items": { - "$ref": "DimensionValue" - } - }, - "metricNames": { - "type": "array", - "description": "The list of names of metrics the report should include.", - "items": { - "type": "string" - } - }, - "overlapMetricNames": { - "type": "array", - "description": "The list of names of overlap metrics the report should include.", - "items": { - "type": "string" - } - }, - "pivoted": { - "type": "boolean", - "description": "Whether the report is pivoted or not. Defaults to true." - } - } - }, - "delivery": { - "type": "object", - "description": "The report's email delivery settings.", - "properties": { - "emailOwner": { - "type": "boolean", - "description": "Whether the report should be emailed to the report owner." - }, - "emailOwnerDeliveryType": { - "type": "string", - "description": "The type of delivery for the owner to receive, if enabled.", - "enum": [ - "ATTACHMENT", - "LINK" - ], - "enumDescriptions": [ - "", - "" - ] - }, - "message": { - "type": "string", - "description": "The message to be sent with each email." - }, - "recipients": { - "type": "array", - "description": "The list of recipients to which to email the report.", - "items": { - "$ref": "Recipient" - } - } - } - }, - "etag": { - "type": "string", - "description": "The eTag of this response for caching purposes." - }, - "fileName": { - "type": "string", - "description": "The filename used when generating report files for this report." - }, - "floodlightCriteria": { - "type": "object", - "description": "The report criteria for a report of type \"FLOODLIGHT\".", - "properties": { - "customRichMediaEvents": { - "type": "array", - "description": "The list of custom rich media events to include.", - "items": { - "$ref": "DimensionValue" - } - }, - "dateRange": { - "$ref": "DateRange", - "description": "The date range this report should be run for." - }, - "dimensionFilters": { - "type": "array", - "description": "The list of filters on which dimensions are filtered.\nFilters for different dimensions are ANDed, filters for the same dimension are grouped together and ORed.", - "items": { - "$ref": "DimensionValue" - } - }, - "dimensions": { - "type": "array", - "description": "The list of dimensions the report should include.", - "items": { - "$ref": "SortedDimension" - } - }, - "floodlightConfigId": { - "$ref": "DimensionValue", - "description": "The floodlight ID for which to show data in this report. All advertisers associated with that ID will automatically be added. The dimension of the value needs to be 'dfa:floodlightConfigId'." - }, - "metricNames": { - "type": "array", - "description": "The list of names of metrics the report should include.", - "items": { - "type": "string" - } - }, - "reportProperties": { - "type": "object", - "description": "The properties of the report.", - "properties": { - "includeAttributedIPConversions": { - "type": "boolean", - "description": "Include conversions that have no cookie, but do have an exposure path." + "methods": { + "delete": { + "description": "Deletes an existing event tag.", + "httpMethod": "DELETE", + "id": "dfareporting.eventTags.delete", + "parameterOrder": [ + "profileId", + "id" + ], + "parameters": { + "id": { + "description": "Event tag ID.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/eventTags/{id}", + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] }, - "includeUnattributedCookieConversions": { - "type": "boolean", - "description": "Include conversions of users with a DoubleClick cookie but without an exposure. That means the user did not click or see an ad from the advertiser within the Floodlight group, or that the interaction happened outside the lookback window." + "get": { + "description": "Gets one event tag by ID.", + "httpMethod": "GET", + "id": "dfareporting.eventTags.get", + "parameterOrder": [ + "profileId", + "id" + ], + "parameters": { + "id": { + "description": "Event tag ID.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/eventTags/{id}", + "response": { + "$ref": "EventTag" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] }, - "includeUnattributedIPConversions": { - "type": "boolean", - "description": "Include conversions that have no associated cookies and no exposures. It’s therefore impossible to know how the user was exposed to your ads during the lookback window prior to a conversion." + "insert": { + "description": "Inserts a new event tag.", + "httpMethod": "POST", + "id": "dfareporting.eventTags.insert", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/eventTags", + "request": { + "$ref": "EventTag" + }, + "response": { + "$ref": "EventTag" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "description": "Retrieves a list of event tags, possibly filtered.", + "httpMethod": "GET", + "id": "dfareporting.eventTags.list", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "adId": { + "description": "Select only event tags that belong to this ad.", + "format": "int64", + "location": "query", + "type": "string" + }, + "advertiserId": { + "description": "Select only event tags that belong to this advertiser.", + "format": "int64", + "location": "query", + "type": "string" + }, + "campaignId": { + "description": "Select only event tags that belong to this campaign.", + "format": "int64", + "location": "query", + "type": "string" + }, + "definitionsOnly": { + "description": "Examine only the specified campaign or advertiser's event tags for matching selector criteria. When set to false, the parent advertiser and parent campaign of the specified ad or campaign is examined as well. In addition, when set to false, the status field is examined as well, along with the enabledByDefault field. This parameter can not be set to true when adId is specified as ads do not define their own even tags.", + "location": "query", + "type": "boolean" + }, + "enabled": { + "description": "Select only enabled event tags. What is considered enabled or disabled depends on the definitionsOnly parameter. When definitionsOnly is set to true, only the specified advertiser or campaign's event tags' enabledByDefault field is examined. When definitionsOnly is set to false, the specified ad or specified campaign's parent advertiser's or parent campaign's event tags' enabledByDefault and status fields are examined as well.", + "location": "query", + "type": "boolean" + }, + "eventTagTypes": { + "description": "Select only event tags with the specified event tag types. Event tag types can be used to specify whether to use a third-party pixel, a third-party JavaScript URL, or a third-party click-through URL for either impression or click tracking.", + "enum": [ + "CLICK_THROUGH_EVENT_TAG", + "IMPRESSION_IMAGE_EVENT_TAG", + "IMPRESSION_JAVASCRIPT_EVENT_TAG" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "location": "query", + "repeated": true, + "type": "string" + }, + "ids": { + "description": "Select only event tags with these IDs.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "searchString": { + "description": "Allows searching for objects by name or ID. Wildcards (*) are allowed. For example, \"eventtag*2015\" will return objects with names like \"eventtag June 2015\", \"eventtag April 2015\", or simply \"eventtag 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"eventtag\" will match objects with name \"my eventtag\", \"eventtag 2015\", or simply \"eventtag\".", + "location": "query", + "type": "string" + }, + "sortField": { + "default": "ID", + "description": "Field by which to sort the list.", + "enum": [ + "ID", + "NAME" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + }, + "sortOrder": { + "default": "ASCENDING", + "description": "Order of sorted results.", + "enum": [ + "ASCENDING", + "DESCENDING" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + } + }, + "path": "userprofiles/{profileId}/eventTags", + "response": { + "$ref": "EventTagsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "patch": { + "description": "Updates an existing event tag. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "dfareporting.eventTags.patch", + "parameterOrder": [ + "profileId", + "id" + ], + "parameters": { + "id": { + "description": "Event tag ID.", + "format": "int64", + "location": "query", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/eventTags", + "request": { + "$ref": "EventTag" + }, + "response": { + "$ref": "EventTag" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "update": { + "description": "Updates an existing event tag.", + "httpMethod": "PUT", + "id": "dfareporting.eventTags.update", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/eventTags", + "request": { + "$ref": "EventTag" + }, + "response": { + "$ref": "EventTag" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] } - } } - } - }, - "format": { - "type": "string", - "description": "The output format of the report. If not specified, default format is \"CSV\". Note that the actual format in the completed report file might differ if for instance the report's size exceeds the format's capabilities. \"CSV\" will then be the fallback format.", - "enum": [ - "CSV", - "EXCEL" - ], - "enumDescriptions": [ - "", - "" - ] - }, - "id": { - "type": "string", - "description": "The unique ID identifying this report resource.", - "format": "int64", - "annotations": { - "required": [ - "dfareporting.reports.update" - ] - } - }, - "kind": { - "type": "string", - "description": "The kind of resource this is, in this case dfareporting#report.", - "default": "dfareporting#report" - }, - "lastModifiedTime": { - "type": "string", - "description": "The timestamp (in milliseconds since epoch) of when this report was last modified.", - "format": "uint64", - "annotations": { - "required": [ - "dfareporting.reports.update" - ] - } - }, - "name": { - "type": "string", - "description": "The name of the report.", - "annotations": { - "required": [ - "dfareporting.reports.insert", - "dfareporting.reports.update" - ] - } - }, - "ownerProfileId": { - "type": "string", - "description": "The user profile id of the owner of this report.", - "format": "int64", - "annotations": { - "required": [ - "dfareporting.reports.update" - ] - } - }, - "pathToConversionCriteria": { - "type": "object", - "description": "The report criteria for a report of type \"PATH_TO_CONVERSION\".", - "properties": { - "activityFilters": { - "type": "array", - "description": "The list of 'dfa:activity' values to filter on.", - "items": { - "$ref": "DimensionValue" - } - }, - "conversionDimensions": { - "type": "array", - "description": "The list of conversion dimensions the report should include.", - "items": { - "$ref": "SortedDimension" - } - }, - "customFloodlightVariables": { - "type": "array", - "description": "The list of custom floodlight variables the report should include.", - "items": { - "$ref": "SortedDimension" - } - }, - "customRichMediaEvents": { - "type": "array", - "description": "The list of custom rich media events to include.", - "items": { - "$ref": "DimensionValue" - } - }, - "dateRange": { - "$ref": "DateRange", - "description": "The date range this report should be run for." - }, - "floodlightConfigId": { - "$ref": "DimensionValue", - "description": "The floodlight ID for which to show data in this report. All advertisers associated with that ID will automatically be added. The dimension of the value needs to be 'dfa:floodlightConfigId'." - }, - "metricNames": { - "type": "array", - "description": "The list of names of metrics the report should include.", - "items": { - "type": "string" - } - }, - "perInteractionDimensions": { - "type": "array", - "description": "The list of per interaction dimensions the report should include.", - "items": { - "$ref": "SortedDimension" - } - }, - "reportProperties": { - "type": "object", - "description": "The properties of the report.", - "properties": { - "clicksLookbackWindow": { - "type": "integer", - "description": "DFA checks to see if a click interaction occurred within the specified period of time before a conversion. By default the value is pulled from Floodlight or you can manually enter a custom value. Valid values: 1-90.", - "format": "int32" - }, - "impressionsLookbackWindow": { - "type": "integer", - "description": "DFA checks to see if an impression interaction occurred within the specified period of time before a conversion. By default the value is pulled from Floodlight or you can manually enter a custom value. Valid values: 1-90.", - "format": "int32" - }, - "includeAttributedIPConversions": { - "type": "boolean", - "description": "Deprecated: has no effect." - }, - "includeUnattributedCookieConversions": { - "type": "boolean", - "description": "Include conversions of users with a DoubleClick cookie but without an exposure. That means the user did not click or see an ad from the advertiser within the Floodlight group, or that the interaction happened outside the lookback window." - }, - "includeUnattributedIPConversions": { - "type": "boolean", - "description": "Include conversions that have no associated cookies and no exposures. It’s therefore impossible to know how the user was exposed to your ads during the lookback window prior to a conversion." - }, - "maximumClickInteractions": { - "type": "integer", - "description": "The maximum number of click interactions to include in the report. Advertisers currently paying for E2C reports get up to 200 (100 clicks, 100 impressions). If another advertiser in your network is paying for E2C, you can have up to 5 total exposures per report.", - "format": "int32" - }, - "maximumImpressionInteractions": { - "type": "integer", - "description": "The maximum number of click interactions to include in the report. Advertisers currently paying for E2C reports get up to 200 (100 clicks, 100 impressions). If another advertiser in your network is paying for E2C, you can have up to 5 total exposures per report.", - "format": "int32" - }, - "maximumInteractionGap": { - "type": "integer", - "description": "The maximum amount of time that can take place between interactions (clicks or impressions) by the same user. Valid values: 1-90.", - "format": "int32" - }, - "pivotOnInteractionPath": { - "type": "boolean", - "description": "Enable pivoting on interaction path." - } - } - } - } - }, - "reachCriteria": { - "type": "object", - "description": "The report criteria for a report of type \"REACH\".", - "properties": { - "activities": { - "$ref": "Activities", - "description": "Activity group." - }, - "customRichMediaEvents": { - "$ref": "CustomRichMediaEvents", - "description": "Custom Rich Media Events group." - }, - "dateRange": { - "$ref": "DateRange", - "description": "The date range this report should be run for." - }, - "dimensionFilters": { - "type": "array", - "description": "The list of filters on which dimensions are filtered.\nFilters for different dimensions are ANDed, filters for the same dimension are grouped together and ORed.", - "items": { - "$ref": "DimensionValue" - } - }, - "dimensions": { - "type": "array", - "description": "The list of dimensions the report should include.", - "items": { - "$ref": "SortedDimension" - } - }, - "enableAllDimensionCombinations": { - "type": "boolean", - "description": "Whether to enable all reach dimension combinations in the report. Defaults to false. If enabled, the date range of the report should be within the last 42 days." - }, - "metricNames": { - "type": "array", - "description": "The list of names of metrics the report should include.", - "items": { - "type": "string" - } - }, - "reachByFrequencyMetricNames": { - "type": "array", - "description": "The list of names of Reach By Frequency metrics the report should include.", - "items": { - "type": "string" - } - } - } - }, - "schedule": { - "type": "object", - "description": "The report's schedule. Can only be set if the report's 'dateRange' is a relative date range and the relative date range is not \"TODAY\".", - "properties": { - "active": { - "type": "boolean", - "description": "Whether the schedule is active or not. Must be set to either true or false.", - "annotations": { - "required": [ - "dfareporting.reports.insert", - "dfareporting.reports.update" - ] - } - }, - "every": { - "type": "integer", - "description": "Defines every how many days, weeks or months the report should be run. Needs to be set when \"repeats\" is either \"DAILY\", \"WEEKLY\" or \"MONTHLY\".", - "format": "int32" - }, - "expirationDate": { - "type": "string", - "description": "The expiration date when the scheduled report stops running.", - "format": "date", - "annotations": { - "required": [ - "dfareporting.reports.insert", - "dfareporting.reports.update" - ] - } - }, - "repeats": { - "type": "string", - "description": "The interval for which the report is repeated. Note: \n- \"DAILY\" also requires field \"every\" to be set. \n- \"WEEKLY\" also requires fields \"every\" and \"repeatsOnWeekDays\" to be set. \n- \"MONTHLY\" also requires fields \"every\" and \"runsOnDayOfMonth\" to be set.", - "annotations": { - "required": [ - "dfareporting.reports.insert", - "dfareporting.reports.update" - ] - } - }, - "repeatsOnWeekDays": { - "type": "array", - "description": "List of week days \"WEEKLY\" on which scheduled reports should run.", - "items": { - "type": "string", - "enum": [ - "FRIDAY", - "MONDAY", - "SATURDAY", - "SUNDAY", - "THURSDAY", - "TUESDAY", - "WEDNESDAY" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "" - ] - } - }, - "runsOnDayOfMonth": { - "type": "string", - "description": "Enum to define for \"MONTHLY\" scheduled reports whether reports should be repeated on the same day of the month as \"startDate\" or the same day of the week of the month.\nExample: If 'startDate' is Monday, April 2nd 2012 (2012-04-02), \"DAY_OF_MONTH\" would run subsequent reports on the 2nd of every Month, and \"WEEK_OF_MONTH\" would run subsequent reports on the first Monday of the month.", - "enum": [ - "DAY_OF_MONTH", - "WEEK_OF_MONTH" - ], - "enumDescriptions": [ - "", - "" - ] - }, - "startDate": { - "type": "string", - "description": "Start date of date range for which scheduled reports should be run.", - "format": "date", - "annotations": { - "required": [ - "dfareporting.reports.insert", - "dfareporting.reports.update" - ] - } - } - } - }, - "subAccountId": { - "type": "string", - "description": "The subaccount ID to which this report belongs if applicable.", - "format": "int64" - }, - "type": { - "type": "string", - "description": "The type of the report.", - "enum": [ - "CROSS_DIMENSION_REACH", - "FLOODLIGHT", - "PATH_TO_CONVERSION", - "REACH", - "STANDARD" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "" - ], - "annotations": { - "required": [ - "dfareporting.reports.insert", - "dfareporting.reports.update" - ] - } - } - } - }, - "ReportCompatibleFields": { - "id": "ReportCompatibleFields", - "type": "object", - "description": "Represents fields that are compatible to be selected for a report of type \"STANDARD\".", - "properties": { - "dimensionFilters": { - "type": "array", - "description": "Dimensions which are compatible to be selected in the \"dimensionFilters\" section of the report.", - "items": { - "$ref": "Dimension" - } - }, - "dimensions": { - "type": "array", - "description": "Dimensions which are compatible to be selected in the \"dimensions\" section of the report.", - "items": { - "$ref": "Dimension" - } - }, - "kind": { - "type": "string", - "description": "The kind of resource this is, in this case dfareporting#reportCompatibleFields.", - "default": "dfareporting#reportCompatibleFields" - }, - "metrics": { - "type": "array", - "description": "Metrics which are compatible to be selected in the \"metricNames\" section of the report.", - "items": { - "$ref": "Metric" - } - }, - "pivotedActivityMetrics": { - "type": "array", - "description": "Metrics which are compatible to be selected as activity metrics to pivot on in the \"activities\" section of the report.", - "items": { - "$ref": "Metric" - } - } - } - }, - "ReportList": { - "id": "ReportList", - "type": "object", - "description": "Represents the list of reports.", - "properties": { - "etag": { - "type": "string", - "description": "The eTag of this response for caching purposes." - }, - "items": { - "type": "array", - "description": "The reports returned in this response.", - "items": { - "$ref": "Report" - } - }, - "kind": { - "type": "string", - "description": "The kind of list this is, in this case dfareporting#reportList.", - "default": "dfareporting#reportList" - }, - "nextPageToken": { - "type": "string", - "description": "Continuation token used to page through reports. To retrieve the next page of results, set the next request's \"pageToken\" to the value of this field. The page token is only valid for a limited amount of time and should not be persisted." - } - } - }, - "ReportsConfiguration": { - "id": "ReportsConfiguration", - "type": "object", - "description": "Reporting Configuration", - "properties": { - "exposureToConversionEnabled": { - "type": "boolean", - "description": "Whether the exposure to conversion report is enabled. This report shows detailed pathway information on up to 10 of the most recent ad exposures seen by a user before converting." - }, - "lookbackConfiguration": { - "$ref": "LookbackConfiguration", - "description": "Default lookback windows for new advertisers in this account." - }, - "reportGenerationTimeZoneId": { - "type": "string", - "description": "Report generation time zone ID of this account. This is a required field that can only be changed by a superuser.\nAcceptable values are:\n\n- \"1\" for \"America/New_York\" \n- \"2\" for \"Europe/London\" \n- \"3\" for \"Europe/Paris\" \n- \"4\" for \"Africa/Johannesburg\" \n- \"5\" for \"Asia/Jerusalem\" \n- \"6\" for \"Asia/Shanghai\" \n- \"7\" for \"Asia/Hong_Kong\" \n- \"8\" for \"Asia/Tokyo\" \n- \"9\" for \"Australia/Sydney\" \n- \"10\" for \"Asia/Dubai\" \n- \"11\" for \"America/Los_Angeles\" \n- \"12\" for \"Pacific/Auckland\" \n- \"13\" for \"America/Sao_Paulo\"", - "format": "int64" - } - } - }, - "RichMediaExitOverride": { - "id": "RichMediaExitOverride", - "type": "object", - "description": "Rich Media Exit Override.", - "properties": { - "clickThroughUrl": { - "$ref": "ClickThroughUrl", - "description": "Click-through URL of this rich media exit override. Applicable if the enabled field is set to true." - }, - "enabled": { - "type": "boolean", - "description": "Whether to use the clickThroughUrl. If false, the creative-level exit will be used." - }, - "exitId": { - "type": "string", - "description": "ID for the override to refer to a specific exit in the creative.", - "format": "int64" - } - } - }, - "Rule": { - "id": "Rule", - "type": "object", - "description": "A rule associates an asset with a targeting template for asset-level targeting. Applicable to INSTREAM_VIDEO creatives.", - "properties": { - "assetId": { - "type": "string", - "description": "A creativeAssets[].id. This should refer to one of the parent assets in this creative. This is a required field.", - "format": "int64" - }, - "name": { - "type": "string", - "description": "A user-friendly name for this rule. This is a required field." - }, - "targetingTemplateId": { - "type": "string", - "description": "A targeting template ID. The targeting from the targeting template will be used to determine whether this asset should be served. This is a required field.", - "format": "int64" - } - } - }, - "Site": { - "id": "Site", - "type": "object", - "description": "Contains properties of a site.", - "properties": { - "accountId": { - "type": "string", - "description": "Account ID of this site. This is a read-only field that can be left blank.", - "format": "int64" - }, - "approved": { - "type": "boolean", - "description": "Whether this site is approved." - }, - "directorySiteId": { - "type": "string", - "description": "Directory site associated with this site. This is a required field that is read-only after insertion.", - "format": "int64" - }, - "directorySiteIdDimensionValue": { - "$ref": "DimensionValue", - "description": "Dimension value for the ID of the directory site. This is a read-only, auto-generated field." - }, - "id": { - "type": "string", - "description": "ID of this site. This is a read-only, auto-generated field.", - "format": "int64" - }, - "idDimensionValue": { - "$ref": "DimensionValue", - "description": "Dimension value for the ID of this site. This is a read-only, auto-generated field." - }, - "keyName": { - "type": "string", - "description": "Key name of this site. This is a read-only, auto-generated field." - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#site\".", - "default": "dfareporting#site" - }, - "name": { - "type": "string", - "description": "Name of this site.This is a required field. Must be less than 128 characters long. If this site is under a subaccount, the name must be unique among sites of the same subaccount. Otherwise, this site is a top-level site, and the name must be unique among top-level sites of the same account." - }, - "siteContacts": { - "type": "array", - "description": "Site contacts.", - "items": { - "$ref": "SiteContact" - } - }, - "siteSettings": { - "$ref": "SiteSettings", - "description": "Site-wide settings." - }, - "subaccountId": { - "type": "string", - "description": "Subaccount ID of this site. This is a read-only field that can be left blank.", - "format": "int64" - } - } - }, - "SiteContact": { - "id": "SiteContact", - "type": "object", - "description": "Site Contact", - "properties": { - "address": { - "type": "string", - "description": "Address of this site contact." - }, - "contactType": { - "type": "string", - "description": "Site contact type.", - "enum": [ - "SALES_PERSON", - "TRAFFICKER" - ], - "enumDescriptions": [ - "", - "" - ] - }, - "email": { - "type": "string", - "description": "Email address of this site contact. This is a required field." - }, - "firstName": { - "type": "string", - "description": "First name of this site contact." - }, - "id": { - "type": "string", - "description": "ID of this site contact. This is a read-only, auto-generated field.", - "format": "int64" - }, - "lastName": { - "type": "string", - "description": "Last name of this site contact." - }, - "phone": { - "type": "string", - "description": "Primary phone number of this site contact." - }, - "title": { - "type": "string", - "description": "Title or designation of this site contact." - } - } - }, - "SiteSettings": { - "id": "SiteSettings", - "type": "object", - "description": "Site Settings", - "properties": { - "activeViewOptOut": { - "type": "boolean", - "description": "Whether active view creatives are disabled for this site." - }, - "adBlockingOptOut": { - "type": "boolean", - "description": "Whether this site opts out of ad blocking. When true, ad blocking is disabled for all placements under the site, regardless of the individual placement settings. When false, the campaign and placement settings take effect." - }, - "creativeSettings": { - "$ref": "CreativeSettings", - "description": "Site-wide creative settings." - }, - "disableNewCookie": { - "type": "boolean", - "description": "Whether new cookies are disabled for this site." - }, - "lookbackConfiguration": { - "$ref": "LookbackConfiguration", - "description": "Lookback window settings for this site." - }, - "tagSetting": { - "$ref": "TagSetting", - "description": "Configuration settings for dynamic and image floodlight tags." - }, - "videoActiveViewOptOutTemplate": { - "type": "boolean", - "description": "Whether Verification and ActiveView for in-stream video creatives are disabled by default for new placements created under this site. This value will be used to populate the placement.videoActiveViewOptOut field, when no value is specified for the new placement." - }, - "vpaidAdapterChoiceTemplate": { - "type": "string", - "description": "Default VPAID adapter setting for new placements created under this site. This value will be used to populate the placements.vpaidAdapterChoice field, when no value is specified for the new placement. Controls which VPAID format the measurement adapter will use for in-stream video creatives assigned to the placement. The publisher's specifications will typically determine this setting. For VPAID creatives, the adapter format will match the VPAID format (HTML5 VPAID creatives use the HTML5 adapter).\n\nNote: Flash is no longer supported. This field now defaults to HTML5 when the following values are provided: FLASH, BOTH.", - "enum": [ - "BOTH", - "DEFAULT", - "FLASH", - "HTML5" - ], - "enumDescriptions": [ - "", - "", - "", - "" - ] - } - } - }, - "SitesListResponse": { - "id": "SitesListResponse", - "type": "object", - "description": "Site List Response", - "properties": { - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#sitesListResponse\".", - "default": "dfareporting#sitesListResponse" - }, - "nextPageToken": { - "type": "string", - "description": "Pagination token to be used for the next list operation." - }, - "sites": { - "type": "array", - "description": "Site collection.", - "items": { - "$ref": "Site" - } - } - } - }, - "Size": { - "id": "Size", - "type": "object", - "description": "Represents the dimensions of ads, placements, creatives, or creative assets.", - "properties": { - "height": { - "type": "integer", - "description": "Height of this size. Acceptable values are 0 to 32767, inclusive.", - "format": "int32" - }, - "iab": { - "type": "boolean", - "description": "IAB standard size. This is a read-only, auto-generated field." - }, - "id": { - "type": "string", - "description": "ID of this size. This is a read-only, auto-generated field.", - "format": "int64" - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#size\".", - "default": "dfareporting#size" - }, - "width": { - "type": "integer", - "description": "Width of this size. Acceptable values are 0 to 32767, inclusive.", - "format": "int32" - } - } - }, - "SizesListResponse": { - "id": "SizesListResponse", - "type": "object", - "description": "Size List Response", - "properties": { - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#sizesListResponse\".", - "default": "dfareporting#sizesListResponse" - }, - "sizes": { - "type": "array", - "description": "Size collection.", - "items": { - "$ref": "Size" - } - } - } - }, - "SkippableSetting": { - "id": "SkippableSetting", - "type": "object", - "description": "Skippable Settings", - "properties": { - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#skippableSetting\".", - "default": "dfareporting#skippableSetting" - }, - "progressOffset": { - "$ref": "VideoOffset", - "description": "Amount of time to play videos served to this placement before counting a view. Applicable when skippable is true." - }, - "skipOffset": { - "$ref": "VideoOffset", - "description": "Amount of time to play videos served to this placement before the skip button should appear. Applicable when skippable is true." - }, - "skippable": { - "type": "boolean", - "description": "Whether the user can skip creatives served to this placement." - } - } - }, - "SortedDimension": { - "id": "SortedDimension", - "type": "object", - "description": "Represents a sorted dimension.", - "properties": { - "kind": { - "type": "string", - "description": "The kind of resource this is, in this case dfareporting#sortedDimension.", - "default": "dfareporting#sortedDimension" - }, - "name": { - "type": "string", - "description": "The name of the dimension." - }, - "sortOrder": { - "type": "string", - "description": "An optional sort order for the dimension column.", - "enum": [ - "ASCENDING", - "DESCENDING" - ], - "enumDescriptions": [ - "", - "" - ] - } - } - }, - "Subaccount": { - "id": "Subaccount", - "type": "object", - "description": "Contains properties of a DCM subaccount.", - "properties": { - "accountId": { - "type": "string", - "description": "ID of the account that contains this subaccount. This is a read-only field that can be left blank.", - "format": "int64" - }, - "availablePermissionIds": { - "type": "array", - "description": "IDs of the available user role permissions for this subaccount.", - "items": { - "type": "string", - "format": "int64" - } - }, - "id": { - "type": "string", - "description": "ID of this subaccount. This is a read-only, auto-generated field.", - "format": "int64" - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#subaccount\".", - "default": "dfareporting#subaccount" - }, - "name": { - "type": "string", - "description": "Name of this subaccount. This is a required field. Must be less than 128 characters long and be unique among subaccounts of the same account." - } - } - }, - "SubaccountsListResponse": { - "id": "SubaccountsListResponse", - "type": "object", - "description": "Subaccount List Response", - "properties": { - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#subaccountsListResponse\".", - "default": "dfareporting#subaccountsListResponse" - }, - "nextPageToken": { - "type": "string", - "description": "Pagination token to be used for the next list operation." - }, - "subaccounts": { - "type": "array", - "description": "Subaccount collection.", - "items": { - "$ref": "Subaccount" - } - } - } - }, - "TagData": { - "id": "TagData", - "type": "object", - "description": "Placement Tag Data", - "properties": { - "adId": { - "type": "string", - "description": "Ad associated with this placement tag. Applicable only when format is PLACEMENT_TAG_TRACKING.", - "format": "int64" - }, - "clickTag": { - "type": "string", - "description": "Tag string to record a click." - }, - "creativeId": { - "type": "string", - "description": "Creative associated with this placement tag. Applicable only when format is PLACEMENT_TAG_TRACKING.", - "format": "int64" - }, - "format": { - "type": "string", - "description": "TagData tag format of this tag.", - "enum": [ - "PLACEMENT_TAG_CLICK_COMMANDS", - "PLACEMENT_TAG_IFRAME_ILAYER", - "PLACEMENT_TAG_IFRAME_JAVASCRIPT", - "PLACEMENT_TAG_IFRAME_JAVASCRIPT_LEGACY", - "PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH", - "PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH_VAST_3", - "PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH_VAST_4", - "PLACEMENT_TAG_INTERNAL_REDIRECT", - "PLACEMENT_TAG_INTERSTITIAL_IFRAME_JAVASCRIPT", - "PLACEMENT_TAG_INTERSTITIAL_IFRAME_JAVASCRIPT_LEGACY", - "PLACEMENT_TAG_INTERSTITIAL_INTERNAL_REDIRECT", - "PLACEMENT_TAG_INTERSTITIAL_JAVASCRIPT", - "PLACEMENT_TAG_INTERSTITIAL_JAVASCRIPT_LEGACY", - "PLACEMENT_TAG_JAVASCRIPT", - "PLACEMENT_TAG_JAVASCRIPT_LEGACY", - "PLACEMENT_TAG_STANDARD", - "PLACEMENT_TAG_TRACKING", - "PLACEMENT_TAG_TRACKING_IFRAME", - "PLACEMENT_TAG_TRACKING_JAVASCRIPT" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "impressionTag": { - "type": "string", - "description": "Tag string for serving an ad." - } - } - }, - "TagSetting": { - "id": "TagSetting", - "type": "object", - "description": "Tag Settings", - "properties": { - "additionalKeyValues": { - "type": "string", - "description": "Additional key-values to be included in tags. Each key-value pair must be of the form key=value, and pairs must be separated by a semicolon (;). Keys and values must not contain commas. For example, id=2;color=red is a valid value for this field." - }, - "includeClickThroughUrls": { - "type": "boolean", - "description": "Whether static landing page URLs should be included in the tags. This setting applies only to placements." - }, - "includeClickTracking": { - "type": "boolean", - "description": "Whether click-tracking string should be included in the tags." - }, - "keywordOption": { - "type": "string", - "description": "Option specifying how keywords are embedded in ad tags. This setting can be used to specify whether keyword placeholders are inserted in placement tags for this site. Publishers can then add keywords to those placeholders.", - "enum": [ - "GENERATE_SEPARATE_TAG_FOR_EACH_KEYWORD", - "IGNORE", - "PLACEHOLDER_WITH_LIST_OF_KEYWORDS" - ], - "enumDescriptions": [ - "", - "", - "" - ] - } - } - }, - "TagSettings": { - "id": "TagSettings", - "type": "object", - "description": "Dynamic and Image Tag Settings.", - "properties": { - "dynamicTagEnabled": { - "type": "boolean", - "description": "Whether dynamic floodlight tags are enabled." - }, - "imageTagEnabled": { - "type": "boolean", - "description": "Whether image tags are enabled." - } - } - }, - "TargetWindow": { - "id": "TargetWindow", - "type": "object", - "description": "Target Window.", - "properties": { - "customHtml": { - "type": "string", - "description": "User-entered value." - }, - "targetWindowOption": { - "type": "string", - "description": "Type of browser window for which the backup image of the flash creative can be displayed.", - "enum": [ - "CURRENT_WINDOW", - "CUSTOM", - "NEW_WINDOW" - ], - "enumDescriptions": [ - "", - "", - "" - ] - } - } - }, - "TargetableRemarketingList": { - "id": "TargetableRemarketingList", - "type": "object", - "description": "Contains properties of a targetable remarketing list. Remarketing enables you to create lists of users who have performed specific actions on a site, then target ads to members of those lists. This resource is a read-only view of a remarketing list to be used to faciliate targeting ads to specific lists. Remarketing lists that are owned by your advertisers and those that are shared to your advertisers or account are accessible via this resource. To manage remarketing lists that are owned by your advertisers, use the RemarketingLists resource.", - "properties": { - "accountId": { - "type": "string", - "description": "Account ID of this remarketing list. This is a read-only, auto-generated field that is only returned in GET requests.", - "format": "int64" - }, - "active": { - "type": "boolean", - "description": "Whether this targetable remarketing list is active." - }, - "advertiserId": { - "type": "string", - "description": "Dimension value for the advertiser ID that owns this targetable remarketing list.", - "format": "int64" - }, - "advertiserIdDimensionValue": { - "$ref": "DimensionValue", - "description": "Dimension value for the ID of the advertiser." - }, - "description": { - "type": "string", - "description": "Targetable remarketing list description." - }, - "id": { - "type": "string", - "description": "Targetable remarketing list ID.", - "format": "int64" - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#targetableRemarketingList\".", - "default": "dfareporting#targetableRemarketingList" - }, - "lifeSpan": { - "type": "string", - "description": "Number of days that a user should remain in the targetable remarketing list without an impression.", - "format": "int64" - }, - "listSize": { - "type": "string", - "description": "Number of users currently in the list. This is a read-only field.", - "format": "int64" - }, - "listSource": { - "type": "string", - "description": "Product from which this targetable remarketing list was originated.", - "enum": [ - "REMARKETING_LIST_SOURCE_ADX", - "REMARKETING_LIST_SOURCE_DBM", - "REMARKETING_LIST_SOURCE_DFA", - "REMARKETING_LIST_SOURCE_DFP", - "REMARKETING_LIST_SOURCE_DMP", - "REMARKETING_LIST_SOURCE_GA", - "REMARKETING_LIST_SOURCE_GPLUS", - "REMARKETING_LIST_SOURCE_OTHER", - "REMARKETING_LIST_SOURCE_PLAY_STORE", - "REMARKETING_LIST_SOURCE_XFP", - "REMARKETING_LIST_SOURCE_YOUTUBE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "name": { - "type": "string", - "description": "Name of the targetable remarketing list. Is no greater than 128 characters long." - }, - "subaccountId": { - "type": "string", - "description": "Subaccount ID of this remarketing list. This is a read-only, auto-generated field that is only returned in GET requests.", - "format": "int64" - } - } - }, - "TargetableRemarketingListsListResponse": { - "id": "TargetableRemarketingListsListResponse", - "type": "object", - "description": "Targetable remarketing list response", - "properties": { - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#targetableRemarketingListsListResponse\".", - "default": "dfareporting#targetableRemarketingListsListResponse" - }, - "nextPageToken": { - "type": "string", - "description": "Pagination token to be used for the next list operation." - }, - "targetableRemarketingLists": { - "type": "array", - "description": "Targetable remarketing list collection.", - "items": { - "$ref": "TargetableRemarketingList" - } - } - } - }, - "TargetingTemplate": { - "id": "TargetingTemplate", - "type": "object", - "description": "Contains properties of a targeting template. A targeting template encapsulates targeting information which can be reused across multiple ads.", - "properties": { - "accountId": { - "type": "string", - "description": "Account ID of this targeting template. This field, if left unset, will be auto-generated on insert and is read-only after insert.", - "format": "int64" - }, - "advertiserId": { - "type": "string", - "description": "Advertiser ID of this targeting template. This is a required field on insert and is read-only after insert.", - "format": "int64" - }, - "advertiserIdDimensionValue": { - "$ref": "DimensionValue", - "description": "Dimension value for the ID of the advertiser. This is a read-only, auto-generated field." - }, - "dayPartTargeting": { - "$ref": "DayPartTargeting", - "description": "Time and day targeting criteria." - }, - "geoTargeting": { - "$ref": "GeoTargeting", - "description": "Geographical targeting criteria." - }, - "id": { - "type": "string", - "description": "ID of this targeting template. This is a read-only, auto-generated field.", - "format": "int64" - }, - "keyValueTargetingExpression": { - "$ref": "KeyValueTargetingExpression", - "description": "Key-value targeting criteria." - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#targetingTemplate\".", - "default": "dfareporting#targetingTemplate" - }, - "languageTargeting": { - "$ref": "LanguageTargeting", - "description": "Language targeting criteria." - }, - "listTargetingExpression": { - "$ref": "ListTargetingExpression", - "description": "Remarketing list targeting criteria." - }, - "name": { - "type": "string", - "description": "Name of this targeting template. This field is required. It must be less than 256 characters long and unique within an advertiser." - }, - "subaccountId": { - "type": "string", - "description": "Subaccount ID of this targeting template. This field, if left unset, will be auto-generated on insert and is read-only after insert.", - "format": "int64" - }, - "technologyTargeting": { - "$ref": "TechnologyTargeting", - "description": "Technology platform targeting criteria." - } - } - }, - "TargetingTemplatesListResponse": { - "id": "TargetingTemplatesListResponse", - "type": "object", - "description": "Targeting Template List Response", - "properties": { - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#targetingTemplatesListResponse\".", - "default": "dfareporting#targetingTemplatesListResponse" - }, - "nextPageToken": { - "type": "string", - "description": "Pagination token to be used for the next list operation." - }, - "targetingTemplates": { - "type": "array", - "description": "Targeting template collection.", - "items": { - "$ref": "TargetingTemplate" - } - } - } - }, - "TechnologyTargeting": { - "id": "TechnologyTargeting", - "type": "object", - "description": "Technology Targeting.", - "properties": { - "browsers": { - "type": "array", - "description": "Browsers that this ad targets. For each browser either set browserVersionId or dartId along with the version numbers. If both are specified, only browserVersionId will be used. The other fields are populated automatically when the ad is inserted or updated.", - "items": { - "$ref": "Browser" - } - }, - "connectionTypes": { - "type": "array", - "description": "Connection types that this ad targets. For each connection type only id is required. The other fields are populated automatically when the ad is inserted or updated.", - "items": { - "$ref": "ConnectionType" - } - }, - "mobileCarriers": { - "type": "array", - "description": "Mobile carriers that this ad targets. For each mobile carrier only id is required, and the other fields are populated automatically when the ad is inserted or updated. If targeting a mobile carrier, do not set targeting for any zip codes.", - "items": { - "$ref": "MobileCarrier" - } - }, - "operatingSystemVersions": { - "type": "array", - "description": "Operating system versions that this ad targets. To target all versions, use operatingSystems. For each operating system version, only id is required. The other fields are populated automatically when the ad is inserted or updated. If targeting an operating system version, do not set targeting for the corresponding operating system in operatingSystems.", - "items": { - "$ref": "OperatingSystemVersion" - } - }, - "operatingSystems": { - "type": "array", - "description": "Operating systems that this ad targets. To target specific versions, use operatingSystemVersions. For each operating system only dartId is required. The other fields are populated automatically when the ad is inserted or updated. If targeting an operating system, do not set targeting for operating system versions for the same operating system.", - "items": { - "$ref": "OperatingSystem" - } - }, - "platformTypes": { - "type": "array", - "description": "Platform types that this ad targets. For example, desktop, mobile, or tablet. For each platform type, only id is required, and the other fields are populated automatically when the ad is inserted or updated.", - "items": { - "$ref": "PlatformType" - } - } - } - }, - "ThirdPartyAuthenticationToken": { - "id": "ThirdPartyAuthenticationToken", - "type": "object", - "description": "Third Party Authentication Token", - "properties": { - "name": { - "type": "string", - "description": "Name of the third-party authentication token." - }, - "value": { - "type": "string", - "description": "Value of the third-party authentication token. This is a read-only, auto-generated field." - } - } - }, - "ThirdPartyTrackingUrl": { - "id": "ThirdPartyTrackingUrl", - "type": "object", - "description": "Third-party Tracking URL.", - "properties": { - "thirdPartyUrlType": { - "type": "string", - "description": "Third-party URL type for in-stream video creatives.", - "enum": [ - "CLICK_TRACKING", - "IMPRESSION", - "RICH_MEDIA_BACKUP_IMPRESSION", - "RICH_MEDIA_IMPRESSION", - "RICH_MEDIA_RM_IMPRESSION", - "SURVEY", - "VIDEO_COMPLETE", - "VIDEO_CUSTOM", - "VIDEO_FIRST_QUARTILE", - "VIDEO_FULLSCREEN", - "VIDEO_MIDPOINT", - "VIDEO_MUTE", - "VIDEO_PAUSE", - "VIDEO_PROGRESS", - "VIDEO_REWIND", - "VIDEO_SKIP", - "VIDEO_START", - "VIDEO_STOP", - "VIDEO_THIRD_QUARTILE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "url": { - "type": "string", - "description": "URL for the specified third-party URL type." - } - } - }, - "TranscodeSetting": { - "id": "TranscodeSetting", - "type": "object", - "description": "Transcode Settings", - "properties": { - "enabledVideoFormats": { - "type": "array", - "description": "Whitelist of video formats to be served to this placement. Set this list to null or empty to serve all video formats.", - "items": { - "type": "integer", - "format": "int32" - } - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#transcodeSetting\".", - "default": "dfareporting#transcodeSetting" - } - } - }, - "UniversalAdId": { - "id": "UniversalAdId", - "type": "object", - "description": "A Universal Ad ID as per the VAST 4.0 spec. Applicable to the following creative types: INSTREAM_VIDEO and VPAID.", - "properties": { - "registry": { - "type": "string", - "description": "Registry used for the Ad ID value.", - "enum": [ - "AD_ID.ORG", - "CLEARCAST", - "DCM", - "OTHER" - ], - "enumDescriptions": [ - "", - "", - "", - "" - ] - }, - "value": { - "type": "string", - "description": "ID value for this creative. Only alphanumeric characters and the following symbols are valid: \"_/\\-\". Maximum length is 64 characters. Read only when registry is DCM." - } - } - }, - "UserDefinedVariableConfiguration": { - "id": "UserDefinedVariableConfiguration", - "type": "object", - "description": "User Defined Variable configuration.", - "properties": { - "dataType": { - "type": "string", - "description": "Data type for the variable. This is a required field.", - "enum": [ - "NUMBER", - "STRING" - ], - "enumDescriptions": [ - "", - "" - ] - }, - "reportName": { - "type": "string", - "description": "User-friendly name for the variable which will appear in reports. This is a required field, must be less than 64 characters long, and cannot contain the following characters: \"\"\u003c\u003e\"." - }, - "variableType": { - "type": "string", - "description": "Variable name in the tag. This is a required field.", - "enum": [ - "U1", - "U10", - "U100", - "U11", - "U12", - "U13", - "U14", - "U15", - "U16", - "U17", - "U18", - "U19", - "U2", - "U20", - "U21", - "U22", - "U23", - "U24", - "U25", - "U26", - "U27", - "U28", - "U29", - "U3", - "U30", - "U31", - "U32", - "U33", - "U34", - "U35", - "U36", - "U37", - "U38", - "U39", - "U4", - "U40", - "U41", - "U42", - "U43", - "U44", - "U45", - "U46", - "U47", - "U48", - "U49", - "U5", - "U50", - "U51", - "U52", - "U53", - "U54", - "U55", - "U56", - "U57", - "U58", - "U59", - "U6", - "U60", - "U61", - "U62", - "U63", - "U64", - "U65", - "U66", - "U67", - "U68", - "U69", - "U7", - "U70", - "U71", - "U72", - "U73", - "U74", - "U75", - "U76", - "U77", - "U78", - "U79", - "U8", - "U80", - "U81", - "U82", - "U83", - "U84", - "U85", - "U86", - "U87", - "U88", - "U89", - "U9", - "U90", - "U91", - "U92", - "U93", - "U94", - "U95", - "U96", - "U97", - "U98", - "U99" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - } - } - }, - "UserProfile": { - "id": "UserProfile", - "type": "object", - "description": "Represents a UserProfile resource.", - "properties": { - "accountId": { - "type": "string", - "description": "The account ID to which this profile belongs.", - "format": "int64" - }, - "accountName": { - "type": "string", - "description": "The account name this profile belongs to." - }, - "etag": { - "type": "string", - "description": "The eTag of this response for caching purposes." - }, - "kind": { - "type": "string", - "description": "The kind of resource this is, in this case dfareporting#userProfile.", - "default": "dfareporting#userProfile" - }, - "profileId": { - "type": "string", - "description": "The unique ID of the user profile.", - "format": "int64" - }, - "subAccountId": { - "type": "string", - "description": "The sub account ID this profile belongs to if applicable.", - "format": "int64" - }, - "subAccountName": { - "type": "string", - "description": "The sub account name this profile belongs to if applicable." - }, - "userName": { - "type": "string", - "description": "The user name." - } - } - }, - "UserProfileList": { - "id": "UserProfileList", - "type": "object", - "description": "Represents the list of user profiles.", - "properties": { - "etag": { - "type": "string", - "description": "The eTag of this response for caching purposes." - }, - "items": { - "type": "array", - "description": "The user profiles returned in this response.", - "items": { - "$ref": "UserProfile" - } - }, - "kind": { - "type": "string", - "description": "The kind of list this is, in this case dfareporting#userProfileList.", - "default": "dfareporting#userProfileList" - } - } - }, - "UserRole": { - "id": "UserRole", - "type": "object", - "description": "Contains properties of auser role, which is used to manage user access.", - "properties": { - "accountId": { - "type": "string", - "description": "Account ID of this user role. This is a read-only field that can be left blank.", - "format": "int64" - }, - "defaultUserRole": { - "type": "boolean", - "description": "Whether this is a default user role. Default user roles are created by the system for the account/subaccount and cannot be modified or deleted. Each default user role comes with a basic set of preassigned permissions." - }, - "id": { - "type": "string", - "description": "ID of this user role. This is a read-only, auto-generated field.", - "format": "int64" - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#userRole\".", - "default": "dfareporting#userRole" - }, - "name": { - "type": "string", - "description": "Name of this user role. This is a required field. Must be less than 256 characters long. If this user role is under a subaccount, the name must be unique among sites of the same subaccount. Otherwise, this user role is a top-level user role, and the name must be unique among top-level user roles of the same account." - }, - "parentUserRoleId": { - "type": "string", - "description": "ID of the user role that this user role is based on or copied from. This is a required field.", - "format": "int64" - }, - "permissions": { - "type": "array", - "description": "List of permissions associated with this user role.", - "items": { - "$ref": "UserRolePermission" - } - }, - "subaccountId": { - "type": "string", - "description": "Subaccount ID of this user role. This is a read-only field that can be left blank.", - "format": "int64" - } - } - }, - "UserRolePermission": { - "id": "UserRolePermission", - "type": "object", - "description": "Contains properties of a user role permission.", - "properties": { - "availability": { - "type": "string", - "description": "Levels of availability for a user role permission.", - "enum": [ - "ACCOUNT_ALWAYS", - "ACCOUNT_BY_DEFAULT", - "NOT_AVAILABLE_BY_DEFAULT", - "SUBACCOUNT_AND_ACCOUNT_ALWAYS", - "SUBACCOUNT_AND_ACCOUNT_BY_DEFAULT" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "" - ] - }, - "id": { - "type": "string", - "description": "ID of this user role permission.", - "format": "int64" - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#userRolePermission\".", - "default": "dfareporting#userRolePermission" - }, - "name": { - "type": "string", - "description": "Name of this user role permission." - }, - "permissionGroupId": { - "type": "string", - "description": "ID of the permission group that this user role permission belongs to.", - "format": "int64" - } - } - }, - "UserRolePermissionGroup": { - "id": "UserRolePermissionGroup", - "type": "object", - "description": "Represents a grouping of related user role permissions.", - "properties": { - "id": { - "type": "string", - "description": "ID of this user role permission.", - "format": "int64" - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#userRolePermissionGroup\".", - "default": "dfareporting#userRolePermissionGroup" - }, - "name": { - "type": "string", - "description": "Name of this user role permission group." - } - } - }, - "UserRolePermissionGroupsListResponse": { - "id": "UserRolePermissionGroupsListResponse", - "type": "object", - "description": "User Role Permission Group List Response", - "properties": { - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#userRolePermissionGroupsListResponse\".", - "default": "dfareporting#userRolePermissionGroupsListResponse" - }, - "userRolePermissionGroups": { - "type": "array", - "description": "User role permission group collection.", - "items": { - "$ref": "UserRolePermissionGroup" - } - } - } - }, - "UserRolePermissionsListResponse": { - "id": "UserRolePermissionsListResponse", - "type": "object", - "description": "User Role Permission List Response", - "properties": { - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#userRolePermissionsListResponse\".", - "default": "dfareporting#userRolePermissionsListResponse" - }, - "userRolePermissions": { - "type": "array", - "description": "User role permission collection.", - "items": { - "$ref": "UserRolePermission" - } - } - } - }, - "UserRolesListResponse": { - "id": "UserRolesListResponse", - "type": "object", - "description": "User Role List Response", - "properties": { - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#userRolesListResponse\".", - "default": "dfareporting#userRolesListResponse" - }, - "nextPageToken": { - "type": "string", - "description": "Pagination token to be used for the next list operation." - }, - "userRoles": { - "type": "array", - "description": "User role collection.", - "items": { - "$ref": "UserRole" - } - } - } - }, - "VideoFormat": { - "id": "VideoFormat", - "type": "object", - "description": "Contains information about supported video formats.", - "properties": { - "fileType": { - "type": "string", - "description": "File type of the video format.", - "enum": [ - "FLV", - "M3U8", - "MP4", - "THREEGPP", - "WEBM" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "" - ] - }, - "id": { - "type": "integer", - "description": "ID of the video format.", - "format": "int32" - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#videoFormat\".", - "default": "dfareporting#videoFormat" - }, - "resolution": { - "$ref": "Size", - "description": "The resolution of this video format." - }, - "targetBitRate": { - "type": "integer", - "description": "The target bit rate of this video format.", - "format": "int32" - } - } - }, - "VideoFormatsListResponse": { - "id": "VideoFormatsListResponse", - "type": "object", - "description": "Video Format List Response", - "properties": { - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#videoFormatsListResponse\".", - "default": "dfareporting#videoFormatsListResponse" - }, - "videoFormats": { - "type": "array", - "description": "Video format collection.", - "items": { - "$ref": "VideoFormat" - } - } - } - }, - "VideoOffset": { - "id": "VideoOffset", - "type": "object", - "description": "Video Offset", - "properties": { - "offsetPercentage": { - "type": "integer", - "description": "Duration, as a percentage of video duration. Do not set when offsetSeconds is set. Acceptable values are 0 to 100, inclusive.", - "format": "int32" - }, - "offsetSeconds": { - "type": "integer", - "description": "Duration, in seconds. Do not set when offsetPercentage is set. Acceptable values are 0 to 86399, inclusive.", - "format": "int32" - } - } - }, - "VideoSettings": { - "id": "VideoSettings", - "type": "object", - "description": "Video Settings", - "properties": { - "companionSettings": { - "$ref": "CompanionSetting", - "description": "Settings for the companion creatives of video creatives served to this placement." - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#videoSettings\".", - "default": "dfareporting#videoSettings" - }, - "orientation": { - "type": "string", - "description": "Orientation of a video placement. If this value is set, placement will return assets matching the specified orientation.", - "enum": [ - "ANY", - "LANDSCAPE", - "PORTRAIT" - ], - "enumDescriptions": [ - "", - "", - "" - ] - }, - "skippableSettings": { - "$ref": "SkippableSetting", - "description": "Settings for the skippability of video creatives served to this placement. If this object is provided, the creative-level skippable settings will be overridden." - }, - "transcodeSettings": { - "$ref": "TranscodeSetting", - "description": "Settings for the transcodes of video creatives served to this placement. If this object is provided, the creative-level transcode settings will be overridden." - } - } - } - }, - "resources": { - "accountActiveAdSummaries": { - "methods": { - "get": { - "id": "dfareporting.accountActiveAdSummaries.get", - "path": "userprofiles/{profileId}/accountActiveAdSummaries/{summaryAccountId}", - "httpMethod": "GET", - "description": "Gets the account's active ad summary by account ID.", - "parameters": { - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - }, - "summaryAccountId": { - "type": "string", - "description": "Account ID.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "summaryAccountId" - ], - "response": { - "$ref": "AccountActiveAdSummary" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - } - } - }, - "accountPermissionGroups": { - "methods": { - "get": { - "id": "dfareporting.accountPermissionGroups.get", - "path": "userprofiles/{profileId}/accountPermissionGroups/{id}", - "httpMethod": "GET", - "description": "Gets one account permission group by ID.", - "parameters": { - "id": { - "type": "string", - "description": "Account permission group ID.", - "required": true, - "format": "int64", - "location": "path" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "id" - ], - "response": { - "$ref": "AccountPermissionGroup" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "list": { - "id": "dfareporting.accountPermissionGroups.list", - "path": "userprofiles/{profileId}/accountPermissionGroups", - "httpMethod": "GET", - "description": "Retrieves the list of account permission groups.", - "parameters": { - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId" - ], - "response": { - "$ref": "AccountPermissionGroupsListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - } - } - }, - "accountPermissions": { - "methods": { - "get": { - "id": "dfareporting.accountPermissions.get", - "path": "userprofiles/{profileId}/accountPermissions/{id}", - "httpMethod": "GET", - "description": "Gets one account permission by ID.", - "parameters": { - "id": { - "type": "string", - "description": "Account permission ID.", - "required": true, - "format": "int64", - "location": "path" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "id" - ], - "response": { - "$ref": "AccountPermission" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "list": { - "id": "dfareporting.accountPermissions.list", - "path": "userprofiles/{profileId}/accountPermissions", - "httpMethod": "GET", - "description": "Retrieves the list of account permissions.", - "parameters": { - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId" - ], - "response": { - "$ref": "AccountPermissionsListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - } - } - }, - "accountUserProfiles": { - "methods": { - "get": { - "id": "dfareporting.accountUserProfiles.get", - "path": "userprofiles/{profileId}/accountUserProfiles/{id}", - "httpMethod": "GET", - "description": "Gets one account user profile by ID.", - "parameters": { - "id": { - "type": "string", - "description": "User profile ID.", - "required": true, - "format": "int64", - "location": "path" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "id" - ], - "response": { - "$ref": "AccountUserProfile" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "insert": { - "id": "dfareporting.accountUserProfiles.insert", - "path": "userprofiles/{profileId}/accountUserProfiles", - "httpMethod": "POST", - "description": "Inserts a new account user profile.", - "parameters": { - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId" - ], - "request": { - "$ref": "AccountUserProfile" - }, - "response": { - "$ref": "AccountUserProfile" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "list": { - "id": "dfareporting.accountUserProfiles.list", - "path": "userprofiles/{profileId}/accountUserProfiles", - "httpMethod": "GET", - "description": "Retrieves a list of account user profiles, possibly filtered. This method supports paging.", - "parameters": { - "active": { - "type": "boolean", - "description": "Select only active user profiles.", - "location": "query" - }, - "ids": { - "type": "string", - "description": "Select only user profiles with these IDs.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "Maximum number of results to return.", - "default": "1000", - "format": "int32", - "minimum": "0", - "maximum": "1000", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Value of the nextPageToken from the previous result page.", - "location": "query" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - }, - "searchString": { - "type": "string", - "description": "Allows searching for objects by name, ID or email. Wildcards (*) are allowed. For example, \"user profile*2015\" will return objects with names like \"user profile June 2015\", \"user profile April 2015\", or simply \"user profile 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"user profile\" will match objects with name \"my user profile\", \"user profile 2015\", or simply \"user profile\".", - "location": "query" - }, - "sortField": { - "type": "string", - "description": "Field by which to sort the list.", - "default": "ID", - "enum": [ - "ID", - "NAME" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - }, - "sortOrder": { - "type": "string", - "description": "Order of sorted results.", - "default": "ASCENDING", - "enum": [ - "ASCENDING", - "DESCENDING" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - }, - "subaccountId": { - "type": "string", - "description": "Select only user profiles with the specified subaccount ID.", - "format": "int64", - "location": "query" - }, - "userRoleId": { - "type": "string", - "description": "Select only user profiles with the specified user role ID.", - "format": "int64", - "location": "query" - } - }, - "parameterOrder": [ - "profileId" - ], - "response": { - "$ref": "AccountUserProfilesListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "patch": { - "id": "dfareporting.accountUserProfiles.patch", - "path": "userprofiles/{profileId}/accountUserProfiles", - "httpMethod": "PATCH", - "description": "Updates an existing account user profile. This method supports patch semantics.", - "parameters": { - "id": { - "type": "string", - "description": "User profile ID.", - "required": true, - "format": "int64", - "location": "query" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "id" - ], - "request": { - "$ref": "AccountUserProfile" - }, - "response": { - "$ref": "AccountUserProfile" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "update": { - "id": "dfareporting.accountUserProfiles.update", - "path": "userprofiles/{profileId}/accountUserProfiles", - "httpMethod": "PUT", - "description": "Updates an existing account user profile.", - "parameters": { - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId" - ], - "request": { - "$ref": "AccountUserProfile" - }, - "response": { - "$ref": "AccountUserProfile" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - } - } - }, - "accounts": { - "methods": { - "get": { - "id": "dfareporting.accounts.get", - "path": "userprofiles/{profileId}/accounts/{id}", - "httpMethod": "GET", - "description": "Gets one account by ID.", - "parameters": { - "id": { - "type": "string", - "description": "Account ID.", - "required": true, - "format": "int64", - "location": "path" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "id" - ], - "response": { - "$ref": "Account" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "list": { - "id": "dfareporting.accounts.list", - "path": "userprofiles/{profileId}/accounts", - "httpMethod": "GET", - "description": "Retrieves the list of accounts, possibly filtered. This method supports paging.", - "parameters": { - "active": { - "type": "boolean", - "description": "Select only active accounts. Don't set this field to select both active and non-active accounts.", - "location": "query" - }, - "ids": { - "type": "string", - "description": "Select only accounts with these IDs.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "Maximum number of results to return.", - "default": "1000", - "format": "int32", - "minimum": "0", - "maximum": "1000", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Value of the nextPageToken from the previous result page.", - "location": "query" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - }, - "searchString": { - "type": "string", - "description": "Allows searching for objects by name or ID. Wildcards (*) are allowed. For example, \"account*2015\" will return objects with names like \"account June 2015\", \"account April 2015\", or simply \"account 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"account\" will match objects with name \"my account\", \"account 2015\", or simply \"account\".", - "location": "query" - }, - "sortField": { - "type": "string", - "description": "Field by which to sort the list.", - "default": "ID", - "enum": [ - "ID", - "NAME" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - }, - "sortOrder": { - "type": "string", - "description": "Order of sorted results.", - "default": "ASCENDING", - "enum": [ - "ASCENDING", - "DESCENDING" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - } - }, - "parameterOrder": [ - "profileId" - ], - "response": { - "$ref": "AccountsListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "patch": { - "id": "dfareporting.accounts.patch", - "path": "userprofiles/{profileId}/accounts", - "httpMethod": "PATCH", - "description": "Updates an existing account. This method supports patch semantics.", - "parameters": { - "id": { - "type": "string", - "description": "Account ID.", - "required": true, - "format": "int64", - "location": "query" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "id" - ], - "request": { - "$ref": "Account" - }, - "response": { - "$ref": "Account" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "update": { - "id": "dfareporting.accounts.update", - "path": "userprofiles/{profileId}/accounts", - "httpMethod": "PUT", - "description": "Updates an existing account.", - "parameters": { - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId" - ], - "request": { - "$ref": "Account" - }, - "response": { - "$ref": "Account" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - } - } - }, - "ads": { - "methods": { - "get": { - "id": "dfareporting.ads.get", - "path": "userprofiles/{profileId}/ads/{id}", - "httpMethod": "GET", - "description": "Gets one ad by ID.", - "parameters": { - "id": { - "type": "string", - "description": "Ad ID.", - "required": true, - "format": "int64", - "location": "path" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "id" - ], - "response": { - "$ref": "Ad" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "insert": { - "id": "dfareporting.ads.insert", - "path": "userprofiles/{profileId}/ads", - "httpMethod": "POST", - "description": "Inserts a new ad.", - "parameters": { - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId" - ], - "request": { - "$ref": "Ad" - }, - "response": { - "$ref": "Ad" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "list": { - "id": "dfareporting.ads.list", - "path": "userprofiles/{profileId}/ads", - "httpMethod": "GET", - "description": "Retrieves a list of ads, possibly filtered. This method supports paging.", - "parameters": { - "active": { - "type": "boolean", - "description": "Select only active ads.", - "location": "query" - }, - "advertiserId": { - "type": "string", - "description": "Select only ads with this advertiser ID.", - "format": "int64", - "location": "query" - }, - "archived": { - "type": "boolean", - "description": "Select only archived ads.", - "location": "query" - }, - "audienceSegmentIds": { - "type": "string", - "description": "Select only ads with these audience segment IDs.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "campaignIds": { - "type": "string", - "description": "Select only ads with these campaign IDs.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "compatibility": { - "type": "string", - "description": "Select default ads with the specified compatibility. Applicable when type is AD_SERVING_DEFAULT_AD. DISPLAY and DISPLAY_INTERSTITIAL refer to rendering either on desktop or on mobile devices for regular or interstitial ads, respectively. APP and APP_INTERSTITIAL are for rendering in mobile apps. IN_STREAM_VIDEO refers to rendering an in-stream video ads developed with the VAST standard.", - "enum": [ - "APP", - "APP_INTERSTITIAL", - "DISPLAY", - "DISPLAY_INTERSTITIAL", - "IN_STREAM_VIDEO" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "" - ], - "location": "query" - }, - "creativeIds": { - "type": "string", - "description": "Select only ads with these creative IDs assigned.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "creativeOptimizationConfigurationIds": { - "type": "string", - "description": "Select only ads with these creative optimization configuration IDs.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "dynamicClickTracker": { - "type": "boolean", - "description": "Select only dynamic click trackers. Applicable when type is AD_SERVING_CLICK_TRACKER. If true, select dynamic click trackers. If false, select static click trackers. Leave unset to select both.", - "location": "query" - }, - "ids": { - "type": "string", - "description": "Select only ads with these IDs.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "landingPageIds": { - "type": "string", - "description": "Select only ads with these landing page IDs.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "Maximum number of results to return.", - "default": "1000", - "format": "int32", - "minimum": "0", - "maximum": "1000", - "location": "query" - }, - "overriddenEventTagId": { - "type": "string", - "description": "Select only ads with this event tag override ID.", - "format": "int64", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Value of the nextPageToken from the previous result page.", - "location": "query" - }, - "placementIds": { - "type": "string", - "description": "Select only ads with these placement IDs assigned.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - }, - "remarketingListIds": { - "type": "string", - "description": "Select only ads whose list targeting expression use these remarketing list IDs.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "searchString": { - "type": "string", - "description": "Allows searching for objects by name or ID. Wildcards (*) are allowed. For example, \"ad*2015\" will return objects with names like \"ad June 2015\", \"ad April 2015\", or simply \"ad 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"ad\" will match objects with name \"my ad\", \"ad 2015\", or simply \"ad\".", - "location": "query" - }, - "sizeIds": { - "type": "string", - "description": "Select only ads with these size IDs.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "sortField": { - "type": "string", - "description": "Field by which to sort the list.", - "default": "ID", - "enum": [ - "ID", - "NAME" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - }, - "sortOrder": { - "type": "string", - "description": "Order of sorted results.", - "default": "ASCENDING", - "enum": [ - "ASCENDING", - "DESCENDING" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - }, - "sslCompliant": { - "type": "boolean", - "description": "Select only ads that are SSL-compliant.", - "location": "query" - }, - "sslRequired": { - "type": "boolean", - "description": "Select only ads that require SSL.", - "location": "query" - }, - "type": { - "type": "string", - "description": "Select only ads with these types.", - "enum": [ - "AD_SERVING_CLICK_TRACKER", - "AD_SERVING_DEFAULT_AD", - "AD_SERVING_STANDARD_AD", - "AD_SERVING_TRACKING" - ], - "enumDescriptions": [ - "", - "", - "", - "" - ], - "repeated": true, - "location": "query" - } - }, - "parameterOrder": [ - "profileId" - ], - "response": { - "$ref": "AdsListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "patch": { - "id": "dfareporting.ads.patch", - "path": "userprofiles/{profileId}/ads", - "httpMethod": "PATCH", - "description": "Updates an existing ad. This method supports patch semantics.", - "parameters": { - "id": { - "type": "string", - "description": "Ad ID.", - "required": true, - "format": "int64", - "location": "query" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "id" - ], - "request": { - "$ref": "Ad" - }, - "response": { - "$ref": "Ad" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "update": { - "id": "dfareporting.ads.update", - "path": "userprofiles/{profileId}/ads", - "httpMethod": "PUT", - "description": "Updates an existing ad.", - "parameters": { - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId" - ], - "request": { - "$ref": "Ad" - }, - "response": { - "$ref": "Ad" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - } - } - }, - "advertiserGroups": { - "methods": { - "delete": { - "id": "dfareporting.advertiserGroups.delete", - "path": "userprofiles/{profileId}/advertiserGroups/{id}", - "httpMethod": "DELETE", - "description": "Deletes an existing advertiser group.", - "parameters": { - "id": { - "type": "string", - "description": "Advertiser group ID.", - "required": true, - "format": "int64", - "location": "path" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "id" - ], - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "get": { - "id": "dfareporting.advertiserGroups.get", - "path": "userprofiles/{profileId}/advertiserGroups/{id}", - "httpMethod": "GET", - "description": "Gets one advertiser group by ID.", - "parameters": { - "id": { - "type": "string", - "description": "Advertiser group ID.", - "required": true, - "format": "int64", - "location": "path" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "id" - ], - "response": { - "$ref": "AdvertiserGroup" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "insert": { - "id": "dfareporting.advertiserGroups.insert", - "path": "userprofiles/{profileId}/advertiserGroups", - "httpMethod": "POST", - "description": "Inserts a new advertiser group.", - "parameters": { - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId" - ], - "request": { - "$ref": "AdvertiserGroup" - }, - "response": { - "$ref": "AdvertiserGroup" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "list": { - "id": "dfareporting.advertiserGroups.list", - "path": "userprofiles/{profileId}/advertiserGroups", - "httpMethod": "GET", - "description": "Retrieves a list of advertiser groups, possibly filtered. This method supports paging.", - "parameters": { - "ids": { - "type": "string", - "description": "Select only advertiser groups with these IDs.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "Maximum number of results to return.", - "default": "1000", - "format": "int32", - "minimum": "0", - "maximum": "1000", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Value of the nextPageToken from the previous result page.", - "location": "query" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - }, - "searchString": { - "type": "string", - "description": "Allows searching for objects by name or ID. Wildcards (*) are allowed. For example, \"advertiser*2015\" will return objects with names like \"advertiser group June 2015\", \"advertiser group April 2015\", or simply \"advertiser group 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"advertisergroup\" will match objects with name \"my advertisergroup\", \"advertisergroup 2015\", or simply \"advertisergroup\".", - "location": "query" - }, - "sortField": { - "type": "string", - "description": "Field by which to sort the list.", - "default": "ID", - "enum": [ - "ID", - "NAME" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - }, - "sortOrder": { - "type": "string", - "description": "Order of sorted results.", - "default": "ASCENDING", - "enum": [ - "ASCENDING", - "DESCENDING" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - } - }, - "parameterOrder": [ - "profileId" - ], - "response": { - "$ref": "AdvertiserGroupsListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "patch": { - "id": "dfareporting.advertiserGroups.patch", - "path": "userprofiles/{profileId}/advertiserGroups", - "httpMethod": "PATCH", - "description": "Updates an existing advertiser group. This method supports patch semantics.", - "parameters": { - "id": { - "type": "string", - "description": "Advertiser group ID.", - "required": true, - "format": "int64", - "location": "query" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "id" - ], - "request": { - "$ref": "AdvertiserGroup" - }, - "response": { - "$ref": "AdvertiserGroup" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "update": { - "id": "dfareporting.advertiserGroups.update", - "path": "userprofiles/{profileId}/advertiserGroups", - "httpMethod": "PUT", - "description": "Updates an existing advertiser group.", - "parameters": { - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId" - ], - "request": { - "$ref": "AdvertiserGroup" - }, - "response": { - "$ref": "AdvertiserGroup" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - } - } - }, - "advertiserLandingPages": { - "methods": { - "get": { - "id": "dfareporting.advertiserLandingPages.get", - "path": "userprofiles/{profileId}/advertiserLandingPages/{id}", - "httpMethod": "GET", - "description": "Gets one landing page by ID.", - "parameters": { - "id": { - "type": "string", - "description": "Landing page ID.", - "required": true, - "format": "int64", - "location": "path" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "id" - ], - "response": { - "$ref": "LandingPage" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "insert": { - "id": "dfareporting.advertiserLandingPages.insert", - "path": "userprofiles/{profileId}/advertiserLandingPages", - "httpMethod": "POST", - "description": "Inserts a new landing page.", - "parameters": { - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId" - ], - "request": { - "$ref": "LandingPage" - }, - "response": { - "$ref": "LandingPage" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "list": { - "id": "dfareporting.advertiserLandingPages.list", - "path": "userprofiles/{profileId}/advertiserLandingPages", - "httpMethod": "GET", - "description": "Retrieves a list of landing pages.", - "parameters": { - "advertiserIds": { - "type": "string", - "description": "Select only landing pages that belong to these advertisers.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "archived": { - "type": "boolean", - "description": "Select only archived landing pages. Don't set this field to select both archived and non-archived landing pages.", - "location": "query" - }, - "ids": { - "type": "string", - "description": "Select only landing pages with these IDs.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "Maximum number of results to return.", - "default": "1000", - "format": "int32", - "minimum": "0", - "maximum": "1000", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Value of the nextPageToken from the previous result page.", - "location": "query" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - }, - "searchString": { - "type": "string", - "description": "Allows searching for landing pages by name or ID. Wildcards (*) are allowed. For example, \"landingpage*2017\" will return landing pages with names like \"landingpage July 2017\", \"landingpage March 2017\", or simply \"landingpage 2017\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"landingpage\" will match campaigns with name \"my landingpage\", \"landingpage 2015\", or simply \"landingpage\".", - "location": "query" - }, - "sortField": { - "type": "string", - "description": "Field by which to sort the list.", - "default": "ID", - "enum": [ - "ID", - "NAME" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - }, - "sortOrder": { - "type": "string", - "description": "Order of sorted results.", - "default": "ASCENDING", - "enum": [ - "ASCENDING", - "DESCENDING" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - }, - "subaccountId": { - "type": "string", - "description": "Select only landing pages that belong to this subaccount.", - "format": "int64", - "location": "query" - } - }, - "parameterOrder": [ - "profileId" - ], - "response": { - "$ref": "AdvertiserLandingPagesListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "patch": { - "id": "dfareporting.advertiserLandingPages.patch", - "path": "userprofiles/{profileId}/advertiserLandingPages", - "httpMethod": "PATCH", - "description": "Updates an existing landing page. This method supports patch semantics.", - "parameters": { - "id": { - "type": "string", - "description": "Landing page ID.", - "required": true, - "format": "int64", - "location": "query" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "id" - ], - "request": { - "$ref": "LandingPage" - }, - "response": { - "$ref": "LandingPage" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "update": { - "id": "dfareporting.advertiserLandingPages.update", - "path": "userprofiles/{profileId}/advertiserLandingPages", - "httpMethod": "PUT", - "description": "Updates an existing landing page.", - "parameters": { - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId" - ], - "request": { - "$ref": "LandingPage" - }, - "response": { - "$ref": "LandingPage" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - } - } - }, - "advertisers": { - "methods": { - "get": { - "id": "dfareporting.advertisers.get", - "path": "userprofiles/{profileId}/advertisers/{id}", - "httpMethod": "GET", - "description": "Gets one advertiser by ID.", - "parameters": { - "id": { - "type": "string", - "description": "Advertiser ID.", - "required": true, - "format": "int64", - "location": "path" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "id" - ], - "response": { - "$ref": "Advertiser" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "insert": { - "id": "dfareporting.advertisers.insert", - "path": "userprofiles/{profileId}/advertisers", - "httpMethod": "POST", - "description": "Inserts a new advertiser.", - "parameters": { - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId" - ], - "request": { - "$ref": "Advertiser" - }, - "response": { - "$ref": "Advertiser" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "list": { - "id": "dfareporting.advertisers.list", - "path": "userprofiles/{profileId}/advertisers", - "httpMethod": "GET", - "description": "Retrieves a list of advertisers, possibly filtered. This method supports paging.", - "parameters": { - "advertiserGroupIds": { - "type": "string", - "description": "Select only advertisers with these advertiser group IDs.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "floodlightConfigurationIds": { - "type": "string", - "description": "Select only advertisers with these floodlight configuration IDs.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "ids": { - "type": "string", - "description": "Select only advertisers with these IDs.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "includeAdvertisersWithoutGroupsOnly": { - "type": "boolean", - "description": "Select only advertisers which do not belong to any advertiser group.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "Maximum number of results to return.", - "default": "1000", - "format": "int32", - "minimum": "0", - "maximum": "1000", - "location": "query" - }, - "onlyParent": { - "type": "boolean", - "description": "Select only advertisers which use another advertiser's floodlight configuration.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Value of the nextPageToken from the previous result page.", - "location": "query" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - }, - "searchString": { - "type": "string", - "description": "Allows searching for objects by name or ID. Wildcards (*) are allowed. For example, \"advertiser*2015\" will return objects with names like \"advertiser June 2015\", \"advertiser April 2015\", or simply \"advertiser 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"advertiser\" will match objects with name \"my advertiser\", \"advertiser 2015\", or simply \"advertiser\".", - "location": "query" - }, - "sortField": { - "type": "string", - "description": "Field by which to sort the list.", - "default": "ID", - "enum": [ - "ID", - "NAME" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - }, - "sortOrder": { - "type": "string", - "description": "Order of sorted results.", - "default": "ASCENDING", - "enum": [ - "ASCENDING", - "DESCENDING" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - }, - "status": { - "type": "string", - "description": "Select only advertisers with the specified status.", - "enum": [ - "APPROVED", - "ON_HOLD" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - }, - "subaccountId": { - "type": "string", - "description": "Select only advertisers with these subaccount IDs.", - "format": "int64", - "location": "query" - } - }, - "parameterOrder": [ - "profileId" - ], - "response": { - "$ref": "AdvertisersListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "patch": { - "id": "dfareporting.advertisers.patch", - "path": "userprofiles/{profileId}/advertisers", - "httpMethod": "PATCH", - "description": "Updates an existing advertiser. This method supports patch semantics.", - "parameters": { - "id": { - "type": "string", - "description": "Advertiser ID.", - "required": true, - "format": "int64", - "location": "query" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "id" - ], - "request": { - "$ref": "Advertiser" - }, - "response": { - "$ref": "Advertiser" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "update": { - "id": "dfareporting.advertisers.update", - "path": "userprofiles/{profileId}/advertisers", - "httpMethod": "PUT", - "description": "Updates an existing advertiser.", - "parameters": { - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId" - ], - "request": { - "$ref": "Advertiser" - }, - "response": { - "$ref": "Advertiser" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - } - } - }, - "browsers": { - "methods": { - "list": { - "id": "dfareporting.browsers.list", - "path": "userprofiles/{profileId}/browsers", - "httpMethod": "GET", - "description": "Retrieves a list of browsers.", - "parameters": { - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId" - ], - "response": { - "$ref": "BrowsersListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - } - } - }, - "campaignCreativeAssociations": { - "methods": { - "insert": { - "id": "dfareporting.campaignCreativeAssociations.insert", - "path": "userprofiles/{profileId}/campaigns/{campaignId}/campaignCreativeAssociations", - "httpMethod": "POST", - "description": "Associates a creative with the specified campaign. This method creates a default ad with dimensions matching the creative in the campaign if such a default ad does not exist already.", - "parameters": { - "campaignId": { - "type": "string", - "description": "Campaign ID in this association.", - "required": true, - "format": "int64", - "location": "path" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "campaignId" - ], - "request": { - "$ref": "CampaignCreativeAssociation" - }, - "response": { - "$ref": "CampaignCreativeAssociation" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "list": { - "id": "dfareporting.campaignCreativeAssociations.list", - "path": "userprofiles/{profileId}/campaigns/{campaignId}/campaignCreativeAssociations", - "httpMethod": "GET", - "description": "Retrieves the list of creative IDs associated with the specified campaign. This method supports paging.", - "parameters": { - "campaignId": { - "type": "string", - "description": "Campaign ID in this association.", - "required": true, - "format": "int64", - "location": "path" - }, - "maxResults": { - "type": "integer", - "description": "Maximum number of results to return.", - "default": "1000", - "format": "int32", - "minimum": "0", - "maximum": "1000", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Value of the nextPageToken from the previous result page.", - "location": "query" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - }, - "sortOrder": { - "type": "string", - "description": "Order of sorted results.", - "default": "ASCENDING", - "enum": [ - "ASCENDING", - "DESCENDING" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - } - }, - "parameterOrder": [ - "profileId", - "campaignId" - ], - "response": { - "$ref": "CampaignCreativeAssociationsListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - } - } - }, - "campaigns": { - "methods": { - "get": { - "id": "dfareporting.campaigns.get", - "path": "userprofiles/{profileId}/campaigns/{id}", - "httpMethod": "GET", - "description": "Gets one campaign by ID.", - "parameters": { - "id": { - "type": "string", - "description": "Campaign ID.", - "required": true, - "format": "int64", - "location": "path" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "id" - ], - "response": { - "$ref": "Campaign" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "insert": { - "id": "dfareporting.campaigns.insert", - "path": "userprofiles/{profileId}/campaigns", - "httpMethod": "POST", - "description": "Inserts a new campaign.", - "parameters": { - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId" - ], - "request": { - "$ref": "Campaign" - }, - "response": { - "$ref": "Campaign" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "list": { - "id": "dfareporting.campaigns.list", - "path": "userprofiles/{profileId}/campaigns", - "httpMethod": "GET", - "description": "Retrieves a list of campaigns, possibly filtered. This method supports paging.", - "parameters": { - "advertiserGroupIds": { - "type": "string", - "description": "Select only campaigns whose advertisers belong to these advertiser groups.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "advertiserIds": { - "type": "string", - "description": "Select only campaigns that belong to these advertisers.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "archived": { - "type": "boolean", - "description": "Select only archived campaigns. Don't set this field to select both archived and non-archived campaigns.", - "location": "query" - }, - "atLeastOneOptimizationActivity": { - "type": "boolean", - "description": "Select only campaigns that have at least one optimization activity.", - "location": "query" - }, - "excludedIds": { - "type": "string", - "description": "Exclude campaigns with these IDs.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "ids": { - "type": "string", - "description": "Select only campaigns with these IDs.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "Maximum number of results to return.", - "default": "1000", - "format": "int32", - "minimum": "0", - "maximum": "1000", - "location": "query" - }, - "overriddenEventTagId": { - "type": "string", - "description": "Select only campaigns that have overridden this event tag ID.", - "format": "int64", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Value of the nextPageToken from the previous result page.", - "location": "query" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - }, - "searchString": { - "type": "string", - "description": "Allows searching for campaigns by name or ID. Wildcards (*) are allowed. For example, \"campaign*2015\" will return campaigns with names like \"campaign June 2015\", \"campaign April 2015\", or simply \"campaign 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"campaign\" will match campaigns with name \"my campaign\", \"campaign 2015\", or simply \"campaign\".", - "location": "query" - }, - "sortField": { - "type": "string", - "description": "Field by which to sort the list.", - "default": "ID", - "enum": [ - "ID", - "NAME" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - }, - "sortOrder": { - "type": "string", - "description": "Order of sorted results.", - "default": "ASCENDING", - "enum": [ - "ASCENDING", - "DESCENDING" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - }, - "subaccountId": { - "type": "string", - "description": "Select only campaigns that belong to this subaccount.", - "format": "int64", - "location": "query" - } - }, - "parameterOrder": [ - "profileId" - ], - "response": { - "$ref": "CampaignsListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "patch": { - "id": "dfareporting.campaigns.patch", - "path": "userprofiles/{profileId}/campaigns", - "httpMethod": "PATCH", - "description": "Updates an existing campaign. This method supports patch semantics.", - "parameters": { - "id": { - "type": "string", - "description": "Campaign ID.", - "required": true, - "format": "int64", - "location": "query" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "id" - ], - "request": { - "$ref": "Campaign" - }, - "response": { - "$ref": "Campaign" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "update": { - "id": "dfareporting.campaigns.update", - "path": "userprofiles/{profileId}/campaigns", - "httpMethod": "PUT", - "description": "Updates an existing campaign.", - "parameters": { - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId" - ], - "request": { - "$ref": "Campaign" - }, - "response": { - "$ref": "Campaign" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - } - } - }, - "changeLogs": { - "methods": { - "get": { - "id": "dfareporting.changeLogs.get", - "path": "userprofiles/{profileId}/changeLogs/{id}", - "httpMethod": "GET", - "description": "Gets one change log by ID.", - "parameters": { - "id": { - "type": "string", - "description": "Change log ID.", - "required": true, - "format": "int64", - "location": "path" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "id" - ], - "response": { - "$ref": "ChangeLog" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "list": { - "id": "dfareporting.changeLogs.list", - "path": "userprofiles/{profileId}/changeLogs", - "httpMethod": "GET", - "description": "Retrieves a list of change logs. This method supports paging.", - "parameters": { - "action": { - "type": "string", - "description": "Select only change logs with the specified action.", - "enum": [ - "ACTION_ADD", - "ACTION_ASSIGN", - "ACTION_ASSOCIATE", - "ACTION_CREATE", - "ACTION_DELETE", - "ACTION_DISABLE", - "ACTION_EMAIL_TAGS", - "ACTION_ENABLE", - "ACTION_LINK", - "ACTION_MARK_AS_DEFAULT", - "ACTION_PUSH", - "ACTION_REMOVE", - "ACTION_SEND", - "ACTION_SHARE", - "ACTION_UNASSIGN", - "ACTION_UNLINK", - "ACTION_UPDATE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ], - "location": "query" - }, - "ids": { - "type": "string", - "description": "Select only change logs with these IDs.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "maxChangeTime": { - "type": "string", - "description": "Select only change logs whose change time is before the specified maxChangeTime.The time should be formatted as an RFC3339 date/time string. For example, for 10:54 PM on July 18th, 2015, in the America/New York time zone, the format is \"2015-07-18T22:54:00-04:00\". In other words, the year, month, day, the letter T, the hour (24-hour clock system), minute, second, and then the time zone offset.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "Maximum number of results to return.", - "default": "1000", - "format": "int32", - "minimum": "0", - "maximum": "1000", - "location": "query" - }, - "minChangeTime": { - "type": "string", - "description": "Select only change logs whose change time is before the specified minChangeTime.The time should be formatted as an RFC3339 date/time string. For example, for 10:54 PM on July 18th, 2015, in the America/New York time zone, the format is \"2015-07-18T22:54:00-04:00\". In other words, the year, month, day, the letter T, the hour (24-hour clock system), minute, second, and then the time zone offset.", - "location": "query" - }, - "objectIds": { - "type": "string", - "description": "Select only change logs with these object IDs.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "objectType": { - "type": "string", - "description": "Select only change logs with the specified object type.", - "enum": [ - "OBJECT_ACCOUNT", - "OBJECT_ACCOUNT_BILLING_FEATURE", - "OBJECT_AD", - "OBJECT_ADVERTISER", - "OBJECT_ADVERTISER_GROUP", - "OBJECT_BILLING_ACCOUNT_GROUP", - "OBJECT_BILLING_FEATURE", - "OBJECT_BILLING_MINIMUM_FEE", - "OBJECT_BILLING_PROFILE", - "OBJECT_CAMPAIGN", - "OBJECT_CONTENT_CATEGORY", - "OBJECT_CREATIVE", - "OBJECT_CREATIVE_ASSET", - "OBJECT_CREATIVE_BUNDLE", - "OBJECT_CREATIVE_FIELD", - "OBJECT_CREATIVE_GROUP", - "OBJECT_DFA_SITE", - "OBJECT_EVENT_TAG", - "OBJECT_FLOODLIGHT_ACTIVITY_GROUP", - "OBJECT_FLOODLIGHT_ACTVITY", - "OBJECT_FLOODLIGHT_CONFIGURATION", - "OBJECT_INSTREAM_CREATIVE", - "OBJECT_LANDING_PAGE", - "OBJECT_MEDIA_ORDER", - "OBJECT_PLACEMENT", - "OBJECT_PLACEMENT_STRATEGY", - "OBJECT_PLAYSTORE_LINK", - "OBJECT_PROVIDED_LIST_CLIENT", - "OBJECT_RATE_CARD", - "OBJECT_REMARKETING_LIST", - "OBJECT_RICHMEDIA_CREATIVE", - "OBJECT_SD_SITE", - "OBJECT_SEARCH_LIFT_STUDY", - "OBJECT_SIZE", - "OBJECT_SUBACCOUNT", - "OBJECT_TARGETING_TEMPLATE", - "OBJECT_USER_PROFILE", - "OBJECT_USER_PROFILE_FILTER", - "OBJECT_USER_ROLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ], - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Value of the nextPageToken from the previous result page.", - "location": "query" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - }, - "searchString": { - "type": "string", - "description": "Select only change logs whose object ID, user name, old or new values match the search string.", - "location": "query" - }, - "userProfileIds": { - "type": "string", - "description": "Select only change logs with these user profile IDs.", - "format": "int64", - "repeated": true, - "location": "query" - } - }, - "parameterOrder": [ - "profileId" - ], - "response": { - "$ref": "ChangeLogsListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - } - } - }, - "cities": { - "methods": { - "list": { - "id": "dfareporting.cities.list", - "path": "userprofiles/{profileId}/cities", - "httpMethod": "GET", - "description": "Retrieves a list of cities, possibly filtered.", - "parameters": { - "countryDartIds": { - "type": "string", - "description": "Select only cities from these countries.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "dartIds": { - "type": "string", - "description": "Select only cities with these DART IDs.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "namePrefix": { - "type": "string", - "description": "Select only cities with names starting with this prefix.", - "location": "query" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - }, - "regionDartIds": { - "type": "string", - "description": "Select only cities from these regions.", - "format": "int64", - "repeated": true, - "location": "query" - } - }, - "parameterOrder": [ - "profileId" - ], - "response": { - "$ref": "CitiesListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - } - } - }, - "connectionTypes": { - "methods": { - "get": { - "id": "dfareporting.connectionTypes.get", - "path": "userprofiles/{profileId}/connectionTypes/{id}", - "httpMethod": "GET", - "description": "Gets one connection type by ID.", - "parameters": { - "id": { - "type": "string", - "description": "Connection type ID.", - "required": true, - "format": "int64", - "location": "path" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "id" - ], - "response": { - "$ref": "ConnectionType" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "list": { - "id": "dfareporting.connectionTypes.list", - "path": "userprofiles/{profileId}/connectionTypes", - "httpMethod": "GET", - "description": "Retrieves a list of connection types.", - "parameters": { - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId" - ], - "response": { - "$ref": "ConnectionTypesListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - } - } - }, - "contentCategories": { - "methods": { - "delete": { - "id": "dfareporting.contentCategories.delete", - "path": "userprofiles/{profileId}/contentCategories/{id}", - "httpMethod": "DELETE", - "description": "Deletes an existing content category.", - "parameters": { - "id": { - "type": "string", - "description": "Content category ID.", - "required": true, - "format": "int64", - "location": "path" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "id" - ], - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "get": { - "id": "dfareporting.contentCategories.get", - "path": "userprofiles/{profileId}/contentCategories/{id}", - "httpMethod": "GET", - "description": "Gets one content category by ID.", - "parameters": { - "id": { - "type": "string", - "description": "Content category ID.", - "required": true, - "format": "int64", - "location": "path" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "id" - ], - "response": { - "$ref": "ContentCategory" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "insert": { - "id": "dfareporting.contentCategories.insert", - "path": "userprofiles/{profileId}/contentCategories", - "httpMethod": "POST", - "description": "Inserts a new content category.", - "parameters": { - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId" - ], - "request": { - "$ref": "ContentCategory" - }, - "response": { - "$ref": "ContentCategory" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "list": { - "id": "dfareporting.contentCategories.list", - "path": "userprofiles/{profileId}/contentCategories", - "httpMethod": "GET", - "description": "Retrieves a list of content categories, possibly filtered. This method supports paging.", - "parameters": { - "ids": { - "type": "string", - "description": "Select only content categories with these IDs.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "Maximum number of results to return.", - "default": "1000", - "format": "int32", - "minimum": "0", - "maximum": "1000", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Value of the nextPageToken from the previous result page.", - "location": "query" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - }, - "searchString": { - "type": "string", - "description": "Allows searching for objects by name or ID. Wildcards (*) are allowed. For example, \"contentcategory*2015\" will return objects with names like \"contentcategory June 2015\", \"contentcategory April 2015\", or simply \"contentcategory 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"contentcategory\" will match objects with name \"my contentcategory\", \"contentcategory 2015\", or simply \"contentcategory\".", - "location": "query" - }, - "sortField": { - "type": "string", - "description": "Field by which to sort the list.", - "default": "ID", - "enum": [ - "ID", - "NAME" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - }, - "sortOrder": { - "type": "string", - "description": "Order of sorted results.", - "default": "ASCENDING", - "enum": [ - "ASCENDING", - "DESCENDING" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - } - }, - "parameterOrder": [ - "profileId" - ], - "response": { - "$ref": "ContentCategoriesListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "patch": { - "id": "dfareporting.contentCategories.patch", - "path": "userprofiles/{profileId}/contentCategories", - "httpMethod": "PATCH", - "description": "Updates an existing content category. This method supports patch semantics.", - "parameters": { - "id": { - "type": "string", - "description": "Content category ID.", - "required": true, - "format": "int64", - "location": "query" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "id" - ], - "request": { - "$ref": "ContentCategory" - }, - "response": { - "$ref": "ContentCategory" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "update": { - "id": "dfareporting.contentCategories.update", - "path": "userprofiles/{profileId}/contentCategories", - "httpMethod": "PUT", - "description": "Updates an existing content category.", - "parameters": { - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId" - ], - "request": { - "$ref": "ContentCategory" - }, - "response": { - "$ref": "ContentCategory" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - } - } - }, - "conversions": { - "methods": { - "batchinsert": { - "id": "dfareporting.conversions.batchinsert", - "path": "userprofiles/{profileId}/conversions/batchinsert", - "httpMethod": "POST", - "description": "Inserts conversions.", - "parameters": { - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId" - ], - "request": { - "$ref": "ConversionsBatchInsertRequest" - }, - "response": { - "$ref": "ConversionsBatchInsertResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/ddmconversions" - ] - }, - "batchupdate": { - "id": "dfareporting.conversions.batchupdate", - "path": "userprofiles/{profileId}/conversions/batchupdate", - "httpMethod": "POST", - "description": "Updates existing conversions.", - "parameters": { - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId" - ], - "request": { - "$ref": "ConversionsBatchUpdateRequest" - }, - "response": { - "$ref": "ConversionsBatchUpdateResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/ddmconversions" - ] - } - } - }, - "countries": { - "methods": { - "get": { - "id": "dfareporting.countries.get", - "path": "userprofiles/{profileId}/countries/{dartId}", - "httpMethod": "GET", - "description": "Gets one country by ID.", - "parameters": { - "dartId": { - "type": "string", - "description": "Country DART ID.", - "required": true, - "format": "int64", - "location": "path" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "dartId" - ], - "response": { - "$ref": "Country" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "list": { - "id": "dfareporting.countries.list", - "path": "userprofiles/{profileId}/countries", - "httpMethod": "GET", - "description": "Retrieves a list of countries.", - "parameters": { - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId" - ], - "response": { - "$ref": "CountriesListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - } - } - }, - "creativeAssets": { - "methods": { - "insert": { - "id": "dfareporting.creativeAssets.insert", - "path": "userprofiles/{profileId}/creativeAssets/{advertiserId}/creativeAssets", - "httpMethod": "POST", - "description": "Inserts a new creative asset.", - "parameters": { - "advertiserId": { - "type": "string", - "description": "Advertiser ID of this creative. This is a required field.", - "required": true, - "format": "int64", - "location": "path" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "advertiserId" - ], - "request": { - "$ref": "CreativeAssetMetadata" - }, - "response": { - "$ref": "CreativeAssetMetadata" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ], - "supportsMediaUpload": true, - "mediaUpload": { - "accept": [ - "*/*" - ], - "maxSize": "1024MB", - "protocols": { - "simple": { - "multipart": true, - "path": "/upload/dfareporting/v3.0/userprofiles/{profileId}/creativeAssets/{advertiserId}/creativeAssets" - }, - "resumable": { - "multipart": true, - "path": "/resumable/upload/dfareporting/v3.0/userprofiles/{profileId}/creativeAssets/{advertiserId}/creativeAssets" - } - } - } - } - } - }, - "creativeFieldValues": { - "methods": { - "delete": { - "id": "dfareporting.creativeFieldValues.delete", - "path": "userprofiles/{profileId}/creativeFields/{creativeFieldId}/creativeFieldValues/{id}", - "httpMethod": "DELETE", - "description": "Deletes an existing creative field value.", - "parameters": { - "creativeFieldId": { - "type": "string", - "description": "Creative field ID for this creative field value.", - "required": true, - "format": "int64", - "location": "path" - }, - "id": { - "type": "string", - "description": "Creative Field Value ID", - "required": true, - "format": "int64", - "location": "path" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "creativeFieldId", - "id" - ], - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "get": { - "id": "dfareporting.creativeFieldValues.get", - "path": "userprofiles/{profileId}/creativeFields/{creativeFieldId}/creativeFieldValues/{id}", - "httpMethod": "GET", - "description": "Gets one creative field value by ID.", - "parameters": { - "creativeFieldId": { - "type": "string", - "description": "Creative field ID for this creative field value.", - "required": true, - "format": "int64", - "location": "path" - }, - "id": { - "type": "string", - "description": "Creative Field Value ID", - "required": true, - "format": "int64", - "location": "path" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "creativeFieldId", - "id" - ], - "response": { - "$ref": "CreativeFieldValue" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "insert": { - "id": "dfareporting.creativeFieldValues.insert", - "path": "userprofiles/{profileId}/creativeFields/{creativeFieldId}/creativeFieldValues", - "httpMethod": "POST", - "description": "Inserts a new creative field value.", - "parameters": { - "creativeFieldId": { - "type": "string", - "description": "Creative field ID for this creative field value.", - "required": true, - "format": "int64", - "location": "path" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "creativeFieldId" - ], - "request": { - "$ref": "CreativeFieldValue" - }, - "response": { - "$ref": "CreativeFieldValue" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "list": { - "id": "dfareporting.creativeFieldValues.list", - "path": "userprofiles/{profileId}/creativeFields/{creativeFieldId}/creativeFieldValues", - "httpMethod": "GET", - "description": "Retrieves a list of creative field values, possibly filtered. This method supports paging.", - "parameters": { - "creativeFieldId": { - "type": "string", - "description": "Creative field ID for this creative field value.", - "required": true, - "format": "int64", - "location": "path" - }, - "ids": { - "type": "string", - "description": "Select only creative field values with these IDs.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "Maximum number of results to return.", - "default": "1000", - "format": "int32", - "minimum": "0", - "maximum": "1000", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Value of the nextPageToken from the previous result page.", - "location": "query" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - }, - "searchString": { - "type": "string", - "description": "Allows searching for creative field values by their values. Wildcards (e.g. *) are not allowed.", - "location": "query" - }, - "sortField": { - "type": "string", - "description": "Field by which to sort the list.", - "default": "ID", - "enum": [ - "ID", - "VALUE" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - }, - "sortOrder": { - "type": "string", - "description": "Order of sorted results.", - "default": "ASCENDING", - "enum": [ - "ASCENDING", - "DESCENDING" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - } - }, - "parameterOrder": [ - "profileId", - "creativeFieldId" - ], - "response": { - "$ref": "CreativeFieldValuesListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "patch": { - "id": "dfareporting.creativeFieldValues.patch", - "path": "userprofiles/{profileId}/creativeFields/{creativeFieldId}/creativeFieldValues", - "httpMethod": "PATCH", - "description": "Updates an existing creative field value. This method supports patch semantics.", - "parameters": { - "creativeFieldId": { - "type": "string", - "description": "Creative field ID for this creative field value.", - "required": true, - "format": "int64", - "location": "path" - }, - "id": { - "type": "string", - "description": "Creative Field Value ID", - "required": true, - "format": "int64", - "location": "query" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "creativeFieldId", - "id" - ], - "request": { - "$ref": "CreativeFieldValue" - }, - "response": { - "$ref": "CreativeFieldValue" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "update": { - "id": "dfareporting.creativeFieldValues.update", - "path": "userprofiles/{profileId}/creativeFields/{creativeFieldId}/creativeFieldValues", - "httpMethod": "PUT", - "description": "Updates an existing creative field value.", - "parameters": { - "creativeFieldId": { - "type": "string", - "description": "Creative field ID for this creative field value.", - "required": true, - "format": "int64", - "location": "path" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "creativeFieldId" - ], - "request": { - "$ref": "CreativeFieldValue" - }, - "response": { - "$ref": "CreativeFieldValue" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - } - } - }, - "creativeFields": { - "methods": { - "delete": { - "id": "dfareporting.creativeFields.delete", - "path": "userprofiles/{profileId}/creativeFields/{id}", - "httpMethod": "DELETE", - "description": "Deletes an existing creative field.", - "parameters": { - "id": { - "type": "string", - "description": "Creative Field ID", - "required": true, - "format": "int64", - "location": "path" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "id" - ], - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "get": { - "id": "dfareporting.creativeFields.get", - "path": "userprofiles/{profileId}/creativeFields/{id}", - "httpMethod": "GET", - "description": "Gets one creative field by ID.", - "parameters": { - "id": { - "type": "string", - "description": "Creative Field ID", - "required": true, - "format": "int64", - "location": "path" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "id" - ], - "response": { - "$ref": "CreativeField" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "insert": { - "id": "dfareporting.creativeFields.insert", - "path": "userprofiles/{profileId}/creativeFields", - "httpMethod": "POST", - "description": "Inserts a new creative field.", - "parameters": { - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId" - ], - "request": { - "$ref": "CreativeField" - }, - "response": { - "$ref": "CreativeField" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "list": { - "id": "dfareporting.creativeFields.list", - "path": "userprofiles/{profileId}/creativeFields", - "httpMethod": "GET", - "description": "Retrieves a list of creative fields, possibly filtered. This method supports paging.", - "parameters": { - "advertiserIds": { - "type": "string", - "description": "Select only creative fields that belong to these advertisers.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "ids": { - "type": "string", - "description": "Select only creative fields with these IDs.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "Maximum number of results to return.", - "default": "1000", - "format": "int32", - "minimum": "0", - "maximum": "1000", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Value of the nextPageToken from the previous result page.", - "location": "query" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - }, - "searchString": { - "type": "string", - "description": "Allows searching for creative fields by name or ID. Wildcards (*) are allowed. For example, \"creativefield*2015\" will return creative fields with names like \"creativefield June 2015\", \"creativefield April 2015\", or simply \"creativefield 2015\". Most of the searches also add wild-cards implicitly at the start and the end of the search string. For example, a search string of \"creativefield\" will match creative fields with the name \"my creativefield\", \"creativefield 2015\", or simply \"creativefield\".", - "location": "query" - }, - "sortField": { - "type": "string", - "description": "Field by which to sort the list.", - "default": "ID", - "enum": [ - "ID", - "NAME" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - }, - "sortOrder": { - "type": "string", - "description": "Order of sorted results.", - "default": "ASCENDING", - "enum": [ - "ASCENDING", - "DESCENDING" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - } - }, - "parameterOrder": [ - "profileId" - ], - "response": { - "$ref": "CreativeFieldsListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "patch": { - "id": "dfareporting.creativeFields.patch", - "path": "userprofiles/{profileId}/creativeFields", - "httpMethod": "PATCH", - "description": "Updates an existing creative field. This method supports patch semantics.", - "parameters": { - "id": { - "type": "string", - "description": "Creative Field ID", - "required": true, - "format": "int64", - "location": "query" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "id" - ], - "request": { - "$ref": "CreativeField" - }, - "response": { - "$ref": "CreativeField" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "update": { - "id": "dfareporting.creativeFields.update", - "path": "userprofiles/{profileId}/creativeFields", - "httpMethod": "PUT", - "description": "Updates an existing creative field.", - "parameters": { - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId" - ], - "request": { - "$ref": "CreativeField" - }, - "response": { - "$ref": "CreativeField" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - } - } - }, - "creativeGroups": { - "methods": { - "get": { - "id": "dfareporting.creativeGroups.get", - "path": "userprofiles/{profileId}/creativeGroups/{id}", - "httpMethod": "GET", - "description": "Gets one creative group by ID.", - "parameters": { - "id": { - "type": "string", - "description": "Creative group ID.", - "required": true, - "format": "int64", - "location": "path" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "id" - ], - "response": { - "$ref": "CreativeGroup" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "insert": { - "id": "dfareporting.creativeGroups.insert", - "path": "userprofiles/{profileId}/creativeGroups", - "httpMethod": "POST", - "description": "Inserts a new creative group.", - "parameters": { - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId" - ], - "request": { - "$ref": "CreativeGroup" - }, - "response": { - "$ref": "CreativeGroup" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "list": { - "id": "dfareporting.creativeGroups.list", - "path": "userprofiles/{profileId}/creativeGroups", - "httpMethod": "GET", - "description": "Retrieves a list of creative groups, possibly filtered. This method supports paging.", - "parameters": { - "advertiserIds": { - "type": "string", - "description": "Select only creative groups that belong to these advertisers.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "groupNumber": { - "type": "integer", - "description": "Select only creative groups that belong to this subgroup.", - "format": "int32", - "minimum": "1", - "maximum": "2", - "location": "query" - }, - "ids": { - "type": "string", - "description": "Select only creative groups with these IDs.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "Maximum number of results to return.", - "default": "1000", - "format": "int32", - "minimum": "0", - "maximum": "1000", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Value of the nextPageToken from the previous result page.", - "location": "query" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - }, - "searchString": { - "type": "string", - "description": "Allows searching for creative groups by name or ID. Wildcards (*) are allowed. For example, \"creativegroup*2015\" will return creative groups with names like \"creativegroup June 2015\", \"creativegroup April 2015\", or simply \"creativegroup 2015\". Most of the searches also add wild-cards implicitly at the start and the end of the search string. For example, a search string of \"creativegroup\" will match creative groups with the name \"my creativegroup\", \"creativegroup 2015\", or simply \"creativegroup\".", - "location": "query" - }, - "sortField": { - "type": "string", - "description": "Field by which to sort the list.", - "default": "ID", - "enum": [ - "ID", - "NAME" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - }, - "sortOrder": { - "type": "string", - "description": "Order of sorted results.", - "default": "ASCENDING", - "enum": [ - "ASCENDING", - "DESCENDING" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - } - }, - "parameterOrder": [ - "profileId" - ], - "response": { - "$ref": "CreativeGroupsListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "patch": { - "id": "dfareporting.creativeGroups.patch", - "path": "userprofiles/{profileId}/creativeGroups", - "httpMethod": "PATCH", - "description": "Updates an existing creative group. This method supports patch semantics.", - "parameters": { - "id": { - "type": "string", - "description": "Creative group ID.", - "required": true, - "format": "int64", - "location": "query" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "id" - ], - "request": { - "$ref": "CreativeGroup" - }, - "response": { - "$ref": "CreativeGroup" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "update": { - "id": "dfareporting.creativeGroups.update", - "path": "userprofiles/{profileId}/creativeGroups", - "httpMethod": "PUT", - "description": "Updates an existing creative group.", - "parameters": { - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId" - ], - "request": { - "$ref": "CreativeGroup" - }, - "response": { - "$ref": "CreativeGroup" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - } - } - }, - "creatives": { - "methods": { - "get": { - "id": "dfareporting.creatives.get", - "path": "userprofiles/{profileId}/creatives/{id}", - "httpMethod": "GET", - "description": "Gets one creative by ID.", - "parameters": { - "id": { - "type": "string", - "description": "Creative ID.", - "required": true, - "format": "int64", - "location": "path" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "id" - ], - "response": { - "$ref": "Creative" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "insert": { - "id": "dfareporting.creatives.insert", - "path": "userprofiles/{profileId}/creatives", - "httpMethod": "POST", - "description": "Inserts a new creative.", - "parameters": { - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId" - ], - "request": { - "$ref": "Creative" - }, - "response": { - "$ref": "Creative" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "list": { - "id": "dfareporting.creatives.list", - "path": "userprofiles/{profileId}/creatives", - "httpMethod": "GET", - "description": "Retrieves a list of creatives, possibly filtered. This method supports paging.", - "parameters": { - "active": { - "type": "boolean", - "description": "Select only active creatives. Leave blank to select active and inactive creatives.", - "location": "query" - }, - "advertiserId": { - "type": "string", - "description": "Select only creatives with this advertiser ID.", - "format": "int64", - "location": "query" - }, - "archived": { - "type": "boolean", - "description": "Select only archived creatives. Leave blank to select archived and unarchived creatives.", - "location": "query" - }, - "campaignId": { - "type": "string", - "description": "Select only creatives with this campaign ID.", - "format": "int64", - "location": "query" - }, - "companionCreativeIds": { - "type": "string", - "description": "Select only in-stream video creatives with these companion IDs.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "creativeFieldIds": { - "type": "string", - "description": "Select only creatives with these creative field IDs.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "ids": { - "type": "string", - "description": "Select only creatives with these IDs.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "Maximum number of results to return.", - "default": "1000", - "format": "int32", - "minimum": "0", - "maximum": "1000", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Value of the nextPageToken from the previous result page.", - "location": "query" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - }, - "renderingIds": { - "type": "string", - "description": "Select only creatives with these rendering IDs.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "searchString": { - "type": "string", - "description": "Allows searching for objects by name or ID. Wildcards (*) are allowed. For example, \"creative*2015\" will return objects with names like \"creative June 2015\", \"creative April 2015\", or simply \"creative 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"creative\" will match objects with name \"my creative\", \"creative 2015\", or simply \"creative\".", - "location": "query" - }, - "sizeIds": { - "type": "string", - "description": "Select only creatives with these size IDs.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "sortField": { - "type": "string", - "description": "Field by which to sort the list.", - "default": "ID", - "enum": [ - "ID", - "NAME" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - }, - "sortOrder": { - "type": "string", - "description": "Order of sorted results.", - "default": "ASCENDING", - "enum": [ - "ASCENDING", - "DESCENDING" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - }, - "studioCreativeId": { - "type": "string", - "description": "Select only creatives corresponding to this Studio creative ID.", - "format": "int64", - "location": "query" - }, - "types": { - "type": "string", - "description": "Select only creatives with these creative types.", - "enum": [ - "BRAND_SAFE_DEFAULT_INSTREAM_VIDEO", - "CUSTOM_DISPLAY", - "CUSTOM_DISPLAY_INTERSTITIAL", - "DISPLAY", - "DISPLAY_IMAGE_GALLERY", - "DISPLAY_REDIRECT", - "FLASH_INPAGE", - "HTML5_BANNER", - "IMAGE", - "INSTREAM_VIDEO", - "INSTREAM_VIDEO_REDIRECT", - "INTERNAL_REDIRECT", - "INTERSTITIAL_INTERNAL_REDIRECT", - "RICH_MEDIA_DISPLAY_BANNER", - "RICH_MEDIA_DISPLAY_EXPANDING", - "RICH_MEDIA_DISPLAY_INTERSTITIAL", - "RICH_MEDIA_DISPLAY_MULTI_FLOATING_INTERSTITIAL", - "RICH_MEDIA_IM_EXPAND", - "RICH_MEDIA_INPAGE_FLOATING", - "RICH_MEDIA_MOBILE_IN_APP", - "RICH_MEDIA_PEEL_DOWN", - "TRACKING_TEXT", - "VPAID_LINEAR_VIDEO", - "VPAID_NON_LINEAR_VIDEO" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ], - "repeated": true, - "location": "query" - } - }, - "parameterOrder": [ - "profileId" - ], - "response": { - "$ref": "CreativesListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "patch": { - "id": "dfareporting.creatives.patch", - "path": "userprofiles/{profileId}/creatives", - "httpMethod": "PATCH", - "description": "Updates an existing creative. This method supports patch semantics.", - "parameters": { - "id": { - "type": "string", - "description": "Creative ID.", - "required": true, - "format": "int64", - "location": "query" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "id" - ], - "request": { - "$ref": "Creative" - }, - "response": { - "$ref": "Creative" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "update": { - "id": "dfareporting.creatives.update", - "path": "userprofiles/{profileId}/creatives", - "httpMethod": "PUT", - "description": "Updates an existing creative.", - "parameters": { - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId" - ], - "request": { - "$ref": "Creative" - }, - "response": { - "$ref": "Creative" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - } - } - }, - "dimensionValues": { - "methods": { - "query": { - "id": "dfareporting.dimensionValues.query", - "path": "userprofiles/{profileId}/dimensionvalues/query", - "httpMethod": "POST", - "description": "Retrieves list of report dimension values for a list of filters.", - "parameters": { - "maxResults": { - "type": "integer", - "description": "Maximum number of results to return.", - "default": "100", - "format": "int32", - "minimum": "0", - "maximum": "100", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "The value of the nextToken from the previous result page.", - "location": "query" - }, - "profileId": { - "type": "string", - "description": "The DFA user profile ID.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId" - ], - "request": { - "$ref": "DimensionValueRequest" - }, - "response": { - "$ref": "DimensionValueList" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfareporting" - ] - } - } - }, - "directorySiteContacts": { - "methods": { - "get": { - "id": "dfareporting.directorySiteContacts.get", - "path": "userprofiles/{profileId}/directorySiteContacts/{id}", - "httpMethod": "GET", - "description": "Gets one directory site contact by ID.", - "parameters": { - "id": { - "type": "string", - "description": "Directory site contact ID.", - "required": true, - "format": "int64", - "location": "path" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "id" - ], - "response": { - "$ref": "DirectorySiteContact" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "list": { - "id": "dfareporting.directorySiteContacts.list", - "path": "userprofiles/{profileId}/directorySiteContacts", - "httpMethod": "GET", - "description": "Retrieves a list of directory site contacts, possibly filtered. This method supports paging.", - "parameters": { - "directorySiteIds": { - "type": "string", - "description": "Select only directory site contacts with these directory site IDs. This is a required field.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "ids": { - "type": "string", - "description": "Select only directory site contacts with these IDs.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "Maximum number of results to return.", - "default": "1000", - "format": "int32", - "minimum": "0", - "maximum": "1000", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Value of the nextPageToken from the previous result page.", - "location": "query" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - }, - "searchString": { - "type": "string", - "description": "Allows searching for objects by name, ID or email. Wildcards (*) are allowed. For example, \"directory site contact*2015\" will return objects with names like \"directory site contact June 2015\", \"directory site contact April 2015\", or simply \"directory site contact 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"directory site contact\" will match objects with name \"my directory site contact\", \"directory site contact 2015\", or simply \"directory site contact\".", - "location": "query" - }, - "sortField": { - "type": "string", - "description": "Field by which to sort the list.", - "default": "ID", - "enum": [ - "ID", - "NAME" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - }, - "sortOrder": { - "type": "string", - "description": "Order of sorted results.", - "default": "ASCENDING", - "enum": [ - "ASCENDING", - "DESCENDING" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - } - }, - "parameterOrder": [ - "profileId" - ], - "response": { - "$ref": "DirectorySiteContactsListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - } - } - }, - "directorySites": { - "methods": { - "get": { - "id": "dfareporting.directorySites.get", - "path": "userprofiles/{profileId}/directorySites/{id}", - "httpMethod": "GET", - "description": "Gets one directory site by ID.", - "parameters": { - "id": { - "type": "string", - "description": "Directory site ID.", - "required": true, - "format": "int64", - "location": "path" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "id" - ], - "response": { - "$ref": "DirectorySite" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "insert": { - "id": "dfareporting.directorySites.insert", - "path": "userprofiles/{profileId}/directorySites", - "httpMethod": "POST", - "description": "Inserts a new directory site.", - "parameters": { - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId" - ], - "request": { - "$ref": "DirectorySite" - }, - "response": { - "$ref": "DirectorySite" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "list": { - "id": "dfareporting.directorySites.list", - "path": "userprofiles/{profileId}/directorySites", - "httpMethod": "GET", - "description": "Retrieves a list of directory sites, possibly filtered. This method supports paging.", - "parameters": { - "acceptsInStreamVideoPlacements": { - "type": "boolean", - "description": "This search filter is no longer supported and will have no effect on the results returned.", - "location": "query" - }, - "acceptsInterstitialPlacements": { - "type": "boolean", - "description": "This search filter is no longer supported and will have no effect on the results returned.", - "location": "query" - }, - "acceptsPublisherPaidPlacements": { - "type": "boolean", - "description": "Select only directory sites that accept publisher paid placements. This field can be left blank.", - "location": "query" - }, - "active": { - "type": "boolean", - "description": "Select only active directory sites. Leave blank to retrieve both active and inactive directory sites.", - "location": "query" - }, - "countryId": { - "type": "string", - "description": "Select only directory sites with this country ID.", - "format": "int64", - "location": "query" - }, - "dfpNetworkCode": { - "type": "string", - "description": "Select only directory sites with this DFP network code.", - "location": "query" - }, - "ids": { - "type": "string", - "description": "Select only directory sites with these IDs.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "Maximum number of results to return.", - "default": "1000", - "format": "int32", - "minimum": "0", - "maximum": "1000", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Value of the nextPageToken from the previous result page.", - "location": "query" - }, - "parentId": { - "type": "string", - "description": "Select only directory sites with this parent ID.", - "format": "int64", - "location": "query" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - }, - "searchString": { - "type": "string", - "description": "Allows searching for objects by name, ID or URL. Wildcards (*) are allowed. For example, \"directory site*2015\" will return objects with names like \"directory site June 2015\", \"directory site April 2015\", or simply \"directory site 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"directory site\" will match objects with name \"my directory site\", \"directory site 2015\" or simply, \"directory site\".", - "location": "query" - }, - "sortField": { - "type": "string", - "description": "Field by which to sort the list.", - "default": "ID", - "enum": [ - "ID", - "NAME" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - }, - "sortOrder": { - "type": "string", - "description": "Order of sorted results.", - "default": "ASCENDING", - "enum": [ - "ASCENDING", - "DESCENDING" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - } - }, - "parameterOrder": [ - "profileId" - ], - "response": { - "$ref": "DirectorySitesListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - } - } - }, - "dynamicTargetingKeys": { - "methods": { - "delete": { - "id": "dfareporting.dynamicTargetingKeys.delete", - "path": "userprofiles/{profileId}/dynamicTargetingKeys/{objectId}", - "httpMethod": "DELETE", - "description": "Deletes an existing dynamic targeting key.", - "parameters": { - "name": { - "type": "string", - "description": "Name of this dynamic targeting key. This is a required field. Must be less than 256 characters long and cannot contain commas. All characters are converted to lowercase.", - "required": true, - "location": "query" - }, - "objectId": { - "type": "string", - "description": "ID of the object of this dynamic targeting key. This is a required field.", - "required": true, - "format": "int64", - "location": "path" - }, - "objectType": { - "type": "string", - "description": "Type of the object of this dynamic targeting key. This is a required field.", - "required": true, - "enum": [ - "OBJECT_AD", - "OBJECT_ADVERTISER", - "OBJECT_CREATIVE", - "OBJECT_PLACEMENT" - ], - "enumDescriptions": [ - "", - "", - "", - "" - ], - "location": "query" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "objectId", - "name", - "objectType" - ], - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "insert": { - "id": "dfareporting.dynamicTargetingKeys.insert", - "path": "userprofiles/{profileId}/dynamicTargetingKeys", - "httpMethod": "POST", - "description": "Inserts a new dynamic targeting key. Keys must be created at the advertiser level before being assigned to the advertiser's ads, creatives, or placements. There is a maximum of 1000 keys per advertiser, out of which a maximum of 20 keys can be assigned per ad, creative, or placement.", - "parameters": { - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId" - ], - "request": { - "$ref": "DynamicTargetingKey" - }, - "response": { - "$ref": "DynamicTargetingKey" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "list": { - "id": "dfareporting.dynamicTargetingKeys.list", - "path": "userprofiles/{profileId}/dynamicTargetingKeys", - "httpMethod": "GET", - "description": "Retrieves a list of dynamic targeting keys.", - "parameters": { - "advertiserId": { - "type": "string", - "description": "Select only dynamic targeting keys whose object has this advertiser ID.", - "format": "int64", - "location": "query" - }, - "names": { - "type": "string", - "description": "Select only dynamic targeting keys exactly matching these names.", - "repeated": true, - "location": "query" - }, - "objectId": { - "type": "string", - "description": "Select only dynamic targeting keys with this object ID.", - "format": "int64", - "location": "query" - }, - "objectType": { - "type": "string", - "description": "Select only dynamic targeting keys with this object type.", - "enum": [ - "OBJECT_AD", - "OBJECT_ADVERTISER", - "OBJECT_CREATIVE", - "OBJECT_PLACEMENT" - ], - "enumDescriptions": [ - "", - "", - "", - "" - ], - "location": "query" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId" - ], - "response": { - "$ref": "DynamicTargetingKeysListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - } - } - }, - "eventTags": { - "methods": { - "delete": { - "id": "dfareporting.eventTags.delete", - "path": "userprofiles/{profileId}/eventTags/{id}", - "httpMethod": "DELETE", - "description": "Deletes an existing event tag.", - "parameters": { - "id": { - "type": "string", - "description": "Event tag ID.", - "required": true, - "format": "int64", - "location": "path" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "id" - ], - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "get": { - "id": "dfareporting.eventTags.get", - "path": "userprofiles/{profileId}/eventTags/{id}", - "httpMethod": "GET", - "description": "Gets one event tag by ID.", - "parameters": { - "id": { - "type": "string", - "description": "Event tag ID.", - "required": true, - "format": "int64", - "location": "path" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "id" - ], - "response": { - "$ref": "EventTag" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "insert": { - "id": "dfareporting.eventTags.insert", - "path": "userprofiles/{profileId}/eventTags", - "httpMethod": "POST", - "description": "Inserts a new event tag.", - "parameters": { - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId" - ], - "request": { - "$ref": "EventTag" - }, - "response": { - "$ref": "EventTag" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "list": { - "id": "dfareporting.eventTags.list", - "path": "userprofiles/{profileId}/eventTags", - "httpMethod": "GET", - "description": "Retrieves a list of event tags, possibly filtered.", - "parameters": { - "adId": { - "type": "string", - "description": "Select only event tags that belong to this ad.", - "format": "int64", - "location": "query" - }, - "advertiserId": { - "type": "string", - "description": "Select only event tags that belong to this advertiser.", - "format": "int64", - "location": "query" - }, - "campaignId": { - "type": "string", - "description": "Select only event tags that belong to this campaign.", - "format": "int64", - "location": "query" - }, - "definitionsOnly": { - "type": "boolean", - "description": "Examine only the specified campaign or advertiser's event tags for matching selector criteria. When set to false, the parent advertiser and parent campaign of the specified ad or campaign is examined as well. In addition, when set to false, the status field is examined as well, along with the enabledByDefault field. This parameter can not be set to true when adId is specified as ads do not define their own even tags.", - "location": "query" - }, - "enabled": { - "type": "boolean", - "description": "Select only enabled event tags. What is considered enabled or disabled depends on the definitionsOnly parameter. When definitionsOnly is set to true, only the specified advertiser or campaign's event tags' enabledByDefault field is examined. When definitionsOnly is set to false, the specified ad or specified campaign's parent advertiser's or parent campaign's event tags' enabledByDefault and status fields are examined as well.", - "location": "query" - }, - "eventTagTypes": { - "type": "string", - "description": "Select only event tags with the specified event tag types. Event tag types can be used to specify whether to use a third-party pixel, a third-party JavaScript URL, or a third-party click-through URL for either impression or click tracking.", - "enum": [ - "CLICK_THROUGH_EVENT_TAG", - "IMPRESSION_IMAGE_EVENT_TAG", - "IMPRESSION_JAVASCRIPT_EVENT_TAG" - ], - "enumDescriptions": [ - "", - "", - "" - ], - "repeated": true, - "location": "query" - }, - "ids": { - "type": "string", - "description": "Select only event tags with these IDs.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - }, - "searchString": { - "type": "string", - "description": "Allows searching for objects by name or ID. Wildcards (*) are allowed. For example, \"eventtag*2015\" will return objects with names like \"eventtag June 2015\", \"eventtag April 2015\", or simply \"eventtag 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"eventtag\" will match objects with name \"my eventtag\", \"eventtag 2015\", or simply \"eventtag\".", - "location": "query" - }, - "sortField": { - "type": "string", - "description": "Field by which to sort the list.", - "default": "ID", - "enum": [ - "ID", - "NAME" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - }, - "sortOrder": { - "type": "string", - "description": "Order of sorted results.", - "default": "ASCENDING", - "enum": [ - "ASCENDING", - "DESCENDING" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - } - }, - "parameterOrder": [ - "profileId" - ], - "response": { - "$ref": "EventTagsListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "patch": { - "id": "dfareporting.eventTags.patch", - "path": "userprofiles/{profileId}/eventTags", - "httpMethod": "PATCH", - "description": "Updates an existing event tag. This method supports patch semantics.", - "parameters": { - "id": { - "type": "string", - "description": "Event tag ID.", - "required": true, - "format": "int64", - "location": "query" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "id" - ], - "request": { - "$ref": "EventTag" - }, - "response": { - "$ref": "EventTag" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "update": { - "id": "dfareporting.eventTags.update", - "path": "userprofiles/{profileId}/eventTags", - "httpMethod": "PUT", - "description": "Updates an existing event tag.", - "parameters": { - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId" - ], - "request": { - "$ref": "EventTag" - }, - "response": { - "$ref": "EventTag" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - } - } - }, - "files": { - "methods": { - "get": { - "id": "dfareporting.files.get", - "path": "reports/{reportId}/files/{fileId}", - "httpMethod": "GET", - "description": "Retrieves a report file by its report ID and file ID. This method supports media download.", - "parameters": { - "fileId": { - "type": "string", - "description": "The ID of the report file.", - "required": true, - "format": "int64", - "location": "path" - }, - "reportId": { - "type": "string", - "description": "The ID of the report.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "reportId", - "fileId" - ], - "response": { - "$ref": "File" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfareporting" - ], - "supportsMediaDownload": true - }, - "list": { - "id": "dfareporting.files.list", - "path": "userprofiles/{profileId}/files", - "httpMethod": "GET", - "description": "Lists files for a user profile.", - "parameters": { - "maxResults": { - "type": "integer", - "description": "Maximum number of results to return.", - "default": "10", - "format": "int32", - "minimum": "0", - "maximum": "10", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "The value of the nextToken from the previous result page.", - "location": "query" - }, - "profileId": { - "type": "string", - "description": "The DFA profile ID.", - "required": true, - "format": "int64", - "location": "path" - }, - "scope": { - "type": "string", - "description": "The scope that defines which results are returned.", - "default": "MINE", - "enum": [ - "ALL", - "MINE", - "SHARED_WITH_ME" - ], - "enumDescriptions": [ - "All files in account.", - "My files.", - "Files shared with me." - ], - "location": "query" - }, - "sortField": { - "type": "string", - "description": "The field by which to sort the list.", - "default": "LAST_MODIFIED_TIME", - "enum": [ - "ID", - "LAST_MODIFIED_TIME" - ], - "enumDescriptions": [ - "Sort by file ID.", - "Sort by 'lastmodifiedAt' field." - ], - "location": "query" - }, - "sortOrder": { - "type": "string", - "description": "Order of sorted results.", - "default": "DESCENDING", - "enum": [ - "ASCENDING", - "DESCENDING" - ], - "enumDescriptions": [ - "Ascending order.", - "Descending order." - ], - "location": "query" - } - }, - "parameterOrder": [ - "profileId" - ], - "response": { - "$ref": "FileList" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfareporting" - ] - } - } - }, - "floodlightActivities": { - "methods": { - "delete": { - "id": "dfareporting.floodlightActivities.delete", - "path": "userprofiles/{profileId}/floodlightActivities/{id}", - "httpMethod": "DELETE", - "description": "Deletes an existing floodlight activity.", - "parameters": { - "id": { - "type": "string", - "description": "Floodlight activity ID.", - "required": true, - "format": "int64", - "location": "path" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "id" - ], - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "generatetag": { - "id": "dfareporting.floodlightActivities.generatetag", - "path": "userprofiles/{profileId}/floodlightActivities/generatetag", - "httpMethod": "POST", - "description": "Generates a tag for a floodlight activity.", - "parameters": { - "floodlightActivityId": { - "type": "string", - "description": "Floodlight activity ID for which we want to generate a tag.", - "format": "int64", - "location": "query" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId" - ], - "response": { - "$ref": "FloodlightActivitiesGenerateTagResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "get": { - "id": "dfareporting.floodlightActivities.get", - "path": "userprofiles/{profileId}/floodlightActivities/{id}", - "httpMethod": "GET", - "description": "Gets one floodlight activity by ID.", - "parameters": { - "id": { - "type": "string", - "description": "Floodlight activity ID.", - "required": true, - "format": "int64", - "location": "path" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "id" - ], - "response": { - "$ref": "FloodlightActivity" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "insert": { - "id": "dfareporting.floodlightActivities.insert", - "path": "userprofiles/{profileId}/floodlightActivities", - "httpMethod": "POST", - "description": "Inserts a new floodlight activity.", - "parameters": { - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId" - ], - "request": { - "$ref": "FloodlightActivity" - }, - "response": { - "$ref": "FloodlightActivity" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "list": { - "id": "dfareporting.floodlightActivities.list", - "path": "userprofiles/{profileId}/floodlightActivities", - "httpMethod": "GET", - "description": "Retrieves a list of floodlight activities, possibly filtered. This method supports paging.", - "parameters": { - "advertiserId": { - "type": "string", - "description": "Select only floodlight activities for the specified advertiser ID. Must specify either ids, advertiserId, or floodlightConfigurationId for a non-empty result.", - "format": "int64", - "location": "query" - }, - "floodlightActivityGroupIds": { - "type": "string", - "description": "Select only floodlight activities with the specified floodlight activity group IDs.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "floodlightActivityGroupName": { - "type": "string", - "description": "Select only floodlight activities with the specified floodlight activity group name.", - "location": "query" - }, - "floodlightActivityGroupTagString": { - "type": "string", - "description": "Select only floodlight activities with the specified floodlight activity group tag string.", - "location": "query" - }, - "floodlightActivityGroupType": { - "type": "string", - "description": "Select only floodlight activities with the specified floodlight activity group type.", - "enum": [ - "COUNTER", - "SALE" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - }, - "floodlightConfigurationId": { - "type": "string", - "description": "Select only floodlight activities for the specified floodlight configuration ID. Must specify either ids, advertiserId, or floodlightConfigurationId for a non-empty result.", - "format": "int64", - "location": "query" - }, - "ids": { - "type": "string", - "description": "Select only floodlight activities with the specified IDs. Must specify either ids, advertiserId, or floodlightConfigurationId for a non-empty result.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "Maximum number of results to return.", - "default": "1000", - "format": "int32", - "minimum": "0", - "maximum": "1000", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Value of the nextPageToken from the previous result page.", - "location": "query" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - }, - "searchString": { - "type": "string", - "description": "Allows searching for objects by name or ID. Wildcards (*) are allowed. For example, \"floodlightactivity*2015\" will return objects with names like \"floodlightactivity June 2015\", \"floodlightactivity April 2015\", or simply \"floodlightactivity 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"floodlightactivity\" will match objects with name \"my floodlightactivity activity\", \"floodlightactivity 2015\", or simply \"floodlightactivity\".", - "location": "query" - }, - "sortField": { - "type": "string", - "description": "Field by which to sort the list.", - "default": "ID", - "enum": [ - "ID", - "NAME" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - }, - "sortOrder": { - "type": "string", - "description": "Order of sorted results.", - "default": "ASCENDING", - "enum": [ - "ASCENDING", - "DESCENDING" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - }, - "tagString": { - "type": "string", - "description": "Select only floodlight activities with the specified tag string.", - "location": "query" - } - }, - "parameterOrder": [ - "profileId" - ], - "response": { - "$ref": "FloodlightActivitiesListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "patch": { - "id": "dfareporting.floodlightActivities.patch", - "path": "userprofiles/{profileId}/floodlightActivities", - "httpMethod": "PATCH", - "description": "Updates an existing floodlight activity. This method supports patch semantics.", - "parameters": { - "id": { - "type": "string", - "description": "Floodlight activity ID.", - "required": true, - "format": "int64", - "location": "query" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "id" - ], - "request": { - "$ref": "FloodlightActivity" - }, - "response": { - "$ref": "FloodlightActivity" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "update": { - "id": "dfareporting.floodlightActivities.update", - "path": "userprofiles/{profileId}/floodlightActivities", - "httpMethod": "PUT", - "description": "Updates an existing floodlight activity.", - "parameters": { - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId" - ], - "request": { - "$ref": "FloodlightActivity" - }, - "response": { - "$ref": "FloodlightActivity" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - } - } - }, - "floodlightActivityGroups": { - "methods": { - "get": { - "id": "dfareporting.floodlightActivityGroups.get", - "path": "userprofiles/{profileId}/floodlightActivityGroups/{id}", - "httpMethod": "GET", - "description": "Gets one floodlight activity group by ID.", - "parameters": { - "id": { - "type": "string", - "description": "Floodlight activity Group ID.", - "required": true, - "format": "int64", - "location": "path" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "id" - ], - "response": { - "$ref": "FloodlightActivityGroup" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "insert": { - "id": "dfareporting.floodlightActivityGroups.insert", - "path": "userprofiles/{profileId}/floodlightActivityGroups", - "httpMethod": "POST", - "description": "Inserts a new floodlight activity group.", - "parameters": { - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId" - ], - "request": { - "$ref": "FloodlightActivityGroup" - }, - "response": { - "$ref": "FloodlightActivityGroup" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "list": { - "id": "dfareporting.floodlightActivityGroups.list", - "path": "userprofiles/{profileId}/floodlightActivityGroups", - "httpMethod": "GET", - "description": "Retrieves a list of floodlight activity groups, possibly filtered. This method supports paging.", - "parameters": { - "advertiserId": { - "type": "string", - "description": "Select only floodlight activity groups with the specified advertiser ID. Must specify either advertiserId or floodlightConfigurationId for a non-empty result.", - "format": "int64", - "location": "query" - }, - "floodlightConfigurationId": { - "type": "string", - "description": "Select only floodlight activity groups with the specified floodlight configuration ID. Must specify either advertiserId, or floodlightConfigurationId for a non-empty result.", - "format": "int64", - "location": "query" - }, - "ids": { - "type": "string", - "description": "Select only floodlight activity groups with the specified IDs. Must specify either advertiserId or floodlightConfigurationId for a non-empty result.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "Maximum number of results to return.", - "default": "1000", - "format": "int32", - "minimum": "0", - "maximum": "1000", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Value of the nextPageToken from the previous result page.", - "location": "query" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - }, - "searchString": { - "type": "string", - "description": "Allows searching for objects by name or ID. Wildcards (*) are allowed. For example, \"floodlightactivitygroup*2015\" will return objects with names like \"floodlightactivitygroup June 2015\", \"floodlightactivitygroup April 2015\", or simply \"floodlightactivitygroup 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"floodlightactivitygroup\" will match objects with name \"my floodlightactivitygroup activity\", \"floodlightactivitygroup 2015\", or simply \"floodlightactivitygroup\".", - "location": "query" - }, - "sortField": { - "type": "string", - "description": "Field by which to sort the list.", - "default": "ID", - "enum": [ - "ID", - "NAME" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - }, - "sortOrder": { - "type": "string", - "description": "Order of sorted results.", - "default": "ASCENDING", - "enum": [ - "ASCENDING", - "DESCENDING" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - }, - "type": { - "type": "string", - "description": "Select only floodlight activity groups with the specified floodlight activity group type.", - "enum": [ - "COUNTER", - "SALE" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - } - }, - "parameterOrder": [ - "profileId" - ], - "response": { - "$ref": "FloodlightActivityGroupsListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "patch": { - "id": "dfareporting.floodlightActivityGroups.patch", - "path": "userprofiles/{profileId}/floodlightActivityGroups", - "httpMethod": "PATCH", - "description": "Updates an existing floodlight activity group. This method supports patch semantics.", - "parameters": { - "id": { - "type": "string", - "description": "Floodlight activity Group ID.", - "required": true, - "format": "int64", - "location": "query" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "id" - ], - "request": { - "$ref": "FloodlightActivityGroup" - }, - "response": { - "$ref": "FloodlightActivityGroup" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "update": { - "id": "dfareporting.floodlightActivityGroups.update", - "path": "userprofiles/{profileId}/floodlightActivityGroups", - "httpMethod": "PUT", - "description": "Updates an existing floodlight activity group.", - "parameters": { - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId" - ], - "request": { - "$ref": "FloodlightActivityGroup" - }, - "response": { - "$ref": "FloodlightActivityGroup" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - } - } - }, - "floodlightConfigurations": { - "methods": { - "get": { - "id": "dfareporting.floodlightConfigurations.get", - "path": "userprofiles/{profileId}/floodlightConfigurations/{id}", - "httpMethod": "GET", - "description": "Gets one floodlight configuration by ID.", - "parameters": { - "id": { - "type": "string", - "description": "Floodlight configuration ID.", - "required": true, - "format": "int64", - "location": "path" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "id" - ], - "response": { - "$ref": "FloodlightConfiguration" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "list": { - "id": "dfareporting.floodlightConfigurations.list", - "path": "userprofiles/{profileId}/floodlightConfigurations", - "httpMethod": "GET", - "description": "Retrieves a list of floodlight configurations, possibly filtered.", - "parameters": { - "ids": { - "type": "string", - "description": "Set of IDs of floodlight configurations to retrieve. Required field; otherwise an empty list will be returned.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId" - ], - "response": { - "$ref": "FloodlightConfigurationsListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "patch": { - "id": "dfareporting.floodlightConfigurations.patch", - "path": "userprofiles/{profileId}/floodlightConfigurations", - "httpMethod": "PATCH", - "description": "Updates an existing floodlight configuration. This method supports patch semantics.", - "parameters": { - "id": { - "type": "string", - "description": "Floodlight configuration ID.", - "required": true, - "format": "int64", - "location": "query" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "id" - ], - "request": { - "$ref": "FloodlightConfiguration" - }, - "response": { - "$ref": "FloodlightConfiguration" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "update": { - "id": "dfareporting.floodlightConfigurations.update", - "path": "userprofiles/{profileId}/floodlightConfigurations", - "httpMethod": "PUT", - "description": "Updates an existing floodlight configuration.", - "parameters": { - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId" - ], - "request": { - "$ref": "FloodlightConfiguration" - }, - "response": { - "$ref": "FloodlightConfiguration" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - } - } - }, - "inventoryItems": { - "methods": { - "get": { - "id": "dfareporting.inventoryItems.get", - "path": "userprofiles/{profileId}/projects/{projectId}/inventoryItems/{id}", - "httpMethod": "GET", - "description": "Gets one inventory item by ID.", - "parameters": { - "id": { - "type": "string", - "description": "Inventory item ID.", - "required": true, - "format": "int64", - "location": "path" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - }, - "projectId": { - "type": "string", - "description": "Project ID for order documents.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "projectId", - "id" - ], - "response": { - "$ref": "InventoryItem" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "list": { - "id": "dfareporting.inventoryItems.list", - "path": "userprofiles/{profileId}/projects/{projectId}/inventoryItems", - "httpMethod": "GET", - "description": "Retrieves a list of inventory items, possibly filtered. This method supports paging.", - "parameters": { - "ids": { - "type": "string", - "description": "Select only inventory items with these IDs.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "inPlan": { - "type": "boolean", - "description": "Select only inventory items that are in plan.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "Maximum number of results to return.", - "default": "1000", - "format": "int32", - "minimum": "0", - "maximum": "1000", - "location": "query" - }, - "orderId": { - "type": "string", - "description": "Select only inventory items that belong to specified orders.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Value of the nextPageToken from the previous result page.", - "location": "query" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - }, - "projectId": { - "type": "string", - "description": "Project ID for order documents.", - "required": true, - "format": "int64", - "location": "path" - }, - "siteId": { - "type": "string", - "description": "Select only inventory items that are associated with these sites.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "sortField": { - "type": "string", - "description": "Field by which to sort the list.", - "default": "ID", - "enum": [ - "ID", - "NAME" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - }, - "sortOrder": { - "type": "string", - "description": "Order of sorted results.", - "default": "ASCENDING", - "enum": [ - "ASCENDING", - "DESCENDING" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - }, - "type": { - "type": "string", - "description": "Select only inventory items with this type.", - "enum": [ - "PLANNING_PLACEMENT_TYPE_CREDIT", - "PLANNING_PLACEMENT_TYPE_REGULAR" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - } - }, - "parameterOrder": [ - "profileId", - "projectId" - ], - "response": { - "$ref": "InventoryItemsListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - } - } - }, - "languages": { - "methods": { - "list": { - "id": "dfareporting.languages.list", - "path": "userprofiles/{profileId}/languages", - "httpMethod": "GET", - "description": "Retrieves a list of languages.", - "parameters": { - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId" - ], - "response": { - "$ref": "LanguagesListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - } - } - }, - "metros": { - "methods": { - "list": { - "id": "dfareporting.metros.list", - "path": "userprofiles/{profileId}/metros", - "httpMethod": "GET", - "description": "Retrieves a list of metros.", - "parameters": { - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId" - ], - "response": { - "$ref": "MetrosListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - } - } - }, - "mobileCarriers": { - "methods": { - "get": { - "id": "dfareporting.mobileCarriers.get", - "path": "userprofiles/{profileId}/mobileCarriers/{id}", - "httpMethod": "GET", - "description": "Gets one mobile carrier by ID.", - "parameters": { - "id": { - "type": "string", - "description": "Mobile carrier ID.", - "required": true, - "format": "int64", - "location": "path" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "id" - ], - "response": { - "$ref": "MobileCarrier" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "list": { - "id": "dfareporting.mobileCarriers.list", - "path": "userprofiles/{profileId}/mobileCarriers", - "httpMethod": "GET", - "description": "Retrieves a list of mobile carriers.", - "parameters": { - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId" - ], - "response": { - "$ref": "MobileCarriersListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - } - } - }, - "operatingSystemVersions": { - "methods": { - "get": { - "id": "dfareporting.operatingSystemVersions.get", - "path": "userprofiles/{profileId}/operatingSystemVersions/{id}", - "httpMethod": "GET", - "description": "Gets one operating system version by ID.", - "parameters": { - "id": { - "type": "string", - "description": "Operating system version ID.", - "required": true, - "format": "int64", - "location": "path" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "id" - ], - "response": { - "$ref": "OperatingSystemVersion" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "list": { - "id": "dfareporting.operatingSystemVersions.list", - "path": "userprofiles/{profileId}/operatingSystemVersions", - "httpMethod": "GET", - "description": "Retrieves a list of operating system versions.", - "parameters": { - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId" - ], - "response": { - "$ref": "OperatingSystemVersionsListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - } - } - }, - "operatingSystems": { - "methods": { - "get": { - "id": "dfareporting.operatingSystems.get", - "path": "userprofiles/{profileId}/operatingSystems/{dartId}", - "httpMethod": "GET", - "description": "Gets one operating system by DART ID.", - "parameters": { - "dartId": { - "type": "string", - "description": "Operating system DART ID.", - "required": true, - "format": "int64", - "location": "path" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "dartId" - ], - "response": { - "$ref": "OperatingSystem" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "list": { - "id": "dfareporting.operatingSystems.list", - "path": "userprofiles/{profileId}/operatingSystems", - "httpMethod": "GET", - "description": "Retrieves a list of operating systems.", - "parameters": { - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId" - ], - "response": { - "$ref": "OperatingSystemsListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - } - } - }, - "orderDocuments": { - "methods": { - "get": { - "id": "dfareporting.orderDocuments.get", - "path": "userprofiles/{profileId}/projects/{projectId}/orderDocuments/{id}", - "httpMethod": "GET", - "description": "Gets one order document by ID.", - "parameters": { - "id": { - "type": "string", - "description": "Order document ID.", - "required": true, - "format": "int64", - "location": "path" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - }, - "projectId": { - "type": "string", - "description": "Project ID for order documents.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "projectId", - "id" - ], - "response": { - "$ref": "OrderDocument" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "list": { - "id": "dfareporting.orderDocuments.list", - "path": "userprofiles/{profileId}/projects/{projectId}/orderDocuments", - "httpMethod": "GET", - "description": "Retrieves a list of order documents, possibly filtered. This method supports paging.", - "parameters": { - "approved": { - "type": "boolean", - "description": "Select only order documents that have been approved by at least one user.", - "location": "query" - }, - "ids": { - "type": "string", - "description": "Select only order documents with these IDs.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "Maximum number of results to return.", - "default": "1000", - "format": "int32", - "minimum": "0", - "maximum": "1000", - "location": "query" - }, - "orderId": { - "type": "string", - "description": "Select only order documents for specified orders.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Value of the nextPageToken from the previous result page.", - "location": "query" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - }, - "projectId": { - "type": "string", - "description": "Project ID for order documents.", - "required": true, - "format": "int64", - "location": "path" - }, - "searchString": { - "type": "string", - "description": "Allows searching for order documents by name or ID. Wildcards (*) are allowed. For example, \"orderdocument*2015\" will return order documents with names like \"orderdocument June 2015\", \"orderdocument April 2015\", or simply \"orderdocument 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"orderdocument\" will match order documents with name \"my orderdocument\", \"orderdocument 2015\", or simply \"orderdocument\".", - "location": "query" - }, - "siteId": { - "type": "string", - "description": "Select only order documents that are associated with these sites.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "sortField": { - "type": "string", - "description": "Field by which to sort the list.", - "default": "ID", - "enum": [ - "ID", - "NAME" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - }, - "sortOrder": { - "type": "string", - "description": "Order of sorted results.", - "default": "ASCENDING", - "enum": [ - "ASCENDING", - "DESCENDING" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - } - }, - "parameterOrder": [ - "profileId", - "projectId" - ], - "response": { - "$ref": "OrderDocumentsListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - } - } - }, - "orders": { - "methods": { - "get": { - "id": "dfareporting.orders.get", - "path": "userprofiles/{profileId}/projects/{projectId}/orders/{id}", - "httpMethod": "GET", - "description": "Gets one order by ID.", - "parameters": { - "id": { - "type": "string", - "description": "Order ID.", - "required": true, - "format": "int64", - "location": "path" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - }, - "projectId": { - "type": "string", - "description": "Project ID for orders.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "projectId", - "id" - ], - "response": { - "$ref": "Order" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "list": { - "id": "dfareporting.orders.list", - "path": "userprofiles/{profileId}/projects/{projectId}/orders", - "httpMethod": "GET", - "description": "Retrieves a list of orders, possibly filtered. This method supports paging.", - "parameters": { - "ids": { - "type": "string", - "description": "Select only orders with these IDs.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "Maximum number of results to return.", - "default": "1000", - "format": "int32", - "minimum": "0", - "maximum": "1000", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Value of the nextPageToken from the previous result page.", - "location": "query" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - }, - "projectId": { - "type": "string", - "description": "Project ID for orders.", - "required": true, - "format": "int64", - "location": "path" - }, - "searchString": { - "type": "string", - "description": "Allows searching for orders by name or ID. Wildcards (*) are allowed. For example, \"order*2015\" will return orders with names like \"order June 2015\", \"order April 2015\", or simply \"order 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"order\" will match orders with name \"my order\", \"order 2015\", or simply \"order\".", - "location": "query" - }, - "siteId": { - "type": "string", - "description": "Select only orders that are associated with these site IDs.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "sortField": { - "type": "string", - "description": "Field by which to sort the list.", - "default": "ID", - "enum": [ - "ID", - "NAME" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - }, - "sortOrder": { - "type": "string", - "description": "Order of sorted results.", - "default": "ASCENDING", - "enum": [ - "ASCENDING", - "DESCENDING" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - } - }, - "parameterOrder": [ - "profileId", - "projectId" - ], - "response": { - "$ref": "OrdersListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - } - } - }, - "placementGroups": { - "methods": { - "get": { - "id": "dfareporting.placementGroups.get", - "path": "userprofiles/{profileId}/placementGroups/{id}", - "httpMethod": "GET", - "description": "Gets one placement group by ID.", - "parameters": { - "id": { - "type": "string", - "description": "Placement group ID.", - "required": true, - "format": "int64", - "location": "path" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "id" - ], - "response": { - "$ref": "PlacementGroup" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "insert": { - "id": "dfareporting.placementGroups.insert", - "path": "userprofiles/{profileId}/placementGroups", - "httpMethod": "POST", - "description": "Inserts a new placement group.", - "parameters": { - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId" - ], - "request": { - "$ref": "PlacementGroup" - }, - "response": { - "$ref": "PlacementGroup" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "list": { - "id": "dfareporting.placementGroups.list", - "path": "userprofiles/{profileId}/placementGroups", - "httpMethod": "GET", - "description": "Retrieves a list of placement groups, possibly filtered. This method supports paging.", - "parameters": { - "advertiserIds": { - "type": "string", - "description": "Select only placement groups that belong to these advertisers.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "archived": { - "type": "boolean", - "description": "Select only archived placements. Don't set this field to select both archived and non-archived placements.", - "location": "query" - }, - "campaignIds": { - "type": "string", - "description": "Select only placement groups that belong to these campaigns.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "contentCategoryIds": { - "type": "string", - "description": "Select only placement groups that are associated with these content categories.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "directorySiteIds": { - "type": "string", - "description": "Select only placement groups that are associated with these directory sites.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "ids": { - "type": "string", - "description": "Select only placement groups with these IDs.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "maxEndDate": { - "type": "string", - "description": "Select only placements or placement groups whose end date is on or before the specified maxEndDate. The date should be formatted as \"yyyy-MM-dd\".", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "Maximum number of results to return.", - "default": "800", - "format": "int32", - "minimum": "0", - "maximum": "800", - "location": "query" - }, - "maxStartDate": { - "type": "string", - "description": "Select only placements or placement groups whose start date is on or before the specified maxStartDate. The date should be formatted as \"yyyy-MM-dd\".", - "location": "query" - }, - "minEndDate": { - "type": "string", - "description": "Select only placements or placement groups whose end date is on or after the specified minEndDate. The date should be formatted as \"yyyy-MM-dd\".", - "location": "query" - }, - "minStartDate": { - "type": "string", - "description": "Select only placements or placement groups whose start date is on or after the specified minStartDate. The date should be formatted as \"yyyy-MM-dd\".", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Value of the nextPageToken from the previous result page.", - "location": "query" - }, - "placementGroupType": { - "type": "string", - "description": "Select only placement groups belonging with this group type. A package is a simple group of placements that acts as a single pricing point for a group of tags. A roadblock is a group of placements that not only acts as a single pricing point but also assumes that all the tags in it will be served at the same time. A roadblock requires one of its assigned placements to be marked as primary for reporting.", - "enum": [ - "PLACEMENT_PACKAGE", - "PLACEMENT_ROADBLOCK" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - }, - "placementStrategyIds": { - "type": "string", - "description": "Select only placement groups that are associated with these placement strategies.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "pricingTypes": { - "type": "string", - "description": "Select only placement groups with these pricing types.", - "enum": [ - "PRICING_TYPE_CPA", - "PRICING_TYPE_CPC", - "PRICING_TYPE_CPM", - "PRICING_TYPE_CPM_ACTIVEVIEW", - "PRICING_TYPE_FLAT_RATE_CLICKS", - "PRICING_TYPE_FLAT_RATE_IMPRESSIONS" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "" - ], - "repeated": true, - "location": "query" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - }, - "searchString": { - "type": "string", - "description": "Allows searching for placement groups by name or ID. Wildcards (*) are allowed. For example, \"placement*2015\" will return placement groups with names like \"placement group June 2015\", \"placement group May 2015\", or simply \"placements 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"placementgroup\" will match placement groups with name \"my placementgroup\", \"placementgroup 2015\", or simply \"placementgroup\".", - "location": "query" - }, - "siteIds": { - "type": "string", - "description": "Select only placement groups that are associated with these sites.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "sortField": { - "type": "string", - "description": "Field by which to sort the list.", - "default": "ID", - "enum": [ - "ID", - "NAME" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - }, - "sortOrder": { - "type": "string", - "description": "Order of sorted results.", - "default": "ASCENDING", - "enum": [ - "ASCENDING", - "DESCENDING" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - } - }, - "parameterOrder": [ - "profileId" - ], - "response": { - "$ref": "PlacementGroupsListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "patch": { - "id": "dfareporting.placementGroups.patch", - "path": "userprofiles/{profileId}/placementGroups", - "httpMethod": "PATCH", - "description": "Updates an existing placement group. This method supports patch semantics.", - "parameters": { - "id": { - "type": "string", - "description": "Placement group ID.", - "required": true, - "format": "int64", - "location": "query" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "id" - ], - "request": { - "$ref": "PlacementGroup" - }, - "response": { - "$ref": "PlacementGroup" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "update": { - "id": "dfareporting.placementGroups.update", - "path": "userprofiles/{profileId}/placementGroups", - "httpMethod": "PUT", - "description": "Updates an existing placement group.", - "parameters": { - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId" - ], - "request": { - "$ref": "PlacementGroup" - }, - "response": { - "$ref": "PlacementGroup" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - } - } - }, - "placementStrategies": { - "methods": { - "delete": { - "id": "dfareporting.placementStrategies.delete", - "path": "userprofiles/{profileId}/placementStrategies/{id}", - "httpMethod": "DELETE", - "description": "Deletes an existing placement strategy.", - "parameters": { - "id": { - "type": "string", - "description": "Placement strategy ID.", - "required": true, - "format": "int64", - "location": "path" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "id" - ], - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "get": { - "id": "dfareporting.placementStrategies.get", - "path": "userprofiles/{profileId}/placementStrategies/{id}", - "httpMethod": "GET", - "description": "Gets one placement strategy by ID.", - "parameters": { - "id": { - "type": "string", - "description": "Placement strategy ID.", - "required": true, - "format": "int64", - "location": "path" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "id" - ], - "response": { - "$ref": "PlacementStrategy" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "insert": { - "id": "dfareporting.placementStrategies.insert", - "path": "userprofiles/{profileId}/placementStrategies", - "httpMethod": "POST", - "description": "Inserts a new placement strategy.", - "parameters": { - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId" - ], - "request": { - "$ref": "PlacementStrategy" - }, - "response": { - "$ref": "PlacementStrategy" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "list": { - "id": "dfareporting.placementStrategies.list", - "path": "userprofiles/{profileId}/placementStrategies", - "httpMethod": "GET", - "description": "Retrieves a list of placement strategies, possibly filtered. This method supports paging.", - "parameters": { - "ids": { - "type": "string", - "description": "Select only placement strategies with these IDs.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "Maximum number of results to return.", - "default": "1000", - "format": "int32", - "minimum": "0", - "maximum": "1000", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Value of the nextPageToken from the previous result page.", - "location": "query" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - }, - "searchString": { - "type": "string", - "description": "Allows searching for objects by name or ID. Wildcards (*) are allowed. For example, \"placementstrategy*2015\" will return objects with names like \"placementstrategy June 2015\", \"placementstrategy April 2015\", or simply \"placementstrategy 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"placementstrategy\" will match objects with name \"my placementstrategy\", \"placementstrategy 2015\", or simply \"placementstrategy\".", - "location": "query" - }, - "sortField": { - "type": "string", - "description": "Field by which to sort the list.", - "default": "ID", - "enum": [ - "ID", - "NAME" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - }, - "sortOrder": { - "type": "string", - "description": "Order of sorted results.", - "default": "ASCENDING", - "enum": [ - "ASCENDING", - "DESCENDING" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - } - }, - "parameterOrder": [ - "profileId" - ], - "response": { - "$ref": "PlacementStrategiesListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "patch": { - "id": "dfareporting.placementStrategies.patch", - "path": "userprofiles/{profileId}/placementStrategies", - "httpMethod": "PATCH", - "description": "Updates an existing placement strategy. This method supports patch semantics.", - "parameters": { - "id": { - "type": "string", - "description": "Placement strategy ID.", - "required": true, - "format": "int64", - "location": "query" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "id" - ], - "request": { - "$ref": "PlacementStrategy" - }, - "response": { - "$ref": "PlacementStrategy" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "update": { - "id": "dfareporting.placementStrategies.update", - "path": "userprofiles/{profileId}/placementStrategies", - "httpMethod": "PUT", - "description": "Updates an existing placement strategy.", - "parameters": { - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId" - ], - "request": { - "$ref": "PlacementStrategy" - }, - "response": { - "$ref": "PlacementStrategy" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - } - } - }, - "placements": { - "methods": { - "generatetags": { - "id": "dfareporting.placements.generatetags", - "path": "userprofiles/{profileId}/placements/generatetags", - "httpMethod": "POST", - "description": "Generates tags for a placement.", - "parameters": { - "campaignId": { - "type": "string", - "description": "Generate placements belonging to this campaign. This is a required field.", - "format": "int64", - "location": "query" - }, - "placementIds": { - "type": "string", - "description": "Generate tags for these placements.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - }, - "tagFormats": { - "type": "string", - "description": "Tag formats to generate for these placements.\n\nNote: PLACEMENT_TAG_STANDARD can only be generated for 1x1 placements.", - "enum": [ - "PLACEMENT_TAG_CLICK_COMMANDS", - "PLACEMENT_TAG_IFRAME_ILAYER", - "PLACEMENT_TAG_IFRAME_JAVASCRIPT", - "PLACEMENT_TAG_IFRAME_JAVASCRIPT_LEGACY", - "PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH", - "PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH_VAST_3", - "PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH_VAST_4", - "PLACEMENT_TAG_INTERNAL_REDIRECT", - "PLACEMENT_TAG_INTERSTITIAL_IFRAME_JAVASCRIPT", - "PLACEMENT_TAG_INTERSTITIAL_IFRAME_JAVASCRIPT_LEGACY", - "PLACEMENT_TAG_INTERSTITIAL_INTERNAL_REDIRECT", - "PLACEMENT_TAG_INTERSTITIAL_JAVASCRIPT", - "PLACEMENT_TAG_INTERSTITIAL_JAVASCRIPT_LEGACY", - "PLACEMENT_TAG_JAVASCRIPT", - "PLACEMENT_TAG_JAVASCRIPT_LEGACY", - "PLACEMENT_TAG_STANDARD", - "PLACEMENT_TAG_TRACKING", - "PLACEMENT_TAG_TRACKING_IFRAME", - "PLACEMENT_TAG_TRACKING_JAVASCRIPT" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ], - "repeated": true, - "location": "query" - } - }, - "parameterOrder": [ - "profileId" - ], - "response": { - "$ref": "PlacementsGenerateTagsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "get": { - "id": "dfareporting.placements.get", - "path": "userprofiles/{profileId}/placements/{id}", - "httpMethod": "GET", - "description": "Gets one placement by ID.", - "parameters": { - "id": { - "type": "string", - "description": "Placement ID.", - "required": true, - "format": "int64", - "location": "path" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "id" - ], - "response": { - "$ref": "Placement" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "insert": { - "id": "dfareporting.placements.insert", - "path": "userprofiles/{profileId}/placements", - "httpMethod": "POST", - "description": "Inserts a new placement.", - "parameters": { - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId" - ], - "request": { - "$ref": "Placement" - }, - "response": { - "$ref": "Placement" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "list": { - "id": "dfareporting.placements.list", - "path": "userprofiles/{profileId}/placements", - "httpMethod": "GET", - "description": "Retrieves a list of placements, possibly filtered. This method supports paging.", - "parameters": { - "advertiserIds": { - "type": "string", - "description": "Select only placements that belong to these advertisers.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "archived": { - "type": "boolean", - "description": "Select only archived placements. Don't set this field to select both archived and non-archived placements.", - "location": "query" - }, - "campaignIds": { - "type": "string", - "description": "Select only placements that belong to these campaigns.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "compatibilities": { - "type": "string", - "description": "Select only placements that are associated with these compatibilities. DISPLAY and DISPLAY_INTERSTITIAL refer to rendering either on desktop or on mobile devices for regular or interstitial ads respectively. APP and APP_INTERSTITIAL are for rendering in mobile apps. IN_STREAM_VIDEO refers to rendering in in-stream video ads developed with the VAST standard.", - "enum": [ - "APP", - "APP_INTERSTITIAL", - "DISPLAY", - "DISPLAY_INTERSTITIAL", - "IN_STREAM_VIDEO" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "" - ], - "repeated": true, - "location": "query" - }, - "contentCategoryIds": { - "type": "string", - "description": "Select only placements that are associated with these content categories.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "directorySiteIds": { - "type": "string", - "description": "Select only placements that are associated with these directory sites.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "groupIds": { - "type": "string", - "description": "Select only placements that belong to these placement groups.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "ids": { - "type": "string", - "description": "Select only placements with these IDs.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "maxEndDate": { - "type": "string", - "description": "Select only placements or placement groups whose end date is on or before the specified maxEndDate. The date should be formatted as \"yyyy-MM-dd\".", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "Maximum number of results to return.", - "default": "1000", - "format": "int32", - "minimum": "0", - "maximum": "1000", - "location": "query" - }, - "maxStartDate": { - "type": "string", - "description": "Select only placements or placement groups whose start date is on or before the specified maxStartDate. The date should be formatted as \"yyyy-MM-dd\".", - "location": "query" - }, - "minEndDate": { - "type": "string", - "description": "Select only placements or placement groups whose end date is on or after the specified minEndDate. The date should be formatted as \"yyyy-MM-dd\".", - "location": "query" - }, - "minStartDate": { - "type": "string", - "description": "Select only placements or placement groups whose start date is on or after the specified minStartDate. The date should be formatted as \"yyyy-MM-dd\".", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Value of the nextPageToken from the previous result page.", - "location": "query" - }, - "paymentSource": { - "type": "string", - "description": "Select only placements with this payment source.", - "enum": [ - "PLACEMENT_AGENCY_PAID", - "PLACEMENT_PUBLISHER_PAID" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - }, - "placementStrategyIds": { - "type": "string", - "description": "Select only placements that are associated with these placement strategies.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "pricingTypes": { - "type": "string", - "description": "Select only placements with these pricing types.", - "enum": [ - "PRICING_TYPE_CPA", - "PRICING_TYPE_CPC", - "PRICING_TYPE_CPM", - "PRICING_TYPE_CPM_ACTIVEVIEW", - "PRICING_TYPE_FLAT_RATE_CLICKS", - "PRICING_TYPE_FLAT_RATE_IMPRESSIONS" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "" - ], - "repeated": true, - "location": "query" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - }, - "searchString": { - "type": "string", - "description": "Allows searching for placements by name or ID. Wildcards (*) are allowed. For example, \"placement*2015\" will return placements with names like \"placement June 2015\", \"placement May 2015\", or simply \"placements 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"placement\" will match placements with name \"my placement\", \"placement 2015\", or simply \"placement\".", - "location": "query" - }, - "siteIds": { - "type": "string", - "description": "Select only placements that are associated with these sites.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "sizeIds": { - "type": "string", - "description": "Select only placements that are associated with these sizes.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "sortField": { - "type": "string", - "description": "Field by which to sort the list.", - "default": "ID", - "enum": [ - "ID", - "NAME" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - }, - "sortOrder": { - "type": "string", - "description": "Order of sorted results.", - "default": "ASCENDING", - "enum": [ - "ASCENDING", - "DESCENDING" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - } - }, - "parameterOrder": [ - "profileId" - ], - "response": { - "$ref": "PlacementsListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "patch": { - "id": "dfareporting.placements.patch", - "path": "userprofiles/{profileId}/placements", - "httpMethod": "PATCH", - "description": "Updates an existing placement. This method supports patch semantics.", - "parameters": { - "id": { - "type": "string", - "description": "Placement ID.", - "required": true, - "format": "int64", - "location": "query" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "id" - ], - "request": { - "$ref": "Placement" - }, - "response": { - "$ref": "Placement" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "update": { - "id": "dfareporting.placements.update", - "path": "userprofiles/{profileId}/placements", - "httpMethod": "PUT", - "description": "Updates an existing placement.", - "parameters": { - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId" - ], - "request": { - "$ref": "Placement" - }, - "response": { - "$ref": "Placement" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - } - } - }, - "platformTypes": { - "methods": { - "get": { - "id": "dfareporting.platformTypes.get", - "path": "userprofiles/{profileId}/platformTypes/{id}", - "httpMethod": "GET", - "description": "Gets one platform type by ID.", - "parameters": { - "id": { - "type": "string", - "description": "Platform type ID.", - "required": true, - "format": "int64", - "location": "path" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "id" - ], - "response": { - "$ref": "PlatformType" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "list": { - "id": "dfareporting.platformTypes.list", - "path": "userprofiles/{profileId}/platformTypes", - "httpMethod": "GET", - "description": "Retrieves a list of platform types.", - "parameters": { - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId" - ], - "response": { - "$ref": "PlatformTypesListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - } - } - }, - "postalCodes": { - "methods": { - "get": { - "id": "dfareporting.postalCodes.get", - "path": "userprofiles/{profileId}/postalCodes/{code}", - "httpMethod": "GET", - "description": "Gets one postal code by ID.", - "parameters": { - "code": { - "type": "string", - "description": "Postal code ID.", - "required": true, - "location": "path" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "code" - ], - "response": { - "$ref": "PostalCode" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "list": { - "id": "dfareporting.postalCodes.list", - "path": "userprofiles/{profileId}/postalCodes", - "httpMethod": "GET", - "description": "Retrieves a list of postal codes.", - "parameters": { - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId" - ], - "response": { - "$ref": "PostalCodesListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - } - } - }, - "projects": { - "methods": { - "get": { - "id": "dfareporting.projects.get", - "path": "userprofiles/{profileId}/projects/{id}", - "httpMethod": "GET", - "description": "Gets one project by ID.", - "parameters": { - "id": { - "type": "string", - "description": "Project ID.", - "required": true, - "format": "int64", - "location": "path" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "id" - ], - "response": { - "$ref": "Project" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "list": { - "id": "dfareporting.projects.list", - "path": "userprofiles/{profileId}/projects", - "httpMethod": "GET", - "description": "Retrieves a list of projects, possibly filtered. This method supports paging.", - "parameters": { - "advertiserIds": { - "type": "string", - "description": "Select only projects with these advertiser IDs.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "ids": { - "type": "string", - "description": "Select only projects with these IDs.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "Maximum number of results to return.", - "default": "1000", - "format": "int32", - "minimum": "0", - "maximum": "1000", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Value of the nextPageToken from the previous result page.", - "location": "query" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - }, - "searchString": { - "type": "string", - "description": "Allows searching for projects by name or ID. Wildcards (*) are allowed. For example, \"project*2015\" will return projects with names like \"project June 2015\", \"project April 2015\", or simply \"project 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"project\" will match projects with name \"my project\", \"project 2015\", or simply \"project\".", - "location": "query" - }, - "sortField": { - "type": "string", - "description": "Field by which to sort the list.", - "default": "ID", - "enum": [ - "ID", - "NAME" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - }, - "sortOrder": { - "type": "string", - "description": "Order of sorted results.", - "default": "ASCENDING", - "enum": [ - "ASCENDING", - "DESCENDING" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - } - }, - "parameterOrder": [ - "profileId" - ], - "response": { - "$ref": "ProjectsListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - } - } - }, - "regions": { - "methods": { - "list": { - "id": "dfareporting.regions.list", - "path": "userprofiles/{profileId}/regions", - "httpMethod": "GET", - "description": "Retrieves a list of regions.", - "parameters": { - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId" - ], - "response": { - "$ref": "RegionsListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - } - } - }, - "remarketingListShares": { - "methods": { - "get": { - "id": "dfareporting.remarketingListShares.get", - "path": "userprofiles/{profileId}/remarketingListShares/{remarketingListId}", - "httpMethod": "GET", - "description": "Gets one remarketing list share by remarketing list ID.", - "parameters": { - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - }, - "remarketingListId": { - "type": "string", - "description": "Remarketing list ID.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "remarketingListId" - ], - "response": { - "$ref": "RemarketingListShare" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "patch": { - "id": "dfareporting.remarketingListShares.patch", - "path": "userprofiles/{profileId}/remarketingListShares", - "httpMethod": "PATCH", - "description": "Updates an existing remarketing list share. This method supports patch semantics.", - "parameters": { - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - }, - "remarketingListId": { - "type": "string", - "description": "Remarketing list ID.", - "required": true, - "format": "int64", - "location": "query" - } - }, - "parameterOrder": [ - "profileId", - "remarketingListId" - ], - "request": { - "$ref": "RemarketingListShare" - }, - "response": { - "$ref": "RemarketingListShare" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "update": { - "id": "dfareporting.remarketingListShares.update", - "path": "userprofiles/{profileId}/remarketingListShares", - "httpMethod": "PUT", - "description": "Updates an existing remarketing list share.", - "parameters": { - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId" - ], - "request": { - "$ref": "RemarketingListShare" - }, - "response": { - "$ref": "RemarketingListShare" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - } - } - }, - "remarketingLists": { - "methods": { - "get": { - "id": "dfareporting.remarketingLists.get", - "path": "userprofiles/{profileId}/remarketingLists/{id}", - "httpMethod": "GET", - "description": "Gets one remarketing list by ID.", - "parameters": { - "id": { - "type": "string", - "description": "Remarketing list ID.", - "required": true, - "format": "int64", - "location": "path" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "id" - ], - "response": { - "$ref": "RemarketingList" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "insert": { - "id": "dfareporting.remarketingLists.insert", - "path": "userprofiles/{profileId}/remarketingLists", - "httpMethod": "POST", - "description": "Inserts a new remarketing list.", - "parameters": { - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId" - ], - "request": { - "$ref": "RemarketingList" - }, - "response": { - "$ref": "RemarketingList" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "list": { - "id": "dfareporting.remarketingLists.list", - "path": "userprofiles/{profileId}/remarketingLists", - "httpMethod": "GET", - "description": "Retrieves a list of remarketing lists, possibly filtered. This method supports paging.", - "parameters": { - "active": { - "type": "boolean", - "description": "Select only active or only inactive remarketing lists.", - "location": "query" - }, - "advertiserId": { - "type": "string", - "description": "Select only remarketing lists owned by this advertiser.", - "required": true, - "format": "int64", - "location": "query" - }, - "floodlightActivityId": { - "type": "string", - "description": "Select only remarketing lists that have this floodlight activity ID.", - "format": "int64", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "Maximum number of results to return.", - "default": "1000", - "format": "int32", - "minimum": "0", - "maximum": "1000", - "location": "query" - }, - "name": { - "type": "string", - "description": "Allows searching for objects by name or ID. Wildcards (*) are allowed. For example, \"remarketing list*2015\" will return objects with names like \"remarketing list June 2015\", \"remarketing list April 2015\", or simply \"remarketing list 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"remarketing list\" will match objects with name \"my remarketing list\", \"remarketing list 2015\", or simply \"remarketing list\".", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Value of the nextPageToken from the previous result page.", - "location": "query" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - }, - "sortField": { - "type": "string", - "description": "Field by which to sort the list.", - "default": "ID", - "enum": [ - "ID", - "NAME" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - }, - "sortOrder": { - "type": "string", - "description": "Order of sorted results.", - "default": "ASCENDING", - "enum": [ - "ASCENDING", - "DESCENDING" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - } - }, - "parameterOrder": [ - "profileId", - "advertiserId" - ], - "response": { - "$ref": "RemarketingListsListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "patch": { - "id": "dfareporting.remarketingLists.patch", - "path": "userprofiles/{profileId}/remarketingLists", - "httpMethod": "PATCH", - "description": "Updates an existing remarketing list. This method supports patch semantics.", - "parameters": { - "id": { - "type": "string", - "description": "Remarketing list ID.", - "required": true, - "format": "int64", - "location": "query" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "id" - ], - "request": { - "$ref": "RemarketingList" - }, - "response": { - "$ref": "RemarketingList" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "update": { - "id": "dfareporting.remarketingLists.update", - "path": "userprofiles/{profileId}/remarketingLists", - "httpMethod": "PUT", - "description": "Updates an existing remarketing list.", - "parameters": { - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId" - ], - "request": { - "$ref": "RemarketingList" - }, - "response": { - "$ref": "RemarketingList" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - } - } - }, - "reports": { - "methods": { - "delete": { - "id": "dfareporting.reports.delete", - "path": "userprofiles/{profileId}/reports/{reportId}", - "httpMethod": "DELETE", - "description": "Deletes a report by its ID.", - "parameters": { - "profileId": { - "type": "string", - "description": "The DFA user profile ID.", - "required": true, - "format": "int64", - "location": "path" - }, - "reportId": { - "type": "string", - "description": "The ID of the report.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "reportId" - ], - "scopes": [ - "https://www.googleapis.com/auth/dfareporting" - ] - }, - "get": { - "id": "dfareporting.reports.get", - "path": "userprofiles/{profileId}/reports/{reportId}", - "httpMethod": "GET", - "description": "Retrieves a report by its ID.", - "parameters": { - "profileId": { - "type": "string", - "description": "The DFA user profile ID.", - "required": true, - "format": "int64", - "location": "path" - }, - "reportId": { - "type": "string", - "description": "The ID of the report.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "reportId" - ], - "response": { - "$ref": "Report" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfareporting" - ] - }, - "insert": { - "id": "dfareporting.reports.insert", - "path": "userprofiles/{profileId}/reports", - "httpMethod": "POST", - "description": "Creates a report.", - "parameters": { - "profileId": { - "type": "string", - "description": "The DFA user profile ID.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId" - ], - "request": { - "$ref": "Report" - }, - "response": { - "$ref": "Report" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfareporting" - ] - }, - "list": { - "id": "dfareporting.reports.list", - "path": "userprofiles/{profileId}/reports", - "httpMethod": "GET", - "description": "Retrieves list of reports.", - "parameters": { - "maxResults": { - "type": "integer", - "description": "Maximum number of results to return.", - "default": "10", - "format": "int32", - "minimum": "0", - "maximum": "10", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "The value of the nextToken from the previous result page.", - "location": "query" - }, - "profileId": { - "type": "string", - "description": "The DFA user profile ID.", - "required": true, - "format": "int64", - "location": "path" - }, - "scope": { - "type": "string", - "description": "The scope that defines which results are returned.", - "default": "MINE", - "enum": [ - "ALL", - "MINE" - ], - "enumDescriptions": [ - "All reports in account.", - "My reports." - ], - "location": "query" - }, - "sortField": { - "type": "string", - "description": "The field by which to sort the list.", - "default": "LAST_MODIFIED_TIME", - "enum": [ - "ID", - "LAST_MODIFIED_TIME", - "NAME" - ], - "enumDescriptions": [ - "Sort by report ID.", - "Sort by 'lastModifiedTime' field.", - "Sort by name of reports." - ], - "location": "query" - }, - "sortOrder": { - "type": "string", - "description": "Order of sorted results.", - "default": "DESCENDING", - "enum": [ - "ASCENDING", - "DESCENDING" - ], - "enumDescriptions": [ - "Ascending order.", - "Descending order." - ], - "location": "query" - } - }, - "parameterOrder": [ - "profileId" - ], - "response": { - "$ref": "ReportList" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfareporting" - ] - }, - "patch": { - "id": "dfareporting.reports.patch", - "path": "userprofiles/{profileId}/reports/{reportId}", - "httpMethod": "PATCH", - "description": "Updates a report. This method supports patch semantics.", - "parameters": { - "profileId": { - "type": "string", - "description": "The DFA user profile ID.", - "required": true, - "format": "int64", - "location": "path" - }, - "reportId": { - "type": "string", - "description": "The ID of the report.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "reportId" - ], - "request": { - "$ref": "Report" - }, - "response": { - "$ref": "Report" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfareporting" - ] - }, - "run": { - "id": "dfareporting.reports.run", - "path": "userprofiles/{profileId}/reports/{reportId}/run", - "httpMethod": "POST", - "description": "Runs a report.", - "parameters": { - "profileId": { - "type": "string", - "description": "The DFA profile ID.", - "required": true, - "format": "int64", - "location": "path" - }, - "reportId": { - "type": "string", - "description": "The ID of the report.", - "required": true, - "format": "int64", - "location": "path" - }, - "synchronous": { - "type": "boolean", - "description": "If set and true, tries to run the report synchronously.", - "default": "false", - "location": "query" - } - }, - "parameterOrder": [ - "profileId", - "reportId" - ], - "response": { - "$ref": "File" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfareporting" - ] - }, - "update": { - "id": "dfareporting.reports.update", - "path": "userprofiles/{profileId}/reports/{reportId}", - "httpMethod": "PUT", - "description": "Updates a report.", - "parameters": { - "profileId": { - "type": "string", - "description": "The DFA user profile ID.", - "required": true, - "format": "int64", - "location": "path" - }, - "reportId": { - "type": "string", - "description": "The ID of the report.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "reportId" - ], - "request": { - "$ref": "Report" - }, - "response": { - "$ref": "Report" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfareporting" - ] - } - }, - "resources": { - "compatibleFields": { - "methods": { - "query": { - "id": "dfareporting.reports.compatibleFields.query", - "path": "userprofiles/{profileId}/reports/compatiblefields/query", - "httpMethod": "POST", - "description": "Returns the fields that are compatible to be selected in the respective sections of a report criteria, given the fields already selected in the input report and user permissions.", - "parameters": { - "profileId": { - "type": "string", - "description": "The DFA user profile ID.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId" - ], - "request": { - "$ref": "Report" - }, - "response": { - "$ref": "CompatibleFields" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfareporting" - ] - } - } }, "files": { - "methods": { - "get": { - "id": "dfareporting.reports.files.get", - "path": "userprofiles/{profileId}/reports/{reportId}/files/{fileId}", - "httpMethod": "GET", - "description": "Retrieves a report file. This method supports media download.", - "parameters": { - "fileId": { - "type": "string", - "description": "The ID of the report file.", - "required": true, - "format": "int64", - "location": "path" + "methods": { + "get": { + "description": "Retrieves a report file by its report ID and file ID. This method supports media download.", + "httpMethod": "GET", + "id": "dfareporting.files.get", + "parameterOrder": [ + "reportId", + "fileId" + ], + "parameters": { + "fileId": { + "description": "The ID of the report file.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "reportId": { + "description": "The ID of the report.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "reports/{reportId}/files/{fileId}", + "response": { + "$ref": "File" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfareporting" + ], + "supportsMediaDownload": true }, - "profileId": { - "type": "string", - "description": "The DFA profile ID.", - "required": true, - "format": "int64", - "location": "path" - }, - "reportId": { - "type": "string", - "description": "The ID of the report.", - "required": true, - "format": "int64", - "location": "path" + "list": { + "description": "Lists files for a user profile.", + "httpMethod": "GET", + "id": "dfareporting.files.list", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "maxResults": { + "default": "10", + "description": "Maximum number of results to return.", + "format": "int32", + "location": "query", + "maximum": "10", + "minimum": "0", + "type": "integer" + }, + "pageToken": { + "description": "The value of the nextToken from the previous result page.", + "location": "query", + "type": "string" + }, + "profileId": { + "description": "The DFA profile ID.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "scope": { + "default": "MINE", + "description": "The scope that defines which results are returned.", + "enum": [ + "ALL", + "MINE", + "SHARED_WITH_ME" + ], + "enumDescriptions": [ + "All files in account.", + "My files.", + "Files shared with me." + ], + "location": "query", + "type": "string" + }, + "sortField": { + "default": "LAST_MODIFIED_TIME", + "description": "The field by which to sort the list.", + "enum": [ + "ID", + "LAST_MODIFIED_TIME" + ], + "enumDescriptions": [ + "Sort by file ID.", + "Sort by 'lastmodifiedAt' field." + ], + "location": "query", + "type": "string" + }, + "sortOrder": { + "default": "DESCENDING", + "description": "Order of sorted results.", + "enum": [ + "ASCENDING", + "DESCENDING" + ], + "enumDescriptions": [ + "Ascending order.", + "Descending order." + ], + "location": "query", + "type": "string" + } + }, + "path": "userprofiles/{profileId}/files", + "response": { + "$ref": "FileList" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfareporting" + ] + } + } + }, + "floodlightActivities": { + "methods": { + "delete": { + "description": "Deletes an existing floodlight activity.", + "httpMethod": "DELETE", + "id": "dfareporting.floodlightActivities.delete", + "parameterOrder": [ + "profileId", + "id" + ], + "parameters": { + "id": { + "description": "Floodlight activity ID.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/floodlightActivities/{id}", + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "generatetag": { + "description": "Generates a tag for a floodlight activity.", + "httpMethod": "POST", + "id": "dfareporting.floodlightActivities.generatetag", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "floodlightActivityId": { + "description": "Floodlight activity ID for which we want to generate a tag.", + "format": "int64", + "location": "query", + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/floodlightActivities/generatetag", + "response": { + "$ref": "FloodlightActivitiesGenerateTagResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "get": { + "description": "Gets one floodlight activity by ID.", + "httpMethod": "GET", + "id": "dfareporting.floodlightActivities.get", + "parameterOrder": [ + "profileId", + "id" + ], + "parameters": { + "id": { + "description": "Floodlight activity ID.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/floodlightActivities/{id}", + "response": { + "$ref": "FloodlightActivity" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "insert": { + "description": "Inserts a new floodlight activity.", + "httpMethod": "POST", + "id": "dfareporting.floodlightActivities.insert", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/floodlightActivities", + "request": { + "$ref": "FloodlightActivity" + }, + "response": { + "$ref": "FloodlightActivity" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "description": "Retrieves a list of floodlight activities, possibly filtered. This method supports paging.", + "httpMethod": "GET", + "id": "dfareporting.floodlightActivities.list", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "advertiserId": { + "description": "Select only floodlight activities for the specified advertiser ID. Must specify either ids, advertiserId, or floodlightConfigurationId for a non-empty result.", + "format": "int64", + "location": "query", + "type": "string" + }, + "floodlightActivityGroupIds": { + "description": "Select only floodlight activities with the specified floodlight activity group IDs.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "floodlightActivityGroupName": { + "description": "Select only floodlight activities with the specified floodlight activity group name.", + "location": "query", + "type": "string" + }, + "floodlightActivityGroupTagString": { + "description": "Select only floodlight activities with the specified floodlight activity group tag string.", + "location": "query", + "type": "string" + }, + "floodlightActivityGroupType": { + "description": "Select only floodlight activities with the specified floodlight activity group type.", + "enum": [ + "COUNTER", + "SALE" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + }, + "floodlightConfigurationId": { + "description": "Select only floodlight activities for the specified floodlight configuration ID. Must specify either ids, advertiserId, or floodlightConfigurationId for a non-empty result.", + "format": "int64", + "location": "query", + "type": "string" + }, + "ids": { + "description": "Select only floodlight activities with the specified IDs. Must specify either ids, advertiserId, or floodlightConfigurationId for a non-empty result.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "maxResults": { + "default": "1000", + "description": "Maximum number of results to return.", + "format": "int32", + "location": "query", + "maximum": "1000", + "minimum": "0", + "type": "integer" + }, + "pageToken": { + "description": "Value of the nextPageToken from the previous result page.", + "location": "query", + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "searchString": { + "description": "Allows searching for objects by name or ID. Wildcards (*) are allowed. For example, \"floodlightactivity*2015\" will return objects with names like \"floodlightactivity June 2015\", \"floodlightactivity April 2015\", or simply \"floodlightactivity 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"floodlightactivity\" will match objects with name \"my floodlightactivity activity\", \"floodlightactivity 2015\", or simply \"floodlightactivity\".", + "location": "query", + "type": "string" + }, + "sortField": { + "default": "ID", + "description": "Field by which to sort the list.", + "enum": [ + "ID", + "NAME" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + }, + "sortOrder": { + "default": "ASCENDING", + "description": "Order of sorted results.", + "enum": [ + "ASCENDING", + "DESCENDING" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + }, + "tagString": { + "description": "Select only floodlight activities with the specified tag string.", + "location": "query", + "type": "string" + } + }, + "path": "userprofiles/{profileId}/floodlightActivities", + "response": { + "$ref": "FloodlightActivitiesListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "patch": { + "description": "Updates an existing floodlight activity. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "dfareporting.floodlightActivities.patch", + "parameterOrder": [ + "profileId", + "id" + ], + "parameters": { + "id": { + "description": "Floodlight activity ID.", + "format": "int64", + "location": "query", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/floodlightActivities", + "request": { + "$ref": "FloodlightActivity" + }, + "response": { + "$ref": "FloodlightActivity" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "update": { + "description": "Updates an existing floodlight activity.", + "httpMethod": "PUT", + "id": "dfareporting.floodlightActivities.update", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/floodlightActivities", + "request": { + "$ref": "FloodlightActivity" + }, + "response": { + "$ref": "FloodlightActivity" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "floodlightActivityGroups": { + "methods": { + "get": { + "description": "Gets one floodlight activity group by ID.", + "httpMethod": "GET", + "id": "dfareporting.floodlightActivityGroups.get", + "parameterOrder": [ + "profileId", + "id" + ], + "parameters": { + "id": { + "description": "Floodlight activity Group ID.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/floodlightActivityGroups/{id}", + "response": { + "$ref": "FloodlightActivityGroup" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "insert": { + "description": "Inserts a new floodlight activity group.", + "httpMethod": "POST", + "id": "dfareporting.floodlightActivityGroups.insert", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/floodlightActivityGroups", + "request": { + "$ref": "FloodlightActivityGroup" + }, + "response": { + "$ref": "FloodlightActivityGroup" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "description": "Retrieves a list of floodlight activity groups, possibly filtered. This method supports paging.", + "httpMethod": "GET", + "id": "dfareporting.floodlightActivityGroups.list", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "advertiserId": { + "description": "Select only floodlight activity groups with the specified advertiser ID. Must specify either advertiserId or floodlightConfigurationId for a non-empty result.", + "format": "int64", + "location": "query", + "type": "string" + }, + "floodlightConfigurationId": { + "description": "Select only floodlight activity groups with the specified floodlight configuration ID. Must specify either advertiserId, or floodlightConfigurationId for a non-empty result.", + "format": "int64", + "location": "query", + "type": "string" + }, + "ids": { + "description": "Select only floodlight activity groups with the specified IDs. Must specify either advertiserId or floodlightConfigurationId for a non-empty result.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "maxResults": { + "default": "1000", + "description": "Maximum number of results to return.", + "format": "int32", + "location": "query", + "maximum": "1000", + "minimum": "0", + "type": "integer" + }, + "pageToken": { + "description": "Value of the nextPageToken from the previous result page.", + "location": "query", + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "searchString": { + "description": "Allows searching for objects by name or ID. Wildcards (*) are allowed. For example, \"floodlightactivitygroup*2015\" will return objects with names like \"floodlightactivitygroup June 2015\", \"floodlightactivitygroup April 2015\", or simply \"floodlightactivitygroup 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"floodlightactivitygroup\" will match objects with name \"my floodlightactivitygroup activity\", \"floodlightactivitygroup 2015\", or simply \"floodlightactivitygroup\".", + "location": "query", + "type": "string" + }, + "sortField": { + "default": "ID", + "description": "Field by which to sort the list.", + "enum": [ + "ID", + "NAME" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + }, + "sortOrder": { + "default": "ASCENDING", + "description": "Order of sorted results.", + "enum": [ + "ASCENDING", + "DESCENDING" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + }, + "type": { + "description": "Select only floodlight activity groups with the specified floodlight activity group type.", + "enum": [ + "COUNTER", + "SALE" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + } + }, + "path": "userprofiles/{profileId}/floodlightActivityGroups", + "response": { + "$ref": "FloodlightActivityGroupsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "patch": { + "description": "Updates an existing floodlight activity group. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "dfareporting.floodlightActivityGroups.patch", + "parameterOrder": [ + "profileId", + "id" + ], + "parameters": { + "id": { + "description": "Floodlight activity Group ID.", + "format": "int64", + "location": "query", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/floodlightActivityGroups", + "request": { + "$ref": "FloodlightActivityGroup" + }, + "response": { + "$ref": "FloodlightActivityGroup" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "update": { + "description": "Updates an existing floodlight activity group.", + "httpMethod": "PUT", + "id": "dfareporting.floodlightActivityGroups.update", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/floodlightActivityGroups", + "request": { + "$ref": "FloodlightActivityGroup" + }, + "response": { + "$ref": "FloodlightActivityGroup" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "floodlightConfigurations": { + "methods": { + "get": { + "description": "Gets one floodlight configuration by ID.", + "httpMethod": "GET", + "id": "dfareporting.floodlightConfigurations.get", + "parameterOrder": [ + "profileId", + "id" + ], + "parameters": { + "id": { + "description": "Floodlight configuration ID.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/floodlightConfigurations/{id}", + "response": { + "$ref": "FloodlightConfiguration" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "description": "Retrieves a list of floodlight configurations, possibly filtered.", + "httpMethod": "GET", + "id": "dfareporting.floodlightConfigurations.list", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "ids": { + "description": "Set of IDs of floodlight configurations to retrieve. Required field; otherwise an empty list will be returned.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/floodlightConfigurations", + "response": { + "$ref": "FloodlightConfigurationsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "patch": { + "description": "Updates an existing floodlight configuration. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "dfareporting.floodlightConfigurations.patch", + "parameterOrder": [ + "profileId", + "id" + ], + "parameters": { + "id": { + "description": "Floodlight configuration ID.", + "format": "int64", + "location": "query", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/floodlightConfigurations", + "request": { + "$ref": "FloodlightConfiguration" + }, + "response": { + "$ref": "FloodlightConfiguration" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "update": { + "description": "Updates an existing floodlight configuration.", + "httpMethod": "PUT", + "id": "dfareporting.floodlightConfigurations.update", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/floodlightConfigurations", + "request": { + "$ref": "FloodlightConfiguration" + }, + "response": { + "$ref": "FloodlightConfiguration" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "inventoryItems": { + "methods": { + "get": { + "description": "Gets one inventory item by ID.", + "httpMethod": "GET", + "id": "dfareporting.inventoryItems.get", + "parameterOrder": [ + "profileId", + "projectId", + "id" + ], + "parameters": { + "id": { + "description": "Inventory item ID.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "projectId": { + "description": "Project ID for order documents.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/projects/{projectId}/inventoryItems/{id}", + "response": { + "$ref": "InventoryItem" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "description": "Retrieves a list of inventory items, possibly filtered. This method supports paging.", + "httpMethod": "GET", + "id": "dfareporting.inventoryItems.list", + "parameterOrder": [ + "profileId", + "projectId" + ], + "parameters": { + "ids": { + "description": "Select only inventory items with these IDs.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "inPlan": { + "description": "Select only inventory items that are in plan.", + "location": "query", + "type": "boolean" + }, + "maxResults": { + "default": "1000", + "description": "Maximum number of results to return.", + "format": "int32", + "location": "query", + "maximum": "1000", + "minimum": "0", + "type": "integer" + }, + "orderId": { + "description": "Select only inventory items that belong to specified orders.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "pageToken": { + "description": "Value of the nextPageToken from the previous result page.", + "location": "query", + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "projectId": { + "description": "Project ID for order documents.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "siteId": { + "description": "Select only inventory items that are associated with these sites.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "sortField": { + "default": "ID", + "description": "Field by which to sort the list.", + "enum": [ + "ID", + "NAME" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + }, + "sortOrder": { + "default": "ASCENDING", + "description": "Order of sorted results.", + "enum": [ + "ASCENDING", + "DESCENDING" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + }, + "type": { + "description": "Select only inventory items with this type.", + "enum": [ + "PLANNING_PLACEMENT_TYPE_CREDIT", + "PLANNING_PLACEMENT_TYPE_REGULAR" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + } + }, + "path": "userprofiles/{profileId}/projects/{projectId}/inventoryItems", + "response": { + "$ref": "InventoryItemsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "languages": { + "methods": { + "list": { + "description": "Retrieves a list of languages.", + "httpMethod": "GET", + "id": "dfareporting.languages.list", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/languages", + "response": { + "$ref": "LanguagesListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "metros": { + "methods": { + "list": { + "description": "Retrieves a list of metros.", + "httpMethod": "GET", + "id": "dfareporting.metros.list", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/metros", + "response": { + "$ref": "MetrosListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "mobileCarriers": { + "methods": { + "get": { + "description": "Gets one mobile carrier by ID.", + "httpMethod": "GET", + "id": "dfareporting.mobileCarriers.get", + "parameterOrder": [ + "profileId", + "id" + ], + "parameters": { + "id": { + "description": "Mobile carrier ID.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/mobileCarriers/{id}", + "response": { + "$ref": "MobileCarrier" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "description": "Retrieves a list of mobile carriers.", + "httpMethod": "GET", + "id": "dfareporting.mobileCarriers.list", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/mobileCarriers", + "response": { + "$ref": "MobileCarriersListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "operatingSystemVersions": { + "methods": { + "get": { + "description": "Gets one operating system version by ID.", + "httpMethod": "GET", + "id": "dfareporting.operatingSystemVersions.get", + "parameterOrder": [ + "profileId", + "id" + ], + "parameters": { + "id": { + "description": "Operating system version ID.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/operatingSystemVersions/{id}", + "response": { + "$ref": "OperatingSystemVersion" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "description": "Retrieves a list of operating system versions.", + "httpMethod": "GET", + "id": "dfareporting.operatingSystemVersions.list", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/operatingSystemVersions", + "response": { + "$ref": "OperatingSystemVersionsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "operatingSystems": { + "methods": { + "get": { + "description": "Gets one operating system by DART ID.", + "httpMethod": "GET", + "id": "dfareporting.operatingSystems.get", + "parameterOrder": [ + "profileId", + "dartId" + ], + "parameters": { + "dartId": { + "description": "Operating system DART ID.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/operatingSystems/{dartId}", + "response": { + "$ref": "OperatingSystem" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "description": "Retrieves a list of operating systems.", + "httpMethod": "GET", + "id": "dfareporting.operatingSystems.list", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/operatingSystems", + "response": { + "$ref": "OperatingSystemsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "orderDocuments": { + "methods": { + "get": { + "description": "Gets one order document by ID.", + "httpMethod": "GET", + "id": "dfareporting.orderDocuments.get", + "parameterOrder": [ + "profileId", + "projectId", + "id" + ], + "parameters": { + "id": { + "description": "Order document ID.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "projectId": { + "description": "Project ID for order documents.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/projects/{projectId}/orderDocuments/{id}", + "response": { + "$ref": "OrderDocument" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "description": "Retrieves a list of order documents, possibly filtered. This method supports paging.", + "httpMethod": "GET", + "id": "dfareporting.orderDocuments.list", + "parameterOrder": [ + "profileId", + "projectId" + ], + "parameters": { + "approved": { + "description": "Select only order documents that have been approved by at least one user.", + "location": "query", + "type": "boolean" + }, + "ids": { + "description": "Select only order documents with these IDs.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "maxResults": { + "default": "1000", + "description": "Maximum number of results to return.", + "format": "int32", + "location": "query", + "maximum": "1000", + "minimum": "0", + "type": "integer" + }, + "orderId": { + "description": "Select only order documents for specified orders.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "pageToken": { + "description": "Value of the nextPageToken from the previous result page.", + "location": "query", + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "projectId": { + "description": "Project ID for order documents.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "searchString": { + "description": "Allows searching for order documents by name or ID. Wildcards (*) are allowed. For example, \"orderdocument*2015\" will return order documents with names like \"orderdocument June 2015\", \"orderdocument April 2015\", or simply \"orderdocument 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"orderdocument\" will match order documents with name \"my orderdocument\", \"orderdocument 2015\", or simply \"orderdocument\".", + "location": "query", + "type": "string" + }, + "siteId": { + "description": "Select only order documents that are associated with these sites.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "sortField": { + "default": "ID", + "description": "Field by which to sort the list.", + "enum": [ + "ID", + "NAME" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + }, + "sortOrder": { + "default": "ASCENDING", + "description": "Order of sorted results.", + "enum": [ + "ASCENDING", + "DESCENDING" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + } + }, + "path": "userprofiles/{profileId}/projects/{projectId}/orderDocuments", + "response": { + "$ref": "OrderDocumentsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "orders": { + "methods": { + "get": { + "description": "Gets one order by ID.", + "httpMethod": "GET", + "id": "dfareporting.orders.get", + "parameterOrder": [ + "profileId", + "projectId", + "id" + ], + "parameters": { + "id": { + "description": "Order ID.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "projectId": { + "description": "Project ID for orders.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/projects/{projectId}/orders/{id}", + "response": { + "$ref": "Order" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "description": "Retrieves a list of orders, possibly filtered. This method supports paging.", + "httpMethod": "GET", + "id": "dfareporting.orders.list", + "parameterOrder": [ + "profileId", + "projectId" + ], + "parameters": { + "ids": { + "description": "Select only orders with these IDs.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "maxResults": { + "default": "1000", + "description": "Maximum number of results to return.", + "format": "int32", + "location": "query", + "maximum": "1000", + "minimum": "0", + "type": "integer" + }, + "pageToken": { + "description": "Value of the nextPageToken from the previous result page.", + "location": "query", + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "projectId": { + "description": "Project ID for orders.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "searchString": { + "description": "Allows searching for orders by name or ID. Wildcards (*) are allowed. For example, \"order*2015\" will return orders with names like \"order June 2015\", \"order April 2015\", or simply \"order 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"order\" will match orders with name \"my order\", \"order 2015\", or simply \"order\".", + "location": "query", + "type": "string" + }, + "siteId": { + "description": "Select only orders that are associated with these site IDs.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "sortField": { + "default": "ID", + "description": "Field by which to sort the list.", + "enum": [ + "ID", + "NAME" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + }, + "sortOrder": { + "default": "ASCENDING", + "description": "Order of sorted results.", + "enum": [ + "ASCENDING", + "DESCENDING" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + } + }, + "path": "userprofiles/{profileId}/projects/{projectId}/orders", + "response": { + "$ref": "OrdersListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "placementGroups": { + "methods": { + "get": { + "description": "Gets one placement group by ID.", + "httpMethod": "GET", + "id": "dfareporting.placementGroups.get", + "parameterOrder": [ + "profileId", + "id" + ], + "parameters": { + "id": { + "description": "Placement group ID.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/placementGroups/{id}", + "response": { + "$ref": "PlacementGroup" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "insert": { + "description": "Inserts a new placement group.", + "httpMethod": "POST", + "id": "dfareporting.placementGroups.insert", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/placementGroups", + "request": { + "$ref": "PlacementGroup" + }, + "response": { + "$ref": "PlacementGroup" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "description": "Retrieves a list of placement groups, possibly filtered. This method supports paging.", + "httpMethod": "GET", + "id": "dfareporting.placementGroups.list", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "advertiserIds": { + "description": "Select only placement groups that belong to these advertisers.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "archived": { + "description": "Select only archived placements. Don't set this field to select both archived and non-archived placements.", + "location": "query", + "type": "boolean" + }, + "campaignIds": { + "description": "Select only placement groups that belong to these campaigns.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "contentCategoryIds": { + "description": "Select only placement groups that are associated with these content categories.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "directorySiteIds": { + "description": "Select only placement groups that are associated with these directory sites.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "ids": { + "description": "Select only placement groups with these IDs.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "maxEndDate": { + "description": "Select only placements or placement groups whose end date is on or before the specified maxEndDate. The date should be formatted as \"yyyy-MM-dd\".", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "800", + "description": "Maximum number of results to return.", + "format": "int32", + "location": "query", + "maximum": "800", + "minimum": "0", + "type": "integer" + }, + "maxStartDate": { + "description": "Select only placements or placement groups whose start date is on or before the specified maxStartDate. The date should be formatted as \"yyyy-MM-dd\".", + "location": "query", + "type": "string" + }, + "minEndDate": { + "description": "Select only placements or placement groups whose end date is on or after the specified minEndDate. The date should be formatted as \"yyyy-MM-dd\".", + "location": "query", + "type": "string" + }, + "minStartDate": { + "description": "Select only placements or placement groups whose start date is on or after the specified minStartDate. The date should be formatted as \"yyyy-MM-dd\".", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Value of the nextPageToken from the previous result page.", + "location": "query", + "type": "string" + }, + "placementGroupType": { + "description": "Select only placement groups belonging with this group type. A package is a simple group of placements that acts as a single pricing point for a group of tags. A roadblock is a group of placements that not only acts as a single pricing point but also assumes that all the tags in it will be served at the same time. A roadblock requires one of its assigned placements to be marked as primary for reporting.", + "enum": [ + "PLACEMENT_PACKAGE", + "PLACEMENT_ROADBLOCK" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + }, + "placementStrategyIds": { + "description": "Select only placement groups that are associated with these placement strategies.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "pricingTypes": { + "description": "Select only placement groups with these pricing types.", + "enum": [ + "PRICING_TYPE_CPA", + "PRICING_TYPE_CPC", + "PRICING_TYPE_CPM", + "PRICING_TYPE_CPM_ACTIVEVIEW", + "PRICING_TYPE_FLAT_RATE_CLICKS", + "PRICING_TYPE_FLAT_RATE_IMPRESSIONS" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "" + ], + "location": "query", + "repeated": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "searchString": { + "description": "Allows searching for placement groups by name or ID. Wildcards (*) are allowed. For example, \"placement*2015\" will return placement groups with names like \"placement group June 2015\", \"placement group May 2015\", or simply \"placements 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"placementgroup\" will match placement groups with name \"my placementgroup\", \"placementgroup 2015\", or simply \"placementgroup\".", + "location": "query", + "type": "string" + }, + "siteIds": { + "description": "Select only placement groups that are associated with these sites.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "sortField": { + "default": "ID", + "description": "Field by which to sort the list.", + "enum": [ + "ID", + "NAME" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + }, + "sortOrder": { + "default": "ASCENDING", + "description": "Order of sorted results.", + "enum": [ + "ASCENDING", + "DESCENDING" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + } + }, + "path": "userprofiles/{profileId}/placementGroups", + "response": { + "$ref": "PlacementGroupsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "patch": { + "description": "Updates an existing placement group. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "dfareporting.placementGroups.patch", + "parameterOrder": [ + "profileId", + "id" + ], + "parameters": { + "id": { + "description": "Placement group ID.", + "format": "int64", + "location": "query", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/placementGroups", + "request": { + "$ref": "PlacementGroup" + }, + "response": { + "$ref": "PlacementGroup" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "update": { + "description": "Updates an existing placement group.", + "httpMethod": "PUT", + "id": "dfareporting.placementGroups.update", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/placementGroups", + "request": { + "$ref": "PlacementGroup" + }, + "response": { + "$ref": "PlacementGroup" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "placementStrategies": { + "methods": { + "delete": { + "description": "Deletes an existing placement strategy.", + "httpMethod": "DELETE", + "id": "dfareporting.placementStrategies.delete", + "parameterOrder": [ + "profileId", + "id" + ], + "parameters": { + "id": { + "description": "Placement strategy ID.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/placementStrategies/{id}", + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "get": { + "description": "Gets one placement strategy by ID.", + "httpMethod": "GET", + "id": "dfareporting.placementStrategies.get", + "parameterOrder": [ + "profileId", + "id" + ], + "parameters": { + "id": { + "description": "Placement strategy ID.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/placementStrategies/{id}", + "response": { + "$ref": "PlacementStrategy" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "insert": { + "description": "Inserts a new placement strategy.", + "httpMethod": "POST", + "id": "dfareporting.placementStrategies.insert", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/placementStrategies", + "request": { + "$ref": "PlacementStrategy" + }, + "response": { + "$ref": "PlacementStrategy" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "description": "Retrieves a list of placement strategies, possibly filtered. This method supports paging.", + "httpMethod": "GET", + "id": "dfareporting.placementStrategies.list", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "ids": { + "description": "Select only placement strategies with these IDs.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "maxResults": { + "default": "1000", + "description": "Maximum number of results to return.", + "format": "int32", + "location": "query", + "maximum": "1000", + "minimum": "0", + "type": "integer" + }, + "pageToken": { + "description": "Value of the nextPageToken from the previous result page.", + "location": "query", + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "searchString": { + "description": "Allows searching for objects by name or ID. Wildcards (*) are allowed. For example, \"placementstrategy*2015\" will return objects with names like \"placementstrategy June 2015\", \"placementstrategy April 2015\", or simply \"placementstrategy 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"placementstrategy\" will match objects with name \"my placementstrategy\", \"placementstrategy 2015\", or simply \"placementstrategy\".", + "location": "query", + "type": "string" + }, + "sortField": { + "default": "ID", + "description": "Field by which to sort the list.", + "enum": [ + "ID", + "NAME" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + }, + "sortOrder": { + "default": "ASCENDING", + "description": "Order of sorted results.", + "enum": [ + "ASCENDING", + "DESCENDING" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + } + }, + "path": "userprofiles/{profileId}/placementStrategies", + "response": { + "$ref": "PlacementStrategiesListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "patch": { + "description": "Updates an existing placement strategy. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "dfareporting.placementStrategies.patch", + "parameterOrder": [ + "profileId", + "id" + ], + "parameters": { + "id": { + "description": "Placement strategy ID.", + "format": "int64", + "location": "query", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/placementStrategies", + "request": { + "$ref": "PlacementStrategy" + }, + "response": { + "$ref": "PlacementStrategy" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "update": { + "description": "Updates an existing placement strategy.", + "httpMethod": "PUT", + "id": "dfareporting.placementStrategies.update", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/placementStrategies", + "request": { + "$ref": "PlacementStrategy" + }, + "response": { + "$ref": "PlacementStrategy" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "placements": { + "methods": { + "generatetags": { + "description": "Generates tags for a placement.", + "httpMethod": "POST", + "id": "dfareporting.placements.generatetags", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "campaignId": { + "description": "Generate placements belonging to this campaign. This is a required field.", + "format": "int64", + "location": "query", + "type": "string" + }, + "placementIds": { + "description": "Generate tags for these placements.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "tagFormats": { + "description": "Tag formats to generate for these placements.\n\nNote: PLACEMENT_TAG_STANDARD can only be generated for 1x1 placements.", + "enum": [ + "PLACEMENT_TAG_CLICK_COMMANDS", + "PLACEMENT_TAG_IFRAME_ILAYER", + "PLACEMENT_TAG_IFRAME_JAVASCRIPT", + "PLACEMENT_TAG_IFRAME_JAVASCRIPT_LEGACY", + "PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH", + "PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH_VAST_3", + "PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH_VAST_4", + "PLACEMENT_TAG_INTERNAL_REDIRECT", + "PLACEMENT_TAG_INTERSTITIAL_IFRAME_JAVASCRIPT", + "PLACEMENT_TAG_INTERSTITIAL_IFRAME_JAVASCRIPT_LEGACY", + "PLACEMENT_TAG_INTERSTITIAL_INTERNAL_REDIRECT", + "PLACEMENT_TAG_INTERSTITIAL_JAVASCRIPT", + "PLACEMENT_TAG_INTERSTITIAL_JAVASCRIPT_LEGACY", + "PLACEMENT_TAG_JAVASCRIPT", + "PLACEMENT_TAG_JAVASCRIPT_LEGACY", + "PLACEMENT_TAG_STANDARD", + "PLACEMENT_TAG_TRACKING", + "PLACEMENT_TAG_TRACKING_IFRAME", + "PLACEMENT_TAG_TRACKING_JAVASCRIPT" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "location": "query", + "repeated": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/placements/generatetags", + "response": { + "$ref": "PlacementsGenerateTagsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "get": { + "description": "Gets one placement by ID.", + "httpMethod": "GET", + "id": "dfareporting.placements.get", + "parameterOrder": [ + "profileId", + "id" + ], + "parameters": { + "id": { + "description": "Placement ID.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/placements/{id}", + "response": { + "$ref": "Placement" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "insert": { + "description": "Inserts a new placement.", + "httpMethod": "POST", + "id": "dfareporting.placements.insert", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/placements", + "request": { + "$ref": "Placement" + }, + "response": { + "$ref": "Placement" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "description": "Retrieves a list of placements, possibly filtered. This method supports paging.", + "httpMethod": "GET", + "id": "dfareporting.placements.list", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "advertiserIds": { + "description": "Select only placements that belong to these advertisers.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "archived": { + "description": "Select only archived placements. Don't set this field to select both archived and non-archived placements.", + "location": "query", + "type": "boolean" + }, + "campaignIds": { + "description": "Select only placements that belong to these campaigns.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "compatibilities": { + "description": "Select only placements that are associated with these compatibilities. DISPLAY and DISPLAY_INTERSTITIAL refer to rendering either on desktop or on mobile devices for regular or interstitial ads respectively. APP and APP_INTERSTITIAL are for rendering in mobile apps. IN_STREAM_VIDEO refers to rendering in in-stream video ads developed with the VAST standard.", + "enum": [ + "APP", + "APP_INTERSTITIAL", + "DISPLAY", + "DISPLAY_INTERSTITIAL", + "IN_STREAM_VIDEO" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "" + ], + "location": "query", + "repeated": true, + "type": "string" + }, + "contentCategoryIds": { + "description": "Select only placements that are associated with these content categories.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "directorySiteIds": { + "description": "Select only placements that are associated with these directory sites.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "groupIds": { + "description": "Select only placements that belong to these placement groups.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "ids": { + "description": "Select only placements with these IDs.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "maxEndDate": { + "description": "Select only placements or placement groups whose end date is on or before the specified maxEndDate. The date should be formatted as \"yyyy-MM-dd\".", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "1000", + "description": "Maximum number of results to return.", + "format": "int32", + "location": "query", + "maximum": "1000", + "minimum": "0", + "type": "integer" + }, + "maxStartDate": { + "description": "Select only placements or placement groups whose start date is on or before the specified maxStartDate. The date should be formatted as \"yyyy-MM-dd\".", + "location": "query", + "type": "string" + }, + "minEndDate": { + "description": "Select only placements or placement groups whose end date is on or after the specified minEndDate. The date should be formatted as \"yyyy-MM-dd\".", + "location": "query", + "type": "string" + }, + "minStartDate": { + "description": "Select only placements or placement groups whose start date is on or after the specified minStartDate. The date should be formatted as \"yyyy-MM-dd\".", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Value of the nextPageToken from the previous result page.", + "location": "query", + "type": "string" + }, + "paymentSource": { + "description": "Select only placements with this payment source.", + "enum": [ + "PLACEMENT_AGENCY_PAID", + "PLACEMENT_PUBLISHER_PAID" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + }, + "placementStrategyIds": { + "description": "Select only placements that are associated with these placement strategies.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "pricingTypes": { + "description": "Select only placements with these pricing types.", + "enum": [ + "PRICING_TYPE_CPA", + "PRICING_TYPE_CPC", + "PRICING_TYPE_CPM", + "PRICING_TYPE_CPM_ACTIVEVIEW", + "PRICING_TYPE_FLAT_RATE_CLICKS", + "PRICING_TYPE_FLAT_RATE_IMPRESSIONS" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "" + ], + "location": "query", + "repeated": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "searchString": { + "description": "Allows searching for placements by name or ID. Wildcards (*) are allowed. For example, \"placement*2015\" will return placements with names like \"placement June 2015\", \"placement May 2015\", or simply \"placements 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"placement\" will match placements with name \"my placement\", \"placement 2015\", or simply \"placement\".", + "location": "query", + "type": "string" + }, + "siteIds": { + "description": "Select only placements that are associated with these sites.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "sizeIds": { + "description": "Select only placements that are associated with these sizes.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "sortField": { + "default": "ID", + "description": "Field by which to sort the list.", + "enum": [ + "ID", + "NAME" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + }, + "sortOrder": { + "default": "ASCENDING", + "description": "Order of sorted results.", + "enum": [ + "ASCENDING", + "DESCENDING" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + } + }, + "path": "userprofiles/{profileId}/placements", + "response": { + "$ref": "PlacementsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "patch": { + "description": "Updates an existing placement. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "dfareporting.placements.patch", + "parameterOrder": [ + "profileId", + "id" + ], + "parameters": { + "id": { + "description": "Placement ID.", + "format": "int64", + "location": "query", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/placements", + "request": { + "$ref": "Placement" + }, + "response": { + "$ref": "Placement" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "update": { + "description": "Updates an existing placement.", + "httpMethod": "PUT", + "id": "dfareporting.placements.update", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/placements", + "request": { + "$ref": "Placement" + }, + "response": { + "$ref": "Placement" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "platformTypes": { + "methods": { + "get": { + "description": "Gets one platform type by ID.", + "httpMethod": "GET", + "id": "dfareporting.platformTypes.get", + "parameterOrder": [ + "profileId", + "id" + ], + "parameters": { + "id": { + "description": "Platform type ID.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/platformTypes/{id}", + "response": { + "$ref": "PlatformType" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "description": "Retrieves a list of platform types.", + "httpMethod": "GET", + "id": "dfareporting.platformTypes.list", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/platformTypes", + "response": { + "$ref": "PlatformTypesListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "postalCodes": { + "methods": { + "get": { + "description": "Gets one postal code by ID.", + "httpMethod": "GET", + "id": "dfareporting.postalCodes.get", + "parameterOrder": [ + "profileId", + "code" + ], + "parameters": { + "code": { + "description": "Postal code ID.", + "location": "path", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/postalCodes/{code}", + "response": { + "$ref": "PostalCode" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "description": "Retrieves a list of postal codes.", + "httpMethod": "GET", + "id": "dfareporting.postalCodes.list", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/postalCodes", + "response": { + "$ref": "PostalCodesListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "projects": { + "methods": { + "get": { + "description": "Gets one project by ID.", + "httpMethod": "GET", + "id": "dfareporting.projects.get", + "parameterOrder": [ + "profileId", + "id" + ], + "parameters": { + "id": { + "description": "Project ID.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/projects/{id}", + "response": { + "$ref": "Project" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "description": "Retrieves a list of projects, possibly filtered. This method supports paging.", + "httpMethod": "GET", + "id": "dfareporting.projects.list", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "advertiserIds": { + "description": "Select only projects with these advertiser IDs.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "ids": { + "description": "Select only projects with these IDs.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "maxResults": { + "default": "1000", + "description": "Maximum number of results to return.", + "format": "int32", + "location": "query", + "maximum": "1000", + "minimum": "0", + "type": "integer" + }, + "pageToken": { + "description": "Value of the nextPageToken from the previous result page.", + "location": "query", + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "searchString": { + "description": "Allows searching for projects by name or ID. Wildcards (*) are allowed. For example, \"project*2015\" will return projects with names like \"project June 2015\", \"project April 2015\", or simply \"project 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"project\" will match projects with name \"my project\", \"project 2015\", or simply \"project\".", + "location": "query", + "type": "string" + }, + "sortField": { + "default": "ID", + "description": "Field by which to sort the list.", + "enum": [ + "ID", + "NAME" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + }, + "sortOrder": { + "default": "ASCENDING", + "description": "Order of sorted results.", + "enum": [ + "ASCENDING", + "DESCENDING" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + } + }, + "path": "userprofiles/{profileId}/projects", + "response": { + "$ref": "ProjectsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "regions": { + "methods": { + "list": { + "description": "Retrieves a list of regions.", + "httpMethod": "GET", + "id": "dfareporting.regions.list", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/regions", + "response": { + "$ref": "RegionsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "remarketingListShares": { + "methods": { + "get": { + "description": "Gets one remarketing list share by remarketing list ID.", + "httpMethod": "GET", + "id": "dfareporting.remarketingListShares.get", + "parameterOrder": [ + "profileId", + "remarketingListId" + ], + "parameters": { + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "remarketingListId": { + "description": "Remarketing list ID.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/remarketingListShares/{remarketingListId}", + "response": { + "$ref": "RemarketingListShare" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "patch": { + "description": "Updates an existing remarketing list share. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "dfareporting.remarketingListShares.patch", + "parameterOrder": [ + "profileId", + "remarketingListId" + ], + "parameters": { + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "remarketingListId": { + "description": "Remarketing list ID.", + "format": "int64", + "location": "query", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/remarketingListShares", + "request": { + "$ref": "RemarketingListShare" + }, + "response": { + "$ref": "RemarketingListShare" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "update": { + "description": "Updates an existing remarketing list share.", + "httpMethod": "PUT", + "id": "dfareporting.remarketingListShares.update", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/remarketingListShares", + "request": { + "$ref": "RemarketingListShare" + }, + "response": { + "$ref": "RemarketingListShare" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "remarketingLists": { + "methods": { + "get": { + "description": "Gets one remarketing list by ID.", + "httpMethod": "GET", + "id": "dfareporting.remarketingLists.get", + "parameterOrder": [ + "profileId", + "id" + ], + "parameters": { + "id": { + "description": "Remarketing list ID.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/remarketingLists/{id}", + "response": { + "$ref": "RemarketingList" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "insert": { + "description": "Inserts a new remarketing list.", + "httpMethod": "POST", + "id": "dfareporting.remarketingLists.insert", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/remarketingLists", + "request": { + "$ref": "RemarketingList" + }, + "response": { + "$ref": "RemarketingList" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "description": "Retrieves a list of remarketing lists, possibly filtered. This method supports paging.", + "httpMethod": "GET", + "id": "dfareporting.remarketingLists.list", + "parameterOrder": [ + "profileId", + "advertiserId" + ], + "parameters": { + "active": { + "description": "Select only active or only inactive remarketing lists.", + "location": "query", + "type": "boolean" + }, + "advertiserId": { + "description": "Select only remarketing lists owned by this advertiser.", + "format": "int64", + "location": "query", + "required": true, + "type": "string" + }, + "floodlightActivityId": { + "description": "Select only remarketing lists that have this floodlight activity ID.", + "format": "int64", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "1000", + "description": "Maximum number of results to return.", + "format": "int32", + "location": "query", + "maximum": "1000", + "minimum": "0", + "type": "integer" + }, + "name": { + "description": "Allows searching for objects by name or ID. Wildcards (*) are allowed. For example, \"remarketing list*2015\" will return objects with names like \"remarketing list June 2015\", \"remarketing list April 2015\", or simply \"remarketing list 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"remarketing list\" will match objects with name \"my remarketing list\", \"remarketing list 2015\", or simply \"remarketing list\".", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Value of the nextPageToken from the previous result page.", + "location": "query", + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "sortField": { + "default": "ID", + "description": "Field by which to sort the list.", + "enum": [ + "ID", + "NAME" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + }, + "sortOrder": { + "default": "ASCENDING", + "description": "Order of sorted results.", + "enum": [ + "ASCENDING", + "DESCENDING" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + } + }, + "path": "userprofiles/{profileId}/remarketingLists", + "response": { + "$ref": "RemarketingListsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "patch": { + "description": "Updates an existing remarketing list. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "dfareporting.remarketingLists.patch", + "parameterOrder": [ + "profileId", + "id" + ], + "parameters": { + "id": { + "description": "Remarketing list ID.", + "format": "int64", + "location": "query", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/remarketingLists", + "request": { + "$ref": "RemarketingList" + }, + "response": { + "$ref": "RemarketingList" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "update": { + "description": "Updates an existing remarketing list.", + "httpMethod": "PUT", + "id": "dfareporting.remarketingLists.update", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/remarketingLists", + "request": { + "$ref": "RemarketingList" + }, + "response": { + "$ref": "RemarketingList" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "reports": { + "methods": { + "delete": { + "description": "Deletes a report by its ID.", + "httpMethod": "DELETE", + "id": "dfareporting.reports.delete", + "parameterOrder": [ + "profileId", + "reportId" + ], + "parameters": { + "profileId": { + "description": "The DFA user profile ID.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "reportId": { + "description": "The ID of the report.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/reports/{reportId}", + "scopes": [ + "https://www.googleapis.com/auth/dfareporting" + ] + }, + "get": { + "description": "Retrieves a report by its ID.", + "httpMethod": "GET", + "id": "dfareporting.reports.get", + "parameterOrder": [ + "profileId", + "reportId" + ], + "parameters": { + "profileId": { + "description": "The DFA user profile ID.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "reportId": { + "description": "The ID of the report.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/reports/{reportId}", + "response": { + "$ref": "Report" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfareporting" + ] + }, + "insert": { + "description": "Creates a report.", + "httpMethod": "POST", + "id": "dfareporting.reports.insert", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "profileId": { + "description": "The DFA user profile ID.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/reports", + "request": { + "$ref": "Report" + }, + "response": { + "$ref": "Report" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfareporting" + ] + }, + "list": { + "description": "Retrieves list of reports.", + "httpMethod": "GET", + "id": "dfareporting.reports.list", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "maxResults": { + "default": "10", + "description": "Maximum number of results to return.", + "format": "int32", + "location": "query", + "maximum": "10", + "minimum": "0", + "type": "integer" + }, + "pageToken": { + "description": "The value of the nextToken from the previous result page.", + "location": "query", + "type": "string" + }, + "profileId": { + "description": "The DFA user profile ID.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "scope": { + "default": "MINE", + "description": "The scope that defines which results are returned.", + "enum": [ + "ALL", + "MINE" + ], + "enumDescriptions": [ + "All reports in account.", + "My reports." + ], + "location": "query", + "type": "string" + }, + "sortField": { + "default": "LAST_MODIFIED_TIME", + "description": "The field by which to sort the list.", + "enum": [ + "ID", + "LAST_MODIFIED_TIME", + "NAME" + ], + "enumDescriptions": [ + "Sort by report ID.", + "Sort by 'lastModifiedTime' field.", + "Sort by name of reports." + ], + "location": "query", + "type": "string" + }, + "sortOrder": { + "default": "DESCENDING", + "description": "Order of sorted results.", + "enum": [ + "ASCENDING", + "DESCENDING" + ], + "enumDescriptions": [ + "Ascending order.", + "Descending order." + ], + "location": "query", + "type": "string" + } + }, + "path": "userprofiles/{profileId}/reports", + "response": { + "$ref": "ReportList" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfareporting" + ] + }, + "patch": { + "description": "Updates a report. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "dfareporting.reports.patch", + "parameterOrder": [ + "profileId", + "reportId" + ], + "parameters": { + "profileId": { + "description": "The DFA user profile ID.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "reportId": { + "description": "The ID of the report.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/reports/{reportId}", + "request": { + "$ref": "Report" + }, + "response": { + "$ref": "Report" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfareporting" + ] + }, + "run": { + "description": "Runs a report.", + "httpMethod": "POST", + "id": "dfareporting.reports.run", + "parameterOrder": [ + "profileId", + "reportId" + ], + "parameters": { + "profileId": { + "description": "The DFA profile ID.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "reportId": { + "description": "The ID of the report.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "synchronous": { + "default": "false", + "description": "If set and true, tries to run the report synchronously.", + "location": "query", + "type": "boolean" + } + }, + "path": "userprofiles/{profileId}/reports/{reportId}/run", + "response": { + "$ref": "File" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfareporting" + ] + }, + "update": { + "description": "Updates a report.", + "httpMethod": "PUT", + "id": "dfareporting.reports.update", + "parameterOrder": [ + "profileId", + "reportId" + ], + "parameters": { + "profileId": { + "description": "The DFA user profile ID.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "reportId": { + "description": "The ID of the report.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/reports/{reportId}", + "request": { + "$ref": "Report" + }, + "response": { + "$ref": "Report" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfareporting" + ] } - }, - "parameterOrder": [ - "profileId", - "reportId", - "fileId" - ], - "response": { - "$ref": "File" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfareporting" - ], - "supportsMediaDownload": true }, - "list": { - "id": "dfareporting.reports.files.list", - "path": "userprofiles/{profileId}/reports/{reportId}/files", - "httpMethod": "GET", - "description": "Lists files for a report.", - "parameters": { - "maxResults": { - "type": "integer", - "description": "Maximum number of results to return.", - "default": "10", - "format": "int32", - "minimum": "0", - "maximum": "10", - "location": "query" + "resources": { + "compatibleFields": { + "methods": { + "query": { + "description": "Returns the fields that are compatible to be selected in the respective sections of a report criteria, given the fields already selected in the input report and user permissions.", + "httpMethod": "POST", + "id": "dfareporting.reports.compatibleFields.query", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "profileId": { + "description": "The DFA user profile ID.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/reports/compatiblefields/query", + "request": { + "$ref": "Report" + }, + "response": { + "$ref": "CompatibleFields" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfareporting" + ] + } + } }, - "pageToken": { - "type": "string", - "description": "The value of the nextToken from the previous result page.", - "location": "query" + "files": { + "methods": { + "get": { + "description": "Retrieves a report file. This method supports media download.", + "httpMethod": "GET", + "id": "dfareporting.reports.files.get", + "parameterOrder": [ + "profileId", + "reportId", + "fileId" + ], + "parameters": { + "fileId": { + "description": "The ID of the report file.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "profileId": { + "description": "The DFA profile ID.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "reportId": { + "description": "The ID of the report.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/reports/{reportId}/files/{fileId}", + "response": { + "$ref": "File" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfareporting" + ], + "supportsMediaDownload": true + }, + "list": { + "description": "Lists files for a report.", + "httpMethod": "GET", + "id": "dfareporting.reports.files.list", + "parameterOrder": [ + "profileId", + "reportId" + ], + "parameters": { + "maxResults": { + "default": "10", + "description": "Maximum number of results to return.", + "format": "int32", + "location": "query", + "maximum": "10", + "minimum": "0", + "type": "integer" + }, + "pageToken": { + "description": "The value of the nextToken from the previous result page.", + "location": "query", + "type": "string" + }, + "profileId": { + "description": "The DFA profile ID.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "reportId": { + "description": "The ID of the parent report.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "sortField": { + "default": "LAST_MODIFIED_TIME", + "description": "The field by which to sort the list.", + "enum": [ + "ID", + "LAST_MODIFIED_TIME" + ], + "enumDescriptions": [ + "Sort by file ID.", + "Sort by 'lastmodifiedAt' field." + ], + "location": "query", + "type": "string" + }, + "sortOrder": { + "default": "DESCENDING", + "description": "Order of sorted results.", + "enum": [ + "ASCENDING", + "DESCENDING" + ], + "enumDescriptions": [ + "Ascending order.", + "Descending order." + ], + "location": "query", + "type": "string" + } + }, + "path": "userprofiles/{profileId}/reports/{reportId}/files", + "response": { + "$ref": "FileList" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfareporting" + ] + } + } + } + } + }, + "sites": { + "methods": { + "get": { + "description": "Gets one site by ID.", + "httpMethod": "GET", + "id": "dfareporting.sites.get", + "parameterOrder": [ + "profileId", + "id" + ], + "parameters": { + "id": { + "description": "Site ID.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/sites/{id}", + "response": { + "$ref": "Site" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] }, - "profileId": { - "type": "string", - "description": "The DFA profile ID.", - "required": true, - "format": "int64", - "location": "path" + "insert": { + "description": "Inserts a new site.", + "httpMethod": "POST", + "id": "dfareporting.sites.insert", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/sites", + "request": { + "$ref": "Site" + }, + "response": { + "$ref": "Site" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "description": "Retrieves a list of sites, possibly filtered. This method supports paging.", + "httpMethod": "GET", + "id": "dfareporting.sites.list", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "acceptsInStreamVideoPlacements": { + "description": "This search filter is no longer supported and will have no effect on the results returned.", + "location": "query", + "type": "boolean" + }, + "acceptsInterstitialPlacements": { + "description": "This search filter is no longer supported and will have no effect on the results returned.", + "location": "query", + "type": "boolean" + }, + "acceptsPublisherPaidPlacements": { + "description": "Select only sites that accept publisher paid placements.", + "location": "query", + "type": "boolean" + }, + "adWordsSite": { + "description": "Select only AdWords sites.", + "location": "query", + "type": "boolean" + }, + "approved": { + "description": "Select only approved sites.", + "location": "query", + "type": "boolean" + }, + "campaignIds": { + "description": "Select only sites with these campaign IDs.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "directorySiteIds": { + "description": "Select only sites with these directory site IDs.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "ids": { + "description": "Select only sites with these IDs.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "maxResults": { + "default": "1000", + "description": "Maximum number of results to return.", + "format": "int32", + "location": "query", + "maximum": "1000", + "minimum": "0", + "type": "integer" + }, + "pageToken": { + "description": "Value of the nextPageToken from the previous result page.", + "location": "query", + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "searchString": { + "description": "Allows searching for objects by name, ID or keyName. Wildcards (*) are allowed. For example, \"site*2015\" will return objects with names like \"site June 2015\", \"site April 2015\", or simply \"site 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"site\" will match objects with name \"my site\", \"site 2015\", or simply \"site\".", + "location": "query", + "type": "string" + }, + "sortField": { + "default": "ID", + "description": "Field by which to sort the list.", + "enum": [ + "ID", + "NAME" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + }, + "sortOrder": { + "default": "ASCENDING", + "description": "Order of sorted results.", + "enum": [ + "ASCENDING", + "DESCENDING" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + }, + "subaccountId": { + "description": "Select only sites with this subaccount ID.", + "format": "int64", + "location": "query", + "type": "string" + }, + "unmappedSite": { + "description": "Select only sites that have not been mapped to a directory site.", + "location": "query", + "type": "boolean" + } + }, + "path": "userprofiles/{profileId}/sites", + "response": { + "$ref": "SitesListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "patch": { + "description": "Updates an existing site. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "dfareporting.sites.patch", + "parameterOrder": [ + "profileId", + "id" + ], + "parameters": { + "id": { + "description": "Site ID.", + "format": "int64", + "location": "query", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/sites", + "request": { + "$ref": "Site" + }, + "response": { + "$ref": "Site" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "update": { + "description": "Updates an existing site.", + "httpMethod": "PUT", + "id": "dfareporting.sites.update", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/sites", + "request": { + "$ref": "Site" + }, + "response": { + "$ref": "Site" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "sizes": { + "methods": { + "get": { + "description": "Gets one size by ID.", + "httpMethod": "GET", + "id": "dfareporting.sizes.get", + "parameterOrder": [ + "profileId", + "id" + ], + "parameters": { + "id": { + "description": "Size ID.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/sizes/{id}", + "response": { + "$ref": "Size" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "insert": { + "description": "Inserts a new size.", + "httpMethod": "POST", + "id": "dfareporting.sizes.insert", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/sizes", + "request": { + "$ref": "Size" + }, + "response": { + "$ref": "Size" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "description": "Retrieves a list of sizes, possibly filtered.", + "httpMethod": "GET", + "id": "dfareporting.sizes.list", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "height": { + "description": "Select only sizes with this height.", + "format": "int32", + "location": "query", + "maximum": "32767", + "minimum": "0", + "type": "integer" + }, + "iabStandard": { + "description": "Select only IAB standard sizes.", + "location": "query", + "type": "boolean" + }, + "ids": { + "description": "Select only sizes with these IDs.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "width": { + "description": "Select only sizes with this width.", + "format": "int32", + "location": "query", + "maximum": "32767", + "minimum": "0", + "type": "integer" + } + }, + "path": "userprofiles/{profileId}/sizes", + "response": { + "$ref": "SizesListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "subaccounts": { + "methods": { + "get": { + "description": "Gets one subaccount by ID.", + "httpMethod": "GET", + "id": "dfareporting.subaccounts.get", + "parameterOrder": [ + "profileId", + "id" + ], + "parameters": { + "id": { + "description": "Subaccount ID.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/subaccounts/{id}", + "response": { + "$ref": "Subaccount" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "insert": { + "description": "Inserts a new subaccount.", + "httpMethod": "POST", + "id": "dfareporting.subaccounts.insert", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/subaccounts", + "request": { + "$ref": "Subaccount" + }, + "response": { + "$ref": "Subaccount" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "description": "Gets a list of subaccounts, possibly filtered. This method supports paging.", + "httpMethod": "GET", + "id": "dfareporting.subaccounts.list", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "ids": { + "description": "Select only subaccounts with these IDs.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "maxResults": { + "default": "1000", + "description": "Maximum number of results to return.", + "format": "int32", + "location": "query", + "maximum": "1000", + "minimum": "0", + "type": "integer" + }, + "pageToken": { + "description": "Value of the nextPageToken from the previous result page.", + "location": "query", + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "searchString": { + "description": "Allows searching for objects by name or ID. Wildcards (*) are allowed. For example, \"subaccount*2015\" will return objects with names like \"subaccount June 2015\", \"subaccount April 2015\", or simply \"subaccount 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"subaccount\" will match objects with name \"my subaccount\", \"subaccount 2015\", or simply \"subaccount\".", + "location": "query", + "type": "string" + }, + "sortField": { + "default": "ID", + "description": "Field by which to sort the list.", + "enum": [ + "ID", + "NAME" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + }, + "sortOrder": { + "default": "ASCENDING", + "description": "Order of sorted results.", + "enum": [ + "ASCENDING", + "DESCENDING" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + } + }, + "path": "userprofiles/{profileId}/subaccounts", + "response": { + "$ref": "SubaccountsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "patch": { + "description": "Updates an existing subaccount. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "dfareporting.subaccounts.patch", + "parameterOrder": [ + "profileId", + "id" + ], + "parameters": { + "id": { + "description": "Subaccount ID.", + "format": "int64", + "location": "query", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/subaccounts", + "request": { + "$ref": "Subaccount" + }, + "response": { + "$ref": "Subaccount" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "update": { + "description": "Updates an existing subaccount.", + "httpMethod": "PUT", + "id": "dfareporting.subaccounts.update", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/subaccounts", + "request": { + "$ref": "Subaccount" + }, + "response": { + "$ref": "Subaccount" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "targetableRemarketingLists": { + "methods": { + "get": { + "description": "Gets one remarketing list by ID.", + "httpMethod": "GET", + "id": "dfareporting.targetableRemarketingLists.get", + "parameterOrder": [ + "profileId", + "id" + ], + "parameters": { + "id": { + "description": "Remarketing list ID.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/targetableRemarketingLists/{id}", + "response": { + "$ref": "TargetableRemarketingList" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "description": "Retrieves a list of targetable remarketing lists, possibly filtered. This method supports paging.", + "httpMethod": "GET", + "id": "dfareporting.targetableRemarketingLists.list", + "parameterOrder": [ + "profileId", + "advertiserId" + ], + "parameters": { + "active": { + "description": "Select only active or only inactive targetable remarketing lists.", + "location": "query", + "type": "boolean" + }, + "advertiserId": { + "description": "Select only targetable remarketing lists targetable by these advertisers.", + "format": "int64", + "location": "query", + "required": true, + "type": "string" + }, + "maxResults": { + "default": "1000", + "description": "Maximum number of results to return.", + "format": "int32", + "location": "query", + "maximum": "1000", + "minimum": "0", + "type": "integer" + }, + "name": { + "description": "Allows searching for objects by name or ID. Wildcards (*) are allowed. For example, \"remarketing list*2015\" will return objects with names like \"remarketing list June 2015\", \"remarketing list April 2015\", or simply \"remarketing list 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"remarketing list\" will match objects with name \"my remarketing list\", \"remarketing list 2015\", or simply \"remarketing list\".", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Value of the nextPageToken from the previous result page.", + "location": "query", + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "sortField": { + "default": "ID", + "description": "Field by which to sort the list.", + "enum": [ + "ID", + "NAME" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + }, + "sortOrder": { + "default": "ASCENDING", + "description": "Order of sorted results.", + "enum": [ + "ASCENDING", + "DESCENDING" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + } + }, + "path": "userprofiles/{profileId}/targetableRemarketingLists", + "response": { + "$ref": "TargetableRemarketingListsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "targetingTemplates": { + "methods": { + "get": { + "description": "Gets one targeting template by ID.", + "httpMethod": "GET", + "id": "dfareporting.targetingTemplates.get", + "parameterOrder": [ + "profileId", + "id" + ], + "parameters": { + "id": { + "description": "Targeting template ID.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/targetingTemplates/{id}", + "response": { + "$ref": "TargetingTemplate" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "insert": { + "description": "Inserts a new targeting template.", + "httpMethod": "POST", + "id": "dfareporting.targetingTemplates.insert", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/targetingTemplates", + "request": { + "$ref": "TargetingTemplate" + }, + "response": { + "$ref": "TargetingTemplate" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "description": "Retrieves a list of targeting templates, optionally filtered. This method supports paging.", + "httpMethod": "GET", + "id": "dfareporting.targetingTemplates.list", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "advertiserId": { + "description": "Select only targeting templates with this advertiser ID.", + "format": "int64", + "location": "query", + "type": "string" + }, + "ids": { + "description": "Select only targeting templates with these IDs.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "maxResults": { + "default": "1000", + "description": "Maximum number of results to return.", + "format": "int32", + "location": "query", + "maximum": "1000", + "minimum": "0", + "type": "integer" + }, + "pageToken": { + "description": "Value of the nextPageToken from the previous result page.", + "location": "query", + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "searchString": { + "description": "Allows searching for objects by name or ID. Wildcards (*) are allowed. For example, \"template*2015\" will return objects with names like \"template June 2015\", \"template April 2015\", or simply \"template 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"template\" will match objects with name \"my template\", \"template 2015\", or simply \"template\".", + "location": "query", + "type": "string" + }, + "sortField": { + "default": "ID", + "description": "Field by which to sort the list.", + "enum": [ + "ID", + "NAME" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + }, + "sortOrder": { + "default": "ASCENDING", + "description": "Order of sorted results.", + "enum": [ + "ASCENDING", + "DESCENDING" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + } + }, + "path": "userprofiles/{profileId}/targetingTemplates", + "response": { + "$ref": "TargetingTemplatesListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "patch": { + "description": "Updates an existing targeting template. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "dfareporting.targetingTemplates.patch", + "parameterOrder": [ + "profileId", + "id" + ], + "parameters": { + "id": { + "description": "Targeting template ID.", + "format": "int64", + "location": "query", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/targetingTemplates", + "request": { + "$ref": "TargetingTemplate" + }, + "response": { + "$ref": "TargetingTemplate" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "update": { + "description": "Updates an existing targeting template.", + "httpMethod": "PUT", + "id": "dfareporting.targetingTemplates.update", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/targetingTemplates", + "request": { + "$ref": "TargetingTemplate" + }, + "response": { + "$ref": "TargetingTemplate" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "userProfiles": { + "methods": { + "get": { + "description": "Gets one user profile by ID.", + "httpMethod": "GET", + "id": "dfareporting.userProfiles.get", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "profileId": { + "description": "The user profile ID.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}", + "response": { + "$ref": "UserProfile" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfareporting", + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "description": "Retrieves list of user profiles for a user.", + "httpMethod": "GET", + "id": "dfareporting.userProfiles.list", + "path": "userprofiles", + "response": { + "$ref": "UserProfileList" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfareporting", + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "userRolePermissionGroups": { + "methods": { + "get": { + "description": "Gets one user role permission group by ID.", + "httpMethod": "GET", + "id": "dfareporting.userRolePermissionGroups.get", + "parameterOrder": [ + "profileId", + "id" + ], + "parameters": { + "id": { + "description": "User role permission group ID.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/userRolePermissionGroups/{id}", + "response": { + "$ref": "UserRolePermissionGroup" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "description": "Gets a list of all supported user role permission groups.", + "httpMethod": "GET", + "id": "dfareporting.userRolePermissionGroups.list", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/userRolePermissionGroups", + "response": { + "$ref": "UserRolePermissionGroupsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "userRolePermissions": { + "methods": { + "get": { + "description": "Gets one user role permission by ID.", + "httpMethod": "GET", + "id": "dfareporting.userRolePermissions.get", + "parameterOrder": [ + "profileId", + "id" + ], + "parameters": { + "id": { + "description": "User role permission ID.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/userRolePermissions/{id}", + "response": { + "$ref": "UserRolePermission" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "description": "Gets a list of user role permissions, possibly filtered.", + "httpMethod": "GET", + "id": "dfareporting.userRolePermissions.list", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "ids": { + "description": "Select only user role permissions with these IDs.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/userRolePermissions", + "response": { + "$ref": "UserRolePermissionsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "userRoles": { + "methods": { + "delete": { + "description": "Deletes an existing user role.", + "httpMethod": "DELETE", + "id": "dfareporting.userRoles.delete", + "parameterOrder": [ + "profileId", + "id" + ], + "parameters": { + "id": { + "description": "User role ID.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/userRoles/{id}", + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "get": { + "description": "Gets one user role by ID.", + "httpMethod": "GET", + "id": "dfareporting.userRoles.get", + "parameterOrder": [ + "profileId", + "id" + ], + "parameters": { + "id": { + "description": "User role ID.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/userRoles/{id}", + "response": { + "$ref": "UserRole" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "insert": { + "description": "Inserts a new user role.", + "httpMethod": "POST", + "id": "dfareporting.userRoles.insert", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/userRoles", + "request": { + "$ref": "UserRole" + }, + "response": { + "$ref": "UserRole" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "description": "Retrieves a list of user roles, possibly filtered. This method supports paging.", + "httpMethod": "GET", + "id": "dfareporting.userRoles.list", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "accountUserRoleOnly": { + "description": "Select only account level user roles not associated with any specific subaccount.", + "location": "query", + "type": "boolean" + }, + "ids": { + "description": "Select only user roles with the specified IDs.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + }, + "maxResults": { + "default": "1000", + "description": "Maximum number of results to return.", + "format": "int32", + "location": "query", + "maximum": "1000", + "minimum": "0", + "type": "integer" + }, + "pageToken": { + "description": "Value of the nextPageToken from the previous result page.", + "location": "query", + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "searchString": { + "description": "Allows searching for objects by name or ID. Wildcards (*) are allowed. For example, \"userrole*2015\" will return objects with names like \"userrole June 2015\", \"userrole April 2015\", or simply \"userrole 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"userrole\" will match objects with name \"my userrole\", \"userrole 2015\", or simply \"userrole\".", + "location": "query", + "type": "string" + }, + "sortField": { + "default": "ID", + "description": "Field by which to sort the list.", + "enum": [ + "ID", + "NAME" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + }, + "sortOrder": { + "default": "ASCENDING", + "description": "Order of sorted results.", + "enum": [ + "ASCENDING", + "DESCENDING" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + }, + "subaccountId": { + "description": "Select only user roles that belong to this subaccount.", + "format": "int64", + "location": "query", + "type": "string" + } + }, + "path": "userprofiles/{profileId}/userRoles", + "response": { + "$ref": "UserRolesListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "patch": { + "description": "Updates an existing user role. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "dfareporting.userRoles.patch", + "parameterOrder": [ + "profileId", + "id" + ], + "parameters": { + "id": { + "description": "User role ID.", + "format": "int64", + "location": "query", + "required": true, + "type": "string" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/userRoles", + "request": { + "$ref": "UserRole" + }, + "response": { + "$ref": "UserRole" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "update": { + "description": "Updates an existing user role.", + "httpMethod": "PUT", + "id": "dfareporting.userRoles.update", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/userRoles", + "request": { + "$ref": "UserRole" + }, + "response": { + "$ref": "UserRole" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "videoFormats": { + "methods": { + "get": { + "description": "Gets one video format by ID.", + "httpMethod": "GET", + "id": "dfareporting.videoFormats.get", + "parameterOrder": [ + "profileId", + "id" + ], + "parameters": { + "id": { + "description": "Video format ID.", + "format": "int32", + "location": "path", + "required": true, + "type": "integer" + }, + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/videoFormats/{id}", + "response": { + "$ref": "VideoFormat" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "description": "Lists available video formats.", + "httpMethod": "GET", + "id": "dfareporting.videoFormats.list", + "parameterOrder": [ + "profileId" + ], + "parameters": { + "profileId": { + "description": "User profile ID associated with this request.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "userprofiles/{profileId}/videoFormats", + "response": { + "$ref": "VideoFormatsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + } + }, + "revision": "20171109", + "rootUrl": "https://www.googleapis.com/", + "schemas": { + "Account": { + "description": "Contains properties of a DCM account.", + "id": "Account", + "properties": { + "accountPermissionIds": { + "description": "Account permissions assigned to this account.", + "items": { + "format": "int64", + "type": "string" + }, + "type": "array" + }, + "accountProfile": { + "description": "Profile for this account. This is a read-only field that can be left blank.", + "enum": [ + "ACCOUNT_PROFILE_BASIC", + "ACCOUNT_PROFILE_STANDARD" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "active": { + "description": "Whether this account is active.", + "type": "boolean" + }, + "activeAdsLimitTier": { + "description": "Maximum number of active ads allowed for this account.", + "enum": [ + "ACTIVE_ADS_TIER_100K", + "ACTIVE_ADS_TIER_1M", + "ACTIVE_ADS_TIER_200K", + "ACTIVE_ADS_TIER_300K", + "ACTIVE_ADS_TIER_40K", + "ACTIVE_ADS_TIER_500K", + "ACTIVE_ADS_TIER_750K", + "ACTIVE_ADS_TIER_75K" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "activeViewOptOut": { + "description": "Whether to serve creatives with Active View tags. If disabled, viewability data will not be available for any impressions.", + "type": "boolean" + }, + "availablePermissionIds": { + "description": "User role permissions available to the user roles of this account.", + "items": { + "format": "int64", + "type": "string" + }, + "type": "array" + }, + "countryId": { + "description": "ID of the country associated with this account.", + "format": "int64", + "type": "string" + }, + "currencyId": { + "description": "ID of currency associated with this account. This is a required field.\nAcceptable values are: \n- \"1\" for USD \n- \"2\" for GBP \n- \"3\" for ESP \n- \"4\" for SEK \n- \"5\" for CAD \n- \"6\" for JPY \n- \"7\" for DEM \n- \"8\" for AUD \n- \"9\" for FRF \n- \"10\" for ITL \n- \"11\" for DKK \n- \"12\" for NOK \n- \"13\" for FIM \n- \"14\" for ZAR \n- \"15\" for IEP \n- \"16\" for NLG \n- \"17\" for EUR \n- \"18\" for KRW \n- \"19\" for TWD \n- \"20\" for SGD \n- \"21\" for CNY \n- \"22\" for HKD \n- \"23\" for NZD \n- \"24\" for MYR \n- \"25\" for BRL \n- \"26\" for PTE \n- \"27\" for MXP \n- \"28\" for CLP \n- \"29\" for TRY \n- \"30\" for ARS \n- \"31\" for PEN \n- \"32\" for ILS \n- \"33\" for CHF \n- \"34\" for VEF \n- \"35\" for COP \n- \"36\" for GTQ \n- \"37\" for PLN \n- \"39\" for INR \n- \"40\" for THB \n- \"41\" for IDR \n- \"42\" for CZK \n- \"43\" for RON \n- \"44\" for HUF \n- \"45\" for RUB \n- \"46\" for AED \n- \"47\" for BGN \n- \"48\" for HRK \n- \"49\" for MXN \n- \"50\" for NGN", + "format": "int64", + "type": "string" + }, + "defaultCreativeSizeId": { + "description": "Default placement dimensions for this account.", + "format": "int64", + "type": "string" + }, + "description": { + "description": "Description of this account.", + "type": "string" + }, + "id": { + "description": "ID of this account. This is a read-only, auto-generated field.", + "format": "int64", + "type": "string" + }, + "kind": { + "default": "dfareporting#account", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#account\".", + "type": "string" + }, + "locale": { + "description": "Locale of this account.\nAcceptable values are: \n- \"cs\" (Czech) \n- \"de\" (German) \n- \"en\" (English) \n- \"en-GB\" (English United Kingdom) \n- \"es\" (Spanish) \n- \"fr\" (French) \n- \"it\" (Italian) \n- \"ja\" (Japanese) \n- \"ko\" (Korean) \n- \"pl\" (Polish) \n- \"pt-BR\" (Portuguese Brazil) \n- \"ru\" (Russian) \n- \"sv\" (Swedish) \n- \"tr\" (Turkish) \n- \"zh-CN\" (Chinese Simplified) \n- \"zh-TW\" (Chinese Traditional)", + "type": "string" + }, + "maximumImageSize": { + "description": "Maximum image size allowed for this account, in kilobytes. Value must be greater than or equal to 1.", + "format": "int64", + "type": "string" + }, + "name": { + "description": "Name of this account. This is a required field, and must be less than 128 characters long and be globally unique.", + "type": "string" + }, + "nielsenOcrEnabled": { + "description": "Whether campaigns created in this account will be enabled for Nielsen OCR reach ratings by default.", + "type": "boolean" + }, + "reportsConfiguration": { + "$ref": "ReportsConfiguration", + "description": "Reporting configuration of this account." + }, + "shareReportsWithTwitter": { + "description": "Share Path to Conversion reports with Twitter.", + "type": "boolean" + }, + "teaserSizeLimit": { + "description": "File size limit in kilobytes of Rich Media teaser creatives. Acceptable values are 1 to 10240, inclusive.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "AccountActiveAdSummary": { + "description": "Gets a summary of active ads in an account.", + "id": "AccountActiveAdSummary", + "properties": { + "accountId": { + "description": "ID of the account.", + "format": "int64", + "type": "string" + }, + "activeAds": { + "description": "Ads that have been activated for the account", + "format": "int64", + "type": "string" + }, + "activeAdsLimitTier": { + "description": "Maximum number of active ads allowed for the account.", + "enum": [ + "ACTIVE_ADS_TIER_100K", + "ACTIVE_ADS_TIER_1M", + "ACTIVE_ADS_TIER_200K", + "ACTIVE_ADS_TIER_300K", + "ACTIVE_ADS_TIER_40K", + "ACTIVE_ADS_TIER_500K", + "ACTIVE_ADS_TIER_750K", + "ACTIVE_ADS_TIER_75K" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "availableAds": { + "description": "Ads that can be activated for the account.", + "format": "int64", + "type": "string" + }, + "kind": { + "default": "dfareporting#accountActiveAdSummary", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#accountActiveAdSummary\".", + "type": "string" + } + }, + "type": "object" + }, + "AccountPermission": { + "description": "AccountPermissions contains information about a particular account permission. Some features of DCM require an account permission to be present in the account.", + "id": "AccountPermission", + "properties": { + "accountProfiles": { + "description": "Account profiles associated with this account permission.\n\nPossible values are:\n- \"ACCOUNT_PROFILE_BASIC\"\n- \"ACCOUNT_PROFILE_STANDARD\"", + "items": { + "enum": [ + "ACCOUNT_PROFILE_BASIC", + "ACCOUNT_PROFILE_STANDARD" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "type": "array" + }, + "id": { + "description": "ID of this account permission.", + "format": "int64", + "type": "string" + }, + "kind": { + "default": "dfareporting#accountPermission", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#accountPermission\".", + "type": "string" + }, + "level": { + "description": "Administrative level required to enable this account permission.", + "enum": [ + "ADMINISTRATOR", + "USER" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "name": { + "description": "Name of this account permission.", + "type": "string" + }, + "permissionGroupId": { + "description": "Permission group of this account permission.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "AccountPermissionGroup": { + "description": "AccountPermissionGroups contains a mapping of permission group IDs to names. A permission group is a grouping of account permissions.", + "id": "AccountPermissionGroup", + "properties": { + "id": { + "description": "ID of this account permission group.", + "format": "int64", + "type": "string" + }, + "kind": { + "default": "dfareporting#accountPermissionGroup", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#accountPermissionGroup\".", + "type": "string" + }, + "name": { + "description": "Name of this account permission group.", + "type": "string" + } + }, + "type": "object" + }, + "AccountPermissionGroupsListResponse": { + "description": "Account Permission Group List Response", + "id": "AccountPermissionGroupsListResponse", + "properties": { + "accountPermissionGroups": { + "description": "Account permission group collection.", + "items": { + "$ref": "AccountPermissionGroup" + }, + "type": "array" + }, + "kind": { + "default": "dfareporting#accountPermissionGroupsListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#accountPermissionGroupsListResponse\".", + "type": "string" + } + }, + "type": "object" + }, + "AccountPermissionsListResponse": { + "description": "Account Permission List Response", + "id": "AccountPermissionsListResponse", + "properties": { + "accountPermissions": { + "description": "Account permission collection.", + "items": { + "$ref": "AccountPermission" + }, + "type": "array" + }, + "kind": { + "default": "dfareporting#accountPermissionsListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#accountPermissionsListResponse\".", + "type": "string" + } + }, + "type": "object" + }, + "AccountUserProfile": { + "description": "AccountUserProfiles contains properties of a DCM user profile. This resource is specifically for managing user profiles, whereas UserProfiles is for accessing the API.", + "id": "AccountUserProfile", + "properties": { + "accountId": { + "description": "Account ID of the user profile. This is a read-only field that can be left blank.", + "format": "int64", + "type": "string" + }, + "active": { + "description": "Whether this user profile is active. This defaults to false, and must be set true on insert for the user profile to be usable.", + "type": "boolean" + }, + "advertiserFilter": { + "$ref": "ObjectFilter", + "description": "Filter that describes which advertisers are visible to the user profile." + }, + "campaignFilter": { + "$ref": "ObjectFilter", + "description": "Filter that describes which campaigns are visible to the user profile." + }, + "comments": { + "description": "Comments for this user profile.", + "type": "string" + }, + "email": { + "description": "Email of the user profile. The email addresss must be linked to a Google Account. This field is required on insertion and is read-only after insertion.", + "type": "string" + }, + "id": { + "description": "ID of the user profile. This is a read-only, auto-generated field.", + "format": "int64", + "type": "string" + }, + "kind": { + "default": "dfareporting#accountUserProfile", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#accountUserProfile\".", + "type": "string" + }, + "locale": { + "description": "Locale of the user profile. This is a required field.\nAcceptable values are: \n- \"cs\" (Czech) \n- \"de\" (German) \n- \"en\" (English) \n- \"en-GB\" (English United Kingdom) \n- \"es\" (Spanish) \n- \"fr\" (French) \n- \"it\" (Italian) \n- \"ja\" (Japanese) \n- \"ko\" (Korean) \n- \"pl\" (Polish) \n- \"pt-BR\" (Portuguese Brazil)\n- \"ru\" (Russian) \n- \"sv\" (Swedish) \n- \"tr\" (Turkish) \n- \"zh-CN\" (Chinese Simplified) \n- \"zh-TW\" (Chinese Traditional)", + "type": "string" + }, + "name": { + "description": "Name of the user profile. This is a required field. Must be less than 64 characters long, must be globally unique, and cannot contain whitespace or any of the following characters: \"\u0026;\"#%,\".", + "type": "string" + }, + "siteFilter": { + "$ref": "ObjectFilter", + "description": "Filter that describes which sites are visible to the user profile." + }, + "subaccountId": { + "description": "Subaccount ID of the user profile. This is a read-only field that can be left blank.", + "format": "int64", + "type": "string" + }, + "traffickerType": { + "description": "Trafficker type of this user profile.", + "enum": [ + "EXTERNAL_TRAFFICKER", + "INTERNAL_NON_TRAFFICKER", + "INTERNAL_TRAFFICKER" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, + "userAccessType": { + "description": "User type of the user profile. This is a read-only field that can be left blank.", + "enum": [ + "INTERNAL_ADMINISTRATOR", + "NORMAL_USER", + "READ_ONLY_SUPER_USER", + "SUPER_USER" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ], + "type": "string" + }, + "userRoleFilter": { + "$ref": "ObjectFilter", + "description": "Filter that describes which user roles are visible to the user profile." + }, + "userRoleId": { + "description": "User role ID of the user profile. This is a required field.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "AccountUserProfilesListResponse": { + "description": "Account User Profile List Response", + "id": "AccountUserProfilesListResponse", + "properties": { + "accountUserProfiles": { + "description": "Account user profile collection.", + "items": { + "$ref": "AccountUserProfile" + }, + "type": "array" + }, + "kind": { + "default": "dfareporting#accountUserProfilesListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#accountUserProfilesListResponse\".", + "type": "string" + }, + "nextPageToken": { + "description": "Pagination token to be used for the next list operation.", + "type": "string" + } + }, + "type": "object" + }, + "AccountsListResponse": { + "description": "Account List Response", + "id": "AccountsListResponse", + "properties": { + "accounts": { + "description": "Account collection.", + "items": { + "$ref": "Account" + }, + "type": "array" + }, + "kind": { + "default": "dfareporting#accountsListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#accountsListResponse\".", + "type": "string" + }, + "nextPageToken": { + "description": "Pagination token to be used for the next list operation.", + "type": "string" + } + }, + "type": "object" + }, + "Activities": { + "description": "Represents an activity group.", + "id": "Activities", + "properties": { + "filters": { + "description": "List of activity filters. The dimension values need to be all either of type \"dfa:activity\" or \"dfa:activityGroup\".", + "items": { + "$ref": "DimensionValue" + }, + "type": "array" + }, + "kind": { + "default": "dfareporting#activities", + "description": "The kind of resource this is, in this case dfareporting#activities.", + "type": "string" + }, + "metricNames": { + "description": "List of names of floodlight activity metrics.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "Ad": { + "description": "Contains properties of a DCM ad.", + "id": "Ad", + "properties": { + "accountId": { + "description": "Account ID of this ad. This is a read-only field that can be left blank.", + "format": "int64", + "type": "string" + }, + "active": { + "description": "Whether this ad is active. When true, archived must be false.", + "type": "boolean" + }, + "advertiserId": { + "description": "Advertiser ID of this ad. This is a required field on insertion.", + "format": "int64", + "type": "string" + }, + "advertiserIdDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of the advertiser. This is a read-only, auto-generated field." + }, + "archived": { + "description": "Whether this ad is archived. When true, active must be false.", + "type": "boolean" + }, + "audienceSegmentId": { + "description": "Audience segment ID that is being targeted for this ad. Applicable when type is AD_SERVING_STANDARD_AD.", + "format": "int64", + "type": "string" + }, + "campaignId": { + "description": "Campaign ID of this ad. This is a required field on insertion.", + "format": "int64", + "type": "string" + }, + "campaignIdDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of the campaign. This is a read-only, auto-generated field." + }, + "clickThroughUrl": { + "$ref": "ClickThroughUrl", + "description": "Click-through URL for this ad. This is a required field on insertion. Applicable when type is AD_SERVING_CLICK_TRACKER." + }, + "clickThroughUrlSuffixProperties": { + "$ref": "ClickThroughUrlSuffixProperties", + "description": "Click-through URL suffix properties for this ad. Applies to the URL in the ad or (if overriding ad properties) the URL in the creative." + }, + "comments": { + "description": "Comments for this ad.", + "type": "string" + }, + "compatibility": { + "description": "Compatibility of this ad. Applicable when type is AD_SERVING_DEFAULT_AD. DISPLAY and DISPLAY_INTERSTITIAL refer to either rendering on desktop or on mobile devices or in mobile apps for regular or interstitial ads, respectively. APP and APP_INTERSTITIAL are only used for existing default ads. New mobile placements must be assigned DISPLAY or DISPLAY_INTERSTITIAL and default ads created for those placements will be limited to those compatibility types. IN_STREAM_VIDEO refers to rendering in-stream video ads developed with the VAST standard.", + "enum": [ + "APP", + "APP_INTERSTITIAL", + "DISPLAY", + "DISPLAY_INTERSTITIAL", + "IN_STREAM_VIDEO" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "createInfo": { + "$ref": "LastModifiedInfo", + "description": "Information about the creation of this ad. This is a read-only field." + }, + "creativeGroupAssignments": { + "description": "Creative group assignments for this ad. Applicable when type is AD_SERVING_CLICK_TRACKER. Only one assignment per creative group number is allowed for a maximum of two assignments.", + "items": { + "$ref": "CreativeGroupAssignment" + }, + "type": "array" + }, + "creativeRotation": { + "$ref": "CreativeRotation", + "description": "Creative rotation for this ad. Applicable when type is AD_SERVING_DEFAULT_AD, AD_SERVING_STANDARD_AD, or AD_SERVING_TRACKING. When type is AD_SERVING_DEFAULT_AD, this field should have exactly one creativeAssignment." + }, + "dayPartTargeting": { + "$ref": "DayPartTargeting", + "description": "Time and day targeting information for this ad. This field must be left blank if the ad is using a targeting template. Applicable when type is AD_SERVING_STANDARD_AD." + }, + "defaultClickThroughEventTagProperties": { + "$ref": "DefaultClickThroughEventTagProperties", + "description": "Default click-through event tag properties for this ad." + }, + "deliverySchedule": { + "$ref": "DeliverySchedule", + "description": "Delivery schedule information for this ad. Applicable when type is AD_SERVING_STANDARD_AD or AD_SERVING_TRACKING. This field along with subfields priority and impressionRatio are required on insertion when type is AD_SERVING_STANDARD_AD." + }, + "dynamicClickTracker": { + "description": "Whether this ad is a dynamic click tracker. Applicable when type is AD_SERVING_CLICK_TRACKER. This is a required field on insert, and is read-only after insert.", + "type": "boolean" + }, + "endTime": { + "description": "Date and time that this ad should stop serving. Must be later than the start time. This is a required field on insertion.", + "format": "date-time", + "type": "string" + }, + "eventTagOverrides": { + "description": "Event tag overrides for this ad.", + "items": { + "$ref": "EventTagOverride" + }, + "type": "array" + }, + "geoTargeting": { + "$ref": "GeoTargeting", + "description": "Geographical targeting information for this ad. This field must be left blank if the ad is using a targeting template. Applicable when type is AD_SERVING_STANDARD_AD." + }, + "id": { + "description": "ID of this ad. This is a read-only, auto-generated field.", + "format": "int64", + "type": "string" + }, + "idDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of this ad. This is a read-only, auto-generated field." + }, + "keyValueTargetingExpression": { + "$ref": "KeyValueTargetingExpression", + "description": "Key-value targeting information for this ad. This field must be left blank if the ad is using a targeting template. Applicable when type is AD_SERVING_STANDARD_AD." + }, + "kind": { + "default": "dfareporting#ad", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#ad\".", + "type": "string" + }, + "languageTargeting": { + "$ref": "LanguageTargeting", + "description": "Language targeting information for this ad. This field must be left blank if the ad is using a targeting template. Applicable when type is AD_SERVING_STANDARD_AD." + }, + "lastModifiedInfo": { + "$ref": "LastModifiedInfo", + "description": "Information about the most recent modification of this ad. This is a read-only field." + }, + "name": { + "description": "Name of this ad. This is a required field and must be less than 256 characters long.", + "type": "string" + }, + "placementAssignments": { + "description": "Placement assignments for this ad.", + "items": { + "$ref": "PlacementAssignment" + }, + "type": "array" + }, + "remarketingListExpression": { + "$ref": "ListTargetingExpression", + "description": "Remarketing list targeting expression for this ad. This field must be left blank if the ad is using a targeting template. Applicable when type is AD_SERVING_STANDARD_AD." + }, + "size": { + "$ref": "Size", + "description": "Size of this ad. Applicable when type is AD_SERVING_DEFAULT_AD." + }, + "sslCompliant": { + "description": "Whether this ad is ssl compliant. This is a read-only field that is auto-generated when the ad is inserted or updated.", + "type": "boolean" + }, + "sslRequired": { + "description": "Whether this ad requires ssl. This is a read-only field that is auto-generated when the ad is inserted or updated.", + "type": "boolean" + }, + "startTime": { + "description": "Date and time that this ad should start serving. If creating an ad, this field must be a time in the future. This is a required field on insertion.", + "format": "date-time", + "type": "string" + }, + "subaccountId": { + "description": "Subaccount ID of this ad. This is a read-only field that can be left blank.", + "format": "int64", + "type": "string" + }, + "targetingTemplateId": { + "description": "Targeting template ID, used to apply preconfigured targeting information to this ad. This cannot be set while any of dayPartTargeting, geoTargeting, keyValueTargetingExpression, languageTargeting, remarketingListExpression, or technologyTargeting are set. Applicable when type is AD_SERVING_STANDARD_AD.", + "format": "int64", + "type": "string" + }, + "technologyTargeting": { + "$ref": "TechnologyTargeting", + "description": "Technology platform targeting information for this ad. This field must be left blank if the ad is using a targeting template. Applicable when type is AD_SERVING_STANDARD_AD." + }, + "type": { + "description": "Type of ad. This is a required field on insertion. Note that default ads (AD_SERVING_DEFAULT_AD) cannot be created directly (see Creative resource).", + "enum": [ + "AD_SERVING_CLICK_TRACKER", + "AD_SERVING_DEFAULT_AD", + "AD_SERVING_STANDARD_AD", + "AD_SERVING_TRACKING" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "AdBlockingConfiguration": { + "description": "Campaign ad blocking settings.", + "id": "AdBlockingConfiguration", + "properties": { + "clickThroughUrl": { + "description": "Click-through URL used by brand-neutral ads. This is a required field when overrideClickThroughUrl is set to true.", + "type": "string" + }, + "creativeBundleId": { + "description": "ID of a creative bundle to use for this campaign. If set, brand-neutral ads will select creatives from this bundle. Otherwise, a default transparent pixel will be used.", + "format": "int64", + "type": "string" + }, + "enabled": { + "description": "Whether this campaign has enabled ad blocking. When true, ad blocking is enabled for placements in the campaign, but this may be overridden by site and placement settings. When false, ad blocking is disabled for all placements under the campaign, regardless of site and placement settings.", + "type": "boolean" + }, + "overrideClickThroughUrl": { + "description": "Whether the brand-neutral ad's click-through URL comes from the campaign's creative bundle or the override URL. Must be set to true if ad blocking is enabled and no creative bundle is configured.", + "type": "boolean" + } + }, + "type": "object" + }, + "AdSlot": { + "description": "Ad Slot", + "id": "AdSlot", + "properties": { + "comment": { + "description": "Comment for this ad slot.", + "type": "string" + }, + "compatibility": { + "description": "Ad slot compatibility. DISPLAY and DISPLAY_INTERSTITIAL refer to rendering either on desktop, mobile devices or in mobile apps for regular or interstitial ads respectively. APP and APP_INTERSTITIAL are for rendering in mobile apps. IN_STREAM_VIDEO refers to rendering in in-stream video ads developed with the VAST standard.", + "enum": [ + "APP", + "APP_INTERSTITIAL", + "DISPLAY", + "DISPLAY_INTERSTITIAL", + "IN_STREAM_VIDEO" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "height": { + "description": "Height of this ad slot.", + "format": "int64", + "type": "string" + }, + "linkedPlacementId": { + "description": "ID of the placement from an external platform that is linked to this ad slot.", + "format": "int64", + "type": "string" + }, + "name": { + "description": "Name of this ad slot.", + "type": "string" + }, + "paymentSourceType": { + "description": "Payment source type of this ad slot.", + "enum": [ + "PLANNING_PAYMENT_SOURCE_TYPE_AGENCY_PAID", + "PLANNING_PAYMENT_SOURCE_TYPE_PUBLISHER_PAID" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "primary": { + "description": "Primary ad slot of a roadblock inventory item.", + "type": "boolean" + }, + "width": { + "description": "Width of this ad slot.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "AdsListResponse": { + "description": "Ad List Response", + "id": "AdsListResponse", + "properties": { + "ads": { + "description": "Ad collection.", + "items": { + "$ref": "Ad" + }, + "type": "array" + }, + "kind": { + "default": "dfareporting#adsListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#adsListResponse\".", + "type": "string" + }, + "nextPageToken": { + "description": "Pagination token to be used for the next list operation.", + "type": "string" + } + }, + "type": "object" + }, + "Advertiser": { + "description": "Contains properties of a DCM advertiser.", + "id": "Advertiser", + "properties": { + "accountId": { + "description": "Account ID of this advertiser.This is a read-only field that can be left blank.", + "format": "int64", + "type": "string" + }, + "advertiserGroupId": { + "description": "ID of the advertiser group this advertiser belongs to. You can group advertisers for reporting purposes, allowing you to see aggregated information for all advertisers in each group.", + "format": "int64", + "type": "string" + }, + "clickThroughUrlSuffix": { + "description": "Suffix added to click-through URL of ad creative associations under this advertiser. Must be less than 129 characters long.", + "type": "string" + }, + "defaultClickThroughEventTagId": { + "description": "ID of the click-through event tag to apply by default to the landing pages of this advertiser's campaigns.", + "format": "int64", + "type": "string" + }, + "defaultEmail": { + "description": "Default email address used in sender field for tag emails.", + "type": "string" + }, + "floodlightConfigurationId": { + "description": "Floodlight configuration ID of this advertiser. The floodlight configuration ID will be created automatically, so on insert this field should be left blank. This field can be set to another advertiser's floodlight configuration ID in order to share that advertiser's floodlight configuration with this advertiser, so long as: \n- This advertiser's original floodlight configuration is not already associated with floodlight activities or floodlight activity groups. \n- This advertiser's original floodlight configuration is not already shared with another advertiser.", + "format": "int64", + "type": "string" + }, + "floodlightConfigurationIdDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of the floodlight configuration. This is a read-only, auto-generated field." + }, + "id": { + "description": "ID of this advertiser. This is a read-only, auto-generated field.", + "format": "int64", + "type": "string" + }, + "idDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of this advertiser. This is a read-only, auto-generated field." + }, + "kind": { + "default": "dfareporting#advertiser", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#advertiser\".", + "type": "string" + }, + "name": { + "description": "Name of this advertiser. This is a required field and must be less than 256 characters long and unique among advertisers of the same account.", + "type": "string" + }, + "originalFloodlightConfigurationId": { + "description": "Original floodlight configuration before any sharing occurred. Set the floodlightConfigurationId of this advertiser to originalFloodlightConfigurationId to unshare the advertiser's current floodlight configuration. You cannot unshare an advertiser's floodlight configuration if the shared configuration has activities associated with any campaign or placement.", + "format": "int64", + "type": "string" + }, + "status": { + "description": "Status of this advertiser.", + "enum": [ + "APPROVED", + "ON_HOLD" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "subaccountId": { + "description": "Subaccount ID of this advertiser.This is a read-only field that can be left blank.", + "format": "int64", + "type": "string" + }, + "suspended": { + "description": "Suspension status of this advertiser.", + "type": "boolean" + } + }, + "type": "object" + }, + "AdvertiserGroup": { + "description": "Groups advertisers together so that reports can be generated for the entire group at once.", + "id": "AdvertiserGroup", + "properties": { + "accountId": { + "description": "Account ID of this advertiser group. This is a read-only field that can be left blank.", + "format": "int64", + "type": "string" + }, + "id": { + "description": "ID of this advertiser group. This is a read-only, auto-generated field.", + "format": "int64", + "type": "string" + }, + "kind": { + "default": "dfareporting#advertiserGroup", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#advertiserGroup\".", + "type": "string" + }, + "name": { + "description": "Name of this advertiser group. This is a required field and must be less than 256 characters long and unique among advertiser groups of the same account.", + "type": "string" + } + }, + "type": "object" + }, + "AdvertiserGroupsListResponse": { + "description": "Advertiser Group List Response", + "id": "AdvertiserGroupsListResponse", + "properties": { + "advertiserGroups": { + "description": "Advertiser group collection.", + "items": { + "$ref": "AdvertiserGroup" + }, + "type": "array" + }, + "kind": { + "default": "dfareporting#advertiserGroupsListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#advertiserGroupsListResponse\".", + "type": "string" + }, + "nextPageToken": { + "description": "Pagination token to be used for the next list operation.", + "type": "string" + } + }, + "type": "object" + }, + "AdvertiserLandingPagesListResponse": { + "description": "Landing Page List Response", + "id": "AdvertiserLandingPagesListResponse", + "properties": { + "kind": { + "default": "dfareporting#advertiserLandingPagesListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#advertiserLandingPagesListResponse\".", + "type": "string" + }, + "landingPages": { + "description": "Landing page collection", + "items": { + "$ref": "LandingPage" + }, + "type": "array" + }, + "nextPageToken": { + "description": "Pagination token to be used for the next list operation.", + "type": "string" + } + }, + "type": "object" + }, + "AdvertisersListResponse": { + "description": "Advertiser List Response", + "id": "AdvertisersListResponse", + "properties": { + "advertisers": { + "description": "Advertiser collection.", + "items": { + "$ref": "Advertiser" + }, + "type": "array" + }, + "kind": { + "default": "dfareporting#advertisersListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#advertisersListResponse\".", + "type": "string" + }, + "nextPageToken": { + "description": "Pagination token to be used for the next list operation.", + "type": "string" + } + }, + "type": "object" + }, + "AudienceSegment": { + "description": "Audience Segment.", + "id": "AudienceSegment", + "properties": { + "allocation": { + "description": "Weight allocated to this segment. The weight assigned will be understood in proportion to the weights assigned to other segments in the same segment group. Acceptable values are 1 to 1000, inclusive.", + "format": "int32", + "type": "integer" + }, + "id": { + "description": "ID of this audience segment. This is a read-only, auto-generated field.", + "format": "int64", + "type": "string" + }, + "name": { + "description": "Name of this audience segment. This is a required field and must be less than 65 characters long.", + "type": "string" + } + }, + "type": "object" + }, + "AudienceSegmentGroup": { + "description": "Audience Segment Group.", + "id": "AudienceSegmentGroup", + "properties": { + "audienceSegments": { + "description": "Audience segments assigned to this group. The number of segments must be between 2 and 100.", + "items": { + "$ref": "AudienceSegment" + }, + "type": "array" + }, + "id": { + "description": "ID of this audience segment group. This is a read-only, auto-generated field.", + "format": "int64", + "type": "string" + }, + "name": { + "description": "Name of this audience segment group. This is a required field and must be less than 65 characters long.", + "type": "string" + } + }, + "type": "object" + }, + "Browser": { + "description": "Contains information about a browser that can be targeted by ads.", + "id": "Browser", + "properties": { + "browserVersionId": { + "description": "ID referring to this grouping of browser and version numbers. This is the ID used for targeting.", + "format": "int64", + "type": "string" + }, + "dartId": { + "description": "DART ID of this browser. This is the ID used when generating reports.", + "format": "int64", + "type": "string" + }, + "kind": { + "default": "dfareporting#browser", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#browser\".", + "type": "string" + }, + "majorVersion": { + "description": "Major version number (leftmost number) of this browser. For example, for Chrome 5.0.376.86 beta, this field should be set to 5. An asterisk (*) may be used to target any version number, and a question mark (?) may be used to target cases where the version number cannot be identified. For example, Chrome *.* targets any version of Chrome: 1.2, 2.5, 3.5, and so on. Chrome 3.* targets Chrome 3.1, 3.5, but not 4.0. Firefox ?.? targets cases where the ad server knows the browser is Firefox but can't tell which version it is.", + "type": "string" + }, + "minorVersion": { + "description": "Minor version number (number after first dot on left) of this browser. For example, for Chrome 5.0.375.86 beta, this field should be set to 0. An asterisk (*) may be used to target any version number, and a question mark (?) may be used to target cases where the version number cannot be identified. For example, Chrome *.* targets any version of Chrome: 1.2, 2.5, 3.5, and so on. Chrome 3.* targets Chrome 3.1, 3.5, but not 4.0. Firefox ?.? targets cases where the ad server knows the browser is Firefox but can't tell which version it is.", + "type": "string" + }, + "name": { + "description": "Name of this browser.", + "type": "string" + } + }, + "type": "object" + }, + "BrowsersListResponse": { + "description": "Browser List Response", + "id": "BrowsersListResponse", + "properties": { + "browsers": { + "description": "Browser collection.", + "items": { + "$ref": "Browser" + }, + "type": "array" + }, + "kind": { + "default": "dfareporting#browsersListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#browsersListResponse\".", + "type": "string" + } + }, + "type": "object" + }, + "Campaign": { + "description": "Contains properties of a DCM campaign.", + "id": "Campaign", + "properties": { + "accountId": { + "description": "Account ID of this campaign. This is a read-only field that can be left blank.", + "format": "int64", + "type": "string" + }, + "adBlockingConfiguration": { + "$ref": "AdBlockingConfiguration", + "description": "Ad blocking settings for this campaign." + }, + "additionalCreativeOptimizationConfigurations": { + "description": "Additional creative optimization configurations for the campaign.", + "items": { + "$ref": "CreativeOptimizationConfiguration" + }, + "type": "array" + }, + "advertiserGroupId": { + "description": "Advertiser group ID of the associated advertiser.", + "format": "int64", + "type": "string" + }, + "advertiserId": { + "description": "Advertiser ID of this campaign. This is a required field.", + "format": "int64", + "type": "string" + }, + "advertiserIdDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the advertiser ID of this campaign. This is a read-only, auto-generated field." + }, + "archived": { + "description": "Whether this campaign has been archived.", + "type": "boolean" + }, + "audienceSegmentGroups": { + "description": "Audience segment groups assigned to this campaign. Cannot have more than 300 segment groups.", + "items": { + "$ref": "AudienceSegmentGroup" + }, + "type": "array" + }, + "billingInvoiceCode": { + "description": "Billing invoice code included in the DCM client billing invoices associated with the campaign.", + "type": "string" + }, + "clickThroughUrlSuffixProperties": { + "$ref": "ClickThroughUrlSuffixProperties", + "description": "Click-through URL suffix override properties for this campaign." + }, + "comment": { + "description": "Arbitrary comments about this campaign. Must be less than 256 characters long.", + "type": "string" + }, + "createInfo": { + "$ref": "LastModifiedInfo", + "description": "Information about the creation of this campaign. This is a read-only field." + }, + "creativeGroupIds": { + "description": "List of creative group IDs that are assigned to the campaign.", + "items": { + "format": "int64", + "type": "string" + }, + "type": "array" + }, + "creativeOptimizationConfiguration": { + "$ref": "CreativeOptimizationConfiguration", + "description": "Creative optimization configuration for the campaign." + }, + "defaultClickThroughEventTagProperties": { + "$ref": "DefaultClickThroughEventTagProperties", + "description": "Click-through event tag ID override properties for this campaign." + }, + "defaultLandingPageId": { + "description": "The default landing page ID for this campaign.", + "format": "int64", + "type": "string" + }, + "endDate": { + "description": "Date on which the campaign will stop running. On insert, the end date must be today or a future date. The end date must be later than or be the same as the start date. If, for example, you set 6/25/2015 as both the start and end dates, the effective campaign run date is just that day only, 6/25/2015. The hours, minutes, and seconds of the end date should not be set, as doing so will result in an error. This is a required field.", + "format": "date", + "type": "string" + }, + "eventTagOverrides": { + "description": "Overrides that can be used to activate or deactivate advertiser event tags.", + "items": { + "$ref": "EventTagOverride" + }, + "type": "array" + }, + "externalId": { + "description": "External ID for this campaign.", + "type": "string" + }, + "id": { + "description": "ID of this campaign. This is a read-only auto-generated field.", + "format": "int64", + "type": "string" + }, + "idDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of this campaign. This is a read-only, auto-generated field." + }, + "kind": { + "default": "dfareporting#campaign", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#campaign\".", + "type": "string" + }, + "lastModifiedInfo": { + "$ref": "LastModifiedInfo", + "description": "Information about the most recent modification of this campaign. This is a read-only field." + }, + "lookbackConfiguration": { + "$ref": "LookbackConfiguration", + "description": "Lookback window settings for the campaign." + }, + "name": { + "description": "Name of this campaign. This is a required field and must be less than 256 characters long and unique among campaigns of the same advertiser.", + "type": "string" + }, + "nielsenOcrEnabled": { + "description": "Whether Nielsen reports are enabled for this campaign.", + "type": "boolean" + }, + "startDate": { + "description": "Date on which the campaign starts running. The start date can be any date. The hours, minutes, and seconds of the start date should not be set, as doing so will result in an error. This is a required field.", + "format": "date", + "type": "string" + }, + "subaccountId": { + "description": "Subaccount ID of this campaign. This is a read-only field that can be left blank.", + "format": "int64", + "type": "string" + }, + "traffickerEmails": { + "description": "Campaign trafficker contact emails.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "CampaignCreativeAssociation": { + "description": "Identifies a creative which has been associated with a given campaign.", + "id": "CampaignCreativeAssociation", + "properties": { + "creativeId": { + "description": "ID of the creative associated with the campaign. This is a required field.", + "format": "int64", + "type": "string" + }, + "kind": { + "default": "dfareporting#campaignCreativeAssociation", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#campaignCreativeAssociation\".", + "type": "string" + } + }, + "type": "object" + }, + "CampaignCreativeAssociationsListResponse": { + "description": "Campaign Creative Association List Response", + "id": "CampaignCreativeAssociationsListResponse", + "properties": { + "campaignCreativeAssociations": { + "description": "Campaign creative association collection", + "items": { + "$ref": "CampaignCreativeAssociation" + }, + "type": "array" + }, + "kind": { + "default": "dfareporting#campaignCreativeAssociationsListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#campaignCreativeAssociationsListResponse\".", + "type": "string" + }, + "nextPageToken": { + "description": "Pagination token to be used for the next list operation.", + "type": "string" + } + }, + "type": "object" + }, + "CampaignsListResponse": { + "description": "Campaign List Response", + "id": "CampaignsListResponse", + "properties": { + "campaigns": { + "description": "Campaign collection.", + "items": { + "$ref": "Campaign" + }, + "type": "array" + }, + "kind": { + "default": "dfareporting#campaignsListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#campaignsListResponse\".", + "type": "string" + }, + "nextPageToken": { + "description": "Pagination token to be used for the next list operation.", + "type": "string" + } + }, + "type": "object" + }, + "ChangeLog": { + "description": "Describes a change that a user has made to a resource.", + "id": "ChangeLog", + "properties": { + "accountId": { + "description": "Account ID of the modified object.", + "format": "int64", + "type": "string" + }, + "action": { + "description": "Action which caused the change.", + "type": "string" + }, + "changeTime": { + "description": "Time when the object was modified.", + "format": "date-time", + "type": "string" + }, + "fieldName": { + "description": "Field name of the object which changed.", + "type": "string" + }, + "id": { + "description": "ID of this change log.", + "format": "int64", + "type": "string" + }, + "kind": { + "default": "dfareporting#changeLog", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#changeLog\".", + "type": "string" + }, + "newValue": { + "description": "New value of the object field.", + "type": "string" + }, + "objectId": { + "description": "ID of the object of this change log. The object could be a campaign, placement, ad, or other type.", + "format": "int64", + "type": "string" + }, + "objectType": { + "description": "Object type of the change log.", + "type": "string" + }, + "oldValue": { + "description": "Old value of the object field.", + "type": "string" + }, + "subaccountId": { + "description": "Subaccount ID of the modified object.", + "format": "int64", + "type": "string" + }, + "transactionId": { + "description": "Transaction ID of this change log. When a single API call results in many changes, each change will have a separate ID in the change log but will share the same transactionId.", + "format": "int64", + "type": "string" + }, + "userProfileId": { + "description": "ID of the user who modified the object.", + "format": "int64", + "type": "string" + }, + "userProfileName": { + "description": "User profile name of the user who modified the object.", + "type": "string" + } + }, + "type": "object" + }, + "ChangeLogsListResponse": { + "description": "Change Log List Response", + "id": "ChangeLogsListResponse", + "properties": { + "changeLogs": { + "description": "Change log collection.", + "items": { + "$ref": "ChangeLog" + }, + "type": "array" + }, + "kind": { + "default": "dfareporting#changeLogsListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#changeLogsListResponse\".", + "type": "string" + }, + "nextPageToken": { + "description": "Pagination token to be used for the next list operation.", + "type": "string" + } + }, + "type": "object" + }, + "CitiesListResponse": { + "description": "City List Response", + "id": "CitiesListResponse", + "properties": { + "cities": { + "description": "City collection.", + "items": { + "$ref": "City" + }, + "type": "array" + }, + "kind": { + "default": "dfareporting#citiesListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#citiesListResponse\".", + "type": "string" + } + }, + "type": "object" + }, + "City": { + "description": "Contains information about a city that can be targeted by ads.", + "id": "City", + "properties": { + "countryCode": { + "description": "Country code of the country to which this city belongs.", + "type": "string" + }, + "countryDartId": { + "description": "DART ID of the country to which this city belongs.", + "format": "int64", + "type": "string" + }, + "dartId": { + "description": "DART ID of this city. This is the ID used for targeting and generating reports.", + "format": "int64", + "type": "string" + }, + "kind": { + "default": "dfareporting#city", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#city\".", + "type": "string" + }, + "metroCode": { + "description": "Metro region code of the metro region (DMA) to which this city belongs.", + "type": "string" + }, + "metroDmaId": { + "description": "ID of the metro region (DMA) to which this city belongs.", + "format": "int64", + "type": "string" + }, + "name": { + "description": "Name of this city.", + "type": "string" + }, + "regionCode": { + "description": "Region code of the region to which this city belongs.", + "type": "string" + }, + "regionDartId": { + "description": "DART ID of the region to which this city belongs.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "ClickTag": { + "description": "Creative Click Tag.", + "id": "ClickTag", + "properties": { + "clickThroughUrl": { + "$ref": "CreativeClickThroughUrl", + "description": "Parameter value for the specified click tag. This field contains a click-through url." + }, + "eventName": { + "description": "Advertiser event name associated with the click tag. This field is used by DISPLAY_IMAGE_GALLERY and HTML5_BANNER creatives. Applicable to DISPLAY when the primary asset type is not HTML_IMAGE.", + "type": "string" + }, + "name": { + "description": "Parameter name for the specified click tag. For DISPLAY_IMAGE_GALLERY creative assets, this field must match the value of the creative asset's creativeAssetId.name field.", + "type": "string" + } + }, + "type": "object" + }, + "ClickThroughUrl": { + "description": "Click-through URL", + "id": "ClickThroughUrl", + "properties": { + "computedClickThroughUrl": { + "description": "Read-only convenience field representing the actual URL that will be used for this click-through. The URL is computed as follows: \n- If defaultLandingPage is enabled then the campaign's default landing page URL is assigned to this field.\n- If defaultLandingPage is not enabled and a landingPageId is specified then that landing page's URL is assigned to this field.\n- If neither of the above cases apply, then the customClickThroughUrl is assigned to this field.", + "type": "string" + }, + "customClickThroughUrl": { + "description": "Custom click-through URL. Applicable if the defaultLandingPage field is set to false and the landingPageId field is left unset.", + "type": "string" + }, + "defaultLandingPage": { + "description": "Whether the campaign default landing page is used.", + "type": "boolean" + }, + "landingPageId": { + "description": "ID of the landing page for the click-through URL. Applicable if the defaultLandingPage field is set to false.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "ClickThroughUrlSuffixProperties": { + "description": "Click Through URL Suffix settings.", + "id": "ClickThroughUrlSuffixProperties", + "properties": { + "clickThroughUrlSuffix": { + "description": "Click-through URL suffix to apply to all ads in this entity's scope. Must be less than 128 characters long.", + "type": "string" + }, + "overrideInheritedSuffix": { + "description": "Whether this entity should override the inherited click-through URL suffix with its own defined value.", + "type": "boolean" + } + }, + "type": "object" + }, + "CompanionClickThroughOverride": { + "description": "Companion Click-through override.", + "id": "CompanionClickThroughOverride", + "properties": { + "clickThroughUrl": { + "$ref": "ClickThroughUrl", + "description": "Click-through URL of this companion click-through override." + }, + "creativeId": { + "description": "ID of the creative for this companion click-through override.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "CompanionSetting": { + "description": "Companion Settings", + "id": "CompanionSetting", + "properties": { + "companionsDisabled": { + "description": "Whether companions are disabled for this placement.", + "type": "boolean" + }, + "enabledSizes": { + "description": "Whitelist of companion sizes to be served to this placement. Set this list to null or empty to serve all companion sizes.", + "items": { + "$ref": "Size" + }, + "type": "array" + }, + "imageOnly": { + "description": "Whether to serve only static images as companions.", + "type": "boolean" + }, + "kind": { + "default": "dfareporting#companionSetting", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#companionSetting\".", + "type": "string" + } + }, + "type": "object" + }, + "CompatibleFields": { + "description": "Represents a response to the queryCompatibleFields method.", + "id": "CompatibleFields", + "properties": { + "crossDimensionReachReportCompatibleFields": { + "$ref": "CrossDimensionReachReportCompatibleFields", + "description": "Contains items that are compatible to be selected for a report of type \"CROSS_DIMENSION_REACH\"." + }, + "floodlightReportCompatibleFields": { + "$ref": "FloodlightReportCompatibleFields", + "description": "Contains items that are compatible to be selected for a report of type \"FLOODLIGHT\"." + }, + "kind": { + "default": "dfareporting#compatibleFields", + "description": "The kind of resource this is, in this case dfareporting#compatibleFields.", + "type": "string" + }, + "pathToConversionReportCompatibleFields": { + "$ref": "PathToConversionReportCompatibleFields", + "description": "Contains items that are compatible to be selected for a report of type \"PATH_TO_CONVERSION\"." + }, + "reachReportCompatibleFields": { + "$ref": "ReachReportCompatibleFields", + "description": "Contains items that are compatible to be selected for a report of type \"REACH\"." + }, + "reportCompatibleFields": { + "$ref": "ReportCompatibleFields", + "description": "Contains items that are compatible to be selected for a report of type \"STANDARD\"." + } + }, + "type": "object" + }, + "ConnectionType": { + "description": "Contains information about an internet connection type that can be targeted by ads. Clients can use the connection type to target mobile vs. broadband users.", + "id": "ConnectionType", + "properties": { + "id": { + "description": "ID of this connection type.", + "format": "int64", + "type": "string" + }, + "kind": { + "default": "dfareporting#connectionType", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#connectionType\".", + "type": "string" + }, + "name": { + "description": "Name of this connection type.", + "type": "string" + } + }, + "type": "object" + }, + "ConnectionTypesListResponse": { + "description": "Connection Type List Response", + "id": "ConnectionTypesListResponse", + "properties": { + "connectionTypes": { + "description": "Collection of connection types such as broadband and mobile.", + "items": { + "$ref": "ConnectionType" + }, + "type": "array" + }, + "kind": { + "default": "dfareporting#connectionTypesListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#connectionTypesListResponse\".", + "type": "string" + } + }, + "type": "object" + }, + "ContentCategoriesListResponse": { + "description": "Content Category List Response", + "id": "ContentCategoriesListResponse", + "properties": { + "contentCategories": { + "description": "Content category collection.", + "items": { + "$ref": "ContentCategory" + }, + "type": "array" + }, + "kind": { + "default": "dfareporting#contentCategoriesListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#contentCategoriesListResponse\".", + "type": "string" + }, + "nextPageToken": { + "description": "Pagination token to be used for the next list operation.", + "type": "string" + } + }, + "type": "object" + }, + "ContentCategory": { + "description": "Organizes placements according to the contents of their associated webpages.", + "id": "ContentCategory", + "properties": { + "accountId": { + "description": "Account ID of this content category. This is a read-only field that can be left blank.", + "format": "int64", + "type": "string" + }, + "id": { + "description": "ID of this content category. This is a read-only, auto-generated field.", + "format": "int64", + "type": "string" + }, + "kind": { + "default": "dfareporting#contentCategory", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#contentCategory\".", + "type": "string" + }, + "name": { + "description": "Name of this content category. This is a required field and must be less than 256 characters long and unique among content categories of the same account.", + "type": "string" + } + }, + "type": "object" + }, + "Conversion": { + "description": "A Conversion represents when a user successfully performs a desired action after seeing an ad.", + "id": "Conversion", + "properties": { + "childDirectedTreatment": { + "description": "Whether the conversion was directed toward children.", + "type": "boolean" + }, + "customVariables": { + "description": "Custom floodlight variables.", + "items": { + "$ref": "CustomFloodlightVariable" + }, + "type": "array" + }, + "encryptedUserId": { + "description": "The alphanumeric encrypted user ID. When set, encryptionInfo should also be specified. This field is mutually exclusive with encryptedUserIdCandidates[], mobileDeviceId and gclid. This or encryptedUserIdCandidates[] or mobileDeviceId or gclid is a required field.", + "type": "string" + }, + "encryptedUserIdCandidates": { + "description": "A list of the alphanumeric encrypted user IDs. Any user ID with exposure prior to the conversion timestamp will be used in the inserted conversion. If no such user ID is found then the conversion will be rejected with NO_COOKIE_MATCH_FOUND error. When set, encryptionInfo should also be specified. This field may only be used when calling batchinsert; it is not supported by batchupdate. This field is mutually exclusive with encryptedUserId, mobileDeviceId and gclid. This or encryptedUserId or mobileDeviceId or gclid is a required field.", + "items": { + "type": "string" + }, + "type": "array" + }, + "floodlightActivityId": { + "description": "Floodlight Activity ID of this conversion. This is a required field.", + "format": "int64", + "type": "string" + }, + "floodlightConfigurationId": { + "description": "Floodlight Configuration ID of this conversion. This is a required field.", + "format": "int64", + "type": "string" + }, + "gclid": { + "description": "The Google click ID. This field is mutually exclusive with encryptedUserId, encryptedUserIdCandidates[] and mobileDeviceId. This or encryptedUserId or encryptedUserIdCandidates[] or mobileDeviceId is a required field.", + "type": "string" + }, + "kind": { + "default": "dfareporting#conversion", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#conversion\".", + "type": "string" + }, + "limitAdTracking": { + "description": "Whether Limit Ad Tracking is enabled. When set to true, the conversion will be used for reporting but not targeting. This will prevent remarketing.", + "type": "boolean" + }, + "mobileDeviceId": { + "description": "The mobile device ID. This field is mutually exclusive with encryptedUserId, encryptedUserIdCandidates[] and gclid. This or encryptedUserId or encryptedUserIdCandidates[] or gclid is a required field.", + "type": "string" + }, + "ordinal": { + "description": "The ordinal of the conversion. Use this field to control how conversions of the same user and day are de-duplicated. This is a required field.", + "type": "string" + }, + "quantity": { + "description": "The quantity of the conversion.", + "format": "int64", + "type": "string" + }, + "timestampMicros": { + "description": "The timestamp of conversion, in Unix epoch micros. This is a required field.", + "format": "int64", + "type": "string" + }, + "value": { + "description": "The value of the conversion.", + "format": "double", + "type": "number" + } + }, + "type": "object" + }, + "ConversionError": { + "description": "The error code and description for a conversion that failed to insert or update.", + "id": "ConversionError", + "properties": { + "code": { + "description": "The error code.", + "enum": [ + "INTERNAL", + "INVALID_ARGUMENT", + "NOT_FOUND", + "PERMISSION_DENIED" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ], + "type": "string" + }, + "kind": { + "default": "dfareporting#conversionError", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#conversionError\".", + "type": "string" + }, + "message": { + "description": "A description of the error.", + "type": "string" + } + }, + "type": "object" + }, + "ConversionStatus": { + "description": "The original conversion that was inserted or updated and whether there were any errors.", + "id": "ConversionStatus", + "properties": { + "conversion": { + "$ref": "Conversion", + "description": "The original conversion that was inserted or updated." + }, + "errors": { + "description": "A list of errors related to this conversion.", + "items": { + "$ref": "ConversionError" + }, + "type": "array" + }, + "kind": { + "default": "dfareporting#conversionStatus", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#conversionStatus\".", + "type": "string" + } + }, + "type": "object" + }, + "ConversionsBatchInsertRequest": { + "description": "Insert Conversions Request.", + "id": "ConversionsBatchInsertRequest", + "properties": { + "conversions": { + "description": "The set of conversions to insert.", + "items": { + "$ref": "Conversion" + }, + "type": "array" + }, + "encryptionInfo": { + "$ref": "EncryptionInfo", + "description": "Describes how encryptedUserId or encryptedUserIdCandidates[] is encrypted. This is a required field if encryptedUserId or encryptedUserIdCandidates[] is used." + }, + "kind": { + "default": "dfareporting#conversionsBatchInsertRequest", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#conversionsBatchInsertRequest\".", + "type": "string" + } + }, + "type": "object" + }, + "ConversionsBatchInsertResponse": { + "description": "Insert Conversions Response.", + "id": "ConversionsBatchInsertResponse", + "properties": { + "hasFailures": { + "description": "Indicates that some or all conversions failed to insert.", + "type": "boolean" + }, + "kind": { + "default": "dfareporting#conversionsBatchInsertResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#conversionsBatchInsertResponse\".", + "type": "string" + }, + "status": { + "description": "The insert status of each conversion. Statuses are returned in the same order that conversions are inserted.", + "items": { + "$ref": "ConversionStatus" + }, + "type": "array" + } + }, + "type": "object" + }, + "ConversionsBatchUpdateRequest": { + "description": "Update Conversions Request.", + "id": "ConversionsBatchUpdateRequest", + "properties": { + "conversions": { + "description": "The set of conversions to update.", + "items": { + "$ref": "Conversion" + }, + "type": "array" + }, + "encryptionInfo": { + "$ref": "EncryptionInfo", + "description": "Describes how encryptedUserId is encrypted. This is a required field if encryptedUserId is used." + }, + "kind": { + "default": "dfareporting#conversionsBatchUpdateRequest", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#conversionsBatchUpdateRequest\".", + "type": "string" + } + }, + "type": "object" + }, + "ConversionsBatchUpdateResponse": { + "description": "Update Conversions Response.", + "id": "ConversionsBatchUpdateResponse", + "properties": { + "hasFailures": { + "description": "Indicates that some or all conversions failed to update.", + "type": "boolean" + }, + "kind": { + "default": "dfareporting#conversionsBatchUpdateResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#conversionsBatchUpdateResponse\".", + "type": "string" + }, + "status": { + "description": "The update status of each conversion. Statuses are returned in the same order that conversions are updated.", + "items": { + "$ref": "ConversionStatus" + }, + "type": "array" + } + }, + "type": "object" + }, + "CountriesListResponse": { + "description": "Country List Response", + "id": "CountriesListResponse", + "properties": { + "countries": { + "description": "Country collection.", + "items": { + "$ref": "Country" + }, + "type": "array" + }, + "kind": { + "default": "dfareporting#countriesListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#countriesListResponse\".", + "type": "string" + } + }, + "type": "object" + }, + "Country": { + "description": "Contains information about a country that can be targeted by ads.", + "id": "Country", + "properties": { + "countryCode": { + "description": "Country code.", + "type": "string" + }, + "dartId": { + "description": "DART ID of this country. This is the ID used for targeting and generating reports.", + "format": "int64", + "type": "string" + }, + "kind": { + "default": "dfareporting#country", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#country\".", + "type": "string" + }, + "name": { + "description": "Name of this country.", + "type": "string" + }, + "sslEnabled": { + "description": "Whether ad serving supports secure servers in this country.", + "type": "boolean" + } + }, + "type": "object" + }, + "Creative": { + "description": "Contains properties of a Creative.", + "id": "Creative", + "properties": { + "accountId": { + "description": "Account ID of this creative. This field, if left unset, will be auto-generated for both insert and update operations. Applicable to all creative types.", + "format": "int64", + "type": "string" + }, + "active": { + "description": "Whether the creative is active. Applicable to all creative types.", + "type": "boolean" + }, + "adParameters": { + "description": "Ad parameters user for VPAID creative. This is a read-only field. Applicable to the following creative types: all VPAID.", + "type": "string" + }, + "adTagKeys": { + "description": "Keywords for a Rich Media creative. Keywords let you customize the creative settings of a Rich Media ad running on your site without having to contact the advertiser. You can use keywords to dynamically change the look or functionality of a creative. Applicable to the following creative types: all RICH_MEDIA, and all VPAID.", + "items": { + "type": "string" + }, + "type": "array" + }, + "advertiserId": { + "description": "Advertiser ID of this creative. This is a required field. Applicable to all creative types.", + "format": "int64", + "type": "string" + }, + "allowScriptAccess": { + "description": "Whether script access is allowed for this creative. This is a read-only and deprecated field which will automatically be set to true on update. Applicable to the following creative types: FLASH_INPAGE.", + "type": "boolean" + }, + "archived": { + "description": "Whether the creative is archived. Applicable to all creative types.", + "type": "boolean" + }, + "artworkType": { + "description": "Type of artwork used for the creative. This is a read-only field. Applicable to the following creative types: all RICH_MEDIA, and all VPAID.", + "enum": [ + "ARTWORK_TYPE_FLASH", + "ARTWORK_TYPE_HTML5", + "ARTWORK_TYPE_IMAGE", + "ARTWORK_TYPE_MIXED" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ], + "type": "string" + }, + "authoringSource": { + "description": "Source application where creative was authored. Presently, only DBM authored creatives will have this field set. Applicable to all creative types.", + "enum": [ + "CREATIVE_AUTHORING_SOURCE_DBM", + "CREATIVE_AUTHORING_SOURCE_DCM", + "CREATIVE_AUTHORING_SOURCE_STUDIO" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, + "authoringTool": { + "description": "Authoring tool for HTML5 banner creatives. This is a read-only field. Applicable to the following creative types: HTML5_BANNER.", + "enum": [ + "NINJA", + "SWIFFY" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "autoAdvanceImages": { + "description": "Whether images are automatically advanced for image gallery creatives. Applicable to the following creative types: DISPLAY_IMAGE_GALLERY.", + "type": "boolean" + }, + "backgroundColor": { + "description": "The 6-character HTML color code, beginning with #, for the background of the window area where the Flash file is displayed. Default is white. Applicable to the following creative types: FLASH_INPAGE.", + "type": "string" + }, + "backupImageClickThroughUrl": { + "$ref": "CreativeClickThroughUrl", + "description": "Click-through URL for backup image. Applicable to ENHANCED_BANNER when the primary asset type is not HTML_IMAGE." + }, + "backupImageFeatures": { + "description": "List of feature dependencies that will cause a backup image to be served if the browser that serves the ad does not support them. Feature dependencies are features that a browser must be able to support in order to render your HTML5 creative asset correctly. This field is initially auto-generated to contain all features detected by DCM for all the assets of this creative and can then be modified by the client. To reset this field, copy over all the creativeAssets' detected features. Applicable to the following creative types: HTML5_BANNER. Applicable to DISPLAY when the primary asset type is not HTML_IMAGE.", + "items": { + "enum": [ + "APPLICATION_CACHE", + "AUDIO", + "CANVAS", + "CANVAS_TEXT", + "CSS_ANIMATIONS", + "CSS_BACKGROUND_SIZE", + "CSS_BORDER_IMAGE", + "CSS_BORDER_RADIUS", + "CSS_BOX_SHADOW", + "CSS_COLUMNS", + "CSS_FLEX_BOX", + "CSS_FONT_FACE", + "CSS_GENERATED_CONTENT", + "CSS_GRADIENTS", + "CSS_HSLA", + "CSS_MULTIPLE_BGS", + "CSS_OPACITY", + "CSS_REFLECTIONS", + "CSS_RGBA", + "CSS_TEXT_SHADOW", + "CSS_TRANSFORMS", + "CSS_TRANSFORMS3D", + "CSS_TRANSITIONS", + "DRAG_AND_DROP", + "GEO_LOCATION", + "HASH_CHANGE", + "HISTORY", + "INDEXED_DB", + "INLINE_SVG", + "INPUT_ATTR_AUTOCOMPLETE", + "INPUT_ATTR_AUTOFOCUS", + "INPUT_ATTR_LIST", + "INPUT_ATTR_MAX", + "INPUT_ATTR_MIN", + "INPUT_ATTR_MULTIPLE", + "INPUT_ATTR_PATTERN", + "INPUT_ATTR_PLACEHOLDER", + "INPUT_ATTR_REQUIRED", + "INPUT_ATTR_STEP", + "INPUT_TYPE_COLOR", + "INPUT_TYPE_DATE", + "INPUT_TYPE_DATETIME", + "INPUT_TYPE_DATETIME_LOCAL", + "INPUT_TYPE_EMAIL", + "INPUT_TYPE_MONTH", + "INPUT_TYPE_NUMBER", + "INPUT_TYPE_RANGE", + "INPUT_TYPE_SEARCH", + "INPUT_TYPE_TEL", + "INPUT_TYPE_TIME", + "INPUT_TYPE_URL", + "INPUT_TYPE_WEEK", + "LOCAL_STORAGE", + "POST_MESSAGE", + "SESSION_STORAGE", + "SMIL", + "SVG_CLIP_PATHS", + "SVG_FE_IMAGE", + "SVG_FILTERS", + "SVG_HREF", + "TOUCH", + "VIDEO", + "WEBGL", + "WEB_SOCKETS", + "WEB_SQL_DATABASE", + "WEB_WORKERS" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "type": "array" + }, + "backupImageReportingLabel": { + "description": "Reporting label used for HTML5 banner backup image. Applicable to the following creative types: DISPLAY when the primary asset type is not HTML_IMAGE.", + "type": "string" + }, + "backupImageTargetWindow": { + "$ref": "TargetWindow", + "description": "Target window for backup image. Applicable to the following creative types: FLASH_INPAGE and HTML5_BANNER. Applicable to DISPLAY when the primary asset type is not HTML_IMAGE." + }, + "clickTags": { + "description": "Click tags of the creative. For DISPLAY, FLASH_INPAGE, and HTML5_BANNER creatives, this is a subset of detected click tags for the assets associated with this creative. After creating a flash asset, detected click tags will be returned in the creativeAssetMetadata. When inserting the creative, populate the creative clickTags field using the creativeAssetMetadata.clickTags field. For DISPLAY_IMAGE_GALLERY creatives, there should be exactly one entry in this list for each image creative asset. A click tag is matched with a corresponding creative asset by matching the clickTag.name field with the creativeAsset.assetIdentifier.name field. Applicable to the following creative types: DISPLAY_IMAGE_GALLERY, FLASH_INPAGE, HTML5_BANNER. Applicable to DISPLAY when the primary asset type is not HTML_IMAGE.", + "items": { + "$ref": "ClickTag" + }, + "type": "array" + }, + "commercialId": { + "description": "Industry standard ID assigned to creative for reach and frequency. Applicable to INSTREAM_VIDEO_REDIRECT creatives.", + "type": "string" + }, + "companionCreatives": { + "description": "List of companion creatives assigned to an in-Stream videocreative. Acceptable values include IDs of existing flash and image creatives. Applicable to the following creative types: all VPAID and all INSTREAM_VIDEO with dynamicAssetSelection set to false.", + "items": { + "format": "int64", + "type": "string" + }, + "type": "array" + }, + "compatibility": { + "description": "Compatibilities associated with this creative. This is a read-only field. DISPLAY and DISPLAY_INTERSTITIAL refer to rendering either on desktop or on mobile devices or in mobile apps for regular or interstitial ads, respectively. APP and APP_INTERSTITIAL are for rendering in mobile apps. Only pre-existing creatives may have these compatibilities since new creatives will either be assigned DISPLAY or DISPLAY_INTERSTITIAL instead. IN_STREAM_VIDEO refers to rendering in in-stream video ads developed with the VAST standard. Applicable to all creative types.\n\nAcceptable values are:\n- \"APP\"\n- \"APP_INTERSTITIAL\"\n- \"IN_STREAM_VIDEO\"\n- \"DISPLAY\"\n- \"DISPLAY_INTERSTITIAL\"", + "items": { + "enum": [ + "APP", + "APP_INTERSTITIAL", + "DISPLAY", + "DISPLAY_INTERSTITIAL", + "IN_STREAM_VIDEO" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "type": "array" + }, + "convertFlashToHtml5": { + "description": "Whether Flash assets associated with the creative need to be automatically converted to HTML5. This flag is enabled by default and users can choose to disable it if they don't want the system to generate and use HTML5 asset for this creative. Applicable to the following creative type: FLASH_INPAGE. Applicable to DISPLAY when the primary asset type is not HTML_IMAGE.", + "type": "boolean" + }, + "counterCustomEvents": { + "description": "List of counter events configured for the creative. For DISPLAY_IMAGE_GALLERY creatives, these are read-only and auto-generated from clickTags. Applicable to the following creative types: DISPLAY_IMAGE_GALLERY, all RICH_MEDIA, and all VPAID.", + "items": { + "$ref": "CreativeCustomEvent" + }, + "type": "array" + }, + "creativeAssetSelection": { + "$ref": "CreativeAssetSelection", + "description": "Required if dynamicAssetSelection is true." + }, + "creativeAssets": { + "description": "Assets associated with a creative. Applicable to all but the following creative types: INTERNAL_REDIRECT, INTERSTITIAL_INTERNAL_REDIRECT, and REDIRECT", + "items": { + "$ref": "CreativeAsset" + }, + "type": "array" + }, + "creativeFieldAssignments": { + "description": "Creative field assignments for this creative. Applicable to all creative types.", + "items": { + "$ref": "CreativeFieldAssignment" + }, + "type": "array" + }, + "customKeyValues": { + "description": "Custom key-values for a Rich Media creative. Key-values let you customize the creative settings of a Rich Media ad running on your site without having to contact the advertiser. You can use key-values to dynamically change the look or functionality of a creative. Applicable to the following creative types: all RICH_MEDIA, and all VPAID.", + "items": { + "type": "string" + }, + "type": "array" + }, + "dynamicAssetSelection": { + "description": "Set this to true to enable the use of rules to target individual assets in this creative. When set to true creativeAssetSelection must be set. This also controls asset-level companions. When this is true, companion creatives should be assigned to creative assets. Learn more. Applicable to INSTREAM_VIDEO creatives.", + "type": "boolean" + }, + "exitCustomEvents": { + "description": "List of exit events configured for the creative. For DISPLAY and DISPLAY_IMAGE_GALLERY creatives, these are read-only and auto-generated from clickTags, For DISPLAY, an event is also created from the backupImageReportingLabel. Applicable to the following creative types: DISPLAY_IMAGE_GALLERY, all RICH_MEDIA, and all VPAID. Applicable to DISPLAY when the primary asset type is not HTML_IMAGE.", + "items": { + "$ref": "CreativeCustomEvent" + }, + "type": "array" + }, + "fsCommand": { + "$ref": "FsCommand", + "description": "OpenWindow FSCommand of this creative. This lets the SWF file communicate with either Flash Player or the program hosting Flash Player, such as a web browser. This is only triggered if allowScriptAccess field is true. Applicable to the following creative types: FLASH_INPAGE." + }, + "htmlCode": { + "description": "HTML code for the creative. This is a required field when applicable. This field is ignored if htmlCodeLocked is true. Applicable to the following creative types: all CUSTOM, FLASH_INPAGE, and HTML5_BANNER, and all RICH_MEDIA.", + "type": "string" + }, + "htmlCodeLocked": { + "description": "Whether HTML code is DCM-generated or manually entered. Set to true to ignore changes to htmlCode. Applicable to the following creative types: FLASH_INPAGE and HTML5_BANNER.", + "type": "boolean" + }, + "id": { + "description": "ID of this creative. This is a read-only, auto-generated field. Applicable to all creative types.", + "format": "int64", + "type": "string" + }, + "idDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of this creative. This is a read-only field. Applicable to all creative types." + }, + "kind": { + "default": "dfareporting#creative", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#creative\".", + "type": "string" + }, + "lastModifiedInfo": { + "$ref": "LastModifiedInfo", + "description": "Creative last modification information. This is a read-only field. Applicable to all creative types." + }, + "latestTraffickedCreativeId": { + "description": "Latest Studio trafficked creative ID associated with rich media and VPAID creatives. This is a read-only field. Applicable to the following creative types: all RICH_MEDIA, and all VPAID.", + "format": "int64", + "type": "string" + }, + "name": { + "description": "Name of the creative. This is a required field and must be less than 256 characters long. Applicable to all creative types.", + "type": "string" + }, + "overrideCss": { + "description": "Override CSS value for rich media creatives. Applicable to the following creative types: all RICH_MEDIA.", + "type": "string" + }, + "politeLoadAssetId": { + "description": "The asset ID of the polite load image asset. Applicable to the creative type: DISPLAY.", + "format": "int64", + "type": "string" + }, + "progressOffset": { + "$ref": "VideoOffset", + "description": "Amount of time to play the video before counting a view. Applicable to the following creative types: all INSTREAM_VIDEO." + }, + "redirectUrl": { + "description": "URL of hosted image or hosted video or another ad tag. For INSTREAM_VIDEO_REDIRECT creatives this is the in-stream video redirect URL. The standard for a VAST (Video Ad Serving Template) ad response allows for a redirect link to another VAST 2.0 or 3.0 call. This is a required field when applicable. Applicable to the following creative types: DISPLAY_REDIRECT, INTERNAL_REDIRECT, INTERSTITIAL_INTERNAL_REDIRECT, and INSTREAM_VIDEO_REDIRECT", + "type": "string" + }, + "renderingId": { + "description": "ID of current rendering version. This is a read-only field. Applicable to all creative types.", + "format": "int64", + "type": "string" + }, + "renderingIdDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the rendering ID of this creative. This is a read-only field. Applicable to all creative types." + }, + "requiredFlashPluginVersion": { + "description": "The minimum required Flash plugin version for this creative. For example, 11.2.202.235. This is a read-only field. Applicable to the following creative types: all RICH_MEDIA, and all VPAID.", + "type": "string" + }, + "requiredFlashVersion": { + "description": "The internal Flash version for this creative as calculated by DoubleClick Studio. This is a read-only field. Applicable to the following creative types: FLASH_INPAGE all RICH_MEDIA, and all VPAID. Applicable to DISPLAY when the primary asset type is not HTML_IMAGE.", + "format": "int32", + "type": "integer" + }, + "size": { + "$ref": "Size", + "description": "Size associated with this creative. When inserting or updating a creative either the size ID field or size width and height fields can be used. This is a required field when applicable; however for IMAGE, FLASH_INPAGE creatives, and for DISPLAY creatives with a primary asset of type HTML_IMAGE, if left blank, this field will be automatically set using the actual size of the associated image assets. Applicable to the following creative types: DISPLAY, DISPLAY_IMAGE_GALLERY, FLASH_INPAGE, HTML5_BANNER, IMAGE, and all RICH_MEDIA." + }, + "skipOffset": { + "$ref": "VideoOffset", + "description": "Amount of time to play the video before the skip button appears. Applicable to the following creative types: all INSTREAM_VIDEO." + }, + "skippable": { + "description": "Whether the user can choose to skip the creative. Applicable to the following creative types: all INSTREAM_VIDEO and all VPAID.", + "type": "boolean" + }, + "sslCompliant": { + "description": "Whether the creative is SSL-compliant. This is a read-only field. Applicable to all creative types.", + "type": "boolean" + }, + "sslOverride": { + "description": "Whether creative should be treated as SSL compliant even if the system scan shows it's not. Applicable to all creative types.", + "type": "boolean" + }, + "studioAdvertiserId": { + "description": "Studio advertiser ID associated with rich media and VPAID creatives. This is a read-only field. Applicable to the following creative types: all RICH_MEDIA, and all VPAID.", + "format": "int64", + "type": "string" + }, + "studioCreativeId": { + "description": "Studio creative ID associated with rich media and VPAID creatives. This is a read-only field. Applicable to the following creative types: all RICH_MEDIA, and all VPAID.", + "format": "int64", + "type": "string" + }, + "studioTraffickedCreativeId": { + "description": "Studio trafficked creative ID associated with rich media and VPAID creatives. This is a read-only field. Applicable to the following creative types: all RICH_MEDIA, and all VPAID.", + "format": "int64", + "type": "string" + }, + "subaccountId": { + "description": "Subaccount ID of this creative. This field, if left unset, will be auto-generated for both insert and update operations. Applicable to all creative types.", + "format": "int64", + "type": "string" + }, + "thirdPartyBackupImageImpressionsUrl": { + "description": "Third-party URL used to record backup image impressions. Applicable to the following creative types: all RICH_MEDIA.", + "type": "string" + }, + "thirdPartyRichMediaImpressionsUrl": { + "description": "Third-party URL used to record rich media impressions. Applicable to the following creative types: all RICH_MEDIA.", + "type": "string" + }, + "thirdPartyUrls": { + "description": "Third-party URLs for tracking in-stream video creative events. Applicable to the following creative types: all INSTREAM_VIDEO and all VPAID.", + "items": { + "$ref": "ThirdPartyTrackingUrl" + }, + "type": "array" + }, + "timerCustomEvents": { + "description": "List of timer events configured for the creative. For DISPLAY_IMAGE_GALLERY creatives, these are read-only and auto-generated from clickTags. Applicable to the following creative types: DISPLAY_IMAGE_GALLERY, all RICH_MEDIA, and all VPAID. Applicable to DISPLAY when the primary asset is not HTML_IMAGE.", + "items": { + "$ref": "CreativeCustomEvent" + }, + "type": "array" + }, + "totalFileSize": { + "description": "Combined size of all creative assets. This is a read-only field. Applicable to the following creative types: all RICH_MEDIA, and all VPAID.", + "format": "int64", + "type": "string" + }, + "type": { + "description": "Type of this creative. This is a required field. Applicable to all creative types.\n\nNote: FLASH_INPAGE, HTML5_BANNER, and IMAGE are only used for existing creatives. New creatives should use DISPLAY as a replacement for these types.", + "enum": [ + "BRAND_SAFE_DEFAULT_INSTREAM_VIDEO", + "CUSTOM_DISPLAY", + "CUSTOM_DISPLAY_INTERSTITIAL", + "DISPLAY", + "DISPLAY_IMAGE_GALLERY", + "DISPLAY_REDIRECT", + "FLASH_INPAGE", + "HTML5_BANNER", + "IMAGE", + "INSTREAM_VIDEO", + "INSTREAM_VIDEO_REDIRECT", + "INTERNAL_REDIRECT", + "INTERSTITIAL_INTERNAL_REDIRECT", + "RICH_MEDIA_DISPLAY_BANNER", + "RICH_MEDIA_DISPLAY_EXPANDING", + "RICH_MEDIA_DISPLAY_INTERSTITIAL", + "RICH_MEDIA_DISPLAY_MULTI_FLOATING_INTERSTITIAL", + "RICH_MEDIA_IM_EXPAND", + "RICH_MEDIA_INPAGE_FLOATING", + "RICH_MEDIA_MOBILE_IN_APP", + "RICH_MEDIA_PEEL_DOWN", + "TRACKING_TEXT", + "VPAID_LINEAR_VIDEO", + "VPAID_NON_LINEAR_VIDEO" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "universalAdId": { + "$ref": "UniversalAdId", + "description": "A Universal Ad ID as per the VAST 4.0 spec. Applicable to the following creative types: INSTREAM_VIDEO and VPAID." + }, + "version": { + "description": "The version number helps you keep track of multiple versions of your creative in your reports. The version number will always be auto-generated during insert operations to start at 1. For tracking creatives the version cannot be incremented and will always remain at 1. For all other creative types the version can be incremented only by 1 during update operations. In addition, the version will be automatically incremented by 1 when undergoing Rich Media creative merging. Applicable to all creative types.", + "format": "int32", + "type": "integer" + }, + "videoDescription": { + "description": "Description of the video ad. Applicable to the following creative types: all INSTREAM_VIDEO and all VPAID.", + "type": "string" + }, + "videoDuration": { + "description": "Creative video duration in seconds. This is a read-only field. Applicable to the following creative types: INSTREAM_VIDEO, all RICH_MEDIA, and all VPAID.", + "format": "float", + "type": "number" + } + }, + "type": "object" + }, + "CreativeAsset": { + "description": "Creative Asset.", + "id": "CreativeAsset", + "properties": { + "actionScript3": { + "description": "Whether ActionScript3 is enabled for the flash asset. This is a read-only field. Applicable to the following creative type: FLASH_INPAGE. Applicable to DISPLAY when the primary asset type is not HTML_IMAGE.", + "type": "boolean" + }, + "active": { + "description": "Whether the video asset is active. This is a read-only field for VPAID_NON_LINEAR_VIDEO assets. Applicable to the following creative types: INSTREAM_VIDEO and all VPAID.", + "type": "boolean" + }, + "alignment": { + "description": "Possible alignments for an asset. This is a read-only field. Applicable to the following creative types: RICH_MEDIA_DISPLAY_MULTI_FLOATING_INTERSTITIAL.", + "enum": [ + "ALIGNMENT_BOTTOM", + "ALIGNMENT_LEFT", + "ALIGNMENT_RIGHT", + "ALIGNMENT_TOP" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ], + "type": "string" + }, + "artworkType": { + "description": "Artwork type of rich media creative. This is a read-only field. Applicable to the following creative types: all RICH_MEDIA.", + "enum": [ + "ARTWORK_TYPE_FLASH", + "ARTWORK_TYPE_HTML5", + "ARTWORK_TYPE_IMAGE", + "ARTWORK_TYPE_MIXED" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ], + "type": "string" + }, + "assetIdentifier": { + "$ref": "CreativeAssetId", + "description": "Identifier of this asset. This is the same identifier returned during creative asset insert operation. This is a required field. Applicable to all but the following creative types: all REDIRECT and TRACKING_TEXT." + }, + "backupImageExit": { + "$ref": "CreativeCustomEvent", + "description": "Exit event configured for the backup image. Applicable to the following creative types: all RICH_MEDIA." + }, + "bitRate": { + "description": "Detected bit-rate for video asset. This is a read-only field. Applicable to the following creative types: INSTREAM_VIDEO and all VPAID.", + "format": "int32", + "type": "integer" + }, + "childAssetType": { + "description": "Rich media child asset type. This is a read-only field. Applicable to the following creative types: all VPAID.", + "enum": [ + "CHILD_ASSET_TYPE_DATA", + "CHILD_ASSET_TYPE_FLASH", + "CHILD_ASSET_TYPE_IMAGE", + "CHILD_ASSET_TYPE_VIDEO" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ], + "type": "string" + }, + "collapsedSize": { + "$ref": "Size", + "description": "Size of an asset when collapsed. This is a read-only field. Applicable to the following creative types: all RICH_MEDIA and all VPAID. Additionally, applicable to assets whose displayType is ASSET_DISPLAY_TYPE_EXPANDING or ASSET_DISPLAY_TYPE_PEEL_DOWN." + }, + "companionCreativeIds": { + "description": "List of companion creatives assigned to an in-stream video creative asset. Acceptable values include IDs of existing flash and image creatives. Applicable to INSTREAM_VIDEO creative type with dynamicAssetSelection set to true.", + "items": { + "format": "int64", + "type": "string" + }, + "type": "array" + }, + "customStartTimeValue": { + "description": "Custom start time in seconds for making the asset visible. Applicable to the following creative types: all RICH_MEDIA. Value must be greater than or equal to 0.", + "format": "int32", + "type": "integer" + }, + "detectedFeatures": { + "description": "List of feature dependencies for the creative asset that are detected by DCM. Feature dependencies are features that a browser must be able to support in order to render your HTML5 creative correctly. This is a read-only, auto-generated field. Applicable to the following creative types: HTML5_BANNER. Applicable to DISPLAY when the primary asset type is not HTML_IMAGE.", + "items": { + "enum": [ + "APPLICATION_CACHE", + "AUDIO", + "CANVAS", + "CANVAS_TEXT", + "CSS_ANIMATIONS", + "CSS_BACKGROUND_SIZE", + "CSS_BORDER_IMAGE", + "CSS_BORDER_RADIUS", + "CSS_BOX_SHADOW", + "CSS_COLUMNS", + "CSS_FLEX_BOX", + "CSS_FONT_FACE", + "CSS_GENERATED_CONTENT", + "CSS_GRADIENTS", + "CSS_HSLA", + "CSS_MULTIPLE_BGS", + "CSS_OPACITY", + "CSS_REFLECTIONS", + "CSS_RGBA", + "CSS_TEXT_SHADOW", + "CSS_TRANSFORMS", + "CSS_TRANSFORMS3D", + "CSS_TRANSITIONS", + "DRAG_AND_DROP", + "GEO_LOCATION", + "HASH_CHANGE", + "HISTORY", + "INDEXED_DB", + "INLINE_SVG", + "INPUT_ATTR_AUTOCOMPLETE", + "INPUT_ATTR_AUTOFOCUS", + "INPUT_ATTR_LIST", + "INPUT_ATTR_MAX", + "INPUT_ATTR_MIN", + "INPUT_ATTR_MULTIPLE", + "INPUT_ATTR_PATTERN", + "INPUT_ATTR_PLACEHOLDER", + "INPUT_ATTR_REQUIRED", + "INPUT_ATTR_STEP", + "INPUT_TYPE_COLOR", + "INPUT_TYPE_DATE", + "INPUT_TYPE_DATETIME", + "INPUT_TYPE_DATETIME_LOCAL", + "INPUT_TYPE_EMAIL", + "INPUT_TYPE_MONTH", + "INPUT_TYPE_NUMBER", + "INPUT_TYPE_RANGE", + "INPUT_TYPE_SEARCH", + "INPUT_TYPE_TEL", + "INPUT_TYPE_TIME", + "INPUT_TYPE_URL", + "INPUT_TYPE_WEEK", + "LOCAL_STORAGE", + "POST_MESSAGE", + "SESSION_STORAGE", + "SMIL", + "SVG_CLIP_PATHS", + "SVG_FE_IMAGE", + "SVG_FILTERS", + "SVG_HREF", + "TOUCH", + "VIDEO", + "WEBGL", + "WEB_SOCKETS", + "WEB_SQL_DATABASE", + "WEB_WORKERS" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "type": "array" + }, + "displayType": { + "description": "Type of rich media asset. This is a read-only field. Applicable to the following creative types: all RICH_MEDIA.", + "enum": [ + "ASSET_DISPLAY_TYPE_BACKDROP", + "ASSET_DISPLAY_TYPE_EXPANDING", + "ASSET_DISPLAY_TYPE_FLASH_IN_FLASH", + "ASSET_DISPLAY_TYPE_FLASH_IN_FLASH_EXPANDING", + "ASSET_DISPLAY_TYPE_FLOATING", + "ASSET_DISPLAY_TYPE_INPAGE", + "ASSET_DISPLAY_TYPE_OVERLAY", + "ASSET_DISPLAY_TYPE_PEEL_DOWN", + "ASSET_DISPLAY_TYPE_VPAID_LINEAR", + "ASSET_DISPLAY_TYPE_VPAID_NON_LINEAR" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "duration": { + "description": "Duration in seconds for which an asset will be displayed. Applicable to the following creative types: INSTREAM_VIDEO and VPAID_LINEAR_VIDEO. Value must be greater than or equal to 1.", + "format": "int32", + "type": "integer" + }, + "durationType": { + "description": "Duration type for which an asset will be displayed. Applicable to the following creative types: all RICH_MEDIA.", + "enum": [ + "ASSET_DURATION_TYPE_AUTO", + "ASSET_DURATION_TYPE_CUSTOM", + "ASSET_DURATION_TYPE_NONE" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, + "expandedDimension": { + "$ref": "Size", + "description": "Detected expanded dimension for video asset. This is a read-only field. Applicable to the following creative types: INSTREAM_VIDEO and all VPAID." + }, + "fileSize": { + "description": "File size associated with this creative asset. This is a read-only field. Applicable to all but the following creative types: all REDIRECT and TRACKING_TEXT.", + "format": "int64", + "type": "string" + }, + "flashVersion": { + "description": "Flash version of the asset. This is a read-only field. Applicable to the following creative types: FLASH_INPAGE, all RICH_MEDIA, and all VPAID. Applicable to DISPLAY when the primary asset type is not HTML_IMAGE.", + "format": "int32", + "type": "integer" + }, + "hideFlashObjects": { + "description": "Whether to hide Flash objects flag for an asset. Applicable to the following creative types: all RICH_MEDIA.", + "type": "boolean" + }, + "hideSelectionBoxes": { + "description": "Whether to hide selection boxes flag for an asset. Applicable to the following creative types: all RICH_MEDIA.", + "type": "boolean" + }, + "horizontallyLocked": { + "description": "Whether the asset is horizontally locked. This is a read-only field. Applicable to the following creative types: all RICH_MEDIA.", + "type": "boolean" + }, + "id": { + "description": "Numeric ID of this creative asset. This is a required field and should not be modified. Applicable to all but the following creative types: all REDIRECT and TRACKING_TEXT.", + "format": "int64", + "type": "string" + }, + "idDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of the asset. This is a read-only, auto-generated field." + }, + "mimeType": { + "description": "Detected MIME type for video asset. This is a read-only field. Applicable to the following creative types: INSTREAM_VIDEO and all VPAID.", + "type": "string" + }, + "offset": { + "$ref": "OffsetPosition", + "description": "Offset position for an asset in collapsed mode. This is a read-only field. Applicable to the following creative types: all RICH_MEDIA and all VPAID. Additionally, only applicable to assets whose displayType is ASSET_DISPLAY_TYPE_EXPANDING or ASSET_DISPLAY_TYPE_PEEL_DOWN." + }, + "orientation": { + "description": "Orientation of video asset. This is a read-only, auto-generated field.", + "enum": [ + "LANDSCAPE", + "PORTRAIT", + "SQUARE" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, + "originalBackup": { + "description": "Whether the backup asset is original or changed by the user in DCM. Applicable to the following creative types: all RICH_MEDIA.", + "type": "boolean" + }, + "position": { + "$ref": "OffsetPosition", + "description": "Offset position for an asset. Applicable to the following creative types: all RICH_MEDIA." + }, + "positionLeftUnit": { + "description": "Offset left unit for an asset. This is a read-only field. Applicable to the following creative types: all RICH_MEDIA.", + "enum": [ + "OFFSET_UNIT_PERCENT", + "OFFSET_UNIT_PIXEL", + "OFFSET_UNIT_PIXEL_FROM_CENTER" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, + "positionTopUnit": { + "description": "Offset top unit for an asset. This is a read-only field if the asset displayType is ASSET_DISPLAY_TYPE_OVERLAY. Applicable to the following creative types: all RICH_MEDIA.", + "enum": [ + "OFFSET_UNIT_PERCENT", + "OFFSET_UNIT_PIXEL", + "OFFSET_UNIT_PIXEL_FROM_CENTER" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, + "progressiveServingUrl": { + "description": "Progressive URL for video asset. This is a read-only field. Applicable to the following creative types: INSTREAM_VIDEO and all VPAID.", + "type": "string" + }, + "pushdown": { + "description": "Whether the asset pushes down other content. Applicable to the following creative types: all RICH_MEDIA. Additionally, only applicable when the asset offsets are 0, the collapsedSize.width matches size.width, and the collapsedSize.height is less than size.height.", + "type": "boolean" + }, + "pushdownDuration": { + "description": "Pushdown duration in seconds for an asset. Applicable to the following creative types: all RICH_MEDIA.Additionally, only applicable when the asset pushdown field is true, the offsets are 0, the collapsedSize.width matches size.width, and the collapsedSize.height is less than size.height. Acceptable values are 0 to 9.99, inclusive.", + "format": "float", + "type": "number" + }, + "role": { + "description": "Role of the asset in relation to creative. Applicable to all but the following creative types: all REDIRECT and TRACKING_TEXT. This is a required field.\nPRIMARY applies to DISPLAY, FLASH_INPAGE, HTML5_BANNER, IMAGE, DISPLAY_IMAGE_GALLERY, all RICH_MEDIA (which may contain multiple primary assets), and all VPAID creatives.\nBACKUP_IMAGE applies to FLASH_INPAGE, HTML5_BANNER, all RICH_MEDIA, and all VPAID creatives. Applicable to DISPLAY when the primary asset type is not HTML_IMAGE.\nADDITIONAL_IMAGE and ADDITIONAL_FLASH apply to FLASH_INPAGE creatives.\nOTHER refers to assets from sources other than DCM, such as Studio uploaded assets, applicable to all RICH_MEDIA and all VPAID creatives.\nPARENT_VIDEO refers to videos uploaded by the user in DCM and is applicable to INSTREAM_VIDEO and VPAID_LINEAR_VIDEO creatives.\nTRANSCODED_VIDEO refers to videos transcoded by DCM from PARENT_VIDEO assets and is applicable to INSTREAM_VIDEO and VPAID_LINEAR_VIDEO creatives.\nALTERNATE_VIDEO refers to the DCM representation of child asset videos from Studio, and is applicable to VPAID_LINEAR_VIDEO creatives. These cannot be added or removed within DCM.\nFor VPAID_LINEAR_VIDEO creatives, PARENT_VIDEO, TRANSCODED_VIDEO and ALTERNATE_VIDEO assets that are marked active serve as backup in case the VPAID creative cannot be served. Only PARENT_VIDEO assets can be added or removed for an INSTREAM_VIDEO or VPAID_LINEAR_VIDEO creative.", + "enum": [ + "ADDITIONAL_FLASH", + "ADDITIONAL_IMAGE", + "ALTERNATE_VIDEO", + "BACKUP_IMAGE", + "OTHER", + "PARENT_VIDEO", + "PRIMARY", + "TRANSCODED_VIDEO" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "size": { + "$ref": "Size", + "description": "Size associated with this creative asset. This is a required field when applicable; however for IMAGE and FLASH_INPAGE, creatives if left blank, this field will be automatically set using the actual size of the associated image asset. Applicable to the following creative types: DISPLAY_IMAGE_GALLERY, FLASH_INPAGE, HTML5_BANNER, IMAGE, and all RICH_MEDIA. Applicable to DISPLAY when the primary asset type is not HTML_IMAGE." + }, + "sslCompliant": { + "description": "Whether the asset is SSL-compliant. This is a read-only field. Applicable to all but the following creative types: all REDIRECT and TRACKING_TEXT.", + "type": "boolean" + }, + "startTimeType": { + "description": "Initial wait time type before making the asset visible. Applicable to the following creative types: all RICH_MEDIA.", + "enum": [ + "ASSET_START_TIME_TYPE_CUSTOM", + "ASSET_START_TIME_TYPE_NONE" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "streamingServingUrl": { + "description": "Streaming URL for video asset. This is a read-only field. Applicable to the following creative types: INSTREAM_VIDEO and all VPAID.", + "type": "string" + }, + "transparency": { + "description": "Whether the asset is transparent. Applicable to the following creative types: all RICH_MEDIA. Additionally, only applicable to HTML5 assets.", + "type": "boolean" + }, + "verticallyLocked": { + "description": "Whether the asset is vertically locked. This is a read-only field. Applicable to the following creative types: all RICH_MEDIA.", + "type": "boolean" + }, + "videoDuration": { + "description": "Detected video duration for video asset. This is a read-only field. Applicable to the following creative types: INSTREAM_VIDEO and all VPAID.", + "format": "float", + "type": "number" + }, + "windowMode": { + "description": "Window mode options for flash assets. Applicable to the following creative types: FLASH_INPAGE, RICH_MEDIA_DISPLAY_EXPANDING, RICH_MEDIA_IM_EXPAND, RICH_MEDIA_DISPLAY_BANNER, and RICH_MEDIA_INPAGE_FLOATING.", + "enum": [ + "OPAQUE", + "TRANSPARENT", + "WINDOW" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, + "zIndex": { + "description": "zIndex value of an asset. Applicable to the following creative types: all RICH_MEDIA.Additionally, only applicable to assets whose displayType is NOT one of the following types: ASSET_DISPLAY_TYPE_INPAGE or ASSET_DISPLAY_TYPE_OVERLAY. Acceptable values are -999999999 to 999999999, inclusive.", + "format": "int32", + "type": "integer" + }, + "zipFilename": { + "description": "File name of zip file. This is a read-only field. Applicable to the following creative types: HTML5_BANNER.", + "type": "string" + }, + "zipFilesize": { + "description": "Size of zip file. This is a read-only field. Applicable to the following creative types: HTML5_BANNER.", + "type": "string" + } + }, + "type": "object" + }, + "CreativeAssetId": { + "description": "Creative Asset ID.", + "id": "CreativeAssetId", + "properties": { + "name": { + "description": "Name of the creative asset. This is a required field while inserting an asset. After insertion, this assetIdentifier is used to identify the uploaded asset. Characters in the name must be alphanumeric or one of the following: \".-_ \". Spaces are allowed.", + "type": "string" + }, + "type": { + "description": "Type of asset to upload. This is a required field. FLASH and IMAGE are no longer supported for new uploads. All image assets should use HTML_IMAGE.", + "enum": [ + "FLASH", + "HTML", + "HTML_IMAGE", + "IMAGE", + "VIDEO" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "CreativeAssetMetadata": { + "description": "CreativeAssets contains properties of a creative asset file which will be uploaded or has already been uploaded. Refer to the creative sample code for how to upload assets and insert a creative.", + "id": "CreativeAssetMetadata", + "properties": { + "assetIdentifier": { + "$ref": "CreativeAssetId", + "description": "ID of the creative asset. This is a required field." + }, + "clickTags": { + "description": "List of detected click tags for assets. This is a read-only auto-generated field.", + "items": { + "$ref": "ClickTag" + }, + "type": "array" + }, + "detectedFeatures": { + "description": "List of feature dependencies for the creative asset that are detected by DCM. Feature dependencies are features that a browser must be able to support in order to render your HTML5 creative correctly. This is a read-only, auto-generated field.", + "items": { + "enum": [ + "APPLICATION_CACHE", + "AUDIO", + "CANVAS", + "CANVAS_TEXT", + "CSS_ANIMATIONS", + "CSS_BACKGROUND_SIZE", + "CSS_BORDER_IMAGE", + "CSS_BORDER_RADIUS", + "CSS_BOX_SHADOW", + "CSS_COLUMNS", + "CSS_FLEX_BOX", + "CSS_FONT_FACE", + "CSS_GENERATED_CONTENT", + "CSS_GRADIENTS", + "CSS_HSLA", + "CSS_MULTIPLE_BGS", + "CSS_OPACITY", + "CSS_REFLECTIONS", + "CSS_RGBA", + "CSS_TEXT_SHADOW", + "CSS_TRANSFORMS", + "CSS_TRANSFORMS3D", + "CSS_TRANSITIONS", + "DRAG_AND_DROP", + "GEO_LOCATION", + "HASH_CHANGE", + "HISTORY", + "INDEXED_DB", + "INLINE_SVG", + "INPUT_ATTR_AUTOCOMPLETE", + "INPUT_ATTR_AUTOFOCUS", + "INPUT_ATTR_LIST", + "INPUT_ATTR_MAX", + "INPUT_ATTR_MIN", + "INPUT_ATTR_MULTIPLE", + "INPUT_ATTR_PATTERN", + "INPUT_ATTR_PLACEHOLDER", + "INPUT_ATTR_REQUIRED", + "INPUT_ATTR_STEP", + "INPUT_TYPE_COLOR", + "INPUT_TYPE_DATE", + "INPUT_TYPE_DATETIME", + "INPUT_TYPE_DATETIME_LOCAL", + "INPUT_TYPE_EMAIL", + "INPUT_TYPE_MONTH", + "INPUT_TYPE_NUMBER", + "INPUT_TYPE_RANGE", + "INPUT_TYPE_SEARCH", + "INPUT_TYPE_TEL", + "INPUT_TYPE_TIME", + "INPUT_TYPE_URL", + "INPUT_TYPE_WEEK", + "LOCAL_STORAGE", + "POST_MESSAGE", + "SESSION_STORAGE", + "SMIL", + "SVG_CLIP_PATHS", + "SVG_FE_IMAGE", + "SVG_FILTERS", + "SVG_HREF", + "TOUCH", + "VIDEO", + "WEBGL", + "WEB_SOCKETS", + "WEB_SQL_DATABASE", + "WEB_WORKERS" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "type": "array" + }, + "id": { + "description": "Numeric ID of the asset. This is a read-only, auto-generated field.", + "format": "int64", + "type": "string" + }, + "idDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the numeric ID of the asset. This is a read-only, auto-generated field." + }, + "kind": { + "default": "dfareporting#creativeAssetMetadata", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#creativeAssetMetadata\".", + "type": "string" + }, + "warnedValidationRules": { + "description": "Rules validated during code generation that generated a warning. This is a read-only, auto-generated field.\n\nPossible values are:\n- \"ADMOB_REFERENCED\"\n- \"ASSET_FORMAT_UNSUPPORTED_DCM\"\n- \"ASSET_INVALID\"\n- \"CLICK_TAG_HARD_CODED\"\n- \"CLICK_TAG_INVALID\"\n- \"CLICK_TAG_IN_GWD\"\n- \"CLICK_TAG_MISSING\"\n- \"CLICK_TAG_MORE_THAN_ONE\"\n- \"CLICK_TAG_NON_TOP_LEVEL\"\n- \"COMPONENT_UNSUPPORTED_DCM\"\n- \"ENABLER_UNSUPPORTED_METHOD_DCM\"\n- \"EXTERNAL_FILE_REFERENCED\"\n- \"FILE_DETAIL_EMPTY\"\n- \"FILE_TYPE_INVALID\"\n- \"GWD_PROPERTIES_INVALID\"\n- \"HTML5_FEATURE_UNSUPPORTED\"\n- \"LINKED_FILE_NOT_FOUND\"\n- \"MAX_FLASH_VERSION_11\"\n- \"MRAID_REFERENCED\"\n- \"NOT_SSL_COMPLIANT\"\n- \"ORPHANED_ASSET\"\n- \"PRIMARY_HTML_MISSING\"\n- \"SVG_INVALID\"\n- \"ZIP_INVALID\"", + "items": { + "enum": [ + "ADMOB_REFERENCED", + "ASSET_FORMAT_UNSUPPORTED_DCM", + "ASSET_INVALID", + "CLICK_TAG_HARD_CODED", + "CLICK_TAG_INVALID", + "CLICK_TAG_IN_GWD", + "CLICK_TAG_MISSING", + "CLICK_TAG_MORE_THAN_ONE", + "CLICK_TAG_NON_TOP_LEVEL", + "COMPONENT_UNSUPPORTED_DCM", + "ENABLER_UNSUPPORTED_METHOD_DCM", + "EXTERNAL_FILE_REFERENCED", + "FILE_DETAIL_EMPTY", + "FILE_TYPE_INVALID", + "GWD_PROPERTIES_INVALID", + "HTML5_FEATURE_UNSUPPORTED", + "LINKED_FILE_NOT_FOUND", + "MAX_FLASH_VERSION_11", + "MRAID_REFERENCED", + "NOT_SSL_COMPLIANT", + "ORPHANED_ASSET", + "PRIMARY_HTML_MISSING", + "SVG_INVALID", + "ZIP_INVALID" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "CreativeAssetSelection": { + "description": "Encapsulates the list of rules for asset selection and a default asset in case none of the rules match. Applicable to INSTREAM_VIDEO creatives.", + "id": "CreativeAssetSelection", + "properties": { + "defaultAssetId": { + "description": "A creativeAssets[].id. This should refer to one of the parent assets in this creative, and will be served if none of the rules match. This is a required field.", + "format": "int64", + "type": "string" + }, + "rules": { + "description": "Rules determine which asset will be served to a viewer. Rules will be evaluated in the order in which they are stored in this list. This list must contain at least one rule. Applicable to INSTREAM_VIDEO creatives.", + "items": { + "$ref": "Rule" + }, + "type": "array" + } + }, + "type": "object" + }, + "CreativeAssignment": { + "description": "Creative Assignment.", + "id": "CreativeAssignment", + "properties": { + "active": { + "description": "Whether this creative assignment is active. When true, the creative will be included in the ad's rotation.", + "type": "boolean" + }, + "applyEventTags": { + "description": "Whether applicable event tags should fire when this creative assignment is rendered. If this value is unset when the ad is inserted or updated, it will default to true for all creative types EXCEPT for INTERNAL_REDIRECT, INTERSTITIAL_INTERNAL_REDIRECT, and INSTREAM_VIDEO.", + "type": "boolean" + }, + "clickThroughUrl": { + "$ref": "ClickThroughUrl", + "description": "Click-through URL of the creative assignment." + }, + "companionCreativeOverrides": { + "description": "Companion creative overrides for this creative assignment. Applicable to video ads.", + "items": { + "$ref": "CompanionClickThroughOverride" + }, + "type": "array" + }, + "creativeGroupAssignments": { + "description": "Creative group assignments for this creative assignment. Only one assignment per creative group number is allowed for a maximum of two assignments.", + "items": { + "$ref": "CreativeGroupAssignment" + }, + "type": "array" + }, + "creativeId": { + "description": "ID of the creative to be assigned. This is a required field.", + "format": "int64", + "type": "string" + }, + "creativeIdDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of the creative. This is a read-only, auto-generated field." + }, + "endTime": { + "description": "Date and time that the assigned creative should stop serving. Must be later than the start time.", + "format": "date-time", + "type": "string" + }, + "richMediaExitOverrides": { + "description": "Rich media exit overrides for this creative assignment.\nApplicable when the creative type is any of the following: \n- DISPLAY\n- RICH_MEDIA_INPAGE\n- RICH_MEDIA_INPAGE_FLOATING\n- RICH_MEDIA_IM_EXPAND\n- RICH_MEDIA_EXPANDING\n- RICH_MEDIA_INTERSTITIAL_FLOAT\n- RICH_MEDIA_MOBILE_IN_APP\n- RICH_MEDIA_MULTI_FLOATING\n- RICH_MEDIA_PEEL_DOWN\n- VPAID_LINEAR\n- VPAID_NON_LINEAR", + "items": { + "$ref": "RichMediaExitOverride" + }, + "type": "array" + }, + "sequence": { + "description": "Sequence number of the creative assignment, applicable when the rotation type is CREATIVE_ROTATION_TYPE_SEQUENTIAL. Acceptable values are 1 to 65535, inclusive.", + "format": "int32", + "type": "integer" + }, + "sslCompliant": { + "description": "Whether the creative to be assigned is SSL-compliant. This is a read-only field that is auto-generated when the ad is inserted or updated.", + "type": "boolean" + }, + "startTime": { + "description": "Date and time that the assigned creative should start serving.", + "format": "date-time", + "type": "string" + }, + "weight": { + "description": "Weight of the creative assignment, applicable when the rotation type is CREATIVE_ROTATION_TYPE_RANDOM. Value must be greater than or equal to 1.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "CreativeClickThroughUrl": { + "description": "Click-through URL", + "id": "CreativeClickThroughUrl", + "properties": { + "computedClickThroughUrl": { + "description": "Read-only convenience field representing the actual URL that will be used for this click-through. The URL is computed as follows: \n- If landingPageId is specified then that landing page's URL is assigned to this field.\n- Otherwise, the customClickThroughUrl is assigned to this field.", + "type": "string" + }, + "customClickThroughUrl": { + "description": "Custom click-through URL. Applicable if the landingPageId field is left unset.", + "type": "string" + }, + "landingPageId": { + "description": "ID of the landing page for the click-through URL.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "CreativeCustomEvent": { + "description": "Creative Custom Event.", + "id": "CreativeCustomEvent", + "properties": { + "advertiserCustomEventId": { + "description": "Unique ID of this event used by DDM Reporting and Data Transfer. This is a read-only field.", + "format": "int64", + "type": "string" + }, + "advertiserCustomEventName": { + "description": "User-entered name for the event.", + "type": "string" + }, + "advertiserCustomEventType": { + "description": "Type of the event. This is a read-only field.", + "enum": [ + "ADVERTISER_EVENT_COUNTER", + "ADVERTISER_EVENT_EXIT", + "ADVERTISER_EVENT_TIMER" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, + "artworkLabel": { + "description": "Artwork label column, used to link events in DCM back to events in Studio. This is a required field and should not be modified after insertion.", + "type": "string" + }, + "artworkType": { + "description": "Artwork type used by the creative.This is a read-only field.", + "enum": [ + "ARTWORK_TYPE_FLASH", + "ARTWORK_TYPE_HTML5", + "ARTWORK_TYPE_IMAGE", + "ARTWORK_TYPE_MIXED" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ], + "type": "string" + }, + "exitClickThroughUrl": { + "$ref": "CreativeClickThroughUrl", + "description": "Exit click-through URL for the event. This field is used only for exit events." + }, + "id": { + "description": "ID of this event. This is a required field and should not be modified after insertion.", + "format": "int64", + "type": "string" + }, + "popupWindowProperties": { + "$ref": "PopupWindowProperties", + "description": "Properties for rich media popup windows. This field is used only for exit events." + }, + "targetType": { + "description": "Target type used by the event.", + "enum": [ + "TARGET_BLANK", + "TARGET_PARENT", + "TARGET_POPUP", + "TARGET_SELF", + "TARGET_TOP" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "videoReportingId": { + "description": "Video reporting ID, used to differentiate multiple videos in a single creative. This is a read-only field.", + "type": "string" + } + }, + "type": "object" + }, + "CreativeField": { + "description": "Contains properties of a creative field.", + "id": "CreativeField", + "properties": { + "accountId": { + "description": "Account ID of this creative field. This is a read-only field that can be left blank.", + "format": "int64", + "type": "string" + }, + "advertiserId": { + "description": "Advertiser ID of this creative field. This is a required field on insertion.", + "format": "int64", + "type": "string" + }, + "advertiserIdDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of the advertiser. This is a read-only, auto-generated field." + }, + "id": { + "description": "ID of this creative field. This is a read-only, auto-generated field.", + "format": "int64", + "type": "string" + }, + "kind": { + "default": "dfareporting#creativeField", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#creativeField\".", + "type": "string" + }, + "name": { + "description": "Name of this creative field. This is a required field and must be less than 256 characters long and unique among creative fields of the same advertiser.", + "type": "string" + }, + "subaccountId": { + "description": "Subaccount ID of this creative field. This is a read-only field that can be left blank.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "CreativeFieldAssignment": { + "description": "Creative Field Assignment.", + "id": "CreativeFieldAssignment", + "properties": { + "creativeFieldId": { + "description": "ID of the creative field.", + "format": "int64", + "type": "string" + }, + "creativeFieldValueId": { + "description": "ID of the creative field value.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "CreativeFieldValue": { + "description": "Contains properties of a creative field value.", + "id": "CreativeFieldValue", + "properties": { + "id": { + "description": "ID of this creative field value. This is a read-only, auto-generated field.", + "format": "int64", + "type": "string" + }, + "kind": { + "default": "dfareporting#creativeFieldValue", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#creativeFieldValue\".", + "type": "string" + }, + "value": { + "description": "Value of this creative field value. It needs to be less than 256 characters in length and unique per creative field.", + "type": "string" + } + }, + "type": "object" + }, + "CreativeFieldValuesListResponse": { + "description": "Creative Field Value List Response", + "id": "CreativeFieldValuesListResponse", + "properties": { + "creativeFieldValues": { + "description": "Creative field value collection.", + "items": { + "$ref": "CreativeFieldValue" + }, + "type": "array" + }, + "kind": { + "default": "dfareporting#creativeFieldValuesListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#creativeFieldValuesListResponse\".", + "type": "string" + }, + "nextPageToken": { + "description": "Pagination token to be used for the next list operation.", + "type": "string" + } + }, + "type": "object" + }, + "CreativeFieldsListResponse": { + "description": "Creative Field List Response", + "id": "CreativeFieldsListResponse", + "properties": { + "creativeFields": { + "description": "Creative field collection.", + "items": { + "$ref": "CreativeField" + }, + "type": "array" + }, + "kind": { + "default": "dfareporting#creativeFieldsListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#creativeFieldsListResponse\".", + "type": "string" + }, + "nextPageToken": { + "description": "Pagination token to be used for the next list operation.", + "type": "string" + } + }, + "type": "object" + }, + "CreativeGroup": { + "description": "Contains properties of a creative group.", + "id": "CreativeGroup", + "properties": { + "accountId": { + "description": "Account ID of this creative group. This is a read-only field that can be left blank.", + "format": "int64", + "type": "string" + }, + "advertiserId": { + "description": "Advertiser ID of this creative group. This is a required field on insertion.", + "format": "int64", + "type": "string" + }, + "advertiserIdDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of the advertiser. This is a read-only, auto-generated field." + }, + "groupNumber": { + "description": "Subgroup of the creative group. Assign your creative groups to a subgroup in order to filter or manage them more easily. This field is required on insertion and is read-only after insertion. Acceptable values are 1 to 2, inclusive.", + "format": "int32", + "type": "integer" + }, + "id": { + "description": "ID of this creative group. This is a read-only, auto-generated field.", + "format": "int64", + "type": "string" + }, + "kind": { + "default": "dfareporting#creativeGroup", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#creativeGroup\".", + "type": "string" + }, + "name": { + "description": "Name of this creative group. This is a required field and must be less than 256 characters long and unique among creative groups of the same advertiser.", + "type": "string" + }, + "subaccountId": { + "description": "Subaccount ID of this creative group. This is a read-only field that can be left blank.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "CreativeGroupAssignment": { + "description": "Creative Group Assignment.", + "id": "CreativeGroupAssignment", + "properties": { + "creativeGroupId": { + "description": "ID of the creative group to be assigned.", + "format": "int64", + "type": "string" + }, + "creativeGroupNumber": { + "description": "Creative group number of the creative group assignment.", + "enum": [ + "CREATIVE_GROUP_ONE", + "CREATIVE_GROUP_TWO" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "CreativeGroupsListResponse": { + "description": "Creative Group List Response", + "id": "CreativeGroupsListResponse", + "properties": { + "creativeGroups": { + "description": "Creative group collection.", + "items": { + "$ref": "CreativeGroup" + }, + "type": "array" + }, + "kind": { + "default": "dfareporting#creativeGroupsListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#creativeGroupsListResponse\".", + "type": "string" + }, + "nextPageToken": { + "description": "Pagination token to be used for the next list operation.", + "type": "string" + } + }, + "type": "object" + }, + "CreativeOptimizationConfiguration": { + "description": "Creative optimization settings.", + "id": "CreativeOptimizationConfiguration", + "properties": { + "id": { + "description": "ID of this creative optimization config. This field is auto-generated when the campaign is inserted or updated. It can be null for existing campaigns.", + "format": "int64", + "type": "string" + }, + "name": { + "description": "Name of this creative optimization config. This is a required field and must be less than 129 characters long.", + "type": "string" + }, + "optimizationActivitys": { + "description": "List of optimization activities associated with this configuration.", + "items": { + "$ref": "OptimizationActivity" + }, + "type": "array" + }, + "optimizationModel": { + "description": "Optimization model for this configuration.", + "enum": [ + "CLICK", + "POST_CLICK", + "POST_CLICK_AND_IMPRESSION", + "POST_IMPRESSION", + "VIDEO_COMPLETION" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "CreativeRotation": { + "description": "Creative Rotation.", + "id": "CreativeRotation", + "properties": { + "creativeAssignments": { + "description": "Creative assignments in this creative rotation.", + "items": { + "$ref": "CreativeAssignment" + }, + "type": "array" + }, + "creativeOptimizationConfigurationId": { + "description": "Creative optimization configuration that is used by this ad. It should refer to one of the existing optimization configurations in the ad's campaign. If it is unset or set to 0, then the campaign's default optimization configuration will be used for this ad.", + "format": "int64", + "type": "string" + }, + "type": { + "description": "Type of creative rotation. Can be used to specify whether to use sequential or random rotation.", + "enum": [ + "CREATIVE_ROTATION_TYPE_RANDOM", + "CREATIVE_ROTATION_TYPE_SEQUENTIAL" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "weightCalculationStrategy": { + "description": "Strategy for calculating weights. Used with CREATIVE_ROTATION_TYPE_RANDOM.", + "enum": [ + "WEIGHT_STRATEGY_CUSTOM", + "WEIGHT_STRATEGY_EQUAL", + "WEIGHT_STRATEGY_HIGHEST_CTR", + "WEIGHT_STRATEGY_OPTIMIZED" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "CreativeSettings": { + "description": "Creative Settings", + "id": "CreativeSettings", + "properties": { + "iFrameFooter": { + "description": "Header text for iFrames for this site. Must be less than or equal to 2000 characters long.", + "type": "string" + }, + "iFrameHeader": { + "description": "Header text for iFrames for this site. Must be less than or equal to 2000 characters long.", + "type": "string" + } + }, + "type": "object" + }, + "CreativesListResponse": { + "description": "Creative List Response", + "id": "CreativesListResponse", + "properties": { + "creatives": { + "description": "Creative collection.", + "items": { + "$ref": "Creative" + }, + "type": "array" + }, + "kind": { + "default": "dfareporting#creativesListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#creativesListResponse\".", + "type": "string" + }, + "nextPageToken": { + "description": "Pagination token to be used for the next list operation.", + "type": "string" + } + }, + "type": "object" + }, + "CrossDimensionReachReportCompatibleFields": { + "description": "Represents fields that are compatible to be selected for a report of type \"CROSS_DIMENSION_REACH\".", + "id": "CrossDimensionReachReportCompatibleFields", + "properties": { + "breakdown": { + "description": "Dimensions which are compatible to be selected in the \"breakdown\" section of the report.", + "items": { + "$ref": "Dimension" + }, + "type": "array" + }, + "dimensionFilters": { + "description": "Dimensions which are compatible to be selected in the \"dimensionFilters\" section of the report.", + "items": { + "$ref": "Dimension" + }, + "type": "array" + }, + "kind": { + "default": "dfareporting#crossDimensionReachReportCompatibleFields", + "description": "The kind of resource this is, in this case dfareporting#crossDimensionReachReportCompatibleFields.", + "type": "string" + }, + "metrics": { + "description": "Metrics which are compatible to be selected in the \"metricNames\" section of the report.", + "items": { + "$ref": "Metric" + }, + "type": "array" + }, + "overlapMetrics": { + "description": "Metrics which are compatible to be selected in the \"overlapMetricNames\" section of the report.", + "items": { + "$ref": "Metric" + }, + "type": "array" + } + }, + "type": "object" + }, + "CustomFloodlightVariable": { + "description": "A custom floodlight variable.", + "id": "CustomFloodlightVariable", + "properties": { + "kind": { + "default": "dfareporting#customFloodlightVariable", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#customFloodlightVariable\".", + "type": "string" + }, + "type": { + "description": "The type of custom floodlight variable to supply a value for. These map to the \"u[1-20]=\" in the tags.", + "enum": [ + "U1", + "U10", + "U100", + "U11", + "U12", + "U13", + "U14", + "U15", + "U16", + "U17", + "U18", + "U19", + "U2", + "U20", + "U21", + "U22", + "U23", + "U24", + "U25", + "U26", + "U27", + "U28", + "U29", + "U3", + "U30", + "U31", + "U32", + "U33", + "U34", + "U35", + "U36", + "U37", + "U38", + "U39", + "U4", + "U40", + "U41", + "U42", + "U43", + "U44", + "U45", + "U46", + "U47", + "U48", + "U49", + "U5", + "U50", + "U51", + "U52", + "U53", + "U54", + "U55", + "U56", + "U57", + "U58", + "U59", + "U6", + "U60", + "U61", + "U62", + "U63", + "U64", + "U65", + "U66", + "U67", + "U68", + "U69", + "U7", + "U70", + "U71", + "U72", + "U73", + "U74", + "U75", + "U76", + "U77", + "U78", + "U79", + "U8", + "U80", + "U81", + "U82", + "U83", + "U84", + "U85", + "U86", + "U87", + "U88", + "U89", + "U9", + "U90", + "U91", + "U92", + "U93", + "U94", + "U95", + "U96", + "U97", + "U98", + "U99" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "value": { + "description": "The value of the custom floodlight variable. The length of string must not exceed 50 characters.", + "type": "string" + } + }, + "type": "object" + }, + "CustomRichMediaEvents": { + "description": "Represents a Custom Rich Media Events group.", + "id": "CustomRichMediaEvents", + "properties": { + "filteredEventIds": { + "description": "List of custom rich media event IDs. Dimension values must be all of type dfa:richMediaEventTypeIdAndName.", + "items": { + "$ref": "DimensionValue" + }, + "type": "array" + }, + "kind": { + "default": "dfareporting#customRichMediaEvents", + "description": "The kind of resource this is, in this case dfareporting#customRichMediaEvents.", + "type": "string" + } + }, + "type": "object" + }, + "DateRange": { + "description": "Represents a date range.", + "id": "DateRange", + "properties": { + "endDate": { + "description": "The end date of the date range, inclusive. A string of the format: \"yyyy-MM-dd\".", + "format": "date", + "type": "string" + }, + "kind": { + "default": "dfareporting#dateRange", + "description": "The kind of resource this is, in this case dfareporting#dateRange.", + "type": "string" + }, + "relativeDateRange": { + "description": "The date range relative to the date of when the report is run.", + "enum": [ + "LAST_24_MONTHS", + "LAST_30_DAYS", + "LAST_365_DAYS", + "LAST_7_DAYS", + "LAST_90_DAYS", + "MONTH_TO_DATE", + "PREVIOUS_MONTH", + "PREVIOUS_QUARTER", + "PREVIOUS_WEEK", + "PREVIOUS_YEAR", + "QUARTER_TO_DATE", + "TODAY", + "WEEK_TO_DATE", + "YEAR_TO_DATE", + "YESTERDAY" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "startDate": { + "description": "The start date of the date range, inclusive. A string of the format: \"yyyy-MM-dd\".", + "format": "date", + "type": "string" + } + }, + "type": "object" + }, + "DayPartTargeting": { + "description": "Day Part Targeting.", + "id": "DayPartTargeting", + "properties": { + "daysOfWeek": { + "description": "Days of the week when the ad will serve.\n\nAcceptable values are:\n- \"SUNDAY\"\n- \"MONDAY\"\n- \"TUESDAY\"\n- \"WEDNESDAY\"\n- \"THURSDAY\"\n- \"FRIDAY\"\n- \"SATURDAY\"", + "items": { + "enum": [ + "FRIDAY", + "MONDAY", + "SATURDAY", + "SUNDAY", + "THURSDAY", + "TUESDAY", + "WEDNESDAY" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "type": "array" + }, + "hoursOfDay": { + "description": "Hours of the day when the ad will serve, where 0 is midnight to 1 AM and 23 is 11 PM to midnight. Can be specified with days of week, in which case the ad would serve during these hours on the specified days. For example if Monday, Wednesday, Friday are the days of week specified and 9-10am, 3-5pm (hours 9, 15, and 16) is specified, the ad would serve Monday, Wednesdays, and Fridays at 9-10am and 3-5pm. Acceptable values are 0 to 23, inclusive.", + "items": { + "format": "int32", + "type": "integer" + }, + "type": "array" + }, + "userLocalTime": { + "description": "Whether or not to use the user's local time. If false, the America/New York time zone applies.", + "type": "boolean" + } + }, + "type": "object" + }, + "DefaultClickThroughEventTagProperties": { + "description": "Properties of inheriting and overriding the default click-through event tag. A campaign may override the event tag defined at the advertiser level, and an ad may also override the campaign's setting further.", + "id": "DefaultClickThroughEventTagProperties", + "properties": { + "defaultClickThroughEventTagId": { + "description": "ID of the click-through event tag to apply to all ads in this entity's scope.", + "format": "int64", + "type": "string" + }, + "overrideInheritedEventTag": { + "description": "Whether this entity should override the inherited default click-through event tag with its own defined value.", + "type": "boolean" + } + }, + "type": "object" + }, + "DeliverySchedule": { + "description": "Delivery Schedule.", + "id": "DeliverySchedule", + "properties": { + "frequencyCap": { + "$ref": "FrequencyCap", + "description": "Limit on the number of times an individual user can be served the ad within a specified period of time." + }, + "hardCutoff": { + "description": "Whether or not hard cutoff is enabled. If true, the ad will not serve after the end date and time. Otherwise the ad will continue to be served until it has reached its delivery goals.", + "type": "boolean" + }, + "impressionRatio": { + "description": "Impression ratio for this ad. This ratio determines how often each ad is served relative to the others. For example, if ad A has an impression ratio of 1 and ad B has an impression ratio of 3, then DCM will serve ad B three times as often as ad A. Acceptable values are 1 to 10, inclusive.", + "format": "int64", + "type": "string" + }, + "priority": { + "description": "Serving priority of an ad, with respect to other ads. The lower the priority number, the greater the priority with which it is served.", + "enum": [ + "AD_PRIORITY_01", + "AD_PRIORITY_02", + "AD_PRIORITY_03", + "AD_PRIORITY_04", + "AD_PRIORITY_05", + "AD_PRIORITY_06", + "AD_PRIORITY_07", + "AD_PRIORITY_08", + "AD_PRIORITY_09", + "AD_PRIORITY_10", + "AD_PRIORITY_11", + "AD_PRIORITY_12", + "AD_PRIORITY_13", + "AD_PRIORITY_14", + "AD_PRIORITY_15", + "AD_PRIORITY_16" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "DfpSettings": { + "description": "DFP Settings", + "id": "DfpSettings", + "properties": { + "dfpNetworkCode": { + "description": "DFP network code for this directory site.", + "type": "string" + }, + "dfpNetworkName": { + "description": "DFP network name for this directory site.", + "type": "string" + }, + "programmaticPlacementAccepted": { + "description": "Whether this directory site accepts programmatic placements.", + "type": "boolean" + }, + "pubPaidPlacementAccepted": { + "description": "Whether this directory site accepts publisher-paid tags.", + "type": "boolean" + }, + "publisherPortalOnly": { + "description": "Whether this directory site is available only via DoubleClick Publisher Portal.", + "type": "boolean" + } + }, + "type": "object" + }, + "Dimension": { + "description": "Represents a dimension.", + "id": "Dimension", + "properties": { + "kind": { + "default": "dfareporting#dimension", + "description": "The kind of resource this is, in this case dfareporting#dimension.", + "type": "string" + }, + "name": { + "description": "The dimension name, e.g. dfa:advertiser", + "type": "string" + } + }, + "type": "object" + }, + "DimensionFilter": { + "description": "Represents a dimension filter.", + "id": "DimensionFilter", + "properties": { + "dimensionName": { + "description": "The name of the dimension to filter.", + "type": "string" + }, + "kind": { + "default": "dfareporting#dimensionFilter", + "description": "The kind of resource this is, in this case dfareporting#dimensionFilter.", + "type": "string" + }, + "value": { + "description": "The value of the dimension to filter.", + "type": "string" + } + }, + "type": "object" + }, + "DimensionValue": { + "description": "Represents a DimensionValue resource.", + "id": "DimensionValue", + "properties": { + "dimensionName": { + "description": "The name of the dimension.", + "type": "string" + }, + "etag": { + "description": "The eTag of this response for caching purposes.", + "type": "string" + }, + "id": { + "description": "The ID associated with the value if available.", + "type": "string" + }, + "kind": { + "default": "dfareporting#dimensionValue", + "description": "The kind of resource this is, in this case dfareporting#dimensionValue.", + "type": "string" + }, + "matchType": { + "description": "Determines how the 'value' field is matched when filtering. If not specified, defaults to EXACT. If set to WILDCARD_EXPRESSION, '*' is allowed as a placeholder for variable length character sequences, and it can be escaped with a backslash. Note, only paid search dimensions ('dfa:paidSearch*') allow a matchType other than EXACT.", + "enum": [ + "BEGINS_WITH", + "CONTAINS", + "EXACT", + "WILDCARD_EXPRESSION" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ], + "type": "string" + }, + "value": { + "description": "The value of the dimension.", + "type": "string" + } + }, + "type": "object" + }, + "DimensionValueList": { + "description": "Represents the list of DimensionValue resources.", + "id": "DimensionValueList", + "properties": { + "etag": { + "description": "The eTag of this response for caching purposes.", + "type": "string" + }, + "items": { + "description": "The dimension values returned in this response.", + "items": { + "$ref": "DimensionValue" + }, + "type": "array" + }, + "kind": { + "default": "dfareporting#dimensionValueList", + "description": "The kind of list this is, in this case dfareporting#dimensionValueList.", + "type": "string" + }, + "nextPageToken": { + "description": "Continuation token used to page through dimension values. To retrieve the next page of results, set the next request's \"pageToken\" to the value of this field. The page token is only valid for a limited amount of time and should not be persisted.", + "type": "string" + } + }, + "type": "object" + }, + "DimensionValueRequest": { + "description": "Represents a DimensionValuesRequest.", + "id": "DimensionValueRequest", + "properties": { + "dimensionName": { + "annotations": { + "required": [ + "dfareporting.dimensionValues.query" + ] + }, + "description": "The name of the dimension for which values should be requested.", + "type": "string" + }, + "endDate": { + "annotations": { + "required": [ + "dfareporting.dimensionValues.query" + ] + }, + "description": "The end date of the date range for which to retrieve dimension values. A string of the format \"yyyy-MM-dd\".", + "format": "date", + "type": "string" + }, + "filters": { + "description": "The list of filters by which to filter values. The filters are ANDed.", + "items": { + "$ref": "DimensionFilter" + }, + "type": "array" + }, + "kind": { + "default": "dfareporting#dimensionValueRequest", + "description": "The kind of request this is, in this case dfareporting#dimensionValueRequest.", + "type": "string" + }, + "startDate": { + "annotations": { + "required": [ + "dfareporting.dimensionValues.query" + ] + }, + "description": "The start date of the date range for which to retrieve dimension values. A string of the format \"yyyy-MM-dd\".", + "format": "date", + "type": "string" + } + }, + "type": "object" + }, + "DirectorySite": { + "description": "DirectorySites contains properties of a website from the Site Directory. Sites need to be added to an account via the Sites resource before they can be assigned to a placement.", + "id": "DirectorySite", + "properties": { + "active": { + "description": "Whether this directory site is active.", + "type": "boolean" + }, + "contactAssignments": { + "description": "Directory site contacts.", + "items": { + "$ref": "DirectorySiteContactAssignment" + }, + "type": "array" + }, + "countryId": { + "description": "Country ID of this directory site. This is a read-only field.", + "format": "int64", + "type": "string" + }, + "currencyId": { + "description": "Currency ID of this directory site. This is a read-only field.\nPossible values are: \n- \"1\" for USD \n- \"2\" for GBP \n- \"3\" for ESP \n- \"4\" for SEK \n- \"5\" for CAD \n- \"6\" for JPY \n- \"7\" for DEM \n- \"8\" for AUD \n- \"9\" for FRF \n- \"10\" for ITL \n- \"11\" for DKK \n- \"12\" for NOK \n- \"13\" for FIM \n- \"14\" for ZAR \n- \"15\" for IEP \n- \"16\" for NLG \n- \"17\" for EUR \n- \"18\" for KRW \n- \"19\" for TWD \n- \"20\" for SGD \n- \"21\" for CNY \n- \"22\" for HKD \n- \"23\" for NZD \n- \"24\" for MYR \n- \"25\" for BRL \n- \"26\" for PTE \n- \"27\" for MXP \n- \"28\" for CLP \n- \"29\" for TRY \n- \"30\" for ARS \n- \"31\" for PEN \n- \"32\" for ILS \n- \"33\" for CHF \n- \"34\" for VEF \n- \"35\" for COP \n- \"36\" for GTQ \n- \"37\" for PLN \n- \"39\" for INR \n- \"40\" for THB \n- \"41\" for IDR \n- \"42\" for CZK \n- \"43\" for RON \n- \"44\" for HUF \n- \"45\" for RUB \n- \"46\" for AED \n- \"47\" for BGN \n- \"48\" for HRK \n- \"49\" for MXN \n- \"50\" for NGN", + "format": "int64", + "type": "string" + }, + "description": { + "description": "Description of this directory site. This is a read-only field.", + "type": "string" + }, + "id": { + "description": "ID of this directory site. This is a read-only, auto-generated field.", + "format": "int64", + "type": "string" + }, + "idDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of this directory site. This is a read-only, auto-generated field." + }, + "inpageTagFormats": { + "description": "Tag types for regular placements.\n\nAcceptable values are:\n- \"STANDARD\"\n- \"IFRAME_JAVASCRIPT_INPAGE\"\n- \"INTERNAL_REDIRECT_INPAGE\"\n- \"JAVASCRIPT_INPAGE\"", + "items": { + "enum": [ + "IFRAME_JAVASCRIPT_INPAGE", + "INTERNAL_REDIRECT_INPAGE", + "JAVASCRIPT_INPAGE", + "STANDARD" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ], + "type": "string" + }, + "type": "array" + }, + "interstitialTagFormats": { + "description": "Tag types for interstitial placements.\n\nAcceptable values are:\n- \"IFRAME_JAVASCRIPT_INTERSTITIAL\"\n- \"INTERNAL_REDIRECT_INTERSTITIAL\"\n- \"JAVASCRIPT_INTERSTITIAL\"", + "items": { + "enum": [ + "IFRAME_JAVASCRIPT_INTERSTITIAL", + "INTERNAL_REDIRECT_INTERSTITIAL", + "JAVASCRIPT_INTERSTITIAL" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, + "type": "array" + }, + "kind": { + "default": "dfareporting#directorySite", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#directorySite\".", + "type": "string" + }, + "name": { + "description": "Name of this directory site.", + "type": "string" + }, + "parentId": { + "description": "Parent directory site ID.", + "format": "int64", + "type": "string" + }, + "settings": { + "$ref": "DirectorySiteSettings", + "description": "Directory site settings." + }, + "url": { + "description": "URL of this directory site.", + "type": "string" + } + }, + "type": "object" + }, + "DirectorySiteContact": { + "description": "Contains properties of a Site Directory contact.", + "id": "DirectorySiteContact", + "properties": { + "address": { + "description": "Address of this directory site contact.", + "type": "string" + }, + "email": { + "description": "Email address of this directory site contact.", + "type": "string" + }, + "firstName": { + "description": "First name of this directory site contact.", + "type": "string" + }, + "id": { + "description": "ID of this directory site contact. This is a read-only, auto-generated field.", + "format": "int64", + "type": "string" + }, + "kind": { + "default": "dfareporting#directorySiteContact", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#directorySiteContact\".", + "type": "string" + }, + "lastName": { + "description": "Last name of this directory site contact.", + "type": "string" + }, + "phone": { + "description": "Phone number of this directory site contact.", + "type": "string" + }, + "role": { + "description": "Directory site contact role.", + "enum": [ + "ADMIN", + "EDIT", + "VIEW" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, + "title": { + "description": "Title or designation of this directory site contact.", + "type": "string" + }, + "type": { + "description": "Directory site contact type.", + "enum": [ + "BILLING", + "OTHER", + "SALES", + "TECHNICAL" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "DirectorySiteContactAssignment": { + "description": "Directory Site Contact Assignment", + "id": "DirectorySiteContactAssignment", + "properties": { + "contactId": { + "description": "ID of this directory site contact. This is a read-only, auto-generated field.", + "format": "int64", + "type": "string" + }, + "visibility": { + "description": "Visibility of this directory site contact assignment. When set to PUBLIC this contact assignment is visible to all account and agency users; when set to PRIVATE it is visible only to the site.", + "enum": [ + "PRIVATE", + "PUBLIC" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "DirectorySiteContactsListResponse": { + "description": "Directory Site Contact List Response", + "id": "DirectorySiteContactsListResponse", + "properties": { + "directorySiteContacts": { + "description": "Directory site contact collection", + "items": { + "$ref": "DirectorySiteContact" + }, + "type": "array" + }, + "kind": { + "default": "dfareporting#directorySiteContactsListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#directorySiteContactsListResponse\".", + "type": "string" + }, + "nextPageToken": { + "description": "Pagination token to be used for the next list operation.", + "type": "string" + } + }, + "type": "object" + }, + "DirectorySiteSettings": { + "description": "Directory Site Settings", + "id": "DirectorySiteSettings", + "properties": { + "activeViewOptOut": { + "description": "Whether this directory site has disabled active view creatives.", + "type": "boolean" + }, + "dfpSettings": { + "$ref": "DfpSettings", + "description": "Directory site DFP settings." + }, + "instreamVideoPlacementAccepted": { + "description": "Whether this site accepts in-stream video ads.", + "type": "boolean" + }, + "interstitialPlacementAccepted": { + "description": "Whether this site accepts interstitial ads.", + "type": "boolean" + }, + "nielsenOcrOptOut": { + "description": "Whether this directory site has disabled Nielsen OCR reach ratings.", + "type": "boolean" + }, + "verificationTagOptOut": { + "description": "Whether this directory site has disabled generation of Verification ins tags.", + "type": "boolean" + }, + "videoActiveViewOptOut": { + "description": "Whether this directory site has disabled active view for in-stream video creatives. This is a read-only field.", + "type": "boolean" + } + }, + "type": "object" + }, + "DirectorySitesListResponse": { + "description": "Directory Site List Response", + "id": "DirectorySitesListResponse", + "properties": { + "directorySites": { + "description": "Directory site collection.", + "items": { + "$ref": "DirectorySite" + }, + "type": "array" + }, + "kind": { + "default": "dfareporting#directorySitesListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#directorySitesListResponse\".", + "type": "string" + }, + "nextPageToken": { + "description": "Pagination token to be used for the next list operation.", + "type": "string" + } + }, + "type": "object" + }, + "DynamicTargetingKey": { + "description": "Contains properties of a dynamic targeting key. Dynamic targeting keys are unique, user-friendly labels, created at the advertiser level in DCM, that can be assigned to ads, creatives, and placements and used for targeting with DoubleClick Studio dynamic creatives. Use these labels instead of numeric DCM IDs (such as placement IDs) to save time and avoid errors in your dynamic feeds.", + "id": "DynamicTargetingKey", + "properties": { + "kind": { + "default": "dfareporting#dynamicTargetingKey", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#dynamicTargetingKey\".", + "type": "string" + }, + "name": { + "description": "Name of this dynamic targeting key. This is a required field. Must be less than 256 characters long and cannot contain commas. All characters are converted to lowercase.", + "type": "string" + }, + "objectId": { + "description": "ID of the object of this dynamic targeting key. This is a required field.", + "format": "int64", + "type": "string" + }, + "objectType": { + "description": "Type of the object of this dynamic targeting key. This is a required field.", + "enum": [ + "OBJECT_AD", + "OBJECT_ADVERTISER", + "OBJECT_CREATIVE", + "OBJECT_PLACEMENT" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "DynamicTargetingKeysListResponse": { + "description": "Dynamic Targeting Key List Response", + "id": "DynamicTargetingKeysListResponse", + "properties": { + "dynamicTargetingKeys": { + "description": "Dynamic targeting key collection.", + "items": { + "$ref": "DynamicTargetingKey" + }, + "type": "array" + }, + "kind": { + "default": "dfareporting#dynamicTargetingKeysListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#dynamicTargetingKeysListResponse\".", + "type": "string" + } + }, + "type": "object" + }, + "EncryptionInfo": { + "description": "A description of how user IDs are encrypted.", + "id": "EncryptionInfo", + "properties": { + "encryptionEntityId": { + "description": "The encryption entity ID. This should match the encryption configuration for ad serving or Data Transfer.", + "format": "int64", + "type": "string" + }, + "encryptionEntityType": { + "description": "The encryption entity type. This should match the encryption configuration for ad serving or Data Transfer.", + "enum": [ + "ADWORDS_CUSTOMER", + "DBM_ADVERTISER", + "DBM_PARTNER", + "DCM_ACCOUNT", + "DCM_ADVERTISER", + "ENCRYPTION_ENTITY_TYPE_UNKNOWN" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "encryptionSource": { + "description": "Describes whether the encrypted cookie was received from ad serving (the %m macro) or from Data Transfer.", + "enum": [ + "AD_SERVING", + "DATA_TRANSFER", + "ENCRYPTION_SCOPE_UNKNOWN" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, + "kind": { + "default": "dfareporting#encryptionInfo", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#encryptionInfo\".", + "type": "string" + } + }, + "type": "object" + }, + "EventTag": { + "description": "Contains properties of an event tag.", + "id": "EventTag", + "properties": { + "accountId": { + "description": "Account ID of this event tag. This is a read-only field that can be left blank.", + "format": "int64", + "type": "string" + }, + "advertiserId": { + "description": "Advertiser ID of this event tag. This field or the campaignId field is required on insertion.", + "format": "int64", + "type": "string" + }, + "advertiserIdDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of the advertiser. This is a read-only, auto-generated field." + }, + "campaignId": { + "description": "Campaign ID of this event tag. This field or the advertiserId field is required on insertion.", + "format": "int64", + "type": "string" + }, + "campaignIdDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of the campaign. This is a read-only, auto-generated field." + }, + "enabledByDefault": { + "description": "Whether this event tag should be automatically enabled for all of the advertiser's campaigns and ads.", + "type": "boolean" + }, + "excludeFromAdxRequests": { + "description": "Whether to remove this event tag from ads that are trafficked through DoubleClick Bid Manager to Ad Exchange. This may be useful if the event tag uses a pixel that is unapproved for Ad Exchange bids on one or more networks, such as the Google Display Network.", + "type": "boolean" + }, + "id": { + "description": "ID of this event tag. This is a read-only, auto-generated field.", + "format": "int64", + "type": "string" + }, + "kind": { + "default": "dfareporting#eventTag", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#eventTag\".", + "type": "string" + }, + "name": { + "description": "Name of this event tag. This is a required field and must be less than 256 characters long.", + "type": "string" + }, + "siteFilterType": { + "description": "Site filter type for this event tag. If no type is specified then the event tag will be applied to all sites.", + "enum": [ + "BLACKLIST", + "WHITELIST" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "siteIds": { + "description": "Filter list of site IDs associated with this event tag. The siteFilterType determines whether this is a whitelist or blacklist filter.", + "items": { + "format": "int64", + "type": "string" + }, + "type": "array" + }, + "sslCompliant": { + "description": "Whether this tag is SSL-compliant or not. This is a read-only field.", + "type": "boolean" + }, + "status": { + "description": "Status of this event tag. Must be ENABLED for this event tag to fire. This is a required field.", + "enum": [ + "DISABLED", + "ENABLED" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "subaccountId": { + "description": "Subaccount ID of this event tag. This is a read-only field that can be left blank.", + "format": "int64", + "type": "string" + }, + "type": { + "description": "Event tag type. Can be used to specify whether to use a third-party pixel, a third-party JavaScript URL, or a third-party click-through URL for either impression or click tracking. This is a required field.", + "enum": [ + "CLICK_THROUGH_EVENT_TAG", + "IMPRESSION_IMAGE_EVENT_TAG", + "IMPRESSION_JAVASCRIPT_EVENT_TAG" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, + "url": { + "description": "Payload URL for this event tag. The URL on a click-through event tag should have a landing page URL appended to the end of it. This field is required on insertion.", + "type": "string" + }, + "urlEscapeLevels": { + "description": "Number of times the landing page URL should be URL-escaped before being appended to the click-through event tag URL. Only applies to click-through event tags as specified by the event tag type.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "EventTagOverride": { + "description": "Event tag override information.", + "id": "EventTagOverride", + "properties": { + "enabled": { + "description": "Whether this override is enabled.", + "type": "boolean" + }, + "id": { + "description": "ID of this event tag override. This is a read-only, auto-generated field.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "EventTagsListResponse": { + "description": "Event Tag List Response", + "id": "EventTagsListResponse", + "properties": { + "eventTags": { + "description": "Event tag collection.", + "items": { + "$ref": "EventTag" + }, + "type": "array" + }, + "kind": { + "default": "dfareporting#eventTagsListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#eventTagsListResponse\".", + "type": "string" + } + }, + "type": "object" + }, + "File": { + "description": "Represents a File resource. A file contains the metadata for a report run. It shows the status of the run and holds the URLs to the generated report data if the run is finished and the status is \"REPORT_AVAILABLE\".", + "id": "File", + "properties": { + "dateRange": { + "$ref": "DateRange", + "description": "The date range for which the file has report data. The date range will always be the absolute date range for which the report is run." + }, + "etag": { + "description": "The eTag of this response for caching purposes.", + "type": "string" + }, + "fileName": { + "description": "The filename of the file.", + "type": "string" + }, + "format": { + "description": "The output format of the report. Only available once the file is available.", + "enum": [ + "CSV", + "EXCEL" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "id": { + "description": "The unique ID of this report file.", + "format": "int64", + "type": "string" + }, + "kind": { + "default": "dfareporting#file", + "description": "The kind of resource this is, in this case dfareporting#file.", + "type": "string" + }, + "lastModifiedTime": { + "description": "The timestamp in milliseconds since epoch when this file was last modified.", + "format": "int64", + "type": "string" }, "reportId": { - "type": "string", - "description": "The ID of the parent report.", - "required": true, - "format": "int64", - "location": "path" + "description": "The ID of the report this file was generated from.", + "format": "int64", + "type": "string" }, - "sortField": { - "type": "string", - "description": "The field by which to sort the list.", - "default": "LAST_MODIFIED_TIME", - "enum": [ - "ID", - "LAST_MODIFIED_TIME" - ], - "enumDescriptions": [ - "Sort by file ID.", - "Sort by 'lastmodifiedAt' field." - ], - "location": "query" + "status": { + "description": "The status of the report file.", + "enum": [ + "CANCELLED", + "FAILED", + "PROCESSING", + "REPORT_AVAILABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ], + "type": "string" + }, + "urls": { + "description": "The URLs where the completed report file can be downloaded.", + "properties": { + "apiUrl": { + "description": "The URL for downloading the report data through the API.", + "type": "string" + }, + "browserUrl": { + "description": "The URL for downloading the report data through a browser.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "FileList": { + "description": "Represents the list of File resources.", + "id": "FileList", + "properties": { + "etag": { + "description": "The eTag of this response for caching purposes.", + "type": "string" + }, + "items": { + "description": "The files returned in this response.", + "items": { + "$ref": "File" + }, + "type": "array" + }, + "kind": { + "default": "dfareporting#fileList", + "description": "The kind of list this is, in this case dfareporting#fileList.", + "type": "string" + }, + "nextPageToken": { + "description": "Continuation token used to page through files. To retrieve the next page of results, set the next request's \"pageToken\" to the value of this field. The page token is only valid for a limited amount of time and should not be persisted.", + "type": "string" + } + }, + "type": "object" + }, + "Flight": { + "description": "Flight", + "id": "Flight", + "properties": { + "endDate": { + "description": "Inventory item flight end date.", + "format": "date", + "type": "string" + }, + "rateOrCost": { + "description": "Rate or cost of this flight.", + "format": "int64", + "type": "string" + }, + "startDate": { + "description": "Inventory item flight start date.", + "format": "date", + "type": "string" + }, + "units": { + "description": "Units of this flight.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "FloodlightActivitiesGenerateTagResponse": { + "description": "Floodlight Activity GenerateTag Response", + "id": "FloodlightActivitiesGenerateTagResponse", + "properties": { + "floodlightActivityTag": { + "description": "Generated tag for this Floodlight activity. For global site tags, this is the event snippet.", + "type": "string" + }, + "globalSiteTagGlobalSnippet": { + "description": "The global snippet section of a global site tag. The global site tag sets new cookies on your domain, which will store a unique identifier for a user or the ad click that brought the user to your site. Learn more.", + "type": "string" + }, + "kind": { + "default": "dfareporting#floodlightActivitiesGenerateTagResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#floodlightActivitiesGenerateTagResponse\".", + "type": "string" + } + }, + "type": "object" + }, + "FloodlightActivitiesListResponse": { + "description": "Floodlight Activity List Response", + "id": "FloodlightActivitiesListResponse", + "properties": { + "floodlightActivities": { + "description": "Floodlight activity collection.", + "items": { + "$ref": "FloodlightActivity" + }, + "type": "array" + }, + "kind": { + "default": "dfareporting#floodlightActivitiesListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#floodlightActivitiesListResponse\".", + "type": "string" + }, + "nextPageToken": { + "description": "Pagination token to be used for the next list operation.", + "type": "string" + } + }, + "type": "object" + }, + "FloodlightActivity": { + "description": "Contains properties of a Floodlight activity.", + "id": "FloodlightActivity", + "properties": { + "accountId": { + "description": "Account ID of this floodlight activity. This is a read-only field that can be left blank.", + "format": "int64", + "type": "string" + }, + "advertiserId": { + "description": "Advertiser ID of this floodlight activity. If this field is left blank, the value will be copied over either from the activity group's advertiser or the existing activity's advertiser.", + "format": "int64", + "type": "string" + }, + "advertiserIdDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of the advertiser. This is a read-only, auto-generated field." + }, + "cacheBustingType": { + "description": "Code type used for cache busting in the generated tag. Applicable only when floodlightActivityGroupType is COUNTER and countingMethod is STANDARD_COUNTING or UNIQUE_COUNTING.", + "enum": [ + "ACTIVE_SERVER_PAGE", + "COLD_FUSION", + "JAVASCRIPT", + "JSP", + "PHP" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "countingMethod": { + "description": "Counting method for conversions for this floodlight activity. This is a required field.", + "enum": [ + "ITEMS_SOLD_COUNTING", + "SESSION_COUNTING", + "STANDARD_COUNTING", + "TRANSACTIONS_COUNTING", + "UNIQUE_COUNTING" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "defaultTags": { + "description": "Dynamic floodlight tags.", + "items": { + "$ref": "FloodlightActivityDynamicTag" + }, + "type": "array" + }, + "expectedUrl": { + "description": "URL where this tag will be deployed. If specified, must be less than 256 characters long.", + "type": "string" + }, + "floodlightActivityGroupId": { + "description": "Floodlight activity group ID of this floodlight activity. This is a required field.", + "format": "int64", + "type": "string" + }, + "floodlightActivityGroupName": { + "description": "Name of the associated floodlight activity group. This is a read-only field.", + "type": "string" + }, + "floodlightActivityGroupTagString": { + "description": "Tag string of the associated floodlight activity group. This is a read-only field.", + "type": "string" + }, + "floodlightActivityGroupType": { + "description": "Type of the associated floodlight activity group. This is a read-only field.", + "enum": [ + "COUNTER", + "SALE" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "floodlightConfigurationId": { + "description": "Floodlight configuration ID of this floodlight activity. If this field is left blank, the value will be copied over either from the activity group's floodlight configuration or from the existing activity's floodlight configuration.", + "format": "int64", + "type": "string" + }, + "floodlightConfigurationIdDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of the floodlight configuration. This is a read-only, auto-generated field." + }, + "floodlightTagType": { + "description": "The type of Floodlight tag this activity will generate. This is a required field.", + "enum": [ + "GLOBAL_SITE_TAG", + "IFRAME", + "IMAGE" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, + "hidden": { + "description": "Whether this activity is archived.", + "type": "boolean" + }, + "id": { + "description": "ID of this floodlight activity. This is a read-only, auto-generated field.", + "format": "int64", + "type": "string" + }, + "idDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of this floodlight activity. This is a read-only, auto-generated field." + }, + "kind": { + "default": "dfareporting#floodlightActivity", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#floodlightActivity\".", + "type": "string" + }, + "name": { + "description": "Name of this floodlight activity. This is a required field. Must be less than 129 characters long and cannot contain quotes.", + "type": "string" + }, + "notes": { + "description": "General notes or implementation instructions for the tag.", + "type": "string" + }, + "publisherTags": { + "description": "Publisher dynamic floodlight tags.", + "items": { + "$ref": "FloodlightActivityPublisherDynamicTag" + }, + "type": "array" + }, + "secure": { + "description": "Whether this tag should use SSL.", + "type": "boolean" + }, + "sslCompliant": { + "description": "Whether the floodlight activity is SSL-compliant. This is a read-only field, its value detected by the system from the floodlight tags.", + "type": "boolean" + }, + "sslRequired": { + "description": "Whether this floodlight activity must be SSL-compliant.", + "type": "boolean" + }, + "subaccountId": { + "description": "Subaccount ID of this floodlight activity. This is a read-only field that can be left blank.", + "format": "int64", + "type": "string" + }, + "tagFormat": { + "description": "Tag format type for the floodlight activity. If left blank, the tag format will default to HTML.", + "enum": [ + "HTML", + "XHTML" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "tagString": { + "description": "Value of the cat= parameter in the floodlight tag, which the ad servers use to identify the activity. This is optional: if empty, a new tag string will be generated for you. This string must be 1 to 8 characters long, with valid characters being [a-z][A-Z][0-9][-][ _ ]. This tag string must also be unique among activities of the same activity group. This field is read-only after insertion.", + "type": "string" + }, + "userDefinedVariableTypes": { + "description": "List of the user-defined variables used by this conversion tag. These map to the \"u[1-100]=\" in the tags. Each of these can have a user defined type.\nAcceptable values are U1 to U100, inclusive.", + "items": { + "enum": [ + "U1", + "U10", + "U100", + "U11", + "U12", + "U13", + "U14", + "U15", + "U16", + "U17", + "U18", + "U19", + "U2", + "U20", + "U21", + "U22", + "U23", + "U24", + "U25", + "U26", + "U27", + "U28", + "U29", + "U3", + "U30", + "U31", + "U32", + "U33", + "U34", + "U35", + "U36", + "U37", + "U38", + "U39", + "U4", + "U40", + "U41", + "U42", + "U43", + "U44", + "U45", + "U46", + "U47", + "U48", + "U49", + "U5", + "U50", + "U51", + "U52", + "U53", + "U54", + "U55", + "U56", + "U57", + "U58", + "U59", + "U6", + "U60", + "U61", + "U62", + "U63", + "U64", + "U65", + "U66", + "U67", + "U68", + "U69", + "U7", + "U70", + "U71", + "U72", + "U73", + "U74", + "U75", + "U76", + "U77", + "U78", + "U79", + "U8", + "U80", + "U81", + "U82", + "U83", + "U84", + "U85", + "U86", + "U87", + "U88", + "U89", + "U9", + "U90", + "U91", + "U92", + "U93", + "U94", + "U95", + "U96", + "U97", + "U98", + "U99" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "FloodlightActivityDynamicTag": { + "description": "Dynamic Tag", + "id": "FloodlightActivityDynamicTag", + "properties": { + "id": { + "description": "ID of this dynamic tag. This is a read-only, auto-generated field.", + "format": "int64", + "type": "string" + }, + "name": { + "description": "Name of this tag.", + "type": "string" + }, + "tag": { + "description": "Tag code.", + "type": "string" + } + }, + "type": "object" + }, + "FloodlightActivityGroup": { + "description": "Contains properties of a Floodlight activity group.", + "id": "FloodlightActivityGroup", + "properties": { + "accountId": { + "description": "Account ID of this floodlight activity group. This is a read-only field that can be left blank.", + "format": "int64", + "type": "string" + }, + "advertiserId": { + "description": "Advertiser ID of this floodlight activity group. If this field is left blank, the value will be copied over either from the floodlight configuration's advertiser or from the existing activity group's advertiser.", + "format": "int64", + "type": "string" + }, + "advertiserIdDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of the advertiser. This is a read-only, auto-generated field." + }, + "floodlightConfigurationId": { + "description": "Floodlight configuration ID of this floodlight activity group. This is a required field.", + "format": "int64", + "type": "string" + }, + "floodlightConfigurationIdDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of the floodlight configuration. This is a read-only, auto-generated field." + }, + "id": { + "description": "ID of this floodlight activity group. This is a read-only, auto-generated field.", + "format": "int64", + "type": "string" + }, + "idDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of this floodlight activity group. This is a read-only, auto-generated field." + }, + "kind": { + "default": "dfareporting#floodlightActivityGroup", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#floodlightActivityGroup\".", + "type": "string" + }, + "name": { + "description": "Name of this floodlight activity group. This is a required field. Must be less than 65 characters long and cannot contain quotes.", + "type": "string" + }, + "subaccountId": { + "description": "Subaccount ID of this floodlight activity group. This is a read-only field that can be left blank.", + "format": "int64", + "type": "string" + }, + "tagString": { + "description": "Value of the type= parameter in the floodlight tag, which the ad servers use to identify the activity group that the activity belongs to. This is optional: if empty, a new tag string will be generated for you. This string must be 1 to 8 characters long, with valid characters being [a-z][A-Z][0-9][-][ _ ]. This tag string must also be unique among activity groups of the same floodlight configuration. This field is read-only after insertion.", + "type": "string" + }, + "type": { + "description": "Type of the floodlight activity group. This is a required field that is read-only after insertion.", + "enum": [ + "COUNTER", + "SALE" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "FloodlightActivityGroupsListResponse": { + "description": "Floodlight Activity Group List Response", + "id": "FloodlightActivityGroupsListResponse", + "properties": { + "floodlightActivityGroups": { + "description": "Floodlight activity group collection.", + "items": { + "$ref": "FloodlightActivityGroup" + }, + "type": "array" + }, + "kind": { + "default": "dfareporting#floodlightActivityGroupsListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#floodlightActivityGroupsListResponse\".", + "type": "string" + }, + "nextPageToken": { + "description": "Pagination token to be used for the next list operation.", + "type": "string" + } + }, + "type": "object" + }, + "FloodlightActivityPublisherDynamicTag": { + "description": "Publisher Dynamic Tag", + "id": "FloodlightActivityPublisherDynamicTag", + "properties": { + "clickThrough": { + "description": "Whether this tag is applicable only for click-throughs.", + "type": "boolean" + }, + "directorySiteId": { + "description": "Directory site ID of this dynamic tag. This is a write-only field that can be used as an alternative to the siteId field. When this resource is retrieved, only the siteId field will be populated.", + "format": "int64", + "type": "string" + }, + "dynamicTag": { + "$ref": "FloodlightActivityDynamicTag", + "description": "Dynamic floodlight tag." + }, + "siteId": { + "description": "Site ID of this dynamic tag.", + "format": "int64", + "type": "string" + }, + "siteIdDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of the site. This is a read-only, auto-generated field." + }, + "viewThrough": { + "description": "Whether this tag is applicable only for view-throughs.", + "type": "boolean" + } + }, + "type": "object" + }, + "FloodlightConfiguration": { + "description": "Contains properties of a Floodlight configuration.", + "id": "FloodlightConfiguration", + "properties": { + "accountId": { + "description": "Account ID of this floodlight configuration. This is a read-only field that can be left blank.", + "format": "int64", + "type": "string" + }, + "advertiserId": { + "description": "Advertiser ID of the parent advertiser of this floodlight configuration.", + "format": "int64", + "type": "string" + }, + "advertiserIdDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of the advertiser. This is a read-only, auto-generated field." + }, + "analyticsDataSharingEnabled": { + "description": "Whether advertiser data is shared with Google Analytics.", + "type": "boolean" + }, + "exposureToConversionEnabled": { + "description": "Whether the exposure-to-conversion report is enabled. This report shows detailed pathway information on up to 10 of the most recent ad exposures seen by a user before converting.", + "type": "boolean" + }, + "firstDayOfWeek": { + "description": "Day that will be counted as the first day of the week in reports. This is a required field.", + "enum": [ + "MONDAY", + "SUNDAY" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "id": { + "description": "ID of this floodlight configuration. This is a read-only, auto-generated field.", + "format": "int64", + "type": "string" + }, + "idDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of this floodlight configuration. This is a read-only, auto-generated field." + }, + "inAppAttributionTrackingEnabled": { + "description": "Whether in-app attribution tracking is enabled.", + "type": "boolean" + }, + "kind": { + "default": "dfareporting#floodlightConfiguration", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#floodlightConfiguration\".", + "type": "string" + }, + "lookbackConfiguration": { + "$ref": "LookbackConfiguration", + "description": "Lookback window settings for this floodlight configuration." + }, + "naturalSearchConversionAttributionOption": { + "description": "Types of attribution options for natural search conversions.", + "enum": [ + "EXCLUDE_NATURAL_SEARCH_CONVERSION_ATTRIBUTION", + "INCLUDE_NATURAL_SEARCH_CONVERSION_ATTRIBUTION", + "INCLUDE_NATURAL_SEARCH_TIERED_CONVERSION_ATTRIBUTION" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, + "omnitureSettings": { + "$ref": "OmnitureSettings", + "description": "Settings for DCM Omniture integration." + }, + "subaccountId": { + "description": "Subaccount ID of this floodlight configuration. This is a read-only field that can be left blank.", + "format": "int64", + "type": "string" + }, + "tagSettings": { + "$ref": "TagSettings", + "description": "Configuration settings for dynamic and image floodlight tags." + }, + "thirdPartyAuthenticationTokens": { + "description": "List of third-party authentication tokens enabled for this configuration.", + "items": { + "$ref": "ThirdPartyAuthenticationToken" + }, + "type": "array" + }, + "userDefinedVariableConfigurations": { + "description": "List of user defined variables enabled for this configuration.", + "items": { + "$ref": "UserDefinedVariableConfiguration" + }, + "type": "array" + } + }, + "type": "object" + }, + "FloodlightConfigurationsListResponse": { + "description": "Floodlight Configuration List Response", + "id": "FloodlightConfigurationsListResponse", + "properties": { + "floodlightConfigurations": { + "description": "Floodlight configuration collection.", + "items": { + "$ref": "FloodlightConfiguration" + }, + "type": "array" + }, + "kind": { + "default": "dfareporting#floodlightConfigurationsListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#floodlightConfigurationsListResponse\".", + "type": "string" + } + }, + "type": "object" + }, + "FloodlightReportCompatibleFields": { + "description": "Represents fields that are compatible to be selected for a report of type \"FlOODLIGHT\".", + "id": "FloodlightReportCompatibleFields", + "properties": { + "dimensionFilters": { + "description": "Dimensions which are compatible to be selected in the \"dimensionFilters\" section of the report.", + "items": { + "$ref": "Dimension" + }, + "type": "array" + }, + "dimensions": { + "description": "Dimensions which are compatible to be selected in the \"dimensions\" section of the report.", + "items": { + "$ref": "Dimension" + }, + "type": "array" + }, + "kind": { + "default": "dfareporting#floodlightReportCompatibleFields", + "description": "The kind of resource this is, in this case dfareporting#floodlightReportCompatibleFields.", + "type": "string" + }, + "metrics": { + "description": "Metrics which are compatible to be selected in the \"metricNames\" section of the report.", + "items": { + "$ref": "Metric" + }, + "type": "array" + } + }, + "type": "object" + }, + "FrequencyCap": { + "description": "Frequency Cap.", + "id": "FrequencyCap", + "properties": { + "duration": { + "description": "Duration of time, in seconds, for this frequency cap. The maximum duration is 90 days. Acceptable values are 1 to 7776000, inclusive.", + "format": "int64", + "type": "string" + }, + "impressions": { + "description": "Number of times an individual user can be served the ad within the specified duration. Acceptable values are 1 to 15, inclusive.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "FsCommand": { + "description": "FsCommand.", + "id": "FsCommand", + "properties": { + "left": { + "description": "Distance from the left of the browser.Applicable when positionOption is DISTANCE_FROM_TOP_LEFT_CORNER.", + "format": "int32", + "type": "integer" + }, + "positionOption": { + "description": "Position in the browser where the window will open.", + "enum": [ + "CENTERED", + "DISTANCE_FROM_TOP_LEFT_CORNER" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "top": { + "description": "Distance from the top of the browser. Applicable when positionOption is DISTANCE_FROM_TOP_LEFT_CORNER.", + "format": "int32", + "type": "integer" + }, + "windowHeight": { + "description": "Height of the window.", + "format": "int32", + "type": "integer" + }, + "windowWidth": { + "description": "Width of the window.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "GeoTargeting": { + "description": "Geographical Targeting.", + "id": "GeoTargeting", + "properties": { + "cities": { + "description": "Cities to be targeted. For each city only dartId is required. The other fields are populated automatically when the ad is inserted or updated. If targeting a city, do not target or exclude the country of the city, and do not target the metro or region of the city.", + "items": { + "$ref": "City" + }, + "type": "array" + }, + "countries": { + "description": "Countries to be targeted or excluded from targeting, depending on the setting of the excludeCountries field. For each country only dartId is required. The other fields are populated automatically when the ad is inserted or updated. If targeting or excluding a country, do not target regions, cities, metros, or postal codes in the same country.", + "items": { + "$ref": "Country" + }, + "type": "array" + }, + "excludeCountries": { + "description": "Whether or not to exclude the countries in the countries field from targeting. If false, the countries field refers to countries which will be targeted by the ad.", + "type": "boolean" + }, + "metros": { + "description": "Metros to be targeted. For each metro only dmaId is required. The other fields are populated automatically when the ad is inserted or updated. If targeting a metro, do not target or exclude the country of the metro.", + "items": { + "$ref": "Metro" + }, + "type": "array" + }, + "postalCodes": { + "description": "Postal codes to be targeted. For each postal code only id is required. The other fields are populated automatically when the ad is inserted or updated. If targeting a postal code, do not target or exclude the country of the postal code.", + "items": { + "$ref": "PostalCode" + }, + "type": "array" + }, + "regions": { + "description": "Regions to be targeted. For each region only dartId is required. The other fields are populated automatically when the ad is inserted or updated. If targeting a region, do not target or exclude the country of the region.", + "items": { + "$ref": "Region" + }, + "type": "array" + } + }, + "type": "object" + }, + "InventoryItem": { + "description": "Represents a buy from the DoubleClick Planning inventory store.", + "id": "InventoryItem", + "properties": { + "accountId": { + "description": "Account ID of this inventory item.", + "format": "int64", + "type": "string" + }, + "adSlots": { + "description": "Ad slots of this inventory item. If this inventory item represents a standalone placement, there will be exactly one ad slot. If this inventory item represents a placement group, there will be more than one ad slot, each representing one child placement in that placement group.", + "items": { + "$ref": "AdSlot" + }, + "type": "array" + }, + "advertiserId": { + "description": "Advertiser ID of this inventory item.", + "format": "int64", + "type": "string" + }, + "contentCategoryId": { + "description": "Content category ID of this inventory item.", + "format": "int64", + "type": "string" + }, + "estimatedClickThroughRate": { + "description": "Estimated click-through rate of this inventory item.", + "format": "int64", + "type": "string" + }, + "estimatedConversionRate": { + "description": "Estimated conversion rate of this inventory item.", + "format": "int64", + "type": "string" + }, + "id": { + "description": "ID of this inventory item.", + "format": "int64", + "type": "string" + }, + "inPlan": { + "description": "Whether this inventory item is in plan.", + "type": "boolean" + }, + "kind": { + "default": "dfareporting#inventoryItem", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#inventoryItem\".", + "type": "string" + }, + "lastModifiedInfo": { + "$ref": "LastModifiedInfo", + "description": "Information about the most recent modification of this inventory item." + }, + "name": { + "description": "Name of this inventory item. For standalone inventory items, this is the same name as that of its only ad slot. For group inventory items, this can differ from the name of any of its ad slots.", + "type": "string" + }, + "negotiationChannelId": { + "description": "Negotiation channel ID of this inventory item.", + "format": "int64", + "type": "string" + }, + "orderId": { + "description": "Order ID of this inventory item.", + "format": "int64", + "type": "string" + }, + "placementStrategyId": { + "description": "Placement strategy ID of this inventory item.", + "format": "int64", + "type": "string" + }, + "pricing": { + "$ref": "Pricing", + "description": "Pricing of this inventory item." + }, + "projectId": { + "description": "Project ID of this inventory item.", + "format": "int64", + "type": "string" + }, + "rfpId": { + "description": "RFP ID of this inventory item.", + "format": "int64", + "type": "string" + }, + "siteId": { + "description": "ID of the site this inventory item is associated with.", + "format": "int64", + "type": "string" + }, + "subaccountId": { + "description": "Subaccount ID of this inventory item.", + "format": "int64", + "type": "string" + }, + "type": { + "description": "Type of inventory item.", + "enum": [ + "PLANNING_PLACEMENT_TYPE_CREDIT", + "PLANNING_PLACEMENT_TYPE_REGULAR" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "InventoryItemsListResponse": { + "description": "Inventory item List Response", + "id": "InventoryItemsListResponse", + "properties": { + "inventoryItems": { + "description": "Inventory item collection", + "items": { + "$ref": "InventoryItem" + }, + "type": "array" + }, + "kind": { + "default": "dfareporting#inventoryItemsListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#inventoryItemsListResponse\".", + "type": "string" + }, + "nextPageToken": { + "description": "Pagination token to be used for the next list operation.", + "type": "string" + } + }, + "type": "object" + }, + "KeyValueTargetingExpression": { + "description": "Key Value Targeting Expression.", + "id": "KeyValueTargetingExpression", + "properties": { + "expression": { + "description": "Keyword expression being targeted by the ad.", + "type": "string" + } + }, + "type": "object" + }, + "LandingPage": { + "description": "Contains information about where a user's browser is taken after the user clicks an ad.", + "id": "LandingPage", + "properties": { + "advertiserId": { + "description": "Advertiser ID of this landing page. This is a required field.", + "format": "int64", + "type": "string" + }, + "archived": { + "description": "Whether this landing page has been archived.", + "type": "boolean" + }, + "id": { + "description": "ID of this landing page. This is a read-only, auto-generated field.", + "format": "int64", + "type": "string" + }, + "kind": { + "default": "dfareporting#landingPage", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#landingPage\".", + "type": "string" + }, + "name": { + "description": "Name of this landing page. This is a required field. It must be less than 256 characters long.", + "type": "string" + }, + "url": { + "description": "URL of this landing page. This is a required field.", + "type": "string" + } + }, + "type": "object" + }, + "Language": { + "description": "Contains information about a language that can be targeted by ads.", + "id": "Language", + "properties": { + "id": { + "description": "Language ID of this language. This is the ID used for targeting and generating reports.", + "format": "int64", + "type": "string" + }, + "kind": { + "default": "dfareporting#language", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#language\".", + "type": "string" + }, + "languageCode": { + "description": "Format of language code is an ISO 639 two-letter language code optionally followed by an underscore followed by an ISO 3166 code. Examples are \"en\" for English or \"zh_CN\" for Simplified Chinese.", + "type": "string" + }, + "name": { + "description": "Name of this language.", + "type": "string" + } + }, + "type": "object" + }, + "LanguageTargeting": { + "description": "Language Targeting.", + "id": "LanguageTargeting", + "properties": { + "languages": { + "description": "Languages that this ad targets. For each language only languageId is required. The other fields are populated automatically when the ad is inserted or updated.", + "items": { + "$ref": "Language" + }, + "type": "array" + } + }, + "type": "object" + }, + "LanguagesListResponse": { + "description": "Language List Response", + "id": "LanguagesListResponse", + "properties": { + "kind": { + "default": "dfareporting#languagesListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#languagesListResponse\".", + "type": "string" + }, + "languages": { + "description": "Language collection.", + "items": { + "$ref": "Language" + }, + "type": "array" + } + }, + "type": "object" + }, + "LastModifiedInfo": { + "description": "Modification timestamp.", + "id": "LastModifiedInfo", + "properties": { + "time": { + "description": "Timestamp of the last change in milliseconds since epoch.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "ListPopulationClause": { + "description": "A group clause made up of list population terms representing constraints joined by ORs.", + "id": "ListPopulationClause", + "properties": { + "terms": { + "description": "Terms of this list population clause. Each clause is made up of list population terms representing constraints and are joined by ORs.", + "items": { + "$ref": "ListPopulationTerm" + }, + "type": "array" + } + }, + "type": "object" + }, + "ListPopulationRule": { + "description": "Remarketing List Population Rule.", + "id": "ListPopulationRule", + "properties": { + "floodlightActivityId": { + "description": "Floodlight activity ID associated with this rule. This field can be left blank.", + "format": "int64", + "type": "string" + }, + "floodlightActivityName": { + "description": "Name of floodlight activity associated with this rule. This is a read-only, auto-generated field.", + "type": "string" + }, + "listPopulationClauses": { + "description": "Clauses that make up this list population rule. Clauses are joined by ANDs, and the clauses themselves are made up of list population terms which are joined by ORs.", + "items": { + "$ref": "ListPopulationClause" + }, + "type": "array" + } + }, + "type": "object" + }, + "ListPopulationTerm": { + "description": "Remarketing List Population Rule Term.", + "id": "ListPopulationTerm", + "properties": { + "contains": { + "description": "Will be true if the term should check if the user is in the list and false if the term should check if the user is not in the list. This field is only relevant when type is set to LIST_MEMBERSHIP_TERM. False by default.", + "type": "boolean" + }, + "negation": { + "description": "Whether to negate the comparison result of this term during rule evaluation. This field is only relevant when type is left unset or set to CUSTOM_VARIABLE_TERM or REFERRER_TERM.", + "type": "boolean" + }, + "operator": { + "description": "Comparison operator of this term. This field is only relevant when type is left unset or set to CUSTOM_VARIABLE_TERM or REFERRER_TERM.", + "enum": [ + "NUM_EQUALS", + "NUM_GREATER_THAN", + "NUM_GREATER_THAN_EQUAL", + "NUM_LESS_THAN", + "NUM_LESS_THAN_EQUAL", + "STRING_CONTAINS", + "STRING_EQUALS" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "remarketingListId": { + "description": "ID of the list in question. This field is only relevant when type is set to LIST_MEMBERSHIP_TERM.", + "format": "int64", + "type": "string" + }, + "type": { + "description": "List population term type determines the applicable fields in this object. If left unset or set to CUSTOM_VARIABLE_TERM, then variableName, variableFriendlyName, operator, value, and negation are applicable. If set to LIST_MEMBERSHIP_TERM then remarketingListId and contains are applicable. If set to REFERRER_TERM then operator, value, and negation are applicable.", + "enum": [ + "CUSTOM_VARIABLE_TERM", + "LIST_MEMBERSHIP_TERM", + "REFERRER_TERM" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, + "value": { + "description": "Literal to compare the variable to. This field is only relevant when type is left unset or set to CUSTOM_VARIABLE_TERM or REFERRER_TERM.", + "type": "string" + }, + "variableFriendlyName": { + "description": "Friendly name of this term's variable. This is a read-only, auto-generated field. This field is only relevant when type is left unset or set to CUSTOM_VARIABLE_TERM.", + "type": "string" + }, + "variableName": { + "description": "Name of the variable (U1, U2, etc.) being compared in this term. This field is only relevant when type is set to null, CUSTOM_VARIABLE_TERM or REFERRER_TERM.", + "type": "string" + } + }, + "type": "object" + }, + "ListTargetingExpression": { + "description": "Remarketing List Targeting Expression.", + "id": "ListTargetingExpression", + "properties": { + "expression": { + "description": "Expression describing which lists are being targeted by the ad.", + "type": "string" + } + }, + "type": "object" + }, + "LookbackConfiguration": { + "description": "Lookback configuration settings.", + "id": "LookbackConfiguration", + "properties": { + "clickDuration": { + "description": "Lookback window, in days, from the last time a given user clicked on one of your ads. If you enter 0, clicks will not be considered as triggering events for floodlight tracking. If you leave this field blank, the default value for your account will be used. Acceptable values are 0 to 90, inclusive.", + "format": "int32", + "type": "integer" + }, + "postImpressionActivitiesDuration": { + "description": "Lookback window, in days, from the last time a given user viewed one of your ads. If you enter 0, impressions will not be considered as triggering events for floodlight tracking. If you leave this field blank, the default value for your account will be used. Acceptable values are 0 to 90, inclusive.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "Metric": { + "description": "Represents a metric.", + "id": "Metric", + "properties": { + "kind": { + "default": "dfareporting#metric", + "description": "The kind of resource this is, in this case dfareporting#metric.", + "type": "string" + }, + "name": { + "description": "The metric name, e.g. dfa:impressions", + "type": "string" + } + }, + "type": "object" + }, + "Metro": { + "description": "Contains information about a metro region that can be targeted by ads.", + "id": "Metro", + "properties": { + "countryCode": { + "description": "Country code of the country to which this metro region belongs.", + "type": "string" + }, + "countryDartId": { + "description": "DART ID of the country to which this metro region belongs.", + "format": "int64", + "type": "string" + }, + "dartId": { + "description": "DART ID of this metro region.", + "format": "int64", + "type": "string" + }, + "dmaId": { + "description": "DMA ID of this metro region. This is the ID used for targeting and generating reports, and is equivalent to metro_code.", + "format": "int64", + "type": "string" + }, + "kind": { + "default": "dfareporting#metro", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#metro\".", + "type": "string" + }, + "metroCode": { + "description": "Metro code of this metro region. This is equivalent to dma_id.", + "type": "string" + }, + "name": { + "description": "Name of this metro region.", + "type": "string" + } + }, + "type": "object" + }, + "MetrosListResponse": { + "description": "Metro List Response", + "id": "MetrosListResponse", + "properties": { + "kind": { + "default": "dfareporting#metrosListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#metrosListResponse\".", + "type": "string" + }, + "metros": { + "description": "Metro collection.", + "items": { + "$ref": "Metro" + }, + "type": "array" + } + }, + "type": "object" + }, + "MobileCarrier": { + "description": "Contains information about a mobile carrier that can be targeted by ads.", + "id": "MobileCarrier", + "properties": { + "countryCode": { + "description": "Country code of the country to which this mobile carrier belongs.", + "type": "string" + }, + "countryDartId": { + "description": "DART ID of the country to which this mobile carrier belongs.", + "format": "int64", + "type": "string" + }, + "id": { + "description": "ID of this mobile carrier.", + "format": "int64", + "type": "string" + }, + "kind": { + "default": "dfareporting#mobileCarrier", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#mobileCarrier\".", + "type": "string" + }, + "name": { + "description": "Name of this mobile carrier.", + "type": "string" + } + }, + "type": "object" + }, + "MobileCarriersListResponse": { + "description": "Mobile Carrier List Response", + "id": "MobileCarriersListResponse", + "properties": { + "kind": { + "default": "dfareporting#mobileCarriersListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#mobileCarriersListResponse\".", + "type": "string" + }, + "mobileCarriers": { + "description": "Mobile carrier collection.", + "items": { + "$ref": "MobileCarrier" + }, + "type": "array" + } + }, + "type": "object" + }, + "ObjectFilter": { + "description": "Object Filter.", + "id": "ObjectFilter", + "properties": { + "kind": { + "default": "dfareporting#objectFilter", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#objectFilter\".", + "type": "string" + }, + "objectIds": { + "description": "Applicable when status is ASSIGNED. The user has access to objects with these object IDs.", + "items": { + "format": "int64", + "type": "string" + }, + "type": "array" + }, + "status": { + "description": "Status of the filter. NONE means the user has access to none of the objects. ALL means the user has access to all objects. ASSIGNED means the user has access to the objects with IDs in the objectIds list.", + "enum": [ + "ALL", + "ASSIGNED", + "NONE" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "OffsetPosition": { + "description": "Offset Position.", + "id": "OffsetPosition", + "properties": { + "left": { + "description": "Offset distance from left side of an asset or a window.", + "format": "int32", + "type": "integer" + }, + "top": { + "description": "Offset distance from top side of an asset or a window.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "OmnitureSettings": { + "description": "Omniture Integration Settings.", + "id": "OmnitureSettings", + "properties": { + "omnitureCostDataEnabled": { + "description": "Whether placement cost data will be sent to Omniture. This property can be enabled only if omnitureIntegrationEnabled is true.", + "type": "boolean" + }, + "omnitureIntegrationEnabled": { + "description": "Whether Omniture integration is enabled. This property can be enabled only when the \"Advanced Ad Serving\" account setting is enabled.", + "type": "boolean" + } + }, + "type": "object" + }, + "OperatingSystem": { + "description": "Contains information about an operating system that can be targeted by ads.", + "id": "OperatingSystem", + "properties": { + "dartId": { + "description": "DART ID of this operating system. This is the ID used for targeting.", + "format": "int64", + "type": "string" + }, + "desktop": { + "description": "Whether this operating system is for desktop.", + "type": "boolean" + }, + "kind": { + "default": "dfareporting#operatingSystem", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#operatingSystem\".", + "type": "string" + }, + "mobile": { + "description": "Whether this operating system is for mobile.", + "type": "boolean" + }, + "name": { + "description": "Name of this operating system.", + "type": "string" + } + }, + "type": "object" + }, + "OperatingSystemVersion": { + "description": "Contains information about a particular version of an operating system that can be targeted by ads.", + "id": "OperatingSystemVersion", + "properties": { + "id": { + "description": "ID of this operating system version.", + "format": "int64", + "type": "string" + }, + "kind": { + "default": "dfareporting#operatingSystemVersion", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#operatingSystemVersion\".", + "type": "string" + }, + "majorVersion": { + "description": "Major version (leftmost number) of this operating system version.", + "type": "string" + }, + "minorVersion": { + "description": "Minor version (number after the first dot) of this operating system version.", + "type": "string" + }, + "name": { + "description": "Name of this operating system version.", + "type": "string" + }, + "operatingSystem": { + "$ref": "OperatingSystem", + "description": "Operating system of this operating system version." + } + }, + "type": "object" + }, + "OperatingSystemVersionsListResponse": { + "description": "Operating System Version List Response", + "id": "OperatingSystemVersionsListResponse", + "properties": { + "kind": { + "default": "dfareporting#operatingSystemVersionsListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#operatingSystemVersionsListResponse\".", + "type": "string" + }, + "operatingSystemVersions": { + "description": "Operating system version collection.", + "items": { + "$ref": "OperatingSystemVersion" + }, + "type": "array" + } + }, + "type": "object" + }, + "OperatingSystemsListResponse": { + "description": "Operating System List Response", + "id": "OperatingSystemsListResponse", + "properties": { + "kind": { + "default": "dfareporting#operatingSystemsListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#operatingSystemsListResponse\".", + "type": "string" + }, + "operatingSystems": { + "description": "Operating system collection.", + "items": { + "$ref": "OperatingSystem" + }, + "type": "array" + } + }, + "type": "object" + }, + "OptimizationActivity": { + "description": "Creative optimization activity.", + "id": "OptimizationActivity", + "properties": { + "floodlightActivityId": { + "description": "Floodlight activity ID of this optimization activity. This is a required field.", + "format": "int64", + "type": "string" + }, + "floodlightActivityIdDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of the floodlight activity. This is a read-only, auto-generated field." + }, + "weight": { + "description": "Weight associated with this optimization. The weight assigned will be understood in proportion to the weights assigned to the other optimization activities. Value must be greater than or equal to 1.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "Order": { + "description": "Describes properties of a DoubleClick Planning order.", + "id": "Order", + "properties": { + "accountId": { + "description": "Account ID of this order.", + "format": "int64", + "type": "string" + }, + "advertiserId": { + "description": "Advertiser ID of this order.", + "format": "int64", + "type": "string" + }, + "approverUserProfileIds": { + "description": "IDs for users that have to approve documents created for this order.", + "items": { + "format": "int64", + "type": "string" + }, + "type": "array" + }, + "buyerInvoiceId": { + "description": "Buyer invoice ID associated with this order.", + "type": "string" + }, + "buyerOrganizationName": { + "description": "Name of the buyer organization.", + "type": "string" + }, + "comments": { + "description": "Comments in this order.", + "type": "string" + }, + "contacts": { + "description": "Contacts for this order.", + "items": { + "$ref": "OrderContact" + }, + "type": "array" + }, + "id": { + "description": "ID of this order. This is a read-only, auto-generated field.", + "format": "int64", + "type": "string" + }, + "kind": { + "default": "dfareporting#order", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#order\".", + "type": "string" + }, + "lastModifiedInfo": { + "$ref": "LastModifiedInfo", + "description": "Information about the most recent modification of this order." + }, + "name": { + "description": "Name of this order.", + "type": "string" + }, + "notes": { + "description": "Notes of this order.", + "type": "string" + }, + "planningTermId": { + "description": "ID of the terms and conditions template used in this order.", + "format": "int64", + "type": "string" + }, + "projectId": { + "description": "Project ID of this order.", + "format": "int64", + "type": "string" + }, + "sellerOrderId": { + "description": "Seller order ID associated with this order.", + "type": "string" + }, + "sellerOrganizationName": { + "description": "Name of the seller organization.", + "type": "string" + }, + "siteId": { + "description": "Site IDs this order is associated with.", + "items": { + "format": "int64", + "type": "string" + }, + "type": "array" + }, + "siteNames": { + "description": "Free-form site names this order is associated with.", + "items": { + "type": "string" + }, + "type": "array" + }, + "subaccountId": { + "description": "Subaccount ID of this order.", + "format": "int64", + "type": "string" + }, + "termsAndConditions": { + "description": "Terms and conditions of this order.", + "type": "string" + } + }, + "type": "object" + }, + "OrderContact": { + "description": "Contact of an order.", + "id": "OrderContact", + "properties": { + "contactInfo": { + "description": "Free-form information about this contact. It could be any information related to this contact in addition to type, title, name, and signature user profile ID.", + "type": "string" + }, + "contactName": { + "description": "Name of this contact.", + "type": "string" + }, + "contactTitle": { + "description": "Title of this contact.", + "type": "string" + }, + "contactType": { + "description": "Type of this contact.", + "enum": [ + "PLANNING_ORDER_CONTACT_BUYER_BILLING_CONTACT", + "PLANNING_ORDER_CONTACT_BUYER_CONTACT", + "PLANNING_ORDER_CONTACT_SELLER_CONTACT" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, + "signatureUserProfileId": { + "description": "ID of the user profile containing the signature that will be embedded into order documents.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "OrderDocument": { + "description": "Contains properties of a DoubleClick Planning order document.", + "id": "OrderDocument", + "properties": { + "accountId": { + "description": "Account ID of this order document.", + "format": "int64", + "type": "string" + }, + "advertiserId": { + "description": "Advertiser ID of this order document.", + "format": "int64", + "type": "string" + }, + "amendedOrderDocumentId": { + "description": "The amended order document ID of this order document. An order document can be created by optionally amending another order document so that the change history can be preserved.", + "format": "int64", + "type": "string" + }, + "approvedByUserProfileIds": { + "description": "IDs of users who have approved this order document.", + "items": { + "format": "int64", + "type": "string" + }, + "type": "array" + }, + "cancelled": { + "description": "Whether this order document is cancelled.", + "type": "boolean" + }, + "createdInfo": { + "$ref": "LastModifiedInfo", + "description": "Information about the creation of this order document." + }, + "effectiveDate": { + "description": "Effective date of this order document.", + "format": "date", + "type": "string" + }, + "id": { + "description": "ID of this order document.", + "format": "int64", + "type": "string" + }, + "kind": { + "default": "dfareporting#orderDocument", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#orderDocument\".", + "type": "string" + }, + "lastSentRecipients": { + "description": "List of email addresses that received the last sent document.", + "items": { + "type": "string" + }, + "type": "array" + }, + "lastSentTime": { + "description": "Timestamp of the last email sent with this order document.", + "format": "date-time", + "type": "string" + }, + "orderId": { + "description": "ID of the order from which this order document is created.", + "format": "int64", + "type": "string" + }, + "projectId": { + "description": "Project ID of this order document.", + "format": "int64", + "type": "string" + }, + "signed": { + "description": "Whether this order document has been signed.", + "type": "boolean" + }, + "subaccountId": { + "description": "Subaccount ID of this order document.", + "format": "int64", + "type": "string" + }, + "title": { + "description": "Title of this order document.", + "type": "string" + }, + "type": { + "description": "Type of this order document", + "enum": [ + "PLANNING_ORDER_TYPE_CHANGE_ORDER", + "PLANNING_ORDER_TYPE_INSERTION_ORDER" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "OrderDocumentsListResponse": { + "description": "Order document List Response", + "id": "OrderDocumentsListResponse", + "properties": { + "kind": { + "default": "dfareporting#orderDocumentsListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#orderDocumentsListResponse\".", + "type": "string" + }, + "nextPageToken": { + "description": "Pagination token to be used for the next list operation.", + "type": "string" + }, + "orderDocuments": { + "description": "Order document collection", + "items": { + "$ref": "OrderDocument" + }, + "type": "array" + } + }, + "type": "object" + }, + "OrdersListResponse": { + "description": "Order List Response", + "id": "OrdersListResponse", + "properties": { + "kind": { + "default": "dfareporting#ordersListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#ordersListResponse\".", + "type": "string" + }, + "nextPageToken": { + "description": "Pagination token to be used for the next list operation.", + "type": "string" + }, + "orders": { + "description": "Order collection.", + "items": { + "$ref": "Order" + }, + "type": "array" + } + }, + "type": "object" + }, + "PathToConversionReportCompatibleFields": { + "description": "Represents fields that are compatible to be selected for a report of type \"PATH_TO_CONVERSION\".", + "id": "PathToConversionReportCompatibleFields", + "properties": { + "conversionDimensions": { + "description": "Conversion dimensions which are compatible to be selected in the \"conversionDimensions\" section of the report.", + "items": { + "$ref": "Dimension" + }, + "type": "array" + }, + "customFloodlightVariables": { + "description": "Custom floodlight variables which are compatible to be selected in the \"customFloodlightVariables\" section of the report.", + "items": { + "$ref": "Dimension" + }, + "type": "array" + }, + "kind": { + "default": "dfareporting#pathToConversionReportCompatibleFields", + "description": "The kind of resource this is, in this case dfareporting#pathToConversionReportCompatibleFields.", + "type": "string" + }, + "metrics": { + "description": "Metrics which are compatible to be selected in the \"metricNames\" section of the report.", + "items": { + "$ref": "Metric" + }, + "type": "array" + }, + "perInteractionDimensions": { + "description": "Per-interaction dimensions which are compatible to be selected in the \"perInteractionDimensions\" section of the report.", + "items": { + "$ref": "Dimension" + }, + "type": "array" + } + }, + "type": "object" + }, + "Placement": { + "description": "Contains properties of a placement.", + "id": "Placement", + "properties": { + "accountId": { + "description": "Account ID of this placement. This field can be left blank.", + "format": "int64", + "type": "string" + }, + "adBlockingOptOut": { + "description": "Whether this placement opts out of ad blocking. When true, ad blocking is disabled for this placement. When false, the campaign and site settings take effect.", + "type": "boolean" + }, + "advertiserId": { + "description": "Advertiser ID of this placement. This field can be left blank.", + "format": "int64", + "type": "string" + }, + "advertiserIdDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of the advertiser. This is a read-only, auto-generated field." + }, + "archived": { + "description": "Whether this placement is archived.", + "type": "boolean" + }, + "campaignId": { + "description": "Campaign ID of this placement. This field is a required field on insertion.", + "format": "int64", + "type": "string" + }, + "campaignIdDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of the campaign. This is a read-only, auto-generated field." + }, + "comment": { + "description": "Comments for this placement.", + "type": "string" + }, + "compatibility": { + "description": "Placement compatibility. DISPLAY and DISPLAY_INTERSTITIAL refer to rendering on desktop, on mobile devices or in mobile apps for regular or interstitial ads respectively. APP and APP_INTERSTITIAL are no longer allowed for new placement insertions. Instead, use DISPLAY or DISPLAY_INTERSTITIAL. IN_STREAM_VIDEO refers to rendering in in-stream video ads developed with the VAST standard. This field is required on insertion.", + "enum": [ + "APP", + "APP_INTERSTITIAL", + "DISPLAY", + "DISPLAY_INTERSTITIAL", + "IN_STREAM_VIDEO" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "contentCategoryId": { + "description": "ID of the content category assigned to this placement.", + "format": "int64", + "type": "string" + }, + "createInfo": { + "$ref": "LastModifiedInfo", + "description": "Information about the creation of this placement. This is a read-only field." + }, + "directorySiteId": { + "description": "Directory site ID of this placement. On insert, you must set either this field or the siteId field to specify the site associated with this placement. This is a required field that is read-only after insertion.", + "format": "int64", + "type": "string" + }, + "directorySiteIdDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of the directory site. This is a read-only, auto-generated field." + }, + "externalId": { + "description": "External ID for this placement.", + "type": "string" + }, + "id": { + "description": "ID of this placement. This is a read-only, auto-generated field.", + "format": "int64", + "type": "string" + }, + "idDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of this placement. This is a read-only, auto-generated field." + }, + "keyName": { + "description": "Key name of this placement. This is a read-only, auto-generated field.", + "type": "string" + }, + "kind": { + "default": "dfareporting#placement", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#placement\".", + "type": "string" + }, + "lastModifiedInfo": { + "$ref": "LastModifiedInfo", + "description": "Information about the most recent modification of this placement. This is a read-only field." + }, + "lookbackConfiguration": { + "$ref": "LookbackConfiguration", + "description": "Lookback window settings for this placement." + }, + "name": { + "description": "Name of this placement.This is a required field and must be less than 256 characters long.", + "type": "string" + }, + "paymentApproved": { + "description": "Whether payment was approved for this placement. This is a read-only field relevant only to publisher-paid placements.", + "type": "boolean" + }, + "paymentSource": { + "description": "Payment source for this placement. This is a required field that is read-only after insertion.", + "enum": [ + "PLACEMENT_AGENCY_PAID", + "PLACEMENT_PUBLISHER_PAID" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "placementGroupId": { + "description": "ID of this placement's group, if applicable.", + "format": "int64", + "type": "string" + }, + "placementGroupIdDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of the placement group. This is a read-only, auto-generated field." + }, + "placementStrategyId": { + "description": "ID of the placement strategy assigned to this placement.", + "format": "int64", + "type": "string" + }, + "pricingSchedule": { + "$ref": "PricingSchedule", + "description": "Pricing schedule of this placement. This field is required on insertion, specifically subfields startDate, endDate and pricingType." + }, + "primary": { + "description": "Whether this placement is the primary placement of a roadblock (placement group). You cannot change this field from true to false. Setting this field to true will automatically set the primary field on the original primary placement of the roadblock to false, and it will automatically set the roadblock's primaryPlacementId field to the ID of this placement.", + "type": "boolean" + }, + "publisherUpdateInfo": { + "$ref": "LastModifiedInfo", + "description": "Information about the last publisher update. This is a read-only field." + }, + "siteId": { + "description": "Site ID associated with this placement. On insert, you must set either this field or the directorySiteId field to specify the site associated with this placement. This is a required field that is read-only after insertion.", + "format": "int64", + "type": "string" + }, + "siteIdDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of the site. This is a read-only, auto-generated field." + }, + "size": { + "$ref": "Size", + "description": "Size associated with this placement. When inserting or updating a placement, only the size ID field is used. This field is required on insertion." + }, + "sslRequired": { + "description": "Whether creatives assigned to this placement must be SSL-compliant.", + "type": "boolean" + }, + "status": { + "description": "Third-party placement status.", + "enum": [ + "ACKNOWLEDGE_ACCEPTANCE", + "ACKNOWLEDGE_REJECTION", + "DRAFT", + "PAYMENT_ACCEPTED", + "PAYMENT_REJECTED", + "PENDING_REVIEW" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "subaccountId": { + "description": "Subaccount ID of this placement. This field can be left blank.", + "format": "int64", + "type": "string" + }, + "tagFormats": { + "description": "Tag formats to generate for this placement. This field is required on insertion.\nAcceptable values are:\n- \"PLACEMENT_TAG_STANDARD\"\n- \"PLACEMENT_TAG_IFRAME_JAVASCRIPT\"\n- \"PLACEMENT_TAG_IFRAME_ILAYER\"\n- \"PLACEMENT_TAG_INTERNAL_REDIRECT\"\n- \"PLACEMENT_TAG_JAVASCRIPT\"\n- \"PLACEMENT_TAG_INTERSTITIAL_IFRAME_JAVASCRIPT\"\n- \"PLACEMENT_TAG_INTERSTITIAL_INTERNAL_REDIRECT\"\n- \"PLACEMENT_TAG_INTERSTITIAL_JAVASCRIPT\"\n- \"PLACEMENT_TAG_CLICK_COMMANDS\"\n- \"PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH\"\n- \"PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH_VAST_3\"\n- \"PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH_VAST_4\"\n- \"PLACEMENT_TAG_TRACKING\"\n- \"PLACEMENT_TAG_TRACKING_IFRAME\"\n- \"PLACEMENT_TAG_TRACKING_JAVASCRIPT\"", + "items": { + "enum": [ + "PLACEMENT_TAG_CLICK_COMMANDS", + "PLACEMENT_TAG_IFRAME_ILAYER", + "PLACEMENT_TAG_IFRAME_JAVASCRIPT", + "PLACEMENT_TAG_IFRAME_JAVASCRIPT_LEGACY", + "PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH", + "PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH_VAST_3", + "PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH_VAST_4", + "PLACEMENT_TAG_INTERNAL_REDIRECT", + "PLACEMENT_TAG_INTERSTITIAL_IFRAME_JAVASCRIPT", + "PLACEMENT_TAG_INTERSTITIAL_IFRAME_JAVASCRIPT_LEGACY", + "PLACEMENT_TAG_INTERSTITIAL_INTERNAL_REDIRECT", + "PLACEMENT_TAG_INTERSTITIAL_JAVASCRIPT", + "PLACEMENT_TAG_INTERSTITIAL_JAVASCRIPT_LEGACY", + "PLACEMENT_TAG_JAVASCRIPT", + "PLACEMENT_TAG_JAVASCRIPT_LEGACY", + "PLACEMENT_TAG_STANDARD", + "PLACEMENT_TAG_TRACKING", + "PLACEMENT_TAG_TRACKING_IFRAME", + "PLACEMENT_TAG_TRACKING_JAVASCRIPT" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "type": "array" + }, + "tagSetting": { + "$ref": "TagSetting", + "description": "Tag settings for this placement." + }, + "videoActiveViewOptOut": { + "description": "Whether Verification and ActiveView are disabled for in-stream video creatives for this placement. The same setting videoActiveViewOptOut exists on the site level -- the opt out occurs if either of these settings are true. These settings are distinct from DirectorySites.settings.activeViewOptOut or Sites.siteSettings.activeViewOptOut which only apply to display ads. However, Accounts.activeViewOptOut opts out both video traffic, as well as display ads, from Verification and ActiveView.", + "type": "boolean" + }, + "videoSettings": { + "$ref": "VideoSettings", + "description": "A collection of settings which affect video creatives served through this placement. Applicable to placements with IN_STREAM_VIDEO compatibility." + }, + "vpaidAdapterChoice": { + "description": "VPAID adapter setting for this placement. Controls which VPAID format the measurement adapter will use for in-stream video creatives assigned to this placement.\n\nNote: Flash is no longer supported. This field now defaults to HTML5 when the following values are provided: FLASH, BOTH.", + "enum": [ + "BOTH", + "DEFAULT", + "FLASH", + "HTML5" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "PlacementAssignment": { + "description": "Placement Assignment.", + "id": "PlacementAssignment", + "properties": { + "active": { + "description": "Whether this placement assignment is active. When true, the placement will be included in the ad's rotation.", + "type": "boolean" + }, + "placementId": { + "description": "ID of the placement to be assigned. This is a required field.", + "format": "int64", + "type": "string" + }, + "placementIdDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of the placement. This is a read-only, auto-generated field." + }, + "sslRequired": { + "description": "Whether the placement to be assigned requires SSL. This is a read-only field that is auto-generated when the ad is inserted or updated.", + "type": "boolean" + } + }, + "type": "object" + }, + "PlacementGroup": { + "description": "Contains properties of a package or roadblock.", + "id": "PlacementGroup", + "properties": { + "accountId": { + "description": "Account ID of this placement group. This is a read-only field that can be left blank.", + "format": "int64", + "type": "string" + }, + "advertiserId": { + "description": "Advertiser ID of this placement group. This is a required field on insertion.", + "format": "int64", + "type": "string" + }, + "advertiserIdDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of the advertiser. This is a read-only, auto-generated field." + }, + "archived": { + "description": "Whether this placement group is archived.", + "type": "boolean" + }, + "campaignId": { + "description": "Campaign ID of this placement group. This field is required on insertion.", + "format": "int64", + "type": "string" + }, + "campaignIdDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of the campaign. This is a read-only, auto-generated field." + }, + "childPlacementIds": { + "description": "IDs of placements which are assigned to this placement group. This is a read-only, auto-generated field.", + "items": { + "format": "int64", + "type": "string" + }, + "type": "array" + }, + "comment": { + "description": "Comments for this placement group.", + "type": "string" + }, + "contentCategoryId": { + "description": "ID of the content category assigned to this placement group.", + "format": "int64", + "type": "string" + }, + "createInfo": { + "$ref": "LastModifiedInfo", + "description": "Information about the creation of this placement group. This is a read-only field." + }, + "directorySiteId": { + "description": "Directory site ID associated with this placement group. On insert, you must set either this field or the site_id field to specify the site associated with this placement group. This is a required field that is read-only after insertion.", + "format": "int64", + "type": "string" + }, + "directorySiteIdDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of the directory site. This is a read-only, auto-generated field." + }, + "externalId": { + "description": "External ID for this placement.", + "type": "string" + }, + "id": { + "description": "ID of this placement group. This is a read-only, auto-generated field.", + "format": "int64", + "type": "string" + }, + "idDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of this placement group. This is a read-only, auto-generated field." + }, + "kind": { + "default": "dfareporting#placementGroup", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#placementGroup\".", + "type": "string" + }, + "lastModifiedInfo": { + "$ref": "LastModifiedInfo", + "description": "Information about the most recent modification of this placement group. This is a read-only field." + }, + "name": { + "description": "Name of this placement group. This is a required field and must be less than 256 characters long.", + "type": "string" + }, + "placementGroupType": { + "description": "Type of this placement group. A package is a simple group of placements that acts as a single pricing point for a group of tags. A roadblock is a group of placements that not only acts as a single pricing point, but also assumes that all the tags in it will be served at the same time. A roadblock requires one of its assigned placements to be marked as primary for reporting. This field is required on insertion.", + "enum": [ + "PLACEMENT_PACKAGE", + "PLACEMENT_ROADBLOCK" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "placementStrategyId": { + "description": "ID of the placement strategy assigned to this placement group.", + "format": "int64", + "type": "string" + }, + "pricingSchedule": { + "$ref": "PricingSchedule", + "description": "Pricing schedule of this placement group. This field is required on insertion." + }, + "primaryPlacementId": { + "description": "ID of the primary placement, used to calculate the media cost of a roadblock (placement group). Modifying this field will automatically modify the primary field on all affected roadblock child placements.", + "format": "int64", + "type": "string" + }, + "primaryPlacementIdDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of the primary placement. This is a read-only, auto-generated field." + }, + "siteId": { + "description": "Site ID associated with this placement group. On insert, you must set either this field or the directorySiteId field to specify the site associated with this placement group. This is a required field that is read-only after insertion.", + "format": "int64", + "type": "string" + }, + "siteIdDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of the site. This is a read-only, auto-generated field." + }, + "subaccountId": { + "description": "Subaccount ID of this placement group. This is a read-only field that can be left blank.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "PlacementGroupsListResponse": { + "description": "Placement Group List Response", + "id": "PlacementGroupsListResponse", + "properties": { + "kind": { + "default": "dfareporting#placementGroupsListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#placementGroupsListResponse\".", + "type": "string" + }, + "nextPageToken": { + "description": "Pagination token to be used for the next list operation.", + "type": "string" + }, + "placementGroups": { + "description": "Placement group collection.", + "items": { + "$ref": "PlacementGroup" + }, + "type": "array" + } + }, + "type": "object" + }, + "PlacementStrategiesListResponse": { + "description": "Placement Strategy List Response", + "id": "PlacementStrategiesListResponse", + "properties": { + "kind": { + "default": "dfareporting#placementStrategiesListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#placementStrategiesListResponse\".", + "type": "string" + }, + "nextPageToken": { + "description": "Pagination token to be used for the next list operation.", + "type": "string" + }, + "placementStrategies": { + "description": "Placement strategy collection.", + "items": { + "$ref": "PlacementStrategy" + }, + "type": "array" + } + }, + "type": "object" + }, + "PlacementStrategy": { + "description": "Contains properties of a placement strategy.", + "id": "PlacementStrategy", + "properties": { + "accountId": { + "description": "Account ID of this placement strategy.This is a read-only field that can be left blank.", + "format": "int64", + "type": "string" + }, + "id": { + "description": "ID of this placement strategy. This is a read-only, auto-generated field.", + "format": "int64", + "type": "string" + }, + "kind": { + "default": "dfareporting#placementStrategy", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#placementStrategy\".", + "type": "string" + }, + "name": { + "description": "Name of this placement strategy. This is a required field. It must be less than 256 characters long and unique among placement strategies of the same account.", + "type": "string" + } + }, + "type": "object" + }, + "PlacementTag": { + "description": "Placement Tag", + "id": "PlacementTag", + "properties": { + "placementId": { + "description": "Placement ID", + "format": "int64", + "type": "string" + }, + "tagDatas": { + "description": "Tags generated for this placement.", + "items": { + "$ref": "TagData" + }, + "type": "array" + } + }, + "type": "object" + }, + "PlacementsGenerateTagsResponse": { + "description": "Placement GenerateTags Response", + "id": "PlacementsGenerateTagsResponse", + "properties": { + "kind": { + "default": "dfareporting#placementsGenerateTagsResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#placementsGenerateTagsResponse\".", + "type": "string" + }, + "placementTags": { + "description": "Set of generated tags for the specified placements.", + "items": { + "$ref": "PlacementTag" + }, + "type": "array" + } + }, + "type": "object" + }, + "PlacementsListResponse": { + "description": "Placement List Response", + "id": "PlacementsListResponse", + "properties": { + "kind": { + "default": "dfareporting#placementsListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#placementsListResponse\".", + "type": "string" + }, + "nextPageToken": { + "description": "Pagination token to be used for the next list operation.", + "type": "string" + }, + "placements": { + "description": "Placement collection.", + "items": { + "$ref": "Placement" + }, + "type": "array" + } + }, + "type": "object" + }, + "PlatformType": { + "description": "Contains information about a platform type that can be targeted by ads.", + "id": "PlatformType", + "properties": { + "id": { + "description": "ID of this platform type.", + "format": "int64", + "type": "string" + }, + "kind": { + "default": "dfareporting#platformType", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#platformType\".", + "type": "string" + }, + "name": { + "description": "Name of this platform type.", + "type": "string" + } + }, + "type": "object" + }, + "PlatformTypesListResponse": { + "description": "Platform Type List Response", + "id": "PlatformTypesListResponse", + "properties": { + "kind": { + "default": "dfareporting#platformTypesListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#platformTypesListResponse\".", + "type": "string" + }, + "platformTypes": { + "description": "Platform type collection.", + "items": { + "$ref": "PlatformType" + }, + "type": "array" + } + }, + "type": "object" + }, + "PopupWindowProperties": { + "description": "Popup Window Properties.", + "id": "PopupWindowProperties", + "properties": { + "dimension": { + "$ref": "Size", + "description": "Popup dimension for a creative. This is a read-only field. Applicable to the following creative types: all RICH_MEDIA and all VPAID" + }, + "offset": { + "$ref": "OffsetPosition", + "description": "Upper-left corner coordinates of the popup window. Applicable if positionType is COORDINATES." + }, + "positionType": { + "description": "Popup window position either centered or at specific coordinate.", + "enum": [ + "CENTER", + "COORDINATES" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "showAddressBar": { + "description": "Whether to display the browser address bar.", + "type": "boolean" + }, + "showMenuBar": { + "description": "Whether to display the browser menu bar.", + "type": "boolean" + }, + "showScrollBar": { + "description": "Whether to display the browser scroll bar.", + "type": "boolean" + }, + "showStatusBar": { + "description": "Whether to display the browser status bar.", + "type": "boolean" + }, + "showToolBar": { + "description": "Whether to display the browser tool bar.", + "type": "boolean" + }, + "title": { + "description": "Title of popup window.", + "type": "string" + } + }, + "type": "object" + }, + "PostalCode": { + "description": "Contains information about a postal code that can be targeted by ads.", + "id": "PostalCode", + "properties": { + "code": { + "description": "Postal code. This is equivalent to the id field.", + "type": "string" + }, + "countryCode": { + "description": "Country code of the country to which this postal code belongs.", + "type": "string" + }, + "countryDartId": { + "description": "DART ID of the country to which this postal code belongs.", + "format": "int64", + "type": "string" + }, + "id": { + "description": "ID of this postal code.", + "type": "string" + }, + "kind": { + "default": "dfareporting#postalCode", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#postalCode\".", + "type": "string" + } + }, + "type": "object" + }, + "PostalCodesListResponse": { + "description": "Postal Code List Response", + "id": "PostalCodesListResponse", + "properties": { + "kind": { + "default": "dfareporting#postalCodesListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#postalCodesListResponse\".", + "type": "string" + }, + "postalCodes": { + "description": "Postal code collection.", + "items": { + "$ref": "PostalCode" + }, + "type": "array" + } + }, + "type": "object" + }, + "Pricing": { + "description": "Pricing Information", + "id": "Pricing", + "properties": { + "capCostType": { + "description": "Cap cost type of this inventory item.", + "enum": [ + "PLANNING_PLACEMENT_CAP_COST_TYPE_CUMULATIVE", + "PLANNING_PLACEMENT_CAP_COST_TYPE_MONTHLY", + "PLANNING_PLACEMENT_CAP_COST_TYPE_NONE" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, + "endDate": { + "description": "End date of this inventory item.", + "format": "date", + "type": "string" + }, + "flights": { + "description": "Flights of this inventory item. A flight (a.k.a. pricing period) represents the inventory item pricing information for a specific period of time.", + "items": { + "$ref": "Flight" + }, + "type": "array" + }, + "groupType": { + "description": "Group type of this inventory item if it represents a placement group. Is null otherwise. There are two type of placement groups: PLANNING_PLACEMENT_GROUP_TYPE_PACKAGE is a simple group of inventory items that acts as a single pricing point for a group of tags. PLANNING_PLACEMENT_GROUP_TYPE_ROADBLOCK is a group of inventory items that not only acts as a single pricing point, but also assumes that all the tags in it will be served at the same time. A roadblock requires one of its assigned inventory items to be marked as primary.", + "enum": [ + "PLANNING_PLACEMENT_GROUP_TYPE_PACKAGE", + "PLANNING_PLACEMENT_GROUP_TYPE_ROADBLOCK" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "pricingType": { + "description": "Pricing type of this inventory item.", + "enum": [ + "PLANNING_PLACEMENT_PRICING_TYPE_CLICKS", + "PLANNING_PLACEMENT_PRICING_TYPE_CPA", + "PLANNING_PLACEMENT_PRICING_TYPE_CPC", + "PLANNING_PLACEMENT_PRICING_TYPE_CPM", + "PLANNING_PLACEMENT_PRICING_TYPE_CPM_ACTIVEVIEW", + "PLANNING_PLACEMENT_PRICING_TYPE_FLAT_RATE_CLICKS", + "PLANNING_PLACEMENT_PRICING_TYPE_FLAT_RATE_IMPRESSIONS", + "PLANNING_PLACEMENT_PRICING_TYPE_IMPRESSIONS" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "startDate": { + "description": "Start date of this inventory item.", + "format": "date", + "type": "string" + } + }, + "type": "object" + }, + "PricingSchedule": { + "description": "Pricing Schedule", + "id": "PricingSchedule", + "properties": { + "capCostOption": { + "description": "Placement cap cost option.", + "enum": [ + "CAP_COST_CUMULATIVE", + "CAP_COST_MONTHLY", + "CAP_COST_NONE" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, + "disregardOverdelivery": { + "description": "Whether cap costs are ignored by ad serving.", + "type": "boolean" + }, + "endDate": { + "description": "Placement end date. This date must be later than, or the same day as, the placement start date, but not later than the campaign end date. If, for example, you set 6/25/2015 as both the start and end dates, the effective placement date is just that day only, 6/25/2015. The hours, minutes, and seconds of the end date should not be set, as doing so will result in an error. This field is required on insertion.", + "format": "date", + "type": "string" + }, + "flighted": { + "description": "Whether this placement is flighted. If true, pricing periods will be computed automatically.", + "type": "boolean" + }, + "floodlightActivityId": { + "description": "Floodlight activity ID associated with this placement. This field should be set when placement pricing type is set to PRICING_TYPE_CPA.", + "format": "int64", + "type": "string" + }, + "pricingPeriods": { + "description": "Pricing periods for this placement.", + "items": { + "$ref": "PricingSchedulePricingPeriod" + }, + "type": "array" + }, + "pricingType": { + "description": "Placement pricing type. This field is required on insertion.", + "enum": [ + "PRICING_TYPE_CPA", + "PRICING_TYPE_CPC", + "PRICING_TYPE_CPM", + "PRICING_TYPE_CPM_ACTIVEVIEW", + "PRICING_TYPE_FLAT_RATE_CLICKS", + "PRICING_TYPE_FLAT_RATE_IMPRESSIONS" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "startDate": { + "description": "Placement start date. This date must be later than, or the same day as, the campaign start date. The hours, minutes, and seconds of the start date should not be set, as doing so will result in an error. This field is required on insertion.", + "format": "date", + "type": "string" + }, + "testingStartDate": { + "description": "Testing start date of this placement. The hours, minutes, and seconds of the start date should not be set, as doing so will result in an error.", + "format": "date", + "type": "string" + } + }, + "type": "object" + }, + "PricingSchedulePricingPeriod": { + "description": "Pricing Period", + "id": "PricingSchedulePricingPeriod", + "properties": { + "endDate": { + "description": "Pricing period end date. This date must be later than, or the same day as, the pricing period start date, but not later than the placement end date. The period end date can be the same date as the period start date. If, for example, you set 6/25/2015 as both the start and end dates, the effective pricing period date is just that day only, 6/25/2015. The hours, minutes, and seconds of the end date should not be set, as doing so will result in an error.", + "format": "date", + "type": "string" + }, + "pricingComment": { + "description": "Comments for this pricing period.", + "type": "string" + }, + "rateOrCostNanos": { + "description": "Rate or cost of this pricing period in nanos (i.e., multipled by 1000000000). Acceptable values are 0 to 1000000000000000000, inclusive.", + "format": "int64", + "type": "string" + }, + "startDate": { + "description": "Pricing period start date. This date must be later than, or the same day as, the placement start date. The hours, minutes, and seconds of the start date should not be set, as doing so will result in an error.", + "format": "date", + "type": "string" + }, + "units": { + "description": "Units of this pricing period. Acceptable values are 0 to 10000000000, inclusive.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "Project": { + "description": "Contains properties of a DoubleClick Planning project.", + "id": "Project", + "properties": { + "accountId": { + "description": "Account ID of this project.", + "format": "int64", + "type": "string" + }, + "advertiserId": { + "description": "Advertiser ID of this project.", + "format": "int64", + "type": "string" + }, + "audienceAgeGroup": { + "description": "Audience age group of this project.", + "enum": [ + "PLANNING_AUDIENCE_AGE_18_24", + "PLANNING_AUDIENCE_AGE_25_34", + "PLANNING_AUDIENCE_AGE_35_44", + "PLANNING_AUDIENCE_AGE_45_54", + "PLANNING_AUDIENCE_AGE_55_64", + "PLANNING_AUDIENCE_AGE_65_OR_MORE", + "PLANNING_AUDIENCE_AGE_UNKNOWN" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "audienceGender": { + "description": "Audience gender of this project.", + "enum": [ + "PLANNING_AUDIENCE_GENDER_FEMALE", + "PLANNING_AUDIENCE_GENDER_MALE" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "budget": { + "description": "Budget of this project in the currency specified by the current account. The value stored in this field represents only the non-fractional amount. For example, for USD, the smallest value that can be represented by this field is 1 US dollar.", + "format": "int64", + "type": "string" + }, + "clientBillingCode": { + "description": "Client billing code of this project.", + "type": "string" + }, + "clientName": { + "description": "Name of the project client.", + "type": "string" + }, + "endDate": { + "description": "End date of the project.", + "format": "date", + "type": "string" + }, + "id": { + "description": "ID of this project. This is a read-only, auto-generated field.", + "format": "int64", + "type": "string" + }, + "kind": { + "default": "dfareporting#project", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#project\".", + "type": "string" + }, + "lastModifiedInfo": { + "$ref": "LastModifiedInfo", + "description": "Information about the most recent modification of this project." + }, + "name": { + "description": "Name of this project.", + "type": "string" + }, + "overview": { + "description": "Overview of this project.", + "type": "string" + }, + "startDate": { + "description": "Start date of the project.", + "format": "date", + "type": "string" + }, + "subaccountId": { + "description": "Subaccount ID of this project.", + "format": "int64", + "type": "string" + }, + "targetClicks": { + "description": "Number of clicks that the advertiser is targeting.", + "format": "int64", + "type": "string" + }, + "targetConversions": { + "description": "Number of conversions that the advertiser is targeting.", + "format": "int64", + "type": "string" + }, + "targetCpaNanos": { + "description": "CPA that the advertiser is targeting.", + "format": "int64", + "type": "string" + }, + "targetCpcNanos": { + "description": "CPC that the advertiser is targeting.", + "format": "int64", + "type": "string" + }, + "targetCpmActiveViewNanos": { + "description": "vCPM from Active View that the advertiser is targeting.", + "format": "int64", + "type": "string" + }, + "targetCpmNanos": { + "description": "CPM that the advertiser is targeting.", + "format": "int64", + "type": "string" + }, + "targetImpressions": { + "description": "Number of impressions that the advertiser is targeting.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "ProjectsListResponse": { + "description": "Project List Response", + "id": "ProjectsListResponse", + "properties": { + "kind": { + "default": "dfareporting#projectsListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#projectsListResponse\".", + "type": "string" + }, + "nextPageToken": { + "description": "Pagination token to be used for the next list operation.", + "type": "string" + }, + "projects": { + "description": "Project collection.", + "items": { + "$ref": "Project" + }, + "type": "array" + } + }, + "type": "object" + }, + "ReachReportCompatibleFields": { + "description": "Represents fields that are compatible to be selected for a report of type \"REACH\".", + "id": "ReachReportCompatibleFields", + "properties": { + "dimensionFilters": { + "description": "Dimensions which are compatible to be selected in the \"dimensionFilters\" section of the report.", + "items": { + "$ref": "Dimension" + }, + "type": "array" + }, + "dimensions": { + "description": "Dimensions which are compatible to be selected in the \"dimensions\" section of the report.", + "items": { + "$ref": "Dimension" + }, + "type": "array" + }, + "kind": { + "default": "dfareporting#reachReportCompatibleFields", + "description": "The kind of resource this is, in this case dfareporting#reachReportCompatibleFields.", + "type": "string" + }, + "metrics": { + "description": "Metrics which are compatible to be selected in the \"metricNames\" section of the report.", + "items": { + "$ref": "Metric" + }, + "type": "array" + }, + "pivotedActivityMetrics": { + "description": "Metrics which are compatible to be selected as activity metrics to pivot on in the \"activities\" section of the report.", + "items": { + "$ref": "Metric" + }, + "type": "array" + }, + "reachByFrequencyMetrics": { + "description": "Metrics which are compatible to be selected in the \"reachByFrequencyMetricNames\" section of the report.", + "items": { + "$ref": "Metric" + }, + "type": "array" + } + }, + "type": "object" + }, + "Recipient": { + "description": "Represents a recipient.", + "id": "Recipient", + "properties": { + "deliveryType": { + "annotations": { + "required": [ + "dfareporting.reports.insert", + "dfareporting.reports.update" + ] + }, + "description": "The delivery type for the recipient.", + "enum": [ + "ATTACHMENT", + "LINK" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "email": { + "annotations": { + "required": [ + "dfareporting.reports.insert", + "dfareporting.reports.update" + ] + }, + "description": "The email address of the recipient.", + "type": "string" + }, + "kind": { + "default": "dfareporting#recipient", + "description": "The kind of resource this is, in this case dfareporting#recipient.", + "type": "string" + } + }, + "type": "object" + }, + "Region": { + "description": "Contains information about a region that can be targeted by ads.", + "id": "Region", + "properties": { + "countryCode": { + "description": "Country code of the country to which this region belongs.", + "type": "string" + }, + "countryDartId": { + "description": "DART ID of the country to which this region belongs.", + "format": "int64", + "type": "string" + }, + "dartId": { + "description": "DART ID of this region.", + "format": "int64", + "type": "string" + }, + "kind": { + "default": "dfareporting#region", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#region\".", + "type": "string" + }, + "name": { + "description": "Name of this region.", + "type": "string" + }, + "regionCode": { + "description": "Region code.", + "type": "string" + } + }, + "type": "object" + }, + "RegionsListResponse": { + "description": "Region List Response", + "id": "RegionsListResponse", + "properties": { + "kind": { + "default": "dfareporting#regionsListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#regionsListResponse\".", + "type": "string" + }, + "regions": { + "description": "Region collection.", + "items": { + "$ref": "Region" + }, + "type": "array" + } + }, + "type": "object" + }, + "RemarketingList": { + "description": "Contains properties of a remarketing list. Remarketing enables you to create lists of users who have performed specific actions on a site, then target ads to members of those lists. This resource can be used to manage remarketing lists that are owned by your advertisers. To see all remarketing lists that are visible to your advertisers, including those that are shared to your advertiser or account, use the TargetableRemarketingLists resource.", + "id": "RemarketingList", + "properties": { + "accountId": { + "description": "Account ID of this remarketing list. This is a read-only, auto-generated field that is only returned in GET requests.", + "format": "int64", + "type": "string" + }, + "active": { + "description": "Whether this remarketing list is active.", + "type": "boolean" + }, + "advertiserId": { + "description": "Dimension value for the advertiser ID that owns this remarketing list. This is a required field.", + "format": "int64", + "type": "string" + }, + "advertiserIdDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of the advertiser. This is a read-only, auto-generated field." + }, + "description": { + "description": "Remarketing list description.", + "type": "string" + }, + "id": { + "description": "Remarketing list ID. This is a read-only, auto-generated field.", + "format": "int64", + "type": "string" + }, + "kind": { + "default": "dfareporting#remarketingList", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#remarketingList\".", + "type": "string" + }, + "lifeSpan": { + "description": "Number of days that a user should remain in the remarketing list without an impression. Acceptable values are 1 to 540, inclusive.", + "format": "int64", + "type": "string" + }, + "listPopulationRule": { + "$ref": "ListPopulationRule", + "description": "Rule used to populate the remarketing list with users." + }, + "listSize": { + "description": "Number of users currently in the list. This is a read-only field.", + "format": "int64", + "type": "string" + }, + "listSource": { + "description": "Product from which this remarketing list was originated.", + "enum": [ + "REMARKETING_LIST_SOURCE_ADX", + "REMARKETING_LIST_SOURCE_DBM", + "REMARKETING_LIST_SOURCE_DFA", + "REMARKETING_LIST_SOURCE_DFP", + "REMARKETING_LIST_SOURCE_DMP", + "REMARKETING_LIST_SOURCE_GA", + "REMARKETING_LIST_SOURCE_GPLUS", + "REMARKETING_LIST_SOURCE_OTHER", + "REMARKETING_LIST_SOURCE_PLAY_STORE", + "REMARKETING_LIST_SOURCE_XFP", + "REMARKETING_LIST_SOURCE_YOUTUBE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "name": { + "description": "Name of the remarketing list. This is a required field. Must be no greater than 128 characters long.", + "type": "string" + }, + "subaccountId": { + "description": "Subaccount ID of this remarketing list. This is a read-only, auto-generated field that is only returned in GET requests.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "RemarketingListShare": { + "description": "Contains properties of a remarketing list's sharing information. Sharing allows other accounts or advertisers to target to your remarketing lists. This resource can be used to manage remarketing list sharing to other accounts and advertisers.", + "id": "RemarketingListShare", + "properties": { + "kind": { + "default": "dfareporting#remarketingListShare", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#remarketingListShare\".", + "type": "string" + }, + "remarketingListId": { + "description": "Remarketing list ID. This is a read-only, auto-generated field.", + "format": "int64", + "type": "string" + }, + "sharedAccountIds": { + "description": "Accounts that the remarketing list is shared with.", + "items": { + "format": "int64", + "type": "string" + }, + "type": "array" + }, + "sharedAdvertiserIds": { + "description": "Advertisers that the remarketing list is shared with.", + "items": { + "format": "int64", + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "RemarketingListsListResponse": { + "description": "Remarketing list response", + "id": "RemarketingListsListResponse", + "properties": { + "kind": { + "default": "dfareporting#remarketingListsListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#remarketingListsListResponse\".", + "type": "string" + }, + "nextPageToken": { + "description": "Pagination token to be used for the next list operation.", + "type": "string" + }, + "remarketingLists": { + "description": "Remarketing list collection.", + "items": { + "$ref": "RemarketingList" + }, + "type": "array" + } + }, + "type": "object" + }, + "Report": { + "description": "Represents a Report resource.", + "id": "Report", + "properties": { + "accountId": { + "annotations": { + "required": [ + "dfareporting.reports.update" + ] + }, + "description": "The account ID to which this report belongs.", + "format": "int64", + "type": "string" + }, + "criteria": { + "description": "The report criteria for a report of type \"STANDARD\".", + "properties": { + "activities": { + "$ref": "Activities", + "description": "Activity group." + }, + "customRichMediaEvents": { + "$ref": "CustomRichMediaEvents", + "description": "Custom Rich Media Events group." + }, + "dateRange": { + "$ref": "DateRange", + "description": "The date range for which this report should be run." + }, + "dimensionFilters": { + "description": "The list of filters on which dimensions are filtered.\nFilters for different dimensions are ANDed, filters for the same dimension are grouped together and ORed.", + "items": { + "$ref": "DimensionValue" + }, + "type": "array" + }, + "dimensions": { + "description": "The list of standard dimensions the report should include.", + "items": { + "$ref": "SortedDimension" + }, + "type": "array" + }, + "metricNames": { + "description": "The list of names of metrics the report should include.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "crossDimensionReachCriteria": { + "description": "The report criteria for a report of type \"CROSS_DIMENSION_REACH\".", + "properties": { + "breakdown": { + "description": "The list of dimensions the report should include.", + "items": { + "$ref": "SortedDimension" + }, + "type": "array" + }, + "dateRange": { + "$ref": "DateRange", + "description": "The date range this report should be run for." + }, + "dimension": { + "description": "The dimension option.", + "enum": [ + "ADVERTISER", + "CAMPAIGN", + "SITE_BY_ADVERTISER", + "SITE_BY_CAMPAIGN" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ], + "type": "string" + }, + "dimensionFilters": { + "description": "The list of filters on which dimensions are filtered.", + "items": { + "$ref": "DimensionValue" + }, + "type": "array" + }, + "metricNames": { + "description": "The list of names of metrics the report should include.", + "items": { + "type": "string" + }, + "type": "array" + }, + "overlapMetricNames": { + "description": "The list of names of overlap metrics the report should include.", + "items": { + "type": "string" + }, + "type": "array" + }, + "pivoted": { + "description": "Whether the report is pivoted or not. Defaults to true.", + "type": "boolean" + } + }, + "type": "object" + }, + "delivery": { + "description": "The report's email delivery settings.", + "properties": { + "emailOwner": { + "description": "Whether the report should be emailed to the report owner.", + "type": "boolean" + }, + "emailOwnerDeliveryType": { + "description": "The type of delivery for the owner to receive, if enabled.", + "enum": [ + "ATTACHMENT", + "LINK" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "message": { + "description": "The message to be sent with each email.", + "type": "string" + }, + "recipients": { + "description": "The list of recipients to which to email the report.", + "items": { + "$ref": "Recipient" + }, + "type": "array" + } + }, + "type": "object" + }, + "etag": { + "description": "The eTag of this response for caching purposes.", + "type": "string" + }, + "fileName": { + "description": "The filename used when generating report files for this report.", + "type": "string" + }, + "floodlightCriteria": { + "description": "The report criteria for a report of type \"FLOODLIGHT\".", + "properties": { + "customRichMediaEvents": { + "description": "The list of custom rich media events to include.", + "items": { + "$ref": "DimensionValue" + }, + "type": "array" + }, + "dateRange": { + "$ref": "DateRange", + "description": "The date range this report should be run for." + }, + "dimensionFilters": { + "description": "The list of filters on which dimensions are filtered.\nFilters for different dimensions are ANDed, filters for the same dimension are grouped together and ORed.", + "items": { + "$ref": "DimensionValue" + }, + "type": "array" + }, + "dimensions": { + "description": "The list of dimensions the report should include.", + "items": { + "$ref": "SortedDimension" + }, + "type": "array" + }, + "floodlightConfigId": { + "$ref": "DimensionValue", + "description": "The floodlight ID for which to show data in this report. All advertisers associated with that ID will automatically be added. The dimension of the value needs to be 'dfa:floodlightConfigId'." + }, + "metricNames": { + "description": "The list of names of metrics the report should include.", + "items": { + "type": "string" + }, + "type": "array" + }, + "reportProperties": { + "description": "The properties of the report.", + "properties": { + "includeAttributedIPConversions": { + "description": "Include conversions that have no cookie, but do have an exposure path.", + "type": "boolean" + }, + "includeUnattributedCookieConversions": { + "description": "Include conversions of users with a DoubleClick cookie but without an exposure. That means the user did not click or see an ad from the advertiser within the Floodlight group, or that the interaction happened outside the lookback window.", + "type": "boolean" + }, + "includeUnattributedIPConversions": { + "description": "Include conversions that have no associated cookies and no exposures. It’s therefore impossible to know how the user was exposed to your ads during the lookback window prior to a conversion.", + "type": "boolean" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "format": { + "description": "The output format of the report. If not specified, default format is \"CSV\". Note that the actual format in the completed report file might differ if for instance the report's size exceeds the format's capabilities. \"CSV\" will then be the fallback format.", + "enum": [ + "CSV", + "EXCEL" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "id": { + "annotations": { + "required": [ + "dfareporting.reports.update" + ] + }, + "description": "The unique ID identifying this report resource.", + "format": "int64", + "type": "string" + }, + "kind": { + "default": "dfareporting#report", + "description": "The kind of resource this is, in this case dfareporting#report.", + "type": "string" + }, + "lastModifiedTime": { + "annotations": { + "required": [ + "dfareporting.reports.update" + ] + }, + "description": "The timestamp (in milliseconds since epoch) of when this report was last modified.", + "format": "uint64", + "type": "string" + }, + "name": { + "annotations": { + "required": [ + "dfareporting.reports.insert", + "dfareporting.reports.update" + ] + }, + "description": "The name of the report.", + "type": "string" + }, + "ownerProfileId": { + "annotations": { + "required": [ + "dfareporting.reports.update" + ] + }, + "description": "The user profile id of the owner of this report.", + "format": "int64", + "type": "string" + }, + "pathToConversionCriteria": { + "description": "The report criteria for a report of type \"PATH_TO_CONVERSION\".", + "properties": { + "activityFilters": { + "description": "The list of 'dfa:activity' values to filter on.", + "items": { + "$ref": "DimensionValue" + }, + "type": "array" + }, + "conversionDimensions": { + "description": "The list of conversion dimensions the report should include.", + "items": { + "$ref": "SortedDimension" + }, + "type": "array" + }, + "customFloodlightVariables": { + "description": "The list of custom floodlight variables the report should include.", + "items": { + "$ref": "SortedDimension" + }, + "type": "array" + }, + "customRichMediaEvents": { + "description": "The list of custom rich media events to include.", + "items": { + "$ref": "DimensionValue" + }, + "type": "array" + }, + "dateRange": { + "$ref": "DateRange", + "description": "The date range this report should be run for." + }, + "floodlightConfigId": { + "$ref": "DimensionValue", + "description": "The floodlight ID for which to show data in this report. All advertisers associated with that ID will automatically be added. The dimension of the value needs to be 'dfa:floodlightConfigId'." + }, + "metricNames": { + "description": "The list of names of metrics the report should include.", + "items": { + "type": "string" + }, + "type": "array" + }, + "perInteractionDimensions": { + "description": "The list of per interaction dimensions the report should include.", + "items": { + "$ref": "SortedDimension" + }, + "type": "array" + }, + "reportProperties": { + "description": "The properties of the report.", + "properties": { + "clicksLookbackWindow": { + "description": "DFA checks to see if a click interaction occurred within the specified period of time before a conversion. By default the value is pulled from Floodlight or you can manually enter a custom value. Valid values: 1-90.", + "format": "int32", + "type": "integer" + }, + "impressionsLookbackWindow": { + "description": "DFA checks to see if an impression interaction occurred within the specified period of time before a conversion. By default the value is pulled from Floodlight or you can manually enter a custom value. Valid values: 1-90.", + "format": "int32", + "type": "integer" + }, + "includeAttributedIPConversions": { + "description": "Deprecated: has no effect.", + "type": "boolean" + }, + "includeUnattributedCookieConversions": { + "description": "Include conversions of users with a DoubleClick cookie but without an exposure. That means the user did not click or see an ad from the advertiser within the Floodlight group, or that the interaction happened outside the lookback window.", + "type": "boolean" + }, + "includeUnattributedIPConversions": { + "description": "Include conversions that have no associated cookies and no exposures. It’s therefore impossible to know how the user was exposed to your ads during the lookback window prior to a conversion.", + "type": "boolean" + }, + "maximumClickInteractions": { + "description": "The maximum number of click interactions to include in the report. Advertisers currently paying for E2C reports get up to 200 (100 clicks, 100 impressions). If another advertiser in your network is paying for E2C, you can have up to 5 total exposures per report.", + "format": "int32", + "type": "integer" + }, + "maximumImpressionInteractions": { + "description": "The maximum number of click interactions to include in the report. Advertisers currently paying for E2C reports get up to 200 (100 clicks, 100 impressions). If another advertiser in your network is paying for E2C, you can have up to 5 total exposures per report.", + "format": "int32", + "type": "integer" + }, + "maximumInteractionGap": { + "description": "The maximum amount of time that can take place between interactions (clicks or impressions) by the same user. Valid values: 1-90.", + "format": "int32", + "type": "integer" + }, + "pivotOnInteractionPath": { + "description": "Enable pivoting on interaction path.", + "type": "boolean" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "reachCriteria": { + "description": "The report criteria for a report of type \"REACH\".", + "properties": { + "activities": { + "$ref": "Activities", + "description": "Activity group." + }, + "customRichMediaEvents": { + "$ref": "CustomRichMediaEvents", + "description": "Custom Rich Media Events group." + }, + "dateRange": { + "$ref": "DateRange", + "description": "The date range this report should be run for." + }, + "dimensionFilters": { + "description": "The list of filters on which dimensions are filtered.\nFilters for different dimensions are ANDed, filters for the same dimension are grouped together and ORed.", + "items": { + "$ref": "DimensionValue" + }, + "type": "array" + }, + "dimensions": { + "description": "The list of dimensions the report should include.", + "items": { + "$ref": "SortedDimension" + }, + "type": "array" + }, + "enableAllDimensionCombinations": { + "description": "Whether to enable all reach dimension combinations in the report. Defaults to false. If enabled, the date range of the report should be within the last 42 days.", + "type": "boolean" + }, + "metricNames": { + "description": "The list of names of metrics the report should include.", + "items": { + "type": "string" + }, + "type": "array" + }, + "reachByFrequencyMetricNames": { + "description": "The list of names of Reach By Frequency metrics the report should include.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "schedule": { + "description": "The report's schedule. Can only be set if the report's 'dateRange' is a relative date range and the relative date range is not \"TODAY\".", + "properties": { + "active": { + "annotations": { + "required": [ + "dfareporting.reports.insert", + "dfareporting.reports.update" + ] + }, + "description": "Whether the schedule is active or not. Must be set to either true or false.", + "type": "boolean" + }, + "every": { + "description": "Defines every how many days, weeks or months the report should be run. Needs to be set when \"repeats\" is either \"DAILY\", \"WEEKLY\" or \"MONTHLY\".", + "format": "int32", + "type": "integer" + }, + "expirationDate": { + "annotations": { + "required": [ + "dfareporting.reports.insert", + "dfareporting.reports.update" + ] + }, + "description": "The expiration date when the scheduled report stops running.", + "format": "date", + "type": "string" + }, + "repeats": { + "annotations": { + "required": [ + "dfareporting.reports.insert", + "dfareporting.reports.update" + ] + }, + "description": "The interval for which the report is repeated. Note: \n- \"DAILY\" also requires field \"every\" to be set. \n- \"WEEKLY\" also requires fields \"every\" and \"repeatsOnWeekDays\" to be set. \n- \"MONTHLY\" also requires fields \"every\" and \"runsOnDayOfMonth\" to be set.", + "type": "string" + }, + "repeatsOnWeekDays": { + "description": "List of week days \"WEEKLY\" on which scheduled reports should run.", + "items": { + "enum": [ + "FRIDAY", + "MONDAY", + "SATURDAY", + "SUNDAY", + "THURSDAY", + "TUESDAY", + "WEDNESDAY" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "type": "array" + }, + "runsOnDayOfMonth": { + "description": "Enum to define for \"MONTHLY\" scheduled reports whether reports should be repeated on the same day of the month as \"startDate\" or the same day of the week of the month.\nExample: If 'startDate' is Monday, April 2nd 2012 (2012-04-02), \"DAY_OF_MONTH\" would run subsequent reports on the 2nd of every Month, and \"WEEK_OF_MONTH\" would run subsequent reports on the first Monday of the month.", + "enum": [ + "DAY_OF_MONTH", + "WEEK_OF_MONTH" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "startDate": { + "annotations": { + "required": [ + "dfareporting.reports.insert", + "dfareporting.reports.update" + ] + }, + "description": "Start date of date range for which scheduled reports should be run.", + "format": "date", + "type": "string" + } + }, + "type": "object" + }, + "subAccountId": { + "description": "The subaccount ID to which this report belongs if applicable.", + "format": "int64", + "type": "string" + }, + "type": { + "annotations": { + "required": [ + "dfareporting.reports.insert", + "dfareporting.reports.update" + ] + }, + "description": "The type of the report.", + "enum": [ + "CROSS_DIMENSION_REACH", + "FLOODLIGHT", + "PATH_TO_CONVERSION", + "REACH", + "STANDARD" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "ReportCompatibleFields": { + "description": "Represents fields that are compatible to be selected for a report of type \"STANDARD\".", + "id": "ReportCompatibleFields", + "properties": { + "dimensionFilters": { + "description": "Dimensions which are compatible to be selected in the \"dimensionFilters\" section of the report.", + "items": { + "$ref": "Dimension" + }, + "type": "array" + }, + "dimensions": { + "description": "Dimensions which are compatible to be selected in the \"dimensions\" section of the report.", + "items": { + "$ref": "Dimension" + }, + "type": "array" + }, + "kind": { + "default": "dfareporting#reportCompatibleFields", + "description": "The kind of resource this is, in this case dfareporting#reportCompatibleFields.", + "type": "string" + }, + "metrics": { + "description": "Metrics which are compatible to be selected in the \"metricNames\" section of the report.", + "items": { + "$ref": "Metric" + }, + "type": "array" + }, + "pivotedActivityMetrics": { + "description": "Metrics which are compatible to be selected as activity metrics to pivot on in the \"activities\" section of the report.", + "items": { + "$ref": "Metric" + }, + "type": "array" + } + }, + "type": "object" + }, + "ReportList": { + "description": "Represents the list of reports.", + "id": "ReportList", + "properties": { + "etag": { + "description": "The eTag of this response for caching purposes.", + "type": "string" + }, + "items": { + "description": "The reports returned in this response.", + "items": { + "$ref": "Report" + }, + "type": "array" + }, + "kind": { + "default": "dfareporting#reportList", + "description": "The kind of list this is, in this case dfareporting#reportList.", + "type": "string" + }, + "nextPageToken": { + "description": "Continuation token used to page through reports. To retrieve the next page of results, set the next request's \"pageToken\" to the value of this field. The page token is only valid for a limited amount of time and should not be persisted.", + "type": "string" + } + }, + "type": "object" + }, + "ReportsConfiguration": { + "description": "Reporting Configuration", + "id": "ReportsConfiguration", + "properties": { + "exposureToConversionEnabled": { + "description": "Whether the exposure to conversion report is enabled. This report shows detailed pathway information on up to 10 of the most recent ad exposures seen by a user before converting.", + "type": "boolean" + }, + "lookbackConfiguration": { + "$ref": "LookbackConfiguration", + "description": "Default lookback windows for new advertisers in this account." + }, + "reportGenerationTimeZoneId": { + "description": "Report generation time zone ID of this account. This is a required field that can only be changed by a superuser.\nAcceptable values are:\n\n- \"1\" for \"America/New_York\" \n- \"2\" for \"Europe/London\" \n- \"3\" for \"Europe/Paris\" \n- \"4\" for \"Africa/Johannesburg\" \n- \"5\" for \"Asia/Jerusalem\" \n- \"6\" for \"Asia/Shanghai\" \n- \"7\" for \"Asia/Hong_Kong\" \n- \"8\" for \"Asia/Tokyo\" \n- \"9\" for \"Australia/Sydney\" \n- \"10\" for \"Asia/Dubai\" \n- \"11\" for \"America/Los_Angeles\" \n- \"12\" for \"Pacific/Auckland\" \n- \"13\" for \"America/Sao_Paulo\"", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "RichMediaExitOverride": { + "description": "Rich Media Exit Override.", + "id": "RichMediaExitOverride", + "properties": { + "clickThroughUrl": { + "$ref": "ClickThroughUrl", + "description": "Click-through URL of this rich media exit override. Applicable if the enabled field is set to true." + }, + "enabled": { + "description": "Whether to use the clickThroughUrl. If false, the creative-level exit will be used.", + "type": "boolean" + }, + "exitId": { + "description": "ID for the override to refer to a specific exit in the creative.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "Rule": { + "description": "A rule associates an asset with a targeting template for asset-level targeting. Applicable to INSTREAM_VIDEO creatives.", + "id": "Rule", + "properties": { + "assetId": { + "description": "A creativeAssets[].id. This should refer to one of the parent assets in this creative. This is a required field.", + "format": "int64", + "type": "string" + }, + "name": { + "description": "A user-friendly name for this rule. This is a required field.", + "type": "string" + }, + "targetingTemplateId": { + "description": "A targeting template ID. The targeting from the targeting template will be used to determine whether this asset should be served. This is a required field.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "Site": { + "description": "Contains properties of a site.", + "id": "Site", + "properties": { + "accountId": { + "description": "Account ID of this site. This is a read-only field that can be left blank.", + "format": "int64", + "type": "string" + }, + "approved": { + "description": "Whether this site is approved.", + "type": "boolean" + }, + "directorySiteId": { + "description": "Directory site associated with this site. This is a required field that is read-only after insertion.", + "format": "int64", + "type": "string" + }, + "directorySiteIdDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of the directory site. This is a read-only, auto-generated field." + }, + "id": { + "description": "ID of this site. This is a read-only, auto-generated field.", + "format": "int64", + "type": "string" + }, + "idDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of this site. This is a read-only, auto-generated field." + }, + "keyName": { + "description": "Key name of this site. This is a read-only, auto-generated field.", + "type": "string" + }, + "kind": { + "default": "dfareporting#site", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#site\".", + "type": "string" + }, + "name": { + "description": "Name of this site.This is a required field. Must be less than 128 characters long. If this site is under a subaccount, the name must be unique among sites of the same subaccount. Otherwise, this site is a top-level site, and the name must be unique among top-level sites of the same account.", + "type": "string" + }, + "siteContacts": { + "description": "Site contacts.", + "items": { + "$ref": "SiteContact" + }, + "type": "array" + }, + "siteSettings": { + "$ref": "SiteSettings", + "description": "Site-wide settings." + }, + "subaccountId": { + "description": "Subaccount ID of this site. This is a read-only field that can be left blank.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "SiteContact": { + "description": "Site Contact", + "id": "SiteContact", + "properties": { + "address": { + "description": "Address of this site contact.", + "type": "string" + }, + "contactType": { + "description": "Site contact type.", + "enum": [ + "SALES_PERSON", + "TRAFFICKER" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "email": { + "description": "Email address of this site contact. This is a required field.", + "type": "string" + }, + "firstName": { + "description": "First name of this site contact.", + "type": "string" + }, + "id": { + "description": "ID of this site contact. This is a read-only, auto-generated field.", + "format": "int64", + "type": "string" + }, + "lastName": { + "description": "Last name of this site contact.", + "type": "string" + }, + "phone": { + "description": "Primary phone number of this site contact.", + "type": "string" + }, + "title": { + "description": "Title or designation of this site contact.", + "type": "string" + } + }, + "type": "object" + }, + "SiteSettings": { + "description": "Site Settings", + "id": "SiteSettings", + "properties": { + "activeViewOptOut": { + "description": "Whether active view creatives are disabled for this site.", + "type": "boolean" + }, + "adBlockingOptOut": { + "description": "Whether this site opts out of ad blocking. When true, ad blocking is disabled for all placements under the site, regardless of the individual placement settings. When false, the campaign and placement settings take effect.", + "type": "boolean" + }, + "creativeSettings": { + "$ref": "CreativeSettings", + "description": "Site-wide creative settings." + }, + "disableNewCookie": { + "description": "Whether new cookies are disabled for this site.", + "type": "boolean" + }, + "lookbackConfiguration": { + "$ref": "LookbackConfiguration", + "description": "Lookback window settings for this site." + }, + "tagSetting": { + "$ref": "TagSetting", + "description": "Configuration settings for dynamic and image floodlight tags." + }, + "videoActiveViewOptOutTemplate": { + "description": "Whether Verification and ActiveView for in-stream video creatives are disabled by default for new placements created under this site. This value will be used to populate the placement.videoActiveViewOptOut field, when no value is specified for the new placement.", + "type": "boolean" + }, + "vpaidAdapterChoiceTemplate": { + "description": "Default VPAID adapter setting for new placements created under this site. This value will be used to populate the placements.vpaidAdapterChoice field, when no value is specified for the new placement. Controls which VPAID format the measurement adapter will use for in-stream video creatives assigned to the placement. The publisher's specifications will typically determine this setting. For VPAID creatives, the adapter format will match the VPAID format (HTML5 VPAID creatives use the HTML5 adapter).\n\nNote: Flash is no longer supported. This field now defaults to HTML5 when the following values are provided: FLASH, BOTH.", + "enum": [ + "BOTH", + "DEFAULT", + "FLASH", + "HTML5" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "SitesListResponse": { + "description": "Site List Response", + "id": "SitesListResponse", + "properties": { + "kind": { + "default": "dfareporting#sitesListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#sitesListResponse\".", + "type": "string" + }, + "nextPageToken": { + "description": "Pagination token to be used for the next list operation.", + "type": "string" + }, + "sites": { + "description": "Site collection.", + "items": { + "$ref": "Site" + }, + "type": "array" + } + }, + "type": "object" + }, + "Size": { + "description": "Represents the dimensions of ads, placements, creatives, or creative assets.", + "id": "Size", + "properties": { + "height": { + "description": "Height of this size. Acceptable values are 0 to 32767, inclusive.", + "format": "int32", + "type": "integer" + }, + "iab": { + "description": "IAB standard size. This is a read-only, auto-generated field.", + "type": "boolean" + }, + "id": { + "description": "ID of this size. This is a read-only, auto-generated field.", + "format": "int64", + "type": "string" + }, + "kind": { + "default": "dfareporting#size", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#size\".", + "type": "string" + }, + "width": { + "description": "Width of this size. Acceptable values are 0 to 32767, inclusive.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "SizesListResponse": { + "description": "Size List Response", + "id": "SizesListResponse", + "properties": { + "kind": { + "default": "dfareporting#sizesListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#sizesListResponse\".", + "type": "string" + }, + "sizes": { + "description": "Size collection.", + "items": { + "$ref": "Size" + }, + "type": "array" + } + }, + "type": "object" + }, + "SkippableSetting": { + "description": "Skippable Settings", + "id": "SkippableSetting", + "properties": { + "kind": { + "default": "dfareporting#skippableSetting", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#skippableSetting\".", + "type": "string" + }, + "progressOffset": { + "$ref": "VideoOffset", + "description": "Amount of time to play videos served to this placement before counting a view. Applicable when skippable is true." + }, + "skipOffset": { + "$ref": "VideoOffset", + "description": "Amount of time to play videos served to this placement before the skip button should appear. Applicable when skippable is true." + }, + "skippable": { + "description": "Whether the user can skip creatives served to this placement.", + "type": "boolean" + } + }, + "type": "object" + }, + "SortedDimension": { + "description": "Represents a sorted dimension.", + "id": "SortedDimension", + "properties": { + "kind": { + "default": "dfareporting#sortedDimension", + "description": "The kind of resource this is, in this case dfareporting#sortedDimension.", + "type": "string" + }, + "name": { + "description": "The name of the dimension.", + "type": "string" }, "sortOrder": { - "type": "string", - "description": "Order of sorted results.", - "default": "DESCENDING", - "enum": [ - "ASCENDING", - "DESCENDING" - ], - "enumDescriptions": [ - "Ascending order.", - "Descending order." - ], - "location": "query" + "description": "An optional sort order for the dimension column.", + "enum": [ + "ASCENDING", + "DESCENDING" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" } - }, - "parameterOrder": [ - "profileId", - "reportId" - ], - "response": { - "$ref": "FileList" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfareporting" - ] - } - } + }, + "type": "object" + }, + "Subaccount": { + "description": "Contains properties of a DCM subaccount.", + "id": "Subaccount", + "properties": { + "accountId": { + "description": "ID of the account that contains this subaccount. This is a read-only field that can be left blank.", + "format": "int64", + "type": "string" + }, + "availablePermissionIds": { + "description": "IDs of the available user role permissions for this subaccount.", + "items": { + "format": "int64", + "type": "string" + }, + "type": "array" + }, + "id": { + "description": "ID of this subaccount. This is a read-only, auto-generated field.", + "format": "int64", + "type": "string" + }, + "kind": { + "default": "dfareporting#subaccount", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#subaccount\".", + "type": "string" + }, + "name": { + "description": "Name of this subaccount. This is a required field. Must be less than 128 characters long and be unique among subaccounts of the same account.", + "type": "string" + } + }, + "type": "object" + }, + "SubaccountsListResponse": { + "description": "Subaccount List Response", + "id": "SubaccountsListResponse", + "properties": { + "kind": { + "default": "dfareporting#subaccountsListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#subaccountsListResponse\".", + "type": "string" + }, + "nextPageToken": { + "description": "Pagination token to be used for the next list operation.", + "type": "string" + }, + "subaccounts": { + "description": "Subaccount collection.", + "items": { + "$ref": "Subaccount" + }, + "type": "array" + } + }, + "type": "object" + }, + "TagData": { + "description": "Placement Tag Data", + "id": "TagData", + "properties": { + "adId": { + "description": "Ad associated with this placement tag. Applicable only when format is PLACEMENT_TAG_TRACKING.", + "format": "int64", + "type": "string" + }, + "clickTag": { + "description": "Tag string to record a click.", + "type": "string" + }, + "creativeId": { + "description": "Creative associated with this placement tag. Applicable only when format is PLACEMENT_TAG_TRACKING.", + "format": "int64", + "type": "string" + }, + "format": { + "description": "TagData tag format of this tag.", + "enum": [ + "PLACEMENT_TAG_CLICK_COMMANDS", + "PLACEMENT_TAG_IFRAME_ILAYER", + "PLACEMENT_TAG_IFRAME_JAVASCRIPT", + "PLACEMENT_TAG_IFRAME_JAVASCRIPT_LEGACY", + "PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH", + "PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH_VAST_3", + "PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH_VAST_4", + "PLACEMENT_TAG_INTERNAL_REDIRECT", + "PLACEMENT_TAG_INTERSTITIAL_IFRAME_JAVASCRIPT", + "PLACEMENT_TAG_INTERSTITIAL_IFRAME_JAVASCRIPT_LEGACY", + "PLACEMENT_TAG_INTERSTITIAL_INTERNAL_REDIRECT", + "PLACEMENT_TAG_INTERSTITIAL_JAVASCRIPT", + "PLACEMENT_TAG_INTERSTITIAL_JAVASCRIPT_LEGACY", + "PLACEMENT_TAG_JAVASCRIPT", + "PLACEMENT_TAG_JAVASCRIPT_LEGACY", + "PLACEMENT_TAG_STANDARD", + "PLACEMENT_TAG_TRACKING", + "PLACEMENT_TAG_TRACKING_IFRAME", + "PLACEMENT_TAG_TRACKING_JAVASCRIPT" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "impressionTag": { + "description": "Tag string for serving an ad.", + "type": "string" + } + }, + "type": "object" + }, + "TagSetting": { + "description": "Tag Settings", + "id": "TagSetting", + "properties": { + "additionalKeyValues": { + "description": "Additional key-values to be included in tags. Each key-value pair must be of the form key=value, and pairs must be separated by a semicolon (;). Keys and values must not contain commas. For example, id=2;color=red is a valid value for this field.", + "type": "string" + }, + "includeClickThroughUrls": { + "description": "Whether static landing page URLs should be included in the tags. This setting applies only to placements.", + "type": "boolean" + }, + "includeClickTracking": { + "description": "Whether click-tracking string should be included in the tags.", + "type": "boolean" + }, + "keywordOption": { + "description": "Option specifying how keywords are embedded in ad tags. This setting can be used to specify whether keyword placeholders are inserted in placement tags for this site. Publishers can then add keywords to those placeholders.", + "enum": [ + "GENERATE_SEPARATE_TAG_FOR_EACH_KEYWORD", + "IGNORE", + "PLACEHOLDER_WITH_LIST_OF_KEYWORDS" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "TagSettings": { + "description": "Dynamic and Image Tag Settings.", + "id": "TagSettings", + "properties": { + "dynamicTagEnabled": { + "description": "Whether dynamic floodlight tags are enabled.", + "type": "boolean" + }, + "imageTagEnabled": { + "description": "Whether image tags are enabled.", + "type": "boolean" + } + }, + "type": "object" + }, + "TargetWindow": { + "description": "Target Window.", + "id": "TargetWindow", + "properties": { + "customHtml": { + "description": "User-entered value.", + "type": "string" + }, + "targetWindowOption": { + "description": "Type of browser window for which the backup image of the flash creative can be displayed.", + "enum": [ + "CURRENT_WINDOW", + "CUSTOM", + "NEW_WINDOW" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "TargetableRemarketingList": { + "description": "Contains properties of a targetable remarketing list. Remarketing enables you to create lists of users who have performed specific actions on a site, then target ads to members of those lists. This resource is a read-only view of a remarketing list to be used to faciliate targeting ads to specific lists. Remarketing lists that are owned by your advertisers and those that are shared to your advertisers or account are accessible via this resource. To manage remarketing lists that are owned by your advertisers, use the RemarketingLists resource.", + "id": "TargetableRemarketingList", + "properties": { + "accountId": { + "description": "Account ID of this remarketing list. This is a read-only, auto-generated field that is only returned in GET requests.", + "format": "int64", + "type": "string" + }, + "active": { + "description": "Whether this targetable remarketing list is active.", + "type": "boolean" + }, + "advertiserId": { + "description": "Dimension value for the advertiser ID that owns this targetable remarketing list.", + "format": "int64", + "type": "string" + }, + "advertiserIdDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of the advertiser." + }, + "description": { + "description": "Targetable remarketing list description.", + "type": "string" + }, + "id": { + "description": "Targetable remarketing list ID.", + "format": "int64", + "type": "string" + }, + "kind": { + "default": "dfareporting#targetableRemarketingList", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#targetableRemarketingList\".", + "type": "string" + }, + "lifeSpan": { + "description": "Number of days that a user should remain in the targetable remarketing list without an impression.", + "format": "int64", + "type": "string" + }, + "listSize": { + "description": "Number of users currently in the list. This is a read-only field.", + "format": "int64", + "type": "string" + }, + "listSource": { + "description": "Product from which this targetable remarketing list was originated.", + "enum": [ + "REMARKETING_LIST_SOURCE_ADX", + "REMARKETING_LIST_SOURCE_DBM", + "REMARKETING_LIST_SOURCE_DFA", + "REMARKETING_LIST_SOURCE_DFP", + "REMARKETING_LIST_SOURCE_DMP", + "REMARKETING_LIST_SOURCE_GA", + "REMARKETING_LIST_SOURCE_GPLUS", + "REMARKETING_LIST_SOURCE_OTHER", + "REMARKETING_LIST_SOURCE_PLAY_STORE", + "REMARKETING_LIST_SOURCE_XFP", + "REMARKETING_LIST_SOURCE_YOUTUBE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "name": { + "description": "Name of the targetable remarketing list. Is no greater than 128 characters long.", + "type": "string" + }, + "subaccountId": { + "description": "Subaccount ID of this remarketing list. This is a read-only, auto-generated field that is only returned in GET requests.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "TargetableRemarketingListsListResponse": { + "description": "Targetable remarketing list response", + "id": "TargetableRemarketingListsListResponse", + "properties": { + "kind": { + "default": "dfareporting#targetableRemarketingListsListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#targetableRemarketingListsListResponse\".", + "type": "string" + }, + "nextPageToken": { + "description": "Pagination token to be used for the next list operation.", + "type": "string" + }, + "targetableRemarketingLists": { + "description": "Targetable remarketing list collection.", + "items": { + "$ref": "TargetableRemarketingList" + }, + "type": "array" + } + }, + "type": "object" + }, + "TargetingTemplate": { + "description": "Contains properties of a targeting template. A targeting template encapsulates targeting information which can be reused across multiple ads.", + "id": "TargetingTemplate", + "properties": { + "accountId": { + "description": "Account ID of this targeting template. This field, if left unset, will be auto-generated on insert and is read-only after insert.", + "format": "int64", + "type": "string" + }, + "advertiserId": { + "description": "Advertiser ID of this targeting template. This is a required field on insert and is read-only after insert.", + "format": "int64", + "type": "string" + }, + "advertiserIdDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of the advertiser. This is a read-only, auto-generated field." + }, + "dayPartTargeting": { + "$ref": "DayPartTargeting", + "description": "Time and day targeting criteria." + }, + "geoTargeting": { + "$ref": "GeoTargeting", + "description": "Geographical targeting criteria." + }, + "id": { + "description": "ID of this targeting template. This is a read-only, auto-generated field.", + "format": "int64", + "type": "string" + }, + "keyValueTargetingExpression": { + "$ref": "KeyValueTargetingExpression", + "description": "Key-value targeting criteria." + }, + "kind": { + "default": "dfareporting#targetingTemplate", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#targetingTemplate\".", + "type": "string" + }, + "languageTargeting": { + "$ref": "LanguageTargeting", + "description": "Language targeting criteria." + }, + "listTargetingExpression": { + "$ref": "ListTargetingExpression", + "description": "Remarketing list targeting criteria." + }, + "name": { + "description": "Name of this targeting template. This field is required. It must be less than 256 characters long and unique within an advertiser.", + "type": "string" + }, + "subaccountId": { + "description": "Subaccount ID of this targeting template. This field, if left unset, will be auto-generated on insert and is read-only after insert.", + "format": "int64", + "type": "string" + }, + "technologyTargeting": { + "$ref": "TechnologyTargeting", + "description": "Technology platform targeting criteria." + } + }, + "type": "object" + }, + "TargetingTemplatesListResponse": { + "description": "Targeting Template List Response", + "id": "TargetingTemplatesListResponse", + "properties": { + "kind": { + "default": "dfareporting#targetingTemplatesListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#targetingTemplatesListResponse\".", + "type": "string" + }, + "nextPageToken": { + "description": "Pagination token to be used for the next list operation.", + "type": "string" + }, + "targetingTemplates": { + "description": "Targeting template collection.", + "items": { + "$ref": "TargetingTemplate" + }, + "type": "array" + } + }, + "type": "object" + }, + "TechnologyTargeting": { + "description": "Technology Targeting.", + "id": "TechnologyTargeting", + "properties": { + "browsers": { + "description": "Browsers that this ad targets. For each browser either set browserVersionId or dartId along with the version numbers. If both are specified, only browserVersionId will be used. The other fields are populated automatically when the ad is inserted or updated.", + "items": { + "$ref": "Browser" + }, + "type": "array" + }, + "connectionTypes": { + "description": "Connection types that this ad targets. For each connection type only id is required. The other fields are populated automatically when the ad is inserted or updated.", + "items": { + "$ref": "ConnectionType" + }, + "type": "array" + }, + "mobileCarriers": { + "description": "Mobile carriers that this ad targets. For each mobile carrier only id is required, and the other fields are populated automatically when the ad is inserted or updated. If targeting a mobile carrier, do not set targeting for any zip codes.", + "items": { + "$ref": "MobileCarrier" + }, + "type": "array" + }, + "operatingSystemVersions": { + "description": "Operating system versions that this ad targets. To target all versions, use operatingSystems. For each operating system version, only id is required. The other fields are populated automatically when the ad is inserted or updated. If targeting an operating system version, do not set targeting for the corresponding operating system in operatingSystems.", + "items": { + "$ref": "OperatingSystemVersion" + }, + "type": "array" + }, + "operatingSystems": { + "description": "Operating systems that this ad targets. To target specific versions, use operatingSystemVersions. For each operating system only dartId is required. The other fields are populated automatically when the ad is inserted or updated. If targeting an operating system, do not set targeting for operating system versions for the same operating system.", + "items": { + "$ref": "OperatingSystem" + }, + "type": "array" + }, + "platformTypes": { + "description": "Platform types that this ad targets. For example, desktop, mobile, or tablet. For each platform type, only id is required, and the other fields are populated automatically when the ad is inserted or updated.", + "items": { + "$ref": "PlatformType" + }, + "type": "array" + } + }, + "type": "object" + }, + "ThirdPartyAuthenticationToken": { + "description": "Third Party Authentication Token", + "id": "ThirdPartyAuthenticationToken", + "properties": { + "name": { + "description": "Name of the third-party authentication token.", + "type": "string" + }, + "value": { + "description": "Value of the third-party authentication token. This is a read-only, auto-generated field.", + "type": "string" + } + }, + "type": "object" + }, + "ThirdPartyTrackingUrl": { + "description": "Third-party Tracking URL.", + "id": "ThirdPartyTrackingUrl", + "properties": { + "thirdPartyUrlType": { + "description": "Third-party URL type for in-stream video creatives.", + "enum": [ + "CLICK_TRACKING", + "IMPRESSION", + "RICH_MEDIA_BACKUP_IMPRESSION", + "RICH_MEDIA_IMPRESSION", + "RICH_MEDIA_RM_IMPRESSION", + "SURVEY", + "VIDEO_COMPLETE", + "VIDEO_CUSTOM", + "VIDEO_FIRST_QUARTILE", + "VIDEO_FULLSCREEN", + "VIDEO_MIDPOINT", + "VIDEO_MUTE", + "VIDEO_PAUSE", + "VIDEO_PROGRESS", + "VIDEO_REWIND", + "VIDEO_SKIP", + "VIDEO_START", + "VIDEO_STOP", + "VIDEO_THIRD_QUARTILE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "url": { + "description": "URL for the specified third-party URL type.", + "type": "string" + } + }, + "type": "object" + }, + "TranscodeSetting": { + "description": "Transcode Settings", + "id": "TranscodeSetting", + "properties": { + "enabledVideoFormats": { + "description": "Whitelist of video formats to be served to this placement. Set this list to null or empty to serve all video formats.", + "items": { + "format": "int32", + "type": "integer" + }, + "type": "array" + }, + "kind": { + "default": "dfareporting#transcodeSetting", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#transcodeSetting\".", + "type": "string" + } + }, + "type": "object" + }, + "UniversalAdId": { + "description": "A Universal Ad ID as per the VAST 4.0 spec. Applicable to the following creative types: INSTREAM_VIDEO and VPAID.", + "id": "UniversalAdId", + "properties": { + "registry": { + "description": "Registry used for the Ad ID value.", + "enum": [ + "AD_ID.ORG", + "CLEARCAST", + "DCM", + "OTHER" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ], + "type": "string" + }, + "value": { + "description": "ID value for this creative. Only alphanumeric characters and the following symbols are valid: \"_/\\-\". Maximum length is 64 characters. Read only when registry is DCM.", + "type": "string" + } + }, + "type": "object" + }, + "UserDefinedVariableConfiguration": { + "description": "User Defined Variable configuration.", + "id": "UserDefinedVariableConfiguration", + "properties": { + "dataType": { + "description": "Data type for the variable. This is a required field.", + "enum": [ + "NUMBER", + "STRING" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "reportName": { + "description": "User-friendly name for the variable which will appear in reports. This is a required field, must be less than 64 characters long, and cannot contain the following characters: \"\"\u003c\u003e\".", + "type": "string" + }, + "variableType": { + "description": "Variable name in the tag. This is a required field.", + "enum": [ + "U1", + "U10", + "U100", + "U11", + "U12", + "U13", + "U14", + "U15", + "U16", + "U17", + "U18", + "U19", + "U2", + "U20", + "U21", + "U22", + "U23", + "U24", + "U25", + "U26", + "U27", + "U28", + "U29", + "U3", + "U30", + "U31", + "U32", + "U33", + "U34", + "U35", + "U36", + "U37", + "U38", + "U39", + "U4", + "U40", + "U41", + "U42", + "U43", + "U44", + "U45", + "U46", + "U47", + "U48", + "U49", + "U5", + "U50", + "U51", + "U52", + "U53", + "U54", + "U55", + "U56", + "U57", + "U58", + "U59", + "U6", + "U60", + "U61", + "U62", + "U63", + "U64", + "U65", + "U66", + "U67", + "U68", + "U69", + "U7", + "U70", + "U71", + "U72", + "U73", + "U74", + "U75", + "U76", + "U77", + "U78", + "U79", + "U8", + "U80", + "U81", + "U82", + "U83", + "U84", + "U85", + "U86", + "U87", + "U88", + "U89", + "U9", + "U90", + "U91", + "U92", + "U93", + "U94", + "U95", + "U96", + "U97", + "U98", + "U99" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "UserProfile": { + "description": "Represents a UserProfile resource.", + "id": "UserProfile", + "properties": { + "accountId": { + "description": "The account ID to which this profile belongs.", + "format": "int64", + "type": "string" + }, + "accountName": { + "description": "The account name this profile belongs to.", + "type": "string" + }, + "etag": { + "description": "The eTag of this response for caching purposes.", + "type": "string" + }, + "kind": { + "default": "dfareporting#userProfile", + "description": "The kind of resource this is, in this case dfareporting#userProfile.", + "type": "string" + }, + "profileId": { + "description": "The unique ID of the user profile.", + "format": "int64", + "type": "string" + }, + "subAccountId": { + "description": "The sub account ID this profile belongs to if applicable.", + "format": "int64", + "type": "string" + }, + "subAccountName": { + "description": "The sub account name this profile belongs to if applicable.", + "type": "string" + }, + "userName": { + "description": "The user name.", + "type": "string" + } + }, + "type": "object" + }, + "UserProfileList": { + "description": "Represents the list of user profiles.", + "id": "UserProfileList", + "properties": { + "etag": { + "description": "The eTag of this response for caching purposes.", + "type": "string" + }, + "items": { + "description": "The user profiles returned in this response.", + "items": { + "$ref": "UserProfile" + }, + "type": "array" + }, + "kind": { + "default": "dfareporting#userProfileList", + "description": "The kind of list this is, in this case dfareporting#userProfileList.", + "type": "string" + } + }, + "type": "object" + }, + "UserRole": { + "description": "Contains properties of auser role, which is used to manage user access.", + "id": "UserRole", + "properties": { + "accountId": { + "description": "Account ID of this user role. This is a read-only field that can be left blank.", + "format": "int64", + "type": "string" + }, + "defaultUserRole": { + "description": "Whether this is a default user role. Default user roles are created by the system for the account/subaccount and cannot be modified or deleted. Each default user role comes with a basic set of preassigned permissions.", + "type": "boolean" + }, + "id": { + "description": "ID of this user role. This is a read-only, auto-generated field.", + "format": "int64", + "type": "string" + }, + "kind": { + "default": "dfareporting#userRole", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#userRole\".", + "type": "string" + }, + "name": { + "description": "Name of this user role. This is a required field. Must be less than 256 characters long. If this user role is under a subaccount, the name must be unique among sites of the same subaccount. Otherwise, this user role is a top-level user role, and the name must be unique among top-level user roles of the same account.", + "type": "string" + }, + "parentUserRoleId": { + "description": "ID of the user role that this user role is based on or copied from. This is a required field.", + "format": "int64", + "type": "string" + }, + "permissions": { + "description": "List of permissions associated with this user role.", + "items": { + "$ref": "UserRolePermission" + }, + "type": "array" + }, + "subaccountId": { + "description": "Subaccount ID of this user role. This is a read-only field that can be left blank.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "UserRolePermission": { + "description": "Contains properties of a user role permission.", + "id": "UserRolePermission", + "properties": { + "availability": { + "description": "Levels of availability for a user role permission.", + "enum": [ + "ACCOUNT_ALWAYS", + "ACCOUNT_BY_DEFAULT", + "NOT_AVAILABLE_BY_DEFAULT", + "SUBACCOUNT_AND_ACCOUNT_ALWAYS", + "SUBACCOUNT_AND_ACCOUNT_BY_DEFAULT" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "id": { + "description": "ID of this user role permission.", + "format": "int64", + "type": "string" + }, + "kind": { + "default": "dfareporting#userRolePermission", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#userRolePermission\".", + "type": "string" + }, + "name": { + "description": "Name of this user role permission.", + "type": "string" + }, + "permissionGroupId": { + "description": "ID of the permission group that this user role permission belongs to.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "UserRolePermissionGroup": { + "description": "Represents a grouping of related user role permissions.", + "id": "UserRolePermissionGroup", + "properties": { + "id": { + "description": "ID of this user role permission.", + "format": "int64", + "type": "string" + }, + "kind": { + "default": "dfareporting#userRolePermissionGroup", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#userRolePermissionGroup\".", + "type": "string" + }, + "name": { + "description": "Name of this user role permission group.", + "type": "string" + } + }, + "type": "object" + }, + "UserRolePermissionGroupsListResponse": { + "description": "User Role Permission Group List Response", + "id": "UserRolePermissionGroupsListResponse", + "properties": { + "kind": { + "default": "dfareporting#userRolePermissionGroupsListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#userRolePermissionGroupsListResponse\".", + "type": "string" + }, + "userRolePermissionGroups": { + "description": "User role permission group collection.", + "items": { + "$ref": "UserRolePermissionGroup" + }, + "type": "array" + } + }, + "type": "object" + }, + "UserRolePermissionsListResponse": { + "description": "User Role Permission List Response", + "id": "UserRolePermissionsListResponse", + "properties": { + "kind": { + "default": "dfareporting#userRolePermissionsListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#userRolePermissionsListResponse\".", + "type": "string" + }, + "userRolePermissions": { + "description": "User role permission collection.", + "items": { + "$ref": "UserRolePermission" + }, + "type": "array" + } + }, + "type": "object" + }, + "UserRolesListResponse": { + "description": "User Role List Response", + "id": "UserRolesListResponse", + "properties": { + "kind": { + "default": "dfareporting#userRolesListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#userRolesListResponse\".", + "type": "string" + }, + "nextPageToken": { + "description": "Pagination token to be used for the next list operation.", + "type": "string" + }, + "userRoles": { + "description": "User role collection.", + "items": { + "$ref": "UserRole" + }, + "type": "array" + } + }, + "type": "object" + }, + "VideoFormat": { + "description": "Contains information about supported video formats.", + "id": "VideoFormat", + "properties": { + "fileType": { + "description": "File type of the video format.", + "enum": [ + "FLV", + "M3U8", + "MP4", + "THREEGPP", + "WEBM" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "id": { + "description": "ID of the video format.", + "format": "int32", + "type": "integer" + }, + "kind": { + "default": "dfareporting#videoFormat", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#videoFormat\".", + "type": "string" + }, + "resolution": { + "$ref": "Size", + "description": "The resolution of this video format." + }, + "targetBitRate": { + "description": "The target bit rate of this video format.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "VideoFormatsListResponse": { + "description": "Video Format List Response", + "id": "VideoFormatsListResponse", + "properties": { + "kind": { + "default": "dfareporting#videoFormatsListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#videoFormatsListResponse\".", + "type": "string" + }, + "videoFormats": { + "description": "Video format collection.", + "items": { + "$ref": "VideoFormat" + }, + "type": "array" + } + }, + "type": "object" + }, + "VideoOffset": { + "description": "Video Offset", + "id": "VideoOffset", + "properties": { + "offsetPercentage": { + "description": "Duration, as a percentage of video duration. Do not set when offsetSeconds is set. Acceptable values are 0 to 100, inclusive.", + "format": "int32", + "type": "integer" + }, + "offsetSeconds": { + "description": "Duration, in seconds. Do not set when offsetPercentage is set. Acceptable values are 0 to 86399, inclusive.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "VideoSettings": { + "description": "Video Settings", + "id": "VideoSettings", + "properties": { + "companionSettings": { + "$ref": "CompanionSetting", + "description": "Settings for the companion creatives of video creatives served to this placement." + }, + "kind": { + "default": "dfareporting#videoSettings", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#videoSettings\".", + "type": "string" + }, + "orientation": { + "description": "Orientation of a video placement. If this value is set, placement will return assets matching the specified orientation.", + "enum": [ + "ANY", + "LANDSCAPE", + "PORTRAIT" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, + "skippableSettings": { + "$ref": "SkippableSetting", + "description": "Settings for the skippability of video creatives served to this placement. If this object is provided, the creative-level skippable settings will be overridden." + }, + "transcodeSettings": { + "$ref": "TranscodeSetting", + "description": "Settings for the transcodes of video creatives served to this placement. If this object is provided, the creative-level transcode settings will be overridden." + } + }, + "type": "object" } - } }, - "sites": { - "methods": { - "get": { - "id": "dfareporting.sites.get", - "path": "userprofiles/{profileId}/sites/{id}", - "httpMethod": "GET", - "description": "Gets one site by ID.", - "parameters": { - "id": { - "type": "string", - "description": "Site ID.", - "required": true, - "format": "int64", - "location": "path" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "id" - ], - "response": { - "$ref": "Site" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "insert": { - "id": "dfareporting.sites.insert", - "path": "userprofiles/{profileId}/sites", - "httpMethod": "POST", - "description": "Inserts a new site.", - "parameters": { - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId" - ], - "request": { - "$ref": "Site" - }, - "response": { - "$ref": "Site" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "list": { - "id": "dfareporting.sites.list", - "path": "userprofiles/{profileId}/sites", - "httpMethod": "GET", - "description": "Retrieves a list of sites, possibly filtered. This method supports paging.", - "parameters": { - "acceptsInStreamVideoPlacements": { - "type": "boolean", - "description": "This search filter is no longer supported and will have no effect on the results returned.", - "location": "query" - }, - "acceptsInterstitialPlacements": { - "type": "boolean", - "description": "This search filter is no longer supported and will have no effect on the results returned.", - "location": "query" - }, - "acceptsPublisherPaidPlacements": { - "type": "boolean", - "description": "Select only sites that accept publisher paid placements.", - "location": "query" - }, - "adWordsSite": { - "type": "boolean", - "description": "Select only AdWords sites.", - "location": "query" - }, - "approved": { - "type": "boolean", - "description": "Select only approved sites.", - "location": "query" - }, - "campaignIds": { - "type": "string", - "description": "Select only sites with these campaign IDs.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "directorySiteIds": { - "type": "string", - "description": "Select only sites with these directory site IDs.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "ids": { - "type": "string", - "description": "Select only sites with these IDs.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "Maximum number of results to return.", - "default": "1000", - "format": "int32", - "minimum": "0", - "maximum": "1000", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Value of the nextPageToken from the previous result page.", - "location": "query" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - }, - "searchString": { - "type": "string", - "description": "Allows searching for objects by name, ID or keyName. Wildcards (*) are allowed. For example, \"site*2015\" will return objects with names like \"site June 2015\", \"site April 2015\", or simply \"site 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"site\" will match objects with name \"my site\", \"site 2015\", or simply \"site\".", - "location": "query" - }, - "sortField": { - "type": "string", - "description": "Field by which to sort the list.", - "default": "ID", - "enum": [ - "ID", - "NAME" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - }, - "sortOrder": { - "type": "string", - "description": "Order of sorted results.", - "default": "ASCENDING", - "enum": [ - "ASCENDING", - "DESCENDING" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - }, - "subaccountId": { - "type": "string", - "description": "Select only sites with this subaccount ID.", - "format": "int64", - "location": "query" - }, - "unmappedSite": { - "type": "boolean", - "description": "Select only sites that have not been mapped to a directory site.", - "location": "query" - } - }, - "parameterOrder": [ - "profileId" - ], - "response": { - "$ref": "SitesListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "patch": { - "id": "dfareporting.sites.patch", - "path": "userprofiles/{profileId}/sites", - "httpMethod": "PATCH", - "description": "Updates an existing site. This method supports patch semantics.", - "parameters": { - "id": { - "type": "string", - "description": "Site ID.", - "required": true, - "format": "int64", - "location": "query" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "id" - ], - "request": { - "$ref": "Site" - }, - "response": { - "$ref": "Site" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "update": { - "id": "dfareporting.sites.update", - "path": "userprofiles/{profileId}/sites", - "httpMethod": "PUT", - "description": "Updates an existing site.", - "parameters": { - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId" - ], - "request": { - "$ref": "Site" - }, - "response": { - "$ref": "Site" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - } - } - }, - "sizes": { - "methods": { - "get": { - "id": "dfareporting.sizes.get", - "path": "userprofiles/{profileId}/sizes/{id}", - "httpMethod": "GET", - "description": "Gets one size by ID.", - "parameters": { - "id": { - "type": "string", - "description": "Size ID.", - "required": true, - "format": "int64", - "location": "path" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "id" - ], - "response": { - "$ref": "Size" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "insert": { - "id": "dfareporting.sizes.insert", - "path": "userprofiles/{profileId}/sizes", - "httpMethod": "POST", - "description": "Inserts a new size.", - "parameters": { - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId" - ], - "request": { - "$ref": "Size" - }, - "response": { - "$ref": "Size" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "list": { - "id": "dfareporting.sizes.list", - "path": "userprofiles/{profileId}/sizes", - "httpMethod": "GET", - "description": "Retrieves a list of sizes, possibly filtered.", - "parameters": { - "height": { - "type": "integer", - "description": "Select only sizes with this height.", - "format": "int32", - "minimum": "0", - "maximum": "32767", - "location": "query" - }, - "iabStandard": { - "type": "boolean", - "description": "Select only IAB standard sizes.", - "location": "query" - }, - "ids": { - "type": "string", - "description": "Select only sizes with these IDs.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - }, - "width": { - "type": "integer", - "description": "Select only sizes with this width.", - "format": "int32", - "minimum": "0", - "maximum": "32767", - "location": "query" - } - }, - "parameterOrder": [ - "profileId" - ], - "response": { - "$ref": "SizesListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - } - } - }, - "subaccounts": { - "methods": { - "get": { - "id": "dfareporting.subaccounts.get", - "path": "userprofiles/{profileId}/subaccounts/{id}", - "httpMethod": "GET", - "description": "Gets one subaccount by ID.", - "parameters": { - "id": { - "type": "string", - "description": "Subaccount ID.", - "required": true, - "format": "int64", - "location": "path" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "id" - ], - "response": { - "$ref": "Subaccount" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "insert": { - "id": "dfareporting.subaccounts.insert", - "path": "userprofiles/{profileId}/subaccounts", - "httpMethod": "POST", - "description": "Inserts a new subaccount.", - "parameters": { - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId" - ], - "request": { - "$ref": "Subaccount" - }, - "response": { - "$ref": "Subaccount" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "list": { - "id": "dfareporting.subaccounts.list", - "path": "userprofiles/{profileId}/subaccounts", - "httpMethod": "GET", - "description": "Gets a list of subaccounts, possibly filtered. This method supports paging.", - "parameters": { - "ids": { - "type": "string", - "description": "Select only subaccounts with these IDs.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "Maximum number of results to return.", - "default": "1000", - "format": "int32", - "minimum": "0", - "maximum": "1000", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Value of the nextPageToken from the previous result page.", - "location": "query" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - }, - "searchString": { - "type": "string", - "description": "Allows searching for objects by name or ID. Wildcards (*) are allowed. For example, \"subaccount*2015\" will return objects with names like \"subaccount June 2015\", \"subaccount April 2015\", or simply \"subaccount 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"subaccount\" will match objects with name \"my subaccount\", \"subaccount 2015\", or simply \"subaccount\".", - "location": "query" - }, - "sortField": { - "type": "string", - "description": "Field by which to sort the list.", - "default": "ID", - "enum": [ - "ID", - "NAME" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - }, - "sortOrder": { - "type": "string", - "description": "Order of sorted results.", - "default": "ASCENDING", - "enum": [ - "ASCENDING", - "DESCENDING" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - } - }, - "parameterOrder": [ - "profileId" - ], - "response": { - "$ref": "SubaccountsListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "patch": { - "id": "dfareporting.subaccounts.patch", - "path": "userprofiles/{profileId}/subaccounts", - "httpMethod": "PATCH", - "description": "Updates an existing subaccount. This method supports patch semantics.", - "parameters": { - "id": { - "type": "string", - "description": "Subaccount ID.", - "required": true, - "format": "int64", - "location": "query" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "id" - ], - "request": { - "$ref": "Subaccount" - }, - "response": { - "$ref": "Subaccount" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "update": { - "id": "dfareporting.subaccounts.update", - "path": "userprofiles/{profileId}/subaccounts", - "httpMethod": "PUT", - "description": "Updates an existing subaccount.", - "parameters": { - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId" - ], - "request": { - "$ref": "Subaccount" - }, - "response": { - "$ref": "Subaccount" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - } - } - }, - "targetableRemarketingLists": { - "methods": { - "get": { - "id": "dfareporting.targetableRemarketingLists.get", - "path": "userprofiles/{profileId}/targetableRemarketingLists/{id}", - "httpMethod": "GET", - "description": "Gets one remarketing list by ID.", - "parameters": { - "id": { - "type": "string", - "description": "Remarketing list ID.", - "required": true, - "format": "int64", - "location": "path" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "id" - ], - "response": { - "$ref": "TargetableRemarketingList" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "list": { - "id": "dfareporting.targetableRemarketingLists.list", - "path": "userprofiles/{profileId}/targetableRemarketingLists", - "httpMethod": "GET", - "description": "Retrieves a list of targetable remarketing lists, possibly filtered. This method supports paging.", - "parameters": { - "active": { - "type": "boolean", - "description": "Select only active or only inactive targetable remarketing lists.", - "location": "query" - }, - "advertiserId": { - "type": "string", - "description": "Select only targetable remarketing lists targetable by these advertisers.", - "required": true, - "format": "int64", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "Maximum number of results to return.", - "default": "1000", - "format": "int32", - "minimum": "0", - "maximum": "1000", - "location": "query" - }, - "name": { - "type": "string", - "description": "Allows searching for objects by name or ID. Wildcards (*) are allowed. For example, \"remarketing list*2015\" will return objects with names like \"remarketing list June 2015\", \"remarketing list April 2015\", or simply \"remarketing list 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"remarketing list\" will match objects with name \"my remarketing list\", \"remarketing list 2015\", or simply \"remarketing list\".", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Value of the nextPageToken from the previous result page.", - "location": "query" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - }, - "sortField": { - "type": "string", - "description": "Field by which to sort the list.", - "default": "ID", - "enum": [ - "ID", - "NAME" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - }, - "sortOrder": { - "type": "string", - "description": "Order of sorted results.", - "default": "ASCENDING", - "enum": [ - "ASCENDING", - "DESCENDING" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - } - }, - "parameterOrder": [ - "profileId", - "advertiserId" - ], - "response": { - "$ref": "TargetableRemarketingListsListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - } - } - }, - "targetingTemplates": { - "methods": { - "get": { - "id": "dfareporting.targetingTemplates.get", - "path": "userprofiles/{profileId}/targetingTemplates/{id}", - "httpMethod": "GET", - "description": "Gets one targeting template by ID.", - "parameters": { - "id": { - "type": "string", - "description": "Targeting template ID.", - "required": true, - "format": "int64", - "location": "path" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "id" - ], - "response": { - "$ref": "TargetingTemplate" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "insert": { - "id": "dfareporting.targetingTemplates.insert", - "path": "userprofiles/{profileId}/targetingTemplates", - "httpMethod": "POST", - "description": "Inserts a new targeting template.", - "parameters": { - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId" - ], - "request": { - "$ref": "TargetingTemplate" - }, - "response": { - "$ref": "TargetingTemplate" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "list": { - "id": "dfareporting.targetingTemplates.list", - "path": "userprofiles/{profileId}/targetingTemplates", - "httpMethod": "GET", - "description": "Retrieves a list of targeting templates, optionally filtered. This method supports paging.", - "parameters": { - "advertiserId": { - "type": "string", - "description": "Select only targeting templates with this advertiser ID.", - "format": "int64", - "location": "query" - }, - "ids": { - "type": "string", - "description": "Select only targeting templates with these IDs.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "Maximum number of results to return.", - "default": "1000", - "format": "int32", - "minimum": "0", - "maximum": "1000", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Value of the nextPageToken from the previous result page.", - "location": "query" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - }, - "searchString": { - "type": "string", - "description": "Allows searching for objects by name or ID. Wildcards (*) are allowed. For example, \"template*2015\" will return objects with names like \"template June 2015\", \"template April 2015\", or simply \"template 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"template\" will match objects with name \"my template\", \"template 2015\", or simply \"template\".", - "location": "query" - }, - "sortField": { - "type": "string", - "description": "Field by which to sort the list.", - "default": "ID", - "enum": [ - "ID", - "NAME" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - }, - "sortOrder": { - "type": "string", - "description": "Order of sorted results.", - "default": "ASCENDING", - "enum": [ - "ASCENDING", - "DESCENDING" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - } - }, - "parameterOrder": [ - "profileId" - ], - "response": { - "$ref": "TargetingTemplatesListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "patch": { - "id": "dfareporting.targetingTemplates.patch", - "path": "userprofiles/{profileId}/targetingTemplates", - "httpMethod": "PATCH", - "description": "Updates an existing targeting template. This method supports patch semantics.", - "parameters": { - "id": { - "type": "string", - "description": "Targeting template ID.", - "required": true, - "format": "int64", - "location": "query" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "id" - ], - "request": { - "$ref": "TargetingTemplate" - }, - "response": { - "$ref": "TargetingTemplate" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "update": { - "id": "dfareporting.targetingTemplates.update", - "path": "userprofiles/{profileId}/targetingTemplates", - "httpMethod": "PUT", - "description": "Updates an existing targeting template.", - "parameters": { - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId" - ], - "request": { - "$ref": "TargetingTemplate" - }, - "response": { - "$ref": "TargetingTemplate" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - } - } - }, - "userProfiles": { - "methods": { - "get": { - "id": "dfareporting.userProfiles.get", - "path": "userprofiles/{profileId}", - "httpMethod": "GET", - "description": "Gets one user profile by ID.", - "parameters": { - "profileId": { - "type": "string", - "description": "The user profile ID.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId" - ], - "response": { - "$ref": "UserProfile" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfareporting", - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "list": { - "id": "dfareporting.userProfiles.list", - "path": "userprofiles", - "httpMethod": "GET", - "description": "Retrieves list of user profiles for a user.", - "response": { - "$ref": "UserProfileList" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfareporting", - "https://www.googleapis.com/auth/dfatrafficking" - ] - } - } - }, - "userRolePermissionGroups": { - "methods": { - "get": { - "id": "dfareporting.userRolePermissionGroups.get", - "path": "userprofiles/{profileId}/userRolePermissionGroups/{id}", - "httpMethod": "GET", - "description": "Gets one user role permission group by ID.", - "parameters": { - "id": { - "type": "string", - "description": "User role permission group ID.", - "required": true, - "format": "int64", - "location": "path" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "id" - ], - "response": { - "$ref": "UserRolePermissionGroup" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "list": { - "id": "dfareporting.userRolePermissionGroups.list", - "path": "userprofiles/{profileId}/userRolePermissionGroups", - "httpMethod": "GET", - "description": "Gets a list of all supported user role permission groups.", - "parameters": { - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId" - ], - "response": { - "$ref": "UserRolePermissionGroupsListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - } - } - }, - "userRolePermissions": { - "methods": { - "get": { - "id": "dfareporting.userRolePermissions.get", - "path": "userprofiles/{profileId}/userRolePermissions/{id}", - "httpMethod": "GET", - "description": "Gets one user role permission by ID.", - "parameters": { - "id": { - "type": "string", - "description": "User role permission ID.", - "required": true, - "format": "int64", - "location": "path" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "id" - ], - "response": { - "$ref": "UserRolePermission" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "list": { - "id": "dfareporting.userRolePermissions.list", - "path": "userprofiles/{profileId}/userRolePermissions", - "httpMethod": "GET", - "description": "Gets a list of user role permissions, possibly filtered.", - "parameters": { - "ids": { - "type": "string", - "description": "Select only user role permissions with these IDs.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId" - ], - "response": { - "$ref": "UserRolePermissionsListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - } - } - }, - "userRoles": { - "methods": { - "delete": { - "id": "dfareporting.userRoles.delete", - "path": "userprofiles/{profileId}/userRoles/{id}", - "httpMethod": "DELETE", - "description": "Deletes an existing user role.", - "parameters": { - "id": { - "type": "string", - "description": "User role ID.", - "required": true, - "format": "int64", - "location": "path" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "id" - ], - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "get": { - "id": "dfareporting.userRoles.get", - "path": "userprofiles/{profileId}/userRoles/{id}", - "httpMethod": "GET", - "description": "Gets one user role by ID.", - "parameters": { - "id": { - "type": "string", - "description": "User role ID.", - "required": true, - "format": "int64", - "location": "path" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "id" - ], - "response": { - "$ref": "UserRole" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "insert": { - "id": "dfareporting.userRoles.insert", - "path": "userprofiles/{profileId}/userRoles", - "httpMethod": "POST", - "description": "Inserts a new user role.", - "parameters": { - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId" - ], - "request": { - "$ref": "UserRole" - }, - "response": { - "$ref": "UserRole" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "list": { - "id": "dfareporting.userRoles.list", - "path": "userprofiles/{profileId}/userRoles", - "httpMethod": "GET", - "description": "Retrieves a list of user roles, possibly filtered. This method supports paging.", - "parameters": { - "accountUserRoleOnly": { - "type": "boolean", - "description": "Select only account level user roles not associated with any specific subaccount.", - "location": "query" - }, - "ids": { - "type": "string", - "description": "Select only user roles with the specified IDs.", - "format": "int64", - "repeated": true, - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "Maximum number of results to return.", - "default": "1000", - "format": "int32", - "minimum": "0", - "maximum": "1000", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Value of the nextPageToken from the previous result page.", - "location": "query" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - }, - "searchString": { - "type": "string", - "description": "Allows searching for objects by name or ID. Wildcards (*) are allowed. For example, \"userrole*2015\" will return objects with names like \"userrole June 2015\", \"userrole April 2015\", or simply \"userrole 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"userrole\" will match objects with name \"my userrole\", \"userrole 2015\", or simply \"userrole\".", - "location": "query" - }, - "sortField": { - "type": "string", - "description": "Field by which to sort the list.", - "default": "ID", - "enum": [ - "ID", - "NAME" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - }, - "sortOrder": { - "type": "string", - "description": "Order of sorted results.", - "default": "ASCENDING", - "enum": [ - "ASCENDING", - "DESCENDING" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - }, - "subaccountId": { - "type": "string", - "description": "Select only user roles that belong to this subaccount.", - "format": "int64", - "location": "query" - } - }, - "parameterOrder": [ - "profileId" - ], - "response": { - "$ref": "UserRolesListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "patch": { - "id": "dfareporting.userRoles.patch", - "path": "userprofiles/{profileId}/userRoles", - "httpMethod": "PATCH", - "description": "Updates an existing user role. This method supports patch semantics.", - "parameters": { - "id": { - "type": "string", - "description": "User role ID.", - "required": true, - "format": "int64", - "location": "query" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "id" - ], - "request": { - "$ref": "UserRole" - }, - "response": { - "$ref": "UserRole" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "update": { - "id": "dfareporting.userRoles.update", - "path": "userprofiles/{profileId}/userRoles", - "httpMethod": "PUT", - "description": "Updates an existing user role.", - "parameters": { - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId" - ], - "request": { - "$ref": "UserRole" - }, - "response": { - "$ref": "UserRole" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - } - } - }, - "videoFormats": { - "methods": { - "get": { - "id": "dfareporting.videoFormats.get", - "path": "userprofiles/{profileId}/videoFormats/{id}", - "httpMethod": "GET", - "description": "Gets one video format by ID.", - "parameters": { - "id": { - "type": "integer", - "description": "Video format ID.", - "required": true, - "format": "int32", - "location": "path" - }, - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId", - "id" - ], - "response": { - "$ref": "VideoFormat" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - }, - "list": { - "id": "dfareporting.videoFormats.list", - "path": "userprofiles/{profileId}/videoFormats", - "httpMethod": "GET", - "description": "Lists available video formats.", - "parameters": { - "profileId": { - "type": "string", - "description": "User profile ID associated with this request.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "profileId" - ], - "response": { - "$ref": "VideoFormatsListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/dfatrafficking" - ] - } - } - } - } -} + "servicePath": "dfareporting/v3.0/", + "title": "DCM/DFA Reporting And Trafficking API", + "version": "v3.0" +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/dfareporting/v3.0/dfareporting-gen.go b/vendor/google.golang.org/api/dfareporting/v3.0/dfareporting-gen.go index 72785258c..ce4499125 100644 --- a/vendor/google.golang.org/api/dfareporting/v3.0/dfareporting-gen.go +++ b/vendor/google.golang.org/api/dfareporting/v3.0/dfareporting-gen.go @@ -24358,11 +24358,12 @@ func (c *CreativeAssetsInsertCall) doRequest(alt string) (*http.Response, error) body = new(bytes.Buffer) reqHeaders.Set("Content-Type", "application/json") } - body, cleanup := c.mediaInfo_.UploadRequest(reqHeaders, body) + body, getBody, cleanup := c.mediaInfo_.UploadRequest(reqHeaders, body) defer cleanup() urls += "?" + c.urlParams_.Encode() req, _ := http.NewRequest("POST", urls, body) req.Header = reqHeaders + gensupport.SetGetBody(req, getBody) googleapi.Expand(req.URL, map[string]string{ "profileId": strconv.FormatInt(c.profileId, 10), "advertiserId": strconv.FormatInt(c.advertiserId, 10), diff --git a/vendor/google.golang.org/api/dialogflow/v2/dialogflow-api.json b/vendor/google.golang.org/api/dialogflow/v2/dialogflow-api.json new file mode 100644 index 000000000..9ece7db86 --- /dev/null +++ b/vendor/google.golang.org/api/dialogflow/v2/dialogflow-api.json @@ -0,0 +1,3883 @@ +{ + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/cloud-platform": { + "description": "View and manage your data across Google Cloud Platform services" + } + } + } + }, + "basePath": "", + "baseUrl": "https://dialogflow.googleapis.com/", + "batchPath": "batch", + "canonicalName": "Dialogflow", + "description": "An end-to-end development suite for conversational interfaces (e.g., chatbots, voice-powered apps and devices).", + "discoveryVersion": "v1", + "documentationLink": "https://cloud.google.com/dialogflow-enterprise/", + "fullyEncodeReservedExpansion": true, + "icons": { + "x16": "http://www.google.com/images/icons/product/search-16.gif", + "x32": "http://www.google.com/images/icons/product/search-32.gif" + }, + "id": "dialogflow:v2", + "kind": "discovery#restDescription", + "name": "dialogflow", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "$.xgafv": { + "description": "V1 error format.", + "enum": [ + "1", + "2" + ], + "enumDescriptions": [ + "v1 error format", + "v2 error format" + ], + "location": "query", + "type": "string" + }, + "access_token": { + "description": "OAuth access token.", + "location": "query", + "type": "string" + }, + "alt": { + "default": "json", + "description": "Data format for response.", + "enum": [ + "json", + "media", + "proto" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json", + "Media download with context-dependent Content-Type", + "Responses with Content-Type of application/x-protobuf" + ], + "location": "query", + "type": "string" + }, + "bearer_token": { + "description": "OAuth bearer token.", + "location": "query", + "type": "string" + }, + "callback": { + "description": "JSONP", + "location": "query", + "type": "string" + }, + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "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.", + "location": "query", + "type": "string" + }, + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "pp": { + "default": "true", + "description": "Pretty-print response.", + "location": "query", + "type": "boolean" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", + "location": "query", + "type": "string" + }, + "uploadType": { + "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", + "location": "query", + "type": "string" + }, + "upload_protocol": { + "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", + "location": "query", + "type": "string" + } + }, + "protocol": "rest", + "resources": { + "projects": { + "methods": { + "getAgent": { + "description": "Retrieves the specified agent.", + "flatPath": "v2/projects/{projectsId}/agent", + "httpMethod": "GET", + "id": "dialogflow.projects.getAgent", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. The project that the agent to fetch is associated with.\nFormat: `projects/\u003cProject ID\u003e`.", + "location": "path", + "pattern": "^projects/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2/{+parent}/agent", + "response": { + "$ref": "GoogleCloudDialogflowV2Agent" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + }, + "resources": { + "agent": { + "methods": { + "export": { + "description": "Exports the specified agent to a ZIP file.\n\nOperation \u003cresponse: ExportAgentResponse,\n metadata: google.protobuf.Struct\u003e", + "flatPath": "v2/projects/{projectsId}/agent:export", + "httpMethod": "POST", + "id": "dialogflow.projects.agent.export", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. The project that the agent to export is associated with.\nFormat: `projects/\u003cProject ID\u003e`.", + "location": "path", + "pattern": "^projects/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2/{+parent}/agent:export", + "request": { + "$ref": "GoogleCloudDialogflowV2ExportAgentRequest" + }, + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "import": { + "description": "Imports the specified agent from a ZIP file.\n\nUploads new intents and entity types without deleting the existing ones.\nIntents and entity types with the same name are replaced with the new\nversions from ImportAgentRequest.\n\nOperation \u003cresponse: google.protobuf.Empty,\n metadata: google.protobuf.Struct\u003e", + "flatPath": "v2/projects/{projectsId}/agent:import", + "httpMethod": "POST", + "id": "dialogflow.projects.agent.import", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. The project that the agent to import is associated with.\nFormat: `projects/\u003cProject ID\u003e`.", + "location": "path", + "pattern": "^projects/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2/{+parent}/agent:import", + "request": { + "$ref": "GoogleCloudDialogflowV2ImportAgentRequest" + }, + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "restore": { + "description": "Restores the specified agent from a ZIP file.\n\nReplaces the current agent version with a new one. All the intents and\nentity types in the older version are deleted.\n\nOperation \u003cresponse: google.protobuf.Empty,\n metadata: google.protobuf.Struct\u003e", + "flatPath": "v2/projects/{projectsId}/agent:restore", + "httpMethod": "POST", + "id": "dialogflow.projects.agent.restore", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. The project that the agent to restore is associated with.\nFormat: `projects/\u003cProject ID\u003e`.", + "location": "path", + "pattern": "^projects/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2/{+parent}/agent:restore", + "request": { + "$ref": "GoogleCloudDialogflowV2RestoreAgentRequest" + }, + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "search": { + "description": "Returns the list of agents.\n\nSince there is at most one conversational agent per project, this method is\nuseful primarily for listing all agents across projects the caller has\naccess to. One can achieve that with a wildcard project collection id \"-\".\nRefer to [List\nSub-Collections](https://cloud.google.com/apis/design/design_patterns#list_sub-collections).", + "flatPath": "v2/projects/{projectsId}/agent:search", + "httpMethod": "GET", + "id": "dialogflow.projects.agent.search", + "parameterOrder": [ + "parent" + ], + "parameters": { + "pageSize": { + "description": "Optional. The maximum number of items to return in a single page. By\ndefault 100 and at most 1000.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional. The next_page_token value returned from a previous list request.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The project to list agents from.\nFormat: `projects/\u003cProject ID or '-'\u003e`.", + "location": "path", + "pattern": "^projects/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2/{+parent}/agent:search", + "response": { + "$ref": "GoogleCloudDialogflowV2SearchAgentsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "train": { + "description": "Trains the specified agent.\n\nOperation \u003cresponse: google.protobuf.Empty,\n metadata: google.protobuf.Struct\u003e", + "flatPath": "v2/projects/{projectsId}/agent:train", + "httpMethod": "POST", + "id": "dialogflow.projects.agent.train", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. The project that the agent to train is associated with.\nFormat: `projects/\u003cProject ID\u003e`.", + "location": "path", + "pattern": "^projects/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2/{+parent}/agent:train", + "request": { + "$ref": "GoogleCloudDialogflowV2TrainAgentRequest" + }, + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + }, + "resources": { + "entityTypes": { + "methods": { + "batchDelete": { + "description": "Deletes entity types in the specified agent.\n\nOperation \u003cresponse: google.protobuf.Empty,\n metadata: google.protobuf.Struct\u003e", + "flatPath": "v2/projects/{projectsId}/agent/entityTypes:batchDelete", + "httpMethod": "POST", + "id": "dialogflow.projects.agent.entityTypes.batchDelete", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. The name of the agent to delete all entities types for. Format:\n`projects/\u003cProject ID\u003e/agent`.", + "location": "path", + "pattern": "^projects/[^/]+/agent$", + "required": true, + "type": "string" + } + }, + "path": "v2/{+parent}/entityTypes:batchDelete", + "request": { + "$ref": "GoogleCloudDialogflowV2BatchDeleteEntityTypesRequest" + }, + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "batchUpdate": { + "description": "Updates/Creates multiple entity types in the specified agent.\n\nOperation \u003cresponse: BatchUpdateEntityTypesResponse,\n metadata: google.protobuf.Struct\u003e", + "flatPath": "v2/projects/{projectsId}/agent/entityTypes:batchUpdate", + "httpMethod": "POST", + "id": "dialogflow.projects.agent.entityTypes.batchUpdate", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. The name of the agent to update or create entity types in.\nFormat: `projects/\u003cProject ID\u003e/agent`.", + "location": "path", + "pattern": "^projects/[^/]+/agent$", + "required": true, + "type": "string" + } + }, + "path": "v2/{+parent}/entityTypes:batchUpdate", + "request": { + "$ref": "GoogleCloudDialogflowV2BatchUpdateEntityTypesRequest" + }, + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "create": { + "description": "Creates an entity type in the specified agent.", + "flatPath": "v2/projects/{projectsId}/agent/entityTypes", + "httpMethod": "POST", + "id": "dialogflow.projects.agent.entityTypes.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "languageCode": { + "description": "Optional. The language of entity synonyms defined in `entity_type`. If not\nspecified, the agent's default language is used.\n[More than a dozen\nlanguages](https://dialogflow.com/docs/reference/language) are supported.\nNote: languages must be enabled in the agent, before they can be used.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The agent to create a entity type for.\nFormat: `projects/\u003cProject ID\u003e/agent`.", + "location": "path", + "pattern": "^projects/[^/]+/agent$", + "required": true, + "type": "string" + } + }, + "path": "v2/{+parent}/entityTypes", + "request": { + "$ref": "GoogleCloudDialogflowV2EntityType" + }, + "response": { + "$ref": "GoogleCloudDialogflowV2EntityType" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Deletes the specified entity type.", + "flatPath": "v2/projects/{projectsId}/agent/entityTypes/{entityTypesId}", + "httpMethod": "DELETE", + "id": "dialogflow.projects.agent.entityTypes.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the entity type to delete.\nFormat: `projects/\u003cProject ID\u003e/agent/entityTypes/\u003cEntityType ID\u003e`.", + "location": "path", + "pattern": "^projects/[^/]+/agent/entityTypes/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2/{+name}", + "response": { + "$ref": "GoogleProtobufEmpty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Retrieves the specified entity type.", + "flatPath": "v2/projects/{projectsId}/agent/entityTypes/{entityTypesId}", + "httpMethod": "GET", + "id": "dialogflow.projects.agent.entityTypes.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "languageCode": { + "description": "Optional. The language to retrieve entity synonyms for. If not specified,\nthe agent's default language is used.\n[More than a dozen\nlanguages](https://dialogflow.com/docs/reference/language) are supported.\nNote: languages must be enabled in the agent, before they can be used.", + "location": "query", + "type": "string" + }, + "name": { + "description": "Required. The name of the entity type.\nFormat: `projects/\u003cProject ID\u003e/agent/entityTypes/\u003cEntityType ID\u003e`.", + "location": "path", + "pattern": "^projects/[^/]+/agent/entityTypes/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2/{+name}", + "response": { + "$ref": "GoogleCloudDialogflowV2EntityType" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Returns the list of all entity types in the specified agent.", + "flatPath": "v2/projects/{projectsId}/agent/entityTypes", + "httpMethod": "GET", + "id": "dialogflow.projects.agent.entityTypes.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "languageCode": { + "description": "Optional. The language to list entity synonyms for. If not specified,\nthe agent's default language is used.\n[More than a dozen\nlanguages](https://dialogflow.com/docs/reference/language) are supported.\nNote: languages must be enabled in the agent, before they can be used.", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "Optional. The maximum number of items to return in a single page. By\ndefault 100 and at most 1000.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional. The next_page_token value returned from a previous list request.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The agent to list all entity types from.\nFormat: `projects/\u003cProject ID\u003e/agent`.", + "location": "path", + "pattern": "^projects/[^/]+/agent$", + "required": true, + "type": "string" + } + }, + "path": "v2/{+parent}/entityTypes", + "response": { + "$ref": "GoogleCloudDialogflowV2ListEntityTypesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "patch": { + "description": "Updates the specified entity type.", + "flatPath": "v2/projects/{projectsId}/agent/entityTypes/{entityTypesId}", + "httpMethod": "PATCH", + "id": "dialogflow.projects.agent.entityTypes.patch", + "parameterOrder": [ + "name" + ], + "parameters": { + "languageCode": { + "description": "Optional. The language of entity synonyms defined in `entity_type`. If not\nspecified, the agent's default language is used.\n[More than a dozen\nlanguages](https://dialogflow.com/docs/reference/language) are supported.\nNote: languages must be enabled in the agent, before they can be used.", + "location": "query", + "type": "string" + }, + "name": { + "description": "Required for all methods except `create` (`create` populates the name\nautomatically.\nThe unique identifier of the entity type. Format:\n`projects/\u003cProject ID\u003e/agent/entityTypes/\u003cEntity Type ID\u003e`.", + "location": "path", + "pattern": "^projects/[^/]+/agent/entityTypes/[^/]+$", + "required": true, + "type": "string" + }, + "updateMask": { + "description": "Optional. The mask to control which fields get updated.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + } + }, + "path": "v2/{+name}", + "request": { + "$ref": "GoogleCloudDialogflowV2EntityType" + }, + "response": { + "$ref": "GoogleCloudDialogflowV2EntityType" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + }, + "resources": { + "entities": { + "methods": { + "batchCreate": { + "description": "Creates multiple new entities in the specified entity type (extends the\nexisting collection of entries).\n\nOperation \u003cresponse: google.protobuf.Empty\u003e", + "flatPath": "v2/projects/{projectsId}/agent/entityTypes/{entityTypesId}/entities:batchCreate", + "httpMethod": "POST", + "id": "dialogflow.projects.agent.entityTypes.entities.batchCreate", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. The name of the entity type to create entities in. Format:\n`projects/\u003cProject ID\u003e/agent/entityTypes/\u003cEntity Type ID\u003e`.", + "location": "path", + "pattern": "^projects/[^/]+/agent/entityTypes/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2/{+parent}/entities:batchCreate", + "request": { + "$ref": "GoogleCloudDialogflowV2BatchCreateEntitiesRequest" + }, + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "batchDelete": { + "description": "Deletes entities in the specified entity type.\n\nOperation \u003cresponse: google.protobuf.Empty,\n metadata: google.protobuf.Struct\u003e", + "flatPath": "v2/projects/{projectsId}/agent/entityTypes/{entityTypesId}/entities:batchDelete", + "httpMethod": "POST", + "id": "dialogflow.projects.agent.entityTypes.entities.batchDelete", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. The name of the entity type to delete entries for. Format:\n`projects/\u003cProject ID\u003e/agent/entityTypes/\u003cEntity Type ID\u003e`.", + "location": "path", + "pattern": "^projects/[^/]+/agent/entityTypes/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2/{+parent}/entities:batchDelete", + "request": { + "$ref": "GoogleCloudDialogflowV2BatchDeleteEntitiesRequest" + }, + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "batchUpdate": { + "description": "Updates entities in the specified entity type (replaces the existing\ncollection of entries).\n\nOperation \u003cresponse: google.protobuf.Empty,\n metadata: google.protobuf.Struct\u003e", + "flatPath": "v2/projects/{projectsId}/agent/entityTypes/{entityTypesId}/entities:batchUpdate", + "httpMethod": "POST", + "id": "dialogflow.projects.agent.entityTypes.entities.batchUpdate", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. The name of the entity type to update the entities in. Format:\n`projects/\u003cProject ID\u003e/agent/entityTypes/\u003cEntity Type ID\u003e`.", + "location": "path", + "pattern": "^projects/[^/]+/agent/entityTypes/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2/{+parent}/entities:batchUpdate", + "request": { + "$ref": "GoogleCloudDialogflowV2BatchUpdateEntitiesRequest" + }, + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + } + } + }, + "intents": { + "methods": { + "batchDelete": { + "description": "Deletes intents in the specified agent.\n\nOperation \u003cresponse: google.protobuf.Empty\u003e", + "flatPath": "v2/projects/{projectsId}/agent/intents:batchDelete", + "httpMethod": "POST", + "id": "dialogflow.projects.agent.intents.batchDelete", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. The name of the agent to delete all entities types for. Format:\n`projects/\u003cProject ID\u003e/agent`.", + "location": "path", + "pattern": "^projects/[^/]+/agent$", + "required": true, + "type": "string" + } + }, + "path": "v2/{+parent}/intents:batchDelete", + "request": { + "$ref": "GoogleCloudDialogflowV2BatchDeleteIntentsRequest" + }, + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "batchUpdate": { + "description": "Updates/Creates multiple intents in the specified agent.\n\nOperation \u003cresponse: BatchUpdateIntentsResponse\u003e", + "flatPath": "v2/projects/{projectsId}/agent/intents:batchUpdate", + "httpMethod": "POST", + "id": "dialogflow.projects.agent.intents.batchUpdate", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. The name of the agent to update or create intents in.\nFormat: `projects/\u003cProject ID\u003e/agent`.", + "location": "path", + "pattern": "^projects/[^/]+/agent$", + "required": true, + "type": "string" + } + }, + "path": "v2/{+parent}/intents:batchUpdate", + "request": { + "$ref": "GoogleCloudDialogflowV2BatchUpdateIntentsRequest" + }, + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "create": { + "description": "Creates an intent in the specified agent.", + "flatPath": "v2/projects/{projectsId}/agent/intents", + "httpMethod": "POST", + "id": "dialogflow.projects.agent.intents.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "intentView": { + "description": "Optional. The resource view to apply to the returned intent.", + "enum": [ + "INTENT_VIEW_UNSPECIFIED", + "INTENT_VIEW_FULL" + ], + "location": "query", + "type": "string" + }, + "languageCode": { + "description": "Optional. The language of training phrases, parameters and rich messages\ndefined in `intent`. If not specified, the agent's default language is\nused. [More than a dozen\nlanguages](https://dialogflow.com/docs/reference/language) are supported.\nNote: languages must be enabled in the agent, before they can be used.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The agent to create a intent for.\nFormat: `projects/\u003cProject ID\u003e/agent`.", + "location": "path", + "pattern": "^projects/[^/]+/agent$", + "required": true, + "type": "string" + } + }, + "path": "v2/{+parent}/intents", + "request": { + "$ref": "GoogleCloudDialogflowV2Intent" + }, + "response": { + "$ref": "GoogleCloudDialogflowV2Intent" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Deletes the specified intent.", + "flatPath": "v2/projects/{projectsId}/agent/intents/{intentsId}", + "httpMethod": "DELETE", + "id": "dialogflow.projects.agent.intents.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the intent to delete.\nFormat: `projects/\u003cProject ID\u003e/agent/intents/\u003cIntent ID\u003e`.", + "location": "path", + "pattern": "^projects/[^/]+/agent/intents/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2/{+name}", + "response": { + "$ref": "GoogleProtobufEmpty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Retrieves the specified intent.", + "flatPath": "v2/projects/{projectsId}/agent/intents/{intentsId}", + "httpMethod": "GET", + "id": "dialogflow.projects.agent.intents.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "intentView": { + "description": "Optional. The resource view to apply to the returned intent.", + "enum": [ + "INTENT_VIEW_UNSPECIFIED", + "INTENT_VIEW_FULL" + ], + "location": "query", + "type": "string" + }, + "languageCode": { + "description": "Optional. The language to retrieve training phrases, parameters and rich\nmessages for. If not specified, the agent's default language is used.\n[More than a dozen\nlanguages](https://dialogflow.com/docs/reference/language) are supported.\nNote: languages must be enabled in the agent, before they can be used.", + "location": "query", + "type": "string" + }, + "name": { + "description": "Required. The name of the intent.\nFormat: `projects/\u003cProject ID\u003e/agent/intents/\u003cIntent ID\u003e`.", + "location": "path", + "pattern": "^projects/[^/]+/agent/intents/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2/{+name}", + "response": { + "$ref": "GoogleCloudDialogflowV2Intent" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Returns the list of all intents in the specified agent.", + "flatPath": "v2/projects/{projectsId}/agent/intents", + "httpMethod": "GET", + "id": "dialogflow.projects.agent.intents.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "intentView": { + "description": "Optional. The resource view to apply to the returned intent.", + "enum": [ + "INTENT_VIEW_UNSPECIFIED", + "INTENT_VIEW_FULL" + ], + "location": "query", + "type": "string" + }, + "languageCode": { + "description": "Optional. The language to list training phrases, parameters and rich\nmessages for. If not specified, the agent's default language is used.\n[More than a dozen\nlanguages](https://dialogflow.com/docs/reference/language) are supported.\nNote: languages must be enabled in the agent before they can be used.", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "Optional. The maximum number of items to return in a single page. By\ndefault 100 and at most 1000.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional. The next_page_token value returned from a previous list request.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The agent to list all intents from.\nFormat: `projects/\u003cProject ID\u003e/agent`.", + "location": "path", + "pattern": "^projects/[^/]+/agent$", + "required": true, + "type": "string" + } + }, + "path": "v2/{+parent}/intents", + "response": { + "$ref": "GoogleCloudDialogflowV2ListIntentsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "patch": { + "description": "Updates the specified intent.", + "flatPath": "v2/projects/{projectsId}/agent/intents/{intentsId}", + "httpMethod": "PATCH", + "id": "dialogflow.projects.agent.intents.patch", + "parameterOrder": [ + "name" + ], + "parameters": { + "intentView": { + "description": "Optional. The resource view to apply to the returned intent.", + "enum": [ + "INTENT_VIEW_UNSPECIFIED", + "INTENT_VIEW_FULL" + ], + "location": "query", + "type": "string" + }, + "languageCode": { + "description": "Optional. The language of training phrases, parameters and rich messages\ndefined in `intent`. If not specified, the agent's default language is\nused. [More than a dozen\nlanguages](https://dialogflow.com/docs/reference/language) are supported.\nNote: languages must be enabled in the agent, before they can be used.", + "location": "query", + "type": "string" + }, + "name": { + "description": "Required for all methods except `create` (`create` populates the name\nautomatically.\nThe unique identifier of this intent.\nFormat: `projects/\u003cProject ID\u003e/agent/intents/\u003cIntent ID\u003e`.", + "location": "path", + "pattern": "^projects/[^/]+/agent/intents/[^/]+$", + "required": true, + "type": "string" + }, + "updateMask": { + "description": "Optional. The mask to control which fields get updated.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + } + }, + "path": "v2/{+name}", + "request": { + "$ref": "GoogleCloudDialogflowV2Intent" + }, + "response": { + "$ref": "GoogleCloudDialogflowV2Intent" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + }, + "sessions": { + "methods": { + "deleteContexts": { + "description": "Deletes all active contexts in the specified session.", + "flatPath": "v2/projects/{projectsId}/agent/sessions/{sessionsId}/contexts", + "httpMethod": "DELETE", + "id": "dialogflow.projects.agent.sessions.deleteContexts", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. The name of the session to delete all contexts from. Format:\n`projects/\u003cProject ID\u003e/agent/sessions/\u003cSession ID\u003e`.", + "location": "path", + "pattern": "^projects/[^/]+/agent/sessions/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2/{+parent}/contexts", + "response": { + "$ref": "GoogleProtobufEmpty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "detectIntent": { + "description": "Processes a natural language query and returns structured, actionable data\nas a result. This method is not idempotent, because it may cause contexts\nand session entity types to be updated, which in turn might affect\nresults of future queries.", + "flatPath": "v2/projects/{projectsId}/agent/sessions/{sessionsId}:detectIntent", + "httpMethod": "POST", + "id": "dialogflow.projects.agent.sessions.detectIntent", + "parameterOrder": [ + "session" + ], + "parameters": { + "session": { + "description": "Required. The name of the session this query is sent to. Format:\n`projects/\u003cProject ID\u003e/agent/sessions/\u003cSession ID\u003e`. It's up to the API\ncaller to choose an appropriate session ID. It can be a random number or\nsome type of user identifier (preferably hashed). The length of the session\nID must not exceed 36 bytes.", + "location": "path", + "pattern": "^projects/[^/]+/agent/sessions/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2/{+session}:detectIntent", + "request": { + "$ref": "GoogleCloudDialogflowV2DetectIntentRequest" + }, + "response": { + "$ref": "GoogleCloudDialogflowV2DetectIntentResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + }, + "resources": { + "contexts": { + "methods": { + "create": { + "description": "Creates a context.", + "flatPath": "v2/projects/{projectsId}/agent/sessions/{sessionsId}/contexts", + "httpMethod": "POST", + "id": "dialogflow.projects.agent.sessions.contexts.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. The session to create a context for.\nFormat: `projects/\u003cProject ID\u003e/agent/sessions/\u003cSession ID\u003e`.", + "location": "path", + "pattern": "^projects/[^/]+/agent/sessions/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2/{+parent}/contexts", + "request": { + "$ref": "GoogleCloudDialogflowV2Context" + }, + "response": { + "$ref": "GoogleCloudDialogflowV2Context" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Deletes the specified context.", + "flatPath": "v2/projects/{projectsId}/agent/sessions/{sessionsId}/contexts/{contextsId}", + "httpMethod": "DELETE", + "id": "dialogflow.projects.agent.sessions.contexts.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the context to delete. Format:\n`projects/\u003cProject ID\u003e/agent/sessions/\u003cSession ID\u003e/contexts/\u003cContext ID\u003e`.", + "location": "path", + "pattern": "^projects/[^/]+/agent/sessions/[^/]+/contexts/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2/{+name}", + "response": { + "$ref": "GoogleProtobufEmpty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Retrieves the specified context.", + "flatPath": "v2/projects/{projectsId}/agent/sessions/{sessionsId}/contexts/{contextsId}", + "httpMethod": "GET", + "id": "dialogflow.projects.agent.sessions.contexts.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the context. Format:\n`projects/\u003cProject ID\u003e/agent/sessions/\u003cSession ID\u003e/contexts/\u003cContext ID\u003e`.", + "location": "path", + "pattern": "^projects/[^/]+/agent/sessions/[^/]+/contexts/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2/{+name}", + "response": { + "$ref": "GoogleCloudDialogflowV2Context" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Returns the list of all contexts in the specified session.", + "flatPath": "v2/projects/{projectsId}/agent/sessions/{sessionsId}/contexts", + "httpMethod": "GET", + "id": "dialogflow.projects.agent.sessions.contexts.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "pageSize": { + "description": "Optional. The maximum number of items to return in a single page. By\ndefault 100 and at most 1000.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional. The next_page_token value returned from a previous list request.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The session to list all contexts from.\nFormat: `projects/\u003cProject ID\u003e/agent/sessions/\u003cSession ID\u003e`.", + "location": "path", + "pattern": "^projects/[^/]+/agent/sessions/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2/{+parent}/contexts", + "response": { + "$ref": "GoogleCloudDialogflowV2ListContextsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "patch": { + "description": "Updates the specified context.", + "flatPath": "v2/projects/{projectsId}/agent/sessions/{sessionsId}/contexts/{contextsId}", + "httpMethod": "PATCH", + "id": "dialogflow.projects.agent.sessions.contexts.patch", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The unique identifier of the context. Format:\n`projects/\u003cProject ID\u003e/agent/sessions/\u003cSession ID\u003e/contexts/\u003cContext ID\u003e`.", + "location": "path", + "pattern": "^projects/[^/]+/agent/sessions/[^/]+/contexts/[^/]+$", + "required": true, + "type": "string" + }, + "updateMask": { + "description": "Optional. The mask to control which fields get updated.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + } + }, + "path": "v2/{+name}", + "request": { + "$ref": "GoogleCloudDialogflowV2Context" + }, + "response": { + "$ref": "GoogleCloudDialogflowV2Context" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + }, + "entityTypes": { + "methods": { + "create": { + "description": "Creates a session entity type.", + "flatPath": "v2/projects/{projectsId}/agent/sessions/{sessionsId}/entityTypes", + "httpMethod": "POST", + "id": "dialogflow.projects.agent.sessions.entityTypes.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. The session to create a session entity type for.\nFormat: `projects/\u003cProject ID\u003e/agent/sessions/\u003cSession ID\u003e`.", + "location": "path", + "pattern": "^projects/[^/]+/agent/sessions/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2/{+parent}/entityTypes", + "request": { + "$ref": "GoogleCloudDialogflowV2SessionEntityType" + }, + "response": { + "$ref": "GoogleCloudDialogflowV2SessionEntityType" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Deletes the specified session entity type.", + "flatPath": "v2/projects/{projectsId}/agent/sessions/{sessionsId}/entityTypes/{entityTypesId}", + "httpMethod": "DELETE", + "id": "dialogflow.projects.agent.sessions.entityTypes.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the entity type to delete. Format:\n`projects/\u003cProject ID\u003e/agent/sessions/\u003cSession ID\u003e/entityTypes/\u003cEntity Type\nDisplay Name\u003e`.", + "location": "path", + "pattern": "^projects/[^/]+/agent/sessions/[^/]+/entityTypes/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2/{+name}", + "response": { + "$ref": "GoogleProtobufEmpty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Retrieves the specified session entity type.", + "flatPath": "v2/projects/{projectsId}/agent/sessions/{sessionsId}/entityTypes/{entityTypesId}", + "httpMethod": "GET", + "id": "dialogflow.projects.agent.sessions.entityTypes.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the session entity type. Format:\n`projects/\u003cProject ID\u003e/agent/sessions/\u003cSession ID\u003e/entityTypes/\u003cEntity Type\nDisplay Name\u003e`.", + "location": "path", + "pattern": "^projects/[^/]+/agent/sessions/[^/]+/entityTypes/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2/{+name}", + "response": { + "$ref": "GoogleCloudDialogflowV2SessionEntityType" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Returns the list of all session entity types in the specified session.", + "flatPath": "v2/projects/{projectsId}/agent/sessions/{sessionsId}/entityTypes", + "httpMethod": "GET", + "id": "dialogflow.projects.agent.sessions.entityTypes.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "pageSize": { + "description": "Optional. The maximum number of items to return in a single page. By\ndefault 100 and at most 1000.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional. The next_page_token value returned from a previous list request.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The session to list all session entity types from.\nFormat: `projects/\u003cProject ID\u003e/agent/sessions/\u003cSession ID\u003e`.", + "location": "path", + "pattern": "^projects/[^/]+/agent/sessions/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2/{+parent}/entityTypes", + "response": { + "$ref": "GoogleCloudDialogflowV2ListSessionEntityTypesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "patch": { + "description": "Updates the specified session entity type.", + "flatPath": "v2/projects/{projectsId}/agent/sessions/{sessionsId}/entityTypes/{entityTypesId}", + "httpMethod": "PATCH", + "id": "dialogflow.projects.agent.sessions.entityTypes.patch", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The unique identifier of this session entity type. Format:\n`projects/\u003cProject ID\u003e/agent/sessions/\u003cSession ID\u003e/entityTypes/\u003cEntity Type\nDisplay Name\u003e`.", + "location": "path", + "pattern": "^projects/[^/]+/agent/sessions/[^/]+/entityTypes/[^/]+$", + "required": true, + "type": "string" + }, + "updateMask": { + "description": "Optional. The mask to control which fields get updated.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + } + }, + "path": "v2/{+name}", + "request": { + "$ref": "GoogleCloudDialogflowV2SessionEntityType" + }, + "response": { + "$ref": "GoogleCloudDialogflowV2SessionEntityType" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + } + } + } + } + }, + "operations": { + "methods": { + "get": { + "description": "Gets the latest state of a long-running operation. Clients can use this\nmethod to poll the operation result at intervals as recommended by the API\nservice.", + "flatPath": "v2/projects/{projectsId}/operations/{operationsId}", + "httpMethod": "GET", + "id": "dialogflow.projects.operations.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource.", + "location": "path", + "pattern": "^projects/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2/{+name}", + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + } + } + } + }, + "revision": "20180326", + "rootUrl": "https://dialogflow.googleapis.com/", + "schemas": { + "GoogleCloudDialogflowV2Agent": { + "description": "Represents a conversational agent.", + "id": "GoogleCloudDialogflowV2Agent", + "properties": { + "avatarUri": { + "description": "Optional. The URI of the agent's avatar.\nAvatars are used throughout the Dialogflow console and in the self-hosted\n[Web Demo](https://dialogflow.com/docs/integrations/web-demo) integration.", + "type": "string" + }, + "classificationThreshold": { + "description": "Optional. To filter out false positive results and still get variety in\nmatched natural language inputs for your agent, you can tune the machine\nlearning classification threshold. If the returned score value is less than\nthe threshold value, then a fallback intent is be triggered or, if there\nare no fallback intents defined, no intent will be triggered. The score\nvalues range from 0.0 (completely uncertain) to 1.0 (completely certain).\nIf set to 0.0, the default of 0.3 is used.", + "format": "float", + "type": "number" + }, + "defaultLanguageCode": { + "description": "Required. The default language of the agent as a language tag. See\n[Language Support](https://dialogflow.com/docs/reference/language) for a\nlist of the currently supported language codes.\nThis field cannot be set by the `Update` method.", + "type": "string" + }, + "description": { + "description": "Optional. The description of this agent.\nThe maximum length is 500 characters. If exceeded, the request is rejected.", + "type": "string" + }, + "displayName": { + "description": "Required. The name of this agent.", + "type": "string" + }, + "enableLogging": { + "description": "Optional. Determines whether this agent should log conversation queries.", + "type": "boolean" + }, + "matchMode": { + "description": "Optional. Determines how intents are detected from user queries.", + "enum": [ + "MATCH_MODE_UNSPECIFIED", + "MATCH_MODE_HYBRID", + "MATCH_MODE_ML_ONLY" + ], + "enumDescriptions": [ + "Not specified.", + "Best for agents with a small number of examples in intents and/or wide\nuse of templates syntax and composite entities.", + "Can be used for agents with a large number of examples in intents,\nespecially the ones using @sys.any or very large developer entities." + ], + "type": "string" + }, + "parent": { + "description": "Required. The project of this agent.\nFormat: `projects/\u003cProject ID\u003e`.", + "type": "string" + }, + "supportedLanguageCodes": { + "description": "Optional. The list of all languages supported by this agent (except for the\n`default_language_code`).", + "items": { + "type": "string" + }, + "type": "array" + }, + "timeZone": { + "description": "Required. The time zone of this agent from the\n[time zone database](https://www.iana.org/time-zones), e.g.,\nAmerica/New_York, Europe/Paris.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2BatchCreateEntitiesRequest": { + "description": "The request message for EntityTypes.BatchCreateEntities.", + "id": "GoogleCloudDialogflowV2BatchCreateEntitiesRequest", + "properties": { + "entities": { + "description": "Required. The collection of entities to create.", + "items": { + "$ref": "GoogleCloudDialogflowV2EntityTypeEntity" + }, + "type": "array" + }, + "languageCode": { + "description": "Optional. The language of entity synonyms defined in `entities`. If not\nspecified, the agent's default language is used.\n[More than a dozen\nlanguages](https://dialogflow.com/docs/reference/language) are supported.\nNote: languages must be enabled in the agent, before they can be used.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2BatchDeleteEntitiesRequest": { + "description": "The request message for EntityTypes.BatchDeleteEntities.", + "id": "GoogleCloudDialogflowV2BatchDeleteEntitiesRequest", + "properties": { + "entityValues": { + "description": "Required. The canonical `values` of the entities to delete. Note that\nthese are not fully-qualified names, i.e. they don't start with\n`projects/\u003cProject ID\u003e`.", + "items": { + "type": "string" + }, + "type": "array" + }, + "languageCode": { + "description": "Optional. The language of entity synonyms defined in `entities`. If not\nspecified, the agent's default language is used.\n[More than a dozen\nlanguages](https://dialogflow.com/docs/reference/language) are supported.\nNote: languages must be enabled in the agent, before they can be used.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2BatchDeleteEntityTypesRequest": { + "description": "The request message for EntityTypes.BatchDeleteEntityTypes.", + "id": "GoogleCloudDialogflowV2BatchDeleteEntityTypesRequest", + "properties": { + "entityTypeNames": { + "description": "Required. The names entity types to delete. All names must point to the\nsame agent as `parent`.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2BatchDeleteIntentsRequest": { + "description": "The request message for Intents.BatchDeleteIntents.", + "id": "GoogleCloudDialogflowV2BatchDeleteIntentsRequest", + "properties": { + "intents": { + "description": "Required. The collection of intents to delete. Only intent `name` must be\nfilled in.", + "items": { + "$ref": "GoogleCloudDialogflowV2Intent" + }, + "type": "array" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2BatchUpdateEntitiesRequest": { + "description": "The response message for EntityTypes.BatchCreateEntities.", + "id": "GoogleCloudDialogflowV2BatchUpdateEntitiesRequest", + "properties": { + "entities": { + "description": "Required. The collection of new entities to replace the existing entities.", + "items": { + "$ref": "GoogleCloudDialogflowV2EntityTypeEntity" + }, + "type": "array" + }, + "languageCode": { + "description": "Optional. The language of entity synonyms defined in `entities`. If not\nspecified, the agent's default language is used.\n[More than a dozen\nlanguages](https://dialogflow.com/docs/reference/language) are supported.\nNote: languages must be enabled in the agent, before they can be used.", + "type": "string" + }, + "updateMask": { + "description": "Optional. The mask to control which fields get updated.", + "format": "google-fieldmask", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2BatchUpdateEntityTypesRequest": { + "description": "The request message for EntityTypes.BatchUpdateEntityTypes.", + "id": "GoogleCloudDialogflowV2BatchUpdateEntityTypesRequest", + "properties": { + "entityTypeBatchInline": { + "$ref": "GoogleCloudDialogflowV2EntityTypeBatch", + "description": "The collection of entity type to update or create." + }, + "entityTypeBatchUri": { + "description": "The URI to a Google Cloud Storage file containing entity types to update\nor create. The file format can either be a serialized proto (of\nEntityBatch type) or a JSON object. Note: The URI must start with\n\"gs://\".", + "type": "string" + }, + "languageCode": { + "description": "Optional. The language of entity synonyms defined in `entity_types`. If not\nspecified, the agent's default language is used.\n[More than a dozen\nlanguages](https://dialogflow.com/docs/reference/language) are supported.\nNote: languages must be enabled in the agent, before they can be used.", + "type": "string" + }, + "updateMask": { + "description": "Optional. The mask to control which fields get updated.", + "format": "google-fieldmask", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2BatchUpdateEntityTypesResponse": { + "description": "The response message for EntityTypes.BatchUpdateEntityTypes.", + "id": "GoogleCloudDialogflowV2BatchUpdateEntityTypesResponse", + "properties": { + "entityTypes": { + "description": "The collection of updated or created entity types.", + "items": { + "$ref": "GoogleCloudDialogflowV2EntityType" + }, + "type": "array" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2BatchUpdateIntentsRequest": { + "description": "The request message for Intents.BatchUpdateIntents.", + "id": "GoogleCloudDialogflowV2BatchUpdateIntentsRequest", + "properties": { + "intentBatchInline": { + "$ref": "GoogleCloudDialogflowV2IntentBatch", + "description": "The collection of intents to update or create." + }, + "intentBatchUri": { + "description": "The URI to a Google Cloud Storage file containing intents to update or\ncreate. The file format can either be a serialized proto (of IntentBatch\ntype) or JSON object. Note: The URI must start with \"gs://\".", + "type": "string" + }, + "intentView": { + "description": "Optional. The resource view to apply to the returned intent.", + "enum": [ + "INTENT_VIEW_UNSPECIFIED", + "INTENT_VIEW_FULL" + ], + "enumDescriptions": [ + "Training phrases field is not populated in the response.", + "All fields are populated." + ], + "type": "string" + }, + "languageCode": { + "description": "Optional. The language of training phrases, parameters and rich messages\ndefined in `intents`. If not specified, the agent's default language is\nused. [More than a dozen\nlanguages](https://dialogflow.com/docs/reference/language) are supported.\nNote: languages must be enabled in the agent, before they can be used.", + "type": "string" + }, + "updateMask": { + "description": "Optional. The mask to control which fields get updated.", + "format": "google-fieldmask", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2BatchUpdateIntentsResponse": { + "description": "The response message for Intents.BatchUpdateIntents.", + "id": "GoogleCloudDialogflowV2BatchUpdateIntentsResponse", + "properties": { + "intents": { + "description": "The collection of updated or created intents.", + "items": { + "$ref": "GoogleCloudDialogflowV2Intent" + }, + "type": "array" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2Context": { + "description": "Represents a context.", + "id": "GoogleCloudDialogflowV2Context", + "properties": { + "lifespanCount": { + "description": "Optional. The number of conversational query requests after which the\ncontext expires. If set to `0` (the default) the context expires\nimmediately. Contexts expire automatically after 10 minutes even if there\nare no matching queries.", + "format": "int32", + "type": "integer" + }, + "name": { + "description": "Required. The unique identifier of the context. Format:\n`projects/\u003cProject ID\u003e/agent/sessions/\u003cSession ID\u003e/contexts/\u003cContext ID\u003e`.", + "type": "string" + }, + "parameters": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "description": "Optional. The collection of parameters associated with this context.\nRefer to [this doc](https://dialogflow.com/docs/actions-and-parameters) for\nsyntax.", + "type": "object" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2DetectIntentRequest": { + "description": "The request to detect user's intent.", + "id": "GoogleCloudDialogflowV2DetectIntentRequest", + "properties": { + "inputAudio": { + "description": "Optional. The natural language speech audio to be processed. This field\nshould be populated iff `query_input` is set to an input audio config.\nA single request can contain up to 1 minute of speech audio data.", + "format": "byte", + "type": "string" + }, + "queryInput": { + "$ref": "GoogleCloudDialogflowV2QueryInput", + "description": "Required. The input specification. It can be set to:\n\n1. an audio config\n which instructs the speech recognizer how to process the speech audio,\n\n2. a conversational query in the form of text, or\n\n3. an event that specifies which intent to trigger." + }, + "queryParams": { + "$ref": "GoogleCloudDialogflowV2QueryParameters", + "description": "Optional. The parameters of this query." + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2DetectIntentResponse": { + "description": "The message returned from the DetectIntent method.", + "id": "GoogleCloudDialogflowV2DetectIntentResponse", + "properties": { + "queryResult": { + "$ref": "GoogleCloudDialogflowV2QueryResult", + "description": "The results of the conversational query or event processing." + }, + "responseId": { + "description": "The unique identifier of the response. It can be used to\nlocate a response in the training example set or for reporting issues.", + "type": "string" + }, + "webhookStatus": { + "$ref": "GoogleRpcStatus", + "description": "Specifies the status of the webhook request. `webhook_status`\nis never populated in webhook requests." + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2EntityType": { + "description": "Represents an entity type.\nEntity types serve as a tool for extracting parameter values from natural\nlanguage queries.", + "id": "GoogleCloudDialogflowV2EntityType", + "properties": { + "autoExpansionMode": { + "description": "Optional. Indicates whether the entity type can be automatically\nexpanded.", + "enum": [ + "AUTO_EXPANSION_MODE_UNSPECIFIED", + "AUTO_EXPANSION_MODE_DEFAULT" + ], + "enumDescriptions": [ + "Auto expansion disabled for the entity.", + "Allows an agent to recognize values that have not been explicitly\nlisted in the entity." + ], + "type": "string" + }, + "displayName": { + "description": "Required. The name of the entity.", + "type": "string" + }, + "entities": { + "description": "Optional. The collection of entities associated with the entity type.", + "items": { + "$ref": "GoogleCloudDialogflowV2EntityTypeEntity" + }, + "type": "array" + }, + "kind": { + "description": "Required. Indicates the kind of entity type.", + "enum": [ + "KIND_UNSPECIFIED", + "KIND_MAP", + "KIND_LIST" + ], + "enumDescriptions": [ + "Not specified. This value should be never used.", + "Map entity types allow mapping of a group of synonyms to a canonical\nvalue.", + "List entity types contain a set of entries that do not map to canonical\nvalues. However, list entity types can contain references to other entity\ntypes (with or without aliases)." + ], + "type": "string" + }, + "name": { + "description": "Required for all methods except `create` (`create` populates the name\nautomatically.\nThe unique identifier of the entity type. Format:\n`projects/\u003cProject ID\u003e/agent/entityTypes/\u003cEntity Type ID\u003e`.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2EntityTypeBatch": { + "description": "This message is a wrapper around a collection of entity types.", + "id": "GoogleCloudDialogflowV2EntityTypeBatch", + "properties": { + "entityTypes": { + "description": "A collection of entity types.", + "items": { + "$ref": "GoogleCloudDialogflowV2EntityType" + }, + "type": "array" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2EntityTypeEntity": { + "description": "Optional. Represents an entity.", + "id": "GoogleCloudDialogflowV2EntityTypeEntity", + "properties": { + "synonyms": { + "description": "Required. A collection of synonyms. For `KIND_LIST` entity types this\nmust contain exactly one synonym equal to `value`.", + "items": { + "type": "string" + }, + "type": "array" + }, + "value": { + "description": "Required.\nFor `KIND_MAP` entity types:\n A canonical name to be used in place of synonyms.\nFor `KIND_LIST` entity types:\n A string that can contain references to other entity types (with or\n without aliases).", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2EventInput": { + "description": "Events allow for matching intents by event name instead of the natural\nlanguage input. For instance, input `\u003cevent: { name: “welcome_event”,\nparameters: { name: “Sam” } }\u003e` can trigger a personalized welcome response.\nThe parameter `name` may be used by the agent in the response:\n`“Hello #welcome_event.name! What can I do for you today?”`.", + "id": "GoogleCloudDialogflowV2EventInput", + "properties": { + "languageCode": { + "description": "Required. The language of this query. See [Language\nSupport](https://dialogflow.com/docs/languages) for a list of the\ncurrently supported language codes. Note that queries in the same session\ndo not necessarily need to specify the same language.", + "type": "string" + }, + "name": { + "description": "Required. The unique identifier of the event.", + "type": "string" + }, + "parameters": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "description": "Optional. The collection of parameters associated with the event.", + "type": "object" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2ExportAgentRequest": { + "description": "The request message for Agents.ExportAgent.", + "id": "GoogleCloudDialogflowV2ExportAgentRequest", + "properties": { + "agentUri": { + "description": "Optional. The Google Cloud Storage URI to export the agent to.\nNote: The URI must start with\n\"gs://\". If left unspecified, the serialized agent is returned inline.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2ExportAgentResponse": { + "description": "The response message for Agents.ExportAgent.", + "id": "GoogleCloudDialogflowV2ExportAgentResponse", + "properties": { + "agentContent": { + "description": "The exported agent.\n\nExample for how to export an agent to a zip file via a command line:\n\ncurl \\\n 'https://dialogflow.googleapis.com/v2/projects/\u003cproject_name\u003e/agent:export'\\\n -X POST \\\n -H 'Authorization: Bearer '$(gcloud auth print-access-token) \\\n -H 'Accept: application/json' \\\n -H 'Content-Type: application/json' \\\n --compressed \\\n --data-binary '{}' \\\n| grep agentContent | sed -e 's/.*\"agentContent\": \"\\([^\"]*\\)\".*/\\1/' \\\n| base64 --decode \u003e \u003cagent zip file\u003e", + "format": "byte", + "type": "string" + }, + "agentUri": { + "description": "The URI to a file containing the exported agent. This field is populated\nonly if `agent_uri` is specified in `ExportAgentRequest`.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2ImportAgentRequest": { + "description": "The request message for Agents.ImportAgent.", + "id": "GoogleCloudDialogflowV2ImportAgentRequest", + "properties": { + "agentContent": { + "description": "The agent to import.\n\nExample for how to import an agent via the command line:\n\ncurl \\\n 'https://dialogflow.googleapis.com/v2/projects/\u003cproject_name\u003e/agent:import\\\n -X POST \\\n -H 'Authorization: Bearer '$(gcloud auth print-access-token) \\\n -H 'Accept: application/json' \\\n -H 'Content-Type: application/json' \\\n --compressed \\\n --data-binary \"{\n 'agentContent': '$(cat \u003cagent zip file\u003e | base64 -w 0)'\n }\"", + "format": "byte", + "type": "string" + }, + "agentUri": { + "description": "The URI to a Google Cloud Storage file containing the agent to import.\nNote: The URI must start with \"gs://\".", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2InputAudioConfig": { + "description": "Instructs the speech recognizer how to process the audio content.", + "id": "GoogleCloudDialogflowV2InputAudioConfig", + "properties": { + "audioEncoding": { + "description": "Required. Audio encoding of the audio content to process.", + "enum": [ + "AUDIO_ENCODING_UNSPECIFIED", + "AUDIO_ENCODING_LINEAR_16", + "AUDIO_ENCODING_FLAC", + "AUDIO_ENCODING_MULAW", + "AUDIO_ENCODING_AMR", + "AUDIO_ENCODING_AMR_WB", + "AUDIO_ENCODING_OGG_OPUS", + "AUDIO_ENCODING_SPEEX_WITH_HEADER_BYTE" + ], + "enumDescriptions": [ + "Not specified.", + "Uncompressed 16-bit signed little-endian samples (Linear PCM).", + "[`FLAC`](https://xiph.org/flac/documentation.html) (Free Lossless Audio\nCodec) is the recommended encoding because it is lossless (therefore\nrecognition is not compromised) and requires only about half the\nbandwidth of `LINEAR16`. `FLAC` stream encoding supports 16-bit and\n24-bit samples, however, not all fields in `STREAMINFO` are supported.", + "8-bit samples that compand 14-bit audio samples using G.711 PCMU/mu-law.", + "Adaptive Multi-Rate Narrowband codec. `sample_rate_hertz` must be 8000.", + "Adaptive Multi-Rate Wideband codec. `sample_rate_hertz` must be 16000.", + "Opus encoded audio frames in Ogg container\n([OggOpus](https://wiki.xiph.org/OggOpus)).\n`sample_rate_hertz` must be 16000.", + "Although the use of lossy encodings is not recommended, if a very low\nbitrate encoding is required, `OGG_OPUS` is highly preferred over\nSpeex encoding. The [Speex](https://speex.org/) encoding supported by\nDialogflow API has a header byte in each block, as in MIME type\n`audio/x-speex-with-header-byte`.\nIt is a variant of the RTP Speex encoding defined in\n[RFC 5574](https://tools.ietf.org/html/rfc5574).\nThe stream is a sequence of blocks, one block per RTP packet. Each block\nstarts with a byte containing the length of the block, in bytes, followed\nby one or more frames of Speex data, padded to an integral number of\nbytes (octets) as specified in RFC 5574. In other words, each RTP header\nis replaced with a single byte containing the block length. Only Speex\nwideband is supported. `sample_rate_hertz` must be 16000." + ], + "type": "string" + }, + "languageCode": { + "description": "Required. The language of the supplied audio. Dialogflow does not do\ntranslations. See [Language\nSupport](https://dialogflow.com/docs/languages) for a list of the\ncurrently supported language codes. Note that queries in the same session\ndo not necessarily need to specify the same language.", + "type": "string" + }, + "phraseHints": { + "description": "Optional. The collection of phrase hints which are used to boost accuracy\nof speech recognition.\nRefer to [Cloud Speech API documentation](/speech/docs/basics#phrase-hints)\nfor more details.", + "items": { + "type": "string" + }, + "type": "array" + }, + "sampleRateHertz": { + "description": "Required. Sample rate (in Hertz) of the audio content sent in the query.\nRefer to [Cloud Speech API documentation](/speech/docs/basics) for more\ndetails.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2Intent": { + "description": "Represents an intent.\nIntents convert a number of user expressions or patterns into an action. An\naction is an extraction of a user command or sentence semantics.", + "id": "GoogleCloudDialogflowV2Intent", + "properties": { + "action": { + "description": "Optional. The name of the action associated with the intent.", + "type": "string" + }, + "defaultResponsePlatforms": { + "description": "Optional. The list of platforms for which the first response will be\ntaken from among the messages assigned to the DEFAULT_PLATFORM.", + "enumDescriptions": [ + "Not specified.", + "Facebook.", + "Slack.", + "Telegram.", + "Kik.", + "Skype.", + "Line.", + "Viber.", + "Actions on Google." + ], + "items": { + "enum": [ + "PLATFORM_UNSPECIFIED", + "FACEBOOK", + "SLACK", + "TELEGRAM", + "KIK", + "SKYPE", + "LINE", + "VIBER", + "ACTIONS_ON_GOOGLE" + ], + "type": "string" + }, + "type": "array" + }, + "displayName": { + "description": "Required. The name of this intent.", + "type": "string" + }, + "events": { + "description": "Optional. The collection of event names that trigger the intent.\nIf the collection of input contexts is not empty, all of the contexts must\nbe present in the active user session for an event to trigger this intent.", + "items": { + "type": "string" + }, + "type": "array" + }, + "followupIntentInfo": { + "description": "Optional. Collection of information about all followup intents that have\nname of this intent as a root_name.", + "items": { + "$ref": "GoogleCloudDialogflowV2IntentFollowupIntentInfo" + }, + "type": "array" + }, + "inputContextNames": { + "description": "Optional. The list of context names required for this intent to be\ntriggered.\nFormat: `projects/\u003cProject ID\u003e/agent/sessions/-/contexts/\u003cContext ID\u003e`.", + "items": { + "type": "string" + }, + "type": "array" + }, + "isFallback": { + "description": "Optional. Indicates whether this is a fallback intent.", + "type": "boolean" + }, + "messages": { + "description": "Optional. The collection of rich messages corresponding to the\n`Response` field in the Dialogflow console.", + "items": { + "$ref": "GoogleCloudDialogflowV2IntentMessage" + }, + "type": "array" + }, + "mlDisabled": { + "description": "Optional. Indicates whether Machine Learning is disabled for the intent.\nNote: If `ml_diabled` setting is set to true, then this intent is not\ntaken into account during inference in `ML ONLY` match mode. Also,\nauto-markup in the UI is turned off.", + "type": "boolean" + }, + "name": { + "description": "Required for all methods except `create` (`create` populates the name\nautomatically.\nThe unique identifier of this intent.\nFormat: `projects/\u003cProject ID\u003e/agent/intents/\u003cIntent ID\u003e`.", + "type": "string" + }, + "outputContexts": { + "description": "Optional. The collection of contexts that are activated when the intent\nis matched. Context messages in this collection should not set the\nparameters field. Setting the `lifespan_count` to 0 will reset the context\nwhen the intent is matched.\nFormat: `projects/\u003cProject ID\u003e/agent/sessions/-/contexts/\u003cContext ID\u003e`.", + "items": { + "$ref": "GoogleCloudDialogflowV2Context" + }, + "type": "array" + }, + "parameters": { + "description": "Optional. The collection of parameters associated with the intent.", + "items": { + "$ref": "GoogleCloudDialogflowV2IntentParameter" + }, + "type": "array" + }, + "parentFollowupIntentName": { + "description": "The unique identifier of the parent intent in the chain of followup\nintents.\nIt identifies the parent followup intent.\nFormat: `projects/\u003cProject ID\u003e/agent/intents/\u003cIntent ID\u003e`.", + "type": "string" + }, + "priority": { + "description": "Optional. The priority of this intent. Higher numbers represent higher\npriorities. Zero or negative numbers mean that the intent is disabled.", + "format": "int32", + "type": "integer" + }, + "resetContexts": { + "description": "Optional. Indicates whether to delete all contexts in the current\nsession when this intent is matched.", + "type": "boolean" + }, + "rootFollowupIntentName": { + "description": "The unique identifier of the root intent in the chain of followup intents.\nIt identifies the correct followup intents chain for this intent.\nFormat: `projects/\u003cProject ID\u003e/agent/intents/\u003cIntent ID\u003e`.", + "type": "string" + }, + "trainingPhrases": { + "description": "Optional. The collection of examples/templates that the agent is\ntrained on.", + "items": { + "$ref": "GoogleCloudDialogflowV2IntentTrainingPhrase" + }, + "type": "array" + }, + "webhookState": { + "description": "Required. Indicates whether webhooks are enabled for the intent.", + "enum": [ + "WEBHOOK_STATE_UNSPECIFIED", + "WEBHOOK_STATE_ENABLED", + "WEBHOOK_STATE_ENABLED_FOR_SLOT_FILLING" + ], + "enumDescriptions": [ + "Webhook is disabled in the agent and in the intent.", + "Webhook is enabled in the agent and in the intent.", + "Webhook is enabled in the agent and in the intent. Also, each slot\nfilling prompt is forwarded to the webhook." + ], + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2IntentBatch": { + "description": "This message is a wrapper around a collection of intents.", + "id": "GoogleCloudDialogflowV2IntentBatch", + "properties": { + "intents": { + "description": "A collection of intents.", + "items": { + "$ref": "GoogleCloudDialogflowV2Intent" + }, + "type": "array" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2IntentFollowupIntentInfo": { + "description": "Represents a single followup intent in the chain.", + "id": "GoogleCloudDialogflowV2IntentFollowupIntentInfo", + "properties": { + "followupIntentName": { + "description": "The unique identifier of the followup intent.\nFormat: `projects/\u003cProject ID\u003e/agent/intents/\u003cIntent ID\u003e`.", + "type": "string" + }, + "parentFollowupIntentName": { + "description": "The unique identifier of the followup intent parent.\nFormat: `projects/\u003cProject ID\u003e/agent/intents/\u003cIntent ID\u003e`.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2IntentMessage": { + "description": "Corresponds to the `Response` field in the Dialogflow console.", + "id": "GoogleCloudDialogflowV2IntentMessage", + "properties": { + "basicCard": { + "$ref": "GoogleCloudDialogflowV2IntentMessageBasicCard", + "description": "The basic card response for Actions on Google." + }, + "card": { + "$ref": "GoogleCloudDialogflowV2IntentMessageCard", + "description": "The card response." + }, + "carouselSelect": { + "$ref": "GoogleCloudDialogflowV2IntentMessageCarouselSelect", + "description": "The carousel card response for Actions on Google." + }, + "image": { + "$ref": "GoogleCloudDialogflowV2IntentMessageImage", + "description": "The image response." + }, + "linkOutSuggestion": { + "$ref": "GoogleCloudDialogflowV2IntentMessageLinkOutSuggestion", + "description": "The link out suggestion chip for Actions on Google." + }, + "listSelect": { + "$ref": "GoogleCloudDialogflowV2IntentMessageListSelect", + "description": "The list card response for Actions on Google." + }, + "payload": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "description": "The response containing a custom payload.", + "type": "object" + }, + "platform": { + "description": "Optional. The platform that this message is intended for.", + "enum": [ + "PLATFORM_UNSPECIFIED", + "FACEBOOK", + "SLACK", + "TELEGRAM", + "KIK", + "SKYPE", + "LINE", + "VIBER", + "ACTIONS_ON_GOOGLE" + ], + "enumDescriptions": [ + "Not specified.", + "Facebook.", + "Slack.", + "Telegram.", + "Kik.", + "Skype.", + "Line.", + "Viber.", + "Actions on Google." + ], + "type": "string" + }, + "quickReplies": { + "$ref": "GoogleCloudDialogflowV2IntentMessageQuickReplies", + "description": "The quick replies response." + }, + "simpleResponses": { + "$ref": "GoogleCloudDialogflowV2IntentMessageSimpleResponses", + "description": "The voice and text-only responses for Actions on Google." + }, + "suggestions": { + "$ref": "GoogleCloudDialogflowV2IntentMessageSuggestions", + "description": "The suggestion chips for Actions on Google." + }, + "text": { + "$ref": "GoogleCloudDialogflowV2IntentMessageText", + "description": "The text response." + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2IntentMessageBasicCard": { + "description": "The basic card message. Useful for displaying information.", + "id": "GoogleCloudDialogflowV2IntentMessageBasicCard", + "properties": { + "buttons": { + "description": "Optional. The collection of card buttons.", + "items": { + "$ref": "GoogleCloudDialogflowV2IntentMessageBasicCardButton" + }, + "type": "array" + }, + "formattedText": { + "description": "Required, unless image is present. The body text of the card.", + "type": "string" + }, + "image": { + "$ref": "GoogleCloudDialogflowV2IntentMessageImage", + "description": "Optional. The image for the card." + }, + "subtitle": { + "description": "Optional. The subtitle of the card.", + "type": "string" + }, + "title": { + "description": "Optional. The title of the card.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2IntentMessageBasicCardButton": { + "description": "The button object that appears at the bottom of a card.", + "id": "GoogleCloudDialogflowV2IntentMessageBasicCardButton", + "properties": { + "openUriAction": { + "$ref": "GoogleCloudDialogflowV2IntentMessageBasicCardButtonOpenUriAction", + "description": "Required. Action to take when a user taps on the button." + }, + "title": { + "description": "Required. The title of the button.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2IntentMessageBasicCardButtonOpenUriAction": { + "description": "Opens the given URI.", + "id": "GoogleCloudDialogflowV2IntentMessageBasicCardButtonOpenUriAction", + "properties": { + "uri": { + "description": "Required. The HTTP or HTTPS scheme URI.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2IntentMessageCard": { + "description": "The card response message.", + "id": "GoogleCloudDialogflowV2IntentMessageCard", + "properties": { + "buttons": { + "description": "Optional. The collection of card buttons.", + "items": { + "$ref": "GoogleCloudDialogflowV2IntentMessageCardButton" + }, + "type": "array" + }, + "imageUri": { + "description": "Optional. The public URI to an image file for the card.", + "type": "string" + }, + "subtitle": { + "description": "Optional. The subtitle of the card.", + "type": "string" + }, + "title": { + "description": "Optional. The title of the card.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2IntentMessageCardButton": { + "description": "Optional. Contains information about a button.", + "id": "GoogleCloudDialogflowV2IntentMessageCardButton", + "properties": { + "postback": { + "description": "Optional. The text to send back to the Dialogflow API or a URI to\nopen.", + "type": "string" + }, + "text": { + "description": "Optional. The text to show on the button.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2IntentMessageCarouselSelect": { + "description": "The card for presenting a carousel of options to select from.", + "id": "GoogleCloudDialogflowV2IntentMessageCarouselSelect", + "properties": { + "items": { + "description": "Required. Carousel items.", + "items": { + "$ref": "GoogleCloudDialogflowV2IntentMessageCarouselSelectItem" + }, + "type": "array" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2IntentMessageCarouselSelectItem": { + "description": "An item in the carousel.", + "id": "GoogleCloudDialogflowV2IntentMessageCarouselSelectItem", + "properties": { + "description": { + "description": "Optional. The body text of the card.", + "type": "string" + }, + "image": { + "$ref": "GoogleCloudDialogflowV2IntentMessageImage", + "description": "Optional. The image to display." + }, + "info": { + "$ref": "GoogleCloudDialogflowV2IntentMessageSelectItemInfo", + "description": "Required. Additional info about the option item." + }, + "title": { + "description": "Required. Title of the carousel item.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2IntentMessageImage": { + "description": "The image response message.", + "id": "GoogleCloudDialogflowV2IntentMessageImage", + "properties": { + "accessibilityText": { + "description": "Optional. A text description of the image to be used for accessibility,\ne.g., screen readers.", + "type": "string" + }, + "imageUri": { + "description": "Optional. The public URI to an image file.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2IntentMessageLinkOutSuggestion": { + "description": "The suggestion chip message that allows the user to jump out to the app\nor website associated with this agent.", + "id": "GoogleCloudDialogflowV2IntentMessageLinkOutSuggestion", + "properties": { + "destinationName": { + "description": "Required. The name of the app or site this chip is linking to.", + "type": "string" + }, + "uri": { + "description": "Required. The URI of the app or site to open when the user taps the\nsuggestion chip.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2IntentMessageListSelect": { + "description": "The card for presenting a list of options to select from.", + "id": "GoogleCloudDialogflowV2IntentMessageListSelect", + "properties": { + "items": { + "description": "Required. List items.", + "items": { + "$ref": "GoogleCloudDialogflowV2IntentMessageListSelectItem" + }, + "type": "array" + }, + "title": { + "description": "Optional. The overall title of the list.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2IntentMessageListSelectItem": { + "description": "An item in the list.", + "id": "GoogleCloudDialogflowV2IntentMessageListSelectItem", + "properties": { + "description": { + "description": "Optional. The main text describing the item.", + "type": "string" + }, + "image": { + "$ref": "GoogleCloudDialogflowV2IntentMessageImage", + "description": "Optional. The image to display." + }, + "info": { + "$ref": "GoogleCloudDialogflowV2IntentMessageSelectItemInfo", + "description": "Required. Additional information about this option." + }, + "title": { + "description": "Required. The title of the list item.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2IntentMessageQuickReplies": { + "description": "The quick replies response message.", + "id": "GoogleCloudDialogflowV2IntentMessageQuickReplies", + "properties": { + "quickReplies": { + "description": "Optional. The collection of quick replies.", + "items": { + "type": "string" + }, + "type": "array" + }, + "title": { + "description": "Optional. The title of the collection of quick replies.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2IntentMessageSelectItemInfo": { + "description": "Additional info about the select item for when it is triggered in a\ndialog.", + "id": "GoogleCloudDialogflowV2IntentMessageSelectItemInfo", + "properties": { + "key": { + "description": "Required. A unique key that will be sent back to the agent if this\nresponse is given.", + "type": "string" + }, + "synonyms": { + "description": "Optional. A list of synonyms that can also be used to trigger this\nitem in dialog.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2IntentMessageSimpleResponse": { + "description": "The simple response message containing speech or text.", + "id": "GoogleCloudDialogflowV2IntentMessageSimpleResponse", + "properties": { + "displayText": { + "description": "Optional. The text to display.", + "type": "string" + }, + "ssml": { + "description": "One of text_to_speech or ssml must be provided. Structured spoken\nresponse to the user in the SSML format. Mutually exclusive with\ntext_to_speech.", + "type": "string" + }, + "textToSpeech": { + "description": "One of text_to_speech or ssml must be provided. The plain text of the\nspeech output. Mutually exclusive with ssml.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2IntentMessageSimpleResponses": { + "description": "The collection of simple response candidates.\nThis message in `QueryResult.fulfillment_messages` and\n`WebhookResponse.fulfillment_messages` should contain only one\n`SimpleResponse`.", + "id": "GoogleCloudDialogflowV2IntentMessageSimpleResponses", + "properties": { + "simpleResponses": { + "description": "Required. The list of simple responses.", + "items": { + "$ref": "GoogleCloudDialogflowV2IntentMessageSimpleResponse" + }, + "type": "array" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2IntentMessageSuggestion": { + "description": "The suggestion chip message that the user can tap to quickly post a reply\nto the conversation.", + "id": "GoogleCloudDialogflowV2IntentMessageSuggestion", + "properties": { + "title": { + "description": "Required. The text shown the in the suggestion chip.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2IntentMessageSuggestions": { + "description": "The collection of suggestions.", + "id": "GoogleCloudDialogflowV2IntentMessageSuggestions", + "properties": { + "suggestions": { + "description": "Required. The list of suggested replies.", + "items": { + "$ref": "GoogleCloudDialogflowV2IntentMessageSuggestion" + }, + "type": "array" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2IntentMessageText": { + "description": "The text response message.", + "id": "GoogleCloudDialogflowV2IntentMessageText", + "properties": { + "text": { + "description": "Optional. The collection of the agent's responses.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2IntentParameter": { + "description": "Represents intent parameters.", + "id": "GoogleCloudDialogflowV2IntentParameter", + "properties": { + "defaultValue": { + "description": "Optional. The default value to use when the `value` yields an empty\nresult.\nDefault values can be extracted from contexts by using the following\nsyntax: `#context_name.parameter_name`.", + "type": "string" + }, + "displayName": { + "description": "Required. The name of the parameter.", + "type": "string" + }, + "entityTypeDisplayName": { + "description": "Optional. The name of the entity type, prefixed with `@`, that\ndescribes values of the parameter. If the parameter is\nrequired, this must be provided.", + "type": "string" + }, + "isList": { + "description": "Optional. Indicates whether the parameter represents a list of values.", + "type": "boolean" + }, + "mandatory": { + "description": "Optional. Indicates whether the parameter is required. That is,\nwhether the intent cannot be completed without collecting the parameter\nvalue.", + "type": "boolean" + }, + "name": { + "description": "The unique identifier of this parameter.", + "type": "string" + }, + "prompts": { + "description": "Optional. The collection of prompts that the agent can present to the\nuser in order to collect value for the parameter.", + "items": { + "type": "string" + }, + "type": "array" + }, + "value": { + "description": "Optional. The definition of the parameter value. It can be:\n- a constant string,\n- a parameter value defined as `$parameter_name`,\n- an original parameter value defined as `$parameter_name.original`,\n- a parameter value from some context defined as\n `#context_name.parameter_name`.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2IntentTrainingPhrase": { + "description": "Represents an example or template that the agent is trained on.", + "id": "GoogleCloudDialogflowV2IntentTrainingPhrase", + "properties": { + "name": { + "description": "Required. The unique identifier of this training phrase.", + "type": "string" + }, + "parts": { + "description": "Required. The collection of training phrase parts (can be annotated).\nFields: `entity_type`, `alias` and `user_defined` should be populated\nonly for the annotated parts of the training phrase.", + "items": { + "$ref": "GoogleCloudDialogflowV2IntentTrainingPhrasePart" + }, + "type": "array" + }, + "timesAddedCount": { + "description": "Optional. Indicates how many times this example or template was added to\nthe intent. Each time a developer adds an existing sample by editing an\nintent or training, this counter is increased.", + "format": "int32", + "type": "integer" + }, + "type": { + "description": "Required. The type of the training phrase.", + "enum": [ + "TYPE_UNSPECIFIED", + "EXAMPLE", + "TEMPLATE" + ], + "enumDescriptions": [ + "Not specified. This value should never be used.", + "Examples do not contain @-prefixed entity type names, but example parts\ncan be annotated with entity types.", + "Templates are not annotated with entity types, but they can contain\n@-prefixed entity type names as substrings." + ], + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2IntentTrainingPhrasePart": { + "description": "Represents a part of a training phrase.", + "id": "GoogleCloudDialogflowV2IntentTrainingPhrasePart", + "properties": { + "alias": { + "description": "Optional. The parameter name for the value extracted from the\nannotated part of the example.", + "type": "string" + }, + "entityType": { + "description": "Optional. The entity type name prefixed with `@`. This field is\nrequired for the annotated part of the text and applies only to\nexamples.", + "type": "string" + }, + "text": { + "description": "Required. The text corresponding to the example or template,\nif there are no annotations. For\nannotated examples, it is the text for one of the example's parts.", + "type": "string" + }, + "userDefined": { + "description": "Optional. Indicates whether the text was manually annotated by the\ndeveloper.", + "type": "boolean" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2ListContextsResponse": { + "description": "The response message for Contexts.ListContexts.", + "id": "GoogleCloudDialogflowV2ListContextsResponse", + "properties": { + "contexts": { + "description": "The list of contexts. There will be a maximum number of items\nreturned based on the page_size field in the request.", + "items": { + "$ref": "GoogleCloudDialogflowV2Context" + }, + "type": "array" + }, + "nextPageToken": { + "description": "Token to retrieve the next page of results, or empty if there are no\nmore results in the list.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2ListEntityTypesResponse": { + "description": "The response message for EntityTypes.ListEntityTypes.", + "id": "GoogleCloudDialogflowV2ListEntityTypesResponse", + "properties": { + "entityTypes": { + "description": "The list of agent entity types. There will be a maximum number of items\nreturned based on the page_size field in the request.", + "items": { + "$ref": "GoogleCloudDialogflowV2EntityType" + }, + "type": "array" + }, + "nextPageToken": { + "description": "Token to retrieve the next page of results, or empty if there are no\nmore results in the list.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2ListIntentsResponse": { + "description": "The response message for Intents.ListIntents.", + "id": "GoogleCloudDialogflowV2ListIntentsResponse", + "properties": { + "intents": { + "description": "The list of agent intents. There will be a maximum number of items\nreturned based on the page_size field in the request.", + "items": { + "$ref": "GoogleCloudDialogflowV2Intent" + }, + "type": "array" + }, + "nextPageToken": { + "description": "Token to retrieve the next page of results, or empty if there are no\nmore results in the list.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2ListSessionEntityTypesResponse": { + "description": "The response message for SessionEntityTypes.ListSessionEntityTypes.", + "id": "GoogleCloudDialogflowV2ListSessionEntityTypesResponse", + "properties": { + "nextPageToken": { + "description": "Token to retrieve the next page of results, or empty if there are no\nmore results in the list.", + "type": "string" + }, + "sessionEntityTypes": { + "description": "The list of session entity types. There will be a maximum number of items\nreturned based on the page_size field in the request.", + "items": { + "$ref": "GoogleCloudDialogflowV2SessionEntityType" + }, + "type": "array" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2OriginalDetectIntentRequest": { + "description": "Represents the contents of the original request that was passed to\nthe `[Streaming]DetectIntent` call.", + "id": "GoogleCloudDialogflowV2OriginalDetectIntentRequest", + "properties": { + "payload": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "description": "Optional. This field is set to the value of `QueryParameters.payload` field\npassed in the request.", + "type": "object" + }, + "source": { + "description": "The source of this request, e.g., `google`, `facebook`, `slack`. It is set\nby Dialogflow-owned servers. Possible values of this field correspond to\nIntent.Message.Platform.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2QueryInput": { + "description": "Represents the query input. It can contain either:\n\n1. An audio config which\n instructs the speech recognizer how to process the speech audio.\n\n2. A conversational query in the form of text,.\n\n3. An event that specifies which intent to trigger.", + "id": "GoogleCloudDialogflowV2QueryInput", + "properties": { + "audioConfig": { + "$ref": "GoogleCloudDialogflowV2InputAudioConfig", + "description": "Instructs the speech recognizer how to process the speech audio." + }, + "event": { + "$ref": "GoogleCloudDialogflowV2EventInput", + "description": "The event to be processed." + }, + "text": { + "$ref": "GoogleCloudDialogflowV2TextInput", + "description": "The natural language text to be processed." + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2QueryParameters": { + "description": "Represents the parameters of the conversational query.", + "id": "GoogleCloudDialogflowV2QueryParameters", + "properties": { + "contexts": { + "description": "Optional. The collection of contexts to be activated before this query is\nexecuted.", + "items": { + "$ref": "GoogleCloudDialogflowV2Context" + }, + "type": "array" + }, + "geoLocation": { + "$ref": "GoogleTypeLatLng", + "description": "Optional. The geo location of this conversational query." + }, + "payload": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "description": "Optional. This field can be used to pass custom data into the webhook\nassociated with the agent. Arbitrary JSON objects are supported.", + "type": "object" + }, + "resetContexts": { + "description": "Optional. Specifies whether to delete all contexts in the current session\nbefore the new ones are activated.", + "type": "boolean" + }, + "sessionEntityTypes": { + "description": "Optional. The collection of session entity types to replace or extend\ndeveloper entities with for this query only. The entity synonyms apply\nto all languages.", + "items": { + "$ref": "GoogleCloudDialogflowV2SessionEntityType" + }, + "type": "array" + }, + "timeZone": { + "description": "Optional. The time zone of this conversational query from the\n[time zone database](https://www.iana.org/time-zones), e.g.,\nAmerica/New_York, Europe/Paris. If not provided, the time zone specified in\nagent settings is used.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2QueryResult": { + "description": "Represents the result of conversational query or event processing.", + "id": "GoogleCloudDialogflowV2QueryResult", + "properties": { + "action": { + "description": "The action name from the matched intent.", + "type": "string" + }, + "allRequiredParamsPresent": { + "description": "This field is set to:\n- `false` if the matched intent has required parameters and not all of\n the required parameter values have been collected.\n- `true` if all required parameter values have been collected, or if the\n matched intent doesn't contain any required parameters.", + "type": "boolean" + }, + "diagnosticInfo": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "description": "The free-form diagnostic info. For example, this field\ncould contain webhook call latency.", + "type": "object" + }, + "fulfillmentMessages": { + "description": "The collection of rich messages to present to the user.", + "items": { + "$ref": "GoogleCloudDialogflowV2IntentMessage" + }, + "type": "array" + }, + "fulfillmentText": { + "description": "The text to be pronounced to the user or shown on the screen.", + "type": "string" + }, + "intent": { + "$ref": "GoogleCloudDialogflowV2Intent", + "description": "The intent that matched the conversational query. Some, not\nall fields are filled in this message, including but not limited to:\n`name`, `display_name` and `webhook_state`." + }, + "intentDetectionConfidence": { + "description": "The intent detection confidence. Values range from 0.0\n(completely uncertain) to 1.0 (completely certain).", + "format": "float", + "type": "number" + }, + "languageCode": { + "description": "The language that was triggered during intent detection.\nSee [Language Support](https://dialogflow.com/docs/reference/language)\nfor a list of the currently supported language codes.", + "type": "string" + }, + "outputContexts": { + "description": "The collection of output contexts. If applicable,\n`output_contexts.parameters` contains entries with name\n`\u003cparameter name\u003e.original` containing the original parameter values\nbefore the query.", + "items": { + "$ref": "GoogleCloudDialogflowV2Context" + }, + "type": "array" + }, + "parameters": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "description": "The collection of extracted parameters.", + "type": "object" + }, + "queryText": { + "description": "The original conversational query text:\n- If natural language text was provided as input, `query_text` contains\n a copy of the input.\n- If natural language speech audio was provided as input, `query_text`\n contains the speech recognition result. If speech recognizer produced\n multiple alternatives, a particular one is picked.\n- If an event was provided as input, `query_text` is not set.", + "type": "string" + }, + "speechRecognitionConfidence": { + "description": "The Speech recognition confidence between 0.0 and 1.0. A higher number\nindicates an estimated greater likelihood that the recognized words are\ncorrect. The default of 0.0 is a sentinel value indicating that confidence\nwas not set.\n\nYou should not rely on this field as it isn't guaranteed to be accurate, or\neven set. In particular this field isn't set in Webhook calls and for\nStreamingDetectIntent since the streaming endpoint has separate confidence\nestimates per portion of the audio in StreamingRecognitionResult.", + "format": "float", + "type": "number" + }, + "webhookPayload": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "description": "If the query was fulfilled by a webhook call, this field is set to the\nvalue of the `payload` field returned in the webhook response.", + "type": "object" + }, + "webhookSource": { + "description": "If the query was fulfilled by a webhook call, this field is set to the\nvalue of the `source` field returned in the webhook response.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2RestoreAgentRequest": { + "description": "The request message for Agents.RestoreAgent.", + "id": "GoogleCloudDialogflowV2RestoreAgentRequest", + "properties": { + "agentContent": { + "description": "The agent to restore.\n\nExample for how to restore an agent via the command line:\n\ncurl \\\n 'https://dialogflow.googleapis.com/v2/projects/\u003cproject_name\u003e/agent:restore\\\n -X POST \\\n -H 'Authorization: Bearer '$(gcloud auth print-access-token) \\\n -H 'Accept: application/json' \\\n -H 'Content-Type: application/json' \\\n --compressed \\\n --data-binary \"{\n 'agentContent': '$(cat \u003cagent zip file\u003e | base64 -w 0)'\n }\" \\", + "format": "byte", + "type": "string" + }, + "agentUri": { + "description": "The URI to a Google Cloud Storage file containing the agent to restore.\nNote: The URI must start with \"gs://\".", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2SearchAgentsResponse": { + "description": "The response message for Agents.SearchAgents.", + "id": "GoogleCloudDialogflowV2SearchAgentsResponse", + "properties": { + "agents": { + "description": "The list of agents. There will be a maximum number of items returned based\non the page_size field in the request.", + "items": { + "$ref": "GoogleCloudDialogflowV2Agent" + }, + "type": "array" + }, + "nextPageToken": { + "description": "Token to retrieve the next page of results, or empty if there are no\nmore results in the list.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2SessionEntityType": { + "description": "Represents a session entity type.\n\nExtends or replaces a developer entity type at the user session level (we\nrefer to the entity types defined at the agent level as \"developer entity\ntypes\").\n\nNote: session entity types apply to all queries, regardless of the language.", + "id": "GoogleCloudDialogflowV2SessionEntityType", + "properties": { + "entities": { + "description": "Required. The collection of entities associated with this session entity\ntype.", + "items": { + "$ref": "GoogleCloudDialogflowV2EntityTypeEntity" + }, + "type": "array" + }, + "entityOverrideMode": { + "description": "Required. Indicates whether the additional data should override or\nsupplement the developer entity type definition.", + "enum": [ + "ENTITY_OVERRIDE_MODE_UNSPECIFIED", + "ENTITY_OVERRIDE_MODE_OVERRIDE", + "ENTITY_OVERRIDE_MODE_SUPPLEMENT" + ], + "enumDescriptions": [ + "Not specified. This value should be never used.", + "The collection of session entities overrides the collection of entities\nin the corresponding developer entity type.", + "The collection of session entities extends the collection of entities in\nthe corresponding developer entity type.\nCalls to `ListSessionEntityTypes`, `GetSessionEntityType`,\n`CreateSessionEntityType` and `UpdateSessionEntityType` return the full\ncollection of entities from the developer entity type in the agent's\ndefault language and the session entity type." + ], + "type": "string" + }, + "name": { + "description": "Required. The unique identifier of this session entity type. Format:\n`projects/\u003cProject ID\u003e/agent/sessions/\u003cSession ID\u003e/entityTypes/\u003cEntity Type\nDisplay Name\u003e`.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2TextInput": { + "description": "Represents the natural language text to be processed.", + "id": "GoogleCloudDialogflowV2TextInput", + "properties": { + "languageCode": { + "description": "Required. The language of this conversational query. See [Language\nSupport](https://dialogflow.com/docs/languages) for a list of the\ncurrently supported language codes. Note that queries in the same session\ndo not necessarily need to specify the same language.", + "type": "string" + }, + "text": { + "description": "Required. The UTF-8 encoded natural language text to be processed.\nText length must not exceed 256 bytes.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2TrainAgentRequest": { + "description": "The request message for Agents.TrainAgent.", + "id": "GoogleCloudDialogflowV2TrainAgentRequest", + "properties": {}, + "type": "object" + }, + "GoogleCloudDialogflowV2WebhookRequest": { + "description": "The request message for a webhook call.", + "id": "GoogleCloudDialogflowV2WebhookRequest", + "properties": { + "originalDetectIntentRequest": { + "$ref": "GoogleCloudDialogflowV2OriginalDetectIntentRequest", + "description": "Optional. The contents of the original request that was passed to\n`[Streaming]DetectIntent` call." + }, + "queryResult": { + "$ref": "GoogleCloudDialogflowV2QueryResult", + "description": "The result of the conversational query or event processing. Contains the\nsame value as `[Streaming]DetectIntentResponse.query_result`." + }, + "responseId": { + "description": "The unique identifier of the response. Contains the same value as\n`[Streaming]DetectIntentResponse.response_id`.", + "type": "string" + }, + "session": { + "description": "The unique identifier of detectIntent request session.\nCan be used to identify end-user inside webhook implementation.\nFormat: `projects/\u003cProject ID\u003e/agent/sessions/\u003cSession ID\u003e`.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2WebhookResponse": { + "description": "The response message for a webhook call.", + "id": "GoogleCloudDialogflowV2WebhookResponse", + "properties": { + "followupEventInput": { + "$ref": "GoogleCloudDialogflowV2EventInput", + "description": "Optional. Makes the platform immediately invoke another `DetectIntent` call\ninternally with the specified event as input." + }, + "fulfillmentMessages": { + "description": "Optional. The collection of rich messages to present to the user. This\nvalue is passed directly to `QueryResult.fulfillment_messages`.", + "items": { + "$ref": "GoogleCloudDialogflowV2IntentMessage" + }, + "type": "array" + }, + "fulfillmentText": { + "description": "Optional. The text to be shown on the screen. This value is passed directly\nto `QueryResult.fulfillment_text`.", + "type": "string" + }, + "outputContexts": { + "description": "Optional. The collection of output contexts. This value is passed directly\nto `QueryResult.output_contexts`.", + "items": { + "$ref": "GoogleCloudDialogflowV2Context" + }, + "type": "array" + }, + "payload": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "description": "Optional. This value is passed directly to `QueryResult.webhook_payload`.", + "type": "object" + }, + "source": { + "description": "Optional. This value is passed directly to `QueryResult.webhook_source`.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2beta1BatchUpdateEntityTypesResponse": { + "description": "The response message for EntityTypes.BatchUpdateEntityTypes.", + "id": "GoogleCloudDialogflowV2beta1BatchUpdateEntityTypesResponse", + "properties": { + "entityTypes": { + "description": "The collection of updated or created entity types.", + "items": { + "$ref": "GoogleCloudDialogflowV2beta1EntityType" + }, + "type": "array" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2beta1BatchUpdateIntentsResponse": { + "description": "The response message for Intents.BatchUpdateIntents.", + "id": "GoogleCloudDialogflowV2beta1BatchUpdateIntentsResponse", + "properties": { + "intents": { + "description": "The collection of updated or created intents.", + "items": { + "$ref": "GoogleCloudDialogflowV2beta1Intent" + }, + "type": "array" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2beta1Context": { + "description": "Represents a context.", + "id": "GoogleCloudDialogflowV2beta1Context", + "properties": { + "lifespanCount": { + "description": "Optional. The number of conversational query requests after which the\ncontext expires. If set to `0` (the default) the context expires\nimmediately. Contexts expire automatically after 10 minutes even if there\nare no matching queries.", + "format": "int32", + "type": "integer" + }, + "name": { + "description": "Required. The unique identifier of the context. Format:\n`projects/\u003cProject ID\u003e/agent/sessions/\u003cSession ID\u003e/contexts/\u003cContext ID\u003e`,\nor\n`projects/\u003cProject ID\u003e/agent/environments/\u003cEnvironment ID\u003e/users/\u003cUser\nID\u003e/sessions/\u003cSession ID\u003e/contexts/\u003cContext ID\u003e`. Note: Environments and\nusers are under construction and will be available soon. The Context ID is\nalways converted to lowercase. If \u003cEnvironment ID\u003e is not specified, we\nassume default 'draft' environment. If \u003cUser ID\u003e is not specified, we\nassume default '-' user.", + "type": "string" + }, + "parameters": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "description": "Optional. The collection of parameters associated with this context.\nRefer to [this doc](https://dialogflow.com/docs/actions-and-parameters) for\nsyntax.", + "type": "object" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2beta1EntityType": { + "description": "Represents an entity type.\nEntity types serve as a tool for extracting parameter values from natural\nlanguage queries.", + "id": "GoogleCloudDialogflowV2beta1EntityType", + "properties": { + "autoExpansionMode": { + "description": "Optional. Indicates whether the entity type can be automatically\nexpanded.", + "enum": [ + "AUTO_EXPANSION_MODE_UNSPECIFIED", + "AUTO_EXPANSION_MODE_DEFAULT" + ], + "enumDescriptions": [ + "Auto expansion disabled for the entity.", + "Allows an agent to recognize values that have not been explicitly\nlisted in the entity." + ], + "type": "string" + }, + "displayName": { + "description": "Required. The name of the entity.", + "type": "string" + }, + "entities": { + "description": "Optional. The collection of entities associated with the entity type.", + "items": { + "$ref": "GoogleCloudDialogflowV2beta1EntityTypeEntity" + }, + "type": "array" + }, + "kind": { + "description": "Required. Indicates the kind of entity type.", + "enum": [ + "KIND_UNSPECIFIED", + "KIND_MAP", + "KIND_LIST" + ], + "enumDescriptions": [ + "Not specified. This value should be never used.", + "Map entity types allow mapping of a group of synonyms to a canonical\nvalue.", + "List entity types contain a set of entries that do not map to canonical\nvalues. However, list entity types can contain references to other entity\ntypes (with or without aliases)." + ], + "type": "string" + }, + "name": { + "description": "Required for all methods except `create` (`create` populates the name\nautomatically.\nThe unique identifier of the entity type. Format:\n`projects/\u003cProject ID\u003e/agent/entityTypes/\u003cEntity Type ID\u003e`.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2beta1EntityTypeEntity": { + "description": "Optional. Represents an entity.", + "id": "GoogleCloudDialogflowV2beta1EntityTypeEntity", + "properties": { + "synonyms": { + "description": "Required. A collection of synonyms. For `KIND_LIST` entity types this\nmust contain exactly one synonym equal to `value`.", + "items": { + "type": "string" + }, + "type": "array" + }, + "value": { + "description": "Required.\nFor `KIND_MAP` entity types:\n A canonical name to be used in place of synonyms.\nFor `KIND_LIST` entity types:\n A string that can contain references to other entity types (with or\n without aliases).", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2beta1EventInput": { + "description": "Events allow for matching intents by event name instead of the natural\nlanguage input. For instance, input `\u003cevent: { name: “welcome_event”,\nparameters: { name: “Sam” } }\u003e` can trigger a personalized welcome response.\nThe parameter `name` may be used by the agent in the response:\n`“Hello #welcome_event.name! What can I do for you today?”`.", + "id": "GoogleCloudDialogflowV2beta1EventInput", + "properties": { + "languageCode": { + "description": "Required. The language of this query. See [Language\nSupport](https://dialogflow.com/docs/languages) for a list of the\ncurrently supported language codes. Note that queries in the same session\ndo not necessarily need to specify the same language.", + "type": "string" + }, + "name": { + "description": "Required. The unique identifier of the event.", + "type": "string" + }, + "parameters": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "description": "Optional. The collection of parameters associated with the event.", + "type": "object" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2beta1ExportAgentResponse": { + "description": "The response message for Agents.ExportAgent.", + "id": "GoogleCloudDialogflowV2beta1ExportAgentResponse", + "properties": { + "agentContent": { + "description": "The exported agent.\n\nExample for how to export an agent to a zip file via a command line:\n\ncurl \\\n 'https://dialogflow.googleapis.com/v2beta1/projects/\u003cproject_name\u003e/agent:export'\\\n -X POST \\\n -H 'Authorization: Bearer '$(gcloud auth print-access-token) \\\n -H 'Accept: application/json' \\\n -H 'Content-Type: application/json' \\\n --compressed \\\n --data-binary '{}' \\\n| grep agentContent | sed -e 's/.*\"agentContent\": \"\\([^\"]*\\)\".*/\\1/' \\\n| base64 --decode \u003e \u003cagent zip file\u003e", + "format": "byte", + "type": "string" + }, + "agentUri": { + "description": "The URI to a file containing the exported agent. This field is populated\nonly if `agent_uri` is specified in `ExportAgentRequest`.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2beta1Intent": { + "description": "Represents an intent.\nIntents convert a number of user expressions or patterns into an action. An\naction is an extraction of a user command or sentence semantics.", + "id": "GoogleCloudDialogflowV2beta1Intent", + "properties": { + "action": { + "description": "Optional. The name of the action associated with the intent.", + "type": "string" + }, + "defaultResponsePlatforms": { + "description": "Optional. The list of platforms for which the first response will be\ntaken from among the messages assigned to the DEFAULT_PLATFORM.", + "enumDescriptions": [ + "Not specified.", + "Facebook.", + "Slack.", + "Telegram.", + "Kik.", + "Skype.", + "Line.", + "Viber.", + "Actions on Google." + ], + "items": { + "enum": [ + "PLATFORM_UNSPECIFIED", + "FACEBOOK", + "SLACK", + "TELEGRAM", + "KIK", + "SKYPE", + "LINE", + "VIBER", + "ACTIONS_ON_GOOGLE" + ], + "type": "string" + }, + "type": "array" + }, + "displayName": { + "description": "Required. The name of this intent.", + "type": "string" + }, + "events": { + "description": "Optional. The collection of event names that trigger the intent.\nIf the collection of input contexts is not empty, all of the contexts must\nbe present in the active user session for an event to trigger this intent.", + "items": { + "type": "string" + }, + "type": "array" + }, + "followupIntentInfo": { + "description": "Optional. Collection of information about all followup intents that have\nname of this intent as a root_name.", + "items": { + "$ref": "GoogleCloudDialogflowV2beta1IntentFollowupIntentInfo" + }, + "type": "array" + }, + "inputContextNames": { + "description": "Optional. The list of context names required for this intent to be\ntriggered.\nFormat: `projects/\u003cProject ID\u003e/agent/sessions/-/contexts/\u003cContext ID\u003e`.", + "items": { + "type": "string" + }, + "type": "array" + }, + "isFallback": { + "description": "Optional. Indicates whether this is a fallback intent.", + "type": "boolean" + }, + "messages": { + "description": "Optional. The collection of rich messages corresponding to the\n`Response` field in the Dialogflow console.", + "items": { + "$ref": "GoogleCloudDialogflowV2beta1IntentMessage" + }, + "type": "array" + }, + "mlDisabled": { + "description": "Optional. Indicates whether Machine Learning is disabled for the intent.\nNote: If `ml_disabled` setting is set to true, then this intent is not\ntaken into account during inference in `ML ONLY` match mode. Also,\nauto-markup in the UI is turned off.", + "type": "boolean" + }, + "mlEnabled": { + "description": "Optional. Indicates whether Machine Learning is enabled for the intent.\nNote: If `ml_enabled` setting is set to false, then this intent is not\ntaken into account during inference in `ML ONLY` match mode. Also,\nauto-markup in the UI is turned off.\nDEPRECATED! Please use `ml_disabled` field instead.\nNOTE: If neither `ml_enabled` nor `ml_disabled` field is set, then the\ndefault value is determined as follows:\n- Before April 15th, 2018 the default is:\n ml_enabled = false / ml_disabled = true.\n- After April 15th, 2018 the default is:\n ml_enabled = true / ml_disabled = false.", + "type": "boolean" + }, + "name": { + "description": "Required for all methods except `create` (`create` populates the name\nautomatically.\nThe unique identifier of this intent.\nFormat: `projects/\u003cProject ID\u003e/agent/intents/\u003cIntent ID\u003e`.", + "type": "string" + }, + "outputContexts": { + "description": "Optional. The collection of contexts that are activated when the intent\nis matched. Context messages in this collection should not set the\nparameters field. Setting the `lifespan_count` to 0 will reset the context\nwhen the intent is matched.\nFormat: `projects/\u003cProject ID\u003e/agent/sessions/-/contexts/\u003cContext ID\u003e`.", + "items": { + "$ref": "GoogleCloudDialogflowV2beta1Context" + }, + "type": "array" + }, + "parameters": { + "description": "Optional. The collection of parameters associated with the intent.", + "items": { + "$ref": "GoogleCloudDialogflowV2beta1IntentParameter" + }, + "type": "array" + }, + "parentFollowupIntentName": { + "description": "The unique identifier of the parent intent in the chain of followup\nintents.\nIt identifies the parent followup intent.\nFormat: `projects/\u003cProject ID\u003e/agent/intents/\u003cIntent ID\u003e`.", + "type": "string" + }, + "priority": { + "description": "Optional. The priority of this intent. Higher numbers represent higher\npriorities. Zero or negative numbers mean that the intent is disabled.", + "format": "int32", + "type": "integer" + }, + "resetContexts": { + "description": "Optional. Indicates whether to delete all contexts in the current\nsession when this intent is matched.", + "type": "boolean" + }, + "rootFollowupIntentName": { + "description": "The unique identifier of the root intent in the chain of followup intents.\nIt identifies the correct followup intents chain for this intent.\nFormat: `projects/\u003cProject ID\u003e/agent/intents/\u003cIntent ID\u003e`.", + "type": "string" + }, + "trainingPhrases": { + "description": "Optional. The collection of examples/templates that the agent is\ntrained on.", + "items": { + "$ref": "GoogleCloudDialogflowV2beta1IntentTrainingPhrase" + }, + "type": "array" + }, + "webhookState": { + "description": "Required. Indicates whether webhooks are enabled for the intent.", + "enum": [ + "WEBHOOK_STATE_UNSPECIFIED", + "WEBHOOK_STATE_ENABLED", + "WEBHOOK_STATE_ENABLED_FOR_SLOT_FILLING" + ], + "enumDescriptions": [ + "Webhook is disabled in the agent and in the intent.", + "Webhook is enabled in the agent and in the intent.", + "Webhook is enabled in the agent and in the intent. Also, each slot\nfilling prompt is forwarded to the webhook." + ], + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2beta1IntentFollowupIntentInfo": { + "description": "Represents a single followup intent in the chain.", + "id": "GoogleCloudDialogflowV2beta1IntentFollowupIntentInfo", + "properties": { + "followupIntentName": { + "description": "The unique identifier of the followup intent.\nFormat: `projects/\u003cProject ID\u003e/agent/intents/\u003cIntent ID\u003e`.", + "type": "string" + }, + "parentFollowupIntentName": { + "description": "The unique identifier of the followup intent parent.\nFormat: `projects/\u003cProject ID\u003e/agent/intents/\u003cIntent ID\u003e`.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2beta1IntentMessage": { + "description": "Corresponds to the `Response` field in the Dialogflow console.", + "id": "GoogleCloudDialogflowV2beta1IntentMessage", + "properties": { + "basicCard": { + "$ref": "GoogleCloudDialogflowV2beta1IntentMessageBasicCard", + "description": "Displays a basic card for Actions on Google." + }, + "card": { + "$ref": "GoogleCloudDialogflowV2beta1IntentMessageCard", + "description": "Displays a card." + }, + "carouselSelect": { + "$ref": "GoogleCloudDialogflowV2beta1IntentMessageCarouselSelect", + "description": "Displays a carousel card for Actions on Google." + }, + "image": { + "$ref": "GoogleCloudDialogflowV2beta1IntentMessageImage", + "description": "Displays an image." + }, + "linkOutSuggestion": { + "$ref": "GoogleCloudDialogflowV2beta1IntentMessageLinkOutSuggestion", + "description": "Displays a link out suggestion chip for Actions on Google." + }, + "listSelect": { + "$ref": "GoogleCloudDialogflowV2beta1IntentMessageListSelect", + "description": "Displays a list card for Actions on Google." + }, + "payload": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "description": "Returns a response containing a custom payload.", + "type": "object" + }, + "platform": { + "description": "Optional. The platform that this message is intended for.", + "enum": [ + "PLATFORM_UNSPECIFIED", + "FACEBOOK", + "SLACK", + "TELEGRAM", + "KIK", + "SKYPE", + "LINE", + "VIBER", + "ACTIONS_ON_GOOGLE" + ], + "enumDescriptions": [ + "Not specified.", + "Facebook.", + "Slack.", + "Telegram.", + "Kik.", + "Skype.", + "Line.", + "Viber.", + "Actions on Google." + ], + "type": "string" + }, + "quickReplies": { + "$ref": "GoogleCloudDialogflowV2beta1IntentMessageQuickReplies", + "description": "Displays quick replies." + }, + "simpleResponses": { + "$ref": "GoogleCloudDialogflowV2beta1IntentMessageSimpleResponses", + "description": "Returns a voice or text-only response for Actions on Google." + }, + "suggestions": { + "$ref": "GoogleCloudDialogflowV2beta1IntentMessageSuggestions", + "description": "Displays suggestion chips for Actions on Google." + }, + "text": { + "$ref": "GoogleCloudDialogflowV2beta1IntentMessageText", + "description": "Returns a text response." + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2beta1IntentMessageBasicCard": { + "description": "The basic card message. Useful for displaying information.", + "id": "GoogleCloudDialogflowV2beta1IntentMessageBasicCard", + "properties": { + "buttons": { + "description": "Optional. The collection of card buttons.", + "items": { + "$ref": "GoogleCloudDialogflowV2beta1IntentMessageBasicCardButton" + }, + "type": "array" + }, + "formattedText": { + "description": "Required, unless image is present. The body text of the card.", + "type": "string" + }, + "image": { + "$ref": "GoogleCloudDialogflowV2beta1IntentMessageImage", + "description": "Optional. The image for the card." + }, + "subtitle": { + "description": "Optional. The subtitle of the card.", + "type": "string" + }, + "title": { + "description": "Optional. The title of the card.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2beta1IntentMessageBasicCardButton": { + "description": "The button object that appears at the bottom of a card.", + "id": "GoogleCloudDialogflowV2beta1IntentMessageBasicCardButton", + "properties": { + "openUriAction": { + "$ref": "GoogleCloudDialogflowV2beta1IntentMessageBasicCardButtonOpenUriAction", + "description": "Required. Action to take when a user taps on the button." + }, + "title": { + "description": "Required. The title of the button.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2beta1IntentMessageBasicCardButtonOpenUriAction": { + "description": "Opens the given URI.", + "id": "GoogleCloudDialogflowV2beta1IntentMessageBasicCardButtonOpenUriAction", + "properties": { + "uri": { + "description": "Required. The HTTP or HTTPS scheme URI.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2beta1IntentMessageCard": { + "description": "The card response message.", + "id": "GoogleCloudDialogflowV2beta1IntentMessageCard", + "properties": { + "buttons": { + "description": "Optional. The collection of card buttons.", + "items": { + "$ref": "GoogleCloudDialogflowV2beta1IntentMessageCardButton" + }, + "type": "array" + }, + "imageUri": { + "description": "Optional. The public URI to an image file for the card.", + "type": "string" + }, + "subtitle": { + "description": "Optional. The subtitle of the card.", + "type": "string" + }, + "title": { + "description": "Optional. The title of the card.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2beta1IntentMessageCardButton": { + "description": "Optional. Contains information about a button.", + "id": "GoogleCloudDialogflowV2beta1IntentMessageCardButton", + "properties": { + "postback": { + "description": "Optional. The text to send back to the Dialogflow API or a URI to\nopen.", + "type": "string" + }, + "text": { + "description": "Optional. The text to show on the button.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2beta1IntentMessageCarouselSelect": { + "description": "The card for presenting a carousel of options to select from.", + "id": "GoogleCloudDialogflowV2beta1IntentMessageCarouselSelect", + "properties": { + "items": { + "description": "Required. Carousel items.", + "items": { + "$ref": "GoogleCloudDialogflowV2beta1IntentMessageCarouselSelectItem" + }, + "type": "array" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2beta1IntentMessageCarouselSelectItem": { + "description": "An item in the carousel.", + "id": "GoogleCloudDialogflowV2beta1IntentMessageCarouselSelectItem", + "properties": { + "description": { + "description": "Optional. The body text of the card.", + "type": "string" + }, + "image": { + "$ref": "GoogleCloudDialogflowV2beta1IntentMessageImage", + "description": "Optional. The image to display." + }, + "info": { + "$ref": "GoogleCloudDialogflowV2beta1IntentMessageSelectItemInfo", + "description": "Required. Additional info about the option item." + }, + "title": { + "description": "Required. Title of the carousel item.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2beta1IntentMessageImage": { + "description": "The image response message.", + "id": "GoogleCloudDialogflowV2beta1IntentMessageImage", + "properties": { + "accessibilityText": { + "description": "Optional. A text description of the image to be used for accessibility,\ne.g., screen readers.", + "type": "string" + }, + "imageUri": { + "description": "Optional. The public URI to an image file.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2beta1IntentMessageLinkOutSuggestion": { + "description": "The suggestion chip message that allows the user to jump out to the app\nor website associated with this agent.", + "id": "GoogleCloudDialogflowV2beta1IntentMessageLinkOutSuggestion", + "properties": { + "destinationName": { + "description": "Required. The name of the app or site this chip is linking to.", + "type": "string" + }, + "uri": { + "description": "Required. The URI of the app or site to open when the user taps the\nsuggestion chip.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2beta1IntentMessageListSelect": { + "description": "The card for presenting a list of options to select from.", + "id": "GoogleCloudDialogflowV2beta1IntentMessageListSelect", + "properties": { + "items": { + "description": "Required. List items.", + "items": { + "$ref": "GoogleCloudDialogflowV2beta1IntentMessageListSelectItem" + }, + "type": "array" + }, + "title": { + "description": "Optional. The overall title of the list.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2beta1IntentMessageListSelectItem": { + "description": "An item in the list.", + "id": "GoogleCloudDialogflowV2beta1IntentMessageListSelectItem", + "properties": { + "description": { + "description": "Optional. The main text describing the item.", + "type": "string" + }, + "image": { + "$ref": "GoogleCloudDialogflowV2beta1IntentMessageImage", + "description": "Optional. The image to display." + }, + "info": { + "$ref": "GoogleCloudDialogflowV2beta1IntentMessageSelectItemInfo", + "description": "Required. Additional information about this option." + }, + "title": { + "description": "Required. The title of the list item.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2beta1IntentMessageQuickReplies": { + "description": "The quick replies response message.", + "id": "GoogleCloudDialogflowV2beta1IntentMessageQuickReplies", + "properties": { + "quickReplies": { + "description": "Optional. The collection of quick replies.", + "items": { + "type": "string" + }, + "type": "array" + }, + "title": { + "description": "Optional. The title of the collection of quick replies.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2beta1IntentMessageSelectItemInfo": { + "description": "Additional info about the select item for when it is triggered in a\ndialog.", + "id": "GoogleCloudDialogflowV2beta1IntentMessageSelectItemInfo", + "properties": { + "key": { + "description": "Required. A unique key that will be sent back to the agent if this\nresponse is given.", + "type": "string" + }, + "synonyms": { + "description": "Optional. A list of synonyms that can also be used to trigger this\nitem in dialog.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2beta1IntentMessageSimpleResponse": { + "description": "The simple response message containing speech or text.", + "id": "GoogleCloudDialogflowV2beta1IntentMessageSimpleResponse", + "properties": { + "displayText": { + "description": "Optional. The text to display.", + "type": "string" + }, + "ssml": { + "description": "One of text_to_speech or ssml must be provided. Structured spoken\nresponse to the user in the SSML format. Mutually exclusive with\ntext_to_speech.", + "type": "string" + }, + "textToSpeech": { + "description": "One of text_to_speech or ssml must be provided. The plain text of the\nspeech output. Mutually exclusive with ssml.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2beta1IntentMessageSimpleResponses": { + "description": "The collection of simple response candidates.\nThis message in `QueryResult.fulfillment_messages` and\n`WebhookResponse.fulfillment_messages` should contain only one\n`SimpleResponse`.", + "id": "GoogleCloudDialogflowV2beta1IntentMessageSimpleResponses", + "properties": { + "simpleResponses": { + "description": "Required. The list of simple responses.", + "items": { + "$ref": "GoogleCloudDialogflowV2beta1IntentMessageSimpleResponse" + }, + "type": "array" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2beta1IntentMessageSuggestion": { + "description": "The suggestion chip message that the user can tap to quickly post a reply\nto the conversation.", + "id": "GoogleCloudDialogflowV2beta1IntentMessageSuggestion", + "properties": { + "title": { + "description": "Required. The text shown the in the suggestion chip.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2beta1IntentMessageSuggestions": { + "description": "The collection of suggestions.", + "id": "GoogleCloudDialogflowV2beta1IntentMessageSuggestions", + "properties": { + "suggestions": { + "description": "Required. The list of suggested replies.", + "items": { + "$ref": "GoogleCloudDialogflowV2beta1IntentMessageSuggestion" + }, + "type": "array" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2beta1IntentMessageText": { + "description": "The text response message.", + "id": "GoogleCloudDialogflowV2beta1IntentMessageText", + "properties": { + "text": { + "description": "Optional. The collection of the agent's responses.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2beta1IntentParameter": { + "description": "Represents intent parameters.", + "id": "GoogleCloudDialogflowV2beta1IntentParameter", + "properties": { + "defaultValue": { + "description": "Optional. The default value to use when the `value` yields an empty\nresult.\nDefault values can be extracted from contexts by using the following\nsyntax: `#context_name.parameter_name`.", + "type": "string" + }, + "displayName": { + "description": "Required. The name of the parameter.", + "type": "string" + }, + "entityTypeDisplayName": { + "description": "Optional. The name of the entity type, prefixed with `@`, that\ndescribes values of the parameter. If the parameter is\nrequired, this must be provided.", + "type": "string" + }, + "isList": { + "description": "Optional. Indicates whether the parameter represents a list of values.", + "type": "boolean" + }, + "mandatory": { + "description": "Optional. Indicates whether the parameter is required. That is,\nwhether the intent cannot be completed without collecting the parameter\nvalue.", + "type": "boolean" + }, + "name": { + "description": "The unique identifier of this parameter.", + "type": "string" + }, + "prompts": { + "description": "Optional. The collection of prompts that the agent can present to the\nuser in order to collect value for the parameter.", + "items": { + "type": "string" + }, + "type": "array" + }, + "value": { + "description": "Optional. The definition of the parameter value. It can be:\n- a constant string,\n- a parameter value defined as `$parameter_name`,\n- an original parameter value defined as `$parameter_name.original`,\n- a parameter value from some context defined as\n `#context_name.parameter_name`.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2beta1IntentTrainingPhrase": { + "description": "Represents an example or template that the agent is trained on.", + "id": "GoogleCloudDialogflowV2beta1IntentTrainingPhrase", + "properties": { + "name": { + "description": "Required. The unique identifier of this training phrase.", + "type": "string" + }, + "parts": { + "description": "Required. The collection of training phrase parts (can be annotated).\nFields: `entity_type`, `alias` and `user_defined` should be populated\nonly for the annotated parts of the training phrase.", + "items": { + "$ref": "GoogleCloudDialogflowV2beta1IntentTrainingPhrasePart" + }, + "type": "array" + }, + "timesAddedCount": { + "description": "Optional. Indicates how many times this example or template was added to\nthe intent. Each time a developer adds an existing sample by editing an\nintent or training, this counter is increased.", + "format": "int32", + "type": "integer" + }, + "type": { + "description": "Required. The type of the training phrase.", + "enum": [ + "TYPE_UNSPECIFIED", + "EXAMPLE", + "TEMPLATE" + ], + "enumDescriptions": [ + "Not specified. This value should never be used.", + "Examples do not contain @-prefixed entity type names, but example parts\ncan be annotated with entity types.", + "Templates are not annotated with entity types, but they can contain\n@-prefixed entity type names as substrings." + ], + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2beta1IntentTrainingPhrasePart": { + "description": "Represents a part of a training phrase.", + "id": "GoogleCloudDialogflowV2beta1IntentTrainingPhrasePart", + "properties": { + "alias": { + "description": "Optional. The parameter name for the value extracted from the\nannotated part of the example.", + "type": "string" + }, + "entityType": { + "description": "Optional. The entity type name prefixed with `@`. This field is\nrequired for the annotated part of the text and applies only to\nexamples.", + "type": "string" + }, + "text": { + "description": "Required. The text corresponding to the example or template,\nif there are no annotations. For\nannotated examples, it is the text for one of the example's parts.", + "type": "string" + }, + "userDefined": { + "description": "Optional. Indicates whether the text was manually annotated by the\ndeveloper.", + "type": "boolean" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2beta1OriginalDetectIntentRequest": { + "description": "Represents the contents of the original request that was passed to\nthe `[Streaming]DetectIntent` call.", + "id": "GoogleCloudDialogflowV2beta1OriginalDetectIntentRequest", + "properties": { + "payload": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "description": "Optional. This field is set to the value of `QueryParameters.payload` field\npassed in the request.", + "type": "object" + }, + "source": { + "description": "The source of this request, e.g., `google`, `facebook`, `slack`. It is set\nby Dialogflow-owned servers. Possible values of this field correspond to\nIntent.Message.Platform.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2beta1QueryResult": { + "description": "Represents the result of conversational query or event processing.", + "id": "GoogleCloudDialogflowV2beta1QueryResult", + "properties": { + "action": { + "description": "The action name from the matched intent.", + "type": "string" + }, + "allRequiredParamsPresent": { + "description": "This field is set to:\n- `false` if the matched intent has required parameters and not all of\n the required parameter values have been collected.\n- `true` if all required parameter values have been collected, or if the\n matched intent doesn't contain any required parameters.", + "type": "boolean" + }, + "diagnosticInfo": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "description": "The free-form diagnostic info. For example, this field\ncould contain webhook call latency.", + "type": "object" + }, + "fulfillmentMessages": { + "description": "The collection of rich messages to present to the user.", + "items": { + "$ref": "GoogleCloudDialogflowV2beta1IntentMessage" + }, + "type": "array" + }, + "fulfillmentText": { + "description": "The text to be pronounced to the user or shown on the screen.", + "type": "string" + }, + "intent": { + "$ref": "GoogleCloudDialogflowV2beta1Intent", + "description": "The intent that matched the conversational query. Some, not\nall fields are filled in this message, including but not limited to:\n`name`, `display_name` and `webhook_state`." + }, + "intentDetectionConfidence": { + "description": "The intent detection confidence. Values range from 0.0\n(completely uncertain) to 1.0 (completely certain).", + "format": "float", + "type": "number" + }, + "languageCode": { + "description": "The language that was triggered during intent detection.\nSee [Language Support](https://dialogflow.com/docs/reference/language)\nfor a list of the currently supported language codes.", + "type": "string" + }, + "outputContexts": { + "description": "The collection of output contexts. If applicable,\n`output_contexts.parameters` contains entries with name\n`\u003cparameter name\u003e.original` containing the original parameter values\nbefore the query.", + "items": { + "$ref": "GoogleCloudDialogflowV2beta1Context" + }, + "type": "array" + }, + "parameters": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "description": "The collection of extracted parameters.", + "type": "object" + }, + "queryText": { + "description": "The original conversational query text:\n- If natural language text was provided as input, `query_text` contains\n a copy of the input.\n- If natural language speech audio was provided as input, `query_text`\n contains the speech recognition result. If speech recognizer produced\n multiple alternatives, a particular one is picked.\n- If an event was provided as input, `query_text` is not set.", + "type": "string" + }, + "speechRecognitionConfidence": { + "description": "The Speech recognition confidence between 0.0 and 1.0. A higher number\nindicates an estimated greater likelihood that the recognized words are\ncorrect. The default of 0.0 is a sentinel value indicating that confidence\nwas not set.\n\nYou should not rely on this field as it isn't guaranteed to be accurate, or\neven set. In particular this field isn't set in Webhook calls and for\nStreamingDetectIntent since the streaming endpoint has separate confidence\nestimates per portion of the audio in StreamingRecognitionResult.", + "format": "float", + "type": "number" + }, + "webhookPayload": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "description": "If the query was fulfilled by a webhook call, this field is set to the\nvalue of the `payload` field returned in the webhook response.", + "type": "object" + }, + "webhookSource": { + "description": "If the query was fulfilled by a webhook call, this field is set to the\nvalue of the `source` field returned in the webhook response.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2beta1WebhookRequest": { + "description": "The request message for a webhook call.", + "id": "GoogleCloudDialogflowV2beta1WebhookRequest", + "properties": { + "originalDetectIntentRequest": { + "$ref": "GoogleCloudDialogflowV2beta1OriginalDetectIntentRequest", + "description": "Optional. The contents of the original request that was passed to\n`[Streaming]DetectIntent` call." + }, + "queryResult": { + "$ref": "GoogleCloudDialogflowV2beta1QueryResult", + "description": "The result of the conversational query or event processing. Contains the\nsame value as `[Streaming]DetectIntentResponse.query_result`." + }, + "responseId": { + "description": "The unique identifier of the response. Contains the same value as\n`[Streaming]DetectIntentResponse.response_id`.", + "type": "string" + }, + "session": { + "description": "The unique identifier of detectIntent request session.\nCan be used to identify end-user inside webhook implementation.\nFormat: `projects/\u003cProject ID\u003e/agent/sessions/\u003cSession ID\u003e`.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2beta1WebhookResponse": { + "description": "The response message for a webhook call.", + "id": "GoogleCloudDialogflowV2beta1WebhookResponse", + "properties": { + "followupEventInput": { + "$ref": "GoogleCloudDialogflowV2beta1EventInput", + "description": "Optional. Makes the platform immediately invoke another `DetectIntent` call\ninternally with the specified event as input." + }, + "fulfillmentMessages": { + "description": "Optional. The collection of rich messages to present to the user. This\nvalue is passed directly to `QueryResult.fulfillment_messages`.", + "items": { + "$ref": "GoogleCloudDialogflowV2beta1IntentMessage" + }, + "type": "array" + }, + "fulfillmentText": { + "description": "Optional. The text to be shown on the screen. This value is passed directly\nto `QueryResult.fulfillment_text`.", + "type": "string" + }, + "outputContexts": { + "description": "Optional. The collection of output contexts. This value is passed directly\nto `QueryResult.output_contexts`.", + "items": { + "$ref": "GoogleCloudDialogflowV2beta1Context" + }, + "type": "array" + }, + "payload": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "description": "Optional. This value is passed directly to `QueryResult.webhook_payload`.", + "type": "object" + }, + "source": { + "description": "Optional. This value is passed directly to `QueryResult.webhook_source`.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleLongrunningOperation": { + "description": "This resource represents a long-running operation that is the result of a\nnetwork API call.", + "id": "GoogleLongrunningOperation", + "properties": { + "done": { + "description": "If the value is `false`, it means the operation is still in progress.\nIf `true`, the operation is completed, and either `error` or `response` is\navailable.", + "type": "boolean" + }, + "error": { + "$ref": "GoogleRpcStatus", + "description": "The error result of the operation in case of failure or cancellation." + }, + "metadata": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "description": "Service-specific metadata associated with the operation. It typically\ncontains progress information and common metadata such as create time.\nSome services might not provide such metadata. Any method that returns a\nlong-running operation should document the metadata type, if any.", + "type": "object" + }, + "name": { + "description": "The server-assigned name, which is only unique within the same service that\noriginally returns it. If you use the default HTTP mapping, the\n`name` should have the format of `operations/some/unique/name`.", + "type": "string" + }, + "response": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "description": "The normal response of the operation in case of success. If the original\nmethod returns no data on success, such as `Delete`, the response is\n`google.protobuf.Empty`. If the original method is standard\n`Get`/`Create`/`Update`, the response should be the resource. For other\nmethods, the response should have the type `XxxResponse`, where `Xxx`\nis the original method name. For example, if the original method name\nis `TakeSnapshot()`, the inferred response type is\n`TakeSnapshotResponse`.", + "type": "object" + } + }, + "type": "object" + }, + "GoogleProtobufEmpty": { + "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": "GoogleProtobufEmpty", + "properties": {}, + "type": "object" + }, + "GoogleRpcStatus": { + "description": "The `Status` type defines a logical error model that is suitable for different\nprogramming environments, including REST APIs and RPC APIs. It is used by\n[gRPC](https://github.com/grpc). The error model is designed to be:\n\n- Simple to use and understand for most users\n- Flexible enough to meet unexpected needs\n\n# Overview\n\nThe `Status` message contains three pieces of data: error code, error message,\nand error details. The error code should be an enum value of\ngoogle.rpc.Code, but it may accept additional error codes if needed. The\nerror message should be a developer-facing English message that helps\ndevelopers *understand* and *resolve* the error. If a localized user-facing\nerror message is needed, put the localized message in the error details or\nlocalize it in the client. The optional error details may contain arbitrary\ninformation about the error. There is a predefined set of error detail types\nin the package `google.rpc` that can be used for common error conditions.\n\n# Language mapping\n\nThe `Status` message is the logical representation of the error model, but it\nis not necessarily the actual wire format. When the `Status` message is\nexposed in different client libraries and different wire protocols, it can be\nmapped differently. For example, it will likely be mapped to some exceptions\nin Java, but more likely mapped to some error codes in C.\n\n# Other uses\n\nThe error model and the `Status` message can be used in a variety of\nenvironments, either with or without APIs, to provide a\nconsistent developer experience across different environments.\n\nExample uses of this error model include:\n\n- Partial errors. If a service needs to return partial errors to the client,\n it may embed the `Status` in the normal response to indicate the partial\n errors.\n\n- Workflow errors. A typical workflow has multiple steps. Each step may\n have a `Status` message for error reporting.\n\n- Batch operations. If a client uses batch request and batch response, the\n `Status` message should be used directly inside batch response, one for\n each error sub-response.\n\n- Asynchronous operations. If an API call embeds asynchronous operation\n results in its response, the status of those operations should be\n represented directly using the `Status` message.\n\n- Logging. If some API errors are stored in logs, the message `Status` could\n be used directly after any stripping needed for security/privacy reasons.", + "id": "GoogleRpcStatus", + "properties": { + "code": { + "description": "The status code, which should be an enum value of google.rpc.Code.", + "format": "int32", + "type": "integer" + }, + "details": { + "description": "A list of messages that carry the error details. There is a common set of\nmessage types for APIs to use.", + "items": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "A developer-facing error message, which should be in English. Any\nuser-facing error message should be localized and sent in the\ngoogle.rpc.Status.details field, or localized by the client.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleTypeLatLng": { + "description": "An object representing a latitude/longitude pair. This is expressed as a pair\nof doubles representing degrees latitude and degrees longitude. Unless\nspecified otherwise, this must conform to the\n\u003ca href=\"http://www.unoosa.org/pdf/icg/2012/template/WGS_84.pdf\"\u003eWGS84\nstandard\u003c/a\u003e. Values must be within normalized ranges.", + "id": "GoogleTypeLatLng", + "properties": { + "latitude": { + "description": "The latitude in degrees. It must be in the range [-90.0, +90.0].", + "format": "double", + "type": "number" + }, + "longitude": { + "description": "The longitude in degrees. It must be in the range [-180.0, +180.0].", + "format": "double", + "type": "number" + } + }, + "type": "object" + } + }, + "servicePath": "", + "title": "Dialogflow API", + "version": "v2", + "version_module": true +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/dialogflow/v2/dialogflow-gen.go b/vendor/google.golang.org/api/dialogflow/v2/dialogflow-gen.go new file mode 100644 index 000000000..ac2eb8d91 --- /dev/null +++ b/vendor/google.golang.org/api/dialogflow/v2/dialogflow-gen.go @@ -0,0 +1,10486 @@ +// Package dialogflow provides access to the Dialogflow API. +// +// See https://cloud.google.com/dialogflow-enterprise/ +// +// Usage example: +// +// import "google.golang.org/api/dialogflow/v2" +// ... +// dialogflowService, err := dialogflow.New(oauthHttpClient) +package dialogflow // import "google.golang.org/api/dialogflow/v2" + +import ( + "bytes" + "encoding/json" + "errors" + "fmt" + context "golang.org/x/net/context" + ctxhttp "golang.org/x/net/context/ctxhttp" + gensupport "google.golang.org/api/gensupport" + googleapi "google.golang.org/api/googleapi" + "io" + "net/http" + "net/url" + "strconv" + "strings" +) + +// Always reference these packages, just in case the auto-generated code +// below doesn't. +var _ = bytes.NewBuffer +var _ = strconv.Itoa +var _ = fmt.Sprintf +var _ = json.NewDecoder +var _ = io.Copy +var _ = url.Parse +var _ = gensupport.MarshalJSON +var _ = googleapi.Version +var _ = errors.New +var _ = strings.Replace +var _ = context.Canceled +var _ = ctxhttp.Do + +const apiId = "dialogflow:v2" +const apiName = "dialogflow" +const apiVersion = "v2" +const basePath = "https://dialogflow.googleapis.com/" + +// OAuth2 scopes used by this API. +const ( + // View and manage your data across Google Cloud Platform services + CloudPlatformScope = "https://www.googleapis.com/auth/cloud-platform" +) + +func New(client *http.Client) (*Service, error) { + if client == nil { + return nil, errors.New("client is nil") + } + s := &Service{client: client, BasePath: basePath} + s.Projects = NewProjectsService(s) + return s, nil +} + +type Service struct { + client *http.Client + BasePath string // API endpoint base URL + UserAgent string // optional additional User-Agent fragment + + Projects *ProjectsService +} + +func (s *Service) userAgent() string { + if s.UserAgent == "" { + return googleapi.UserAgent + } + return googleapi.UserAgent + " " + s.UserAgent +} + +func NewProjectsService(s *Service) *ProjectsService { + rs := &ProjectsService{s: s} + rs.Agent = NewProjectsAgentService(s) + rs.Operations = NewProjectsOperationsService(s) + return rs +} + +type ProjectsService struct { + s *Service + + Agent *ProjectsAgentService + + Operations *ProjectsOperationsService +} + +func NewProjectsAgentService(s *Service) *ProjectsAgentService { + rs := &ProjectsAgentService{s: s} + rs.EntityTypes = NewProjectsAgentEntityTypesService(s) + rs.Intents = NewProjectsAgentIntentsService(s) + rs.Sessions = NewProjectsAgentSessionsService(s) + return rs +} + +type ProjectsAgentService struct { + s *Service + + EntityTypes *ProjectsAgentEntityTypesService + + Intents *ProjectsAgentIntentsService + + Sessions *ProjectsAgentSessionsService +} + +func NewProjectsAgentEntityTypesService(s *Service) *ProjectsAgentEntityTypesService { + rs := &ProjectsAgentEntityTypesService{s: s} + rs.Entities = NewProjectsAgentEntityTypesEntitiesService(s) + return rs +} + +type ProjectsAgentEntityTypesService struct { + s *Service + + Entities *ProjectsAgentEntityTypesEntitiesService +} + +func NewProjectsAgentEntityTypesEntitiesService(s *Service) *ProjectsAgentEntityTypesEntitiesService { + rs := &ProjectsAgentEntityTypesEntitiesService{s: s} + return rs +} + +type ProjectsAgentEntityTypesEntitiesService struct { + s *Service +} + +func NewProjectsAgentIntentsService(s *Service) *ProjectsAgentIntentsService { + rs := &ProjectsAgentIntentsService{s: s} + return rs +} + +type ProjectsAgentIntentsService struct { + s *Service +} + +func NewProjectsAgentSessionsService(s *Service) *ProjectsAgentSessionsService { + rs := &ProjectsAgentSessionsService{s: s} + rs.Contexts = NewProjectsAgentSessionsContextsService(s) + rs.EntityTypes = NewProjectsAgentSessionsEntityTypesService(s) + return rs +} + +type ProjectsAgentSessionsService struct { + s *Service + + Contexts *ProjectsAgentSessionsContextsService + + EntityTypes *ProjectsAgentSessionsEntityTypesService +} + +func NewProjectsAgentSessionsContextsService(s *Service) *ProjectsAgentSessionsContextsService { + rs := &ProjectsAgentSessionsContextsService{s: s} + return rs +} + +type ProjectsAgentSessionsContextsService struct { + s *Service +} + +func NewProjectsAgentSessionsEntityTypesService(s *Service) *ProjectsAgentSessionsEntityTypesService { + rs := &ProjectsAgentSessionsEntityTypesService{s: s} + return rs +} + +type ProjectsAgentSessionsEntityTypesService struct { + s *Service +} + +func NewProjectsOperationsService(s *Service) *ProjectsOperationsService { + rs := &ProjectsOperationsService{s: s} + return rs +} + +type ProjectsOperationsService struct { + s *Service +} + +// GoogleCloudDialogflowV2Agent: Represents a conversational agent. +type GoogleCloudDialogflowV2Agent struct { + // AvatarUri: Optional. The URI of the agent's avatar. + // Avatars are used throughout the Dialogflow console and in the + // self-hosted + // [Web Demo](https://dialogflow.com/docs/integrations/web-demo) + // integration. + AvatarUri string `json:"avatarUri,omitempty"` + + // ClassificationThreshold: Optional. To filter out false positive + // results and still get variety in + // matched natural language inputs for your agent, you can tune the + // machine + // learning classification threshold. If the returned score value is + // less than + // the threshold value, then a fallback intent is be triggered or, if + // there + // are no fallback intents defined, no intent will be triggered. The + // score + // values range from 0.0 (completely uncertain) to 1.0 (completely + // certain). + // If set to 0.0, the default of 0.3 is used. + ClassificationThreshold float64 `json:"classificationThreshold,omitempty"` + + // DefaultLanguageCode: Required. The default language of the agent as a + // language tag. See + // [Language Support](https://dialogflow.com/docs/reference/language) + // for a + // list of the currently supported language codes. + // This field cannot be set by the `Update` method. + DefaultLanguageCode string `json:"defaultLanguageCode,omitempty"` + + // Description: Optional. The description of this agent. + // The maximum length is 500 characters. If exceeded, the request is + // rejected. + Description string `json:"description,omitempty"` + + // DisplayName: Required. The name of this agent. + DisplayName string `json:"displayName,omitempty"` + + // EnableLogging: Optional. Determines whether this agent should log + // conversation queries. + EnableLogging bool `json:"enableLogging,omitempty"` + + // MatchMode: Optional. Determines how intents are detected from user + // queries. + // + // Possible values: + // "MATCH_MODE_UNSPECIFIED" - Not specified. + // "MATCH_MODE_HYBRID" - Best for agents with a small number of + // examples in intents and/or wide + // use of templates syntax and composite entities. + // "MATCH_MODE_ML_ONLY" - Can be used for agents with a large number + // of examples in intents, + // especially the ones using @sys.any or very large developer entities. + MatchMode string `json:"matchMode,omitempty"` + + // Parent: Required. The project of this agent. + // Format: `projects/`. + Parent string `json:"parent,omitempty"` + + // SupportedLanguageCodes: Optional. The list of all languages supported + // by this agent (except for the + // `default_language_code`). + SupportedLanguageCodes []string `json:"supportedLanguageCodes,omitempty"` + + // TimeZone: Required. The time zone of this agent from the + // [time zone database](https://www.iana.org/time-zones), + // e.g., + // America/New_York, Europe/Paris. + TimeZone string `json:"timeZone,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "AvatarUri") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "AvatarUri") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDialogflowV2Agent) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2Agent + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +func (s *GoogleCloudDialogflowV2Agent) UnmarshalJSON(data []byte) error { + type NoMethod GoogleCloudDialogflowV2Agent + var s1 struct { + ClassificationThreshold gensupport.JSONFloat64 `json:"classificationThreshold"` + *NoMethod + } + s1.NoMethod = (*NoMethod)(s) + if err := json.Unmarshal(data, &s1); err != nil { + return err + } + s.ClassificationThreshold = float64(s1.ClassificationThreshold) + return nil +} + +// GoogleCloudDialogflowV2BatchCreateEntitiesRequest: The request +// message for EntityTypes.BatchCreateEntities. +type GoogleCloudDialogflowV2BatchCreateEntitiesRequest struct { + // Entities: Required. The collection of entities to create. + Entities []*GoogleCloudDialogflowV2EntityTypeEntity `json:"entities,omitempty"` + + // LanguageCode: Optional. The language of entity synonyms defined in + // `entities`. If not + // specified, the agent's default language is used. + // [More than a + // dozen + // languages](https://dialogflow.com/docs/reference/language) are + // supported. + // Note: languages must be enabled in the agent, before they can be + // used. + LanguageCode string `json:"languageCode,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Entities") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Entities") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDialogflowV2BatchCreateEntitiesRequest) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2BatchCreateEntitiesRequest + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDialogflowV2BatchDeleteEntitiesRequest: The request +// message for EntityTypes.BatchDeleteEntities. +type GoogleCloudDialogflowV2BatchDeleteEntitiesRequest struct { + // EntityValues: Required. The canonical `values` of the entities to + // delete. Note that + // these are not fully-qualified names, i.e. they don't start + // with + // `projects/`. + EntityValues []string `json:"entityValues,omitempty"` + + // LanguageCode: Optional. The language of entity synonyms defined in + // `entities`. If not + // specified, the agent's default language is used. + // [More than a + // dozen + // languages](https://dialogflow.com/docs/reference/language) are + // supported. + // Note: languages must be enabled in the agent, before they can be + // used. + LanguageCode string `json:"languageCode,omitempty"` + + // ForceSendFields is a list of field names (e.g. "EntityValues") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "EntityValues") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDialogflowV2BatchDeleteEntitiesRequest) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2BatchDeleteEntitiesRequest + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDialogflowV2BatchDeleteEntityTypesRequest: The request +// message for EntityTypes.BatchDeleteEntityTypes. +type GoogleCloudDialogflowV2BatchDeleteEntityTypesRequest struct { + // EntityTypeNames: Required. The names entity types to delete. All + // names must point to the + // same agent as `parent`. + EntityTypeNames []string `json:"entityTypeNames,omitempty"` + + // ForceSendFields is a list of field names (e.g. "EntityTypeNames") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "EntityTypeNames") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDialogflowV2BatchDeleteEntityTypesRequest) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2BatchDeleteEntityTypesRequest + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDialogflowV2BatchDeleteIntentsRequest: The request message +// for Intents.BatchDeleteIntents. +type GoogleCloudDialogflowV2BatchDeleteIntentsRequest struct { + // Intents: Required. The collection of intents to delete. Only intent + // `name` must be + // filled in. + Intents []*GoogleCloudDialogflowV2Intent `json:"intents,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Intents") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Intents") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDialogflowV2BatchDeleteIntentsRequest) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2BatchDeleteIntentsRequest + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDialogflowV2BatchUpdateEntitiesRequest: The response +// message for EntityTypes.BatchCreateEntities. +type GoogleCloudDialogflowV2BatchUpdateEntitiesRequest struct { + // Entities: Required. The collection of new entities to replace the + // existing entities. + Entities []*GoogleCloudDialogflowV2EntityTypeEntity `json:"entities,omitempty"` + + // LanguageCode: Optional. The language of entity synonyms defined in + // `entities`. If not + // specified, the agent's default language is used. + // [More than a + // dozen + // languages](https://dialogflow.com/docs/reference/language) are + // supported. + // Note: languages must be enabled in the agent, before they can be + // used. + LanguageCode string `json:"languageCode,omitempty"` + + // UpdateMask: Optional. The mask to control which fields get updated. + UpdateMask string `json:"updateMask,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Entities") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Entities") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDialogflowV2BatchUpdateEntitiesRequest) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2BatchUpdateEntitiesRequest + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDialogflowV2BatchUpdateEntityTypesRequest: The request +// message for EntityTypes.BatchUpdateEntityTypes. +type GoogleCloudDialogflowV2BatchUpdateEntityTypesRequest struct { + // EntityTypeBatchInline: The collection of entity type to update or + // create. + EntityTypeBatchInline *GoogleCloudDialogflowV2EntityTypeBatch `json:"entityTypeBatchInline,omitempty"` + + // EntityTypeBatchUri: The URI to a Google Cloud Storage file containing + // entity types to update + // or create. The file format can either be a serialized proto + // (of + // EntityBatch type) or a JSON object. Note: The URI must start + // with + // "gs://". + EntityTypeBatchUri string `json:"entityTypeBatchUri,omitempty"` + + // LanguageCode: Optional. The language of entity synonyms defined in + // `entity_types`. If not + // specified, the agent's default language is used. + // [More than a + // dozen + // languages](https://dialogflow.com/docs/reference/language) are + // supported. + // Note: languages must be enabled in the agent, before they can be + // used. + LanguageCode string `json:"languageCode,omitempty"` + + // UpdateMask: Optional. The mask to control which fields get updated. + UpdateMask string `json:"updateMask,omitempty"` + + // ForceSendFields is a list of field names (e.g. + // "EntityTypeBatchInline") to unconditionally include in API requests. + // By default, fields with empty values are omitted from API requests. + // However, any non-pointer, non-interface field appearing in + // ForceSendFields will be sent to the server regardless of whether the + // field is empty or not. This may be used to include empty fields in + // Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "EntityTypeBatchInline") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDialogflowV2BatchUpdateEntityTypesRequest) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2BatchUpdateEntityTypesRequest + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDialogflowV2BatchUpdateEntityTypesResponse: The response +// message for EntityTypes.BatchUpdateEntityTypes. +type GoogleCloudDialogflowV2BatchUpdateEntityTypesResponse struct { + // EntityTypes: The collection of updated or created entity types. + EntityTypes []*GoogleCloudDialogflowV2EntityType `json:"entityTypes,omitempty"` + + // ForceSendFields is a list of field names (e.g. "EntityTypes") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "EntityTypes") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDialogflowV2BatchUpdateEntityTypesResponse) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2BatchUpdateEntityTypesResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDialogflowV2BatchUpdateIntentsRequest: The request message +// for Intents.BatchUpdateIntents. +type GoogleCloudDialogflowV2BatchUpdateIntentsRequest struct { + // IntentBatchInline: The collection of intents to update or create. + IntentBatchInline *GoogleCloudDialogflowV2IntentBatch `json:"intentBatchInline,omitempty"` + + // IntentBatchUri: The URI to a Google Cloud Storage file containing + // intents to update or + // create. The file format can either be a serialized proto (of + // IntentBatch + // type) or JSON object. Note: The URI must start with "gs://". + IntentBatchUri string `json:"intentBatchUri,omitempty"` + + // IntentView: Optional. The resource view to apply to the returned + // intent. + // + // Possible values: + // "INTENT_VIEW_UNSPECIFIED" - Training phrases field is not populated + // in the response. + // "INTENT_VIEW_FULL" - All fields are populated. + IntentView string `json:"intentView,omitempty"` + + // LanguageCode: Optional. The language of training phrases, parameters + // and rich messages + // defined in `intents`. If not specified, the agent's default language + // is + // used. [More than a + // dozen + // languages](https://dialogflow.com/docs/reference/language) are + // supported. + // Note: languages must be enabled in the agent, before they can be + // used. + LanguageCode string `json:"languageCode,omitempty"` + + // UpdateMask: Optional. The mask to control which fields get updated. + UpdateMask string `json:"updateMask,omitempty"` + + // ForceSendFields is a list of field names (e.g. "IntentBatchInline") + // to unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "IntentBatchInline") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDialogflowV2BatchUpdateIntentsRequest) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2BatchUpdateIntentsRequest + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDialogflowV2BatchUpdateIntentsResponse: The response +// message for Intents.BatchUpdateIntents. +type GoogleCloudDialogflowV2BatchUpdateIntentsResponse struct { + // Intents: The collection of updated or created intents. + Intents []*GoogleCloudDialogflowV2Intent `json:"intents,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Intents") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Intents") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDialogflowV2BatchUpdateIntentsResponse) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2BatchUpdateIntentsResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDialogflowV2Context: Represents a context. +type GoogleCloudDialogflowV2Context struct { + // LifespanCount: Optional. The number of conversational query requests + // after which the + // context expires. If set to `0` (the default) the context + // expires + // immediately. Contexts expire automatically after 10 minutes even if + // there + // are no matching queries. + LifespanCount int64 `json:"lifespanCount,omitempty"` + + // Name: Required. The unique identifier of the context. + // Format: + // `projects//agent/sessions//contexts/`. + Name string `json:"name,omitempty"` + + // Parameters: Optional. The collection of parameters associated with + // this context. + // Refer to [this + // doc](https://dialogflow.com/docs/actions-and-parameters) for + // syntax. + Parameters googleapi.RawMessage `json:"parameters,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "LifespanCount") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "LifespanCount") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDialogflowV2Context) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2Context + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDialogflowV2DetectIntentRequest: The request to detect +// user's intent. +type GoogleCloudDialogflowV2DetectIntentRequest struct { + // InputAudio: Optional. The natural language speech audio to be + // processed. This field + // should be populated iff `query_input` is set to an input audio + // config. + // A single request can contain up to 1 minute of speech audio data. + InputAudio string `json:"inputAudio,omitempty"` + + // QueryInput: Required. The input specification. It can be set to: + // + // 1. an audio config + // which instructs the speech recognizer how to process the speech + // audio, + // + // 2. a conversational query in the form of text, or + // + // 3. an event that specifies which intent to trigger. + QueryInput *GoogleCloudDialogflowV2QueryInput `json:"queryInput,omitempty"` + + // QueryParams: Optional. The parameters of this query. + QueryParams *GoogleCloudDialogflowV2QueryParameters `json:"queryParams,omitempty"` + + // ForceSendFields is a list of field names (e.g. "InputAudio") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "InputAudio") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDialogflowV2DetectIntentRequest) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2DetectIntentRequest + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDialogflowV2DetectIntentResponse: The message returned +// from the DetectIntent method. +type GoogleCloudDialogflowV2DetectIntentResponse struct { + // QueryResult: The results of the conversational query or event + // processing. + QueryResult *GoogleCloudDialogflowV2QueryResult `json:"queryResult,omitempty"` + + // ResponseId: The unique identifier of the response. It can be used + // to + // locate a response in the training example set or for reporting + // issues. + ResponseId string `json:"responseId,omitempty"` + + // WebhookStatus: Specifies the status of the webhook request. + // `webhook_status` + // is never populated in webhook requests. + WebhookStatus *GoogleRpcStatus `json:"webhookStatus,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "QueryResult") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "QueryResult") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDialogflowV2DetectIntentResponse) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2DetectIntentResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDialogflowV2EntityType: Represents an entity type. +// Entity types serve as a tool for extracting parameter values from +// natural +// language queries. +type GoogleCloudDialogflowV2EntityType struct { + // AutoExpansionMode: Optional. Indicates whether the entity type can be + // automatically + // expanded. + // + // Possible values: + // "AUTO_EXPANSION_MODE_UNSPECIFIED" - Auto expansion disabled for the + // entity. + // "AUTO_EXPANSION_MODE_DEFAULT" - Allows an agent to recognize values + // that have not been explicitly + // listed in the entity. + AutoExpansionMode string `json:"autoExpansionMode,omitempty"` + + // DisplayName: Required. The name of the entity. + DisplayName string `json:"displayName,omitempty"` + + // Entities: Optional. The collection of entities associated with the + // entity type. + Entities []*GoogleCloudDialogflowV2EntityTypeEntity `json:"entities,omitempty"` + + // Kind: Required. Indicates the kind of entity type. + // + // Possible values: + // "KIND_UNSPECIFIED" - Not specified. This value should be never + // used. + // "KIND_MAP" - Map entity types allow mapping of a group of synonyms + // to a canonical + // value. + // "KIND_LIST" - List entity types contain a set of entries that do + // not map to canonical + // values. However, list entity types can contain references to other + // entity + // types (with or without aliases). + Kind string `json:"kind,omitempty"` + + // Name: Required for all methods except `create` (`create` populates + // the name + // automatically. + // The unique identifier of the entity type. Format: + // `projects//agent/entityTypes/`. + Name string `json:"name,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "AutoExpansionMode") + // to unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "AutoExpansionMode") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDialogflowV2EntityType) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2EntityType + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDialogflowV2EntityTypeBatch: This message is a wrapper +// around a collection of entity types. +type GoogleCloudDialogflowV2EntityTypeBatch struct { + // EntityTypes: A collection of entity types. + EntityTypes []*GoogleCloudDialogflowV2EntityType `json:"entityTypes,omitempty"` + + // ForceSendFields is a list of field names (e.g. "EntityTypes") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "EntityTypes") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDialogflowV2EntityTypeBatch) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2EntityTypeBatch + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDialogflowV2EntityTypeEntity: Optional. Represents an +// entity. +type GoogleCloudDialogflowV2EntityTypeEntity struct { + // Synonyms: Required. A collection of synonyms. For `KIND_LIST` entity + // types this + // must contain exactly one synonym equal to `value`. + Synonyms []string `json:"synonyms,omitempty"` + + // Value: Required. + // For `KIND_MAP` entity types: + // A canonical name to be used in place of synonyms. + // For `KIND_LIST` entity types: + // A string that can contain references to other entity types (with + // or + // without aliases). + Value string `json:"value,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Synonyms") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Synonyms") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDialogflowV2EntityTypeEntity) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2EntityTypeEntity + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDialogflowV2EventInput: Events allow for matching intents +// by event name instead of the natural +// language input. For instance, input `` can trigger a personalized +// welcome response. +// The parameter `name` may be used by the agent in the +// response: +// `“Hello #welcome_event.name! What can I do for you today?”`. +type GoogleCloudDialogflowV2EventInput struct { + // LanguageCode: Required. The language of this query. See + // [Language + // Support](https://dialogflow.com/docs/languages) for a list of + // the + // currently supported language codes. Note that queries in the same + // session + // do not necessarily need to specify the same language. + LanguageCode string `json:"languageCode,omitempty"` + + // Name: Required. The unique identifier of the event. + Name string `json:"name,omitempty"` + + // Parameters: Optional. The collection of parameters associated with + // the event. + Parameters googleapi.RawMessage `json:"parameters,omitempty"` + + // ForceSendFields is a list of field names (e.g. "LanguageCode") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "LanguageCode") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDialogflowV2EventInput) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2EventInput + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDialogflowV2ExportAgentRequest: The request message for +// Agents.ExportAgent. +type GoogleCloudDialogflowV2ExportAgentRequest struct { + // AgentUri: Optional. The Google Cloud Storage URI to export the agent + // to. + // Note: The URI must start with + // "gs://". If left unspecified, the serialized agent is returned + // inline. + AgentUri string `json:"agentUri,omitempty"` + + // ForceSendFields is a list of field names (e.g. "AgentUri") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "AgentUri") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDialogflowV2ExportAgentRequest) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2ExportAgentRequest + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDialogflowV2ExportAgentResponse: The response message for +// Agents.ExportAgent. +type GoogleCloudDialogflowV2ExportAgentResponse struct { + // AgentContent: The exported agent. + // + // Example for how to export an agent to a zip file via a command + // line: + // + // curl \ + // + // 'https://dialogflow.googleapis.com/v2/projects//agent:ex + // port'\ + // -X POST \ + // -H 'Authorization: Bearer '$(gcloud auth print-access-token) \ + // -H 'Accept: application/json' \ + // -H 'Content-Type: application/json' \ + // --compressed \ + // --data-binary '{}' \ + // | grep agentContent | sed -e 's/.*"agentContent": "\([^"]*\)".*/\1/' + // \ + // | base64 --decode > + AgentContent string `json:"agentContent,omitempty"` + + // AgentUri: The URI to a file containing the exported agent. This field + // is populated + // only if `agent_uri` is specified in `ExportAgentRequest`. + AgentUri string `json:"agentUri,omitempty"` + + // ForceSendFields is a list of field names (e.g. "AgentContent") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "AgentContent") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDialogflowV2ExportAgentResponse) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2ExportAgentResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDialogflowV2ImportAgentRequest: The request message for +// Agents.ImportAgent. +type GoogleCloudDialogflowV2ImportAgentRequest struct { + // AgentContent: The agent to import. + // + // Example for how to import an agent via the command line: + // + // curl \ + // + // 'https://dialogflow.googleapis.com/v2/projects//agent:im + // port\ + // -X POST \ + // -H 'Authorization: Bearer '$(gcloud auth print-access-token) \ + // -H 'Accept: application/json' \ + // -H 'Content-Type: application/json' \ + // --compressed \ + // --data-binary "{ + // 'agentContent': '$(cat | base64 -w 0)' + // }" + AgentContent string `json:"agentContent,omitempty"` + + // AgentUri: The URI to a Google Cloud Storage file containing the agent + // to import. + // Note: The URI must start with "gs://". + AgentUri string `json:"agentUri,omitempty"` + + // ForceSendFields is a list of field names (e.g. "AgentContent") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "AgentContent") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDialogflowV2ImportAgentRequest) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2ImportAgentRequest + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDialogflowV2InputAudioConfig: Instructs the speech +// recognizer how to process the audio content. +type GoogleCloudDialogflowV2InputAudioConfig struct { + // AudioEncoding: Required. Audio encoding of the audio content to + // process. + // + // Possible values: + // "AUDIO_ENCODING_UNSPECIFIED" - Not specified. + // "AUDIO_ENCODING_LINEAR_16" - Uncompressed 16-bit signed + // little-endian samples (Linear PCM). + // "AUDIO_ENCODING_FLAC" - + // [`FLAC`](https://xiph.org/flac/documentation.html) (Free Lossless + // Audio + // Codec) is the recommended encoding because it is lossless + // (therefore + // recognition is not compromised) and requires only about half + // the + // bandwidth of `LINEAR16`. `FLAC` stream encoding supports 16-bit + // and + // 24-bit samples, however, not all fields in `STREAMINFO` are + // supported. + // "AUDIO_ENCODING_MULAW" - 8-bit samples that compand 14-bit audio + // samples using G.711 PCMU/mu-law. + // "AUDIO_ENCODING_AMR" - Adaptive Multi-Rate Narrowband codec. + // `sample_rate_hertz` must be 8000. + // "AUDIO_ENCODING_AMR_WB" - Adaptive Multi-Rate Wideband codec. + // `sample_rate_hertz` must be 16000. + // "AUDIO_ENCODING_OGG_OPUS" - Opus encoded audio frames in Ogg + // container + // ([OggOpus](https://wiki.xiph.org/OggOpus)). + // `sample_rate_her + // tz` must be 16000. + // "AUDIO_ENCODING_SPEEX_WITH_HEADER_BYTE" - Although the use of lossy + // encodings is not recommended, if a very low + // bitrate encoding is required, `OGG_OPUS` is highly preferred + // over + // Speex encoding. The [Speex](https://speex.org/) encoding supported + // by + // Dialogflow API has a header byte in each block, as in MIME + // type + // `audio/x-speex-with-header-byte`. + // It is a variant of the RTP Speex encoding defined in + // [RFC 5574](https://tools.ietf.org/html/rfc5574). + // The stream is a sequence of blocks, one block per RTP packet. Each + // block + // starts with a byte containing the length of the block, in bytes, + // followed + // by one or more frames of Speex data, padded to an integral number + // of + // bytes (octets) as specified in RFC 5574. In other words, each RTP + // header + // is replaced with a single byte containing the block length. Only + // Speex + // wideband is supported. `sample_rate_hertz` must be 16000. + AudioEncoding string `json:"audioEncoding,omitempty"` + + // LanguageCode: Required. The language of the supplied audio. + // Dialogflow does not do + // translations. See + // [Language + // Support](https://dialogflow.com/docs/languages) for a list of + // the + // currently supported language codes. Note that queries in the same + // session + // do not necessarily need to specify the same language. + LanguageCode string `json:"languageCode,omitempty"` + + // PhraseHints: Optional. The collection of phrase hints which are used + // to boost accuracy + // of speech recognition. + // Refer to [Cloud Speech API + // documentation](/speech/docs/basics#phrase-hints) + // for more details. + PhraseHints []string `json:"phraseHints,omitempty"` + + // SampleRateHertz: Required. Sample rate (in Hertz) of the audio + // content sent in the query. + // Refer to [Cloud Speech API documentation](/speech/docs/basics) for + // more + // details. + SampleRateHertz int64 `json:"sampleRateHertz,omitempty"` + + // ForceSendFields is a list of field names (e.g. "AudioEncoding") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "AudioEncoding") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDialogflowV2InputAudioConfig) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2InputAudioConfig + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDialogflowV2Intent: Represents an intent. +// Intents convert a number of user expressions or patterns into an +// action. An +// action is an extraction of a user command or sentence semantics. +type GoogleCloudDialogflowV2Intent struct { + // Action: Optional. The name of the action associated with the intent. + Action string `json:"action,omitempty"` + + // DefaultResponsePlatforms: Optional. The list of platforms for which + // the first response will be + // taken from among the messages assigned to the DEFAULT_PLATFORM. + // + // Possible values: + // "PLATFORM_UNSPECIFIED" - Not specified. + // "FACEBOOK" - Facebook. + // "SLACK" - Slack. + // "TELEGRAM" - Telegram. + // "KIK" - Kik. + // "SKYPE" - Skype. + // "LINE" - Line. + // "VIBER" - Viber. + // "ACTIONS_ON_GOOGLE" - Actions on Google. + DefaultResponsePlatforms []string `json:"defaultResponsePlatforms,omitempty"` + + // DisplayName: Required. The name of this intent. + DisplayName string `json:"displayName,omitempty"` + + // Events: Optional. The collection of event names that trigger the + // intent. + // If the collection of input contexts is not empty, all of the contexts + // must + // be present in the active user session for an event to trigger this + // intent. + Events []string `json:"events,omitempty"` + + // FollowupIntentInfo: Optional. Collection of information about all + // followup intents that have + // name of this intent as a root_name. + FollowupIntentInfo []*GoogleCloudDialogflowV2IntentFollowupIntentInfo `json:"followupIntentInfo,omitempty"` + + // InputContextNames: Optional. The list of context names required for + // this intent to be + // triggered. + // Format: `projects//agent/sessions/-/contexts/`. + InputContextNames []string `json:"inputContextNames,omitempty"` + + // IsFallback: Optional. Indicates whether this is a fallback intent. + IsFallback bool `json:"isFallback,omitempty"` + + // Messages: Optional. The collection of rich messages corresponding to + // the + // `Response` field in the Dialogflow console. + Messages []*GoogleCloudDialogflowV2IntentMessage `json:"messages,omitempty"` + + // MlDisabled: Optional. Indicates whether Machine Learning is disabled + // for the intent. + // Note: If `ml_diabled` setting is set to true, then this intent is + // not + // taken into account during inference in `ML ONLY` match mode. + // Also, + // auto-markup in the UI is turned off. + MlDisabled bool `json:"mlDisabled,omitempty"` + + // Name: Required for all methods except `create` (`create` populates + // the name + // automatically. + // The unique identifier of this intent. + // Format: `projects//agent/intents/`. + Name string `json:"name,omitempty"` + + // OutputContexts: Optional. The collection of contexts that are + // activated when the intent + // is matched. Context messages in this collection should not set + // the + // parameters field. Setting the `lifespan_count` to 0 will reset the + // context + // when the intent is matched. + // Format: `projects//agent/sessions/-/contexts/`. + OutputContexts []*GoogleCloudDialogflowV2Context `json:"outputContexts,omitempty"` + + // Parameters: Optional. The collection of parameters associated with + // the intent. + Parameters []*GoogleCloudDialogflowV2IntentParameter `json:"parameters,omitempty"` + + // ParentFollowupIntentName: The unique identifier of the parent intent + // in the chain of followup + // intents. + // It identifies the parent followup intent. + // Format: `projects//agent/intents/`. + ParentFollowupIntentName string `json:"parentFollowupIntentName,omitempty"` + + // Priority: Optional. The priority of this intent. Higher numbers + // represent higher + // priorities. Zero or negative numbers mean that the intent is + // disabled. + Priority int64 `json:"priority,omitempty"` + + // ResetContexts: Optional. Indicates whether to delete all contexts in + // the current + // session when this intent is matched. + ResetContexts bool `json:"resetContexts,omitempty"` + + // RootFollowupIntentName: The unique identifier of the root intent in + // the chain of followup intents. + // It identifies the correct followup intents chain for this + // intent. + // Format: `projects//agent/intents/`. + RootFollowupIntentName string `json:"rootFollowupIntentName,omitempty"` + + // TrainingPhrases: Optional. The collection of examples/templates that + // the agent is + // trained on. + TrainingPhrases []*GoogleCloudDialogflowV2IntentTrainingPhrase `json:"trainingPhrases,omitempty"` + + // WebhookState: Required. Indicates whether webhooks are enabled for + // the intent. + // + // Possible values: + // "WEBHOOK_STATE_UNSPECIFIED" - Webhook is disabled in the agent and + // in the intent. + // "WEBHOOK_STATE_ENABLED" - Webhook is enabled in the agent and in + // the intent. + // "WEBHOOK_STATE_ENABLED_FOR_SLOT_FILLING" - Webhook is enabled in + // the agent and in the intent. Also, each slot + // filling prompt is forwarded to the webhook. + WebhookState string `json:"webhookState,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "Action") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Action") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDialogflowV2Intent) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2Intent + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDialogflowV2IntentBatch: This message is a wrapper around +// a collection of intents. +type GoogleCloudDialogflowV2IntentBatch struct { + // Intents: A collection of intents. + Intents []*GoogleCloudDialogflowV2Intent `json:"intents,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Intents") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Intents") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDialogflowV2IntentBatch) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2IntentBatch + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDialogflowV2IntentFollowupIntentInfo: Represents a single +// followup intent in the chain. +type GoogleCloudDialogflowV2IntentFollowupIntentInfo struct { + // FollowupIntentName: The unique identifier of the followup + // intent. + // Format: `projects//agent/intents/`. + FollowupIntentName string `json:"followupIntentName,omitempty"` + + // ParentFollowupIntentName: The unique identifier of the followup + // intent parent. + // Format: `projects//agent/intents/`. + ParentFollowupIntentName string `json:"parentFollowupIntentName,omitempty"` + + // ForceSendFields is a list of field names (e.g. "FollowupIntentName") + // to unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "FollowupIntentName") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDialogflowV2IntentFollowupIntentInfo) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2IntentFollowupIntentInfo + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDialogflowV2IntentMessage: Corresponds to the `Response` +// field in the Dialogflow console. +type GoogleCloudDialogflowV2IntentMessage struct { + // BasicCard: The basic card response for Actions on Google. + BasicCard *GoogleCloudDialogflowV2IntentMessageBasicCard `json:"basicCard,omitempty"` + + // Card: The card response. + Card *GoogleCloudDialogflowV2IntentMessageCard `json:"card,omitempty"` + + // CarouselSelect: The carousel card response for Actions on Google. + CarouselSelect *GoogleCloudDialogflowV2IntentMessageCarouselSelect `json:"carouselSelect,omitempty"` + + // Image: The image response. + Image *GoogleCloudDialogflowV2IntentMessageImage `json:"image,omitempty"` + + // LinkOutSuggestion: The link out suggestion chip for Actions on + // Google. + LinkOutSuggestion *GoogleCloudDialogflowV2IntentMessageLinkOutSuggestion `json:"linkOutSuggestion,omitempty"` + + // ListSelect: The list card response for Actions on Google. + ListSelect *GoogleCloudDialogflowV2IntentMessageListSelect `json:"listSelect,omitempty"` + + // Payload: The response containing a custom payload. + Payload googleapi.RawMessage `json:"payload,omitempty"` + + // Platform: Optional. The platform that this message is intended for. + // + // Possible values: + // "PLATFORM_UNSPECIFIED" - Not specified. + // "FACEBOOK" - Facebook. + // "SLACK" - Slack. + // "TELEGRAM" - Telegram. + // "KIK" - Kik. + // "SKYPE" - Skype. + // "LINE" - Line. + // "VIBER" - Viber. + // "ACTIONS_ON_GOOGLE" - Actions on Google. + Platform string `json:"platform,omitempty"` + + // QuickReplies: The quick replies response. + QuickReplies *GoogleCloudDialogflowV2IntentMessageQuickReplies `json:"quickReplies,omitempty"` + + // SimpleResponses: The voice and text-only responses for Actions on + // Google. + SimpleResponses *GoogleCloudDialogflowV2IntentMessageSimpleResponses `json:"simpleResponses,omitempty"` + + // Suggestions: The suggestion chips for Actions on Google. + Suggestions *GoogleCloudDialogflowV2IntentMessageSuggestions `json:"suggestions,omitempty"` + + // Text: The text response. + Text *GoogleCloudDialogflowV2IntentMessageText `json:"text,omitempty"` + + // ForceSendFields is a list of field names (e.g. "BasicCard") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "BasicCard") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDialogflowV2IntentMessage) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2IntentMessage + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDialogflowV2IntentMessageBasicCard: The basic card +// message. Useful for displaying information. +type GoogleCloudDialogflowV2IntentMessageBasicCard struct { + // Buttons: Optional. The collection of card buttons. + Buttons []*GoogleCloudDialogflowV2IntentMessageBasicCardButton `json:"buttons,omitempty"` + + // FormattedText: Required, unless image is present. The body text of + // the card. + FormattedText string `json:"formattedText,omitempty"` + + // Image: Optional. The image for the card. + Image *GoogleCloudDialogflowV2IntentMessageImage `json:"image,omitempty"` + + // Subtitle: Optional. The subtitle of the card. + Subtitle string `json:"subtitle,omitempty"` + + // Title: Optional. The title of the card. + Title string `json:"title,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Buttons") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Buttons") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDialogflowV2IntentMessageBasicCard) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2IntentMessageBasicCard + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDialogflowV2IntentMessageBasicCardButton: The button +// object that appears at the bottom of a card. +type GoogleCloudDialogflowV2IntentMessageBasicCardButton struct { + // OpenUriAction: Required. Action to take when a user taps on the + // button. + OpenUriAction *GoogleCloudDialogflowV2IntentMessageBasicCardButtonOpenUriAction `json:"openUriAction,omitempty"` + + // Title: Required. The title of the button. + Title string `json:"title,omitempty"` + + // ForceSendFields is a list of field names (e.g. "OpenUriAction") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "OpenUriAction") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDialogflowV2IntentMessageBasicCardButton) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2IntentMessageBasicCardButton + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDialogflowV2IntentMessageBasicCardButtonOpenUriAction: +// Opens the given URI. +type GoogleCloudDialogflowV2IntentMessageBasicCardButtonOpenUriAction struct { + // Uri: Required. The HTTP or HTTPS scheme URI. + Uri string `json:"uri,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Uri") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Uri") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDialogflowV2IntentMessageBasicCardButtonOpenUriAction) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2IntentMessageBasicCardButtonOpenUriAction + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDialogflowV2IntentMessageCard: The card response message. +type GoogleCloudDialogflowV2IntentMessageCard struct { + // Buttons: Optional. The collection of card buttons. + Buttons []*GoogleCloudDialogflowV2IntentMessageCardButton `json:"buttons,omitempty"` + + // ImageUri: Optional. The public URI to an image file for the card. + ImageUri string `json:"imageUri,omitempty"` + + // Subtitle: Optional. The subtitle of the card. + Subtitle string `json:"subtitle,omitempty"` + + // Title: Optional. The title of the card. + Title string `json:"title,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Buttons") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Buttons") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDialogflowV2IntentMessageCard) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2IntentMessageCard + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDialogflowV2IntentMessageCardButton: Optional. Contains +// information about a button. +type GoogleCloudDialogflowV2IntentMessageCardButton struct { + // Postback: Optional. The text to send back to the Dialogflow API or a + // URI to + // open. + Postback string `json:"postback,omitempty"` + + // Text: Optional. The text to show on the button. + Text string `json:"text,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Postback") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Postback") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDialogflowV2IntentMessageCardButton) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2IntentMessageCardButton + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDialogflowV2IntentMessageCarouselSelect: The card for +// presenting a carousel of options to select from. +type GoogleCloudDialogflowV2IntentMessageCarouselSelect struct { + // Items: Required. Carousel items. + Items []*GoogleCloudDialogflowV2IntentMessageCarouselSelectItem `json:"items,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Items") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Items") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDialogflowV2IntentMessageCarouselSelect) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2IntentMessageCarouselSelect + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDialogflowV2IntentMessageCarouselSelectItem: An item in +// the carousel. +type GoogleCloudDialogflowV2IntentMessageCarouselSelectItem struct { + // Description: Optional. The body text of the card. + Description string `json:"description,omitempty"` + + // Image: Optional. The image to display. + Image *GoogleCloudDialogflowV2IntentMessageImage `json:"image,omitempty"` + + // Info: Required. Additional info about the option item. + Info *GoogleCloudDialogflowV2IntentMessageSelectItemInfo `json:"info,omitempty"` + + // Title: Required. Title of the carousel item. + Title string `json:"title,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Description") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Description") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDialogflowV2IntentMessageCarouselSelectItem) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2IntentMessageCarouselSelectItem + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDialogflowV2IntentMessageImage: The image response +// message. +type GoogleCloudDialogflowV2IntentMessageImage struct { + // AccessibilityText: Optional. A text description of the image to be + // used for accessibility, + // e.g., screen readers. + AccessibilityText string `json:"accessibilityText,omitempty"` + + // ImageUri: Optional. The public URI to an image file. + ImageUri string `json:"imageUri,omitempty"` + + // ForceSendFields is a list of field names (e.g. "AccessibilityText") + // to unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "AccessibilityText") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDialogflowV2IntentMessageImage) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2IntentMessageImage + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDialogflowV2IntentMessageLinkOutSuggestion: The suggestion +// chip message that allows the user to jump out to the app +// or website associated with this agent. +type GoogleCloudDialogflowV2IntentMessageLinkOutSuggestion struct { + // DestinationName: Required. The name of the app or site this chip is + // linking to. + DestinationName string `json:"destinationName,omitempty"` + + // Uri: Required. The URI of the app or site to open when the user taps + // the + // suggestion chip. + Uri string `json:"uri,omitempty"` + + // ForceSendFields is a list of field names (e.g. "DestinationName") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "DestinationName") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDialogflowV2IntentMessageLinkOutSuggestion) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2IntentMessageLinkOutSuggestion + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDialogflowV2IntentMessageListSelect: The card for +// presenting a list of options to select from. +type GoogleCloudDialogflowV2IntentMessageListSelect struct { + // Items: Required. List items. + Items []*GoogleCloudDialogflowV2IntentMessageListSelectItem `json:"items,omitempty"` + + // Title: Optional. The overall title of the list. + Title string `json:"title,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Items") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Items") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDialogflowV2IntentMessageListSelect) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2IntentMessageListSelect + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDialogflowV2IntentMessageListSelectItem: An item in the +// list. +type GoogleCloudDialogflowV2IntentMessageListSelectItem struct { + // Description: Optional. The main text describing the item. + Description string `json:"description,omitempty"` + + // Image: Optional. The image to display. + Image *GoogleCloudDialogflowV2IntentMessageImage `json:"image,omitempty"` + + // Info: Required. Additional information about this option. + Info *GoogleCloudDialogflowV2IntentMessageSelectItemInfo `json:"info,omitempty"` + + // Title: Required. The title of the list item. + Title string `json:"title,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Description") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Description") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDialogflowV2IntentMessageListSelectItem) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2IntentMessageListSelectItem + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDialogflowV2IntentMessageQuickReplies: The quick replies +// response message. +type GoogleCloudDialogflowV2IntentMessageQuickReplies struct { + // QuickReplies: Optional. The collection of quick replies. + QuickReplies []string `json:"quickReplies,omitempty"` + + // Title: Optional. The title of the collection of quick replies. + Title string `json:"title,omitempty"` + + // ForceSendFields is a list of field names (e.g. "QuickReplies") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "QuickReplies") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDialogflowV2IntentMessageQuickReplies) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2IntentMessageQuickReplies + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDialogflowV2IntentMessageSelectItemInfo: Additional info +// about the select item for when it is triggered in a +// dialog. +type GoogleCloudDialogflowV2IntentMessageSelectItemInfo struct { + // Key: Required. A unique key that will be sent back to the agent if + // this + // response is given. + Key string `json:"key,omitempty"` + + // Synonyms: Optional. A list of synonyms that can also be used to + // trigger this + // item in dialog. + Synonyms []string `json:"synonyms,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Key") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Key") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDialogflowV2IntentMessageSelectItemInfo) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2IntentMessageSelectItemInfo + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDialogflowV2IntentMessageSimpleResponse: The simple +// response message containing speech or text. +type GoogleCloudDialogflowV2IntentMessageSimpleResponse struct { + // DisplayText: Optional. The text to display. + DisplayText string `json:"displayText,omitempty"` + + // Ssml: One of text_to_speech or ssml must be provided. Structured + // spoken + // response to the user in the SSML format. Mutually exclusive + // with + // text_to_speech. + Ssml string `json:"ssml,omitempty"` + + // TextToSpeech: One of text_to_speech or ssml must be provided. The + // plain text of the + // speech output. Mutually exclusive with ssml. + TextToSpeech string `json:"textToSpeech,omitempty"` + + // ForceSendFields is a list of field names (e.g. "DisplayText") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "DisplayText") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDialogflowV2IntentMessageSimpleResponse) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2IntentMessageSimpleResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDialogflowV2IntentMessageSimpleResponses: The collection +// of simple response candidates. +// This message in `QueryResult.fulfillment_messages` +// and +// `WebhookResponse.fulfillment_messages` should contain only +// one +// `SimpleResponse`. +type GoogleCloudDialogflowV2IntentMessageSimpleResponses struct { + // SimpleResponses: Required. The list of simple responses. + SimpleResponses []*GoogleCloudDialogflowV2IntentMessageSimpleResponse `json:"simpleResponses,omitempty"` + + // ForceSendFields is a list of field names (e.g. "SimpleResponses") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "SimpleResponses") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDialogflowV2IntentMessageSimpleResponses) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2IntentMessageSimpleResponses + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDialogflowV2IntentMessageSuggestion: The suggestion chip +// message that the user can tap to quickly post a reply +// to the conversation. +type GoogleCloudDialogflowV2IntentMessageSuggestion struct { + // Title: Required. The text shown the in the suggestion chip. + Title string `json:"title,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Title") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Title") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDialogflowV2IntentMessageSuggestion) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2IntentMessageSuggestion + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDialogflowV2IntentMessageSuggestions: The collection of +// suggestions. +type GoogleCloudDialogflowV2IntentMessageSuggestions struct { + // Suggestions: Required. The list of suggested replies. + Suggestions []*GoogleCloudDialogflowV2IntentMessageSuggestion `json:"suggestions,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Suggestions") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Suggestions") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDialogflowV2IntentMessageSuggestions) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2IntentMessageSuggestions + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDialogflowV2IntentMessageText: The text response message. +type GoogleCloudDialogflowV2IntentMessageText struct { + // Text: Optional. The collection of the agent's responses. + Text []string `json:"text,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Text") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Text") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDialogflowV2IntentMessageText) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2IntentMessageText + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDialogflowV2IntentParameter: Represents intent parameters. +type GoogleCloudDialogflowV2IntentParameter struct { + // DefaultValue: Optional. The default value to use when the `value` + // yields an empty + // result. + // Default values can be extracted from contexts by using the + // following + // syntax: `#context_name.parameter_name`. + DefaultValue string `json:"defaultValue,omitempty"` + + // DisplayName: Required. The name of the parameter. + DisplayName string `json:"displayName,omitempty"` + + // EntityTypeDisplayName: Optional. The name of the entity type, + // prefixed with `@`, that + // describes values of the parameter. If the parameter is + // required, this must be provided. + EntityTypeDisplayName string `json:"entityTypeDisplayName,omitempty"` + + // IsList: Optional. Indicates whether the parameter represents a list + // of values. + IsList bool `json:"isList,omitempty"` + + // Mandatory: Optional. Indicates whether the parameter is required. + // That is, + // whether the intent cannot be completed without collecting the + // parameter + // value. + Mandatory bool `json:"mandatory,omitempty"` + + // Name: The unique identifier of this parameter. + Name string `json:"name,omitempty"` + + // Prompts: Optional. The collection of prompts that the agent can + // present to the + // user in order to collect value for the parameter. + Prompts []string `json:"prompts,omitempty"` + + // Value: Optional. The definition of the parameter value. It can be: + // - a constant string, + // - a parameter value defined as `$parameter_name`, + // - an original parameter value defined as + // `$parameter_name.original`, + // - a parameter value from some context defined as + // `#context_name.parameter_name`. + Value string `json:"value,omitempty"` + + // ForceSendFields is a list of field names (e.g. "DefaultValue") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "DefaultValue") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDialogflowV2IntentParameter) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2IntentParameter + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDialogflowV2IntentTrainingPhrase: Represents an example or +// template that the agent is trained on. +type GoogleCloudDialogflowV2IntentTrainingPhrase struct { + // Name: Required. The unique identifier of this training phrase. + Name string `json:"name,omitempty"` + + // Parts: Required. The collection of training phrase parts (can be + // annotated). + // Fields: `entity_type`, `alias` and `user_defined` should be + // populated + // only for the annotated parts of the training phrase. + Parts []*GoogleCloudDialogflowV2IntentTrainingPhrasePart `json:"parts,omitempty"` + + // TimesAddedCount: Optional. Indicates how many times this example or + // template was added to + // the intent. Each time a developer adds an existing sample by editing + // an + // intent or training, this counter is increased. + TimesAddedCount int64 `json:"timesAddedCount,omitempty"` + + // Type: Required. The type of the training phrase. + // + // Possible values: + // "TYPE_UNSPECIFIED" - Not specified. This value should never be + // used. + // "EXAMPLE" - Examples do not contain @-prefixed entity type names, + // but example parts + // can be annotated with entity types. + // "TEMPLATE" - Templates are not annotated with entity types, but + // they can contain + // @-prefixed entity type names as substrings. + Type string `json:"type,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Name") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Name") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDialogflowV2IntentTrainingPhrase) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2IntentTrainingPhrase + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDialogflowV2IntentTrainingPhrasePart: Represents a part of +// a training phrase. +type GoogleCloudDialogflowV2IntentTrainingPhrasePart struct { + // Alias: Optional. The parameter name for the value extracted from + // the + // annotated part of the example. + Alias string `json:"alias,omitempty"` + + // EntityType: Optional. The entity type name prefixed with `@`. This + // field is + // required for the annotated part of the text and applies only + // to + // examples. + EntityType string `json:"entityType,omitempty"` + + // Text: Required. The text corresponding to the example or template, + // if there are no annotations. For + // annotated examples, it is the text for one of the example's parts. + Text string `json:"text,omitempty"` + + // UserDefined: Optional. Indicates whether the text was manually + // annotated by the + // developer. + UserDefined bool `json:"userDefined,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Alias") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Alias") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDialogflowV2IntentTrainingPhrasePart) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2IntentTrainingPhrasePart + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDialogflowV2ListContextsResponse: The response message for +// Contexts.ListContexts. +type GoogleCloudDialogflowV2ListContextsResponse struct { + // Contexts: The list of contexts. There will be a maximum number of + // items + // returned based on the page_size field in the request. + Contexts []*GoogleCloudDialogflowV2Context `json:"contexts,omitempty"` + + // NextPageToken: Token to retrieve the next page of results, or empty + // if there are no + // more results in the list. + NextPageToken string `json:"nextPageToken,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "Contexts") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Contexts") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDialogflowV2ListContextsResponse) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2ListContextsResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDialogflowV2ListEntityTypesResponse: The response message +// for EntityTypes.ListEntityTypes. +type GoogleCloudDialogflowV2ListEntityTypesResponse struct { + // EntityTypes: The list of agent entity types. There will be a maximum + // number of items + // returned based on the page_size field in the request. + EntityTypes []*GoogleCloudDialogflowV2EntityType `json:"entityTypes,omitempty"` + + // NextPageToken: Token to retrieve the next page of results, or empty + // if there are no + // more results in the list. + NextPageToken string `json:"nextPageToken,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "EntityTypes") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "EntityTypes") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDialogflowV2ListEntityTypesResponse) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2ListEntityTypesResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDialogflowV2ListIntentsResponse: The response message for +// Intents.ListIntents. +type GoogleCloudDialogflowV2ListIntentsResponse struct { + // Intents: The list of agent intents. There will be a maximum number of + // items + // returned based on the page_size field in the request. + Intents []*GoogleCloudDialogflowV2Intent `json:"intents,omitempty"` + + // NextPageToken: Token to retrieve the next page of results, or empty + // if there are no + // more results in the list. + NextPageToken string `json:"nextPageToken,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "Intents") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Intents") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDialogflowV2ListIntentsResponse) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2ListIntentsResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDialogflowV2ListSessionEntityTypesResponse: The response +// message for SessionEntityTypes.ListSessionEntityTypes. +type GoogleCloudDialogflowV2ListSessionEntityTypesResponse struct { + // NextPageToken: Token to retrieve the next page of results, or empty + // if there are no + // more results in the list. + NextPageToken string `json:"nextPageToken,omitempty"` + + // SessionEntityTypes: The list of session entity types. There will be a + // maximum number of items + // returned based on the page_size field in the request. + SessionEntityTypes []*GoogleCloudDialogflowV2SessionEntityType `json:"sessionEntityTypes,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "NextPageToken") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "NextPageToken") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDialogflowV2ListSessionEntityTypesResponse) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2ListSessionEntityTypesResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDialogflowV2OriginalDetectIntentRequest: Represents the +// contents of the original request that was passed to +// the `[Streaming]DetectIntent` call. +type GoogleCloudDialogflowV2OriginalDetectIntentRequest struct { + // Payload: Optional. This field is set to the value of + // `QueryParameters.payload` field + // passed in the request. + Payload googleapi.RawMessage `json:"payload,omitempty"` + + // Source: The source of this request, e.g., `google`, `facebook`, + // `slack`. It is set + // by Dialogflow-owned servers. Possible values of this field correspond + // to + // Intent.Message.Platform. + Source string `json:"source,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Payload") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Payload") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDialogflowV2OriginalDetectIntentRequest) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2OriginalDetectIntentRequest + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDialogflowV2QueryInput: Represents the query input. It can +// contain either: +// +// 1. An audio config which +// instructs the speech recognizer how to process the speech +// audio. +// +// 2. A conversational query in the form of text,. +// +// 3. An event that specifies which intent to trigger. +type GoogleCloudDialogflowV2QueryInput struct { + // AudioConfig: Instructs the speech recognizer how to process the + // speech audio. + AudioConfig *GoogleCloudDialogflowV2InputAudioConfig `json:"audioConfig,omitempty"` + + // Event: The event to be processed. + Event *GoogleCloudDialogflowV2EventInput `json:"event,omitempty"` + + // Text: The natural language text to be processed. + Text *GoogleCloudDialogflowV2TextInput `json:"text,omitempty"` + + // ForceSendFields is a list of field names (e.g. "AudioConfig") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "AudioConfig") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDialogflowV2QueryInput) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2QueryInput + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDialogflowV2QueryParameters: Represents the parameters of +// the conversational query. +type GoogleCloudDialogflowV2QueryParameters struct { + // Contexts: Optional. The collection of contexts to be activated before + // this query is + // executed. + Contexts []*GoogleCloudDialogflowV2Context `json:"contexts,omitempty"` + + // GeoLocation: Optional. The geo location of this conversational query. + GeoLocation *GoogleTypeLatLng `json:"geoLocation,omitempty"` + + // Payload: Optional. This field can be used to pass custom data into + // the webhook + // associated with the agent. Arbitrary JSON objects are supported. + Payload googleapi.RawMessage `json:"payload,omitempty"` + + // ResetContexts: Optional. Specifies whether to delete all contexts in + // the current session + // before the new ones are activated. + ResetContexts bool `json:"resetContexts,omitempty"` + + // SessionEntityTypes: Optional. The collection of session entity types + // to replace or extend + // developer entities with for this query only. The entity synonyms + // apply + // to all languages. + SessionEntityTypes []*GoogleCloudDialogflowV2SessionEntityType `json:"sessionEntityTypes,omitempty"` + + // TimeZone: Optional. The time zone of this conversational query from + // the + // [time zone database](https://www.iana.org/time-zones), + // e.g., + // America/New_York, Europe/Paris. If not provided, the time zone + // specified in + // agent settings is used. + TimeZone string `json:"timeZone,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Contexts") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Contexts") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDialogflowV2QueryParameters) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2QueryParameters + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDialogflowV2QueryResult: Represents the result of +// conversational query or event processing. +type GoogleCloudDialogflowV2QueryResult struct { + // Action: The action name from the matched intent. + Action string `json:"action,omitempty"` + + // AllRequiredParamsPresent: This field is set to: + // - `false` if the matched intent has required parameters and not all + // of + // the required parameter values have been collected. + // - `true` if all required parameter values have been collected, or if + // the + // matched intent doesn't contain any required parameters. + AllRequiredParamsPresent bool `json:"allRequiredParamsPresent,omitempty"` + + // DiagnosticInfo: The free-form diagnostic info. For example, this + // field + // could contain webhook call latency. + DiagnosticInfo googleapi.RawMessage `json:"diagnosticInfo,omitempty"` + + // FulfillmentMessages: The collection of rich messages to present to + // the user. + FulfillmentMessages []*GoogleCloudDialogflowV2IntentMessage `json:"fulfillmentMessages,omitempty"` + + // FulfillmentText: The text to be pronounced to the user or shown on + // the screen. + FulfillmentText string `json:"fulfillmentText,omitempty"` + + // Intent: The intent that matched the conversational query. Some, + // not + // all fields are filled in this message, including but not limited + // to: + // `name`, `display_name` and `webhook_state`. + Intent *GoogleCloudDialogflowV2Intent `json:"intent,omitempty"` + + // IntentDetectionConfidence: The intent detection confidence. Values + // range from 0.0 + // (completely uncertain) to 1.0 (completely certain). + IntentDetectionConfidence float64 `json:"intentDetectionConfidence,omitempty"` + + // LanguageCode: The language that was triggered during intent + // detection. + // See [Language + // Support](https://dialogflow.com/docs/reference/language) + // for a list of the currently supported language codes. + LanguageCode string `json:"languageCode,omitempty"` + + // OutputContexts: The collection of output contexts. If + // applicable, + // `output_contexts.parameters` contains entries with name + // `.original` containing the original parameter + // values + // before the query. + OutputContexts []*GoogleCloudDialogflowV2Context `json:"outputContexts,omitempty"` + + // Parameters: The collection of extracted parameters. + Parameters googleapi.RawMessage `json:"parameters,omitempty"` + + // QueryText: The original conversational query text: + // - If natural language text was provided as input, `query_text` + // contains + // a copy of the input. + // - If natural language speech audio was provided as input, + // `query_text` + // contains the speech recognition result. If speech recognizer + // produced + // multiple alternatives, a particular one is picked. + // - If an event was provided as input, `query_text` is not set. + QueryText string `json:"queryText,omitempty"` + + // SpeechRecognitionConfidence: The Speech recognition confidence + // between 0.0 and 1.0. A higher number + // indicates an estimated greater likelihood that the recognized words + // are + // correct. The default of 0.0 is a sentinel value indicating that + // confidence + // was not set. + // + // You should not rely on this field as it isn't guaranteed to be + // accurate, or + // even set. In particular this field isn't set in Webhook calls and + // for + // StreamingDetectIntent since the streaming endpoint has separate + // confidence + // estimates per portion of the audio in StreamingRecognitionResult. + SpeechRecognitionConfidence float64 `json:"speechRecognitionConfidence,omitempty"` + + // WebhookPayload: If the query was fulfilled by a webhook call, this + // field is set to the + // value of the `payload` field returned in the webhook response. + WebhookPayload googleapi.RawMessage `json:"webhookPayload,omitempty"` + + // WebhookSource: If the query was fulfilled by a webhook call, this + // field is set to the + // value of the `source` field returned in the webhook response. + WebhookSource string `json:"webhookSource,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Action") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Action") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDialogflowV2QueryResult) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2QueryResult + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +func (s *GoogleCloudDialogflowV2QueryResult) UnmarshalJSON(data []byte) error { + type NoMethod GoogleCloudDialogflowV2QueryResult + var s1 struct { + IntentDetectionConfidence gensupport.JSONFloat64 `json:"intentDetectionConfidence"` + SpeechRecognitionConfidence gensupport.JSONFloat64 `json:"speechRecognitionConfidence"` + *NoMethod + } + s1.NoMethod = (*NoMethod)(s) + if err := json.Unmarshal(data, &s1); err != nil { + return err + } + s.IntentDetectionConfidence = float64(s1.IntentDetectionConfidence) + s.SpeechRecognitionConfidence = float64(s1.SpeechRecognitionConfidence) + return nil +} + +// GoogleCloudDialogflowV2RestoreAgentRequest: The request message for +// Agents.RestoreAgent. +type GoogleCloudDialogflowV2RestoreAgentRequest struct { + // AgentContent: The agent to restore. + // + // Example for how to restore an agent via the command line: + // + // curl \ + // + // 'https://dialogflow.googleapis.com/v2/projects//agent:re + // store\ + // -X POST \ + // -H 'Authorization: Bearer '$(gcloud auth print-access-token) \ + // -H 'Accept: application/json' \ + // -H 'Content-Type: application/json' \ + // --compressed \ + // --data-binary "{ + // 'agentContent': '$(cat | base64 -w 0)' + // }" \ + AgentContent string `json:"agentContent,omitempty"` + + // AgentUri: The URI to a Google Cloud Storage file containing the agent + // to restore. + // Note: The URI must start with "gs://". + AgentUri string `json:"agentUri,omitempty"` + + // ForceSendFields is a list of field names (e.g. "AgentContent") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "AgentContent") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDialogflowV2RestoreAgentRequest) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2RestoreAgentRequest + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDialogflowV2SearchAgentsResponse: The response message for +// Agents.SearchAgents. +type GoogleCloudDialogflowV2SearchAgentsResponse struct { + // Agents: The list of agents. There will be a maximum number of items + // returned based + // on the page_size field in the request. + Agents []*GoogleCloudDialogflowV2Agent `json:"agents,omitempty"` + + // NextPageToken: Token to retrieve the next page of results, or empty + // if there are no + // more results in the list. + NextPageToken string `json:"nextPageToken,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "Agents") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Agents") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDialogflowV2SearchAgentsResponse) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2SearchAgentsResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDialogflowV2SessionEntityType: Represents a session entity +// type. +// +// Extends or replaces a developer entity type at the user session level +// (we +// refer to the entity types defined at the agent level as "developer +// entity +// types"). +// +// Note: session entity types apply to all queries, regardless of the +// language. +type GoogleCloudDialogflowV2SessionEntityType struct { + // Entities: Required. The collection of entities associated with this + // session entity + // type. + Entities []*GoogleCloudDialogflowV2EntityTypeEntity `json:"entities,omitempty"` + + // EntityOverrideMode: Required. Indicates whether the additional data + // should override or + // supplement the developer entity type definition. + // + // Possible values: + // "ENTITY_OVERRIDE_MODE_UNSPECIFIED" - Not specified. This value + // should be never used. + // "ENTITY_OVERRIDE_MODE_OVERRIDE" - The collection of session + // entities overrides the collection of entities + // in the corresponding developer entity type. + // "ENTITY_OVERRIDE_MODE_SUPPLEMENT" - The collection of session + // entities extends the collection of entities in + // the corresponding developer entity type. + // Calls to `ListSessionEntityTypes`, + // `GetSessionEntityType`, + // `CreateSessionEntityType` and `UpdateSessionEntityType` return the + // full + // collection of entities from the developer entity type in the + // agent's + // default language and the session entity type. + EntityOverrideMode string `json:"entityOverrideMode,omitempty"` + + // Name: Required. The unique identifier of this session entity type. + // Format: + // `projects//agent/sessions//entityTypes/`. + Name string `json:"name,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "Entities") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Entities") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDialogflowV2SessionEntityType) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2SessionEntityType + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDialogflowV2TextInput: Represents the natural language +// text to be processed. +type GoogleCloudDialogflowV2TextInput struct { + // LanguageCode: Required. The language of this conversational query. + // See [Language + // Support](https://dialogflow.com/docs/languages) for a list of + // the + // currently supported language codes. Note that queries in the same + // session + // do not necessarily need to specify the same language. + LanguageCode string `json:"languageCode,omitempty"` + + // Text: Required. The UTF-8 encoded natural language text to be + // processed. + // Text length must not exceed 256 bytes. + Text string `json:"text,omitempty"` + + // ForceSendFields is a list of field names (e.g. "LanguageCode") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "LanguageCode") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDialogflowV2TextInput) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2TextInput + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDialogflowV2TrainAgentRequest: The request message for +// Agents.TrainAgent. +type GoogleCloudDialogflowV2TrainAgentRequest struct { +} + +// GoogleCloudDialogflowV2WebhookRequest: The request message for a +// webhook call. +type GoogleCloudDialogflowV2WebhookRequest struct { + // OriginalDetectIntentRequest: Optional. The contents of the original + // request that was passed to + // `[Streaming]DetectIntent` call. + OriginalDetectIntentRequest *GoogleCloudDialogflowV2OriginalDetectIntentRequest `json:"originalDetectIntentRequest,omitempty"` + + // QueryResult: The result of the conversational query or event + // processing. Contains the + // same value as `[Streaming]DetectIntentResponse.query_result`. + QueryResult *GoogleCloudDialogflowV2QueryResult `json:"queryResult,omitempty"` + + // ResponseId: The unique identifier of the response. Contains the same + // value as + // `[Streaming]DetectIntentResponse.response_id`. + ResponseId string `json:"responseId,omitempty"` + + // Session: The unique identifier of detectIntent request session. + // Can be used to identify end-user inside webhook + // implementation. + // Format: `projects//agent/sessions/`. + Session string `json:"session,omitempty"` + + // ForceSendFields is a list of field names (e.g. + // "OriginalDetectIntentRequest") to unconditionally include in API + // requests. By default, fields with empty values are omitted from API + // requests. However, any non-pointer, non-interface field appearing in + // ForceSendFields will be sent to the server regardless of whether the + // field is empty or not. This may be used to include empty fields in + // Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. + // "OriginalDetectIntentRequest") to include in API requests with the + // JSON null value. By default, fields with empty values are omitted + // from API requests. However, any field with an empty value appearing + // in NullFields will be sent to the server as null. It is an error if a + // field in this list has a non-empty value. This may be used to include + // null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDialogflowV2WebhookRequest) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2WebhookRequest + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDialogflowV2WebhookResponse: The response message for a +// webhook call. +type GoogleCloudDialogflowV2WebhookResponse struct { + // FollowupEventInput: Optional. Makes the platform immediately invoke + // another `DetectIntent` call + // internally with the specified event as input. + FollowupEventInput *GoogleCloudDialogflowV2EventInput `json:"followupEventInput,omitempty"` + + // FulfillmentMessages: Optional. The collection of rich messages to + // present to the user. This + // value is passed directly to `QueryResult.fulfillment_messages`. + FulfillmentMessages []*GoogleCloudDialogflowV2IntentMessage `json:"fulfillmentMessages,omitempty"` + + // FulfillmentText: Optional. The text to be shown on the screen. This + // value is passed directly + // to `QueryResult.fulfillment_text`. + FulfillmentText string `json:"fulfillmentText,omitempty"` + + // OutputContexts: Optional. The collection of output contexts. This + // value is passed directly + // to `QueryResult.output_contexts`. + OutputContexts []*GoogleCloudDialogflowV2Context `json:"outputContexts,omitempty"` + + // Payload: Optional. This value is passed directly to + // `QueryResult.webhook_payload`. + Payload googleapi.RawMessage `json:"payload,omitempty"` + + // Source: Optional. This value is passed directly to + // `QueryResult.webhook_source`. + Source string `json:"source,omitempty"` + + // ForceSendFields is a list of field names (e.g. "FollowupEventInput") + // to unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "FollowupEventInput") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDialogflowV2WebhookResponse) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2WebhookResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDialogflowV2beta1BatchUpdateEntityTypesResponse: The +// response message for EntityTypes.BatchUpdateEntityTypes. +type GoogleCloudDialogflowV2beta1BatchUpdateEntityTypesResponse struct { + // EntityTypes: The collection of updated or created entity types. + EntityTypes []*GoogleCloudDialogflowV2beta1EntityType `json:"entityTypes,omitempty"` + + // ForceSendFields is a list of field names (e.g. "EntityTypes") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "EntityTypes") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDialogflowV2beta1BatchUpdateEntityTypesResponse) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2beta1BatchUpdateEntityTypesResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDialogflowV2beta1BatchUpdateIntentsResponse: The response +// message for Intents.BatchUpdateIntents. +type GoogleCloudDialogflowV2beta1BatchUpdateIntentsResponse struct { + // Intents: The collection of updated or created intents. + Intents []*GoogleCloudDialogflowV2beta1Intent `json:"intents,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Intents") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Intents") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDialogflowV2beta1BatchUpdateIntentsResponse) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2beta1BatchUpdateIntentsResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDialogflowV2beta1Context: Represents a context. +type GoogleCloudDialogflowV2beta1Context struct { + // LifespanCount: Optional. The number of conversational query requests + // after which the + // context expires. If set to `0` (the default) the context + // expires + // immediately. Contexts expire automatically after 10 minutes even if + // there + // are no matching queries. + LifespanCount int64 `json:"lifespanCount,omitempty"` + + // Name: Required. The unique identifier of the context. + // Format: + // `projects//agent/sessions//contexts/`, + // or + // `projects//agent/environments//users//sessions//contexts/`. Note: Environments + // and + // users are under construction and will be available soon. The Context + // ID is + // always converted to lowercase. If is not specified, + // we + // assume default 'draft' environment. If is not specified, + // we + // assume default '-' user. + Name string `json:"name,omitempty"` + + // Parameters: Optional. The collection of parameters associated with + // this context. + // Refer to [this + // doc](https://dialogflow.com/docs/actions-and-parameters) for + // syntax. + Parameters googleapi.RawMessage `json:"parameters,omitempty"` + + // ForceSendFields is a list of field names (e.g. "LifespanCount") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "LifespanCount") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDialogflowV2beta1Context) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2beta1Context + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDialogflowV2beta1EntityType: Represents an entity +// type. +// Entity types serve as a tool for extracting parameter values from +// natural +// language queries. +type GoogleCloudDialogflowV2beta1EntityType struct { + // AutoExpansionMode: Optional. Indicates whether the entity type can be + // automatically + // expanded. + // + // Possible values: + // "AUTO_EXPANSION_MODE_UNSPECIFIED" - Auto expansion disabled for the + // entity. + // "AUTO_EXPANSION_MODE_DEFAULT" - Allows an agent to recognize values + // that have not been explicitly + // listed in the entity. + AutoExpansionMode string `json:"autoExpansionMode,omitempty"` + + // DisplayName: Required. The name of the entity. + DisplayName string `json:"displayName,omitempty"` + + // Entities: Optional. The collection of entities associated with the + // entity type. + Entities []*GoogleCloudDialogflowV2beta1EntityTypeEntity `json:"entities,omitempty"` + + // Kind: Required. Indicates the kind of entity type. + // + // Possible values: + // "KIND_UNSPECIFIED" - Not specified. This value should be never + // used. + // "KIND_MAP" - Map entity types allow mapping of a group of synonyms + // to a canonical + // value. + // "KIND_LIST" - List entity types contain a set of entries that do + // not map to canonical + // values. However, list entity types can contain references to other + // entity + // types (with or without aliases). + Kind string `json:"kind,omitempty"` + + // Name: Required for all methods except `create` (`create` populates + // the name + // automatically. + // The unique identifier of the entity type. Format: + // `projects//agent/entityTypes/`. + Name string `json:"name,omitempty"` + + // ForceSendFields is a list of field names (e.g. "AutoExpansionMode") + // to unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "AutoExpansionMode") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDialogflowV2beta1EntityType) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2beta1EntityType + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDialogflowV2beta1EntityTypeEntity: Optional. Represents an +// entity. +type GoogleCloudDialogflowV2beta1EntityTypeEntity struct { + // Synonyms: Required. A collection of synonyms. For `KIND_LIST` entity + // types this + // must contain exactly one synonym equal to `value`. + Synonyms []string `json:"synonyms,omitempty"` + + // Value: Required. + // For `KIND_MAP` entity types: + // A canonical name to be used in place of synonyms. + // For `KIND_LIST` entity types: + // A string that can contain references to other entity types (with + // or + // without aliases). + Value string `json:"value,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Synonyms") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Synonyms") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDialogflowV2beta1EntityTypeEntity) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2beta1EntityTypeEntity + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDialogflowV2beta1EventInput: Events allow for matching +// intents by event name instead of the natural +// language input. For instance, input `` can trigger a personalized +// welcome response. +// The parameter `name` may be used by the agent in the +// response: +// `“Hello #welcome_event.name! What can I do for you today?”`. +type GoogleCloudDialogflowV2beta1EventInput struct { + // LanguageCode: Required. The language of this query. See + // [Language + // Support](https://dialogflow.com/docs/languages) for a list of + // the + // currently supported language codes. Note that queries in the same + // session + // do not necessarily need to specify the same language. + LanguageCode string `json:"languageCode,omitempty"` + + // Name: Required. The unique identifier of the event. + Name string `json:"name,omitempty"` + + // Parameters: Optional. The collection of parameters associated with + // the event. + Parameters googleapi.RawMessage `json:"parameters,omitempty"` + + // ForceSendFields is a list of field names (e.g. "LanguageCode") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "LanguageCode") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDialogflowV2beta1EventInput) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2beta1EventInput + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDialogflowV2beta1ExportAgentResponse: The response message +// for Agents.ExportAgent. +type GoogleCloudDialogflowV2beta1ExportAgentResponse struct { + // AgentContent: The exported agent. + // + // Example for how to export an agent to a zip file via a command + // line: + // + // curl \ + // + // 'https://dialogflow.googleapis.com/v2beta1/projects//age + // nt:export'\ + // -X POST \ + // -H 'Authorization: Bearer '$(gcloud auth print-access-token) \ + // -H 'Accept: application/json' \ + // -H 'Content-Type: application/json' \ + // --compressed \ + // --data-binary '{}' \ + // | grep agentContent | sed -e 's/.*"agentContent": "\([^"]*\)".*/\1/' + // \ + // | base64 --decode > + AgentContent string `json:"agentContent,omitempty"` + + // AgentUri: The URI to a file containing the exported agent. This field + // is populated + // only if `agent_uri` is specified in `ExportAgentRequest`. + AgentUri string `json:"agentUri,omitempty"` + + // ForceSendFields is a list of field names (e.g. "AgentContent") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "AgentContent") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDialogflowV2beta1ExportAgentResponse) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2beta1ExportAgentResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDialogflowV2beta1Intent: Represents an intent. +// Intents convert a number of user expressions or patterns into an +// action. An +// action is an extraction of a user command or sentence semantics. +type GoogleCloudDialogflowV2beta1Intent struct { + // Action: Optional. The name of the action associated with the intent. + Action string `json:"action,omitempty"` + + // DefaultResponsePlatforms: Optional. The list of platforms for which + // the first response will be + // taken from among the messages assigned to the DEFAULT_PLATFORM. + // + // Possible values: + // "PLATFORM_UNSPECIFIED" - Not specified. + // "FACEBOOK" - Facebook. + // "SLACK" - Slack. + // "TELEGRAM" - Telegram. + // "KIK" - Kik. + // "SKYPE" - Skype. + // "LINE" - Line. + // "VIBER" - Viber. + // "ACTIONS_ON_GOOGLE" - Actions on Google. + DefaultResponsePlatforms []string `json:"defaultResponsePlatforms,omitempty"` + + // DisplayName: Required. The name of this intent. + DisplayName string `json:"displayName,omitempty"` + + // Events: Optional. The collection of event names that trigger the + // intent. + // If the collection of input contexts is not empty, all of the contexts + // must + // be present in the active user session for an event to trigger this + // intent. + Events []string `json:"events,omitempty"` + + // FollowupIntentInfo: Optional. Collection of information about all + // followup intents that have + // name of this intent as a root_name. + FollowupIntentInfo []*GoogleCloudDialogflowV2beta1IntentFollowupIntentInfo `json:"followupIntentInfo,omitempty"` + + // InputContextNames: Optional. The list of context names required for + // this intent to be + // triggered. + // Format: `projects//agent/sessions/-/contexts/`. + InputContextNames []string `json:"inputContextNames,omitempty"` + + // IsFallback: Optional. Indicates whether this is a fallback intent. + IsFallback bool `json:"isFallback,omitempty"` + + // Messages: Optional. The collection of rich messages corresponding to + // the + // `Response` field in the Dialogflow console. + Messages []*GoogleCloudDialogflowV2beta1IntentMessage `json:"messages,omitempty"` + + // MlDisabled: Optional. Indicates whether Machine Learning is disabled + // for the intent. + // Note: If `ml_disabled` setting is set to true, then this intent is + // not + // taken into account during inference in `ML ONLY` match mode. + // Also, + // auto-markup in the UI is turned off. + MlDisabled bool `json:"mlDisabled,omitempty"` + + // MlEnabled: Optional. Indicates whether Machine Learning is enabled + // for the intent. + // Note: If `ml_enabled` setting is set to false, then this intent is + // not + // taken into account during inference in `ML ONLY` match mode. + // Also, + // auto-markup in the UI is turned off. + // DEPRECATED! Please use `ml_disabled` field instead. + // NOTE: If neither `ml_enabled` nor `ml_disabled` field is set, then + // the + // default value is determined as follows: + // - Before April 15th, 2018 the default is: + // ml_enabled = false / ml_disabled = true. + // - After April 15th, 2018 the default is: + // ml_enabled = true / ml_disabled = false. + MlEnabled bool `json:"mlEnabled,omitempty"` + + // Name: Required for all methods except `create` (`create` populates + // the name + // automatically. + // The unique identifier of this intent. + // Format: `projects//agent/intents/`. + Name string `json:"name,omitempty"` + + // OutputContexts: Optional. The collection of contexts that are + // activated when the intent + // is matched. Context messages in this collection should not set + // the + // parameters field. Setting the `lifespan_count` to 0 will reset the + // context + // when the intent is matched. + // Format: `projects//agent/sessions/-/contexts/`. + OutputContexts []*GoogleCloudDialogflowV2beta1Context `json:"outputContexts,omitempty"` + + // Parameters: Optional. The collection of parameters associated with + // the intent. + Parameters []*GoogleCloudDialogflowV2beta1IntentParameter `json:"parameters,omitempty"` + + // ParentFollowupIntentName: The unique identifier of the parent intent + // in the chain of followup + // intents. + // It identifies the parent followup intent. + // Format: `projects//agent/intents/`. + ParentFollowupIntentName string `json:"parentFollowupIntentName,omitempty"` + + // Priority: Optional. The priority of this intent. Higher numbers + // represent higher + // priorities. Zero or negative numbers mean that the intent is + // disabled. + Priority int64 `json:"priority,omitempty"` + + // ResetContexts: Optional. Indicates whether to delete all contexts in + // the current + // session when this intent is matched. + ResetContexts bool `json:"resetContexts,omitempty"` + + // RootFollowupIntentName: The unique identifier of the root intent in + // the chain of followup intents. + // It identifies the correct followup intents chain for this + // intent. + // Format: `projects//agent/intents/`. + RootFollowupIntentName string `json:"rootFollowupIntentName,omitempty"` + + // TrainingPhrases: Optional. The collection of examples/templates that + // the agent is + // trained on. + TrainingPhrases []*GoogleCloudDialogflowV2beta1IntentTrainingPhrase `json:"trainingPhrases,omitempty"` + + // WebhookState: Required. Indicates whether webhooks are enabled for + // the intent. + // + // Possible values: + // "WEBHOOK_STATE_UNSPECIFIED" - Webhook is disabled in the agent and + // in the intent. + // "WEBHOOK_STATE_ENABLED" - Webhook is enabled in the agent and in + // the intent. + // "WEBHOOK_STATE_ENABLED_FOR_SLOT_FILLING" - Webhook is enabled in + // the agent and in the intent. Also, each slot + // filling prompt is forwarded to the webhook. + WebhookState string `json:"webhookState,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Action") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Action") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDialogflowV2beta1Intent) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2beta1Intent + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDialogflowV2beta1IntentFollowupIntentInfo: Represents a +// single followup intent in the chain. +type GoogleCloudDialogflowV2beta1IntentFollowupIntentInfo struct { + // FollowupIntentName: The unique identifier of the followup + // intent. + // Format: `projects//agent/intents/`. + FollowupIntentName string `json:"followupIntentName,omitempty"` + + // ParentFollowupIntentName: The unique identifier of the followup + // intent parent. + // Format: `projects//agent/intents/`. + ParentFollowupIntentName string `json:"parentFollowupIntentName,omitempty"` + + // ForceSendFields is a list of field names (e.g. "FollowupIntentName") + // to unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "FollowupIntentName") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDialogflowV2beta1IntentFollowupIntentInfo) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2beta1IntentFollowupIntentInfo + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDialogflowV2beta1IntentMessage: Corresponds to the +// `Response` field in the Dialogflow console. +type GoogleCloudDialogflowV2beta1IntentMessage struct { + // BasicCard: Displays a basic card for Actions on Google. + BasicCard *GoogleCloudDialogflowV2beta1IntentMessageBasicCard `json:"basicCard,omitempty"` + + // Card: Displays a card. + Card *GoogleCloudDialogflowV2beta1IntentMessageCard `json:"card,omitempty"` + + // CarouselSelect: Displays a carousel card for Actions on Google. + CarouselSelect *GoogleCloudDialogflowV2beta1IntentMessageCarouselSelect `json:"carouselSelect,omitempty"` + + // Image: Displays an image. + Image *GoogleCloudDialogflowV2beta1IntentMessageImage `json:"image,omitempty"` + + // LinkOutSuggestion: Displays a link out suggestion chip for Actions on + // Google. + LinkOutSuggestion *GoogleCloudDialogflowV2beta1IntentMessageLinkOutSuggestion `json:"linkOutSuggestion,omitempty"` + + // ListSelect: Displays a list card for Actions on Google. + ListSelect *GoogleCloudDialogflowV2beta1IntentMessageListSelect `json:"listSelect,omitempty"` + + // Payload: Returns a response containing a custom payload. + Payload googleapi.RawMessage `json:"payload,omitempty"` + + // Platform: Optional. The platform that this message is intended for. + // + // Possible values: + // "PLATFORM_UNSPECIFIED" - Not specified. + // "FACEBOOK" - Facebook. + // "SLACK" - Slack. + // "TELEGRAM" - Telegram. + // "KIK" - Kik. + // "SKYPE" - Skype. + // "LINE" - Line. + // "VIBER" - Viber. + // "ACTIONS_ON_GOOGLE" - Actions on Google. + Platform string `json:"platform,omitempty"` + + // QuickReplies: Displays quick replies. + QuickReplies *GoogleCloudDialogflowV2beta1IntentMessageQuickReplies `json:"quickReplies,omitempty"` + + // SimpleResponses: Returns a voice or text-only response for Actions on + // Google. + SimpleResponses *GoogleCloudDialogflowV2beta1IntentMessageSimpleResponses `json:"simpleResponses,omitempty"` + + // Suggestions: Displays suggestion chips for Actions on Google. + Suggestions *GoogleCloudDialogflowV2beta1IntentMessageSuggestions `json:"suggestions,omitempty"` + + // Text: Returns a text response. + Text *GoogleCloudDialogflowV2beta1IntentMessageText `json:"text,omitempty"` + + // ForceSendFields is a list of field names (e.g. "BasicCard") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "BasicCard") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDialogflowV2beta1IntentMessage) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2beta1IntentMessage + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDialogflowV2beta1IntentMessageBasicCard: The basic card +// message. Useful for displaying information. +type GoogleCloudDialogflowV2beta1IntentMessageBasicCard struct { + // Buttons: Optional. The collection of card buttons. + Buttons []*GoogleCloudDialogflowV2beta1IntentMessageBasicCardButton `json:"buttons,omitempty"` + + // FormattedText: Required, unless image is present. The body text of + // the card. + FormattedText string `json:"formattedText,omitempty"` + + // Image: Optional. The image for the card. + Image *GoogleCloudDialogflowV2beta1IntentMessageImage `json:"image,omitempty"` + + // Subtitle: Optional. The subtitle of the card. + Subtitle string `json:"subtitle,omitempty"` + + // Title: Optional. The title of the card. + Title string `json:"title,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Buttons") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Buttons") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDialogflowV2beta1IntentMessageBasicCard) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2beta1IntentMessageBasicCard + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDialogflowV2beta1IntentMessageBasicCardButton: The button +// object that appears at the bottom of a card. +type GoogleCloudDialogflowV2beta1IntentMessageBasicCardButton struct { + // OpenUriAction: Required. Action to take when a user taps on the + // button. + OpenUriAction *GoogleCloudDialogflowV2beta1IntentMessageBasicCardButtonOpenUriAction `json:"openUriAction,omitempty"` + + // Title: Required. The title of the button. + Title string `json:"title,omitempty"` + + // ForceSendFields is a list of field names (e.g. "OpenUriAction") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "OpenUriAction") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDialogflowV2beta1IntentMessageBasicCardButton) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2beta1IntentMessageBasicCardButton + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDialogflowV2beta1IntentMessageBasicCardButtonOpenUriAction: +// Opens the given URI. +type GoogleCloudDialogflowV2beta1IntentMessageBasicCardButtonOpenUriAction struct { + // Uri: Required. The HTTP or HTTPS scheme URI. + Uri string `json:"uri,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Uri") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Uri") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDialogflowV2beta1IntentMessageBasicCardButtonOpenUriAction) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2beta1IntentMessageBasicCardButtonOpenUriAction + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDialogflowV2beta1IntentMessageCard: The card response +// message. +type GoogleCloudDialogflowV2beta1IntentMessageCard struct { + // Buttons: Optional. The collection of card buttons. + Buttons []*GoogleCloudDialogflowV2beta1IntentMessageCardButton `json:"buttons,omitempty"` + + // ImageUri: Optional. The public URI to an image file for the card. + ImageUri string `json:"imageUri,omitempty"` + + // Subtitle: Optional. The subtitle of the card. + Subtitle string `json:"subtitle,omitempty"` + + // Title: Optional. The title of the card. + Title string `json:"title,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Buttons") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Buttons") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDialogflowV2beta1IntentMessageCard) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2beta1IntentMessageCard + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDialogflowV2beta1IntentMessageCardButton: Optional. +// Contains information about a button. +type GoogleCloudDialogflowV2beta1IntentMessageCardButton struct { + // Postback: Optional. The text to send back to the Dialogflow API or a + // URI to + // open. + Postback string `json:"postback,omitempty"` + + // Text: Optional. The text to show on the button. + Text string `json:"text,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Postback") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Postback") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDialogflowV2beta1IntentMessageCardButton) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2beta1IntentMessageCardButton + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDialogflowV2beta1IntentMessageCarouselSelect: The card for +// presenting a carousel of options to select from. +type GoogleCloudDialogflowV2beta1IntentMessageCarouselSelect struct { + // Items: Required. Carousel items. + Items []*GoogleCloudDialogflowV2beta1IntentMessageCarouselSelectItem `json:"items,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Items") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Items") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDialogflowV2beta1IntentMessageCarouselSelect) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2beta1IntentMessageCarouselSelect + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDialogflowV2beta1IntentMessageCarouselSelectItem: An item +// in the carousel. +type GoogleCloudDialogflowV2beta1IntentMessageCarouselSelectItem struct { + // Description: Optional. The body text of the card. + Description string `json:"description,omitempty"` + + // Image: Optional. The image to display. + Image *GoogleCloudDialogflowV2beta1IntentMessageImage `json:"image,omitempty"` + + // Info: Required. Additional info about the option item. + Info *GoogleCloudDialogflowV2beta1IntentMessageSelectItemInfo `json:"info,omitempty"` + + // Title: Required. Title of the carousel item. + Title string `json:"title,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Description") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Description") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDialogflowV2beta1IntentMessageCarouselSelectItem) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2beta1IntentMessageCarouselSelectItem + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDialogflowV2beta1IntentMessageImage: The image response +// message. +type GoogleCloudDialogflowV2beta1IntentMessageImage struct { + // AccessibilityText: Optional. A text description of the image to be + // used for accessibility, + // e.g., screen readers. + AccessibilityText string `json:"accessibilityText,omitempty"` + + // ImageUri: Optional. The public URI to an image file. + ImageUri string `json:"imageUri,omitempty"` + + // ForceSendFields is a list of field names (e.g. "AccessibilityText") + // to unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "AccessibilityText") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDialogflowV2beta1IntentMessageImage) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2beta1IntentMessageImage + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDialogflowV2beta1IntentMessageLinkOutSuggestion: The +// suggestion chip message that allows the user to jump out to the +// app +// or website associated with this agent. +type GoogleCloudDialogflowV2beta1IntentMessageLinkOutSuggestion struct { + // DestinationName: Required. The name of the app or site this chip is + // linking to. + DestinationName string `json:"destinationName,omitempty"` + + // Uri: Required. The URI of the app or site to open when the user taps + // the + // suggestion chip. + Uri string `json:"uri,omitempty"` + + // ForceSendFields is a list of field names (e.g. "DestinationName") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "DestinationName") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDialogflowV2beta1IntentMessageLinkOutSuggestion) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2beta1IntentMessageLinkOutSuggestion + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDialogflowV2beta1IntentMessageListSelect: The card for +// presenting a list of options to select from. +type GoogleCloudDialogflowV2beta1IntentMessageListSelect struct { + // Items: Required. List items. + Items []*GoogleCloudDialogflowV2beta1IntentMessageListSelectItem `json:"items,omitempty"` + + // Title: Optional. The overall title of the list. + Title string `json:"title,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Items") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Items") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDialogflowV2beta1IntentMessageListSelect) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2beta1IntentMessageListSelect + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDialogflowV2beta1IntentMessageListSelectItem: An item in +// the list. +type GoogleCloudDialogflowV2beta1IntentMessageListSelectItem struct { + // Description: Optional. The main text describing the item. + Description string `json:"description,omitempty"` + + // Image: Optional. The image to display. + Image *GoogleCloudDialogflowV2beta1IntentMessageImage `json:"image,omitempty"` + + // Info: Required. Additional information about this option. + Info *GoogleCloudDialogflowV2beta1IntentMessageSelectItemInfo `json:"info,omitempty"` + + // Title: Required. The title of the list item. + Title string `json:"title,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Description") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Description") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDialogflowV2beta1IntentMessageListSelectItem) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2beta1IntentMessageListSelectItem + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDialogflowV2beta1IntentMessageQuickReplies: The quick +// replies response message. +type GoogleCloudDialogflowV2beta1IntentMessageQuickReplies struct { + // QuickReplies: Optional. The collection of quick replies. + QuickReplies []string `json:"quickReplies,omitempty"` + + // Title: Optional. The title of the collection of quick replies. + Title string `json:"title,omitempty"` + + // ForceSendFields is a list of field names (e.g. "QuickReplies") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "QuickReplies") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDialogflowV2beta1IntentMessageQuickReplies) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2beta1IntentMessageQuickReplies + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDialogflowV2beta1IntentMessageSelectItemInfo: Additional +// info about the select item for when it is triggered in a +// dialog. +type GoogleCloudDialogflowV2beta1IntentMessageSelectItemInfo struct { + // Key: Required. A unique key that will be sent back to the agent if + // this + // response is given. + Key string `json:"key,omitempty"` + + // Synonyms: Optional. A list of synonyms that can also be used to + // trigger this + // item in dialog. + Synonyms []string `json:"synonyms,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Key") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Key") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDialogflowV2beta1IntentMessageSelectItemInfo) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2beta1IntentMessageSelectItemInfo + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDialogflowV2beta1IntentMessageSimpleResponse: The simple +// response message containing speech or text. +type GoogleCloudDialogflowV2beta1IntentMessageSimpleResponse struct { + // DisplayText: Optional. The text to display. + DisplayText string `json:"displayText,omitempty"` + + // Ssml: One of text_to_speech or ssml must be provided. Structured + // spoken + // response to the user in the SSML format. Mutually exclusive + // with + // text_to_speech. + Ssml string `json:"ssml,omitempty"` + + // TextToSpeech: One of text_to_speech or ssml must be provided. The + // plain text of the + // speech output. Mutually exclusive with ssml. + TextToSpeech string `json:"textToSpeech,omitempty"` + + // ForceSendFields is a list of field names (e.g. "DisplayText") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "DisplayText") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDialogflowV2beta1IntentMessageSimpleResponse) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2beta1IntentMessageSimpleResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDialogflowV2beta1IntentMessageSimpleResponses: The +// collection of simple response candidates. +// This message in `QueryResult.fulfillment_messages` +// and +// `WebhookResponse.fulfillment_messages` should contain only +// one +// `SimpleResponse`. +type GoogleCloudDialogflowV2beta1IntentMessageSimpleResponses struct { + // SimpleResponses: Required. The list of simple responses. + SimpleResponses []*GoogleCloudDialogflowV2beta1IntentMessageSimpleResponse `json:"simpleResponses,omitempty"` + + // ForceSendFields is a list of field names (e.g. "SimpleResponses") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "SimpleResponses") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDialogflowV2beta1IntentMessageSimpleResponses) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2beta1IntentMessageSimpleResponses + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDialogflowV2beta1IntentMessageSuggestion: The suggestion +// chip message that the user can tap to quickly post a reply +// to the conversation. +type GoogleCloudDialogflowV2beta1IntentMessageSuggestion struct { + // Title: Required. The text shown the in the suggestion chip. + Title string `json:"title,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Title") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Title") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDialogflowV2beta1IntentMessageSuggestion) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2beta1IntentMessageSuggestion + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDialogflowV2beta1IntentMessageSuggestions: The collection +// of suggestions. +type GoogleCloudDialogflowV2beta1IntentMessageSuggestions struct { + // Suggestions: Required. The list of suggested replies. + Suggestions []*GoogleCloudDialogflowV2beta1IntentMessageSuggestion `json:"suggestions,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Suggestions") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Suggestions") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDialogflowV2beta1IntentMessageSuggestions) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2beta1IntentMessageSuggestions + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDialogflowV2beta1IntentMessageText: The text response +// message. +type GoogleCloudDialogflowV2beta1IntentMessageText struct { + // Text: Optional. The collection of the agent's responses. + Text []string `json:"text,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Text") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Text") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDialogflowV2beta1IntentMessageText) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2beta1IntentMessageText + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDialogflowV2beta1IntentParameter: Represents intent +// parameters. +type GoogleCloudDialogflowV2beta1IntentParameter struct { + // DefaultValue: Optional. The default value to use when the `value` + // yields an empty + // result. + // Default values can be extracted from contexts by using the + // following + // syntax: `#context_name.parameter_name`. + DefaultValue string `json:"defaultValue,omitempty"` + + // DisplayName: Required. The name of the parameter. + DisplayName string `json:"displayName,omitempty"` + + // EntityTypeDisplayName: Optional. The name of the entity type, + // prefixed with `@`, that + // describes values of the parameter. If the parameter is + // required, this must be provided. + EntityTypeDisplayName string `json:"entityTypeDisplayName,omitempty"` + + // IsList: Optional. Indicates whether the parameter represents a list + // of values. + IsList bool `json:"isList,omitempty"` + + // Mandatory: Optional. Indicates whether the parameter is required. + // That is, + // whether the intent cannot be completed without collecting the + // parameter + // value. + Mandatory bool `json:"mandatory,omitempty"` + + // Name: The unique identifier of this parameter. + Name string `json:"name,omitempty"` + + // Prompts: Optional. The collection of prompts that the agent can + // present to the + // user in order to collect value for the parameter. + Prompts []string `json:"prompts,omitempty"` + + // Value: Optional. The definition of the parameter value. It can be: + // - a constant string, + // - a parameter value defined as `$parameter_name`, + // - an original parameter value defined as + // `$parameter_name.original`, + // - a parameter value from some context defined as + // `#context_name.parameter_name`. + Value string `json:"value,omitempty"` + + // ForceSendFields is a list of field names (e.g. "DefaultValue") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "DefaultValue") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDialogflowV2beta1IntentParameter) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2beta1IntentParameter + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDialogflowV2beta1IntentTrainingPhrase: Represents an +// example or template that the agent is trained on. +type GoogleCloudDialogflowV2beta1IntentTrainingPhrase struct { + // Name: Required. The unique identifier of this training phrase. + Name string `json:"name,omitempty"` + + // Parts: Required. The collection of training phrase parts (can be + // annotated). + // Fields: `entity_type`, `alias` and `user_defined` should be + // populated + // only for the annotated parts of the training phrase. + Parts []*GoogleCloudDialogflowV2beta1IntentTrainingPhrasePart `json:"parts,omitempty"` + + // TimesAddedCount: Optional. Indicates how many times this example or + // template was added to + // the intent. Each time a developer adds an existing sample by editing + // an + // intent or training, this counter is increased. + TimesAddedCount int64 `json:"timesAddedCount,omitempty"` + + // Type: Required. The type of the training phrase. + // + // Possible values: + // "TYPE_UNSPECIFIED" - Not specified. This value should never be + // used. + // "EXAMPLE" - Examples do not contain @-prefixed entity type names, + // but example parts + // can be annotated with entity types. + // "TEMPLATE" - Templates are not annotated with entity types, but + // they can contain + // @-prefixed entity type names as substrings. + Type string `json:"type,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Name") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Name") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDialogflowV2beta1IntentTrainingPhrase) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2beta1IntentTrainingPhrase + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDialogflowV2beta1IntentTrainingPhrasePart: Represents a +// part of a training phrase. +type GoogleCloudDialogflowV2beta1IntentTrainingPhrasePart struct { + // Alias: Optional. The parameter name for the value extracted from + // the + // annotated part of the example. + Alias string `json:"alias,omitempty"` + + // EntityType: Optional. The entity type name prefixed with `@`. This + // field is + // required for the annotated part of the text and applies only + // to + // examples. + EntityType string `json:"entityType,omitempty"` + + // Text: Required. The text corresponding to the example or template, + // if there are no annotations. For + // annotated examples, it is the text for one of the example's parts. + Text string `json:"text,omitempty"` + + // UserDefined: Optional. Indicates whether the text was manually + // annotated by the + // developer. + UserDefined bool `json:"userDefined,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Alias") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Alias") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDialogflowV2beta1IntentTrainingPhrasePart) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2beta1IntentTrainingPhrasePart + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDialogflowV2beta1OriginalDetectIntentRequest: Represents +// the contents of the original request that was passed to +// the `[Streaming]DetectIntent` call. +type GoogleCloudDialogflowV2beta1OriginalDetectIntentRequest struct { + // Payload: Optional. This field is set to the value of + // `QueryParameters.payload` field + // passed in the request. + Payload googleapi.RawMessage `json:"payload,omitempty"` + + // Source: The source of this request, e.g., `google`, `facebook`, + // `slack`. It is set + // by Dialogflow-owned servers. Possible values of this field correspond + // to + // Intent.Message.Platform. + Source string `json:"source,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Payload") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Payload") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDialogflowV2beta1OriginalDetectIntentRequest) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2beta1OriginalDetectIntentRequest + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDialogflowV2beta1QueryResult: Represents the result of +// conversational query or event processing. +type GoogleCloudDialogflowV2beta1QueryResult struct { + // Action: The action name from the matched intent. + Action string `json:"action,omitempty"` + + // AllRequiredParamsPresent: This field is set to: + // - `false` if the matched intent has required parameters and not all + // of + // the required parameter values have been collected. + // - `true` if all required parameter values have been collected, or if + // the + // matched intent doesn't contain any required parameters. + AllRequiredParamsPresent bool `json:"allRequiredParamsPresent,omitempty"` + + // DiagnosticInfo: The free-form diagnostic info. For example, this + // field + // could contain webhook call latency. + DiagnosticInfo googleapi.RawMessage `json:"diagnosticInfo,omitempty"` + + // FulfillmentMessages: The collection of rich messages to present to + // the user. + FulfillmentMessages []*GoogleCloudDialogflowV2beta1IntentMessage `json:"fulfillmentMessages,omitempty"` + + // FulfillmentText: The text to be pronounced to the user or shown on + // the screen. + FulfillmentText string `json:"fulfillmentText,omitempty"` + + // Intent: The intent that matched the conversational query. Some, + // not + // all fields are filled in this message, including but not limited + // to: + // `name`, `display_name` and `webhook_state`. + Intent *GoogleCloudDialogflowV2beta1Intent `json:"intent,omitempty"` + + // IntentDetectionConfidence: The intent detection confidence. Values + // range from 0.0 + // (completely uncertain) to 1.0 (completely certain). + IntentDetectionConfidence float64 `json:"intentDetectionConfidence,omitempty"` + + // LanguageCode: The language that was triggered during intent + // detection. + // See [Language + // Support](https://dialogflow.com/docs/reference/language) + // for a list of the currently supported language codes. + LanguageCode string `json:"languageCode,omitempty"` + + // OutputContexts: The collection of output contexts. If + // applicable, + // `output_contexts.parameters` contains entries with name + // `.original` containing the original parameter + // values + // before the query. + OutputContexts []*GoogleCloudDialogflowV2beta1Context `json:"outputContexts,omitempty"` + + // Parameters: The collection of extracted parameters. + Parameters googleapi.RawMessage `json:"parameters,omitempty"` + + // QueryText: The original conversational query text: + // - If natural language text was provided as input, `query_text` + // contains + // a copy of the input. + // - If natural language speech audio was provided as input, + // `query_text` + // contains the speech recognition result. If speech recognizer + // produced + // multiple alternatives, a particular one is picked. + // - If an event was provided as input, `query_text` is not set. + QueryText string `json:"queryText,omitempty"` + + // SpeechRecognitionConfidence: The Speech recognition confidence + // between 0.0 and 1.0. A higher number + // indicates an estimated greater likelihood that the recognized words + // are + // correct. The default of 0.0 is a sentinel value indicating that + // confidence + // was not set. + // + // You should not rely on this field as it isn't guaranteed to be + // accurate, or + // even set. In particular this field isn't set in Webhook calls and + // for + // StreamingDetectIntent since the streaming endpoint has separate + // confidence + // estimates per portion of the audio in StreamingRecognitionResult. + SpeechRecognitionConfidence float64 `json:"speechRecognitionConfidence,omitempty"` + + // WebhookPayload: If the query was fulfilled by a webhook call, this + // field is set to the + // value of the `payload` field returned in the webhook response. + WebhookPayload googleapi.RawMessage `json:"webhookPayload,omitempty"` + + // WebhookSource: If the query was fulfilled by a webhook call, this + // field is set to the + // value of the `source` field returned in the webhook response. + WebhookSource string `json:"webhookSource,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Action") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Action") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDialogflowV2beta1QueryResult) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2beta1QueryResult + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +func (s *GoogleCloudDialogflowV2beta1QueryResult) UnmarshalJSON(data []byte) error { + type NoMethod GoogleCloudDialogflowV2beta1QueryResult + var s1 struct { + IntentDetectionConfidence gensupport.JSONFloat64 `json:"intentDetectionConfidence"` + SpeechRecognitionConfidence gensupport.JSONFloat64 `json:"speechRecognitionConfidence"` + *NoMethod + } + s1.NoMethod = (*NoMethod)(s) + if err := json.Unmarshal(data, &s1); err != nil { + return err + } + s.IntentDetectionConfidence = float64(s1.IntentDetectionConfidence) + s.SpeechRecognitionConfidence = float64(s1.SpeechRecognitionConfidence) + return nil +} + +// GoogleCloudDialogflowV2beta1WebhookRequest: The request message for a +// webhook call. +type GoogleCloudDialogflowV2beta1WebhookRequest struct { + // OriginalDetectIntentRequest: Optional. The contents of the original + // request that was passed to + // `[Streaming]DetectIntent` call. + OriginalDetectIntentRequest *GoogleCloudDialogflowV2beta1OriginalDetectIntentRequest `json:"originalDetectIntentRequest,omitempty"` + + // QueryResult: The result of the conversational query or event + // processing. Contains the + // same value as `[Streaming]DetectIntentResponse.query_result`. + QueryResult *GoogleCloudDialogflowV2beta1QueryResult `json:"queryResult,omitempty"` + + // ResponseId: The unique identifier of the response. Contains the same + // value as + // `[Streaming]DetectIntentResponse.response_id`. + ResponseId string `json:"responseId,omitempty"` + + // Session: The unique identifier of detectIntent request session. + // Can be used to identify end-user inside webhook + // implementation. + // Format: `projects//agent/sessions/`. + Session string `json:"session,omitempty"` + + // ForceSendFields is a list of field names (e.g. + // "OriginalDetectIntentRequest") to unconditionally include in API + // requests. By default, fields with empty values are omitted from API + // requests. However, any non-pointer, non-interface field appearing in + // ForceSendFields will be sent to the server regardless of whether the + // field is empty or not. This may be used to include empty fields in + // Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. + // "OriginalDetectIntentRequest") to include in API requests with the + // JSON null value. By default, fields with empty values are omitted + // from API requests. However, any field with an empty value appearing + // in NullFields will be sent to the server as null. It is an error if a + // field in this list has a non-empty value. This may be used to include + // null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDialogflowV2beta1WebhookRequest) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2beta1WebhookRequest + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDialogflowV2beta1WebhookResponse: The response message for +// a webhook call. +type GoogleCloudDialogflowV2beta1WebhookResponse struct { + // FollowupEventInput: Optional. Makes the platform immediately invoke + // another `DetectIntent` call + // internally with the specified event as input. + FollowupEventInput *GoogleCloudDialogflowV2beta1EventInput `json:"followupEventInput,omitempty"` + + // FulfillmentMessages: Optional. The collection of rich messages to + // present to the user. This + // value is passed directly to `QueryResult.fulfillment_messages`. + FulfillmentMessages []*GoogleCloudDialogflowV2beta1IntentMessage `json:"fulfillmentMessages,omitempty"` + + // FulfillmentText: Optional. The text to be shown on the screen. This + // value is passed directly + // to `QueryResult.fulfillment_text`. + FulfillmentText string `json:"fulfillmentText,omitempty"` + + // OutputContexts: Optional. The collection of output contexts. This + // value is passed directly + // to `QueryResult.output_contexts`. + OutputContexts []*GoogleCloudDialogflowV2beta1Context `json:"outputContexts,omitempty"` + + // Payload: Optional. This value is passed directly to + // `QueryResult.webhook_payload`. + Payload googleapi.RawMessage `json:"payload,omitempty"` + + // Source: Optional. This value is passed directly to + // `QueryResult.webhook_source`. + Source string `json:"source,omitempty"` + + // ForceSendFields is a list of field names (e.g. "FollowupEventInput") + // to unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "FollowupEventInput") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDialogflowV2beta1WebhookResponse) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2beta1WebhookResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleLongrunningOperation: This resource represents a long-running +// operation that is the result of a +// network API call. +type GoogleLongrunningOperation struct { + // Done: If the value is `false`, it means the operation is still in + // progress. + // If `true`, the operation is completed, and either `error` or + // `response` is + // available. + Done bool `json:"done,omitempty"` + + // Error: The error result of the operation in case of failure or + // cancellation. + Error *GoogleRpcStatus `json:"error,omitempty"` + + // Metadata: Service-specific metadata associated with the operation. + // It typically + // contains progress information and common metadata such as create + // time. + // Some services might not provide such metadata. Any method that + // returns a + // long-running operation should document the metadata type, if any. + Metadata googleapi.RawMessage `json:"metadata,omitempty"` + + // Name: The server-assigned name, which is only unique within the same + // service that + // originally returns it. If you use the default HTTP mapping, + // the + // `name` should have the format of `operations/some/unique/name`. + Name string `json:"name,omitempty"` + + // Response: The normal response of the operation in case of success. + // If the original + // method returns no data on success, such as `Delete`, the response + // is + // `google.protobuf.Empty`. If the original method is + // standard + // `Get`/`Create`/`Update`, the response should be the resource. For + // other + // methods, the response should have the type `XxxResponse`, where + // `Xxx` + // is the original method name. For example, if the original method + // name + // is `TakeSnapshot()`, the inferred response type + // is + // `TakeSnapshotResponse`. + Response googleapi.RawMessage `json:"response,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "Done") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Done") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleLongrunningOperation) MarshalJSON() ([]byte, error) { + type NoMethod GoogleLongrunningOperation + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleProtobufEmpty: A generic empty message that you can re-use to +// avoid defining duplicated +// empty messages in your APIs. A typical example is to use it as the +// request +// or the response type of an API method. For instance: +// +// service Foo { +// rpc Bar(google.protobuf.Empty) returns +// (google.protobuf.Empty); +// } +// +// The JSON representation for `Empty` is empty JSON object `{}`. +type GoogleProtobufEmpty struct { + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` +} + +// GoogleRpcStatus: The `Status` type defines a logical error model that +// is suitable for different +// programming environments, including REST APIs and RPC APIs. It is +// used by +// [gRPC](https://github.com/grpc). The error model is designed to +// be: +// +// - Simple to use and understand for most users +// - Flexible enough to meet unexpected needs +// +// # Overview +// +// The `Status` message contains three pieces of data: error code, error +// message, +// and error details. The error code should be an enum value +// of +// google.rpc.Code, but it may accept additional error codes if needed. +// The +// error message should be a developer-facing English message that +// helps +// developers *understand* and *resolve* the error. If a localized +// user-facing +// error message is needed, put the localized message in the error +// details or +// localize it in the client. The optional error details may contain +// arbitrary +// information about the error. There is a predefined set of error +// detail types +// in the package `google.rpc` that can be used for common error +// conditions. +// +// # Language mapping +// +// The `Status` message is the logical representation of the error +// model, but it +// is not necessarily the actual wire format. When the `Status` message +// is +// exposed in different client libraries and different wire protocols, +// it can be +// mapped differently. For example, it will likely be mapped to some +// exceptions +// in Java, but more likely mapped to some error codes in C. +// +// # Other uses +// +// The error model and the `Status` message can be used in a variety +// of +// environments, either with or without APIs, to provide a +// consistent developer experience across different +// environments. +// +// Example uses of this error model include: +// +// - Partial errors. If a service needs to return partial errors to the +// client, +// it may embed the `Status` in the normal response to indicate the +// partial +// errors. +// +// - Workflow errors. A typical workflow has multiple steps. Each step +// may +// have a `Status` message for error reporting. +// +// - Batch operations. If a client uses batch request and batch +// response, the +// `Status` message should be used directly inside batch response, +// one for +// each error sub-response. +// +// - Asynchronous operations. If an API call embeds asynchronous +// operation +// results in its response, the status of those operations should +// be +// represented directly using the `Status` message. +// +// - Logging. If some API errors are stored in logs, the message +// `Status` could +// be used directly after any stripping needed for security/privacy +// reasons. +type GoogleRpcStatus struct { + // Code: The status code, which should be an enum value of + // google.rpc.Code. + Code int64 `json:"code,omitempty"` + + // Details: A list of messages that carry the error details. There is a + // common set of + // message types for APIs to use. + Details []googleapi.RawMessage `json:"details,omitempty"` + + // Message: A developer-facing error message, which should be in + // English. Any + // user-facing error message should be localized and sent in + // the + // google.rpc.Status.details field, or localized by the client. + Message string `json:"message,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Code") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Code") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleRpcStatus) MarshalJSON() ([]byte, error) { + type NoMethod GoogleRpcStatus + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleTypeLatLng: An object representing a latitude/longitude pair. +// This is expressed as a pair +// of doubles representing degrees latitude and degrees longitude. +// Unless +// specified otherwise, this must conform to the +// WGS84 +// st +// andard. Values must be within normalized ranges. +type GoogleTypeLatLng struct { + // Latitude: The latitude in degrees. It must be in the range [-90.0, + // +90.0]. + Latitude float64 `json:"latitude,omitempty"` + + // Longitude: The longitude in degrees. It must be in the range [-180.0, + // +180.0]. + Longitude float64 `json:"longitude,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Latitude") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Latitude") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleTypeLatLng) MarshalJSON() ([]byte, error) { + type NoMethod GoogleTypeLatLng + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +func (s *GoogleTypeLatLng) UnmarshalJSON(data []byte) error { + type NoMethod GoogleTypeLatLng + var s1 struct { + Latitude gensupport.JSONFloat64 `json:"latitude"` + Longitude gensupport.JSONFloat64 `json:"longitude"` + *NoMethod + } + s1.NoMethod = (*NoMethod)(s) + if err := json.Unmarshal(data, &s1); err != nil { + return err + } + s.Latitude = float64(s1.Latitude) + s.Longitude = float64(s1.Longitude) + return nil +} + +// method id "dialogflow.projects.getAgent": + +type ProjectsGetAgentCall struct { + s *Service + parent string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// GetAgent: Retrieves the specified agent. +func (r *ProjectsService) GetAgent(parent string) *ProjectsGetAgentCall { + c := &ProjectsGetAgentCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.parent = parent + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsGetAgentCall) Fields(s ...googleapi.Field) *ProjectsGetAgentCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// IfNoneMatch sets the optional parameter which makes the operation +// fail if the object's ETag matches the given value. This is useful for +// getting updates only after the object has changed since the last +// request. Use googleapi.IsNotModified to check whether the response +// error from Do is the result of In-None-Match. +func (c *ProjectsGetAgentCall) IfNoneMatch(entityTag string) *ProjectsGetAgentCall { + c.ifNoneMatch_ = entityTag + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsGetAgentCall) Context(ctx context.Context) *ProjectsGetAgentCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsGetAgentCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsGetAgentCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + if c.ifNoneMatch_ != "" { + reqHeaders.Set("If-None-Match", c.ifNoneMatch_) + } + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v2/{+parent}/agent") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("GET", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "parent": c.parent, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "dialogflow.projects.getAgent" call. +// Exactly one of *GoogleCloudDialogflowV2Agent or error will be +// non-nil. Any non-2xx status code is an error. Response headers are in +// either *GoogleCloudDialogflowV2Agent.ServerResponse.Header or (if a +// response was returned at all) in error.(*googleapi.Error).Header. Use +// googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *ProjectsGetAgentCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowV2Agent, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &GoogleCloudDialogflowV2Agent{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Retrieves the specified agent.", + // "flatPath": "v2/projects/{projectsId}/agent", + // "httpMethod": "GET", + // "id": "dialogflow.projects.getAgent", + // "parameterOrder": [ + // "parent" + // ], + // "parameters": { + // "parent": { + // "description": "Required. The project that the agent to fetch is associated with.\nFormat: `projects/\u003cProject ID\u003e`.", + // "location": "path", + // "pattern": "^projects/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v2/{+parent}/agent", + // "response": { + // "$ref": "GoogleCloudDialogflowV2Agent" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "dialogflow.projects.agent.export": + +type ProjectsAgentExportCall struct { + s *Service + parent string + googleclouddialogflowv2exportagentrequest *GoogleCloudDialogflowV2ExportAgentRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Export: Exports the specified agent to a ZIP file. +// +// Operation +func (r *ProjectsAgentService) Export(parent string, googleclouddialogflowv2exportagentrequest *GoogleCloudDialogflowV2ExportAgentRequest) *ProjectsAgentExportCall { + c := &ProjectsAgentExportCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.parent = parent + c.googleclouddialogflowv2exportagentrequest = googleclouddialogflowv2exportagentrequest + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsAgentExportCall) Fields(s ...googleapi.Field) *ProjectsAgentExportCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsAgentExportCall) Context(ctx context.Context) *ProjectsAgentExportCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsAgentExportCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsAgentExportCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowv2exportagentrequest) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v2/{+parent}/agent:export") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("POST", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "parent": c.parent, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "dialogflow.projects.agent.export" call. +// Exactly one of *GoogleLongrunningOperation or error will be non-nil. +// Any non-2xx status code is an error. Response headers are in either +// *GoogleLongrunningOperation.ServerResponse.Header or (if a response +// was returned at all) in error.(*googleapi.Error).Header. Use +// googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *ProjectsAgentExportCall) Do(opts ...googleapi.CallOption) (*GoogleLongrunningOperation, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &GoogleLongrunningOperation{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Exports the specified agent to a ZIP file.\n\nOperation \u003cresponse: ExportAgentResponse,\n metadata: google.protobuf.Struct\u003e", + // "flatPath": "v2/projects/{projectsId}/agent:export", + // "httpMethod": "POST", + // "id": "dialogflow.projects.agent.export", + // "parameterOrder": [ + // "parent" + // ], + // "parameters": { + // "parent": { + // "description": "Required. The project that the agent to export is associated with.\nFormat: `projects/\u003cProject ID\u003e`.", + // "location": "path", + // "pattern": "^projects/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v2/{+parent}/agent:export", + // "request": { + // "$ref": "GoogleCloudDialogflowV2ExportAgentRequest" + // }, + // "response": { + // "$ref": "GoogleLongrunningOperation" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "dialogflow.projects.agent.import": + +type ProjectsAgentImportCall struct { + s *Service + parent string + googleclouddialogflowv2importagentrequest *GoogleCloudDialogflowV2ImportAgentRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Import: Imports the specified agent from a ZIP file. +// +// Uploads new intents and entity types without deleting the existing +// ones. +// Intents and entity types with the same name are replaced with the +// new +// versions from ImportAgentRequest. +// +// Operation +func (r *ProjectsAgentService) Import(parent string, googleclouddialogflowv2importagentrequest *GoogleCloudDialogflowV2ImportAgentRequest) *ProjectsAgentImportCall { + c := &ProjectsAgentImportCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.parent = parent + c.googleclouddialogflowv2importagentrequest = googleclouddialogflowv2importagentrequest + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsAgentImportCall) Fields(s ...googleapi.Field) *ProjectsAgentImportCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsAgentImportCall) Context(ctx context.Context) *ProjectsAgentImportCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsAgentImportCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsAgentImportCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowv2importagentrequest) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v2/{+parent}/agent:import") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("POST", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "parent": c.parent, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "dialogflow.projects.agent.import" call. +// Exactly one of *GoogleLongrunningOperation or error will be non-nil. +// Any non-2xx status code is an error. Response headers are in either +// *GoogleLongrunningOperation.ServerResponse.Header or (if a response +// was returned at all) in error.(*googleapi.Error).Header. Use +// googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *ProjectsAgentImportCall) Do(opts ...googleapi.CallOption) (*GoogleLongrunningOperation, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &GoogleLongrunningOperation{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Imports the specified agent from a ZIP file.\n\nUploads new intents and entity types without deleting the existing ones.\nIntents and entity types with the same name are replaced with the new\nversions from ImportAgentRequest.\n\nOperation \u003cresponse: google.protobuf.Empty,\n metadata: google.protobuf.Struct\u003e", + // "flatPath": "v2/projects/{projectsId}/agent:import", + // "httpMethod": "POST", + // "id": "dialogflow.projects.agent.import", + // "parameterOrder": [ + // "parent" + // ], + // "parameters": { + // "parent": { + // "description": "Required. The project that the agent to import is associated with.\nFormat: `projects/\u003cProject ID\u003e`.", + // "location": "path", + // "pattern": "^projects/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v2/{+parent}/agent:import", + // "request": { + // "$ref": "GoogleCloudDialogflowV2ImportAgentRequest" + // }, + // "response": { + // "$ref": "GoogleLongrunningOperation" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "dialogflow.projects.agent.restore": + +type ProjectsAgentRestoreCall struct { + s *Service + parent string + googleclouddialogflowv2restoreagentrequest *GoogleCloudDialogflowV2RestoreAgentRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Restore: Restores the specified agent from a ZIP file. +// +// Replaces the current agent version with a new one. All the intents +// and +// entity types in the older version are deleted. +// +// Operation +func (r *ProjectsAgentService) Restore(parent string, googleclouddialogflowv2restoreagentrequest *GoogleCloudDialogflowV2RestoreAgentRequest) *ProjectsAgentRestoreCall { + c := &ProjectsAgentRestoreCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.parent = parent + c.googleclouddialogflowv2restoreagentrequest = googleclouddialogflowv2restoreagentrequest + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsAgentRestoreCall) Fields(s ...googleapi.Field) *ProjectsAgentRestoreCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsAgentRestoreCall) Context(ctx context.Context) *ProjectsAgentRestoreCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsAgentRestoreCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsAgentRestoreCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowv2restoreagentrequest) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v2/{+parent}/agent:restore") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("POST", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "parent": c.parent, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "dialogflow.projects.agent.restore" call. +// Exactly one of *GoogleLongrunningOperation or error will be non-nil. +// Any non-2xx status code is an error. Response headers are in either +// *GoogleLongrunningOperation.ServerResponse.Header or (if a response +// was returned at all) in error.(*googleapi.Error).Header. Use +// googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *ProjectsAgentRestoreCall) Do(opts ...googleapi.CallOption) (*GoogleLongrunningOperation, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &GoogleLongrunningOperation{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Restores the specified agent from a ZIP file.\n\nReplaces the current agent version with a new one. All the intents and\nentity types in the older version are deleted.\n\nOperation \u003cresponse: google.protobuf.Empty,\n metadata: google.protobuf.Struct\u003e", + // "flatPath": "v2/projects/{projectsId}/agent:restore", + // "httpMethod": "POST", + // "id": "dialogflow.projects.agent.restore", + // "parameterOrder": [ + // "parent" + // ], + // "parameters": { + // "parent": { + // "description": "Required. The project that the agent to restore is associated with.\nFormat: `projects/\u003cProject ID\u003e`.", + // "location": "path", + // "pattern": "^projects/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v2/{+parent}/agent:restore", + // "request": { + // "$ref": "GoogleCloudDialogflowV2RestoreAgentRequest" + // }, + // "response": { + // "$ref": "GoogleLongrunningOperation" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "dialogflow.projects.agent.search": + +type ProjectsAgentSearchCall struct { + s *Service + parent string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// Search: Returns the list of agents. +// +// Since there is at most one conversational agent per project, this +// method is +// useful primarily for listing all agents across projects the caller +// has +// access to. One can achieve that with a wildcard project collection id +// "-". +// Refer to +// [List +// Sub-Collections](https://cloud.google.com/apis/design/design_pat +// terns#list_sub-collections). +func (r *ProjectsAgentService) Search(parent string) *ProjectsAgentSearchCall { + c := &ProjectsAgentSearchCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.parent = parent + return c +} + +// PageSize sets the optional parameter "pageSize": The maximum number +// of items to return in a single page. By +// default 100 and at most 1000. +func (c *ProjectsAgentSearchCall) PageSize(pageSize int64) *ProjectsAgentSearchCall { + c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) + return c +} + +// PageToken sets the optional parameter "pageToken": The +// next_page_token value returned from a previous list request. +func (c *ProjectsAgentSearchCall) PageToken(pageToken string) *ProjectsAgentSearchCall { + c.urlParams_.Set("pageToken", pageToken) + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsAgentSearchCall) Fields(s ...googleapi.Field) *ProjectsAgentSearchCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// IfNoneMatch sets the optional parameter which makes the operation +// fail if the object's ETag matches the given value. This is useful for +// getting updates only after the object has changed since the last +// request. Use googleapi.IsNotModified to check whether the response +// error from Do is the result of In-None-Match. +func (c *ProjectsAgentSearchCall) IfNoneMatch(entityTag string) *ProjectsAgentSearchCall { + c.ifNoneMatch_ = entityTag + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsAgentSearchCall) Context(ctx context.Context) *ProjectsAgentSearchCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsAgentSearchCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsAgentSearchCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + if c.ifNoneMatch_ != "" { + reqHeaders.Set("If-None-Match", c.ifNoneMatch_) + } + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v2/{+parent}/agent:search") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("GET", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "parent": c.parent, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "dialogflow.projects.agent.search" call. +// Exactly one of *GoogleCloudDialogflowV2SearchAgentsResponse or error +// will be non-nil. Any non-2xx status code is an error. Response +// headers are in either +// *GoogleCloudDialogflowV2SearchAgentsResponse.ServerResponse.Header or +// (if a response was returned at all) in +// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check +// whether the returned error was because http.StatusNotModified was +// returned. +func (c *ProjectsAgentSearchCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowV2SearchAgentsResponse, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &GoogleCloudDialogflowV2SearchAgentsResponse{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Returns the list of agents.\n\nSince there is at most one conversational agent per project, this method is\nuseful primarily for listing all agents across projects the caller has\naccess to. One can achieve that with a wildcard project collection id \"-\".\nRefer to [List\nSub-Collections](https://cloud.google.com/apis/design/design_patterns#list_sub-collections).", + // "flatPath": "v2/projects/{projectsId}/agent:search", + // "httpMethod": "GET", + // "id": "dialogflow.projects.agent.search", + // "parameterOrder": [ + // "parent" + // ], + // "parameters": { + // "pageSize": { + // "description": "Optional. The maximum number of items to return in a single page. By\ndefault 100 and at most 1000.", + // "format": "int32", + // "location": "query", + // "type": "integer" + // }, + // "pageToken": { + // "description": "Optional. The next_page_token value returned from a previous list request.", + // "location": "query", + // "type": "string" + // }, + // "parent": { + // "description": "Required. The project to list agents from.\nFormat: `projects/\u003cProject ID or '-'\u003e`.", + // "location": "path", + // "pattern": "^projects/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v2/{+parent}/agent:search", + // "response": { + // "$ref": "GoogleCloudDialogflowV2SearchAgentsResponse" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// Pages invokes f for each page of results. +// A non-nil error returned from f will halt the iteration. +// The provided context supersedes any context provided to the Context method. +func (c *ProjectsAgentSearchCall) Pages(ctx context.Context, f func(*GoogleCloudDialogflowV2SearchAgentsResponse) error) error { + c.ctx_ = ctx + defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point + for { + x, err := c.Do() + if err != nil { + return err + } + if err := f(x); err != nil { + return err + } + if x.NextPageToken == "" { + return nil + } + c.PageToken(x.NextPageToken) + } +} + +// method id "dialogflow.projects.agent.train": + +type ProjectsAgentTrainCall struct { + s *Service + parent string + googleclouddialogflowv2trainagentrequest *GoogleCloudDialogflowV2TrainAgentRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Train: Trains the specified agent. +// +// Operation +func (r *ProjectsAgentService) Train(parent string, googleclouddialogflowv2trainagentrequest *GoogleCloudDialogflowV2TrainAgentRequest) *ProjectsAgentTrainCall { + c := &ProjectsAgentTrainCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.parent = parent + c.googleclouddialogflowv2trainagentrequest = googleclouddialogflowv2trainagentrequest + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsAgentTrainCall) Fields(s ...googleapi.Field) *ProjectsAgentTrainCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsAgentTrainCall) Context(ctx context.Context) *ProjectsAgentTrainCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsAgentTrainCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsAgentTrainCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowv2trainagentrequest) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v2/{+parent}/agent:train") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("POST", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "parent": c.parent, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "dialogflow.projects.agent.train" call. +// Exactly one of *GoogleLongrunningOperation or error will be non-nil. +// Any non-2xx status code is an error. Response headers are in either +// *GoogleLongrunningOperation.ServerResponse.Header or (if a response +// was returned at all) in error.(*googleapi.Error).Header. Use +// googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *ProjectsAgentTrainCall) Do(opts ...googleapi.CallOption) (*GoogleLongrunningOperation, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &GoogleLongrunningOperation{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Trains the specified agent.\n\nOperation \u003cresponse: google.protobuf.Empty,\n metadata: google.protobuf.Struct\u003e", + // "flatPath": "v2/projects/{projectsId}/agent:train", + // "httpMethod": "POST", + // "id": "dialogflow.projects.agent.train", + // "parameterOrder": [ + // "parent" + // ], + // "parameters": { + // "parent": { + // "description": "Required. The project that the agent to train is associated with.\nFormat: `projects/\u003cProject ID\u003e`.", + // "location": "path", + // "pattern": "^projects/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v2/{+parent}/agent:train", + // "request": { + // "$ref": "GoogleCloudDialogflowV2TrainAgentRequest" + // }, + // "response": { + // "$ref": "GoogleLongrunningOperation" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "dialogflow.projects.agent.entityTypes.batchDelete": + +type ProjectsAgentEntityTypesBatchDeleteCall struct { + s *Service + parent string + googleclouddialogflowv2batchdeleteentitytypesrequest *GoogleCloudDialogflowV2BatchDeleteEntityTypesRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// BatchDelete: Deletes entity types in the specified agent. +// +// Operation +func (r *ProjectsAgentEntityTypesService) BatchDelete(parent string, googleclouddialogflowv2batchdeleteentitytypesrequest *GoogleCloudDialogflowV2BatchDeleteEntityTypesRequest) *ProjectsAgentEntityTypesBatchDeleteCall { + c := &ProjectsAgentEntityTypesBatchDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.parent = parent + c.googleclouddialogflowv2batchdeleteentitytypesrequest = googleclouddialogflowv2batchdeleteentitytypesrequest + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsAgentEntityTypesBatchDeleteCall) Fields(s ...googleapi.Field) *ProjectsAgentEntityTypesBatchDeleteCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsAgentEntityTypesBatchDeleteCall) Context(ctx context.Context) *ProjectsAgentEntityTypesBatchDeleteCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsAgentEntityTypesBatchDeleteCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsAgentEntityTypesBatchDeleteCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowv2batchdeleteentitytypesrequest) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v2/{+parent}/entityTypes:batchDelete") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("POST", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "parent": c.parent, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "dialogflow.projects.agent.entityTypes.batchDelete" call. +// Exactly one of *GoogleLongrunningOperation or error will be non-nil. +// Any non-2xx status code is an error. Response headers are in either +// *GoogleLongrunningOperation.ServerResponse.Header or (if a response +// was returned at all) in error.(*googleapi.Error).Header. Use +// googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *ProjectsAgentEntityTypesBatchDeleteCall) Do(opts ...googleapi.CallOption) (*GoogleLongrunningOperation, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &GoogleLongrunningOperation{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Deletes entity types in the specified agent.\n\nOperation \u003cresponse: google.protobuf.Empty,\n metadata: google.protobuf.Struct\u003e", + // "flatPath": "v2/projects/{projectsId}/agent/entityTypes:batchDelete", + // "httpMethod": "POST", + // "id": "dialogflow.projects.agent.entityTypes.batchDelete", + // "parameterOrder": [ + // "parent" + // ], + // "parameters": { + // "parent": { + // "description": "Required. The name of the agent to delete all entities types for. Format:\n`projects/\u003cProject ID\u003e/agent`.", + // "location": "path", + // "pattern": "^projects/[^/]+/agent$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v2/{+parent}/entityTypes:batchDelete", + // "request": { + // "$ref": "GoogleCloudDialogflowV2BatchDeleteEntityTypesRequest" + // }, + // "response": { + // "$ref": "GoogleLongrunningOperation" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "dialogflow.projects.agent.entityTypes.batchUpdate": + +type ProjectsAgentEntityTypesBatchUpdateCall struct { + s *Service + parent string + googleclouddialogflowv2batchupdateentitytypesrequest *GoogleCloudDialogflowV2BatchUpdateEntityTypesRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// BatchUpdate: Updates/Creates multiple entity types in the specified +// agent. +// +// Operation +func (r *ProjectsAgentEntityTypesService) BatchUpdate(parent string, googleclouddialogflowv2batchupdateentitytypesrequest *GoogleCloudDialogflowV2BatchUpdateEntityTypesRequest) *ProjectsAgentEntityTypesBatchUpdateCall { + c := &ProjectsAgentEntityTypesBatchUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.parent = parent + c.googleclouddialogflowv2batchupdateentitytypesrequest = googleclouddialogflowv2batchupdateentitytypesrequest + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsAgentEntityTypesBatchUpdateCall) Fields(s ...googleapi.Field) *ProjectsAgentEntityTypesBatchUpdateCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsAgentEntityTypesBatchUpdateCall) Context(ctx context.Context) *ProjectsAgentEntityTypesBatchUpdateCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsAgentEntityTypesBatchUpdateCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsAgentEntityTypesBatchUpdateCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowv2batchupdateentitytypesrequest) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v2/{+parent}/entityTypes:batchUpdate") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("POST", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "parent": c.parent, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "dialogflow.projects.agent.entityTypes.batchUpdate" call. +// Exactly one of *GoogleLongrunningOperation or error will be non-nil. +// Any non-2xx status code is an error. Response headers are in either +// *GoogleLongrunningOperation.ServerResponse.Header or (if a response +// was returned at all) in error.(*googleapi.Error).Header. Use +// googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *ProjectsAgentEntityTypesBatchUpdateCall) Do(opts ...googleapi.CallOption) (*GoogleLongrunningOperation, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &GoogleLongrunningOperation{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Updates/Creates multiple entity types in the specified agent.\n\nOperation \u003cresponse: BatchUpdateEntityTypesResponse,\n metadata: google.protobuf.Struct\u003e", + // "flatPath": "v2/projects/{projectsId}/agent/entityTypes:batchUpdate", + // "httpMethod": "POST", + // "id": "dialogflow.projects.agent.entityTypes.batchUpdate", + // "parameterOrder": [ + // "parent" + // ], + // "parameters": { + // "parent": { + // "description": "Required. The name of the agent to update or create entity types in.\nFormat: `projects/\u003cProject ID\u003e/agent`.", + // "location": "path", + // "pattern": "^projects/[^/]+/agent$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v2/{+parent}/entityTypes:batchUpdate", + // "request": { + // "$ref": "GoogleCloudDialogflowV2BatchUpdateEntityTypesRequest" + // }, + // "response": { + // "$ref": "GoogleLongrunningOperation" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "dialogflow.projects.agent.entityTypes.create": + +type ProjectsAgentEntityTypesCreateCall struct { + s *Service + parent string + googleclouddialogflowv2entitytype *GoogleCloudDialogflowV2EntityType + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Create: Creates an entity type in the specified agent. +func (r *ProjectsAgentEntityTypesService) Create(parent string, googleclouddialogflowv2entitytype *GoogleCloudDialogflowV2EntityType) *ProjectsAgentEntityTypesCreateCall { + c := &ProjectsAgentEntityTypesCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.parent = parent + c.googleclouddialogflowv2entitytype = googleclouddialogflowv2entitytype + return c +} + +// LanguageCode sets the optional parameter "languageCode": The language +// of entity synonyms defined in `entity_type`. If not +// specified, the agent's default language is used. +// [More than a +// dozen +// languages](https://dialogflow.com/docs/reference/language) are +// supported. +// Note: languages must be enabled in the agent, before they can be +// used. +func (c *ProjectsAgentEntityTypesCreateCall) LanguageCode(languageCode string) *ProjectsAgentEntityTypesCreateCall { + c.urlParams_.Set("languageCode", languageCode) + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsAgentEntityTypesCreateCall) Fields(s ...googleapi.Field) *ProjectsAgentEntityTypesCreateCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsAgentEntityTypesCreateCall) Context(ctx context.Context) *ProjectsAgentEntityTypesCreateCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsAgentEntityTypesCreateCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsAgentEntityTypesCreateCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowv2entitytype) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v2/{+parent}/entityTypes") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("POST", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "parent": c.parent, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "dialogflow.projects.agent.entityTypes.create" call. +// Exactly one of *GoogleCloudDialogflowV2EntityType or error will be +// non-nil. Any non-2xx status code is an error. Response headers are in +// either *GoogleCloudDialogflowV2EntityType.ServerResponse.Header or +// (if a response was returned at all) in +// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check +// whether the returned error was because http.StatusNotModified was +// returned. +func (c *ProjectsAgentEntityTypesCreateCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowV2EntityType, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &GoogleCloudDialogflowV2EntityType{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Creates an entity type in the specified agent.", + // "flatPath": "v2/projects/{projectsId}/agent/entityTypes", + // "httpMethod": "POST", + // "id": "dialogflow.projects.agent.entityTypes.create", + // "parameterOrder": [ + // "parent" + // ], + // "parameters": { + // "languageCode": { + // "description": "Optional. The language of entity synonyms defined in `entity_type`. If not\nspecified, the agent's default language is used.\n[More than a dozen\nlanguages](https://dialogflow.com/docs/reference/language) are supported.\nNote: languages must be enabled in the agent, before they can be used.", + // "location": "query", + // "type": "string" + // }, + // "parent": { + // "description": "Required. The agent to create a entity type for.\nFormat: `projects/\u003cProject ID\u003e/agent`.", + // "location": "path", + // "pattern": "^projects/[^/]+/agent$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v2/{+parent}/entityTypes", + // "request": { + // "$ref": "GoogleCloudDialogflowV2EntityType" + // }, + // "response": { + // "$ref": "GoogleCloudDialogflowV2EntityType" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "dialogflow.projects.agent.entityTypes.delete": + +type ProjectsAgentEntityTypesDeleteCall struct { + s *Service + name string + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Delete: Deletes the specified entity type. +func (r *ProjectsAgentEntityTypesService) Delete(name string) *ProjectsAgentEntityTypesDeleteCall { + c := &ProjectsAgentEntityTypesDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsAgentEntityTypesDeleteCall) Fields(s ...googleapi.Field) *ProjectsAgentEntityTypesDeleteCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsAgentEntityTypesDeleteCall) Context(ctx context.Context) *ProjectsAgentEntityTypesDeleteCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsAgentEntityTypesDeleteCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsAgentEntityTypesDeleteCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v2/{+name}") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("DELETE", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "dialogflow.projects.agent.entityTypes.delete" call. +// Exactly one of *GoogleProtobufEmpty or error will be non-nil. Any +// non-2xx status code is an error. Response headers are in either +// *GoogleProtobufEmpty.ServerResponse.Header or (if a response was +// returned at all) in error.(*googleapi.Error).Header. Use +// googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *ProjectsAgentEntityTypesDeleteCall) Do(opts ...googleapi.CallOption) (*GoogleProtobufEmpty, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &GoogleProtobufEmpty{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Deletes the specified entity type.", + // "flatPath": "v2/projects/{projectsId}/agent/entityTypes/{entityTypesId}", + // "httpMethod": "DELETE", + // "id": "dialogflow.projects.agent.entityTypes.delete", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "Required. The name of the entity type to delete.\nFormat: `projects/\u003cProject ID\u003e/agent/entityTypes/\u003cEntityType ID\u003e`.", + // "location": "path", + // "pattern": "^projects/[^/]+/agent/entityTypes/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v2/{+name}", + // "response": { + // "$ref": "GoogleProtobufEmpty" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "dialogflow.projects.agent.entityTypes.get": + +type ProjectsAgentEntityTypesGetCall struct { + s *Service + name string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// Get: Retrieves the specified entity type. +func (r *ProjectsAgentEntityTypesService) Get(name string) *ProjectsAgentEntityTypesGetCall { + c := &ProjectsAgentEntityTypesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + return c +} + +// LanguageCode sets the optional parameter "languageCode": The language +// to retrieve entity synonyms for. If not specified, +// the agent's default language is used. +// [More than a +// dozen +// languages](https://dialogflow.com/docs/reference/language) are +// supported. +// Note: languages must be enabled in the agent, before they can be +// used. +func (c *ProjectsAgentEntityTypesGetCall) LanguageCode(languageCode string) *ProjectsAgentEntityTypesGetCall { + c.urlParams_.Set("languageCode", languageCode) + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsAgentEntityTypesGetCall) Fields(s ...googleapi.Field) *ProjectsAgentEntityTypesGetCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// IfNoneMatch sets the optional parameter which makes the operation +// fail if the object's ETag matches the given value. This is useful for +// getting updates only after the object has changed since the last +// request. Use googleapi.IsNotModified to check whether the response +// error from Do is the result of In-None-Match. +func (c *ProjectsAgentEntityTypesGetCall) IfNoneMatch(entityTag string) *ProjectsAgentEntityTypesGetCall { + c.ifNoneMatch_ = entityTag + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsAgentEntityTypesGetCall) Context(ctx context.Context) *ProjectsAgentEntityTypesGetCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsAgentEntityTypesGetCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsAgentEntityTypesGetCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + if c.ifNoneMatch_ != "" { + reqHeaders.Set("If-None-Match", c.ifNoneMatch_) + } + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v2/{+name}") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("GET", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "dialogflow.projects.agent.entityTypes.get" call. +// Exactly one of *GoogleCloudDialogflowV2EntityType or error will be +// non-nil. Any non-2xx status code is an error. Response headers are in +// either *GoogleCloudDialogflowV2EntityType.ServerResponse.Header or +// (if a response was returned at all) in +// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check +// whether the returned error was because http.StatusNotModified was +// returned. +func (c *ProjectsAgentEntityTypesGetCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowV2EntityType, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &GoogleCloudDialogflowV2EntityType{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Retrieves the specified entity type.", + // "flatPath": "v2/projects/{projectsId}/agent/entityTypes/{entityTypesId}", + // "httpMethod": "GET", + // "id": "dialogflow.projects.agent.entityTypes.get", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "languageCode": { + // "description": "Optional. The language to retrieve entity synonyms for. If not specified,\nthe agent's default language is used.\n[More than a dozen\nlanguages](https://dialogflow.com/docs/reference/language) are supported.\nNote: languages must be enabled in the agent, before they can be used.", + // "location": "query", + // "type": "string" + // }, + // "name": { + // "description": "Required. The name of the entity type.\nFormat: `projects/\u003cProject ID\u003e/agent/entityTypes/\u003cEntityType ID\u003e`.", + // "location": "path", + // "pattern": "^projects/[^/]+/agent/entityTypes/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v2/{+name}", + // "response": { + // "$ref": "GoogleCloudDialogflowV2EntityType" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "dialogflow.projects.agent.entityTypes.list": + +type ProjectsAgentEntityTypesListCall struct { + s *Service + parent string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// List: Returns the list of all entity types in the specified agent. +func (r *ProjectsAgentEntityTypesService) List(parent string) *ProjectsAgentEntityTypesListCall { + c := &ProjectsAgentEntityTypesListCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.parent = parent + return c +} + +// LanguageCode sets the optional parameter "languageCode": The language +// to list entity synonyms for. If not specified, +// the agent's default language is used. +// [More than a +// dozen +// languages](https://dialogflow.com/docs/reference/language) are +// supported. +// Note: languages must be enabled in the agent, before they can be +// used. +func (c *ProjectsAgentEntityTypesListCall) LanguageCode(languageCode string) *ProjectsAgentEntityTypesListCall { + c.urlParams_.Set("languageCode", languageCode) + return c +} + +// PageSize sets the optional parameter "pageSize": The maximum number +// of items to return in a single page. By +// default 100 and at most 1000. +func (c *ProjectsAgentEntityTypesListCall) PageSize(pageSize int64) *ProjectsAgentEntityTypesListCall { + c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) + return c +} + +// PageToken sets the optional parameter "pageToken": The +// next_page_token value returned from a previous list request. +func (c *ProjectsAgentEntityTypesListCall) PageToken(pageToken string) *ProjectsAgentEntityTypesListCall { + c.urlParams_.Set("pageToken", pageToken) + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsAgentEntityTypesListCall) Fields(s ...googleapi.Field) *ProjectsAgentEntityTypesListCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// IfNoneMatch sets the optional parameter which makes the operation +// fail if the object's ETag matches the given value. This is useful for +// getting updates only after the object has changed since the last +// request. Use googleapi.IsNotModified to check whether the response +// error from Do is the result of In-None-Match. +func (c *ProjectsAgentEntityTypesListCall) IfNoneMatch(entityTag string) *ProjectsAgentEntityTypesListCall { + c.ifNoneMatch_ = entityTag + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsAgentEntityTypesListCall) Context(ctx context.Context) *ProjectsAgentEntityTypesListCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsAgentEntityTypesListCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsAgentEntityTypesListCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + if c.ifNoneMatch_ != "" { + reqHeaders.Set("If-None-Match", c.ifNoneMatch_) + } + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v2/{+parent}/entityTypes") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("GET", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "parent": c.parent, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "dialogflow.projects.agent.entityTypes.list" call. +// Exactly one of *GoogleCloudDialogflowV2ListEntityTypesResponse or +// error will be non-nil. Any non-2xx status code is an error. Response +// headers are in either +// *GoogleCloudDialogflowV2ListEntityTypesResponse.ServerResponse.Header +// or (if a response was returned at all) in +// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check +// whether the returned error was because http.StatusNotModified was +// returned. +func (c *ProjectsAgentEntityTypesListCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowV2ListEntityTypesResponse, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &GoogleCloudDialogflowV2ListEntityTypesResponse{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Returns the list of all entity types in the specified agent.", + // "flatPath": "v2/projects/{projectsId}/agent/entityTypes", + // "httpMethod": "GET", + // "id": "dialogflow.projects.agent.entityTypes.list", + // "parameterOrder": [ + // "parent" + // ], + // "parameters": { + // "languageCode": { + // "description": "Optional. The language to list entity synonyms for. If not specified,\nthe agent's default language is used.\n[More than a dozen\nlanguages](https://dialogflow.com/docs/reference/language) are supported.\nNote: languages must be enabled in the agent, before they can be used.", + // "location": "query", + // "type": "string" + // }, + // "pageSize": { + // "description": "Optional. The maximum number of items to return in a single page. By\ndefault 100 and at most 1000.", + // "format": "int32", + // "location": "query", + // "type": "integer" + // }, + // "pageToken": { + // "description": "Optional. The next_page_token value returned from a previous list request.", + // "location": "query", + // "type": "string" + // }, + // "parent": { + // "description": "Required. The agent to list all entity types from.\nFormat: `projects/\u003cProject ID\u003e/agent`.", + // "location": "path", + // "pattern": "^projects/[^/]+/agent$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v2/{+parent}/entityTypes", + // "response": { + // "$ref": "GoogleCloudDialogflowV2ListEntityTypesResponse" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// Pages invokes f for each page of results. +// A non-nil error returned from f will halt the iteration. +// The provided context supersedes any context provided to the Context method. +func (c *ProjectsAgentEntityTypesListCall) Pages(ctx context.Context, f func(*GoogleCloudDialogflowV2ListEntityTypesResponse) error) error { + c.ctx_ = ctx + defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point + for { + x, err := c.Do() + if err != nil { + return err + } + if err := f(x); err != nil { + return err + } + if x.NextPageToken == "" { + return nil + } + c.PageToken(x.NextPageToken) + } +} + +// method id "dialogflow.projects.agent.entityTypes.patch": + +type ProjectsAgentEntityTypesPatchCall struct { + s *Service + nameid string + googleclouddialogflowv2entitytype *GoogleCloudDialogflowV2EntityType + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Patch: Updates the specified entity type. +func (r *ProjectsAgentEntityTypesService) Patch(nameid string, googleclouddialogflowv2entitytype *GoogleCloudDialogflowV2EntityType) *ProjectsAgentEntityTypesPatchCall { + c := &ProjectsAgentEntityTypesPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.nameid = nameid + c.googleclouddialogflowv2entitytype = googleclouddialogflowv2entitytype + return c +} + +// LanguageCode sets the optional parameter "languageCode": The language +// of entity synonyms defined in `entity_type`. If not +// specified, the agent's default language is used. +// [More than a +// dozen +// languages](https://dialogflow.com/docs/reference/language) are +// supported. +// Note: languages must be enabled in the agent, before they can be +// used. +func (c *ProjectsAgentEntityTypesPatchCall) LanguageCode(languageCode string) *ProjectsAgentEntityTypesPatchCall { + c.urlParams_.Set("languageCode", languageCode) + return c +} + +// UpdateMask sets the optional parameter "updateMask": The mask to +// control which fields get updated. +func (c *ProjectsAgentEntityTypesPatchCall) UpdateMask(updateMask string) *ProjectsAgentEntityTypesPatchCall { + c.urlParams_.Set("updateMask", updateMask) + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsAgentEntityTypesPatchCall) Fields(s ...googleapi.Field) *ProjectsAgentEntityTypesPatchCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsAgentEntityTypesPatchCall) Context(ctx context.Context) *ProjectsAgentEntityTypesPatchCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsAgentEntityTypesPatchCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsAgentEntityTypesPatchCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowv2entitytype) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v2/{+name}") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("PATCH", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.nameid, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "dialogflow.projects.agent.entityTypes.patch" call. +// Exactly one of *GoogleCloudDialogflowV2EntityType or error will be +// non-nil. Any non-2xx status code is an error. Response headers are in +// either *GoogleCloudDialogflowV2EntityType.ServerResponse.Header or +// (if a response was returned at all) in +// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check +// whether the returned error was because http.StatusNotModified was +// returned. +func (c *ProjectsAgentEntityTypesPatchCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowV2EntityType, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &GoogleCloudDialogflowV2EntityType{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Updates the specified entity type.", + // "flatPath": "v2/projects/{projectsId}/agent/entityTypes/{entityTypesId}", + // "httpMethod": "PATCH", + // "id": "dialogflow.projects.agent.entityTypes.patch", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "languageCode": { + // "description": "Optional. The language of entity synonyms defined in `entity_type`. If not\nspecified, the agent's default language is used.\n[More than a dozen\nlanguages](https://dialogflow.com/docs/reference/language) are supported.\nNote: languages must be enabled in the agent, before they can be used.", + // "location": "query", + // "type": "string" + // }, + // "name": { + // "description": "Required for all methods except `create` (`create` populates the name\nautomatically.\nThe unique identifier of the entity type. Format:\n`projects/\u003cProject ID\u003e/agent/entityTypes/\u003cEntity Type ID\u003e`.", + // "location": "path", + // "pattern": "^projects/[^/]+/agent/entityTypes/[^/]+$", + // "required": true, + // "type": "string" + // }, + // "updateMask": { + // "description": "Optional. The mask to control which fields get updated.", + // "format": "google-fieldmask", + // "location": "query", + // "type": "string" + // } + // }, + // "path": "v2/{+name}", + // "request": { + // "$ref": "GoogleCloudDialogflowV2EntityType" + // }, + // "response": { + // "$ref": "GoogleCloudDialogflowV2EntityType" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "dialogflow.projects.agent.entityTypes.entities.batchCreate": + +type ProjectsAgentEntityTypesEntitiesBatchCreateCall struct { + s *Service + parent string + googleclouddialogflowv2batchcreateentitiesrequest *GoogleCloudDialogflowV2BatchCreateEntitiesRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// BatchCreate: Creates multiple new entities in the specified entity +// type (extends the +// existing collection of entries). +// +// Operation +func (r *ProjectsAgentEntityTypesEntitiesService) BatchCreate(parent string, googleclouddialogflowv2batchcreateentitiesrequest *GoogleCloudDialogflowV2BatchCreateEntitiesRequest) *ProjectsAgentEntityTypesEntitiesBatchCreateCall { + c := &ProjectsAgentEntityTypesEntitiesBatchCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.parent = parent + c.googleclouddialogflowv2batchcreateentitiesrequest = googleclouddialogflowv2batchcreateentitiesrequest + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsAgentEntityTypesEntitiesBatchCreateCall) Fields(s ...googleapi.Field) *ProjectsAgentEntityTypesEntitiesBatchCreateCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsAgentEntityTypesEntitiesBatchCreateCall) Context(ctx context.Context) *ProjectsAgentEntityTypesEntitiesBatchCreateCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsAgentEntityTypesEntitiesBatchCreateCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsAgentEntityTypesEntitiesBatchCreateCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowv2batchcreateentitiesrequest) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v2/{+parent}/entities:batchCreate") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("POST", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "parent": c.parent, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "dialogflow.projects.agent.entityTypes.entities.batchCreate" call. +// Exactly one of *GoogleLongrunningOperation or error will be non-nil. +// Any non-2xx status code is an error. Response headers are in either +// *GoogleLongrunningOperation.ServerResponse.Header or (if a response +// was returned at all) in error.(*googleapi.Error).Header. Use +// googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *ProjectsAgentEntityTypesEntitiesBatchCreateCall) Do(opts ...googleapi.CallOption) (*GoogleLongrunningOperation, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &GoogleLongrunningOperation{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Creates multiple new entities in the specified entity type (extends the\nexisting collection of entries).\n\nOperation \u003cresponse: google.protobuf.Empty\u003e", + // "flatPath": "v2/projects/{projectsId}/agent/entityTypes/{entityTypesId}/entities:batchCreate", + // "httpMethod": "POST", + // "id": "dialogflow.projects.agent.entityTypes.entities.batchCreate", + // "parameterOrder": [ + // "parent" + // ], + // "parameters": { + // "parent": { + // "description": "Required. The name of the entity type to create entities in. Format:\n`projects/\u003cProject ID\u003e/agent/entityTypes/\u003cEntity Type ID\u003e`.", + // "location": "path", + // "pattern": "^projects/[^/]+/agent/entityTypes/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v2/{+parent}/entities:batchCreate", + // "request": { + // "$ref": "GoogleCloudDialogflowV2BatchCreateEntitiesRequest" + // }, + // "response": { + // "$ref": "GoogleLongrunningOperation" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "dialogflow.projects.agent.entityTypes.entities.batchDelete": + +type ProjectsAgentEntityTypesEntitiesBatchDeleteCall struct { + s *Service + parent string + googleclouddialogflowv2batchdeleteentitiesrequest *GoogleCloudDialogflowV2BatchDeleteEntitiesRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// BatchDelete: Deletes entities in the specified entity +// type. +// +// Operation +func (r *ProjectsAgentEntityTypesEntitiesService) BatchDelete(parent string, googleclouddialogflowv2batchdeleteentitiesrequest *GoogleCloudDialogflowV2BatchDeleteEntitiesRequest) *ProjectsAgentEntityTypesEntitiesBatchDeleteCall { + c := &ProjectsAgentEntityTypesEntitiesBatchDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.parent = parent + c.googleclouddialogflowv2batchdeleteentitiesrequest = googleclouddialogflowv2batchdeleteentitiesrequest + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsAgentEntityTypesEntitiesBatchDeleteCall) Fields(s ...googleapi.Field) *ProjectsAgentEntityTypesEntitiesBatchDeleteCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsAgentEntityTypesEntitiesBatchDeleteCall) Context(ctx context.Context) *ProjectsAgentEntityTypesEntitiesBatchDeleteCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsAgentEntityTypesEntitiesBatchDeleteCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsAgentEntityTypesEntitiesBatchDeleteCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowv2batchdeleteentitiesrequest) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v2/{+parent}/entities:batchDelete") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("POST", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "parent": c.parent, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "dialogflow.projects.agent.entityTypes.entities.batchDelete" call. +// Exactly one of *GoogleLongrunningOperation or error will be non-nil. +// Any non-2xx status code is an error. Response headers are in either +// *GoogleLongrunningOperation.ServerResponse.Header or (if a response +// was returned at all) in error.(*googleapi.Error).Header. Use +// googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *ProjectsAgentEntityTypesEntitiesBatchDeleteCall) Do(opts ...googleapi.CallOption) (*GoogleLongrunningOperation, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &GoogleLongrunningOperation{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Deletes entities in the specified entity type.\n\nOperation \u003cresponse: google.protobuf.Empty,\n metadata: google.protobuf.Struct\u003e", + // "flatPath": "v2/projects/{projectsId}/agent/entityTypes/{entityTypesId}/entities:batchDelete", + // "httpMethod": "POST", + // "id": "dialogflow.projects.agent.entityTypes.entities.batchDelete", + // "parameterOrder": [ + // "parent" + // ], + // "parameters": { + // "parent": { + // "description": "Required. The name of the entity type to delete entries for. Format:\n`projects/\u003cProject ID\u003e/agent/entityTypes/\u003cEntity Type ID\u003e`.", + // "location": "path", + // "pattern": "^projects/[^/]+/agent/entityTypes/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v2/{+parent}/entities:batchDelete", + // "request": { + // "$ref": "GoogleCloudDialogflowV2BatchDeleteEntitiesRequest" + // }, + // "response": { + // "$ref": "GoogleLongrunningOperation" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "dialogflow.projects.agent.entityTypes.entities.batchUpdate": + +type ProjectsAgentEntityTypesEntitiesBatchUpdateCall struct { + s *Service + parent string + googleclouddialogflowv2batchupdateentitiesrequest *GoogleCloudDialogflowV2BatchUpdateEntitiesRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// BatchUpdate: Updates entities in the specified entity type (replaces +// the existing +// collection of entries). +// +// Operation +func (r *ProjectsAgentEntityTypesEntitiesService) BatchUpdate(parent string, googleclouddialogflowv2batchupdateentitiesrequest *GoogleCloudDialogflowV2BatchUpdateEntitiesRequest) *ProjectsAgentEntityTypesEntitiesBatchUpdateCall { + c := &ProjectsAgentEntityTypesEntitiesBatchUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.parent = parent + c.googleclouddialogflowv2batchupdateentitiesrequest = googleclouddialogflowv2batchupdateentitiesrequest + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsAgentEntityTypesEntitiesBatchUpdateCall) Fields(s ...googleapi.Field) *ProjectsAgentEntityTypesEntitiesBatchUpdateCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsAgentEntityTypesEntitiesBatchUpdateCall) Context(ctx context.Context) *ProjectsAgentEntityTypesEntitiesBatchUpdateCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsAgentEntityTypesEntitiesBatchUpdateCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsAgentEntityTypesEntitiesBatchUpdateCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowv2batchupdateentitiesrequest) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v2/{+parent}/entities:batchUpdate") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("POST", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "parent": c.parent, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "dialogflow.projects.agent.entityTypes.entities.batchUpdate" call. +// Exactly one of *GoogleLongrunningOperation or error will be non-nil. +// Any non-2xx status code is an error. Response headers are in either +// *GoogleLongrunningOperation.ServerResponse.Header or (if a response +// was returned at all) in error.(*googleapi.Error).Header. Use +// googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *ProjectsAgentEntityTypesEntitiesBatchUpdateCall) Do(opts ...googleapi.CallOption) (*GoogleLongrunningOperation, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &GoogleLongrunningOperation{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Updates entities in the specified entity type (replaces the existing\ncollection of entries).\n\nOperation \u003cresponse: google.protobuf.Empty,\n metadata: google.protobuf.Struct\u003e", + // "flatPath": "v2/projects/{projectsId}/agent/entityTypes/{entityTypesId}/entities:batchUpdate", + // "httpMethod": "POST", + // "id": "dialogflow.projects.agent.entityTypes.entities.batchUpdate", + // "parameterOrder": [ + // "parent" + // ], + // "parameters": { + // "parent": { + // "description": "Required. The name of the entity type to update the entities in. Format:\n`projects/\u003cProject ID\u003e/agent/entityTypes/\u003cEntity Type ID\u003e`.", + // "location": "path", + // "pattern": "^projects/[^/]+/agent/entityTypes/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v2/{+parent}/entities:batchUpdate", + // "request": { + // "$ref": "GoogleCloudDialogflowV2BatchUpdateEntitiesRequest" + // }, + // "response": { + // "$ref": "GoogleLongrunningOperation" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "dialogflow.projects.agent.intents.batchDelete": + +type ProjectsAgentIntentsBatchDeleteCall struct { + s *Service + parent string + googleclouddialogflowv2batchdeleteintentsrequest *GoogleCloudDialogflowV2BatchDeleteIntentsRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// BatchDelete: Deletes intents in the specified agent. +// +// Operation +func (r *ProjectsAgentIntentsService) BatchDelete(parent string, googleclouddialogflowv2batchdeleteintentsrequest *GoogleCloudDialogflowV2BatchDeleteIntentsRequest) *ProjectsAgentIntentsBatchDeleteCall { + c := &ProjectsAgentIntentsBatchDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.parent = parent + c.googleclouddialogflowv2batchdeleteintentsrequest = googleclouddialogflowv2batchdeleteintentsrequest + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsAgentIntentsBatchDeleteCall) Fields(s ...googleapi.Field) *ProjectsAgentIntentsBatchDeleteCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsAgentIntentsBatchDeleteCall) Context(ctx context.Context) *ProjectsAgentIntentsBatchDeleteCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsAgentIntentsBatchDeleteCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsAgentIntentsBatchDeleteCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowv2batchdeleteintentsrequest) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v2/{+parent}/intents:batchDelete") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("POST", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "parent": c.parent, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "dialogflow.projects.agent.intents.batchDelete" call. +// Exactly one of *GoogleLongrunningOperation or error will be non-nil. +// Any non-2xx status code is an error. Response headers are in either +// *GoogleLongrunningOperation.ServerResponse.Header or (if a response +// was returned at all) in error.(*googleapi.Error).Header. Use +// googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *ProjectsAgentIntentsBatchDeleteCall) Do(opts ...googleapi.CallOption) (*GoogleLongrunningOperation, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &GoogleLongrunningOperation{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Deletes intents in the specified agent.\n\nOperation \u003cresponse: google.protobuf.Empty\u003e", + // "flatPath": "v2/projects/{projectsId}/agent/intents:batchDelete", + // "httpMethod": "POST", + // "id": "dialogflow.projects.agent.intents.batchDelete", + // "parameterOrder": [ + // "parent" + // ], + // "parameters": { + // "parent": { + // "description": "Required. The name of the agent to delete all entities types for. Format:\n`projects/\u003cProject ID\u003e/agent`.", + // "location": "path", + // "pattern": "^projects/[^/]+/agent$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v2/{+parent}/intents:batchDelete", + // "request": { + // "$ref": "GoogleCloudDialogflowV2BatchDeleteIntentsRequest" + // }, + // "response": { + // "$ref": "GoogleLongrunningOperation" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "dialogflow.projects.agent.intents.batchUpdate": + +type ProjectsAgentIntentsBatchUpdateCall struct { + s *Service + parent string + googleclouddialogflowv2batchupdateintentsrequest *GoogleCloudDialogflowV2BatchUpdateIntentsRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// BatchUpdate: Updates/Creates multiple intents in the specified +// agent. +// +// Operation +func (r *ProjectsAgentIntentsService) BatchUpdate(parent string, googleclouddialogflowv2batchupdateintentsrequest *GoogleCloudDialogflowV2BatchUpdateIntentsRequest) *ProjectsAgentIntentsBatchUpdateCall { + c := &ProjectsAgentIntentsBatchUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.parent = parent + c.googleclouddialogflowv2batchupdateintentsrequest = googleclouddialogflowv2batchupdateintentsrequest + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsAgentIntentsBatchUpdateCall) Fields(s ...googleapi.Field) *ProjectsAgentIntentsBatchUpdateCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsAgentIntentsBatchUpdateCall) Context(ctx context.Context) *ProjectsAgentIntentsBatchUpdateCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsAgentIntentsBatchUpdateCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsAgentIntentsBatchUpdateCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowv2batchupdateintentsrequest) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v2/{+parent}/intents:batchUpdate") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("POST", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "parent": c.parent, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "dialogflow.projects.agent.intents.batchUpdate" call. +// Exactly one of *GoogleLongrunningOperation or error will be non-nil. +// Any non-2xx status code is an error. Response headers are in either +// *GoogleLongrunningOperation.ServerResponse.Header or (if a response +// was returned at all) in error.(*googleapi.Error).Header. Use +// googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *ProjectsAgentIntentsBatchUpdateCall) Do(opts ...googleapi.CallOption) (*GoogleLongrunningOperation, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &GoogleLongrunningOperation{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Updates/Creates multiple intents in the specified agent.\n\nOperation \u003cresponse: BatchUpdateIntentsResponse\u003e", + // "flatPath": "v2/projects/{projectsId}/agent/intents:batchUpdate", + // "httpMethod": "POST", + // "id": "dialogflow.projects.agent.intents.batchUpdate", + // "parameterOrder": [ + // "parent" + // ], + // "parameters": { + // "parent": { + // "description": "Required. The name of the agent to update or create intents in.\nFormat: `projects/\u003cProject ID\u003e/agent`.", + // "location": "path", + // "pattern": "^projects/[^/]+/agent$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v2/{+parent}/intents:batchUpdate", + // "request": { + // "$ref": "GoogleCloudDialogflowV2BatchUpdateIntentsRequest" + // }, + // "response": { + // "$ref": "GoogleLongrunningOperation" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "dialogflow.projects.agent.intents.create": + +type ProjectsAgentIntentsCreateCall struct { + s *Service + parent string + googleclouddialogflowv2intent *GoogleCloudDialogflowV2Intent + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Create: Creates an intent in the specified agent. +func (r *ProjectsAgentIntentsService) Create(parent string, googleclouddialogflowv2intent *GoogleCloudDialogflowV2Intent) *ProjectsAgentIntentsCreateCall { + c := &ProjectsAgentIntentsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.parent = parent + c.googleclouddialogflowv2intent = googleclouddialogflowv2intent + return c +} + +// IntentView sets the optional parameter "intentView": The resource +// view to apply to the returned intent. +// +// Possible values: +// "INTENT_VIEW_UNSPECIFIED" +// "INTENT_VIEW_FULL" +func (c *ProjectsAgentIntentsCreateCall) IntentView(intentView string) *ProjectsAgentIntentsCreateCall { + c.urlParams_.Set("intentView", intentView) + return c +} + +// LanguageCode sets the optional parameter "languageCode": The language +// of training phrases, parameters and rich messages +// defined in `intent`. If not specified, the agent's default language +// is +// used. [More than a +// dozen +// languages](https://dialogflow.com/docs/reference/language) are +// supported. +// Note: languages must be enabled in the agent, before they can be +// used. +func (c *ProjectsAgentIntentsCreateCall) LanguageCode(languageCode string) *ProjectsAgentIntentsCreateCall { + c.urlParams_.Set("languageCode", languageCode) + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsAgentIntentsCreateCall) Fields(s ...googleapi.Field) *ProjectsAgentIntentsCreateCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsAgentIntentsCreateCall) Context(ctx context.Context) *ProjectsAgentIntentsCreateCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsAgentIntentsCreateCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsAgentIntentsCreateCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowv2intent) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v2/{+parent}/intents") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("POST", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "parent": c.parent, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "dialogflow.projects.agent.intents.create" call. +// Exactly one of *GoogleCloudDialogflowV2Intent or error will be +// non-nil. Any non-2xx status code is an error. Response headers are in +// either *GoogleCloudDialogflowV2Intent.ServerResponse.Header or (if a +// response was returned at all) in error.(*googleapi.Error).Header. Use +// googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *ProjectsAgentIntentsCreateCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowV2Intent, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &GoogleCloudDialogflowV2Intent{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Creates an intent in the specified agent.", + // "flatPath": "v2/projects/{projectsId}/agent/intents", + // "httpMethod": "POST", + // "id": "dialogflow.projects.agent.intents.create", + // "parameterOrder": [ + // "parent" + // ], + // "parameters": { + // "intentView": { + // "description": "Optional. The resource view to apply to the returned intent.", + // "enum": [ + // "INTENT_VIEW_UNSPECIFIED", + // "INTENT_VIEW_FULL" + // ], + // "location": "query", + // "type": "string" + // }, + // "languageCode": { + // "description": "Optional. The language of training phrases, parameters and rich messages\ndefined in `intent`. If not specified, the agent's default language is\nused. [More than a dozen\nlanguages](https://dialogflow.com/docs/reference/language) are supported.\nNote: languages must be enabled in the agent, before they can be used.", + // "location": "query", + // "type": "string" + // }, + // "parent": { + // "description": "Required. The agent to create a intent for.\nFormat: `projects/\u003cProject ID\u003e/agent`.", + // "location": "path", + // "pattern": "^projects/[^/]+/agent$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v2/{+parent}/intents", + // "request": { + // "$ref": "GoogleCloudDialogflowV2Intent" + // }, + // "response": { + // "$ref": "GoogleCloudDialogflowV2Intent" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "dialogflow.projects.agent.intents.delete": + +type ProjectsAgentIntentsDeleteCall struct { + s *Service + name string + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Delete: Deletes the specified intent. +func (r *ProjectsAgentIntentsService) Delete(name string) *ProjectsAgentIntentsDeleteCall { + c := &ProjectsAgentIntentsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsAgentIntentsDeleteCall) Fields(s ...googleapi.Field) *ProjectsAgentIntentsDeleteCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsAgentIntentsDeleteCall) Context(ctx context.Context) *ProjectsAgentIntentsDeleteCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsAgentIntentsDeleteCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsAgentIntentsDeleteCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v2/{+name}") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("DELETE", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "dialogflow.projects.agent.intents.delete" call. +// Exactly one of *GoogleProtobufEmpty or error will be non-nil. Any +// non-2xx status code is an error. Response headers are in either +// *GoogleProtobufEmpty.ServerResponse.Header or (if a response was +// returned at all) in error.(*googleapi.Error).Header. Use +// googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *ProjectsAgentIntentsDeleteCall) Do(opts ...googleapi.CallOption) (*GoogleProtobufEmpty, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &GoogleProtobufEmpty{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Deletes the specified intent.", + // "flatPath": "v2/projects/{projectsId}/agent/intents/{intentsId}", + // "httpMethod": "DELETE", + // "id": "dialogflow.projects.agent.intents.delete", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "Required. The name of the intent to delete.\nFormat: `projects/\u003cProject ID\u003e/agent/intents/\u003cIntent ID\u003e`.", + // "location": "path", + // "pattern": "^projects/[^/]+/agent/intents/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v2/{+name}", + // "response": { + // "$ref": "GoogleProtobufEmpty" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "dialogflow.projects.agent.intents.get": + +type ProjectsAgentIntentsGetCall struct { + s *Service + name string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// Get: Retrieves the specified intent. +func (r *ProjectsAgentIntentsService) Get(name string) *ProjectsAgentIntentsGetCall { + c := &ProjectsAgentIntentsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + return c +} + +// IntentView sets the optional parameter "intentView": The resource +// view to apply to the returned intent. +// +// Possible values: +// "INTENT_VIEW_UNSPECIFIED" +// "INTENT_VIEW_FULL" +func (c *ProjectsAgentIntentsGetCall) IntentView(intentView string) *ProjectsAgentIntentsGetCall { + c.urlParams_.Set("intentView", intentView) + return c +} + +// LanguageCode sets the optional parameter "languageCode": The language +// to retrieve training phrases, parameters and rich +// messages for. If not specified, the agent's default language is +// used. +// [More than a +// dozen +// languages](https://dialogflow.com/docs/reference/language) are +// supported. +// Note: languages must be enabled in the agent, before they can be +// used. +func (c *ProjectsAgentIntentsGetCall) LanguageCode(languageCode string) *ProjectsAgentIntentsGetCall { + c.urlParams_.Set("languageCode", languageCode) + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsAgentIntentsGetCall) Fields(s ...googleapi.Field) *ProjectsAgentIntentsGetCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// IfNoneMatch sets the optional parameter which makes the operation +// fail if the object's ETag matches the given value. This is useful for +// getting updates only after the object has changed since the last +// request. Use googleapi.IsNotModified to check whether the response +// error from Do is the result of In-None-Match. +func (c *ProjectsAgentIntentsGetCall) IfNoneMatch(entityTag string) *ProjectsAgentIntentsGetCall { + c.ifNoneMatch_ = entityTag + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsAgentIntentsGetCall) Context(ctx context.Context) *ProjectsAgentIntentsGetCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsAgentIntentsGetCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsAgentIntentsGetCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + if c.ifNoneMatch_ != "" { + reqHeaders.Set("If-None-Match", c.ifNoneMatch_) + } + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v2/{+name}") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("GET", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "dialogflow.projects.agent.intents.get" call. +// Exactly one of *GoogleCloudDialogflowV2Intent or error will be +// non-nil. Any non-2xx status code is an error. Response headers are in +// either *GoogleCloudDialogflowV2Intent.ServerResponse.Header or (if a +// response was returned at all) in error.(*googleapi.Error).Header. Use +// googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *ProjectsAgentIntentsGetCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowV2Intent, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &GoogleCloudDialogflowV2Intent{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Retrieves the specified intent.", + // "flatPath": "v2/projects/{projectsId}/agent/intents/{intentsId}", + // "httpMethod": "GET", + // "id": "dialogflow.projects.agent.intents.get", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "intentView": { + // "description": "Optional. The resource view to apply to the returned intent.", + // "enum": [ + // "INTENT_VIEW_UNSPECIFIED", + // "INTENT_VIEW_FULL" + // ], + // "location": "query", + // "type": "string" + // }, + // "languageCode": { + // "description": "Optional. The language to retrieve training phrases, parameters and rich\nmessages for. If not specified, the agent's default language is used.\n[More than a dozen\nlanguages](https://dialogflow.com/docs/reference/language) are supported.\nNote: languages must be enabled in the agent, before they can be used.", + // "location": "query", + // "type": "string" + // }, + // "name": { + // "description": "Required. The name of the intent.\nFormat: `projects/\u003cProject ID\u003e/agent/intents/\u003cIntent ID\u003e`.", + // "location": "path", + // "pattern": "^projects/[^/]+/agent/intents/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v2/{+name}", + // "response": { + // "$ref": "GoogleCloudDialogflowV2Intent" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "dialogflow.projects.agent.intents.list": + +type ProjectsAgentIntentsListCall struct { + s *Service + parent string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// List: Returns the list of all intents in the specified agent. +func (r *ProjectsAgentIntentsService) List(parent string) *ProjectsAgentIntentsListCall { + c := &ProjectsAgentIntentsListCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.parent = parent + return c +} + +// IntentView sets the optional parameter "intentView": The resource +// view to apply to the returned intent. +// +// Possible values: +// "INTENT_VIEW_UNSPECIFIED" +// "INTENT_VIEW_FULL" +func (c *ProjectsAgentIntentsListCall) IntentView(intentView string) *ProjectsAgentIntentsListCall { + c.urlParams_.Set("intentView", intentView) + return c +} + +// LanguageCode sets the optional parameter "languageCode": The language +// to list training phrases, parameters and rich +// messages for. If not specified, the agent's default language is +// used. +// [More than a +// dozen +// languages](https://dialogflow.com/docs/reference/language) are +// supported. +// Note: languages must be enabled in the agent before they can be used. +func (c *ProjectsAgentIntentsListCall) LanguageCode(languageCode string) *ProjectsAgentIntentsListCall { + c.urlParams_.Set("languageCode", languageCode) + return c +} + +// PageSize sets the optional parameter "pageSize": The maximum number +// of items to return in a single page. By +// default 100 and at most 1000. +func (c *ProjectsAgentIntentsListCall) PageSize(pageSize int64) *ProjectsAgentIntentsListCall { + c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) + return c +} + +// PageToken sets the optional parameter "pageToken": The +// next_page_token value returned from a previous list request. +func (c *ProjectsAgentIntentsListCall) PageToken(pageToken string) *ProjectsAgentIntentsListCall { + c.urlParams_.Set("pageToken", pageToken) + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsAgentIntentsListCall) Fields(s ...googleapi.Field) *ProjectsAgentIntentsListCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// IfNoneMatch sets the optional parameter which makes the operation +// fail if the object's ETag matches the given value. This is useful for +// getting updates only after the object has changed since the last +// request. Use googleapi.IsNotModified to check whether the response +// error from Do is the result of In-None-Match. +func (c *ProjectsAgentIntentsListCall) IfNoneMatch(entityTag string) *ProjectsAgentIntentsListCall { + c.ifNoneMatch_ = entityTag + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsAgentIntentsListCall) Context(ctx context.Context) *ProjectsAgentIntentsListCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsAgentIntentsListCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsAgentIntentsListCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + if c.ifNoneMatch_ != "" { + reqHeaders.Set("If-None-Match", c.ifNoneMatch_) + } + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v2/{+parent}/intents") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("GET", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "parent": c.parent, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "dialogflow.projects.agent.intents.list" call. +// Exactly one of *GoogleCloudDialogflowV2ListIntentsResponse or error +// will be non-nil. Any non-2xx status code is an error. Response +// headers are in either +// *GoogleCloudDialogflowV2ListIntentsResponse.ServerResponse.Header or +// (if a response was returned at all) in +// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check +// whether the returned error was because http.StatusNotModified was +// returned. +func (c *ProjectsAgentIntentsListCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowV2ListIntentsResponse, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &GoogleCloudDialogflowV2ListIntentsResponse{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Returns the list of all intents in the specified agent.", + // "flatPath": "v2/projects/{projectsId}/agent/intents", + // "httpMethod": "GET", + // "id": "dialogflow.projects.agent.intents.list", + // "parameterOrder": [ + // "parent" + // ], + // "parameters": { + // "intentView": { + // "description": "Optional. The resource view to apply to the returned intent.", + // "enum": [ + // "INTENT_VIEW_UNSPECIFIED", + // "INTENT_VIEW_FULL" + // ], + // "location": "query", + // "type": "string" + // }, + // "languageCode": { + // "description": "Optional. The language to list training phrases, parameters and rich\nmessages for. If not specified, the agent's default language is used.\n[More than a dozen\nlanguages](https://dialogflow.com/docs/reference/language) are supported.\nNote: languages must be enabled in the agent before they can be used.", + // "location": "query", + // "type": "string" + // }, + // "pageSize": { + // "description": "Optional. The maximum number of items to return in a single page. By\ndefault 100 and at most 1000.", + // "format": "int32", + // "location": "query", + // "type": "integer" + // }, + // "pageToken": { + // "description": "Optional. The next_page_token value returned from a previous list request.", + // "location": "query", + // "type": "string" + // }, + // "parent": { + // "description": "Required. The agent to list all intents from.\nFormat: `projects/\u003cProject ID\u003e/agent`.", + // "location": "path", + // "pattern": "^projects/[^/]+/agent$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v2/{+parent}/intents", + // "response": { + // "$ref": "GoogleCloudDialogflowV2ListIntentsResponse" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// Pages invokes f for each page of results. +// A non-nil error returned from f will halt the iteration. +// The provided context supersedes any context provided to the Context method. +func (c *ProjectsAgentIntentsListCall) Pages(ctx context.Context, f func(*GoogleCloudDialogflowV2ListIntentsResponse) error) error { + c.ctx_ = ctx + defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point + for { + x, err := c.Do() + if err != nil { + return err + } + if err := f(x); err != nil { + return err + } + if x.NextPageToken == "" { + return nil + } + c.PageToken(x.NextPageToken) + } +} + +// method id "dialogflow.projects.agent.intents.patch": + +type ProjectsAgentIntentsPatchCall struct { + s *Service + nameid string + googleclouddialogflowv2intent *GoogleCloudDialogflowV2Intent + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Patch: Updates the specified intent. +func (r *ProjectsAgentIntentsService) Patch(nameid string, googleclouddialogflowv2intent *GoogleCloudDialogflowV2Intent) *ProjectsAgentIntentsPatchCall { + c := &ProjectsAgentIntentsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.nameid = nameid + c.googleclouddialogflowv2intent = googleclouddialogflowv2intent + return c +} + +// IntentView sets the optional parameter "intentView": The resource +// view to apply to the returned intent. +// +// Possible values: +// "INTENT_VIEW_UNSPECIFIED" +// "INTENT_VIEW_FULL" +func (c *ProjectsAgentIntentsPatchCall) IntentView(intentView string) *ProjectsAgentIntentsPatchCall { + c.urlParams_.Set("intentView", intentView) + return c +} + +// LanguageCode sets the optional parameter "languageCode": The language +// of training phrases, parameters and rich messages +// defined in `intent`. If not specified, the agent's default language +// is +// used. [More than a +// dozen +// languages](https://dialogflow.com/docs/reference/language) are +// supported. +// Note: languages must be enabled in the agent, before they can be +// used. +func (c *ProjectsAgentIntentsPatchCall) LanguageCode(languageCode string) *ProjectsAgentIntentsPatchCall { + c.urlParams_.Set("languageCode", languageCode) + return c +} + +// UpdateMask sets the optional parameter "updateMask": The mask to +// control which fields get updated. +func (c *ProjectsAgentIntentsPatchCall) UpdateMask(updateMask string) *ProjectsAgentIntentsPatchCall { + c.urlParams_.Set("updateMask", updateMask) + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsAgentIntentsPatchCall) Fields(s ...googleapi.Field) *ProjectsAgentIntentsPatchCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsAgentIntentsPatchCall) Context(ctx context.Context) *ProjectsAgentIntentsPatchCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsAgentIntentsPatchCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsAgentIntentsPatchCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowv2intent) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v2/{+name}") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("PATCH", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.nameid, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "dialogflow.projects.agent.intents.patch" call. +// Exactly one of *GoogleCloudDialogflowV2Intent or error will be +// non-nil. Any non-2xx status code is an error. Response headers are in +// either *GoogleCloudDialogflowV2Intent.ServerResponse.Header or (if a +// response was returned at all) in error.(*googleapi.Error).Header. Use +// googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *ProjectsAgentIntentsPatchCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowV2Intent, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &GoogleCloudDialogflowV2Intent{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Updates the specified intent.", + // "flatPath": "v2/projects/{projectsId}/agent/intents/{intentsId}", + // "httpMethod": "PATCH", + // "id": "dialogflow.projects.agent.intents.patch", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "intentView": { + // "description": "Optional. The resource view to apply to the returned intent.", + // "enum": [ + // "INTENT_VIEW_UNSPECIFIED", + // "INTENT_VIEW_FULL" + // ], + // "location": "query", + // "type": "string" + // }, + // "languageCode": { + // "description": "Optional. The language of training phrases, parameters and rich messages\ndefined in `intent`. If not specified, the agent's default language is\nused. [More than a dozen\nlanguages](https://dialogflow.com/docs/reference/language) are supported.\nNote: languages must be enabled in the agent, before they can be used.", + // "location": "query", + // "type": "string" + // }, + // "name": { + // "description": "Required for all methods except `create` (`create` populates the name\nautomatically.\nThe unique identifier of this intent.\nFormat: `projects/\u003cProject ID\u003e/agent/intents/\u003cIntent ID\u003e`.", + // "location": "path", + // "pattern": "^projects/[^/]+/agent/intents/[^/]+$", + // "required": true, + // "type": "string" + // }, + // "updateMask": { + // "description": "Optional. The mask to control which fields get updated.", + // "format": "google-fieldmask", + // "location": "query", + // "type": "string" + // } + // }, + // "path": "v2/{+name}", + // "request": { + // "$ref": "GoogleCloudDialogflowV2Intent" + // }, + // "response": { + // "$ref": "GoogleCloudDialogflowV2Intent" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "dialogflow.projects.agent.sessions.deleteContexts": + +type ProjectsAgentSessionsDeleteContextsCall struct { + s *Service + parent string + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// DeleteContexts: Deletes all active contexts in the specified session. +func (r *ProjectsAgentSessionsService) DeleteContexts(parent string) *ProjectsAgentSessionsDeleteContextsCall { + c := &ProjectsAgentSessionsDeleteContextsCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.parent = parent + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsAgentSessionsDeleteContextsCall) Fields(s ...googleapi.Field) *ProjectsAgentSessionsDeleteContextsCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsAgentSessionsDeleteContextsCall) Context(ctx context.Context) *ProjectsAgentSessionsDeleteContextsCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsAgentSessionsDeleteContextsCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsAgentSessionsDeleteContextsCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v2/{+parent}/contexts") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("DELETE", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "parent": c.parent, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "dialogflow.projects.agent.sessions.deleteContexts" call. +// Exactly one of *GoogleProtobufEmpty or error will be non-nil. Any +// non-2xx status code is an error. Response headers are in either +// *GoogleProtobufEmpty.ServerResponse.Header or (if a response was +// returned at all) in error.(*googleapi.Error).Header. Use +// googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *ProjectsAgentSessionsDeleteContextsCall) Do(opts ...googleapi.CallOption) (*GoogleProtobufEmpty, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &GoogleProtobufEmpty{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Deletes all active contexts in the specified session.", + // "flatPath": "v2/projects/{projectsId}/agent/sessions/{sessionsId}/contexts", + // "httpMethod": "DELETE", + // "id": "dialogflow.projects.agent.sessions.deleteContexts", + // "parameterOrder": [ + // "parent" + // ], + // "parameters": { + // "parent": { + // "description": "Required. The name of the session to delete all contexts from. Format:\n`projects/\u003cProject ID\u003e/agent/sessions/\u003cSession ID\u003e`.", + // "location": "path", + // "pattern": "^projects/[^/]+/agent/sessions/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v2/{+parent}/contexts", + // "response": { + // "$ref": "GoogleProtobufEmpty" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "dialogflow.projects.agent.sessions.detectIntent": + +type ProjectsAgentSessionsDetectIntentCall struct { + s *Service + sessionid string + googleclouddialogflowv2detectintentrequest *GoogleCloudDialogflowV2DetectIntentRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// DetectIntent: Processes a natural language query and returns +// structured, actionable data +// as a result. This method is not idempotent, because it may cause +// contexts +// and session entity types to be updated, which in turn might +// affect +// results of future queries. +func (r *ProjectsAgentSessionsService) DetectIntent(sessionid string, googleclouddialogflowv2detectintentrequest *GoogleCloudDialogflowV2DetectIntentRequest) *ProjectsAgentSessionsDetectIntentCall { + c := &ProjectsAgentSessionsDetectIntentCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.sessionid = sessionid + c.googleclouddialogflowv2detectintentrequest = googleclouddialogflowv2detectintentrequest + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsAgentSessionsDetectIntentCall) Fields(s ...googleapi.Field) *ProjectsAgentSessionsDetectIntentCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsAgentSessionsDetectIntentCall) Context(ctx context.Context) *ProjectsAgentSessionsDetectIntentCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsAgentSessionsDetectIntentCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsAgentSessionsDetectIntentCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowv2detectintentrequest) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v2/{+session}:detectIntent") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("POST", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "session": c.sessionid, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "dialogflow.projects.agent.sessions.detectIntent" call. +// Exactly one of *GoogleCloudDialogflowV2DetectIntentResponse or error +// will be non-nil. Any non-2xx status code is an error. Response +// headers are in either +// *GoogleCloudDialogflowV2DetectIntentResponse.ServerResponse.Header or +// (if a response was returned at all) in +// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check +// whether the returned error was because http.StatusNotModified was +// returned. +func (c *ProjectsAgentSessionsDetectIntentCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowV2DetectIntentResponse, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &GoogleCloudDialogflowV2DetectIntentResponse{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Processes a natural language query and returns structured, actionable data\nas a result. This method is not idempotent, because it may cause contexts\nand session entity types to be updated, which in turn might affect\nresults of future queries.", + // "flatPath": "v2/projects/{projectsId}/agent/sessions/{sessionsId}:detectIntent", + // "httpMethod": "POST", + // "id": "dialogflow.projects.agent.sessions.detectIntent", + // "parameterOrder": [ + // "session" + // ], + // "parameters": { + // "session": { + // "description": "Required. The name of the session this query is sent to. Format:\n`projects/\u003cProject ID\u003e/agent/sessions/\u003cSession ID\u003e`. It's up to the API\ncaller to choose an appropriate session ID. It can be a random number or\nsome type of user identifier (preferably hashed). The length of the session\nID must not exceed 36 bytes.", + // "location": "path", + // "pattern": "^projects/[^/]+/agent/sessions/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v2/{+session}:detectIntent", + // "request": { + // "$ref": "GoogleCloudDialogflowV2DetectIntentRequest" + // }, + // "response": { + // "$ref": "GoogleCloudDialogflowV2DetectIntentResponse" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "dialogflow.projects.agent.sessions.contexts.create": + +type ProjectsAgentSessionsContextsCreateCall struct { + s *Service + parent string + googleclouddialogflowv2context *GoogleCloudDialogflowV2Context + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Create: Creates a context. +func (r *ProjectsAgentSessionsContextsService) Create(parent string, googleclouddialogflowv2context *GoogleCloudDialogflowV2Context) *ProjectsAgentSessionsContextsCreateCall { + c := &ProjectsAgentSessionsContextsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.parent = parent + c.googleclouddialogflowv2context = googleclouddialogflowv2context + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsAgentSessionsContextsCreateCall) Fields(s ...googleapi.Field) *ProjectsAgentSessionsContextsCreateCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsAgentSessionsContextsCreateCall) Context(ctx context.Context) *ProjectsAgentSessionsContextsCreateCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsAgentSessionsContextsCreateCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsAgentSessionsContextsCreateCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowv2context) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v2/{+parent}/contexts") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("POST", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "parent": c.parent, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "dialogflow.projects.agent.sessions.contexts.create" call. +// Exactly one of *GoogleCloudDialogflowV2Context or error will be +// non-nil. Any non-2xx status code is an error. Response headers are in +// either *GoogleCloudDialogflowV2Context.ServerResponse.Header or (if a +// response was returned at all) in error.(*googleapi.Error).Header. Use +// googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *ProjectsAgentSessionsContextsCreateCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowV2Context, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &GoogleCloudDialogflowV2Context{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Creates a context.", + // "flatPath": "v2/projects/{projectsId}/agent/sessions/{sessionsId}/contexts", + // "httpMethod": "POST", + // "id": "dialogflow.projects.agent.sessions.contexts.create", + // "parameterOrder": [ + // "parent" + // ], + // "parameters": { + // "parent": { + // "description": "Required. The session to create a context for.\nFormat: `projects/\u003cProject ID\u003e/agent/sessions/\u003cSession ID\u003e`.", + // "location": "path", + // "pattern": "^projects/[^/]+/agent/sessions/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v2/{+parent}/contexts", + // "request": { + // "$ref": "GoogleCloudDialogflowV2Context" + // }, + // "response": { + // "$ref": "GoogleCloudDialogflowV2Context" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "dialogflow.projects.agent.sessions.contexts.delete": + +type ProjectsAgentSessionsContextsDeleteCall struct { + s *Service + name string + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Delete: Deletes the specified context. +func (r *ProjectsAgentSessionsContextsService) Delete(name string) *ProjectsAgentSessionsContextsDeleteCall { + c := &ProjectsAgentSessionsContextsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsAgentSessionsContextsDeleteCall) Fields(s ...googleapi.Field) *ProjectsAgentSessionsContextsDeleteCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsAgentSessionsContextsDeleteCall) Context(ctx context.Context) *ProjectsAgentSessionsContextsDeleteCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsAgentSessionsContextsDeleteCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsAgentSessionsContextsDeleteCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v2/{+name}") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("DELETE", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "dialogflow.projects.agent.sessions.contexts.delete" call. +// Exactly one of *GoogleProtobufEmpty or error will be non-nil. Any +// non-2xx status code is an error. Response headers are in either +// *GoogleProtobufEmpty.ServerResponse.Header or (if a response was +// returned at all) in error.(*googleapi.Error).Header. Use +// googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *ProjectsAgentSessionsContextsDeleteCall) Do(opts ...googleapi.CallOption) (*GoogleProtobufEmpty, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &GoogleProtobufEmpty{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Deletes the specified context.", + // "flatPath": "v2/projects/{projectsId}/agent/sessions/{sessionsId}/contexts/{contextsId}", + // "httpMethod": "DELETE", + // "id": "dialogflow.projects.agent.sessions.contexts.delete", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "Required. The name of the context to delete. Format:\n`projects/\u003cProject ID\u003e/agent/sessions/\u003cSession ID\u003e/contexts/\u003cContext ID\u003e`.", + // "location": "path", + // "pattern": "^projects/[^/]+/agent/sessions/[^/]+/contexts/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v2/{+name}", + // "response": { + // "$ref": "GoogleProtobufEmpty" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "dialogflow.projects.agent.sessions.contexts.get": + +type ProjectsAgentSessionsContextsGetCall struct { + s *Service + name string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// Get: Retrieves the specified context. +func (r *ProjectsAgentSessionsContextsService) Get(name string) *ProjectsAgentSessionsContextsGetCall { + c := &ProjectsAgentSessionsContextsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsAgentSessionsContextsGetCall) Fields(s ...googleapi.Field) *ProjectsAgentSessionsContextsGetCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// IfNoneMatch sets the optional parameter which makes the operation +// fail if the object's ETag matches the given value. This is useful for +// getting updates only after the object has changed since the last +// request. Use googleapi.IsNotModified to check whether the response +// error from Do is the result of In-None-Match. +func (c *ProjectsAgentSessionsContextsGetCall) IfNoneMatch(entityTag string) *ProjectsAgentSessionsContextsGetCall { + c.ifNoneMatch_ = entityTag + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsAgentSessionsContextsGetCall) Context(ctx context.Context) *ProjectsAgentSessionsContextsGetCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsAgentSessionsContextsGetCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsAgentSessionsContextsGetCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + if c.ifNoneMatch_ != "" { + reqHeaders.Set("If-None-Match", c.ifNoneMatch_) + } + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v2/{+name}") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("GET", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "dialogflow.projects.agent.sessions.contexts.get" call. +// Exactly one of *GoogleCloudDialogflowV2Context or error will be +// non-nil. Any non-2xx status code is an error. Response headers are in +// either *GoogleCloudDialogflowV2Context.ServerResponse.Header or (if a +// response was returned at all) in error.(*googleapi.Error).Header. Use +// googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *ProjectsAgentSessionsContextsGetCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowV2Context, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &GoogleCloudDialogflowV2Context{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Retrieves the specified context.", + // "flatPath": "v2/projects/{projectsId}/agent/sessions/{sessionsId}/contexts/{contextsId}", + // "httpMethod": "GET", + // "id": "dialogflow.projects.agent.sessions.contexts.get", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "Required. The name of the context. Format:\n`projects/\u003cProject ID\u003e/agent/sessions/\u003cSession ID\u003e/contexts/\u003cContext ID\u003e`.", + // "location": "path", + // "pattern": "^projects/[^/]+/agent/sessions/[^/]+/contexts/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v2/{+name}", + // "response": { + // "$ref": "GoogleCloudDialogflowV2Context" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "dialogflow.projects.agent.sessions.contexts.list": + +type ProjectsAgentSessionsContextsListCall struct { + s *Service + parent string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// List: Returns the list of all contexts in the specified session. +func (r *ProjectsAgentSessionsContextsService) List(parent string) *ProjectsAgentSessionsContextsListCall { + c := &ProjectsAgentSessionsContextsListCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.parent = parent + return c +} + +// PageSize sets the optional parameter "pageSize": The maximum number +// of items to return in a single page. By +// default 100 and at most 1000. +func (c *ProjectsAgentSessionsContextsListCall) PageSize(pageSize int64) *ProjectsAgentSessionsContextsListCall { + c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) + return c +} + +// PageToken sets the optional parameter "pageToken": The +// next_page_token value returned from a previous list request. +func (c *ProjectsAgentSessionsContextsListCall) PageToken(pageToken string) *ProjectsAgentSessionsContextsListCall { + c.urlParams_.Set("pageToken", pageToken) + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsAgentSessionsContextsListCall) Fields(s ...googleapi.Field) *ProjectsAgentSessionsContextsListCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// IfNoneMatch sets the optional parameter which makes the operation +// fail if the object's ETag matches the given value. This is useful for +// getting updates only after the object has changed since the last +// request. Use googleapi.IsNotModified to check whether the response +// error from Do is the result of In-None-Match. +func (c *ProjectsAgentSessionsContextsListCall) IfNoneMatch(entityTag string) *ProjectsAgentSessionsContextsListCall { + c.ifNoneMatch_ = entityTag + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsAgentSessionsContextsListCall) Context(ctx context.Context) *ProjectsAgentSessionsContextsListCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsAgentSessionsContextsListCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsAgentSessionsContextsListCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + if c.ifNoneMatch_ != "" { + reqHeaders.Set("If-None-Match", c.ifNoneMatch_) + } + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v2/{+parent}/contexts") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("GET", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "parent": c.parent, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "dialogflow.projects.agent.sessions.contexts.list" call. +// Exactly one of *GoogleCloudDialogflowV2ListContextsResponse or error +// will be non-nil. Any non-2xx status code is an error. Response +// headers are in either +// *GoogleCloudDialogflowV2ListContextsResponse.ServerResponse.Header or +// (if a response was returned at all) in +// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check +// whether the returned error was because http.StatusNotModified was +// returned. +func (c *ProjectsAgentSessionsContextsListCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowV2ListContextsResponse, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &GoogleCloudDialogflowV2ListContextsResponse{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Returns the list of all contexts in the specified session.", + // "flatPath": "v2/projects/{projectsId}/agent/sessions/{sessionsId}/contexts", + // "httpMethod": "GET", + // "id": "dialogflow.projects.agent.sessions.contexts.list", + // "parameterOrder": [ + // "parent" + // ], + // "parameters": { + // "pageSize": { + // "description": "Optional. The maximum number of items to return in a single page. By\ndefault 100 and at most 1000.", + // "format": "int32", + // "location": "query", + // "type": "integer" + // }, + // "pageToken": { + // "description": "Optional. The next_page_token value returned from a previous list request.", + // "location": "query", + // "type": "string" + // }, + // "parent": { + // "description": "Required. The session to list all contexts from.\nFormat: `projects/\u003cProject ID\u003e/agent/sessions/\u003cSession ID\u003e`.", + // "location": "path", + // "pattern": "^projects/[^/]+/agent/sessions/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v2/{+parent}/contexts", + // "response": { + // "$ref": "GoogleCloudDialogflowV2ListContextsResponse" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// Pages invokes f for each page of results. +// A non-nil error returned from f will halt the iteration. +// The provided context supersedes any context provided to the Context method. +func (c *ProjectsAgentSessionsContextsListCall) Pages(ctx context.Context, f func(*GoogleCloudDialogflowV2ListContextsResponse) error) error { + c.ctx_ = ctx + defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point + for { + x, err := c.Do() + if err != nil { + return err + } + if err := f(x); err != nil { + return err + } + if x.NextPageToken == "" { + return nil + } + c.PageToken(x.NextPageToken) + } +} + +// method id "dialogflow.projects.agent.sessions.contexts.patch": + +type ProjectsAgentSessionsContextsPatchCall struct { + s *Service + nameid string + googleclouddialogflowv2context *GoogleCloudDialogflowV2Context + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Patch: Updates the specified context. +func (r *ProjectsAgentSessionsContextsService) Patch(nameid string, googleclouddialogflowv2context *GoogleCloudDialogflowV2Context) *ProjectsAgentSessionsContextsPatchCall { + c := &ProjectsAgentSessionsContextsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.nameid = nameid + c.googleclouddialogflowv2context = googleclouddialogflowv2context + return c +} + +// UpdateMask sets the optional parameter "updateMask": The mask to +// control which fields get updated. +func (c *ProjectsAgentSessionsContextsPatchCall) UpdateMask(updateMask string) *ProjectsAgentSessionsContextsPatchCall { + c.urlParams_.Set("updateMask", updateMask) + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsAgentSessionsContextsPatchCall) Fields(s ...googleapi.Field) *ProjectsAgentSessionsContextsPatchCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsAgentSessionsContextsPatchCall) Context(ctx context.Context) *ProjectsAgentSessionsContextsPatchCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsAgentSessionsContextsPatchCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsAgentSessionsContextsPatchCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowv2context) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v2/{+name}") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("PATCH", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.nameid, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "dialogflow.projects.agent.sessions.contexts.patch" call. +// Exactly one of *GoogleCloudDialogflowV2Context or error will be +// non-nil. Any non-2xx status code is an error. Response headers are in +// either *GoogleCloudDialogflowV2Context.ServerResponse.Header or (if a +// response was returned at all) in error.(*googleapi.Error).Header. Use +// googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *ProjectsAgentSessionsContextsPatchCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowV2Context, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &GoogleCloudDialogflowV2Context{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Updates the specified context.", + // "flatPath": "v2/projects/{projectsId}/agent/sessions/{sessionsId}/contexts/{contextsId}", + // "httpMethod": "PATCH", + // "id": "dialogflow.projects.agent.sessions.contexts.patch", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "Required. The unique identifier of the context. Format:\n`projects/\u003cProject ID\u003e/agent/sessions/\u003cSession ID\u003e/contexts/\u003cContext ID\u003e`.", + // "location": "path", + // "pattern": "^projects/[^/]+/agent/sessions/[^/]+/contexts/[^/]+$", + // "required": true, + // "type": "string" + // }, + // "updateMask": { + // "description": "Optional. The mask to control which fields get updated.", + // "format": "google-fieldmask", + // "location": "query", + // "type": "string" + // } + // }, + // "path": "v2/{+name}", + // "request": { + // "$ref": "GoogleCloudDialogflowV2Context" + // }, + // "response": { + // "$ref": "GoogleCloudDialogflowV2Context" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "dialogflow.projects.agent.sessions.entityTypes.create": + +type ProjectsAgentSessionsEntityTypesCreateCall struct { + s *Service + parent string + googleclouddialogflowv2sessionentitytype *GoogleCloudDialogflowV2SessionEntityType + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Create: Creates a session entity type. +func (r *ProjectsAgentSessionsEntityTypesService) Create(parent string, googleclouddialogflowv2sessionentitytype *GoogleCloudDialogflowV2SessionEntityType) *ProjectsAgentSessionsEntityTypesCreateCall { + c := &ProjectsAgentSessionsEntityTypesCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.parent = parent + c.googleclouddialogflowv2sessionentitytype = googleclouddialogflowv2sessionentitytype + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsAgentSessionsEntityTypesCreateCall) Fields(s ...googleapi.Field) *ProjectsAgentSessionsEntityTypesCreateCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsAgentSessionsEntityTypesCreateCall) Context(ctx context.Context) *ProjectsAgentSessionsEntityTypesCreateCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsAgentSessionsEntityTypesCreateCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsAgentSessionsEntityTypesCreateCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowv2sessionentitytype) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v2/{+parent}/entityTypes") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("POST", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "parent": c.parent, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "dialogflow.projects.agent.sessions.entityTypes.create" call. +// Exactly one of *GoogleCloudDialogflowV2SessionEntityType or error +// will be non-nil. Any non-2xx status code is an error. Response +// headers are in either +// *GoogleCloudDialogflowV2SessionEntityType.ServerResponse.Header or +// (if a response was returned at all) in +// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check +// whether the returned error was because http.StatusNotModified was +// returned. +func (c *ProjectsAgentSessionsEntityTypesCreateCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowV2SessionEntityType, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &GoogleCloudDialogflowV2SessionEntityType{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Creates a session entity type.", + // "flatPath": "v2/projects/{projectsId}/agent/sessions/{sessionsId}/entityTypes", + // "httpMethod": "POST", + // "id": "dialogflow.projects.agent.sessions.entityTypes.create", + // "parameterOrder": [ + // "parent" + // ], + // "parameters": { + // "parent": { + // "description": "Required. The session to create a session entity type for.\nFormat: `projects/\u003cProject ID\u003e/agent/sessions/\u003cSession ID\u003e`.", + // "location": "path", + // "pattern": "^projects/[^/]+/agent/sessions/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v2/{+parent}/entityTypes", + // "request": { + // "$ref": "GoogleCloudDialogflowV2SessionEntityType" + // }, + // "response": { + // "$ref": "GoogleCloudDialogflowV2SessionEntityType" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "dialogflow.projects.agent.sessions.entityTypes.delete": + +type ProjectsAgentSessionsEntityTypesDeleteCall struct { + s *Service + name string + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Delete: Deletes the specified session entity type. +func (r *ProjectsAgentSessionsEntityTypesService) Delete(name string) *ProjectsAgentSessionsEntityTypesDeleteCall { + c := &ProjectsAgentSessionsEntityTypesDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsAgentSessionsEntityTypesDeleteCall) Fields(s ...googleapi.Field) *ProjectsAgentSessionsEntityTypesDeleteCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsAgentSessionsEntityTypesDeleteCall) Context(ctx context.Context) *ProjectsAgentSessionsEntityTypesDeleteCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsAgentSessionsEntityTypesDeleteCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsAgentSessionsEntityTypesDeleteCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v2/{+name}") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("DELETE", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "dialogflow.projects.agent.sessions.entityTypes.delete" call. +// Exactly one of *GoogleProtobufEmpty or error will be non-nil. Any +// non-2xx status code is an error. Response headers are in either +// *GoogleProtobufEmpty.ServerResponse.Header or (if a response was +// returned at all) in error.(*googleapi.Error).Header. Use +// googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *ProjectsAgentSessionsEntityTypesDeleteCall) Do(opts ...googleapi.CallOption) (*GoogleProtobufEmpty, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &GoogleProtobufEmpty{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Deletes the specified session entity type.", + // "flatPath": "v2/projects/{projectsId}/agent/sessions/{sessionsId}/entityTypes/{entityTypesId}", + // "httpMethod": "DELETE", + // "id": "dialogflow.projects.agent.sessions.entityTypes.delete", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "Required. The name of the entity type to delete. Format:\n`projects/\u003cProject ID\u003e/agent/sessions/\u003cSession ID\u003e/entityTypes/\u003cEntity Type\nDisplay Name\u003e`.", + // "location": "path", + // "pattern": "^projects/[^/]+/agent/sessions/[^/]+/entityTypes/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v2/{+name}", + // "response": { + // "$ref": "GoogleProtobufEmpty" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "dialogflow.projects.agent.sessions.entityTypes.get": + +type ProjectsAgentSessionsEntityTypesGetCall struct { + s *Service + name string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// Get: Retrieves the specified session entity type. +func (r *ProjectsAgentSessionsEntityTypesService) Get(name string) *ProjectsAgentSessionsEntityTypesGetCall { + c := &ProjectsAgentSessionsEntityTypesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsAgentSessionsEntityTypesGetCall) Fields(s ...googleapi.Field) *ProjectsAgentSessionsEntityTypesGetCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// IfNoneMatch sets the optional parameter which makes the operation +// fail if the object's ETag matches the given value. This is useful for +// getting updates only after the object has changed since the last +// request. Use googleapi.IsNotModified to check whether the response +// error from Do is the result of In-None-Match. +func (c *ProjectsAgentSessionsEntityTypesGetCall) IfNoneMatch(entityTag string) *ProjectsAgentSessionsEntityTypesGetCall { + c.ifNoneMatch_ = entityTag + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsAgentSessionsEntityTypesGetCall) Context(ctx context.Context) *ProjectsAgentSessionsEntityTypesGetCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsAgentSessionsEntityTypesGetCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsAgentSessionsEntityTypesGetCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + if c.ifNoneMatch_ != "" { + reqHeaders.Set("If-None-Match", c.ifNoneMatch_) + } + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v2/{+name}") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("GET", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "dialogflow.projects.agent.sessions.entityTypes.get" call. +// Exactly one of *GoogleCloudDialogflowV2SessionEntityType or error +// will be non-nil. Any non-2xx status code is an error. Response +// headers are in either +// *GoogleCloudDialogflowV2SessionEntityType.ServerResponse.Header or +// (if a response was returned at all) in +// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check +// whether the returned error was because http.StatusNotModified was +// returned. +func (c *ProjectsAgentSessionsEntityTypesGetCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowV2SessionEntityType, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &GoogleCloudDialogflowV2SessionEntityType{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Retrieves the specified session entity type.", + // "flatPath": "v2/projects/{projectsId}/agent/sessions/{sessionsId}/entityTypes/{entityTypesId}", + // "httpMethod": "GET", + // "id": "dialogflow.projects.agent.sessions.entityTypes.get", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "Required. The name of the session entity type. Format:\n`projects/\u003cProject ID\u003e/agent/sessions/\u003cSession ID\u003e/entityTypes/\u003cEntity Type\nDisplay Name\u003e`.", + // "location": "path", + // "pattern": "^projects/[^/]+/agent/sessions/[^/]+/entityTypes/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v2/{+name}", + // "response": { + // "$ref": "GoogleCloudDialogflowV2SessionEntityType" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "dialogflow.projects.agent.sessions.entityTypes.list": + +type ProjectsAgentSessionsEntityTypesListCall struct { + s *Service + parent string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// List: Returns the list of all session entity types in the specified +// session. +func (r *ProjectsAgentSessionsEntityTypesService) List(parent string) *ProjectsAgentSessionsEntityTypesListCall { + c := &ProjectsAgentSessionsEntityTypesListCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.parent = parent + return c +} + +// PageSize sets the optional parameter "pageSize": The maximum number +// of items to return in a single page. By +// default 100 and at most 1000. +func (c *ProjectsAgentSessionsEntityTypesListCall) PageSize(pageSize int64) *ProjectsAgentSessionsEntityTypesListCall { + c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) + return c +} + +// PageToken sets the optional parameter "pageToken": The +// next_page_token value returned from a previous list request. +func (c *ProjectsAgentSessionsEntityTypesListCall) PageToken(pageToken string) *ProjectsAgentSessionsEntityTypesListCall { + c.urlParams_.Set("pageToken", pageToken) + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsAgentSessionsEntityTypesListCall) Fields(s ...googleapi.Field) *ProjectsAgentSessionsEntityTypesListCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// IfNoneMatch sets the optional parameter which makes the operation +// fail if the object's ETag matches the given value. This is useful for +// getting updates only after the object has changed since the last +// request. Use googleapi.IsNotModified to check whether the response +// error from Do is the result of In-None-Match. +func (c *ProjectsAgentSessionsEntityTypesListCall) IfNoneMatch(entityTag string) *ProjectsAgentSessionsEntityTypesListCall { + c.ifNoneMatch_ = entityTag + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsAgentSessionsEntityTypesListCall) Context(ctx context.Context) *ProjectsAgentSessionsEntityTypesListCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsAgentSessionsEntityTypesListCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsAgentSessionsEntityTypesListCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + if c.ifNoneMatch_ != "" { + reqHeaders.Set("If-None-Match", c.ifNoneMatch_) + } + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v2/{+parent}/entityTypes") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("GET", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "parent": c.parent, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "dialogflow.projects.agent.sessions.entityTypes.list" call. +// Exactly one of *GoogleCloudDialogflowV2ListSessionEntityTypesResponse +// or error will be non-nil. Any non-2xx status code is an error. +// Response headers are in either +// *GoogleCloudDialogflowV2ListSessionEntityTypesResponse.ServerResponse. +// Header or (if a response was returned at all) in +// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check +// whether the returned error was because http.StatusNotModified was +// returned. +func (c *ProjectsAgentSessionsEntityTypesListCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowV2ListSessionEntityTypesResponse, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &GoogleCloudDialogflowV2ListSessionEntityTypesResponse{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Returns the list of all session entity types in the specified session.", + // "flatPath": "v2/projects/{projectsId}/agent/sessions/{sessionsId}/entityTypes", + // "httpMethod": "GET", + // "id": "dialogflow.projects.agent.sessions.entityTypes.list", + // "parameterOrder": [ + // "parent" + // ], + // "parameters": { + // "pageSize": { + // "description": "Optional. The maximum number of items to return in a single page. By\ndefault 100 and at most 1000.", + // "format": "int32", + // "location": "query", + // "type": "integer" + // }, + // "pageToken": { + // "description": "Optional. The next_page_token value returned from a previous list request.", + // "location": "query", + // "type": "string" + // }, + // "parent": { + // "description": "Required. The session to list all session entity types from.\nFormat: `projects/\u003cProject ID\u003e/agent/sessions/\u003cSession ID\u003e`.", + // "location": "path", + // "pattern": "^projects/[^/]+/agent/sessions/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v2/{+parent}/entityTypes", + // "response": { + // "$ref": "GoogleCloudDialogflowV2ListSessionEntityTypesResponse" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// Pages invokes f for each page of results. +// A non-nil error returned from f will halt the iteration. +// The provided context supersedes any context provided to the Context method. +func (c *ProjectsAgentSessionsEntityTypesListCall) Pages(ctx context.Context, f func(*GoogleCloudDialogflowV2ListSessionEntityTypesResponse) error) error { + c.ctx_ = ctx + defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point + for { + x, err := c.Do() + if err != nil { + return err + } + if err := f(x); err != nil { + return err + } + if x.NextPageToken == "" { + return nil + } + c.PageToken(x.NextPageToken) + } +} + +// method id "dialogflow.projects.agent.sessions.entityTypes.patch": + +type ProjectsAgentSessionsEntityTypesPatchCall struct { + s *Service + nameid string + googleclouddialogflowv2sessionentitytype *GoogleCloudDialogflowV2SessionEntityType + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Patch: Updates the specified session entity type. +func (r *ProjectsAgentSessionsEntityTypesService) Patch(nameid string, googleclouddialogflowv2sessionentitytype *GoogleCloudDialogflowV2SessionEntityType) *ProjectsAgentSessionsEntityTypesPatchCall { + c := &ProjectsAgentSessionsEntityTypesPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.nameid = nameid + c.googleclouddialogflowv2sessionentitytype = googleclouddialogflowv2sessionentitytype + return c +} + +// UpdateMask sets the optional parameter "updateMask": The mask to +// control which fields get updated. +func (c *ProjectsAgentSessionsEntityTypesPatchCall) UpdateMask(updateMask string) *ProjectsAgentSessionsEntityTypesPatchCall { + c.urlParams_.Set("updateMask", updateMask) + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsAgentSessionsEntityTypesPatchCall) Fields(s ...googleapi.Field) *ProjectsAgentSessionsEntityTypesPatchCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsAgentSessionsEntityTypesPatchCall) Context(ctx context.Context) *ProjectsAgentSessionsEntityTypesPatchCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsAgentSessionsEntityTypesPatchCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsAgentSessionsEntityTypesPatchCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowv2sessionentitytype) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v2/{+name}") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("PATCH", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.nameid, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "dialogflow.projects.agent.sessions.entityTypes.patch" call. +// Exactly one of *GoogleCloudDialogflowV2SessionEntityType or error +// will be non-nil. Any non-2xx status code is an error. Response +// headers are in either +// *GoogleCloudDialogflowV2SessionEntityType.ServerResponse.Header or +// (if a response was returned at all) in +// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check +// whether the returned error was because http.StatusNotModified was +// returned. +func (c *ProjectsAgentSessionsEntityTypesPatchCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowV2SessionEntityType, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &GoogleCloudDialogflowV2SessionEntityType{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Updates the specified session entity type.", + // "flatPath": "v2/projects/{projectsId}/agent/sessions/{sessionsId}/entityTypes/{entityTypesId}", + // "httpMethod": "PATCH", + // "id": "dialogflow.projects.agent.sessions.entityTypes.patch", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "Required. The unique identifier of this session entity type. Format:\n`projects/\u003cProject ID\u003e/agent/sessions/\u003cSession ID\u003e/entityTypes/\u003cEntity Type\nDisplay Name\u003e`.", + // "location": "path", + // "pattern": "^projects/[^/]+/agent/sessions/[^/]+/entityTypes/[^/]+$", + // "required": true, + // "type": "string" + // }, + // "updateMask": { + // "description": "Optional. The mask to control which fields get updated.", + // "format": "google-fieldmask", + // "location": "query", + // "type": "string" + // } + // }, + // "path": "v2/{+name}", + // "request": { + // "$ref": "GoogleCloudDialogflowV2SessionEntityType" + // }, + // "response": { + // "$ref": "GoogleCloudDialogflowV2SessionEntityType" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "dialogflow.projects.operations.get": + +type ProjectsOperationsGetCall struct { + s *Service + name string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// Get: Gets the latest state of a long-running operation. Clients can +// use this +// method to poll the operation result at intervals as recommended by +// the API +// service. +func (r *ProjectsOperationsService) Get(name string) *ProjectsOperationsGetCall { + c := &ProjectsOperationsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsOperationsGetCall) Fields(s ...googleapi.Field) *ProjectsOperationsGetCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// IfNoneMatch sets the optional parameter which makes the operation +// fail if the object's ETag matches the given value. This is useful for +// getting updates only after the object has changed since the last +// request. Use googleapi.IsNotModified to check whether the response +// error from Do is the result of In-None-Match. +func (c *ProjectsOperationsGetCall) IfNoneMatch(entityTag string) *ProjectsOperationsGetCall { + c.ifNoneMatch_ = entityTag + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsOperationsGetCall) Context(ctx context.Context) *ProjectsOperationsGetCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsOperationsGetCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsOperationsGetCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + if c.ifNoneMatch_ != "" { + reqHeaders.Set("If-None-Match", c.ifNoneMatch_) + } + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v2/{+name}") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("GET", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "dialogflow.projects.operations.get" call. +// Exactly one of *GoogleLongrunningOperation or error will be non-nil. +// Any non-2xx status code is an error. Response headers are in either +// *GoogleLongrunningOperation.ServerResponse.Header or (if a response +// was returned at all) in error.(*googleapi.Error).Header. Use +// googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *ProjectsOperationsGetCall) Do(opts ...googleapi.CallOption) (*GoogleLongrunningOperation, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &GoogleLongrunningOperation{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Gets the latest state of a long-running operation. Clients can use this\nmethod to poll the operation result at intervals as recommended by the API\nservice.", + // "flatPath": "v2/projects/{projectsId}/operations/{operationsId}", + // "httpMethod": "GET", + // "id": "dialogflow.projects.operations.get", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "The name of the operation resource.", + // "location": "path", + // "pattern": "^projects/[^/]+/operations/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v2/{+name}", + // "response": { + // "$ref": "GoogleLongrunningOperation" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} diff --git a/vendor/google.golang.org/api/dialogflow/v2beta1/dialogflow-api.json b/vendor/google.golang.org/api/dialogflow/v2beta1/dialogflow-api.json index be254507d..cfb52caf8 100644 --- a/vendor/google.golang.org/api/dialogflow/v2beta1/dialogflow-api.json +++ b/vendor/google.golang.org/api/dialogflow/v2beta1/dialogflow-api.json @@ -1,311 +1,1821 @@ { - "schemas": { - "IntentMessageSimpleResponses": { - "description": "The collection of simple response candidates.\nThis message in `QueryResult.fulfillment_messages` and\n`WebhookResponse.fulfillment_messages` should contain only one\n`SimpleResponse`.", - "type": "object", - "properties": { - "simpleResponses": { - "description": "Required. The list of simple responses.", - "type": "array", - "items": { - "$ref": "IntentMessageSimpleResponse" - } - } - }, - "id": "IntentMessageSimpleResponses" - }, - "BatchCreateEntitiesRequest": { - "description": "The request message for EntityTypes.BatchCreateEntities.", - "type": "object", - "properties": { - "languageCode": { - "description": "Optional. The language of entity synonyms defined in `entities`. If not\nspecified, the agent's default language is used.\n[More than a dozen\nlanguages](https://dialogflow.com/docs/reference/language) are supported.\nNote: languages must be enabled in the agent, before they can be used.", - "type": "string" - }, - "entities": { - "description": "Required. The collection of entities to create.", - "type": "array", - "items": { - "$ref": "EntityTypeEntity" - } - } - }, - "id": "BatchCreateEntitiesRequest" - }, - "DetectIntentRequest": { - "id": "DetectIntentRequest", - "description": "The request to detect user's intent.", - "type": "object", - "properties": { - "queryInput": { - "$ref": "QueryInput", - "description": "Required. The input specification. It can be set to:\n\n1. an audio config\n which instructs the speech recognizer how to process the speech audio,\n\n2. a conversational query in the form of text, or\n\n3. an event that specifies which intent to trigger." - }, - "queryParams": { - "$ref": "QueryParameters", - "description": "Optional. The parameters of this query." - }, - "inputAudio": { - "description": "Optional. The natural language speech audio to be processed. This field\nshould be populated iff `query_input` is set to an input audio config.\nA single request can contain up to 1 minute of speech audio data.", - "format": "byte", - "type": "string" + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/cloud-platform": { + "description": "View and manage your data across Google Cloud Platform services" } } + } + }, + "basePath": "", + "baseUrl": "https://dialogflow.googleapis.com/", + "batchPath": "batch", + "canonicalName": "Dialogflow", + "description": "An end-to-end development suite for conversational interfaces (e.g., chatbots, voice-powered apps and devices).", + "discoveryVersion": "v1", + "documentationLink": "https://cloud.google.com/dialogflow-enterprise/", + "fullyEncodeReservedExpansion": true, + "icons": { + "x16": "http://www.google.com/images/icons/product/search-16.gif", + "x32": "http://www.google.com/images/icons/product/search-32.gif" + }, + "id": "dialogflow:v2beta1", + "kind": "discovery#restDescription", + "name": "dialogflow", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "$.xgafv": { + "description": "V1 error format.", + "enum": [ + "1", + "2" + ], + "enumDescriptions": [ + "v1 error format", + "v2 error format" + ], + "location": "query", + "type": "string" }, - "TextInput": { - "description": "Represents the natural language text to be processed.", - "type": "object", - "properties": { - "text": { - "description": "Required. The UTF-8 encoded natural language text to be processed.\nText length must not exceed 256 bytes.", - "type": "string" - }, - "languageCode": { - "description": "Required. The language of this conversational query. See [Language\nSupport](https://dialogflow.com/docs/languages) for a list of the\ncurrently supported language codes. Note that queries in the same session\ndo not necessarily need to specify the same language.", - "type": "string" + "access_token": { + "description": "OAuth access token.", + "location": "query", + "type": "string" + }, + "alt": { + "default": "json", + "description": "Data format for response.", + "enum": [ + "json", + "media", + "proto" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json", + "Media download with context-dependent Content-Type", + "Responses with Content-Type of application/x-protobuf" + ], + "location": "query", + "type": "string" + }, + "bearer_token": { + "description": "OAuth bearer token.", + "location": "query", + "type": "string" + }, + "callback": { + "description": "JSONP", + "location": "query", + "type": "string" + }, + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "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.", + "location": "query", + "type": "string" + }, + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "pp": { + "default": "true", + "description": "Pretty-print response.", + "location": "query", + "type": "boolean" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", + "location": "query", + "type": "string" + }, + "uploadType": { + "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", + "location": "query", + "type": "string" + }, + "upload_protocol": { + "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", + "location": "query", + "type": "string" + } + }, + "protocol": "rest", + "resources": { + "projects": { + "methods": { + "getAgent": { + "description": "Retrieves the specified agent.", + "flatPath": "v2beta1/projects/{projectsId}/agent", + "httpMethod": "GET", + "id": "dialogflow.projects.getAgent", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. The project that the agent to fetch is associated with.\nFormat: `projects/\u003cProject ID\u003e`.", + "location": "path", + "pattern": "^projects/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2beta1/{+parent}/agent", + "response": { + "$ref": "GoogleCloudDialogflowV2beta1Agent" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] } }, - "id": "TextInput" - }, - "IntentMessageCardButton": { - "description": "Optional. Contains information about a button.", - "type": "object", - "properties": { - "text": { - "description": "Optional. The text to show on the button.", - "type": "string" + "resources": { + "agent": { + "methods": { + "export": { + "description": "Exports the specified agent to a ZIP file.\n\n\nOperation \u003cresponse: ExportAgentResponse,\n metadata: google.protobuf.Struct\u003e", + "flatPath": "v2beta1/projects/{projectsId}/agent:export", + "httpMethod": "POST", + "id": "dialogflow.projects.agent.export", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. The project that the agent to export is associated with.\nFormat: `projects/\u003cProject ID\u003e`.", + "location": "path", + "pattern": "^projects/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2beta1/{+parent}/agent:export", + "request": { + "$ref": "GoogleCloudDialogflowV2beta1ExportAgentRequest" + }, + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "import": { + "description": "Imports the specified agent from a ZIP file.\n\nUploads new intents and entity types without deleting the existing ones.\nIntents and entity types with the same name are replaced with the new\nversions from ImportAgentRequest.\n\n\nOperation \u003cresponse: google.protobuf.Empty,\n metadata: google.protobuf.Struct\u003e", + "flatPath": "v2beta1/projects/{projectsId}/agent:import", + "httpMethod": "POST", + "id": "dialogflow.projects.agent.import", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. The project that the agent to import is associated with.\nFormat: `projects/\u003cProject ID\u003e`.", + "location": "path", + "pattern": "^projects/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2beta1/{+parent}/agent:import", + "request": { + "$ref": "GoogleCloudDialogflowV2beta1ImportAgentRequest" + }, + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "restore": { + "description": "Restores the specified agent from a ZIP file.\n\nReplaces the current agent version with a new one. All the intents and\nentity types in the older version are deleted.\n\n\nOperation \u003cresponse: google.protobuf.Empty,\n metadata: google.protobuf.Struct\u003e", + "flatPath": "v2beta1/projects/{projectsId}/agent:restore", + "httpMethod": "POST", + "id": "dialogflow.projects.agent.restore", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. The project that the agent to restore is associated with.\nFormat: `projects/\u003cProject ID\u003e`.", + "location": "path", + "pattern": "^projects/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2beta1/{+parent}/agent:restore", + "request": { + "$ref": "GoogleCloudDialogflowV2beta1RestoreAgentRequest" + }, + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "search": { + "description": "Returns the list of agents.\n\nSince there is at most one conversational agent per project, this method is\nuseful primarily for listing all agents across projects the caller has\naccess to. One can achieve that with a wildcard project collection id \"-\".\nRefer to [List\nSub-Collections](https://cloud.google.com/apis/design/design_patterns#list_sub-collections).", + "flatPath": "v2beta1/projects/{projectsId}/agent:search", + "httpMethod": "GET", + "id": "dialogflow.projects.agent.search", + "parameterOrder": [ + "parent" + ], + "parameters": { + "pageSize": { + "description": "Optional. The maximum number of items to return in a single page. By\ndefault 100 and at most 1000.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional. The next_page_token value returned from a previous list request.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The project to list agents from.\nFormat: `projects/\u003cProject ID or '-'\u003e`.", + "location": "path", + "pattern": "^projects/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2beta1/{+parent}/agent:search", + "response": { + "$ref": "GoogleCloudDialogflowV2beta1SearchAgentsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "train": { + "description": "Trains the specified agent.\n\n\nOperation \u003cresponse: google.protobuf.Empty,\n metadata: google.protobuf.Struct\u003e", + "flatPath": "v2beta1/projects/{projectsId}/agent:train", + "httpMethod": "POST", + "id": "dialogflow.projects.agent.train", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. The project that the agent to train is associated with.\nFormat: `projects/\u003cProject ID\u003e`.", + "location": "path", + "pattern": "^projects/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2beta1/{+parent}/agent:train", + "request": { + "$ref": "GoogleCloudDialogflowV2beta1TrainAgentRequest" + }, + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + }, + "resources": { + "entityTypes": { + "methods": { + "batchDelete": { + "description": "Deletes entity types in the specified agent.\n\nOperation \u003cresponse: google.protobuf.Empty,\n metadata: google.protobuf.Struct\u003e", + "flatPath": "v2beta1/projects/{projectsId}/agent/entityTypes:batchDelete", + "httpMethod": "POST", + "id": "dialogflow.projects.agent.entityTypes.batchDelete", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. The name of the agent to delete all entities types for. Format:\n`projects/\u003cProject ID\u003e/agent`.", + "location": "path", + "pattern": "^projects/[^/]+/agent$", + "required": true, + "type": "string" + } + }, + "path": "v2beta1/{+parent}/entityTypes:batchDelete", + "request": { + "$ref": "GoogleCloudDialogflowV2beta1BatchDeleteEntityTypesRequest" + }, + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "batchUpdate": { + "description": "Updates/Creates multiple entity types in the specified agent.\n\nOperation \u003cresponse: BatchUpdateEntityTypesResponse,\n metadata: google.protobuf.Struct\u003e", + "flatPath": "v2beta1/projects/{projectsId}/agent/entityTypes:batchUpdate", + "httpMethod": "POST", + "id": "dialogflow.projects.agent.entityTypes.batchUpdate", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. The name of the agent to update or create entity types in.\nFormat: `projects/\u003cProject ID\u003e/agent`.", + "location": "path", + "pattern": "^projects/[^/]+/agent$", + "required": true, + "type": "string" + } + }, + "path": "v2beta1/{+parent}/entityTypes:batchUpdate", + "request": { + "$ref": "GoogleCloudDialogflowV2beta1BatchUpdateEntityTypesRequest" + }, + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "create": { + "description": "Creates an entity type in the specified agent.", + "flatPath": "v2beta1/projects/{projectsId}/agent/entityTypes", + "httpMethod": "POST", + "id": "dialogflow.projects.agent.entityTypes.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "languageCode": { + "description": "Optional. The language of entity synonyms defined in `entity_type`. If not\nspecified, the agent's default language is used.\n[More than a dozen\nlanguages](https://dialogflow.com/docs/reference/language) are supported.\nNote: languages must be enabled in the agent, before they can be used.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The agent to create a entity type for.\nFormat: `projects/\u003cProject ID\u003e/agent`.", + "location": "path", + "pattern": "^projects/[^/]+/agent$", + "required": true, + "type": "string" + } + }, + "path": "v2beta1/{+parent}/entityTypes", + "request": { + "$ref": "GoogleCloudDialogflowV2beta1EntityType" + }, + "response": { + "$ref": "GoogleCloudDialogflowV2beta1EntityType" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Deletes the specified entity type.", + "flatPath": "v2beta1/projects/{projectsId}/agent/entityTypes/{entityTypesId}", + "httpMethod": "DELETE", + "id": "dialogflow.projects.agent.entityTypes.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the entity type to delete.\nFormat: `projects/\u003cProject ID\u003e/agent/entityTypes/\u003cEntityType ID\u003e`.", + "location": "path", + "pattern": "^projects/[^/]+/agent/entityTypes/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2beta1/{+name}", + "response": { + "$ref": "GoogleProtobufEmpty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Retrieves the specified entity type.", + "flatPath": "v2beta1/projects/{projectsId}/agent/entityTypes/{entityTypesId}", + "httpMethod": "GET", + "id": "dialogflow.projects.agent.entityTypes.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "languageCode": { + "description": "Optional. The language to retrieve entity synonyms for. If not specified,\nthe agent's default language is used.\n[More than a dozen\nlanguages](https://dialogflow.com/docs/reference/language) are supported.\nNote: languages must be enabled in the agent, before they can be used.", + "location": "query", + "type": "string" + }, + "name": { + "description": "Required. The name of the entity type.\nFormat: `projects/\u003cProject ID\u003e/agent/entityTypes/\u003cEntityType ID\u003e`.", + "location": "path", + "pattern": "^projects/[^/]+/agent/entityTypes/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2beta1/{+name}", + "response": { + "$ref": "GoogleCloudDialogflowV2beta1EntityType" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Returns the list of all entity types in the specified agent.", + "flatPath": "v2beta1/projects/{projectsId}/agent/entityTypes", + "httpMethod": "GET", + "id": "dialogflow.projects.agent.entityTypes.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "languageCode": { + "description": "Optional. The language to list entity synonyms for. If not specified,\nthe agent's default language is used.\n[More than a dozen\nlanguages](https://dialogflow.com/docs/reference/language) are supported.\nNote: languages must be enabled in the agent, before they can be used.", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "Optional. The maximum number of items to return in a single page. By\ndefault 100 and at most 1000.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional. The next_page_token value returned from a previous list request.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The agent to list all entity types from.\nFormat: `projects/\u003cProject ID\u003e/agent`.", + "location": "path", + "pattern": "^projects/[^/]+/agent$", + "required": true, + "type": "string" + } + }, + "path": "v2beta1/{+parent}/entityTypes", + "response": { + "$ref": "GoogleCloudDialogflowV2beta1ListEntityTypesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "patch": { + "description": "Updates the specified entity type.", + "flatPath": "v2beta1/projects/{projectsId}/agent/entityTypes/{entityTypesId}", + "httpMethod": "PATCH", + "id": "dialogflow.projects.agent.entityTypes.patch", + "parameterOrder": [ + "name" + ], + "parameters": { + "languageCode": { + "description": "Optional. The language of entity synonyms defined in `entity_type`. If not\nspecified, the agent's default language is used.\n[More than a dozen\nlanguages](https://dialogflow.com/docs/reference/language) are supported.\nNote: languages must be enabled in the agent, before they can be used.", + "location": "query", + "type": "string" + }, + "name": { + "description": "Required for all methods except `create` (`create` populates the name\nautomatically.\nThe unique identifier of the entity type. Format:\n`projects/\u003cProject ID\u003e/agent/entityTypes/\u003cEntity Type ID\u003e`.", + "location": "path", + "pattern": "^projects/[^/]+/agent/entityTypes/[^/]+$", + "required": true, + "type": "string" + }, + "updateMask": { + "description": "Optional. The mask to control which fields get updated.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + } + }, + "path": "v2beta1/{+name}", + "request": { + "$ref": "GoogleCloudDialogflowV2beta1EntityType" + }, + "response": { + "$ref": "GoogleCloudDialogflowV2beta1EntityType" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + }, + "resources": { + "entities": { + "methods": { + "batchCreate": { + "description": "Creates multiple new entities in the specified entity type (extends the\nexisting collection of entries).\n\nOperation \u003cresponse: google.protobuf.Empty\u003e", + "flatPath": "v2beta1/projects/{projectsId}/agent/entityTypes/{entityTypesId}/entities:batchCreate", + "httpMethod": "POST", + "id": "dialogflow.projects.agent.entityTypes.entities.batchCreate", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. The name of the entity type to create entities in. Format:\n`projects/\u003cProject ID\u003e/agent/entityTypes/\u003cEntity Type ID\u003e`.", + "location": "path", + "pattern": "^projects/[^/]+/agent/entityTypes/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2beta1/{+parent}/entities:batchCreate", + "request": { + "$ref": "GoogleCloudDialogflowV2beta1BatchCreateEntitiesRequest" + }, + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "batchDelete": { + "description": "Deletes entities in the specified entity type.\n\nOperation \u003cresponse: google.protobuf.Empty,\n metadata: google.protobuf.Struct\u003e", + "flatPath": "v2beta1/projects/{projectsId}/agent/entityTypes/{entityTypesId}/entities:batchDelete", + "httpMethod": "POST", + "id": "dialogflow.projects.agent.entityTypes.entities.batchDelete", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. The name of the entity type to delete entries for. Format:\n`projects/\u003cProject ID\u003e/agent/entityTypes/\u003cEntity Type ID\u003e`.", + "location": "path", + "pattern": "^projects/[^/]+/agent/entityTypes/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2beta1/{+parent}/entities:batchDelete", + "request": { + "$ref": "GoogleCloudDialogflowV2beta1BatchDeleteEntitiesRequest" + }, + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "batchUpdate": { + "description": "Updates entities in the specified entity type (replaces the existing\ncollection of entries).\n\nOperation \u003cresponse: google.protobuf.Empty,\n metadata: google.protobuf.Struct\u003e", + "flatPath": "v2beta1/projects/{projectsId}/agent/entityTypes/{entityTypesId}/entities:batchUpdate", + "httpMethod": "POST", + "id": "dialogflow.projects.agent.entityTypes.entities.batchUpdate", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. The name of the entity type to update the entities in. Format:\n`projects/\u003cProject ID\u003e/agent/entityTypes/\u003cEntity Type ID\u003e`.", + "location": "path", + "pattern": "^projects/[^/]+/agent/entityTypes/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2beta1/{+parent}/entities:batchUpdate", + "request": { + "$ref": "GoogleCloudDialogflowV2beta1BatchUpdateEntitiesRequest" + }, + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + } + } + }, + "environments": { + "resources": { + "users": { + "resources": { + "sessions": { + "methods": { + "deleteContexts": { + "description": "Deletes all active contexts in the specified session.", + "flatPath": "v2beta1/projects/{projectsId}/agent/environments/{environmentsId}/users/{usersId}/sessions/{sessionsId}/contexts", + "httpMethod": "DELETE", + "id": "dialogflow.projects.agent.environments.users.sessions.deleteContexts", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. The name of the session to delete all contexts from. Format:\n`projects/\u003cProject ID\u003e/agent/sessions/\u003cSession ID\u003e` or `projects/\u003cProject\nID\u003e/agent/environments/\u003cEnvironment ID\u003e/users/\u003cUser ID\u003e/sessions/\u003cSession\nID\u003e`. Note: Environments and users are under construction and will be\navailable soon. If \u003cEnvironment ID\u003e is not specified we assume default\n'draft' environment. If \u003cUser ID\u003e is not specified, we assume default\n'-' user.", + "location": "path", + "pattern": "^projects/[^/]+/agent/environments/[^/]+/users/[^/]+/sessions/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2beta1/{+parent}/contexts", + "response": { + "$ref": "GoogleProtobufEmpty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "detectIntent": { + "description": "Processes a natural language query and returns structured, actionable data\nas a result. This method is not idempotent, because it may cause contexts\nand session entity types to be updated, which in turn might affect\nresults of future queries.", + "flatPath": "v2beta1/projects/{projectsId}/agent/environments/{environmentsId}/users/{usersId}/sessions/{sessionsId}:detectIntent", + "httpMethod": "POST", + "id": "dialogflow.projects.agent.environments.users.sessions.detectIntent", + "parameterOrder": [ + "session" + ], + "parameters": { + "session": { + "description": "Required. The name of the session this query is sent to. Format:\n`projects/\u003cProject ID\u003e/agent/sessions/\u003cSession ID\u003e`, or\n`projects/\u003cProject ID\u003e/agent/environments/\u003cEnvironment ID\u003e/users/\u003cUser\nID\u003e/sessions/\u003cSession ID\u003e`. Note: Environments and users are under\nconstruction and will be available soon. If \u003cEnvironment ID\u003e is not\nspecified, we assume default 'draft' environment. If \u003cUser ID\u003e is not\nspecified, we are using \"-\". It’s up to the API caller to choose an\nappropriate \u003cSession ID\u003e. and \u003cUser Id\u003e. They can be a random numbers or\nsome type of user and session identifiers (preferably hashed). The length\nof the \u003cSession ID\u003e and \u003cUser ID\u003e must not exceed 36 characters.", + "location": "path", + "pattern": "^projects/[^/]+/agent/environments/[^/]+/users/[^/]+/sessions/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2beta1/{+session}:detectIntent", + "request": { + "$ref": "GoogleCloudDialogflowV2beta1DetectIntentRequest" + }, + "response": { + "$ref": "GoogleCloudDialogflowV2beta1DetectIntentResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + }, + "resources": { + "contexts": { + "methods": { + "create": { + "description": "Creates a context.", + "flatPath": "v2beta1/projects/{projectsId}/agent/environments/{environmentsId}/users/{usersId}/sessions/{sessionsId}/contexts", + "httpMethod": "POST", + "id": "dialogflow.projects.agent.environments.users.sessions.contexts.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. The session to create a context for.\nFormat: `projects/\u003cProject ID\u003e/agent/sessions/\u003cSession ID\u003e` or\n`projects/\u003cProject ID\u003e/agent/environments/\u003cEnvironment ID\u003e/users/\u003cUser\nID\u003e/sessions/\u003cSession ID\u003e`. Note: Environments and users are under\nconstruction and will be available soon. If \u003cEnvironment ID\u003e is not\nspecified, we assume default 'draft' environment. If \u003cUser ID\u003e is not\nspecified, we assume default '-' user.", + "location": "path", + "pattern": "^projects/[^/]+/agent/environments/[^/]+/users/[^/]+/sessions/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2beta1/{+parent}/contexts", + "request": { + "$ref": "GoogleCloudDialogflowV2beta1Context" + }, + "response": { + "$ref": "GoogleCloudDialogflowV2beta1Context" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Deletes the specified context.", + "flatPath": "v2beta1/projects/{projectsId}/agent/environments/{environmentsId}/users/{usersId}/sessions/{sessionsId}/contexts/{contextsId}", + "httpMethod": "DELETE", + "id": "dialogflow.projects.agent.environments.users.sessions.contexts.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the context to delete. Format:\n`projects/\u003cProject ID\u003e/agent/sessions/\u003cSession ID\u003e/contexts/\u003cContext ID\u003e`\nor `projects/\u003cProject ID\u003e/agent/environments/\u003cEnvironment ID\u003e/users/\u003cUser\nID\u003e/sessions/\u003cSession ID\u003e/contexts/\u003cContext ID\u003e`. Note: Environments and\nusers are under construction and will be available soon. If \u003cEnvironment\nID\u003e is not specified, we assume default 'draft' environment. If \u003cUser ID\u003e\nis not specified, we assume default\n'-' user.", + "location": "path", + "pattern": "^projects/[^/]+/agent/environments/[^/]+/users/[^/]+/sessions/[^/]+/contexts/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2beta1/{+name}", + "response": { + "$ref": "GoogleProtobufEmpty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Retrieves the specified context.", + "flatPath": "v2beta1/projects/{projectsId}/agent/environments/{environmentsId}/users/{usersId}/sessions/{sessionsId}/contexts/{contextsId}", + "httpMethod": "GET", + "id": "dialogflow.projects.agent.environments.users.sessions.contexts.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the context. Format:\n`projects/\u003cProject ID\u003e/agent/sessions/\u003cSession ID\u003e/contexts/\u003cContext ID\u003e`\nor `projects/\u003cProject ID\u003e/agent/environments/\u003cEnvironment ID\u003e/users/\u003cUser\nID\u003e/sessions/\u003cSession ID\u003e/contexts/\u003cContext ID\u003e`. Note: Environments and\nusers are under construction and will be available soon. If \u003cEnvironment\nID\u003e is not specified, we assume default 'draft' environment. If \u003cUser ID\u003e\nis not specified, we assume default '-' user.", + "location": "path", + "pattern": "^projects/[^/]+/agent/environments/[^/]+/users/[^/]+/sessions/[^/]+/contexts/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2beta1/{+name}", + "response": { + "$ref": "GoogleCloudDialogflowV2beta1Context" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Returns the list of all contexts in the specified session.", + "flatPath": "v2beta1/projects/{projectsId}/agent/environments/{environmentsId}/users/{usersId}/sessions/{sessionsId}/contexts", + "httpMethod": "GET", + "id": "dialogflow.projects.agent.environments.users.sessions.contexts.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "pageSize": { + "description": "Optional. The maximum number of items to return in a single page. By\ndefault 100 and at most 1000.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional. The next_page_token value returned from a previous list request.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The session to list all contexts from.\nFormat: `projects/\u003cProject ID\u003e/agent/sessions/\u003cSession ID\u003e` or\n`projects/\u003cProject ID\u003e/agent/environments/\u003cEnvironment ID\u003e/users/\u003cUser\nID\u003e/sessions/\u003cSession ID\u003e`. Note: Environments and users are under\nconstruction and will be available soon. If \u003cEnvironment ID\u003e is not\nspecified, we assume default 'draft' environment. If \u003cUser ID\u003e is not\nspecified, we assume default '-' user.", + "location": "path", + "pattern": "^projects/[^/]+/agent/environments/[^/]+/users/[^/]+/sessions/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2beta1/{+parent}/contexts", + "response": { + "$ref": "GoogleCloudDialogflowV2beta1ListContextsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "patch": { + "description": "Updates the specified context.", + "flatPath": "v2beta1/projects/{projectsId}/agent/environments/{environmentsId}/users/{usersId}/sessions/{sessionsId}/contexts/{contextsId}", + "httpMethod": "PATCH", + "id": "dialogflow.projects.agent.environments.users.sessions.contexts.patch", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The unique identifier of the context. Format:\n`projects/\u003cProject ID\u003e/agent/sessions/\u003cSession ID\u003e/contexts/\u003cContext ID\u003e`,\nor\n`projects/\u003cProject ID\u003e/agent/environments/\u003cEnvironment ID\u003e/users/\u003cUser\nID\u003e/sessions/\u003cSession ID\u003e/contexts/\u003cContext ID\u003e`. Note: Environments and\nusers are under construction and will be available soon. The Context ID is\nalways converted to lowercase. If \u003cEnvironment ID\u003e is not specified, we\nassume default 'draft' environment. If \u003cUser ID\u003e is not specified, we\nassume default '-' user.", + "location": "path", + "pattern": "^projects/[^/]+/agent/environments/[^/]+/users/[^/]+/sessions/[^/]+/contexts/[^/]+$", + "required": true, + "type": "string" + }, + "updateMask": { + "description": "Optional. The mask to control which fields get updated.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + } + }, + "path": "v2beta1/{+name}", + "request": { + "$ref": "GoogleCloudDialogflowV2beta1Context" + }, + "response": { + "$ref": "GoogleCloudDialogflowV2beta1Context" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + }, + "entityTypes": { + "methods": { + "create": { + "description": "Creates a session entity type.", + "flatPath": "v2beta1/projects/{projectsId}/agent/environments/{environmentsId}/users/{usersId}/sessions/{sessionsId}/entityTypes", + "httpMethod": "POST", + "id": "dialogflow.projects.agent.environments.users.sessions.entityTypes.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. The session to create a session entity type for.\nFormat: `projects/\u003cProject ID\u003e/agent/sessions/\u003cSession ID\u003e` or\n`projects/\u003cProject ID\u003e/agent/environments/\u003cEnvironment ID\u003e/users/\u003cUser ID\u003e/\nsessions/\u003cSession ID\u003e`.\nNote: Environments and users are under construction and will be available\nsoon. If \u003cEnvironment ID\u003e is not specified, we assume default 'draft'\nenvironment. If \u003cUser ID\u003e is not specified, we assume default '-' user.", + "location": "path", + "pattern": "^projects/[^/]+/agent/environments/[^/]+/users/[^/]+/sessions/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2beta1/{+parent}/entityTypes", + "request": { + "$ref": "GoogleCloudDialogflowV2beta1SessionEntityType" + }, + "response": { + "$ref": "GoogleCloudDialogflowV2beta1SessionEntityType" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Deletes the specified session entity type.", + "flatPath": "v2beta1/projects/{projectsId}/agent/environments/{environmentsId}/users/{usersId}/sessions/{sessionsId}/entityTypes/{entityTypesId}", + "httpMethod": "DELETE", + "id": "dialogflow.projects.agent.environments.users.sessions.entityTypes.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the entity type to delete. Format:\n`projects/\u003cProject ID\u003e/agent/sessions/\u003cSession ID\u003e/entityTypes/\u003cEntity Type\nDisplay Name\u003e` or `projects/\u003cProject ID\u003e/agent/environments/\u003cEnvironment\nID\u003e/users/\u003cUser ID\u003e/sessions/\u003cSession ID\u003e/entityTypes/\u003cEntity Type Display\nName\u003e`.\nNote: Environments and users are under construction and will be available\nsoon. If \u003cEnvironment ID\u003e is not specified, we assume default 'draft'\nenvironment. If \u003cUser ID\u003e is not specified, we assume default '-' user.", + "location": "path", + "pattern": "^projects/[^/]+/agent/environments/[^/]+/users/[^/]+/sessions/[^/]+/entityTypes/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2beta1/{+name}", + "response": { + "$ref": "GoogleProtobufEmpty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Retrieves the specified session entity type.", + "flatPath": "v2beta1/projects/{projectsId}/agent/environments/{environmentsId}/users/{usersId}/sessions/{sessionsId}/entityTypes/{entityTypesId}", + "httpMethod": "GET", + "id": "dialogflow.projects.agent.environments.users.sessions.entityTypes.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the session entity type. Format:\n`projects/\u003cProject ID\u003e/agent/sessions/\u003cSession ID\u003e/entityTypes/\u003cEntity Type\nDisplay Name\u003e` or `projects/\u003cProject ID\u003e/agent/environments/\u003cEnvironment\nID\u003e/users/\u003cUser ID\u003e/sessions/\u003cSession ID\u003e/\nentityTypes/\u003cEntity Type Display Name\u003e`.\nNote: Environments and users re under construction and will be available\nsoon. If \u003cEnvironment ID\u003e is not specified, we assume default 'draft'\nenvironment. If \u003cUser ID\u003e is not specified, we assume default '-' user.", + "location": "path", + "pattern": "^projects/[^/]+/agent/environments/[^/]+/users/[^/]+/sessions/[^/]+/entityTypes/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2beta1/{+name}", + "response": { + "$ref": "GoogleCloudDialogflowV2beta1SessionEntityType" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Returns the list of all session entity types in the specified session.", + "flatPath": "v2beta1/projects/{projectsId}/agent/environments/{environmentsId}/users/{usersId}/sessions/{sessionsId}/entityTypes", + "httpMethod": "GET", + "id": "dialogflow.projects.agent.environments.users.sessions.entityTypes.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "pageSize": { + "description": "Optional. The maximum number of items to return in a single page. By\ndefault 100 and at most 1000.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional. The next_page_token value returned from a previous list request.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The session to list all session entity types from.\nFormat: `projects/\u003cProject ID\u003e/agent/sessions/\u003cSession ID\u003e` or\n`projects/\u003cProject ID\u003e/agent/environments/\u003cEnvironment ID\u003e/users/\u003cUser ID\u003e/\nsessions/\u003cSession ID\u003e`.\nNote: Environments and users are under construction and will be available\nsoon. If \u003cEnvironment ID\u003e is not specified, we assume default 'draft'\nenvironment. If \u003cUser ID\u003e is not specified, we assume default '-' user.", + "location": "path", + "pattern": "^projects/[^/]+/agent/environments/[^/]+/users/[^/]+/sessions/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2beta1/{+parent}/entityTypes", + "response": { + "$ref": "GoogleCloudDialogflowV2beta1ListSessionEntityTypesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "patch": { + "description": "Updates the specified session entity type.", + "flatPath": "v2beta1/projects/{projectsId}/agent/environments/{environmentsId}/users/{usersId}/sessions/{sessionsId}/entityTypes/{entityTypesId}", + "httpMethod": "PATCH", + "id": "dialogflow.projects.agent.environments.users.sessions.entityTypes.patch", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The unique identifier of this session entity type. Format:\n`projects/\u003cProject ID\u003e/agent/sessions/\u003cSession ID\u003e/entityTypes/\u003cEntity Type\nDisplay Name\u003e`, or\n`projects/\u003cProject ID\u003e/agent/environments/\u003cEnvironment ID\u003e/users/\u003cUser\nID\u003e/sessions\n/\u003cSession ID\u003e/entityTypes/\u003cEntity Type Display Name\u003e`.\nNote: Environments and users are under construction and will be available\nsoon. If \u003cEnvironment ID\u003e is not specified, we assume default 'draft'\nenvironment. If \u003cUser ID\u003e is not specified, we assume default '-' user.", + "location": "path", + "pattern": "^projects/[^/]+/agent/environments/[^/]+/users/[^/]+/sessions/[^/]+/entityTypes/[^/]+$", + "required": true, + "type": "string" + }, + "updateMask": { + "description": "Optional. The mask to control which fields get updated.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + } + }, + "path": "v2beta1/{+name}", + "request": { + "$ref": "GoogleCloudDialogflowV2beta1SessionEntityType" + }, + "response": { + "$ref": "GoogleCloudDialogflowV2beta1SessionEntityType" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + } + } + } + } + } + } + }, + "intents": { + "methods": { + "batchDelete": { + "description": "Deletes intents in the specified agent.\n\nOperation \u003cresponse: google.protobuf.Empty\u003e", + "flatPath": "v2beta1/projects/{projectsId}/agent/intents:batchDelete", + "httpMethod": "POST", + "id": "dialogflow.projects.agent.intents.batchDelete", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. The name of the agent to delete all entities types for. Format:\n`projects/\u003cProject ID\u003e/agent`.", + "location": "path", + "pattern": "^projects/[^/]+/agent$", + "required": true, + "type": "string" + } + }, + "path": "v2beta1/{+parent}/intents:batchDelete", + "request": { + "$ref": "GoogleCloudDialogflowV2beta1BatchDeleteIntentsRequest" + }, + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "batchUpdate": { + "description": "Updates/Creates multiple intents in the specified agent.\n\nOperation \u003cresponse: BatchUpdateIntentsResponse\u003e", + "flatPath": "v2beta1/projects/{projectsId}/agent/intents:batchUpdate", + "httpMethod": "POST", + "id": "dialogflow.projects.agent.intents.batchUpdate", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. The name of the agent to update or create intents in.\nFormat: `projects/\u003cProject ID\u003e/agent`.", + "location": "path", + "pattern": "^projects/[^/]+/agent$", + "required": true, + "type": "string" + } + }, + "path": "v2beta1/{+parent}/intents:batchUpdate", + "request": { + "$ref": "GoogleCloudDialogflowV2beta1BatchUpdateIntentsRequest" + }, + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "create": { + "description": "Creates an intent in the specified agent.", + "flatPath": "v2beta1/projects/{projectsId}/agent/intents", + "httpMethod": "POST", + "id": "dialogflow.projects.agent.intents.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "intentView": { + "description": "Optional. The resource view to apply to the returned intent.", + "enum": [ + "INTENT_VIEW_UNSPECIFIED", + "INTENT_VIEW_FULL" + ], + "location": "query", + "type": "string" + }, + "languageCode": { + "description": "Optional. The language of training phrases, parameters and rich messages\ndefined in `intent`. If not specified, the agent's default language is\nused. [More than a dozen\nlanguages](https://dialogflow.com/docs/reference/language) are supported.\nNote: languages must be enabled in the agent, before they can be used.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The agent to create a intent for.\nFormat: `projects/\u003cProject ID\u003e/agent`.", + "location": "path", + "pattern": "^projects/[^/]+/agent$", + "required": true, + "type": "string" + } + }, + "path": "v2beta1/{+parent}/intents", + "request": { + "$ref": "GoogleCloudDialogflowV2beta1Intent" + }, + "response": { + "$ref": "GoogleCloudDialogflowV2beta1Intent" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Deletes the specified intent.", + "flatPath": "v2beta1/projects/{projectsId}/agent/intents/{intentsId}", + "httpMethod": "DELETE", + "id": "dialogflow.projects.agent.intents.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the intent to delete.\nFormat: `projects/\u003cProject ID\u003e/agent/intents/\u003cIntent ID\u003e`.", + "location": "path", + "pattern": "^projects/[^/]+/agent/intents/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2beta1/{+name}", + "response": { + "$ref": "GoogleProtobufEmpty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Retrieves the specified intent.", + "flatPath": "v2beta1/projects/{projectsId}/agent/intents/{intentsId}", + "httpMethod": "GET", + "id": "dialogflow.projects.agent.intents.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "intentView": { + "description": "Optional. The resource view to apply to the returned intent.", + "enum": [ + "INTENT_VIEW_UNSPECIFIED", + "INTENT_VIEW_FULL" + ], + "location": "query", + "type": "string" + }, + "languageCode": { + "description": "Optional. The language to retrieve training phrases, parameters and rich\nmessages for. If not specified, the agent's default language is used.\n[More than a dozen\nlanguages](https://dialogflow.com/docs/reference/language) are supported.\nNote: languages must be enabled in the agent, before they can be used.", + "location": "query", + "type": "string" + }, + "name": { + "description": "Required. The name of the intent.\nFormat: `projects/\u003cProject ID\u003e/agent/intents/\u003cIntent ID\u003e`.", + "location": "path", + "pattern": "^projects/[^/]+/agent/intents/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2beta1/{+name}", + "response": { + "$ref": "GoogleCloudDialogflowV2beta1Intent" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Returns the list of all intents in the specified agent.", + "flatPath": "v2beta1/projects/{projectsId}/agent/intents", + "httpMethod": "GET", + "id": "dialogflow.projects.agent.intents.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "intentView": { + "description": "Optional. The resource view to apply to the returned intent.", + "enum": [ + "INTENT_VIEW_UNSPECIFIED", + "INTENT_VIEW_FULL" + ], + "location": "query", + "type": "string" + }, + "languageCode": { + "description": "Optional. The language to list training phrases, parameters and rich\nmessages for. If not specified, the agent's default language is used.\n[More than a dozen\nlanguages](https://dialogflow.com/docs/reference/language) are supported.\nNote: languages must be enabled in the agent before they can be used.", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "Optional. The maximum number of items to return in a single page. By\ndefault 100 and at most 1000.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional. The next_page_token value returned from a previous list request.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The agent to list all intents from.\nFormat: `projects/\u003cProject ID\u003e/agent`.", + "location": "path", + "pattern": "^projects/[^/]+/agent$", + "required": true, + "type": "string" + } + }, + "path": "v2beta1/{+parent}/intents", + "response": { + "$ref": "GoogleCloudDialogflowV2beta1ListIntentsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "patch": { + "description": "Updates the specified intent.", + "flatPath": "v2beta1/projects/{projectsId}/agent/intents/{intentsId}", + "httpMethod": "PATCH", + "id": "dialogflow.projects.agent.intents.patch", + "parameterOrder": [ + "name" + ], + "parameters": { + "intentView": { + "description": "Optional. The resource view to apply to the returned intent.", + "enum": [ + "INTENT_VIEW_UNSPECIFIED", + "INTENT_VIEW_FULL" + ], + "location": "query", + "type": "string" + }, + "languageCode": { + "description": "Optional. The language of training phrases, parameters and rich messages\ndefined in `intent`. If not specified, the agent's default language is\nused. [More than a dozen\nlanguages](https://dialogflow.com/docs/reference/language) are supported.\nNote: languages must be enabled in the agent, before they can be used.", + "location": "query", + "type": "string" + }, + "name": { + "description": "Required for all methods except `create` (`create` populates the name\nautomatically.\nThe unique identifier of this intent.\nFormat: `projects/\u003cProject ID\u003e/agent/intents/\u003cIntent ID\u003e`.", + "location": "path", + "pattern": "^projects/[^/]+/agent/intents/[^/]+$", + "required": true, + "type": "string" + }, + "updateMask": { + "description": "Optional. The mask to control which fields get updated.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + } + }, + "path": "v2beta1/{+name}", + "request": { + "$ref": "GoogleCloudDialogflowV2beta1Intent" + }, + "response": { + "$ref": "GoogleCloudDialogflowV2beta1Intent" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + }, + "sessions": { + "methods": { + "deleteContexts": { + "description": "Deletes all active contexts in the specified session.", + "flatPath": "v2beta1/projects/{projectsId}/agent/sessions/{sessionsId}/contexts", + "httpMethod": "DELETE", + "id": "dialogflow.projects.agent.sessions.deleteContexts", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. The name of the session to delete all contexts from. Format:\n`projects/\u003cProject ID\u003e/agent/sessions/\u003cSession ID\u003e` or `projects/\u003cProject\nID\u003e/agent/environments/\u003cEnvironment ID\u003e/users/\u003cUser ID\u003e/sessions/\u003cSession\nID\u003e`. Note: Environments and users are under construction and will be\navailable soon. If \u003cEnvironment ID\u003e is not specified we assume default\n'draft' environment. If \u003cUser ID\u003e is not specified, we assume default\n'-' user.", + "location": "path", + "pattern": "^projects/[^/]+/agent/sessions/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2beta1/{+parent}/contexts", + "response": { + "$ref": "GoogleProtobufEmpty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "detectIntent": { + "description": "Processes a natural language query and returns structured, actionable data\nas a result. This method is not idempotent, because it may cause contexts\nand session entity types to be updated, which in turn might affect\nresults of future queries.", + "flatPath": "v2beta1/projects/{projectsId}/agent/sessions/{sessionsId}:detectIntent", + "httpMethod": "POST", + "id": "dialogflow.projects.agent.sessions.detectIntent", + "parameterOrder": [ + "session" + ], + "parameters": { + "session": { + "description": "Required. The name of the session this query is sent to. Format:\n`projects/\u003cProject ID\u003e/agent/sessions/\u003cSession ID\u003e`, or\n`projects/\u003cProject ID\u003e/agent/environments/\u003cEnvironment ID\u003e/users/\u003cUser\nID\u003e/sessions/\u003cSession ID\u003e`. Note: Environments and users are under\nconstruction and will be available soon. If \u003cEnvironment ID\u003e is not\nspecified, we assume default 'draft' environment. If \u003cUser ID\u003e is not\nspecified, we are using \"-\". It’s up to the API caller to choose an\nappropriate \u003cSession ID\u003e. and \u003cUser Id\u003e. They can be a random numbers or\nsome type of user and session identifiers (preferably hashed). The length\nof the \u003cSession ID\u003e and \u003cUser ID\u003e must not exceed 36 characters.", + "location": "path", + "pattern": "^projects/[^/]+/agent/sessions/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2beta1/{+session}:detectIntent", + "request": { + "$ref": "GoogleCloudDialogflowV2beta1DetectIntentRequest" + }, + "response": { + "$ref": "GoogleCloudDialogflowV2beta1DetectIntentResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + }, + "resources": { + "contexts": { + "methods": { + "create": { + "description": "Creates a context.", + "flatPath": "v2beta1/projects/{projectsId}/agent/sessions/{sessionsId}/contexts", + "httpMethod": "POST", + "id": "dialogflow.projects.agent.sessions.contexts.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. The session to create a context for.\nFormat: `projects/\u003cProject ID\u003e/agent/sessions/\u003cSession ID\u003e` or\n`projects/\u003cProject ID\u003e/agent/environments/\u003cEnvironment ID\u003e/users/\u003cUser\nID\u003e/sessions/\u003cSession ID\u003e`. Note: Environments and users are under\nconstruction and will be available soon. If \u003cEnvironment ID\u003e is not\nspecified, we assume default 'draft' environment. If \u003cUser ID\u003e is not\nspecified, we assume default '-' user.", + "location": "path", + "pattern": "^projects/[^/]+/agent/sessions/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2beta1/{+parent}/contexts", + "request": { + "$ref": "GoogleCloudDialogflowV2beta1Context" + }, + "response": { + "$ref": "GoogleCloudDialogflowV2beta1Context" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Deletes the specified context.", + "flatPath": "v2beta1/projects/{projectsId}/agent/sessions/{sessionsId}/contexts/{contextsId}", + "httpMethod": "DELETE", + "id": "dialogflow.projects.agent.sessions.contexts.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the context to delete. Format:\n`projects/\u003cProject ID\u003e/agent/sessions/\u003cSession ID\u003e/contexts/\u003cContext ID\u003e`\nor `projects/\u003cProject ID\u003e/agent/environments/\u003cEnvironment ID\u003e/users/\u003cUser\nID\u003e/sessions/\u003cSession ID\u003e/contexts/\u003cContext ID\u003e`. Note: Environments and\nusers are under construction and will be available soon. If \u003cEnvironment\nID\u003e is not specified, we assume default 'draft' environment. If \u003cUser ID\u003e\nis not specified, we assume default\n'-' user.", + "location": "path", + "pattern": "^projects/[^/]+/agent/sessions/[^/]+/contexts/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2beta1/{+name}", + "response": { + "$ref": "GoogleProtobufEmpty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Retrieves the specified context.", + "flatPath": "v2beta1/projects/{projectsId}/agent/sessions/{sessionsId}/contexts/{contextsId}", + "httpMethod": "GET", + "id": "dialogflow.projects.agent.sessions.contexts.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the context. Format:\n`projects/\u003cProject ID\u003e/agent/sessions/\u003cSession ID\u003e/contexts/\u003cContext ID\u003e`\nor `projects/\u003cProject ID\u003e/agent/environments/\u003cEnvironment ID\u003e/users/\u003cUser\nID\u003e/sessions/\u003cSession ID\u003e/contexts/\u003cContext ID\u003e`. Note: Environments and\nusers are under construction and will be available soon. If \u003cEnvironment\nID\u003e is not specified, we assume default 'draft' environment. If \u003cUser ID\u003e\nis not specified, we assume default '-' user.", + "location": "path", + "pattern": "^projects/[^/]+/agent/sessions/[^/]+/contexts/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2beta1/{+name}", + "response": { + "$ref": "GoogleCloudDialogflowV2beta1Context" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Returns the list of all contexts in the specified session.", + "flatPath": "v2beta1/projects/{projectsId}/agent/sessions/{sessionsId}/contexts", + "httpMethod": "GET", + "id": "dialogflow.projects.agent.sessions.contexts.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "pageSize": { + "description": "Optional. The maximum number of items to return in a single page. By\ndefault 100 and at most 1000.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional. The next_page_token value returned from a previous list request.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The session to list all contexts from.\nFormat: `projects/\u003cProject ID\u003e/agent/sessions/\u003cSession ID\u003e` or\n`projects/\u003cProject ID\u003e/agent/environments/\u003cEnvironment ID\u003e/users/\u003cUser\nID\u003e/sessions/\u003cSession ID\u003e`. Note: Environments and users are under\nconstruction and will be available soon. If \u003cEnvironment ID\u003e is not\nspecified, we assume default 'draft' environment. If \u003cUser ID\u003e is not\nspecified, we assume default '-' user.", + "location": "path", + "pattern": "^projects/[^/]+/agent/sessions/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2beta1/{+parent}/contexts", + "response": { + "$ref": "GoogleCloudDialogflowV2beta1ListContextsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "patch": { + "description": "Updates the specified context.", + "flatPath": "v2beta1/projects/{projectsId}/agent/sessions/{sessionsId}/contexts/{contextsId}", + "httpMethod": "PATCH", + "id": "dialogflow.projects.agent.sessions.contexts.patch", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The unique identifier of the context. Format:\n`projects/\u003cProject ID\u003e/agent/sessions/\u003cSession ID\u003e/contexts/\u003cContext ID\u003e`,\nor\n`projects/\u003cProject ID\u003e/agent/environments/\u003cEnvironment ID\u003e/users/\u003cUser\nID\u003e/sessions/\u003cSession ID\u003e/contexts/\u003cContext ID\u003e`. Note: Environments and\nusers are under construction and will be available soon. The Context ID is\nalways converted to lowercase. If \u003cEnvironment ID\u003e is not specified, we\nassume default 'draft' environment. If \u003cUser ID\u003e is not specified, we\nassume default '-' user.", + "location": "path", + "pattern": "^projects/[^/]+/agent/sessions/[^/]+/contexts/[^/]+$", + "required": true, + "type": "string" + }, + "updateMask": { + "description": "Optional. The mask to control which fields get updated.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + } + }, + "path": "v2beta1/{+name}", + "request": { + "$ref": "GoogleCloudDialogflowV2beta1Context" + }, + "response": { + "$ref": "GoogleCloudDialogflowV2beta1Context" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + }, + "entityTypes": { + "methods": { + "create": { + "description": "Creates a session entity type.", + "flatPath": "v2beta1/projects/{projectsId}/agent/sessions/{sessionsId}/entityTypes", + "httpMethod": "POST", + "id": "dialogflow.projects.agent.sessions.entityTypes.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. The session to create a session entity type for.\nFormat: `projects/\u003cProject ID\u003e/agent/sessions/\u003cSession ID\u003e` or\n`projects/\u003cProject ID\u003e/agent/environments/\u003cEnvironment ID\u003e/users/\u003cUser ID\u003e/\nsessions/\u003cSession ID\u003e`.\nNote: Environments and users are under construction and will be available\nsoon. If \u003cEnvironment ID\u003e is not specified, we assume default 'draft'\nenvironment. If \u003cUser ID\u003e is not specified, we assume default '-' user.", + "location": "path", + "pattern": "^projects/[^/]+/agent/sessions/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2beta1/{+parent}/entityTypes", + "request": { + "$ref": "GoogleCloudDialogflowV2beta1SessionEntityType" + }, + "response": { + "$ref": "GoogleCloudDialogflowV2beta1SessionEntityType" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Deletes the specified session entity type.", + "flatPath": "v2beta1/projects/{projectsId}/agent/sessions/{sessionsId}/entityTypes/{entityTypesId}", + "httpMethod": "DELETE", + "id": "dialogflow.projects.agent.sessions.entityTypes.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the entity type to delete. Format:\n`projects/\u003cProject ID\u003e/agent/sessions/\u003cSession ID\u003e/entityTypes/\u003cEntity Type\nDisplay Name\u003e` or `projects/\u003cProject ID\u003e/agent/environments/\u003cEnvironment\nID\u003e/users/\u003cUser ID\u003e/sessions/\u003cSession ID\u003e/entityTypes/\u003cEntity Type Display\nName\u003e`.\nNote: Environments and users are under construction and will be available\nsoon. If \u003cEnvironment ID\u003e is not specified, we assume default 'draft'\nenvironment. If \u003cUser ID\u003e is not specified, we assume default '-' user.", + "location": "path", + "pattern": "^projects/[^/]+/agent/sessions/[^/]+/entityTypes/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2beta1/{+name}", + "response": { + "$ref": "GoogleProtobufEmpty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Retrieves the specified session entity type.", + "flatPath": "v2beta1/projects/{projectsId}/agent/sessions/{sessionsId}/entityTypes/{entityTypesId}", + "httpMethod": "GET", + "id": "dialogflow.projects.agent.sessions.entityTypes.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the session entity type. Format:\n`projects/\u003cProject ID\u003e/agent/sessions/\u003cSession ID\u003e/entityTypes/\u003cEntity Type\nDisplay Name\u003e` or `projects/\u003cProject ID\u003e/agent/environments/\u003cEnvironment\nID\u003e/users/\u003cUser ID\u003e/sessions/\u003cSession ID\u003e/\nentityTypes/\u003cEntity Type Display Name\u003e`.\nNote: Environments and users re under construction and will be available\nsoon. If \u003cEnvironment ID\u003e is not specified, we assume default 'draft'\nenvironment. If \u003cUser ID\u003e is not specified, we assume default '-' user.", + "location": "path", + "pattern": "^projects/[^/]+/agent/sessions/[^/]+/entityTypes/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2beta1/{+name}", + "response": { + "$ref": "GoogleCloudDialogflowV2beta1SessionEntityType" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Returns the list of all session entity types in the specified session.", + "flatPath": "v2beta1/projects/{projectsId}/agent/sessions/{sessionsId}/entityTypes", + "httpMethod": "GET", + "id": "dialogflow.projects.agent.sessions.entityTypes.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "pageSize": { + "description": "Optional. The maximum number of items to return in a single page. By\ndefault 100 and at most 1000.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional. The next_page_token value returned from a previous list request.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The session to list all session entity types from.\nFormat: `projects/\u003cProject ID\u003e/agent/sessions/\u003cSession ID\u003e` or\n`projects/\u003cProject ID\u003e/agent/environments/\u003cEnvironment ID\u003e/users/\u003cUser ID\u003e/\nsessions/\u003cSession ID\u003e`.\nNote: Environments and users are under construction and will be available\nsoon. If \u003cEnvironment ID\u003e is not specified, we assume default 'draft'\nenvironment. If \u003cUser ID\u003e is not specified, we assume default '-' user.", + "location": "path", + "pattern": "^projects/[^/]+/agent/sessions/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2beta1/{+parent}/entityTypes", + "response": { + "$ref": "GoogleCloudDialogflowV2beta1ListSessionEntityTypesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "patch": { + "description": "Updates the specified session entity type.", + "flatPath": "v2beta1/projects/{projectsId}/agent/sessions/{sessionsId}/entityTypes/{entityTypesId}", + "httpMethod": "PATCH", + "id": "dialogflow.projects.agent.sessions.entityTypes.patch", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The unique identifier of this session entity type. Format:\n`projects/\u003cProject ID\u003e/agent/sessions/\u003cSession ID\u003e/entityTypes/\u003cEntity Type\nDisplay Name\u003e`, or\n`projects/\u003cProject ID\u003e/agent/environments/\u003cEnvironment ID\u003e/users/\u003cUser\nID\u003e/sessions\n/\u003cSession ID\u003e/entityTypes/\u003cEntity Type Display Name\u003e`.\nNote: Environments and users are under construction and will be available\nsoon. If \u003cEnvironment ID\u003e is not specified, we assume default 'draft'\nenvironment. If \u003cUser ID\u003e is not specified, we assume default '-' user.", + "location": "path", + "pattern": "^projects/[^/]+/agent/sessions/[^/]+/entityTypes/[^/]+$", + "required": true, + "type": "string" + }, + "updateMask": { + "description": "Optional. The mask to control which fields get updated.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + } + }, + "path": "v2beta1/{+name}", + "request": { + "$ref": "GoogleCloudDialogflowV2beta1SessionEntityType" + }, + "response": { + "$ref": "GoogleCloudDialogflowV2beta1SessionEntityType" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + } + } + } + } }, - "postback": { - "description": "Optional. The text to send back to the Dialogflow API or a URI to\nopen.", - "type": "string" + "operations": { + "methods": { + "get": { + "description": "Gets the latest state of a long-running operation. Clients can use this\nmethod to poll the operation result at intervals as recommended by the API\nservice.", + "flatPath": "v2beta1/projects/{projectsId}/operations/{operationsId}", + "httpMethod": "GET", + "id": "dialogflow.projects.operations.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource.", + "location": "path", + "pattern": "^projects/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2beta1/{+name}", + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } } - }, - "id": "IntentMessageCardButton" - }, - "ListEntityTypesResponse": { - "description": "The response message for EntityTypes.ListEntityTypes.", - "type": "object", + } + } + }, + "revision": "20180326", + "rootUrl": "https://dialogflow.googleapis.com/", + "schemas": { + "GoogleCloudDialogflowV2BatchUpdateEntityTypesResponse": { + "description": "The response message for EntityTypes.BatchUpdateEntityTypes.", + "id": "GoogleCloudDialogflowV2BatchUpdateEntityTypesResponse", "properties": { "entityTypes": { - "type": "array", + "description": "The collection of updated or created entity types.", "items": { - "$ref": "EntityType" + "$ref": "GoogleCloudDialogflowV2EntityType" }, - "description": "The list of agent entity types. There will be a maximum number of items\nreturned based on the page_size field in the request." - }, - "nextPageToken": { - "description": "Token to retrieve the next page of results, or empty if there are no\nmore results in the list.", - "type": "string" + "type": "array" } }, - "id": "ListEntityTypesResponse" + "type": "object" }, - "QueryResult": { - "description": "Represents the result of conversational query or event processing.", - "type": "object", + "GoogleCloudDialogflowV2BatchUpdateIntentsResponse": { + "description": "The response message for Intents.BatchUpdateIntents.", + "id": "GoogleCloudDialogflowV2BatchUpdateIntentsResponse", "properties": { - "webhookSource": { - "description": "If the query was fulfilled by a webhook call, this field is set to the\nvalue of the `source` field returned in the webhook response.", - "type": "string" + "intents": { + "description": "The collection of updated or created intents.", + "items": { + "$ref": "GoogleCloudDialogflowV2Intent" + }, + "type": "array" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2Context": { + "description": "Represents a context.", + "id": "GoogleCloudDialogflowV2Context", + "properties": { + "lifespanCount": { + "description": "Optional. The number of conversational query requests after which the\ncontext expires. If set to `0` (the default) the context expires\nimmediately. Contexts expire automatically after 10 minutes even if there\nare no matching queries.", + "format": "int32", + "type": "integer" }, - "fulfillmentText": { - "description": "The text to be pronounced to the user or shown on the screen.", + "name": { + "description": "Required. The unique identifier of the context. Format:\n`projects/\u003cProject ID\u003e/agent/sessions/\u003cSession ID\u003e/contexts/\u003cContext ID\u003e`.", "type": "string" }, "parameters": { - "additionalProperties": { - "type": "any", - "description": "Properties of the object." - }, - "description": "The collection of extracted parameters.", - "type": "object" - }, - "intentDetectionConfidence": { - "description": "The intent detection confidence. Values range from 0.0\n(completely uncertain) to 1.0 (completely certain).", - "format": "float", - "type": "number" - }, - "allRequiredParamsPresent": { - "description": "This field is set to:\n- `false` if the matched intent has required parameters and not all of\n the required parameter values have been collected.\n- `true` if all required parameter values have been collected, or if the\n matched intent doesn't contain any required parameters.", - "type": "boolean" - }, - "speechRecognitionConfidence": { - "description": "The Speech recognition confidence between 0.0 and 1.0. A higher number\nindicates an estimated greater likelihood that the recognized words are\ncorrect. The default of 0.0 is a sentinel value indicating that confidence\nwas not set.\n\nYou should not rely on this field as it isn't guaranteed to be accurate, or\neven set. In particular this field isn't set in Webhook calls and for\nStreamingDetectIntent since the streaming endpoint has separate confidence\nestimates per portion of the audio in StreamingRecognitionResult.", - "format": "float", - "type": "number" - }, - "queryText": { - "description": "The original conversational query text:\n- If natural language text was provided as input, `query_text` contains\n a copy of the input.\n- If natural language speech audio was provided as input, `query_text`\n contains the speech recognition result. If speech recognizer produced\n multiple alternatives, a particular one is picked.\n- If an event was provided as input, `query_text` is not set.", - "type": "string" - }, - "diagnosticInfo": { "additionalProperties": { "description": "Properties of the object.", "type": "any" }, - "description": "The free-form diagnostic info. For example, this field\ncould contain webhook call latency.", + "description": "Optional. The collection of parameters associated with this context.\nRefer to [this doc](https://dialogflow.com/docs/actions-and-parameters) for\nsyntax.", "type": "object" - }, - "intent": { - "$ref": "Intent", - "description": "The intent that matched the conversational query. Some, not\nall fields are filled in this message, including but not limited to:\n`name`, `display_name` and `webhook_state`." - }, - "languageCode": { - "description": "The language that was triggered during intent detection.\nSee [Language Support](https://dialogflow.com/docs/reference/language)\nfor a list of the currently supported language codes.", - "type": "string" - }, - "outputContexts": { - "description": "The collection of output contexts. If applicable,\n`output_contexts.parameters` contains entries with name\n`\u003cparameter name\u003e.original` containing the original parameter values\nbefore the query.", - "type": "array", - "items": { - "$ref": "Context" - } - }, - "webhookPayload": { - "additionalProperties": { - "description": "Properties of the object.", - "type": "any" - }, - "description": "If the query was fulfilled by a webhook call, this field is set to the\nvalue of the `payload` field returned in the webhook response.", - "type": "object" - }, - "fulfillmentMessages": { - "description": "The collection of rich messages to present to the user.", - "type": "array", - "items": { - "$ref": "IntentMessage" - } - }, - "action": { - "description": "The action name from the matched intent.", - "type": "string" } }, - "id": "QueryResult" - }, - "BatchDeleteEntityTypesRequest": { - "description": "The request message for EntityTypes.BatchDeleteEntityTypes.", - "type": "object", - "properties": { - "entityTypeNames": { - "description": "Required. The names entity types to delete. All names must point to the\nsame agent as `parent`.", - "type": "array", - "items": { - "type": "string" - } - } - }, - "id": "BatchDeleteEntityTypesRequest" - }, - "BatchUpdateEntityTypesResponse": { - "properties": { - "entityTypes": { - "description": "The collection of updated or created entity types.", - "type": "array", - "items": { - "$ref": "EntityType" - } - } - }, - "id": "BatchUpdateEntityTypesResponse", - "description": "The response message for EntityTypes.BatchUpdateEntityTypes.", "type": "object" }, - "IntentMessageCard": { - "type": "object", + "GoogleCloudDialogflowV2EntityType": { + "description": "Represents an entity type.\nEntity types serve as a tool for extracting parameter values from natural\nlanguage queries.", + "id": "GoogleCloudDialogflowV2EntityType", "properties": { - "title": { - "type": "string", - "description": "Optional. The title of the card." - }, - "buttons": { - "type": "array", - "items": { - "$ref": "IntentMessageCardButton" - }, - "description": "Optional. The collection of card buttons." - }, - "subtitle": { - "description": "Optional. The subtitle of the card.", + "autoExpansionMode": { + "description": "Optional. Indicates whether the entity type can be automatically\nexpanded.", + "enum": [ + "AUTO_EXPANSION_MODE_UNSPECIFIED", + "AUTO_EXPANSION_MODE_DEFAULT" + ], + "enumDescriptions": [ + "Auto expansion disabled for the entity.", + "Allows an agent to recognize values that have not been explicitly\nlisted in the entity." + ], "type": "string" }, - "imageUri": { - "description": "Optional. The public URI to an image file for the card.", + "displayName": { + "description": "Required. The name of the entity.", + "type": "string" + }, + "entities": { + "description": "Optional. The collection of entities associated with the entity type.", + "items": { + "$ref": "GoogleCloudDialogflowV2EntityTypeEntity" + }, + "type": "array" + }, + "kind": { + "description": "Required. Indicates the kind of entity type.", + "enum": [ + "KIND_UNSPECIFIED", + "KIND_MAP", + "KIND_LIST" + ], + "enumDescriptions": [ + "Not specified. This value should be never used.", + "Map entity types allow mapping of a group of synonyms to a canonical\nvalue.", + "List entity types contain a set of entries that do not map to canonical\nvalues. However, list entity types can contain references to other entity\ntypes (with or without aliases)." + ], + "type": "string" + }, + "name": { + "description": "Required for all methods except `create` (`create` populates the name\nautomatically.\nThe unique identifier of the entity type. Format:\n`projects/\u003cProject ID\u003e/agent/entityTypes/\u003cEntity Type ID\u003e`.", "type": "string" } }, - "id": "IntentMessageCard", - "description": "The card response message." + "type": "object" }, - "QueryParameters": { - "description": "Represents the parameters of the conversational query.", - "type": "object", + "GoogleCloudDialogflowV2EntityTypeEntity": { + "description": "Optional. Represents an entity.", + "id": "GoogleCloudDialogflowV2EntityTypeEntity", "properties": { - "payload": { + "synonyms": { + "description": "Required. A collection of synonyms. For `KIND_LIST` entity types this\nmust contain exactly one synonym equal to `value`.", + "items": { + "type": "string" + }, + "type": "array" + }, + "value": { + "description": "Required.\nFor `KIND_MAP` entity types:\n A canonical name to be used in place of synonyms.\nFor `KIND_LIST` entity types:\n A string that can contain references to other entity types (with or\n without aliases).", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2EventInput": { + "description": "Events allow for matching intents by event name instead of the natural\nlanguage input. For instance, input `\u003cevent: { name: “welcome_event”,\nparameters: { name: “Sam” } }\u003e` can trigger a personalized welcome response.\nThe parameter `name` may be used by the agent in the response:\n`“Hello #welcome_event.name! What can I do for you today?”`.", + "id": "GoogleCloudDialogflowV2EventInput", + "properties": { + "languageCode": { + "description": "Required. The language of this query. See [Language\nSupport](https://dialogflow.com/docs/languages) for a list of the\ncurrently supported language codes. Note that queries in the same session\ndo not necessarily need to specify the same language.", + "type": "string" + }, + "name": { + "description": "Required. The unique identifier of the event.", + "type": "string" + }, + "parameters": { "additionalProperties": { "description": "Properties of the object.", "type": "any" }, - "description": "Optional. This field can be used to pass custom data into the webhook\nassociated with the agent. Arbitrary JSON objects are supported.", + "description": "Optional. The collection of parameters associated with the event.", "type": "object" - }, - "geoLocation": { - "description": "Optional. The geo location of this conversational query.", - "$ref": "LatLng" - }, - "resetContexts": { - "description": "Optional. Specifies whether to delete all contexts in the current session\nbefore the new ones are activated.", - "type": "boolean" - }, - "contexts": { - "description": "Optional. The collection of contexts to be activated before this query is\nexecuted.", - "type": "array", - "items": { - "$ref": "Context" - } - }, - "timeZone": { - "type": "string", - "description": "Optional. The time zone of this conversational query from the\n[time zone database](https://www.iana.org/time-zones), e.g.,\nAmerica/New_York, Europe/Paris. If not provided, the time zone specified in\nagent settings is used." - }, - "sessionEntityTypes": { - "description": "Optional. The collection of session entity types to replace or extend\ndeveloper entities with for this query only. The entity synonyms apply\nto all languages.", - "type": "array", - "items": { - "$ref": "SessionEntityType" - } } }, - "id": "QueryParameters" + "type": "object" }, - "Intent": { - "description": "Represents an intent.\nIntents convert a number of user expressions or patterns into an action. An\naction is an extraction of a user command or sentence semantics.", - "type": "object", + "GoogleCloudDialogflowV2ExportAgentResponse": { + "description": "The response message for Agents.ExportAgent.", + "id": "GoogleCloudDialogflowV2ExportAgentResponse", "properties": { - "parentFollowupIntentName": { - "description": "The unique identifier of the parent intent in the chain of followup\nintents.\nIt identifies the parent followup intent.\nFormat: `projects/\u003cProject ID\u003e/agent/intents/\u003cIntent ID\u003e`.", + "agentContent": { + "description": "The exported agent.\n\nExample for how to export an agent to a zip file via a command line:\n\ncurl \\\n 'https://dialogflow.googleapis.com/v2/projects/\u003cproject_name\u003e/agent:export'\\\n -X POST \\\n -H 'Authorization: Bearer '$(gcloud auth print-access-token) \\\n -H 'Accept: application/json' \\\n -H 'Content-Type: application/json' \\\n --compressed \\\n --data-binary '{}' \\\n| grep agentContent | sed -e 's/.*\"agentContent\": \"\\([^\"]*\\)\".*/\\1/' \\\n| base64 --decode \u003e \u003cagent zip file\u003e", + "format": "byte", "type": "string" }, - "events": { - "description": "Optional. The collection of event names that trigger the intent.\nIf the collection of input contexts is not empty, all of the contexts must\nbe present in the active user session for an event to trigger this intent.", - "type": "array", - "items": { - "type": "string" - } - }, - "priority": { - "description": "Optional. The priority of this intent. Higher numbers represent higher\npriorities. Zero or negative numbers mean that the intent is disabled.", - "format": "int32", - "type": "integer" - }, - "outputContexts": { - "description": "Optional. The collection of contexts that are activated when the intent\nis matched. Context messages in this collection should not set the\nparameters field. Setting the `lifespan_count` to 0 will reset the context\nwhen the intent is matched.\nFormat: `projects/\u003cProject ID\u003e/agent/sessions/-/contexts/\u003cContext ID\u003e`.", - "type": "array", - "items": { - "$ref": "Context" - } + "agentUri": { + "description": "The URI to a file containing the exported agent. This field is populated\nonly if `agent_uri` is specified in `ExportAgentRequest`.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2Intent": { + "description": "Represents an intent.\nIntents convert a number of user expressions or patterns into an action. An\naction is an extraction of a user command or sentence semantics.", + "id": "GoogleCloudDialogflowV2Intent", + "properties": { + "action": { + "description": "Optional. The name of the action associated with the intent.", + "type": "string" }, "defaultResponsePlatforms": { + "description": "Optional. The list of platforms for which the first response will be\ntaken from among the messages assigned to the DEFAULT_PLATFORM.", "enumDescriptions": [ "Not specified.", "Facebook.", @@ -317,8 +1827,6 @@ "Viber.", "Actions on Google." ], - "description": "Optional. The list of platforms for which the first response will be\ntaken from among the messages assigned to the DEFAULT_PLATFORM.", - "type": "array", "items": { "enum": [ "PLATFORM_UNSPECIFIED", @@ -332,248 +1840,732 @@ "ACTIONS_ON_GOOGLE" ], "type": "string" - } + }, + "type": "array" }, - "action": { - "type": "string", - "description": "Optional. The name of the action associated with the intent." - }, - "name": { - "description": "Required for all methods except `create` (`create` populates the name\nautomatically.\nThe unique identifier of this intent.\nFormat: `projects/\u003cProject ID\u003e/agent/intents/\u003cIntent ID\u003e`.", + "displayName": { + "description": "Required. The name of this intent.", "type": "string" }, - "messages": { - "description": "Optional. The collection of rich messages corresponding to the\n`Response` field in API.AI console.", - "type": "array", - "items": { - "$ref": "IntentMessage" - } - }, - "inputContextNames": { - "description": "Optional. The list of context names required for this intent to be\ntriggered.\nFormat: `projects/\u003cProject ID\u003e/agent/sessions/-/contexts/\u003cContext ID\u003e`.", - "type": "array", + "events": { + "description": "Optional. The collection of event names that trigger the intent.\nIf the collection of input contexts is not empty, all of the contexts must\nbe present in the active user session for an event to trigger this intent.", "items": { "type": "string" - } - }, - "webhookState": { - "enumDescriptions": [ - "Webhook is disabled in the agent and in the intent.", - "Webhook is enabled in the agent and in the intent.", - "Webhook is enabled in the agent and in the intent. Also, each slot\nfilling prompt is forwarded to the webhook." - ], - "enum": [ - "WEBHOOK_STATE_UNSPECIFIED", - "WEBHOOK_STATE_ENABLED", - "WEBHOOK_STATE_ENABLED_FOR_SLOT_FILLING" - ], - "description": "Required. Indicates whether webhooks are enabled for the intent.", - "type": "string" + }, + "type": "array" }, "followupIntentInfo": { "description": "Optional. Collection of information about all followup intents that have\nname of this intent as a root_name.", - "type": "array", "items": { - "$ref": "IntentFollowupIntentInfo" - } + "$ref": "GoogleCloudDialogflowV2IntentFollowupIntentInfo" + }, + "type": "array" }, - "displayName": { - "type": "string", - "description": "Required. The name of this intent." - }, - "rootFollowupIntentName": { - "description": "The unique identifier of the root intent in the chain of followup intents.\nIt identifies the correct followup intents chain for this intent.\nFormat: `projects/\u003cProject ID\u003e/agent/intents/\u003cIntent ID\u003e`.", - "type": "string" + "inputContextNames": { + "description": "Optional. The list of context names required for this intent to be\ntriggered.\nFormat: `projects/\u003cProject ID\u003e/agent/sessions/-/contexts/\u003cContext ID\u003e`.", + "items": { + "type": "string" + }, + "type": "array" }, "isFallback": { "description": "Optional. Indicates whether this is a fallback intent.", "type": "boolean" }, - "mlEnabled": { - "description": "Optional. Indicates whether Machine Learning is enabled for the intent.\nNote: If `ml_enabled` setting is set to false, then this intent is not\ntaken into account during inference in `ML ONLY` match mode. Also,\nauto-markup in the UI is turned off.", + "messages": { + "description": "Optional. The collection of rich messages corresponding to the\n`Response` field in the Dialogflow console.", + "items": { + "$ref": "GoogleCloudDialogflowV2IntentMessage" + }, + "type": "array" + }, + "mlDisabled": { + "description": "Optional. Indicates whether Machine Learning is disabled for the intent.\nNote: If `ml_diabled` setting is set to true, then this intent is not\ntaken into account during inference in `ML ONLY` match mode. Also,\nauto-markup in the UI is turned off.", "type": "boolean" }, - "trainingPhrases": { - "description": "Optional. The collection of examples/templates that the agent is\ntrained on.", - "type": "array", + "name": { + "description": "Required for all methods except `create` (`create` populates the name\nautomatically.\nThe unique identifier of this intent.\nFormat: `projects/\u003cProject ID\u003e/agent/intents/\u003cIntent ID\u003e`.", + "type": "string" + }, + "outputContexts": { + "description": "Optional. The collection of contexts that are activated when the intent\nis matched. Context messages in this collection should not set the\nparameters field. Setting the `lifespan_count` to 0 will reset the context\nwhen the intent is matched.\nFormat: `projects/\u003cProject ID\u003e/agent/sessions/-/contexts/\u003cContext ID\u003e`.", "items": { - "$ref": "IntentTrainingPhrase" - } + "$ref": "GoogleCloudDialogflowV2Context" + }, + "type": "array" + }, + "parameters": { + "description": "Optional. The collection of parameters associated with the intent.", + "items": { + "$ref": "GoogleCloudDialogflowV2IntentParameter" + }, + "type": "array" + }, + "parentFollowupIntentName": { + "description": "The unique identifier of the parent intent in the chain of followup\nintents.\nIt identifies the parent followup intent.\nFormat: `projects/\u003cProject ID\u003e/agent/intents/\u003cIntent ID\u003e`.", + "type": "string" + }, + "priority": { + "description": "Optional. The priority of this intent. Higher numbers represent higher\npriorities. Zero or negative numbers mean that the intent is disabled.", + "format": "int32", + "type": "integer" }, "resetContexts": { "description": "Optional. Indicates whether to delete all contexts in the current\nsession when this intent is matched.", "type": "boolean" }, - "parameters": { - "description": "Optional. The collection of parameters associated with the intent.", - "type": "array", + "rootFollowupIntentName": { + "description": "The unique identifier of the root intent in the chain of followup intents.\nIt identifies the correct followup intents chain for this intent.\nFormat: `projects/\u003cProject ID\u003e/agent/intents/\u003cIntent ID\u003e`.", + "type": "string" + }, + "trainingPhrases": { + "description": "Optional. The collection of examples/templates that the agent is\ntrained on.", "items": { - "$ref": "IntentParameter" - } + "$ref": "GoogleCloudDialogflowV2IntentTrainingPhrase" + }, + "type": "array" + }, + "webhookState": { + "description": "Required. Indicates whether webhooks are enabled for the intent.", + "enum": [ + "WEBHOOK_STATE_UNSPECIFIED", + "WEBHOOK_STATE_ENABLED", + "WEBHOOK_STATE_ENABLED_FOR_SLOT_FILLING" + ], + "enumDescriptions": [ + "Webhook is disabled in the agent and in the intent.", + "Webhook is enabled in the agent and in the intent.", + "Webhook is enabled in the agent and in the intent. Also, each slot\nfilling prompt is forwarded to the webhook." + ], + "type": "string" } }, - "id": "Intent" - }, - "BatchUpdateEntityTypesRequest": { - "description": "The request message for EntityTypes.BatchUpdateEntityTypes.", - "type": "object", - "properties": { - "entityTypeBatchUri": { - "description": "Warning: Importing entity types from a URI is not implemented yet.\nThis feature is coming soon.\nThe URI to a Google Cloud Storage file containing entity types to update\nor create. The file format can either be a serialized proto (of\nEntityBatch type) or a JSON object. Note: The URI must start with\n\"gs://\".", - "type": "string" - }, - "entityTypeBatchInline": { - "description": "The collection of entity type to update or create.", - "$ref": "EntityTypeBatch" - }, - "languageCode": { - "type": "string", - "description": "Optional. The language of entity synonyms defined in `entity_types`. If not\nspecified, the agent's default language is used.\n[More than a dozen\nlanguages](https://dialogflow.com/docs/reference/language) are supported.\nNote: languages must be enabled in the agent, before they can be used." - }, - "updateMask": { - "type": "string", - "description": "Optional. The mask to control which fields get updated.", - "format": "google-fieldmask" - } - }, - "id": "BatchUpdateEntityTypesRequest" - }, - "IntentTrainingPhrasePart": { - "id": "IntentTrainingPhrasePart", - "description": "Represents a part of a training phrase.", - "type": "object", - "properties": { - "text": { - "description": "Required. The text corresponding to the example or template,\nif there are no annotations. For\nannotated examples, it is the text for one of the example's parts.", - "type": "string" - }, - "entityType": { - "description": "Optional. The entity type name prefixed with `@`. This field is\nrequired for the annotated part of the text and applies only to\nexamples.", - "type": "string" - }, - "alias": { - "description": "Optional. The parameter name for the value extracted from the\nannotated part of the example.", - "type": "string" - }, - "userDefined": { - "description": "Optional. Indicates whether the text was manually annotated by the\ndeveloper.", - "type": "boolean" - } - } - }, - "IntentBatch": { - "type": "object", - "properties": { - "intents": { - "description": "A collection of intents.", - "type": "array", - "items": { - "$ref": "Intent" - } - } - }, - "id": "IntentBatch", - "description": "This message is a wrapper around a collection of intents." - }, - "BatchDeleteEntitiesRequest": { - "properties": { - "languageCode": { - "description": "Optional. The language of entity synonyms defined in `entities`. If not\nspecified, the agent's default language is used.\n[More than a dozen\nlanguages](https://dialogflow.com/docs/reference/language) are supported.\nNote: languages must be enabled in the agent, before they can be used.", - "type": "string" - }, - "entityValues": { - "description": "Required. The canonical `values` of the entities to delete. Note that\nthese are not fully-qualified names, i.e. they don't start with\n`projects/\u003cProject ID\u003e`.", - "type": "array", - "items": { - "type": "string" - } - } - }, - "id": "BatchDeleteEntitiesRequest", - "description": "The request message for EntityTypes.BatchDeleteEntities.", "type": "object" }, - "IntentMessageListSelect": { + "GoogleCloudDialogflowV2IntentFollowupIntentInfo": { + "description": "Represents a single followup intent in the chain.", + "id": "GoogleCloudDialogflowV2IntentFollowupIntentInfo", + "properties": { + "followupIntentName": { + "description": "The unique identifier of the followup intent.\nFormat: `projects/\u003cProject ID\u003e/agent/intents/\u003cIntent ID\u003e`.", + "type": "string" + }, + "parentFollowupIntentName": { + "description": "The unique identifier of the followup intent parent.\nFormat: `projects/\u003cProject ID\u003e/agent/intents/\u003cIntent ID\u003e`.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2IntentMessage": { + "description": "Corresponds to the `Response` field in the Dialogflow console.", + "id": "GoogleCloudDialogflowV2IntentMessage", + "properties": { + "basicCard": { + "$ref": "GoogleCloudDialogflowV2IntentMessageBasicCard", + "description": "The basic card response for Actions on Google." + }, + "card": { + "$ref": "GoogleCloudDialogflowV2IntentMessageCard", + "description": "The card response." + }, + "carouselSelect": { + "$ref": "GoogleCloudDialogflowV2IntentMessageCarouselSelect", + "description": "The carousel card response for Actions on Google." + }, + "image": { + "$ref": "GoogleCloudDialogflowV2IntentMessageImage", + "description": "The image response." + }, + "linkOutSuggestion": { + "$ref": "GoogleCloudDialogflowV2IntentMessageLinkOutSuggestion", + "description": "The link out suggestion chip for Actions on Google." + }, + "listSelect": { + "$ref": "GoogleCloudDialogflowV2IntentMessageListSelect", + "description": "The list card response for Actions on Google." + }, + "payload": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "description": "The response containing a custom payload.", + "type": "object" + }, + "platform": { + "description": "Optional. The platform that this message is intended for.", + "enum": [ + "PLATFORM_UNSPECIFIED", + "FACEBOOK", + "SLACK", + "TELEGRAM", + "KIK", + "SKYPE", + "LINE", + "VIBER", + "ACTIONS_ON_GOOGLE" + ], + "enumDescriptions": [ + "Not specified.", + "Facebook.", + "Slack.", + "Telegram.", + "Kik.", + "Skype.", + "Line.", + "Viber.", + "Actions on Google." + ], + "type": "string" + }, + "quickReplies": { + "$ref": "GoogleCloudDialogflowV2IntentMessageQuickReplies", + "description": "The quick replies response." + }, + "simpleResponses": { + "$ref": "GoogleCloudDialogflowV2IntentMessageSimpleResponses", + "description": "The voice and text-only responses for Actions on Google." + }, + "suggestions": { + "$ref": "GoogleCloudDialogflowV2IntentMessageSuggestions", + "description": "The suggestion chips for Actions on Google." + }, + "text": { + "$ref": "GoogleCloudDialogflowV2IntentMessageText", + "description": "The text response." + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2IntentMessageBasicCard": { + "description": "The basic card message. Useful for displaying information.", + "id": "GoogleCloudDialogflowV2IntentMessageBasicCard", + "properties": { + "buttons": { + "description": "Optional. The collection of card buttons.", + "items": { + "$ref": "GoogleCloudDialogflowV2IntentMessageBasicCardButton" + }, + "type": "array" + }, + "formattedText": { + "description": "Required, unless image is present. The body text of the card.", + "type": "string" + }, + "image": { + "$ref": "GoogleCloudDialogflowV2IntentMessageImage", + "description": "Optional. The image for the card." + }, + "subtitle": { + "description": "Optional. The subtitle of the card.", + "type": "string" + }, + "title": { + "description": "Optional. The title of the card.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2IntentMessageBasicCardButton": { + "description": "The button object that appears at the bottom of a card.", + "id": "GoogleCloudDialogflowV2IntentMessageBasicCardButton", + "properties": { + "openUriAction": { + "$ref": "GoogleCloudDialogflowV2IntentMessageBasicCardButtonOpenUriAction", + "description": "Required. Action to take when a user taps on the button." + }, + "title": { + "description": "Required. The title of the button.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2IntentMessageBasicCardButtonOpenUriAction": { + "description": "Opens the given URI.", + "id": "GoogleCloudDialogflowV2IntentMessageBasicCardButtonOpenUriAction", + "properties": { + "uri": { + "description": "Required. The HTTP or HTTPS scheme URI.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2IntentMessageCard": { + "description": "The card response message.", + "id": "GoogleCloudDialogflowV2IntentMessageCard", + "properties": { + "buttons": { + "description": "Optional. The collection of card buttons.", + "items": { + "$ref": "GoogleCloudDialogflowV2IntentMessageCardButton" + }, + "type": "array" + }, + "imageUri": { + "description": "Optional. The public URI to an image file for the card.", + "type": "string" + }, + "subtitle": { + "description": "Optional. The subtitle of the card.", + "type": "string" + }, + "title": { + "description": "Optional. The title of the card.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2IntentMessageCardButton": { + "description": "Optional. Contains information about a button.", + "id": "GoogleCloudDialogflowV2IntentMessageCardButton", + "properties": { + "postback": { + "description": "Optional. The text to send back to the Dialogflow API or a URI to\nopen.", + "type": "string" + }, + "text": { + "description": "Optional. The text to show on the button.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2IntentMessageCarouselSelect": { + "description": "The card for presenting a carousel of options to select from.", + "id": "GoogleCloudDialogflowV2IntentMessageCarouselSelect", + "properties": { + "items": { + "description": "Required. Carousel items.", + "items": { + "$ref": "GoogleCloudDialogflowV2IntentMessageCarouselSelectItem" + }, + "type": "array" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2IntentMessageCarouselSelectItem": { + "description": "An item in the carousel.", + "id": "GoogleCloudDialogflowV2IntentMessageCarouselSelectItem", + "properties": { + "description": { + "description": "Optional. The body text of the card.", + "type": "string" + }, + "image": { + "$ref": "GoogleCloudDialogflowV2IntentMessageImage", + "description": "Optional. The image to display." + }, + "info": { + "$ref": "GoogleCloudDialogflowV2IntentMessageSelectItemInfo", + "description": "Required. Additional info about the option item." + }, + "title": { + "description": "Required. Title of the carousel item.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2IntentMessageImage": { + "description": "The image response message.", + "id": "GoogleCloudDialogflowV2IntentMessageImage", + "properties": { + "accessibilityText": { + "description": "Optional. A text description of the image to be used for accessibility,\ne.g., screen readers.", + "type": "string" + }, + "imageUri": { + "description": "Optional. The public URI to an image file.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2IntentMessageLinkOutSuggestion": { + "description": "The suggestion chip message that allows the user to jump out to the app\nor website associated with this agent.", + "id": "GoogleCloudDialogflowV2IntentMessageLinkOutSuggestion", + "properties": { + "destinationName": { + "description": "Required. The name of the app or site this chip is linking to.", + "type": "string" + }, + "uri": { + "description": "Required. The URI of the app or site to open when the user taps the\nsuggestion chip.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2IntentMessageListSelect": { "description": "The card for presenting a list of options to select from.", - "type": "object", + "id": "GoogleCloudDialogflowV2IntentMessageListSelect", "properties": { "items": { "description": "Required. List items.", - "type": "array", "items": { - "$ref": "IntentMessageListSelectItem" - } + "$ref": "GoogleCloudDialogflowV2IntentMessageListSelectItem" + }, + "type": "array" }, "title": { "description": "Optional. The overall title of the list.", "type": "string" } }, - "id": "IntentMessageListSelect" + "type": "object" }, - "IntentMessageSuggestion": { - "description": "The suggestion chip message that the user can tap to quickly post a reply\nto the conversation.", - "type": "object", + "GoogleCloudDialogflowV2IntentMessageListSelectItem": { + "description": "An item in the list.", + "id": "GoogleCloudDialogflowV2IntentMessageListSelectItem", "properties": { - "title": { - "description": "Required. The text shown the in the suggestion chip.", - "type": "string" - } - }, - "id": "IntentMessageSuggestion" - }, - "IntentMessageCarouselSelectItem": { - "description": "An item in the carousel.", - "type": "object", - "properties": { - "title": { - "description": "Required. Title of the carousel item.", + "description": { + "description": "Optional. The main text describing the item.", "type": "string" }, "image": { - "$ref": "IntentMessageImage", + "$ref": "GoogleCloudDialogflowV2IntentMessageImage", "description": "Optional. The image to display." }, - "description": { - "description": "Optional. The body text of the card.", - "type": "string" - }, "info": { - "$ref": "IntentMessageSelectItemInfo", - "description": "Required. Additional info about the option item." + "$ref": "GoogleCloudDialogflowV2IntentMessageSelectItemInfo", + "description": "Required. Additional information about this option." + }, + "title": { + "description": "Required. The title of the list item.", + "type": "string" } }, - "id": "IntentMessageCarouselSelectItem" + "type": "object" }, - "IntentMessageQuickReplies": { + "GoogleCloudDialogflowV2IntentMessageQuickReplies": { "description": "The quick replies response message.", - "type": "object", + "id": "GoogleCloudDialogflowV2IntentMessageQuickReplies", "properties": { "quickReplies": { "description": "Optional. The collection of quick replies.", - "type": "array", "items": { "type": "string" - } + }, + "type": "array" }, "title": { "description": "Optional. The title of the collection of quick replies.", "type": "string" } }, - "id": "IntentMessageQuickReplies" + "type": "object" }, - "WebhookRequest": { - "description": "The request message for a webhook call.", - "type": "object", + "GoogleCloudDialogflowV2IntentMessageSelectItemInfo": { + "description": "Additional info about the select item for when it is triggered in a\ndialog.", + "id": "GoogleCloudDialogflowV2IntentMessageSelectItemInfo", "properties": { - "queryResult": { - "$ref": "QueryResult", - "description": "The result of the conversational query or event processing. Contains the\nsame value as `[Streaming]DetectIntentResponse.query_result`." + "key": { + "description": "Required. A unique key that will be sent back to the agent if this\nresponse is given.", + "type": "string" }, + "synonyms": { + "description": "Optional. A list of synonyms that can also be used to trigger this\nitem in dialog.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2IntentMessageSimpleResponse": { + "description": "The simple response message containing speech or text.", + "id": "GoogleCloudDialogflowV2IntentMessageSimpleResponse", + "properties": { + "displayText": { + "description": "Optional. The text to display.", + "type": "string" + }, + "ssml": { + "description": "One of text_to_speech or ssml must be provided. Structured spoken\nresponse to the user in the SSML format. Mutually exclusive with\ntext_to_speech.", + "type": "string" + }, + "textToSpeech": { + "description": "One of text_to_speech or ssml must be provided. The plain text of the\nspeech output. Mutually exclusive with ssml.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2IntentMessageSimpleResponses": { + "description": "The collection of simple response candidates.\nThis message in `QueryResult.fulfillment_messages` and\n`WebhookResponse.fulfillment_messages` should contain only one\n`SimpleResponse`.", + "id": "GoogleCloudDialogflowV2IntentMessageSimpleResponses", + "properties": { + "simpleResponses": { + "description": "Required. The list of simple responses.", + "items": { + "$ref": "GoogleCloudDialogflowV2IntentMessageSimpleResponse" + }, + "type": "array" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2IntentMessageSuggestion": { + "description": "The suggestion chip message that the user can tap to quickly post a reply\nto the conversation.", + "id": "GoogleCloudDialogflowV2IntentMessageSuggestion", + "properties": { + "title": { + "description": "Required. The text shown the in the suggestion chip.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2IntentMessageSuggestions": { + "description": "The collection of suggestions.", + "id": "GoogleCloudDialogflowV2IntentMessageSuggestions", + "properties": { + "suggestions": { + "description": "Required. The list of suggested replies.", + "items": { + "$ref": "GoogleCloudDialogflowV2IntentMessageSuggestion" + }, + "type": "array" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2IntentMessageText": { + "description": "The text response message.", + "id": "GoogleCloudDialogflowV2IntentMessageText", + "properties": { + "text": { + "description": "Optional. The collection of the agent's responses.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2IntentParameter": { + "description": "Represents intent parameters.", + "id": "GoogleCloudDialogflowV2IntentParameter", + "properties": { + "defaultValue": { + "description": "Optional. The default value to use when the `value` yields an empty\nresult.\nDefault values can be extracted from contexts by using the following\nsyntax: `#context_name.parameter_name`.", + "type": "string" + }, + "displayName": { + "description": "Required. The name of the parameter.", + "type": "string" + }, + "entityTypeDisplayName": { + "description": "Optional. The name of the entity type, prefixed with `@`, that\ndescribes values of the parameter. If the parameter is\nrequired, this must be provided.", + "type": "string" + }, + "isList": { + "description": "Optional. Indicates whether the parameter represents a list of values.", + "type": "boolean" + }, + "mandatory": { + "description": "Optional. Indicates whether the parameter is required. That is,\nwhether the intent cannot be completed without collecting the parameter\nvalue.", + "type": "boolean" + }, + "name": { + "description": "The unique identifier of this parameter.", + "type": "string" + }, + "prompts": { + "description": "Optional. The collection of prompts that the agent can present to the\nuser in order to collect value for the parameter.", + "items": { + "type": "string" + }, + "type": "array" + }, + "value": { + "description": "Optional. The definition of the parameter value. It can be:\n- a constant string,\n- a parameter value defined as `$parameter_name`,\n- an original parameter value defined as `$parameter_name.original`,\n- a parameter value from some context defined as\n `#context_name.parameter_name`.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2IntentTrainingPhrase": { + "description": "Represents an example or template that the agent is trained on.", + "id": "GoogleCloudDialogflowV2IntentTrainingPhrase", + "properties": { + "name": { + "description": "Required. The unique identifier of this training phrase.", + "type": "string" + }, + "parts": { + "description": "Required. The collection of training phrase parts (can be annotated).\nFields: `entity_type`, `alias` and `user_defined` should be populated\nonly for the annotated parts of the training phrase.", + "items": { + "$ref": "GoogleCloudDialogflowV2IntentTrainingPhrasePart" + }, + "type": "array" + }, + "timesAddedCount": { + "description": "Optional. Indicates how many times this example or template was added to\nthe intent. Each time a developer adds an existing sample by editing an\nintent or training, this counter is increased.", + "format": "int32", + "type": "integer" + }, + "type": { + "description": "Required. The type of the training phrase.", + "enum": [ + "TYPE_UNSPECIFIED", + "EXAMPLE", + "TEMPLATE" + ], + "enumDescriptions": [ + "Not specified. This value should never be used.", + "Examples do not contain @-prefixed entity type names, but example parts\ncan be annotated with entity types.", + "Templates are not annotated with entity types, but they can contain\n@-prefixed entity type names as substrings." + ], + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2IntentTrainingPhrasePart": { + "description": "Represents a part of a training phrase.", + "id": "GoogleCloudDialogflowV2IntentTrainingPhrasePart", + "properties": { + "alias": { + "description": "Optional. The parameter name for the value extracted from the\nannotated part of the example.", + "type": "string" + }, + "entityType": { + "description": "Optional. The entity type name prefixed with `@`. This field is\nrequired for the annotated part of the text and applies only to\nexamples.", + "type": "string" + }, + "text": { + "description": "Required. The text corresponding to the example or template,\nif there are no annotations. For\nannotated examples, it is the text for one of the example's parts.", + "type": "string" + }, + "userDefined": { + "description": "Optional. Indicates whether the text was manually annotated by the\ndeveloper.", + "type": "boolean" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2OriginalDetectIntentRequest": { + "description": "Represents the contents of the original request that was passed to\nthe `[Streaming]DetectIntent` call.", + "id": "GoogleCloudDialogflowV2OriginalDetectIntentRequest", + "properties": { + "payload": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "description": "Optional. This field is set to the value of `QueryParameters.payload` field\npassed in the request.", + "type": "object" + }, + "source": { + "description": "The source of this request, e.g., `google`, `facebook`, `slack`. It is set\nby Dialogflow-owned servers. Possible values of this field correspond to\nIntent.Message.Platform.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2QueryResult": { + "description": "Represents the result of conversational query or event processing.", + "id": "GoogleCloudDialogflowV2QueryResult", + "properties": { + "action": { + "description": "The action name from the matched intent.", + "type": "string" + }, + "allRequiredParamsPresent": { + "description": "This field is set to:\n- `false` if the matched intent has required parameters and not all of\n the required parameter values have been collected.\n- `true` if all required parameter values have been collected, or if the\n matched intent doesn't contain any required parameters.", + "type": "boolean" + }, + "diagnosticInfo": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "description": "The free-form diagnostic info. For example, this field\ncould contain webhook call latency.", + "type": "object" + }, + "fulfillmentMessages": { + "description": "The collection of rich messages to present to the user.", + "items": { + "$ref": "GoogleCloudDialogflowV2IntentMessage" + }, + "type": "array" + }, + "fulfillmentText": { + "description": "The text to be pronounced to the user or shown on the screen.", + "type": "string" + }, + "intent": { + "$ref": "GoogleCloudDialogflowV2Intent", + "description": "The intent that matched the conversational query. Some, not\nall fields are filled in this message, including but not limited to:\n`name`, `display_name` and `webhook_state`." + }, + "intentDetectionConfidence": { + "description": "The intent detection confidence. Values range from 0.0\n(completely uncertain) to 1.0 (completely certain).", + "format": "float", + "type": "number" + }, + "languageCode": { + "description": "The language that was triggered during intent detection.\nSee [Language Support](https://dialogflow.com/docs/reference/language)\nfor a list of the currently supported language codes.", + "type": "string" + }, + "outputContexts": { + "description": "The collection of output contexts. If applicable,\n`output_contexts.parameters` contains entries with name\n`\u003cparameter name\u003e.original` containing the original parameter values\nbefore the query.", + "items": { + "$ref": "GoogleCloudDialogflowV2Context" + }, + "type": "array" + }, + "parameters": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "description": "The collection of extracted parameters.", + "type": "object" + }, + "queryText": { + "description": "The original conversational query text:\n- If natural language text was provided as input, `query_text` contains\n a copy of the input.\n- If natural language speech audio was provided as input, `query_text`\n contains the speech recognition result. If speech recognizer produced\n multiple alternatives, a particular one is picked.\n- If an event was provided as input, `query_text` is not set.", + "type": "string" + }, + "speechRecognitionConfidence": { + "description": "The Speech recognition confidence between 0.0 and 1.0. A higher number\nindicates an estimated greater likelihood that the recognized words are\ncorrect. The default of 0.0 is a sentinel value indicating that confidence\nwas not set.\n\nYou should not rely on this field as it isn't guaranteed to be accurate, or\neven set. In particular this field isn't set in Webhook calls and for\nStreamingDetectIntent since the streaming endpoint has separate confidence\nestimates per portion of the audio in StreamingRecognitionResult.", + "format": "float", + "type": "number" + }, + "webhookPayload": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "description": "If the query was fulfilled by a webhook call, this field is set to the\nvalue of the `payload` field returned in the webhook response.", + "type": "object" + }, + "webhookSource": { + "description": "If the query was fulfilled by a webhook call, this field is set to the\nvalue of the `source` field returned in the webhook response.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2WebhookRequest": { + "description": "The request message for a webhook call.", + "id": "GoogleCloudDialogflowV2WebhookRequest", + "properties": { "originalDetectIntentRequest": { - "description": "Optional. The contents of the original request that was passed to\n`[Streaming]DetectIntent` call.", - "$ref": "OriginalDetectIntentRequest" + "$ref": "GoogleCloudDialogflowV2OriginalDetectIntentRequest", + "description": "Optional. The contents of the original request that was passed to\n`[Streaming]DetectIntent` call." + }, + "queryResult": { + "$ref": "GoogleCloudDialogflowV2QueryResult", + "description": "The result of the conversational query or event processing. Contains the\nsame value as `[Streaming]DetectIntentResponse.query_result`." }, "responseId": { "description": "The unique identifier of the response. Contains the same value as\n`[Streaming]DetectIntentResponse.response_id`.", @@ -584,82 +2576,1662 @@ "type": "string" } }, - "id": "WebhookRequest" + "type": "object" }, - "RestoreAgentRequest": { - "description": "The request message for Agents.RestoreAgent.", - "type": "object", + "GoogleCloudDialogflowV2WebhookResponse": { + "description": "The response message for a webhook call.", + "id": "GoogleCloudDialogflowV2WebhookResponse", + "properties": { + "followupEventInput": { + "$ref": "GoogleCloudDialogflowV2EventInput", + "description": "Optional. Makes the platform immediately invoke another `DetectIntent` call\ninternally with the specified event as input." + }, + "fulfillmentMessages": { + "description": "Optional. The collection of rich messages to present to the user. This\nvalue is passed directly to `QueryResult.fulfillment_messages`.", + "items": { + "$ref": "GoogleCloudDialogflowV2IntentMessage" + }, + "type": "array" + }, + "fulfillmentText": { + "description": "Optional. The text to be shown on the screen. This value is passed directly\nto `QueryResult.fulfillment_text`.", + "type": "string" + }, + "outputContexts": { + "description": "Optional. The collection of output contexts. This value is passed directly\nto `QueryResult.output_contexts`.", + "items": { + "$ref": "GoogleCloudDialogflowV2Context" + }, + "type": "array" + }, + "payload": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "description": "Optional. This value is passed directly to `QueryResult.webhook_payload`.", + "type": "object" + }, + "source": { + "description": "Optional. This value is passed directly to `QueryResult.webhook_source`.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2beta1Agent": { + "description": "Represents a conversational agent.", + "id": "GoogleCloudDialogflowV2beta1Agent", + "properties": { + "avatarUri": { + "description": "Optional. The URI of the agent's avatar.\nAvatars are used throughout the Dialogflow console and in the self-hosted\n[Web Demo](https://dialogflow.com/docs/integrations/web-demo) integration.", + "type": "string" + }, + "classificationThreshold": { + "description": "Optional. To filter out false positive results and still get variety in\nmatched natural language inputs for your agent, you can tune the machine\nlearning classification threshold. If the returned score value is less than\nthe threshold value, then a fallback intent is be triggered or, if there\nare no fallback intents defined, no intent will be triggered. The score\nvalues range from 0.0 (completely uncertain) to 1.0 (completely certain).\nIf set to 0.0, the default of 0.3 is used.", + "format": "float", + "type": "number" + }, + "defaultLanguageCode": { + "description": "Required. The default language of the agent as a language tag. See\n[Language Support](https://dialogflow.com/docs/reference/language) for a\nlist of the currently supported language codes.\nThis field cannot be set by the `Update` method.", + "type": "string" + }, + "description": { + "description": "Optional. The description of this agent.\nThe maximum length is 500 characters. If exceeded, the request is rejected.", + "type": "string" + }, + "displayName": { + "description": "Required. The name of this agent.", + "type": "string" + }, + "enableLogging": { + "description": "Optional. Determines whether this agent should log conversation queries.", + "type": "boolean" + }, + "matchMode": { + "description": "Optional. Determines how intents are detected from user queries.", + "enum": [ + "MATCH_MODE_UNSPECIFIED", + "MATCH_MODE_HYBRID", + "MATCH_MODE_ML_ONLY" + ], + "enumDescriptions": [ + "Not specified.", + "Best for agents with a small number of examples in intents and/or wide\nuse of templates syntax and composite entities.", + "Can be used for agents with a large number of examples in intents,\nespecially the ones using @sys.any or very large developer entities." + ], + "type": "string" + }, + "parent": { + "description": "Required. The project of this agent.\nFormat: `projects/\u003cProject ID\u003e`.", + "type": "string" + }, + "supportedLanguageCodes": { + "description": "Optional. The list of all languages supported by this agent (except for the\n`default_language_code`).", + "items": { + "type": "string" + }, + "type": "array" + }, + "timeZone": { + "description": "Required. The time zone of this agent from the\n[time zone database](https://www.iana.org/time-zones), e.g.,\nAmerica/New_York, Europe/Paris.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2beta1BatchCreateEntitiesRequest": { + "description": "The request message for EntityTypes.BatchCreateEntities.", + "id": "GoogleCloudDialogflowV2beta1BatchCreateEntitiesRequest", + "properties": { + "entities": { + "description": "Required. The collection of entities to create.", + "items": { + "$ref": "GoogleCloudDialogflowV2beta1EntityTypeEntity" + }, + "type": "array" + }, + "languageCode": { + "description": "Optional. The language of entity synonyms defined in `entities`. If not\nspecified, the agent's default language is used.\n[More than a dozen\nlanguages](https://dialogflow.com/docs/reference/language) are supported.\nNote: languages must be enabled in the agent, before they can be used.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2beta1BatchDeleteEntitiesRequest": { + "description": "The request message for EntityTypes.BatchDeleteEntities.", + "id": "GoogleCloudDialogflowV2beta1BatchDeleteEntitiesRequest", + "properties": { + "entityValues": { + "description": "Required. The canonical `values` of the entities to delete. Note that\nthese are not fully-qualified names, i.e. they don't start with\n`projects/\u003cProject ID\u003e`.", + "items": { + "type": "string" + }, + "type": "array" + }, + "languageCode": { + "description": "Optional. The language of entity synonyms defined in `entities`. If not\nspecified, the agent's default language is used.\n[More than a dozen\nlanguages](https://dialogflow.com/docs/reference/language) are supported.\nNote: languages must be enabled in the agent, before they can be used.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2beta1BatchDeleteEntityTypesRequest": { + "description": "The request message for EntityTypes.BatchDeleteEntityTypes.", + "id": "GoogleCloudDialogflowV2beta1BatchDeleteEntityTypesRequest", + "properties": { + "entityTypeNames": { + "description": "Required. The names entity types to delete. All names must point to the\nsame agent as `parent`.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2beta1BatchDeleteIntentsRequest": { + "description": "The request message for Intents.BatchDeleteIntents.", + "id": "GoogleCloudDialogflowV2beta1BatchDeleteIntentsRequest", + "properties": { + "intents": { + "description": "Required. The collection of intents to delete. Only intent `name` must be\nfilled in.", + "items": { + "$ref": "GoogleCloudDialogflowV2beta1Intent" + }, + "type": "array" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2beta1BatchUpdateEntitiesRequest": { + "description": "The response message for EntityTypes.BatchCreateEntities.", + "id": "GoogleCloudDialogflowV2beta1BatchUpdateEntitiesRequest", + "properties": { + "entities": { + "description": "Required. The collection of new entities to replace the existing entities.", + "items": { + "$ref": "GoogleCloudDialogflowV2beta1EntityTypeEntity" + }, + "type": "array" + }, + "languageCode": { + "description": "Optional. The language of entity synonyms defined in `entities`. If not\nspecified, the agent's default language is used.\n[More than a dozen\nlanguages](https://dialogflow.com/docs/reference/language) are supported.\nNote: languages must be enabled in the agent, before they can be used.", + "type": "string" + }, + "updateMask": { + "description": "Optional. The mask to control which fields get updated.", + "format": "google-fieldmask", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2beta1BatchUpdateEntityTypesRequest": { + "description": "The request message for EntityTypes.BatchUpdateEntityTypes.", + "id": "GoogleCloudDialogflowV2beta1BatchUpdateEntityTypesRequest", + "properties": { + "entityTypeBatchInline": { + "$ref": "GoogleCloudDialogflowV2beta1EntityTypeBatch", + "description": "The collection of entity type to update or create." + }, + "entityTypeBatchUri": { + "description": "The URI to a Google Cloud Storage file containing entity types to update\nor create. The file format can either be a serialized proto (of\nEntityBatch type) or a JSON object. Note: The URI must start with\n\"gs://\".", + "type": "string" + }, + "languageCode": { + "description": "Optional. The language of entity synonyms defined in `entity_types`. If not\nspecified, the agent's default language is used.\n[More than a dozen\nlanguages](https://dialogflow.com/docs/reference/language) are supported.\nNote: languages must be enabled in the agent, before they can be used.", + "type": "string" + }, + "updateMask": { + "description": "Optional. The mask to control which fields get updated.", + "format": "google-fieldmask", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2beta1BatchUpdateEntityTypesResponse": { + "description": "The response message for EntityTypes.BatchUpdateEntityTypes.", + "id": "GoogleCloudDialogflowV2beta1BatchUpdateEntityTypesResponse", + "properties": { + "entityTypes": { + "description": "The collection of updated or created entity types.", + "items": { + "$ref": "GoogleCloudDialogflowV2beta1EntityType" + }, + "type": "array" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2beta1BatchUpdateIntentsRequest": { + "description": "The request message for Intents.BatchUpdateIntents.", + "id": "GoogleCloudDialogflowV2beta1BatchUpdateIntentsRequest", + "properties": { + "intentBatchInline": { + "$ref": "GoogleCloudDialogflowV2beta1IntentBatch", + "description": "The collection of intents to update or create." + }, + "intentBatchUri": { + "description": "The URI to a Google Cloud Storage file containing intents to update or\ncreate. The file format can either be a serialized proto (of IntentBatch\ntype) or JSON object. Note: The URI must start with \"gs://\".", + "type": "string" + }, + "intentView": { + "description": "Optional. The resource view to apply to the returned intent.", + "enum": [ + "INTENT_VIEW_UNSPECIFIED", + "INTENT_VIEW_FULL" + ], + "enumDescriptions": [ + "Training phrases field is not populated in the response.", + "All fields are populated." + ], + "type": "string" + }, + "languageCode": { + "description": "Optional. The language of training phrases, parameters and rich messages\ndefined in `intents`. If not specified, the agent's default language is\nused. [More than a dozen\nlanguages](https://dialogflow.com/docs/reference/language) are supported.\nNote: languages must be enabled in the agent, before they can be used.", + "type": "string" + }, + "updateMask": { + "description": "Optional. The mask to control which fields get updated.", + "format": "google-fieldmask", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2beta1BatchUpdateIntentsResponse": { + "description": "The response message for Intents.BatchUpdateIntents.", + "id": "GoogleCloudDialogflowV2beta1BatchUpdateIntentsResponse", + "properties": { + "intents": { + "description": "The collection of updated or created intents.", + "items": { + "$ref": "GoogleCloudDialogflowV2beta1Intent" + }, + "type": "array" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2beta1Context": { + "description": "Represents a context.", + "id": "GoogleCloudDialogflowV2beta1Context", + "properties": { + "lifespanCount": { + "description": "Optional. The number of conversational query requests after which the\ncontext expires. If set to `0` (the default) the context expires\nimmediately. Contexts expire automatically after 10 minutes even if there\nare no matching queries.", + "format": "int32", + "type": "integer" + }, + "name": { + "description": "Required. The unique identifier of the context. Format:\n`projects/\u003cProject ID\u003e/agent/sessions/\u003cSession ID\u003e/contexts/\u003cContext ID\u003e`,\nor\n`projects/\u003cProject ID\u003e/agent/environments/\u003cEnvironment ID\u003e/users/\u003cUser\nID\u003e/sessions/\u003cSession ID\u003e/contexts/\u003cContext ID\u003e`. Note: Environments and\nusers are under construction and will be available soon. The Context ID is\nalways converted to lowercase. If \u003cEnvironment ID\u003e is not specified, we\nassume default 'draft' environment. If \u003cUser ID\u003e is not specified, we\nassume default '-' user.", + "type": "string" + }, + "parameters": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "description": "Optional. The collection of parameters associated with this context.\nRefer to [this doc](https://dialogflow.com/docs/actions-and-parameters) for\nsyntax.", + "type": "object" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2beta1DetectIntentRequest": { + "description": "The request to detect user's intent.", + "id": "GoogleCloudDialogflowV2beta1DetectIntentRequest", + "properties": { + "inputAudio": { + "description": "Optional. The natural language speech audio to be processed. This field\nshould be populated iff `query_input` is set to an input audio config.\nA single request can contain up to 1 minute of speech audio data.", + "format": "byte", + "type": "string" + }, + "queryInput": { + "$ref": "GoogleCloudDialogflowV2beta1QueryInput", + "description": "Required. The input specification. It can be set to:\n\n1. an audio config\n which instructs the speech recognizer how to process the speech audio,\n\n2. a conversational query in the form of text, or\n\n3. an event that specifies which intent to trigger." + }, + "queryParams": { + "$ref": "GoogleCloudDialogflowV2beta1QueryParameters", + "description": "Optional. The parameters of this query." + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2beta1DetectIntentResponse": { + "description": "The message returned from the DetectIntent method.", + "id": "GoogleCloudDialogflowV2beta1DetectIntentResponse", + "properties": { + "queryResult": { + "$ref": "GoogleCloudDialogflowV2beta1QueryResult", + "description": "The results of the conversational query or event processing." + }, + "responseId": { + "description": "The unique identifier of the response. It can be used to\nlocate a response in the training example set or for reporting issues.", + "type": "string" + }, + "webhookStatus": { + "$ref": "GoogleRpcStatus", + "description": "Specifies the status of the webhook request. `webhook_status`\nis never populated in webhook requests." + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2beta1EntityType": { + "description": "Represents an entity type.\nEntity types serve as a tool for extracting parameter values from natural\nlanguage queries.", + "id": "GoogleCloudDialogflowV2beta1EntityType", + "properties": { + "autoExpansionMode": { + "description": "Optional. Indicates whether the entity type can be automatically\nexpanded.", + "enum": [ + "AUTO_EXPANSION_MODE_UNSPECIFIED", + "AUTO_EXPANSION_MODE_DEFAULT" + ], + "enumDescriptions": [ + "Auto expansion disabled for the entity.", + "Allows an agent to recognize values that have not been explicitly\nlisted in the entity." + ], + "type": "string" + }, + "displayName": { + "description": "Required. The name of the entity.", + "type": "string" + }, + "entities": { + "description": "Optional. The collection of entities associated with the entity type.", + "items": { + "$ref": "GoogleCloudDialogflowV2beta1EntityTypeEntity" + }, + "type": "array" + }, + "kind": { + "description": "Required. Indicates the kind of entity type.", + "enum": [ + "KIND_UNSPECIFIED", + "KIND_MAP", + "KIND_LIST" + ], + "enumDescriptions": [ + "Not specified. This value should be never used.", + "Map entity types allow mapping of a group of synonyms to a canonical\nvalue.", + "List entity types contain a set of entries that do not map to canonical\nvalues. However, list entity types can contain references to other entity\ntypes (with or without aliases)." + ], + "type": "string" + }, + "name": { + "description": "Required for all methods except `create` (`create` populates the name\nautomatically.\nThe unique identifier of the entity type. Format:\n`projects/\u003cProject ID\u003e/agent/entityTypes/\u003cEntity Type ID\u003e`.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2beta1EntityTypeBatch": { + "description": "This message is a wrapper around a collection of entity types.", + "id": "GoogleCloudDialogflowV2beta1EntityTypeBatch", + "properties": { + "entityTypes": { + "description": "A collection of entity types.", + "items": { + "$ref": "GoogleCloudDialogflowV2beta1EntityType" + }, + "type": "array" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2beta1EntityTypeEntity": { + "description": "Optional. Represents an entity.", + "id": "GoogleCloudDialogflowV2beta1EntityTypeEntity", + "properties": { + "synonyms": { + "description": "Required. A collection of synonyms. For `KIND_LIST` entity types this\nmust contain exactly one synonym equal to `value`.", + "items": { + "type": "string" + }, + "type": "array" + }, + "value": { + "description": "Required.\nFor `KIND_MAP` entity types:\n A canonical name to be used in place of synonyms.\nFor `KIND_LIST` entity types:\n A string that can contain references to other entity types (with or\n without aliases).", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2beta1EventInput": { + "description": "Events allow for matching intents by event name instead of the natural\nlanguage input. For instance, input `\u003cevent: { name: “welcome_event”,\nparameters: { name: “Sam” } }\u003e` can trigger a personalized welcome response.\nThe parameter `name` may be used by the agent in the response:\n`“Hello #welcome_event.name! What can I do for you today?”`.", + "id": "GoogleCloudDialogflowV2beta1EventInput", + "properties": { + "languageCode": { + "description": "Required. The language of this query. See [Language\nSupport](https://dialogflow.com/docs/languages) for a list of the\ncurrently supported language codes. Note that queries in the same session\ndo not necessarily need to specify the same language.", + "type": "string" + }, + "name": { + "description": "Required. The unique identifier of the event.", + "type": "string" + }, + "parameters": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "description": "Optional. The collection of parameters associated with the event.", + "type": "object" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2beta1ExportAgentRequest": { + "description": "The request message for Agents.ExportAgent.", + "id": "GoogleCloudDialogflowV2beta1ExportAgentRequest", + "properties": { + "agentUri": { + "description": "Optional. The Google Cloud Storage URI to export the agent to.\nNote: The URI must start with\n\"gs://\". If left unspecified, the serialized agent is returned inline.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2beta1ExportAgentResponse": { + "description": "The response message for Agents.ExportAgent.", + "id": "GoogleCloudDialogflowV2beta1ExportAgentResponse", "properties": { "agentContent": { - "description": "The agent to restore.\n\nExample for how to restore an agent via the command line:\n\ncurl \\\n 'https://dialogflow.googleapis.com/v2beta1/projects/\u003cproject_name\u003e/agent:restore\\\n -X POST \\\n -H 'Authorization: Bearer '$(gcloud auth print-access-token) \\\n -H 'Accept: application/json' \\\n -H 'Content-Type: application/json' \\\n --compressed \\\n --data-binary \"{\n 'agentContent': '$(cat \u003cagent zip file\u003e | base64 -w 0)'\n }\" \\", + "description": "The exported agent.\n\nExample for how to export an agent to a zip file via a command line:\n\ncurl \\\n 'https://dialogflow.googleapis.com/v2beta1/projects/\u003cproject_name\u003e/agent:export'\\\n -X POST \\\n -H 'Authorization: Bearer '$(gcloud auth print-access-token) \\\n -H 'Accept: application/json' \\\n -H 'Content-Type: application/json' \\\n --compressed \\\n --data-binary '{}' \\\n| grep agentContent | sed -e 's/.*\"agentContent\": \"\\([^\"]*\\)\".*/\\1/' \\\n| base64 --decode \u003e \u003cagent zip file\u003e", "format": "byte", "type": "string" }, "agentUri": { - "description": "Warning: Restoring agents from a URI is not implemented yet.\nThis feature is coming soon.\n\nThe URI to a Google Cloud Storage file containing the agent to restore.\nNote: The URI must start with \"gs://\".", + "description": "The URI to a file containing the exported agent. This field is populated\nonly if `agent_uri` is specified in `ExportAgentRequest`.", "type": "string" } }, - "id": "RestoreAgentRequest" + "type": "object" }, - "IntentTrainingPhrase": { + "GoogleCloudDialogflowV2beta1ImportAgentRequest": { + "description": "The request message for Agents.ImportAgent.", + "id": "GoogleCloudDialogflowV2beta1ImportAgentRequest", + "properties": { + "agentContent": { + "description": "The agent to import.\n\nExample for how to import an agent via the command line:\n\ncurl \\\n 'https://dialogflow.googleapis.com/v2beta1/projects/\u003cproject_name\u003e/agent:import\\\n -X POST \\\n -H 'Authorization: Bearer '$(gcloud auth print-access-token) \\\n -H 'Accept: application/json' \\\n -H 'Content-Type: application/json' \\\n --compressed \\\n --data-binary \"{\n 'agentContent': '$(cat \u003cagent zip file\u003e | base64 -w 0)'\n }\"", + "format": "byte", + "type": "string" + }, + "agentUri": { + "description": "The URI to a Google Cloud Storage file containing the agent to import.\nNote: The URI must start with \"gs://\".", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2beta1InputAudioConfig": { + "description": "Instructs the speech recognizer how to process the audio content.", + "id": "GoogleCloudDialogflowV2beta1InputAudioConfig", + "properties": { + "audioEncoding": { + "description": "Required. Audio encoding of the audio content to process.", + "enum": [ + "AUDIO_ENCODING_UNSPECIFIED", + "AUDIO_ENCODING_LINEAR_16", + "AUDIO_ENCODING_FLAC", + "AUDIO_ENCODING_MULAW", + "AUDIO_ENCODING_AMR", + "AUDIO_ENCODING_AMR_WB", + "AUDIO_ENCODING_OGG_OPUS", + "AUDIO_ENCODING_SPEEX_WITH_HEADER_BYTE" + ], + "enumDescriptions": [ + "Not specified.", + "Uncompressed 16-bit signed little-endian samples (Linear PCM).", + "[`FLAC`](https://xiph.org/flac/documentation.html) (Free Lossless Audio\nCodec) is the recommended encoding because it is lossless (therefore\nrecognition is not compromised) and requires only about half the\nbandwidth of `LINEAR16`. `FLAC` stream encoding supports 16-bit and\n24-bit samples, however, not all fields in `STREAMINFO` are supported.", + "8-bit samples that compand 14-bit audio samples using G.711 PCMU/mu-law.", + "Adaptive Multi-Rate Narrowband codec. `sample_rate_hertz` must be 8000.", + "Adaptive Multi-Rate Wideband codec. `sample_rate_hertz` must be 16000.", + "Opus encoded audio frames in Ogg container\n([OggOpus](https://wiki.xiph.org/OggOpus)).\n`sample_rate_hertz` must be 16000.", + "Although the use of lossy encodings is not recommended, if a very low\nbitrate encoding is required, `OGG_OPUS` is highly preferred over\nSpeex encoding. The [Speex](https://speex.org/) encoding supported by\nDialogflow API has a header byte in each block, as in MIME type\n`audio/x-speex-with-header-byte`.\nIt is a variant of the RTP Speex encoding defined in\n[RFC 5574](https://tools.ietf.org/html/rfc5574).\nThe stream is a sequence of blocks, one block per RTP packet. Each block\nstarts with a byte containing the length of the block, in bytes, followed\nby one or more frames of Speex data, padded to an integral number of\nbytes (octets) as specified in RFC 5574. In other words, each RTP header\nis replaced with a single byte containing the block length. Only Speex\nwideband is supported. `sample_rate_hertz` must be 16000." + ], + "type": "string" + }, + "languageCode": { + "description": "Required. The language of the supplied audio. Dialogflow does not do\ntranslations. See [Language\nSupport](https://dialogflow.com/docs/languages) for a list of the\ncurrently supported language codes. Note that queries in the same session\ndo not necessarily need to specify the same language.", + "type": "string" + }, + "phraseHints": { + "description": "Optional. The collection of phrase hints which are used to boost accuracy\nof speech recognition.\nRefer to [Cloud Speech API documentation](/speech/docs/basics#phrase-hints)\nfor more details.", + "items": { + "type": "string" + }, + "type": "array" + }, + "sampleRateHertz": { + "description": "Required. Sample rate (in Hertz) of the audio content sent in the query.\nRefer to [Cloud Speech API documentation](/speech/docs/basics) for more\ndetails.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2beta1Intent": { + "description": "Represents an intent.\nIntents convert a number of user expressions or patterns into an action. An\naction is an extraction of a user command or sentence semantics.", + "id": "GoogleCloudDialogflowV2beta1Intent", + "properties": { + "action": { + "description": "Optional. The name of the action associated with the intent.", + "type": "string" + }, + "defaultResponsePlatforms": { + "description": "Optional. The list of platforms for which the first response will be\ntaken from among the messages assigned to the DEFAULT_PLATFORM.", + "enumDescriptions": [ + "Not specified.", + "Facebook.", + "Slack.", + "Telegram.", + "Kik.", + "Skype.", + "Line.", + "Viber.", + "Actions on Google." + ], + "items": { + "enum": [ + "PLATFORM_UNSPECIFIED", + "FACEBOOK", + "SLACK", + "TELEGRAM", + "KIK", + "SKYPE", + "LINE", + "VIBER", + "ACTIONS_ON_GOOGLE" + ], + "type": "string" + }, + "type": "array" + }, + "displayName": { + "description": "Required. The name of this intent.", + "type": "string" + }, + "events": { + "description": "Optional. The collection of event names that trigger the intent.\nIf the collection of input contexts is not empty, all of the contexts must\nbe present in the active user session for an event to trigger this intent.", + "items": { + "type": "string" + }, + "type": "array" + }, + "followupIntentInfo": { + "description": "Optional. Collection of information about all followup intents that have\nname of this intent as a root_name.", + "items": { + "$ref": "GoogleCloudDialogflowV2beta1IntentFollowupIntentInfo" + }, + "type": "array" + }, + "inputContextNames": { + "description": "Optional. The list of context names required for this intent to be\ntriggered.\nFormat: `projects/\u003cProject ID\u003e/agent/sessions/-/contexts/\u003cContext ID\u003e`.", + "items": { + "type": "string" + }, + "type": "array" + }, + "isFallback": { + "description": "Optional. Indicates whether this is a fallback intent.", + "type": "boolean" + }, + "messages": { + "description": "Optional. The collection of rich messages corresponding to the\n`Response` field in the Dialogflow console.", + "items": { + "$ref": "GoogleCloudDialogflowV2beta1IntentMessage" + }, + "type": "array" + }, + "mlDisabled": { + "description": "Optional. Indicates whether Machine Learning is disabled for the intent.\nNote: If `ml_disabled` setting is set to true, then this intent is not\ntaken into account during inference in `ML ONLY` match mode. Also,\nauto-markup in the UI is turned off.", + "type": "boolean" + }, + "mlEnabled": { + "description": "Optional. Indicates whether Machine Learning is enabled for the intent.\nNote: If `ml_enabled` setting is set to false, then this intent is not\ntaken into account during inference in `ML ONLY` match mode. Also,\nauto-markup in the UI is turned off.\nDEPRECATED! Please use `ml_disabled` field instead.\nNOTE: If neither `ml_enabled` nor `ml_disabled` field is set, then the\ndefault value is determined as follows:\n- Before April 15th, 2018 the default is:\n ml_enabled = false / ml_disabled = true.\n- After April 15th, 2018 the default is:\n ml_enabled = true / ml_disabled = false.", + "type": "boolean" + }, + "name": { + "description": "Required for all methods except `create` (`create` populates the name\nautomatically.\nThe unique identifier of this intent.\nFormat: `projects/\u003cProject ID\u003e/agent/intents/\u003cIntent ID\u003e`.", + "type": "string" + }, + "outputContexts": { + "description": "Optional. The collection of contexts that are activated when the intent\nis matched. Context messages in this collection should not set the\nparameters field. Setting the `lifespan_count` to 0 will reset the context\nwhen the intent is matched.\nFormat: `projects/\u003cProject ID\u003e/agent/sessions/-/contexts/\u003cContext ID\u003e`.", + "items": { + "$ref": "GoogleCloudDialogflowV2beta1Context" + }, + "type": "array" + }, + "parameters": { + "description": "Optional. The collection of parameters associated with the intent.", + "items": { + "$ref": "GoogleCloudDialogflowV2beta1IntentParameter" + }, + "type": "array" + }, + "parentFollowupIntentName": { + "description": "The unique identifier of the parent intent in the chain of followup\nintents.\nIt identifies the parent followup intent.\nFormat: `projects/\u003cProject ID\u003e/agent/intents/\u003cIntent ID\u003e`.", + "type": "string" + }, + "priority": { + "description": "Optional. The priority of this intent. Higher numbers represent higher\npriorities. Zero or negative numbers mean that the intent is disabled.", + "format": "int32", + "type": "integer" + }, + "resetContexts": { + "description": "Optional. Indicates whether to delete all contexts in the current\nsession when this intent is matched.", + "type": "boolean" + }, + "rootFollowupIntentName": { + "description": "The unique identifier of the root intent in the chain of followup intents.\nIt identifies the correct followup intents chain for this intent.\nFormat: `projects/\u003cProject ID\u003e/agent/intents/\u003cIntent ID\u003e`.", + "type": "string" + }, + "trainingPhrases": { + "description": "Optional. The collection of examples/templates that the agent is\ntrained on.", + "items": { + "$ref": "GoogleCloudDialogflowV2beta1IntentTrainingPhrase" + }, + "type": "array" + }, + "webhookState": { + "description": "Required. Indicates whether webhooks are enabled for the intent.", + "enum": [ + "WEBHOOK_STATE_UNSPECIFIED", + "WEBHOOK_STATE_ENABLED", + "WEBHOOK_STATE_ENABLED_FOR_SLOT_FILLING" + ], + "enumDescriptions": [ + "Webhook is disabled in the agent and in the intent.", + "Webhook is enabled in the agent and in the intent.", + "Webhook is enabled in the agent and in the intent. Also, each slot\nfilling prompt is forwarded to the webhook." + ], + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2beta1IntentBatch": { + "description": "This message is a wrapper around a collection of intents.", + "id": "GoogleCloudDialogflowV2beta1IntentBatch", + "properties": { + "intents": { + "description": "A collection of intents.", + "items": { + "$ref": "GoogleCloudDialogflowV2beta1Intent" + }, + "type": "array" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2beta1IntentFollowupIntentInfo": { + "description": "Represents a single followup intent in the chain.", + "id": "GoogleCloudDialogflowV2beta1IntentFollowupIntentInfo", + "properties": { + "followupIntentName": { + "description": "The unique identifier of the followup intent.\nFormat: `projects/\u003cProject ID\u003e/agent/intents/\u003cIntent ID\u003e`.", + "type": "string" + }, + "parentFollowupIntentName": { + "description": "The unique identifier of the followup intent parent.\nFormat: `projects/\u003cProject ID\u003e/agent/intents/\u003cIntent ID\u003e`.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2beta1IntentMessage": { + "description": "Corresponds to the `Response` field in the Dialogflow console.", + "id": "GoogleCloudDialogflowV2beta1IntentMessage", + "properties": { + "basicCard": { + "$ref": "GoogleCloudDialogflowV2beta1IntentMessageBasicCard", + "description": "Displays a basic card for Actions on Google." + }, + "card": { + "$ref": "GoogleCloudDialogflowV2beta1IntentMessageCard", + "description": "Displays a card." + }, + "carouselSelect": { + "$ref": "GoogleCloudDialogflowV2beta1IntentMessageCarouselSelect", + "description": "Displays a carousel card for Actions on Google." + }, + "image": { + "$ref": "GoogleCloudDialogflowV2beta1IntentMessageImage", + "description": "Displays an image." + }, + "linkOutSuggestion": { + "$ref": "GoogleCloudDialogflowV2beta1IntentMessageLinkOutSuggestion", + "description": "Displays a link out suggestion chip for Actions on Google." + }, + "listSelect": { + "$ref": "GoogleCloudDialogflowV2beta1IntentMessageListSelect", + "description": "Displays a list card for Actions on Google." + }, + "payload": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "description": "Returns a response containing a custom payload.", + "type": "object" + }, + "platform": { + "description": "Optional. The platform that this message is intended for.", + "enum": [ + "PLATFORM_UNSPECIFIED", + "FACEBOOK", + "SLACK", + "TELEGRAM", + "KIK", + "SKYPE", + "LINE", + "VIBER", + "ACTIONS_ON_GOOGLE" + ], + "enumDescriptions": [ + "Not specified.", + "Facebook.", + "Slack.", + "Telegram.", + "Kik.", + "Skype.", + "Line.", + "Viber.", + "Actions on Google." + ], + "type": "string" + }, + "quickReplies": { + "$ref": "GoogleCloudDialogflowV2beta1IntentMessageQuickReplies", + "description": "Displays quick replies." + }, + "simpleResponses": { + "$ref": "GoogleCloudDialogflowV2beta1IntentMessageSimpleResponses", + "description": "Returns a voice or text-only response for Actions on Google." + }, + "suggestions": { + "$ref": "GoogleCloudDialogflowV2beta1IntentMessageSuggestions", + "description": "Displays suggestion chips for Actions on Google." + }, + "text": { + "$ref": "GoogleCloudDialogflowV2beta1IntentMessageText", + "description": "Returns a text response." + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2beta1IntentMessageBasicCard": { + "description": "The basic card message. Useful for displaying information.", + "id": "GoogleCloudDialogflowV2beta1IntentMessageBasicCard", + "properties": { + "buttons": { + "description": "Optional. The collection of card buttons.", + "items": { + "$ref": "GoogleCloudDialogflowV2beta1IntentMessageBasicCardButton" + }, + "type": "array" + }, + "formattedText": { + "description": "Required, unless image is present. The body text of the card.", + "type": "string" + }, + "image": { + "$ref": "GoogleCloudDialogflowV2beta1IntentMessageImage", + "description": "Optional. The image for the card." + }, + "subtitle": { + "description": "Optional. The subtitle of the card.", + "type": "string" + }, + "title": { + "description": "Optional. The title of the card.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2beta1IntentMessageBasicCardButton": { + "description": "The button object that appears at the bottom of a card.", + "id": "GoogleCloudDialogflowV2beta1IntentMessageBasicCardButton", + "properties": { + "openUriAction": { + "$ref": "GoogleCloudDialogflowV2beta1IntentMessageBasicCardButtonOpenUriAction", + "description": "Required. Action to take when a user taps on the button." + }, + "title": { + "description": "Required. The title of the button.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2beta1IntentMessageBasicCardButtonOpenUriAction": { + "description": "Opens the given URI.", + "id": "GoogleCloudDialogflowV2beta1IntentMessageBasicCardButtonOpenUriAction", + "properties": { + "uri": { + "description": "Required. The HTTP or HTTPS scheme URI.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2beta1IntentMessageCard": { + "description": "The card response message.", + "id": "GoogleCloudDialogflowV2beta1IntentMessageCard", + "properties": { + "buttons": { + "description": "Optional. The collection of card buttons.", + "items": { + "$ref": "GoogleCloudDialogflowV2beta1IntentMessageCardButton" + }, + "type": "array" + }, + "imageUri": { + "description": "Optional. The public URI to an image file for the card.", + "type": "string" + }, + "subtitle": { + "description": "Optional. The subtitle of the card.", + "type": "string" + }, + "title": { + "description": "Optional. The title of the card.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2beta1IntentMessageCardButton": { + "description": "Optional. Contains information about a button.", + "id": "GoogleCloudDialogflowV2beta1IntentMessageCardButton", + "properties": { + "postback": { + "description": "Optional. The text to send back to the Dialogflow API or a URI to\nopen.", + "type": "string" + }, + "text": { + "description": "Optional. The text to show on the button.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2beta1IntentMessageCarouselSelect": { + "description": "The card for presenting a carousel of options to select from.", + "id": "GoogleCloudDialogflowV2beta1IntentMessageCarouselSelect", + "properties": { + "items": { + "description": "Required. Carousel items.", + "items": { + "$ref": "GoogleCloudDialogflowV2beta1IntentMessageCarouselSelectItem" + }, + "type": "array" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2beta1IntentMessageCarouselSelectItem": { + "description": "An item in the carousel.", + "id": "GoogleCloudDialogflowV2beta1IntentMessageCarouselSelectItem", + "properties": { + "description": { + "description": "Optional. The body text of the card.", + "type": "string" + }, + "image": { + "$ref": "GoogleCloudDialogflowV2beta1IntentMessageImage", + "description": "Optional. The image to display." + }, + "info": { + "$ref": "GoogleCloudDialogflowV2beta1IntentMessageSelectItemInfo", + "description": "Required. Additional info about the option item." + }, + "title": { + "description": "Required. Title of the carousel item.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2beta1IntentMessageImage": { + "description": "The image response message.", + "id": "GoogleCloudDialogflowV2beta1IntentMessageImage", + "properties": { + "accessibilityText": { + "description": "Optional. A text description of the image to be used for accessibility,\ne.g., screen readers.", + "type": "string" + }, + "imageUri": { + "description": "Optional. The public URI to an image file.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2beta1IntentMessageLinkOutSuggestion": { + "description": "The suggestion chip message that allows the user to jump out to the app\nor website associated with this agent.", + "id": "GoogleCloudDialogflowV2beta1IntentMessageLinkOutSuggestion", + "properties": { + "destinationName": { + "description": "Required. The name of the app or site this chip is linking to.", + "type": "string" + }, + "uri": { + "description": "Required. The URI of the app or site to open when the user taps the\nsuggestion chip.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2beta1IntentMessageListSelect": { + "description": "The card for presenting a list of options to select from.", + "id": "GoogleCloudDialogflowV2beta1IntentMessageListSelect", + "properties": { + "items": { + "description": "Required. List items.", + "items": { + "$ref": "GoogleCloudDialogflowV2beta1IntentMessageListSelectItem" + }, + "type": "array" + }, + "title": { + "description": "Optional. The overall title of the list.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2beta1IntentMessageListSelectItem": { + "description": "An item in the list.", + "id": "GoogleCloudDialogflowV2beta1IntentMessageListSelectItem", + "properties": { + "description": { + "description": "Optional. The main text describing the item.", + "type": "string" + }, + "image": { + "$ref": "GoogleCloudDialogflowV2beta1IntentMessageImage", + "description": "Optional. The image to display." + }, + "info": { + "$ref": "GoogleCloudDialogflowV2beta1IntentMessageSelectItemInfo", + "description": "Required. Additional information about this option." + }, + "title": { + "description": "Required. The title of the list item.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2beta1IntentMessageQuickReplies": { + "description": "The quick replies response message.", + "id": "GoogleCloudDialogflowV2beta1IntentMessageQuickReplies", + "properties": { + "quickReplies": { + "description": "Optional. The collection of quick replies.", + "items": { + "type": "string" + }, + "type": "array" + }, + "title": { + "description": "Optional. The title of the collection of quick replies.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2beta1IntentMessageSelectItemInfo": { + "description": "Additional info about the select item for when it is triggered in a\ndialog.", + "id": "GoogleCloudDialogflowV2beta1IntentMessageSelectItemInfo", + "properties": { + "key": { + "description": "Required. A unique key that will be sent back to the agent if this\nresponse is given.", + "type": "string" + }, + "synonyms": { + "description": "Optional. A list of synonyms that can also be used to trigger this\nitem in dialog.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2beta1IntentMessageSimpleResponse": { + "description": "The simple response message containing speech or text.", + "id": "GoogleCloudDialogflowV2beta1IntentMessageSimpleResponse", + "properties": { + "displayText": { + "description": "Optional. The text to display.", + "type": "string" + }, + "ssml": { + "description": "One of text_to_speech or ssml must be provided. Structured spoken\nresponse to the user in the SSML format. Mutually exclusive with\ntext_to_speech.", + "type": "string" + }, + "textToSpeech": { + "description": "One of text_to_speech or ssml must be provided. The plain text of the\nspeech output. Mutually exclusive with ssml.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2beta1IntentMessageSimpleResponses": { + "description": "The collection of simple response candidates.\nThis message in `QueryResult.fulfillment_messages` and\n`WebhookResponse.fulfillment_messages` should contain only one\n`SimpleResponse`.", + "id": "GoogleCloudDialogflowV2beta1IntentMessageSimpleResponses", + "properties": { + "simpleResponses": { + "description": "Required. The list of simple responses.", + "items": { + "$ref": "GoogleCloudDialogflowV2beta1IntentMessageSimpleResponse" + }, + "type": "array" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2beta1IntentMessageSuggestion": { + "description": "The suggestion chip message that the user can tap to quickly post a reply\nto the conversation.", + "id": "GoogleCloudDialogflowV2beta1IntentMessageSuggestion", + "properties": { + "title": { + "description": "Required. The text shown the in the suggestion chip.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2beta1IntentMessageSuggestions": { + "description": "The collection of suggestions.", + "id": "GoogleCloudDialogflowV2beta1IntentMessageSuggestions", + "properties": { + "suggestions": { + "description": "Required. The list of suggested replies.", + "items": { + "$ref": "GoogleCloudDialogflowV2beta1IntentMessageSuggestion" + }, + "type": "array" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2beta1IntentMessageText": { + "description": "The text response message.", + "id": "GoogleCloudDialogflowV2beta1IntentMessageText", + "properties": { + "text": { + "description": "Optional. The collection of the agent's responses.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2beta1IntentParameter": { + "description": "Represents intent parameters.", + "id": "GoogleCloudDialogflowV2beta1IntentParameter", + "properties": { + "defaultValue": { + "description": "Optional. The default value to use when the `value` yields an empty\nresult.\nDefault values can be extracted from contexts by using the following\nsyntax: `#context_name.parameter_name`.", + "type": "string" + }, + "displayName": { + "description": "Required. The name of the parameter.", + "type": "string" + }, + "entityTypeDisplayName": { + "description": "Optional. The name of the entity type, prefixed with `@`, that\ndescribes values of the parameter. If the parameter is\nrequired, this must be provided.", + "type": "string" + }, + "isList": { + "description": "Optional. Indicates whether the parameter represents a list of values.", + "type": "boolean" + }, + "mandatory": { + "description": "Optional. Indicates whether the parameter is required. That is,\nwhether the intent cannot be completed without collecting the parameter\nvalue.", + "type": "boolean" + }, + "name": { + "description": "The unique identifier of this parameter.", + "type": "string" + }, + "prompts": { + "description": "Optional. The collection of prompts that the agent can present to the\nuser in order to collect value for the parameter.", + "items": { + "type": "string" + }, + "type": "array" + }, + "value": { + "description": "Optional. The definition of the parameter value. It can be:\n- a constant string,\n- a parameter value defined as `$parameter_name`,\n- an original parameter value defined as `$parameter_name.original`,\n- a parameter value from some context defined as\n `#context_name.parameter_name`.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2beta1IntentTrainingPhrase": { "description": "Represents an example or template that the agent is trained on.", - "type": "object", + "id": "GoogleCloudDialogflowV2beta1IntentTrainingPhrase", "properties": { "name": { "description": "Required. The unique identifier of this training phrase.", "type": "string" }, + "parts": { + "description": "Required. The collection of training phrase parts (can be annotated).\nFields: `entity_type`, `alias` and `user_defined` should be populated\nonly for the annotated parts of the training phrase.", + "items": { + "$ref": "GoogleCloudDialogflowV2beta1IntentTrainingPhrasePart" + }, + "type": "array" + }, "timesAddedCount": { "description": "Optional. Indicates how many times this example or template was added to\nthe intent. Each time a developer adds an existing sample by editing an\nintent or training, this counter is increased.", "format": "int32", "type": "integer" }, "type": { + "description": "Required. The type of the training phrase.", "enum": [ "TYPE_UNSPECIFIED", "EXAMPLE", "TEMPLATE" ], - "description": "Required. The type of the training phrase.", - "type": "string", "enumDescriptions": [ "Not specified. This value should never be used.", "Examples do not contain @-prefixed entity type names, but example parts\ncan be annotated with entity types.", "Templates are not annotated with entity types, but they can contain\n@-prefixed entity type names as substrings." - ] - }, - "parts": { - "type": "array", - "items": { - "$ref": "IntentTrainingPhrasePart" - }, - "description": "Required. The collection of training phrase parts (can be annotated).\nFields: `entity_type`, `alias` and `user_defined` should be populated\nonly for the annotated parts of the training phrase." + ], + "type": "string" } }, - "id": "IntentTrainingPhrase" + "type": "object" }, - "ListIntentsResponse": { - "description": "The response message for Intents.ListIntents.", - "type": "object", + "GoogleCloudDialogflowV2beta1IntentTrainingPhrasePart": { + "description": "Represents a part of a training phrase.", + "id": "GoogleCloudDialogflowV2beta1IntentTrainingPhrasePart", "properties": { - "intents": { - "description": "The list of agent intents. There will be a maximum number of items\nreturned based on the page_size field in the request.", - "type": "array", + "alias": { + "description": "Optional. The parameter name for the value extracted from the\nannotated part of the example.", + "type": "string" + }, + "entityType": { + "description": "Optional. The entity type name prefixed with `@`. This field is\nrequired for the annotated part of the text and applies only to\nexamples.", + "type": "string" + }, + "text": { + "description": "Required. The text corresponding to the example or template,\nif there are no annotations. For\nannotated examples, it is the text for one of the example's parts.", + "type": "string" + }, + "userDefined": { + "description": "Optional. Indicates whether the text was manually annotated by the\ndeveloper.", + "type": "boolean" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2beta1ListContextsResponse": { + "description": "The response message for Contexts.ListContexts.", + "id": "GoogleCloudDialogflowV2beta1ListContextsResponse", + "properties": { + "contexts": { + "description": "The list of contexts. There will be a maximum number of items\nreturned based on the page_size field in the request.", "items": { - "$ref": "Intent" - } + "$ref": "GoogleCloudDialogflowV2beta1Context" + }, + "type": "array" }, "nextPageToken": { "description": "Token to retrieve the next page of results, or empty if there are no\nmore results in the list.", "type": "string" } }, - "id": "ListIntentsResponse" + "type": "object" }, - "LatLng": { + "GoogleCloudDialogflowV2beta1ListEntityTypesResponse": { + "description": "The response message for EntityTypes.ListEntityTypes.", + "id": "GoogleCloudDialogflowV2beta1ListEntityTypesResponse", + "properties": { + "entityTypes": { + "description": "The list of agent entity types. There will be a maximum number of items\nreturned based on the page_size field in the request.", + "items": { + "$ref": "GoogleCloudDialogflowV2beta1EntityType" + }, + "type": "array" + }, + "nextPageToken": { + "description": "Token to retrieve the next page of results, or empty if there are no\nmore results in the list.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2beta1ListIntentsResponse": { + "description": "The response message for Intents.ListIntents.", + "id": "GoogleCloudDialogflowV2beta1ListIntentsResponse", + "properties": { + "intents": { + "description": "The list of agent intents. There will be a maximum number of items\nreturned based on the page_size field in the request.", + "items": { + "$ref": "GoogleCloudDialogflowV2beta1Intent" + }, + "type": "array" + }, + "nextPageToken": { + "description": "Token to retrieve the next page of results, or empty if there are no\nmore results in the list.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2beta1ListSessionEntityTypesResponse": { + "description": "The response message for SessionEntityTypes.ListSessionEntityTypes.", + "id": "GoogleCloudDialogflowV2beta1ListSessionEntityTypesResponse", + "properties": { + "nextPageToken": { + "description": "Token to retrieve the next page of results, or empty if there are no\nmore results in the list.", + "type": "string" + }, + "sessionEntityTypes": { + "description": "The list of session entity types. There will be a maximum number of items\nreturned based on the page_size field in the request.", + "items": { + "$ref": "GoogleCloudDialogflowV2beta1SessionEntityType" + }, + "type": "array" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2beta1OriginalDetectIntentRequest": { + "description": "Represents the contents of the original request that was passed to\nthe `[Streaming]DetectIntent` call.", + "id": "GoogleCloudDialogflowV2beta1OriginalDetectIntentRequest", + "properties": { + "payload": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "description": "Optional. This field is set to the value of `QueryParameters.payload` field\npassed in the request.", + "type": "object" + }, + "source": { + "description": "The source of this request, e.g., `google`, `facebook`, `slack`. It is set\nby Dialogflow-owned servers. Possible values of this field correspond to\nIntent.Message.Platform.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2beta1QueryInput": { + "description": "Represents the query input. It can contain either:\n\n1. An audio config which\n instructs the speech recognizer how to process the speech audio.\n\n2. A conversational query in the form of text,.\n\n3. An event that specifies which intent to trigger.", + "id": "GoogleCloudDialogflowV2beta1QueryInput", + "properties": { + "audioConfig": { + "$ref": "GoogleCloudDialogflowV2beta1InputAudioConfig", + "description": "Instructs the speech recognizer how to process the speech audio." + }, + "event": { + "$ref": "GoogleCloudDialogflowV2beta1EventInput", + "description": "The event to be processed." + }, + "text": { + "$ref": "GoogleCloudDialogflowV2beta1TextInput", + "description": "The natural language text to be processed." + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2beta1QueryParameters": { + "description": "Represents the parameters of the conversational query.", + "id": "GoogleCloudDialogflowV2beta1QueryParameters", + "properties": { + "contexts": { + "description": "Optional. The collection of contexts to be activated before this query is\nexecuted.", + "items": { + "$ref": "GoogleCloudDialogflowV2beta1Context" + }, + "type": "array" + }, + "geoLocation": { + "$ref": "GoogleTypeLatLng", + "description": "Optional. The geo location of this conversational query." + }, + "payload": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "description": "Optional. This field can be used to pass custom data into the webhook\nassociated with the agent. Arbitrary JSON objects are supported.", + "type": "object" + }, + "resetContexts": { + "description": "Optional. Specifies whether to delete all contexts in the current session\nbefore the new ones are activated.", + "type": "boolean" + }, + "sessionEntityTypes": { + "description": "Optional. The collection of session entity types to replace or extend\ndeveloper entities with for this query only. The entity synonyms apply\nto all languages.", + "items": { + "$ref": "GoogleCloudDialogflowV2beta1SessionEntityType" + }, + "type": "array" + }, + "timeZone": { + "description": "Optional. The time zone of this conversational query from the\n[time zone database](https://www.iana.org/time-zones), e.g.,\nAmerica/New_York, Europe/Paris. If not provided, the time zone specified in\nagent settings is used.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2beta1QueryResult": { + "description": "Represents the result of conversational query or event processing.", + "id": "GoogleCloudDialogflowV2beta1QueryResult", + "properties": { + "action": { + "description": "The action name from the matched intent.", + "type": "string" + }, + "allRequiredParamsPresent": { + "description": "This field is set to:\n- `false` if the matched intent has required parameters and not all of\n the required parameter values have been collected.\n- `true` if all required parameter values have been collected, or if the\n matched intent doesn't contain any required parameters.", + "type": "boolean" + }, + "diagnosticInfo": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "description": "The free-form diagnostic info. For example, this field\ncould contain webhook call latency.", + "type": "object" + }, + "fulfillmentMessages": { + "description": "The collection of rich messages to present to the user.", + "items": { + "$ref": "GoogleCloudDialogflowV2beta1IntentMessage" + }, + "type": "array" + }, + "fulfillmentText": { + "description": "The text to be pronounced to the user or shown on the screen.", + "type": "string" + }, + "intent": { + "$ref": "GoogleCloudDialogflowV2beta1Intent", + "description": "The intent that matched the conversational query. Some, not\nall fields are filled in this message, including but not limited to:\n`name`, `display_name` and `webhook_state`." + }, + "intentDetectionConfidence": { + "description": "The intent detection confidence. Values range from 0.0\n(completely uncertain) to 1.0 (completely certain).", + "format": "float", + "type": "number" + }, + "languageCode": { + "description": "The language that was triggered during intent detection.\nSee [Language Support](https://dialogflow.com/docs/reference/language)\nfor a list of the currently supported language codes.", + "type": "string" + }, + "outputContexts": { + "description": "The collection of output contexts. If applicable,\n`output_contexts.parameters` contains entries with name\n`\u003cparameter name\u003e.original` containing the original parameter values\nbefore the query.", + "items": { + "$ref": "GoogleCloudDialogflowV2beta1Context" + }, + "type": "array" + }, + "parameters": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "description": "The collection of extracted parameters.", + "type": "object" + }, + "queryText": { + "description": "The original conversational query text:\n- If natural language text was provided as input, `query_text` contains\n a copy of the input.\n- If natural language speech audio was provided as input, `query_text`\n contains the speech recognition result. If speech recognizer produced\n multiple alternatives, a particular one is picked.\n- If an event was provided as input, `query_text` is not set.", + "type": "string" + }, + "speechRecognitionConfidence": { + "description": "The Speech recognition confidence between 0.0 and 1.0. A higher number\nindicates an estimated greater likelihood that the recognized words are\ncorrect. The default of 0.0 is a sentinel value indicating that confidence\nwas not set.\n\nYou should not rely on this field as it isn't guaranteed to be accurate, or\neven set. In particular this field isn't set in Webhook calls and for\nStreamingDetectIntent since the streaming endpoint has separate confidence\nestimates per portion of the audio in StreamingRecognitionResult.", + "format": "float", + "type": "number" + }, + "webhookPayload": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "description": "If the query was fulfilled by a webhook call, this field is set to the\nvalue of the `payload` field returned in the webhook response.", + "type": "object" + }, + "webhookSource": { + "description": "If the query was fulfilled by a webhook call, this field is set to the\nvalue of the `source` field returned in the webhook response.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2beta1RestoreAgentRequest": { + "description": "The request message for Agents.RestoreAgent.", + "id": "GoogleCloudDialogflowV2beta1RestoreAgentRequest", + "properties": { + "agentContent": { + "description": "The agent to restore.\n\nExample for how to restore an agent via the command line:\n\ncurl \\\n 'https://dialogflow.googleapis.com/v2beta1/projects/\u003cproject_name\u003e/agent:restore\\\n -X POST \\\n -H 'Authorization: Bearer '$(gcloud auth print-access-token) \\\n -H 'Accept: application/json' \\\n -H 'Content-Type: application/json' \\\n --compressed \\\n --data-binary \"{\n 'agentContent': '$(cat \u003cagent zip file\u003e | base64 -w 0)'\n }\" \\", + "format": "byte", + "type": "string" + }, + "agentUri": { + "description": "The URI to a Google Cloud Storage file containing the agent to restore.\nNote: The URI must start with \"gs://\".", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2beta1SearchAgentsResponse": { + "description": "The response message for Agents.SearchAgents.", + "id": "GoogleCloudDialogflowV2beta1SearchAgentsResponse", + "properties": { + "agents": { + "description": "The list of agents. There will be a maximum number of items returned based\non the page_size field in the request.", + "items": { + "$ref": "GoogleCloudDialogflowV2beta1Agent" + }, + "type": "array" + }, + "nextPageToken": { + "description": "Token to retrieve the next page of results, or empty if there are no\nmore results in the list.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2beta1SessionEntityType": { + "description": "Represents a session entity type.\n\nExtends or replaces a developer entity type at the user session level (we\nrefer to the entity types defined at the agent level as \"developer entity\ntypes\").\n\nNote: session entity types apply to all queries, regardless of the language.", + "id": "GoogleCloudDialogflowV2beta1SessionEntityType", + "properties": { + "entities": { + "description": "Required. The collection of entities associated with this session entity\ntype.", + "items": { + "$ref": "GoogleCloudDialogflowV2beta1EntityTypeEntity" + }, + "type": "array" + }, + "entityOverrideMode": { + "description": "Required. Indicates whether the additional data should override or\nsupplement the developer entity type definition.", + "enum": [ + "ENTITY_OVERRIDE_MODE_UNSPECIFIED", + "ENTITY_OVERRIDE_MODE_OVERRIDE", + "ENTITY_OVERRIDE_MODE_SUPPLEMENT" + ], + "enumDescriptions": [ + "Not specified. This value should be never used.", + "The collection of session entities overrides the collection of entities\nin the corresponding developer entity type.", + "The collection of session entities extends the collection of entities in\nthe corresponding developer entity type.\nCalls to `ListSessionEntityTypes`, `GetSessionEntityType`,\n`CreateSessionEntityType` and `UpdateSessionEntityType` return the full\ncollection of entities from the developer entity type in the agent's\ndefault language and the session entity type." + ], + "type": "string" + }, + "name": { + "description": "Required. The unique identifier of this session entity type. Format:\n`projects/\u003cProject ID\u003e/agent/sessions/\u003cSession ID\u003e/entityTypes/\u003cEntity Type\nDisplay Name\u003e`, or\n`projects/\u003cProject ID\u003e/agent/environments/\u003cEnvironment ID\u003e/users/\u003cUser\nID\u003e/sessions\n/\u003cSession ID\u003e/entityTypes/\u003cEntity Type Display Name\u003e`.\nNote: Environments and users are under construction and will be available\nsoon. If \u003cEnvironment ID\u003e is not specified, we assume default 'draft'\nenvironment. If \u003cUser ID\u003e is not specified, we assume default '-' user.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2beta1TextInput": { + "description": "Represents the natural language text to be processed.", + "id": "GoogleCloudDialogflowV2beta1TextInput", + "properties": { + "languageCode": { + "description": "Required. The language of this conversational query. See [Language\nSupport](https://dialogflow.com/docs/languages) for a list of the\ncurrently supported language codes. Note that queries in the same session\ndo not necessarily need to specify the same language.", + "type": "string" + }, + "text": { + "description": "Required. The UTF-8 encoded natural language text to be processed.\nText length must not exceed 256 bytes.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2beta1TrainAgentRequest": { + "description": "The request message for Agents.TrainAgent.", + "id": "GoogleCloudDialogflowV2beta1TrainAgentRequest", + "properties": {}, + "type": "object" + }, + "GoogleCloudDialogflowV2beta1WebhookRequest": { + "description": "The request message for a webhook call.", + "id": "GoogleCloudDialogflowV2beta1WebhookRequest", + "properties": { + "originalDetectIntentRequest": { + "$ref": "GoogleCloudDialogflowV2beta1OriginalDetectIntentRequest", + "description": "Optional. The contents of the original request that was passed to\n`[Streaming]DetectIntent` call." + }, + "queryResult": { + "$ref": "GoogleCloudDialogflowV2beta1QueryResult", + "description": "The result of the conversational query or event processing. Contains the\nsame value as `[Streaming]DetectIntentResponse.query_result`." + }, + "responseId": { + "description": "The unique identifier of the response. Contains the same value as\n`[Streaming]DetectIntentResponse.response_id`.", + "type": "string" + }, + "session": { + "description": "The unique identifier of detectIntent request session.\nCan be used to identify end-user inside webhook implementation.\nFormat: `projects/\u003cProject ID\u003e/agent/sessions/\u003cSession ID\u003e`.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2beta1WebhookResponse": { + "description": "The response message for a webhook call.", + "id": "GoogleCloudDialogflowV2beta1WebhookResponse", + "properties": { + "followupEventInput": { + "$ref": "GoogleCloudDialogflowV2beta1EventInput", + "description": "Optional. Makes the platform immediately invoke another `DetectIntent` call\ninternally with the specified event as input." + }, + "fulfillmentMessages": { + "description": "Optional. The collection of rich messages to present to the user. This\nvalue is passed directly to `QueryResult.fulfillment_messages`.", + "items": { + "$ref": "GoogleCloudDialogflowV2beta1IntentMessage" + }, + "type": "array" + }, + "fulfillmentText": { + "description": "Optional. The text to be shown on the screen. This value is passed directly\nto `QueryResult.fulfillment_text`.", + "type": "string" + }, + "outputContexts": { + "description": "Optional. The collection of output contexts. This value is passed directly\nto `QueryResult.output_contexts`.", + "items": { + "$ref": "GoogleCloudDialogflowV2beta1Context" + }, + "type": "array" + }, + "payload": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "description": "Optional. This value is passed directly to `QueryResult.webhook_payload`.", + "type": "object" + }, + "source": { + "description": "Optional. This value is passed directly to `QueryResult.webhook_source`.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleLongrunningOperation": { + "description": "This resource represents a long-running operation that is the result of a\nnetwork API call.", + "id": "GoogleLongrunningOperation", + "properties": { + "done": { + "description": "If the value is `false`, it means the operation is still in progress.\nIf `true`, the operation is completed, and either `error` or `response` is\navailable.", + "type": "boolean" + }, + "error": { + "$ref": "GoogleRpcStatus", + "description": "The error result of the operation in case of failure or cancellation." + }, + "metadata": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "description": "Service-specific metadata associated with the operation. It typically\ncontains progress information and common metadata such as create time.\nSome services might not provide such metadata. Any method that returns a\nlong-running operation should document the metadata type, if any.", + "type": "object" + }, + "name": { + "description": "The server-assigned name, which is only unique within the same service that\noriginally returns it. If you use the default HTTP mapping, the\n`name` should have the format of `operations/some/unique/name`.", + "type": "string" + }, + "response": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "description": "The normal response of the operation in case of success. If the original\nmethod returns no data on success, such as `Delete`, the response is\n`google.protobuf.Empty`. If the original method is standard\n`Get`/`Create`/`Update`, the response should be the resource. For other\nmethods, the response should have the type `XxxResponse`, where `Xxx`\nis the original method name. For example, if the original method name\nis `TakeSnapshot()`, the inferred response type is\n`TakeSnapshotResponse`.", + "type": "object" + } + }, + "type": "object" + }, + "GoogleProtobufEmpty": { + "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": "GoogleProtobufEmpty", + "properties": {}, + "type": "object" + }, + "GoogleRpcStatus": { + "description": "The `Status` type defines a logical error model that is suitable for different\nprogramming environments, including REST APIs and RPC APIs. It is used by\n[gRPC](https://github.com/grpc). The error model is designed to be:\n\n- Simple to use and understand for most users\n- Flexible enough to meet unexpected needs\n\n# Overview\n\nThe `Status` message contains three pieces of data: error code, error message,\nand error details. The error code should be an enum value of\ngoogle.rpc.Code, but it may accept additional error codes if needed. The\nerror message should be a developer-facing English message that helps\ndevelopers *understand* and *resolve* the error. If a localized user-facing\nerror message is needed, put the localized message in the error details or\nlocalize it in the client. The optional error details may contain arbitrary\ninformation about the error. There is a predefined set of error detail types\nin the package `google.rpc` that can be used for common error conditions.\n\n# Language mapping\n\nThe `Status` message is the logical representation of the error model, but it\nis not necessarily the actual wire format. When the `Status` message is\nexposed in different client libraries and different wire protocols, it can be\nmapped differently. For example, it will likely be mapped to some exceptions\nin Java, but more likely mapped to some error codes in C.\n\n# Other uses\n\nThe error model and the `Status` message can be used in a variety of\nenvironments, either with or without APIs, to provide a\nconsistent developer experience across different environments.\n\nExample uses of this error model include:\n\n- Partial errors. If a service needs to return partial errors to the client,\n it may embed the `Status` in the normal response to indicate the partial\n errors.\n\n- Workflow errors. A typical workflow has multiple steps. Each step may\n have a `Status` message for error reporting.\n\n- Batch operations. If a client uses batch request and batch response, the\n `Status` message should be used directly inside batch response, one for\n each error sub-response.\n\n- Asynchronous operations. If an API call embeds asynchronous operation\n results in its response, the status of those operations should be\n represented directly using the `Status` message.\n\n- Logging. If some API errors are stored in logs, the message `Status` could\n be used directly after any stripping needed for security/privacy reasons.", + "id": "GoogleRpcStatus", + "properties": { + "code": { + "description": "The status code, which should be an enum value of google.rpc.Code.", + "format": "int32", + "type": "integer" + }, + "details": { + "description": "A list of messages that carry the error details. There is a common set of\nmessage types for APIs to use.", + "items": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "A developer-facing error message, which should be in English. Any\nuser-facing error message should be localized and sent in the\ngoogle.rpc.Status.details field, or localized by the client.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleTypeLatLng": { "description": "An object representing a latitude/longitude pair. This is expressed as a pair\nof doubles representing degrees latitude and degrees longitude. Unless\nspecified otherwise, this must conform to the\n\u003ca href=\"http://www.unoosa.org/pdf/icg/2012/template/WGS_84.pdf\"\u003eWGS84\nstandard\u003c/a\u003e. Values must be within normalized ranges.", - "type": "object", + "id": "GoogleTypeLatLng", "properties": { "latitude": { "description": "The latitude in degrees. It must be in the range [-90.0, +90.0].", @@ -672,2238 +4244,11 @@ "type": "number" } }, - "id": "LatLng" - }, - "Context": { - "properties": { - "name": { - "description": "Required. The unique identifier of the context. Format:\n`projects/\u003cProject ID\u003e/agent/sessions/\u003cSession ID\u003e/contexts/\u003cContext ID\u003e`.\nNote: The Context ID is always converted to lowercase.", - "type": "string" - }, - "parameters": { - "description": "Optional. The collection of parameters associated with this context.\nRefer to [this doc](https://dialogflow.com/docs/actions-and-parameters) for\nsyntax.", - "type": "object", - "additionalProperties": { - "description": "Properties of the object.", - "type": "any" - } - }, - "lifespanCount": { - "description": "Optional. The number of conversational query requests after which the\ncontext expires. If set to `0` (the default) the context expires\nimmediately. Contexts expire automatically after 10 minutes even if there\nare no matching queries.", - "format": "int32", - "type": "integer" - } - }, - "id": "Context", - "description": "Represents a context.", "type": "object" - }, - "ImportAgentRequest": { - "description": "The request message for Agents.ImportAgent.", - "type": "object", - "properties": { - "agentUri": { - "description": "Warning: Importing agents from a URI is not implemented yet.\nThis feature is coming soon.\n\nThe URI to a Google Cloud Storage file containing the agent to import.\nNote: The URI must start with \"gs://\".", - "type": "string" - }, - "agentContent": { - "description": "The agent to import.\n\nExample for how to import an agent via the command line:\n\ncurl \\\n 'https://dialogflow.googleapis.com/v2beta1/projects/\u003cproject_name\u003e/agent:import\\\n -X POST \\\n -H 'Authorization: Bearer '$(gcloud auth print-access-token) \\\n -H 'Accept: application/json' \\\n -H 'Content-Type: application/json' \\\n --compressed \\\n --data-binary \"{\n 'agentContent': '$(cat \u003cagent zip file\u003e | base64 -w 0)'\n }\"", - "format": "byte", - "type": "string" - } - }, - "id": "ImportAgentRequest" - }, - "BatchUpdateIntentsResponse": { - "description": "The response message for Intents.BatchUpdateIntents.", - "type": "object", - "properties": { - "intents": { - "description": "The collection of updated or created intents.", - "type": "array", - "items": { - "$ref": "Intent" - } - } - }, - "id": "BatchUpdateIntentsResponse" - }, - "IntentParameter": { - "description": "Represents intent parameters.", - "type": "object", - "properties": { - "displayName": { - "type": "string", - "description": "Required. The name of the parameter." - }, - "entityTypeDisplayName": { - "description": "Optional. The name of the entity type, prefixed with `@`, that\ndescribes values of the parameter. If the parameter is\nrequired, this must be provided.", - "type": "string" - }, - "prompts": { - "description": "Optional. The collection of prompts that the agent can present to the\nuser in order to collect value for the parameter.", - "type": "array", - "items": { - "type": "string" - } - }, - "defaultValue": { - "type": "string", - "description": "Optional. The default value to use when the `value` yields an empty\nresult.\nDefault values can be extracted from contexts by using the following\nsyntax: `#context_name.parameter_name`." - }, - "mandatory": { - "description": "Optional. Indicates whether the parameter is required. That is,\nwhether the intent cannot be completed without collecting the parameter\nvalue.", - "type": "boolean" - }, - "isList": { - "description": "Optional. Indicates whether the parameter represents a list of values.", - "type": "boolean" - }, - "name": { - "description": "The unique identifier of this parameter.", - "type": "string" - }, - "value": { - "description": "Optional. The definition of the parameter value. It can be:\n- a constant string,\n- a parameter value defined as `$parameter_name`,\n- an original parameter value defined as `$parameter_name.original`,\n- a parameter value from some context defined as\n `#context_name.parameter_name`.", - "type": "string" - } - }, - "id": "IntentParameter" - }, - "ExportAgentResponse": { - "properties": { - "agentContent": { - "description": "The exported agent.\n\nExample for how to export an agent to a zip file via a command line:\n\ncurl \\\n 'https://dialogflow.googleapis.com/v2beta1/projects/\u003cproject_name\u003e/agent:export'\\\n -X POST \\\n -H 'Authorization: Bearer '$(gcloud auth print-access-token) \\\n -H 'Accept: application/json' \\\n -H 'Content-Type: application/json' \\\n --compressed \\\n --data-binary '{}' \\\n| grep agentContent | sed -e 's/.*\"agentContent\": \"\\([^\"]*\\)\".*/\\1/' \\\n| base64 --decode \u003e \u003cagent zip file\u003e", - "format": "byte", - "type": "string" - }, - "agentUri": { - "description": "The URI to a file containing the exported agent. This field is populated\nonly if `agent_uri` is specified in `ExportAgentRequest`.", - "type": "string" - } - }, - "id": "ExportAgentResponse", - "description": "The response message for Agents.ExportAgent.", - "type": "object" - }, - "IntentMessageBasicCardButtonOpenUriAction": { - "description": "Opens the given URI.", - "type": "object", - "properties": { - "uri": { - "description": "Required. The HTTP or HTTPS scheme URI.", - "type": "string" - } - }, - "id": "IntentMessageBasicCardButtonOpenUriAction" - }, - "IntentMessageImage": { - "description": "The image response message.", - "type": "object", - "properties": { - "imageUri": { - "description": "Optional. The public URI to an image file.", - "type": "string" - }, - "accessibilityText": { - "description": "Optional. A text description of the image to be used for accessibility,\ne.g., screen readers.", - "type": "string" - } - }, - "id": "IntentMessageImage" - }, - "BatchUpdateIntentsRequest": { - "description": "The request message for Intents.BatchUpdateIntents.", - "type": "object", - "properties": { - "intentBatchUri": { - "description": "Warning: Importing intents from a URI is not implemented yet.\nThis feature is coming soon.\nThe URI to a Google Cloud Storage file containing intents to update or\ncreate. The file format can either be a serialized proto (of IntentBatch\ntype) or JSON object. Note: The URI must start with \"gs://\".", - "type": "string" - }, - "intentView": { - "enumDescriptions": [ - "Training phrases field is not populated in the response.", - "All fields are populated." - ], - "enum": [ - "INTENT_VIEW_UNSPECIFIED", - "INTENT_VIEW_FULL" - ], - "description": "Optional. The resource view to apply to the returned intent.", - "type": "string" - }, - "intentBatchInline": { - "$ref": "IntentBatch", - "description": "The collection of intents to update or create." - }, - "languageCode": { - "description": "Optional. The language of training phrases, parameters and rich messages\ndefined in `intents`. If not specified, the agent's default language is\nused. [More than a dozen\nlanguages](https://dialogflow.com/docs/reference/language) are supported.\nNote: languages must be enabled in the agent, before they can be used.", - "type": "string" - }, - "updateMask": { - "description": "Optional. The mask to control which fields get updated.", - "format": "google-fieldmask", - "type": "string" - } - }, - "id": "BatchUpdateIntentsRequest" - }, - "TrainAgentRequest": { - "properties": {}, - "id": "TrainAgentRequest", - "description": "The request message for Agents.TrainAgent.", - "type": "object" - }, - "SessionEntityType": { - "description": "Represents a session entity type.\n\nExtends or replaces a developer entity type at the user session level (we\nrefer to the entity types defined at the agent level as \"developer entity\ntypes\").\n\nNote: session entity types apply to all queries, regardless of the language.", - "type": "object", - "properties": { - "name": { - "description": "Required. The unique identifier of this session entity type. Format:\n`projects/\u003cProject ID\u003e/agent/sessions/\u003cSession ID\u003e/entityTypes/\u003cEntity Type\nDisplay Name\u003e`.", - "type": "string" - }, - "entityOverrideMode": { - "enumDescriptions": [ - "Not specified. This value should be never used.", - "The collection of session entities overrides the collection of entities\nin the corresponding developer entity type.", - "The collection of session entities extends the collection of entities in\nthe corresponding developer entity type.\nCalls to `ListSessionEntityTypes`, `GetSessionEntityType`,\n`CreateSessionEntityType` and `UpdateSessionEntityType` return the full\ncollection of entities from the developer entity type in the agent's\ndefault language and the session entity type." - ], - "enum": [ - "ENTITY_OVERRIDE_MODE_UNSPECIFIED", - "ENTITY_OVERRIDE_MODE_OVERRIDE", - "ENTITY_OVERRIDE_MODE_SUPPLEMENT" - ], - "description": "Required. Indicates whether the additional data should override or\nsupplement the developer entity type definition.", - "type": "string" - }, - "entities": { - "type": "array", - "items": { - "$ref": "EntityTypeEntity" - }, - "description": "Required. The collection of entities associated with this session entity\ntype." - } - }, - "id": "SessionEntityType" - }, - "Empty": { - "type": "object", - "properties": {}, - "id": "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 `{}`." - }, - "BatchUpdateEntitiesRequest": { - "description": "The response message for EntityTypes.BatchCreateEntities.", - "type": "object", - "properties": { - "entities": { - "description": "Required. The collection of new entities to replace the existing entities.", - "type": "array", - "items": { - "$ref": "EntityTypeEntity" - } - }, - "languageCode": { - "description": "Optional. The language of entity synonyms defined in `entities`. If not\nspecified, the agent's default language is used.\n[More than a dozen\nlanguages](https://dialogflow.com/docs/reference/language) are supported.\nNote: languages must be enabled in the agent, before they can be used.", - "type": "string" - }, - "updateMask": { - "description": "Optional. The mask to control which fields get updated.", - "format": "google-fieldmask", - "type": "string" - } - }, - "id": "BatchUpdateEntitiesRequest" - }, - "IntentMessageText": { - "properties": { - "text": { - "description": "Optional. The collection of the agent's responses.", - "type": "array", - "items": { - "type": "string" - } - } - }, - "id": "IntentMessageText", - "description": "The text response message.", - "type": "object" - }, - "WebhookResponse": { - "description": "The response message for a webhook call.", - "type": "object", - "properties": { - "payload": { - "additionalProperties": { - "description": "Properties of the object.", - "type": "any" - }, - "description": "Optional. This value is passed directly to `QueryResult.webhook_payload`.", - "type": "object" - }, - "source": { - "description": "Optional. This value is passed directly to `QueryResult.webhook_source`.", - "type": "string" - }, - "followupEventInput": { - "$ref": "EventInput", - "description": "Optional. Makes the platform immediately invoke another `DetectIntent` call\ninternally with the specified event as input." - }, - "outputContexts": { - "description": "Optional. The collection of output contexts. This value is passed directly\nto `QueryResult.output_contexts`.", - "type": "array", - "items": { - "$ref": "Context" - } - }, - "fulfillmentText": { - "type": "string", - "description": "Optional. The text to be shown on the screen. This value is passed directly\nto `QueryResult.fulfillment_text`." - }, - "fulfillmentMessages": { - "description": "Optional. The collection of rich messages to present to the user. This\nvalue is passed directly to `QueryResult.fulfillment_messages`.", - "type": "array", - "items": { - "$ref": "IntentMessage" - } - } - }, - "id": "WebhookResponse" - }, - "BatchDeleteIntentsRequest": { - "description": "The request message for Intents.BatchDeleteIntents.", - "type": "object", - "properties": { - "intents": { - "type": "array", - "items": { - "$ref": "Intent" - }, - "description": "Required. The collection of intents to delete. Only intent `name` must be\nfilled in." - } - }, - "id": "BatchDeleteIntentsRequest" - }, - "QueryInput": { - "description": "Represents the query input. It can contain either:\n\n1. An audio config which\n instructs the speech recognizer how to process the speech audio.\n\n2. A conversational query in the form of text,.\n\n3. An event that specifies which intent to trigger.", - "type": "object", - "properties": { - "event": { - "$ref": "EventInput", - "description": "The event to be processed." - }, - "text": { - "description": "The natural language text to be processed.", - "$ref": "TextInput" - }, - "audioConfig": { - "$ref": "InputAudioConfig", - "description": "Instructs the speech recognizer how to process the speech audio." - } - }, - "id": "QueryInput" - }, - "DetectIntentResponse": { - "description": "The message returned from the DetectIntent method.", - "type": "object", - "properties": { - "queryResult": { - "$ref": "QueryResult", - "description": "The results of the conversational query or event processing." - }, - "webhookStatus": { - "$ref": "Status", - "description": "Specifies the status of the webhook request. `webhook_status`\nis never populated in webhook requests." - }, - "responseId": { - "description": "The unique identifier of the response. It can be used to\nlocate a response in the training example set or for reporting issues.", - "type": "string" - } - }, - "id": "DetectIntentResponse" - }, - "IntentFollowupIntentInfo": { - "description": "Represents a single followup intent in the chain.", - "type": "object", - "properties": { - "followupIntentName": { - "type": "string", - "description": "The unique identifier of the followup intent.\nFormat: `projects/\u003cProject ID\u003e/agent/intents/\u003cIntent ID\u003e`." - }, - "parentFollowupIntentName": { - "description": "The unique identifier of the followup intent parent.\nFormat: `projects/\u003cProject ID\u003e/agent/intents/\u003cIntent ID\u003e`.", - "type": "string" - } - }, - "id": "IntentFollowupIntentInfo" - }, - "ExportAgentRequest": { - "description": "The request message for Agents.ExportAgent.", - "type": "object", - "properties": { - "agentUri": { - "description": "Warning: Exporting agents to a URI is not implemented yet.\nThis feature is coming soon.\n\nOptional. The Google Cloud Storage URI to export the agent to.\nNote: The URI must start with\n\"gs://\". If left unspecified, the serialized agent is returned inline.", - "type": "string" - } - }, - "id": "ExportAgentRequest" - }, - "IntentMessageLinkOutSuggestion": { - "description": "The suggestion chip message that allows the user to jump out to the app\nor website associated with this agent.", - "type": "object", - "properties": { - "destinationName": { - "description": "Required. The name of the app or site this chip is linking to.", - "type": "string" - }, - "uri": { - "description": "Required. The URI of the app or site to open when the user taps the\nsuggestion chip.", - "type": "string" - } - }, - "id": "IntentMessageLinkOutSuggestion" - }, - "IntentMessageSelectItemInfo": { - "description": "Additional info about the select item for when it is triggered in a\ndialog.", - "type": "object", - "properties": { - "key": { - "description": "Required. A unique key that will be sent back to the agent if this\nresponse is given.", - "type": "string" - }, - "synonyms": { - "description": "Optional. A list of synonyms that can also be used to trigger this\nitem in dialog.", - "type": "array", - "items": { - "type": "string" - } - } - }, - "id": "IntentMessageSelectItemInfo" - }, - "Operation": { - "description": "This resource represents a long-running operation that is the result of a\nnetwork API call.", - "type": "object", - "properties": { - "done": { - "description": "If the value is `false`, it means the operation is still in progress.\nIf `true`, the operation is completed, and either `error` or `response` is\navailable.", - "type": "boolean" - }, - "response": { - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - }, - "description": "The normal response of the operation in case of success. If the original\nmethod returns no data on success, such as `Delete`, the response is\n`google.protobuf.Empty`. If the original method is standard\n`Get`/`Create`/`Update`, the response should be the resource. For other\nmethods, the response should have the type `XxxResponse`, where `Xxx`\nis the original method name. For example, if the original method name\nis `TakeSnapshot()`, the inferred response type is\n`TakeSnapshotResponse`.", - "type": "object" - }, - "name": { - "description": "The server-assigned name, which is only unique within the same service that\noriginally returns it. If you use the default HTTP mapping, the\n`name` should have the format of `operations/some/unique/name`.", - "type": "string" - }, - "error": { - "description": "The error result of the operation in case of failure or cancellation.", - "$ref": "Status" - }, - "metadata": { - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - }, - "description": "Service-specific metadata associated with the operation. It typically\ncontains progress information and common metadata such as create time.\nSome services might not provide such metadata. Any method that returns a\nlong-running operation should document the metadata type, if any.", - "type": "object" - } - }, - "id": "Operation" - }, - "EventInput": { - "description": "Events allow for matching intents by event name instead of the natural\nlanguage input. For instance, input `\u003cevent: { name: “welcome_event”,\nparameters: { name: “Sam” } }\u003e` can trigger a personalized welcome response.\nThe parameter `name` may be used by the agent in the response:\n`“Hello #welcome_event.name! What can I do for you today?”`.", - "type": "object", - "properties": { - "languageCode": { - "description": "Required. The language of this query. See [Language\nSupport](https://dialogflow.com/docs/languages) for a list of the\ncurrently supported language codes. Note that queries in the same session\ndo not necessarily need to specify the same language.", - "type": "string" - }, - "name": { - "description": "Required. The unique identifier of the event.", - "type": "string" - }, - "parameters": { - "description": "Optional. The collection of parameters associated with the event.", - "type": "object", - "additionalProperties": { - "type": "any", - "description": "Properties of the object." - } - } - }, - "id": "EventInput" - }, - "IntentMessageSuggestions": { - "description": "The collection of suggestions.", - "type": "object", - "properties": { - "suggestions": { - "description": "Required. The list of suggested replies.", - "type": "array", - "items": { - "$ref": "IntentMessageSuggestion" - } - } - }, - "id": "IntentMessageSuggestions" - }, - "EntityType": { - "description": "Represents an entity type.\nEntity types serve as a tool for extracting parameter values from natural\nlanguage queries.", - "type": "object", - "properties": { - "entities": { - "description": "Optional. The collection of entities associated with the entity type.", - "type": "array", - "items": { - "$ref": "EntityTypeEntity" - } - }, - "name": { - "type": "string", - "description": "Required for all methods except `create` (`create` populates the name\nautomatically.\nThe unique identifier of the entity type. Format:\n`projects/\u003cProject ID\u003e/agent/entityTypes/\u003cEntity Type ID\u003e`." - }, - "displayName": { - "description": "Required. The name of the entity.", - "type": "string" - }, - "kind": { - "description": "Required. Indicates the kind of entity type.", - "type": "string", - "enumDescriptions": [ - "Not specified. This value should be never used.", - "Map entity types allow mapping of a group of synonyms to a canonical\nvalue.", - "List entity types contain a set of entries that do not map to canonical\nvalues. However, list entity types can contain references to other entity\ntypes (with or without aliases)." - ], - "enum": [ - "KIND_UNSPECIFIED", - "KIND_MAP", - "KIND_LIST" - ] - }, - "autoExpansionMode": { - "enum": [ - "AUTO_EXPANSION_MODE_UNSPECIFIED", - "AUTO_EXPANSION_MODE_DEFAULT" - ], - "description": "Optional. Indicates whether the entity type can be automatically\nexpanded.", - "type": "string", - "enumDescriptions": [ - "Auto expansion disabled for the entity.", - "Allows an agent to recognize values that have not been explicitly\nlisted in the entity." - ] - } - }, - "id": "EntityType" - }, - "Status": { - "description": "The `Status` type defines a logical error model that is suitable for different\nprogramming environments, including REST APIs and RPC APIs. It is used by\n[gRPC](https://github.com/grpc). The error model is designed to be:\n\n- Simple to use and understand for most users\n- Flexible enough to meet unexpected needs\n\n# Overview\n\nThe `Status` message contains three pieces of data: error code, error message,\nand error details. The error code should be an enum value of\ngoogle.rpc.Code, but it may accept additional error codes if needed. The\nerror message should be a developer-facing English message that helps\ndevelopers *understand* and *resolve* the error. If a localized user-facing\nerror message is needed, put the localized message in the error details or\nlocalize it in the client. The optional error details may contain arbitrary\ninformation about the error. There is a predefined set of error detail types\nin the package `google.rpc` that can be used for common error conditions.\n\n# Language mapping\n\nThe `Status` message is the logical representation of the error model, but it\nis not necessarily the actual wire format. When the `Status` message is\nexposed in different client libraries and different wire protocols, it can be\nmapped differently. For example, it will likely be mapped to some exceptions\nin Java, but more likely mapped to some error codes in C.\n\n# Other uses\n\nThe error model and the `Status` message can be used in a variety of\nenvironments, either with or without APIs, to provide a\nconsistent developer experience across different environments.\n\nExample uses of this error model include:\n\n- Partial errors. If a service needs to return partial errors to the client,\n it may embed the `Status` in the normal response to indicate the partial\n errors.\n\n- Workflow errors. A typical workflow has multiple steps. Each step may\n have a `Status` message for error reporting.\n\n- Batch operations. If a client uses batch request and batch response, the\n `Status` message should be used directly inside batch response, one for\n each error sub-response.\n\n- Asynchronous operations. If an API call embeds asynchronous operation\n results in its response, the status of those operations should be\n represented directly using the `Status` message.\n\n- Logging. If some API errors are stored in logs, the message `Status` could\n be used directly after any stripping needed for security/privacy reasons.", - "type": "object", - "properties": { - "details": { - "description": "A list of messages that carry the error details. There is a common set of\nmessage types for APIs to use.", - "type": "array", - "items": { - "type": "object", - "additionalProperties": { - "type": "any", - "description": "Properties of the object. Contains field @type with type URL." - } - } - }, - "code": { - "description": "The status code, which should be an enum value of google.rpc.Code.", - "format": "int32", - "type": "integer" - }, - "message": { - "description": "A developer-facing error message, which should be in English. Any\nuser-facing error message should be localized and sent in the\ngoogle.rpc.Status.details field, or localized by the client.", - "type": "string" - } - }, - "id": "Status" - }, - "IntentMessage": { - "type": "object", - "properties": { - "quickReplies": { - "description": "The quick replies response.", - "$ref": "IntentMessageQuickReplies" - }, - "card": { - "$ref": "IntentMessageCard", - "description": "The card response." - }, - "basicCard": { - "$ref": "IntentMessageBasicCard", - "description": "The basic card response for Actions on Google." - }, - "carouselSelect": { - "$ref": "IntentMessageCarouselSelect", - "description": "The carousel card response for Actions on Google." - }, - "linkOutSuggestion": { - "$ref": "IntentMessageLinkOutSuggestion", - "description": "The link out suggestion chip for Actions on Google." - }, - "simpleResponses": { - "$ref": "IntentMessageSimpleResponses", - "description": "The voice and text-only responses for Actions on Google." - }, - "image": { - "$ref": "IntentMessageImage", - "description": "The image response." - }, - "payload": { - "additionalProperties": { - "description": "Properties of the object.", - "type": "any" - }, - "description": "The response containing a custom payload.", - "type": "object" - }, - "text": { - "$ref": "IntentMessageText", - "description": "The text response." - }, - "platform": { - "enumDescriptions": [ - "Not specified.", - "Facebook.", - "Slack.", - "Telegram.", - "Kik.", - "Skype.", - "Line.", - "Viber.", - "Actions on Google." - ], - "enum": [ - "PLATFORM_UNSPECIFIED", - "FACEBOOK", - "SLACK", - "TELEGRAM", - "KIK", - "SKYPE", - "LINE", - "VIBER", - "ACTIONS_ON_GOOGLE" - ], - "description": "Optional. The platform that this message is intended for.", - "type": "string" - }, - "suggestions": { - "description": "The suggestion chips for Actions on Google.", - "$ref": "IntentMessageSuggestions" - }, - "listSelect": { - "description": "The list card response for Actions on Google.", - "$ref": "IntentMessageListSelect" - } - }, - "id": "IntentMessage", - "description": "Corresponds to the `Response` field in API.AI console." - }, - "ListContextsResponse": { - "properties": { - "nextPageToken": { - "description": "Token to retrieve the next page of results, or empty if there are no\nmore results in the list.", - "type": "string" - }, - "contexts": { - "description": "The list of contexts. There will be a maximum number of items\nreturned based on the page_size field in the request.", - "type": "array", - "items": { - "$ref": "Context" - } - } - }, - "id": "ListContextsResponse", - "description": "The response message for Contexts.ListContexts.", - "type": "object" - }, - "Agent": { - "description": "Represents a conversational agent.", - "type": "object", - "properties": { - "description": { - "description": "Optional. The description of this agent.\nThe maximum length is 500 characters. If exceeded, the request is rejected.", - "type": "string" - }, - "displayName": { - "description": "Required. The name of this agent.", - "type": "string" - }, - "parent": { - "description": "Required. The project of this agent.\nFormat: `projects/\u003cProject ID\u003e`.", - "type": "string" - }, - "matchMode": { - "enumDescriptions": [ - "Not specified.", - "Best for agents with a small number of examples in intents and/or wide\nuse of templates syntax and composite entities.", - "Can be used for agents with a large number of examples in intents,\nespecially the ones using @sys.any or very large developer entities." - ], - "enum": [ - "MATCH_MODE_UNSPECIFIED", - "MATCH_MODE_HYBRID", - "MATCH_MODE_ML_ONLY" - ], - "description": "Optional. Determines how intents are detected from user queries.", - "type": "string" - }, - "supportedLanguageCodes": { - "description": "Optional. The list of all languages supported by this agent (except for the\n`default_language_code`).", - "type": "array", - "items": { - "type": "string" - } - }, - "enableLogging": { - "type": "boolean", - "description": "Optional. Determines whether this agent should log conversation queries." - }, - "avatarUri": { - "type": "string", - "description": "Optional. The URI of the agent's avatar.\nAvatars are used throughout API.AI console and in the self-hosted\n[Web Demo](https://dialogflow.com/docs/integrations/web-demo) integration." - }, - "classificationThreshold": { - "description": "Optional. To filter out false positive results and still get variety in\nmatched natural language inputs for your agent, you can tune the machine\nlearning classification threshold. If the returned score value is less than\nthe threshold value, then a fallback intent is be triggered or, if there\nare no fallback intents defined, no intent will be triggered. The score\nvalues range from 0.0 (completely uncertain) to 1.0 (completely certain).\nIf set to 0.0, the default of 0.3 is used.", - "format": "float", - "type": "number" - }, - "timeZone": { - "description": "Required. The time zone of this agent from the\n[time zone database](https://www.iana.org/time-zones), e.g.,\nAmerica/New_York, Europe/Paris.", - "type": "string" - }, - "defaultLanguageCode": { - "type": "string", - "description": "Required. The default language of the agent as a language tag. See\n[Language Support](https://dialogflow.com/docs/reference/language) for a\nlist of the currently supported language codes.\nThis field cannot be set by the `Update` method." - } - }, - "id": "Agent" - }, - "EntityTypeBatch": { - "description": "This message is a wrapper around a collection of entity types.", - "type": "object", - "properties": { - "entityTypes": { - "description": "A collection of entity types.", - "type": "array", - "items": { - "$ref": "EntityType" - } - } - }, - "id": "EntityTypeBatch" - }, - "OriginalDetectIntentRequest": { - "description": "Represents the contents of the original request that was passed to\nthe `[Streaming]DetectIntent` call.", - "type": "object", - "properties": { - "source": { - "description": "The source of this request, e.g., `google`, `facebook`, `slack`. It is set\nby Dialogflow-owned servers. Possible values of this field correspond to\nIntent.Message.Platform.", - "type": "string" - }, - "payload": { - "additionalProperties": { - "description": "Properties of the object.", - "type": "any" - }, - "description": "Optional. This field is set to the value of `QueryParameters.payload` field\npassed in the request.", - "type": "object" - } - }, - "id": "OriginalDetectIntentRequest" - }, - "IntentMessageBasicCardButton": { - "properties": { - "openUriAction": { - "$ref": "IntentMessageBasicCardButtonOpenUriAction", - "description": "Required. Action to take when a user taps on the button." - }, - "title": { - "description": "Required. The title of the button.", - "type": "string" - } - }, - "id": "IntentMessageBasicCardButton", - "description": "The button object that appears at the bottom of a card.", - "type": "object" - }, - "IntentMessageSimpleResponse": { - "description": "The simple response message containing speech or text.", - "type": "object", - "properties": { - "ssml": { - "description": "One of text_to_speech or ssml must be provided. Structured spoken\nresponse to the user in the SSML format. Mutually exclusive with\ntext_to_speech.", - "type": "string" - }, - "displayText": { - "description": "Optional. The text to display.", - "type": "string" - }, - "textToSpeech": { - "description": "One of text_to_speech or ssml must be provided. The plain text of the\nspeech output. Mutually exclusive with ssml.", - "type": "string" - } - }, - "id": "IntentMessageSimpleResponse" - }, - "IntentMessageListSelectItem": { - "description": "An item in the list.", - "type": "object", - "properties": { - "title": { - "description": "Required. The title of the list item.", - "type": "string" - }, - "image": { - "$ref": "IntentMessageImage", - "description": "Optional. The image to display." - }, - "description": { - "description": "Optional. The main text describing the item.", - "type": "string" - }, - "info": { - "description": "Required. Additional information about this option.", - "$ref": "IntentMessageSelectItemInfo" - } - }, - "id": "IntentMessageListSelectItem" - }, - "IntentMessageBasicCard": { - "description": "The basic card message. Useful for displaying information.", - "type": "object", - "properties": { - "title": { - "description": "Optional. The title of the card.", - "type": "string" - }, - "image": { - "$ref": "IntentMessageImage", - "description": "Optional. The image for the card." - }, - "formattedText": { - "description": "Required, unless image is present. The body text of the card.", - "type": "string" - }, - "buttons": { - "description": "Optional. The collection of card buttons.", - "type": "array", - "items": { - "$ref": "IntentMessageBasicCardButton" - } - }, - "subtitle": { - "description": "Optional. The subtitle of the card.", - "type": "string" - } - }, - "id": "IntentMessageBasicCard" - }, - "EntityTypeEntity": { - "description": "Optional. Represents an entity.", - "type": "object", - "properties": { - "value": { - "description": "Required.\nFor `KIND_MAP` entity types:\n A canonical name to be used in place of synonyms.\nFor `KIND_LIST` entity types:\n A string that can contain references to other entity types (with or\n without aliases).", - "type": "string" - }, - "synonyms": { - "type": "array", - "items": { - "type": "string" - }, - "description": "Required. A collection of synonyms. For `KIND_LIST` entity types this\nmust contain exactly one synonym equal to `value`." - } - }, - "id": "EntityTypeEntity" - }, - "InputAudioConfig": { - "properties": { - "sampleRateHertz": { - "description": "Required. Sample rate (in Hertz) of the audio content sent in the query.\nRefer to [Cloud Speech API documentation](/speech/docs/basics) for more\ndetails.", - "format": "int32", - "type": "integer" - }, - "languageCode": { - "description": "Required. The language of the supplied audio. Dialogflow does not do\ntranslations. See [Language\nSupport](https://dialogflow.com/docs/languages) for a list of the\ncurrently supported language codes. Note that queries in the same session\ndo not necessarily need to specify the same language.", - "type": "string" - }, - "phraseHints": { - "description": "Optional. The collection of phrase hints which are used to boost accuracy\nof speech recognition.\nRefer to [Cloud Speech API documentation](/speech/docs/basics#phrase-hints)\nfor more details.", - "type": "array", - "items": { - "type": "string" - } - }, - "audioEncoding": { - "description": "Required. Audio encoding of the audio content to process.", - "type": "string", - "enumDescriptions": [ - "Not specified.", - "Uncompressed 16-bit signed little-endian samples (Linear PCM).", - "[`FLAC`](https://xiph.org/flac/documentation.html) (Free Lossless Audio\nCodec) is the recommended encoding because it is lossless (therefore\nrecognition is not compromised) and requires only about half the\nbandwidth of `LINEAR16`. `FLAC` stream encoding supports 16-bit and\n24-bit samples, however, not all fields in `STREAMINFO` are supported.", - "8-bit samples that compand 14-bit audio samples using G.711 PCMU/mu-law.", - "Adaptive Multi-Rate Narrowband codec. `sample_rate_hertz` must be 8000.", - "Adaptive Multi-Rate Wideband codec. `sample_rate_hertz` must be 16000.", - "Opus encoded audio frames in Ogg container\n([OggOpus](https://wiki.xiph.org/OggOpus)).\n`sample_rate_hertz` must be 16000.", - "Although the use of lossy encodings is not recommended, if a very low\nbitrate encoding is required, `OGG_OPUS` is highly preferred over\nSpeex encoding. The [Speex](https://speex.org/) encoding supported by\nDialogflow API has a header byte in each block, as in MIME type\n`audio/x-speex-with-header-byte`.\nIt is a variant of the RTP Speex encoding defined in\n[RFC 5574](https://tools.ietf.org/html/rfc5574).\nThe stream is a sequence of blocks, one block per RTP packet. Each block\nstarts with a byte containing the length of the block, in bytes, followed\nby one or more frames of Speex data, padded to an integral number of\nbytes (octets) as specified in RFC 5574. In other words, each RTP header\nis replaced with a single byte containing the block length. Only Speex\nwideband is supported. `sample_rate_hertz` must be 16000." - ], - "enum": [ - "AUDIO_ENCODING_UNSPECIFIED", - "AUDIO_ENCODING_LINEAR_16", - "AUDIO_ENCODING_FLAC", - "AUDIO_ENCODING_MULAW", - "AUDIO_ENCODING_AMR", - "AUDIO_ENCODING_AMR_WB", - "AUDIO_ENCODING_OGG_OPUS", - "AUDIO_ENCODING_SPEEX_WITH_HEADER_BYTE" - ] - } - }, - "id": "InputAudioConfig", - "description": "Instructs the speech recognizer how to process the audio content.", - "type": "object" - }, - "ListSessionEntityTypesResponse": { - "type": "object", - "properties": { - "sessionEntityTypes": { - "description": "The list of session entity types. There will be a maximum number of items\nreturned based on the page_size field in the request.", - "type": "array", - "items": { - "$ref": "SessionEntityType" - } - }, - "nextPageToken": { - "type": "string", - "description": "Token to retrieve the next page of results, or empty if there are no\nmore results in the list." - } - }, - "id": "ListSessionEntityTypesResponse", - "description": "The response message for SessionEntityTypes.ListSessionEntityTypes." - }, - "IntentMessageCarouselSelect": { - "description": "The card for presenting a carousel of options to select from.", - "type": "object", - "properties": { - "items": { - "description": "Required. Carousel items.", - "type": "array", - "items": { - "$ref": "IntentMessageCarouselSelectItem" - } - } - }, - "id": "IntentMessageCarouselSelect" - }, - "SearchAgentsResponse": { - "id": "SearchAgentsResponse", - "description": "The response message for Agents.SearchAgents.", - "type": "object", - "properties": { - "agents": { - "description": "The list of agents. There will be a maximum number of items returned based\non the page_size field in the request.", - "type": "array", - "items": { - "$ref": "Agent" - } - }, - "nextPageToken": { - "description": "Token to retrieve the next page of results, or empty if there are no\nmore results in the list.", - "type": "string" - } - } } }, - "protocol": "rest", - "icons": { - "x32": "http://www.google.com/images/icons/product/search-32.gif", - "x16": "http://www.google.com/images/icons/product/search-16.gif" - }, - "canonicalName": "Dialogflow", - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/cloud-platform": { - "description": "View and manage your data across Google Cloud Platform services" - } - } - } - }, - "rootUrl": "https://dialogflow.googleapis.com/", - "ownerDomain": "google.com", - "name": "dialogflow", - "batchPath": "batch", - "fullyEncodeReservedExpansion": true, - "title": "Dialogflow API", - "ownerName": "Google", - "resources": { - "projects": { - "methods": { - "getAgent": { - "description": "Retrieves the specified agent.", - "response": { - "$ref": "Agent" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "GET", - "parameters": { - "parent": { - "location": "path", - "description": "Required. The project that the agent to fetch is associated with.\nFormat: `projects/\u003cProject ID\u003e`.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+$" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v2beta1/projects/{projectsId}/agent", - "path": "v2beta1/{+parent}/agent", - "id": "dialogflow.projects.getAgent" - } - }, - "resources": { - "operations": { - "methods": { - "get": { - "id": "dialogflow.projects.operations.get", - "path": "v2beta1/{+name}", - "description": "Gets the latest state of a long-running operation. Clients can use this\nmethod to poll the operation result at intervals as recommended by the API\nservice.", - "httpMethod": "GET", - "parameterOrder": [ - "name" - ], - "response": { - "$ref": "Operation" - }, - "parameters": { - "name": { - "pattern": "^projects/[^/]+/operations/[^/]+$", - "location": "path", - "description": "The name of the operation resource.", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v2beta1/projects/{projectsId}/operations/{operationsId}" - } - } - }, - "agent": { - "methods": { - "export": { - "request": { - "$ref": "ExportAgentRequest" - }, - "description": "Exports the specified agent to a ZIP file.\n\n\nOperation \u003cresponse: ExportAgentResponse,\n metadata: google.protobuf.Struct\u003e", - "httpMethod": "POST", - "parameterOrder": [ - "parent" - ], - "response": { - "$ref": "Operation" - }, - "parameters": { - "parent": { - "pattern": "^projects/[^/]+$", - "location": "path", - "description": "Required. The project that the agent to export is associated with.\nFormat: `projects/\u003cProject ID\u003e`.", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v2beta1/projects/{projectsId}/agent:export", - "id": "dialogflow.projects.agent.export", - "path": "v2beta1/{+parent}/agent:export" - }, - "restore": { - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "POST", - "parameters": { - "parent": { - "location": "path", - "description": "Required. The project that the agent to restore is associated with.\nFormat: `projects/\u003cProject ID\u003e`.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+$" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v2beta1/projects/{projectsId}/agent:restore", - "path": "v2beta1/{+parent}/agent:restore", - "id": "dialogflow.projects.agent.restore", - "request": { - "$ref": "RestoreAgentRequest" - }, - "description": "Restores the specified agent from a ZIP file.\n\nReplaces the current agent version with a new one. All the intents and\nentity types in the older version are deleted.\n\n\nOperation \u003cresponse: google.protobuf.Empty,\n metadata: google.protobuf.Struct\u003e" - }, - "import": { - "flatPath": "v2beta1/projects/{projectsId}/agent:import", - "id": "dialogflow.projects.agent.import", - "path": "v2beta1/{+parent}/agent:import", - "description": "Imports the specified agent from a ZIP file.\n\nUploads new intents and entity types without deleting the existing ones.\nIntents and entity types with the same name are replaced with the new\nversions from ImportAgentRequest.\n\n\nOperation \u003cresponse: google.protobuf.Empty,\n metadata: google.protobuf.Struct\u003e", - "request": { - "$ref": "ImportAgentRequest" - }, - "httpMethod": "POST", - "parameterOrder": [ - "parent" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "parent": { - "location": "path", - "description": "Required. The project that the agent to import is associated with.\nFormat: `projects/\u003cProject ID\u003e`.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+$" - } - } - }, - "search": { - "id": "dialogflow.projects.agent.search", - "path": "v2beta1/{+parent}/agent:search", - "description": "Returns the list of agents.\n\nSince there is at most one conversational agent per project, this method is\nuseful primarily for listing all agents across projects the caller has\naccess to. One can achieve that with a wildcard project collection id \"-\".\nRefer to [List\nSub-Collections](https://cloud.google.com/apis/design/design_patterns#list_sub-collections).", - "httpMethod": "GET", - "parameterOrder": [ - "parent" - ], - "response": { - "$ref": "SearchAgentsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "parent": { - "location": "path", - "description": "Required. The project to list agents from.\nFormat: `projects/\u003cProject ID or '-'\u003e`.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+$" - }, - "pageToken": { - "location": "query", - "description": "Optional. The next_page_token value returned from a previous list request.", - "type": "string" - }, - "pageSize": { - "description": "Optional. The maximum number of items to return in a single page. By\ndefault 100 and at most 1000.", - "format": "int32", - "type": "integer", - "location": "query" - } - }, - "flatPath": "v2beta1/projects/{projectsId}/agent:search" - }, - "train": { - "request": { - "$ref": "TrainAgentRequest" - }, - "description": "Trains the specified agent.\n\n\nOperation \u003cresponse: google.protobuf.Empty,\n metadata: google.protobuf.Struct\u003e", - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "POST", - "parameters": { - "parent": { - "description": "Required. The project that the agent to train is associated with.\nFormat: `projects/\u003cProject ID\u003e`.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v2beta1/projects/{projectsId}/agent:train", - "path": "v2beta1/{+parent}/agent:train", - "id": "dialogflow.projects.agent.train" - } - }, - "resources": { - "entityTypes": { - "methods": { - "batchDelete": { - "request": { - "$ref": "BatchDeleteEntityTypesRequest" - }, - "description": "Deletes entity types in the specified agent.\n\nOperation \u003cresponse: google.protobuf.Empty,\n metadata: google.protobuf.Struct\u003e", - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "POST", - "parameters": { - "parent": { - "description": "Required. The name of the agent to delete all entities types for. Format:\n`projects/\u003cProject ID\u003e/agent`.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/agent$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v2beta1/projects/{projectsId}/agent/entityTypes:batchDelete", - "path": "v2beta1/{+parent}/entityTypes:batchDelete", - "id": "dialogflow.projects.agent.entityTypes.batchDelete" - }, - "create": { - "id": "dialogflow.projects.agent.entityTypes.create", - "path": "v2beta1/{+parent}/entityTypes", - "request": { - "$ref": "EntityType" - }, - "description": "Creates an entity type in the specified agent.", - "httpMethod": "POST", - "parameterOrder": [ - "parent" - ], - "response": { - "$ref": "EntityType" - }, - "parameters": { - "parent": { - "location": "path", - "description": "Required. The agent to create a entity type for.\nFormat: `projects/\u003cProject ID\u003e/agent`.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/agent$" - }, - "languageCode": { - "location": "query", - "description": "Optional. The language of entity synonyms defined in `entity_type`. If not\nspecified, the agent's default language is used.\n[More than a dozen\nlanguages](https://dialogflow.com/docs/reference/language) are supported.\nNote: languages must be enabled in the agent, before they can be used.", - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v2beta1/projects/{projectsId}/agent/entityTypes" - }, - "patch": { - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "languageCode": { - "description": "Optional. The language of entity synonyms defined in `entity_type`. If not\nspecified, the agent's default language is used.\n[More than a dozen\nlanguages](https://dialogflow.com/docs/reference/language) are supported.\nNote: languages must be enabled in the agent, before they can be used.", - "type": "string", - "location": "query" - }, - "updateMask": { - "description": "Optional. The mask to control which fields get updated.", - "format": "google-fieldmask", - "type": "string", - "location": "query" - }, - "name": { - "location": "path", - "description": "Required for all methods except `create` (`create` populates the name\nautomatically.\nThe unique identifier of the entity type. Format:\n`projects/\u003cProject ID\u003e/agent/entityTypes/\u003cEntity Type ID\u003e`.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/agent/entityTypes/[^/]+$" - } - }, - "flatPath": "v2beta1/projects/{projectsId}/agent/entityTypes/{entityTypesId}", - "path": "v2beta1/{+name}", - "id": "dialogflow.projects.agent.entityTypes.patch", - "description": "Updates the specified entity type.", - "request": { - "$ref": "EntityType" - }, - "response": { - "$ref": "EntityType" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "PATCH" - }, - "get": { - "description": "Retrieves the specified entity type.", - "httpMethod": "GET", - "response": { - "$ref": "EntityType" - }, - "parameterOrder": [ - "name" - ], - "parameters": { - "name": { - "description": "Required. The name of the entity type.\nFormat: `projects/\u003cProject ID\u003e/agent/entityTypes/\u003cEntityType ID\u003e`.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/agent/entityTypes/[^/]+$", - "location": "path" - }, - "languageCode": { - "type": "string", - "location": "query", - "description": "Optional. The language to retrieve entity synonyms for. If not specified,\nthe agent's default language is used.\n[More than a dozen\nlanguages](https://dialogflow.com/docs/reference/language) are supported.\nNote: languages must be enabled in the agent, before they can be used." - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v2beta1/projects/{projectsId}/agent/entityTypes/{entityTypesId}", - "id": "dialogflow.projects.agent.entityTypes.get", - "path": "v2beta1/{+name}" - }, - "batchUpdate": { - "flatPath": "v2beta1/projects/{projectsId}/agent/entityTypes:batchUpdate", - "path": "v2beta1/{+parent}/entityTypes:batchUpdate", - "id": "dialogflow.projects.agent.entityTypes.batchUpdate", - "description": "Updates/Creates multiple entity types in the specified agent.\n\nOperation \u003cresponse: BatchUpdateEntityTypesResponse,\n metadata: google.protobuf.Struct\u003e", - "request": { - "$ref": "BatchUpdateEntityTypesRequest" - }, - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "parent": { - "location": "path", - "description": "Required. The name of the agent to update or create entity types in.\nFormat: `projects/\u003cProject ID\u003e/agent`.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/agent$" - } - } - }, - "delete": { - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "name": { - "pattern": "^projects/[^/]+/agent/entityTypes/[^/]+$", - "location": "path", - "description": "Required. The name of the entity type to delete.\nFormat: `projects/\u003cProject ID\u003e/agent/entityTypes/\u003cEntityType ID\u003e`.", - "required": true, - "type": "string" - } - }, - "flatPath": "v2beta1/projects/{projectsId}/agent/entityTypes/{entityTypesId}", - "path": "v2beta1/{+name}", - "id": "dialogflow.projects.agent.entityTypes.delete", - "description": "Deletes the specified entity type.", - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "DELETE" - }, - "list": { - "flatPath": "v2beta1/projects/{projectsId}/agent/entityTypes", - "path": "v2beta1/{+parent}/entityTypes", - "id": "dialogflow.projects.agent.entityTypes.list", - "description": "Returns the list of all entity types in the specified agent.", - "response": { - "$ref": "ListEntityTypesResponse" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "GET", - "parameters": { - "parent": { - "description": "Required. The agent to list all entity types from.\nFormat: `projects/\u003cProject ID\u003e/agent`.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/agent$", - "location": "path" - }, - "languageCode": { - "type": "string", - "location": "query", - "description": "Optional. The language to list entity synonyms for. If not specified,\nthe agent's default language is used.\n[More than a dozen\nlanguages](https://dialogflow.com/docs/reference/language) are supported.\nNote: languages must be enabled in the agent, before they can be used." - }, - "pageToken": { - "location": "query", - "description": "Optional. The next_page_token value returned from a previous list request.", - "type": "string" - }, - "pageSize": { - "location": "query", - "description": "Optional. The maximum number of items to return in a single page. By\ndefault 100 and at most 1000.", - "format": "int32", - "type": "integer" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - } - }, - "resources": { - "entities": { - "methods": { - "batchUpdate": { - "path": "v2beta1/{+parent}/entities:batchUpdate", - "id": "dialogflow.projects.agent.entityTypes.entities.batchUpdate", - "description": "Updates entities in the specified entity type (replaces the existing\ncollection of entries).\n\nOperation \u003cresponse: google.protobuf.Empty,\n metadata: google.protobuf.Struct\u003e", - "request": { - "$ref": "BatchUpdateEntitiesRequest" - }, - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "parent": { - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/agent/entityTypes/[^/]+$", - "location": "path", - "description": "Required. The name of the entity type to update the entities in. Format:\n`projects/\u003cProject ID\u003e/agent/entityTypes/\u003cEntity Type ID\u003e`." - } - }, - "flatPath": "v2beta1/projects/{projectsId}/agent/entityTypes/{entityTypesId}/entities:batchUpdate" - }, - "batchDelete": { - "httpMethod": "POST", - "parameterOrder": [ - "parent" - ], - "response": { - "$ref": "Operation" - }, - "parameters": { - "parent": { - "pattern": "^projects/[^/]+/agent/entityTypes/[^/]+$", - "location": "path", - "description": "Required. The name of the entity type to delete entries for. Format:\n`projects/\u003cProject ID\u003e/agent/entityTypes/\u003cEntity Type ID\u003e`.", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v2beta1/projects/{projectsId}/agent/entityTypes/{entityTypesId}/entities:batchDelete", - "id": "dialogflow.projects.agent.entityTypes.entities.batchDelete", - "path": "v2beta1/{+parent}/entities:batchDelete", - "request": { - "$ref": "BatchDeleteEntitiesRequest" - }, - "description": "Deletes entities in the specified entity type.\n\nOperation \u003cresponse: google.protobuf.Empty,\n metadata: google.protobuf.Struct\u003e" - }, - "batchCreate": { - "description": "Creates multiple new entities in the specified entity type (extends the\nexisting collection of entries).\n\nOperation \u003cresponse: google.protobuf.Empty\u003e", - "request": { - "$ref": "BatchCreateEntitiesRequest" - }, - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "parent": { - "location": "path", - "description": "Required. The name of the entity type to create entities in. Format:\n`projects/\u003cProject ID\u003e/agent/entityTypes/\u003cEntity Type ID\u003e`.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/agent/entityTypes/[^/]+$" - } - }, - "flatPath": "v2beta1/projects/{projectsId}/agent/entityTypes/{entityTypesId}/entities:batchCreate", - "path": "v2beta1/{+parent}/entities:batchCreate", - "id": "dialogflow.projects.agent.entityTypes.entities.batchCreate" - } - } - } - } - }, - "intents": { - "methods": { - "delete": { - "description": "Deletes the specified intent.", - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "DELETE", - "parameters": { - "name": { - "location": "path", - "description": "Required. The name of the intent to delete.\nFormat: `projects/\u003cProject ID\u003e/agent/intents/\u003cIntent ID\u003e`.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/agent/intents/[^/]+$" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v2beta1/projects/{projectsId}/agent/intents/{intentsId}", - "path": "v2beta1/{+name}", - "id": "dialogflow.projects.agent.intents.delete" - }, - "list": { - "path": "v2beta1/{+parent}/intents", - "id": "dialogflow.projects.agent.intents.list", - "description": "Returns the list of all intents in the specified agent.", - "response": { - "$ref": "ListIntentsResponse" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "languageCode": { - "location": "query", - "description": "Optional. The language to list training phrases, parameters and rich\nmessages for. If not specified, the agent's default language is used.\n[More than a dozen\nlanguages](https://dialogflow.com/docs/reference/language) are supported.\nNote: languages must be enabled in the agent before they can be used.", - "type": "string" - }, - "pageToken": { - "description": "Optional. The next_page_token value returned from a previous list request.", - "type": "string", - "location": "query" - }, - "pageSize": { - "location": "query", - "description": "Optional. The maximum number of items to return in a single page. By\ndefault 100 and at most 1000.", - "format": "int32", - "type": "integer" - }, - "intentView": { - "location": "query", - "enum": [ - "INTENT_VIEW_UNSPECIFIED", - "INTENT_VIEW_FULL" - ], - "description": "Optional. The resource view to apply to the returned intent.", - "type": "string" - }, - "parent": { - "pattern": "^projects/[^/]+/agent$", - "location": "path", - "description": "Required. The agent to list all intents from.\nFormat: `projects/\u003cProject ID\u003e/agent`.", - "required": true, - "type": "string" - } - }, - "flatPath": "v2beta1/projects/{projectsId}/agent/intents" - }, - "batchDelete": { - "flatPath": "v2beta1/projects/{projectsId}/agent/intents:batchDelete", - "path": "v2beta1/{+parent}/intents:batchDelete", - "id": "dialogflow.projects.agent.intents.batchDelete", - "description": "Deletes intents in the specified agent.\n\nOperation \u003cresponse: google.protobuf.Empty\u003e", - "request": { - "$ref": "BatchDeleteIntentsRequest" - }, - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "parent": { - "pattern": "^projects/[^/]+/agent$", - "location": "path", - "description": "Required. The name of the agent to delete all entities types for. Format:\n`projects/\u003cProject ID\u003e/agent`.", - "required": true, - "type": "string" - } - } - }, - "create": { - "parameters": { - "intentView": { - "location": "query", - "enum": [ - "INTENT_VIEW_UNSPECIFIED", - "INTENT_VIEW_FULL" - ], - "description": "Optional. The resource view to apply to the returned intent.", - "type": "string" - }, - "parent": { - "location": "path", - "description": "Required. The agent to create a intent for.\nFormat: `projects/\u003cProject ID\u003e/agent`.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/agent$" - }, - "languageCode": { - "type": "string", - "location": "query", - "description": "Optional. The language of training phrases, parameters and rich messages\ndefined in `intent`. If not specified, the agent's default language is\nused. [More than a dozen\nlanguages](https://dialogflow.com/docs/reference/language) are supported.\nNote: languages must be enabled in the agent, before they can be used." - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v2beta1/projects/{projectsId}/agent/intents", - "id": "dialogflow.projects.agent.intents.create", - "path": "v2beta1/{+parent}/intents", - "request": { - "$ref": "Intent" - }, - "description": "Creates an intent in the specified agent.", - "httpMethod": "POST", - "parameterOrder": [ - "parent" - ], - "response": { - "$ref": "Intent" - } - }, - "patch": { - "response": { - "$ref": "Intent" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "PATCH", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "name": { - "description": "Required for all methods except `create` (`create` populates the name\nautomatically.\nThe unique identifier of this intent.\nFormat: `projects/\u003cProject ID\u003e/agent/intents/\u003cIntent ID\u003e`.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/agent/intents/[^/]+$", - "location": "path" - }, - "intentView": { - "description": "Optional. The resource view to apply to the returned intent.", - "type": "string", - "location": "query", - "enum": [ - "INTENT_VIEW_UNSPECIFIED", - "INTENT_VIEW_FULL" - ] - }, - "languageCode": { - "description": "Optional. The language of training phrases, parameters and rich messages\ndefined in `intent`. If not specified, the agent's default language is\nused. [More than a dozen\nlanguages](https://dialogflow.com/docs/reference/language) are supported.\nNote: languages must be enabled in the agent, before they can be used.", - "type": "string", - "location": "query" - }, - "updateMask": { - "location": "query", - "description": "Optional. The mask to control which fields get updated.", - "format": "google-fieldmask", - "type": "string" - } - }, - "flatPath": "v2beta1/projects/{projectsId}/agent/intents/{intentsId}", - "path": "v2beta1/{+name}", - "id": "dialogflow.projects.agent.intents.patch", - "description": "Updates the specified intent.", - "request": { - "$ref": "Intent" - } - }, - "get": { - "parameters": { - "name": { - "description": "Required. The name of the intent.\nFormat: `projects/\u003cProject ID\u003e/agent/intents/\u003cIntent ID\u003e`.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/agent/intents/[^/]+$", - "location": "path" - }, - "intentView": { - "location": "query", - "enum": [ - "INTENT_VIEW_UNSPECIFIED", - "INTENT_VIEW_FULL" - ], - "description": "Optional. The resource view to apply to the returned intent.", - "type": "string" - }, - "languageCode": { - "location": "query", - "description": "Optional. The language to retrieve training phrases, parameters and rich\nmessages for. If not specified, the agent's default language is used.\n[More than a dozen\nlanguages](https://dialogflow.com/docs/reference/language) are supported.\nNote: languages must be enabled in the agent, before they can be used.", - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v2beta1/projects/{projectsId}/agent/intents/{intentsId}", - "path": "v2beta1/{+name}", - "id": "dialogflow.projects.agent.intents.get", - "description": "Retrieves the specified intent.", - "response": { - "$ref": "Intent" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "GET" - }, - "batchUpdate": { - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "parent": { - "description": "Required. The name of the agent to update or create intents in.\nFormat: `projects/\u003cProject ID\u003e/agent`.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/agent$", - "location": "path" - } - }, - "flatPath": "v2beta1/projects/{projectsId}/agent/intents:batchUpdate", - "path": "v2beta1/{+parent}/intents:batchUpdate", - "id": "dialogflow.projects.agent.intents.batchUpdate", - "description": "Updates/Creates multiple intents in the specified agent.\n\nOperation \u003cresponse: BatchUpdateIntentsResponse\u003e", - "request": { - "$ref": "BatchUpdateIntentsRequest" - } - } - } - }, - "sessions": { - "methods": { - "deleteContexts": { - "path": "v2beta1/{+parent}/contexts", - "id": "dialogflow.projects.agent.sessions.deleteContexts", - "description": "Deletes all active contexts in the specified session.", - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "DELETE", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "parent": { - "description": "Required. The name of the session to delete all contexts from. Format:\n`projects/\u003cProject ID\u003e/agent/sessions/\u003cSession ID\u003e`.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/agent/sessions/[^/]+$", - "location": "path" - } - }, - "flatPath": "v2beta1/projects/{projectsId}/agent/sessions/{sessionsId}/contexts" - }, - "detectIntent": { - "flatPath": "v2beta1/projects/{projectsId}/agent/sessions/{sessionsId}:detectIntent", - "path": "v2beta1/{+session}:detectIntent", - "id": "dialogflow.projects.agent.sessions.detectIntent", - "request": { - "$ref": "DetectIntentRequest" - }, - "description": "Processes a natural language query and returns structured, actionable data\nas a result. This method is not idempotent, because it may cause contexts\nand session entity types to be updated, which in turn might affect\nresults of future queries.", - "response": { - "$ref": "DetectIntentResponse" - }, - "parameterOrder": [ - "session" - ], - "httpMethod": "POST", - "parameters": { - "session": { - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/agent/sessions/[^/]+$", - "location": "path", - "description": "Required. The name of the session this query is sent to. Format:\n`projects/\u003cProject ID\u003e/agent/sessions/\u003cSession ID\u003e`.\nIt's up to the API caller to choose an appropriate session ID. It can be\na random number or some type of user identifier (preferably hashed).\nThe length of the session ID must not exceed 36 bytes." - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - } - }, - "resources": { - "contexts": { - "methods": { - "create": { - "response": { - "$ref": "Context" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "POST", - "parameters": { - "parent": { - "description": "Required. The session to create a context for.\nFormat: `projects/\u003cProject ID\u003e/agent/sessions/\u003cSession ID\u003e`.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/agent/sessions/[^/]+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v2beta1/projects/{projectsId}/agent/sessions/{sessionsId}/contexts", - "path": "v2beta1/{+parent}/contexts", - "id": "dialogflow.projects.agent.sessions.contexts.create", - "request": { - "$ref": "Context" - }, - "description": "Creates a context." - }, - "delete": { - "httpMethod": "DELETE", - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "name" - ], - "parameters": { - "name": { - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/agent/sessions/[^/]+/contexts/[^/]+$", - "location": "path", - "description": "Required. The name of the context to delete. Format:\n`projects/\u003cProject ID\u003e/agent/sessions/\u003cSession ID\u003e/contexts/\u003cContext ID\u003e`." - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v2beta1/projects/{projectsId}/agent/sessions/{sessionsId}/contexts/{contextsId}", - "id": "dialogflow.projects.agent.sessions.contexts.delete", - "path": "v2beta1/{+name}", - "description": "Deletes the specified context." - }, - "list": { - "flatPath": "v2beta1/projects/{projectsId}/agent/sessions/{sessionsId}/contexts", - "id": "dialogflow.projects.agent.sessions.contexts.list", - "path": "v2beta1/{+parent}/contexts", - "description": "Returns the list of all contexts in the specified session.", - "httpMethod": "GET", - "parameterOrder": [ - "parent" - ], - "response": { - "$ref": "ListContextsResponse" - }, - "parameters": { - "parent": { - "location": "path", - "description": "Required. The session to list all contexts from.\nFormat: `projects/\u003cProject ID\u003e/agent/sessions/\u003cSession ID\u003e`.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/agent/sessions/[^/]+$" - }, - "pageToken": { - "description": "Optional. The next_page_token value returned from a previous list request.", - "type": "string", - "location": "query" - }, - "pageSize": { - "type": "integer", - "location": "query", - "description": "Optional. The maximum number of items to return in a single page. By\ndefault 100 and at most 1000.", - "format": "int32" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "get": { - "description": "Retrieves the specified context.", - "httpMethod": "GET", - "parameterOrder": [ - "name" - ], - "response": { - "$ref": "Context" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "name": { - "description": "Required. The name of the context. Format:\n`projects/\u003cProject ID\u003e/agent/sessions/\u003cSession ID\u003e/contexts/\u003cContext ID\u003e`.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/agent/sessions/[^/]+/contexts/[^/]+$", - "location": "path" - } - }, - "flatPath": "v2beta1/projects/{projectsId}/agent/sessions/{sessionsId}/contexts/{contextsId}", - "id": "dialogflow.projects.agent.sessions.contexts.get", - "path": "v2beta1/{+name}" - }, - "patch": { - "response": { - "$ref": "Context" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "PATCH", - "parameters": { - "name": { - "description": "Required. The unique identifier of the context. Format:\n`projects/\u003cProject ID\u003e/agent/sessions/\u003cSession ID\u003e/contexts/\u003cContext ID\u003e`.\nNote: The Context ID is always converted to lowercase.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/agent/sessions/[^/]+/contexts/[^/]+$", - "location": "path" - }, - "updateMask": { - "description": "Optional. The mask to control which fields get updated.", - "format": "google-fieldmask", - "type": "string", - "location": "query" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v2beta1/projects/{projectsId}/agent/sessions/{sessionsId}/contexts/{contextsId}", - "path": "v2beta1/{+name}", - "id": "dialogflow.projects.agent.sessions.contexts.patch", - "request": { - "$ref": "Context" - }, - "description": "Updates the specified context." - } - } - }, - "entityTypes": { - "methods": { - "create": { - "request": { - "$ref": "SessionEntityType" - }, - "description": "Creates a session entity type.", - "response": { - "$ref": "SessionEntityType" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "POST", - "parameters": { - "parent": { - "pattern": "^projects/[^/]+/agent/sessions/[^/]+$", - "location": "path", - "description": "Required. The session to create a session entity type for.\nFormat: `projects/\u003cProject ID\u003e/agent/sessions/\u003cSession ID\u003e`.", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v2beta1/projects/{projectsId}/agent/sessions/{sessionsId}/entityTypes", - "path": "v2beta1/{+parent}/entityTypes", - "id": "dialogflow.projects.agent.sessions.entityTypes.create" - }, - "delete": { - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "DELETE", - "parameters": { - "name": { - "description": "Required. The name of the entity type to delete. Format:\n`projects/\u003cProject ID\u003e/agent/sessions/\u003cSession ID\u003e/entityTypes/\u003cEntity Type\nDisplay Name\u003e`.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/agent/sessions/[^/]+/entityTypes/[^/]+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v2beta1/projects/{projectsId}/agent/sessions/{sessionsId}/entityTypes/{entityTypesId}", - "path": "v2beta1/{+name}", - "id": "dialogflow.projects.agent.sessions.entityTypes.delete", - "description": "Deletes the specified session entity type." - }, - "list": { - "response": { - "$ref": "ListSessionEntityTypesResponse" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "GET", - "parameters": { - "pageToken": { - "location": "query", - "description": "Optional. The next_page_token value returned from a previous list request.", - "type": "string" - }, - "pageSize": { - "type": "integer", - "location": "query", - "description": "Optional. The maximum number of items to return in a single page. By\ndefault 100 and at most 1000.", - "format": "int32" - }, - "parent": { - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/agent/sessions/[^/]+$", - "location": "path", - "description": "Required. The session to list all session entity types from.\nFormat: `projects/\u003cProject ID\u003e/agent/sessions/\u003cSession ID\u003e`." - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v2beta1/projects/{projectsId}/agent/sessions/{sessionsId}/entityTypes", - "path": "v2beta1/{+parent}/entityTypes", - "id": "dialogflow.projects.agent.sessions.entityTypes.list", - "description": "Returns the list of all session entity types in the specified session." - }, - "get": { - "path": "v2beta1/{+name}", - "id": "dialogflow.projects.agent.sessions.entityTypes.get", - "description": "Retrieves the specified session entity type.", - "response": { - "$ref": "SessionEntityType" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "GET", - "parameters": { - "name": { - "description": "Required. The name of the session entity type. Format:\n`projects/\u003cProject ID\u003e/agent/sessions/\u003cSession ID\u003e/entityTypes/\u003cEntity Type\nDisplay Name\u003e`.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/agent/sessions/[^/]+/entityTypes/[^/]+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v2beta1/projects/{projectsId}/agent/sessions/{sessionsId}/entityTypes/{entityTypesId}" - }, - "patch": { - "request": { - "$ref": "SessionEntityType" - }, - "description": "Updates the specified session entity type.", - "response": { - "$ref": "SessionEntityType" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "PATCH", - "parameters": { - "updateMask": { - "location": "query", - "description": "Optional. The mask to control which fields get updated.", - "format": "google-fieldmask", - "type": "string" - }, - "name": { - "description": "Required. The unique identifier of this session entity type. Format:\n`projects/\u003cProject ID\u003e/agent/sessions/\u003cSession ID\u003e/entityTypes/\u003cEntity Type\nDisplay Name\u003e`.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/agent/sessions/[^/]+/entityTypes/[^/]+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v2beta1/projects/{projectsId}/agent/sessions/{sessionsId}/entityTypes/{entityTypesId}", - "path": "v2beta1/{+name}", - "id": "dialogflow.projects.agent.sessions.entityTypes.patch" - } - } - } - } - } - } - } - } - } - }, - "parameters": { - "upload_protocol": { - "location": "query", - "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", - "type": "string" - }, - "prettyPrint": { - "location": "query", - "description": "Returns response with indentations and line breaks.", - "type": "boolean", - "default": "true" - }, - "fields": { - "location": "query", - "description": "Selector specifying which fields to include in a partial response.", - "type": "string" - }, - "uploadType": { - "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", - "type": "string", - "location": "query" - }, - "callback": { - "location": "query", - "description": "JSONP", - "type": "string" - }, - "$.xgafv": { - "enum": [ - "1", - "2" - ], - "description": "V1 error format.", - "type": "string", - "enumDescriptions": [ - "v1 error format", - "v2 error format" - ], - "location": "query" - }, - "alt": { - "enum": [ - "json", - "media", - "proto" - ], - "type": "string", - "enumDescriptions": [ - "Responses with Content-Type of application/json", - "Media download with context-dependent Content-Type", - "Responses with Content-Type of application/x-protobuf" - ], - "location": "query", - "description": "Data format for response.", - "default": "json" - }, - "access_token": { - "location": "query", - "description": "OAuth access token.", - "type": "string" - }, - "key": { - "type": "string", - "location": "query", - "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." - }, - "quotaUser": { - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", - "type": "string", - "location": "query" - }, - "pp": { - "description": "Pretty-print response.", - "type": "boolean", - "default": "true", - "location": "query" - }, - "bearer_token": { - "description": "OAuth bearer token.", - "type": "string", - "location": "query" - }, - "oauth_token": { - "description": "OAuth 2.0 token for the current user.", - "type": "string", - "location": "query" - } - }, - "version": "v2beta1", - "baseUrl": "https://dialogflow.googleapis.com/", - "kind": "discovery#restDescription", - "description": "An end-to-end development suite for conversational interfaces (e.g., chatbots, voice-powered apps and devices).", "servicePath": "", - "basePath": "", - "revision": "20180119", - "documentationLink": "https://cloud.google.com/dialogflow-enterprise/", - "id": "dialogflow:v2beta1", - "discoveryVersion": "v1", + "title": "Dialogflow API", + "version": "v2beta1", "version_module": true -} +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/dialogflow/v2beta1/dialogflow-gen.go b/vendor/google.golang.org/api/dialogflow/v2beta1/dialogflow-gen.go index eb918517c..fa9cc141e 100644 --- a/vendor/google.golang.org/api/dialogflow/v2beta1/dialogflow-gen.go +++ b/vendor/google.golang.org/api/dialogflow/v2beta1/dialogflow-gen.go @@ -93,6 +93,7 @@ type ProjectsService struct { func NewProjectsAgentService(s *Service) *ProjectsAgentService { rs := &ProjectsAgentService{s: s} rs.EntityTypes = NewProjectsAgentEntityTypesService(s) + rs.Environments = NewProjectsAgentEnvironmentsService(s) rs.Intents = NewProjectsAgentIntentsService(s) rs.Sessions = NewProjectsAgentSessionsService(s) return rs @@ -103,6 +104,8 @@ type ProjectsAgentService struct { EntityTypes *ProjectsAgentEntityTypesService + Environments *ProjectsAgentEnvironmentsService + Intents *ProjectsAgentIntentsService Sessions *ProjectsAgentSessionsService @@ -129,6 +132,63 @@ type ProjectsAgentEntityTypesEntitiesService struct { s *Service } +func NewProjectsAgentEnvironmentsService(s *Service) *ProjectsAgentEnvironmentsService { + rs := &ProjectsAgentEnvironmentsService{s: s} + rs.Users = NewProjectsAgentEnvironmentsUsersService(s) + return rs +} + +type ProjectsAgentEnvironmentsService struct { + s *Service + + Users *ProjectsAgentEnvironmentsUsersService +} + +func NewProjectsAgentEnvironmentsUsersService(s *Service) *ProjectsAgentEnvironmentsUsersService { + rs := &ProjectsAgentEnvironmentsUsersService{s: s} + rs.Sessions = NewProjectsAgentEnvironmentsUsersSessionsService(s) + return rs +} + +type ProjectsAgentEnvironmentsUsersService struct { + s *Service + + Sessions *ProjectsAgentEnvironmentsUsersSessionsService +} + +func NewProjectsAgentEnvironmentsUsersSessionsService(s *Service) *ProjectsAgentEnvironmentsUsersSessionsService { + rs := &ProjectsAgentEnvironmentsUsersSessionsService{s: s} + rs.Contexts = NewProjectsAgentEnvironmentsUsersSessionsContextsService(s) + rs.EntityTypes = NewProjectsAgentEnvironmentsUsersSessionsEntityTypesService(s) + return rs +} + +type ProjectsAgentEnvironmentsUsersSessionsService struct { + s *Service + + Contexts *ProjectsAgentEnvironmentsUsersSessionsContextsService + + EntityTypes *ProjectsAgentEnvironmentsUsersSessionsEntityTypesService +} + +func NewProjectsAgentEnvironmentsUsersSessionsContextsService(s *Service) *ProjectsAgentEnvironmentsUsersSessionsContextsService { + rs := &ProjectsAgentEnvironmentsUsersSessionsContextsService{s: s} + return rs +} + +type ProjectsAgentEnvironmentsUsersSessionsContextsService struct { + s *Service +} + +func NewProjectsAgentEnvironmentsUsersSessionsEntityTypesService(s *Service) *ProjectsAgentEnvironmentsUsersSessionsEntityTypesService { + rs := &ProjectsAgentEnvironmentsUsersSessionsEntityTypesService{s: s} + return rs +} + +type ProjectsAgentEnvironmentsUsersSessionsEntityTypesService struct { + s *Service +} + func NewProjectsAgentIntentsService(s *Service) *ProjectsAgentIntentsService { rs := &ProjectsAgentIntentsService{s: s} return rs @@ -180,10 +240,1658 @@ type ProjectsOperationsService struct { s *Service } -// Agent: Represents a conversational agent. -type Agent struct { +// GoogleCloudDialogflowV2BatchUpdateEntityTypesResponse: The response +// message for EntityTypes.BatchUpdateEntityTypes. +type GoogleCloudDialogflowV2BatchUpdateEntityTypesResponse struct { + // EntityTypes: The collection of updated or created entity types. + EntityTypes []*GoogleCloudDialogflowV2EntityType `json:"entityTypes,omitempty"` + + // ForceSendFields is a list of field names (e.g. "EntityTypes") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "EntityTypes") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDialogflowV2BatchUpdateEntityTypesResponse) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2BatchUpdateEntityTypesResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDialogflowV2BatchUpdateIntentsResponse: The response +// message for Intents.BatchUpdateIntents. +type GoogleCloudDialogflowV2BatchUpdateIntentsResponse struct { + // Intents: The collection of updated or created intents. + Intents []*GoogleCloudDialogflowV2Intent `json:"intents,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Intents") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Intents") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDialogflowV2BatchUpdateIntentsResponse) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2BatchUpdateIntentsResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDialogflowV2Context: Represents a context. +type GoogleCloudDialogflowV2Context struct { + // LifespanCount: Optional. The number of conversational query requests + // after which the + // context expires. If set to `0` (the default) the context + // expires + // immediately. Contexts expire automatically after 10 minutes even if + // there + // are no matching queries. + LifespanCount int64 `json:"lifespanCount,omitempty"` + + // Name: Required. The unique identifier of the context. + // Format: + // `projects//agent/sessions//contexts/`. + Name string `json:"name,omitempty"` + + // Parameters: Optional. The collection of parameters associated with + // this context. + // Refer to [this + // doc](https://dialogflow.com/docs/actions-and-parameters) for + // syntax. + Parameters googleapi.RawMessage `json:"parameters,omitempty"` + + // ForceSendFields is a list of field names (e.g. "LifespanCount") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "LifespanCount") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDialogflowV2Context) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2Context + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDialogflowV2EntityType: Represents an entity type. +// Entity types serve as a tool for extracting parameter values from +// natural +// language queries. +type GoogleCloudDialogflowV2EntityType struct { + // AutoExpansionMode: Optional. Indicates whether the entity type can be + // automatically + // expanded. + // + // Possible values: + // "AUTO_EXPANSION_MODE_UNSPECIFIED" - Auto expansion disabled for the + // entity. + // "AUTO_EXPANSION_MODE_DEFAULT" - Allows an agent to recognize values + // that have not been explicitly + // listed in the entity. + AutoExpansionMode string `json:"autoExpansionMode,omitempty"` + + // DisplayName: Required. The name of the entity. + DisplayName string `json:"displayName,omitempty"` + + // Entities: Optional. The collection of entities associated with the + // entity type. + Entities []*GoogleCloudDialogflowV2EntityTypeEntity `json:"entities,omitempty"` + + // Kind: Required. Indicates the kind of entity type. + // + // Possible values: + // "KIND_UNSPECIFIED" - Not specified. This value should be never + // used. + // "KIND_MAP" - Map entity types allow mapping of a group of synonyms + // to a canonical + // value. + // "KIND_LIST" - List entity types contain a set of entries that do + // not map to canonical + // values. However, list entity types can contain references to other + // entity + // types (with or without aliases). + Kind string `json:"kind,omitempty"` + + // Name: Required for all methods except `create` (`create` populates + // the name + // automatically. + // The unique identifier of the entity type. Format: + // `projects//agent/entityTypes/`. + Name string `json:"name,omitempty"` + + // ForceSendFields is a list of field names (e.g. "AutoExpansionMode") + // to unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "AutoExpansionMode") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDialogflowV2EntityType) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2EntityType + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDialogflowV2EntityTypeEntity: Optional. Represents an +// entity. +type GoogleCloudDialogflowV2EntityTypeEntity struct { + // Synonyms: Required. A collection of synonyms. For `KIND_LIST` entity + // types this + // must contain exactly one synonym equal to `value`. + Synonyms []string `json:"synonyms,omitempty"` + + // Value: Required. + // For `KIND_MAP` entity types: + // A canonical name to be used in place of synonyms. + // For `KIND_LIST` entity types: + // A string that can contain references to other entity types (with + // or + // without aliases). + Value string `json:"value,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Synonyms") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Synonyms") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDialogflowV2EntityTypeEntity) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2EntityTypeEntity + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDialogflowV2EventInput: Events allow for matching intents +// by event name instead of the natural +// language input. For instance, input `` can trigger a personalized +// welcome response. +// The parameter `name` may be used by the agent in the +// response: +// `“Hello #welcome_event.name! What can I do for you today?”`. +type GoogleCloudDialogflowV2EventInput struct { + // LanguageCode: Required. The language of this query. See + // [Language + // Support](https://dialogflow.com/docs/languages) for a list of + // the + // currently supported language codes. Note that queries in the same + // session + // do not necessarily need to specify the same language. + LanguageCode string `json:"languageCode,omitempty"` + + // Name: Required. The unique identifier of the event. + Name string `json:"name,omitempty"` + + // Parameters: Optional. The collection of parameters associated with + // the event. + Parameters googleapi.RawMessage `json:"parameters,omitempty"` + + // ForceSendFields is a list of field names (e.g. "LanguageCode") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "LanguageCode") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDialogflowV2EventInput) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2EventInput + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDialogflowV2ExportAgentResponse: The response message for +// Agents.ExportAgent. +type GoogleCloudDialogflowV2ExportAgentResponse struct { + // AgentContent: The exported agent. + // + // Example for how to export an agent to a zip file via a command + // line: + // + // curl \ + // + // 'https://dialogflow.googleapis.com/v2/projects//agent:ex + // port'\ + // -X POST \ + // -H 'Authorization: Bearer '$(gcloud auth print-access-token) \ + // -H 'Accept: application/json' \ + // -H 'Content-Type: application/json' \ + // --compressed \ + // --data-binary '{}' \ + // | grep agentContent | sed -e 's/.*"agentContent": "\([^"]*\)".*/\1/' + // \ + // | base64 --decode > + AgentContent string `json:"agentContent,omitempty"` + + // AgentUri: The URI to a file containing the exported agent. This field + // is populated + // only if `agent_uri` is specified in `ExportAgentRequest`. + AgentUri string `json:"agentUri,omitempty"` + + // ForceSendFields is a list of field names (e.g. "AgentContent") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "AgentContent") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDialogflowV2ExportAgentResponse) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2ExportAgentResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDialogflowV2Intent: Represents an intent. +// Intents convert a number of user expressions or patterns into an +// action. An +// action is an extraction of a user command or sentence semantics. +type GoogleCloudDialogflowV2Intent struct { + // Action: Optional. The name of the action associated with the intent. + Action string `json:"action,omitempty"` + + // DefaultResponsePlatforms: Optional. The list of platforms for which + // the first response will be + // taken from among the messages assigned to the DEFAULT_PLATFORM. + // + // Possible values: + // "PLATFORM_UNSPECIFIED" - Not specified. + // "FACEBOOK" - Facebook. + // "SLACK" - Slack. + // "TELEGRAM" - Telegram. + // "KIK" - Kik. + // "SKYPE" - Skype. + // "LINE" - Line. + // "VIBER" - Viber. + // "ACTIONS_ON_GOOGLE" - Actions on Google. + DefaultResponsePlatforms []string `json:"defaultResponsePlatforms,omitempty"` + + // DisplayName: Required. The name of this intent. + DisplayName string `json:"displayName,omitempty"` + + // Events: Optional. The collection of event names that trigger the + // intent. + // If the collection of input contexts is not empty, all of the contexts + // must + // be present in the active user session for an event to trigger this + // intent. + Events []string `json:"events,omitempty"` + + // FollowupIntentInfo: Optional. Collection of information about all + // followup intents that have + // name of this intent as a root_name. + FollowupIntentInfo []*GoogleCloudDialogflowV2IntentFollowupIntentInfo `json:"followupIntentInfo,omitempty"` + + // InputContextNames: Optional. The list of context names required for + // this intent to be + // triggered. + // Format: `projects//agent/sessions/-/contexts/`. + InputContextNames []string `json:"inputContextNames,omitempty"` + + // IsFallback: Optional. Indicates whether this is a fallback intent. + IsFallback bool `json:"isFallback,omitempty"` + + // Messages: Optional. The collection of rich messages corresponding to + // the + // `Response` field in the Dialogflow console. + Messages []*GoogleCloudDialogflowV2IntentMessage `json:"messages,omitempty"` + + // MlDisabled: Optional. Indicates whether Machine Learning is disabled + // for the intent. + // Note: If `ml_diabled` setting is set to true, then this intent is + // not + // taken into account during inference in `ML ONLY` match mode. + // Also, + // auto-markup in the UI is turned off. + MlDisabled bool `json:"mlDisabled,omitempty"` + + // Name: Required for all methods except `create` (`create` populates + // the name + // automatically. + // The unique identifier of this intent. + // Format: `projects//agent/intents/`. + Name string `json:"name,omitempty"` + + // OutputContexts: Optional. The collection of contexts that are + // activated when the intent + // is matched. Context messages in this collection should not set + // the + // parameters field. Setting the `lifespan_count` to 0 will reset the + // context + // when the intent is matched. + // Format: `projects//agent/sessions/-/contexts/`. + OutputContexts []*GoogleCloudDialogflowV2Context `json:"outputContexts,omitempty"` + + // Parameters: Optional. The collection of parameters associated with + // the intent. + Parameters []*GoogleCloudDialogflowV2IntentParameter `json:"parameters,omitempty"` + + // ParentFollowupIntentName: The unique identifier of the parent intent + // in the chain of followup + // intents. + // It identifies the parent followup intent. + // Format: `projects//agent/intents/`. + ParentFollowupIntentName string `json:"parentFollowupIntentName,omitempty"` + + // Priority: Optional. The priority of this intent. Higher numbers + // represent higher + // priorities. Zero or negative numbers mean that the intent is + // disabled. + Priority int64 `json:"priority,omitempty"` + + // ResetContexts: Optional. Indicates whether to delete all contexts in + // the current + // session when this intent is matched. + ResetContexts bool `json:"resetContexts,omitempty"` + + // RootFollowupIntentName: The unique identifier of the root intent in + // the chain of followup intents. + // It identifies the correct followup intents chain for this + // intent. + // Format: `projects//agent/intents/`. + RootFollowupIntentName string `json:"rootFollowupIntentName,omitempty"` + + // TrainingPhrases: Optional. The collection of examples/templates that + // the agent is + // trained on. + TrainingPhrases []*GoogleCloudDialogflowV2IntentTrainingPhrase `json:"trainingPhrases,omitempty"` + + // WebhookState: Required. Indicates whether webhooks are enabled for + // the intent. + // + // Possible values: + // "WEBHOOK_STATE_UNSPECIFIED" - Webhook is disabled in the agent and + // in the intent. + // "WEBHOOK_STATE_ENABLED" - Webhook is enabled in the agent and in + // the intent. + // "WEBHOOK_STATE_ENABLED_FOR_SLOT_FILLING" - Webhook is enabled in + // the agent and in the intent. Also, each slot + // filling prompt is forwarded to the webhook. + WebhookState string `json:"webhookState,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Action") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Action") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDialogflowV2Intent) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2Intent + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDialogflowV2IntentFollowupIntentInfo: Represents a single +// followup intent in the chain. +type GoogleCloudDialogflowV2IntentFollowupIntentInfo struct { + // FollowupIntentName: The unique identifier of the followup + // intent. + // Format: `projects//agent/intents/`. + FollowupIntentName string `json:"followupIntentName,omitempty"` + + // ParentFollowupIntentName: The unique identifier of the followup + // intent parent. + // Format: `projects//agent/intents/`. + ParentFollowupIntentName string `json:"parentFollowupIntentName,omitempty"` + + // ForceSendFields is a list of field names (e.g. "FollowupIntentName") + // to unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "FollowupIntentName") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDialogflowV2IntentFollowupIntentInfo) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2IntentFollowupIntentInfo + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDialogflowV2IntentMessage: Corresponds to the `Response` +// field in the Dialogflow console. +type GoogleCloudDialogflowV2IntentMessage struct { + // BasicCard: The basic card response for Actions on Google. + BasicCard *GoogleCloudDialogflowV2IntentMessageBasicCard `json:"basicCard,omitempty"` + + // Card: The card response. + Card *GoogleCloudDialogflowV2IntentMessageCard `json:"card,omitempty"` + + // CarouselSelect: The carousel card response for Actions on Google. + CarouselSelect *GoogleCloudDialogflowV2IntentMessageCarouselSelect `json:"carouselSelect,omitempty"` + + // Image: The image response. + Image *GoogleCloudDialogflowV2IntentMessageImage `json:"image,omitempty"` + + // LinkOutSuggestion: The link out suggestion chip for Actions on + // Google. + LinkOutSuggestion *GoogleCloudDialogflowV2IntentMessageLinkOutSuggestion `json:"linkOutSuggestion,omitempty"` + + // ListSelect: The list card response for Actions on Google. + ListSelect *GoogleCloudDialogflowV2IntentMessageListSelect `json:"listSelect,omitempty"` + + // Payload: The response containing a custom payload. + Payload googleapi.RawMessage `json:"payload,omitempty"` + + // Platform: Optional. The platform that this message is intended for. + // + // Possible values: + // "PLATFORM_UNSPECIFIED" - Not specified. + // "FACEBOOK" - Facebook. + // "SLACK" - Slack. + // "TELEGRAM" - Telegram. + // "KIK" - Kik. + // "SKYPE" - Skype. + // "LINE" - Line. + // "VIBER" - Viber. + // "ACTIONS_ON_GOOGLE" - Actions on Google. + Platform string `json:"platform,omitempty"` + + // QuickReplies: The quick replies response. + QuickReplies *GoogleCloudDialogflowV2IntentMessageQuickReplies `json:"quickReplies,omitempty"` + + // SimpleResponses: The voice and text-only responses for Actions on + // Google. + SimpleResponses *GoogleCloudDialogflowV2IntentMessageSimpleResponses `json:"simpleResponses,omitempty"` + + // Suggestions: The suggestion chips for Actions on Google. + Suggestions *GoogleCloudDialogflowV2IntentMessageSuggestions `json:"suggestions,omitempty"` + + // Text: The text response. + Text *GoogleCloudDialogflowV2IntentMessageText `json:"text,omitempty"` + + // ForceSendFields is a list of field names (e.g. "BasicCard") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "BasicCard") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDialogflowV2IntentMessage) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2IntentMessage + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDialogflowV2IntentMessageBasicCard: The basic card +// message. Useful for displaying information. +type GoogleCloudDialogflowV2IntentMessageBasicCard struct { + // Buttons: Optional. The collection of card buttons. + Buttons []*GoogleCloudDialogflowV2IntentMessageBasicCardButton `json:"buttons,omitempty"` + + // FormattedText: Required, unless image is present. The body text of + // the card. + FormattedText string `json:"formattedText,omitempty"` + + // Image: Optional. The image for the card. + Image *GoogleCloudDialogflowV2IntentMessageImage `json:"image,omitempty"` + + // Subtitle: Optional. The subtitle of the card. + Subtitle string `json:"subtitle,omitempty"` + + // Title: Optional. The title of the card. + Title string `json:"title,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Buttons") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Buttons") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDialogflowV2IntentMessageBasicCard) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2IntentMessageBasicCard + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDialogflowV2IntentMessageBasicCardButton: The button +// object that appears at the bottom of a card. +type GoogleCloudDialogflowV2IntentMessageBasicCardButton struct { + // OpenUriAction: Required. Action to take when a user taps on the + // button. + OpenUriAction *GoogleCloudDialogflowV2IntentMessageBasicCardButtonOpenUriAction `json:"openUriAction,omitempty"` + + // Title: Required. The title of the button. + Title string `json:"title,omitempty"` + + // ForceSendFields is a list of field names (e.g. "OpenUriAction") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "OpenUriAction") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDialogflowV2IntentMessageBasicCardButton) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2IntentMessageBasicCardButton + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDialogflowV2IntentMessageBasicCardButtonOpenUriAction: +// Opens the given URI. +type GoogleCloudDialogflowV2IntentMessageBasicCardButtonOpenUriAction struct { + // Uri: Required. The HTTP or HTTPS scheme URI. + Uri string `json:"uri,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Uri") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Uri") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDialogflowV2IntentMessageBasicCardButtonOpenUriAction) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2IntentMessageBasicCardButtonOpenUriAction + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDialogflowV2IntentMessageCard: The card response message. +type GoogleCloudDialogflowV2IntentMessageCard struct { + // Buttons: Optional. The collection of card buttons. + Buttons []*GoogleCloudDialogflowV2IntentMessageCardButton `json:"buttons,omitempty"` + + // ImageUri: Optional. The public URI to an image file for the card. + ImageUri string `json:"imageUri,omitempty"` + + // Subtitle: Optional. The subtitle of the card. + Subtitle string `json:"subtitle,omitempty"` + + // Title: Optional. The title of the card. + Title string `json:"title,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Buttons") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Buttons") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDialogflowV2IntentMessageCard) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2IntentMessageCard + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDialogflowV2IntentMessageCardButton: Optional. Contains +// information about a button. +type GoogleCloudDialogflowV2IntentMessageCardButton struct { + // Postback: Optional. The text to send back to the Dialogflow API or a + // URI to + // open. + Postback string `json:"postback,omitempty"` + + // Text: Optional. The text to show on the button. + Text string `json:"text,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Postback") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Postback") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDialogflowV2IntentMessageCardButton) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2IntentMessageCardButton + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDialogflowV2IntentMessageCarouselSelect: The card for +// presenting a carousel of options to select from. +type GoogleCloudDialogflowV2IntentMessageCarouselSelect struct { + // Items: Required. Carousel items. + Items []*GoogleCloudDialogflowV2IntentMessageCarouselSelectItem `json:"items,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Items") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Items") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDialogflowV2IntentMessageCarouselSelect) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2IntentMessageCarouselSelect + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDialogflowV2IntentMessageCarouselSelectItem: An item in +// the carousel. +type GoogleCloudDialogflowV2IntentMessageCarouselSelectItem struct { + // Description: Optional. The body text of the card. + Description string `json:"description,omitempty"` + + // Image: Optional. The image to display. + Image *GoogleCloudDialogflowV2IntentMessageImage `json:"image,omitempty"` + + // Info: Required. Additional info about the option item. + Info *GoogleCloudDialogflowV2IntentMessageSelectItemInfo `json:"info,omitempty"` + + // Title: Required. Title of the carousel item. + Title string `json:"title,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Description") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Description") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDialogflowV2IntentMessageCarouselSelectItem) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2IntentMessageCarouselSelectItem + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDialogflowV2IntentMessageImage: The image response +// message. +type GoogleCloudDialogflowV2IntentMessageImage struct { + // AccessibilityText: Optional. A text description of the image to be + // used for accessibility, + // e.g., screen readers. + AccessibilityText string `json:"accessibilityText,omitempty"` + + // ImageUri: Optional. The public URI to an image file. + ImageUri string `json:"imageUri,omitempty"` + + // ForceSendFields is a list of field names (e.g. "AccessibilityText") + // to unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "AccessibilityText") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDialogflowV2IntentMessageImage) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2IntentMessageImage + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDialogflowV2IntentMessageLinkOutSuggestion: The suggestion +// chip message that allows the user to jump out to the app +// or website associated with this agent. +type GoogleCloudDialogflowV2IntentMessageLinkOutSuggestion struct { + // DestinationName: Required. The name of the app or site this chip is + // linking to. + DestinationName string `json:"destinationName,omitempty"` + + // Uri: Required. The URI of the app or site to open when the user taps + // the + // suggestion chip. + Uri string `json:"uri,omitempty"` + + // ForceSendFields is a list of field names (e.g. "DestinationName") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "DestinationName") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDialogflowV2IntentMessageLinkOutSuggestion) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2IntentMessageLinkOutSuggestion + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDialogflowV2IntentMessageListSelect: The card for +// presenting a list of options to select from. +type GoogleCloudDialogflowV2IntentMessageListSelect struct { + // Items: Required. List items. + Items []*GoogleCloudDialogflowV2IntentMessageListSelectItem `json:"items,omitempty"` + + // Title: Optional. The overall title of the list. + Title string `json:"title,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Items") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Items") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDialogflowV2IntentMessageListSelect) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2IntentMessageListSelect + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDialogflowV2IntentMessageListSelectItem: An item in the +// list. +type GoogleCloudDialogflowV2IntentMessageListSelectItem struct { + // Description: Optional. The main text describing the item. + Description string `json:"description,omitempty"` + + // Image: Optional. The image to display. + Image *GoogleCloudDialogflowV2IntentMessageImage `json:"image,omitempty"` + + // Info: Required. Additional information about this option. + Info *GoogleCloudDialogflowV2IntentMessageSelectItemInfo `json:"info,omitempty"` + + // Title: Required. The title of the list item. + Title string `json:"title,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Description") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Description") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDialogflowV2IntentMessageListSelectItem) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2IntentMessageListSelectItem + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDialogflowV2IntentMessageQuickReplies: The quick replies +// response message. +type GoogleCloudDialogflowV2IntentMessageQuickReplies struct { + // QuickReplies: Optional. The collection of quick replies. + QuickReplies []string `json:"quickReplies,omitempty"` + + // Title: Optional. The title of the collection of quick replies. + Title string `json:"title,omitempty"` + + // ForceSendFields is a list of field names (e.g. "QuickReplies") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "QuickReplies") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDialogflowV2IntentMessageQuickReplies) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2IntentMessageQuickReplies + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDialogflowV2IntentMessageSelectItemInfo: Additional info +// about the select item for when it is triggered in a +// dialog. +type GoogleCloudDialogflowV2IntentMessageSelectItemInfo struct { + // Key: Required. A unique key that will be sent back to the agent if + // this + // response is given. + Key string `json:"key,omitempty"` + + // Synonyms: Optional. A list of synonyms that can also be used to + // trigger this + // item in dialog. + Synonyms []string `json:"synonyms,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Key") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Key") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDialogflowV2IntentMessageSelectItemInfo) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2IntentMessageSelectItemInfo + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDialogflowV2IntentMessageSimpleResponse: The simple +// response message containing speech or text. +type GoogleCloudDialogflowV2IntentMessageSimpleResponse struct { + // DisplayText: Optional. The text to display. + DisplayText string `json:"displayText,omitempty"` + + // Ssml: One of text_to_speech or ssml must be provided. Structured + // spoken + // response to the user in the SSML format. Mutually exclusive + // with + // text_to_speech. + Ssml string `json:"ssml,omitempty"` + + // TextToSpeech: One of text_to_speech or ssml must be provided. The + // plain text of the + // speech output. Mutually exclusive with ssml. + TextToSpeech string `json:"textToSpeech,omitempty"` + + // ForceSendFields is a list of field names (e.g. "DisplayText") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "DisplayText") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDialogflowV2IntentMessageSimpleResponse) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2IntentMessageSimpleResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDialogflowV2IntentMessageSimpleResponses: The collection +// of simple response candidates. +// This message in `QueryResult.fulfillment_messages` +// and +// `WebhookResponse.fulfillment_messages` should contain only +// one +// `SimpleResponse`. +type GoogleCloudDialogflowV2IntentMessageSimpleResponses struct { + // SimpleResponses: Required. The list of simple responses. + SimpleResponses []*GoogleCloudDialogflowV2IntentMessageSimpleResponse `json:"simpleResponses,omitempty"` + + // ForceSendFields is a list of field names (e.g. "SimpleResponses") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "SimpleResponses") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDialogflowV2IntentMessageSimpleResponses) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2IntentMessageSimpleResponses + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDialogflowV2IntentMessageSuggestion: The suggestion chip +// message that the user can tap to quickly post a reply +// to the conversation. +type GoogleCloudDialogflowV2IntentMessageSuggestion struct { + // Title: Required. The text shown the in the suggestion chip. + Title string `json:"title,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Title") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Title") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDialogflowV2IntentMessageSuggestion) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2IntentMessageSuggestion + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDialogflowV2IntentMessageSuggestions: The collection of +// suggestions. +type GoogleCloudDialogflowV2IntentMessageSuggestions struct { + // Suggestions: Required. The list of suggested replies. + Suggestions []*GoogleCloudDialogflowV2IntentMessageSuggestion `json:"suggestions,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Suggestions") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Suggestions") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDialogflowV2IntentMessageSuggestions) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2IntentMessageSuggestions + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDialogflowV2IntentMessageText: The text response message. +type GoogleCloudDialogflowV2IntentMessageText struct { + // Text: Optional. The collection of the agent's responses. + Text []string `json:"text,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Text") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Text") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDialogflowV2IntentMessageText) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2IntentMessageText + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDialogflowV2IntentParameter: Represents intent parameters. +type GoogleCloudDialogflowV2IntentParameter struct { + // DefaultValue: Optional. The default value to use when the `value` + // yields an empty + // result. + // Default values can be extracted from contexts by using the + // following + // syntax: `#context_name.parameter_name`. + DefaultValue string `json:"defaultValue,omitempty"` + + // DisplayName: Required. The name of the parameter. + DisplayName string `json:"displayName,omitempty"` + + // EntityTypeDisplayName: Optional. The name of the entity type, + // prefixed with `@`, that + // describes values of the parameter. If the parameter is + // required, this must be provided. + EntityTypeDisplayName string `json:"entityTypeDisplayName,omitempty"` + + // IsList: Optional. Indicates whether the parameter represents a list + // of values. + IsList bool `json:"isList,omitempty"` + + // Mandatory: Optional. Indicates whether the parameter is required. + // That is, + // whether the intent cannot be completed without collecting the + // parameter + // value. + Mandatory bool `json:"mandatory,omitempty"` + + // Name: The unique identifier of this parameter. + Name string `json:"name,omitempty"` + + // Prompts: Optional. The collection of prompts that the agent can + // present to the + // user in order to collect value for the parameter. + Prompts []string `json:"prompts,omitempty"` + + // Value: Optional. The definition of the parameter value. It can be: + // - a constant string, + // - a parameter value defined as `$parameter_name`, + // - an original parameter value defined as + // `$parameter_name.original`, + // - a parameter value from some context defined as + // `#context_name.parameter_name`. + Value string `json:"value,omitempty"` + + // ForceSendFields is a list of field names (e.g. "DefaultValue") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "DefaultValue") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDialogflowV2IntentParameter) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2IntentParameter + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDialogflowV2IntentTrainingPhrase: Represents an example or +// template that the agent is trained on. +type GoogleCloudDialogflowV2IntentTrainingPhrase struct { + // Name: Required. The unique identifier of this training phrase. + Name string `json:"name,omitempty"` + + // Parts: Required. The collection of training phrase parts (can be + // annotated). + // Fields: `entity_type`, `alias` and `user_defined` should be + // populated + // only for the annotated parts of the training phrase. + Parts []*GoogleCloudDialogflowV2IntentTrainingPhrasePart `json:"parts,omitempty"` + + // TimesAddedCount: Optional. Indicates how many times this example or + // template was added to + // the intent. Each time a developer adds an existing sample by editing + // an + // intent or training, this counter is increased. + TimesAddedCount int64 `json:"timesAddedCount,omitempty"` + + // Type: Required. The type of the training phrase. + // + // Possible values: + // "TYPE_UNSPECIFIED" - Not specified. This value should never be + // used. + // "EXAMPLE" - Examples do not contain @-prefixed entity type names, + // but example parts + // can be annotated with entity types. + // "TEMPLATE" - Templates are not annotated with entity types, but + // they can contain + // @-prefixed entity type names as substrings. + Type string `json:"type,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Name") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Name") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDialogflowV2IntentTrainingPhrase) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2IntentTrainingPhrase + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDialogflowV2IntentTrainingPhrasePart: Represents a part of +// a training phrase. +type GoogleCloudDialogflowV2IntentTrainingPhrasePart struct { + // Alias: Optional. The parameter name for the value extracted from + // the + // annotated part of the example. + Alias string `json:"alias,omitempty"` + + // EntityType: Optional. The entity type name prefixed with `@`. This + // field is + // required for the annotated part of the text and applies only + // to + // examples. + EntityType string `json:"entityType,omitempty"` + + // Text: Required. The text corresponding to the example or template, + // if there are no annotations. For + // annotated examples, it is the text for one of the example's parts. + Text string `json:"text,omitempty"` + + // UserDefined: Optional. Indicates whether the text was manually + // annotated by the + // developer. + UserDefined bool `json:"userDefined,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Alias") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Alias") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDialogflowV2IntentTrainingPhrasePart) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2IntentTrainingPhrasePart + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDialogflowV2OriginalDetectIntentRequest: Represents the +// contents of the original request that was passed to +// the `[Streaming]DetectIntent` call. +type GoogleCloudDialogflowV2OriginalDetectIntentRequest struct { + // Payload: Optional. This field is set to the value of + // `QueryParameters.payload` field + // passed in the request. + Payload googleapi.RawMessage `json:"payload,omitempty"` + + // Source: The source of this request, e.g., `google`, `facebook`, + // `slack`. It is set + // by Dialogflow-owned servers. Possible values of this field correspond + // to + // Intent.Message.Platform. + Source string `json:"source,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Payload") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Payload") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDialogflowV2OriginalDetectIntentRequest) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2OriginalDetectIntentRequest + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDialogflowV2QueryResult: Represents the result of +// conversational query or event processing. +type GoogleCloudDialogflowV2QueryResult struct { + // Action: The action name from the matched intent. + Action string `json:"action,omitempty"` + + // AllRequiredParamsPresent: This field is set to: + // - `false` if the matched intent has required parameters and not all + // of + // the required parameter values have been collected. + // - `true` if all required parameter values have been collected, or if + // the + // matched intent doesn't contain any required parameters. + AllRequiredParamsPresent bool `json:"allRequiredParamsPresent,omitempty"` + + // DiagnosticInfo: The free-form diagnostic info. For example, this + // field + // could contain webhook call latency. + DiagnosticInfo googleapi.RawMessage `json:"diagnosticInfo,omitempty"` + + // FulfillmentMessages: The collection of rich messages to present to + // the user. + FulfillmentMessages []*GoogleCloudDialogflowV2IntentMessage `json:"fulfillmentMessages,omitempty"` + + // FulfillmentText: The text to be pronounced to the user or shown on + // the screen. + FulfillmentText string `json:"fulfillmentText,omitempty"` + + // Intent: The intent that matched the conversational query. Some, + // not + // all fields are filled in this message, including but not limited + // to: + // `name`, `display_name` and `webhook_state`. + Intent *GoogleCloudDialogflowV2Intent `json:"intent,omitempty"` + + // IntentDetectionConfidence: The intent detection confidence. Values + // range from 0.0 + // (completely uncertain) to 1.0 (completely certain). + IntentDetectionConfidence float64 `json:"intentDetectionConfidence,omitempty"` + + // LanguageCode: The language that was triggered during intent + // detection. + // See [Language + // Support](https://dialogflow.com/docs/reference/language) + // for a list of the currently supported language codes. + LanguageCode string `json:"languageCode,omitempty"` + + // OutputContexts: The collection of output contexts. If + // applicable, + // `output_contexts.parameters` contains entries with name + // `.original` containing the original parameter + // values + // before the query. + OutputContexts []*GoogleCloudDialogflowV2Context `json:"outputContexts,omitempty"` + + // Parameters: The collection of extracted parameters. + Parameters googleapi.RawMessage `json:"parameters,omitempty"` + + // QueryText: The original conversational query text: + // - If natural language text was provided as input, `query_text` + // contains + // a copy of the input. + // - If natural language speech audio was provided as input, + // `query_text` + // contains the speech recognition result. If speech recognizer + // produced + // multiple alternatives, a particular one is picked. + // - If an event was provided as input, `query_text` is not set. + QueryText string `json:"queryText,omitempty"` + + // SpeechRecognitionConfidence: The Speech recognition confidence + // between 0.0 and 1.0. A higher number + // indicates an estimated greater likelihood that the recognized words + // are + // correct. The default of 0.0 is a sentinel value indicating that + // confidence + // was not set. + // + // You should not rely on this field as it isn't guaranteed to be + // accurate, or + // even set. In particular this field isn't set in Webhook calls and + // for + // StreamingDetectIntent since the streaming endpoint has separate + // confidence + // estimates per portion of the audio in StreamingRecognitionResult. + SpeechRecognitionConfidence float64 `json:"speechRecognitionConfidence,omitempty"` + + // WebhookPayload: If the query was fulfilled by a webhook call, this + // field is set to the + // value of the `payload` field returned in the webhook response. + WebhookPayload googleapi.RawMessage `json:"webhookPayload,omitempty"` + + // WebhookSource: If the query was fulfilled by a webhook call, this + // field is set to the + // value of the `source` field returned in the webhook response. + WebhookSource string `json:"webhookSource,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Action") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Action") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDialogflowV2QueryResult) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2QueryResult + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +func (s *GoogleCloudDialogflowV2QueryResult) UnmarshalJSON(data []byte) error { + type NoMethod GoogleCloudDialogflowV2QueryResult + var s1 struct { + IntentDetectionConfidence gensupport.JSONFloat64 `json:"intentDetectionConfidence"` + SpeechRecognitionConfidence gensupport.JSONFloat64 `json:"speechRecognitionConfidence"` + *NoMethod + } + s1.NoMethod = (*NoMethod)(s) + if err := json.Unmarshal(data, &s1); err != nil { + return err + } + s.IntentDetectionConfidence = float64(s1.IntentDetectionConfidence) + s.SpeechRecognitionConfidence = float64(s1.SpeechRecognitionConfidence) + return nil +} + +// GoogleCloudDialogflowV2WebhookRequest: The request message for a +// webhook call. +type GoogleCloudDialogflowV2WebhookRequest struct { + // OriginalDetectIntentRequest: Optional. The contents of the original + // request that was passed to + // `[Streaming]DetectIntent` call. + OriginalDetectIntentRequest *GoogleCloudDialogflowV2OriginalDetectIntentRequest `json:"originalDetectIntentRequest,omitempty"` + + // QueryResult: The result of the conversational query or event + // processing. Contains the + // same value as `[Streaming]DetectIntentResponse.query_result`. + QueryResult *GoogleCloudDialogflowV2QueryResult `json:"queryResult,omitempty"` + + // ResponseId: The unique identifier of the response. Contains the same + // value as + // `[Streaming]DetectIntentResponse.response_id`. + ResponseId string `json:"responseId,omitempty"` + + // Session: The unique identifier of detectIntent request session. + // Can be used to identify end-user inside webhook + // implementation. + // Format: `projects//agent/sessions/`. + Session string `json:"session,omitempty"` + + // ForceSendFields is a list of field names (e.g. + // "OriginalDetectIntentRequest") to unconditionally include in API + // requests. By default, fields with empty values are omitted from API + // requests. However, any non-pointer, non-interface field appearing in + // ForceSendFields will be sent to the server regardless of whether the + // field is empty or not. This may be used to include empty fields in + // Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. + // "OriginalDetectIntentRequest") to include in API requests with the + // JSON null value. By default, fields with empty values are omitted + // from API requests. However, any field with an empty value appearing + // in NullFields will be sent to the server as null. It is an error if a + // field in this list has a non-empty value. This may be used to include + // null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDialogflowV2WebhookRequest) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2WebhookRequest + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDialogflowV2WebhookResponse: The response message for a +// webhook call. +type GoogleCloudDialogflowV2WebhookResponse struct { + // FollowupEventInput: Optional. Makes the platform immediately invoke + // another `DetectIntent` call + // internally with the specified event as input. + FollowupEventInput *GoogleCloudDialogflowV2EventInput `json:"followupEventInput,omitempty"` + + // FulfillmentMessages: Optional. The collection of rich messages to + // present to the user. This + // value is passed directly to `QueryResult.fulfillment_messages`. + FulfillmentMessages []*GoogleCloudDialogflowV2IntentMessage `json:"fulfillmentMessages,omitempty"` + + // FulfillmentText: Optional. The text to be shown on the screen. This + // value is passed directly + // to `QueryResult.fulfillment_text`. + FulfillmentText string `json:"fulfillmentText,omitempty"` + + // OutputContexts: Optional. The collection of output contexts. This + // value is passed directly + // to `QueryResult.output_contexts`. + OutputContexts []*GoogleCloudDialogflowV2Context `json:"outputContexts,omitempty"` + + // Payload: Optional. This value is passed directly to + // `QueryResult.webhook_payload`. + Payload googleapi.RawMessage `json:"payload,omitempty"` + + // Source: Optional. This value is passed directly to + // `QueryResult.webhook_source`. + Source string `json:"source,omitempty"` + + // ForceSendFields is a list of field names (e.g. "FollowupEventInput") + // to unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "FollowupEventInput") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDialogflowV2WebhookResponse) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2WebhookResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDialogflowV2beta1Agent: Represents a conversational agent. +type GoogleCloudDialogflowV2beta1Agent struct { // AvatarUri: Optional. The URI of the agent's avatar. - // Avatars are used throughout API.AI console and in the + // Avatars are used throughout the Dialogflow console and in the // self-hosted // [Web Demo](https://dialogflow.com/docs/integrations/web-demo) // integration. @@ -273,14 +1981,14 @@ type Agent struct { NullFields []string `json:"-"` } -func (s *Agent) MarshalJSON() ([]byte, error) { - type NoMethod Agent +func (s *GoogleCloudDialogflowV2beta1Agent) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2beta1Agent raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -func (s *Agent) UnmarshalJSON(data []byte) error { - type NoMethod Agent +func (s *GoogleCloudDialogflowV2beta1Agent) UnmarshalJSON(data []byte) error { + type NoMethod GoogleCloudDialogflowV2beta1Agent var s1 struct { ClassificationThreshold gensupport.JSONFloat64 `json:"classificationThreshold"` *NoMethod @@ -293,11 +2001,11 @@ func (s *Agent) UnmarshalJSON(data []byte) error { return nil } -// BatchCreateEntitiesRequest: The request message for -// EntityTypes.BatchCreateEntities. -type BatchCreateEntitiesRequest struct { +// GoogleCloudDialogflowV2beta1BatchCreateEntitiesRequest: The request +// message for EntityTypes.BatchCreateEntities. +type GoogleCloudDialogflowV2beta1BatchCreateEntitiesRequest struct { // Entities: Required. The collection of entities to create. - Entities []*EntityTypeEntity `json:"entities,omitempty"` + Entities []*GoogleCloudDialogflowV2beta1EntityTypeEntity `json:"entities,omitempty"` // LanguageCode: Optional. The language of entity synonyms defined in // `entities`. If not @@ -327,15 +2035,15 @@ type BatchCreateEntitiesRequest struct { NullFields []string `json:"-"` } -func (s *BatchCreateEntitiesRequest) MarshalJSON() ([]byte, error) { - type NoMethod BatchCreateEntitiesRequest +func (s *GoogleCloudDialogflowV2beta1BatchCreateEntitiesRequest) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2beta1BatchCreateEntitiesRequest raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -// BatchDeleteEntitiesRequest: The request message for -// EntityTypes.BatchDeleteEntities. -type BatchDeleteEntitiesRequest struct { +// GoogleCloudDialogflowV2beta1BatchDeleteEntitiesRequest: The request +// message for EntityTypes.BatchDeleteEntities. +type GoogleCloudDialogflowV2beta1BatchDeleteEntitiesRequest struct { // EntityValues: Required. The canonical `values` of the entities to // delete. Note that // these are not fully-qualified names, i.e. they don't start @@ -371,15 +2079,15 @@ type BatchDeleteEntitiesRequest struct { NullFields []string `json:"-"` } -func (s *BatchDeleteEntitiesRequest) MarshalJSON() ([]byte, error) { - type NoMethod BatchDeleteEntitiesRequest +func (s *GoogleCloudDialogflowV2beta1BatchDeleteEntitiesRequest) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2beta1BatchDeleteEntitiesRequest raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -// BatchDeleteEntityTypesRequest: The request message for -// EntityTypes.BatchDeleteEntityTypes. -type BatchDeleteEntityTypesRequest struct { +// GoogleCloudDialogflowV2beta1BatchDeleteEntityTypesRequest: The +// request message for EntityTypes.BatchDeleteEntityTypes. +type GoogleCloudDialogflowV2beta1BatchDeleteEntityTypesRequest struct { // EntityTypeNames: Required. The names entity types to delete. All // names must point to the // same agent as `parent`. @@ -403,19 +2111,19 @@ type BatchDeleteEntityTypesRequest struct { NullFields []string `json:"-"` } -func (s *BatchDeleteEntityTypesRequest) MarshalJSON() ([]byte, error) { - type NoMethod BatchDeleteEntityTypesRequest +func (s *GoogleCloudDialogflowV2beta1BatchDeleteEntityTypesRequest) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2beta1BatchDeleteEntityTypesRequest raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -// BatchDeleteIntentsRequest: The request message for -// Intents.BatchDeleteIntents. -type BatchDeleteIntentsRequest struct { +// GoogleCloudDialogflowV2beta1BatchDeleteIntentsRequest: The request +// message for Intents.BatchDeleteIntents. +type GoogleCloudDialogflowV2beta1BatchDeleteIntentsRequest struct { // Intents: Required. The collection of intents to delete. Only intent // `name` must be // filled in. - Intents []*Intent `json:"intents,omitempty"` + Intents []*GoogleCloudDialogflowV2beta1Intent `json:"intents,omitempty"` // ForceSendFields is a list of field names (e.g. "Intents") to // unconditionally include in API requests. By default, fields with @@ -434,18 +2142,18 @@ type BatchDeleteIntentsRequest struct { NullFields []string `json:"-"` } -func (s *BatchDeleteIntentsRequest) MarshalJSON() ([]byte, error) { - type NoMethod BatchDeleteIntentsRequest +func (s *GoogleCloudDialogflowV2beta1BatchDeleteIntentsRequest) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2beta1BatchDeleteIntentsRequest raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -// BatchUpdateEntitiesRequest: The response message for -// EntityTypes.BatchCreateEntities. -type BatchUpdateEntitiesRequest struct { +// GoogleCloudDialogflowV2beta1BatchUpdateEntitiesRequest: The response +// message for EntityTypes.BatchCreateEntities. +type GoogleCloudDialogflowV2beta1BatchUpdateEntitiesRequest struct { // Entities: Required. The collection of new entities to replace the // existing entities. - Entities []*EntityTypeEntity `json:"entities,omitempty"` + Entities []*GoogleCloudDialogflowV2beta1EntityTypeEntity `json:"entities,omitempty"` // LanguageCode: Optional. The language of entity synonyms defined in // `entities`. If not @@ -478,24 +2186,21 @@ type BatchUpdateEntitiesRequest struct { NullFields []string `json:"-"` } -func (s *BatchUpdateEntitiesRequest) MarshalJSON() ([]byte, error) { - type NoMethod BatchUpdateEntitiesRequest +func (s *GoogleCloudDialogflowV2beta1BatchUpdateEntitiesRequest) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2beta1BatchUpdateEntitiesRequest raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -// BatchUpdateEntityTypesRequest: The request message for -// EntityTypes.BatchUpdateEntityTypes. -type BatchUpdateEntityTypesRequest struct { +// GoogleCloudDialogflowV2beta1BatchUpdateEntityTypesRequest: The +// request message for EntityTypes.BatchUpdateEntityTypes. +type GoogleCloudDialogflowV2beta1BatchUpdateEntityTypesRequest struct { // EntityTypeBatchInline: The collection of entity type to update or // create. - EntityTypeBatchInline *EntityTypeBatch `json:"entityTypeBatchInline,omitempty"` + EntityTypeBatchInline *GoogleCloudDialogflowV2beta1EntityTypeBatch `json:"entityTypeBatchInline,omitempty"` - // EntityTypeBatchUri: Warning: Importing entity types from a URI is not - // implemented yet. - // This feature is coming soon. - // The URI to a Google Cloud Storage file containing entity types to - // update + // EntityTypeBatchUri: The URI to a Google Cloud Storage file containing + // entity types to update // or create. The file format can either be a serialized proto // (of // EntityBatch type) or a JSON object. Note: The URI must start @@ -536,17 +2241,17 @@ type BatchUpdateEntityTypesRequest struct { NullFields []string `json:"-"` } -func (s *BatchUpdateEntityTypesRequest) MarshalJSON() ([]byte, error) { - type NoMethod BatchUpdateEntityTypesRequest +func (s *GoogleCloudDialogflowV2beta1BatchUpdateEntityTypesRequest) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2beta1BatchUpdateEntityTypesRequest raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -// BatchUpdateEntityTypesResponse: The response message for -// EntityTypes.BatchUpdateEntityTypes. -type BatchUpdateEntityTypesResponse struct { +// GoogleCloudDialogflowV2beta1BatchUpdateEntityTypesResponse: The +// response message for EntityTypes.BatchUpdateEntityTypes. +type GoogleCloudDialogflowV2beta1BatchUpdateEntityTypesResponse struct { // EntityTypes: The collection of updated or created entity types. - EntityTypes []*EntityType `json:"entityTypes,omitempty"` + EntityTypes []*GoogleCloudDialogflowV2beta1EntityType `json:"entityTypes,omitempty"` // ForceSendFields is a list of field names (e.g. "EntityTypes") to // unconditionally include in API requests. By default, fields with @@ -565,23 +2270,20 @@ type BatchUpdateEntityTypesResponse struct { NullFields []string `json:"-"` } -func (s *BatchUpdateEntityTypesResponse) MarshalJSON() ([]byte, error) { - type NoMethod BatchUpdateEntityTypesResponse +func (s *GoogleCloudDialogflowV2beta1BatchUpdateEntityTypesResponse) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2beta1BatchUpdateEntityTypesResponse raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -// BatchUpdateIntentsRequest: The request message for -// Intents.BatchUpdateIntents. -type BatchUpdateIntentsRequest struct { +// GoogleCloudDialogflowV2beta1BatchUpdateIntentsRequest: The request +// message for Intents.BatchUpdateIntents. +type GoogleCloudDialogflowV2beta1BatchUpdateIntentsRequest struct { // IntentBatchInline: The collection of intents to update or create. - IntentBatchInline *IntentBatch `json:"intentBatchInline,omitempty"` + IntentBatchInline *GoogleCloudDialogflowV2beta1IntentBatch `json:"intentBatchInline,omitempty"` - // IntentBatchUri: Warning: Importing intents from a URI is not - // implemented yet. - // This feature is coming soon. - // The URI to a Google Cloud Storage file containing intents to update - // or + // IntentBatchUri: The URI to a Google Cloud Storage file containing + // intents to update or // create. The file format can either be a serialized proto (of // IntentBatch // type) or JSON object. Note: The URI must start with "gs://". @@ -629,17 +2331,17 @@ type BatchUpdateIntentsRequest struct { NullFields []string `json:"-"` } -func (s *BatchUpdateIntentsRequest) MarshalJSON() ([]byte, error) { - type NoMethod BatchUpdateIntentsRequest +func (s *GoogleCloudDialogflowV2beta1BatchUpdateIntentsRequest) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2beta1BatchUpdateIntentsRequest raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -// BatchUpdateIntentsResponse: The response message for -// Intents.BatchUpdateIntents. -type BatchUpdateIntentsResponse struct { +// GoogleCloudDialogflowV2beta1BatchUpdateIntentsResponse: The response +// message for Intents.BatchUpdateIntents. +type GoogleCloudDialogflowV2beta1BatchUpdateIntentsResponse struct { // Intents: The collection of updated or created intents. - Intents []*Intent `json:"intents,omitempty"` + Intents []*GoogleCloudDialogflowV2beta1Intent `json:"intents,omitempty"` // ForceSendFields is a list of field names (e.g. "Intents") to // unconditionally include in API requests. By default, fields with @@ -658,14 +2360,14 @@ type BatchUpdateIntentsResponse struct { NullFields []string `json:"-"` } -func (s *BatchUpdateIntentsResponse) MarshalJSON() ([]byte, error) { - type NoMethod BatchUpdateIntentsResponse +func (s *GoogleCloudDialogflowV2beta1BatchUpdateIntentsResponse) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2beta1BatchUpdateIntentsResponse raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -// Context: Represents a context. -type Context struct { +// GoogleCloudDialogflowV2beta1Context: Represents a context. +type GoogleCloudDialogflowV2beta1Context struct { // LifespanCount: Optional. The number of conversational query requests // after which the // context expires. If set to `0` (the default) the context @@ -678,8 +2380,19 @@ type Context struct { // Name: Required. The unique identifier of the context. // Format: // `projects//agent/sessions//contexts/`. - // Note: The Context ID is always converted to lowercase. + // ID>`, + // or + // `projects//agent/environments//users//sessions//contexts/`. Note: Environments + // and + // users are under construction and will be available soon. The Context + // ID is + // always converted to lowercase. If is not specified, + // we + // assume default 'draft' environment. If is not specified, + // we + // assume default '-' user. Name string `json:"name,omitempty"` // Parameters: Optional. The collection of parameters associated with @@ -710,14 +2423,15 @@ type Context struct { NullFields []string `json:"-"` } -func (s *Context) MarshalJSON() ([]byte, error) { - type NoMethod Context +func (s *GoogleCloudDialogflowV2beta1Context) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2beta1Context raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -// DetectIntentRequest: The request to detect user's intent. -type DetectIntentRequest struct { +// GoogleCloudDialogflowV2beta1DetectIntentRequest: The request to +// detect user's intent. +type GoogleCloudDialogflowV2beta1DetectIntentRequest struct { // InputAudio: Optional. The natural language speech audio to be // processed. This field // should be populated iff `query_input` is set to an input audio @@ -734,10 +2448,10 @@ type DetectIntentRequest struct { // 2. a conversational query in the form of text, or // // 3. an event that specifies which intent to trigger. - QueryInput *QueryInput `json:"queryInput,omitempty"` + QueryInput *GoogleCloudDialogflowV2beta1QueryInput `json:"queryInput,omitempty"` // QueryParams: Optional. The parameters of this query. - QueryParams *QueryParameters `json:"queryParams,omitempty"` + QueryParams *GoogleCloudDialogflowV2beta1QueryParameters `json:"queryParams,omitempty"` // ForceSendFields is a list of field names (e.g. "InputAudio") to // unconditionally include in API requests. By default, fields with @@ -756,18 +2470,18 @@ type DetectIntentRequest struct { NullFields []string `json:"-"` } -func (s *DetectIntentRequest) MarshalJSON() ([]byte, error) { - type NoMethod DetectIntentRequest +func (s *GoogleCloudDialogflowV2beta1DetectIntentRequest) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2beta1DetectIntentRequest raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -// DetectIntentResponse: The message returned from the DetectIntent -// method. -type DetectIntentResponse struct { +// GoogleCloudDialogflowV2beta1DetectIntentResponse: The message +// returned from the DetectIntent method. +type GoogleCloudDialogflowV2beta1DetectIntentResponse struct { // QueryResult: The results of the conversational query or event // processing. - QueryResult *QueryResult `json:"queryResult,omitempty"` + QueryResult *GoogleCloudDialogflowV2beta1QueryResult `json:"queryResult,omitempty"` // ResponseId: The unique identifier of the response. It can be used // to @@ -778,7 +2492,7 @@ type DetectIntentResponse struct { // WebhookStatus: Specifies the status of the webhook request. // `webhook_status` // is never populated in webhook requests. - WebhookStatus *Status `json:"webhookStatus,omitempty"` + WebhookStatus *GoogleRpcStatus `json:"webhookStatus,omitempty"` // ServerResponse contains the HTTP response code and headers from the // server. @@ -801,35 +2515,18 @@ type DetectIntentResponse struct { NullFields []string `json:"-"` } -func (s *DetectIntentResponse) MarshalJSON() ([]byte, error) { - type NoMethod DetectIntentResponse +func (s *GoogleCloudDialogflowV2beta1DetectIntentResponse) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2beta1DetectIntentResponse raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -// Empty: A generic empty message that you can re-use to avoid defining -// duplicated -// empty messages in your APIs. A typical example is to use it as the -// request -// or the response type of an API method. For instance: -// -// service Foo { -// rpc Bar(google.protobuf.Empty) returns -// (google.protobuf.Empty); -// } -// -// The JSON representation for `Empty` is empty JSON object `{}`. -type Empty struct { - // ServerResponse contains the HTTP response code and headers from the - // server. - googleapi.ServerResponse `json:"-"` -} - -// EntityType: Represents an entity type. +// GoogleCloudDialogflowV2beta1EntityType: Represents an entity +// type. // Entity types serve as a tool for extracting parameter values from // natural // language queries. -type EntityType struct { +type GoogleCloudDialogflowV2beta1EntityType struct { // AutoExpansionMode: Optional. Indicates whether the entity type can be // automatically // expanded. @@ -847,7 +2544,7 @@ type EntityType struct { // Entities: Optional. The collection of entities associated with the // entity type. - Entities []*EntityTypeEntity `json:"entities,omitempty"` + Entities []*GoogleCloudDialogflowV2beta1EntityTypeEntity `json:"entities,omitempty"` // Kind: Required. Indicates the kind of entity type. // @@ -893,17 +2590,17 @@ type EntityType struct { NullFields []string `json:"-"` } -func (s *EntityType) MarshalJSON() ([]byte, error) { - type NoMethod EntityType +func (s *GoogleCloudDialogflowV2beta1EntityType) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2beta1EntityType raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -// EntityTypeBatch: This message is a wrapper around a collection of -// entity types. -type EntityTypeBatch struct { +// GoogleCloudDialogflowV2beta1EntityTypeBatch: This message is a +// wrapper around a collection of entity types. +type GoogleCloudDialogflowV2beta1EntityTypeBatch struct { // EntityTypes: A collection of entity types. - EntityTypes []*EntityType `json:"entityTypes,omitempty"` + EntityTypes []*GoogleCloudDialogflowV2beta1EntityType `json:"entityTypes,omitempty"` // ForceSendFields is a list of field names (e.g. "EntityTypes") to // unconditionally include in API requests. By default, fields with @@ -922,14 +2619,15 @@ type EntityTypeBatch struct { NullFields []string `json:"-"` } -func (s *EntityTypeBatch) MarshalJSON() ([]byte, error) { - type NoMethod EntityTypeBatch +func (s *GoogleCloudDialogflowV2beta1EntityTypeBatch) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2beta1EntityTypeBatch raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -// EntityTypeEntity: Optional. Represents an entity. -type EntityTypeEntity struct { +// GoogleCloudDialogflowV2beta1EntityTypeEntity: Optional. Represents an +// entity. +type GoogleCloudDialogflowV2beta1EntityTypeEntity struct { // Synonyms: Required. A collection of synonyms. For `KIND_LIST` entity // types this // must contain exactly one synonym equal to `value`. @@ -961,14 +2659,14 @@ type EntityTypeEntity struct { NullFields []string `json:"-"` } -func (s *EntityTypeEntity) MarshalJSON() ([]byte, error) { - type NoMethod EntityTypeEntity +func (s *GoogleCloudDialogflowV2beta1EntityTypeEntity) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2beta1EntityTypeEntity raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -// EventInput: Events allow for matching intents by event name instead -// of the natural +// GoogleCloudDialogflowV2beta1EventInput: Events allow for matching +// intents by event name instead of the natural // language input. For instance, input `` can trigger a personalized @@ -976,7 +2674,7 @@ func (s *EntityTypeEntity) MarshalJSON() ([]byte, error) { // The parameter `name` may be used by the agent in the // response: // `“Hello #welcome_event.name! What can I do for you today?”`. -type EventInput struct { +type GoogleCloudDialogflowV2beta1EventInput struct { // LanguageCode: Required. The language of this query. See // [Language // Support](https://dialogflow.com/docs/languages) for a list of @@ -1010,19 +2708,17 @@ type EventInput struct { NullFields []string `json:"-"` } -func (s *EventInput) MarshalJSON() ([]byte, error) { - type NoMethod EventInput +func (s *GoogleCloudDialogflowV2beta1EventInput) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2beta1EventInput raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -// ExportAgentRequest: The request message for Agents.ExportAgent. -type ExportAgentRequest struct { - // AgentUri: Warning: Exporting agents to a URI is not implemented - // yet. - // This feature is coming soon. - // - // Optional. The Google Cloud Storage URI to export the agent to. +// GoogleCloudDialogflowV2beta1ExportAgentRequest: The request message +// for Agents.ExportAgent. +type GoogleCloudDialogflowV2beta1ExportAgentRequest struct { + // AgentUri: Optional. The Google Cloud Storage URI to export the agent + // to. // Note: The URI must start with // "gs://". If left unspecified, the serialized agent is returned // inline. @@ -1045,14 +2741,15 @@ type ExportAgentRequest struct { NullFields []string `json:"-"` } -func (s *ExportAgentRequest) MarshalJSON() ([]byte, error) { - type NoMethod ExportAgentRequest +func (s *GoogleCloudDialogflowV2beta1ExportAgentRequest) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2beta1ExportAgentRequest raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -// ExportAgentResponse: The response message for Agents.ExportAgent. -type ExportAgentResponse struct { +// GoogleCloudDialogflowV2beta1ExportAgentResponse: The response message +// for Agents.ExportAgent. +type GoogleCloudDialogflowV2beta1ExportAgentResponse struct { // AgentContent: The exported agent. // // Example for how to export an agent to a zip file via a command @@ -1095,14 +2792,15 @@ type ExportAgentResponse struct { NullFields []string `json:"-"` } -func (s *ExportAgentResponse) MarshalJSON() ([]byte, error) { - type NoMethod ExportAgentResponse +func (s *GoogleCloudDialogflowV2beta1ExportAgentResponse) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2beta1ExportAgentResponse raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -// ImportAgentRequest: The request message for Agents.ImportAgent. -type ImportAgentRequest struct { +// GoogleCloudDialogflowV2beta1ImportAgentRequest: The request message +// for Agents.ImportAgent. +type GoogleCloudDialogflowV2beta1ImportAgentRequest struct { // AgentContent: The agent to import. // // Example for how to import an agent via the command line: @@ -1121,12 +2819,8 @@ type ImportAgentRequest struct { // }" AgentContent string `json:"agentContent,omitempty"` - // AgentUri: Warning: Importing agents from a URI is not implemented - // yet. - // This feature is coming soon. - // - // The URI to a Google Cloud Storage file containing the agent to - // import. + // AgentUri: The URI to a Google Cloud Storage file containing the agent + // to import. // Note: The URI must start with "gs://". AgentUri string `json:"agentUri,omitempty"` @@ -1147,15 +2841,15 @@ type ImportAgentRequest struct { NullFields []string `json:"-"` } -func (s *ImportAgentRequest) MarshalJSON() ([]byte, error) { - type NoMethod ImportAgentRequest +func (s *GoogleCloudDialogflowV2beta1ImportAgentRequest) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2beta1ImportAgentRequest raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -// InputAudioConfig: Instructs the speech recognizer how to process the -// audio content. -type InputAudioConfig struct { +// GoogleCloudDialogflowV2beta1InputAudioConfig: Instructs the speech +// recognizer how to process the audio content. +type GoogleCloudDialogflowV2beta1InputAudioConfig struct { // AudioEncoding: Required. Audio encoding of the audio content to // process. // @@ -1252,17 +2946,17 @@ type InputAudioConfig struct { NullFields []string `json:"-"` } -func (s *InputAudioConfig) MarshalJSON() ([]byte, error) { - type NoMethod InputAudioConfig +func (s *GoogleCloudDialogflowV2beta1InputAudioConfig) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2beta1InputAudioConfig raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -// Intent: Represents an intent. +// GoogleCloudDialogflowV2beta1Intent: Represents an intent. // Intents convert a number of user expressions or patterns into an // action. An // action is an extraction of a user command or sentence semantics. -type Intent struct { +type GoogleCloudDialogflowV2beta1Intent struct { // Action: Optional. The name of the action associated with the intent. Action string `json:"action,omitempty"` @@ -1296,7 +2990,7 @@ type Intent struct { // FollowupIntentInfo: Optional. Collection of information about all // followup intents that have // name of this intent as a root_name. - FollowupIntentInfo []*IntentFollowupIntentInfo `json:"followupIntentInfo,omitempty"` + FollowupIntentInfo []*GoogleCloudDialogflowV2beta1IntentFollowupIntentInfo `json:"followupIntentInfo,omitempty"` // InputContextNames: Optional. The list of context names required for // this intent to be @@ -1310,8 +3004,17 @@ type Intent struct { // Messages: Optional. The collection of rich messages corresponding to // the - // `Response` field in API.AI console. - Messages []*IntentMessage `json:"messages,omitempty"` + // `Response` field in the Dialogflow console. + Messages []*GoogleCloudDialogflowV2beta1IntentMessage `json:"messages,omitempty"` + + // MlDisabled: Optional. Indicates whether Machine Learning is disabled + // for the intent. + // Note: If `ml_disabled` setting is set to true, then this intent is + // not + // taken into account during inference in `ML ONLY` match mode. + // Also, + // auto-markup in the UI is turned off. + MlDisabled bool `json:"mlDisabled,omitempty"` // MlEnabled: Optional. Indicates whether Machine Learning is enabled // for the intent. @@ -1320,6 +3023,14 @@ type Intent struct { // taken into account during inference in `ML ONLY` match mode. // Also, // auto-markup in the UI is turned off. + // DEPRECATED! Please use `ml_disabled` field instead. + // NOTE: If neither `ml_enabled` nor `ml_disabled` field is set, then + // the + // default value is determined as follows: + // - Before April 15th, 2018 the default is: + // ml_enabled = false / ml_disabled = true. + // - After April 15th, 2018 the default is: + // ml_enabled = true / ml_disabled = false. MlEnabled bool `json:"mlEnabled,omitempty"` // Name: Required for all methods except `create` (`create` populates @@ -1338,11 +3049,11 @@ type Intent struct { // when the intent is matched. // Format: `projects//agent/sessions/-/contexts/`. - OutputContexts []*Context `json:"outputContexts,omitempty"` + OutputContexts []*GoogleCloudDialogflowV2beta1Context `json:"outputContexts,omitempty"` // Parameters: Optional. The collection of parameters associated with // the intent. - Parameters []*IntentParameter `json:"parameters,omitempty"` + Parameters []*GoogleCloudDialogflowV2beta1IntentParameter `json:"parameters,omitempty"` // ParentFollowupIntentName: The unique identifier of the parent intent // in the chain of followup @@ -1372,7 +3083,7 @@ type Intent struct { // TrainingPhrases: Optional. The collection of examples/templates that // the agent is // trained on. - TrainingPhrases []*IntentTrainingPhrase `json:"trainingPhrases,omitempty"` + TrainingPhrases []*GoogleCloudDialogflowV2beta1IntentTrainingPhrase `json:"trainingPhrases,omitempty"` // WebhookState: Required. Indicates whether webhooks are enabled for // the intent. @@ -1408,17 +3119,17 @@ type Intent struct { NullFields []string `json:"-"` } -func (s *Intent) MarshalJSON() ([]byte, error) { - type NoMethod Intent +func (s *GoogleCloudDialogflowV2beta1Intent) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2beta1Intent raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -// IntentBatch: This message is a wrapper around a collection of -// intents. -type IntentBatch struct { +// GoogleCloudDialogflowV2beta1IntentBatch: This message is a wrapper +// around a collection of intents. +type GoogleCloudDialogflowV2beta1IntentBatch struct { // Intents: A collection of intents. - Intents []*Intent `json:"intents,omitempty"` + Intents []*GoogleCloudDialogflowV2beta1Intent `json:"intents,omitempty"` // ForceSendFields is a list of field names (e.g. "Intents") to // unconditionally include in API requests. By default, fields with @@ -1437,15 +3148,15 @@ type IntentBatch struct { NullFields []string `json:"-"` } -func (s *IntentBatch) MarshalJSON() ([]byte, error) { - type NoMethod IntentBatch +func (s *GoogleCloudDialogflowV2beta1IntentBatch) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2beta1IntentBatch raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -// IntentFollowupIntentInfo: Represents a single followup intent in the -// chain. -type IntentFollowupIntentInfo struct { +// GoogleCloudDialogflowV2beta1IntentFollowupIntentInfo: Represents a +// single followup intent in the chain. +type GoogleCloudDialogflowV2beta1IntentFollowupIntentInfo struct { // FollowupIntentName: The unique identifier of the followup // intent. // Format: `projects//agent/intents/`. @@ -1474,34 +3185,35 @@ type IntentFollowupIntentInfo struct { NullFields []string `json:"-"` } -func (s *IntentFollowupIntentInfo) MarshalJSON() ([]byte, error) { - type NoMethod IntentFollowupIntentInfo +func (s *GoogleCloudDialogflowV2beta1IntentFollowupIntentInfo) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2beta1IntentFollowupIntentInfo raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -// IntentMessage: Corresponds to the `Response` field in API.AI console. -type IntentMessage struct { - // BasicCard: The basic card response for Actions on Google. - BasicCard *IntentMessageBasicCard `json:"basicCard,omitempty"` +// GoogleCloudDialogflowV2beta1IntentMessage: Corresponds to the +// `Response` field in the Dialogflow console. +type GoogleCloudDialogflowV2beta1IntentMessage struct { + // BasicCard: Displays a basic card for Actions on Google. + BasicCard *GoogleCloudDialogflowV2beta1IntentMessageBasicCard `json:"basicCard,omitempty"` - // Card: The card response. - Card *IntentMessageCard `json:"card,omitempty"` + // Card: Displays a card. + Card *GoogleCloudDialogflowV2beta1IntentMessageCard `json:"card,omitempty"` - // CarouselSelect: The carousel card response for Actions on Google. - CarouselSelect *IntentMessageCarouselSelect `json:"carouselSelect,omitempty"` + // CarouselSelect: Displays a carousel card for Actions on Google. + CarouselSelect *GoogleCloudDialogflowV2beta1IntentMessageCarouselSelect `json:"carouselSelect,omitempty"` - // Image: The image response. - Image *IntentMessageImage `json:"image,omitempty"` + // Image: Displays an image. + Image *GoogleCloudDialogflowV2beta1IntentMessageImage `json:"image,omitempty"` - // LinkOutSuggestion: The link out suggestion chip for Actions on + // LinkOutSuggestion: Displays a link out suggestion chip for Actions on // Google. - LinkOutSuggestion *IntentMessageLinkOutSuggestion `json:"linkOutSuggestion,omitempty"` + LinkOutSuggestion *GoogleCloudDialogflowV2beta1IntentMessageLinkOutSuggestion `json:"linkOutSuggestion,omitempty"` - // ListSelect: The list card response for Actions on Google. - ListSelect *IntentMessageListSelect `json:"listSelect,omitempty"` + // ListSelect: Displays a list card for Actions on Google. + ListSelect *GoogleCloudDialogflowV2beta1IntentMessageListSelect `json:"listSelect,omitempty"` - // Payload: The response containing a custom payload. + // Payload: Returns a response containing a custom payload. Payload googleapi.RawMessage `json:"payload,omitempty"` // Platform: Optional. The platform that this message is intended for. @@ -1518,18 +3230,18 @@ type IntentMessage struct { // "ACTIONS_ON_GOOGLE" - Actions on Google. Platform string `json:"platform,omitempty"` - // QuickReplies: The quick replies response. - QuickReplies *IntentMessageQuickReplies `json:"quickReplies,omitempty"` + // QuickReplies: Displays quick replies. + QuickReplies *GoogleCloudDialogflowV2beta1IntentMessageQuickReplies `json:"quickReplies,omitempty"` - // SimpleResponses: The voice and text-only responses for Actions on + // SimpleResponses: Returns a voice or text-only response for Actions on // Google. - SimpleResponses *IntentMessageSimpleResponses `json:"simpleResponses,omitempty"` + SimpleResponses *GoogleCloudDialogflowV2beta1IntentMessageSimpleResponses `json:"simpleResponses,omitempty"` - // Suggestions: The suggestion chips for Actions on Google. - Suggestions *IntentMessageSuggestions `json:"suggestions,omitempty"` + // Suggestions: Displays suggestion chips for Actions on Google. + Suggestions *GoogleCloudDialogflowV2beta1IntentMessageSuggestions `json:"suggestions,omitempty"` - // Text: The text response. - Text *IntentMessageText `json:"text,omitempty"` + // Text: Returns a text response. + Text *GoogleCloudDialogflowV2beta1IntentMessageText `json:"text,omitempty"` // ForceSendFields is a list of field names (e.g. "BasicCard") to // unconditionally include in API requests. By default, fields with @@ -1548,24 +3260,24 @@ type IntentMessage struct { NullFields []string `json:"-"` } -func (s *IntentMessage) MarshalJSON() ([]byte, error) { - type NoMethod IntentMessage +func (s *GoogleCloudDialogflowV2beta1IntentMessage) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2beta1IntentMessage raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -// IntentMessageBasicCard: The basic card message. Useful for displaying -// information. -type IntentMessageBasicCard struct { +// GoogleCloudDialogflowV2beta1IntentMessageBasicCard: The basic card +// message. Useful for displaying information. +type GoogleCloudDialogflowV2beta1IntentMessageBasicCard struct { // Buttons: Optional. The collection of card buttons. - Buttons []*IntentMessageBasicCardButton `json:"buttons,omitempty"` + Buttons []*GoogleCloudDialogflowV2beta1IntentMessageBasicCardButton `json:"buttons,omitempty"` // FormattedText: Required, unless image is present. The body text of // the card. FormattedText string `json:"formattedText,omitempty"` // Image: Optional. The image for the card. - Image *IntentMessageImage `json:"image,omitempty"` + Image *GoogleCloudDialogflowV2beta1IntentMessageImage `json:"image,omitempty"` // Subtitle: Optional. The subtitle of the card. Subtitle string `json:"subtitle,omitempty"` @@ -1590,18 +3302,18 @@ type IntentMessageBasicCard struct { NullFields []string `json:"-"` } -func (s *IntentMessageBasicCard) MarshalJSON() ([]byte, error) { - type NoMethod IntentMessageBasicCard +func (s *GoogleCloudDialogflowV2beta1IntentMessageBasicCard) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2beta1IntentMessageBasicCard raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -// IntentMessageBasicCardButton: The button object that appears at the -// bottom of a card. -type IntentMessageBasicCardButton struct { +// GoogleCloudDialogflowV2beta1IntentMessageBasicCardButton: The button +// object that appears at the bottom of a card. +type GoogleCloudDialogflowV2beta1IntentMessageBasicCardButton struct { // OpenUriAction: Required. Action to take when a user taps on the // button. - OpenUriAction *IntentMessageBasicCardButtonOpenUriAction `json:"openUriAction,omitempty"` + OpenUriAction *GoogleCloudDialogflowV2beta1IntentMessageBasicCardButtonOpenUriAction `json:"openUriAction,omitempty"` // Title: Required. The title of the button. Title string `json:"title,omitempty"` @@ -1623,14 +3335,15 @@ type IntentMessageBasicCardButton struct { NullFields []string `json:"-"` } -func (s *IntentMessageBasicCardButton) MarshalJSON() ([]byte, error) { - type NoMethod IntentMessageBasicCardButton +func (s *GoogleCloudDialogflowV2beta1IntentMessageBasicCardButton) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2beta1IntentMessageBasicCardButton raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -// IntentMessageBasicCardButtonOpenUriAction: Opens the given URI. -type IntentMessageBasicCardButtonOpenUriAction struct { +// GoogleCloudDialogflowV2beta1IntentMessageBasicCardButtonOpenUriAction: +// Opens the given URI. +type GoogleCloudDialogflowV2beta1IntentMessageBasicCardButtonOpenUriAction struct { // Uri: Required. The HTTP or HTTPS scheme URI. Uri string `json:"uri,omitempty"` @@ -1651,16 +3364,17 @@ type IntentMessageBasicCardButtonOpenUriAction struct { NullFields []string `json:"-"` } -func (s *IntentMessageBasicCardButtonOpenUriAction) MarshalJSON() ([]byte, error) { - type NoMethod IntentMessageBasicCardButtonOpenUriAction +func (s *GoogleCloudDialogflowV2beta1IntentMessageBasicCardButtonOpenUriAction) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2beta1IntentMessageBasicCardButtonOpenUriAction raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -// IntentMessageCard: The card response message. -type IntentMessageCard struct { +// GoogleCloudDialogflowV2beta1IntentMessageCard: The card response +// message. +type GoogleCloudDialogflowV2beta1IntentMessageCard struct { // Buttons: Optional. The collection of card buttons. - Buttons []*IntentMessageCardButton `json:"buttons,omitempty"` + Buttons []*GoogleCloudDialogflowV2beta1IntentMessageCardButton `json:"buttons,omitempty"` // ImageUri: Optional. The public URI to an image file for the card. ImageUri string `json:"imageUri,omitempty"` @@ -1688,15 +3402,15 @@ type IntentMessageCard struct { NullFields []string `json:"-"` } -func (s *IntentMessageCard) MarshalJSON() ([]byte, error) { - type NoMethod IntentMessageCard +func (s *GoogleCloudDialogflowV2beta1IntentMessageCard) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2beta1IntentMessageCard raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -// IntentMessageCardButton: Optional. Contains information about a -// button. -type IntentMessageCardButton struct { +// GoogleCloudDialogflowV2beta1IntentMessageCardButton: Optional. +// Contains information about a button. +type GoogleCloudDialogflowV2beta1IntentMessageCardButton struct { // Postback: Optional. The text to send back to the Dialogflow API or a // URI to // open. @@ -1722,17 +3436,17 @@ type IntentMessageCardButton struct { NullFields []string `json:"-"` } -func (s *IntentMessageCardButton) MarshalJSON() ([]byte, error) { - type NoMethod IntentMessageCardButton +func (s *GoogleCloudDialogflowV2beta1IntentMessageCardButton) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2beta1IntentMessageCardButton raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -// IntentMessageCarouselSelect: The card for presenting a carousel of -// options to select from. -type IntentMessageCarouselSelect struct { +// GoogleCloudDialogflowV2beta1IntentMessageCarouselSelect: The card for +// presenting a carousel of options to select from. +type GoogleCloudDialogflowV2beta1IntentMessageCarouselSelect struct { // Items: Required. Carousel items. - Items []*IntentMessageCarouselSelectItem `json:"items,omitempty"` + Items []*GoogleCloudDialogflowV2beta1IntentMessageCarouselSelectItem `json:"items,omitempty"` // ForceSendFields is a list of field names (e.g. "Items") to // unconditionally include in API requests. By default, fields with @@ -1751,22 +3465,23 @@ type IntentMessageCarouselSelect struct { NullFields []string `json:"-"` } -func (s *IntentMessageCarouselSelect) MarshalJSON() ([]byte, error) { - type NoMethod IntentMessageCarouselSelect +func (s *GoogleCloudDialogflowV2beta1IntentMessageCarouselSelect) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2beta1IntentMessageCarouselSelect raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -// IntentMessageCarouselSelectItem: An item in the carousel. -type IntentMessageCarouselSelectItem struct { +// GoogleCloudDialogflowV2beta1IntentMessageCarouselSelectItem: An item +// in the carousel. +type GoogleCloudDialogflowV2beta1IntentMessageCarouselSelectItem struct { // Description: Optional. The body text of the card. Description string `json:"description,omitempty"` // Image: Optional. The image to display. - Image *IntentMessageImage `json:"image,omitempty"` + Image *GoogleCloudDialogflowV2beta1IntentMessageImage `json:"image,omitempty"` // Info: Required. Additional info about the option item. - Info *IntentMessageSelectItemInfo `json:"info,omitempty"` + Info *GoogleCloudDialogflowV2beta1IntentMessageSelectItemInfo `json:"info,omitempty"` // Title: Required. Title of the carousel item. Title string `json:"title,omitempty"` @@ -1788,14 +3503,15 @@ type IntentMessageCarouselSelectItem struct { NullFields []string `json:"-"` } -func (s *IntentMessageCarouselSelectItem) MarshalJSON() ([]byte, error) { - type NoMethod IntentMessageCarouselSelectItem +func (s *GoogleCloudDialogflowV2beta1IntentMessageCarouselSelectItem) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2beta1IntentMessageCarouselSelectItem raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -// IntentMessageImage: The image response message. -type IntentMessageImage struct { +// GoogleCloudDialogflowV2beta1IntentMessageImage: The image response +// message. +type GoogleCloudDialogflowV2beta1IntentMessageImage struct { // AccessibilityText: Optional. A text description of the image to be // used for accessibility, // e.g., screen readers. @@ -1822,16 +3538,17 @@ type IntentMessageImage struct { NullFields []string `json:"-"` } -func (s *IntentMessageImage) MarshalJSON() ([]byte, error) { - type NoMethod IntentMessageImage +func (s *GoogleCloudDialogflowV2beta1IntentMessageImage) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2beta1IntentMessageImage raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -// IntentMessageLinkOutSuggestion: The suggestion chip message that -// allows the user to jump out to the app +// GoogleCloudDialogflowV2beta1IntentMessageLinkOutSuggestion: The +// suggestion chip message that allows the user to jump out to the +// app // or website associated with this agent. -type IntentMessageLinkOutSuggestion struct { +type GoogleCloudDialogflowV2beta1IntentMessageLinkOutSuggestion struct { // DestinationName: Required. The name of the app or site this chip is // linking to. DestinationName string `json:"destinationName,omitempty"` @@ -1859,17 +3576,17 @@ type IntentMessageLinkOutSuggestion struct { NullFields []string `json:"-"` } -func (s *IntentMessageLinkOutSuggestion) MarshalJSON() ([]byte, error) { - type NoMethod IntentMessageLinkOutSuggestion +func (s *GoogleCloudDialogflowV2beta1IntentMessageLinkOutSuggestion) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2beta1IntentMessageLinkOutSuggestion raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -// IntentMessageListSelect: The card for presenting a list of options to -// select from. -type IntentMessageListSelect struct { +// GoogleCloudDialogflowV2beta1IntentMessageListSelect: The card for +// presenting a list of options to select from. +type GoogleCloudDialogflowV2beta1IntentMessageListSelect struct { // Items: Required. List items. - Items []*IntentMessageListSelectItem `json:"items,omitempty"` + Items []*GoogleCloudDialogflowV2beta1IntentMessageListSelectItem `json:"items,omitempty"` // Title: Optional. The overall title of the list. Title string `json:"title,omitempty"` @@ -1891,22 +3608,23 @@ type IntentMessageListSelect struct { NullFields []string `json:"-"` } -func (s *IntentMessageListSelect) MarshalJSON() ([]byte, error) { - type NoMethod IntentMessageListSelect +func (s *GoogleCloudDialogflowV2beta1IntentMessageListSelect) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2beta1IntentMessageListSelect raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -// IntentMessageListSelectItem: An item in the list. -type IntentMessageListSelectItem struct { +// GoogleCloudDialogflowV2beta1IntentMessageListSelectItem: An item in +// the list. +type GoogleCloudDialogflowV2beta1IntentMessageListSelectItem struct { // Description: Optional. The main text describing the item. Description string `json:"description,omitempty"` // Image: Optional. The image to display. - Image *IntentMessageImage `json:"image,omitempty"` + Image *GoogleCloudDialogflowV2beta1IntentMessageImage `json:"image,omitempty"` // Info: Required. Additional information about this option. - Info *IntentMessageSelectItemInfo `json:"info,omitempty"` + Info *GoogleCloudDialogflowV2beta1IntentMessageSelectItemInfo `json:"info,omitempty"` // Title: Required. The title of the list item. Title string `json:"title,omitempty"` @@ -1928,14 +3646,15 @@ type IntentMessageListSelectItem struct { NullFields []string `json:"-"` } -func (s *IntentMessageListSelectItem) MarshalJSON() ([]byte, error) { - type NoMethod IntentMessageListSelectItem +func (s *GoogleCloudDialogflowV2beta1IntentMessageListSelectItem) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2beta1IntentMessageListSelectItem raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -// IntentMessageQuickReplies: The quick replies response message. -type IntentMessageQuickReplies struct { +// GoogleCloudDialogflowV2beta1IntentMessageQuickReplies: The quick +// replies response message. +type GoogleCloudDialogflowV2beta1IntentMessageQuickReplies struct { // QuickReplies: Optional. The collection of quick replies. QuickReplies []string `json:"quickReplies,omitempty"` @@ -1959,16 +3678,16 @@ type IntentMessageQuickReplies struct { NullFields []string `json:"-"` } -func (s *IntentMessageQuickReplies) MarshalJSON() ([]byte, error) { - type NoMethod IntentMessageQuickReplies +func (s *GoogleCloudDialogflowV2beta1IntentMessageQuickReplies) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2beta1IntentMessageQuickReplies raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -// IntentMessageSelectItemInfo: Additional info about the select item -// for when it is triggered in a +// GoogleCloudDialogflowV2beta1IntentMessageSelectItemInfo: Additional +// info about the select item for when it is triggered in a // dialog. -type IntentMessageSelectItemInfo struct { +type GoogleCloudDialogflowV2beta1IntentMessageSelectItemInfo struct { // Key: Required. A unique key that will be sent back to the agent if // this // response is given. @@ -1996,15 +3715,15 @@ type IntentMessageSelectItemInfo struct { NullFields []string `json:"-"` } -func (s *IntentMessageSelectItemInfo) MarshalJSON() ([]byte, error) { - type NoMethod IntentMessageSelectItemInfo +func (s *GoogleCloudDialogflowV2beta1IntentMessageSelectItemInfo) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2beta1IntentMessageSelectItemInfo raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -// IntentMessageSimpleResponse: The simple response message containing -// speech or text. -type IntentMessageSimpleResponse struct { +// GoogleCloudDialogflowV2beta1IntentMessageSimpleResponse: The simple +// response message containing speech or text. +type GoogleCloudDialogflowV2beta1IntentMessageSimpleResponse struct { // DisplayText: Optional. The text to display. DisplayText string `json:"displayText,omitempty"` @@ -2037,22 +3756,22 @@ type IntentMessageSimpleResponse struct { NullFields []string `json:"-"` } -func (s *IntentMessageSimpleResponse) MarshalJSON() ([]byte, error) { - type NoMethod IntentMessageSimpleResponse +func (s *GoogleCloudDialogflowV2beta1IntentMessageSimpleResponse) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2beta1IntentMessageSimpleResponse raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -// IntentMessageSimpleResponses: The collection of simple response -// candidates. +// GoogleCloudDialogflowV2beta1IntentMessageSimpleResponses: The +// collection of simple response candidates. // This message in `QueryResult.fulfillment_messages` // and // `WebhookResponse.fulfillment_messages` should contain only // one // `SimpleResponse`. -type IntentMessageSimpleResponses struct { +type GoogleCloudDialogflowV2beta1IntentMessageSimpleResponses struct { // SimpleResponses: Required. The list of simple responses. - SimpleResponses []*IntentMessageSimpleResponse `json:"simpleResponses,omitempty"` + SimpleResponses []*GoogleCloudDialogflowV2beta1IntentMessageSimpleResponse `json:"simpleResponses,omitempty"` // ForceSendFields is a list of field names (e.g. "SimpleResponses") to // unconditionally include in API requests. By default, fields with @@ -2072,16 +3791,16 @@ type IntentMessageSimpleResponses struct { NullFields []string `json:"-"` } -func (s *IntentMessageSimpleResponses) MarshalJSON() ([]byte, error) { - type NoMethod IntentMessageSimpleResponses +func (s *GoogleCloudDialogflowV2beta1IntentMessageSimpleResponses) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2beta1IntentMessageSimpleResponses raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -// IntentMessageSuggestion: The suggestion chip message that the user -// can tap to quickly post a reply +// GoogleCloudDialogflowV2beta1IntentMessageSuggestion: The suggestion +// chip message that the user can tap to quickly post a reply // to the conversation. -type IntentMessageSuggestion struct { +type GoogleCloudDialogflowV2beta1IntentMessageSuggestion struct { // Title: Required. The text shown the in the suggestion chip. Title string `json:"title,omitempty"` @@ -2102,16 +3821,17 @@ type IntentMessageSuggestion struct { NullFields []string `json:"-"` } -func (s *IntentMessageSuggestion) MarshalJSON() ([]byte, error) { - type NoMethod IntentMessageSuggestion +func (s *GoogleCloudDialogflowV2beta1IntentMessageSuggestion) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2beta1IntentMessageSuggestion raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -// IntentMessageSuggestions: The collection of suggestions. -type IntentMessageSuggestions struct { +// GoogleCloudDialogflowV2beta1IntentMessageSuggestions: The collection +// of suggestions. +type GoogleCloudDialogflowV2beta1IntentMessageSuggestions struct { // Suggestions: Required. The list of suggested replies. - Suggestions []*IntentMessageSuggestion `json:"suggestions,omitempty"` + Suggestions []*GoogleCloudDialogflowV2beta1IntentMessageSuggestion `json:"suggestions,omitempty"` // ForceSendFields is a list of field names (e.g. "Suggestions") to // unconditionally include in API requests. By default, fields with @@ -2130,14 +3850,15 @@ type IntentMessageSuggestions struct { NullFields []string `json:"-"` } -func (s *IntentMessageSuggestions) MarshalJSON() ([]byte, error) { - type NoMethod IntentMessageSuggestions +func (s *GoogleCloudDialogflowV2beta1IntentMessageSuggestions) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2beta1IntentMessageSuggestions raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -// IntentMessageText: The text response message. -type IntentMessageText struct { +// GoogleCloudDialogflowV2beta1IntentMessageText: The text response +// message. +type GoogleCloudDialogflowV2beta1IntentMessageText struct { // Text: Optional. The collection of the agent's responses. Text []string `json:"text,omitempty"` @@ -2158,14 +3879,15 @@ type IntentMessageText struct { NullFields []string `json:"-"` } -func (s *IntentMessageText) MarshalJSON() ([]byte, error) { - type NoMethod IntentMessageText +func (s *GoogleCloudDialogflowV2beta1IntentMessageText) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2beta1IntentMessageText raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -// IntentParameter: Represents intent parameters. -type IntentParameter struct { +// GoogleCloudDialogflowV2beta1IntentParameter: Represents intent +// parameters. +type GoogleCloudDialogflowV2beta1IntentParameter struct { // DefaultValue: Optional. The default value to use when the `value` // yields an empty // result. @@ -2228,15 +3950,15 @@ type IntentParameter struct { NullFields []string `json:"-"` } -func (s *IntentParameter) MarshalJSON() ([]byte, error) { - type NoMethod IntentParameter +func (s *GoogleCloudDialogflowV2beta1IntentParameter) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2beta1IntentParameter raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -// IntentTrainingPhrase: Represents an example or template that the -// agent is trained on. -type IntentTrainingPhrase struct { +// GoogleCloudDialogflowV2beta1IntentTrainingPhrase: Represents an +// example or template that the agent is trained on. +type GoogleCloudDialogflowV2beta1IntentTrainingPhrase struct { // Name: Required. The unique identifier of this training phrase. Name string `json:"name,omitempty"` @@ -2245,7 +3967,7 @@ type IntentTrainingPhrase struct { // Fields: `entity_type`, `alias` and `user_defined` should be // populated // only for the annotated parts of the training phrase. - Parts []*IntentTrainingPhrasePart `json:"parts,omitempty"` + Parts []*GoogleCloudDialogflowV2beta1IntentTrainingPhrasePart `json:"parts,omitempty"` // TimesAddedCount: Optional. Indicates how many times this example or // template was added to @@ -2284,14 +4006,15 @@ type IntentTrainingPhrase struct { NullFields []string `json:"-"` } -func (s *IntentTrainingPhrase) MarshalJSON() ([]byte, error) { - type NoMethod IntentTrainingPhrase +func (s *GoogleCloudDialogflowV2beta1IntentTrainingPhrase) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2beta1IntentTrainingPhrase raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -// IntentTrainingPhrasePart: Represents a part of a training phrase. -type IntentTrainingPhrasePart struct { +// GoogleCloudDialogflowV2beta1IntentTrainingPhrasePart: Represents a +// part of a training phrase. +type GoogleCloudDialogflowV2beta1IntentTrainingPhrasePart struct { // Alias: Optional. The parameter name for the value extracted from // the // annotated part of the example. @@ -2331,75 +4054,19 @@ type IntentTrainingPhrasePart struct { NullFields []string `json:"-"` } -func (s *IntentTrainingPhrasePart) MarshalJSON() ([]byte, error) { - type NoMethod IntentTrainingPhrasePart +func (s *GoogleCloudDialogflowV2beta1IntentTrainingPhrasePart) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2beta1IntentTrainingPhrasePart raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -// LatLng: An object representing a latitude/longitude pair. This is -// expressed as a pair -// of doubles representing degrees latitude and degrees longitude. -// Unless -// specified otherwise, this must conform to the -// WGS84 -// st -// andard. Values must be within normalized ranges. -type LatLng struct { - // Latitude: The latitude in degrees. It must be in the range [-90.0, - // +90.0]. - Latitude float64 `json:"latitude,omitempty"` - - // Longitude: The longitude in degrees. It must be in the range [-180.0, - // +180.0]. - Longitude float64 `json:"longitude,omitempty"` - - // ForceSendFields is a list of field names (e.g. "Latitude") to - // unconditionally include in API requests. By default, fields with - // empty values are omitted from API requests. However, any non-pointer, - // non-interface field appearing in ForceSendFields will be sent to the - // server regardless of whether the field is empty or not. This may be - // used to include empty fields in Patch requests. - ForceSendFields []string `json:"-"` - - // NullFields is a list of field names (e.g. "Latitude") to include in - // API requests with the JSON null value. By default, fields with empty - // values are omitted from API requests. However, any field with an - // empty value appearing in NullFields will be sent to the server as - // null. It is an error if a field in this list has a non-empty value. - // This may be used to include null fields in Patch requests. - NullFields []string `json:"-"` -} - -func (s *LatLng) MarshalJSON() ([]byte, error) { - type NoMethod LatLng - raw := NoMethod(*s) - return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) -} - -func (s *LatLng) UnmarshalJSON(data []byte) error { - type NoMethod LatLng - var s1 struct { - Latitude gensupport.JSONFloat64 `json:"latitude"` - Longitude gensupport.JSONFloat64 `json:"longitude"` - *NoMethod - } - s1.NoMethod = (*NoMethod)(s) - if err := json.Unmarshal(data, &s1); err != nil { - return err - } - s.Latitude = float64(s1.Latitude) - s.Longitude = float64(s1.Longitude) - return nil -} - -// ListContextsResponse: The response message for Contexts.ListContexts. -type ListContextsResponse struct { +// GoogleCloudDialogflowV2beta1ListContextsResponse: The response +// message for Contexts.ListContexts. +type GoogleCloudDialogflowV2beta1ListContextsResponse struct { // Contexts: The list of contexts. There will be a maximum number of // items // returned based on the page_size field in the request. - Contexts []*Context `json:"contexts,omitempty"` + Contexts []*GoogleCloudDialogflowV2beta1Context `json:"contexts,omitempty"` // NextPageToken: Token to retrieve the next page of results, or empty // if there are no @@ -2427,19 +4094,19 @@ type ListContextsResponse struct { NullFields []string `json:"-"` } -func (s *ListContextsResponse) MarshalJSON() ([]byte, error) { - type NoMethod ListContextsResponse +func (s *GoogleCloudDialogflowV2beta1ListContextsResponse) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2beta1ListContextsResponse raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -// ListEntityTypesResponse: The response message for -// EntityTypes.ListEntityTypes. -type ListEntityTypesResponse struct { +// GoogleCloudDialogflowV2beta1ListEntityTypesResponse: The response +// message for EntityTypes.ListEntityTypes. +type GoogleCloudDialogflowV2beta1ListEntityTypesResponse struct { // EntityTypes: The list of agent entity types. There will be a maximum // number of items // returned based on the page_size field in the request. - EntityTypes []*EntityType `json:"entityTypes,omitempty"` + EntityTypes []*GoogleCloudDialogflowV2beta1EntityType `json:"entityTypes,omitempty"` // NextPageToken: Token to retrieve the next page of results, or empty // if there are no @@ -2467,18 +4134,19 @@ type ListEntityTypesResponse struct { NullFields []string `json:"-"` } -func (s *ListEntityTypesResponse) MarshalJSON() ([]byte, error) { - type NoMethod ListEntityTypesResponse +func (s *GoogleCloudDialogflowV2beta1ListEntityTypesResponse) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2beta1ListEntityTypesResponse raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -// ListIntentsResponse: The response message for Intents.ListIntents. -type ListIntentsResponse struct { +// GoogleCloudDialogflowV2beta1ListIntentsResponse: The response message +// for Intents.ListIntents. +type GoogleCloudDialogflowV2beta1ListIntentsResponse struct { // Intents: The list of agent intents. There will be a maximum number of // items // returned based on the page_size field in the request. - Intents []*Intent `json:"intents,omitempty"` + Intents []*GoogleCloudDialogflowV2beta1Intent `json:"intents,omitempty"` // NextPageToken: Token to retrieve the next page of results, or empty // if there are no @@ -2506,15 +4174,15 @@ type ListIntentsResponse struct { NullFields []string `json:"-"` } -func (s *ListIntentsResponse) MarshalJSON() ([]byte, error) { - type NoMethod ListIntentsResponse +func (s *GoogleCloudDialogflowV2beta1ListIntentsResponse) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2beta1ListIntentsResponse raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -// ListSessionEntityTypesResponse: The response message for -// SessionEntityTypes.ListSessionEntityTypes. -type ListSessionEntityTypesResponse struct { +// GoogleCloudDialogflowV2beta1ListSessionEntityTypesResponse: The +// response message for SessionEntityTypes.ListSessionEntityTypes. +type GoogleCloudDialogflowV2beta1ListSessionEntityTypesResponse struct { // NextPageToken: Token to retrieve the next page of results, or empty // if there are no // more results in the list. @@ -2523,7 +4191,7 @@ type ListSessionEntityTypesResponse struct { // SessionEntityTypes: The list of session entity types. There will be a // maximum number of items // returned based on the page_size field in the request. - SessionEntityTypes []*SessionEntityType `json:"sessionEntityTypes,omitempty"` + SessionEntityTypes []*GoogleCloudDialogflowV2beta1SessionEntityType `json:"sessionEntityTypes,omitempty"` // ServerResponse contains the HTTP response code and headers from the // server. @@ -2546,91 +4214,16 @@ type ListSessionEntityTypesResponse struct { NullFields []string `json:"-"` } -func (s *ListSessionEntityTypesResponse) MarshalJSON() ([]byte, error) { - type NoMethod ListSessionEntityTypesResponse +func (s *GoogleCloudDialogflowV2beta1ListSessionEntityTypesResponse) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2beta1ListSessionEntityTypesResponse raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -// Operation: This resource represents a long-running operation that is -// the result of a -// network API call. -type Operation struct { - // Done: If the value is `false`, it means the operation is still in - // progress. - // If `true`, the operation is completed, and either `error` or - // `response` is - // available. - Done bool `json:"done,omitempty"` - - // Error: The error result of the operation in case of failure or - // cancellation. - Error *Status `json:"error,omitempty"` - - // Metadata: Service-specific metadata associated with the operation. - // It typically - // contains progress information and common metadata such as create - // time. - // Some services might not provide such metadata. Any method that - // returns a - // long-running operation should document the metadata type, if any. - Metadata googleapi.RawMessage `json:"metadata,omitempty"` - - // Name: The server-assigned name, which is only unique within the same - // service that - // originally returns it. If you use the default HTTP mapping, - // the - // `name` should have the format of `operations/some/unique/name`. - Name string `json:"name,omitempty"` - - // Response: The normal response of the operation in case of success. - // If the original - // method returns no data on success, such as `Delete`, the response - // is - // `google.protobuf.Empty`. If the original method is - // standard - // `Get`/`Create`/`Update`, the response should be the resource. For - // other - // methods, the response should have the type `XxxResponse`, where - // `Xxx` - // is the original method name. For example, if the original method - // name - // is `TakeSnapshot()`, the inferred response type - // is - // `TakeSnapshotResponse`. - Response googleapi.RawMessage `json:"response,omitempty"` - - // ServerResponse contains the HTTP response code and headers from the - // server. - googleapi.ServerResponse `json:"-"` - - // ForceSendFields is a list of field names (e.g. "Done") to - // unconditionally include in API requests. By default, fields with - // empty values are omitted from API requests. However, any non-pointer, - // non-interface field appearing in ForceSendFields will be sent to the - // server regardless of whether the field is empty or not. This may be - // used to include empty fields in Patch requests. - ForceSendFields []string `json:"-"` - - // NullFields is a list of field names (e.g. "Done") to include in API - // requests with the JSON null value. By default, fields with empty - // values are omitted from API requests. However, any field with an - // empty value appearing in NullFields will be sent to the server as - // null. It is an error if a field in this list has a non-empty value. - // This may be used to include null fields in Patch requests. - NullFields []string `json:"-"` -} - -func (s *Operation) MarshalJSON() ([]byte, error) { - type NoMethod Operation - raw := NoMethod(*s) - return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) -} - -// OriginalDetectIntentRequest: Represents the contents of the original -// request that was passed to +// GoogleCloudDialogflowV2beta1OriginalDetectIntentRequest: Represents +// the contents of the original request that was passed to // the `[Streaming]DetectIntent` call. -type OriginalDetectIntentRequest struct { +type GoogleCloudDialogflowV2beta1OriginalDetectIntentRequest struct { // Payload: Optional. This field is set to the value of // `QueryParameters.payload` field // passed in the request. @@ -2660,13 +4253,14 @@ type OriginalDetectIntentRequest struct { NullFields []string `json:"-"` } -func (s *OriginalDetectIntentRequest) MarshalJSON() ([]byte, error) { - type NoMethod OriginalDetectIntentRequest +func (s *GoogleCloudDialogflowV2beta1OriginalDetectIntentRequest) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2beta1OriginalDetectIntentRequest raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -// QueryInput: Represents the query input. It can contain either: +// GoogleCloudDialogflowV2beta1QueryInput: Represents the query input. +// It can contain either: // // 1. An audio config which // instructs the speech recognizer how to process the speech @@ -2675,16 +4269,16 @@ func (s *OriginalDetectIntentRequest) MarshalJSON() ([]byte, error) { // 2. A conversational query in the form of text,. // // 3. An event that specifies which intent to trigger. -type QueryInput struct { +type GoogleCloudDialogflowV2beta1QueryInput struct { // AudioConfig: Instructs the speech recognizer how to process the // speech audio. - AudioConfig *InputAudioConfig `json:"audioConfig,omitempty"` + AudioConfig *GoogleCloudDialogflowV2beta1InputAudioConfig `json:"audioConfig,omitempty"` // Event: The event to be processed. - Event *EventInput `json:"event,omitempty"` + Event *GoogleCloudDialogflowV2beta1EventInput `json:"event,omitempty"` // Text: The natural language text to be processed. - Text *TextInput `json:"text,omitempty"` + Text *GoogleCloudDialogflowV2beta1TextInput `json:"text,omitempty"` // ForceSendFields is a list of field names (e.g. "AudioConfig") to // unconditionally include in API requests. By default, fields with @@ -2703,22 +4297,22 @@ type QueryInput struct { NullFields []string `json:"-"` } -func (s *QueryInput) MarshalJSON() ([]byte, error) { - type NoMethod QueryInput +func (s *GoogleCloudDialogflowV2beta1QueryInput) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2beta1QueryInput raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -// QueryParameters: Represents the parameters of the conversational -// query. -type QueryParameters struct { +// GoogleCloudDialogflowV2beta1QueryParameters: Represents the +// parameters of the conversational query. +type GoogleCloudDialogflowV2beta1QueryParameters struct { // Contexts: Optional. The collection of contexts to be activated before // this query is // executed. - Contexts []*Context `json:"contexts,omitempty"` + Contexts []*GoogleCloudDialogflowV2beta1Context `json:"contexts,omitempty"` // GeoLocation: Optional. The geo location of this conversational query. - GeoLocation *LatLng `json:"geoLocation,omitempty"` + GeoLocation *GoogleTypeLatLng `json:"geoLocation,omitempty"` // Payload: Optional. This field can be used to pass custom data into // the webhook @@ -2735,7 +4329,7 @@ type QueryParameters struct { // developer entities with for this query only. The entity synonyms // apply // to all languages. - SessionEntityTypes []*SessionEntityType `json:"sessionEntityTypes,omitempty"` + SessionEntityTypes []*GoogleCloudDialogflowV2beta1SessionEntityType `json:"sessionEntityTypes,omitempty"` // TimeZone: Optional. The time zone of this conversational query from // the @@ -2763,15 +4357,15 @@ type QueryParameters struct { NullFields []string `json:"-"` } -func (s *QueryParameters) MarshalJSON() ([]byte, error) { - type NoMethod QueryParameters +func (s *GoogleCloudDialogflowV2beta1QueryParameters) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2beta1QueryParameters raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -// QueryResult: Represents the result of conversational query or event -// processing. -type QueryResult struct { +// GoogleCloudDialogflowV2beta1QueryResult: Represents the result of +// conversational query or event processing. +type GoogleCloudDialogflowV2beta1QueryResult struct { // Action: The action name from the matched intent. Action string `json:"action,omitempty"` @@ -2791,7 +4385,7 @@ type QueryResult struct { // FulfillmentMessages: The collection of rich messages to present to // the user. - FulfillmentMessages []*IntentMessage `json:"fulfillmentMessages,omitempty"` + FulfillmentMessages []*GoogleCloudDialogflowV2beta1IntentMessage `json:"fulfillmentMessages,omitempty"` // FulfillmentText: The text to be pronounced to the user or shown on // the screen. @@ -2802,7 +4396,7 @@ type QueryResult struct { // all fields are filled in this message, including but not limited // to: // `name`, `display_name` and `webhook_state`. - Intent *Intent `json:"intent,omitempty"` + Intent *GoogleCloudDialogflowV2beta1Intent `json:"intent,omitempty"` // IntentDetectionConfidence: The intent detection confidence. Values // range from 0.0 @@ -2822,7 +4416,7 @@ type QueryResult struct { // `.original` containing the original parameter // values // before the query. - OutputContexts []*Context `json:"outputContexts,omitempty"` + OutputContexts []*GoogleCloudDialogflowV2beta1Context `json:"outputContexts,omitempty"` // Parameters: The collection of extracted parameters. Parameters googleapi.RawMessage `json:"parameters,omitempty"` @@ -2883,14 +4477,14 @@ type QueryResult struct { NullFields []string `json:"-"` } -func (s *QueryResult) MarshalJSON() ([]byte, error) { - type NoMethod QueryResult +func (s *GoogleCloudDialogflowV2beta1QueryResult) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2beta1QueryResult raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -func (s *QueryResult) UnmarshalJSON(data []byte) error { - type NoMethod QueryResult +func (s *GoogleCloudDialogflowV2beta1QueryResult) UnmarshalJSON(data []byte) error { + type NoMethod GoogleCloudDialogflowV2beta1QueryResult var s1 struct { IntentDetectionConfidence gensupport.JSONFloat64 `json:"intentDetectionConfidence"` SpeechRecognitionConfidence gensupport.JSONFloat64 `json:"speechRecognitionConfidence"` @@ -2905,8 +4499,9 @@ func (s *QueryResult) UnmarshalJSON(data []byte) error { return nil } -// RestoreAgentRequest: The request message for Agents.RestoreAgent. -type RestoreAgentRequest struct { +// GoogleCloudDialogflowV2beta1RestoreAgentRequest: The request message +// for Agents.RestoreAgent. +type GoogleCloudDialogflowV2beta1RestoreAgentRequest struct { // AgentContent: The agent to restore. // // Example for how to restore an agent via the command line: @@ -2925,12 +4520,8 @@ type RestoreAgentRequest struct { // }" \ AgentContent string `json:"agentContent,omitempty"` - // AgentUri: Warning: Restoring agents from a URI is not implemented - // yet. - // This feature is coming soon. - // - // The URI to a Google Cloud Storage file containing the agent to - // restore. + // AgentUri: The URI to a Google Cloud Storage file containing the agent + // to restore. // Note: The URI must start with "gs://". AgentUri string `json:"agentUri,omitempty"` @@ -2951,18 +4542,19 @@ type RestoreAgentRequest struct { NullFields []string `json:"-"` } -func (s *RestoreAgentRequest) MarshalJSON() ([]byte, error) { - type NoMethod RestoreAgentRequest +func (s *GoogleCloudDialogflowV2beta1RestoreAgentRequest) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2beta1RestoreAgentRequest raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -// SearchAgentsResponse: The response message for Agents.SearchAgents. -type SearchAgentsResponse struct { +// GoogleCloudDialogflowV2beta1SearchAgentsResponse: The response +// message for Agents.SearchAgents. +type GoogleCloudDialogflowV2beta1SearchAgentsResponse struct { // Agents: The list of agents. There will be a maximum number of items // returned based // on the page_size field in the request. - Agents []*Agent `json:"agents,omitempty"` + Agents []*GoogleCloudDialogflowV2beta1Agent `json:"agents,omitempty"` // NextPageToken: Token to retrieve the next page of results, or empty // if there are no @@ -2990,13 +4582,14 @@ type SearchAgentsResponse struct { NullFields []string `json:"-"` } -func (s *SearchAgentsResponse) MarshalJSON() ([]byte, error) { - type NoMethod SearchAgentsResponse +func (s *GoogleCloudDialogflowV2beta1SearchAgentsResponse) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2beta1SearchAgentsResponse raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -// SessionEntityType: Represents a session entity type. +// GoogleCloudDialogflowV2beta1SessionEntityType: Represents a session +// entity type. // // Extends or replaces a developer entity type at the user session level // (we @@ -3006,11 +4599,11 @@ func (s *SearchAgentsResponse) MarshalJSON() ([]byte, error) { // // Note: session entity types apply to all queries, regardless of the // language. -type SessionEntityType struct { +type GoogleCloudDialogflowV2beta1SessionEntityType struct { // Entities: Required. The collection of entities associated with this // session entity // type. - Entities []*EntityTypeEntity `json:"entities,omitempty"` + Entities []*GoogleCloudDialogflowV2beta1EntityTypeEntity `json:"entities,omitempty"` // EntityOverrideMode: Required. Indicates whether the additional data // should override or @@ -3038,7 +4631,17 @@ type SessionEntityType struct { // Format: // `projects//agent/sessions//entityTypes/`. + // Display Name>`, or + // `projects//agent/environments//users//sessions + // //entityTypes/`. + // Note: Environments and users are under construction and will be + // available + // soon. If is not specified, we assume default + // 'draft' + // environment. If is not specified, we assume default '-' + // user. Name string `json:"name,omitempty"` // ServerResponse contains the HTTP response code and headers from the @@ -3062,14 +4665,256 @@ type SessionEntityType struct { NullFields []string `json:"-"` } -func (s *SessionEntityType) MarshalJSON() ([]byte, error) { - type NoMethod SessionEntityType +func (s *GoogleCloudDialogflowV2beta1SessionEntityType) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2beta1SessionEntityType raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -// Status: The `Status` type defines a logical error model that is -// suitable for different +// GoogleCloudDialogflowV2beta1TextInput: Represents the natural +// language text to be processed. +type GoogleCloudDialogflowV2beta1TextInput struct { + // LanguageCode: Required. The language of this conversational query. + // See [Language + // Support](https://dialogflow.com/docs/languages) for a list of + // the + // currently supported language codes. Note that queries in the same + // session + // do not necessarily need to specify the same language. + LanguageCode string `json:"languageCode,omitempty"` + + // Text: Required. The UTF-8 encoded natural language text to be + // processed. + // Text length must not exceed 256 bytes. + Text string `json:"text,omitempty"` + + // ForceSendFields is a list of field names (e.g. "LanguageCode") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "LanguageCode") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDialogflowV2beta1TextInput) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2beta1TextInput + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDialogflowV2beta1TrainAgentRequest: The request message +// for Agents.TrainAgent. +type GoogleCloudDialogflowV2beta1TrainAgentRequest struct { +} + +// GoogleCloudDialogflowV2beta1WebhookRequest: The request message for a +// webhook call. +type GoogleCloudDialogflowV2beta1WebhookRequest struct { + // OriginalDetectIntentRequest: Optional. The contents of the original + // request that was passed to + // `[Streaming]DetectIntent` call. + OriginalDetectIntentRequest *GoogleCloudDialogflowV2beta1OriginalDetectIntentRequest `json:"originalDetectIntentRequest,omitempty"` + + // QueryResult: The result of the conversational query or event + // processing. Contains the + // same value as `[Streaming]DetectIntentResponse.query_result`. + QueryResult *GoogleCloudDialogflowV2beta1QueryResult `json:"queryResult,omitempty"` + + // ResponseId: The unique identifier of the response. Contains the same + // value as + // `[Streaming]DetectIntentResponse.response_id`. + ResponseId string `json:"responseId,omitempty"` + + // Session: The unique identifier of detectIntent request session. + // Can be used to identify end-user inside webhook + // implementation. + // Format: `projects//agent/sessions/`. + Session string `json:"session,omitempty"` + + // ForceSendFields is a list of field names (e.g. + // "OriginalDetectIntentRequest") to unconditionally include in API + // requests. By default, fields with empty values are omitted from API + // requests. However, any non-pointer, non-interface field appearing in + // ForceSendFields will be sent to the server regardless of whether the + // field is empty or not. This may be used to include empty fields in + // Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. + // "OriginalDetectIntentRequest") to include in API requests with the + // JSON null value. By default, fields with empty values are omitted + // from API requests. However, any field with an empty value appearing + // in NullFields will be sent to the server as null. It is an error if a + // field in this list has a non-empty value. This may be used to include + // null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDialogflowV2beta1WebhookRequest) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2beta1WebhookRequest + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDialogflowV2beta1WebhookResponse: The response message for +// a webhook call. +type GoogleCloudDialogflowV2beta1WebhookResponse struct { + // FollowupEventInput: Optional. Makes the platform immediately invoke + // another `DetectIntent` call + // internally with the specified event as input. + FollowupEventInput *GoogleCloudDialogflowV2beta1EventInput `json:"followupEventInput,omitempty"` + + // FulfillmentMessages: Optional. The collection of rich messages to + // present to the user. This + // value is passed directly to `QueryResult.fulfillment_messages`. + FulfillmentMessages []*GoogleCloudDialogflowV2beta1IntentMessage `json:"fulfillmentMessages,omitempty"` + + // FulfillmentText: Optional. The text to be shown on the screen. This + // value is passed directly + // to `QueryResult.fulfillment_text`. + FulfillmentText string `json:"fulfillmentText,omitempty"` + + // OutputContexts: Optional. The collection of output contexts. This + // value is passed directly + // to `QueryResult.output_contexts`. + OutputContexts []*GoogleCloudDialogflowV2beta1Context `json:"outputContexts,omitempty"` + + // Payload: Optional. This value is passed directly to + // `QueryResult.webhook_payload`. + Payload googleapi.RawMessage `json:"payload,omitempty"` + + // Source: Optional. This value is passed directly to + // `QueryResult.webhook_source`. + Source string `json:"source,omitempty"` + + // ForceSendFields is a list of field names (e.g. "FollowupEventInput") + // to unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "FollowupEventInput") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDialogflowV2beta1WebhookResponse) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDialogflowV2beta1WebhookResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleLongrunningOperation: This resource represents a long-running +// operation that is the result of a +// network API call. +type GoogleLongrunningOperation struct { + // Done: If the value is `false`, it means the operation is still in + // progress. + // If `true`, the operation is completed, and either `error` or + // `response` is + // available. + Done bool `json:"done,omitempty"` + + // Error: The error result of the operation in case of failure or + // cancellation. + Error *GoogleRpcStatus `json:"error,omitempty"` + + // Metadata: Service-specific metadata associated with the operation. + // It typically + // contains progress information and common metadata such as create + // time. + // Some services might not provide such metadata. Any method that + // returns a + // long-running operation should document the metadata type, if any. + Metadata googleapi.RawMessage `json:"metadata,omitempty"` + + // Name: The server-assigned name, which is only unique within the same + // service that + // originally returns it. If you use the default HTTP mapping, + // the + // `name` should have the format of `operations/some/unique/name`. + Name string `json:"name,omitempty"` + + // Response: The normal response of the operation in case of success. + // If the original + // method returns no data on success, such as `Delete`, the response + // is + // `google.protobuf.Empty`. If the original method is + // standard + // `Get`/`Create`/`Update`, the response should be the resource. For + // other + // methods, the response should have the type `XxxResponse`, where + // `Xxx` + // is the original method name. For example, if the original method + // name + // is `TakeSnapshot()`, the inferred response type + // is + // `TakeSnapshotResponse`. + Response googleapi.RawMessage `json:"response,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "Done") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Done") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleLongrunningOperation) MarshalJSON() ([]byte, error) { + type NoMethod GoogleLongrunningOperation + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleProtobufEmpty: A generic empty message that you can re-use to +// avoid defining duplicated +// empty messages in your APIs. A typical example is to use it as the +// request +// or the response type of an API method. For instance: +// +// service Foo { +// rpc Bar(google.protobuf.Empty) returns +// (google.protobuf.Empty); +// } +// +// The JSON representation for `Empty` is empty JSON object `{}`. +type GoogleProtobufEmpty struct { + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` +} + +// GoogleRpcStatus: The `Status` type defines a logical error model that +// is suitable for different // programming environments, including REST APIs and RPC APIs. It is // used by // [gRPC](https://github.com/grpc). The error model is designed to @@ -3147,7 +4992,7 @@ func (s *SessionEntityType) MarshalJSON() ([]byte, error) { // `Status` could // be used directly after any stripping needed for security/privacy // reasons. -type Status struct { +type GoogleRpcStatus struct { // Code: The status code, which should be an enum value of // google.rpc.Code. Code int64 `json:"code,omitempty"` @@ -3181,29 +5026,31 @@ type Status struct { NullFields []string `json:"-"` } -func (s *Status) MarshalJSON() ([]byte, error) { - type NoMethod Status +func (s *GoogleRpcStatus) MarshalJSON() ([]byte, error) { + type NoMethod GoogleRpcStatus raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -// TextInput: Represents the natural language text to be processed. -type TextInput struct { - // LanguageCode: Required. The language of this conversational query. - // See [Language - // Support](https://dialogflow.com/docs/languages) for a list of - // the - // currently supported language codes. Note that queries in the same - // session - // do not necessarily need to specify the same language. - LanguageCode string `json:"languageCode,omitempty"` +// GoogleTypeLatLng: An object representing a latitude/longitude pair. +// This is expressed as a pair +// of doubles representing degrees latitude and degrees longitude. +// Unless +// specified otherwise, this must conform to the +// WGS84 +// st +// andard. Values must be within normalized ranges. +type GoogleTypeLatLng struct { + // Latitude: The latitude in degrees. It must be in the range [-90.0, + // +90.0]. + Latitude float64 `json:"latitude,omitempty"` - // Text: Required. The UTF-8 encoded natural language text to be - // processed. - // Text length must not exceed 256 bytes. - Text string `json:"text,omitempty"` + // Longitude: The longitude in degrees. It must be in the range [-180.0, + // +180.0]. + Longitude float64 `json:"longitude,omitempty"` - // ForceSendFields is a list of field names (e.g. "LanguageCode") to + // ForceSendFields is a list of field names (e.g. "Latitude") to // unconditionally include in API requests. By default, fields with // empty values are omitted from API requests. However, any non-pointer, // non-interface field appearing in ForceSendFields will be sent to the @@ -3211,125 +5058,35 @@ type TextInput struct { // used to include empty fields in Patch requests. ForceSendFields []string `json:"-"` - // NullFields is a list of field names (e.g. "LanguageCode") to include - // in API requests with the JSON null value. By default, fields with - // empty values are omitted from API requests. However, any field with - // an empty value appearing in NullFields will be sent to the server as + // NullFields is a list of field names (e.g. "Latitude") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as // null. It is an error if a field in this list has a non-empty value. // This may be used to include null fields in Patch requests. NullFields []string `json:"-"` } -func (s *TextInput) MarshalJSON() ([]byte, error) { - type NoMethod TextInput +func (s *GoogleTypeLatLng) MarshalJSON() ([]byte, error) { + type NoMethod GoogleTypeLatLng raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -// TrainAgentRequest: The request message for Agents.TrainAgent. -type TrainAgentRequest struct { -} - -// WebhookRequest: The request message for a webhook call. -type WebhookRequest struct { - // OriginalDetectIntentRequest: Optional. The contents of the original - // request that was passed to - // `[Streaming]DetectIntent` call. - OriginalDetectIntentRequest *OriginalDetectIntentRequest `json:"originalDetectIntentRequest,omitempty"` - - // QueryResult: The result of the conversational query or event - // processing. Contains the - // same value as `[Streaming]DetectIntentResponse.query_result`. - QueryResult *QueryResult `json:"queryResult,omitempty"` - - // ResponseId: The unique identifier of the response. Contains the same - // value as - // `[Streaming]DetectIntentResponse.response_id`. - ResponseId string `json:"responseId,omitempty"` - - // Session: The unique identifier of detectIntent request session. - // Can be used to identify end-user inside webhook - // implementation. - // Format: `projects//agent/sessions/`. - Session string `json:"session,omitempty"` - - // ForceSendFields is a list of field names (e.g. - // "OriginalDetectIntentRequest") to unconditionally include in API - // requests. By default, fields with empty values are omitted from API - // requests. However, any non-pointer, non-interface field appearing in - // ForceSendFields will be sent to the server regardless of whether the - // field is empty or not. This may be used to include empty fields in - // Patch requests. - ForceSendFields []string `json:"-"` - - // NullFields is a list of field names (e.g. - // "OriginalDetectIntentRequest") to include in API requests with the - // JSON null value. By default, fields with empty values are omitted - // from API requests. However, any field with an empty value appearing - // in NullFields will be sent to the server as null. It is an error if a - // field in this list has a non-empty value. This may be used to include - // null fields in Patch requests. - NullFields []string `json:"-"` -} - -func (s *WebhookRequest) MarshalJSON() ([]byte, error) { - type NoMethod WebhookRequest - raw := NoMethod(*s) - return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) -} - -// WebhookResponse: The response message for a webhook call. -type WebhookResponse struct { - // FollowupEventInput: Optional. Makes the platform immediately invoke - // another `DetectIntent` call - // internally with the specified event as input. - FollowupEventInput *EventInput `json:"followupEventInput,omitempty"` - - // FulfillmentMessages: Optional. The collection of rich messages to - // present to the user. This - // value is passed directly to `QueryResult.fulfillment_messages`. - FulfillmentMessages []*IntentMessage `json:"fulfillmentMessages,omitempty"` - - // FulfillmentText: Optional. The text to be shown on the screen. This - // value is passed directly - // to `QueryResult.fulfillment_text`. - FulfillmentText string `json:"fulfillmentText,omitempty"` - - // OutputContexts: Optional. The collection of output contexts. This - // value is passed directly - // to `QueryResult.output_contexts`. - OutputContexts []*Context `json:"outputContexts,omitempty"` - - // Payload: Optional. This value is passed directly to - // `QueryResult.webhook_payload`. - Payload googleapi.RawMessage `json:"payload,omitempty"` - - // Source: Optional. This value is passed directly to - // `QueryResult.webhook_source`. - Source string `json:"source,omitempty"` - - // ForceSendFields is a list of field names (e.g. "FollowupEventInput") - // to unconditionally include in API requests. By default, fields with - // empty values are omitted from API requests. However, any non-pointer, - // non-interface field appearing in ForceSendFields will be sent to the - // server regardless of whether the field is empty or not. This may be - // used to include empty fields in Patch requests. - ForceSendFields []string `json:"-"` - - // NullFields is a list of field names (e.g. "FollowupEventInput") to - // include in API requests with the JSON null value. By default, fields - // with empty values are omitted from API requests. However, any field - // with an empty value appearing in NullFields will be sent to the - // server as null. It is an error if a field in this list has a - // non-empty value. This may be used to include null fields in Patch - // requests. - NullFields []string `json:"-"` -} - -func (s *WebhookResponse) MarshalJSON() ([]byte, error) { - type NoMethod WebhookResponse - raw := NoMethod(*s) - return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +func (s *GoogleTypeLatLng) UnmarshalJSON(data []byte) error { + type NoMethod GoogleTypeLatLng + var s1 struct { + Latitude gensupport.JSONFloat64 `json:"latitude"` + Longitude gensupport.JSONFloat64 `json:"longitude"` + *NoMethod + } + s1.NoMethod = (*NoMethod)(s) + if err := json.Unmarshal(data, &s1); err != nil { + return err + } + s.Latitude = float64(s1.Latitude) + s.Longitude = float64(s1.Longitude) + return nil } // method id "dialogflow.projects.getAgent": @@ -3407,13 +5164,14 @@ func (c *ProjectsGetAgentCall) doRequest(alt string) (*http.Response, error) { } // Do executes the "dialogflow.projects.getAgent" call. -// Exactly one of *Agent or error will be non-nil. Any non-2xx status -// code is an error. Response headers are in either -// *Agent.ServerResponse.Header or (if a response was returned at all) -// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to -// check whether the returned error was because http.StatusNotModified -// was returned. -func (c *ProjectsGetAgentCall) Do(opts ...googleapi.CallOption) (*Agent, error) { +// Exactly one of *GoogleCloudDialogflowV2beta1Agent or error will be +// non-nil. Any non-2xx status code is an error. Response headers are in +// either *GoogleCloudDialogflowV2beta1Agent.ServerResponse.Header or +// (if a response was returned at all) in +// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check +// whether the returned error was because http.StatusNotModified was +// returned. +func (c *ProjectsGetAgentCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowV2beta1Agent, error) { gensupport.SetOptions(c.urlParams_, opts...) res, err := c.doRequest("json") if res != nil && res.StatusCode == http.StatusNotModified { @@ -3432,7 +5190,7 @@ func (c *ProjectsGetAgentCall) Do(opts ...googleapi.CallOption) (*Agent, error) if err := googleapi.CheckResponse(res); err != nil { return nil, err } - ret := &Agent{ + ret := &GoogleCloudDialogflowV2beta1Agent{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, @@ -3462,7 +5220,7 @@ func (c *ProjectsGetAgentCall) Do(opts ...googleapi.CallOption) (*Agent, error) // }, // "path": "v2beta1/{+parent}/agent", // "response": { - // "$ref": "Agent" + // "$ref": "GoogleCloudDialogflowV2beta1Agent" // }, // "scopes": [ // "https://www.googleapis.com/auth/cloud-platform" @@ -3474,12 +5232,12 @@ func (c *ProjectsGetAgentCall) Do(opts ...googleapi.CallOption) (*Agent, error) // method id "dialogflow.projects.agent.export": type ProjectsAgentExportCall struct { - s *Service - parent string - exportagentrequest *ExportAgentRequest - urlParams_ gensupport.URLParams - ctx_ context.Context - header_ http.Header + s *Service + parent string + googleclouddialogflowv2beta1exportagentrequest *GoogleCloudDialogflowV2beta1ExportAgentRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header } // Export: Exports the specified agent to a ZIP file. @@ -3487,10 +5245,10 @@ type ProjectsAgentExportCall struct { // // Operation -func (r *ProjectsAgentService) Export(parent string, exportagentrequest *ExportAgentRequest) *ProjectsAgentExportCall { +func (r *ProjectsAgentService) Export(parent string, googleclouddialogflowv2beta1exportagentrequest *GoogleCloudDialogflowV2beta1ExportAgentRequest) *ProjectsAgentExportCall { c := &ProjectsAgentExportCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.parent = parent - c.exportagentrequest = exportagentrequest + c.googleclouddialogflowv2beta1exportagentrequest = googleclouddialogflowv2beta1exportagentrequest return c } @@ -3526,7 +5284,7 @@ func (c *ProjectsAgentExportCall) doRequest(alt string) (*http.Response, error) } reqHeaders.Set("User-Agent", c.s.userAgent()) var body io.Reader = nil - body, err := googleapi.WithoutDataWrapper.JSONReader(c.exportagentrequest) + body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowv2beta1exportagentrequest) if err != nil { return nil, err } @@ -3543,13 +5301,13 @@ func (c *ProjectsAgentExportCall) doRequest(alt string) (*http.Response, error) } // Do executes the "dialogflow.projects.agent.export" call. -// Exactly one of *Operation or error will be non-nil. Any non-2xx -// status code is an error. Response headers are in either -// *Operation.ServerResponse.Header or (if a response was returned at -// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified -// to check whether the returned error was because -// http.StatusNotModified was returned. -func (c *ProjectsAgentExportCall) Do(opts ...googleapi.CallOption) (*Operation, error) { +// Exactly one of *GoogleLongrunningOperation or error will be non-nil. +// Any non-2xx status code is an error. Response headers are in either +// *GoogleLongrunningOperation.ServerResponse.Header or (if a response +// was returned at all) in error.(*googleapi.Error).Header. Use +// googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *ProjectsAgentExportCall) Do(opts ...googleapi.CallOption) (*GoogleLongrunningOperation, error) { gensupport.SetOptions(c.urlParams_, opts...) res, err := c.doRequest("json") if res != nil && res.StatusCode == http.StatusNotModified { @@ -3568,7 +5326,7 @@ func (c *ProjectsAgentExportCall) Do(opts ...googleapi.CallOption) (*Operation, if err := googleapi.CheckResponse(res); err != nil { return nil, err } - ret := &Operation{ + ret := &GoogleLongrunningOperation{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, @@ -3598,10 +5356,10 @@ func (c *ProjectsAgentExportCall) Do(opts ...googleapi.CallOption) (*Operation, // }, // "path": "v2beta1/{+parent}/agent:export", // "request": { - // "$ref": "ExportAgentRequest" + // "$ref": "GoogleCloudDialogflowV2beta1ExportAgentRequest" // }, // "response": { - // "$ref": "Operation" + // "$ref": "GoogleLongrunningOperation" // }, // "scopes": [ // "https://www.googleapis.com/auth/cloud-platform" @@ -3613,12 +5371,12 @@ func (c *ProjectsAgentExportCall) Do(opts ...googleapi.CallOption) (*Operation, // method id "dialogflow.projects.agent.import": type ProjectsAgentImportCall struct { - s *Service - parent string - importagentrequest *ImportAgentRequest - urlParams_ gensupport.URLParams - ctx_ context.Context - header_ http.Header + s *Service + parent string + googleclouddialogflowv2beta1importagentrequest *GoogleCloudDialogflowV2beta1ImportAgentRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header } // Import: Imports the specified agent from a ZIP file. @@ -3632,10 +5390,10 @@ type ProjectsAgentImportCall struct { // // Operation -func (r *ProjectsAgentService) Import(parent string, importagentrequest *ImportAgentRequest) *ProjectsAgentImportCall { +func (r *ProjectsAgentService) Import(parent string, googleclouddialogflowv2beta1importagentrequest *GoogleCloudDialogflowV2beta1ImportAgentRequest) *ProjectsAgentImportCall { c := &ProjectsAgentImportCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.parent = parent - c.importagentrequest = importagentrequest + c.googleclouddialogflowv2beta1importagentrequest = googleclouddialogflowv2beta1importagentrequest return c } @@ -3671,7 +5429,7 @@ func (c *ProjectsAgentImportCall) doRequest(alt string) (*http.Response, error) } reqHeaders.Set("User-Agent", c.s.userAgent()) var body io.Reader = nil - body, err := googleapi.WithoutDataWrapper.JSONReader(c.importagentrequest) + body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowv2beta1importagentrequest) if err != nil { return nil, err } @@ -3688,13 +5446,13 @@ func (c *ProjectsAgentImportCall) doRequest(alt string) (*http.Response, error) } // Do executes the "dialogflow.projects.agent.import" call. -// Exactly one of *Operation or error will be non-nil. Any non-2xx -// status code is an error. Response headers are in either -// *Operation.ServerResponse.Header or (if a response was returned at -// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified -// to check whether the returned error was because -// http.StatusNotModified was returned. -func (c *ProjectsAgentImportCall) Do(opts ...googleapi.CallOption) (*Operation, error) { +// Exactly one of *GoogleLongrunningOperation or error will be non-nil. +// Any non-2xx status code is an error. Response headers are in either +// *GoogleLongrunningOperation.ServerResponse.Header or (if a response +// was returned at all) in error.(*googleapi.Error).Header. Use +// googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *ProjectsAgentImportCall) Do(opts ...googleapi.CallOption) (*GoogleLongrunningOperation, error) { gensupport.SetOptions(c.urlParams_, opts...) res, err := c.doRequest("json") if res != nil && res.StatusCode == http.StatusNotModified { @@ -3713,7 +5471,7 @@ func (c *ProjectsAgentImportCall) Do(opts ...googleapi.CallOption) (*Operation, if err := googleapi.CheckResponse(res); err != nil { return nil, err } - ret := &Operation{ + ret := &GoogleLongrunningOperation{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, @@ -3743,10 +5501,10 @@ func (c *ProjectsAgentImportCall) Do(opts ...googleapi.CallOption) (*Operation, // }, // "path": "v2beta1/{+parent}/agent:import", // "request": { - // "$ref": "ImportAgentRequest" + // "$ref": "GoogleCloudDialogflowV2beta1ImportAgentRequest" // }, // "response": { - // "$ref": "Operation" + // "$ref": "GoogleLongrunningOperation" // }, // "scopes": [ // "https://www.googleapis.com/auth/cloud-platform" @@ -3758,12 +5516,12 @@ func (c *ProjectsAgentImportCall) Do(opts ...googleapi.CallOption) (*Operation, // method id "dialogflow.projects.agent.restore": type ProjectsAgentRestoreCall struct { - s *Service - parent string - restoreagentrequest *RestoreAgentRequest - urlParams_ gensupport.URLParams - ctx_ context.Context - header_ http.Header + s *Service + parent string + googleclouddialogflowv2beta1restoreagentrequest *GoogleCloudDialogflowV2beta1RestoreAgentRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header } // Restore: Restores the specified agent from a ZIP file. @@ -3775,10 +5533,10 @@ type ProjectsAgentRestoreCall struct { // // Operation -func (r *ProjectsAgentService) Restore(parent string, restoreagentrequest *RestoreAgentRequest) *ProjectsAgentRestoreCall { +func (r *ProjectsAgentService) Restore(parent string, googleclouddialogflowv2beta1restoreagentrequest *GoogleCloudDialogflowV2beta1RestoreAgentRequest) *ProjectsAgentRestoreCall { c := &ProjectsAgentRestoreCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.parent = parent - c.restoreagentrequest = restoreagentrequest + c.googleclouddialogflowv2beta1restoreagentrequest = googleclouddialogflowv2beta1restoreagentrequest return c } @@ -3814,7 +5572,7 @@ func (c *ProjectsAgentRestoreCall) doRequest(alt string) (*http.Response, error) } reqHeaders.Set("User-Agent", c.s.userAgent()) var body io.Reader = nil - body, err := googleapi.WithoutDataWrapper.JSONReader(c.restoreagentrequest) + body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowv2beta1restoreagentrequest) if err != nil { return nil, err } @@ -3831,13 +5589,13 @@ func (c *ProjectsAgentRestoreCall) doRequest(alt string) (*http.Response, error) } // Do executes the "dialogflow.projects.agent.restore" call. -// Exactly one of *Operation or error will be non-nil. Any non-2xx -// status code is an error. Response headers are in either -// *Operation.ServerResponse.Header or (if a response was returned at -// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified -// to check whether the returned error was because -// http.StatusNotModified was returned. -func (c *ProjectsAgentRestoreCall) Do(opts ...googleapi.CallOption) (*Operation, error) { +// Exactly one of *GoogleLongrunningOperation or error will be non-nil. +// Any non-2xx status code is an error. Response headers are in either +// *GoogleLongrunningOperation.ServerResponse.Header or (if a response +// was returned at all) in error.(*googleapi.Error).Header. Use +// googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *ProjectsAgentRestoreCall) Do(opts ...googleapi.CallOption) (*GoogleLongrunningOperation, error) { gensupport.SetOptions(c.urlParams_, opts...) res, err := c.doRequest("json") if res != nil && res.StatusCode == http.StatusNotModified { @@ -3856,7 +5614,7 @@ func (c *ProjectsAgentRestoreCall) Do(opts ...googleapi.CallOption) (*Operation, if err := googleapi.CheckResponse(res); err != nil { return nil, err } - ret := &Operation{ + ret := &GoogleLongrunningOperation{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, @@ -3886,10 +5644,10 @@ func (c *ProjectsAgentRestoreCall) Do(opts ...googleapi.CallOption) (*Operation, // }, // "path": "v2beta1/{+parent}/agent:restore", // "request": { - // "$ref": "RestoreAgentRequest" + // "$ref": "GoogleCloudDialogflowV2beta1RestoreAgentRequest" // }, // "response": { - // "$ref": "Operation" + // "$ref": "GoogleLongrunningOperation" // }, // "scopes": [ // "https://www.googleapis.com/auth/cloud-platform" @@ -3999,13 +5757,15 @@ func (c *ProjectsAgentSearchCall) doRequest(alt string) (*http.Response, error) } // Do executes the "dialogflow.projects.agent.search" call. -// Exactly one of *SearchAgentsResponse or error will be non-nil. Any -// non-2xx status code is an error. Response headers are in either -// *SearchAgentsResponse.ServerResponse.Header or (if a response was -// returned at all) in error.(*googleapi.Error).Header. Use -// googleapi.IsNotModified to check whether the returned error was -// because http.StatusNotModified was returned. -func (c *ProjectsAgentSearchCall) Do(opts ...googleapi.CallOption) (*SearchAgentsResponse, error) { +// Exactly one of *GoogleCloudDialogflowV2beta1SearchAgentsResponse or +// error will be non-nil. Any non-2xx status code is an error. Response +// headers are in either +// *GoogleCloudDialogflowV2beta1SearchAgentsResponse.ServerResponse.Heade +// r or (if a response was returned at all) in +// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check +// whether the returned error was because http.StatusNotModified was +// returned. +func (c *ProjectsAgentSearchCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowV2beta1SearchAgentsResponse, error) { gensupport.SetOptions(c.urlParams_, opts...) res, err := c.doRequest("json") if res != nil && res.StatusCode == http.StatusNotModified { @@ -4024,7 +5784,7 @@ func (c *ProjectsAgentSearchCall) Do(opts ...googleapi.CallOption) (*SearchAgent if err := googleapi.CheckResponse(res); err != nil { return nil, err } - ret := &SearchAgentsResponse{ + ret := &GoogleCloudDialogflowV2beta1SearchAgentsResponse{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, @@ -4065,7 +5825,7 @@ func (c *ProjectsAgentSearchCall) Do(opts ...googleapi.CallOption) (*SearchAgent // }, // "path": "v2beta1/{+parent}/agent:search", // "response": { - // "$ref": "SearchAgentsResponse" + // "$ref": "GoogleCloudDialogflowV2beta1SearchAgentsResponse" // }, // "scopes": [ // "https://www.googleapis.com/auth/cloud-platform" @@ -4077,7 +5837,7 @@ func (c *ProjectsAgentSearchCall) Do(opts ...googleapi.CallOption) (*SearchAgent // Pages invokes f for each page of results. // A non-nil error returned from f will halt the iteration. // The provided context supersedes any context provided to the Context method. -func (c *ProjectsAgentSearchCall) Pages(ctx context.Context, f func(*SearchAgentsResponse) error) error { +func (c *ProjectsAgentSearchCall) Pages(ctx context.Context, f func(*GoogleCloudDialogflowV2beta1SearchAgentsResponse) error) error { c.ctx_ = ctx defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point for { @@ -4098,12 +5858,12 @@ func (c *ProjectsAgentSearchCall) Pages(ctx context.Context, f func(*SearchAgent // method id "dialogflow.projects.agent.train": type ProjectsAgentTrainCall struct { - s *Service - parent string - trainagentrequest *TrainAgentRequest - urlParams_ gensupport.URLParams - ctx_ context.Context - header_ http.Header + s *Service + parent string + googleclouddialogflowv2beta1trainagentrequest *GoogleCloudDialogflowV2beta1TrainAgentRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header } // Train: Trains the specified agent. @@ -4111,10 +5871,10 @@ type ProjectsAgentTrainCall struct { // // Operation -func (r *ProjectsAgentService) Train(parent string, trainagentrequest *TrainAgentRequest) *ProjectsAgentTrainCall { +func (r *ProjectsAgentService) Train(parent string, googleclouddialogflowv2beta1trainagentrequest *GoogleCloudDialogflowV2beta1TrainAgentRequest) *ProjectsAgentTrainCall { c := &ProjectsAgentTrainCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.parent = parent - c.trainagentrequest = trainagentrequest + c.googleclouddialogflowv2beta1trainagentrequest = googleclouddialogflowv2beta1trainagentrequest return c } @@ -4150,7 +5910,7 @@ func (c *ProjectsAgentTrainCall) doRequest(alt string) (*http.Response, error) { } reqHeaders.Set("User-Agent", c.s.userAgent()) var body io.Reader = nil - body, err := googleapi.WithoutDataWrapper.JSONReader(c.trainagentrequest) + body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowv2beta1trainagentrequest) if err != nil { return nil, err } @@ -4167,13 +5927,13 @@ func (c *ProjectsAgentTrainCall) doRequest(alt string) (*http.Response, error) { } // Do executes the "dialogflow.projects.agent.train" call. -// Exactly one of *Operation or error will be non-nil. Any non-2xx -// status code is an error. Response headers are in either -// *Operation.ServerResponse.Header or (if a response was returned at -// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified -// to check whether the returned error was because -// http.StatusNotModified was returned. -func (c *ProjectsAgentTrainCall) Do(opts ...googleapi.CallOption) (*Operation, error) { +// Exactly one of *GoogleLongrunningOperation or error will be non-nil. +// Any non-2xx status code is an error. Response headers are in either +// *GoogleLongrunningOperation.ServerResponse.Header or (if a response +// was returned at all) in error.(*googleapi.Error).Header. Use +// googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *ProjectsAgentTrainCall) Do(opts ...googleapi.CallOption) (*GoogleLongrunningOperation, error) { gensupport.SetOptions(c.urlParams_, opts...) res, err := c.doRequest("json") if res != nil && res.StatusCode == http.StatusNotModified { @@ -4192,7 +5952,7 @@ func (c *ProjectsAgentTrainCall) Do(opts ...googleapi.CallOption) (*Operation, e if err := googleapi.CheckResponse(res); err != nil { return nil, err } - ret := &Operation{ + ret := &GoogleLongrunningOperation{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, @@ -4222,10 +5982,10 @@ func (c *ProjectsAgentTrainCall) Do(opts ...googleapi.CallOption) (*Operation, e // }, // "path": "v2beta1/{+parent}/agent:train", // "request": { - // "$ref": "TrainAgentRequest" + // "$ref": "GoogleCloudDialogflowV2beta1TrainAgentRequest" // }, // "response": { - // "$ref": "Operation" + // "$ref": "GoogleLongrunningOperation" // }, // "scopes": [ // "https://www.googleapis.com/auth/cloud-platform" @@ -4237,22 +5997,22 @@ func (c *ProjectsAgentTrainCall) Do(opts ...googleapi.CallOption) (*Operation, e // method id "dialogflow.projects.agent.entityTypes.batchDelete": type ProjectsAgentEntityTypesBatchDeleteCall struct { - s *Service - parent string - batchdeleteentitytypesrequest *BatchDeleteEntityTypesRequest - urlParams_ gensupport.URLParams - ctx_ context.Context - header_ http.Header + s *Service + parent string + googleclouddialogflowv2beta1batchdeleteentitytypesrequest *GoogleCloudDialogflowV2beta1BatchDeleteEntityTypesRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header } // BatchDelete: Deletes entity types in the specified agent. // // Operation -func (r *ProjectsAgentEntityTypesService) BatchDelete(parent string, batchdeleteentitytypesrequest *BatchDeleteEntityTypesRequest) *ProjectsAgentEntityTypesBatchDeleteCall { +func (r *ProjectsAgentEntityTypesService) BatchDelete(parent string, googleclouddialogflowv2beta1batchdeleteentitytypesrequest *GoogleCloudDialogflowV2beta1BatchDeleteEntityTypesRequest) *ProjectsAgentEntityTypesBatchDeleteCall { c := &ProjectsAgentEntityTypesBatchDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.parent = parent - c.batchdeleteentitytypesrequest = batchdeleteentitytypesrequest + c.googleclouddialogflowv2beta1batchdeleteentitytypesrequest = googleclouddialogflowv2beta1batchdeleteentitytypesrequest return c } @@ -4288,7 +6048,7 @@ func (c *ProjectsAgentEntityTypesBatchDeleteCall) doRequest(alt string) (*http.R } reqHeaders.Set("User-Agent", c.s.userAgent()) var body io.Reader = nil - body, err := googleapi.WithoutDataWrapper.JSONReader(c.batchdeleteentitytypesrequest) + body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowv2beta1batchdeleteentitytypesrequest) if err != nil { return nil, err } @@ -4305,13 +6065,13 @@ func (c *ProjectsAgentEntityTypesBatchDeleteCall) doRequest(alt string) (*http.R } // Do executes the "dialogflow.projects.agent.entityTypes.batchDelete" call. -// Exactly one of *Operation or error will be non-nil. Any non-2xx -// status code is an error. Response headers are in either -// *Operation.ServerResponse.Header or (if a response was returned at -// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified -// to check whether the returned error was because -// http.StatusNotModified was returned. -func (c *ProjectsAgentEntityTypesBatchDeleteCall) Do(opts ...googleapi.CallOption) (*Operation, error) { +// Exactly one of *GoogleLongrunningOperation or error will be non-nil. +// Any non-2xx status code is an error. Response headers are in either +// *GoogleLongrunningOperation.ServerResponse.Header or (if a response +// was returned at all) in error.(*googleapi.Error).Header. Use +// googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *ProjectsAgentEntityTypesBatchDeleteCall) Do(opts ...googleapi.CallOption) (*GoogleLongrunningOperation, error) { gensupport.SetOptions(c.urlParams_, opts...) res, err := c.doRequest("json") if res != nil && res.StatusCode == http.StatusNotModified { @@ -4330,7 +6090,7 @@ func (c *ProjectsAgentEntityTypesBatchDeleteCall) Do(opts ...googleapi.CallOptio if err := googleapi.CheckResponse(res); err != nil { return nil, err } - ret := &Operation{ + ret := &GoogleLongrunningOperation{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, @@ -4360,10 +6120,10 @@ func (c *ProjectsAgentEntityTypesBatchDeleteCall) Do(opts ...googleapi.CallOptio // }, // "path": "v2beta1/{+parent}/entityTypes:batchDelete", // "request": { - // "$ref": "BatchDeleteEntityTypesRequest" + // "$ref": "GoogleCloudDialogflowV2beta1BatchDeleteEntityTypesRequest" // }, // "response": { - // "$ref": "Operation" + // "$ref": "GoogleLongrunningOperation" // }, // "scopes": [ // "https://www.googleapis.com/auth/cloud-platform" @@ -4375,12 +6135,12 @@ func (c *ProjectsAgentEntityTypesBatchDeleteCall) Do(opts ...googleapi.CallOptio // method id "dialogflow.projects.agent.entityTypes.batchUpdate": type ProjectsAgentEntityTypesBatchUpdateCall struct { - s *Service - parent string - batchupdateentitytypesrequest *BatchUpdateEntityTypesRequest - urlParams_ gensupport.URLParams - ctx_ context.Context - header_ http.Header + s *Service + parent string + googleclouddialogflowv2beta1batchupdateentitytypesrequest *GoogleCloudDialogflowV2beta1BatchUpdateEntityTypesRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header } // BatchUpdate: Updates/Creates multiple entity types in the specified @@ -4388,10 +6148,10 @@ type ProjectsAgentEntityTypesBatchUpdateCall struct { // // Operation -func (r *ProjectsAgentEntityTypesService) BatchUpdate(parent string, batchupdateentitytypesrequest *BatchUpdateEntityTypesRequest) *ProjectsAgentEntityTypesBatchUpdateCall { +func (r *ProjectsAgentEntityTypesService) BatchUpdate(parent string, googleclouddialogflowv2beta1batchupdateentitytypesrequest *GoogleCloudDialogflowV2beta1BatchUpdateEntityTypesRequest) *ProjectsAgentEntityTypesBatchUpdateCall { c := &ProjectsAgentEntityTypesBatchUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.parent = parent - c.batchupdateentitytypesrequest = batchupdateentitytypesrequest + c.googleclouddialogflowv2beta1batchupdateentitytypesrequest = googleclouddialogflowv2beta1batchupdateentitytypesrequest return c } @@ -4427,7 +6187,7 @@ func (c *ProjectsAgentEntityTypesBatchUpdateCall) doRequest(alt string) (*http.R } reqHeaders.Set("User-Agent", c.s.userAgent()) var body io.Reader = nil - body, err := googleapi.WithoutDataWrapper.JSONReader(c.batchupdateentitytypesrequest) + body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowv2beta1batchupdateentitytypesrequest) if err != nil { return nil, err } @@ -4444,13 +6204,13 @@ func (c *ProjectsAgentEntityTypesBatchUpdateCall) doRequest(alt string) (*http.R } // Do executes the "dialogflow.projects.agent.entityTypes.batchUpdate" call. -// Exactly one of *Operation or error will be non-nil. Any non-2xx -// status code is an error. Response headers are in either -// *Operation.ServerResponse.Header or (if a response was returned at -// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified -// to check whether the returned error was because -// http.StatusNotModified was returned. -func (c *ProjectsAgentEntityTypesBatchUpdateCall) Do(opts ...googleapi.CallOption) (*Operation, error) { +// Exactly one of *GoogleLongrunningOperation or error will be non-nil. +// Any non-2xx status code is an error. Response headers are in either +// *GoogleLongrunningOperation.ServerResponse.Header or (if a response +// was returned at all) in error.(*googleapi.Error).Header. Use +// googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *ProjectsAgentEntityTypesBatchUpdateCall) Do(opts ...googleapi.CallOption) (*GoogleLongrunningOperation, error) { gensupport.SetOptions(c.urlParams_, opts...) res, err := c.doRequest("json") if res != nil && res.StatusCode == http.StatusNotModified { @@ -4469,7 +6229,7 @@ func (c *ProjectsAgentEntityTypesBatchUpdateCall) Do(opts ...googleapi.CallOptio if err := googleapi.CheckResponse(res); err != nil { return nil, err } - ret := &Operation{ + ret := &GoogleLongrunningOperation{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, @@ -4499,10 +6259,10 @@ func (c *ProjectsAgentEntityTypesBatchUpdateCall) Do(opts ...googleapi.CallOptio // }, // "path": "v2beta1/{+parent}/entityTypes:batchUpdate", // "request": { - // "$ref": "BatchUpdateEntityTypesRequest" + // "$ref": "GoogleCloudDialogflowV2beta1BatchUpdateEntityTypesRequest" // }, // "response": { - // "$ref": "Operation" + // "$ref": "GoogleLongrunningOperation" // }, // "scopes": [ // "https://www.googleapis.com/auth/cloud-platform" @@ -4514,19 +6274,19 @@ func (c *ProjectsAgentEntityTypesBatchUpdateCall) Do(opts ...googleapi.CallOptio // method id "dialogflow.projects.agent.entityTypes.create": type ProjectsAgentEntityTypesCreateCall struct { - s *Service - parent string - entitytype *EntityType - urlParams_ gensupport.URLParams - ctx_ context.Context - header_ http.Header + s *Service + parent string + googleclouddialogflowv2beta1entitytype *GoogleCloudDialogflowV2beta1EntityType + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header } // Create: Creates an entity type in the specified agent. -func (r *ProjectsAgentEntityTypesService) Create(parent string, entitytype *EntityType) *ProjectsAgentEntityTypesCreateCall { +func (r *ProjectsAgentEntityTypesService) Create(parent string, googleclouddialogflowv2beta1entitytype *GoogleCloudDialogflowV2beta1EntityType) *ProjectsAgentEntityTypesCreateCall { c := &ProjectsAgentEntityTypesCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.parent = parent - c.entitytype = entitytype + c.googleclouddialogflowv2beta1entitytype = googleclouddialogflowv2beta1entitytype return c } @@ -4576,7 +6336,7 @@ func (c *ProjectsAgentEntityTypesCreateCall) doRequest(alt string) (*http.Respon } reqHeaders.Set("User-Agent", c.s.userAgent()) var body io.Reader = nil - body, err := googleapi.WithoutDataWrapper.JSONReader(c.entitytype) + body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowv2beta1entitytype) if err != nil { return nil, err } @@ -4593,13 +6353,14 @@ func (c *ProjectsAgentEntityTypesCreateCall) doRequest(alt string) (*http.Respon } // Do executes the "dialogflow.projects.agent.entityTypes.create" call. -// Exactly one of *EntityType or error will be non-nil. Any non-2xx -// status code is an error. Response headers are in either -// *EntityType.ServerResponse.Header or (if a response was returned at -// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified -// to check whether the returned error was because -// http.StatusNotModified was returned. -func (c *ProjectsAgentEntityTypesCreateCall) Do(opts ...googleapi.CallOption) (*EntityType, error) { +// Exactly one of *GoogleCloudDialogflowV2beta1EntityType or error will +// be non-nil. Any non-2xx status code is an error. Response headers are +// in either +// *GoogleCloudDialogflowV2beta1EntityType.ServerResponse.Header or (if +// a response was returned at all) in error.(*googleapi.Error).Header. +// Use googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *ProjectsAgentEntityTypesCreateCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowV2beta1EntityType, error) { gensupport.SetOptions(c.urlParams_, opts...) res, err := c.doRequest("json") if res != nil && res.StatusCode == http.StatusNotModified { @@ -4618,7 +6379,7 @@ func (c *ProjectsAgentEntityTypesCreateCall) Do(opts ...googleapi.CallOption) (* if err := googleapi.CheckResponse(res); err != nil { return nil, err } - ret := &EntityType{ + ret := &GoogleCloudDialogflowV2beta1EntityType{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, @@ -4653,10 +6414,10 @@ func (c *ProjectsAgentEntityTypesCreateCall) Do(opts ...googleapi.CallOption) (* // }, // "path": "v2beta1/{+parent}/entityTypes", // "request": { - // "$ref": "EntityType" + // "$ref": "GoogleCloudDialogflowV2beta1EntityType" // }, // "response": { - // "$ref": "EntityType" + // "$ref": "GoogleCloudDialogflowV2beta1EntityType" // }, // "scopes": [ // "https://www.googleapis.com/auth/cloud-platform" @@ -4726,13 +6487,13 @@ func (c *ProjectsAgentEntityTypesDeleteCall) doRequest(alt string) (*http.Respon } // Do executes the "dialogflow.projects.agent.entityTypes.delete" call. -// Exactly one of *Empty or error will be non-nil. Any non-2xx status -// code is an error. Response headers are in either -// *Empty.ServerResponse.Header or (if a response was returned at all) -// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to -// check whether the returned error was because http.StatusNotModified -// was returned. -func (c *ProjectsAgentEntityTypesDeleteCall) Do(opts ...googleapi.CallOption) (*Empty, error) { +// Exactly one of *GoogleProtobufEmpty or error will be non-nil. Any +// non-2xx status code is an error. Response headers are in either +// *GoogleProtobufEmpty.ServerResponse.Header or (if a response was +// returned at all) in error.(*googleapi.Error).Header. Use +// googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *ProjectsAgentEntityTypesDeleteCall) Do(opts ...googleapi.CallOption) (*GoogleProtobufEmpty, error) { gensupport.SetOptions(c.urlParams_, opts...) res, err := c.doRequest("json") if res != nil && res.StatusCode == http.StatusNotModified { @@ -4751,7 +6512,7 @@ func (c *ProjectsAgentEntityTypesDeleteCall) Do(opts ...googleapi.CallOption) (* if err := googleapi.CheckResponse(res); err != nil { return nil, err } - ret := &Empty{ + ret := &GoogleProtobufEmpty{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, @@ -4781,7 +6542,7 @@ func (c *ProjectsAgentEntityTypesDeleteCall) Do(opts ...googleapi.CallOption) (* // }, // "path": "v2beta1/{+name}", // "response": { - // "$ref": "Empty" + // "$ref": "GoogleProtobufEmpty" // }, // "scopes": [ // "https://www.googleapis.com/auth/cloud-platform" @@ -4879,13 +6640,14 @@ func (c *ProjectsAgentEntityTypesGetCall) doRequest(alt string) (*http.Response, } // Do executes the "dialogflow.projects.agent.entityTypes.get" call. -// Exactly one of *EntityType or error will be non-nil. Any non-2xx -// status code is an error. Response headers are in either -// *EntityType.ServerResponse.Header or (if a response was returned at -// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified -// to check whether the returned error was because -// http.StatusNotModified was returned. -func (c *ProjectsAgentEntityTypesGetCall) Do(opts ...googleapi.CallOption) (*EntityType, error) { +// Exactly one of *GoogleCloudDialogflowV2beta1EntityType or error will +// be non-nil. Any non-2xx status code is an error. Response headers are +// in either +// *GoogleCloudDialogflowV2beta1EntityType.ServerResponse.Header or (if +// a response was returned at all) in error.(*googleapi.Error).Header. +// Use googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *ProjectsAgentEntityTypesGetCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowV2beta1EntityType, error) { gensupport.SetOptions(c.urlParams_, opts...) res, err := c.doRequest("json") if res != nil && res.StatusCode == http.StatusNotModified { @@ -4904,7 +6666,7 @@ func (c *ProjectsAgentEntityTypesGetCall) Do(opts ...googleapi.CallOption) (*Ent if err := googleapi.CheckResponse(res); err != nil { return nil, err } - ret := &EntityType{ + ret := &GoogleCloudDialogflowV2beta1EntityType{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, @@ -4939,7 +6701,7 @@ func (c *ProjectsAgentEntityTypesGetCall) Do(opts ...googleapi.CallOption) (*Ent // }, // "path": "v2beta1/{+name}", // "response": { - // "$ref": "EntityType" + // "$ref": "GoogleCloudDialogflowV2beta1EntityType" // }, // "scopes": [ // "https://www.googleapis.com/auth/cloud-platform" @@ -5052,13 +6814,15 @@ func (c *ProjectsAgentEntityTypesListCall) doRequest(alt string) (*http.Response } // Do executes the "dialogflow.projects.agent.entityTypes.list" call. -// Exactly one of *ListEntityTypesResponse or error will be non-nil. Any -// non-2xx status code is an error. Response headers are in either -// *ListEntityTypesResponse.ServerResponse.Header or (if a response was -// returned at all) in error.(*googleapi.Error).Header. Use -// googleapi.IsNotModified to check whether the returned error was -// because http.StatusNotModified was returned. -func (c *ProjectsAgentEntityTypesListCall) Do(opts ...googleapi.CallOption) (*ListEntityTypesResponse, error) { +// Exactly one of *GoogleCloudDialogflowV2beta1ListEntityTypesResponse +// or error will be non-nil. Any non-2xx status code is an error. +// Response headers are in either +// *GoogleCloudDialogflowV2beta1ListEntityTypesResponse.ServerResponse.He +// ader or (if a response was returned at all) in +// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check +// whether the returned error was because http.StatusNotModified was +// returned. +func (c *ProjectsAgentEntityTypesListCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowV2beta1ListEntityTypesResponse, error) { gensupport.SetOptions(c.urlParams_, opts...) res, err := c.doRequest("json") if res != nil && res.StatusCode == http.StatusNotModified { @@ -5077,7 +6841,7 @@ func (c *ProjectsAgentEntityTypesListCall) Do(opts ...googleapi.CallOption) (*Li if err := googleapi.CheckResponse(res); err != nil { return nil, err } - ret := &ListEntityTypesResponse{ + ret := &GoogleCloudDialogflowV2beta1ListEntityTypesResponse{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, @@ -5123,7 +6887,7 @@ func (c *ProjectsAgentEntityTypesListCall) Do(opts ...googleapi.CallOption) (*Li // }, // "path": "v2beta1/{+parent}/entityTypes", // "response": { - // "$ref": "ListEntityTypesResponse" + // "$ref": "GoogleCloudDialogflowV2beta1ListEntityTypesResponse" // }, // "scopes": [ // "https://www.googleapis.com/auth/cloud-platform" @@ -5135,7 +6899,7 @@ func (c *ProjectsAgentEntityTypesListCall) Do(opts ...googleapi.CallOption) (*Li // Pages invokes f for each page of results. // A non-nil error returned from f will halt the iteration. // The provided context supersedes any context provided to the Context method. -func (c *ProjectsAgentEntityTypesListCall) Pages(ctx context.Context, f func(*ListEntityTypesResponse) error) error { +func (c *ProjectsAgentEntityTypesListCall) Pages(ctx context.Context, f func(*GoogleCloudDialogflowV2beta1ListEntityTypesResponse) error) error { c.ctx_ = ctx defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point for { @@ -5156,19 +6920,19 @@ func (c *ProjectsAgentEntityTypesListCall) Pages(ctx context.Context, f func(*Li // method id "dialogflow.projects.agent.entityTypes.patch": type ProjectsAgentEntityTypesPatchCall struct { - s *Service - nameid string - entitytype *EntityType - urlParams_ gensupport.URLParams - ctx_ context.Context - header_ http.Header + s *Service + nameid string + googleclouddialogflowv2beta1entitytype *GoogleCloudDialogflowV2beta1EntityType + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header } // Patch: Updates the specified entity type. -func (r *ProjectsAgentEntityTypesService) Patch(nameid string, entitytype *EntityType) *ProjectsAgentEntityTypesPatchCall { +func (r *ProjectsAgentEntityTypesService) Patch(nameid string, googleclouddialogflowv2beta1entitytype *GoogleCloudDialogflowV2beta1EntityType) *ProjectsAgentEntityTypesPatchCall { c := &ProjectsAgentEntityTypesPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.nameid = nameid - c.entitytype = entitytype + c.googleclouddialogflowv2beta1entitytype = googleclouddialogflowv2beta1entitytype return c } @@ -5225,7 +6989,7 @@ func (c *ProjectsAgentEntityTypesPatchCall) doRequest(alt string) (*http.Respons } reqHeaders.Set("User-Agent", c.s.userAgent()) var body io.Reader = nil - body, err := googleapi.WithoutDataWrapper.JSONReader(c.entitytype) + body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowv2beta1entitytype) if err != nil { return nil, err } @@ -5242,13 +7006,14 @@ func (c *ProjectsAgentEntityTypesPatchCall) doRequest(alt string) (*http.Respons } // Do executes the "dialogflow.projects.agent.entityTypes.patch" call. -// Exactly one of *EntityType or error will be non-nil. Any non-2xx -// status code is an error. Response headers are in either -// *EntityType.ServerResponse.Header or (if a response was returned at -// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified -// to check whether the returned error was because -// http.StatusNotModified was returned. -func (c *ProjectsAgentEntityTypesPatchCall) Do(opts ...googleapi.CallOption) (*EntityType, error) { +// Exactly one of *GoogleCloudDialogflowV2beta1EntityType or error will +// be non-nil. Any non-2xx status code is an error. Response headers are +// in either +// *GoogleCloudDialogflowV2beta1EntityType.ServerResponse.Header or (if +// a response was returned at all) in error.(*googleapi.Error).Header. +// Use googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *ProjectsAgentEntityTypesPatchCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowV2beta1EntityType, error) { gensupport.SetOptions(c.urlParams_, opts...) res, err := c.doRequest("json") if res != nil && res.StatusCode == http.StatusNotModified { @@ -5267,7 +7032,7 @@ func (c *ProjectsAgentEntityTypesPatchCall) Do(opts ...googleapi.CallOption) (*E if err := googleapi.CheckResponse(res); err != nil { return nil, err } - ret := &EntityType{ + ret := &GoogleCloudDialogflowV2beta1EntityType{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, @@ -5308,10 +7073,10 @@ func (c *ProjectsAgentEntityTypesPatchCall) Do(opts ...googleapi.CallOption) (*E // }, // "path": "v2beta1/{+name}", // "request": { - // "$ref": "EntityType" + // "$ref": "GoogleCloudDialogflowV2beta1EntityType" // }, // "response": { - // "$ref": "EntityType" + // "$ref": "GoogleCloudDialogflowV2beta1EntityType" // }, // "scopes": [ // "https://www.googleapis.com/auth/cloud-platform" @@ -5323,12 +7088,12 @@ func (c *ProjectsAgentEntityTypesPatchCall) Do(opts ...googleapi.CallOption) (*E // method id "dialogflow.projects.agent.entityTypes.entities.batchCreate": type ProjectsAgentEntityTypesEntitiesBatchCreateCall struct { - s *Service - parent string - batchcreateentitiesrequest *BatchCreateEntitiesRequest - urlParams_ gensupport.URLParams - ctx_ context.Context - header_ http.Header + s *Service + parent string + googleclouddialogflowv2beta1batchcreateentitiesrequest *GoogleCloudDialogflowV2beta1BatchCreateEntitiesRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header } // BatchCreate: Creates multiple new entities in the specified entity @@ -5336,10 +7101,10 @@ type ProjectsAgentEntityTypesEntitiesBatchCreateCall struct { // existing collection of entries). // // Operation -func (r *ProjectsAgentEntityTypesEntitiesService) BatchCreate(parent string, batchcreateentitiesrequest *BatchCreateEntitiesRequest) *ProjectsAgentEntityTypesEntitiesBatchCreateCall { +func (r *ProjectsAgentEntityTypesEntitiesService) BatchCreate(parent string, googleclouddialogflowv2beta1batchcreateentitiesrequest *GoogleCloudDialogflowV2beta1BatchCreateEntitiesRequest) *ProjectsAgentEntityTypesEntitiesBatchCreateCall { c := &ProjectsAgentEntityTypesEntitiesBatchCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.parent = parent - c.batchcreateentitiesrequest = batchcreateentitiesrequest + c.googleclouddialogflowv2beta1batchcreateentitiesrequest = googleclouddialogflowv2beta1batchcreateentitiesrequest return c } @@ -5375,7 +7140,7 @@ func (c *ProjectsAgentEntityTypesEntitiesBatchCreateCall) doRequest(alt string) } reqHeaders.Set("User-Agent", c.s.userAgent()) var body io.Reader = nil - body, err := googleapi.WithoutDataWrapper.JSONReader(c.batchcreateentitiesrequest) + body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowv2beta1batchcreateentitiesrequest) if err != nil { return nil, err } @@ -5392,13 +7157,13 @@ func (c *ProjectsAgentEntityTypesEntitiesBatchCreateCall) doRequest(alt string) } // Do executes the "dialogflow.projects.agent.entityTypes.entities.batchCreate" call. -// Exactly one of *Operation or error will be non-nil. Any non-2xx -// status code is an error. Response headers are in either -// *Operation.ServerResponse.Header or (if a response was returned at -// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified -// to check whether the returned error was because -// http.StatusNotModified was returned. -func (c *ProjectsAgentEntityTypesEntitiesBatchCreateCall) Do(opts ...googleapi.CallOption) (*Operation, error) { +// Exactly one of *GoogleLongrunningOperation or error will be non-nil. +// Any non-2xx status code is an error. Response headers are in either +// *GoogleLongrunningOperation.ServerResponse.Header or (if a response +// was returned at all) in error.(*googleapi.Error).Header. Use +// googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *ProjectsAgentEntityTypesEntitiesBatchCreateCall) Do(opts ...googleapi.CallOption) (*GoogleLongrunningOperation, error) { gensupport.SetOptions(c.urlParams_, opts...) res, err := c.doRequest("json") if res != nil && res.StatusCode == http.StatusNotModified { @@ -5417,7 +7182,7 @@ func (c *ProjectsAgentEntityTypesEntitiesBatchCreateCall) Do(opts ...googleapi.C if err := googleapi.CheckResponse(res); err != nil { return nil, err } - ret := &Operation{ + ret := &GoogleLongrunningOperation{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, @@ -5447,10 +7212,10 @@ func (c *ProjectsAgentEntityTypesEntitiesBatchCreateCall) Do(opts ...googleapi.C // }, // "path": "v2beta1/{+parent}/entities:batchCreate", // "request": { - // "$ref": "BatchCreateEntitiesRequest" + // "$ref": "GoogleCloudDialogflowV2beta1BatchCreateEntitiesRequest" // }, // "response": { - // "$ref": "Operation" + // "$ref": "GoogleLongrunningOperation" // }, // "scopes": [ // "https://www.googleapis.com/auth/cloud-platform" @@ -5462,12 +7227,12 @@ func (c *ProjectsAgentEntityTypesEntitiesBatchCreateCall) Do(opts ...googleapi.C // method id "dialogflow.projects.agent.entityTypes.entities.batchDelete": type ProjectsAgentEntityTypesEntitiesBatchDeleteCall struct { - s *Service - parent string - batchdeleteentitiesrequest *BatchDeleteEntitiesRequest - urlParams_ gensupport.URLParams - ctx_ context.Context - header_ http.Header + s *Service + parent string + googleclouddialogflowv2beta1batchdeleteentitiesrequest *GoogleCloudDialogflowV2beta1BatchDeleteEntitiesRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header } // BatchDelete: Deletes entities in the specified entity @@ -5475,10 +7240,10 @@ type ProjectsAgentEntityTypesEntitiesBatchDeleteCall struct { // // Operation -func (r *ProjectsAgentEntityTypesEntitiesService) BatchDelete(parent string, batchdeleteentitiesrequest *BatchDeleteEntitiesRequest) *ProjectsAgentEntityTypesEntitiesBatchDeleteCall { +func (r *ProjectsAgentEntityTypesEntitiesService) BatchDelete(parent string, googleclouddialogflowv2beta1batchdeleteentitiesrequest *GoogleCloudDialogflowV2beta1BatchDeleteEntitiesRequest) *ProjectsAgentEntityTypesEntitiesBatchDeleteCall { c := &ProjectsAgentEntityTypesEntitiesBatchDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.parent = parent - c.batchdeleteentitiesrequest = batchdeleteentitiesrequest + c.googleclouddialogflowv2beta1batchdeleteentitiesrequest = googleclouddialogflowv2beta1batchdeleteentitiesrequest return c } @@ -5514,7 +7279,7 @@ func (c *ProjectsAgentEntityTypesEntitiesBatchDeleteCall) doRequest(alt string) } reqHeaders.Set("User-Agent", c.s.userAgent()) var body io.Reader = nil - body, err := googleapi.WithoutDataWrapper.JSONReader(c.batchdeleteentitiesrequest) + body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowv2beta1batchdeleteentitiesrequest) if err != nil { return nil, err } @@ -5531,13 +7296,13 @@ func (c *ProjectsAgentEntityTypesEntitiesBatchDeleteCall) doRequest(alt string) } // Do executes the "dialogflow.projects.agent.entityTypes.entities.batchDelete" call. -// Exactly one of *Operation or error will be non-nil. Any non-2xx -// status code is an error. Response headers are in either -// *Operation.ServerResponse.Header or (if a response was returned at -// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified -// to check whether the returned error was because -// http.StatusNotModified was returned. -func (c *ProjectsAgentEntityTypesEntitiesBatchDeleteCall) Do(opts ...googleapi.CallOption) (*Operation, error) { +// Exactly one of *GoogleLongrunningOperation or error will be non-nil. +// Any non-2xx status code is an error. Response headers are in either +// *GoogleLongrunningOperation.ServerResponse.Header or (if a response +// was returned at all) in error.(*googleapi.Error).Header. Use +// googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *ProjectsAgentEntityTypesEntitiesBatchDeleteCall) Do(opts ...googleapi.CallOption) (*GoogleLongrunningOperation, error) { gensupport.SetOptions(c.urlParams_, opts...) res, err := c.doRequest("json") if res != nil && res.StatusCode == http.StatusNotModified { @@ -5556,7 +7321,7 @@ func (c *ProjectsAgentEntityTypesEntitiesBatchDeleteCall) Do(opts ...googleapi.C if err := googleapi.CheckResponse(res); err != nil { return nil, err } - ret := &Operation{ + ret := &GoogleLongrunningOperation{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, @@ -5586,10 +7351,10 @@ func (c *ProjectsAgentEntityTypesEntitiesBatchDeleteCall) Do(opts ...googleapi.C // }, // "path": "v2beta1/{+parent}/entities:batchDelete", // "request": { - // "$ref": "BatchDeleteEntitiesRequest" + // "$ref": "GoogleCloudDialogflowV2beta1BatchDeleteEntitiesRequest" // }, // "response": { - // "$ref": "Operation" + // "$ref": "GoogleLongrunningOperation" // }, // "scopes": [ // "https://www.googleapis.com/auth/cloud-platform" @@ -5601,12 +7366,12 @@ func (c *ProjectsAgentEntityTypesEntitiesBatchDeleteCall) Do(opts ...googleapi.C // method id "dialogflow.projects.agent.entityTypes.entities.batchUpdate": type ProjectsAgentEntityTypesEntitiesBatchUpdateCall struct { - s *Service - parent string - batchupdateentitiesrequest *BatchUpdateEntitiesRequest - urlParams_ gensupport.URLParams - ctx_ context.Context - header_ http.Header + s *Service + parent string + googleclouddialogflowv2beta1batchupdateentitiesrequest *GoogleCloudDialogflowV2beta1BatchUpdateEntitiesRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header } // BatchUpdate: Updates entities in the specified entity type (replaces @@ -5615,10 +7380,10 @@ type ProjectsAgentEntityTypesEntitiesBatchUpdateCall struct { // // Operation -func (r *ProjectsAgentEntityTypesEntitiesService) BatchUpdate(parent string, batchupdateentitiesrequest *BatchUpdateEntitiesRequest) *ProjectsAgentEntityTypesEntitiesBatchUpdateCall { +func (r *ProjectsAgentEntityTypesEntitiesService) BatchUpdate(parent string, googleclouddialogflowv2beta1batchupdateentitiesrequest *GoogleCloudDialogflowV2beta1BatchUpdateEntitiesRequest) *ProjectsAgentEntityTypesEntitiesBatchUpdateCall { c := &ProjectsAgentEntityTypesEntitiesBatchUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.parent = parent - c.batchupdateentitiesrequest = batchupdateentitiesrequest + c.googleclouddialogflowv2beta1batchupdateentitiesrequest = googleclouddialogflowv2beta1batchupdateentitiesrequest return c } @@ -5654,7 +7419,7 @@ func (c *ProjectsAgentEntityTypesEntitiesBatchUpdateCall) doRequest(alt string) } reqHeaders.Set("User-Agent", c.s.userAgent()) var body io.Reader = nil - body, err := googleapi.WithoutDataWrapper.JSONReader(c.batchupdateentitiesrequest) + body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowv2beta1batchupdateentitiesrequest) if err != nil { return nil, err } @@ -5671,13 +7436,13 @@ func (c *ProjectsAgentEntityTypesEntitiesBatchUpdateCall) doRequest(alt string) } // Do executes the "dialogflow.projects.agent.entityTypes.entities.batchUpdate" call. -// Exactly one of *Operation or error will be non-nil. Any non-2xx -// status code is an error. Response headers are in either -// *Operation.ServerResponse.Header or (if a response was returned at -// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified -// to check whether the returned error was because -// http.StatusNotModified was returned. -func (c *ProjectsAgentEntityTypesEntitiesBatchUpdateCall) Do(opts ...googleapi.CallOption) (*Operation, error) { +// Exactly one of *GoogleLongrunningOperation or error will be non-nil. +// Any non-2xx status code is an error. Response headers are in either +// *GoogleLongrunningOperation.ServerResponse.Header or (if a response +// was returned at all) in error.(*googleapi.Error).Header. Use +// googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *ProjectsAgentEntityTypesEntitiesBatchUpdateCall) Do(opts ...googleapi.CallOption) (*GoogleLongrunningOperation, error) { gensupport.SetOptions(c.urlParams_, opts...) res, err := c.doRequest("json") if res != nil && res.StatusCode == http.StatusNotModified { @@ -5696,7 +7461,7 @@ func (c *ProjectsAgentEntityTypesEntitiesBatchUpdateCall) Do(opts ...googleapi.C if err := googleapi.CheckResponse(res); err != nil { return nil, err } - ret := &Operation{ + ret := &GoogleLongrunningOperation{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, @@ -5726,10 +7491,1759 @@ func (c *ProjectsAgentEntityTypesEntitiesBatchUpdateCall) Do(opts ...googleapi.C // }, // "path": "v2beta1/{+parent}/entities:batchUpdate", // "request": { - // "$ref": "BatchUpdateEntitiesRequest" + // "$ref": "GoogleCloudDialogflowV2beta1BatchUpdateEntitiesRequest" // }, // "response": { - // "$ref": "Operation" + // "$ref": "GoogleLongrunningOperation" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "dialogflow.projects.agent.environments.users.sessions.deleteContexts": + +type ProjectsAgentEnvironmentsUsersSessionsDeleteContextsCall struct { + s *Service + parent string + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// DeleteContexts: Deletes all active contexts in the specified session. +func (r *ProjectsAgentEnvironmentsUsersSessionsService) DeleteContexts(parent string) *ProjectsAgentEnvironmentsUsersSessionsDeleteContextsCall { + c := &ProjectsAgentEnvironmentsUsersSessionsDeleteContextsCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.parent = parent + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsAgentEnvironmentsUsersSessionsDeleteContextsCall) Fields(s ...googleapi.Field) *ProjectsAgentEnvironmentsUsersSessionsDeleteContextsCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsAgentEnvironmentsUsersSessionsDeleteContextsCall) Context(ctx context.Context) *ProjectsAgentEnvironmentsUsersSessionsDeleteContextsCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsAgentEnvironmentsUsersSessionsDeleteContextsCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsAgentEnvironmentsUsersSessionsDeleteContextsCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v2beta1/{+parent}/contexts") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("DELETE", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "parent": c.parent, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "dialogflow.projects.agent.environments.users.sessions.deleteContexts" call. +// Exactly one of *GoogleProtobufEmpty or error will be non-nil. Any +// non-2xx status code is an error. Response headers are in either +// *GoogleProtobufEmpty.ServerResponse.Header or (if a response was +// returned at all) in error.(*googleapi.Error).Header. Use +// googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *ProjectsAgentEnvironmentsUsersSessionsDeleteContextsCall) Do(opts ...googleapi.CallOption) (*GoogleProtobufEmpty, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &GoogleProtobufEmpty{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Deletes all active contexts in the specified session.", + // "flatPath": "v2beta1/projects/{projectsId}/agent/environments/{environmentsId}/users/{usersId}/sessions/{sessionsId}/contexts", + // "httpMethod": "DELETE", + // "id": "dialogflow.projects.agent.environments.users.sessions.deleteContexts", + // "parameterOrder": [ + // "parent" + // ], + // "parameters": { + // "parent": { + // "description": "Required. The name of the session to delete all contexts from. Format:\n`projects/\u003cProject ID\u003e/agent/sessions/\u003cSession ID\u003e` or `projects/\u003cProject\nID\u003e/agent/environments/\u003cEnvironment ID\u003e/users/\u003cUser ID\u003e/sessions/\u003cSession\nID\u003e`. Note: Environments and users are under construction and will be\navailable soon. If \u003cEnvironment ID\u003e is not specified we assume default\n'draft' environment. If \u003cUser ID\u003e is not specified, we assume default\n'-' user.", + // "location": "path", + // "pattern": "^projects/[^/]+/agent/environments/[^/]+/users/[^/]+/sessions/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v2beta1/{+parent}/contexts", + // "response": { + // "$ref": "GoogleProtobufEmpty" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "dialogflow.projects.agent.environments.users.sessions.detectIntent": + +type ProjectsAgentEnvironmentsUsersSessionsDetectIntentCall struct { + s *Service + sessionid string + googleclouddialogflowv2beta1detectintentrequest *GoogleCloudDialogflowV2beta1DetectIntentRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// DetectIntent: Processes a natural language query and returns +// structured, actionable data +// as a result. This method is not idempotent, because it may cause +// contexts +// and session entity types to be updated, which in turn might +// affect +// results of future queries. +func (r *ProjectsAgentEnvironmentsUsersSessionsService) DetectIntent(sessionid string, googleclouddialogflowv2beta1detectintentrequest *GoogleCloudDialogflowV2beta1DetectIntentRequest) *ProjectsAgentEnvironmentsUsersSessionsDetectIntentCall { + c := &ProjectsAgentEnvironmentsUsersSessionsDetectIntentCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.sessionid = sessionid + c.googleclouddialogflowv2beta1detectintentrequest = googleclouddialogflowv2beta1detectintentrequest + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsAgentEnvironmentsUsersSessionsDetectIntentCall) Fields(s ...googleapi.Field) *ProjectsAgentEnvironmentsUsersSessionsDetectIntentCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsAgentEnvironmentsUsersSessionsDetectIntentCall) Context(ctx context.Context) *ProjectsAgentEnvironmentsUsersSessionsDetectIntentCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsAgentEnvironmentsUsersSessionsDetectIntentCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsAgentEnvironmentsUsersSessionsDetectIntentCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowv2beta1detectintentrequest) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v2beta1/{+session}:detectIntent") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("POST", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "session": c.sessionid, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "dialogflow.projects.agent.environments.users.sessions.detectIntent" call. +// Exactly one of *GoogleCloudDialogflowV2beta1DetectIntentResponse or +// error will be non-nil. Any non-2xx status code is an error. Response +// headers are in either +// *GoogleCloudDialogflowV2beta1DetectIntentResponse.ServerResponse.Heade +// r or (if a response was returned at all) in +// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check +// whether the returned error was because http.StatusNotModified was +// returned. +func (c *ProjectsAgentEnvironmentsUsersSessionsDetectIntentCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowV2beta1DetectIntentResponse, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &GoogleCloudDialogflowV2beta1DetectIntentResponse{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Processes a natural language query and returns structured, actionable data\nas a result. This method is not idempotent, because it may cause contexts\nand session entity types to be updated, which in turn might affect\nresults of future queries.", + // "flatPath": "v2beta1/projects/{projectsId}/agent/environments/{environmentsId}/users/{usersId}/sessions/{sessionsId}:detectIntent", + // "httpMethod": "POST", + // "id": "dialogflow.projects.agent.environments.users.sessions.detectIntent", + // "parameterOrder": [ + // "session" + // ], + // "parameters": { + // "session": { + // "description": "Required. The name of the session this query is sent to. Format:\n`projects/\u003cProject ID\u003e/agent/sessions/\u003cSession ID\u003e`, or\n`projects/\u003cProject ID\u003e/agent/environments/\u003cEnvironment ID\u003e/users/\u003cUser\nID\u003e/sessions/\u003cSession ID\u003e`. Note: Environments and users are under\nconstruction and will be available soon. If \u003cEnvironment ID\u003e is not\nspecified, we assume default 'draft' environment. If \u003cUser ID\u003e is not\nspecified, we are using \"-\". It’s up to the API caller to choose an\nappropriate \u003cSession ID\u003e. and \u003cUser Id\u003e. They can be a random numbers or\nsome type of user and session identifiers (preferably hashed). The length\nof the \u003cSession ID\u003e and \u003cUser ID\u003e must not exceed 36 characters.", + // "location": "path", + // "pattern": "^projects/[^/]+/agent/environments/[^/]+/users/[^/]+/sessions/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v2beta1/{+session}:detectIntent", + // "request": { + // "$ref": "GoogleCloudDialogflowV2beta1DetectIntentRequest" + // }, + // "response": { + // "$ref": "GoogleCloudDialogflowV2beta1DetectIntentResponse" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "dialogflow.projects.agent.environments.users.sessions.contexts.create": + +type ProjectsAgentEnvironmentsUsersSessionsContextsCreateCall struct { + s *Service + parent string + googleclouddialogflowv2beta1context *GoogleCloudDialogflowV2beta1Context + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Create: Creates a context. +func (r *ProjectsAgentEnvironmentsUsersSessionsContextsService) Create(parent string, googleclouddialogflowv2beta1context *GoogleCloudDialogflowV2beta1Context) *ProjectsAgentEnvironmentsUsersSessionsContextsCreateCall { + c := &ProjectsAgentEnvironmentsUsersSessionsContextsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.parent = parent + c.googleclouddialogflowv2beta1context = googleclouddialogflowv2beta1context + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsAgentEnvironmentsUsersSessionsContextsCreateCall) Fields(s ...googleapi.Field) *ProjectsAgentEnvironmentsUsersSessionsContextsCreateCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsAgentEnvironmentsUsersSessionsContextsCreateCall) Context(ctx context.Context) *ProjectsAgentEnvironmentsUsersSessionsContextsCreateCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsAgentEnvironmentsUsersSessionsContextsCreateCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsAgentEnvironmentsUsersSessionsContextsCreateCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowv2beta1context) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v2beta1/{+parent}/contexts") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("POST", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "parent": c.parent, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "dialogflow.projects.agent.environments.users.sessions.contexts.create" call. +// Exactly one of *GoogleCloudDialogflowV2beta1Context or error will be +// non-nil. Any non-2xx status code is an error. Response headers are in +// either *GoogleCloudDialogflowV2beta1Context.ServerResponse.Header or +// (if a response was returned at all) in +// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check +// whether the returned error was because http.StatusNotModified was +// returned. +func (c *ProjectsAgentEnvironmentsUsersSessionsContextsCreateCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowV2beta1Context, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &GoogleCloudDialogflowV2beta1Context{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Creates a context.", + // "flatPath": "v2beta1/projects/{projectsId}/agent/environments/{environmentsId}/users/{usersId}/sessions/{sessionsId}/contexts", + // "httpMethod": "POST", + // "id": "dialogflow.projects.agent.environments.users.sessions.contexts.create", + // "parameterOrder": [ + // "parent" + // ], + // "parameters": { + // "parent": { + // "description": "Required. The session to create a context for.\nFormat: `projects/\u003cProject ID\u003e/agent/sessions/\u003cSession ID\u003e` or\n`projects/\u003cProject ID\u003e/agent/environments/\u003cEnvironment ID\u003e/users/\u003cUser\nID\u003e/sessions/\u003cSession ID\u003e`. Note: Environments and users are under\nconstruction and will be available soon. If \u003cEnvironment ID\u003e is not\nspecified, we assume default 'draft' environment. If \u003cUser ID\u003e is not\nspecified, we assume default '-' user.", + // "location": "path", + // "pattern": "^projects/[^/]+/agent/environments/[^/]+/users/[^/]+/sessions/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v2beta1/{+parent}/contexts", + // "request": { + // "$ref": "GoogleCloudDialogflowV2beta1Context" + // }, + // "response": { + // "$ref": "GoogleCloudDialogflowV2beta1Context" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "dialogflow.projects.agent.environments.users.sessions.contexts.delete": + +type ProjectsAgentEnvironmentsUsersSessionsContextsDeleteCall struct { + s *Service + name string + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Delete: Deletes the specified context. +func (r *ProjectsAgentEnvironmentsUsersSessionsContextsService) Delete(name string) *ProjectsAgentEnvironmentsUsersSessionsContextsDeleteCall { + c := &ProjectsAgentEnvironmentsUsersSessionsContextsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsAgentEnvironmentsUsersSessionsContextsDeleteCall) Fields(s ...googleapi.Field) *ProjectsAgentEnvironmentsUsersSessionsContextsDeleteCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsAgentEnvironmentsUsersSessionsContextsDeleteCall) Context(ctx context.Context) *ProjectsAgentEnvironmentsUsersSessionsContextsDeleteCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsAgentEnvironmentsUsersSessionsContextsDeleteCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsAgentEnvironmentsUsersSessionsContextsDeleteCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v2beta1/{+name}") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("DELETE", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "dialogflow.projects.agent.environments.users.sessions.contexts.delete" call. +// Exactly one of *GoogleProtobufEmpty or error will be non-nil. Any +// non-2xx status code is an error. Response headers are in either +// *GoogleProtobufEmpty.ServerResponse.Header or (if a response was +// returned at all) in error.(*googleapi.Error).Header. Use +// googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *ProjectsAgentEnvironmentsUsersSessionsContextsDeleteCall) Do(opts ...googleapi.CallOption) (*GoogleProtobufEmpty, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &GoogleProtobufEmpty{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Deletes the specified context.", + // "flatPath": "v2beta1/projects/{projectsId}/agent/environments/{environmentsId}/users/{usersId}/sessions/{sessionsId}/contexts/{contextsId}", + // "httpMethod": "DELETE", + // "id": "dialogflow.projects.agent.environments.users.sessions.contexts.delete", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "Required. The name of the context to delete. Format:\n`projects/\u003cProject ID\u003e/agent/sessions/\u003cSession ID\u003e/contexts/\u003cContext ID\u003e`\nor `projects/\u003cProject ID\u003e/agent/environments/\u003cEnvironment ID\u003e/users/\u003cUser\nID\u003e/sessions/\u003cSession ID\u003e/contexts/\u003cContext ID\u003e`. Note: Environments and\nusers are under construction and will be available soon. If \u003cEnvironment\nID\u003e is not specified, we assume default 'draft' environment. If \u003cUser ID\u003e\nis not specified, we assume default\n'-' user.", + // "location": "path", + // "pattern": "^projects/[^/]+/agent/environments/[^/]+/users/[^/]+/sessions/[^/]+/contexts/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v2beta1/{+name}", + // "response": { + // "$ref": "GoogleProtobufEmpty" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "dialogflow.projects.agent.environments.users.sessions.contexts.get": + +type ProjectsAgentEnvironmentsUsersSessionsContextsGetCall struct { + s *Service + name string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// Get: Retrieves the specified context. +func (r *ProjectsAgentEnvironmentsUsersSessionsContextsService) Get(name string) *ProjectsAgentEnvironmentsUsersSessionsContextsGetCall { + c := &ProjectsAgentEnvironmentsUsersSessionsContextsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsAgentEnvironmentsUsersSessionsContextsGetCall) Fields(s ...googleapi.Field) *ProjectsAgentEnvironmentsUsersSessionsContextsGetCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// IfNoneMatch sets the optional parameter which makes the operation +// fail if the object's ETag matches the given value. This is useful for +// getting updates only after the object has changed since the last +// request. Use googleapi.IsNotModified to check whether the response +// error from Do is the result of In-None-Match. +func (c *ProjectsAgentEnvironmentsUsersSessionsContextsGetCall) IfNoneMatch(entityTag string) *ProjectsAgentEnvironmentsUsersSessionsContextsGetCall { + c.ifNoneMatch_ = entityTag + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsAgentEnvironmentsUsersSessionsContextsGetCall) Context(ctx context.Context) *ProjectsAgentEnvironmentsUsersSessionsContextsGetCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsAgentEnvironmentsUsersSessionsContextsGetCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsAgentEnvironmentsUsersSessionsContextsGetCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + if c.ifNoneMatch_ != "" { + reqHeaders.Set("If-None-Match", c.ifNoneMatch_) + } + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v2beta1/{+name}") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("GET", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "dialogflow.projects.agent.environments.users.sessions.contexts.get" call. +// Exactly one of *GoogleCloudDialogflowV2beta1Context or error will be +// non-nil. Any non-2xx status code is an error. Response headers are in +// either *GoogleCloudDialogflowV2beta1Context.ServerResponse.Header or +// (if a response was returned at all) in +// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check +// whether the returned error was because http.StatusNotModified was +// returned. +func (c *ProjectsAgentEnvironmentsUsersSessionsContextsGetCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowV2beta1Context, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &GoogleCloudDialogflowV2beta1Context{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Retrieves the specified context.", + // "flatPath": "v2beta1/projects/{projectsId}/agent/environments/{environmentsId}/users/{usersId}/sessions/{sessionsId}/contexts/{contextsId}", + // "httpMethod": "GET", + // "id": "dialogflow.projects.agent.environments.users.sessions.contexts.get", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "Required. The name of the context. Format:\n`projects/\u003cProject ID\u003e/agent/sessions/\u003cSession ID\u003e/contexts/\u003cContext ID\u003e`\nor `projects/\u003cProject ID\u003e/agent/environments/\u003cEnvironment ID\u003e/users/\u003cUser\nID\u003e/sessions/\u003cSession ID\u003e/contexts/\u003cContext ID\u003e`. Note: Environments and\nusers are under construction and will be available soon. If \u003cEnvironment\nID\u003e is not specified, we assume default 'draft' environment. If \u003cUser ID\u003e\nis not specified, we assume default '-' user.", + // "location": "path", + // "pattern": "^projects/[^/]+/agent/environments/[^/]+/users/[^/]+/sessions/[^/]+/contexts/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v2beta1/{+name}", + // "response": { + // "$ref": "GoogleCloudDialogflowV2beta1Context" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "dialogflow.projects.agent.environments.users.sessions.contexts.list": + +type ProjectsAgentEnvironmentsUsersSessionsContextsListCall struct { + s *Service + parent string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// List: Returns the list of all contexts in the specified session. +func (r *ProjectsAgentEnvironmentsUsersSessionsContextsService) List(parent string) *ProjectsAgentEnvironmentsUsersSessionsContextsListCall { + c := &ProjectsAgentEnvironmentsUsersSessionsContextsListCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.parent = parent + return c +} + +// PageSize sets the optional parameter "pageSize": The maximum number +// of items to return in a single page. By +// default 100 and at most 1000. +func (c *ProjectsAgentEnvironmentsUsersSessionsContextsListCall) PageSize(pageSize int64) *ProjectsAgentEnvironmentsUsersSessionsContextsListCall { + c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) + return c +} + +// PageToken sets the optional parameter "pageToken": The +// next_page_token value returned from a previous list request. +func (c *ProjectsAgentEnvironmentsUsersSessionsContextsListCall) PageToken(pageToken string) *ProjectsAgentEnvironmentsUsersSessionsContextsListCall { + c.urlParams_.Set("pageToken", pageToken) + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsAgentEnvironmentsUsersSessionsContextsListCall) Fields(s ...googleapi.Field) *ProjectsAgentEnvironmentsUsersSessionsContextsListCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// IfNoneMatch sets the optional parameter which makes the operation +// fail if the object's ETag matches the given value. This is useful for +// getting updates only after the object has changed since the last +// request. Use googleapi.IsNotModified to check whether the response +// error from Do is the result of In-None-Match. +func (c *ProjectsAgentEnvironmentsUsersSessionsContextsListCall) IfNoneMatch(entityTag string) *ProjectsAgentEnvironmentsUsersSessionsContextsListCall { + c.ifNoneMatch_ = entityTag + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsAgentEnvironmentsUsersSessionsContextsListCall) Context(ctx context.Context) *ProjectsAgentEnvironmentsUsersSessionsContextsListCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsAgentEnvironmentsUsersSessionsContextsListCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsAgentEnvironmentsUsersSessionsContextsListCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + if c.ifNoneMatch_ != "" { + reqHeaders.Set("If-None-Match", c.ifNoneMatch_) + } + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v2beta1/{+parent}/contexts") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("GET", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "parent": c.parent, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "dialogflow.projects.agent.environments.users.sessions.contexts.list" call. +// Exactly one of *GoogleCloudDialogflowV2beta1ListContextsResponse or +// error will be non-nil. Any non-2xx status code is an error. Response +// headers are in either +// *GoogleCloudDialogflowV2beta1ListContextsResponse.ServerResponse.Heade +// r or (if a response was returned at all) in +// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check +// whether the returned error was because http.StatusNotModified was +// returned. +func (c *ProjectsAgentEnvironmentsUsersSessionsContextsListCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowV2beta1ListContextsResponse, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &GoogleCloudDialogflowV2beta1ListContextsResponse{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Returns the list of all contexts in the specified session.", + // "flatPath": "v2beta1/projects/{projectsId}/agent/environments/{environmentsId}/users/{usersId}/sessions/{sessionsId}/contexts", + // "httpMethod": "GET", + // "id": "dialogflow.projects.agent.environments.users.sessions.contexts.list", + // "parameterOrder": [ + // "parent" + // ], + // "parameters": { + // "pageSize": { + // "description": "Optional. The maximum number of items to return in a single page. By\ndefault 100 and at most 1000.", + // "format": "int32", + // "location": "query", + // "type": "integer" + // }, + // "pageToken": { + // "description": "Optional. The next_page_token value returned from a previous list request.", + // "location": "query", + // "type": "string" + // }, + // "parent": { + // "description": "Required. The session to list all contexts from.\nFormat: `projects/\u003cProject ID\u003e/agent/sessions/\u003cSession ID\u003e` or\n`projects/\u003cProject ID\u003e/agent/environments/\u003cEnvironment ID\u003e/users/\u003cUser\nID\u003e/sessions/\u003cSession ID\u003e`. Note: Environments and users are under\nconstruction and will be available soon. If \u003cEnvironment ID\u003e is not\nspecified, we assume default 'draft' environment. If \u003cUser ID\u003e is not\nspecified, we assume default '-' user.", + // "location": "path", + // "pattern": "^projects/[^/]+/agent/environments/[^/]+/users/[^/]+/sessions/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v2beta1/{+parent}/contexts", + // "response": { + // "$ref": "GoogleCloudDialogflowV2beta1ListContextsResponse" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// Pages invokes f for each page of results. +// A non-nil error returned from f will halt the iteration. +// The provided context supersedes any context provided to the Context method. +func (c *ProjectsAgentEnvironmentsUsersSessionsContextsListCall) Pages(ctx context.Context, f func(*GoogleCloudDialogflowV2beta1ListContextsResponse) error) error { + c.ctx_ = ctx + defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point + for { + x, err := c.Do() + if err != nil { + return err + } + if err := f(x); err != nil { + return err + } + if x.NextPageToken == "" { + return nil + } + c.PageToken(x.NextPageToken) + } +} + +// method id "dialogflow.projects.agent.environments.users.sessions.contexts.patch": + +type ProjectsAgentEnvironmentsUsersSessionsContextsPatchCall struct { + s *Service + nameid string + googleclouddialogflowv2beta1context *GoogleCloudDialogflowV2beta1Context + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Patch: Updates the specified context. +func (r *ProjectsAgentEnvironmentsUsersSessionsContextsService) Patch(nameid string, googleclouddialogflowv2beta1context *GoogleCloudDialogflowV2beta1Context) *ProjectsAgentEnvironmentsUsersSessionsContextsPatchCall { + c := &ProjectsAgentEnvironmentsUsersSessionsContextsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.nameid = nameid + c.googleclouddialogflowv2beta1context = googleclouddialogflowv2beta1context + return c +} + +// UpdateMask sets the optional parameter "updateMask": The mask to +// control which fields get updated. +func (c *ProjectsAgentEnvironmentsUsersSessionsContextsPatchCall) UpdateMask(updateMask string) *ProjectsAgentEnvironmentsUsersSessionsContextsPatchCall { + c.urlParams_.Set("updateMask", updateMask) + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsAgentEnvironmentsUsersSessionsContextsPatchCall) Fields(s ...googleapi.Field) *ProjectsAgentEnvironmentsUsersSessionsContextsPatchCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsAgentEnvironmentsUsersSessionsContextsPatchCall) Context(ctx context.Context) *ProjectsAgentEnvironmentsUsersSessionsContextsPatchCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsAgentEnvironmentsUsersSessionsContextsPatchCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsAgentEnvironmentsUsersSessionsContextsPatchCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowv2beta1context) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v2beta1/{+name}") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("PATCH", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.nameid, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "dialogflow.projects.agent.environments.users.sessions.contexts.patch" call. +// Exactly one of *GoogleCloudDialogflowV2beta1Context or error will be +// non-nil. Any non-2xx status code is an error. Response headers are in +// either *GoogleCloudDialogflowV2beta1Context.ServerResponse.Header or +// (if a response was returned at all) in +// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check +// whether the returned error was because http.StatusNotModified was +// returned. +func (c *ProjectsAgentEnvironmentsUsersSessionsContextsPatchCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowV2beta1Context, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &GoogleCloudDialogflowV2beta1Context{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Updates the specified context.", + // "flatPath": "v2beta1/projects/{projectsId}/agent/environments/{environmentsId}/users/{usersId}/sessions/{sessionsId}/contexts/{contextsId}", + // "httpMethod": "PATCH", + // "id": "dialogflow.projects.agent.environments.users.sessions.contexts.patch", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "Required. The unique identifier of the context. Format:\n`projects/\u003cProject ID\u003e/agent/sessions/\u003cSession ID\u003e/contexts/\u003cContext ID\u003e`,\nor\n`projects/\u003cProject ID\u003e/agent/environments/\u003cEnvironment ID\u003e/users/\u003cUser\nID\u003e/sessions/\u003cSession ID\u003e/contexts/\u003cContext ID\u003e`. Note: Environments and\nusers are under construction and will be available soon. The Context ID is\nalways converted to lowercase. If \u003cEnvironment ID\u003e is not specified, we\nassume default 'draft' environment. If \u003cUser ID\u003e is not specified, we\nassume default '-' user.", + // "location": "path", + // "pattern": "^projects/[^/]+/agent/environments/[^/]+/users/[^/]+/sessions/[^/]+/contexts/[^/]+$", + // "required": true, + // "type": "string" + // }, + // "updateMask": { + // "description": "Optional. The mask to control which fields get updated.", + // "format": "google-fieldmask", + // "location": "query", + // "type": "string" + // } + // }, + // "path": "v2beta1/{+name}", + // "request": { + // "$ref": "GoogleCloudDialogflowV2beta1Context" + // }, + // "response": { + // "$ref": "GoogleCloudDialogflowV2beta1Context" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "dialogflow.projects.agent.environments.users.sessions.entityTypes.create": + +type ProjectsAgentEnvironmentsUsersSessionsEntityTypesCreateCall struct { + s *Service + parent string + googleclouddialogflowv2beta1sessionentitytype *GoogleCloudDialogflowV2beta1SessionEntityType + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Create: Creates a session entity type. +func (r *ProjectsAgentEnvironmentsUsersSessionsEntityTypesService) Create(parent string, googleclouddialogflowv2beta1sessionentitytype *GoogleCloudDialogflowV2beta1SessionEntityType) *ProjectsAgentEnvironmentsUsersSessionsEntityTypesCreateCall { + c := &ProjectsAgentEnvironmentsUsersSessionsEntityTypesCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.parent = parent + c.googleclouddialogflowv2beta1sessionentitytype = googleclouddialogflowv2beta1sessionentitytype + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsAgentEnvironmentsUsersSessionsEntityTypesCreateCall) Fields(s ...googleapi.Field) *ProjectsAgentEnvironmentsUsersSessionsEntityTypesCreateCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsAgentEnvironmentsUsersSessionsEntityTypesCreateCall) Context(ctx context.Context) *ProjectsAgentEnvironmentsUsersSessionsEntityTypesCreateCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsAgentEnvironmentsUsersSessionsEntityTypesCreateCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsAgentEnvironmentsUsersSessionsEntityTypesCreateCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowv2beta1sessionentitytype) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v2beta1/{+parent}/entityTypes") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("POST", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "parent": c.parent, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "dialogflow.projects.agent.environments.users.sessions.entityTypes.create" call. +// Exactly one of *GoogleCloudDialogflowV2beta1SessionEntityType or +// error will be non-nil. Any non-2xx status code is an error. Response +// headers are in either +// *GoogleCloudDialogflowV2beta1SessionEntityType.ServerResponse.Header +// or (if a response was returned at all) in +// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check +// whether the returned error was because http.StatusNotModified was +// returned. +func (c *ProjectsAgentEnvironmentsUsersSessionsEntityTypesCreateCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowV2beta1SessionEntityType, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &GoogleCloudDialogflowV2beta1SessionEntityType{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Creates a session entity type.", + // "flatPath": "v2beta1/projects/{projectsId}/agent/environments/{environmentsId}/users/{usersId}/sessions/{sessionsId}/entityTypes", + // "httpMethod": "POST", + // "id": "dialogflow.projects.agent.environments.users.sessions.entityTypes.create", + // "parameterOrder": [ + // "parent" + // ], + // "parameters": { + // "parent": { + // "description": "Required. The session to create a session entity type for.\nFormat: `projects/\u003cProject ID\u003e/agent/sessions/\u003cSession ID\u003e` or\n`projects/\u003cProject ID\u003e/agent/environments/\u003cEnvironment ID\u003e/users/\u003cUser ID\u003e/\nsessions/\u003cSession ID\u003e`.\nNote: Environments and users are under construction and will be available\nsoon. If \u003cEnvironment ID\u003e is not specified, we assume default 'draft'\nenvironment. If \u003cUser ID\u003e is not specified, we assume default '-' user.", + // "location": "path", + // "pattern": "^projects/[^/]+/agent/environments/[^/]+/users/[^/]+/sessions/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v2beta1/{+parent}/entityTypes", + // "request": { + // "$ref": "GoogleCloudDialogflowV2beta1SessionEntityType" + // }, + // "response": { + // "$ref": "GoogleCloudDialogflowV2beta1SessionEntityType" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "dialogflow.projects.agent.environments.users.sessions.entityTypes.delete": + +type ProjectsAgentEnvironmentsUsersSessionsEntityTypesDeleteCall struct { + s *Service + name string + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Delete: Deletes the specified session entity type. +func (r *ProjectsAgentEnvironmentsUsersSessionsEntityTypesService) Delete(name string) *ProjectsAgentEnvironmentsUsersSessionsEntityTypesDeleteCall { + c := &ProjectsAgentEnvironmentsUsersSessionsEntityTypesDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsAgentEnvironmentsUsersSessionsEntityTypesDeleteCall) Fields(s ...googleapi.Field) *ProjectsAgentEnvironmentsUsersSessionsEntityTypesDeleteCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsAgentEnvironmentsUsersSessionsEntityTypesDeleteCall) Context(ctx context.Context) *ProjectsAgentEnvironmentsUsersSessionsEntityTypesDeleteCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsAgentEnvironmentsUsersSessionsEntityTypesDeleteCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsAgentEnvironmentsUsersSessionsEntityTypesDeleteCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v2beta1/{+name}") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("DELETE", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "dialogflow.projects.agent.environments.users.sessions.entityTypes.delete" call. +// Exactly one of *GoogleProtobufEmpty or error will be non-nil. Any +// non-2xx status code is an error. Response headers are in either +// *GoogleProtobufEmpty.ServerResponse.Header or (if a response was +// returned at all) in error.(*googleapi.Error).Header. Use +// googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *ProjectsAgentEnvironmentsUsersSessionsEntityTypesDeleteCall) Do(opts ...googleapi.CallOption) (*GoogleProtobufEmpty, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &GoogleProtobufEmpty{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Deletes the specified session entity type.", + // "flatPath": "v2beta1/projects/{projectsId}/agent/environments/{environmentsId}/users/{usersId}/sessions/{sessionsId}/entityTypes/{entityTypesId}", + // "httpMethod": "DELETE", + // "id": "dialogflow.projects.agent.environments.users.sessions.entityTypes.delete", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "Required. The name of the entity type to delete. Format:\n`projects/\u003cProject ID\u003e/agent/sessions/\u003cSession ID\u003e/entityTypes/\u003cEntity Type\nDisplay Name\u003e` or `projects/\u003cProject ID\u003e/agent/environments/\u003cEnvironment\nID\u003e/users/\u003cUser ID\u003e/sessions/\u003cSession ID\u003e/entityTypes/\u003cEntity Type Display\nName\u003e`.\nNote: Environments and users are under construction and will be available\nsoon. If \u003cEnvironment ID\u003e is not specified, we assume default 'draft'\nenvironment. If \u003cUser ID\u003e is not specified, we assume default '-' user.", + // "location": "path", + // "pattern": "^projects/[^/]+/agent/environments/[^/]+/users/[^/]+/sessions/[^/]+/entityTypes/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v2beta1/{+name}", + // "response": { + // "$ref": "GoogleProtobufEmpty" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "dialogflow.projects.agent.environments.users.sessions.entityTypes.get": + +type ProjectsAgentEnvironmentsUsersSessionsEntityTypesGetCall struct { + s *Service + name string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// Get: Retrieves the specified session entity type. +func (r *ProjectsAgentEnvironmentsUsersSessionsEntityTypesService) Get(name string) *ProjectsAgentEnvironmentsUsersSessionsEntityTypesGetCall { + c := &ProjectsAgentEnvironmentsUsersSessionsEntityTypesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsAgentEnvironmentsUsersSessionsEntityTypesGetCall) Fields(s ...googleapi.Field) *ProjectsAgentEnvironmentsUsersSessionsEntityTypesGetCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// IfNoneMatch sets the optional parameter which makes the operation +// fail if the object's ETag matches the given value. This is useful for +// getting updates only after the object has changed since the last +// request. Use googleapi.IsNotModified to check whether the response +// error from Do is the result of In-None-Match. +func (c *ProjectsAgentEnvironmentsUsersSessionsEntityTypesGetCall) IfNoneMatch(entityTag string) *ProjectsAgentEnvironmentsUsersSessionsEntityTypesGetCall { + c.ifNoneMatch_ = entityTag + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsAgentEnvironmentsUsersSessionsEntityTypesGetCall) Context(ctx context.Context) *ProjectsAgentEnvironmentsUsersSessionsEntityTypesGetCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsAgentEnvironmentsUsersSessionsEntityTypesGetCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsAgentEnvironmentsUsersSessionsEntityTypesGetCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + if c.ifNoneMatch_ != "" { + reqHeaders.Set("If-None-Match", c.ifNoneMatch_) + } + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v2beta1/{+name}") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("GET", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "dialogflow.projects.agent.environments.users.sessions.entityTypes.get" call. +// Exactly one of *GoogleCloudDialogflowV2beta1SessionEntityType or +// error will be non-nil. Any non-2xx status code is an error. Response +// headers are in either +// *GoogleCloudDialogflowV2beta1SessionEntityType.ServerResponse.Header +// or (if a response was returned at all) in +// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check +// whether the returned error was because http.StatusNotModified was +// returned. +func (c *ProjectsAgentEnvironmentsUsersSessionsEntityTypesGetCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowV2beta1SessionEntityType, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &GoogleCloudDialogflowV2beta1SessionEntityType{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Retrieves the specified session entity type.", + // "flatPath": "v2beta1/projects/{projectsId}/agent/environments/{environmentsId}/users/{usersId}/sessions/{sessionsId}/entityTypes/{entityTypesId}", + // "httpMethod": "GET", + // "id": "dialogflow.projects.agent.environments.users.sessions.entityTypes.get", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "Required. The name of the session entity type. Format:\n`projects/\u003cProject ID\u003e/agent/sessions/\u003cSession ID\u003e/entityTypes/\u003cEntity Type\nDisplay Name\u003e` or `projects/\u003cProject ID\u003e/agent/environments/\u003cEnvironment\nID\u003e/users/\u003cUser ID\u003e/sessions/\u003cSession ID\u003e/\nentityTypes/\u003cEntity Type Display Name\u003e`.\nNote: Environments and users re under construction and will be available\nsoon. If \u003cEnvironment ID\u003e is not specified, we assume default 'draft'\nenvironment. If \u003cUser ID\u003e is not specified, we assume default '-' user.", + // "location": "path", + // "pattern": "^projects/[^/]+/agent/environments/[^/]+/users/[^/]+/sessions/[^/]+/entityTypes/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v2beta1/{+name}", + // "response": { + // "$ref": "GoogleCloudDialogflowV2beta1SessionEntityType" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "dialogflow.projects.agent.environments.users.sessions.entityTypes.list": + +type ProjectsAgentEnvironmentsUsersSessionsEntityTypesListCall struct { + s *Service + parent string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// List: Returns the list of all session entity types in the specified +// session. +func (r *ProjectsAgentEnvironmentsUsersSessionsEntityTypesService) List(parent string) *ProjectsAgentEnvironmentsUsersSessionsEntityTypesListCall { + c := &ProjectsAgentEnvironmentsUsersSessionsEntityTypesListCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.parent = parent + return c +} + +// PageSize sets the optional parameter "pageSize": The maximum number +// of items to return in a single page. By +// default 100 and at most 1000. +func (c *ProjectsAgentEnvironmentsUsersSessionsEntityTypesListCall) PageSize(pageSize int64) *ProjectsAgentEnvironmentsUsersSessionsEntityTypesListCall { + c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) + return c +} + +// PageToken sets the optional parameter "pageToken": The +// next_page_token value returned from a previous list request. +func (c *ProjectsAgentEnvironmentsUsersSessionsEntityTypesListCall) PageToken(pageToken string) *ProjectsAgentEnvironmentsUsersSessionsEntityTypesListCall { + c.urlParams_.Set("pageToken", pageToken) + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsAgentEnvironmentsUsersSessionsEntityTypesListCall) Fields(s ...googleapi.Field) *ProjectsAgentEnvironmentsUsersSessionsEntityTypesListCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// IfNoneMatch sets the optional parameter which makes the operation +// fail if the object's ETag matches the given value. This is useful for +// getting updates only after the object has changed since the last +// request. Use googleapi.IsNotModified to check whether the response +// error from Do is the result of In-None-Match. +func (c *ProjectsAgentEnvironmentsUsersSessionsEntityTypesListCall) IfNoneMatch(entityTag string) *ProjectsAgentEnvironmentsUsersSessionsEntityTypesListCall { + c.ifNoneMatch_ = entityTag + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsAgentEnvironmentsUsersSessionsEntityTypesListCall) Context(ctx context.Context) *ProjectsAgentEnvironmentsUsersSessionsEntityTypesListCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsAgentEnvironmentsUsersSessionsEntityTypesListCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsAgentEnvironmentsUsersSessionsEntityTypesListCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + if c.ifNoneMatch_ != "" { + reqHeaders.Set("If-None-Match", c.ifNoneMatch_) + } + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v2beta1/{+parent}/entityTypes") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("GET", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "parent": c.parent, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "dialogflow.projects.agent.environments.users.sessions.entityTypes.list" call. +// Exactly one of +// *GoogleCloudDialogflowV2beta1ListSessionEntityTypesResponse or error +// will be non-nil. Any non-2xx status code is an error. Response +// headers are in either +// *GoogleCloudDialogflowV2beta1ListSessionEntityTypesResponse.ServerResp +// onse.Header or (if a response was returned at all) in +// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check +// whether the returned error was because http.StatusNotModified was +// returned. +func (c *ProjectsAgentEnvironmentsUsersSessionsEntityTypesListCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowV2beta1ListSessionEntityTypesResponse, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &GoogleCloudDialogflowV2beta1ListSessionEntityTypesResponse{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Returns the list of all session entity types in the specified session.", + // "flatPath": "v2beta1/projects/{projectsId}/agent/environments/{environmentsId}/users/{usersId}/sessions/{sessionsId}/entityTypes", + // "httpMethod": "GET", + // "id": "dialogflow.projects.agent.environments.users.sessions.entityTypes.list", + // "parameterOrder": [ + // "parent" + // ], + // "parameters": { + // "pageSize": { + // "description": "Optional. The maximum number of items to return in a single page. By\ndefault 100 and at most 1000.", + // "format": "int32", + // "location": "query", + // "type": "integer" + // }, + // "pageToken": { + // "description": "Optional. The next_page_token value returned from a previous list request.", + // "location": "query", + // "type": "string" + // }, + // "parent": { + // "description": "Required. The session to list all session entity types from.\nFormat: `projects/\u003cProject ID\u003e/agent/sessions/\u003cSession ID\u003e` or\n`projects/\u003cProject ID\u003e/agent/environments/\u003cEnvironment ID\u003e/users/\u003cUser ID\u003e/\nsessions/\u003cSession ID\u003e`.\nNote: Environments and users are under construction and will be available\nsoon. If \u003cEnvironment ID\u003e is not specified, we assume default 'draft'\nenvironment. If \u003cUser ID\u003e is not specified, we assume default '-' user.", + // "location": "path", + // "pattern": "^projects/[^/]+/agent/environments/[^/]+/users/[^/]+/sessions/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v2beta1/{+parent}/entityTypes", + // "response": { + // "$ref": "GoogleCloudDialogflowV2beta1ListSessionEntityTypesResponse" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// Pages invokes f for each page of results. +// A non-nil error returned from f will halt the iteration. +// The provided context supersedes any context provided to the Context method. +func (c *ProjectsAgentEnvironmentsUsersSessionsEntityTypesListCall) Pages(ctx context.Context, f func(*GoogleCloudDialogflowV2beta1ListSessionEntityTypesResponse) error) error { + c.ctx_ = ctx + defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point + for { + x, err := c.Do() + if err != nil { + return err + } + if err := f(x); err != nil { + return err + } + if x.NextPageToken == "" { + return nil + } + c.PageToken(x.NextPageToken) + } +} + +// method id "dialogflow.projects.agent.environments.users.sessions.entityTypes.patch": + +type ProjectsAgentEnvironmentsUsersSessionsEntityTypesPatchCall struct { + s *Service + nameid string + googleclouddialogflowv2beta1sessionentitytype *GoogleCloudDialogflowV2beta1SessionEntityType + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Patch: Updates the specified session entity type. +func (r *ProjectsAgentEnvironmentsUsersSessionsEntityTypesService) Patch(nameid string, googleclouddialogflowv2beta1sessionentitytype *GoogleCloudDialogflowV2beta1SessionEntityType) *ProjectsAgentEnvironmentsUsersSessionsEntityTypesPatchCall { + c := &ProjectsAgentEnvironmentsUsersSessionsEntityTypesPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.nameid = nameid + c.googleclouddialogflowv2beta1sessionentitytype = googleclouddialogflowv2beta1sessionentitytype + return c +} + +// UpdateMask sets the optional parameter "updateMask": The mask to +// control which fields get updated. +func (c *ProjectsAgentEnvironmentsUsersSessionsEntityTypesPatchCall) UpdateMask(updateMask string) *ProjectsAgentEnvironmentsUsersSessionsEntityTypesPatchCall { + c.urlParams_.Set("updateMask", updateMask) + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsAgentEnvironmentsUsersSessionsEntityTypesPatchCall) Fields(s ...googleapi.Field) *ProjectsAgentEnvironmentsUsersSessionsEntityTypesPatchCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsAgentEnvironmentsUsersSessionsEntityTypesPatchCall) Context(ctx context.Context) *ProjectsAgentEnvironmentsUsersSessionsEntityTypesPatchCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsAgentEnvironmentsUsersSessionsEntityTypesPatchCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsAgentEnvironmentsUsersSessionsEntityTypesPatchCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowv2beta1sessionentitytype) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v2beta1/{+name}") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("PATCH", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.nameid, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "dialogflow.projects.agent.environments.users.sessions.entityTypes.patch" call. +// Exactly one of *GoogleCloudDialogflowV2beta1SessionEntityType or +// error will be non-nil. Any non-2xx status code is an error. Response +// headers are in either +// *GoogleCloudDialogflowV2beta1SessionEntityType.ServerResponse.Header +// or (if a response was returned at all) in +// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check +// whether the returned error was because http.StatusNotModified was +// returned. +func (c *ProjectsAgentEnvironmentsUsersSessionsEntityTypesPatchCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowV2beta1SessionEntityType, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &GoogleCloudDialogflowV2beta1SessionEntityType{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Updates the specified session entity type.", + // "flatPath": "v2beta1/projects/{projectsId}/agent/environments/{environmentsId}/users/{usersId}/sessions/{sessionsId}/entityTypes/{entityTypesId}", + // "httpMethod": "PATCH", + // "id": "dialogflow.projects.agent.environments.users.sessions.entityTypes.patch", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "Required. The unique identifier of this session entity type. Format:\n`projects/\u003cProject ID\u003e/agent/sessions/\u003cSession ID\u003e/entityTypes/\u003cEntity Type\nDisplay Name\u003e`, or\n`projects/\u003cProject ID\u003e/agent/environments/\u003cEnvironment ID\u003e/users/\u003cUser\nID\u003e/sessions\n/\u003cSession ID\u003e/entityTypes/\u003cEntity Type Display Name\u003e`.\nNote: Environments and users are under construction and will be available\nsoon. If \u003cEnvironment ID\u003e is not specified, we assume default 'draft'\nenvironment. If \u003cUser ID\u003e is not specified, we assume default '-' user.", + // "location": "path", + // "pattern": "^projects/[^/]+/agent/environments/[^/]+/users/[^/]+/sessions/[^/]+/entityTypes/[^/]+$", + // "required": true, + // "type": "string" + // }, + // "updateMask": { + // "description": "Optional. The mask to control which fields get updated.", + // "format": "google-fieldmask", + // "location": "query", + // "type": "string" + // } + // }, + // "path": "v2beta1/{+name}", + // "request": { + // "$ref": "GoogleCloudDialogflowV2beta1SessionEntityType" + // }, + // "response": { + // "$ref": "GoogleCloudDialogflowV2beta1SessionEntityType" // }, // "scopes": [ // "https://www.googleapis.com/auth/cloud-platform" @@ -5741,21 +9255,21 @@ func (c *ProjectsAgentEntityTypesEntitiesBatchUpdateCall) Do(opts ...googleapi.C // method id "dialogflow.projects.agent.intents.batchDelete": type ProjectsAgentIntentsBatchDeleteCall struct { - s *Service - parent string - batchdeleteintentsrequest *BatchDeleteIntentsRequest - urlParams_ gensupport.URLParams - ctx_ context.Context - header_ http.Header + s *Service + parent string + googleclouddialogflowv2beta1batchdeleteintentsrequest *GoogleCloudDialogflowV2beta1BatchDeleteIntentsRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header } // BatchDelete: Deletes intents in the specified agent. // // Operation -func (r *ProjectsAgentIntentsService) BatchDelete(parent string, batchdeleteintentsrequest *BatchDeleteIntentsRequest) *ProjectsAgentIntentsBatchDeleteCall { +func (r *ProjectsAgentIntentsService) BatchDelete(parent string, googleclouddialogflowv2beta1batchdeleteintentsrequest *GoogleCloudDialogflowV2beta1BatchDeleteIntentsRequest) *ProjectsAgentIntentsBatchDeleteCall { c := &ProjectsAgentIntentsBatchDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.parent = parent - c.batchdeleteintentsrequest = batchdeleteintentsrequest + c.googleclouddialogflowv2beta1batchdeleteintentsrequest = googleclouddialogflowv2beta1batchdeleteintentsrequest return c } @@ -5791,7 +9305,7 @@ func (c *ProjectsAgentIntentsBatchDeleteCall) doRequest(alt string) (*http.Respo } reqHeaders.Set("User-Agent", c.s.userAgent()) var body io.Reader = nil - body, err := googleapi.WithoutDataWrapper.JSONReader(c.batchdeleteintentsrequest) + body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowv2beta1batchdeleteintentsrequest) if err != nil { return nil, err } @@ -5808,13 +9322,13 @@ func (c *ProjectsAgentIntentsBatchDeleteCall) doRequest(alt string) (*http.Respo } // Do executes the "dialogflow.projects.agent.intents.batchDelete" call. -// Exactly one of *Operation or error will be non-nil. Any non-2xx -// status code is an error. Response headers are in either -// *Operation.ServerResponse.Header or (if a response was returned at -// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified -// to check whether the returned error was because -// http.StatusNotModified was returned. -func (c *ProjectsAgentIntentsBatchDeleteCall) Do(opts ...googleapi.CallOption) (*Operation, error) { +// Exactly one of *GoogleLongrunningOperation or error will be non-nil. +// Any non-2xx status code is an error. Response headers are in either +// *GoogleLongrunningOperation.ServerResponse.Header or (if a response +// was returned at all) in error.(*googleapi.Error).Header. Use +// googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *ProjectsAgentIntentsBatchDeleteCall) Do(opts ...googleapi.CallOption) (*GoogleLongrunningOperation, error) { gensupport.SetOptions(c.urlParams_, opts...) res, err := c.doRequest("json") if res != nil && res.StatusCode == http.StatusNotModified { @@ -5833,7 +9347,7 @@ func (c *ProjectsAgentIntentsBatchDeleteCall) Do(opts ...googleapi.CallOption) ( if err := googleapi.CheckResponse(res); err != nil { return nil, err } - ret := &Operation{ + ret := &GoogleLongrunningOperation{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, @@ -5863,10 +9377,10 @@ func (c *ProjectsAgentIntentsBatchDeleteCall) Do(opts ...googleapi.CallOption) ( // }, // "path": "v2beta1/{+parent}/intents:batchDelete", // "request": { - // "$ref": "BatchDeleteIntentsRequest" + // "$ref": "GoogleCloudDialogflowV2beta1BatchDeleteIntentsRequest" // }, // "response": { - // "$ref": "Operation" + // "$ref": "GoogleLongrunningOperation" // }, // "scopes": [ // "https://www.googleapis.com/auth/cloud-platform" @@ -5878,22 +9392,22 @@ func (c *ProjectsAgentIntentsBatchDeleteCall) Do(opts ...googleapi.CallOption) ( // method id "dialogflow.projects.agent.intents.batchUpdate": type ProjectsAgentIntentsBatchUpdateCall struct { - s *Service - parent string - batchupdateintentsrequest *BatchUpdateIntentsRequest - urlParams_ gensupport.URLParams - ctx_ context.Context - header_ http.Header + s *Service + parent string + googleclouddialogflowv2beta1batchupdateintentsrequest *GoogleCloudDialogflowV2beta1BatchUpdateIntentsRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header } // BatchUpdate: Updates/Creates multiple intents in the specified // agent. // // Operation -func (r *ProjectsAgentIntentsService) BatchUpdate(parent string, batchupdateintentsrequest *BatchUpdateIntentsRequest) *ProjectsAgentIntentsBatchUpdateCall { +func (r *ProjectsAgentIntentsService) BatchUpdate(parent string, googleclouddialogflowv2beta1batchupdateintentsrequest *GoogleCloudDialogflowV2beta1BatchUpdateIntentsRequest) *ProjectsAgentIntentsBatchUpdateCall { c := &ProjectsAgentIntentsBatchUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.parent = parent - c.batchupdateintentsrequest = batchupdateintentsrequest + c.googleclouddialogflowv2beta1batchupdateintentsrequest = googleclouddialogflowv2beta1batchupdateintentsrequest return c } @@ -5929,7 +9443,7 @@ func (c *ProjectsAgentIntentsBatchUpdateCall) doRequest(alt string) (*http.Respo } reqHeaders.Set("User-Agent", c.s.userAgent()) var body io.Reader = nil - body, err := googleapi.WithoutDataWrapper.JSONReader(c.batchupdateintentsrequest) + body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowv2beta1batchupdateintentsrequest) if err != nil { return nil, err } @@ -5946,13 +9460,13 @@ func (c *ProjectsAgentIntentsBatchUpdateCall) doRequest(alt string) (*http.Respo } // Do executes the "dialogflow.projects.agent.intents.batchUpdate" call. -// Exactly one of *Operation or error will be non-nil. Any non-2xx -// status code is an error. Response headers are in either -// *Operation.ServerResponse.Header or (if a response was returned at -// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified -// to check whether the returned error was because -// http.StatusNotModified was returned. -func (c *ProjectsAgentIntentsBatchUpdateCall) Do(opts ...googleapi.CallOption) (*Operation, error) { +// Exactly one of *GoogleLongrunningOperation or error will be non-nil. +// Any non-2xx status code is an error. Response headers are in either +// *GoogleLongrunningOperation.ServerResponse.Header or (if a response +// was returned at all) in error.(*googleapi.Error).Header. Use +// googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *ProjectsAgentIntentsBatchUpdateCall) Do(opts ...googleapi.CallOption) (*GoogleLongrunningOperation, error) { gensupport.SetOptions(c.urlParams_, opts...) res, err := c.doRequest("json") if res != nil && res.StatusCode == http.StatusNotModified { @@ -5971,7 +9485,7 @@ func (c *ProjectsAgentIntentsBatchUpdateCall) Do(opts ...googleapi.CallOption) ( if err := googleapi.CheckResponse(res); err != nil { return nil, err } - ret := &Operation{ + ret := &GoogleLongrunningOperation{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, @@ -6001,10 +9515,10 @@ func (c *ProjectsAgentIntentsBatchUpdateCall) Do(opts ...googleapi.CallOption) ( // }, // "path": "v2beta1/{+parent}/intents:batchUpdate", // "request": { - // "$ref": "BatchUpdateIntentsRequest" + // "$ref": "GoogleCloudDialogflowV2beta1BatchUpdateIntentsRequest" // }, // "response": { - // "$ref": "Operation" + // "$ref": "GoogleLongrunningOperation" // }, // "scopes": [ // "https://www.googleapis.com/auth/cloud-platform" @@ -6016,19 +9530,19 @@ func (c *ProjectsAgentIntentsBatchUpdateCall) Do(opts ...googleapi.CallOption) ( // method id "dialogflow.projects.agent.intents.create": type ProjectsAgentIntentsCreateCall struct { - s *Service - parent string - intent *Intent - urlParams_ gensupport.URLParams - ctx_ context.Context - header_ http.Header + s *Service + parent string + googleclouddialogflowv2beta1intent *GoogleCloudDialogflowV2beta1Intent + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header } // Create: Creates an intent in the specified agent. -func (r *ProjectsAgentIntentsService) Create(parent string, intent *Intent) *ProjectsAgentIntentsCreateCall { +func (r *ProjectsAgentIntentsService) Create(parent string, googleclouddialogflowv2beta1intent *GoogleCloudDialogflowV2beta1Intent) *ProjectsAgentIntentsCreateCall { c := &ProjectsAgentIntentsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.parent = parent - c.intent = intent + c.googleclouddialogflowv2beta1intent = googleclouddialogflowv2beta1intent return c } @@ -6090,7 +9604,7 @@ func (c *ProjectsAgentIntentsCreateCall) doRequest(alt string) (*http.Response, } reqHeaders.Set("User-Agent", c.s.userAgent()) var body io.Reader = nil - body, err := googleapi.WithoutDataWrapper.JSONReader(c.intent) + body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowv2beta1intent) if err != nil { return nil, err } @@ -6107,13 +9621,14 @@ func (c *ProjectsAgentIntentsCreateCall) doRequest(alt string) (*http.Response, } // Do executes the "dialogflow.projects.agent.intents.create" call. -// Exactly one of *Intent or error will be non-nil. Any non-2xx status -// code is an error. Response headers are in either -// *Intent.ServerResponse.Header or (if a response was returned at all) -// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to -// check whether the returned error was because http.StatusNotModified -// was returned. -func (c *ProjectsAgentIntentsCreateCall) Do(opts ...googleapi.CallOption) (*Intent, error) { +// Exactly one of *GoogleCloudDialogflowV2beta1Intent or error will be +// non-nil. Any non-2xx status code is an error. Response headers are in +// either *GoogleCloudDialogflowV2beta1Intent.ServerResponse.Header or +// (if a response was returned at all) in +// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check +// whether the returned error was because http.StatusNotModified was +// returned. +func (c *ProjectsAgentIntentsCreateCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowV2beta1Intent, error) { gensupport.SetOptions(c.urlParams_, opts...) res, err := c.doRequest("json") if res != nil && res.StatusCode == http.StatusNotModified { @@ -6132,7 +9647,7 @@ func (c *ProjectsAgentIntentsCreateCall) Do(opts ...googleapi.CallOption) (*Inte if err := googleapi.CheckResponse(res); err != nil { return nil, err } - ret := &Intent{ + ret := &GoogleCloudDialogflowV2beta1Intent{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, @@ -6176,10 +9691,10 @@ func (c *ProjectsAgentIntentsCreateCall) Do(opts ...googleapi.CallOption) (*Inte // }, // "path": "v2beta1/{+parent}/intents", // "request": { - // "$ref": "Intent" + // "$ref": "GoogleCloudDialogflowV2beta1Intent" // }, // "response": { - // "$ref": "Intent" + // "$ref": "GoogleCloudDialogflowV2beta1Intent" // }, // "scopes": [ // "https://www.googleapis.com/auth/cloud-platform" @@ -6249,13 +9764,13 @@ func (c *ProjectsAgentIntentsDeleteCall) doRequest(alt string) (*http.Response, } // Do executes the "dialogflow.projects.agent.intents.delete" call. -// Exactly one of *Empty or error will be non-nil. Any non-2xx status -// code is an error. Response headers are in either -// *Empty.ServerResponse.Header or (if a response was returned at all) -// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to -// check whether the returned error was because http.StatusNotModified -// was returned. -func (c *ProjectsAgentIntentsDeleteCall) Do(opts ...googleapi.CallOption) (*Empty, error) { +// Exactly one of *GoogleProtobufEmpty or error will be non-nil. Any +// non-2xx status code is an error. Response headers are in either +// *GoogleProtobufEmpty.ServerResponse.Header or (if a response was +// returned at all) in error.(*googleapi.Error).Header. Use +// googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *ProjectsAgentIntentsDeleteCall) Do(opts ...googleapi.CallOption) (*GoogleProtobufEmpty, error) { gensupport.SetOptions(c.urlParams_, opts...) res, err := c.doRequest("json") if res != nil && res.StatusCode == http.StatusNotModified { @@ -6274,7 +9789,7 @@ func (c *ProjectsAgentIntentsDeleteCall) Do(opts ...googleapi.CallOption) (*Empt if err := googleapi.CheckResponse(res); err != nil { return nil, err } - ret := &Empty{ + ret := &GoogleProtobufEmpty{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, @@ -6304,7 +9819,7 @@ func (c *ProjectsAgentIntentsDeleteCall) Do(opts ...googleapi.CallOption) (*Empt // }, // "path": "v2beta1/{+name}", // "response": { - // "$ref": "Empty" + // "$ref": "GoogleProtobufEmpty" // }, // "scopes": [ // "https://www.googleapis.com/auth/cloud-platform" @@ -6414,13 +9929,14 @@ func (c *ProjectsAgentIntentsGetCall) doRequest(alt string) (*http.Response, err } // Do executes the "dialogflow.projects.agent.intents.get" call. -// Exactly one of *Intent or error will be non-nil. Any non-2xx status -// code is an error. Response headers are in either -// *Intent.ServerResponse.Header or (if a response was returned at all) -// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to -// check whether the returned error was because http.StatusNotModified -// was returned. -func (c *ProjectsAgentIntentsGetCall) Do(opts ...googleapi.CallOption) (*Intent, error) { +// Exactly one of *GoogleCloudDialogflowV2beta1Intent or error will be +// non-nil. Any non-2xx status code is an error. Response headers are in +// either *GoogleCloudDialogflowV2beta1Intent.ServerResponse.Header or +// (if a response was returned at all) in +// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check +// whether the returned error was because http.StatusNotModified was +// returned. +func (c *ProjectsAgentIntentsGetCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowV2beta1Intent, error) { gensupport.SetOptions(c.urlParams_, opts...) res, err := c.doRequest("json") if res != nil && res.StatusCode == http.StatusNotModified { @@ -6439,7 +9955,7 @@ func (c *ProjectsAgentIntentsGetCall) Do(opts ...googleapi.CallOption) (*Intent, if err := googleapi.CheckResponse(res); err != nil { return nil, err } - ret := &Intent{ + ret := &GoogleCloudDialogflowV2beta1Intent{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, @@ -6483,7 +9999,7 @@ func (c *ProjectsAgentIntentsGetCall) Do(opts ...googleapi.CallOption) (*Intent, // }, // "path": "v2beta1/{+name}", // "response": { - // "$ref": "Intent" + // "$ref": "GoogleCloudDialogflowV2beta1Intent" // }, // "scopes": [ // "https://www.googleapis.com/auth/cloud-platform" @@ -6607,13 +10123,15 @@ func (c *ProjectsAgentIntentsListCall) doRequest(alt string) (*http.Response, er } // Do executes the "dialogflow.projects.agent.intents.list" call. -// Exactly one of *ListIntentsResponse or error will be non-nil. Any -// non-2xx status code is an error. Response headers are in either -// *ListIntentsResponse.ServerResponse.Header or (if a response was -// returned at all) in error.(*googleapi.Error).Header. Use -// googleapi.IsNotModified to check whether the returned error was -// because http.StatusNotModified was returned. -func (c *ProjectsAgentIntentsListCall) Do(opts ...googleapi.CallOption) (*ListIntentsResponse, error) { +// Exactly one of *GoogleCloudDialogflowV2beta1ListIntentsResponse or +// error will be non-nil. Any non-2xx status code is an error. Response +// headers are in either +// *GoogleCloudDialogflowV2beta1ListIntentsResponse.ServerResponse.Header +// or (if a response was returned at all) in +// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check +// whether the returned error was because http.StatusNotModified was +// returned. +func (c *ProjectsAgentIntentsListCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowV2beta1ListIntentsResponse, error) { gensupport.SetOptions(c.urlParams_, opts...) res, err := c.doRequest("json") if res != nil && res.StatusCode == http.StatusNotModified { @@ -6632,7 +10150,7 @@ func (c *ProjectsAgentIntentsListCall) Do(opts ...googleapi.CallOption) (*ListIn if err := googleapi.CheckResponse(res); err != nil { return nil, err } - ret := &ListIntentsResponse{ + ret := &GoogleCloudDialogflowV2beta1ListIntentsResponse{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, @@ -6687,7 +10205,7 @@ func (c *ProjectsAgentIntentsListCall) Do(opts ...googleapi.CallOption) (*ListIn // }, // "path": "v2beta1/{+parent}/intents", // "response": { - // "$ref": "ListIntentsResponse" + // "$ref": "GoogleCloudDialogflowV2beta1ListIntentsResponse" // }, // "scopes": [ // "https://www.googleapis.com/auth/cloud-platform" @@ -6699,7 +10217,7 @@ func (c *ProjectsAgentIntentsListCall) Do(opts ...googleapi.CallOption) (*ListIn // Pages invokes f for each page of results. // A non-nil error returned from f will halt the iteration. // The provided context supersedes any context provided to the Context method. -func (c *ProjectsAgentIntentsListCall) Pages(ctx context.Context, f func(*ListIntentsResponse) error) error { +func (c *ProjectsAgentIntentsListCall) Pages(ctx context.Context, f func(*GoogleCloudDialogflowV2beta1ListIntentsResponse) error) error { c.ctx_ = ctx defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point for { @@ -6720,19 +10238,19 @@ func (c *ProjectsAgentIntentsListCall) Pages(ctx context.Context, f func(*ListIn // method id "dialogflow.projects.agent.intents.patch": type ProjectsAgentIntentsPatchCall struct { - s *Service - nameid string - intent *Intent - urlParams_ gensupport.URLParams - ctx_ context.Context - header_ http.Header + s *Service + nameid string + googleclouddialogflowv2beta1intent *GoogleCloudDialogflowV2beta1Intent + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header } // Patch: Updates the specified intent. -func (r *ProjectsAgentIntentsService) Patch(nameid string, intent *Intent) *ProjectsAgentIntentsPatchCall { +func (r *ProjectsAgentIntentsService) Patch(nameid string, googleclouddialogflowv2beta1intent *GoogleCloudDialogflowV2beta1Intent) *ProjectsAgentIntentsPatchCall { c := &ProjectsAgentIntentsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.nameid = nameid - c.intent = intent + c.googleclouddialogflowv2beta1intent = googleclouddialogflowv2beta1intent return c } @@ -6801,7 +10319,7 @@ func (c *ProjectsAgentIntentsPatchCall) doRequest(alt string) (*http.Response, e } reqHeaders.Set("User-Agent", c.s.userAgent()) var body io.Reader = nil - body, err := googleapi.WithoutDataWrapper.JSONReader(c.intent) + body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowv2beta1intent) if err != nil { return nil, err } @@ -6818,13 +10336,14 @@ func (c *ProjectsAgentIntentsPatchCall) doRequest(alt string) (*http.Response, e } // Do executes the "dialogflow.projects.agent.intents.patch" call. -// Exactly one of *Intent or error will be non-nil. Any non-2xx status -// code is an error. Response headers are in either -// *Intent.ServerResponse.Header or (if a response was returned at all) -// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to -// check whether the returned error was because http.StatusNotModified -// was returned. -func (c *ProjectsAgentIntentsPatchCall) Do(opts ...googleapi.CallOption) (*Intent, error) { +// Exactly one of *GoogleCloudDialogflowV2beta1Intent or error will be +// non-nil. Any non-2xx status code is an error. Response headers are in +// either *GoogleCloudDialogflowV2beta1Intent.ServerResponse.Header or +// (if a response was returned at all) in +// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check +// whether the returned error was because http.StatusNotModified was +// returned. +func (c *ProjectsAgentIntentsPatchCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowV2beta1Intent, error) { gensupport.SetOptions(c.urlParams_, opts...) res, err := c.doRequest("json") if res != nil && res.StatusCode == http.StatusNotModified { @@ -6843,7 +10362,7 @@ func (c *ProjectsAgentIntentsPatchCall) Do(opts ...googleapi.CallOption) (*Inten if err := googleapi.CheckResponse(res); err != nil { return nil, err } - ret := &Intent{ + ret := &GoogleCloudDialogflowV2beta1Intent{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, @@ -6893,10 +10412,10 @@ func (c *ProjectsAgentIntentsPatchCall) Do(opts ...googleapi.CallOption) (*Inten // }, // "path": "v2beta1/{+name}", // "request": { - // "$ref": "Intent" + // "$ref": "GoogleCloudDialogflowV2beta1Intent" // }, // "response": { - // "$ref": "Intent" + // "$ref": "GoogleCloudDialogflowV2beta1Intent" // }, // "scopes": [ // "https://www.googleapis.com/auth/cloud-platform" @@ -6966,13 +10485,13 @@ func (c *ProjectsAgentSessionsDeleteContextsCall) doRequest(alt string) (*http.R } // Do executes the "dialogflow.projects.agent.sessions.deleteContexts" call. -// Exactly one of *Empty or error will be non-nil. Any non-2xx status -// code is an error. Response headers are in either -// *Empty.ServerResponse.Header or (if a response was returned at all) -// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to -// check whether the returned error was because http.StatusNotModified -// was returned. -func (c *ProjectsAgentSessionsDeleteContextsCall) Do(opts ...googleapi.CallOption) (*Empty, error) { +// Exactly one of *GoogleProtobufEmpty or error will be non-nil. Any +// non-2xx status code is an error. Response headers are in either +// *GoogleProtobufEmpty.ServerResponse.Header or (if a response was +// returned at all) in error.(*googleapi.Error).Header. Use +// googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *ProjectsAgentSessionsDeleteContextsCall) Do(opts ...googleapi.CallOption) (*GoogleProtobufEmpty, error) { gensupport.SetOptions(c.urlParams_, opts...) res, err := c.doRequest("json") if res != nil && res.StatusCode == http.StatusNotModified { @@ -6991,7 +10510,7 @@ func (c *ProjectsAgentSessionsDeleteContextsCall) Do(opts ...googleapi.CallOptio if err := googleapi.CheckResponse(res); err != nil { return nil, err } - ret := &Empty{ + ret := &GoogleProtobufEmpty{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, @@ -7012,7 +10531,7 @@ func (c *ProjectsAgentSessionsDeleteContextsCall) Do(opts ...googleapi.CallOptio // ], // "parameters": { // "parent": { - // "description": "Required. The name of the session to delete all contexts from. Format:\n`projects/\u003cProject ID\u003e/agent/sessions/\u003cSession ID\u003e`.", + // "description": "Required. The name of the session to delete all contexts from. Format:\n`projects/\u003cProject ID\u003e/agent/sessions/\u003cSession ID\u003e` or `projects/\u003cProject\nID\u003e/agent/environments/\u003cEnvironment ID\u003e/users/\u003cUser ID\u003e/sessions/\u003cSession\nID\u003e`. Note: Environments and users are under construction and will be\navailable soon. If \u003cEnvironment ID\u003e is not specified we assume default\n'draft' environment. If \u003cUser ID\u003e is not specified, we assume default\n'-' user.", // "location": "path", // "pattern": "^projects/[^/]+/agent/sessions/[^/]+$", // "required": true, @@ -7021,7 +10540,7 @@ func (c *ProjectsAgentSessionsDeleteContextsCall) Do(opts ...googleapi.CallOptio // }, // "path": "v2beta1/{+parent}/contexts", // "response": { - // "$ref": "Empty" + // "$ref": "GoogleProtobufEmpty" // }, // "scopes": [ // "https://www.googleapis.com/auth/cloud-platform" @@ -7033,12 +10552,12 @@ func (c *ProjectsAgentSessionsDeleteContextsCall) Do(opts ...googleapi.CallOptio // method id "dialogflow.projects.agent.sessions.detectIntent": type ProjectsAgentSessionsDetectIntentCall struct { - s *Service - sessionid string - detectintentrequest *DetectIntentRequest - urlParams_ gensupport.URLParams - ctx_ context.Context - header_ http.Header + s *Service + sessionid string + googleclouddialogflowv2beta1detectintentrequest *GoogleCloudDialogflowV2beta1DetectIntentRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header } // DetectIntent: Processes a natural language query and returns @@ -7048,10 +10567,10 @@ type ProjectsAgentSessionsDetectIntentCall struct { // and session entity types to be updated, which in turn might // affect // results of future queries. -func (r *ProjectsAgentSessionsService) DetectIntent(sessionid string, detectintentrequest *DetectIntentRequest) *ProjectsAgentSessionsDetectIntentCall { +func (r *ProjectsAgentSessionsService) DetectIntent(sessionid string, googleclouddialogflowv2beta1detectintentrequest *GoogleCloudDialogflowV2beta1DetectIntentRequest) *ProjectsAgentSessionsDetectIntentCall { c := &ProjectsAgentSessionsDetectIntentCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.sessionid = sessionid - c.detectintentrequest = detectintentrequest + c.googleclouddialogflowv2beta1detectintentrequest = googleclouddialogflowv2beta1detectintentrequest return c } @@ -7087,7 +10606,7 @@ func (c *ProjectsAgentSessionsDetectIntentCall) doRequest(alt string) (*http.Res } reqHeaders.Set("User-Agent", c.s.userAgent()) var body io.Reader = nil - body, err := googleapi.WithoutDataWrapper.JSONReader(c.detectintentrequest) + body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowv2beta1detectintentrequest) if err != nil { return nil, err } @@ -7104,13 +10623,15 @@ func (c *ProjectsAgentSessionsDetectIntentCall) doRequest(alt string) (*http.Res } // Do executes the "dialogflow.projects.agent.sessions.detectIntent" call. -// Exactly one of *DetectIntentResponse or error will be non-nil. Any -// non-2xx status code is an error. Response headers are in either -// *DetectIntentResponse.ServerResponse.Header or (if a response was -// returned at all) in error.(*googleapi.Error).Header. Use -// googleapi.IsNotModified to check whether the returned error was -// because http.StatusNotModified was returned. -func (c *ProjectsAgentSessionsDetectIntentCall) Do(opts ...googleapi.CallOption) (*DetectIntentResponse, error) { +// Exactly one of *GoogleCloudDialogflowV2beta1DetectIntentResponse or +// error will be non-nil. Any non-2xx status code is an error. Response +// headers are in either +// *GoogleCloudDialogflowV2beta1DetectIntentResponse.ServerResponse.Heade +// r or (if a response was returned at all) in +// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check +// whether the returned error was because http.StatusNotModified was +// returned. +func (c *ProjectsAgentSessionsDetectIntentCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowV2beta1DetectIntentResponse, error) { gensupport.SetOptions(c.urlParams_, opts...) res, err := c.doRequest("json") if res != nil && res.StatusCode == http.StatusNotModified { @@ -7129,7 +10650,7 @@ func (c *ProjectsAgentSessionsDetectIntentCall) Do(opts ...googleapi.CallOption) if err := googleapi.CheckResponse(res); err != nil { return nil, err } - ret := &DetectIntentResponse{ + ret := &GoogleCloudDialogflowV2beta1DetectIntentResponse{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, @@ -7150,7 +10671,7 @@ func (c *ProjectsAgentSessionsDetectIntentCall) Do(opts ...googleapi.CallOption) // ], // "parameters": { // "session": { - // "description": "Required. The name of the session this query is sent to. Format:\n`projects/\u003cProject ID\u003e/agent/sessions/\u003cSession ID\u003e`.\nIt's up to the API caller to choose an appropriate session ID. It can be\na random number or some type of user identifier (preferably hashed).\nThe length of the session ID must not exceed 36 bytes.", + // "description": "Required. The name of the session this query is sent to. Format:\n`projects/\u003cProject ID\u003e/agent/sessions/\u003cSession ID\u003e`, or\n`projects/\u003cProject ID\u003e/agent/environments/\u003cEnvironment ID\u003e/users/\u003cUser\nID\u003e/sessions/\u003cSession ID\u003e`. Note: Environments and users are under\nconstruction and will be available soon. If \u003cEnvironment ID\u003e is not\nspecified, we assume default 'draft' environment. If \u003cUser ID\u003e is not\nspecified, we are using \"-\". It’s up to the API caller to choose an\nappropriate \u003cSession ID\u003e. and \u003cUser Id\u003e. They can be a random numbers or\nsome type of user and session identifiers (preferably hashed). The length\nof the \u003cSession ID\u003e and \u003cUser ID\u003e must not exceed 36 characters.", // "location": "path", // "pattern": "^projects/[^/]+/agent/sessions/[^/]+$", // "required": true, @@ -7159,10 +10680,10 @@ func (c *ProjectsAgentSessionsDetectIntentCall) Do(opts ...googleapi.CallOption) // }, // "path": "v2beta1/{+session}:detectIntent", // "request": { - // "$ref": "DetectIntentRequest" + // "$ref": "GoogleCloudDialogflowV2beta1DetectIntentRequest" // }, // "response": { - // "$ref": "DetectIntentResponse" + // "$ref": "GoogleCloudDialogflowV2beta1DetectIntentResponse" // }, // "scopes": [ // "https://www.googleapis.com/auth/cloud-platform" @@ -7174,19 +10695,19 @@ func (c *ProjectsAgentSessionsDetectIntentCall) Do(opts ...googleapi.CallOption) // method id "dialogflow.projects.agent.sessions.contexts.create": type ProjectsAgentSessionsContextsCreateCall struct { - s *Service - parent string - context *Context - urlParams_ gensupport.URLParams - ctx_ context.Context - header_ http.Header + s *Service + parent string + googleclouddialogflowv2beta1context *GoogleCloudDialogflowV2beta1Context + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header } // Create: Creates a context. -func (r *ProjectsAgentSessionsContextsService) Create(parent string, context *Context) *ProjectsAgentSessionsContextsCreateCall { +func (r *ProjectsAgentSessionsContextsService) Create(parent string, googleclouddialogflowv2beta1context *GoogleCloudDialogflowV2beta1Context) *ProjectsAgentSessionsContextsCreateCall { c := &ProjectsAgentSessionsContextsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.parent = parent - c.context = context + c.googleclouddialogflowv2beta1context = googleclouddialogflowv2beta1context return c } @@ -7222,7 +10743,7 @@ func (c *ProjectsAgentSessionsContextsCreateCall) doRequest(alt string) (*http.R } reqHeaders.Set("User-Agent", c.s.userAgent()) var body io.Reader = nil - body, err := googleapi.WithoutDataWrapper.JSONReader(c.context) + body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowv2beta1context) if err != nil { return nil, err } @@ -7239,13 +10760,14 @@ func (c *ProjectsAgentSessionsContextsCreateCall) doRequest(alt string) (*http.R } // Do executes the "dialogflow.projects.agent.sessions.contexts.create" call. -// Exactly one of *Context or error will be non-nil. Any non-2xx status -// code is an error. Response headers are in either -// *Context.ServerResponse.Header or (if a response was returned at all) -// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to -// check whether the returned error was because http.StatusNotModified -// was returned. -func (c *ProjectsAgentSessionsContextsCreateCall) Do(opts ...googleapi.CallOption) (*Context, error) { +// Exactly one of *GoogleCloudDialogflowV2beta1Context or error will be +// non-nil. Any non-2xx status code is an error. Response headers are in +// either *GoogleCloudDialogflowV2beta1Context.ServerResponse.Header or +// (if a response was returned at all) in +// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check +// whether the returned error was because http.StatusNotModified was +// returned. +func (c *ProjectsAgentSessionsContextsCreateCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowV2beta1Context, error) { gensupport.SetOptions(c.urlParams_, opts...) res, err := c.doRequest("json") if res != nil && res.StatusCode == http.StatusNotModified { @@ -7264,7 +10786,7 @@ func (c *ProjectsAgentSessionsContextsCreateCall) Do(opts ...googleapi.CallOptio if err := googleapi.CheckResponse(res); err != nil { return nil, err } - ret := &Context{ + ret := &GoogleCloudDialogflowV2beta1Context{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, @@ -7285,7 +10807,7 @@ func (c *ProjectsAgentSessionsContextsCreateCall) Do(opts ...googleapi.CallOptio // ], // "parameters": { // "parent": { - // "description": "Required. The session to create a context for.\nFormat: `projects/\u003cProject ID\u003e/agent/sessions/\u003cSession ID\u003e`.", + // "description": "Required. The session to create a context for.\nFormat: `projects/\u003cProject ID\u003e/agent/sessions/\u003cSession ID\u003e` or\n`projects/\u003cProject ID\u003e/agent/environments/\u003cEnvironment ID\u003e/users/\u003cUser\nID\u003e/sessions/\u003cSession ID\u003e`. Note: Environments and users are under\nconstruction and will be available soon. If \u003cEnvironment ID\u003e is not\nspecified, we assume default 'draft' environment. If \u003cUser ID\u003e is not\nspecified, we assume default '-' user.", // "location": "path", // "pattern": "^projects/[^/]+/agent/sessions/[^/]+$", // "required": true, @@ -7294,10 +10816,10 @@ func (c *ProjectsAgentSessionsContextsCreateCall) Do(opts ...googleapi.CallOptio // }, // "path": "v2beta1/{+parent}/contexts", // "request": { - // "$ref": "Context" + // "$ref": "GoogleCloudDialogflowV2beta1Context" // }, // "response": { - // "$ref": "Context" + // "$ref": "GoogleCloudDialogflowV2beta1Context" // }, // "scopes": [ // "https://www.googleapis.com/auth/cloud-platform" @@ -7367,13 +10889,13 @@ func (c *ProjectsAgentSessionsContextsDeleteCall) doRequest(alt string) (*http.R } // Do executes the "dialogflow.projects.agent.sessions.contexts.delete" call. -// Exactly one of *Empty or error will be non-nil. Any non-2xx status -// code is an error. Response headers are in either -// *Empty.ServerResponse.Header or (if a response was returned at all) -// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to -// check whether the returned error was because http.StatusNotModified -// was returned. -func (c *ProjectsAgentSessionsContextsDeleteCall) Do(opts ...googleapi.CallOption) (*Empty, error) { +// Exactly one of *GoogleProtobufEmpty or error will be non-nil. Any +// non-2xx status code is an error. Response headers are in either +// *GoogleProtobufEmpty.ServerResponse.Header or (if a response was +// returned at all) in error.(*googleapi.Error).Header. Use +// googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *ProjectsAgentSessionsContextsDeleteCall) Do(opts ...googleapi.CallOption) (*GoogleProtobufEmpty, error) { gensupport.SetOptions(c.urlParams_, opts...) res, err := c.doRequest("json") if res != nil && res.StatusCode == http.StatusNotModified { @@ -7392,7 +10914,7 @@ func (c *ProjectsAgentSessionsContextsDeleteCall) Do(opts ...googleapi.CallOptio if err := googleapi.CheckResponse(res); err != nil { return nil, err } - ret := &Empty{ + ret := &GoogleProtobufEmpty{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, @@ -7413,7 +10935,7 @@ func (c *ProjectsAgentSessionsContextsDeleteCall) Do(opts ...googleapi.CallOptio // ], // "parameters": { // "name": { - // "description": "Required. The name of the context to delete. Format:\n`projects/\u003cProject ID\u003e/agent/sessions/\u003cSession ID\u003e/contexts/\u003cContext ID\u003e`.", + // "description": "Required. The name of the context to delete. Format:\n`projects/\u003cProject ID\u003e/agent/sessions/\u003cSession ID\u003e/contexts/\u003cContext ID\u003e`\nor `projects/\u003cProject ID\u003e/agent/environments/\u003cEnvironment ID\u003e/users/\u003cUser\nID\u003e/sessions/\u003cSession ID\u003e/contexts/\u003cContext ID\u003e`. Note: Environments and\nusers are under construction and will be available soon. If \u003cEnvironment\nID\u003e is not specified, we assume default 'draft' environment. If \u003cUser ID\u003e\nis not specified, we assume default\n'-' user.", // "location": "path", // "pattern": "^projects/[^/]+/agent/sessions/[^/]+/contexts/[^/]+$", // "required": true, @@ -7422,7 +10944,7 @@ func (c *ProjectsAgentSessionsContextsDeleteCall) Do(opts ...googleapi.CallOptio // }, // "path": "v2beta1/{+name}", // "response": { - // "$ref": "Empty" + // "$ref": "GoogleProtobufEmpty" // }, // "scopes": [ // "https://www.googleapis.com/auth/cloud-platform" @@ -7506,13 +11028,14 @@ func (c *ProjectsAgentSessionsContextsGetCall) doRequest(alt string) (*http.Resp } // Do executes the "dialogflow.projects.agent.sessions.contexts.get" call. -// Exactly one of *Context or error will be non-nil. Any non-2xx status -// code is an error. Response headers are in either -// *Context.ServerResponse.Header or (if a response was returned at all) -// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to -// check whether the returned error was because http.StatusNotModified -// was returned. -func (c *ProjectsAgentSessionsContextsGetCall) Do(opts ...googleapi.CallOption) (*Context, error) { +// Exactly one of *GoogleCloudDialogflowV2beta1Context or error will be +// non-nil. Any non-2xx status code is an error. Response headers are in +// either *GoogleCloudDialogflowV2beta1Context.ServerResponse.Header or +// (if a response was returned at all) in +// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check +// whether the returned error was because http.StatusNotModified was +// returned. +func (c *ProjectsAgentSessionsContextsGetCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowV2beta1Context, error) { gensupport.SetOptions(c.urlParams_, opts...) res, err := c.doRequest("json") if res != nil && res.StatusCode == http.StatusNotModified { @@ -7531,7 +11054,7 @@ func (c *ProjectsAgentSessionsContextsGetCall) Do(opts ...googleapi.CallOption) if err := googleapi.CheckResponse(res); err != nil { return nil, err } - ret := &Context{ + ret := &GoogleCloudDialogflowV2beta1Context{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, @@ -7552,7 +11075,7 @@ func (c *ProjectsAgentSessionsContextsGetCall) Do(opts ...googleapi.CallOption) // ], // "parameters": { // "name": { - // "description": "Required. The name of the context. Format:\n`projects/\u003cProject ID\u003e/agent/sessions/\u003cSession ID\u003e/contexts/\u003cContext ID\u003e`.", + // "description": "Required. The name of the context. Format:\n`projects/\u003cProject ID\u003e/agent/sessions/\u003cSession ID\u003e/contexts/\u003cContext ID\u003e`\nor `projects/\u003cProject ID\u003e/agent/environments/\u003cEnvironment ID\u003e/users/\u003cUser\nID\u003e/sessions/\u003cSession ID\u003e/contexts/\u003cContext ID\u003e`. Note: Environments and\nusers are under construction and will be available soon. If \u003cEnvironment\nID\u003e is not specified, we assume default 'draft' environment. If \u003cUser ID\u003e\nis not specified, we assume default '-' user.", // "location": "path", // "pattern": "^projects/[^/]+/agent/sessions/[^/]+/contexts/[^/]+$", // "required": true, @@ -7561,7 +11084,7 @@ func (c *ProjectsAgentSessionsContextsGetCall) Do(opts ...googleapi.CallOption) // }, // "path": "v2beta1/{+name}", // "response": { - // "$ref": "Context" + // "$ref": "GoogleCloudDialogflowV2beta1Context" // }, // "scopes": [ // "https://www.googleapis.com/auth/cloud-platform" @@ -7660,13 +11183,15 @@ func (c *ProjectsAgentSessionsContextsListCall) doRequest(alt string) (*http.Res } // Do executes the "dialogflow.projects.agent.sessions.contexts.list" call. -// Exactly one of *ListContextsResponse or error will be non-nil. Any -// non-2xx status code is an error. Response headers are in either -// *ListContextsResponse.ServerResponse.Header or (if a response was -// returned at all) in error.(*googleapi.Error).Header. Use -// googleapi.IsNotModified to check whether the returned error was -// because http.StatusNotModified was returned. -func (c *ProjectsAgentSessionsContextsListCall) Do(opts ...googleapi.CallOption) (*ListContextsResponse, error) { +// Exactly one of *GoogleCloudDialogflowV2beta1ListContextsResponse or +// error will be non-nil. Any non-2xx status code is an error. Response +// headers are in either +// *GoogleCloudDialogflowV2beta1ListContextsResponse.ServerResponse.Heade +// r or (if a response was returned at all) in +// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check +// whether the returned error was because http.StatusNotModified was +// returned. +func (c *ProjectsAgentSessionsContextsListCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowV2beta1ListContextsResponse, error) { gensupport.SetOptions(c.urlParams_, opts...) res, err := c.doRequest("json") if res != nil && res.StatusCode == http.StatusNotModified { @@ -7685,7 +11210,7 @@ func (c *ProjectsAgentSessionsContextsListCall) Do(opts ...googleapi.CallOption) if err := googleapi.CheckResponse(res); err != nil { return nil, err } - ret := &ListContextsResponse{ + ret := &GoogleCloudDialogflowV2beta1ListContextsResponse{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, @@ -7717,7 +11242,7 @@ func (c *ProjectsAgentSessionsContextsListCall) Do(opts ...googleapi.CallOption) // "type": "string" // }, // "parent": { - // "description": "Required. The session to list all contexts from.\nFormat: `projects/\u003cProject ID\u003e/agent/sessions/\u003cSession ID\u003e`.", + // "description": "Required. The session to list all contexts from.\nFormat: `projects/\u003cProject ID\u003e/agent/sessions/\u003cSession ID\u003e` or\n`projects/\u003cProject ID\u003e/agent/environments/\u003cEnvironment ID\u003e/users/\u003cUser\nID\u003e/sessions/\u003cSession ID\u003e`. Note: Environments and users are under\nconstruction and will be available soon. If \u003cEnvironment ID\u003e is not\nspecified, we assume default 'draft' environment. If \u003cUser ID\u003e is not\nspecified, we assume default '-' user.", // "location": "path", // "pattern": "^projects/[^/]+/agent/sessions/[^/]+$", // "required": true, @@ -7726,7 +11251,7 @@ func (c *ProjectsAgentSessionsContextsListCall) Do(opts ...googleapi.CallOption) // }, // "path": "v2beta1/{+parent}/contexts", // "response": { - // "$ref": "ListContextsResponse" + // "$ref": "GoogleCloudDialogflowV2beta1ListContextsResponse" // }, // "scopes": [ // "https://www.googleapis.com/auth/cloud-platform" @@ -7738,7 +11263,7 @@ func (c *ProjectsAgentSessionsContextsListCall) Do(opts ...googleapi.CallOption) // Pages invokes f for each page of results. // A non-nil error returned from f will halt the iteration. // The provided context supersedes any context provided to the Context method. -func (c *ProjectsAgentSessionsContextsListCall) Pages(ctx context.Context, f func(*ListContextsResponse) error) error { +func (c *ProjectsAgentSessionsContextsListCall) Pages(ctx context.Context, f func(*GoogleCloudDialogflowV2beta1ListContextsResponse) error) error { c.ctx_ = ctx defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point for { @@ -7759,19 +11284,19 @@ func (c *ProjectsAgentSessionsContextsListCall) Pages(ctx context.Context, f fun // method id "dialogflow.projects.agent.sessions.contexts.patch": type ProjectsAgentSessionsContextsPatchCall struct { - s *Service - nameid string - context *Context - urlParams_ gensupport.URLParams - ctx_ context.Context - header_ http.Header + s *Service + nameid string + googleclouddialogflowv2beta1context *GoogleCloudDialogflowV2beta1Context + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header } // Patch: Updates the specified context. -func (r *ProjectsAgentSessionsContextsService) Patch(nameid string, context *Context) *ProjectsAgentSessionsContextsPatchCall { +func (r *ProjectsAgentSessionsContextsService) Patch(nameid string, googleclouddialogflowv2beta1context *GoogleCloudDialogflowV2beta1Context) *ProjectsAgentSessionsContextsPatchCall { c := &ProjectsAgentSessionsContextsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.nameid = nameid - c.context = context + c.googleclouddialogflowv2beta1context = googleclouddialogflowv2beta1context return c } @@ -7814,7 +11339,7 @@ func (c *ProjectsAgentSessionsContextsPatchCall) doRequest(alt string) (*http.Re } reqHeaders.Set("User-Agent", c.s.userAgent()) var body io.Reader = nil - body, err := googleapi.WithoutDataWrapper.JSONReader(c.context) + body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowv2beta1context) if err != nil { return nil, err } @@ -7831,13 +11356,14 @@ func (c *ProjectsAgentSessionsContextsPatchCall) doRequest(alt string) (*http.Re } // Do executes the "dialogflow.projects.agent.sessions.contexts.patch" call. -// Exactly one of *Context or error will be non-nil. Any non-2xx status -// code is an error. Response headers are in either -// *Context.ServerResponse.Header or (if a response was returned at all) -// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to -// check whether the returned error was because http.StatusNotModified -// was returned. -func (c *ProjectsAgentSessionsContextsPatchCall) Do(opts ...googleapi.CallOption) (*Context, error) { +// Exactly one of *GoogleCloudDialogflowV2beta1Context or error will be +// non-nil. Any non-2xx status code is an error. Response headers are in +// either *GoogleCloudDialogflowV2beta1Context.ServerResponse.Header or +// (if a response was returned at all) in +// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check +// whether the returned error was because http.StatusNotModified was +// returned. +func (c *ProjectsAgentSessionsContextsPatchCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowV2beta1Context, error) { gensupport.SetOptions(c.urlParams_, opts...) res, err := c.doRequest("json") if res != nil && res.StatusCode == http.StatusNotModified { @@ -7856,7 +11382,7 @@ func (c *ProjectsAgentSessionsContextsPatchCall) Do(opts ...googleapi.CallOption if err := googleapi.CheckResponse(res); err != nil { return nil, err } - ret := &Context{ + ret := &GoogleCloudDialogflowV2beta1Context{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, @@ -7877,7 +11403,7 @@ func (c *ProjectsAgentSessionsContextsPatchCall) Do(opts ...googleapi.CallOption // ], // "parameters": { // "name": { - // "description": "Required. The unique identifier of the context. Format:\n`projects/\u003cProject ID\u003e/agent/sessions/\u003cSession ID\u003e/contexts/\u003cContext ID\u003e`.\nNote: The Context ID is always converted to lowercase.", + // "description": "Required. The unique identifier of the context. Format:\n`projects/\u003cProject ID\u003e/agent/sessions/\u003cSession ID\u003e/contexts/\u003cContext ID\u003e`,\nor\n`projects/\u003cProject ID\u003e/agent/environments/\u003cEnvironment ID\u003e/users/\u003cUser\nID\u003e/sessions/\u003cSession ID\u003e/contexts/\u003cContext ID\u003e`. Note: Environments and\nusers are under construction and will be available soon. The Context ID is\nalways converted to lowercase. If \u003cEnvironment ID\u003e is not specified, we\nassume default 'draft' environment. If \u003cUser ID\u003e is not specified, we\nassume default '-' user.", // "location": "path", // "pattern": "^projects/[^/]+/agent/sessions/[^/]+/contexts/[^/]+$", // "required": true, @@ -7892,10 +11418,10 @@ func (c *ProjectsAgentSessionsContextsPatchCall) Do(opts ...googleapi.CallOption // }, // "path": "v2beta1/{+name}", // "request": { - // "$ref": "Context" + // "$ref": "GoogleCloudDialogflowV2beta1Context" // }, // "response": { - // "$ref": "Context" + // "$ref": "GoogleCloudDialogflowV2beta1Context" // }, // "scopes": [ // "https://www.googleapis.com/auth/cloud-platform" @@ -7907,19 +11433,19 @@ func (c *ProjectsAgentSessionsContextsPatchCall) Do(opts ...googleapi.CallOption // method id "dialogflow.projects.agent.sessions.entityTypes.create": type ProjectsAgentSessionsEntityTypesCreateCall struct { - s *Service - parent string - sessionentitytype *SessionEntityType - urlParams_ gensupport.URLParams - ctx_ context.Context - header_ http.Header + s *Service + parent string + googleclouddialogflowv2beta1sessionentitytype *GoogleCloudDialogflowV2beta1SessionEntityType + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header } // Create: Creates a session entity type. -func (r *ProjectsAgentSessionsEntityTypesService) Create(parent string, sessionentitytype *SessionEntityType) *ProjectsAgentSessionsEntityTypesCreateCall { +func (r *ProjectsAgentSessionsEntityTypesService) Create(parent string, googleclouddialogflowv2beta1sessionentitytype *GoogleCloudDialogflowV2beta1SessionEntityType) *ProjectsAgentSessionsEntityTypesCreateCall { c := &ProjectsAgentSessionsEntityTypesCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.parent = parent - c.sessionentitytype = sessionentitytype + c.googleclouddialogflowv2beta1sessionentitytype = googleclouddialogflowv2beta1sessionentitytype return c } @@ -7955,7 +11481,7 @@ func (c *ProjectsAgentSessionsEntityTypesCreateCall) doRequest(alt string) (*htt } reqHeaders.Set("User-Agent", c.s.userAgent()) var body io.Reader = nil - body, err := googleapi.WithoutDataWrapper.JSONReader(c.sessionentitytype) + body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowv2beta1sessionentitytype) if err != nil { return nil, err } @@ -7972,13 +11498,15 @@ func (c *ProjectsAgentSessionsEntityTypesCreateCall) doRequest(alt string) (*htt } // Do executes the "dialogflow.projects.agent.sessions.entityTypes.create" call. -// Exactly one of *SessionEntityType or error will be non-nil. Any -// non-2xx status code is an error. Response headers are in either -// *SessionEntityType.ServerResponse.Header or (if a response was -// returned at all) in error.(*googleapi.Error).Header. Use -// googleapi.IsNotModified to check whether the returned error was -// because http.StatusNotModified was returned. -func (c *ProjectsAgentSessionsEntityTypesCreateCall) Do(opts ...googleapi.CallOption) (*SessionEntityType, error) { +// Exactly one of *GoogleCloudDialogflowV2beta1SessionEntityType or +// error will be non-nil. Any non-2xx status code is an error. Response +// headers are in either +// *GoogleCloudDialogflowV2beta1SessionEntityType.ServerResponse.Header +// or (if a response was returned at all) in +// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check +// whether the returned error was because http.StatusNotModified was +// returned. +func (c *ProjectsAgentSessionsEntityTypesCreateCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowV2beta1SessionEntityType, error) { gensupport.SetOptions(c.urlParams_, opts...) res, err := c.doRequest("json") if res != nil && res.StatusCode == http.StatusNotModified { @@ -7997,7 +11525,7 @@ func (c *ProjectsAgentSessionsEntityTypesCreateCall) Do(opts ...googleapi.CallOp if err := googleapi.CheckResponse(res); err != nil { return nil, err } - ret := &SessionEntityType{ + ret := &GoogleCloudDialogflowV2beta1SessionEntityType{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, @@ -8018,7 +11546,7 @@ func (c *ProjectsAgentSessionsEntityTypesCreateCall) Do(opts ...googleapi.CallOp // ], // "parameters": { // "parent": { - // "description": "Required. The session to create a session entity type for.\nFormat: `projects/\u003cProject ID\u003e/agent/sessions/\u003cSession ID\u003e`.", + // "description": "Required. The session to create a session entity type for.\nFormat: `projects/\u003cProject ID\u003e/agent/sessions/\u003cSession ID\u003e` or\n`projects/\u003cProject ID\u003e/agent/environments/\u003cEnvironment ID\u003e/users/\u003cUser ID\u003e/\nsessions/\u003cSession ID\u003e`.\nNote: Environments and users are under construction and will be available\nsoon. If \u003cEnvironment ID\u003e is not specified, we assume default 'draft'\nenvironment. If \u003cUser ID\u003e is not specified, we assume default '-' user.", // "location": "path", // "pattern": "^projects/[^/]+/agent/sessions/[^/]+$", // "required": true, @@ -8027,10 +11555,10 @@ func (c *ProjectsAgentSessionsEntityTypesCreateCall) Do(opts ...googleapi.CallOp // }, // "path": "v2beta1/{+parent}/entityTypes", // "request": { - // "$ref": "SessionEntityType" + // "$ref": "GoogleCloudDialogflowV2beta1SessionEntityType" // }, // "response": { - // "$ref": "SessionEntityType" + // "$ref": "GoogleCloudDialogflowV2beta1SessionEntityType" // }, // "scopes": [ // "https://www.googleapis.com/auth/cloud-platform" @@ -8100,13 +11628,13 @@ func (c *ProjectsAgentSessionsEntityTypesDeleteCall) doRequest(alt string) (*htt } // Do executes the "dialogflow.projects.agent.sessions.entityTypes.delete" call. -// Exactly one of *Empty or error will be non-nil. Any non-2xx status -// code is an error. Response headers are in either -// *Empty.ServerResponse.Header or (if a response was returned at all) -// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to -// check whether the returned error was because http.StatusNotModified -// was returned. -func (c *ProjectsAgentSessionsEntityTypesDeleteCall) Do(opts ...googleapi.CallOption) (*Empty, error) { +// Exactly one of *GoogleProtobufEmpty or error will be non-nil. Any +// non-2xx status code is an error. Response headers are in either +// *GoogleProtobufEmpty.ServerResponse.Header or (if a response was +// returned at all) in error.(*googleapi.Error).Header. Use +// googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *ProjectsAgentSessionsEntityTypesDeleteCall) Do(opts ...googleapi.CallOption) (*GoogleProtobufEmpty, error) { gensupport.SetOptions(c.urlParams_, opts...) res, err := c.doRequest("json") if res != nil && res.StatusCode == http.StatusNotModified { @@ -8125,7 +11653,7 @@ func (c *ProjectsAgentSessionsEntityTypesDeleteCall) Do(opts ...googleapi.CallOp if err := googleapi.CheckResponse(res); err != nil { return nil, err } - ret := &Empty{ + ret := &GoogleProtobufEmpty{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, @@ -8146,7 +11674,7 @@ func (c *ProjectsAgentSessionsEntityTypesDeleteCall) Do(opts ...googleapi.CallOp // ], // "parameters": { // "name": { - // "description": "Required. The name of the entity type to delete. Format:\n`projects/\u003cProject ID\u003e/agent/sessions/\u003cSession ID\u003e/entityTypes/\u003cEntity Type\nDisplay Name\u003e`.", + // "description": "Required. The name of the entity type to delete. Format:\n`projects/\u003cProject ID\u003e/agent/sessions/\u003cSession ID\u003e/entityTypes/\u003cEntity Type\nDisplay Name\u003e` or `projects/\u003cProject ID\u003e/agent/environments/\u003cEnvironment\nID\u003e/users/\u003cUser ID\u003e/sessions/\u003cSession ID\u003e/entityTypes/\u003cEntity Type Display\nName\u003e`.\nNote: Environments and users are under construction and will be available\nsoon. If \u003cEnvironment ID\u003e is not specified, we assume default 'draft'\nenvironment. If \u003cUser ID\u003e is not specified, we assume default '-' user.", // "location": "path", // "pattern": "^projects/[^/]+/agent/sessions/[^/]+/entityTypes/[^/]+$", // "required": true, @@ -8155,7 +11683,7 @@ func (c *ProjectsAgentSessionsEntityTypesDeleteCall) Do(opts ...googleapi.CallOp // }, // "path": "v2beta1/{+name}", // "response": { - // "$ref": "Empty" + // "$ref": "GoogleProtobufEmpty" // }, // "scopes": [ // "https://www.googleapis.com/auth/cloud-platform" @@ -8239,13 +11767,15 @@ func (c *ProjectsAgentSessionsEntityTypesGetCall) doRequest(alt string) (*http.R } // Do executes the "dialogflow.projects.agent.sessions.entityTypes.get" call. -// Exactly one of *SessionEntityType or error will be non-nil. Any -// non-2xx status code is an error. Response headers are in either -// *SessionEntityType.ServerResponse.Header or (if a response was -// returned at all) in error.(*googleapi.Error).Header. Use -// googleapi.IsNotModified to check whether the returned error was -// because http.StatusNotModified was returned. -func (c *ProjectsAgentSessionsEntityTypesGetCall) Do(opts ...googleapi.CallOption) (*SessionEntityType, error) { +// Exactly one of *GoogleCloudDialogflowV2beta1SessionEntityType or +// error will be non-nil. Any non-2xx status code is an error. Response +// headers are in either +// *GoogleCloudDialogflowV2beta1SessionEntityType.ServerResponse.Header +// or (if a response was returned at all) in +// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check +// whether the returned error was because http.StatusNotModified was +// returned. +func (c *ProjectsAgentSessionsEntityTypesGetCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowV2beta1SessionEntityType, error) { gensupport.SetOptions(c.urlParams_, opts...) res, err := c.doRequest("json") if res != nil && res.StatusCode == http.StatusNotModified { @@ -8264,7 +11794,7 @@ func (c *ProjectsAgentSessionsEntityTypesGetCall) Do(opts ...googleapi.CallOptio if err := googleapi.CheckResponse(res); err != nil { return nil, err } - ret := &SessionEntityType{ + ret := &GoogleCloudDialogflowV2beta1SessionEntityType{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, @@ -8285,7 +11815,7 @@ func (c *ProjectsAgentSessionsEntityTypesGetCall) Do(opts ...googleapi.CallOptio // ], // "parameters": { // "name": { - // "description": "Required. The name of the session entity type. Format:\n`projects/\u003cProject ID\u003e/agent/sessions/\u003cSession ID\u003e/entityTypes/\u003cEntity Type\nDisplay Name\u003e`.", + // "description": "Required. The name of the session entity type. Format:\n`projects/\u003cProject ID\u003e/agent/sessions/\u003cSession ID\u003e/entityTypes/\u003cEntity Type\nDisplay Name\u003e` or `projects/\u003cProject ID\u003e/agent/environments/\u003cEnvironment\nID\u003e/users/\u003cUser ID\u003e/sessions/\u003cSession ID\u003e/\nentityTypes/\u003cEntity Type Display Name\u003e`.\nNote: Environments and users re under construction and will be available\nsoon. If \u003cEnvironment ID\u003e is not specified, we assume default 'draft'\nenvironment. If \u003cUser ID\u003e is not specified, we assume default '-' user.", // "location": "path", // "pattern": "^projects/[^/]+/agent/sessions/[^/]+/entityTypes/[^/]+$", // "required": true, @@ -8294,7 +11824,7 @@ func (c *ProjectsAgentSessionsEntityTypesGetCall) Do(opts ...googleapi.CallOptio // }, // "path": "v2beta1/{+name}", // "response": { - // "$ref": "SessionEntityType" + // "$ref": "GoogleCloudDialogflowV2beta1SessionEntityType" // }, // "scopes": [ // "https://www.googleapis.com/auth/cloud-platform" @@ -8394,13 +11924,16 @@ func (c *ProjectsAgentSessionsEntityTypesListCall) doRequest(alt string) (*http. } // Do executes the "dialogflow.projects.agent.sessions.entityTypes.list" call. -// Exactly one of *ListSessionEntityTypesResponse or error will be -// non-nil. Any non-2xx status code is an error. Response headers are in -// either *ListSessionEntityTypesResponse.ServerResponse.Header or (if a -// response was returned at all) in error.(*googleapi.Error).Header. Use -// googleapi.IsNotModified to check whether the returned error was -// because http.StatusNotModified was returned. -func (c *ProjectsAgentSessionsEntityTypesListCall) Do(opts ...googleapi.CallOption) (*ListSessionEntityTypesResponse, error) { +// Exactly one of +// *GoogleCloudDialogflowV2beta1ListSessionEntityTypesResponse or error +// will be non-nil. Any non-2xx status code is an error. Response +// headers are in either +// *GoogleCloudDialogflowV2beta1ListSessionEntityTypesResponse.ServerResp +// onse.Header or (if a response was returned at all) in +// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check +// whether the returned error was because http.StatusNotModified was +// returned. +func (c *ProjectsAgentSessionsEntityTypesListCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowV2beta1ListSessionEntityTypesResponse, error) { gensupport.SetOptions(c.urlParams_, opts...) res, err := c.doRequest("json") if res != nil && res.StatusCode == http.StatusNotModified { @@ -8419,7 +11952,7 @@ func (c *ProjectsAgentSessionsEntityTypesListCall) Do(opts ...googleapi.CallOpti if err := googleapi.CheckResponse(res); err != nil { return nil, err } - ret := &ListSessionEntityTypesResponse{ + ret := &GoogleCloudDialogflowV2beta1ListSessionEntityTypesResponse{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, @@ -8451,7 +11984,7 @@ func (c *ProjectsAgentSessionsEntityTypesListCall) Do(opts ...googleapi.CallOpti // "type": "string" // }, // "parent": { - // "description": "Required. The session to list all session entity types from.\nFormat: `projects/\u003cProject ID\u003e/agent/sessions/\u003cSession ID\u003e`.", + // "description": "Required. The session to list all session entity types from.\nFormat: `projects/\u003cProject ID\u003e/agent/sessions/\u003cSession ID\u003e` or\n`projects/\u003cProject ID\u003e/agent/environments/\u003cEnvironment ID\u003e/users/\u003cUser ID\u003e/\nsessions/\u003cSession ID\u003e`.\nNote: Environments and users are under construction and will be available\nsoon. If \u003cEnvironment ID\u003e is not specified, we assume default 'draft'\nenvironment. If \u003cUser ID\u003e is not specified, we assume default '-' user.", // "location": "path", // "pattern": "^projects/[^/]+/agent/sessions/[^/]+$", // "required": true, @@ -8460,7 +11993,7 @@ func (c *ProjectsAgentSessionsEntityTypesListCall) Do(opts ...googleapi.CallOpti // }, // "path": "v2beta1/{+parent}/entityTypes", // "response": { - // "$ref": "ListSessionEntityTypesResponse" + // "$ref": "GoogleCloudDialogflowV2beta1ListSessionEntityTypesResponse" // }, // "scopes": [ // "https://www.googleapis.com/auth/cloud-platform" @@ -8472,7 +12005,7 @@ func (c *ProjectsAgentSessionsEntityTypesListCall) Do(opts ...googleapi.CallOpti // Pages invokes f for each page of results. // A non-nil error returned from f will halt the iteration. // The provided context supersedes any context provided to the Context method. -func (c *ProjectsAgentSessionsEntityTypesListCall) Pages(ctx context.Context, f func(*ListSessionEntityTypesResponse) error) error { +func (c *ProjectsAgentSessionsEntityTypesListCall) Pages(ctx context.Context, f func(*GoogleCloudDialogflowV2beta1ListSessionEntityTypesResponse) error) error { c.ctx_ = ctx defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point for { @@ -8493,19 +12026,19 @@ func (c *ProjectsAgentSessionsEntityTypesListCall) Pages(ctx context.Context, f // method id "dialogflow.projects.agent.sessions.entityTypes.patch": type ProjectsAgentSessionsEntityTypesPatchCall struct { - s *Service - nameid string - sessionentitytype *SessionEntityType - urlParams_ gensupport.URLParams - ctx_ context.Context - header_ http.Header + s *Service + nameid string + googleclouddialogflowv2beta1sessionentitytype *GoogleCloudDialogflowV2beta1SessionEntityType + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header } // Patch: Updates the specified session entity type. -func (r *ProjectsAgentSessionsEntityTypesService) Patch(nameid string, sessionentitytype *SessionEntityType) *ProjectsAgentSessionsEntityTypesPatchCall { +func (r *ProjectsAgentSessionsEntityTypesService) Patch(nameid string, googleclouddialogflowv2beta1sessionentitytype *GoogleCloudDialogflowV2beta1SessionEntityType) *ProjectsAgentSessionsEntityTypesPatchCall { c := &ProjectsAgentSessionsEntityTypesPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.nameid = nameid - c.sessionentitytype = sessionentitytype + c.googleclouddialogflowv2beta1sessionentitytype = googleclouddialogflowv2beta1sessionentitytype return c } @@ -8548,7 +12081,7 @@ func (c *ProjectsAgentSessionsEntityTypesPatchCall) doRequest(alt string) (*http } reqHeaders.Set("User-Agent", c.s.userAgent()) var body io.Reader = nil - body, err := googleapi.WithoutDataWrapper.JSONReader(c.sessionentitytype) + body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowv2beta1sessionentitytype) if err != nil { return nil, err } @@ -8565,13 +12098,15 @@ func (c *ProjectsAgentSessionsEntityTypesPatchCall) doRequest(alt string) (*http } // Do executes the "dialogflow.projects.agent.sessions.entityTypes.patch" call. -// Exactly one of *SessionEntityType or error will be non-nil. Any -// non-2xx status code is an error. Response headers are in either -// *SessionEntityType.ServerResponse.Header or (if a response was -// returned at all) in error.(*googleapi.Error).Header. Use -// googleapi.IsNotModified to check whether the returned error was -// because http.StatusNotModified was returned. -func (c *ProjectsAgentSessionsEntityTypesPatchCall) Do(opts ...googleapi.CallOption) (*SessionEntityType, error) { +// Exactly one of *GoogleCloudDialogflowV2beta1SessionEntityType or +// error will be non-nil. Any non-2xx status code is an error. Response +// headers are in either +// *GoogleCloudDialogflowV2beta1SessionEntityType.ServerResponse.Header +// or (if a response was returned at all) in +// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check +// whether the returned error was because http.StatusNotModified was +// returned. +func (c *ProjectsAgentSessionsEntityTypesPatchCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowV2beta1SessionEntityType, error) { gensupport.SetOptions(c.urlParams_, opts...) res, err := c.doRequest("json") if res != nil && res.StatusCode == http.StatusNotModified { @@ -8590,7 +12125,7 @@ func (c *ProjectsAgentSessionsEntityTypesPatchCall) Do(opts ...googleapi.CallOpt if err := googleapi.CheckResponse(res); err != nil { return nil, err } - ret := &SessionEntityType{ + ret := &GoogleCloudDialogflowV2beta1SessionEntityType{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, @@ -8611,7 +12146,7 @@ func (c *ProjectsAgentSessionsEntityTypesPatchCall) Do(opts ...googleapi.CallOpt // ], // "parameters": { // "name": { - // "description": "Required. The unique identifier of this session entity type. Format:\n`projects/\u003cProject ID\u003e/agent/sessions/\u003cSession ID\u003e/entityTypes/\u003cEntity Type\nDisplay Name\u003e`.", + // "description": "Required. The unique identifier of this session entity type. Format:\n`projects/\u003cProject ID\u003e/agent/sessions/\u003cSession ID\u003e/entityTypes/\u003cEntity Type\nDisplay Name\u003e`, or\n`projects/\u003cProject ID\u003e/agent/environments/\u003cEnvironment ID\u003e/users/\u003cUser\nID\u003e/sessions\n/\u003cSession ID\u003e/entityTypes/\u003cEntity Type Display Name\u003e`.\nNote: Environments and users are under construction and will be available\nsoon. If \u003cEnvironment ID\u003e is not specified, we assume default 'draft'\nenvironment. If \u003cUser ID\u003e is not specified, we assume default '-' user.", // "location": "path", // "pattern": "^projects/[^/]+/agent/sessions/[^/]+/entityTypes/[^/]+$", // "required": true, @@ -8626,10 +12161,10 @@ func (c *ProjectsAgentSessionsEntityTypesPatchCall) Do(opts ...googleapi.CallOpt // }, // "path": "v2beta1/{+name}", // "request": { - // "$ref": "SessionEntityType" + // "$ref": "GoogleCloudDialogflowV2beta1SessionEntityType" // }, // "response": { - // "$ref": "SessionEntityType" + // "$ref": "GoogleCloudDialogflowV2beta1SessionEntityType" // }, // "scopes": [ // "https://www.googleapis.com/auth/cloud-platform" @@ -8717,13 +12252,13 @@ func (c *ProjectsOperationsGetCall) doRequest(alt string) (*http.Response, error } // Do executes the "dialogflow.projects.operations.get" call. -// Exactly one of *Operation or error will be non-nil. Any non-2xx -// status code is an error. Response headers are in either -// *Operation.ServerResponse.Header or (if a response was returned at -// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified -// to check whether the returned error was because -// http.StatusNotModified was returned. -func (c *ProjectsOperationsGetCall) Do(opts ...googleapi.CallOption) (*Operation, error) { +// Exactly one of *GoogleLongrunningOperation or error will be non-nil. +// Any non-2xx status code is an error. Response headers are in either +// *GoogleLongrunningOperation.ServerResponse.Header or (if a response +// was returned at all) in error.(*googleapi.Error).Header. Use +// googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *ProjectsOperationsGetCall) Do(opts ...googleapi.CallOption) (*GoogleLongrunningOperation, error) { gensupport.SetOptions(c.urlParams_, opts...) res, err := c.doRequest("json") if res != nil && res.StatusCode == http.StatusNotModified { @@ -8742,7 +12277,7 @@ func (c *ProjectsOperationsGetCall) Do(opts ...googleapi.CallOption) (*Operation if err := googleapi.CheckResponse(res); err != nil { return nil, err } - ret := &Operation{ + ret := &GoogleLongrunningOperation{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, @@ -8772,7 +12307,7 @@ func (c *ProjectsOperationsGetCall) Do(opts ...googleapi.CallOption) (*Operation // }, // "path": "v2beta1/{+name}", // "response": { - // "$ref": "Operation" + // "$ref": "GoogleLongrunningOperation" // }, // "scopes": [ // "https://www.googleapis.com/auth/cloud-platform" diff --git a/vendor/google.golang.org/api/digitalassetlinks/v1/digitalassetlinks-api.json b/vendor/google.golang.org/api/digitalassetlinks/v1/digitalassetlinks-api.json index 0eac95b56..af5e6ca94 100644 --- a/vendor/google.golang.org/api/digitalassetlinks/v1/digitalassetlinks-api.json +++ b/vendor/google.golang.org/api/digitalassetlinks/v1/digitalassetlinks-api.json @@ -1,323 +1,253 @@ { - "version_module": true, - "resources": { - "statements": { - "methods": { - "list": { - "response": { - "$ref": "ListResponse" - }, - "parameterOrder": [], - "httpMethod": "GET", - "parameters": { - "source.web.site": { - "description": "Web assets are identified by a URL that contains only the scheme, hostname\nand port parts. The format is\n\n http[s]://\u003chostname\u003e[:\u003cport\u003e]\n\nHostnames must be fully qualified: they must end in a single period\n(\"`.`\").\n\nOnly the schemes \"http\" and \"https\" are currently allowed.\n\nPort numbers are given as a decimal number, and they must be omitted if the\nstandard port numbers are used: 80 for http and 443 for https.\n\nWe call this limited URL the \"site\". All URLs that share the same scheme,\nhostname and port are considered to be a part of the site and thus belong\nto the web asset.\n\nExample: the asset with the site `https://www.google.com` contains all\nthese URLs:\n\n * `https://www.google.com/`\n * `https://www.google.com:443/`\n * `https://www.google.com/foo`\n * `https://www.google.com/foo?bar`\n * `https://www.google.com/foo#bar`\n * `https://user@password:www.google.com/`\n\nBut it does not contain these URLs:\n\n * `http://www.google.com/` (wrong scheme)\n * `https://google.com/` (hostname does not match)\n * `https://www.google.com:444/` (port does not match)\nREQUIRED", - "type": "string", - "location": "query" - }, - "source.androidApp.packageName": { - "location": "query", - "description": "Android App assets are naturally identified by their Java package name.\nFor example, the Google Maps app uses the package name\n`com.google.android.apps.maps`.\nREQUIRED", - "type": "string" - }, - "source.androidApp.certificate.sha256Fingerprint": { - "location": "query", - "description": "The uppercase SHA-265 fingerprint of the certificate. From the PEM\n certificate, it can be acquired like this:\n\n $ keytool -printcert -file $CERTFILE | grep SHA256:\n SHA256: 14:6D:E9:83:C5:73:06:50:D8:EE:B9:95:2F:34:FC:64:16:A0:83: \\\n 42:E6:1D:BE:A8:8A:04:96:B2:3F:CF:44:E5\n\nor like this:\n\n $ openssl x509 -in $CERTFILE -noout -fingerprint -sha256\n SHA256 Fingerprint=14:6D:E9:83:C5:73:06:50:D8:EE:B9:95:2F:34:FC:64: \\\n 16:A0:83:42:E6:1D:BE:A8:8A:04:96:B2:3F:CF:44:E5\n\nIn this example, the contents of this field would be `14:6D:E9:83:C5:73:\n06:50:D8:EE:B9:95:2F:34:FC:64:16:A0:83:42:E6:1D:BE:A8:8A:04:96:B2:3F:CF:\n44:E5`.\n\nIf these tools are not available to you, you can convert the PEM\ncertificate into the DER format, compute the SHA-256 hash of that string\nand represent the result as a hexstring (that is, uppercase hexadecimal\nrepresentations of each octet, separated by colons).", - "type": "string" - }, - "relation": { - "location": "query", - "description": "Use only associations that match the specified relation.\n\nSee the [`Statement`](#Statement) message for a detailed definition of\nrelation strings.\n\nFor a query to match a statement, one of the following must be true:\n\n* both the query's and the statement's relation strings match exactly,\n or\n* the query's relation string is empty or missing.\n\nExample: A query with relation `delegate_permission/common.handle_all_urls`\nmatches an asset link with relation\n`delegate_permission/common.handle_all_urls`.", - "type": "string" - } - }, - "flatPath": "v1/statements:list", - "path": "v1/statements:list", - "id": "digitalassetlinks.statements.list", - "description": "Retrieves a list of all statements from a given source that match the\nspecified target and statement string.\n\nThe API guarantees that all statements with secure source assets, such as\nHTTPS websites or Android apps, have been made in a secure way by the owner\nof those assets, as described in the [Digital Asset Links technical design\nspecification](https://github.com/google/digitalassetlinks/blob/master/well-known/details.md).\nSpecifically, you should consider that for insecure websites (that is,\nwhere the URL starts with `http://` instead of `https://`), this guarantee\ncannot be made.\n\nThe `List` command is most useful in cases where the API client wants to\nknow all the ways in which two assets are related, or enumerate all the\nrelationships from a particular source asset. Example: a feature that\nhelps users navigate to related items. When a mobile app is running on a\ndevice, the feature would make it easy to navigate to the corresponding web\nsite or Google+ profile." - } - } - }, - "assetlinks": { - "methods": { - "check": { - "response": { - "$ref": "CheckResponse" - }, - "parameterOrder": [], - "httpMethod": "GET", - "parameters": { - "target.androidApp.packageName": { - "location": "query", - "description": "Android App assets are naturally identified by their Java package name.\nFor example, the Google Maps app uses the package name\n`com.google.android.apps.maps`.\nREQUIRED", - "type": "string" - }, - "source.androidApp.certificate.sha256Fingerprint": { - "description": "The uppercase SHA-265 fingerprint of the certificate. From the PEM\n certificate, it can be acquired like this:\n\n $ keytool -printcert -file $CERTFILE | grep SHA256:\n SHA256: 14:6D:E9:83:C5:73:06:50:D8:EE:B9:95:2F:34:FC:64:16:A0:83: \\\n 42:E6:1D:BE:A8:8A:04:96:B2:3F:CF:44:E5\n\nor like this:\n\n $ openssl x509 -in $CERTFILE -noout -fingerprint -sha256\n SHA256 Fingerprint=14:6D:E9:83:C5:73:06:50:D8:EE:B9:95:2F:34:FC:64: \\\n 16:A0:83:42:E6:1D:BE:A8:8A:04:96:B2:3F:CF:44:E5\n\nIn this example, the contents of this field would be `14:6D:E9:83:C5:73:\n06:50:D8:EE:B9:95:2F:34:FC:64:16:A0:83:42:E6:1D:BE:A8:8A:04:96:B2:3F:CF:\n44:E5`.\n\nIf these tools are not available to you, you can convert the PEM\ncertificate into the DER format, compute the SHA-256 hash of that string\nand represent the result as a hexstring (that is, uppercase hexadecimal\nrepresentations of each octet, separated by colons).", - "type": "string", - "location": "query" - }, - "relation": { - "description": "Query string for the relation.\n\nWe identify relations with strings of the format `\u003ckind\u003e/\u003cdetail\u003e`, where\n`\u003ckind\u003e` must be one of a set of pre-defined purpose categories, and\n`\u003cdetail\u003e` is a free-form lowercase alphanumeric string that describes the\nspecific use case of the statement.\n\nRefer to [our API documentation](/digital-asset-links/v1/relation-strings)\nfor the current list of supported relations.\n\nFor a query to match an asset link, both the query's and the asset link's\nrelation strings must match exactly.\n\nExample: A query with relation `delegate_permission/common.handle_all_urls`\nmatches an asset link with relation\n`delegate_permission/common.handle_all_urls`.", - "type": "string", - "location": "query" - }, - "target.web.site": { - "location": "query", - "description": "Web assets are identified by a URL that contains only the scheme, hostname\nand port parts. The format is\n\n http[s]://\u003chostname\u003e[:\u003cport\u003e]\n\nHostnames must be fully qualified: they must end in a single period\n(\"`.`\").\n\nOnly the schemes \"http\" and \"https\" are currently allowed.\n\nPort numbers are given as a decimal number, and they must be omitted if the\nstandard port numbers are used: 80 for http and 443 for https.\n\nWe call this limited URL the \"site\". All URLs that share the same scheme,\nhostname and port are considered to be a part of the site and thus belong\nto the web asset.\n\nExample: the asset with the site `https://www.google.com` contains all\nthese URLs:\n\n * `https://www.google.com/`\n * `https://www.google.com:443/`\n * `https://www.google.com/foo`\n * `https://www.google.com/foo?bar`\n * `https://www.google.com/foo#bar`\n * `https://user@password:www.google.com/`\n\nBut it does not contain these URLs:\n\n * `http://www.google.com/` (wrong scheme)\n * `https://google.com/` (hostname does not match)\n * `https://www.google.com:444/` (port does not match)\nREQUIRED", - "type": "string" - }, - "target.androidApp.certificate.sha256Fingerprint": { - "description": "The uppercase SHA-265 fingerprint of the certificate. From the PEM\n certificate, it can be acquired like this:\n\n $ keytool -printcert -file $CERTFILE | grep SHA256:\n SHA256: 14:6D:E9:83:C5:73:06:50:D8:EE:B9:95:2F:34:FC:64:16:A0:83: \\\n 42:E6:1D:BE:A8:8A:04:96:B2:3F:CF:44:E5\n\nor like this:\n\n $ openssl x509 -in $CERTFILE -noout -fingerprint -sha256\n SHA256 Fingerprint=14:6D:E9:83:C5:73:06:50:D8:EE:B9:95:2F:34:FC:64: \\\n 16:A0:83:42:E6:1D:BE:A8:8A:04:96:B2:3F:CF:44:E5\n\nIn this example, the contents of this field would be `14:6D:E9:83:C5:73:\n06:50:D8:EE:B9:95:2F:34:FC:64:16:A0:83:42:E6:1D:BE:A8:8A:04:96:B2:3F:CF:\n44:E5`.\n\nIf these tools are not available to you, you can convert the PEM\ncertificate into the DER format, compute the SHA-256 hash of that string\nand represent the result as a hexstring (that is, uppercase hexadecimal\nrepresentations of each octet, separated by colons).", - "type": "string", - "location": "query" - }, - "source.androidApp.packageName": { - "location": "query", - "description": "Android App assets are naturally identified by their Java package name.\nFor example, the Google Maps app uses the package name\n`com.google.android.apps.maps`.\nREQUIRED", - "type": "string" - }, - "source.web.site": { - "description": "Web assets are identified by a URL that contains only the scheme, hostname\nand port parts. The format is\n\n http[s]://\u003chostname\u003e[:\u003cport\u003e]\n\nHostnames must be fully qualified: they must end in a single period\n(\"`.`\").\n\nOnly the schemes \"http\" and \"https\" are currently allowed.\n\nPort numbers are given as a decimal number, and they must be omitted if the\nstandard port numbers are used: 80 for http and 443 for https.\n\nWe call this limited URL the \"site\". All URLs that share the same scheme,\nhostname and port are considered to be a part of the site and thus belong\nto the web asset.\n\nExample: the asset with the site `https://www.google.com` contains all\nthese URLs:\n\n * `https://www.google.com/`\n * `https://www.google.com:443/`\n * `https://www.google.com/foo`\n * `https://www.google.com/foo?bar`\n * `https://www.google.com/foo#bar`\n * `https://user@password:www.google.com/`\n\nBut it does not contain these URLs:\n\n * `http://www.google.com/` (wrong scheme)\n * `https://google.com/` (hostname does not match)\n * `https://www.google.com:444/` (port does not match)\nREQUIRED", - "type": "string", - "location": "query" - } - }, - "flatPath": "v1/assetlinks:check", - "path": "v1/assetlinks:check", - "id": "digitalassetlinks.assetlinks.check", - "description": "Determines whether the specified (directional) relationship exists between\nthe specified source and target assets.\n\nThe relation describes the intent of the link between the two assets as\nclaimed by the source asset. An example for such relationships is the\ndelegation of privileges or permissions.\n\nThis command is most often used by infrastructure systems to check\npreconditions for an action. For example, a client may want to know if it\nis OK to send a web URL to a particular mobile app instead. The client can\ncheck for the relevant asset link from the website to the mobile app to\ndecide if the operation should be allowed.\n\nA note about security: if you specify a secure asset as the source, such as\nan HTTPS website or an Android app, the API will ensure that any\nstatements used to generate the response have been made in a secure way by\nthe owner of that asset. Conversely, if the source asset is an insecure\nHTTP website (that is, the URL starts with `http://` instead of `https://`),\nthe API cannot verify its statements securely, and it is not possible to\nensure that the website's statements have not been altered by a third\nparty. For more information, see the [Digital Asset Links technical design\nspecification](https://github.com/google/digitalassetlinks/blob/master/well-known/details.md)." - } - } - } + "basePath": "", + "baseUrl": "https://digitalassetlinks.googleapis.com/", + "batchPath": "batch", + "description": "API for discovering relationships between online assets such as web sites or mobile apps.", + "discoveryVersion": "v1", + "documentationLink": "https://developers.google.com/digital-asset-links/", + "icons": { + "x16": "http://www.google.com/images/icons/product/search-16.gif", + "x32": "http://www.google.com/images/icons/product/search-32.gif" }, + "id": "digitalassetlinks:v1", + "kind": "discovery#restDescription", + "name": "digitalassetlinks", + "ownerDomain": "google.com", + "ownerName": "Google", "parameters": { - "upload_protocol": { - "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", - "type": "string", - "location": "query" - }, - "prettyPrint": { - "description": "Returns response with indentations and line breaks.", - "type": "boolean", - "default": "true", - "location": "query" - }, - "fields": { - "description": "Selector specifying which fields to include in a partial response.", - "type": "string", - "location": "query" - }, - "uploadType": { - "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", - "type": "string", - "location": "query" - }, - "callback": { - "location": "query", - "description": "JSONP", - "type": "string" - }, "$.xgafv": { + "description": "V1 error format.", + "enum": [ + "1", + "2" + ], "enumDescriptions": [ "v1 error format", "v2 error format" ], "location": "query", - "enum": [ - "1", - "2" - ], - "description": "V1 error format.", + "type": "string" + }, + "access_token": { + "description": "OAuth access token.", + "location": "query", "type": "string" }, "alt": { - "description": "Data format for response.", "default": "json", + "description": "Data format for response.", "enum": [ "json", "media", "proto" ], - "type": "string", "enumDescriptions": [ "Responses with Content-Type of application/json", "Media download with context-dependent Content-Type", "Responses with Content-Type of application/x-protobuf" ], - "location": "query" - }, - "access_token": { "location": "query", - "description": "OAuth access token.", + "type": "string" + }, + "bearer_token": { + "description": "OAuth bearer token.", + "location": "query", + "type": "string" + }, + "callback": { + "description": "JSONP", + "location": "query", + "type": "string" + }, + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "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.", - "type": "string", - "location": "query" - }, - "quotaUser": { - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", - "type": "string", - "location": "query" - }, - "pp": { - "description": "Pretty-print response.", - "type": "boolean", - "default": "true", - "location": "query" - }, - "bearer_token": { "location": "query", - "description": "OAuth bearer token.", "type": "string" }, "oauth_token": { "description": "OAuth 2.0 token for the current user.", - "type": "string", - "location": "query" + "location": "query", + "type": "string" + }, + "pp": { + "default": "true", + "description": "Pretty-print response.", + "location": "query", + "type": "boolean" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", + "location": "query", + "type": "string" + }, + "uploadType": { + "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", + "location": "query", + "type": "string" + }, + "upload_protocol": { + "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", + "location": "query", + "type": "string" } }, + "protocol": "rest", + "resources": { + "assetlinks": { + "methods": { + "check": { + "description": "Determines whether the specified (directional) relationship exists between\nthe specified source and target assets.\n\nThe relation describes the intent of the link between the two assets as\nclaimed by the source asset. An example for such relationships is the\ndelegation of privileges or permissions.\n\nThis command is most often used by infrastructure systems to check\npreconditions for an action. For example, a client may want to know if it\nis OK to send a web URL to a particular mobile app instead. The client can\ncheck for the relevant asset link from the website to the mobile app to\ndecide if the operation should be allowed.\n\nA note about security: if you specify a secure asset as the source, such as\nan HTTPS website or an Android app, the API will ensure that any\nstatements used to generate the response have been made in a secure way by\nthe owner of that asset. Conversely, if the source asset is an insecure\nHTTP website (that is, the URL starts with `http://` instead of `https://`),\nthe API cannot verify its statements securely, and it is not possible to\nensure that the website's statements have not been altered by a third\nparty. For more information, see the [Digital Asset Links technical design\nspecification](https://github.com/google/digitalassetlinks/blob/master/well-known/details.md).", + "flatPath": "v1/assetlinks:check", + "httpMethod": "GET", + "id": "digitalassetlinks.assetlinks.check", + "parameterOrder": [], + "parameters": { + "relation": { + "description": "Query string for the relation.\n\nWe identify relations with strings of the format `\u003ckind\u003e/\u003cdetail\u003e`, where\n`\u003ckind\u003e` must be one of a set of pre-defined purpose categories, and\n`\u003cdetail\u003e` is a free-form lowercase alphanumeric string that describes the\nspecific use case of the statement.\n\nRefer to [our API documentation](/digital-asset-links/v1/relation-strings)\nfor the current list of supported relations.\n\nFor a query to match an asset link, both the query's and the asset link's\nrelation strings must match exactly.\n\nExample: A query with relation `delegate_permission/common.handle_all_urls`\nmatches an asset link with relation\n`delegate_permission/common.handle_all_urls`.", + "location": "query", + "type": "string" + }, + "source.androidApp.certificate.sha256Fingerprint": { + "description": "The uppercase SHA-265 fingerprint of the certificate. From the PEM\n certificate, it can be acquired like this:\n\n $ keytool -printcert -file $CERTFILE | grep SHA256:\n SHA256: 14:6D:E9:83:C5:73:06:50:D8:EE:B9:95:2F:34:FC:64:16:A0:83: \\\n 42:E6:1D:BE:A8:8A:04:96:B2:3F:CF:44:E5\n\nor like this:\n\n $ openssl x509 -in $CERTFILE -noout -fingerprint -sha256\n SHA256 Fingerprint=14:6D:E9:83:C5:73:06:50:D8:EE:B9:95:2F:34:FC:64: \\\n 16:A0:83:42:E6:1D:BE:A8:8A:04:96:B2:3F:CF:44:E5\n\nIn this example, the contents of this field would be `14:6D:E9:83:C5:73:\n06:50:D8:EE:B9:95:2F:34:FC:64:16:A0:83:42:E6:1D:BE:A8:8A:04:96:B2:3F:CF:\n44:E5`.\n\nIf these tools are not available to you, you can convert the PEM\ncertificate into the DER format, compute the SHA-256 hash of that string\nand represent the result as a hexstring (that is, uppercase hexadecimal\nrepresentations of each octet, separated by colons).", + "location": "query", + "type": "string" + }, + "source.androidApp.packageName": { + "description": "Android App assets are naturally identified by their Java package name.\nFor example, the Google Maps app uses the package name\n`com.google.android.apps.maps`.\nREQUIRED", + "location": "query", + "type": "string" + }, + "source.web.site": { + "description": "Web assets are identified by a URL that contains only the scheme, hostname\nand port parts. The format is\n\n http[s]://\u003chostname\u003e[:\u003cport\u003e]\n\nHostnames must be fully qualified: they must end in a single period\n(\"`.`\").\n\nOnly the schemes \"http\" and \"https\" are currently allowed.\n\nPort numbers are given as a decimal number, and they must be omitted if the\nstandard port numbers are used: 80 for http and 443 for https.\n\nWe call this limited URL the \"site\". All URLs that share the same scheme,\nhostname and port are considered to be a part of the site and thus belong\nto the web asset.\n\nExample: the asset with the site `https://www.google.com` contains all\nthese URLs:\n\n * `https://www.google.com/`\n * `https://www.google.com:443/`\n * `https://www.google.com/foo`\n * `https://www.google.com/foo?bar`\n * `https://www.google.com/foo#bar`\n * `https://user@password:www.google.com/`\n\nBut it does not contain these URLs:\n\n * `http://www.google.com/` (wrong scheme)\n * `https://google.com/` (hostname does not match)\n * `https://www.google.com:444/` (port does not match)\nREQUIRED", + "location": "query", + "type": "string" + }, + "target.androidApp.certificate.sha256Fingerprint": { + "description": "The uppercase SHA-265 fingerprint of the certificate. From the PEM\n certificate, it can be acquired like this:\n\n $ keytool -printcert -file $CERTFILE | grep SHA256:\n SHA256: 14:6D:E9:83:C5:73:06:50:D8:EE:B9:95:2F:34:FC:64:16:A0:83: \\\n 42:E6:1D:BE:A8:8A:04:96:B2:3F:CF:44:E5\n\nor like this:\n\n $ openssl x509 -in $CERTFILE -noout -fingerprint -sha256\n SHA256 Fingerprint=14:6D:E9:83:C5:73:06:50:D8:EE:B9:95:2F:34:FC:64: \\\n 16:A0:83:42:E6:1D:BE:A8:8A:04:96:B2:3F:CF:44:E5\n\nIn this example, the contents of this field would be `14:6D:E9:83:C5:73:\n06:50:D8:EE:B9:95:2F:34:FC:64:16:A0:83:42:E6:1D:BE:A8:8A:04:96:B2:3F:CF:\n44:E5`.\n\nIf these tools are not available to you, you can convert the PEM\ncertificate into the DER format, compute the SHA-256 hash of that string\nand represent the result as a hexstring (that is, uppercase hexadecimal\nrepresentations of each octet, separated by colons).", + "location": "query", + "type": "string" + }, + "target.androidApp.packageName": { + "description": "Android App assets are naturally identified by their Java package name.\nFor example, the Google Maps app uses the package name\n`com.google.android.apps.maps`.\nREQUIRED", + "location": "query", + "type": "string" + }, + "target.web.site": { + "description": "Web assets are identified by a URL that contains only the scheme, hostname\nand port parts. The format is\n\n http[s]://\u003chostname\u003e[:\u003cport\u003e]\n\nHostnames must be fully qualified: they must end in a single period\n(\"`.`\").\n\nOnly the schemes \"http\" and \"https\" are currently allowed.\n\nPort numbers are given as a decimal number, and they must be omitted if the\nstandard port numbers are used: 80 for http and 443 for https.\n\nWe call this limited URL the \"site\". All URLs that share the same scheme,\nhostname and port are considered to be a part of the site and thus belong\nto the web asset.\n\nExample: the asset with the site `https://www.google.com` contains all\nthese URLs:\n\n * `https://www.google.com/`\n * `https://www.google.com:443/`\n * `https://www.google.com/foo`\n * `https://www.google.com/foo?bar`\n * `https://www.google.com/foo#bar`\n * `https://user@password:www.google.com/`\n\nBut it does not contain these URLs:\n\n * `http://www.google.com/` (wrong scheme)\n * `https://google.com/` (hostname does not match)\n * `https://www.google.com:444/` (port does not match)\nREQUIRED", + "location": "query", + "type": "string" + } + }, + "path": "v1/assetlinks:check", + "response": { + "$ref": "CheckResponse" + } + } + } + }, + "statements": { + "methods": { + "list": { + "description": "Retrieves a list of all statements from a given source that match the\nspecified target and statement string.\n\nThe API guarantees that all statements with secure source assets, such as\nHTTPS websites or Android apps, have been made in a secure way by the owner\nof those assets, as described in the [Digital Asset Links technical design\nspecification](https://github.com/google/digitalassetlinks/blob/master/well-known/details.md).\nSpecifically, you should consider that for insecure websites (that is,\nwhere the URL starts with `http://` instead of `https://`), this guarantee\ncannot be made.\n\nThe `List` command is most useful in cases where the API client wants to\nknow all the ways in which two assets are related, or enumerate all the\nrelationships from a particular source asset. Example: a feature that\nhelps users navigate to related items. When a mobile app is running on a\ndevice, the feature would make it easy to navigate to the corresponding web\nsite or Google+ profile.", + "flatPath": "v1/statements:list", + "httpMethod": "GET", + "id": "digitalassetlinks.statements.list", + "parameterOrder": [], + "parameters": { + "relation": { + "description": "Use only associations that match the specified relation.\n\nSee the [`Statement`](#Statement) message for a detailed definition of\nrelation strings.\n\nFor a query to match a statement, one of the following must be true:\n\n* both the query's and the statement's relation strings match exactly,\n or\n* the query's relation string is empty or missing.\n\nExample: A query with relation `delegate_permission/common.handle_all_urls`\nmatches an asset link with relation\n`delegate_permission/common.handle_all_urls`.", + "location": "query", + "type": "string" + }, + "source.androidApp.certificate.sha256Fingerprint": { + "description": "The uppercase SHA-265 fingerprint of the certificate. From the PEM\n certificate, it can be acquired like this:\n\n $ keytool -printcert -file $CERTFILE | grep SHA256:\n SHA256: 14:6D:E9:83:C5:73:06:50:D8:EE:B9:95:2F:34:FC:64:16:A0:83: \\\n 42:E6:1D:BE:A8:8A:04:96:B2:3F:CF:44:E5\n\nor like this:\n\n $ openssl x509 -in $CERTFILE -noout -fingerprint -sha256\n SHA256 Fingerprint=14:6D:E9:83:C5:73:06:50:D8:EE:B9:95:2F:34:FC:64: \\\n 16:A0:83:42:E6:1D:BE:A8:8A:04:96:B2:3F:CF:44:E5\n\nIn this example, the contents of this field would be `14:6D:E9:83:C5:73:\n06:50:D8:EE:B9:95:2F:34:FC:64:16:A0:83:42:E6:1D:BE:A8:8A:04:96:B2:3F:CF:\n44:E5`.\n\nIf these tools are not available to you, you can convert the PEM\ncertificate into the DER format, compute the SHA-256 hash of that string\nand represent the result as a hexstring (that is, uppercase hexadecimal\nrepresentations of each octet, separated by colons).", + "location": "query", + "type": "string" + }, + "source.androidApp.packageName": { + "description": "Android App assets are naturally identified by their Java package name.\nFor example, the Google Maps app uses the package name\n`com.google.android.apps.maps`.\nREQUIRED", + "location": "query", + "type": "string" + }, + "source.web.site": { + "description": "Web assets are identified by a URL that contains only the scheme, hostname\nand port parts. The format is\n\n http[s]://\u003chostname\u003e[:\u003cport\u003e]\n\nHostnames must be fully qualified: they must end in a single period\n(\"`.`\").\n\nOnly the schemes \"http\" and \"https\" are currently allowed.\n\nPort numbers are given as a decimal number, and they must be omitted if the\nstandard port numbers are used: 80 for http and 443 for https.\n\nWe call this limited URL the \"site\". All URLs that share the same scheme,\nhostname and port are considered to be a part of the site and thus belong\nto the web asset.\n\nExample: the asset with the site `https://www.google.com` contains all\nthese URLs:\n\n * `https://www.google.com/`\n * `https://www.google.com:443/`\n * `https://www.google.com/foo`\n * `https://www.google.com/foo?bar`\n * `https://www.google.com/foo#bar`\n * `https://user@password:www.google.com/`\n\nBut it does not contain these URLs:\n\n * `http://www.google.com/` (wrong scheme)\n * `https://google.com/` (hostname does not match)\n * `https://www.google.com:444/` (port does not match)\nREQUIRED", + "location": "query", + "type": "string" + } + }, + "path": "v1/statements:list", + "response": { + "$ref": "ListResponse" + } + } + } + } + }, + "revision": "20180204", + "rootUrl": "https://digitalassetlinks.googleapis.com/", "schemas": { - "WebAsset": { - "id": "WebAsset", - "description": "Describes a web asset.", - "type": "object", - "properties": { - "site": { - "description": "Web assets are identified by a URL that contains only the scheme, hostname\nand port parts. The format is\n\n http[s]://\u003chostname\u003e[:\u003cport\u003e]\n\nHostnames must be fully qualified: they must end in a single period\n(\"`.`\").\n\nOnly the schemes \"http\" and \"https\" are currently allowed.\n\nPort numbers are given as a decimal number, and they must be omitted if the\nstandard port numbers are used: 80 for http and 443 for https.\n\nWe call this limited URL the \"site\". All URLs that share the same scheme,\nhostname and port are considered to be a part of the site and thus belong\nto the web asset.\n\nExample: the asset with the site `https://www.google.com` contains all\nthese URLs:\n\n * `https://www.google.com/`\n * `https://www.google.com:443/`\n * `https://www.google.com/foo`\n * `https://www.google.com/foo?bar`\n * `https://www.google.com/foo#bar`\n * `https://user@password:www.google.com/`\n\nBut it does not contain these URLs:\n\n * `http://www.google.com/` (wrong scheme)\n * `https://google.com/` (hostname does not match)\n * `https://www.google.com:444/` (port does not match)\nREQUIRED", - "type": "string" - } - } - }, - "ListResponse": { - "id": "ListResponse", - "description": "Response message for the List call.", - "type": "object", - "properties": { - "statements": { - "description": "A list of all the matching statements that have been found.", - "type": "array", - "items": { - "$ref": "Statement" - } - }, - "debugString": { - "description": "Human-readable message containing information intended to help end users\nunderstand, reproduce and debug the result.\n\n\nThe message will be in English and we are currently not planning to offer\nany translations.\n\nPlease note that no guarantees are made about the contents or format of\nthis string. Any aspect of it may be subject to change without notice.\nYou should not attempt to programmatically parse this data. For\nprogrammatic access, use the error_code field below.", - "type": "string" - }, - "maxAge": { - "description": "From serving time, how much longer the response should be considered valid\nbarring further updates.\nREQUIRED", - "format": "google-duration", - "type": "string" - }, - "errorCode": { - "enumDescriptions": [ - "", - "Unable to parse query.", - "Unable to fetch the asset links data.", - "Invalid HTTPS certificate .", - "HTTP redirects (e.g, 301) are not allowed.", - "Asset links data exceeds maximum size.", - "Can't parse HTTP response.", - "HTTP Content-type should be application/json.", - "JSON content is malformed.", - "A secure asset includes an insecure asset (security downgrade).", - "Too many includes (maybe a loop)." - ], - "description": "Error codes that describe the result of the List operation.", - "type": "array", - "items": { - "type": "string", - "enum": [ - "ERROR_CODE_UNSPECIFIED", - "ERROR_CODE_INVALID_QUERY", - "ERROR_CODE_FETCH_ERROR", - "ERROR_CODE_FAILED_SSL_VALIDATION", - "ERROR_CODE_REDIRECT", - "ERROR_CODE_TOO_LARGE", - "ERROR_CODE_MALFORMED_HTTP_RESPONSE", - "ERROR_CODE_WRONG_CONTENT_TYPE", - "ERROR_CODE_MALFORMED_CONTENT", - "ERROR_CODE_SECURE_ASSET_INCLUDES_INSECURE", - "ERROR_CODE_FETCH_BUDGET_EXHAUSTED" - ] - } - } - } - }, - "Statement": { - "id": "Statement", - "description": "Describes a reliable statement that has been made about the relationship\nbetween a source asset and a target asset.\n\nStatements are always made by the source asset, either directly or by\ndelegating to a statement list that is stored elsewhere.\n\nFor more detailed definitions of statements and assets, please refer\nto our [API documentation landing\npage](/digital-asset-links/v1/getting-started).", - "type": "object", - "properties": { - "target": { - "$ref": "Asset", - "description": "Every statement has a target asset.\nREQUIRED" - }, - "source": { - "description": "Every statement has a source asset.\nREQUIRED", - "$ref": "Asset" - }, - "relation": { - "description": "The relation identifies the use of the statement as intended by the source\nasset's owner (that is, the person or entity who issued the statement).\nEvery complete statement has a relation.\n\nWe identify relations with strings of the format `\u003ckind\u003e/\u003cdetail\u003e`, where\n`\u003ckind\u003e` must be one of a set of pre-defined purpose categories, and\n`\u003cdetail\u003e` is a free-form lowercase alphanumeric string that describes the\nspecific use case of the statement.\n\nRefer to [our API documentation](/digital-asset-links/v1/relation-strings)\nfor the current list of supported relations.\n\nExample: `delegate_permission/common.handle_all_urls`\nREQUIRED", - "type": "string" - } - } - }, - "CertificateInfo": { - "description": "Describes an X509 certificate.", - "type": "object", - "properties": { - "sha256Fingerprint": { - "description": "The uppercase SHA-265 fingerprint of the certificate. From the PEM\n certificate, it can be acquired like this:\n\n $ keytool -printcert -file $CERTFILE | grep SHA256:\n SHA256: 14:6D:E9:83:C5:73:06:50:D8:EE:B9:95:2F:34:FC:64:16:A0:83: \\\n 42:E6:1D:BE:A8:8A:04:96:B2:3F:CF:44:E5\n\nor like this:\n\n $ openssl x509 -in $CERTFILE -noout -fingerprint -sha256\n SHA256 Fingerprint=14:6D:E9:83:C5:73:06:50:D8:EE:B9:95:2F:34:FC:64: \\\n 16:A0:83:42:E6:1D:BE:A8:8A:04:96:B2:3F:CF:44:E5\n\nIn this example, the contents of this field would be `14:6D:E9:83:C5:73:\n06:50:D8:EE:B9:95:2F:34:FC:64:16:A0:83:42:E6:1D:BE:A8:8A:04:96:B2:3F:CF:\n44:E5`.\n\nIf these tools are not available to you, you can convert the PEM\ncertificate into the DER format, compute the SHA-256 hash of that string\nand represent the result as a hexstring (that is, uppercase hexadecimal\nrepresentations of each octet, separated by colons).", - "type": "string" - } - }, - "id": "CertificateInfo" - }, "AndroidAppAsset": { "description": "Describes an android app asset.", - "type": "object", + "id": "AndroidAppAsset", "properties": { - "packageName": { - "description": "Android App assets are naturally identified by their Java package name.\nFor example, the Google Maps app uses the package name\n`com.google.android.apps.maps`.\nREQUIRED", - "type": "string" - }, "certificate": { "$ref": "CertificateInfo", "description": "Because there is no global enforcement of package name uniqueness, we also\nrequire a signing certificate, which in combination with the package name\nuniquely identifies an app.\n\nSome apps' signing keys are rotated, so they may be signed by different\nkeys over time. We treat these as distinct assets, since we use (package\nname, cert) as the unique ID. This should not normally pose any problems\nas both versions of the app will make the same or similar statements.\nOther assets making statements about the app will have to be updated when a\nkey is rotated, however.\n\n(Note that the syntaxes for publishing and querying for statements contain\nsyntactic sugar to easily let you specify apps that are known by multiple\ncertificates.)\nREQUIRED" + }, + "packageName": { + "description": "Android App assets are naturally identified by their Java package name.\nFor example, the Google Maps app uses the package name\n`com.google.android.apps.maps`.\nREQUIRED", + "type": "string" } }, - "id": "AndroidAppAsset" + "type": "object" }, "Asset": { "description": "Uniquely identifies an asset.\n\nA digital asset is an identifiable and addressable online entity that\ntypically provides some service or content. Examples of assets are websites,\nAndroid apps, Twitter feeds, and Plus Pages.", - "type": "object", + "id": "Asset", "properties": { "androidApp": { "$ref": "AndroidAppAsset", "description": "Set if this is an Android App asset." }, "web": { - "description": "Set if this is a web asset.", - "$ref": "WebAsset" + "$ref": "WebAsset", + "description": "Set if this is a web asset." } }, - "id": "Asset" + "type": "object" + }, + "CertificateInfo": { + "description": "Describes an X509 certificate.", + "id": "CertificateInfo", + "properties": { + "sha256Fingerprint": { + "description": "The uppercase SHA-265 fingerprint of the certificate. From the PEM\n certificate, it can be acquired like this:\n\n $ keytool -printcert -file $CERTFILE | grep SHA256:\n SHA256: 14:6D:E9:83:C5:73:06:50:D8:EE:B9:95:2F:34:FC:64:16:A0:83: \\\n 42:E6:1D:BE:A8:8A:04:96:B2:3F:CF:44:E5\n\nor like this:\n\n $ openssl x509 -in $CERTFILE -noout -fingerprint -sha256\n SHA256 Fingerprint=14:6D:E9:83:C5:73:06:50:D8:EE:B9:95:2F:34:FC:64: \\\n 16:A0:83:42:E6:1D:BE:A8:8A:04:96:B2:3F:CF:44:E5\n\nIn this example, the contents of this field would be `14:6D:E9:83:C5:73:\n06:50:D8:EE:B9:95:2F:34:FC:64:16:A0:83:42:E6:1D:BE:A8:8A:04:96:B2:3F:CF:\n44:E5`.\n\nIf these tools are not available to you, you can convert the PEM\ncertificate into the DER format, compute the SHA-256 hash of that string\nand represent the result as a hexstring (that is, uppercase hexadecimal\nrepresentations of each octet, separated by colons).", + "type": "string" + } + }, + "type": "object" }, "CheckResponse": { - "id": "CheckResponse", "description": "Response message for the CheckAssetLinks call.", - "type": "object", + "id": "CheckResponse", "properties": { - "maxAge": { - "description": "From serving time, how much longer the response should be considered valid\nbarring further updates.\nREQUIRED", - "format": "google-duration", + "debugString": { + "description": "Human-readable message containing information intended to help end users\nunderstand, reproduce and debug the result.\n\n\nThe message will be in English and we are currently not planning to offer\nany translations.\n\nPlease note that no guarantees are made about the contents or format of\nthis string. Any aspect of it may be subject to change without notice.\nYou should not attempt to programmatically parse this data. For\nprogrammatic access, use the error_code field below.", "type": "string" }, "errorCode": { + "description": "Error codes that describe the result of the Check operation.", "enumDescriptions": [ "", "Unable to parse query.", @@ -331,10 +261,7 @@ "A secure asset includes an insecure asset (security downgrade).", "Too many includes (maybe a loop)." ], - "description": "Error codes that describe the result of the Check operation.", - "type": "array", "items": { - "type": "string", "enum": [ "ERROR_CODE_UNSPECIFIED", "ERROR_CODE_INVALID_QUERY", @@ -347,39 +274,112 @@ "ERROR_CODE_MALFORMED_CONTENT", "ERROR_CODE_SECURE_ASSET_INCLUDES_INSECURE", "ERROR_CODE_FETCH_BUDGET_EXHAUSTED" - ] - } + ], + "type": "string" + }, + "type": "array" }, "linked": { "description": "Set to true if the assets specified in the request are linked by the\nrelation specified in the request.", "type": "boolean" }, + "maxAge": { + "description": "From serving time, how much longer the response should be considered valid\nbarring further updates.\nREQUIRED", + "format": "google-duration", + "type": "string" + } + }, + "type": "object" + }, + "ListResponse": { + "description": "Response message for the List call.", + "id": "ListResponse", + "properties": { "debugString": { "description": "Human-readable message containing information intended to help end users\nunderstand, reproduce and debug the result.\n\n\nThe message will be in English and we are currently not planning to offer\nany translations.\n\nPlease note that no guarantees are made about the contents or format of\nthis string. Any aspect of it may be subject to change without notice.\nYou should not attempt to programmatically parse this data. For\nprogrammatic access, use the error_code field below.", "type": "string" + }, + "errorCode": { + "description": "Error codes that describe the result of the List operation.", + "enumDescriptions": [ + "", + "Unable to parse query.", + "Unable to fetch the asset links data.", + "Invalid HTTPS certificate .", + "HTTP redirects (e.g, 301) are not allowed.", + "Asset links data exceeds maximum size.", + "Can't parse HTTP response.", + "HTTP Content-type should be application/json.", + "JSON content is malformed.", + "A secure asset includes an insecure asset (security downgrade).", + "Too many includes (maybe a loop)." + ], + "items": { + "enum": [ + "ERROR_CODE_UNSPECIFIED", + "ERROR_CODE_INVALID_QUERY", + "ERROR_CODE_FETCH_ERROR", + "ERROR_CODE_FAILED_SSL_VALIDATION", + "ERROR_CODE_REDIRECT", + "ERROR_CODE_TOO_LARGE", + "ERROR_CODE_MALFORMED_HTTP_RESPONSE", + "ERROR_CODE_WRONG_CONTENT_TYPE", + "ERROR_CODE_MALFORMED_CONTENT", + "ERROR_CODE_SECURE_ASSET_INCLUDES_INSECURE", + "ERROR_CODE_FETCH_BUDGET_EXHAUSTED" + ], + "type": "string" + }, + "type": "array" + }, + "maxAge": { + "description": "From serving time, how much longer the response should be considered valid\nbarring further updates.\nREQUIRED", + "format": "google-duration", + "type": "string" + }, + "statements": { + "description": "A list of all the matching statements that have been found.", + "items": { + "$ref": "Statement" + }, + "type": "array" } - } + }, + "type": "object" + }, + "Statement": { + "description": "Describes a reliable statement that has been made about the relationship\nbetween a source asset and a target asset.\n\nStatements are always made by the source asset, either directly or by\ndelegating to a statement list that is stored elsewhere.\n\nFor more detailed definitions of statements and assets, please refer\nto our [API documentation landing\npage](/digital-asset-links/v1/getting-started).", + "id": "Statement", + "properties": { + "relation": { + "description": "The relation identifies the use of the statement as intended by the source\nasset's owner (that is, the person or entity who issued the statement).\nEvery complete statement has a relation.\n\nWe identify relations with strings of the format `\u003ckind\u003e/\u003cdetail\u003e`, where\n`\u003ckind\u003e` must be one of a set of pre-defined purpose categories, and\n`\u003cdetail\u003e` is a free-form lowercase alphanumeric string that describes the\nspecific use case of the statement.\n\nRefer to [our API documentation](/digital-asset-links/v1/relation-strings)\nfor the current list of supported relations.\n\nExample: `delegate_permission/common.handle_all_urls`\nREQUIRED", + "type": "string" + }, + "source": { + "$ref": "Asset", + "description": "Every statement has a source asset.\nREQUIRED" + }, + "target": { + "$ref": "Asset", + "description": "Every statement has a target asset.\nREQUIRED" + } + }, + "type": "object" + }, + "WebAsset": { + "description": "Describes a web asset.", + "id": "WebAsset", + "properties": { + "site": { + "description": "Web assets are identified by a URL that contains only the scheme, hostname\nand port parts. The format is\n\n http[s]://\u003chostname\u003e[:\u003cport\u003e]\n\nHostnames must be fully qualified: they must end in a single period\n(\"`.`\").\n\nOnly the schemes \"http\" and \"https\" are currently allowed.\n\nPort numbers are given as a decimal number, and they must be omitted if the\nstandard port numbers are used: 80 for http and 443 for https.\n\nWe call this limited URL the \"site\". All URLs that share the same scheme,\nhostname and port are considered to be a part of the site and thus belong\nto the web asset.\n\nExample: the asset with the site `https://www.google.com` contains all\nthese URLs:\n\n * `https://www.google.com/`\n * `https://www.google.com:443/`\n * `https://www.google.com/foo`\n * `https://www.google.com/foo?bar`\n * `https://www.google.com/foo#bar`\n * `https://user@password:www.google.com/`\n\nBut it does not contain these URLs:\n\n * `http://www.google.com/` (wrong scheme)\n * `https://google.com/` (hostname does not match)\n * `https://www.google.com:444/` (port does not match)\nREQUIRED", + "type": "string" + } + }, + "type": "object" } }, - "protocol": "rest", - "icons": { - "x16": "http://www.google.com/images/icons/product/search-16.gif", - "x32": "http://www.google.com/images/icons/product/search-32.gif" - }, - "version": "v1", - "baseUrl": "https://digitalassetlinks.googleapis.com/", - "kind": "discovery#restDescription", - "description": "API for discovering relationships between online assets such as web sites or mobile apps.", "servicePath": "", - "rootUrl": "https://digitalassetlinks.googleapis.com/", - "basePath": "", - "ownerDomain": "google.com", - "name": "digitalassetlinks", - "batchPath": "batch", - "revision": "20180115", - "documentationLink": "https://developers.google.com/digital-asset-links/", - "id": "digitalassetlinks:v1", "title": "Digital Asset Links API", - "ownerName": "Google", - "discoveryVersion": "v1" -} + "version": "v1", + "version_module": true +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/discovery/v1/discovery-api.json b/vendor/google.golang.org/api/discovery/v1/discovery-api.json index bc7d62f26..2979778d8 100644 --- a/vendor/google.golang.org/api/discovery/v1/discovery-api.json +++ b/vendor/google.golang.org/api/discovery/v1/discovery-api.json @@ -1,684 +1,684 @@ { - "kind": "discovery#restDescription", - "etag": "\"YWOzh2SDasdU84ArJnpYek-OMdg/K3nEDF6hixE8Pks2-9Ysn9j9prQ\"", - "discoveryVersion": "v1", - "id": "discovery:v1", - "name": "discovery", - "version": "v1", - "title": "APIs Discovery Service", - "description": "Provides information about other Google APIs, such as what APIs are available, the resource, and method details for each API.", - "ownerDomain": "google.com", - "ownerName": "Google", - "icons": { - "x16": "http://www.google.com/images/icons/feature/filing_cabinet_search-g16.png", - "x32": "http://www.google.com/images/icons/feature/filing_cabinet_search-g32.png" - }, - "documentationLink": "https://developers.google.com/discovery/", - "protocol": "rest", - "baseUrl": "https://www.googleapis.com/discovery/v1/", - "basePath": "/discovery/v1/", - "rootUrl": "https://www.googleapis.com/", - "servicePath": "discovery/v1/", - "batchPath": "batch/discovery/v1", - "parameters": { - "alt": { - "type": "string", - "description": "Data format for the response.", - "default": "json", - "enum": [ - "json" - ], - "enumDescriptions": [ - "Responses with Content-Type of application/json" - ], - "location": "query" + "basePath": "/discovery/v1/", + "baseUrl": "https://www.googleapis.com/discovery/v1/", + "batchPath": "batch/discovery/v1", + "description": "Provides information about other Google APIs, such as what APIs are available, the resource, and method details for each API.", + "discoveryVersion": "v1", + "documentationLink": "https://developers.google.com/discovery/", + "etag": "\"-iA1DTNe4s-I6JZXPt1t1Ypy8IU/K3nEDF6hixE8Pks2-9Ysn9j9prQ\"", + "icons": { + "x16": "http://www.google.com/images/icons/feature/filing_cabinet_search-g16.png", + "x32": "http://www.google.com/images/icons/feature/filing_cabinet_search-g32.png" }, - "fields": { - "type": "string", - "description": "Selector specifying which fields to include in a partial response.", - "location": "query" - }, - "key": { - "type": "string", - "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" - }, - "oauth_token": { - "type": "string", - "description": "OAuth 2.0 token for the current user.", - "location": "query" - }, - "prettyPrint": { - "type": "boolean", - "description": "Returns response with indentations and line breaks.", - "default": "true", - "location": "query" - }, - "quotaUser": { - "type": "string", - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", - "location": "query" - }, - "userIp": { - "type": "string", - "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", - "location": "query" - } - }, - "schemas": { - "DirectoryList": { - "id": "DirectoryList", - "type": "object", - "properties": { - "discoveryVersion": { - "type": "string", - "description": "Indicate the version of the Discovery API used to generate this doc.", - "default": "v1" + "id": "discovery:v1", + "kind": "discovery#restDescription", + "name": "discovery", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "alt": { + "default": "json", + "description": "Data format for the response.", + "enum": [ + "json" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json" + ], + "location": "query", + "type": "string" }, - "items": { - "type": "array", - "description": "The individual directory entries. One entry per api/version pair.", - "items": { - "type": "object", - "properties": { - "description": { - "type": "string", - "description": "The description of this API." - }, - "discoveryLink": { - "type": "string", - "description": "A link to the discovery document." - }, - "discoveryRestUrl": { - "type": "string", - "description": "The URL for the discovery REST document." - }, - "documentationLink": { - "type": "string", - "description": "A link to human readable documentation for the API." - }, - "icons": { - "type": "object", - "description": "Links to 16x16 and 32x32 icons representing the API.", - "properties": { - "x16": { - "type": "string", - "description": "The URL of the 16x16 icon." - }, - "x32": { - "type": "string", - "description": "The URL of the 32x32 icon." - } - } - }, - "id": { - "type": "string", - "description": "The id of this API." - }, - "kind": { - "type": "string", - "description": "The kind for this response.", - "default": "discovery#directoryItem" - }, - "labels": { - "type": "array", - "description": "Labels for the status of this API, such as labs or deprecated.", - "items": { - "type": "string" - } - }, - "name": { - "type": "string", - "description": "The name of the API." - }, - "preferred": { - "type": "boolean", - "description": "True if this version is the preferred version to use." - }, - "title": { - "type": "string", - "description": "The title of this API." - }, - "version": { - "type": "string", - "description": "The version of the API." - } - } - } + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "location": "query", + "type": "string" }, - "kind": { - "type": "string", - "description": "The kind for this response.", - "default": "discovery#directoryList" + "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" + }, + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", + "location": "query", + "type": "string" + }, + "userIp": { + "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", + "location": "query", + "type": "string" } - } }, - "JsonSchema": { - "id": "JsonSchema", - "type": "object", - "properties": { - "$ref": { - "type": "string", - "description": "A reference to another schema. The value of this property is the \"id\" of another schema." - }, - "additionalProperties": { - "$ref": "JsonSchema", - "description": "If this is a schema for an object, this property is the schema for any additional properties with dynamic keys on this object." - }, - "annotations": { - "type": "object", - "description": "Additional information about this property.", - "properties": { - "required": { - "type": "array", - "description": "A list of methods for which this property is required on requests.", - "items": { - "type": "string" - } - } - } - }, - "default": { - "type": "string", - "description": "The default value of this property (if one exists)." - }, - "description": { - "type": "string", - "description": "A description of this object." - }, - "enum": { - "type": "array", - "description": "Values this parameter may take (if it is an enum).", - "items": { - "type": "string" - } - }, - "enumDescriptions": { - "type": "array", - "description": "The descriptions for the enums. Each position maps to the corresponding value in the \"enum\" array.", - "items": { - "type": "string" - } - }, - "format": { - "type": "string", - "description": "An additional regular expression or key that helps constrain the value. For more details see: http://tools.ietf.org/html/draft-zyp-json-schema-03#section-5.23" - }, - "id": { - "type": "string", - "description": "Unique identifier for this schema." - }, - "items": { - "$ref": "JsonSchema", - "description": "If this is a schema for an array, this property is the schema for each element in the array." - }, - "location": { - "type": "string", - "description": "Whether this parameter goes in the query or the path for REST requests." - }, - "maximum": { - "type": "string", - "description": "The maximum value of this parameter." - }, - "minimum": { - "type": "string", - "description": "The minimum value of this parameter." - }, - "pattern": { - "type": "string", - "description": "The regular expression this parameter must conform to. Uses Java 6 regex format: http://docs.oracle.com/javase/6/docs/api/java/util/regex/Pattern.html" - }, - "properties": { - "type": "object", - "description": "If this is a schema for an object, list the schema for each property of this object.", - "additionalProperties": { - "$ref": "JsonSchema", - "description": "A single property of this object. The value is itself a JSON Schema object describing this property." - } - }, - "readOnly": { - "type": "boolean", - "description": "The value is read-only, generated by the service. The value cannot be modified by the client. If the value is included in a POST, PUT, or PATCH request, it is ignored by the service." - }, - "repeated": { - "type": "boolean", - "description": "Whether this parameter may appear multiple times." - }, - "required": { - "type": "boolean", - "description": "Whether the parameter is required." - }, - "type": { - "type": "string", - "description": "The value type for this schema. A list of values can be found here: http://tools.ietf.org/html/draft-zyp-json-schema-03#section-5.1" - }, - "variant": { - "type": "object", - "description": "In a variant data type, the value of one property is used to determine how to interpret the entire entity. Its value must exist in a map of descriminant values to schema names.", - "properties": { - "discriminant": { - "type": "string", - "description": "The name of the type discriminant property." - }, - "map": { - "type": "array", - "description": "The map of discriminant value to schema to use for parsing..", - "items": { - "type": "object", - "properties": { - "$ref": { - "type": "string" - }, - "type_value": { - "type": "string" - } - } - } - } - } - } - } - }, - "RestDescription": { - "id": "RestDescription", - "type": "object", - "properties": { - "auth": { - "type": "object", - "description": "Authentication information.", - "properties": { - "oauth2": { - "type": "object", - "description": "OAuth 2.0 authentication information.", - "properties": { - "scopes": { - "type": "object", - "description": "Available OAuth 2.0 scopes.", - "additionalProperties": { - "type": "object", - "description": "The scope value.", - "properties": { - "description": { - "type": "string", - "description": "Description of scope." - } - } - } - } - } - } - } - }, - "basePath": { - "type": "string", - "description": "[DEPRECATED] The base path for REST requests." - }, - "baseUrl": { - "type": "string", - "description": "[DEPRECATED] The base URL for REST requests." - }, - "batchPath": { - "type": "string", - "description": "The path for REST batch requests." - }, - "canonicalName": { - "type": "string", - "description": "Indicates how the API name should be capitalized and split into various parts. Useful for generating pretty class names." - }, - "description": { - "type": "string", - "description": "The description of this API." - }, - "discoveryVersion": { - "type": "string", - "description": "Indicate the version of the Discovery API used to generate this doc.", - "default": "v1" - }, - "documentationLink": { - "type": "string", - "description": "A link to human readable documentation for the API." - }, - "etag": { - "type": "string", - "description": "The ETag for this response.", - "readOnly": true - }, - "exponentialBackoffDefault": { - "type": "boolean", - "description": "Enable exponential backoff for suitable methods in the generated clients." - }, - "features": { - "type": "array", - "description": "A list of supported features for this API.", - "items": { - "type": "string" - } - }, - "icons": { - "type": "object", - "description": "Links to 16x16 and 32x32 icons representing the API.", - "properties": { - "x16": { - "type": "string", - "description": "The URL of the 16x16 icon." - }, - "x32": { - "type": "string", - "description": "The URL of the 32x32 icon." - } - } - }, - "id": { - "type": "string", - "description": "The ID of this API." - }, - "kind": { - "type": "string", - "description": "The kind for this response.", - "default": "discovery#restDescription" - }, - "labels": { - "type": "array", - "description": "Labels for the status of this API, such as labs or deprecated.", - "items": { - "type": "string" - } - }, - "methods": { - "type": "object", - "description": "API-level methods for this API.", - "additionalProperties": { - "$ref": "RestMethod", - "description": "An individual method description." - } - }, - "name": { - "type": "string", - "description": "The name of this API." - }, - "ownerDomain": { - "type": "string", - "description": "The domain of the owner of this API. Together with the ownerName and a packagePath values, this can be used to generate a library for this API which would have a unique fully qualified name." - }, - "ownerName": { - "type": "string", - "description": "The name of the owner of this API. See ownerDomain." - }, - "packagePath": { - "type": "string", - "description": "The package of the owner of this API. See ownerDomain." - }, - "parameters": { - "type": "object", - "description": "Common parameters that apply across all apis.", - "additionalProperties": { - "$ref": "JsonSchema", - "description": "Description of a single parameter." - } - }, - "protocol": { - "type": "string", - "description": "The protocol described by this document.", - "default": "rest" - }, - "resources": { - "type": "object", - "description": "The resources in this API.", - "additionalProperties": { - "$ref": "RestResource", - "description": "An individual resource description. Contains methods and sub-resources related to this resource." - } - }, - "revision": { - "type": "string", - "description": "The version of this API." - }, - "rootUrl": { - "type": "string", - "description": "The root URL under which all API services live." - }, - "schemas": { - "type": "object", - "description": "The schemas for this API.", - "additionalProperties": { - "$ref": "JsonSchema", - "description": "An individual schema description." - } - }, - "servicePath": { - "type": "string", - "description": "The base path for all REST requests." - }, - "title": { - "type": "string", - "description": "The title of this API." - }, - "version": { - "type": "string", - "description": "The version of this API." - }, - "version_module": { - "type": "boolean" - } - } - }, - "RestMethod": { - "id": "RestMethod", - "type": "object", - "properties": { - "description": { - "type": "string", - "description": "Description of this method." - }, - "etagRequired": { - "type": "boolean", - "description": "Whether this method requires an ETag to be specified. The ETag is sent as an HTTP If-Match or If-None-Match header." - }, - "httpMethod": { - "type": "string", - "description": "HTTP method used by this method." - }, - "id": { - "type": "string", - "description": "A unique ID for this method. This property can be used to match methods between different versions of Discovery." - }, - "mediaUpload": { - "type": "object", - "description": "Media upload parameters.", - "properties": { - "accept": { - "type": "array", - "description": "MIME Media Ranges for acceptable media uploads to this method.", - "items": { - "type": "string" - } - }, - "maxSize": { - "type": "string", - "description": "Maximum size of a media upload, such as \"1MB\", \"2GB\" or \"3TB\"." - }, - "protocols": { - "type": "object", - "description": "Supported upload protocols.", - "properties": { - "resumable": { - "type": "object", - "description": "Supports the Resumable Media Upload protocol.", - "properties": { - "multipart": { - "type": "boolean", - "description": "True if this endpoint supports uploading multipart media.", - "default": "true" + "protocol": "rest", + "resources": { + "apis": { + "methods": { + "getRest": { + "description": "Retrieve the description of a particular version of an api.", + "httpMethod": "GET", + "id": "discovery.apis.getRest", + "parameterOrder": [ + "api", + "version" + ], + "parameters": { + "api": { + "description": "The name of the API.", + "location": "path", + "required": true, + "type": "string" + }, + "version": { + "description": "The version of the API.", + "location": "path", + "required": true, + "type": "string" + } }, - "path": { - "type": "string", - "description": "The URI path to be used for upload. Should be used in conjunction with the basePath property at the api-level." + "path": "apis/{api}/{version}/rest", + "response": { + "$ref": "RestDescription" } - } }, - "simple": { - "type": "object", - "description": "Supports uploading as a single HTTP request.", - "properties": { - "multipart": { - "type": "boolean", - "description": "True if this endpoint supports upload multipart media.", - "default": "true" + "list": { + "description": "Retrieve the list of APIs supported at this endpoint.", + "httpMethod": "GET", + "id": "discovery.apis.list", + "parameters": { + "name": { + "description": "Only include APIs with the given name.", + "location": "query", + "type": "string" + }, + "preferred": { + "default": "false", + "description": "Return only the preferred version of an API.", + "location": "query", + "type": "boolean" + } }, - "path": { - "type": "string", - "description": "The URI path to be used for upload. Should be used in conjunction with the basePath property at the api-level." + "path": "apis", + "response": { + "$ref": "DirectoryList" } - } } - } } - } - }, - "parameterOrder": { - "type": "array", - "description": "Ordered list of required parameters, serves as a hint to clients on how to structure their method signatures. The array is ordered such that the \"most-significant\" parameter appears first.", - "items": { - "type": "string" - } - }, - "parameters": { - "type": "object", - "description": "Details for all parameters in this method.", - "additionalProperties": { - "$ref": "JsonSchema", - "description": "Details for a single parameter in this method." - } - }, - "path": { - "type": "string", - "description": "The URI path of this REST method. Should be used in conjunction with the basePath property at the api-level." - }, - "request": { - "type": "object", - "description": "The schema for the request.", - "properties": { - "$ref": { - "type": "string", - "description": "Schema ID for the request schema." - }, - "parameterName": { - "type": "string", - "description": "parameter name." - } - } - }, - "response": { - "type": "object", - "description": "The schema for the response.", - "properties": { - "$ref": { - "type": "string", - "description": "Schema ID for the response schema." - } - } - }, - "scopes": { - "type": "array", - "description": "OAuth 2.0 scopes applicable to this method.", - "items": { - "type": "string" - } - }, - "supportsMediaDownload": { - "type": "boolean", - "description": "Whether this method supports media downloads." - }, - "supportsMediaUpload": { - "type": "boolean", - "description": "Whether this method supports media uploads." - }, - "supportsSubscription": { - "type": "boolean", - "description": "Whether this method supports subscriptions." - }, - "useMediaDownloadService": { - "type": "boolean", - "description": "Indicates that downloads from this method should use the download service URL (i.e. \"/download\"). Only applies if the method supports media download." } - } }, - "RestResource": { - "id": "RestResource", - "type": "object", - "properties": { - "methods": { - "type": "object", - "description": "Methods on this resource.", - "additionalProperties": { - "$ref": "RestMethod", - "description": "Description for any methods on this resource." - } - }, - "resources": { - "type": "object", - "description": "Sub-resources on this resource.", - "additionalProperties": { - "$ref": "RestResource", - "description": "Description for any sub-resources on this resource." - } - } - } - } - }, - "resources": { - "apis": { - "methods": { - "getRest": { - "id": "discovery.apis.getRest", - "path": "apis/{api}/{version}/rest", - "httpMethod": "GET", - "description": "Retrieve the description of a particular version of an api.", - "parameters": { - "api": { - "type": "string", - "description": "The name of the API.", - "required": true, - "location": "path" + "rootUrl": "https://www.googleapis.com/", + "schemas": { + "DirectoryList": { + "id": "DirectoryList", + "properties": { + "discoveryVersion": { + "default": "v1", + "description": "Indicate the version of the Discovery API used to generate this doc.", + "type": "string" + }, + "items": { + "description": "The individual directory entries. One entry per api/version pair.", + "items": { + "properties": { + "description": { + "description": "The description of this API.", + "type": "string" + }, + "discoveryLink": { + "description": "A link to the discovery document.", + "type": "string" + }, + "discoveryRestUrl": { + "description": "The URL for the discovery REST document.", + "type": "string" + }, + "documentationLink": { + "description": "A link to human readable documentation for the API.", + "type": "string" + }, + "icons": { + "description": "Links to 16x16 and 32x32 icons representing the API.", + "properties": { + "x16": { + "description": "The URL of the 16x16 icon.", + "type": "string" + }, + "x32": { + "description": "The URL of the 32x32 icon.", + "type": "string" + } + }, + "type": "object" + }, + "id": { + "description": "The id of this API.", + "type": "string" + }, + "kind": { + "default": "discovery#directoryItem", + "description": "The kind for this response.", + "type": "string" + }, + "labels": { + "description": "Labels for the status of this API, such as labs or deprecated.", + "items": { + "type": "string" + }, + "type": "array" + }, + "name": { + "description": "The name of the API.", + "type": "string" + }, + "preferred": { + "description": "True if this version is the preferred version to use.", + "type": "boolean" + }, + "title": { + "description": "The title of this API.", + "type": "string" + }, + "version": { + "description": "The version of the API.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "kind": { + "default": "discovery#directoryList", + "description": "The kind for this response.", + "type": "string" + } }, - "version": { - "type": "string", - "description": "The version of the API.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "api", - "version" - ], - "response": { - "$ref": "RestDescription" - } + "type": "object" }, - "list": { - "id": "discovery.apis.list", - "path": "apis", - "httpMethod": "GET", - "description": "Retrieve the list of APIs supported at this endpoint.", - "parameters": { - "name": { - "type": "string", - "description": "Only include APIs with the given name.", - "location": "query" + "JsonSchema": { + "id": "JsonSchema", + "properties": { + "$ref": { + "description": "A reference to another schema. The value of this property is the \"id\" of another schema.", + "type": "string" + }, + "additionalProperties": { + "$ref": "JsonSchema", + "description": "If this is a schema for an object, this property is the schema for any additional properties with dynamic keys on this object." + }, + "annotations": { + "description": "Additional information about this property.", + "properties": { + "required": { + "description": "A list of methods for which this property is required on requests.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "default": { + "description": "The default value of this property (if one exists).", + "type": "string" + }, + "description": { + "description": "A description of this object.", + "type": "string" + }, + "enum": { + "description": "Values this parameter may take (if it is an enum).", + "items": { + "type": "string" + }, + "type": "array" + }, + "enumDescriptions": { + "description": "The descriptions for the enums. Each position maps to the corresponding value in the \"enum\" array.", + "items": { + "type": "string" + }, + "type": "array" + }, + "format": { + "description": "An additional regular expression or key that helps constrain the value. For more details see: http://tools.ietf.org/html/draft-zyp-json-schema-03#section-5.23", + "type": "string" + }, + "id": { + "description": "Unique identifier for this schema.", + "type": "string" + }, + "items": { + "$ref": "JsonSchema", + "description": "If this is a schema for an array, this property is the schema for each element in the array." + }, + "location": { + "description": "Whether this parameter goes in the query or the path for REST requests.", + "type": "string" + }, + "maximum": { + "description": "The maximum value of this parameter.", + "type": "string" + }, + "minimum": { + "description": "The minimum value of this parameter.", + "type": "string" + }, + "pattern": { + "description": "The regular expression this parameter must conform to. Uses Java 6 regex format: http://docs.oracle.com/javase/6/docs/api/java/util/regex/Pattern.html", + "type": "string" + }, + "properties": { + "additionalProperties": { + "$ref": "JsonSchema", + "description": "A single property of this object. The value is itself a JSON Schema object describing this property." + }, + "description": "If this is a schema for an object, list the schema for each property of this object.", + "type": "object" + }, + "readOnly": { + "description": "The value is read-only, generated by the service. The value cannot be modified by the client. If the value is included in a POST, PUT, or PATCH request, it is ignored by the service.", + "type": "boolean" + }, + "repeated": { + "description": "Whether this parameter may appear multiple times.", + "type": "boolean" + }, + "required": { + "description": "Whether the parameter is required.", + "type": "boolean" + }, + "type": { + "description": "The value type for this schema. A list of values can be found here: http://tools.ietf.org/html/draft-zyp-json-schema-03#section-5.1", + "type": "string" + }, + "variant": { + "description": "In a variant data type, the value of one property is used to determine how to interpret the entire entity. Its value must exist in a map of descriminant values to schema names.", + "properties": { + "discriminant": { + "description": "The name of the type discriminant property.", + "type": "string" + }, + "map": { + "description": "The map of discriminant value to schema to use for parsing..", + "items": { + "properties": { + "$ref": { + "type": "string" + }, + "type_value": { + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + } + }, + "type": "object" + } }, - "preferred": { - "type": "boolean", - "description": "Return only the preferred version of an API.", - "default": "false", - "location": "query" - } - }, - "response": { - "$ref": "DirectoryList" - } + "type": "object" + }, + "RestDescription": { + "id": "RestDescription", + "properties": { + "auth": { + "description": "Authentication information.", + "properties": { + "oauth2": { + "description": "OAuth 2.0 authentication information.", + "properties": { + "scopes": { + "additionalProperties": { + "description": "The scope value.", + "properties": { + "description": { + "description": "Description of scope.", + "type": "string" + } + }, + "type": "object" + }, + "description": "Available OAuth 2.0 scopes.", + "type": "object" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "basePath": { + "description": "[DEPRECATED] The base path for REST requests.", + "type": "string" + }, + "baseUrl": { + "description": "[DEPRECATED] The base URL for REST requests.", + "type": "string" + }, + "batchPath": { + "description": "The path for REST batch requests.", + "type": "string" + }, + "canonicalName": { + "description": "Indicates how the API name should be capitalized and split into various parts. Useful for generating pretty class names.", + "type": "string" + }, + "description": { + "description": "The description of this API.", + "type": "string" + }, + "discoveryVersion": { + "default": "v1", + "description": "Indicate the version of the Discovery API used to generate this doc.", + "type": "string" + }, + "documentationLink": { + "description": "A link to human readable documentation for the API.", + "type": "string" + }, + "etag": { + "description": "The ETag for this response.", + "readOnly": true, + "type": "string" + }, + "exponentialBackoffDefault": { + "description": "Enable exponential backoff for suitable methods in the generated clients.", + "type": "boolean" + }, + "features": { + "description": "A list of supported features for this API.", + "items": { + "type": "string" + }, + "type": "array" + }, + "icons": { + "description": "Links to 16x16 and 32x32 icons representing the API.", + "properties": { + "x16": { + "description": "The URL of the 16x16 icon.", + "type": "string" + }, + "x32": { + "description": "The URL of the 32x32 icon.", + "type": "string" + } + }, + "type": "object" + }, + "id": { + "description": "The ID of this API.", + "type": "string" + }, + "kind": { + "default": "discovery#restDescription", + "description": "The kind for this response.", + "type": "string" + }, + "labels": { + "description": "Labels for the status of this API, such as labs or deprecated.", + "items": { + "type": "string" + }, + "type": "array" + }, + "methods": { + "additionalProperties": { + "$ref": "RestMethod", + "description": "An individual method description." + }, + "description": "API-level methods for this API.", + "type": "object" + }, + "name": { + "description": "The name of this API.", + "type": "string" + }, + "ownerDomain": { + "description": "The domain of the owner of this API. Together with the ownerName and a packagePath values, this can be used to generate a library for this API which would have a unique fully qualified name.", + "type": "string" + }, + "ownerName": { + "description": "The name of the owner of this API. See ownerDomain.", + "type": "string" + }, + "packagePath": { + "description": "The package of the owner of this API. See ownerDomain.", + "type": "string" + }, + "parameters": { + "additionalProperties": { + "$ref": "JsonSchema", + "description": "Description of a single parameter." + }, + "description": "Common parameters that apply across all apis.", + "type": "object" + }, + "protocol": { + "default": "rest", + "description": "The protocol described by this document.", + "type": "string" + }, + "resources": { + "additionalProperties": { + "$ref": "RestResource", + "description": "An individual resource description. Contains methods and sub-resources related to this resource." + }, + "description": "The resources in this API.", + "type": "object" + }, + "revision": { + "description": "The version of this API.", + "type": "string" + }, + "rootUrl": { + "description": "The root URL under which all API services live.", + "type": "string" + }, + "schemas": { + "additionalProperties": { + "$ref": "JsonSchema", + "description": "An individual schema description." + }, + "description": "The schemas for this API.", + "type": "object" + }, + "servicePath": { + "description": "The base path for all REST requests.", + "type": "string" + }, + "title": { + "description": "The title of this API.", + "type": "string" + }, + "version": { + "description": "The version of this API.", + "type": "string" + }, + "version_module": { + "type": "boolean" + } + }, + "type": "object" + }, + "RestMethod": { + "id": "RestMethod", + "properties": { + "description": { + "description": "Description of this method.", + "type": "string" + }, + "etagRequired": { + "description": "Whether this method requires an ETag to be specified. The ETag is sent as an HTTP If-Match or If-None-Match header.", + "type": "boolean" + }, + "httpMethod": { + "description": "HTTP method used by this method.", + "type": "string" + }, + "id": { + "description": "A unique ID for this method. This property can be used to match methods between different versions of Discovery.", + "type": "string" + }, + "mediaUpload": { + "description": "Media upload parameters.", + "properties": { + "accept": { + "description": "MIME Media Ranges for acceptable media uploads to this method.", + "items": { + "type": "string" + }, + "type": "array" + }, + "maxSize": { + "description": "Maximum size of a media upload, such as \"1MB\", \"2GB\" or \"3TB\".", + "type": "string" + }, + "protocols": { + "description": "Supported upload protocols.", + "properties": { + "resumable": { + "description": "Supports the Resumable Media Upload protocol.", + "properties": { + "multipart": { + "default": "true", + "description": "True if this endpoint supports uploading multipart media.", + "type": "boolean" + }, + "path": { + "description": "The URI path to be used for upload. Should be used in conjunction with the basePath property at the api-level.", + "type": "string" + } + }, + "type": "object" + }, + "simple": { + "description": "Supports uploading as a single HTTP request.", + "properties": { + "multipart": { + "default": "true", + "description": "True if this endpoint supports upload multipart media.", + "type": "boolean" + }, + "path": { + "description": "The URI path to be used for upload. Should be used in conjunction with the basePath property at the api-level.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "parameterOrder": { + "description": "Ordered list of required parameters, serves as a hint to clients on how to structure their method signatures. The array is ordered such that the \"most-significant\" parameter appears first.", + "items": { + "type": "string" + }, + "type": "array" + }, + "parameters": { + "additionalProperties": { + "$ref": "JsonSchema", + "description": "Details for a single parameter in this method." + }, + "description": "Details for all parameters in this method.", + "type": "object" + }, + "path": { + "description": "The URI path of this REST method. Should be used in conjunction with the basePath property at the api-level.", + "type": "string" + }, + "request": { + "description": "The schema for the request.", + "properties": { + "$ref": { + "description": "Schema ID for the request schema.", + "type": "string" + }, + "parameterName": { + "description": "parameter name.", + "type": "string" + } + }, + "type": "object" + }, + "response": { + "description": "The schema for the response.", + "properties": { + "$ref": { + "description": "Schema ID for the response schema.", + "type": "string" + } + }, + "type": "object" + }, + "scopes": { + "description": "OAuth 2.0 scopes applicable to this method.", + "items": { + "type": "string" + }, + "type": "array" + }, + "supportsMediaDownload": { + "description": "Whether this method supports media downloads.", + "type": "boolean" + }, + "supportsMediaUpload": { + "description": "Whether this method supports media uploads.", + "type": "boolean" + }, + "supportsSubscription": { + "description": "Whether this method supports subscriptions.", + "type": "boolean" + }, + "useMediaDownloadService": { + "description": "Indicates that downloads from this method should use the download service URL (i.e. \"/download\"). Only applies if the method supports media download.", + "type": "boolean" + } + }, + "type": "object" + }, + "RestResource": { + "id": "RestResource", + "properties": { + "methods": { + "additionalProperties": { + "$ref": "RestMethod", + "description": "Description for any methods on this resource." + }, + "description": "Methods on this resource.", + "type": "object" + }, + "resources": { + "additionalProperties": { + "$ref": "RestResource", + "description": "Description for any sub-resources on this resource." + }, + "description": "Sub-resources on this resource.", + "type": "object" + } + }, + "type": "object" } - } - } - } -} + }, + "servicePath": "discovery/v1/", + "title": "APIs Discovery Service", + "version": "v1" +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/dlp/v2/dlp-api.json b/vendor/google.golang.org/api/dlp/v2/dlp-api.json new file mode 100644 index 000000000..253aa0c12 --- /dev/null +++ b/vendor/google.golang.org/api/dlp/v2/dlp-api.json @@ -0,0 +1,5102 @@ +{ + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/cloud-platform": { + "description": "View and manage your data across Google Cloud Platform services" + } + } + } + }, + "basePath": "", + "baseUrl": "https://dlp.googleapis.com/", + "batchPath": "batch", + "canonicalName": "DLP", + "description": "Provides methods for detection, risk analysis, and de-identification of privacy-sensitive fragments in text, images, and Google Cloud Platform storage repositories.", + "discoveryVersion": "v1", + "documentationLink": "https://cloud.google.com/dlp/docs/", + "fullyEncodeReservedExpansion": true, + "icons": { + "x16": "http://www.google.com/images/icons/product/search-16.gif", + "x32": "http://www.google.com/images/icons/product/search-32.gif" + }, + "id": "dlp:v2", + "kind": "discovery#restDescription", + "name": "dlp", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "$.xgafv": { + "description": "V1 error format.", + "enum": [ + "1", + "2" + ], + "enumDescriptions": [ + "v1 error format", + "v2 error format" + ], + "location": "query", + "type": "string" + }, + "access_token": { + "description": "OAuth access token.", + "location": "query", + "type": "string" + }, + "alt": { + "default": "json", + "description": "Data format for response.", + "enum": [ + "json", + "media", + "proto" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json", + "Media download with context-dependent Content-Type", + "Responses with Content-Type of application/x-protobuf" + ], + "location": "query", + "type": "string" + }, + "bearer_token": { + "description": "OAuth bearer token.", + "location": "query", + "type": "string" + }, + "callback": { + "description": "JSONP", + "location": "query", + "type": "string" + }, + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "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.", + "location": "query", + "type": "string" + }, + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "pp": { + "default": "true", + "description": "Pretty-print response.", + "location": "query", + "type": "boolean" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", + "location": "query", + "type": "string" + }, + "uploadType": { + "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", + "location": "query", + "type": "string" + }, + "upload_protocol": { + "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", + "location": "query", + "type": "string" + } + }, + "protocol": "rest", + "resources": { + "infoTypes": { + "methods": { + "list": { + "description": "Returns a list of the sensitive information types that the DLP API\nsupports. For more information, see [Listing supported predefined\ninfoTypes](/dlp/docs/listing-infotypes).", + "flatPath": "v2/infoTypes", + "httpMethod": "GET", + "id": "dlp.infoTypes.list", + "parameterOrder": [], + "parameters": { + "filter": { + "description": "Optional filter to only return infoTypes supported by certain parts of the\nAPI. Defaults to supported_by=INSPECT.", + "location": "query", + "type": "string" + }, + "languageCode": { + "description": "Optional BCP-47 language code for localized infoType friendly\nnames. If omitted, or if localized strings are not available,\nen-US strings will be returned.", + "location": "query", + "type": "string" + } + }, + "path": "v2/infoTypes", + "response": { + "$ref": "GooglePrivacyDlpV2ListInfoTypesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + }, + "organizations": { + "resources": { + "deidentifyTemplates": { + "methods": { + "create": { + "description": "Creates a de-identify template for re-using frequently used configuration\nfor Deidentifying content, images, and storage.", + "flatPath": "v2/organizations/{organizationsId}/deidentifyTemplates", + "httpMethod": "POST", + "id": "dlp.organizations.deidentifyTemplates.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "The parent resource name, for example projects/my-project-id or\norganizations/my-org-id.", + "location": "path", + "pattern": "^organizations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2/{+parent}/deidentifyTemplates", + "request": { + "$ref": "GooglePrivacyDlpV2CreateDeidentifyTemplateRequest" + }, + "response": { + "$ref": "GooglePrivacyDlpV2DeidentifyTemplate" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Deletes a de-identify template.", + "flatPath": "v2/organizations/{organizationsId}/deidentifyTemplates/{deidentifyTemplatesId}", + "httpMethod": "DELETE", + "id": "dlp.organizations.deidentifyTemplates.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Resource name of the organization and deidentify template to be deleted,\nfor example `organizations/433245324/deidentifyTemplates/432452342` or\nprojects/project-id/deidentifyTemplates/432452342.", + "location": "path", + "pattern": "^organizations/[^/]+/deidentifyTemplates/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2/{+name}", + "response": { + "$ref": "GoogleProtobufEmpty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Gets a de-identify template.", + "flatPath": "v2/organizations/{organizationsId}/deidentifyTemplates/{deidentifyTemplatesId}", + "httpMethod": "GET", + "id": "dlp.organizations.deidentifyTemplates.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Resource name of the organization and deidentify template to be read, for\nexample `organizations/433245324/deidentifyTemplates/432452342` or\nprojects/project-id/deidentifyTemplates/432452342.", + "location": "path", + "pattern": "^organizations/[^/]+/deidentifyTemplates/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2/{+name}", + "response": { + "$ref": "GooglePrivacyDlpV2DeidentifyTemplate" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists de-identify templates.", + "flatPath": "v2/organizations/{organizationsId}/deidentifyTemplates", + "httpMethod": "GET", + "id": "dlp.organizations.deidentifyTemplates.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "pageSize": { + "description": "Optional size of the page, can be limited by server. If zero server returns\na page of max size 100.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional page token to continue retrieval. Comes from previous call\nto `ListDeidentifyTemplates`.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "The parent resource name, for example projects/my-project-id or\norganizations/my-org-id.", + "location": "path", + "pattern": "^organizations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2/{+parent}/deidentifyTemplates", + "response": { + "$ref": "GooglePrivacyDlpV2ListDeidentifyTemplatesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "patch": { + "description": "Updates the de-identify template.", + "flatPath": "v2/organizations/{organizationsId}/deidentifyTemplates/{deidentifyTemplatesId}", + "httpMethod": "PATCH", + "id": "dlp.organizations.deidentifyTemplates.patch", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Resource name of organization and deidentify template to be updated, for\nexample `organizations/433245324/deidentifyTemplates/432452342` or\nprojects/project-id/deidentifyTemplates/432452342.", + "location": "path", + "pattern": "^organizations/[^/]+/deidentifyTemplates/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2/{+name}", + "request": { + "$ref": "GooglePrivacyDlpV2UpdateDeidentifyTemplateRequest" + }, + "response": { + "$ref": "GooglePrivacyDlpV2DeidentifyTemplate" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + }, + "inspectTemplates": { + "methods": { + "create": { + "description": "Creates an inspect template for re-using frequently used configuration\nfor inspecting content, images, and storage.", + "flatPath": "v2/organizations/{organizationsId}/inspectTemplates", + "httpMethod": "POST", + "id": "dlp.organizations.inspectTemplates.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "The parent resource name, for example projects/my-project-id or\norganizations/my-org-id.", + "location": "path", + "pattern": "^organizations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2/{+parent}/inspectTemplates", + "request": { + "$ref": "GooglePrivacyDlpV2CreateInspectTemplateRequest" + }, + "response": { + "$ref": "GooglePrivacyDlpV2InspectTemplate" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Deletes an inspect template.", + "flatPath": "v2/organizations/{organizationsId}/inspectTemplates/{inspectTemplatesId}", + "httpMethod": "DELETE", + "id": "dlp.organizations.inspectTemplates.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Resource name of the organization and inspectTemplate to be deleted, for\nexample `organizations/433245324/inspectTemplates/432452342` or\nprojects/project-id/inspectTemplates/432452342.", + "location": "path", + "pattern": "^organizations/[^/]+/inspectTemplates/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2/{+name}", + "response": { + "$ref": "GoogleProtobufEmpty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Gets an inspect template.", + "flatPath": "v2/organizations/{organizationsId}/inspectTemplates/{inspectTemplatesId}", + "httpMethod": "GET", + "id": "dlp.organizations.inspectTemplates.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Resource name of the organization and inspectTemplate to be read, for\nexample `organizations/433245324/inspectTemplates/432452342` or\nprojects/project-id/inspectTemplates/432452342.", + "location": "path", + "pattern": "^organizations/[^/]+/inspectTemplates/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2/{+name}", + "response": { + "$ref": "GooglePrivacyDlpV2InspectTemplate" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists inspect templates.", + "flatPath": "v2/organizations/{organizationsId}/inspectTemplates", + "httpMethod": "GET", + "id": "dlp.organizations.inspectTemplates.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "pageSize": { + "description": "Optional size of the page, can be limited by server. If zero server returns\na page of max size 100.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional page token to continue retrieval. Comes from previous call\nto `ListInspectTemplates`.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "The parent resource name, for example projects/my-project-id or\norganizations/my-org-id.", + "location": "path", + "pattern": "^organizations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2/{+parent}/inspectTemplates", + "response": { + "$ref": "GooglePrivacyDlpV2ListInspectTemplatesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "patch": { + "description": "Updates the inspect template.", + "flatPath": "v2/organizations/{organizationsId}/inspectTemplates/{inspectTemplatesId}", + "httpMethod": "PATCH", + "id": "dlp.organizations.inspectTemplates.patch", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Resource name of organization and inspectTemplate to be updated, for\nexample `organizations/433245324/inspectTemplates/432452342` or\nprojects/project-id/inspectTemplates/432452342.", + "location": "path", + "pattern": "^organizations/[^/]+/inspectTemplates/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2/{+name}", + "request": { + "$ref": "GooglePrivacyDlpV2UpdateInspectTemplateRequest" + }, + "response": { + "$ref": "GooglePrivacyDlpV2InspectTemplate" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + } + } + }, + "projects": { + "resources": { + "content": { + "methods": { + "deidentify": { + "description": "De-identifies potentially sensitive info from a ContentItem.\nThis method has limits on input size and output size.\n[How-to guide](/dlp/docs/deidentify-sensitive-data)", + "flatPath": "v2/projects/{projectsId}/content:deidentify", + "httpMethod": "POST", + "id": "dlp.projects.content.deidentify", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "The parent resource name, for example projects/my-project-id.", + "location": "path", + "pattern": "^projects/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2/{+parent}/content:deidentify", + "request": { + "$ref": "GooglePrivacyDlpV2DeidentifyContentRequest" + }, + "response": { + "$ref": "GooglePrivacyDlpV2DeidentifyContentResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "inspect": { + "description": "Finds potentially sensitive info in content.\nThis method has limits on input size, processing time, and output size.\n[How-to guide for text](/dlp/docs/inspecting-text), [How-to guide for\nimages](/dlp/docs/inspecting-images)", + "flatPath": "v2/projects/{projectsId}/content:inspect", + "httpMethod": "POST", + "id": "dlp.projects.content.inspect", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "The parent resource name, for example projects/my-project-id.", + "location": "path", + "pattern": "^projects/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2/{+parent}/content:inspect", + "request": { + "$ref": "GooglePrivacyDlpV2InspectContentRequest" + }, + "response": { + "$ref": "GooglePrivacyDlpV2InspectContentResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "reidentify": { + "description": "Re-identifies content that has been de-identified.", + "flatPath": "v2/projects/{projectsId}/content:reidentify", + "httpMethod": "POST", + "id": "dlp.projects.content.reidentify", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "The parent resource name.", + "location": "path", + "pattern": "^projects/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2/{+parent}/content:reidentify", + "request": { + "$ref": "GooglePrivacyDlpV2ReidentifyContentRequest" + }, + "response": { + "$ref": "GooglePrivacyDlpV2ReidentifyContentResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + }, + "deidentifyTemplates": { + "methods": { + "create": { + "description": "Creates a de-identify template for re-using frequently used configuration\nfor Deidentifying content, images, and storage.", + "flatPath": "v2/projects/{projectsId}/deidentifyTemplates", + "httpMethod": "POST", + "id": "dlp.projects.deidentifyTemplates.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "The parent resource name, for example projects/my-project-id or\norganizations/my-org-id.", + "location": "path", + "pattern": "^projects/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2/{+parent}/deidentifyTemplates", + "request": { + "$ref": "GooglePrivacyDlpV2CreateDeidentifyTemplateRequest" + }, + "response": { + "$ref": "GooglePrivacyDlpV2DeidentifyTemplate" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Deletes a de-identify template.", + "flatPath": "v2/projects/{projectsId}/deidentifyTemplates/{deidentifyTemplatesId}", + "httpMethod": "DELETE", + "id": "dlp.projects.deidentifyTemplates.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Resource name of the organization and deidentify template to be deleted,\nfor example `organizations/433245324/deidentifyTemplates/432452342` or\nprojects/project-id/deidentifyTemplates/432452342.", + "location": "path", + "pattern": "^projects/[^/]+/deidentifyTemplates/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2/{+name}", + "response": { + "$ref": "GoogleProtobufEmpty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Gets a de-identify template.", + "flatPath": "v2/projects/{projectsId}/deidentifyTemplates/{deidentifyTemplatesId}", + "httpMethod": "GET", + "id": "dlp.projects.deidentifyTemplates.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Resource name of the organization and deidentify template to be read, for\nexample `organizations/433245324/deidentifyTemplates/432452342` or\nprojects/project-id/deidentifyTemplates/432452342.", + "location": "path", + "pattern": "^projects/[^/]+/deidentifyTemplates/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2/{+name}", + "response": { + "$ref": "GooglePrivacyDlpV2DeidentifyTemplate" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists de-identify templates.", + "flatPath": "v2/projects/{projectsId}/deidentifyTemplates", + "httpMethod": "GET", + "id": "dlp.projects.deidentifyTemplates.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "pageSize": { + "description": "Optional size of the page, can be limited by server. If zero server returns\na page of max size 100.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional page token to continue retrieval. Comes from previous call\nto `ListDeidentifyTemplates`.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "The parent resource name, for example projects/my-project-id or\norganizations/my-org-id.", + "location": "path", + "pattern": "^projects/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2/{+parent}/deidentifyTemplates", + "response": { + "$ref": "GooglePrivacyDlpV2ListDeidentifyTemplatesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "patch": { + "description": "Updates the de-identify template.", + "flatPath": "v2/projects/{projectsId}/deidentifyTemplates/{deidentifyTemplatesId}", + "httpMethod": "PATCH", + "id": "dlp.projects.deidentifyTemplates.patch", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Resource name of organization and deidentify template to be updated, for\nexample `organizations/433245324/deidentifyTemplates/432452342` or\nprojects/project-id/deidentifyTemplates/432452342.", + "location": "path", + "pattern": "^projects/[^/]+/deidentifyTemplates/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2/{+name}", + "request": { + "$ref": "GooglePrivacyDlpV2UpdateDeidentifyTemplateRequest" + }, + "response": { + "$ref": "GooglePrivacyDlpV2DeidentifyTemplate" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + }, + "dlpJobs": { + "methods": { + "cancel": { + "description": "Starts asynchronous cancellation on a long-running DlpJob. The server\nmakes a best effort to cancel the DlpJob, but success is not\nguaranteed.", + "flatPath": "v2/projects/{projectsId}/dlpJobs/{dlpJobsId}:cancel", + "httpMethod": "POST", + "id": "dlp.projects.dlpJobs.cancel", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the DlpJob resource to be cancelled.", + "location": "path", + "pattern": "^projects/[^/]+/dlpJobs/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2/{+name}:cancel", + "request": { + "$ref": "GooglePrivacyDlpV2CancelDlpJobRequest" + }, + "response": { + "$ref": "GoogleProtobufEmpty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "create": { + "description": "Creates a new job to inspect storage or calculate risk metrics [How-to\nguide](/dlp/docs/compute-risk-analysis).", + "flatPath": "v2/projects/{projectsId}/dlpJobs", + "httpMethod": "POST", + "id": "dlp.projects.dlpJobs.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "The parent resource name, for example projects/my-project-id.", + "location": "path", + "pattern": "^projects/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2/{+parent}/dlpJobs", + "request": { + "$ref": "GooglePrivacyDlpV2CreateDlpJobRequest" + }, + "response": { + "$ref": "GooglePrivacyDlpV2DlpJob" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Deletes a long-running DlpJob. This method indicates that the client is\nno longer interested in the DlpJob result. The job will be cancelled if\npossible.", + "flatPath": "v2/projects/{projectsId}/dlpJobs/{dlpJobsId}", + "httpMethod": "DELETE", + "id": "dlp.projects.dlpJobs.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the DlpJob resource to be deleted.", + "location": "path", + "pattern": "^projects/[^/]+/dlpJobs/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2/{+name}", + "response": { + "$ref": "GoogleProtobufEmpty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Gets the latest state of a long-running DlpJob.", + "flatPath": "v2/projects/{projectsId}/dlpJobs/{dlpJobsId}", + "httpMethod": "GET", + "id": "dlp.projects.dlpJobs.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the DlpJob resource.", + "location": "path", + "pattern": "^projects/[^/]+/dlpJobs/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2/{+name}", + "response": { + "$ref": "GooglePrivacyDlpV2DlpJob" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists DlpJobs that match the specified filter in the request.", + "flatPath": "v2/projects/{projectsId}/dlpJobs", + "httpMethod": "GET", + "id": "dlp.projects.dlpJobs.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "filter": { + "description": "Optional. Allows filtering.\n\nSupported syntax:\n\n* Filter expressions are made up of one or more restrictions.\n* Restrictions can be combined by `AND` or `OR` logical operators. A\nsequence of restrictions implicitly uses `AND`.\n* A restriction has the form of `\u003cfield\u003e \u003coperator\u003e \u003cvalue\u003e`.\n* Supported fields/values for inspect jobs:\n - `state` - PENDING|RUNNING|CANCELED|FINISHED|FAILED\n - `inspected_storage` - DATASTORE|CLOUD_STORAGE|BIGQUERY\n - `trigger_name` - The resource name of the trigger that created job.\n* Supported fields for risk analysis jobs:\n - `state` - RUNNING|CANCELED|FINISHED|FAILED\n* The operator must be `=` or `!=`.\n\nExamples:\n\n* inspected_storage = cloud_storage AND state = done\n* inspected_storage = cloud_storage OR inspected_storage = bigquery\n* inspected_storage = cloud_storage AND (state = done OR state = canceled)\n\nThe length of this field should be no more than 500 characters.", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "The standard list page size.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "The standard list page token.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "The parent resource name, for example projects/my-project-id.", + "location": "path", + "pattern": "^projects/[^/]+$", + "required": true, + "type": "string" + }, + "type": { + "description": "The type of job. Defaults to `DlpJobType.INSPECT`", + "enum": [ + "DLP_JOB_TYPE_UNSPECIFIED", + "INSPECT_JOB", + "RISK_ANALYSIS_JOB" + ], + "location": "query", + "type": "string" + } + }, + "path": "v2/{+parent}/dlpJobs", + "response": { + "$ref": "GooglePrivacyDlpV2ListDlpJobsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + }, + "image": { + "methods": { + "redact": { + "description": "Redacts potentially sensitive info from an image.\nThis method has limits on input size, processing time, and output size.\n[How-to guide](/dlp/docs/redacting-sensitive-data-images)", + "flatPath": "v2/projects/{projectsId}/image:redact", + "httpMethod": "POST", + "id": "dlp.projects.image.redact", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "The parent resource name, for example projects/my-project-id.", + "location": "path", + "pattern": "^projects/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2/{+parent}/image:redact", + "request": { + "$ref": "GooglePrivacyDlpV2RedactImageRequest" + }, + "response": { + "$ref": "GooglePrivacyDlpV2RedactImageResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + }, + "inspectTemplates": { + "methods": { + "create": { + "description": "Creates an inspect template for re-using frequently used configuration\nfor inspecting content, images, and storage.", + "flatPath": "v2/projects/{projectsId}/inspectTemplates", + "httpMethod": "POST", + "id": "dlp.projects.inspectTemplates.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "The parent resource name, for example projects/my-project-id or\norganizations/my-org-id.", + "location": "path", + "pattern": "^projects/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2/{+parent}/inspectTemplates", + "request": { + "$ref": "GooglePrivacyDlpV2CreateInspectTemplateRequest" + }, + "response": { + "$ref": "GooglePrivacyDlpV2InspectTemplate" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Deletes an inspect template.", + "flatPath": "v2/projects/{projectsId}/inspectTemplates/{inspectTemplatesId}", + "httpMethod": "DELETE", + "id": "dlp.projects.inspectTemplates.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Resource name of the organization and inspectTemplate to be deleted, for\nexample `organizations/433245324/inspectTemplates/432452342` or\nprojects/project-id/inspectTemplates/432452342.", + "location": "path", + "pattern": "^projects/[^/]+/inspectTemplates/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2/{+name}", + "response": { + "$ref": "GoogleProtobufEmpty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Gets an inspect template.", + "flatPath": "v2/projects/{projectsId}/inspectTemplates/{inspectTemplatesId}", + "httpMethod": "GET", + "id": "dlp.projects.inspectTemplates.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Resource name of the organization and inspectTemplate to be read, for\nexample `organizations/433245324/inspectTemplates/432452342` or\nprojects/project-id/inspectTemplates/432452342.", + "location": "path", + "pattern": "^projects/[^/]+/inspectTemplates/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2/{+name}", + "response": { + "$ref": "GooglePrivacyDlpV2InspectTemplate" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists inspect templates.", + "flatPath": "v2/projects/{projectsId}/inspectTemplates", + "httpMethod": "GET", + "id": "dlp.projects.inspectTemplates.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "pageSize": { + "description": "Optional size of the page, can be limited by server. If zero server returns\na page of max size 100.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional page token to continue retrieval. Comes from previous call\nto `ListInspectTemplates`.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "The parent resource name, for example projects/my-project-id or\norganizations/my-org-id.", + "location": "path", + "pattern": "^projects/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2/{+parent}/inspectTemplates", + "response": { + "$ref": "GooglePrivacyDlpV2ListInspectTemplatesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "patch": { + "description": "Updates the inspect template.", + "flatPath": "v2/projects/{projectsId}/inspectTemplates/{inspectTemplatesId}", + "httpMethod": "PATCH", + "id": "dlp.projects.inspectTemplates.patch", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Resource name of organization and inspectTemplate to be updated, for\nexample `organizations/433245324/inspectTemplates/432452342` or\nprojects/project-id/inspectTemplates/432452342.", + "location": "path", + "pattern": "^projects/[^/]+/inspectTemplates/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2/{+name}", + "request": { + "$ref": "GooglePrivacyDlpV2UpdateInspectTemplateRequest" + }, + "response": { + "$ref": "GooglePrivacyDlpV2InspectTemplate" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + }, + "jobTriggers": { + "methods": { + "create": { + "description": "Creates a job trigger to run DLP actions such as scanning storage for\nsensitive information on a set schedule.", + "flatPath": "v2/projects/{projectsId}/jobTriggers", + "httpMethod": "POST", + "id": "dlp.projects.jobTriggers.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "The parent resource name, for example projects/my-project-id.", + "location": "path", + "pattern": "^projects/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2/{+parent}/jobTriggers", + "request": { + "$ref": "GooglePrivacyDlpV2CreateJobTriggerRequest" + }, + "response": { + "$ref": "GooglePrivacyDlpV2JobTrigger" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Deletes a job trigger.", + "flatPath": "v2/projects/{projectsId}/jobTriggers/{jobTriggersId}", + "httpMethod": "DELETE", + "id": "dlp.projects.jobTriggers.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Resource name of the project and the triggeredJob, for example\n`projects/dlp-test-project/jobTriggers/53234423`.", + "location": "path", + "pattern": "^projects/[^/]+/jobTriggers/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2/{+name}", + "response": { + "$ref": "GoogleProtobufEmpty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Gets a job trigger.", + "flatPath": "v2/projects/{projectsId}/jobTriggers/{jobTriggersId}", + "httpMethod": "GET", + "id": "dlp.projects.jobTriggers.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Resource name of the project and the triggeredJob, for example\n`projects/dlp-test-project/jobTriggers/53234423`.", + "location": "path", + "pattern": "^projects/[^/]+/jobTriggers/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2/{+name}", + "response": { + "$ref": "GooglePrivacyDlpV2JobTrigger" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists job triggers.", + "flatPath": "v2/projects/{projectsId}/jobTriggers", + "httpMethod": "GET", + "id": "dlp.projects.jobTriggers.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "orderBy": { + "description": "Optional comma separated list of triggeredJob fields to order by,\nfollowed by 'asc/desc' postfix, i.e.\n`\"create_time asc,name desc,schedule_mode asc\"`. This list is\ncase-insensitive.\n\nExample: `\"name asc,schedule_mode desc, status desc\"`\n\nSupported filters keys and values are:\n\n- `create_time`: corresponds to time the triggeredJob was created.\n- `update_time`: corresponds to time the triggeredJob was last updated.\n- `name`: corresponds to JobTrigger's display name.\n- `status`: corresponds to the triggeredJob status.", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "Optional size of the page, can be limited by a server.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional page token to continue retrieval. Comes from previous call\nto ListJobTriggers. `order_by` and `filter` should not change for\nsubsequent calls, but can be omitted if token is specified.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "The parent resource name, for example projects/my-project-id.", + "location": "path", + "pattern": "^projects/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2/{+parent}/jobTriggers", + "response": { + "$ref": "GooglePrivacyDlpV2ListJobTriggersResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "patch": { + "description": "Updates a job trigger.", + "flatPath": "v2/projects/{projectsId}/jobTriggers/{jobTriggersId}", + "httpMethod": "PATCH", + "id": "dlp.projects.jobTriggers.patch", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Resource name of the project and the triggeredJob, for example\n`projects/dlp-test-project/jobTriggers/53234423`.", + "location": "path", + "pattern": "^projects/[^/]+/jobTriggers/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2/{+name}", + "request": { + "$ref": "GooglePrivacyDlpV2UpdateJobTriggerRequest" + }, + "response": { + "$ref": "GooglePrivacyDlpV2JobTrigger" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + } + } + } + }, + "revision": "20180328", + "rootUrl": "https://dlp.googleapis.com/", + "schemas": { + "GooglePrivacyDlpV2Action": { + "description": "A task to execute on the completion of a job.", + "id": "GooglePrivacyDlpV2Action", + "properties": { + "pubSub": { + "$ref": "GooglePrivacyDlpV2PublishToPubSub", + "description": "Publish a notification to a pubsub topic." + }, + "saveFindings": { + "$ref": "GooglePrivacyDlpV2SaveFindings", + "description": "Save resulting findings in a provided location." + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2AnalyzeDataSourceRiskDetails": { + "description": "Result of a risk analysis operation request.", + "id": "GooglePrivacyDlpV2AnalyzeDataSourceRiskDetails", + "properties": { + "categoricalStatsResult": { + "$ref": "GooglePrivacyDlpV2CategoricalStatsResult" + }, + "kAnonymityResult": { + "$ref": "GooglePrivacyDlpV2KAnonymityResult" + }, + "kMapEstimationResult": { + "$ref": "GooglePrivacyDlpV2KMapEstimationResult" + }, + "lDiversityResult": { + "$ref": "GooglePrivacyDlpV2LDiversityResult" + }, + "numericalStatsResult": { + "$ref": "GooglePrivacyDlpV2NumericalStatsResult" + }, + "requestedPrivacyMetric": { + "$ref": "GooglePrivacyDlpV2PrivacyMetric", + "description": "Privacy metric to compute." + }, + "requestedSourceTable": { + "$ref": "GooglePrivacyDlpV2BigQueryTable", + "description": "Input dataset to compute metrics over." + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2AuxiliaryTable": { + "description": "An auxiliary table contains statistical information on the relative\nfrequency of different quasi-identifiers values. It has one or several\nquasi-identifiers columns, and one column that indicates the relative\nfrequency of each quasi-identifier tuple.\nIf a tuple is present in the data but not in the auxiliary table, the\ncorresponding relative frequency is assumed to be zero (and thus, the\ntuple is highly reidentifiable).", + "id": "GooglePrivacyDlpV2AuxiliaryTable", + "properties": { + "quasiIds": { + "description": "Quasi-identifier columns. [required]", + "items": { + "$ref": "GooglePrivacyDlpV2QuasiIdField" + }, + "type": "array" + }, + "relativeFrequency": { + "$ref": "GooglePrivacyDlpV2FieldId", + "description": "The relative frequency column must contain a floating-point number\nbetween 0 and 1 (inclusive). Null values are assumed to be zero.\n[required]" + }, + "table": { + "$ref": "GooglePrivacyDlpV2BigQueryTable", + "description": "Auxiliary table location. [required]" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2BigQueryKey": { + "description": "Row key for identifying a record in BigQuery table.", + "id": "GooglePrivacyDlpV2BigQueryKey", + "properties": { + "rowNumber": { + "description": "Absolute number of the row from the beginning of the table at the time\nof scanning.", + "format": "int64", + "type": "string" + }, + "tableReference": { + "$ref": "GooglePrivacyDlpV2BigQueryTable", + "description": "Complete BigQuery table reference." + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2BigQueryOptions": { + "description": "Options defining BigQuery table and row identifiers.", + "id": "GooglePrivacyDlpV2BigQueryOptions", + "properties": { + "identifyingFields": { + "description": "References to fields uniquely identifying rows within the table.\nNested fields in the format, like `person.birthdate.year`, are allowed.", + "items": { + "$ref": "GooglePrivacyDlpV2FieldId" + }, + "type": "array" + }, + "tableReference": { + "$ref": "GooglePrivacyDlpV2BigQueryTable", + "description": "Complete BigQuery table reference." + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2BigQueryTable": { + "description": "Message defining the location of a BigQuery table. A table is uniquely\nidentified by its project_id, dataset_id, and table_name. Within a query\na table is often referenced with a string in the format of:\n`\u003cproject_id\u003e:\u003cdataset_id\u003e.\u003ctable_id\u003e` or\n`\u003cproject_id\u003e.\u003cdataset_id\u003e.\u003ctable_id\u003e`.", + "id": "GooglePrivacyDlpV2BigQueryTable", + "properties": { + "datasetId": { + "description": "Dataset ID of the table.", + "type": "string" + }, + "projectId": { + "description": "The Google Cloud Platform project ID of the project containing the table.\nIf omitted, project ID is inferred from the API call.", + "type": "string" + }, + "tableId": { + "description": "Name of the table.", + "type": "string" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2BoundingBox": { + "description": "Bounding box encompassing detected text within an image.", + "id": "GooglePrivacyDlpV2BoundingBox", + "properties": { + "height": { + "description": "Height of the bounding box in pixels.", + "format": "int32", + "type": "integer" + }, + "left": { + "description": "Left coordinate of the bounding box. (0,0) is upper left.", + "format": "int32", + "type": "integer" + }, + "top": { + "description": "Top coordinate of the bounding box. (0,0) is upper left.", + "format": "int32", + "type": "integer" + }, + "width": { + "description": "Width of the bounding box in pixels.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2Bucket": { + "description": "Bucket is represented as a range, along with replacement values.", + "id": "GooglePrivacyDlpV2Bucket", + "properties": { + "max": { + "$ref": "GooglePrivacyDlpV2Value", + "description": "Upper bound of the range, exclusive; type must match min." + }, + "min": { + "$ref": "GooglePrivacyDlpV2Value", + "description": "Lower bound of the range, inclusive. Type should be the same as max if\nused." + }, + "replacementValue": { + "$ref": "GooglePrivacyDlpV2Value", + "description": "Replacement value for this bucket. If not provided\nthe default behavior will be to hyphenate the min-max range." + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2BucketingConfig": { + "description": "Generalization function that buckets values based on ranges. The ranges and\nreplacement values are dynamically provided by the user for custom behavior,\nsuch as 1-30 -\u003e LOW 31-65 -\u003e MEDIUM 66-100 -\u003e HIGH\nThis can be used on\ndata of type: number, long, string, timestamp.\nIf the bound `Value` type differs from the type of data being transformed, we\nwill first attempt converting the type of the data to be transformed to match\nthe type of the bound before comparing.", + "id": "GooglePrivacyDlpV2BucketingConfig", + "properties": { + "buckets": { + "description": "Set of buckets. Ranges must be non-overlapping.", + "items": { + "$ref": "GooglePrivacyDlpV2Bucket" + }, + "type": "array" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2ByteContentItem": { + "description": "Container for bytes to inspect or redact.", + "id": "GooglePrivacyDlpV2ByteContentItem", + "properties": { + "data": { + "description": "Content data to inspect or redact.", + "format": "byte", + "type": "string" + }, + "type": { + "description": "The type of data stored in the bytes string. Default will be TEXT_UTF8.", + "enum": [ + "BYTES_TYPE_UNSPECIFIED", + "IMAGE", + "IMAGE_JPEG", + "IMAGE_BMP", + "IMAGE_PNG", + "IMAGE_SVG", + "TEXT_UTF8" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2CancelDlpJobRequest": { + "description": "The request message for canceling a DLP job.", + "id": "GooglePrivacyDlpV2CancelDlpJobRequest", + "properties": {}, + "type": "object" + }, + "GooglePrivacyDlpV2CategoricalStatsConfig": { + "description": "Compute numerical stats over an individual column, including\nnumber of distinct values and value count distribution.", + "id": "GooglePrivacyDlpV2CategoricalStatsConfig", + "properties": { + "field": { + "$ref": "GooglePrivacyDlpV2FieldId", + "description": "Field to compute categorical stats on. All column types are\nsupported except for arrays and structs. However, it may be more\ninformative to use NumericalStats when the field type is supported,\ndepending on the data." + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2CategoricalStatsHistogramBucket": { + "id": "GooglePrivacyDlpV2CategoricalStatsHistogramBucket", + "properties": { + "bucketSize": { + "description": "Total number of values in this bucket.", + "format": "int64", + "type": "string" + }, + "bucketValueCount": { + "description": "Total number of distinct values in this bucket.", + "format": "int64", + "type": "string" + }, + "bucketValues": { + "description": "Sample of value frequencies in this bucket. The total number of\nvalues returned per bucket is capped at 20.", + "items": { + "$ref": "GooglePrivacyDlpV2ValueFrequency" + }, + "type": "array" + }, + "valueFrequencyLowerBound": { + "description": "Lower bound on the value frequency of the values in this bucket.", + "format": "int64", + "type": "string" + }, + "valueFrequencyUpperBound": { + "description": "Upper bound on the value frequency of the values in this bucket.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2CategoricalStatsResult": { + "description": "Result of the categorical stats computation.", + "id": "GooglePrivacyDlpV2CategoricalStatsResult", + "properties": { + "valueFrequencyHistogramBuckets": { + "description": "Histogram of value frequencies in the column.", + "items": { + "$ref": "GooglePrivacyDlpV2CategoricalStatsHistogramBucket" + }, + "type": "array" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2CharacterMaskConfig": { + "description": "Partially mask a string by replacing a given number of characters with a\nfixed character. Masking can start from the beginning or end of the string.\nThis can be used on data of any type (numbers, longs, and so on) and when\nde-identifying structured data we'll attempt to preserve the original data's\ntype. (This allows you to take a long like 123 and modify it to a string like\n**3.", + "id": "GooglePrivacyDlpV2CharacterMaskConfig", + "properties": { + "charactersToIgnore": { + "description": "When masking a string, items in this list will be skipped when replacing.\nFor example, if your string is 555-555-5555 and you ask us to skip `-` and\nmask 5 chars with * we would produce ***-*55-5555.", + "items": { + "$ref": "GooglePrivacyDlpV2CharsToIgnore" + }, + "type": "array" + }, + "maskingCharacter": { + "description": "Character to mask the sensitive values\u0026mdash;for example, \"*\" for an\nalphabetic string such as name, or \"0\" for a numeric string such as ZIP\ncode or credit card number. String must have length 1. If not supplied, we\nwill default to \"*\" for strings, 0 for digits.", + "type": "string" + }, + "numberToMask": { + "description": "Number of characters to mask. If not set, all matching chars will be\nmasked. Skipped characters do not count towards this tally.", + "format": "int32", + "type": "integer" + }, + "reverseOrder": { + "description": "Mask characters in reverse order. For example, if `masking_character` is\n'0', number_to_mask is 14, and `reverse_order` is false, then\n1234-5678-9012-3456 -\u003e 00000000000000-3456\nIf `masking_character` is '*', `number_to_mask` is 3, and `reverse_order`\nis true, then 12345 -\u003e 12***", + "type": "boolean" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2CharsToIgnore": { + "description": "Characters to skip when doing deidentification of a value. These will be left\nalone and skipped.", + "id": "GooglePrivacyDlpV2CharsToIgnore", + "properties": { + "charactersToSkip": { + "type": "string" + }, + "commonCharactersToIgnore": { + "enum": [ + "COMMON_CHARS_TO_IGNORE_UNSPECIFIED", + "NUMERIC", + "ALPHA_UPPER_CASE", + "ALPHA_LOWER_CASE", + "PUNCTUATION", + "WHITESPACE" + ], + "enumDescriptions": [ + "", + "0-9", + "A-Z", + "a-z", + "US Punctuation, one of !\"#$%\u0026'()*+,-./:;\u003c=\u003e?@[\\]^_`{|}~", + "Whitespace character, one of [ \\t\\n\\x0B\\f\\r]" + ], + "type": "string" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2CloudStorageOptions": { + "description": "Options defining a file or a set of files (path ending with *) within\na Google Cloud Storage bucket.", + "id": "GooglePrivacyDlpV2CloudStorageOptions", + "properties": { + "bytesLimitPerFile": { + "description": "Max number of bytes to scan from a file. If a scanned file's size is bigger\nthan this value then the rest of the bytes are omitted.", + "format": "int64", + "type": "string" + }, + "fileSet": { + "$ref": "GooglePrivacyDlpV2FileSet" + }, + "fileTypes": { + "description": "List of file type groups to include in the scan.\nIf empty, all files are scanned and available data format processors\nare applied.", + "enumDescriptions": [ + "Includes all files.", + "Includes all file extensions not covered by other types.", + "Included file extensions:\n c, cc, cpp, cxx, c++, cs, css, dart, eml, go, h, hh, hpp, hxx, h++, hs,\n html, htm, shtml, shtm, xhtml, lhs, ini, java, js, json, ocaml, md, mkd,\n markdown, m, ml, mli, pl, pm, php, phtml, pht, py, pyw, rb, rbw, rs, rc,\n scala, sh, sql, tex, txt, asc, text, brf, vcard, vcs, wml, xml, xsl, xsd,\n yml, yaml." + ], + "items": { + "enum": [ + "FILE_TYPE_UNSPECIFIED", + "BINARY_FILE", + "TEXT_FILE" + ], + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2Color": { + "description": "Represents a color in the RGB color space.", + "id": "GooglePrivacyDlpV2Color", + "properties": { + "blue": { + "description": "The amount of blue in the color as a value in the interval [0, 1].", + "format": "float", + "type": "number" + }, + "green": { + "description": "The amount of green in the color as a value in the interval [0, 1].", + "format": "float", + "type": "number" + }, + "red": { + "description": "The amount of red in the color as a value in the interval [0, 1].", + "format": "float", + "type": "number" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2Condition": { + "description": "The field type of `value` and `field` do not need to match to be\nconsidered equal, but not all comparisons are possible.\n\nA `value` of type:\n\n- `string` can be compared against all other types\n- `boolean` can only be compared against other booleans\n- `integer` can be compared against doubles or a string if the string value\ncan be parsed as an integer.\n- `double` can be compared against integers or a string if the string can\nbe parsed as a double.\n- `Timestamp` can be compared against strings in RFC 3339 date string\nformat.\n- `TimeOfDay` can be compared against timestamps and strings in the format\nof 'HH:mm:ss'.\n\nIf we fail to compare do to type mismatch, a warning will be given and\nthe condition will evaluate to false.", + "id": "GooglePrivacyDlpV2Condition", + "properties": { + "field": { + "$ref": "GooglePrivacyDlpV2FieldId", + "description": "Field within the record this condition is evaluated against. [required]" + }, + "operator": { + "description": "Operator used to compare the field or infoType to the value. [required]", + "enum": [ + "RELATIONAL_OPERATOR_UNSPECIFIED", + "EQUAL_TO", + "NOT_EQUAL_TO", + "GREATER_THAN", + "LESS_THAN", + "GREATER_THAN_OR_EQUALS", + "LESS_THAN_OR_EQUALS", + "EXISTS" + ], + "enumDescriptions": [ + "", + "Equal.", + "Not equal to.", + "Greater than.", + "Less than.", + "Greater than or equals.", + "Less than or equals.", + "Exists" + ], + "type": "string" + }, + "value": { + "$ref": "GooglePrivacyDlpV2Value", + "description": "Value to compare against. [Required, except for `EXISTS` tests.]" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2Conditions": { + "description": "A collection of conditions.", + "id": "GooglePrivacyDlpV2Conditions", + "properties": { + "conditions": { + "items": { + "$ref": "GooglePrivacyDlpV2Condition" + }, + "type": "array" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2ContentItem": { + "description": "Container structure for the content to inspect.", + "id": "GooglePrivacyDlpV2ContentItem", + "properties": { + "byteItem": { + "$ref": "GooglePrivacyDlpV2ByteContentItem", + "description": "Content data to inspect or redact. Replaces `type` and `data`." + }, + "table": { + "$ref": "GooglePrivacyDlpV2Table", + "description": "Structured content for inspection." + }, + "value": { + "description": "String data to inspect or redact.", + "type": "string" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2ContentLocation": { + "description": "Findings container location data.", + "id": "GooglePrivacyDlpV2ContentLocation", + "properties": { + "containerName": { + "description": "Name of the container where the finding is located.\nThe top level name is the source file name or table name. Nested names\ncould be absent if the embedded object has no string identifier\n(for an example an image contained within a document).", + "type": "string" + }, + "containerTimestamp": { + "description": "Findings container modification timestamp, if applicable.\nFor Google Cloud Storage contains last file modification timestamp.\nFor BigQuery table contains last_modified_time property.\nFor Datastore - not populated.", + "format": "google-datetime", + "type": "string" + }, + "containerVersion": { + "description": "Findings container version, if available\n(\"generation\" for Google Cloud Storage).", + "type": "string" + }, + "documentLocation": { + "$ref": "GooglePrivacyDlpV2DocumentLocation", + "description": "Location data for document files." + }, + "imageLocation": { + "$ref": "GooglePrivacyDlpV2ImageLocation", + "description": "Location within an image's pixels." + }, + "recordLocation": { + "$ref": "GooglePrivacyDlpV2RecordLocation", + "description": "Location within a row or record of a database table." + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2CreateDeidentifyTemplateRequest": { + "description": "Request message for CreateDeidentifyTemplate.", + "id": "GooglePrivacyDlpV2CreateDeidentifyTemplateRequest", + "properties": { + "deidentifyTemplate": { + "$ref": "GooglePrivacyDlpV2DeidentifyTemplate", + "description": "The DeidentifyTemplate to create." + }, + "templateId": { + "description": "The template id can contain uppercase and lowercase letters,\nnumbers, and hyphens; that is, it must match the regular\nexpression: `[a-zA-Z\\\\d-]+`. The maximum length is 100\ncharacters. Can be empty to allow the system to generate one.", + "type": "string" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2CreateDlpJobRequest": { + "description": "Request message for CreateDlpJobRequest. Used to initiate long running\njobs such as calculating risk metrics or inspecting Google Cloud\nStorage.", + "id": "GooglePrivacyDlpV2CreateDlpJobRequest", + "properties": { + "inspectJob": { + "$ref": "GooglePrivacyDlpV2InspectJobConfig" + }, + "jobId": { + "description": "The job id can contain uppercase and lowercase letters,\nnumbers, and hyphens; that is, it must match the regular\nexpression: `[a-zA-Z\\\\d-]+`. The maximum length is 100\ncharacters. Can be empty to allow the system to generate one.", + "type": "string" + }, + "riskJob": { + "$ref": "GooglePrivacyDlpV2RiskAnalysisJobConfig" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2CreateInspectTemplateRequest": { + "description": "Request message for CreateInspectTemplate.", + "id": "GooglePrivacyDlpV2CreateInspectTemplateRequest", + "properties": { + "inspectTemplate": { + "$ref": "GooglePrivacyDlpV2InspectTemplate", + "description": "The InspectTemplate to create." + }, + "templateId": { + "description": "The template id can contain uppercase and lowercase letters,\nnumbers, and hyphens; that is, it must match the regular\nexpression: `[a-zA-Z\\\\d-]+`. The maximum length is 100\ncharacters. Can be empty to allow the system to generate one.", + "type": "string" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2CreateJobTriggerRequest": { + "description": "Request message for CreateJobTrigger.", + "id": "GooglePrivacyDlpV2CreateJobTriggerRequest", + "properties": { + "jobTrigger": { + "$ref": "GooglePrivacyDlpV2JobTrigger", + "description": "The JobTrigger to create." + }, + "triggerId": { + "description": "The trigger id can contain uppercase and lowercase letters,\nnumbers, and hyphens; that is, it must match the regular\nexpression: `[a-zA-Z\\\\d-]+`. The maximum length is 100\ncharacters. Can be empty to allow the system to generate one.", + "type": "string" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2CryptoHashConfig": { + "description": "Pseudonymization method that generates surrogates via cryptographic hashing.\nUses SHA-256.\nThe key size must be either 32 or 64 bytes.\nOutputs a 32 byte digest as an uppercase hex string\n(for example, 41D1567F7F99F1DC2A5FAB886DEE5BEE).\nCurrently, only string and integer values can be hashed.", + "id": "GooglePrivacyDlpV2CryptoHashConfig", + "properties": { + "cryptoKey": { + "$ref": "GooglePrivacyDlpV2CryptoKey", + "description": "The key used by the hash function." + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2CryptoKey": { + "description": "This is a data encryption key (DEK) (as opposed to\na key encryption key (KEK) stored by KMS).\nWhen using KMS to wrap/unwrap DEKs, be sure to set an appropriate\nIAM policy on the KMS CryptoKey (KEK) to ensure an attacker cannot\nunwrap the data crypto key.", + "id": "GooglePrivacyDlpV2CryptoKey", + "properties": { + "kmsWrapped": { + "$ref": "GooglePrivacyDlpV2KmsWrappedCryptoKey" + }, + "transient": { + "$ref": "GooglePrivacyDlpV2TransientCryptoKey" + }, + "unwrapped": { + "$ref": "GooglePrivacyDlpV2UnwrappedCryptoKey" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2CryptoReplaceFfxFpeConfig": { + "description": "Replaces an identifier with a surrogate using FPE with the FFX\nmode of operation; however when used in the `ReidentifyContent` API method,\nit serves the opposite function by reversing the surrogate back into\nthe original identifier.\nThe identifier must be encoded as ASCII.\nFor a given crypto key and context, the same identifier will be\nreplaced with the same surrogate.\nIdentifiers must be at least two characters long.\nIn the case that the identifier is the empty string, it will be skipped.\nSee [Pseudonymization](/dlp/docs/pseudonymization) for example usage.", + "id": "GooglePrivacyDlpV2CryptoReplaceFfxFpeConfig", + "properties": { + "commonAlphabet": { + "enum": [ + "FFX_COMMON_NATIVE_ALPHABET_UNSPECIFIED", + "NUMERIC", + "HEXADECIMAL", + "UPPER_CASE_ALPHA_NUMERIC", + "ALPHA_NUMERIC" + ], + "enumDescriptions": [ + "", + "[0-9] (radix of 10)", + "[0-9A-F] (radix of 16)", + "[0-9A-Z] (radix of 36)", + "[0-9A-Za-z] (radix of 62)" + ], + "type": "string" + }, + "context": { + "$ref": "GooglePrivacyDlpV2FieldId", + "description": "The 'tweak', a context may be used for higher security since the same\nidentifier in two different contexts won't be given the same surrogate. If\nthe context is not set, a default tweak will be used.\n\nIf the context is set but:\n\n1. there is no record present when transforming a given value or\n1. the field is not present when transforming a given value,\n\na default tweak will be used.\n\nNote that case (1) is expected when an `InfoTypeTransformation` is\napplied to both structured and non-structured `ContentItem`s.\nCurrently, the referenced field may be of value type integer or string.\n\nThe tweak is constructed as a sequence of bytes in big endian byte order\nsuch that:\n\n- a 64 bit integer is encoded followed by a single byte of value 1\n- a string is encoded in UTF-8 format followed by a single byte of value\n å 2" + }, + "cryptoKey": { + "$ref": "GooglePrivacyDlpV2CryptoKey", + "description": "The key used by the encryption algorithm. [required]" + }, + "customAlphabet": { + "description": "This is supported by mapping these to the alphanumeric characters\nthat the FFX mode natively supports. This happens before/after\nencryption/decryption.\nEach character listed must appear only once.\nNumber of characters must be in the range [2, 62].\nThis must be encoded as ASCII.\nThe order of characters does not matter.", + "type": "string" + }, + "radix": { + "description": "The native way to select the alphabet. Must be in the range [2, 62].", + "format": "int32", + "type": "integer" + }, + "surrogateInfoType": { + "$ref": "GooglePrivacyDlpV2InfoType", + "description": "The custom infoType to annotate the surrogate with.\nThis annotation will be applied to the surrogate by prefixing it with\nthe name of the custom infoType followed by the number of\ncharacters comprising the surrogate. The following scheme defines the\nformat: info_type_name(surrogate_character_count):surrogate\n\nFor example, if the name of custom infoType is 'MY_TOKEN_INFO_TYPE' and\nthe surrogate is 'abc', the full replacement value\nwill be: 'MY_TOKEN_INFO_TYPE(3):abc'\n\nThis annotation identifies the surrogate when inspecting content using the\ncustom infoType\n[`SurrogateType`](/dlp/docs/reference/rest/v2/InspectConfig#surrogatetype).\nThis facilitates reversal of the surrogate when it occurs in free text.\n\nIn order for inspection to work properly, the name of this infoType must\nnot occur naturally anywhere in your data; otherwise, inspection may\nfind a surrogate that does not correspond to an actual identifier.\nTherefore, choose your custom infoType name carefully after considering\nwhat your data looks like. One way to select a name that has a high chance\nof yielding reliable detection is to include one or more unicode characters\nthat are highly improbable to exist in your data.\nFor example, assuming your data is entered from a regular ASCII keyboard,\nthe symbol with the hex code point 29DD might be used like so:\n⧝MY_TOKEN_TYPE" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2CustomInfoType": { + "description": "Custom information type provided by the user. Used to find domain-specific\nsensitive information configurable to the data in question.", + "id": "GooglePrivacyDlpV2CustomInfoType", + "properties": { + "detectionRules": { + "description": "Set of detection rules to apply to all findings of this custom info type.\nRules are applied in order that they are specified. Not supported for the\n`surrogate_type` custom info type.", + "items": { + "$ref": "GooglePrivacyDlpV2DetectionRule" + }, + "type": "array" + }, + "dictionary": { + "$ref": "GooglePrivacyDlpV2Dictionary", + "description": "Dictionary-based custom info type." + }, + "infoType": { + "$ref": "GooglePrivacyDlpV2InfoType", + "description": "Info type configuration. All custom info types must have configurations\nthat do not conflict with built-in info types or other custom info types." + }, + "likelihood": { + "description": "Likelihood to return for this custom info type. This base value can be\naltered by a detection rule if the finding meets the criteria specified by\nthe rule. Defaults to `VERY_LIKELY` if not specified.", + "enum": [ + "LIKELIHOOD_UNSPECIFIED", + "VERY_UNLIKELY", + "UNLIKELY", + "POSSIBLE", + "LIKELY", + "VERY_LIKELY" + ], + "enumDescriptions": [ + "Default value; information with all likelihoods is included.", + "Few matching elements.", + "", + "Some matching elements.", + "", + "Many matching elements." + ], + "type": "string" + }, + "regex": { + "$ref": "GooglePrivacyDlpV2Regex", + "description": "Regex-based custom info type." + }, + "surrogateType": { + "$ref": "GooglePrivacyDlpV2SurrogateType", + "description": "Surrogate info type." + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2DatastoreKey": { + "description": "Record key for a finding in Cloud Datastore.", + "id": "GooglePrivacyDlpV2DatastoreKey", + "properties": { + "entityKey": { + "$ref": "GooglePrivacyDlpV2Key", + "description": "Datastore entity key." + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2DatastoreOptions": { + "description": "Options defining a data set within Google Cloud Datastore.", + "id": "GooglePrivacyDlpV2DatastoreOptions", + "properties": { + "kind": { + "$ref": "GooglePrivacyDlpV2KindExpression", + "description": "The kind to process." + }, + "partitionId": { + "$ref": "GooglePrivacyDlpV2PartitionId", + "description": "A partition ID identifies a grouping of entities. The grouping is always\nby project and namespace, however the namespace ID may be empty." + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2DateShiftConfig": { + "description": "Shifts dates by random number of days, with option to be consistent for the\nsame context.", + "id": "GooglePrivacyDlpV2DateShiftConfig", + "properties": { + "context": { + "$ref": "GooglePrivacyDlpV2FieldId", + "description": "Points to the field that contains the context, for example, an entity id.\nIf set, must also set method. If set, shift will be consistent for the\ngiven context." + }, + "cryptoKey": { + "$ref": "GooglePrivacyDlpV2CryptoKey", + "description": "Causes the shift to be computed based on this key and the context. This\nresults in the same shift for the same context and crypto_key." + }, + "lowerBoundDays": { + "description": "For example, -5 means shift date to at most 5 days back in the past.\n[Required]", + "format": "int32", + "type": "integer" + }, + "upperBoundDays": { + "description": "Range of shift in days. Actual shift will be selected at random within this\nrange (inclusive ends). Negative means shift to earlier in time. Must not\nbe more than 365250 days (1000 years) each direction.\n\nFor example, 3 means shift date to at most 3 days into the future.\n[Required]", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2DateTime": { + "description": "Message for a date time object.", + "id": "GooglePrivacyDlpV2DateTime", + "properties": { + "date": { + "$ref": "GoogleTypeDate", + "description": "One or more of the following must be set. All fields are optional, but\nwhen set must be valid date or time values." + }, + "dayOfWeek": { + "enum": [ + "DAY_OF_WEEK_UNSPECIFIED", + "MONDAY", + "TUESDAY", + "WEDNESDAY", + "THURSDAY", + "FRIDAY", + "SATURDAY", + "SUNDAY" + ], + "enumDescriptions": [ + "The unspecified day-of-week.", + "The day-of-week of Monday.", + "The day-of-week of Tuesday.", + "The day-of-week of Wednesday.", + "The day-of-week of Thursday.", + "The day-of-week of Friday.", + "The day-of-week of Saturday.", + "The day-of-week of Sunday." + ], + "type": "string" + }, + "time": { + "$ref": "GoogleTypeTimeOfDay" + }, + "timeZone": { + "$ref": "GooglePrivacyDlpV2TimeZone" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2DeidentifyConfig": { + "description": "The configuration that controls how the data will change.", + "id": "GooglePrivacyDlpV2DeidentifyConfig", + "properties": { + "infoTypeTransformations": { + "$ref": "GooglePrivacyDlpV2InfoTypeTransformations", + "description": "Treat the dataset as free-form text and apply the same free text\ntransformation everywhere." + }, + "recordTransformations": { + "$ref": "GooglePrivacyDlpV2RecordTransformations", + "description": "Treat the dataset as structured. Transformations can be applied to\nspecific locations within structured datasets, such as transforming\na column within a table." + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2DeidentifyContentRequest": { + "description": "Request to de-identify a list of items.", + "id": "GooglePrivacyDlpV2DeidentifyContentRequest", + "properties": { + "deidentifyConfig": { + "$ref": "GooglePrivacyDlpV2DeidentifyConfig", + "description": "Configuration for the de-identification of the content item.\nItems specified here will override the template referenced by the\ndeidentify_template_name argument." + }, + "deidentifyTemplateName": { + "description": "Optional template to use. Any configuration directly specified in\ndeidentify_config will override those set in the template. Singular fields\nthat are set in this request will replace their corresponding fields in the\ntemplate. Repeated fields are appended. Singular sub-messages and groups\nare recursively merged.", + "type": "string" + }, + "inspectConfig": { + "$ref": "GooglePrivacyDlpV2InspectConfig", + "description": "Configuration for the inspector.\nItems specified here will override the template referenced by the\ninspect_template_name argument." + }, + "inspectTemplateName": { + "description": "Optional template to use. Any configuration directly specified in\ninspect_config will override those set in the template. Singular fields\nthat are set in this request will replace their corresponding fields in the\ntemplate. Repeated fields are appended. Singular sub-messages and groups\nare recursively merged.", + "type": "string" + }, + "item": { + "$ref": "GooglePrivacyDlpV2ContentItem", + "description": "The item to de-identify. Will be treated as text." + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2DeidentifyContentResponse": { + "description": "Results of de-identifying a ContentItem.", + "id": "GooglePrivacyDlpV2DeidentifyContentResponse", + "properties": { + "item": { + "$ref": "GooglePrivacyDlpV2ContentItem", + "description": "The de-identified item." + }, + "overview": { + "$ref": "GooglePrivacyDlpV2TransformationOverview", + "description": "An overview of the changes that were made on the `item`." + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2DeidentifyTemplate": { + "description": "The DeidentifyTemplates contains instructions on how to deidentify content.", + "id": "GooglePrivacyDlpV2DeidentifyTemplate", + "properties": { + "createTime": { + "description": "The creation timestamp of a inspectTemplate, output only field.", + "format": "google-datetime", + "type": "string" + }, + "deidentifyConfig": { + "$ref": "GooglePrivacyDlpV2DeidentifyConfig", + "description": "///////////// // The core content of the template // ///////////////" + }, + "description": { + "description": "Short description (max 256 chars).", + "type": "string" + }, + "displayName": { + "description": "Display name (max 256 chars).", + "type": "string" + }, + "name": { + "description": "The template name. Output only.\n\nThe template will have one of the following formats:\n`projects/PROJECT_ID/deidentifyTemplates/TEMPLATE_ID` OR\n`organizations/ORGANIZATION_ID/deidentifyTemplates/TEMPLATE_ID`", + "type": "string" + }, + "updateTime": { + "description": "The last update timestamp of a inspectTemplate, output only field.", + "format": "google-datetime", + "type": "string" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2DetectionRule": { + "description": "Rule for modifying a custom info type to alter behavior under certain\ncircumstances, depending on the specific details of the rule. Not supported\nfor the `surrogate_type` custom info type.", + "id": "GooglePrivacyDlpV2DetectionRule", + "properties": { + "hotwordRule": { + "$ref": "GooglePrivacyDlpV2HotwordRule", + "description": "Hotword-based detection rule." + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2Dictionary": { + "description": "Custom information type based on a dictionary of words or phrases. This can\nbe used to match sensitive information specific to the data, such as a list\nof employee IDs or job titles.\n\nDictionary words are case-insensitive and all characters other than letters\nand digits in the unicode [Basic Multilingual\nPlane](https://en.wikipedia.org/wiki/Plane_%28Unicode%29#Basic_Multilingual_Plane)\nwill be replaced with whitespace when scanning for matches, so the\ndictionary phrase \"Sam Johnson\" will match all three phrases \"sam johnson\",\n\"Sam, Johnson\", and \"Sam (Johnson)\". Additionally, the characters\nsurrounding any match must be of a different type than the adjacent\ncharacters within the word, so letters must be next to non-letters and\ndigits next to non-digits. For example, the dictionary word \"jen\" will\nmatch the first three letters of the text \"jen123\" but will return no\nmatches for \"jennifer\".\n\nDictionary words containing a large number of characters that are not\nletters or digits may result in unexpected findings because such characters\nare treated as whitespace.", + "id": "GooglePrivacyDlpV2Dictionary", + "properties": { + "wordList": { + "$ref": "GooglePrivacyDlpV2WordList", + "description": "List of words or phrases to search for." + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2DlpJob": { + "description": "Combines all of the information about a DLP job.", + "id": "GooglePrivacyDlpV2DlpJob", + "properties": { + "createTime": { + "description": "Time when the job was created.", + "format": "google-datetime", + "type": "string" + }, + "endTime": { + "description": "Time when the job finished.", + "format": "google-datetime", + "type": "string" + }, + "errors": { + "description": "A stream of errors encountered running the job.", + "items": { + "$ref": "GooglePrivacyDlpV2Error" + }, + "type": "array" + }, + "inspectDetails": { + "$ref": "GooglePrivacyDlpV2InspectDataSourceDetails", + "description": "Results from inspecting a data source." + }, + "jobTriggerName": { + "description": "If created by a job trigger, the resource name of the trigger that\ninstantiated the job.", + "type": "string" + }, + "name": { + "description": "The server-assigned name.", + "type": "string" + }, + "riskDetails": { + "$ref": "GooglePrivacyDlpV2AnalyzeDataSourceRiskDetails", + "description": "Results from analyzing risk of a data source." + }, + "startTime": { + "description": "Time when the job started.", + "format": "google-datetime", + "type": "string" + }, + "state": { + "description": "State of a job.", + "enum": [ + "JOB_STATE_UNSPECIFIED", + "PENDING", + "RUNNING", + "DONE", + "CANCELED", + "FAILED" + ], + "enumDescriptions": [ + "", + "The job has not yet started.", + "The job is currently running.", + "The job is no longer running.", + "The job was canceled before it could complete.", + "The job had an error and did not complete." + ], + "type": "string" + }, + "type": { + "description": "The type of job.", + "enum": [ + "DLP_JOB_TYPE_UNSPECIFIED", + "INSPECT_JOB", + "RISK_ANALYSIS_JOB" + ], + "enumDescriptions": [ + "", + "The job inspected Google Cloud for sensitive data.", + "The job executed a Risk Analysis computation." + ], + "type": "string" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2DocumentLocation": { + "description": "Location of a finding within a document.", + "id": "GooglePrivacyDlpV2DocumentLocation", + "properties": { + "fileOffset": { + "description": "Offset of the line, from the beginning of the file, where the finding\nis located.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2Error": { + "description": "Details information about an error encountered during job execution or\nthe results of an unsuccessful activation of the JobTrigger.\nOutput only field.", + "id": "GooglePrivacyDlpV2Error", + "properties": { + "details": { + "$ref": "GoogleRpcStatus" + }, + "timestamps": { + "description": "The times the error occurred.", + "items": { + "format": "google-datetime", + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2Expressions": { + "description": "An expression, consisting or an operator and conditions.", + "id": "GooglePrivacyDlpV2Expressions", + "properties": { + "conditions": { + "$ref": "GooglePrivacyDlpV2Conditions" + }, + "logicalOperator": { + "description": "The operator to apply to the result of conditions. Default and currently\nonly supported value is `AND`.", + "enum": [ + "LOGICAL_OPERATOR_UNSPECIFIED", + "AND" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2FieldId": { + "description": "General identifier of a data field in a storage service.", + "id": "GooglePrivacyDlpV2FieldId", + "properties": { + "name": { + "description": "Name describing the field.", + "type": "string" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2FieldTransformation": { + "description": "The transformation to apply to the field.", + "id": "GooglePrivacyDlpV2FieldTransformation", + "properties": { + "condition": { + "$ref": "GooglePrivacyDlpV2RecordCondition", + "description": "Only apply the transformation if the condition evaluates to true for the\ngiven `RecordCondition`. The conditions are allowed to reference fields\nthat are not used in the actual transformation. [optional]\n\nExample Use Cases:\n\n- Apply a different bucket transformation to an age column if the zip code\ncolumn for the same record is within a specific range.\n- Redact a field if the date of birth field is greater than 85." + }, + "fields": { + "description": "Input field(s) to apply the transformation to. [required]", + "items": { + "$ref": "GooglePrivacyDlpV2FieldId" + }, + "type": "array" + }, + "infoTypeTransformations": { + "$ref": "GooglePrivacyDlpV2InfoTypeTransformations", + "description": "Treat the contents of the field as free text, and selectively\ntransform content that matches an `InfoType`." + }, + "primitiveTransformation": { + "$ref": "GooglePrivacyDlpV2PrimitiveTransformation", + "description": "Apply the transformation to the entire field." + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2FileSet": { + "description": "Set of files to scan.", + "id": "GooglePrivacyDlpV2FileSet", + "properties": { + "url": { + "description": "The url, in the format `gs://\u003cbucket\u003e/\u003cpath\u003e`. Trailing wildcard in the\npath is allowed.", + "type": "string" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2Finding": { + "description": "Represents a piece of potentially sensitive content.", + "id": "GooglePrivacyDlpV2Finding", + "properties": { + "createTime": { + "description": "Timestamp when finding was detected.", + "format": "google-datetime", + "type": "string" + }, + "infoType": { + "$ref": "GooglePrivacyDlpV2InfoType", + "description": "The type of content that might have been found.\nProvided if requested by the `InspectConfig`." + }, + "likelihood": { + "description": "Estimate of how likely it is that the `info_type` is correct.", + "enum": [ + "LIKELIHOOD_UNSPECIFIED", + "VERY_UNLIKELY", + "UNLIKELY", + "POSSIBLE", + "LIKELY", + "VERY_LIKELY" + ], + "enumDescriptions": [ + "Default value; information with all likelihoods is included.", + "Few matching elements.", + "", + "Some matching elements.", + "", + "Many matching elements." + ], + "type": "string" + }, + "location": { + "$ref": "GooglePrivacyDlpV2Location", + "description": "Where the content was found." + }, + "quote": { + "description": "The content that was found. Even if the content is not textual, it\nmay be converted to a textual representation here.\nProvided if requested by the `InspectConfig` and the finding is\nless than or equal to 4096 bytes long. If the finding exceeds 4096 bytes\nin length, the quote may be omitted.", + "type": "string" + }, + "quoteInfo": { + "$ref": "GooglePrivacyDlpV2QuoteInfo", + "description": "Contains data parsed from quotes. Only populated if include_quote was set\nto true and a supported infoType was requested. Currently supported\ninfoTypes: DATE, DATE_OF_BIRTH and TIME." + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2FindingLimits": { + "id": "GooglePrivacyDlpV2FindingLimits", + "properties": { + "maxFindingsPerInfoType": { + "description": "Configuration of findings limit given for specified infoTypes.", + "items": { + "$ref": "GooglePrivacyDlpV2InfoTypeLimit" + }, + "type": "array" + }, + "maxFindingsPerItem": { + "description": "Max number of findings that will be returned for each item scanned.\nWhen set within `InspectDataSourceRequest`,\nthe maximum returned is 1000 regardless if this is set higher.\nWhen set within `InspectContentRequest`, this field is ignored.", + "format": "int32", + "type": "integer" + }, + "maxFindingsPerRequest": { + "description": "Max number of findings that will be returned per request/job.\nWhen set within `InspectContentRequest`, the maximum returned is 1000\nregardless if this is set higher.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2FixedSizeBucketingConfig": { + "description": "Buckets values based on fixed size ranges. The\nBucketing transformation can provide all of this functionality,\nbut requires more configuration. This message is provided as a convenience to\nthe user for simple bucketing strategies.\n\nThe transformed value will be a hyphenated string of\n\u003clower_bound\u003e-\u003cupper_bound\u003e, i.e if lower_bound = 10 and upper_bound = 20\nall values that are within this bucket will be replaced with \"10-20\".\n\nThis can be used on data of type: double, long.\n\nIf the bound Value type differs from the type of data\nbeing transformed, we will first attempt converting the type of the data to\nbe transformed to match the type of the bound before comparing.", + "id": "GooglePrivacyDlpV2FixedSizeBucketingConfig", + "properties": { + "bucketSize": { + "description": "Size of each bucket (except for minimum and maximum buckets). So if\n`lower_bound` = 10, `upper_bound` = 89, and `bucket_size` = 10, then the\nfollowing buckets would be used: -10, 10-20, 20-30, 30-40, 40-50, 50-60,\n60-70, 70-80, 80-89, 89+. Precision up to 2 decimals works. [Required].", + "format": "double", + "type": "number" + }, + "lowerBound": { + "$ref": "GooglePrivacyDlpV2Value", + "description": "Lower bound value of buckets. All values less than `lower_bound` are\ngrouped together into a single bucket; for example if `lower_bound` = 10,\nthen all values less than 10 are replaced with the value “-10”. [Required]." + }, + "upperBound": { + "$ref": "GooglePrivacyDlpV2Value", + "description": "Upper bound value of buckets. All values greater than upper_bound are\ngrouped together into a single bucket; for example if `upper_bound` = 89,\nthen all values greater than 89 are replaced with the value “89+”.\n[Required]." + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2HotwordRule": { + "description": "Detection rule that adjusts the likelihood of findings within a certain\nproximity of hotwords.", + "id": "GooglePrivacyDlpV2HotwordRule", + "properties": { + "hotwordRegex": { + "$ref": "GooglePrivacyDlpV2Regex", + "description": "Regex pattern defining what qualifies as a hotword." + }, + "likelihoodAdjustment": { + "$ref": "GooglePrivacyDlpV2LikelihoodAdjustment", + "description": "Likelihood adjustment to apply to all matching findings." + }, + "proximity": { + "$ref": "GooglePrivacyDlpV2Proximity", + "description": "Proximity of the finding within which the entire hotword must reside.\nThe total length of the window cannot exceed 1000 characters. Note that\nthe finding itself will be included in the window, so that hotwords may\nbe used to match substrings of the finding itself. For example, the\ncertainty of a phone number regex \"\\(\\d{3}\\) \\d{3}-\\d{4}\" could be\nadjusted upwards if the area code is known to be the local area code of\na company office using the hotword regex \"\\(xxx\\)\", where \"xxx\"\nis the area code in question." + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2ImageLocation": { + "description": "Location of the finding within an image.", + "id": "GooglePrivacyDlpV2ImageLocation", + "properties": { + "boundingBoxes": { + "description": "Bounding boxes locating the pixels within the image containing the finding.", + "items": { + "$ref": "GooglePrivacyDlpV2BoundingBox" + }, + "type": "array" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2ImageRedactionConfig": { + "description": "Configuration for determining how redaction of images should occur.", + "id": "GooglePrivacyDlpV2ImageRedactionConfig", + "properties": { + "infoType": { + "$ref": "GooglePrivacyDlpV2InfoType", + "description": "Only one per info_type should be provided per request. If not\nspecified, and redact_all_text is false, the DLP API will redact all\ntext that it matches against all info_types that are found, but not\nspecified in another ImageRedactionConfig." + }, + "redactAllText": { + "description": "If true, all text found in the image, regardless whether it matches an\ninfo_type, is redacted.", + "type": "boolean" + }, + "redactionColor": { + "$ref": "GooglePrivacyDlpV2Color", + "description": "The color to use when redacting content from an image. If not specified,\nthe default is black." + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2InfoType": { + "description": "Type of information detected by the API.", + "id": "GooglePrivacyDlpV2InfoType", + "properties": { + "name": { + "description": "Name of the information type.", + "type": "string" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2InfoTypeDescription": { + "description": "InfoType description.", + "id": "GooglePrivacyDlpV2InfoTypeDescription", + "properties": { + "displayName": { + "description": "Human readable form of the infoType name.", + "type": "string" + }, + "name": { + "description": "Internal name of the infoType.", + "type": "string" + }, + "supportedBy": { + "description": "Which parts of the API supports this InfoType.", + "enumDescriptions": [ + "", + "Supported by the inspect operations.", + "Supported by the risk analysis operations." + ], + "items": { + "enum": [ + "ENUM_TYPE_UNSPECIFIED", + "INSPECT", + "RISK_ANALYSIS" + ], + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2InfoTypeLimit": { + "description": "Max findings configuration per infoType, per content item or long\nrunning DlpJob.", + "id": "GooglePrivacyDlpV2InfoTypeLimit", + "properties": { + "infoType": { + "$ref": "GooglePrivacyDlpV2InfoType", + "description": "Type of information the findings limit applies to. Only one limit per\ninfo_type should be provided. If InfoTypeLimit does not have an\ninfo_type, the DLP API applies the limit against all info_types that\nare found but not specified in another InfoTypeLimit." + }, + "maxFindings": { + "description": "Max findings limit for the given infoType.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2InfoTypeStats": { + "description": "Statistics regarding a specific InfoType.", + "id": "GooglePrivacyDlpV2InfoTypeStats", + "properties": { + "count": { + "description": "Number of findings for this infoType.", + "format": "int64", + "type": "string" + }, + "infoType": { + "$ref": "GooglePrivacyDlpV2InfoType", + "description": "The type of finding this stat is for." + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2InfoTypeTransformation": { + "description": "A transformation to apply to text that is identified as a specific\ninfo_type.", + "id": "GooglePrivacyDlpV2InfoTypeTransformation", + "properties": { + "infoTypes": { + "description": "InfoTypes to apply the transformation to. Empty list will match all\navailable infoTypes for this transformation.", + "items": { + "$ref": "GooglePrivacyDlpV2InfoType" + }, + "type": "array" + }, + "primitiveTransformation": { + "$ref": "GooglePrivacyDlpV2PrimitiveTransformation", + "description": "Primitive transformation to apply to the infoType. [required]" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2InfoTypeTransformations": { + "description": "A type of transformation that will scan unstructured text and\napply various `PrimitiveTransformation`s to each finding, where the\ntransformation is applied to only values that were identified as a specific\ninfo_type.", + "id": "GooglePrivacyDlpV2InfoTypeTransformations", + "properties": { + "transformations": { + "description": "Transformation for each infoType. Cannot specify more than one\nfor a given infoType. [required]", + "items": { + "$ref": "GooglePrivacyDlpV2InfoTypeTransformation" + }, + "type": "array" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2InspectConfig": { + "description": "Configuration description of the scanning process.\nWhen used with redactContent only info_types and min_likelihood are currently\nused.", + "id": "GooglePrivacyDlpV2InspectConfig", + "properties": { + "contentOptions": { + "description": "List of options defining data content to scan.\nIf empty, text, images, and other content will be included.", + "enumDescriptions": [ + "Includes entire content of a file or a data stream.", + "Text content within the data, excluding any metadata.", + "Images found in the data." + ], + "items": { + "enum": [ + "CONTENT_UNSPECIFIED", + "CONTENT_TEXT", + "CONTENT_IMAGE" + ], + "type": "string" + }, + "type": "array" + }, + "customInfoTypes": { + "description": "Custom infoTypes provided by the user.", + "items": { + "$ref": "GooglePrivacyDlpV2CustomInfoType" + }, + "type": "array" + }, + "excludeInfoTypes": { + "description": "When true, excludes type information of the findings.", + "type": "boolean" + }, + "includeQuote": { + "description": "When true, a contextual quote from the data that triggered a finding is\nincluded in the response; see Finding.quote.", + "type": "boolean" + }, + "infoTypes": { + "description": "Restricts what info_types to look for. The values must correspond to\nInfoType values returned by ListInfoTypes or found in documentation.", + "items": { + "$ref": "GooglePrivacyDlpV2InfoType" + }, + "type": "array" + }, + "limits": { + "$ref": "GooglePrivacyDlpV2FindingLimits" + }, + "minLikelihood": { + "description": "Only returns findings equal or above this threshold. The default is\nPOSSIBLE.", + "enum": [ + "LIKELIHOOD_UNSPECIFIED", + "VERY_UNLIKELY", + "UNLIKELY", + "POSSIBLE", + "LIKELY", + "VERY_LIKELY" + ], + "enumDescriptions": [ + "Default value; information with all likelihoods is included.", + "Few matching elements.", + "", + "Some matching elements.", + "", + "Many matching elements." + ], + "type": "string" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2InspectContentRequest": { + "description": "Request to search for potentially sensitive info in a ContentItem.", + "id": "GooglePrivacyDlpV2InspectContentRequest", + "properties": { + "inspectConfig": { + "$ref": "GooglePrivacyDlpV2InspectConfig", + "description": "Configuration for the inspector. What specified here will override\nthe template referenced by the inspect_template_name argument." + }, + "inspectTemplateName": { + "description": "Optional template to use. Any configuration directly specified in\ninspect_config will override those set in the template. Singular fields\nthat are set in this request will replace their corresponding fields in the\ntemplate. Repeated fields are appended. Singular sub-messages and groups\nare recursively merged.", + "type": "string" + }, + "item": { + "$ref": "GooglePrivacyDlpV2ContentItem", + "description": "The item to inspect." + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2InspectContentResponse": { + "description": "Results of inspecting an item.", + "id": "GooglePrivacyDlpV2InspectContentResponse", + "properties": { + "result": { + "$ref": "GooglePrivacyDlpV2InspectResult", + "description": "The findings." + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2InspectDataSourceDetails": { + "description": "The results of an inspect DataSource job.", + "id": "GooglePrivacyDlpV2InspectDataSourceDetails", + "properties": { + "requestedOptions": { + "$ref": "GooglePrivacyDlpV2RequestedOptions", + "description": "The configuration used for this job." + }, + "result": { + "$ref": "GooglePrivacyDlpV2Result", + "description": "A summary of the outcome of this inspect job." + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2InspectJobConfig": { + "id": "GooglePrivacyDlpV2InspectJobConfig", + "properties": { + "actions": { + "description": "Actions to execute at the completion of the job. Are executed in the order\nprovided.", + "items": { + "$ref": "GooglePrivacyDlpV2Action" + }, + "type": "array" + }, + "inspectConfig": { + "$ref": "GooglePrivacyDlpV2InspectConfig", + "description": "How and what to scan for." + }, + "inspectTemplateName": { + "description": "If provided, will be used as the default for all values in InspectConfig.\n`inspect_config` will be merged into the values persisted as part of the\ntemplate.", + "type": "string" + }, + "storageConfig": { + "$ref": "GooglePrivacyDlpV2StorageConfig", + "description": "The data to scan." + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2InspectResult": { + "description": "All the findings for a single scanned item.", + "id": "GooglePrivacyDlpV2InspectResult", + "properties": { + "findings": { + "description": "List of findings for an item.", + "items": { + "$ref": "GooglePrivacyDlpV2Finding" + }, + "type": "array" + }, + "findingsTruncated": { + "description": "If true, then this item might have more findings than were returned,\nand the findings returned are an arbitrary subset of all findings.\nThe findings list might be truncated because the input items were too\nlarge, or because the server reached the maximum amount of resources\nallowed for a single API call. For best results, divide the input into\nsmaller batches.", + "type": "boolean" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2InspectTemplate": { + "description": "The inspectTemplate contains a configuration (set of types of sensitive data\nto be detected) to be used anywhere you otherwise would normally specify\nInspectConfig.", + "id": "GooglePrivacyDlpV2InspectTemplate", + "properties": { + "createTime": { + "description": "The creation timestamp of a inspectTemplate, output only field.", + "format": "google-datetime", + "type": "string" + }, + "description": { + "description": "Short description (max 256 chars).", + "type": "string" + }, + "displayName": { + "description": "Display name (max 256 chars).", + "type": "string" + }, + "inspectConfig": { + "$ref": "GooglePrivacyDlpV2InspectConfig", + "description": "The core content of the template. Configuration of the scanning process." + }, + "name": { + "description": "The template name. Output only.\n\nThe template will have one of the following formats:\n`projects/PROJECT_ID/inspectTemplates/TEMPLATE_ID` OR\n`organizations/ORGANIZATION_ID/inspectTemplates/TEMPLATE_ID`", + "type": "string" + }, + "updateTime": { + "description": "The last update timestamp of a inspectTemplate, output only field.", + "format": "google-datetime", + "type": "string" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2JobTrigger": { + "description": "Contains a configuration to make dlp api calls on a repeating basis.", + "id": "GooglePrivacyDlpV2JobTrigger", + "properties": { + "createTime": { + "description": "The creation timestamp of a triggeredJob, output only field.", + "format": "google-datetime", + "type": "string" + }, + "description": { + "description": "User provided description (max 256 chars)", + "type": "string" + }, + "displayName": { + "description": "Display name (max 100 chars)", + "type": "string" + }, + "errors": { + "description": "A stream of errors encountered when the trigger was activated. Repeated\nerrors may result in the JobTrigger automaticaly being paused.\nWill return the last 100 errors. Whenever the JobTrigger is modified\nthis list will be cleared. Output only field.", + "items": { + "$ref": "GooglePrivacyDlpV2Error" + }, + "type": "array" + }, + "inspectJob": { + "$ref": "GooglePrivacyDlpV2InspectJobConfig" + }, + "lastRunTime": { + "description": "The timestamp of the last time this trigger executed, output only field.", + "format": "google-datetime", + "type": "string" + }, + "name": { + "description": "Unique resource name for the triggeredJob, assigned by the service when the\ntriggeredJob is created, for example\n`projects/dlp-test-project/triggeredJobs/53234423`.", + "type": "string" + }, + "status": { + "description": "A status for this trigger. [required]", + "enum": [ + "STATUS_UNSPECIFIED", + "HEALTHY", + "PAUSED", + "CANCELLED" + ], + "enumDescriptions": [ + "", + "Trigger is healthy.", + "Trigger is temporarily paused.", + "Trigger is cancelled and can not be resumed." + ], + "type": "string" + }, + "triggers": { + "description": "A list of triggers which will be OR'ed together. Only one in the list\nneeds to trigger for a job to be started. The list may contain only\na single Schedule trigger and must have at least one object.", + "items": { + "$ref": "GooglePrivacyDlpV2Trigger" + }, + "type": "array" + }, + "updateTime": { + "description": "The last update timestamp of a triggeredJob, output only field.", + "format": "google-datetime", + "type": "string" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2KAnonymityConfig": { + "description": "k-anonymity metric, used for analysis of reidentification risk.", + "id": "GooglePrivacyDlpV2KAnonymityConfig", + "properties": { + "quasiIds": { + "description": "Set of fields to compute k-anonymity over. When multiple fields are\nspecified, they are considered a single composite key. Structs and\nrepeated data types are not supported; however, nested fields are\nsupported so long as they are not structs themselves or nested within\na repeated field.", + "items": { + "$ref": "GooglePrivacyDlpV2FieldId" + }, + "type": "array" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2KAnonymityEquivalenceClass": { + "description": "The set of columns' values that share the same ldiversity value", + "id": "GooglePrivacyDlpV2KAnonymityEquivalenceClass", + "properties": { + "equivalenceClassSize": { + "description": "Size of the equivalence class, for example number of rows with the\nabove set of values.", + "format": "int64", + "type": "string" + }, + "quasiIdsValues": { + "description": "Set of values defining the equivalence class. One value per\nquasi-identifier column in the original KAnonymity metric message.\nThe order is always the same as the original request.", + "items": { + "$ref": "GooglePrivacyDlpV2Value" + }, + "type": "array" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2KAnonymityHistogramBucket": { + "id": "GooglePrivacyDlpV2KAnonymityHistogramBucket", + "properties": { + "bucketSize": { + "description": "Total number of equivalence classes in this bucket.", + "format": "int64", + "type": "string" + }, + "bucketValueCount": { + "description": "Total number of distinct equivalence classes in this bucket.", + "format": "int64", + "type": "string" + }, + "bucketValues": { + "description": "Sample of equivalence classes in this bucket. The total number of\nclasses returned per bucket is capped at 20.", + "items": { + "$ref": "GooglePrivacyDlpV2KAnonymityEquivalenceClass" + }, + "type": "array" + }, + "equivalenceClassSizeLowerBound": { + "description": "Lower bound on the size of the equivalence classes in this bucket.", + "format": "int64", + "type": "string" + }, + "equivalenceClassSizeUpperBound": { + "description": "Upper bound on the size of the equivalence classes in this bucket.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2KAnonymityResult": { + "description": "Result of the k-anonymity computation.", + "id": "GooglePrivacyDlpV2KAnonymityResult", + "properties": { + "equivalenceClassHistogramBuckets": { + "description": "Histogram of k-anonymity equivalence classes.", + "items": { + "$ref": "GooglePrivacyDlpV2KAnonymityHistogramBucket" + }, + "type": "array" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2KMapEstimationConfig": { + "description": "Reidentifiability metric. This corresponds to a risk model similar to what\nis called \"journalist risk\" in the literature, except the attack dataset is\nstatistically modeled instead of being perfectly known. This can be done\nusing publicly available data (like the US Census), or using a custom\nstatistical model (indicated as one or several BigQuery tables), or by\nextrapolating from the distribution of values in the input dataset.", + "id": "GooglePrivacyDlpV2KMapEstimationConfig", + "properties": { + "auxiliaryTables": { + "description": "Several auxiliary tables can be used in the analysis. Each custom_tag\nused to tag a quasi-identifiers column must appear in exactly one column\nof one auxiliary table.", + "items": { + "$ref": "GooglePrivacyDlpV2AuxiliaryTable" + }, + "type": "array" + }, + "quasiIds": { + "description": "Fields considered to be quasi-identifiers. No two columns can have the\nsame tag. [required]", + "items": { + "$ref": "GooglePrivacyDlpV2TaggedField" + }, + "type": "array" + }, + "regionCode": { + "description": "ISO 3166-1 alpha-2 region code to use in the statistical modeling.\nRequired if no column is tagged with a region-specific InfoType (like\nUS_ZIP_5) or a region code.", + "type": "string" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2KMapEstimationHistogramBucket": { + "description": "A KMapEstimationHistogramBucket message with the following values:\n min_anonymity: 3\n max_anonymity: 5\n frequency: 42\nmeans that there are 42 records whose quasi-identifier values correspond\nto 3, 4 or 5 people in the overlying population. An important particular\ncase is when min_anonymity = max_anonymity = 1: the frequency field then\ncorresponds to the number of uniquely identifiable records.", + "id": "GooglePrivacyDlpV2KMapEstimationHistogramBucket", + "properties": { + "bucketSize": { + "description": "Number of records within these anonymity bounds.", + "format": "int64", + "type": "string" + }, + "bucketValueCount": { + "description": "Total number of distinct quasi-identifier tuple values in this bucket.", + "format": "int64", + "type": "string" + }, + "bucketValues": { + "description": "Sample of quasi-identifier tuple values in this bucket. The total\nnumber of classes returned per bucket is capped at 20.", + "items": { + "$ref": "GooglePrivacyDlpV2KMapEstimationQuasiIdValues" + }, + "type": "array" + }, + "maxAnonymity": { + "description": "Always greater than or equal to min_anonymity.", + "format": "int64", + "type": "string" + }, + "minAnonymity": { + "description": "Always positive.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2KMapEstimationQuasiIdValues": { + "description": "A tuple of values for the quasi-identifier columns.", + "id": "GooglePrivacyDlpV2KMapEstimationQuasiIdValues", + "properties": { + "estimatedAnonymity": { + "description": "The estimated anonymity for these quasi-identifier values.", + "format": "int64", + "type": "string" + }, + "quasiIdsValues": { + "description": "The quasi-identifier values.", + "items": { + "$ref": "GooglePrivacyDlpV2Value" + }, + "type": "array" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2KMapEstimationResult": { + "description": "Result of the reidentifiability analysis. Note that these results are an\nestimation, not exact values.", + "id": "GooglePrivacyDlpV2KMapEstimationResult", + "properties": { + "kMapEstimationHistogram": { + "description": "The intervals [min_anonymity, max_anonymity] do not overlap. If a value\ndoesn't correspond to any such interval, the associated frequency is\nzero. For example, the following records:\n {min_anonymity: 1, max_anonymity: 1, frequency: 17}\n {min_anonymity: 2, max_anonymity: 3, frequency: 42}\n {min_anonymity: 5, max_anonymity: 10, frequency: 99}\nmean that there are no record with an estimated anonymity of 4, 5, or\nlarger than 10.", + "items": { + "$ref": "GooglePrivacyDlpV2KMapEstimationHistogramBucket" + }, + "type": "array" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2Key": { + "description": "A unique identifier for a Datastore entity.\nIf a key's partition ID or any of its path kinds or names are\nreserved/read-only, the key is reserved/read-only.\nA reserved/read-only key is forbidden in certain documented contexts.", + "id": "GooglePrivacyDlpV2Key", + "properties": { + "partitionId": { + "$ref": "GooglePrivacyDlpV2PartitionId", + "description": "Entities are partitioned into subsets, currently identified by a project\nID and namespace ID.\nQueries are scoped to a single partition." + }, + "path": { + "description": "The entity path.\nAn entity path consists of one or more elements composed of a kind and a\nstring or numerical identifier, which identify entities. The first\nelement identifies a _root entity_, the second element identifies\na _child_ of the root entity, the third element identifies a child of the\nsecond entity, and so forth. The entities identified by all prefixes of\nthe path are called the element's _ancestors_.\n\nA path can never be empty, and a path can have at most 100 elements.", + "items": { + "$ref": "GooglePrivacyDlpV2PathElement" + }, + "type": "array" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2KindExpression": { + "description": "A representation of a Datastore kind.", + "id": "GooglePrivacyDlpV2KindExpression", + "properties": { + "name": { + "description": "The name of the kind.", + "type": "string" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2KmsWrappedCryptoKey": { + "description": "Include to use an existing data crypto key wrapped by KMS.\nAuthorization requires the following IAM permissions when sending a request\nto perform a crypto transformation using a kms-wrapped crypto key:\ndlp.kms.encrypt", + "id": "GooglePrivacyDlpV2KmsWrappedCryptoKey", + "properties": { + "cryptoKeyName": { + "description": "The resource name of the KMS CryptoKey to use for unwrapping. [required]", + "type": "string" + }, + "wrappedKey": { + "description": "The wrapped data crypto key. [required]", + "format": "byte", + "type": "string" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2LDiversityConfig": { + "description": "l-diversity metric, used for analysis of reidentification risk.", + "id": "GooglePrivacyDlpV2LDiversityConfig", + "properties": { + "quasiIds": { + "description": "Set of quasi-identifiers indicating how equivalence classes are\ndefined for the l-diversity computation. When multiple fields are\nspecified, they are considered a single composite key.", + "items": { + "$ref": "GooglePrivacyDlpV2FieldId" + }, + "type": "array" + }, + "sensitiveAttribute": { + "$ref": "GooglePrivacyDlpV2FieldId", + "description": "Sensitive field for computing the l-value." + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2LDiversityEquivalenceClass": { + "description": "The set of columns' values that share the same ldiversity value.", + "id": "GooglePrivacyDlpV2LDiversityEquivalenceClass", + "properties": { + "equivalenceClassSize": { + "description": "Size of the k-anonymity equivalence class.", + "format": "int64", + "type": "string" + }, + "numDistinctSensitiveValues": { + "description": "Number of distinct sensitive values in this equivalence class.", + "format": "int64", + "type": "string" + }, + "quasiIdsValues": { + "description": "Quasi-identifier values defining the k-anonymity equivalence\nclass. The order is always the same as the original request.", + "items": { + "$ref": "GooglePrivacyDlpV2Value" + }, + "type": "array" + }, + "topSensitiveValues": { + "description": "Estimated frequencies of top sensitive values.", + "items": { + "$ref": "GooglePrivacyDlpV2ValueFrequency" + }, + "type": "array" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2LDiversityHistogramBucket": { + "id": "GooglePrivacyDlpV2LDiversityHistogramBucket", + "properties": { + "bucketSize": { + "description": "Total number of equivalence classes in this bucket.", + "format": "int64", + "type": "string" + }, + "bucketValueCount": { + "description": "Total number of distinct equivalence classes in this bucket.", + "format": "int64", + "type": "string" + }, + "bucketValues": { + "description": "Sample of equivalence classes in this bucket. The total number of\nclasses returned per bucket is capped at 20.", + "items": { + "$ref": "GooglePrivacyDlpV2LDiversityEquivalenceClass" + }, + "type": "array" + }, + "sensitiveValueFrequencyLowerBound": { + "description": "Lower bound on the sensitive value frequencies of the equivalence\nclasses in this bucket.", + "format": "int64", + "type": "string" + }, + "sensitiveValueFrequencyUpperBound": { + "description": "Upper bound on the sensitive value frequencies of the equivalence\nclasses in this bucket.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2LDiversityResult": { + "description": "Result of the l-diversity computation.", + "id": "GooglePrivacyDlpV2LDiversityResult", + "properties": { + "sensitiveValueFrequencyHistogramBuckets": { + "description": "Histogram of l-diversity equivalence class sensitive value frequencies.", + "items": { + "$ref": "GooglePrivacyDlpV2LDiversityHistogramBucket" + }, + "type": "array" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2LikelihoodAdjustment": { + "description": "Message for specifying an adjustment to the likelihood of a finding as\npart of a detection rule.", + "id": "GooglePrivacyDlpV2LikelihoodAdjustment", + "properties": { + "fixedLikelihood": { + "description": "Set the likelihood of a finding to a fixed value.", + "enum": [ + "LIKELIHOOD_UNSPECIFIED", + "VERY_UNLIKELY", + "UNLIKELY", + "POSSIBLE", + "LIKELY", + "VERY_LIKELY" + ], + "enumDescriptions": [ + "Default value; information with all likelihoods is included.", + "Few matching elements.", + "", + "Some matching elements.", + "", + "Many matching elements." + ], + "type": "string" + }, + "relativeLikelihood": { + "description": "Increase or decrease the likelihood by the specified number of\nlevels. For example, if a finding would be `POSSIBLE` without the\ndetection rule and `relative_likelihood` is 1, then it is upgraded to\n`LIKELY`, while a value of -1 would downgrade it to `UNLIKELY`.\nLikelihood may never drop below `VERY_UNLIKELY` or exceed\n`VERY_LIKELY`, so applying an adjustment of 1 followed by an\nadjustment of -1 when base likelihood is `VERY_LIKELY` will result in\na final likelihood of `LIKELY`.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2ListDeidentifyTemplatesResponse": { + "description": "Response message for ListDeidentifyTemplates.", + "id": "GooglePrivacyDlpV2ListDeidentifyTemplatesResponse", + "properties": { + "deidentifyTemplates": { + "description": "List of deidentify templates, up to page_size in\nListDeidentifyTemplatesRequest.", + "items": { + "$ref": "GooglePrivacyDlpV2DeidentifyTemplate" + }, + "type": "array" + }, + "nextPageToken": { + "description": "If the next page is available then the next page token to be used\nin following ListDeidentifyTemplates request.", + "type": "string" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2ListDlpJobsResponse": { + "description": "The response message for listing DLP jobs.", + "id": "GooglePrivacyDlpV2ListDlpJobsResponse", + "properties": { + "jobs": { + "description": "A list of DlpJobs that matches the specified filter in the request.", + "items": { + "$ref": "GooglePrivacyDlpV2DlpJob" + }, + "type": "array" + }, + "nextPageToken": { + "description": "The standard List next-page token.", + "type": "string" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2ListInfoTypesResponse": { + "description": "Response to the ListInfoTypes request.", + "id": "GooglePrivacyDlpV2ListInfoTypesResponse", + "properties": { + "infoTypes": { + "description": "Set of sensitive infoTypes.", + "items": { + "$ref": "GooglePrivacyDlpV2InfoTypeDescription" + }, + "type": "array" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2ListInspectTemplatesResponse": { + "description": "Response message for ListInspectTemplates.", + "id": "GooglePrivacyDlpV2ListInspectTemplatesResponse", + "properties": { + "inspectTemplates": { + "description": "List of inspectTemplates, up to page_size in ListInspectTemplatesRequest.", + "items": { + "$ref": "GooglePrivacyDlpV2InspectTemplate" + }, + "type": "array" + }, + "nextPageToken": { + "description": "If the next page is available then the next page token to be used\nin following ListInspectTemplates request.", + "type": "string" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2ListJobTriggersResponse": { + "description": "Response message for ListJobTriggers.", + "id": "GooglePrivacyDlpV2ListJobTriggersResponse", + "properties": { + "jobTriggers": { + "description": "List of triggeredJobs, up to page_size in ListJobTriggersRequest.", + "items": { + "$ref": "GooglePrivacyDlpV2JobTrigger" + }, + "type": "array" + }, + "nextPageToken": { + "description": "If the next page is available then the next page token to be used\nin following ListJobTriggers request.", + "type": "string" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2Location": { + "description": "Specifies the location of the finding.", + "id": "GooglePrivacyDlpV2Location", + "properties": { + "byteRange": { + "$ref": "GooglePrivacyDlpV2Range", + "description": "Zero-based byte offsets delimiting the finding.\nThese are relative to the finding's containing element.\nNote that when the content is not textual, this references\nthe UTF-8 encoded textual representation of the content.\nOmitted if content is an image." + }, + "codepointRange": { + "$ref": "GooglePrivacyDlpV2Range", + "description": "Unicode character offsets delimiting the finding.\nThese are relative to the finding's containing element.\nProvided when the content is text." + }, + "contentLocations": { + "description": "List of nested objects pointing to the precise location of the finding\nwithin the file or record.", + "items": { + "$ref": "GooglePrivacyDlpV2ContentLocation" + }, + "type": "array" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2NumericalStatsConfig": { + "description": "Compute numerical stats over an individual column, including\nmin, max, and quantiles.", + "id": "GooglePrivacyDlpV2NumericalStatsConfig", + "properties": { + "field": { + "$ref": "GooglePrivacyDlpV2FieldId", + "description": "Field to compute numerical stats on. Supported types are\ninteger, float, date, datetime, timestamp, time." + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2NumericalStatsResult": { + "description": "Result of the numerical stats computation.", + "id": "GooglePrivacyDlpV2NumericalStatsResult", + "properties": { + "maxValue": { + "$ref": "GooglePrivacyDlpV2Value", + "description": "Maximum value appearing in the column." + }, + "minValue": { + "$ref": "GooglePrivacyDlpV2Value", + "description": "Minimum value appearing in the column." + }, + "quantileValues": { + "description": "List of 99 values that partition the set of field values into 100 equal\nsized buckets.", + "items": { + "$ref": "GooglePrivacyDlpV2Value" + }, + "type": "array" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2OutputStorageConfig": { + "description": "Cloud repository for storing output.", + "id": "GooglePrivacyDlpV2OutputStorageConfig", + "properties": { + "outputSchema": { + "description": "Schema used for writing the findings. Columns are derived from the\n`Finding` object. If appending to an existing table, any columns from the\npredefined schema that are missing will be added. No columns in the\nexisting table will be deleted.\n\nIf unspecified, then all available columns will be used for a new table,\nand no changes will be made to an existing table.", + "enum": [ + "OUTPUT_SCHEMA_UNSPECIFIED", + "BASIC_COLUMNS", + "GCS_COLUMNS", + "DATASTORE_COLUMNS", + "BIG_QUERY_COLUMNS", + "ALL_COLUMNS" + ], + "enumDescriptions": [ + "", + "Basic schema including only `info_type`, `quote`, `certainty`, and\n`timestamp`.", + "Schema tailored to findings from scanning Google Cloud Storage.", + "Schema tailored to findings from scanning Google Datastore.", + "Schema tailored to findings from scanning Google BigQuery.", + "Schema containing all columns." + ], + "type": "string" + }, + "table": { + "$ref": "GooglePrivacyDlpV2BigQueryTable", + "description": "Store findings in an existing table or a new table in an existing\ndataset. Each column in an existing table must have the same name, type,\nand mode of a field in the `Finding` object. If table_id is not set a new\none will be generated for you with the following format:\ndlp_googleapis_yyyy_mm_dd_[dlp_job_id]. Pacific timezone will be used for\ngenerating the date details." + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2PartitionId": { + "description": "Datastore partition ID.\nA partition ID identifies a grouping of entities. The grouping is always\nby project and namespace, however the namespace ID may be empty.\n\nA partition ID contains several dimensions:\nproject ID and namespace ID.", + "id": "GooglePrivacyDlpV2PartitionId", + "properties": { + "namespaceId": { + "description": "If not empty, the ID of the namespace to which the entities belong.", + "type": "string" + }, + "projectId": { + "description": "The ID of the project to which the entities belong.", + "type": "string" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2PathElement": { + "description": "A (kind, ID/name) pair used to construct a key path.\n\nIf either name or ID is set, the element is complete.\nIf neither is set, the element is incomplete.", + "id": "GooglePrivacyDlpV2PathElement", + "properties": { + "id": { + "description": "The auto-allocated ID of the entity.\nNever equal to zero. Values less than zero are discouraged and may not\nbe supported in the future.", + "format": "int64", + "type": "string" + }, + "kind": { + "description": "The kind of the entity.\nA kind matching regex `__.*__` is reserved/read-only.\nA kind must not contain more than 1500 bytes when UTF-8 encoded.\nCannot be `\"\"`.", + "type": "string" + }, + "name": { + "description": "The name of the entity.\nA name matching regex `__.*__` is reserved/read-only.\nA name must not be more than 1500 bytes when UTF-8 encoded.\nCannot be `\"\"`.", + "type": "string" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2PrimitiveTransformation": { + "description": "A rule for transforming a value.", + "id": "GooglePrivacyDlpV2PrimitiveTransformation", + "properties": { + "bucketingConfig": { + "$ref": "GooglePrivacyDlpV2BucketingConfig" + }, + "characterMaskConfig": { + "$ref": "GooglePrivacyDlpV2CharacterMaskConfig" + }, + "cryptoHashConfig": { + "$ref": "GooglePrivacyDlpV2CryptoHashConfig" + }, + "cryptoReplaceFfxFpeConfig": { + "$ref": "GooglePrivacyDlpV2CryptoReplaceFfxFpeConfig" + }, + "dateShiftConfig": { + "$ref": "GooglePrivacyDlpV2DateShiftConfig" + }, + "fixedSizeBucketingConfig": { + "$ref": "GooglePrivacyDlpV2FixedSizeBucketingConfig" + }, + "redactConfig": { + "$ref": "GooglePrivacyDlpV2RedactConfig" + }, + "replaceConfig": { + "$ref": "GooglePrivacyDlpV2ReplaceValueConfig" + }, + "replaceWithInfoTypeConfig": { + "$ref": "GooglePrivacyDlpV2ReplaceWithInfoTypeConfig" + }, + "timePartConfig": { + "$ref": "GooglePrivacyDlpV2TimePartConfig" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2PrivacyMetric": { + "description": "Privacy metric to compute for reidentification risk analysis.", + "id": "GooglePrivacyDlpV2PrivacyMetric", + "properties": { + "categoricalStatsConfig": { + "$ref": "GooglePrivacyDlpV2CategoricalStatsConfig" + }, + "kAnonymityConfig": { + "$ref": "GooglePrivacyDlpV2KAnonymityConfig" + }, + "kMapEstimationConfig": { + "$ref": "GooglePrivacyDlpV2KMapEstimationConfig" + }, + "lDiversityConfig": { + "$ref": "GooglePrivacyDlpV2LDiversityConfig" + }, + "numericalStatsConfig": { + "$ref": "GooglePrivacyDlpV2NumericalStatsConfig" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2Proximity": { + "description": "Message for specifying a window around a finding to apply a detection\nrule.", + "id": "GooglePrivacyDlpV2Proximity", + "properties": { + "windowAfter": { + "description": "Number of characters after the finding to consider.", + "format": "int32", + "type": "integer" + }, + "windowBefore": { + "description": "Number of characters before the finding to consider.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2PublishToPubSub": { + "description": "Publish the results of a DlpJob to a pub sub channel.\nCompatible with: Inpect, Risk", + "id": "GooglePrivacyDlpV2PublishToPubSub", + "properties": { + "topic": { + "description": "Cloud Pub/Sub topic to send notifications to. The topic must have given\npublishing access rights to the DLP API service account executing\nthe long running DlpJob sending the notifications.\nFormat is projects/{project}/topics/{topic}.", + "type": "string" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2QuasiIdField": { + "description": "A quasi-identifier column has a custom_tag, used to know which column\nin the data corresponds to which column in the statistical model.", + "id": "GooglePrivacyDlpV2QuasiIdField", + "properties": { + "customTag": { + "type": "string" + }, + "field": { + "$ref": "GooglePrivacyDlpV2FieldId" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2QuoteInfo": { + "description": "Message for infoType-dependent details parsed from quote.", + "id": "GooglePrivacyDlpV2QuoteInfo", + "properties": { + "dateTime": { + "$ref": "GooglePrivacyDlpV2DateTime" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2Range": { + "description": "Generic half-open interval [start, end)", + "id": "GooglePrivacyDlpV2Range", + "properties": { + "end": { + "description": "Index of the last character of the range (exclusive).", + "format": "int64", + "type": "string" + }, + "start": { + "description": "Index of the first character of the range (inclusive).", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2RecordCondition": { + "description": "A condition for determining whether a transformation should be applied to\na field.", + "id": "GooglePrivacyDlpV2RecordCondition", + "properties": { + "expressions": { + "$ref": "GooglePrivacyDlpV2Expressions", + "description": "An expression." + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2RecordKey": { + "description": "Message for a unique key indicating a record that contains a finding.", + "id": "GooglePrivacyDlpV2RecordKey", + "properties": { + "bigQueryKey": { + "$ref": "GooglePrivacyDlpV2BigQueryKey" + }, + "datastoreKey": { + "$ref": "GooglePrivacyDlpV2DatastoreKey" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2RecordLocation": { + "description": "Location of a finding within a row or record.", + "id": "GooglePrivacyDlpV2RecordLocation", + "properties": { + "fieldId": { + "$ref": "GooglePrivacyDlpV2FieldId", + "description": "Field id of the field containing the finding." + }, + "recordKey": { + "$ref": "GooglePrivacyDlpV2RecordKey", + "description": "Key of the finding." + }, + "tableLocation": { + "$ref": "GooglePrivacyDlpV2TableLocation", + "description": "Location within a `ContentItem.Table`." + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2RecordSuppression": { + "description": "Configuration to suppress records whose suppression conditions evaluate to\ntrue.", + "id": "GooglePrivacyDlpV2RecordSuppression", + "properties": { + "condition": { + "$ref": "GooglePrivacyDlpV2RecordCondition", + "description": "A condition that when it evaluates to true will result in the record being\nevaluated to be suppressed from the transformed content." + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2RecordTransformations": { + "description": "A type of transformation that is applied over structured data such as a\ntable.", + "id": "GooglePrivacyDlpV2RecordTransformations", + "properties": { + "fieldTransformations": { + "description": "Transform the record by applying various field transformations.", + "items": { + "$ref": "GooglePrivacyDlpV2FieldTransformation" + }, + "type": "array" + }, + "recordSuppressions": { + "description": "Configuration defining which records get suppressed entirely. Records that\nmatch any suppression rule are omitted from the output [optional].", + "items": { + "$ref": "GooglePrivacyDlpV2RecordSuppression" + }, + "type": "array" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2RedactConfig": { + "description": "Redact a given value. For example, if used with an `InfoTypeTransformation`\ntransforming PHONE_NUMBER, and input 'My phone number is 206-555-0123', the\noutput would be 'My phone number is '.", + "id": "GooglePrivacyDlpV2RedactConfig", + "properties": {}, + "type": "object" + }, + "GooglePrivacyDlpV2RedactImageRequest": { + "description": "Request to search for potentially sensitive info in a list of items\nand replace it with a default or provided content.", + "id": "GooglePrivacyDlpV2RedactImageRequest", + "properties": { + "byteItem": { + "$ref": "GooglePrivacyDlpV2ByteContentItem", + "description": "The content must be PNG, JPEG, SVG or BMP." + }, + "imageRedactionConfigs": { + "description": "The configuration for specifying what content to redact from images.", + "items": { + "$ref": "GooglePrivacyDlpV2ImageRedactionConfig" + }, + "type": "array" + }, + "inspectConfig": { + "$ref": "GooglePrivacyDlpV2InspectConfig", + "description": "Configuration for the inspector." + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2RedactImageResponse": { + "description": "Results of redacting an image.", + "id": "GooglePrivacyDlpV2RedactImageResponse", + "properties": { + "extractedText": { + "description": "If an image was being inspected and the InspectConfig's include_quote was\nset to true, then this field will include all text, if any, that was found\nin the image.", + "type": "string" + }, + "redactedImage": { + "description": "The redacted image. The type will be the same as the original image.", + "format": "byte", + "type": "string" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2Regex": { + "description": "Message defining a custom regular expression.", + "id": "GooglePrivacyDlpV2Regex", + "properties": { + "pattern": { + "description": "Pattern defining the regular expression.", + "type": "string" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2ReidentifyContentRequest": { + "description": "Request to re-identify an item.", + "id": "GooglePrivacyDlpV2ReidentifyContentRequest", + "properties": { + "inspectConfig": { + "$ref": "GooglePrivacyDlpV2InspectConfig", + "description": "Configuration for the inspector." + }, + "inspectTemplateName": { + "description": "Optional template to use. Any configuration directly specified in\n`inspect_config` will override those set in the template. Singular fields\nthat are set in this request will replace their corresponding fields in the\ntemplate. Repeated fields are appended. Singular sub-messages and groups\nare recursively merged.", + "type": "string" + }, + "item": { + "$ref": "GooglePrivacyDlpV2ContentItem", + "description": "The item to re-identify. Will be treated as text." + }, + "reidentifyConfig": { + "$ref": "GooglePrivacyDlpV2DeidentifyConfig", + "description": "Configuration for the re-identification of the content item.\nThis field shares the same proto message type that is used for\nde-identification, however its usage here is for the reversal of the\nprevious de-identification. Re-identification is performed by examining\nthe transformations used to de-identify the items and executing the\nreverse. This requires that only reversible transformations\nbe provided here. The reversible transformations are:\n\n - `CryptoReplaceFfxFpeConfig`" + }, + "reidentifyTemplateName": { + "description": "Optional template to use. References an instance of `DeidentifyTemplate`.\nAny configuration directly specified in `reidentify_config` or\n`inspect_config` will override those set in the template. Singular fields\nthat are set in this request will replace their corresponding fields in the\ntemplate. Repeated fields are appended. Singular sub-messages and groups\nare recursively merged.", + "type": "string" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2ReidentifyContentResponse": { + "description": "Results of re-identifying a item.", + "id": "GooglePrivacyDlpV2ReidentifyContentResponse", + "properties": { + "item": { + "$ref": "GooglePrivacyDlpV2ContentItem", + "description": "The re-identified item." + }, + "overview": { + "$ref": "GooglePrivacyDlpV2TransformationOverview", + "description": "An overview of the changes that were made to the `item`." + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2ReplaceValueConfig": { + "description": "Replace each input value with a given `Value`.", + "id": "GooglePrivacyDlpV2ReplaceValueConfig", + "properties": { + "newValue": { + "$ref": "GooglePrivacyDlpV2Value", + "description": "Value to replace it with." + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2ReplaceWithInfoTypeConfig": { + "description": "Replace each matching finding with the name of the info_type.", + "id": "GooglePrivacyDlpV2ReplaceWithInfoTypeConfig", + "properties": {}, + "type": "object" + }, + "GooglePrivacyDlpV2RequestedOptions": { + "id": "GooglePrivacyDlpV2RequestedOptions", + "properties": { + "jobConfig": { + "$ref": "GooglePrivacyDlpV2InspectJobConfig" + }, + "snapshotInspectTemplate": { + "$ref": "GooglePrivacyDlpV2InspectTemplate", + "description": "If run with an inspect template, a snapshot of it's state at the time of\nthis run." + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2Result": { + "id": "GooglePrivacyDlpV2Result", + "properties": { + "infoTypeStats": { + "description": "Statistics of how many instances of each info type were found during\ninspect job.", + "items": { + "$ref": "GooglePrivacyDlpV2InfoTypeStats" + }, + "type": "array" + }, + "processedBytes": { + "description": "Total size in bytes that were processed.", + "format": "int64", + "type": "string" + }, + "totalEstimatedBytes": { + "description": "Estimate of the number of bytes to process.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2RiskAnalysisJobConfig": { + "description": "Configuration for a risk analysis job.", + "id": "GooglePrivacyDlpV2RiskAnalysisJobConfig", + "properties": { + "actions": { + "description": "Actions to execute at the completion of the job. Are executed in the order\nprovided.", + "items": { + "$ref": "GooglePrivacyDlpV2Action" + }, + "type": "array" + }, + "privacyMetric": { + "$ref": "GooglePrivacyDlpV2PrivacyMetric", + "description": "Privacy metric to compute." + }, + "sourceTable": { + "$ref": "GooglePrivacyDlpV2BigQueryTable", + "description": "Input dataset to compute metrics over." + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2Row": { + "id": "GooglePrivacyDlpV2Row", + "properties": { + "values": { + "items": { + "$ref": "GooglePrivacyDlpV2Value" + }, + "type": "array" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2SaveFindings": { + "description": "If set, the detailed findings will be persisted to the specified\nOutputStorageConfig. Compatible with: Inspect", + "id": "GooglePrivacyDlpV2SaveFindings", + "properties": { + "outputConfig": { + "$ref": "GooglePrivacyDlpV2OutputStorageConfig" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2Schedule": { + "description": "Schedule for triggeredJobs.", + "id": "GooglePrivacyDlpV2Schedule", + "properties": { + "recurrencePeriodDuration": { + "description": "With this option a job is started a regular periodic basis. For\nexample: every 10 minutes.\n\nA scheduled start time will be skipped if the previous\nexecution has not ended when its scheduled time occurs.\n\nThis value must be set to a time duration greater than or equal\nto 60 minutes and can be no longer than 60 days.", + "format": "google-duration", + "type": "string" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2StorageConfig": { + "description": "Shared message indicating Cloud storage type.", + "id": "GooglePrivacyDlpV2StorageConfig", + "properties": { + "bigQueryOptions": { + "$ref": "GooglePrivacyDlpV2BigQueryOptions", + "description": "BigQuery options specification." + }, + "cloudStorageOptions": { + "$ref": "GooglePrivacyDlpV2CloudStorageOptions", + "description": "Google Cloud Storage options specification." + }, + "datastoreOptions": { + "$ref": "GooglePrivacyDlpV2DatastoreOptions", + "description": "Google Cloud Datastore options specification." + }, + "timespanConfig": { + "$ref": "GooglePrivacyDlpV2TimespanConfig" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2SummaryResult": { + "description": "A collection that informs the user the number of times a particular\n`TransformationResultCode` and error details occurred.", + "id": "GooglePrivacyDlpV2SummaryResult", + "properties": { + "code": { + "enum": [ + "TRANSFORMATION_RESULT_CODE_UNSPECIFIED", + "SUCCESS", + "ERROR" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, + "count": { + "format": "int64", + "type": "string" + }, + "details": { + "description": "A place for warnings or errors to show up if a transformation didn't\nwork as expected.", + "type": "string" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2SurrogateType": { + "description": "Message for detecting output from deidentification transformations\nsuch as\n[`CryptoReplaceFfxFpeConfig`](/dlp/docs/reference/rest/v2/organizations.deidentifyTemplates#cryptoreplaceffxfpeconfig).\nThese types of transformations are\nthose that perform pseudonymization, thereby producing a \"surrogate\" as\noutput. This should be used in conjunction with a field on the\ntransformation such as `surrogate_info_type`. This custom info type does\nnot support the use of `detection_rules`.", + "id": "GooglePrivacyDlpV2SurrogateType", + "properties": {}, + "type": "object" + }, + "GooglePrivacyDlpV2Table": { + "description": "Structured content to inspect. Up to 50,000 `Value`s per request allowed.", + "id": "GooglePrivacyDlpV2Table", + "properties": { + "headers": { + "items": { + "$ref": "GooglePrivacyDlpV2FieldId" + }, + "type": "array" + }, + "rows": { + "items": { + "$ref": "GooglePrivacyDlpV2Row" + }, + "type": "array" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2TableLocation": { + "description": "Location of a finding within a table.", + "id": "GooglePrivacyDlpV2TableLocation", + "properties": { + "rowIndex": { + "description": "The zero-based index of the row where the finding is located.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2TaggedField": { + "description": "A column with a semantic tag attached.", + "id": "GooglePrivacyDlpV2TaggedField", + "properties": { + "customTag": { + "description": "A column can be tagged with a custom tag. In this case, the user must\nindicate an auxiliary table that contains statistical information on\nthe possible values of this column (below).", + "type": "string" + }, + "field": { + "$ref": "GooglePrivacyDlpV2FieldId", + "description": "Identifies the column. [required]" + }, + "inferred": { + "$ref": "GoogleProtobufEmpty", + "description": "If no semantic tag is indicated, we infer the statistical model from\nthe distribution of values in the input data" + }, + "infoType": { + "$ref": "GooglePrivacyDlpV2InfoType", + "description": "A column can be tagged with a InfoType to use the relevant public\ndataset as a statistical model of population, if available. We\ncurrently support US ZIP codes, region codes, ages and genders.\nTo programmatically obtain the list of supported InfoTypes, use\nListInfoTypes with the supported_by=RISK_ANALYSIS filter." + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2TimePartConfig": { + "description": "For use with `Date`, `Timestamp`, and `TimeOfDay`, extract or preserve a\nportion of the value.", + "id": "GooglePrivacyDlpV2TimePartConfig", + "properties": { + "partToExtract": { + "enum": [ + "TIME_PART_UNSPECIFIED", + "YEAR", + "MONTH", + "DAY_OF_MONTH", + "DAY_OF_WEEK", + "WEEK_OF_YEAR", + "HOUR_OF_DAY" + ], + "enumDescriptions": [ + "", + "[0-9999]", + "[1-12]", + "[1-31]", + "[1-7]", + "[1-52]", + "[0-23]" + ], + "type": "string" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2TimeZone": { + "id": "GooglePrivacyDlpV2TimeZone", + "properties": { + "offsetMinutes": { + "description": "Set only if the offset can be determined. Positive for time ahead of UTC.\nE.g. For \"UTC-9\", this value is -540.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2TimespanConfig": { + "description": "Configuration of the timespan of the items to include in scanning.\nCurrently only supported when inspecting Google Cloud Storage and BigQuery.", + "id": "GooglePrivacyDlpV2TimespanConfig", + "properties": { + "enableAutoPopulationOfTimespanConfig": { + "description": "When the job is started by a JobTrigger we will automatically figure out\na valid start_time to avoid scanning files that have not been modified\nsince the last time the JobTrigger executed. This will be based on the\ntime of the execution of the last run of the JobTrigger.", + "type": "boolean" + }, + "endTime": { + "description": "Exclude files newer than this value.\nIf set to zero, no upper time limit is applied.", + "format": "google-datetime", + "type": "string" + }, + "startTime": { + "description": "Exclude files older than this value.", + "format": "google-datetime", + "type": "string" + }, + "timestampField": { + "$ref": "GooglePrivacyDlpV2FieldId", + "description": "Specification of the field containing the timestamp of scanned items.\nRequired for data sources like Datastore or BigQuery.\nThe valid data types of the timestamp field are:\nfor BigQuery - timestamp, date, datetime;\nfor Datastore - timestamp.\nDatastore entity will be scanned if the timestamp property does not exist\nor its value is empty or invalid." + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2TransformationOverview": { + "description": "Overview of the modifications that occurred.", + "id": "GooglePrivacyDlpV2TransformationOverview", + "properties": { + "transformationSummaries": { + "description": "Transformations applied to the dataset.", + "items": { + "$ref": "GooglePrivacyDlpV2TransformationSummary" + }, + "type": "array" + }, + "transformedBytes": { + "description": "Total size in bytes that were transformed in some way.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2TransformationSummary": { + "description": "Summary of a single tranformation.\nOnly one of 'transformation', 'field_transformation', or 'record_suppress'\nwill be set.", + "id": "GooglePrivacyDlpV2TransformationSummary", + "properties": { + "field": { + "$ref": "GooglePrivacyDlpV2FieldId", + "description": "Set if the transformation was limited to a specific FieldId." + }, + "fieldTransformations": { + "description": "The field transformation that was applied.\nIf multiple field transformations are requested for a single field,\nthis list will contain all of them; otherwise, only one is supplied.", + "items": { + "$ref": "GooglePrivacyDlpV2FieldTransformation" + }, + "type": "array" + }, + "infoType": { + "$ref": "GooglePrivacyDlpV2InfoType", + "description": "Set if the transformation was limited to a specific info_type." + }, + "recordSuppress": { + "$ref": "GooglePrivacyDlpV2RecordSuppression", + "description": "The specific suppression option these stats apply to." + }, + "results": { + "items": { + "$ref": "GooglePrivacyDlpV2SummaryResult" + }, + "type": "array" + }, + "transformation": { + "$ref": "GooglePrivacyDlpV2PrimitiveTransformation", + "description": "The specific transformation these stats apply to." + }, + "transformedBytes": { + "description": "Total size in bytes that were transformed in some way.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2TransientCryptoKey": { + "description": "Use this to have a random data crypto key generated.\nIt will be discarded after the request finishes.", + "id": "GooglePrivacyDlpV2TransientCryptoKey", + "properties": { + "name": { + "description": "Name of the key. [required]\nThis is an arbitrary string used to differentiate different keys.\nA unique key is generated per name: two separate `TransientCryptoKey`\nprotos share the same generated key if their names are the same.\nWhen the data crypto key is generated, this name is not used in any way\n(repeating the api call will result in a different key being generated).", + "type": "string" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2Trigger": { + "description": "What event needs to occur for a new job to be started.", + "id": "GooglePrivacyDlpV2Trigger", + "properties": { + "schedule": { + "$ref": "GooglePrivacyDlpV2Schedule", + "description": "Create a job on a repeating basis based on the elapse of time." + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2UnwrappedCryptoKey": { + "description": "Using raw keys is prone to security risks due to accidentally\nleaking the key. Choose another type of key if possible.", + "id": "GooglePrivacyDlpV2UnwrappedCryptoKey", + "properties": { + "key": { + "description": "The AES 128/192/256 bit key. [required]", + "format": "byte", + "type": "string" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2UpdateDeidentifyTemplateRequest": { + "description": "Request message for UpdateDeidentifyTemplate.", + "id": "GooglePrivacyDlpV2UpdateDeidentifyTemplateRequest", + "properties": { + "deidentifyTemplate": { + "$ref": "GooglePrivacyDlpV2DeidentifyTemplate", + "description": "New DeidentifyTemplate value." + }, + "updateMask": { + "description": "Mask to control which fields get updated.", + "format": "google-fieldmask", + "type": "string" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2UpdateInspectTemplateRequest": { + "description": "Request message for UpdateInspectTemplate.", + "id": "GooglePrivacyDlpV2UpdateInspectTemplateRequest", + "properties": { + "inspectTemplate": { + "$ref": "GooglePrivacyDlpV2InspectTemplate", + "description": "New InspectTemplate value." + }, + "updateMask": { + "description": "Mask to control which fields get updated.", + "format": "google-fieldmask", + "type": "string" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2UpdateJobTriggerRequest": { + "description": "Request message for UpdateJobTrigger.", + "id": "GooglePrivacyDlpV2UpdateJobTriggerRequest", + "properties": { + "jobTrigger": { + "$ref": "GooglePrivacyDlpV2JobTrigger", + "description": "New JobTrigger value." + }, + "updateMask": { + "description": "Mask to control which fields get updated.", + "format": "google-fieldmask", + "type": "string" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2Value": { + "description": "Set of primitive values supported by the system.\nNote that for the purposes of inspection or transformation, the number\nof bytes considered to comprise a 'Value' is based on its representation\nas a UTF-8 encoded string. For example, if 'integer_value' is set to\n123456789, the number of bytes would be counted as 9, even though an\nint64 only holds up to 8 bytes of data.", + "id": "GooglePrivacyDlpV2Value", + "properties": { + "booleanValue": { + "type": "boolean" + }, + "dateValue": { + "$ref": "GoogleTypeDate" + }, + "dayOfWeekValue": { + "enum": [ + "DAY_OF_WEEK_UNSPECIFIED", + "MONDAY", + "TUESDAY", + "WEDNESDAY", + "THURSDAY", + "FRIDAY", + "SATURDAY", + "SUNDAY" + ], + "enumDescriptions": [ + "The unspecified day-of-week.", + "The day-of-week of Monday.", + "The day-of-week of Tuesday.", + "The day-of-week of Wednesday.", + "The day-of-week of Thursday.", + "The day-of-week of Friday.", + "The day-of-week of Saturday.", + "The day-of-week of Sunday." + ], + "type": "string" + }, + "floatValue": { + "format": "double", + "type": "number" + }, + "integerValue": { + "format": "int64", + "type": "string" + }, + "stringValue": { + "type": "string" + }, + "timeValue": { + "$ref": "GoogleTypeTimeOfDay" + }, + "timestampValue": { + "format": "google-datetime", + "type": "string" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2ValueFrequency": { + "description": "A value of a field, including its frequency.", + "id": "GooglePrivacyDlpV2ValueFrequency", + "properties": { + "count": { + "description": "How many times the value is contained in the field.", + "format": "int64", + "type": "string" + }, + "value": { + "$ref": "GooglePrivacyDlpV2Value", + "description": "A value contained in the field in question." + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2WordList": { + "description": "Message defining a list of words or phrases to search for in the data.", + "id": "GooglePrivacyDlpV2WordList", + "properties": { + "words": { + "description": "Words or phrases defining the dictionary. The dictionary must contain\nat least one phrase and every phrase must contain at least 2 characters\nthat are letters or digits. [required]", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1AuxiliaryTable": { + "description": "An auxiliary table contains statistical information on the relative\nfrequency of different quasi-identifiers values. It has one or several\nquasi-identifiers columns, and one column that indicates the relative\nfrequency of each quasi-identifier tuple.\nIf a tuple is present in the data but not in the auxiliary table, the\ncorresponding relative frequency is assumed to be zero (and thus, the\ntuple is highly reidentifiable).", + "id": "GooglePrivacyDlpV2beta1AuxiliaryTable", + "properties": { + "quasiIds": { + "description": "Quasi-identifier columns. [required]", + "items": { + "$ref": "GooglePrivacyDlpV2beta1QuasiIdField" + }, + "type": "array" + }, + "relativeFrequency": { + "$ref": "GooglePrivacyDlpV2beta1FieldId", + "description": "The relative frequency column must contain a floating-point number\nbetween 0 and 1 (inclusive). Null values are assumed to be zero.\n[required]" + }, + "table": { + "$ref": "GooglePrivacyDlpV2beta1BigQueryTable", + "description": "Auxiliary table location. [required]" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1BigQueryOptions": { + "description": "Options defining BigQuery table and row identifiers.", + "id": "GooglePrivacyDlpV2beta1BigQueryOptions", + "properties": { + "identifyingFields": { + "description": "References to fields uniquely identifying rows within the table.\nNested fields in the format, like `person.birthdate.year`, are allowed.", + "items": { + "$ref": "GooglePrivacyDlpV2beta1FieldId" + }, + "type": "array" + }, + "tableReference": { + "$ref": "GooglePrivacyDlpV2beta1BigQueryTable", + "description": "Complete BigQuery table reference." + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1BigQueryTable": { + "description": "Message defining the location of a BigQuery table. A table is uniquely\nidentified by its project_id, dataset_id, and table_name. Within a query\na table is often referenced with a string in the format of:\n`\u003cproject_id\u003e:\u003cdataset_id\u003e.\u003ctable_id\u003e` or\n`\u003cproject_id\u003e.\u003cdataset_id\u003e.\u003ctable_id\u003e`.", + "id": "GooglePrivacyDlpV2beta1BigQueryTable", + "properties": { + "datasetId": { + "description": "Dataset ID of the table.", + "type": "string" + }, + "projectId": { + "description": "The Google Cloud Platform project ID of the project containing the table.\nIf omitted, project ID is inferred from the API call.", + "type": "string" + }, + "tableId": { + "description": "Name of the table.", + "type": "string" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1CategoricalStatsConfig": { + "description": "Compute numerical stats over an individual column, including\nnumber of distinct values and value count distribution.", + "id": "GooglePrivacyDlpV2beta1CategoricalStatsConfig", + "properties": { + "field": { + "$ref": "GooglePrivacyDlpV2beta1FieldId", + "description": "Field to compute categorical stats on. All column types are\nsupported except for arrays and structs. However, it may be more\ninformative to use NumericalStats when the field type is supported,\ndepending on the data." + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1CategoricalStatsHistogramBucket": { + "description": "Histogram bucket of value frequencies in the column.", + "id": "GooglePrivacyDlpV2beta1CategoricalStatsHistogramBucket", + "properties": { + "bucketSize": { + "description": "Total number of records in this bucket.", + "format": "int64", + "type": "string" + }, + "bucketValues": { + "description": "Sample of value frequencies in this bucket. The total number of\nvalues returned per bucket is capped at 20.", + "items": { + "$ref": "GooglePrivacyDlpV2beta1ValueFrequency" + }, + "type": "array" + }, + "valueFrequencyLowerBound": { + "description": "Lower bound on the value frequency of the values in this bucket.", + "format": "int64", + "type": "string" + }, + "valueFrequencyUpperBound": { + "description": "Upper bound on the value frequency of the values in this bucket.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1CategoricalStatsResult": { + "description": "Result of the categorical stats computation.", + "id": "GooglePrivacyDlpV2beta1CategoricalStatsResult", + "properties": { + "valueFrequencyHistogramBuckets": { + "description": "Histogram of value frequencies in the column.", + "items": { + "$ref": "GooglePrivacyDlpV2beta1CategoricalStatsHistogramBucket" + }, + "type": "array" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1CloudStorageOptions": { + "description": "Options defining a file or a set of files (path ending with *) within\na Google Cloud Storage bucket.", + "id": "GooglePrivacyDlpV2beta1CloudStorageOptions", + "properties": { + "fileSet": { + "$ref": "GooglePrivacyDlpV2beta1FileSet" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1CloudStoragePath": { + "description": "A location in Cloud Storage.", + "id": "GooglePrivacyDlpV2beta1CloudStoragePath", + "properties": { + "path": { + "description": "The url, in the format of `gs://bucket/\u003cpath\u003e`.", + "type": "string" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1CustomInfoType": { + "description": "Custom information type provided by the user. Used to find domain-specific\nsensitive information configurable to the data in question.", + "id": "GooglePrivacyDlpV2beta1CustomInfoType", + "properties": { + "dictionary": { + "$ref": "GooglePrivacyDlpV2beta1Dictionary", + "description": "Dictionary-based custom info type." + }, + "infoType": { + "$ref": "GooglePrivacyDlpV2beta1InfoType", + "description": "Info type configuration. All custom info types must have configurations\nthat do not conflict with built-in info types or other custom info types." + }, + "surrogateType": { + "$ref": "GooglePrivacyDlpV2beta1SurrogateType", + "description": "Surrogate info type." + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1DatastoreOptions": { + "description": "Options defining a data set within Google Cloud Datastore.", + "id": "GooglePrivacyDlpV2beta1DatastoreOptions", + "properties": { + "kind": { + "$ref": "GooglePrivacyDlpV2beta1KindExpression", + "description": "The kind to process." + }, + "partitionId": { + "$ref": "GooglePrivacyDlpV2beta1PartitionId", + "description": "A partition ID identifies a grouping of entities. The grouping is always\nby project and namespace, however the namespace ID may be empty." + }, + "projection": { + "description": "Properties to scan. If none are specified, all properties will be scanned\nby default.", + "items": { + "$ref": "GooglePrivacyDlpV2beta1Projection" + }, + "type": "array" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1Dictionary": { + "description": "Custom information type based on a dictionary of words or phrases. This can\nbe used to match sensitive information specific to the data, such as a list\nof employee IDs or job titles.\n\nDictionary words are case-insensitive and all characters other than letters\nand digits in the unicode [Basic Multilingual\nPlane](https://en.wikipedia.org/wiki/Plane_%28Unicode%29#Basic_Multilingual_Plane)\nwill be replaced with whitespace when scanning for matches, so the\ndictionary phrase \"Sam Johnson\" will match all three phrases \"sam johnson\",\n\"Sam, Johnson\", and \"Sam (Johnson)\". Additionally, the characters\nsurrounding any match must be of a different type than the adjacent\ncharacters within the word, so letters must be next to non-letters and\ndigits next to non-digits. For example, the dictionary word \"jen\" will\nmatch the first three letters of the text \"jen123\" but will return no\nmatches for \"jennifer\".\n\nDictionary words containing a large number of characters that are not\nletters or digits may result in unexpected findings because such characters\nare treated as whitespace.", + "id": "GooglePrivacyDlpV2beta1Dictionary", + "properties": { + "wordList": { + "$ref": "GooglePrivacyDlpV2beta1WordList", + "description": "List of words or phrases to search for." + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1EntityId": { + "description": "An entity in a dataset is a field or set of fields that correspond to a\nsingle person. For example, in medical records the `EntityId` might be\na patient identifier, or for financial records it might be an account\nidentifier. This message is used when generalizations or analysis must be\nconsistent across multiple rows pertaining to the same entity.", + "id": "GooglePrivacyDlpV2beta1EntityId", + "properties": { + "field": { + "$ref": "GooglePrivacyDlpV2beta1FieldId", + "description": "Composite key indicating which field contains the entity identifier." + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1FieldId": { + "description": "General identifier of a data field in a storage service.", + "id": "GooglePrivacyDlpV2beta1FieldId", + "properties": { + "columnName": { + "description": "Name describing the field.", + "type": "string" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1FileSet": { + "description": "Set of files to scan.", + "id": "GooglePrivacyDlpV2beta1FileSet", + "properties": { + "url": { + "description": "The url, in the format `gs://\u003cbucket\u003e/\u003cpath\u003e`. Trailing wildcard in the\npath is allowed.", + "type": "string" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1InfoType": { + "description": "Type of information detected by the API.", + "id": "GooglePrivacyDlpV2beta1InfoType", + "properties": { + "name": { + "description": "Name of the information type.", + "type": "string" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1InfoTypeLimit": { + "description": "Max findings configuration per info type, per content item or long running\noperation.", + "id": "GooglePrivacyDlpV2beta1InfoTypeLimit", + "properties": { + "infoType": { + "$ref": "GooglePrivacyDlpV2beta1InfoType", + "description": "Type of information the findings limit applies to. Only one limit per\ninfo_type should be provided. If InfoTypeLimit does not have an\ninfo_type, the DLP API applies the limit against all info_types that are\nfound but not specified in another InfoTypeLimit." + }, + "maxFindings": { + "description": "Max findings limit for the given infoType.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1InfoTypeStatistics": { + "description": "Statistics regarding a specific InfoType.", + "id": "GooglePrivacyDlpV2beta1InfoTypeStatistics", + "properties": { + "count": { + "description": "Number of findings for this info type.", + "format": "int64", + "type": "string" + }, + "infoType": { + "$ref": "GooglePrivacyDlpV2beta1InfoType", + "description": "The type of finding this stat is for." + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1InspectConfig": { + "description": "Configuration description of the scanning process.\nWhen used with redactContent only info_types and min_likelihood are currently\nused.", + "id": "GooglePrivacyDlpV2beta1InspectConfig", + "properties": { + "customInfoTypes": { + "description": "Custom info types provided by the user.", + "items": { + "$ref": "GooglePrivacyDlpV2beta1CustomInfoType" + }, + "type": "array" + }, + "excludeTypes": { + "description": "When true, excludes type information of the findings.", + "type": "boolean" + }, + "includeQuote": { + "description": "When true, a contextual quote from the data that triggered a finding is\nincluded in the response; see Finding.quote.", + "type": "boolean" + }, + "infoTypeLimits": { + "description": "Configuration of findings limit given for specified info types.", + "items": { + "$ref": "GooglePrivacyDlpV2beta1InfoTypeLimit" + }, + "type": "array" + }, + "infoTypes": { + "description": "Restricts what info_types to look for. The values must correspond to\nInfoType values returned by ListInfoTypes or found in documentation.\nEmpty info_types runs all enabled detectors.", + "items": { + "$ref": "GooglePrivacyDlpV2beta1InfoType" + }, + "type": "array" + }, + "maxFindings": { + "description": "Limits the number of findings per content item or long running operation.", + "format": "int32", + "type": "integer" + }, + "minLikelihood": { + "description": "Only returns findings equal or above this threshold.", + "enum": [ + "LIKELIHOOD_UNSPECIFIED", + "VERY_UNLIKELY", + "UNLIKELY", + "POSSIBLE", + "LIKELY", + "VERY_LIKELY" + ], + "enumDescriptions": [ + "Default value; information with all likelihoods is included.", + "Few matching elements.", + "", + "Some matching elements.", + "", + "Many matching elements." + ], + "type": "string" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1InspectOperationMetadata": { + "description": "Metadata returned within GetOperation for an inspect request.", + "id": "GooglePrivacyDlpV2beta1InspectOperationMetadata", + "properties": { + "createTime": { + "description": "The time which this request was started.", + "format": "google-datetime", + "type": "string" + }, + "infoTypeStats": { + "items": { + "$ref": "GooglePrivacyDlpV2beta1InfoTypeStatistics" + }, + "type": "array" + }, + "processedBytes": { + "description": "Total size in bytes that were processed.", + "format": "int64", + "type": "string" + }, + "requestInspectConfig": { + "$ref": "GooglePrivacyDlpV2beta1InspectConfig", + "description": "The inspect config used to create the Operation." + }, + "requestOutputConfig": { + "$ref": "GooglePrivacyDlpV2beta1OutputStorageConfig", + "description": "Optional location to store findings." + }, + "requestStorageConfig": { + "$ref": "GooglePrivacyDlpV2beta1StorageConfig", + "description": "The storage config used to create the Operation." + }, + "totalEstimatedBytes": { + "description": "Estimate of the number of bytes to process.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1InspectOperationResult": { + "description": "The operational data.", + "id": "GooglePrivacyDlpV2beta1InspectOperationResult", + "properties": { + "name": { + "description": "The server-assigned name, which is only unique within the same service that\noriginally returns it. If you use the default HTTP mapping, the\n`name` should have the format of `inspect/results/{id}`.", + "type": "string" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1KAnonymityConfig": { + "description": "k-anonymity metric, used for analysis of reidentification risk.", + "id": "GooglePrivacyDlpV2beta1KAnonymityConfig", + "properties": { + "entityId": { + "$ref": "GooglePrivacyDlpV2beta1EntityId", + "description": "Optional message indicating that each distinct entity_id should not\ncontribute to the k-anonymity count more than once per equivalence class.\nIf an entity_id appears on several rows with different quasi-identifier\ntuples, it will contribute to each count exactly once.\n\nThis can lead to unexpected results. Consider a table where ID 1 is\nassociated to quasi-identifier \"foo\", ID 2 to \"bar\", and ID 3 to *both*\nquasi-identifiers \"foo\" and \"bar\" (on separate rows), and where this ID\nis used as entity_id. Then, the anonymity value associated to ID 3 will\nbe 2, even if it is the only ID to be associated to both values \"foo\" and\n\"bar\"." + }, + "quasiIds": { + "description": "Set of fields to compute k-anonymity over. When multiple fields are\nspecified, they are considered a single composite key. Structs and\nrepeated data types are not supported; however, nested fields are\nsupported so long as they are not structs themselves or nested within\na repeated field.", + "items": { + "$ref": "GooglePrivacyDlpV2beta1FieldId" + }, + "type": "array" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1KAnonymityEquivalenceClass": { + "description": "The set of columns' values that share the same k-anonymity value.", + "id": "GooglePrivacyDlpV2beta1KAnonymityEquivalenceClass", + "properties": { + "equivalenceClassSize": { + "description": "Size of the equivalence class, for example number of rows with the\nabove set of values.", + "format": "int64", + "type": "string" + }, + "quasiIdsValues": { + "description": "Set of values defining the equivalence class. One value per\nquasi-identifier column in the original KAnonymity metric message.\nThe order is always the same as the original request.", + "items": { + "$ref": "GooglePrivacyDlpV2beta1Value" + }, + "type": "array" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1KAnonymityHistogramBucket": { + "description": "Histogram bucket of equivalence class sizes in the table.", + "id": "GooglePrivacyDlpV2beta1KAnonymityHistogramBucket", + "properties": { + "bucketSize": { + "description": "Total number of records in this bucket.", + "format": "int64", + "type": "string" + }, + "bucketValues": { + "description": "Sample of equivalence classes in this bucket. The total number of\nclasses returned per bucket is capped at 20.", + "items": { + "$ref": "GooglePrivacyDlpV2beta1KAnonymityEquivalenceClass" + }, + "type": "array" + }, + "equivalenceClassSizeLowerBound": { + "description": "Lower bound on the size of the equivalence classes in this bucket.", + "format": "int64", + "type": "string" + }, + "equivalenceClassSizeUpperBound": { + "description": "Upper bound on the size of the equivalence classes in this bucket.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1KAnonymityResult": { + "description": "Result of the k-anonymity computation.", + "id": "GooglePrivacyDlpV2beta1KAnonymityResult", + "properties": { + "equivalenceClassHistogramBuckets": { + "description": "Histogram of k-anonymity equivalence classes.", + "items": { + "$ref": "GooglePrivacyDlpV2beta1KAnonymityHistogramBucket" + }, + "type": "array" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1KMapEstimationConfig": { + "description": "Reidentifiability metric. This corresponds to a risk model similar to what\nis called \"journalist risk\" in the literature, except the attack dataset is\nstatistically modeled instead of being perfectly known. This can be done\nusing publicly available data (like the US Census), or using a custom\nstatistical model (indicated as one or several BigQuery tables), or by\nextrapolating from the distribution of values in the input dataset.", + "id": "GooglePrivacyDlpV2beta1KMapEstimationConfig", + "properties": { + "auxiliaryTables": { + "description": "Several auxiliary tables can be used in the analysis. Each custom_tag\nused to tag a quasi-identifiers column must appear in exactly one column\nof one auxiliary table.", + "items": { + "$ref": "GooglePrivacyDlpV2beta1AuxiliaryTable" + }, + "type": "array" + }, + "quasiIds": { + "description": "Fields considered to be quasi-identifiers. No two columns can have the\nsame tag. [required]", + "items": { + "$ref": "GooglePrivacyDlpV2beta1TaggedField" + }, + "type": "array" + }, + "regionCode": { + "description": "ISO 3166-1 alpha-2 region code to use in the statistical modeling.\nRequired if no column is tagged with a region-specific InfoType (like\nUS_ZIP_5) or a region code.", + "type": "string" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1KMapEstimationHistogramBucket": { + "description": "A KMapEstimationHistogramBucket message with the following values:\n min_anonymity: 3\n max_anonymity: 5\n frequency: 42\nmeans that there are 42 records whose quasi-identifier values correspond\nto 3, 4 or 5 people in the overlying population. An important particular\ncase is when min_anonymity = max_anonymity = 1: the frequency field then\ncorresponds to the number of uniquely identifiable records.", + "id": "GooglePrivacyDlpV2beta1KMapEstimationHistogramBucket", + "properties": { + "bucketSize": { + "description": "Number of records within these anonymity bounds.", + "format": "int64", + "type": "string" + }, + "bucketValues": { + "description": "Sample of quasi-identifier tuple values in this bucket. The total\nnumber of classes returned per bucket is capped at 20.", + "items": { + "$ref": "GooglePrivacyDlpV2beta1KMapEstimationQuasiIdValues" + }, + "type": "array" + }, + "maxAnonymity": { + "description": "Always greater than or equal to min_anonymity.", + "format": "int64", + "type": "string" + }, + "minAnonymity": { + "description": "Always positive.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1KMapEstimationQuasiIdValues": { + "description": "A tuple of values for the quasi-identifier columns.", + "id": "GooglePrivacyDlpV2beta1KMapEstimationQuasiIdValues", + "properties": { + "estimatedAnonymity": { + "description": "The estimated anonymity for these quasi-identifier values.", + "format": "int64", + "type": "string" + }, + "quasiIdsValues": { + "description": "The quasi-identifier values.", + "items": { + "$ref": "GooglePrivacyDlpV2beta1Value" + }, + "type": "array" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1KMapEstimationResult": { + "description": "Result of the reidentifiability analysis. Note that these results are an\nestimation, not exact values.", + "id": "GooglePrivacyDlpV2beta1KMapEstimationResult", + "properties": { + "kMapEstimationHistogram": { + "description": "The intervals [min_anonymity, max_anonymity] do not overlap. If a value\ndoesn't correspond to any such interval, the associated frequency is\nzero. For example, the following records:\n {min_anonymity: 1, max_anonymity: 1, frequency: 17}\n {min_anonymity: 2, max_anonymity: 3, frequency: 42}\n {min_anonymity: 5, max_anonymity: 10, frequency: 99}\nmean that there are no record with an estimated anonymity of 4, 5, or\nlarger than 10.", + "items": { + "$ref": "GooglePrivacyDlpV2beta1KMapEstimationHistogramBucket" + }, + "type": "array" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1KindExpression": { + "description": "A representation of a Datastore kind.", + "id": "GooglePrivacyDlpV2beta1KindExpression", + "properties": { + "name": { + "description": "The name of the kind.", + "type": "string" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1LDiversityConfig": { + "description": "l-diversity metric, used for analysis of reidentification risk.", + "id": "GooglePrivacyDlpV2beta1LDiversityConfig", + "properties": { + "quasiIds": { + "description": "Set of quasi-identifiers indicating how equivalence classes are\ndefined for the l-diversity computation. When multiple fields are\nspecified, they are considered a single composite key.", + "items": { + "$ref": "GooglePrivacyDlpV2beta1FieldId" + }, + "type": "array" + }, + "sensitiveAttribute": { + "$ref": "GooglePrivacyDlpV2beta1FieldId", + "description": "Sensitive field for computing the l-value." + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1LDiversityEquivalenceClass": { + "description": "The set of columns' values that share the same l-diversity value.", + "id": "GooglePrivacyDlpV2beta1LDiversityEquivalenceClass", + "properties": { + "equivalenceClassSize": { + "description": "Size of the k-anonymity equivalence class.", + "format": "int64", + "type": "string" + }, + "numDistinctSensitiveValues": { + "description": "Number of distinct sensitive values in this equivalence class.", + "format": "int64", + "type": "string" + }, + "quasiIdsValues": { + "description": "Quasi-identifier values defining the k-anonymity equivalence\nclass. The order is always the same as the original request.", + "items": { + "$ref": "GooglePrivacyDlpV2beta1Value" + }, + "type": "array" + }, + "topSensitiveValues": { + "description": "Estimated frequencies of top sensitive values.", + "items": { + "$ref": "GooglePrivacyDlpV2beta1ValueFrequency" + }, + "type": "array" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1LDiversityHistogramBucket": { + "description": "Histogram bucket of sensitive value frequencies in the table.", + "id": "GooglePrivacyDlpV2beta1LDiversityHistogramBucket", + "properties": { + "bucketSize": { + "description": "Total number of records in this bucket.", + "format": "int64", + "type": "string" + }, + "bucketValues": { + "description": "Sample of equivalence classes in this bucket. The total number of\nclasses returned per bucket is capped at 20.", + "items": { + "$ref": "GooglePrivacyDlpV2beta1LDiversityEquivalenceClass" + }, + "type": "array" + }, + "sensitiveValueFrequencyLowerBound": { + "description": "Lower bound on the sensitive value frequencies of the equivalence\nclasses in this bucket.", + "format": "int64", + "type": "string" + }, + "sensitiveValueFrequencyUpperBound": { + "description": "Upper bound on the sensitive value frequencies of the equivalence\nclasses in this bucket.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1LDiversityResult": { + "description": "Result of the l-diversity computation.", + "id": "GooglePrivacyDlpV2beta1LDiversityResult", + "properties": { + "sensitiveValueFrequencyHistogramBuckets": { + "description": "Histogram of l-diversity equivalence class sensitive value frequencies.", + "items": { + "$ref": "GooglePrivacyDlpV2beta1LDiversityHistogramBucket" + }, + "type": "array" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1NumericalStatsConfig": { + "description": "Compute numerical stats over an individual column, including\nmin, max, and quantiles.", + "id": "GooglePrivacyDlpV2beta1NumericalStatsConfig", + "properties": { + "field": { + "$ref": "GooglePrivacyDlpV2beta1FieldId", + "description": "Field to compute numerical stats on. Supported types are\ninteger, float, date, datetime, timestamp, time." + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1NumericalStatsResult": { + "description": "Result of the numerical stats computation.", + "id": "GooglePrivacyDlpV2beta1NumericalStatsResult", + "properties": { + "maxValue": { + "$ref": "GooglePrivacyDlpV2beta1Value", + "description": "Maximum value appearing in the column." + }, + "minValue": { + "$ref": "GooglePrivacyDlpV2beta1Value", + "description": "Minimum value appearing in the column." + }, + "quantileValues": { + "description": "List of 99 values that partition the set of field values into 100 equal\nsized buckets.", + "items": { + "$ref": "GooglePrivacyDlpV2beta1Value" + }, + "type": "array" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1OutputStorageConfig": { + "description": "Cloud repository for storing output.", + "id": "GooglePrivacyDlpV2beta1OutputStorageConfig", + "properties": { + "storagePath": { + "$ref": "GooglePrivacyDlpV2beta1CloudStoragePath", + "description": "The path to a Google Cloud Storage location to store output.\nThe bucket must already exist and\nthe Google APIs service account for DLP must have write permission to\nwrite to the given bucket.\nResults are split over multiple csv files with each file name matching\nthe pattern \"[operation_id]_[count].csv\", for example\n`3094877188788974909_1.csv`. The `operation_id` matches the\nidentifier for the Operation, and the `count` is a counter used for\ntracking the number of files written.\n\nThe CSV file(s) contain the following columns regardless of storage type\nscanned:\n- id\n- info_type\n- likelihood\n- byte size of finding\n- quote\n- timestamp\n\nFor Cloud Storage the next columns are:\n\n- file_path\n- start_offset\n\nFor Cloud Datastore the next columns are:\n\n- project_id\n- namespace_id\n- path\n- column_name\n- offset\n\nFor BigQuery the next columns are:\n\n- row_number\n- project_id\n- dataset_id\n- table_id" + }, + "table": { + "$ref": "GooglePrivacyDlpV2beta1BigQueryTable", + "description": "Store findings in a new table in the dataset." + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1PartitionId": { + "description": "Datastore partition ID.\nA partition ID identifies a grouping of entities. The grouping is always\nby project and namespace, however the namespace ID may be empty.\n\nA partition ID contains several dimensions:\nproject ID and namespace ID.", + "id": "GooglePrivacyDlpV2beta1PartitionId", + "properties": { + "namespaceId": { + "description": "If not empty, the ID of the namespace to which the entities belong.", + "type": "string" + }, + "projectId": { + "description": "The ID of the project to which the entities belong.", + "type": "string" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1PrivacyMetric": { + "description": "Privacy metric to compute for reidentification risk analysis.", + "id": "GooglePrivacyDlpV2beta1PrivacyMetric", + "properties": { + "categoricalStatsConfig": { + "$ref": "GooglePrivacyDlpV2beta1CategoricalStatsConfig" + }, + "kAnonymityConfig": { + "$ref": "GooglePrivacyDlpV2beta1KAnonymityConfig" + }, + "kMapEstimationConfig": { + "$ref": "GooglePrivacyDlpV2beta1KMapEstimationConfig" + }, + "lDiversityConfig": { + "$ref": "GooglePrivacyDlpV2beta1LDiversityConfig" + }, + "numericalStatsConfig": { + "$ref": "GooglePrivacyDlpV2beta1NumericalStatsConfig" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1Projection": { + "description": "A representation of a Datastore property in a projection.", + "id": "GooglePrivacyDlpV2beta1Projection", + "properties": { + "property": { + "$ref": "GooglePrivacyDlpV2beta1PropertyReference", + "description": "The property to project." + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1PropertyReference": { + "description": "A reference to a property relative to the Datastore kind expressions.", + "id": "GooglePrivacyDlpV2beta1PropertyReference", + "properties": { + "name": { + "description": "The name of the property.\nIf name includes \".\"s, it may be interpreted as a property name path.", + "type": "string" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1QuasiIdField": { + "description": "A quasi-identifier column has a custom_tag, used to know which column\nin the data corresponds to which column in the statistical model.", + "id": "GooglePrivacyDlpV2beta1QuasiIdField", + "properties": { + "customTag": { + "type": "string" + }, + "field": { + "$ref": "GooglePrivacyDlpV2beta1FieldId" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1RiskAnalysisOperationMetadata": { + "description": "Metadata returned within the\n[`riskAnalysis.operations.get`](/dlp/docs/reference/rest/v2beta1/riskAnalysis.operations/get)\nfor risk analysis.", + "id": "GooglePrivacyDlpV2beta1RiskAnalysisOperationMetadata", + "properties": { + "createTime": { + "description": "The time which this request was started.", + "format": "google-datetime", + "type": "string" + }, + "requestedPrivacyMetric": { + "$ref": "GooglePrivacyDlpV2beta1PrivacyMetric", + "description": "Privacy metric to compute." + }, + "requestedSourceTable": { + "$ref": "GooglePrivacyDlpV2beta1BigQueryTable", + "description": "Input dataset to compute metrics over." + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1RiskAnalysisOperationResult": { + "description": "Result of a risk analysis\n[`Operation`](/dlp/docs/reference/rest/v2beta1/inspect.operations)\nrequest.", + "id": "GooglePrivacyDlpV2beta1RiskAnalysisOperationResult", + "properties": { + "categoricalStatsResult": { + "$ref": "GooglePrivacyDlpV2beta1CategoricalStatsResult" + }, + "kAnonymityResult": { + "$ref": "GooglePrivacyDlpV2beta1KAnonymityResult" + }, + "kMapEstimationResult": { + "$ref": "GooglePrivacyDlpV2beta1KMapEstimationResult" + }, + "lDiversityResult": { + "$ref": "GooglePrivacyDlpV2beta1LDiversityResult" + }, + "numericalStatsResult": { + "$ref": "GooglePrivacyDlpV2beta1NumericalStatsResult" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1StorageConfig": { + "description": "Shared message indicating Cloud storage type.", + "id": "GooglePrivacyDlpV2beta1StorageConfig", + "properties": { + "bigQueryOptions": { + "$ref": "GooglePrivacyDlpV2beta1BigQueryOptions", + "description": "BigQuery options specification." + }, + "cloudStorageOptions": { + "$ref": "GooglePrivacyDlpV2beta1CloudStorageOptions", + "description": "Google Cloud Storage options specification." + }, + "datastoreOptions": { + "$ref": "GooglePrivacyDlpV2beta1DatastoreOptions", + "description": "Google Cloud Datastore options specification." + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1SurrogateType": { + "description": "Message for detecting output from deidentification transformations\nsuch as\n[`CryptoReplaceFfxFpeConfig`](/dlp/docs/reference/rest/v2beta1/content/deidentify#CryptoReplaceFfxFpeConfig).\nThese types of transformations are\nthose that perform pseudonymization, thereby producing a \"surrogate\" as\noutput. This should be used in conjunction with a field on the\ntransformation such as `surrogate_info_type`. This custom info type does\nnot support the use of `detection_rules`.", + "id": "GooglePrivacyDlpV2beta1SurrogateType", + "properties": {}, + "type": "object" + }, + "GooglePrivacyDlpV2beta1TaggedField": { + "description": "A column with a semantic tag attached.", + "id": "GooglePrivacyDlpV2beta1TaggedField", + "properties": { + "customTag": { + "description": "A column can be tagged with a custom tag. In this case, the user must\nindicate an auxiliary table that contains statistical information on\nthe possible values of this column (below).", + "type": "string" + }, + "field": { + "$ref": "GooglePrivacyDlpV2beta1FieldId", + "description": "Identifies the column. [required]" + }, + "inferred": { + "$ref": "GoogleProtobufEmpty", + "description": "If no semantic tag is indicated, we infer the statistical model from\nthe distribution of values in the input data" + }, + "infoType": { + "$ref": "GooglePrivacyDlpV2beta1InfoType", + "description": "A column can be tagged with a InfoType to use the relevant public\ndataset as a statistical model of population, if available. We\ncurrently support US ZIP codes, region codes, ages and genders." + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1Value": { + "description": "Set of primitive values supported by the system.\nNote that for the purposes of inspection or transformation, the number\nof bytes considered to comprise a 'Value' is based on its representation\nas a UTF-8 encoded string. For example, if 'integer_value' is set to\n123456789, the number of bytes would be counted as 9, even though an\nint64 only holds up to 8 bytes of data.", + "id": "GooglePrivacyDlpV2beta1Value", + "properties": { + "booleanValue": { + "type": "boolean" + }, + "dateValue": { + "$ref": "GoogleTypeDate" + }, + "floatValue": { + "format": "double", + "type": "number" + }, + "integerValue": { + "format": "int64", + "type": "string" + }, + "stringValue": { + "type": "string" + }, + "timeValue": { + "$ref": "GoogleTypeTimeOfDay" + }, + "timestampValue": { + "format": "google-datetime", + "type": "string" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1ValueFrequency": { + "description": "A value of a field, including its frequency.", + "id": "GooglePrivacyDlpV2beta1ValueFrequency", + "properties": { + "count": { + "description": "How many times the value is contained in the field.", + "format": "int64", + "type": "string" + }, + "value": { + "$ref": "GooglePrivacyDlpV2beta1Value", + "description": "A value contained in the field in question." + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1WordList": { + "description": "Message defining a list of words or phrases to search for in the data.", + "id": "GooglePrivacyDlpV2beta1WordList", + "properties": { + "words": { + "description": "Words or phrases defining the dictionary. The dictionary must contain\nat least one phrase and every phrase must contain at least 2 characters\nthat are letters or digits. [required]", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "GoogleProtobufEmpty": { + "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": "GoogleProtobufEmpty", + "properties": {}, + "type": "object" + }, + "GoogleRpcStatus": { + "description": "The `Status` type defines a logical error model that is suitable for different\nprogramming environments, including REST APIs and RPC APIs. It is used by\n[gRPC](https://github.com/grpc). The error model is designed to be:\n\n- Simple to use and understand for most users\n- Flexible enough to meet unexpected needs\n\n# Overview\n\nThe `Status` message contains three pieces of data: error code, error message,\nand error details. The error code should be an enum value of\ngoogle.rpc.Code, but it may accept additional error codes if needed. The\nerror message should be a developer-facing English message that helps\ndevelopers *understand* and *resolve* the error. If a localized user-facing\nerror message is needed, put the localized message in the error details or\nlocalize it in the client. The optional error details may contain arbitrary\ninformation about the error. There is a predefined set of error detail types\nin the package `google.rpc` that can be used for common error conditions.\n\n# Language mapping\n\nThe `Status` message is the logical representation of the error model, but it\nis not necessarily the actual wire format. When the `Status` message is\nexposed in different client libraries and different wire protocols, it can be\nmapped differently. For example, it will likely be mapped to some exceptions\nin Java, but more likely mapped to some error codes in C.\n\n# Other uses\n\nThe error model and the `Status` message can be used in a variety of\nenvironments, either with or without APIs, to provide a\nconsistent developer experience across different environments.\n\nExample uses of this error model include:\n\n- Partial errors. If a service needs to return partial errors to the client,\n it may embed the `Status` in the normal response to indicate the partial\n errors.\n\n- Workflow errors. A typical workflow has multiple steps. Each step may\n have a `Status` message for error reporting.\n\n- Batch operations. If a client uses batch request and batch response, the\n `Status` message should be used directly inside batch response, one for\n each error sub-response.\n\n- Asynchronous operations. If an API call embeds asynchronous operation\n results in its response, the status of those operations should be\n represented directly using the `Status` message.\n\n- Logging. If some API errors are stored in logs, the message `Status` could\n be used directly after any stripping needed for security/privacy reasons.", + "id": "GoogleRpcStatus", + "properties": { + "code": { + "description": "The status code, which should be an enum value of google.rpc.Code.", + "format": "int32", + "type": "integer" + }, + "details": { + "description": "A list of messages that carry the error details. There is a common set of\nmessage types for APIs to use.", + "items": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "A developer-facing error message, which should be in English. Any\nuser-facing error message should be localized and sent in the\ngoogle.rpc.Status.details field, or localized by the client.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleTypeDate": { + "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": "GoogleTypeDate", + "properties": { + "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" + }, + "month": { + "description": "Month of year. Must be from 1 to 12.", + "format": "int32", + "type": "integer" + }, + "year": { + "description": "Year of date. Must be from 1 to 9999, or 0 if specifying a date without\na year.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "GoogleTypeTimeOfDay": { + "description": "Represents a time of day. The date and time zone are either not significant\nor are specified elsewhere. An API may choose to allow leap seconds. Related\ntypes are google.type.Date and `google.protobuf.Timestamp`.", + "id": "GoogleTypeTimeOfDay", + "properties": { + "hours": { + "description": "Hours of day in 24 hour format. Should be from 0 to 23. An API may choose\nto allow the value \"24:00:00\" for scenarios like business closing time.", + "format": "int32", + "type": "integer" + }, + "minutes": { + "description": "Minutes of hour of day. Must be from 0 to 59.", + "format": "int32", + "type": "integer" + }, + "nanos": { + "description": "Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999.", + "format": "int32", + "type": "integer" + }, + "seconds": { + "description": "Seconds of minutes of the time. Must normally be from 0 to 59. An API may\nallow the value 60 if it allows leap-seconds.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + } + }, + "servicePath": "", + "title": "Cloud Data Loss Prevention (DLP) API", + "version": "v2", + "version_module": true +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/dlp/v2/dlp-gen.go b/vendor/google.golang.org/api/dlp/v2/dlp-gen.go new file mode 100644 index 000000000..74cef25e6 --- /dev/null +++ b/vendor/google.golang.org/api/dlp/v2/dlp-gen.go @@ -0,0 +1,13300 @@ +// Package dlp provides access to the Cloud Data Loss Prevention (DLP) API. +// +// See https://cloud.google.com/dlp/docs/ +// +// Usage example: +// +// import "google.golang.org/api/dlp/v2" +// ... +// dlpService, err := dlp.New(oauthHttpClient) +package dlp // import "google.golang.org/api/dlp/v2" + +import ( + "bytes" + "encoding/json" + "errors" + "fmt" + context "golang.org/x/net/context" + ctxhttp "golang.org/x/net/context/ctxhttp" + gensupport "google.golang.org/api/gensupport" + googleapi "google.golang.org/api/googleapi" + "io" + "net/http" + "net/url" + "strconv" + "strings" +) + +// Always reference these packages, just in case the auto-generated code +// below doesn't. +var _ = bytes.NewBuffer +var _ = strconv.Itoa +var _ = fmt.Sprintf +var _ = json.NewDecoder +var _ = io.Copy +var _ = url.Parse +var _ = gensupport.MarshalJSON +var _ = googleapi.Version +var _ = errors.New +var _ = strings.Replace +var _ = context.Canceled +var _ = ctxhttp.Do + +const apiId = "dlp:v2" +const apiName = "dlp" +const apiVersion = "v2" +const basePath = "https://dlp.googleapis.com/" + +// OAuth2 scopes used by this API. +const ( + // View and manage your data across Google Cloud Platform services + CloudPlatformScope = "https://www.googleapis.com/auth/cloud-platform" +) + +func New(client *http.Client) (*Service, error) { + if client == nil { + return nil, errors.New("client is nil") + } + s := &Service{client: client, BasePath: basePath} + s.InfoTypes = NewInfoTypesService(s) + s.Organizations = NewOrganizationsService(s) + s.Projects = NewProjectsService(s) + return s, nil +} + +type Service struct { + client *http.Client + BasePath string // API endpoint base URL + UserAgent string // optional additional User-Agent fragment + + InfoTypes *InfoTypesService + + Organizations *OrganizationsService + + Projects *ProjectsService +} + +func (s *Service) userAgent() string { + if s.UserAgent == "" { + return googleapi.UserAgent + } + return googleapi.UserAgent + " " + s.UserAgent +} + +func NewInfoTypesService(s *Service) *InfoTypesService { + rs := &InfoTypesService{s: s} + return rs +} + +type InfoTypesService struct { + s *Service +} + +func NewOrganizationsService(s *Service) *OrganizationsService { + rs := &OrganizationsService{s: s} + rs.DeidentifyTemplates = NewOrganizationsDeidentifyTemplatesService(s) + rs.InspectTemplates = NewOrganizationsInspectTemplatesService(s) + return rs +} + +type OrganizationsService struct { + s *Service + + DeidentifyTemplates *OrganizationsDeidentifyTemplatesService + + InspectTemplates *OrganizationsInspectTemplatesService +} + +func NewOrganizationsDeidentifyTemplatesService(s *Service) *OrganizationsDeidentifyTemplatesService { + rs := &OrganizationsDeidentifyTemplatesService{s: s} + return rs +} + +type OrganizationsDeidentifyTemplatesService struct { + s *Service +} + +func NewOrganizationsInspectTemplatesService(s *Service) *OrganizationsInspectTemplatesService { + rs := &OrganizationsInspectTemplatesService{s: s} + return rs +} + +type OrganizationsInspectTemplatesService struct { + s *Service +} + +func NewProjectsService(s *Service) *ProjectsService { + rs := &ProjectsService{s: s} + rs.Content = NewProjectsContentService(s) + rs.DeidentifyTemplates = NewProjectsDeidentifyTemplatesService(s) + rs.DlpJobs = NewProjectsDlpJobsService(s) + rs.Image = NewProjectsImageService(s) + rs.InspectTemplates = NewProjectsInspectTemplatesService(s) + rs.JobTriggers = NewProjectsJobTriggersService(s) + return rs +} + +type ProjectsService struct { + s *Service + + Content *ProjectsContentService + + DeidentifyTemplates *ProjectsDeidentifyTemplatesService + + DlpJobs *ProjectsDlpJobsService + + Image *ProjectsImageService + + InspectTemplates *ProjectsInspectTemplatesService + + JobTriggers *ProjectsJobTriggersService +} + +func NewProjectsContentService(s *Service) *ProjectsContentService { + rs := &ProjectsContentService{s: s} + return rs +} + +type ProjectsContentService struct { + s *Service +} + +func NewProjectsDeidentifyTemplatesService(s *Service) *ProjectsDeidentifyTemplatesService { + rs := &ProjectsDeidentifyTemplatesService{s: s} + return rs +} + +type ProjectsDeidentifyTemplatesService struct { + s *Service +} + +func NewProjectsDlpJobsService(s *Service) *ProjectsDlpJobsService { + rs := &ProjectsDlpJobsService{s: s} + return rs +} + +type ProjectsDlpJobsService struct { + s *Service +} + +func NewProjectsImageService(s *Service) *ProjectsImageService { + rs := &ProjectsImageService{s: s} + return rs +} + +type ProjectsImageService struct { + s *Service +} + +func NewProjectsInspectTemplatesService(s *Service) *ProjectsInspectTemplatesService { + rs := &ProjectsInspectTemplatesService{s: s} + return rs +} + +type ProjectsInspectTemplatesService struct { + s *Service +} + +func NewProjectsJobTriggersService(s *Service) *ProjectsJobTriggersService { + rs := &ProjectsJobTriggersService{s: s} + return rs +} + +type ProjectsJobTriggersService struct { + s *Service +} + +// GooglePrivacyDlpV2Action: A task to execute on the completion of a +// job. +type GooglePrivacyDlpV2Action struct { + // PubSub: Publish a notification to a pubsub topic. + PubSub *GooglePrivacyDlpV2PublishToPubSub `json:"pubSub,omitempty"` + + // SaveFindings: Save resulting findings in a provided location. + SaveFindings *GooglePrivacyDlpV2SaveFindings `json:"saveFindings,omitempty"` + + // ForceSendFields is a list of field names (e.g. "PubSub") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "PubSub") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2Action) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2Action + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2AnalyzeDataSourceRiskDetails: Result of a risk +// analysis operation request. +type GooglePrivacyDlpV2AnalyzeDataSourceRiskDetails struct { + CategoricalStatsResult *GooglePrivacyDlpV2CategoricalStatsResult `json:"categoricalStatsResult,omitempty"` + + KAnonymityResult *GooglePrivacyDlpV2KAnonymityResult `json:"kAnonymityResult,omitempty"` + + KMapEstimationResult *GooglePrivacyDlpV2KMapEstimationResult `json:"kMapEstimationResult,omitempty"` + + LDiversityResult *GooglePrivacyDlpV2LDiversityResult `json:"lDiversityResult,omitempty"` + + NumericalStatsResult *GooglePrivacyDlpV2NumericalStatsResult `json:"numericalStatsResult,omitempty"` + + // RequestedPrivacyMetric: Privacy metric to compute. + RequestedPrivacyMetric *GooglePrivacyDlpV2PrivacyMetric `json:"requestedPrivacyMetric,omitempty"` + + // RequestedSourceTable: Input dataset to compute metrics over. + RequestedSourceTable *GooglePrivacyDlpV2BigQueryTable `json:"requestedSourceTable,omitempty"` + + // ForceSendFields is a list of field names (e.g. + // "CategoricalStatsResult") to unconditionally include in API requests. + // By default, fields with empty values are omitted from API requests. + // However, any non-pointer, non-interface field appearing in + // ForceSendFields will be sent to the server regardless of whether the + // field is empty or not. This may be used to include empty fields in + // Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "CategoricalStatsResult") + // to include in API requests with the JSON null value. By default, + // fields with empty values are omitted from API requests. However, any + // field with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2AnalyzeDataSourceRiskDetails) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2AnalyzeDataSourceRiskDetails + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2AuxiliaryTable: An auxiliary table contains +// statistical information on the relative +// frequency of different quasi-identifiers values. It has one or +// several +// quasi-identifiers columns, and one column that indicates the +// relative +// frequency of each quasi-identifier tuple. +// If a tuple is present in the data but not in the auxiliary table, +// the +// corresponding relative frequency is assumed to be zero (and thus, +// the +// tuple is highly reidentifiable). +type GooglePrivacyDlpV2AuxiliaryTable struct { + // QuasiIds: Quasi-identifier columns. [required] + QuasiIds []*GooglePrivacyDlpV2QuasiIdField `json:"quasiIds,omitempty"` + + // RelativeFrequency: The relative frequency column must contain a + // floating-point number + // between 0 and 1 (inclusive). Null values are assumed to be + // zero. + // [required] + RelativeFrequency *GooglePrivacyDlpV2FieldId `json:"relativeFrequency,omitempty"` + + // Table: Auxiliary table location. [required] + Table *GooglePrivacyDlpV2BigQueryTable `json:"table,omitempty"` + + // ForceSendFields is a list of field names (e.g. "QuasiIds") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "QuasiIds") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2AuxiliaryTable) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2AuxiliaryTable + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2BigQueryKey: Row key for identifying a record in +// BigQuery table. +type GooglePrivacyDlpV2BigQueryKey struct { + // RowNumber: Absolute number of the row from the beginning of the table + // at the time + // of scanning. + RowNumber int64 `json:"rowNumber,omitempty,string"` + + // TableReference: Complete BigQuery table reference. + TableReference *GooglePrivacyDlpV2BigQueryTable `json:"tableReference,omitempty"` + + // ForceSendFields is a list of field names (e.g. "RowNumber") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "RowNumber") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2BigQueryKey) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2BigQueryKey + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2BigQueryOptions: Options defining BigQuery table +// and row identifiers. +type GooglePrivacyDlpV2BigQueryOptions struct { + // IdentifyingFields: References to fields uniquely identifying rows + // within the table. + // Nested fields in the format, like `person.birthdate.year`, are + // allowed. + IdentifyingFields []*GooglePrivacyDlpV2FieldId `json:"identifyingFields,omitempty"` + + // TableReference: Complete BigQuery table reference. + TableReference *GooglePrivacyDlpV2BigQueryTable `json:"tableReference,omitempty"` + + // ForceSendFields is a list of field names (e.g. "IdentifyingFields") + // to unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "IdentifyingFields") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2BigQueryOptions) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2BigQueryOptions + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2BigQueryTable: Message defining the location of a +// BigQuery table. A table is uniquely +// identified by its project_id, dataset_id, and table_name. Within a +// query +// a table is often referenced with a string in the format +// of: +// `:.` +// or +// `..`. +type GooglePrivacyDlpV2BigQueryTable struct { + // DatasetId: Dataset ID of the table. + DatasetId string `json:"datasetId,omitempty"` + + // ProjectId: The Google Cloud Platform project ID of the project + // containing the table. + // If omitted, project ID is inferred from the API call. + ProjectId string `json:"projectId,omitempty"` + + // TableId: Name of the table. + TableId string `json:"tableId,omitempty"` + + // ForceSendFields is a list of field names (e.g. "DatasetId") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "DatasetId") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2BigQueryTable) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2BigQueryTable + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2BoundingBox: Bounding box encompassing detected +// text within an image. +type GooglePrivacyDlpV2BoundingBox struct { + // Height: Height of the bounding box in pixels. + Height int64 `json:"height,omitempty"` + + // Left: Left coordinate of the bounding box. (0,0) is upper left. + Left int64 `json:"left,omitempty"` + + // Top: Top coordinate of the bounding box. (0,0) is upper left. + Top int64 `json:"top,omitempty"` + + // Width: Width of the bounding box in pixels. + Width int64 `json:"width,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Height") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Height") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2BoundingBox) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2BoundingBox + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2Bucket: Bucket is represented as a range, along +// with replacement values. +type GooglePrivacyDlpV2Bucket struct { + // Max: Upper bound of the range, exclusive; type must match min. + Max *GooglePrivacyDlpV2Value `json:"max,omitempty"` + + // Min: Lower bound of the range, inclusive. Type should be the same as + // max if + // used. + Min *GooglePrivacyDlpV2Value `json:"min,omitempty"` + + // ReplacementValue: Replacement value for this bucket. If not + // provided + // the default behavior will be to hyphenate the min-max range. + ReplacementValue *GooglePrivacyDlpV2Value `json:"replacementValue,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Max") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Max") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2Bucket) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2Bucket + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2BucketingConfig: Generalization function that +// buckets values based on ranges. The ranges and +// replacement values are dynamically provided by the user for custom +// behavior, +// such as 1-30 -> LOW 31-65 -> MEDIUM 66-100 -> HIGH +// This can be used on +// data of type: number, long, string, timestamp. +// If the bound `Value` type differs from the type of data being +// transformed, we +// will first attempt converting the type of the data to be transformed +// to match +// the type of the bound before comparing. +type GooglePrivacyDlpV2BucketingConfig struct { + // Buckets: Set of buckets. Ranges must be non-overlapping. + Buckets []*GooglePrivacyDlpV2Bucket `json:"buckets,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Buckets") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Buckets") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2BucketingConfig) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2BucketingConfig + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2ByteContentItem: Container for bytes to inspect or +// redact. +type GooglePrivacyDlpV2ByteContentItem struct { + // Data: Content data to inspect or redact. + Data string `json:"data,omitempty"` + + // Type: The type of data stored in the bytes string. Default will be + // TEXT_UTF8. + // + // Possible values: + // "BYTES_TYPE_UNSPECIFIED" + // "IMAGE" + // "IMAGE_JPEG" + // "IMAGE_BMP" + // "IMAGE_PNG" + // "IMAGE_SVG" + // "TEXT_UTF8" + Type string `json:"type,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Data") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Data") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2ByteContentItem) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2ByteContentItem + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2CancelDlpJobRequest: The request message for +// canceling a DLP job. +type GooglePrivacyDlpV2CancelDlpJobRequest struct { +} + +// GooglePrivacyDlpV2CategoricalStatsConfig: Compute numerical stats +// over an individual column, including +// number of distinct values and value count distribution. +type GooglePrivacyDlpV2CategoricalStatsConfig struct { + // Field: Field to compute categorical stats on. All column types + // are + // supported except for arrays and structs. However, it may be + // more + // informative to use NumericalStats when the field type is + // supported, + // depending on the data. + Field *GooglePrivacyDlpV2FieldId `json:"field,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Field") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Field") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2CategoricalStatsConfig) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2CategoricalStatsConfig + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +type GooglePrivacyDlpV2CategoricalStatsHistogramBucket struct { + // BucketSize: Total number of values in this bucket. + BucketSize int64 `json:"bucketSize,omitempty,string"` + + // BucketValueCount: Total number of distinct values in this bucket. + BucketValueCount int64 `json:"bucketValueCount,omitempty,string"` + + // BucketValues: Sample of value frequencies in this bucket. The total + // number of + // values returned per bucket is capped at 20. + BucketValues []*GooglePrivacyDlpV2ValueFrequency `json:"bucketValues,omitempty"` + + // ValueFrequencyLowerBound: Lower bound on the value frequency of the + // values in this bucket. + ValueFrequencyLowerBound int64 `json:"valueFrequencyLowerBound,omitempty,string"` + + // ValueFrequencyUpperBound: Upper bound on the value frequency of the + // values in this bucket. + ValueFrequencyUpperBound int64 `json:"valueFrequencyUpperBound,omitempty,string"` + + // ForceSendFields is a list of field names (e.g. "BucketSize") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "BucketSize") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2CategoricalStatsHistogramBucket) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2CategoricalStatsHistogramBucket + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2CategoricalStatsResult: Result of the categorical +// stats computation. +type GooglePrivacyDlpV2CategoricalStatsResult struct { + // ValueFrequencyHistogramBuckets: Histogram of value frequencies in the + // column. + ValueFrequencyHistogramBuckets []*GooglePrivacyDlpV2CategoricalStatsHistogramBucket `json:"valueFrequencyHistogramBuckets,omitempty"` + + // ForceSendFields is a list of field names (e.g. + // "ValueFrequencyHistogramBuckets") to unconditionally include in API + // requests. By default, fields with empty values are omitted from API + // requests. However, any non-pointer, non-interface field appearing in + // ForceSendFields will be sent to the server regardless of whether the + // field is empty or not. This may be used to include empty fields in + // Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. + // "ValueFrequencyHistogramBuckets") to include in API requests with the + // JSON null value. By default, fields with empty values are omitted + // from API requests. However, any field with an empty value appearing + // in NullFields will be sent to the server as null. It is an error if a + // field in this list has a non-empty value. This may be used to include + // null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2CategoricalStatsResult) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2CategoricalStatsResult + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2CharacterMaskConfig: Partially mask a string by +// replacing a given number of characters with a +// fixed character. Masking can start from the beginning or end of the +// string. +// This can be used on data of any type (numbers, longs, and so on) and +// when +// de-identifying structured data we'll attempt to preserve the original +// data's +// type. (This allows you to take a long like 123 and modify it to a +// string like +// **3. +type GooglePrivacyDlpV2CharacterMaskConfig struct { + // CharactersToIgnore: When masking a string, items in this list will be + // skipped when replacing. + // For example, if your string is 555-555-5555 and you ask us to skip + // `-` and + // mask 5 chars with * we would produce ***-*55-5555. + CharactersToIgnore []*GooglePrivacyDlpV2CharsToIgnore `json:"charactersToIgnore,omitempty"` + + // MaskingCharacter: Character to mask the sensitive values—for + // example, "*" for an + // alphabetic string such as name, or "0" for a numeric string such as + // ZIP + // code or credit card number. String must have length 1. If not + // supplied, we + // will default to "*" for strings, 0 for digits. + MaskingCharacter string `json:"maskingCharacter,omitempty"` + + // NumberToMask: Number of characters to mask. If not set, all matching + // chars will be + // masked. Skipped characters do not count towards this tally. + NumberToMask int64 `json:"numberToMask,omitempty"` + + // ReverseOrder: Mask characters in reverse order. For example, if + // `masking_character` is + // '0', number_to_mask is 14, and `reverse_order` is false, + // then + // 1234-5678-9012-3456 -> 00000000000000-3456 + // If `masking_character` is '*', `number_to_mask` is 3, and + // `reverse_order` + // is true, then 12345 -> 12*** + ReverseOrder bool `json:"reverseOrder,omitempty"` + + // ForceSendFields is a list of field names (e.g. "CharactersToIgnore") + // to unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "CharactersToIgnore") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2CharacterMaskConfig) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2CharacterMaskConfig + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2CharsToIgnore: Characters to skip when doing +// deidentification of a value. These will be left +// alone and skipped. +type GooglePrivacyDlpV2CharsToIgnore struct { + CharactersToSkip string `json:"charactersToSkip,omitempty"` + + // Possible values: + // "COMMON_CHARS_TO_IGNORE_UNSPECIFIED" + // "NUMERIC" - 0-9 + // "ALPHA_UPPER_CASE" - A-Z + // "ALPHA_LOWER_CASE" - a-z + // "PUNCTUATION" - US Punctuation, one of + // !"#$%&'()*+,-./:;<=>?@[\]^_`{|}~ + // "WHITESPACE" - Whitespace character, one of [ \t\n\x0B\f\r] + CommonCharactersToIgnore string `json:"commonCharactersToIgnore,omitempty"` + + // ForceSendFields is a list of field names (e.g. "CharactersToSkip") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "CharactersToSkip") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2CharsToIgnore) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2CharsToIgnore + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2CloudStorageOptions: Options defining a file or a +// set of files (path ending with *) within +// a Google Cloud Storage bucket. +type GooglePrivacyDlpV2CloudStorageOptions struct { + // BytesLimitPerFile: Max number of bytes to scan from a file. If a + // scanned file's size is bigger + // than this value then the rest of the bytes are omitted. + BytesLimitPerFile int64 `json:"bytesLimitPerFile,omitempty,string"` + + FileSet *GooglePrivacyDlpV2FileSet `json:"fileSet,omitempty"` + + // FileTypes: List of file type groups to include in the scan. + // If empty, all files are scanned and available data format + // processors + // are applied. + // + // Possible values: + // "FILE_TYPE_UNSPECIFIED" - Includes all files. + // "BINARY_FILE" - Includes all file extensions not covered by other + // types. + // "TEXT_FILE" - Included file extensions: + // c, cc, cpp, cxx, c++, cs, css, dart, eml, go, h, hh, hpp, hxx, h++, + // hs, + // html, htm, shtml, shtm, xhtml, lhs, ini, java, js, json, ocaml, md, + // mkd, + // markdown, m, ml, mli, pl, pm, php, phtml, pht, py, pyw, rb, rbw, + // rs, rc, + // scala, sh, sql, tex, txt, asc, text, brf, vcard, vcs, wml, xml, + // xsl, xsd, + // yml, yaml. + FileTypes []string `json:"fileTypes,omitempty"` + + // ForceSendFields is a list of field names (e.g. "BytesLimitPerFile") + // to unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "BytesLimitPerFile") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2CloudStorageOptions) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2CloudStorageOptions + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2Color: Represents a color in the RGB color space. +type GooglePrivacyDlpV2Color struct { + // Blue: The amount of blue in the color as a value in the interval [0, + // 1]. + Blue float64 `json:"blue,omitempty"` + + // Green: The amount of green in the color as a value in the interval + // [0, 1]. + Green float64 `json:"green,omitempty"` + + // Red: The amount of red in the color as a value in the interval [0, + // 1]. + Red float64 `json:"red,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Blue") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Blue") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2Color) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2Color + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +func (s *GooglePrivacyDlpV2Color) UnmarshalJSON(data []byte) error { + type NoMethod GooglePrivacyDlpV2Color + var s1 struct { + Blue gensupport.JSONFloat64 `json:"blue"` + Green gensupport.JSONFloat64 `json:"green"` + Red gensupport.JSONFloat64 `json:"red"` + *NoMethod + } + s1.NoMethod = (*NoMethod)(s) + if err := json.Unmarshal(data, &s1); err != nil { + return err + } + s.Blue = float64(s1.Blue) + s.Green = float64(s1.Green) + s.Red = float64(s1.Red) + return nil +} + +// GooglePrivacyDlpV2Condition: The field type of `value` and `field` do +// not need to match to be +// considered equal, but not all comparisons are possible. +// +// A `value` of type: +// +// - `string` can be compared against all other types +// - `boolean` can only be compared against other booleans +// - `integer` can be compared against doubles or a string if the string +// value +// can be parsed as an integer. +// - `double` can be compared against integers or a string if the string +// can +// be parsed as a double. +// - `Timestamp` can be compared against strings in RFC 3339 date +// string +// format. +// - `TimeOfDay` can be compared against timestamps and strings in the +// format +// of 'HH:mm:ss'. +// +// If we fail to compare do to type mismatch, a warning will be given +// and +// the condition will evaluate to false. +type GooglePrivacyDlpV2Condition struct { + // Field: Field within the record this condition is evaluated against. + // [required] + Field *GooglePrivacyDlpV2FieldId `json:"field,omitempty"` + + // Operator: Operator used to compare the field or infoType to the + // value. [required] + // + // Possible values: + // "RELATIONAL_OPERATOR_UNSPECIFIED" + // "EQUAL_TO" - Equal. + // "NOT_EQUAL_TO" - Not equal to. + // "GREATER_THAN" - Greater than. + // "LESS_THAN" - Less than. + // "GREATER_THAN_OR_EQUALS" - Greater than or equals. + // "LESS_THAN_OR_EQUALS" - Less than or equals. + // "EXISTS" - Exists + Operator string `json:"operator,omitempty"` + + // Value: Value to compare against. [Required, except for `EXISTS` + // tests.] + Value *GooglePrivacyDlpV2Value `json:"value,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Field") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Field") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2Condition) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2Condition + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2Conditions: A collection of conditions. +type GooglePrivacyDlpV2Conditions struct { + Conditions []*GooglePrivacyDlpV2Condition `json:"conditions,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Conditions") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Conditions") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2Conditions) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2Conditions + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2ContentItem: Container structure for the content to +// inspect. +type GooglePrivacyDlpV2ContentItem struct { + // ByteItem: Content data to inspect or redact. Replaces `type` and + // `data`. + ByteItem *GooglePrivacyDlpV2ByteContentItem `json:"byteItem,omitempty"` + + // Table: Structured content for inspection. + Table *GooglePrivacyDlpV2Table `json:"table,omitempty"` + + // Value: String data to inspect or redact. + Value string `json:"value,omitempty"` + + // ForceSendFields is a list of field names (e.g. "ByteItem") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "ByteItem") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2ContentItem) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2ContentItem + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2ContentLocation: Findings container location data. +type GooglePrivacyDlpV2ContentLocation struct { + // ContainerName: Name of the container where the finding is + // located. + // The top level name is the source file name or table name. Nested + // names + // could be absent if the embedded object has no string identifier + // (for an example an image contained within a document). + ContainerName string `json:"containerName,omitempty"` + + // ContainerTimestamp: Findings container modification timestamp, if + // applicable. + // For Google Cloud Storage contains last file modification + // timestamp. + // For BigQuery table contains last_modified_time property. + // For Datastore - not populated. + ContainerTimestamp string `json:"containerTimestamp,omitempty"` + + // ContainerVersion: Findings container version, if + // available + // ("generation" for Google Cloud Storage). + ContainerVersion string `json:"containerVersion,omitempty"` + + // DocumentLocation: Location data for document files. + DocumentLocation *GooglePrivacyDlpV2DocumentLocation `json:"documentLocation,omitempty"` + + // ImageLocation: Location within an image's pixels. + ImageLocation *GooglePrivacyDlpV2ImageLocation `json:"imageLocation,omitempty"` + + // RecordLocation: Location within a row or record of a database table. + RecordLocation *GooglePrivacyDlpV2RecordLocation `json:"recordLocation,omitempty"` + + // ForceSendFields is a list of field names (e.g. "ContainerName") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "ContainerName") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2ContentLocation) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2ContentLocation + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2CreateDeidentifyTemplateRequest: Request message +// for CreateDeidentifyTemplate. +type GooglePrivacyDlpV2CreateDeidentifyTemplateRequest struct { + // DeidentifyTemplate: The DeidentifyTemplate to create. + DeidentifyTemplate *GooglePrivacyDlpV2DeidentifyTemplate `json:"deidentifyTemplate,omitempty"` + + // TemplateId: The template id can contain uppercase and lowercase + // letters, + // numbers, and hyphens; that is, it must match the regular + // expression: `[a-zA-Z\\d-]+`. The maximum length is 100 + // characters. Can be empty to allow the system to generate one. + TemplateId string `json:"templateId,omitempty"` + + // ForceSendFields is a list of field names (e.g. "DeidentifyTemplate") + // to unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "DeidentifyTemplate") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2CreateDeidentifyTemplateRequest) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2CreateDeidentifyTemplateRequest + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2CreateDlpJobRequest: Request message for +// CreateDlpJobRequest. Used to initiate long running +// jobs such as calculating risk metrics or inspecting Google +// Cloud +// Storage. +type GooglePrivacyDlpV2CreateDlpJobRequest struct { + InspectJob *GooglePrivacyDlpV2InspectJobConfig `json:"inspectJob,omitempty"` + + // JobId: The job id can contain uppercase and lowercase + // letters, + // numbers, and hyphens; that is, it must match the regular + // expression: `[a-zA-Z\\d-]+`. The maximum length is 100 + // characters. Can be empty to allow the system to generate one. + JobId string `json:"jobId,omitempty"` + + RiskJob *GooglePrivacyDlpV2RiskAnalysisJobConfig `json:"riskJob,omitempty"` + + // ForceSendFields is a list of field names (e.g. "InspectJob") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "InspectJob") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2CreateDlpJobRequest) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2CreateDlpJobRequest + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2CreateInspectTemplateRequest: Request message for +// CreateInspectTemplate. +type GooglePrivacyDlpV2CreateInspectTemplateRequest struct { + // InspectTemplate: The InspectTemplate to create. + InspectTemplate *GooglePrivacyDlpV2InspectTemplate `json:"inspectTemplate,omitempty"` + + // TemplateId: The template id can contain uppercase and lowercase + // letters, + // numbers, and hyphens; that is, it must match the regular + // expression: `[a-zA-Z\\d-]+`. The maximum length is 100 + // characters. Can be empty to allow the system to generate one. + TemplateId string `json:"templateId,omitempty"` + + // ForceSendFields is a list of field names (e.g. "InspectTemplate") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "InspectTemplate") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2CreateInspectTemplateRequest) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2CreateInspectTemplateRequest + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2CreateJobTriggerRequest: Request message for +// CreateJobTrigger. +type GooglePrivacyDlpV2CreateJobTriggerRequest struct { + // JobTrigger: The JobTrigger to create. + JobTrigger *GooglePrivacyDlpV2JobTrigger `json:"jobTrigger,omitempty"` + + // TriggerId: The trigger id can contain uppercase and lowercase + // letters, + // numbers, and hyphens; that is, it must match the regular + // expression: `[a-zA-Z\\d-]+`. The maximum length is 100 + // characters. Can be empty to allow the system to generate one. + TriggerId string `json:"triggerId,omitempty"` + + // ForceSendFields is a list of field names (e.g. "JobTrigger") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "JobTrigger") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2CreateJobTriggerRequest) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2CreateJobTriggerRequest + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2CryptoHashConfig: Pseudonymization method that +// generates surrogates via cryptographic hashing. +// Uses SHA-256. +// The key size must be either 32 or 64 bytes. +// Outputs a 32 byte digest as an uppercase hex string +// (for example, 41D1567F7F99F1DC2A5FAB886DEE5BEE). +// Currently, only string and integer values can be hashed. +type GooglePrivacyDlpV2CryptoHashConfig struct { + // CryptoKey: The key used by the hash function. + CryptoKey *GooglePrivacyDlpV2CryptoKey `json:"cryptoKey,omitempty"` + + // ForceSendFields is a list of field names (e.g. "CryptoKey") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "CryptoKey") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2CryptoHashConfig) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2CryptoHashConfig + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2CryptoKey: This is a data encryption key (DEK) (as +// opposed to +// a key encryption key (KEK) stored by KMS). +// When using KMS to wrap/unwrap DEKs, be sure to set an appropriate +// IAM policy on the KMS CryptoKey (KEK) to ensure an attacker +// cannot +// unwrap the data crypto key. +type GooglePrivacyDlpV2CryptoKey struct { + KmsWrapped *GooglePrivacyDlpV2KmsWrappedCryptoKey `json:"kmsWrapped,omitempty"` + + Transient *GooglePrivacyDlpV2TransientCryptoKey `json:"transient,omitempty"` + + Unwrapped *GooglePrivacyDlpV2UnwrappedCryptoKey `json:"unwrapped,omitempty"` + + // ForceSendFields is a list of field names (e.g. "KmsWrapped") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "KmsWrapped") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2CryptoKey) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2CryptoKey + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2CryptoReplaceFfxFpeConfig: Replaces an identifier +// with a surrogate using FPE with the FFX +// mode of operation; however when used in the `ReidentifyContent` API +// method, +// it serves the opposite function by reversing the surrogate back +// into +// the original identifier. +// The identifier must be encoded as ASCII. +// For a given crypto key and context, the same identifier will +// be +// replaced with the same surrogate. +// Identifiers must be at least two characters long. +// In the case that the identifier is the empty string, it will be +// skipped. +// See [Pseudonymization](/dlp/docs/pseudonymization) for example usage. +type GooglePrivacyDlpV2CryptoReplaceFfxFpeConfig struct { + // Possible values: + // "FFX_COMMON_NATIVE_ALPHABET_UNSPECIFIED" + // "NUMERIC" - [0-9] (radix of 10) + // "HEXADECIMAL" - [0-9A-F] (radix of 16) + // "UPPER_CASE_ALPHA_NUMERIC" - [0-9A-Z] (radix of 36) + // "ALPHA_NUMERIC" - [0-9A-Za-z] (radix of 62) + CommonAlphabet string `json:"commonAlphabet,omitempty"` + + // Context: The 'tweak', a context may be used for higher security since + // the same + // identifier in two different contexts won't be given the same + // surrogate. If + // the context is not set, a default tweak will be used. + // + // If the context is set but: + // + // 1. there is no record present when transforming a given value or + // 1. the field is not present when transforming a given value, + // + // a default tweak will be used. + // + // Note that case (1) is expected when an `InfoTypeTransformation` + // is + // applied to both structured and non-structured + // `ContentItem`s. + // Currently, the referenced field may be of value type integer or + // string. + // + // The tweak is constructed as a sequence of bytes in big endian byte + // order + // such that: + // + // - a 64 bit integer is encoded followed by a single byte of value 1 + // - a string is encoded in UTF-8 format followed by a single byte of + // value + // å 2 + Context *GooglePrivacyDlpV2FieldId `json:"context,omitempty"` + + // CryptoKey: The key used by the encryption algorithm. [required] + CryptoKey *GooglePrivacyDlpV2CryptoKey `json:"cryptoKey,omitempty"` + + // CustomAlphabet: This is supported by mapping these to the + // alphanumeric characters + // that the FFX mode natively supports. This happens + // before/after + // encryption/decryption. + // Each character listed must appear only once. + // Number of characters must be in the range [2, 62]. + // This must be encoded as ASCII. + // The order of characters does not matter. + CustomAlphabet string `json:"customAlphabet,omitempty"` + + // Radix: The native way to select the alphabet. Must be in the range + // [2, 62]. + Radix int64 `json:"radix,omitempty"` + + // SurrogateInfoType: The custom infoType to annotate the surrogate + // with. + // This annotation will be applied to the surrogate by prefixing it + // with + // the name of the custom infoType followed by the number of + // characters comprising the surrogate. The following scheme defines + // the + // format: info_type_name(surrogate_character_count):surrogate + // + // For example, if the name of custom infoType is 'MY_TOKEN_INFO_TYPE' + // and + // the surrogate is 'abc', the full replacement value + // will be: 'MY_TOKEN_INFO_TYPE(3):abc' + // + // This annotation identifies the surrogate when inspecting content + // using the + // custom + // infoType + // [`SurrogateType`](/dlp/docs/reference/rest/v2/InspectConfig#s + // urrogatetype). + // This facilitates reversal of the surrogate when it occurs in free + // text. + // + // In order for inspection to work properly, the name of this infoType + // must + // not occur naturally anywhere in your data; otherwise, inspection + // may + // find a surrogate that does not correspond to an actual + // identifier. + // Therefore, choose your custom infoType name carefully after + // considering + // what your data looks like. One way to select a name that has a high + // chance + // of yielding reliable detection is to include one or more unicode + // characters + // that are highly improbable to exist in your data. + // For example, assuming your data is entered from a regular ASCII + // keyboard, + // the symbol with the hex code point 29DD might be used like + // so: + // ⧝MY_TOKEN_TYPE + SurrogateInfoType *GooglePrivacyDlpV2InfoType `json:"surrogateInfoType,omitempty"` + + // ForceSendFields is a list of field names (e.g. "CommonAlphabet") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "CommonAlphabet") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2CryptoReplaceFfxFpeConfig) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2CryptoReplaceFfxFpeConfig + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2CustomInfoType: Custom information type provided by +// the user. Used to find domain-specific +// sensitive information configurable to the data in question. +type GooglePrivacyDlpV2CustomInfoType struct { + // DetectionRules: Set of detection rules to apply to all findings of + // this custom info type. + // Rules are applied in order that they are specified. Not supported for + // the + // `surrogate_type` custom info type. + DetectionRules []*GooglePrivacyDlpV2DetectionRule `json:"detectionRules,omitempty"` + + // Dictionary: Dictionary-based custom info type. + Dictionary *GooglePrivacyDlpV2Dictionary `json:"dictionary,omitempty"` + + // InfoType: Info type configuration. All custom info types must have + // configurations + // that do not conflict with built-in info types or other custom info + // types. + InfoType *GooglePrivacyDlpV2InfoType `json:"infoType,omitempty"` + + // Likelihood: Likelihood to return for this custom info type. This base + // value can be + // altered by a detection rule if the finding meets the criteria + // specified by + // the rule. Defaults to `VERY_LIKELY` if not specified. + // + // Possible values: + // "LIKELIHOOD_UNSPECIFIED" - Default value; information with all + // likelihoods is included. + // "VERY_UNLIKELY" - Few matching elements. + // "UNLIKELY" + // "POSSIBLE" - Some matching elements. + // "LIKELY" + // "VERY_LIKELY" - Many matching elements. + Likelihood string `json:"likelihood,omitempty"` + + // Regex: Regex-based custom info type. + Regex *GooglePrivacyDlpV2Regex `json:"regex,omitempty"` + + // SurrogateType: Surrogate info type. + SurrogateType *GooglePrivacyDlpV2SurrogateType `json:"surrogateType,omitempty"` + + // ForceSendFields is a list of field names (e.g. "DetectionRules") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "DetectionRules") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2CustomInfoType) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2CustomInfoType + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2DatastoreKey: Record key for a finding in Cloud +// Datastore. +type GooglePrivacyDlpV2DatastoreKey struct { + // EntityKey: Datastore entity key. + EntityKey *GooglePrivacyDlpV2Key `json:"entityKey,omitempty"` + + // ForceSendFields is a list of field names (e.g. "EntityKey") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "EntityKey") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2DatastoreKey) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2DatastoreKey + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2DatastoreOptions: Options defining a data set +// within Google Cloud Datastore. +type GooglePrivacyDlpV2DatastoreOptions struct { + // Kind: The kind to process. + Kind *GooglePrivacyDlpV2KindExpression `json:"kind,omitempty"` + + // PartitionId: A partition ID identifies a grouping of entities. The + // grouping is always + // by project and namespace, however the namespace ID may be empty. + PartitionId *GooglePrivacyDlpV2PartitionId `json:"partitionId,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Kind") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Kind") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2DatastoreOptions) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2DatastoreOptions + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2DateShiftConfig: Shifts dates by random number of +// days, with option to be consistent for the +// same context. +type GooglePrivacyDlpV2DateShiftConfig struct { + // Context: Points to the field that contains the context, for example, + // an entity id. + // If set, must also set method. If set, shift will be consistent for + // the + // given context. + Context *GooglePrivacyDlpV2FieldId `json:"context,omitempty"` + + // CryptoKey: Causes the shift to be computed based on this key and the + // context. This + // results in the same shift for the same context and crypto_key. + CryptoKey *GooglePrivacyDlpV2CryptoKey `json:"cryptoKey,omitempty"` + + // LowerBoundDays: For example, -5 means shift date to at most 5 days + // back in the past. + // [Required] + LowerBoundDays int64 `json:"lowerBoundDays,omitempty"` + + // UpperBoundDays: Range of shift in days. Actual shift will be selected + // at random within this + // range (inclusive ends). Negative means shift to earlier in time. Must + // not + // be more than 365250 days (1000 years) each direction. + // + // For example, 3 means shift date to at most 3 days into the + // future. + // [Required] + UpperBoundDays int64 `json:"upperBoundDays,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Context") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Context") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2DateShiftConfig) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2DateShiftConfig + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2DateTime: Message for a date time object. +type GooglePrivacyDlpV2DateTime struct { + // Date: One or more of the following must be set. All fields are + // optional, but + // when set must be valid date or time values. + Date *GoogleTypeDate `json:"date,omitempty"` + + // Possible values: + // "DAY_OF_WEEK_UNSPECIFIED" - The unspecified day-of-week. + // "MONDAY" - The day-of-week of Monday. + // "TUESDAY" - The day-of-week of Tuesday. + // "WEDNESDAY" - The day-of-week of Wednesday. + // "THURSDAY" - The day-of-week of Thursday. + // "FRIDAY" - The day-of-week of Friday. + // "SATURDAY" - The day-of-week of Saturday. + // "SUNDAY" - The day-of-week of Sunday. + DayOfWeek string `json:"dayOfWeek,omitempty"` + + Time *GoogleTypeTimeOfDay `json:"time,omitempty"` + + TimeZone *GooglePrivacyDlpV2TimeZone `json:"timeZone,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Date") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Date") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2DateTime) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2DateTime + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2DeidentifyConfig: The configuration that controls +// how the data will change. +type GooglePrivacyDlpV2DeidentifyConfig struct { + // InfoTypeTransformations: Treat the dataset as free-form text and + // apply the same free text + // transformation everywhere. + InfoTypeTransformations *GooglePrivacyDlpV2InfoTypeTransformations `json:"infoTypeTransformations,omitempty"` + + // RecordTransformations: Treat the dataset as structured. + // Transformations can be applied to + // specific locations within structured datasets, such as transforming + // a column within a table. + RecordTransformations *GooglePrivacyDlpV2RecordTransformations `json:"recordTransformations,omitempty"` + + // ForceSendFields is a list of field names (e.g. + // "InfoTypeTransformations") to unconditionally include in API + // requests. By default, fields with empty values are omitted from API + // requests. However, any non-pointer, non-interface field appearing in + // ForceSendFields will be sent to the server regardless of whether the + // field is empty or not. This may be used to include empty fields in + // Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "InfoTypeTransformations") + // to include in API requests with the JSON null value. By default, + // fields with empty values are omitted from API requests. However, any + // field with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2DeidentifyConfig) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2DeidentifyConfig + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2DeidentifyContentRequest: Request to de-identify a +// list of items. +type GooglePrivacyDlpV2DeidentifyContentRequest struct { + // DeidentifyConfig: Configuration for the de-identification of the + // content item. + // Items specified here will override the template referenced by + // the + // deidentify_template_name argument. + DeidentifyConfig *GooglePrivacyDlpV2DeidentifyConfig `json:"deidentifyConfig,omitempty"` + + // DeidentifyTemplateName: Optional template to use. Any configuration + // directly specified in + // deidentify_config will override those set in the template. Singular + // fields + // that are set in this request will replace their corresponding fields + // in the + // template. Repeated fields are appended. Singular sub-messages and + // groups + // are recursively merged. + DeidentifyTemplateName string `json:"deidentifyTemplateName,omitempty"` + + // InspectConfig: Configuration for the inspector. + // Items specified here will override the template referenced by + // the + // inspect_template_name argument. + InspectConfig *GooglePrivacyDlpV2InspectConfig `json:"inspectConfig,omitempty"` + + // InspectTemplateName: Optional template to use. Any configuration + // directly specified in + // inspect_config will override those set in the template. Singular + // fields + // that are set in this request will replace their corresponding fields + // in the + // template. Repeated fields are appended. Singular sub-messages and + // groups + // are recursively merged. + InspectTemplateName string `json:"inspectTemplateName,omitempty"` + + // Item: The item to de-identify. Will be treated as text. + Item *GooglePrivacyDlpV2ContentItem `json:"item,omitempty"` + + // ForceSendFields is a list of field names (e.g. "DeidentifyConfig") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "DeidentifyConfig") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2DeidentifyContentRequest) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2DeidentifyContentRequest + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2DeidentifyContentResponse: Results of +// de-identifying a ContentItem. +type GooglePrivacyDlpV2DeidentifyContentResponse struct { + // Item: The de-identified item. + Item *GooglePrivacyDlpV2ContentItem `json:"item,omitempty"` + + // Overview: An overview of the changes that were made on the `item`. + Overview *GooglePrivacyDlpV2TransformationOverview `json:"overview,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "Item") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Item") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2DeidentifyContentResponse) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2DeidentifyContentResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2DeidentifyTemplate: The DeidentifyTemplates +// contains instructions on how to deidentify content. +type GooglePrivacyDlpV2DeidentifyTemplate struct { + // CreateTime: The creation timestamp of a inspectTemplate, output only + // field. + CreateTime string `json:"createTime,omitempty"` + + // DeidentifyConfig: ///////////// // The core content of the template + // // /////////////// + DeidentifyConfig *GooglePrivacyDlpV2DeidentifyConfig `json:"deidentifyConfig,omitempty"` + + // Description: Short description (max 256 chars). + Description string `json:"description,omitempty"` + + // DisplayName: Display name (max 256 chars). + DisplayName string `json:"displayName,omitempty"` + + // Name: The template name. Output only. + // + // The template will have one of the following + // formats: + // `projects/PROJECT_ID/deidentifyTemplates/TEMPLATE_ID` + // OR + // `organizations/ORGANIZATION_ID/deidentifyTemplates/TEMPLATE_ID` + Name string `json:"name,omitempty"` + + // UpdateTime: The last update timestamp of a inspectTemplate, output + // only field. + UpdateTime string `json:"updateTime,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "CreateTime") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "CreateTime") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2DeidentifyTemplate) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2DeidentifyTemplate + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2DetectionRule: Rule for modifying a custom info +// type to alter behavior under certain +// circumstances, depending on the specific details of the rule. Not +// supported +// for the `surrogate_type` custom info type. +type GooglePrivacyDlpV2DetectionRule struct { + // HotwordRule: Hotword-based detection rule. + HotwordRule *GooglePrivacyDlpV2HotwordRule `json:"hotwordRule,omitempty"` + + // ForceSendFields is a list of field names (e.g. "HotwordRule") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "HotwordRule") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2DetectionRule) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2DetectionRule + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2Dictionary: Custom information type based on a +// dictionary of words or phrases. This can +// be used to match sensitive information specific to the data, such as +// a list +// of employee IDs or job titles. +// +// Dictionary words are case-insensitive and all characters other than +// letters +// and digits in the unicode [Basic +// Multilingual +// Plane](https://en.wikipedia.org/wiki/Plane_%28Unicode%29# +// Basic_Multilingual_Plane) +// will be replaced with whitespace when scanning for matches, so +// the +// dictionary phrase "Sam Johnson" will match all three phrases "sam +// johnson", +// "Sam, Johnson", and "Sam (Johnson)". Additionally, the +// characters +// surrounding any match must be of a different type than the +// adjacent +// characters within the word, so letters must be next to non-letters +// and +// digits next to non-digits. For example, the dictionary word "jen" +// will +// match the first three letters of the text "jen123" but will return +// no +// matches for "jennifer". +// +// Dictionary words containing a large number of characters that are +// not +// letters or digits may result in unexpected findings because such +// characters +// are treated as whitespace. +type GooglePrivacyDlpV2Dictionary struct { + // WordList: List of words or phrases to search for. + WordList *GooglePrivacyDlpV2WordList `json:"wordList,omitempty"` + + // ForceSendFields is a list of field names (e.g. "WordList") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "WordList") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2Dictionary) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2Dictionary + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2DlpJob: Combines all of the information about a DLP +// job. +type GooglePrivacyDlpV2DlpJob struct { + // CreateTime: Time when the job was created. + CreateTime string `json:"createTime,omitempty"` + + // EndTime: Time when the job finished. + EndTime string `json:"endTime,omitempty"` + + // Errors: A stream of errors encountered running the job. + Errors []*GooglePrivacyDlpV2Error `json:"errors,omitempty"` + + // InspectDetails: Results from inspecting a data source. + InspectDetails *GooglePrivacyDlpV2InspectDataSourceDetails `json:"inspectDetails,omitempty"` + + // JobTriggerName: If created by a job trigger, the resource name of the + // trigger that + // instantiated the job. + JobTriggerName string `json:"jobTriggerName,omitempty"` + + // Name: The server-assigned name. + Name string `json:"name,omitempty"` + + // RiskDetails: Results from analyzing risk of a data source. + RiskDetails *GooglePrivacyDlpV2AnalyzeDataSourceRiskDetails `json:"riskDetails,omitempty"` + + // StartTime: Time when the job started. + StartTime string `json:"startTime,omitempty"` + + // State: State of a job. + // + // Possible values: + // "JOB_STATE_UNSPECIFIED" + // "PENDING" - The job has not yet started. + // "RUNNING" - The job is currently running. + // "DONE" - The job is no longer running. + // "CANCELED" - The job was canceled before it could complete. + // "FAILED" - The job had an error and did not complete. + State string `json:"state,omitempty"` + + // Type: The type of job. + // + // Possible values: + // "DLP_JOB_TYPE_UNSPECIFIED" + // "INSPECT_JOB" - The job inspected Google Cloud for sensitive data. + // "RISK_ANALYSIS_JOB" - The job executed a Risk Analysis computation. + Type string `json:"type,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "CreateTime") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "CreateTime") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2DlpJob) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2DlpJob + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2DocumentLocation: Location of a finding within a +// document. +type GooglePrivacyDlpV2DocumentLocation struct { + // FileOffset: Offset of the line, from the beginning of the file, where + // the finding + // is located. + FileOffset int64 `json:"fileOffset,omitempty,string"` + + // ForceSendFields is a list of field names (e.g. "FileOffset") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "FileOffset") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2DocumentLocation) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2DocumentLocation + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2Error: Details information about an error +// encountered during job execution or +// the results of an unsuccessful activation of the JobTrigger. +// Output only field. +type GooglePrivacyDlpV2Error struct { + Details *GoogleRpcStatus `json:"details,omitempty"` + + // Timestamps: The times the error occurred. + Timestamps []string `json:"timestamps,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Details") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Details") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2Error) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2Error + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2Expressions: An expression, consisting or an +// operator and conditions. +type GooglePrivacyDlpV2Expressions struct { + Conditions *GooglePrivacyDlpV2Conditions `json:"conditions,omitempty"` + + // LogicalOperator: The operator to apply to the result of conditions. + // Default and currently + // only supported value is `AND`. + // + // Possible values: + // "LOGICAL_OPERATOR_UNSPECIFIED" + // "AND" + LogicalOperator string `json:"logicalOperator,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Conditions") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Conditions") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2Expressions) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2Expressions + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2FieldId: General identifier of a data field in a +// storage service. +type GooglePrivacyDlpV2FieldId struct { + // Name: Name describing the field. + Name string `json:"name,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Name") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Name") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2FieldId) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2FieldId + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2FieldTransformation: The transformation to apply to +// the field. +type GooglePrivacyDlpV2FieldTransformation struct { + // Condition: Only apply the transformation if the condition evaluates + // to true for the + // given `RecordCondition`. The conditions are allowed to reference + // fields + // that are not used in the actual transformation. [optional] + // + // Example Use Cases: + // + // - Apply a different bucket transformation to an age column if the zip + // code + // column for the same record is within a specific range. + // - Redact a field if the date of birth field is greater than 85. + Condition *GooglePrivacyDlpV2RecordCondition `json:"condition,omitempty"` + + // Fields: Input field(s) to apply the transformation to. [required] + Fields []*GooglePrivacyDlpV2FieldId `json:"fields,omitempty"` + + // InfoTypeTransformations: Treat the contents of the field as free + // text, and selectively + // transform content that matches an `InfoType`. + InfoTypeTransformations *GooglePrivacyDlpV2InfoTypeTransformations `json:"infoTypeTransformations,omitempty"` + + // PrimitiveTransformation: Apply the transformation to the entire + // field. + PrimitiveTransformation *GooglePrivacyDlpV2PrimitiveTransformation `json:"primitiveTransformation,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Condition") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Condition") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2FieldTransformation) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2FieldTransformation + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2FileSet: Set of files to scan. +type GooglePrivacyDlpV2FileSet struct { + // Url: The url, in the format `gs:///`. Trailing wildcard + // in the + // path is allowed. + Url string `json:"url,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Url") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Url") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2FileSet) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2FileSet + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2Finding: Represents a piece of potentially +// sensitive content. +type GooglePrivacyDlpV2Finding struct { + // CreateTime: Timestamp when finding was detected. + CreateTime string `json:"createTime,omitempty"` + + // InfoType: The type of content that might have been found. + // Provided if requested by the `InspectConfig`. + InfoType *GooglePrivacyDlpV2InfoType `json:"infoType,omitempty"` + + // Likelihood: Estimate of how likely it is that the `info_type` is + // correct. + // + // Possible values: + // "LIKELIHOOD_UNSPECIFIED" - Default value; information with all + // likelihoods is included. + // "VERY_UNLIKELY" - Few matching elements. + // "UNLIKELY" + // "POSSIBLE" - Some matching elements. + // "LIKELY" + // "VERY_LIKELY" - Many matching elements. + Likelihood string `json:"likelihood,omitempty"` + + // Location: Where the content was found. + Location *GooglePrivacyDlpV2Location `json:"location,omitempty"` + + // Quote: The content that was found. Even if the content is not + // textual, it + // may be converted to a textual representation here. + // Provided if requested by the `InspectConfig` and the finding is + // less than or equal to 4096 bytes long. If the finding exceeds 4096 + // bytes + // in length, the quote may be omitted. + Quote string `json:"quote,omitempty"` + + // QuoteInfo: Contains data parsed from quotes. Only populated if + // include_quote was set + // to true and a supported infoType was requested. Currently + // supported + // infoTypes: DATE, DATE_OF_BIRTH and TIME. + QuoteInfo *GooglePrivacyDlpV2QuoteInfo `json:"quoteInfo,omitempty"` + + // ForceSendFields is a list of field names (e.g. "CreateTime") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "CreateTime") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2Finding) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2Finding + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +type GooglePrivacyDlpV2FindingLimits struct { + // MaxFindingsPerInfoType: Configuration of findings limit given for + // specified infoTypes. + MaxFindingsPerInfoType []*GooglePrivacyDlpV2InfoTypeLimit `json:"maxFindingsPerInfoType,omitempty"` + + // MaxFindingsPerItem: Max number of findings that will be returned for + // each item scanned. + // When set within `InspectDataSourceRequest`, + // the maximum returned is 1000 regardless if this is set higher. + // When set within `InspectContentRequest`, this field is ignored. + MaxFindingsPerItem int64 `json:"maxFindingsPerItem,omitempty"` + + // MaxFindingsPerRequest: Max number of findings that will be returned + // per request/job. + // When set within `InspectContentRequest`, the maximum returned is + // 1000 + // regardless if this is set higher. + MaxFindingsPerRequest int64 `json:"maxFindingsPerRequest,omitempty"` + + // ForceSendFields is a list of field names (e.g. + // "MaxFindingsPerInfoType") to unconditionally include in API requests. + // By default, fields with empty values are omitted from API requests. + // However, any non-pointer, non-interface field appearing in + // ForceSendFields will be sent to the server regardless of whether the + // field is empty or not. This may be used to include empty fields in + // Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "MaxFindingsPerInfoType") + // to include in API requests with the JSON null value. By default, + // fields with empty values are omitted from API requests. However, any + // field with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2FindingLimits) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2FindingLimits + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2FixedSizeBucketingConfig: Buckets values based on +// fixed size ranges. The +// Bucketing transformation can provide all of this functionality, +// but requires more configuration. This message is provided as a +// convenience to +// the user for simple bucketing strategies. +// +// The transformed value will be a hyphenated string +// of +// -, i.e if lower_bound = 10 and upper_bound +// = 20 +// all values that are within this bucket will be replaced with +// "10-20". +// +// This can be used on data of type: double, long. +// +// If the bound Value type differs from the type of data +// being transformed, we will first attempt converting the type of the +// data to +// be transformed to match the type of the bound before comparing. +type GooglePrivacyDlpV2FixedSizeBucketingConfig struct { + // BucketSize: Size of each bucket (except for minimum and maximum + // buckets). So if + // `lower_bound` = 10, `upper_bound` = 89, and `bucket_size` = 10, then + // the + // following buckets would be used: -10, 10-20, 20-30, 30-40, 40-50, + // 50-60, + // 60-70, 70-80, 80-89, 89+. Precision up to 2 decimals works. + // [Required]. + BucketSize float64 `json:"bucketSize,omitempty"` + + // LowerBound: Lower bound value of buckets. All values less than + // `lower_bound` are + // grouped together into a single bucket; for example if `lower_bound` = + // 10, + // then all values less than 10 are replaced with the value “-10”. + // [Required]. + LowerBound *GooglePrivacyDlpV2Value `json:"lowerBound,omitempty"` + + // UpperBound: Upper bound value of buckets. All values greater than + // upper_bound are + // grouped together into a single bucket; for example if `upper_bound` = + // 89, + // then all values greater than 89 are replaced with the value + // “89+”. + // [Required]. + UpperBound *GooglePrivacyDlpV2Value `json:"upperBound,omitempty"` + + // ForceSendFields is a list of field names (e.g. "BucketSize") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "BucketSize") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2FixedSizeBucketingConfig) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2FixedSizeBucketingConfig + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +func (s *GooglePrivacyDlpV2FixedSizeBucketingConfig) UnmarshalJSON(data []byte) error { + type NoMethod GooglePrivacyDlpV2FixedSizeBucketingConfig + var s1 struct { + BucketSize gensupport.JSONFloat64 `json:"bucketSize"` + *NoMethod + } + s1.NoMethod = (*NoMethod)(s) + if err := json.Unmarshal(data, &s1); err != nil { + return err + } + s.BucketSize = float64(s1.BucketSize) + return nil +} + +// GooglePrivacyDlpV2HotwordRule: Detection rule that adjusts the +// likelihood of findings within a certain +// proximity of hotwords. +type GooglePrivacyDlpV2HotwordRule struct { + // HotwordRegex: Regex pattern defining what qualifies as a hotword. + HotwordRegex *GooglePrivacyDlpV2Regex `json:"hotwordRegex,omitempty"` + + // LikelihoodAdjustment: Likelihood adjustment to apply to all matching + // findings. + LikelihoodAdjustment *GooglePrivacyDlpV2LikelihoodAdjustment `json:"likelihoodAdjustment,omitempty"` + + // Proximity: Proximity of the finding within which the entire hotword + // must reside. + // The total length of the window cannot exceed 1000 characters. Note + // that + // the finding itself will be included in the window, so that hotwords + // may + // be used to match substrings of the finding itself. For example, + // the + // certainty of a phone number regex "\(\d{3}\) \d{3}-\d{4}" could + // be + // adjusted upwards if the area code is known to be the local area code + // of + // a company office using the hotword regex "\(xxx\)", where "xxx" + // is the area code in question. + Proximity *GooglePrivacyDlpV2Proximity `json:"proximity,omitempty"` + + // ForceSendFields is a list of field names (e.g. "HotwordRegex") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "HotwordRegex") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2HotwordRule) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2HotwordRule + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2ImageLocation: Location of the finding within an +// image. +type GooglePrivacyDlpV2ImageLocation struct { + // BoundingBoxes: Bounding boxes locating the pixels within the image + // containing the finding. + BoundingBoxes []*GooglePrivacyDlpV2BoundingBox `json:"boundingBoxes,omitempty"` + + // ForceSendFields is a list of field names (e.g. "BoundingBoxes") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "BoundingBoxes") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2ImageLocation) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2ImageLocation + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2ImageRedactionConfig: Configuration for determining +// how redaction of images should occur. +type GooglePrivacyDlpV2ImageRedactionConfig struct { + // InfoType: Only one per info_type should be provided per request. If + // not + // specified, and redact_all_text is false, the DLP API will redact + // all + // text that it matches against all info_types that are found, but + // not + // specified in another ImageRedactionConfig. + InfoType *GooglePrivacyDlpV2InfoType `json:"infoType,omitempty"` + + // RedactAllText: If true, all text found in the image, regardless + // whether it matches an + // info_type, is redacted. + RedactAllText bool `json:"redactAllText,omitempty"` + + // RedactionColor: The color to use when redacting content from an + // image. If not specified, + // the default is black. + RedactionColor *GooglePrivacyDlpV2Color `json:"redactionColor,omitempty"` + + // ForceSendFields is a list of field names (e.g. "InfoType") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "InfoType") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2ImageRedactionConfig) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2ImageRedactionConfig + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2InfoType: Type of information detected by the API. +type GooglePrivacyDlpV2InfoType struct { + // Name: Name of the information type. + Name string `json:"name,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Name") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Name") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2InfoType) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2InfoType + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2InfoTypeDescription: InfoType description. +type GooglePrivacyDlpV2InfoTypeDescription struct { + // DisplayName: Human readable form of the infoType name. + DisplayName string `json:"displayName,omitempty"` + + // Name: Internal name of the infoType. + Name string `json:"name,omitempty"` + + // SupportedBy: Which parts of the API supports this InfoType. + // + // Possible values: + // "ENUM_TYPE_UNSPECIFIED" + // "INSPECT" - Supported by the inspect operations. + // "RISK_ANALYSIS" - Supported by the risk analysis operations. + SupportedBy []string `json:"supportedBy,omitempty"` + + // ForceSendFields is a list of field names (e.g. "DisplayName") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "DisplayName") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2InfoTypeDescription) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2InfoTypeDescription + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2InfoTypeLimit: Max findings configuration per +// infoType, per content item or long +// running DlpJob. +type GooglePrivacyDlpV2InfoTypeLimit struct { + // InfoType: Type of information the findings limit applies to. Only one + // limit per + // info_type should be provided. If InfoTypeLimit does not have + // an + // info_type, the DLP API applies the limit against all info_types + // that + // are found but not specified in another InfoTypeLimit. + InfoType *GooglePrivacyDlpV2InfoType `json:"infoType,omitempty"` + + // MaxFindings: Max findings limit for the given infoType. + MaxFindings int64 `json:"maxFindings,omitempty"` + + // ForceSendFields is a list of field names (e.g. "InfoType") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "InfoType") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2InfoTypeLimit) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2InfoTypeLimit + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2InfoTypeStats: Statistics regarding a specific +// InfoType. +type GooglePrivacyDlpV2InfoTypeStats struct { + // Count: Number of findings for this infoType. + Count int64 `json:"count,omitempty,string"` + + // InfoType: The type of finding this stat is for. + InfoType *GooglePrivacyDlpV2InfoType `json:"infoType,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Count") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Count") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2InfoTypeStats) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2InfoTypeStats + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2InfoTypeTransformation: A transformation to apply +// to text that is identified as a specific +// info_type. +type GooglePrivacyDlpV2InfoTypeTransformation struct { + // InfoTypes: InfoTypes to apply the transformation to. Empty list will + // match all + // available infoTypes for this transformation. + InfoTypes []*GooglePrivacyDlpV2InfoType `json:"infoTypes,omitempty"` + + // PrimitiveTransformation: Primitive transformation to apply to the + // infoType. [required] + PrimitiveTransformation *GooglePrivacyDlpV2PrimitiveTransformation `json:"primitiveTransformation,omitempty"` + + // ForceSendFields is a list of field names (e.g. "InfoTypes") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "InfoTypes") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2InfoTypeTransformation) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2InfoTypeTransformation + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2InfoTypeTransformations: A type of transformation +// that will scan unstructured text and +// apply various `PrimitiveTransformation`s to each finding, where +// the +// transformation is applied to only values that were identified as a +// specific +// info_type. +type GooglePrivacyDlpV2InfoTypeTransformations struct { + // Transformations: Transformation for each infoType. Cannot specify + // more than one + // for a given infoType. [required] + Transformations []*GooglePrivacyDlpV2InfoTypeTransformation `json:"transformations,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Transformations") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Transformations") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2InfoTypeTransformations) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2InfoTypeTransformations + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2InspectConfig: Configuration description of the +// scanning process. +// When used with redactContent only info_types and min_likelihood are +// currently +// used. +type GooglePrivacyDlpV2InspectConfig struct { + // ContentOptions: List of options defining data content to scan. + // If empty, text, images, and other content will be included. + // + // Possible values: + // "CONTENT_UNSPECIFIED" - Includes entire content of a file or a data + // stream. + // "CONTENT_TEXT" - Text content within the data, excluding any + // metadata. + // "CONTENT_IMAGE" - Images found in the data. + ContentOptions []string `json:"contentOptions,omitempty"` + + // CustomInfoTypes: Custom infoTypes provided by the user. + CustomInfoTypes []*GooglePrivacyDlpV2CustomInfoType `json:"customInfoTypes,omitempty"` + + // ExcludeInfoTypes: When true, excludes type information of the + // findings. + ExcludeInfoTypes bool `json:"excludeInfoTypes,omitempty"` + + // IncludeQuote: When true, a contextual quote from the data that + // triggered a finding is + // included in the response; see Finding.quote. + IncludeQuote bool `json:"includeQuote,omitempty"` + + // InfoTypes: Restricts what info_types to look for. The values must + // correspond to + // InfoType values returned by ListInfoTypes or found in documentation. + InfoTypes []*GooglePrivacyDlpV2InfoType `json:"infoTypes,omitempty"` + + Limits *GooglePrivacyDlpV2FindingLimits `json:"limits,omitempty"` + + // MinLikelihood: Only returns findings equal or above this threshold. + // The default is + // POSSIBLE. + // + // Possible values: + // "LIKELIHOOD_UNSPECIFIED" - Default value; information with all + // likelihoods is included. + // "VERY_UNLIKELY" - Few matching elements. + // "UNLIKELY" + // "POSSIBLE" - Some matching elements. + // "LIKELY" + // "VERY_LIKELY" - Many matching elements. + MinLikelihood string `json:"minLikelihood,omitempty"` + + // ForceSendFields is a list of field names (e.g. "ContentOptions") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "ContentOptions") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2InspectConfig) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2InspectConfig + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2InspectContentRequest: Request to search for +// potentially sensitive info in a ContentItem. +type GooglePrivacyDlpV2InspectContentRequest struct { + // InspectConfig: Configuration for the inspector. What specified here + // will override + // the template referenced by the inspect_template_name argument. + InspectConfig *GooglePrivacyDlpV2InspectConfig `json:"inspectConfig,omitempty"` + + // InspectTemplateName: Optional template to use. Any configuration + // directly specified in + // inspect_config will override those set in the template. Singular + // fields + // that are set in this request will replace their corresponding fields + // in the + // template. Repeated fields are appended. Singular sub-messages and + // groups + // are recursively merged. + InspectTemplateName string `json:"inspectTemplateName,omitempty"` + + // Item: The item to inspect. + Item *GooglePrivacyDlpV2ContentItem `json:"item,omitempty"` + + // ForceSendFields is a list of field names (e.g. "InspectConfig") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "InspectConfig") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2InspectContentRequest) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2InspectContentRequest + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2InspectContentResponse: Results of inspecting an +// item. +type GooglePrivacyDlpV2InspectContentResponse struct { + // Result: The findings. + Result *GooglePrivacyDlpV2InspectResult `json:"result,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "Result") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Result") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2InspectContentResponse) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2InspectContentResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2InspectDataSourceDetails: The results of an inspect +// DataSource job. +type GooglePrivacyDlpV2InspectDataSourceDetails struct { + // RequestedOptions: The configuration used for this job. + RequestedOptions *GooglePrivacyDlpV2RequestedOptions `json:"requestedOptions,omitempty"` + + // Result: A summary of the outcome of this inspect job. + Result *GooglePrivacyDlpV2Result `json:"result,omitempty"` + + // ForceSendFields is a list of field names (e.g. "RequestedOptions") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "RequestedOptions") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2InspectDataSourceDetails) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2InspectDataSourceDetails + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +type GooglePrivacyDlpV2InspectJobConfig struct { + // Actions: Actions to execute at the completion of the job. Are + // executed in the order + // provided. + Actions []*GooglePrivacyDlpV2Action `json:"actions,omitempty"` + + // InspectConfig: How and what to scan for. + InspectConfig *GooglePrivacyDlpV2InspectConfig `json:"inspectConfig,omitempty"` + + // InspectTemplateName: If provided, will be used as the default for all + // values in InspectConfig. + // `inspect_config` will be merged into the values persisted as part of + // the + // template. + InspectTemplateName string `json:"inspectTemplateName,omitempty"` + + // StorageConfig: The data to scan. + StorageConfig *GooglePrivacyDlpV2StorageConfig `json:"storageConfig,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Actions") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Actions") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2InspectJobConfig) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2InspectJobConfig + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2InspectResult: All the findings for a single +// scanned item. +type GooglePrivacyDlpV2InspectResult struct { + // Findings: List of findings for an item. + Findings []*GooglePrivacyDlpV2Finding `json:"findings,omitempty"` + + // FindingsTruncated: If true, then this item might have more findings + // than were returned, + // and the findings returned are an arbitrary subset of all + // findings. + // The findings list might be truncated because the input items were + // too + // large, or because the server reached the maximum amount of + // resources + // allowed for a single API call. For best results, divide the input + // into + // smaller batches. + FindingsTruncated bool `json:"findingsTruncated,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Findings") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Findings") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2InspectResult) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2InspectResult + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2InspectTemplate: The inspectTemplate contains a +// configuration (set of types of sensitive data +// to be detected) to be used anywhere you otherwise would normally +// specify +// InspectConfig. +type GooglePrivacyDlpV2InspectTemplate struct { + // CreateTime: The creation timestamp of a inspectTemplate, output only + // field. + CreateTime string `json:"createTime,omitempty"` + + // Description: Short description (max 256 chars). + Description string `json:"description,omitempty"` + + // DisplayName: Display name (max 256 chars). + DisplayName string `json:"displayName,omitempty"` + + // InspectConfig: The core content of the template. Configuration of the + // scanning process. + InspectConfig *GooglePrivacyDlpV2InspectConfig `json:"inspectConfig,omitempty"` + + // Name: The template name. Output only. + // + // The template will have one of the following + // formats: + // `projects/PROJECT_ID/inspectTemplates/TEMPLATE_ID` + // OR + // `organizations/ORGANIZATION_ID/inspectTemplates/TEMPLATE_ID` + Name string `json:"name,omitempty"` + + // UpdateTime: The last update timestamp of a inspectTemplate, output + // only field. + UpdateTime string `json:"updateTime,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "CreateTime") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "CreateTime") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2InspectTemplate) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2InspectTemplate + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2JobTrigger: Contains a configuration to make dlp +// api calls on a repeating basis. +type GooglePrivacyDlpV2JobTrigger struct { + // CreateTime: The creation timestamp of a triggeredJob, output only + // field. + CreateTime string `json:"createTime,omitempty"` + + // Description: User provided description (max 256 chars) + Description string `json:"description,omitempty"` + + // DisplayName: Display name (max 100 chars) + DisplayName string `json:"displayName,omitempty"` + + // Errors: A stream of errors encountered when the trigger was + // activated. Repeated + // errors may result in the JobTrigger automaticaly being paused. + // Will return the last 100 errors. Whenever the JobTrigger is + // modified + // this list will be cleared. Output only field. + Errors []*GooglePrivacyDlpV2Error `json:"errors,omitempty"` + + InspectJob *GooglePrivacyDlpV2InspectJobConfig `json:"inspectJob,omitempty"` + + // LastRunTime: The timestamp of the last time this trigger executed, + // output only field. + LastRunTime string `json:"lastRunTime,omitempty"` + + // Name: Unique resource name for the triggeredJob, assigned by the + // service when the + // triggeredJob is created, for + // example + // `projects/dlp-test-project/triggeredJobs/53234423`. + Name string `json:"name,omitempty"` + + // Status: A status for this trigger. [required] + // + // Possible values: + // "STATUS_UNSPECIFIED" + // "HEALTHY" - Trigger is healthy. + // "PAUSED" - Trigger is temporarily paused. + // "CANCELLED" - Trigger is cancelled and can not be resumed. + Status string `json:"status,omitempty"` + + // Triggers: A list of triggers which will be OR'ed together. Only one + // in the list + // needs to trigger for a job to be started. The list may contain only + // a single Schedule trigger and must have at least one object. + Triggers []*GooglePrivacyDlpV2Trigger `json:"triggers,omitempty"` + + // UpdateTime: The last update timestamp of a triggeredJob, output only + // field. + UpdateTime string `json:"updateTime,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "CreateTime") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "CreateTime") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2JobTrigger) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2JobTrigger + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2KAnonymityConfig: k-anonymity metric, used for +// analysis of reidentification risk. +type GooglePrivacyDlpV2KAnonymityConfig struct { + // QuasiIds: Set of fields to compute k-anonymity over. When multiple + // fields are + // specified, they are considered a single composite key. Structs + // and + // repeated data types are not supported; however, nested fields + // are + // supported so long as they are not structs themselves or nested + // within + // a repeated field. + QuasiIds []*GooglePrivacyDlpV2FieldId `json:"quasiIds,omitempty"` + + // ForceSendFields is a list of field names (e.g. "QuasiIds") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "QuasiIds") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2KAnonymityConfig) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2KAnonymityConfig + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2KAnonymityEquivalenceClass: The set of columns' +// values that share the same ldiversity value +type GooglePrivacyDlpV2KAnonymityEquivalenceClass struct { + // EquivalenceClassSize: Size of the equivalence class, for example + // number of rows with the + // above set of values. + EquivalenceClassSize int64 `json:"equivalenceClassSize,omitempty,string"` + + // QuasiIdsValues: Set of values defining the equivalence class. One + // value per + // quasi-identifier column in the original KAnonymity metric + // message. + // The order is always the same as the original request. + QuasiIdsValues []*GooglePrivacyDlpV2Value `json:"quasiIdsValues,omitempty"` + + // ForceSendFields is a list of field names (e.g. + // "EquivalenceClassSize") to unconditionally include in API requests. + // By default, fields with empty values are omitted from API requests. + // However, any non-pointer, non-interface field appearing in + // ForceSendFields will be sent to the server regardless of whether the + // field is empty or not. This may be used to include empty fields in + // Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "EquivalenceClassSize") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2KAnonymityEquivalenceClass) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2KAnonymityEquivalenceClass + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +type GooglePrivacyDlpV2KAnonymityHistogramBucket struct { + // BucketSize: Total number of equivalence classes in this bucket. + BucketSize int64 `json:"bucketSize,omitempty,string"` + + // BucketValueCount: Total number of distinct equivalence classes in + // this bucket. + BucketValueCount int64 `json:"bucketValueCount,omitempty,string"` + + // BucketValues: Sample of equivalence classes in this bucket. The total + // number of + // classes returned per bucket is capped at 20. + BucketValues []*GooglePrivacyDlpV2KAnonymityEquivalenceClass `json:"bucketValues,omitempty"` + + // EquivalenceClassSizeLowerBound: Lower bound on the size of the + // equivalence classes in this bucket. + EquivalenceClassSizeLowerBound int64 `json:"equivalenceClassSizeLowerBound,omitempty,string"` + + // EquivalenceClassSizeUpperBound: Upper bound on the size of the + // equivalence classes in this bucket. + EquivalenceClassSizeUpperBound int64 `json:"equivalenceClassSizeUpperBound,omitempty,string"` + + // ForceSendFields is a list of field names (e.g. "BucketSize") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "BucketSize") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2KAnonymityHistogramBucket) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2KAnonymityHistogramBucket + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2KAnonymityResult: Result of the k-anonymity +// computation. +type GooglePrivacyDlpV2KAnonymityResult struct { + // EquivalenceClassHistogramBuckets: Histogram of k-anonymity + // equivalence classes. + EquivalenceClassHistogramBuckets []*GooglePrivacyDlpV2KAnonymityHistogramBucket `json:"equivalenceClassHistogramBuckets,omitempty"` + + // ForceSendFields is a list of field names (e.g. + // "EquivalenceClassHistogramBuckets") to unconditionally include in API + // requests. By default, fields with empty values are omitted from API + // requests. However, any non-pointer, non-interface field appearing in + // ForceSendFields will be sent to the server regardless of whether the + // field is empty or not. This may be used to include empty fields in + // Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. + // "EquivalenceClassHistogramBuckets") to include in API requests with + // the JSON null value. By default, fields with empty values are omitted + // from API requests. However, any field with an empty value appearing + // in NullFields will be sent to the server as null. It is an error if a + // field in this list has a non-empty value. This may be used to include + // null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2KAnonymityResult) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2KAnonymityResult + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2KMapEstimationConfig: Reidentifiability metric. +// This corresponds to a risk model similar to what +// is called "journalist risk" in the literature, except the attack +// dataset is +// statistically modeled instead of being perfectly known. This can be +// done +// using publicly available data (like the US Census), or using a +// custom +// statistical model (indicated as one or several BigQuery tables), or +// by +// extrapolating from the distribution of values in the input dataset. +type GooglePrivacyDlpV2KMapEstimationConfig struct { + // AuxiliaryTables: Several auxiliary tables can be used in the + // analysis. Each custom_tag + // used to tag a quasi-identifiers column must appear in exactly one + // column + // of one auxiliary table. + AuxiliaryTables []*GooglePrivacyDlpV2AuxiliaryTable `json:"auxiliaryTables,omitempty"` + + // QuasiIds: Fields considered to be quasi-identifiers. No two columns + // can have the + // same tag. [required] + QuasiIds []*GooglePrivacyDlpV2TaggedField `json:"quasiIds,omitempty"` + + // RegionCode: ISO 3166-1 alpha-2 region code to use in the statistical + // modeling. + // Required if no column is tagged with a region-specific InfoType + // (like + // US_ZIP_5) or a region code. + RegionCode string `json:"regionCode,omitempty"` + + // ForceSendFields is a list of field names (e.g. "AuxiliaryTables") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "AuxiliaryTables") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2KMapEstimationConfig) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2KMapEstimationConfig + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2KMapEstimationHistogramBucket: A +// KMapEstimationHistogramBucket message with the following values: +// min_anonymity: 3 +// max_anonymity: 5 +// frequency: 42 +// means that there are 42 records whose quasi-identifier values +// correspond +// to 3, 4 or 5 people in the overlying population. An important +// particular +// case is when min_anonymity = max_anonymity = 1: the frequency field +// then +// corresponds to the number of uniquely identifiable records. +type GooglePrivacyDlpV2KMapEstimationHistogramBucket struct { + // BucketSize: Number of records within these anonymity bounds. + BucketSize int64 `json:"bucketSize,omitempty,string"` + + // BucketValueCount: Total number of distinct quasi-identifier tuple + // values in this bucket. + BucketValueCount int64 `json:"bucketValueCount,omitempty,string"` + + // BucketValues: Sample of quasi-identifier tuple values in this bucket. + // The total + // number of classes returned per bucket is capped at 20. + BucketValues []*GooglePrivacyDlpV2KMapEstimationQuasiIdValues `json:"bucketValues,omitempty"` + + // MaxAnonymity: Always greater than or equal to min_anonymity. + MaxAnonymity int64 `json:"maxAnonymity,omitempty,string"` + + // MinAnonymity: Always positive. + MinAnonymity int64 `json:"minAnonymity,omitempty,string"` + + // ForceSendFields is a list of field names (e.g. "BucketSize") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "BucketSize") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2KMapEstimationHistogramBucket) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2KMapEstimationHistogramBucket + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2KMapEstimationQuasiIdValues: A tuple of values for +// the quasi-identifier columns. +type GooglePrivacyDlpV2KMapEstimationQuasiIdValues struct { + // EstimatedAnonymity: The estimated anonymity for these + // quasi-identifier values. + EstimatedAnonymity int64 `json:"estimatedAnonymity,omitempty,string"` + + // QuasiIdsValues: The quasi-identifier values. + QuasiIdsValues []*GooglePrivacyDlpV2Value `json:"quasiIdsValues,omitempty"` + + // ForceSendFields is a list of field names (e.g. "EstimatedAnonymity") + // to unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "EstimatedAnonymity") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2KMapEstimationQuasiIdValues) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2KMapEstimationQuasiIdValues + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2KMapEstimationResult: Result of the +// reidentifiability analysis. Note that these results are +// an +// estimation, not exact values. +type GooglePrivacyDlpV2KMapEstimationResult struct { + // KMapEstimationHistogram: The intervals [min_anonymity, max_anonymity] + // do not overlap. If a value + // doesn't correspond to any such interval, the associated frequency + // is + // zero. For example, the following records: + // {min_anonymity: 1, max_anonymity: 1, frequency: 17} + // {min_anonymity: 2, max_anonymity: 3, frequency: 42} + // {min_anonymity: 5, max_anonymity: 10, frequency: 99} + // mean that there are no record with an estimated anonymity of 4, 5, + // or + // larger than 10. + KMapEstimationHistogram []*GooglePrivacyDlpV2KMapEstimationHistogramBucket `json:"kMapEstimationHistogram,omitempty"` + + // ForceSendFields is a list of field names (e.g. + // "KMapEstimationHistogram") to unconditionally include in API + // requests. By default, fields with empty values are omitted from API + // requests. However, any non-pointer, non-interface field appearing in + // ForceSendFields will be sent to the server regardless of whether the + // field is empty or not. This may be used to include empty fields in + // Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "KMapEstimationHistogram") + // to include in API requests with the JSON null value. By default, + // fields with empty values are omitted from API requests. However, any + // field with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2KMapEstimationResult) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2KMapEstimationResult + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2Key: A unique identifier for a Datastore entity. +// If a key's partition ID or any of its path kinds or names +// are +// reserved/read-only, the key is reserved/read-only. +// A reserved/read-only key is forbidden in certain documented contexts. +type GooglePrivacyDlpV2Key struct { + // PartitionId: Entities are partitioned into subsets, currently + // identified by a project + // ID and namespace ID. + // Queries are scoped to a single partition. + PartitionId *GooglePrivacyDlpV2PartitionId `json:"partitionId,omitempty"` + + // Path: The entity path. + // An entity path consists of one or more elements composed of a kind + // and a + // string or numerical identifier, which identify entities. The + // first + // element identifies a _root entity_, the second element identifies + // a _child_ of the root entity, the third element identifies a child of + // the + // second entity, and so forth. The entities identified by all prefixes + // of + // the path are called the element's _ancestors_. + // + // A path can never be empty, and a path can have at most 100 elements. + Path []*GooglePrivacyDlpV2PathElement `json:"path,omitempty"` + + // ForceSendFields is a list of field names (e.g. "PartitionId") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "PartitionId") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2Key) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2Key + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2KindExpression: A representation of a Datastore +// kind. +type GooglePrivacyDlpV2KindExpression struct { + // Name: The name of the kind. + Name string `json:"name,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Name") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Name") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2KindExpression) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2KindExpression + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2KmsWrappedCryptoKey: Include to use an existing +// data crypto key wrapped by KMS. +// Authorization requires the following IAM permissions when sending a +// request +// to perform a crypto transformation using a kms-wrapped crypto +// key: +// dlp.kms.encrypt +type GooglePrivacyDlpV2KmsWrappedCryptoKey struct { + // CryptoKeyName: The resource name of the KMS CryptoKey to use for + // unwrapping. [required] + CryptoKeyName string `json:"cryptoKeyName,omitempty"` + + // WrappedKey: The wrapped data crypto key. [required] + WrappedKey string `json:"wrappedKey,omitempty"` + + // ForceSendFields is a list of field names (e.g. "CryptoKeyName") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "CryptoKeyName") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2KmsWrappedCryptoKey) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2KmsWrappedCryptoKey + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2LDiversityConfig: l-diversity metric, used for +// analysis of reidentification risk. +type GooglePrivacyDlpV2LDiversityConfig struct { + // QuasiIds: Set of quasi-identifiers indicating how equivalence classes + // are + // defined for the l-diversity computation. When multiple fields + // are + // specified, they are considered a single composite key. + QuasiIds []*GooglePrivacyDlpV2FieldId `json:"quasiIds,omitempty"` + + // SensitiveAttribute: Sensitive field for computing the l-value. + SensitiveAttribute *GooglePrivacyDlpV2FieldId `json:"sensitiveAttribute,omitempty"` + + // ForceSendFields is a list of field names (e.g. "QuasiIds") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "QuasiIds") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2LDiversityConfig) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2LDiversityConfig + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2LDiversityEquivalenceClass: The set of columns' +// values that share the same ldiversity value. +type GooglePrivacyDlpV2LDiversityEquivalenceClass struct { + // EquivalenceClassSize: Size of the k-anonymity equivalence class. + EquivalenceClassSize int64 `json:"equivalenceClassSize,omitempty,string"` + + // NumDistinctSensitiveValues: Number of distinct sensitive values in + // this equivalence class. + NumDistinctSensitiveValues int64 `json:"numDistinctSensitiveValues,omitempty,string"` + + // QuasiIdsValues: Quasi-identifier values defining the k-anonymity + // equivalence + // class. The order is always the same as the original request. + QuasiIdsValues []*GooglePrivacyDlpV2Value `json:"quasiIdsValues,omitempty"` + + // TopSensitiveValues: Estimated frequencies of top sensitive values. + TopSensitiveValues []*GooglePrivacyDlpV2ValueFrequency `json:"topSensitiveValues,omitempty"` + + // ForceSendFields is a list of field names (e.g. + // "EquivalenceClassSize") to unconditionally include in API requests. + // By default, fields with empty values are omitted from API requests. + // However, any non-pointer, non-interface field appearing in + // ForceSendFields will be sent to the server regardless of whether the + // field is empty or not. This may be used to include empty fields in + // Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "EquivalenceClassSize") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2LDiversityEquivalenceClass) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2LDiversityEquivalenceClass + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +type GooglePrivacyDlpV2LDiversityHistogramBucket struct { + // BucketSize: Total number of equivalence classes in this bucket. + BucketSize int64 `json:"bucketSize,omitempty,string"` + + // BucketValueCount: Total number of distinct equivalence classes in + // this bucket. + BucketValueCount int64 `json:"bucketValueCount,omitempty,string"` + + // BucketValues: Sample of equivalence classes in this bucket. The total + // number of + // classes returned per bucket is capped at 20. + BucketValues []*GooglePrivacyDlpV2LDiversityEquivalenceClass `json:"bucketValues,omitempty"` + + // SensitiveValueFrequencyLowerBound: Lower bound on the sensitive value + // frequencies of the equivalence + // classes in this bucket. + SensitiveValueFrequencyLowerBound int64 `json:"sensitiveValueFrequencyLowerBound,omitempty,string"` + + // SensitiveValueFrequencyUpperBound: Upper bound on the sensitive value + // frequencies of the equivalence + // classes in this bucket. + SensitiveValueFrequencyUpperBound int64 `json:"sensitiveValueFrequencyUpperBound,omitempty,string"` + + // ForceSendFields is a list of field names (e.g. "BucketSize") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "BucketSize") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2LDiversityHistogramBucket) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2LDiversityHistogramBucket + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2LDiversityResult: Result of the l-diversity +// computation. +type GooglePrivacyDlpV2LDiversityResult struct { + // SensitiveValueFrequencyHistogramBuckets: Histogram of l-diversity + // equivalence class sensitive value frequencies. + SensitiveValueFrequencyHistogramBuckets []*GooglePrivacyDlpV2LDiversityHistogramBucket `json:"sensitiveValueFrequencyHistogramBuckets,omitempty"` + + // ForceSendFields is a list of field names (e.g. + // "SensitiveValueFrequencyHistogramBuckets") to unconditionally include + // in API requests. By default, fields with empty values are omitted + // from API requests. However, any non-pointer, non-interface field + // appearing in ForceSendFields will be sent to the server regardless of + // whether the field is empty or not. This may be used to include empty + // fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. + // "SensitiveValueFrequencyHistogramBuckets") to include in API requests + // with the JSON null value. By default, fields with empty values are + // omitted from API requests. However, any field with an empty value + // appearing in NullFields will be sent to the server as null. It is an + // error if a field in this list has a non-empty value. This may be used + // to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2LDiversityResult) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2LDiversityResult + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2LikelihoodAdjustment: Message for specifying an +// adjustment to the likelihood of a finding as +// part of a detection rule. +type GooglePrivacyDlpV2LikelihoodAdjustment struct { + // FixedLikelihood: Set the likelihood of a finding to a fixed value. + // + // Possible values: + // "LIKELIHOOD_UNSPECIFIED" - Default value; information with all + // likelihoods is included. + // "VERY_UNLIKELY" - Few matching elements. + // "UNLIKELY" + // "POSSIBLE" - Some matching elements. + // "LIKELY" + // "VERY_LIKELY" - Many matching elements. + FixedLikelihood string `json:"fixedLikelihood,omitempty"` + + // RelativeLikelihood: Increase or decrease the likelihood by the + // specified number of + // levels. For example, if a finding would be `POSSIBLE` without + // the + // detection rule and `relative_likelihood` is 1, then it is upgraded + // to + // `LIKELY`, while a value of -1 would downgrade it to + // `UNLIKELY`. + // Likelihood may never drop below `VERY_UNLIKELY` or + // exceed + // `VERY_LIKELY`, so applying an adjustment of 1 followed by + // an + // adjustment of -1 when base likelihood is `VERY_LIKELY` will result + // in + // a final likelihood of `LIKELY`. + RelativeLikelihood int64 `json:"relativeLikelihood,omitempty"` + + // ForceSendFields is a list of field names (e.g. "FixedLikelihood") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "FixedLikelihood") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2LikelihoodAdjustment) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2LikelihoodAdjustment + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2ListDeidentifyTemplatesResponse: Response message +// for ListDeidentifyTemplates. +type GooglePrivacyDlpV2ListDeidentifyTemplatesResponse struct { + // DeidentifyTemplates: List of deidentify templates, up to page_size + // in + // ListDeidentifyTemplatesRequest. + DeidentifyTemplates []*GooglePrivacyDlpV2DeidentifyTemplate `json:"deidentifyTemplates,omitempty"` + + // NextPageToken: If the next page is available then the next page token + // to be used + // in following ListDeidentifyTemplates request. + NextPageToken string `json:"nextPageToken,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "DeidentifyTemplates") + // to unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "DeidentifyTemplates") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2ListDeidentifyTemplatesResponse) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2ListDeidentifyTemplatesResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2ListDlpJobsResponse: The response message for +// listing DLP jobs. +type GooglePrivacyDlpV2ListDlpJobsResponse struct { + // Jobs: A list of DlpJobs that matches the specified filter in the + // request. + Jobs []*GooglePrivacyDlpV2DlpJob `json:"jobs,omitempty"` + + // NextPageToken: The standard List next-page token. + NextPageToken string `json:"nextPageToken,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "Jobs") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Jobs") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2ListDlpJobsResponse) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2ListDlpJobsResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2ListInfoTypesResponse: Response to the +// ListInfoTypes request. +type GooglePrivacyDlpV2ListInfoTypesResponse struct { + // InfoTypes: Set of sensitive infoTypes. + InfoTypes []*GooglePrivacyDlpV2InfoTypeDescription `json:"infoTypes,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "InfoTypes") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "InfoTypes") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2ListInfoTypesResponse) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2ListInfoTypesResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2ListInspectTemplatesResponse: Response message for +// ListInspectTemplates. +type GooglePrivacyDlpV2ListInspectTemplatesResponse struct { + // InspectTemplates: List of inspectTemplates, up to page_size in + // ListInspectTemplatesRequest. + InspectTemplates []*GooglePrivacyDlpV2InspectTemplate `json:"inspectTemplates,omitempty"` + + // NextPageToken: If the next page is available then the next page token + // to be used + // in following ListInspectTemplates request. + NextPageToken string `json:"nextPageToken,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "InspectTemplates") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "InspectTemplates") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2ListInspectTemplatesResponse) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2ListInspectTemplatesResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2ListJobTriggersResponse: Response message for +// ListJobTriggers. +type GooglePrivacyDlpV2ListJobTriggersResponse struct { + // JobTriggers: List of triggeredJobs, up to page_size in + // ListJobTriggersRequest. + JobTriggers []*GooglePrivacyDlpV2JobTrigger `json:"jobTriggers,omitempty"` + + // NextPageToken: If the next page is available then the next page token + // to be used + // in following ListJobTriggers request. + NextPageToken string `json:"nextPageToken,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "JobTriggers") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "JobTriggers") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2ListJobTriggersResponse) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2ListJobTriggersResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2Location: Specifies the location of the finding. +type GooglePrivacyDlpV2Location struct { + // ByteRange: Zero-based byte offsets delimiting the finding. + // These are relative to the finding's containing element. + // Note that when the content is not textual, this references + // the UTF-8 encoded textual representation of the content. + // Omitted if content is an image. + ByteRange *GooglePrivacyDlpV2Range `json:"byteRange,omitempty"` + + // CodepointRange: Unicode character offsets delimiting the + // finding. + // These are relative to the finding's containing element. + // Provided when the content is text. + CodepointRange *GooglePrivacyDlpV2Range `json:"codepointRange,omitempty"` + + // ContentLocations: List of nested objects pointing to the precise + // location of the finding + // within the file or record. + ContentLocations []*GooglePrivacyDlpV2ContentLocation `json:"contentLocations,omitempty"` + + // ForceSendFields is a list of field names (e.g. "ByteRange") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "ByteRange") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2Location) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2Location + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2NumericalStatsConfig: Compute numerical stats over +// an individual column, including +// min, max, and quantiles. +type GooglePrivacyDlpV2NumericalStatsConfig struct { + // Field: Field to compute numerical stats on. Supported types + // are + // integer, float, date, datetime, timestamp, time. + Field *GooglePrivacyDlpV2FieldId `json:"field,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Field") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Field") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2NumericalStatsConfig) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2NumericalStatsConfig + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2NumericalStatsResult: Result of the numerical stats +// computation. +type GooglePrivacyDlpV2NumericalStatsResult struct { + // MaxValue: Maximum value appearing in the column. + MaxValue *GooglePrivacyDlpV2Value `json:"maxValue,omitempty"` + + // MinValue: Minimum value appearing in the column. + MinValue *GooglePrivacyDlpV2Value `json:"minValue,omitempty"` + + // QuantileValues: List of 99 values that partition the set of field + // values into 100 equal + // sized buckets. + QuantileValues []*GooglePrivacyDlpV2Value `json:"quantileValues,omitempty"` + + // ForceSendFields is a list of field names (e.g. "MaxValue") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "MaxValue") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2NumericalStatsResult) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2NumericalStatsResult + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2OutputStorageConfig: Cloud repository for storing +// output. +type GooglePrivacyDlpV2OutputStorageConfig struct { + // OutputSchema: Schema used for writing the findings. Columns are + // derived from the + // `Finding` object. If appending to an existing table, any columns from + // the + // predefined schema that are missing will be added. No columns in + // the + // existing table will be deleted. + // + // If unspecified, then all available columns will be used for a new + // table, + // and no changes will be made to an existing table. + // + // Possible values: + // "OUTPUT_SCHEMA_UNSPECIFIED" + // "BASIC_COLUMNS" - Basic schema including only `info_type`, `quote`, + // `certainty`, and + // `timestamp`. + // "GCS_COLUMNS" - Schema tailored to findings from scanning Google + // Cloud Storage. + // "DATASTORE_COLUMNS" - Schema tailored to findings from scanning + // Google Datastore. + // "BIG_QUERY_COLUMNS" - Schema tailored to findings from scanning + // Google BigQuery. + // "ALL_COLUMNS" - Schema containing all columns. + OutputSchema string `json:"outputSchema,omitempty"` + + // Table: Store findings in an existing table or a new table in an + // existing + // dataset. Each column in an existing table must have the same name, + // type, + // and mode of a field in the `Finding` object. If table_id is not set a + // new + // one will be generated for you with the following + // format: + // dlp_googleapis_yyyy_mm_dd_[dlp_job_id]. Pacific timezone will be used + // for + // generating the date details. + Table *GooglePrivacyDlpV2BigQueryTable `json:"table,omitempty"` + + // ForceSendFields is a list of field names (e.g. "OutputSchema") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "OutputSchema") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2OutputStorageConfig) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2OutputStorageConfig + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2PartitionId: Datastore partition ID. +// A partition ID identifies a grouping of entities. The grouping is +// always +// by project and namespace, however the namespace ID may be empty. +// +// A partition ID contains several dimensions: +// project ID and namespace ID. +type GooglePrivacyDlpV2PartitionId struct { + // NamespaceId: If not empty, the ID of the namespace to which the + // entities belong. + NamespaceId string `json:"namespaceId,omitempty"` + + // ProjectId: The ID of the project to which the entities belong. + ProjectId string `json:"projectId,omitempty"` + + // ForceSendFields is a list of field names (e.g. "NamespaceId") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "NamespaceId") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2PartitionId) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2PartitionId + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2PathElement: A (kind, ID/name) pair used to +// construct a key path. +// +// If either name or ID is set, the element is complete. +// If neither is set, the element is incomplete. +type GooglePrivacyDlpV2PathElement struct { + // Id: The auto-allocated ID of the entity. + // Never equal to zero. Values less than zero are discouraged and may + // not + // be supported in the future. + Id int64 `json:"id,omitempty,string"` + + // Kind: The kind of the entity. + // A kind matching regex `__.*__` is reserved/read-only. + // A kind must not contain more than 1500 bytes when UTF-8 + // encoded. + // Cannot be "". + Kind string `json:"kind,omitempty"` + + // Name: The name of the entity. + // A name matching regex `__.*__` is reserved/read-only. + // A name must not be more than 1500 bytes when UTF-8 encoded. + // Cannot be "". + Name string `json:"name,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Id") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Id") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2PathElement) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2PathElement + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2PrimitiveTransformation: A rule for transforming a +// value. +type GooglePrivacyDlpV2PrimitiveTransformation struct { + BucketingConfig *GooglePrivacyDlpV2BucketingConfig `json:"bucketingConfig,omitempty"` + + CharacterMaskConfig *GooglePrivacyDlpV2CharacterMaskConfig `json:"characterMaskConfig,omitempty"` + + CryptoHashConfig *GooglePrivacyDlpV2CryptoHashConfig `json:"cryptoHashConfig,omitempty"` + + CryptoReplaceFfxFpeConfig *GooglePrivacyDlpV2CryptoReplaceFfxFpeConfig `json:"cryptoReplaceFfxFpeConfig,omitempty"` + + DateShiftConfig *GooglePrivacyDlpV2DateShiftConfig `json:"dateShiftConfig,omitempty"` + + FixedSizeBucketingConfig *GooglePrivacyDlpV2FixedSizeBucketingConfig `json:"fixedSizeBucketingConfig,omitempty"` + + RedactConfig *GooglePrivacyDlpV2RedactConfig `json:"redactConfig,omitempty"` + + ReplaceConfig *GooglePrivacyDlpV2ReplaceValueConfig `json:"replaceConfig,omitempty"` + + ReplaceWithInfoTypeConfig *GooglePrivacyDlpV2ReplaceWithInfoTypeConfig `json:"replaceWithInfoTypeConfig,omitempty"` + + TimePartConfig *GooglePrivacyDlpV2TimePartConfig `json:"timePartConfig,omitempty"` + + // ForceSendFields is a list of field names (e.g. "BucketingConfig") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "BucketingConfig") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2PrimitiveTransformation) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2PrimitiveTransformation + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2PrivacyMetric: Privacy metric to compute for +// reidentification risk analysis. +type GooglePrivacyDlpV2PrivacyMetric struct { + CategoricalStatsConfig *GooglePrivacyDlpV2CategoricalStatsConfig `json:"categoricalStatsConfig,omitempty"` + + KAnonymityConfig *GooglePrivacyDlpV2KAnonymityConfig `json:"kAnonymityConfig,omitempty"` + + KMapEstimationConfig *GooglePrivacyDlpV2KMapEstimationConfig `json:"kMapEstimationConfig,omitempty"` + + LDiversityConfig *GooglePrivacyDlpV2LDiversityConfig `json:"lDiversityConfig,omitempty"` + + NumericalStatsConfig *GooglePrivacyDlpV2NumericalStatsConfig `json:"numericalStatsConfig,omitempty"` + + // ForceSendFields is a list of field names (e.g. + // "CategoricalStatsConfig") to unconditionally include in API requests. + // By default, fields with empty values are omitted from API requests. + // However, any non-pointer, non-interface field appearing in + // ForceSendFields will be sent to the server regardless of whether the + // field is empty or not. This may be used to include empty fields in + // Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "CategoricalStatsConfig") + // to include in API requests with the JSON null value. By default, + // fields with empty values are omitted from API requests. However, any + // field with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2PrivacyMetric) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2PrivacyMetric + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2Proximity: Message for specifying a window around a +// finding to apply a detection +// rule. +type GooglePrivacyDlpV2Proximity struct { + // WindowAfter: Number of characters after the finding to consider. + WindowAfter int64 `json:"windowAfter,omitempty"` + + // WindowBefore: Number of characters before the finding to consider. + WindowBefore int64 `json:"windowBefore,omitempty"` + + // ForceSendFields is a list of field names (e.g. "WindowAfter") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "WindowAfter") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2Proximity) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2Proximity + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2PublishToPubSub: Publish the results of a DlpJob to +// a pub sub channel. +// Compatible with: Inpect, Risk +type GooglePrivacyDlpV2PublishToPubSub struct { + // Topic: Cloud Pub/Sub topic to send notifications to. The topic must + // have given + // publishing access rights to the DLP API service account executing + // the long running DlpJob sending the notifications. + // Format is projects/{project}/topics/{topic}. + Topic string `json:"topic,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Topic") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Topic") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2PublishToPubSub) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2PublishToPubSub + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2QuasiIdField: A quasi-identifier column has a +// custom_tag, used to know which column +// in the data corresponds to which column in the statistical model. +type GooglePrivacyDlpV2QuasiIdField struct { + CustomTag string `json:"customTag,omitempty"` + + Field *GooglePrivacyDlpV2FieldId `json:"field,omitempty"` + + // ForceSendFields is a list of field names (e.g. "CustomTag") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "CustomTag") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2QuasiIdField) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2QuasiIdField + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2QuoteInfo: Message for infoType-dependent details +// parsed from quote. +type GooglePrivacyDlpV2QuoteInfo struct { + DateTime *GooglePrivacyDlpV2DateTime `json:"dateTime,omitempty"` + + // ForceSendFields is a list of field names (e.g. "DateTime") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "DateTime") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2QuoteInfo) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2QuoteInfo + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2Range: Generic half-open interval [start, end) +type GooglePrivacyDlpV2Range struct { + // End: Index of the last character of the range (exclusive). + End int64 `json:"end,omitempty,string"` + + // Start: Index of the first character of the range (inclusive). + Start int64 `json:"start,omitempty,string"` + + // ForceSendFields is a list of field names (e.g. "End") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "End") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2Range) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2Range + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2RecordCondition: A condition for determining +// whether a transformation should be applied to +// a field. +type GooglePrivacyDlpV2RecordCondition struct { + // Expressions: An expression. + Expressions *GooglePrivacyDlpV2Expressions `json:"expressions,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Expressions") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Expressions") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2RecordCondition) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2RecordCondition + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2RecordKey: Message for a unique key indicating a +// record that contains a finding. +type GooglePrivacyDlpV2RecordKey struct { + BigQueryKey *GooglePrivacyDlpV2BigQueryKey `json:"bigQueryKey,omitempty"` + + DatastoreKey *GooglePrivacyDlpV2DatastoreKey `json:"datastoreKey,omitempty"` + + // ForceSendFields is a list of field names (e.g. "BigQueryKey") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "BigQueryKey") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2RecordKey) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2RecordKey + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2RecordLocation: Location of a finding within a row +// or record. +type GooglePrivacyDlpV2RecordLocation struct { + // FieldId: Field id of the field containing the finding. + FieldId *GooglePrivacyDlpV2FieldId `json:"fieldId,omitempty"` + + // RecordKey: Key of the finding. + RecordKey *GooglePrivacyDlpV2RecordKey `json:"recordKey,omitempty"` + + // TableLocation: Location within a `ContentItem.Table`. + TableLocation *GooglePrivacyDlpV2TableLocation `json:"tableLocation,omitempty"` + + // ForceSendFields is a list of field names (e.g. "FieldId") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "FieldId") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2RecordLocation) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2RecordLocation + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2RecordSuppression: Configuration to suppress +// records whose suppression conditions evaluate to +// true. +type GooglePrivacyDlpV2RecordSuppression struct { + // Condition: A condition that when it evaluates to true will result in + // the record being + // evaluated to be suppressed from the transformed content. + Condition *GooglePrivacyDlpV2RecordCondition `json:"condition,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Condition") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Condition") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2RecordSuppression) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2RecordSuppression + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2RecordTransformations: A type of transformation +// that is applied over structured data such as a +// table. +type GooglePrivacyDlpV2RecordTransformations struct { + // FieldTransformations: Transform the record by applying various field + // transformations. + FieldTransformations []*GooglePrivacyDlpV2FieldTransformation `json:"fieldTransformations,omitempty"` + + // RecordSuppressions: Configuration defining which records get + // suppressed entirely. Records that + // match any suppression rule are omitted from the output [optional]. + RecordSuppressions []*GooglePrivacyDlpV2RecordSuppression `json:"recordSuppressions,omitempty"` + + // ForceSendFields is a list of field names (e.g. + // "FieldTransformations") to unconditionally include in API requests. + // By default, fields with empty values are omitted from API requests. + // However, any non-pointer, non-interface field appearing in + // ForceSendFields will be sent to the server regardless of whether the + // field is empty or not. This may be used to include empty fields in + // Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "FieldTransformations") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2RecordTransformations) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2RecordTransformations + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2RedactConfig: Redact a given value. For example, if +// used with an `InfoTypeTransformation` +// transforming PHONE_NUMBER, and input 'My phone number is +// 206-555-0123', the +// output would be 'My phone number is '. +type GooglePrivacyDlpV2RedactConfig struct { +} + +// GooglePrivacyDlpV2RedactImageRequest: Request to search for +// potentially sensitive info in a list of items +// and replace it with a default or provided content. +type GooglePrivacyDlpV2RedactImageRequest struct { + // ByteItem: The content must be PNG, JPEG, SVG or BMP. + ByteItem *GooglePrivacyDlpV2ByteContentItem `json:"byteItem,omitempty"` + + // ImageRedactionConfigs: The configuration for specifying what content + // to redact from images. + ImageRedactionConfigs []*GooglePrivacyDlpV2ImageRedactionConfig `json:"imageRedactionConfigs,omitempty"` + + // InspectConfig: Configuration for the inspector. + InspectConfig *GooglePrivacyDlpV2InspectConfig `json:"inspectConfig,omitempty"` + + // ForceSendFields is a list of field names (e.g. "ByteItem") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "ByteItem") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2RedactImageRequest) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2RedactImageRequest + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2RedactImageResponse: Results of redacting an image. +type GooglePrivacyDlpV2RedactImageResponse struct { + // ExtractedText: If an image was being inspected and the + // InspectConfig's include_quote was + // set to true, then this field will include all text, if any, that was + // found + // in the image. + ExtractedText string `json:"extractedText,omitempty"` + + // RedactedImage: The redacted image. The type will be the same as the + // original image. + RedactedImage string `json:"redactedImage,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "ExtractedText") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "ExtractedText") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2RedactImageResponse) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2RedactImageResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2Regex: Message defining a custom regular +// expression. +type GooglePrivacyDlpV2Regex struct { + // Pattern: Pattern defining the regular expression. + Pattern string `json:"pattern,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Pattern") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Pattern") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2Regex) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2Regex + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2ReidentifyContentRequest: Request to re-identify an +// item. +type GooglePrivacyDlpV2ReidentifyContentRequest struct { + // InspectConfig: Configuration for the inspector. + InspectConfig *GooglePrivacyDlpV2InspectConfig `json:"inspectConfig,omitempty"` + + // InspectTemplateName: Optional template to use. Any configuration + // directly specified in + // `inspect_config` will override those set in the template. Singular + // fields + // that are set in this request will replace their corresponding fields + // in the + // template. Repeated fields are appended. Singular sub-messages and + // groups + // are recursively merged. + InspectTemplateName string `json:"inspectTemplateName,omitempty"` + + // Item: The item to re-identify. Will be treated as text. + Item *GooglePrivacyDlpV2ContentItem `json:"item,omitempty"` + + // ReidentifyConfig: Configuration for the re-identification of the + // content item. + // This field shares the same proto message type that is used + // for + // de-identification, however its usage here is for the reversal of + // the + // previous de-identification. Re-identification is performed by + // examining + // the transformations used to de-identify the items and executing + // the + // reverse. This requires that only reversible transformations + // be provided here. The reversible transformations are: + // + // - `CryptoReplaceFfxFpeConfig` + ReidentifyConfig *GooglePrivacyDlpV2DeidentifyConfig `json:"reidentifyConfig,omitempty"` + + // ReidentifyTemplateName: Optional template to use. References an + // instance of `DeidentifyTemplate`. + // Any configuration directly specified in `reidentify_config` + // or + // `inspect_config` will override those set in the template. Singular + // fields + // that are set in this request will replace their corresponding fields + // in the + // template. Repeated fields are appended. Singular sub-messages and + // groups + // are recursively merged. + ReidentifyTemplateName string `json:"reidentifyTemplateName,omitempty"` + + // ForceSendFields is a list of field names (e.g. "InspectConfig") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "InspectConfig") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2ReidentifyContentRequest) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2ReidentifyContentRequest + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2ReidentifyContentResponse: Results of +// re-identifying a item. +type GooglePrivacyDlpV2ReidentifyContentResponse struct { + // Item: The re-identified item. + Item *GooglePrivacyDlpV2ContentItem `json:"item,omitempty"` + + // Overview: An overview of the changes that were made to the `item`. + Overview *GooglePrivacyDlpV2TransformationOverview `json:"overview,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "Item") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Item") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2ReidentifyContentResponse) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2ReidentifyContentResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2ReplaceValueConfig: Replace each input value with a +// given `Value`. +type GooglePrivacyDlpV2ReplaceValueConfig struct { + // NewValue: Value to replace it with. + NewValue *GooglePrivacyDlpV2Value `json:"newValue,omitempty"` + + // ForceSendFields is a list of field names (e.g. "NewValue") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "NewValue") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2ReplaceValueConfig) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2ReplaceValueConfig + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2ReplaceWithInfoTypeConfig: Replace each matching +// finding with the name of the info_type. +type GooglePrivacyDlpV2ReplaceWithInfoTypeConfig struct { +} + +type GooglePrivacyDlpV2RequestedOptions struct { + JobConfig *GooglePrivacyDlpV2InspectJobConfig `json:"jobConfig,omitempty"` + + // SnapshotInspectTemplate: If run with an inspect template, a snapshot + // of it's state at the time of + // this run. + SnapshotInspectTemplate *GooglePrivacyDlpV2InspectTemplate `json:"snapshotInspectTemplate,omitempty"` + + // ForceSendFields is a list of field names (e.g. "JobConfig") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "JobConfig") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2RequestedOptions) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2RequestedOptions + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +type GooglePrivacyDlpV2Result struct { + // InfoTypeStats: Statistics of how many instances of each info type + // were found during + // inspect job. + InfoTypeStats []*GooglePrivacyDlpV2InfoTypeStats `json:"infoTypeStats,omitempty"` + + // ProcessedBytes: Total size in bytes that were processed. + ProcessedBytes int64 `json:"processedBytes,omitempty,string"` + + // TotalEstimatedBytes: Estimate of the number of bytes to process. + TotalEstimatedBytes int64 `json:"totalEstimatedBytes,omitempty,string"` + + // ForceSendFields is a list of field names (e.g. "InfoTypeStats") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "InfoTypeStats") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2Result) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2Result + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2RiskAnalysisJobConfig: Configuration for a risk +// analysis job. +type GooglePrivacyDlpV2RiskAnalysisJobConfig struct { + // Actions: Actions to execute at the completion of the job. Are + // executed in the order + // provided. + Actions []*GooglePrivacyDlpV2Action `json:"actions,omitempty"` + + // PrivacyMetric: Privacy metric to compute. + PrivacyMetric *GooglePrivacyDlpV2PrivacyMetric `json:"privacyMetric,omitempty"` + + // SourceTable: Input dataset to compute metrics over. + SourceTable *GooglePrivacyDlpV2BigQueryTable `json:"sourceTable,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Actions") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Actions") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2RiskAnalysisJobConfig) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2RiskAnalysisJobConfig + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +type GooglePrivacyDlpV2Row struct { + Values []*GooglePrivacyDlpV2Value `json:"values,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Values") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Values") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2Row) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2Row + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2SaveFindings: If set, the detailed findings will be +// persisted to the specified +// OutputStorageConfig. Compatible with: Inspect +type GooglePrivacyDlpV2SaveFindings struct { + OutputConfig *GooglePrivacyDlpV2OutputStorageConfig `json:"outputConfig,omitempty"` + + // ForceSendFields is a list of field names (e.g. "OutputConfig") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "OutputConfig") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2SaveFindings) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2SaveFindings + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2Schedule: Schedule for triggeredJobs. +type GooglePrivacyDlpV2Schedule struct { + // RecurrencePeriodDuration: With this option a job is started a regular + // periodic basis. For + // example: every 10 minutes. + // + // A scheduled start time will be skipped if the previous + // execution has not ended when its scheduled time occurs. + // + // This value must be set to a time duration greater than or equal + // to 60 minutes and can be no longer than 60 days. + RecurrencePeriodDuration string `json:"recurrencePeriodDuration,omitempty"` + + // ForceSendFields is a list of field names (e.g. + // "RecurrencePeriodDuration") to unconditionally include in API + // requests. By default, fields with empty values are omitted from API + // requests. However, any non-pointer, non-interface field appearing in + // ForceSendFields will be sent to the server regardless of whether the + // field is empty or not. This may be used to include empty fields in + // Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "RecurrencePeriodDuration") + // to include in API requests with the JSON null value. By default, + // fields with empty values are omitted from API requests. However, any + // field with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2Schedule) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2Schedule + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2StorageConfig: Shared message indicating Cloud +// storage type. +type GooglePrivacyDlpV2StorageConfig struct { + // BigQueryOptions: BigQuery options specification. + BigQueryOptions *GooglePrivacyDlpV2BigQueryOptions `json:"bigQueryOptions,omitempty"` + + // CloudStorageOptions: Google Cloud Storage options specification. + CloudStorageOptions *GooglePrivacyDlpV2CloudStorageOptions `json:"cloudStorageOptions,omitempty"` + + // DatastoreOptions: Google Cloud Datastore options specification. + DatastoreOptions *GooglePrivacyDlpV2DatastoreOptions `json:"datastoreOptions,omitempty"` + + TimespanConfig *GooglePrivacyDlpV2TimespanConfig `json:"timespanConfig,omitempty"` + + // ForceSendFields is a list of field names (e.g. "BigQueryOptions") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "BigQueryOptions") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2StorageConfig) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2StorageConfig + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2SummaryResult: A collection that informs the user +// the number of times a particular +// `TransformationResultCode` and error details occurred. +type GooglePrivacyDlpV2SummaryResult struct { + // Possible values: + // "TRANSFORMATION_RESULT_CODE_UNSPECIFIED" + // "SUCCESS" + // "ERROR" + Code string `json:"code,omitempty"` + + Count int64 `json:"count,omitempty,string"` + + // Details: A place for warnings or errors to show up if a + // transformation didn't + // work as expected. + Details string `json:"details,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Code") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Code") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2SummaryResult) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2SummaryResult + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2SurrogateType: Message for detecting output from +// deidentification transformations +// such +// as +// [`CryptoReplaceFfxFpeConfig`](/dlp/docs/reference/rest/v2/organizat +// ions.deidentifyTemplates#cryptoreplaceffxfpeconfig). +// These types of transformations are +// those that perform pseudonymization, thereby producing a "surrogate" +// as +// output. This should be used in conjunction with a field on +// the +// transformation such as `surrogate_info_type`. This custom info type +// does +// not support the use of `detection_rules`. +type GooglePrivacyDlpV2SurrogateType struct { +} + +// GooglePrivacyDlpV2Table: Structured content to inspect. Up to 50,000 +// `Value`s per request allowed. +type GooglePrivacyDlpV2Table struct { + Headers []*GooglePrivacyDlpV2FieldId `json:"headers,omitempty"` + + Rows []*GooglePrivacyDlpV2Row `json:"rows,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Headers") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Headers") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2Table) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2Table + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2TableLocation: Location of a finding within a +// table. +type GooglePrivacyDlpV2TableLocation struct { + // RowIndex: The zero-based index of the row where the finding is + // located. + RowIndex int64 `json:"rowIndex,omitempty,string"` + + // ForceSendFields is a list of field names (e.g. "RowIndex") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "RowIndex") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2TableLocation) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2TableLocation + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2TaggedField: A column with a semantic tag attached. +type GooglePrivacyDlpV2TaggedField struct { + // CustomTag: A column can be tagged with a custom tag. In this case, + // the user must + // indicate an auxiliary table that contains statistical information + // on + // the possible values of this column (below). + CustomTag string `json:"customTag,omitempty"` + + // Field: Identifies the column. [required] + Field *GooglePrivacyDlpV2FieldId `json:"field,omitempty"` + + // Inferred: If no semantic tag is indicated, we infer the statistical + // model from + // the distribution of values in the input data + Inferred *GoogleProtobufEmpty `json:"inferred,omitempty"` + + // InfoType: A column can be tagged with a InfoType to use the relevant + // public + // dataset as a statistical model of population, if available. + // We + // currently support US ZIP codes, region codes, ages and genders. + // To programmatically obtain the list of supported InfoTypes, + // use + // ListInfoTypes with the supported_by=RISK_ANALYSIS filter. + InfoType *GooglePrivacyDlpV2InfoType `json:"infoType,omitempty"` + + // ForceSendFields is a list of field names (e.g. "CustomTag") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "CustomTag") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2TaggedField) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2TaggedField + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2TimePartConfig: For use with `Date`, `Timestamp`, +// and `TimeOfDay`, extract or preserve a +// portion of the value. +type GooglePrivacyDlpV2TimePartConfig struct { + // Possible values: + // "TIME_PART_UNSPECIFIED" + // "YEAR" - [0-9999] + // "MONTH" - [1-12] + // "DAY_OF_MONTH" - [1-31] + // "DAY_OF_WEEK" - [1-7] + // "WEEK_OF_YEAR" - [1-52] + // "HOUR_OF_DAY" - [0-23] + PartToExtract string `json:"partToExtract,omitempty"` + + // ForceSendFields is a list of field names (e.g. "PartToExtract") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "PartToExtract") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2TimePartConfig) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2TimePartConfig + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +type GooglePrivacyDlpV2TimeZone struct { + // OffsetMinutes: Set only if the offset can be determined. Positive for + // time ahead of UTC. + // E.g. For "UTC-9", this value is -540. + OffsetMinutes int64 `json:"offsetMinutes,omitempty"` + + // ForceSendFields is a list of field names (e.g. "OffsetMinutes") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "OffsetMinutes") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2TimeZone) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2TimeZone + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2TimespanConfig: Configuration of the timespan of +// the items to include in scanning. +// Currently only supported when inspecting Google Cloud Storage and +// BigQuery. +type GooglePrivacyDlpV2TimespanConfig struct { + // EnableAutoPopulationOfTimespanConfig: When the job is started by a + // JobTrigger we will automatically figure out + // a valid start_time to avoid scanning files that have not been + // modified + // since the last time the JobTrigger executed. This will be based on + // the + // time of the execution of the last run of the JobTrigger. + EnableAutoPopulationOfTimespanConfig bool `json:"enableAutoPopulationOfTimespanConfig,omitempty"` + + // EndTime: Exclude files newer than this value. + // If set to zero, no upper time limit is applied. + EndTime string `json:"endTime,omitempty"` + + // StartTime: Exclude files older than this value. + StartTime string `json:"startTime,omitempty"` + + // TimestampField: Specification of the field containing the timestamp + // of scanned items. + // Required for data sources like Datastore or BigQuery. + // The valid data types of the timestamp field are: + // for BigQuery - timestamp, date, datetime; + // for Datastore - timestamp. + // Datastore entity will be scanned if the timestamp property does not + // exist + // or its value is empty or invalid. + TimestampField *GooglePrivacyDlpV2FieldId `json:"timestampField,omitempty"` + + // ForceSendFields is a list of field names (e.g. + // "EnableAutoPopulationOfTimespanConfig") to unconditionally include in + // API requests. By default, fields with empty values are omitted from + // API requests. However, any non-pointer, non-interface field appearing + // in ForceSendFields will be sent to the server regardless of whether + // the field is empty or not. This may be used to include empty fields + // in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. + // "EnableAutoPopulationOfTimespanConfig") to include in API requests + // with the JSON null value. By default, fields with empty values are + // omitted from API requests. However, any field with an empty value + // appearing in NullFields will be sent to the server as null. It is an + // error if a field in this list has a non-empty value. This may be used + // to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2TimespanConfig) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2TimespanConfig + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2TransformationOverview: Overview of the +// modifications that occurred. +type GooglePrivacyDlpV2TransformationOverview struct { + // TransformationSummaries: Transformations applied to the dataset. + TransformationSummaries []*GooglePrivacyDlpV2TransformationSummary `json:"transformationSummaries,omitempty"` + + // TransformedBytes: Total size in bytes that were transformed in some + // way. + TransformedBytes int64 `json:"transformedBytes,omitempty,string"` + + // ForceSendFields is a list of field names (e.g. + // "TransformationSummaries") to unconditionally include in API + // requests. By default, fields with empty values are omitted from API + // requests. However, any non-pointer, non-interface field appearing in + // ForceSendFields will be sent to the server regardless of whether the + // field is empty or not. This may be used to include empty fields in + // Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "TransformationSummaries") + // to include in API requests with the JSON null value. By default, + // fields with empty values are omitted from API requests. However, any + // field with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2TransformationOverview) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2TransformationOverview + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2TransformationSummary: Summary of a single +// tranformation. +// Only one of 'transformation', 'field_transformation', or +// 'record_suppress' +// will be set. +type GooglePrivacyDlpV2TransformationSummary struct { + // Field: Set if the transformation was limited to a specific FieldId. + Field *GooglePrivacyDlpV2FieldId `json:"field,omitempty"` + + // FieldTransformations: The field transformation that was applied. + // If multiple field transformations are requested for a single + // field, + // this list will contain all of them; otherwise, only one is supplied. + FieldTransformations []*GooglePrivacyDlpV2FieldTransformation `json:"fieldTransformations,omitempty"` + + // InfoType: Set if the transformation was limited to a specific + // info_type. + InfoType *GooglePrivacyDlpV2InfoType `json:"infoType,omitempty"` + + // RecordSuppress: The specific suppression option these stats apply to. + RecordSuppress *GooglePrivacyDlpV2RecordSuppression `json:"recordSuppress,omitempty"` + + Results []*GooglePrivacyDlpV2SummaryResult `json:"results,omitempty"` + + // Transformation: The specific transformation these stats apply to. + Transformation *GooglePrivacyDlpV2PrimitiveTransformation `json:"transformation,omitempty"` + + // TransformedBytes: Total size in bytes that were transformed in some + // way. + TransformedBytes int64 `json:"transformedBytes,omitempty,string"` + + // ForceSendFields is a list of field names (e.g. "Field") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Field") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2TransformationSummary) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2TransformationSummary + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2TransientCryptoKey: Use this to have a random data +// crypto key generated. +// It will be discarded after the request finishes. +type GooglePrivacyDlpV2TransientCryptoKey struct { + // Name: Name of the key. [required] + // This is an arbitrary string used to differentiate different keys. + // A unique key is generated per name: two separate + // `TransientCryptoKey` + // protos share the same generated key if their names are the same. + // When the data crypto key is generated, this name is not used in any + // way + // (repeating the api call will result in a different key being + // generated). + Name string `json:"name,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Name") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Name") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2TransientCryptoKey) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2TransientCryptoKey + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2Trigger: What event needs to occur for a new job to +// be started. +type GooglePrivacyDlpV2Trigger struct { + // Schedule: Create a job on a repeating basis based on the elapse of + // time. + Schedule *GooglePrivacyDlpV2Schedule `json:"schedule,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Schedule") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Schedule") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2Trigger) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2Trigger + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2UnwrappedCryptoKey: Using raw keys is prone to +// security risks due to accidentally +// leaking the key. Choose another type of key if possible. +type GooglePrivacyDlpV2UnwrappedCryptoKey struct { + // Key: The AES 128/192/256 bit key. [required] + Key string `json:"key,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Key") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Key") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2UnwrappedCryptoKey) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2UnwrappedCryptoKey + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2UpdateDeidentifyTemplateRequest: Request message +// for UpdateDeidentifyTemplate. +type GooglePrivacyDlpV2UpdateDeidentifyTemplateRequest struct { + // DeidentifyTemplate: New DeidentifyTemplate value. + DeidentifyTemplate *GooglePrivacyDlpV2DeidentifyTemplate `json:"deidentifyTemplate,omitempty"` + + // UpdateMask: Mask to control which fields get updated. + UpdateMask string `json:"updateMask,omitempty"` + + // ForceSendFields is a list of field names (e.g. "DeidentifyTemplate") + // to unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "DeidentifyTemplate") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2UpdateDeidentifyTemplateRequest) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2UpdateDeidentifyTemplateRequest + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2UpdateInspectTemplateRequest: Request message for +// UpdateInspectTemplate. +type GooglePrivacyDlpV2UpdateInspectTemplateRequest struct { + // InspectTemplate: New InspectTemplate value. + InspectTemplate *GooglePrivacyDlpV2InspectTemplate `json:"inspectTemplate,omitempty"` + + // UpdateMask: Mask to control which fields get updated. + UpdateMask string `json:"updateMask,omitempty"` + + // ForceSendFields is a list of field names (e.g. "InspectTemplate") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "InspectTemplate") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2UpdateInspectTemplateRequest) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2UpdateInspectTemplateRequest + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2UpdateJobTriggerRequest: Request message for +// UpdateJobTrigger. +type GooglePrivacyDlpV2UpdateJobTriggerRequest struct { + // JobTrigger: New JobTrigger value. + JobTrigger *GooglePrivacyDlpV2JobTrigger `json:"jobTrigger,omitempty"` + + // UpdateMask: Mask to control which fields get updated. + UpdateMask string `json:"updateMask,omitempty"` + + // ForceSendFields is a list of field names (e.g. "JobTrigger") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "JobTrigger") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2UpdateJobTriggerRequest) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2UpdateJobTriggerRequest + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2Value: Set of primitive values supported by the +// system. +// Note that for the purposes of inspection or transformation, the +// number +// of bytes considered to comprise a 'Value' is based on its +// representation +// as a UTF-8 encoded string. For example, if 'integer_value' is set +// to +// 123456789, the number of bytes would be counted as 9, even though +// an +// int64 only holds up to 8 bytes of data. +type GooglePrivacyDlpV2Value struct { + BooleanValue bool `json:"booleanValue,omitempty"` + + DateValue *GoogleTypeDate `json:"dateValue,omitempty"` + + // Possible values: + // "DAY_OF_WEEK_UNSPECIFIED" - The unspecified day-of-week. + // "MONDAY" - The day-of-week of Monday. + // "TUESDAY" - The day-of-week of Tuesday. + // "WEDNESDAY" - The day-of-week of Wednesday. + // "THURSDAY" - The day-of-week of Thursday. + // "FRIDAY" - The day-of-week of Friday. + // "SATURDAY" - The day-of-week of Saturday. + // "SUNDAY" - The day-of-week of Sunday. + DayOfWeekValue string `json:"dayOfWeekValue,omitempty"` + + FloatValue float64 `json:"floatValue,omitempty"` + + IntegerValue int64 `json:"integerValue,omitempty,string"` + + StringValue string `json:"stringValue,omitempty"` + + TimeValue *GoogleTypeTimeOfDay `json:"timeValue,omitempty"` + + TimestampValue string `json:"timestampValue,omitempty"` + + // ForceSendFields is a list of field names (e.g. "BooleanValue") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "BooleanValue") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2Value) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2Value + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +func (s *GooglePrivacyDlpV2Value) UnmarshalJSON(data []byte) error { + type NoMethod GooglePrivacyDlpV2Value + var s1 struct { + FloatValue gensupport.JSONFloat64 `json:"floatValue"` + *NoMethod + } + s1.NoMethod = (*NoMethod)(s) + if err := json.Unmarshal(data, &s1); err != nil { + return err + } + s.FloatValue = float64(s1.FloatValue) + return nil +} + +// GooglePrivacyDlpV2ValueFrequency: A value of a field, including its +// frequency. +type GooglePrivacyDlpV2ValueFrequency struct { + // Count: How many times the value is contained in the field. + Count int64 `json:"count,omitempty,string"` + + // Value: A value contained in the field in question. + Value *GooglePrivacyDlpV2Value `json:"value,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Count") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Count") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2ValueFrequency) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2ValueFrequency + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2WordList: Message defining a list of words or +// phrases to search for in the data. +type GooglePrivacyDlpV2WordList struct { + // Words: Words or phrases defining the dictionary. The dictionary must + // contain + // at least one phrase and every phrase must contain at least 2 + // characters + // that are letters or digits. [required] + Words []string `json:"words,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Words") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Words") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2WordList) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2WordList + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2beta1AuxiliaryTable: An auxiliary table contains +// statistical information on the relative +// frequency of different quasi-identifiers values. It has one or +// several +// quasi-identifiers columns, and one column that indicates the +// relative +// frequency of each quasi-identifier tuple. +// If a tuple is present in the data but not in the auxiliary table, +// the +// corresponding relative frequency is assumed to be zero (and thus, +// the +// tuple is highly reidentifiable). +type GooglePrivacyDlpV2beta1AuxiliaryTable struct { + // QuasiIds: Quasi-identifier columns. [required] + QuasiIds []*GooglePrivacyDlpV2beta1QuasiIdField `json:"quasiIds,omitempty"` + + // RelativeFrequency: The relative frequency column must contain a + // floating-point number + // between 0 and 1 (inclusive). Null values are assumed to be + // zero. + // [required] + RelativeFrequency *GooglePrivacyDlpV2beta1FieldId `json:"relativeFrequency,omitempty"` + + // Table: Auxiliary table location. [required] + Table *GooglePrivacyDlpV2beta1BigQueryTable `json:"table,omitempty"` + + // ForceSendFields is a list of field names (e.g. "QuasiIds") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "QuasiIds") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2beta1AuxiliaryTable) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2beta1AuxiliaryTable + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2beta1BigQueryOptions: Options defining BigQuery +// table and row identifiers. +type GooglePrivacyDlpV2beta1BigQueryOptions struct { + // IdentifyingFields: References to fields uniquely identifying rows + // within the table. + // Nested fields in the format, like `person.birthdate.year`, are + // allowed. + IdentifyingFields []*GooglePrivacyDlpV2beta1FieldId `json:"identifyingFields,omitempty"` + + // TableReference: Complete BigQuery table reference. + TableReference *GooglePrivacyDlpV2beta1BigQueryTable `json:"tableReference,omitempty"` + + // ForceSendFields is a list of field names (e.g. "IdentifyingFields") + // to unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "IdentifyingFields") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2beta1BigQueryOptions) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2beta1BigQueryOptions + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2beta1BigQueryTable: Message defining the location +// of a BigQuery table. A table is uniquely +// identified by its project_id, dataset_id, and table_name. Within a +// query +// a table is often referenced with a string in the format +// of: +// `:.` +// or +// `..`. +type GooglePrivacyDlpV2beta1BigQueryTable struct { + // DatasetId: Dataset ID of the table. + DatasetId string `json:"datasetId,omitempty"` + + // ProjectId: The Google Cloud Platform project ID of the project + // containing the table. + // If omitted, project ID is inferred from the API call. + ProjectId string `json:"projectId,omitempty"` + + // TableId: Name of the table. + TableId string `json:"tableId,omitempty"` + + // ForceSendFields is a list of field names (e.g. "DatasetId") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "DatasetId") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2beta1BigQueryTable) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2beta1BigQueryTable + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2beta1CategoricalStatsConfig: Compute numerical +// stats over an individual column, including +// number of distinct values and value count distribution. +type GooglePrivacyDlpV2beta1CategoricalStatsConfig struct { + // Field: Field to compute categorical stats on. All column types + // are + // supported except for arrays and structs. However, it may be + // more + // informative to use NumericalStats when the field type is + // supported, + // depending on the data. + Field *GooglePrivacyDlpV2beta1FieldId `json:"field,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Field") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Field") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2beta1CategoricalStatsConfig) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2beta1CategoricalStatsConfig + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2beta1CategoricalStatsHistogramBucket: Histogram +// bucket of value frequencies in the column. +type GooglePrivacyDlpV2beta1CategoricalStatsHistogramBucket struct { + // BucketSize: Total number of records in this bucket. + BucketSize int64 `json:"bucketSize,omitempty,string"` + + // BucketValues: Sample of value frequencies in this bucket. The total + // number of + // values returned per bucket is capped at 20. + BucketValues []*GooglePrivacyDlpV2beta1ValueFrequency `json:"bucketValues,omitempty"` + + // ValueFrequencyLowerBound: Lower bound on the value frequency of the + // values in this bucket. + ValueFrequencyLowerBound int64 `json:"valueFrequencyLowerBound,omitempty,string"` + + // ValueFrequencyUpperBound: Upper bound on the value frequency of the + // values in this bucket. + ValueFrequencyUpperBound int64 `json:"valueFrequencyUpperBound,omitempty,string"` + + // ForceSendFields is a list of field names (e.g. "BucketSize") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "BucketSize") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2beta1CategoricalStatsHistogramBucket) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2beta1CategoricalStatsHistogramBucket + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2beta1CategoricalStatsResult: Result of the +// categorical stats computation. +type GooglePrivacyDlpV2beta1CategoricalStatsResult struct { + // ValueFrequencyHistogramBuckets: Histogram of value frequencies in the + // column. + ValueFrequencyHistogramBuckets []*GooglePrivacyDlpV2beta1CategoricalStatsHistogramBucket `json:"valueFrequencyHistogramBuckets,omitempty"` + + // ForceSendFields is a list of field names (e.g. + // "ValueFrequencyHistogramBuckets") to unconditionally include in API + // requests. By default, fields with empty values are omitted from API + // requests. However, any non-pointer, non-interface field appearing in + // ForceSendFields will be sent to the server regardless of whether the + // field is empty or not. This may be used to include empty fields in + // Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. + // "ValueFrequencyHistogramBuckets") to include in API requests with the + // JSON null value. By default, fields with empty values are omitted + // from API requests. However, any field with an empty value appearing + // in NullFields will be sent to the server as null. It is an error if a + // field in this list has a non-empty value. This may be used to include + // null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2beta1CategoricalStatsResult) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2beta1CategoricalStatsResult + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2beta1CloudStorageOptions: Options defining a file +// or a set of files (path ending with *) within +// a Google Cloud Storage bucket. +type GooglePrivacyDlpV2beta1CloudStorageOptions struct { + FileSet *GooglePrivacyDlpV2beta1FileSet `json:"fileSet,omitempty"` + + // ForceSendFields is a list of field names (e.g. "FileSet") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "FileSet") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2beta1CloudStorageOptions) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2beta1CloudStorageOptions + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2beta1CloudStoragePath: A location in Cloud Storage. +type GooglePrivacyDlpV2beta1CloudStoragePath struct { + // Path: The url, in the format of `gs://bucket/`. + Path string `json:"path,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Path") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Path") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2beta1CloudStoragePath) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2beta1CloudStoragePath + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2beta1CustomInfoType: Custom information type +// provided by the user. Used to find domain-specific +// sensitive information configurable to the data in question. +type GooglePrivacyDlpV2beta1CustomInfoType struct { + // Dictionary: Dictionary-based custom info type. + Dictionary *GooglePrivacyDlpV2beta1Dictionary `json:"dictionary,omitempty"` + + // InfoType: Info type configuration. All custom info types must have + // configurations + // that do not conflict with built-in info types or other custom info + // types. + InfoType *GooglePrivacyDlpV2beta1InfoType `json:"infoType,omitempty"` + + // SurrogateType: Surrogate info type. + SurrogateType *GooglePrivacyDlpV2beta1SurrogateType `json:"surrogateType,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Dictionary") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Dictionary") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2beta1CustomInfoType) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2beta1CustomInfoType + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2beta1DatastoreOptions: Options defining a data set +// within Google Cloud Datastore. +type GooglePrivacyDlpV2beta1DatastoreOptions struct { + // Kind: The kind to process. + Kind *GooglePrivacyDlpV2beta1KindExpression `json:"kind,omitempty"` + + // PartitionId: A partition ID identifies a grouping of entities. The + // grouping is always + // by project and namespace, however the namespace ID may be empty. + PartitionId *GooglePrivacyDlpV2beta1PartitionId `json:"partitionId,omitempty"` + + // Projection: Properties to scan. If none are specified, all properties + // will be scanned + // by default. + Projection []*GooglePrivacyDlpV2beta1Projection `json:"projection,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Kind") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Kind") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2beta1DatastoreOptions) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2beta1DatastoreOptions + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2beta1Dictionary: Custom information type based on a +// dictionary of words or phrases. This can +// be used to match sensitive information specific to the data, such as +// a list +// of employee IDs or job titles. +// +// Dictionary words are case-insensitive and all characters other than +// letters +// and digits in the unicode [Basic +// Multilingual +// Plane](https://en.wikipedia.org/wiki/Plane_%28Unicode%29# +// Basic_Multilingual_Plane) +// will be replaced with whitespace when scanning for matches, so +// the +// dictionary phrase "Sam Johnson" will match all three phrases "sam +// johnson", +// "Sam, Johnson", and "Sam (Johnson)". Additionally, the +// characters +// surrounding any match must be of a different type than the +// adjacent +// characters within the word, so letters must be next to non-letters +// and +// digits next to non-digits. For example, the dictionary word "jen" +// will +// match the first three letters of the text "jen123" but will return +// no +// matches for "jennifer". +// +// Dictionary words containing a large number of characters that are +// not +// letters or digits may result in unexpected findings because such +// characters +// are treated as whitespace. +type GooglePrivacyDlpV2beta1Dictionary struct { + // WordList: List of words or phrases to search for. + WordList *GooglePrivacyDlpV2beta1WordList `json:"wordList,omitempty"` + + // ForceSendFields is a list of field names (e.g. "WordList") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "WordList") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2beta1Dictionary) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2beta1Dictionary + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2beta1EntityId: An entity in a dataset is a field or +// set of fields that correspond to a +// single person. For example, in medical records the `EntityId` might +// be +// a patient identifier, or for financial records it might be an +// account +// identifier. This message is used when generalizations or analysis +// must be +// consistent across multiple rows pertaining to the same entity. +type GooglePrivacyDlpV2beta1EntityId struct { + // Field: Composite key indicating which field contains the entity + // identifier. + Field *GooglePrivacyDlpV2beta1FieldId `json:"field,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Field") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Field") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2beta1EntityId) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2beta1EntityId + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2beta1FieldId: General identifier of a data field in +// a storage service. +type GooglePrivacyDlpV2beta1FieldId struct { + // ColumnName: Name describing the field. + ColumnName string `json:"columnName,omitempty"` + + // ForceSendFields is a list of field names (e.g. "ColumnName") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "ColumnName") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2beta1FieldId) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2beta1FieldId + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2beta1FileSet: Set of files to scan. +type GooglePrivacyDlpV2beta1FileSet struct { + // Url: The url, in the format `gs:///`. Trailing wildcard + // in the + // path is allowed. + Url string `json:"url,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Url") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Url") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2beta1FileSet) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2beta1FileSet + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2beta1InfoType: Type of information detected by the +// API. +type GooglePrivacyDlpV2beta1InfoType struct { + // Name: Name of the information type. + Name string `json:"name,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Name") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Name") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2beta1InfoType) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2beta1InfoType + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2beta1InfoTypeLimit: Max findings configuration per +// info type, per content item or long running +// operation. +type GooglePrivacyDlpV2beta1InfoTypeLimit struct { + // InfoType: Type of information the findings limit applies to. Only one + // limit per + // info_type should be provided. If InfoTypeLimit does not have + // an + // info_type, the DLP API applies the limit against all info_types that + // are + // found but not specified in another InfoTypeLimit. + InfoType *GooglePrivacyDlpV2beta1InfoType `json:"infoType,omitempty"` + + // MaxFindings: Max findings limit for the given infoType. + MaxFindings int64 `json:"maxFindings,omitempty"` + + // ForceSendFields is a list of field names (e.g. "InfoType") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "InfoType") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2beta1InfoTypeLimit) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2beta1InfoTypeLimit + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2beta1InfoTypeStatistics: Statistics regarding a +// specific InfoType. +type GooglePrivacyDlpV2beta1InfoTypeStatistics struct { + // Count: Number of findings for this info type. + Count int64 `json:"count,omitempty,string"` + + // InfoType: The type of finding this stat is for. + InfoType *GooglePrivacyDlpV2beta1InfoType `json:"infoType,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Count") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Count") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2beta1InfoTypeStatistics) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2beta1InfoTypeStatistics + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2beta1InspectConfig: Configuration description of +// the scanning process. +// When used with redactContent only info_types and min_likelihood are +// currently +// used. +type GooglePrivacyDlpV2beta1InspectConfig struct { + // CustomInfoTypes: Custom info types provided by the user. + CustomInfoTypes []*GooglePrivacyDlpV2beta1CustomInfoType `json:"customInfoTypes,omitempty"` + + // ExcludeTypes: When true, excludes type information of the findings. + ExcludeTypes bool `json:"excludeTypes,omitempty"` + + // IncludeQuote: When true, a contextual quote from the data that + // triggered a finding is + // included in the response; see Finding.quote. + IncludeQuote bool `json:"includeQuote,omitempty"` + + // InfoTypeLimits: Configuration of findings limit given for specified + // info types. + InfoTypeLimits []*GooglePrivacyDlpV2beta1InfoTypeLimit `json:"infoTypeLimits,omitempty"` + + // InfoTypes: Restricts what info_types to look for. The values must + // correspond to + // InfoType values returned by ListInfoTypes or found in + // documentation. + // Empty info_types runs all enabled detectors. + InfoTypes []*GooglePrivacyDlpV2beta1InfoType `json:"infoTypes,omitempty"` + + // MaxFindings: Limits the number of findings per content item or long + // running operation. + MaxFindings int64 `json:"maxFindings,omitempty"` + + // MinLikelihood: Only returns findings equal or above this threshold. + // + // Possible values: + // "LIKELIHOOD_UNSPECIFIED" - Default value; information with all + // likelihoods is included. + // "VERY_UNLIKELY" - Few matching elements. + // "UNLIKELY" + // "POSSIBLE" - Some matching elements. + // "LIKELY" + // "VERY_LIKELY" - Many matching elements. + MinLikelihood string `json:"minLikelihood,omitempty"` + + // ForceSendFields is a list of field names (e.g. "CustomInfoTypes") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "CustomInfoTypes") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2beta1InspectConfig) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2beta1InspectConfig + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2beta1InspectOperationMetadata: Metadata returned +// within GetOperation for an inspect request. +type GooglePrivacyDlpV2beta1InspectOperationMetadata struct { + // CreateTime: The time which this request was started. + CreateTime string `json:"createTime,omitempty"` + + InfoTypeStats []*GooglePrivacyDlpV2beta1InfoTypeStatistics `json:"infoTypeStats,omitempty"` + + // ProcessedBytes: Total size in bytes that were processed. + ProcessedBytes int64 `json:"processedBytes,omitempty,string"` + + // RequestInspectConfig: The inspect config used to create the + // Operation. + RequestInspectConfig *GooglePrivacyDlpV2beta1InspectConfig `json:"requestInspectConfig,omitempty"` + + // RequestOutputConfig: Optional location to store findings. + RequestOutputConfig *GooglePrivacyDlpV2beta1OutputStorageConfig `json:"requestOutputConfig,omitempty"` + + // RequestStorageConfig: The storage config used to create the + // Operation. + RequestStorageConfig *GooglePrivacyDlpV2beta1StorageConfig `json:"requestStorageConfig,omitempty"` + + // TotalEstimatedBytes: Estimate of the number of bytes to process. + TotalEstimatedBytes int64 `json:"totalEstimatedBytes,omitempty,string"` + + // ForceSendFields is a list of field names (e.g. "CreateTime") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "CreateTime") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2beta1InspectOperationMetadata) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2beta1InspectOperationMetadata + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2beta1InspectOperationResult: The operational data. +type GooglePrivacyDlpV2beta1InspectOperationResult struct { + // Name: The server-assigned name, which is only unique within the same + // service that + // originally returns it. If you use the default HTTP mapping, + // the + // `name` should have the format of `inspect/results/{id}`. + Name string `json:"name,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Name") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Name") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2beta1InspectOperationResult) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2beta1InspectOperationResult + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2beta1KAnonymityConfig: k-anonymity metric, used for +// analysis of reidentification risk. +type GooglePrivacyDlpV2beta1KAnonymityConfig struct { + // EntityId: Optional message indicating that each distinct entity_id + // should not + // contribute to the k-anonymity count more than once per equivalence + // class. + // If an entity_id appears on several rows with different + // quasi-identifier + // tuples, it will contribute to each count exactly once. + // + // This can lead to unexpected results. Consider a table where ID 1 + // is + // associated to quasi-identifier "foo", ID 2 to "bar", and ID 3 to + // *both* + // quasi-identifiers "foo" and "bar" (on separate rows), and where this + // ID + // is used as entity_id. Then, the anonymity value associated to ID 3 + // will + // be 2, even if it is the only ID to be associated to both values "foo" + // and + // "bar". + EntityId *GooglePrivacyDlpV2beta1EntityId `json:"entityId,omitempty"` + + // QuasiIds: Set of fields to compute k-anonymity over. When multiple + // fields are + // specified, they are considered a single composite key. Structs + // and + // repeated data types are not supported; however, nested fields + // are + // supported so long as they are not structs themselves or nested + // within + // a repeated field. + QuasiIds []*GooglePrivacyDlpV2beta1FieldId `json:"quasiIds,omitempty"` + + // ForceSendFields is a list of field names (e.g. "EntityId") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "EntityId") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2beta1KAnonymityConfig) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2beta1KAnonymityConfig + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2beta1KAnonymityEquivalenceClass: The set of +// columns' values that share the same k-anonymity value. +type GooglePrivacyDlpV2beta1KAnonymityEquivalenceClass struct { + // EquivalenceClassSize: Size of the equivalence class, for example + // number of rows with the + // above set of values. + EquivalenceClassSize int64 `json:"equivalenceClassSize,omitempty,string"` + + // QuasiIdsValues: Set of values defining the equivalence class. One + // value per + // quasi-identifier column in the original KAnonymity metric + // message. + // The order is always the same as the original request. + QuasiIdsValues []*GooglePrivacyDlpV2beta1Value `json:"quasiIdsValues,omitempty"` + + // ForceSendFields is a list of field names (e.g. + // "EquivalenceClassSize") to unconditionally include in API requests. + // By default, fields with empty values are omitted from API requests. + // However, any non-pointer, non-interface field appearing in + // ForceSendFields will be sent to the server regardless of whether the + // field is empty or not. This may be used to include empty fields in + // Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "EquivalenceClassSize") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2beta1KAnonymityEquivalenceClass) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2beta1KAnonymityEquivalenceClass + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2beta1KAnonymityHistogramBucket: Histogram bucket of +// equivalence class sizes in the table. +type GooglePrivacyDlpV2beta1KAnonymityHistogramBucket struct { + // BucketSize: Total number of records in this bucket. + BucketSize int64 `json:"bucketSize,omitempty,string"` + + // BucketValues: Sample of equivalence classes in this bucket. The total + // number of + // classes returned per bucket is capped at 20. + BucketValues []*GooglePrivacyDlpV2beta1KAnonymityEquivalenceClass `json:"bucketValues,omitempty"` + + // EquivalenceClassSizeLowerBound: Lower bound on the size of the + // equivalence classes in this bucket. + EquivalenceClassSizeLowerBound int64 `json:"equivalenceClassSizeLowerBound,omitempty,string"` + + // EquivalenceClassSizeUpperBound: Upper bound on the size of the + // equivalence classes in this bucket. + EquivalenceClassSizeUpperBound int64 `json:"equivalenceClassSizeUpperBound,omitempty,string"` + + // ForceSendFields is a list of field names (e.g. "BucketSize") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "BucketSize") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2beta1KAnonymityHistogramBucket) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2beta1KAnonymityHistogramBucket + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2beta1KAnonymityResult: Result of the k-anonymity +// computation. +type GooglePrivacyDlpV2beta1KAnonymityResult struct { + // EquivalenceClassHistogramBuckets: Histogram of k-anonymity + // equivalence classes. + EquivalenceClassHistogramBuckets []*GooglePrivacyDlpV2beta1KAnonymityHistogramBucket `json:"equivalenceClassHistogramBuckets,omitempty"` + + // ForceSendFields is a list of field names (e.g. + // "EquivalenceClassHistogramBuckets") to unconditionally include in API + // requests. By default, fields with empty values are omitted from API + // requests. However, any non-pointer, non-interface field appearing in + // ForceSendFields will be sent to the server regardless of whether the + // field is empty or not. This may be used to include empty fields in + // Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. + // "EquivalenceClassHistogramBuckets") to include in API requests with + // the JSON null value. By default, fields with empty values are omitted + // from API requests. However, any field with an empty value appearing + // in NullFields will be sent to the server as null. It is an error if a + // field in this list has a non-empty value. This may be used to include + // null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2beta1KAnonymityResult) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2beta1KAnonymityResult + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2beta1KMapEstimationConfig: Reidentifiability +// metric. This corresponds to a risk model similar to what +// is called "journalist risk" in the literature, except the attack +// dataset is +// statistically modeled instead of being perfectly known. This can be +// done +// using publicly available data (like the US Census), or using a +// custom +// statistical model (indicated as one or several BigQuery tables), or +// by +// extrapolating from the distribution of values in the input dataset. +type GooglePrivacyDlpV2beta1KMapEstimationConfig struct { + // AuxiliaryTables: Several auxiliary tables can be used in the + // analysis. Each custom_tag + // used to tag a quasi-identifiers column must appear in exactly one + // column + // of one auxiliary table. + AuxiliaryTables []*GooglePrivacyDlpV2beta1AuxiliaryTable `json:"auxiliaryTables,omitempty"` + + // QuasiIds: Fields considered to be quasi-identifiers. No two columns + // can have the + // same tag. [required] + QuasiIds []*GooglePrivacyDlpV2beta1TaggedField `json:"quasiIds,omitempty"` + + // RegionCode: ISO 3166-1 alpha-2 region code to use in the statistical + // modeling. + // Required if no column is tagged with a region-specific InfoType + // (like + // US_ZIP_5) or a region code. + RegionCode string `json:"regionCode,omitempty"` + + // ForceSendFields is a list of field names (e.g. "AuxiliaryTables") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "AuxiliaryTables") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2beta1KMapEstimationConfig) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2beta1KMapEstimationConfig + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2beta1KMapEstimationHistogramBucket: A +// KMapEstimationHistogramBucket message with the following values: +// min_anonymity: 3 +// max_anonymity: 5 +// frequency: 42 +// means that there are 42 records whose quasi-identifier values +// correspond +// to 3, 4 or 5 people in the overlying population. An important +// particular +// case is when min_anonymity = max_anonymity = 1: the frequency field +// then +// corresponds to the number of uniquely identifiable records. +type GooglePrivacyDlpV2beta1KMapEstimationHistogramBucket struct { + // BucketSize: Number of records within these anonymity bounds. + BucketSize int64 `json:"bucketSize,omitempty,string"` + + // BucketValues: Sample of quasi-identifier tuple values in this bucket. + // The total + // number of classes returned per bucket is capped at 20. + BucketValues []*GooglePrivacyDlpV2beta1KMapEstimationQuasiIdValues `json:"bucketValues,omitempty"` + + // MaxAnonymity: Always greater than or equal to min_anonymity. + MaxAnonymity int64 `json:"maxAnonymity,omitempty,string"` + + // MinAnonymity: Always positive. + MinAnonymity int64 `json:"minAnonymity,omitempty,string"` + + // ForceSendFields is a list of field names (e.g. "BucketSize") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "BucketSize") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2beta1KMapEstimationHistogramBucket) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2beta1KMapEstimationHistogramBucket + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2beta1KMapEstimationQuasiIdValues: A tuple of values +// for the quasi-identifier columns. +type GooglePrivacyDlpV2beta1KMapEstimationQuasiIdValues struct { + // EstimatedAnonymity: The estimated anonymity for these + // quasi-identifier values. + EstimatedAnonymity int64 `json:"estimatedAnonymity,omitempty,string"` + + // QuasiIdsValues: The quasi-identifier values. + QuasiIdsValues []*GooglePrivacyDlpV2beta1Value `json:"quasiIdsValues,omitempty"` + + // ForceSendFields is a list of field names (e.g. "EstimatedAnonymity") + // to unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "EstimatedAnonymity") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2beta1KMapEstimationQuasiIdValues) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2beta1KMapEstimationQuasiIdValues + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2beta1KMapEstimationResult: Result of the +// reidentifiability analysis. Note that these results are +// an +// estimation, not exact values. +type GooglePrivacyDlpV2beta1KMapEstimationResult struct { + // KMapEstimationHistogram: The intervals [min_anonymity, max_anonymity] + // do not overlap. If a value + // doesn't correspond to any such interval, the associated frequency + // is + // zero. For example, the following records: + // {min_anonymity: 1, max_anonymity: 1, frequency: 17} + // {min_anonymity: 2, max_anonymity: 3, frequency: 42} + // {min_anonymity: 5, max_anonymity: 10, frequency: 99} + // mean that there are no record with an estimated anonymity of 4, 5, + // or + // larger than 10. + KMapEstimationHistogram []*GooglePrivacyDlpV2beta1KMapEstimationHistogramBucket `json:"kMapEstimationHistogram,omitempty"` + + // ForceSendFields is a list of field names (e.g. + // "KMapEstimationHistogram") to unconditionally include in API + // requests. By default, fields with empty values are omitted from API + // requests. However, any non-pointer, non-interface field appearing in + // ForceSendFields will be sent to the server regardless of whether the + // field is empty or not. This may be used to include empty fields in + // Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "KMapEstimationHistogram") + // to include in API requests with the JSON null value. By default, + // fields with empty values are omitted from API requests. However, any + // field with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2beta1KMapEstimationResult) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2beta1KMapEstimationResult + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2beta1KindExpression: A representation of a +// Datastore kind. +type GooglePrivacyDlpV2beta1KindExpression struct { + // Name: The name of the kind. + Name string `json:"name,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Name") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Name") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2beta1KindExpression) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2beta1KindExpression + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2beta1LDiversityConfig: l-diversity metric, used for +// analysis of reidentification risk. +type GooglePrivacyDlpV2beta1LDiversityConfig struct { + // QuasiIds: Set of quasi-identifiers indicating how equivalence classes + // are + // defined for the l-diversity computation. When multiple fields + // are + // specified, they are considered a single composite key. + QuasiIds []*GooglePrivacyDlpV2beta1FieldId `json:"quasiIds,omitempty"` + + // SensitiveAttribute: Sensitive field for computing the l-value. + SensitiveAttribute *GooglePrivacyDlpV2beta1FieldId `json:"sensitiveAttribute,omitempty"` + + // ForceSendFields is a list of field names (e.g. "QuasiIds") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "QuasiIds") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2beta1LDiversityConfig) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2beta1LDiversityConfig + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2beta1LDiversityEquivalenceClass: The set of +// columns' values that share the same l-diversity value. +type GooglePrivacyDlpV2beta1LDiversityEquivalenceClass struct { + // EquivalenceClassSize: Size of the k-anonymity equivalence class. + EquivalenceClassSize int64 `json:"equivalenceClassSize,omitempty,string"` + + // NumDistinctSensitiveValues: Number of distinct sensitive values in + // this equivalence class. + NumDistinctSensitiveValues int64 `json:"numDistinctSensitiveValues,omitempty,string"` + + // QuasiIdsValues: Quasi-identifier values defining the k-anonymity + // equivalence + // class. The order is always the same as the original request. + QuasiIdsValues []*GooglePrivacyDlpV2beta1Value `json:"quasiIdsValues,omitempty"` + + // TopSensitiveValues: Estimated frequencies of top sensitive values. + TopSensitiveValues []*GooglePrivacyDlpV2beta1ValueFrequency `json:"topSensitiveValues,omitempty"` + + // ForceSendFields is a list of field names (e.g. + // "EquivalenceClassSize") to unconditionally include in API requests. + // By default, fields with empty values are omitted from API requests. + // However, any non-pointer, non-interface field appearing in + // ForceSendFields will be sent to the server regardless of whether the + // field is empty or not. This may be used to include empty fields in + // Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "EquivalenceClassSize") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2beta1LDiversityEquivalenceClass) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2beta1LDiversityEquivalenceClass + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2beta1LDiversityHistogramBucket: Histogram bucket of +// sensitive value frequencies in the table. +type GooglePrivacyDlpV2beta1LDiversityHistogramBucket struct { + // BucketSize: Total number of records in this bucket. + BucketSize int64 `json:"bucketSize,omitempty,string"` + + // BucketValues: Sample of equivalence classes in this bucket. The total + // number of + // classes returned per bucket is capped at 20. + BucketValues []*GooglePrivacyDlpV2beta1LDiversityEquivalenceClass `json:"bucketValues,omitempty"` + + // SensitiveValueFrequencyLowerBound: Lower bound on the sensitive value + // frequencies of the equivalence + // classes in this bucket. + SensitiveValueFrequencyLowerBound int64 `json:"sensitiveValueFrequencyLowerBound,omitempty,string"` + + // SensitiveValueFrequencyUpperBound: Upper bound on the sensitive value + // frequencies of the equivalence + // classes in this bucket. + SensitiveValueFrequencyUpperBound int64 `json:"sensitiveValueFrequencyUpperBound,omitempty,string"` + + // ForceSendFields is a list of field names (e.g. "BucketSize") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "BucketSize") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2beta1LDiversityHistogramBucket) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2beta1LDiversityHistogramBucket + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2beta1LDiversityResult: Result of the l-diversity +// computation. +type GooglePrivacyDlpV2beta1LDiversityResult struct { + // SensitiveValueFrequencyHistogramBuckets: Histogram of l-diversity + // equivalence class sensitive value frequencies. + SensitiveValueFrequencyHistogramBuckets []*GooglePrivacyDlpV2beta1LDiversityHistogramBucket `json:"sensitiveValueFrequencyHistogramBuckets,omitempty"` + + // ForceSendFields is a list of field names (e.g. + // "SensitiveValueFrequencyHistogramBuckets") to unconditionally include + // in API requests. By default, fields with empty values are omitted + // from API requests. However, any non-pointer, non-interface field + // appearing in ForceSendFields will be sent to the server regardless of + // whether the field is empty or not. This may be used to include empty + // fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. + // "SensitiveValueFrequencyHistogramBuckets") to include in API requests + // with the JSON null value. By default, fields with empty values are + // omitted from API requests. However, any field with an empty value + // appearing in NullFields will be sent to the server as null. It is an + // error if a field in this list has a non-empty value. This may be used + // to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2beta1LDiversityResult) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2beta1LDiversityResult + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2beta1NumericalStatsConfig: Compute numerical stats +// over an individual column, including +// min, max, and quantiles. +type GooglePrivacyDlpV2beta1NumericalStatsConfig struct { + // Field: Field to compute numerical stats on. Supported types + // are + // integer, float, date, datetime, timestamp, time. + Field *GooglePrivacyDlpV2beta1FieldId `json:"field,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Field") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Field") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2beta1NumericalStatsConfig) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2beta1NumericalStatsConfig + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2beta1NumericalStatsResult: Result of the numerical +// stats computation. +type GooglePrivacyDlpV2beta1NumericalStatsResult struct { + // MaxValue: Maximum value appearing in the column. + MaxValue *GooglePrivacyDlpV2beta1Value `json:"maxValue,omitempty"` + + // MinValue: Minimum value appearing in the column. + MinValue *GooglePrivacyDlpV2beta1Value `json:"minValue,omitempty"` + + // QuantileValues: List of 99 values that partition the set of field + // values into 100 equal + // sized buckets. + QuantileValues []*GooglePrivacyDlpV2beta1Value `json:"quantileValues,omitempty"` + + // ForceSendFields is a list of field names (e.g. "MaxValue") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "MaxValue") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2beta1NumericalStatsResult) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2beta1NumericalStatsResult + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2beta1OutputStorageConfig: Cloud repository for +// storing output. +type GooglePrivacyDlpV2beta1OutputStorageConfig struct { + // StoragePath: The path to a Google Cloud Storage location to store + // output. + // The bucket must already exist and + // the Google APIs service account for DLP must have write permission + // to + // write to the given bucket. + // Results are split over multiple csv files with each file name + // matching + // the pattern "[operation_id]_[count].csv", for + // example + // `3094877188788974909_1.csv`. The `operation_id` matches + // the + // identifier for the Operation, and the `count` is a counter used + // for + // tracking the number of files written. + // + // The CSV file(s) contain the following columns regardless of storage + // type + // scanned: + // - id + // - info_type + // - likelihood + // - byte size of finding + // - quote + // - timestamp + // + // For Cloud Storage the next columns are: + // + // - file_path + // - start_offset + // + // For Cloud Datastore the next columns are: + // + // - project_id + // - namespace_id + // - path + // - column_name + // - offset + // + // For BigQuery the next columns are: + // + // - row_number + // - project_id + // - dataset_id + // - table_id + StoragePath *GooglePrivacyDlpV2beta1CloudStoragePath `json:"storagePath,omitempty"` + + // Table: Store findings in a new table in the dataset. + Table *GooglePrivacyDlpV2beta1BigQueryTable `json:"table,omitempty"` + + // ForceSendFields is a list of field names (e.g. "StoragePath") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "StoragePath") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2beta1OutputStorageConfig) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2beta1OutputStorageConfig + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2beta1PartitionId: Datastore partition ID. +// A partition ID identifies a grouping of entities. The grouping is +// always +// by project and namespace, however the namespace ID may be empty. +// +// A partition ID contains several dimensions: +// project ID and namespace ID. +type GooglePrivacyDlpV2beta1PartitionId struct { + // NamespaceId: If not empty, the ID of the namespace to which the + // entities belong. + NamespaceId string `json:"namespaceId,omitempty"` + + // ProjectId: The ID of the project to which the entities belong. + ProjectId string `json:"projectId,omitempty"` + + // ForceSendFields is a list of field names (e.g. "NamespaceId") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "NamespaceId") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2beta1PartitionId) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2beta1PartitionId + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2beta1PrivacyMetric: Privacy metric to compute for +// reidentification risk analysis. +type GooglePrivacyDlpV2beta1PrivacyMetric struct { + CategoricalStatsConfig *GooglePrivacyDlpV2beta1CategoricalStatsConfig `json:"categoricalStatsConfig,omitempty"` + + KAnonymityConfig *GooglePrivacyDlpV2beta1KAnonymityConfig `json:"kAnonymityConfig,omitempty"` + + KMapEstimationConfig *GooglePrivacyDlpV2beta1KMapEstimationConfig `json:"kMapEstimationConfig,omitempty"` + + LDiversityConfig *GooglePrivacyDlpV2beta1LDiversityConfig `json:"lDiversityConfig,omitempty"` + + NumericalStatsConfig *GooglePrivacyDlpV2beta1NumericalStatsConfig `json:"numericalStatsConfig,omitempty"` + + // ForceSendFields is a list of field names (e.g. + // "CategoricalStatsConfig") to unconditionally include in API requests. + // By default, fields with empty values are omitted from API requests. + // However, any non-pointer, non-interface field appearing in + // ForceSendFields will be sent to the server regardless of whether the + // field is empty or not. This may be used to include empty fields in + // Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "CategoricalStatsConfig") + // to include in API requests with the JSON null value. By default, + // fields with empty values are omitted from API requests. However, any + // field with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2beta1PrivacyMetric) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2beta1PrivacyMetric + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2beta1Projection: A representation of a Datastore +// property in a projection. +type GooglePrivacyDlpV2beta1Projection struct { + // Property: The property to project. + Property *GooglePrivacyDlpV2beta1PropertyReference `json:"property,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Property") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Property") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2beta1Projection) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2beta1Projection + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2beta1PropertyReference: A reference to a property +// relative to the Datastore kind expressions. +type GooglePrivacyDlpV2beta1PropertyReference struct { + // Name: The name of the property. + // If name includes "."s, it may be interpreted as a property name path. + Name string `json:"name,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Name") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Name") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2beta1PropertyReference) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2beta1PropertyReference + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2beta1QuasiIdField: A quasi-identifier column has a +// custom_tag, used to know which column +// in the data corresponds to which column in the statistical model. +type GooglePrivacyDlpV2beta1QuasiIdField struct { + CustomTag string `json:"customTag,omitempty"` + + Field *GooglePrivacyDlpV2beta1FieldId `json:"field,omitempty"` + + // ForceSendFields is a list of field names (e.g. "CustomTag") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "CustomTag") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2beta1QuasiIdField) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2beta1QuasiIdField + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2beta1RiskAnalysisOperationMetadata: Metadata +// returned within +// the +// [`riskAnalysis.operations.get`](/dlp/docs/reference/rest/v2beta1/r +// iskAnalysis.operations/get) +// for risk analysis. +type GooglePrivacyDlpV2beta1RiskAnalysisOperationMetadata struct { + // CreateTime: The time which this request was started. + CreateTime string `json:"createTime,omitempty"` + + // RequestedPrivacyMetric: Privacy metric to compute. + RequestedPrivacyMetric *GooglePrivacyDlpV2beta1PrivacyMetric `json:"requestedPrivacyMetric,omitempty"` + + // RequestedSourceTable: Input dataset to compute metrics over. + RequestedSourceTable *GooglePrivacyDlpV2beta1BigQueryTable `json:"requestedSourceTable,omitempty"` + + // ForceSendFields is a list of field names (e.g. "CreateTime") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "CreateTime") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2beta1RiskAnalysisOperationMetadata) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2beta1RiskAnalysisOperationMetadata + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2beta1RiskAnalysisOperationResult: Result of a risk +// analysis +// [`Operation`](/dlp/docs/reference/rest/v2beta1/inspect.operat +// ions) +// request. +type GooglePrivacyDlpV2beta1RiskAnalysisOperationResult struct { + CategoricalStatsResult *GooglePrivacyDlpV2beta1CategoricalStatsResult `json:"categoricalStatsResult,omitempty"` + + KAnonymityResult *GooglePrivacyDlpV2beta1KAnonymityResult `json:"kAnonymityResult,omitempty"` + + KMapEstimationResult *GooglePrivacyDlpV2beta1KMapEstimationResult `json:"kMapEstimationResult,omitempty"` + + LDiversityResult *GooglePrivacyDlpV2beta1LDiversityResult `json:"lDiversityResult,omitempty"` + + NumericalStatsResult *GooglePrivacyDlpV2beta1NumericalStatsResult `json:"numericalStatsResult,omitempty"` + + // ForceSendFields is a list of field names (e.g. + // "CategoricalStatsResult") to unconditionally include in API requests. + // By default, fields with empty values are omitted from API requests. + // However, any non-pointer, non-interface field appearing in + // ForceSendFields will be sent to the server regardless of whether the + // field is empty or not. This may be used to include empty fields in + // Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "CategoricalStatsResult") + // to include in API requests with the JSON null value. By default, + // fields with empty values are omitted from API requests. However, any + // field with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2beta1RiskAnalysisOperationResult) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2beta1RiskAnalysisOperationResult + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2beta1StorageConfig: Shared message indicating Cloud +// storage type. +type GooglePrivacyDlpV2beta1StorageConfig struct { + // BigQueryOptions: BigQuery options specification. + BigQueryOptions *GooglePrivacyDlpV2beta1BigQueryOptions `json:"bigQueryOptions,omitempty"` + + // CloudStorageOptions: Google Cloud Storage options specification. + CloudStorageOptions *GooglePrivacyDlpV2beta1CloudStorageOptions `json:"cloudStorageOptions,omitempty"` + + // DatastoreOptions: Google Cloud Datastore options specification. + DatastoreOptions *GooglePrivacyDlpV2beta1DatastoreOptions `json:"datastoreOptions,omitempty"` + + // ForceSendFields is a list of field names (e.g. "BigQueryOptions") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "BigQueryOptions") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2beta1StorageConfig) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2beta1StorageConfig + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2beta1SurrogateType: Message for detecting output +// from deidentification transformations +// such +// as +// [`CryptoReplaceFfxFpeConfig`](/dlp/docs/reference/rest/v2beta1/cont +// ent/deidentify#CryptoReplaceFfxFpeConfig). +// These types of transformations are +// those that perform pseudonymization, thereby producing a "surrogate" +// as +// output. This should be used in conjunction with a field on +// the +// transformation such as `surrogate_info_type`. This custom info type +// does +// not support the use of `detection_rules`. +type GooglePrivacyDlpV2beta1SurrogateType struct { +} + +// GooglePrivacyDlpV2beta1TaggedField: A column with a semantic tag +// attached. +type GooglePrivacyDlpV2beta1TaggedField struct { + // CustomTag: A column can be tagged with a custom tag. In this case, + // the user must + // indicate an auxiliary table that contains statistical information + // on + // the possible values of this column (below). + CustomTag string `json:"customTag,omitempty"` + + // Field: Identifies the column. [required] + Field *GooglePrivacyDlpV2beta1FieldId `json:"field,omitempty"` + + // Inferred: If no semantic tag is indicated, we infer the statistical + // model from + // the distribution of values in the input data + Inferred *GoogleProtobufEmpty `json:"inferred,omitempty"` + + // InfoType: A column can be tagged with a InfoType to use the relevant + // public + // dataset as a statistical model of population, if available. + // We + // currently support US ZIP codes, region codes, ages and genders. + InfoType *GooglePrivacyDlpV2beta1InfoType `json:"infoType,omitempty"` + + // ForceSendFields is a list of field names (e.g. "CustomTag") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "CustomTag") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2beta1TaggedField) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2beta1TaggedField + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2beta1Value: Set of primitive values supported by +// the system. +// Note that for the purposes of inspection or transformation, the +// number +// of bytes considered to comprise a 'Value' is based on its +// representation +// as a UTF-8 encoded string. For example, if 'integer_value' is set +// to +// 123456789, the number of bytes would be counted as 9, even though +// an +// int64 only holds up to 8 bytes of data. +type GooglePrivacyDlpV2beta1Value struct { + BooleanValue bool `json:"booleanValue,omitempty"` + + DateValue *GoogleTypeDate `json:"dateValue,omitempty"` + + FloatValue float64 `json:"floatValue,omitempty"` + + IntegerValue int64 `json:"integerValue,omitempty,string"` + + StringValue string `json:"stringValue,omitempty"` + + TimeValue *GoogleTypeTimeOfDay `json:"timeValue,omitempty"` + + TimestampValue string `json:"timestampValue,omitempty"` + + // ForceSendFields is a list of field names (e.g. "BooleanValue") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "BooleanValue") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2beta1Value) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2beta1Value + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +func (s *GooglePrivacyDlpV2beta1Value) UnmarshalJSON(data []byte) error { + type NoMethod GooglePrivacyDlpV2beta1Value + var s1 struct { + FloatValue gensupport.JSONFloat64 `json:"floatValue"` + *NoMethod + } + s1.NoMethod = (*NoMethod)(s) + if err := json.Unmarshal(data, &s1); err != nil { + return err + } + s.FloatValue = float64(s1.FloatValue) + return nil +} + +// GooglePrivacyDlpV2beta1ValueFrequency: A value of a field, including +// its frequency. +type GooglePrivacyDlpV2beta1ValueFrequency struct { + // Count: How many times the value is contained in the field. + Count int64 `json:"count,omitempty,string"` + + // Value: A value contained in the field in question. + Value *GooglePrivacyDlpV2beta1Value `json:"value,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Count") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Count") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2beta1ValueFrequency) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2beta1ValueFrequency + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2beta1WordList: Message defining a list of words or +// phrases to search for in the data. +type GooglePrivacyDlpV2beta1WordList struct { + // Words: Words or phrases defining the dictionary. The dictionary must + // contain + // at least one phrase and every phrase must contain at least 2 + // characters + // that are letters or digits. [required] + Words []string `json:"words,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Words") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Words") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2beta1WordList) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2beta1WordList + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleProtobufEmpty: A generic empty message that you can re-use to +// avoid defining duplicated +// empty messages in your APIs. A typical example is to use it as the +// request +// or the response type of an API method. For instance: +// +// service Foo { +// rpc Bar(google.protobuf.Empty) returns +// (google.protobuf.Empty); +// } +// +// The JSON representation for `Empty` is empty JSON object `{}`. +type GoogleProtobufEmpty struct { + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` +} + +// GoogleRpcStatus: The `Status` type defines a logical error model that +// is suitable for different +// programming environments, including REST APIs and RPC APIs. It is +// used by +// [gRPC](https://github.com/grpc). The error model is designed to +// be: +// +// - Simple to use and understand for most users +// - Flexible enough to meet unexpected needs +// +// # Overview +// +// The `Status` message contains three pieces of data: error code, error +// message, +// and error details. The error code should be an enum value +// of +// google.rpc.Code, but it may accept additional error codes if needed. +// The +// error message should be a developer-facing English message that +// helps +// developers *understand* and *resolve* the error. If a localized +// user-facing +// error message is needed, put the localized message in the error +// details or +// localize it in the client. The optional error details may contain +// arbitrary +// information about the error. There is a predefined set of error +// detail types +// in the package `google.rpc` that can be used for common error +// conditions. +// +// # Language mapping +// +// The `Status` message is the logical representation of the error +// model, but it +// is not necessarily the actual wire format. When the `Status` message +// is +// exposed in different client libraries and different wire protocols, +// it can be +// mapped differently. For example, it will likely be mapped to some +// exceptions +// in Java, but more likely mapped to some error codes in C. +// +// # Other uses +// +// The error model and the `Status` message can be used in a variety +// of +// environments, either with or without APIs, to provide a +// consistent developer experience across different +// environments. +// +// Example uses of this error model include: +// +// - Partial errors. If a service needs to return partial errors to the +// client, +// it may embed the `Status` in the normal response to indicate the +// partial +// errors. +// +// - Workflow errors. A typical workflow has multiple steps. Each step +// may +// have a `Status` message for error reporting. +// +// - Batch operations. If a client uses batch request and batch +// response, the +// `Status` message should be used directly inside batch response, +// one for +// each error sub-response. +// +// - Asynchronous operations. If an API call embeds asynchronous +// operation +// results in its response, the status of those operations should +// be +// represented directly using the `Status` message. +// +// - Logging. If some API errors are stored in logs, the message +// `Status` could +// be used directly after any stripping needed for security/privacy +// reasons. +type GoogleRpcStatus struct { + // Code: The status code, which should be an enum value of + // google.rpc.Code. + Code int64 `json:"code,omitempty"` + + // Details: A list of messages that carry the error details. There is a + // common set of + // message types for APIs to use. + Details []googleapi.RawMessage `json:"details,omitempty"` + + // Message: A developer-facing error message, which should be in + // English. Any + // user-facing error message should be localized and sent in + // the + // google.rpc.Status.details field, or localized by the client. + Message string `json:"message,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Code") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Code") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleRpcStatus) MarshalJSON() ([]byte, error) { + type NoMethod GoogleRpcStatus + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleTypeDate: Represents a whole calendar date, e.g. date of birth. +// The time of day and +// time zone are either specified elsewhere or are not significant. The +// date +// is relative to the Proleptic Gregorian Calendar. The day may be 0 +// to +// represent a year and month where the day is not significant, e.g. +// credit card +// expiration date. The year may be 0 to represent a month and day +// independent +// of year, e.g. anniversary date. Related types are +// google.type.TimeOfDay +// and `google.protobuf.Timestamp`. +type GoogleTypeDate struct { + // Day: Day of month. Must be from 1 to 31 and valid for the year and + // month, or 0 + // if specifying a year/month where the day is not significant. + Day int64 `json:"day,omitempty"` + + // Month: Month of year. Must be from 1 to 12. + Month int64 `json:"month,omitempty"` + + // Year: Year of date. Must be from 1 to 9999, or 0 if specifying a date + // without + // a year. + Year int64 `json:"year,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Day") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Day") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleTypeDate) MarshalJSON() ([]byte, error) { + type NoMethod GoogleTypeDate + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleTypeTimeOfDay: Represents a time of day. The date and time zone +// are either not significant +// or are specified elsewhere. An API may choose to allow leap seconds. +// Related +// types are google.type.Date and `google.protobuf.Timestamp`. +type GoogleTypeTimeOfDay struct { + // Hours: Hours of day in 24 hour format. Should be from 0 to 23. An API + // may choose + // to allow the value "24:00:00" for scenarios like business closing + // time. + Hours int64 `json:"hours,omitempty"` + + // Minutes: Minutes of hour of day. Must be from 0 to 59. + Minutes int64 `json:"minutes,omitempty"` + + // Nanos: Fractions of seconds in nanoseconds. Must be from 0 to + // 999,999,999. + Nanos int64 `json:"nanos,omitempty"` + + // Seconds: Seconds of minutes of the time. Must normally be from 0 to + // 59. An API may + // allow the value 60 if it allows leap-seconds. + Seconds int64 `json:"seconds,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Hours") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Hours") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleTypeTimeOfDay) MarshalJSON() ([]byte, error) { + type NoMethod GoogleTypeTimeOfDay + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// method id "dlp.infoTypes.list": + +type InfoTypesListCall struct { + s *Service + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// List: Returns a list of the sensitive information types that the DLP +// API +// supports. For more information, see [Listing supported +// predefined +// infoTypes](/dlp/docs/listing-infotypes). +func (r *InfoTypesService) List() *InfoTypesListCall { + c := &InfoTypesListCall{s: r.s, urlParams_: make(gensupport.URLParams)} + return c +} + +// Filter sets the optional parameter "filter": Optional filter to only +// return infoTypes supported by certain parts of the +// API. Defaults to supported_by=INSPECT. +func (c *InfoTypesListCall) Filter(filter string) *InfoTypesListCall { + c.urlParams_.Set("filter", filter) + return c +} + +// LanguageCode sets the optional parameter "languageCode": Optional +// BCP-47 language code for localized infoType friendly +// names. If omitted, or if localized strings are not available, +// en-US strings will be returned. +func (c *InfoTypesListCall) LanguageCode(languageCode string) *InfoTypesListCall { + c.urlParams_.Set("languageCode", languageCode) + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *InfoTypesListCall) Fields(s ...googleapi.Field) *InfoTypesListCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// IfNoneMatch sets the optional parameter which makes the operation +// fail if the object's ETag matches the given value. This is useful for +// getting updates only after the object has changed since the last +// request. Use googleapi.IsNotModified to check whether the response +// error from Do is the result of In-None-Match. +func (c *InfoTypesListCall) IfNoneMatch(entityTag string) *InfoTypesListCall { + c.ifNoneMatch_ = entityTag + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *InfoTypesListCall) Context(ctx context.Context) *InfoTypesListCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *InfoTypesListCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *InfoTypesListCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + if c.ifNoneMatch_ != "" { + reqHeaders.Set("If-None-Match", c.ifNoneMatch_) + } + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v2/infoTypes") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("GET", urls, body) + req.Header = reqHeaders + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "dlp.infoTypes.list" call. +// Exactly one of *GooglePrivacyDlpV2ListInfoTypesResponse or error will +// be non-nil. Any non-2xx status code is an error. Response headers are +// in either +// *GooglePrivacyDlpV2ListInfoTypesResponse.ServerResponse.Header or (if +// a response was returned at all) in error.(*googleapi.Error).Header. +// Use googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *InfoTypesListCall) Do(opts ...googleapi.CallOption) (*GooglePrivacyDlpV2ListInfoTypesResponse, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &GooglePrivacyDlpV2ListInfoTypesResponse{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Returns a list of the sensitive information types that the DLP API\nsupports. For more information, see [Listing supported predefined\ninfoTypes](/dlp/docs/listing-infotypes).", + // "flatPath": "v2/infoTypes", + // "httpMethod": "GET", + // "id": "dlp.infoTypes.list", + // "parameterOrder": [], + // "parameters": { + // "filter": { + // "description": "Optional filter to only return infoTypes supported by certain parts of the\nAPI. Defaults to supported_by=INSPECT.", + // "location": "query", + // "type": "string" + // }, + // "languageCode": { + // "description": "Optional BCP-47 language code for localized infoType friendly\nnames. If omitted, or if localized strings are not available,\nen-US strings will be returned.", + // "location": "query", + // "type": "string" + // } + // }, + // "path": "v2/infoTypes", + // "response": { + // "$ref": "GooglePrivacyDlpV2ListInfoTypesResponse" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "dlp.organizations.deidentifyTemplates.create": + +type OrganizationsDeidentifyTemplatesCreateCall struct { + s *Service + parent string + googleprivacydlpv2createdeidentifytemplaterequest *GooglePrivacyDlpV2CreateDeidentifyTemplateRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Create: Creates a de-identify template for re-using frequently used +// configuration +// for Deidentifying content, images, and storage. +func (r *OrganizationsDeidentifyTemplatesService) Create(parent string, googleprivacydlpv2createdeidentifytemplaterequest *GooglePrivacyDlpV2CreateDeidentifyTemplateRequest) *OrganizationsDeidentifyTemplatesCreateCall { + c := &OrganizationsDeidentifyTemplatesCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.parent = parent + c.googleprivacydlpv2createdeidentifytemplaterequest = googleprivacydlpv2createdeidentifytemplaterequest + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *OrganizationsDeidentifyTemplatesCreateCall) Fields(s ...googleapi.Field) *OrganizationsDeidentifyTemplatesCreateCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *OrganizationsDeidentifyTemplatesCreateCall) Context(ctx context.Context) *OrganizationsDeidentifyTemplatesCreateCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *OrganizationsDeidentifyTemplatesCreateCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *OrganizationsDeidentifyTemplatesCreateCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleprivacydlpv2createdeidentifytemplaterequest) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v2/{+parent}/deidentifyTemplates") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("POST", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "parent": c.parent, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "dlp.organizations.deidentifyTemplates.create" call. +// Exactly one of *GooglePrivacyDlpV2DeidentifyTemplate or error will be +// non-nil. Any non-2xx status code is an error. Response headers are in +// either *GooglePrivacyDlpV2DeidentifyTemplate.ServerResponse.Header or +// (if a response was returned at all) in +// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check +// whether the returned error was because http.StatusNotModified was +// returned. +func (c *OrganizationsDeidentifyTemplatesCreateCall) Do(opts ...googleapi.CallOption) (*GooglePrivacyDlpV2DeidentifyTemplate, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &GooglePrivacyDlpV2DeidentifyTemplate{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Creates a de-identify template for re-using frequently used configuration\nfor Deidentifying content, images, and storage.", + // "flatPath": "v2/organizations/{organizationsId}/deidentifyTemplates", + // "httpMethod": "POST", + // "id": "dlp.organizations.deidentifyTemplates.create", + // "parameterOrder": [ + // "parent" + // ], + // "parameters": { + // "parent": { + // "description": "The parent resource name, for example projects/my-project-id or\norganizations/my-org-id.", + // "location": "path", + // "pattern": "^organizations/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v2/{+parent}/deidentifyTemplates", + // "request": { + // "$ref": "GooglePrivacyDlpV2CreateDeidentifyTemplateRequest" + // }, + // "response": { + // "$ref": "GooglePrivacyDlpV2DeidentifyTemplate" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "dlp.organizations.deidentifyTemplates.delete": + +type OrganizationsDeidentifyTemplatesDeleteCall struct { + s *Service + name string + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Delete: Deletes a de-identify template. +func (r *OrganizationsDeidentifyTemplatesService) Delete(name string) *OrganizationsDeidentifyTemplatesDeleteCall { + c := &OrganizationsDeidentifyTemplatesDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *OrganizationsDeidentifyTemplatesDeleteCall) Fields(s ...googleapi.Field) *OrganizationsDeidentifyTemplatesDeleteCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *OrganizationsDeidentifyTemplatesDeleteCall) Context(ctx context.Context) *OrganizationsDeidentifyTemplatesDeleteCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *OrganizationsDeidentifyTemplatesDeleteCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *OrganizationsDeidentifyTemplatesDeleteCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v2/{+name}") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("DELETE", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "dlp.organizations.deidentifyTemplates.delete" call. +// Exactly one of *GoogleProtobufEmpty or error will be non-nil. Any +// non-2xx status code is an error. Response headers are in either +// *GoogleProtobufEmpty.ServerResponse.Header or (if a response was +// returned at all) in error.(*googleapi.Error).Header. Use +// googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *OrganizationsDeidentifyTemplatesDeleteCall) Do(opts ...googleapi.CallOption) (*GoogleProtobufEmpty, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &GoogleProtobufEmpty{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Deletes a de-identify template.", + // "flatPath": "v2/organizations/{organizationsId}/deidentifyTemplates/{deidentifyTemplatesId}", + // "httpMethod": "DELETE", + // "id": "dlp.organizations.deidentifyTemplates.delete", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "Resource name of the organization and deidentify template to be deleted,\nfor example `organizations/433245324/deidentifyTemplates/432452342` or\nprojects/project-id/deidentifyTemplates/432452342.", + // "location": "path", + // "pattern": "^organizations/[^/]+/deidentifyTemplates/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v2/{+name}", + // "response": { + // "$ref": "GoogleProtobufEmpty" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "dlp.organizations.deidentifyTemplates.get": + +type OrganizationsDeidentifyTemplatesGetCall struct { + s *Service + name string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// Get: Gets a de-identify template. +func (r *OrganizationsDeidentifyTemplatesService) Get(name string) *OrganizationsDeidentifyTemplatesGetCall { + c := &OrganizationsDeidentifyTemplatesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *OrganizationsDeidentifyTemplatesGetCall) Fields(s ...googleapi.Field) *OrganizationsDeidentifyTemplatesGetCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// IfNoneMatch sets the optional parameter which makes the operation +// fail if the object's ETag matches the given value. This is useful for +// getting updates only after the object has changed since the last +// request. Use googleapi.IsNotModified to check whether the response +// error from Do is the result of In-None-Match. +func (c *OrganizationsDeidentifyTemplatesGetCall) IfNoneMatch(entityTag string) *OrganizationsDeidentifyTemplatesGetCall { + c.ifNoneMatch_ = entityTag + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *OrganizationsDeidentifyTemplatesGetCall) Context(ctx context.Context) *OrganizationsDeidentifyTemplatesGetCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *OrganizationsDeidentifyTemplatesGetCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *OrganizationsDeidentifyTemplatesGetCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + if c.ifNoneMatch_ != "" { + reqHeaders.Set("If-None-Match", c.ifNoneMatch_) + } + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v2/{+name}") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("GET", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "dlp.organizations.deidentifyTemplates.get" call. +// Exactly one of *GooglePrivacyDlpV2DeidentifyTemplate or error will be +// non-nil. Any non-2xx status code is an error. Response headers are in +// either *GooglePrivacyDlpV2DeidentifyTemplate.ServerResponse.Header or +// (if a response was returned at all) in +// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check +// whether the returned error was because http.StatusNotModified was +// returned. +func (c *OrganizationsDeidentifyTemplatesGetCall) Do(opts ...googleapi.CallOption) (*GooglePrivacyDlpV2DeidentifyTemplate, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &GooglePrivacyDlpV2DeidentifyTemplate{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Gets a de-identify template.", + // "flatPath": "v2/organizations/{organizationsId}/deidentifyTemplates/{deidentifyTemplatesId}", + // "httpMethod": "GET", + // "id": "dlp.organizations.deidentifyTemplates.get", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "Resource name of the organization and deidentify template to be read, for\nexample `organizations/433245324/deidentifyTemplates/432452342` or\nprojects/project-id/deidentifyTemplates/432452342.", + // "location": "path", + // "pattern": "^organizations/[^/]+/deidentifyTemplates/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v2/{+name}", + // "response": { + // "$ref": "GooglePrivacyDlpV2DeidentifyTemplate" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "dlp.organizations.deidentifyTemplates.list": + +type OrganizationsDeidentifyTemplatesListCall struct { + s *Service + parent string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// List: Lists de-identify templates. +func (r *OrganizationsDeidentifyTemplatesService) List(parent string) *OrganizationsDeidentifyTemplatesListCall { + c := &OrganizationsDeidentifyTemplatesListCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.parent = parent + return c +} + +// PageSize sets the optional parameter "pageSize": Optional size of the +// page, can be limited by server. If zero server returns +// a page of max size 100. +func (c *OrganizationsDeidentifyTemplatesListCall) PageSize(pageSize int64) *OrganizationsDeidentifyTemplatesListCall { + c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) + return c +} + +// PageToken sets the optional parameter "pageToken": Optional page +// token to continue retrieval. Comes from previous call +// to `ListDeidentifyTemplates`. +func (c *OrganizationsDeidentifyTemplatesListCall) PageToken(pageToken string) *OrganizationsDeidentifyTemplatesListCall { + c.urlParams_.Set("pageToken", pageToken) + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *OrganizationsDeidentifyTemplatesListCall) Fields(s ...googleapi.Field) *OrganizationsDeidentifyTemplatesListCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// IfNoneMatch sets the optional parameter which makes the operation +// fail if the object's ETag matches the given value. This is useful for +// getting updates only after the object has changed since the last +// request. Use googleapi.IsNotModified to check whether the response +// error from Do is the result of In-None-Match. +func (c *OrganizationsDeidentifyTemplatesListCall) IfNoneMatch(entityTag string) *OrganizationsDeidentifyTemplatesListCall { + c.ifNoneMatch_ = entityTag + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *OrganizationsDeidentifyTemplatesListCall) Context(ctx context.Context) *OrganizationsDeidentifyTemplatesListCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *OrganizationsDeidentifyTemplatesListCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *OrganizationsDeidentifyTemplatesListCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + if c.ifNoneMatch_ != "" { + reqHeaders.Set("If-None-Match", c.ifNoneMatch_) + } + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v2/{+parent}/deidentifyTemplates") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("GET", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "parent": c.parent, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "dlp.organizations.deidentifyTemplates.list" call. +// Exactly one of *GooglePrivacyDlpV2ListDeidentifyTemplatesResponse or +// error will be non-nil. Any non-2xx status code is an error. Response +// headers are in either +// *GooglePrivacyDlpV2ListDeidentifyTemplatesResponse.ServerResponse.Head +// er or (if a response was returned at all) in +// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check +// whether the returned error was because http.StatusNotModified was +// returned. +func (c *OrganizationsDeidentifyTemplatesListCall) Do(opts ...googleapi.CallOption) (*GooglePrivacyDlpV2ListDeidentifyTemplatesResponse, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &GooglePrivacyDlpV2ListDeidentifyTemplatesResponse{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Lists de-identify templates.", + // "flatPath": "v2/organizations/{organizationsId}/deidentifyTemplates", + // "httpMethod": "GET", + // "id": "dlp.organizations.deidentifyTemplates.list", + // "parameterOrder": [ + // "parent" + // ], + // "parameters": { + // "pageSize": { + // "description": "Optional size of the page, can be limited by server. If zero server returns\na page of max size 100.", + // "format": "int32", + // "location": "query", + // "type": "integer" + // }, + // "pageToken": { + // "description": "Optional page token to continue retrieval. Comes from previous call\nto `ListDeidentifyTemplates`.", + // "location": "query", + // "type": "string" + // }, + // "parent": { + // "description": "The parent resource name, for example projects/my-project-id or\norganizations/my-org-id.", + // "location": "path", + // "pattern": "^organizations/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v2/{+parent}/deidentifyTemplates", + // "response": { + // "$ref": "GooglePrivacyDlpV2ListDeidentifyTemplatesResponse" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// Pages invokes f for each page of results. +// A non-nil error returned from f will halt the iteration. +// The provided context supersedes any context provided to the Context method. +func (c *OrganizationsDeidentifyTemplatesListCall) Pages(ctx context.Context, f func(*GooglePrivacyDlpV2ListDeidentifyTemplatesResponse) error) error { + c.ctx_ = ctx + defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point + for { + x, err := c.Do() + if err != nil { + return err + } + if err := f(x); err != nil { + return err + } + if x.NextPageToken == "" { + return nil + } + c.PageToken(x.NextPageToken) + } +} + +// method id "dlp.organizations.deidentifyTemplates.patch": + +type OrganizationsDeidentifyTemplatesPatchCall struct { + s *Service + name string + googleprivacydlpv2updatedeidentifytemplaterequest *GooglePrivacyDlpV2UpdateDeidentifyTemplateRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Patch: Updates the de-identify template. +func (r *OrganizationsDeidentifyTemplatesService) Patch(name string, googleprivacydlpv2updatedeidentifytemplaterequest *GooglePrivacyDlpV2UpdateDeidentifyTemplateRequest) *OrganizationsDeidentifyTemplatesPatchCall { + c := &OrganizationsDeidentifyTemplatesPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + c.googleprivacydlpv2updatedeidentifytemplaterequest = googleprivacydlpv2updatedeidentifytemplaterequest + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *OrganizationsDeidentifyTemplatesPatchCall) Fields(s ...googleapi.Field) *OrganizationsDeidentifyTemplatesPatchCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *OrganizationsDeidentifyTemplatesPatchCall) Context(ctx context.Context) *OrganizationsDeidentifyTemplatesPatchCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *OrganizationsDeidentifyTemplatesPatchCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *OrganizationsDeidentifyTemplatesPatchCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleprivacydlpv2updatedeidentifytemplaterequest) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v2/{+name}") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("PATCH", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "dlp.organizations.deidentifyTemplates.patch" call. +// Exactly one of *GooglePrivacyDlpV2DeidentifyTemplate or error will be +// non-nil. Any non-2xx status code is an error. Response headers are in +// either *GooglePrivacyDlpV2DeidentifyTemplate.ServerResponse.Header or +// (if a response was returned at all) in +// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check +// whether the returned error was because http.StatusNotModified was +// returned. +func (c *OrganizationsDeidentifyTemplatesPatchCall) Do(opts ...googleapi.CallOption) (*GooglePrivacyDlpV2DeidentifyTemplate, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &GooglePrivacyDlpV2DeidentifyTemplate{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Updates the de-identify template.", + // "flatPath": "v2/organizations/{organizationsId}/deidentifyTemplates/{deidentifyTemplatesId}", + // "httpMethod": "PATCH", + // "id": "dlp.organizations.deidentifyTemplates.patch", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "Resource name of organization and deidentify template to be updated, for\nexample `organizations/433245324/deidentifyTemplates/432452342` or\nprojects/project-id/deidentifyTemplates/432452342.", + // "location": "path", + // "pattern": "^organizations/[^/]+/deidentifyTemplates/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v2/{+name}", + // "request": { + // "$ref": "GooglePrivacyDlpV2UpdateDeidentifyTemplateRequest" + // }, + // "response": { + // "$ref": "GooglePrivacyDlpV2DeidentifyTemplate" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "dlp.organizations.inspectTemplates.create": + +type OrganizationsInspectTemplatesCreateCall struct { + s *Service + parent string + googleprivacydlpv2createinspecttemplaterequest *GooglePrivacyDlpV2CreateInspectTemplateRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Create: Creates an inspect template for re-using frequently used +// configuration +// for inspecting content, images, and storage. +func (r *OrganizationsInspectTemplatesService) Create(parent string, googleprivacydlpv2createinspecttemplaterequest *GooglePrivacyDlpV2CreateInspectTemplateRequest) *OrganizationsInspectTemplatesCreateCall { + c := &OrganizationsInspectTemplatesCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.parent = parent + c.googleprivacydlpv2createinspecttemplaterequest = googleprivacydlpv2createinspecttemplaterequest + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *OrganizationsInspectTemplatesCreateCall) Fields(s ...googleapi.Field) *OrganizationsInspectTemplatesCreateCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *OrganizationsInspectTemplatesCreateCall) Context(ctx context.Context) *OrganizationsInspectTemplatesCreateCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *OrganizationsInspectTemplatesCreateCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *OrganizationsInspectTemplatesCreateCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleprivacydlpv2createinspecttemplaterequest) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v2/{+parent}/inspectTemplates") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("POST", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "parent": c.parent, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "dlp.organizations.inspectTemplates.create" call. +// Exactly one of *GooglePrivacyDlpV2InspectTemplate or error will be +// non-nil. Any non-2xx status code is an error. Response headers are in +// either *GooglePrivacyDlpV2InspectTemplate.ServerResponse.Header or +// (if a response was returned at all) in +// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check +// whether the returned error was because http.StatusNotModified was +// returned. +func (c *OrganizationsInspectTemplatesCreateCall) Do(opts ...googleapi.CallOption) (*GooglePrivacyDlpV2InspectTemplate, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &GooglePrivacyDlpV2InspectTemplate{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Creates an inspect template for re-using frequently used configuration\nfor inspecting content, images, and storage.", + // "flatPath": "v2/organizations/{organizationsId}/inspectTemplates", + // "httpMethod": "POST", + // "id": "dlp.organizations.inspectTemplates.create", + // "parameterOrder": [ + // "parent" + // ], + // "parameters": { + // "parent": { + // "description": "The parent resource name, for example projects/my-project-id or\norganizations/my-org-id.", + // "location": "path", + // "pattern": "^organizations/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v2/{+parent}/inspectTemplates", + // "request": { + // "$ref": "GooglePrivacyDlpV2CreateInspectTemplateRequest" + // }, + // "response": { + // "$ref": "GooglePrivacyDlpV2InspectTemplate" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "dlp.organizations.inspectTemplates.delete": + +type OrganizationsInspectTemplatesDeleteCall struct { + s *Service + name string + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Delete: Deletes an inspect template. +func (r *OrganizationsInspectTemplatesService) Delete(name string) *OrganizationsInspectTemplatesDeleteCall { + c := &OrganizationsInspectTemplatesDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *OrganizationsInspectTemplatesDeleteCall) Fields(s ...googleapi.Field) *OrganizationsInspectTemplatesDeleteCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *OrganizationsInspectTemplatesDeleteCall) Context(ctx context.Context) *OrganizationsInspectTemplatesDeleteCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *OrganizationsInspectTemplatesDeleteCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *OrganizationsInspectTemplatesDeleteCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v2/{+name}") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("DELETE", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "dlp.organizations.inspectTemplates.delete" call. +// Exactly one of *GoogleProtobufEmpty or error will be non-nil. Any +// non-2xx status code is an error. Response headers are in either +// *GoogleProtobufEmpty.ServerResponse.Header or (if a response was +// returned at all) in error.(*googleapi.Error).Header. Use +// googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *OrganizationsInspectTemplatesDeleteCall) Do(opts ...googleapi.CallOption) (*GoogleProtobufEmpty, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &GoogleProtobufEmpty{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Deletes an inspect template.", + // "flatPath": "v2/organizations/{organizationsId}/inspectTemplates/{inspectTemplatesId}", + // "httpMethod": "DELETE", + // "id": "dlp.organizations.inspectTemplates.delete", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "Resource name of the organization and inspectTemplate to be deleted, for\nexample `organizations/433245324/inspectTemplates/432452342` or\nprojects/project-id/inspectTemplates/432452342.", + // "location": "path", + // "pattern": "^organizations/[^/]+/inspectTemplates/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v2/{+name}", + // "response": { + // "$ref": "GoogleProtobufEmpty" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "dlp.organizations.inspectTemplates.get": + +type OrganizationsInspectTemplatesGetCall struct { + s *Service + name string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// Get: Gets an inspect template. +func (r *OrganizationsInspectTemplatesService) Get(name string) *OrganizationsInspectTemplatesGetCall { + c := &OrganizationsInspectTemplatesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *OrganizationsInspectTemplatesGetCall) Fields(s ...googleapi.Field) *OrganizationsInspectTemplatesGetCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// IfNoneMatch sets the optional parameter which makes the operation +// fail if the object's ETag matches the given value. This is useful for +// getting updates only after the object has changed since the last +// request. Use googleapi.IsNotModified to check whether the response +// error from Do is the result of In-None-Match. +func (c *OrganizationsInspectTemplatesGetCall) IfNoneMatch(entityTag string) *OrganizationsInspectTemplatesGetCall { + c.ifNoneMatch_ = entityTag + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *OrganizationsInspectTemplatesGetCall) Context(ctx context.Context) *OrganizationsInspectTemplatesGetCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *OrganizationsInspectTemplatesGetCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *OrganizationsInspectTemplatesGetCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + if c.ifNoneMatch_ != "" { + reqHeaders.Set("If-None-Match", c.ifNoneMatch_) + } + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v2/{+name}") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("GET", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "dlp.organizations.inspectTemplates.get" call. +// Exactly one of *GooglePrivacyDlpV2InspectTemplate or error will be +// non-nil. Any non-2xx status code is an error. Response headers are in +// either *GooglePrivacyDlpV2InspectTemplate.ServerResponse.Header or +// (if a response was returned at all) in +// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check +// whether the returned error was because http.StatusNotModified was +// returned. +func (c *OrganizationsInspectTemplatesGetCall) Do(opts ...googleapi.CallOption) (*GooglePrivacyDlpV2InspectTemplate, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &GooglePrivacyDlpV2InspectTemplate{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Gets an inspect template.", + // "flatPath": "v2/organizations/{organizationsId}/inspectTemplates/{inspectTemplatesId}", + // "httpMethod": "GET", + // "id": "dlp.organizations.inspectTemplates.get", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "Resource name of the organization and inspectTemplate to be read, for\nexample `organizations/433245324/inspectTemplates/432452342` or\nprojects/project-id/inspectTemplates/432452342.", + // "location": "path", + // "pattern": "^organizations/[^/]+/inspectTemplates/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v2/{+name}", + // "response": { + // "$ref": "GooglePrivacyDlpV2InspectTemplate" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "dlp.organizations.inspectTemplates.list": + +type OrganizationsInspectTemplatesListCall struct { + s *Service + parent string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// List: Lists inspect templates. +func (r *OrganizationsInspectTemplatesService) List(parent string) *OrganizationsInspectTemplatesListCall { + c := &OrganizationsInspectTemplatesListCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.parent = parent + return c +} + +// PageSize sets the optional parameter "pageSize": Optional size of the +// page, can be limited by server. If zero server returns +// a page of max size 100. +func (c *OrganizationsInspectTemplatesListCall) PageSize(pageSize int64) *OrganizationsInspectTemplatesListCall { + c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) + return c +} + +// PageToken sets the optional parameter "pageToken": Optional page +// token to continue retrieval. Comes from previous call +// to `ListInspectTemplates`. +func (c *OrganizationsInspectTemplatesListCall) PageToken(pageToken string) *OrganizationsInspectTemplatesListCall { + c.urlParams_.Set("pageToken", pageToken) + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *OrganizationsInspectTemplatesListCall) Fields(s ...googleapi.Field) *OrganizationsInspectTemplatesListCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// IfNoneMatch sets the optional parameter which makes the operation +// fail if the object's ETag matches the given value. This is useful for +// getting updates only after the object has changed since the last +// request. Use googleapi.IsNotModified to check whether the response +// error from Do is the result of In-None-Match. +func (c *OrganizationsInspectTemplatesListCall) IfNoneMatch(entityTag string) *OrganizationsInspectTemplatesListCall { + c.ifNoneMatch_ = entityTag + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *OrganizationsInspectTemplatesListCall) Context(ctx context.Context) *OrganizationsInspectTemplatesListCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *OrganizationsInspectTemplatesListCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *OrganizationsInspectTemplatesListCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + if c.ifNoneMatch_ != "" { + reqHeaders.Set("If-None-Match", c.ifNoneMatch_) + } + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v2/{+parent}/inspectTemplates") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("GET", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "parent": c.parent, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "dlp.organizations.inspectTemplates.list" call. +// Exactly one of *GooglePrivacyDlpV2ListInspectTemplatesResponse or +// error will be non-nil. Any non-2xx status code is an error. Response +// headers are in either +// *GooglePrivacyDlpV2ListInspectTemplatesResponse.ServerResponse.Header +// or (if a response was returned at all) in +// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check +// whether the returned error was because http.StatusNotModified was +// returned. +func (c *OrganizationsInspectTemplatesListCall) Do(opts ...googleapi.CallOption) (*GooglePrivacyDlpV2ListInspectTemplatesResponse, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &GooglePrivacyDlpV2ListInspectTemplatesResponse{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Lists inspect templates.", + // "flatPath": "v2/organizations/{organizationsId}/inspectTemplates", + // "httpMethod": "GET", + // "id": "dlp.organizations.inspectTemplates.list", + // "parameterOrder": [ + // "parent" + // ], + // "parameters": { + // "pageSize": { + // "description": "Optional size of the page, can be limited by server. If zero server returns\na page of max size 100.", + // "format": "int32", + // "location": "query", + // "type": "integer" + // }, + // "pageToken": { + // "description": "Optional page token to continue retrieval. Comes from previous call\nto `ListInspectTemplates`.", + // "location": "query", + // "type": "string" + // }, + // "parent": { + // "description": "The parent resource name, for example projects/my-project-id or\norganizations/my-org-id.", + // "location": "path", + // "pattern": "^organizations/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v2/{+parent}/inspectTemplates", + // "response": { + // "$ref": "GooglePrivacyDlpV2ListInspectTemplatesResponse" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// Pages invokes f for each page of results. +// A non-nil error returned from f will halt the iteration. +// The provided context supersedes any context provided to the Context method. +func (c *OrganizationsInspectTemplatesListCall) Pages(ctx context.Context, f func(*GooglePrivacyDlpV2ListInspectTemplatesResponse) error) error { + c.ctx_ = ctx + defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point + for { + x, err := c.Do() + if err != nil { + return err + } + if err := f(x); err != nil { + return err + } + if x.NextPageToken == "" { + return nil + } + c.PageToken(x.NextPageToken) + } +} + +// method id "dlp.organizations.inspectTemplates.patch": + +type OrganizationsInspectTemplatesPatchCall struct { + s *Service + name string + googleprivacydlpv2updateinspecttemplaterequest *GooglePrivacyDlpV2UpdateInspectTemplateRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Patch: Updates the inspect template. +func (r *OrganizationsInspectTemplatesService) Patch(name string, googleprivacydlpv2updateinspecttemplaterequest *GooglePrivacyDlpV2UpdateInspectTemplateRequest) *OrganizationsInspectTemplatesPatchCall { + c := &OrganizationsInspectTemplatesPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + c.googleprivacydlpv2updateinspecttemplaterequest = googleprivacydlpv2updateinspecttemplaterequest + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *OrganizationsInspectTemplatesPatchCall) Fields(s ...googleapi.Field) *OrganizationsInspectTemplatesPatchCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *OrganizationsInspectTemplatesPatchCall) Context(ctx context.Context) *OrganizationsInspectTemplatesPatchCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *OrganizationsInspectTemplatesPatchCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *OrganizationsInspectTemplatesPatchCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleprivacydlpv2updateinspecttemplaterequest) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v2/{+name}") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("PATCH", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "dlp.organizations.inspectTemplates.patch" call. +// Exactly one of *GooglePrivacyDlpV2InspectTemplate or error will be +// non-nil. Any non-2xx status code is an error. Response headers are in +// either *GooglePrivacyDlpV2InspectTemplate.ServerResponse.Header or +// (if a response was returned at all) in +// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check +// whether the returned error was because http.StatusNotModified was +// returned. +func (c *OrganizationsInspectTemplatesPatchCall) Do(opts ...googleapi.CallOption) (*GooglePrivacyDlpV2InspectTemplate, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &GooglePrivacyDlpV2InspectTemplate{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Updates the inspect template.", + // "flatPath": "v2/organizations/{organizationsId}/inspectTemplates/{inspectTemplatesId}", + // "httpMethod": "PATCH", + // "id": "dlp.organizations.inspectTemplates.patch", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "Resource name of organization and inspectTemplate to be updated, for\nexample `organizations/433245324/inspectTemplates/432452342` or\nprojects/project-id/inspectTemplates/432452342.", + // "location": "path", + // "pattern": "^organizations/[^/]+/inspectTemplates/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v2/{+name}", + // "request": { + // "$ref": "GooglePrivacyDlpV2UpdateInspectTemplateRequest" + // }, + // "response": { + // "$ref": "GooglePrivacyDlpV2InspectTemplate" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "dlp.projects.content.deidentify": + +type ProjectsContentDeidentifyCall struct { + s *Service + parent string + googleprivacydlpv2deidentifycontentrequest *GooglePrivacyDlpV2DeidentifyContentRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Deidentify: De-identifies potentially sensitive info from a +// ContentItem. +// This method has limits on input size and output size. +// [How-to guide](/dlp/docs/deidentify-sensitive-data) +func (r *ProjectsContentService) Deidentify(parent string, googleprivacydlpv2deidentifycontentrequest *GooglePrivacyDlpV2DeidentifyContentRequest) *ProjectsContentDeidentifyCall { + c := &ProjectsContentDeidentifyCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.parent = parent + c.googleprivacydlpv2deidentifycontentrequest = googleprivacydlpv2deidentifycontentrequest + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsContentDeidentifyCall) Fields(s ...googleapi.Field) *ProjectsContentDeidentifyCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsContentDeidentifyCall) Context(ctx context.Context) *ProjectsContentDeidentifyCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsContentDeidentifyCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsContentDeidentifyCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleprivacydlpv2deidentifycontentrequest) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v2/{+parent}/content:deidentify") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("POST", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "parent": c.parent, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "dlp.projects.content.deidentify" call. +// Exactly one of *GooglePrivacyDlpV2DeidentifyContentResponse or error +// will be non-nil. Any non-2xx status code is an error. Response +// headers are in either +// *GooglePrivacyDlpV2DeidentifyContentResponse.ServerResponse.Header or +// (if a response was returned at all) in +// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check +// whether the returned error was because http.StatusNotModified was +// returned. +func (c *ProjectsContentDeidentifyCall) Do(opts ...googleapi.CallOption) (*GooglePrivacyDlpV2DeidentifyContentResponse, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &GooglePrivacyDlpV2DeidentifyContentResponse{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "De-identifies potentially sensitive info from a ContentItem.\nThis method has limits on input size and output size.\n[How-to guide](/dlp/docs/deidentify-sensitive-data)", + // "flatPath": "v2/projects/{projectsId}/content:deidentify", + // "httpMethod": "POST", + // "id": "dlp.projects.content.deidentify", + // "parameterOrder": [ + // "parent" + // ], + // "parameters": { + // "parent": { + // "description": "The parent resource name, for example projects/my-project-id.", + // "location": "path", + // "pattern": "^projects/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v2/{+parent}/content:deidentify", + // "request": { + // "$ref": "GooglePrivacyDlpV2DeidentifyContentRequest" + // }, + // "response": { + // "$ref": "GooglePrivacyDlpV2DeidentifyContentResponse" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "dlp.projects.content.inspect": + +type ProjectsContentInspectCall struct { + s *Service + parent string + googleprivacydlpv2inspectcontentrequest *GooglePrivacyDlpV2InspectContentRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Inspect: Finds potentially sensitive info in content. +// This method has limits on input size, processing time, and output +// size. +// [How-to guide for text](/dlp/docs/inspecting-text), [How-to guide +// for +// images](/dlp/docs/inspecting-images) +func (r *ProjectsContentService) Inspect(parent string, googleprivacydlpv2inspectcontentrequest *GooglePrivacyDlpV2InspectContentRequest) *ProjectsContentInspectCall { + c := &ProjectsContentInspectCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.parent = parent + c.googleprivacydlpv2inspectcontentrequest = googleprivacydlpv2inspectcontentrequest + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsContentInspectCall) Fields(s ...googleapi.Field) *ProjectsContentInspectCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsContentInspectCall) Context(ctx context.Context) *ProjectsContentInspectCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsContentInspectCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsContentInspectCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleprivacydlpv2inspectcontentrequest) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v2/{+parent}/content:inspect") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("POST", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "parent": c.parent, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "dlp.projects.content.inspect" call. +// Exactly one of *GooglePrivacyDlpV2InspectContentResponse or error +// will be non-nil. Any non-2xx status code is an error. Response +// headers are in either +// *GooglePrivacyDlpV2InspectContentResponse.ServerResponse.Header or +// (if a response was returned at all) in +// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check +// whether the returned error was because http.StatusNotModified was +// returned. +func (c *ProjectsContentInspectCall) Do(opts ...googleapi.CallOption) (*GooglePrivacyDlpV2InspectContentResponse, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &GooglePrivacyDlpV2InspectContentResponse{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Finds potentially sensitive info in content.\nThis method has limits on input size, processing time, and output size.\n[How-to guide for text](/dlp/docs/inspecting-text), [How-to guide for\nimages](/dlp/docs/inspecting-images)", + // "flatPath": "v2/projects/{projectsId}/content:inspect", + // "httpMethod": "POST", + // "id": "dlp.projects.content.inspect", + // "parameterOrder": [ + // "parent" + // ], + // "parameters": { + // "parent": { + // "description": "The parent resource name, for example projects/my-project-id.", + // "location": "path", + // "pattern": "^projects/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v2/{+parent}/content:inspect", + // "request": { + // "$ref": "GooglePrivacyDlpV2InspectContentRequest" + // }, + // "response": { + // "$ref": "GooglePrivacyDlpV2InspectContentResponse" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "dlp.projects.content.reidentify": + +type ProjectsContentReidentifyCall struct { + s *Service + parent string + googleprivacydlpv2reidentifycontentrequest *GooglePrivacyDlpV2ReidentifyContentRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Reidentify: Re-identifies content that has been de-identified. +func (r *ProjectsContentService) Reidentify(parent string, googleprivacydlpv2reidentifycontentrequest *GooglePrivacyDlpV2ReidentifyContentRequest) *ProjectsContentReidentifyCall { + c := &ProjectsContentReidentifyCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.parent = parent + c.googleprivacydlpv2reidentifycontentrequest = googleprivacydlpv2reidentifycontentrequest + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsContentReidentifyCall) Fields(s ...googleapi.Field) *ProjectsContentReidentifyCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsContentReidentifyCall) Context(ctx context.Context) *ProjectsContentReidentifyCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsContentReidentifyCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsContentReidentifyCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleprivacydlpv2reidentifycontentrequest) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v2/{+parent}/content:reidentify") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("POST", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "parent": c.parent, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "dlp.projects.content.reidentify" call. +// Exactly one of *GooglePrivacyDlpV2ReidentifyContentResponse or error +// will be non-nil. Any non-2xx status code is an error. Response +// headers are in either +// *GooglePrivacyDlpV2ReidentifyContentResponse.ServerResponse.Header or +// (if a response was returned at all) in +// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check +// whether the returned error was because http.StatusNotModified was +// returned. +func (c *ProjectsContentReidentifyCall) Do(opts ...googleapi.CallOption) (*GooglePrivacyDlpV2ReidentifyContentResponse, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &GooglePrivacyDlpV2ReidentifyContentResponse{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Re-identifies content that has been de-identified.", + // "flatPath": "v2/projects/{projectsId}/content:reidentify", + // "httpMethod": "POST", + // "id": "dlp.projects.content.reidentify", + // "parameterOrder": [ + // "parent" + // ], + // "parameters": { + // "parent": { + // "description": "The parent resource name.", + // "location": "path", + // "pattern": "^projects/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v2/{+parent}/content:reidentify", + // "request": { + // "$ref": "GooglePrivacyDlpV2ReidentifyContentRequest" + // }, + // "response": { + // "$ref": "GooglePrivacyDlpV2ReidentifyContentResponse" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "dlp.projects.deidentifyTemplates.create": + +type ProjectsDeidentifyTemplatesCreateCall struct { + s *Service + parent string + googleprivacydlpv2createdeidentifytemplaterequest *GooglePrivacyDlpV2CreateDeidentifyTemplateRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Create: Creates a de-identify template for re-using frequently used +// configuration +// for Deidentifying content, images, and storage. +func (r *ProjectsDeidentifyTemplatesService) Create(parent string, googleprivacydlpv2createdeidentifytemplaterequest *GooglePrivacyDlpV2CreateDeidentifyTemplateRequest) *ProjectsDeidentifyTemplatesCreateCall { + c := &ProjectsDeidentifyTemplatesCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.parent = parent + c.googleprivacydlpv2createdeidentifytemplaterequest = googleprivacydlpv2createdeidentifytemplaterequest + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsDeidentifyTemplatesCreateCall) Fields(s ...googleapi.Field) *ProjectsDeidentifyTemplatesCreateCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsDeidentifyTemplatesCreateCall) Context(ctx context.Context) *ProjectsDeidentifyTemplatesCreateCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsDeidentifyTemplatesCreateCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsDeidentifyTemplatesCreateCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleprivacydlpv2createdeidentifytemplaterequest) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v2/{+parent}/deidentifyTemplates") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("POST", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "parent": c.parent, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "dlp.projects.deidentifyTemplates.create" call. +// Exactly one of *GooglePrivacyDlpV2DeidentifyTemplate or error will be +// non-nil. Any non-2xx status code is an error. Response headers are in +// either *GooglePrivacyDlpV2DeidentifyTemplate.ServerResponse.Header or +// (if a response was returned at all) in +// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check +// whether the returned error was because http.StatusNotModified was +// returned. +func (c *ProjectsDeidentifyTemplatesCreateCall) Do(opts ...googleapi.CallOption) (*GooglePrivacyDlpV2DeidentifyTemplate, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &GooglePrivacyDlpV2DeidentifyTemplate{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Creates a de-identify template for re-using frequently used configuration\nfor Deidentifying content, images, and storage.", + // "flatPath": "v2/projects/{projectsId}/deidentifyTemplates", + // "httpMethod": "POST", + // "id": "dlp.projects.deidentifyTemplates.create", + // "parameterOrder": [ + // "parent" + // ], + // "parameters": { + // "parent": { + // "description": "The parent resource name, for example projects/my-project-id or\norganizations/my-org-id.", + // "location": "path", + // "pattern": "^projects/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v2/{+parent}/deidentifyTemplates", + // "request": { + // "$ref": "GooglePrivacyDlpV2CreateDeidentifyTemplateRequest" + // }, + // "response": { + // "$ref": "GooglePrivacyDlpV2DeidentifyTemplate" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "dlp.projects.deidentifyTemplates.delete": + +type ProjectsDeidentifyTemplatesDeleteCall struct { + s *Service + name string + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Delete: Deletes a de-identify template. +func (r *ProjectsDeidentifyTemplatesService) Delete(name string) *ProjectsDeidentifyTemplatesDeleteCall { + c := &ProjectsDeidentifyTemplatesDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsDeidentifyTemplatesDeleteCall) Fields(s ...googleapi.Field) *ProjectsDeidentifyTemplatesDeleteCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsDeidentifyTemplatesDeleteCall) Context(ctx context.Context) *ProjectsDeidentifyTemplatesDeleteCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsDeidentifyTemplatesDeleteCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsDeidentifyTemplatesDeleteCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v2/{+name}") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("DELETE", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "dlp.projects.deidentifyTemplates.delete" call. +// Exactly one of *GoogleProtobufEmpty or error will be non-nil. Any +// non-2xx status code is an error. Response headers are in either +// *GoogleProtobufEmpty.ServerResponse.Header or (if a response was +// returned at all) in error.(*googleapi.Error).Header. Use +// googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *ProjectsDeidentifyTemplatesDeleteCall) Do(opts ...googleapi.CallOption) (*GoogleProtobufEmpty, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &GoogleProtobufEmpty{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Deletes a de-identify template.", + // "flatPath": "v2/projects/{projectsId}/deidentifyTemplates/{deidentifyTemplatesId}", + // "httpMethod": "DELETE", + // "id": "dlp.projects.deidentifyTemplates.delete", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "Resource name of the organization and deidentify template to be deleted,\nfor example `organizations/433245324/deidentifyTemplates/432452342` or\nprojects/project-id/deidentifyTemplates/432452342.", + // "location": "path", + // "pattern": "^projects/[^/]+/deidentifyTemplates/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v2/{+name}", + // "response": { + // "$ref": "GoogleProtobufEmpty" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "dlp.projects.deidentifyTemplates.get": + +type ProjectsDeidentifyTemplatesGetCall struct { + s *Service + name string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// Get: Gets a de-identify template. +func (r *ProjectsDeidentifyTemplatesService) Get(name string) *ProjectsDeidentifyTemplatesGetCall { + c := &ProjectsDeidentifyTemplatesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsDeidentifyTemplatesGetCall) Fields(s ...googleapi.Field) *ProjectsDeidentifyTemplatesGetCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// IfNoneMatch sets the optional parameter which makes the operation +// fail if the object's ETag matches the given value. This is useful for +// getting updates only after the object has changed since the last +// request. Use googleapi.IsNotModified to check whether the response +// error from Do is the result of In-None-Match. +func (c *ProjectsDeidentifyTemplatesGetCall) IfNoneMatch(entityTag string) *ProjectsDeidentifyTemplatesGetCall { + c.ifNoneMatch_ = entityTag + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsDeidentifyTemplatesGetCall) Context(ctx context.Context) *ProjectsDeidentifyTemplatesGetCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsDeidentifyTemplatesGetCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsDeidentifyTemplatesGetCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + if c.ifNoneMatch_ != "" { + reqHeaders.Set("If-None-Match", c.ifNoneMatch_) + } + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v2/{+name}") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("GET", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "dlp.projects.deidentifyTemplates.get" call. +// Exactly one of *GooglePrivacyDlpV2DeidentifyTemplate or error will be +// non-nil. Any non-2xx status code is an error. Response headers are in +// either *GooglePrivacyDlpV2DeidentifyTemplate.ServerResponse.Header or +// (if a response was returned at all) in +// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check +// whether the returned error was because http.StatusNotModified was +// returned. +func (c *ProjectsDeidentifyTemplatesGetCall) Do(opts ...googleapi.CallOption) (*GooglePrivacyDlpV2DeidentifyTemplate, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &GooglePrivacyDlpV2DeidentifyTemplate{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Gets a de-identify template.", + // "flatPath": "v2/projects/{projectsId}/deidentifyTemplates/{deidentifyTemplatesId}", + // "httpMethod": "GET", + // "id": "dlp.projects.deidentifyTemplates.get", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "Resource name of the organization and deidentify template to be read, for\nexample `organizations/433245324/deidentifyTemplates/432452342` or\nprojects/project-id/deidentifyTemplates/432452342.", + // "location": "path", + // "pattern": "^projects/[^/]+/deidentifyTemplates/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v2/{+name}", + // "response": { + // "$ref": "GooglePrivacyDlpV2DeidentifyTemplate" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "dlp.projects.deidentifyTemplates.list": + +type ProjectsDeidentifyTemplatesListCall struct { + s *Service + parent string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// List: Lists de-identify templates. +func (r *ProjectsDeidentifyTemplatesService) List(parent string) *ProjectsDeidentifyTemplatesListCall { + c := &ProjectsDeidentifyTemplatesListCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.parent = parent + return c +} + +// PageSize sets the optional parameter "pageSize": Optional size of the +// page, can be limited by server. If zero server returns +// a page of max size 100. +func (c *ProjectsDeidentifyTemplatesListCall) PageSize(pageSize int64) *ProjectsDeidentifyTemplatesListCall { + c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) + return c +} + +// PageToken sets the optional parameter "pageToken": Optional page +// token to continue retrieval. Comes from previous call +// to `ListDeidentifyTemplates`. +func (c *ProjectsDeidentifyTemplatesListCall) PageToken(pageToken string) *ProjectsDeidentifyTemplatesListCall { + c.urlParams_.Set("pageToken", pageToken) + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsDeidentifyTemplatesListCall) Fields(s ...googleapi.Field) *ProjectsDeidentifyTemplatesListCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// IfNoneMatch sets the optional parameter which makes the operation +// fail if the object's ETag matches the given value. This is useful for +// getting updates only after the object has changed since the last +// request. Use googleapi.IsNotModified to check whether the response +// error from Do is the result of In-None-Match. +func (c *ProjectsDeidentifyTemplatesListCall) IfNoneMatch(entityTag string) *ProjectsDeidentifyTemplatesListCall { + c.ifNoneMatch_ = entityTag + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsDeidentifyTemplatesListCall) Context(ctx context.Context) *ProjectsDeidentifyTemplatesListCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsDeidentifyTemplatesListCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsDeidentifyTemplatesListCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + if c.ifNoneMatch_ != "" { + reqHeaders.Set("If-None-Match", c.ifNoneMatch_) + } + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v2/{+parent}/deidentifyTemplates") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("GET", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "parent": c.parent, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "dlp.projects.deidentifyTemplates.list" call. +// Exactly one of *GooglePrivacyDlpV2ListDeidentifyTemplatesResponse or +// error will be non-nil. Any non-2xx status code is an error. Response +// headers are in either +// *GooglePrivacyDlpV2ListDeidentifyTemplatesResponse.ServerResponse.Head +// er or (if a response was returned at all) in +// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check +// whether the returned error was because http.StatusNotModified was +// returned. +func (c *ProjectsDeidentifyTemplatesListCall) Do(opts ...googleapi.CallOption) (*GooglePrivacyDlpV2ListDeidentifyTemplatesResponse, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &GooglePrivacyDlpV2ListDeidentifyTemplatesResponse{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Lists de-identify templates.", + // "flatPath": "v2/projects/{projectsId}/deidentifyTemplates", + // "httpMethod": "GET", + // "id": "dlp.projects.deidentifyTemplates.list", + // "parameterOrder": [ + // "parent" + // ], + // "parameters": { + // "pageSize": { + // "description": "Optional size of the page, can be limited by server. If zero server returns\na page of max size 100.", + // "format": "int32", + // "location": "query", + // "type": "integer" + // }, + // "pageToken": { + // "description": "Optional page token to continue retrieval. Comes from previous call\nto `ListDeidentifyTemplates`.", + // "location": "query", + // "type": "string" + // }, + // "parent": { + // "description": "The parent resource name, for example projects/my-project-id or\norganizations/my-org-id.", + // "location": "path", + // "pattern": "^projects/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v2/{+parent}/deidentifyTemplates", + // "response": { + // "$ref": "GooglePrivacyDlpV2ListDeidentifyTemplatesResponse" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// Pages invokes f for each page of results. +// A non-nil error returned from f will halt the iteration. +// The provided context supersedes any context provided to the Context method. +func (c *ProjectsDeidentifyTemplatesListCall) Pages(ctx context.Context, f func(*GooglePrivacyDlpV2ListDeidentifyTemplatesResponse) error) error { + c.ctx_ = ctx + defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point + for { + x, err := c.Do() + if err != nil { + return err + } + if err := f(x); err != nil { + return err + } + if x.NextPageToken == "" { + return nil + } + c.PageToken(x.NextPageToken) + } +} + +// method id "dlp.projects.deidentifyTemplates.patch": + +type ProjectsDeidentifyTemplatesPatchCall struct { + s *Service + name string + googleprivacydlpv2updatedeidentifytemplaterequest *GooglePrivacyDlpV2UpdateDeidentifyTemplateRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Patch: Updates the de-identify template. +func (r *ProjectsDeidentifyTemplatesService) Patch(name string, googleprivacydlpv2updatedeidentifytemplaterequest *GooglePrivacyDlpV2UpdateDeidentifyTemplateRequest) *ProjectsDeidentifyTemplatesPatchCall { + c := &ProjectsDeidentifyTemplatesPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + c.googleprivacydlpv2updatedeidentifytemplaterequest = googleprivacydlpv2updatedeidentifytemplaterequest + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsDeidentifyTemplatesPatchCall) Fields(s ...googleapi.Field) *ProjectsDeidentifyTemplatesPatchCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsDeidentifyTemplatesPatchCall) Context(ctx context.Context) *ProjectsDeidentifyTemplatesPatchCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsDeidentifyTemplatesPatchCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsDeidentifyTemplatesPatchCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleprivacydlpv2updatedeidentifytemplaterequest) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v2/{+name}") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("PATCH", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "dlp.projects.deidentifyTemplates.patch" call. +// Exactly one of *GooglePrivacyDlpV2DeidentifyTemplate or error will be +// non-nil. Any non-2xx status code is an error. Response headers are in +// either *GooglePrivacyDlpV2DeidentifyTemplate.ServerResponse.Header or +// (if a response was returned at all) in +// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check +// whether the returned error was because http.StatusNotModified was +// returned. +func (c *ProjectsDeidentifyTemplatesPatchCall) Do(opts ...googleapi.CallOption) (*GooglePrivacyDlpV2DeidentifyTemplate, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &GooglePrivacyDlpV2DeidentifyTemplate{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Updates the de-identify template.", + // "flatPath": "v2/projects/{projectsId}/deidentifyTemplates/{deidentifyTemplatesId}", + // "httpMethod": "PATCH", + // "id": "dlp.projects.deidentifyTemplates.patch", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "Resource name of organization and deidentify template to be updated, for\nexample `organizations/433245324/deidentifyTemplates/432452342` or\nprojects/project-id/deidentifyTemplates/432452342.", + // "location": "path", + // "pattern": "^projects/[^/]+/deidentifyTemplates/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v2/{+name}", + // "request": { + // "$ref": "GooglePrivacyDlpV2UpdateDeidentifyTemplateRequest" + // }, + // "response": { + // "$ref": "GooglePrivacyDlpV2DeidentifyTemplate" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "dlp.projects.dlpJobs.cancel": + +type ProjectsDlpJobsCancelCall struct { + s *Service + name string + googleprivacydlpv2canceldlpjobrequest *GooglePrivacyDlpV2CancelDlpJobRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Cancel: Starts asynchronous cancellation on a long-running DlpJob. +// The server +// makes a best effort to cancel the DlpJob, but success is +// not +// guaranteed. +func (r *ProjectsDlpJobsService) Cancel(name string, googleprivacydlpv2canceldlpjobrequest *GooglePrivacyDlpV2CancelDlpJobRequest) *ProjectsDlpJobsCancelCall { + c := &ProjectsDlpJobsCancelCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + c.googleprivacydlpv2canceldlpjobrequest = googleprivacydlpv2canceldlpjobrequest + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsDlpJobsCancelCall) Fields(s ...googleapi.Field) *ProjectsDlpJobsCancelCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsDlpJobsCancelCall) Context(ctx context.Context) *ProjectsDlpJobsCancelCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsDlpJobsCancelCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsDlpJobsCancelCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleprivacydlpv2canceldlpjobrequest) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v2/{+name}:cancel") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("POST", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "dlp.projects.dlpJobs.cancel" call. +// Exactly one of *GoogleProtobufEmpty or error will be non-nil. Any +// non-2xx status code is an error. Response headers are in either +// *GoogleProtobufEmpty.ServerResponse.Header or (if a response was +// returned at all) in error.(*googleapi.Error).Header. Use +// googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *ProjectsDlpJobsCancelCall) Do(opts ...googleapi.CallOption) (*GoogleProtobufEmpty, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &GoogleProtobufEmpty{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Starts asynchronous cancellation on a long-running DlpJob. The server\nmakes a best effort to cancel the DlpJob, but success is not\nguaranteed.", + // "flatPath": "v2/projects/{projectsId}/dlpJobs/{dlpJobsId}:cancel", + // "httpMethod": "POST", + // "id": "dlp.projects.dlpJobs.cancel", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "The name of the DlpJob resource to be cancelled.", + // "location": "path", + // "pattern": "^projects/[^/]+/dlpJobs/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v2/{+name}:cancel", + // "request": { + // "$ref": "GooglePrivacyDlpV2CancelDlpJobRequest" + // }, + // "response": { + // "$ref": "GoogleProtobufEmpty" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "dlp.projects.dlpJobs.create": + +type ProjectsDlpJobsCreateCall struct { + s *Service + parent string + googleprivacydlpv2createdlpjobrequest *GooglePrivacyDlpV2CreateDlpJobRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Create: Creates a new job to inspect storage or calculate risk +// metrics [How-to +// guide](/dlp/docs/compute-risk-analysis). +func (r *ProjectsDlpJobsService) Create(parent string, googleprivacydlpv2createdlpjobrequest *GooglePrivacyDlpV2CreateDlpJobRequest) *ProjectsDlpJobsCreateCall { + c := &ProjectsDlpJobsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.parent = parent + c.googleprivacydlpv2createdlpjobrequest = googleprivacydlpv2createdlpjobrequest + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsDlpJobsCreateCall) Fields(s ...googleapi.Field) *ProjectsDlpJobsCreateCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsDlpJobsCreateCall) Context(ctx context.Context) *ProjectsDlpJobsCreateCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsDlpJobsCreateCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsDlpJobsCreateCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleprivacydlpv2createdlpjobrequest) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v2/{+parent}/dlpJobs") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("POST", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "parent": c.parent, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "dlp.projects.dlpJobs.create" call. +// Exactly one of *GooglePrivacyDlpV2DlpJob or error will be non-nil. +// Any non-2xx status code is an error. Response headers are in either +// *GooglePrivacyDlpV2DlpJob.ServerResponse.Header or (if a response was +// returned at all) in error.(*googleapi.Error).Header. Use +// googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *ProjectsDlpJobsCreateCall) Do(opts ...googleapi.CallOption) (*GooglePrivacyDlpV2DlpJob, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &GooglePrivacyDlpV2DlpJob{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Creates a new job to inspect storage or calculate risk metrics [How-to\nguide](/dlp/docs/compute-risk-analysis).", + // "flatPath": "v2/projects/{projectsId}/dlpJobs", + // "httpMethod": "POST", + // "id": "dlp.projects.dlpJobs.create", + // "parameterOrder": [ + // "parent" + // ], + // "parameters": { + // "parent": { + // "description": "The parent resource name, for example projects/my-project-id.", + // "location": "path", + // "pattern": "^projects/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v2/{+parent}/dlpJobs", + // "request": { + // "$ref": "GooglePrivacyDlpV2CreateDlpJobRequest" + // }, + // "response": { + // "$ref": "GooglePrivacyDlpV2DlpJob" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "dlp.projects.dlpJobs.delete": + +type ProjectsDlpJobsDeleteCall struct { + s *Service + name string + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Delete: Deletes a long-running DlpJob. This method indicates that the +// client is +// no longer interested in the DlpJob result. The job will be cancelled +// if +// possible. +func (r *ProjectsDlpJobsService) Delete(name string) *ProjectsDlpJobsDeleteCall { + c := &ProjectsDlpJobsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsDlpJobsDeleteCall) Fields(s ...googleapi.Field) *ProjectsDlpJobsDeleteCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsDlpJobsDeleteCall) Context(ctx context.Context) *ProjectsDlpJobsDeleteCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsDlpJobsDeleteCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsDlpJobsDeleteCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v2/{+name}") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("DELETE", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "dlp.projects.dlpJobs.delete" call. +// Exactly one of *GoogleProtobufEmpty or error will be non-nil. Any +// non-2xx status code is an error. Response headers are in either +// *GoogleProtobufEmpty.ServerResponse.Header or (if a response was +// returned at all) in error.(*googleapi.Error).Header. Use +// googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *ProjectsDlpJobsDeleteCall) Do(opts ...googleapi.CallOption) (*GoogleProtobufEmpty, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &GoogleProtobufEmpty{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Deletes a long-running DlpJob. This method indicates that the client is\nno longer interested in the DlpJob result. The job will be cancelled if\npossible.", + // "flatPath": "v2/projects/{projectsId}/dlpJobs/{dlpJobsId}", + // "httpMethod": "DELETE", + // "id": "dlp.projects.dlpJobs.delete", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "The name of the DlpJob resource to be deleted.", + // "location": "path", + // "pattern": "^projects/[^/]+/dlpJobs/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v2/{+name}", + // "response": { + // "$ref": "GoogleProtobufEmpty" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "dlp.projects.dlpJobs.get": + +type ProjectsDlpJobsGetCall struct { + s *Service + name string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// Get: Gets the latest state of a long-running DlpJob. +func (r *ProjectsDlpJobsService) Get(name string) *ProjectsDlpJobsGetCall { + c := &ProjectsDlpJobsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsDlpJobsGetCall) Fields(s ...googleapi.Field) *ProjectsDlpJobsGetCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// IfNoneMatch sets the optional parameter which makes the operation +// fail if the object's ETag matches the given value. This is useful for +// getting updates only after the object has changed since the last +// request. Use googleapi.IsNotModified to check whether the response +// error from Do is the result of In-None-Match. +func (c *ProjectsDlpJobsGetCall) IfNoneMatch(entityTag string) *ProjectsDlpJobsGetCall { + c.ifNoneMatch_ = entityTag + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsDlpJobsGetCall) Context(ctx context.Context) *ProjectsDlpJobsGetCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsDlpJobsGetCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsDlpJobsGetCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + if c.ifNoneMatch_ != "" { + reqHeaders.Set("If-None-Match", c.ifNoneMatch_) + } + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v2/{+name}") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("GET", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "dlp.projects.dlpJobs.get" call. +// Exactly one of *GooglePrivacyDlpV2DlpJob or error will be non-nil. +// Any non-2xx status code is an error. Response headers are in either +// *GooglePrivacyDlpV2DlpJob.ServerResponse.Header or (if a response was +// returned at all) in error.(*googleapi.Error).Header. Use +// googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *ProjectsDlpJobsGetCall) Do(opts ...googleapi.CallOption) (*GooglePrivacyDlpV2DlpJob, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &GooglePrivacyDlpV2DlpJob{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Gets the latest state of a long-running DlpJob.", + // "flatPath": "v2/projects/{projectsId}/dlpJobs/{dlpJobsId}", + // "httpMethod": "GET", + // "id": "dlp.projects.dlpJobs.get", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "The name of the DlpJob resource.", + // "location": "path", + // "pattern": "^projects/[^/]+/dlpJobs/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v2/{+name}", + // "response": { + // "$ref": "GooglePrivacyDlpV2DlpJob" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "dlp.projects.dlpJobs.list": + +type ProjectsDlpJobsListCall struct { + s *Service + parent string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// List: Lists DlpJobs that match the specified filter in the request. +func (r *ProjectsDlpJobsService) List(parent string) *ProjectsDlpJobsListCall { + c := &ProjectsDlpJobsListCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.parent = parent + return c +} + +// Filter sets the optional parameter "filter": Allows +// filtering. +// +// Supported syntax: +// +// * Filter expressions are made up of one or more restrictions. +// * Restrictions can be combined by `AND` or `OR` logical operators. +// A +// sequence of restrictions implicitly uses `AND`. +// * A restriction has the form of ` `. +// * Supported fields/values for inspect jobs: +// - `state` - PENDING|RUNNING|CANCELED|FINISHED|FAILED +// - `inspected_storage` - DATASTORE|CLOUD_STORAGE|BIGQUERY +// - `trigger_name` - The resource name of the trigger that created +// job. +// * Supported fields for risk analysis jobs: +// - `state` - RUNNING|CANCELED|FINISHED|FAILED +// * The operator must be `=` or `!=`. +// +// Examples: +// +// * inspected_storage = cloud_storage AND state = done +// * inspected_storage = cloud_storage OR inspected_storage = bigquery +// * inspected_storage = cloud_storage AND (state = done OR state = +// canceled) +// +// The length of this field should be no more than 500 characters. +func (c *ProjectsDlpJobsListCall) Filter(filter string) *ProjectsDlpJobsListCall { + c.urlParams_.Set("filter", filter) + return c +} + +// PageSize sets the optional parameter "pageSize": The standard list +// page size. +func (c *ProjectsDlpJobsListCall) PageSize(pageSize int64) *ProjectsDlpJobsListCall { + c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) + return c +} + +// PageToken sets the optional parameter "pageToken": The standard list +// page token. +func (c *ProjectsDlpJobsListCall) PageToken(pageToken string) *ProjectsDlpJobsListCall { + c.urlParams_.Set("pageToken", pageToken) + return c +} + +// Type sets the optional parameter "type": The type of job. Defaults to +// `DlpJobType.INSPECT` +// +// Possible values: +// "DLP_JOB_TYPE_UNSPECIFIED" +// "INSPECT_JOB" +// "RISK_ANALYSIS_JOB" +func (c *ProjectsDlpJobsListCall) Type(type_ string) *ProjectsDlpJobsListCall { + c.urlParams_.Set("type", type_) + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsDlpJobsListCall) Fields(s ...googleapi.Field) *ProjectsDlpJobsListCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// IfNoneMatch sets the optional parameter which makes the operation +// fail if the object's ETag matches the given value. This is useful for +// getting updates only after the object has changed since the last +// request. Use googleapi.IsNotModified to check whether the response +// error from Do is the result of In-None-Match. +func (c *ProjectsDlpJobsListCall) IfNoneMatch(entityTag string) *ProjectsDlpJobsListCall { + c.ifNoneMatch_ = entityTag + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsDlpJobsListCall) Context(ctx context.Context) *ProjectsDlpJobsListCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsDlpJobsListCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsDlpJobsListCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + if c.ifNoneMatch_ != "" { + reqHeaders.Set("If-None-Match", c.ifNoneMatch_) + } + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v2/{+parent}/dlpJobs") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("GET", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "parent": c.parent, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "dlp.projects.dlpJobs.list" call. +// Exactly one of *GooglePrivacyDlpV2ListDlpJobsResponse or error will +// be non-nil. Any non-2xx status code is an error. Response headers are +// in either +// *GooglePrivacyDlpV2ListDlpJobsResponse.ServerResponse.Header or (if a +// response was returned at all) in error.(*googleapi.Error).Header. Use +// googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *ProjectsDlpJobsListCall) Do(opts ...googleapi.CallOption) (*GooglePrivacyDlpV2ListDlpJobsResponse, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &GooglePrivacyDlpV2ListDlpJobsResponse{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Lists DlpJobs that match the specified filter in the request.", + // "flatPath": "v2/projects/{projectsId}/dlpJobs", + // "httpMethod": "GET", + // "id": "dlp.projects.dlpJobs.list", + // "parameterOrder": [ + // "parent" + // ], + // "parameters": { + // "filter": { + // "description": "Optional. Allows filtering.\n\nSupported syntax:\n\n* Filter expressions are made up of one or more restrictions.\n* Restrictions can be combined by `AND` or `OR` logical operators. A\nsequence of restrictions implicitly uses `AND`.\n* A restriction has the form of `\u003cfield\u003e \u003coperator\u003e \u003cvalue\u003e`.\n* Supported fields/values for inspect jobs:\n - `state` - PENDING|RUNNING|CANCELED|FINISHED|FAILED\n - `inspected_storage` - DATASTORE|CLOUD_STORAGE|BIGQUERY\n - `trigger_name` - The resource name of the trigger that created job.\n* Supported fields for risk analysis jobs:\n - `state` - RUNNING|CANCELED|FINISHED|FAILED\n* The operator must be `=` or `!=`.\n\nExamples:\n\n* inspected_storage = cloud_storage AND state = done\n* inspected_storage = cloud_storage OR inspected_storage = bigquery\n* inspected_storage = cloud_storage AND (state = done OR state = canceled)\n\nThe length of this field should be no more than 500 characters.", + // "location": "query", + // "type": "string" + // }, + // "pageSize": { + // "description": "The standard list page size.", + // "format": "int32", + // "location": "query", + // "type": "integer" + // }, + // "pageToken": { + // "description": "The standard list page token.", + // "location": "query", + // "type": "string" + // }, + // "parent": { + // "description": "The parent resource name, for example projects/my-project-id.", + // "location": "path", + // "pattern": "^projects/[^/]+$", + // "required": true, + // "type": "string" + // }, + // "type": { + // "description": "The type of job. Defaults to `DlpJobType.INSPECT`", + // "enum": [ + // "DLP_JOB_TYPE_UNSPECIFIED", + // "INSPECT_JOB", + // "RISK_ANALYSIS_JOB" + // ], + // "location": "query", + // "type": "string" + // } + // }, + // "path": "v2/{+parent}/dlpJobs", + // "response": { + // "$ref": "GooglePrivacyDlpV2ListDlpJobsResponse" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// Pages invokes f for each page of results. +// A non-nil error returned from f will halt the iteration. +// The provided context supersedes any context provided to the Context method. +func (c *ProjectsDlpJobsListCall) Pages(ctx context.Context, f func(*GooglePrivacyDlpV2ListDlpJobsResponse) error) error { + c.ctx_ = ctx + defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point + for { + x, err := c.Do() + if err != nil { + return err + } + if err := f(x); err != nil { + return err + } + if x.NextPageToken == "" { + return nil + } + c.PageToken(x.NextPageToken) + } +} + +// method id "dlp.projects.image.redact": + +type ProjectsImageRedactCall struct { + s *Service + parent string + googleprivacydlpv2redactimagerequest *GooglePrivacyDlpV2RedactImageRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Redact: Redacts potentially sensitive info from an image. +// This method has limits on input size, processing time, and output +// size. +// [How-to guide](/dlp/docs/redacting-sensitive-data-images) +func (r *ProjectsImageService) Redact(parent string, googleprivacydlpv2redactimagerequest *GooglePrivacyDlpV2RedactImageRequest) *ProjectsImageRedactCall { + c := &ProjectsImageRedactCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.parent = parent + c.googleprivacydlpv2redactimagerequest = googleprivacydlpv2redactimagerequest + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsImageRedactCall) Fields(s ...googleapi.Field) *ProjectsImageRedactCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsImageRedactCall) Context(ctx context.Context) *ProjectsImageRedactCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsImageRedactCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsImageRedactCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleprivacydlpv2redactimagerequest) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v2/{+parent}/image:redact") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("POST", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "parent": c.parent, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "dlp.projects.image.redact" call. +// Exactly one of *GooglePrivacyDlpV2RedactImageResponse or error will +// be non-nil. Any non-2xx status code is an error. Response headers are +// in either +// *GooglePrivacyDlpV2RedactImageResponse.ServerResponse.Header or (if a +// response was returned at all) in error.(*googleapi.Error).Header. Use +// googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *ProjectsImageRedactCall) Do(opts ...googleapi.CallOption) (*GooglePrivacyDlpV2RedactImageResponse, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &GooglePrivacyDlpV2RedactImageResponse{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Redacts potentially sensitive info from an image.\nThis method has limits on input size, processing time, and output size.\n[How-to guide](/dlp/docs/redacting-sensitive-data-images)", + // "flatPath": "v2/projects/{projectsId}/image:redact", + // "httpMethod": "POST", + // "id": "dlp.projects.image.redact", + // "parameterOrder": [ + // "parent" + // ], + // "parameters": { + // "parent": { + // "description": "The parent resource name, for example projects/my-project-id.", + // "location": "path", + // "pattern": "^projects/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v2/{+parent}/image:redact", + // "request": { + // "$ref": "GooglePrivacyDlpV2RedactImageRequest" + // }, + // "response": { + // "$ref": "GooglePrivacyDlpV2RedactImageResponse" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "dlp.projects.inspectTemplates.create": + +type ProjectsInspectTemplatesCreateCall struct { + s *Service + parent string + googleprivacydlpv2createinspecttemplaterequest *GooglePrivacyDlpV2CreateInspectTemplateRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Create: Creates an inspect template for re-using frequently used +// configuration +// for inspecting content, images, and storage. +func (r *ProjectsInspectTemplatesService) Create(parent string, googleprivacydlpv2createinspecttemplaterequest *GooglePrivacyDlpV2CreateInspectTemplateRequest) *ProjectsInspectTemplatesCreateCall { + c := &ProjectsInspectTemplatesCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.parent = parent + c.googleprivacydlpv2createinspecttemplaterequest = googleprivacydlpv2createinspecttemplaterequest + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsInspectTemplatesCreateCall) Fields(s ...googleapi.Field) *ProjectsInspectTemplatesCreateCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsInspectTemplatesCreateCall) Context(ctx context.Context) *ProjectsInspectTemplatesCreateCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsInspectTemplatesCreateCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsInspectTemplatesCreateCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleprivacydlpv2createinspecttemplaterequest) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v2/{+parent}/inspectTemplates") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("POST", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "parent": c.parent, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "dlp.projects.inspectTemplates.create" call. +// Exactly one of *GooglePrivacyDlpV2InspectTemplate or error will be +// non-nil. Any non-2xx status code is an error. Response headers are in +// either *GooglePrivacyDlpV2InspectTemplate.ServerResponse.Header or +// (if a response was returned at all) in +// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check +// whether the returned error was because http.StatusNotModified was +// returned. +func (c *ProjectsInspectTemplatesCreateCall) Do(opts ...googleapi.CallOption) (*GooglePrivacyDlpV2InspectTemplate, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &GooglePrivacyDlpV2InspectTemplate{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Creates an inspect template for re-using frequently used configuration\nfor inspecting content, images, and storage.", + // "flatPath": "v2/projects/{projectsId}/inspectTemplates", + // "httpMethod": "POST", + // "id": "dlp.projects.inspectTemplates.create", + // "parameterOrder": [ + // "parent" + // ], + // "parameters": { + // "parent": { + // "description": "The parent resource name, for example projects/my-project-id or\norganizations/my-org-id.", + // "location": "path", + // "pattern": "^projects/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v2/{+parent}/inspectTemplates", + // "request": { + // "$ref": "GooglePrivacyDlpV2CreateInspectTemplateRequest" + // }, + // "response": { + // "$ref": "GooglePrivacyDlpV2InspectTemplate" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "dlp.projects.inspectTemplates.delete": + +type ProjectsInspectTemplatesDeleteCall struct { + s *Service + name string + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Delete: Deletes an inspect template. +func (r *ProjectsInspectTemplatesService) Delete(name string) *ProjectsInspectTemplatesDeleteCall { + c := &ProjectsInspectTemplatesDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsInspectTemplatesDeleteCall) Fields(s ...googleapi.Field) *ProjectsInspectTemplatesDeleteCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsInspectTemplatesDeleteCall) Context(ctx context.Context) *ProjectsInspectTemplatesDeleteCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsInspectTemplatesDeleteCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsInspectTemplatesDeleteCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v2/{+name}") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("DELETE", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "dlp.projects.inspectTemplates.delete" call. +// Exactly one of *GoogleProtobufEmpty or error will be non-nil. Any +// non-2xx status code is an error. Response headers are in either +// *GoogleProtobufEmpty.ServerResponse.Header or (if a response was +// returned at all) in error.(*googleapi.Error).Header. Use +// googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *ProjectsInspectTemplatesDeleteCall) Do(opts ...googleapi.CallOption) (*GoogleProtobufEmpty, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &GoogleProtobufEmpty{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Deletes an inspect template.", + // "flatPath": "v2/projects/{projectsId}/inspectTemplates/{inspectTemplatesId}", + // "httpMethod": "DELETE", + // "id": "dlp.projects.inspectTemplates.delete", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "Resource name of the organization and inspectTemplate to be deleted, for\nexample `organizations/433245324/inspectTemplates/432452342` or\nprojects/project-id/inspectTemplates/432452342.", + // "location": "path", + // "pattern": "^projects/[^/]+/inspectTemplates/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v2/{+name}", + // "response": { + // "$ref": "GoogleProtobufEmpty" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "dlp.projects.inspectTemplates.get": + +type ProjectsInspectTemplatesGetCall struct { + s *Service + name string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// Get: Gets an inspect template. +func (r *ProjectsInspectTemplatesService) Get(name string) *ProjectsInspectTemplatesGetCall { + c := &ProjectsInspectTemplatesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsInspectTemplatesGetCall) Fields(s ...googleapi.Field) *ProjectsInspectTemplatesGetCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// IfNoneMatch sets the optional parameter which makes the operation +// fail if the object's ETag matches the given value. This is useful for +// getting updates only after the object has changed since the last +// request. Use googleapi.IsNotModified to check whether the response +// error from Do is the result of In-None-Match. +func (c *ProjectsInspectTemplatesGetCall) IfNoneMatch(entityTag string) *ProjectsInspectTemplatesGetCall { + c.ifNoneMatch_ = entityTag + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsInspectTemplatesGetCall) Context(ctx context.Context) *ProjectsInspectTemplatesGetCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsInspectTemplatesGetCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsInspectTemplatesGetCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + if c.ifNoneMatch_ != "" { + reqHeaders.Set("If-None-Match", c.ifNoneMatch_) + } + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v2/{+name}") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("GET", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "dlp.projects.inspectTemplates.get" call. +// Exactly one of *GooglePrivacyDlpV2InspectTemplate or error will be +// non-nil. Any non-2xx status code is an error. Response headers are in +// either *GooglePrivacyDlpV2InspectTemplate.ServerResponse.Header or +// (if a response was returned at all) in +// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check +// whether the returned error was because http.StatusNotModified was +// returned. +func (c *ProjectsInspectTemplatesGetCall) Do(opts ...googleapi.CallOption) (*GooglePrivacyDlpV2InspectTemplate, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &GooglePrivacyDlpV2InspectTemplate{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Gets an inspect template.", + // "flatPath": "v2/projects/{projectsId}/inspectTemplates/{inspectTemplatesId}", + // "httpMethod": "GET", + // "id": "dlp.projects.inspectTemplates.get", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "Resource name of the organization and inspectTemplate to be read, for\nexample `organizations/433245324/inspectTemplates/432452342` or\nprojects/project-id/inspectTemplates/432452342.", + // "location": "path", + // "pattern": "^projects/[^/]+/inspectTemplates/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v2/{+name}", + // "response": { + // "$ref": "GooglePrivacyDlpV2InspectTemplate" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "dlp.projects.inspectTemplates.list": + +type ProjectsInspectTemplatesListCall struct { + s *Service + parent string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// List: Lists inspect templates. +func (r *ProjectsInspectTemplatesService) List(parent string) *ProjectsInspectTemplatesListCall { + c := &ProjectsInspectTemplatesListCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.parent = parent + return c +} + +// PageSize sets the optional parameter "pageSize": Optional size of the +// page, can be limited by server. If zero server returns +// a page of max size 100. +func (c *ProjectsInspectTemplatesListCall) PageSize(pageSize int64) *ProjectsInspectTemplatesListCall { + c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) + return c +} + +// PageToken sets the optional parameter "pageToken": Optional page +// token to continue retrieval. Comes from previous call +// to `ListInspectTemplates`. +func (c *ProjectsInspectTemplatesListCall) PageToken(pageToken string) *ProjectsInspectTemplatesListCall { + c.urlParams_.Set("pageToken", pageToken) + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsInspectTemplatesListCall) Fields(s ...googleapi.Field) *ProjectsInspectTemplatesListCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// IfNoneMatch sets the optional parameter which makes the operation +// fail if the object's ETag matches the given value. This is useful for +// getting updates only after the object has changed since the last +// request. Use googleapi.IsNotModified to check whether the response +// error from Do is the result of In-None-Match. +func (c *ProjectsInspectTemplatesListCall) IfNoneMatch(entityTag string) *ProjectsInspectTemplatesListCall { + c.ifNoneMatch_ = entityTag + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsInspectTemplatesListCall) Context(ctx context.Context) *ProjectsInspectTemplatesListCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsInspectTemplatesListCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsInspectTemplatesListCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + if c.ifNoneMatch_ != "" { + reqHeaders.Set("If-None-Match", c.ifNoneMatch_) + } + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v2/{+parent}/inspectTemplates") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("GET", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "parent": c.parent, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "dlp.projects.inspectTemplates.list" call. +// Exactly one of *GooglePrivacyDlpV2ListInspectTemplatesResponse or +// error will be non-nil. Any non-2xx status code is an error. Response +// headers are in either +// *GooglePrivacyDlpV2ListInspectTemplatesResponse.ServerResponse.Header +// or (if a response was returned at all) in +// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check +// whether the returned error was because http.StatusNotModified was +// returned. +func (c *ProjectsInspectTemplatesListCall) Do(opts ...googleapi.CallOption) (*GooglePrivacyDlpV2ListInspectTemplatesResponse, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &GooglePrivacyDlpV2ListInspectTemplatesResponse{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Lists inspect templates.", + // "flatPath": "v2/projects/{projectsId}/inspectTemplates", + // "httpMethod": "GET", + // "id": "dlp.projects.inspectTemplates.list", + // "parameterOrder": [ + // "parent" + // ], + // "parameters": { + // "pageSize": { + // "description": "Optional size of the page, can be limited by server. If zero server returns\na page of max size 100.", + // "format": "int32", + // "location": "query", + // "type": "integer" + // }, + // "pageToken": { + // "description": "Optional page token to continue retrieval. Comes from previous call\nto `ListInspectTemplates`.", + // "location": "query", + // "type": "string" + // }, + // "parent": { + // "description": "The parent resource name, for example projects/my-project-id or\norganizations/my-org-id.", + // "location": "path", + // "pattern": "^projects/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v2/{+parent}/inspectTemplates", + // "response": { + // "$ref": "GooglePrivacyDlpV2ListInspectTemplatesResponse" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// Pages invokes f for each page of results. +// A non-nil error returned from f will halt the iteration. +// The provided context supersedes any context provided to the Context method. +func (c *ProjectsInspectTemplatesListCall) Pages(ctx context.Context, f func(*GooglePrivacyDlpV2ListInspectTemplatesResponse) error) error { + c.ctx_ = ctx + defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point + for { + x, err := c.Do() + if err != nil { + return err + } + if err := f(x); err != nil { + return err + } + if x.NextPageToken == "" { + return nil + } + c.PageToken(x.NextPageToken) + } +} + +// method id "dlp.projects.inspectTemplates.patch": + +type ProjectsInspectTemplatesPatchCall struct { + s *Service + name string + googleprivacydlpv2updateinspecttemplaterequest *GooglePrivacyDlpV2UpdateInspectTemplateRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Patch: Updates the inspect template. +func (r *ProjectsInspectTemplatesService) Patch(name string, googleprivacydlpv2updateinspecttemplaterequest *GooglePrivacyDlpV2UpdateInspectTemplateRequest) *ProjectsInspectTemplatesPatchCall { + c := &ProjectsInspectTemplatesPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + c.googleprivacydlpv2updateinspecttemplaterequest = googleprivacydlpv2updateinspecttemplaterequest + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsInspectTemplatesPatchCall) Fields(s ...googleapi.Field) *ProjectsInspectTemplatesPatchCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsInspectTemplatesPatchCall) Context(ctx context.Context) *ProjectsInspectTemplatesPatchCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsInspectTemplatesPatchCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsInspectTemplatesPatchCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleprivacydlpv2updateinspecttemplaterequest) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v2/{+name}") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("PATCH", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "dlp.projects.inspectTemplates.patch" call. +// Exactly one of *GooglePrivacyDlpV2InspectTemplate or error will be +// non-nil. Any non-2xx status code is an error. Response headers are in +// either *GooglePrivacyDlpV2InspectTemplate.ServerResponse.Header or +// (if a response was returned at all) in +// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check +// whether the returned error was because http.StatusNotModified was +// returned. +func (c *ProjectsInspectTemplatesPatchCall) Do(opts ...googleapi.CallOption) (*GooglePrivacyDlpV2InspectTemplate, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &GooglePrivacyDlpV2InspectTemplate{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Updates the inspect template.", + // "flatPath": "v2/projects/{projectsId}/inspectTemplates/{inspectTemplatesId}", + // "httpMethod": "PATCH", + // "id": "dlp.projects.inspectTemplates.patch", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "Resource name of organization and inspectTemplate to be updated, for\nexample `organizations/433245324/inspectTemplates/432452342` or\nprojects/project-id/inspectTemplates/432452342.", + // "location": "path", + // "pattern": "^projects/[^/]+/inspectTemplates/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v2/{+name}", + // "request": { + // "$ref": "GooglePrivacyDlpV2UpdateInspectTemplateRequest" + // }, + // "response": { + // "$ref": "GooglePrivacyDlpV2InspectTemplate" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "dlp.projects.jobTriggers.create": + +type ProjectsJobTriggersCreateCall struct { + s *Service + parent string + googleprivacydlpv2createjobtriggerrequest *GooglePrivacyDlpV2CreateJobTriggerRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Create: Creates a job trigger to run DLP actions such as scanning +// storage for +// sensitive information on a set schedule. +func (r *ProjectsJobTriggersService) Create(parent string, googleprivacydlpv2createjobtriggerrequest *GooglePrivacyDlpV2CreateJobTriggerRequest) *ProjectsJobTriggersCreateCall { + c := &ProjectsJobTriggersCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.parent = parent + c.googleprivacydlpv2createjobtriggerrequest = googleprivacydlpv2createjobtriggerrequest + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsJobTriggersCreateCall) Fields(s ...googleapi.Field) *ProjectsJobTriggersCreateCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsJobTriggersCreateCall) Context(ctx context.Context) *ProjectsJobTriggersCreateCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsJobTriggersCreateCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsJobTriggersCreateCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleprivacydlpv2createjobtriggerrequest) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v2/{+parent}/jobTriggers") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("POST", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "parent": c.parent, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "dlp.projects.jobTriggers.create" call. +// Exactly one of *GooglePrivacyDlpV2JobTrigger or error will be +// non-nil. Any non-2xx status code is an error. Response headers are in +// either *GooglePrivacyDlpV2JobTrigger.ServerResponse.Header or (if a +// response was returned at all) in error.(*googleapi.Error).Header. Use +// googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *ProjectsJobTriggersCreateCall) Do(opts ...googleapi.CallOption) (*GooglePrivacyDlpV2JobTrigger, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &GooglePrivacyDlpV2JobTrigger{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Creates a job trigger to run DLP actions such as scanning storage for\nsensitive information on a set schedule.", + // "flatPath": "v2/projects/{projectsId}/jobTriggers", + // "httpMethod": "POST", + // "id": "dlp.projects.jobTriggers.create", + // "parameterOrder": [ + // "parent" + // ], + // "parameters": { + // "parent": { + // "description": "The parent resource name, for example projects/my-project-id.", + // "location": "path", + // "pattern": "^projects/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v2/{+parent}/jobTriggers", + // "request": { + // "$ref": "GooglePrivacyDlpV2CreateJobTriggerRequest" + // }, + // "response": { + // "$ref": "GooglePrivacyDlpV2JobTrigger" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "dlp.projects.jobTriggers.delete": + +type ProjectsJobTriggersDeleteCall struct { + s *Service + name string + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Delete: Deletes a job trigger. +func (r *ProjectsJobTriggersService) Delete(name string) *ProjectsJobTriggersDeleteCall { + c := &ProjectsJobTriggersDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsJobTriggersDeleteCall) Fields(s ...googleapi.Field) *ProjectsJobTriggersDeleteCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsJobTriggersDeleteCall) Context(ctx context.Context) *ProjectsJobTriggersDeleteCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsJobTriggersDeleteCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsJobTriggersDeleteCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v2/{+name}") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("DELETE", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "dlp.projects.jobTriggers.delete" call. +// Exactly one of *GoogleProtobufEmpty or error will be non-nil. Any +// non-2xx status code is an error. Response headers are in either +// *GoogleProtobufEmpty.ServerResponse.Header or (if a response was +// returned at all) in error.(*googleapi.Error).Header. Use +// googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *ProjectsJobTriggersDeleteCall) Do(opts ...googleapi.CallOption) (*GoogleProtobufEmpty, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &GoogleProtobufEmpty{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Deletes a job trigger.", + // "flatPath": "v2/projects/{projectsId}/jobTriggers/{jobTriggersId}", + // "httpMethod": "DELETE", + // "id": "dlp.projects.jobTriggers.delete", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "Resource name of the project and the triggeredJob, for example\n`projects/dlp-test-project/jobTriggers/53234423`.", + // "location": "path", + // "pattern": "^projects/[^/]+/jobTriggers/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v2/{+name}", + // "response": { + // "$ref": "GoogleProtobufEmpty" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "dlp.projects.jobTriggers.get": + +type ProjectsJobTriggersGetCall struct { + s *Service + name string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// Get: Gets a job trigger. +func (r *ProjectsJobTriggersService) Get(name string) *ProjectsJobTriggersGetCall { + c := &ProjectsJobTriggersGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsJobTriggersGetCall) Fields(s ...googleapi.Field) *ProjectsJobTriggersGetCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// IfNoneMatch sets the optional parameter which makes the operation +// fail if the object's ETag matches the given value. This is useful for +// getting updates only after the object has changed since the last +// request. Use googleapi.IsNotModified to check whether the response +// error from Do is the result of In-None-Match. +func (c *ProjectsJobTriggersGetCall) IfNoneMatch(entityTag string) *ProjectsJobTriggersGetCall { + c.ifNoneMatch_ = entityTag + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsJobTriggersGetCall) Context(ctx context.Context) *ProjectsJobTriggersGetCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsJobTriggersGetCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsJobTriggersGetCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + if c.ifNoneMatch_ != "" { + reqHeaders.Set("If-None-Match", c.ifNoneMatch_) + } + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v2/{+name}") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("GET", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "dlp.projects.jobTriggers.get" call. +// Exactly one of *GooglePrivacyDlpV2JobTrigger or error will be +// non-nil. Any non-2xx status code is an error. Response headers are in +// either *GooglePrivacyDlpV2JobTrigger.ServerResponse.Header or (if a +// response was returned at all) in error.(*googleapi.Error).Header. Use +// googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *ProjectsJobTriggersGetCall) Do(opts ...googleapi.CallOption) (*GooglePrivacyDlpV2JobTrigger, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &GooglePrivacyDlpV2JobTrigger{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Gets a job trigger.", + // "flatPath": "v2/projects/{projectsId}/jobTriggers/{jobTriggersId}", + // "httpMethod": "GET", + // "id": "dlp.projects.jobTriggers.get", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "Resource name of the project and the triggeredJob, for example\n`projects/dlp-test-project/jobTriggers/53234423`.", + // "location": "path", + // "pattern": "^projects/[^/]+/jobTriggers/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v2/{+name}", + // "response": { + // "$ref": "GooglePrivacyDlpV2JobTrigger" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "dlp.projects.jobTriggers.list": + +type ProjectsJobTriggersListCall struct { + s *Service + parent string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// List: Lists job triggers. +func (r *ProjectsJobTriggersService) List(parent string) *ProjectsJobTriggersListCall { + c := &ProjectsJobTriggersListCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.parent = parent + return c +} + +// OrderBy sets the optional parameter "orderBy": Optional comma +// separated list of triggeredJob fields to order by, +// followed by 'asc/desc' postfix, i.e. +// "create_time asc,name desc,schedule_mode asc". This list +// is +// case-insensitive. +// +// Example: "name asc,schedule_mode desc, status desc" +// +// Supported filters keys and values are: +// +// - `create_time`: corresponds to time the triggeredJob was created. +// - `update_time`: corresponds to time the triggeredJob was last +// updated. +// - `name`: corresponds to JobTrigger's display name. +// - `status`: corresponds to the triggeredJob status. +func (c *ProjectsJobTriggersListCall) OrderBy(orderBy string) *ProjectsJobTriggersListCall { + c.urlParams_.Set("orderBy", orderBy) + return c +} + +// PageSize sets the optional parameter "pageSize": Optional size of the +// page, can be limited by a server. +func (c *ProjectsJobTriggersListCall) PageSize(pageSize int64) *ProjectsJobTriggersListCall { + c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) + return c +} + +// PageToken sets the optional parameter "pageToken": Optional page +// token to continue retrieval. Comes from previous call +// to ListJobTriggers. `order_by` and `filter` should not change +// for +// subsequent calls, but can be omitted if token is specified. +func (c *ProjectsJobTriggersListCall) PageToken(pageToken string) *ProjectsJobTriggersListCall { + c.urlParams_.Set("pageToken", pageToken) + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsJobTriggersListCall) Fields(s ...googleapi.Field) *ProjectsJobTriggersListCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// IfNoneMatch sets the optional parameter which makes the operation +// fail if the object's ETag matches the given value. This is useful for +// getting updates only after the object has changed since the last +// request. Use googleapi.IsNotModified to check whether the response +// error from Do is the result of In-None-Match. +func (c *ProjectsJobTriggersListCall) IfNoneMatch(entityTag string) *ProjectsJobTriggersListCall { + c.ifNoneMatch_ = entityTag + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsJobTriggersListCall) Context(ctx context.Context) *ProjectsJobTriggersListCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsJobTriggersListCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsJobTriggersListCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + if c.ifNoneMatch_ != "" { + reqHeaders.Set("If-None-Match", c.ifNoneMatch_) + } + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v2/{+parent}/jobTriggers") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("GET", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "parent": c.parent, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "dlp.projects.jobTriggers.list" call. +// Exactly one of *GooglePrivacyDlpV2ListJobTriggersResponse or error +// will be non-nil. Any non-2xx status code is an error. Response +// headers are in either +// *GooglePrivacyDlpV2ListJobTriggersResponse.ServerResponse.Header or +// (if a response was returned at all) in +// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check +// whether the returned error was because http.StatusNotModified was +// returned. +func (c *ProjectsJobTriggersListCall) Do(opts ...googleapi.CallOption) (*GooglePrivacyDlpV2ListJobTriggersResponse, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &GooglePrivacyDlpV2ListJobTriggersResponse{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Lists job triggers.", + // "flatPath": "v2/projects/{projectsId}/jobTriggers", + // "httpMethod": "GET", + // "id": "dlp.projects.jobTriggers.list", + // "parameterOrder": [ + // "parent" + // ], + // "parameters": { + // "orderBy": { + // "description": "Optional comma separated list of triggeredJob fields to order by,\nfollowed by 'asc/desc' postfix, i.e.\n`\"create_time asc,name desc,schedule_mode asc\"`. This list is\ncase-insensitive.\n\nExample: `\"name asc,schedule_mode desc, status desc\"`\n\nSupported filters keys and values are:\n\n- `create_time`: corresponds to time the triggeredJob was created.\n- `update_time`: corresponds to time the triggeredJob was last updated.\n- `name`: corresponds to JobTrigger's display name.\n- `status`: corresponds to the triggeredJob status.", + // "location": "query", + // "type": "string" + // }, + // "pageSize": { + // "description": "Optional size of the page, can be limited by a server.", + // "format": "int32", + // "location": "query", + // "type": "integer" + // }, + // "pageToken": { + // "description": "Optional page token to continue retrieval. Comes from previous call\nto ListJobTriggers. `order_by` and `filter` should not change for\nsubsequent calls, but can be omitted if token is specified.", + // "location": "query", + // "type": "string" + // }, + // "parent": { + // "description": "The parent resource name, for example projects/my-project-id.", + // "location": "path", + // "pattern": "^projects/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v2/{+parent}/jobTriggers", + // "response": { + // "$ref": "GooglePrivacyDlpV2ListJobTriggersResponse" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// Pages invokes f for each page of results. +// A non-nil error returned from f will halt the iteration. +// The provided context supersedes any context provided to the Context method. +func (c *ProjectsJobTriggersListCall) Pages(ctx context.Context, f func(*GooglePrivacyDlpV2ListJobTriggersResponse) error) error { + c.ctx_ = ctx + defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point + for { + x, err := c.Do() + if err != nil { + return err + } + if err := f(x); err != nil { + return err + } + if x.NextPageToken == "" { + return nil + } + c.PageToken(x.NextPageToken) + } +} + +// method id "dlp.projects.jobTriggers.patch": + +type ProjectsJobTriggersPatchCall struct { + s *Service + name string + googleprivacydlpv2updatejobtriggerrequest *GooglePrivacyDlpV2UpdateJobTriggerRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Patch: Updates a job trigger. +func (r *ProjectsJobTriggersService) Patch(name string, googleprivacydlpv2updatejobtriggerrequest *GooglePrivacyDlpV2UpdateJobTriggerRequest) *ProjectsJobTriggersPatchCall { + c := &ProjectsJobTriggersPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + c.googleprivacydlpv2updatejobtriggerrequest = googleprivacydlpv2updatejobtriggerrequest + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsJobTriggersPatchCall) Fields(s ...googleapi.Field) *ProjectsJobTriggersPatchCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsJobTriggersPatchCall) Context(ctx context.Context) *ProjectsJobTriggersPatchCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsJobTriggersPatchCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsJobTriggersPatchCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleprivacydlpv2updatejobtriggerrequest) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v2/{+name}") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("PATCH", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "dlp.projects.jobTriggers.patch" call. +// Exactly one of *GooglePrivacyDlpV2JobTrigger or error will be +// non-nil. Any non-2xx status code is an error. Response headers are in +// either *GooglePrivacyDlpV2JobTrigger.ServerResponse.Header or (if a +// response was returned at all) in error.(*googleapi.Error).Header. Use +// googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *ProjectsJobTriggersPatchCall) Do(opts ...googleapi.CallOption) (*GooglePrivacyDlpV2JobTrigger, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &GooglePrivacyDlpV2JobTrigger{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Updates a job trigger.", + // "flatPath": "v2/projects/{projectsId}/jobTriggers/{jobTriggersId}", + // "httpMethod": "PATCH", + // "id": "dlp.projects.jobTriggers.patch", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "Resource name of the project and the triggeredJob, for example\n`projects/dlp-test-project/jobTriggers/53234423`.", + // "location": "path", + // "pattern": "^projects/[^/]+/jobTriggers/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v2/{+name}", + // "request": { + // "$ref": "GooglePrivacyDlpV2UpdateJobTriggerRequest" + // }, + // "response": { + // "$ref": "GooglePrivacyDlpV2JobTrigger" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} diff --git a/vendor/google.golang.org/api/dlp/v2beta1/dlp-api.json b/vendor/google.golang.org/api/dlp/v2beta1/dlp-api.json index af4f44a18..97411adf0 100644 --- a/vendor/google.golang.org/api/dlp/v2beta1/dlp-api.json +++ b/vendor/google.golang.org/api/dlp/v2beta1/dlp-api.json @@ -1,125 +1,389 @@ { - "ownerDomain": "google.com", - "name": "dlp", + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/cloud-platform": { + "description": "View and manage your data across Google Cloud Platform services" + } + } + } + }, + "basePath": "", + "baseUrl": "https://dlp.googleapis.com/", "batchPath": "batch", + "canonicalName": "DLP", + "description": "Provides methods for detection, risk analysis, and de-identification of privacy-sensitive fragments in text, images, and Google Cloud Platform storage repositories.", + "discoveryVersion": "v1", + "documentationLink": "https://cloud.google.com/dlp/docs/", "fullyEncodeReservedExpansion": true, - "title": "DLP API", + "icons": { + "x16": "http://www.google.com/images/icons/product/search-16.gif", + "x32": "http://www.google.com/images/icons/product/search-32.gif" + }, + "id": "dlp:v2beta1", + "kind": "discovery#restDescription", + "name": "dlp", + "ownerDomain": "google.com", "ownerName": "Google", + "parameters": { + "$.xgafv": { + "description": "V1 error format.", + "enum": [ + "1", + "2" + ], + "enumDescriptions": [ + "v1 error format", + "v2 error format" + ], + "location": "query", + "type": "string" + }, + "access_token": { + "description": "OAuth access token.", + "location": "query", + "type": "string" + }, + "alt": { + "default": "json", + "description": "Data format for response.", + "enum": [ + "json", + "media", + "proto" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json", + "Media download with context-dependent Content-Type", + "Responses with Content-Type of application/x-protobuf" + ], + "location": "query", + "type": "string" + }, + "bearer_token": { + "description": "OAuth bearer token.", + "location": "query", + "type": "string" + }, + "callback": { + "description": "JSONP", + "location": "query", + "type": "string" + }, + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "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.", + "location": "query", + "type": "string" + }, + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "pp": { + "default": "true", + "description": "Pretty-print response.", + "location": "query", + "type": "boolean" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", + "location": "query", + "type": "string" + }, + "uploadType": { + "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", + "location": "query", + "type": "string" + }, + "upload_protocol": { + "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", + "location": "query", + "type": "string" + } + }, + "protocol": "rest", "resources": { "content": { "methods": { - "inspect": { - "request": { - "$ref": "GooglePrivacyDlpV2beta1InspectContentRequest" - }, - "description": "Finds potentially sensitive info in a list of strings.\nThis method has limits on input size, processing time, and output size.", - "httpMethod": "POST", - "parameterOrder": [], - "response": { - "$ref": "GooglePrivacyDlpV2beta1InspectContentResponse" - }, - "parameters": {}, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v2beta1/content:inspect", - "id": "dlp.content.inspect", - "path": "v2beta1/content:inspect" - }, - "redact": { - "description": "Redacts potentially sensitive info from a list of strings.\nThis method has limits on input size, processing time, and output size.", - "request": { - "$ref": "GooglePrivacyDlpV2beta1RedactContentRequest" - }, - "response": { - "$ref": "GooglePrivacyDlpV2beta1RedactContentResponse" - }, - "parameterOrder": [], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": {}, - "flatPath": "v2beta1/content:redact", - "path": "v2beta1/content:redact", - "id": "dlp.content.redact" - }, "deidentify": { "description": "De-identifies potentially sensitive info from a list of strings.\nThis method has limits on input size and output size.", + "flatPath": "v2beta1/content:deidentify", + "httpMethod": "POST", + "id": "dlp.content.deidentify", + "parameterOrder": [], + "parameters": {}, + "path": "v2beta1/content:deidentify", "request": { "$ref": "GooglePrivacyDlpV2beta1DeidentifyContentRequest" }, "response": { "$ref": "GooglePrivacyDlpV2beta1DeidentifyContentResponse" }, - "parameterOrder": [], - "httpMethod": "POST", "scopes": [ "https://www.googleapis.com/auth/cloud-platform" - ], + ] + }, + "inspect": { + "description": "Finds potentially sensitive info in a list of strings.\nThis method has limits on input size, processing time, and output size.", + "flatPath": "v2beta1/content:inspect", + "httpMethod": "POST", + "id": "dlp.content.inspect", + "parameterOrder": [], "parameters": {}, - "flatPath": "v2beta1/content:deidentify", - "path": "v2beta1/content:deidentify", - "id": "dlp.content.deidentify" + "path": "v2beta1/content:inspect", + "request": { + "$ref": "GooglePrivacyDlpV2beta1InspectContentRequest" + }, + "response": { + "$ref": "GooglePrivacyDlpV2beta1InspectContentResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "redact": { + "description": "Redacts potentially sensitive info from a list of strings.\nThis method has limits on input size, processing time, and output size.", + "flatPath": "v2beta1/content:redact", + "httpMethod": "POST", + "id": "dlp.content.redact", + "parameterOrder": [], + "parameters": {}, + "path": "v2beta1/content:redact", + "request": { + "$ref": "GooglePrivacyDlpV2beta1RedactContentRequest" + }, + "response": { + "$ref": "GooglePrivacyDlpV2beta1RedactContentResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] } } }, - "rootCategories": { + "dataSource": { "methods": { - "list": { - "description": "Returns the list of root categories of sensitive information.", - "response": { - "$ref": "GooglePrivacyDlpV2beta1ListRootCategoriesResponse" - }, + "analyze": { + "description": "Schedules a job to compute risk analysis metrics over content in a Google\nCloud Platform repository.", + "flatPath": "v2beta1/dataSource:analyze", + "httpMethod": "POST", + "id": "dlp.dataSource.analyze", "parameterOrder": [], - "httpMethod": "GET", + "parameters": {}, + "path": "v2beta1/dataSource:analyze", + "request": { + "$ref": "GooglePrivacyDlpV2beta1AnalyzeDataSourceRiskRequest" + }, + "response": { + "$ref": "GoogleLongrunningOperation" + }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "languageCode": { - "description": "Optional language code for localized friendly category names.\nIf omitted or if localized strings are not available,\nen-US strings will be returned.", - "type": "string", - "location": "query" - } - }, - "flatPath": "v2beta1/rootCategories", - "path": "v2beta1/rootCategories", - "id": "dlp.rootCategories.list" + ] } - }, + } + }, + "inspect": { "resources": { - "infoTypes": { + "operations": { "methods": { - "list": { - "description": "Returns sensitive information types for given category.", - "response": { - "$ref": "GooglePrivacyDlpV2beta1ListInfoTypesResponse" - }, + "cancel": { + "description": "Cancels an operation. Use the `inspect.operations.get` to check whether the cancellation succeeded or the operation completed despite cancellation.", + "flatPath": "v2beta1/inspect/operations/{operationsId}:cancel", + "httpMethod": "POST", + "id": "dlp.inspect.operations.cancel", "parameterOrder": [ - "category" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "name" ], "parameters": { - "category": { + "name": { + "description": "The name of the operation resource to be cancelled.", "location": "path", - "description": "Category name as returned by ListRootCategories.", + "pattern": "^inspect/operations/[^/]+$", "required": true, - "type": "string", - "pattern": "^[^/]+$" - }, - "languageCode": { - "description": "Optional BCP-47 language code for localized info type friendly\nnames. If omitted, or if localized strings are not available,\nen-US strings will be returned.", - "type": "string", - "location": "query" + "type": "string" } }, - "flatPath": "v2beta1/rootCategories/{rootCategoriesId}/infoTypes", - "path": "v2beta1/rootCategories/{+category}/infoTypes", - "id": "dlp.rootCategories.infoTypes.list" + "path": "v2beta1/{+name}:cancel", + "request": { + "$ref": "GoogleLongrunningCancelOperationRequest" + }, + "response": { + "$ref": "GoogleProtobufEmpty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "create": { + "description": "Schedules a job scanning content in a Google Cloud Platform data\nrepository.", + "flatPath": "v2beta1/inspect/operations", + "httpMethod": "POST", + "id": "dlp.inspect.operations.create", + "parameterOrder": [], + "parameters": {}, + "path": "v2beta1/inspect/operations", + "request": { + "$ref": "GooglePrivacyDlpV2beta1CreateInspectOperationRequest" + }, + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "This method is not supported and the server returns `UNIMPLEMENTED`.", + "flatPath": "v2beta1/inspect/operations/{operationsId}", + "httpMethod": "DELETE", + "id": "dlp.inspect.operations.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource to be deleted.", + "location": "path", + "pattern": "^inspect/operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2beta1/{+name}", + "response": { + "$ref": "GoogleProtobufEmpty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Gets the latest state of a long-running operation. Clients can use this\nmethod to poll the operation result at intervals as recommended by the API\nservice.", + "flatPath": "v2beta1/inspect/operations/{operationsId}", + "httpMethod": "GET", + "id": "dlp.inspect.operations.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource.", + "location": "path", + "pattern": "^inspect/operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2beta1/{+name}", + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Fetches the list of long running operations.", + "flatPath": "v2beta1/inspect/operations", + "httpMethod": "GET", + "id": "dlp.inspect.operations.list", + "parameterOrder": [ + "name" + ], + "parameters": { + "filter": { + "description": "Filters by `done`. That is, `done=true` or `done=false`.", + "location": "query", + "type": "string" + }, + "name": { + "description": "The name of the operation's parent resource.", + "location": "path", + "pattern": "^inspect/operations$", + "required": true, + "type": "string" + }, + "pageSize": { + "description": "The list page size. The maximum allowed value is 256 and the default is 100.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "The standard list page token.", + "location": "query", + "type": "string" + } + }, + "path": "v2beta1/{+name}", + "response": { + "$ref": "GoogleLongrunningListOperationsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + }, + "results": { + "resources": { + "findings": { + "methods": { + "list": { + "description": "Returns list of results for given inspect operation result set id.", + "flatPath": "v2beta1/inspect/results/{resultsId}/findings", + "httpMethod": "GET", + "id": "dlp.inspect.results.findings.list", + "parameterOrder": [ + "name" + ], + "parameters": { + "filter": { + "description": "Restricts findings to items that match. Supports info_type and likelihood.\n\nExamples:\n\n- info_type=EMAIL_ADDRESS\n- info_type=PHONE_NUMBER,EMAIL_ADDRESS\n- likelihood=VERY_LIKELY\n- likelihood=VERY_LIKELY,LIKELY\n- info_type=EMAIL_ADDRESS,likelihood=VERY_LIKELY,LIKELY", + "location": "query", + "type": "string" + }, + "name": { + "description": "Identifier of the results set returned as metadata of\nthe longrunning operation created by a call to InspectDataSource.\nShould be in the format of `inspect/results/{id}`.", + "location": "path", + "pattern": "^inspect/results/[^/]+$", + "required": true, + "type": "string" + }, + "pageSize": { + "description": "Maximum number of results to return.\nIf 0, the implementation selects a reasonable value.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "The value returned by the last `ListInspectFindingsResponse`; indicates\nthat this is a continuation of a prior `ListInspectFindings` call, and that\nthe system should return the next page of data.", + "location": "query", + "type": "string" + } + }, + "path": "v2beta1/{+name}/findings", + "response": { + "$ref": "GooglePrivacyDlpV2beta1ListInspectFindingsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } } } } @@ -129,1009 +393,404 @@ "resources": { "operations": { "methods": { + "cancel": { + "description": "Cancels an operation. Use the `inspect.operations.get` to check whether the cancellation succeeded or the operation completed despite cancellation.", + "flatPath": "v2beta1/riskAnalysis/operations/{operationsId}:cancel", + "httpMethod": "POST", + "id": "dlp.riskAnalysis.operations.cancel", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource to be cancelled.", + "location": "path", + "pattern": "^riskAnalysis/operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2beta1/{+name}:cancel", + "request": { + "$ref": "GoogleLongrunningCancelOperationRequest" + }, + "response": { + "$ref": "GoogleProtobufEmpty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "This method is not supported and the server returns `UNIMPLEMENTED`.", + "flatPath": "v2beta1/riskAnalysis/operations/{operationsId}", + "httpMethod": "DELETE", + "id": "dlp.riskAnalysis.operations.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource to be deleted.", + "location": "path", + "pattern": "^riskAnalysis/operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2beta1/{+name}", + "response": { + "$ref": "GoogleProtobufEmpty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Gets the latest state of a long-running operation. Clients can use this\nmethod to poll the operation result at intervals as recommended by the API\nservice.", + "flatPath": "v2beta1/riskAnalysis/operations/{operationsId}", + "httpMethod": "GET", + "id": "dlp.riskAnalysis.operations.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource.", + "location": "path", + "pattern": "^riskAnalysis/operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2beta1/{+name}", + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, "list": { "description": "Fetches the list of long running operations.", - "response": { - "$ref": "GoogleLongrunningListOperationsResponse" - }, + "flatPath": "v2beta1/riskAnalysis/operations", + "httpMethod": "GET", + "id": "dlp.riskAnalysis.operations.list", "parameterOrder": [ "name" ], - "httpMethod": "GET", "parameters": { - "pageSize": { + "filter": { + "description": "Filters by `done`. That is, `done=true` or `done=false`.", "location": "query", + "type": "string" + }, + "name": { + "description": "The name of the operation's parent resource.", + "location": "path", + "pattern": "^riskAnalysis/operations$", + "required": true, + "type": "string" + }, + "pageSize": { "description": "The list page size. The maximum allowed value is 256 and the default is 100.", "format": "int32", + "location": "query", "type": "integer" }, - "filter": { - "location": "query", - "description": "Filters by `done`. That is, `done=true` or `done=false`.", - "type": "string" - }, - "name": { - "location": "path", - "description": "The name of the operation's parent resource.", - "required": true, - "type": "string", - "pattern": "^riskAnalysis/operations$" - }, "pageToken": { "description": "The standard list page token.", - "type": "string", - "location": "query" + "location": "query", + "type": "string" } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v2beta1/riskAnalysis/operations", "path": "v2beta1/{+name}", - "id": "dlp.riskAnalysis.operations.list" - }, - "get": { - "httpMethod": "GET", - "response": { - "$ref": "GoogleLongrunningOperation" - }, - "parameterOrder": [ - "name" - ], - "parameters": { - "name": { - "description": "The name of the operation resource.", - "required": true, - "type": "string", - "pattern": "^riskAnalysis/operations/[^/]+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v2beta1/riskAnalysis/operations/{operationsId}", - "id": "dlp.riskAnalysis.operations.get", - "path": "v2beta1/{+name}", - "description": "Gets the latest state of a long-running operation. Clients can use this\nmethod to poll the operation result at intervals as recommended by the API\nservice." - }, - "cancel": { - "description": "Cancels an operation. Use the `inspect.operations.get` to check whether the cancellation succeeded or the operation completed despite cancellation.", - "request": { - "$ref": "GoogleLongrunningCancelOperationRequest" - }, - "response": { - "$ref": "GoogleProtobufEmpty" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "name": { - "location": "path", - "description": "The name of the operation resource to be cancelled.", - "required": true, - "type": "string", - "pattern": "^riskAnalysis/operations/[^/]+$" - } - }, - "flatPath": "v2beta1/riskAnalysis/operations/{operationsId}:cancel", - "path": "v2beta1/{+name}:cancel", - "id": "dlp.riskAnalysis.operations.cancel" - }, - "delete": { - "flatPath": "v2beta1/riskAnalysis/operations/{operationsId}", - "id": "dlp.riskAnalysis.operations.delete", - "path": "v2beta1/{+name}", - "description": "This method is not supported and the server returns `UNIMPLEMENTED`.", - "httpMethod": "DELETE", - "response": { - "$ref": "GoogleProtobufEmpty" - }, - "parameterOrder": [ - "name" - ], - "parameters": { - "name": { - "location": "path", - "description": "The name of the operation resource to be deleted.", - "required": true, - "type": "string", - "pattern": "^riskAnalysis/operations/[^/]+$" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - } - } - } - } - }, - "dataSource": { - "methods": { - "analyze": { - "response": { - "$ref": "GoogleLongrunningOperation" - }, - "parameterOrder": [], - "httpMethod": "POST", - "parameters": {}, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v2beta1/dataSource:analyze", - "path": "v2beta1/dataSource:analyze", - "id": "dlp.dataSource.analyze", - "request": { - "$ref": "GooglePrivacyDlpV2beta1AnalyzeDataSourceRiskRequest" - }, - "description": "Schedules a job to compute risk analysis metrics over content in a Google\nCloud Platform repository." - } - } - }, - "inspect": { - "resources": { - "results": { - "resources": { - "findings": { - "methods": { - "list": { - "response": { - "$ref": "GooglePrivacyDlpV2beta1ListInspectFindingsResponse" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "pageSize": { - "description": "Maximum number of results to return.\nIf 0, the implementation selects a reasonable value.", - "format": "int32", - "type": "integer", - "location": "query" - }, - "filter": { - "description": "Restricts findings to items that match. Supports info_type and likelihood.\n\nExamples:\n\n- info_type=EMAIL_ADDRESS\n- info_type=PHONE_NUMBER,EMAIL_ADDRESS\n- likelihood=VERY_LIKELY\n- likelihood=VERY_LIKELY,LIKELY\n- info_type=EMAIL_ADDRESS,likelihood=VERY_LIKELY,LIKELY", - "type": "string", - "location": "query" - }, - "name": { - "location": "path", - "description": "Identifier of the results set returned as metadata of\nthe longrunning operation created by a call to InspectDataSource.\nShould be in the format of `inspect/results/{id}`.", - "required": true, - "type": "string", - "pattern": "^inspect/results/[^/]+$" - }, - "pageToken": { - "location": "query", - "description": "The value returned by the last `ListInspectFindingsResponse`; indicates\nthat this is a continuation of a prior `ListInspectFindings` call, and that\nthe system should return the next page of data.", - "type": "string" - } - }, - "flatPath": "v2beta1/inspect/results/{resultsId}/findings", - "path": "v2beta1/{+name}/findings", - "id": "dlp.inspect.results.findings.list", - "description": "Returns list of results for given inspect operation result set id." - } - } - } - } - }, - "operations": { - "methods": { - "list": { "response": { "$ref": "GoogleLongrunningListOperationsResponse" }, - "parameterOrder": [ - "name" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "pageSize": { - "description": "The list page size. The maximum allowed value is 256 and the default is 100.", - "format": "int32", - "type": "integer", - "location": "query" - }, - "filter": { - "location": "query", - "description": "Filters by `done`. That is, `done=true` or `done=false`.", - "type": "string" - }, - "name": { - "description": "The name of the operation's parent resource.", - "required": true, - "type": "string", - "pattern": "^inspect/operations$", - "location": "path" - }, - "pageToken": { - "description": "The standard list page token.", - "type": "string", - "location": "query" - } - }, - "flatPath": "v2beta1/inspect/operations", - "path": "v2beta1/{+name}", - "id": "dlp.inspect.operations.list", - "description": "Fetches the list of long running operations." - }, - "get": { - "flatPath": "v2beta1/inspect/operations/{operationsId}", - "path": "v2beta1/{+name}", - "id": "dlp.inspect.operations.get", - "description": "Gets the latest state of a long-running operation. Clients can use this\nmethod to poll the operation result at intervals as recommended by the API\nservice.", - "response": { - "$ref": "GoogleLongrunningOperation" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "GET", - "parameters": { - "name": { - "description": "The name of the operation resource.", - "required": true, - "type": "string", - "pattern": "^inspect/operations/[^/]+$", - "location": "path" - } - }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ] - }, - "create": { - "request": { - "$ref": "GooglePrivacyDlpV2beta1CreateInspectOperationRequest" - }, - "description": "Schedules a job scanning content in a Google Cloud Platform data\nrepository.", - "httpMethod": "POST", - "parameterOrder": [], - "response": { - "$ref": "GoogleLongrunningOperation" - }, - "parameters": {}, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v2beta1/inspect/operations", - "id": "dlp.inspect.operations.create", - "path": "v2beta1/inspect/operations" - }, - "cancel": { - "request": { - "$ref": "GoogleLongrunningCancelOperationRequest" - }, - "description": "Cancels an operation. Use the `inspect.operations.get` to check whether the cancellation succeeded or the operation completed despite cancellation.", - "httpMethod": "POST", - "parameterOrder": [ - "name" - ], - "response": { - "$ref": "GoogleProtobufEmpty" - }, - "parameters": { - "name": { - "location": "path", - "description": "The name of the operation resource to be cancelled.", - "required": true, - "type": "string", - "pattern": "^inspect/operations/[^/]+$" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v2beta1/inspect/operations/{operationsId}:cancel", - "id": "dlp.inspect.operations.cancel", - "path": "v2beta1/{+name}:cancel" - }, - "delete": { - "description": "This method is not supported and the server returns `UNIMPLEMENTED`.", - "response": { - "$ref": "GoogleProtobufEmpty" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "DELETE", - "parameters": { - "name": { - "location": "path", - "description": "The name of the operation resource to be deleted.", - "required": true, - "type": "string", - "pattern": "^inspect/operations/[^/]+$" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v2beta1/inspect/operations/{operationsId}", - "path": "v2beta1/{+name}", - "id": "dlp.inspect.operations.delete" } } } } - } - }, - "parameters": { - "upload_protocol": { - "location": "query", - "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", - "type": "string" }, - "prettyPrint": { - "location": "query", - "description": "Returns response with indentations and line breaks.", - "type": "boolean", - "default": "true" - }, - "fields": { - "location": "query", - "description": "Selector specifying which fields to include in a partial response.", - "type": "string" - }, - "uploadType": { - "location": "query", - "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", - "type": "string" - }, - "callback": { - "description": "JSONP", - "type": "string", - "location": "query" - }, - "$.xgafv": { - "enumDescriptions": [ - "v1 error format", - "v2 error format" - ], - "location": "query", - "enum": [ - "1", - "2" - ], - "description": "V1 error format.", - "type": "string" - }, - "alt": { - "enum": [ - "json", - "media", - "proto" - ], - "type": "string", - "enumDescriptions": [ - "Responses with Content-Type of application/json", - "Media download with context-dependent Content-Type", - "Responses with Content-Type of application/x-protobuf" - ], - "location": "query", - "description": "Data format for response.", - "default": "json" - }, - "access_token": { - "description": "OAuth access token.", - "type": "string", - "location": "query" - }, - "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.", - "type": "string", - "location": "query" - }, - "quotaUser": { - "location": "query", - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", - "type": "string" - }, - "pp": { - "location": "query", - "description": "Pretty-print response.", - "type": "boolean", - "default": "true" - }, - "bearer_token": { - "location": "query", - "description": "OAuth bearer token.", - "type": "string" - }, - "oauth_token": { - "location": "query", - "description": "OAuth 2.0 token for the current user.", - "type": "string" - } - }, - "version": "v2beta1", - "baseUrl": "https://dlp.googleapis.com/", - "kind": "discovery#restDescription", - "description": "The Google Data Loss Prevention API provides methods for detection of privacy-sensitive fragments in text, images, and Google Cloud Platform storage repositories.", - "servicePath": "", - "basePath": "", - "id": "dlp:v2beta1", - "documentationLink": "https://cloud.google.com/dlp/docs/", - "revision": "20180118", - "discoveryVersion": "v1", - "version_module": true, - "schemas": { - "GooglePrivacyDlpV2beta1InspectConfig": { - "description": "Configuration description of the scanning process.\nWhen used with redactContent only info_types and min_likelihood are currently\nused.", - "type": "object", - "properties": { - "infoTypeLimits": { - "description": "Configuration of findings limit given for specified info types.", - "type": "array", - "items": { - "$ref": "GooglePrivacyDlpV2beta1InfoTypeLimit" - } - }, - "maxFindings": { - "description": "Limits the number of findings per content item or long running operation.", - "format": "int32", - "type": "integer" - }, - "infoTypes": { - "description": "Restricts what info_types to look for. The values must correspond to\nInfoType values returned by ListInfoTypes or found in documentation.\nEmpty info_types runs all enabled detectors.", - "type": "array", - "items": { - "$ref": "GooglePrivacyDlpV2beta1InfoType" - } - }, - "includeQuote": { - "description": "When true, a contextual quote from the data that triggered a finding is\nincluded in the response; see Finding.quote.", - "type": "boolean" - }, - "customInfoTypes": { - "description": "Custom info types provided by the user.", - "type": "array", - "items": { - "$ref": "GooglePrivacyDlpV2beta1CustomInfoType" - } - }, - "excludeTypes": { - "description": "When true, excludes type information of the findings.", - "type": "boolean" - }, - "minLikelihood": { - "description": "Only returns findings equal or above this threshold.", - "type": "string", - "enumDescriptions": [ - "Default value; information with all likelihoods is included.", - "Few matching elements.", - "", - "Some matching elements.", - "", - "Many matching elements." - ], - "enum": [ - "LIKELIHOOD_UNSPECIFIED", - "VERY_UNLIKELY", - "UNLIKELY", - "POSSIBLE", - "LIKELY", - "VERY_LIKELY" + "rootCategories": { + "methods": { + "list": { + "description": "Returns the list of root categories of sensitive information.", + "flatPath": "v2beta1/rootCategories", + "httpMethod": "GET", + "id": "dlp.rootCategories.list", + "parameterOrder": [], + "parameters": { + "languageCode": { + "description": "Optional language code for localized friendly category names.\nIf omitted or if localized strings are not available,\nen-US strings will be returned.", + "location": "query", + "type": "string" + } + }, + "path": "v2beta1/rootCategories", + "response": { + "$ref": "GooglePrivacyDlpV2beta1ListRootCategoriesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" ] } }, - "id": "GooglePrivacyDlpV2beta1InspectConfig" - }, - "GooglePrivacyDlpV2beta1Projection": { - "description": "A representation of a Datastore property in a projection.", - "type": "object", - "properties": { - "property": { - "description": "The property to project.", - "$ref": "GooglePrivacyDlpV2beta1PropertyReference" + "resources": { + "infoTypes": { + "methods": { + "list": { + "description": "Returns sensitive information types for given category.", + "flatPath": "v2beta1/rootCategories/{rootCategoriesId}/infoTypes", + "httpMethod": "GET", + "id": "dlp.rootCategories.infoTypes.list", + "parameterOrder": [ + "category" + ], + "parameters": { + "category": { + "description": "Category name as returned by ListRootCategories.", + "location": "path", + "pattern": "^[^/]+$", + "required": true, + "type": "string" + }, + "languageCode": { + "description": "Optional BCP-47 language code for localized info type friendly\nnames. If omitted, or if localized strings are not available,\nen-US strings will be returned.", + "location": "query", + "type": "string" + } + }, + "path": "v2beta1/rootCategories/{+category}/infoTypes", + "response": { + "$ref": "GooglePrivacyDlpV2beta1ListInfoTypesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } } - }, - "id": "GooglePrivacyDlpV2beta1Projection" - }, - "GooglePrivacyDlpV2beta1RedactConfig": { - "description": "Redact a given value. For example, if used with an `InfoTypeTransformation`\ntransforming PHONE_NUMBER, and input 'My phone number is 206-555-0123', the\noutput would be 'My phone number is '.", - "type": "object", + } + } + }, + "revision": "20180320", + "rootUrl": "https://dlp.googleapis.com/", + "schemas": { + "GoogleLongrunningCancelOperationRequest": { + "description": "The request message for Operations.CancelOperation.", + "id": "GoogleLongrunningCancelOperationRequest", "properties": {}, - "id": "GooglePrivacyDlpV2beta1RedactConfig" + "type": "object" }, - "GooglePrivacyDlpV2beta1CryptoHashConfig": { - "description": "Pseudonymization method that generates surrogates via cryptographic hashing.\nUses SHA-256.\nOutputs a 32 byte digest as an uppercase hex string\n(for example, 41D1567F7F99F1DC2A5FAB886DEE5BEE).\nCurrently, only string and integer values can be hashed.", - "type": "object", + "GoogleLongrunningListOperationsResponse": { + "description": "The response message for Operations.ListOperations.", + "id": "GoogleLongrunningListOperationsResponse", "properties": { - "cryptoKey": { - "$ref": "GooglePrivacyDlpV2beta1CryptoKey", - "description": "The key used by the hash function." - } - }, - "id": "GooglePrivacyDlpV2beta1CryptoHashConfig" - }, - "GooglePrivacyDlpV2beta1Key": { - "description": "A unique identifier for a Datastore entity.\nIf a key's partition ID or any of its path kinds or names are\nreserved/read-only, the key is reserved/read-only.\nA reserved/read-only key is forbidden in certain documented contexts.", - "type": "object", - "properties": { - "path": { - "description": "The entity path.\nAn entity path consists of one or more elements composed of a kind and a\nstring or numerical identifier, which identify entities. The first\nelement identifies a _root entity_, the second element identifies\na _child_ of the root entity, the third element identifies a child of the\nsecond entity, and so forth. The entities identified by all prefixes of\nthe path are called the element's _ancestors_.\n\nA path can never be empty, and a path can have at most 100 elements.", - "type": "array", - "items": { - "$ref": "GooglePrivacyDlpV2beta1PathElement" - } - }, - "partitionId": { - "$ref": "GooglePrivacyDlpV2beta1PartitionId", - "description": "Entities are partitioned into subsets, currently identified by a project\nID and namespace ID.\nQueries are scoped to a single partition." - } - }, - "id": "GooglePrivacyDlpV2beta1Key" - }, - "GooglePrivacyDlpV2beta1InspectContentRequest": { - "description": "Request to search for potentially sensitive info in a list of items.", - "type": "object", - "properties": { - "items": { - "description": "The list of items to inspect. Items in a single request are\nconsidered \"related\" unless inspect_config.independent_inputs is true.\nUp to 100 are allowed per request.", - "type": "array", - "items": { - "$ref": "GooglePrivacyDlpV2beta1ContentItem" - } - }, - "inspectConfig": { - "description": "Configuration for the inspector.", - "$ref": "GooglePrivacyDlpV2beta1InspectConfig" - } - }, - "id": "GooglePrivacyDlpV2beta1InspectContentRequest" - }, - "GoogleTypeDate": { - "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`.", - "type": "object", - "properties": { - "year": { - "description": "Year of date. Must be from 1 to 9999, or 0 if specifying a date without\na year.", - "format": "int32", - "type": "integer" - }, - "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" - }, - "month": { - "description": "Month of year. Must be from 1 to 12.", - "format": "int32", - "type": "integer" - } - }, - "id": "GoogleTypeDate" - }, - "GooglePrivacyDlpV2beta1ImageRedactionConfig": { - "description": "Configuration for determining how redaction of images should occur.", - "type": "object", - "properties": { - "infoType": { - "description": "Only one per info_type should be provided per request. If not\nspecified, and redact_all_text is false, the DLP API will redact all\ntext that it matches against all info_types that are found, but not\nspecified in another ImageRedactionConfig.", - "$ref": "GooglePrivacyDlpV2beta1InfoType" - }, - "redactionColor": { - "description": "The color to use when redacting content from an image. If not specified,\nthe default is black.", - "$ref": "GooglePrivacyDlpV2beta1Color" - }, - "redactAllText": { - "description": "If true, all text found in the image, regardless whether it matches an\ninfo_type, is redacted.", - "type": "boolean" - } - }, - "id": "GooglePrivacyDlpV2beta1ImageRedactionConfig" - }, - "GooglePrivacyDlpV2beta1ReplaceWithInfoTypeConfig": { - "description": "Replace each matching finding with the name of the info_type.", - "type": "object", - "properties": {}, - "id": "GooglePrivacyDlpV2beta1ReplaceWithInfoTypeConfig" - }, - "GooglePrivacyDlpV2beta1Location": { - "description": "Specifies the location of the finding.", - "type": "object", - "properties": { - "codepointRange": { - "$ref": "GooglePrivacyDlpV2beta1Range", - "description": "Unicode character offsets delimiting the finding.\nThese are relative to the finding's containing element.\nProvided when the content is text." - }, - "fieldId": { - "$ref": "GooglePrivacyDlpV2beta1FieldId", - "description": "The pointer to the property or cell that contained the finding.\nProvided when the finding's containing element is a cell in a table\nor a property of storage object." - }, - "imageBoxes": { - "description": "The area within the image that contained the finding.\nProvided when the content is an image.", - "type": "array", - "items": { - "$ref": "GooglePrivacyDlpV2beta1ImageLocation" - } - }, - "byteRange": { - "description": "Zero-based byte offsets delimiting the finding.\nThese are relative to the finding's containing element.\nNote that when the content is not textual, this references\nthe UTF-8 encoded textual representation of the content.\nOmitted if content is an image.", - "$ref": "GooglePrivacyDlpV2beta1Range" - }, - "recordKey": { - "$ref": "GooglePrivacyDlpV2beta1RecordKey", - "description": "The pointer to the record in storage that contained the field the\nfinding was found in.\nProvided when the finding's containing element is a property\nof a storage object." - }, - "tableLocation": { - "$ref": "GooglePrivacyDlpV2beta1TableLocation", - "description": "The pointer to the row of the table that contained the finding.\nProvided when the finding's containing element is a cell of a table." - } - }, - "id": "GooglePrivacyDlpV2beta1Location" - }, - "GooglePrivacyDlpV2beta1RecordSuppression": { - "description": "Configuration to suppress records whose suppression conditions evaluate to\ntrue.", - "type": "object", - "properties": { - "condition": { - "$ref": "GooglePrivacyDlpV2beta1RecordCondition" - } - }, - "id": "GooglePrivacyDlpV2beta1RecordSuppression" - }, - "GooglePrivacyDlpV2beta1InfoTypeDescription": { - "description": "Description of the information type (infoType).", - "type": "object", - "properties": { - "displayName": { - "description": "Human readable form of the infoType name.", + "nextPageToken": { + "description": "The standard List next-page token.", "type": "string" }, - "categories": { - "description": "List of categories this infoType belongs to.", - "type": "array", + "operations": { + "description": "A list of operations that matches the specified filter in the request.", "items": { - "$ref": "GooglePrivacyDlpV2beta1CategoryDescription" - } + "$ref": "GoogleLongrunningOperation" + }, + "type": "array" + } + }, + "type": "object" + }, + "GoogleLongrunningOperation": { + "description": "This resource represents a long-running operation that is the result of a\nnetwork API call.", + "id": "GoogleLongrunningOperation", + "properties": { + "done": { + "description": "If the value is `false`, it means the operation is still in progress.\nIf `true`, the operation is completed, and either `error` or `response` is\navailable.", + "type": "boolean" + }, + "error": { + "$ref": "GoogleRpcStatus", + "description": "The error result of the operation in case of failure or cancellation." + }, + "metadata": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "description": "This field will contain an InspectOperationMetadata object for `inspect.operations.create` or a RiskAnalysisOperationMetadata object for `dataSource.analyze`. This will always be returned with the Operation.", + "type": "object" }, "name": { - "description": "Internal name of the infoType.", + "description": "The server-assigned name. The `name` should have the format of `inspect/operations/\u003cidentifier\u003e`.", "type": "string" - } - }, - "id": "GooglePrivacyDlpV2beta1InfoTypeDescription" - }, - "GooglePrivacyDlpV2beta1CustomInfoType": { - "description": "Custom information type provided by the user. Used to find domain-specific\nsensitive information configurable to the data in question.", - "type": "object", - "properties": { - "infoType": { - "$ref": "GooglePrivacyDlpV2beta1InfoType", - "description": "Info type configuration. All custom info types must have configurations\nthat do not conflict with built-in info types or other custom info types." }, - "dictionary": { - "$ref": "GooglePrivacyDlpV2beta1Dictionary", - "description": "Dictionary-based custom info type." + "response": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "description": "This field will contain an InspectOperationResult object for `inspect.operations.create` or a RiskAnalysisOperationResult object for `dataSource.analyze`.", + "type": "object" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1AnalyzeDataSourceRiskRequest": { + "description": "Request for creating a risk analysis operation.", + "id": "GooglePrivacyDlpV2beta1AnalyzeDataSourceRiskRequest", + "properties": { + "privacyMetric": { + "$ref": "GooglePrivacyDlpV2beta1PrivacyMetric", + "description": "Privacy metric to compute." }, - "surrogateType": { - "$ref": "GooglePrivacyDlpV2beta1SurrogateType", - "description": "Surrogate info type." + "sourceTable": { + "$ref": "GooglePrivacyDlpV2beta1BigQueryTable", + "description": "Input dataset to compute metrics over." } }, - "id": "GooglePrivacyDlpV2beta1CustomInfoType" - }, - "GooglePrivacyDlpV2beta1UnwrappedCryptoKey": { - "description": "Using raw keys is prone to security risks due to accidentally\nleaking the key. Choose another type of key if possible.", - "type": "object", - "properties": { - "key": { - "description": "The AES 128/192/256 bit key. [required]", - "format": "byte", - "type": "string" - } - }, - "id": "GooglePrivacyDlpV2beta1UnwrappedCryptoKey" - }, - "GooglePrivacyDlpV2beta1EntityId": { - "description": "An entity in a dataset is a field or set of fields that correspond to a\nsingle person. For example, in medical records the `EntityId` might be\na patient identifier, or for financial records it might be an account\nidentifier. This message is used when generalizations or analysis must be\nconsistent across multiple rows pertaining to the same entity.", - "type": "object", - "properties": { - "field": { - "$ref": "GooglePrivacyDlpV2beta1FieldId", - "description": "Composite key indicating which field contains the entity identifier." - } - }, - "id": "GooglePrivacyDlpV2beta1EntityId" + "type": "object" }, "GooglePrivacyDlpV2beta1AuxiliaryTable": { "description": "An auxiliary table contains statistical information on the relative\nfrequency of different quasi-identifiers values. It has one or several\nquasi-identifiers columns, and one column that indicates the relative\nfrequency of each quasi-identifier tuple.\nIf a tuple is present in the data but not in the auxiliary table, the\ncorresponding relative frequency is assumed to be zero (and thus, the\ntuple is highly reidentifiable).", - "type": "object", + "id": "GooglePrivacyDlpV2beta1AuxiliaryTable", "properties": { "quasiIds": { "description": "Quasi-identifier columns. [required]", - "type": "array", "items": { "$ref": "GooglePrivacyDlpV2beta1QuasiIdField" - } + }, + "type": "array" }, "relativeFrequency": { "$ref": "GooglePrivacyDlpV2beta1FieldId", "description": "The relative frequency column must contain a floating-point number\nbetween 0 and 1 (inclusive). Null values are assumed to be zero.\n[required]" }, "table": { - "description": "Auxiliary table location. [required]", - "$ref": "GooglePrivacyDlpV2beta1BigQueryTable" + "$ref": "GooglePrivacyDlpV2beta1BigQueryTable", + "description": "Auxiliary table location. [required]" } }, - "id": "GooglePrivacyDlpV2beta1AuxiliaryTable" + "type": "object" }, - "GooglePrivacyDlpV2beta1KMapEstimationResult": { - "description": "Result of the reidentifiability analysis. Note that these results are an\nestimation, not exact values.", - "type": "object", + "GooglePrivacyDlpV2beta1BigQueryKey": { + "description": "LINT.IfChange\nRow key for identifying a record in BigQuery table.", + "id": "GooglePrivacyDlpV2beta1BigQueryKey", "properties": { - "kMapEstimationHistogram": { - "description": "The intervals [min_anonymity, max_anonymity] do not overlap. If a value\ndoesn't correspond to any such interval, the associated frequency is\nzero. For example, the following records:\n {min_anonymity: 1, max_anonymity: 1, frequency: 17}\n {min_anonymity: 2, max_anonymity: 3, frequency: 42}\n {min_anonymity: 5, max_anonymity: 10, frequency: 99}\nmean that there are no record with an estimated anonymity of 4, 5, or\nlarger than 10.", - "type": "array", - "items": { - "$ref": "GooglePrivacyDlpV2beta1KMapEstimationHistogramBucket" - } - } - }, - "id": "GooglePrivacyDlpV2beta1KMapEstimationResult" - }, - "GoogleRpcStatus": { - "description": "The `Status` type defines a logical error model that is suitable for different\nprogramming environments, including REST APIs and RPC APIs. It is used by\n[gRPC](https://github.com/grpc). The error model is designed to be:\n\n- Simple to use and understand for most users\n- Flexible enough to meet unexpected needs\n\n# Overview\n\nThe `Status` message contains three pieces of data: error code, error message,\nand error details. The error code should be an enum value of\ngoogle.rpc.Code, but it may accept additional error codes if needed. The\nerror message should be a developer-facing English message that helps\ndevelopers *understand* and *resolve* the error. If a localized user-facing\nerror message is needed, put the localized message in the error details or\nlocalize it in the client. The optional error details may contain arbitrary\ninformation about the error. There is a predefined set of error detail types\nin the package `google.rpc` that can be used for common error conditions.\n\n# Language mapping\n\nThe `Status` message is the logical representation of the error model, but it\nis not necessarily the actual wire format. When the `Status` message is\nexposed in different client libraries and different wire protocols, it can be\nmapped differently. For example, it will likely be mapped to some exceptions\nin Java, but more likely mapped to some error codes in C.\n\n# Other uses\n\nThe error model and the `Status` message can be used in a variety of\nenvironments, either with or without APIs, to provide a\nconsistent developer experience across different environments.\n\nExample uses of this error model include:\n\n- Partial errors. If a service needs to return partial errors to the client,\n it may embed the `Status` in the normal response to indicate the partial\n errors.\n\n- Workflow errors. A typical workflow has multiple steps. Each step may\n have a `Status` message for error reporting.\n\n- Batch operations. If a client uses batch request and batch response, the\n `Status` message should be used directly inside batch response, one for\n each error sub-response.\n\n- Asynchronous operations. If an API call embeds asynchronous operation\n results in its response, the status of those operations should be\n represented directly using the `Status` message.\n\n- Logging. If some API errors are stored in logs, the message `Status` could\n be used directly after any stripping needed for security/privacy reasons.", - "type": "object", - "properties": { - "code": { - "description": "The status code, which should be an enum value of google.rpc.Code.", - "format": "int32", - "type": "integer" - }, - "message": { - "description": "A developer-facing error message, which should be in English. Any\nuser-facing error message should be localized and sent in the\ngoogle.rpc.Status.details field, or localized by the client.", - "type": "string" - }, - "details": { - "description": "A list of messages that carry the error details. There is a common set of\nmessage types for APIs to use.", - "type": "array", - "items": { - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - }, - "type": "object" - } - } - }, - "id": "GoogleRpcStatus" - }, - "GooglePrivacyDlpV2beta1KMapEstimationQuasiIdValues": { - "description": "A tuple of values for the quasi-identifier columns.", - "type": "object", - "properties": { - "estimatedAnonymity": { - "description": "The estimated anonymity for these quasi-identifier values.", + "rowNumber": { + "description": "Absolute number of the row from the beginning of the table at the time\nof scanning.", "format": "int64", "type": "string" }, - "quasiIdsValues": { - "description": "The quasi-identifier values.", - "type": "array", - "items": { - "$ref": "GooglePrivacyDlpV2beta1Value" - } + "tableReference": { + "$ref": "GooglePrivacyDlpV2beta1BigQueryTable", + "description": "Complete BigQuery table reference." } }, - "id": "GooglePrivacyDlpV2beta1KMapEstimationQuasiIdValues" + "type": "object" }, - "GooglePrivacyDlpV2beta1PathElement": { - "description": "A (kind, ID/name) pair used to construct a key path.\n\nIf either name or ID is set, the element is complete.\nIf neither is set, the element is incomplete.", - "type": "object", + "GooglePrivacyDlpV2beta1BigQueryOptions": { + "description": "Options defining BigQuery table and row identifiers.", + "id": "GooglePrivacyDlpV2beta1BigQueryOptions", "properties": { - "name": { - "description": "The name of the entity.\nA name matching regex `__.*__` is reserved/read-only.\nA name must not be more than 1500 bytes when UTF-8 encoded.\nCannot be `\"\"`.", - "type": "string" + "identifyingFields": { + "description": "References to fields uniquely identifying rows within the table.\nNested fields in the format, like `person.birthdate.year`, are allowed.", + "items": { + "$ref": "GooglePrivacyDlpV2beta1FieldId" + }, + "type": "array" }, - "kind": { - "description": "The kind of the entity.\nA kind matching regex `__.*__` is reserved/read-only.\nA kind must not contain more than 1500 bytes when UTF-8 encoded.\nCannot be `\"\"`.", - "type": "string" - }, - "id": { - "description": "The auto-allocated ID of the entity.\nNever equal to zero. Values less than zero are discouraged and may not\nbe supported in the future.", - "format": "int64", - "type": "string" + "tableReference": { + "$ref": "GooglePrivacyDlpV2beta1BigQueryTable", + "description": "Complete BigQuery table reference." } }, - "id": "GooglePrivacyDlpV2beta1PathElement" + "type": "object" }, "GooglePrivacyDlpV2beta1BigQueryTable": { "description": "Message defining the location of a BigQuery table. A table is uniquely\nidentified by its project_id, dataset_id, and table_name. Within a query\na table is often referenced with a string in the format of:\n`\u003cproject_id\u003e:\u003cdataset_id\u003e.\u003ctable_id\u003e` or\n`\u003cproject_id\u003e.\u003cdataset_id\u003e.\u003ctable_id\u003e`.", - "type": "object", + "id": "GooglePrivacyDlpV2beta1BigQueryTable", "properties": { - "tableId": { - "description": "Name of the table.", + "datasetId": { + "description": "Dataset ID of the table.", "type": "string" }, "projectId": { "description": "The Google Cloud Platform project ID of the project containing the table.\nIf omitted, project ID is inferred from the API call.", "type": "string" }, - "datasetId": { - "description": "Dataset ID of the table.", + "tableId": { + "description": "Name of the table.", "type": "string" } }, - "id": "GooglePrivacyDlpV2beta1BigQueryTable" - }, - "GooglePrivacyDlpV2beta1SummaryResult": { - "description": "A collection that informs the user the number of times a particular\n`TransformationResultCode` and error details occurred.", - "type": "object", - "properties": { - "details": { - "description": "A place for warnings or errors to show up if a transformation didn't\nwork as expected.", - "type": "string" - }, - "count": { - "format": "int64", - "type": "string" - }, - "code": { - "enumDescriptions": [ - "", - "", - "" - ], - "enum": [ - "TRANSFORMATION_RESULT_CODE_UNSPECIFIED", - "SUCCESS", - "ERROR" - ], - "type": "string" - } - }, - "id": "GooglePrivacyDlpV2beta1SummaryResult" - }, - "GooglePrivacyDlpV2beta1InfoTypeTransformations": { - "description": "A type of transformation that will scan unstructured text and\napply various `PrimitiveTransformation`s to each finding, where the\ntransformation is applied to only values that were identified as a specific\ninfo_type.", - "type": "object", - "properties": { - "transformations": { - "description": "Transformation for each info type. Cannot specify more than one\nfor a given info type. [required]", - "type": "array", - "items": { - "$ref": "GooglePrivacyDlpV2beta1InfoTypeTransformation" - } - } - }, - "id": "GooglePrivacyDlpV2beta1InfoTypeTransformations" - }, - "GooglePrivacyDlpV2beta1ListRootCategoriesResponse": { - "description": "Response for ListRootCategories request.", - "type": "object", - "properties": { - "categories": { - "description": "List of all into type categories supported by the API.", - "type": "array", - "items": { - "$ref": "GooglePrivacyDlpV2beta1CategoryDescription" - } - } - }, - "id": "GooglePrivacyDlpV2beta1ListRootCategoriesResponse" - }, - "GooglePrivacyDlpV2beta1KindExpression": { - "description": "A representation of a Datastore kind.", - "type": "object", - "properties": { - "name": { - "description": "The name of the kind.", - "type": "string" - } - }, - "id": "GooglePrivacyDlpV2beta1KindExpression" - }, - "GooglePrivacyDlpV2beta1FileSet": { - "description": "Set of files to scan.", - "type": "object", - "properties": { - "url": { - "description": "The url, in the format `gs://\u003cbucket\u003e/\u003cpath\u003e`. Trailing wildcard in the\npath is allowed.", - "type": "string" - } - }, - "id": "GooglePrivacyDlpV2beta1FileSet" - }, - "GooglePrivacyDlpV2beta1AnalyzeDataSourceRiskRequest": { - "description": "Request for creating a risk analysis operation.", - "type": "object", - "properties": { - "sourceTable": { - "$ref": "GooglePrivacyDlpV2beta1BigQueryTable", - "description": "Input dataset to compute metrics over." - }, - "privacyMetric": { - "description": "Privacy metric to compute.", - "$ref": "GooglePrivacyDlpV2beta1PrivacyMetric" - } - }, - "id": "GooglePrivacyDlpV2beta1AnalyzeDataSourceRiskRequest" - }, - "GooglePrivacyDlpV2beta1InfoTypeTransformation": { - "description": "A transformation to apply to text that is identified as a specific\ninfo_type.", - "type": "object", - "properties": { - "infoTypes": { - "description": "Info types to apply the transformation to. Empty list will match all\navailable info types for this transformation.", - "type": "array", - "items": { - "$ref": "GooglePrivacyDlpV2beta1InfoType" - } - }, - "primitiveTransformation": { - "description": "Primitive transformation to apply to the info type. [required]", - "$ref": "GooglePrivacyDlpV2beta1PrimitiveTransformation" - } - }, - "id": "GooglePrivacyDlpV2beta1InfoTypeTransformation" + "type": "object" }, "GooglePrivacyDlpV2beta1Bucket": { "description": "Buckets represented as ranges, along with replacement values. Ranges must\nbe non-overlapping.", - "type": "object", + "id": "GooglePrivacyDlpV2beta1Bucket", "properties": { + "max": { + "$ref": "GooglePrivacyDlpV2beta1Value", + "description": "Upper bound of the range, exclusive; type must match min." + }, "min": { "$ref": "GooglePrivacyDlpV2beta1Value", "description": "Lower bound of the range, inclusive. Type should be the same as max if\nused." }, - "max": { - "description": "Upper bound of the range, exclusive; type must match min.", - "$ref": "GooglePrivacyDlpV2beta1Value" - }, "replacementValue": { - "description": "Replacement value for this bucket. If not provided\nthe default behavior will be to hyphenate the min-max range.", - "$ref": "GooglePrivacyDlpV2beta1Value" + "$ref": "GooglePrivacyDlpV2beta1Value", + "description": "Replacement value for this bucket. If not provided\nthe default behavior will be to hyphenate the min-max range." } }, - "id": "GooglePrivacyDlpV2beta1Bucket" + "type": "object" }, - "GooglePrivacyDlpV2beta1KAnonymityResult": { - "description": "Result of the k-anonymity computation.", - "type": "object", + "GooglePrivacyDlpV2beta1BucketingConfig": { + "description": "Generalization function that buckets values based on ranges. The ranges and\nreplacement values are dynamically provided by the user for custom behavior,\nsuch as 1-30 -\u003e LOW 31-65 -\u003e MEDIUM 66-100 -\u003e HIGH\nThis can be used on\ndata of type: number, long, string, timestamp.\nIf the bound `Value` type differs from the type of data being transformed, we\nwill first attempt converting the type of the data to be transformed to match\nthe type of the bound before comparing.", + "id": "GooglePrivacyDlpV2beta1BucketingConfig", "properties": { - "equivalenceClassHistogramBuckets": { - "description": "Histogram of k-anonymity equivalence classes.", - "type": "array", + "buckets": { "items": { - "$ref": "GooglePrivacyDlpV2beta1KAnonymityHistogramBucket" - } + "$ref": "GooglePrivacyDlpV2beta1Bucket" + }, + "type": "array" } }, - "id": "GooglePrivacyDlpV2beta1KAnonymityResult" + "type": "object" + }, + "GooglePrivacyDlpV2beta1CategoricalStatsConfig": { + "description": "Compute numerical stats over an individual column, including\nnumber of distinct values and value count distribution.", + "id": "GooglePrivacyDlpV2beta1CategoricalStatsConfig", + "properties": { + "field": { + "$ref": "GooglePrivacyDlpV2beta1FieldId", + "description": "Field to compute categorical stats on. All column types are\nsupported except for arrays and structs. However, it may be more\ninformative to use NumericalStats when the field type is supported,\ndepending on the data." + } + }, + "type": "object" }, "GooglePrivacyDlpV2beta1CategoricalStatsHistogramBucket": { "description": "Histogram bucket of value frequencies in the column.", - "type": "object", + "id": "GooglePrivacyDlpV2beta1CategoricalStatsHistogramBucket", "properties": { - "valueFrequencyLowerBound": { - "description": "Lower bound on the value frequency of the values in this bucket.", + "bucketSize": { + "description": "Total number of records in this bucket.", "format": "int64", "type": "string" }, "bucketValues": { "description": "Sample of value frequencies in this bucket. The total number of\nvalues returned per bucket is capped at 20.", - "type": "array", "items": { "$ref": "GooglePrivacyDlpV2beta1ValueFrequency" - } + }, + "type": "array" }, - "bucketSize": { - "description": "Total number of records in this bucket.", + "valueFrequencyLowerBound": { + "description": "Lower bound on the value frequency of the values in this bucket.", "format": "int64", "type": "string" }, @@ -1141,228 +800,136 @@ "type": "string" } }, - "id": "GooglePrivacyDlpV2beta1CategoricalStatsHistogramBucket" + "type": "object" }, - "GooglePrivacyDlpV2beta1TableLocation": { - "description": "Location of a finding within a table.", - "type": "object", + "GooglePrivacyDlpV2beta1CategoricalStatsResult": { + "description": "Result of the categorical stats computation.", + "id": "GooglePrivacyDlpV2beta1CategoricalStatsResult", "properties": { - "rowIndex": { - "description": "The zero-based index of the row where the finding is located.", + "valueFrequencyHistogramBuckets": { + "description": "Histogram of value frequencies in the column.", + "items": { + "$ref": "GooglePrivacyDlpV2beta1CategoricalStatsHistogramBucket" + }, + "type": "array" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1CategoryDescription": { + "description": "Info Type Category description.", + "id": "GooglePrivacyDlpV2beta1CategoryDescription", + "properties": { + "displayName": { + "description": "Human readable form of the category name.", + "type": "string" + }, + "name": { + "description": "Internal name of the category.", + "type": "string" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1CharacterMaskConfig": { + "description": "Partially mask a string by replacing a given number of characters with a\nfixed character. Masking can start from the beginning or end of the string.\nThis can be used on data of any type (numbers, longs, and so on) and when\nde-identifying structured data we'll attempt to preserve the original data's\ntype. (This allows you to take a long like 123 and modify it to a string like\n**3.", + "id": "GooglePrivacyDlpV2beta1CharacterMaskConfig", + "properties": { + "charactersToIgnore": { + "description": "When masking a string, items in this list will be skipped when replacing.\nFor example, if your string is 555-555-5555 and you ask us to skip `-` and\nmask 5 chars with * we would produce ***-*55-5555.", + "items": { + "$ref": "GooglePrivacyDlpV2beta1CharsToIgnore" + }, + "type": "array" + }, + "maskingCharacter": { + "description": "Character to mask the sensitive values\u0026mdash;for example, \"*\" for an\nalphabetic string such as name, or \"0\" for a numeric string such as ZIP\ncode or credit card number. String must have length 1. If not supplied, we\nwill default to \"*\" for strings, 0 for digits.", + "type": "string" + }, + "numberToMask": { + "description": "Number of characters to mask. If not set, all matching chars will be\nmasked. Skipped characters do not count towards this tally.", + "format": "int32", + "type": "integer" + }, + "reverseOrder": { + "description": "Mask characters in reverse order. For example, if `masking_character` is\n'0', number_to_mask is 14, and `reverse_order` is false, then\n1234-5678-9012-3456 -\u003e 00000000000000-3456\nIf `masking_character` is '*', `number_to_mask` is 3, and `reverse_order`\nis true, then 12345 -\u003e 12***", + "type": "boolean" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1CharsToIgnore": { + "description": "Characters to skip when doing deidentification of a value. These will be left\nalone and skipped.", + "id": "GooglePrivacyDlpV2beta1CharsToIgnore", + "properties": { + "charactersToSkip": { + "type": "string" + }, + "commonCharactersToIgnore": { + "enum": [ + "CHARACTER_GROUP_UNSPECIFIED", + "NUMERIC", + "ALPHA_UPPER_CASE", + "ALPHA_LOWER_CASE", + "PUNCTUATION", + "WHITESPACE" + ], + "enumDescriptions": [ + "", + "0-9", + "A-Z", + "a-z", + "US Punctuation, one of !\"#$%\u0026'()*+,-./:;\u003c=\u003e?@[\\]^_`{|}~", + "Whitespace character, one of [ \\t\\n\\x0B\\f\\r]" + ], + "type": "string" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1CloudStorageKey": { + "description": "Record key for a finding in a Cloud Storage file.", + "id": "GooglePrivacyDlpV2beta1CloudStorageKey", + "properties": { + "filePath": { + "description": "Path to the file.", + "type": "string" + }, + "startOffset": { + "description": "Byte offset of the referenced data in the file.", "format": "int64", "type": "string" } }, - "id": "GooglePrivacyDlpV2beta1TableLocation" + "type": "object" }, - "GooglePrivacyDlpV2beta1KAnonymityConfig": { - "description": "k-anonymity metric, used for analysis of reidentification risk.", - "type": "object", + "GooglePrivacyDlpV2beta1CloudStorageOptions": { + "description": "Options defining a file or a set of files (path ending with *) within\na Google Cloud Storage bucket.", + "id": "GooglePrivacyDlpV2beta1CloudStorageOptions", "properties": { - "quasiIds": { - "description": "Set of fields to compute k-anonymity over. When multiple fields are\nspecified, they are considered a single composite key. Structs and\nrepeated data types are not supported; however, nested fields are\nsupported so long as they are not structs themselves or nested within\na repeated field.", - "type": "array", - "items": { - "$ref": "GooglePrivacyDlpV2beta1FieldId" - } - }, - "entityId": { - "$ref": "GooglePrivacyDlpV2beta1EntityId", - "description": "Optional message indicating that each distinct entity_id should not\ncontribute to the k-anonymity count more than once per equivalence class.\nIf an entity_id appears on several rows with different quasi-identifier\ntuples, it will contribute to each count exactly once.\n\nThis can lead to unexpected results. Consider a table where ID 1 is\nassociated to quasi-identifier \"foo\", ID 2 to \"bar\", and ID 3 to *both*\nquasi-identifiers \"foo\" and \"bar\" (on separate rows), and where this ID\nis used as entity_id. Then, the anonymity value associated to ID 3 will\nbe 2, even if it is the only ID to be associated to both values \"foo\" and\n\"bar\"." + "fileSet": { + "$ref": "GooglePrivacyDlpV2beta1FileSet" } }, - "id": "GooglePrivacyDlpV2beta1KAnonymityConfig" + "type": "object" }, - "GooglePrivacyDlpV2beta1DatastoreKey": { - "description": "Record key for a finding in Cloud Datastore.", - "type": "object", + "GooglePrivacyDlpV2beta1CloudStoragePath": { + "description": "A location in Cloud Storage.", + "id": "GooglePrivacyDlpV2beta1CloudStoragePath", "properties": { - "entityKey": { - "$ref": "GooglePrivacyDlpV2beta1Key", - "description": "Datastore entity key." - } - }, - "id": "GooglePrivacyDlpV2beta1DatastoreKey" - }, - "GooglePrivacyDlpV2beta1RecordKey": { - "description": "Message for a unique key indicating a record that contains a finding.", - "type": "object", - "properties": { - "cloudStorageKey": { - "$ref": "GooglePrivacyDlpV2beta1CloudStorageKey" - }, - "datastoreKey": { - "$ref": "GooglePrivacyDlpV2beta1DatastoreKey" - } - }, - "id": "GooglePrivacyDlpV2beta1RecordKey" - }, - "GooglePrivacyDlpV2beta1DeidentifyContentRequest": { - "description": "Request to de-identify a list of items.", - "type": "object", - "properties": { - "items": { - "description": "The list of items to inspect. Up to 100 are allowed per request.\nAll items will be treated as text/*.", - "type": "array", - "items": { - "$ref": "GooglePrivacyDlpV2beta1ContentItem" - } - }, - "deidentifyConfig": { - "$ref": "GooglePrivacyDlpV2beta1DeidentifyConfig", - "description": "Configuration for the de-identification of the list of content items." - }, - "inspectConfig": { - "description": "Configuration for the inspector.", - "$ref": "GooglePrivacyDlpV2beta1InspectConfig" - } - }, - "id": "GooglePrivacyDlpV2beta1DeidentifyContentRequest" - }, - "GooglePrivacyDlpV2beta1InspectResult": { - "description": "All the findings for a single scanned item.", - "type": "object", - "properties": { - "findingsTruncated": { - "description": "If true, then this item might have more findings than were returned,\nand the findings returned are an arbitrary subset of all findings.\nThe findings list might be truncated because the input items were too\nlarge, or because the server reached the maximum amount of resources\nallowed for a single API call. For best results, divide the input into\nsmaller batches.", - "type": "boolean" - }, - "findings": { - "description": "List of findings for an item.", - "type": "array", - "items": { - "$ref": "GooglePrivacyDlpV2beta1Finding" - } - } - }, - "id": "GooglePrivacyDlpV2beta1InspectResult" - }, - "GooglePrivacyDlpV2beta1QuasiIdField": { - "description": "A quasi-identifier column has a custom_tag, used to know which column\nin the data corresponds to which column in the statistical model.", - "type": "object", - "properties": { - "field": { - "$ref": "GooglePrivacyDlpV2beta1FieldId" - }, - "customTag": { + "path": { + "description": "The url, in the format of `gs://bucket/\u003cpath\u003e`.", "type": "string" } }, - "id": "GooglePrivacyDlpV2beta1QuasiIdField" - }, - "GooglePrivacyDlpV2beta1ImageLocation": { - "description": "Bounding box encompassing detected text within an image.", - "type": "object", - "properties": { - "height": { - "description": "Height of the bounding box in pixels.", - "format": "int32", - "type": "integer" - }, - "top": { - "description": "Top coordinate of the bounding box. (0,0) is upper left.", - "format": "int32", - "type": "integer" - }, - "left": { - "description": "Left coordinate of the bounding box. (0,0) is upper left.", - "format": "int32", - "type": "integer" - }, - "width": { - "description": "Width of the bounding box in pixels.", - "format": "int32", - "type": "integer" - } - }, - "id": "GooglePrivacyDlpV2beta1ImageLocation" - }, - "GooglePrivacyDlpV2beta1ReplaceValueConfig": { - "description": "Replace each input value with a given `Value`.", - "type": "object", - "properties": { - "newValue": { - "$ref": "GooglePrivacyDlpV2beta1Value", - "description": "Value to replace it with." - } - }, - "id": "GooglePrivacyDlpV2beta1ReplaceValueConfig" - }, - "GooglePrivacyDlpV2beta1ContentItem": { - "description": "Container structure for the content to inspect.", - "type": "object", - "properties": { - "table": { - "$ref": "GooglePrivacyDlpV2beta1Table", - "description": "Structured content for inspection." - }, - "data": { - "description": "Content data to inspect or redact.", - "format": "byte", - "type": "string" - }, - "type": { - "description": "Type of the content, as defined in Content-Type HTTP header.\nSupported types are: all \"text\" types, octet streams, PNG images,\nJPEG images.", - "type": "string" - }, - "value": { - "description": "String data to inspect or redact.", - "type": "string" - } - }, - "id": "GooglePrivacyDlpV2beta1ContentItem" - }, - "GooglePrivacyDlpV2beta1CryptoReplaceFfxFpeConfig": { - "description": "Replaces an identifier with a surrogate using FPE with the FFX\nmode of operation.\nThe identifier must be representable by the US-ASCII character set.\nFor a given crypto key and context, the same identifier will be\nreplaced with the same surrogate.\nIdentifiers must be at least two characters long.\nIn the case that the identifier is the empty string, it will be skipped.", - "type": "object", - "properties": { - "surrogateInfoType": { - "$ref": "GooglePrivacyDlpV2beta1InfoType", - "description": "The custom info type to annotate the surrogate with.\nThis annotation will be applied to the surrogate by prefixing it with\nthe name of the custom info type followed by the number of\ncharacters comprising the surrogate. The following scheme defines the\nformat: info_type_name(surrogate_character_count):surrogate\n\nFor example, if the name of custom info type is 'MY_TOKEN_INFO_TYPE' and\nthe surrogate is 'abc', the full replacement value\nwill be: 'MY_TOKEN_INFO_TYPE(3):abc'\n\nThis annotation identifies the surrogate when inspecting content using the\ncustom info type\n[`SurrogateType`](/dlp/docs/reference/rest/v2beta1/InspectConfig#surrogatetype).\nThis facilitates reversal of the surrogate when it occurs in free text.\n\nIn order for inspection to work properly, the name of this info type must\nnot occur naturally anywhere in your data; otherwise, inspection may\nfind a surrogate that does not correspond to an actual identifier.\nTherefore, choose your custom info type name carefully after considering\nwhat your data looks like. One way to select a name that has a high chance\nof yielding reliable detection is to include one or more unicode characters\nthat are highly improbable to exist in your data.\nFor example, assuming your data is entered from a regular ASCII keyboard,\nthe symbol with the hex code point 29DD might be used like so:\n⧝MY_TOKEN_TYPE" - }, - "commonAlphabet": { - "type": "string", - "enumDescriptions": [ - "", - "[0-9] (radix of 10)", - "[0-9A-F] (radix of 16)", - "[0-9A-Z] (radix of 36)", - "[0-9A-Za-z] (radix of 62)" - ], - "enum": [ - "FFX_COMMON_NATIVE_ALPHABET_UNSPECIFIED", - "NUMERIC", - "HEXADECIMAL", - "UPPER_CASE_ALPHA_NUMERIC", - "ALPHA_NUMERIC" - ] - }, - "radix": { - "description": "The native way to select the alphabet. Must be in the range [2, 62].", - "format": "int32", - "type": "integer" - }, - "customAlphabet": { - "description": "This is supported by mapping these to the alphanumeric characters\nthat the FFX mode natively supports. This happens before/after\nencryption/decryption.\nEach character listed must appear only once.\nNumber of characters must be in the range [2, 62].\nThis must be encoded as ASCII.\nThe order of characters does not matter.", - "type": "string" - }, - "cryptoKey": { - "description": "The key used by the encryption algorithm. [required]", - "$ref": "GooglePrivacyDlpV2beta1CryptoKey" - }, - "context": { - "description": "A context may be used for higher security since the same\nidentifier in two different contexts likely will be given a distinct\nsurrogate. The principle is that the likeliness is inversely related\nto the ratio of the number of distinct identifiers per context over the\nnumber of possible surrogates: As long as this ratio is small, the\nlikehood is large.\n\nIf the context is not set, a default tweak will be used.\nIf the context is set but:\n\n1. there is no record present when transforming a given value or\n1. the field is not present when transforming a given value,\n\na default tweak will be used.\n\nNote that case (1) is expected when an `InfoTypeTransformation` is\napplied to both structured and non-structured `ContentItem`s.\nCurrently, the referenced field may be of value type integer or string.\n\nThe tweak is constructed as a sequence of bytes in big endian byte order\nsuch that:\n\n- a 64 bit integer is encoded followed by a single byte of value 1\n- a string is encoded in UTF-8 format followed by a single byte of value 2\n\nThis is also known as the 'tweak', as in tweakable encryption.", - "$ref": "GooglePrivacyDlpV2beta1FieldId" - } - }, - "id": "GooglePrivacyDlpV2beta1CryptoReplaceFfxFpeConfig" + "type": "object" }, "GooglePrivacyDlpV2beta1Color": { "description": "Represents a color in the RGB color space.", - "type": "object", + "id": "GooglePrivacyDlpV2beta1Color", "properties": { - "red": { - "description": "The amount of red in the color as a value in the interval [0, 1].", + "blue": { + "description": "The amount of blue in the color as a value in the interval [0, 1].", "format": "float", "type": "number" }, @@ -1371,158 +938,34 @@ "format": "float", "type": "number" }, - "blue": { - "description": "The amount of blue in the color as a value in the interval [0, 1].", + "red": { + "description": "The amount of red in the color as a value in the interval [0, 1].", "format": "float", "type": "number" } }, - "id": "GooglePrivacyDlpV2beta1Color" - }, - "GooglePrivacyDlpV2beta1ValueFrequency": { - "description": "A value of a field, including its frequency.", - "type": "object", - "properties": { - "value": { - "$ref": "GooglePrivacyDlpV2beta1Value", - "description": "A value contained in the field in question." - }, - "count": { - "description": "How many times the value is contained in the field.", - "format": "int64", - "type": "string" - } - }, - "id": "GooglePrivacyDlpV2beta1ValueFrequency" - }, - "GooglePrivacyDlpV2beta1SurrogateType": { - "description": "Message for detecting output from deidentification transformations\nsuch as\n[`CryptoReplaceFfxFpeConfig`](/dlp/docs/reference/rest/v2beta1/content/deidentify#CryptoReplaceFfxFpeConfig).\nThese types of transformations are\nthose that perform pseudonymization, thereby producing a \"surrogate\" as\noutput. This should be used in conjunction with a field on the\ntransformation such as `surrogate_info_type`. This custom info type does\nnot support the use of `detection_rules`.", - "type": "object", - "properties": {}, - "id": "GooglePrivacyDlpV2beta1SurrogateType" - }, - "GooglePrivacyDlpV2beta1Table": { - "description": "Structured content to inspect. Up to 50,000 `Value`s per request allowed.", - "type": "object", - "properties": { - "headers": { - "type": "array", - "items": { - "$ref": "GooglePrivacyDlpV2beta1FieldId" - } - }, - "rows": { - "type": "array", - "items": { - "$ref": "GooglePrivacyDlpV2beta1Row" - } - } - }, - "id": "GooglePrivacyDlpV2beta1Table" - }, - "GooglePrivacyDlpV2beta1InfoTypeLimit": { - "description": "Max findings configuration per info type, per content item or long running\noperation.", - "type": "object", - "properties": { - "infoType": { - "description": "Type of information the findings limit applies to. Only one limit per\ninfo_type should be provided. If InfoTypeLimit does not have an\ninfo_type, the DLP API applies the limit against all info_types that are\nfound but not specified in another InfoTypeLimit.", - "$ref": "GooglePrivacyDlpV2beta1InfoType" - }, - "maxFindings": { - "description": "Max findings limit for the given infoType.", - "format": "int32", - "type": "integer" - } - }, - "id": "GooglePrivacyDlpV2beta1InfoTypeLimit" - }, - "GooglePrivacyDlpV2beta1CryptoKey": { - "description": "This is a data encryption key (DEK) (as opposed to\na key encryption key (KEK) stored by KMS).\nWhen using KMS to wrap/unwrap DEKs, be sure to set an appropriate\nIAM policy on the KMS CryptoKey (KEK) to ensure an attacker cannot\nunwrap the data crypto key.", - "type": "object", - "properties": { - "transient": { - "$ref": "GooglePrivacyDlpV2beta1TransientCryptoKey" - }, - "kmsWrapped": { - "$ref": "GooglePrivacyDlpV2beta1KmsWrappedCryptoKey" - }, - "unwrapped": { - "$ref": "GooglePrivacyDlpV2beta1UnwrappedCryptoKey" - } - }, - "id": "GooglePrivacyDlpV2beta1CryptoKey" - }, - "GooglePrivacyDlpV2beta1LDiversityHistogramBucket": { - "description": "Histogram bucket of sensitive value frequencies in the table.", - "type": "object", - "properties": { - "sensitiveValueFrequencyLowerBound": { - "description": "Lower bound on the sensitive value frequencies of the equivalence\nclasses in this bucket.", - "format": "int64", - "type": "string" - }, - "bucketValues": { - "description": "Sample of equivalence classes in this bucket. The total number of\nclasses returned per bucket is capped at 20.", - "type": "array", - "items": { - "$ref": "GooglePrivacyDlpV2beta1LDiversityEquivalenceClass" - } - }, - "bucketSize": { - "description": "Total number of records in this bucket.", - "format": "int64", - "type": "string" - }, - "sensitiveValueFrequencyUpperBound": { - "description": "Upper bound on the sensitive value frequencies of the equivalence\nclasses in this bucket.", - "format": "int64", - "type": "string" - } - }, - "id": "GooglePrivacyDlpV2beta1LDiversityHistogramBucket" - }, - "GooglePrivacyDlpV2beta1Value": { - "description": "Set of primitive values supported by the system.\nNote that for the purposes of inspection or transformation, the number\nof bytes considered to comprise a 'Value' is based on its representation\nas a UTF-8 encoded string. For example, if 'integer_value' is set to\n123456789, the number of bytes would be counted as 9, even though an\nint64 only holds up to 8 bytes of data.", - "type": "object", - "properties": { - "timeValue": { - "$ref": "GoogleTypeTimeOfDay" - }, - "integerValue": { - "format": "int64", - "type": "string" - }, - "stringValue": { - "type": "string" - }, - "dateValue": { - "$ref": "GoogleTypeDate" - }, - "timestampValue": { - "format": "google-datetime", - "type": "string" - }, - "booleanValue": { - "type": "boolean" - }, - "floatValue": { - "format": "double", - "type": "number" - } - }, - "id": "GooglePrivacyDlpV2beta1Value" + "type": "object" }, "GooglePrivacyDlpV2beta1Condition": { "description": "The field type of `value` and `field` do not need to match to be\nconsidered equal, but not all comparisons are possible.\n\nA `value` of type:\n\n- `string` can be compared against all other types\n- `boolean` can only be compared against other booleans\n- `integer` can be compared against doubles or a string if the string value\ncan be parsed as an integer.\n- `double` can be compared against integers or a string if the string can\nbe parsed as a double.\n- `Timestamp` can be compared against strings in RFC 3339 date string\nformat.\n- `TimeOfDay` can be compared against timestamps and strings in the format\nof 'HH:mm:ss'.\n\nIf we fail to compare do to type mismatch, a warning will be given and\nthe condition will evaluate to false.", - "type": "object", + "id": "GooglePrivacyDlpV2beta1Condition", "properties": { "field": { - "description": "Field within the record this condition is evaluated against. [required]", - "$ref": "GooglePrivacyDlpV2beta1FieldId" + "$ref": "GooglePrivacyDlpV2beta1FieldId", + "description": "Field within the record this condition is evaluated against. [required]" }, "operator": { "description": "Operator used to compare the field or info type to the value. [required]", - "type": "string", + "enum": [ + "RELATIONAL_OPERATOR_UNSPECIFIED", + "EQUAL_TO", + "NOT_EQUAL_TO", + "GREATER_THAN", + "LESS_THAN", + "GREATER_THAN_OR_EQUALS", + "LESS_THAN_OR_EQUALS", + "EXISTS" + ], "enumDescriptions": [ "", "Equal.", @@ -1533,431 +976,683 @@ "Less than or equals.", "Exists" ], - "enum": [ - "RELATIONAL_OPERATOR_UNSPECIFIED", - "EQUAL_TO", - "NOT_EQUAL_TO", - "GREATER_THAN", - "LESS_THAN", - "GREATER_THAN_OR_EQUALS", - "LESS_THAN_OR_EQUALS", - "EXISTS" - ] + "type": "string" }, "value": { "$ref": "GooglePrivacyDlpV2beta1Value", "description": "Value to compare against. [Required, except for `EXISTS` tests.]" } }, - "id": "GooglePrivacyDlpV2beta1Condition" + "type": "object" }, - "GooglePrivacyDlpV2beta1PartitionId": { - "description": "Datastore partition ID.\nA partition ID identifies a grouping of entities. The grouping is always\nby project and namespace, however the namespace ID may be empty.\n\nA partition ID contains several dimensions:\nproject ID and namespace ID.", - "type": "object", + "GooglePrivacyDlpV2beta1Conditions": { + "id": "GooglePrivacyDlpV2beta1Conditions", "properties": { - "projectId": { - "description": "The ID of the project to which the entities belong.", + "conditions": { + "items": { + "$ref": "GooglePrivacyDlpV2beta1Condition" + }, + "type": "array" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1ContentItem": { + "description": "Container structure for the content to inspect.", + "id": "GooglePrivacyDlpV2beta1ContentItem", + "properties": { + "data": { + "description": "Content data to inspect or redact.", + "format": "byte", "type": "string" }, - "namespaceId": { - "description": "If not empty, the ID of the namespace to which the entities belong.", + "table": { + "$ref": "GooglePrivacyDlpV2beta1Table", + "description": "Structured content for inspection." + }, + "type": { + "description": "Type of the content, as defined in Content-Type HTTP header.\nSupported types are: all \"text\" types, octet streams, PNG images,\nJPEG images.", + "type": "string" + }, + "value": { + "description": "String data to inspect or redact.", "type": "string" } }, - "id": "GooglePrivacyDlpV2beta1PartitionId" + "type": "object" }, - "GooglePrivacyDlpV2beta1InspectContentResponse": { - "description": "Results of inspecting a list of items.", - "type": "object", - "properties": { - "results": { - "description": "Each content_item from the request has a result in this list, in the\nsame order as the request.", - "type": "array", - "items": { - "$ref": "GooglePrivacyDlpV2beta1InspectResult" - } - } - }, - "id": "GooglePrivacyDlpV2beta1InspectContentResponse" - }, - "GooglePrivacyDlpV2beta1RedactContentRequest": { - "description": "Request to search for potentially sensitive info in a list of items\nand replace it with a default or provided content.", - "type": "object", + "GooglePrivacyDlpV2beta1CreateInspectOperationRequest": { + "description": "Request for scheduling a scan of a data subset from a Google Platform data\nrepository.", + "id": "GooglePrivacyDlpV2beta1CreateInspectOperationRequest", "properties": { + "inspectConfig": { + "$ref": "GooglePrivacyDlpV2beta1InspectConfig", + "description": "Configuration for the inspector." + }, + "operationConfig": { + "$ref": "GooglePrivacyDlpV2beta1OperationConfig", + "description": "Additional configuration settings for long running operations." + }, + "outputConfig": { + "$ref": "GooglePrivacyDlpV2beta1OutputStorageConfig", + "description": "Optional location to store findings." + }, + "storageConfig": { + "$ref": "GooglePrivacyDlpV2beta1StorageConfig", + "description": "Specification of the data set to process." + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1CryptoHashConfig": { + "description": "Pseudonymization method that generates surrogates via cryptographic hashing.\nUses SHA-256.\nOutputs a 32 byte digest as an uppercase hex string\n(for example, 41D1567F7F99F1DC2A5FAB886DEE5BEE).\nCurrently, only string and integer values can be hashed.", + "id": "GooglePrivacyDlpV2beta1CryptoHashConfig", + "properties": { + "cryptoKey": { + "$ref": "GooglePrivacyDlpV2beta1CryptoKey", + "description": "The key used by the hash function." + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1CryptoKey": { + "description": "This is a data encryption key (DEK) (as opposed to\na key encryption key (KEK) stored by KMS).\nWhen using KMS to wrap/unwrap DEKs, be sure to set an appropriate\nIAM policy on the KMS CryptoKey (KEK) to ensure an attacker cannot\nunwrap the data crypto key.", + "id": "GooglePrivacyDlpV2beta1CryptoKey", + "properties": { + "kmsWrapped": { + "$ref": "GooglePrivacyDlpV2beta1KmsWrappedCryptoKey" + }, + "transient": { + "$ref": "GooglePrivacyDlpV2beta1TransientCryptoKey" + }, + "unwrapped": { + "$ref": "GooglePrivacyDlpV2beta1UnwrappedCryptoKey" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1CryptoReplaceFfxFpeConfig": { + "description": "Replaces an identifier with a surrogate using FPE with the FFX\nmode of operation.\nThe identifier must be representable by the US-ASCII character set.\nFor a given crypto key and context, the same identifier will be\nreplaced with the same surrogate.\nIdentifiers must be at least two characters long.\nIn the case that the identifier is the empty string, it will be skipped.", + "id": "GooglePrivacyDlpV2beta1CryptoReplaceFfxFpeConfig", + "properties": { + "commonAlphabet": { + "enum": [ + "FFX_COMMON_NATIVE_ALPHABET_UNSPECIFIED", + "NUMERIC", + "HEXADECIMAL", + "UPPER_CASE_ALPHA_NUMERIC", + "ALPHA_NUMERIC" + ], + "enumDescriptions": [ + "", + "[0-9] (radix of 10)", + "[0-9A-F] (radix of 16)", + "[0-9A-Z] (radix of 36)", + "[0-9A-Za-z] (radix of 62)" + ], + "type": "string" + }, + "context": { + "$ref": "GooglePrivacyDlpV2beta1FieldId", + "description": "A context may be used for higher security since the same\nidentifier in two different contexts likely will be given a distinct\nsurrogate. The principle is that the likeliness is inversely related\nto the ratio of the number of distinct identifiers per context over the\nnumber of possible surrogates: As long as this ratio is small, the\nlikehood is large.\n\nIf the context is not set, a default tweak will be used.\nIf the context is set but:\n\n1. there is no record present when transforming a given value or\n1. the field is not present when transforming a given value,\n\na default tweak will be used.\n\nNote that case (1) is expected when an `InfoTypeTransformation` is\napplied to both structured and non-structured `ContentItem`s.\nCurrently, the referenced field may be of value type integer or string.\n\nThe tweak is constructed as a sequence of bytes in big endian byte order\nsuch that:\n\n- a 64 bit integer is encoded followed by a single byte of value 1\n- a string is encoded in UTF-8 format followed by a single byte of value 2\n\nThis is also known as the 'tweak', as in tweakable encryption." + }, + "cryptoKey": { + "$ref": "GooglePrivacyDlpV2beta1CryptoKey", + "description": "The key used by the encryption algorithm. [required]" + }, + "customAlphabet": { + "description": "This is supported by mapping these to the alphanumeric characters\nthat the FFX mode natively supports. This happens before/after\nencryption/decryption.\nEach character listed must appear only once.\nNumber of characters must be in the range [2, 62].\nThis must be encoded as ASCII.\nThe order of characters does not matter.", + "type": "string" + }, + "radix": { + "description": "The native way to select the alphabet. Must be in the range [2, 62].", + "format": "int32", + "type": "integer" + }, + "surrogateInfoType": { + "$ref": "GooglePrivacyDlpV2beta1InfoType", + "description": "The custom info type to annotate the surrogate with.\nThis annotation will be applied to the surrogate by prefixing it with\nthe name of the custom info type followed by the number of\ncharacters comprising the surrogate. The following scheme defines the\nformat: info_type_name(surrogate_character_count):surrogate\n\nFor example, if the name of custom info type is 'MY_TOKEN_INFO_TYPE' and\nthe surrogate is 'abc', the full replacement value\nwill be: 'MY_TOKEN_INFO_TYPE(3):abc'\n\nThis annotation identifies the surrogate when inspecting content using the\ncustom info type\n[`SurrogateType`](/dlp/docs/reference/rest/v2beta1/InspectConfig#surrogatetype).\nThis facilitates reversal of the surrogate when it occurs in free text.\n\nIn order for inspection to work properly, the name of this info type must\nnot occur naturally anywhere in your data; otherwise, inspection may\nfind a surrogate that does not correspond to an actual identifier.\nTherefore, choose your custom info type name carefully after considering\nwhat your data looks like. One way to select a name that has a high chance\nof yielding reliable detection is to include one or more unicode characters\nthat are highly improbable to exist in your data.\nFor example, assuming your data is entered from a regular ASCII keyboard,\nthe symbol with the hex code point 29DD might be used like so:\n⧝MY_TOKEN_TYPE" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1CustomInfoType": { + "description": "Custom information type provided by the user. Used to find domain-specific\nsensitive information configurable to the data in question.", + "id": "GooglePrivacyDlpV2beta1CustomInfoType", + "properties": { + "dictionary": { + "$ref": "GooglePrivacyDlpV2beta1Dictionary", + "description": "Dictionary-based custom info type." + }, + "infoType": { + "$ref": "GooglePrivacyDlpV2beta1InfoType", + "description": "Info type configuration. All custom info types must have configurations\nthat do not conflict with built-in info types or other custom info types." + }, + "surrogateType": { + "$ref": "GooglePrivacyDlpV2beta1SurrogateType", + "description": "Surrogate info type." + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1DatastoreKey": { + "description": "Record key for a finding in Cloud Datastore.", + "id": "GooglePrivacyDlpV2beta1DatastoreKey", + "properties": { + "entityKey": { + "$ref": "GooglePrivacyDlpV2beta1Key", + "description": "Datastore entity key." + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1DatastoreOptions": { + "description": "Options defining a data set within Google Cloud Datastore.", + "id": "GooglePrivacyDlpV2beta1DatastoreOptions", + "properties": { + "kind": { + "$ref": "GooglePrivacyDlpV2beta1KindExpression", + "description": "The kind to process." + }, + "partitionId": { + "$ref": "GooglePrivacyDlpV2beta1PartitionId", + "description": "A partition ID identifies a grouping of entities. The grouping is always\nby project and namespace, however the namespace ID may be empty." + }, + "projection": { + "description": "Properties to scan. If none are specified, all properties will be scanned\nby default.", + "items": { + "$ref": "GooglePrivacyDlpV2beta1Projection" + }, + "type": "array" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1DeidentificationSummary": { + "description": "High level summary of deidentification.", + "id": "GooglePrivacyDlpV2beta1DeidentificationSummary", + "properties": { + "transformationSummaries": { + "description": "Transformations applied to the dataset.", + "items": { + "$ref": "GooglePrivacyDlpV2beta1TransformationSummary" + }, + "type": "array" + }, + "transformedBytes": { + "description": "Total size in bytes that were transformed in some way.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1DeidentifyConfig": { + "description": "The configuration that controls how the data will change.", + "id": "GooglePrivacyDlpV2beta1DeidentifyConfig", + "properties": { + "infoTypeTransformations": { + "$ref": "GooglePrivacyDlpV2beta1InfoTypeTransformations", + "description": "Treat the dataset as free-form text and apply the same free text\ntransformation everywhere." + }, + "recordTransformations": { + "$ref": "GooglePrivacyDlpV2beta1RecordTransformations", + "description": "Treat the dataset as structured. Transformations can be applied to\nspecific locations within structured datasets, such as transforming\na column within a table." + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1DeidentifyContentRequest": { + "description": "Request to de-identify a list of items.", + "id": "GooglePrivacyDlpV2beta1DeidentifyContentRequest", + "properties": { + "deidentifyConfig": { + "$ref": "GooglePrivacyDlpV2beta1DeidentifyConfig", + "description": "Configuration for the de-identification of the list of content items." + }, "inspectConfig": { "$ref": "GooglePrivacyDlpV2beta1InspectConfig", "description": "Configuration for the inspector." }, "items": { - "description": "The list of items to inspect. Up to 100 are allowed per request.", - "type": "array", + "description": "The list of items to inspect. Up to 100 are allowed per request.\nAll items will be treated as text/*.", "items": { "$ref": "GooglePrivacyDlpV2beta1ContentItem" - } - }, - "replaceConfigs": { - "description": "The strings to replace findings text findings with. Must specify at least\none of these or one ImageRedactionConfig if redacting images.", - "type": "array", - "items": { - "$ref": "GooglePrivacyDlpV2beta1ReplaceConfig" - } - }, - "imageRedactionConfigs": { - "description": "The configuration for specifying what content to redact from images.", - "type": "array", - "items": { - "$ref": "GooglePrivacyDlpV2beta1ImageRedactionConfig" - } + }, + "type": "array" } }, - "id": "GooglePrivacyDlpV2beta1RedactContentRequest" + "type": "object" }, - "GooglePrivacyDlpV2beta1WordList": { - "description": "Message defining a list of words or phrases to search for in the data.", - "type": "object", + "GooglePrivacyDlpV2beta1DeidentifyContentResponse": { + "description": "Results of de-identifying a list of items.", + "id": "GooglePrivacyDlpV2beta1DeidentifyContentResponse", "properties": { - "words": { - "description": "Words or phrases defining the dictionary. The dictionary must contain\nat least one phrase and every phrase must contain at least 2 characters\nthat are letters or digits. [required]", - "type": "array", + "items": { "items": { - "type": "string" - } + "$ref": "GooglePrivacyDlpV2beta1ContentItem" + }, + "type": "array" + }, + "summaries": { + "description": "A review of the transformations that took place for each item.", + "items": { + "$ref": "GooglePrivacyDlpV2beta1DeidentificationSummary" + }, + "type": "array" } }, - "id": "GooglePrivacyDlpV2beta1WordList" + "type": "object" + }, + "GooglePrivacyDlpV2beta1Dictionary": { + "description": "Custom information type based on a dictionary of words or phrases. This can\nbe used to match sensitive information specific to the data, such as a list\nof employee IDs or job titles.\n\nDictionary words are case-insensitive and all characters other than letters\nand digits in the unicode [Basic Multilingual\nPlane](https://en.wikipedia.org/wiki/Plane_%28Unicode%29#Basic_Multilingual_Plane)\nwill be replaced with whitespace when scanning for matches, so the\ndictionary phrase \"Sam Johnson\" will match all three phrases \"sam johnson\",\n\"Sam, Johnson\", and \"Sam (Johnson)\". Additionally, the characters\nsurrounding any match must be of a different type than the adjacent\ncharacters within the word, so letters must be next to non-letters and\ndigits next to non-digits. For example, the dictionary word \"jen\" will\nmatch the first three letters of the text \"jen123\" but will return no\nmatches for \"jennifer\".\n\nDictionary words containing a large number of characters that are not\nletters or digits may result in unexpected findings because such characters\nare treated as whitespace.", + "id": "GooglePrivacyDlpV2beta1Dictionary", + "properties": { + "wordList": { + "$ref": "GooglePrivacyDlpV2beta1WordList", + "description": "List of words or phrases to search for." + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1EntityId": { + "description": "An entity in a dataset is a field or set of fields that correspond to a\nsingle person. For example, in medical records the `EntityId` might be\na patient identifier, or for financial records it might be an account\nidentifier. This message is used when generalizations or analysis must be\nconsistent across multiple rows pertaining to the same entity.", + "id": "GooglePrivacyDlpV2beta1EntityId", + "properties": { + "field": { + "$ref": "GooglePrivacyDlpV2beta1FieldId", + "description": "Composite key indicating which field contains the entity identifier." + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1Expressions": { + "description": "A collection of expressions", + "id": "GooglePrivacyDlpV2beta1Expressions", + "properties": { + "conditions": { + "$ref": "GooglePrivacyDlpV2beta1Conditions" + }, + "logicalOperator": { + "description": "The operator to apply to the result of conditions. Default and currently\nonly supported value is `AND`.", + "enum": [ + "LOGICAL_OPERATOR_UNSPECIFIED", + "AND" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + } + }, + "type": "object" }, "GooglePrivacyDlpV2beta1FieldId": { "description": "General identifier of a data field in a storage service.", - "type": "object", + "id": "GooglePrivacyDlpV2beta1FieldId", "properties": { "columnName": { "description": "Name describing the field.", "type": "string" } }, - "id": "GooglePrivacyDlpV2beta1FieldId" - }, - "GooglePrivacyDlpV2beta1TransformationSummary": { - "description": "Summary of a single tranformation.\nOnly one of 'transformation', 'field_transformation', or 'record_suppress'\nwill be set.", - "type": "object", - "properties": { - "results": { - "type": "array", - "items": { - "$ref": "GooglePrivacyDlpV2beta1SummaryResult" - } - }, - "field": { - "$ref": "GooglePrivacyDlpV2beta1FieldId", - "description": "Set if the transformation was limited to a specific FieldId." - }, - "fieldTransformations": { - "description": "The field transformation that was applied.\nIf multiple field transformations are requested for a single field,\nthis list will contain all of them; otherwise, only one is supplied.", - "type": "array", - "items": { - "$ref": "GooglePrivacyDlpV2beta1FieldTransformation" - } - }, - "transformedBytes": { - "description": "Total size in bytes that were transformed in some way.", - "format": "int64", - "type": "string" - }, - "recordSuppress": { - "$ref": "GooglePrivacyDlpV2beta1RecordSuppression", - "description": "The specific suppression option these stats apply to." - }, - "infoType": { - "description": "Set if the transformation was limited to a specific info_type.", - "$ref": "GooglePrivacyDlpV2beta1InfoType" - }, - "transformation": { - "description": "The specific transformation these stats apply to.", - "$ref": "GooglePrivacyDlpV2beta1PrimitiveTransformation" - } - }, - "id": "GooglePrivacyDlpV2beta1TransformationSummary" - }, - "GoogleLongrunningCancelOperationRequest": { - "description": "The request message for Operations.CancelOperation.", - "type": "object", - "properties": {}, - "id": "GoogleLongrunningCancelOperationRequest" - }, - "GooglePrivacyDlpV2beta1CharacterMaskConfig": { - "description": "Partially mask a string by replacing a given number of characters with a\nfixed character. Masking can start from the beginning or end of the string.\nThis can be used on data of any type (numbers, longs, and so on) and when\nde-identifying structured data we'll attempt to preserve the original data's\ntype. (This allows you to take a long like 123 and modify it to a string like\n**3.", - "type": "object", - "properties": { - "reverseOrder": { - "description": "Mask characters in reverse order. For example, if `masking_character` is\n'0', number_to_mask is 14, and `reverse_order` is false, then\n1234-5678-9012-3456 -\u003e 00000000000000-3456\nIf `masking_character` is '*', `number_to_mask` is 3, and `reverse_order`\nis true, then 12345 -\u003e 12***", - "type": "boolean" - }, - "numberToMask": { - "description": "Number of characters to mask. If not set, all matching chars will be\nmasked. Skipped characters do not count towards this tally.", - "format": "int32", - "type": "integer" - }, - "charactersToIgnore": { - "description": "When masking a string, items in this list will be skipped when replacing.\nFor example, if your string is 555-555-5555 and you ask us to skip `-` and\nmask 5 chars with * we would produce ***-*55-5555.", - "type": "array", - "items": { - "$ref": "GooglePrivacyDlpV2beta1CharsToIgnore" - } - }, - "maskingCharacter": { - "description": "Character to mask the sensitive values—for example, \"*\" for an\nalphabetic string such as name, or \"0\" for a numeric string such as ZIP\ncode or credit card number. String must have length 1. If not supplied, we\nwill default to \"*\" for strings, 0 for digits.", - "type": "string" - } - }, - "id": "GooglePrivacyDlpV2beta1CharacterMaskConfig" - }, - "GooglePrivacyDlpV2beta1TransientCryptoKey": { - "description": "Use this to have a random data crypto key generated.\nIt will be discarded after the operation/request finishes.", - "type": "object", - "properties": { - "name": { - "description": "Name of the key. [required]\nThis is an arbitrary string used to differentiate different keys.\nA unique key is generated per name: two separate `TransientCryptoKey`\nprotos share the same generated key if their names are the same.\nWhen the data crypto key is generated, this name is not used in any way\n(repeating the api call will result in a different key being generated).", - "type": "string" - } - }, - "id": "GooglePrivacyDlpV2beta1TransientCryptoKey" - }, - "GooglePrivacyDlpV2beta1CreateInspectOperationRequest": { - "description": "Request for scheduling a scan of a data subset from a Google Platform data\nrepository.", - "type": "object", - "properties": { - "inspectConfig": { - "$ref": "GooglePrivacyDlpV2beta1InspectConfig", - "description": "Configuration for the inspector." - }, - "storageConfig": { - "description": "Specification of the data set to process.", - "$ref": "GooglePrivacyDlpV2beta1StorageConfig" - }, - "outputConfig": { - "description": "Optional location to store findings.", - "$ref": "GooglePrivacyDlpV2beta1OutputStorageConfig" - }, - "operationConfig": { - "description": "Additional configuration settings for long running operations.", - "$ref": "GooglePrivacyDlpV2beta1OperationConfig" - } - }, - "id": "GooglePrivacyDlpV2beta1CreateInspectOperationRequest" - }, - "GooglePrivacyDlpV2beta1TaggedField": { - "description": "A column with a semantic tag attached.", - "type": "object", - "properties": { - "infoType": { - "description": "A column can be tagged with a InfoType to use the relevant public\ndataset as a statistical model of population, if available. We\ncurrently support US ZIP codes, region codes, ages and genders.", - "$ref": "GooglePrivacyDlpV2beta1InfoType" - }, - "inferred": { - "$ref": "GoogleProtobufEmpty", - "description": "If no semantic tag is indicated, we infer the statistical model from\nthe distribution of values in the input data" - }, - "field": { - "$ref": "GooglePrivacyDlpV2beta1FieldId", - "description": "Identifies the column. [required]" - }, - "customTag": { - "description": "A column can be tagged with a custom tag. In this case, the user must\nindicate an auxiliary table that contains statistical information on\nthe possible values of this column (below).", - "type": "string" - } - }, - "id": "GooglePrivacyDlpV2beta1TaggedField" - }, - "GooglePrivacyDlpV2beta1InfoTypeStatistics": { - "description": "Statistics regarding a specific InfoType.", - "type": "object", - "properties": { - "infoType": { - "$ref": "GooglePrivacyDlpV2beta1InfoType", - "description": "The type of finding this stat is for." - }, - "count": { - "description": "Number of findings for this info type.", - "format": "int64", - "type": "string" - } - }, - "id": "GooglePrivacyDlpV2beta1InfoTypeStatistics" - }, - "GooglePrivacyDlpV2beta1RedactContentResponse": { - "description": "Results of redacting a list of items.", - "type": "object", - "properties": { - "items": { - "description": "The redacted content.", - "type": "array", - "items": { - "$ref": "GooglePrivacyDlpV2beta1ContentItem" - } - } - }, - "id": "GooglePrivacyDlpV2beta1RedactContentResponse" - }, - "GooglePrivacyDlpV2beta1PropertyReference": { - "description": "A reference to a property relative to the Datastore kind expressions.", - "type": "object", - "properties": { - "name": { - "description": "The name of the property.\nIf name includes \".\"s, it may be interpreted as a property name path.", - "type": "string" - } - }, - "id": "GooglePrivacyDlpV2beta1PropertyReference" + "type": "object" }, "GooglePrivacyDlpV2beta1FieldTransformation": { "description": "The transformation to apply to the field.", - "type": "object", + "id": "GooglePrivacyDlpV2beta1FieldTransformation", "properties": { "condition": { "$ref": "GooglePrivacyDlpV2beta1RecordCondition", "description": "Only apply the transformation if the condition evaluates to true for the\ngiven `RecordCondition`. The conditions are allowed to reference fields\nthat are not used in the actual transformation. [optional]\n\nExample Use Cases:\n\n- Apply a different bucket transformation to an age column if the zip code\ncolumn for the same record is within a specific range.\n- Redact a field if the date of birth field is greater than 85." }, - "infoTypeTransformations": { - "description": "Treat the contents of the field as free text, and selectively\ntransform content that matches an `InfoType`.", - "$ref": "GooglePrivacyDlpV2beta1InfoTypeTransformations" - }, "fields": { "description": "Input field(s) to apply the transformation to. [required]", - "type": "array", "items": { "$ref": "GooglePrivacyDlpV2beta1FieldId" - } + }, + "type": "array" + }, + "infoTypeTransformations": { + "$ref": "GooglePrivacyDlpV2beta1InfoTypeTransformations", + "description": "Treat the contents of the field as free text, and selectively\ntransform content that matches an `InfoType`." }, "primitiveTransformation": { - "description": "Apply the transformation to the entire field.", - "$ref": "GooglePrivacyDlpV2beta1PrimitiveTransformation" + "$ref": "GooglePrivacyDlpV2beta1PrimitiveTransformation", + "description": "Apply the transformation to the entire field." } }, - "id": "GooglePrivacyDlpV2beta1FieldTransformation" + "type": "object" }, - "GooglePrivacyDlpV2beta1OutputStorageConfig": { - "description": "Cloud repository for storing output.", - "type": "object", + "GooglePrivacyDlpV2beta1FileSet": { + "description": "Set of files to scan.", + "id": "GooglePrivacyDlpV2beta1FileSet", "properties": { - "storagePath": { - "$ref": "GooglePrivacyDlpV2beta1CloudStoragePath", - "description": "The path to a Google Cloud Storage location to store output.\nThe bucket must already exist and\nthe Google APIs service account for DLP must have write permission to\nwrite to the given bucket.\nResults are split over multiple csv files with each file name matching\nthe pattern \"[operation_id]_[count].csv\", for example\n`3094877188788974909_1.csv`. The `operation_id` matches the\nidentifier for the Operation, and the `count` is a counter used for\ntracking the number of files written.\n\nThe CSV file(s) contain the following columns regardless of storage type\nscanned:\n- id\n- info_type\n- likelihood\n- byte size of finding\n- quote\n- timestamp\n\nFor Cloud Storage the next columns are:\n\n- file_path\n- start_offset\n\nFor Cloud Datastore the next columns are:\n\n- project_id\n- namespace_id\n- path\n- column_name\n- offset\n\nFor BigQuery the next columns are:\n\n- row_number\n- project_id\n- dataset_id\n- table_id" + "url": { + "description": "The url, in the format `gs://\u003cbucket\u003e/\u003cpath\u003e`. Trailing wildcard in the\npath is allowed.", + "type": "string" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1Finding": { + "description": "Represents a piece of potentially sensitive content.", + "id": "GooglePrivacyDlpV2beta1Finding", + "properties": { + "createTime": { + "description": "Timestamp when finding was detected.", + "format": "google-datetime", + "type": "string" }, - "table": { - "$ref": "GooglePrivacyDlpV2beta1BigQueryTable", - "description": "Store findings in a new table in the dataset." - } - }, - "id": "GooglePrivacyDlpV2beta1OutputStorageConfig" - }, - "GooglePrivacyDlpV2beta1BucketingConfig": { - "description": "Generalization function that buckets values based on ranges. The ranges and\nreplacement values are dynamically provided by the user for custom behavior,\nsuch as 1-30 -\u003e LOW 31-65 -\u003e MEDIUM 66-100 -\u003e HIGH\nThis can be used on\ndata of type: number, long, string, timestamp.\nIf the bound `Value` type differs from the type of data being transformed, we\nwill first attempt converting the type of the data to be transformed to match\nthe type of the bound before comparing.", - "type": "object", - "properties": { - "buckets": { - "type": "array", - "items": { - "$ref": "GooglePrivacyDlpV2beta1Bucket" - } - } - }, - "id": "GooglePrivacyDlpV2beta1BucketingConfig" - }, - "GooglePrivacyDlpV2beta1DeidentifyContentResponse": { - "description": "Results of de-identifying a list of items.", - "type": "object", - "properties": { - "items": { - "type": "array", - "items": { - "$ref": "GooglePrivacyDlpV2beta1ContentItem" - } + "infoType": { + "$ref": "GooglePrivacyDlpV2beta1InfoType", + "description": "The type of content that might have been found.\nProvided if requested by the `InspectConfig`." }, - "summaries": { - "description": "A review of the transformations that took place for each item.", - "type": "array", - "items": { - "$ref": "GooglePrivacyDlpV2beta1DeidentificationSummary" - } + "likelihood": { + "description": "Estimate of how likely it is that the `info_type` is correct.", + "enum": [ + "LIKELIHOOD_UNSPECIFIED", + "VERY_UNLIKELY", + "UNLIKELY", + "POSSIBLE", + "LIKELY", + "VERY_LIKELY" + ], + "enumDescriptions": [ + "Default value; information with all likelihoods is included.", + "Few matching elements.", + "", + "Some matching elements.", + "", + "Many matching elements." + ], + "type": "string" + }, + "location": { + "$ref": "GooglePrivacyDlpV2beta1Location", + "description": "Where the content was found." + }, + "quote": { + "description": "The content that was found. Even if the content is not textual, it\nmay be converted to a textual representation here.\nProvided if requested by the `InspectConfig` and the finding is\nless than or equal to 4096 bytes long. If the finding exceeds 4096 bytes\nin length, the quote may be omitted.", + "type": "string" } }, - "id": "GooglePrivacyDlpV2beta1DeidentifyContentResponse" + "type": "object" }, - "GooglePrivacyDlpV2beta1KAnonymityEquivalenceClass": { - "description": "The set of columns' values that share the same k-anonymity value.", - "type": "object", + "GooglePrivacyDlpV2beta1FixedSizeBucketingConfig": { + "description": "Buckets values based on fixed size ranges. The\nBucketing transformation can provide all of this functionality,\nbut requires more configuration. This message is provided as a convenience to\nthe user for simple bucketing strategies.\nThe resulting value will be a hyphenated string of\nlower_bound-upper_bound.\nThis can be used on data of type: double, long.\nIf the bound Value type differs from the type of data\nbeing transformed, we will first attempt converting the type of the data to\nbe transformed to match the type of the bound before comparing.", + "id": "GooglePrivacyDlpV2beta1FixedSizeBucketingConfig", "properties": { - "equivalenceClassSize": { - "description": "Size of the equivalence class, for example number of rows with the\nabove set of values.", + "bucketSize": { + "description": "Size of each bucket (except for minimum and maximum buckets). So if\n`lower_bound` = 10, `upper_bound` = 89, and `bucket_size` = 10, then the\nfollowing buckets would be used: -10, 10-20, 20-30, 30-40, 40-50, 50-60,\n60-70, 70-80, 80-89, 89+. Precision up to 2 decimals works. [Required].", + "format": "double", + "type": "number" + }, + "lowerBound": { + "$ref": "GooglePrivacyDlpV2beta1Value", + "description": "Lower bound value of buckets. All values less than `lower_bound` are\ngrouped together into a single bucket; for example if `lower_bound` = 10,\nthen all values less than 10 are replaced with the value “-10”. [Required]." + }, + "upperBound": { + "$ref": "GooglePrivacyDlpV2beta1Value", + "description": "Upper bound value of buckets. All values greater than upper_bound are\ngrouped together into a single bucket; for example if `upper_bound` = 89,\nthen all values greater than 89 are replaced with the value “89+”.\n[Required]." + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1ImageLocation": { + "description": "Bounding box encompassing detected text within an image.", + "id": "GooglePrivacyDlpV2beta1ImageLocation", + "properties": { + "height": { + "description": "Height of the bounding box in pixels.", + "format": "int32", + "type": "integer" + }, + "left": { + "description": "Left coordinate of the bounding box. (0,0) is upper left.", + "format": "int32", + "type": "integer" + }, + "top": { + "description": "Top coordinate of the bounding box. (0,0) is upper left.", + "format": "int32", + "type": "integer" + }, + "width": { + "description": "Width of the bounding box in pixels.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1ImageRedactionConfig": { + "description": "Configuration for determining how redaction of images should occur.", + "id": "GooglePrivacyDlpV2beta1ImageRedactionConfig", + "properties": { + "infoType": { + "$ref": "GooglePrivacyDlpV2beta1InfoType", + "description": "Only one per info_type should be provided per request. If not\nspecified, and redact_all_text is false, the DLP API will redact all\ntext that it matches against all info_types that are found, but not\nspecified in another ImageRedactionConfig." + }, + "redactAllText": { + "description": "If true, all text found in the image, regardless whether it matches an\ninfo_type, is redacted.", + "type": "boolean" + }, + "redactionColor": { + "$ref": "GooglePrivacyDlpV2beta1Color", + "description": "The color to use when redacting content from an image. If not specified,\nthe default is black." + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1InfoType": { + "description": "Type of information detected by the API.", + "id": "GooglePrivacyDlpV2beta1InfoType", + "properties": { + "name": { + "description": "Name of the information type.", + "type": "string" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1InfoTypeDescription": { + "description": "Description of the information type (infoType).", + "id": "GooglePrivacyDlpV2beta1InfoTypeDescription", + "properties": { + "categories": { + "description": "List of categories this infoType belongs to.", + "items": { + "$ref": "GooglePrivacyDlpV2beta1CategoryDescription" + }, + "type": "array" + }, + "displayName": { + "description": "Human readable form of the infoType name.", + "type": "string" + }, + "name": { + "description": "Internal name of the infoType.", + "type": "string" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1InfoTypeLimit": { + "description": "Max findings configuration per info type, per content item or long running\noperation.", + "id": "GooglePrivacyDlpV2beta1InfoTypeLimit", + "properties": { + "infoType": { + "$ref": "GooglePrivacyDlpV2beta1InfoType", + "description": "Type of information the findings limit applies to. Only one limit per\ninfo_type should be provided. If InfoTypeLimit does not have an\ninfo_type, the DLP API applies the limit against all info_types that are\nfound but not specified in another InfoTypeLimit." + }, + "maxFindings": { + "description": "Max findings limit for the given infoType.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1InfoTypeStatistics": { + "description": "Statistics regarding a specific InfoType.", + "id": "GooglePrivacyDlpV2beta1InfoTypeStatistics", + "properties": { + "count": { + "description": "Number of findings for this info type.", "format": "int64", "type": "string" }, - "quasiIdsValues": { - "description": "Set of values defining the equivalence class. One value per\nquasi-identifier column in the original KAnonymity metric message.\nThe order is always the same as the original request.", - "type": "array", - "items": { - "$ref": "GooglePrivacyDlpV2beta1Value" - } + "infoType": { + "$ref": "GooglePrivacyDlpV2beta1InfoType", + "description": "The type of finding this stat is for." } }, - "id": "GooglePrivacyDlpV2beta1KAnonymityEquivalenceClass" + "type": "object" }, - "GoogleLongrunningOperation": { - "description": "This resource represents a long-running operation that is the result of a\nnetwork API call.", - "type": "object", + "GooglePrivacyDlpV2beta1InfoTypeTransformation": { + "description": "A transformation to apply to text that is identified as a specific\ninfo_type.", + "id": "GooglePrivacyDlpV2beta1InfoTypeTransformation", "properties": { - "done": { - "description": "If the value is `false`, it means the operation is still in progress.\nIf `true`, the operation is completed, and either `error` or `response` is\navailable.", + "infoTypes": { + "description": "Info types to apply the transformation to. Empty list will match all\navailable info types for this transformation.", + "items": { + "$ref": "GooglePrivacyDlpV2beta1InfoType" + }, + "type": "array" + }, + "primitiveTransformation": { + "$ref": "GooglePrivacyDlpV2beta1PrimitiveTransformation", + "description": "Primitive transformation to apply to the info type. [required]" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1InfoTypeTransformations": { + "description": "A type of transformation that will scan unstructured text and\napply various `PrimitiveTransformation`s to each finding, where the\ntransformation is applied to only values that were identified as a specific\ninfo_type.", + "id": "GooglePrivacyDlpV2beta1InfoTypeTransformations", + "properties": { + "transformations": { + "description": "Transformation for each info type. Cannot specify more than one\nfor a given info type. [required]", + "items": { + "$ref": "GooglePrivacyDlpV2beta1InfoTypeTransformation" + }, + "type": "array" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1InspectConfig": { + "description": "Configuration description of the scanning process.\nWhen used with redactContent only info_types and min_likelihood are currently\nused.", + "id": "GooglePrivacyDlpV2beta1InspectConfig", + "properties": { + "customInfoTypes": { + "description": "Custom info types provided by the user.", + "items": { + "$ref": "GooglePrivacyDlpV2beta1CustomInfoType" + }, + "type": "array" + }, + "excludeTypes": { + "description": "When true, excludes type information of the findings.", "type": "boolean" }, - "response": { - "description": "This field will contain an InspectOperationResult object for `inspect.operations.create` or a RiskAnalysisOperationResult object for `dataSource.analyze`.", - "type": "object", - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - } + "includeQuote": { + "description": "When true, a contextual quote from the data that triggered a finding is\nincluded in the response; see Finding.quote.", + "type": "boolean" }, - "name": { - "description": "The server-assigned name. The `name` should have the format of `inspect/operations/\u003cidentifier\u003e`.", + "infoTypeLimits": { + "description": "Configuration of findings limit given for specified info types.", + "items": { + "$ref": "GooglePrivacyDlpV2beta1InfoTypeLimit" + }, + "type": "array" + }, + "infoTypes": { + "description": "Restricts what info_types to look for. The values must correspond to\nInfoType values returned by ListInfoTypes or found in documentation.\nEmpty info_types runs all enabled detectors.", + "items": { + "$ref": "GooglePrivacyDlpV2beta1InfoType" + }, + "type": "array" + }, + "maxFindings": { + "description": "Limits the number of findings per content item or long running operation.", + "format": "int32", + "type": "integer" + }, + "minLikelihood": { + "description": "Only returns findings equal or above this threshold.", + "enum": [ + "LIKELIHOOD_UNSPECIFIED", + "VERY_UNLIKELY", + "UNLIKELY", + "POSSIBLE", + "LIKELY", + "VERY_LIKELY" + ], + "enumDescriptions": [ + "Default value; information with all likelihoods is included.", + "Few matching elements.", + "", + "Some matching elements.", + "", + "Many matching elements." + ], "type": "string" - }, - "error": { - "$ref": "GoogleRpcStatus", - "description": "The error result of the operation in case of failure or cancellation." - }, - "metadata": { - "description": "This field will contain an InspectOperationMetadata object for `inspect.operations.create` or a RiskAnalysisOperationMetadata object for `dataSource.analyze`. This will always be returned with the Operation.", - "type": "object", - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - } } }, - "id": "GoogleLongrunningOperation" + "type": "object" + }, + "GooglePrivacyDlpV2beta1InspectContentRequest": { + "description": "Request to search for potentially sensitive info in a list of items.", + "id": "GooglePrivacyDlpV2beta1InspectContentRequest", + "properties": { + "inspectConfig": { + "$ref": "GooglePrivacyDlpV2beta1InspectConfig", + "description": "Configuration for the inspector." + }, + "items": { + "description": "The list of items to inspect. Items in a single request are\nconsidered \"related\" unless inspect_config.independent_inputs is true.\nUp to 100 are allowed per request.", + "items": { + "$ref": "GooglePrivacyDlpV2beta1ContentItem" + }, + "type": "array" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1InspectContentResponse": { + "description": "Results of inspecting a list of items.", + "id": "GooglePrivacyDlpV2beta1InspectContentResponse", + "properties": { + "results": { + "description": "Each content_item from the request has a result in this list, in the\nsame order as the request.", + "items": { + "$ref": "GooglePrivacyDlpV2beta1InspectResult" + }, + "type": "array" + } + }, + "type": "object" }, "GooglePrivacyDlpV2beta1InspectOperationMetadata": { "description": "Metadata returned within GetOperation for an inspect request.", - "type": "object", + "id": "GooglePrivacyDlpV2beta1InspectOperationMetadata", "properties": { - "requestStorageConfig": { - "description": "The storage config used to create the Operation.", - "$ref": "GooglePrivacyDlpV2beta1StorageConfig" - }, - "processedBytes": { - "description": "Total size in bytes that were processed.", - "format": "int64", + "createTime": { + "description": "The time which this request was started.", + "format": "google-datetime", "type": "string" }, "infoTypeStats": { - "type": "array", "items": { "$ref": "GooglePrivacyDlpV2beta1InfoTypeStatistics" - } + }, + "type": "array" }, - "totalEstimatedBytes": { - "description": "Estimate of the number of bytes to process.", + "processedBytes": { + "description": "Total size in bytes that were processed.", "format": "int64", "type": "string" }, @@ -1969,417 +1664,99 @@ "$ref": "GooglePrivacyDlpV2beta1OutputStorageConfig", "description": "Optional location to store findings." }, - "createTime": { - "description": "The time which this request was started.", - "format": "google-datetime", - "type": "string" - } - }, - "id": "GooglePrivacyDlpV2beta1InspectOperationMetadata" - }, - "GooglePrivacyDlpV2beta1KmsWrappedCryptoKey": { - "description": "Include to use an existing data crypto key wrapped by KMS.\nAuthorization requires the following IAM permissions when sending a request\nto perform a crypto transformation using a kms-wrapped crypto key:\ndlp.kms.encrypt", - "type": "object", - "properties": { - "wrappedKey": { - "description": "The wrapped data crypto key. [required]", - "format": "byte", - "type": "string" + "requestStorageConfig": { + "$ref": "GooglePrivacyDlpV2beta1StorageConfig", + "description": "The storage config used to create the Operation." }, - "cryptoKeyName": { - "description": "The resource name of the KMS CryptoKey to use for unwrapping. [required]", - "type": "string" - } - }, - "id": "GooglePrivacyDlpV2beta1KmsWrappedCryptoKey" - }, - "GooglePrivacyDlpV2beta1InfoType": { - "description": "Type of information detected by the API.", - "type": "object", - "properties": { - "name": { - "description": "Name of the information type.", - "type": "string" - } - }, - "id": "GooglePrivacyDlpV2beta1InfoType" - }, - "GooglePrivacyDlpV2beta1CharsToIgnore": { - "description": "Characters to skip when doing deidentification of a value. These will be left\nalone and skipped.", - "type": "object", - "properties": { - "charactersToSkip": { - "type": "string" - }, - "commonCharactersToIgnore": { - "type": "string", - "enumDescriptions": [ - "", - "0-9", - "A-Z", - "a-z", - "US Punctuation, one of !\"#$%&'()*+,-./:;\u003c=\u003e?@[\\]^_`{|}~", - "Whitespace character, one of [ \\t\\n\\x0B\\f\\r]" - ], - "enum": [ - "CHARACTER_GROUP_UNSPECIFIED", - "NUMERIC", - "ALPHA_UPPER_CASE", - "ALPHA_LOWER_CASE", - "PUNCTUATION", - "WHITESPACE" - ] - } - }, - "id": "GooglePrivacyDlpV2beta1CharsToIgnore" - }, - "GooglePrivacyDlpV2beta1FixedSizeBucketingConfig": { - "description": "Buckets values based on fixed size ranges. The\nBucketing transformation can provide all of this functionality,\nbut requires more configuration. This message is provided as a convenience to\nthe user for simple bucketing strategies.\nThe resulting value will be a hyphenated string of\nlower_bound-upper_bound.\nThis can be used on data of type: double, long.\nIf the bound Value type differs from the type of data\nbeing transformed, we will first attempt converting the type of the data to\nbe transformed to match the type of the bound before comparing.", - "type": "object", - "properties": { - "lowerBound": { - "description": "Lower bound value of buckets. All values less than `lower_bound` are\ngrouped together into a single bucket; for example if `lower_bound` = 10,\nthen all values less than 10 are replaced with the value “-10”. [Required].", - "$ref": "GooglePrivacyDlpV2beta1Value" - }, - "bucketSize": { - "description": "Size of each bucket (except for minimum and maximum buckets). So if\n`lower_bound` = 10, `upper_bound` = 89, and `bucket_size` = 10, then the\nfollowing buckets would be used: -10, 10-20, 20-30, 30-40, 40-50, 50-60,\n60-70, 70-80, 80-89, 89+. Precision up to 2 decimals works. [Required].", - "format": "double", - "type": "number" - }, - "upperBound": { - "description": "Upper bound value of buckets. All values greater than upper_bound are\ngrouped together into a single bucket; for example if `upper_bound` = 89,\nthen all values greater than 89 are replaced with the value “89+”.\n[Required].", - "$ref": "GooglePrivacyDlpV2beta1Value" - } - }, - "id": "GooglePrivacyDlpV2beta1FixedSizeBucketingConfig" - }, - "GooglePrivacyDlpV2beta1RiskAnalysisOperationResult": { - "description": "Result of a risk analysis\n[`Operation`](/dlp/docs/reference/rest/v2beta1/inspect.operations)\nrequest.", - "type": "object", - "properties": { - "numericalStatsResult": { - "$ref": "GooglePrivacyDlpV2beta1NumericalStatsResult" - }, - "kMapEstimationResult": { - "$ref": "GooglePrivacyDlpV2beta1KMapEstimationResult" - }, - "kAnonymityResult": { - "$ref": "GooglePrivacyDlpV2beta1KAnonymityResult" - }, - "lDiversityResult": { - "$ref": "GooglePrivacyDlpV2beta1LDiversityResult" - }, - "categoricalStatsResult": { - "$ref": "GooglePrivacyDlpV2beta1CategoricalStatsResult" - } - }, - "id": "GooglePrivacyDlpV2beta1RiskAnalysisOperationResult" - }, - "GooglePrivacyDlpV2beta1CategoryDescription": { - "description": "Info Type Category description.", - "type": "object", - "properties": { - "name": { - "description": "Internal name of the category.", - "type": "string" - }, - "displayName": { - "description": "Human readable form of the category name.", - "type": "string" - } - }, - "id": "GooglePrivacyDlpV2beta1CategoryDescription" - }, - "GooglePrivacyDlpV2beta1Conditions": { - "type": "object", - "properties": { - "conditions": { - "type": "array", - "items": { - "$ref": "GooglePrivacyDlpV2beta1Condition" - } - } - }, - "id": "GooglePrivacyDlpV2beta1Conditions" - }, - "GooglePrivacyDlpV2beta1PrimitiveTransformation": { - "description": "A rule for transforming a value.", - "type": "object", - "properties": { - "replaceConfig": { - "$ref": "GooglePrivacyDlpV2beta1ReplaceValueConfig" - }, - "timePartConfig": { - "$ref": "GooglePrivacyDlpV2beta1TimePartConfig" - }, - "fixedSizeBucketingConfig": { - "$ref": "GooglePrivacyDlpV2beta1FixedSizeBucketingConfig" - }, - "characterMaskConfig": { - "$ref": "GooglePrivacyDlpV2beta1CharacterMaskConfig" - }, - "redactConfig": { - "$ref": "GooglePrivacyDlpV2beta1RedactConfig" - }, - "bucketingConfig": { - "$ref": "GooglePrivacyDlpV2beta1BucketingConfig" - }, - "replaceWithInfoTypeConfig": { - "$ref": "GooglePrivacyDlpV2beta1ReplaceWithInfoTypeConfig" - }, - "cryptoHashConfig": { - "$ref": "GooglePrivacyDlpV2beta1CryptoHashConfig" - }, - "cryptoReplaceFfxFpeConfig": { - "$ref": "GooglePrivacyDlpV2beta1CryptoReplaceFfxFpeConfig" - } - }, - "id": "GooglePrivacyDlpV2beta1PrimitiveTransformation" - }, - "GooglePrivacyDlpV2beta1CategoricalStatsConfig": { - "description": "Compute numerical stats over an individual column, including\nnumber of distinct values and value count distribution.", - "type": "object", - "properties": { - "field": { - "description": "Field to compute categorical stats on. All column types are\nsupported except for arrays and structs. However, it may be more\ninformative to use NumericalStats when the field type is supported,\ndepending on the data.", - "$ref": "GooglePrivacyDlpV2beta1FieldId" - } - }, - "id": "GooglePrivacyDlpV2beta1CategoricalStatsConfig" - }, - "GooglePrivacyDlpV2beta1Finding": { - "description": "Represents a piece of potentially sensitive content.", - "type": "object", - "properties": { - "infoType": { - "description": "The type of content that might have been found.\nProvided if requested by the `InspectConfig`.", - "$ref": "GooglePrivacyDlpV2beta1InfoType" - }, - "createTime": { - "description": "Timestamp when finding was detected.", - "format": "google-datetime", - "type": "string" - }, - "quote": { - "description": "The content that was found. Even if the content is not textual, it\nmay be converted to a textual representation here.\nProvided if requested by the `InspectConfig`.", - "type": "string" - }, - "location": { - "$ref": "GooglePrivacyDlpV2beta1Location", - "description": "Where the content was found." - }, - "likelihood": { - "description": "Estimate of how likely it is that the `info_type` is correct.", - "type": "string", - "enumDescriptions": [ - "Default value; information with all likelihoods is included.", - "Few matching elements.", - "", - "Some matching elements.", - "", - "Many matching elements." - ], - "enum": [ - "LIKELIHOOD_UNSPECIFIED", - "VERY_UNLIKELY", - "UNLIKELY", - "POSSIBLE", - "LIKELY", - "VERY_LIKELY" - ] - } - }, - "id": "GooglePrivacyDlpV2beta1Finding" - }, - "GooglePrivacyDlpV2beta1KMapEstimationConfig": { - "description": "Reidentifiability metric. This corresponds to a risk model similar to what\nis called \"journalist risk\" in the literature, except the attack dataset is\nstatistically modeled instead of being perfectly known. This can be done\nusing publicly available data (like the US Census), or using a custom\nstatistical model (indicated as one or several BigQuery tables), or by\nextrapolating from the distribution of values in the input dataset.", - "type": "object", - "properties": { - "auxiliaryTables": { - "description": "Several auxiliary tables can be used in the analysis. Each custom_tag\nused to tag a quasi-identifiers column must appear in exactly one column\nof one auxiliary table.", - "type": "array", - "items": { - "$ref": "GooglePrivacyDlpV2beta1AuxiliaryTable" - } - }, - "quasiIds": { - "description": "Fields considered to be quasi-identifiers. No two columns can have the\nsame tag. [required]", - "type": "array", - "items": { - "$ref": "GooglePrivacyDlpV2beta1TaggedField" - } - }, - "regionCode": { - "description": "ISO 3166-1 alpha-2 region code to use in the statistical modeling.\nRequired if no column is tagged with a region-specific InfoType (like\nUS_ZIP_5) or a region code.", - "type": "string" - } - }, - "id": "GooglePrivacyDlpV2beta1KMapEstimationConfig" - }, - "GooglePrivacyDlpV2beta1RiskAnalysisOperationMetadata": { - "description": "Metadata returned within the\n[`riskAnalysis.operations.get`](/dlp/docs/reference/rest/v2beta1/riskAnalysis.operations/get)\nfor risk analysis.", - "type": "object", - "properties": { - "createTime": { - "description": "The time which this request was started.", - "format": "google-datetime", - "type": "string" - }, - "requestedSourceTable": { - "$ref": "GooglePrivacyDlpV2beta1BigQueryTable", - "description": "Input dataset to compute metrics over." - }, - "requestedPrivacyMetric": { - "description": "Privacy metric to compute.", - "$ref": "GooglePrivacyDlpV2beta1PrivacyMetric" - } - }, - "id": "GooglePrivacyDlpV2beta1RiskAnalysisOperationMetadata" - }, - "GoogleLongrunningListOperationsResponse": { - "description": "The response message for Operations.ListOperations.", - "type": "object", - "properties": { - "nextPageToken": { - "description": "The standard List next-page token.", - "type": "string" - }, - "operations": { - "description": "A list of operations that matches the specified filter in the request.", - "type": "array", - "items": { - "$ref": "GoogleLongrunningOperation" - } - } - }, - "id": "GoogleLongrunningListOperationsResponse" - }, - "GooglePrivacyDlpV2beta1Row": { - "type": "object", - "properties": { - "values": { - "type": "array", - "items": { - "$ref": "GooglePrivacyDlpV2beta1Value" - } - } - }, - "id": "GooglePrivacyDlpV2beta1Row" - }, - "GoogleProtobufEmpty": { - "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 `{}`.", - "type": "object", - "properties": {}, - "id": "GoogleProtobufEmpty" - }, - "GooglePrivacyDlpV2beta1ListInspectFindingsResponse": { - "description": "Response to the ListInspectFindings request.", - "type": "object", - "properties": { - "result": { - "$ref": "GooglePrivacyDlpV2beta1InspectResult", - "description": "The results." - }, - "nextPageToken": { - "description": "If not empty, indicates that there may be more results that match the\nrequest; this value should be passed in a new `ListInspectFindingsRequest`.", - "type": "string" - } - }, - "id": "GooglePrivacyDlpV2beta1ListInspectFindingsResponse" - }, - "GooglePrivacyDlpV2beta1KMapEstimationHistogramBucket": { - "description": "A KMapEstimationHistogramBucket message with the following values:\n min_anonymity: 3\n max_anonymity: 5\n frequency: 42\nmeans that there are 42 records whose quasi-identifier values correspond\nto 3, 4 or 5 people in the overlying population. An important particular\ncase is when min_anonymity = max_anonymity = 1: the frequency field then\ncorresponds to the number of uniquely identifiable records.", - "type": "object", - "properties": { - "maxAnonymity": { - "description": "Always greater than or equal to min_anonymity.", - "format": "int64", - "type": "string" - }, - "bucketSize": { - "description": "Number of records within these anonymity bounds.", - "format": "int64", - "type": "string" - }, - "bucketValues": { - "description": "Sample of quasi-identifier tuple values in this bucket. The total\nnumber of classes returned per bucket is capped at 20.", - "type": "array", - "items": { - "$ref": "GooglePrivacyDlpV2beta1KMapEstimationQuasiIdValues" - } - }, - "minAnonymity": { - "description": "Always positive.", + "totalEstimatedBytes": { + "description": "Estimate of the number of bytes to process.", "format": "int64", "type": "string" } }, - "id": "GooglePrivacyDlpV2beta1KMapEstimationHistogramBucket" - }, - "GooglePrivacyDlpV2beta1Expressions": { - "description": "A collection of expressions", - "type": "object", - "properties": { - "logicalOperator": { - "description": "The operator to apply to the result of conditions. Default and currently\nonly supported value is `AND`.", - "type": "string", - "enumDescriptions": [ - "", - "" - ], - "enum": [ - "LOGICAL_OPERATOR_UNSPECIFIED", - "AND" - ] - }, - "conditions": { - "$ref": "GooglePrivacyDlpV2beta1Conditions" - } - }, - "id": "GooglePrivacyDlpV2beta1Expressions" - }, - "GooglePrivacyDlpV2beta1CloudStorageOptions": { - "description": "Options defining a file or a set of files (path ending with *) within\na Google Cloud Storage bucket.", - "type": "object", - "properties": { - "fileSet": { - "$ref": "GooglePrivacyDlpV2beta1FileSet" - } - }, - "id": "GooglePrivacyDlpV2beta1CloudStorageOptions" - }, - "GooglePrivacyDlpV2beta1CloudStoragePath": { - "description": "A location in Cloud Storage.", - "type": "object", - "properties": { - "path": { - "description": "The url, in the format of `gs://bucket/\u003cpath\u003e`.", - "type": "string" - } - }, - "id": "GooglePrivacyDlpV2beta1CloudStoragePath" + "type": "object" }, "GooglePrivacyDlpV2beta1InspectOperationResult": { "description": "The operational data.", - "type": "object", + "id": "GooglePrivacyDlpV2beta1InspectOperationResult", "properties": { "name": { "description": "The server-assigned name, which is only unique within the same service that\noriginally returns it. If you use the default HTTP mapping, the\n`name` should have the format of `inspect/results/{id}`.", "type": "string" } }, - "id": "GooglePrivacyDlpV2beta1InspectOperationResult" + "type": "object" + }, + "GooglePrivacyDlpV2beta1InspectResult": { + "description": "All the findings for a single scanned item.", + "id": "GooglePrivacyDlpV2beta1InspectResult", + "properties": { + "findings": { + "description": "List of findings for an item.", + "items": { + "$ref": "GooglePrivacyDlpV2beta1Finding" + }, + "type": "array" + }, + "findingsTruncated": { + "description": "If true, then this item might have more findings than were returned,\nand the findings returned are an arbitrary subset of all findings.\nThe findings list might be truncated because the input items were too\nlarge, or because the server reached the maximum amount of resources\nallowed for a single API call. For best results, divide the input into\nsmaller batches.", + "type": "boolean" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1KAnonymityConfig": { + "description": "k-anonymity metric, used for analysis of reidentification risk.", + "id": "GooglePrivacyDlpV2beta1KAnonymityConfig", + "properties": { + "entityId": { + "$ref": "GooglePrivacyDlpV2beta1EntityId", + "description": "Optional message indicating that each distinct entity_id should not\ncontribute to the k-anonymity count more than once per equivalence class.\nIf an entity_id appears on several rows with different quasi-identifier\ntuples, it will contribute to each count exactly once.\n\nThis can lead to unexpected results. Consider a table where ID 1 is\nassociated to quasi-identifier \"foo\", ID 2 to \"bar\", and ID 3 to *both*\nquasi-identifiers \"foo\" and \"bar\" (on separate rows), and where this ID\nis used as entity_id. Then, the anonymity value associated to ID 3 will\nbe 2, even if it is the only ID to be associated to both values \"foo\" and\n\"bar\"." + }, + "quasiIds": { + "description": "Set of fields to compute k-anonymity over. When multiple fields are\nspecified, they are considered a single composite key. Structs and\nrepeated data types are not supported; however, nested fields are\nsupported so long as they are not structs themselves or nested within\na repeated field.", + "items": { + "$ref": "GooglePrivacyDlpV2beta1FieldId" + }, + "type": "array" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1KAnonymityEquivalenceClass": { + "description": "The set of columns' values that share the same k-anonymity value.", + "id": "GooglePrivacyDlpV2beta1KAnonymityEquivalenceClass", + "properties": { + "equivalenceClassSize": { + "description": "Size of the equivalence class, for example number of rows with the\nabove set of values.", + "format": "int64", + "type": "string" + }, + "quasiIdsValues": { + "description": "Set of values defining the equivalence class. One value per\nquasi-identifier column in the original KAnonymity metric message.\nThe order is always the same as the original request.", + "items": { + "$ref": "GooglePrivacyDlpV2beta1Value" + }, + "type": "array" + } + }, + "type": "object" }, "GooglePrivacyDlpV2beta1KAnonymityHistogramBucket": { "description": "Histogram bucket of equivalence class sizes in the table.", - "type": "object", + "id": "GooglePrivacyDlpV2beta1KAnonymityHistogramBucket", "properties": { + "bucketSize": { + "description": "Total number of records in this bucket.", + "format": "int64", + "type": "string" + }, "bucketValues": { "description": "Sample of equivalence classes in this bucket. The total number of\nclasses returned per bucket is capped at 20.", - "type": "array", "items": { "$ref": "GooglePrivacyDlpV2beta1KAnonymityEquivalenceClass" - } + }, + "type": "array" }, "equivalenceClassSizeLowerBound": { "description": "Lower bound on the size of the equivalence classes in this bucket.", @@ -2390,69 +1767,1051 @@ "description": "Upper bound on the size of the equivalence classes in this bucket.", "format": "int64", "type": "string" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1KAnonymityResult": { + "description": "Result of the k-anonymity computation.", + "id": "GooglePrivacyDlpV2beta1KAnonymityResult", + "properties": { + "equivalenceClassHistogramBuckets": { + "description": "Histogram of k-anonymity equivalence classes.", + "items": { + "$ref": "GooglePrivacyDlpV2beta1KAnonymityHistogramBucket" + }, + "type": "array" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1KMapEstimationConfig": { + "description": "Reidentifiability metric. This corresponds to a risk model similar to what\nis called \"journalist risk\" in the literature, except the attack dataset is\nstatistically modeled instead of being perfectly known. This can be done\nusing publicly available data (like the US Census), or using a custom\nstatistical model (indicated as one or several BigQuery tables), or by\nextrapolating from the distribution of values in the input dataset.", + "id": "GooglePrivacyDlpV2beta1KMapEstimationConfig", + "properties": { + "auxiliaryTables": { + "description": "Several auxiliary tables can be used in the analysis. Each custom_tag\nused to tag a quasi-identifiers column must appear in exactly one column\nof one auxiliary table.", + "items": { + "$ref": "GooglePrivacyDlpV2beta1AuxiliaryTable" + }, + "type": "array" }, + "quasiIds": { + "description": "Fields considered to be quasi-identifiers. No two columns can have the\nsame tag. [required]", + "items": { + "$ref": "GooglePrivacyDlpV2beta1TaggedField" + }, + "type": "array" + }, + "regionCode": { + "description": "ISO 3166-1 alpha-2 region code to use in the statistical modeling.\nRequired if no column is tagged with a region-specific InfoType (like\nUS_ZIP_5) or a region code.", + "type": "string" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1KMapEstimationHistogramBucket": { + "description": "A KMapEstimationHistogramBucket message with the following values:\n min_anonymity: 3\n max_anonymity: 5\n frequency: 42\nmeans that there are 42 records whose quasi-identifier values correspond\nto 3, 4 or 5 people in the overlying population. An important particular\ncase is when min_anonymity = max_anonymity = 1: the frequency field then\ncorresponds to the number of uniquely identifiable records.", + "id": "GooglePrivacyDlpV2beta1KMapEstimationHistogramBucket", + "properties": { + "bucketSize": { + "description": "Number of records within these anonymity bounds.", + "format": "int64", + "type": "string" + }, + "bucketValues": { + "description": "Sample of quasi-identifier tuple values in this bucket. The total\nnumber of classes returned per bucket is capped at 20.", + "items": { + "$ref": "GooglePrivacyDlpV2beta1KMapEstimationQuasiIdValues" + }, + "type": "array" + }, + "maxAnonymity": { + "description": "Always greater than or equal to min_anonymity.", + "format": "int64", + "type": "string" + }, + "minAnonymity": { + "description": "Always positive.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1KMapEstimationQuasiIdValues": { + "description": "A tuple of values for the quasi-identifier columns.", + "id": "GooglePrivacyDlpV2beta1KMapEstimationQuasiIdValues", + "properties": { + "estimatedAnonymity": { + "description": "The estimated anonymity for these quasi-identifier values.", + "format": "int64", + "type": "string" + }, + "quasiIdsValues": { + "description": "The quasi-identifier values.", + "items": { + "$ref": "GooglePrivacyDlpV2beta1Value" + }, + "type": "array" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1KMapEstimationResult": { + "description": "Result of the reidentifiability analysis. Note that these results are an\nestimation, not exact values.", + "id": "GooglePrivacyDlpV2beta1KMapEstimationResult", + "properties": { + "kMapEstimationHistogram": { + "description": "The intervals [min_anonymity, max_anonymity] do not overlap. If a value\ndoesn't correspond to any such interval, the associated frequency is\nzero. For example, the following records:\n {min_anonymity: 1, max_anonymity: 1, frequency: 17}\n {min_anonymity: 2, max_anonymity: 3, frequency: 42}\n {min_anonymity: 5, max_anonymity: 10, frequency: 99}\nmean that there are no record with an estimated anonymity of 4, 5, or\nlarger than 10.", + "items": { + "$ref": "GooglePrivacyDlpV2beta1KMapEstimationHistogramBucket" + }, + "type": "array" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1Key": { + "description": "A unique identifier for a Datastore entity.\nIf a key's partition ID or any of its path kinds or names are\nreserved/read-only, the key is reserved/read-only.\nA reserved/read-only key is forbidden in certain documented contexts.", + "id": "GooglePrivacyDlpV2beta1Key", + "properties": { + "partitionId": { + "$ref": "GooglePrivacyDlpV2beta1PartitionId", + "description": "Entities are partitioned into subsets, currently identified by a project\nID and namespace ID.\nQueries are scoped to a single partition." + }, + "path": { + "description": "The entity path.\nAn entity path consists of one or more elements composed of a kind and a\nstring or numerical identifier, which identify entities. The first\nelement identifies a _root entity_, the second element identifies\na _child_ of the root entity, the third element identifies a child of the\nsecond entity, and so forth. The entities identified by all prefixes of\nthe path are called the element's _ancestors_.\n\nA path can never be empty, and a path can have at most 100 elements.", + "items": { + "$ref": "GooglePrivacyDlpV2beta1PathElement" + }, + "type": "array" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1KindExpression": { + "description": "A representation of a Datastore kind.", + "id": "GooglePrivacyDlpV2beta1KindExpression", + "properties": { + "name": { + "description": "The name of the kind.", + "type": "string" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1KmsWrappedCryptoKey": { + "description": "Include to use an existing data crypto key wrapped by KMS.\nAuthorization requires the following IAM permissions when sending a request\nto perform a crypto transformation using a kms-wrapped crypto key:\ndlp.kms.encrypt", + "id": "GooglePrivacyDlpV2beta1KmsWrappedCryptoKey", + "properties": { + "cryptoKeyName": { + "description": "The resource name of the KMS CryptoKey to use for unwrapping. [required]", + "type": "string" + }, + "wrappedKey": { + "description": "The wrapped data crypto key. [required]", + "format": "byte", + "type": "string" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1LDiversityConfig": { + "description": "l-diversity metric, used for analysis of reidentification risk.", + "id": "GooglePrivacyDlpV2beta1LDiversityConfig", + "properties": { + "quasiIds": { + "description": "Set of quasi-identifiers indicating how equivalence classes are\ndefined for the l-diversity computation. When multiple fields are\nspecified, they are considered a single composite key.", + "items": { + "$ref": "GooglePrivacyDlpV2beta1FieldId" + }, + "type": "array" + }, + "sensitiveAttribute": { + "$ref": "GooglePrivacyDlpV2beta1FieldId", + "description": "Sensitive field for computing the l-value." + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1LDiversityEquivalenceClass": { + "description": "The set of columns' values that share the same l-diversity value.", + "id": "GooglePrivacyDlpV2beta1LDiversityEquivalenceClass", + "properties": { + "equivalenceClassSize": { + "description": "Size of the k-anonymity equivalence class.", + "format": "int64", + "type": "string" + }, + "numDistinctSensitiveValues": { + "description": "Number of distinct sensitive values in this equivalence class.", + "format": "int64", + "type": "string" + }, + "quasiIdsValues": { + "description": "Quasi-identifier values defining the k-anonymity equivalence\nclass. The order is always the same as the original request.", + "items": { + "$ref": "GooglePrivacyDlpV2beta1Value" + }, + "type": "array" + }, + "topSensitiveValues": { + "description": "Estimated frequencies of top sensitive values.", + "items": { + "$ref": "GooglePrivacyDlpV2beta1ValueFrequency" + }, + "type": "array" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1LDiversityHistogramBucket": { + "description": "Histogram bucket of sensitive value frequencies in the table.", + "id": "GooglePrivacyDlpV2beta1LDiversityHistogramBucket", + "properties": { "bucketSize": { "description": "Total number of records in this bucket.", "format": "int64", "type": "string" - } - }, - "id": "GooglePrivacyDlpV2beta1KAnonymityHistogramBucket" - }, - "GooglePrivacyDlpV2beta1Range": { - "description": "Generic half-open interval [start, end)", - "type": "object", - "properties": { - "start": { - "description": "Index of the first character of the range (inclusive).", + }, + "bucketValues": { + "description": "Sample of equivalence classes in this bucket. The total number of\nclasses returned per bucket is capped at 20.", + "items": { + "$ref": "GooglePrivacyDlpV2beta1LDiversityEquivalenceClass" + }, + "type": "array" + }, + "sensitiveValueFrequencyLowerBound": { + "description": "Lower bound on the sensitive value frequencies of the equivalence\nclasses in this bucket.", "format": "int64", "type": "string" }, + "sensitiveValueFrequencyUpperBound": { + "description": "Upper bound on the sensitive value frequencies of the equivalence\nclasses in this bucket.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1LDiversityResult": { + "description": "Result of the l-diversity computation.", + "id": "GooglePrivacyDlpV2beta1LDiversityResult", + "properties": { + "sensitiveValueFrequencyHistogramBuckets": { + "description": "Histogram of l-diversity equivalence class sensitive value frequencies.", + "items": { + "$ref": "GooglePrivacyDlpV2beta1LDiversityHistogramBucket" + }, + "type": "array" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1ListInfoTypesResponse": { + "description": "Response to the ListInfoTypes request.", + "id": "GooglePrivacyDlpV2beta1ListInfoTypesResponse", + "properties": { + "infoTypes": { + "description": "Set of sensitive info types belonging to a category.", + "items": { + "$ref": "GooglePrivacyDlpV2beta1InfoTypeDescription" + }, + "type": "array" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1ListInspectFindingsResponse": { + "description": "Response to the ListInspectFindings request.", + "id": "GooglePrivacyDlpV2beta1ListInspectFindingsResponse", + "properties": { + "nextPageToken": { + "description": "If not empty, indicates that there may be more results that match the\nrequest; this value should be passed in a new `ListInspectFindingsRequest`.", + "type": "string" + }, + "result": { + "$ref": "GooglePrivacyDlpV2beta1InspectResult", + "description": "The results." + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1ListRootCategoriesResponse": { + "description": "Response for ListRootCategories request.", + "id": "GooglePrivacyDlpV2beta1ListRootCategoriesResponse", + "properties": { + "categories": { + "description": "List of all into type categories supported by the API.", + "items": { + "$ref": "GooglePrivacyDlpV2beta1CategoryDescription" + }, + "type": "array" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1Location": { + "description": "Specifies the location of the finding.", + "id": "GooglePrivacyDlpV2beta1Location", + "properties": { + "byteRange": { + "$ref": "GooglePrivacyDlpV2beta1Range", + "description": "Zero-based byte offsets delimiting the finding.\nThese are relative to the finding's containing element.\nNote that when the content is not textual, this references\nthe UTF-8 encoded textual representation of the content.\nOmitted if content is an image." + }, + "codepointRange": { + "$ref": "GooglePrivacyDlpV2beta1Range", + "description": "Unicode character offsets delimiting the finding.\nThese are relative to the finding's containing element.\nProvided when the content is text." + }, + "fieldId": { + "$ref": "GooglePrivacyDlpV2beta1FieldId", + "description": "The pointer to the property or cell that contained the finding.\nProvided when the finding's containing element is a cell in a table\nor a property of storage object." + }, + "imageBoxes": { + "description": "The area within the image that contained the finding.\nProvided when the content is an image.", + "items": { + "$ref": "GooglePrivacyDlpV2beta1ImageLocation" + }, + "type": "array" + }, + "recordKey": { + "$ref": "GooglePrivacyDlpV2beta1RecordKey", + "description": "The pointer to the record in storage that contained the field the\nfinding was found in.\nProvided when the finding's containing element is a property\nof a storage object." + }, + "tableLocation": { + "$ref": "GooglePrivacyDlpV2beta1TableLocation", + "description": "The pointer to the row of the table that contained the finding.\nProvided when the finding's containing element is a cell of a table." + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1NumericalStatsConfig": { + "description": "Compute numerical stats over an individual column, including\nmin, max, and quantiles.", + "id": "GooglePrivacyDlpV2beta1NumericalStatsConfig", + "properties": { + "field": { + "$ref": "GooglePrivacyDlpV2beta1FieldId", + "description": "Field to compute numerical stats on. Supported types are\ninteger, float, date, datetime, timestamp, time." + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1NumericalStatsResult": { + "description": "Result of the numerical stats computation.", + "id": "GooglePrivacyDlpV2beta1NumericalStatsResult", + "properties": { + "maxValue": { + "$ref": "GooglePrivacyDlpV2beta1Value", + "description": "Maximum value appearing in the column." + }, + "minValue": { + "$ref": "GooglePrivacyDlpV2beta1Value", + "description": "Minimum value appearing in the column." + }, + "quantileValues": { + "description": "List of 99 values that partition the set of field values into 100 equal\nsized buckets.", + "items": { + "$ref": "GooglePrivacyDlpV2beta1Value" + }, + "type": "array" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1OperationConfig": { + "description": "Additional configuration for inspect long running operations.", + "id": "GooglePrivacyDlpV2beta1OperationConfig", + "properties": { + "maxItemFindings": { + "description": "Max number of findings per file, Datastore entity, or database row.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1OutputStorageConfig": { + "description": "Cloud repository for storing output.", + "id": "GooglePrivacyDlpV2beta1OutputStorageConfig", + "properties": { + "storagePath": { + "$ref": "GooglePrivacyDlpV2beta1CloudStoragePath", + "description": "The path to a Google Cloud Storage location to store output.\nThe bucket must already exist and\nthe Google APIs service account for DLP must have write permission to\nwrite to the given bucket.\nResults are split over multiple csv files with each file name matching\nthe pattern \"[operation_id]_[count].csv\", for example\n`3094877188788974909_1.csv`. The `operation_id` matches the\nidentifier for the Operation, and the `count` is a counter used for\ntracking the number of files written.\n\nThe CSV file(s) contain the following columns regardless of storage type\nscanned:\n- id\n- info_type\n- likelihood\n- byte size of finding\n- quote\n- timestamp\n\nFor Cloud Storage the next columns are:\n\n- file_path\n- start_offset\n\nFor Cloud Datastore the next columns are:\n\n- project_id\n- namespace_id\n- path\n- column_name\n- offset\n\nFor BigQuery the next columns are:\n\n- row_number\n- project_id\n- dataset_id\n- table_id" + }, + "table": { + "$ref": "GooglePrivacyDlpV2beta1BigQueryTable", + "description": "Store findings in a new table in the dataset." + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1PartitionId": { + "description": "Datastore partition ID.\nA partition ID identifies a grouping of entities. The grouping is always\nby project and namespace, however the namespace ID may be empty.\n\nA partition ID contains several dimensions:\nproject ID and namespace ID.", + "id": "GooglePrivacyDlpV2beta1PartitionId", + "properties": { + "namespaceId": { + "description": "If not empty, the ID of the namespace to which the entities belong.", + "type": "string" + }, + "projectId": { + "description": "The ID of the project to which the entities belong.", + "type": "string" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1PathElement": { + "description": "A (kind, ID/name) pair used to construct a key path.\n\nIf either name or ID is set, the element is complete.\nIf neither is set, the element is incomplete.", + "id": "GooglePrivacyDlpV2beta1PathElement", + "properties": { + "id": { + "description": "The auto-allocated ID of the entity.\nNever equal to zero. Values less than zero are discouraged and may not\nbe supported in the future.", + "format": "int64", + "type": "string" + }, + "kind": { + "description": "The kind of the entity.\nA kind matching regex `__.*__` is reserved/read-only.\nA kind must not contain more than 1500 bytes when UTF-8 encoded.\nCannot be `\"\"`.", + "type": "string" + }, + "name": { + "description": "The name of the entity.\nA name matching regex `__.*__` is reserved/read-only.\nA name must not be more than 1500 bytes when UTF-8 encoded.\nCannot be `\"\"`.", + "type": "string" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1PrimitiveTransformation": { + "description": "A rule for transforming a value.", + "id": "GooglePrivacyDlpV2beta1PrimitiveTransformation", + "properties": { + "bucketingConfig": { + "$ref": "GooglePrivacyDlpV2beta1BucketingConfig" + }, + "characterMaskConfig": { + "$ref": "GooglePrivacyDlpV2beta1CharacterMaskConfig" + }, + "cryptoHashConfig": { + "$ref": "GooglePrivacyDlpV2beta1CryptoHashConfig" + }, + "cryptoReplaceFfxFpeConfig": { + "$ref": "GooglePrivacyDlpV2beta1CryptoReplaceFfxFpeConfig" + }, + "fixedSizeBucketingConfig": { + "$ref": "GooglePrivacyDlpV2beta1FixedSizeBucketingConfig" + }, + "redactConfig": { + "$ref": "GooglePrivacyDlpV2beta1RedactConfig" + }, + "replaceConfig": { + "$ref": "GooglePrivacyDlpV2beta1ReplaceValueConfig" + }, + "replaceWithInfoTypeConfig": { + "$ref": "GooglePrivacyDlpV2beta1ReplaceWithInfoTypeConfig" + }, + "timePartConfig": { + "$ref": "GooglePrivacyDlpV2beta1TimePartConfig" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1PrivacyMetric": { + "description": "Privacy metric to compute for reidentification risk analysis.", + "id": "GooglePrivacyDlpV2beta1PrivacyMetric", + "properties": { + "categoricalStatsConfig": { + "$ref": "GooglePrivacyDlpV2beta1CategoricalStatsConfig" + }, + "kAnonymityConfig": { + "$ref": "GooglePrivacyDlpV2beta1KAnonymityConfig" + }, + "kMapEstimationConfig": { + "$ref": "GooglePrivacyDlpV2beta1KMapEstimationConfig" + }, + "lDiversityConfig": { + "$ref": "GooglePrivacyDlpV2beta1LDiversityConfig" + }, + "numericalStatsConfig": { + "$ref": "GooglePrivacyDlpV2beta1NumericalStatsConfig" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1Projection": { + "description": "A representation of a Datastore property in a projection.", + "id": "GooglePrivacyDlpV2beta1Projection", + "properties": { + "property": { + "$ref": "GooglePrivacyDlpV2beta1PropertyReference", + "description": "The property to project." + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1PropertyReference": { + "description": "A reference to a property relative to the Datastore kind expressions.", + "id": "GooglePrivacyDlpV2beta1PropertyReference", + "properties": { + "name": { + "description": "The name of the property.\nIf name includes \".\"s, it may be interpreted as a property name path.", + "type": "string" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1QuasiIdField": { + "description": "A quasi-identifier column has a custom_tag, used to know which column\nin the data corresponds to which column in the statistical model.", + "id": "GooglePrivacyDlpV2beta1QuasiIdField", + "properties": { + "customTag": { + "type": "string" + }, + "field": { + "$ref": "GooglePrivacyDlpV2beta1FieldId" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1Range": { + "description": "Generic half-open interval [start, end)", + "id": "GooglePrivacyDlpV2beta1Range", + "properties": { "end": { "description": "Index of the last character of the range (exclusive).", "format": "int64", "type": "string" + }, + "start": { + "description": "Index of the first character of the range (inclusive).", + "format": "int64", + "type": "string" } }, - "id": "GooglePrivacyDlpV2beta1Range" + "type": "object" }, - "GooglePrivacyDlpV2beta1CategoricalStatsResult": { - "description": "Result of the categorical stats computation.", - "type": "object", + "GooglePrivacyDlpV2beta1RecordCondition": { + "description": "A condition for determining whether a transformation should be applied to\na field.", + "id": "GooglePrivacyDlpV2beta1RecordCondition", "properties": { - "valueFrequencyHistogramBuckets": { - "description": "Histogram of value frequencies in the column.", - "type": "array", - "items": { - "$ref": "GooglePrivacyDlpV2beta1CategoricalStatsHistogramBucket" - } + "expressions": { + "$ref": "GooglePrivacyDlpV2beta1Expressions" } }, - "id": "GooglePrivacyDlpV2beta1CategoricalStatsResult" + "type": "object" }, - "GooglePrivacyDlpV2beta1LDiversityResult": { - "description": "Result of the l-diversity computation.", - "type": "object", + "GooglePrivacyDlpV2beta1RecordKey": { + "description": "Message for a unique key indicating a record that contains a finding.", + "id": "GooglePrivacyDlpV2beta1RecordKey", "properties": { - "sensitiveValueFrequencyHistogramBuckets": { - "description": "Histogram of l-diversity equivalence class sensitive value frequencies.", - "type": "array", - "items": { - "$ref": "GooglePrivacyDlpV2beta1LDiversityHistogramBucket" - } + "bigQueryKey": { + "$ref": "GooglePrivacyDlpV2beta1BigQueryKey" + }, + "cloudStorageKey": { + "$ref": "GooglePrivacyDlpV2beta1CloudStorageKey" + }, + "datastoreKey": { + "$ref": "GooglePrivacyDlpV2beta1DatastoreKey" } }, - "id": "GooglePrivacyDlpV2beta1LDiversityResult" + "type": "object" + }, + "GooglePrivacyDlpV2beta1RecordSuppression": { + "description": "Configuration to suppress records whose suppression conditions evaluate to\ntrue.", + "id": "GooglePrivacyDlpV2beta1RecordSuppression", + "properties": { + "condition": { + "$ref": "GooglePrivacyDlpV2beta1RecordCondition" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1RecordTransformations": { + "description": "A type of transformation that is applied over structured data such as a\ntable.", + "id": "GooglePrivacyDlpV2beta1RecordTransformations", + "properties": { + "fieldTransformations": { + "description": "Transform the record by applying various field transformations.", + "items": { + "$ref": "GooglePrivacyDlpV2beta1FieldTransformation" + }, + "type": "array" + }, + "recordSuppressions": { + "description": "Configuration defining which records get suppressed entirely. Records that\nmatch any suppression rule are omitted from the output [optional].", + "items": { + "$ref": "GooglePrivacyDlpV2beta1RecordSuppression" + }, + "type": "array" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1RedactConfig": { + "description": "Redact a given value. For example, if used with an `InfoTypeTransformation`\ntransforming PHONE_NUMBER, and input 'My phone number is 206-555-0123', the\noutput would be 'My phone number is '.", + "id": "GooglePrivacyDlpV2beta1RedactConfig", + "properties": {}, + "type": "object" + }, + "GooglePrivacyDlpV2beta1RedactContentRequest": { + "description": "Request to search for potentially sensitive info in a list of items\nand replace it with a default or provided content.", + "id": "GooglePrivacyDlpV2beta1RedactContentRequest", + "properties": { + "imageRedactionConfigs": { + "description": "The configuration for specifying what content to redact from images.", + "items": { + "$ref": "GooglePrivacyDlpV2beta1ImageRedactionConfig" + }, + "type": "array" + }, + "inspectConfig": { + "$ref": "GooglePrivacyDlpV2beta1InspectConfig", + "description": "Configuration for the inspector." + }, + "items": { + "description": "The list of items to inspect. Up to 100 are allowed per request.", + "items": { + "$ref": "GooglePrivacyDlpV2beta1ContentItem" + }, + "type": "array" + }, + "replaceConfigs": { + "description": "The strings to replace findings text findings with. Must specify at least\none of these or one ImageRedactionConfig if redacting images.", + "items": { + "$ref": "GooglePrivacyDlpV2beta1ReplaceConfig" + }, + "type": "array" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1RedactContentResponse": { + "description": "Results of redacting a list of items.", + "id": "GooglePrivacyDlpV2beta1RedactContentResponse", + "properties": { + "items": { + "description": "The redacted content.", + "items": { + "$ref": "GooglePrivacyDlpV2beta1ContentItem" + }, + "type": "array" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1ReplaceConfig": { + "id": "GooglePrivacyDlpV2beta1ReplaceConfig", + "properties": { + "infoType": { + "$ref": "GooglePrivacyDlpV2beta1InfoType", + "description": "Type of information to replace. Only one ReplaceConfig per info_type\nshould be provided. If ReplaceConfig does not have an info_type, the DLP\nAPI matches it against all info_types that are found but not specified in\nanother ReplaceConfig." + }, + "replaceWith": { + "description": "Content replacing sensitive information of given type. Max 256 chars.", + "type": "string" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1ReplaceValueConfig": { + "description": "Replace each input value with a given `Value`.", + "id": "GooglePrivacyDlpV2beta1ReplaceValueConfig", + "properties": { + "newValue": { + "$ref": "GooglePrivacyDlpV2beta1Value", + "description": "Value to replace it with." + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1ReplaceWithInfoTypeConfig": { + "description": "Replace each matching finding with the name of the info_type.", + "id": "GooglePrivacyDlpV2beta1ReplaceWithInfoTypeConfig", + "properties": {}, + "type": "object" + }, + "GooglePrivacyDlpV2beta1RiskAnalysisOperationMetadata": { + "description": "Metadata returned within the\n[`riskAnalysis.operations.get`](/dlp/docs/reference/rest/v2beta1/riskAnalysis.operations/get)\nfor risk analysis.", + "id": "GooglePrivacyDlpV2beta1RiskAnalysisOperationMetadata", + "properties": { + "createTime": { + "description": "The time which this request was started.", + "format": "google-datetime", + "type": "string" + }, + "requestedPrivacyMetric": { + "$ref": "GooglePrivacyDlpV2beta1PrivacyMetric", + "description": "Privacy metric to compute." + }, + "requestedSourceTable": { + "$ref": "GooglePrivacyDlpV2beta1BigQueryTable", + "description": "Input dataset to compute metrics over." + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1RiskAnalysisOperationResult": { + "description": "Result of a risk analysis\n[`Operation`](/dlp/docs/reference/rest/v2beta1/inspect.operations)\nrequest.", + "id": "GooglePrivacyDlpV2beta1RiskAnalysisOperationResult", + "properties": { + "categoricalStatsResult": { + "$ref": "GooglePrivacyDlpV2beta1CategoricalStatsResult" + }, + "kAnonymityResult": { + "$ref": "GooglePrivacyDlpV2beta1KAnonymityResult" + }, + "kMapEstimationResult": { + "$ref": "GooglePrivacyDlpV2beta1KMapEstimationResult" + }, + "lDiversityResult": { + "$ref": "GooglePrivacyDlpV2beta1LDiversityResult" + }, + "numericalStatsResult": { + "$ref": "GooglePrivacyDlpV2beta1NumericalStatsResult" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1Row": { + "id": "GooglePrivacyDlpV2beta1Row", + "properties": { + "values": { + "items": { + "$ref": "GooglePrivacyDlpV2beta1Value" + }, + "type": "array" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1StorageConfig": { + "description": "Shared message indicating Cloud storage type.", + "id": "GooglePrivacyDlpV2beta1StorageConfig", + "properties": { + "bigQueryOptions": { + "$ref": "GooglePrivacyDlpV2beta1BigQueryOptions", + "description": "BigQuery options specification." + }, + "cloudStorageOptions": { + "$ref": "GooglePrivacyDlpV2beta1CloudStorageOptions", + "description": "Google Cloud Storage options specification." + }, + "datastoreOptions": { + "$ref": "GooglePrivacyDlpV2beta1DatastoreOptions", + "description": "Google Cloud Datastore options specification." + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1SummaryResult": { + "description": "A collection that informs the user the number of times a particular\n`TransformationResultCode` and error details occurred.", + "id": "GooglePrivacyDlpV2beta1SummaryResult", + "properties": { + "code": { + "enum": [ + "TRANSFORMATION_RESULT_CODE_UNSPECIFIED", + "SUCCESS", + "ERROR" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, + "count": { + "format": "int64", + "type": "string" + }, + "details": { + "description": "A place for warnings or errors to show up if a transformation didn't\nwork as expected.", + "type": "string" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1SurrogateType": { + "description": "Message for detecting output from deidentification transformations\nsuch as\n[`CryptoReplaceFfxFpeConfig`](/dlp/docs/reference/rest/v2beta1/content/deidentify#CryptoReplaceFfxFpeConfig).\nThese types of transformations are\nthose that perform pseudonymization, thereby producing a \"surrogate\" as\noutput. This should be used in conjunction with a field on the\ntransformation such as `surrogate_info_type`. This custom info type does\nnot support the use of `detection_rules`.", + "id": "GooglePrivacyDlpV2beta1SurrogateType", + "properties": {}, + "type": "object" + }, + "GooglePrivacyDlpV2beta1Table": { + "description": "Structured content to inspect. Up to 50,000 `Value`s per request allowed.", + "id": "GooglePrivacyDlpV2beta1Table", + "properties": { + "headers": { + "items": { + "$ref": "GooglePrivacyDlpV2beta1FieldId" + }, + "type": "array" + }, + "rows": { + "items": { + "$ref": "GooglePrivacyDlpV2beta1Row" + }, + "type": "array" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1TableLocation": { + "description": "Location of a finding within a table.", + "id": "GooglePrivacyDlpV2beta1TableLocation", + "properties": { + "rowIndex": { + "description": "The zero-based index of the row where the finding is located.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1TaggedField": { + "description": "A column with a semantic tag attached.", + "id": "GooglePrivacyDlpV2beta1TaggedField", + "properties": { + "customTag": { + "description": "A column can be tagged with a custom tag. In this case, the user must\nindicate an auxiliary table that contains statistical information on\nthe possible values of this column (below).", + "type": "string" + }, + "field": { + "$ref": "GooglePrivacyDlpV2beta1FieldId", + "description": "Identifies the column. [required]" + }, + "inferred": { + "$ref": "GoogleProtobufEmpty", + "description": "If no semantic tag is indicated, we infer the statistical model from\nthe distribution of values in the input data" + }, + "infoType": { + "$ref": "GooglePrivacyDlpV2beta1InfoType", + "description": "A column can be tagged with a InfoType to use the relevant public\ndataset as a statistical model of population, if available. We\ncurrently support US ZIP codes, region codes, ages and genders." + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1TimePartConfig": { + "description": "For use with `Date`, `Timestamp`, and `TimeOfDay`, extract or preserve a\nportion of the value.", + "id": "GooglePrivacyDlpV2beta1TimePartConfig", + "properties": { + "partToExtract": { + "enum": [ + "TIME_PART_UNSPECIFIED", + "YEAR", + "MONTH", + "DAY_OF_MONTH", + "DAY_OF_WEEK", + "WEEK_OF_YEAR", + "HOUR_OF_DAY" + ], + "enumDescriptions": [ + "", + "[000-9999]", + "[1-12]", + "[1-31]", + "[1-7]", + "[1-52]", + "[0-24]" + ], + "type": "string" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1TransformationSummary": { + "description": "Summary of a single tranformation.\nOnly one of 'transformation', 'field_transformation', or 'record_suppress'\nwill be set.", + "id": "GooglePrivacyDlpV2beta1TransformationSummary", + "properties": { + "field": { + "$ref": "GooglePrivacyDlpV2beta1FieldId", + "description": "Set if the transformation was limited to a specific FieldId." + }, + "fieldTransformations": { + "description": "The field transformation that was applied.\nIf multiple field transformations are requested for a single field,\nthis list will contain all of them; otherwise, only one is supplied.", + "items": { + "$ref": "GooglePrivacyDlpV2beta1FieldTransformation" + }, + "type": "array" + }, + "infoType": { + "$ref": "GooglePrivacyDlpV2beta1InfoType", + "description": "Set if the transformation was limited to a specific info_type." + }, + "recordSuppress": { + "$ref": "GooglePrivacyDlpV2beta1RecordSuppression", + "description": "The specific suppression option these stats apply to." + }, + "results": { + "items": { + "$ref": "GooglePrivacyDlpV2beta1SummaryResult" + }, + "type": "array" + }, + "transformation": { + "$ref": "GooglePrivacyDlpV2beta1PrimitiveTransformation", + "description": "The specific transformation these stats apply to." + }, + "transformedBytes": { + "description": "Total size in bytes that were transformed in some way.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1TransientCryptoKey": { + "description": "Use this to have a random data crypto key generated.\nIt will be discarded after the operation/request finishes.", + "id": "GooglePrivacyDlpV2beta1TransientCryptoKey", + "properties": { + "name": { + "description": "Name of the key. [required]\nThis is an arbitrary string used to differentiate different keys.\nA unique key is generated per name: two separate `TransientCryptoKey`\nprotos share the same generated key if their names are the same.\nWhen the data crypto key is generated, this name is not used in any way\n(repeating the api call will result in a different key being generated).", + "type": "string" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1UnwrappedCryptoKey": { + "description": "Using raw keys is prone to security risks due to accidentally\nleaking the key. Choose another type of key if possible.", + "id": "GooglePrivacyDlpV2beta1UnwrappedCryptoKey", + "properties": { + "key": { + "description": "The AES 128/192/256 bit key. [required]", + "format": "byte", + "type": "string" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1Value": { + "description": "Set of primitive values supported by the system.\nNote that for the purposes of inspection or transformation, the number\nof bytes considered to comprise a 'Value' is based on its representation\nas a UTF-8 encoded string. For example, if 'integer_value' is set to\n123456789, the number of bytes would be counted as 9, even though an\nint64 only holds up to 8 bytes of data.", + "id": "GooglePrivacyDlpV2beta1Value", + "properties": { + "booleanValue": { + "type": "boolean" + }, + "dateValue": { + "$ref": "GoogleTypeDate" + }, + "floatValue": { + "format": "double", + "type": "number" + }, + "integerValue": { + "format": "int64", + "type": "string" + }, + "stringValue": { + "type": "string" + }, + "timeValue": { + "$ref": "GoogleTypeTimeOfDay" + }, + "timestampValue": { + "format": "google-datetime", + "type": "string" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1ValueFrequency": { + "description": "A value of a field, including its frequency.", + "id": "GooglePrivacyDlpV2beta1ValueFrequency", + "properties": { + "count": { + "description": "How many times the value is contained in the field.", + "format": "int64", + "type": "string" + }, + "value": { + "$ref": "GooglePrivacyDlpV2beta1Value", + "description": "A value contained in the field in question." + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1WordList": { + "description": "Message defining a list of words or phrases to search for in the data.", + "id": "GooglePrivacyDlpV2beta1WordList", + "properties": { + "words": { + "description": "Words or phrases defining the dictionary. The dictionary must contain\nat least one phrase and every phrase must contain at least 2 characters\nthat are letters or digits. [required]", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "GoogleProtobufEmpty": { + "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": "GoogleProtobufEmpty", + "properties": {}, + "type": "object" + }, + "GoogleRpcStatus": { + "description": "The `Status` type defines a logical error model that is suitable for different\nprogramming environments, including REST APIs and RPC APIs. It is used by\n[gRPC](https://github.com/grpc). The error model is designed to be:\n\n- Simple to use and understand for most users\n- Flexible enough to meet unexpected needs\n\n# Overview\n\nThe `Status` message contains three pieces of data: error code, error message,\nand error details. The error code should be an enum value of\ngoogle.rpc.Code, but it may accept additional error codes if needed. The\nerror message should be a developer-facing English message that helps\ndevelopers *understand* and *resolve* the error. If a localized user-facing\nerror message is needed, put the localized message in the error details or\nlocalize it in the client. The optional error details may contain arbitrary\ninformation about the error. There is a predefined set of error detail types\nin the package `google.rpc` that can be used for common error conditions.\n\n# Language mapping\n\nThe `Status` message is the logical representation of the error model, but it\nis not necessarily the actual wire format. When the `Status` message is\nexposed in different client libraries and different wire protocols, it can be\nmapped differently. For example, it will likely be mapped to some exceptions\nin Java, but more likely mapped to some error codes in C.\n\n# Other uses\n\nThe error model and the `Status` message can be used in a variety of\nenvironments, either with or without APIs, to provide a\nconsistent developer experience across different environments.\n\nExample uses of this error model include:\n\n- Partial errors. If a service needs to return partial errors to the client,\n it may embed the `Status` in the normal response to indicate the partial\n errors.\n\n- Workflow errors. A typical workflow has multiple steps. Each step may\n have a `Status` message for error reporting.\n\n- Batch operations. If a client uses batch request and batch response, the\n `Status` message should be used directly inside batch response, one for\n each error sub-response.\n\n- Asynchronous operations. If an API call embeds asynchronous operation\n results in its response, the status of those operations should be\n represented directly using the `Status` message.\n\n- Logging. If some API errors are stored in logs, the message `Status` could\n be used directly after any stripping needed for security/privacy reasons.", + "id": "GoogleRpcStatus", + "properties": { + "code": { + "description": "The status code, which should be an enum value of google.rpc.Code.", + "format": "int32", + "type": "integer" + }, + "details": { + "description": "A list of messages that carry the error details. There is a common set of\nmessage types for APIs to use.", + "items": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "A developer-facing error message, which should be in English. Any\nuser-facing error message should be localized and sent in the\ngoogle.rpc.Status.details field, or localized by the client.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleTypeDate": { + "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": "GoogleTypeDate", + "properties": { + "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" + }, + "month": { + "description": "Month of year. Must be from 1 to 12.", + "format": "int32", + "type": "integer" + }, + "year": { + "description": "Year of date. Must be from 1 to 9999, or 0 if specifying a date without\na year.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" }, "GoogleTypeTimeOfDay": { "description": "Represents a time of day. The date and time zone are either not significant\nor are specified elsewhere. An API may choose to allow leap seconds. Related\ntypes are google.type.Date and `google.protobuf.Timestamp`.", - "type": "object", + "id": "GoogleTypeTimeOfDay", "properties": { "hours": { "description": "Hours of day in 24 hour format. Should be from 0 to 23. An API may choose\nto allow the value \"24:00:00\" for scenarios like business closing time.", "format": "int32", "type": "integer" }, + "minutes": { + "description": "Minutes of hour of day. Must be from 0 to 59.", + "format": "int32", + "type": "integer" + }, "nanos": { "description": "Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999.", "format": "int32", @@ -2462,353 +2821,13 @@ "description": "Seconds of minutes of the time. Must normally be from 0 to 59. An API may\nallow the value 60 if it allows leap-seconds.", "format": "int32", "type": "integer" - }, - "minutes": { - "description": "Minutes of hour of day. Must be from 0 to 59.", - "format": "int32", - "type": "integer" } }, - "id": "GoogleTypeTimeOfDay" - }, - "GooglePrivacyDlpV2beta1DeidentifyConfig": { - "description": "The configuration that controls how the data will change.", - "type": "object", - "properties": { - "recordTransformations": { - "$ref": "GooglePrivacyDlpV2beta1RecordTransformations", - "description": "Treat the dataset as structured. Transformations can be applied to\nspecific locations within structured datasets, such as transforming\na column within a table." - }, - "infoTypeTransformations": { - "description": "Treat the dataset as free-form text and apply the same free text\ntransformation everywhere.", - "$ref": "GooglePrivacyDlpV2beta1InfoTypeTransformations" - } - }, - "id": "GooglePrivacyDlpV2beta1DeidentifyConfig" - }, - "GooglePrivacyDlpV2beta1LDiversityConfig": { - "description": "l-diversity metric, used for analysis of reidentification risk.", - "type": "object", - "properties": { - "sensitiveAttribute": { - "description": "Sensitive field for computing the l-value.", - "$ref": "GooglePrivacyDlpV2beta1FieldId" - }, - "quasiIds": { - "description": "Set of quasi-identifiers indicating how equivalence classes are\ndefined for the l-diversity computation. When multiple fields are\nspecified, they are considered a single composite key.", - "type": "array", - "items": { - "$ref": "GooglePrivacyDlpV2beta1FieldId" - } - } - }, - "id": "GooglePrivacyDlpV2beta1LDiversityConfig" - }, - "GooglePrivacyDlpV2beta1StorageConfig": { - "description": "Shared message indicating Cloud storage type.", - "type": "object", - "properties": { - "cloudStorageOptions": { - "$ref": "GooglePrivacyDlpV2beta1CloudStorageOptions", - "description": "Google Cloud Storage options specification." - }, - "datastoreOptions": { - "$ref": "GooglePrivacyDlpV2beta1DatastoreOptions", - "description": "Google Cloud Datastore options specification." - }, - "bigQueryOptions": { - "description": "BigQuery options specification.", - "$ref": "GooglePrivacyDlpV2beta1BigQueryOptions" - } - }, - "id": "GooglePrivacyDlpV2beta1StorageConfig" - }, - "GooglePrivacyDlpV2beta1OperationConfig": { - "description": "Additional configuration for inspect long running operations.", - "type": "object", - "properties": { - "maxItemFindings": { - "description": "Max number of findings per file, Datastore entity, or database row.", - "format": "int64", - "type": "string" - } - }, - "id": "GooglePrivacyDlpV2beta1OperationConfig" - }, - "GooglePrivacyDlpV2beta1BigQueryOptions": { - "description": "Options defining BigQuery table and row identifiers.", - "type": "object", - "properties": { - "tableReference": { - "description": "Complete BigQuery table reference.", - "$ref": "GooglePrivacyDlpV2beta1BigQueryTable" - }, - "identifyingFields": { - "description": "References to fields uniquely identifying rows within the table.\nNested fields in the format, like `person.birthdate.year`, are allowed.", - "type": "array", - "items": { - "$ref": "GooglePrivacyDlpV2beta1FieldId" - } - } - }, - "id": "GooglePrivacyDlpV2beta1BigQueryOptions" - }, - "GooglePrivacyDlpV2beta1PrivacyMetric": { - "description": "Privacy metric to compute for reidentification risk analysis.", - "type": "object", - "properties": { - "numericalStatsConfig": { - "$ref": "GooglePrivacyDlpV2beta1NumericalStatsConfig" - }, - "kAnonymityConfig": { - "$ref": "GooglePrivacyDlpV2beta1KAnonymityConfig" - }, - "categoricalStatsConfig": { - "$ref": "GooglePrivacyDlpV2beta1CategoricalStatsConfig" - }, - "kMapEstimationConfig": { - "$ref": "GooglePrivacyDlpV2beta1KMapEstimationConfig" - }, - "lDiversityConfig": { - "$ref": "GooglePrivacyDlpV2beta1LDiversityConfig" - } - }, - "id": "GooglePrivacyDlpV2beta1PrivacyMetric" - }, - "GooglePrivacyDlpV2beta1ReplaceConfig": { - "type": "object", - "properties": { - "infoType": { - "$ref": "GooglePrivacyDlpV2beta1InfoType", - "description": "Type of information to replace. Only one ReplaceConfig per info_type\nshould be provided. If ReplaceConfig does not have an info_type, the DLP\nAPI matches it against all info_types that are found but not specified in\nanother ReplaceConfig." - }, - "replaceWith": { - "description": "Content replacing sensitive information of given type. Max 256 chars.", - "type": "string" - } - }, - "id": "GooglePrivacyDlpV2beta1ReplaceConfig" - }, - "GooglePrivacyDlpV2beta1NumericalStatsConfig": { - "description": "Compute numerical stats over an individual column, including\nmin, max, and quantiles.", - "type": "object", - "properties": { - "field": { - "$ref": "GooglePrivacyDlpV2beta1FieldId", - "description": "Field to compute numerical stats on. Supported types are\ninteger, float, date, datetime, timestamp, time." - } - }, - "id": "GooglePrivacyDlpV2beta1NumericalStatsConfig" - }, - "GooglePrivacyDlpV2beta1LDiversityEquivalenceClass": { - "description": "The set of columns' values that share the same l-diversity value.", - "type": "object", - "properties": { - "equivalenceClassSize": { - "description": "Size of the k-anonymity equivalence class.", - "format": "int64", - "type": "string" - }, - "quasiIdsValues": { - "description": "Quasi-identifier values defining the k-anonymity equivalence\nclass. The order is always the same as the original request.", - "type": "array", - "items": { - "$ref": "GooglePrivacyDlpV2beta1Value" - } - }, - "numDistinctSensitiveValues": { - "description": "Number of distinct sensitive values in this equivalence class.", - "format": "int64", - "type": "string" - }, - "topSensitiveValues": { - "description": "Estimated frequencies of top sensitive values.", - "type": "array", - "items": { - "$ref": "GooglePrivacyDlpV2beta1ValueFrequency" - } - } - }, - "id": "GooglePrivacyDlpV2beta1LDiversityEquivalenceClass" - }, - "GooglePrivacyDlpV2beta1DeidentificationSummary": { - "description": "High level summary of deidentification.", - "type": "object", - "properties": { - "transformedBytes": { - "description": "Total size in bytes that were transformed in some way.", - "format": "int64", - "type": "string" - }, - "transformationSummaries": { - "description": "Transformations applied to the dataset.", - "type": "array", - "items": { - "$ref": "GooglePrivacyDlpV2beta1TransformationSummary" - } - } - }, - "id": "GooglePrivacyDlpV2beta1DeidentificationSummary" - }, - "GooglePrivacyDlpV2beta1RecordCondition": { - "description": "A condition for determining whether a transformation should be applied to\na field.", - "type": "object", - "properties": { - "expressions": { - "$ref": "GooglePrivacyDlpV2beta1Expressions" - } - }, - "id": "GooglePrivacyDlpV2beta1RecordCondition" - }, - "GooglePrivacyDlpV2beta1TimePartConfig": { - "description": "For use with `Date`, `Timestamp`, and `TimeOfDay`, extract or preserve a\nportion of the value.", - "type": "object", - "properties": { - "partToExtract": { - "type": "string", - "enumDescriptions": [ - "", - "[000-9999]", - "[1-12]", - "[1-31]", - "[1-7]", - "[1-52]", - "[0-24]" - ], - "enum": [ - "TIME_PART_UNSPECIFIED", - "YEAR", - "MONTH", - "DAY_OF_MONTH", - "DAY_OF_WEEK", - "WEEK_OF_YEAR", - "HOUR_OF_DAY" - ] - } - }, - "id": "GooglePrivacyDlpV2beta1TimePartConfig" - }, - "GooglePrivacyDlpV2beta1ListInfoTypesResponse": { - "description": "Response to the ListInfoTypes request.", - "type": "object", - "properties": { - "infoTypes": { - "description": "Set of sensitive info types belonging to a category.", - "type": "array", - "items": { - "$ref": "GooglePrivacyDlpV2beta1InfoTypeDescription" - } - } - }, - "id": "GooglePrivacyDlpV2beta1ListInfoTypesResponse" - }, - "GooglePrivacyDlpV2beta1CloudStorageKey": { - "description": "Record key for a finding in a Cloud Storage file.", - "type": "object", - "properties": { - "startOffset": { - "description": "Byte offset of the referenced data in the file.", - "format": "int64", - "type": "string" - }, - "filePath": { - "description": "Path to the file.", - "type": "string" - } - }, - "id": "GooglePrivacyDlpV2beta1CloudStorageKey" - }, - "GooglePrivacyDlpV2beta1NumericalStatsResult": { - "description": "Result of the numerical stats computation.", - "type": "object", - "properties": { - "minValue": { - "$ref": "GooglePrivacyDlpV2beta1Value", - "description": "Minimum value appearing in the column." - }, - "maxValue": { - "$ref": "GooglePrivacyDlpV2beta1Value", - "description": "Maximum value appearing in the column." - }, - "quantileValues": { - "description": "List of 99 values that partition the set of field values into 100 equal\nsized buckets.", - "type": "array", - "items": { - "$ref": "GooglePrivacyDlpV2beta1Value" - } - } - }, - "id": "GooglePrivacyDlpV2beta1NumericalStatsResult" - }, - "GooglePrivacyDlpV2beta1Dictionary": { - "description": "Custom information type based on a dictionary of words or phrases. This can\nbe used to match sensitive information specific to the data, such as a list\nof employee IDs or job titles.\n\nDictionary words are case-insensitive and all characters other than letters\nand digits in the unicode [Basic Multilingual\nPlane](https://en.wikipedia.org/wiki/Plane_%28Unicode%29#Basic_Multilingual_Plane)\nwill be replaced with whitespace when scanning for matches, so the\ndictionary phrase \"Sam Johnson\" will match all three phrases \"sam johnson\",\n\"Sam, Johnson\", and \"Sam (Johnson)\". Additionally, the characters\nsurrounding any match must be of a different type than the adjacent\ncharacters within the word, so letters must be next to non-letters and\ndigits next to non-digits. For example, the dictionary word \"jen\" will\nmatch the first three letters of the text \"jen123\" but will return no\nmatches for \"jennifer\".\n\nDictionary words containing a large number of characters that are not\nletters or digits may result in unexpected findings because such characters\nare treated as whitespace.", - "type": "object", - "properties": { - "wordList": { - "$ref": "GooglePrivacyDlpV2beta1WordList", - "description": "List of words or phrases to search for." - } - }, - "id": "GooglePrivacyDlpV2beta1Dictionary" - }, - "GooglePrivacyDlpV2beta1DatastoreOptions": { - "description": "Options defining a data set within Google Cloud Datastore.", - "type": "object", - "properties": { - "kind": { - "description": "The kind to process.", - "$ref": "GooglePrivacyDlpV2beta1KindExpression" - }, - "projection": { - "description": "Properties to scan. If none are specified, all properties will be scanned\nby default.", - "type": "array", - "items": { - "$ref": "GooglePrivacyDlpV2beta1Projection" - } - }, - "partitionId": { - "$ref": "GooglePrivacyDlpV2beta1PartitionId", - "description": "A partition ID identifies a grouping of entities. The grouping is always\nby project and namespace, however the namespace ID may be empty." - } - }, - "id": "GooglePrivacyDlpV2beta1DatastoreOptions" - }, - "GooglePrivacyDlpV2beta1RecordTransformations": { - "description": "A type of transformation that is applied over structured data such as a\ntable.", - "type": "object", - "properties": { - "fieldTransformations": { - "description": "Transform the record by applying various field transformations.", - "type": "array", - "items": { - "$ref": "GooglePrivacyDlpV2beta1FieldTransformation" - } - }, - "recordSuppressions": { - "description": "Configuration defining which records get suppressed entirely. Records that\nmatch any suppression rule are omitted from the output [optional].", - "type": "array", - "items": { - "$ref": "GooglePrivacyDlpV2beta1RecordSuppression" - } - } - }, - "id": "GooglePrivacyDlpV2beta1RecordTransformations" + "type": "object" } }, - "protocol": "rest", - "icons": { - "x16": "http://www.google.com/images/icons/product/search-16.gif", - "x32": "http://www.google.com/images/icons/product/search-32.gif" - }, - "canonicalName": "DLP", - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/cloud-platform": { - "description": "View and manage your data across Google Cloud Platform services" - } - } - } - }, - "rootUrl": "https://dlp.googleapis.com/" -} + "servicePath": "", + "title": "Cloud Data Loss Prevention (DLP) API", + "version": "v2beta1", + "version_module": true +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/dlp/v2beta1/dlp-gen.go b/vendor/google.golang.org/api/dlp/v2beta1/dlp-gen.go index 27f40d964..24b05265c 100644 --- a/vendor/google.golang.org/api/dlp/v2beta1/dlp-gen.go +++ b/vendor/google.golang.org/api/dlp/v2beta1/dlp-gen.go @@ -1,4 +1,4 @@ -// Package dlp provides access to the DLP API. +// Package dlp provides access to the Cloud Data Loss Prevention (DLP) API. // // See https://cloud.google.com/dlp/docs/ // @@ -372,6 +372,40 @@ func (s *GooglePrivacyDlpV2beta1AuxiliaryTable) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// GooglePrivacyDlpV2beta1BigQueryKey: LINT.IfChange +// Row key for identifying a record in BigQuery table. +type GooglePrivacyDlpV2beta1BigQueryKey struct { + // RowNumber: Absolute number of the row from the beginning of the table + // at the time + // of scanning. + RowNumber int64 `json:"rowNumber,omitempty,string"` + + // TableReference: Complete BigQuery table reference. + TableReference *GooglePrivacyDlpV2beta1BigQueryTable `json:"tableReference,omitempty"` + + // ForceSendFields is a list of field names (e.g. "RowNumber") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "RowNumber") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2beta1BigQueryKey) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2beta1BigQueryKey + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // GooglePrivacyDlpV2beta1BigQueryOptions: Options defining BigQuery // table and row identifiers. type GooglePrivacyDlpV2beta1BigQueryOptions struct { @@ -1845,7 +1879,10 @@ type GooglePrivacyDlpV2beta1Finding struct { // Quote: The content that was found. Even if the content is not // textual, it // may be converted to a textual representation here. - // Provided if requested by the `InspectConfig`. + // Provided if requested by the `InspectConfig` and the finding is + // less than or equal to 4096 bytes long. If the finding exceeds 4096 + // bytes + // in length, the quote may be omitted. Quote string `json:"quote,omitempty"` // ForceSendFields is a list of field names (e.g. "CreateTime") to @@ -3795,11 +3832,13 @@ func (s *GooglePrivacyDlpV2beta1RecordCondition) MarshalJSON() ([]byte, error) { // GooglePrivacyDlpV2beta1RecordKey: Message for a unique key indicating // a record that contains a finding. type GooglePrivacyDlpV2beta1RecordKey struct { + BigQueryKey *GooglePrivacyDlpV2beta1BigQueryKey `json:"bigQueryKey,omitempty"` + CloudStorageKey *GooglePrivacyDlpV2beta1CloudStorageKey `json:"cloudStorageKey,omitempty"` DatastoreKey *GooglePrivacyDlpV2beta1DatastoreKey `json:"datastoreKey,omitempty"` - // ForceSendFields is a list of field names (e.g. "CloudStorageKey") to + // ForceSendFields is a list of field names (e.g. "BigQueryKey") to // unconditionally include in API requests. By default, fields with // empty values are omitted from API requests. However, any non-pointer, // non-interface field appearing in ForceSendFields will be sent to the @@ -3807,13 +3846,12 @@ type GooglePrivacyDlpV2beta1RecordKey struct { // used to include empty fields in Patch requests. ForceSendFields []string `json:"-"` - // NullFields is a list of field names (e.g. "CloudStorageKey") to - // include in API requests with the JSON null value. By default, fields - // with empty values are omitted from API requests. However, any field - // with an empty value appearing in NullFields will be sent to the - // server as null. It is an error if a field in this list has a - // non-empty value. This may be used to include null fields in Patch - // requests. + // NullFields is a list of field names (e.g. "BigQueryKey") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. NullFields []string `json:"-"` } diff --git a/vendor/google.golang.org/api/dlp/v2beta2/dlp-api.json b/vendor/google.golang.org/api/dlp/v2beta2/dlp-api.json index 2a7b73426..c64bae936 100644 --- a/vendor/google.golang.org/api/dlp/v2beta2/dlp-api.json +++ b/vendor/google.golang.org/api/dlp/v2beta2/dlp-api.json @@ -1,277 +1,1605 @@ { - "schemas": { - "GooglePrivacyDlpV2beta1BigQueryOptions": { - "description": "Options defining BigQuery table and row identifiers.", - "type": "object", - "properties": { - "tableReference": { - "$ref": "GooglePrivacyDlpV2beta1BigQueryTable", - "description": "Complete BigQuery table reference." - }, - "identifyingFields": { - "description": "References to fields uniquely identifying rows within the table.\nNested fields in the format, like `person.birthdate.year`, are allowed.", - "type": "array", - "items": { - "$ref": "GooglePrivacyDlpV2beta1FieldId" - } + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/cloud-platform": { + "description": "View and manage your data across Google Cloud Platform services" } - }, - "id": "GooglePrivacyDlpV2beta1BigQueryOptions" + } + } + }, + "basePath": "", + "baseUrl": "https://dlp.googleapis.com/", + "batchPath": "batch", + "canonicalName": "DLP", + "description": "Provides methods for detection, risk analysis, and de-identification of privacy-sensitive fragments in text, images, and Google Cloud Platform storage repositories.", + "discoveryVersion": "v1", + "documentationLink": "https://cloud.google.com/dlp/docs/", + "fullyEncodeReservedExpansion": true, + "icons": { + "x16": "http://www.google.com/images/icons/product/search-16.gif", + "x32": "http://www.google.com/images/icons/product/search-32.gif" + }, + "id": "dlp:v2beta2", + "kind": "discovery#restDescription", + "name": "dlp", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "$.xgafv": { + "description": "V1 error format.", + "enum": [ + "1", + "2" + ], + "enumDescriptions": [ + "v1 error format", + "v2 error format" + ], + "location": "query", + "type": "string" }, - "GooglePrivacyDlpV2beta1PrivacyMetric": { - "description": "Privacy metric to compute for reidentification risk analysis.", - "type": "object", - "properties": { - "categoricalStatsConfig": { - "$ref": "GooglePrivacyDlpV2beta1CategoricalStatsConfig" - }, - "kMapEstimationConfig": { - "$ref": "GooglePrivacyDlpV2beta1KMapEstimationConfig" - }, - "lDiversityConfig": { - "$ref": "GooglePrivacyDlpV2beta1LDiversityConfig" - }, - "numericalStatsConfig": { - "$ref": "GooglePrivacyDlpV2beta1NumericalStatsConfig" - }, - "kAnonymityConfig": { - "$ref": "GooglePrivacyDlpV2beta1KAnonymityConfig" - } - }, - "id": "GooglePrivacyDlpV2beta1PrivacyMetric" + "access_token": { + "description": "OAuth access token.", + "location": "query", + "type": "string" }, - "GooglePrivacyDlpV2beta2Location": { - "id": "GooglePrivacyDlpV2beta2Location", - "description": "Specifies the location of the finding.", - "type": "object", - "properties": { - "tableLocation": { - "description": "The pointer to the row of the table that contained the finding.\nProvided when the finding's containing element is a cell of a table.", - "$ref": "GooglePrivacyDlpV2beta2TableLocation" - }, - "codepointRange": { - "description": "Unicode character offsets delimiting the finding.\nThese are relative to the finding's containing element.\nProvided when the content is text.", - "$ref": "GooglePrivacyDlpV2beta2Range" - }, - "fieldId": { - "$ref": "GooglePrivacyDlpV2beta2FieldId", - "description": "The pointer to the property or cell that contained the finding.\nProvided when the finding's containing element is a cell in a table\nor a property of storage object." - }, - "imageBoxes": { - "description": "The area within the image that contained the finding.\nProvided when the content is an image.", - "type": "array", - "items": { - "$ref": "GooglePrivacyDlpV2beta2ImageLocation" - } - }, - "byteRange": { - "$ref": "GooglePrivacyDlpV2beta2Range", - "description": "Zero-based byte offsets delimiting the finding.\nThese are relative to the finding's containing element.\nNote that when the content is not textual, this references\nthe UTF-8 encoded textual representation of the content.\nOmitted if content is an image." - }, - "recordKey": { - "$ref": "GooglePrivacyDlpV2beta2RecordKey", - "description": "The pointer to the record in storage that contained the field the\nfinding was found in.\nProvided when the finding's containing element is a property\nof a storage object." + "alt": { + "default": "json", + "description": "Data format for response.", + "enum": [ + "json", + "media", + "proto" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json", + "Media download with context-dependent Content-Type", + "Responses with Content-Type of application/x-protobuf" + ], + "location": "query", + "type": "string" + }, + "bearer_token": { + "description": "OAuth bearer token.", + "location": "query", + "type": "string" + }, + "callback": { + "description": "JSONP", + "location": "query", + "type": "string" + }, + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "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.", + "location": "query", + "type": "string" + }, + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "pp": { + "default": "true", + "description": "Pretty-print response.", + "location": "query", + "type": "boolean" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", + "location": "query", + "type": "string" + }, + "uploadType": { + "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", + "location": "query", + "type": "string" + }, + "upload_protocol": { + "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", + "location": "query", + "type": "string" + } + }, + "protocol": "rest", + "resources": { + "infoTypes": { + "methods": { + "list": { + "description": "Returns sensitive information types DLP supports.", + "flatPath": "v2beta2/infoTypes", + "httpMethod": "GET", + "id": "dlp.infoTypes.list", + "parameterOrder": [], + "parameters": { + "filter": { + "description": "Optional filter to only return infoTypes supported by certain parts of the\nAPI. Defaults to supported_by=INSPECT.", + "location": "query", + "type": "string" + }, + "languageCode": { + "description": "Optional BCP-47 language code for localized infoType friendly\nnames. If omitted, or if localized strings are not available,\nen-US strings will be returned.", + "location": "query", + "type": "string" + } + }, + "path": "v2beta2/infoTypes", + "response": { + "$ref": "GooglePrivacyDlpV2beta2ListInfoTypesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] } } }, - "GooglePrivacyDlpV2beta2ReidentifyContentResponse": { - "description": "Results of re-identifying a item.", - "type": "object", - "properties": { - "overview": { - "$ref": "GooglePrivacyDlpV2beta2TransformationOverview", - "description": "An overview of the changes that were made to the `item`." + "organizations": { + "resources": { + "deidentifyTemplates": { + "methods": { + "create": { + "description": "Creates an Deidentify template for re-using frequently used configuration\nfor Deidentifying content, images, and storage.", + "flatPath": "v2beta2/organizations/{organizationsId}/deidentifyTemplates", + "httpMethod": "POST", + "id": "dlp.organizations.deidentifyTemplates.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "The parent resource name, for example projects/my-project-id or\norganizations/my-org-id.", + "location": "path", + "pattern": "^organizations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2beta2/{+parent}/deidentifyTemplates", + "request": { + "$ref": "GooglePrivacyDlpV2beta2CreateDeidentifyTemplateRequest" + }, + "response": { + "$ref": "GooglePrivacyDlpV2beta2DeidentifyTemplate" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Deletes inspect templates.", + "flatPath": "v2beta2/organizations/{organizationsId}/deidentifyTemplates/{deidentifyTemplatesId}", + "httpMethod": "DELETE", + "id": "dlp.organizations.deidentifyTemplates.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Resource name of the organization and deidentify template to be deleted,\nfor example `organizations/433245324/deidentifyTemplates/432452342` or\nprojects/project-id/deidentifyTemplates/432452342.", + "location": "path", + "pattern": "^organizations/[^/]+/deidentifyTemplates/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2beta2/{+name}", + "response": { + "$ref": "GoogleProtobufEmpty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Gets an inspect template.", + "flatPath": "v2beta2/organizations/{organizationsId}/deidentifyTemplates/{deidentifyTemplatesId}", + "httpMethod": "GET", + "id": "dlp.organizations.deidentifyTemplates.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Resource name of the organization and deidentify template to be read, for\nexample `organizations/433245324/deidentifyTemplates/432452342` or\nprojects/project-id/deidentifyTemplates/432452342.", + "location": "path", + "pattern": "^organizations/[^/]+/deidentifyTemplates/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2beta2/{+name}", + "response": { + "$ref": "GooglePrivacyDlpV2beta2DeidentifyTemplate" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists inspect templates.", + "flatPath": "v2beta2/organizations/{organizationsId}/deidentifyTemplates", + "httpMethod": "GET", + "id": "dlp.organizations.deidentifyTemplates.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "pageSize": { + "description": "Optional size of the page, can be limited by server. If zero server returns\na page of max size 100.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional page token to continue retrieval. Comes from previous call\nto `ListDeidentifyTemplates`.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "The parent resource name, for example projects/my-project-id or\norganizations/my-org-id.", + "location": "path", + "pattern": "^organizations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2beta2/{+parent}/deidentifyTemplates", + "response": { + "$ref": "GooglePrivacyDlpV2beta2ListDeidentifyTemplatesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "patch": { + "description": "Updates the inspect template.", + "flatPath": "v2beta2/organizations/{organizationsId}/deidentifyTemplates/{deidentifyTemplatesId}", + "httpMethod": "PATCH", + "id": "dlp.organizations.deidentifyTemplates.patch", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Resource name of organization and deidentify template to be updated, for\nexample `organizations/433245324/deidentifyTemplates/432452342` or\nprojects/project-id/deidentifyTemplates/432452342.", + "location": "path", + "pattern": "^organizations/[^/]+/deidentifyTemplates/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2beta2/{+name}", + "request": { + "$ref": "GooglePrivacyDlpV2beta2UpdateDeidentifyTemplateRequest" + }, + "response": { + "$ref": "GooglePrivacyDlpV2beta2DeidentifyTemplate" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } }, - "item": { - "$ref": "GooglePrivacyDlpV2beta2ContentItem", - "description": "The re-identified item." + "inspectTemplates": { + "methods": { + "create": { + "description": "Creates an inspect template for re-using frequently used configuration\nfor inspecting content, images, and storage.", + "flatPath": "v2beta2/organizations/{organizationsId}/inspectTemplates", + "httpMethod": "POST", + "id": "dlp.organizations.inspectTemplates.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "The parent resource name, for example projects/my-project-id or\norganizations/my-org-id.", + "location": "path", + "pattern": "^organizations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2beta2/{+parent}/inspectTemplates", + "request": { + "$ref": "GooglePrivacyDlpV2beta2CreateInspectTemplateRequest" + }, + "response": { + "$ref": "GooglePrivacyDlpV2beta2InspectTemplate" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Deletes inspect templates.", + "flatPath": "v2beta2/organizations/{organizationsId}/inspectTemplates/{inspectTemplatesId}", + "httpMethod": "DELETE", + "id": "dlp.organizations.inspectTemplates.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Resource name of the organization and inspectTemplate to be deleted, for\nexample `organizations/433245324/inspectTemplates/432452342` or\nprojects/project-id/inspectTemplates/432452342.", + "location": "path", + "pattern": "^organizations/[^/]+/inspectTemplates/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2beta2/{+name}", + "response": { + "$ref": "GoogleProtobufEmpty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Gets an inspect template.", + "flatPath": "v2beta2/organizations/{organizationsId}/inspectTemplates/{inspectTemplatesId}", + "httpMethod": "GET", + "id": "dlp.organizations.inspectTemplates.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Resource name of the organization and inspectTemplate to be read, for\nexample `organizations/433245324/inspectTemplates/432452342` or\nprojects/project-id/inspectTemplates/432452342.", + "location": "path", + "pattern": "^organizations/[^/]+/inspectTemplates/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2beta2/{+name}", + "response": { + "$ref": "GooglePrivacyDlpV2beta2InspectTemplate" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists inspect templates.", + "flatPath": "v2beta2/organizations/{organizationsId}/inspectTemplates", + "httpMethod": "GET", + "id": "dlp.organizations.inspectTemplates.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "pageSize": { + "description": "Optional size of the page, can be limited by server. If zero server returns\na page of max size 100.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional page token to continue retrieval. Comes from previous call\nto `ListInspectTemplates`.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "The parent resource name, for example projects/my-project-id or\norganizations/my-org-id.", + "location": "path", + "pattern": "^organizations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2beta2/{+parent}/inspectTemplates", + "response": { + "$ref": "GooglePrivacyDlpV2beta2ListInspectTemplatesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "patch": { + "description": "Updates the inspect template.", + "flatPath": "v2beta2/organizations/{organizationsId}/inspectTemplates/{inspectTemplatesId}", + "httpMethod": "PATCH", + "id": "dlp.organizations.inspectTemplates.patch", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Resource name of organization and inspectTemplate to be updated, for\nexample `organizations/433245324/inspectTemplates/432452342` or\nprojects/project-id/inspectTemplates/432452342.", + "location": "path", + "pattern": "^organizations/[^/]+/inspectTemplates/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2beta2/{+name}", + "request": { + "$ref": "GooglePrivacyDlpV2beta2UpdateInspectTemplateRequest" + }, + "response": { + "$ref": "GooglePrivacyDlpV2beta2InspectTemplate" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } } - }, - "id": "GooglePrivacyDlpV2beta2ReidentifyContentResponse" + } }, - "GooglePrivacyDlpV2beta2TransientCryptoKey": { + "projects": { + "resources": { + "content": { + "methods": { + "deidentify": { + "description": "De-identifies potentially sensitive info from a ContentItem.\nThis method has limits on input size and output size.\n[How-to guide](/dlp/docs/deidentify-sensitive-data)", + "flatPath": "v2beta2/projects/{projectsId}/content:deidentify", + "httpMethod": "POST", + "id": "dlp.projects.content.deidentify", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "The parent resource name, for example projects/my-project-id.", + "location": "path", + "pattern": "^projects/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2beta2/{+parent}/content:deidentify", + "request": { + "$ref": "GooglePrivacyDlpV2beta2DeidentifyContentRequest" + }, + "response": { + "$ref": "GooglePrivacyDlpV2beta2DeidentifyContentResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "inspect": { + "description": "Finds potentially sensitive info in content.\nThis method has limits on input size, processing time, and output size.\n[How-to guide for text](/dlp/docs/inspecting-text), [How-to guide for\nimages](/dlp/docs/inspecting-images)", + "flatPath": "v2beta2/projects/{projectsId}/content:inspect", + "httpMethod": "POST", + "id": "dlp.projects.content.inspect", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "The parent resource name, for example projects/my-project-id.", + "location": "path", + "pattern": "^projects/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2beta2/{+parent}/content:inspect", + "request": { + "$ref": "GooglePrivacyDlpV2beta2InspectContentRequest" + }, + "response": { + "$ref": "GooglePrivacyDlpV2beta2InspectContentResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "reidentify": { + "description": "Re-identify content that has been de-identified.", + "flatPath": "v2beta2/projects/{projectsId}/content:reidentify", + "httpMethod": "POST", + "id": "dlp.projects.content.reidentify", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "The parent resource name.", + "location": "path", + "pattern": "^projects/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2beta2/{+parent}/content:reidentify", + "request": { + "$ref": "GooglePrivacyDlpV2beta2ReidentifyContentRequest" + }, + "response": { + "$ref": "GooglePrivacyDlpV2beta2ReidentifyContentResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + }, + "dataSource": { + "methods": { + "analyze": { + "description": "Schedules a job to compute risk analysis metrics over content in a Google\nCloud Platform repository. [How-to guide](/dlp/docs/compute-risk-analysis)", + "flatPath": "v2beta2/projects/{projectsId}/dataSource:analyze", + "httpMethod": "POST", + "id": "dlp.projects.dataSource.analyze", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "The parent resource name, for example projects/my-project-id.", + "location": "path", + "pattern": "^projects/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2beta2/{+parent}/dataSource:analyze", + "request": { + "$ref": "GooglePrivacyDlpV2beta2AnalyzeDataSourceRiskRequest" + }, + "response": { + "$ref": "GooglePrivacyDlpV2beta2DlpJob" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "inspect": { + "description": "Schedules a job scanning content in a Google Cloud Platform data\nrepository. [How-to guide](/dlp/docs/inspecting-storage)", + "flatPath": "v2beta2/projects/{projectsId}/dataSource:inspect", + "httpMethod": "POST", + "id": "dlp.projects.dataSource.inspect", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "The parent resource name, for example projects/my-project-id.", + "location": "path", + "pattern": "^projects/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2beta2/{+parent}/dataSource:inspect", + "request": { + "$ref": "GooglePrivacyDlpV2beta2InspectDataSourceRequest" + }, + "response": { + "$ref": "GooglePrivacyDlpV2beta2DlpJob" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + }, + "deidentifyTemplates": { + "methods": { + "create": { + "description": "Creates an Deidentify template for re-using frequently used configuration\nfor Deidentifying content, images, and storage.", + "flatPath": "v2beta2/projects/{projectsId}/deidentifyTemplates", + "httpMethod": "POST", + "id": "dlp.projects.deidentifyTemplates.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "The parent resource name, for example projects/my-project-id or\norganizations/my-org-id.", + "location": "path", + "pattern": "^projects/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2beta2/{+parent}/deidentifyTemplates", + "request": { + "$ref": "GooglePrivacyDlpV2beta2CreateDeidentifyTemplateRequest" + }, + "response": { + "$ref": "GooglePrivacyDlpV2beta2DeidentifyTemplate" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Deletes inspect templates.", + "flatPath": "v2beta2/projects/{projectsId}/deidentifyTemplates/{deidentifyTemplatesId}", + "httpMethod": "DELETE", + "id": "dlp.projects.deidentifyTemplates.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Resource name of the organization and deidentify template to be deleted,\nfor example `organizations/433245324/deidentifyTemplates/432452342` or\nprojects/project-id/deidentifyTemplates/432452342.", + "location": "path", + "pattern": "^projects/[^/]+/deidentifyTemplates/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2beta2/{+name}", + "response": { + "$ref": "GoogleProtobufEmpty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Gets an inspect template.", + "flatPath": "v2beta2/projects/{projectsId}/deidentifyTemplates/{deidentifyTemplatesId}", + "httpMethod": "GET", + "id": "dlp.projects.deidentifyTemplates.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Resource name of the organization and deidentify template to be read, for\nexample `organizations/433245324/deidentifyTemplates/432452342` or\nprojects/project-id/deidentifyTemplates/432452342.", + "location": "path", + "pattern": "^projects/[^/]+/deidentifyTemplates/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2beta2/{+name}", + "response": { + "$ref": "GooglePrivacyDlpV2beta2DeidentifyTemplate" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists inspect templates.", + "flatPath": "v2beta2/projects/{projectsId}/deidentifyTemplates", + "httpMethod": "GET", + "id": "dlp.projects.deidentifyTemplates.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "pageSize": { + "description": "Optional size of the page, can be limited by server. If zero server returns\na page of max size 100.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional page token to continue retrieval. Comes from previous call\nto `ListDeidentifyTemplates`.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "The parent resource name, for example projects/my-project-id or\norganizations/my-org-id.", + "location": "path", + "pattern": "^projects/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2beta2/{+parent}/deidentifyTemplates", + "response": { + "$ref": "GooglePrivacyDlpV2beta2ListDeidentifyTemplatesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "patch": { + "description": "Updates the inspect template.", + "flatPath": "v2beta2/projects/{projectsId}/deidentifyTemplates/{deidentifyTemplatesId}", + "httpMethod": "PATCH", + "id": "dlp.projects.deidentifyTemplates.patch", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Resource name of organization and deidentify template to be updated, for\nexample `organizations/433245324/deidentifyTemplates/432452342` or\nprojects/project-id/deidentifyTemplates/432452342.", + "location": "path", + "pattern": "^projects/[^/]+/deidentifyTemplates/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2beta2/{+name}", + "request": { + "$ref": "GooglePrivacyDlpV2beta2UpdateDeidentifyTemplateRequest" + }, + "response": { + "$ref": "GooglePrivacyDlpV2beta2DeidentifyTemplate" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + }, + "dlpJobs": { + "methods": { + "cancel": { + "description": "Starts asynchronous cancellation on a long-running DlpJob. The server\nmakes a best effort to cancel the DlpJob, but success is not\nguaranteed.", + "flatPath": "v2beta2/projects/{projectsId}/dlpJobs/{dlpJobsId}:cancel", + "httpMethod": "POST", + "id": "dlp.projects.dlpJobs.cancel", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the DlpJob resource to be cancelled.", + "location": "path", + "pattern": "^projects/[^/]+/dlpJobs/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2beta2/{+name}:cancel", + "request": { + "$ref": "GooglePrivacyDlpV2beta2CancelDlpJobRequest" + }, + "response": { + "$ref": "GoogleProtobufEmpty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Deletes a long-running DlpJob. This method indicates that the client is\nno longer interested in the DlpJob result. The job will be cancelled if\npossible.", + "flatPath": "v2beta2/projects/{projectsId}/dlpJobs/{dlpJobsId}", + "httpMethod": "DELETE", + "id": "dlp.projects.dlpJobs.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the DlpJob resource to be deleted.", + "location": "path", + "pattern": "^projects/[^/]+/dlpJobs/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2beta2/{+name}", + "response": { + "$ref": "GoogleProtobufEmpty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Gets the latest state of a long-running DlpJob.", + "flatPath": "v2beta2/projects/{projectsId}/dlpJobs/{dlpJobsId}", + "httpMethod": "GET", + "id": "dlp.projects.dlpJobs.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the DlpJob resource.", + "location": "path", + "pattern": "^projects/[^/]+/dlpJobs/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2beta2/{+name}", + "response": { + "$ref": "GooglePrivacyDlpV2beta2DlpJob" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists DlpJobs that match the specified filter in the request.", + "flatPath": "v2beta2/projects/{projectsId}/dlpJobs", + "httpMethod": "GET", + "id": "dlp.projects.dlpJobs.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "filter": { + "description": "Optional. Allows filtering.\n\nSupported syntax:\n\n* Filter expressions are made up of one or more restrictions.\n* Restrictions can be combined by `AND` or `OR` logical operators. A\nsequence of restrictions implicitly uses `AND`.\n* A restriction has the form of `\u003cfield\u003e \u003coperator\u003e \u003cvalue\u003e`.\n* Supported fields/values for inspect jobs:\n - `state` - PENDING|RUNNING|CANCELED|FINISHED|FAILED\n - `inspected_storage` - DATASTORE|CLOUD_STORAGE|BIGQUERY\n - `trigger_name` - The resource name of the trigger that created job.\n* Supported fields for risk analysis jobs:\n - `state` - RUNNING|CANCELED|FINISHED|FAILED\n* The operator must be `=` or `!=`.\n\nExamples:\n\n* inspected_storage = cloud_storage AND state = done\n* inspected_storage = cloud_storage OR inspected_storage = bigquery\n* inspected_storage = cloud_storage AND (state = done OR state = canceled)\n\nThe length of this field should be no more than 500 characters.", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "The standard list page size.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "The standard list page token.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "The parent resource name, for example projects/my-project-id.", + "location": "path", + "pattern": "^projects/[^/]+$", + "required": true, + "type": "string" + }, + "type": { + "description": "The type of job. Defaults to `DlpJobType.INSPECT`", + "enum": [ + "DLP_JOB_TYPE_UNSPECIFIED", + "INSPECT_JOB", + "RISK_ANALYSIS_JOB" + ], + "location": "query", + "type": "string" + } + }, + "path": "v2beta2/{+parent}/dlpJobs", + "response": { + "$ref": "GooglePrivacyDlpV2beta2ListDlpJobsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + }, + "image": { + "methods": { + "redact": { + "description": "Redacts potentially sensitive info from an image.\nThis method has limits on input size, processing time, and output size.\n[How-to guide](/dlp/docs/redacting-sensitive-data-images)", + "flatPath": "v2beta2/projects/{projectsId}/image:redact", + "httpMethod": "POST", + "id": "dlp.projects.image.redact", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "The parent resource name, for example projects/my-project-id.", + "location": "path", + "pattern": "^projects/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2beta2/{+parent}/image:redact", + "request": { + "$ref": "GooglePrivacyDlpV2beta2RedactImageRequest" + }, + "response": { + "$ref": "GooglePrivacyDlpV2beta2RedactImageResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + }, + "inspectTemplates": { + "methods": { + "create": { + "description": "Creates an inspect template for re-using frequently used configuration\nfor inspecting content, images, and storage.", + "flatPath": "v2beta2/projects/{projectsId}/inspectTemplates", + "httpMethod": "POST", + "id": "dlp.projects.inspectTemplates.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "The parent resource name, for example projects/my-project-id or\norganizations/my-org-id.", + "location": "path", + "pattern": "^projects/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2beta2/{+parent}/inspectTemplates", + "request": { + "$ref": "GooglePrivacyDlpV2beta2CreateInspectTemplateRequest" + }, + "response": { + "$ref": "GooglePrivacyDlpV2beta2InspectTemplate" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Deletes inspect templates.", + "flatPath": "v2beta2/projects/{projectsId}/inspectTemplates/{inspectTemplatesId}", + "httpMethod": "DELETE", + "id": "dlp.projects.inspectTemplates.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Resource name of the organization and inspectTemplate to be deleted, for\nexample `organizations/433245324/inspectTemplates/432452342` or\nprojects/project-id/inspectTemplates/432452342.", + "location": "path", + "pattern": "^projects/[^/]+/inspectTemplates/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2beta2/{+name}", + "response": { + "$ref": "GoogleProtobufEmpty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Gets an inspect template.", + "flatPath": "v2beta2/projects/{projectsId}/inspectTemplates/{inspectTemplatesId}", + "httpMethod": "GET", + "id": "dlp.projects.inspectTemplates.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Resource name of the organization and inspectTemplate to be read, for\nexample `organizations/433245324/inspectTemplates/432452342` or\nprojects/project-id/inspectTemplates/432452342.", + "location": "path", + "pattern": "^projects/[^/]+/inspectTemplates/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2beta2/{+name}", + "response": { + "$ref": "GooglePrivacyDlpV2beta2InspectTemplate" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists inspect templates.", + "flatPath": "v2beta2/projects/{projectsId}/inspectTemplates", + "httpMethod": "GET", + "id": "dlp.projects.inspectTemplates.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "pageSize": { + "description": "Optional size of the page, can be limited by server. If zero server returns\na page of max size 100.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional page token to continue retrieval. Comes from previous call\nto `ListInspectTemplates`.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "The parent resource name, for example projects/my-project-id or\norganizations/my-org-id.", + "location": "path", + "pattern": "^projects/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2beta2/{+parent}/inspectTemplates", + "response": { + "$ref": "GooglePrivacyDlpV2beta2ListInspectTemplatesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "patch": { + "description": "Updates the inspect template.", + "flatPath": "v2beta2/projects/{projectsId}/inspectTemplates/{inspectTemplatesId}", + "httpMethod": "PATCH", + "id": "dlp.projects.inspectTemplates.patch", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Resource name of organization and inspectTemplate to be updated, for\nexample `organizations/433245324/inspectTemplates/432452342` or\nprojects/project-id/inspectTemplates/432452342.", + "location": "path", + "pattern": "^projects/[^/]+/inspectTemplates/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2beta2/{+name}", + "request": { + "$ref": "GooglePrivacyDlpV2beta2UpdateInspectTemplateRequest" + }, + "response": { + "$ref": "GooglePrivacyDlpV2beta2InspectTemplate" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + }, + "jobTriggers": { + "methods": { + "create": { + "description": "Creates a job to run DLP actions such as scanning storage for sensitive\ninformation on a set schedule.", + "flatPath": "v2beta2/projects/{projectsId}/jobTriggers", + "httpMethod": "POST", + "id": "dlp.projects.jobTriggers.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "The parent resource name, for example projects/my-project-id.", + "location": "path", + "pattern": "^projects/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2beta2/{+parent}/jobTriggers", + "request": { + "$ref": "GooglePrivacyDlpV2beta2CreateJobTriggerRequest" + }, + "response": { + "$ref": "GooglePrivacyDlpV2beta2JobTrigger" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Deletes a job trigger.", + "flatPath": "v2beta2/projects/{projectsId}/jobTriggers/{jobTriggersId}", + "httpMethod": "DELETE", + "id": "dlp.projects.jobTriggers.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Resource name of the project and the triggeredJob, for example\n`projects/dlp-test-project/jobTriggers/53234423`.", + "location": "path", + "pattern": "^projects/[^/]+/jobTriggers/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2beta2/{+name}", + "response": { + "$ref": "GoogleProtobufEmpty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Gets a job trigger.", + "flatPath": "v2beta2/projects/{projectsId}/jobTriggers/{jobTriggersId}", + "httpMethod": "GET", + "id": "dlp.projects.jobTriggers.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Resource name of the project and the triggeredJob, for example\n`projects/dlp-test-project/jobTriggers/53234423`.", + "location": "path", + "pattern": "^projects/[^/]+/jobTriggers/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2beta2/{+name}", + "response": { + "$ref": "GooglePrivacyDlpV2beta2JobTrigger" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists job triggers.", + "flatPath": "v2beta2/projects/{projectsId}/jobTriggers", + "httpMethod": "GET", + "id": "dlp.projects.jobTriggers.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "orderBy": { + "description": "Optional comma separated list of triggeredJob fields to order by,\nfollowed by 'asc/desc' postfix, i.e.\n`\"create_time asc,name desc,schedule_mode asc\"`. This list is\ncase-insensitive.\n\nExample: `\"name asc,schedule_mode desc, status desc\"`\n\nSupported filters keys and values are:\n\n- `create_time`: corresponds to time the triggeredJob was created.\n- `update_time`: corresponds to time the triggeredJob was last updated.\n- `name`: corresponds to JobTrigger's display name.\n- `status`: corresponds to the triggeredJob status.", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "Optional size of the page, can be limited by a server.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional page token to continue retrieval. Comes from previous call\nto ListJobTriggers. `order_by` and `filter` should not change for\nsubsequent calls, but can be omitted if token is specified.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "The parent resource name, for example projects/my-project-id.", + "location": "path", + "pattern": "^projects/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2beta2/{+parent}/jobTriggers", + "response": { + "$ref": "GooglePrivacyDlpV2beta2ListJobTriggersResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "patch": { + "description": "Updates a job trigger.", + "flatPath": "v2beta2/projects/{projectsId}/jobTriggers/{jobTriggersId}", + "httpMethod": "PATCH", + "id": "dlp.projects.jobTriggers.patch", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Resource name of the project and the triggeredJob, for example\n`projects/dlp-test-project/jobTriggers/53234423`.", + "location": "path", + "pattern": "^projects/[^/]+/jobTriggers/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2beta2/{+name}", + "request": { + "$ref": "GooglePrivacyDlpV2beta2UpdateJobTriggerRequest" + }, + "response": { + "$ref": "GooglePrivacyDlpV2beta2JobTrigger" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + } + } + } + }, + "revision": "20180320", + "rootUrl": "https://dlp.googleapis.com/", + "schemas": { + "GooglePrivacyDlpV2beta1AuxiliaryTable": { + "description": "An auxiliary table contains statistical information on the relative\nfrequency of different quasi-identifiers values. It has one or several\nquasi-identifiers columns, and one column that indicates the relative\nfrequency of each quasi-identifier tuple.\nIf a tuple is present in the data but not in the auxiliary table, the\ncorresponding relative frequency is assumed to be zero (and thus, the\ntuple is highly reidentifiable).", + "id": "GooglePrivacyDlpV2beta1AuxiliaryTable", "properties": { - "name": { - "type": "string", - "description": "Name of the key. [required]\nThis is an arbitrary string used to differentiate different keys.\nA unique key is generated per name: two separate `TransientCryptoKey`\nprotos share the same generated key if their names are the same.\nWhen the data crypto key is generated, this name is not used in any way\n(repeating the api call will result in a different key being generated)." + "quasiIds": { + "description": "Quasi-identifier columns. [required]", + "items": { + "$ref": "GooglePrivacyDlpV2beta1QuasiIdField" + }, + "type": "array" + }, + "relativeFrequency": { + "$ref": "GooglePrivacyDlpV2beta1FieldId", + "description": "The relative frequency column must contain a floating-point number\nbetween 0 and 1 (inclusive). Null values are assumed to be zero.\n[required]" + }, + "table": { + "$ref": "GooglePrivacyDlpV2beta1BigQueryTable", + "description": "Auxiliary table location. [required]" } }, - "id": "GooglePrivacyDlpV2beta2TransientCryptoKey", - "description": "Use this to have a random data crypto key generated.\nIt will be discarded after the request finishes.", "type": "object" }, - "GooglePrivacyDlpV2beta1LDiversityEquivalenceClass": { - "description": "The set of columns' values that share the same l-diversity value.", - "type": "object", + "GooglePrivacyDlpV2beta1BigQueryOptions": { + "description": "Options defining BigQuery table and row identifiers.", + "id": "GooglePrivacyDlpV2beta1BigQueryOptions", "properties": { - "equivalenceClassSize": { - "description": "Size of the k-anonymity equivalence class.", - "format": "int64", - "type": "string" - }, - "quasiIdsValues": { - "description": "Quasi-identifier values defining the k-anonymity equivalence\nclass. The order is always the same as the original request.", - "type": "array", + "identifyingFields": { + "description": "References to fields uniquely identifying rows within the table.\nNested fields in the format, like `person.birthdate.year`, are allowed.", "items": { - "$ref": "GooglePrivacyDlpV2beta1Value" - } + "$ref": "GooglePrivacyDlpV2beta1FieldId" + }, + "type": "array" }, - "numDistinctSensitiveValues": { - "description": "Number of distinct sensitive values in this equivalence class.", - "format": "int64", - "type": "string" - }, - "topSensitiveValues": { - "description": "Estimated frequencies of top sensitive values.", - "type": "array", - "items": { - "$ref": "GooglePrivacyDlpV2beta1ValueFrequency" - } + "tableReference": { + "$ref": "GooglePrivacyDlpV2beta1BigQueryTable", + "description": "Complete BigQuery table reference." } }, - "id": "GooglePrivacyDlpV2beta1LDiversityEquivalenceClass" + "type": "object" }, - "GooglePrivacyDlpV2beta1NumericalStatsConfig": { - "type": "object", + "GooglePrivacyDlpV2beta1BigQueryTable": { + "description": "Message defining the location of a BigQuery table. A table is uniquely\nidentified by its project_id, dataset_id, and table_name. Within a query\na table is often referenced with a string in the format of:\n`\u003cproject_id\u003e:\u003cdataset_id\u003e.\u003ctable_id\u003e` or\n`\u003cproject_id\u003e.\u003cdataset_id\u003e.\u003ctable_id\u003e`.", + "id": "GooglePrivacyDlpV2beta1BigQueryTable", + "properties": { + "datasetId": { + "description": "Dataset ID of the table.", + "type": "string" + }, + "projectId": { + "description": "The Google Cloud Platform project ID of the project containing the table.\nIf omitted, project ID is inferred from the API call.", + "type": "string" + }, + "tableId": { + "description": "Name of the table.", + "type": "string" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1CategoricalStatsConfig": { + "description": "Compute numerical stats over an individual column, including\nnumber of distinct values and value count distribution.", + "id": "GooglePrivacyDlpV2beta1CategoricalStatsConfig", "properties": { "field": { "$ref": "GooglePrivacyDlpV2beta1FieldId", - "description": "Field to compute numerical stats on. Supported types are\ninteger, float, date, datetime, timestamp, time." + "description": "Field to compute categorical stats on. All column types are\nsupported except for arrays and structs. However, it may be more\ninformative to use NumericalStats when the field type is supported,\ndepending on the data." } }, - "id": "GooglePrivacyDlpV2beta1NumericalStatsConfig", - "description": "Compute numerical stats over an individual column, including\nmin, max, and quantiles." + "type": "object" }, - "GooglePrivacyDlpV2beta2InfoTypeTransformation": { - "description": "A transformation to apply to text that is identified as a specific\ninfo_type.", - "type": "object", + "GooglePrivacyDlpV2beta1CategoricalStatsHistogramBucket": { + "description": "Histogram bucket of value frequencies in the column.", + "id": "GooglePrivacyDlpV2beta1CategoricalStatsHistogramBucket", "properties": { - "infoTypes": { - "description": "InfoTypes to apply the transformation to. Empty list will match all\navailable infoTypes for this transformation.", - "type": "array", - "items": { - "$ref": "GooglePrivacyDlpV2beta2InfoType" - } - }, - "primitiveTransformation": { - "description": "Primitive transformation to apply to the infoType. [required]", - "$ref": "GooglePrivacyDlpV2beta2PrimitiveTransformation" - } - }, - "id": "GooglePrivacyDlpV2beta2InfoTypeTransformation" - }, - "GooglePrivacyDlpV2beta2CloudStorageOptions": { - "description": "Options defining a file or a set of files (path ending with *) within\na Google Cloud Storage bucket.", - "type": "object", - "properties": { - "fileSet": { - "$ref": "GooglePrivacyDlpV2beta2FileSet" - } - }, - "id": "GooglePrivacyDlpV2beta2CloudStorageOptions" - }, - "GooglePrivacyDlpV2beta2Condition": { - "description": "The field type of `value` and `field` do not need to match to be\nconsidered equal, but not all comparisons are possible.\n\nA `value` of type:\n\n- `string` can be compared against all other types\n- `boolean` can only be compared against other booleans\n- `integer` can be compared against doubles or a string if the string value\ncan be parsed as an integer.\n- `double` can be compared against integers or a string if the string can\nbe parsed as a double.\n- `Timestamp` can be compared against strings in RFC 3339 date string\nformat.\n- `TimeOfDay` can be compared against timestamps and strings in the format\nof 'HH:mm:ss'.\n\nIf we fail to compare do to type mismatch, a warning will be given and\nthe condition will evaluate to false.", - "type": "object", - "properties": { - "operator": { - "enumDescriptions": [ - "", - "Equal.", - "Not equal to.", - "Greater than.", - "Less than.", - "Greater than or equals.", - "Less than or equals.", - "Exists" - ], - "enum": [ - "RELATIONAL_OPERATOR_UNSPECIFIED", - "EQUAL_TO", - "NOT_EQUAL_TO", - "GREATER_THAN", - "LESS_THAN", - "GREATER_THAN_OR_EQUALS", - "LESS_THAN_OR_EQUALS", - "EXISTS" - ], - "description": "Operator used to compare the field or infoType to the value. [required]", + "bucketSize": { + "description": "Total number of records in this bucket.", + "format": "int64", "type": "string" }, - "value": { - "description": "Value to compare against. [Required, except for `EXISTS` tests.]", - "$ref": "GooglePrivacyDlpV2beta2Value" + "bucketValues": { + "description": "Sample of value frequencies in this bucket. The total number of\nvalues returned per bucket is capped at 20.", + "items": { + "$ref": "GooglePrivacyDlpV2beta1ValueFrequency" + }, + "type": "array" }, - "field": { - "$ref": "GooglePrivacyDlpV2beta2FieldId", - "description": "Field within the record this condition is evaluated against. [required]" - } - }, - "id": "GooglePrivacyDlpV2beta2Condition" - }, - "GooglePrivacyDlpV2beta2TableLocation": { - "description": "Location of a finding within a table.", - "type": "object", - "properties": { - "rowIndex": { - "description": "The zero-based index of the row where the finding is located.", + "valueFrequencyLowerBound": { + "description": "Lower bound on the value frequency of the values in this bucket.", + "format": "int64", + "type": "string" + }, + "valueFrequencyUpperBound": { + "description": "Upper bound on the value frequency of the values in this bucket.", "format": "int64", "type": "string" } }, - "id": "GooglePrivacyDlpV2beta2TableLocation" - }, - "GooglePrivacyDlpV2beta2KMapEstimationResult": { - "description": "Result of the reidentifiability analysis. Note that these results are an\nestimation, not exact values.", - "type": "object", - "properties": { - "kMapEstimationHistogram": { - "description": "The intervals [min_anonymity, max_anonymity] do not overlap. If a value\ndoesn't correspond to any such interval, the associated frequency is\nzero. For example, the following records:\n {min_anonymity: 1, max_anonymity: 1, frequency: 17}\n {min_anonymity: 2, max_anonymity: 3, frequency: 42}\n {min_anonymity: 5, max_anonymity: 10, frequency: 99}\nmean that there are no record with an estimated anonymity of 4, 5, or\nlarger than 10.", - "type": "array", - "items": { - "$ref": "GooglePrivacyDlpV2beta2KMapEstimationHistogramBucket" - } - } - }, - "id": "GooglePrivacyDlpV2beta2KMapEstimationResult" - }, - "GooglePrivacyDlpV2beta2PrimitiveTransformation": { - "properties": { - "characterMaskConfig": { - "$ref": "GooglePrivacyDlpV2beta2CharacterMaskConfig" - }, - "redactConfig": { - "$ref": "GooglePrivacyDlpV2beta2RedactConfig" - }, - "bucketingConfig": { - "$ref": "GooglePrivacyDlpV2beta2BucketingConfig" - }, - "replaceWithInfoTypeConfig": { - "$ref": "GooglePrivacyDlpV2beta2ReplaceWithInfoTypeConfig" - }, - "cryptoHashConfig": { - "$ref": "GooglePrivacyDlpV2beta2CryptoHashConfig" - }, - "cryptoReplaceFfxFpeConfig": { - "$ref": "GooglePrivacyDlpV2beta2CryptoReplaceFfxFpeConfig" - }, - "replaceConfig": { - "$ref": "GooglePrivacyDlpV2beta2ReplaceValueConfig" - }, - "timePartConfig": { - "$ref": "GooglePrivacyDlpV2beta2TimePartConfig" - }, - "fixedSizeBucketingConfig": { - "$ref": "GooglePrivacyDlpV2beta2FixedSizeBucketingConfig" - } - }, - "id": "GooglePrivacyDlpV2beta2PrimitiveTransformation", - "description": "A rule for transforming a value.", "type": "object" }, - "GooglePrivacyDlpV2beta2KAnonymityEquivalenceClass": { - "description": "The set of columns' values that share the same ldiversity value", - "type": "object", + "GooglePrivacyDlpV2beta1CategoricalStatsResult": { + "description": "Result of the categorical stats computation.", + "id": "GooglePrivacyDlpV2beta1CategoricalStatsResult", + "properties": { + "valueFrequencyHistogramBuckets": { + "description": "Histogram of value frequencies in the column.", + "items": { + "$ref": "GooglePrivacyDlpV2beta1CategoricalStatsHistogramBucket" + }, + "type": "array" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1CloudStorageOptions": { + "description": "Options defining a file or a set of files (path ending with *) within\na Google Cloud Storage bucket.", + "id": "GooglePrivacyDlpV2beta1CloudStorageOptions", + "properties": { + "fileSet": { + "$ref": "GooglePrivacyDlpV2beta1FileSet" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1CloudStoragePath": { + "description": "A location in Cloud Storage.", + "id": "GooglePrivacyDlpV2beta1CloudStoragePath", + "properties": { + "path": { + "description": "The url, in the format of `gs://bucket/\u003cpath\u003e`.", + "type": "string" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1CustomInfoType": { + "description": "Custom information type provided by the user. Used to find domain-specific\nsensitive information configurable to the data in question.", + "id": "GooglePrivacyDlpV2beta1CustomInfoType", + "properties": { + "dictionary": { + "$ref": "GooglePrivacyDlpV2beta1Dictionary", + "description": "Dictionary-based custom info type." + }, + "infoType": { + "$ref": "GooglePrivacyDlpV2beta1InfoType", + "description": "Info type configuration. All custom info types must have configurations\nthat do not conflict with built-in info types or other custom info types." + }, + "surrogateType": { + "$ref": "GooglePrivacyDlpV2beta1SurrogateType", + "description": "Surrogate info type." + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1DatastoreOptions": { + "description": "Options defining a data set within Google Cloud Datastore.", + "id": "GooglePrivacyDlpV2beta1DatastoreOptions", + "properties": { + "kind": { + "$ref": "GooglePrivacyDlpV2beta1KindExpression", + "description": "The kind to process." + }, + "partitionId": { + "$ref": "GooglePrivacyDlpV2beta1PartitionId", + "description": "A partition ID identifies a grouping of entities. The grouping is always\nby project and namespace, however the namespace ID may be empty." + }, + "projection": { + "description": "Properties to scan. If none are specified, all properties will be scanned\nby default.", + "items": { + "$ref": "GooglePrivacyDlpV2beta1Projection" + }, + "type": "array" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1Dictionary": { + "description": "Custom information type based on a dictionary of words or phrases. This can\nbe used to match sensitive information specific to the data, such as a list\nof employee IDs or job titles.\n\nDictionary words are case-insensitive and all characters other than letters\nand digits in the unicode [Basic Multilingual\nPlane](https://en.wikipedia.org/wiki/Plane_%28Unicode%29#Basic_Multilingual_Plane)\nwill be replaced with whitespace when scanning for matches, so the\ndictionary phrase \"Sam Johnson\" will match all three phrases \"sam johnson\",\n\"Sam, Johnson\", and \"Sam (Johnson)\". Additionally, the characters\nsurrounding any match must be of a different type than the adjacent\ncharacters within the word, so letters must be next to non-letters and\ndigits next to non-digits. For example, the dictionary word \"jen\" will\nmatch the first three letters of the text \"jen123\" but will return no\nmatches for \"jennifer\".\n\nDictionary words containing a large number of characters that are not\nletters or digits may result in unexpected findings because such characters\nare treated as whitespace.", + "id": "GooglePrivacyDlpV2beta1Dictionary", + "properties": { + "wordList": { + "$ref": "GooglePrivacyDlpV2beta1WordList", + "description": "List of words or phrases to search for." + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1EntityId": { + "description": "An entity in a dataset is a field or set of fields that correspond to a\nsingle person. For example, in medical records the `EntityId` might be\na patient identifier, or for financial records it might be an account\nidentifier. This message is used when generalizations or analysis must be\nconsistent across multiple rows pertaining to the same entity.", + "id": "GooglePrivacyDlpV2beta1EntityId", + "properties": { + "field": { + "$ref": "GooglePrivacyDlpV2beta1FieldId", + "description": "Composite key indicating which field contains the entity identifier." + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1FieldId": { + "description": "General identifier of a data field in a storage service.", + "id": "GooglePrivacyDlpV2beta1FieldId", + "properties": { + "columnName": { + "description": "Name describing the field.", + "type": "string" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1FileSet": { + "description": "Set of files to scan.", + "id": "GooglePrivacyDlpV2beta1FileSet", + "properties": { + "url": { + "description": "The url, in the format `gs://\u003cbucket\u003e/\u003cpath\u003e`. Trailing wildcard in the\npath is allowed.", + "type": "string" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1InfoType": { + "description": "Type of information detected by the API.", + "id": "GooglePrivacyDlpV2beta1InfoType", + "properties": { + "name": { + "description": "Name of the information type.", + "type": "string" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1InfoTypeLimit": { + "description": "Max findings configuration per info type, per content item or long running\noperation.", + "id": "GooglePrivacyDlpV2beta1InfoTypeLimit", + "properties": { + "infoType": { + "$ref": "GooglePrivacyDlpV2beta1InfoType", + "description": "Type of information the findings limit applies to. Only one limit per\ninfo_type should be provided. If InfoTypeLimit does not have an\ninfo_type, the DLP API applies the limit against all info_types that are\nfound but not specified in another InfoTypeLimit." + }, + "maxFindings": { + "description": "Max findings limit for the given infoType.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1InfoTypeStatistics": { + "description": "Statistics regarding a specific InfoType.", + "id": "GooglePrivacyDlpV2beta1InfoTypeStatistics", + "properties": { + "count": { + "description": "Number of findings for this info type.", + "format": "int64", + "type": "string" + }, + "infoType": { + "$ref": "GooglePrivacyDlpV2beta1InfoType", + "description": "The type of finding this stat is for." + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1InspectConfig": { + "description": "Configuration description of the scanning process.\nWhen used with redactContent only info_types and min_likelihood are currently\nused.", + "id": "GooglePrivacyDlpV2beta1InspectConfig", + "properties": { + "customInfoTypes": { + "description": "Custom info types provided by the user.", + "items": { + "$ref": "GooglePrivacyDlpV2beta1CustomInfoType" + }, + "type": "array" + }, + "excludeTypes": { + "description": "When true, excludes type information of the findings.", + "type": "boolean" + }, + "includeQuote": { + "description": "When true, a contextual quote from the data that triggered a finding is\nincluded in the response; see Finding.quote.", + "type": "boolean" + }, + "infoTypeLimits": { + "description": "Configuration of findings limit given for specified info types.", + "items": { + "$ref": "GooglePrivacyDlpV2beta1InfoTypeLimit" + }, + "type": "array" + }, + "infoTypes": { + "description": "Restricts what info_types to look for. The values must correspond to\nInfoType values returned by ListInfoTypes or found in documentation.\nEmpty info_types runs all enabled detectors.", + "items": { + "$ref": "GooglePrivacyDlpV2beta1InfoType" + }, + "type": "array" + }, + "maxFindings": { + "description": "Limits the number of findings per content item or long running operation.", + "format": "int32", + "type": "integer" + }, + "minLikelihood": { + "description": "Only returns findings equal or above this threshold.", + "enum": [ + "LIKELIHOOD_UNSPECIFIED", + "VERY_UNLIKELY", + "UNLIKELY", + "POSSIBLE", + "LIKELY", + "VERY_LIKELY" + ], + "enumDescriptions": [ + "Default value; information with all likelihoods is included.", + "Few matching elements.", + "", + "Some matching elements.", + "", + "Many matching elements." + ], + "type": "string" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1InspectOperationMetadata": { + "description": "Metadata returned within GetOperation for an inspect request.", + "id": "GooglePrivacyDlpV2beta1InspectOperationMetadata", + "properties": { + "createTime": { + "description": "The time which this request was started.", + "format": "google-datetime", + "type": "string" + }, + "infoTypeStats": { + "items": { + "$ref": "GooglePrivacyDlpV2beta1InfoTypeStatistics" + }, + "type": "array" + }, + "processedBytes": { + "description": "Total size in bytes that were processed.", + "format": "int64", + "type": "string" + }, + "requestInspectConfig": { + "$ref": "GooglePrivacyDlpV2beta1InspectConfig", + "description": "The inspect config used to create the Operation." + }, + "requestOutputConfig": { + "$ref": "GooglePrivacyDlpV2beta1OutputStorageConfig", + "description": "Optional location to store findings." + }, + "requestStorageConfig": { + "$ref": "GooglePrivacyDlpV2beta1StorageConfig", + "description": "The storage config used to create the Operation." + }, + "totalEstimatedBytes": { + "description": "Estimate of the number of bytes to process.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1InspectOperationResult": { + "description": "The operational data.", + "id": "GooglePrivacyDlpV2beta1InspectOperationResult", + "properties": { + "name": { + "description": "The server-assigned name, which is only unique within the same service that\noriginally returns it. If you use the default HTTP mapping, the\n`name` should have the format of `inspect/results/{id}`.", + "type": "string" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1KAnonymityConfig": { + "description": "k-anonymity metric, used for analysis of reidentification risk.", + "id": "GooglePrivacyDlpV2beta1KAnonymityConfig", + "properties": { + "entityId": { + "$ref": "GooglePrivacyDlpV2beta1EntityId", + "description": "Optional message indicating that each distinct entity_id should not\ncontribute to the k-anonymity count more than once per equivalence class.\nIf an entity_id appears on several rows with different quasi-identifier\ntuples, it will contribute to each count exactly once.\n\nThis can lead to unexpected results. Consider a table where ID 1 is\nassociated to quasi-identifier \"foo\", ID 2 to \"bar\", and ID 3 to *both*\nquasi-identifiers \"foo\" and \"bar\" (on separate rows), and where this ID\nis used as entity_id. Then, the anonymity value associated to ID 3 will\nbe 2, even if it is the only ID to be associated to both values \"foo\" and\n\"bar\"." + }, + "quasiIds": { + "description": "Set of fields to compute k-anonymity over. When multiple fields are\nspecified, they are considered a single composite key. Structs and\nrepeated data types are not supported; however, nested fields are\nsupported so long as they are not structs themselves or nested within\na repeated field.", + "items": { + "$ref": "GooglePrivacyDlpV2beta1FieldId" + }, + "type": "array" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1KAnonymityEquivalenceClass": { + "description": "The set of columns' values that share the same k-anonymity value.", + "id": "GooglePrivacyDlpV2beta1KAnonymityEquivalenceClass", "properties": { "equivalenceClassSize": { "description": "Size of the equivalence class, for example number of rows with the\nabove set of values.", @@ -280,167 +1608,29 @@ }, "quasiIdsValues": { "description": "Set of values defining the equivalence class. One value per\nquasi-identifier column in the original KAnonymity metric message.\nThe order is always the same as the original request.", - "type": "array", - "items": { - "$ref": "GooglePrivacyDlpV2beta2Value" - } - } - }, - "id": "GooglePrivacyDlpV2beta2KAnonymityEquivalenceClass" - }, - "GooglePrivacyDlpV2beta1NumericalStatsResult": { - "description": "Result of the numerical stats computation.", - "type": "object", - "properties": { - "quantileValues": { - "description": "List of 99 values that partition the set of field values into 100 equal\nsized buckets.", - "type": "array", "items": { "$ref": "GooglePrivacyDlpV2beta1Value" - } - }, - "minValue": { - "description": "Minimum value appearing in the column.", - "$ref": "GooglePrivacyDlpV2beta1Value" - }, - "maxValue": { - "$ref": "GooglePrivacyDlpV2beta1Value", - "description": "Maximum value appearing in the column." + }, + "type": "array" } }, - "id": "GooglePrivacyDlpV2beta1NumericalStatsResult" + "type": "object" }, - "GooglePrivacyDlpV2beta2InfoType": { - "description": "Type of information detected by the API.", - "type": "object", + "GooglePrivacyDlpV2beta1KAnonymityHistogramBucket": { + "description": "Histogram bucket of equivalence class sizes in the table.", + "id": "GooglePrivacyDlpV2beta1KAnonymityHistogramBucket", "properties": { - "name": { - "type": "string", - "description": "Name of the information type." - } - }, - "id": "GooglePrivacyDlpV2beta2InfoType" - }, - "GooglePrivacyDlpV2beta2ListDlpJobsResponse": { - "description": "The response message for listing DLP jobs.", - "type": "object", - "properties": { - "jobs": { - "description": "A list of DlpJobs that matches the specified filter in the request.", - "type": "array", - "items": { - "$ref": "GooglePrivacyDlpV2beta2DlpJob" - } - }, - "nextPageToken": { - "description": "The standard List next-page token.", + "bucketSize": { + "description": "Total number of records in this bucket.", + "format": "int64", "type": "string" - } - }, - "id": "GooglePrivacyDlpV2beta2ListDlpJobsResponse" - }, - "GooglePrivacyDlpV2beta1Dictionary": { - "description": "Custom information type based on a dictionary of words or phrases. This can\nbe used to match sensitive information specific to the data, such as a list\nof employee IDs or job titles.\n\nDictionary words are case-insensitive and all characters other than letters\nand digits in the unicode [Basic Multilingual\nPlane](https://en.wikipedia.org/wiki/Plane_%28Unicode%29#Basic_Multilingual_Plane)\nwill be replaced with whitespace when scanning for matches, so the\ndictionary phrase \"Sam Johnson\" will match all three phrases \"sam johnson\",\n\"Sam, Johnson\", and \"Sam (Johnson)\". Additionally, the characters\nsurrounding any match must be of a different type than the adjacent\ncharacters within the word, so letters must be next to non-letters and\ndigits next to non-digits. For example, the dictionary word \"jen\" will\nmatch the first three letters of the text \"jen123\" but will return no\nmatches for \"jennifer\".\n\nDictionary words containing a large number of characters that are not\nletters or digits may result in unexpected findings because such characters\nare treated as whitespace.", - "type": "object", - "properties": { - "wordList": { - "$ref": "GooglePrivacyDlpV2beta1WordList", - "description": "List of words or phrases to search for." - } - }, - "id": "GooglePrivacyDlpV2beta1Dictionary" - }, - "GooglePrivacyDlpV2beta1DatastoreOptions": { - "description": "Options defining a data set within Google Cloud Datastore.", - "type": "object", - "properties": { - "partitionId": { - "description": "A partition ID identifies a grouping of entities. The grouping is always\nby project and namespace, however the namespace ID may be empty.", - "$ref": "GooglePrivacyDlpV2beta1PartitionId" }, - "kind": { - "description": "The kind to process.", - "$ref": "GooglePrivacyDlpV2beta1KindExpression" - }, - "projection": { - "description": "Properties to scan. If none are specified, all properties will be scanned\nby default.", - "type": "array", - "items": { - "$ref": "GooglePrivacyDlpV2beta1Projection" - } - } - }, - "id": "GooglePrivacyDlpV2beta1DatastoreOptions" - }, - "GooglePrivacyDlpV2beta2RiskAnalysisJobConfig": { - "id": "GooglePrivacyDlpV2beta2RiskAnalysisJobConfig", - "description": "Configuration for a risk analysis job.", - "type": "object", - "properties": { - "sourceTable": { - "$ref": "GooglePrivacyDlpV2beta2BigQueryTable", - "description": "Input dataset to compute metrics over." - }, - "privacyMetric": { - "description": "Privacy metric to compute.", - "$ref": "GooglePrivacyDlpV2beta2PrivacyMetric" - } - } - }, - "GooglePrivacyDlpV2beta2StorageConfig": { - "description": "Shared message indicating Cloud storage type.", - "type": "object", - "properties": { - "bigQueryOptions": { - "$ref": "GooglePrivacyDlpV2beta2BigQueryOptions", - "description": "BigQuery options specification." - }, - "cloudStorageOptions": { - "description": "Google Cloud Storage options specification.", - "$ref": "GooglePrivacyDlpV2beta2CloudStorageOptions" - }, - "datastoreOptions": { - "$ref": "GooglePrivacyDlpV2beta2DatastoreOptions", - "description": "Google Cloud Datastore options specification." - } - }, - "id": "GooglePrivacyDlpV2beta2StorageConfig" - }, - "GooglePrivacyDlpV2beta2UnwrappedCryptoKey": { - "description": "Using raw keys is prone to security risks due to accidentally\nleaking the key. Choose another type of key if possible.", - "type": "object", - "properties": { - "key": { - "description": "The AES 128/192/256 bit key. [required]", - "format": "byte", - "type": "string" - } - }, - "id": "GooglePrivacyDlpV2beta2UnwrappedCryptoKey" - }, - "GooglePrivacyDlpV2beta2InfoTypeTransformations": { - "description": "A type of transformation that will scan unstructured text and\napply various `PrimitiveTransformation`s to each finding, where the\ntransformation is applied to only values that were identified as a specific\ninfo_type.", - "type": "object", - "properties": { - "transformations": { - "description": "Transformation for each infoType. Cannot specify more than one\nfor a given infoType. [required]", - "type": "array", - "items": { - "$ref": "GooglePrivacyDlpV2beta2InfoTypeTransformation" - } - } - }, - "id": "GooglePrivacyDlpV2beta2InfoTypeTransformations" - }, - "GooglePrivacyDlpV2beta2KAnonymityHistogramBucket": { - "type": "object", - "properties": { "bucketValues": { "description": "Sample of equivalence classes in this bucket. The total number of\nclasses returned per bucket is capped at 20.", - "type": "array", "items": { - "$ref": "GooglePrivacyDlpV2beta2KAnonymityEquivalenceClass" - } + "$ref": "GooglePrivacyDlpV2beta1KAnonymityEquivalenceClass" + }, + "type": "array" }, "equivalenceClassSizeLowerBound": { "description": "Lower bound on the size of the equivalence classes in this bucket.", @@ -451,867 +1641,324 @@ "description": "Upper bound on the size of the equivalence classes in this bucket.", "format": "int64", "type": "string" - }, - "bucketSize": { - "description": "Total number of equivalence classes in this bucket.", - "format": "int64", - "type": "string" } }, - "id": "GooglePrivacyDlpV2beta2KAnonymityHistogramBucket" - }, - "GooglePrivacyDlpV2beta1InspectConfig": { - "type": "object", - "properties": { - "excludeTypes": { - "type": "boolean", - "description": "When true, excludes type information of the findings." - }, - "minLikelihood": { - "type": "string", - "enumDescriptions": [ - "Default value; information with all likelihoods is included.", - "Few matching elements.", - "", - "Some matching elements.", - "", - "Many matching elements." - ], - "enum": [ - "LIKELIHOOD_UNSPECIFIED", - "VERY_UNLIKELY", - "UNLIKELY", - "POSSIBLE", - "LIKELY", - "VERY_LIKELY" - ], - "description": "Only returns findings equal or above this threshold." - }, - "infoTypeLimits": { - "description": "Configuration of findings limit given for specified info types.", - "type": "array", - "items": { - "$ref": "GooglePrivacyDlpV2beta1InfoTypeLimit" - } - }, - "maxFindings": { - "description": "Limits the number of findings per content item or long running operation.", - "format": "int32", - "type": "integer" - }, - "infoTypes": { - "type": "array", - "items": { - "$ref": "GooglePrivacyDlpV2beta1InfoType" - }, - "description": "Restricts what info_types to look for. The values must correspond to\nInfoType values returned by ListInfoTypes or found in documentation.\nEmpty info_types runs all enabled detectors." - }, - "includeQuote": { - "description": "When true, a contextual quote from the data that triggered a finding is\nincluded in the response; see Finding.quote.", - "type": "boolean" - }, - "customInfoTypes": { - "description": "Custom info types provided by the user.", - "type": "array", - "items": { - "$ref": "GooglePrivacyDlpV2beta1CustomInfoType" - } - } - }, - "id": "GooglePrivacyDlpV2beta1InspectConfig", - "description": "Configuration description of the scanning process.\nWhen used with redactContent only info_types and min_likelihood are currently\nused." - }, - "GooglePrivacyDlpV2beta1Projection": { - "id": "GooglePrivacyDlpV2beta1Projection", - "description": "A representation of a Datastore property in a projection.", - "type": "object", - "properties": { - "property": { - "description": "The property to project.", - "$ref": "GooglePrivacyDlpV2beta1PropertyReference" - } - } - }, - "GooglePrivacyDlpV2beta2Value": { - "description": "Set of primitive values supported by the system.\nNote that for the purposes of inspection or transformation, the number\nof bytes considered to comprise a 'Value' is based on its representation\nas a UTF-8 encoded string. For example, if 'integer_value' is set to\n123456789, the number of bytes would be counted as 9, even though an\nint64 only holds up to 8 bytes of data.", - "type": "object", - "properties": { - "timeValue": { - "$ref": "GoogleTypeTimeOfDay" - }, - "integerValue": { - "type": "string", - "format": "int64" - }, - "stringValue": { - "type": "string" - }, - "dateValue": { - "$ref": "GoogleTypeDate" - }, - "timestampValue": { - "format": "google-datetime", - "type": "string" - }, - "booleanValue": { - "type": "boolean" - }, - "floatValue": { - "format": "double", - "type": "number" - } - }, - "id": "GooglePrivacyDlpV2beta2Value" - }, - "GooglePrivacyDlpV2beta2ImageRedactionConfig": { - "description": "Configuration for determining how redaction of images should occur.", - "type": "object", - "properties": { - "redactionColor": { - "$ref": "GooglePrivacyDlpV2beta2Color", - "description": "The color to use when redacting content from an image. If not specified,\nthe default is black." - }, - "redactAllText": { - "description": "If true, all text found in the image, regardless whether it matches an\ninfo_type, is redacted.", - "type": "boolean" - }, - "infoType": { - "$ref": "GooglePrivacyDlpV2beta2InfoType", - "description": "Only one per info_type should be provided per request. If not\nspecified, and redact_all_text is false, the DLP API will redact all\ntext that it matches against all info_types that are found, but not\nspecified in another ImageRedactionConfig." - } - }, - "id": "GooglePrivacyDlpV2beta2ImageRedactionConfig" - }, - "GooglePrivacyDlpV2beta2RequestedOptions": { - "properties": { - "snapshotInspectTemplate": { - "$ref": "GooglePrivacyDlpV2beta2InspectTemplate", - "description": "If run with an inspect template, a snapshot of it's state at the time of\nthis run." - }, - "jobConfig": { - "$ref": "GooglePrivacyDlpV2beta2InspectJobConfig" - } - }, - "id": "GooglePrivacyDlpV2beta2RequestedOptions", "type": "object" }, - "GoogleTypeDate": { - "properties": { - "month": { - "description": "Month of year. Must be from 1 to 12.", - "format": "int32", - "type": "integer" - }, - "year": { - "description": "Year of date. Must be from 1 to 9999, or 0 if specifying a date without\na year.", - "format": "int32", - "type": "integer" - }, - "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" - } - }, - "id": "GoogleTypeDate", - "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`.", - "type": "object" - }, - "GooglePrivacyDlpV2beta2ListInfoTypesResponse": { - "description": "Response to the ListInfoTypes request.", - "type": "object", - "properties": { - "infoTypes": { - "description": "Set of sensitive infoTypes.", - "type": "array", - "items": { - "$ref": "GooglePrivacyDlpV2beta2InfoTypeDescription" - } - } - }, - "id": "GooglePrivacyDlpV2beta2ListInfoTypesResponse" - }, - "GooglePrivacyDlpV2beta2FileSet": { - "id": "GooglePrivacyDlpV2beta2FileSet", - "description": "Set of files to scan.", - "type": "object", - "properties": { - "url": { - "description": "The url, in the format `gs://\u003cbucket\u003e/\u003cpath\u003e`. Trailing wildcard in the\npath is allowed.", - "type": "string" - } - } - }, - "GooglePrivacyDlpV2beta1CustomInfoType": { - "description": "Custom information type provided by the user. Used to find domain-specific\nsensitive information configurable to the data in question.", - "type": "object", - "properties": { - "infoType": { - "$ref": "GooglePrivacyDlpV2beta1InfoType", - "description": "Info type configuration. All custom info types must have configurations\nthat do not conflict with built-in info types or other custom info types." - }, - "dictionary": { - "$ref": "GooglePrivacyDlpV2beta1Dictionary", - "description": "Dictionary-based custom info type." - }, - "surrogateType": { - "$ref": "GooglePrivacyDlpV2beta1SurrogateType", - "description": "Surrogate info type." - } - }, - "id": "GooglePrivacyDlpV2beta1CustomInfoType" - }, - "GooglePrivacyDlpV2beta1EntityId": { - "description": "An entity in a dataset is a field or set of fields that correspond to a\nsingle person. For example, in medical records the `EntityId` might be\na patient identifier, or for financial records it might be an account\nidentifier. This message is used when generalizations or analysis must be\nconsistent across multiple rows pertaining to the same entity.", - "type": "object", - "properties": { - "field": { - "$ref": "GooglePrivacyDlpV2beta1FieldId", - "description": "Composite key indicating which field contains the entity identifier." - } - }, - "id": "GooglePrivacyDlpV2beta1EntityId" - }, - "GooglePrivacyDlpV2beta1AuxiliaryTable": { - "description": "An auxiliary table contains statistical information on the relative\nfrequency of different quasi-identifiers values. It has one or several\nquasi-identifiers columns, and one column that indicates the relative\nfrequency of each quasi-identifier tuple.\nIf a tuple is present in the data but not in the auxiliary table, the\ncorresponding relative frequency is assumed to be zero (and thus, the\ntuple is highly reidentifiable).", - "type": "object", - "properties": { - "table": { - "description": "Auxiliary table location. [required]", - "$ref": "GooglePrivacyDlpV2beta1BigQueryTable" - }, - "quasiIds": { - "description": "Quasi-identifier columns. [required]", - "type": "array", - "items": { - "$ref": "GooglePrivacyDlpV2beta1QuasiIdField" - } - }, - "relativeFrequency": { - "description": "The relative frequency column must contain a floating-point number\nbetween 0 and 1 (inclusive). Null values are assumed to be zero.\n[required]", - "$ref": "GooglePrivacyDlpV2beta1FieldId" - } - }, - "id": "GooglePrivacyDlpV2beta1AuxiliaryTable" - }, - "GooglePrivacyDlpV2beta1KMapEstimationResult": { - "description": "Result of the reidentifiability analysis. Note that these results are an\nestimation, not exact values.", - "type": "object", - "properties": { - "kMapEstimationHistogram": { - "type": "array", - "items": { - "$ref": "GooglePrivacyDlpV2beta1KMapEstimationHistogramBucket" - }, - "description": "The intervals [min_anonymity, max_anonymity] do not overlap. If a value\ndoesn't correspond to any such interval, the associated frequency is\nzero. For example, the following records:\n {min_anonymity: 1, max_anonymity: 1, frequency: 17}\n {min_anonymity: 2, max_anonymity: 3, frequency: 42}\n {min_anonymity: 5, max_anonymity: 10, frequency: 99}\nmean that there are no record with an estimated anonymity of 4, 5, or\nlarger than 10." - } - }, - "id": "GooglePrivacyDlpV2beta1KMapEstimationResult" - }, - "GoogleRpcStatus": { - "id": "GoogleRpcStatus", - "description": "The `Status` type defines a logical error model that is suitable for different\nprogramming environments, including REST APIs and RPC APIs. It is used by\n[gRPC](https://github.com/grpc). The error model is designed to be:\n\n- Simple to use and understand for most users\n- Flexible enough to meet unexpected needs\n\n# Overview\n\nThe `Status` message contains three pieces of data: error code, error message,\nand error details. The error code should be an enum value of\ngoogle.rpc.Code, but it may accept additional error codes if needed. The\nerror message should be a developer-facing English message that helps\ndevelopers *understand* and *resolve* the error. If a localized user-facing\nerror message is needed, put the localized message in the error details or\nlocalize it in the client. The optional error details may contain arbitrary\ninformation about the error. There is a predefined set of error detail types\nin the package `google.rpc` that can be used for common error conditions.\n\n# Language mapping\n\nThe `Status` message is the logical representation of the error model, but it\nis not necessarily the actual wire format. When the `Status` message is\nexposed in different client libraries and different wire protocols, it can be\nmapped differently. For example, it will likely be mapped to some exceptions\nin Java, but more likely mapped to some error codes in C.\n\n# Other uses\n\nThe error model and the `Status` message can be used in a variety of\nenvironments, either with or without APIs, to provide a\nconsistent developer experience across different environments.\n\nExample uses of this error model include:\n\n- Partial errors. If a service needs to return partial errors to the client,\n it may embed the `Status` in the normal response to indicate the partial\n errors.\n\n- Workflow errors. A typical workflow has multiple steps. Each step may\n have a `Status` message for error reporting.\n\n- Batch operations. If a client uses batch request and batch response, the\n `Status` message should be used directly inside batch response, one for\n each error sub-response.\n\n- Asynchronous operations. If an API call embeds asynchronous operation\n results in its response, the status of those operations should be\n represented directly using the `Status` message.\n\n- Logging. If some API errors are stored in logs, the message `Status` could\n be used directly after any stripping needed for security/privacy reasons.", - "type": "object", - "properties": { - "message": { - "type": "string", - "description": "A developer-facing error message, which should be in English. Any\nuser-facing error message should be localized and sent in the\ngoogle.rpc.Status.details field, or localized by the client." - }, - "details": { - "description": "A list of messages that carry the error details. There is a common set of\nmessage types for APIs to use.", - "type": "array", - "items": { - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - }, - "type": "object" - } - }, - "code": { - "description": "The status code, which should be an enum value of google.rpc.Code.", - "format": "int32", - "type": "integer" - } - } - }, - "GooglePrivacyDlpV2beta2CreateDeidentifyTemplateRequest": { - "properties": { - "templateId": { - "type": "string", - "description": "The template id can contain uppercase and lowercase letters,\nnumbers, and hyphens; that is, it must match the regular\nexpression: `[a-zA-Z\\\\d-]+`. The maximum length is 100\ncharacters. Can be empty to allow the system to generate one." - }, - "deidentifyTemplate": { - "$ref": "GooglePrivacyDlpV2beta2DeidentifyTemplate", - "description": "The DeidentifyTemplate to create." - } - }, - "id": "GooglePrivacyDlpV2beta2CreateDeidentifyTemplateRequest", - "description": "Request message for CreateDeidentifyTemplate.", - "type": "object" - }, - "GooglePrivacyDlpV2beta2RedactImageRequest": { - "description": "Request to search for potentially sensitive info in a list of items\nand replace it with a default or provided content.", - "type": "object", - "properties": { - "imageType": { - "description": "Type of the content, as defined in Content-Type HTTP header.\nSupported types are: PNG, JPEG, SVG, & BMP.", - "type": "string" - }, - "imageRedactionConfigs": { - "description": "The configuration for specifying what content to redact from images.", - "type": "array", - "items": { - "$ref": "GooglePrivacyDlpV2beta2ImageRedactionConfig" - } - }, - "inspectConfig": { - "$ref": "GooglePrivacyDlpV2beta2InspectConfig", - "description": "Configuration for the inspector." - }, - "imageData": { - "type": "string", - "description": "The bytes of the image to redact.", - "format": "byte" - } - }, - "id": "GooglePrivacyDlpV2beta2RedactImageRequest" - }, - "GooglePrivacyDlpV2beta1KMapEstimationQuasiIdValues": { - "description": "A tuple of values for the quasi-identifier columns.", - "type": "object", - "properties": { - "quasiIdsValues": { - "description": "The quasi-identifier values.", - "type": "array", - "items": { - "$ref": "GooglePrivacyDlpV2beta1Value" - } - }, - "estimatedAnonymity": { - "description": "The estimated anonymity for these quasi-identifier values.", - "format": "int64", - "type": "string" - } - }, - "id": "GooglePrivacyDlpV2beta1KMapEstimationQuasiIdValues" - }, - "GooglePrivacyDlpV2beta2ContentItem": { - "description": "Container structure for the content to inspect.", - "type": "object", - "properties": { - "type": { - "description": "Type of the content, as defined in Content-Type HTTP header.\nSupported types are: all \"text\" types, octet streams, PNG images,\nJPEG images.", - "type": "string" - }, - "value": { - "description": "String data to inspect or redact.", - "type": "string" - }, - "table": { - "$ref": "GooglePrivacyDlpV2beta2Table", - "description": "Structured content for inspection." - }, - "data": { - "description": "Content data to inspect or redact.", - "format": "byte", - "type": "string" - } - }, - "id": "GooglePrivacyDlpV2beta2ContentItem" - }, - "GooglePrivacyDlpV2beta2WordList": { - "description": "Message defining a list of words or phrases to search for in the data.", - "type": "object", - "properties": { - "words": { - "description": "Words or phrases defining the dictionary. The dictionary must contain\nat least one phrase and every phrase must contain at least 2 characters\nthat are letters or digits. [required]", - "type": "array", - "items": { - "type": "string" - } - } - }, - "id": "GooglePrivacyDlpV2beta2WordList" - }, - "GooglePrivacyDlpV2beta2CategoricalStatsResult": { - "type": "object", - "properties": { - "valueFrequencyHistogramBuckets": { - "description": "Histogram of value frequencies in the column.", - "type": "array", - "items": { - "$ref": "GooglePrivacyDlpV2beta2CategoricalStatsHistogramBucket" - } - } - }, - "id": "GooglePrivacyDlpV2beta2CategoricalStatsResult", - "description": "Result of the categorical stats computation." - }, - "GooglePrivacyDlpV2beta2Key": { - "description": "A unique identifier for a Datastore entity.\nIf a key's partition ID or any of its path kinds or names are\nreserved/read-only, the key is reserved/read-only.\nA reserved/read-only key is forbidden in certain documented contexts.", - "type": "object", - "properties": { - "path": { - "description": "The entity path.\nAn entity path consists of one or more elements composed of a kind and a\nstring or numerical identifier, which identify entities. The first\nelement identifies a _root entity_, the second element identifies\na _child_ of the root entity, the third element identifies a child of the\nsecond entity, and so forth. The entities identified by all prefixes of\nthe path are called the element's _ancestors_.\n\nA path can never be empty, and a path can have at most 100 elements.", - "type": "array", - "items": { - "$ref": "GooglePrivacyDlpV2beta2PathElement" - } - }, - "partitionId": { - "$ref": "GooglePrivacyDlpV2beta2PartitionId", - "description": "Entities are partitioned into subsets, currently identified by a project\nID and namespace ID.\nQueries are scoped to a single partition." - } - }, - "id": "GooglePrivacyDlpV2beta2Key" - }, - "GooglePrivacyDlpV2beta2ReplaceWithInfoTypeConfig": { - "description": "Replace each matching finding with the name of the info_type.", - "type": "object", - "properties": {}, - "id": "GooglePrivacyDlpV2beta2ReplaceWithInfoTypeConfig" - }, - "GooglePrivacyDlpV2beta1BigQueryTable": { - "description": "Message defining the location of a BigQuery table. A table is uniquely\nidentified by its project_id, dataset_id, and table_name. Within a query\na table is often referenced with a string in the format of:\n`\u003cproject_id\u003e:\u003cdataset_id\u003e.\u003ctable_id\u003e` or\n`\u003cproject_id\u003e.\u003cdataset_id\u003e.\u003ctable_id\u003e`.", - "type": "object", - "properties": { - "tableId": { - "description": "Name of the table.", - "type": "string" - }, - "projectId": { - "description": "The Google Cloud Platform project ID of the project containing the table.\nIf omitted, project ID is inferred from the API call.", - "type": "string" - }, - "datasetId": { - "description": "Dataset ID of the table.", - "type": "string" - } - }, - "id": "GooglePrivacyDlpV2beta1BigQueryTable" - }, - "GooglePrivacyDlpV2beta2FieldTransformation": { - "description": "The transformation to apply to the field.", - "type": "object", - "properties": { - "condition": { - "$ref": "GooglePrivacyDlpV2beta2RecordCondition", - "description": "Only apply the transformation if the condition evaluates to true for the\ngiven `RecordCondition`. The conditions are allowed to reference fields\nthat are not used in the actual transformation. [optional]\n\nExample Use Cases:\n\n- Apply a different bucket transformation to an age column if the zip code\ncolumn for the same record is within a specific range.\n- Redact a field if the date of birth field is greater than 85." - }, - "infoTypeTransformations": { - "description": "Treat the contents of the field as free text, and selectively\ntransform content that matches an `InfoType`.", - "$ref": "GooglePrivacyDlpV2beta2InfoTypeTransformations" - }, - "fields": { - "description": "Input field(s) to apply the transformation to. [required]", - "type": "array", - "items": { - "$ref": "GooglePrivacyDlpV2beta2FieldId" - } - }, - "primitiveTransformation": { - "description": "Apply the transformation to the entire field.", - "$ref": "GooglePrivacyDlpV2beta2PrimitiveTransformation" - } - }, - "id": "GooglePrivacyDlpV2beta2FieldTransformation" - }, - "GooglePrivacyDlpV2beta2PathElement": { - "description": "A (kind, ID/name) pair used to construct a key path.\n\nIf either name or ID is set, the element is complete.\nIf neither is set, the element is incomplete.", - "type": "object", - "properties": { - "id": { - "description": "The auto-allocated ID of the entity.\nNever equal to zero. Values less than zero are discouraged and may not\nbe supported in the future.", - "format": "int64", - "type": "string" - }, - "name": { - "type": "string", - "description": "The name of the entity.\nA name matching regex `__.*__` is reserved/read-only.\nA name must not be more than 1500 bytes when UTF-8 encoded.\nCannot be `\"\"`." - }, - "kind": { - "description": "The kind of the entity.\nA kind matching regex `__.*__` is reserved/read-only.\nA kind must not contain more than 1500 bytes when UTF-8 encoded.\nCannot be `\"\"`.", - "type": "string" - } - }, - "id": "GooglePrivacyDlpV2beta2PathElement" - }, - "GooglePrivacyDlpV2beta2RecordSuppression": { - "description": "Configuration to suppress records whose suppression conditions evaluate to\ntrue.", - "type": "object", - "properties": { - "condition": { - "$ref": "GooglePrivacyDlpV2beta2RecordCondition", - "description": "A condition that when it evaluates to true will result in the record being\nevaluated to be suppressed from the transformed content." - } - }, - "id": "GooglePrivacyDlpV2beta2RecordSuppression" - }, - "GooglePrivacyDlpV2beta1KindExpression": { - "properties": { - "name": { - "description": "The name of the kind.", - "type": "string" - } - }, - "id": "GooglePrivacyDlpV2beta1KindExpression", - "description": "A representation of a Datastore kind.", - "type": "object" - }, - "GooglePrivacyDlpV2beta2NumericalStatsConfig": { - "type": "object", - "properties": { - "field": { - "description": "Field to compute numerical stats on. Supported types are\ninteger, float, date, datetime, timestamp, time.", - "$ref": "GooglePrivacyDlpV2beta2FieldId" - } - }, - "id": "GooglePrivacyDlpV2beta2NumericalStatsConfig", - "description": "Compute numerical stats over an individual column, including\nmin, max, and quantiles." - }, - "GooglePrivacyDlpV2beta2OutputStorageConfig": { - "type": "object", - "properties": { - "table": { - "$ref": "GooglePrivacyDlpV2beta2BigQueryTable", - "description": "Store findings in a new table in an existing dataset. If table_id is not\nset a new one will be generated for you with the following format:\ndlp_googleapis_yyyy_mm_dd_[dlp_job_id]. Pacific timezone will be used for\ngenerating the date details." - } - }, - "id": "GooglePrivacyDlpV2beta2OutputStorageConfig", - "description": "Cloud repository for storing output." - }, - "GooglePrivacyDlpV2beta2InfoTypeLimit": { - "description": "Max findings configuration per infoType, per content item or long\nrunning DlpJob.", - "type": "object", - "properties": { - "maxFindings": { - "type": "integer", - "description": "Max findings limit for the given infoType.", - "format": "int32" - }, - "infoType": { - "description": "Type of information the findings limit applies to. Only one limit per\ninfo_type should be provided. If InfoTypeLimit does not have an\ninfo_type, the DLP API applies the limit against all info_types that\nare found but not specified in another InfoTypeLimit.", - "$ref": "GooglePrivacyDlpV2beta2InfoType" - } - }, - "id": "GooglePrivacyDlpV2beta2InfoTypeLimit" - }, - "GooglePrivacyDlpV2beta1FileSet": { - "description": "Set of files to scan.", - "type": "object", - "properties": { - "url": { - "description": "The url, in the format `gs://\u003cbucket\u003e/\u003cpath\u003e`. Trailing wildcard in the\npath is allowed.", - "type": "string" - } - }, - "id": "GooglePrivacyDlpV2beta1FileSet" - }, - "GooglePrivacyDlpV2beta2InfoTypeStatistics": { - "type": "object", - "properties": { - "infoType": { - "$ref": "GooglePrivacyDlpV2beta2InfoType", - "description": "The type of finding this stat is for." - }, - "count": { - "description": "Number of findings for this infoType.", - "format": "int64", - "type": "string" - } - }, - "id": "GooglePrivacyDlpV2beta2InfoTypeStatistics", - "description": "Statistics regarding a specific InfoType." - }, - "GooglePrivacyDlpV2beta2LDiversityConfig": { - "properties": { - "sensitiveAttribute": { - "$ref": "GooglePrivacyDlpV2beta2FieldId", - "description": "Sensitive field for computing the l-value." - }, - "quasiIds": { - "description": "Set of quasi-identifiers indicating how equivalence classes are\ndefined for the l-diversity computation. When multiple fields are\nspecified, they are considered a single composite key.", - "type": "array", - "items": { - "$ref": "GooglePrivacyDlpV2beta2FieldId" - } - } - }, - "id": "GooglePrivacyDlpV2beta2LDiversityConfig", - "description": "l-diversity metric, used for analysis of reidentification risk.", - "type": "object" - }, - "GooglePrivacyDlpV2beta2RecordTransformations": { - "description": "A type of transformation that is applied over structured data such as a\ntable.", - "type": "object", - "properties": { - "recordSuppressions": { - "description": "Configuration defining which records get suppressed entirely. Records that\nmatch any suppression rule are omitted from the output [optional].", - "type": "array", - "items": { - "$ref": "GooglePrivacyDlpV2beta2RecordSuppression" - } - }, - "fieldTransformations": { - "description": "Transform the record by applying various field transformations.", - "type": "array", - "items": { - "$ref": "GooglePrivacyDlpV2beta2FieldTransformation" - } - } - }, - "id": "GooglePrivacyDlpV2beta2RecordTransformations" - }, - "GooglePrivacyDlpV2beta2Table": { - "description": "Structured content to inspect. Up to 50,000 `Value`s per request allowed.", - "type": "object", - "properties": { - "headers": { - "type": "array", - "items": { - "$ref": "GooglePrivacyDlpV2beta2FieldId" - } - }, - "rows": { - "type": "array", - "items": { - "$ref": "GooglePrivacyDlpV2beta2Row" - } - } - }, - "id": "GooglePrivacyDlpV2beta2Table" - }, "GooglePrivacyDlpV2beta1KAnonymityResult": { - "id": "GooglePrivacyDlpV2beta1KAnonymityResult", "description": "Result of the k-anonymity computation.", - "type": "object", + "id": "GooglePrivacyDlpV2beta1KAnonymityResult", "properties": { "equivalenceClassHistogramBuckets": { "description": "Histogram of k-anonymity equivalence classes.", - "type": "array", "items": { "$ref": "GooglePrivacyDlpV2beta1KAnonymityHistogramBucket" - } - } - } - }, - "GooglePrivacyDlpV2beta1CategoricalStatsHistogramBucket": { - "description": "Histogram bucket of value frequencies in the column.", - "type": "object", - "properties": { - "valueFrequencyLowerBound": { - "description": "Lower bound on the value frequency of the values in this bucket.", - "format": "int64", - "type": "string" - }, - "bucketValues": { - "description": "Sample of value frequencies in this bucket. The total number of\nvalues returned per bucket is capped at 20.", - "type": "array", - "items": { - "$ref": "GooglePrivacyDlpV2beta1ValueFrequency" - } - }, - "bucketSize": { - "description": "Total number of records in this bucket.", - "format": "int64", - "type": "string" - }, - "valueFrequencyUpperBound": { - "type": "string", - "description": "Upper bound on the value frequency of the values in this bucket.", - "format": "int64" + }, + "type": "array" } }, - "id": "GooglePrivacyDlpV2beta1CategoricalStatsHistogramBucket" + "type": "object" }, - "GooglePrivacyDlpV2beta2SummaryResult": { - "description": "A collection that informs the user the number of times a particular\n`TransformationResultCode` and error details occurred.", - "type": "object", - "properties": { - "details": { - "description": "A place for warnings or errors to show up if a transformation didn't\nwork as expected.", - "type": "string" - }, - "count": { - "format": "int64", - "type": "string" - }, - "code": { - "type": "string", - "enumDescriptions": [ - "", - "", - "" - ], - "enum": [ - "TRANSFORMATION_RESULT_CODE_UNSPECIFIED", - "SUCCESS", - "ERROR" - ] - } - }, - "id": "GooglePrivacyDlpV2beta2SummaryResult" - }, - "GooglePrivacyDlpV2beta1KAnonymityConfig": { - "description": "k-anonymity metric, used for analysis of reidentification risk.", - "type": "object", - "properties": { - "entityId": { - "$ref": "GooglePrivacyDlpV2beta1EntityId", - "description": "Optional message indicating that each distinct entity_id should not\ncontribute to the k-anonymity count more than once per equivalence class.\nIf an entity_id appears on several rows with different quasi-identifier\ntuples, it will contribute to each count exactly once.\n\nThis can lead to unexpected results. Consider a table where ID 1 is\nassociated to quasi-identifier \"foo\", ID 2 to \"bar\", and ID 3 to *both*\nquasi-identifiers \"foo\" and \"bar\" (on separate rows), and where this ID\nis used as entity_id. Then, the anonymity value associated to ID 3 will\nbe 2, even if it is the only ID to be associated to both values \"foo\" and\n\"bar\"." - }, - "quasiIds": { - "description": "Set of fields to compute k-anonymity over. When multiple fields are\nspecified, they are considered a single composite key. Structs and\nrepeated data types are not supported; however, nested fields are\nsupported so long as they are not structs themselves or nested within\na repeated field.", - "type": "array", - "items": { - "$ref": "GooglePrivacyDlpV2beta1FieldId" - } - } - }, - "id": "GooglePrivacyDlpV2beta1KAnonymityConfig" - }, - "GooglePrivacyDlpV2beta2Range": { - "type": "object", - "properties": { - "start": { - "type": "string", - "description": "Index of the first character of the range (inclusive).", - "format": "int64" - }, - "end": { - "description": "Index of the last character of the range (exclusive).", - "format": "int64", - "type": "string" - } - }, - "id": "GooglePrivacyDlpV2beta2Range", - "description": "Generic half-open interval [start, end)" - }, - "GooglePrivacyDlpV2beta2DeidentifyConfig": { - "description": "The configuration that controls how the data will change.", - "type": "object", - "properties": { - "recordTransformations": { - "description": "Treat the dataset as structured. Transformations can be applied to\nspecific locations within structured datasets, such as transforming\na column within a table.", - "$ref": "GooglePrivacyDlpV2beta2RecordTransformations" - }, - "infoTypeTransformations": { - "$ref": "GooglePrivacyDlpV2beta2InfoTypeTransformations", - "description": "Treat the dataset as free-form text and apply the same free text\ntransformation everywhere." - } - }, - "id": "GooglePrivacyDlpV2beta2DeidentifyConfig" - }, - "GooglePrivacyDlpV2beta2KMapEstimationConfig": { + "GooglePrivacyDlpV2beta1KMapEstimationConfig": { "description": "Reidentifiability metric. This corresponds to a risk model similar to what\nis called \"journalist risk\" in the literature, except the attack dataset is\nstatistically modeled instead of being perfectly known. This can be done\nusing publicly available data (like the US Census), or using a custom\nstatistical model (indicated as one or several BigQuery tables), or by\nextrapolating from the distribution of values in the input dataset.", - "type": "object", + "id": "GooglePrivacyDlpV2beta1KMapEstimationConfig", "properties": { - "regionCode": { - "description": "ISO 3166-1 alpha-2 region code to use in the statistical modeling.\nRequired if no column is tagged with a region-specific InfoType (like\nUS_ZIP_5) or a region code.", - "type": "string" - }, "auxiliaryTables": { "description": "Several auxiliary tables can be used in the analysis. Each custom_tag\nused to tag a quasi-identifiers column must appear in exactly one column\nof one auxiliary table.", - "type": "array", "items": { - "$ref": "GooglePrivacyDlpV2beta2AuxiliaryTable" - } + "$ref": "GooglePrivacyDlpV2beta1AuxiliaryTable" + }, + "type": "array" }, "quasiIds": { "description": "Fields considered to be quasi-identifiers. No two columns can have the\nsame tag. [required]", - "type": "array", "items": { - "$ref": "GooglePrivacyDlpV2beta2TaggedField" - } + "$ref": "GooglePrivacyDlpV2beta1TaggedField" + }, + "type": "array" + }, + "regionCode": { + "description": "ISO 3166-1 alpha-2 region code to use in the statistical modeling.\nRequired if no column is tagged with a region-specific InfoType (like\nUS_ZIP_5) or a region code.", + "type": "string" } }, - "id": "GooglePrivacyDlpV2beta2KMapEstimationConfig" - }, - "GooglePrivacyDlpV2beta2BucketingConfig": { - "properties": { - "buckets": { - "description": "Set of buckets. Ranges must be non-overlapping.", - "type": "array", - "items": { - "$ref": "GooglePrivacyDlpV2beta2Bucket" - } - } - }, - "id": "GooglePrivacyDlpV2beta2BucketingConfig", - "description": "Generalization function that buckets values based on ranges. The ranges and\nreplacement values are dynamically provided by the user for custom behavior,\nsuch as 1-30 -\u003e LOW 31-65 -\u003e MEDIUM 66-100 -\u003e HIGH\nThis can be used on\ndata of type: number, long, string, timestamp.\nIf the bound `Value` type differs from the type of data being transformed, we\nwill first attempt converting the type of the data to be transformed to match\nthe type of the bound before comparing.", "type": "object" }, - "GooglePrivacyDlpV2beta2PrivacyMetric": { - "description": "Privacy metric to compute for reidentification risk analysis.", - "type": "object", - "properties": { - "numericalStatsConfig": { - "$ref": "GooglePrivacyDlpV2beta2NumericalStatsConfig" - }, - "kAnonymityConfig": { - "$ref": "GooglePrivacyDlpV2beta2KAnonymityConfig" - }, - "categoricalStatsConfig": { - "$ref": "GooglePrivacyDlpV2beta2CategoricalStatsConfig" - }, - "kMapEstimationConfig": { - "$ref": "GooglePrivacyDlpV2beta2KMapEstimationConfig" - }, - "lDiversityConfig": { - "$ref": "GooglePrivacyDlpV2beta2LDiversityConfig" - } - }, - "id": "GooglePrivacyDlpV2beta2PrivacyMetric" - }, - "GooglePrivacyDlpV2beta2KMapEstimationHistogramBucket": { + "GooglePrivacyDlpV2beta1KMapEstimationHistogramBucket": { "description": "A KMapEstimationHistogramBucket message with the following values:\n min_anonymity: 3\n max_anonymity: 5\n frequency: 42\nmeans that there are 42 records whose quasi-identifier values correspond\nto 3, 4 or 5 people in the overlying population. An important particular\ncase is when min_anonymity = max_anonymity = 1: the frequency field then\ncorresponds to the number of uniquely identifiable records.", - "type": "object", + "id": "GooglePrivacyDlpV2beta1KMapEstimationHistogramBucket", "properties": { - "bucketValues": { - "description": "Sample of quasi-identifier tuple values in this bucket. The total\nnumber of classes returned per bucket is capped at 20.", - "type": "array", - "items": { - "$ref": "GooglePrivacyDlpV2beta2KMapEstimationQuasiIdValues" - } - }, - "minAnonymity": { - "description": "Always positive.", + "bucketSize": { + "description": "Number of records within these anonymity bounds.", "format": "int64", "type": "string" }, + "bucketValues": { + "description": "Sample of quasi-identifier tuple values in this bucket. The total\nnumber of classes returned per bucket is capped at 20.", + "items": { + "$ref": "GooglePrivacyDlpV2beta1KMapEstimationQuasiIdValues" + }, + "type": "array" + }, "maxAnonymity": { "description": "Always greater than or equal to min_anonymity.", "format": "int64", "type": "string" }, - "bucketSize": { - "type": "string", - "description": "Number of records within these anonymity bounds.", - "format": "int64" + "minAnonymity": { + "description": "Always positive.", + "format": "int64", + "type": "string" } }, - "id": "GooglePrivacyDlpV2beta2KMapEstimationHistogramBucket" + "type": "object" }, - "GooglePrivacyDlpV2beta2KmsWrappedCryptoKey": { - "description": "Include to use an existing data crypto key wrapped by KMS.\nAuthorization requires the following IAM permissions when sending a request\nto perform a crypto transformation using a kms-wrapped crypto key:\ndlp.kms.encrypt", - "type": "object", + "GooglePrivacyDlpV2beta1KMapEstimationQuasiIdValues": { + "description": "A tuple of values for the quasi-identifier columns.", + "id": "GooglePrivacyDlpV2beta1KMapEstimationQuasiIdValues", "properties": { - "wrappedKey": { - "description": "The wrapped data crypto key. [required]", - "format": "byte", + "estimatedAnonymity": { + "description": "The estimated anonymity for these quasi-identifier values.", + "format": "int64", "type": "string" }, - "cryptoKeyName": { - "type": "string", - "description": "The resource name of the KMS CryptoKey to use for unwrapping. [required]" + "quasiIdsValues": { + "description": "The quasi-identifier values.", + "items": { + "$ref": "GooglePrivacyDlpV2beta1Value" + }, + "type": "array" } }, - "id": "GooglePrivacyDlpV2beta2KmsWrappedCryptoKey" + "type": "object" + }, + "GooglePrivacyDlpV2beta1KMapEstimationResult": { + "description": "Result of the reidentifiability analysis. Note that these results are an\nestimation, not exact values.", + "id": "GooglePrivacyDlpV2beta1KMapEstimationResult", + "properties": { + "kMapEstimationHistogram": { + "description": "The intervals [min_anonymity, max_anonymity] do not overlap. If a value\ndoesn't correspond to any such interval, the associated frequency is\nzero. For example, the following records:\n {min_anonymity: 1, max_anonymity: 1, frequency: 17}\n {min_anonymity: 2, max_anonymity: 3, frequency: 42}\n {min_anonymity: 5, max_anonymity: 10, frequency: 99}\nmean that there are no record with an estimated anonymity of 4, 5, or\nlarger than 10.", + "items": { + "$ref": "GooglePrivacyDlpV2beta1KMapEstimationHistogramBucket" + }, + "type": "array" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1KindExpression": { + "description": "A representation of a Datastore kind.", + "id": "GooglePrivacyDlpV2beta1KindExpression", + "properties": { + "name": { + "description": "The name of the kind.", + "type": "string" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1LDiversityConfig": { + "description": "l-diversity metric, used for analysis of reidentification risk.", + "id": "GooglePrivacyDlpV2beta1LDiversityConfig", + "properties": { + "quasiIds": { + "description": "Set of quasi-identifiers indicating how equivalence classes are\ndefined for the l-diversity computation. When multiple fields are\nspecified, they are considered a single composite key.", + "items": { + "$ref": "GooglePrivacyDlpV2beta1FieldId" + }, + "type": "array" + }, + "sensitiveAttribute": { + "$ref": "GooglePrivacyDlpV2beta1FieldId", + "description": "Sensitive field for computing the l-value." + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1LDiversityEquivalenceClass": { + "description": "The set of columns' values that share the same l-diversity value.", + "id": "GooglePrivacyDlpV2beta1LDiversityEquivalenceClass", + "properties": { + "equivalenceClassSize": { + "description": "Size of the k-anonymity equivalence class.", + "format": "int64", + "type": "string" + }, + "numDistinctSensitiveValues": { + "description": "Number of distinct sensitive values in this equivalence class.", + "format": "int64", + "type": "string" + }, + "quasiIdsValues": { + "description": "Quasi-identifier values defining the k-anonymity equivalence\nclass. The order is always the same as the original request.", + "items": { + "$ref": "GooglePrivacyDlpV2beta1Value" + }, + "type": "array" + }, + "topSensitiveValues": { + "description": "Estimated frequencies of top sensitive values.", + "items": { + "$ref": "GooglePrivacyDlpV2beta1ValueFrequency" + }, + "type": "array" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1LDiversityHistogramBucket": { + "description": "Histogram bucket of sensitive value frequencies in the table.", + "id": "GooglePrivacyDlpV2beta1LDiversityHistogramBucket", + "properties": { + "bucketSize": { + "description": "Total number of records in this bucket.", + "format": "int64", + "type": "string" + }, + "bucketValues": { + "description": "Sample of equivalence classes in this bucket. The total number of\nclasses returned per bucket is capped at 20.", + "items": { + "$ref": "GooglePrivacyDlpV2beta1LDiversityEquivalenceClass" + }, + "type": "array" + }, + "sensitiveValueFrequencyLowerBound": { + "description": "Lower bound on the sensitive value frequencies of the equivalence\nclasses in this bucket.", + "format": "int64", + "type": "string" + }, + "sensitiveValueFrequencyUpperBound": { + "description": "Upper bound on the sensitive value frequencies of the equivalence\nclasses in this bucket.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1LDiversityResult": { + "description": "Result of the l-diversity computation.", + "id": "GooglePrivacyDlpV2beta1LDiversityResult", + "properties": { + "sensitiveValueFrequencyHistogramBuckets": { + "description": "Histogram of l-diversity equivalence class sensitive value frequencies.", + "items": { + "$ref": "GooglePrivacyDlpV2beta1LDiversityHistogramBucket" + }, + "type": "array" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1NumericalStatsConfig": { + "description": "Compute numerical stats over an individual column, including\nmin, max, and quantiles.", + "id": "GooglePrivacyDlpV2beta1NumericalStatsConfig", + "properties": { + "field": { + "$ref": "GooglePrivacyDlpV2beta1FieldId", + "description": "Field to compute numerical stats on. Supported types are\ninteger, float, date, datetime, timestamp, time." + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1NumericalStatsResult": { + "description": "Result of the numerical stats computation.", + "id": "GooglePrivacyDlpV2beta1NumericalStatsResult", + "properties": { + "maxValue": { + "$ref": "GooglePrivacyDlpV2beta1Value", + "description": "Maximum value appearing in the column." + }, + "minValue": { + "$ref": "GooglePrivacyDlpV2beta1Value", + "description": "Minimum value appearing in the column." + }, + "quantileValues": { + "description": "List of 99 values that partition the set of field values into 100 equal\nsized buckets.", + "items": { + "$ref": "GooglePrivacyDlpV2beta1Value" + }, + "type": "array" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1OutputStorageConfig": { + "description": "Cloud repository for storing output.", + "id": "GooglePrivacyDlpV2beta1OutputStorageConfig", + "properties": { + "storagePath": { + "$ref": "GooglePrivacyDlpV2beta1CloudStoragePath", + "description": "The path to a Google Cloud Storage location to store output.\nThe bucket must already exist and\nthe Google APIs service account for DLP must have write permission to\nwrite to the given bucket.\nResults are split over multiple csv files with each file name matching\nthe pattern \"[operation_id]_[count].csv\", for example\n`3094877188788974909_1.csv`. The `operation_id` matches the\nidentifier for the Operation, and the `count` is a counter used for\ntracking the number of files written.\n\nThe CSV file(s) contain the following columns regardless of storage type\nscanned:\n- id\n- info_type\n- likelihood\n- byte size of finding\n- quote\n- timestamp\n\nFor Cloud Storage the next columns are:\n\n- file_path\n- start_offset\n\nFor Cloud Datastore the next columns are:\n\n- project_id\n- namespace_id\n- path\n- column_name\n- offset\n\nFor BigQuery the next columns are:\n\n- row_number\n- project_id\n- dataset_id\n- table_id" + }, + "table": { + "$ref": "GooglePrivacyDlpV2beta1BigQueryTable", + "description": "Store findings in a new table in the dataset." + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1PartitionId": { + "description": "Datastore partition ID.\nA partition ID identifies a grouping of entities. The grouping is always\nby project and namespace, however the namespace ID may be empty.\n\nA partition ID contains several dimensions:\nproject ID and namespace ID.", + "id": "GooglePrivacyDlpV2beta1PartitionId", + "properties": { + "namespaceId": { + "description": "If not empty, the ID of the namespace to which the entities belong.", + "type": "string" + }, + "projectId": { + "description": "The ID of the project to which the entities belong.", + "type": "string" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1PrivacyMetric": { + "description": "Privacy metric to compute for reidentification risk analysis.", + "id": "GooglePrivacyDlpV2beta1PrivacyMetric", + "properties": { + "categoricalStatsConfig": { + "$ref": "GooglePrivacyDlpV2beta1CategoricalStatsConfig" + }, + "kAnonymityConfig": { + "$ref": "GooglePrivacyDlpV2beta1KAnonymityConfig" + }, + "kMapEstimationConfig": { + "$ref": "GooglePrivacyDlpV2beta1KMapEstimationConfig" + }, + "lDiversityConfig": { + "$ref": "GooglePrivacyDlpV2beta1LDiversityConfig" + }, + "numericalStatsConfig": { + "$ref": "GooglePrivacyDlpV2beta1NumericalStatsConfig" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1Projection": { + "description": "A representation of a Datastore property in a projection.", + "id": "GooglePrivacyDlpV2beta1Projection", + "properties": { + "property": { + "$ref": "GooglePrivacyDlpV2beta1PropertyReference", + "description": "The property to project." + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1PropertyReference": { + "description": "A reference to a property relative to the Datastore kind expressions.", + "id": "GooglePrivacyDlpV2beta1PropertyReference", + "properties": { + "name": { + "description": "The name of the property.\nIf name includes \".\"s, it may be interpreted as a property name path.", + "type": "string" + } + }, + "type": "object" }, "GooglePrivacyDlpV2beta1QuasiIdField": { "description": "A quasi-identifier column has a custom_tag, used to know which column\nin the data corresponds to which column in the statistical model.", - "type": "object", + "id": "GooglePrivacyDlpV2beta1QuasiIdField", "properties": { "customTag": { "type": "string" @@ -1320,306 +1967,111 @@ "$ref": "GooglePrivacyDlpV2beta1FieldId" } }, - "id": "GooglePrivacyDlpV2beta1QuasiIdField" - }, - "GooglePrivacyDlpV2beta2KAnonymityResult": { - "type": "object", - "properties": { - "equivalenceClassHistogramBuckets": { - "description": "Histogram of k-anonymity equivalence classes.", - "type": "array", - "items": { - "$ref": "GooglePrivacyDlpV2beta2KAnonymityHistogramBucket" - } - } - }, - "id": "GooglePrivacyDlpV2beta2KAnonymityResult", - "description": "Result of the k-anonymity computation." - }, - "GooglePrivacyDlpV2beta2Result": { - "type": "object", - "properties": { - "totalEstimatedBytes": { - "description": "Estimate of the number of bytes to process.", - "format": "int64", - "type": "string" - }, - "infoTypeStats": { - "description": "Statistics of how many instances of each info type were found during\ninspect job.", - "type": "array", - "items": { - "$ref": "GooglePrivacyDlpV2beta2InfoTypeStatistics" - } - }, - "processedBytes": { - "description": "Total size in bytes that were processed.", - "format": "int64", - "type": "string" - } - }, - "id": "GooglePrivacyDlpV2beta2Result" - }, - "GooglePrivacyDlpV2beta2CustomInfoType": { - "description": "Custom information type provided by the user. Used to find domain-specific\nsensitive information configurable to the data in question.", - "type": "object", - "properties": { - "infoType": { - "$ref": "GooglePrivacyDlpV2beta2InfoType", - "description": "Info type configuration. All custom info types must have configurations\nthat do not conflict with built-in info types or other custom info types." - }, - "dictionary": { - "description": "Dictionary-based custom info type.", - "$ref": "GooglePrivacyDlpV2beta2Dictionary" - }, - "surrogateType": { - "description": "Surrogate info type.", - "$ref": "GooglePrivacyDlpV2beta2SurrogateType" - } - }, - "id": "GooglePrivacyDlpV2beta2CustomInfoType" - }, - "GooglePrivacyDlpV2beta2DeidentifyContentResponse": { - "properties": { - "overview": { - "$ref": "GooglePrivacyDlpV2beta2TransformationOverview", - "description": "An overview of the changes that were made on the `item`." - }, - "item": { - "$ref": "GooglePrivacyDlpV2beta2ContentItem", - "description": "The de-identified item." - } - }, - "id": "GooglePrivacyDlpV2beta2DeidentifyContentResponse", - "description": "Results of de-identifying a ContentItem.", "type": "object" }, - "GooglePrivacyDlpV2beta1ValueFrequency": { - "description": "A value of a field, including its frequency.", - "type": "object", + "GooglePrivacyDlpV2beta1RiskAnalysisOperationMetadata": { + "description": "Metadata returned within the\n[`riskAnalysis.operations.get`](/dlp/docs/reference/rest/v2beta1/riskAnalysis.operations/get)\nfor risk analysis.", + "id": "GooglePrivacyDlpV2beta1RiskAnalysisOperationMetadata", "properties": { - "value": { - "description": "A value contained in the field in question.", - "$ref": "GooglePrivacyDlpV2beta1Value" - }, - "count": { - "description": "How many times the value is contained in the field.", - "format": "int64", + "createTime": { + "description": "The time which this request was started.", + "format": "google-datetime", "type": "string" + }, + "requestedPrivacyMetric": { + "$ref": "GooglePrivacyDlpV2beta1PrivacyMetric", + "description": "Privacy metric to compute." + }, + "requestedSourceTable": { + "$ref": "GooglePrivacyDlpV2beta1BigQueryTable", + "description": "Input dataset to compute metrics over." } }, - "id": "GooglePrivacyDlpV2beta1ValueFrequency" + "type": "object" + }, + "GooglePrivacyDlpV2beta1RiskAnalysisOperationResult": { + "description": "Result of a risk analysis\n[`Operation`](/dlp/docs/reference/rest/v2beta1/inspect.operations)\nrequest.", + "id": "GooglePrivacyDlpV2beta1RiskAnalysisOperationResult", + "properties": { + "categoricalStatsResult": { + "$ref": "GooglePrivacyDlpV2beta1CategoricalStatsResult" + }, + "kAnonymityResult": { + "$ref": "GooglePrivacyDlpV2beta1KAnonymityResult" + }, + "kMapEstimationResult": { + "$ref": "GooglePrivacyDlpV2beta1KMapEstimationResult" + }, + "lDiversityResult": { + "$ref": "GooglePrivacyDlpV2beta1LDiversityResult" + }, + "numericalStatsResult": { + "$ref": "GooglePrivacyDlpV2beta1NumericalStatsResult" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta1StorageConfig": { + "description": "Shared message indicating Cloud storage type.", + "id": "GooglePrivacyDlpV2beta1StorageConfig", + "properties": { + "bigQueryOptions": { + "$ref": "GooglePrivacyDlpV2beta1BigQueryOptions", + "description": "BigQuery options specification." + }, + "cloudStorageOptions": { + "$ref": "GooglePrivacyDlpV2beta1CloudStorageOptions", + "description": "Google Cloud Storage options specification." + }, + "datastoreOptions": { + "$ref": "GooglePrivacyDlpV2beta1DatastoreOptions", + "description": "Google Cloud Datastore options specification." + } + }, + "type": "object" }, "GooglePrivacyDlpV2beta1SurrogateType": { "description": "Message for detecting output from deidentification transformations\nsuch as\n[`CryptoReplaceFfxFpeConfig`](/dlp/docs/reference/rest/v2beta1/content/deidentify#CryptoReplaceFfxFpeConfig).\nThese types of transformations are\nthose that perform pseudonymization, thereby producing a \"surrogate\" as\noutput. This should be used in conjunction with a field on the\ntransformation such as `surrogate_info_type`. This custom info type does\nnot support the use of `detection_rules`.", - "type": "object", + "id": "GooglePrivacyDlpV2beta1SurrogateType", "properties": {}, - "id": "GooglePrivacyDlpV2beta1SurrogateType" + "type": "object" }, - "GooglePrivacyDlpV2beta2CryptoReplaceFfxFpeConfig": { - "description": "Replaces an identifier with a surrogate using FPE with the FFX\nmode of operation; however when used in the `ReidentifyContent` API method,\nit serves the opposite function by reversing the surrogate back into\nthe original identifier.\nThe identifier must be encoded as ASCII.\nFor a given crypto key and context, the same identifier will be\nreplaced with the same surrogate.\nIdentifiers must be at least two characters long.\nIn the case that the identifier is the empty string, it will be skipped.", - "type": "object", + "GooglePrivacyDlpV2beta1TaggedField": { + "description": "A column with a semantic tag attached.", + "id": "GooglePrivacyDlpV2beta1TaggedField", "properties": { - "customAlphabet": { - "description": "This is supported by mapping these to the alphanumeric characters\nthat the FFX mode natively supports. This happens before/after\nencryption/decryption.\nEach character listed must appear only once.\nNumber of characters must be in the range [2, 62].\nThis must be encoded as ASCII.\nThe order of characters does not matter.", + "customTag": { + "description": "A column can be tagged with a custom tag. In this case, the user must\nindicate an auxiliary table that contains statistical information on\nthe possible values of this column (below).", "type": "string" }, - "cryptoKey": { - "$ref": "GooglePrivacyDlpV2beta2CryptoKey", - "description": "The key used by the encryption algorithm. [required]" + "field": { + "$ref": "GooglePrivacyDlpV2beta1FieldId", + "description": "Identifies the column. [required]" }, - "context": { - "description": "The 'tweak', a context may be used for higher security since the same\nidentifier in two different contexts won't be given the same surrogate. If\nthe context is not set, a default tweak will be used.\n\nIf the context is set but:\n\n1. there is no record present when transforming a given value or\n1. the field is not present when transforming a given value,\n\na default tweak will be used.\n\nNote that case (1) is expected when an `InfoTypeTransformation` is\napplied to both structured and non-structured `ContentItem`s.\nCurrently, the referenced field may be of value type integer or string.\n\nThe tweak is constructed as a sequence of bytes in big endian byte order\nsuch that:\n\n- a 64 bit integer is encoded followed by a single byte of value 1\n- a string is encoded in UTF-8 format followed by a single byte of value\n å 2", - "$ref": "GooglePrivacyDlpV2beta2FieldId" - }, - "surrogateInfoType": { - "$ref": "GooglePrivacyDlpV2beta2InfoType", - "description": "The custom infoType to annotate the surrogate with.\nThis annotation will be applied to the surrogate by prefixing it with\nthe name of the custom infoType followed by the number of\ncharacters comprising the surrogate. The following scheme defines the\nformat: info_type_name(surrogate_character_count):surrogate\n\nFor example, if the name of custom infoType is 'MY_TOKEN_INFO_TYPE' and\nthe surrogate is 'abc', the full replacement value\nwill be: 'MY_TOKEN_INFO_TYPE(3):abc'\n\nThis annotation identifies the surrogate when inspecting content using the\ncustom infoType\n[`SurrogateType`](/dlp/docs/reference/rest/v2beta2/InspectConfig#surrogatetype).\nThis facilitates reversal of the surrogate when it occurs in free text.\n\nIn order for inspection to work properly, the name of this infoType must\nnot occur naturally anywhere in your data; otherwise, inspection may\nfind a surrogate that does not correspond to an actual identifier.\nTherefore, choose your custom infoType name carefully after considering\nwhat your data looks like. One way to select a name that has a high chance\nof yielding reliable detection is to include one or more unicode characters\nthat are highly improbable to exist in your data.\nFor example, assuming your data is entered from a regular ASCII keyboard,\nthe symbol with the hex code point 29DD might be used like so:\n⧝MY_TOKEN_TYPE" - }, - "commonAlphabet": { - "type": "string", - "enumDescriptions": [ - "", - "[0-9] (radix of 10)", - "[0-9A-F] (radix of 16)", - "[0-9A-Z] (radix of 36)", - "[0-9A-Za-z] (radix of 62)" - ], - "enum": [ - "FFX_COMMON_NATIVE_ALPHABET_UNSPECIFIED", - "NUMERIC", - "HEXADECIMAL", - "UPPER_CASE_ALPHA_NUMERIC", - "ALPHA_NUMERIC" - ] - }, - "radix": { - "description": "The native way to select the alphabet. Must be in the range [2, 62].", - "format": "int32", - "type": "integer" - } - }, - "id": "GooglePrivacyDlpV2beta2CryptoReplaceFfxFpeConfig" - }, - "GooglePrivacyDlpV2beta1InfoTypeLimit": { - "description": "Max findings configuration per info type, per content item or long running\noperation.", - "type": "object", - "properties": { - "maxFindings": { - "description": "Max findings limit for the given infoType.", - "format": "int32", - "type": "integer" + "inferred": { + "$ref": "GoogleProtobufEmpty", + "description": "If no semantic tag is indicated, we infer the statistical model from\nthe distribution of values in the input data" }, "infoType": { - "description": "Type of information the findings limit applies to. Only one limit per\ninfo_type should be provided. If InfoTypeLimit does not have an\ninfo_type, the DLP API applies the limit against all info_types that are\nfound but not specified in another InfoTypeLimit.", - "$ref": "GooglePrivacyDlpV2beta1InfoType" + "$ref": "GooglePrivacyDlpV2beta1InfoType", + "description": "A column can be tagged with a InfoType to use the relevant public\ndataset as a statistical model of population, if available. We\ncurrently support US ZIP codes, region codes, ages and genders." } }, - "id": "GooglePrivacyDlpV2beta1InfoTypeLimit" - }, - "GooglePrivacyDlpV2beta2FindingLimits": { - "type": "object", - "properties": { - "maxFindingsPerItem": { - "description": "Max number of findings that will be returned for each item scanned.", - "format": "int32", - "type": "integer" - }, - "maxFindingsPerRequest": { - "description": "Max total number of findings that will be returned per request/job.", - "format": "int32", - "type": "integer" - }, - "maxFindingsPerInfoType": { - "description": "Configuration of findings limit given for specified infoTypes.", - "type": "array", - "items": { - "$ref": "GooglePrivacyDlpV2beta2InfoTypeLimit" - } - } - }, - "id": "GooglePrivacyDlpV2beta2FindingLimits" - }, - "GooglePrivacyDlpV2beta2DlpJob": { - "id": "GooglePrivacyDlpV2beta2DlpJob", - "description": "Combines all of the information about a DLP job.", - "type": "object", - "properties": { - "startTime": { - "description": "Time when the job started.", - "format": "google-datetime", - "type": "string" - }, - "inspectDetails": { - "description": "Results from inspecting a data source.", - "$ref": "GooglePrivacyDlpV2beta2InspectDataSourceDetails" - }, - "errorResults": { - "description": "A stream of errors encountered running the job.", - "type": "array", - "items": { - "$ref": "GoogleRpcStatus" - } - }, - "createTime": { - "description": "Time when the job was created.", - "format": "google-datetime", - "type": "string" - }, - "state": { - "description": "State of a job.", - "type": "string", - "enumDescriptions": [ - "", - "The job has not yet started.", - "The job is currently running.", - "The job is no longer running.", - "The job was canceled before it could complete.", - "The job had an error and did not complete." - ], - "enum": [ - "JOB_STATE_UNSPECIFIED", - "PENDING", - "RUNNING", - "DONE", - "CANCELED", - "FAILED" - ] - }, - "riskDetails": { - "description": "Results from analyzing risk of a data source.", - "$ref": "GooglePrivacyDlpV2beta2AnalyzeDataSourceRiskDetails" - }, - "name": { - "description": "The server-assigned name.", - "type": "string" - }, - "type": { - "enumDescriptions": [ - "", - "The job inspected Google Cloud for sensitive data.", - "The job executed a Risk Analysis computation." - ], - "enum": [ - "DLP_JOB_TYPE_UNSPECIFIED", - "INSPECT_JOB", - "RISK_ANALYSIS_JOB" - ], - "description": "The type of job.", - "type": "string" - }, - "endTime": { - "description": "Time when the job finished.", - "format": "google-datetime", - "type": "string" - } - } - }, - "GooglePrivacyDlpV2beta1LDiversityHistogramBucket": { - "description": "Histogram bucket of sensitive value frequencies in the table.", - "type": "object", - "properties": { - "bucketSize": { - "description": "Total number of records in this bucket.", - "format": "int64", - "type": "string" - }, - "sensitiveValueFrequencyUpperBound": { - "description": "Upper bound on the sensitive value frequencies of the equivalence\nclasses in this bucket.", - "format": "int64", - "type": "string" - }, - "sensitiveValueFrequencyLowerBound": { - "description": "Lower bound on the sensitive value frequencies of the equivalence\nclasses in this bucket.", - "format": "int64", - "type": "string" - }, - "bucketValues": { - "type": "array", - "items": { - "$ref": "GooglePrivacyDlpV2beta1LDiversityEquivalenceClass" - }, - "description": "Sample of equivalence classes in this bucket. The total number of\nclasses returned per bucket is capped at 20." - } - }, - "id": "GooglePrivacyDlpV2beta1LDiversityHistogramBucket" - }, - "GooglePrivacyDlpV2beta2Dictionary": { - "description": "Custom information type based on a dictionary of words or phrases. This can\nbe used to match sensitive information specific to the data, such as a list\nof employee IDs or job titles.\n\nDictionary words are case-insensitive and all characters other than letters\nand digits in the unicode [Basic Multilingual\nPlane](https://en.wikipedia.org/wiki/Plane_%28Unicode%29#Basic_Multilingual_Plane)\nwill be replaced with whitespace when scanning for matches, so the\ndictionary phrase \"Sam Johnson\" will match all three phrases \"sam johnson\",\n\"Sam, Johnson\", and \"Sam (Johnson)\". Additionally, the characters\nsurrounding any match must be of a different type than the adjacent\ncharacters within the word, so letters must be next to non-letters and\ndigits next to non-digits. For example, the dictionary word \"jen\" will\nmatch the first three letters of the text \"jen123\" but will return no\nmatches for \"jennifer\".\n\nDictionary words containing a large number of characters that are not\nletters or digits may result in unexpected findings because such characters\nare treated as whitespace.", - "type": "object", - "properties": { - "wordList": { - "description": "List of words or phrases to search for.", - "$ref": "GooglePrivacyDlpV2beta2WordList" - } - }, - "id": "GooglePrivacyDlpV2beta2Dictionary" + "type": "object" }, "GooglePrivacyDlpV2beta1Value": { "description": "Set of primitive values supported by the system.\nNote that for the purposes of inspection or transformation, the number\nof bytes considered to comprise a 'Value' is based on its representation\nas a UTF-8 encoded string. For example, if 'integer_value' is set to\n123456789, the number of bytes would be counted as 9, even though an\nint64 only holds up to 8 bytes of data.", - "type": "object", + "id": "GooglePrivacyDlpV2beta1Value", "properties": { - "timeValue": { - "$ref": "GoogleTypeTimeOfDay" + "booleanValue": { + "type": "boolean" + }, + "dateValue": { + "$ref": "GoogleTypeDate" + }, + "floatValue": { + "format": "double", + "type": "number" }, "integerValue": { "format": "int64", @@ -1628,563 +2080,337 @@ "stringValue": { "type": "string" }, - "dateValue": { - "$ref": "GoogleTypeDate" + "timeValue": { + "$ref": "GoogleTypeTimeOfDay" }, "timestampValue": { "format": "google-datetime", "type": "string" - }, - "booleanValue": { - "type": "boolean" - }, - "floatValue": { - "format": "double", - "type": "number" } }, - "id": "GooglePrivacyDlpV2beta1Value" + "type": "object" }, - "GooglePrivacyDlpV2beta2RecordCondition": { - "description": "A condition for determining whether a transformation should be applied to\na field.", - "type": "object", + "GooglePrivacyDlpV2beta1ValueFrequency": { + "description": "A value of a field, including its frequency.", + "id": "GooglePrivacyDlpV2beta1ValueFrequency", "properties": { - "expressions": { - "description": "An expression.", - "$ref": "GooglePrivacyDlpV2beta2Expressions" + "count": { + "description": "How many times the value is contained in the field.", + "format": "int64", + "type": "string" + }, + "value": { + "$ref": "GooglePrivacyDlpV2beta1Value", + "description": "A value contained in the field in question." } }, - "id": "GooglePrivacyDlpV2beta2RecordCondition" + "type": "object" }, - "GooglePrivacyDlpV2beta2LDiversityHistogramBucket": { - "type": "object", + "GooglePrivacyDlpV2beta1WordList": { + "description": "Message defining a list of words or phrases to search for in the data.", + "id": "GooglePrivacyDlpV2beta1WordList", "properties": { - "sensitiveValueFrequencyLowerBound": { - "description": "Lower bound on the sensitive value frequencies of the equivalence\nclasses in this bucket.", + "words": { + "description": "Words or phrases defining the dictionary. The dictionary must contain\nat least one phrase and every phrase must contain at least 2 characters\nthat are letters or digits. [required]", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta2Action": { + "description": "A task to execute on the completion of a job.", + "id": "GooglePrivacyDlpV2beta2Action", + "properties": { + "pubSub": { + "$ref": "GooglePrivacyDlpV2beta2PublishToPubSub", + "description": "Publish a notification to a pubsub topic." + }, + "saveFindings": { + "$ref": "GooglePrivacyDlpV2beta2SaveFindings", + "description": "Save resulting findings in a provided location." + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta2AnalyzeDataSourceRiskDetails": { + "description": "Result of a risk analysis operation request.", + "id": "GooglePrivacyDlpV2beta2AnalyzeDataSourceRiskDetails", + "properties": { + "categoricalStatsResult": { + "$ref": "GooglePrivacyDlpV2beta2CategoricalStatsResult" + }, + "kAnonymityResult": { + "$ref": "GooglePrivacyDlpV2beta2KAnonymityResult" + }, + "kMapEstimationResult": { + "$ref": "GooglePrivacyDlpV2beta2KMapEstimationResult" + }, + "lDiversityResult": { + "$ref": "GooglePrivacyDlpV2beta2LDiversityResult" + }, + "numericalStatsResult": { + "$ref": "GooglePrivacyDlpV2beta2NumericalStatsResult" + }, + "requestedPrivacyMetric": { + "$ref": "GooglePrivacyDlpV2beta2PrivacyMetric", + "description": "Privacy metric to compute." + }, + "requestedSourceTable": { + "$ref": "GooglePrivacyDlpV2beta2BigQueryTable", + "description": "Input dataset to compute metrics over." + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta2AnalyzeDataSourceRiskRequest": { + "description": "Request for creating a risk analysis DlpJob.", + "id": "GooglePrivacyDlpV2beta2AnalyzeDataSourceRiskRequest", + "properties": { + "jobConfig": { + "$ref": "GooglePrivacyDlpV2beta2RiskAnalysisJobConfig", + "description": "Configuration for this risk analysis job." + }, + "jobId": { + "description": "Optional job ID to use for the created job. If not provided, a job ID will\nautomatically be generated. Must be unique within the project. The job ID\ncan contain uppercase and lowercase letters, numbers, and hyphens; that is,\nit must match the regular expression: `[a-zA-Z\\\\d-]+`. The maximum length\nis 100 characters. Can be empty to allow the system to generate one.", + "type": "string" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta2AuxiliaryTable": { + "description": "An auxiliary table contains statistical information on the relative\nfrequency of different quasi-identifiers values. It has one or several\nquasi-identifiers columns, and one column that indicates the relative\nfrequency of each quasi-identifier tuple.\nIf a tuple is present in the data but not in the auxiliary table, the\ncorresponding relative frequency is assumed to be zero (and thus, the\ntuple is highly reidentifiable).", + "id": "GooglePrivacyDlpV2beta2AuxiliaryTable", + "properties": { + "quasiIds": { + "description": "Quasi-identifier columns. [required]", + "items": { + "$ref": "GooglePrivacyDlpV2beta2QuasiIdField" + }, + "type": "array" + }, + "relativeFrequency": { + "$ref": "GooglePrivacyDlpV2beta2FieldId", + "description": "The relative frequency column must contain a floating-point number\nbetween 0 and 1 (inclusive). Null values are assumed to be zero.\n[required]" + }, + "table": { + "$ref": "GooglePrivacyDlpV2beta2BigQueryTable", + "description": "Auxiliary table location. [required]" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta2BigQueryKey": { + "description": "Row key for identifying a record in BigQuery table.", + "id": "GooglePrivacyDlpV2beta2BigQueryKey", + "properties": { + "rowNumber": { + "description": "Absolute number of the row from the beginning of the table at the time\nof scanning.", + "format": "int64", + "type": "string" + }, + "tableReference": { + "$ref": "GooglePrivacyDlpV2beta2BigQueryTable", + "description": "Complete BigQuery table reference." + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta2BigQueryOptions": { + "description": "Options defining BigQuery table and row identifiers.", + "id": "GooglePrivacyDlpV2beta2BigQueryOptions", + "properties": { + "identifyingFields": { + "description": "References to fields uniquely identifying rows within the table.\nNested fields in the format, like `person.birthdate.year`, are allowed.", + "items": { + "$ref": "GooglePrivacyDlpV2beta2FieldId" + }, + "type": "array" + }, + "tableReference": { + "$ref": "GooglePrivacyDlpV2beta2BigQueryTable", + "description": "Complete BigQuery table reference." + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta2BigQueryTable": { + "description": "Message defining the location of a BigQuery table. A table is uniquely\nidentified by its project_id, dataset_id, and table_name. Within a query\na table is often referenced with a string in the format of:\n`\u003cproject_id\u003e:\u003cdataset_id\u003e.\u003ctable_id\u003e` or\n`\u003cproject_id\u003e.\u003cdataset_id\u003e.\u003ctable_id\u003e`.", + "id": "GooglePrivacyDlpV2beta2BigQueryTable", + "properties": { + "datasetId": { + "description": "Dataset ID of the table.", + "type": "string" + }, + "projectId": { + "description": "The Google Cloud Platform project ID of the project containing the table.\nIf omitted, project ID is inferred from the API call.", + "type": "string" + }, + "tableId": { + "description": "Name of the table.", + "type": "string" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta2Bucket": { + "description": "Bucket is represented as a range, along with replacement values.", + "id": "GooglePrivacyDlpV2beta2Bucket", + "properties": { + "max": { + "$ref": "GooglePrivacyDlpV2beta2Value", + "description": "Upper bound of the range, exclusive; type must match min." + }, + "min": { + "$ref": "GooglePrivacyDlpV2beta2Value", + "description": "Lower bound of the range, inclusive. Type should be the same as max if\nused." + }, + "replacementValue": { + "$ref": "GooglePrivacyDlpV2beta2Value", + "description": "Replacement value for this bucket. If not provided\nthe default behavior will be to hyphenate the min-max range." + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta2BucketingConfig": { + "description": "Generalization function that buckets values based on ranges. The ranges and\nreplacement values are dynamically provided by the user for custom behavior,\nsuch as 1-30 -\u003e LOW 31-65 -\u003e MEDIUM 66-100 -\u003e HIGH\nThis can be used on\ndata of type: number, long, string, timestamp.\nIf the bound `Value` type differs from the type of data being transformed, we\nwill first attempt converting the type of the data to be transformed to match\nthe type of the bound before comparing.", + "id": "GooglePrivacyDlpV2beta2BucketingConfig", + "properties": { + "buckets": { + "description": "Set of buckets. Ranges must be non-overlapping.", + "items": { + "$ref": "GooglePrivacyDlpV2beta2Bucket" + }, + "type": "array" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta2CancelDlpJobRequest": { + "description": "The request message for canceling a DLP job.", + "id": "GooglePrivacyDlpV2beta2CancelDlpJobRequest", + "properties": {}, + "type": "object" + }, + "GooglePrivacyDlpV2beta2CategoricalStatsConfig": { + "description": "Compute numerical stats over an individual column, including\nnumber of distinct values and value count distribution.", + "id": "GooglePrivacyDlpV2beta2CategoricalStatsConfig", + "properties": { + "field": { + "$ref": "GooglePrivacyDlpV2beta2FieldId", + "description": "Field to compute categorical stats on. All column types are\nsupported except for arrays and structs. However, it may be more\ninformative to use NumericalStats when the field type is supported,\ndepending on the data." + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta2CategoricalStatsHistogramBucket": { + "id": "GooglePrivacyDlpV2beta2CategoricalStatsHistogramBucket", + "properties": { + "bucketSize": { + "description": "Total number of values in this bucket.", + "format": "int64", + "type": "string" + }, + "bucketValueCount": { + "description": "Total number of distinct values in this bucket.", "format": "int64", "type": "string" }, "bucketValues": { - "description": "Sample of equivalence classes in this bucket. The total number of\nclasses returned per bucket is capped at 20.", - "type": "array", + "description": "Sample of value frequencies in this bucket. The total number of\nvalues returned per bucket is capped at 20.", "items": { - "$ref": "GooglePrivacyDlpV2beta2LDiversityEquivalenceClass" - } - }, - "bucketSize": { - "description": "Total number of equivalence classes in this bucket.", - "format": "int64", - "type": "string" - }, - "sensitiveValueFrequencyUpperBound": { - "description": "Upper bound on the sensitive value frequencies of the equivalence\nclasses in this bucket.", - "format": "int64", - "type": "string" - } - }, - "id": "GooglePrivacyDlpV2beta2LDiversityHistogramBucket" - }, - "GooglePrivacyDlpV2beta2KindExpression": { - "id": "GooglePrivacyDlpV2beta2KindExpression", - "description": "A representation of a Datastore kind.", - "type": "object", - "properties": { - "name": { - "description": "The name of the kind.", - "type": "string" - } - } - }, - "GooglePrivacyDlpV2beta1PartitionId": { - "id": "GooglePrivacyDlpV2beta1PartitionId", - "description": "Datastore partition ID.\nA partition ID identifies a grouping of entities. The grouping is always\nby project and namespace, however the namespace ID may be empty.\n\nA partition ID contains several dimensions:\nproject ID and namespace ID.", - "type": "object", - "properties": { - "projectId": { - "description": "The ID of the project to which the entities belong.", - "type": "string" - }, - "namespaceId": { - "description": "If not empty, the ID of the namespace to which the entities belong.", - "type": "string" - } - } - }, - "GooglePrivacyDlpV2beta2InspectResult": { - "description": "All the findings for a single scanned item.", - "type": "object", - "properties": { - "findingsTruncated": { - "description": "If true, then this item might have more findings than were returned,\nand the findings returned are an arbitrary subset of all findings.\nThe findings list might be truncated because the input items were too\nlarge, or because the server reached the maximum amount of resources\nallowed for a single API call. For best results, divide the input into\nsmaller batches.", - "type": "boolean" - }, - "findings": { - "description": "List of findings for an item.", - "type": "array", - "items": { - "$ref": "GooglePrivacyDlpV2beta2Finding" - } - } - }, - "id": "GooglePrivacyDlpV2beta2InspectResult" - }, - "GooglePrivacyDlpV2beta2CryptoHashConfig": { - "description": "Pseudonymization method that generates surrogates via cryptographic hashing.\nUses SHA-256.\nThe key size must be either 32 or 64 bytes.\nOutputs a 32 byte digest as an uppercase hex string\n(for example, 41D1567F7F99F1DC2A5FAB886DEE5BEE).\nCurrently, only string and integer values can be hashed.", - "type": "object", - "properties": { - "cryptoKey": { - "description": "The key used by the hash function.", - "$ref": "GooglePrivacyDlpV2beta2CryptoKey" - } - }, - "id": "GooglePrivacyDlpV2beta2CryptoHashConfig" - }, - "GooglePrivacyDlpV2beta2TimePartConfig": { - "description": "For use with `Date`, `Timestamp`, and `TimeOfDay`, extract or preserve a\nportion of the value.", - "type": "object", - "properties": { - "partToExtract": { - "enumDescriptions": [ - "", - "[0-9999]", - "[1-12]", - "[1-31]", - "[1-7]", - "[1-52]", - "[0-23]" - ], - "enum": [ - "TIME_PART_UNSPECIFIED", - "YEAR", - "MONTH", - "DAY_OF_MONTH", - "DAY_OF_WEEK", - "WEEK_OF_YEAR", - "HOUR_OF_DAY" - ], - "type": "string" - } - }, - "id": "GooglePrivacyDlpV2beta2TimePartConfig" - }, - "GooglePrivacyDlpV2beta1WordList": { - "description": "Message defining a list of words or phrases to search for in the data.", - "type": "object", - "properties": { - "words": { - "type": "array", - "items": { - "type": "string" + "$ref": "GooglePrivacyDlpV2beta2ValueFrequency" }, - "description": "Words or phrases defining the dictionary. The dictionary must contain\nat least one phrase and every phrase must contain at least 2 characters\nthat are letters or digits. [required]" - } - }, - "id": "GooglePrivacyDlpV2beta1WordList" - }, - "GooglePrivacyDlpV2beta2ImageLocation": { - "description": "Bounding box encompassing detected text within an image.", - "type": "object", - "properties": { - "height": { - "description": "Height of the bounding box in pixels.", - "format": "int32", - "type": "integer" + "type": "array" }, - "top": { - "description": "Top coordinate of the bounding box. (0,0) is upper left.", - "format": "int32", - "type": "integer" - }, - "left": { - "description": "Left coordinate of the bounding box. (0,0) is upper left.", - "format": "int32", - "type": "integer" - }, - "width": { - "type": "integer", - "description": "Width of the bounding box in pixels.", - "format": "int32" - } - }, - "id": "GooglePrivacyDlpV2beta2ImageLocation" - }, - "GooglePrivacyDlpV2beta1FieldId": { - "description": "General identifier of a data field in a storage service.", - "type": "object", - "properties": { - "columnName": { - "type": "string", - "description": "Name describing the field." - } - }, - "id": "GooglePrivacyDlpV2beta1FieldId" - }, - "GooglePrivacyDlpV2beta2UpdateInspectTemplateRequest": { - "properties": { - "updateMask": { - "description": "Mask to control which fields get updated.", - "format": "google-fieldmask", + "valueFrequencyLowerBound": { + "description": "Lower bound on the value frequency of the values in this bucket.", + "format": "int64", "type": "string" }, - "inspectTemplate": { - "$ref": "GooglePrivacyDlpV2beta2InspectTemplate", - "description": "New InspectTemplate value." + "valueFrequencyUpperBound": { + "description": "Upper bound on the value frequency of the values in this bucket.", + "format": "int64", + "type": "string" } }, - "id": "GooglePrivacyDlpV2beta2UpdateInspectTemplateRequest", - "description": "Request message for UpdateInspectTemplate.", "type": "object" }, - "GooglePrivacyDlpV2beta2Expressions": { - "type": "object", + "GooglePrivacyDlpV2beta2CategoricalStatsResult": { + "description": "Result of the categorical stats computation.", + "id": "GooglePrivacyDlpV2beta2CategoricalStatsResult", "properties": { - "logicalOperator": { - "description": "The operator to apply to the result of conditions. Default and currently\nonly supported value is `AND`.", - "type": "string", - "enumDescriptions": [ - "", - "" - ], - "enum": [ - "LOGICAL_OPERATOR_UNSPECIFIED", - "AND" - ] - }, - "conditions": { - "$ref": "GooglePrivacyDlpV2beta2Conditions" - } - }, - "id": "GooglePrivacyDlpV2beta2Expressions", - "description": "An expression, consisting or an operator and conditions." - }, - "GooglePrivacyDlpV2beta2InspectDataSourceRequest": { - "properties": { - "jobConfig": { - "$ref": "GooglePrivacyDlpV2beta2InspectJobConfig", - "description": "A configuration for the job." - } - }, - "id": "GooglePrivacyDlpV2beta2InspectDataSourceRequest", - "description": "Request for scheduling a scan of a data subset from a Google Platform data\nrepository.", - "type": "object" - }, - "GooglePrivacyDlpV2beta2TransformationSummary": { - "description": "Summary of a single tranformation.\nOnly one of 'transformation', 'field_transformation', or 'record_suppress'\nwill be set.", - "type": "object", - "properties": { - "infoType": { - "$ref": "GooglePrivacyDlpV2beta2InfoType", - "description": "Set if the transformation was limited to a specific info_type." - }, - "transformation": { - "$ref": "GooglePrivacyDlpV2beta2PrimitiveTransformation", - "description": "The specific transformation these stats apply to." - }, - "results": { - "type": "array", + "valueFrequencyHistogramBuckets": { + "description": "Histogram of value frequencies in the column.", "items": { - "$ref": "GooglePrivacyDlpV2beta2SummaryResult" - } - }, - "field": { - "$ref": "GooglePrivacyDlpV2beta2FieldId", - "description": "Set if the transformation was limited to a specific FieldId." - }, - "fieldTransformations": { - "description": "The field transformation that was applied.\nIf multiple field transformations are requested for a single field,\nthis list will contain all of them; otherwise, only one is supplied.", - "type": "array", - "items": { - "$ref": "GooglePrivacyDlpV2beta2FieldTransformation" - } - }, - "transformedBytes": { - "type": "string", - "description": "Total size in bytes that were transformed in some way.", - "format": "int64" - }, - "recordSuppress": { - "description": "The specific suppression option these stats apply to.", - "$ref": "GooglePrivacyDlpV2beta2RecordSuppression" + "$ref": "GooglePrivacyDlpV2beta2CategoricalStatsHistogramBucket" + }, + "type": "array" } }, - "id": "GooglePrivacyDlpV2beta2TransformationSummary" - }, - "GooglePrivacyDlpV2beta2FixedSizeBucketingConfig": { - "description": "Buckets values based on fixed size ranges. The\nBucketing transformation can provide all of this functionality,\nbut requires more configuration. This message is provided as a convenience to\nthe user for simple bucketing strategies.\n\nThe transformed value will be a hyphenated string of\n\u003clower_bound\u003e-\u003cupper_bound\u003e, i.e if lower_bound = 10 and upper_bound = 20\nall values that are within this bucket will be replaced with \"10-20\".\n\nThis can be used on data of type: double, long.\n\nIf the bound Value type differs from the type of data\nbeing transformed, we will first attempt converting the type of the data to\nbe transformed to match the type of the bound before comparing.", - "type": "object", - "properties": { - "bucketSize": { - "description": "Size of each bucket (except for minimum and maximum buckets). So if\n`lower_bound` = 10, `upper_bound` = 89, and `bucket_size` = 10, then the\nfollowing buckets would be used: -10, 10-20, 20-30, 30-40, 40-50, 50-60,\n60-70, 70-80, 80-89, 89+. Precision up to 2 decimals works. [Required].", - "format": "double", - "type": "number" - }, - "upperBound": { - "description": "Upper bound value of buckets. All values greater than upper_bound are\ngrouped together into a single bucket; for example if `upper_bound` = 89,\nthen all values greater than 89 are replaced with the value “89+”.\n[Required].", - "$ref": "GooglePrivacyDlpV2beta2Value" - }, - "lowerBound": { - "description": "Lower bound value of buckets. All values less than `lower_bound` are\ngrouped together into a single bucket; for example if `lower_bound` = 10,\nthen all values less than 10 are replaced with the value “-10”. [Required].", - "$ref": "GooglePrivacyDlpV2beta2Value" - } - }, - "id": "GooglePrivacyDlpV2beta2FixedSizeBucketingConfig" - }, - "GooglePrivacyDlpV2beta2CancelDlpJobRequest": { - "description": "The request message for canceling a DLP job.", - "type": "object", - "properties": {}, - "id": "GooglePrivacyDlpV2beta2CancelDlpJobRequest" - }, - "GooglePrivacyDlpV2beta2Row": { - "id": "GooglePrivacyDlpV2beta2Row", - "type": "object", - "properties": { - "values": { - "type": "array", - "items": { - "$ref": "GooglePrivacyDlpV2beta2Value" - } - } - } - }, - "GooglePrivacyDlpV2beta2Finding": { - "description": "Represents a piece of potentially sensitive content.", - "type": "object", - "properties": { - "infoType": { - "$ref": "GooglePrivacyDlpV2beta2InfoType", - "description": "The type of content that might have been found.\nProvided if requested by the `InspectConfig`." - }, - "createTime": { - "description": "Timestamp when finding was detected.", - "format": "google-datetime", - "type": "string" - }, - "quote": { - "description": "The content that was found. Even if the content is not textual, it\nmay be converted to a textual representation here.\nProvided if requested by the `InspectConfig`.", - "type": "string" - }, - "location": { - "description": "Where the content was found.", - "$ref": "GooglePrivacyDlpV2beta2Location" - }, - "likelihood": { - "enum": [ - "LIKELIHOOD_UNSPECIFIED", - "VERY_UNLIKELY", - "UNLIKELY", - "POSSIBLE", - "LIKELY", - "VERY_LIKELY" - ], - "description": "Estimate of how likely it is that the `info_type` is correct.", - "type": "string", - "enumDescriptions": [ - "Default value; information with all likelihoods is included.", - "Few matching elements.", - "", - "Some matching elements.", - "", - "Many matching elements." - ] - } - }, - "id": "GooglePrivacyDlpV2beta2Finding" - }, - "GooglePrivacyDlpV2beta1TaggedField": { - "description": "A column with a semantic tag attached.", - "type": "object", - "properties": { - "customTag": { - "description": "A column can be tagged with a custom tag. In this case, the user must\nindicate an auxiliary table that contains statistical information on\nthe possible values of this column (below).", - "type": "string" - }, - "infoType": { - "$ref": "GooglePrivacyDlpV2beta1InfoType", - "description": "A column can be tagged with a InfoType to use the relevant public\ndataset as a statistical model of population, if available. We\ncurrently support US ZIP codes, region codes, ages and genders." - }, - "inferred": { - "description": "If no semantic tag is indicated, we infer the statistical model from\nthe distribution of values in the input data", - "$ref": "GoogleProtobufEmpty" - }, - "field": { - "$ref": "GooglePrivacyDlpV2beta1FieldId", - "description": "Identifies the column. [required]" - } - }, - "id": "GooglePrivacyDlpV2beta1TaggedField" - }, - "GooglePrivacyDlpV2beta2PartitionId": { - "type": "object", - "properties": { - "projectId": { - "description": "The ID of the project to which the entities belong.", - "type": "string" - }, - "namespaceId": { - "type": "string", - "description": "If not empty, the ID of the namespace to which the entities belong." - } - }, - "id": "GooglePrivacyDlpV2beta2PartitionId", - "description": "Datastore partition ID.\nA partition ID identifies a grouping of entities. The grouping is always\nby project and namespace, however the namespace ID may be empty.\n\nA partition ID contains several dimensions:\nproject ID and namespace ID." - }, - "GooglePrivacyDlpV2beta2KMapEstimationQuasiIdValues": { - "properties": { - "quasiIdsValues": { - "description": "The quasi-identifier values.", - "type": "array", - "items": { - "$ref": "GooglePrivacyDlpV2beta2Value" - } - }, - "estimatedAnonymity": { - "type": "string", - "description": "The estimated anonymity for these quasi-identifier values.", - "format": "int64" - } - }, - "id": "GooglePrivacyDlpV2beta2KMapEstimationQuasiIdValues", - "description": "A tuple of values for the quasi-identifier columns.", "type": "object" }, "GooglePrivacyDlpV2beta2CharacterMaskConfig": { - "type": "object", + "description": "Partially mask a string by replacing a given number of characters with a\nfixed character. Masking can start from the beginning or end of the string.\nThis can be used on data of any type (numbers, longs, and so on) and when\nde-identifying structured data we'll attempt to preserve the original data's\ntype. (This allows you to take a long like 123 and modify it to a string like\n**3.", + "id": "GooglePrivacyDlpV2beta2CharacterMaskConfig", "properties": { + "charactersToIgnore": { + "description": "When masking a string, items in this list will be skipped when replacing.\nFor example, if your string is 555-555-5555 and you ask us to skip `-` and\nmask 5 chars with * we would produce ***-*55-5555.", + "items": { + "$ref": "GooglePrivacyDlpV2beta2CharsToIgnore" + }, + "type": "array" + }, + "maskingCharacter": { + "description": "Character to mask the sensitive values\u0026mdash;for example, \"*\" for an\nalphabetic string such as name, or \"0\" for a numeric string such as ZIP\ncode or credit card number. String must have length 1. If not supplied, we\nwill default to \"*\" for strings, 0 for digits.", + "type": "string" + }, "numberToMask": { "description": "Number of characters to mask. If not set, all matching chars will be\nmasked. Skipped characters do not count towards this tally.", "format": "int32", "type": "integer" }, - "charactersToIgnore": { - "description": "When masking a string, items in this list will be skipped when replacing.\nFor example, if your string is 555-555-5555 and you ask us to skip `-` and\nmask 5 chars with * we would produce ***-*55-5555.", - "type": "array", - "items": { - "$ref": "GooglePrivacyDlpV2beta2CharsToIgnore" - } - }, - "maskingCharacter": { - "type": "string", - "description": "Character to mask the sensitive values—for example, \"*\" for an\nalphabetic string such as name, or \"0\" for a numeric string such as ZIP\ncode or credit card number. String must have length 1. If not supplied, we\nwill default to \"*\" for strings, 0 for digits." - }, "reverseOrder": { "description": "Mask characters in reverse order. For example, if `masking_character` is\n'0', number_to_mask is 14, and `reverse_order` is false, then\n1234-5678-9012-3456 -\u003e 00000000000000-3456\nIf `masking_character` is '*', `number_to_mask` is 3, and `reverse_order`\nis true, then 12345 -\u003e 12***", "type": "boolean" } }, - "id": "GooglePrivacyDlpV2beta2CharacterMaskConfig", - "description": "Partially mask a string by replacing a given number of characters with a\nfixed character. Masking can start from the beginning or end of the string.\nThis can be used on data of any type (numbers, longs, and so on) and when\nde-identifying structured data we'll attempt to preserve the original data's\ntype. (This allows you to take a long like 123 and modify it to a string like\n**3." - }, - "GooglePrivacyDlpV2beta2Conditions": { - "description": "A collection of conditions.", - "type": "object", - "properties": { - "conditions": { - "type": "array", - "items": { - "$ref": "GooglePrivacyDlpV2beta2Condition" - } - } - }, - "id": "GooglePrivacyDlpV2beta2Conditions" - }, - "GooglePrivacyDlpV2beta2ListDeidentifyTemplatesResponse": { - "properties": { - "deidentifyTemplates": { - "description": "List of deidentify templates, up to page_size in\nListDeidentifyTemplatesRequest.", - "type": "array", - "items": { - "$ref": "GooglePrivacyDlpV2beta2DeidentifyTemplate" - } - }, - "nextPageToken": { - "description": "If the next page is available then the next page token to be used\nin following ListDeidentifyTemplates request.", - "type": "string" - } - }, - "id": "GooglePrivacyDlpV2beta2ListDeidentifyTemplatesResponse", - "description": "Response message for ListDeidentifyTemplates.", "type": "object" }, - "GooglePrivacyDlpV2beta2InspectJobConfig": { - "id": "GooglePrivacyDlpV2beta2InspectJobConfig", - "type": "object", + "GooglePrivacyDlpV2beta2CharsToIgnore": { + "description": "Characters to skip when doing deidentification of a value. These will be left\nalone and skipped.", + "id": "GooglePrivacyDlpV2beta2CharsToIgnore", "properties": { - "inspectConfig": { - "$ref": "GooglePrivacyDlpV2beta2InspectConfig", - "description": "How and what to scan for." - }, - "inspectTemplateName": { - "description": "If provided, will be used as the default for all values in InspectConfig.\n`inspect_config` will be merged into the values persisted as part of the\ntemplate.", + "charactersToSkip": { "type": "string" }, - "storageConfig": { - "$ref": "GooglePrivacyDlpV2beta2StorageConfig", - "description": "The data to scan." - }, - "outputConfig": { - "$ref": "GooglePrivacyDlpV2beta2OutputStorageConfig", - "description": "Where to put the findings." - } - } - }, - "GooglePrivacyDlpV2beta2UpdateDeidentifyTemplateRequest": { - "description": "Request message for UpdateDeidentifyTemplate.", - "type": "object", - "properties": { - "deidentifyTemplate": { - "description": "New DeidentifyTemplate value.", - "$ref": "GooglePrivacyDlpV2beta2DeidentifyTemplate" - }, - "updateMask": { - "description": "Mask to control which fields get updated.", - "format": "google-fieldmask", + "commonCharactersToIgnore": { + "enum": [ + "COMMON_CHARS_TO_IGNORE_UNSPECIFIED", + "NUMERIC", + "ALPHA_UPPER_CASE", + "ALPHA_LOWER_CASE", + "PUNCTUATION", + "WHITESPACE" + ], + "enumDescriptions": [ + "", + "0-9", + "A-Z", + "a-z", + "US Punctuation, one of !\"#$%\u0026'()*+,-./:;\u003c=\u003e?@[\\]^_`{|}~", + "Whitespace character, one of [ \\t\\n\\x0B\\f\\r]" + ], "type": "string" } }, - "id": "GooglePrivacyDlpV2beta2UpdateDeidentifyTemplateRequest" - }, - "GooglePrivacyDlpV2beta2CryptoKey": { - "properties": { - "transient": { - "$ref": "GooglePrivacyDlpV2beta2TransientCryptoKey" - }, - "kmsWrapped": { - "$ref": "GooglePrivacyDlpV2beta2KmsWrappedCryptoKey" - }, - "unwrapped": { - "$ref": "GooglePrivacyDlpV2beta2UnwrappedCryptoKey" - } - }, - "id": "GooglePrivacyDlpV2beta2CryptoKey", - "description": "This is a data encryption key (DEK) (as opposed to\na key encryption key (KEK) stored by KMS).\nWhen using KMS to wrap/unwrap DEKs, be sure to set an appropriate\nIAM policy on the KMS CryptoKey (KEK) to ensure an attacker cannot\nunwrap the data crypto key.", "type": "object" }, - "GooglePrivacyDlpV2beta2SurrogateType": { - "id": "GooglePrivacyDlpV2beta2SurrogateType", - "description": "Message for detecting output from deidentification transformations\nsuch as\n[`CryptoReplaceFfxFpeConfig`](/dlp/docs/reference/rest/v2beta1/content/deidentify#CryptoReplaceFfxFpeConfig).\nThese types of transformations are\nthose that perform pseudonymization, thereby producing a \"surrogate\" as\noutput. This should be used in conjunction with a field on the\ntransformation such as `surrogate_info_type`. This custom info type does\nnot support the use of `detection_rules`.", - "type": "object", - "properties": {} - }, - "GooglePrivacyDlpV2beta1InfoTypeStatistics": { - "description": "Statistics regarding a specific InfoType.", - "type": "object", - "properties": { - "infoType": { - "$ref": "GooglePrivacyDlpV2beta1InfoType", - "description": "The type of finding this stat is for." - }, - "count": { - "description": "Number of findings for this info type.", - "format": "int64", - "type": "string" - } - }, - "id": "GooglePrivacyDlpV2beta1InfoTypeStatistics" - }, "GooglePrivacyDlpV2beta2CloudStorageKey": { "description": "Record key for a finding in a Cloud Storage file.", - "type": "object", + "id": "GooglePrivacyDlpV2beta2CloudStorageKey", "properties": { "filePath": { "description": "Path to the file.", @@ -2196,141 +2422,29 @@ "type": "string" } }, - "id": "GooglePrivacyDlpV2beta2CloudStorageKey" + "type": "object" }, - "GooglePrivacyDlpV2beta1PropertyReference": { - "description": "A reference to a property relative to the Datastore kind expressions.", - "type": "object", + "GooglePrivacyDlpV2beta2CloudStorageOptions": { + "description": "Options defining a file or a set of files (path ending with *) within\na Google Cloud Storage bucket.", + "id": "GooglePrivacyDlpV2beta2CloudStorageOptions", "properties": { - "name": { - "description": "The name of the property.\nIf name includes \".\"s, it may be interpreted as a property name path.", - "type": "string" - } - }, - "id": "GooglePrivacyDlpV2beta1PropertyReference" - }, - "GooglePrivacyDlpV2beta2KAnonymityConfig": { - "description": "k-anonymity metric, used for analysis of reidentification risk.", - "type": "object", - "properties": { - "entityId": { - "description": "Optional message indicating that each distinct entity_id should not\ncontribute to the k-anonymity count more than once per equivalence class.\nIf an entity_id appears on several rows with different quasi-identifier\ntuples, it will contribute to each count exactly once.\n\nThis can lead to unexpected results. Consider a table where ID 1 is\nassociated to quasi-identifier \"foo\", ID 2 to \"bar\", and ID 3 to *both*\nquasi-identifiers \"foo\" and \"bar\" (on separate rows), and where this ID\nis used as entity_id. Then, the anonymity value associated to ID 3 will\nbe 2, even if it is the only ID to be associated to both values \"foo\" and\n\"bar\".", - "$ref": "GooglePrivacyDlpV2beta2EntityId" - }, - "quasiIds": { - "description": "Set of fields to compute k-anonymity over. When multiple fields are\nspecified, they are considered a single composite key. Structs and\nrepeated data types are not supported; however, nested fields are\nsupported so long as they are not structs themselves or nested within\na repeated field.", - "type": "array", - "items": { - "$ref": "GooglePrivacyDlpV2beta2FieldId" - } - } - }, - "id": "GooglePrivacyDlpV2beta2KAnonymityConfig" - }, - "GooglePrivacyDlpV2beta2InfoTypeDescription": { - "id": "GooglePrivacyDlpV2beta2InfoTypeDescription", - "description": "InfoType description.", - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "Internal name of the infoType." - }, - "displayName": { - "description": "Human readable form of the infoType name.", + "bytesLimitPerFile": { + "description": "Max number of bytes to scan from a file. If a scanned file's size is bigger\nthan this value then the rest of the bytes are omitted.", + "format": "int64", "type": "string" }, - "supportedBy": { - "enumDescriptions": [ - "", - "Supported by the inspect operations.", - "Supported by the risk analysis operations." - ], - "description": "Which parts of the API supports this InfoType.", - "type": "array", - "items": { - "enum": [ - "ENUM_TYPE_UNSPECIFIED", - "INSPECT", - "RISK_ANALYSIS" - ], - "type": "string" - } - } - } - }, - "GooglePrivacyDlpV2beta2InspectDataSourceDetails": { - "description": "The results of an inspect DataSource job.", - "type": "object", - "properties": { - "result": { - "$ref": "GooglePrivacyDlpV2beta2Result", - "description": "A summary of the outcome of this inspect job." - }, - "requestedOptions": { - "$ref": "GooglePrivacyDlpV2beta2RequestedOptions", - "description": "The configuration used for this job." + "fileSet": { + "$ref": "GooglePrivacyDlpV2beta2FileSet" } }, - "id": "GooglePrivacyDlpV2beta2InspectDataSourceDetails" - }, - "GooglePrivacyDlpV2beta2ReidentifyContentRequest": { - "description": "Request to re-identify an item.", - "type": "object", - "properties": { - "inspectConfig": { - "$ref": "GooglePrivacyDlpV2beta2InspectConfig", - "description": "Configuration for the inspector." - }, - "inspectTemplateName": { - "description": "Optional template to use. Any configuration directly specified in\n`inspect_config` will override those set in the template. Singular fields\nthat are set in this request will replace their corresponding fields in the\ntemplate. Repeated fields are appended. Singular sub-messages and groups\nare recursively merged.", - "type": "string" - }, - "reidentifyConfig": { - "$ref": "GooglePrivacyDlpV2beta2DeidentifyConfig", - "description": "Configuration for the re-identification of the content item.\nThis field shares the same proto message type that is used for\nde-identification, however its usage here is for the reversal of the\nprevious de-identification. Re-identification is performed by examining\nthe transformations used to de-identify the items and executing the\nreverse. This requires that only reversible transformations\nbe provided here. The reversible transformations are:\n\n - `CryptoReplaceFfxFpeConfig`" - }, - "item": { - "$ref": "GooglePrivacyDlpV2beta2ContentItem", - "description": "The item to re-identify. Will be treated as text." - }, - "reidentifyTemplateName": { - "type": "string", - "description": "Optional template to use. References an instance of `DeidentifyTemplate`.\nAny configuration directly specified in `reidentify_config` or\n`inspect_config` will override those set in the template. Singular fields\nthat are set in this request will replace their corresponding fields in the\ntemplate. Repeated fields are appended. Singular sub-messages and groups\nare recursively merged." - } - }, - "id": "GooglePrivacyDlpV2beta2ReidentifyContentRequest" - }, - "GooglePrivacyDlpV2beta2LDiversityResult": { - "description": "Result of the l-diversity computation.", - "type": "object", - "properties": { - "sensitiveValueFrequencyHistogramBuckets": { - "description": "Histogram of l-diversity equivalence class sensitive value frequencies.", - "type": "array", - "items": { - "$ref": "GooglePrivacyDlpV2beta2LDiversityHistogramBucket" - } - } - }, - "id": "GooglePrivacyDlpV2beta2LDiversityResult" - }, - "GooglePrivacyDlpV2beta2InspectContentResponse": { - "properties": { - "result": { - "description": "The findings.", - "$ref": "GooglePrivacyDlpV2beta2InspectResult" - } - }, - "id": "GooglePrivacyDlpV2beta2InspectContentResponse", - "description": "Results of inspecting an item.", "type": "object" }, "GooglePrivacyDlpV2beta2Color": { - "type": "object", + "description": "Represents a color in the RGB color space.", + "id": "GooglePrivacyDlpV2beta2Color", "properties": { - "red": { - "description": "The amount of red in the color as a value in the interval [0, 1].", + "blue": { + "description": "The amount of blue in the color as a value in the interval [0, 1].", "format": "float", "type": "number" }, @@ -2339,358 +2453,956 @@ "format": "float", "type": "number" }, - "blue": { - "description": "The amount of blue in the color as a value in the interval [0, 1].", + "red": { + "description": "The amount of red in the color as a value in the interval [0, 1].", "format": "float", "type": "number" } }, - "id": "GooglePrivacyDlpV2beta2Color", - "description": "Represents a color in the RGB color space." + "type": "object" }, - "GooglePrivacyDlpV2beta1OutputStorageConfig": { - "type": "object", + "GooglePrivacyDlpV2beta2Condition": { + "description": "The field type of `value` and `field` do not need to match to be\nconsidered equal, but not all comparisons are possible.\n\nA `value` of type:\n\n- `string` can be compared against all other types\n- `boolean` can only be compared against other booleans\n- `integer` can be compared against doubles or a string if the string value\ncan be parsed as an integer.\n- `double` can be compared against integers or a string if the string can\nbe parsed as a double.\n- `Timestamp` can be compared against strings in RFC 3339 date string\nformat.\n- `TimeOfDay` can be compared against timestamps and strings in the format\nof 'HH:mm:ss'.\n\nIf we fail to compare do to type mismatch, a warning will be given and\nthe condition will evaluate to false.", + "id": "GooglePrivacyDlpV2beta2Condition", "properties": { - "storagePath": { - "$ref": "GooglePrivacyDlpV2beta1CloudStoragePath", - "description": "The path to a Google Cloud Storage location to store output.\nThe bucket must already exist and\nthe Google APIs service account for DLP must have write permission to\nwrite to the given bucket.\nResults are split over multiple csv files with each file name matching\nthe pattern \"[operation_id]_[count].csv\", for example\n`3094877188788974909_1.csv`. The `operation_id` matches the\nidentifier for the Operation, and the `count` is a counter used for\ntracking the number of files written.\n\nThe CSV file(s) contain the following columns regardless of storage type\nscanned:\n- id\n- info_type\n- likelihood\n- byte size of finding\n- quote\n- timestamp\n\nFor Cloud Storage the next columns are:\n\n- file_path\n- start_offset\n\nFor Cloud Datastore the next columns are:\n\n- project_id\n- namespace_id\n- path\n- column_name\n- offset\n\nFor BigQuery the next columns are:\n\n- row_number\n- project_id\n- dataset_id\n- table_id" + "field": { + "$ref": "GooglePrivacyDlpV2beta2FieldId", + "description": "Field within the record this condition is evaluated against. [required]" + }, + "operator": { + "description": "Operator used to compare the field or infoType to the value. [required]", + "enum": [ + "RELATIONAL_OPERATOR_UNSPECIFIED", + "EQUAL_TO", + "NOT_EQUAL_TO", + "GREATER_THAN", + "LESS_THAN", + "GREATER_THAN_OR_EQUALS", + "LESS_THAN_OR_EQUALS", + "EXISTS" + ], + "enumDescriptions": [ + "", + "Equal.", + "Not equal to.", + "Greater than.", + "Less than.", + "Greater than or equals.", + "Less than or equals.", + "Exists" + ], + "type": "string" + }, + "value": { + "$ref": "GooglePrivacyDlpV2beta2Value", + "description": "Value to compare against. [Required, except for `EXISTS` tests.]" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta2Conditions": { + "description": "A collection of conditions.", + "id": "GooglePrivacyDlpV2beta2Conditions", + "properties": { + "conditions": { + "items": { + "$ref": "GooglePrivacyDlpV2beta2Condition" + }, + "type": "array" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta2ContentItem": { + "description": "Container structure for the content to inspect.", + "id": "GooglePrivacyDlpV2beta2ContentItem", + "properties": { + "data": { + "description": "Content data to inspect or redact.", + "format": "byte", + "type": "string" }, "table": { - "$ref": "GooglePrivacyDlpV2beta1BigQueryTable", - "description": "Store findings in a new table in the dataset." + "$ref": "GooglePrivacyDlpV2beta2Table", + "description": "Structured content for inspection." + }, + "type": { + "description": "Type of the content, as defined in Content-Type HTTP header.\nSupported types are: all \"text\" types, octet streams, PNG images,\nJPEG images.", + "type": "string" + }, + "value": { + "description": "String data to inspect or redact.", + "type": "string" } }, - "id": "GooglePrivacyDlpV2beta1OutputStorageConfig", - "description": "Cloud repository for storing output." + "type": "object" }, - "GooglePrivacyDlpV2beta1KAnonymityEquivalenceClass": { - "id": "GooglePrivacyDlpV2beta1KAnonymityEquivalenceClass", - "description": "The set of columns' values that share the same k-anonymity value.", - "type": "object", + "GooglePrivacyDlpV2beta2CreateDeidentifyTemplateRequest": { + "description": "Request message for CreateDeidentifyTemplate.", + "id": "GooglePrivacyDlpV2beta2CreateDeidentifyTemplateRequest", "properties": { - "quasiIdsValues": { - "description": "Set of values defining the equivalence class. One value per\nquasi-identifier column in the original KAnonymity metric message.\nThe order is always the same as the original request.", - "type": "array", + "deidentifyTemplate": { + "$ref": "GooglePrivacyDlpV2beta2DeidentifyTemplate", + "description": "The DeidentifyTemplate to create." + }, + "templateId": { + "description": "The template id can contain uppercase and lowercase letters,\nnumbers, and hyphens; that is, it must match the regular\nexpression: `[a-zA-Z\\\\d-]+`. The maximum length is 100\ncharacters. Can be empty to allow the system to generate one.", + "type": "string" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta2CreateInspectTemplateRequest": { + "description": "Request message for CreateInspectTemplate.", + "id": "GooglePrivacyDlpV2beta2CreateInspectTemplateRequest", + "properties": { + "inspectTemplate": { + "$ref": "GooglePrivacyDlpV2beta2InspectTemplate", + "description": "The InspectTemplate to create." + }, + "templateId": { + "description": "The template id can contain uppercase and lowercase letters,\nnumbers, and hyphens; that is, it must match the regular\nexpression: `[a-zA-Z\\\\d-]+`. The maximum length is 100\ncharacters. Can be empty to allow the system to generate one.", + "type": "string" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta2CreateJobTriggerRequest": { + "description": "Request message for CreateJobTrigger.", + "id": "GooglePrivacyDlpV2beta2CreateJobTriggerRequest", + "properties": { + "jobTrigger": { + "$ref": "GooglePrivacyDlpV2beta2JobTrigger", + "description": "The JobTrigger to create." + }, + "triggerId": { + "description": "The trigger id can contain uppercase and lowercase letters,\nnumbers, and hyphens; that is, it must match the regular\nexpression: `[a-zA-Z\\\\d-]+`. The maximum length is 100\ncharacters. Can be empty to allow the system to generate one.", + "type": "string" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta2CryptoHashConfig": { + "description": "Pseudonymization method that generates surrogates via cryptographic hashing.\nUses SHA-256.\nThe key size must be either 32 or 64 bytes.\nOutputs a 32 byte digest as an uppercase hex string\n(for example, 41D1567F7F99F1DC2A5FAB886DEE5BEE).\nCurrently, only string and integer values can be hashed.", + "id": "GooglePrivacyDlpV2beta2CryptoHashConfig", + "properties": { + "cryptoKey": { + "$ref": "GooglePrivacyDlpV2beta2CryptoKey", + "description": "The key used by the hash function." + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta2CryptoKey": { + "description": "This is a data encryption key (DEK) (as opposed to\na key encryption key (KEK) stored by KMS).\nWhen using KMS to wrap/unwrap DEKs, be sure to set an appropriate\nIAM policy on the KMS CryptoKey (KEK) to ensure an attacker cannot\nunwrap the data crypto key.", + "id": "GooglePrivacyDlpV2beta2CryptoKey", + "properties": { + "kmsWrapped": { + "$ref": "GooglePrivacyDlpV2beta2KmsWrappedCryptoKey" + }, + "transient": { + "$ref": "GooglePrivacyDlpV2beta2TransientCryptoKey" + }, + "unwrapped": { + "$ref": "GooglePrivacyDlpV2beta2UnwrappedCryptoKey" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta2CryptoReplaceFfxFpeConfig": { + "description": "Replaces an identifier with a surrogate using FPE with the FFX\nmode of operation; however when used in the `ReidentifyContent` API method,\nit serves the opposite function by reversing the surrogate back into\nthe original identifier.\nThe identifier must be encoded as ASCII.\nFor a given crypto key and context, the same identifier will be\nreplaced with the same surrogate.\nIdentifiers must be at least two characters long.\nIn the case that the identifier is the empty string, it will be skipped.\nSee [Pseudonymization](/dlp/docs/pseudonymization) for example usage.", + "id": "GooglePrivacyDlpV2beta2CryptoReplaceFfxFpeConfig", + "properties": { + "commonAlphabet": { + "enum": [ + "FFX_COMMON_NATIVE_ALPHABET_UNSPECIFIED", + "NUMERIC", + "HEXADECIMAL", + "UPPER_CASE_ALPHA_NUMERIC", + "ALPHA_NUMERIC" + ], + "enumDescriptions": [ + "", + "[0-9] (radix of 10)", + "[0-9A-F] (radix of 16)", + "[0-9A-Z] (radix of 36)", + "[0-9A-Za-z] (radix of 62)" + ], + "type": "string" + }, + "context": { + "$ref": "GooglePrivacyDlpV2beta2FieldId", + "description": "The 'tweak', a context may be used for higher security since the same\nidentifier in two different contexts won't be given the same surrogate. If\nthe context is not set, a default tweak will be used.\n\nIf the context is set but:\n\n1. there is no record present when transforming a given value or\n1. the field is not present when transforming a given value,\n\na default tweak will be used.\n\nNote that case (1) is expected when an `InfoTypeTransformation` is\napplied to both structured and non-structured `ContentItem`s.\nCurrently, the referenced field may be of value type integer or string.\n\nThe tweak is constructed as a sequence of bytes in big endian byte order\nsuch that:\n\n- a 64 bit integer is encoded followed by a single byte of value 1\n- a string is encoded in UTF-8 format followed by a single byte of value\n å 2" + }, + "cryptoKey": { + "$ref": "GooglePrivacyDlpV2beta2CryptoKey", + "description": "The key used by the encryption algorithm. [required]" + }, + "customAlphabet": { + "description": "This is supported by mapping these to the alphanumeric characters\nthat the FFX mode natively supports. This happens before/after\nencryption/decryption.\nEach character listed must appear only once.\nNumber of characters must be in the range [2, 62].\nThis must be encoded as ASCII.\nThe order of characters does not matter.", + "type": "string" + }, + "radix": { + "description": "The native way to select the alphabet. Must be in the range [2, 62].", + "format": "int32", + "type": "integer" + }, + "surrogateInfoType": { + "$ref": "GooglePrivacyDlpV2beta2InfoType", + "description": "The custom infoType to annotate the surrogate with.\nThis annotation will be applied to the surrogate by prefixing it with\nthe name of the custom infoType followed by the number of\ncharacters comprising the surrogate. The following scheme defines the\nformat: info_type_name(surrogate_character_count):surrogate\n\nFor example, if the name of custom infoType is 'MY_TOKEN_INFO_TYPE' and\nthe surrogate is 'abc', the full replacement value\nwill be: 'MY_TOKEN_INFO_TYPE(3):abc'\n\nThis annotation identifies the surrogate when inspecting content using the\ncustom infoType\n[`SurrogateType`](/dlp/docs/reference/rest/v2beta2/InspectConfig#surrogatetype).\nThis facilitates reversal of the surrogate when it occurs in free text.\n\nIn order for inspection to work properly, the name of this infoType must\nnot occur naturally anywhere in your data; otherwise, inspection may\nfind a surrogate that does not correspond to an actual identifier.\nTherefore, choose your custom infoType name carefully after considering\nwhat your data looks like. One way to select a name that has a high chance\nof yielding reliable detection is to include one or more unicode characters\nthat are highly improbable to exist in your data.\nFor example, assuming your data is entered from a regular ASCII keyboard,\nthe symbol with the hex code point 29DD might be used like so:\n⧝MY_TOKEN_TYPE" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta2CustomInfoType": { + "description": "Custom information type provided by the user. Used to find domain-specific\nsensitive information configurable to the data in question.", + "id": "GooglePrivacyDlpV2beta2CustomInfoType", + "properties": { + "detectionRules": { + "description": "Set of detection rules to apply to all findings of this custom info type.\nRules are applied in order that they are specified. Not supported for the\n`surrogate_type` custom info type.", "items": { - "$ref": "GooglePrivacyDlpV2beta1Value" - } + "$ref": "GooglePrivacyDlpV2beta2DetectionRule" + }, + "type": "array" }, - "equivalenceClassSize": { - "description": "Size of the equivalence class, for example number of rows with the\nabove set of values.", - "format": "int64", - "type": "string" - } - } - }, - "GooglePrivacyDlpV2beta2BigQueryTable": { - "properties": { - "datasetId": { - "description": "Dataset ID of the table.", + "dictionary": { + "$ref": "GooglePrivacyDlpV2beta2Dictionary", + "description": "Dictionary-based custom info type." + }, + "infoType": { + "$ref": "GooglePrivacyDlpV2beta2InfoType", + "description": "Info type configuration. All custom info types must have configurations\nthat do not conflict with built-in info types or other custom info types." + }, + "likelihood": { + "description": "Likelihood to return for this custom info type. This base value can be\naltered by a detection rule if the finding meets the criteria specified by\nthe rule. Defaults to `VERY_LIKELY` if not specified.", + "enum": [ + "LIKELIHOOD_UNSPECIFIED", + "VERY_UNLIKELY", + "UNLIKELY", + "POSSIBLE", + "LIKELY", + "VERY_LIKELY" + ], + "enumDescriptions": [ + "Default value; information with all likelihoods is included.", + "Few matching elements.", + "", + "Some matching elements.", + "", + "Many matching elements." + ], "type": "string" }, - "tableId": { - "description": "Name of the table.", - "type": "string" + "regex": { + "$ref": "GooglePrivacyDlpV2beta2Regex", + "description": "Regex-based custom info type." }, - "projectId": { - "type": "string", - "description": "The Google Cloud Platform project ID of the project containing the table.\nIf omitted, project ID is inferred from the API call." + "surrogateType": { + "$ref": "GooglePrivacyDlpV2beta2SurrogateType", + "description": "Surrogate info type." } }, - "id": "GooglePrivacyDlpV2beta2BigQueryTable", - "description": "Message defining the location of a BigQuery table. A table is uniquely\nidentified by its project_id, dataset_id, and table_name. Within a query\na table is often referenced with a string in the format of:\n`\u003cproject_id\u003e:\u003cdataset_id\u003e.\u003ctable_id\u003e` or\n`\u003cproject_id\u003e.\u003cdataset_id\u003e.\u003ctable_id\u003e`.", "type": "object" }, "GooglePrivacyDlpV2beta2DatastoreKey": { - "type": "object", + "description": "Record key for a finding in Cloud Datastore.", + "id": "GooglePrivacyDlpV2beta2DatastoreKey", "properties": { "entityKey": { "$ref": "GooglePrivacyDlpV2beta2Key", "description": "Datastore entity key." } }, - "id": "GooglePrivacyDlpV2beta2DatastoreKey", - "description": "Record key for a finding in Cloud Datastore." + "type": "object" }, - "GooglePrivacyDlpV2beta2RedactImageResponse": { - "description": "Results of redacting an image.", - "type": "object", + "GooglePrivacyDlpV2beta2DatastoreOptions": { + "description": "Options defining a data set within Google Cloud Datastore.", + "id": "GooglePrivacyDlpV2beta2DatastoreOptions", "properties": { - "redactedImage": { - "description": "The redacted image. The type will be the same as the original image.", - "format": "byte", - "type": "string" + "kind": { + "$ref": "GooglePrivacyDlpV2beta2KindExpression", + "description": "The kind to process." }, - "extractedText": { - "type": "string", - "description": "If an image was being inspected and the InspectConfig's include_quote was\nset to true, then this field will include all text, if any, that was found\nin the image." + "partitionId": { + "$ref": "GooglePrivacyDlpV2beta2PartitionId", + "description": "A partition ID identifies a grouping of entities. The grouping is always\nby project and namespace, however the namespace ID may be empty." } }, - "id": "GooglePrivacyDlpV2beta2RedactImageResponse" + "type": "object" }, - "GooglePrivacyDlpV2beta1InspectOperationMetadata": { - "description": "Metadata returned within GetOperation for an inspect request.", - "type": "object", + "GooglePrivacyDlpV2beta2DateShiftConfig": { + "description": "Shifts dates by random number of days, with option to be consistent for the\nsame context.", + "id": "GooglePrivacyDlpV2beta2DateShiftConfig", "properties": { - "requestInspectConfig": { - "$ref": "GooglePrivacyDlpV2beta1InspectConfig", - "description": "The inspect config used to create the Operation." + "context": { + "$ref": "GooglePrivacyDlpV2beta2FieldId", + "description": "Points to the field that contains the context, for example, an entity id.\nIf set, must also set method. If set, shift will be consistent for the\ngiven context." }, - "requestOutputConfig": { - "$ref": "GooglePrivacyDlpV2beta1OutputStorageConfig", - "description": "Optional location to store findings." + "cryptoKey": { + "$ref": "GooglePrivacyDlpV2beta2CryptoKey", + "description": "Causes the shift to be computed based on this key and the context. This\nresults in the same shift for the same context and crypto_key." }, + "lowerBoundDays": { + "description": "For example, -5 means shift date to at most 5 days back in the past.\n[Required]", + "format": "int32", + "type": "integer" + }, + "upperBoundDays": { + "description": "Range of shift in days. Actual shift will be selected at random within this\nrange (inclusive ends). Negative means shift to earlier in time. Must not\nbe more than 365250 days (1000 years) each direction.\n\nFor example, 3 means shift date to at most 3 days into the future.\n[Required]", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta2DateTime": { + "description": "Message for a date time object.", + "id": "GooglePrivacyDlpV2beta2DateTime", + "properties": { + "date": { + "$ref": "GoogleTypeDate", + "description": "One or more of the following must be set. All fields are optional, but\nwhen set must be valid date or time values." + }, + "dayOfWeek": { + "enum": [ + "DAY_OF_WEEK_UNSPECIFIED", + "MONDAY", + "TUESDAY", + "WEDNESDAY", + "THURSDAY", + "FRIDAY", + "SATURDAY", + "SUNDAY" + ], + "enumDescriptions": [ + "The unspecified day-of-week.", + "The day-of-week of Monday.", + "The day-of-week of Tuesday.", + "The day-of-week of Wednesday.", + "The day-of-week of Thursday.", + "The day-of-week of Friday.", + "The day-of-week of Saturday.", + "The day-of-week of Sunday." + ], + "type": "string" + }, + "time": { + "$ref": "GoogleTypeTimeOfDay" + }, + "timeZone": { + "$ref": "GooglePrivacyDlpV2beta2TimeZone" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta2DeidentifyConfig": { + "description": "The configuration that controls how the data will change.", + "id": "GooglePrivacyDlpV2beta2DeidentifyConfig", + "properties": { + "infoTypeTransformations": { + "$ref": "GooglePrivacyDlpV2beta2InfoTypeTransformations", + "description": "Treat the dataset as free-form text and apply the same free text\ntransformation everywhere." + }, + "recordTransformations": { + "$ref": "GooglePrivacyDlpV2beta2RecordTransformations", + "description": "Treat the dataset as structured. Transformations can be applied to\nspecific locations within structured datasets, such as transforming\na column within a table." + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta2DeidentifyContentRequest": { + "description": "Request to de-identify a list of items.", + "id": "GooglePrivacyDlpV2beta2DeidentifyContentRequest", + "properties": { + "deidentifyConfig": { + "$ref": "GooglePrivacyDlpV2beta2DeidentifyConfig", + "description": "Configuration for the de-identification of the content item.\nItems specified here will override the template referenced by the\ndeidentify_template_name argument." + }, + "deidentifyTemplateName": { + "description": "Optional template to use. Any configuration directly specified in\ndeidentify_config will override those set in the template. Singular fields\nthat are set in this request will replace their corresponding fields in the\ntemplate. Repeated fields are appended. Singular sub-messages and groups\nare recursively merged.", + "type": "string" + }, + "inspectConfig": { + "$ref": "GooglePrivacyDlpV2beta2InspectConfig", + "description": "Configuration for the inspector.\nItems specified here will override the template referenced by the\ninspect_template_name argument." + }, + "inspectTemplateName": { + "description": "Optional template to use. Any configuration directly specified in\ninspect_config will override those set in the template. Singular fields\nthat are set in this request will replace their corresponding fields in the\ntemplate. Repeated fields are appended. Singular sub-messages and groups\nare recursively merged.", + "type": "string" + }, + "item": { + "$ref": "GooglePrivacyDlpV2beta2ContentItem", + "description": "The item to de-identify. Will be treated as text." + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta2DeidentifyContentResponse": { + "description": "Results of de-identifying a ContentItem.", + "id": "GooglePrivacyDlpV2beta2DeidentifyContentResponse", + "properties": { + "item": { + "$ref": "GooglePrivacyDlpV2beta2ContentItem", + "description": "The de-identified item." + }, + "overview": { + "$ref": "GooglePrivacyDlpV2beta2TransformationOverview", + "description": "An overview of the changes that were made on the `item`." + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta2DeidentifyTemplate": { + "description": "The DeidentifyTemplates contains instructions on how to deidentify content.", + "id": "GooglePrivacyDlpV2beta2DeidentifyTemplate", + "properties": { "createTime": { - "description": "The time which this request was started.", + "description": "The creation timestamp of a inspectTemplate, output only field.", "format": "google-datetime", "type": "string" }, - "requestStorageConfig": { - "description": "The storage config used to create the Operation.", - "$ref": "GooglePrivacyDlpV2beta1StorageConfig" + "deidentifyConfig": { + "$ref": "GooglePrivacyDlpV2beta2DeidentifyConfig", + "description": "///////////// // The core content of the template // ///////////////" }, - "processedBytes": { - "description": "Total size in bytes that were processed.", - "format": "int64", + "description": { + "description": "Short description (max 256 chars).", "type": "string" }, - "totalEstimatedBytes": { - "description": "Estimate of the number of bytes to process.", - "format": "int64", + "displayName": { + "description": "Display name (max 256 chars).", "type": "string" }, - "infoTypeStats": { - "type": "array", - "items": { - "$ref": "GooglePrivacyDlpV2beta1InfoTypeStatistics" - } + "name": { + "description": "The template name. Output only.\n\nThe template will have one of the following formats:\n`projects/PROJECT_ID/deidentifyTemplates/TEMPLATE_ID` OR\n`organizations/ORGANIZATION_ID/deidentifyTemplates/TEMPLATE_ID`", + "type": "string" + }, + "updateTime": { + "description": "The last update timestamp of a inspectTemplate, output only field.", + "format": "google-datetime", + "type": "string" } }, - "id": "GooglePrivacyDlpV2beta1InspectOperationMetadata" + "type": "object" }, - "GooglePrivacyDlpV2beta2RecordKey": { - "description": "Message for a unique key indicating a record that contains a finding.", - "type": "object", + "GooglePrivacyDlpV2beta2DetectionRule": { + "description": "Rule for modifying a custom info type to alter behavior under certain\ncircumstances, depending on the specific details of the rule. Not supported\nfor the `surrogate_type` custom info type.", + "id": "GooglePrivacyDlpV2beta2DetectionRule", "properties": { - "cloudStorageKey": { - "$ref": "GooglePrivacyDlpV2beta2CloudStorageKey" - }, - "datastoreKey": { - "$ref": "GooglePrivacyDlpV2beta2DatastoreKey" + "hotwordRule": { + "$ref": "GooglePrivacyDlpV2beta2HotwordRule", + "description": "Hotword-based detection rule." } }, - "id": "GooglePrivacyDlpV2beta2RecordKey" + "type": "object" }, - "GooglePrivacyDlpV2beta1InfoType": { + "GooglePrivacyDlpV2beta2Dictionary": { + "description": "Custom information type based on a dictionary of words or phrases. This can\nbe used to match sensitive information specific to the data, such as a list\nof employee IDs or job titles.\n\nDictionary words are case-insensitive and all characters other than letters\nand digits in the unicode [Basic Multilingual\nPlane](https://en.wikipedia.org/wiki/Plane_%28Unicode%29#Basic_Multilingual_Plane)\nwill be replaced with whitespace when scanning for matches, so the\ndictionary phrase \"Sam Johnson\" will match all three phrases \"sam johnson\",\n\"Sam, Johnson\", and \"Sam (Johnson)\". Additionally, the characters\nsurrounding any match must be of a different type than the adjacent\ncharacters within the word, so letters must be next to non-letters and\ndigits next to non-digits. For example, the dictionary word \"jen\" will\nmatch the first three letters of the text \"jen123\" but will return no\nmatches for \"jennifer\".\n\nDictionary words containing a large number of characters that are not\nletters or digits may result in unexpected findings because such characters\nare treated as whitespace.", + "id": "GooglePrivacyDlpV2beta2Dictionary", + "properties": { + "wordList": { + "$ref": "GooglePrivacyDlpV2beta2WordList", + "description": "List of words or phrases to search for." + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta2DlpJob": { + "description": "Combines all of the information about a DLP job.", + "id": "GooglePrivacyDlpV2beta2DlpJob", + "properties": { + "createTime": { + "description": "Time when the job was created.", + "format": "google-datetime", + "type": "string" + }, + "endTime": { + "description": "Time when the job finished.", + "format": "google-datetime", + "type": "string" + }, + "errorResults": { + "description": "A stream of errors encountered running the job.", + "items": { + "$ref": "GoogleRpcStatus" + }, + "type": "array" + }, + "inspectDetails": { + "$ref": "GooglePrivacyDlpV2beta2InspectDataSourceDetails", + "description": "Results from inspecting a data source." + }, + "jobTriggerName": { + "description": "If created by a job trigger, the resource name of the trigger that\ninstantiated the job.", + "type": "string" + }, + "name": { + "description": "The server-assigned name.", + "type": "string" + }, + "riskDetails": { + "$ref": "GooglePrivacyDlpV2beta2AnalyzeDataSourceRiskDetails", + "description": "Results from analyzing risk of a data source." + }, + "startTime": { + "description": "Time when the job started.", + "format": "google-datetime", + "type": "string" + }, + "state": { + "description": "State of a job.", + "enum": [ + "JOB_STATE_UNSPECIFIED", + "PENDING", + "RUNNING", + "DONE", + "CANCELED", + "FAILED" + ], + "enumDescriptions": [ + "", + "The job has not yet started.", + "The job is currently running.", + "The job is no longer running.", + "The job was canceled before it could complete.", + "The job had an error and did not complete." + ], + "type": "string" + }, + "type": { + "description": "The type of job.", + "enum": [ + "DLP_JOB_TYPE_UNSPECIFIED", + "INSPECT_JOB", + "RISK_ANALYSIS_JOB" + ], + "enumDescriptions": [ + "", + "The job inspected Google Cloud for sensitive data.", + "The job executed a Risk Analysis computation." + ], + "type": "string" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta2EntityId": { + "description": "An entity in a dataset is a field or set of fields that correspond to a\nsingle person. For example, in medical records the `EntityId` might be\na patient identifier, or for financial records it might be an account\nidentifier. This message is used when generalizations or analysis must be\nconsistent across multiple rows pertaining to the same entity.", + "id": "GooglePrivacyDlpV2beta2EntityId", + "properties": { + "field": { + "$ref": "GooglePrivacyDlpV2beta2FieldId", + "description": "Composite key indicating which field contains the entity identifier." + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta2Error": { + "description": "The results of an unsuccessful activation of the JobTrigger.", + "id": "GooglePrivacyDlpV2beta2Error", + "properties": { + "details": { + "$ref": "GoogleRpcStatus" + }, + "timestamps": { + "description": "The times the error occurred.", + "items": { + "format": "google-datetime", + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta2Expressions": { + "description": "An expression, consisting or an operator and conditions.", + "id": "GooglePrivacyDlpV2beta2Expressions", + "properties": { + "conditions": { + "$ref": "GooglePrivacyDlpV2beta2Conditions" + }, + "logicalOperator": { + "description": "The operator to apply to the result of conditions. Default and currently\nonly supported value is `AND`.", + "enum": [ + "LOGICAL_OPERATOR_UNSPECIFIED", + "AND" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta2FieldId": { + "description": "General identifier of a data field in a storage service.", + "id": "GooglePrivacyDlpV2beta2FieldId", + "properties": { + "name": { + "description": "Name describing the field.", + "type": "string" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta2FieldTransformation": { + "description": "The transformation to apply to the field.", + "id": "GooglePrivacyDlpV2beta2FieldTransformation", + "properties": { + "condition": { + "$ref": "GooglePrivacyDlpV2beta2RecordCondition", + "description": "Only apply the transformation if the condition evaluates to true for the\ngiven `RecordCondition`. The conditions are allowed to reference fields\nthat are not used in the actual transformation. [optional]\n\nExample Use Cases:\n\n- Apply a different bucket transformation to an age column if the zip code\ncolumn for the same record is within a specific range.\n- Redact a field if the date of birth field is greater than 85." + }, + "fields": { + "description": "Input field(s) to apply the transformation to. [required]", + "items": { + "$ref": "GooglePrivacyDlpV2beta2FieldId" + }, + "type": "array" + }, + "infoTypeTransformations": { + "$ref": "GooglePrivacyDlpV2beta2InfoTypeTransformations", + "description": "Treat the contents of the field as free text, and selectively\ntransform content that matches an `InfoType`." + }, + "primitiveTransformation": { + "$ref": "GooglePrivacyDlpV2beta2PrimitiveTransformation", + "description": "Apply the transformation to the entire field." + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta2FileSet": { + "description": "Set of files to scan.", + "id": "GooglePrivacyDlpV2beta2FileSet", + "properties": { + "url": { + "description": "The url, in the format `gs://\u003cbucket\u003e/\u003cpath\u003e`. Trailing wildcard in the\npath is allowed.", + "type": "string" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta2Finding": { + "description": "Represents a piece of potentially sensitive content.", + "id": "GooglePrivacyDlpV2beta2Finding", + "properties": { + "createTime": { + "description": "Timestamp when finding was detected.", + "format": "google-datetime", + "type": "string" + }, + "infoType": { + "$ref": "GooglePrivacyDlpV2beta2InfoType", + "description": "The type of content that might have been found.\nProvided if requested by the `InspectConfig`." + }, + "likelihood": { + "description": "Estimate of how likely it is that the `info_type` is correct.", + "enum": [ + "LIKELIHOOD_UNSPECIFIED", + "VERY_UNLIKELY", + "UNLIKELY", + "POSSIBLE", + "LIKELY", + "VERY_LIKELY" + ], + "enumDescriptions": [ + "Default value; information with all likelihoods is included.", + "Few matching elements.", + "", + "Some matching elements.", + "", + "Many matching elements." + ], + "type": "string" + }, + "location": { + "$ref": "GooglePrivacyDlpV2beta2Location", + "description": "Where the content was found." + }, + "quote": { + "description": "The content that was found. Even if the content is not textual, it\nmay be converted to a textual representation here.\nProvided if requested by the `InspectConfig` and the finding is\nless than or equal to 4096 bytes long. If the finding exceeds 4096 bytes\nin length, the quote may be omitted.", + "type": "string" + }, + "quoteInfo": { + "$ref": "GooglePrivacyDlpV2beta2QuoteInfo", + "description": "Contains data parsed from quotes. Only populated if include_quote was set\nto true and a supported infoType was requested. Currently supported\ninfoTypes: DATE, DATE_OF_BIRTH and TIME." + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta2FindingLimits": { + "id": "GooglePrivacyDlpV2beta2FindingLimits", + "properties": { + "maxFindingsPerInfoType": { + "description": "Configuration of findings limit given for specified infoTypes.", + "items": { + "$ref": "GooglePrivacyDlpV2beta2InfoTypeLimit" + }, + "type": "array" + }, + "maxFindingsPerItem": { + "description": "Max number of findings that will be returned for each item scanned.\nWhen set within `InspectDataSourceRequest`,\nthe maximum returned is 1000 regardless if this is set higher.\nWhen set within `InspectContentRequest`, this field is ignored.", + "format": "int32", + "type": "integer" + }, + "maxFindingsPerRequest": { + "description": "Max number of findings that will be returned per request/job.\nWhen set within `InspectContentRequest`, the maximum returned is 1000\nregardless if this is set higher.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta2FixedSizeBucketingConfig": { + "description": "Buckets values based on fixed size ranges. The\nBucketing transformation can provide all of this functionality,\nbut requires more configuration. This message is provided as a convenience to\nthe user for simple bucketing strategies.\n\nThe transformed value will be a hyphenated string of\n\u003clower_bound\u003e-\u003cupper_bound\u003e, i.e if lower_bound = 10 and upper_bound = 20\nall values that are within this bucket will be replaced with \"10-20\".\n\nThis can be used on data of type: double, long.\n\nIf the bound Value type differs from the type of data\nbeing transformed, we will first attempt converting the type of the data to\nbe transformed to match the type of the bound before comparing.", + "id": "GooglePrivacyDlpV2beta2FixedSizeBucketingConfig", + "properties": { + "bucketSize": { + "description": "Size of each bucket (except for minimum and maximum buckets). So if\n`lower_bound` = 10, `upper_bound` = 89, and `bucket_size` = 10, then the\nfollowing buckets would be used: -10, 10-20, 20-30, 30-40, 40-50, 50-60,\n60-70, 70-80, 80-89, 89+. Precision up to 2 decimals works. [Required].", + "format": "double", + "type": "number" + }, + "lowerBound": { + "$ref": "GooglePrivacyDlpV2beta2Value", + "description": "Lower bound value of buckets. All values less than `lower_bound` are\ngrouped together into a single bucket; for example if `lower_bound` = 10,\nthen all values less than 10 are replaced with the value “-10”. [Required]." + }, + "upperBound": { + "$ref": "GooglePrivacyDlpV2beta2Value", + "description": "Upper bound value of buckets. All values greater than upper_bound are\ngrouped together into a single bucket; for example if `upper_bound` = 89,\nthen all values greater than 89 are replaced with the value “89+”.\n[Required]." + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta2HotwordRule": { + "description": "Detection rule that adjusts the likelihood of findings within a certain\nproximity of hotwords.", + "id": "GooglePrivacyDlpV2beta2HotwordRule", + "properties": { + "hotwordRegex": { + "$ref": "GooglePrivacyDlpV2beta2Regex", + "description": "Regex pattern defining what qualifies as a hotword." + }, + "likelihoodAdjustment": { + "$ref": "GooglePrivacyDlpV2beta2LikelihoodAdjustment", + "description": "Likelihood adjustment to apply to all matching findings." + }, + "proximity": { + "$ref": "GooglePrivacyDlpV2beta2Proximity", + "description": "Proximity of the finding within which the entire hotword must reside.\nThe total length of the window cannot exceed 1000 characters. Note that\nthe finding itself will be included in the window, so that hotwords may\nbe used to match substrings of the finding itself. For example, the\ncertainty of a phone number regex \"\\(\\d{3}\\) \\d{3}-\\d{4}\" could be\nadjusted upwards if the area code is known to be the local area code of\na company office using the hotword regex \"\\(xxx\\)\", where \"xxx\"\nis the area code in question." + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta2ImageLocation": { + "description": "Bounding box encompassing detected text within an image.", + "id": "GooglePrivacyDlpV2beta2ImageLocation", + "properties": { + "height": { + "description": "Height of the bounding box in pixels.", + "format": "int32", + "type": "integer" + }, + "left": { + "description": "Left coordinate of the bounding box. (0,0) is upper left.", + "format": "int32", + "type": "integer" + }, + "top": { + "description": "Top coordinate of the bounding box. (0,0) is upper left.", + "format": "int32", + "type": "integer" + }, + "width": { + "description": "Width of the bounding box in pixels.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta2ImageRedactionConfig": { + "description": "Configuration for determining how redaction of images should occur.", + "id": "GooglePrivacyDlpV2beta2ImageRedactionConfig", + "properties": { + "infoType": { + "$ref": "GooglePrivacyDlpV2beta2InfoType", + "description": "Only one per info_type should be provided per request. If not\nspecified, and redact_all_text is false, the DLP API will redact all\ntext that it matches against all info_types that are found, but not\nspecified in another ImageRedactionConfig." + }, + "redactAllText": { + "description": "If true, all text found in the image, regardless whether it matches an\ninfo_type, is redacted.", + "type": "boolean" + }, + "redactionColor": { + "$ref": "GooglePrivacyDlpV2beta2Color", + "description": "The color to use when redacting content from an image. If not specified,\nthe default is black." + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta2InfoType": { "description": "Type of information detected by the API.", - "type": "object", + "id": "GooglePrivacyDlpV2beta2InfoType", "properties": { "name": { "description": "Name of the information type.", "type": "string" } }, - "id": "GooglePrivacyDlpV2beta1InfoType" - }, - "GooglePrivacyDlpV2beta2EntityId": { - "description": "An entity in a dataset is a field or set of fields that correspond to a\nsingle person. For example, in medical records the `EntityId` might be\na patient identifier, or for financial records it might be an account\nidentifier. This message is used when generalizations or analysis must be\nconsistent across multiple rows pertaining to the same entity.", - "type": "object", - "properties": { - "field": { - "description": "Composite key indicating which field contains the entity identifier.", - "$ref": "GooglePrivacyDlpV2beta2FieldId" - } - }, - "id": "GooglePrivacyDlpV2beta2EntityId" - }, - "GooglePrivacyDlpV2beta2Bucket": { - "type": "object", - "properties": { - "max": { - "$ref": "GooglePrivacyDlpV2beta2Value", - "description": "Upper bound of the range, exclusive; type must match min." - }, - "replacementValue": { - "$ref": "GooglePrivacyDlpV2beta2Value", - "description": "Replacement value for this bucket. If not provided\nthe default behavior will be to hyphenate the min-max range." - }, - "min": { - "description": "Lower bound of the range, inclusive. Type should be the same as max if\nused.", - "$ref": "GooglePrivacyDlpV2beta2Value" - } - }, - "id": "GooglePrivacyDlpV2beta2Bucket", - "description": "Bucket is represented as a range, along with replacement values." - }, - "GooglePrivacyDlpV2beta2CreateInspectTemplateRequest": { - "type": "object", - "properties": { - "templateId": { - "description": "The template id can contain uppercase and lowercase letters,\nnumbers, and hyphens; that is, it must match the regular\nexpression: `[a-zA-Z\\\\d-]+`. The maximum length is 100\ncharacters. Can be empty to allow the system to generate one.", - "type": "string" - }, - "inspectTemplate": { - "description": "The InspectTemplate to create.", - "$ref": "GooglePrivacyDlpV2beta2InspectTemplate" - } - }, - "id": "GooglePrivacyDlpV2beta2CreateInspectTemplateRequest", - "description": "Request message for CreateInspectTemplate." - }, - "GooglePrivacyDlpV2beta1RiskAnalysisOperationResult": { - "description": "Result of a risk analysis\n[`Operation`](/dlp/docs/reference/rest/v2beta1/inspect.operations)\nrequest.", - "type": "object", - "properties": { - "numericalStatsResult": { - "$ref": "GooglePrivacyDlpV2beta1NumericalStatsResult" - }, - "kMapEstimationResult": { - "$ref": "GooglePrivacyDlpV2beta1KMapEstimationResult" - }, - "kAnonymityResult": { - "$ref": "GooglePrivacyDlpV2beta1KAnonymityResult" - }, - "lDiversityResult": { - "$ref": "GooglePrivacyDlpV2beta1LDiversityResult" - }, - "categoricalStatsResult": { - "$ref": "GooglePrivacyDlpV2beta1CategoricalStatsResult" - } - }, - "id": "GooglePrivacyDlpV2beta1RiskAnalysisOperationResult" - }, - "GooglePrivacyDlpV2beta1CategoricalStatsConfig": { - "properties": { - "field": { - "description": "Field to compute categorical stats on. All column types are\nsupported except for arrays and structs. However, it may be more\ninformative to use NumericalStats when the field type is supported,\ndepending on the data.", - "$ref": "GooglePrivacyDlpV2beta1FieldId" - } - }, - "id": "GooglePrivacyDlpV2beta1CategoricalStatsConfig", - "description": "Compute numerical stats over an individual column, including\nnumber of distinct values and value count distribution.", "type": "object" }, - "GooglePrivacyDlpV2beta2CategoricalStatsHistogramBucket": { - "type": "object", + "GooglePrivacyDlpV2beta2InfoTypeDescription": { + "description": "InfoType description.", + "id": "GooglePrivacyDlpV2beta2InfoTypeDescription", "properties": { - "bucketSize": { - "description": "Total number of values in this bucket.", - "format": "int64", + "displayName": { + "description": "Human readable form of the infoType name.", "type": "string" }, - "valueFrequencyUpperBound": { - "description": "Upper bound on the value frequency of the values in this bucket.", - "format": "int64", + "name": { + "description": "Internal name of the infoType.", "type": "string" }, - "valueFrequencyLowerBound": { - "description": "Lower bound on the value frequency of the values in this bucket.", - "format": "int64", - "type": "string" - }, - "bucketValues": { - "description": "Sample of value frequencies in this bucket. The total number of\nvalues returned per bucket is capped at 20.", - "type": "array", + "supportedBy": { + "description": "Which parts of the API supports this InfoType.", + "enumDescriptions": [ + "", + "Supported by the inspect operations.", + "Supported by the risk analysis operations." + ], "items": { - "$ref": "GooglePrivacyDlpV2beta2ValueFrequency" - } - } - }, - "id": "GooglePrivacyDlpV2beta2CategoricalStatsHistogramBucket" - }, - "GooglePrivacyDlpV2beta1KMapEstimationConfig": { - "type": "object", - "properties": { - "auxiliaryTables": { - "description": "Several auxiliary tables can be used in the analysis. Each custom_tag\nused to tag a quasi-identifiers column must appear in exactly one column\nof one auxiliary table.", - "type": "array", - "items": { - "$ref": "GooglePrivacyDlpV2beta1AuxiliaryTable" - } - }, - "quasiIds": { - "description": "Fields considered to be quasi-identifiers. No two columns can have the\nsame tag. [required]", - "type": "array", - "items": { - "$ref": "GooglePrivacyDlpV2beta1TaggedField" - } - }, - "regionCode": { - "description": "ISO 3166-1 alpha-2 region code to use in the statistical modeling.\nRequired if no column is tagged with a region-specific InfoType (like\nUS_ZIP_5) or a region code.", - "type": "string" - } - }, - "id": "GooglePrivacyDlpV2beta1KMapEstimationConfig", - "description": "Reidentifiability metric. This corresponds to a risk model similar to what\nis called \"journalist risk\" in the literature, except the attack dataset is\nstatistically modeled instead of being perfectly known. This can be done\nusing publicly available data (like the US Census), or using a custom\nstatistical model (indicated as one or several BigQuery tables), or by\nextrapolating from the distribution of values in the input dataset." - }, - "GooglePrivacyDlpV2beta2NumericalStatsResult": { - "type": "object", - "properties": { - "minValue": { - "$ref": "GooglePrivacyDlpV2beta2Value", - "description": "Minimum value appearing in the column." - }, - "maxValue": { - "description": "Maximum value appearing in the column.", - "$ref": "GooglePrivacyDlpV2beta2Value" - }, - "quantileValues": { - "type": "array", - "items": { - "$ref": "GooglePrivacyDlpV2beta2Value" + "enum": [ + "ENUM_TYPE_UNSPECIFIED", + "INSPECT", + "RISK_ANALYSIS" + ], + "type": "string" }, - "description": "List of 99 values that partition the set of field values into 100 equal\nsized buckets." + "type": "array" } }, - "id": "GooglePrivacyDlpV2beta2NumericalStatsResult", - "description": "Result of the numerical stats computation." + "type": "object" }, - "GooglePrivacyDlpV2beta1RiskAnalysisOperationMetadata": { - "description": "Metadata returned within the\n[`riskAnalysis.operations.get`](/dlp/docs/reference/rest/v2beta1/riskAnalysis.operations/get)\nfor risk analysis.", - "type": "object", + "GooglePrivacyDlpV2beta2InfoTypeLimit": { + "description": "Max findings configuration per infoType, per content item or long\nrunning DlpJob.", + "id": "GooglePrivacyDlpV2beta2InfoTypeLimit", "properties": { - "createTime": { - "description": "The time which this request was started.", - "format": "google-datetime", - "type": "string" + "infoType": { + "$ref": "GooglePrivacyDlpV2beta2InfoType", + "description": "Type of information the findings limit applies to. Only one limit per\ninfo_type should be provided. If InfoTypeLimit does not have an\ninfo_type, the DLP API applies the limit against all info_types that\nare found but not specified in another InfoTypeLimit." }, - "requestedSourceTable": { - "$ref": "GooglePrivacyDlpV2beta1BigQueryTable", - "description": "Input dataset to compute metrics over." - }, - "requestedPrivacyMetric": { - "description": "Privacy metric to compute.", - "$ref": "GooglePrivacyDlpV2beta1PrivacyMetric" + "maxFindings": { + "description": "Max findings limit for the given infoType.", + "format": "int32", + "type": "integer" } }, - "id": "GooglePrivacyDlpV2beta1RiskAnalysisOperationMetadata" + "type": "object" }, - "GooglePrivacyDlpV2beta2TaggedField": { - "description": "A column with a semantic tag attached.", - "type": "object", + "GooglePrivacyDlpV2beta2InfoTypeStatistics": { + "description": "Statistics regarding a specific InfoType.", + "id": "GooglePrivacyDlpV2beta2InfoTypeStatistics", "properties": { - "customTag": { - "description": "A column can be tagged with a custom tag. In this case, the user must\nindicate an auxiliary table that contains statistical information on\nthe possible values of this column (below).", + "count": { + "description": "Number of findings for this infoType.", + "format": "int64", "type": "string" }, "infoType": { - "description": "A column can be tagged with a InfoType to use the relevant public\ndataset as a statistical model of population, if available. We\ncurrently support US ZIP codes, region codes, ages and genders.", - "$ref": "GooglePrivacyDlpV2beta2InfoType" - }, - "inferred": { - "description": "If no semantic tag is indicated, we infer the statistical model from\nthe distribution of values in the input data", - "$ref": "GoogleProtobufEmpty" - }, - "field": { - "description": "Identifies the column. [required]", - "$ref": "GooglePrivacyDlpV2beta2FieldId" + "$ref": "GooglePrivacyDlpV2beta2InfoType", + "description": "The type of finding this stat is for." } }, - "id": "GooglePrivacyDlpV2beta2TaggedField" + "type": "object" + }, + "GooglePrivacyDlpV2beta2InfoTypeTransformation": { + "description": "A transformation to apply to text that is identified as a specific\ninfo_type.", + "id": "GooglePrivacyDlpV2beta2InfoTypeTransformation", + "properties": { + "infoTypes": { + "description": "InfoTypes to apply the transformation to. Empty list will match all\navailable infoTypes for this transformation.", + "items": { + "$ref": "GooglePrivacyDlpV2beta2InfoType" + }, + "type": "array" + }, + "primitiveTransformation": { + "$ref": "GooglePrivacyDlpV2beta2PrimitiveTransformation", + "description": "Primitive transformation to apply to the infoType. [required]" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta2InfoTypeTransformations": { + "description": "A type of transformation that will scan unstructured text and\napply various `PrimitiveTransformation`s to each finding, where the\ntransformation is applied to only values that were identified as a specific\ninfo_type.", + "id": "GooglePrivacyDlpV2beta2InfoTypeTransformations", + "properties": { + "transformations": { + "description": "Transformation for each infoType. Cannot specify more than one\nfor a given infoType. [required]", + "items": { + "$ref": "GooglePrivacyDlpV2beta2InfoTypeTransformation" + }, + "type": "array" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta2InspectConfig": { + "description": "Configuration description of the scanning process.\nWhen used with redactContent only info_types and min_likelihood are currently\nused.", + "id": "GooglePrivacyDlpV2beta2InspectConfig", + "properties": { + "customInfoTypes": { + "description": "Custom infoTypes provided by the user.", + "items": { + "$ref": "GooglePrivacyDlpV2beta2CustomInfoType" + }, + "type": "array" + }, + "excludeInfoTypes": { + "description": "When true, excludes type information of the findings.", + "type": "boolean" + }, + "includeQuote": { + "description": "When true, a contextual quote from the data that triggered a finding is\nincluded in the response; see Finding.quote.", + "type": "boolean" + }, + "infoTypes": { + "description": "Restricts what info_types to look for. The values must correspond to\nInfoType values returned by ListInfoTypes or found in documentation.\nEmpty info_types runs all enabled detectors.", + "items": { + "$ref": "GooglePrivacyDlpV2beta2InfoType" + }, + "type": "array" + }, + "limits": { + "$ref": "GooglePrivacyDlpV2beta2FindingLimits" + }, + "minLikelihood": { + "description": "Only returns findings equal or above this threshold. The default is\nPOSSIBLE.", + "enum": [ + "LIKELIHOOD_UNSPECIFIED", + "VERY_UNLIKELY", + "UNLIKELY", + "POSSIBLE", + "LIKELY", + "VERY_LIKELY" + ], + "enumDescriptions": [ + "Default value; information with all likelihoods is included.", + "Few matching elements.", + "", + "Some matching elements.", + "", + "Many matching elements." + ], + "type": "string" + } + }, + "type": "object" }, "GooglePrivacyDlpV2beta2InspectContentRequest": { "description": "Request to search for potentially sensitive info in a ContentItem.", - "type": "object", + "id": "GooglePrivacyDlpV2beta2InspectContentRequest", "properties": { "inspectConfig": { "$ref": "GooglePrivacyDlpV2beta2InspectConfig", @@ -2705,62 +3417,105 @@ "description": "The item to inspect." } }, - "id": "GooglePrivacyDlpV2beta2InspectContentRequest" + "type": "object" }, - "GooglePrivacyDlpV2beta2DeidentifyTemplate": { - "id": "GooglePrivacyDlpV2beta2DeidentifyTemplate", - "description": "The DeidentifyTemplates contains instructions on how to deidentify content.", - "type": "object", + "GooglePrivacyDlpV2beta2InspectContentResponse": { + "description": "Results of inspecting an item.", + "id": "GooglePrivacyDlpV2beta2InspectContentResponse", "properties": { - "displayName": { - "type": "string", - "description": "Display name (max 256 chars)." + "result": { + "$ref": "GooglePrivacyDlpV2beta2InspectResult", + "description": "The findings." + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta2InspectDataSourceDetails": { + "description": "The results of an inspect DataSource job.", + "id": "GooglePrivacyDlpV2beta2InspectDataSourceDetails", + "properties": { + "requestedOptions": { + "$ref": "GooglePrivacyDlpV2beta2RequestedOptions", + "description": "The configuration used for this job." }, - "description": { - "description": "Short description (max 256 chars).", + "result": { + "$ref": "GooglePrivacyDlpV2beta2Result", + "description": "A summary of the outcome of this inspect job." + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta2InspectDataSourceRequest": { + "description": "Request for scheduling a scan of a data subset from a Google Platform data\nrepository.", + "id": "GooglePrivacyDlpV2beta2InspectDataSourceRequest", + "properties": { + "jobConfig": { + "$ref": "GooglePrivacyDlpV2beta2InspectJobConfig", + "description": "A configuration for the job." + }, + "jobId": { + "description": "Optional job ID to use for the created job. If not provided, a job ID will\nautomatically be generated. Must be unique within the project. The job ID\ncan contain uppercase and lowercase letters, numbers, and hyphens; that is,\nit must match the regular expression: `[a-zA-Z\\\\d-]+`. The maximum length\nis 100 characters. Can be empty to allow the system to generate one.", + "type": "string" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta2InspectJobConfig": { + "id": "GooglePrivacyDlpV2beta2InspectJobConfig", + "properties": { + "actions": { + "description": "Actions to execute at the completion of the job. Are executed in the order\nprovided.", + "items": { + "$ref": "GooglePrivacyDlpV2beta2Action" + }, + "type": "array" + }, + "inspectConfig": { + "$ref": "GooglePrivacyDlpV2beta2InspectConfig", + "description": "How and what to scan for." + }, + "inspectTemplateName": { + "description": "If provided, will be used as the default for all values in InspectConfig.\n`inspect_config` will be merged into the values persisted as part of the\ntemplate.", "type": "string" }, - "deidentifyConfig": { - "$ref": "GooglePrivacyDlpV2beta2DeidentifyConfig", - "description": "///////////// // The core content of the template // ///////////////" + "outputConfig": { + "$ref": "GooglePrivacyDlpV2beta2OutputStorageConfig", + "description": "Where to put the findings." }, + "storageConfig": { + "$ref": "GooglePrivacyDlpV2beta2StorageConfig", + "description": "The data to scan." + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta2InspectResult": { + "description": "All the findings for a single scanned item.", + "id": "GooglePrivacyDlpV2beta2InspectResult", + "properties": { + "findings": { + "description": "List of findings for an item.", + "items": { + "$ref": "GooglePrivacyDlpV2beta2Finding" + }, + "type": "array" + }, + "findingsTruncated": { + "description": "If true, then this item might have more findings than were returned,\nand the findings returned are an arbitrary subset of all findings.\nThe findings list might be truncated because the input items were too\nlarge, or because the server reached the maximum amount of resources\nallowed for a single API call. For best results, divide the input into\nsmaller batches.", + "type": "boolean" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta2InspectTemplate": { + "description": "The inspectTemplate contains a configuration (set of types of sensitive data\nto be detected) to be used anywhere you otherwise would normally specify\nInspectConfig.", + "id": "GooglePrivacyDlpV2beta2InspectTemplate", + "properties": { "createTime": { "description": "The creation timestamp of a inspectTemplate, output only field.", "format": "google-datetime", "type": "string" }, - "updateTime": { - "description": "The last update timestamp of a inspectTemplate, output only field.", - "format": "google-datetime", - "type": "string" - }, - "name": { - "description": "The template name. Output only.\n\nThe template will have one of the following formats:\n`projects/PROJECT_ID/deidentifyTemplates/TEMPLATE_ID` OR\n`organizations/ORGANIZATION_ID/deidentifyTemplates/TEMPLATE_ID`", - "type": "string" - } - } - }, - "GooglePrivacyDlpV2beta2DatastoreOptions": { - "type": "object", - "properties": { - "partitionId": { - "$ref": "GooglePrivacyDlpV2beta2PartitionId", - "description": "A partition ID identifies a grouping of entities. The grouping is always\nby project and namespace, however the namespace ID may be empty." - }, - "kind": { - "$ref": "GooglePrivacyDlpV2beta2KindExpression", - "description": "The kind to process." - } - }, - "id": "GooglePrivacyDlpV2beta2DatastoreOptions", - "description": "Options defining a data set within Google Cloud Datastore." - }, - "GooglePrivacyDlpV2beta2InspectTemplate": { - "properties": { - "inspectConfig": { - "$ref": "GooglePrivacyDlpV2beta2InspectConfig", - "description": "The core content of the template. Configuration of the scanning process." - }, "description": { "description": "Short description (max 256 chars).", "type": "string" @@ -2769,312 +3524,146 @@ "description": "Display name (max 256 chars).", "type": "string" }, - "createTime": { - "description": "The creation timestamp of a inspectTemplate, output only field.", - "format": "google-datetime", + "inspectConfig": { + "$ref": "GooglePrivacyDlpV2beta2InspectConfig", + "description": "The core content of the template. Configuration of the scanning process." + }, + "name": { + "description": "The template name. Output only.\n\nThe template will have one of the following formats:\n`projects/PROJECT_ID/inspectTemplates/TEMPLATE_ID` OR\n`organizations/ORGANIZATION_ID/inspectTemplates/TEMPLATE_ID`", "type": "string" }, "updateTime": { "description": "The last update timestamp of a inspectTemplate, output only field.", "format": "google-datetime", "type": "string" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta2JobTrigger": { + "description": "Contains a configuration to make dlp api calls on a repeating basis.", + "id": "GooglePrivacyDlpV2beta2JobTrigger", + "properties": { + "createTime": { + "description": "The creation timestamp of a triggeredJob, output only field.", + "format": "google-datetime", + "type": "string" + }, + "description": { + "description": "User provided description (max 256 chars)", + "type": "string" + }, + "displayName": { + "description": "Display name (max 100 chars)", + "type": "string" + }, + "errors": { + "description": "A stream of errors encountered when the trigger was activated. Repeated\nerrors may result in the JobTrigger automaticaly being paused.\nWill return the last 100 errors. Whenever the JobTrigger is modified\nthis list will be cleared. Output only field.", + "items": { + "$ref": "GooglePrivacyDlpV2beta2Error" + }, + "type": "array" + }, + "inspectJob": { + "$ref": "GooglePrivacyDlpV2beta2InspectJobConfig" + }, + "lastRunTime": { + "description": "The timestamp of the last time this trigger executed.", + "format": "google-datetime", + "type": "string" }, "name": { - "type": "string", - "description": "The template name. Output only.\n\nThe template will have one of the following formats:\n`projects/PROJECT_ID/inspectTemplates/TEMPLATE_ID` OR\n`organizations/ORGANIZATION_ID/inspectTemplates/TEMPLATE_ID`" - } - }, - "id": "GooglePrivacyDlpV2beta2InspectTemplate", - "description": "The inspectTemplate contains a configuration (set of types of sensitive data\nto be detected) to be used anywhere you otherwise would normally specify\nInspectConfig.", - "type": "object" - }, - "GooglePrivacyDlpV2beta2CharsToIgnore": { - "description": "Characters to skip when doing deidentification of a value. These will be left\nalone and skipped.", - "type": "object", - "properties": { - "charactersToSkip": { + "description": "Unique resource name for the triggeredJob, assigned by the service when the\ntriggeredJob is created, for example\n`projects/dlp-test-project/triggeredJobs/53234423`.", "type": "string" }, - "commonCharactersToIgnore": { + "status": { + "description": "A status for this trigger. [required]", "enum": [ - "COMMON_CHARS_TO_IGNORE_UNSPECIFIED", - "NUMERIC", - "ALPHA_UPPER_CASE", - "ALPHA_LOWER_CASE", - "PUNCTUATION", - "WHITESPACE" + "STATUS_UNSPECIFIED", + "HEALTHY", + "PAUSED", + "CANCELLED" ], - "type": "string", "enumDescriptions": [ "", - "0-9", - "A-Z", - "a-z", - "US Punctuation, one of !\"#$%&'()*+,-./:;\u003c=\u003e?@[\\]^_`{|}~", - "Whitespace character, one of [ \\t\\n\\x0B\\f\\r]" - ] - } - }, - "id": "GooglePrivacyDlpV2beta2CharsToIgnore" - }, - "GoogleProtobufEmpty": { - "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 `{}`.", - "type": "object", - "properties": {}, - "id": "GoogleProtobufEmpty" - }, - "GooglePrivacyDlpV2beta2RedactConfig": { - "description": "Redact a given value. For example, if used with an `InfoTypeTransformation`\ntransforming PHONE_NUMBER, and input 'My phone number is 206-555-0123', the\noutput would be 'My phone number is '.", - "type": "object", - "properties": {}, - "id": "GooglePrivacyDlpV2beta2RedactConfig" - }, - "GooglePrivacyDlpV2beta2FieldId": { - "description": "General identifier of a data field in a storage service.", - "type": "object", - "properties": { - "name": { - "description": "Name describing the field.", - "type": "string" - } - }, - "id": "GooglePrivacyDlpV2beta2FieldId" - }, - "GooglePrivacyDlpV2beta2AnalyzeDataSourceRiskRequest": { - "id": "GooglePrivacyDlpV2beta2AnalyzeDataSourceRiskRequest", - "description": "Request for creating a risk analysis DlpJob.", - "type": "object", - "properties": { - "jobConfig": { - "$ref": "GooglePrivacyDlpV2beta2RiskAnalysisJobConfig", - "description": "Configuration for this risk analysis job." - } - } - }, - "GooglePrivacyDlpV2beta2DeidentifyContentRequest": { - "description": "Request to de-identify a list of items.", - "type": "object", - "properties": { - "deidentifyConfig": { - "description": "Configuration for the de-identification of the content item.\nItems specified here will override the template referenced by the\ndeidentify_template_name argument.", - "$ref": "GooglePrivacyDlpV2beta2DeidentifyConfig" - }, - "inspectConfig": { - "$ref": "GooglePrivacyDlpV2beta2InspectConfig", - "description": "Configuration for the inspector.\nItems specified here will override the template referenced by the\ninspect_template_name argument." - }, - "inspectTemplateName": { - "description": "Optional template to use. Any configuration directly specified in\ninspect_config will override those set in the template. Singular fields\nthat are set in this request will replace their corresponding fields in the\ntemplate. Repeated fields are appended. Singular sub-messages and groups\nare recursively merged.", - "type": "string" - }, - "item": { - "description": "The item to de-identify. Will be treated as text.", - "$ref": "GooglePrivacyDlpV2beta2ContentItem" - }, - "deidentifyTemplateName": { - "type": "string", - "description": "Optional template to use. Any configuration directly specified in\ndeidentify_config will override those set in the template. Singular fields\nthat are set in this request will replace their corresponding fields in the\ntemplate. Repeated fields are appended. Singular sub-messages and groups\nare recursively merged." - } - }, - "id": "GooglePrivacyDlpV2beta2DeidentifyContentRequest" - }, - "GooglePrivacyDlpV2beta1KMapEstimationHistogramBucket": { - "properties": { - "bucketSize": { - "type": "string", - "description": "Number of records within these anonymity bounds.", - "format": "int64" - }, - "bucketValues": { - "description": "Sample of quasi-identifier tuple values in this bucket. The total\nnumber of classes returned per bucket is capped at 20.", - "type": "array", - "items": { - "$ref": "GooglePrivacyDlpV2beta1KMapEstimationQuasiIdValues" - } - }, - "minAnonymity": { - "description": "Always positive.", - "format": "int64", - "type": "string" - }, - "maxAnonymity": { - "description": "Always greater than or equal to min_anonymity.", - "format": "int64", - "type": "string" - } - }, - "id": "GooglePrivacyDlpV2beta1KMapEstimationHistogramBucket", - "description": "A KMapEstimationHistogramBucket message with the following values:\n min_anonymity: 3\n max_anonymity: 5\n frequency: 42\nmeans that there are 42 records whose quasi-identifier values correspond\nto 3, 4 or 5 people in the overlying population. An important particular\ncase is when min_anonymity = max_anonymity = 1: the frequency field then\ncorresponds to the number of uniquely identifiable records.", - "type": "object" - }, - "GooglePrivacyDlpV2beta2InspectConfig": { - "type": "object", - "properties": { - "includeQuote": { - "description": "When true, a contextual quote from the data that triggered a finding is\nincluded in the response; see Finding.quote.", - "type": "boolean" - }, - "customInfoTypes": { - "description": "Custom infoTypes provided by the user.", - "type": "array", - "items": { - "$ref": "GooglePrivacyDlpV2beta2CustomInfoType" - } - }, - "limits": { - "$ref": "GooglePrivacyDlpV2beta2FindingLimits" - }, - "excludeInfoTypes": { - "description": "When true, excludes type information of the findings.", - "type": "boolean" - }, - "minLikelihood": { - "enumDescriptions": [ - "Default value; information with all likelihoods is included.", - "Few matching elements.", - "", - "Some matching elements.", - "", - "Many matching elements." + "Trigger is healthy.", + "Trigger is temporarily paused.", + "Trigger is cancelled and can not be resumed." ], - "enum": [ - "LIKELIHOOD_UNSPECIFIED", - "VERY_UNLIKELY", - "UNLIKELY", - "POSSIBLE", - "LIKELY", - "VERY_LIKELY" - ], - "description": "Only returns findings equal or above this threshold. The default is\nPOSSIBLE.", "type": "string" }, - "infoTypes": { - "description": "Restricts what info_types to look for. The values must correspond to\nInfoType values returned by ListInfoTypes or found in documentation.\nEmpty info_types runs all enabled detectors.", - "type": "array", + "triggers": { + "description": "A list of triggers which will be OR'ed together. Only one in the list\nneeds to trigger for a job to be started. The list may contain only\na single Schedule trigger and must have at least one object.", "items": { - "$ref": "GooglePrivacyDlpV2beta2InfoType" - } - } - }, - "id": "GooglePrivacyDlpV2beta2InspectConfig", - "description": "Configuration description of the scanning process.\nWhen used with redactContent only info_types and min_likelihood are currently\nused." - }, - "GooglePrivacyDlpV2beta1CloudStorageOptions": { - "description": "Options defining a file or a set of files (path ending with *) within\na Google Cloud Storage bucket.", - "type": "object", - "properties": { - "fileSet": { - "$ref": "GooglePrivacyDlpV2beta1FileSet" - } - }, - "id": "GooglePrivacyDlpV2beta1CloudStorageOptions" - }, - "GooglePrivacyDlpV2beta2QuasiIdField": { - "properties": { - "customTag": { + "$ref": "GooglePrivacyDlpV2beta2Trigger" + }, + "type": "array" + }, + "updateTime": { + "description": "The last update timestamp of a triggeredJob, output only field.", + "format": "google-datetime", "type": "string" - }, - "field": { - "$ref": "GooglePrivacyDlpV2beta2FieldId" } }, - "id": "GooglePrivacyDlpV2beta2QuasiIdField", - "description": "A quasi-identifier column has a custom_tag, used to know which column\nin the data corresponds to which column in the statistical model.", "type": "object" }, - "GooglePrivacyDlpV2beta2AnalyzeDataSourceRiskDetails": { + "GooglePrivacyDlpV2beta2KAnonymityConfig": { + "description": "k-anonymity metric, used for analysis of reidentification risk.", + "id": "GooglePrivacyDlpV2beta2KAnonymityConfig", "properties": { - "numericalStatsResult": { - "$ref": "GooglePrivacyDlpV2beta2NumericalStatsResult" + "entityId": { + "$ref": "GooglePrivacyDlpV2beta2EntityId", + "description": "Optional message indicating that each distinct entity_id should not\ncontribute to the k-anonymity count more than once per equivalence class.\nIf an entity_id appears on several rows with different quasi-identifier\ntuples, it will contribute to each count exactly once.\n\nThis can lead to unexpected results. Consider a table where ID 1 is\nassociated to quasi-identifier \"foo\", ID 2 to \"bar\", and ID 3 to *both*\nquasi-identifiers \"foo\" and \"bar\" (on separate rows), and where this ID\nis used as entity_id. Then, the anonymity value associated to ID 3 will\nbe 2, even if it is the only ID to be associated to both values \"foo\" and\n\"bar\"." }, - "kAnonymityResult": { - "$ref": "GooglePrivacyDlpV2beta2KAnonymityResult" - }, - "kMapEstimationResult": { - "$ref": "GooglePrivacyDlpV2beta2KMapEstimationResult" - }, - "lDiversityResult": { - "$ref": "GooglePrivacyDlpV2beta2LDiversityResult" - }, - "requestedSourceTable": { - "description": "Input dataset to compute metrics over.", - "$ref": "GooglePrivacyDlpV2beta2BigQueryTable" - }, - "categoricalStatsResult": { - "$ref": "GooglePrivacyDlpV2beta2CategoricalStatsResult" - }, - "requestedPrivacyMetric": { - "$ref": "GooglePrivacyDlpV2beta2PrivacyMetric", - "description": "Privacy metric to compute." - } - }, - "id": "GooglePrivacyDlpV2beta2AnalyzeDataSourceRiskDetails", - "description": "Result of a risk analysis operation request.", - "type": "object" - }, - "GooglePrivacyDlpV2beta2BigQueryOptions": { - "description": "Options defining BigQuery table and row identifiers.", - "type": "object", - "properties": { - "tableReference": { - "$ref": "GooglePrivacyDlpV2beta2BigQueryTable", - "description": "Complete BigQuery table reference." - }, - "identifyingFields": { - "description": "References to fields uniquely identifying rows within the table.\nNested fields in the format, like `person.birthdate.year`, are allowed.", - "type": "array", + "quasiIds": { + "description": "Set of fields to compute k-anonymity over. When multiple fields are\nspecified, they are considered a single composite key. Structs and\nrepeated data types are not supported; however, nested fields are\nsupported so long as they are not structs themselves or nested within\na repeated field.", "items": { "$ref": "GooglePrivacyDlpV2beta2FieldId" - } - } - }, - "id": "GooglePrivacyDlpV2beta2BigQueryOptions" - }, - "GooglePrivacyDlpV2beta1CloudStoragePath": { - "description": "A location in Cloud Storage.", - "type": "object", - "properties": { - "path": { - "description": "The url, in the format of `gs://bucket/\u003cpath\u003e`.", - "type": "string" - } - }, - "id": "GooglePrivacyDlpV2beta1CloudStoragePath" - }, - "GooglePrivacyDlpV2beta2TransformationOverview": { - "description": "Overview of the modifications that occurred.", - "type": "object", - "properties": { - "transformationSummaries": { - "type": "array", - "items": { - "$ref": "GooglePrivacyDlpV2beta2TransformationSummary" }, - "description": "Transformations applied to the dataset." - }, - "transformedBytes": { - "description": "Total size in bytes that were transformed in some way.", + "type": "array" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta2KAnonymityEquivalenceClass": { + "description": "The set of columns' values that share the same ldiversity value", + "id": "GooglePrivacyDlpV2beta2KAnonymityEquivalenceClass", + "properties": { + "equivalenceClassSize": { + "description": "Size of the equivalence class, for example number of rows with the\nabove set of values.", "format": "int64", "type": "string" + }, + "quasiIdsValues": { + "description": "Set of values defining the equivalence class. One value per\nquasi-identifier column in the original KAnonymity metric message.\nThe order is always the same as the original request.", + "items": { + "$ref": "GooglePrivacyDlpV2beta2Value" + }, + "type": "array" } }, - "id": "GooglePrivacyDlpV2beta2TransformationOverview" + "type": "object" }, - "GooglePrivacyDlpV2beta1InspectOperationResult": { - "description": "The operational data.", - "type": "object", + "GooglePrivacyDlpV2beta2KAnonymityHistogramBucket": { + "id": "GooglePrivacyDlpV2beta2KAnonymityHistogramBucket", "properties": { - "name": { - "description": "The server-assigned name, which is only unique within the same service that\noriginally returns it. If you use the default HTTP mapping, the\n`name` should have the format of `inspect/results/{id}`.", + "bucketSize": { + "description": "Total number of equivalence classes in this bucket.", + "format": "int64", "type": "string" - } - }, - "id": "GooglePrivacyDlpV2beta1InspectOperationResult" - }, - "GooglePrivacyDlpV2beta1KAnonymityHistogramBucket": { - "description": "Histogram bucket of equivalence class sizes in the table.", - "type": "object", - "properties": { + }, + "bucketValueCount": { + "description": "Total number of distinct equivalence classes in this bucket.", + "format": "int64", + "type": "string" + }, + "bucketValues": { + "description": "Sample of equivalence classes in this bucket. The total number of\nclasses returned per bucket is capped at 20.", + "items": { + "$ref": "GooglePrivacyDlpV2beta2KAnonymityEquivalenceClass" + }, + "type": "array" + }, "equivalenceClassSizeLowerBound": { "description": "Lower bound on the size of the equivalence classes in this bucket.", "format": "int64", @@ -3084,78 +3673,1370 @@ "description": "Upper bound on the size of the equivalence classes in this bucket.", "format": "int64", "type": "string" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta2KAnonymityResult": { + "description": "Result of the k-anonymity computation.", + "id": "GooglePrivacyDlpV2beta2KAnonymityResult", + "properties": { + "equivalenceClassHistogramBuckets": { + "description": "Histogram of k-anonymity equivalence classes.", + "items": { + "$ref": "GooglePrivacyDlpV2beta2KAnonymityHistogramBucket" + }, + "type": "array" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta2KMapEstimationConfig": { + "description": "Reidentifiability metric. This corresponds to a risk model similar to what\nis called \"journalist risk\" in the literature, except the attack dataset is\nstatistically modeled instead of being perfectly known. This can be done\nusing publicly available data (like the US Census), or using a custom\nstatistical model (indicated as one or several BigQuery tables), or by\nextrapolating from the distribution of values in the input dataset.", + "id": "GooglePrivacyDlpV2beta2KMapEstimationConfig", + "properties": { + "auxiliaryTables": { + "description": "Several auxiliary tables can be used in the analysis. Each custom_tag\nused to tag a quasi-identifiers column must appear in exactly one column\nof one auxiliary table.", + "items": { + "$ref": "GooglePrivacyDlpV2beta2AuxiliaryTable" + }, + "type": "array" }, + "quasiIds": { + "description": "Fields considered to be quasi-identifiers. No two columns can have the\nsame tag. [required]", + "items": { + "$ref": "GooglePrivacyDlpV2beta2TaggedField" + }, + "type": "array" + }, + "regionCode": { + "description": "ISO 3166-1 alpha-2 region code to use in the statistical modeling.\nRequired if no column is tagged with a region-specific InfoType (like\nUS_ZIP_5) or a region code.", + "type": "string" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta2KMapEstimationHistogramBucket": { + "description": "A KMapEstimationHistogramBucket message with the following values:\n min_anonymity: 3\n max_anonymity: 5\n frequency: 42\nmeans that there are 42 records whose quasi-identifier values correspond\nto 3, 4 or 5 people in the overlying population. An important particular\ncase is when min_anonymity = max_anonymity = 1: the frequency field then\ncorresponds to the number of uniquely identifiable records.", + "id": "GooglePrivacyDlpV2beta2KMapEstimationHistogramBucket", + "properties": { "bucketSize": { - "type": "string", - "description": "Total number of records in this bucket.", - "format": "int64" + "description": "Number of records within these anonymity bounds.", + "format": "int64", + "type": "string" + }, + "bucketValueCount": { + "description": "Total number of distinct quasi-identifier tuple values in this bucket.", + "format": "int64", + "type": "string" + }, + "bucketValues": { + "description": "Sample of quasi-identifier tuple values in this bucket. The total\nnumber of classes returned per bucket is capped at 20.", + "items": { + "$ref": "GooglePrivacyDlpV2beta2KMapEstimationQuasiIdValues" + }, + "type": "array" + }, + "maxAnonymity": { + "description": "Always greater than or equal to min_anonymity.", + "format": "int64", + "type": "string" + }, + "minAnonymity": { + "description": "Always positive.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta2KMapEstimationQuasiIdValues": { + "description": "A tuple of values for the quasi-identifier columns.", + "id": "GooglePrivacyDlpV2beta2KMapEstimationQuasiIdValues", + "properties": { + "estimatedAnonymity": { + "description": "The estimated anonymity for these quasi-identifier values.", + "format": "int64", + "type": "string" + }, + "quasiIdsValues": { + "description": "The quasi-identifier values.", + "items": { + "$ref": "GooglePrivacyDlpV2beta2Value" + }, + "type": "array" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta2KMapEstimationResult": { + "description": "Result of the reidentifiability analysis. Note that these results are an\nestimation, not exact values.", + "id": "GooglePrivacyDlpV2beta2KMapEstimationResult", + "properties": { + "kMapEstimationHistogram": { + "description": "The intervals [min_anonymity, max_anonymity] do not overlap. If a value\ndoesn't correspond to any such interval, the associated frequency is\nzero. For example, the following records:\n {min_anonymity: 1, max_anonymity: 1, frequency: 17}\n {min_anonymity: 2, max_anonymity: 3, frequency: 42}\n {min_anonymity: 5, max_anonymity: 10, frequency: 99}\nmean that there are no record with an estimated anonymity of 4, 5, or\nlarger than 10.", + "items": { + "$ref": "GooglePrivacyDlpV2beta2KMapEstimationHistogramBucket" + }, + "type": "array" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta2Key": { + "description": "A unique identifier for a Datastore entity.\nIf a key's partition ID or any of its path kinds or names are\nreserved/read-only, the key is reserved/read-only.\nA reserved/read-only key is forbidden in certain documented contexts.", + "id": "GooglePrivacyDlpV2beta2Key", + "properties": { + "partitionId": { + "$ref": "GooglePrivacyDlpV2beta2PartitionId", + "description": "Entities are partitioned into subsets, currently identified by a project\nID and namespace ID.\nQueries are scoped to a single partition." + }, + "path": { + "description": "The entity path.\nAn entity path consists of one or more elements composed of a kind and a\nstring or numerical identifier, which identify entities. The first\nelement identifies a _root entity_, the second element identifies\na _child_ of the root entity, the third element identifies a child of the\nsecond entity, and so forth. The entities identified by all prefixes of\nthe path are called the element's _ancestors_.\n\nA path can never be empty, and a path can have at most 100 elements.", + "items": { + "$ref": "GooglePrivacyDlpV2beta2PathElement" + }, + "type": "array" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta2KindExpression": { + "description": "A representation of a Datastore kind.", + "id": "GooglePrivacyDlpV2beta2KindExpression", + "properties": { + "name": { + "description": "The name of the kind.", + "type": "string" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta2KmsWrappedCryptoKey": { + "description": "Include to use an existing data crypto key wrapped by KMS.\nAuthorization requires the following IAM permissions when sending a request\nto perform a crypto transformation using a kms-wrapped crypto key:\ndlp.kms.encrypt", + "id": "GooglePrivacyDlpV2beta2KmsWrappedCryptoKey", + "properties": { + "cryptoKeyName": { + "description": "The resource name of the KMS CryptoKey to use for unwrapping. [required]", + "type": "string" + }, + "wrappedKey": { + "description": "The wrapped data crypto key. [required]", + "format": "byte", + "type": "string" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta2LDiversityConfig": { + "description": "l-diversity metric, used for analysis of reidentification risk.", + "id": "GooglePrivacyDlpV2beta2LDiversityConfig", + "properties": { + "quasiIds": { + "description": "Set of quasi-identifiers indicating how equivalence classes are\ndefined for the l-diversity computation. When multiple fields are\nspecified, they are considered a single composite key.", + "items": { + "$ref": "GooglePrivacyDlpV2beta2FieldId" + }, + "type": "array" + }, + "sensitiveAttribute": { + "$ref": "GooglePrivacyDlpV2beta2FieldId", + "description": "Sensitive field for computing the l-value." + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta2LDiversityEquivalenceClass": { + "description": "The set of columns' values that share the same ldiversity value.", + "id": "GooglePrivacyDlpV2beta2LDiversityEquivalenceClass", + "properties": { + "equivalenceClassSize": { + "description": "Size of the k-anonymity equivalence class.", + "format": "int64", + "type": "string" + }, + "numDistinctSensitiveValues": { + "description": "Number of distinct sensitive values in this equivalence class.", + "format": "int64", + "type": "string" + }, + "quasiIdsValues": { + "description": "Quasi-identifier values defining the k-anonymity equivalence\nclass. The order is always the same as the original request.", + "items": { + "$ref": "GooglePrivacyDlpV2beta2Value" + }, + "type": "array" + }, + "topSensitiveValues": { + "description": "Estimated frequencies of top sensitive values.", + "items": { + "$ref": "GooglePrivacyDlpV2beta2ValueFrequency" + }, + "type": "array" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta2LDiversityHistogramBucket": { + "id": "GooglePrivacyDlpV2beta2LDiversityHistogramBucket", + "properties": { + "bucketSize": { + "description": "Total number of equivalence classes in this bucket.", + "format": "int64", + "type": "string" + }, + "bucketValueCount": { + "description": "Total number of distinct equivalence classes in this bucket.", + "format": "int64", + "type": "string" }, "bucketValues": { "description": "Sample of equivalence classes in this bucket. The total number of\nclasses returned per bucket is capped at 20.", - "type": "array", "items": { - "$ref": "GooglePrivacyDlpV2beta1KAnonymityEquivalenceClass" - } - } - }, - "id": "GooglePrivacyDlpV2beta1KAnonymityHistogramBucket" - }, - "GooglePrivacyDlpV2beta2ListInspectTemplatesResponse": { - "id": "GooglePrivacyDlpV2beta2ListInspectTemplatesResponse", - "description": "Response message for ListInspectTemplates.", - "type": "object", - "properties": { - "inspectTemplates": { - "description": "List of inspectTemplates, up to page_size in ListInspectTemplatesRequest.", - "type": "array", - "items": { - "$ref": "GooglePrivacyDlpV2beta2InspectTemplate" - } + "$ref": "GooglePrivacyDlpV2beta2LDiversityEquivalenceClass" + }, + "type": "array" }, - "nextPageToken": { - "type": "string", - "description": "If the next page is available then the next page token to be used\nin following ListInspectTemplates request." - } - } - }, - "GooglePrivacyDlpV2beta1CategoricalStatsResult": { - "description": "Result of the categorical stats computation.", - "type": "object", - "properties": { - "valueFrequencyHistogramBuckets": { - "description": "Histogram of value frequencies in the column.", - "type": "array", - "items": { - "$ref": "GooglePrivacyDlpV2beta1CategoricalStatsHistogramBucket" - } + "sensitiveValueFrequencyLowerBound": { + "description": "Lower bound on the sensitive value frequencies of the equivalence\nclasses in this bucket.", + "format": "int64", + "type": "string" + }, + "sensitiveValueFrequencyUpperBound": { + "description": "Upper bound on the sensitive value frequencies of the equivalence\nclasses in this bucket.", + "format": "int64", + "type": "string" } }, - "id": "GooglePrivacyDlpV2beta1CategoricalStatsResult" + "type": "object" }, - "GooglePrivacyDlpV2beta1LDiversityResult": { + "GooglePrivacyDlpV2beta2LDiversityResult": { "description": "Result of the l-diversity computation.", - "type": "object", + "id": "GooglePrivacyDlpV2beta2LDiversityResult", "properties": { "sensitiveValueFrequencyHistogramBuckets": { "description": "Histogram of l-diversity equivalence class sensitive value frequencies.", - "type": "array", "items": { - "$ref": "GooglePrivacyDlpV2beta1LDiversityHistogramBucket" - } + "$ref": "GooglePrivacyDlpV2beta2LDiversityHistogramBucket" + }, + "type": "array" } }, - "id": "GooglePrivacyDlpV2beta1LDiversityResult" + "type": "object" + }, + "GooglePrivacyDlpV2beta2LikelihoodAdjustment": { + "description": "Message for specifying an adjustment to the likelihood of a finding as\npart of a detection rule.", + "id": "GooglePrivacyDlpV2beta2LikelihoodAdjustment", + "properties": { + "fixedLikelihood": { + "description": "Set the likelihood of a finding to a fixed value.", + "enum": [ + "LIKELIHOOD_UNSPECIFIED", + "VERY_UNLIKELY", + "UNLIKELY", + "POSSIBLE", + "LIKELY", + "VERY_LIKELY" + ], + "enumDescriptions": [ + "Default value; information with all likelihoods is included.", + "Few matching elements.", + "", + "Some matching elements.", + "", + "Many matching elements." + ], + "type": "string" + }, + "relativeLikelihood": { + "description": "Increase or decrease the likelihood by the specified number of\nlevels. For example, if a finding would be `POSSIBLE` without the\ndetection rule and `relative_likelihood` is 1, then it is upgraded to\n`LIKELY`, while a value of -1 would downgrade it to `UNLIKELY`.\nLikelihood may never drop below `VERY_UNLIKELY` or exceed\n`VERY_LIKELY`, so applying an adjustment of 1 followed by an\nadjustment of -1 when base likelihood is `VERY_LIKELY` will result in\na final likelihood of `LIKELY`.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta2ListDeidentifyTemplatesResponse": { + "description": "Response message for ListDeidentifyTemplates.", + "id": "GooglePrivacyDlpV2beta2ListDeidentifyTemplatesResponse", + "properties": { + "deidentifyTemplates": { + "description": "List of deidentify templates, up to page_size in\nListDeidentifyTemplatesRequest.", + "items": { + "$ref": "GooglePrivacyDlpV2beta2DeidentifyTemplate" + }, + "type": "array" + }, + "nextPageToken": { + "description": "If the next page is available then the next page token to be used\nin following ListDeidentifyTemplates request.", + "type": "string" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta2ListDlpJobsResponse": { + "description": "The response message for listing DLP jobs.", + "id": "GooglePrivacyDlpV2beta2ListDlpJobsResponse", + "properties": { + "jobs": { + "description": "A list of DlpJobs that matches the specified filter in the request.", + "items": { + "$ref": "GooglePrivacyDlpV2beta2DlpJob" + }, + "type": "array" + }, + "nextPageToken": { + "description": "The standard List next-page token.", + "type": "string" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta2ListInfoTypesResponse": { + "description": "Response to the ListInfoTypes request.", + "id": "GooglePrivacyDlpV2beta2ListInfoTypesResponse", + "properties": { + "infoTypes": { + "description": "Set of sensitive infoTypes.", + "items": { + "$ref": "GooglePrivacyDlpV2beta2InfoTypeDescription" + }, + "type": "array" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta2ListInspectTemplatesResponse": { + "description": "Response message for ListInspectTemplates.", + "id": "GooglePrivacyDlpV2beta2ListInspectTemplatesResponse", + "properties": { + "inspectTemplates": { + "description": "List of inspectTemplates, up to page_size in ListInspectTemplatesRequest.", + "items": { + "$ref": "GooglePrivacyDlpV2beta2InspectTemplate" + }, + "type": "array" + }, + "nextPageToken": { + "description": "If the next page is available then the next page token to be used\nin following ListInspectTemplates request.", + "type": "string" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta2ListJobTriggersResponse": { + "description": "Response message for ListJobTriggers.", + "id": "GooglePrivacyDlpV2beta2ListJobTriggersResponse", + "properties": { + "jobTriggers": { + "description": "List of triggeredJobs, up to page_size in ListJobTriggersRequest.", + "items": { + "$ref": "GooglePrivacyDlpV2beta2JobTrigger" + }, + "type": "array" + }, + "nextPageToken": { + "description": "If the next page is available then the next page token to be used\nin following ListJobTriggers request.", + "type": "string" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta2Location": { + "description": "Specifies the location of the finding.", + "id": "GooglePrivacyDlpV2beta2Location", + "properties": { + "byteRange": { + "$ref": "GooglePrivacyDlpV2beta2Range", + "description": "Zero-based byte offsets delimiting the finding.\nThese are relative to the finding's containing element.\nNote that when the content is not textual, this references\nthe UTF-8 encoded textual representation of the content.\nOmitted if content is an image." + }, + "codepointRange": { + "$ref": "GooglePrivacyDlpV2beta2Range", + "description": "Unicode character offsets delimiting the finding.\nThese are relative to the finding's containing element.\nProvided when the content is text." + }, + "fieldId": { + "$ref": "GooglePrivacyDlpV2beta2FieldId", + "description": "The pointer to the property or cell that contained the finding.\nProvided when the finding's containing element is a cell in a table\nor a property of storage object." + }, + "imageBoxes": { + "description": "The area within the image that contained the finding.\nProvided when the content is an image.", + "items": { + "$ref": "GooglePrivacyDlpV2beta2ImageLocation" + }, + "type": "array" + }, + "recordKey": { + "$ref": "GooglePrivacyDlpV2beta2RecordKey", + "description": "The pointer to the record in storage that contained the field the\nfinding was found in.\nProvided when the finding's containing element is a property\nof a storage object." + }, + "tableLocation": { + "$ref": "GooglePrivacyDlpV2beta2TableLocation", + "description": "The pointer to the row of the table that contained the finding.\nProvided when the finding's containing element is a cell of a table." + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta2NumericalStatsConfig": { + "description": "Compute numerical stats over an individual column, including\nmin, max, and quantiles.", + "id": "GooglePrivacyDlpV2beta2NumericalStatsConfig", + "properties": { + "field": { + "$ref": "GooglePrivacyDlpV2beta2FieldId", + "description": "Field to compute numerical stats on. Supported types are\ninteger, float, date, datetime, timestamp, time." + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta2NumericalStatsResult": { + "description": "Result of the numerical stats computation.", + "id": "GooglePrivacyDlpV2beta2NumericalStatsResult", + "properties": { + "maxValue": { + "$ref": "GooglePrivacyDlpV2beta2Value", + "description": "Maximum value appearing in the column." + }, + "minValue": { + "$ref": "GooglePrivacyDlpV2beta2Value", + "description": "Minimum value appearing in the column." + }, + "quantileValues": { + "description": "List of 99 values that partition the set of field values into 100 equal\nsized buckets.", + "items": { + "$ref": "GooglePrivacyDlpV2beta2Value" + }, + "type": "array" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta2OutputStorageConfig": { + "description": "Cloud repository for storing output.", + "id": "GooglePrivacyDlpV2beta2OutputStorageConfig", + "properties": { + "outputSchema": { + "description": "Schema used for writing the findings. Columns are derived from the\n`Finding` object. If appending to an existing table, any columns from the\npredefined schema that are missing will be added. No columns in the\nexisting table will be deleted.\n\nIf unspecified, then all available columns will be used for a new table,\nand no changes will be made to an existing table.", + "enum": [ + "OUTPUT_SCHEMA_UNSPECIFIED", + "BASIC_COLUMNS", + "GCS_COLUMNS", + "DATASTORE_COLUMNS", + "BIG_QUERY_COLUMNS", + "ALL_COLUMNS" + ], + "enumDescriptions": [ + "", + "Basic schema including only `info_type`, `quote`, `certainty`, and\n`timestamp`.", + "Schema tailored to findings from scanning Google Cloud Storage.", + "Schema tailored to findings from scanning Google Datastore.", + "Schema tailored to findings from scanning Google BigQuery.", + "Schema containing all columns." + ], + "type": "string" + }, + "table": { + "$ref": "GooglePrivacyDlpV2beta2BigQueryTable", + "description": "Store findings in an existing table or a new table in an existing\ndataset. Each column in an existing table must have the same name, type,\nand mode of a field in the `Finding` object. If table_id is not set a new\none will be generated for you with the following format:\ndlp_googleapis_yyyy_mm_dd_[dlp_job_id]. Pacific timezone will be used for\ngenerating the date details." + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta2PartitionId": { + "description": "Datastore partition ID.\nA partition ID identifies a grouping of entities. The grouping is always\nby project and namespace, however the namespace ID may be empty.\n\nA partition ID contains several dimensions:\nproject ID and namespace ID.", + "id": "GooglePrivacyDlpV2beta2PartitionId", + "properties": { + "namespaceId": { + "description": "If not empty, the ID of the namespace to which the entities belong.", + "type": "string" + }, + "projectId": { + "description": "The ID of the project to which the entities belong.", + "type": "string" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta2PathElement": { + "description": "A (kind, ID/name) pair used to construct a key path.\n\nIf either name or ID is set, the element is complete.\nIf neither is set, the element is incomplete.", + "id": "GooglePrivacyDlpV2beta2PathElement", + "properties": { + "id": { + "description": "The auto-allocated ID of the entity.\nNever equal to zero. Values less than zero are discouraged and may not\nbe supported in the future.", + "format": "int64", + "type": "string" + }, + "kind": { + "description": "The kind of the entity.\nA kind matching regex `__.*__` is reserved/read-only.\nA kind must not contain more than 1500 bytes when UTF-8 encoded.\nCannot be `\"\"`.", + "type": "string" + }, + "name": { + "description": "The name of the entity.\nA name matching regex `__.*__` is reserved/read-only.\nA name must not be more than 1500 bytes when UTF-8 encoded.\nCannot be `\"\"`.", + "type": "string" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta2PrimitiveTransformation": { + "description": "A rule for transforming a value.", + "id": "GooglePrivacyDlpV2beta2PrimitiveTransformation", + "properties": { + "bucketingConfig": { + "$ref": "GooglePrivacyDlpV2beta2BucketingConfig" + }, + "characterMaskConfig": { + "$ref": "GooglePrivacyDlpV2beta2CharacterMaskConfig" + }, + "cryptoHashConfig": { + "$ref": "GooglePrivacyDlpV2beta2CryptoHashConfig" + }, + "cryptoReplaceFfxFpeConfig": { + "$ref": "GooglePrivacyDlpV2beta2CryptoReplaceFfxFpeConfig" + }, + "dateShiftConfig": { + "$ref": "GooglePrivacyDlpV2beta2DateShiftConfig" + }, + "fixedSizeBucketingConfig": { + "$ref": "GooglePrivacyDlpV2beta2FixedSizeBucketingConfig" + }, + "redactConfig": { + "$ref": "GooglePrivacyDlpV2beta2RedactConfig" + }, + "replaceConfig": { + "$ref": "GooglePrivacyDlpV2beta2ReplaceValueConfig" + }, + "replaceWithInfoTypeConfig": { + "$ref": "GooglePrivacyDlpV2beta2ReplaceWithInfoTypeConfig" + }, + "timePartConfig": { + "$ref": "GooglePrivacyDlpV2beta2TimePartConfig" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta2PrivacyMetric": { + "description": "Privacy metric to compute for reidentification risk analysis.", + "id": "GooglePrivacyDlpV2beta2PrivacyMetric", + "properties": { + "categoricalStatsConfig": { + "$ref": "GooglePrivacyDlpV2beta2CategoricalStatsConfig" + }, + "kAnonymityConfig": { + "$ref": "GooglePrivacyDlpV2beta2KAnonymityConfig" + }, + "kMapEstimationConfig": { + "$ref": "GooglePrivacyDlpV2beta2KMapEstimationConfig" + }, + "lDiversityConfig": { + "$ref": "GooglePrivacyDlpV2beta2LDiversityConfig" + }, + "numericalStatsConfig": { + "$ref": "GooglePrivacyDlpV2beta2NumericalStatsConfig" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta2Proximity": { + "description": "Message for specifying a window around a finding to apply a detection\nrule.", + "id": "GooglePrivacyDlpV2beta2Proximity", + "properties": { + "windowAfter": { + "description": "Number of characters after the finding to consider.", + "format": "int32", + "type": "integer" + }, + "windowBefore": { + "description": "Number of characters before the finding to consider.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta2PublishToPubSub": { + "description": "Publish the results of a DlpJob to a pub sub channel.\nCompatible with: Inpect, Risk", + "id": "GooglePrivacyDlpV2beta2PublishToPubSub", + "properties": { + "topic": { + "description": "Cloud Pub/Sub topic to send notifications to. The topic must have given\npublishing access rights to the DLP API service account executing\nthe long running DlpJob sending the notifications.\nFormat is projects/{project}/topics/{topic}.", + "type": "string" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta2QuasiIdField": { + "description": "A quasi-identifier column has a custom_tag, used to know which column\nin the data corresponds to which column in the statistical model.", + "id": "GooglePrivacyDlpV2beta2QuasiIdField", + "properties": { + "customTag": { + "type": "string" + }, + "field": { + "$ref": "GooglePrivacyDlpV2beta2FieldId" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta2QuoteInfo": { + "description": "Message for infoType-dependent details parsed from quote.", + "id": "GooglePrivacyDlpV2beta2QuoteInfo", + "properties": { + "dateTime": { + "$ref": "GooglePrivacyDlpV2beta2DateTime" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta2Range": { + "description": "Generic half-open interval [start, end)", + "id": "GooglePrivacyDlpV2beta2Range", + "properties": { + "end": { + "description": "Index of the last character of the range (exclusive).", + "format": "int64", + "type": "string" + }, + "start": { + "description": "Index of the first character of the range (inclusive).", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta2RecordCondition": { + "description": "A condition for determining whether a transformation should be applied to\na field.", + "id": "GooglePrivacyDlpV2beta2RecordCondition", + "properties": { + "expressions": { + "$ref": "GooglePrivacyDlpV2beta2Expressions", + "description": "An expression." + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta2RecordKey": { + "description": "Message for a unique key indicating a record that contains a finding.", + "id": "GooglePrivacyDlpV2beta2RecordKey", + "properties": { + "bigQueryKey": { + "$ref": "GooglePrivacyDlpV2beta2BigQueryKey" + }, + "cloudStorageKey": { + "$ref": "GooglePrivacyDlpV2beta2CloudStorageKey" + }, + "datastoreKey": { + "$ref": "GooglePrivacyDlpV2beta2DatastoreKey" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta2RecordSuppression": { + "description": "Configuration to suppress records whose suppression conditions evaluate to\ntrue.", + "id": "GooglePrivacyDlpV2beta2RecordSuppression", + "properties": { + "condition": { + "$ref": "GooglePrivacyDlpV2beta2RecordCondition", + "description": "A condition that when it evaluates to true will result in the record being\nevaluated to be suppressed from the transformed content." + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta2RecordTransformations": { + "description": "A type of transformation that is applied over structured data such as a\ntable.", + "id": "GooglePrivacyDlpV2beta2RecordTransformations", + "properties": { + "fieldTransformations": { + "description": "Transform the record by applying various field transformations.", + "items": { + "$ref": "GooglePrivacyDlpV2beta2FieldTransformation" + }, + "type": "array" + }, + "recordSuppressions": { + "description": "Configuration defining which records get suppressed entirely. Records that\nmatch any suppression rule are omitted from the output [optional].", + "items": { + "$ref": "GooglePrivacyDlpV2beta2RecordSuppression" + }, + "type": "array" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta2RedactConfig": { + "description": "Redact a given value. For example, if used with an `InfoTypeTransformation`\ntransforming PHONE_NUMBER, and input 'My phone number is 206-555-0123', the\noutput would be 'My phone number is '.", + "id": "GooglePrivacyDlpV2beta2RedactConfig", + "properties": {}, + "type": "object" + }, + "GooglePrivacyDlpV2beta2RedactImageRequest": { + "description": "Request to search for potentially sensitive info in a list of items\nand replace it with a default or provided content.", + "id": "GooglePrivacyDlpV2beta2RedactImageRequest", + "properties": { + "imageData": { + "description": "The bytes of the image to redact.", + "format": "byte", + "type": "string" + }, + "imageRedactionConfigs": { + "description": "The configuration for specifying what content to redact from images.", + "items": { + "$ref": "GooglePrivacyDlpV2beta2ImageRedactionConfig" + }, + "type": "array" + }, + "imageType": { + "description": "Type of the content, as defined in Content-Type HTTP header.\nSupported types are: PNG, JPEG, SVG, \u0026 BMP.", + "type": "string" + }, + "inspectConfig": { + "$ref": "GooglePrivacyDlpV2beta2InspectConfig", + "description": "Configuration for the inspector." + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta2RedactImageResponse": { + "description": "Results of redacting an image.", + "id": "GooglePrivacyDlpV2beta2RedactImageResponse", + "properties": { + "extractedText": { + "description": "If an image was being inspected and the InspectConfig's include_quote was\nset to true, then this field will include all text, if any, that was found\nin the image.", + "type": "string" + }, + "redactedImage": { + "description": "The redacted image. The type will be the same as the original image.", + "format": "byte", + "type": "string" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta2Regex": { + "description": "Message defining a custom regular expression.", + "id": "GooglePrivacyDlpV2beta2Regex", + "properties": { + "pattern": { + "description": "Pattern defining the regular expression.", + "type": "string" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta2ReidentifyContentRequest": { + "description": "Request to re-identify an item.", + "id": "GooglePrivacyDlpV2beta2ReidentifyContentRequest", + "properties": { + "inspectConfig": { + "$ref": "GooglePrivacyDlpV2beta2InspectConfig", + "description": "Configuration for the inspector." + }, + "inspectTemplateName": { + "description": "Optional template to use. Any configuration directly specified in\n`inspect_config` will override those set in the template. Singular fields\nthat are set in this request will replace their corresponding fields in the\ntemplate. Repeated fields are appended. Singular sub-messages and groups\nare recursively merged.", + "type": "string" + }, + "item": { + "$ref": "GooglePrivacyDlpV2beta2ContentItem", + "description": "The item to re-identify. Will be treated as text." + }, + "reidentifyConfig": { + "$ref": "GooglePrivacyDlpV2beta2DeidentifyConfig", + "description": "Configuration for the re-identification of the content item.\nThis field shares the same proto message type that is used for\nde-identification, however its usage here is for the reversal of the\nprevious de-identification. Re-identification is performed by examining\nthe transformations used to de-identify the items and executing the\nreverse. This requires that only reversible transformations\nbe provided here. The reversible transformations are:\n\n - `CryptoReplaceFfxFpeConfig`" + }, + "reidentifyTemplateName": { + "description": "Optional template to use. References an instance of `DeidentifyTemplate`.\nAny configuration directly specified in `reidentify_config` or\n`inspect_config` will override those set in the template. Singular fields\nthat are set in this request will replace their corresponding fields in the\ntemplate. Repeated fields are appended. Singular sub-messages and groups\nare recursively merged.", + "type": "string" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta2ReidentifyContentResponse": { + "description": "Results of re-identifying a item.", + "id": "GooglePrivacyDlpV2beta2ReidentifyContentResponse", + "properties": { + "item": { + "$ref": "GooglePrivacyDlpV2beta2ContentItem", + "description": "The re-identified item." + }, + "overview": { + "$ref": "GooglePrivacyDlpV2beta2TransformationOverview", + "description": "An overview of the changes that were made to the `item`." + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta2ReplaceValueConfig": { + "description": "Replace each input value with a given `Value`.", + "id": "GooglePrivacyDlpV2beta2ReplaceValueConfig", + "properties": { + "newValue": { + "$ref": "GooglePrivacyDlpV2beta2Value", + "description": "Value to replace it with." + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta2ReplaceWithInfoTypeConfig": { + "description": "Replace each matching finding with the name of the info_type.", + "id": "GooglePrivacyDlpV2beta2ReplaceWithInfoTypeConfig", + "properties": {}, + "type": "object" + }, + "GooglePrivacyDlpV2beta2RequestedOptions": { + "id": "GooglePrivacyDlpV2beta2RequestedOptions", + "properties": { + "jobConfig": { + "$ref": "GooglePrivacyDlpV2beta2InspectJobConfig" + }, + "snapshotInspectTemplate": { + "$ref": "GooglePrivacyDlpV2beta2InspectTemplate", + "description": "If run with an inspect template, a snapshot of it's state at the time of\nthis run." + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta2Result": { + "id": "GooglePrivacyDlpV2beta2Result", + "properties": { + "infoTypeStats": { + "description": "Statistics of how many instances of each info type were found during\ninspect job.", + "items": { + "$ref": "GooglePrivacyDlpV2beta2InfoTypeStatistics" + }, + "type": "array" + }, + "processedBytes": { + "description": "Total size in bytes that were processed.", + "format": "int64", + "type": "string" + }, + "totalEstimatedBytes": { + "description": "Estimate of the number of bytes to process.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta2RiskAnalysisJobConfig": { + "description": "Configuration for a risk analysis job.", + "id": "GooglePrivacyDlpV2beta2RiskAnalysisJobConfig", + "properties": { + "actions": { + "description": "Actions to execute at the completion of the job. Are executed in the order\nprovided.", + "items": { + "$ref": "GooglePrivacyDlpV2beta2Action" + }, + "type": "array" + }, + "privacyMetric": { + "$ref": "GooglePrivacyDlpV2beta2PrivacyMetric", + "description": "Privacy metric to compute." + }, + "sourceTable": { + "$ref": "GooglePrivacyDlpV2beta2BigQueryTable", + "description": "Input dataset to compute metrics over." + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta2Row": { + "id": "GooglePrivacyDlpV2beta2Row", + "properties": { + "values": { + "items": { + "$ref": "GooglePrivacyDlpV2beta2Value" + }, + "type": "array" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta2SaveFindings": { + "description": "If set, the detailed findings will be persisted to the specified\nOutputStorageConfig. Compatible with: Inspect", + "id": "GooglePrivacyDlpV2beta2SaveFindings", + "properties": { + "outputConfig": { + "$ref": "GooglePrivacyDlpV2beta2OutputStorageConfig" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta2Schedule": { + "description": "Schedule for triggeredJobs.", + "id": "GooglePrivacyDlpV2beta2Schedule", + "properties": { + "reccurrencePeriodDuration": { + "description": "With this option a job is started a regular periodic basis. For\nexample: every 10 minutes.\n\nA scheduled start time will be skipped if the previous\nexecution has not ended when its scheduled time occurs.\n\nThis value must be set to a time duration greater than or equal\nto 60 minutes and can be no longer than 60 days.", + "format": "google-duration", + "type": "string" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta2StorageConfig": { + "description": "Shared message indicating Cloud storage type.", + "id": "GooglePrivacyDlpV2beta2StorageConfig", + "properties": { + "bigQueryOptions": { + "$ref": "GooglePrivacyDlpV2beta2BigQueryOptions", + "description": "BigQuery options specification." + }, + "cloudStorageOptions": { + "$ref": "GooglePrivacyDlpV2beta2CloudStorageOptions", + "description": "Google Cloud Storage options specification." + }, + "datastoreOptions": { + "$ref": "GooglePrivacyDlpV2beta2DatastoreOptions", + "description": "Google Cloud Datastore options specification." + }, + "timespanConfig": { + "$ref": "GooglePrivacyDlpV2beta2TimespanConfig" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta2SummaryResult": { + "description": "A collection that informs the user the number of times a particular\n`TransformationResultCode` and error details occurred.", + "id": "GooglePrivacyDlpV2beta2SummaryResult", + "properties": { + "code": { + "enum": [ + "TRANSFORMATION_RESULT_CODE_UNSPECIFIED", + "SUCCESS", + "ERROR" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, + "count": { + "format": "int64", + "type": "string" + }, + "details": { + "description": "A place for warnings or errors to show up if a transformation didn't\nwork as expected.", + "type": "string" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta2SurrogateType": { + "description": "Message for detecting output from deidentification transformations\nsuch as\n[`CryptoReplaceFfxFpeConfig`](/dlp/docs/reference/rest/v2beta1/content/deidentify#CryptoReplaceFfxFpeConfig).\nThese types of transformations are\nthose that perform pseudonymization, thereby producing a \"surrogate\" as\noutput. This should be used in conjunction with a field on the\ntransformation such as `surrogate_info_type`. This custom info type does\nnot support the use of `detection_rules`.", + "id": "GooglePrivacyDlpV2beta2SurrogateType", + "properties": {}, + "type": "object" + }, + "GooglePrivacyDlpV2beta2Table": { + "description": "Structured content to inspect. Up to 50,000 `Value`s per request allowed.", + "id": "GooglePrivacyDlpV2beta2Table", + "properties": { + "headers": { + "items": { + "$ref": "GooglePrivacyDlpV2beta2FieldId" + }, + "type": "array" + }, + "rows": { + "items": { + "$ref": "GooglePrivacyDlpV2beta2Row" + }, + "type": "array" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta2TableLocation": { + "description": "Location of a finding within a table.", + "id": "GooglePrivacyDlpV2beta2TableLocation", + "properties": { + "rowIndex": { + "description": "The zero-based index of the row where the finding is located.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta2TaggedField": { + "description": "A column with a semantic tag attached.", + "id": "GooglePrivacyDlpV2beta2TaggedField", + "properties": { + "customTag": { + "description": "A column can be tagged with a custom tag. In this case, the user must\nindicate an auxiliary table that contains statistical information on\nthe possible values of this column (below).", + "type": "string" + }, + "field": { + "$ref": "GooglePrivacyDlpV2beta2FieldId", + "description": "Identifies the column. [required]" + }, + "inferred": { + "$ref": "GoogleProtobufEmpty", + "description": "If no semantic tag is indicated, we infer the statistical model from\nthe distribution of values in the input data" + }, + "infoType": { + "$ref": "GooglePrivacyDlpV2beta2InfoType", + "description": "A column can be tagged with a InfoType to use the relevant public\ndataset as a statistical model of population, if available. We\ncurrently support US ZIP codes, region codes, ages and genders.\nTo programmatically obtain the list of supported InfoTypes, use\nListInfoTypes with the supported_by=RISK_ANALYSIS filter." + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta2TimePartConfig": { + "description": "For use with `Date`, `Timestamp`, and `TimeOfDay`, extract or preserve a\nportion of the value.", + "id": "GooglePrivacyDlpV2beta2TimePartConfig", + "properties": { + "partToExtract": { + "enum": [ + "TIME_PART_UNSPECIFIED", + "YEAR", + "MONTH", + "DAY_OF_MONTH", + "DAY_OF_WEEK", + "WEEK_OF_YEAR", + "HOUR_OF_DAY" + ], + "enumDescriptions": [ + "", + "[0-9999]", + "[1-12]", + "[1-31]", + "[1-7]", + "[1-52]", + "[0-23]" + ], + "type": "string" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta2TimeZone": { + "id": "GooglePrivacyDlpV2beta2TimeZone", + "properties": { + "offsetMinutes": { + "description": "Set only if the offset can be determined. Positive for time ahead of UTC.\nE.g. For \"UTC-9\", this value is -540.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta2TimespanConfig": { + "description": "Configuration of the timespan of the items to include in scanning.\nCurrently only supported when inspecting Google Cloud Storage and BigQuery.", + "id": "GooglePrivacyDlpV2beta2TimespanConfig", + "properties": { + "enableAutoPopulationOfTimespanConfig": { + "description": "When the job is started by a JobTrigger we will automatically figure out\na valid start_time to avoid scanning files that have not been modified\nsince the last time the JobTrigger executed. This will be based on the\ntime of the execution of the last run of the JobTrigger.", + "type": "boolean" + }, + "endTime": { + "description": "Exclude files newer than this value.\nIf set to zero, no upper time limit is applied.", + "format": "google-datetime", + "type": "string" + }, + "startTime": { + "description": "Exclude files older than this value.", + "format": "google-datetime", + "type": "string" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta2TransformationOverview": { + "description": "Overview of the modifications that occurred.", + "id": "GooglePrivacyDlpV2beta2TransformationOverview", + "properties": { + "transformationSummaries": { + "description": "Transformations applied to the dataset.", + "items": { + "$ref": "GooglePrivacyDlpV2beta2TransformationSummary" + }, + "type": "array" + }, + "transformedBytes": { + "description": "Total size in bytes that were transformed in some way.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta2TransformationSummary": { + "description": "Summary of a single tranformation.\nOnly one of 'transformation', 'field_transformation', or 'record_suppress'\nwill be set.", + "id": "GooglePrivacyDlpV2beta2TransformationSummary", + "properties": { + "field": { + "$ref": "GooglePrivacyDlpV2beta2FieldId", + "description": "Set if the transformation was limited to a specific FieldId." + }, + "fieldTransformations": { + "description": "The field transformation that was applied.\nIf multiple field transformations are requested for a single field,\nthis list will contain all of them; otherwise, only one is supplied.", + "items": { + "$ref": "GooglePrivacyDlpV2beta2FieldTransformation" + }, + "type": "array" + }, + "infoType": { + "$ref": "GooglePrivacyDlpV2beta2InfoType", + "description": "Set if the transformation was limited to a specific info_type." + }, + "recordSuppress": { + "$ref": "GooglePrivacyDlpV2beta2RecordSuppression", + "description": "The specific suppression option these stats apply to." + }, + "results": { + "items": { + "$ref": "GooglePrivacyDlpV2beta2SummaryResult" + }, + "type": "array" + }, + "transformation": { + "$ref": "GooglePrivacyDlpV2beta2PrimitiveTransformation", + "description": "The specific transformation these stats apply to." + }, + "transformedBytes": { + "description": "Total size in bytes that were transformed in some way.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta2TransientCryptoKey": { + "description": "Use this to have a random data crypto key generated.\nIt will be discarded after the request finishes.", + "id": "GooglePrivacyDlpV2beta2TransientCryptoKey", + "properties": { + "name": { + "description": "Name of the key. [required]\nThis is an arbitrary string used to differentiate different keys.\nA unique key is generated per name: two separate `TransientCryptoKey`\nprotos share the same generated key if their names are the same.\nWhen the data crypto key is generated, this name is not used in any way\n(repeating the api call will result in a different key being generated).", + "type": "string" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta2Trigger": { + "description": "What event needs to occur for a new job to be started.", + "id": "GooglePrivacyDlpV2beta2Trigger", + "properties": { + "schedule": { + "$ref": "GooglePrivacyDlpV2beta2Schedule", + "description": "Create a job on a repeating basis based on the elapse of time." + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta2UnwrappedCryptoKey": { + "description": "Using raw keys is prone to security risks due to accidentally\nleaking the key. Choose another type of key if possible.", + "id": "GooglePrivacyDlpV2beta2UnwrappedCryptoKey", + "properties": { + "key": { + "description": "The AES 128/192/256 bit key. [required]", + "format": "byte", + "type": "string" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta2UpdateDeidentifyTemplateRequest": { + "description": "Request message for UpdateDeidentifyTemplate.", + "id": "GooglePrivacyDlpV2beta2UpdateDeidentifyTemplateRequest", + "properties": { + "deidentifyTemplate": { + "$ref": "GooglePrivacyDlpV2beta2DeidentifyTemplate", + "description": "New DeidentifyTemplate value." + }, + "updateMask": { + "description": "Mask to control which fields get updated.", + "format": "google-fieldmask", + "type": "string" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta2UpdateInspectTemplateRequest": { + "description": "Request message for UpdateInspectTemplate.", + "id": "GooglePrivacyDlpV2beta2UpdateInspectTemplateRequest", + "properties": { + "inspectTemplate": { + "$ref": "GooglePrivacyDlpV2beta2InspectTemplate", + "description": "New InspectTemplate value." + }, + "updateMask": { + "description": "Mask to control which fields get updated.", + "format": "google-fieldmask", + "type": "string" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta2UpdateJobTriggerRequest": { + "description": "Request message for UpdateJobTrigger.", + "id": "GooglePrivacyDlpV2beta2UpdateJobTriggerRequest", + "properties": { + "jobTrigger": { + "$ref": "GooglePrivacyDlpV2beta2JobTrigger", + "description": "New JobTrigger value." + }, + "updateMask": { + "description": "Mask to control which fields get updated.", + "format": "google-fieldmask", + "type": "string" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta2Value": { + "description": "Set of primitive values supported by the system.\nNote that for the purposes of inspection or transformation, the number\nof bytes considered to comprise a 'Value' is based on its representation\nas a UTF-8 encoded string. For example, if 'integer_value' is set to\n123456789, the number of bytes would be counted as 9, even though an\nint64 only holds up to 8 bytes of data.", + "id": "GooglePrivacyDlpV2beta2Value", + "properties": { + "booleanValue": { + "type": "boolean" + }, + "dateValue": { + "$ref": "GoogleTypeDate" + }, + "dayOfWeekValue": { + "enum": [ + "DAY_OF_WEEK_UNSPECIFIED", + "MONDAY", + "TUESDAY", + "WEDNESDAY", + "THURSDAY", + "FRIDAY", + "SATURDAY", + "SUNDAY" + ], + "enumDescriptions": [ + "The unspecified day-of-week.", + "The day-of-week of Monday.", + "The day-of-week of Tuesday.", + "The day-of-week of Wednesday.", + "The day-of-week of Thursday.", + "The day-of-week of Friday.", + "The day-of-week of Saturday.", + "The day-of-week of Sunday." + ], + "type": "string" + }, + "floatValue": { + "format": "double", + "type": "number" + }, + "integerValue": { + "format": "int64", + "type": "string" + }, + "stringValue": { + "type": "string" + }, + "timeValue": { + "$ref": "GoogleTypeTimeOfDay" + }, + "timestampValue": { + "format": "google-datetime", + "type": "string" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta2ValueFrequency": { + "description": "A value of a field, including its frequency.", + "id": "GooglePrivacyDlpV2beta2ValueFrequency", + "properties": { + "count": { + "description": "How many times the value is contained in the field.", + "format": "int64", + "type": "string" + }, + "value": { + "$ref": "GooglePrivacyDlpV2beta2Value", + "description": "A value contained in the field in question." + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2beta2WordList": { + "description": "Message defining a list of words or phrases to search for in the data.", + "id": "GooglePrivacyDlpV2beta2WordList", + "properties": { + "words": { + "description": "Words or phrases defining the dictionary. The dictionary must contain\nat least one phrase and every phrase must contain at least 2 characters\nthat are letters or digits. [required]", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "GoogleProtobufEmpty": { + "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": "GoogleProtobufEmpty", + "properties": {}, + "type": "object" + }, + "GoogleRpcStatus": { + "description": "The `Status` type defines a logical error model that is suitable for different\nprogramming environments, including REST APIs and RPC APIs. It is used by\n[gRPC](https://github.com/grpc). The error model is designed to be:\n\n- Simple to use and understand for most users\n- Flexible enough to meet unexpected needs\n\n# Overview\n\nThe `Status` message contains three pieces of data: error code, error message,\nand error details. The error code should be an enum value of\ngoogle.rpc.Code, but it may accept additional error codes if needed. The\nerror message should be a developer-facing English message that helps\ndevelopers *understand* and *resolve* the error. If a localized user-facing\nerror message is needed, put the localized message in the error details or\nlocalize it in the client. The optional error details may contain arbitrary\ninformation about the error. There is a predefined set of error detail types\nin the package `google.rpc` that can be used for common error conditions.\n\n# Language mapping\n\nThe `Status` message is the logical representation of the error model, but it\nis not necessarily the actual wire format. When the `Status` message is\nexposed in different client libraries and different wire protocols, it can be\nmapped differently. For example, it will likely be mapped to some exceptions\nin Java, but more likely mapped to some error codes in C.\n\n# Other uses\n\nThe error model and the `Status` message can be used in a variety of\nenvironments, either with or without APIs, to provide a\nconsistent developer experience across different environments.\n\nExample uses of this error model include:\n\n- Partial errors. If a service needs to return partial errors to the client,\n it may embed the `Status` in the normal response to indicate the partial\n errors.\n\n- Workflow errors. A typical workflow has multiple steps. Each step may\n have a `Status` message for error reporting.\n\n- Batch operations. If a client uses batch request and batch response, the\n `Status` message should be used directly inside batch response, one for\n each error sub-response.\n\n- Asynchronous operations. If an API call embeds asynchronous operation\n results in its response, the status of those operations should be\n represented directly using the `Status` message.\n\n- Logging. If some API errors are stored in logs, the message `Status` could\n be used directly after any stripping needed for security/privacy reasons.", + "id": "GoogleRpcStatus", + "properties": { + "code": { + "description": "The status code, which should be an enum value of google.rpc.Code.", + "format": "int32", + "type": "integer" + }, + "details": { + "description": "A list of messages that carry the error details. There is a common set of\nmessage types for APIs to use.", + "items": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "A developer-facing error message, which should be in English. Any\nuser-facing error message should be localized and sent in the\ngoogle.rpc.Status.details field, or localized by the client.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleTypeDate": { + "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": "GoogleTypeDate", + "properties": { + "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" + }, + "month": { + "description": "Month of year. Must be from 1 to 12.", + "format": "int32", + "type": "integer" + }, + "year": { + "description": "Year of date. Must be from 1 to 9999, or 0 if specifying a date without\na year.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" }, "GoogleTypeTimeOfDay": { - "id": "GoogleTypeTimeOfDay", "description": "Represents a time of day. The date and time zone are either not significant\nor are specified elsewhere. An API may choose to allow leap seconds. Related\ntypes are google.type.Date and `google.protobuf.Timestamp`.", - "type": "object", + "id": "GoogleTypeTimeOfDay", "properties": { "hours": { "description": "Hours of day in 24 hour format. Should be from 0 to 23. An API may choose\nto allow the value \"24:00:00\" for scenarios like business closing time.", "format": "int32", "type": "integer" }, + "minutes": { + "description": "Minutes of hour of day. Must be from 0 to 59.", + "format": "int32", + "type": "integer" + }, "nanos": { "description": "Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999.", "format": "int32", @@ -3165,1199 +5046,13 @@ "description": "Seconds of minutes of the time. Must normally be from 0 to 59. An API may\nallow the value 60 if it allows leap-seconds.", "format": "int32", "type": "integer" - }, - "minutes": { - "description": "Minutes of hour of day. Must be from 0 to 59.", - "format": "int32", - "type": "integer" - } - } - }, - "GooglePrivacyDlpV2beta2LDiversityEquivalenceClass": { - "id": "GooglePrivacyDlpV2beta2LDiversityEquivalenceClass", - "description": "The set of columns' values that share the same ldiversity value.", - "type": "object", - "properties": { - "equivalenceClassSize": { - "description": "Size of the k-anonymity equivalence class.", - "format": "int64", - "type": "string" - }, - "quasiIdsValues": { - "description": "Quasi-identifier values defining the k-anonymity equivalence\nclass. The order is always the same as the original request.", - "type": "array", - "items": { - "$ref": "GooglePrivacyDlpV2beta2Value" - } - }, - "numDistinctSensitiveValues": { - "type": "string", - "description": "Number of distinct sensitive values in this equivalence class.", - "format": "int64" - }, - "topSensitiveValues": { - "description": "Estimated frequencies of top sensitive values.", - "type": "array", - "items": { - "$ref": "GooglePrivacyDlpV2beta2ValueFrequency" - } - } - } - }, - "GooglePrivacyDlpV2beta2CategoricalStatsConfig": { - "type": "object", - "properties": { - "field": { - "$ref": "GooglePrivacyDlpV2beta2FieldId", - "description": "Field to compute categorical stats on. All column types are\nsupported except for arrays and structs. However, it may be more\ninformative to use NumericalStats when the field type is supported,\ndepending on the data." } }, - "id": "GooglePrivacyDlpV2beta2CategoricalStatsConfig", - "description": "Compute numerical stats over an individual column, including\nnumber of distinct values and value count distribution." - }, - "GooglePrivacyDlpV2beta1LDiversityConfig": { - "properties": { - "sensitiveAttribute": { - "description": "Sensitive field for computing the l-value.", - "$ref": "GooglePrivacyDlpV2beta1FieldId" - }, - "quasiIds": { - "description": "Set of quasi-identifiers indicating how equivalence classes are\ndefined for the l-diversity computation. When multiple fields are\nspecified, they are considered a single composite key.", - "type": "array", - "items": { - "$ref": "GooglePrivacyDlpV2beta1FieldId" - } - } - }, - "id": "GooglePrivacyDlpV2beta1LDiversityConfig", - "description": "l-diversity metric, used for analysis of reidentification risk.", "type": "object" - }, - "GooglePrivacyDlpV2beta2ValueFrequency": { - "description": "A value of a field, including its frequency.", - "type": "object", - "properties": { - "value": { - "$ref": "GooglePrivacyDlpV2beta2Value", - "description": "A value contained in the field in question." - }, - "count": { - "description": "How many times the value is contained in the field.", - "format": "int64", - "type": "string" - } - }, - "id": "GooglePrivacyDlpV2beta2ValueFrequency" - }, - "GooglePrivacyDlpV2beta2ReplaceValueConfig": { - "type": "object", - "properties": { - "newValue": { - "$ref": "GooglePrivacyDlpV2beta2Value", - "description": "Value to replace it with." - } - }, - "id": "GooglePrivacyDlpV2beta2ReplaceValueConfig", - "description": "Replace each input value with a given `Value`." - }, - "GooglePrivacyDlpV2beta2AuxiliaryTable": { - "type": "object", - "properties": { - "quasiIds": { - "type": "array", - "items": { - "$ref": "GooglePrivacyDlpV2beta2QuasiIdField" - }, - "description": "Quasi-identifier columns. [required]" - }, - "relativeFrequency": { - "description": "The relative frequency column must contain a floating-point number\nbetween 0 and 1 (inclusive). Null values are assumed to be zero.\n[required]", - "$ref": "GooglePrivacyDlpV2beta2FieldId" - }, - "table": { - "description": "Auxiliary table location. [required]", - "$ref": "GooglePrivacyDlpV2beta2BigQueryTable" - } - }, - "id": "GooglePrivacyDlpV2beta2AuxiliaryTable", - "description": "An auxiliary table contains statistical information on the relative\nfrequency of different quasi-identifiers values. It has one or several\nquasi-identifiers columns, and one column that indicates the relative\nfrequency of each quasi-identifier tuple.\nIf a tuple is present in the data but not in the auxiliary table, the\ncorresponding relative frequency is assumed to be zero (and thus, the\ntuple is highly reidentifiable)." - }, - "GooglePrivacyDlpV2beta1StorageConfig": { - "type": "object", - "properties": { - "bigQueryOptions": { - "description": "BigQuery options specification.", - "$ref": "GooglePrivacyDlpV2beta1BigQueryOptions" - }, - "cloudStorageOptions": { - "description": "Google Cloud Storage options specification.", - "$ref": "GooglePrivacyDlpV2beta1CloudStorageOptions" - }, - "datastoreOptions": { - "$ref": "GooglePrivacyDlpV2beta1DatastoreOptions", - "description": "Google Cloud Datastore options specification." - } - }, - "id": "GooglePrivacyDlpV2beta1StorageConfig", - "description": "Shared message indicating Cloud storage type." } }, - "icons": { - "x16": "http://www.google.com/images/icons/product/search-16.gif", - "x32": "http://www.google.com/images/icons/product/search-32.gif" - }, - "protocol": "rest", - "canonicalName": "DLP", - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/cloud-platform": { - "description": "View and manage your data across Google Cloud Platform services" - } - } - } - }, - "rootUrl": "https://dlp.googleapis.com/", - "ownerDomain": "google.com", - "name": "dlp", - "batchPath": "batch", - "fullyEncodeReservedExpansion": true, - "title": "DLP API", - "ownerName": "Google", - "resources": { - "infoTypes": { - "methods": { - "list": { - "response": { - "$ref": "GooglePrivacyDlpV2beta2ListInfoTypesResponse" - }, - "parameterOrder": [], - "httpMethod": "GET", - "parameters": { - "languageCode": { - "description": "Optional BCP-47 language code for localized infoType friendly\nnames. If omitted, or if localized strings are not available,\nen-US strings will be returned.", - "type": "string", - "location": "query" - }, - "filter": { - "description": "Optional filter to only return infoTypes supported by certain parts of the\nAPI. Defaults to supported_by=INSPECT.", - "type": "string", - "location": "query" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v2beta2/infoTypes", - "path": "v2beta2/infoTypes", - "id": "dlp.infoTypes.list", - "description": "Returns sensitive information types DLP supports." - } - } - }, - "organizations": { - "resources": { - "deidentifyTemplates": { - "methods": { - "delete": { - "description": "Deletes inspect templates.", - "response": { - "$ref": "GoogleProtobufEmpty" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "DELETE", - "parameters": { - "name": { - "pattern": "^organizations/[^/]+/deidentifyTemplates/[^/]+$", - "location": "path", - "description": "Resource name of the organization and deidentify template to be deleted,\nfor example `organizations/433245324/deidentifyTemplates/432452342`.", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v2beta2/organizations/{organizationsId}/deidentifyTemplates/{deidentifyTemplatesId}", - "path": "v2beta2/{+name}", - "id": "dlp.organizations.deidentifyTemplates.delete" - }, - "patch": { - "request": { - "$ref": "GooglePrivacyDlpV2beta2UpdateDeidentifyTemplateRequest" - }, - "description": "Updates the inspect template.", - "response": { - "$ref": "GooglePrivacyDlpV2beta2DeidentifyTemplate" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "PATCH", - "parameters": { - "name": { - "pattern": "^organizations/[^/]+/deidentifyTemplates/[^/]+$", - "location": "path", - "description": "Resource name of organization and deidentify template to be updated, for\nexample `organizations/433245324/deidentifyTemplates/432452342`.", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v2beta2/organizations/{organizationsId}/deidentifyTemplates/{deidentifyTemplatesId}", - "path": "v2beta2/{+name}", - "id": "dlp.organizations.deidentifyTemplates.patch" - }, - "get": { - "description": "Gets an inspect template.", - "httpMethod": "GET", - "parameterOrder": [ - "name" - ], - "response": { - "$ref": "GooglePrivacyDlpV2beta2DeidentifyTemplate" - }, - "parameters": { - "name": { - "description": "Resource name of the organization and deidentify template to be read, for\nexample `organizations/433245324/deidentifyTemplates/432452342`.", - "required": true, - "type": "string", - "pattern": "^organizations/[^/]+/deidentifyTemplates/[^/]+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v2beta2/organizations/{organizationsId}/deidentifyTemplates/{deidentifyTemplatesId}", - "id": "dlp.organizations.deidentifyTemplates.get", - "path": "v2beta2/{+name}" - }, - "list": { - "flatPath": "v2beta2/organizations/{organizationsId}/deidentifyTemplates", - "id": "dlp.organizations.deidentifyTemplates.list", - "path": "v2beta2/{+parent}/deidentifyTemplates", - "description": "Lists inspect templates.", - "httpMethod": "GET", - "parameterOrder": [ - "parent" - ], - "response": { - "$ref": "GooglePrivacyDlpV2beta2ListDeidentifyTemplatesResponse" - }, - "parameters": { - "parent": { - "location": "path", - "description": "The parent resource name, for example projects/my-project-id or\norganizations/my-org-id.", - "required": true, - "type": "string", - "pattern": "^organizations/[^/]+$" - }, - "pageToken": { - "location": "query", - "description": "Optional page token to continue retrieval. Comes from previous call\nto `ListDeidentifyTemplates`.", - "type": "string" - }, - "pageSize": { - "location": "query", - "description": "Optional size of the page, can be limited by server. If zero server returns\na page of max size 100.", - "format": "int32", - "type": "integer" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "create": { - "request": { - "$ref": "GooglePrivacyDlpV2beta2CreateDeidentifyTemplateRequest" - }, - "description": "Creates an Deidentify template for re-using frequently used configuration\nfor Deidentifying content, images, and storage.", - "response": { - "$ref": "GooglePrivacyDlpV2beta2DeidentifyTemplate" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "POST", - "parameters": { - "parent": { - "location": "path", - "description": "The parent resource name, for example projects/my-project-id or\norganizations/my-org-id.", - "required": true, - "type": "string", - "pattern": "^organizations/[^/]+$" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v2beta2/organizations/{organizationsId}/deidentifyTemplates", - "path": "v2beta2/{+parent}/deidentifyTemplates", - "id": "dlp.organizations.deidentifyTemplates.create" - } - } - }, - "inspectTemplates": { - "methods": { - "delete": { - "parameters": { - "name": { - "location": "path", - "description": "Resource name of the organization and inspectTemplate to be deleted, for\nexample `organizations/433245324/inspectTemplates/432452342`.", - "required": true, - "type": "string", - "pattern": "^organizations/[^/]+/inspectTemplates/[^/]+$" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v2beta2/organizations/{organizationsId}/inspectTemplates/{inspectTemplatesId}", - "path": "v2beta2/{+name}", - "id": "dlp.organizations.inspectTemplates.delete", - "description": "Deletes inspect templates.", - "response": { - "$ref": "GoogleProtobufEmpty" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "DELETE" - }, - "patch": { - "request": { - "$ref": "GooglePrivacyDlpV2beta2UpdateInspectTemplateRequest" - }, - "description": "Updates the inspect template.", - "response": { - "$ref": "GooglePrivacyDlpV2beta2InspectTemplate" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "PATCH", - "parameters": { - "name": { - "description": "Resource name of organization and inspectTemplate to be updated, for\nexample `organizations/433245324/inspectTemplates/432452342`.", - "required": true, - "type": "string", - "pattern": "^organizations/[^/]+/inspectTemplates/[^/]+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v2beta2/organizations/{organizationsId}/inspectTemplates/{inspectTemplatesId}", - "path": "v2beta2/{+name}", - "id": "dlp.organizations.inspectTemplates.patch" - }, - "get": { - "description": "Gets an inspect template.", - "response": { - "$ref": "GooglePrivacyDlpV2beta2InspectTemplate" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "GET", - "parameters": { - "name": { - "required": true, - "type": "string", - "pattern": "^organizations/[^/]+/inspectTemplates/[^/]+$", - "location": "path", - "description": "Resource name of the organization and inspectTemplate to be read, for\nexample `organizations/433245324/inspectTemplates/432452342`." - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v2beta2/organizations/{organizationsId}/inspectTemplates/{inspectTemplatesId}", - "path": "v2beta2/{+name}", - "id": "dlp.organizations.inspectTemplates.get" - }, - "list": { - "response": { - "$ref": "GooglePrivacyDlpV2beta2ListInspectTemplatesResponse" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "GET", - "parameters": { - "pageSize": { - "description": "Optional size of the page, can be limited by server. If zero server returns\na page of max size 100.", - "format": "int32", - "type": "integer", - "location": "query" - }, - "parent": { - "description": "The parent resource name, for example projects/my-project-id or\norganizations/my-org-id.", - "required": true, - "type": "string", - "pattern": "^organizations/[^/]+$", - "location": "path" - }, - "pageToken": { - "location": "query", - "description": "Optional page token to continue retrieval. Comes from previous call\nto `ListInspectTemplates`.", - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v2beta2/organizations/{organizationsId}/inspectTemplates", - "path": "v2beta2/{+parent}/inspectTemplates", - "id": "dlp.organizations.inspectTemplates.list", - "description": "Lists inspect templates." - }, - "create": { - "flatPath": "v2beta2/organizations/{organizationsId}/inspectTemplates", - "path": "v2beta2/{+parent}/inspectTemplates", - "id": "dlp.organizations.inspectTemplates.create", - "request": { - "$ref": "GooglePrivacyDlpV2beta2CreateInspectTemplateRequest" - }, - "description": "Creates an inspect template for re-using frequently used configuration\nfor inspecting content, images, and storage.", - "response": { - "$ref": "GooglePrivacyDlpV2beta2InspectTemplate" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "POST", - "parameters": { - "parent": { - "description": "The parent resource name, for example projects/my-project-id or\norganizations/my-org-id.", - "required": true, - "type": "string", - "pattern": "^organizations/[^/]+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - } - } - } - } - }, - "projects": { - "resources": { - "image": { - "methods": { - "redact": { - "response": { - "$ref": "GooglePrivacyDlpV2beta2RedactImageResponse" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "POST", - "parameters": { - "parent": { - "description": "The parent resource name, for example projects/my-project-id.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v2beta2/projects/{projectsId}/image:redact", - "path": "v2beta2/{+parent}/image:redact", - "id": "dlp.projects.image.redact", - "request": { - "$ref": "GooglePrivacyDlpV2beta2RedactImageRequest" - }, - "description": "Redacts potentially sensitive info from an image.\nThis method has limits on input size, processing time, and output size.\n[How-to guide](/dlp/docs/redacting-sensitive-data-images)" - } - } - }, - "dlpJobs": { - "methods": { - "cancel": { - "response": { - "$ref": "GoogleProtobufEmpty" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "POST", - "parameters": { - "name": { - "location": "path", - "description": "The name of the DlpJob resource to be cancelled.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/dlpJobs/[^/]+$" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v2beta2/projects/{projectsId}/dlpJobs/{dlpJobsId}:cancel", - "path": "v2beta2/{+name}:cancel", - "id": "dlp.projects.dlpJobs.cancel", - "request": { - "$ref": "GooglePrivacyDlpV2beta2CancelDlpJobRequest" - }, - "description": "Starts asynchronous cancellation on a long-running DlpJob. The server\nmakes a best effort to cancel the DlpJob, but success is not\nguaranteed." - }, - "delete": { - "flatPath": "v2beta2/projects/{projectsId}/dlpJobs/{dlpJobsId}", - "id": "dlp.projects.dlpJobs.delete", - "path": "v2beta2/{+name}", - "description": "Deletes a long-running DlpJob. This method indicates that the client is\nno longer interested in the DlpJob result. The job will be cancelled if\npossible.", - "httpMethod": "DELETE", - "parameterOrder": [ - "name" - ], - "response": { - "$ref": "GoogleProtobufEmpty" - }, - "parameters": { - "name": { - "pattern": "^projects/[^/]+/dlpJobs/[^/]+$", - "location": "path", - "description": "The name of the DlpJob resource to be deleted.", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "list": { - "description": "Lists DlpJobs that match the specified filter in the request.", - "response": { - "$ref": "GooglePrivacyDlpV2beta2ListDlpJobsResponse" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "GET", - "parameters": { - "parent": { - "pattern": "^projects/[^/]+$", - "location": "path", - "description": "The parent resource name, for example projects/my-project-id.", - "required": true, - "type": "string" - }, - "filter": { - "description": "Optional. Allows filtering.\n\nSupported syntax:\n\n* Filter expressions are made up of one or more restrictions.\n* Restrictions can be combined by `AND` or `OR` logical operators. A\nsequence of restrictions implicitly uses `AND`.\n* A restriction has the form of `\u003cfield\u003e \u003coperator\u003e \u003cvalue\u003e`.\n* Supported fields/values for inspect jobs:\n - `state` - PENDING|RUNNING|CANCELED|FINISHED|FAILED\n - `inspected_storage` - DATASTORE|CLOUD_STORAGE|BIGQUERY\n* Supported fields for risk analysis jobs:\n - `state` - RUNNING|CANCELED|FINISHED|FAILED\n* The operator must be `=` or `!=`.\n\nExamples:\n\n* inspected_storage = cloud_storage AND state = done\n* inspected_storage = cloud_storage OR inspected_storage = bigquery\n* inspected_storage = cloud_storage AND (state = done OR state = canceled)\n\nThe length of this field should be no more than 500 characters.", - "type": "string", - "location": "query" - }, - "pageToken": { - "location": "query", - "description": "The standard list page token.", - "type": "string" - }, - "pageSize": { - "location": "query", - "description": "The standard list page size.", - "format": "int32", - "type": "integer" - }, - "type": { - "location": "query", - "enum": [ - "DLP_JOB_TYPE_UNSPECIFIED", - "INSPECT_JOB", - "RISK_ANALYSIS_JOB" - ], - "description": "The type of job. Defaults to `DlpJobType.INSPECT`", - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v2beta2/projects/{projectsId}/dlpJobs", - "path": "v2beta2/{+parent}/dlpJobs", - "id": "dlp.projects.dlpJobs.list" - }, - "get": { - "description": "Gets the latest state of a long-running DlpJob.", - "response": { - "$ref": "GooglePrivacyDlpV2beta2DlpJob" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "GET", - "parameters": { - "name": { - "description": "The name of the DlpJob resource.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/dlpJobs/[^/]+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v2beta2/projects/{projectsId}/dlpJobs/{dlpJobsId}", - "path": "v2beta2/{+name}", - "id": "dlp.projects.dlpJobs.get" - } - } - }, - "inspectTemplates": { - "methods": { - "delete": { - "description": "Deletes inspect templates.", - "response": { - "$ref": "GoogleProtobufEmpty" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "DELETE", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "name": { - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/inspectTemplates/[^/]+$", - "location": "path", - "description": "Resource name of the organization and inspectTemplate to be deleted, for\nexample `organizations/433245324/inspectTemplates/432452342`." - } - }, - "flatPath": "v2beta2/projects/{projectsId}/inspectTemplates/{inspectTemplatesId}", - "path": "v2beta2/{+name}", - "id": "dlp.projects.inspectTemplates.delete" - }, - "patch": { - "flatPath": "v2beta2/projects/{projectsId}/inspectTemplates/{inspectTemplatesId}", - "path": "v2beta2/{+name}", - "id": "dlp.projects.inspectTemplates.patch", - "request": { - "$ref": "GooglePrivacyDlpV2beta2UpdateInspectTemplateRequest" - }, - "description": "Updates the inspect template.", - "response": { - "$ref": "GooglePrivacyDlpV2beta2InspectTemplate" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "PATCH", - "parameters": { - "name": { - "location": "path", - "description": "Resource name of organization and inspectTemplate to be updated, for\nexample `organizations/433245324/inspectTemplates/432452342`.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/inspectTemplates/[^/]+$" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "get": { - "description": "Gets an inspect template.", - "response": { - "$ref": "GooglePrivacyDlpV2beta2InspectTemplate" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "name": { - "location": "path", - "description": "Resource name of the organization and inspectTemplate to be read, for\nexample `organizations/433245324/inspectTemplates/432452342`.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/inspectTemplates/[^/]+$" - } - }, - "flatPath": "v2beta2/projects/{projectsId}/inspectTemplates/{inspectTemplatesId}", - "path": "v2beta2/{+name}", - "id": "dlp.projects.inspectTemplates.get" - }, - "list": { - "path": "v2beta2/{+parent}/inspectTemplates", - "id": "dlp.projects.inspectTemplates.list", - "description": "Lists inspect templates.", - "response": { - "$ref": "GooglePrivacyDlpV2beta2ListInspectTemplatesResponse" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "GET", - "parameters": { - "pageToken": { - "type": "string", - "location": "query", - "description": "Optional page token to continue retrieval. Comes from previous call\nto `ListInspectTemplates`." - }, - "pageSize": { - "type": "integer", - "location": "query", - "description": "Optional size of the page, can be limited by server. If zero server returns\na page of max size 100.", - "format": "int32" - }, - "parent": { - "required": true, - "type": "string", - "pattern": "^projects/[^/]+$", - "location": "path", - "description": "The parent resource name, for example projects/my-project-id or\norganizations/my-org-id." - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v2beta2/projects/{projectsId}/inspectTemplates" - }, - "create": { - "flatPath": "v2beta2/projects/{projectsId}/inspectTemplates", - "path": "v2beta2/{+parent}/inspectTemplates", - "id": "dlp.projects.inspectTemplates.create", - "description": "Creates an inspect template for re-using frequently used configuration\nfor inspecting content, images, and storage.", - "request": { - "$ref": "GooglePrivacyDlpV2beta2CreateInspectTemplateRequest" - }, - "response": { - "$ref": "GooglePrivacyDlpV2beta2InspectTemplate" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "parent": { - "pattern": "^projects/[^/]+$", - "location": "path", - "description": "The parent resource name, for example projects/my-project-id or\norganizations/my-org-id.", - "required": true, - "type": "string" - } - } - } - } - }, - "content": { - "methods": { - "inspect": { - "description": "Finds potentially sensitive info in content.\nThis method has limits on input size, processing time, and output size.\n[How-to guide for text](/dlp/docs/inspecting-text), [How-to guide for\nimages](/dlp/docs/inspecting-images)", - "request": { - "$ref": "GooglePrivacyDlpV2beta2InspectContentRequest" - }, - "response": { - "$ref": "GooglePrivacyDlpV2beta2InspectContentResponse" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "parent": { - "pattern": "^projects/[^/]+$", - "location": "path", - "description": "The parent resource name, for example projects/my-project-id.", - "required": true, - "type": "string" - } - }, - "flatPath": "v2beta2/projects/{projectsId}/content:inspect", - "path": "v2beta2/{+parent}/content:inspect", - "id": "dlp.projects.content.inspect" - }, - "reidentify": { - "path": "v2beta2/{+parent}/content:reidentify", - "id": "dlp.projects.content.reidentify", - "request": { - "$ref": "GooglePrivacyDlpV2beta2ReidentifyContentRequest" - }, - "description": "Re-identify content that has been de-identified.", - "response": { - "$ref": "GooglePrivacyDlpV2beta2ReidentifyContentResponse" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "POST", - "parameters": { - "parent": { - "description": "The parent resource name.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v2beta2/projects/{projectsId}/content:reidentify" - }, - "deidentify": { - "response": { - "$ref": "GooglePrivacyDlpV2beta2DeidentifyContentResponse" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "parent": { - "pattern": "^projects/[^/]+$", - "location": "path", - "description": "The parent resource name, for example projects/my-project-id.", - "required": true, - "type": "string" - } - }, - "flatPath": "v2beta2/projects/{projectsId}/content:deidentify", - "path": "v2beta2/{+parent}/content:deidentify", - "id": "dlp.projects.content.deidentify", - "description": "De-identifies potentially sensitive info from a ContentItem.\nThis method has limits on input size and output size.\n[How-to guide](/dlp/docs/deidentify-sensitive-data)", - "request": { - "$ref": "GooglePrivacyDlpV2beta2DeidentifyContentRequest" - } - } - } - }, - "dataSource": { - "methods": { - "inspect": { - "description": "Schedules a job scanning content in a Google Cloud Platform data\nrepository. [How-to guide](/dlp/docs/inspecting-storage)", - "request": { - "$ref": "GooglePrivacyDlpV2beta2InspectDataSourceRequest" - }, - "response": { - "$ref": "GooglePrivacyDlpV2beta2DlpJob" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "parent": { - "description": "The parent resource name, for example projects/my-project-id.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+$", - "location": "path" - } - }, - "flatPath": "v2beta2/projects/{projectsId}/dataSource:inspect", - "path": "v2beta2/{+parent}/dataSource:inspect", - "id": "dlp.projects.dataSource.inspect" - }, - "analyze": { - "response": { - "$ref": "GooglePrivacyDlpV2beta2DlpJob" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "POST", - "parameters": { - "parent": { - "required": true, - "type": "string", - "pattern": "^projects/[^/]+$", - "location": "path", - "description": "The parent resource name, for example projects/my-project-id." - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v2beta2/projects/{projectsId}/dataSource:analyze", - "path": "v2beta2/{+parent}/dataSource:analyze", - "id": "dlp.projects.dataSource.analyze", - "request": { - "$ref": "GooglePrivacyDlpV2beta2AnalyzeDataSourceRiskRequest" - }, - "description": "Schedules a job to compute risk analysis metrics over content in a Google\nCloud Platform repository. [How-to guide}(/dlp/docs/compute-risk-analysis)" - } - } - }, - "deidentifyTemplates": { - "methods": { - "delete": { - "response": { - "$ref": "GoogleProtobufEmpty" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "DELETE", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "name": { - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/deidentifyTemplates/[^/]+$", - "location": "path", - "description": "Resource name of the organization and deidentify template to be deleted,\nfor example `organizations/433245324/deidentifyTemplates/432452342`." - } - }, - "flatPath": "v2beta2/projects/{projectsId}/deidentifyTemplates/{deidentifyTemplatesId}", - "path": "v2beta2/{+name}", - "id": "dlp.projects.deidentifyTemplates.delete", - "description": "Deletes inspect templates." - }, - "patch": { - "request": { - "$ref": "GooglePrivacyDlpV2beta2UpdateDeidentifyTemplateRequest" - }, - "description": "Updates the inspect template.", - "response": { - "$ref": "GooglePrivacyDlpV2beta2DeidentifyTemplate" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "PATCH", - "parameters": { - "name": { - "description": "Resource name of organization and deidentify template to be updated, for\nexample `organizations/433245324/deidentifyTemplates/432452342`.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/deidentifyTemplates/[^/]+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v2beta2/projects/{projectsId}/deidentifyTemplates/{deidentifyTemplatesId}", - "path": "v2beta2/{+name}", - "id": "dlp.projects.deidentifyTemplates.patch" - }, - "get": { - "description": "Gets an inspect template.", - "response": { - "$ref": "GooglePrivacyDlpV2beta2DeidentifyTemplate" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "GET", - "parameters": { - "name": { - "description": "Resource name of the organization and deidentify template to be read, for\nexample `organizations/433245324/deidentifyTemplates/432452342`.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/deidentifyTemplates/[^/]+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v2beta2/projects/{projectsId}/deidentifyTemplates/{deidentifyTemplatesId}", - "path": "v2beta2/{+name}", - "id": "dlp.projects.deidentifyTemplates.get" - }, - "list": { - "response": { - "$ref": "GooglePrivacyDlpV2beta2ListDeidentifyTemplatesResponse" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "parent": { - "location": "path", - "description": "The parent resource name, for example projects/my-project-id or\norganizations/my-org-id.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+$" - }, - "pageToken": { - "location": "query", - "description": "Optional page token to continue retrieval. Comes from previous call\nto `ListDeidentifyTemplates`.", - "type": "string" - }, - "pageSize": { - "description": "Optional size of the page, can be limited by server. If zero server returns\na page of max size 100.", - "format": "int32", - "type": "integer", - "location": "query" - } - }, - "flatPath": "v2beta2/projects/{projectsId}/deidentifyTemplates", - "path": "v2beta2/{+parent}/deidentifyTemplates", - "id": "dlp.projects.deidentifyTemplates.list", - "description": "Lists inspect templates." - }, - "create": { - "description": "Creates an Deidentify template for re-using frequently used configuration\nfor Deidentifying content, images, and storage.", - "request": { - "$ref": "GooglePrivacyDlpV2beta2CreateDeidentifyTemplateRequest" - }, - "response": { - "$ref": "GooglePrivacyDlpV2beta2DeidentifyTemplate" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "parent": { - "required": true, - "type": "string", - "pattern": "^projects/[^/]+$", - "location": "path", - "description": "The parent resource name, for example projects/my-project-id or\norganizations/my-org-id." - } - }, - "flatPath": "v2beta2/projects/{projectsId}/deidentifyTemplates", - "path": "v2beta2/{+parent}/deidentifyTemplates", - "id": "dlp.projects.deidentifyTemplates.create" - } - } - } - } - } - }, - "parameters": { - "upload_protocol": { - "location": "query", - "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", - "type": "string" - }, - "prettyPrint": { - "type": "boolean", - "default": "true", - "location": "query", - "description": "Returns response with indentations and line breaks." - }, - "uploadType": { - "location": "query", - "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", - "type": "string" - }, - "fields": { - "location": "query", - "description": "Selector specifying which fields to include in a partial response.", - "type": "string" - }, - "$.xgafv": { - "enum": [ - "1", - "2" - ], - "description": "V1 error format.", - "type": "string", - "enumDescriptions": [ - "v1 error format", - "v2 error format" - ], - "location": "query" - }, - "callback": { - "location": "query", - "description": "JSONP", - "type": "string" - }, - "alt": { - "enum": [ - "json", - "media", - "proto" - ], - "type": "string", - "enumDescriptions": [ - "Responses with Content-Type of application/json", - "Media download with context-dependent Content-Type", - "Responses with Content-Type of application/x-protobuf" - ], - "location": "query", - "description": "Data format for response.", - "default": "json" - }, - "key": { - "location": "query", - "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.", - "type": "string" - }, - "access_token": { - "location": "query", - "description": "OAuth access token.", - "type": "string" - }, - "quotaUser": { - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", - "type": "string", - "location": "query" - }, - "pp": { - "location": "query", - "description": "Pretty-print response.", - "type": "boolean", - "default": "true" - }, - "oauth_token": { - "description": "OAuth 2.0 token for the current user.", - "type": "string", - "location": "query" - }, - "bearer_token": { - "location": "query", - "description": "OAuth bearer token.", - "type": "string" - } - }, - "version": "v2beta2", - "baseUrl": "https://dlp.googleapis.com/", "servicePath": "", - "kind": "discovery#restDescription", - "description": "The Google Data Loss Prevention API provides methods for detection of privacy-sensitive fragments in text, images, and Google Cloud Platform storage repositories.", - "basePath": "", - "id": "dlp:v2beta2", - "documentationLink": "https://cloud.google.com/dlp/docs/", - "revision": "20180118", - "discoveryVersion": "v1", + "title": "Cloud Data Loss Prevention (DLP) API", + "version": "v2beta2", "version_module": true -} +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/dlp/v2beta2/dlp-gen.go b/vendor/google.golang.org/api/dlp/v2beta2/dlp-gen.go index 58643547e..3ff72e576 100644 --- a/vendor/google.golang.org/api/dlp/v2beta2/dlp-gen.go +++ b/vendor/google.golang.org/api/dlp/v2beta2/dlp-gen.go @@ -1,4 +1,4 @@ -// Package dlp provides access to the DLP API. +// Package dlp provides access to the Cloud Data Loss Prevention (DLP) API. // // See https://cloud.google.com/dlp/docs/ // @@ -131,6 +131,7 @@ func NewProjectsService(s *Service) *ProjectsService { rs.DlpJobs = NewProjectsDlpJobsService(s) rs.Image = NewProjectsImageService(s) rs.InspectTemplates = NewProjectsInspectTemplatesService(s) + rs.JobTriggers = NewProjectsJobTriggersService(s) return rs } @@ -148,6 +149,8 @@ type ProjectsService struct { Image *ProjectsImageService InspectTemplates *ProjectsInspectTemplatesService + + JobTriggers *ProjectsJobTriggersService } func NewProjectsContentService(s *Service) *ProjectsContentService { @@ -204,6 +207,15 @@ type ProjectsInspectTemplatesService struct { s *Service } +func NewProjectsJobTriggersService(s *Service) *ProjectsJobTriggersService { + rs := &ProjectsJobTriggersService{s: s} + return rs +} + +type ProjectsJobTriggersService struct { + s *Service +} + // GooglePrivacyDlpV2beta1AuxiliaryTable: An auxiliary table contains // statistical information on the relative // frequency of different quasi-identifiers values. It has one or @@ -2140,6 +2152,38 @@ func (s *GooglePrivacyDlpV2beta1WordList) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// GooglePrivacyDlpV2beta2Action: A task to execute on the completion of +// a job. +type GooglePrivacyDlpV2beta2Action struct { + // PubSub: Publish a notification to a pubsub topic. + PubSub *GooglePrivacyDlpV2beta2PublishToPubSub `json:"pubSub,omitempty"` + + // SaveFindings: Save resulting findings in a provided location. + SaveFindings *GooglePrivacyDlpV2beta2SaveFindings `json:"saveFindings,omitempty"` + + // ForceSendFields is a list of field names (e.g. "PubSub") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "PubSub") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2beta2Action) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2beta2Action + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // GooglePrivacyDlpV2beta2AnalyzeDataSourceRiskDetails: Result of a risk // analysis operation request. type GooglePrivacyDlpV2beta2AnalyzeDataSourceRiskDetails struct { @@ -2190,6 +2234,17 @@ type GooglePrivacyDlpV2beta2AnalyzeDataSourceRiskRequest struct { // JobConfig: Configuration for this risk analysis job. JobConfig *GooglePrivacyDlpV2beta2RiskAnalysisJobConfig `json:"jobConfig,omitempty"` + // JobId: Optional job ID to use for the created job. If not provided, a + // job ID will + // automatically be generated. Must be unique within the project. The + // job ID + // can contain uppercase and lowercase letters, numbers, and hyphens; + // that is, + // it must match the regular expression: `[a-zA-Z\\d-]+`. The maximum + // length + // is 100 characters. Can be empty to allow the system to generate one. + JobId string `json:"jobId,omitempty"` + // ForceSendFields is a list of field names (e.g. "JobConfig") to // unconditionally include in API requests. By default, fields with // empty values are omitted from API requests. However, any non-pointer, @@ -2262,6 +2317,40 @@ func (s *GooglePrivacyDlpV2beta2AuxiliaryTable) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// GooglePrivacyDlpV2beta2BigQueryKey: Row key for identifying a record +// in BigQuery table. +type GooglePrivacyDlpV2beta2BigQueryKey struct { + // RowNumber: Absolute number of the row from the beginning of the table + // at the time + // of scanning. + RowNumber int64 `json:"rowNumber,omitempty,string"` + + // TableReference: Complete BigQuery table reference. + TableReference *GooglePrivacyDlpV2beta2BigQueryTable `json:"tableReference,omitempty"` + + // ForceSendFields is a list of field names (e.g. "RowNumber") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "RowNumber") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2beta2BigQueryKey) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2beta2BigQueryKey + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // GooglePrivacyDlpV2beta2BigQueryOptions: Options defining BigQuery // table and row identifiers. type GooglePrivacyDlpV2beta2BigQueryOptions struct { @@ -2465,6 +2554,9 @@ type GooglePrivacyDlpV2beta2CategoricalStatsHistogramBucket struct { // BucketSize: Total number of values in this bucket. BucketSize int64 `json:"bucketSize,omitempty,string"` + // BucketValueCount: Total number of distinct values in this bucket. + BucketValueCount int64 `json:"bucketValueCount,omitempty,string"` + // BucketValues: Sample of value frequencies in this bucket. The total // number of // values returned per bucket is capped at 20. @@ -2676,22 +2768,28 @@ func (s *GooglePrivacyDlpV2beta2CloudStorageKey) MarshalJSON() ([]byte, error) { // or a set of files (path ending with *) within // a Google Cloud Storage bucket. type GooglePrivacyDlpV2beta2CloudStorageOptions struct { + // BytesLimitPerFile: Max number of bytes to scan from a file. If a + // scanned file's size is bigger + // than this value then the rest of the bytes are omitted. + BytesLimitPerFile int64 `json:"bytesLimitPerFile,omitempty,string"` + FileSet *GooglePrivacyDlpV2beta2FileSet `json:"fileSet,omitempty"` - // ForceSendFields is a list of field names (e.g. "FileSet") to - // unconditionally include in API requests. By default, fields with + // ForceSendFields is a list of field names (e.g. "BytesLimitPerFile") + // to unconditionally include in API requests. By default, fields with // empty values are omitted from API requests. However, any non-pointer, // non-interface field appearing in ForceSendFields will be sent to the // server regardless of whether the field is empty or not. This may be // used to include empty fields in Patch requests. ForceSendFields []string `json:"-"` - // NullFields is a list of field names (e.g. "FileSet") to include in - // API requests with the JSON null value. By default, fields with empty - // values are omitted from API requests. However, any field with an - // empty value appearing in NullFields will be sent to the server as - // null. It is an error if a field in this list has a non-empty value. - // This may be used to include null fields in Patch requests. + // NullFields is a list of field names (e.g. "BytesLimitPerFile") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. NullFields []string `json:"-"` } @@ -2970,6 +3068,42 @@ func (s *GooglePrivacyDlpV2beta2CreateInspectTemplateRequest) MarshalJSON() ([]b return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// GooglePrivacyDlpV2beta2CreateJobTriggerRequest: Request message for +// CreateJobTrigger. +type GooglePrivacyDlpV2beta2CreateJobTriggerRequest struct { + // JobTrigger: The JobTrigger to create. + JobTrigger *GooglePrivacyDlpV2beta2JobTrigger `json:"jobTrigger,omitempty"` + + // TriggerId: The trigger id can contain uppercase and lowercase + // letters, + // numbers, and hyphens; that is, it must match the regular + // expression: `[a-zA-Z\\d-]+`. The maximum length is 100 + // characters. Can be empty to allow the system to generate one. + TriggerId string `json:"triggerId,omitempty"` + + // ForceSendFields is a list of field names (e.g. "JobTrigger") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "JobTrigger") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2beta2CreateJobTriggerRequest) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2beta2CreateJobTriggerRequest + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // GooglePrivacyDlpV2beta2CryptoHashConfig: Pseudonymization method that // generates surrogates via cryptographic hashing. // Uses SHA-256. @@ -3055,6 +3189,7 @@ func (s *GooglePrivacyDlpV2beta2CryptoKey) MarshalJSON() ([]byte, error) { // Identifiers must be at least two characters long. // In the case that the identifier is the empty string, it will be // skipped. +// See [Pseudonymization](/dlp/docs/pseudonymization) for example usage. type GooglePrivacyDlpV2beta2CryptoReplaceFfxFpeConfig struct { // Possible values: // "FFX_COMMON_NATIVE_ALPHABET_UNSPECIFIED" @@ -3183,6 +3318,13 @@ func (s *GooglePrivacyDlpV2beta2CryptoReplaceFfxFpeConfig) MarshalJSON() ([]byte // provided by the user. Used to find domain-specific // sensitive information configurable to the data in question. type GooglePrivacyDlpV2beta2CustomInfoType struct { + // DetectionRules: Set of detection rules to apply to all findings of + // this custom info type. + // Rules are applied in order that they are specified. Not supported for + // the + // `surrogate_type` custom info type. + DetectionRules []*GooglePrivacyDlpV2beta2DetectionRule `json:"detectionRules,omitempty"` + // Dictionary: Dictionary-based custom info type. Dictionary *GooglePrivacyDlpV2beta2Dictionary `json:"dictionary,omitempty"` @@ -3192,10 +3334,29 @@ type GooglePrivacyDlpV2beta2CustomInfoType struct { // types. InfoType *GooglePrivacyDlpV2beta2InfoType `json:"infoType,omitempty"` + // Likelihood: Likelihood to return for this custom info type. This base + // value can be + // altered by a detection rule if the finding meets the criteria + // specified by + // the rule. Defaults to `VERY_LIKELY` if not specified. + // + // Possible values: + // "LIKELIHOOD_UNSPECIFIED" - Default value; information with all + // likelihoods is included. + // "VERY_UNLIKELY" - Few matching elements. + // "UNLIKELY" + // "POSSIBLE" - Some matching elements. + // "LIKELY" + // "VERY_LIKELY" - Many matching elements. + Likelihood string `json:"likelihood,omitempty"` + + // Regex: Regex-based custom info type. + Regex *GooglePrivacyDlpV2beta2Regex `json:"regex,omitempty"` + // SurrogateType: Surrogate info type. SurrogateType *GooglePrivacyDlpV2beta2SurrogateType `json:"surrogateType,omitempty"` - // ForceSendFields is a list of field names (e.g. "Dictionary") to + // ForceSendFields is a list of field names (e.g. "DetectionRules") to // unconditionally include in API requests. By default, fields with // empty values are omitted from API requests. However, any non-pointer, // non-interface field appearing in ForceSendFields will be sent to the @@ -3203,12 +3364,13 @@ type GooglePrivacyDlpV2beta2CustomInfoType struct { // used to include empty fields in Patch requests. ForceSendFields []string `json:"-"` - // NullFields is a list of field names (e.g. "Dictionary") to include in - // API requests with the JSON null value. By default, fields with empty - // values are omitted from API requests. However, any field with an - // empty value appearing in NullFields will be sent to the server as - // null. It is an error if a field in this list has a non-empty value. - // This may be used to include null fields in Patch requests. + // NullFields is a list of field names (e.g. "DetectionRules") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. NullFields []string `json:"-"` } @@ -3281,6 +3443,106 @@ func (s *GooglePrivacyDlpV2beta2DatastoreOptions) MarshalJSON() ([]byte, error) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// GooglePrivacyDlpV2beta2DateShiftConfig: Shifts dates by random number +// of days, with option to be consistent for the +// same context. +type GooglePrivacyDlpV2beta2DateShiftConfig struct { + // Context: Points to the field that contains the context, for example, + // an entity id. + // If set, must also set method. If set, shift will be consistent for + // the + // given context. + Context *GooglePrivacyDlpV2beta2FieldId `json:"context,omitempty"` + + // CryptoKey: Causes the shift to be computed based on this key and the + // context. This + // results in the same shift for the same context and crypto_key. + CryptoKey *GooglePrivacyDlpV2beta2CryptoKey `json:"cryptoKey,omitempty"` + + // LowerBoundDays: For example, -5 means shift date to at most 5 days + // back in the past. + // [Required] + LowerBoundDays int64 `json:"lowerBoundDays,omitempty"` + + // UpperBoundDays: Range of shift in days. Actual shift will be selected + // at random within this + // range (inclusive ends). Negative means shift to earlier in time. Must + // not + // be more than 365250 days (1000 years) each direction. + // + // For example, 3 means shift date to at most 3 days into the + // future. + // [Required] + UpperBoundDays int64 `json:"upperBoundDays,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Context") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Context") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2beta2DateShiftConfig) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2beta2DateShiftConfig + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2beta2DateTime: Message for a date time object. +type GooglePrivacyDlpV2beta2DateTime struct { + // Date: One or more of the following must be set. All fields are + // optional, but + // when set must be valid date or time values. + Date *GoogleTypeDate `json:"date,omitempty"` + + // Possible values: + // "DAY_OF_WEEK_UNSPECIFIED" - The unspecified day-of-week. + // "MONDAY" - The day-of-week of Monday. + // "TUESDAY" - The day-of-week of Tuesday. + // "WEDNESDAY" - The day-of-week of Wednesday. + // "THURSDAY" - The day-of-week of Thursday. + // "FRIDAY" - The day-of-week of Friday. + // "SATURDAY" - The day-of-week of Saturday. + // "SUNDAY" - The day-of-week of Sunday. + DayOfWeek string `json:"dayOfWeek,omitempty"` + + Time *GoogleTypeTimeOfDay `json:"time,omitempty"` + + TimeZone *GooglePrivacyDlpV2beta2TimeZone `json:"timeZone,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Date") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Date") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2beta2DateTime) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2beta2DateTime + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // GooglePrivacyDlpV2beta2DeidentifyConfig: The configuration that // controls how the data will change. type GooglePrivacyDlpV2beta2DeidentifyConfig struct { @@ -3478,6 +3740,38 @@ func (s *GooglePrivacyDlpV2beta2DeidentifyTemplate) MarshalJSON() ([]byte, error return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// GooglePrivacyDlpV2beta2DetectionRule: Rule for modifying a custom +// info type to alter behavior under certain +// circumstances, depending on the specific details of the rule. Not +// supported +// for the `surrogate_type` custom info type. +type GooglePrivacyDlpV2beta2DetectionRule struct { + // HotwordRule: Hotword-based detection rule. + HotwordRule *GooglePrivacyDlpV2beta2HotwordRule `json:"hotwordRule,omitempty"` + + // ForceSendFields is a list of field names (e.g. "HotwordRule") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "HotwordRule") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2beta2DetectionRule) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2beta2DetectionRule + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // GooglePrivacyDlpV2beta2Dictionary: Custom information type based on a // dictionary of words or phrases. This can // be used to match sensitive information specific to the data, such as @@ -3553,6 +3847,11 @@ type GooglePrivacyDlpV2beta2DlpJob struct { // InspectDetails: Results from inspecting a data source. InspectDetails *GooglePrivacyDlpV2beta2InspectDataSourceDetails `json:"inspectDetails,omitempty"` + // JobTriggerName: If created by a job trigger, the resource name of the + // trigger that + // instantiated the job. + JobTriggerName string `json:"jobTriggerName,omitempty"` + // Name: The server-assigned name. Name string `json:"name,omitempty"` @@ -3645,6 +3944,37 @@ func (s *GooglePrivacyDlpV2beta2EntityId) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// GooglePrivacyDlpV2beta2Error: The results of an unsuccessful +// activation of the JobTrigger. +type GooglePrivacyDlpV2beta2Error struct { + Details *GoogleRpcStatus `json:"details,omitempty"` + + // Timestamps: The times the error occurred. + Timestamps []string `json:"timestamps,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Details") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Details") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2beta2Error) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2beta2Error + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // GooglePrivacyDlpV2beta2Expressions: An expression, consisting or an // operator and conditions. type GooglePrivacyDlpV2beta2Expressions struct { @@ -3822,9 +4152,19 @@ type GooglePrivacyDlpV2beta2Finding struct { // Quote: The content that was found. Even if the content is not // textual, it // may be converted to a textual representation here. - // Provided if requested by the `InspectConfig`. + // Provided if requested by the `InspectConfig` and the finding is + // less than or equal to 4096 bytes long. If the finding exceeds 4096 + // bytes + // in length, the quote may be omitted. Quote string `json:"quote,omitempty"` + // QuoteInfo: Contains data parsed from quotes. Only populated if + // include_quote was set + // to true and a supported infoType was requested. Currently + // supported + // infoTypes: DATE, DATE_OF_BIRTH and TIME. + QuoteInfo *GooglePrivacyDlpV2beta2QuoteInfo `json:"quoteInfo,omitempty"` + // ForceSendFields is a list of field names (e.g. "CreateTime") to // unconditionally include in API requests. By default, fields with // empty values are omitted from API requests. However, any non-pointer, @@ -3855,10 +4195,16 @@ type GooglePrivacyDlpV2beta2FindingLimits struct { // MaxFindingsPerItem: Max number of findings that will be returned for // each item scanned. + // When set within `InspectDataSourceRequest`, + // the maximum returned is 1000 regardless if this is set higher. + // When set within `InspectContentRequest`, this field is ignored. MaxFindingsPerItem int64 `json:"maxFindingsPerItem,omitempty"` - // MaxFindingsPerRequest: Max total number of findings that will be - // returned per request/job. + // MaxFindingsPerRequest: Max number of findings that will be returned + // per request/job. + // When set within `InspectContentRequest`, the maximum returned is + // 1000 + // regardless if this is set higher. MaxFindingsPerRequest int64 `json:"maxFindingsPerRequest,omitempty"` // ForceSendFields is a list of field names (e.g. @@ -3971,6 +4317,56 @@ func (s *GooglePrivacyDlpV2beta2FixedSizeBucketingConfig) UnmarshalJSON(data []b return nil } +// GooglePrivacyDlpV2beta2HotwordRule: Detection rule that adjusts the +// likelihood of findings within a certain +// proximity of hotwords. +type GooglePrivacyDlpV2beta2HotwordRule struct { + // HotwordRegex: Regex pattern defining what qualifies as a hotword. + HotwordRegex *GooglePrivacyDlpV2beta2Regex `json:"hotwordRegex,omitempty"` + + // LikelihoodAdjustment: Likelihood adjustment to apply to all matching + // findings. + LikelihoodAdjustment *GooglePrivacyDlpV2beta2LikelihoodAdjustment `json:"likelihoodAdjustment,omitempty"` + + // Proximity: Proximity of the finding within which the entire hotword + // must reside. + // The total length of the window cannot exceed 1000 characters. Note + // that + // the finding itself will be included in the window, so that hotwords + // may + // be used to match substrings of the finding itself. For example, + // the + // certainty of a phone number regex "\(\d{3}\) \d{3}-\d{4}" could + // be + // adjusted upwards if the area code is known to be the local area code + // of + // a company office using the hotword regex "\(xxx\)", where "xxx" + // is the area code in question. + Proximity *GooglePrivacyDlpV2beta2Proximity `json:"proximity,omitempty"` + + // ForceSendFields is a list of field names (e.g. "HotwordRegex") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "HotwordRegex") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2beta2HotwordRule) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2beta2HotwordRule + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // GooglePrivacyDlpV2beta2ImageLocation: Bounding box encompassing // detected text within an image. type GooglePrivacyDlpV2beta2ImageLocation struct { @@ -4450,6 +4846,17 @@ type GooglePrivacyDlpV2beta2InspectDataSourceRequest struct { // JobConfig: A configuration for the job. JobConfig *GooglePrivacyDlpV2beta2InspectJobConfig `json:"jobConfig,omitempty"` + // JobId: Optional job ID to use for the created job. If not provided, a + // job ID will + // automatically be generated. Must be unique within the project. The + // job ID + // can contain uppercase and lowercase letters, numbers, and hyphens; + // that is, + // it must match the regular expression: `[a-zA-Z\\d-]+`. The maximum + // length + // is 100 characters. Can be empty to allow the system to generate one. + JobId string `json:"jobId,omitempty"` + // ForceSendFields is a list of field names (e.g. "JobConfig") to // unconditionally include in API requests. By default, fields with // empty values are omitted from API requests. However, any non-pointer, @@ -4474,6 +4881,11 @@ func (s *GooglePrivacyDlpV2beta2InspectDataSourceRequest) MarshalJSON() ([]byte, } type GooglePrivacyDlpV2beta2InspectJobConfig struct { + // Actions: Actions to execute at the completion of the job. Are + // executed in the order + // provided. + Actions []*GooglePrivacyDlpV2beta2Action `json:"actions,omitempty"` + // InspectConfig: How and what to scan for. InspectConfig *GooglePrivacyDlpV2beta2InspectConfig `json:"inspectConfig,omitempty"` @@ -4490,7 +4902,7 @@ type GooglePrivacyDlpV2beta2InspectJobConfig struct { // StorageConfig: The data to scan. StorageConfig *GooglePrivacyDlpV2beta2StorageConfig `json:"storageConfig,omitempty"` - // ForceSendFields is a list of field names (e.g. "InspectConfig") to + // ForceSendFields is a list of field names (e.g. "Actions") to // unconditionally include in API requests. By default, fields with // empty values are omitted from API requests. However, any non-pointer, // non-interface field appearing in ForceSendFields will be sent to the @@ -4498,10 +4910,10 @@ type GooglePrivacyDlpV2beta2InspectJobConfig struct { // used to include empty fields in Patch requests. ForceSendFields []string `json:"-"` - // NullFields is a list of field names (e.g. "InspectConfig") to include - // in API requests with the JSON null value. By default, fields with - // empty values are omitted from API requests. However, any field with - // an empty value appearing in NullFields will be sent to the server as + // NullFields is a list of field names (e.g. "Actions") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as // null. It is an error if a field in this list has a non-empty value. // This may be used to include null fields in Patch requests. NullFields []string `json:"-"` @@ -4615,6 +5027,85 @@ func (s *GooglePrivacyDlpV2beta2InspectTemplate) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// GooglePrivacyDlpV2beta2JobTrigger: Contains a configuration to make +// dlp api calls on a repeating basis. +type GooglePrivacyDlpV2beta2JobTrigger struct { + // CreateTime: The creation timestamp of a triggeredJob, output only + // field. + CreateTime string `json:"createTime,omitempty"` + + // Description: User provided description (max 256 chars) + Description string `json:"description,omitempty"` + + // DisplayName: Display name (max 100 chars) + DisplayName string `json:"displayName,omitempty"` + + // Errors: A stream of errors encountered when the trigger was + // activated. Repeated + // errors may result in the JobTrigger automaticaly being paused. + // Will return the last 100 errors. Whenever the JobTrigger is + // modified + // this list will be cleared. Output only field. + Errors []*GooglePrivacyDlpV2beta2Error `json:"errors,omitempty"` + + InspectJob *GooglePrivacyDlpV2beta2InspectJobConfig `json:"inspectJob,omitempty"` + + // LastRunTime: The timestamp of the last time this trigger executed. + LastRunTime string `json:"lastRunTime,omitempty"` + + // Name: Unique resource name for the triggeredJob, assigned by the + // service when the + // triggeredJob is created, for + // example + // `projects/dlp-test-project/triggeredJobs/53234423`. + Name string `json:"name,omitempty"` + + // Status: A status for this trigger. [required] + // + // Possible values: + // "STATUS_UNSPECIFIED" + // "HEALTHY" - Trigger is healthy. + // "PAUSED" - Trigger is temporarily paused. + // "CANCELLED" - Trigger is cancelled and can not be resumed. + Status string `json:"status,omitempty"` + + // Triggers: A list of triggers which will be OR'ed together. Only one + // in the list + // needs to trigger for a job to be started. The list may contain only + // a single Schedule trigger and must have at least one object. + Triggers []*GooglePrivacyDlpV2beta2Trigger `json:"triggers,omitempty"` + + // UpdateTime: The last update timestamp of a triggeredJob, output only + // field. + UpdateTime string `json:"updateTime,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "CreateTime") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "CreateTime") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2beta2JobTrigger) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2beta2JobTrigger + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // GooglePrivacyDlpV2beta2KAnonymityConfig: k-anonymity metric, used for // analysis of reidentification risk. type GooglePrivacyDlpV2beta2KAnonymityConfig struct { @@ -4717,6 +5208,10 @@ type GooglePrivacyDlpV2beta2KAnonymityHistogramBucket struct { // BucketSize: Total number of equivalence classes in this bucket. BucketSize int64 `json:"bucketSize,omitempty,string"` + // BucketValueCount: Total number of distinct equivalence classes in + // this bucket. + BucketValueCount int64 `json:"bucketValueCount,omitempty,string"` + // BucketValues: Sample of equivalence classes in this bucket. The total // number of // classes returned per bucket is capped at 20. @@ -4856,6 +5351,10 @@ type GooglePrivacyDlpV2beta2KMapEstimationHistogramBucket struct { // BucketSize: Number of records within these anonymity bounds. BucketSize int64 `json:"bucketSize,omitempty,string"` + // BucketValueCount: Total number of distinct quasi-identifier tuple + // values in this bucket. + BucketValueCount int64 `json:"bucketValueCount,omitempty,string"` + // BucketValues: Sample of quasi-identifier tuple values in this bucket. // The total // number of classes returned per bucket is capped at 20. @@ -5168,6 +5667,10 @@ type GooglePrivacyDlpV2beta2LDiversityHistogramBucket struct { // BucketSize: Total number of equivalence classes in this bucket. BucketSize int64 `json:"bucketSize,omitempty,string"` + // BucketValueCount: Total number of distinct equivalence classes in + // this bucket. + BucketValueCount int64 `json:"bucketValueCount,omitempty,string"` + // BucketValues: Sample of equivalence classes in this bucket. The total // number of // classes returned per bucket is capped at 20. @@ -5238,6 +5741,63 @@ func (s *GooglePrivacyDlpV2beta2LDiversityResult) MarshalJSON() ([]byte, error) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// GooglePrivacyDlpV2beta2LikelihoodAdjustment: Message for specifying +// an adjustment to the likelihood of a finding as +// part of a detection rule. +type GooglePrivacyDlpV2beta2LikelihoodAdjustment struct { + // FixedLikelihood: Set the likelihood of a finding to a fixed value. + // + // Possible values: + // "LIKELIHOOD_UNSPECIFIED" - Default value; information with all + // likelihoods is included. + // "VERY_UNLIKELY" - Few matching elements. + // "UNLIKELY" + // "POSSIBLE" - Some matching elements. + // "LIKELY" + // "VERY_LIKELY" - Many matching elements. + FixedLikelihood string `json:"fixedLikelihood,omitempty"` + + // RelativeLikelihood: Increase or decrease the likelihood by the + // specified number of + // levels. For example, if a finding would be `POSSIBLE` without + // the + // detection rule and `relative_likelihood` is 1, then it is upgraded + // to + // `LIKELY`, while a value of -1 would downgrade it to + // `UNLIKELY`. + // Likelihood may never drop below `VERY_UNLIKELY` or + // exceed + // `VERY_LIKELY`, so applying an adjustment of 1 followed by + // an + // adjustment of -1 when base likelihood is `VERY_LIKELY` will result + // in + // a final likelihood of `LIKELY`. + RelativeLikelihood int64 `json:"relativeLikelihood,omitempty"` + + // ForceSendFields is a list of field names (e.g. "FixedLikelihood") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "FixedLikelihood") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2beta2LikelihoodAdjustment) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2beta2LikelihoodAdjustment + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // GooglePrivacyDlpV2beta2ListDeidentifyTemplatesResponse: Response // message for ListDeidentifyTemplates. type GooglePrivacyDlpV2beta2ListDeidentifyTemplatesResponse struct { @@ -5389,6 +5949,45 @@ func (s *GooglePrivacyDlpV2beta2ListInspectTemplatesResponse) MarshalJSON() ([]b return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// GooglePrivacyDlpV2beta2ListJobTriggersResponse: Response message for +// ListJobTriggers. +type GooglePrivacyDlpV2beta2ListJobTriggersResponse struct { + // JobTriggers: List of triggeredJobs, up to page_size in + // ListJobTriggersRequest. + JobTriggers []*GooglePrivacyDlpV2beta2JobTrigger `json:"jobTriggers,omitempty"` + + // NextPageToken: If the next page is available then the next page token + // to be used + // in following ListJobTriggers request. + NextPageToken string `json:"nextPageToken,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "JobTriggers") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "JobTriggers") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2beta2ListJobTriggersResponse) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2beta2ListJobTriggersResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // GooglePrivacyDlpV2beta2Location: Specifies the location of the // finding. type GooglePrivacyDlpV2beta2Location struct { @@ -5524,16 +6123,46 @@ func (s *GooglePrivacyDlpV2beta2NumericalStatsResult) MarshalJSON() ([]byte, err // GooglePrivacyDlpV2beta2OutputStorageConfig: Cloud repository for // storing output. type GooglePrivacyDlpV2beta2OutputStorageConfig struct { - // Table: Store findings in a new table in an existing dataset. If - // table_id is not - // set a new one will be generated for you with the following + // OutputSchema: Schema used for writing the findings. Columns are + // derived from the + // `Finding` object. If appending to an existing table, any columns from + // the + // predefined schema that are missing will be added. No columns in + // the + // existing table will be deleted. + // + // If unspecified, then all available columns will be used for a new + // table, + // and no changes will be made to an existing table. + // + // Possible values: + // "OUTPUT_SCHEMA_UNSPECIFIED" + // "BASIC_COLUMNS" - Basic schema including only `info_type`, `quote`, + // `certainty`, and + // `timestamp`. + // "GCS_COLUMNS" - Schema tailored to findings from scanning Google + // Cloud Storage. + // "DATASTORE_COLUMNS" - Schema tailored to findings from scanning + // Google Datastore. + // "BIG_QUERY_COLUMNS" - Schema tailored to findings from scanning + // Google BigQuery. + // "ALL_COLUMNS" - Schema containing all columns. + OutputSchema string `json:"outputSchema,omitempty"` + + // Table: Store findings in an existing table or a new table in an + // existing + // dataset. Each column in an existing table must have the same name, + // type, + // and mode of a field in the `Finding` object. If table_id is not set a + // new + // one will be generated for you with the following // format: // dlp_googleapis_yyyy_mm_dd_[dlp_job_id]. Pacific timezone will be used // for // generating the date details. Table *GooglePrivacyDlpV2beta2BigQueryTable `json:"table,omitempty"` - // ForceSendFields is a list of field names (e.g. "Table") to + // ForceSendFields is a list of field names (e.g. "OutputSchema") to // unconditionally include in API requests. By default, fields with // empty values are omitted from API requests. However, any non-pointer, // non-interface field appearing in ForceSendFields will be sent to the @@ -5541,10 +6170,10 @@ type GooglePrivacyDlpV2beta2OutputStorageConfig struct { // used to include empty fields in Patch requests. ForceSendFields []string `json:"-"` - // NullFields is a list of field names (e.g. "Table") to include in API - // requests with the JSON null value. By default, fields with empty - // values are omitted from API requests. However, any field with an - // empty value appearing in NullFields will be sent to the server as + // NullFields is a list of field names (e.g. "OutputSchema") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as // null. It is an error if a field in this list has a non-empty value. // This may be used to include null fields in Patch requests. NullFields []string `json:"-"` @@ -5653,6 +6282,8 @@ type GooglePrivacyDlpV2beta2PrimitiveTransformation struct { CryptoReplaceFfxFpeConfig *GooglePrivacyDlpV2beta2CryptoReplaceFfxFpeConfig `json:"cryptoReplaceFfxFpeConfig,omitempty"` + DateShiftConfig *GooglePrivacyDlpV2beta2DateShiftConfig `json:"dateShiftConfig,omitempty"` + FixedSizeBucketingConfig *GooglePrivacyDlpV2beta2FixedSizeBucketingConfig `json:"fixedSizeBucketingConfig,omitempty"` RedactConfig *GooglePrivacyDlpV2beta2RedactConfig `json:"redactConfig,omitempty"` @@ -5725,6 +6356,73 @@ func (s *GooglePrivacyDlpV2beta2PrivacyMetric) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// GooglePrivacyDlpV2beta2Proximity: Message for specifying a window +// around a finding to apply a detection +// rule. +type GooglePrivacyDlpV2beta2Proximity struct { + // WindowAfter: Number of characters after the finding to consider. + WindowAfter int64 `json:"windowAfter,omitempty"` + + // WindowBefore: Number of characters before the finding to consider. + WindowBefore int64 `json:"windowBefore,omitempty"` + + // ForceSendFields is a list of field names (e.g. "WindowAfter") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "WindowAfter") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2beta2Proximity) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2beta2Proximity + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2beta2PublishToPubSub: Publish the results of a +// DlpJob to a pub sub channel. +// Compatible with: Inpect, Risk +type GooglePrivacyDlpV2beta2PublishToPubSub struct { + // Topic: Cloud Pub/Sub topic to send notifications to. The topic must + // have given + // publishing access rights to the DLP API service account executing + // the long running DlpJob sending the notifications. + // Format is projects/{project}/topics/{topic}. + Topic string `json:"topic,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Topic") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Topic") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2beta2PublishToPubSub) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2beta2PublishToPubSub + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // GooglePrivacyDlpV2beta2QuasiIdField: A quasi-identifier column has a // custom_tag, used to know which column // in the data corresponds to which column in the statistical model. @@ -5756,6 +6454,34 @@ func (s *GooglePrivacyDlpV2beta2QuasiIdField) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// GooglePrivacyDlpV2beta2QuoteInfo: Message for infoType-dependent +// details parsed from quote. +type GooglePrivacyDlpV2beta2QuoteInfo struct { + DateTime *GooglePrivacyDlpV2beta2DateTime `json:"dateTime,omitempty"` + + // ForceSendFields is a list of field names (e.g. "DateTime") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "DateTime") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2beta2QuoteInfo) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2beta2QuoteInfo + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // GooglePrivacyDlpV2beta2Range: Generic half-open interval [start, end) type GooglePrivacyDlpV2beta2Range struct { // End: Index of the last character of the range (exclusive). @@ -5820,11 +6546,13 @@ func (s *GooglePrivacyDlpV2beta2RecordCondition) MarshalJSON() ([]byte, error) { // GooglePrivacyDlpV2beta2RecordKey: Message for a unique key indicating // a record that contains a finding. type GooglePrivacyDlpV2beta2RecordKey struct { + BigQueryKey *GooglePrivacyDlpV2beta2BigQueryKey `json:"bigQueryKey,omitempty"` + CloudStorageKey *GooglePrivacyDlpV2beta2CloudStorageKey `json:"cloudStorageKey,omitempty"` DatastoreKey *GooglePrivacyDlpV2beta2DatastoreKey `json:"datastoreKey,omitempty"` - // ForceSendFields is a list of field names (e.g. "CloudStorageKey") to + // ForceSendFields is a list of field names (e.g. "BigQueryKey") to // unconditionally include in API requests. By default, fields with // empty values are omitted from API requests. However, any non-pointer, // non-interface field appearing in ForceSendFields will be sent to the @@ -5832,13 +6560,12 @@ type GooglePrivacyDlpV2beta2RecordKey struct { // used to include empty fields in Patch requests. ForceSendFields []string `json:"-"` - // NullFields is a list of field names (e.g. "CloudStorageKey") to - // include in API requests with the JSON null value. By default, fields - // with empty values are omitted from API requests. However, any field - // with an empty value appearing in NullFields will be sent to the - // server as null. It is an error if a field in this list has a - // non-empty value. This may be used to include null fields in Patch - // requests. + // NullFields is a list of field names (e.g. "BigQueryKey") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. NullFields []string `json:"-"` } @@ -6009,6 +6736,35 @@ func (s *GooglePrivacyDlpV2beta2RedactImageResponse) MarshalJSON() ([]byte, erro return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// GooglePrivacyDlpV2beta2Regex: Message defining a custom regular +// expression. +type GooglePrivacyDlpV2beta2Regex struct { + // Pattern: Pattern defining the regular expression. + Pattern string `json:"pattern,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Pattern") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Pattern") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2beta2Regex) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2beta2Regex + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // GooglePrivacyDlpV2beta2ReidentifyContentRequest: Request to // re-identify an item. type GooglePrivacyDlpV2beta2ReidentifyContentRequest struct { @@ -6220,13 +6976,18 @@ func (s *GooglePrivacyDlpV2beta2Result) MarshalJSON() ([]byte, error) { // GooglePrivacyDlpV2beta2RiskAnalysisJobConfig: Configuration for a // risk analysis job. type GooglePrivacyDlpV2beta2RiskAnalysisJobConfig struct { + // Actions: Actions to execute at the completion of the job. Are + // executed in the order + // provided. + Actions []*GooglePrivacyDlpV2beta2Action `json:"actions,omitempty"` + // PrivacyMetric: Privacy metric to compute. PrivacyMetric *GooglePrivacyDlpV2beta2PrivacyMetric `json:"privacyMetric,omitempty"` // SourceTable: Input dataset to compute metrics over. SourceTable *GooglePrivacyDlpV2beta2BigQueryTable `json:"sourceTable,omitempty"` - // ForceSendFields is a list of field names (e.g. "PrivacyMetric") to + // ForceSendFields is a list of field names (e.g. "Actions") to // unconditionally include in API requests. By default, fields with // empty values are omitted from API requests. However, any non-pointer, // non-interface field appearing in ForceSendFields will be sent to the @@ -6234,10 +6995,10 @@ type GooglePrivacyDlpV2beta2RiskAnalysisJobConfig struct { // used to include empty fields in Patch requests. ForceSendFields []string `json:"-"` - // NullFields is a list of field names (e.g. "PrivacyMetric") to include - // in API requests with the JSON null value. By default, fields with - // empty values are omitted from API requests. However, any field with - // an empty value appearing in NullFields will be sent to the server as + // NullFields is a list of field names (e.g. "Actions") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as // null. It is an error if a field in this list has a non-empty value. // This may be used to include null fields in Patch requests. NullFields []string `json:"-"` @@ -6275,6 +7036,73 @@ func (s *GooglePrivacyDlpV2beta2Row) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// GooglePrivacyDlpV2beta2SaveFindings: If set, the detailed findings +// will be persisted to the specified +// OutputStorageConfig. Compatible with: Inspect +type GooglePrivacyDlpV2beta2SaveFindings struct { + OutputConfig *GooglePrivacyDlpV2beta2OutputStorageConfig `json:"outputConfig,omitempty"` + + // ForceSendFields is a list of field names (e.g. "OutputConfig") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "OutputConfig") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2beta2SaveFindings) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2beta2SaveFindings + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2beta2Schedule: Schedule for triggeredJobs. +type GooglePrivacyDlpV2beta2Schedule struct { + // ReccurrencePeriodDuration: With this option a job is started a + // regular periodic basis. For + // example: every 10 minutes. + // + // A scheduled start time will be skipped if the previous + // execution has not ended when its scheduled time occurs. + // + // This value must be set to a time duration greater than or equal + // to 60 minutes and can be no longer than 60 days. + ReccurrencePeriodDuration string `json:"reccurrencePeriodDuration,omitempty"` + + // ForceSendFields is a list of field names (e.g. + // "ReccurrencePeriodDuration") to unconditionally include in API + // requests. By default, fields with empty values are omitted from API + // requests. However, any non-pointer, non-interface field appearing in + // ForceSendFields will be sent to the server regardless of whether the + // field is empty or not. This may be used to include empty fields in + // Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. + // "ReccurrencePeriodDuration") to include in API requests with the JSON + // null value. By default, fields with empty values are omitted from API + // requests. However, any field with an empty value appearing in + // NullFields will be sent to the server as null. It is an error if a + // field in this list has a non-empty value. This may be used to include + // null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2beta2Schedule) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2beta2Schedule + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // GooglePrivacyDlpV2beta2StorageConfig: Shared message indicating Cloud // storage type. type GooglePrivacyDlpV2beta2StorageConfig struct { @@ -6287,6 +7115,8 @@ type GooglePrivacyDlpV2beta2StorageConfig struct { // DatastoreOptions: Google Cloud Datastore options specification. DatastoreOptions *GooglePrivacyDlpV2beta2DatastoreOptions `json:"datastoreOptions,omitempty"` + TimespanConfig *GooglePrivacyDlpV2beta2TimespanConfig `json:"timespanConfig,omitempty"` + // ForceSendFields is a list of field names (e.g. "BigQueryOptions") to // unconditionally include in API requests. By default, fields with // empty values are omitted from API requests. However, any non-pointer, @@ -6451,6 +7281,9 @@ type GooglePrivacyDlpV2beta2TaggedField struct { // dataset as a statistical model of population, if available. // We // currently support US ZIP codes, region codes, ages and genders. + // To programmatically obtain the list of supported InfoTypes, + // use + // ListInfoTypes with the supported_by=RISK_ANALYSIS filter. InfoType *GooglePrivacyDlpV2beta2InfoType `json:"infoType,omitempty"` // ForceSendFields is a list of field names (e.g. "CustomTag") to @@ -6513,6 +7346,81 @@ func (s *GooglePrivacyDlpV2beta2TimePartConfig) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +type GooglePrivacyDlpV2beta2TimeZone struct { + // OffsetMinutes: Set only if the offset can be determined. Positive for + // time ahead of UTC. + // E.g. For "UTC-9", this value is -540. + OffsetMinutes int64 `json:"offsetMinutes,omitempty"` + + // ForceSendFields is a list of field names (e.g. "OffsetMinutes") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "OffsetMinutes") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2beta2TimeZone) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2beta2TimeZone + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GooglePrivacyDlpV2beta2TimespanConfig: Configuration of the timespan +// of the items to include in scanning. +// Currently only supported when inspecting Google Cloud Storage and +// BigQuery. +type GooglePrivacyDlpV2beta2TimespanConfig struct { + // EnableAutoPopulationOfTimespanConfig: When the job is started by a + // JobTrigger we will automatically figure out + // a valid start_time to avoid scanning files that have not been + // modified + // since the last time the JobTrigger executed. This will be based on + // the + // time of the execution of the last run of the JobTrigger. + EnableAutoPopulationOfTimespanConfig bool `json:"enableAutoPopulationOfTimespanConfig,omitempty"` + + // EndTime: Exclude files newer than this value. + // If set to zero, no upper time limit is applied. + EndTime string `json:"endTime,omitempty"` + + // StartTime: Exclude files older than this value. + StartTime string `json:"startTime,omitempty"` + + // ForceSendFields is a list of field names (e.g. + // "EnableAutoPopulationOfTimespanConfig") to unconditionally include in + // API requests. By default, fields with empty values are omitted from + // API requests. However, any non-pointer, non-interface field appearing + // in ForceSendFields will be sent to the server regardless of whether + // the field is empty or not. This may be used to include empty fields + // in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. + // "EnableAutoPopulationOfTimespanConfig") to include in API requests + // with the JSON null value. By default, fields with empty values are + // omitted from API requests. However, any field with an empty value + // appearing in NullFields will be sent to the server as null. It is an + // error if a field in this list has a non-empty value. This may be used + // to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2beta2TimespanConfig) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2beta2TimespanConfig + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // GooglePrivacyDlpV2beta2TransformationOverview: Overview of the // modifications that occurred. type GooglePrivacyDlpV2beta2TransformationOverview struct { @@ -6640,6 +7548,36 @@ func (s *GooglePrivacyDlpV2beta2TransientCryptoKey) MarshalJSON() ([]byte, error return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// GooglePrivacyDlpV2beta2Trigger: What event needs to occur for a new +// job to be started. +type GooglePrivacyDlpV2beta2Trigger struct { + // Schedule: Create a job on a repeating basis based on the elapse of + // time. + Schedule *GooglePrivacyDlpV2beta2Schedule `json:"schedule,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Schedule") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Schedule") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2beta2Trigger) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2beta2Trigger + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // GooglePrivacyDlpV2beta2UnwrappedCryptoKey: Using raw keys is prone to // security risks due to accidentally // leaking the key. Choose another type of key if possible. @@ -6736,6 +7674,38 @@ func (s *GooglePrivacyDlpV2beta2UpdateInspectTemplateRequest) MarshalJSON() ([]b return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// GooglePrivacyDlpV2beta2UpdateJobTriggerRequest: Request message for +// UpdateJobTrigger. +type GooglePrivacyDlpV2beta2UpdateJobTriggerRequest struct { + // JobTrigger: New JobTrigger value. + JobTrigger *GooglePrivacyDlpV2beta2JobTrigger `json:"jobTrigger,omitempty"` + + // UpdateMask: Mask to control which fields get updated. + UpdateMask string `json:"updateMask,omitempty"` + + // ForceSendFields is a list of field names (e.g. "JobTrigger") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "JobTrigger") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GooglePrivacyDlpV2beta2UpdateJobTriggerRequest) MarshalJSON() ([]byte, error) { + type NoMethod GooglePrivacyDlpV2beta2UpdateJobTriggerRequest + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // GooglePrivacyDlpV2beta2Value: Set of primitive values supported by // the system. // Note that for the purposes of inspection or transformation, the @@ -6752,6 +7722,17 @@ type GooglePrivacyDlpV2beta2Value struct { DateValue *GoogleTypeDate `json:"dateValue,omitempty"` + // Possible values: + // "DAY_OF_WEEK_UNSPECIFIED" - The unspecified day-of-week. + // "MONDAY" - The day-of-week of Monday. + // "TUESDAY" - The day-of-week of Tuesday. + // "WEDNESDAY" - The day-of-week of Wednesday. + // "THURSDAY" - The day-of-week of Thursday. + // "FRIDAY" - The day-of-week of Friday. + // "SATURDAY" - The day-of-week of Saturday. + // "SUNDAY" - The day-of-week of Sunday. + DayOfWeekValue string `json:"dayOfWeekValue,omitempty"` + FloatValue float64 `json:"floatValue,omitempty"` IntegerValue int64 `json:"integerValue,omitempty,string"` @@ -7498,7 +8479,7 @@ func (c *OrganizationsDeidentifyTemplatesDeleteCall) Do(opts ...googleapi.CallOp // ], // "parameters": { // "name": { - // "description": "Resource name of the organization and deidentify template to be deleted,\nfor example `organizations/433245324/deidentifyTemplates/432452342`.", + // "description": "Resource name of the organization and deidentify template to be deleted,\nfor example `organizations/433245324/deidentifyTemplates/432452342` or\nprojects/project-id/deidentifyTemplates/432452342.", // "location": "path", // "pattern": "^organizations/[^/]+/deidentifyTemplates/[^/]+$", // "required": true, @@ -7639,7 +8620,7 @@ func (c *OrganizationsDeidentifyTemplatesGetCall) Do(opts ...googleapi.CallOptio // ], // "parameters": { // "name": { - // "description": "Resource name of the organization and deidentify template to be read, for\nexample `organizations/433245324/deidentifyTemplates/432452342`.", + // "description": "Resource name of the organization and deidentify template to be read, for\nexample `organizations/433245324/deidentifyTemplates/432452342` or\nprojects/project-id/deidentifyTemplates/432452342.", // "location": "path", // "pattern": "^organizations/[^/]+/deidentifyTemplates/[^/]+$", // "required": true, @@ -7963,7 +8944,7 @@ func (c *OrganizationsDeidentifyTemplatesPatchCall) Do(opts ...googleapi.CallOpt // ], // "parameters": { // "name": { - // "description": "Resource name of organization and deidentify template to be updated, for\nexample `organizations/433245324/deidentifyTemplates/432452342`.", + // "description": "Resource name of organization and deidentify template to be updated, for\nexample `organizations/433245324/deidentifyTemplates/432452342` or\nprojects/project-id/deidentifyTemplates/432452342.", // "location": "path", // "pattern": "^organizations/[^/]+/deidentifyTemplates/[^/]+$", // "required": true, @@ -8229,7 +9210,7 @@ func (c *OrganizationsInspectTemplatesDeleteCall) Do(opts ...googleapi.CallOptio // ], // "parameters": { // "name": { - // "description": "Resource name of the organization and inspectTemplate to be deleted, for\nexample `organizations/433245324/inspectTemplates/432452342`.", + // "description": "Resource name of the organization and inspectTemplate to be deleted, for\nexample `organizations/433245324/inspectTemplates/432452342` or\nprojects/project-id/inspectTemplates/432452342.", // "location": "path", // "pattern": "^organizations/[^/]+/inspectTemplates/[^/]+$", // "required": true, @@ -8369,7 +9350,7 @@ func (c *OrganizationsInspectTemplatesGetCall) Do(opts ...googleapi.CallOption) // ], // "parameters": { // "name": { - // "description": "Resource name of the organization and inspectTemplate to be read, for\nexample `organizations/433245324/inspectTemplates/432452342`.", + // "description": "Resource name of the organization and inspectTemplate to be read, for\nexample `organizations/433245324/inspectTemplates/432452342` or\nprojects/project-id/inspectTemplates/432452342.", // "location": "path", // "pattern": "^organizations/[^/]+/inspectTemplates/[^/]+$", // "required": true, @@ -8691,7 +9672,7 @@ func (c *OrganizationsInspectTemplatesPatchCall) Do(opts ...googleapi.CallOption // ], // "parameters": { // "name": { - // "description": "Resource name of organization and inspectTemplate to be updated, for\nexample `organizations/433245324/inspectTemplates/432452342`.", + // "description": "Resource name of organization and inspectTemplate to be updated, for\nexample `organizations/433245324/inspectTemplates/432452342` or\nprojects/project-id/inspectTemplates/432452342.", // "location": "path", // "pattern": "^organizations/[^/]+/inspectTemplates/[^/]+$", // "required": true, @@ -9145,7 +10126,7 @@ type ProjectsDataSourceAnalyzeCall struct { // Analyze: Schedules a job to compute risk analysis metrics over // content in a Google // Cloud Platform repository. [How-to -// guide}(/dlp/docs/compute-risk-analysis) +// guide](/dlp/docs/compute-risk-analysis) func (r *ProjectsDataSourceService) Analyze(parent string, googleprivacydlpv2beta2analyzedatasourceriskrequest *GooglePrivacyDlpV2beta2AnalyzeDataSourceRiskRequest) *ProjectsDataSourceAnalyzeCall { c := &ProjectsDataSourceAnalyzeCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.parent = parent @@ -9239,7 +10220,7 @@ func (c *ProjectsDataSourceAnalyzeCall) Do(opts ...googleapi.CallOption) (*Googl } return ret, nil // { - // "description": "Schedules a job to compute risk analysis metrics over content in a Google\nCloud Platform repository. [How-to guide}(/dlp/docs/compute-risk-analysis)", + // "description": "Schedules a job to compute risk analysis metrics over content in a Google\nCloud Platform repository. [How-to guide](/dlp/docs/compute-risk-analysis)", // "flatPath": "v2beta2/projects/{projectsId}/dataSource:analyze", // "httpMethod": "POST", // "id": "dlp.projects.dataSource.analyze", @@ -9652,7 +10633,7 @@ func (c *ProjectsDeidentifyTemplatesDeleteCall) Do(opts ...googleapi.CallOption) // ], // "parameters": { // "name": { - // "description": "Resource name of the organization and deidentify template to be deleted,\nfor example `organizations/433245324/deidentifyTemplates/432452342`.", + // "description": "Resource name of the organization and deidentify template to be deleted,\nfor example `organizations/433245324/deidentifyTemplates/432452342` or\nprojects/project-id/deidentifyTemplates/432452342.", // "location": "path", // "pattern": "^projects/[^/]+/deidentifyTemplates/[^/]+$", // "required": true, @@ -9793,7 +10774,7 @@ func (c *ProjectsDeidentifyTemplatesGetCall) Do(opts ...googleapi.CallOption) (* // ], // "parameters": { // "name": { - // "description": "Resource name of the organization and deidentify template to be read, for\nexample `organizations/433245324/deidentifyTemplates/432452342`.", + // "description": "Resource name of the organization and deidentify template to be read, for\nexample `organizations/433245324/deidentifyTemplates/432452342` or\nprojects/project-id/deidentifyTemplates/432452342.", // "location": "path", // "pattern": "^projects/[^/]+/deidentifyTemplates/[^/]+$", // "required": true, @@ -10117,7 +11098,7 @@ func (c *ProjectsDeidentifyTemplatesPatchCall) Do(opts ...googleapi.CallOption) // ], // "parameters": { // "name": { - // "description": "Resource name of organization and deidentify template to be updated, for\nexample `organizations/433245324/deidentifyTemplates/432452342`.", + // "description": "Resource name of organization and deidentify template to be updated, for\nexample `organizations/433245324/deidentifyTemplates/432452342` or\nprojects/project-id/deidentifyTemplates/432452342.", // "location": "path", // "pattern": "^projects/[^/]+/deidentifyTemplates/[^/]+$", // "required": true, @@ -10576,6 +11557,8 @@ func (r *ProjectsDlpJobsService) List(parent string) *ProjectsDlpJobsListCall { // * Supported fields/values for inspect jobs: // - `state` - PENDING|RUNNING|CANCELED|FINISHED|FAILED // - `inspected_storage` - DATASTORE|CLOUD_STORAGE|BIGQUERY +// - `trigger_name` - The resource name of the trigger that created +// job. // * Supported fields for risk analysis jobs: // - `state` - RUNNING|CANCELED|FINISHED|FAILED // * The operator must be `=` or `!=`. @@ -10724,7 +11707,7 @@ func (c *ProjectsDlpJobsListCall) Do(opts ...googleapi.CallOption) (*GooglePriva // ], // "parameters": { // "filter": { - // "description": "Optional. Allows filtering.\n\nSupported syntax:\n\n* Filter expressions are made up of one or more restrictions.\n* Restrictions can be combined by `AND` or `OR` logical operators. A\nsequence of restrictions implicitly uses `AND`.\n* A restriction has the form of `\u003cfield\u003e \u003coperator\u003e \u003cvalue\u003e`.\n* Supported fields/values for inspect jobs:\n - `state` - PENDING|RUNNING|CANCELED|FINISHED|FAILED\n - `inspected_storage` - DATASTORE|CLOUD_STORAGE|BIGQUERY\n* Supported fields for risk analysis jobs:\n - `state` - RUNNING|CANCELED|FINISHED|FAILED\n* The operator must be `=` or `!=`.\n\nExamples:\n\n* inspected_storage = cloud_storage AND state = done\n* inspected_storage = cloud_storage OR inspected_storage = bigquery\n* inspected_storage = cloud_storage AND (state = done OR state = canceled)\n\nThe length of this field should be no more than 500 characters.", + // "description": "Optional. Allows filtering.\n\nSupported syntax:\n\n* Filter expressions are made up of one or more restrictions.\n* Restrictions can be combined by `AND` or `OR` logical operators. A\nsequence of restrictions implicitly uses `AND`.\n* A restriction has the form of `\u003cfield\u003e \u003coperator\u003e \u003cvalue\u003e`.\n* Supported fields/values for inspect jobs:\n - `state` - PENDING|RUNNING|CANCELED|FINISHED|FAILED\n - `inspected_storage` - DATASTORE|CLOUD_STORAGE|BIGQUERY\n - `trigger_name` - The resource name of the trigger that created job.\n* Supported fields for risk analysis jobs:\n - `state` - RUNNING|CANCELED|FINISHED|FAILED\n* The operator must be `=` or `!=`.\n\nExamples:\n\n* inspected_storage = cloud_storage AND state = done\n* inspected_storage = cloud_storage OR inspected_storage = bigquery\n* inspected_storage = cloud_storage AND (state = done OR state = canceled)\n\nThe length of this field should be no more than 500 characters.", // "location": "query", // "type": "string" // }, @@ -11174,7 +12157,7 @@ func (c *ProjectsInspectTemplatesDeleteCall) Do(opts ...googleapi.CallOption) (* // ], // "parameters": { // "name": { - // "description": "Resource name of the organization and inspectTemplate to be deleted, for\nexample `organizations/433245324/inspectTemplates/432452342`.", + // "description": "Resource name of the organization and inspectTemplate to be deleted, for\nexample `organizations/433245324/inspectTemplates/432452342` or\nprojects/project-id/inspectTemplates/432452342.", // "location": "path", // "pattern": "^projects/[^/]+/inspectTemplates/[^/]+$", // "required": true, @@ -11314,7 +12297,7 @@ func (c *ProjectsInspectTemplatesGetCall) Do(opts ...googleapi.CallOption) (*Goo // ], // "parameters": { // "name": { - // "description": "Resource name of the organization and inspectTemplate to be read, for\nexample `organizations/433245324/inspectTemplates/432452342`.", + // "description": "Resource name of the organization and inspectTemplate to be read, for\nexample `organizations/433245324/inspectTemplates/432452342` or\nprojects/project-id/inspectTemplates/432452342.", // "location": "path", // "pattern": "^projects/[^/]+/inspectTemplates/[^/]+$", // "required": true, @@ -11636,7 +12619,7 @@ func (c *ProjectsInspectTemplatesPatchCall) Do(opts ...googleapi.CallOption) (*G // ], // "parameters": { // "name": { - // "description": "Resource name of organization and inspectTemplate to be updated, for\nexample `organizations/433245324/inspectTemplates/432452342`.", + // "description": "Resource name of organization and inspectTemplate to be updated, for\nexample `organizations/433245324/inspectTemplates/432452342` or\nprojects/project-id/inspectTemplates/432452342.", // "location": "path", // "pattern": "^projects/[^/]+/inspectTemplates/[^/]+$", // "required": true, @@ -11656,3 +12639,758 @@ func (c *ProjectsInspectTemplatesPatchCall) Do(opts ...googleapi.CallOption) (*G // } } + +// method id "dlp.projects.jobTriggers.create": + +type ProjectsJobTriggersCreateCall struct { + s *Service + parent string + googleprivacydlpv2beta2createjobtriggerrequest *GooglePrivacyDlpV2beta2CreateJobTriggerRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Create: Creates a job to run DLP actions such as scanning storage for +// sensitive +// information on a set schedule. +func (r *ProjectsJobTriggersService) Create(parent string, googleprivacydlpv2beta2createjobtriggerrequest *GooglePrivacyDlpV2beta2CreateJobTriggerRequest) *ProjectsJobTriggersCreateCall { + c := &ProjectsJobTriggersCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.parent = parent + c.googleprivacydlpv2beta2createjobtriggerrequest = googleprivacydlpv2beta2createjobtriggerrequest + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsJobTriggersCreateCall) Fields(s ...googleapi.Field) *ProjectsJobTriggersCreateCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsJobTriggersCreateCall) Context(ctx context.Context) *ProjectsJobTriggersCreateCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsJobTriggersCreateCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsJobTriggersCreateCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleprivacydlpv2beta2createjobtriggerrequest) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v2beta2/{+parent}/jobTriggers") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("POST", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "parent": c.parent, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "dlp.projects.jobTriggers.create" call. +// Exactly one of *GooglePrivacyDlpV2beta2JobTrigger or error will be +// non-nil. Any non-2xx status code is an error. Response headers are in +// either *GooglePrivacyDlpV2beta2JobTrigger.ServerResponse.Header or +// (if a response was returned at all) in +// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check +// whether the returned error was because http.StatusNotModified was +// returned. +func (c *ProjectsJobTriggersCreateCall) Do(opts ...googleapi.CallOption) (*GooglePrivacyDlpV2beta2JobTrigger, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &GooglePrivacyDlpV2beta2JobTrigger{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Creates a job to run DLP actions such as scanning storage for sensitive\ninformation on a set schedule.", + // "flatPath": "v2beta2/projects/{projectsId}/jobTriggers", + // "httpMethod": "POST", + // "id": "dlp.projects.jobTriggers.create", + // "parameterOrder": [ + // "parent" + // ], + // "parameters": { + // "parent": { + // "description": "The parent resource name, for example projects/my-project-id.", + // "location": "path", + // "pattern": "^projects/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v2beta2/{+parent}/jobTriggers", + // "request": { + // "$ref": "GooglePrivacyDlpV2beta2CreateJobTriggerRequest" + // }, + // "response": { + // "$ref": "GooglePrivacyDlpV2beta2JobTrigger" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "dlp.projects.jobTriggers.delete": + +type ProjectsJobTriggersDeleteCall struct { + s *Service + name string + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Delete: Deletes a job trigger. +func (r *ProjectsJobTriggersService) Delete(name string) *ProjectsJobTriggersDeleteCall { + c := &ProjectsJobTriggersDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsJobTriggersDeleteCall) Fields(s ...googleapi.Field) *ProjectsJobTriggersDeleteCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsJobTriggersDeleteCall) Context(ctx context.Context) *ProjectsJobTriggersDeleteCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsJobTriggersDeleteCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsJobTriggersDeleteCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v2beta2/{+name}") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("DELETE", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "dlp.projects.jobTriggers.delete" call. +// Exactly one of *GoogleProtobufEmpty or error will be non-nil. Any +// non-2xx status code is an error. Response headers are in either +// *GoogleProtobufEmpty.ServerResponse.Header or (if a response was +// returned at all) in error.(*googleapi.Error).Header. Use +// googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *ProjectsJobTriggersDeleteCall) Do(opts ...googleapi.CallOption) (*GoogleProtobufEmpty, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &GoogleProtobufEmpty{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Deletes a job trigger.", + // "flatPath": "v2beta2/projects/{projectsId}/jobTriggers/{jobTriggersId}", + // "httpMethod": "DELETE", + // "id": "dlp.projects.jobTriggers.delete", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "Resource name of the project and the triggeredJob, for example\n`projects/dlp-test-project/jobTriggers/53234423`.", + // "location": "path", + // "pattern": "^projects/[^/]+/jobTriggers/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v2beta2/{+name}", + // "response": { + // "$ref": "GoogleProtobufEmpty" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "dlp.projects.jobTriggers.get": + +type ProjectsJobTriggersGetCall struct { + s *Service + name string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// Get: Gets a job trigger. +func (r *ProjectsJobTriggersService) Get(name string) *ProjectsJobTriggersGetCall { + c := &ProjectsJobTriggersGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsJobTriggersGetCall) Fields(s ...googleapi.Field) *ProjectsJobTriggersGetCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// IfNoneMatch sets the optional parameter which makes the operation +// fail if the object's ETag matches the given value. This is useful for +// getting updates only after the object has changed since the last +// request. Use googleapi.IsNotModified to check whether the response +// error from Do is the result of In-None-Match. +func (c *ProjectsJobTriggersGetCall) IfNoneMatch(entityTag string) *ProjectsJobTriggersGetCall { + c.ifNoneMatch_ = entityTag + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsJobTriggersGetCall) Context(ctx context.Context) *ProjectsJobTriggersGetCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsJobTriggersGetCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsJobTriggersGetCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + if c.ifNoneMatch_ != "" { + reqHeaders.Set("If-None-Match", c.ifNoneMatch_) + } + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v2beta2/{+name}") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("GET", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "dlp.projects.jobTriggers.get" call. +// Exactly one of *GooglePrivacyDlpV2beta2JobTrigger or error will be +// non-nil. Any non-2xx status code is an error. Response headers are in +// either *GooglePrivacyDlpV2beta2JobTrigger.ServerResponse.Header or +// (if a response was returned at all) in +// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check +// whether the returned error was because http.StatusNotModified was +// returned. +func (c *ProjectsJobTriggersGetCall) Do(opts ...googleapi.CallOption) (*GooglePrivacyDlpV2beta2JobTrigger, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &GooglePrivacyDlpV2beta2JobTrigger{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Gets a job trigger.", + // "flatPath": "v2beta2/projects/{projectsId}/jobTriggers/{jobTriggersId}", + // "httpMethod": "GET", + // "id": "dlp.projects.jobTriggers.get", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "Resource name of the project and the triggeredJob, for example\n`projects/dlp-test-project/jobTriggers/53234423`.", + // "location": "path", + // "pattern": "^projects/[^/]+/jobTriggers/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v2beta2/{+name}", + // "response": { + // "$ref": "GooglePrivacyDlpV2beta2JobTrigger" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "dlp.projects.jobTriggers.list": + +type ProjectsJobTriggersListCall struct { + s *Service + parent string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// List: Lists job triggers. +func (r *ProjectsJobTriggersService) List(parent string) *ProjectsJobTriggersListCall { + c := &ProjectsJobTriggersListCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.parent = parent + return c +} + +// OrderBy sets the optional parameter "orderBy": Optional comma +// separated list of triggeredJob fields to order by, +// followed by 'asc/desc' postfix, i.e. +// "create_time asc,name desc,schedule_mode asc". This list +// is +// case-insensitive. +// +// Example: "name asc,schedule_mode desc, status desc" +// +// Supported filters keys and values are: +// +// - `create_time`: corresponds to time the triggeredJob was created. +// - `update_time`: corresponds to time the triggeredJob was last +// updated. +// - `name`: corresponds to JobTrigger's display name. +// - `status`: corresponds to the triggeredJob status. +func (c *ProjectsJobTriggersListCall) OrderBy(orderBy string) *ProjectsJobTriggersListCall { + c.urlParams_.Set("orderBy", orderBy) + return c +} + +// PageSize sets the optional parameter "pageSize": Optional size of the +// page, can be limited by a server. +func (c *ProjectsJobTriggersListCall) PageSize(pageSize int64) *ProjectsJobTriggersListCall { + c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) + return c +} + +// PageToken sets the optional parameter "pageToken": Optional page +// token to continue retrieval. Comes from previous call +// to ListJobTriggers. `order_by` and `filter` should not change +// for +// subsequent calls, but can be omitted if token is specified. +func (c *ProjectsJobTriggersListCall) PageToken(pageToken string) *ProjectsJobTriggersListCall { + c.urlParams_.Set("pageToken", pageToken) + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsJobTriggersListCall) Fields(s ...googleapi.Field) *ProjectsJobTriggersListCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// IfNoneMatch sets the optional parameter which makes the operation +// fail if the object's ETag matches the given value. This is useful for +// getting updates only after the object has changed since the last +// request. Use googleapi.IsNotModified to check whether the response +// error from Do is the result of In-None-Match. +func (c *ProjectsJobTriggersListCall) IfNoneMatch(entityTag string) *ProjectsJobTriggersListCall { + c.ifNoneMatch_ = entityTag + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsJobTriggersListCall) Context(ctx context.Context) *ProjectsJobTriggersListCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsJobTriggersListCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsJobTriggersListCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + if c.ifNoneMatch_ != "" { + reqHeaders.Set("If-None-Match", c.ifNoneMatch_) + } + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v2beta2/{+parent}/jobTriggers") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("GET", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "parent": c.parent, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "dlp.projects.jobTriggers.list" call. +// Exactly one of *GooglePrivacyDlpV2beta2ListJobTriggersResponse or +// error will be non-nil. Any non-2xx status code is an error. Response +// headers are in either +// *GooglePrivacyDlpV2beta2ListJobTriggersResponse.ServerResponse.Header +// or (if a response was returned at all) in +// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check +// whether the returned error was because http.StatusNotModified was +// returned. +func (c *ProjectsJobTriggersListCall) Do(opts ...googleapi.CallOption) (*GooglePrivacyDlpV2beta2ListJobTriggersResponse, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &GooglePrivacyDlpV2beta2ListJobTriggersResponse{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Lists job triggers.", + // "flatPath": "v2beta2/projects/{projectsId}/jobTriggers", + // "httpMethod": "GET", + // "id": "dlp.projects.jobTriggers.list", + // "parameterOrder": [ + // "parent" + // ], + // "parameters": { + // "orderBy": { + // "description": "Optional comma separated list of triggeredJob fields to order by,\nfollowed by 'asc/desc' postfix, i.e.\n`\"create_time asc,name desc,schedule_mode asc\"`. This list is\ncase-insensitive.\n\nExample: `\"name asc,schedule_mode desc, status desc\"`\n\nSupported filters keys and values are:\n\n- `create_time`: corresponds to time the triggeredJob was created.\n- `update_time`: corresponds to time the triggeredJob was last updated.\n- `name`: corresponds to JobTrigger's display name.\n- `status`: corresponds to the triggeredJob status.", + // "location": "query", + // "type": "string" + // }, + // "pageSize": { + // "description": "Optional size of the page, can be limited by a server.", + // "format": "int32", + // "location": "query", + // "type": "integer" + // }, + // "pageToken": { + // "description": "Optional page token to continue retrieval. Comes from previous call\nto ListJobTriggers. `order_by` and `filter` should not change for\nsubsequent calls, but can be omitted if token is specified.", + // "location": "query", + // "type": "string" + // }, + // "parent": { + // "description": "The parent resource name, for example projects/my-project-id.", + // "location": "path", + // "pattern": "^projects/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v2beta2/{+parent}/jobTriggers", + // "response": { + // "$ref": "GooglePrivacyDlpV2beta2ListJobTriggersResponse" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// Pages invokes f for each page of results. +// A non-nil error returned from f will halt the iteration. +// The provided context supersedes any context provided to the Context method. +func (c *ProjectsJobTriggersListCall) Pages(ctx context.Context, f func(*GooglePrivacyDlpV2beta2ListJobTriggersResponse) error) error { + c.ctx_ = ctx + defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point + for { + x, err := c.Do() + if err != nil { + return err + } + if err := f(x); err != nil { + return err + } + if x.NextPageToken == "" { + return nil + } + c.PageToken(x.NextPageToken) + } +} + +// method id "dlp.projects.jobTriggers.patch": + +type ProjectsJobTriggersPatchCall struct { + s *Service + name string + googleprivacydlpv2beta2updatejobtriggerrequest *GooglePrivacyDlpV2beta2UpdateJobTriggerRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Patch: Updates a job trigger. +func (r *ProjectsJobTriggersService) Patch(name string, googleprivacydlpv2beta2updatejobtriggerrequest *GooglePrivacyDlpV2beta2UpdateJobTriggerRequest) *ProjectsJobTriggersPatchCall { + c := &ProjectsJobTriggersPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + c.googleprivacydlpv2beta2updatejobtriggerrequest = googleprivacydlpv2beta2updatejobtriggerrequest + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsJobTriggersPatchCall) Fields(s ...googleapi.Field) *ProjectsJobTriggersPatchCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsJobTriggersPatchCall) Context(ctx context.Context) *ProjectsJobTriggersPatchCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsJobTriggersPatchCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsJobTriggersPatchCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleprivacydlpv2beta2updatejobtriggerrequest) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v2beta2/{+name}") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("PATCH", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "dlp.projects.jobTriggers.patch" call. +// Exactly one of *GooglePrivacyDlpV2beta2JobTrigger or error will be +// non-nil. Any non-2xx status code is an error. Response headers are in +// either *GooglePrivacyDlpV2beta2JobTrigger.ServerResponse.Header or +// (if a response was returned at all) in +// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check +// whether the returned error was because http.StatusNotModified was +// returned. +func (c *ProjectsJobTriggersPatchCall) Do(opts ...googleapi.CallOption) (*GooglePrivacyDlpV2beta2JobTrigger, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &GooglePrivacyDlpV2beta2JobTrigger{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Updates a job trigger.", + // "flatPath": "v2beta2/projects/{projectsId}/jobTriggers/{jobTriggersId}", + // "httpMethod": "PATCH", + // "id": "dlp.projects.jobTriggers.patch", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "Resource name of the project and the triggeredJob, for example\n`projects/dlp-test-project/jobTriggers/53234423`.", + // "location": "path", + // "pattern": "^projects/[^/]+/jobTriggers/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v2beta2/{+name}", + // "request": { + // "$ref": "GooglePrivacyDlpV2beta2UpdateJobTriggerRequest" + // }, + // "response": { + // "$ref": "GooglePrivacyDlpV2beta2JobTrigger" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} diff --git a/vendor/google.golang.org/api/dns/v1/dns-api.json b/vendor/google.golang.org/api/dns/v1/dns-api.json index 8536a662b..6dd6af223 100644 --- a/vendor/google.golang.org/api/dns/v1/dns-api.json +++ b/vendor/google.golang.org/api/dns/v1/dns-api.json @@ -1,708 +1,1401 @@ { - "kind": "discovery#restDescription", - "etag": "\"YWOzh2SDasdU84ArJnpYek-OMdg/AJzw-edzaMurZNwug0J7eHLS8aw\"", - "discoveryVersion": "v1", - "id": "dns:v1", - "name": "dns", - "version": "v1", - "revision": "20170831", - "title": "Google Cloud DNS API", - "description": "Configures and serves authoritative DNS records.", - "ownerDomain": "google.com", - "ownerName": "Google", - "icons": { - "x16": "https://www.gstatic.com/images/branding/product/1x/googleg_16dp.png", - "x32": "https://www.gstatic.com/images/branding/product/1x/googleg_32dp.png" - }, - "documentationLink": "https://developers.google.com/cloud-dns", - "protocol": "rest", - "baseUrl": "https://www.googleapis.com/dns/v1/projects/", - "basePath": "/dns/v1/projects/", - "rootUrl": "https://www.googleapis.com/", - "servicePath": "dns/v1/projects/", - "batchPath": "batch/dns/v1", - "parameters": { - "alt": { - "type": "string", - "description": "Data format for the response.", - "default": "json", - "enum": [ - "json" - ], - "enumDescriptions": [ - "Responses with Content-Type of application/json" - ], - "location": "query" - }, - "fields": { - "type": "string", - "description": "Selector specifying which fields to include in a partial response.", - "location": "query" - }, - "key": { - "type": "string", - "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" - }, - "oauth_token": { - "type": "string", - "description": "OAuth 2.0 token for the current user.", - "location": "query" - }, - "prettyPrint": { - "type": "boolean", - "description": "Returns response with indentations and line breaks.", - "default": "true", - "location": "query" - }, - "quotaUser": { - "type": "string", - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", - "location": "query" - }, - "userIp": { - "type": "string", - "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", - "location": "query" - } - }, - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/cloud-platform": { - "description": "View and manage your data across Google Cloud Platform services" - }, - "https://www.googleapis.com/auth/cloud-platform.read-only": { - "description": "View your data across Google Cloud Platform services" - }, - "https://www.googleapis.com/auth/ndev.clouddns.readonly": { - "description": "View your DNS records hosted by Google Cloud DNS" - }, - "https://www.googleapis.com/auth/ndev.clouddns.readwrite": { - "description": "View and manage your DNS records hosted by Google Cloud DNS" + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/cloud-platform": { + "description": "View and manage your data across Google Cloud Platform services" + }, + "https://www.googleapis.com/auth/cloud-platform.read-only": { + "description": "View your data across Google Cloud Platform services" + }, + "https://www.googleapis.com/auth/ndev.clouddns.readonly": { + "description": "View your DNS records hosted by Google Cloud DNS" + }, + "https://www.googleapis.com/auth/ndev.clouddns.readwrite": { + "description": "View and manage your DNS records hosted by Google Cloud DNS" + } + } } - } - } - }, - "schemas": { - "Change": { - "id": "Change", - "type": "object", - "description": "An atomic update to a collection of ResourceRecordSets.", - "properties": { - "additions": { - "type": "array", - "description": "Which ResourceRecordSets to add?", - "items": { - "$ref": "ResourceRecordSet" - } - }, - "deletions": { - "type": "array", - "description": "Which ResourceRecordSets to remove? Must match existing data exactly.", - "items": { - "$ref": "ResourceRecordSet" - } - }, - "id": { - "type": "string", - "description": "Unique identifier for the resource; defined by the server (output only)." - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dns#change\".", - "default": "dns#change" - }, - "startTime": { - "type": "string", - "description": "The time that this operation was started by the server (output only). This is in RFC3339 text format." - }, - "status": { - "type": "string", - "description": "Status of the operation (output only).", - "enum": [ - "done", - "pending" - ], - "enumDescriptions": [ - "", - "" - ] - } - } }, - "ChangesListResponse": { - "id": "ChangesListResponse", - "type": "object", - "description": "The response to a request to enumerate Changes to a ResourceRecordSets collection.", - "properties": { + "basePath": "/dns/v1/projects/", + "baseUrl": "https://www.googleapis.com/dns/v1/projects/", + "batchPath": "batch/dns/v1", + "description": "Configures and serves authoritative DNS records.", + "discoveryVersion": "v1", + "documentationLink": "https://developers.google.com/cloud-dns", + "etag": "\"-iA1DTNe4s-I6JZXPt1t1Ypy8IU/gSzgHqX4Zwypnde2YApimTf_qmE\"", + "icons": { + "x16": "https://www.gstatic.com/images/branding/product/1x/googleg_16dp.png", + "x32": "https://www.gstatic.com/images/branding/product/1x/googleg_32dp.png" + }, + "id": "dns:v1", + "kind": "discovery#restDescription", + "name": "dns", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "alt": { + "default": "json", + "description": "Data format for the response.", + "enum": [ + "json" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json" + ], + "location": "query", + "type": "string" + }, + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "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.", + "location": "query", + "type": "string" + }, + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", + "location": "query", + "type": "string" + }, + "userIp": { + "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", + "location": "query", + "type": "string" + } + }, + "protocol": "rest", + "resources": { "changes": { - "type": "array", - "description": "The requested changes.", - "items": { - "$ref": "Change" - } + "methods": { + "create": { + "description": "Atomically update the ResourceRecordSet collection.", + "httpMethod": "POST", + "id": "dns.changes.create", + "parameterOrder": [ + "project", + "managedZone" + ], + "parameters": { + "clientOperationId": { + "description": "For mutating operation requests only. An optional identifier specified by the client. Must be unique for operation resources in the Operations collection.", + "location": "query", + "type": "string" + }, + "managedZone": { + "description": "Identifies the managed zone addressed by this request. Can be the managed zone name or id.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Identifies the project addressed by this request.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/managedZones/{managedZone}/changes", + "request": { + "$ref": "Change" + }, + "response": { + "$ref": "Change" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/ndev.clouddns.readwrite" + ] + }, + "get": { + "description": "Fetch the representation of an existing Change.", + "httpMethod": "GET", + "id": "dns.changes.get", + "parameterOrder": [ + "project", + "managedZone", + "changeId" + ], + "parameters": { + "changeId": { + "description": "The identifier of the requested change, from a previous ResourceRecordSetsChangeResponse.", + "location": "path", + "required": true, + "type": "string" + }, + "clientOperationId": { + "description": "For mutating operation requests only. An optional identifier specified by the client. Must be unique for operation resources in the Operations collection.", + "location": "query", + "type": "string" + }, + "managedZone": { + "description": "Identifies the managed zone addressed by this request. Can be the managed zone name or id.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Identifies the project addressed by this request.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/managedZones/{managedZone}/changes/{changeId}", + "response": { + "$ref": "Change" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/ndev.clouddns.readonly", + "https://www.googleapis.com/auth/ndev.clouddns.readwrite" + ] + }, + "list": { + "description": "Enumerate Changes to a ResourceRecordSet collection.", + "httpMethod": "GET", + "id": "dns.changes.list", + "parameterOrder": [ + "project", + "managedZone" + ], + "parameters": { + "managedZone": { + "description": "Identifies the managed zone addressed by this request. Can be the managed zone name or id.", + "location": "path", + "required": true, + "type": "string" + }, + "maxResults": { + "description": "Optional. Maximum number of results to be returned. If unspecified, the server will decide how many results to return.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional. A tag returned by a previous list request that was truncated. Use this parameter to continue a previous list request.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Identifies the project addressed by this request.", + "location": "path", + "required": true, + "type": "string" + }, + "sortBy": { + "default": "changeSequence", + "description": "Sorting criterion. The only supported value is change sequence.", + "enum": [ + "changeSequence" + ], + "enumDescriptions": [ + "" + ], + "location": "query", + "type": "string" + }, + "sortOrder": { + "description": "Sorting order direction: 'ascending' or 'descending'.", + "location": "query", + "type": "string" + } + }, + "path": "{project}/managedZones/{managedZone}/changes", + "response": { + "$ref": "ChangesListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/ndev.clouddns.readonly", + "https://www.googleapis.com/auth/ndev.clouddns.readwrite" + ] + } + } }, - "kind": { - "type": "string", - "description": "Type of resource.", - "default": "dns#changesListResponse" + "dnsKeys": { + "methods": { + "get": { + "description": "Fetch the representation of an existing DnsKey.", + "httpMethod": "GET", + "id": "dns.dnsKeys.get", + "parameterOrder": [ + "project", + "managedZone", + "dnsKeyId" + ], + "parameters": { + "clientOperationId": { + "description": "For mutating operation requests only. An optional identifier specified by the client. Must be unique for operation resources in the Operations collection.", + "location": "query", + "type": "string" + }, + "digestType": { + "description": "An optional comma-separated list of digest types to compute and display for key signing keys. If omitted, the recommended digest type will be computed and displayed.", + "location": "query", + "type": "string" + }, + "dnsKeyId": { + "description": "The identifier of the requested DnsKey.", + "location": "path", + "required": true, + "type": "string" + }, + "managedZone": { + "description": "Identifies the managed zone addressed by this request. Can be the managed zone name or id.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Identifies the project addressed by this request.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/managedZones/{managedZone}/dnsKeys/{dnsKeyId}", + "response": { + "$ref": "DnsKey" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/ndev.clouddns.readonly", + "https://www.googleapis.com/auth/ndev.clouddns.readwrite" + ] + }, + "list": { + "description": "Enumerate DnsKeys to a ResourceRecordSet collection.", + "httpMethod": "GET", + "id": "dns.dnsKeys.list", + "parameterOrder": [ + "project", + "managedZone" + ], + "parameters": { + "digestType": { + "description": "An optional comma-separated list of digest types to compute and display for key signing keys. If omitted, the recommended digest type will be computed and displayed.", + "location": "query", + "type": "string" + }, + "managedZone": { + "description": "Identifies the managed zone addressed by this request. Can be the managed zone name or id.", + "location": "path", + "required": true, + "type": "string" + }, + "maxResults": { + "description": "Optional. Maximum number of results to be returned. If unspecified, the server will decide how many results to return.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional. A tag returned by a previous list request that was truncated. Use this parameter to continue a previous list request.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Identifies the project addressed by this request.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/managedZones/{managedZone}/dnsKeys", + "response": { + "$ref": "DnsKeysListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/ndev.clouddns.readonly", + "https://www.googleapis.com/auth/ndev.clouddns.readwrite" + ] + } + } }, - "nextPageToken": { - "type": "string", - "description": "The presence of this field indicates that there exist more results following your last page of results in pagination order. To fetch them, make another list request using this value as your pagination token.\n\nIn this way you can retrieve the complete contents of even very large collections one page at a time. However, if the contents of the collection change between the first and last paginated list request, the set of all elements returned will be an inconsistent view of the collection. There is no way to retrieve a \"snapshot\" of collections larger than the maximum page size." - } - } - }, - "ManagedZone": { - "id": "ManagedZone", - "type": "object", - "description": "A zone is a subtree of the DNS namespace under one administrative responsibility. A ManagedZone is a resource that represents a DNS zone hosted by the Cloud DNS service.", - "properties": { - "creationTime": { - "type": "string", - "description": "The time that this resource was created on the server. This is in RFC3339 text format. Output only." - }, - "description": { - "type": "string", - "description": "A mutable string of at most 1024 characters associated with this resource for the user's convenience. Has no effect on the managed zone's function." - }, - "dnsName": { - "type": "string", - "description": "The DNS name of this managed zone, for instance \"example.com.\"." - }, - "id": { - "type": "string", - "description": "Unique identifier for the resource; defined by the server (output only)", - "format": "uint64" - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dns#managedZone\".", - "default": "dns#managedZone" - }, - "name": { - "type": "string", - "description": "User assigned name for this resource. Must be unique within the project. The name must be 1-63 characters long, must begin with a letter, end with a letter or digit, and only contain lowercase letters, digits or dashes." - }, - "nameServerSet": { - "type": "string", - "description": "Optionally specifies the NameServerSet for this ManagedZone. A NameServerSet is a set of DNS name servers that all host the same ManagedZones. Most users will leave this field unset." - }, - "nameServers": { - "type": "array", - "description": "Delegate your managed_zone to these virtual name servers; defined by the server (output only)", - "items": { - "type": "string" - } - } - } - }, - "ManagedZonesListResponse": { - "id": "ManagedZonesListResponse", - "type": "object", - "properties": { - "kind": { - "type": "string", - "description": "Type of resource.", - "default": "dns#managedZonesListResponse" + "managedZoneOperations": { + "methods": { + "get": { + "description": "Fetch the representation of an existing Operation.", + "httpMethod": "GET", + "id": "dns.managedZoneOperations.get", + "parameterOrder": [ + "project", + "managedZone", + "operation" + ], + "parameters": { + "clientOperationId": { + "description": "For mutating operation requests only. An optional identifier specified by the client. Must be unique for operation resources in the Operations collection.", + "location": "query", + "type": "string" + }, + "managedZone": { + "description": "Identifies the managed zone addressed by this request.", + "location": "path", + "required": true, + "type": "string" + }, + "operation": { + "description": "Identifies the operation addressed by this request.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Identifies the project addressed by this request.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/managedZones/{managedZone}/operations/{operation}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/ndev.clouddns.readonly", + "https://www.googleapis.com/auth/ndev.clouddns.readwrite" + ] + }, + "list": { + "description": "Enumerate Operations for the given ManagedZone.", + "httpMethod": "GET", + "id": "dns.managedZoneOperations.list", + "parameterOrder": [ + "project", + "managedZone" + ], + "parameters": { + "managedZone": { + "description": "Identifies the managed zone addressed by this request.", + "location": "path", + "required": true, + "type": "string" + }, + "maxResults": { + "description": "Optional. Maximum number of results to be returned. If unspecified, the server will decide how many results to return.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional. A tag returned by a previous list request that was truncated. Use this parameter to continue a previous list request.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Identifies the project addressed by this request.", + "location": "path", + "required": true, + "type": "string" + }, + "sortBy": { + "default": "startTime", + "description": "Sorting criterion. The only supported values are START_TIME and ID.", + "enum": [ + "id", + "startTime" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + } + }, + "path": "{project}/managedZones/{managedZone}/operations", + "response": { + "$ref": "ManagedZoneOperationsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/ndev.clouddns.readonly", + "https://www.googleapis.com/auth/ndev.clouddns.readwrite" + ] + } + } }, "managedZones": { - "type": "array", - "description": "The managed zone resources.", - "items": { - "$ref": "ManagedZone" - } + "methods": { + "create": { + "description": "Create a new ManagedZone.", + "httpMethod": "POST", + "id": "dns.managedZones.create", + "parameterOrder": [ + "project" + ], + "parameters": { + "clientOperationId": { + "description": "For mutating operation requests only. An optional identifier specified by the client. Must be unique for operation resources in the Operations collection.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Identifies the project addressed by this request.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/managedZones", + "request": { + "$ref": "ManagedZone" + }, + "response": { + "$ref": "ManagedZone" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/ndev.clouddns.readwrite" + ] + }, + "delete": { + "description": "Delete a previously created ManagedZone.", + "httpMethod": "DELETE", + "id": "dns.managedZones.delete", + "parameterOrder": [ + "project", + "managedZone" + ], + "parameters": { + "clientOperationId": { + "description": "For mutating operation requests only. An optional identifier specified by the client. Must be unique for operation resources in the Operations collection.", + "location": "query", + "type": "string" + }, + "managedZone": { + "description": "Identifies the managed zone addressed by this request. Can be the managed zone name or id.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Identifies the project addressed by this request.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/managedZones/{managedZone}", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/ndev.clouddns.readwrite" + ] + }, + "get": { + "description": "Fetch the representation of an existing ManagedZone.", + "httpMethod": "GET", + "id": "dns.managedZones.get", + "parameterOrder": [ + "project", + "managedZone" + ], + "parameters": { + "clientOperationId": { + "description": "For mutating operation requests only. An optional identifier specified by the client. Must be unique for operation resources in the Operations collection.", + "location": "query", + "type": "string" + }, + "managedZone": { + "description": "Identifies the managed zone addressed by this request. Can be the managed zone name or id.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Identifies the project addressed by this request.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/managedZones/{managedZone}", + "response": { + "$ref": "ManagedZone" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/ndev.clouddns.readonly", + "https://www.googleapis.com/auth/ndev.clouddns.readwrite" + ] + }, + "list": { + "description": "Enumerate ManagedZones that have been created but not yet deleted.", + "httpMethod": "GET", + "id": "dns.managedZones.list", + "parameterOrder": [ + "project" + ], + "parameters": { + "dnsName": { + "description": "Restricts the list to return only zones with this domain name.", + "location": "query", + "type": "string" + }, + "maxResults": { + "description": "Optional. Maximum number of results to be returned. If unspecified, the server will decide how many results to return.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional. A tag returned by a previous list request that was truncated. Use this parameter to continue a previous list request.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Identifies the project addressed by this request.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/managedZones", + "response": { + "$ref": "ManagedZonesListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/ndev.clouddns.readonly", + "https://www.googleapis.com/auth/ndev.clouddns.readwrite" + ] + }, + "patch": { + "description": "Update an existing ManagedZone. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "dns.managedZones.patch", + "parameterOrder": [ + "project", + "managedZone" + ], + "parameters": { + "clientOperationId": { + "description": "For mutating operation requests only. An optional identifier specified by the client. Must be unique for operation resources in the Operations collection.", + "location": "query", + "type": "string" + }, + "managedZone": { + "description": "Identifies the managed zone addressed by this request. Can be the managed zone name or id.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Identifies the project addressed by this request.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/managedZones/{managedZone}", + "request": { + "$ref": "ManagedZone" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/ndev.clouddns.readwrite" + ] + }, + "update": { + "description": "Update an existing ManagedZone.", + "httpMethod": "PUT", + "id": "dns.managedZones.update", + "parameterOrder": [ + "project", + "managedZone" + ], + "parameters": { + "clientOperationId": { + "description": "For mutating operation requests only. An optional identifier specified by the client. Must be unique for operation resources in the Operations collection.", + "location": "query", + "type": "string" + }, + "managedZone": { + "description": "Identifies the managed zone addressed by this request. Can be the managed zone name or id.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Identifies the project addressed by this request.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/managedZones/{managedZone}", + "request": { + "$ref": "ManagedZone" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/ndev.clouddns.readwrite" + ] + } + } }, - "nextPageToken": { - "type": "string", - "description": "The presence of this field indicates that there exist more results following your last page of results in pagination order. To fetch them, make another list request using this value as your page token.\n\nIn this way you can retrieve the complete contents of even very large collections one page at a time. However, if the contents of the collection change between the first and last paginated list request, the set of all elements returned will be an inconsistent view of the collection. There is no way to retrieve a consistent snapshot of a collection larger than the maximum page size." + "projects": { + "methods": { + "get": { + "description": "Fetch the representation of an existing Project.", + "httpMethod": "GET", + "id": "dns.projects.get", + "parameterOrder": [ + "project" + ], + "parameters": { + "clientOperationId": { + "description": "For mutating operation requests only. An optional identifier specified by the client. Must be unique for operation resources in the Operations collection.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Identifies the project addressed by this request.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}", + "response": { + "$ref": "Project" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/ndev.clouddns.readonly", + "https://www.googleapis.com/auth/ndev.clouddns.readwrite" + ] + } + } + }, + "resourceRecordSets": { + "methods": { + "list": { + "description": "Enumerate ResourceRecordSets that have been created but not yet deleted.", + "httpMethod": "GET", + "id": "dns.resourceRecordSets.list", + "parameterOrder": [ + "project", + "managedZone" + ], + "parameters": { + "managedZone": { + "description": "Identifies the managed zone addressed by this request. Can be the managed zone name or id.", + "location": "path", + "required": true, + "type": "string" + }, + "maxResults": { + "description": "Optional. Maximum number of results to be returned. If unspecified, the server will decide how many results to return.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "name": { + "description": "Restricts the list to return only records with this fully qualified domain name.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Optional. A tag returned by a previous list request that was truncated. Use this parameter to continue a previous list request.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Identifies the project addressed by this request.", + "location": "path", + "required": true, + "type": "string" + }, + "type": { + "description": "Restricts the list to return only records of this type. If present, the \"name\" parameter must also be present.", + "location": "query", + "type": "string" + } + }, + "path": "{project}/managedZones/{managedZone}/rrsets", + "response": { + "$ref": "ResourceRecordSetsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/ndev.clouddns.readonly", + "https://www.googleapis.com/auth/ndev.clouddns.readwrite" + ] + } + } } - } }, - "Project": { - "id": "Project", - "type": "object", - "description": "A project resource. The project is a top level container for resources including Cloud DNS ManagedZones. Projects can be created only in the APIs console.", - "properties": { - "id": { - "type": "string", - "description": "User assigned unique identifier for the resource (output only)." + "revision": "20180314", + "rootUrl": "https://www.googleapis.com/", + "schemas": { + "Change": { + "description": "An atomic update to a collection of ResourceRecordSets.", + "id": "Change", + "properties": { + "additions": { + "description": "Which ResourceRecordSets to add?", + "items": { + "$ref": "ResourceRecordSet" + }, + "type": "array" + }, + "deletions": { + "description": "Which ResourceRecordSets to remove? Must match existing data exactly.", + "items": { + "$ref": "ResourceRecordSet" + }, + "type": "array" + }, + "id": { + "description": "Unique identifier for the resource; defined by the server (output only).", + "type": "string" + }, + "isServing": { + "description": "If the DNS queries for the zone will be served.", + "type": "boolean" + }, + "kind": { + "default": "dns#change", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dns#change\".", + "type": "string" + }, + "startTime": { + "description": "The time that this operation was started by the server (output only). This is in RFC3339 text format.", + "type": "string" + }, + "status": { + "description": "Status of the operation (output only).", + "enum": [ + "done", + "pending" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + } + }, + "type": "object" }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dns#project\".", - "default": "dns#project" + "ChangesListResponse": { + "description": "The response to a request to enumerate Changes to a ResourceRecordSets collection.", + "id": "ChangesListResponse", + "properties": { + "changes": { + "description": "The requested changes.", + "items": { + "$ref": "Change" + }, + "type": "array" + }, + "header": { + "$ref": "ResponseHeader" + }, + "kind": { + "default": "dns#changesListResponse", + "description": "Type of resource.", + "type": "string" + }, + "nextPageToken": { + "description": "The presence of this field indicates that there exist more results following your last page of results in pagination order. To fetch them, make another list request using this value as your pagination token.\n\nIn this way you can retrieve the complete contents of even very large collections one page at a time. However, if the contents of the collection change between the first and last paginated list request, the set of all elements returned will be an inconsistent view of the collection. There is no way to retrieve a \"snapshot\" of collections larger than the maximum page size.", + "type": "string" + } + }, + "type": "object" }, - "number": { - "type": "string", - "description": "Unique numeric identifier for the resource; defined by the server (output only).", - "format": "uint64" + "DnsKey": { + "description": "A DNSSEC key pair.", + "id": "DnsKey", + "properties": { + "algorithm": { + "description": "String mnemonic specifying the DNSSEC algorithm of this key. Immutable after creation time.", + "enum": [ + "ecdsap256sha256", + "ecdsap384sha384", + "rsasha1", + "rsasha256", + "rsasha512" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "creationTime": { + "description": "The time that this resource was created in the control plane. This is in RFC3339 text format. Output only.", + "type": "string" + }, + "description": { + "description": "A mutable string of at most 1024 characters associated with this resource for the user's convenience. Has no effect on the resource's function.", + "type": "string" + }, + "digests": { + "description": "Cryptographic hashes of the DNSKEY resource record associated with this DnsKey. These digests are needed to construct a DS record that points at this DNS key. Output only.", + "items": { + "$ref": "DnsKeyDigest" + }, + "type": "array" + }, + "id": { + "description": "Unique identifier for the resource; defined by the server (output only).", + "type": "string" + }, + "isActive": { + "description": "Active keys will be used to sign subsequent changes to the ManagedZone. Inactive keys will still be present as DNSKEY Resource Records for the use of resolvers validating existing signatures.", + "type": "boolean" + }, + "keyLength": { + "description": "Length of the key in bits. Specified at creation time then immutable.", + "format": "uint32", + "type": "integer" + }, + "keyTag": { + "description": "The key tag is a non-cryptographic hash of the a DNSKEY resource record associated with this DnsKey. The key tag can be used to identify a DNSKEY more quickly (but it is not a unique identifier). In particular, the key tag is used in a parent zone's DS record to point at the DNSKEY in this child ManagedZone. The key tag is a number in the range [0, 65535] and the algorithm to calculate it is specified in RFC4034 Appendix B. Output only.", + "format": "int32", + "type": "integer" + }, + "kind": { + "default": "dns#dnsKey", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dns#dnsKey\".", + "type": "string" + }, + "publicKey": { + "description": "Base64 encoded public half of this key. Output only.", + "type": "string" + }, + "type": { + "description": "One of \"KEY_SIGNING\" or \"ZONE_SIGNING\". Keys of type KEY_SIGNING have the Secure Entry Point flag set and, when active, will be used to sign only resource record sets of type DNSKEY. Otherwise, the Secure Entry Point flag will be cleared and this key will be used to sign only resource record sets of other types. Immutable after creation time.", + "enum": [ + "keySigning", + "zoneSigning" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + } + }, + "type": "object" }, - "quota": { - "$ref": "Quota", - "description": "Quotas assigned to this project (output only)." + "DnsKeyDigest": { + "id": "DnsKeyDigest", + "properties": { + "digest": { + "description": "The base-16 encoded bytes of this digest. Suitable for use in a DS resource record.", + "type": "string" + }, + "type": { + "description": "Specifies the algorithm used to calculate this digest.", + "enum": [ + "sha1", + "sha256", + "sha384" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "DnsKeySpec": { + "description": "Parameters for DnsKey key generation. Used for generating initial keys for a new ManagedZone and as default when adding a new DnsKey.", + "id": "DnsKeySpec", + "properties": { + "algorithm": { + "description": "String mnemonic specifying the DNSSEC algorithm of this key.", + "enum": [ + "ecdsap256sha256", + "ecdsap384sha384", + "rsasha1", + "rsasha256", + "rsasha512" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "keyLength": { + "description": "Length of the keys in bits.", + "format": "uint32", + "type": "integer" + }, + "keyType": { + "description": "One of \"KEY_SIGNING\" or \"ZONE_SIGNING\". Keys of type KEY_SIGNING have the Secure Entry Point flag set and, when active, will be used to sign only resource record sets of type DNSKEY. Otherwise, the Secure Entry Point flag will be cleared and this key will be used to sign only resource record sets of other types.", + "enum": [ + "keySigning", + "zoneSigning" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "kind": { + "default": "dns#dnsKeySpec", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dns#dnsKeySpec\".", + "type": "string" + } + }, + "type": "object" + }, + "DnsKeysListResponse": { + "description": "The response to a request to enumerate DnsKeys in a ManagedZone.", + "id": "DnsKeysListResponse", + "properties": { + "dnsKeys": { + "description": "The requested resources.", + "items": { + "$ref": "DnsKey" + }, + "type": "array" + }, + "header": { + "$ref": "ResponseHeader" + }, + "kind": { + "default": "dns#dnsKeysListResponse", + "description": "Type of resource.", + "type": "string" + }, + "nextPageToken": { + "description": "The presence of this field indicates that there exist more results following your last page of results in pagination order. To fetch them, make another list request using this value as your pagination token.\n\nIn this way you can retrieve the complete contents of even very large collections one page at a time. However, if the contents of the collection change between the first and last paginated list request, the set of all elements returned will be an inconsistent view of the collection. There is no way to retrieve a \"snapshot\" of collections larger than the maximum page size.", + "type": "string" + } + }, + "type": "object" + }, + "ManagedZone": { + "description": "A zone is a subtree of the DNS namespace under one administrative responsibility. A ManagedZone is a resource that represents a DNS zone hosted by the Cloud DNS service.", + "id": "ManagedZone", + "properties": { + "creationTime": { + "description": "The time that this resource was created on the server. This is in RFC3339 text format. Output only.", + "type": "string" + }, + "description": { + "description": "A mutable string of at most 1024 characters associated with this resource for the user's convenience. Has no effect on the managed zone's function.", + "type": "string" + }, + "dnsName": { + "description": "The DNS name of this managed zone, for instance \"example.com.\".", + "type": "string" + }, + "dnssecConfig": { + "$ref": "ManagedZoneDnsSecConfig", + "description": "DNSSEC configuration." + }, + "id": { + "description": "Unique identifier for the resource; defined by the server (output only)", + "format": "uint64", + "type": "string" + }, + "kind": { + "default": "dns#managedZone", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dns#managedZone\".", + "type": "string" + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "User labels.", + "type": "object" + }, + "name": { + "description": "User assigned name for this resource. Must be unique within the project. The name must be 1-63 characters long, must begin with a letter, end with a letter or digit, and only contain lowercase letters, digits or dashes.", + "type": "string" + }, + "nameServerSet": { + "description": "Optionally specifies the NameServerSet for this ManagedZone. A NameServerSet is a set of DNS name servers that all host the same ManagedZones. Most users will leave this field unset.", + "type": "string" + }, + "nameServers": { + "description": "Delegate your managed_zone to these virtual name servers; defined by the server (output only)", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "ManagedZoneDnsSecConfig": { + "id": "ManagedZoneDnsSecConfig", + "properties": { + "defaultKeySpecs": { + "description": "Specifies parameters that will be used for generating initial DnsKeys for this ManagedZone. Output only while state is not OFF.", + "items": { + "$ref": "DnsKeySpec" + }, + "type": "array" + }, + "kind": { + "default": "dns#managedZoneDnsSecConfig", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dns#managedZoneDnsSecConfig\".", + "type": "string" + }, + "nonExistence": { + "description": "Specifies the mechanism used to provide authenticated denial-of-existence responses. Output only while state is not OFF.", + "enum": [ + "nsec", + "nsec3" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "state": { + "description": "Specifies whether DNSSEC is enabled, and what mode it is in.", + "enum": [ + "off", + "on", + "transfer" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "ManagedZoneOperationsListResponse": { + "id": "ManagedZoneOperationsListResponse", + "properties": { + "header": { + "$ref": "ResponseHeader" + }, + "kind": { + "default": "dns#managedZoneOperationsListResponse", + "description": "Type of resource.", + "type": "string" + }, + "nextPageToken": { + "description": "The presence of this field indicates that there exist more results following your last page of results in pagination order. To fetch them, make another list request using this value as your page token.\n\nIn this way you can retrieve the complete contents of even very large collections one page at a time. However, if the contents of the collection change between the first and last paginated list request, the set of all elements returned will be an inconsistent view of the collection. There is no way to retrieve a consistent snapshot of a collection larger than the maximum page size.", + "type": "string" + }, + "operations": { + "description": "The operation resources.", + "items": { + "$ref": "Operation" + }, + "type": "array" + } + }, + "type": "object" + }, + "ManagedZonesListResponse": { + "id": "ManagedZonesListResponse", + "properties": { + "header": { + "$ref": "ResponseHeader" + }, + "kind": { + "default": "dns#managedZonesListResponse", + "description": "Type of resource.", + "type": "string" + }, + "managedZones": { + "description": "The managed zone resources.", + "items": { + "$ref": "ManagedZone" + }, + "type": "array" + }, + "nextPageToken": { + "description": "The presence of this field indicates that there exist more results following your last page of results in pagination order. To fetch them, make another list request using this value as your page token.\n\nIn this way you can retrieve the complete contents of even very large collections one page at a time. However, if the contents of the collection change between the first and last paginated list request, the set of all elements returned will be an inconsistent view of the collection. There is no way to retrieve a consistent snapshot of a collection larger than the maximum page size.", + "type": "string" + } + }, + "type": "object" + }, + "Operation": { + "description": "An operation represents a successful mutation performed on a Cloud DNS resource. Operations provide: - An audit log of server resource mutations. - A way to recover/retry API calls in the case where the response is never received by the caller. Use the caller specified client_operation_id.", + "id": "Operation", + "properties": { + "dnsKeyContext": { + "$ref": "OperationDnsKeyContext", + "description": "Only populated if the operation targeted a DnsKey (output only)." + }, + "id": { + "description": "Unique identifier for the resource. This is the client_operation_id if the client specified it when the mutation was initiated, otherwise, it is generated by the server. The name must be 1-63 characters long and match the regular expression [-a-z0-9]? (output only)", + "type": "string" + }, + "kind": { + "default": "dns#operation", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dns#operation\".", + "type": "string" + }, + "startTime": { + "description": "The time that this operation was started by the server. This is in RFC3339 text format (output only).", + "type": "string" + }, + "status": { + "description": "Status of the operation. Can be one of the following: \"PENDING\" or \"DONE\" (output only).", + "enum": [ + "done", + "pending" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "type": { + "description": "Type of the operation. Operations include insert, update, and delete (output only).", + "type": "string" + }, + "user": { + "description": "User who requested the operation, for example: user@example.com. cloud-dns-system for operations automatically done by the system. (output only)", + "type": "string" + }, + "zoneContext": { + "$ref": "OperationManagedZoneContext", + "description": "Only populated if the operation targeted a ManagedZone (output only)." + } + }, + "type": "object" + }, + "OperationDnsKeyContext": { + "id": "OperationDnsKeyContext", + "properties": { + "newValue": { + "$ref": "DnsKey", + "description": "The post-operation DnsKey resource." + }, + "oldValue": { + "$ref": "DnsKey", + "description": "The pre-operation DnsKey resource." + } + }, + "type": "object" + }, + "OperationManagedZoneContext": { + "id": "OperationManagedZoneContext", + "properties": { + "newValue": { + "$ref": "ManagedZone", + "description": "The post-operation ManagedZone resource." + }, + "oldValue": { + "$ref": "ManagedZone", + "description": "The pre-operation ManagedZone resource." + } + }, + "type": "object" + }, + "Project": { + "description": "A project resource. The project is a top level container for resources including Cloud DNS ManagedZones. Projects can be created only in the APIs console.", + "id": "Project", + "properties": { + "id": { + "description": "User assigned unique identifier for the resource (output only).", + "type": "string" + }, + "kind": { + "default": "dns#project", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dns#project\".", + "type": "string" + }, + "number": { + "description": "Unique numeric identifier for the resource; defined by the server (output only).", + "format": "uint64", + "type": "string" + }, + "quota": { + "$ref": "Quota", + "description": "Quotas assigned to this project (output only)." + } + }, + "type": "object" + }, + "Quota": { + "description": "Limits associated with a Project.", + "id": "Quota", + "properties": { + "dnsKeysPerManagedZone": { + "description": "Maximum allowed number of DnsKeys per ManagedZone.", + "format": "int32", + "type": "integer" + }, + "kind": { + "default": "dns#quota", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dns#quota\".", + "type": "string" + }, + "managedZones": { + "description": "Maximum allowed number of managed zones in the project.", + "format": "int32", + "type": "integer" + }, + "resourceRecordsPerRrset": { + "description": "Maximum allowed number of ResourceRecords per ResourceRecordSet.", + "format": "int32", + "type": "integer" + }, + "rrsetAdditionsPerChange": { + "description": "Maximum allowed number of ResourceRecordSets to add per ChangesCreateRequest.", + "format": "int32", + "type": "integer" + }, + "rrsetDeletionsPerChange": { + "description": "Maximum allowed number of ResourceRecordSets to delete per ChangesCreateRequest.", + "format": "int32", + "type": "integer" + }, + "rrsetsPerManagedZone": { + "description": "Maximum allowed number of ResourceRecordSets per zone in the project.", + "format": "int32", + "type": "integer" + }, + "totalRrdataSizePerChange": { + "description": "Maximum allowed size for total rrdata in one ChangesCreateRequest in bytes.", + "format": "int32", + "type": "integer" + }, + "whitelistedKeySpecs": { + "description": "DNSSEC algorithm and key length types that can be used for DnsKeys.", + "items": { + "$ref": "DnsKeySpec" + }, + "type": "array" + } + }, + "type": "object" + }, + "ResourceRecordSet": { + "description": "A unit of data that will be returned by the DNS servers.", + "id": "ResourceRecordSet", + "properties": { + "kind": { + "default": "dns#resourceRecordSet", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dns#resourceRecordSet\".", + "type": "string" + }, + "name": { + "description": "For example, www.example.com.", + "type": "string" + }, + "rrdatas": { + "description": "As defined in RFC 1035 (section 5) and RFC 1034 (section 3.6.1).", + "items": { + "type": "string" + }, + "type": "array" + }, + "signatureRrdatas": { + "description": "As defined in RFC 4034 (section 3.2).", + "items": { + "type": "string" + }, + "type": "array" + }, + "ttl": { + "description": "Number of seconds that this ResourceRecordSet can be cached by resolvers.", + "format": "int32", + "type": "integer" + }, + "type": { + "description": "The identifier of a supported record type, for example, A, AAAA, MX, TXT, and so on.", + "type": "string" + } + }, + "type": "object" + }, + "ResourceRecordSetsListResponse": { + "id": "ResourceRecordSetsListResponse", + "properties": { + "header": { + "$ref": "ResponseHeader" + }, + "kind": { + "default": "dns#resourceRecordSetsListResponse", + "description": "Type of resource.", + "type": "string" + }, + "nextPageToken": { + "description": "The presence of this field indicates that there exist more results following your last page of results in pagination order. To fetch them, make another list request using this value as your pagination token.\n\nIn this way you can retrieve the complete contents of even very large collections one page at a time. However, if the contents of the collection change between the first and last paginated list request, the set of all elements returned will be an inconsistent view of the collection. There is no way to retrieve a consistent snapshot of a collection larger than the maximum page size.", + "type": "string" + }, + "rrsets": { + "description": "The resource record set resources.", + "items": { + "$ref": "ResourceRecordSet" + }, + "type": "array" + } + }, + "type": "object" + }, + "ResponseHeader": { + "description": "Elements common to every response.", + "id": "ResponseHeader", + "properties": { + "operationId": { + "description": "For mutating operation requests that completed successfully. This is the client_operation_id if the client specified it, otherwise it is generated by the server (output only).", + "type": "string" + } + }, + "type": "object" } - } }, - "Quota": { - "id": "Quota", - "type": "object", - "description": "Limits associated with a Project.", - "properties": { - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dns#quota\".", - "default": "dns#quota" - }, - "managedZones": { - "type": "integer", - "description": "Maximum allowed number of managed zones in the project.", - "format": "int32" - }, - "resourceRecordsPerRrset": { - "type": "integer", - "description": "Maximum allowed number of ResourceRecords per ResourceRecordSet.", - "format": "int32" - }, - "rrsetAdditionsPerChange": { - "type": "integer", - "description": "Maximum allowed number of ResourceRecordSets to add per ChangesCreateRequest.", - "format": "int32" - }, - "rrsetDeletionsPerChange": { - "type": "integer", - "description": "Maximum allowed number of ResourceRecordSets to delete per ChangesCreateRequest.", - "format": "int32" - }, - "rrsetsPerManagedZone": { - "type": "integer", - "description": "Maximum allowed number of ResourceRecordSets per zone in the project.", - "format": "int32" - }, - "totalRrdataSizePerChange": { - "type": "integer", - "description": "Maximum allowed size for total rrdata in one ChangesCreateRequest in bytes.", - "format": "int32" - } - } - }, - "ResourceRecordSet": { - "id": "ResourceRecordSet", - "type": "object", - "description": "A unit of data that will be returned by the DNS servers.", - "properties": { - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dns#resourceRecordSet\".", - "default": "dns#resourceRecordSet" - }, - "name": { - "type": "string", - "description": "For example, www.example.com." - }, - "rrdatas": { - "type": "array", - "description": "As defined in RFC 1035 (section 5) and RFC 1034 (section 3.6.1).", - "items": { - "type": "string" - } - }, - "ttl": { - "type": "integer", - "description": "Number of seconds that this ResourceRecordSet can be cached by resolvers.", - "format": "int32" - }, - "type": { - "type": "string", - "description": "The identifier of a supported record type, for example, A, AAAA, MX, TXT, and so on." - } - } - }, - "ResourceRecordSetsListResponse": { - "id": "ResourceRecordSetsListResponse", - "type": "object", - "properties": { - "kind": { - "type": "string", - "description": "Type of resource.", - "default": "dns#resourceRecordSetsListResponse" - }, - "nextPageToken": { - "type": "string", - "description": "The presence of this field indicates that there exist more results following your last page of results in pagination order. To fetch them, make another list request using this value as your pagination token.\n\nIn this way you can retrieve the complete contents of even very large collections one page at a time. However, if the contents of the collection change between the first and last paginated list request, the set of all elements returned will be an inconsistent view of the collection. There is no way to retrieve a consistent snapshot of a collection larger than the maximum page size." - }, - "rrsets": { - "type": "array", - "description": "The resource record set resources.", - "items": { - "$ref": "ResourceRecordSet" - } - } - } - } - }, - "resources": { - "changes": { - "methods": { - "create": { - "id": "dns.changes.create", - "path": "{project}/managedZones/{managedZone}/changes", - "httpMethod": "POST", - "description": "Atomically update the ResourceRecordSet collection.", - "parameters": { - "managedZone": { - "type": "string", - "description": "Identifies the managed zone addressed by this request. Can be the managed zone name or id.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Identifies the project addressed by this request.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "managedZone" - ], - "request": { - "$ref": "Change" - }, - "response": { - "$ref": "Change" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/ndev.clouddns.readwrite" - ] - }, - "get": { - "id": "dns.changes.get", - "path": "{project}/managedZones/{managedZone}/changes/{changeId}", - "httpMethod": "GET", - "description": "Fetch the representation of an existing Change.", - "parameters": { - "changeId": { - "type": "string", - "description": "The identifier of the requested change, from a previous ResourceRecordSetsChangeResponse.", - "required": true, - "location": "path" - }, - "managedZone": { - "type": "string", - "description": "Identifies the managed zone addressed by this request. Can be the managed zone name or id.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Identifies the project addressed by this request.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "managedZone", - "changeId" - ], - "response": { - "$ref": "Change" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/ndev.clouddns.readonly", - "https://www.googleapis.com/auth/ndev.clouddns.readwrite" - ] - }, - "list": { - "id": "dns.changes.list", - "path": "{project}/managedZones/{managedZone}/changes", - "httpMethod": "GET", - "description": "Enumerate Changes to a ResourceRecordSet collection.", - "parameters": { - "managedZone": { - "type": "string", - "description": "Identifies the managed zone addressed by this request. Can be the managed zone name or id.", - "required": true, - "location": "path" - }, - "maxResults": { - "type": "integer", - "description": "Optional. Maximum number of results to be returned. If unspecified, the server will decide how many results to return.", - "format": "int32", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Optional. A tag returned by a previous list request that was truncated. Use this parameter to continue a previous list request.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Identifies the project addressed by this request.", - "required": true, - "location": "path" - }, - "sortBy": { - "type": "string", - "description": "Sorting criterion. The only supported value is change sequence.", - "default": "changeSequence", - "enum": [ - "changeSequence" - ], - "enumDescriptions": [ - "" - ], - "location": "query" - }, - "sortOrder": { - "type": "string", - "description": "Sorting order direction: 'ascending' or 'descending'.", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "managedZone" - ], - "response": { - "$ref": "ChangesListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/ndev.clouddns.readonly", - "https://www.googleapis.com/auth/ndev.clouddns.readwrite" - ] - } - } - }, - "managedZones": { - "methods": { - "create": { - "id": "dns.managedZones.create", - "path": "{project}/managedZones", - "httpMethod": "POST", - "description": "Create a new ManagedZone.", - "parameters": { - "project": { - "type": "string", - "description": "Identifies the project addressed by this request.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "request": { - "$ref": "ManagedZone" - }, - "response": { - "$ref": "ManagedZone" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/ndev.clouddns.readwrite" - ] - }, - "delete": { - "id": "dns.managedZones.delete", - "path": "{project}/managedZones/{managedZone}", - "httpMethod": "DELETE", - "description": "Delete a previously created ManagedZone.", - "parameters": { - "managedZone": { - "type": "string", - "description": "Identifies the managed zone addressed by this request. Can be the managed zone name or id.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Identifies the project addressed by this request.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "managedZone" - ], - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/ndev.clouddns.readwrite" - ] - }, - "get": { - "id": "dns.managedZones.get", - "path": "{project}/managedZones/{managedZone}", - "httpMethod": "GET", - "description": "Fetch the representation of an existing ManagedZone.", - "parameters": { - "managedZone": { - "type": "string", - "description": "Identifies the managed zone addressed by this request. Can be the managed zone name or id.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Identifies the project addressed by this request.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "managedZone" - ], - "response": { - "$ref": "ManagedZone" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/ndev.clouddns.readonly", - "https://www.googleapis.com/auth/ndev.clouddns.readwrite" - ] - }, - "list": { - "id": "dns.managedZones.list", - "path": "{project}/managedZones", - "httpMethod": "GET", - "description": "Enumerate ManagedZones that have been created but not yet deleted.", - "parameters": { - "dnsName": { - "type": "string", - "description": "Restricts the list to return only zones with this domain name.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "Optional. Maximum number of results to be returned. If unspecified, the server will decide how many results to return.", - "format": "int32", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Optional. A tag returned by a previous list request that was truncated. Use this parameter to continue a previous list request.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Identifies the project addressed by this request.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "ManagedZonesListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/ndev.clouddns.readonly", - "https://www.googleapis.com/auth/ndev.clouddns.readwrite" - ] - } - } - }, - "projects": { - "methods": { - "get": { - "id": "dns.projects.get", - "path": "{project}", - "httpMethod": "GET", - "description": "Fetch the representation of an existing Project.", - "parameters": { - "project": { - "type": "string", - "description": "Identifies the project addressed by this request.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "Project" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/ndev.clouddns.readonly", - "https://www.googleapis.com/auth/ndev.clouddns.readwrite" - ] - } - } - }, - "resourceRecordSets": { - "methods": { - "list": { - "id": "dns.resourceRecordSets.list", - "path": "{project}/managedZones/{managedZone}/rrsets", - "httpMethod": "GET", - "description": "Enumerate ResourceRecordSets that have been created but not yet deleted.", - "parameters": { - "managedZone": { - "type": "string", - "description": "Identifies the managed zone addressed by this request. Can be the managed zone name or id.", - "required": true, - "location": "path" - }, - "maxResults": { - "type": "integer", - "description": "Optional. Maximum number of results to be returned. If unspecified, the server will decide how many results to return.", - "format": "int32", - "location": "query" - }, - "name": { - "type": "string", - "description": "Restricts the list to return only records with this fully qualified domain name.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Optional. A tag returned by a previous list request that was truncated. Use this parameter to continue a previous list request.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Identifies the project addressed by this request.", - "required": true, - "location": "path" - }, - "type": { - "type": "string", - "description": "Restricts the list to return only records of this type. If present, the \"name\" parameter must also be present.", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "managedZone" - ], - "response": { - "$ref": "ResourceRecordSetsListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/ndev.clouddns.readonly", - "https://www.googleapis.com/auth/ndev.clouddns.readwrite" - ] - } - } - } - } -} + "servicePath": "dns/v1/projects/", + "title": "Google Cloud DNS API", + "version": "v1" +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/dns/v1/dns-gen.go b/vendor/google.golang.org/api/dns/v1/dns-gen.go index 491f8d91a..559f66983 100644 --- a/vendor/google.golang.org/api/dns/v1/dns-gen.go +++ b/vendor/google.golang.org/api/dns/v1/dns-gen.go @@ -66,6 +66,8 @@ func New(client *http.Client) (*Service, error) { } s := &Service{client: client, BasePath: basePath} s.Changes = NewChangesService(s) + s.DnsKeys = NewDnsKeysService(s) + s.ManagedZoneOperations = NewManagedZoneOperationsService(s) s.ManagedZones = NewManagedZonesService(s) s.Projects = NewProjectsService(s) s.ResourceRecordSets = NewResourceRecordSetsService(s) @@ -79,6 +81,10 @@ type Service struct { Changes *ChangesService + DnsKeys *DnsKeysService + + ManagedZoneOperations *ManagedZoneOperationsService + ManagedZones *ManagedZonesService Projects *ProjectsService @@ -102,6 +108,24 @@ type ChangesService struct { s *Service } +func NewDnsKeysService(s *Service) *DnsKeysService { + rs := &DnsKeysService{s: s} + return rs +} + +type DnsKeysService struct { + s *Service +} + +func NewManagedZoneOperationsService(s *Service) *ManagedZoneOperationsService { + rs := &ManagedZoneOperationsService{s: s} + return rs +} + +type ManagedZoneOperationsService struct { + s *Service +} + func NewManagedZonesService(s *Service) *ManagedZonesService { rs := &ManagedZonesService{s: s} return rs @@ -142,6 +166,9 @@ type Change struct { // only). Id string `json:"id,omitempty"` + // IsServing: If the DNS queries for the zone will be served. + IsServing bool `json:"isServing,omitempty"` + // Kind: Identifies what kind of resource this is. Value: the fixed // string "dns#change". Kind string `json:"kind,omitempty"` @@ -190,6 +217,8 @@ type ChangesListResponse struct { // Changes: The requested changes. Changes []*Change `json:"changes,omitempty"` + Header *ResponseHeader `json:"header,omitempty"` + // Kind: Type of resource. Kind string `json:"kind,omitempty"` @@ -233,6 +262,244 @@ func (s *ChangesListResponse) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// DnsKey: A DNSSEC key pair. +type DnsKey struct { + // Algorithm: String mnemonic specifying the DNSSEC algorithm of this + // key. Immutable after creation time. + // + // Possible values: + // "ecdsap256sha256" + // "ecdsap384sha384" + // "rsasha1" + // "rsasha256" + // "rsasha512" + Algorithm string `json:"algorithm,omitempty"` + + // CreationTime: The time that this resource was created in the control + // plane. This is in RFC3339 text format. Output only. + CreationTime string `json:"creationTime,omitempty"` + + // Description: A mutable string of at most 1024 characters associated + // with this resource for the user's convenience. Has no effect on the + // resource's function. + Description string `json:"description,omitempty"` + + // Digests: Cryptographic hashes of the DNSKEY resource record + // associated with this DnsKey. These digests are needed to construct a + // DS record that points at this DNS key. Output only. + Digests []*DnsKeyDigest `json:"digests,omitempty"` + + // Id: Unique identifier for the resource; defined by the server (output + // only). + Id string `json:"id,omitempty"` + + // IsActive: Active keys will be used to sign subsequent changes to the + // ManagedZone. Inactive keys will still be present as DNSKEY Resource + // Records for the use of resolvers validating existing signatures. + IsActive bool `json:"isActive,omitempty"` + + // KeyLength: Length of the key in bits. Specified at creation time then + // immutable. + KeyLength int64 `json:"keyLength,omitempty"` + + // KeyTag: The key tag is a non-cryptographic hash of the a DNSKEY + // resource record associated with this DnsKey. The key tag can be used + // to identify a DNSKEY more quickly (but it is not a unique + // identifier). In particular, the key tag is used in a parent zone's DS + // record to point at the DNSKEY in this child ManagedZone. The key tag + // is a number in the range [0, 65535] and the algorithm to calculate it + // is specified in RFC4034 Appendix B. Output only. + KeyTag int64 `json:"keyTag,omitempty"` + + // Kind: Identifies what kind of resource this is. Value: the fixed + // string "dns#dnsKey". + Kind string `json:"kind,omitempty"` + + // PublicKey: Base64 encoded public half of this key. Output only. + PublicKey string `json:"publicKey,omitempty"` + + // Type: One of "KEY_SIGNING" or "ZONE_SIGNING". Keys of type + // KEY_SIGNING have the Secure Entry Point flag set and, when active, + // will be used to sign only resource record sets of type DNSKEY. + // Otherwise, the Secure Entry Point flag will be cleared and this key + // will be used to sign only resource record sets of other types. + // Immutable after creation time. + // + // Possible values: + // "keySigning" + // "zoneSigning" + Type string `json:"type,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "Algorithm") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Algorithm") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *DnsKey) MarshalJSON() ([]byte, error) { + type NoMethod DnsKey + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +type DnsKeyDigest struct { + // Digest: The base-16 encoded bytes of this digest. Suitable for use in + // a DS resource record. + Digest string `json:"digest,omitempty"` + + // Type: Specifies the algorithm used to calculate this digest. + // + // Possible values: + // "sha1" + // "sha256" + // "sha384" + Type string `json:"type,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Digest") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Digest") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *DnsKeyDigest) MarshalJSON() ([]byte, error) { + type NoMethod DnsKeyDigest + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// DnsKeySpec: Parameters for DnsKey key generation. Used for generating +// initial keys for a new ManagedZone and as default when adding a new +// DnsKey. +type DnsKeySpec struct { + // Algorithm: String mnemonic specifying the DNSSEC algorithm of this + // key. + // + // Possible values: + // "ecdsap256sha256" + // "ecdsap384sha384" + // "rsasha1" + // "rsasha256" + // "rsasha512" + Algorithm string `json:"algorithm,omitempty"` + + // KeyLength: Length of the keys in bits. + KeyLength int64 `json:"keyLength,omitempty"` + + // KeyType: One of "KEY_SIGNING" or "ZONE_SIGNING". Keys of type + // KEY_SIGNING have the Secure Entry Point flag set and, when active, + // will be used to sign only resource record sets of type DNSKEY. + // Otherwise, the Secure Entry Point flag will be cleared and this key + // will be used to sign only resource record sets of other types. + // + // Possible values: + // "keySigning" + // "zoneSigning" + KeyType string `json:"keyType,omitempty"` + + // Kind: Identifies what kind of resource this is. Value: the fixed + // string "dns#dnsKeySpec". + Kind string `json:"kind,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Algorithm") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Algorithm") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *DnsKeySpec) MarshalJSON() ([]byte, error) { + type NoMethod DnsKeySpec + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// DnsKeysListResponse: The response to a request to enumerate DnsKeys +// in a ManagedZone. +type DnsKeysListResponse struct { + // DnsKeys: The requested resources. + DnsKeys []*DnsKey `json:"dnsKeys,omitempty"` + + Header *ResponseHeader `json:"header,omitempty"` + + // Kind: Type of resource. + Kind string `json:"kind,omitempty"` + + // NextPageToken: The presence of this field indicates that there exist + // more results following your last page of results in pagination order. + // To fetch them, make another list request using this value as your + // pagination token. + // + // In this way you can retrieve the complete contents of even very large + // collections one page at a time. However, if the contents of the + // collection change between the first and last paginated list request, + // the set of all elements returned will be an inconsistent view of the + // collection. There is no way to retrieve a "snapshot" of collections + // larger than the maximum page size. + NextPageToken string `json:"nextPageToken,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "DnsKeys") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "DnsKeys") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *DnsKeysListResponse) MarshalJSON() ([]byte, error) { + type NoMethod DnsKeysListResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // ManagedZone: A zone is a subtree of the DNS namespace under one // administrative responsibility. A ManagedZone is a resource that // represents a DNS zone hosted by the Cloud DNS service. @@ -250,6 +517,9 @@ type ManagedZone struct { // "example.com.". DnsName string `json:"dnsName,omitempty"` + // DnssecConfig: DNSSEC configuration. + DnssecConfig *ManagedZoneDnsSecConfig `json:"dnssecConfig,omitempty"` + // Id: Unique identifier for the resource; defined by the server (output // only) Id uint64 `json:"id,omitempty,string"` @@ -258,6 +528,9 @@ type ManagedZone struct { // string "dns#managedZone". Kind string `json:"kind,omitempty"` + // Labels: User labels. + Labels map[string]string `json:"labels,omitempty"` + // Name: User assigned name for this resource. Must be unique within the // project. The name must be 1-63 characters long, must begin with a // letter, end with a letter or digit, and only contain lowercase @@ -300,7 +573,108 @@ func (s *ManagedZone) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +type ManagedZoneDnsSecConfig struct { + // DefaultKeySpecs: Specifies parameters that will be used for + // generating initial DnsKeys for this ManagedZone. Output only while + // state is not OFF. + DefaultKeySpecs []*DnsKeySpec `json:"defaultKeySpecs,omitempty"` + + // Kind: Identifies what kind of resource this is. Value: the fixed + // string "dns#managedZoneDnsSecConfig". + Kind string `json:"kind,omitempty"` + + // NonExistence: Specifies the mechanism used to provide authenticated + // denial-of-existence responses. Output only while state is not OFF. + // + // Possible values: + // "nsec" + // "nsec3" + NonExistence string `json:"nonExistence,omitempty"` + + // State: Specifies whether DNSSEC is enabled, and what mode it is in. + // + // Possible values: + // "off" + // "on" + // "transfer" + State string `json:"state,omitempty"` + + // ForceSendFields is a list of field names (e.g. "DefaultKeySpecs") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "DefaultKeySpecs") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *ManagedZoneDnsSecConfig) MarshalJSON() ([]byte, error) { + type NoMethod ManagedZoneDnsSecConfig + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +type ManagedZoneOperationsListResponse struct { + Header *ResponseHeader `json:"header,omitempty"` + + // Kind: Type of resource. + Kind string `json:"kind,omitempty"` + + // NextPageToken: The presence of this field indicates that there exist + // more results following your last page of results in pagination order. + // To fetch them, make another list request using this value as your + // page token. + // + // In this way you can retrieve the complete contents of even very large + // collections one page at a time. However, if the contents of the + // collection change between the first and last paginated list request, + // the set of all elements returned will be an inconsistent view of the + // collection. There is no way to retrieve a consistent snapshot of a + // collection larger than the maximum page size. + NextPageToken string `json:"nextPageToken,omitempty"` + + // Operations: The operation resources. + Operations []*Operation `json:"operations,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "Header") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Header") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *ManagedZoneOperationsListResponse) MarshalJSON() ([]byte, error) { + type NoMethod ManagedZoneOperationsListResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + type ManagedZonesListResponse struct { + Header *ResponseHeader `json:"header,omitempty"` + // Kind: Type of resource. Kind string `json:"kind,omitempty"` @@ -324,7 +698,7 @@ type ManagedZonesListResponse struct { // server. googleapi.ServerResponse `json:"-"` - // ForceSendFields is a list of field names (e.g. "Kind") to + // ForceSendFields is a list of field names (e.g. "Header") to // unconditionally include in API requests. By default, fields with // empty values are omitted from API requests. However, any non-pointer, // non-interface field appearing in ForceSendFields will be sent to the @@ -332,7 +706,7 @@ type ManagedZonesListResponse struct { // used to include empty fields in Patch requests. ForceSendFields []string `json:"-"` - // NullFields is a list of field names (e.g. "Kind") to include in API + // NullFields is a list of field names (e.g. "Header") to include in API // requests with the JSON null value. By default, fields with empty // values are omitted from API requests. However, any field with an // empty value appearing in NullFields will be sent to the server as @@ -347,6 +721,139 @@ func (s *ManagedZonesListResponse) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// Operation: An operation represents a successful mutation performed on +// a Cloud DNS resource. Operations provide: - An audit log of server +// resource mutations. - A way to recover/retry API calls in the case +// where the response is never received by the caller. Use the caller +// specified client_operation_id. +type Operation struct { + // DnsKeyContext: Only populated if the operation targeted a DnsKey + // (output only). + DnsKeyContext *OperationDnsKeyContext `json:"dnsKeyContext,omitempty"` + + // Id: Unique identifier for the resource. This is the + // client_operation_id if the client specified it when the mutation was + // initiated, otherwise, it is generated by the server. The name must be + // 1-63 characters long and match the regular expression [-a-z0-9]? + // (output only) + Id string `json:"id,omitempty"` + + // Kind: Identifies what kind of resource this is. Value: the fixed + // string "dns#operation". + Kind string `json:"kind,omitempty"` + + // StartTime: The time that this operation was started by the server. + // This is in RFC3339 text format (output only). + StartTime string `json:"startTime,omitempty"` + + // Status: Status of the operation. Can be one of the following: + // "PENDING" or "DONE" (output only). + // + // Possible values: + // "done" + // "pending" + Status string `json:"status,omitempty"` + + // Type: Type of the operation. Operations include insert, update, and + // delete (output only). + Type string `json:"type,omitempty"` + + // User: User who requested the operation, for example: + // user@example.com. cloud-dns-system for operations automatically done + // by the system. (output only) + User string `json:"user,omitempty"` + + // ZoneContext: Only populated if the operation targeted a ManagedZone + // (output only). + ZoneContext *OperationManagedZoneContext `json:"zoneContext,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "DnsKeyContext") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "DnsKeyContext") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *Operation) MarshalJSON() ([]byte, error) { + type NoMethod Operation + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +type OperationDnsKeyContext struct { + // NewValue: The post-operation DnsKey resource. + NewValue *DnsKey `json:"newValue,omitempty"` + + // OldValue: The pre-operation DnsKey resource. + OldValue *DnsKey `json:"oldValue,omitempty"` + + // ForceSendFields is a list of field names (e.g. "NewValue") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "NewValue") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *OperationDnsKeyContext) MarshalJSON() ([]byte, error) { + type NoMethod OperationDnsKeyContext + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +type OperationManagedZoneContext struct { + // NewValue: The post-operation ManagedZone resource. + NewValue *ManagedZone `json:"newValue,omitempty"` + + // OldValue: The pre-operation ManagedZone resource. + OldValue *ManagedZone `json:"oldValue,omitempty"` + + // ForceSendFields is a list of field names (e.g. "NewValue") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "NewValue") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *OperationManagedZoneContext) MarshalJSON() ([]byte, error) { + type NoMethod OperationManagedZoneContext + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // Project: A project resource. The project is a top level container for // resources including Cloud DNS ManagedZones. Projects can be created // only in the APIs console. @@ -394,6 +901,10 @@ func (s *Project) MarshalJSON() ([]byte, error) { // Quota: Limits associated with a Project. type Quota struct { + // DnsKeysPerManagedZone: Maximum allowed number of DnsKeys per + // ManagedZone. + DnsKeysPerManagedZone int64 `json:"dnsKeysPerManagedZone,omitempty"` + // Kind: Identifies what kind of resource this is. Value: the fixed // string "dns#quota". Kind string `json:"kind,omitempty"` @@ -421,20 +932,26 @@ type Quota struct { // one ChangesCreateRequest in bytes. TotalRrdataSizePerChange int64 `json:"totalRrdataSizePerChange,omitempty"` - // ForceSendFields is a list of field names (e.g. "Kind") to - // unconditionally include in API requests. By default, fields with - // empty values are omitted from API requests. However, any non-pointer, - // non-interface field appearing in ForceSendFields will be sent to the - // server regardless of whether the field is empty or not. This may be - // used to include empty fields in Patch requests. + // WhitelistedKeySpecs: DNSSEC algorithm and key length types that can + // be used for DnsKeys. + WhitelistedKeySpecs []*DnsKeySpec `json:"whitelistedKeySpecs,omitempty"` + + // ForceSendFields is a list of field names (e.g. + // "DnsKeysPerManagedZone") to unconditionally include in API requests. + // By default, fields with empty values are omitted from API requests. + // However, any non-pointer, non-interface field appearing in + // ForceSendFields will be sent to the server regardless of whether the + // field is empty or not. This may be used to include empty fields in + // Patch requests. ForceSendFields []string `json:"-"` - // NullFields is a list of field names (e.g. "Kind") to include in API - // requests with the JSON null value. By default, fields with empty - // values are omitted from API requests. However, any field with an - // empty value appearing in NullFields will be sent to the server as - // null. It is an error if a field in this list has a non-empty value. - // This may be used to include null fields in Patch requests. + // NullFields is a list of field names (e.g. "DnsKeysPerManagedZone") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. NullFields []string `json:"-"` } @@ -458,6 +975,9 @@ type ResourceRecordSet struct { // 3.6.1). Rrdatas []string `json:"rrdatas,omitempty"` + // SignatureRrdatas: As defined in RFC 4034 (section 3.2). + SignatureRrdatas []string `json:"signatureRrdatas,omitempty"` + // Ttl: Number of seconds that this ResourceRecordSet can be cached by // resolvers. Ttl int64 `json:"ttl,omitempty"` @@ -490,6 +1010,8 @@ func (s *ResourceRecordSet) MarshalJSON() ([]byte, error) { } type ResourceRecordSetsListResponse struct { + Header *ResponseHeader `json:"header,omitempty"` + // Kind: Type of resource. Kind string `json:"kind,omitempty"` @@ -513,7 +1035,7 @@ type ResourceRecordSetsListResponse struct { // server. googleapi.ServerResponse `json:"-"` - // ForceSendFields is a list of field names (e.g. "Kind") to + // ForceSendFields is a list of field names (e.g. "Header") to // unconditionally include in API requests. By default, fields with // empty values are omitted from API requests. However, any non-pointer, // non-interface field appearing in ForceSendFields will be sent to the @@ -521,7 +1043,7 @@ type ResourceRecordSetsListResponse struct { // used to include empty fields in Patch requests. ForceSendFields []string `json:"-"` - // NullFields is a list of field names (e.g. "Kind") to include in API + // NullFields is a list of field names (e.g. "Header") to include in API // requests with the JSON null value. By default, fields with empty // values are omitted from API requests. However, any field with an // empty value appearing in NullFields will be sent to the server as @@ -536,6 +1058,36 @@ func (s *ResourceRecordSetsListResponse) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// ResponseHeader: Elements common to every response. +type ResponseHeader struct { + // OperationId: For mutating operation requests that completed + // successfully. This is the client_operation_id if the client specified + // it, otherwise it is generated by the server (output only). + OperationId string `json:"operationId,omitempty"` + + // ForceSendFields is a list of field names (e.g. "OperationId") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "OperationId") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *ResponseHeader) MarshalJSON() ([]byte, error) { + type NoMethod ResponseHeader + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // method id "dns.changes.create": type ChangesCreateCall struct { @@ -557,6 +1109,15 @@ func (r *ChangesService) Create(project string, managedZone string, change *Chan return c } +// ClientOperationId sets the optional parameter "clientOperationId": +// For mutating operation requests only. An optional identifier +// specified by the client. Must be unique for operation resources in +// the Operations collection. +func (c *ChangesCreateCall) ClientOperationId(clientOperationId string) *ChangesCreateCall { + c.urlParams_.Set("clientOperationId", clientOperationId) + return c +} + // Fields allows partial responses to be retrieved. See // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse // for more information. @@ -652,6 +1213,11 @@ func (c *ChangesCreateCall) Do(opts ...googleapi.CallOption) (*Change, error) { // "managedZone" // ], // "parameters": { + // "clientOperationId": { + // "description": "For mutating operation requests only. An optional identifier specified by the client. Must be unique for operation resources in the Operations collection.", + // "location": "query", + // "type": "string" + // }, // "managedZone": { // "description": "Identifies the managed zone addressed by this request. Can be the managed zone name or id.", // "location": "path", @@ -702,6 +1268,15 @@ func (r *ChangesService) Get(project string, managedZone string, changeId string return c } +// ClientOperationId sets the optional parameter "clientOperationId": +// For mutating operation requests only. An optional identifier +// specified by the client. Must be unique for operation resources in +// the Operations collection. +func (c *ChangesGetCall) ClientOperationId(clientOperationId string) *ChangesGetCall { + c.urlParams_.Set("clientOperationId", clientOperationId) + return c +} + // Fields allows partial responses to be retrieved. See // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse // for more information. @@ -813,6 +1388,11 @@ func (c *ChangesGetCall) Do(opts ...googleapi.CallOption) (*Change, error) { // "required": true, // "type": "string" // }, + // "clientOperationId": { + // "description": "For mutating operation requests only. An optional identifier specified by the client. Must be unique for operation resources in the Operations collection.", + // "location": "query", + // "type": "string" + // }, // "managedZone": { // "description": "Identifies the managed zone addressed by this request. Can be the managed zone name or id.", // "location": "path", @@ -1072,6 +1652,804 @@ func (c *ChangesListCall) Pages(ctx context.Context, f func(*ChangesListResponse } } +// method id "dns.dnsKeys.get": + +type DnsKeysGetCall struct { + s *Service + project string + managedZone string + dnsKeyId string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// Get: Fetch the representation of an existing DnsKey. +func (r *DnsKeysService) Get(project string, managedZone string, dnsKeyId string) *DnsKeysGetCall { + c := &DnsKeysGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.project = project + c.managedZone = managedZone + c.dnsKeyId = dnsKeyId + return c +} + +// ClientOperationId sets the optional parameter "clientOperationId": +// For mutating operation requests only. An optional identifier +// specified by the client. Must be unique for operation resources in +// the Operations collection. +func (c *DnsKeysGetCall) ClientOperationId(clientOperationId string) *DnsKeysGetCall { + c.urlParams_.Set("clientOperationId", clientOperationId) + return c +} + +// DigestType sets the optional parameter "digestType": An optional +// comma-separated list of digest types to compute and display for key +// signing keys. If omitted, the recommended digest type will be +// computed and displayed. +func (c *DnsKeysGetCall) DigestType(digestType string) *DnsKeysGetCall { + c.urlParams_.Set("digestType", digestType) + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *DnsKeysGetCall) Fields(s ...googleapi.Field) *DnsKeysGetCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// IfNoneMatch sets the optional parameter which makes the operation +// fail if the object's ETag matches the given value. This is useful for +// getting updates only after the object has changed since the last +// request. Use googleapi.IsNotModified to check whether the response +// error from Do is the result of In-None-Match. +func (c *DnsKeysGetCall) IfNoneMatch(entityTag string) *DnsKeysGetCall { + c.ifNoneMatch_ = entityTag + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *DnsKeysGetCall) Context(ctx context.Context) *DnsKeysGetCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *DnsKeysGetCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *DnsKeysGetCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + if c.ifNoneMatch_ != "" { + reqHeaders.Set("If-None-Match", c.ifNoneMatch_) + } + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "{project}/managedZones/{managedZone}/dnsKeys/{dnsKeyId}") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("GET", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "project": c.project, + "managedZone": c.managedZone, + "dnsKeyId": c.dnsKeyId, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "dns.dnsKeys.get" call. +// Exactly one of *DnsKey or error will be non-nil. Any non-2xx status +// code is an error. Response headers are in either +// *DnsKey.ServerResponse.Header or (if a response was returned at all) +// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to +// check whether the returned error was because http.StatusNotModified +// was returned. +func (c *DnsKeysGetCall) Do(opts ...googleapi.CallOption) (*DnsKey, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &DnsKey{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Fetch the representation of an existing DnsKey.", + // "httpMethod": "GET", + // "id": "dns.dnsKeys.get", + // "parameterOrder": [ + // "project", + // "managedZone", + // "dnsKeyId" + // ], + // "parameters": { + // "clientOperationId": { + // "description": "For mutating operation requests only. An optional identifier specified by the client. Must be unique for operation resources in the Operations collection.", + // "location": "query", + // "type": "string" + // }, + // "digestType": { + // "description": "An optional comma-separated list of digest types to compute and display for key signing keys. If omitted, the recommended digest type will be computed and displayed.", + // "location": "query", + // "type": "string" + // }, + // "dnsKeyId": { + // "description": "The identifier of the requested DnsKey.", + // "location": "path", + // "required": true, + // "type": "string" + // }, + // "managedZone": { + // "description": "Identifies the managed zone addressed by this request. Can be the managed zone name or id.", + // "location": "path", + // "required": true, + // "type": "string" + // }, + // "project": { + // "description": "Identifies the project addressed by this request.", + // "location": "path", + // "required": true, + // "type": "string" + // } + // }, + // "path": "{project}/managedZones/{managedZone}/dnsKeys/{dnsKeyId}", + // "response": { + // "$ref": "DnsKey" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform", + // "https://www.googleapis.com/auth/cloud-platform.read-only", + // "https://www.googleapis.com/auth/ndev.clouddns.readonly", + // "https://www.googleapis.com/auth/ndev.clouddns.readwrite" + // ] + // } + +} + +// method id "dns.dnsKeys.list": + +type DnsKeysListCall struct { + s *Service + project string + managedZone string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// List: Enumerate DnsKeys to a ResourceRecordSet collection. +func (r *DnsKeysService) List(project string, managedZone string) *DnsKeysListCall { + c := &DnsKeysListCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.project = project + c.managedZone = managedZone + return c +} + +// DigestType sets the optional parameter "digestType": An optional +// comma-separated list of digest types to compute and display for key +// signing keys. If omitted, the recommended digest type will be +// computed and displayed. +func (c *DnsKeysListCall) DigestType(digestType string) *DnsKeysListCall { + c.urlParams_.Set("digestType", digestType) + return c +} + +// MaxResults sets the optional parameter "maxResults": Maximum number +// of results to be returned. If unspecified, the server will decide how +// many results to return. +func (c *DnsKeysListCall) MaxResults(maxResults int64) *DnsKeysListCall { + c.urlParams_.Set("maxResults", fmt.Sprint(maxResults)) + return c +} + +// PageToken sets the optional parameter "pageToken": A tag returned by +// a previous list request that was truncated. Use this parameter to +// continue a previous list request. +func (c *DnsKeysListCall) PageToken(pageToken string) *DnsKeysListCall { + c.urlParams_.Set("pageToken", pageToken) + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *DnsKeysListCall) Fields(s ...googleapi.Field) *DnsKeysListCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// IfNoneMatch sets the optional parameter which makes the operation +// fail if the object's ETag matches the given value. This is useful for +// getting updates only after the object has changed since the last +// request. Use googleapi.IsNotModified to check whether the response +// error from Do is the result of In-None-Match. +func (c *DnsKeysListCall) IfNoneMatch(entityTag string) *DnsKeysListCall { + c.ifNoneMatch_ = entityTag + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *DnsKeysListCall) Context(ctx context.Context) *DnsKeysListCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *DnsKeysListCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *DnsKeysListCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + if c.ifNoneMatch_ != "" { + reqHeaders.Set("If-None-Match", c.ifNoneMatch_) + } + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "{project}/managedZones/{managedZone}/dnsKeys") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("GET", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "project": c.project, + "managedZone": c.managedZone, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "dns.dnsKeys.list" call. +// Exactly one of *DnsKeysListResponse or error will be non-nil. Any +// non-2xx status code is an error. Response headers are in either +// *DnsKeysListResponse.ServerResponse.Header or (if a response was +// returned at all) in error.(*googleapi.Error).Header. Use +// googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *DnsKeysListCall) Do(opts ...googleapi.CallOption) (*DnsKeysListResponse, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &DnsKeysListResponse{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Enumerate DnsKeys to a ResourceRecordSet collection.", + // "httpMethod": "GET", + // "id": "dns.dnsKeys.list", + // "parameterOrder": [ + // "project", + // "managedZone" + // ], + // "parameters": { + // "digestType": { + // "description": "An optional comma-separated list of digest types to compute and display for key signing keys. If omitted, the recommended digest type will be computed and displayed.", + // "location": "query", + // "type": "string" + // }, + // "managedZone": { + // "description": "Identifies the managed zone addressed by this request. Can be the managed zone name or id.", + // "location": "path", + // "required": true, + // "type": "string" + // }, + // "maxResults": { + // "description": "Optional. Maximum number of results to be returned. If unspecified, the server will decide how many results to return.", + // "format": "int32", + // "location": "query", + // "type": "integer" + // }, + // "pageToken": { + // "description": "Optional. A tag returned by a previous list request that was truncated. Use this parameter to continue a previous list request.", + // "location": "query", + // "type": "string" + // }, + // "project": { + // "description": "Identifies the project addressed by this request.", + // "location": "path", + // "required": true, + // "type": "string" + // } + // }, + // "path": "{project}/managedZones/{managedZone}/dnsKeys", + // "response": { + // "$ref": "DnsKeysListResponse" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform", + // "https://www.googleapis.com/auth/cloud-platform.read-only", + // "https://www.googleapis.com/auth/ndev.clouddns.readonly", + // "https://www.googleapis.com/auth/ndev.clouddns.readwrite" + // ] + // } + +} + +// Pages invokes f for each page of results. +// A non-nil error returned from f will halt the iteration. +// The provided context supersedes any context provided to the Context method. +func (c *DnsKeysListCall) Pages(ctx context.Context, f func(*DnsKeysListResponse) error) error { + c.ctx_ = ctx + defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point + for { + x, err := c.Do() + if err != nil { + return err + } + if err := f(x); err != nil { + return err + } + if x.NextPageToken == "" { + return nil + } + c.PageToken(x.NextPageToken) + } +} + +// method id "dns.managedZoneOperations.get": + +type ManagedZoneOperationsGetCall struct { + s *Service + project string + managedZone string + operation string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// Get: Fetch the representation of an existing Operation. +func (r *ManagedZoneOperationsService) Get(project string, managedZone string, operation string) *ManagedZoneOperationsGetCall { + c := &ManagedZoneOperationsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.project = project + c.managedZone = managedZone + c.operation = operation + return c +} + +// ClientOperationId sets the optional parameter "clientOperationId": +// For mutating operation requests only. An optional identifier +// specified by the client. Must be unique for operation resources in +// the Operations collection. +func (c *ManagedZoneOperationsGetCall) ClientOperationId(clientOperationId string) *ManagedZoneOperationsGetCall { + c.urlParams_.Set("clientOperationId", clientOperationId) + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ManagedZoneOperationsGetCall) Fields(s ...googleapi.Field) *ManagedZoneOperationsGetCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// IfNoneMatch sets the optional parameter which makes the operation +// fail if the object's ETag matches the given value. This is useful for +// getting updates only after the object has changed since the last +// request. Use googleapi.IsNotModified to check whether the response +// error from Do is the result of In-None-Match. +func (c *ManagedZoneOperationsGetCall) IfNoneMatch(entityTag string) *ManagedZoneOperationsGetCall { + c.ifNoneMatch_ = entityTag + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ManagedZoneOperationsGetCall) Context(ctx context.Context) *ManagedZoneOperationsGetCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ManagedZoneOperationsGetCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ManagedZoneOperationsGetCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + if c.ifNoneMatch_ != "" { + reqHeaders.Set("If-None-Match", c.ifNoneMatch_) + } + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "{project}/managedZones/{managedZone}/operations/{operation}") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("GET", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "project": c.project, + "managedZone": c.managedZone, + "operation": c.operation, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "dns.managedZoneOperations.get" call. +// Exactly one of *Operation or error will be non-nil. Any non-2xx +// status code is an error. Response headers are in either +// *Operation.ServerResponse.Header or (if a response was returned at +// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified +// to check whether the returned error was because +// http.StatusNotModified was returned. +func (c *ManagedZoneOperationsGetCall) Do(opts ...googleapi.CallOption) (*Operation, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &Operation{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Fetch the representation of an existing Operation.", + // "httpMethod": "GET", + // "id": "dns.managedZoneOperations.get", + // "parameterOrder": [ + // "project", + // "managedZone", + // "operation" + // ], + // "parameters": { + // "clientOperationId": { + // "description": "For mutating operation requests only. An optional identifier specified by the client. Must be unique for operation resources in the Operations collection.", + // "location": "query", + // "type": "string" + // }, + // "managedZone": { + // "description": "Identifies the managed zone addressed by this request.", + // "location": "path", + // "required": true, + // "type": "string" + // }, + // "operation": { + // "description": "Identifies the operation addressed by this request.", + // "location": "path", + // "required": true, + // "type": "string" + // }, + // "project": { + // "description": "Identifies the project addressed by this request.", + // "location": "path", + // "required": true, + // "type": "string" + // } + // }, + // "path": "{project}/managedZones/{managedZone}/operations/{operation}", + // "response": { + // "$ref": "Operation" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform", + // "https://www.googleapis.com/auth/cloud-platform.read-only", + // "https://www.googleapis.com/auth/ndev.clouddns.readonly", + // "https://www.googleapis.com/auth/ndev.clouddns.readwrite" + // ] + // } + +} + +// method id "dns.managedZoneOperations.list": + +type ManagedZoneOperationsListCall struct { + s *Service + project string + managedZone string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// List: Enumerate Operations for the given ManagedZone. +func (r *ManagedZoneOperationsService) List(project string, managedZone string) *ManagedZoneOperationsListCall { + c := &ManagedZoneOperationsListCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.project = project + c.managedZone = managedZone + return c +} + +// MaxResults sets the optional parameter "maxResults": Maximum number +// of results to be returned. If unspecified, the server will decide how +// many results to return. +func (c *ManagedZoneOperationsListCall) MaxResults(maxResults int64) *ManagedZoneOperationsListCall { + c.urlParams_.Set("maxResults", fmt.Sprint(maxResults)) + return c +} + +// PageToken sets the optional parameter "pageToken": A tag returned by +// a previous list request that was truncated. Use this parameter to +// continue a previous list request. +func (c *ManagedZoneOperationsListCall) PageToken(pageToken string) *ManagedZoneOperationsListCall { + c.urlParams_.Set("pageToken", pageToken) + return c +} + +// SortBy sets the optional parameter "sortBy": Sorting criterion. The +// only supported values are START_TIME and ID. +// +// Possible values: +// "id" +// "startTime" (default) +func (c *ManagedZoneOperationsListCall) SortBy(sortBy string) *ManagedZoneOperationsListCall { + c.urlParams_.Set("sortBy", sortBy) + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ManagedZoneOperationsListCall) Fields(s ...googleapi.Field) *ManagedZoneOperationsListCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// IfNoneMatch sets the optional parameter which makes the operation +// fail if the object's ETag matches the given value. This is useful for +// getting updates only after the object has changed since the last +// request. Use googleapi.IsNotModified to check whether the response +// error from Do is the result of In-None-Match. +func (c *ManagedZoneOperationsListCall) IfNoneMatch(entityTag string) *ManagedZoneOperationsListCall { + c.ifNoneMatch_ = entityTag + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ManagedZoneOperationsListCall) Context(ctx context.Context) *ManagedZoneOperationsListCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ManagedZoneOperationsListCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ManagedZoneOperationsListCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + if c.ifNoneMatch_ != "" { + reqHeaders.Set("If-None-Match", c.ifNoneMatch_) + } + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "{project}/managedZones/{managedZone}/operations") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("GET", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "project": c.project, + "managedZone": c.managedZone, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "dns.managedZoneOperations.list" call. +// Exactly one of *ManagedZoneOperationsListResponse or error will be +// non-nil. Any non-2xx status code is an error. Response headers are in +// either *ManagedZoneOperationsListResponse.ServerResponse.Header or +// (if a response was returned at all) in +// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check +// whether the returned error was because http.StatusNotModified was +// returned. +func (c *ManagedZoneOperationsListCall) Do(opts ...googleapi.CallOption) (*ManagedZoneOperationsListResponse, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &ManagedZoneOperationsListResponse{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Enumerate Operations for the given ManagedZone.", + // "httpMethod": "GET", + // "id": "dns.managedZoneOperations.list", + // "parameterOrder": [ + // "project", + // "managedZone" + // ], + // "parameters": { + // "managedZone": { + // "description": "Identifies the managed zone addressed by this request.", + // "location": "path", + // "required": true, + // "type": "string" + // }, + // "maxResults": { + // "description": "Optional. Maximum number of results to be returned. If unspecified, the server will decide how many results to return.", + // "format": "int32", + // "location": "query", + // "type": "integer" + // }, + // "pageToken": { + // "description": "Optional. A tag returned by a previous list request that was truncated. Use this parameter to continue a previous list request.", + // "location": "query", + // "type": "string" + // }, + // "project": { + // "description": "Identifies the project addressed by this request.", + // "location": "path", + // "required": true, + // "type": "string" + // }, + // "sortBy": { + // "default": "startTime", + // "description": "Sorting criterion. The only supported values are START_TIME and ID.", + // "enum": [ + // "id", + // "startTime" + // ], + // "enumDescriptions": [ + // "", + // "" + // ], + // "location": "query", + // "type": "string" + // } + // }, + // "path": "{project}/managedZones/{managedZone}/operations", + // "response": { + // "$ref": "ManagedZoneOperationsListResponse" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform", + // "https://www.googleapis.com/auth/cloud-platform.read-only", + // "https://www.googleapis.com/auth/ndev.clouddns.readonly", + // "https://www.googleapis.com/auth/ndev.clouddns.readwrite" + // ] + // } + +} + +// Pages invokes f for each page of results. +// A non-nil error returned from f will halt the iteration. +// The provided context supersedes any context provided to the Context method. +func (c *ManagedZoneOperationsListCall) Pages(ctx context.Context, f func(*ManagedZoneOperationsListResponse) error) error { + c.ctx_ = ctx + defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point + for { + x, err := c.Do() + if err != nil { + return err + } + if err := f(x); err != nil { + return err + } + if x.NextPageToken == "" { + return nil + } + c.PageToken(x.NextPageToken) + } +} + // method id "dns.managedZones.create": type ManagedZonesCreateCall struct { @@ -1091,6 +2469,15 @@ func (r *ManagedZonesService) Create(project string, managedzone *ManagedZone) * return c } +// ClientOperationId sets the optional parameter "clientOperationId": +// For mutating operation requests only. An optional identifier +// specified by the client. Must be unique for operation resources in +// the Operations collection. +func (c *ManagedZonesCreateCall) ClientOperationId(clientOperationId string) *ManagedZonesCreateCall { + c.urlParams_.Set("clientOperationId", clientOperationId) + return c +} + // Fields allows partial responses to be retrieved. See // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse // for more information. @@ -1184,6 +2571,11 @@ func (c *ManagedZonesCreateCall) Do(opts ...googleapi.CallOption) (*ManagedZone, // "project" // ], // "parameters": { + // "clientOperationId": { + // "description": "For mutating operation requests only. An optional identifier specified by the client. Must be unique for operation resources in the Operations collection.", + // "location": "query", + // "type": "string" + // }, // "project": { // "description": "Identifies the project addressed by this request.", // "location": "path", @@ -1225,6 +2617,15 @@ func (r *ManagedZonesService) Delete(project string, managedZone string) *Manage return c } +// ClientOperationId sets the optional parameter "clientOperationId": +// For mutating operation requests only. An optional identifier +// specified by the client. Must be unique for operation resources in +// the Operations collection. +func (c *ManagedZonesDeleteCall) ClientOperationId(clientOperationId string) *ManagedZonesDeleteCall { + c.urlParams_.Set("clientOperationId", clientOperationId) + return c +} + // Fields allows partial responses to be retrieved. See // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse // for more information. @@ -1290,6 +2691,11 @@ func (c *ManagedZonesDeleteCall) Do(opts ...googleapi.CallOption) error { // "managedZone" // ], // "parameters": { + // "clientOperationId": { + // "description": "For mutating operation requests only. An optional identifier specified by the client. Must be unique for operation resources in the Operations collection.", + // "location": "query", + // "type": "string" + // }, // "managedZone": { // "description": "Identifies the managed zone addressed by this request. Can be the managed zone name or id.", // "location": "path", @@ -1332,6 +2738,15 @@ func (r *ManagedZonesService) Get(project string, managedZone string) *ManagedZo return c } +// ClientOperationId sets the optional parameter "clientOperationId": +// For mutating operation requests only. An optional identifier +// specified by the client. Must be unique for operation resources in +// the Operations collection. +func (c *ManagedZonesGetCall) ClientOperationId(clientOperationId string) *ManagedZonesGetCall { + c.urlParams_.Set("clientOperationId", clientOperationId) + return c +} + // Fields allows partial responses to be retrieved. See // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse // for more information. @@ -1435,6 +2850,11 @@ func (c *ManagedZonesGetCall) Do(opts ...googleapi.CallOption) (*ManagedZone, er // "managedZone" // ], // "parameters": { + // "clientOperationId": { + // "description": "For mutating operation requests only. An optional identifier specified by the client. Must be unique for operation resources in the Operations collection.", + // "location": "query", + // "type": "string" + // }, // "managedZone": { // "description": "Identifies the managed zone addressed by this request. Can be the managed zone name or id.", // "location": "path", @@ -1663,6 +3083,323 @@ func (c *ManagedZonesListCall) Pages(ctx context.Context, f func(*ManagedZonesLi } } +// method id "dns.managedZones.patch": + +type ManagedZonesPatchCall struct { + s *Service + project string + managedZone string + managedzone *ManagedZone + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Patch: Update an existing ManagedZone. This method supports patch +// semantics. +func (r *ManagedZonesService) Patch(project string, managedZone string, managedzone *ManagedZone) *ManagedZonesPatchCall { + c := &ManagedZonesPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.project = project + c.managedZone = managedZone + c.managedzone = managedzone + return c +} + +// ClientOperationId sets the optional parameter "clientOperationId": +// For mutating operation requests only. An optional identifier +// specified by the client. Must be unique for operation resources in +// the Operations collection. +func (c *ManagedZonesPatchCall) ClientOperationId(clientOperationId string) *ManagedZonesPatchCall { + c.urlParams_.Set("clientOperationId", clientOperationId) + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ManagedZonesPatchCall) Fields(s ...googleapi.Field) *ManagedZonesPatchCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ManagedZonesPatchCall) Context(ctx context.Context) *ManagedZonesPatchCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ManagedZonesPatchCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ManagedZonesPatchCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.managedzone) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "{project}/managedZones/{managedZone}") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("PATCH", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "project": c.project, + "managedZone": c.managedZone, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "dns.managedZones.patch" call. +// Exactly one of *Operation or error will be non-nil. Any non-2xx +// status code is an error. Response headers are in either +// *Operation.ServerResponse.Header or (if a response was returned at +// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified +// to check whether the returned error was because +// http.StatusNotModified was returned. +func (c *ManagedZonesPatchCall) Do(opts ...googleapi.CallOption) (*Operation, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &Operation{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Update an existing ManagedZone. This method supports patch semantics.", + // "httpMethod": "PATCH", + // "id": "dns.managedZones.patch", + // "parameterOrder": [ + // "project", + // "managedZone" + // ], + // "parameters": { + // "clientOperationId": { + // "description": "For mutating operation requests only. An optional identifier specified by the client. Must be unique for operation resources in the Operations collection.", + // "location": "query", + // "type": "string" + // }, + // "managedZone": { + // "description": "Identifies the managed zone addressed by this request. Can be the managed zone name or id.", + // "location": "path", + // "required": true, + // "type": "string" + // }, + // "project": { + // "description": "Identifies the project addressed by this request.", + // "location": "path", + // "required": true, + // "type": "string" + // } + // }, + // "path": "{project}/managedZones/{managedZone}", + // "request": { + // "$ref": "ManagedZone" + // }, + // "response": { + // "$ref": "Operation" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform", + // "https://www.googleapis.com/auth/ndev.clouddns.readwrite" + // ] + // } + +} + +// method id "dns.managedZones.update": + +type ManagedZonesUpdateCall struct { + s *Service + project string + managedZone string + managedzone *ManagedZone + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Update: Update an existing ManagedZone. +func (r *ManagedZonesService) Update(project string, managedZone string, managedzone *ManagedZone) *ManagedZonesUpdateCall { + c := &ManagedZonesUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.project = project + c.managedZone = managedZone + c.managedzone = managedzone + return c +} + +// ClientOperationId sets the optional parameter "clientOperationId": +// For mutating operation requests only. An optional identifier +// specified by the client. Must be unique for operation resources in +// the Operations collection. +func (c *ManagedZonesUpdateCall) ClientOperationId(clientOperationId string) *ManagedZonesUpdateCall { + c.urlParams_.Set("clientOperationId", clientOperationId) + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ManagedZonesUpdateCall) Fields(s ...googleapi.Field) *ManagedZonesUpdateCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ManagedZonesUpdateCall) Context(ctx context.Context) *ManagedZonesUpdateCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ManagedZonesUpdateCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ManagedZonesUpdateCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.managedzone) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "{project}/managedZones/{managedZone}") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("PUT", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "project": c.project, + "managedZone": c.managedZone, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "dns.managedZones.update" call. +// Exactly one of *Operation or error will be non-nil. Any non-2xx +// status code is an error. Response headers are in either +// *Operation.ServerResponse.Header or (if a response was returned at +// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified +// to check whether the returned error was because +// http.StatusNotModified was returned. +func (c *ManagedZonesUpdateCall) Do(opts ...googleapi.CallOption) (*Operation, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &Operation{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Update an existing ManagedZone.", + // "httpMethod": "PUT", + // "id": "dns.managedZones.update", + // "parameterOrder": [ + // "project", + // "managedZone" + // ], + // "parameters": { + // "clientOperationId": { + // "description": "For mutating operation requests only. An optional identifier specified by the client. Must be unique for operation resources in the Operations collection.", + // "location": "query", + // "type": "string" + // }, + // "managedZone": { + // "description": "Identifies the managed zone addressed by this request. Can be the managed zone name or id.", + // "location": "path", + // "required": true, + // "type": "string" + // }, + // "project": { + // "description": "Identifies the project addressed by this request.", + // "location": "path", + // "required": true, + // "type": "string" + // } + // }, + // "path": "{project}/managedZones/{managedZone}", + // "request": { + // "$ref": "ManagedZone" + // }, + // "response": { + // "$ref": "Operation" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform", + // "https://www.googleapis.com/auth/ndev.clouddns.readwrite" + // ] + // } + +} + // method id "dns.projects.get": type ProjectsGetCall struct { @@ -1681,6 +3418,15 @@ func (r *ProjectsService) Get(project string) *ProjectsGetCall { return c } +// ClientOperationId sets the optional parameter "clientOperationId": +// For mutating operation requests only. An optional identifier +// specified by the client. Must be unique for operation resources in +// the Operations collection. +func (c *ProjectsGetCall) ClientOperationId(clientOperationId string) *ProjectsGetCall { + c.urlParams_.Set("clientOperationId", clientOperationId) + return c +} + // Fields allows partial responses to be retrieved. See // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse // for more information. @@ -1782,6 +3528,11 @@ func (c *ProjectsGetCall) Do(opts ...googleapi.CallOption) (*Project, error) { // "project" // ], // "parameters": { + // "clientOperationId": { + // "description": "For mutating operation requests only. An optional identifier specified by the client. Must be unique for operation resources in the Operations collection.", + // "location": "query", + // "type": "string" + // }, // "project": { // "description": "Identifies the project addressed by this request.", // "location": "path", diff --git a/vendor/google.golang.org/api/dns/v1beta2/dns-api.json b/vendor/google.golang.org/api/dns/v1beta2/dns-api.json index 37bacc294..e79240a18 100644 --- a/vendor/google.golang.org/api/dns/v1beta2/dns-api.json +++ b/vendor/google.golang.org/api/dns/v1beta2/dns-api.json @@ -1,1413 +1,1401 @@ { - "kind": "discovery#restDescription", - "etag": "\"-iA1DTNe4s-I6JZXPt1t1Ypy8IU/BsiZ-YiIV-O9qmPqfJlQJ6pD0co\"", - "discoveryVersion": "v1", - "id": "dns:v1beta2", - "name": "dns", - "version": "v1beta2", - "revision": "20180119", - "title": "Google Cloud DNS API", - "description": "Configures and serves authoritative DNS records.", - "ownerDomain": "google.com", - "ownerName": "Google", - "icons": { - "x16": "https://www.gstatic.com/images/branding/product/1x/googleg_16dp.png", - "x32": "https://www.gstatic.com/images/branding/product/1x/googleg_32dp.png" - }, - "documentationLink": "https://developers.google.com/cloud-dns", - "protocol": "rest", - "baseUrl": "https://www.googleapis.com/dns/v1beta2/projects/", - "basePath": "/dns/v1beta2/projects/", - "rootUrl": "https://www.googleapis.com/", - "servicePath": "dns/v1beta2/projects/", - "batchPath": "batch/dns/v1beta2", - "parameters": { - "alt": { - "type": "string", - "description": "Data format for the response.", - "default": "json", - "enum": [ - "json" - ], - "enumDescriptions": [ - "Responses with Content-Type of application/json" - ], - "location": "query" - }, - "fields": { - "type": "string", - "description": "Selector specifying which fields to include in a partial response.", - "location": "query" - }, - "key": { - "type": "string", - "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" - }, - "oauth_token": { - "type": "string", - "description": "OAuth 2.0 token for the current user.", - "location": "query" - }, - "prettyPrint": { - "type": "boolean", - "description": "Returns response with indentations and line breaks.", - "default": "true", - "location": "query" - }, - "quotaUser": { - "type": "string", - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", - "location": "query" - }, - "userIp": { - "type": "string", - "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", - "location": "query" - } - }, - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/cloud-platform": { - "description": "View and manage your data across Google Cloud Platform services" - }, - "https://www.googleapis.com/auth/cloud-platform.read-only": { - "description": "View your data across Google Cloud Platform services" - }, - "https://www.googleapis.com/auth/ndev.clouddns.readonly": { - "description": "View your DNS records hosted by Google Cloud DNS" - }, - "https://www.googleapis.com/auth/ndev.clouddns.readwrite": { - "description": "View and manage your DNS records hosted by Google Cloud DNS" + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/cloud-platform": { + "description": "View and manage your data across Google Cloud Platform services" + }, + "https://www.googleapis.com/auth/cloud-platform.read-only": { + "description": "View your data across Google Cloud Platform services" + }, + "https://www.googleapis.com/auth/ndev.clouddns.readonly": { + "description": "View your DNS records hosted by Google Cloud DNS" + }, + "https://www.googleapis.com/auth/ndev.clouddns.readwrite": { + "description": "View and manage your DNS records hosted by Google Cloud DNS" + } + } } - } - } - }, - "schemas": { - "Change": { - "id": "Change", - "type": "object", - "description": "An atomic update to a collection of ResourceRecordSets.", - "properties": { - "additions": { - "type": "array", - "description": "Which ResourceRecordSets to add?", - "items": { - "$ref": "ResourceRecordSet" - } - }, - "deletions": { - "type": "array", - "description": "Which ResourceRecordSets to remove? Must match existing data exactly.", - "items": { - "$ref": "ResourceRecordSet" - } - }, - "id": { - "type": "string", - "description": "Unique identifier for the resource; defined by the server (output only)." - }, - "isServing": { - "type": "boolean", - "description": "If the DNS queries for the zone will be served." - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dns#change\".", - "default": "dns#change" - }, - "startTime": { - "type": "string", - "description": "The time that this operation was started by the server (output only). This is in RFC3339 text format." - }, - "status": { - "type": "string", - "description": "Status of the operation (output only).", - "enum": [ - "done", - "pending" - ], - "enumDescriptions": [ - "", - "" - ] - } - } }, - "ChangesListResponse": { - "id": "ChangesListResponse", - "type": "object", - "description": "The response to a request to enumerate Changes to a ResourceRecordSets collection.", - "properties": { + "basePath": "/dns/v1beta2/projects/", + "baseUrl": "https://www.googleapis.com/dns/v1beta2/projects/", + "batchPath": "batch/dns/v1beta2", + "description": "Configures and serves authoritative DNS records.", + "discoveryVersion": "v1", + "documentationLink": "https://developers.google.com/cloud-dns", + "etag": "\"-iA1DTNe4s-I6JZXPt1t1Ypy8IU/e5F2mTs50sJnLnMkzFkqjWW6G1k\"", + "icons": { + "x16": "https://www.gstatic.com/images/branding/product/1x/googleg_16dp.png", + "x32": "https://www.gstatic.com/images/branding/product/1x/googleg_32dp.png" + }, + "id": "dns:v1beta2", + "kind": "discovery#restDescription", + "name": "dns", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "alt": { + "default": "json", + "description": "Data format for the response.", + "enum": [ + "json" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json" + ], + "location": "query", + "type": "string" + }, + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "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.", + "location": "query", + "type": "string" + }, + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", + "location": "query", + "type": "string" + }, + "userIp": { + "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", + "location": "query", + "type": "string" + } + }, + "protocol": "rest", + "resources": { "changes": { - "type": "array", - "description": "The requested changes.", - "items": { - "$ref": "Change" - } + "methods": { + "create": { + "description": "Atomically update the ResourceRecordSet collection.", + "httpMethod": "POST", + "id": "dns.changes.create", + "parameterOrder": [ + "project", + "managedZone" + ], + "parameters": { + "clientOperationId": { + "description": "For mutating operation requests only. An optional identifier specified by the client. Must be unique for operation resources in the Operations collection.", + "location": "query", + "type": "string" + }, + "managedZone": { + "description": "Identifies the managed zone addressed by this request. Can be the managed zone name or id.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Identifies the project addressed by this request.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/managedZones/{managedZone}/changes", + "request": { + "$ref": "Change" + }, + "response": { + "$ref": "Change" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/ndev.clouddns.readwrite" + ] + }, + "get": { + "description": "Fetch the representation of an existing Change.", + "httpMethod": "GET", + "id": "dns.changes.get", + "parameterOrder": [ + "project", + "managedZone", + "changeId" + ], + "parameters": { + "changeId": { + "description": "The identifier of the requested change, from a previous ResourceRecordSetsChangeResponse.", + "location": "path", + "required": true, + "type": "string" + }, + "clientOperationId": { + "description": "For mutating operation requests only. An optional identifier specified by the client. Must be unique for operation resources in the Operations collection.", + "location": "query", + "type": "string" + }, + "managedZone": { + "description": "Identifies the managed zone addressed by this request. Can be the managed zone name or id.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Identifies the project addressed by this request.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/managedZones/{managedZone}/changes/{changeId}", + "response": { + "$ref": "Change" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/ndev.clouddns.readonly", + "https://www.googleapis.com/auth/ndev.clouddns.readwrite" + ] + }, + "list": { + "description": "Enumerate Changes to a ResourceRecordSet collection.", + "httpMethod": "GET", + "id": "dns.changes.list", + "parameterOrder": [ + "project", + "managedZone" + ], + "parameters": { + "managedZone": { + "description": "Identifies the managed zone addressed by this request. Can be the managed zone name or id.", + "location": "path", + "required": true, + "type": "string" + }, + "maxResults": { + "description": "Optional. Maximum number of results to be returned. If unspecified, the server will decide how many results to return.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional. A tag returned by a previous list request that was truncated. Use this parameter to continue a previous list request.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Identifies the project addressed by this request.", + "location": "path", + "required": true, + "type": "string" + }, + "sortBy": { + "default": "changeSequence", + "description": "Sorting criterion. The only supported value is change sequence.", + "enum": [ + "changeSequence" + ], + "enumDescriptions": [ + "" + ], + "location": "query", + "type": "string" + }, + "sortOrder": { + "description": "Sorting order direction: 'ascending' or 'descending'.", + "location": "query", + "type": "string" + } + }, + "path": "{project}/managedZones/{managedZone}/changes", + "response": { + "$ref": "ChangesListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/ndev.clouddns.readonly", + "https://www.googleapis.com/auth/ndev.clouddns.readwrite" + ] + } + } }, - "header": { - "$ref": "ResponseHeader" - }, - "kind": { - "type": "string", - "description": "Type of resource.", - "default": "dns#changesListResponse" - }, - "nextPageToken": { - "type": "string", - "description": "The presence of this field indicates that there exist more results following your last page of results in pagination order. To fetch them, make another list request using this value as your pagination token.\n\nIn this way you can retrieve the complete contents of even very large collections one page at a time. However, if the contents of the collection change between the first and last paginated list request, the set of all elements returned will be an inconsistent view of the collection. There is no way to retrieve a \"snapshot\" of collections larger than the maximum page size." - } - } - }, - "DnsKey": { - "id": "DnsKey", - "type": "object", - "description": "A DNSSEC key pair.", - "properties": { - "algorithm": { - "type": "string", - "description": "String mnemonic specifying the DNSSEC algorithm of this key. Immutable after creation time.", - "enum": [ - "ecdsap256sha256", - "ecdsap384sha384", - "rsasha1", - "rsasha256", - "rsasha512" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "" - ] - }, - "creationTime": { - "type": "string", - "description": "The time that this resource was created in the control plane. This is in RFC3339 text format. Output only." - }, - "description": { - "type": "string", - "description": "A mutable string of at most 1024 characters associated with this resource for the user's convenience. Has no effect on the resource's function." - }, - "digests": { - "type": "array", - "description": "Cryptographic hashes of the DNSKEY resource record associated with this DnsKey. These digests are needed to construct a DS record that points at this DNS key. Output only.", - "items": { - "$ref": "DnsKeyDigest" - } - }, - "id": { - "type": "string", - "description": "Unique identifier for the resource; defined by the server (output only)." - }, - "isActive": { - "type": "boolean", - "description": "Active keys will be used to sign subsequent changes to the ManagedZone. Inactive keys will still be present as DNSKEY Resource Records for the use of resolvers validating existing signatures." - }, - "keyLength": { - "type": "integer", - "description": "Length of the key in bits. Specified at creation time then immutable.", - "format": "uint32" - }, - "keyTag": { - "type": "integer", - "description": "The key tag is a non-cryptographic hash of the a DNSKEY resource record associated with this DnsKey. The key tag can be used to identify a DNSKEY more quickly (but it is not a unique identifier). In particular, the key tag is used in a parent zone's DS record to point at the DNSKEY in this child ManagedZone. The key tag is a number in the range [0, 65535] and the algorithm to calculate it is specified in RFC4034 Appendix B. Output only.", - "format": "int32" - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dns#dnsKey\".", - "default": "dns#dnsKey" - }, - "publicKey": { - "type": "string", - "description": "Base64 encoded public half of this key. Output only." - }, - "type": { - "type": "string", - "description": "One of \"KEY_SIGNING\" or \"ZONE_SIGNING\". Keys of type KEY_SIGNING have the Secure Entry Point flag set and, when active, will be used to sign only resource record sets of type DNSKEY. Otherwise, the Secure Entry Point flag will be cleared and this key will be used to sign only resource record sets of other types. Immutable after creation time.", - "enum": [ - "keySigning", - "zoneSigning" - ], - "enumDescriptions": [ - "", - "" - ] - } - } - }, - "DnsKeyDigest": { - "id": "DnsKeyDigest", - "type": "object", - "properties": { - "digest": { - "type": "string", - "description": "The base-16 encoded bytes of this digest. Suitable for use in a DS resource record." - }, - "type": { - "type": "string", - "description": "Specifies the algorithm used to calculate this digest.", - "enum": [ - "sha1", - "sha256", - "sha384" - ], - "enumDescriptions": [ - "", - "", - "" - ] - } - } - }, - "DnsKeySpec": { - "id": "DnsKeySpec", - "type": "object", - "description": "Parameters for DnsKey key generation. Used for generating initial keys for a new ManagedZone and as default when adding a new DnsKey.", - "properties": { - "algorithm": { - "type": "string", - "description": "String mnemonic specifying the DNSSEC algorithm of this key.", - "enum": [ - "ecdsap256sha256", - "ecdsap384sha384", - "rsasha1", - "rsasha256", - "rsasha512" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "" - ] - }, - "keyLength": { - "type": "integer", - "description": "Length of the keys in bits.", - "format": "uint32" - }, - "keyType": { - "type": "string", - "description": "One of \"KEY_SIGNING\" or \"ZONE_SIGNING\". Keys of type KEY_SIGNING have the Secure Entry Point flag set and, when active, will be used to sign only resource record sets of type DNSKEY. Otherwise, the Secure Entry Point flag will be cleared and this key will be used to sign only resource record sets of other types.", - "enum": [ - "keySigning", - "zoneSigning" - ], - "enumDescriptions": [ - "", - "" - ] - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dns#dnsKeySpec\".", - "default": "dns#dnsKeySpec" - } - } - }, - "DnsKeysListResponse": { - "id": "DnsKeysListResponse", - "type": "object", - "description": "The response to a request to enumerate DnsKeys in a ManagedZone.", - "properties": { "dnsKeys": { - "type": "array", - "description": "The requested resources.", - "items": { - "$ref": "DnsKey" - } + "methods": { + "get": { + "description": "Fetch the representation of an existing DnsKey.", + "httpMethod": "GET", + "id": "dns.dnsKeys.get", + "parameterOrder": [ + "project", + "managedZone", + "dnsKeyId" + ], + "parameters": { + "clientOperationId": { + "description": "For mutating operation requests only. An optional identifier specified by the client. Must be unique for operation resources in the Operations collection.", + "location": "query", + "type": "string" + }, + "digestType": { + "description": "An optional comma-separated list of digest types to compute and display for key signing keys. If omitted, the recommended digest type will be computed and displayed.", + "location": "query", + "type": "string" + }, + "dnsKeyId": { + "description": "The identifier of the requested DnsKey.", + "location": "path", + "required": true, + "type": "string" + }, + "managedZone": { + "description": "Identifies the managed zone addressed by this request. Can be the managed zone name or id.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Identifies the project addressed by this request.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/managedZones/{managedZone}/dnsKeys/{dnsKeyId}", + "response": { + "$ref": "DnsKey" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/ndev.clouddns.readonly", + "https://www.googleapis.com/auth/ndev.clouddns.readwrite" + ] + }, + "list": { + "description": "Enumerate DnsKeys to a ResourceRecordSet collection.", + "httpMethod": "GET", + "id": "dns.dnsKeys.list", + "parameterOrder": [ + "project", + "managedZone" + ], + "parameters": { + "digestType": { + "description": "An optional comma-separated list of digest types to compute and display for key signing keys. If omitted, the recommended digest type will be computed and displayed.", + "location": "query", + "type": "string" + }, + "managedZone": { + "description": "Identifies the managed zone addressed by this request. Can be the managed zone name or id.", + "location": "path", + "required": true, + "type": "string" + }, + "maxResults": { + "description": "Optional. Maximum number of results to be returned. If unspecified, the server will decide how many results to return.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional. A tag returned by a previous list request that was truncated. Use this parameter to continue a previous list request.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Identifies the project addressed by this request.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/managedZones/{managedZone}/dnsKeys", + "response": { + "$ref": "DnsKeysListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/ndev.clouddns.readonly", + "https://www.googleapis.com/auth/ndev.clouddns.readwrite" + ] + } + } }, - "header": { - "$ref": "ResponseHeader" - }, - "kind": { - "type": "string", - "description": "Type of resource.", - "default": "dns#dnsKeysListResponse" - }, - "nextPageToken": { - "type": "string", - "description": "The presence of this field indicates that there exist more results following your last page of results in pagination order. To fetch them, make another list request using this value as your pagination token.\n\nIn this way you can retrieve the complete contents of even very large collections one page at a time. However, if the contents of the collection change between the first and last paginated list request, the set of all elements returned will be an inconsistent view of the collection. There is no way to retrieve a \"snapshot\" of collections larger than the maximum page size." - } - } - }, - "ManagedZone": { - "id": "ManagedZone", - "type": "object", - "description": "A zone is a subtree of the DNS namespace under one administrative responsibility. A ManagedZone is a resource that represents a DNS zone hosted by the Cloud DNS service.", - "properties": { - "creationTime": { - "type": "string", - "description": "The time that this resource was created on the server. This is in RFC3339 text format. Output only." - }, - "description": { - "type": "string", - "description": "A mutable string of at most 1024 characters associated with this resource for the user's convenience. Has no effect on the managed zone's function." - }, - "dnsName": { - "type": "string", - "description": "The DNS name of this managed zone, for instance \"example.com.\"." - }, - "dnssecConfig": { - "$ref": "ManagedZoneDnsSecConfig", - "description": "DNSSEC configuration." - }, - "id": { - "type": "string", - "description": "Unique identifier for the resource; defined by the server (output only)", - "format": "uint64" - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dns#managedZone\".", - "default": "dns#managedZone" - }, - "labels": { - "type": "object", - "description": "User labels.", - "additionalProperties": { - "type": "string" - } - }, - "name": { - "type": "string", - "description": "User assigned name for this resource. Must be unique within the project. The name must be 1-63 characters long, must begin with a letter, end with a letter or digit, and only contain lowercase letters, digits or dashes." - }, - "nameServerSet": { - "type": "string", - "description": "Optionally specifies the NameServerSet for this ManagedZone. A NameServerSet is a set of DNS name servers that all host the same ManagedZones. Most users will leave this field unset." - }, - "nameServers": { - "type": "array", - "description": "Delegate your managed_zone to these virtual name servers; defined by the server (output only)", - "items": { - "type": "string" - } - } - } - }, - "ManagedZoneDnsSecConfig": { - "id": "ManagedZoneDnsSecConfig", - "type": "object", - "properties": { - "defaultKeySpecs": { - "type": "array", - "description": "Specifies parameters that will be used for generating initial DnsKeys for this ManagedZone. Output only while state is not OFF.", - "items": { - "$ref": "DnsKeySpec" - } - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dns#managedZoneDnsSecConfig\".", - "default": "dns#managedZoneDnsSecConfig" - }, - "nonExistence": { - "type": "string", - "description": "Specifies the mechanism used to provide authenticated denial-of-existence responses. Output only while state is not OFF.", - "enum": [ - "nsec", - "nsec3" - ], - "enumDescriptions": [ - "", - "" - ] - }, - "state": { - "type": "string", - "description": "Specifies whether DNSSEC is enabled, and what mode it is in.", - "enum": [ - "off", - "on", - "transfer" - ], - "enumDescriptions": [ - "", - "", - "" - ] - } - } - }, - "ManagedZoneOperationsListResponse": { - "id": "ManagedZoneOperationsListResponse", - "type": "object", - "properties": { - "header": { - "$ref": "ResponseHeader" - }, - "kind": { - "type": "string", - "description": "Type of resource.", - "default": "dns#managedZoneOperationsListResponse" - }, - "nextPageToken": { - "type": "string", - "description": "The presence of this field indicates that there exist more results following your last page of results in pagination order. To fetch them, make another list request using this value as your page token.\n\nIn this way you can retrieve the complete contents of even very large collections one page at a time. However, if the contents of the collection change between the first and last paginated list request, the set of all elements returned will be an inconsistent view of the collection. There is no way to retrieve a consistent snapshot of a collection larger than the maximum page size." - }, - "operations": { - "type": "array", - "description": "The operation resources.", - "items": { - "$ref": "Operation" - } - } - } - }, - "ManagedZonesDeleteResponse": { - "id": "ManagedZonesDeleteResponse", - "type": "object", - "properties": { - "header": { - "$ref": "ResponseHeader" - } - } - }, - "ManagedZonesListResponse": { - "id": "ManagedZonesListResponse", - "type": "object", - "properties": { - "header": { - "$ref": "ResponseHeader" - }, - "kind": { - "type": "string", - "description": "Type of resource.", - "default": "dns#managedZonesListResponse" + "managedZoneOperations": { + "methods": { + "get": { + "description": "Fetch the representation of an existing Operation.", + "httpMethod": "GET", + "id": "dns.managedZoneOperations.get", + "parameterOrder": [ + "project", + "managedZone", + "operation" + ], + "parameters": { + "clientOperationId": { + "description": "For mutating operation requests only. An optional identifier specified by the client. Must be unique for operation resources in the Operations collection.", + "location": "query", + "type": "string" + }, + "managedZone": { + "description": "Identifies the managed zone addressed by this request.", + "location": "path", + "required": true, + "type": "string" + }, + "operation": { + "description": "Identifies the operation addressed by this request.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Identifies the project addressed by this request.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/managedZones/{managedZone}/operations/{operation}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/ndev.clouddns.readonly", + "https://www.googleapis.com/auth/ndev.clouddns.readwrite" + ] + }, + "list": { + "description": "Enumerate Operations for the given ManagedZone.", + "httpMethod": "GET", + "id": "dns.managedZoneOperations.list", + "parameterOrder": [ + "project", + "managedZone" + ], + "parameters": { + "managedZone": { + "description": "Identifies the managed zone addressed by this request.", + "location": "path", + "required": true, + "type": "string" + }, + "maxResults": { + "description": "Optional. Maximum number of results to be returned. If unspecified, the server will decide how many results to return.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional. A tag returned by a previous list request that was truncated. Use this parameter to continue a previous list request.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Identifies the project addressed by this request.", + "location": "path", + "required": true, + "type": "string" + }, + "sortBy": { + "default": "startTime", + "description": "Sorting criterion. The only supported values are START_TIME and ID.", + "enum": [ + "id", + "startTime" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + } + }, + "path": "{project}/managedZones/{managedZone}/operations", + "response": { + "$ref": "ManagedZoneOperationsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/ndev.clouddns.readonly", + "https://www.googleapis.com/auth/ndev.clouddns.readwrite" + ] + } + } }, "managedZones": { - "type": "array", - "description": "The managed zone resources.", - "items": { - "$ref": "ManagedZone" - } + "methods": { + "create": { + "description": "Create a new ManagedZone.", + "httpMethod": "POST", + "id": "dns.managedZones.create", + "parameterOrder": [ + "project" + ], + "parameters": { + "clientOperationId": { + "description": "For mutating operation requests only. An optional identifier specified by the client. Must be unique for operation resources in the Operations collection.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Identifies the project addressed by this request.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/managedZones", + "request": { + "$ref": "ManagedZone" + }, + "response": { + "$ref": "ManagedZone" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/ndev.clouddns.readwrite" + ] + }, + "delete": { + "description": "Delete a previously created ManagedZone.", + "httpMethod": "DELETE", + "id": "dns.managedZones.delete", + "parameterOrder": [ + "project", + "managedZone" + ], + "parameters": { + "clientOperationId": { + "description": "For mutating operation requests only. An optional identifier specified by the client. Must be unique for operation resources in the Operations collection.", + "location": "query", + "type": "string" + }, + "managedZone": { + "description": "Identifies the managed zone addressed by this request. Can be the managed zone name or id.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Identifies the project addressed by this request.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/managedZones/{managedZone}", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/ndev.clouddns.readwrite" + ] + }, + "get": { + "description": "Fetch the representation of an existing ManagedZone.", + "httpMethod": "GET", + "id": "dns.managedZones.get", + "parameterOrder": [ + "project", + "managedZone" + ], + "parameters": { + "clientOperationId": { + "description": "For mutating operation requests only. An optional identifier specified by the client. Must be unique for operation resources in the Operations collection.", + "location": "query", + "type": "string" + }, + "managedZone": { + "description": "Identifies the managed zone addressed by this request. Can be the managed zone name or id.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Identifies the project addressed by this request.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/managedZones/{managedZone}", + "response": { + "$ref": "ManagedZone" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/ndev.clouddns.readonly", + "https://www.googleapis.com/auth/ndev.clouddns.readwrite" + ] + }, + "list": { + "description": "Enumerate ManagedZones that have been created but not yet deleted.", + "httpMethod": "GET", + "id": "dns.managedZones.list", + "parameterOrder": [ + "project" + ], + "parameters": { + "dnsName": { + "description": "Restricts the list to return only zones with this domain name.", + "location": "query", + "type": "string" + }, + "maxResults": { + "description": "Optional. Maximum number of results to be returned. If unspecified, the server will decide how many results to return.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional. A tag returned by a previous list request that was truncated. Use this parameter to continue a previous list request.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Identifies the project addressed by this request.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/managedZones", + "response": { + "$ref": "ManagedZonesListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/ndev.clouddns.readonly", + "https://www.googleapis.com/auth/ndev.clouddns.readwrite" + ] + }, + "patch": { + "description": "Update an existing ManagedZone. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "dns.managedZones.patch", + "parameterOrder": [ + "project", + "managedZone" + ], + "parameters": { + "clientOperationId": { + "description": "For mutating operation requests only. An optional identifier specified by the client. Must be unique for operation resources in the Operations collection.", + "location": "query", + "type": "string" + }, + "managedZone": { + "description": "Identifies the managed zone addressed by this request. Can be the managed zone name or id.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Identifies the project addressed by this request.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/managedZones/{managedZone}", + "request": { + "$ref": "ManagedZone" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/ndev.clouddns.readwrite" + ] + }, + "update": { + "description": "Update an existing ManagedZone.", + "httpMethod": "PUT", + "id": "dns.managedZones.update", + "parameterOrder": [ + "project", + "managedZone" + ], + "parameters": { + "clientOperationId": { + "description": "For mutating operation requests only. An optional identifier specified by the client. Must be unique for operation resources in the Operations collection.", + "location": "query", + "type": "string" + }, + "managedZone": { + "description": "Identifies the managed zone addressed by this request. Can be the managed zone name or id.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Identifies the project addressed by this request.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/managedZones/{managedZone}", + "request": { + "$ref": "ManagedZone" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/ndev.clouddns.readwrite" + ] + } + } }, - "nextPageToken": { - "type": "string", - "description": "The presence of this field indicates that there exist more results following your last page of results in pagination order. To fetch them, make another list request using this value as your page token.\n\nIn this way you can retrieve the complete contents of even very large collections one page at a time. However, if the contents of the collection change between the first and last paginated list request, the set of all elements returned will be an inconsistent view of the collection. There is no way to retrieve a consistent snapshot of a collection larger than the maximum page size." + "projects": { + "methods": { + "get": { + "description": "Fetch the representation of an existing Project.", + "httpMethod": "GET", + "id": "dns.projects.get", + "parameterOrder": [ + "project" + ], + "parameters": { + "clientOperationId": { + "description": "For mutating operation requests only. An optional identifier specified by the client. Must be unique for operation resources in the Operations collection.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Identifies the project addressed by this request.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}", + "response": { + "$ref": "Project" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/ndev.clouddns.readonly", + "https://www.googleapis.com/auth/ndev.clouddns.readwrite" + ] + } + } + }, + "resourceRecordSets": { + "methods": { + "list": { + "description": "Enumerate ResourceRecordSets that have been created but not yet deleted.", + "httpMethod": "GET", + "id": "dns.resourceRecordSets.list", + "parameterOrder": [ + "project", + "managedZone" + ], + "parameters": { + "managedZone": { + "description": "Identifies the managed zone addressed by this request. Can be the managed zone name or id.", + "location": "path", + "required": true, + "type": "string" + }, + "maxResults": { + "description": "Optional. Maximum number of results to be returned. If unspecified, the server will decide how many results to return.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "name": { + "description": "Restricts the list to return only records with this fully qualified domain name.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Optional. A tag returned by a previous list request that was truncated. Use this parameter to continue a previous list request.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Identifies the project addressed by this request.", + "location": "path", + "required": true, + "type": "string" + }, + "type": { + "description": "Restricts the list to return only records of this type. If present, the \"name\" parameter must also be present.", + "location": "query", + "type": "string" + } + }, + "path": "{project}/managedZones/{managedZone}/rrsets", + "response": { + "$ref": "ResourceRecordSetsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/ndev.clouddns.readonly", + "https://www.googleapis.com/auth/ndev.clouddns.readwrite" + ] + } + } } - } }, - "Operation": { - "id": "Operation", - "type": "object", - "description": "An operation represents a successful mutation performed on a Cloud DNS resource. Operations provide: - An audit log of server resource mutations. - A way to recover/retry API calls in the case where the response is never received by the caller. Use the caller specified client_operation_id.", - "properties": { - "dnsKeyContext": { - "$ref": "OperationDnsKeyContext", - "description": "Only populated if the operation targeted a DnsKey (output only)." + "revision": "20180314", + "rootUrl": "https://www.googleapis.com/", + "schemas": { + "Change": { + "description": "An atomic update to a collection of ResourceRecordSets.", + "id": "Change", + "properties": { + "additions": { + "description": "Which ResourceRecordSets to add?", + "items": { + "$ref": "ResourceRecordSet" + }, + "type": "array" + }, + "deletions": { + "description": "Which ResourceRecordSets to remove? Must match existing data exactly.", + "items": { + "$ref": "ResourceRecordSet" + }, + "type": "array" + }, + "id": { + "description": "Unique identifier for the resource; defined by the server (output only).", + "type": "string" + }, + "isServing": { + "description": "If the DNS queries for the zone will be served.", + "type": "boolean" + }, + "kind": { + "default": "dns#change", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dns#change\".", + "type": "string" + }, + "startTime": { + "description": "The time that this operation was started by the server (output only). This is in RFC3339 text format.", + "type": "string" + }, + "status": { + "description": "Status of the operation (output only).", + "enum": [ + "done", + "pending" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + } + }, + "type": "object" }, - "id": { - "type": "string", - "description": "Unique identifier for the resource. This is the client_operation_id if the client specified it when the mutation was initiated, otherwise, it is generated by the server. The name must be 1-63 characters long and match the regular expression [-a-z0-9]? (output only)" + "ChangesListResponse": { + "description": "The response to a request to enumerate Changes to a ResourceRecordSets collection.", + "id": "ChangesListResponse", + "properties": { + "changes": { + "description": "The requested changes.", + "items": { + "$ref": "Change" + }, + "type": "array" + }, + "header": { + "$ref": "ResponseHeader" + }, + "kind": { + "default": "dns#changesListResponse", + "description": "Type of resource.", + "type": "string" + }, + "nextPageToken": { + "description": "The presence of this field indicates that there exist more results following your last page of results in pagination order. To fetch them, make another list request using this value as your pagination token.\n\nIn this way you can retrieve the complete contents of even very large collections one page at a time. However, if the contents of the collection change between the first and last paginated list request, the set of all elements returned will be an inconsistent view of the collection. There is no way to retrieve a \"snapshot\" of collections larger than the maximum page size.", + "type": "string" + } + }, + "type": "object" }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dns#operation\".", - "default": "dns#operation" + "DnsKey": { + "description": "A DNSSEC key pair.", + "id": "DnsKey", + "properties": { + "algorithm": { + "description": "String mnemonic specifying the DNSSEC algorithm of this key. Immutable after creation time.", + "enum": [ + "ecdsap256sha256", + "ecdsap384sha384", + "rsasha1", + "rsasha256", + "rsasha512" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "creationTime": { + "description": "The time that this resource was created in the control plane. This is in RFC3339 text format. Output only.", + "type": "string" + }, + "description": { + "description": "A mutable string of at most 1024 characters associated with this resource for the user's convenience. Has no effect on the resource's function.", + "type": "string" + }, + "digests": { + "description": "Cryptographic hashes of the DNSKEY resource record associated with this DnsKey. These digests are needed to construct a DS record that points at this DNS key. Output only.", + "items": { + "$ref": "DnsKeyDigest" + }, + "type": "array" + }, + "id": { + "description": "Unique identifier for the resource; defined by the server (output only).", + "type": "string" + }, + "isActive": { + "description": "Active keys will be used to sign subsequent changes to the ManagedZone. Inactive keys will still be present as DNSKEY Resource Records for the use of resolvers validating existing signatures.", + "type": "boolean" + }, + "keyLength": { + "description": "Length of the key in bits. Specified at creation time then immutable.", + "format": "uint32", + "type": "integer" + }, + "keyTag": { + "description": "The key tag is a non-cryptographic hash of the a DNSKEY resource record associated with this DnsKey. The key tag can be used to identify a DNSKEY more quickly (but it is not a unique identifier). In particular, the key tag is used in a parent zone's DS record to point at the DNSKEY in this child ManagedZone. The key tag is a number in the range [0, 65535] and the algorithm to calculate it is specified in RFC4034 Appendix B. Output only.", + "format": "int32", + "type": "integer" + }, + "kind": { + "default": "dns#dnsKey", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dns#dnsKey\".", + "type": "string" + }, + "publicKey": { + "description": "Base64 encoded public half of this key. Output only.", + "type": "string" + }, + "type": { + "description": "One of \"KEY_SIGNING\" or \"ZONE_SIGNING\". Keys of type KEY_SIGNING have the Secure Entry Point flag set and, when active, will be used to sign only resource record sets of type DNSKEY. Otherwise, the Secure Entry Point flag will be cleared and this key will be used to sign only resource record sets of other types. Immutable after creation time.", + "enum": [ + "keySigning", + "zoneSigning" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + } + }, + "type": "object" }, - "startTime": { - "type": "string", - "description": "The time that this operation was started by the server. This is in RFC3339 text format (output only)." + "DnsKeyDigest": { + "id": "DnsKeyDigest", + "properties": { + "digest": { + "description": "The base-16 encoded bytes of this digest. Suitable for use in a DS resource record.", + "type": "string" + }, + "type": { + "description": "Specifies the algorithm used to calculate this digest.", + "enum": [ + "sha1", + "sha256", + "sha384" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + } + }, + "type": "object" }, - "status": { - "type": "string", - "description": "Status of the operation. Can be one of the following: \"PENDING\" or \"DONE\" (output only).", - "enum": [ - "done", - "pending" - ], - "enumDescriptions": [ - "", - "" - ] + "DnsKeySpec": { + "description": "Parameters for DnsKey key generation. Used for generating initial keys for a new ManagedZone and as default when adding a new DnsKey.", + "id": "DnsKeySpec", + "properties": { + "algorithm": { + "description": "String mnemonic specifying the DNSSEC algorithm of this key.", + "enum": [ + "ecdsap256sha256", + "ecdsap384sha384", + "rsasha1", + "rsasha256", + "rsasha512" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "keyLength": { + "description": "Length of the keys in bits.", + "format": "uint32", + "type": "integer" + }, + "keyType": { + "description": "One of \"KEY_SIGNING\" or \"ZONE_SIGNING\". Keys of type KEY_SIGNING have the Secure Entry Point flag set and, when active, will be used to sign only resource record sets of type DNSKEY. Otherwise, the Secure Entry Point flag will be cleared and this key will be used to sign only resource record sets of other types.", + "enum": [ + "keySigning", + "zoneSigning" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "kind": { + "default": "dns#dnsKeySpec", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dns#dnsKeySpec\".", + "type": "string" + } + }, + "type": "object" }, - "type": { - "type": "string", - "description": "Type of the operation. Operations include insert, update, and delete (output only)." + "DnsKeysListResponse": { + "description": "The response to a request to enumerate DnsKeys in a ManagedZone.", + "id": "DnsKeysListResponse", + "properties": { + "dnsKeys": { + "description": "The requested resources.", + "items": { + "$ref": "DnsKey" + }, + "type": "array" + }, + "header": { + "$ref": "ResponseHeader" + }, + "kind": { + "default": "dns#dnsKeysListResponse", + "description": "Type of resource.", + "type": "string" + }, + "nextPageToken": { + "description": "The presence of this field indicates that there exist more results following your last page of results in pagination order. To fetch them, make another list request using this value as your pagination token.\n\nIn this way you can retrieve the complete contents of even very large collections one page at a time. However, if the contents of the collection change between the first and last paginated list request, the set of all elements returned will be an inconsistent view of the collection. There is no way to retrieve a \"snapshot\" of collections larger than the maximum page size.", + "type": "string" + } + }, + "type": "object" }, - "user": { - "type": "string", - "description": "User who requested the operation, for example: user@example.com. cloud-dns-system for operations automatically done by the system. (output only)" + "ManagedZone": { + "description": "A zone is a subtree of the DNS namespace under one administrative responsibility. A ManagedZone is a resource that represents a DNS zone hosted by the Cloud DNS service.", + "id": "ManagedZone", + "properties": { + "creationTime": { + "description": "The time that this resource was created on the server. This is in RFC3339 text format. Output only.", + "type": "string" + }, + "description": { + "description": "A mutable string of at most 1024 characters associated with this resource for the user's convenience. Has no effect on the managed zone's function.", + "type": "string" + }, + "dnsName": { + "description": "The DNS name of this managed zone, for instance \"example.com.\".", + "type": "string" + }, + "dnssecConfig": { + "$ref": "ManagedZoneDnsSecConfig", + "description": "DNSSEC configuration." + }, + "id": { + "description": "Unique identifier for the resource; defined by the server (output only)", + "format": "uint64", + "type": "string" + }, + "kind": { + "default": "dns#managedZone", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dns#managedZone\".", + "type": "string" + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "User labels.", + "type": "object" + }, + "name": { + "description": "User assigned name for this resource. Must be unique within the project. The name must be 1-63 characters long, must begin with a letter, end with a letter or digit, and only contain lowercase letters, digits or dashes.", + "type": "string" + }, + "nameServerSet": { + "description": "Optionally specifies the NameServerSet for this ManagedZone. A NameServerSet is a set of DNS name servers that all host the same ManagedZones. Most users will leave this field unset.", + "type": "string" + }, + "nameServers": { + "description": "Delegate your managed_zone to these virtual name servers; defined by the server (output only)", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" }, - "zoneContext": { - "$ref": "OperationManagedZoneContext", - "description": "Only populated if the operation targeted a ManagedZone (output only)." + "ManagedZoneDnsSecConfig": { + "id": "ManagedZoneDnsSecConfig", + "properties": { + "defaultKeySpecs": { + "description": "Specifies parameters that will be used for generating initial DnsKeys for this ManagedZone. Output only while state is not OFF.", + "items": { + "$ref": "DnsKeySpec" + }, + "type": "array" + }, + "kind": { + "default": "dns#managedZoneDnsSecConfig", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dns#managedZoneDnsSecConfig\".", + "type": "string" + }, + "nonExistence": { + "description": "Specifies the mechanism used to provide authenticated denial-of-existence responses. Output only while state is not OFF.", + "enum": [ + "nsec", + "nsec3" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "state": { + "description": "Specifies whether DNSSEC is enabled, and what mode it is in.", + "enum": [ + "off", + "on", + "transfer" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "ManagedZoneOperationsListResponse": { + "id": "ManagedZoneOperationsListResponse", + "properties": { + "header": { + "$ref": "ResponseHeader" + }, + "kind": { + "default": "dns#managedZoneOperationsListResponse", + "description": "Type of resource.", + "type": "string" + }, + "nextPageToken": { + "description": "The presence of this field indicates that there exist more results following your last page of results in pagination order. To fetch them, make another list request using this value as your page token.\n\nIn this way you can retrieve the complete contents of even very large collections one page at a time. However, if the contents of the collection change between the first and last paginated list request, the set of all elements returned will be an inconsistent view of the collection. There is no way to retrieve a consistent snapshot of a collection larger than the maximum page size.", + "type": "string" + }, + "operations": { + "description": "The operation resources.", + "items": { + "$ref": "Operation" + }, + "type": "array" + } + }, + "type": "object" + }, + "ManagedZonesListResponse": { + "id": "ManagedZonesListResponse", + "properties": { + "header": { + "$ref": "ResponseHeader" + }, + "kind": { + "default": "dns#managedZonesListResponse", + "description": "Type of resource.", + "type": "string" + }, + "managedZones": { + "description": "The managed zone resources.", + "items": { + "$ref": "ManagedZone" + }, + "type": "array" + }, + "nextPageToken": { + "description": "The presence of this field indicates that there exist more results following your last page of results in pagination order. To fetch them, make another list request using this value as your page token.\n\nIn this way you can retrieve the complete contents of even very large collections one page at a time. However, if the contents of the collection change between the first and last paginated list request, the set of all elements returned will be an inconsistent view of the collection. There is no way to retrieve a consistent snapshot of a collection larger than the maximum page size.", + "type": "string" + } + }, + "type": "object" + }, + "Operation": { + "description": "An operation represents a successful mutation performed on a Cloud DNS resource. Operations provide: - An audit log of server resource mutations. - A way to recover/retry API calls in the case where the response is never received by the caller. Use the caller specified client_operation_id.", + "id": "Operation", + "properties": { + "dnsKeyContext": { + "$ref": "OperationDnsKeyContext", + "description": "Only populated if the operation targeted a DnsKey (output only)." + }, + "id": { + "description": "Unique identifier for the resource. This is the client_operation_id if the client specified it when the mutation was initiated, otherwise, it is generated by the server. The name must be 1-63 characters long and match the regular expression [-a-z0-9]? (output only)", + "type": "string" + }, + "kind": { + "default": "dns#operation", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dns#operation\".", + "type": "string" + }, + "startTime": { + "description": "The time that this operation was started by the server. This is in RFC3339 text format (output only).", + "type": "string" + }, + "status": { + "description": "Status of the operation. Can be one of the following: \"PENDING\" or \"DONE\" (output only).", + "enum": [ + "done", + "pending" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "type": { + "description": "Type of the operation. Operations include insert, update, and delete (output only).", + "type": "string" + }, + "user": { + "description": "User who requested the operation, for example: user@example.com. cloud-dns-system for operations automatically done by the system. (output only)", + "type": "string" + }, + "zoneContext": { + "$ref": "OperationManagedZoneContext", + "description": "Only populated if the operation targeted a ManagedZone (output only)." + } + }, + "type": "object" + }, + "OperationDnsKeyContext": { + "id": "OperationDnsKeyContext", + "properties": { + "newValue": { + "$ref": "DnsKey", + "description": "The post-operation DnsKey resource." + }, + "oldValue": { + "$ref": "DnsKey", + "description": "The pre-operation DnsKey resource." + } + }, + "type": "object" + }, + "OperationManagedZoneContext": { + "id": "OperationManagedZoneContext", + "properties": { + "newValue": { + "$ref": "ManagedZone", + "description": "The post-operation ManagedZone resource." + }, + "oldValue": { + "$ref": "ManagedZone", + "description": "The pre-operation ManagedZone resource." + } + }, + "type": "object" + }, + "Project": { + "description": "A project resource. The project is a top level container for resources including Cloud DNS ManagedZones. Projects can be created only in the APIs console.", + "id": "Project", + "properties": { + "id": { + "description": "User assigned unique identifier for the resource (output only).", + "type": "string" + }, + "kind": { + "default": "dns#project", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dns#project\".", + "type": "string" + }, + "number": { + "description": "Unique numeric identifier for the resource; defined by the server (output only).", + "format": "uint64", + "type": "string" + }, + "quota": { + "$ref": "Quota", + "description": "Quotas assigned to this project (output only)." + } + }, + "type": "object" + }, + "Quota": { + "description": "Limits associated with a Project.", + "id": "Quota", + "properties": { + "dnsKeysPerManagedZone": { + "description": "Maximum allowed number of DnsKeys per ManagedZone.", + "format": "int32", + "type": "integer" + }, + "kind": { + "default": "dns#quota", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dns#quota\".", + "type": "string" + }, + "managedZones": { + "description": "Maximum allowed number of managed zones in the project.", + "format": "int32", + "type": "integer" + }, + "resourceRecordsPerRrset": { + "description": "Maximum allowed number of ResourceRecords per ResourceRecordSet.", + "format": "int32", + "type": "integer" + }, + "rrsetAdditionsPerChange": { + "description": "Maximum allowed number of ResourceRecordSets to add per ChangesCreateRequest.", + "format": "int32", + "type": "integer" + }, + "rrsetDeletionsPerChange": { + "description": "Maximum allowed number of ResourceRecordSets to delete per ChangesCreateRequest.", + "format": "int32", + "type": "integer" + }, + "rrsetsPerManagedZone": { + "description": "Maximum allowed number of ResourceRecordSets per zone in the project.", + "format": "int32", + "type": "integer" + }, + "totalRrdataSizePerChange": { + "description": "Maximum allowed size for total rrdata in one ChangesCreateRequest in bytes.", + "format": "int32", + "type": "integer" + }, + "whitelistedKeySpecs": { + "description": "DNSSEC algorithm and key length types that can be used for DnsKeys.", + "items": { + "$ref": "DnsKeySpec" + }, + "type": "array" + } + }, + "type": "object" + }, + "ResourceRecordSet": { + "description": "A unit of data that will be returned by the DNS servers.", + "id": "ResourceRecordSet", + "properties": { + "kind": { + "default": "dns#resourceRecordSet", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dns#resourceRecordSet\".", + "type": "string" + }, + "name": { + "description": "For example, www.example.com.", + "type": "string" + }, + "rrdatas": { + "description": "As defined in RFC 1035 (section 5) and RFC 1034 (section 3.6.1).", + "items": { + "type": "string" + }, + "type": "array" + }, + "signatureRrdatas": { + "description": "As defined in RFC 4034 (section 3.2).", + "items": { + "type": "string" + }, + "type": "array" + }, + "ttl": { + "description": "Number of seconds that this ResourceRecordSet can be cached by resolvers.", + "format": "int32", + "type": "integer" + }, + "type": { + "description": "The identifier of a supported record type, for example, A, AAAA, MX, TXT, and so on.", + "type": "string" + } + }, + "type": "object" + }, + "ResourceRecordSetsListResponse": { + "id": "ResourceRecordSetsListResponse", + "properties": { + "header": { + "$ref": "ResponseHeader" + }, + "kind": { + "default": "dns#resourceRecordSetsListResponse", + "description": "Type of resource.", + "type": "string" + }, + "nextPageToken": { + "description": "The presence of this field indicates that there exist more results following your last page of results in pagination order. To fetch them, make another list request using this value as your pagination token.\n\nIn this way you can retrieve the complete contents of even very large collections one page at a time. However, if the contents of the collection change between the first and last paginated list request, the set of all elements returned will be an inconsistent view of the collection. There is no way to retrieve a consistent snapshot of a collection larger than the maximum page size.", + "type": "string" + }, + "rrsets": { + "description": "The resource record set resources.", + "items": { + "$ref": "ResourceRecordSet" + }, + "type": "array" + } + }, + "type": "object" + }, + "ResponseHeader": { + "description": "Elements common to every response.", + "id": "ResponseHeader", + "properties": { + "operationId": { + "description": "For mutating operation requests that completed successfully. This is the client_operation_id if the client specified it, otherwise it is generated by the server (output only).", + "type": "string" + } + }, + "type": "object" } - } }, - "OperationDnsKeyContext": { - "id": "OperationDnsKeyContext", - "type": "object", - "properties": { - "newValue": { - "$ref": "DnsKey", - "description": "The post-operation DnsKey resource." - }, - "oldValue": { - "$ref": "DnsKey", - "description": "The pre-operation DnsKey resource." - } - } - }, - "OperationManagedZoneContext": { - "id": "OperationManagedZoneContext", - "type": "object", - "properties": { - "newValue": { - "$ref": "ManagedZone", - "description": "The post-operation ManagedZone resource." - }, - "oldValue": { - "$ref": "ManagedZone", - "description": "The pre-operation ManagedZone resource." - } - } - }, - "Project": { - "id": "Project", - "type": "object", - "description": "A project resource. The project is a top level container for resources including Cloud DNS ManagedZones. Projects can be created only in the APIs console.", - "properties": { - "id": { - "type": "string", - "description": "User assigned unique identifier for the resource (output only)." - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dns#project\".", - "default": "dns#project" - }, - "number": { - "type": "string", - "description": "Unique numeric identifier for the resource; defined by the server (output only).", - "format": "uint64" - }, - "quota": { - "$ref": "Quota", - "description": "Quotas assigned to this project (output only)." - } - } - }, - "Quota": { - "id": "Quota", - "type": "object", - "description": "Limits associated with a Project.", - "properties": { - "dnsKeysPerManagedZone": { - "type": "integer", - "description": "Maximum allowed number of DnsKeys per ManagedZone.", - "format": "int32" - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dns#quota\".", - "default": "dns#quota" - }, - "managedZones": { - "type": "integer", - "description": "Maximum allowed number of managed zones in the project.", - "format": "int32" - }, - "resourceRecordsPerRrset": { - "type": "integer", - "description": "Maximum allowed number of ResourceRecords per ResourceRecordSet.", - "format": "int32" - }, - "rrsetAdditionsPerChange": { - "type": "integer", - "description": "Maximum allowed number of ResourceRecordSets to add per ChangesCreateRequest.", - "format": "int32" - }, - "rrsetDeletionsPerChange": { - "type": "integer", - "description": "Maximum allowed number of ResourceRecordSets to delete per ChangesCreateRequest.", - "format": "int32" - }, - "rrsetsPerManagedZone": { - "type": "integer", - "description": "Maximum allowed number of ResourceRecordSets per zone in the project.", - "format": "int32" - }, - "totalRrdataSizePerChange": { - "type": "integer", - "description": "Maximum allowed size for total rrdata in one ChangesCreateRequest in bytes.", - "format": "int32" - }, - "whitelistedKeySpecs": { - "type": "array", - "description": "DNSSEC algorithm and key length types that can be used for DnsKeys.", - "items": { - "$ref": "DnsKeySpec" - } - } - } - }, - "ResourceRecordSet": { - "id": "ResourceRecordSet", - "type": "object", - "description": "A unit of data that will be returned by the DNS servers.", - "properties": { - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dns#resourceRecordSet\".", - "default": "dns#resourceRecordSet" - }, - "name": { - "type": "string", - "description": "For example, www.example.com." - }, - "rrdatas": { - "type": "array", - "description": "As defined in RFC 1035 (section 5) and RFC 1034 (section 3.6.1).", - "items": { - "type": "string" - } - }, - "signatureRrdatas": { - "type": "array", - "description": "As defined in RFC 4034 (section 3.2).", - "items": { - "type": "string" - } - }, - "ttl": { - "type": "integer", - "description": "Number of seconds that this ResourceRecordSet can be cached by resolvers.", - "format": "int32" - }, - "type": { - "type": "string", - "description": "The identifier of a supported record type, for example, A, AAAA, MX, TXT, and so on." - } - } - }, - "ResourceRecordSetsListResponse": { - "id": "ResourceRecordSetsListResponse", - "type": "object", - "properties": { - "header": { - "$ref": "ResponseHeader" - }, - "kind": { - "type": "string", - "description": "Type of resource.", - "default": "dns#resourceRecordSetsListResponse" - }, - "nextPageToken": { - "type": "string", - "description": "The presence of this field indicates that there exist more results following your last page of results in pagination order. To fetch them, make another list request using this value as your pagination token.\n\nIn this way you can retrieve the complete contents of even very large collections one page at a time. However, if the contents of the collection change between the first and last paginated list request, the set of all elements returned will be an inconsistent view of the collection. There is no way to retrieve a consistent snapshot of a collection larger than the maximum page size." - }, - "rrsets": { - "type": "array", - "description": "The resource record set resources.", - "items": { - "$ref": "ResourceRecordSet" - } - } - } - }, - "ResponseHeader": { - "id": "ResponseHeader", - "type": "object", - "description": "Elements common to every response.", - "properties": { - "operationId": { - "type": "string", - "description": "For mutating operation requests that completed successfully. This is the client_operation_id if the client specified it, otherwise it is generated by the server (output only)." - } - } - } - }, - "resources": { - "changes": { - "methods": { - "create": { - "id": "dns.changes.create", - "path": "{project}/managedZones/{managedZone}/changes", - "httpMethod": "POST", - "description": "Atomically update the ResourceRecordSet collection.", - "parameters": { - "clientOperationId": { - "type": "string", - "description": "For mutating operation requests only. An optional identifier specified by the client. Must be unique for operation resources in the Operations collection.", - "location": "query" - }, - "managedZone": { - "type": "string", - "description": "Identifies the managed zone addressed by this request. Can be the managed zone name or id.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Identifies the project addressed by this request.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "managedZone" - ], - "request": { - "$ref": "Change" - }, - "response": { - "$ref": "Change" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/ndev.clouddns.readwrite" - ] - }, - "get": { - "id": "dns.changes.get", - "path": "{project}/managedZones/{managedZone}/changes/{changeId}", - "httpMethod": "GET", - "description": "Fetch the representation of an existing Change.", - "parameters": { - "changeId": { - "type": "string", - "description": "The identifier of the requested change, from a previous ResourceRecordSetsChangeResponse.", - "required": true, - "location": "path" - }, - "clientOperationId": { - "type": "string", - "description": "For mutating operation requests only. An optional identifier specified by the client. Must be unique for operation resources in the Operations collection.", - "location": "query" - }, - "managedZone": { - "type": "string", - "description": "Identifies the managed zone addressed by this request. Can be the managed zone name or id.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Identifies the project addressed by this request.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "managedZone", - "changeId" - ], - "response": { - "$ref": "Change" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/ndev.clouddns.readonly", - "https://www.googleapis.com/auth/ndev.clouddns.readwrite" - ] - }, - "list": { - "id": "dns.changes.list", - "path": "{project}/managedZones/{managedZone}/changes", - "httpMethod": "GET", - "description": "Enumerate Changes to a ResourceRecordSet collection.", - "parameters": { - "managedZone": { - "type": "string", - "description": "Identifies the managed zone addressed by this request. Can be the managed zone name or id.", - "required": true, - "location": "path" - }, - "maxResults": { - "type": "integer", - "description": "Optional. Maximum number of results to be returned. If unspecified, the server will decide how many results to return.", - "format": "int32", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Optional. A tag returned by a previous list request that was truncated. Use this parameter to continue a previous list request.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Identifies the project addressed by this request.", - "required": true, - "location": "path" - }, - "sortBy": { - "type": "string", - "description": "Sorting criterion. The only supported value is change sequence.", - "default": "changeSequence", - "enum": [ - "changeSequence" - ], - "enumDescriptions": [ - "" - ], - "location": "query" - }, - "sortOrder": { - "type": "string", - "description": "Sorting order direction: 'ascending' or 'descending'.", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "managedZone" - ], - "response": { - "$ref": "ChangesListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/ndev.clouddns.readonly", - "https://www.googleapis.com/auth/ndev.clouddns.readwrite" - ] - } - } - }, - "dnsKeys": { - "methods": { - "get": { - "id": "dns.dnsKeys.get", - "path": "{project}/managedZones/{managedZone}/dnsKeys/{dnsKeyId}", - "httpMethod": "GET", - "description": "Fetch the representation of an existing DnsKey.", - "parameters": { - "clientOperationId": { - "type": "string", - "description": "For mutating operation requests only. An optional identifier specified by the client. Must be unique for operation resources in the Operations collection.", - "location": "query" - }, - "digestType": { - "type": "string", - "description": "An optional comma-separated list of digest types to compute and display for key signing keys. If omitted, the recommended digest type will be computed and displayed.", - "location": "query" - }, - "dnsKeyId": { - "type": "string", - "description": "The identifier of the requested DnsKey.", - "required": true, - "location": "path" - }, - "managedZone": { - "type": "string", - "description": "Identifies the managed zone addressed by this request. Can be the managed zone name or id.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Identifies the project addressed by this request.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "managedZone", - "dnsKeyId" - ], - "response": { - "$ref": "DnsKey" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/ndev.clouddns.readonly", - "https://www.googleapis.com/auth/ndev.clouddns.readwrite" - ] - }, - "list": { - "id": "dns.dnsKeys.list", - "path": "{project}/managedZones/{managedZone}/dnsKeys", - "httpMethod": "GET", - "description": "Enumerate DnsKeys to a ResourceRecordSet collection.", - "parameters": { - "digestType": { - "type": "string", - "description": "An optional comma-separated list of digest types to compute and display for key signing keys. If omitted, the recommended digest type will be computed and displayed.", - "location": "query" - }, - "managedZone": { - "type": "string", - "description": "Identifies the managed zone addressed by this request. Can be the managed zone name or id.", - "required": true, - "location": "path" - }, - "maxResults": { - "type": "integer", - "description": "Optional. Maximum number of results to be returned. If unspecified, the server will decide how many results to return.", - "format": "int32", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Optional. A tag returned by a previous list request that was truncated. Use this parameter to continue a previous list request.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Identifies the project addressed by this request.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "managedZone" - ], - "response": { - "$ref": "DnsKeysListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/ndev.clouddns.readonly", - "https://www.googleapis.com/auth/ndev.clouddns.readwrite" - ] - } - } - }, - "managedZoneOperations": { - "methods": { - "get": { - "id": "dns.managedZoneOperations.get", - "path": "{project}/managedZones/{managedZone}/operations/{operation}", - "httpMethod": "GET", - "description": "Fetch the representation of an existing Operation.", - "parameters": { - "clientOperationId": { - "type": "string", - "description": "For mutating operation requests only. An optional identifier specified by the client. Must be unique for operation resources in the Operations collection.", - "location": "query" - }, - "managedZone": { - "type": "string", - "description": "Identifies the managed zone addressed by this request.", - "required": true, - "location": "path" - }, - "operation": { - "type": "string", - "description": "Identifies the operation addressed by this request.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Identifies the project addressed by this request.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "managedZone", - "operation" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/ndev.clouddns.readonly", - "https://www.googleapis.com/auth/ndev.clouddns.readwrite" - ] - }, - "list": { - "id": "dns.managedZoneOperations.list", - "path": "{project}/managedZones/{managedZone}/operations", - "httpMethod": "GET", - "description": "Enumerate Operations for the given ManagedZone.", - "parameters": { - "managedZone": { - "type": "string", - "description": "Identifies the managed zone addressed by this request.", - "required": true, - "location": "path" - }, - "maxResults": { - "type": "integer", - "description": "Optional. Maximum number of results to be returned. If unspecified, the server will decide how many results to return.", - "format": "int32", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Optional. A tag returned by a previous list request that was truncated. Use this parameter to continue a previous list request.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Identifies the project addressed by this request.", - "required": true, - "location": "path" - }, - "sortBy": { - "type": "string", - "description": "Sorting criterion. The only supported values are START_TIME and ID.", - "default": "startTime", - "enum": [ - "id", - "startTime" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - } - }, - "parameterOrder": [ - "project", - "managedZone" - ], - "response": { - "$ref": "ManagedZoneOperationsListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/ndev.clouddns.readonly", - "https://www.googleapis.com/auth/ndev.clouddns.readwrite" - ] - } - } - }, - "managedZones": { - "methods": { - "create": { - "id": "dns.managedZones.create", - "path": "{project}/managedZones", - "httpMethod": "POST", - "description": "Create a new ManagedZone.", - "parameters": { - "clientOperationId": { - "type": "string", - "description": "For mutating operation requests only. An optional identifier specified by the client. Must be unique for operation resources in the Operations collection.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Identifies the project addressed by this request.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "request": { - "$ref": "ManagedZone" - }, - "response": { - "$ref": "ManagedZone" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/ndev.clouddns.readwrite" - ] - }, - "delete": { - "id": "dns.managedZones.delete", - "path": "{project}/managedZones/{managedZone}", - "httpMethod": "DELETE", - "description": "Delete a previously created ManagedZone.", - "parameters": { - "clientOperationId": { - "type": "string", - "description": "For mutating operation requests only. An optional identifier specified by the client. Must be unique for operation resources in the Operations collection.", - "location": "query" - }, - "managedZone": { - "type": "string", - "description": "Identifies the managed zone addressed by this request. Can be the managed zone name or id.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Identifies the project addressed by this request.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "managedZone" - ], - "response": { - "$ref": "ManagedZonesDeleteResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/ndev.clouddns.readwrite" - ] - }, - "get": { - "id": "dns.managedZones.get", - "path": "{project}/managedZones/{managedZone}", - "httpMethod": "GET", - "description": "Fetch the representation of an existing ManagedZone.", - "parameters": { - "clientOperationId": { - "type": "string", - "description": "For mutating operation requests only. An optional identifier specified by the client. Must be unique for operation resources in the Operations collection.", - "location": "query" - }, - "managedZone": { - "type": "string", - "description": "Identifies the managed zone addressed by this request. Can be the managed zone name or id.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Identifies the project addressed by this request.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "managedZone" - ], - "response": { - "$ref": "ManagedZone" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/ndev.clouddns.readonly", - "https://www.googleapis.com/auth/ndev.clouddns.readwrite" - ] - }, - "list": { - "id": "dns.managedZones.list", - "path": "{project}/managedZones", - "httpMethod": "GET", - "description": "Enumerate ManagedZones that have been created but not yet deleted.", - "parameters": { - "dnsName": { - "type": "string", - "description": "Restricts the list to return only zones with this domain name.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "Optional. Maximum number of results to be returned. If unspecified, the server will decide how many results to return.", - "format": "int32", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Optional. A tag returned by a previous list request that was truncated. Use this parameter to continue a previous list request.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Identifies the project addressed by this request.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "ManagedZonesListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/ndev.clouddns.readonly", - "https://www.googleapis.com/auth/ndev.clouddns.readwrite" - ] - }, - "patch": { - "id": "dns.managedZones.patch", - "path": "{project}/managedZones/{managedZone}", - "httpMethod": "PATCH", - "description": "Update an existing ManagedZone. This method supports patch semantics.", - "parameters": { - "clientOperationId": { - "type": "string", - "description": "For mutating operation requests only. An optional identifier specified by the client. Must be unique for operation resources in the Operations collection.", - "location": "query" - }, - "managedZone": { - "type": "string", - "description": "Identifies the managed zone addressed by this request. Can be the managed zone name or id.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Identifies the project addressed by this request.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "managedZone" - ], - "request": { - "$ref": "ManagedZone" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/ndev.clouddns.readwrite" - ] - }, - "update": { - "id": "dns.managedZones.update", - "path": "{project}/managedZones/{managedZone}", - "httpMethod": "PUT", - "description": "Update an existing ManagedZone.", - "parameters": { - "clientOperationId": { - "type": "string", - "description": "For mutating operation requests only. An optional identifier specified by the client. Must be unique for operation resources in the Operations collection.", - "location": "query" - }, - "managedZone": { - "type": "string", - "description": "Identifies the managed zone addressed by this request. Can be the managed zone name or id.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Identifies the project addressed by this request.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "managedZone" - ], - "request": { - "$ref": "ManagedZone" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/ndev.clouddns.readwrite" - ] - } - } - }, - "projects": { - "methods": { - "get": { - "id": "dns.projects.get", - "path": "{project}", - "httpMethod": "GET", - "description": "Fetch the representation of an existing Project.", - "parameters": { - "clientOperationId": { - "type": "string", - "description": "For mutating operation requests only. An optional identifier specified by the client. Must be unique for operation resources in the Operations collection.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Identifies the project addressed by this request.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "Project" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/ndev.clouddns.readonly", - "https://www.googleapis.com/auth/ndev.clouddns.readwrite" - ] - } - } - }, - "resourceRecordSets": { - "methods": { - "list": { - "id": "dns.resourceRecordSets.list", - "path": "{project}/managedZones/{managedZone}/rrsets", - "httpMethod": "GET", - "description": "Enumerate ResourceRecordSets that have been created but not yet deleted.", - "parameters": { - "managedZone": { - "type": "string", - "description": "Identifies the managed zone addressed by this request. Can be the managed zone name or id.", - "required": true, - "location": "path" - }, - "maxResults": { - "type": "integer", - "description": "Optional. Maximum number of results to be returned. If unspecified, the server will decide how many results to return.", - "format": "int32", - "location": "query" - }, - "name": { - "type": "string", - "description": "Restricts the list to return only records with this fully qualified domain name.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Optional. A tag returned by a previous list request that was truncated. Use this parameter to continue a previous list request.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Identifies the project addressed by this request.", - "required": true, - "location": "path" - }, - "type": { - "type": "string", - "description": "Restricts the list to return only records of this type. If present, the \"name\" parameter must also be present.", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "managedZone" - ], - "response": { - "$ref": "ResourceRecordSetsListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/ndev.clouddns.readonly", - "https://www.googleapis.com/auth/ndev.clouddns.readwrite" - ] - } - } - } - } -} + "servicePath": "dns/v1beta2/projects/", + "title": "Google Cloud DNS API", + "version": "v1beta2" +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/dns/v1beta2/dns-gen.go b/vendor/google.golang.org/api/dns/v1beta2/dns-gen.go index fcb59202a..f0f359dbe 100644 --- a/vendor/google.golang.org/api/dns/v1beta2/dns-gen.go +++ b/vendor/google.golang.org/api/dns/v1beta2/dns-gen.go @@ -672,36 +672,6 @@ func (s *ManagedZoneOperationsListResponse) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -type ManagedZonesDeleteResponse struct { - Header *ResponseHeader `json:"header,omitempty"` - - // ServerResponse contains the HTTP response code and headers from the - // server. - googleapi.ServerResponse `json:"-"` - - // ForceSendFields is a list of field names (e.g. "Header") to - // unconditionally include in API requests. By default, fields with - // empty values are omitted from API requests. However, any non-pointer, - // non-interface field appearing in ForceSendFields will be sent to the - // server regardless of whether the field is empty or not. This may be - // used to include empty fields in Patch requests. - ForceSendFields []string `json:"-"` - - // NullFields is a list of field names (e.g. "Header") to include in API - // requests with the JSON null value. By default, fields with empty - // values are omitted from API requests. However, any field with an - // empty value appearing in NullFields will be sent to the server as - // null. It is an error if a field in this list has a non-empty value. - // This may be used to include null fields in Patch requests. - NullFields []string `json:"-"` -} - -func (s *ManagedZonesDeleteResponse) MarshalJSON() ([]byte, error) { - type NoMethod ManagedZonesDeleteResponse - raw := NoMethod(*s) - return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) -} - type ManagedZonesListResponse struct { Header *ResponseHeader `json:"header,omitempty"` @@ -2701,42 +2671,17 @@ func (c *ManagedZonesDeleteCall) doRequest(alt string) (*http.Response, error) { } // Do executes the "dns.managedZones.delete" call. -// Exactly one of *ManagedZonesDeleteResponse or error will be non-nil. -// Any non-2xx status code is an error. Response headers are in either -// *ManagedZonesDeleteResponse.ServerResponse.Header or (if a response -// was returned at all) in error.(*googleapi.Error).Header. Use -// googleapi.IsNotModified to check whether the returned error was -// because http.StatusNotModified was returned. -func (c *ManagedZonesDeleteCall) Do(opts ...googleapi.CallOption) (*ManagedZonesDeleteResponse, error) { +func (c *ManagedZonesDeleteCall) Do(opts ...googleapi.CallOption) error { gensupport.SetOptions(c.urlParams_, opts...) res, err := c.doRequest("json") - if res != nil && res.StatusCode == http.StatusNotModified { - if res.Body != nil { - res.Body.Close() - } - return nil, &googleapi.Error{ - Code: res.StatusCode, - Header: res.Header, - } - } if err != nil { - return nil, err + return err } defer googleapi.CloseBody(res) if err := googleapi.CheckResponse(res); err != nil { - return nil, err + return err } - ret := &ManagedZonesDeleteResponse{ - ServerResponse: googleapi.ServerResponse{ - Header: res.Header, - HTTPStatusCode: res.StatusCode, - }, - } - target := &ret - if err := gensupport.DecodeResponse(target, res); err != nil { - return nil, err - } - return ret, nil + return nil // { // "description": "Delete a previously created ManagedZone.", // "httpMethod": "DELETE", @@ -2765,9 +2710,6 @@ func (c *ManagedZonesDeleteCall) Do(opts ...googleapi.CallOption) (*ManagedZones // } // }, // "path": "{project}/managedZones/{managedZone}", - // "response": { - // "$ref": "ManagedZonesDeleteResponse" - // }, // "scopes": [ // "https://www.googleapis.com/auth/cloud-platform", // "https://www.googleapis.com/auth/ndev.clouddns.readwrite" diff --git a/vendor/google.golang.org/api/dns/v2beta1/dns-api.json b/vendor/google.golang.org/api/dns/v2beta1/dns-api.json index dec7cef81..cd19f14a8 100644 --- a/vendor/google.golang.org/api/dns/v2beta1/dns-api.json +++ b/vendor/google.golang.org/api/dns/v2beta1/dns-api.json @@ -1,1406 +1,1401 @@ { - "kind": "discovery#restDescription", - "etag": "\"YWOzh2SDasdU84ArJnpYek-OMdg/5iI5DqGWql1d7Ix1CktINwTdaEw\"", - "discoveryVersion": "v1", - "id": "dns:v2beta1", - "name": "dns", - "version": "v2beta1", - "revision": "20170831", - "title": "Google Cloud DNS API", - "description": "Configures and serves authoritative DNS records.", - "ownerDomain": "google.com", - "ownerName": "Google", - "icons": { - "x16": "https://www.gstatic.com/images/branding/product/1x/googleg_16dp.png", - "x32": "https://www.gstatic.com/images/branding/product/1x/googleg_32dp.png" - }, - "documentationLink": "https://developers.google.com/cloud-dns", - "protocol": "rest", - "baseUrl": "https://www.googleapis.com/dns/v2beta1/projects/", - "basePath": "/dns/v2beta1/projects/", - "rootUrl": "https://www.googleapis.com/", - "servicePath": "dns/v2beta1/projects/", - "batchPath": "batch/dns/v2beta1", - "parameters": { - "alt": { - "type": "string", - "description": "Data format for the response.", - "default": "json", - "enum": [ - "json" - ], - "enumDescriptions": [ - "Responses with Content-Type of application/json" - ], - "location": "query" - }, - "fields": { - "type": "string", - "description": "Selector specifying which fields to include in a partial response.", - "location": "query" - }, - "key": { - "type": "string", - "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" - }, - "oauth_token": { - "type": "string", - "description": "OAuth 2.0 token for the current user.", - "location": "query" - }, - "prettyPrint": { - "type": "boolean", - "description": "Returns response with indentations and line breaks.", - "default": "true", - "location": "query" - }, - "quotaUser": { - "type": "string", - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", - "location": "query" - }, - "userIp": { - "type": "string", - "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", - "location": "query" - } - }, - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/cloud-platform": { - "description": "View and manage your data across Google Cloud Platform services" - }, - "https://www.googleapis.com/auth/cloud-platform.read-only": { - "description": "View your data across Google Cloud Platform services" - }, - "https://www.googleapis.com/auth/ndev.clouddns.readonly": { - "description": "View your DNS records hosted by Google Cloud DNS" - }, - "https://www.googleapis.com/auth/ndev.clouddns.readwrite": { - "description": "View and manage your DNS records hosted by Google Cloud DNS" + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/cloud-platform": { + "description": "View and manage your data across Google Cloud Platform services" + }, + "https://www.googleapis.com/auth/cloud-platform.read-only": { + "description": "View your data across Google Cloud Platform services" + }, + "https://www.googleapis.com/auth/ndev.clouddns.readonly": { + "description": "View your DNS records hosted by Google Cloud DNS" + }, + "https://www.googleapis.com/auth/ndev.clouddns.readwrite": { + "description": "View and manage your DNS records hosted by Google Cloud DNS" + } + } } - } - } - }, - "schemas": { - "Change": { - "id": "Change", - "type": "object", - "description": "An atomic update to a collection of ResourceRecordSets.", - "properties": { - "additions": { - "type": "array", - "description": "Which ResourceRecordSets to add?", - "items": { - "$ref": "ResourceRecordSet" - } - }, - "deletions": { - "type": "array", - "description": "Which ResourceRecordSets to remove? Must match existing data exactly.", - "items": { - "$ref": "ResourceRecordSet" - } - }, - "id": { - "type": "string", - "description": "Unique identifier for the resource; defined by the server (output only)." - }, - "isServing": { - "type": "boolean", - "description": "If the DNS queries for the zone will be served." - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dns#change\".", - "default": "dns#change" - }, - "startTime": { - "type": "string", - "description": "The time that this operation was started by the server (output only). This is in RFC3339 text format." - }, - "status": { - "type": "string", - "description": "Status of the operation (output only).", - "enum": [ - "DONE", - "PENDING" - ], - "enumDescriptions": [ - "", - "" - ] - } - } }, - "ChangesListResponse": { - "id": "ChangesListResponse", - "type": "object", - "description": "The response to a request to enumerate Changes to a ResourceRecordSets collection.", - "properties": { + "basePath": "/dns/v2beta1/projects/", + "baseUrl": "https://www.googleapis.com/dns/v2beta1/projects/", + "batchPath": "batch/dns/v2beta1", + "description": "Configures and serves authoritative DNS records.", + "discoveryVersion": "v1", + "documentationLink": "https://developers.google.com/cloud-dns", + "etag": "\"-iA1DTNe4s-I6JZXPt1t1Ypy8IU/LxBnCwWxzMjcp95c1imUQ5t4wRU\"", + "icons": { + "x16": "https://www.gstatic.com/images/branding/product/1x/googleg_16dp.png", + "x32": "https://www.gstatic.com/images/branding/product/1x/googleg_32dp.png" + }, + "id": "dns:v2beta1", + "kind": "discovery#restDescription", + "name": "dns", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "alt": { + "default": "json", + "description": "Data format for the response.", + "enum": [ + "json" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json" + ], + "location": "query", + "type": "string" + }, + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "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.", + "location": "query", + "type": "string" + }, + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", + "location": "query", + "type": "string" + }, + "userIp": { + "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", + "location": "query", + "type": "string" + } + }, + "protocol": "rest", + "resources": { "changes": { - "type": "array", - "description": "The requested changes.", - "items": { - "$ref": "Change" - } + "methods": { + "create": { + "description": "Atomically update the ResourceRecordSet collection.", + "httpMethod": "POST", + "id": "dns.changes.create", + "parameterOrder": [ + "project", + "managedZone" + ], + "parameters": { + "clientOperationId": { + "description": "For mutating operation requests only. An optional identifier specified by the client. Must be unique for operation resources in the Operations collection.", + "location": "query", + "type": "string" + }, + "managedZone": { + "description": "Identifies the managed zone addressed by this request. Can be the managed zone name or id.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Identifies the project addressed by this request.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/managedZones/{managedZone}/changes", + "request": { + "$ref": "Change" + }, + "response": { + "$ref": "Change" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/ndev.clouddns.readwrite" + ] + }, + "get": { + "description": "Fetch the representation of an existing Change.", + "httpMethod": "GET", + "id": "dns.changes.get", + "parameterOrder": [ + "project", + "managedZone", + "changeId" + ], + "parameters": { + "changeId": { + "description": "The identifier of the requested change, from a previous ResourceRecordSetsChangeResponse.", + "location": "path", + "required": true, + "type": "string" + }, + "clientOperationId": { + "description": "For mutating operation requests only. An optional identifier specified by the client. Must be unique for operation resources in the Operations collection.", + "location": "query", + "type": "string" + }, + "managedZone": { + "description": "Identifies the managed zone addressed by this request. Can be the managed zone name or id.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Identifies the project addressed by this request.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/managedZones/{managedZone}/changes/{changeId}", + "response": { + "$ref": "Change" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/ndev.clouddns.readonly", + "https://www.googleapis.com/auth/ndev.clouddns.readwrite" + ] + }, + "list": { + "description": "Enumerate Changes to a ResourceRecordSet collection.", + "httpMethod": "GET", + "id": "dns.changes.list", + "parameterOrder": [ + "project", + "managedZone" + ], + "parameters": { + "managedZone": { + "description": "Identifies the managed zone addressed by this request. Can be the managed zone name or id.", + "location": "path", + "required": true, + "type": "string" + }, + "maxResults": { + "description": "Optional. Maximum number of results to be returned. If unspecified, the server will decide how many results to return.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional. A tag returned by a previous list request that was truncated. Use this parameter to continue a previous list request.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Identifies the project addressed by this request.", + "location": "path", + "required": true, + "type": "string" + }, + "sortBy": { + "default": "CHANGE_SEQUENCE", + "description": "Sorting criterion. The only supported value is change sequence.", + "enum": [ + "CHANGE_SEQUENCE" + ], + "enumDescriptions": [ + "" + ], + "location": "query", + "type": "string" + }, + "sortOrder": { + "description": "Sorting order direction: 'ascending' or 'descending'.", + "location": "query", + "type": "string" + } + }, + "path": "{project}/managedZones/{managedZone}/changes", + "response": { + "$ref": "ChangesListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/ndev.clouddns.readonly", + "https://www.googleapis.com/auth/ndev.clouddns.readwrite" + ] + } + } }, - "header": { - "$ref": "ResponseHeader" - }, - "kind": { - "type": "string", - "description": "Type of resource.", - "default": "dns#changesListResponse" - }, - "nextPageToken": { - "type": "string", - "description": "The presence of this field indicates that there exist more results following your last page of results in pagination order. To fetch them, make another list request using this value as your pagination token.\n\nIn this way you can retrieve the complete contents of even very large collections one page at a time. However, if the contents of the collection change between the first and last paginated list request, the set of all elements returned will be an inconsistent view of the collection. There is no way to retrieve a \"snapshot\" of collections larger than the maximum page size." - } - } - }, - "DnsKey": { - "id": "DnsKey", - "type": "object", - "description": "A DNSSEC key pair.", - "properties": { - "algorithm": { - "type": "string", - "description": "String mnemonic specifying the DNSSEC algorithm of this key. Immutable after creation time.", - "enum": [ - "ECDSAP256SHA256", - "ECDSAP384SHA384", - "RSASHA1", - "RSASHA256", - "RSASHA512" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "" - ] - }, - "creationTime": { - "type": "string", - "description": "The time that this resource was created in the control plane. This is in RFC3339 text format. Output only." - }, - "description": { - "type": "string", - "description": "A mutable string of at most 1024 characters associated with this resource for the user's convenience. Has no effect on the resource's function." - }, - "digests": { - "type": "array", - "description": "Cryptographic hashes of the DNSKEY resource record associated with this DnsKey. These digests are needed to construct a DS record that points at this DNS key. Output only.", - "items": { - "$ref": "DnsKeyDigest" - } - }, - "id": { - "type": "string", - "description": "Unique identifier for the resource; defined by the server (output only)." - }, - "isActive": { - "type": "boolean", - "description": "Active keys will be used to sign subsequent changes to the ManagedZone. Inactive keys will still be present as DNSKEY Resource Records for the use of resolvers validating existing signatures." - }, - "keyLength": { - "type": "integer", - "description": "Length of the key in bits. Specified at creation time then immutable.", - "format": "uint32" - }, - "keyTag": { - "type": "integer", - "description": "The key tag is a non-cryptographic hash of the a DNSKEY resource record associated with this DnsKey. The key tag can be used to identify a DNSKEY more quickly (but it is not a unique identifier). In particular, the key tag is used in a parent zone's DS record to point at the DNSKEY in this child ManagedZone. The key tag is a number in the range [0, 65535] and the algorithm to calculate it is specified in RFC4034 Appendix B. Output only.", - "format": "int32" - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dns#dnsKey\".", - "default": "dns#dnsKey" - }, - "publicKey": { - "type": "string", - "description": "Base64 encoded public half of this key. Output only." - }, - "type": { - "type": "string", - "description": "One of \"KEY_SIGNING\" or \"ZONE_SIGNING\". Keys of type KEY_SIGNING have the Secure Entry Point flag set and, when active, will be used to sign only resource record sets of type DNSKEY. Otherwise, the Secure Entry Point flag will be cleared and this key will be used to sign only resource record sets of other types. Immutable after creation time.", - "enum": [ - "KEY_SIGNING", - "ZONE_SIGNING" - ], - "enumDescriptions": [ - "", - "" - ] - } - } - }, - "DnsKeyDigest": { - "id": "DnsKeyDigest", - "type": "object", - "properties": { - "digest": { - "type": "string", - "description": "The base-16 encoded bytes of this digest. Suitable for use in a DS resource record." - }, - "type": { - "type": "string", - "description": "Specifies the algorithm used to calculate this digest.", - "enum": [ - "SHA1", - "SHA256", - "SHA384" - ], - "enumDescriptions": [ - "", - "", - "" - ] - } - } - }, - "DnsKeySpec": { - "id": "DnsKeySpec", - "type": "object", - "description": "Parameters for DnsKey key generation. Used for generating initial keys for a new ManagedZone and as default when adding a new DnsKey.", - "properties": { - "algorithm": { - "type": "string", - "description": "String mnemonic specifying the DNSSEC algorithm of this key.", - "enum": [ - "ECDSAP256SHA256", - "ECDSAP384SHA384", - "RSASHA1", - "RSASHA256", - "RSASHA512" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "" - ] - }, - "keyLength": { - "type": "integer", - "description": "Length of the keys in bits.", - "format": "uint32" - }, - "keyType": { - "type": "string", - "description": "One of \"KEY_SIGNING\" or \"ZONE_SIGNING\". Keys of type KEY_SIGNING have the Secure Entry Point flag set and, when active, will be used to sign only resource record sets of type DNSKEY. Otherwise, the Secure Entry Point flag will be cleared and this key will be used to sign only resource record sets of other types.", - "enum": [ - "KEY_SIGNING", - "ZONE_SIGNING" - ], - "enumDescriptions": [ - "", - "" - ] - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dns#dnsKeySpec\".", - "default": "dns#dnsKeySpec" - } - } - }, - "DnsKeysListResponse": { - "id": "DnsKeysListResponse", - "type": "object", - "description": "The response to a request to enumerate DnsKeys in a ManagedZone.", - "properties": { "dnsKeys": { - "type": "array", - "description": "The requested resources.", - "items": { - "$ref": "DnsKey" - } + "methods": { + "get": { + "description": "Fetch the representation of an existing DnsKey.", + "httpMethod": "GET", + "id": "dns.dnsKeys.get", + "parameterOrder": [ + "project", + "managedZone", + "dnsKeyId" + ], + "parameters": { + "clientOperationId": { + "description": "For mutating operation requests only. An optional identifier specified by the client. Must be unique for operation resources in the Operations collection.", + "location": "query", + "type": "string" + }, + "digestType": { + "description": "An optional comma-separated list of digest types to compute and display for key signing keys. If omitted, the recommended digest type will be computed and displayed.", + "location": "query", + "type": "string" + }, + "dnsKeyId": { + "description": "The identifier of the requested DnsKey.", + "location": "path", + "required": true, + "type": "string" + }, + "managedZone": { + "description": "Identifies the managed zone addressed by this request. Can be the managed zone name or id.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Identifies the project addressed by this request.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/managedZones/{managedZone}/dnsKeys/{dnsKeyId}", + "response": { + "$ref": "DnsKey" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/ndev.clouddns.readonly", + "https://www.googleapis.com/auth/ndev.clouddns.readwrite" + ] + }, + "list": { + "description": "Enumerate DnsKeys to a ResourceRecordSet collection.", + "httpMethod": "GET", + "id": "dns.dnsKeys.list", + "parameterOrder": [ + "project", + "managedZone" + ], + "parameters": { + "digestType": { + "description": "An optional comma-separated list of digest types to compute and display for key signing keys. If omitted, the recommended digest type will be computed and displayed.", + "location": "query", + "type": "string" + }, + "managedZone": { + "description": "Identifies the managed zone addressed by this request. Can be the managed zone name or id.", + "location": "path", + "required": true, + "type": "string" + }, + "maxResults": { + "description": "Optional. Maximum number of results to be returned. If unspecified, the server will decide how many results to return.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional. A tag returned by a previous list request that was truncated. Use this parameter to continue a previous list request.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Identifies the project addressed by this request.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/managedZones/{managedZone}/dnsKeys", + "response": { + "$ref": "DnsKeysListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/ndev.clouddns.readonly", + "https://www.googleapis.com/auth/ndev.clouddns.readwrite" + ] + } + } }, - "header": { - "$ref": "ResponseHeader" - }, - "kind": { - "type": "string", - "description": "Type of resource.", - "default": "dns#dnsKeysListResponse" - }, - "nextPageToken": { - "type": "string", - "description": "The presence of this field indicates that there exist more results following your last page of results in pagination order. To fetch them, make another list request using this value as your pagination token.\n\nIn this way you can retrieve the complete contents of even very large collections one page at a time. However, if the contents of the collection change between the first and last paginated list request, the set of all elements returned will be an inconsistent view of the collection. There is no way to retrieve a \"snapshot\" of collections larger than the maximum page size." - } - } - }, - "ManagedZone": { - "id": "ManagedZone", - "type": "object", - "description": "A zone is a subtree of the DNS namespace under one administrative responsibility. A ManagedZone is a resource that represents a DNS zone hosted by the Cloud DNS service.", - "properties": { - "creationTime": { - "type": "string", - "description": "The time that this resource was created on the server. This is in RFC3339 text format. Output only." - }, - "description": { - "type": "string", - "description": "A mutable string of at most 1024 characters associated with this resource for the user's convenience. Has no effect on the managed zone's function." - }, - "dnsName": { - "type": "string", - "description": "The DNS name of this managed zone, for instance \"example.com.\"." - }, - "dnssecConfig": { - "$ref": "ManagedZoneDnsSecConfig", - "description": "DNSSEC configuration." - }, - "id": { - "type": "string", - "description": "Unique identifier for the resource; defined by the server (output only)", - "format": "uint64" - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dns#managedZone\".", - "default": "dns#managedZone" - }, - "name": { - "type": "string", - "description": "User assigned name for this resource. Must be unique within the project. The name must be 1-63 characters long, must begin with a letter, end with a letter or digit, and only contain lowercase letters, digits or dashes." - }, - "nameServerSet": { - "type": "string", - "description": "Optionally specifies the NameServerSet for this ManagedZone. A NameServerSet is a set of DNS name servers that all host the same ManagedZones. Most users will leave this field unset." - }, - "nameServers": { - "type": "array", - "description": "Delegate your managed_zone to these virtual name servers; defined by the server (output only)", - "items": { - "type": "string" - } - } - } - }, - "ManagedZoneDnsSecConfig": { - "id": "ManagedZoneDnsSecConfig", - "type": "object", - "properties": { - "defaultKeySpecs": { - "type": "array", - "description": "Specifies parameters that will be used for generating initial DnsKeys for this ManagedZone. Output only while state is not OFF.", - "items": { - "$ref": "DnsKeySpec" - } - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dns#managedZoneDnsSecConfig\".", - "default": "dns#managedZoneDnsSecConfig" - }, - "nonExistence": { - "type": "string", - "description": "Specifies the mechanism used to provide authenticated denial-of-existence responses. Output only while state is not OFF.", - "enum": [ - "NSEC", - "NSEC3" - ], - "enumDescriptions": [ - "", - "" - ] - }, - "state": { - "type": "string", - "description": "Specifies whether DNSSEC is enabled, and what mode it is in.", - "enum": [ - "OFF", - "ON", - "TRANSFER" - ], - "enumDescriptions": [ - "", - "", - "" - ] - } - } - }, - "ManagedZoneOperationsListResponse": { - "id": "ManagedZoneOperationsListResponse", - "type": "object", - "properties": { - "header": { - "$ref": "ResponseHeader" - }, - "kind": { - "type": "string", - "description": "Type of resource.", - "default": "dns#managedZoneOperationsListResponse" - }, - "nextPageToken": { - "type": "string", - "description": "The presence of this field indicates that there exist more results following your last page of results in pagination order. To fetch them, make another list request using this value as your page token.\n\nIn this way you can retrieve the complete contents of even very large collections one page at a time. However, if the contents of the collection change between the first and last paginated list request, the set of all elements returned will be an inconsistent view of the collection. There is no way to retrieve a consistent snapshot of a collection larger than the maximum page size." - }, - "operations": { - "type": "array", - "description": "The operation resources.", - "items": { - "$ref": "Operation" - } - } - } - }, - "ManagedZonesDeleteResponse": { - "id": "ManagedZonesDeleteResponse", - "type": "object", - "properties": { - "header": { - "$ref": "ResponseHeader" - } - } - }, - "ManagedZonesListResponse": { - "id": "ManagedZonesListResponse", - "type": "object", - "properties": { - "header": { - "$ref": "ResponseHeader" - }, - "kind": { - "type": "string", - "description": "Type of resource.", - "default": "dns#managedZonesListResponse" + "managedZoneOperations": { + "methods": { + "get": { + "description": "Fetch the representation of an existing Operation.", + "httpMethod": "GET", + "id": "dns.managedZoneOperations.get", + "parameterOrder": [ + "project", + "managedZone", + "operation" + ], + "parameters": { + "clientOperationId": { + "description": "For mutating operation requests only. An optional identifier specified by the client. Must be unique for operation resources in the Operations collection.", + "location": "query", + "type": "string" + }, + "managedZone": { + "description": "Identifies the managed zone addressed by this request.", + "location": "path", + "required": true, + "type": "string" + }, + "operation": { + "description": "Identifies the operation addressed by this request.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Identifies the project addressed by this request.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/managedZones/{managedZone}/operations/{operation}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/ndev.clouddns.readonly", + "https://www.googleapis.com/auth/ndev.clouddns.readwrite" + ] + }, + "list": { + "description": "Enumerate Operations for the given ManagedZone.", + "httpMethod": "GET", + "id": "dns.managedZoneOperations.list", + "parameterOrder": [ + "project", + "managedZone" + ], + "parameters": { + "managedZone": { + "description": "Identifies the managed zone addressed by this request.", + "location": "path", + "required": true, + "type": "string" + }, + "maxResults": { + "description": "Optional. Maximum number of results to be returned. If unspecified, the server will decide how many results to return.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional. A tag returned by a previous list request that was truncated. Use this parameter to continue a previous list request.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Identifies the project addressed by this request.", + "location": "path", + "required": true, + "type": "string" + }, + "sortBy": { + "default": "START_TIME", + "description": "Sorting criterion. The only supported values are START_TIME and ID.", + "enum": [ + "ID", + "START_TIME" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + } + }, + "path": "{project}/managedZones/{managedZone}/operations", + "response": { + "$ref": "ManagedZoneOperationsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/ndev.clouddns.readonly", + "https://www.googleapis.com/auth/ndev.clouddns.readwrite" + ] + } + } }, "managedZones": { - "type": "array", - "description": "The managed zone resources.", - "items": { - "$ref": "ManagedZone" - } + "methods": { + "create": { + "description": "Create a new ManagedZone.", + "httpMethod": "POST", + "id": "dns.managedZones.create", + "parameterOrder": [ + "project" + ], + "parameters": { + "clientOperationId": { + "description": "For mutating operation requests only. An optional identifier specified by the client. Must be unique for operation resources in the Operations collection.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Identifies the project addressed by this request.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/managedZones", + "request": { + "$ref": "ManagedZone" + }, + "response": { + "$ref": "ManagedZone" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/ndev.clouddns.readwrite" + ] + }, + "delete": { + "description": "Delete a previously created ManagedZone.", + "httpMethod": "DELETE", + "id": "dns.managedZones.delete", + "parameterOrder": [ + "project", + "managedZone" + ], + "parameters": { + "clientOperationId": { + "description": "For mutating operation requests only. An optional identifier specified by the client. Must be unique for operation resources in the Operations collection.", + "location": "query", + "type": "string" + }, + "managedZone": { + "description": "Identifies the managed zone addressed by this request. Can be the managed zone name or id.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Identifies the project addressed by this request.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/managedZones/{managedZone}", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/ndev.clouddns.readwrite" + ] + }, + "get": { + "description": "Fetch the representation of an existing ManagedZone.", + "httpMethod": "GET", + "id": "dns.managedZones.get", + "parameterOrder": [ + "project", + "managedZone" + ], + "parameters": { + "clientOperationId": { + "description": "For mutating operation requests only. An optional identifier specified by the client. Must be unique for operation resources in the Operations collection.", + "location": "query", + "type": "string" + }, + "managedZone": { + "description": "Identifies the managed zone addressed by this request. Can be the managed zone name or id.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Identifies the project addressed by this request.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/managedZones/{managedZone}", + "response": { + "$ref": "ManagedZone" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/ndev.clouddns.readonly", + "https://www.googleapis.com/auth/ndev.clouddns.readwrite" + ] + }, + "list": { + "description": "Enumerate ManagedZones that have been created but not yet deleted.", + "httpMethod": "GET", + "id": "dns.managedZones.list", + "parameterOrder": [ + "project" + ], + "parameters": { + "dnsName": { + "description": "Restricts the list to return only zones with this domain name.", + "location": "query", + "type": "string" + }, + "maxResults": { + "description": "Optional. Maximum number of results to be returned. If unspecified, the server will decide how many results to return.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional. A tag returned by a previous list request that was truncated. Use this parameter to continue a previous list request.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Identifies the project addressed by this request.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/managedZones", + "response": { + "$ref": "ManagedZonesListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/ndev.clouddns.readonly", + "https://www.googleapis.com/auth/ndev.clouddns.readwrite" + ] + }, + "patch": { + "description": "Update an existing ManagedZone. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "dns.managedZones.patch", + "parameterOrder": [ + "project", + "managedZone" + ], + "parameters": { + "clientOperationId": { + "description": "For mutating operation requests only. An optional identifier specified by the client. Must be unique for operation resources in the Operations collection.", + "location": "query", + "type": "string" + }, + "managedZone": { + "description": "Identifies the managed zone addressed by this request. Can be the managed zone name or id.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Identifies the project addressed by this request.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/managedZones/{managedZone}", + "request": { + "$ref": "ManagedZone" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/ndev.clouddns.readwrite" + ] + }, + "update": { + "description": "Update an existing ManagedZone.", + "httpMethod": "PUT", + "id": "dns.managedZones.update", + "parameterOrder": [ + "project", + "managedZone" + ], + "parameters": { + "clientOperationId": { + "description": "For mutating operation requests only. An optional identifier specified by the client. Must be unique for operation resources in the Operations collection.", + "location": "query", + "type": "string" + }, + "managedZone": { + "description": "Identifies the managed zone addressed by this request. Can be the managed zone name or id.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Identifies the project addressed by this request.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/managedZones/{managedZone}", + "request": { + "$ref": "ManagedZone" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/ndev.clouddns.readwrite" + ] + } + } }, - "nextPageToken": { - "type": "string", - "description": "The presence of this field indicates that there exist more results following your last page of results in pagination order. To fetch them, make another list request using this value as your page token.\n\nIn this way you can retrieve the complete contents of even very large collections one page at a time. However, if the contents of the collection change between the first and last paginated list request, the set of all elements returned will be an inconsistent view of the collection. There is no way to retrieve a consistent snapshot of a collection larger than the maximum page size." + "projects": { + "methods": { + "get": { + "description": "Fetch the representation of an existing Project.", + "httpMethod": "GET", + "id": "dns.projects.get", + "parameterOrder": [ + "project" + ], + "parameters": { + "clientOperationId": { + "description": "For mutating operation requests only. An optional identifier specified by the client. Must be unique for operation resources in the Operations collection.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Identifies the project addressed by this request.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}", + "response": { + "$ref": "Project" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/ndev.clouddns.readonly", + "https://www.googleapis.com/auth/ndev.clouddns.readwrite" + ] + } + } + }, + "resourceRecordSets": { + "methods": { + "list": { + "description": "Enumerate ResourceRecordSets that have been created but not yet deleted.", + "httpMethod": "GET", + "id": "dns.resourceRecordSets.list", + "parameterOrder": [ + "project", + "managedZone" + ], + "parameters": { + "managedZone": { + "description": "Identifies the managed zone addressed by this request. Can be the managed zone name or id.", + "location": "path", + "required": true, + "type": "string" + }, + "maxResults": { + "description": "Optional. Maximum number of results to be returned. If unspecified, the server will decide how many results to return.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "name": { + "description": "Restricts the list to return only records with this fully qualified domain name.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Optional. A tag returned by a previous list request that was truncated. Use this parameter to continue a previous list request.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Identifies the project addressed by this request.", + "location": "path", + "required": true, + "type": "string" + }, + "type": { + "description": "Restricts the list to return only records of this type. If present, the \"name\" parameter must also be present.", + "location": "query", + "type": "string" + } + }, + "path": "{project}/managedZones/{managedZone}/rrsets", + "response": { + "$ref": "ResourceRecordSetsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/ndev.clouddns.readonly", + "https://www.googleapis.com/auth/ndev.clouddns.readwrite" + ] + } + } } - } }, - "Operation": { - "id": "Operation", - "type": "object", - "description": "An operation represents a successful mutation performed on a Cloud DNS resource. Operations provide: - An audit log of server resource mutations. - A way to recover/retry API calls in the case where the response is never received by the caller. Use the caller specified client_operation_id.", - "properties": { - "dnsKeyContext": { - "$ref": "OperationDnsKeyContext", - "description": "Only populated if the operation targeted a DnsKey (output only)." + "revision": "20180314", + "rootUrl": "https://www.googleapis.com/", + "schemas": { + "Change": { + "description": "An atomic update to a collection of ResourceRecordSets.", + "id": "Change", + "properties": { + "additions": { + "description": "Which ResourceRecordSets to add?", + "items": { + "$ref": "ResourceRecordSet" + }, + "type": "array" + }, + "deletions": { + "description": "Which ResourceRecordSets to remove? Must match existing data exactly.", + "items": { + "$ref": "ResourceRecordSet" + }, + "type": "array" + }, + "id": { + "description": "Unique identifier for the resource; defined by the server (output only).", + "type": "string" + }, + "isServing": { + "description": "If the DNS queries for the zone will be served.", + "type": "boolean" + }, + "kind": { + "default": "dns#change", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dns#change\".", + "type": "string" + }, + "startTime": { + "description": "The time that this operation was started by the server (output only). This is in RFC3339 text format.", + "type": "string" + }, + "status": { + "description": "Status of the operation (output only).", + "enum": [ + "DONE", + "PENDING" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + } + }, + "type": "object" }, - "id": { - "type": "string", - "description": "Unique identifier for the resource. This is the client_operation_id if the client specified it when the mutation was initiated, otherwise, it is generated by the server. The name must be 1-63 characters long and match the regular expression [-a-z0-9]? (output only)" + "ChangesListResponse": { + "description": "The response to a request to enumerate Changes to a ResourceRecordSets collection.", + "id": "ChangesListResponse", + "properties": { + "changes": { + "description": "The requested changes.", + "items": { + "$ref": "Change" + }, + "type": "array" + }, + "header": { + "$ref": "ResponseHeader" + }, + "kind": { + "default": "dns#changesListResponse", + "description": "Type of resource.", + "type": "string" + }, + "nextPageToken": { + "description": "The presence of this field indicates that there exist more results following your last page of results in pagination order. To fetch them, make another list request using this value as your pagination token.\n\nIn this way you can retrieve the complete contents of even very large collections one page at a time. However, if the contents of the collection change between the first and last paginated list request, the set of all elements returned will be an inconsistent view of the collection. There is no way to retrieve a \"snapshot\" of collections larger than the maximum page size.", + "type": "string" + } + }, + "type": "object" }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dns#operation\".", - "default": "dns#operation" + "DnsKey": { + "description": "A DNSSEC key pair.", + "id": "DnsKey", + "properties": { + "algorithm": { + "description": "String mnemonic specifying the DNSSEC algorithm of this key. Immutable after creation time.", + "enum": [ + "ECDSAP256SHA256", + "ECDSAP384SHA384", + "RSASHA1", + "RSASHA256", + "RSASHA512" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "creationTime": { + "description": "The time that this resource was created in the control plane. This is in RFC3339 text format. Output only.", + "type": "string" + }, + "description": { + "description": "A mutable string of at most 1024 characters associated with this resource for the user's convenience. Has no effect on the resource's function.", + "type": "string" + }, + "digests": { + "description": "Cryptographic hashes of the DNSKEY resource record associated with this DnsKey. These digests are needed to construct a DS record that points at this DNS key. Output only.", + "items": { + "$ref": "DnsKeyDigest" + }, + "type": "array" + }, + "id": { + "description": "Unique identifier for the resource; defined by the server (output only).", + "type": "string" + }, + "isActive": { + "description": "Active keys will be used to sign subsequent changes to the ManagedZone. Inactive keys will still be present as DNSKEY Resource Records for the use of resolvers validating existing signatures.", + "type": "boolean" + }, + "keyLength": { + "description": "Length of the key in bits. Specified at creation time then immutable.", + "format": "uint32", + "type": "integer" + }, + "keyTag": { + "description": "The key tag is a non-cryptographic hash of the a DNSKEY resource record associated with this DnsKey. The key tag can be used to identify a DNSKEY more quickly (but it is not a unique identifier). In particular, the key tag is used in a parent zone's DS record to point at the DNSKEY in this child ManagedZone. The key tag is a number in the range [0, 65535] and the algorithm to calculate it is specified in RFC4034 Appendix B. Output only.", + "format": "int32", + "type": "integer" + }, + "kind": { + "default": "dns#dnsKey", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dns#dnsKey\".", + "type": "string" + }, + "publicKey": { + "description": "Base64 encoded public half of this key. Output only.", + "type": "string" + }, + "type": { + "description": "One of \"KEY_SIGNING\" or \"ZONE_SIGNING\". Keys of type KEY_SIGNING have the Secure Entry Point flag set and, when active, will be used to sign only resource record sets of type DNSKEY. Otherwise, the Secure Entry Point flag will be cleared and this key will be used to sign only resource record sets of other types. Immutable after creation time.", + "enum": [ + "KEY_SIGNING", + "ZONE_SIGNING" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + } + }, + "type": "object" }, - "startTime": { - "type": "string", - "description": "The time that this operation was started by the server. This is in RFC3339 text format (output only)." + "DnsKeyDigest": { + "id": "DnsKeyDigest", + "properties": { + "digest": { + "description": "The base-16 encoded bytes of this digest. Suitable for use in a DS resource record.", + "type": "string" + }, + "type": { + "description": "Specifies the algorithm used to calculate this digest.", + "enum": [ + "SHA1", + "SHA256", + "SHA384" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + } + }, + "type": "object" }, - "status": { - "type": "string", - "description": "Status of the operation. Can be one of the following: \"PENDING\" or \"DONE\" (output only).", - "enum": [ - "DONE", - "PENDING" - ], - "enumDescriptions": [ - "", - "" - ] + "DnsKeySpec": { + "description": "Parameters for DnsKey key generation. Used for generating initial keys for a new ManagedZone and as default when adding a new DnsKey.", + "id": "DnsKeySpec", + "properties": { + "algorithm": { + "description": "String mnemonic specifying the DNSSEC algorithm of this key.", + "enum": [ + "ECDSAP256SHA256", + "ECDSAP384SHA384", + "RSASHA1", + "RSASHA256", + "RSASHA512" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "keyLength": { + "description": "Length of the keys in bits.", + "format": "uint32", + "type": "integer" + }, + "keyType": { + "description": "One of \"KEY_SIGNING\" or \"ZONE_SIGNING\". Keys of type KEY_SIGNING have the Secure Entry Point flag set and, when active, will be used to sign only resource record sets of type DNSKEY. Otherwise, the Secure Entry Point flag will be cleared and this key will be used to sign only resource record sets of other types.", + "enum": [ + "KEY_SIGNING", + "ZONE_SIGNING" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "kind": { + "default": "dns#dnsKeySpec", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dns#dnsKeySpec\".", + "type": "string" + } + }, + "type": "object" }, - "type": { - "type": "string", - "description": "Type of the operation. Operations include insert, update, and delete (output only)." + "DnsKeysListResponse": { + "description": "The response to a request to enumerate DnsKeys in a ManagedZone.", + "id": "DnsKeysListResponse", + "properties": { + "dnsKeys": { + "description": "The requested resources.", + "items": { + "$ref": "DnsKey" + }, + "type": "array" + }, + "header": { + "$ref": "ResponseHeader" + }, + "kind": { + "default": "dns#dnsKeysListResponse", + "description": "Type of resource.", + "type": "string" + }, + "nextPageToken": { + "description": "The presence of this field indicates that there exist more results following your last page of results in pagination order. To fetch them, make another list request using this value as your pagination token.\n\nIn this way you can retrieve the complete contents of even very large collections one page at a time. However, if the contents of the collection change between the first and last paginated list request, the set of all elements returned will be an inconsistent view of the collection. There is no way to retrieve a \"snapshot\" of collections larger than the maximum page size.", + "type": "string" + } + }, + "type": "object" }, - "user": { - "type": "string", - "description": "User who requested the operation, for example: user@example.com. cloud-dns-system for operations automatically done by the system. (output only)" + "ManagedZone": { + "description": "A zone is a subtree of the DNS namespace under one administrative responsibility. A ManagedZone is a resource that represents a DNS zone hosted by the Cloud DNS service.", + "id": "ManagedZone", + "properties": { + "creationTime": { + "description": "The time that this resource was created on the server. This is in RFC3339 text format. Output only.", + "type": "string" + }, + "description": { + "description": "A mutable string of at most 1024 characters associated with this resource for the user's convenience. Has no effect on the managed zone's function.", + "type": "string" + }, + "dnsName": { + "description": "The DNS name of this managed zone, for instance \"example.com.\".", + "type": "string" + }, + "dnssecConfig": { + "$ref": "ManagedZoneDnsSecConfig", + "description": "DNSSEC configuration." + }, + "id": { + "description": "Unique identifier for the resource; defined by the server (output only)", + "format": "uint64", + "type": "string" + }, + "kind": { + "default": "dns#managedZone", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dns#managedZone\".", + "type": "string" + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "User labels.", + "type": "object" + }, + "name": { + "description": "User assigned name for this resource. Must be unique within the project. The name must be 1-63 characters long, must begin with a letter, end with a letter or digit, and only contain lowercase letters, digits or dashes.", + "type": "string" + }, + "nameServerSet": { + "description": "Optionally specifies the NameServerSet for this ManagedZone. A NameServerSet is a set of DNS name servers that all host the same ManagedZones. Most users will leave this field unset.", + "type": "string" + }, + "nameServers": { + "description": "Delegate your managed_zone to these virtual name servers; defined by the server (output only)", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" }, - "zoneContext": { - "$ref": "OperationManagedZoneContext", - "description": "Only populated if the operation targeted a ManagedZone (output only)." + "ManagedZoneDnsSecConfig": { + "id": "ManagedZoneDnsSecConfig", + "properties": { + "defaultKeySpecs": { + "description": "Specifies parameters that will be used for generating initial DnsKeys for this ManagedZone. Output only while state is not OFF.", + "items": { + "$ref": "DnsKeySpec" + }, + "type": "array" + }, + "kind": { + "default": "dns#managedZoneDnsSecConfig", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dns#managedZoneDnsSecConfig\".", + "type": "string" + }, + "nonExistence": { + "description": "Specifies the mechanism used to provide authenticated denial-of-existence responses. Output only while state is not OFF.", + "enum": [ + "NSEC", + "NSEC3" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "state": { + "description": "Specifies whether DNSSEC is enabled, and what mode it is in.", + "enum": [ + "OFF", + "ON", + "TRANSFER" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "ManagedZoneOperationsListResponse": { + "id": "ManagedZoneOperationsListResponse", + "properties": { + "header": { + "$ref": "ResponseHeader" + }, + "kind": { + "default": "dns#managedZoneOperationsListResponse", + "description": "Type of resource.", + "type": "string" + }, + "nextPageToken": { + "description": "The presence of this field indicates that there exist more results following your last page of results in pagination order. To fetch them, make another list request using this value as your page token.\n\nIn this way you can retrieve the complete contents of even very large collections one page at a time. However, if the contents of the collection change between the first and last paginated list request, the set of all elements returned will be an inconsistent view of the collection. There is no way to retrieve a consistent snapshot of a collection larger than the maximum page size.", + "type": "string" + }, + "operations": { + "description": "The operation resources.", + "items": { + "$ref": "Operation" + }, + "type": "array" + } + }, + "type": "object" + }, + "ManagedZonesListResponse": { + "id": "ManagedZonesListResponse", + "properties": { + "header": { + "$ref": "ResponseHeader" + }, + "kind": { + "default": "dns#managedZonesListResponse", + "description": "Type of resource.", + "type": "string" + }, + "managedZones": { + "description": "The managed zone resources.", + "items": { + "$ref": "ManagedZone" + }, + "type": "array" + }, + "nextPageToken": { + "description": "The presence of this field indicates that there exist more results following your last page of results in pagination order. To fetch them, make another list request using this value as your page token.\n\nIn this way you can retrieve the complete contents of even very large collections one page at a time. However, if the contents of the collection change between the first and last paginated list request, the set of all elements returned will be an inconsistent view of the collection. There is no way to retrieve a consistent snapshot of a collection larger than the maximum page size.", + "type": "string" + } + }, + "type": "object" + }, + "Operation": { + "description": "An operation represents a successful mutation performed on a Cloud DNS resource. Operations provide: - An audit log of server resource mutations. - A way to recover/retry API calls in the case where the response is never received by the caller. Use the caller specified client_operation_id.", + "id": "Operation", + "properties": { + "dnsKeyContext": { + "$ref": "OperationDnsKeyContext", + "description": "Only populated if the operation targeted a DnsKey (output only)." + }, + "id": { + "description": "Unique identifier for the resource. This is the client_operation_id if the client specified it when the mutation was initiated, otherwise, it is generated by the server. The name must be 1-63 characters long and match the regular expression [-a-z0-9]? (output only)", + "type": "string" + }, + "kind": { + "default": "dns#operation", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dns#operation\".", + "type": "string" + }, + "startTime": { + "description": "The time that this operation was started by the server. This is in RFC3339 text format (output only).", + "type": "string" + }, + "status": { + "description": "Status of the operation. Can be one of the following: \"PENDING\" or \"DONE\" (output only).", + "enum": [ + "DONE", + "PENDING" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "type": { + "description": "Type of the operation. Operations include insert, update, and delete (output only).", + "type": "string" + }, + "user": { + "description": "User who requested the operation, for example: user@example.com. cloud-dns-system for operations automatically done by the system. (output only)", + "type": "string" + }, + "zoneContext": { + "$ref": "OperationManagedZoneContext", + "description": "Only populated if the operation targeted a ManagedZone (output only)." + } + }, + "type": "object" + }, + "OperationDnsKeyContext": { + "id": "OperationDnsKeyContext", + "properties": { + "newValue": { + "$ref": "DnsKey", + "description": "The post-operation DnsKey resource." + }, + "oldValue": { + "$ref": "DnsKey", + "description": "The pre-operation DnsKey resource." + } + }, + "type": "object" + }, + "OperationManagedZoneContext": { + "id": "OperationManagedZoneContext", + "properties": { + "newValue": { + "$ref": "ManagedZone", + "description": "The post-operation ManagedZone resource." + }, + "oldValue": { + "$ref": "ManagedZone", + "description": "The pre-operation ManagedZone resource." + } + }, + "type": "object" + }, + "Project": { + "description": "A project resource. The project is a top level container for resources including Cloud DNS ManagedZones. Projects can be created only in the APIs console.", + "id": "Project", + "properties": { + "id": { + "description": "User assigned unique identifier for the resource (output only).", + "type": "string" + }, + "kind": { + "default": "dns#project", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dns#project\".", + "type": "string" + }, + "number": { + "description": "Unique numeric identifier for the resource; defined by the server (output only).", + "format": "uint64", + "type": "string" + }, + "quota": { + "$ref": "Quota", + "description": "Quotas assigned to this project (output only)." + } + }, + "type": "object" + }, + "Quota": { + "description": "Limits associated with a Project.", + "id": "Quota", + "properties": { + "dnsKeysPerManagedZone": { + "description": "Maximum allowed number of DnsKeys per ManagedZone.", + "format": "int32", + "type": "integer" + }, + "kind": { + "default": "dns#quota", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dns#quota\".", + "type": "string" + }, + "managedZones": { + "description": "Maximum allowed number of managed zones in the project.", + "format": "int32", + "type": "integer" + }, + "resourceRecordsPerRrset": { + "description": "Maximum allowed number of ResourceRecords per ResourceRecordSet.", + "format": "int32", + "type": "integer" + }, + "rrsetAdditionsPerChange": { + "description": "Maximum allowed number of ResourceRecordSets to add per ChangesCreateRequest.", + "format": "int32", + "type": "integer" + }, + "rrsetDeletionsPerChange": { + "description": "Maximum allowed number of ResourceRecordSets to delete per ChangesCreateRequest.", + "format": "int32", + "type": "integer" + }, + "rrsetsPerManagedZone": { + "description": "Maximum allowed number of ResourceRecordSets per zone in the project.", + "format": "int32", + "type": "integer" + }, + "totalRrdataSizePerChange": { + "description": "Maximum allowed size for total rrdata in one ChangesCreateRequest in bytes.", + "format": "int32", + "type": "integer" + }, + "whitelistedKeySpecs": { + "description": "DNSSEC algorithm and key length types that can be used for DnsKeys.", + "items": { + "$ref": "DnsKeySpec" + }, + "type": "array" + } + }, + "type": "object" + }, + "ResourceRecordSet": { + "description": "A unit of data that will be returned by the DNS servers.", + "id": "ResourceRecordSet", + "properties": { + "kind": { + "default": "dns#resourceRecordSet", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dns#resourceRecordSet\".", + "type": "string" + }, + "name": { + "description": "For example, www.example.com.", + "type": "string" + }, + "rrdatas": { + "description": "As defined in RFC 1035 (section 5) and RFC 1034 (section 3.6.1).", + "items": { + "type": "string" + }, + "type": "array" + }, + "signatureRrdatas": { + "description": "As defined in RFC 4034 (section 3.2).", + "items": { + "type": "string" + }, + "type": "array" + }, + "ttl": { + "description": "Number of seconds that this ResourceRecordSet can be cached by resolvers.", + "format": "int32", + "type": "integer" + }, + "type": { + "description": "The identifier of a supported record type, for example, A, AAAA, MX, TXT, and so on.", + "type": "string" + } + }, + "type": "object" + }, + "ResourceRecordSetsListResponse": { + "id": "ResourceRecordSetsListResponse", + "properties": { + "header": { + "$ref": "ResponseHeader" + }, + "kind": { + "default": "dns#resourceRecordSetsListResponse", + "description": "Type of resource.", + "type": "string" + }, + "nextPageToken": { + "description": "The presence of this field indicates that there exist more results following your last page of results in pagination order. To fetch them, make another list request using this value as your pagination token.\n\nIn this way you can retrieve the complete contents of even very large collections one page at a time. However, if the contents of the collection change between the first and last paginated list request, the set of all elements returned will be an inconsistent view of the collection. There is no way to retrieve a consistent snapshot of a collection larger than the maximum page size.", + "type": "string" + }, + "rrsets": { + "description": "The resource record set resources.", + "items": { + "$ref": "ResourceRecordSet" + }, + "type": "array" + } + }, + "type": "object" + }, + "ResponseHeader": { + "description": "Elements common to every response.", + "id": "ResponseHeader", + "properties": { + "operationId": { + "description": "For mutating operation requests that completed successfully. This is the client_operation_id if the client specified it, otherwise it is generated by the server (output only).", + "type": "string" + } + }, + "type": "object" } - } }, - "OperationDnsKeyContext": { - "id": "OperationDnsKeyContext", - "type": "object", - "properties": { - "newValue": { - "$ref": "DnsKey", - "description": "The post-operation DnsKey resource." - }, - "oldValue": { - "$ref": "DnsKey", - "description": "The pre-operation DnsKey resource." - } - } - }, - "OperationManagedZoneContext": { - "id": "OperationManagedZoneContext", - "type": "object", - "properties": { - "newValue": { - "$ref": "ManagedZone", - "description": "The post-operation ManagedZone resource." - }, - "oldValue": { - "$ref": "ManagedZone", - "description": "The pre-operation ManagedZone resource." - } - } - }, - "Project": { - "id": "Project", - "type": "object", - "description": "A project resource. The project is a top level container for resources including Cloud DNS ManagedZones. Projects can be created only in the APIs console.", - "properties": { - "id": { - "type": "string", - "description": "User assigned unique identifier for the resource (output only)." - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dns#project\".", - "default": "dns#project" - }, - "number": { - "type": "string", - "description": "Unique numeric identifier for the resource; defined by the server (output only).", - "format": "uint64" - }, - "quota": { - "$ref": "Quota", - "description": "Quotas assigned to this project (output only)." - } - } - }, - "Quota": { - "id": "Quota", - "type": "object", - "description": "Limits associated with a Project.", - "properties": { - "dnsKeysPerManagedZone": { - "type": "integer", - "description": "Maximum allowed number of DnsKeys per ManagedZone.", - "format": "int32" - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dns#quota\".", - "default": "dns#quota" - }, - "managedZones": { - "type": "integer", - "description": "Maximum allowed number of managed zones in the project.", - "format": "int32" - }, - "resourceRecordsPerRrset": { - "type": "integer", - "description": "Maximum allowed number of ResourceRecords per ResourceRecordSet.", - "format": "int32" - }, - "rrsetAdditionsPerChange": { - "type": "integer", - "description": "Maximum allowed number of ResourceRecordSets to add per ChangesCreateRequest.", - "format": "int32" - }, - "rrsetDeletionsPerChange": { - "type": "integer", - "description": "Maximum allowed number of ResourceRecordSets to delete per ChangesCreateRequest.", - "format": "int32" - }, - "rrsetsPerManagedZone": { - "type": "integer", - "description": "Maximum allowed number of ResourceRecordSets per zone in the project.", - "format": "int32" - }, - "totalRrdataSizePerChange": { - "type": "integer", - "description": "Maximum allowed size for total rrdata in one ChangesCreateRequest in bytes.", - "format": "int32" - }, - "whitelistedKeySpecs": { - "type": "array", - "description": "DNSSEC algorithm and key length types that can be used for DnsKeys.", - "items": { - "$ref": "DnsKeySpec" - } - } - } - }, - "ResourceRecordSet": { - "id": "ResourceRecordSet", - "type": "object", - "description": "A unit of data that will be returned by the DNS servers.", - "properties": { - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"dns#resourceRecordSet\".", - "default": "dns#resourceRecordSet" - }, - "name": { - "type": "string", - "description": "For example, www.example.com." - }, - "rrdatas": { - "type": "array", - "description": "As defined in RFC 1035 (section 5) and RFC 1034 (section 3.6.1).", - "items": { - "type": "string" - } - }, - "signatureRrdatas": { - "type": "array", - "description": "As defined in RFC 4034 (section 3.2).", - "items": { - "type": "string" - } - }, - "ttl": { - "type": "integer", - "description": "Number of seconds that this ResourceRecordSet can be cached by resolvers.", - "format": "int32" - }, - "type": { - "type": "string", - "description": "The identifier of a supported record type, for example, A, AAAA, MX, TXT, and so on." - } - } - }, - "ResourceRecordSetsListResponse": { - "id": "ResourceRecordSetsListResponse", - "type": "object", - "properties": { - "header": { - "$ref": "ResponseHeader" - }, - "kind": { - "type": "string", - "description": "Type of resource.", - "default": "dns#resourceRecordSetsListResponse" - }, - "nextPageToken": { - "type": "string", - "description": "The presence of this field indicates that there exist more results following your last page of results in pagination order. To fetch them, make another list request using this value as your pagination token.\n\nIn this way you can retrieve the complete contents of even very large collections one page at a time. However, if the contents of the collection change between the first and last paginated list request, the set of all elements returned will be an inconsistent view of the collection. There is no way to retrieve a consistent snapshot of a collection larger than the maximum page size." - }, - "rrsets": { - "type": "array", - "description": "The resource record set resources.", - "items": { - "$ref": "ResourceRecordSet" - } - } - } - }, - "ResponseHeader": { - "id": "ResponseHeader", - "type": "object", - "description": "Elements common to every response.", - "properties": { - "operationId": { - "type": "string", - "description": "For mutating operation requests that completed successfully. This is the client_operation_id if the client specified it, otherwise it is generated by the server (output only)." - } - } - } - }, - "resources": { - "changes": { - "methods": { - "create": { - "id": "dns.changes.create", - "path": "{project}/managedZones/{managedZone}/changes", - "httpMethod": "POST", - "description": "Atomically update the ResourceRecordSet collection.", - "parameters": { - "clientOperationId": { - "type": "string", - "description": "For mutating operation requests only. An optional identifier specified by the client. Must be unique for operation resources in the Operations collection.", - "location": "query" - }, - "managedZone": { - "type": "string", - "description": "Identifies the managed zone addressed by this request. Can be the managed zone name or id.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Identifies the project addressed by this request.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "managedZone" - ], - "request": { - "$ref": "Change" - }, - "response": { - "$ref": "Change" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/ndev.clouddns.readwrite" - ] - }, - "get": { - "id": "dns.changes.get", - "path": "{project}/managedZones/{managedZone}/changes/{changeId}", - "httpMethod": "GET", - "description": "Fetch the representation of an existing Change.", - "parameters": { - "changeId": { - "type": "string", - "description": "The identifier of the requested change, from a previous ResourceRecordSetsChangeResponse.", - "required": true, - "location": "path" - }, - "clientOperationId": { - "type": "string", - "description": "For mutating operation requests only. An optional identifier specified by the client. Must be unique for operation resources in the Operations collection.", - "location": "query" - }, - "managedZone": { - "type": "string", - "description": "Identifies the managed zone addressed by this request. Can be the managed zone name or id.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Identifies the project addressed by this request.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "managedZone", - "changeId" - ], - "response": { - "$ref": "Change" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/ndev.clouddns.readonly", - "https://www.googleapis.com/auth/ndev.clouddns.readwrite" - ] - }, - "list": { - "id": "dns.changes.list", - "path": "{project}/managedZones/{managedZone}/changes", - "httpMethod": "GET", - "description": "Enumerate Changes to a ResourceRecordSet collection.", - "parameters": { - "managedZone": { - "type": "string", - "description": "Identifies the managed zone addressed by this request. Can be the managed zone name or id.", - "required": true, - "location": "path" - }, - "maxResults": { - "type": "integer", - "description": "Optional. Maximum number of results to be returned. If unspecified, the server will decide how many results to return.", - "format": "int32", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Optional. A tag returned by a previous list request that was truncated. Use this parameter to continue a previous list request.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Identifies the project addressed by this request.", - "required": true, - "location": "path" - }, - "sortBy": { - "type": "string", - "description": "Sorting criterion. The only supported value is change sequence.", - "default": "CHANGE_SEQUENCE", - "enum": [ - "CHANGE_SEQUENCE" - ], - "enumDescriptions": [ - "" - ], - "location": "query" - }, - "sortOrder": { - "type": "string", - "description": "Sorting order direction: 'ascending' or 'descending'.", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "managedZone" - ], - "response": { - "$ref": "ChangesListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/ndev.clouddns.readonly", - "https://www.googleapis.com/auth/ndev.clouddns.readwrite" - ] - } - } - }, - "dnsKeys": { - "methods": { - "get": { - "id": "dns.dnsKeys.get", - "path": "{project}/managedZones/{managedZone}/dnsKeys/{dnsKeyId}", - "httpMethod": "GET", - "description": "Fetch the representation of an existing DnsKey.", - "parameters": { - "clientOperationId": { - "type": "string", - "description": "For mutating operation requests only. An optional identifier specified by the client. Must be unique for operation resources in the Operations collection.", - "location": "query" - }, - "digestType": { - "type": "string", - "description": "An optional comma-separated list of digest types to compute and display for key signing keys. If omitted, the recommended digest type will be computed and displayed.", - "location": "query" - }, - "dnsKeyId": { - "type": "string", - "description": "The identifier of the requested DnsKey.", - "required": true, - "location": "path" - }, - "managedZone": { - "type": "string", - "description": "Identifies the managed zone addressed by this request. Can be the managed zone name or id.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Identifies the project addressed by this request.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "managedZone", - "dnsKeyId" - ], - "response": { - "$ref": "DnsKey" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/ndev.clouddns.readonly", - "https://www.googleapis.com/auth/ndev.clouddns.readwrite" - ] - }, - "list": { - "id": "dns.dnsKeys.list", - "path": "{project}/managedZones/{managedZone}/dnsKeys", - "httpMethod": "GET", - "description": "Enumerate DnsKeys to a ResourceRecordSet collection.", - "parameters": { - "digestType": { - "type": "string", - "description": "An optional comma-separated list of digest types to compute and display for key signing keys. If omitted, the recommended digest type will be computed and displayed.", - "location": "query" - }, - "managedZone": { - "type": "string", - "description": "Identifies the managed zone addressed by this request. Can be the managed zone name or id.", - "required": true, - "location": "path" - }, - "maxResults": { - "type": "integer", - "description": "Optional. Maximum number of results to be returned. If unspecified, the server will decide how many results to return.", - "format": "int32", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Optional. A tag returned by a previous list request that was truncated. Use this parameter to continue a previous list request.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Identifies the project addressed by this request.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "managedZone" - ], - "response": { - "$ref": "DnsKeysListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/ndev.clouddns.readonly", - "https://www.googleapis.com/auth/ndev.clouddns.readwrite" - ] - } - } - }, - "managedZoneOperations": { - "methods": { - "get": { - "id": "dns.managedZoneOperations.get", - "path": "{project}/managedZones/{managedZone}/operations/{operation}", - "httpMethod": "GET", - "description": "Fetch the representation of an existing Operation.", - "parameters": { - "clientOperationId": { - "type": "string", - "description": "For mutating operation requests only. An optional identifier specified by the client. Must be unique for operation resources in the Operations collection.", - "location": "query" - }, - "managedZone": { - "type": "string", - "description": "Identifies the managed zone addressed by this request.", - "required": true, - "location": "path" - }, - "operation": { - "type": "string", - "description": "Identifies the operation addressed by this request.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Identifies the project addressed by this request.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "managedZone", - "operation" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/ndev.clouddns.readonly", - "https://www.googleapis.com/auth/ndev.clouddns.readwrite" - ] - }, - "list": { - "id": "dns.managedZoneOperations.list", - "path": "{project}/managedZones/{managedZone}/operations", - "httpMethod": "GET", - "description": "Enumerate Operations for the given ManagedZone.", - "parameters": { - "managedZone": { - "type": "string", - "description": "Identifies the managed zone addressed by this request.", - "required": true, - "location": "path" - }, - "maxResults": { - "type": "integer", - "description": "Optional. Maximum number of results to be returned. If unspecified, the server will decide how many results to return.", - "format": "int32", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Optional. A tag returned by a previous list request that was truncated. Use this parameter to continue a previous list request.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Identifies the project addressed by this request.", - "required": true, - "location": "path" - }, - "sortBy": { - "type": "string", - "description": "Sorting criterion. The only supported values are START_TIME and ID.", - "default": "START_TIME", - "enum": [ - "ID", - "START_TIME" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - } - }, - "parameterOrder": [ - "project", - "managedZone" - ], - "response": { - "$ref": "ManagedZoneOperationsListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/ndev.clouddns.readonly", - "https://www.googleapis.com/auth/ndev.clouddns.readwrite" - ] - } - } - }, - "managedZones": { - "methods": { - "create": { - "id": "dns.managedZones.create", - "path": "{project}/managedZones", - "httpMethod": "POST", - "description": "Create a new ManagedZone.", - "parameters": { - "clientOperationId": { - "type": "string", - "description": "For mutating operation requests only. An optional identifier specified by the client. Must be unique for operation resources in the Operations collection.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Identifies the project addressed by this request.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "request": { - "$ref": "ManagedZone" - }, - "response": { - "$ref": "ManagedZone" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/ndev.clouddns.readwrite" - ] - }, - "delete": { - "id": "dns.managedZones.delete", - "path": "{project}/managedZones/{managedZone}", - "httpMethod": "DELETE", - "description": "Delete a previously created ManagedZone.", - "parameters": { - "clientOperationId": { - "type": "string", - "description": "For mutating operation requests only. An optional identifier specified by the client. Must be unique for operation resources in the Operations collection.", - "location": "query" - }, - "managedZone": { - "type": "string", - "description": "Identifies the managed zone addressed by this request. Can be the managed zone name or id.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Identifies the project addressed by this request.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "managedZone" - ], - "response": { - "$ref": "ManagedZonesDeleteResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/ndev.clouddns.readwrite" - ] - }, - "get": { - "id": "dns.managedZones.get", - "path": "{project}/managedZones/{managedZone}", - "httpMethod": "GET", - "description": "Fetch the representation of an existing ManagedZone.", - "parameters": { - "clientOperationId": { - "type": "string", - "description": "For mutating operation requests only. An optional identifier specified by the client. Must be unique for operation resources in the Operations collection.", - "location": "query" - }, - "managedZone": { - "type": "string", - "description": "Identifies the managed zone addressed by this request. Can be the managed zone name or id.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Identifies the project addressed by this request.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "managedZone" - ], - "response": { - "$ref": "ManagedZone" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/ndev.clouddns.readonly", - "https://www.googleapis.com/auth/ndev.clouddns.readwrite" - ] - }, - "list": { - "id": "dns.managedZones.list", - "path": "{project}/managedZones", - "httpMethod": "GET", - "description": "Enumerate ManagedZones that have been created but not yet deleted.", - "parameters": { - "dnsName": { - "type": "string", - "description": "Restricts the list to return only zones with this domain name.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "Optional. Maximum number of results to be returned. If unspecified, the server will decide how many results to return.", - "format": "int32", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Optional. A tag returned by a previous list request that was truncated. Use this parameter to continue a previous list request.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Identifies the project addressed by this request.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "ManagedZonesListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/ndev.clouddns.readonly", - "https://www.googleapis.com/auth/ndev.clouddns.readwrite" - ] - }, - "patch": { - "id": "dns.managedZones.patch", - "path": "{project}/managedZones/{managedZone}", - "httpMethod": "PATCH", - "description": "Update an existing ManagedZone. This method supports patch semantics.", - "parameters": { - "clientOperationId": { - "type": "string", - "description": "For mutating operation requests only. An optional identifier specified by the client. Must be unique for operation resources in the Operations collection.", - "location": "query" - }, - "managedZone": { - "type": "string", - "description": "Identifies the managed zone addressed by this request. Can be the managed zone name or id.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Identifies the project addressed by this request.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "managedZone" - ], - "request": { - "$ref": "ManagedZone" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/ndev.clouddns.readwrite" - ] - }, - "update": { - "id": "dns.managedZones.update", - "path": "{project}/managedZones/{managedZone}", - "httpMethod": "PUT", - "description": "Update an existing ManagedZone.", - "parameters": { - "clientOperationId": { - "type": "string", - "description": "For mutating operation requests only. An optional identifier specified by the client. Must be unique for operation resources in the Operations collection.", - "location": "query" - }, - "managedZone": { - "type": "string", - "description": "Identifies the managed zone addressed by this request. Can be the managed zone name or id.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Identifies the project addressed by this request.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "managedZone" - ], - "request": { - "$ref": "ManagedZone" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/ndev.clouddns.readwrite" - ] - } - } - }, - "projects": { - "methods": { - "get": { - "id": "dns.projects.get", - "path": "{project}", - "httpMethod": "GET", - "description": "Fetch the representation of an existing Project.", - "parameters": { - "clientOperationId": { - "type": "string", - "description": "For mutating operation requests only. An optional identifier specified by the client. Must be unique for operation resources in the Operations collection.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Identifies the project addressed by this request.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "Project" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/ndev.clouddns.readonly", - "https://www.googleapis.com/auth/ndev.clouddns.readwrite" - ] - } - } - }, - "resourceRecordSets": { - "methods": { - "list": { - "id": "dns.resourceRecordSets.list", - "path": "{project}/managedZones/{managedZone}/rrsets", - "httpMethod": "GET", - "description": "Enumerate ResourceRecordSets that have been created but not yet deleted.", - "parameters": { - "managedZone": { - "type": "string", - "description": "Identifies the managed zone addressed by this request. Can be the managed zone name or id.", - "required": true, - "location": "path" - }, - "maxResults": { - "type": "integer", - "description": "Optional. Maximum number of results to be returned. If unspecified, the server will decide how many results to return.", - "format": "int32", - "location": "query" - }, - "name": { - "type": "string", - "description": "Restricts the list to return only records with this fully qualified domain name.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Optional. A tag returned by a previous list request that was truncated. Use this parameter to continue a previous list request.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Identifies the project addressed by this request.", - "required": true, - "location": "path" - }, - "type": { - "type": "string", - "description": "Restricts the list to return only records of this type. If present, the \"name\" parameter must also be present.", - "location": "query" - } - }, - "parameterOrder": [ - "project", - "managedZone" - ], - "response": { - "$ref": "ResourceRecordSetsListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/ndev.clouddns.readonly", - "https://www.googleapis.com/auth/ndev.clouddns.readwrite" - ] - } - } - } - } -} + "servicePath": "dns/v2beta1/projects/", + "title": "Google Cloud DNS API", + "version": "v2beta1" +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/dns/v2beta1/dns-gen.go b/vendor/google.golang.org/api/dns/v2beta1/dns-gen.go index e694a0c93..c0cc2a61b 100644 --- a/vendor/google.golang.org/api/dns/v2beta1/dns-gen.go +++ b/vendor/google.golang.org/api/dns/v2beta1/dns-gen.go @@ -528,6 +528,9 @@ type ManagedZone struct { // string "dns#managedZone". Kind string `json:"kind,omitempty"` + // Labels: User labels. + Labels map[string]string `json:"labels,omitempty"` + // Name: User assigned name for this resource. Must be unique within the // project. The name must be 1-63 characters long, must begin with a // letter, end with a letter or digit, and only contain lowercase @@ -669,36 +672,6 @@ func (s *ManagedZoneOperationsListResponse) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -type ManagedZonesDeleteResponse struct { - Header *ResponseHeader `json:"header,omitempty"` - - // ServerResponse contains the HTTP response code and headers from the - // server. - googleapi.ServerResponse `json:"-"` - - // ForceSendFields is a list of field names (e.g. "Header") to - // unconditionally include in API requests. By default, fields with - // empty values are omitted from API requests. However, any non-pointer, - // non-interface field appearing in ForceSendFields will be sent to the - // server regardless of whether the field is empty or not. This may be - // used to include empty fields in Patch requests. - ForceSendFields []string `json:"-"` - - // NullFields is a list of field names (e.g. "Header") to include in API - // requests with the JSON null value. By default, fields with empty - // values are omitted from API requests. However, any field with an - // empty value appearing in NullFields will be sent to the server as - // null. It is an error if a field in this list has a non-empty value. - // This may be used to include null fields in Patch requests. - NullFields []string `json:"-"` -} - -func (s *ManagedZonesDeleteResponse) MarshalJSON() ([]byte, error) { - type NoMethod ManagedZonesDeleteResponse - raw := NoMethod(*s) - return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) -} - type ManagedZonesListResponse struct { Header *ResponseHeader `json:"header,omitempty"` @@ -2698,42 +2671,17 @@ func (c *ManagedZonesDeleteCall) doRequest(alt string) (*http.Response, error) { } // Do executes the "dns.managedZones.delete" call. -// Exactly one of *ManagedZonesDeleteResponse or error will be non-nil. -// Any non-2xx status code is an error. Response headers are in either -// *ManagedZonesDeleteResponse.ServerResponse.Header or (if a response -// was returned at all) in error.(*googleapi.Error).Header. Use -// googleapi.IsNotModified to check whether the returned error was -// because http.StatusNotModified was returned. -func (c *ManagedZonesDeleteCall) Do(opts ...googleapi.CallOption) (*ManagedZonesDeleteResponse, error) { +func (c *ManagedZonesDeleteCall) Do(opts ...googleapi.CallOption) error { gensupport.SetOptions(c.urlParams_, opts...) res, err := c.doRequest("json") - if res != nil && res.StatusCode == http.StatusNotModified { - if res.Body != nil { - res.Body.Close() - } - return nil, &googleapi.Error{ - Code: res.StatusCode, - Header: res.Header, - } - } if err != nil { - return nil, err + return err } defer googleapi.CloseBody(res) if err := googleapi.CheckResponse(res); err != nil { - return nil, err + return err } - ret := &ManagedZonesDeleteResponse{ - ServerResponse: googleapi.ServerResponse{ - Header: res.Header, - HTTPStatusCode: res.StatusCode, - }, - } - target := &ret - if err := gensupport.DecodeResponse(target, res); err != nil { - return nil, err - } - return ret, nil + return nil // { // "description": "Delete a previously created ManagedZone.", // "httpMethod": "DELETE", @@ -2762,9 +2710,6 @@ func (c *ManagedZonesDeleteCall) Do(opts ...googleapi.CallOption) (*ManagedZones // } // }, // "path": "{project}/managedZones/{managedZone}", - // "response": { - // "$ref": "ManagedZonesDeleteResponse" - // }, // "scopes": [ // "https://www.googleapis.com/auth/cloud-platform", // "https://www.googleapis.com/auth/ndev.clouddns.readwrite" diff --git a/vendor/google.golang.org/api/doubleclickbidmanager/v1/doubleclickbidmanager-api.json b/vendor/google.golang.org/api/doubleclickbidmanager/v1/doubleclickbidmanager-api.json index 2bd0dcba4..75f683de3 100644 --- a/vendor/google.golang.org/api/doubleclickbidmanager/v1/doubleclickbidmanager-api.json +++ b/vendor/google.golang.org/api/doubleclickbidmanager/v1/doubleclickbidmanager-api.json @@ -1,2157 +1,2173 @@ { - "kind": "discovery#restDescription", - "etag": "\"YWOzh2SDasdU84ArJnpYek-OMdg/fiMIPCbr-8OYnnFx-elRq37f8OU\"", - "discoveryVersion": "v1", - "id": "doubleclickbidmanager:v1", - "name": "doubleclickbidmanager", - "canonicalName": "DoubleClick Bid Manager", - "version": "v1", - "revision": "20170705", - "title": "DoubleClick Bid Manager API", - "description": "API for viewing and managing your reports in DoubleClick Bid Manager.", - "ownerDomain": "google.com", - "ownerName": "Google", - "icons": { - "x16": "https://www.gstatic.com/images/branding/product/1x/googleg_16dp.png", - "x32": "https://www.gstatic.com/images/branding/product/1x/googleg_32dp.png" - }, - "documentationLink": "https://developers.google.com/bid-manager/", - "labels": [ - "limited_availability" - ], - "protocol": "rest", - "baseUrl": "https://www.googleapis.com/doubleclickbidmanager/v1/", - "basePath": "/doubleclickbidmanager/v1/", - "rootUrl": "https://www.googleapis.com/", - "servicePath": "doubleclickbidmanager/v1/", - "batchPath": "batch/doubleclickbidmanager/v1", - "parameters": { - "alt": { - "type": "string", - "description": "Data format for the response.", - "default": "json", - "enum": [ - "json" - ], - "enumDescriptions": [ - "Responses with Content-Type of application/json" - ], - "location": "query" - }, - "fields": { - "type": "string", - "description": "Selector specifying which fields to include in a partial response.", - "location": "query" - }, - "key": { - "type": "string", - "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" - }, - "oauth_token": { - "type": "string", - "description": "OAuth 2.0 token for the current user.", - "location": "query" - }, - "prettyPrint": { - "type": "boolean", - "description": "Returns response with indentations and line breaks.", - "default": "true", - "location": "query" - }, - "quotaUser": { - "type": "string", - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", - "location": "query" - }, - "userIp": { - "type": "string", - "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", - "location": "query" - } - }, - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/doubleclickbidmanager": { - "description": "View and manage your reports in DoubleClick Bid Manager" + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/doubleclickbidmanager": { + "description": "View and manage your reports in DoubleClick Bid Manager" + } + } } - } - } - }, - "schemas": { - "DownloadLineItemsRequest": { - "id": "DownloadLineItemsRequest", - "type": "object", - "description": "Request to fetch stored line items.", - "properties": { - "fileSpec": { - "type": "string", - "description": "File specification (column names, types, order) in which the line items will be returned. Default to EWF.", - "enum": [ - "EWF" - ], - "enumDescriptions": [ - "" - ] - }, - "filterIds": { - "type": "array", - "description": "Ids of the specified filter type used to filter line items to fetch. If omitted, all the line items will be returned.", - "items": { - "type": "string", - "format": "int64" - } - }, - "filterType": { - "type": "string", - "description": "Filter type used to filter line items to fetch.", - "enum": [ - "ADVERTISER_ID", - "INSERTION_ORDER_ID", - "LINE_ITEM_ID" - ], - "enumDescriptions": [ - "", - "", - "" - ] - }, - "format": { - "type": "string", - "description": "Format in which the line items will be returned. Default to CSV.", - "enum": [ - "CSV" - ], - "enumDescriptions": [ - "" - ] - } - } }, - "DownloadLineItemsResponse": { - "id": "DownloadLineItemsResponse", - "type": "object", - "description": "Download line items response.", - "properties": { - "lineItems": { - "type": "string", - "description": "Retrieved line items in CSV format. For more information about file formats, see Entity Write File Format." - } - } + "basePath": "/doubleclickbidmanager/v1/", + "baseUrl": "https://www.googleapis.com/doubleclickbidmanager/v1/", + "batchPath": "batch/doubleclickbidmanager/v1", + "canonicalName": "DoubleClick Bid Manager", + "description": "API for viewing and managing your reports in DoubleClick Bid Manager.", + "discoveryVersion": "v1", + "documentationLink": "https://developers.google.com/bid-manager/", + "etag": "\"-iA1DTNe4s-I6JZXPt1t1Ypy8IU/VhkmmOCAeZxujqmKOTmNA46X8Is\"", + "icons": { + "x16": "https://www.gstatic.com/images/branding/product/1x/googleg_16dp.png", + "x32": "https://www.gstatic.com/images/branding/product/1x/googleg_32dp.png" }, - "DownloadRequest": { - "id": "DownloadRequest", - "type": "object", - "description": "Request to fetch stored insertion orders, line items, TrueView ad groups and ads.", - "properties": { - "fileTypes": { - "type": "array", - "description": "File types that will be returned.", - "items": { - "type": "string", + "id": "doubleclickbidmanager:v1", + "kind": "discovery#restDescription", + "labels": [ + "limited_availability" + ], + "name": "doubleclickbidmanager", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "alt": { + "default": "json", + "description": "Data format for the response.", "enum": [ - "AD", - "AD_GROUP", - "INSERTION_ORDER", - "LINE_ITEM" + "json" ], "enumDescriptions": [ - "", - "", - "", - "" - ] - } + "Responses with Content-Type of application/json" + ], + "location": "query", + "type": "string" }, - "filterIds": { - "type": "array", - "description": "The IDs of the specified filter type. This is used to filter entities to fetch. At least one ID must be specified. Only one ID is allowed for the ADVERTISER_ID filter type. For INSERTION_ORDER_ID or LINE_ITEM_ID filter types, all IDs must be from the same Advertiser.", - "items": { - "type": "string", - "format": "int64" - } + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "location": "query", + "type": "string" }, - "filterType": { - "type": "string", - "description": "Filter type used to filter line items to fetch.", - "enum": [ - "ADVERTISER_ID", - "INSERTION_ORDER_ID", - "LINE_ITEM_ID" - ], - "enumDescriptions": [ - "", - "", - "" - ] + "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" }, - "version": { - "type": "string", - "description": "SDF Version (column names, types, order) in which the entities will be returned. Default to 3." + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", + "location": "query", + "type": "string" + }, + "userIp": { + "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", + "location": "query", + "type": "string" } - } }, - "DownloadResponse": { - "id": "DownloadResponse", - "type": "object", - "description": "Download response.", - "properties": { - "adGroups": { - "type": "string", - "description": "Retrieved ad groups in SDF format." - }, - "ads": { - "type": "string", - "description": "Retrieved ads in SDF format." - }, - "insertionOrders": { - "type": "string", - "description": "Retrieved insertion orders in SDF format." - }, - "lineItems": { - "type": "string", - "description": "Retrieved line items in SDF format." - } - } - }, - "FilterPair": { - "id": "FilterPair", - "type": "object", - "description": "Filter used to match traffic data in your report.", - "properties": { - "type": { - "type": "string", - "description": "Filter type.", - "enum": [ - "FILTER_ACTIVE_VIEW_EXPECTED_VIEWABILITY", - "FILTER_ACTIVITY_ID", - "FILTER_ADVERTISER", - "FILTER_ADVERTISER_CURRENCY", - "FILTER_ADVERTISER_TIMEZONE", - "FILTER_AD_POSITION", - "FILTER_AGE", - "FILTER_BRANDSAFE_CHANNEL_ID", - "FILTER_BROWSER", - "FILTER_BUDGET_SEGMENT_DESCRIPTION", - "FILTER_CAMPAIGN_DAILY_FREQUENCY", - "FILTER_CARRIER", - "FILTER_CHANNEL_ID", - "FILTER_CITY", - "FILTER_COMPANION_CREATIVE_ID", - "FILTER_CONVERSION_DELAY", - "FILTER_COUNTRY", - "FILTER_CREATIVE_HEIGHT", - "FILTER_CREATIVE_ID", - "FILTER_CREATIVE_SIZE", - "FILTER_CREATIVE_TYPE", - "FILTER_CREATIVE_WIDTH", - "FILTER_DATA_PROVIDER", - "FILTER_DATE", - "FILTER_DAY_OF_WEEK", - "FILTER_DFP_ORDER_ID", - "FILTER_DMA", - "FILTER_EXCHANGE_ID", - "FILTER_FLOODLIGHT_PIXEL_ID", - "FILTER_GENDER", - "FILTER_INSERTION_ORDER", - "FILTER_INVENTORY_FORMAT", - "FILTER_INVENTORY_SOURCE", - "FILTER_INVENTORY_SOURCE_TYPE", - "FILTER_KEYWORD", - "FILTER_LINE_ITEM", - "FILTER_LINE_ITEM_DAILY_FREQUENCY", - "FILTER_LINE_ITEM_LIFETIME_FREQUENCY", - "FILTER_LINE_ITEM_TYPE", - "FILTER_MEDIA_PLAN", - "FILTER_MOBILE_DEVICE_MAKE", - "FILTER_MOBILE_DEVICE_MAKE_MODEL", - "FILTER_MOBILE_DEVICE_TYPE", - "FILTER_MOBILE_GEO", - "FILTER_MONTH", - "FILTER_MRAID_SUPPORT", - "FILTER_NIELSEN_AGE", - "FILTER_NIELSEN_COUNTRY_CODE", - "FILTER_NIELSEN_DEVICE_ID", - "FILTER_NIELSEN_GENDER", - "FILTER_NOT_SUPPORTED", - "FILTER_ORDER_ID", - "FILTER_OS", - "FILTER_PAGE_CATEGORY", - "FILTER_PAGE_LAYOUT", - "FILTER_PARTNER", - "FILTER_PARTNER_CURRENCY", - "FILTER_PUBLIC_INVENTORY", - "FILTER_QUARTER", - "FILTER_REGION", - "FILTER_REGULAR_CHANNEL_ID", - "FILTER_SITE_ID", - "FILTER_SITE_LANGUAGE", - "FILTER_SKIPPABLE_SUPPORT", - "FILTER_TARGETED_USER_LIST", - "FILTER_TIME_OF_DAY", - "FILTER_TRUEVIEW_AD_GROUP_AD_ID", - "FILTER_TRUEVIEW_AD_GROUP_ID", - "FILTER_TRUEVIEW_AGE", - "FILTER_TRUEVIEW_CATEGORY", - "FILTER_TRUEVIEW_CITY", - "FILTER_TRUEVIEW_CONVERSION_TYPE", - "FILTER_TRUEVIEW_COUNTRY", - "FILTER_TRUEVIEW_CUSTOM_AFFINITY", - "FILTER_TRUEVIEW_DMA", - "FILTER_TRUEVIEW_GENDER", - "FILTER_TRUEVIEW_IAR_AGE", - "FILTER_TRUEVIEW_IAR_CATEGORY", - "FILTER_TRUEVIEW_IAR_CITY", - "FILTER_TRUEVIEW_IAR_COUNTRY", - "FILTER_TRUEVIEW_IAR_GENDER", - "FILTER_TRUEVIEW_IAR_INTEREST", - "FILTER_TRUEVIEW_IAR_LANGUAGE", - "FILTER_TRUEVIEW_IAR_PARENTAL_STATUS", - "FILTER_TRUEVIEW_IAR_REGION", - "FILTER_TRUEVIEW_IAR_REMARKETING_LIST", - "FILTER_TRUEVIEW_IAR_TIME_OF_DAY", - "FILTER_TRUEVIEW_IAR_YOUTUBE_CHANNEL", - "FILTER_TRUEVIEW_IAR_YOUTUBE_VIDEO", - "FILTER_TRUEVIEW_IAR_ZIPCODE", - "FILTER_TRUEVIEW_INTEREST", - "FILTER_TRUEVIEW_KEYWORD", - "FILTER_TRUEVIEW_PARENTAL_STATUS", - "FILTER_TRUEVIEW_PLACEMENT", - "FILTER_TRUEVIEW_REGION", - "FILTER_TRUEVIEW_REMARKETING_LIST", - "FILTER_TRUEVIEW_URL", - "FILTER_TRUEVIEW_ZIPCODE", - "FILTER_UNKNOWN", - "FILTER_USER_LIST", - "FILTER_USER_LIST_FIRST_PARTY", - "FILTER_USER_LIST_THIRD_PARTY", - "FILTER_VIDEO_AD_POSITION_IN_STREAM", - "FILTER_VIDEO_COMPANION_SIZE", - "FILTER_VIDEO_COMPANION_TYPE", - "FILTER_VIDEO_CREATIVE_DURATION", - "FILTER_VIDEO_CREATIVE_DURATION_SKIPPABLE", - "FILTER_VIDEO_DURATION_SECONDS", - "FILTER_VIDEO_FORMAT_SUPPORT", - "FILTER_VIDEO_INVENTORY_TYPE", - "FILTER_VIDEO_PLAYER_SIZE", - "FILTER_VIDEO_RATING_TIER", - "FILTER_VIDEO_SKIPPABLE_SUPPORT", - "FILTER_VIDEO_VPAID_SUPPORT", - "FILTER_WEEK", - "FILTER_YEAR", - "FILTER_YOUTUBE_VERTICAL", - "FILTER_ZIP_CODE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "value": { - "type": "string", - "description": "Filter value." - } - } - }, - "ListQueriesResponse": { - "id": "ListQueriesResponse", - "type": "object", - "description": "List queries response.", - "properties": { - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"doubleclickbidmanager#listQueriesResponse\".", - "default": "doubleclickbidmanager#listQueriesResponse" + "protocol": "rest", + "resources": { + "lineitems": { + "methods": { + "downloadlineitems": { + "description": "Retrieves line items in CSV format. TrueView line items are not supported.", + "httpMethod": "POST", + "id": "doubleclickbidmanager.lineitems.downloadlineitems", + "path": "lineitems/downloadlineitems", + "request": { + "$ref": "DownloadLineItemsRequest" + }, + "response": { + "$ref": "DownloadLineItemsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/doubleclickbidmanager" + ] + }, + "uploadlineitems": { + "description": "Uploads line items in CSV format. TrueView line items are not supported.", + "httpMethod": "POST", + "id": "doubleclickbidmanager.lineitems.uploadlineitems", + "path": "lineitems/uploadlineitems", + "request": { + "$ref": "UploadLineItemsRequest" + }, + "response": { + "$ref": "UploadLineItemsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/doubleclickbidmanager" + ] + } + } }, "queries": { - "type": "array", - "description": "Retrieved queries.", - "items": { - "$ref": "Query" - } - } - } - }, - "ListReportsResponse": { - "id": "ListReportsResponse", - "type": "object", - "description": "List reports response.", - "properties": { - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"doubleclickbidmanager#listReportsResponse\".", - "default": "doubleclickbidmanager#listReportsResponse" + "methods": { + "createquery": { + "description": "Creates a query.", + "httpMethod": "POST", + "id": "doubleclickbidmanager.queries.createquery", + "path": "query", + "request": { + "$ref": "Query" + }, + "response": { + "$ref": "Query" + }, + "scopes": [ + "https://www.googleapis.com/auth/doubleclickbidmanager" + ] + }, + "deletequery": { + "description": "Deletes a stored query as well as the associated stored reports.", + "httpMethod": "DELETE", + "id": "doubleclickbidmanager.queries.deletequery", + "parameterOrder": [ + "queryId" + ], + "parameters": { + "queryId": { + "description": "Query ID to delete.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "query/{queryId}", + "scopes": [ + "https://www.googleapis.com/auth/doubleclickbidmanager" + ] + }, + "getquery": { + "description": "Retrieves a stored query.", + "httpMethod": "GET", + "id": "doubleclickbidmanager.queries.getquery", + "parameterOrder": [ + "queryId" + ], + "parameters": { + "queryId": { + "description": "Query ID to retrieve.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "query/{queryId}", + "response": { + "$ref": "Query" + }, + "scopes": [ + "https://www.googleapis.com/auth/doubleclickbidmanager" + ] + }, + "listqueries": { + "description": "Retrieves stored queries.", + "httpMethod": "GET", + "id": "doubleclickbidmanager.queries.listqueries", + "path": "queries", + "response": { + "$ref": "ListQueriesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/doubleclickbidmanager" + ] + }, + "runquery": { + "description": "Runs a stored query to generate a report.", + "httpMethod": "POST", + "id": "doubleclickbidmanager.queries.runquery", + "parameterOrder": [ + "queryId" + ], + "parameters": { + "queryId": { + "description": "Query ID to run.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "query/{queryId}", + "request": { + "$ref": "RunQueryRequest" + }, + "scopes": [ + "https://www.googleapis.com/auth/doubleclickbidmanager" + ] + } + } }, "reports": { - "type": "array", - "description": "Retrieved reports.", - "items": { - "$ref": "Report" - } - } - } - }, - "Parameters": { - "id": "Parameters", - "type": "object", - "description": "Parameters of a query or report.", - "properties": { - "filters": { - "type": "array", - "description": "Filters used to match traffic data in your report.", - "items": { - "$ref": "FilterPair" - } - }, - "groupBys": { - "type": "array", - "description": "Data is grouped by the filters listed in this field.", - "items": { - "type": "string", - "enum": [ - "FILTER_ACTIVE_VIEW_EXPECTED_VIEWABILITY", - "FILTER_ACTIVITY_ID", - "FILTER_ADVERTISER", - "FILTER_ADVERTISER_CURRENCY", - "FILTER_ADVERTISER_TIMEZONE", - "FILTER_AD_POSITION", - "FILTER_AGE", - "FILTER_BRANDSAFE_CHANNEL_ID", - "FILTER_BROWSER", - "FILTER_BUDGET_SEGMENT_DESCRIPTION", - "FILTER_CAMPAIGN_DAILY_FREQUENCY", - "FILTER_CARRIER", - "FILTER_CHANNEL_ID", - "FILTER_CITY", - "FILTER_COMPANION_CREATIVE_ID", - "FILTER_CONVERSION_DELAY", - "FILTER_COUNTRY", - "FILTER_CREATIVE_HEIGHT", - "FILTER_CREATIVE_ID", - "FILTER_CREATIVE_SIZE", - "FILTER_CREATIVE_TYPE", - "FILTER_CREATIVE_WIDTH", - "FILTER_DATA_PROVIDER", - "FILTER_DATE", - "FILTER_DAY_OF_WEEK", - "FILTER_DFP_ORDER_ID", - "FILTER_DMA", - "FILTER_EXCHANGE_ID", - "FILTER_FLOODLIGHT_PIXEL_ID", - "FILTER_GENDER", - "FILTER_INSERTION_ORDER", - "FILTER_INVENTORY_FORMAT", - "FILTER_INVENTORY_SOURCE", - "FILTER_INVENTORY_SOURCE_TYPE", - "FILTER_KEYWORD", - "FILTER_LINE_ITEM", - "FILTER_LINE_ITEM_DAILY_FREQUENCY", - "FILTER_LINE_ITEM_LIFETIME_FREQUENCY", - "FILTER_LINE_ITEM_TYPE", - "FILTER_MEDIA_PLAN", - "FILTER_MOBILE_DEVICE_MAKE", - "FILTER_MOBILE_DEVICE_MAKE_MODEL", - "FILTER_MOBILE_DEVICE_TYPE", - "FILTER_MOBILE_GEO", - "FILTER_MONTH", - "FILTER_MRAID_SUPPORT", - "FILTER_NIELSEN_AGE", - "FILTER_NIELSEN_COUNTRY_CODE", - "FILTER_NIELSEN_DEVICE_ID", - "FILTER_NIELSEN_GENDER", - "FILTER_NOT_SUPPORTED", - "FILTER_ORDER_ID", - "FILTER_OS", - "FILTER_PAGE_CATEGORY", - "FILTER_PAGE_LAYOUT", - "FILTER_PARTNER", - "FILTER_PARTNER_CURRENCY", - "FILTER_PUBLIC_INVENTORY", - "FILTER_QUARTER", - "FILTER_REGION", - "FILTER_REGULAR_CHANNEL_ID", - "FILTER_SITE_ID", - "FILTER_SITE_LANGUAGE", - "FILTER_SKIPPABLE_SUPPORT", - "FILTER_TARGETED_USER_LIST", - "FILTER_TIME_OF_DAY", - "FILTER_TRUEVIEW_AD_GROUP_AD_ID", - "FILTER_TRUEVIEW_AD_GROUP_ID", - "FILTER_TRUEVIEW_AGE", - "FILTER_TRUEVIEW_CATEGORY", - "FILTER_TRUEVIEW_CITY", - "FILTER_TRUEVIEW_CONVERSION_TYPE", - "FILTER_TRUEVIEW_COUNTRY", - "FILTER_TRUEVIEW_CUSTOM_AFFINITY", - "FILTER_TRUEVIEW_DMA", - "FILTER_TRUEVIEW_GENDER", - "FILTER_TRUEVIEW_IAR_AGE", - "FILTER_TRUEVIEW_IAR_CATEGORY", - "FILTER_TRUEVIEW_IAR_CITY", - "FILTER_TRUEVIEW_IAR_COUNTRY", - "FILTER_TRUEVIEW_IAR_GENDER", - "FILTER_TRUEVIEW_IAR_INTEREST", - "FILTER_TRUEVIEW_IAR_LANGUAGE", - "FILTER_TRUEVIEW_IAR_PARENTAL_STATUS", - "FILTER_TRUEVIEW_IAR_REGION", - "FILTER_TRUEVIEW_IAR_REMARKETING_LIST", - "FILTER_TRUEVIEW_IAR_TIME_OF_DAY", - "FILTER_TRUEVIEW_IAR_YOUTUBE_CHANNEL", - "FILTER_TRUEVIEW_IAR_YOUTUBE_VIDEO", - "FILTER_TRUEVIEW_IAR_ZIPCODE", - "FILTER_TRUEVIEW_INTEREST", - "FILTER_TRUEVIEW_KEYWORD", - "FILTER_TRUEVIEW_PARENTAL_STATUS", - "FILTER_TRUEVIEW_PLACEMENT", - "FILTER_TRUEVIEW_REGION", - "FILTER_TRUEVIEW_REMARKETING_LIST", - "FILTER_TRUEVIEW_URL", - "FILTER_TRUEVIEW_ZIPCODE", - "FILTER_UNKNOWN", - "FILTER_USER_LIST", - "FILTER_USER_LIST_FIRST_PARTY", - "FILTER_USER_LIST_THIRD_PARTY", - "FILTER_VIDEO_AD_POSITION_IN_STREAM", - "FILTER_VIDEO_COMPANION_SIZE", - "FILTER_VIDEO_COMPANION_TYPE", - "FILTER_VIDEO_CREATIVE_DURATION", - "FILTER_VIDEO_CREATIVE_DURATION_SKIPPABLE", - "FILTER_VIDEO_DURATION_SECONDS", - "FILTER_VIDEO_FORMAT_SUPPORT", - "FILTER_VIDEO_INVENTORY_TYPE", - "FILTER_VIDEO_PLAYER_SIZE", - "FILTER_VIDEO_RATING_TIER", - "FILTER_VIDEO_SKIPPABLE_SUPPORT", - "FILTER_VIDEO_VPAID_SUPPORT", - "FILTER_WEEK", - "FILTER_YEAR", - "FILTER_YOUTUBE_VERTICAL", - "FILTER_ZIP_CODE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - } - }, - "includeInviteData": { - "type": "boolean", - "description": "Whether to include data from Invite Media." - }, - "metrics": { - "type": "array", - "description": "Metrics to include as columns in your report.", - "items": { - "type": "string", - "enum": [ - "METRIC_ACTIVE_VIEW_AUDIBLE_VISIBLE_ON_COMPLETE_IMPRESSIONS", - "METRIC_ACTIVE_VIEW_AVERAGE_VIEWABLE_TIME", - "METRIC_ACTIVE_VIEW_DISTRIBUTION_UNMEASURABLE", - "METRIC_ACTIVE_VIEW_DISTRIBUTION_UNVIEWABLE", - "METRIC_ACTIVE_VIEW_DISTRIBUTION_VIEWABLE", - "METRIC_ACTIVE_VIEW_ELIGIBLE_IMPRESSIONS", - "METRIC_ACTIVE_VIEW_MEASURABLE_IMPRESSIONS", - "METRIC_ACTIVE_VIEW_PCT_MEASURABLE_IMPRESSIONS", - "METRIC_ACTIVE_VIEW_PCT_VIEWABLE_IMPRESSIONS", - "METRIC_ACTIVE_VIEW_PERCENT_AUDIBLE_VISIBLE_AT_START", - "METRIC_ACTIVE_VIEW_PERCENT_AUDIBLE_VISIBLE_FIRST_QUAR", - "METRIC_ACTIVE_VIEW_PERCENT_AUDIBLE_VISIBLE_ON_COMPLETE", - "METRIC_ACTIVE_VIEW_PERCENT_AUDIBLE_VISIBLE_SECOND_QUAR", - "METRIC_ACTIVE_VIEW_PERCENT_AUDIBLE_VISIBLE_THIRD_QUAR", - "METRIC_ACTIVE_VIEW_PERCENT_VIEWABLE_FOR_TIME_THRESHOLD", - "METRIC_ACTIVE_VIEW_PERCENT_VISIBLE_AT_START", - "METRIC_ACTIVE_VIEW_PERCENT_VISIBLE_FIRST_QUAR", - "METRIC_ACTIVE_VIEW_PERCENT_VISIBLE_ON_COMPLETE", - "METRIC_ACTIVE_VIEW_PERCENT_VISIBLE_SECOND_QUAR", - "METRIC_ACTIVE_VIEW_PERCENT_VISIBLE_THIRD_QUAR", - "METRIC_ACTIVE_VIEW_UNMEASURABLE_IMPRESSIONS", - "METRIC_ACTIVE_VIEW_UNVIEWABLE_IMPRESSIONS", - "METRIC_ACTIVE_VIEW_VIEWABLE_FOR_TIME_THRESHOLD", - "METRIC_ACTIVE_VIEW_VIEWABLE_IMPRESSIONS", - "METRIC_BID_REQUESTS", - "METRIC_BILLABLE_COST_ADVERTISER", - "METRIC_BILLABLE_COST_PARTNER", - "METRIC_BILLABLE_COST_USD", - "METRIC_CLICKS", - "METRIC_CLICK_TO_POST_CLICK_CONVERSION_RATE", - "METRIC_COMSCORE_VCE_AUDIENCE_AVG_FREQUENCY", - "METRIC_COMSCORE_VCE_AUDIENCE_IMPRESSIONS", - "METRIC_COMSCORE_VCE_AUDIENCE_IMPRESSIONS_SHARE", - "METRIC_COMSCORE_VCE_AUDIENCE_REACH_PCT", - "METRIC_COMSCORE_VCE_AUDIENCE_SHARE_PCT", - "METRIC_COMSCORE_VCE_GROSS_RATING_POINTS", - "METRIC_COMSCORE_VCE_POPULATION", - "METRIC_COMSCORE_VCE_UNIQUE_AUDIENCE", - "METRIC_CONVERSIONS_PER_MILLE", - "METRIC_CPM_FEE1_ADVERTISER", - "METRIC_CPM_FEE1_PARTNER", - "METRIC_CPM_FEE1_USD", - "METRIC_CPM_FEE2_ADVERTISER", - "METRIC_CPM_FEE2_PARTNER", - "METRIC_CPM_FEE2_USD", - "METRIC_CPM_FEE3_ADVERTISER", - "METRIC_CPM_FEE3_PARTNER", - "METRIC_CPM_FEE3_USD", - "METRIC_CPM_FEE4_ADVERTISER", - "METRIC_CPM_FEE4_PARTNER", - "METRIC_CPM_FEE4_USD", - "METRIC_CPM_FEE5_ADVERTISER", - "METRIC_CPM_FEE5_PARTNER", - "METRIC_CPM_FEE5_USD", - "METRIC_CTR", - "METRIC_DATA_COST_ADVERTISER", - "METRIC_DATA_COST_PARTNER", - "METRIC_DATA_COST_USD", - "METRIC_FEE10_ADVERTISER", - "METRIC_FEE10_PARTNER", - "METRIC_FEE10_USD", - "METRIC_FEE11_ADVERTISER", - "METRIC_FEE11_PARTNER", - "METRIC_FEE11_USD", - "METRIC_FEE12_ADVERTISER", - "METRIC_FEE12_PARTNER", - "METRIC_FEE12_USD", - "METRIC_FEE13_ADVERTISER", - "METRIC_FEE13_PARTNER", - "METRIC_FEE13_USD", - "METRIC_FEE14_ADVERTISER", - "METRIC_FEE14_PARTNER", - "METRIC_FEE14_USD", - "METRIC_FEE15_ADVERTISER", - "METRIC_FEE15_PARTNER", - "METRIC_FEE15_USD", - "METRIC_FEE16_ADVERTISER", - "METRIC_FEE16_PARTNER", - "METRIC_FEE16_USD", - "METRIC_FEE17_ADVERTISER", - "METRIC_FEE17_PARTNER", - "METRIC_FEE17_USD", - "METRIC_FEE18_ADVERTISER", - "METRIC_FEE18_PARTNER", - "METRIC_FEE18_USD", - "METRIC_FEE19_ADVERTISER", - "METRIC_FEE19_PARTNER", - "METRIC_FEE19_USD", - "METRIC_FEE20_ADVERTISER", - "METRIC_FEE20_PARTNER", - "METRIC_FEE20_USD", - "METRIC_FEE21_ADVERTISER", - "METRIC_FEE21_PARTNER", - "METRIC_FEE21_USD", - "METRIC_FEE22_ADVERTISER", - "METRIC_FEE22_PARTNER", - "METRIC_FEE22_USD", - "METRIC_FEE2_ADVERTISER", - "METRIC_FEE2_PARTNER", - "METRIC_FEE2_USD", - "METRIC_FEE3_ADVERTISER", - "METRIC_FEE3_PARTNER", - "METRIC_FEE3_USD", - "METRIC_FEE4_ADVERTISER", - "METRIC_FEE4_PARTNER", - "METRIC_FEE4_USD", - "METRIC_FEE5_ADVERTISER", - "METRIC_FEE5_PARTNER", - "METRIC_FEE5_USD", - "METRIC_FEE6_ADVERTISER", - "METRIC_FEE6_PARTNER", - "METRIC_FEE6_USD", - "METRIC_FEE7_ADVERTISER", - "METRIC_FEE7_PARTNER", - "METRIC_FEE7_USD", - "METRIC_FEE8_ADVERTISER", - "METRIC_FEE8_PARTNER", - "METRIC_FEE8_USD", - "METRIC_FEE9_ADVERTISER", - "METRIC_FEE9_PARTNER", - "METRIC_FEE9_USD", - "METRIC_IMPRESSIONS", - "METRIC_IMPRESSIONS_TO_CONVERSION_RATE", - "METRIC_LAST_CLICKS", - "METRIC_LAST_IMPRESSIONS", - "METRIC_MEDIA_COST_ADVERTISER", - "METRIC_MEDIA_COST_ECPAPC_ADVERTISER", - "METRIC_MEDIA_COST_ECPAPC_PARTNER", - "METRIC_MEDIA_COST_ECPAPC_USD", - "METRIC_MEDIA_COST_ECPAPV_ADVERTISER", - "METRIC_MEDIA_COST_ECPAPV_PARTNER", - "METRIC_MEDIA_COST_ECPAPV_USD", - "METRIC_MEDIA_COST_ECPA_ADVERTISER", - "METRIC_MEDIA_COST_ECPA_PARTNER", - "METRIC_MEDIA_COST_ECPA_USD", - "METRIC_MEDIA_COST_ECPCV_ADVERTISER", - "METRIC_MEDIA_COST_ECPCV_PARTNER", - "METRIC_MEDIA_COST_ECPCV_USD", - "METRIC_MEDIA_COST_ECPC_ADVERTISER", - "METRIC_MEDIA_COST_ECPC_PARTNER", - "METRIC_MEDIA_COST_ECPC_USD", - "METRIC_MEDIA_COST_ECPM_ADVERTISER", - "METRIC_MEDIA_COST_ECPM_PARTNER", - "METRIC_MEDIA_COST_ECPM_USD", - "METRIC_MEDIA_COST_PARTNER", - "METRIC_MEDIA_COST_USD", - "METRIC_MEDIA_COST_VIEWABLE_ECPM_ADVERTISER", - "METRIC_MEDIA_COST_VIEWABLE_ECPM_PARTNER", - "METRIC_MEDIA_COST_VIEWABLE_ECPM_USD", - "METRIC_MEDIA_FEE1_ADVERTISER", - "METRIC_MEDIA_FEE1_PARTNER", - "METRIC_MEDIA_FEE1_USD", - "METRIC_MEDIA_FEE2_ADVERTISER", - "METRIC_MEDIA_FEE2_PARTNER", - "METRIC_MEDIA_FEE2_USD", - "METRIC_MEDIA_FEE3_ADVERTISER", - "METRIC_MEDIA_FEE3_PARTNER", - "METRIC_MEDIA_FEE3_USD", - "METRIC_MEDIA_FEE4_ADVERTISER", - "METRIC_MEDIA_FEE4_PARTNER", - "METRIC_MEDIA_FEE4_USD", - "METRIC_MEDIA_FEE5_ADVERTISER", - "METRIC_MEDIA_FEE5_PARTNER", - "METRIC_MEDIA_FEE5_USD", - "METRIC_PIXEL_LOADS", - "METRIC_PLATFORM_FEE_ADVERTISER", - "METRIC_PLATFORM_FEE_PARTNER", - "METRIC_PLATFORM_FEE_USD", - "METRIC_POST_CLICK_DFA_REVENUE", - "METRIC_POST_VIEW_DFA_REVENUE", - "METRIC_PROFIT_ADVERTISER", - "METRIC_PROFIT_ECPAPC_ADVERTISER", - "METRIC_PROFIT_ECPAPC_PARTNER", - "METRIC_PROFIT_ECPAPC_USD", - "METRIC_PROFIT_ECPAPV_ADVERTISER", - "METRIC_PROFIT_ECPAPV_PARTNER", - "METRIC_PROFIT_ECPAPV_USD", - "METRIC_PROFIT_ECPA_ADVERTISER", - "METRIC_PROFIT_ECPA_PARTNER", - "METRIC_PROFIT_ECPA_USD", - "METRIC_PROFIT_ECPC_ADVERTISER", - "METRIC_PROFIT_ECPC_PARTNER", - "METRIC_PROFIT_ECPC_USD", - "METRIC_PROFIT_ECPM_ADVERTISER", - "METRIC_PROFIT_ECPM_PARTNER", - "METRIC_PROFIT_ECPM_USD", - "METRIC_PROFIT_MARGIN", - "METRIC_PROFIT_PARTNER", - "METRIC_PROFIT_USD", - "METRIC_PROFIT_VIEWABLE_ECPM_ADVERTISER", - "METRIC_PROFIT_VIEWABLE_ECPM_PARTNER", - "METRIC_PROFIT_VIEWABLE_ECPM_USD", - "METRIC_REACH_COOKIE_FREQUENCY", - "METRIC_REACH_COOKIE_REACH", - "METRIC_REVENUE_ADVERTISER", - "METRIC_REVENUE_ECPAPC_ADVERTISER", - "METRIC_REVENUE_ECPAPC_PARTNER", - "METRIC_REVENUE_ECPAPC_USD", - "METRIC_REVENUE_ECPAPV_ADVERTISER", - "METRIC_REVENUE_ECPAPV_PARTNER", - "METRIC_REVENUE_ECPAPV_USD", - "METRIC_REVENUE_ECPA_ADVERTISER", - "METRIC_REVENUE_ECPA_PARTNER", - "METRIC_REVENUE_ECPA_USD", - "METRIC_REVENUE_ECPCV_ADVERTISER", - "METRIC_REVENUE_ECPCV_PARTNER", - "METRIC_REVENUE_ECPCV_USD", - "METRIC_REVENUE_ECPC_ADVERTISER", - "METRIC_REVENUE_ECPC_PARTNER", - "METRIC_REVENUE_ECPC_USD", - "METRIC_REVENUE_ECPIAVC_ADVERTISER", - "METRIC_REVENUE_ECPM_ADVERTISER", - "METRIC_REVENUE_ECPM_PARTNER", - "METRIC_REVENUE_ECPM_USD", - "METRIC_REVENUE_PARTNER", - "METRIC_REVENUE_USD", - "METRIC_REVENUE_VIEWABLE_ECPM_ADVERTISER", - "METRIC_REVENUE_VIEWABLE_ECPM_PARTNER", - "METRIC_REVENUE_VIEWABLE_ECPM_USD", - "METRIC_RICH_MEDIA_VIDEO_COMPLETIONS", - "METRIC_RICH_MEDIA_VIDEO_FIRST_QUARTILE_COMPLETES", - "METRIC_RICH_MEDIA_VIDEO_FULL_SCREENS", - "METRIC_RICH_MEDIA_VIDEO_MIDPOINTS", - "METRIC_RICH_MEDIA_VIDEO_MUTES", - "METRIC_RICH_MEDIA_VIDEO_PAUSES", - "METRIC_RICH_MEDIA_VIDEO_PLAYS", - "METRIC_RICH_MEDIA_VIDEO_SKIPS", - "METRIC_RICH_MEDIA_VIDEO_THIRD_QUARTILE_COMPLETES", - "METRIC_TEA_TRUEVIEW_IMPRESSIONS", - "METRIC_TEA_TRUEVIEW_UNIQUE_COOKIES", - "METRIC_TEA_TRUEVIEW_UNIQUE_PEOPLE", - "METRIC_TOTAL_CONVERSIONS", - "METRIC_TOTAL_MEDIA_COST_ADVERTISER", - "METRIC_TOTAL_MEDIA_COST_ECPAPC_ADVERTISER", - "METRIC_TOTAL_MEDIA_COST_ECPAPC_PARTNER", - "METRIC_TOTAL_MEDIA_COST_ECPAPC_USD", - "METRIC_TOTAL_MEDIA_COST_ECPAPV_ADVERTISER", - "METRIC_TOTAL_MEDIA_COST_ECPAPV_PARTNER", - "METRIC_TOTAL_MEDIA_COST_ECPAPV_USD", - "METRIC_TOTAL_MEDIA_COST_ECPA_ADVERTISER", - "METRIC_TOTAL_MEDIA_COST_ECPA_PARTNER", - "METRIC_TOTAL_MEDIA_COST_ECPA_USD", - "METRIC_TOTAL_MEDIA_COST_ECPCV_ADVERTISER", - "METRIC_TOTAL_MEDIA_COST_ECPCV_PARTNER", - "METRIC_TOTAL_MEDIA_COST_ECPCV_USD", - "METRIC_TOTAL_MEDIA_COST_ECPC_ADVERTISER", - "METRIC_TOTAL_MEDIA_COST_ECPC_PARTNER", - "METRIC_TOTAL_MEDIA_COST_ECPC_USD", - "METRIC_TOTAL_MEDIA_COST_ECPM_ADVERTISER", - "METRIC_TOTAL_MEDIA_COST_ECPM_PARTNER", - "METRIC_TOTAL_MEDIA_COST_ECPM_USD", - "METRIC_TOTAL_MEDIA_COST_PARTNER", - "METRIC_TOTAL_MEDIA_COST_USD", - "METRIC_TOTAL_MEDIA_COST_VIEWABLE_ECPM_ADVERTISER", - "METRIC_TOTAL_MEDIA_COST_VIEWABLE_ECPM_PARTNER", - "METRIC_TOTAL_MEDIA_COST_VIEWABLE_ECPM_USD", - "METRIC_TRUEVIEW_AVERAGE_CPE_ADVERTISER", - "METRIC_TRUEVIEW_AVERAGE_CPE_PARTNER", - "METRIC_TRUEVIEW_AVERAGE_CPE_USD", - "METRIC_TRUEVIEW_CONVERSION_COST_MANY_PER_VIEW_ADVERTISER", - "METRIC_TRUEVIEW_CONVERSION_COST_MANY_PER_VIEW_PARTNER", - "METRIC_TRUEVIEW_CONVERSION_COST_MANY_PER_VIEW_USD", - "METRIC_TRUEVIEW_CONVERSION_COST_ONE_PER_VIEW_ADVERTISER", - "METRIC_TRUEVIEW_CONVERSION_COST_ONE_PER_VIEW_PARTNER", - "METRIC_TRUEVIEW_CONVERSION_COST_ONE_PER_VIEW_USD", - "METRIC_TRUEVIEW_CONVERSION_MANY_PER_VIEW", - "METRIC_TRUEVIEW_CONVERSION_ONE_PER_VIEW", - "METRIC_TRUEVIEW_CONVERSION_RATE_ONE_PER_VIEW", - "METRIC_TRUEVIEW_CONVERSION_VALUE_MANY_PER_VIEW_ADVERTISER", - "METRIC_TRUEVIEW_CONVERSION_VALUE_MANY_PER_VIEW_PARTNER", - "METRIC_TRUEVIEW_CONVERSION_VALUE_MANY_PER_VIEW_USD", - "METRIC_TRUEVIEW_CONVERSION_VALUE_ONE_PER_VIEW_ADVERTISER", - "METRIC_TRUEVIEW_CONVERSION_VALUE_ONE_PER_VIEW_PARTNER", - "METRIC_TRUEVIEW_CONVERSION_VALUE_ONE_PER_VIEW_USD", - "METRIC_TRUEVIEW_COST_CONVERSION_MANY_PER_VIEW_RATIO", - "METRIC_TRUEVIEW_COST_CONVERSION_ONE_PER_VIEW_RATIO", - "METRIC_TRUEVIEW_CPV_ADVERTISER", - "METRIC_TRUEVIEW_CPV_PARTNER", - "METRIC_TRUEVIEW_CPV_USD", - "METRIC_TRUEVIEW_EARNED_LIKES", - "METRIC_TRUEVIEW_EARNED_PLAYLIST_ADDITIONS", - "METRIC_TRUEVIEW_EARNED_SHARES", - "METRIC_TRUEVIEW_EARNED_SUBSCRIBERS", - "METRIC_TRUEVIEW_EARNED_VIEWS", - "METRIC_TRUEVIEW_ENGAGEMENTS", - "METRIC_TRUEVIEW_ENGAGEMENT_RATE", - "METRIC_TRUEVIEW_IMPRESSION_SHARE", - "METRIC_TRUEVIEW_LOST_IS_BUDGET", - "METRIC_TRUEVIEW_LOST_IS_RANK", - "METRIC_TRUEVIEW_TOTAL_CONVERSION_VALUE", - "METRIC_TRUEVIEW_TOTAL_CONVERSION_VALUES_ADVERTISER", - "METRIC_TRUEVIEW_TOTAL_CONVERSION_VALUES_PARTNER", - "METRIC_TRUEVIEW_TOTAL_CONVERSION_VALUES_USD", - "METRIC_TRUEVIEW_UNIQUE_VIEWERS", - "METRIC_TRUEVIEW_VALUE_CONVERSION_MANY_PER_VIEW_RATIO", - "METRIC_TRUEVIEW_VALUE_CONVERSION_ONE_PER_VIEW_RATIO", - "METRIC_TRUEVIEW_VIEWS", - "METRIC_TRUEVIEW_VIEW_RATE", - "METRIC_TRUEVIEW_VIEW_THROUGH_CONVERSION", - "METRIC_UNIQUE_VISITORS_COOKIES", - "METRIC_UNKNOWN", - "METRIC_VIDEO_COMPANION_CLICKS", - "METRIC_VIDEO_COMPANION_IMPRESSIONS", - "METRIC_VIDEO_COMPLETION_RATE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - } - }, - "type": { - "type": "string", - "description": "Report type.", - "enum": [ - "TYPE_ACTIVE_GRP", - "TYPE_AUDIENCE_COMPOSITION", - "TYPE_AUDIENCE_PERFORMANCE", - "TYPE_CLIENT_SAFE", - "TYPE_COMSCORE_VCE", - "TYPE_CROSS_FEE", - "TYPE_CROSS_PARTNER", - "TYPE_CROSS_PARTNER_THIRD_PARTY_DATA_PROVIDER", - "TYPE_ESTIMATED_CONVERSION", - "TYPE_FEE", - "TYPE_GENERAL", - "TYPE_INVENTORY_AVAILABILITY", - "TYPE_KEYWORD", - "TYPE_NIELSEN_AUDIENCE_PROFILE", - "TYPE_NIELSEN_DAILY_REACH_BUILD", - "TYPE_NIELSEN_ONLINE_GLOBAL_MARKET", - "TYPE_NIELSEN_SITE", - "TYPE_NOT_SUPPORTED", - "TYPE_ORDER_ID", - "TYPE_PAGE_CATEGORY", - "TYPE_PETRA_NIELSEN_AUDIENCE_PROFILE", - "TYPE_PETRA_NIELSEN_DAILY_REACH_BUILD", - "TYPE_PETRA_NIELSEN_ONLINE_GLOBAL_MARKET", - "TYPE_PIXEL_LOAD", - "TYPE_REACH_AND_FREQUENCY", - "TYPE_REACH_AUDIENCE", - "TYPE_THIRD_PARTY_DATA_PROVIDER", - "TYPE_TRUEVIEW", - "TYPE_TRUEVIEW_IAR", - "TYPE_VERIFICATION", - "TYPE_YOUTUBE_VERTICAL" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - } - } - }, - "Query": { - "id": "Query", - "type": "object", - "description": "Represents a query.", - "properties": { - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"doubleclickbidmanager#query\".", - "default": "doubleclickbidmanager#query" - }, - "metadata": { - "$ref": "QueryMetadata", - "description": "Query metadata." - }, - "params": { - "$ref": "Parameters", - "description": "Query parameters." - }, - "queryId": { - "type": "string", - "description": "Query ID.", - "format": "int64" - }, - "reportDataEndTimeMs": { - "type": "string", - "description": "The ending time for the data that is shown in the report. Note, reportDataEndTimeMs is required if metadata.dataRange is CUSTOM_DATES and ignored otherwise.", - "format": "int64" - }, - "reportDataStartTimeMs": { - "type": "string", - "description": "The starting time for the data that is shown in the report. Note, reportDataStartTimeMs is required if metadata.dataRange is CUSTOM_DATES and ignored otherwise.", - "format": "int64" - }, - "schedule": { - "$ref": "QuerySchedule", - "description": "Information on how often and when to run a query." - }, - "timezoneCode": { - "type": "string", - "description": "Canonical timezone code for report data time. Defaults to America/New_York." - } - } - }, - "QueryMetadata": { - "id": "QueryMetadata", - "type": "object", - "description": "Query metadata.", - "properties": { - "dataRange": { - "type": "string", - "description": "Range of report data.", - "enum": [ - "ALL_TIME", - "CURRENT_DAY", - "CUSTOM_DATES", - "LAST_14_DAYS", - "LAST_30_DAYS", - "LAST_365_DAYS", - "LAST_7_DAYS", - "LAST_90_DAYS", - "MONTH_TO_DATE", - "PREVIOUS_DAY", - "PREVIOUS_HALF_MONTH", - "PREVIOUS_MONTH", - "PREVIOUS_QUARTER", - "PREVIOUS_WEEK", - "PREVIOUS_YEAR", - "QUARTER_TO_DATE", - "TYPE_NOT_SUPPORTED", - "WEEK_TO_DATE", - "YEAR_TO_DATE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "format": { - "type": "string", - "description": "Format of the generated report.", - "enum": [ - "CSV", - "EXCEL_CSV", - "XLSX" - ], - "enumDescriptions": [ - "", - "", - "" - ] - }, - "googleCloudStoragePathForLatestReport": { - "type": "string", - "description": "The path to the location in Google Cloud Storage where the latest report is stored." - }, - "googleDrivePathForLatestReport": { - "type": "string", - "description": "The path in Google Drive for the latest report." - }, - "latestReportRunTimeMs": { - "type": "string", - "description": "The time when the latest report started to run.", - "format": "int64" - }, - "locale": { - "type": "string", - "description": "Locale of the generated reports. Valid values are cs CZECH de GERMAN en ENGLISH es SPANISH fr FRENCH it ITALIAN ja JAPANESE ko KOREAN pl POLISH pt-BR BRAZILIAN_PORTUGUESE ru RUSSIAN tr TURKISH uk UKRAINIAN zh-CN CHINA_CHINESE zh-TW TAIWAN_CHINESE\n\nAn locale string not in the list above will generate reports in English." - }, - "reportCount": { - "type": "integer", - "description": "Number of reports that have been generated for the query.", - "format": "int32" - }, - "running": { - "type": "boolean", - "description": "Whether the latest report is currently running." - }, - "sendNotification": { - "type": "boolean", - "description": "Whether to send an email notification when a report is ready. Default to false." - }, - "shareEmailAddress": { - "type": "array", - "description": "List of email addresses which are sent email notifications when the report is finished. Separate from sendNotification.", - "items": { - "type": "string" - } - }, - "title": { - "type": "string", - "description": "Query title. It is used to name the reports generated from this query." - } - } - }, - "QuerySchedule": { - "id": "QuerySchedule", - "type": "object", - "description": "Information on how frequently and when to run a query.", - "properties": { - "endTimeMs": { - "type": "string", - "description": "Datetime to periodically run the query until.", - "format": "int64" - }, - "frequency": { - "type": "string", - "description": "How often the query is run.", - "enum": [ - "DAILY", - "MONTHLY", - "ONE_TIME", - "QUARTERLY", - "SEMI_MONTHLY", - "WEEKLY" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "" - ] - }, - "nextRunMinuteOfDay": { - "type": "integer", - "description": "Time of day at which a new report will be generated, represented as minutes past midnight. Range is 0 to 1439. Only applies to scheduled reports.", - "format": "int32" - }, - "nextRunTimezoneCode": { - "type": "string", - "description": "Canonical timezone code for report generation time. Defaults to America/New_York." - } - } - }, - "Report": { - "id": "Report", - "type": "object", - "description": "Represents a report.", - "properties": { - "key": { - "$ref": "ReportKey", - "description": "Key used to identify a report." - }, - "metadata": { - "$ref": "ReportMetadata", - "description": "Report metadata." - }, - "params": { - "$ref": "Parameters", - "description": "Report parameters." - } - } - }, - "ReportFailure": { - "id": "ReportFailure", - "type": "object", - "description": "An explanation of a report failure.", - "properties": { - "errorCode": { - "type": "string", - "description": "Error code that shows why the report was not created.", - "enum": [ - "AUTHENTICATION_ERROR", - "DEPRECATED_REPORTING_INVALID_QUERY", - "REPORTING_BUCKET_NOT_FOUND", - "REPORTING_CREATE_BUCKET_FAILED", - "REPORTING_DELETE_BUCKET_FAILED", - "REPORTING_FATAL_ERROR", - "REPORTING_ILLEGAL_FILENAME", - "REPORTING_IMCOMPATIBLE_METRICS", - "REPORTING_INVALID_QUERY_MISSING_PARTNER_AND_ADVERTISER_FILTERS", - "REPORTING_INVALID_QUERY_TITLE_MISSING", - "REPORTING_INVALID_QUERY_TOO_MANY_UNFILTERED_LARGE_GROUP_BYS", - "REPORTING_QUERY_NOT_FOUND", - "REPORTING_TRANSIENT_ERROR", - "REPORTING_UPDATE_BUCKET_PERMISSION_FAILED", - "REPORTING_WRITE_BUCKET_OBJECT_FAILED", - "SERVER_ERROR", - "UNAUTHORIZED_API_ACCESS", - "VALIDATION_ERROR" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - } - } - }, - "ReportKey": { - "id": "ReportKey", - "type": "object", - "description": "Key used to identify a report.", - "properties": { - "queryId": { - "type": "string", - "description": "Query ID.", - "format": "int64" - }, - "reportId": { - "type": "string", - "description": "Report ID.", - "format": "int64" - } - } - }, - "ReportMetadata": { - "id": "ReportMetadata", - "type": "object", - "description": "Report metadata.", - "properties": { - "googleCloudStoragePath": { - "type": "string", - "description": "The path to the location in Google Cloud Storage where the report is stored." - }, - "reportDataEndTimeMs": { - "type": "string", - "description": "The ending time for the data that is shown in the report.", - "format": "int64" - }, - "reportDataStartTimeMs": { - "type": "string", - "description": "The starting time for the data that is shown in the report.", - "format": "int64" - }, - "status": { - "$ref": "ReportStatus", - "description": "Report status." - } - } - }, - "ReportStatus": { - "id": "ReportStatus", - "type": "object", - "description": "Report status.", - "properties": { - "failure": { - "$ref": "ReportFailure", - "description": "If the report failed, this records the cause." - }, - "finishTimeMs": { - "type": "string", - "description": "The time when this report either completed successfully or failed.", - "format": "int64" - }, - "format": { - "type": "string", - "description": "The file type of the report.", - "enum": [ - "CSV", - "EXCEL_CSV", - "XLSX" - ], - "enumDescriptions": [ - "", - "", - "" - ] - }, - "state": { - "type": "string", - "description": "The state of the report.", - "enum": [ - "DONE", - "FAILED", - "RUNNING" - ], - "enumDescriptions": [ - "", - "", - "" - ] - } - } - }, - "RowStatus": { - "id": "RowStatus", - "type": "object", - "description": "Represents the upload status of a row in the request.", - "properties": { - "changed": { - "type": "boolean", - "description": "Whether the stored entity is changed as a result of upload." - }, - "entityId": { - "type": "string", - "description": "Entity Id.", - "format": "int64" - }, - "entityName": { - "type": "string", - "description": "Entity name." - }, - "errors": { - "type": "array", - "description": "Reasons why the entity can't be uploaded.", - "items": { - "type": "string" - } - }, - "persisted": { - "type": "boolean", - "description": "Whether the entity is persisted." - }, - "rowNumber": { - "type": "integer", - "description": "Row number.", - "format": "int32" - } - } - }, - "RunQueryRequest": { - "id": "RunQueryRequest", - "type": "object", - "description": "Request to run a stored query to generate a report.", - "properties": { - "dataRange": { - "type": "string", - "description": "Report data range used to generate the report.", - "enum": [ - "ALL_TIME", - "CURRENT_DAY", - "CUSTOM_DATES", - "LAST_14_DAYS", - "LAST_30_DAYS", - "LAST_365_DAYS", - "LAST_7_DAYS", - "LAST_90_DAYS", - "MONTH_TO_DATE", - "PREVIOUS_DAY", - "PREVIOUS_HALF_MONTH", - "PREVIOUS_MONTH", - "PREVIOUS_QUARTER", - "PREVIOUS_WEEK", - "PREVIOUS_YEAR", - "QUARTER_TO_DATE", - "TYPE_NOT_SUPPORTED", - "WEEK_TO_DATE", - "YEAR_TO_DATE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "reportDataEndTimeMs": { - "type": "string", - "description": "The ending time for the data that is shown in the report. Note, reportDataEndTimeMs is required if dataRange is CUSTOM_DATES and ignored otherwise.", - "format": "int64" - }, - "reportDataStartTimeMs": { - "type": "string", - "description": "The starting time for the data that is shown in the report. Note, reportDataStartTimeMs is required if dataRange is CUSTOM_DATES and ignored otherwise.", - "format": "int64" - }, - "timezoneCode": { - "type": "string", - "description": "Canonical timezone code for report data time. Defaults to America/New_York." - } - } - }, - "UploadLineItemsRequest": { - "id": "UploadLineItemsRequest", - "type": "object", - "description": "Request to upload line items.", - "properties": { - "dryRun": { - "type": "boolean", - "description": "Set to true to get upload status without actually persisting the line items." - }, - "format": { - "type": "string", - "description": "Format the line items are in. Default to CSV.", - "enum": [ - "CSV" - ], - "enumDescriptions": [ - "" - ] - }, - "lineItems": { - "type": "string", - "description": "Line items in CSV to upload. Refer to Entity Write File Format for more information on file format." - } - } - }, - "UploadLineItemsResponse": { - "id": "UploadLineItemsResponse", - "type": "object", - "description": "Upload line items response.", - "properties": { - "uploadStatus": { - "$ref": "UploadStatus", - "description": "Status of upload." - } - } - }, - "UploadStatus": { - "id": "UploadStatus", - "type": "object", - "description": "Represents the status of upload.", - "properties": { - "errors": { - "type": "array", - "description": "Reasons why upload can't be completed.", - "items": { - "type": "string" - } - }, - "rowStatus": { - "type": "array", - "description": "Per-row upload status.", - "items": { - "$ref": "RowStatus" - } - } - } - } - }, - "resources": { - "lineitems": { - "methods": { - "downloadlineitems": { - "id": "doubleclickbidmanager.lineitems.downloadlineitems", - "path": "lineitems/downloadlineitems", - "httpMethod": "POST", - "description": "Retrieves line items in CSV format.", - "request": { - "$ref": "DownloadLineItemsRequest" - }, - "response": { - "$ref": "DownloadLineItemsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/doubleclickbidmanager" - ] - }, - "uploadlineitems": { - "id": "doubleclickbidmanager.lineitems.uploadlineitems", - "path": "lineitems/uploadlineitems", - "httpMethod": "POST", - "description": "Uploads line items in CSV format.", - "request": { - "$ref": "UploadLineItemsRequest" - }, - "response": { - "$ref": "UploadLineItemsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/doubleclickbidmanager" - ] - } - } - }, - "queries": { - "methods": { - "createquery": { - "id": "doubleclickbidmanager.queries.createquery", - "path": "query", - "httpMethod": "POST", - "description": "Creates a query.", - "request": { - "$ref": "Query" - }, - "response": { - "$ref": "Query" - }, - "scopes": [ - "https://www.googleapis.com/auth/doubleclickbidmanager" - ] - }, - "deletequery": { - "id": "doubleclickbidmanager.queries.deletequery", - "path": "query/{queryId}", - "httpMethod": "DELETE", - "description": "Deletes a stored query as well as the associated stored reports.", - "parameters": { - "queryId": { - "type": "string", - "description": "Query ID to delete.", - "required": true, - "format": "int64", - "location": "path" + "methods": { + "listreports": { + "description": "Retrieves stored reports.", + "httpMethod": "GET", + "id": "doubleclickbidmanager.reports.listreports", + "parameterOrder": [ + "queryId" + ], + "parameters": { + "queryId": { + "description": "Query ID with which the reports are associated.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "queries/{queryId}/reports", + "response": { + "$ref": "ListReportsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/doubleclickbidmanager" + ] + } } - }, - "parameterOrder": [ - "queryId" - ], - "scopes": [ - "https://www.googleapis.com/auth/doubleclickbidmanager" - ] }, - "getquery": { - "id": "doubleclickbidmanager.queries.getquery", - "path": "query/{queryId}", - "httpMethod": "GET", - "description": "Retrieves a stored query.", - "parameters": { - "queryId": { - "type": "string", - "description": "Query ID to retrieve.", - "required": true, - "format": "int64", - "location": "path" + "sdf": { + "methods": { + "download": { + "description": "Retrieves entities in SDF format.", + "httpMethod": "POST", + "id": "doubleclickbidmanager.sdf.download", + "path": "sdf/download", + "request": { + "$ref": "DownloadRequest" + }, + "response": { + "$ref": "DownloadResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/doubleclickbidmanager" + ] + } } - }, - "parameterOrder": [ - "queryId" - ], - "response": { - "$ref": "Query" - }, - "scopes": [ - "https://www.googleapis.com/auth/doubleclickbidmanager" - ] - }, - "listqueries": { - "id": "doubleclickbidmanager.queries.listqueries", - "path": "queries", - "httpMethod": "GET", - "description": "Retrieves stored queries.", - "response": { - "$ref": "ListQueriesResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/doubleclickbidmanager" - ] - }, - "runquery": { - "id": "doubleclickbidmanager.queries.runquery", - "path": "query/{queryId}", - "httpMethod": "POST", - "description": "Runs a stored query to generate a report.", - "parameters": { - "queryId": { - "type": "string", - "description": "Query ID to run.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "queryId" - ], - "request": { - "$ref": "RunQueryRequest" - }, - "scopes": [ - "https://www.googleapis.com/auth/doubleclickbidmanager" - ] } - } }, - "reports": { - "methods": { - "listreports": { - "id": "doubleclickbidmanager.reports.listreports", - "path": "queries/{queryId}/reports", - "httpMethod": "GET", - "description": "Retrieves stored reports.", - "parameters": { - "queryId": { - "type": "string", - "description": "Query ID with which the reports are associated.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "queryId" - ], - "response": { - "$ref": "ListReportsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/doubleclickbidmanager" - ] + "revision": "20180215", + "rootUrl": "https://www.googleapis.com/", + "schemas": { + "DownloadLineItemsRequest": { + "description": "Request to fetch stored line items.", + "id": "DownloadLineItemsRequest", + "properties": { + "fileSpec": { + "description": "File specification (column names, types, order) in which the line items will be returned. Default to EWF.", + "enum": [ + "EWF" + ], + "enumDescriptions": [ + "" + ], + "type": "string" + }, + "filterIds": { + "description": "Ids of the specified filter type used to filter line items to fetch. If omitted, all the line items will be returned.", + "items": { + "format": "int64", + "type": "string" + }, + "type": "array" + }, + "filterType": { + "description": "Filter type used to filter line items to fetch.", + "enum": [ + "ADVERTISER_ID", + "INSERTION_ORDER_ID", + "LINE_ITEM_ID" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, + "format": { + "description": "Format in which the line items will be returned. Default to CSV.", + "enum": [ + "CSV" + ], + "enumDescriptions": [ + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "DownloadLineItemsResponse": { + "description": "Download line items response.", + "id": "DownloadLineItemsResponse", + "properties": { + "lineItems": { + "description": "Retrieved line items in CSV format. For more information about file formats, see Entity Write File Format.", + "type": "string" + } + }, + "type": "object" + }, + "DownloadRequest": { + "description": "Request to fetch stored insertion orders, line items, TrueView ad groups and ads.", + "id": "DownloadRequest", + "properties": { + "fileTypes": { + "description": "File types that will be returned.", + "items": { + "enum": [ + "AD", + "AD_GROUP", + "CAMPAIGN", + "INSERTION_ORDER", + "LINE_ITEM" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "type": "array" + }, + "filterIds": { + "description": "The IDs of the specified filter type. This is used to filter entities to fetch. At least one ID must be specified. Only one ID is allowed for the ADVERTISER_ID filter type. For INSERTION_ORDER_ID or LINE_ITEM_ID filter types, all IDs must be from the same Advertiser.", + "items": { + "format": "int64", + "type": "string" + }, + "type": "array" + }, + "filterType": { + "description": "Filter type used to filter line items to fetch.", + "enum": [ + "ADVERTISER_ID", + "CAMPAIGN_ID", + "INSERTION_ORDER_ID", + "LINE_ITEM_ID" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ], + "type": "string" + }, + "version": { + "description": "SDF Version (column names, types, order) in which the entities will be returned. Default to 3.", + "type": "string" + } + }, + "type": "object" + }, + "DownloadResponse": { + "description": "Download response.", + "id": "DownloadResponse", + "properties": { + "adGroups": { + "description": "Retrieved ad groups in SDF format.", + "type": "string" + }, + "ads": { + "description": "Retrieved ads in SDF format.", + "type": "string" + }, + "campaigns": { + "description": "Retrieved campaigns in SDF format.", + "type": "string" + }, + "insertionOrders": { + "description": "Retrieved insertion orders in SDF format.", + "type": "string" + }, + "lineItems": { + "description": "Retrieved line items in SDF format.", + "type": "string" + } + }, + "type": "object" + }, + "FilterPair": { + "description": "Filter used to match traffic data in your report.", + "id": "FilterPair", + "properties": { + "type": { + "description": "Filter type.", + "enum": [ + "FILTER_ACTIVE_VIEW_EXPECTED_VIEWABILITY", + "FILTER_ACTIVITY_ID", + "FILTER_ADVERTISER", + "FILTER_ADVERTISER_CURRENCY", + "FILTER_ADVERTISER_TIMEZONE", + "FILTER_AD_POSITION", + "FILTER_AGE", + "FILTER_BRANDSAFE_CHANNEL_ID", + "FILTER_BROWSER", + "FILTER_BUDGET_SEGMENT_DESCRIPTION", + "FILTER_CAMPAIGN_DAILY_FREQUENCY", + "FILTER_CARRIER", + "FILTER_CHANNEL_ID", + "FILTER_CITY", + "FILTER_COMPANION_CREATIVE_ID", + "FILTER_CONVERSION_DELAY", + "FILTER_COUNTRY", + "FILTER_CREATIVE_HEIGHT", + "FILTER_CREATIVE_ID", + "FILTER_CREATIVE_SIZE", + "FILTER_CREATIVE_TYPE", + "FILTER_CREATIVE_WIDTH", + "FILTER_DATA_PROVIDER", + "FILTER_DATE", + "FILTER_DAY_OF_WEEK", + "FILTER_DFP_ORDER_ID", + "FILTER_DMA", + "FILTER_EXCHANGE_ID", + "FILTER_FLOODLIGHT_PIXEL_ID", + "FILTER_GENDER", + "FILTER_INSERTION_ORDER", + "FILTER_INVENTORY_FORMAT", + "FILTER_INVENTORY_SOURCE", + "FILTER_INVENTORY_SOURCE_TYPE", + "FILTER_KEYWORD", + "FILTER_LINE_ITEM", + "FILTER_LINE_ITEM_DAILY_FREQUENCY", + "FILTER_LINE_ITEM_LIFETIME_FREQUENCY", + "FILTER_LINE_ITEM_TYPE", + "FILTER_MEDIA_PLAN", + "FILTER_MOBILE_DEVICE_MAKE", + "FILTER_MOBILE_DEVICE_MAKE_MODEL", + "FILTER_MOBILE_DEVICE_TYPE", + "FILTER_MOBILE_GEO", + "FILTER_MONTH", + "FILTER_MRAID_SUPPORT", + "FILTER_NIELSEN_AGE", + "FILTER_NIELSEN_COUNTRY_CODE", + "FILTER_NIELSEN_DEVICE_ID", + "FILTER_NIELSEN_GENDER", + "FILTER_NOT_SUPPORTED", + "FILTER_ORDER_ID", + "FILTER_OS", + "FILTER_PAGE_CATEGORY", + "FILTER_PAGE_LAYOUT", + "FILTER_PARTNER", + "FILTER_PARTNER_CURRENCY", + "FILTER_PUBLIC_INVENTORY", + "FILTER_QUARTER", + "FILTER_REGION", + "FILTER_REGULAR_CHANNEL_ID", + "FILTER_SITE_ID", + "FILTER_SITE_LANGUAGE", + "FILTER_SKIPPABLE_SUPPORT", + "FILTER_TARGETED_USER_LIST", + "FILTER_TIME_OF_DAY", + "FILTER_TRUEVIEW_AD_GROUP_AD_ID", + "FILTER_TRUEVIEW_AD_GROUP_ID", + "FILTER_TRUEVIEW_AGE", + "FILTER_TRUEVIEW_CATEGORY", + "FILTER_TRUEVIEW_CITY", + "FILTER_TRUEVIEW_CONVERSION_TYPE", + "FILTER_TRUEVIEW_COUNTRY", + "FILTER_TRUEVIEW_CUSTOM_AFFINITY", + "FILTER_TRUEVIEW_DMA", + "FILTER_TRUEVIEW_GENDER", + "FILTER_TRUEVIEW_IAR_AGE", + "FILTER_TRUEVIEW_IAR_CATEGORY", + "FILTER_TRUEVIEW_IAR_CITY", + "FILTER_TRUEVIEW_IAR_COUNTRY", + "FILTER_TRUEVIEW_IAR_GENDER", + "FILTER_TRUEVIEW_IAR_INTEREST", + "FILTER_TRUEVIEW_IAR_LANGUAGE", + "FILTER_TRUEVIEW_IAR_PARENTAL_STATUS", + "FILTER_TRUEVIEW_IAR_REGION", + "FILTER_TRUEVIEW_IAR_REMARKETING_LIST", + "FILTER_TRUEVIEW_IAR_TIME_OF_DAY", + "FILTER_TRUEVIEW_IAR_YOUTUBE_CHANNEL", + "FILTER_TRUEVIEW_IAR_YOUTUBE_VIDEO", + "FILTER_TRUEVIEW_IAR_ZIPCODE", + "FILTER_TRUEVIEW_INTEREST", + "FILTER_TRUEVIEW_KEYWORD", + "FILTER_TRUEVIEW_PARENTAL_STATUS", + "FILTER_TRUEVIEW_PLACEMENT", + "FILTER_TRUEVIEW_REGION", + "FILTER_TRUEVIEW_REMARKETING_LIST", + "FILTER_TRUEVIEW_URL", + "FILTER_TRUEVIEW_ZIPCODE", + "FILTER_UNKNOWN", + "FILTER_USER_LIST", + "FILTER_USER_LIST_FIRST_PARTY", + "FILTER_USER_LIST_THIRD_PARTY", + "FILTER_VIDEO_AD_POSITION_IN_STREAM", + "FILTER_VIDEO_COMPANION_SIZE", + "FILTER_VIDEO_COMPANION_TYPE", + "FILTER_VIDEO_CREATIVE_DURATION", + "FILTER_VIDEO_CREATIVE_DURATION_SKIPPABLE", + "FILTER_VIDEO_DURATION_SECONDS", + "FILTER_VIDEO_FORMAT_SUPPORT", + "FILTER_VIDEO_INVENTORY_TYPE", + "FILTER_VIDEO_PLAYER_SIZE", + "FILTER_VIDEO_RATING_TIER", + "FILTER_VIDEO_SKIPPABLE_SUPPORT", + "FILTER_VIDEO_VPAID_SUPPORT", + "FILTER_WEEK", + "FILTER_YEAR", + "FILTER_YOUTUBE_VERTICAL", + "FILTER_ZIP_CODE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "value": { + "description": "Filter value.", + "type": "string" + } + }, + "type": "object" + }, + "ListQueriesResponse": { + "description": "List queries response.", + "id": "ListQueriesResponse", + "properties": { + "kind": { + "default": "doubleclickbidmanager#listQueriesResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"doubleclickbidmanager#listQueriesResponse\".", + "type": "string" + }, + "queries": { + "description": "Retrieved queries.", + "items": { + "$ref": "Query" + }, + "type": "array" + } + }, + "type": "object" + }, + "ListReportsResponse": { + "description": "List reports response.", + "id": "ListReportsResponse", + "properties": { + "kind": { + "default": "doubleclickbidmanager#listReportsResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"doubleclickbidmanager#listReportsResponse\".", + "type": "string" + }, + "reports": { + "description": "Retrieved reports.", + "items": { + "$ref": "Report" + }, + "type": "array" + } + }, + "type": "object" + }, + "Parameters": { + "description": "Parameters of a query or report.", + "id": "Parameters", + "properties": { + "filters": { + "description": "Filters used to match traffic data in your report.", + "items": { + "$ref": "FilterPair" + }, + "type": "array" + }, + "groupBys": { + "description": "Data is grouped by the filters listed in this field.", + "items": { + "enum": [ + "FILTER_ACTIVE_VIEW_EXPECTED_VIEWABILITY", + "FILTER_ACTIVITY_ID", + "FILTER_ADVERTISER", + "FILTER_ADVERTISER_CURRENCY", + "FILTER_ADVERTISER_TIMEZONE", + "FILTER_AD_POSITION", + "FILTER_AGE", + "FILTER_BRANDSAFE_CHANNEL_ID", + "FILTER_BROWSER", + "FILTER_BUDGET_SEGMENT_DESCRIPTION", + "FILTER_CAMPAIGN_DAILY_FREQUENCY", + "FILTER_CARRIER", + "FILTER_CHANNEL_ID", + "FILTER_CITY", + "FILTER_COMPANION_CREATIVE_ID", + "FILTER_CONVERSION_DELAY", + "FILTER_COUNTRY", + "FILTER_CREATIVE_HEIGHT", + "FILTER_CREATIVE_ID", + "FILTER_CREATIVE_SIZE", + "FILTER_CREATIVE_TYPE", + "FILTER_CREATIVE_WIDTH", + "FILTER_DATA_PROVIDER", + "FILTER_DATE", + "FILTER_DAY_OF_WEEK", + "FILTER_DFP_ORDER_ID", + "FILTER_DMA", + "FILTER_EXCHANGE_ID", + "FILTER_FLOODLIGHT_PIXEL_ID", + "FILTER_GENDER", + "FILTER_INSERTION_ORDER", + "FILTER_INVENTORY_FORMAT", + "FILTER_INVENTORY_SOURCE", + "FILTER_INVENTORY_SOURCE_TYPE", + "FILTER_KEYWORD", + "FILTER_LINE_ITEM", + "FILTER_LINE_ITEM_DAILY_FREQUENCY", + "FILTER_LINE_ITEM_LIFETIME_FREQUENCY", + "FILTER_LINE_ITEM_TYPE", + "FILTER_MEDIA_PLAN", + "FILTER_MOBILE_DEVICE_MAKE", + "FILTER_MOBILE_DEVICE_MAKE_MODEL", + "FILTER_MOBILE_DEVICE_TYPE", + "FILTER_MOBILE_GEO", + "FILTER_MONTH", + "FILTER_MRAID_SUPPORT", + "FILTER_NIELSEN_AGE", + "FILTER_NIELSEN_COUNTRY_CODE", + "FILTER_NIELSEN_DEVICE_ID", + "FILTER_NIELSEN_GENDER", + "FILTER_NOT_SUPPORTED", + "FILTER_ORDER_ID", + "FILTER_OS", + "FILTER_PAGE_CATEGORY", + "FILTER_PAGE_LAYOUT", + "FILTER_PARTNER", + "FILTER_PARTNER_CURRENCY", + "FILTER_PUBLIC_INVENTORY", + "FILTER_QUARTER", + "FILTER_REGION", + "FILTER_REGULAR_CHANNEL_ID", + "FILTER_SITE_ID", + "FILTER_SITE_LANGUAGE", + "FILTER_SKIPPABLE_SUPPORT", + "FILTER_TARGETED_USER_LIST", + "FILTER_TIME_OF_DAY", + "FILTER_TRUEVIEW_AD_GROUP_AD_ID", + "FILTER_TRUEVIEW_AD_GROUP_ID", + "FILTER_TRUEVIEW_AGE", + "FILTER_TRUEVIEW_CATEGORY", + "FILTER_TRUEVIEW_CITY", + "FILTER_TRUEVIEW_CONVERSION_TYPE", + "FILTER_TRUEVIEW_COUNTRY", + "FILTER_TRUEVIEW_CUSTOM_AFFINITY", + "FILTER_TRUEVIEW_DMA", + "FILTER_TRUEVIEW_GENDER", + "FILTER_TRUEVIEW_IAR_AGE", + "FILTER_TRUEVIEW_IAR_CATEGORY", + "FILTER_TRUEVIEW_IAR_CITY", + "FILTER_TRUEVIEW_IAR_COUNTRY", + "FILTER_TRUEVIEW_IAR_GENDER", + "FILTER_TRUEVIEW_IAR_INTEREST", + "FILTER_TRUEVIEW_IAR_LANGUAGE", + "FILTER_TRUEVIEW_IAR_PARENTAL_STATUS", + "FILTER_TRUEVIEW_IAR_REGION", + "FILTER_TRUEVIEW_IAR_REMARKETING_LIST", + "FILTER_TRUEVIEW_IAR_TIME_OF_DAY", + "FILTER_TRUEVIEW_IAR_YOUTUBE_CHANNEL", + "FILTER_TRUEVIEW_IAR_YOUTUBE_VIDEO", + "FILTER_TRUEVIEW_IAR_ZIPCODE", + "FILTER_TRUEVIEW_INTEREST", + "FILTER_TRUEVIEW_KEYWORD", + "FILTER_TRUEVIEW_PARENTAL_STATUS", + "FILTER_TRUEVIEW_PLACEMENT", + "FILTER_TRUEVIEW_REGION", + "FILTER_TRUEVIEW_REMARKETING_LIST", + "FILTER_TRUEVIEW_URL", + "FILTER_TRUEVIEW_ZIPCODE", + "FILTER_UNKNOWN", + "FILTER_USER_LIST", + "FILTER_USER_LIST_FIRST_PARTY", + "FILTER_USER_LIST_THIRD_PARTY", + "FILTER_VIDEO_AD_POSITION_IN_STREAM", + "FILTER_VIDEO_COMPANION_SIZE", + "FILTER_VIDEO_COMPANION_TYPE", + "FILTER_VIDEO_CREATIVE_DURATION", + "FILTER_VIDEO_CREATIVE_DURATION_SKIPPABLE", + "FILTER_VIDEO_DURATION_SECONDS", + "FILTER_VIDEO_FORMAT_SUPPORT", + "FILTER_VIDEO_INVENTORY_TYPE", + "FILTER_VIDEO_PLAYER_SIZE", + "FILTER_VIDEO_RATING_TIER", + "FILTER_VIDEO_SKIPPABLE_SUPPORT", + "FILTER_VIDEO_VPAID_SUPPORT", + "FILTER_WEEK", + "FILTER_YEAR", + "FILTER_YOUTUBE_VERTICAL", + "FILTER_ZIP_CODE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "type": "array" + }, + "includeInviteData": { + "description": "Whether to include data from Invite Media.", + "type": "boolean" + }, + "metrics": { + "description": "Metrics to include as columns in your report.", + "items": { + "enum": [ + "METRIC_ACTIVE_VIEW_AUDIBLE_VISIBLE_ON_COMPLETE_IMPRESSIONS", + "METRIC_ACTIVE_VIEW_AVERAGE_VIEWABLE_TIME", + "METRIC_ACTIVE_VIEW_DISTRIBUTION_UNMEASURABLE", + "METRIC_ACTIVE_VIEW_DISTRIBUTION_UNVIEWABLE", + "METRIC_ACTIVE_VIEW_DISTRIBUTION_VIEWABLE", + "METRIC_ACTIVE_VIEW_ELIGIBLE_IMPRESSIONS", + "METRIC_ACTIVE_VIEW_MEASURABLE_IMPRESSIONS", + "METRIC_ACTIVE_VIEW_PCT_MEASURABLE_IMPRESSIONS", + "METRIC_ACTIVE_VIEW_PCT_VIEWABLE_IMPRESSIONS", + "METRIC_ACTIVE_VIEW_PERCENT_AUDIBLE_VISIBLE_AT_START", + "METRIC_ACTIVE_VIEW_PERCENT_AUDIBLE_VISIBLE_FIRST_QUAR", + "METRIC_ACTIVE_VIEW_PERCENT_AUDIBLE_VISIBLE_ON_COMPLETE", + "METRIC_ACTIVE_VIEW_PERCENT_AUDIBLE_VISIBLE_SECOND_QUAR", + "METRIC_ACTIVE_VIEW_PERCENT_AUDIBLE_VISIBLE_THIRD_QUAR", + "METRIC_ACTIVE_VIEW_PERCENT_VIEWABLE_FOR_TIME_THRESHOLD", + "METRIC_ACTIVE_VIEW_PERCENT_VISIBLE_AT_START", + "METRIC_ACTIVE_VIEW_PERCENT_VISIBLE_FIRST_QUAR", + "METRIC_ACTIVE_VIEW_PERCENT_VISIBLE_ON_COMPLETE", + "METRIC_ACTIVE_VIEW_PERCENT_VISIBLE_SECOND_QUAR", + "METRIC_ACTIVE_VIEW_PERCENT_VISIBLE_THIRD_QUAR", + "METRIC_ACTIVE_VIEW_UNMEASURABLE_IMPRESSIONS", + "METRIC_ACTIVE_VIEW_UNVIEWABLE_IMPRESSIONS", + "METRIC_ACTIVE_VIEW_VIEWABLE_FOR_TIME_THRESHOLD", + "METRIC_ACTIVE_VIEW_VIEWABLE_IMPRESSIONS", + "METRIC_BID_REQUESTS", + "METRIC_BILLABLE_COST_ADVERTISER", + "METRIC_BILLABLE_COST_PARTNER", + "METRIC_BILLABLE_COST_USD", + "METRIC_CLICKS", + "METRIC_CLICK_TO_POST_CLICK_CONVERSION_RATE", + "METRIC_COMSCORE_VCE_AUDIENCE_AVG_FREQUENCY", + "METRIC_COMSCORE_VCE_AUDIENCE_IMPRESSIONS", + "METRIC_COMSCORE_VCE_AUDIENCE_IMPRESSIONS_SHARE", + "METRIC_COMSCORE_VCE_AUDIENCE_REACH_PCT", + "METRIC_COMSCORE_VCE_AUDIENCE_SHARE_PCT", + "METRIC_COMSCORE_VCE_GROSS_RATING_POINTS", + "METRIC_COMSCORE_VCE_POPULATION", + "METRIC_COMSCORE_VCE_UNIQUE_AUDIENCE", + "METRIC_CONVERSIONS_PER_MILLE", + "METRIC_COOKIE_REACH_AVERAGE_IMPRESSION_FREQUENCY", + "METRIC_COOKIE_REACH_IMPRESSION_REACH", + "METRIC_CPM_FEE1_ADVERTISER", + "METRIC_CPM_FEE1_PARTNER", + "METRIC_CPM_FEE1_USD", + "METRIC_CPM_FEE2_ADVERTISER", + "METRIC_CPM_FEE2_PARTNER", + "METRIC_CPM_FEE2_USD", + "METRIC_CPM_FEE3_ADVERTISER", + "METRIC_CPM_FEE3_PARTNER", + "METRIC_CPM_FEE3_USD", + "METRIC_CPM_FEE4_ADVERTISER", + "METRIC_CPM_FEE4_PARTNER", + "METRIC_CPM_FEE4_USD", + "METRIC_CPM_FEE5_ADVERTISER", + "METRIC_CPM_FEE5_PARTNER", + "METRIC_CPM_FEE5_USD", + "METRIC_CTR", + "METRIC_DATA_COST_ADVERTISER", + "METRIC_DATA_COST_PARTNER", + "METRIC_DATA_COST_USD", + "METRIC_FEE10_ADVERTISER", + "METRIC_FEE10_PARTNER", + "METRIC_FEE10_USD", + "METRIC_FEE11_ADVERTISER", + "METRIC_FEE11_PARTNER", + "METRIC_FEE11_USD", + "METRIC_FEE12_ADVERTISER", + "METRIC_FEE12_PARTNER", + "METRIC_FEE12_USD", + "METRIC_FEE13_ADVERTISER", + "METRIC_FEE13_PARTNER", + "METRIC_FEE13_USD", + "METRIC_FEE14_ADVERTISER", + "METRIC_FEE14_PARTNER", + "METRIC_FEE14_USD", + "METRIC_FEE15_ADVERTISER", + "METRIC_FEE15_PARTNER", + "METRIC_FEE15_USD", + "METRIC_FEE16_ADVERTISER", + "METRIC_FEE16_PARTNER", + "METRIC_FEE16_USD", + "METRIC_FEE17_ADVERTISER", + "METRIC_FEE17_PARTNER", + "METRIC_FEE17_USD", + "METRIC_FEE18_ADVERTISER", + "METRIC_FEE18_PARTNER", + "METRIC_FEE18_USD", + "METRIC_FEE19_ADVERTISER", + "METRIC_FEE19_PARTNER", + "METRIC_FEE19_USD", + "METRIC_FEE20_ADVERTISER", + "METRIC_FEE20_PARTNER", + "METRIC_FEE20_USD", + "METRIC_FEE21_ADVERTISER", + "METRIC_FEE21_PARTNER", + "METRIC_FEE21_USD", + "METRIC_FEE22_ADVERTISER", + "METRIC_FEE22_PARTNER", + "METRIC_FEE22_USD", + "METRIC_FEE2_ADVERTISER", + "METRIC_FEE2_PARTNER", + "METRIC_FEE2_USD", + "METRIC_FEE3_ADVERTISER", + "METRIC_FEE3_PARTNER", + "METRIC_FEE3_USD", + "METRIC_FEE4_ADVERTISER", + "METRIC_FEE4_PARTNER", + "METRIC_FEE4_USD", + "METRIC_FEE5_ADVERTISER", + "METRIC_FEE5_PARTNER", + "METRIC_FEE5_USD", + "METRIC_FEE6_ADVERTISER", + "METRIC_FEE6_PARTNER", + "METRIC_FEE6_USD", + "METRIC_FEE7_ADVERTISER", + "METRIC_FEE7_PARTNER", + "METRIC_FEE7_USD", + "METRIC_FEE8_ADVERTISER", + "METRIC_FEE8_PARTNER", + "METRIC_FEE8_USD", + "METRIC_FEE9_ADVERTISER", + "METRIC_FEE9_PARTNER", + "METRIC_FEE9_USD", + "METRIC_IMPRESSIONS", + "METRIC_IMPRESSIONS_TO_CONVERSION_RATE", + "METRIC_LAST_CLICKS", + "METRIC_LAST_IMPRESSIONS", + "METRIC_MEDIA_COST_ADVERTISER", + "METRIC_MEDIA_COST_ECPAPC_ADVERTISER", + "METRIC_MEDIA_COST_ECPAPC_PARTNER", + "METRIC_MEDIA_COST_ECPAPC_USD", + "METRIC_MEDIA_COST_ECPAPV_ADVERTISER", + "METRIC_MEDIA_COST_ECPAPV_PARTNER", + "METRIC_MEDIA_COST_ECPAPV_USD", + "METRIC_MEDIA_COST_ECPA_ADVERTISER", + "METRIC_MEDIA_COST_ECPA_PARTNER", + "METRIC_MEDIA_COST_ECPA_USD", + "METRIC_MEDIA_COST_ECPCV_ADVERTISER", + "METRIC_MEDIA_COST_ECPCV_PARTNER", + "METRIC_MEDIA_COST_ECPCV_USD", + "METRIC_MEDIA_COST_ECPC_ADVERTISER", + "METRIC_MEDIA_COST_ECPC_PARTNER", + "METRIC_MEDIA_COST_ECPC_USD", + "METRIC_MEDIA_COST_ECPM_ADVERTISER", + "METRIC_MEDIA_COST_ECPM_PARTNER", + "METRIC_MEDIA_COST_ECPM_USD", + "METRIC_MEDIA_COST_PARTNER", + "METRIC_MEDIA_COST_USD", + "METRIC_MEDIA_COST_VIEWABLE_ECPM_ADVERTISER", + "METRIC_MEDIA_COST_VIEWABLE_ECPM_PARTNER", + "METRIC_MEDIA_COST_VIEWABLE_ECPM_USD", + "METRIC_MEDIA_FEE1_ADVERTISER", + "METRIC_MEDIA_FEE1_PARTNER", + "METRIC_MEDIA_FEE1_USD", + "METRIC_MEDIA_FEE2_ADVERTISER", + "METRIC_MEDIA_FEE2_PARTNER", + "METRIC_MEDIA_FEE2_USD", + "METRIC_MEDIA_FEE3_ADVERTISER", + "METRIC_MEDIA_FEE3_PARTNER", + "METRIC_MEDIA_FEE3_USD", + "METRIC_MEDIA_FEE4_ADVERTISER", + "METRIC_MEDIA_FEE4_PARTNER", + "METRIC_MEDIA_FEE4_USD", + "METRIC_MEDIA_FEE5_ADVERTISER", + "METRIC_MEDIA_FEE5_PARTNER", + "METRIC_MEDIA_FEE5_USD", + "METRIC_PIXEL_LOADS", + "METRIC_PLATFORM_FEE_ADVERTISER", + "METRIC_PLATFORM_FEE_PARTNER", + "METRIC_PLATFORM_FEE_USD", + "METRIC_POST_CLICK_DFA_REVENUE", + "METRIC_POST_VIEW_DFA_REVENUE", + "METRIC_PROFIT_ADVERTISER", + "METRIC_PROFIT_ECPAPC_ADVERTISER", + "METRIC_PROFIT_ECPAPC_PARTNER", + "METRIC_PROFIT_ECPAPC_USD", + "METRIC_PROFIT_ECPAPV_ADVERTISER", + "METRIC_PROFIT_ECPAPV_PARTNER", + "METRIC_PROFIT_ECPAPV_USD", + "METRIC_PROFIT_ECPA_ADVERTISER", + "METRIC_PROFIT_ECPA_PARTNER", + "METRIC_PROFIT_ECPA_USD", + "METRIC_PROFIT_ECPC_ADVERTISER", + "METRIC_PROFIT_ECPC_PARTNER", + "METRIC_PROFIT_ECPC_USD", + "METRIC_PROFIT_ECPM_ADVERTISER", + "METRIC_PROFIT_ECPM_PARTNER", + "METRIC_PROFIT_ECPM_USD", + "METRIC_PROFIT_MARGIN", + "METRIC_PROFIT_PARTNER", + "METRIC_PROFIT_USD", + "METRIC_PROFIT_VIEWABLE_ECPM_ADVERTISER", + "METRIC_PROFIT_VIEWABLE_ECPM_PARTNER", + "METRIC_PROFIT_VIEWABLE_ECPM_USD", + "METRIC_REACH_COOKIE_FREQUENCY", + "METRIC_REACH_COOKIE_REACH", + "METRIC_REVENUE_ADVERTISER", + "METRIC_REVENUE_ECPAPC_ADVERTISER", + "METRIC_REVENUE_ECPAPC_PARTNER", + "METRIC_REVENUE_ECPAPC_USD", + "METRIC_REVENUE_ECPAPV_ADVERTISER", + "METRIC_REVENUE_ECPAPV_PARTNER", + "METRIC_REVENUE_ECPAPV_USD", + "METRIC_REVENUE_ECPA_ADVERTISER", + "METRIC_REVENUE_ECPA_PARTNER", + "METRIC_REVENUE_ECPA_USD", + "METRIC_REVENUE_ECPCV_ADVERTISER", + "METRIC_REVENUE_ECPCV_PARTNER", + "METRIC_REVENUE_ECPCV_USD", + "METRIC_REVENUE_ECPC_ADVERTISER", + "METRIC_REVENUE_ECPC_PARTNER", + "METRIC_REVENUE_ECPC_USD", + "METRIC_REVENUE_ECPIAVC_ADVERTISER", + "METRIC_REVENUE_ECPM_ADVERTISER", + "METRIC_REVENUE_ECPM_PARTNER", + "METRIC_REVENUE_ECPM_USD", + "METRIC_REVENUE_PARTNER", + "METRIC_REVENUE_USD", + "METRIC_REVENUE_VIEWABLE_ECPM_ADVERTISER", + "METRIC_REVENUE_VIEWABLE_ECPM_PARTNER", + "METRIC_REVENUE_VIEWABLE_ECPM_USD", + "METRIC_RICH_MEDIA_VIDEO_COMPLETIONS", + "METRIC_RICH_MEDIA_VIDEO_FIRST_QUARTILE_COMPLETES", + "METRIC_RICH_MEDIA_VIDEO_FULL_SCREENS", + "METRIC_RICH_MEDIA_VIDEO_MIDPOINTS", + "METRIC_RICH_MEDIA_VIDEO_MUTES", + "METRIC_RICH_MEDIA_VIDEO_PAUSES", + "METRIC_RICH_MEDIA_VIDEO_PLAYS", + "METRIC_RICH_MEDIA_VIDEO_SKIPS", + "METRIC_RICH_MEDIA_VIDEO_THIRD_QUARTILE_COMPLETES", + "METRIC_TEA_TRUEVIEW_IMPRESSIONS", + "METRIC_TEA_TRUEVIEW_UNIQUE_COOKIES", + "METRIC_TEA_TRUEVIEW_UNIQUE_PEOPLE", + "METRIC_TOTAL_CONVERSIONS", + "METRIC_TOTAL_MEDIA_COST_ADVERTISER", + "METRIC_TOTAL_MEDIA_COST_ECPAPC_ADVERTISER", + "METRIC_TOTAL_MEDIA_COST_ECPAPC_PARTNER", + "METRIC_TOTAL_MEDIA_COST_ECPAPC_USD", + "METRIC_TOTAL_MEDIA_COST_ECPAPV_ADVERTISER", + "METRIC_TOTAL_MEDIA_COST_ECPAPV_PARTNER", + "METRIC_TOTAL_MEDIA_COST_ECPAPV_USD", + "METRIC_TOTAL_MEDIA_COST_ECPA_ADVERTISER", + "METRIC_TOTAL_MEDIA_COST_ECPA_PARTNER", + "METRIC_TOTAL_MEDIA_COST_ECPA_USD", + "METRIC_TOTAL_MEDIA_COST_ECPCV_ADVERTISER", + "METRIC_TOTAL_MEDIA_COST_ECPCV_PARTNER", + "METRIC_TOTAL_MEDIA_COST_ECPCV_USD", + "METRIC_TOTAL_MEDIA_COST_ECPC_ADVERTISER", + "METRIC_TOTAL_MEDIA_COST_ECPC_PARTNER", + "METRIC_TOTAL_MEDIA_COST_ECPC_USD", + "METRIC_TOTAL_MEDIA_COST_ECPM_ADVERTISER", + "METRIC_TOTAL_MEDIA_COST_ECPM_PARTNER", + "METRIC_TOTAL_MEDIA_COST_ECPM_USD", + "METRIC_TOTAL_MEDIA_COST_PARTNER", + "METRIC_TOTAL_MEDIA_COST_USD", + "METRIC_TOTAL_MEDIA_COST_VIEWABLE_ECPM_ADVERTISER", + "METRIC_TOTAL_MEDIA_COST_VIEWABLE_ECPM_PARTNER", + "METRIC_TOTAL_MEDIA_COST_VIEWABLE_ECPM_USD", + "METRIC_TRUEVIEW_AVERAGE_CPE_ADVERTISER", + "METRIC_TRUEVIEW_AVERAGE_CPE_PARTNER", + "METRIC_TRUEVIEW_AVERAGE_CPE_USD", + "METRIC_TRUEVIEW_CONVERSION_COST_MANY_PER_VIEW_ADVERTISER", + "METRIC_TRUEVIEW_CONVERSION_COST_MANY_PER_VIEW_PARTNER", + "METRIC_TRUEVIEW_CONVERSION_COST_MANY_PER_VIEW_USD", + "METRIC_TRUEVIEW_CONVERSION_COST_ONE_PER_VIEW_ADVERTISER", + "METRIC_TRUEVIEW_CONVERSION_COST_ONE_PER_VIEW_PARTNER", + "METRIC_TRUEVIEW_CONVERSION_COST_ONE_PER_VIEW_USD", + "METRIC_TRUEVIEW_CONVERSION_MANY_PER_VIEW", + "METRIC_TRUEVIEW_CONVERSION_ONE_PER_VIEW", + "METRIC_TRUEVIEW_CONVERSION_RATE_ONE_PER_VIEW", + "METRIC_TRUEVIEW_CONVERSION_VALUE_MANY_PER_VIEW_ADVERTISER", + "METRIC_TRUEVIEW_CONVERSION_VALUE_MANY_PER_VIEW_PARTNER", + "METRIC_TRUEVIEW_CONVERSION_VALUE_MANY_PER_VIEW_USD", + "METRIC_TRUEVIEW_CONVERSION_VALUE_ONE_PER_VIEW_ADVERTISER", + "METRIC_TRUEVIEW_CONVERSION_VALUE_ONE_PER_VIEW_PARTNER", + "METRIC_TRUEVIEW_CONVERSION_VALUE_ONE_PER_VIEW_USD", + "METRIC_TRUEVIEW_COST_CONVERSION_MANY_PER_VIEW_RATIO", + "METRIC_TRUEVIEW_COST_CONVERSION_ONE_PER_VIEW_RATIO", + "METRIC_TRUEVIEW_CPV_ADVERTISER", + "METRIC_TRUEVIEW_CPV_PARTNER", + "METRIC_TRUEVIEW_CPV_USD", + "METRIC_TRUEVIEW_EARNED_LIKES", + "METRIC_TRUEVIEW_EARNED_PLAYLIST_ADDITIONS", + "METRIC_TRUEVIEW_EARNED_SHARES", + "METRIC_TRUEVIEW_EARNED_SUBSCRIBERS", + "METRIC_TRUEVIEW_EARNED_VIEWS", + "METRIC_TRUEVIEW_ENGAGEMENTS", + "METRIC_TRUEVIEW_ENGAGEMENT_RATE", + "METRIC_TRUEVIEW_IMPRESSION_SHARE", + "METRIC_TRUEVIEW_LOST_IS_BUDGET", + "METRIC_TRUEVIEW_LOST_IS_RANK", + "METRIC_TRUEVIEW_TOTAL_CONVERSION_VALUE", + "METRIC_TRUEVIEW_TOTAL_CONVERSION_VALUES_ADVERTISER", + "METRIC_TRUEVIEW_TOTAL_CONVERSION_VALUES_PARTNER", + "METRIC_TRUEVIEW_TOTAL_CONVERSION_VALUES_USD", + "METRIC_TRUEVIEW_UNIQUE_VIEWERS", + "METRIC_TRUEVIEW_VALUE_CONVERSION_MANY_PER_VIEW_RATIO", + "METRIC_TRUEVIEW_VALUE_CONVERSION_ONE_PER_VIEW_RATIO", + "METRIC_TRUEVIEW_VIEWS", + "METRIC_TRUEVIEW_VIEW_RATE", + "METRIC_TRUEVIEW_VIEW_THROUGH_CONVERSION", + "METRIC_UNIQUE_VISITORS_COOKIES", + "METRIC_UNKNOWN", + "METRIC_VIDEO_COMPANION_CLICKS", + "METRIC_VIDEO_COMPANION_IMPRESSIONS", + "METRIC_VIDEO_COMPLETION_RATE", + "METRIC_VIEWABLE_BID_REQUESTS" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "type": "array" + }, + "type": { + "description": "Report type.", + "enum": [ + "TYPE_ACTIVE_GRP", + "TYPE_AUDIENCE_COMPOSITION", + "TYPE_AUDIENCE_PERFORMANCE", + "TYPE_CLIENT_SAFE", + "TYPE_COMSCORE_VCE", + "TYPE_CROSS_FEE", + "TYPE_CROSS_PARTNER", + "TYPE_CROSS_PARTNER_THIRD_PARTY_DATA_PROVIDER", + "TYPE_ESTIMATED_CONVERSION", + "TYPE_FEE", + "TYPE_GENERAL", + "TYPE_INVENTORY_AVAILABILITY", + "TYPE_KEYWORD", + "TYPE_LINEAR_TV_SEARCH_LIFT", + "TYPE_NIELSEN_AUDIENCE_PROFILE", + "TYPE_NIELSEN_DAILY_REACH_BUILD", + "TYPE_NIELSEN_ONLINE_GLOBAL_MARKET", + "TYPE_NIELSEN_SITE", + "TYPE_NOT_SUPPORTED", + "TYPE_ORDER_ID", + "TYPE_PAGE_CATEGORY", + "TYPE_PETRA_NIELSEN_AUDIENCE_PROFILE", + "TYPE_PETRA_NIELSEN_DAILY_REACH_BUILD", + "TYPE_PETRA_NIELSEN_ONLINE_GLOBAL_MARKET", + "TYPE_PIXEL_LOAD", + "TYPE_REACH_AND_FREQUENCY", + "TYPE_REACH_AUDIENCE", + "TYPE_THIRD_PARTY_DATA_PROVIDER", + "TYPE_TRUEVIEW", + "TYPE_TRUEVIEW_IAR", + "TYPE_VERIFICATION", + "TYPE_YOUTUBE_VERTICAL" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "Query": { + "description": "Represents a query.", + "id": "Query", + "properties": { + "kind": { + "default": "doubleclickbidmanager#query", + "description": "Identifies what kind of resource this is. Value: the fixed string \"doubleclickbidmanager#query\".", + "type": "string" + }, + "metadata": { + "$ref": "QueryMetadata", + "description": "Query metadata." + }, + "params": { + "$ref": "Parameters", + "description": "Query parameters." + }, + "queryId": { + "description": "Query ID.", + "format": "int64", + "type": "string" + }, + "reportDataEndTimeMs": { + "description": "The ending time for the data that is shown in the report. Note, reportDataEndTimeMs is required if metadata.dataRange is CUSTOM_DATES and ignored otherwise.", + "format": "int64", + "type": "string" + }, + "reportDataStartTimeMs": { + "description": "The starting time for the data that is shown in the report. Note, reportDataStartTimeMs is required if metadata.dataRange is CUSTOM_DATES and ignored otherwise.", + "format": "int64", + "type": "string" + }, + "schedule": { + "$ref": "QuerySchedule", + "description": "Information on how often and when to run a query." + }, + "timezoneCode": { + "description": "Canonical timezone code for report data time. Defaults to America/New_York.", + "type": "string" + } + }, + "type": "object" + }, + "QueryMetadata": { + "description": "Query metadata.", + "id": "QueryMetadata", + "properties": { + "dataRange": { + "description": "Range of report data.", + "enum": [ + "ALL_TIME", + "CURRENT_DAY", + "CUSTOM_DATES", + "LAST_14_DAYS", + "LAST_30_DAYS", + "LAST_365_DAYS", + "LAST_7_DAYS", + "LAST_90_DAYS", + "MONTH_TO_DATE", + "PREVIOUS_DAY", + "PREVIOUS_HALF_MONTH", + "PREVIOUS_MONTH", + "PREVIOUS_QUARTER", + "PREVIOUS_WEEK", + "PREVIOUS_YEAR", + "QUARTER_TO_DATE", + "TYPE_NOT_SUPPORTED", + "WEEK_TO_DATE", + "YEAR_TO_DATE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "format": { + "description": "Format of the generated report.", + "enum": [ + "CSV", + "EXCEL_CSV", + "XLSX" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, + "googleCloudStoragePathForLatestReport": { + "description": "The path to the location in Google Cloud Storage where the latest report is stored.", + "type": "string" + }, + "googleDrivePathForLatestReport": { + "description": "The path in Google Drive for the latest report.", + "type": "string" + }, + "latestReportRunTimeMs": { + "description": "The time when the latest report started to run.", + "format": "int64", + "type": "string" + }, + "locale": { + "description": "Locale of the generated reports. Valid values are cs CZECH de GERMAN en ENGLISH es SPANISH fr FRENCH it ITALIAN ja JAPANESE ko KOREAN pl POLISH pt-BR BRAZILIAN_PORTUGUESE ru RUSSIAN tr TURKISH uk UKRAINIAN zh-CN CHINA_CHINESE zh-TW TAIWAN_CHINESE\n\nAn locale string not in the list above will generate reports in English.", + "type": "string" + }, + "reportCount": { + "description": "Number of reports that have been generated for the query.", + "format": "int32", + "type": "integer" + }, + "running": { + "description": "Whether the latest report is currently running.", + "type": "boolean" + }, + "sendNotification": { + "description": "Whether to send an email notification when a report is ready. Default to false.", + "type": "boolean" + }, + "shareEmailAddress": { + "description": "List of email addresses which are sent email notifications when the report is finished. Separate from sendNotification.", + "items": { + "type": "string" + }, + "type": "array" + }, + "title": { + "description": "Query title. It is used to name the reports generated from this query.", + "type": "string" + } + }, + "type": "object" + }, + "QuerySchedule": { + "description": "Information on how frequently and when to run a query.", + "id": "QuerySchedule", + "properties": { + "endTimeMs": { + "description": "Datetime to periodically run the query until.", + "format": "int64", + "type": "string" + }, + "frequency": { + "description": "How often the query is run.", + "enum": [ + "DAILY", + "MONTHLY", + "ONE_TIME", + "QUARTERLY", + "SEMI_MONTHLY", + "WEEKLY" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "nextRunMinuteOfDay": { + "description": "Time of day at which a new report will be generated, represented as minutes past midnight. Range is 0 to 1439. Only applies to scheduled reports.", + "format": "int32", + "type": "integer" + }, + "nextRunTimezoneCode": { + "description": "Canonical timezone code for report generation time. Defaults to America/New_York.", + "type": "string" + } + }, + "type": "object" + }, + "Report": { + "description": "Represents a report.", + "id": "Report", + "properties": { + "key": { + "$ref": "ReportKey", + "description": "Key used to identify a report." + }, + "metadata": { + "$ref": "ReportMetadata", + "description": "Report metadata." + }, + "params": { + "$ref": "Parameters", + "description": "Report parameters." + } + }, + "type": "object" + }, + "ReportFailure": { + "description": "An explanation of a report failure.", + "id": "ReportFailure", + "properties": { + "errorCode": { + "description": "Error code that shows why the report was not created.", + "enum": [ + "AUTHENTICATION_ERROR", + "DEPRECATED_REPORTING_INVALID_QUERY", + "REPORTING_BUCKET_NOT_FOUND", + "REPORTING_CREATE_BUCKET_FAILED", + "REPORTING_DELETE_BUCKET_FAILED", + "REPORTING_FATAL_ERROR", + "REPORTING_ILLEGAL_FILENAME", + "REPORTING_IMCOMPATIBLE_METRICS", + "REPORTING_INVALID_QUERY_MISSING_PARTNER_AND_ADVERTISER_FILTERS", + "REPORTING_INVALID_QUERY_TITLE_MISSING", + "REPORTING_INVALID_QUERY_TOO_MANY_UNFILTERED_LARGE_GROUP_BYS", + "REPORTING_QUERY_NOT_FOUND", + "REPORTING_TRANSIENT_ERROR", + "REPORTING_UPDATE_BUCKET_PERMISSION_FAILED", + "REPORTING_WRITE_BUCKET_OBJECT_FAILED", + "SERVER_ERROR", + "UNAUTHORIZED_API_ACCESS", + "VALIDATION_ERROR" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "ReportKey": { + "description": "Key used to identify a report.", + "id": "ReportKey", + "properties": { + "queryId": { + "description": "Query ID.", + "format": "int64", + "type": "string" + }, + "reportId": { + "description": "Report ID.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "ReportMetadata": { + "description": "Report metadata.", + "id": "ReportMetadata", + "properties": { + "googleCloudStoragePath": { + "description": "The path to the location in Google Cloud Storage where the report is stored.", + "type": "string" + }, + "reportDataEndTimeMs": { + "description": "The ending time for the data that is shown in the report.", + "format": "int64", + "type": "string" + }, + "reportDataStartTimeMs": { + "description": "The starting time for the data that is shown in the report.", + "format": "int64", + "type": "string" + }, + "status": { + "$ref": "ReportStatus", + "description": "Report status." + } + }, + "type": "object" + }, + "ReportStatus": { + "description": "Report status.", + "id": "ReportStatus", + "properties": { + "failure": { + "$ref": "ReportFailure", + "description": "If the report failed, this records the cause." + }, + "finishTimeMs": { + "description": "The time when this report either completed successfully or failed.", + "format": "int64", + "type": "string" + }, + "format": { + "description": "The file type of the report.", + "enum": [ + "CSV", + "EXCEL_CSV", + "XLSX" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, + "state": { + "description": "The state of the report.", + "enum": [ + "DONE", + "FAILED", + "RUNNING" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "RowStatus": { + "description": "Represents the upload status of a row in the request.", + "id": "RowStatus", + "properties": { + "changed": { + "description": "Whether the stored entity is changed as a result of upload.", + "type": "boolean" + }, + "entityId": { + "description": "Entity Id.", + "format": "int64", + "type": "string" + }, + "entityName": { + "description": "Entity name.", + "type": "string" + }, + "errors": { + "description": "Reasons why the entity can't be uploaded.", + "items": { + "type": "string" + }, + "type": "array" + }, + "persisted": { + "description": "Whether the entity is persisted.", + "type": "boolean" + }, + "rowNumber": { + "description": "Row number.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "RunQueryRequest": { + "description": "Request to run a stored query to generate a report.", + "id": "RunQueryRequest", + "properties": { + "dataRange": { + "description": "Report data range used to generate the report.", + "enum": [ + "ALL_TIME", + "CURRENT_DAY", + "CUSTOM_DATES", + "LAST_14_DAYS", + "LAST_30_DAYS", + "LAST_365_DAYS", + "LAST_7_DAYS", + "LAST_90_DAYS", + "MONTH_TO_DATE", + "PREVIOUS_DAY", + "PREVIOUS_HALF_MONTH", + "PREVIOUS_MONTH", + "PREVIOUS_QUARTER", + "PREVIOUS_WEEK", + "PREVIOUS_YEAR", + "QUARTER_TO_DATE", + "TYPE_NOT_SUPPORTED", + "WEEK_TO_DATE", + "YEAR_TO_DATE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "reportDataEndTimeMs": { + "description": "The ending time for the data that is shown in the report. Note, reportDataEndTimeMs is required if dataRange is CUSTOM_DATES and ignored otherwise.", + "format": "int64", + "type": "string" + }, + "reportDataStartTimeMs": { + "description": "The starting time for the data that is shown in the report. Note, reportDataStartTimeMs is required if dataRange is CUSTOM_DATES and ignored otherwise.", + "format": "int64", + "type": "string" + }, + "timezoneCode": { + "description": "Canonical timezone code for report data time. Defaults to America/New_York.", + "type": "string" + } + }, + "type": "object" + }, + "UploadLineItemsRequest": { + "description": "Request to upload line items.", + "id": "UploadLineItemsRequest", + "properties": { + "dryRun": { + "description": "Set to true to get upload status without actually persisting the line items.", + "type": "boolean" + }, + "format": { + "description": "Format the line items are in. Default to CSV.", + "enum": [ + "CSV" + ], + "enumDescriptions": [ + "" + ], + "type": "string" + }, + "lineItems": { + "description": "Line items in CSV to upload. Refer to Entity Write File Format for more information on file format.", + "type": "string" + } + }, + "type": "object" + }, + "UploadLineItemsResponse": { + "description": "Upload line items response.", + "id": "UploadLineItemsResponse", + "properties": { + "uploadStatus": { + "$ref": "UploadStatus", + "description": "Status of upload." + } + }, + "type": "object" + }, + "UploadStatus": { + "description": "Represents the status of upload.", + "id": "UploadStatus", + "properties": { + "errors": { + "description": "Reasons why upload can't be completed.", + "items": { + "type": "string" + }, + "type": "array" + }, + "rowStatus": { + "description": "Per-row upload status.", + "items": { + "$ref": "RowStatus" + }, + "type": "array" + } + }, + "type": "object" } - } }, - "sdf": { - "methods": { - "download": { - "id": "doubleclickbidmanager.sdf.download", - "path": "sdf/download", - "httpMethod": "POST", - "description": "Retrieves entities in SDF format.", - "request": { - "$ref": "DownloadRequest" - }, - "response": { - "$ref": "DownloadResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/doubleclickbidmanager" - ] - } - } - } - } -} + "servicePath": "doubleclickbidmanager/v1/", + "title": "DoubleClick Bid Manager API", + "version": "v1" +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/doubleclickbidmanager/v1/doubleclickbidmanager-gen.go b/vendor/google.golang.org/api/doubleclickbidmanager/v1/doubleclickbidmanager-gen.go index ef54d299d..53c946fc0 100644 --- a/vendor/google.golang.org/api/doubleclickbidmanager/v1/doubleclickbidmanager-gen.go +++ b/vendor/google.golang.org/api/doubleclickbidmanager/v1/doubleclickbidmanager-gen.go @@ -212,6 +212,7 @@ type DownloadRequest struct { // Possible values: // "AD" // "AD_GROUP" + // "CAMPAIGN" // "INSERTION_ORDER" // "LINE_ITEM" FileTypes []string `json:"fileTypes,omitempty"` @@ -227,6 +228,7 @@ type DownloadRequest struct { // // Possible values: // "ADVERTISER_ID" + // "CAMPAIGN_ID" // "INSERTION_ORDER_ID" // "LINE_ITEM_ID" FilterType string `json:"filterType,omitempty"` @@ -266,6 +268,9 @@ type DownloadResponse struct { // Ads: Retrieved ads in SDF format. Ads string `json:"ads,omitempty"` + // Campaigns: Retrieved campaigns in SDF format. + Campaigns string `json:"campaigns,omitempty"` + // InsertionOrders: Retrieved insertion orders in SDF format. InsertionOrders string `json:"insertionOrders,omitempty"` @@ -695,6 +700,8 @@ type Parameters struct { // "METRIC_COMSCORE_VCE_POPULATION" // "METRIC_COMSCORE_VCE_UNIQUE_AUDIENCE" // "METRIC_CONVERSIONS_PER_MILLE" + // "METRIC_COOKIE_REACH_AVERAGE_IMPRESSION_FREQUENCY" + // "METRIC_COOKIE_REACH_IMPRESSION_REACH" // "METRIC_CPM_FEE1_ADVERTISER" // "METRIC_CPM_FEE1_PARTNER" // "METRIC_CPM_FEE1_USD" @@ -960,6 +967,7 @@ type Parameters struct { // "METRIC_VIDEO_COMPANION_CLICKS" // "METRIC_VIDEO_COMPANION_IMPRESSIONS" // "METRIC_VIDEO_COMPLETION_RATE" + // "METRIC_VIEWABLE_BID_REQUESTS" Metrics []string `json:"metrics,omitempty"` // Type: Report type. @@ -978,6 +986,7 @@ type Parameters struct { // "TYPE_GENERAL" // "TYPE_INVENTORY_AVAILABILITY" // "TYPE_KEYWORD" + // "TYPE_LINEAR_TV_SEARCH_LIFT" // "TYPE_NIELSEN_AUDIENCE_PROFILE" // "TYPE_NIELSEN_DAILY_REACH_BUILD" // "TYPE_NIELSEN_ONLINE_GLOBAL_MARKET" @@ -1647,7 +1656,8 @@ type LineitemsDownloadlineitemsCall struct { header_ http.Header } -// Downloadlineitems: Retrieves line items in CSV format. +// Downloadlineitems: Retrieves line items in CSV format. TrueView line +// items are not supported. func (r *LineitemsService) Downloadlineitems(downloadlineitemsrequest *DownloadLineItemsRequest) *LineitemsDownloadlineitemsCall { c := &LineitemsDownloadlineitemsCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.downloadlineitemsrequest = downloadlineitemsrequest @@ -1737,7 +1747,7 @@ func (c *LineitemsDownloadlineitemsCall) Do(opts ...googleapi.CallOption) (*Down } return ret, nil // { - // "description": "Retrieves line items in CSV format.", + // "description": "Retrieves line items in CSV format. TrueView line items are not supported.", // "httpMethod": "POST", // "id": "doubleclickbidmanager.lineitems.downloadlineitems", // "path": "lineitems/downloadlineitems", @@ -1764,7 +1774,8 @@ type LineitemsUploadlineitemsCall struct { header_ http.Header } -// Uploadlineitems: Uploads line items in CSV format. +// Uploadlineitems: Uploads line items in CSV format. TrueView line +// items are not supported. func (r *LineitemsService) Uploadlineitems(uploadlineitemsrequest *UploadLineItemsRequest) *LineitemsUploadlineitemsCall { c := &LineitemsUploadlineitemsCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.uploadlineitemsrequest = uploadlineitemsrequest @@ -1854,7 +1865,7 @@ func (c *LineitemsUploadlineitemsCall) Do(opts ...googleapi.CallOption) (*Upload } return ret, nil // { - // "description": "Uploads line items in CSV format.", + // "description": "Uploads line items in CSV format. TrueView line items are not supported.", // "httpMethod": "POST", // "id": "doubleclickbidmanager.lineitems.uploadlineitems", // "path": "lineitems/uploadlineitems", diff --git a/vendor/google.golang.org/api/doubleclicksearch/v2/doubleclicksearch-api.json b/vendor/google.golang.org/api/doubleclicksearch/v2/doubleclicksearch-api.json index 480c7ea2b..e991eb1ff 100644 --- a/vendor/google.golang.org/api/doubleclicksearch/v2/doubleclicksearch-api.json +++ b/vendor/google.golang.org/api/doubleclicksearch/v2/doubleclicksearch-api.json @@ -1,1110 +1,1110 @@ { - "kind": "discovery#restDescription", - "etag": "\"YWOzh2SDasdU84ArJnpYek-OMdg/j5gjSKpGteQd-SLFB7hu3AlcpYg\"", - "discoveryVersion": "v1", - "id": "doubleclicksearch:v2", - "name": "doubleclicksearch", - "version": "v2", - "revision": "20170905", - "title": "DoubleClick Search API", - "description": "Reports and modifies your advertising data in DoubleClick Search (for example, campaigns, ad groups, keywords, and conversions).", - "ownerDomain": "google.com", - "ownerName": "Google", - "icons": { - "x16": "https://www.gstatic.com/images/branding/product/1x/googleg_16dp.png", - "x32": "https://www.gstatic.com/images/branding/product/1x/googleg_32dp.png" - }, - "documentationLink": "https://developers.google.com/doubleclick-search/", - "protocol": "rest", - "baseUrl": "https://www.googleapis.com/doubleclicksearch/v2/", - "basePath": "/doubleclicksearch/v2/", - "rootUrl": "https://www.googleapis.com/", - "servicePath": "doubleclicksearch/v2/", - "batchPath": "batch/doubleclicksearch/v2", - "parameters": { - "alt": { - "type": "string", - "description": "Data format for the response.", - "default": "json", - "enum": [ - "json" - ], - "enumDescriptions": [ - "Responses with Content-Type of application/json" - ], - "location": "query" - }, - "fields": { - "type": "string", - "description": "Selector specifying which fields to include in a partial response.", - "location": "query" - }, - "key": { - "type": "string", - "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" - }, - "oauth_token": { - "type": "string", - "description": "OAuth 2.0 token for the current user.", - "location": "query" - }, - "prettyPrint": { - "type": "boolean", - "description": "Returns response with indentations and line breaks.", - "default": "true", - "location": "query" - }, - "quotaUser": { - "type": "string", - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", - "location": "query" - }, - "userIp": { - "type": "string", - "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", - "location": "query" - } - }, - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/doubleclicksearch": { - "description": "View and manage your advertising data in DoubleClick Search" - } - } - } - }, - "schemas": { - "Availability": { - "id": "Availability", - "type": "object", - "description": "A message containing availability data relevant to DoubleClick Search.", - "properties": { - "advertiserId": { - "type": "string", - "description": "DS advertiser ID.", - "format": "int64", - "annotations": { - "required": [ - "doubleclicksearch.conversion.updateAvailability" - ] - } - }, - "agencyId": { - "type": "string", - "description": "DS agency ID.", - "format": "int64", - "annotations": { - "required": [ - "doubleclicksearch.conversion.updateAvailability" - ] - } - }, - "availabilityTimestamp": { - "type": "string", - "description": "The time by which all conversions have been uploaded, in epoch millis UTC.", - "format": "uint64", - "annotations": { - "required": [ - "doubleclicksearch.conversion.updateAvailability" - ] - } - }, - "segmentationId": { - "type": "string", - "description": "The numeric segmentation identifier (for example, DoubleClick Search Floodlight activity ID).", - "format": "int64" - }, - "segmentationName": { - "type": "string", - "description": "The friendly segmentation identifier (for example, DoubleClick Search Floodlight activity name)." - }, - "segmentationType": { - "type": "string", - "description": "The segmentation type that this availability is for (its default value is FLOODLIGHT).", - "annotations": { - "required": [ - "doubleclicksearch.conversion.updateAvailability" - ] - } - } - } - }, - "Conversion": { - "id": "Conversion", - "type": "object", - "description": "A conversion containing data relevant to DoubleClick Search.", - "properties": { - "adGroupId": { - "type": "string", - "description": "DS ad group ID.", - "format": "int64" - }, - "adId": { - "type": "string", - "description": "DS ad ID.", - "format": "int64" - }, - "advertiserId": { - "type": "string", - "description": "DS advertiser ID.", - "format": "int64" - }, - "agencyId": { - "type": "string", - "description": "DS agency ID.", - "format": "int64" - }, - "attributionModel": { - "type": "string", - "description": "Available to advertisers only after contacting DoubleClick Search customer support." - }, - "campaignId": { - "type": "string", - "description": "DS campaign ID.", - "format": "int64" - }, - "channel": { - "type": "string", - "description": "Sales channel for the product. Acceptable values are: \n- \"local\": a physical store \n- \"online\": an online store" - }, - "clickId": { - "type": "string", - "description": "DS click ID for the conversion." - }, - "conversionId": { - "type": "string", - "description": "For offline conversions, advertisers provide this ID. Advertisers can specify any ID that is meaningful to them. Each conversion in a request must specify a unique ID, and the combination of ID and timestamp must be unique amongst all conversions within the advertiser.\nFor online conversions, DS copies the dsConversionId or floodlightOrderId into this property depending on the advertiser's Floodlight instructions.", - "annotations": { - "required": [ - "doubleclicksearch.conversion.insert" - ] - } - }, - "conversionModifiedTimestamp": { - "type": "string", - "description": "The time at which the conversion was last modified, in epoch millis UTC.", - "format": "uint64" - }, - "conversionTimestamp": { - "type": "string", - "description": "The time at which the conversion took place, in epoch millis UTC.", - "format": "uint64", - "annotations": { - "required": [ - "doubleclicksearch.conversion.insert" - ] - } - }, - "countMillis": { - "type": "string", - "description": "Available to advertisers only after contacting DoubleClick Search customer support.", - "format": "int64" - }, - "criterionId": { - "type": "string", - "description": "DS criterion (keyword) ID.", - "format": "int64" - }, - "currencyCode": { - "type": "string", - "description": "The currency code for the conversion's revenue. Should be in ISO 4217 alphabetic (3-char) format." - }, - "customDimension": { - "type": "array", - "description": "Custom dimensions for the conversion, which can be used to filter data in a report.", - "items": { - "$ref": "CustomDimension" - } - }, - "customMetric": { - "type": "array", - "description": "Custom metrics for the conversion.", - "items": { - "$ref": "CustomMetric" - } - }, - "deviceType": { - "type": "string", - "description": "The type of device on which the conversion occurred." - }, - "dsConversionId": { - "type": "string", - "description": "ID that DoubleClick Search generates for each conversion.", - "format": "int64" - }, - "engineAccountId": { - "type": "string", - "description": "DS engine account ID.", - "format": "int64" - }, - "floodlightOrderId": { - "type": "string", - "description": "The Floodlight order ID provided by the advertiser for the conversion." - }, - "inventoryAccountId": { - "type": "string", - "description": "ID that DS generates and uses to uniquely identify the inventory account that contains the product.", - "format": "int64" - }, - "productCountry": { - "type": "string", - "description": "The country registered for the Merchant Center feed that contains the product. Use an ISO 3166 code to specify a country." - }, - "productGroupId": { - "type": "string", - "description": "DS product group ID.", - "format": "int64" - }, - "productId": { - "type": "string", - "description": "The product ID (SKU)." - }, - "productLanguage": { - "type": "string", - "description": "The language registered for the Merchant Center feed that contains the product. Use an ISO 639 code to specify a language." - }, - "quantityMillis": { - "type": "string", - "description": "The quantity of this conversion, in millis.", - "format": "int64" - }, - "revenueMicros": { - "type": "string", - "description": "The revenue amount of this TRANSACTION conversion, in micros (value multiplied by 1000000, no decimal). For example, to specify a revenue value of \"10\" enter \"10000000\" (10 million) in your request.", - "format": "int64" - }, - "segmentationId": { - "type": "string", - "description": "The numeric segmentation identifier (for example, DoubleClick Search Floodlight activity ID).", - "format": "int64" - }, - "segmentationName": { - "type": "string", - "description": "The friendly segmentation identifier (for example, DoubleClick Search Floodlight activity name)." - }, - "segmentationType": { - "type": "string", - "description": "The segmentation type of this conversion (for example, FLOODLIGHT).", - "annotations": { - "required": [ - "doubleclicksearch.conversion.insert" - ] - } - }, - "state": { - "type": "string", - "description": "The state of the conversion, that is, either ACTIVE or REMOVED. Note: state DELETED is deprecated." - }, - "storeId": { - "type": "string", - "description": "The ID of the local store for which the product was advertised. Applicable only when the channel is \"local\"." - }, - "type": { - "type": "string", - "description": "The type of the conversion, that is, either ACTION or TRANSACTION. An ACTION conversion is an action by the user that has no monetarily quantifiable value, while a TRANSACTION conversion is an action that does have a monetarily quantifiable value. Examples are email list signups (ACTION) versus ecommerce purchases (TRANSACTION)." - } - } - }, - "ConversionList": { - "id": "ConversionList", - "type": "object", - "description": "A list of conversions.", - "properties": { - "conversion": { - "type": "array", - "description": "The conversions being requested.", - "items": { - "$ref": "Conversion" - } - }, - "kind": { - "type": "string", - "description": "Identifies this as a ConversionList resource. Value: the fixed string doubleclicksearch#conversionList.", - "default": "doubleclicksearch#conversionList" - } - } - }, - "CustomDimension": { - "id": "CustomDimension", - "type": "object", - "description": "A message containing the custome dimension.", - "properties": { - "name": { - "type": "string", - "description": "Custom dimension name." - }, - "value": { - "type": "string", - "description": "Custom dimension value." - } - } - }, - "CustomMetric": { - "id": "CustomMetric", - "type": "object", - "description": "A message containing the custome metric.", - "properties": { - "name": { - "type": "string", - "description": "Custom metric name." - }, - "value": { - "type": "number", - "description": "Custom metric numeric value.", - "format": "double" - } - } - }, - "Report": { - "id": "Report", - "type": "object", - "description": "A DoubleClick Search report. This object contains the report request, some report metadata such as currency code, and the generated report rows or report files.", - "properties": { - "files": { - "type": "array", - "description": "Asynchronous report only. Contains a list of generated report files once the report has succesfully completed.", - "items": { - "type": "object", - "properties": { - "byteCount": { - "type": "string", - "description": "The size of this report file in bytes.", - "format": "int64" - }, - "url": { - "type": "string", - "description": "Use this url to download the report file." - } - } - } - }, - "id": { - "type": "string", - "description": "Asynchronous report only. Id of the report." - }, - "isReportReady": { - "type": "boolean", - "description": "Asynchronous report only. True if and only if the report has completed successfully and the report files are ready to be downloaded." - }, - "kind": { - "type": "string", - "description": "Identifies this as a Report resource. Value: the fixed string doubleclicksearch#report.", - "default": "doubleclicksearch#report" - }, - "request": { - "$ref": "ReportRequest", - "description": "The request that created the report. Optional fields not specified in the original request are filled with default values." - }, - "rowCount": { - "type": "integer", - "description": "The number of report rows generated by the report, not including headers.", - "format": "int32" - }, - "rows": { - "type": "array", - "description": "Synchronous report only. Generated report rows.", - "items": { - "$ref": "ReportRow" - } - }, - "statisticsCurrencyCode": { - "type": "string", - "description": "The currency code of all monetary values produced in the report, including values that are set by users (e.g., keyword bid settings) and metrics (e.g., cost and revenue). The currency code of a report is determined by the statisticsCurrency field of the report request." - }, - "statisticsTimeZone": { - "type": "string", - "description": "If all statistics of the report are sourced from the same time zone, this would be it. Otherwise the field is unset." - } - } - }, - "ReportApiColumnSpec": { - "id": "ReportApiColumnSpec", - "type": "object", - "description": "A request object used to create a DoubleClick Search report.", - "properties": { - "columnName": { - "type": "string", - "description": "Name of a DoubleClick Search column to include in the report." - }, - "customDimensionName": { - "type": "string", - "description": "Segments a report by a custom dimension. The report must be scoped to an advertiser or lower, and the custom dimension must already be set up in DoubleClick Search. The custom dimension name, which appears in DoubleClick Search, is case sensitive.\nIf used in a conversion report, returns the value of the specified custom dimension for the given conversion, if set. This column does not segment the conversion report." - }, - "customMetricName": { - "type": "string", - "description": "Name of a custom metric to include in the report. The report must be scoped to an advertiser or lower, and the custom metric must already be set up in DoubleClick Search. The custom metric name, which appears in DoubleClick Search, is case sensitive." - }, - "endDate": { - "type": "string", - "description": "Inclusive day in YYYY-MM-DD format. When provided, this overrides the overall time range of the report for this column only. Must be provided together with startDate." - }, - "groupByColumn": { - "type": "boolean", - "description": "Synchronous report only. Set to true to group by this column. Defaults to false.", - "default": "false" - }, - "headerText": { - "type": "string", - "description": "Text used to identify this column in the report output; defaults to columnName or savedColumnName when not specified. This can be used to prevent collisions between DoubleClick Search columns and saved columns with the same name." - }, - "platformSource": { - "type": "string", - "description": "The platform that is used to provide data for the custom dimension. Acceptable values are \"floodlight\"." - }, - "productReportPerspective": { - "type": "string", - "description": "Returns metrics only for a specific type of product activity. Accepted values are: \n- \"sold\": returns metrics only for products that were sold \n- \"advertised\": returns metrics only for products that were advertised in a Shopping campaign, and that might or might not have been sold" - }, - "savedColumnName": { - "type": "string", - "description": "Name of a saved column to include in the report. The report must be scoped at advertiser or lower, and this saved column must already be created in the DoubleClick Search UI." - }, - "startDate": { - "type": "string", - "description": "Inclusive date in YYYY-MM-DD format. When provided, this overrides the overall time range of the report for this column only. Must be provided together with endDate." - } - } - }, - "ReportRequest": { - "id": "ReportRequest", - "type": "object", - "description": "A request object used to create a DoubleClick Search report.", - "properties": { - "columns": { - "type": "array", - "description": "The columns to include in the report. This includes both DoubleClick Search columns and saved columns. For DoubleClick Search columns, only the columnName parameter is required. For saved columns only the savedColumnName parameter is required. Both columnName and savedColumnName cannot be set in the same stanza.", - "items": { - "$ref": "ReportApiColumnSpec" - } - }, - "downloadFormat": { - "type": "string", - "description": "Format that the report should be returned in. Currently csv or tsv is supported.", - "annotations": { - "required": [ - "doubleclicksearch.reports.request" - ] - } - }, - "filters": { - "type": "array", - "description": "A list of filters to be applied to the report.", - "items": { - "type": "object", - "properties": { - "column": { - "$ref": "ReportApiColumnSpec", - "description": "Column to perform the filter on. This can be a DoubleClick Search column or a saved column." - }, - "operator": { - "type": "string", - "description": "Operator to use in the filter. See the filter reference for a list of available operators." - }, - "values": { - "type": "array", - "description": "A list of values to filter the column value against.", - "items": { - "type": "any" + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/doubleclicksearch": { + "description": "View and manage your advertising data in DoubleClick Search" } - } } - } + } + }, + "basePath": "/doubleclicksearch/v2/", + "baseUrl": "https://www.googleapis.com/doubleclicksearch/v2/", + "batchPath": "batch/doubleclicksearch/v2", + "description": "Reports and modifies your advertising data in DoubleClick Search (for example, campaigns, ad groups, keywords, and conversions).", + "discoveryVersion": "v1", + "documentationLink": "https://developers.google.com/doubleclick-search/", + "etag": "\"-iA1DTNe4s-I6JZXPt1t1Ypy8IU/p2JVe-2S-1mleFUZt-dHXWjiMsc\"", + "icons": { + "x16": "https://www.gstatic.com/images/branding/product/1x/googleg_16dp.png", + "x32": "https://www.gstatic.com/images/branding/product/1x/googleg_32dp.png" + }, + "id": "doubleclicksearch:v2", + "kind": "discovery#restDescription", + "name": "doubleclicksearch", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "alt": { + "default": "json", + "description": "Data format for the response.", + "enum": [ + "json" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json" + ], + "location": "query", + "type": "string" }, - "includeDeletedEntities": { - "type": "boolean", - "description": "Determines if removed entities should be included in the report. Defaults to false. Deprecated, please use includeRemovedEntities instead.", - "default": "false" + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "location": "query", + "type": "string" }, - "includeRemovedEntities": { - "type": "boolean", - "description": "Determines if removed entities should be included in the report. Defaults to false.", - "default": "false" + "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" }, - "maxRowsPerFile": { - "type": "integer", - "description": "Asynchronous report only. The maximum number of rows per report file. A large report is split into many files based on this field. Acceptable values are 1000000 to 100000000, inclusive.", - "format": "int32", - "minimum": "1000000", - "maximum": "100000000", - "annotations": { - "required": [ - "doubleclicksearch.reports.request" - ] - } + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" }, - "orderBy": { - "type": "array", - "description": "Synchronous report only. A list of columns and directions defining sorting to be performed on the report rows.", - "items": { - "type": "object", + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", + "location": "query", + "type": "string" + }, + "userIp": { + "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", + "location": "query", + "type": "string" + } + }, + "protocol": "rest", + "resources": { + "conversion": { + "methods": { + "get": { + "description": "Retrieves a list of conversions from a DoubleClick Search engine account.", + "httpMethod": "GET", + "id": "doubleclicksearch.conversion.get", + "parameterOrder": [ + "agencyId", + "advertiserId", + "engineAccountId", + "endDate", + "rowCount", + "startDate", + "startRow" + ], + "parameters": { + "adGroupId": { + "description": "Numeric ID of the ad group.", + "format": "int64", + "location": "query", + "type": "string" + }, + "adId": { + "description": "Numeric ID of the ad.", + "format": "int64", + "location": "query", + "type": "string" + }, + "advertiserId": { + "description": "Numeric ID of the advertiser.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "agencyId": { + "description": "Numeric ID of the agency.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "campaignId": { + "description": "Numeric ID of the campaign.", + "format": "int64", + "location": "query", + "type": "string" + }, + "criterionId": { + "description": "Numeric ID of the criterion.", + "format": "int64", + "location": "query", + "type": "string" + }, + "endDate": { + "description": "Last date (inclusive) on which to retrieve conversions. Format is yyyymmdd.", + "format": "int32", + "location": "query", + "maximum": "99991231", + "minimum": "20091101", + "required": true, + "type": "integer" + }, + "engineAccountId": { + "description": "Numeric ID of the engine account.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "rowCount": { + "description": "The number of conversions to return per call.", + "format": "int32", + "location": "query", + "maximum": "1000", + "minimum": "1", + "required": true, + "type": "integer" + }, + "startDate": { + "description": "First date (inclusive) on which to retrieve conversions. Format is yyyymmdd.", + "format": "int32", + "location": "query", + "maximum": "99991231", + "minimum": "20091101", + "required": true, + "type": "integer" + }, + "startRow": { + "description": "The 0-based starting index for retrieving conversions results.", + "format": "uint32", + "location": "query", + "required": true, + "type": "integer" + } + }, + "path": "agency/{agencyId}/advertiser/{advertiserId}/engine/{engineAccountId}/conversion", + "response": { + "$ref": "ConversionList" + }, + "scopes": [ + "https://www.googleapis.com/auth/doubleclicksearch" + ] + }, + "insert": { + "description": "Inserts a batch of new conversions into DoubleClick Search.", + "httpMethod": "POST", + "id": "doubleclicksearch.conversion.insert", + "path": "conversion", + "request": { + "$ref": "ConversionList" + }, + "response": { + "$ref": "ConversionList" + }, + "scopes": [ + "https://www.googleapis.com/auth/doubleclicksearch" + ] + }, + "patch": { + "description": "Updates a batch of conversions in DoubleClick Search. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "doubleclicksearch.conversion.patch", + "parameterOrder": [ + "advertiserId", + "agencyId", + "endDate", + "engineAccountId", + "rowCount", + "startDate", + "startRow" + ], + "parameters": { + "advertiserId": { + "description": "Numeric ID of the advertiser.", + "format": "int64", + "location": "query", + "required": true, + "type": "string" + }, + "agencyId": { + "description": "Numeric ID of the agency.", + "format": "int64", + "location": "query", + "required": true, + "type": "string" + }, + "endDate": { + "description": "Last date (inclusive) on which to retrieve conversions. Format is yyyymmdd.", + "format": "int32", + "location": "query", + "maximum": "99991231", + "minimum": "20091101", + "required": true, + "type": "integer" + }, + "engineAccountId": { + "description": "Numeric ID of the engine account.", + "format": "int64", + "location": "query", + "required": true, + "type": "string" + }, + "rowCount": { + "description": "The number of conversions to return per call.", + "format": "int32", + "location": "query", + "maximum": "1000", + "minimum": "1", + "required": true, + "type": "integer" + }, + "startDate": { + "description": "First date (inclusive) on which to retrieve conversions. Format is yyyymmdd.", + "format": "int32", + "location": "query", + "maximum": "99991231", + "minimum": "20091101", + "required": true, + "type": "integer" + }, + "startRow": { + "description": "The 0-based starting index for retrieving conversions results.", + "format": "uint32", + "location": "query", + "required": true, + "type": "integer" + } + }, + "path": "conversion", + "request": { + "$ref": "ConversionList" + }, + "response": { + "$ref": "ConversionList" + }, + "scopes": [ + "https://www.googleapis.com/auth/doubleclicksearch" + ] + }, + "update": { + "description": "Updates a batch of conversions in DoubleClick Search.", + "httpMethod": "PUT", + "id": "doubleclicksearch.conversion.update", + "path": "conversion", + "request": { + "$ref": "ConversionList" + }, + "response": { + "$ref": "ConversionList" + }, + "scopes": [ + "https://www.googleapis.com/auth/doubleclicksearch" + ] + }, + "updateAvailability": { + "description": "Updates the availabilities of a batch of floodlight activities in DoubleClick Search.", + "httpMethod": "POST", + "id": "doubleclicksearch.conversion.updateAvailability", + "path": "conversion/updateAvailability", + "request": { + "$ref": "UpdateAvailabilityRequest", + "parameterName": "empty" + }, + "response": { + "$ref": "UpdateAvailabilityResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/doubleclicksearch" + ] + } + } + }, + "reports": { + "methods": { + "generate": { + "description": "Generates and returns a report immediately.", + "httpMethod": "POST", + "id": "doubleclicksearch.reports.generate", + "path": "reports/generate", + "request": { + "$ref": "ReportRequest", + "parameterName": "reportRequest" + }, + "response": { + "$ref": "Report" + }, + "scopes": [ + "https://www.googleapis.com/auth/doubleclicksearch" + ] + }, + "get": { + "description": "Polls for the status of a report request.", + "httpMethod": "GET", + "id": "doubleclicksearch.reports.get", + "parameterOrder": [ + "reportId" + ], + "parameters": { + "reportId": { + "description": "ID of the report request being polled.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "reports/{reportId}", + "response": { + "$ref": "Report" + }, + "scopes": [ + "https://www.googleapis.com/auth/doubleclicksearch" + ] + }, + "getFile": { + "description": "Downloads a report file encoded in UTF-8.", + "httpMethod": "GET", + "id": "doubleclicksearch.reports.getFile", + "parameterOrder": [ + "reportId", + "reportFragment" + ], + "parameters": { + "reportFragment": { + "description": "The index of the report fragment to download.", + "format": "int32", + "location": "path", + "minimum": "0", + "required": true, + "type": "integer" + }, + "reportId": { + "description": "ID of the report.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "reports/{reportId}/files/{reportFragment}", + "scopes": [ + "https://www.googleapis.com/auth/doubleclicksearch" + ], + "supportsMediaDownload": true, + "useMediaDownloadService": true + }, + "request": { + "description": "Inserts a report request into the reporting system.", + "httpMethod": "POST", + "id": "doubleclicksearch.reports.request", + "path": "reports", + "request": { + "$ref": "ReportRequest", + "parameterName": "reportRequest" + }, + "response": { + "$ref": "Report" + }, + "scopes": [ + "https://www.googleapis.com/auth/doubleclicksearch" + ] + } + } + }, + "savedColumns": { + "methods": { + "list": { + "description": "Retrieve the list of saved columns for a specified advertiser.", + "httpMethod": "GET", + "id": "doubleclicksearch.savedColumns.list", + "parameterOrder": [ + "agencyId", + "advertiserId" + ], + "parameters": { + "advertiserId": { + "description": "DS ID of the advertiser.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "agencyId": { + "description": "DS ID of the agency.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "agency/{agencyId}/advertiser/{advertiserId}/savedcolumns", + "response": { + "$ref": "SavedColumnList" + }, + "scopes": [ + "https://www.googleapis.com/auth/doubleclicksearch" + ] + } + } + } + }, + "revision": "20180130", + "rootUrl": "https://www.googleapis.com/", + "schemas": { + "Availability": { + "description": "A message containing availability data relevant to DoubleClick Search.", + "id": "Availability", "properties": { - "column": { - "$ref": "ReportApiColumnSpec", - "description": "Column to perform the sort on. This can be a DoubleClick Search-defined column or a saved column." - }, - "sortOrder": { - "type": "string", - "description": "The sort direction, which is either ascending or descending." - } - } - } + "advertiserId": { + "annotations": { + "required": [ + "doubleclicksearch.conversion.updateAvailability" + ] + }, + "description": "DS advertiser ID.", + "format": "int64", + "type": "string" + }, + "agencyId": { + "annotations": { + "required": [ + "doubleclicksearch.conversion.updateAvailability" + ] + }, + "description": "DS agency ID.", + "format": "int64", + "type": "string" + }, + "availabilityTimestamp": { + "annotations": { + "required": [ + "doubleclicksearch.conversion.updateAvailability" + ] + }, + "description": "The time by which all conversions have been uploaded, in epoch millis UTC.", + "format": "uint64", + "type": "string" + }, + "segmentationId": { + "description": "The numeric segmentation identifier (for example, DoubleClick Search Floodlight activity ID).", + "format": "int64", + "type": "string" + }, + "segmentationName": { + "description": "The friendly segmentation identifier (for example, DoubleClick Search Floodlight activity name).", + "type": "string" + }, + "segmentationType": { + "annotations": { + "required": [ + "doubleclicksearch.conversion.updateAvailability" + ] + }, + "description": "The segmentation type that this availability is for (its default value is FLOODLIGHT).", + "type": "string" + } + }, + "type": "object" }, - "reportScope": { - "type": "object", - "description": "The reportScope is a set of IDs that are used to determine which subset of entities will be returned in the report. The full lineage of IDs from the lowest scoped level desired up through agency is required.", - "properties": { - "adGroupId": { - "type": "string", - "description": "DS ad group ID.", - "format": "int64" + "Conversion": { + "description": "A conversion containing data relevant to DoubleClick Search.", + "id": "Conversion", + "properties": { + "adGroupId": { + "description": "DS ad group ID.", + "format": "int64", + "type": "string" + }, + "adId": { + "description": "DS ad ID.", + "format": "int64", + "type": "string" + }, + "advertiserId": { + "description": "DS advertiser ID.", + "format": "int64", + "type": "string" + }, + "agencyId": { + "description": "DS agency ID.", + "format": "int64", + "type": "string" + }, + "attributionModel": { + "description": "Available to advertisers only after contacting DoubleClick Search customer support.", + "type": "string" + }, + "campaignId": { + "description": "DS campaign ID.", + "format": "int64", + "type": "string" + }, + "channel": { + "description": "Sales channel for the product. Acceptable values are: \n- \"local\": a physical store \n- \"online\": an online store", + "type": "string" + }, + "clickId": { + "description": "DS click ID for the conversion.", + "type": "string" + }, + "conversionId": { + "annotations": { + "required": [ + "doubleclicksearch.conversion.insert" + ] + }, + "description": "For offline conversions, advertisers provide this ID. Advertisers can specify any ID that is meaningful to them. Each conversion in a request must specify a unique ID, and the combination of ID and timestamp must be unique amongst all conversions within the advertiser.\nFor online conversions, DS copies the dsConversionId or floodlightOrderId into this property depending on the advertiser's Floodlight instructions.", + "type": "string" + }, + "conversionModifiedTimestamp": { + "description": "The time at which the conversion was last modified, in epoch millis UTC.", + "format": "uint64", + "type": "string" + }, + "conversionTimestamp": { + "annotations": { + "required": [ + "doubleclicksearch.conversion.insert" + ] + }, + "description": "The time at which the conversion took place, in epoch millis UTC.", + "format": "uint64", + "type": "string" + }, + "countMillis": { + "description": "Available to advertisers only after contacting DoubleClick Search customer support.", + "format": "int64", + "type": "string" + }, + "criterionId": { + "description": "DS criterion (keyword) ID.", + "format": "int64", + "type": "string" + }, + "currencyCode": { + "description": "The currency code for the conversion's revenue. Should be in ISO 4217 alphabetic (3-char) format.", + "type": "string" + }, + "customDimension": { + "description": "Custom dimensions for the conversion, which can be used to filter data in a report.", + "items": { + "$ref": "CustomDimension" + }, + "type": "array" + }, + "customMetric": { + "description": "Custom metrics for the conversion.", + "items": { + "$ref": "CustomMetric" + }, + "type": "array" + }, + "deviceType": { + "description": "The type of device on which the conversion occurred.", + "type": "string" + }, + "dsConversionId": { + "description": "ID that DoubleClick Search generates for each conversion.", + "format": "int64", + "type": "string" + }, + "engineAccountId": { + "description": "DS engine account ID.", + "format": "int64", + "type": "string" + }, + "floodlightOrderId": { + "description": "The Floodlight order ID provided by the advertiser for the conversion.", + "type": "string" + }, + "inventoryAccountId": { + "description": "ID that DS generates and uses to uniquely identify the inventory account that contains the product.", + "format": "int64", + "type": "string" + }, + "productCountry": { + "description": "The country registered for the Merchant Center feed that contains the product. Use an ISO 3166 code to specify a country.", + "type": "string" + }, + "productGroupId": { + "description": "DS product group ID.", + "format": "int64", + "type": "string" + }, + "productId": { + "description": "The product ID (SKU).", + "type": "string" + }, + "productLanguage": { + "description": "The language registered for the Merchant Center feed that contains the product. Use an ISO 639 code to specify a language.", + "type": "string" + }, + "quantityMillis": { + "description": "The quantity of this conversion, in millis.", + "format": "int64", + "type": "string" + }, + "revenueMicros": { + "description": "The revenue amount of this TRANSACTION conversion, in micros (value multiplied by 1000000, no decimal). For example, to specify a revenue value of \"10\" enter \"10000000\" (10 million) in your request.", + "format": "int64", + "type": "string" + }, + "segmentationId": { + "description": "The numeric segmentation identifier (for example, DoubleClick Search Floodlight activity ID).", + "format": "int64", + "type": "string" + }, + "segmentationName": { + "description": "The friendly segmentation identifier (for example, DoubleClick Search Floodlight activity name).", + "type": "string" + }, + "segmentationType": { + "annotations": { + "required": [ + "doubleclicksearch.conversion.insert" + ] + }, + "description": "The segmentation type of this conversion (for example, FLOODLIGHT).", + "type": "string" + }, + "state": { + "description": "The state of the conversion, that is, either ACTIVE or REMOVED. Note: state DELETED is deprecated.", + "type": "string" + }, + "storeId": { + "description": "The ID of the local store for which the product was advertised. Applicable only when the channel is \"local\".", + "type": "string" + }, + "type": { + "description": "The type of the conversion, that is, either ACTION or TRANSACTION. An ACTION conversion is an action by the user that has no monetarily quantifiable value, while a TRANSACTION conversion is an action that does have a monetarily quantifiable value. Examples are email list signups (ACTION) versus ecommerce purchases (TRANSACTION).", + "type": "string" + } }, - "adId": { - "type": "string", - "description": "DS ad ID.", - "format": "int64" - }, - "advertiserId": { - "type": "string", - "description": "DS advertiser ID.", - "format": "int64" - }, - "agencyId": { - "type": "string", - "description": "DS agency ID.", - "format": "int64" - }, - "campaignId": { - "type": "string", - "description": "DS campaign ID.", - "format": "int64" - }, - "engineAccountId": { - "type": "string", - "description": "DS engine account ID.", - "format": "int64" - }, - "keywordId": { - "type": "string", - "description": "DS keyword ID.", - "format": "int64" - } - } + "type": "object" }, - "reportType": { - "type": "string", - "description": "Determines the type of rows that are returned in the report. For example, if you specify reportType: keyword, each row in the report will contain data about a keyword. See the Types of Reports reference for the columns that are available for each type.", - "annotations": { - "required": [ - "doubleclicksearch.reports.generate", - "doubleclicksearch.reports.request" - ] - } - }, - "rowCount": { - "type": "integer", - "description": "Synchronous report only. The maxinum number of rows to return; additional rows are dropped. Acceptable values are 0 to 10000, inclusive. Defaults to 10000.", - "default": "10000", - "format": "int32", - "minimum": "0", - "maximum": "10000", - "annotations": { - "required": [ - "doubleclicksearch.reports.generate" - ] - } - }, - "startRow": { - "type": "integer", - "description": "Synchronous report only. Zero-based index of the first row to return. Acceptable values are 0 to 50000, inclusive. Defaults to 0.", - "default": "0", - "format": "int32", - "minimum": "0", - "maximum": "50000", - "annotations": { - "required": [ - "doubleclicksearch.reports.generate" - ] - } - }, - "statisticsCurrency": { - "type": "string", - "description": "Specifies the currency in which monetary will be returned. Possible values are: usd, agency (valid if the report is scoped to agency or lower), advertiser (valid if the report is scoped to * advertiser or lower), or account (valid if the report is scoped to engine account or lower).", - "annotations": { - "required": [ - "doubleclicksearch.reports.generate", - "doubleclicksearch.reports.request" - ] - } - }, - "timeRange": { - "type": "object", - "description": "If metrics are requested in a report, this argument will be used to restrict the metrics to a specific time range.", - "properties": { - "changedAttributesSinceTimestamp": { - "type": "string", - "description": "Inclusive UTC timestamp in RFC format, e.g., 2013-07-16T10:16:23.555Z. See additional references on how changed attribute reports work.", - "format": "date-time" + "ConversionList": { + "description": "A list of conversions.", + "id": "ConversionList", + "properties": { + "conversion": { + "description": "The conversions being requested.", + "items": { + "$ref": "Conversion" + }, + "type": "array" + }, + "kind": { + "default": "doubleclicksearch#conversionList", + "description": "Identifies this as a ConversionList resource. Value: the fixed string doubleclicksearch#conversionList.", + "type": "string" + } }, - "changedMetricsSinceTimestamp": { - "type": "string", - "description": "Inclusive UTC timestamp in RFC format, e.g., 2013-07-16T10:16:23.555Z. See additional references on how changed metrics reports work.", - "format": "date-time" - }, - "endDate": { - "type": "string", - "description": "Inclusive date in YYYY-MM-DD format." - }, - "startDate": { - "type": "string", - "description": "Inclusive date in YYYY-MM-DD format." - } - } + "type": "object" }, - "verifySingleTimeZone": { - "type": "boolean", - "description": "If true, the report would only be created if all the requested stat data are sourced from a single timezone. Defaults to false.", - "default": "false" + "CustomDimension": { + "description": "A message containing the custome dimension.", + "id": "CustomDimension", + "properties": { + "name": { + "description": "Custom dimension name.", + "type": "string" + }, + "value": { + "description": "Custom dimension value.", + "type": "string" + } + }, + "type": "object" + }, + "CustomMetric": { + "description": "A message containing the custome metric.", + "id": "CustomMetric", + "properties": { + "name": { + "description": "Custom metric name.", + "type": "string" + }, + "value": { + "description": "Custom metric numeric value.", + "format": "double", + "type": "number" + } + }, + "type": "object" + }, + "Report": { + "description": "A DoubleClick Search report. This object contains the report request, some report metadata such as currency code, and the generated report rows or report files.", + "id": "Report", + "properties": { + "files": { + "description": "Asynchronous report only. Contains a list of generated report files once the report has succesfully completed.", + "items": { + "properties": { + "byteCount": { + "description": "The size of this report file in bytes.", + "format": "int64", + "type": "string" + }, + "url": { + "description": "Use this url to download the report file.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "id": { + "description": "Asynchronous report only. Id of the report.", + "type": "string" + }, + "isReportReady": { + "description": "Asynchronous report only. True if and only if the report has completed successfully and the report files are ready to be downloaded.", + "type": "boolean" + }, + "kind": { + "default": "doubleclicksearch#report", + "description": "Identifies this as a Report resource. Value: the fixed string doubleclicksearch#report.", + "type": "string" + }, + "request": { + "$ref": "ReportRequest", + "description": "The request that created the report. Optional fields not specified in the original request are filled with default values." + }, + "rowCount": { + "description": "The number of report rows generated by the report, not including headers.", + "format": "int32", + "type": "integer" + }, + "rows": { + "description": "Synchronous report only. Generated report rows.", + "items": { + "$ref": "ReportRow" + }, + "type": "array" + }, + "statisticsCurrencyCode": { + "description": "The currency code of all monetary values produced in the report, including values that are set by users (e.g., keyword bid settings) and metrics (e.g., cost and revenue). The currency code of a report is determined by the statisticsCurrency field of the report request.", + "type": "string" + }, + "statisticsTimeZone": { + "description": "If all statistics of the report are sourced from the same time zone, this would be it. Otherwise the field is unset.", + "type": "string" + } + }, + "type": "object" + }, + "ReportApiColumnSpec": { + "description": "A request object used to create a DoubleClick Search report.", + "id": "ReportApiColumnSpec", + "properties": { + "columnName": { + "description": "Name of a DoubleClick Search column to include in the report.", + "type": "string" + }, + "customDimensionName": { + "description": "Segments a report by a custom dimension. The report must be scoped to an advertiser or lower, and the custom dimension must already be set up in DoubleClick Search. The custom dimension name, which appears in DoubleClick Search, is case sensitive.\nIf used in a conversion report, returns the value of the specified custom dimension for the given conversion, if set. This column does not segment the conversion report.", + "type": "string" + }, + "customMetricName": { + "description": "Name of a custom metric to include in the report. The report must be scoped to an advertiser or lower, and the custom metric must already be set up in DoubleClick Search. The custom metric name, which appears in DoubleClick Search, is case sensitive.", + "type": "string" + }, + "endDate": { + "description": "Inclusive day in YYYY-MM-DD format. When provided, this overrides the overall time range of the report for this column only. Must be provided together with startDate.", + "type": "string" + }, + "groupByColumn": { + "default": "false", + "description": "Synchronous report only. Set to true to group by this column. Defaults to false.", + "type": "boolean" + }, + "headerText": { + "description": "Text used to identify this column in the report output; defaults to columnName or savedColumnName when not specified. This can be used to prevent collisions between DoubleClick Search columns and saved columns with the same name.", + "type": "string" + }, + "platformSource": { + "description": "The platform that is used to provide data for the custom dimension. Acceptable values are \"floodlight\".", + "type": "string" + }, + "productReportPerspective": { + "description": "Returns metrics only for a specific type of product activity. Accepted values are: \n- \"sold\": returns metrics only for products that were sold \n- \"advertised\": returns metrics only for products that were advertised in a Shopping campaign, and that might or might not have been sold", + "type": "string" + }, + "savedColumnName": { + "description": "Name of a saved column to include in the report. The report must be scoped at advertiser or lower, and this saved column must already be created in the DoubleClick Search UI.", + "type": "string" + }, + "startDate": { + "description": "Inclusive date in YYYY-MM-DD format. When provided, this overrides the overall time range of the report for this column only. Must be provided together with endDate.", + "type": "string" + } + }, + "type": "object" + }, + "ReportRequest": { + "description": "A request object used to create a DoubleClick Search report.", + "id": "ReportRequest", + "properties": { + "columns": { + "description": "The columns to include in the report. This includes both DoubleClick Search columns and saved columns. For DoubleClick Search columns, only the columnName parameter is required. For saved columns only the savedColumnName parameter is required. Both columnName and savedColumnName cannot be set in the same stanza.", + "items": { + "$ref": "ReportApiColumnSpec" + }, + "type": "array" + }, + "downloadFormat": { + "annotations": { + "required": [ + "doubleclicksearch.reports.request" + ] + }, + "description": "Format that the report should be returned in. Currently csv or tsv is supported.", + "type": "string" + }, + "filters": { + "description": "A list of filters to be applied to the report.", + "items": { + "properties": { + "column": { + "$ref": "ReportApiColumnSpec", + "description": "Column to perform the filter on. This can be a DoubleClick Search column or a saved column." + }, + "operator": { + "description": "Operator to use in the filter. See the filter reference for a list of available operators.", + "type": "string" + }, + "values": { + "description": "A list of values to filter the column value against.", + "items": { + "type": "any" + }, + "type": "array" + } + }, + "type": "object" + }, + "type": "array" + }, + "includeDeletedEntities": { + "default": "false", + "description": "Determines if removed entities should be included in the report. Defaults to false. Deprecated, please use includeRemovedEntities instead.", + "type": "boolean" + }, + "includeRemovedEntities": { + "default": "false", + "description": "Determines if removed entities should be included in the report. Defaults to false.", + "type": "boolean" + }, + "maxRowsPerFile": { + "annotations": { + "required": [ + "doubleclicksearch.reports.request" + ] + }, + "description": "Asynchronous report only. The maximum number of rows per report file. A large report is split into many files based on this field. Acceptable values are 1000000 to 100000000, inclusive.", + "format": "int32", + "maximum": "100000000", + "minimum": "1000000", + "type": "integer" + }, + "orderBy": { + "description": "Synchronous report only. A list of columns and directions defining sorting to be performed on the report rows.", + "items": { + "properties": { + "column": { + "$ref": "ReportApiColumnSpec", + "description": "Column to perform the sort on. This can be a DoubleClick Search-defined column or a saved column." + }, + "sortOrder": { + "description": "The sort direction, which is either ascending or descending.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "reportScope": { + "description": "The reportScope is a set of IDs that are used to determine which subset of entities will be returned in the report. The full lineage of IDs from the lowest scoped level desired up through agency is required.", + "properties": { + "adGroupId": { + "description": "DS ad group ID.", + "format": "int64", + "type": "string" + }, + "adId": { + "description": "DS ad ID.", + "format": "int64", + "type": "string" + }, + "advertiserId": { + "description": "DS advertiser ID.", + "format": "int64", + "type": "string" + }, + "agencyId": { + "description": "DS agency ID.", + "format": "int64", + "type": "string" + }, + "campaignId": { + "description": "DS campaign ID.", + "format": "int64", + "type": "string" + }, + "engineAccountId": { + "description": "DS engine account ID.", + "format": "int64", + "type": "string" + }, + "keywordId": { + "description": "DS keyword ID.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "reportType": { + "annotations": { + "required": [ + "doubleclicksearch.reports.generate", + "doubleclicksearch.reports.request" + ] + }, + "description": "Determines the type of rows that are returned in the report. For example, if you specify reportType: keyword, each row in the report will contain data about a keyword. See the Types of Reports reference for the columns that are available for each type.", + "type": "string" + }, + "rowCount": { + "annotations": { + "required": [ + "doubleclicksearch.reports.generate" + ] + }, + "default": "10000", + "description": "Synchronous report only. The maxinum number of rows to return; additional rows are dropped. Acceptable values are 0 to 10000, inclusive. Defaults to 10000.", + "format": "int32", + "maximum": "10000", + "minimum": "0", + "type": "integer" + }, + "startRow": { + "annotations": { + "required": [ + "doubleclicksearch.reports.generate" + ] + }, + "default": "0", + "description": "Synchronous report only. Zero-based index of the first row to return. Acceptable values are 0 to 50000, inclusive. Defaults to 0.", + "format": "int32", + "maximum": "50000", + "minimum": "0", + "type": "integer" + }, + "statisticsCurrency": { + "annotations": { + "required": [ + "doubleclicksearch.reports.generate", + "doubleclicksearch.reports.request" + ] + }, + "description": "Specifies the currency in which monetary will be returned. Possible values are: usd, agency (valid if the report is scoped to agency or lower), advertiser (valid if the report is scoped to * advertiser or lower), or account (valid if the report is scoped to engine account or lower).", + "type": "string" + }, + "timeRange": { + "description": "If metrics are requested in a report, this argument will be used to restrict the metrics to a specific time range.", + "properties": { + "changedAttributesSinceTimestamp": { + "description": "Inclusive UTC timestamp in RFC format, e.g., 2013-07-16T10:16:23.555Z. See additional references on how changed attribute reports work.", + "format": "date-time", + "type": "string" + }, + "changedMetricsSinceTimestamp": { + "description": "Inclusive UTC timestamp in RFC format, e.g., 2013-07-16T10:16:23.555Z. See additional references on how changed metrics reports work.", + "format": "date-time", + "type": "string" + }, + "endDate": { + "description": "Inclusive date in YYYY-MM-DD format.", + "type": "string" + }, + "startDate": { + "description": "Inclusive date in YYYY-MM-DD format.", + "type": "string" + } + }, + "type": "object" + }, + "verifySingleTimeZone": { + "default": "false", + "description": "If true, the report would only be created if all the requested stat data are sourced from a single timezone. Defaults to false.", + "type": "boolean" + } + }, + "type": "object" + }, + "ReportRow": { + "additionalProperties": { + "description": "Indicates the columns that are represented in this row. That is, each key corresponds to a column with a non-empty cell in this row.", + "type": "any" + }, + "description": "A row in a DoubleClick Search report.", + "id": "ReportRow", + "type": "object" + }, + "SavedColumn": { + "description": "A saved column", + "id": "SavedColumn", + "properties": { + "kind": { + "default": "doubleclicksearch#savedColumn", + "description": "Identifies this as a SavedColumn resource. Value: the fixed string doubleclicksearch#savedColumn.", + "type": "string" + }, + "savedColumnName": { + "description": "The name of the saved column.", + "type": "string" + }, + "type": { + "description": "The type of data this saved column will produce.", + "type": "string" + } + }, + "type": "object" + }, + "SavedColumnList": { + "description": "A list of saved columns. Advertisers create saved columns to report on Floodlight activities, Google Analytics goals, or custom KPIs. To request reports with saved columns, you'll need the saved column names that are available from this list.", + "id": "SavedColumnList", + "properties": { + "items": { + "description": "The saved columns being requested.", + "items": { + "$ref": "SavedColumn" + }, + "type": "array" + }, + "kind": { + "default": "doubleclicksearch#savedColumnList", + "description": "Identifies this as a SavedColumnList resource. Value: the fixed string doubleclicksearch#savedColumnList.", + "type": "string" + } + }, + "type": "object" + }, + "UpdateAvailabilityRequest": { + "description": "The request to update availability.", + "id": "UpdateAvailabilityRequest", + "properties": { + "availabilities": { + "description": "The availabilities being requested.", + "items": { + "$ref": "Availability" + }, + "type": "array" + } + }, + "type": "object" + }, + "UpdateAvailabilityResponse": { + "description": "The response to a update availability request.", + "id": "UpdateAvailabilityResponse", + "properties": { + "availabilities": { + "description": "The availabilities being returned.", + "items": { + "$ref": "Availability" + }, + "type": "array" + } + }, + "type": "object" } - } }, - "ReportRow": { - "id": "ReportRow", - "type": "object", - "description": "A row in a DoubleClick Search report.", - "additionalProperties": { - "type": "any", - "description": "Indicates the columns that are represented in this row. That is, each key corresponds to a column with a non-empty cell in this row." - } - }, - "SavedColumn": { - "id": "SavedColumn", - "type": "object", - "description": "A saved column", - "properties": { - "kind": { - "type": "string", - "description": "Identifies this as a SavedColumn resource. Value: the fixed string doubleclicksearch#savedColumn.", - "default": "doubleclicksearch#savedColumn" - }, - "savedColumnName": { - "type": "string", - "description": "The name of the saved column." - }, - "type": { - "type": "string", - "description": "The type of data this saved column will produce." - } - } - }, - "SavedColumnList": { - "id": "SavedColumnList", - "type": "object", - "description": "A list of saved columns. Advertisers create saved columns to report on Floodlight activities, Google Analytics goals, or custom KPIs. To request reports with saved columns, you'll need the saved column names that are available from this list.", - "properties": { - "items": { - "type": "array", - "description": "The saved columns being requested.", - "items": { - "$ref": "SavedColumn" - } - }, - "kind": { - "type": "string", - "description": "Identifies this as a SavedColumnList resource. Value: the fixed string doubleclicksearch#savedColumnList.", - "default": "doubleclicksearch#savedColumnList" - } - } - }, - "UpdateAvailabilityRequest": { - "id": "UpdateAvailabilityRequest", - "type": "object", - "description": "The request to update availability.", - "properties": { - "availabilities": { - "type": "array", - "description": "The availabilities being requested.", - "items": { - "$ref": "Availability" - } - } - } - }, - "UpdateAvailabilityResponse": { - "id": "UpdateAvailabilityResponse", - "type": "object", - "description": "The response to a update availability request.", - "properties": { - "availabilities": { - "type": "array", - "description": "The availabilities being returned.", - "items": { - "$ref": "Availability" - } - } - } - } - }, - "resources": { - "conversion": { - "methods": { - "get": { - "id": "doubleclicksearch.conversion.get", - "path": "agency/{agencyId}/advertiser/{advertiserId}/engine/{engineAccountId}/conversion", - "httpMethod": "GET", - "description": "Retrieves a list of conversions from a DoubleClick Search engine account.", - "parameters": { - "adGroupId": { - "type": "string", - "description": "Numeric ID of the ad group.", - "format": "int64", - "location": "query" - }, - "adId": { - "type": "string", - "description": "Numeric ID of the ad.", - "format": "int64", - "location": "query" - }, - "advertiserId": { - "type": "string", - "description": "Numeric ID of the advertiser.", - "required": true, - "format": "int64", - "location": "path" - }, - "agencyId": { - "type": "string", - "description": "Numeric ID of the agency.", - "required": true, - "format": "int64", - "location": "path" - }, - "campaignId": { - "type": "string", - "description": "Numeric ID of the campaign.", - "format": "int64", - "location": "query" - }, - "criterionId": { - "type": "string", - "description": "Numeric ID of the criterion.", - "format": "int64", - "location": "query" - }, - "endDate": { - "type": "integer", - "description": "Last date (inclusive) on which to retrieve conversions. Format is yyyymmdd.", - "required": true, - "format": "int32", - "minimum": "20091101", - "maximum": "99991231", - "location": "query" - }, - "engineAccountId": { - "type": "string", - "description": "Numeric ID of the engine account.", - "required": true, - "format": "int64", - "location": "path" - }, - "rowCount": { - "type": "integer", - "description": "The number of conversions to return per call.", - "required": true, - "format": "int32", - "minimum": "1", - "maximum": "1000", - "location": "query" - }, - "startDate": { - "type": "integer", - "description": "First date (inclusive) on which to retrieve conversions. Format is yyyymmdd.", - "required": true, - "format": "int32", - "minimum": "20091101", - "maximum": "99991231", - "location": "query" - }, - "startRow": { - "type": "integer", - "description": "The 0-based starting index for retrieving conversions results.", - "required": true, - "format": "uint32", - "location": "query" - } - }, - "parameterOrder": [ - "agencyId", - "advertiserId", - "engineAccountId", - "endDate", - "rowCount", - "startDate", - "startRow" - ], - "response": { - "$ref": "ConversionList" - }, - "scopes": [ - "https://www.googleapis.com/auth/doubleclicksearch" - ] - }, - "insert": { - "id": "doubleclicksearch.conversion.insert", - "path": "conversion", - "httpMethod": "POST", - "description": "Inserts a batch of new conversions into DoubleClick Search.", - "request": { - "$ref": "ConversionList" - }, - "response": { - "$ref": "ConversionList" - }, - "scopes": [ - "https://www.googleapis.com/auth/doubleclicksearch" - ] - }, - "patch": { - "id": "doubleclicksearch.conversion.patch", - "path": "conversion", - "httpMethod": "PATCH", - "description": "Updates a batch of conversions in DoubleClick Search. This method supports patch semantics.", - "parameters": { - "advertiserId": { - "type": "string", - "description": "Numeric ID of the advertiser.", - "required": true, - "format": "int64", - "location": "query" - }, - "agencyId": { - "type": "string", - "description": "Numeric ID of the agency.", - "required": true, - "format": "int64", - "location": "query" - }, - "endDate": { - "type": "integer", - "description": "Last date (inclusive) on which to retrieve conversions. Format is yyyymmdd.", - "required": true, - "format": "int32", - "minimum": "20091101", - "maximum": "99991231", - "location": "query" - }, - "engineAccountId": { - "type": "string", - "description": "Numeric ID of the engine account.", - "required": true, - "format": "int64", - "location": "query" - }, - "rowCount": { - "type": "integer", - "description": "The number of conversions to return per call.", - "required": true, - "format": "int32", - "minimum": "1", - "maximum": "1000", - "location": "query" - }, - "startDate": { - "type": "integer", - "description": "First date (inclusive) on which to retrieve conversions. Format is yyyymmdd.", - "required": true, - "format": "int32", - "minimum": "20091101", - "maximum": "99991231", - "location": "query" - }, - "startRow": { - "type": "integer", - "description": "The 0-based starting index for retrieving conversions results.", - "required": true, - "format": "uint32", - "location": "query" - } - }, - "parameterOrder": [ - "advertiserId", - "agencyId", - "endDate", - "engineAccountId", - "rowCount", - "startDate", - "startRow" - ], - "request": { - "$ref": "ConversionList" - }, - "response": { - "$ref": "ConversionList" - }, - "scopes": [ - "https://www.googleapis.com/auth/doubleclicksearch" - ] - }, - "update": { - "id": "doubleclicksearch.conversion.update", - "path": "conversion", - "httpMethod": "PUT", - "description": "Updates a batch of conversions in DoubleClick Search.", - "request": { - "$ref": "ConversionList" - }, - "response": { - "$ref": "ConversionList" - }, - "scopes": [ - "https://www.googleapis.com/auth/doubleclicksearch" - ] - }, - "updateAvailability": { - "id": "doubleclicksearch.conversion.updateAvailability", - "path": "conversion/updateAvailability", - "httpMethod": "POST", - "description": "Updates the availabilities of a batch of floodlight activities in DoubleClick Search.", - "request": { - "$ref": "UpdateAvailabilityRequest", - "parameterName": "empty" - }, - "response": { - "$ref": "UpdateAvailabilityResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/doubleclicksearch" - ] - } - } - }, - "reports": { - "methods": { - "generate": { - "id": "doubleclicksearch.reports.generate", - "path": "reports/generate", - "httpMethod": "POST", - "description": "Generates and returns a report immediately.", - "request": { - "$ref": "ReportRequest", - "parameterName": "reportRequest" - }, - "response": { - "$ref": "Report" - }, - "scopes": [ - "https://www.googleapis.com/auth/doubleclicksearch" - ] - }, - "get": { - "id": "doubleclicksearch.reports.get", - "path": "reports/{reportId}", - "httpMethod": "GET", - "description": "Polls for the status of a report request.", - "parameters": { - "reportId": { - "type": "string", - "description": "ID of the report request being polled.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "reportId" - ], - "response": { - "$ref": "Report" - }, - "scopes": [ - "https://www.googleapis.com/auth/doubleclicksearch" - ] - }, - "getFile": { - "id": "doubleclicksearch.reports.getFile", - "path": "reports/{reportId}/files/{reportFragment}", - "httpMethod": "GET", - "description": "Downloads a report file encoded in UTF-8.", - "parameters": { - "reportFragment": { - "type": "integer", - "description": "The index of the report fragment to download.", - "required": true, - "format": "int32", - "minimum": "0", - "location": "path" - }, - "reportId": { - "type": "string", - "description": "ID of the report.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "reportId", - "reportFragment" - ], - "scopes": [ - "https://www.googleapis.com/auth/doubleclicksearch" - ], - "supportsMediaDownload": true, - "useMediaDownloadService": true - }, - "request": { - "id": "doubleclicksearch.reports.request", - "path": "reports", - "httpMethod": "POST", - "description": "Inserts a report request into the reporting system.", - "request": { - "$ref": "ReportRequest", - "parameterName": "reportRequest" - }, - "response": { - "$ref": "Report" - }, - "scopes": [ - "https://www.googleapis.com/auth/doubleclicksearch" - ] - } - } - }, - "savedColumns": { - "methods": { - "list": { - "id": "doubleclicksearch.savedColumns.list", - "path": "agency/{agencyId}/advertiser/{advertiserId}/savedcolumns", - "httpMethod": "GET", - "description": "Retrieve the list of saved columns for a specified advertiser.", - "parameters": { - "advertiserId": { - "type": "string", - "description": "DS ID of the advertiser.", - "required": true, - "format": "int64", - "location": "path" - }, - "agencyId": { - "type": "string", - "description": "DS ID of the agency.", - "required": true, - "format": "int64", - "location": "path" - } - }, - "parameterOrder": [ - "agencyId", - "advertiserId" - ], - "response": { - "$ref": "SavedColumnList" - }, - "scopes": [ - "https://www.googleapis.com/auth/doubleclicksearch" - ] - } - } - } - } -} + "servicePath": "doubleclicksearch/v2/", + "title": "DoubleClick Search API", + "version": "v2" +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/drive/v2/drive-api.json b/vendor/google.golang.org/api/drive/v2/drive-api.json index 177f3ace5..9d9c3b63d 100644 --- a/vendor/google.golang.org/api/drive/v2/drive-api.json +++ b/vendor/google.golang.org/api/drive/v2/drive-api.json @@ -1,5118 +1,5129 @@ { - "kind": "discovery#restDescription", - "etag": "\"YWOzh2SDasdU84ArJnpYek-OMdg/minc5niM2cggYvQjv8BHfkvoMV8\"", - "discoveryVersion": "v1", - "id": "drive:v2", - "name": "drive", - "version": "v2", - "revision": "20180105", - "title": "Drive API", - "description": "Manages files in Drive including uploading, downloading, searching, detecting changes, and updating sharing permissions.", - "ownerDomain": "google.com", - "ownerName": "Google", - "icons": { - "x16": "https://ssl.gstatic.com/docs/doclist/images/drive_icon_16.png", - "x32": "https://ssl.gstatic.com/docs/doclist/images/drive_icon_32.png" - }, - "documentationLink": "https://developers.google.com/drive/", - "protocol": "rest", - "baseUrl": "https://www.googleapis.com/drive/v2/", - "basePath": "/drive/v2/", - "rootUrl": "https://www.googleapis.com/", - "servicePath": "drive/v2/", - "batchPath": "batch/drive/v2", - "parameters": { - "alt": { - "type": "string", - "description": "Data format for the response.", - "default": "json", - "enum": [ - "json" - ], - "enumDescriptions": [ - "Responses with Content-Type of application/json" - ], - "location": "query" - }, - "fields": { - "type": "string", - "description": "Selector specifying which fields to include in a partial response.", - "location": "query" - }, - "key": { - "type": "string", - "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" - }, - "oauth_token": { - "type": "string", - "description": "OAuth 2.0 token for the current user.", - "location": "query" - }, - "prettyPrint": { - "type": "boolean", - "description": "Returns response with indentations and line breaks.", - "default": "true", - "location": "query" - }, - "quotaUser": { - "type": "string", - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", - "location": "query" - }, - "userIp": { - "type": "string", - "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", - "location": "query" - } - }, - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/drive": { - "description": "View and manage the files in your Google Drive" - }, - "https://www.googleapis.com/auth/drive.appdata": { - "description": "View and manage its own configuration data in your Google Drive" - }, - "https://www.googleapis.com/auth/drive.apps.readonly": { - "description": "View your Google Drive apps" - }, - "https://www.googleapis.com/auth/drive.file": { - "description": "View and manage Google Drive files and folders that you have opened or created with this app" - }, - "https://www.googleapis.com/auth/drive.metadata": { - "description": "View and manage metadata of files in your Google Drive" - }, - "https://www.googleapis.com/auth/drive.metadata.readonly": { - "description": "View metadata for files in your Google Drive" - }, - "https://www.googleapis.com/auth/drive.photos.readonly": { - "description": "View the photos, videos and albums in your Google Photos" - }, - "https://www.googleapis.com/auth/drive.readonly": { - "description": "View the files in your Google Drive" - }, - "https://www.googleapis.com/auth/drive.scripts": { - "description": "Modify your Google Apps Script scripts' behavior" - } - } - } - }, - "schemas": { - "About": { - "id": "About", - "type": "object", - "description": "An item with user information and settings.", - "properties": { - "additionalRoleInfo": { - "type": "array", - "description": "Information about supported additional roles per file type. The most specific type takes precedence.", - "items": { - "type": "object", - "properties": { - "roleSets": { - "type": "array", - "description": "The supported additional roles per primary role.", - "items": { - "type": "object", - "properties": { - "additionalRoles": { - "type": "array", - "description": "The supported additional roles with the primary role.", - "items": { - "type": "string" - } - }, - "primaryRole": { - "type": "string", - "description": "A primary permission role." - } - } - } - }, - "type": { - "type": "string", - "description": "The content type that this additional role info applies to." - } - } - } - }, - "domainSharingPolicy": { - "type": "string", - "description": "The domain sharing policy for the current user. Possible values are: \n- allowed \n- allowedWithWarning \n- incomingOnly \n- disallowed" - }, - "etag": { - "type": "string", - "description": "The ETag of the item." - }, - "exportFormats": { - "type": "array", - "description": "The allowable export formats.", - "items": { - "type": "object", - "properties": { - "source": { - "type": "string", - "description": "The content type to convert from." - }, - "targets": { - "type": "array", - "description": "The possible content types to convert to.", - "items": { - "type": "string" - } - } - } - } - }, - "features": { - "type": "array", - "description": "List of additional features enabled on this account.", - "items": { - "type": "object", - "properties": { - "featureName": { - "type": "string", - "description": "The name of the feature." - }, - "featureRate": { - "type": "number", - "description": "The request limit rate for this feature, in queries per second.", - "format": "double" - } - } - } - }, - "folderColorPalette": { - "type": "array", - "description": "The palette of allowable folder colors as RGB hex strings.", - "items": { - "type": "string" - } - }, - "importFormats": { - "type": "array", - "description": "The allowable import formats.", - "items": { - "type": "object", - "properties": { - "source": { - "type": "string", - "description": "The imported file's content type to convert from." - }, - "targets": { - "type": "array", - "description": "The possible content types to convert to.", - "items": { - "type": "string" - } - } - } - } - }, - "isCurrentAppInstalled": { - "type": "boolean", - "description": "A boolean indicating whether the authenticated app is installed by the authenticated user." - }, - "kind": { - "type": "string", - "description": "This is always drive#about.", - "default": "drive#about" - }, - "languageCode": { - "type": "string", - "description": "The user's language or locale code, as defined by BCP 47, with some extensions from Unicode's LDML format (http://www.unicode.org/reports/tr35/)." - }, - "largestChangeId": { - "type": "string", - "description": "The largest change id.", - "format": "int64" - }, - "maxUploadSizes": { - "type": "array", - "description": "List of max upload sizes for each file type. The most specific type takes precedence.", - "items": { - "type": "object", - "properties": { - "size": { - "type": "string", - "description": "The max upload size for this type.", - "format": "int64" - }, - "type": { - "type": "string", - "description": "The file type." - } - } - } - }, - "name": { - "type": "string", - "description": "The name of the current user." - }, - "permissionId": { - "type": "string", - "description": "The current user's ID as visible in the permissions collection." - }, - "quotaBytesByService": { - "type": "array", - "description": "The amount of storage quota used by different Google services.", - "items": { - "type": "object", - "properties": { - "bytesUsed": { - "type": "string", - "description": "The storage quota bytes used by the service.", - "format": "int64" - }, - "serviceName": { - "type": "string", - "description": "The service's name, e.g. DRIVE, GMAIL, or PHOTOS." - } - } - } - }, - "quotaBytesTotal": { - "type": "string", - "description": "The total number of quota bytes.", - "format": "int64" - }, - "quotaBytesUsed": { - "type": "string", - "description": "The number of quota bytes used by Google Drive.", - "format": "int64" - }, - "quotaBytesUsedAggregate": { - "type": "string", - "description": "The number of quota bytes used by all Google apps (Drive, Picasa, etc.).", - "format": "int64" - }, - "quotaBytesUsedInTrash": { - "type": "string", - "description": "The number of quota bytes used by trashed items.", - "format": "int64" - }, - "quotaType": { - "type": "string", - "description": "The type of the user's storage quota. Possible values are: \n- LIMITED \n- UNLIMITED" - }, - "remainingChangeIds": { - "type": "string", - "description": "The number of remaining change ids, limited to no more than 2500.", - "format": "int64" - }, - "rootFolderId": { - "type": "string", - "description": "The id of the root folder." - }, - "selfLink": { - "type": "string", - "description": "A link back to this item." - }, - "teamDriveThemes": { - "type": "array", - "description": "A list of themes that are supported for Team Drives.", - "items": { - "type": "object", - "properties": { - "backgroundImageLink": { - "type": "string", - "description": "A link to this Team Drive theme's background image." - }, - "colorRgb": { - "type": "string", - "description": "The color of this Team Drive theme as an RGB hex string." - }, - "id": { - "type": "string", - "description": "The ID of the theme." - } - } - } - }, - "user": { - "$ref": "User", - "description": "The authenticated user." - } - } - }, - "App": { - "id": "App", - "type": "object", - "description": "The apps resource provides a list of the apps that a user has installed, with information about each app's supported MIME types, file extensions, and other details.", - "properties": { - "authorized": { - "type": "boolean", - "description": "Whether the app is authorized to access data on the user's Drive." - }, - "createInFolderTemplate": { - "type": "string", - "description": "The template url to create a new file with this app in a given folder. The template will contain {folderId} to be replaced by the folder to create the new file in." - }, - "createUrl": { - "type": "string", - "description": "The url to create a new file with this app." - }, - "hasDriveWideScope": { - "type": "boolean", - "description": "Whether the app has drive-wide scope. An app with drive-wide scope can access all files in the user's drive." - }, - "icons": { - "type": "array", - "description": "The various icons for the app.", - "items": { - "type": "object", - "properties": { - "category": { - "type": "string", - "description": "Category of the icon. Allowed values are: \n- application - icon for the application \n- document - icon for a file associated with the app \n- documentShared - icon for a shared file associated with the app" - }, - "iconUrl": { - "type": "string", - "description": "URL for the icon." - }, - "size": { - "type": "integer", - "description": "Size of the icon. Represented as the maximum of the width and height.", - "format": "int32" - } - } - } - }, - "id": { - "type": "string", - "description": "The ID of the app." - }, - "installed": { - "type": "boolean", - "description": "Whether the app is installed." - }, - "kind": { - "type": "string", - "description": "This is always drive#app.", - "default": "drive#app" - }, - "longDescription": { - "type": "string", - "description": "A long description of the app." - }, - "name": { - "type": "string", - "description": "The name of the app." - }, - "objectType": { - "type": "string", - "description": "The type of object this app creates (e.g. Chart). If empty, the app name should be used instead." - }, - "openUrlTemplate": { - "type": "string", - "description": "The template url for opening files with this app. The template will contain {ids} and/or {exportIds} to be replaced by the actual file ids. See Open Files for the full documentation." - }, - "primaryFileExtensions": { - "type": "array", - "description": "The list of primary file extensions.", - "items": { - "type": "string" - } - }, - "primaryMimeTypes": { - "type": "array", - "description": "The list of primary mime types.", - "items": { - "type": "string" - } - }, - "productId": { - "type": "string", - "description": "The ID of the product listing for this app." - }, - "productUrl": { - "type": "string", - "description": "A link to the product listing for this app." - }, - "secondaryFileExtensions": { - "type": "array", - "description": "The list of secondary file extensions.", - "items": { - "type": "string" - } - }, - "secondaryMimeTypes": { - "type": "array", - "description": "The list of secondary mime types.", - "items": { - "type": "string" - } - }, - "shortDescription": { - "type": "string", - "description": "A short description of the app." - }, - "supportsCreate": { - "type": "boolean", - "description": "Whether this app supports creating new objects." - }, - "supportsImport": { - "type": "boolean", - "description": "Whether this app supports importing Google Docs." - }, - "supportsMultiOpen": { - "type": "boolean", - "description": "Whether this app supports opening more than one file." - }, - "supportsOfflineCreate": { - "type": "boolean", - "description": "Whether this app supports creating new files when offline." - }, - "useByDefault": { - "type": "boolean", - "description": "Whether the app is selected as the default handler for the types it supports." - } - } - }, - "AppList": { - "id": "AppList", - "type": "object", - "description": "A list of third-party applications which the user has installed or given access to Google Drive.", - "properties": { - "defaultAppIds": { - "type": "array", - "description": "List of app IDs that the user has specified to use by default. The list is in reverse-priority order (lowest to highest).", - "items": { - "type": "string" - } - }, - "etag": { - "type": "string", - "description": "The ETag of the list." - }, - "items": { - "type": "array", - "description": "The list of apps.", - "items": { - "$ref": "App" - } - }, - "kind": { - "type": "string", - "description": "This is always drive#appList.", - "default": "drive#appList" - }, - "selfLink": { - "type": "string", - "description": "A link back to this list." - } - } - }, - "Change": { - "id": "Change", - "type": "object", - "description": "Representation of a change to a file or Team Drive.", - "properties": { - "deleted": { - "type": "boolean", - "description": "Whether the file or Team Drive has been removed from this list of changes, for example by deletion or loss of access." - }, - "file": { - "$ref": "File", - "description": "The updated state of the file. Present if the type is file and the file has not been removed from this list of changes." - }, - "fileId": { - "type": "string", - "description": "The ID of the file associated with this change." - }, - "id": { - "type": "string", - "description": "The ID of the change.", - "format": "int64" - }, - "kind": { - "type": "string", - "description": "This is always drive#change.", - "default": "drive#change" - }, - "modificationDate": { - "type": "string", - "description": "The time of this modification.", - "format": "date-time" - }, - "selfLink": { - "type": "string", - "description": "A link back to this change." - }, - "teamDrive": { - "$ref": "TeamDrive", - "description": "The updated state of the Team Drive. Present if the type is teamDrive, the user is still a member of the Team Drive, and the Team Drive has not been deleted." - }, - "teamDriveId": { - "type": "string", - "description": "The ID of the Team Drive associated with this change." - }, - "type": { - "type": "string", - "description": "The type of the change. Possible values are file and teamDrive." - } - } - }, - "ChangeList": { - "id": "ChangeList", - "type": "object", - "description": "A list of changes for a user.", - "properties": { - "etag": { - "type": "string", - "description": "The ETag of the list." - }, - "items": { - "type": "array", - "description": "The list of changes. If nextPageToken is populated, then this list may be incomplete and an additional page of results should be fetched.", - "items": { - "$ref": "Change" - } - }, - "kind": { - "type": "string", - "description": "This is always drive#changeList.", - "default": "drive#changeList" - }, - "largestChangeId": { - "type": "string", - "description": "The current largest change ID.", - "format": "int64" - }, - "newStartPageToken": { - "type": "string", - "description": "The starting page token for future changes. This will be present only if the end of the current changes list has been reached." - }, - "nextLink": { - "type": "string", - "description": "A link to the next page of changes." - }, - "nextPageToken": { - "type": "string", - "description": "The page token for the next page of changes. This will be absent if the end of the changes list has been reached. If the token is rejected for any reason, it should be discarded, and pagination should be restarted from the first page of results." - }, - "selfLink": { - "type": "string", - "description": "A link back to this list." - } - } - }, - "Channel": { - "id": "Channel", - "type": "object", - "description": "An notification channel used to watch for resource changes.", - "properties": { - "address": { - "type": "string", - "description": "The address where notifications are delivered for this channel." - }, - "expiration": { - "type": "string", - "description": "Date and time of notification channel expiration, expressed as a Unix timestamp, in milliseconds. Optional.", - "format": "int64" - }, - "id": { - "type": "string", - "description": "A UUID or similar unique string that identifies this channel." - }, - "kind": { - "type": "string", - "description": "Identifies this as a notification channel used to watch for changes to a resource. Value: the fixed string \"api#channel\".", - "default": "api#channel" - }, - "params": { - "type": "object", - "description": "Additional parameters controlling delivery channel behavior. Optional.", - "additionalProperties": { - "type": "string", - "description": "Declares a new parameter by name." - } - }, - "payload": { - "type": "boolean", - "description": "A Boolean value to indicate whether payload is wanted. Optional." - }, - "resourceId": { - "type": "string", - "description": "An opaque ID that identifies the resource being watched on this channel. Stable across different API versions." - }, - "resourceUri": { - "type": "string", - "description": "A version-specific identifier for the watched resource." - }, - "token": { - "type": "string", - "description": "An arbitrary string delivered to the target address with each notification delivered over this channel. Optional." - }, - "type": { - "type": "string", - "description": "The type of delivery mechanism used for this channel." - } - } - }, - "ChildList": { - "id": "ChildList", - "type": "object", - "description": "A list of children of a file.", - "properties": { - "etag": { - "type": "string", - "description": "The ETag of the list." - }, - "items": { - "type": "array", - "description": "The list of children. If nextPageToken is populated, then this list may be incomplete and an additional page of results should be fetched.", - "items": { - "$ref": "ChildReference" - } - }, - "kind": { - "type": "string", - "description": "This is always drive#childList.", - "default": "drive#childList" - }, - "nextLink": { - "type": "string", - "description": "A link to the next page of children." - }, - "nextPageToken": { - "type": "string", - "description": "The page token for the next page of children. This will be absent if the end of the children list has been reached. If the token is rejected for any reason, it should be discarded, and pagination should be restarted from the first page of results." - }, - "selfLink": { - "type": "string", - "description": "A link back to this list." - } - } - }, - "ChildReference": { - "id": "ChildReference", - "type": "object", - "description": "A reference to a folder's child.", - "properties": { - "childLink": { - "type": "string", - "description": "A link to the child." - }, - "id": { - "type": "string", - "description": "The ID of the child.", - "annotations": { - "required": [ - "drive.children.insert" - ] - } - }, - "kind": { - "type": "string", - "description": "This is always drive#childReference.", - "default": "drive#childReference" - }, - "selfLink": { - "type": "string", - "description": "A link back to this reference." - } - } - }, - "Comment": { - "id": "Comment", - "type": "object", - "description": "A comment on a file in Google Drive.", - "properties": { - "anchor": { - "type": "string", - "description": "A region of the document represented as a JSON string. See anchor documentation for details on how to define and interpret anchor properties." - }, - "author": { - "$ref": "User", - "description": "The user who wrote this comment." - }, - "commentId": { - "type": "string", - "description": "The ID of the comment." - }, - "content": { - "type": "string", - "description": "The plain text content used to create this comment. This is not HTML safe and should only be used as a starting point to make edits to a comment's content.", - "annotations": { - "required": [ - "drive.comments.insert", - "drive.comments.update" - ] - } - }, - "context": { - "type": "object", - "description": "The context of the file which is being commented on.", - "properties": { - "type": { - "type": "string", - "description": "The MIME type of the context snippet." - }, - "value": { - "type": "string", - "description": "Data representation of the segment of the file being commented on. In the case of a text file for example, this would be the actual text that the comment is about." - } - } - }, - "createdDate": { - "type": "string", - "description": "The date when this comment was first created.", - "format": "date-time" - }, - "deleted": { - "type": "boolean", - "description": "Whether this comment has been deleted. If a comment has been deleted the content will be cleared and this will only represent a comment that once existed." - }, - "fileId": { - "type": "string", - "description": "The file which this comment is addressing." - }, - "fileTitle": { - "type": "string", - "description": "The title of the file which this comment is addressing." - }, - "htmlContent": { - "type": "string", - "description": "HTML formatted content for this comment." - }, - "kind": { - "type": "string", - "description": "This is always drive#comment.", - "default": "drive#comment" - }, - "modifiedDate": { - "type": "string", - "description": "The date when this comment or any of its replies were last modified.", - "format": "date-time" - }, - "replies": { - "type": "array", - "description": "Replies to this post.", - "items": { - "$ref": "CommentReply" - } - }, - "selfLink": { - "type": "string", - "description": "A link back to this comment." - }, - "status": { - "type": "string", - "description": "The status of this comment. Status can be changed by posting a reply to a comment with the desired status. \n- \"open\" - The comment is still open. \n- \"resolved\" - The comment has been resolved by one of its replies." - } - } - }, - "CommentList": { - "id": "CommentList", - "type": "object", - "description": "A list of comments on a file in Google Drive.", - "properties": { - "items": { - "type": "array", - "description": "The list of comments. If nextPageToken is populated, then this list may be incomplete and an additional page of results should be fetched.", - "items": { - "$ref": "Comment" - } - }, - "kind": { - "type": "string", - "description": "This is always drive#commentList.", - "default": "drive#commentList" - }, - "nextLink": { - "type": "string", - "description": "A link to the next page of comments." - }, - "nextPageToken": { - "type": "string", - "description": "The page token for the next page of comments. This will be absent if the end of the comments list has been reached. If the token is rejected for any reason, it should be discarded, and pagination should be restarted from the first page of results." - }, - "selfLink": { - "type": "string", - "description": "A link back to this list." - } - } - }, - "CommentReply": { - "id": "CommentReply", - "type": "object", - "description": "A comment on a file in Google Drive.", - "properties": { - "author": { - "$ref": "User", - "description": "The user who wrote this reply." - }, - "content": { - "type": "string", - "description": "The plain text content used to create this reply. This is not HTML safe and should only be used as a starting point to make edits to a reply's content. This field is required on inserts if no verb is specified (resolve/reopen).", - "annotations": { - "required": [ - "drive.replies.update" - ] - } - }, - "createdDate": { - "type": "string", - "description": "The date when this reply was first created.", - "format": "date-time" - }, - "deleted": { - "type": "boolean", - "description": "Whether this reply has been deleted. If a reply has been deleted the content will be cleared and this will only represent a reply that once existed." - }, - "htmlContent": { - "type": "string", - "description": "HTML formatted content for this reply." - }, - "kind": { - "type": "string", - "description": "This is always drive#commentReply.", - "default": "drive#commentReply" - }, - "modifiedDate": { - "type": "string", - "description": "The date when this reply was last modified.", - "format": "date-time" - }, - "replyId": { - "type": "string", - "description": "The ID of the reply." - }, - "verb": { - "type": "string", - "description": "The action this reply performed to the parent comment. When creating a new reply this is the action to be perform to the parent comment. Possible values are: \n- \"resolve\" - To resolve a comment. \n- \"reopen\" - To reopen (un-resolve) a comment." - } - } - }, - "CommentReplyList": { - "id": "CommentReplyList", - "type": "object", - "description": "A list of replies to a comment on a file in Google Drive.", - "properties": { - "items": { - "type": "array", - "description": "The list of replies. If nextPageToken is populated, then this list may be incomplete and an additional page of results should be fetched.", - "items": { - "$ref": "CommentReply" - } - }, - "kind": { - "type": "string", - "description": "This is always drive#commentReplyList.", - "default": "drive#commentReplyList" - }, - "nextLink": { - "type": "string", - "description": "A link to the next page of replies." - }, - "nextPageToken": { - "type": "string", - "description": "The page token for the next page of replies. This will be absent if the end of the replies list has been reached. If the token is rejected for any reason, it should be discarded, and pagination should be restarted from the first page of results." - }, - "selfLink": { - "type": "string", - "description": "A link back to this list." - } - } - }, - "File": { - "id": "File", - "type": "object", - "description": "The metadata for a file.", - "properties": { - "alternateLink": { - "type": "string", - "description": "A link for opening the file in a relevant Google editor or viewer." - }, - "appDataContents": { - "type": "boolean", - "description": "Whether this file is in the Application Data folder." - }, - "canComment": { - "type": "boolean", - "description": "Deprecated: use capabilities/canComment." - }, - "canReadRevisions": { - "type": "boolean", - "description": "Deprecated: use capabilities/canReadRevisions." - }, - "capabilities": { - "type": "object", - "description": "Capabilities the current user has on this file. Each capability corresponds to a fine-grained action that a user may take.", - "properties": { - "canAddChildren": { - "type": "boolean", - "description": "Whether the current user can add children to this folder. This is always false when the item is not a folder." - }, - "canChangeRestrictedDownload": { - "type": "boolean", - "description": "Whether the current user can change the restricted download label of this file." - }, - "canComment": { - "type": "boolean", - "description": "Whether the current user can comment on this file." - }, - "canCopy": { - "type": "boolean", - "description": "Whether the current user can copy this file. For a Team Drive item, whether the current user can copy non-folder descendants of this item, or this item itself if it is not a folder." - }, - "canDelete": { - "type": "boolean", - "description": "Whether the current user can delete this file." - }, - "canDownload": { - "type": "boolean", - "description": "Whether the current user can download this file." - }, - "canEdit": { - "type": "boolean", - "description": "Whether the current user can edit this file." - }, - "canListChildren": { - "type": "boolean", - "description": "Whether the current user can list the children of this folder. This is always false when the item is not a folder." - }, - "canMoveItemIntoTeamDrive": { - "type": "boolean", - "description": "Whether the current user can move this item into a Team Drive. If the item is in a Team Drive, this field is equivalent to canMoveTeamDriveItem." - }, - "canMoveTeamDriveItem": { - "type": "boolean", - "description": "Whether the current user can move this Team Drive item by changing its parent. Note that a request to change the parent for this item may still fail depending on the new parent that is being added. Only populated for Team Drive files." - }, - "canReadRevisions": { - "type": "boolean", - "description": "Whether the current user can read the revisions resource of this file. For a Team Drive item, whether revisions of non-folder descendants of this item, or this item itself if it is not a folder, can be read." - }, - "canReadTeamDrive": { - "type": "boolean", - "description": "Whether the current user can read the Team Drive to which this file belongs. Only populated for Team Drive files." - }, - "canRemoveChildren": { - "type": "boolean", - "description": "Whether the current user can remove children from this folder. This is always false when the item is not a folder." - }, - "canRename": { - "type": "boolean", - "description": "Whether the current user can rename this file." - }, - "canShare": { - "type": "boolean", - "description": "Whether the current user can modify the sharing settings for this file." - }, - "canTrash": { - "type": "boolean", - "description": "Whether the current user can move this file to trash." - }, - "canUntrash": { - "type": "boolean", - "description": "Whether the current user can restore this file from trash." - } - } - }, - "copyable": { - "type": "boolean", - "description": "Deprecated: use capabilities/canCopy." - }, - "createdDate": { - "type": "string", - "description": "Create time for this file (formatted RFC 3339 timestamp).", - "format": "date-time" - }, - "defaultOpenWithLink": { - "type": "string", - "description": "A link to open this file with the user's default app for this file. Only populated when the drive.apps.readonly scope is used." - }, - "description": { - "type": "string", - "description": "A short description of the file." - }, - "downloadUrl": { - "type": "string" - }, - "editable": { - "type": "boolean", - "description": "Deprecated: use capabilities/canEdit." - }, - "embedLink": { - "type": "string", - "description": "A link for embedding the file." - }, - "etag": { - "type": "string", - "description": "ETag of the file." - }, - "explicitlyTrashed": { - "type": "boolean", - "description": "Whether this file has been explicitly trashed, as opposed to recursively trashed." - }, - "exportLinks": { - "type": "object", - "description": "Links for exporting Google Docs to specific formats.", - "additionalProperties": { - "type": "string", - "description": "A mapping from export format to URL" - } - }, - "fileExtension": { - "type": "string", - "description": "The final component of fullFileExtension with trailing text that does not appear to be part of the extension removed. This field is only populated for files with content stored in Drive; it is not populated for Google Docs or shortcut files." - }, - "fileSize": { - "type": "string", - "description": "The size of the file in bytes. This field is only populated for files with content stored in Drive; it is not populated for Google Docs or shortcut files.", - "format": "int64" - }, - "folderColorRgb": { - "type": "string", - "description": "Folder color as an RGB hex string if the file is a folder. The list of supported colors is available in the folderColorPalette field of the About resource. If an unsupported color is specified, it will be changed to the closest color in the palette. Not populated for Team Drive files." - }, - "fullFileExtension": { - "type": "string", - "description": "The full file extension; extracted from the title. May contain multiple concatenated extensions, such as \"tar.gz\". Removing an extension from the title does not clear this field; however, changing the extension on the title does update this field. This field is only populated for files with content stored in Drive; it is not populated for Google Docs or shortcut files." - }, - "hasAugmentedPermissions": { - "type": "boolean", - "description": "Whether any users are granted file access directly on this file. This field is only populated for Team Drive files." - }, - "hasThumbnail": { - "type": "boolean", - "description": "Whether this file has a thumbnail. This does not indicate whether the requesting app has access to the thumbnail. To check access, look for the presence of the thumbnailLink field." - }, - "headRevisionId": { - "type": "string", - "description": "The ID of the file's head revision. This field is only populated for files with content stored in Drive; it is not populated for Google Docs or shortcut files." - }, - "iconLink": { - "type": "string", - "description": "A link to the file's icon." - }, - "id": { - "type": "string", - "description": "The ID of the file." - }, - "imageMediaMetadata": { - "type": "object", - "description": "Metadata about image media. This will only be present for image types, and its contents will depend on what can be parsed from the image content.", - "properties": { - "aperture": { - "type": "number", - "description": "The aperture used to create the photo (f-number).", - "format": "float" - }, - "cameraMake": { - "type": "string", - "description": "The make of the camera used to create the photo." - }, - "cameraModel": { - "type": "string", - "description": "The model of the camera used to create the photo." - }, - "colorSpace": { - "type": "string", - "description": "The color space of the photo." - }, - "date": { - "type": "string", - "description": "The date and time the photo was taken (EXIF format timestamp)." - }, - "exposureBias": { - "type": "number", - "description": "The exposure bias of the photo (APEX value).", - "format": "float" - }, - "exposureMode": { - "type": "string", - "description": "The exposure mode used to create the photo." - }, - "exposureTime": { - "type": "number", - "description": "The length of the exposure, in seconds.", - "format": "float" - }, - "flashUsed": { - "type": "boolean", - "description": "Whether a flash was used to create the photo." - }, - "focalLength": { - "type": "number", - "description": "The focal length used to create the photo, in millimeters.", - "format": "float" - }, - "height": { - "type": "integer", - "description": "The height of the image in pixels.", - "format": "int32" - }, - "isoSpeed": { - "type": "integer", - "description": "The ISO speed used to create the photo.", - "format": "int32" - }, - "lens": { - "type": "string", - "description": "The lens used to create the photo." - }, - "location": { - "type": "object", - "description": "Geographic location information stored in the image.", - "properties": { - "altitude": { - "type": "number", - "description": "The altitude stored in the image.", - "format": "double" + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/drive": { + "description": "View and manage the files in your Google Drive" }, - "latitude": { - "type": "number", - "description": "The latitude stored in the image.", - "format": "double" + "https://www.googleapis.com/auth/drive.appdata": { + "description": "View and manage its own configuration data in your Google Drive" }, - "longitude": { - "type": "number", - "description": "The longitude stored in the image.", - "format": "double" + "https://www.googleapis.com/auth/drive.apps.readonly": { + "description": "View your Google Drive apps" + }, + "https://www.googleapis.com/auth/drive.file": { + "description": "View and manage Google Drive files and folders that you have opened or created with this app" + }, + "https://www.googleapis.com/auth/drive.metadata": { + "description": "View and manage metadata of files in your Google Drive" + }, + "https://www.googleapis.com/auth/drive.metadata.readonly": { + "description": "View metadata for files in your Google Drive" + }, + "https://www.googleapis.com/auth/drive.photos.readonly": { + "description": "View the photos, videos and albums in your Google Photos" + }, + "https://www.googleapis.com/auth/drive.readonly": { + "description": "View the files in your Google Drive" + }, + "https://www.googleapis.com/auth/drive.scripts": { + "description": "Modify your Google Apps Script scripts' behavior" } - } - }, - "maxApertureValue": { - "type": "number", - "description": "The smallest f-number of the lens at the focal length used to create the photo (APEX value).", - "format": "float" - }, - "meteringMode": { - "type": "string", - "description": "The metering mode used to create the photo." - }, - "rotation": { - "type": "integer", - "description": "The rotation in clockwise degrees from the image's original orientation.", - "format": "int32" - }, - "sensor": { - "type": "string", - "description": "The type of sensor used to create the photo." - }, - "subjectDistance": { - "type": "integer", - "description": "The distance to the subject of the photo, in meters.", - "format": "int32" - }, - "whiteBalance": { - "type": "string", - "description": "The white balance mode used to create the photo." - }, - "width": { - "type": "integer", - "description": "The width of the image in pixels.", - "format": "int32" } - } - }, - "indexableText": { - "type": "object", - "description": "Indexable text attributes for the file (can only be written)", - "properties": { - "text": { - "type": "string", - "description": "The text to be indexed for this file." - } - } - }, - "isAppAuthorized": { - "type": "boolean", - "description": "Whether the file was created or opened by the requesting app." - }, - "kind": { - "type": "string", - "description": "The type of file. This is always drive#file.", - "default": "drive#file" - }, - "labels": { - "type": "object", - "description": "A group of labels for the file.", - "properties": { - "hidden": { - "type": "boolean", - "description": "Deprecated." - }, - "modified": { - "type": "boolean", - "description": "Whether the file has been modified by this user." - }, - "restricted": { - "type": "boolean", - "description": "Whether viewers and commenters are prevented from downloading, printing, and copying this file." - }, - "starred": { - "type": "boolean", - "description": "Whether this file is starred by the user." - }, - "trashed": { - "type": "boolean", - "description": "Whether this file has been trashed. This label applies to all users accessing the file; however, only owners are allowed to see and untrash files." - }, - "viewed": { - "type": "boolean", - "description": "Whether this file has been viewed by this user." - } - } - }, - "lastModifyingUser": { - "$ref": "User", - "description": "The last user to modify this file." - }, - "lastModifyingUserName": { - "type": "string", - "description": "Name of the last user to modify this file." - }, - "lastViewedByMeDate": { - "type": "string", - "description": "Last time this file was viewed by the user (formatted RFC 3339 timestamp).", - "format": "date-time" - }, - "markedViewedByMeDate": { - "type": "string", - "description": "Deprecated.", - "format": "date-time" - }, - "md5Checksum": { - "type": "string", - "description": "An MD5 checksum for the content of this file. This field is only populated for files with content stored in Drive; it is not populated for Google Docs or shortcut files." - }, - "mimeType": { - "type": "string", - "description": "The MIME type of the file. This is only mutable on update when uploading new content. This field can be left blank, and the mimetype will be determined from the uploaded content's MIME type." - }, - "modifiedByMeDate": { - "type": "string", - "description": "Last time this file was modified by the user (formatted RFC 3339 timestamp). Note that setting modifiedDate will also update the modifiedByMe date for the user which set the date.", - "format": "date-time" - }, - "modifiedDate": { - "type": "string", - "description": "Last time this file was modified by anyone (formatted RFC 3339 timestamp). This is only mutable on update when the setModifiedDate parameter is set.", - "format": "date-time" - }, - "openWithLinks": { - "type": "object", - "description": "A map of the id of each of the user's apps to a link to open this file with that app. Only populated when the drive.apps.readonly scope is used.", - "additionalProperties": { + } + }, + "basePath": "/drive/v2/", + "baseUrl": "https://www.googleapis.com/drive/v2/", + "batchPath": "batch/drive/v2", + "description": "Manages files in Drive including uploading, downloading, searching, detecting changes, and updating sharing permissions.", + "discoveryVersion": "v1", + "documentationLink": "https://developers.google.com/drive/", + "etag": "\"-iA1DTNe4s-I6JZXPt1t1Ypy8IU/3sZY5SudRICrZaNsZzXj7Gt8kVY\"", + "icons": { + "x16": "https://ssl.gstatic.com/docs/doclist/images/drive_icon_16.png", + "x32": "https://ssl.gstatic.com/docs/doclist/images/drive_icon_32.png" + }, + "id": "drive:v2", + "kind": "discovery#restDescription", + "name": "drive", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "alt": { + "default": "json", + "description": "Data format for the response.", + "enum": [ + "json" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json" + ], + "location": "query", "type": "string" - } }, - "originalFilename": { - "type": "string", - "description": "The original filename of the uploaded content if available, or else the original value of the title field. This is only available for files with binary content in Drive." - }, - "ownedByMe": { - "type": "boolean", - "description": "Whether the file is owned by the current user. Not populated for Team Drive files." - }, - "ownerNames": { - "type": "array", - "description": "Name(s) of the owner(s) of this file. Not populated for Team Drive files.", - "items": { + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "location": "query", "type": "string" - } - }, - "owners": { - "type": "array", - "description": "The owner(s) of this file. Not populated for Team Drive files.", - "items": { - "$ref": "User" - } - }, - "parents": { - "type": "array", - "description": "Collection of parent folders which contain this file.\nIf not specified as part of an insert request, the file will be placed directly in the user's My Drive folder. If not specified as part of a copy request, the file will inherit any discoverable parents of the source file. Update requests can also use the addParents and removeParents parameters to modify the parents list.", - "items": { - "$ref": "ParentReference" - } - }, - "permissionIds": { - "type": "array", - "description": "List of permission IDs for users with access to this file.", - "items": { - "type": "string" - } - }, - "permissions": { - "type": "array", - "description": "The list of permissions for users with access to this file. Not populated for Team Drive files.", - "items": { - "$ref": "Permission" - } - }, - "properties": { - "type": "array", - "description": "The list of properties.", - "items": { - "$ref": "Property" - } - }, - "quotaBytesUsed": { - "type": "string", - "description": "The number of quota bytes used by this file.", - "format": "int64" - }, - "selfLink": { - "type": "string", - "description": "A link back to this file." - }, - "shareable": { - "type": "boolean", - "description": "Deprecated: use capabilities/canShare." - }, - "shared": { - "type": "boolean", - "description": "Whether the file has been shared. Not populated for Team Drive files." - }, - "sharedWithMeDate": { - "type": "string", - "description": "Time at which this file was shared with the user (formatted RFC 3339 timestamp).", - "format": "date-time" - }, - "sharingUser": { - "$ref": "User", - "description": "User that shared the item with the current user, if available." - }, - "spaces": { - "type": "array", - "description": "The list of spaces which contain the file. Supported values are 'drive', 'appDataFolder' and 'photos'.", - "items": { - "type": "string" - } - }, - "teamDriveId": { - "type": "string", - "description": "ID of the Team Drive the file resides in." - }, - "thumbnail": { - "type": "object", - "description": "A thumbnail for the file. This will only be used if Drive cannot generate a standard thumbnail.", - "properties": { - "image": { - "type": "string", - "description": "The URL-safe Base64 encoded bytes of the thumbnail image. It should conform to RFC 4648 section 5.", - "format": "byte" - }, - "mimeType": { - "type": "string", - "description": "The MIME type of the thumbnail." - } - } - }, - "thumbnailLink": { - "type": "string", - "description": "A short-lived link to the file's thumbnail. Typically lasts on the order of hours. Only populated when the requesting app can access the file's content." - }, - "thumbnailVersion": { - "type": "string", - "description": "The thumbnail version for use in thumbnail cache invalidation.", - "format": "int64" - }, - "title": { - "type": "string", - "description": "The title of this file. Note that for immutable items such as the top level folders of Team Drives, My Drive root folder, and Application Data folder the title is constant." - }, - "trashedDate": { - "type": "string", - "description": "The time that the item was trashed (formatted RFC 3339 timestamp). Only populated for Team Drive files.", - "format": "date-time" - }, - "trashingUser": { - "$ref": "User", - "description": "If the file has been explicitly trashed, the user who trashed it. Only populated for Team Drive files." - }, - "userPermission": { - "$ref": "Permission", - "description": "The permissions for the authenticated user on this file." - }, - "version": { - "type": "string", - "description": "A monotonically increasing version number for the file. This reflects every change made to the file on the server, even those not visible to the requesting user.", - "format": "int64" - }, - "videoMediaMetadata": { - "type": "object", - "description": "Metadata about video media. This will only be present for video types.", - "properties": { - "durationMillis": { - "type": "string", - "description": "The duration of the video in milliseconds.", - "format": "int64" - }, - "height": { - "type": "integer", - "description": "The height of the video in pixels.", - "format": "int32" - }, - "width": { - "type": "integer", - "description": "The width of the video in pixels.", - "format": "int32" - } - } - }, - "webContentLink": { - "type": "string", - "description": "A link for downloading the content of the file in a browser using cookie based authentication. In cases where the content is shared publicly, the content can be downloaded without any credentials." - }, - "webViewLink": { - "type": "string", - "description": "A link only available on public folders for viewing their static web assets (HTML, CSS, JS, etc) via Google Drive's Website Hosting." - }, - "writersCanShare": { - "type": "boolean", - "description": "Whether writers can share the document with other users. Not populated for Team Drive files." - } - } - }, - "FileList": { - "id": "FileList", - "type": "object", - "description": "A list of files.", - "properties": { - "etag": { - "type": "string", - "description": "The ETag of the list." - }, - "incompleteSearch": { - "type": "boolean", - "description": "Whether the search process was incomplete. If true, then some search results may be missing, since all documents were not searched. This may occur when searching multiple Team Drives with the \"default,allTeamDrives\" corpora, but all corpora could not be searched. When this happens, it is suggested that clients narrow their query by choosing a different corpus such as \"default\" or \"teamDrive\"." - }, - "items": { - "type": "array", - "description": "The list of files. If nextPageToken is populated, then this list may be incomplete and an additional page of results should be fetched.", - "items": { - "$ref": "File" - } - }, - "kind": { - "type": "string", - "description": "This is always drive#fileList.", - "default": "drive#fileList" - }, - "nextLink": { - "type": "string", - "description": "A link to the next page of files." - }, - "nextPageToken": { - "type": "string", - "description": "The page token for the next page of files. This will be absent if the end of the files list has been reached. If the token is rejected for any reason, it should be discarded, and pagination should be restarted from the first page of results." - }, - "selfLink": { - "type": "string", - "description": "A link back to this list." - } - } - }, - "GeneratedIds": { - "id": "GeneratedIds", - "type": "object", - "description": "A list of generated IDs which can be provided in insert requests", - "properties": { - "ids": { - "type": "array", - "description": "The IDs generated for the requesting user in the specified space.", - "items": { - "type": "string" - } - }, - "kind": { - "type": "string", - "description": "This is always drive#generatedIds", - "default": "drive#generatedIds" - }, - "space": { - "type": "string", - "description": "The type of file that can be created with these IDs." - } - } - }, - "ParentList": { - "id": "ParentList", - "type": "object", - "description": "A list of a file's parents.", - "properties": { - "etag": { - "type": "string", - "description": "The ETag of the list." - }, - "items": { - "type": "array", - "description": "The list of parents.", - "items": { - "$ref": "ParentReference" - } - }, - "kind": { - "type": "string", - "description": "This is always drive#parentList.", - "default": "drive#parentList" - }, - "selfLink": { - "type": "string", - "description": "A link back to this list." - } - } - }, - "ParentReference": { - "id": "ParentReference", - "type": "object", - "description": "A reference to a file's parent.", - "properties": { - "id": { - "type": "string", - "description": "The ID of the parent.", - "annotations": { - "required": [ - "drive.parents.insert" - ] - } - }, - "isRoot": { - "type": "boolean", - "description": "Whether or not the parent is the root folder." - }, - "kind": { - "type": "string", - "description": "This is always drive#parentReference.", - "default": "drive#parentReference" - }, - "parentLink": { - "type": "string", - "description": "A link to the parent." - }, - "selfLink": { - "type": "string", - "description": "A link back to this reference." - } - } - }, - "Permission": { - "id": "Permission", - "type": "object", - "description": "A permission for a file.", - "properties": { - "additionalRoles": { - "type": "array", - "description": "Additional roles for this user. Only commenter is currently allowed, though more may be supported in the future.", - "items": { - "type": "string" - } - }, - "authKey": { - "type": "string", - "description": "Deprecated." - }, - "deleted": { - "type": "boolean", - "description": "Whether the account associated with this permission has been deleted. This field only pertains to user and group permissions." - }, - "domain": { - "type": "string", - "description": "The domain name of the entity this permission refers to. This is an output-only field which is present when the permission type is user, group or domain." - }, - "emailAddress": { - "type": "string", - "description": "The email address of the user or group this permission refers to. This is an output-only field which is present when the permission type is user or group." - }, - "etag": { - "type": "string", - "description": "The ETag of the permission." - }, - "expirationDate": { - "type": "string", - "description": "The time at which this permission will expire (RFC 3339 date-time). Expiration dates have the following restrictions: \n- They can only be set on user and group permissions \n- The date must be in the future \n- The date cannot be more than a year in the future \n- The date can only be set on drive.permissions.update requests", - "format": "date-time" - }, - "id": { - "type": "string", - "description": "The ID of the user this permission refers to, and identical to the permissionId in the About and Files resources. When making a drive.permissions.insert request, exactly one of the id or value fields must be specified unless the permission type is anyone, in which case both id and value are ignored." - }, - "kind": { - "type": "string", - "description": "This is always drive#permission.", - "default": "drive#permission" - }, - "name": { - "type": "string", - "description": "The name for this permission." - }, - "photoLink": { - "type": "string", - "description": "A link to the profile photo, if available." - }, - "role": { - "type": "string", - "description": "The primary role for this user. While new values may be supported in the future, the following are currently allowed: \n- organizer \n- owner \n- reader \n- writer", - "annotations": { - "required": [ - "drive.permissions.insert" - ] - } - }, - "selfLink": { - "type": "string", - "description": "A link back to this permission." - }, - "teamDrivePermissionDetails": { - "type": "array", - "description": "Details of whether the permissions on this Team Drive item are inherited or directly on this item. This is an output-only field which is present only for Team Drive items.", - "items": { - "type": "object", - "properties": { - "additionalRoles": { - "type": "array", - "description": "Additional roles for this user. Only commenter is currently possible, though more may be supported in the future.", - "items": { - "type": "string" - } - }, - "inherited": { - "type": "boolean", - "description": "Whether this permission is inherited. This field is always populated. This is an output-only field." - }, - "inheritedFrom": { - "type": "string", - "description": "The ID of the item from which this permission is inherited. This is an output-only field and is only populated for members of the Team Drive." - }, - "role": { - "type": "string", - "description": "The primary role for this user. While new values may be added in the future, the following are currently possible: \n- organizer \n- reader \n- writer" - }, - "teamDrivePermissionType": { - "type": "string", - "description": "The Team Drive permission type for this user. While new values may be added in future, the following are currently possible: \n- file \n- member" - } - } - } - }, - "type": { - "type": "string", - "description": "The account type. Allowed values are: \n- user \n- group \n- domain \n- anyone", - "annotations": { - "required": [ - "drive.permissions.insert" - ] - } - }, - "value": { - "type": "string", - "description": "The email address or domain name for the entity. This is used during inserts and is not populated in responses. When making a drive.permissions.insert request, exactly one of the id or value fields must be specified unless the permission type is anyone, in which case both id and value are ignored." - }, - "withLink": { - "type": "boolean", - "description": "Whether the link is required for this permission." - } - } - }, - "PermissionId": { - "id": "PermissionId", - "type": "object", - "description": "An ID for a user or group as seen in Permission items.", - "properties": { - "id": { - "type": "string", - "description": "The permission ID." - }, - "kind": { - "type": "string", - "description": "This is always drive#permissionId.", - "default": "drive#permissionId" - } - } - }, - "PermissionList": { - "id": "PermissionList", - "type": "object", - "description": "A list of permissions associated with a file.", - "properties": { - "etag": { - "type": "string", - "description": "The ETag of the list." - }, - "items": { - "type": "array", - "description": "The list of permissions.", - "items": { - "$ref": "Permission" - } - }, - "kind": { - "type": "string", - "description": "This is always drive#permissionList.", - "default": "drive#permissionList" - }, - "nextPageToken": { - "type": "string", - "description": "The page token for the next page of permissions. This field will be absent if the end of the permissions list has been reached. If the token is rejected for any reason, it should be discarded, and pagination should be restarted from the first page of results." - }, - "selfLink": { - "type": "string", - "description": "A link back to this list." - } - } - }, - "Property": { - "id": "Property", - "type": "object", - "description": "A key-value pair attached to a file that is either public or private to an application.\nThe following limits apply to file properties: \n- Maximum of 100 properties total per file\n- Maximum of 30 private properties per app\n- Maximum of 30 public properties\n- Maximum of 124 bytes size limit on (key + value) string in UTF-8 encoding for a single property.", - "properties": { - "etag": { - "type": "string", - "description": "ETag of the property." }, "key": { - "type": "string", - "description": "The key of this property." + "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" }, - "kind": { - "type": "string", - "description": "This is always drive#property.", - "default": "drive#property" + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" }, - "selfLink": { - "type": "string", - "description": "The link back to this property." + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" }, - "value": { - "type": "string", - "description": "The value of this property." + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", + "location": "query", + "type": "string" }, - "visibility": { - "type": "string", - "description": "The visibility of this property." + "userIp": { + "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", + "location": "query", + "type": "string" } - } }, - "PropertyList": { - "id": "PropertyList", - "type": "object", - "description": "A collection of properties, key-value pairs that are either public or private to an application.", - "properties": { - "etag": { - "type": "string", - "description": "The ETag of the list." + "protocol": "rest", + "resources": { + "about": { + "methods": { + "get": { + "description": "Gets the information about the current user along with Drive API settings", + "httpMethod": "GET", + "id": "drive.about.get", + "parameters": { + "includeSubscribed": { + "default": "true", + "description": "Whether to count changes outside the My Drive hierarchy. When set to false, changes to files such as those in the Application Data folder or shared files which have not been added to My Drive will be omitted from the maxChangeIdCount.", + "location": "query", + "type": "boolean" + }, + "maxChangeIdCount": { + "default": "1", + "description": "Maximum number of remaining change IDs to count", + "format": "int64", + "location": "query", + "type": "string" + }, + "startChangeId": { + "description": "Change ID to start counting from when calculating number of remaining change IDs", + "format": "int64", + "location": "query", + "type": "string" + } + }, + "path": "about", + "response": { + "$ref": "About" + }, + "scopes": [ + "https://www.googleapis.com/auth/drive", + "https://www.googleapis.com/auth/drive.appdata", + "https://www.googleapis.com/auth/drive.file", + "https://www.googleapis.com/auth/drive.metadata", + "https://www.googleapis.com/auth/drive.metadata.readonly", + "https://www.googleapis.com/auth/drive.photos.readonly", + "https://www.googleapis.com/auth/drive.readonly" + ] + } + } }, - "items": { - "type": "array", - "description": "The list of properties.", - "items": { - "$ref": "Property" - } + "apps": { + "methods": { + "get": { + "description": "Gets a specific app.", + "httpMethod": "GET", + "id": "drive.apps.get", + "parameterOrder": [ + "appId" + ], + "parameters": { + "appId": { + "description": "The ID of the app.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "apps/{appId}", + "response": { + "$ref": "App" + }, + "scopes": [ + "https://www.googleapis.com/auth/drive", + "https://www.googleapis.com/auth/drive.appdata", + "https://www.googleapis.com/auth/drive.apps.readonly", + "https://www.googleapis.com/auth/drive.file", + "https://www.googleapis.com/auth/drive.metadata", + "https://www.googleapis.com/auth/drive.metadata.readonly", + "https://www.googleapis.com/auth/drive.readonly" + ] + }, + "list": { + "description": "Lists a user's installed apps.", + "httpMethod": "GET", + "id": "drive.apps.list", + "parameters": { + "appFilterExtensions": { + "default": "", + "description": "A comma-separated list of file extensions for open with filtering. All apps within the given app query scope which can open any of the given file extensions will be included in the response. If appFilterMimeTypes are provided as well, the result is a union of the two resulting app lists.", + "location": "query", + "type": "string" + }, + "appFilterMimeTypes": { + "default": "", + "description": "A comma-separated list of MIME types for open with filtering. All apps within the given app query scope which can open any of the given MIME types will be included in the response. If appFilterExtensions are provided as well, the result is a union of the two resulting app lists.", + "location": "query", + "type": "string" + }, + "languageCode": { + "description": "A language or locale code, as defined by BCP 47, with some extensions from Unicode's LDML format (http://www.unicode.org/reports/tr35/).", + "location": "query", + "type": "string" + } + }, + "path": "apps", + "response": { + "$ref": "AppList" + }, + "scopes": [ + "https://www.googleapis.com/auth/drive.apps.readonly" + ] + } + } }, - "kind": { - "type": "string", - "description": "This is always drive#propertyList.", - "default": "drive#propertyList" + "changes": { + "methods": { + "get": { + "description": "Deprecated - Use changes.getStartPageToken and changes.list to retrieve recent changes.", + "httpMethod": "GET", + "id": "drive.changes.get", + "parameterOrder": [ + "changeId" + ], + "parameters": { + "changeId": { + "description": "The ID of the change.", + "location": "path", + "required": true, + "type": "string" + }, + "supportsTeamDrives": { + "default": "false", + "description": "Whether the requesting application supports Team Drives.", + "location": "query", + "type": "boolean" + }, + "teamDriveId": { + "description": "The Team Drive from which the change will be returned.", + "location": "query", + "type": "string" + } + }, + "path": "changes/{changeId}", + "response": { + "$ref": "Change" + }, + "scopes": [ + "https://www.googleapis.com/auth/drive", + "https://www.googleapis.com/auth/drive.appdata", + "https://www.googleapis.com/auth/drive.apps.readonly", + "https://www.googleapis.com/auth/drive.file", + "https://www.googleapis.com/auth/drive.metadata", + "https://www.googleapis.com/auth/drive.metadata.readonly", + "https://www.googleapis.com/auth/drive.photos.readonly", + "https://www.googleapis.com/auth/drive.readonly" + ] + }, + "getStartPageToken": { + "description": "Gets the starting pageToken for listing future changes.", + "httpMethod": "GET", + "id": "drive.changes.getStartPageToken", + "parameters": { + "supportsTeamDrives": { + "default": "false", + "description": "Whether the requesting application supports Team Drives.", + "location": "query", + "type": "boolean" + }, + "teamDriveId": { + "description": "The ID of the Team Drive for which the starting pageToken for listing future changes from that Team Drive will be returned.", + "location": "query", + "type": "string" + } + }, + "path": "changes/startPageToken", + "response": { + "$ref": "StartPageToken" + }, + "scopes": [ + "https://www.googleapis.com/auth/drive", + "https://www.googleapis.com/auth/drive.appdata", + "https://www.googleapis.com/auth/drive.apps.readonly", + "https://www.googleapis.com/auth/drive.file", + "https://www.googleapis.com/auth/drive.metadata", + "https://www.googleapis.com/auth/drive.metadata.readonly", + "https://www.googleapis.com/auth/drive.photos.readonly", + "https://www.googleapis.com/auth/drive.readonly" + ] + }, + "list": { + "description": "Lists the changes for a user or Team Drive.", + "httpMethod": "GET", + "id": "drive.changes.list", + "parameters": { + "includeCorpusRemovals": { + "default": "false", + "description": "Whether changes should include the file resource if the file is still accessible by the user at the time of the request, even when a file was removed from the list of changes and there will be no further change entries for this file.", + "location": "query", + "type": "boolean" + }, + "includeDeleted": { + "default": "true", + "description": "Whether to include changes indicating that items have been removed from the list of changes, for example by deletion or loss of access.", + "location": "query", + "type": "boolean" + }, + "includeSubscribed": { + "default": "true", + "description": "Whether to include changes outside the My Drive hierarchy in the result. When set to false, changes to files such as those in the Application Data folder or shared files which have not been added to My Drive will be omitted from the result.", + "location": "query", + "type": "boolean" + }, + "includeTeamDriveItems": { + "default": "false", + "description": "Whether Team Drive files or changes should be included in results.", + "location": "query", + "type": "boolean" + }, + "maxResults": { + "default": "100", + "description": "Maximum number of changes to return.", + "format": "int32", + "location": "query", + "minimum": "1", + "type": "integer" + }, + "pageToken": { + "description": "The token for continuing a previous list request on the next page. This should be set to the value of 'nextPageToken' from the previous response or to the response from the getStartPageToken method.", + "location": "query", + "type": "string" + }, + "spaces": { + "description": "A comma-separated list of spaces to query. Supported values are 'drive', 'appDataFolder' and 'photos'.", + "location": "query", + "type": "string" + }, + "startChangeId": { + "description": "Deprecated - use pageToken instead.", + "format": "int64", + "location": "query", + "type": "string" + }, + "supportsTeamDrives": { + "default": "false", + "description": "Whether the requesting application supports Team Drives.", + "location": "query", + "type": "boolean" + }, + "teamDriveId": { + "description": "The Team Drive from which changes will be returned. If specified the change IDs will be reflective of the Team Drive; use the combined Team Drive ID and change ID as an identifier.", + "location": "query", + "type": "string" + } + }, + "path": "changes", + "response": { + "$ref": "ChangeList" + }, + "scopes": [ + "https://www.googleapis.com/auth/drive", + "https://www.googleapis.com/auth/drive.appdata", + "https://www.googleapis.com/auth/drive.apps.readonly", + "https://www.googleapis.com/auth/drive.file", + "https://www.googleapis.com/auth/drive.metadata", + "https://www.googleapis.com/auth/drive.metadata.readonly", + "https://www.googleapis.com/auth/drive.photos.readonly", + "https://www.googleapis.com/auth/drive.readonly" + ], + "supportsSubscription": true + }, + "watch": { + "description": "Subscribe to changes for a user.", + "httpMethod": "POST", + "id": "drive.changes.watch", + "parameters": { + "includeCorpusRemovals": { + "default": "false", + "description": "Whether changes should include the file resource if the file is still accessible by the user at the time of the request, even when a file was removed from the list of changes and there will be no further change entries for this file.", + "location": "query", + "type": "boolean" + }, + "includeDeleted": { + "default": "true", + "description": "Whether to include changes indicating that items have been removed from the list of changes, for example by deletion or loss of access.", + "location": "query", + "type": "boolean" + }, + "includeSubscribed": { + "default": "true", + "description": "Whether to include changes outside the My Drive hierarchy in the result. When set to false, changes to files such as those in the Application Data folder or shared files which have not been added to My Drive will be omitted from the result.", + "location": "query", + "type": "boolean" + }, + "includeTeamDriveItems": { + "default": "false", + "description": "Whether Team Drive files or changes should be included in results.", + "location": "query", + "type": "boolean" + }, + "maxResults": { + "default": "100", + "description": "Maximum number of changes to return.", + "format": "int32", + "location": "query", + "minimum": "1", + "type": "integer" + }, + "pageToken": { + "description": "The token for continuing a previous list request on the next page. This should be set to the value of 'nextPageToken' from the previous response or to the response from the getStartPageToken method.", + "location": "query", + "type": "string" + }, + "spaces": { + "description": "A comma-separated list of spaces to query. Supported values are 'drive', 'appDataFolder' and 'photos'.", + "location": "query", + "type": "string" + }, + "startChangeId": { + "description": "Deprecated - use pageToken instead.", + "format": "int64", + "location": "query", + "type": "string" + }, + "supportsTeamDrives": { + "default": "false", + "description": "Whether the requesting application supports Team Drives.", + "location": "query", + "type": "boolean" + }, + "teamDriveId": { + "description": "The Team Drive from which changes will be returned. If specified the change IDs will be reflective of the Team Drive; use the combined Team Drive ID and change ID as an identifier.", + "location": "query", + "type": "string" + } + }, + "path": "changes/watch", + "request": { + "$ref": "Channel", + "parameterName": "resource" + }, + "response": { + "$ref": "Channel" + }, + "scopes": [ + "https://www.googleapis.com/auth/drive", + "https://www.googleapis.com/auth/drive.appdata", + "https://www.googleapis.com/auth/drive.apps.readonly", + "https://www.googleapis.com/auth/drive.file", + "https://www.googleapis.com/auth/drive.metadata", + "https://www.googleapis.com/auth/drive.metadata.readonly", + "https://www.googleapis.com/auth/drive.photos.readonly", + "https://www.googleapis.com/auth/drive.readonly" + ], + "supportsSubscription": true + } + } }, - "selfLink": { - "type": "string", - "description": "The link back to this list." + "channels": { + "methods": { + "stop": { + "description": "Stop watching resources through this channel", + "httpMethod": "POST", + "id": "drive.channels.stop", + "path": "channels/stop", + "request": { + "$ref": "Channel", + "parameterName": "resource" + }, + "scopes": [ + "https://www.googleapis.com/auth/drive", + "https://www.googleapis.com/auth/drive.appdata", + "https://www.googleapis.com/auth/drive.apps.readonly", + "https://www.googleapis.com/auth/drive.file", + "https://www.googleapis.com/auth/drive.metadata", + "https://www.googleapis.com/auth/drive.metadata.readonly", + "https://www.googleapis.com/auth/drive.photos.readonly", + "https://www.googleapis.com/auth/drive.readonly" + ] + } + } + }, + "children": { + "methods": { + "delete": { + "description": "Removes a child from a folder.", + "httpMethod": "DELETE", + "id": "drive.children.delete", + "parameterOrder": [ + "folderId", + "childId" + ], + "parameters": { + "childId": { + "description": "The ID of the child.", + "location": "path", + "required": true, + "type": "string" + }, + "folderId": { + "description": "The ID of the folder.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "files/{folderId}/children/{childId}", + "scopes": [ + "https://www.googleapis.com/auth/drive", + "https://www.googleapis.com/auth/drive.file" + ] + }, + "get": { + "description": "Gets a specific child reference.", + "httpMethod": "GET", + "id": "drive.children.get", + "parameterOrder": [ + "folderId", + "childId" + ], + "parameters": { + "childId": { + "description": "The ID of the child.", + "location": "path", + "required": true, + "type": "string" + }, + "folderId": { + "description": "The ID of the folder.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "files/{folderId}/children/{childId}", + "response": { + "$ref": "ChildReference" + }, + "scopes": [ + "https://www.googleapis.com/auth/drive", + "https://www.googleapis.com/auth/drive.appdata", + "https://www.googleapis.com/auth/drive.file", + "https://www.googleapis.com/auth/drive.metadata", + "https://www.googleapis.com/auth/drive.metadata.readonly", + "https://www.googleapis.com/auth/drive.photos.readonly", + "https://www.googleapis.com/auth/drive.readonly" + ] + }, + "insert": { + "description": "Inserts a file into a folder.", + "httpMethod": "POST", + "id": "drive.children.insert", + "parameterOrder": [ + "folderId" + ], + "parameters": { + "folderId": { + "description": "The ID of the folder.", + "location": "path", + "required": true, + "type": "string" + }, + "supportsTeamDrives": { + "default": "false", + "description": "Whether the requesting application supports Team Drives.", + "location": "query", + "type": "boolean" + } + }, + "path": "files/{folderId}/children", + "request": { + "$ref": "ChildReference" + }, + "response": { + "$ref": "ChildReference" + }, + "scopes": [ + "https://www.googleapis.com/auth/drive", + "https://www.googleapis.com/auth/drive.appdata", + "https://www.googleapis.com/auth/drive.file" + ] + }, + "list": { + "description": "Lists a folder's children.", + "httpMethod": "GET", + "id": "drive.children.list", + "parameterOrder": [ + "folderId" + ], + "parameters": { + "folderId": { + "description": "The ID of the folder.", + "location": "path", + "required": true, + "type": "string" + }, + "maxResults": { + "default": "100", + "description": "Maximum number of children to return.", + "format": "int32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "A comma-separated list of sort keys. Valid keys are 'createdDate', 'folder', 'lastViewedByMeDate', 'modifiedByMeDate', 'modifiedDate', 'quotaBytesUsed', 'recency', 'sharedWithMeDate', 'starred', and 'title'. Each key sorts ascending by default, but may be reversed with the 'desc' modifier. Example usage: ?orderBy=folder,modifiedDate desc,title. Please note that there is a current limitation for users with approximately one million files in which the requested sort order is ignored.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Page token for children.", + "location": "query", + "type": "string" + }, + "q": { + "description": "Query string for searching children.", + "location": "query", + "type": "string" + } + }, + "path": "files/{folderId}/children", + "response": { + "$ref": "ChildList" + }, + "scopes": [ + "https://www.googleapis.com/auth/drive", + "https://www.googleapis.com/auth/drive.appdata", + "https://www.googleapis.com/auth/drive.file", + "https://www.googleapis.com/auth/drive.metadata", + "https://www.googleapis.com/auth/drive.metadata.readonly", + "https://www.googleapis.com/auth/drive.photos.readonly", + "https://www.googleapis.com/auth/drive.readonly" + ] + } + } + }, + "comments": { + "methods": { + "delete": { + "description": "Deletes a comment.", + "httpMethod": "DELETE", + "id": "drive.comments.delete", + "parameterOrder": [ + "fileId", + "commentId" + ], + "parameters": { + "commentId": { + "description": "The ID of the comment.", + "location": "path", + "required": true, + "type": "string" + }, + "fileId": { + "description": "The ID of the file.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "files/{fileId}/comments/{commentId}", + "scopes": [ + "https://www.googleapis.com/auth/drive", + "https://www.googleapis.com/auth/drive.file" + ] + }, + "get": { + "description": "Gets a comment by ID.", + "httpMethod": "GET", + "id": "drive.comments.get", + "parameterOrder": [ + "fileId", + "commentId" + ], + "parameters": { + "commentId": { + "description": "The ID of the comment.", + "location": "path", + "required": true, + "type": "string" + }, + "fileId": { + "description": "The ID of the file.", + "location": "path", + "required": true, + "type": "string" + }, + "includeDeleted": { + "default": "false", + "description": "If set, this will succeed when retrieving a deleted comment, and will include any deleted replies.", + "location": "query", + "type": "boolean" + } + }, + "path": "files/{fileId}/comments/{commentId}", + "response": { + "$ref": "Comment" + }, + "scopes": [ + "https://www.googleapis.com/auth/drive", + "https://www.googleapis.com/auth/drive.file", + "https://www.googleapis.com/auth/drive.readonly" + ] + }, + "insert": { + "description": "Creates a new comment on the given file.", + "httpMethod": "POST", + "id": "drive.comments.insert", + "parameterOrder": [ + "fileId" + ], + "parameters": { + "fileId": { + "description": "The ID of the file.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "files/{fileId}/comments", + "request": { + "$ref": "Comment" + }, + "response": { + "$ref": "Comment" + }, + "scopes": [ + "https://www.googleapis.com/auth/drive", + "https://www.googleapis.com/auth/drive.file" + ] + }, + "list": { + "description": "Lists a file's comments.", + "httpMethod": "GET", + "id": "drive.comments.list", + "parameterOrder": [ + "fileId" + ], + "parameters": { + "fileId": { + "description": "The ID of the file.", + "location": "path", + "required": true, + "type": "string" + }, + "includeDeleted": { + "default": "false", + "description": "If set, all comments and replies, including deleted comments and replies (with content stripped) will be returned.", + "location": "query", + "type": "boolean" + }, + "maxResults": { + "default": "20", + "description": "The maximum number of discussions to include in the response, used for paging.", + "format": "int32", + "location": "query", + "maximum": "100", + "minimum": "0", + "type": "integer" + }, + "pageToken": { + "description": "The continuation token, used to page through large result sets. To get the next page of results, set this parameter to the value of \"nextPageToken\" from the previous response.", + "location": "query", + "type": "string" + }, + "updatedMin": { + "description": "Only discussions that were updated after this timestamp will be returned. Formatted as an RFC 3339 timestamp.", + "location": "query", + "type": "string" + } + }, + "path": "files/{fileId}/comments", + "response": { + "$ref": "CommentList" + }, + "scopes": [ + "https://www.googleapis.com/auth/drive", + "https://www.googleapis.com/auth/drive.file", + "https://www.googleapis.com/auth/drive.readonly" + ] + }, + "patch": { + "description": "Updates an existing comment. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "drive.comments.patch", + "parameterOrder": [ + "fileId", + "commentId" + ], + "parameters": { + "commentId": { + "description": "The ID of the comment.", + "location": "path", + "required": true, + "type": "string" + }, + "fileId": { + "description": "The ID of the file.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "files/{fileId}/comments/{commentId}", + "request": { + "$ref": "Comment" + }, + "response": { + "$ref": "Comment" + }, + "scopes": [ + "https://www.googleapis.com/auth/drive", + "https://www.googleapis.com/auth/drive.file" + ] + }, + "update": { + "description": "Updates an existing comment.", + "httpMethod": "PUT", + "id": "drive.comments.update", + "parameterOrder": [ + "fileId", + "commentId" + ], + "parameters": { + "commentId": { + "description": "The ID of the comment.", + "location": "path", + "required": true, + "type": "string" + }, + "fileId": { + "description": "The ID of the file.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "files/{fileId}/comments/{commentId}", + "request": { + "$ref": "Comment" + }, + "response": { + "$ref": "Comment" + }, + "scopes": [ + "https://www.googleapis.com/auth/drive", + "https://www.googleapis.com/auth/drive.file" + ] + } + } + }, + "files": { + "methods": { + "copy": { + "description": "Creates a copy of the specified file.", + "httpMethod": "POST", + "id": "drive.files.copy", + "parameterOrder": [ + "fileId" + ], + "parameters": { + "convert": { + "default": "false", + "description": "Whether to convert this file to the corresponding Google Docs format.", + "location": "query", + "type": "boolean" + }, + "fileId": { + "description": "The ID of the file to copy.", + "location": "path", + "required": true, + "type": "string" + }, + "ocr": { + "default": "false", + "description": "Whether to attempt OCR on .jpg, .png, .gif, or .pdf uploads.", + "location": "query", + "type": "boolean" + }, + "ocrLanguage": { + "description": "If ocr is true, hints at the language to use. Valid values are BCP 47 codes.", + "location": "query", + "type": "string" + }, + "pinned": { + "default": "false", + "description": "Whether to pin the head revision of the new copy. A file can have a maximum of 200 pinned revisions.", + "location": "query", + "type": "boolean" + }, + "supportsTeamDrives": { + "default": "false", + "description": "Whether the requesting application supports Team Drives.", + "location": "query", + "type": "boolean" + }, + "timedTextLanguage": { + "description": "The language of the timed text.", + "location": "query", + "type": "string" + }, + "timedTextTrackName": { + "description": "The timed text track name.", + "location": "query", + "type": "string" + }, + "visibility": { + "default": "DEFAULT", + "description": "The visibility of the new file. This parameter is only relevant when the source is not a native Google Doc and convert=false.", + "enum": [ + "DEFAULT", + "PRIVATE" + ], + "enumDescriptions": [ + "The visibility of the new file is determined by the user's default visibility/sharing policies.", + "The new file will be visible to only the owner." + ], + "location": "query", + "type": "string" + } + }, + "path": "files/{fileId}/copy", + "request": { + "$ref": "File" + }, + "response": { + "$ref": "File" + }, + "scopes": [ + "https://www.googleapis.com/auth/drive", + "https://www.googleapis.com/auth/drive.appdata", + "https://www.googleapis.com/auth/drive.apps.readonly", + "https://www.googleapis.com/auth/drive.file", + "https://www.googleapis.com/auth/drive.photos.readonly" + ] + }, + "delete": { + "description": "Permanently deletes a file by ID. Skips the trash. The currently authenticated user must own the file or be an organizer on the parent for Team Drive files.", + "httpMethod": "DELETE", + "id": "drive.files.delete", + "parameterOrder": [ + "fileId" + ], + "parameters": { + "fileId": { + "description": "The ID of the file to delete.", + "location": "path", + "required": true, + "type": "string" + }, + "supportsTeamDrives": { + "default": "false", + "description": "Whether the requesting application supports Team Drives.", + "location": "query", + "type": "boolean" + } + }, + "path": "files/{fileId}", + "scopes": [ + "https://www.googleapis.com/auth/drive", + "https://www.googleapis.com/auth/drive.appdata", + "https://www.googleapis.com/auth/drive.file" + ] + }, + "emptyTrash": { + "description": "Permanently deletes all of the user's trashed files.", + "httpMethod": "DELETE", + "id": "drive.files.emptyTrash", + "path": "files/trash", + "scopes": [ + "https://www.googleapis.com/auth/drive" + ] + }, + "export": { + "description": "Exports a Google Doc to the requested MIME type and returns the exported content. Please note that the exported content is limited to 10MB.", + "httpMethod": "GET", + "id": "drive.files.export", + "parameterOrder": [ + "fileId", + "mimeType" + ], + "parameters": { + "fileId": { + "description": "The ID of the file.", + "location": "path", + "required": true, + "type": "string" + }, + "mimeType": { + "description": "The MIME type of the format requested for this export.", + "location": "query", + "required": true, + "type": "string" + } + }, + "path": "files/{fileId}/export", + "scopes": [ + "https://www.googleapis.com/auth/drive", + "https://www.googleapis.com/auth/drive.file", + "https://www.googleapis.com/auth/drive.readonly" + ], + "supportsMediaDownload": true + }, + "generateIds": { + "description": "Generates a set of file IDs which can be provided in insert requests.", + "httpMethod": "GET", + "id": "drive.files.generateIds", + "parameters": { + "maxResults": { + "default": "10", + "description": "Maximum number of IDs to return.", + "format": "int32", + "location": "query", + "maximum": "1000", + "minimum": "1", + "type": "integer" + }, + "space": { + "default": "drive", + "description": "The space in which the IDs can be used to create new files. Supported values are 'drive' and 'appDataFolder'.", + "location": "query", + "type": "string" + } + }, + "path": "files/generateIds", + "response": { + "$ref": "GeneratedIds" + }, + "scopes": [ + "https://www.googleapis.com/auth/drive", + "https://www.googleapis.com/auth/drive.appdata", + "https://www.googleapis.com/auth/drive.file" + ] + }, + "get": { + "description": "Gets a file's metadata by ID.", + "httpMethod": "GET", + "id": "drive.files.get", + "parameterOrder": [ + "fileId" + ], + "parameters": { + "acknowledgeAbuse": { + "default": "false", + "description": "Whether the user is acknowledging the risk of downloading known malware or other abusive files.", + "location": "query", + "type": "boolean" + }, + "fileId": { + "description": "The ID for the file in question.", + "location": "path", + "required": true, + "type": "string" + }, + "projection": { + "description": "This parameter is deprecated and has no function.", + "enum": [ + "BASIC", + "FULL" + ], + "enumDescriptions": [ + "Deprecated", + "Deprecated" + ], + "location": "query", + "type": "string" + }, + "revisionId": { + "description": "Specifies the Revision ID that should be downloaded. Ignored unless alt=media is specified.", + "location": "query", + "type": "string" + }, + "supportsTeamDrives": { + "default": "false", + "description": "Whether the requesting application supports Team Drives.", + "location": "query", + "type": "boolean" + }, + "updateViewedDate": { + "default": "false", + "description": "Deprecated: Use files.update with modifiedDateBehavior=noChange, updateViewedDate=true and an empty request body.", + "location": "query", + "type": "boolean" + } + }, + "path": "files/{fileId}", + "response": { + "$ref": "File" + }, + "scopes": [ + "https://www.googleapis.com/auth/drive", + "https://www.googleapis.com/auth/drive.appdata", + "https://www.googleapis.com/auth/drive.file", + "https://www.googleapis.com/auth/drive.metadata", + "https://www.googleapis.com/auth/drive.metadata.readonly", + "https://www.googleapis.com/auth/drive.photos.readonly", + "https://www.googleapis.com/auth/drive.readonly" + ], + "supportsMediaDownload": true, + "supportsSubscription": true, + "useMediaDownloadService": true + }, + "insert": { + "description": "Insert a new file.", + "httpMethod": "POST", + "id": "drive.files.insert", + "mediaUpload": { + "accept": [ + "*/*" + ], + "maxSize": "5120GB", + "protocols": { + "resumable": { + "multipart": true, + "path": "/resumable/upload/drive/v2/files" + }, + "simple": { + "multipart": true, + "path": "/upload/drive/v2/files" + } + } + }, + "parameters": { + "convert": { + "default": "false", + "description": "Whether to convert this file to the corresponding Google Docs format.", + "location": "query", + "type": "boolean" + }, + "ocr": { + "default": "false", + "description": "Whether to attempt OCR on .jpg, .png, .gif, or .pdf uploads.", + "location": "query", + "type": "boolean" + }, + "ocrLanguage": { + "description": "If ocr is true, hints at the language to use. Valid values are BCP 47 codes.", + "location": "query", + "type": "string" + }, + "pinned": { + "default": "false", + "description": "Whether to pin the head revision of the uploaded file. A file can have a maximum of 200 pinned revisions.", + "location": "query", + "type": "boolean" + }, + "supportsTeamDrives": { + "default": "false", + "description": "Whether the requesting application supports Team Drives.", + "location": "query", + "type": "boolean" + }, + "timedTextLanguage": { + "description": "The language of the timed text.", + "location": "query", + "type": "string" + }, + "timedTextTrackName": { + "description": "The timed text track name.", + "location": "query", + "type": "string" + }, + "useContentAsIndexableText": { + "default": "false", + "description": "Whether to use the content as indexable text.", + "location": "query", + "type": "boolean" + }, + "visibility": { + "default": "DEFAULT", + "description": "The visibility of the new file. This parameter is only relevant when convert=false.", + "enum": [ + "DEFAULT", + "PRIVATE" + ], + "enumDescriptions": [ + "The visibility of the new file is determined by the user's default visibility/sharing policies.", + "The new file will be visible to only the owner." + ], + "location": "query", + "type": "string" + } + }, + "path": "files", + "request": { + "$ref": "File" + }, + "response": { + "$ref": "File" + }, + "scopes": [ + "https://www.googleapis.com/auth/drive", + "https://www.googleapis.com/auth/drive.appdata", + "https://www.googleapis.com/auth/drive.apps.readonly", + "https://www.googleapis.com/auth/drive.file" + ], + "supportsMediaUpload": true, + "supportsSubscription": true + }, + "list": { + "description": "Lists the user's files.", + "httpMethod": "GET", + "id": "drive.files.list", + "parameters": { + "corpora": { + "description": "Comma-separated list of bodies of items (files/documents) to which the query applies. Supported bodies are 'default', 'domain', 'teamDrive' and 'allTeamDrives'. 'allTeamDrives' must be combined with 'default'; all other values must be used in isolation. Prefer 'default' or 'teamDrive' to 'allTeamDrives' for efficiency.", + "location": "query", + "type": "string" + }, + "corpus": { + "description": "The body of items (files/documents) to which the query applies. Deprecated: use 'corpora' instead.", + "enum": [ + "DEFAULT", + "DOMAIN" + ], + "enumDescriptions": [ + "The items that the user has accessed.", + "Items shared to the user's domain." + ], + "location": "query", + "type": "string" + }, + "includeTeamDriveItems": { + "default": "false", + "description": "Whether Team Drive items should be included in results.", + "location": "query", + "type": "boolean" + }, + "maxResults": { + "default": "100", + "description": "The maximum number of files to return per page. Partial or empty result pages are possible even before the end of the files list has been reached.", + "format": "int32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "A comma-separated list of sort keys. Valid keys are 'createdDate', 'folder', 'lastViewedByMeDate', 'modifiedByMeDate', 'modifiedDate', 'quotaBytesUsed', 'recency', 'sharedWithMeDate', 'starred', 'title', and 'title_natural'. Each key sorts ascending by default, but may be reversed with the 'desc' modifier. Example usage: ?orderBy=folder,modifiedDate desc,title. Please note that there is a current limitation for users with approximately one million files in which the requested sort order is ignored.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Page token for files.", + "location": "query", + "type": "string" + }, + "projection": { + "description": "This parameter is deprecated and has no function.", + "enum": [ + "BASIC", + "FULL" + ], + "enumDescriptions": [ + "Deprecated", + "Deprecated" + ], + "location": "query", + "type": "string" + }, + "q": { + "description": "Query string for searching files.", + "location": "query", + "type": "string" + }, + "spaces": { + "description": "A comma-separated list of spaces to query. Supported values are 'drive', 'appDataFolder' and 'photos'.", + "location": "query", + "type": "string" + }, + "supportsTeamDrives": { + "default": "false", + "description": "Whether the requesting application supports Team Drives.", + "location": "query", + "type": "boolean" + }, + "teamDriveId": { + "description": "ID of Team Drive to search.", + "location": "query", + "type": "string" + } + }, + "path": "files", + "response": { + "$ref": "FileList" + }, + "scopes": [ + "https://www.googleapis.com/auth/drive", + "https://www.googleapis.com/auth/drive.appdata", + "https://www.googleapis.com/auth/drive.apps.readonly", + "https://www.googleapis.com/auth/drive.file", + "https://www.googleapis.com/auth/drive.metadata", + "https://www.googleapis.com/auth/drive.metadata.readonly", + "https://www.googleapis.com/auth/drive.photos.readonly", + "https://www.googleapis.com/auth/drive.readonly" + ] + }, + "patch": { + "description": "Updates file metadata and/or content. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "drive.files.patch", + "parameterOrder": [ + "fileId" + ], + "parameters": { + "addParents": { + "description": "Comma-separated list of parent IDs to add.", + "location": "query", + "type": "string" + }, + "convert": { + "default": "false", + "description": "This parameter is deprecated and has no function.", + "location": "query", + "type": "boolean" + }, + "fileId": { + "description": "The ID of the file to update.", + "location": "path", + "required": true, + "type": "string" + }, + "modifiedDateBehavior": { + "description": "Determines the behavior in which modifiedDate is updated. This overrides setModifiedDate.", + "enum": [ + "fromBody", + "fromBodyIfNeeded", + "fromBodyOrNow", + "noChange", + "now", + "nowIfNeeded" + ], + "enumDescriptions": [ + "Set modifiedDate to the value provided in the body of the request. No change if no value was provided.", + "Set modifiedDate to the value provided in the body of the request depending on other contents of the update.", + "Set modifiedDate to the value provided in the body of the request, or to the current time if no value was provided.", + "Maintain the previous value of modifiedDate.", + "Set modifiedDate to the current time.", + "Set modifiedDate to the current time depending on contents of the update." + ], + "location": "query", + "type": "string" + }, + "newRevision": { + "default": "true", + "description": "Whether a blob upload should create a new revision. If false, the blob data in the current head revision is replaced. If true or not set, a new blob is created as head revision, and previous unpinned revisions are preserved for a short period of time. Pinned revisions are stored indefinitely, using additional storage quota, up to a maximum of 200 revisions. For details on how revisions are retained, see the Drive Help Center.", + "location": "query", + "type": "boolean" + }, + "ocr": { + "default": "false", + "description": "Whether to attempt OCR on .jpg, .png, .gif, or .pdf uploads.", + "location": "query", + "type": "boolean" + }, + "ocrLanguage": { + "description": "If ocr is true, hints at the language to use. Valid values are BCP 47 codes.", + "location": "query", + "type": "string" + }, + "pinned": { + "default": "false", + "description": "Whether to pin the new revision. A file can have a maximum of 200 pinned revisions.", + "location": "query", + "type": "boolean" + }, + "removeParents": { + "description": "Comma-separated list of parent IDs to remove.", + "location": "query", + "type": "string" + }, + "setModifiedDate": { + "default": "false", + "description": "Whether to set the modified date using the value supplied in the request body. Setting this field to true is equivalent to modifiedDateBehavior=fromBodyOrNow, and false is equivalent to modifiedDateBehavior=now. To prevent any changes to the modified date set modifiedDateBehavior=noChange.", + "location": "query", + "type": "boolean" + }, + "supportsTeamDrives": { + "default": "false", + "description": "Whether the requesting application supports Team Drives.", + "location": "query", + "type": "boolean" + }, + "timedTextLanguage": { + "description": "The language of the timed text.", + "location": "query", + "type": "string" + }, + "timedTextTrackName": { + "description": "The timed text track name.", + "location": "query", + "type": "string" + }, + "updateViewedDate": { + "default": "true", + "description": "Whether to update the view date after successfully updating the file.", + "location": "query", + "type": "boolean" + }, + "useContentAsIndexableText": { + "default": "false", + "description": "Whether to use the content as indexable text.", + "location": "query", + "type": "boolean" + } + }, + "path": "files/{fileId}", + "request": { + "$ref": "File" + }, + "response": { + "$ref": "File" + }, + "scopes": [ + "https://www.googleapis.com/auth/drive", + "https://www.googleapis.com/auth/drive.appdata", + "https://www.googleapis.com/auth/drive.apps.readonly", + "https://www.googleapis.com/auth/drive.file", + "https://www.googleapis.com/auth/drive.metadata", + "https://www.googleapis.com/auth/drive.scripts" + ] + }, + "touch": { + "description": "Set the file's updated time to the current server time.", + "httpMethod": "POST", + "id": "drive.files.touch", + "parameterOrder": [ + "fileId" + ], + "parameters": { + "fileId": { + "description": "The ID of the file to update.", + "location": "path", + "required": true, + "type": "string" + }, + "supportsTeamDrives": { + "default": "false", + "description": "Whether the requesting application supports Team Drives.", + "location": "query", + "type": "boolean" + } + }, + "path": "files/{fileId}/touch", + "response": { + "$ref": "File" + }, + "scopes": [ + "https://www.googleapis.com/auth/drive", + "https://www.googleapis.com/auth/drive.appdata", + "https://www.googleapis.com/auth/drive.apps.readonly", + "https://www.googleapis.com/auth/drive.file", + "https://www.googleapis.com/auth/drive.metadata" + ] + }, + "trash": { + "description": "Moves a file to the trash. The currently authenticated user must own the file or be an organizer on the parent for Team Drive files.", + "httpMethod": "POST", + "id": "drive.files.trash", + "parameterOrder": [ + "fileId" + ], + "parameters": { + "fileId": { + "description": "The ID of the file to trash.", + "location": "path", + "required": true, + "type": "string" + }, + "supportsTeamDrives": { + "default": "false", + "description": "Whether the requesting application supports Team Drives.", + "location": "query", + "type": "boolean" + } + }, + "path": "files/{fileId}/trash", + "response": { + "$ref": "File" + }, + "scopes": [ + "https://www.googleapis.com/auth/drive", + "https://www.googleapis.com/auth/drive.appdata", + "https://www.googleapis.com/auth/drive.apps.readonly", + "https://www.googleapis.com/auth/drive.file" + ] + }, + "untrash": { + "description": "Restores a file from the trash.", + "httpMethod": "POST", + "id": "drive.files.untrash", + "parameterOrder": [ + "fileId" + ], + "parameters": { + "fileId": { + "description": "The ID of the file to untrash.", + "location": "path", + "required": true, + "type": "string" + }, + "supportsTeamDrives": { + "default": "false", + "description": "Whether the requesting application supports Team Drives.", + "location": "query", + "type": "boolean" + } + }, + "path": "files/{fileId}/untrash", + "response": { + "$ref": "File" + }, + "scopes": [ + "https://www.googleapis.com/auth/drive", + "https://www.googleapis.com/auth/drive.appdata", + "https://www.googleapis.com/auth/drive.apps.readonly", + "https://www.googleapis.com/auth/drive.file" + ] + }, + "update": { + "description": "Updates file metadata and/or content.", + "httpMethod": "PUT", + "id": "drive.files.update", + "mediaUpload": { + "accept": [ + "*/*" + ], + "maxSize": "5120GB", + "protocols": { + "resumable": { + "multipart": true, + "path": "/resumable/upload/drive/v2/files/{fileId}" + }, + "simple": { + "multipart": true, + "path": "/upload/drive/v2/files/{fileId}" + } + } + }, + "parameterOrder": [ + "fileId" + ], + "parameters": { + "addParents": { + "description": "Comma-separated list of parent IDs to add.", + "location": "query", + "type": "string" + }, + "convert": { + "default": "false", + "description": "This parameter is deprecated and has no function.", + "location": "query", + "type": "boolean" + }, + "fileId": { + "description": "The ID of the file to update.", + "location": "path", + "required": true, + "type": "string" + }, + "modifiedDateBehavior": { + "description": "Determines the behavior in which modifiedDate is updated. This overrides setModifiedDate.", + "enum": [ + "fromBody", + "fromBodyIfNeeded", + "fromBodyOrNow", + "noChange", + "now", + "nowIfNeeded" + ], + "enumDescriptions": [ + "Set modifiedDate to the value provided in the body of the request. No change if no value was provided.", + "Set modifiedDate to the value provided in the body of the request depending on other contents of the update.", + "Set modifiedDate to the value provided in the body of the request, or to the current time if no value was provided.", + "Maintain the previous value of modifiedDate.", + "Set modifiedDate to the current time.", + "Set modifiedDate to the current time depending on contents of the update." + ], + "location": "query", + "type": "string" + }, + "newRevision": { + "default": "true", + "description": "Whether a blob upload should create a new revision. If false, the blob data in the current head revision is replaced. If true or not set, a new blob is created as head revision, and previous unpinned revisions are preserved for a short period of time. Pinned revisions are stored indefinitely, using additional storage quota, up to a maximum of 200 revisions. For details on how revisions are retained, see the Drive Help Center.", + "location": "query", + "type": "boolean" + }, + "ocr": { + "default": "false", + "description": "Whether to attempt OCR on .jpg, .png, .gif, or .pdf uploads.", + "location": "query", + "type": "boolean" + }, + "ocrLanguage": { + "description": "If ocr is true, hints at the language to use. Valid values are BCP 47 codes.", + "location": "query", + "type": "string" + }, + "pinned": { + "default": "false", + "description": "Whether to pin the new revision. A file can have a maximum of 200 pinned revisions.", + "location": "query", + "type": "boolean" + }, + "removeParents": { + "description": "Comma-separated list of parent IDs to remove.", + "location": "query", + "type": "string" + }, + "setModifiedDate": { + "default": "false", + "description": "Whether to set the modified date using the value supplied in the request body. Setting this field to true is equivalent to modifiedDateBehavior=fromBodyOrNow, and false is equivalent to modifiedDateBehavior=now. To prevent any changes to the modified date set modifiedDateBehavior=noChange.", + "location": "query", + "type": "boolean" + }, + "supportsTeamDrives": { + "default": "false", + "description": "Whether the requesting application supports Team Drives.", + "location": "query", + "type": "boolean" + }, + "timedTextLanguage": { + "description": "The language of the timed text.", + "location": "query", + "type": "string" + }, + "timedTextTrackName": { + "description": "The timed text track name.", + "location": "query", + "type": "string" + }, + "updateViewedDate": { + "default": "true", + "description": "Whether to update the view date after successfully updating the file.", + "location": "query", + "type": "boolean" + }, + "useContentAsIndexableText": { + "default": "false", + "description": "Whether to use the content as indexable text.", + "location": "query", + "type": "boolean" + } + }, + "path": "files/{fileId}", + "request": { + "$ref": "File" + }, + "response": { + "$ref": "File" + }, + "scopes": [ + "https://www.googleapis.com/auth/drive", + "https://www.googleapis.com/auth/drive.appdata", + "https://www.googleapis.com/auth/drive.apps.readonly", + "https://www.googleapis.com/auth/drive.file", + "https://www.googleapis.com/auth/drive.metadata", + "https://www.googleapis.com/auth/drive.scripts" + ], + "supportsMediaUpload": true + }, + "watch": { + "description": "Subscribe to changes on a file", + "httpMethod": "POST", + "id": "drive.files.watch", + "parameterOrder": [ + "fileId" + ], + "parameters": { + "acknowledgeAbuse": { + "default": "false", + "description": "Whether the user is acknowledging the risk of downloading known malware or other abusive files.", + "location": "query", + "type": "boolean" + }, + "fileId": { + "description": "The ID for the file in question.", + "location": "path", + "required": true, + "type": "string" + }, + "projection": { + "description": "This parameter is deprecated and has no function.", + "enum": [ + "BASIC", + "FULL" + ], + "enumDescriptions": [ + "Deprecated", + "Deprecated" + ], + "location": "query", + "type": "string" + }, + "revisionId": { + "description": "Specifies the Revision ID that should be downloaded. Ignored unless alt=media is specified.", + "location": "query", + "type": "string" + }, + "supportsTeamDrives": { + "default": "false", + "description": "Whether the requesting application supports Team Drives.", + "location": "query", + "type": "boolean" + }, + "updateViewedDate": { + "default": "false", + "description": "Deprecated: Use files.update with modifiedDateBehavior=noChange, updateViewedDate=true and an empty request body.", + "location": "query", + "type": "boolean" + } + }, + "path": "files/{fileId}/watch", + "request": { + "$ref": "Channel", + "parameterName": "resource" + }, + "response": { + "$ref": "Channel" + }, + "scopes": [ + "https://www.googleapis.com/auth/drive", + "https://www.googleapis.com/auth/drive.appdata", + "https://www.googleapis.com/auth/drive.file", + "https://www.googleapis.com/auth/drive.metadata", + "https://www.googleapis.com/auth/drive.metadata.readonly", + "https://www.googleapis.com/auth/drive.photos.readonly", + "https://www.googleapis.com/auth/drive.readonly" + ], + "supportsMediaDownload": true, + "supportsSubscription": true, + "useMediaDownloadService": true + } + } + }, + "parents": { + "methods": { + "delete": { + "description": "Removes a parent from a file.", + "httpMethod": "DELETE", + "id": "drive.parents.delete", + "parameterOrder": [ + "fileId", + "parentId" + ], + "parameters": { + "fileId": { + "description": "The ID of the file.", + "location": "path", + "required": true, + "type": "string" + }, + "parentId": { + "description": "The ID of the parent.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "files/{fileId}/parents/{parentId}", + "scopes": [ + "https://www.googleapis.com/auth/drive", + "https://www.googleapis.com/auth/drive.file" + ] + }, + "get": { + "description": "Gets a specific parent reference.", + "httpMethod": "GET", + "id": "drive.parents.get", + "parameterOrder": [ + "fileId", + "parentId" + ], + "parameters": { + "fileId": { + "description": "The ID of the file.", + "location": "path", + "required": true, + "type": "string" + }, + "parentId": { + "description": "The ID of the parent.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "files/{fileId}/parents/{parentId}", + "response": { + "$ref": "ParentReference" + }, + "scopes": [ + "https://www.googleapis.com/auth/drive", + "https://www.googleapis.com/auth/drive.appdata", + "https://www.googleapis.com/auth/drive.file", + "https://www.googleapis.com/auth/drive.metadata", + "https://www.googleapis.com/auth/drive.metadata.readonly", + "https://www.googleapis.com/auth/drive.photos.readonly", + "https://www.googleapis.com/auth/drive.readonly" + ] + }, + "insert": { + "description": "Adds a parent folder for a file.", + "httpMethod": "POST", + "id": "drive.parents.insert", + "parameterOrder": [ + "fileId" + ], + "parameters": { + "fileId": { + "description": "The ID of the file.", + "location": "path", + "required": true, + "type": "string" + }, + "supportsTeamDrives": { + "default": "false", + "description": "Whether the requesting application supports Team Drives.", + "location": "query", + "type": "boolean" + } + }, + "path": "files/{fileId}/parents", + "request": { + "$ref": "ParentReference" + }, + "response": { + "$ref": "ParentReference" + }, + "scopes": [ + "https://www.googleapis.com/auth/drive", + "https://www.googleapis.com/auth/drive.appdata", + "https://www.googleapis.com/auth/drive.file" + ] + }, + "list": { + "description": "Lists a file's parents.", + "httpMethod": "GET", + "id": "drive.parents.list", + "parameterOrder": [ + "fileId" + ], + "parameters": { + "fileId": { + "description": "The ID of the file.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "files/{fileId}/parents", + "response": { + "$ref": "ParentList" + }, + "scopes": [ + "https://www.googleapis.com/auth/drive", + "https://www.googleapis.com/auth/drive.appdata", + "https://www.googleapis.com/auth/drive.file", + "https://www.googleapis.com/auth/drive.metadata", + "https://www.googleapis.com/auth/drive.metadata.readonly", + "https://www.googleapis.com/auth/drive.photos.readonly", + "https://www.googleapis.com/auth/drive.readonly" + ] + } + } + }, + "permissions": { + "methods": { + "delete": { + "description": "Deletes a permission from a file or Team Drive.", + "httpMethod": "DELETE", + "id": "drive.permissions.delete", + "parameterOrder": [ + "fileId", + "permissionId" + ], + "parameters": { + "fileId": { + "description": "The ID for the file or Team Drive.", + "location": "path", + "required": true, + "type": "string" + }, + "permissionId": { + "description": "The ID for the permission.", + "location": "path", + "required": true, + "type": "string" + }, + "supportsTeamDrives": { + "default": "false", + "description": "Whether the requesting application supports Team Drives.", + "location": "query", + "type": "boolean" + }, + "useDomainAdminAccess": { + "default": "false", + "description": "Whether the request should be treated as if it was issued by a domain administrator; if set to true, then the requester will be granted access if they are an administrator of the domain to which the item belongs.", + "location": "query", + "type": "boolean" + } + }, + "path": "files/{fileId}/permissions/{permissionId}", + "scopes": [ + "https://www.googleapis.com/auth/drive", + "https://www.googleapis.com/auth/drive.file" + ] + }, + "get": { + "description": "Gets a permission by ID.", + "httpMethod": "GET", + "id": "drive.permissions.get", + "parameterOrder": [ + "fileId", + "permissionId" + ], + "parameters": { + "fileId": { + "description": "The ID for the file or Team Drive.", + "location": "path", + "required": true, + "type": "string" + }, + "permissionId": { + "description": "The ID for the permission.", + "location": "path", + "required": true, + "type": "string" + }, + "supportsTeamDrives": { + "default": "false", + "description": "Whether the requesting application supports Team Drives.", + "location": "query", + "type": "boolean" + }, + "useDomainAdminAccess": { + "default": "false", + "description": "Whether the request should be treated as if it was issued by a domain administrator; if set to true, then the requester will be granted access if they are an administrator of the domain to which the item belongs.", + "location": "query", + "type": "boolean" + } + }, + "path": "files/{fileId}/permissions/{permissionId}", + "response": { + "$ref": "Permission" + }, + "scopes": [ + "https://www.googleapis.com/auth/drive", + "https://www.googleapis.com/auth/drive.file", + "https://www.googleapis.com/auth/drive.metadata", + "https://www.googleapis.com/auth/drive.metadata.readonly", + "https://www.googleapis.com/auth/drive.photos.readonly", + "https://www.googleapis.com/auth/drive.readonly" + ] + }, + "getIdForEmail": { + "description": "Returns the permission ID for an email address.", + "httpMethod": "GET", + "id": "drive.permissions.getIdForEmail", + "parameterOrder": [ + "email" + ], + "parameters": { + "email": { + "description": "The email address for which to return a permission ID", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "permissionIds/{email}", + "response": { + "$ref": "PermissionId" + }, + "scopes": [ + "https://www.googleapis.com/auth/drive", + "https://www.googleapis.com/auth/drive.appdata", + "https://www.googleapis.com/auth/drive.apps.readonly", + "https://www.googleapis.com/auth/drive.file", + "https://www.googleapis.com/auth/drive.metadata", + "https://www.googleapis.com/auth/drive.metadata.readonly", + "https://www.googleapis.com/auth/drive.photos.readonly", + "https://www.googleapis.com/auth/drive.readonly" + ] + }, + "insert": { + "description": "Inserts a permission for a file or Team Drive.", + "httpMethod": "POST", + "id": "drive.permissions.insert", + "parameterOrder": [ + "fileId" + ], + "parameters": { + "emailMessage": { + "description": "A plain text custom message to include in notification emails.", + "location": "query", + "type": "string" + }, + "fileId": { + "description": "The ID for the file or Team Drive.", + "location": "path", + "required": true, + "type": "string" + }, + "sendNotificationEmails": { + "default": "true", + "description": "Whether to send notification emails when sharing to users or groups. This parameter is ignored and an email is sent if the role is owner.", + "location": "query", + "type": "boolean" + }, + "supportsTeamDrives": { + "default": "false", + "description": "Whether the requesting application supports Team Drives.", + "location": "query", + "type": "boolean" + }, + "useDomainAdminAccess": { + "default": "false", + "description": "Whether the request should be treated as if it was issued by a domain administrator; if set to true, then the requester will be granted access if they are an administrator of the domain to which the item belongs.", + "location": "query", + "type": "boolean" + } + }, + "path": "files/{fileId}/permissions", + "request": { + "$ref": "Permission" + }, + "response": { + "$ref": "Permission" + }, + "scopes": [ + "https://www.googleapis.com/auth/drive", + "https://www.googleapis.com/auth/drive.file" + ] + }, + "list": { + "description": "Lists a file's or Team Drive's permissions.", + "httpMethod": "GET", + "id": "drive.permissions.list", + "parameterOrder": [ + "fileId" + ], + "parameters": { + "fileId": { + "description": "The ID for the file or Team Drive.", + "location": "path", + "required": true, + "type": "string" + }, + "maxResults": { + "description": "The maximum number of permissions to return per page. When not set for files in a Team Drive, at most 100 results will be returned. When not set for files that are not in a Team Drive, the entire list will be returned.", + "format": "int32", + "location": "query", + "maximum": "100", + "minimum": "1", + "type": "integer" + }, + "pageToken": { + "description": "The token for continuing a previous list request on the next page. This should be set to the value of 'nextPageToken' from the previous response.", + "location": "query", + "type": "string" + }, + "supportsTeamDrives": { + "default": "false", + "description": "Whether the requesting application supports Team Drives.", + "location": "query", + "type": "boolean" + }, + "useDomainAdminAccess": { + "default": "false", + "description": "Whether the request should be treated as if it was issued by a domain administrator; if set to true, then the requester will be granted access if they are an administrator of the domain to which the item belongs.", + "location": "query", + "type": "boolean" + } + }, + "path": "files/{fileId}/permissions", + "response": { + "$ref": "PermissionList" + }, + "scopes": [ + "https://www.googleapis.com/auth/drive", + "https://www.googleapis.com/auth/drive.file", + "https://www.googleapis.com/auth/drive.metadata", + "https://www.googleapis.com/auth/drive.metadata.readonly", + "https://www.googleapis.com/auth/drive.photos.readonly", + "https://www.googleapis.com/auth/drive.readonly" + ] + }, + "patch": { + "description": "Updates a permission using patch semantics.", + "httpMethod": "PATCH", + "id": "drive.permissions.patch", + "parameterOrder": [ + "fileId", + "permissionId" + ], + "parameters": { + "fileId": { + "description": "The ID for the file or Team Drive.", + "location": "path", + "required": true, + "type": "string" + }, + "permissionId": { + "description": "The ID for the permission.", + "location": "path", + "required": true, + "type": "string" + }, + "removeExpiration": { + "default": "false", + "description": "Whether to remove the expiration date.", + "location": "query", + "type": "boolean" + }, + "supportsTeamDrives": { + "default": "false", + "description": "Whether the requesting application supports Team Drives.", + "location": "query", + "type": "boolean" + }, + "transferOwnership": { + "default": "false", + "description": "Whether changing a role to 'owner' downgrades the current owners to writers. Does nothing if the specified role is not 'owner'.", + "location": "query", + "type": "boolean" + }, + "useDomainAdminAccess": { + "default": "false", + "description": "Whether the request should be treated as if it was issued by a domain administrator; if set to true, then the requester will be granted access if they are an administrator of the domain to which the item belongs.", + "location": "query", + "type": "boolean" + } + }, + "path": "files/{fileId}/permissions/{permissionId}", + "request": { + "$ref": "Permission" + }, + "response": { + "$ref": "Permission" + }, + "scopes": [ + "https://www.googleapis.com/auth/drive", + "https://www.googleapis.com/auth/drive.file" + ] + }, + "update": { + "description": "Updates a permission.", + "httpMethod": "PUT", + "id": "drive.permissions.update", + "parameterOrder": [ + "fileId", + "permissionId" + ], + "parameters": { + "fileId": { + "description": "The ID for the file or Team Drive.", + "location": "path", + "required": true, + "type": "string" + }, + "permissionId": { + "description": "The ID for the permission.", + "location": "path", + "required": true, + "type": "string" + }, + "removeExpiration": { + "default": "false", + "description": "Whether to remove the expiration date.", + "location": "query", + "type": "boolean" + }, + "supportsTeamDrives": { + "default": "false", + "description": "Whether the requesting application supports Team Drives.", + "location": "query", + "type": "boolean" + }, + "transferOwnership": { + "default": "false", + "description": "Whether changing a role to 'owner' downgrades the current owners to writers. Does nothing if the specified role is not 'owner'.", + "location": "query", + "type": "boolean" + }, + "useDomainAdminAccess": { + "default": "false", + "description": "Whether the request should be treated as if it was issued by a domain administrator; if set to true, then the requester will be granted access if they are an administrator of the domain to which the item belongs.", + "location": "query", + "type": "boolean" + } + }, + "path": "files/{fileId}/permissions/{permissionId}", + "request": { + "$ref": "Permission" + }, + "response": { + "$ref": "Permission" + }, + "scopes": [ + "https://www.googleapis.com/auth/drive", + "https://www.googleapis.com/auth/drive.file" + ] + } + } + }, + "properties": { + "methods": { + "delete": { + "description": "Deletes a property.", + "httpMethod": "DELETE", + "id": "drive.properties.delete", + "parameterOrder": [ + "fileId", + "propertyKey" + ], + "parameters": { + "fileId": { + "description": "The ID of the file.", + "location": "path", + "required": true, + "type": "string" + }, + "propertyKey": { + "description": "The key of the property.", + "location": "path", + "required": true, + "type": "string" + }, + "visibility": { + "default": "private", + "description": "The visibility of the property.", + "location": "query", + "type": "string" + } + }, + "path": "files/{fileId}/properties/{propertyKey}", + "scopes": [ + "https://www.googleapis.com/auth/drive", + "https://www.googleapis.com/auth/drive.appdata", + "https://www.googleapis.com/auth/drive.file", + "https://www.googleapis.com/auth/drive.metadata" + ] + }, + "get": { + "description": "Gets a property by its key.", + "httpMethod": "GET", + "id": "drive.properties.get", + "parameterOrder": [ + "fileId", + "propertyKey" + ], + "parameters": { + "fileId": { + "description": "The ID of the file.", + "location": "path", + "required": true, + "type": "string" + }, + "propertyKey": { + "description": "The key of the property.", + "location": "path", + "required": true, + "type": "string" + }, + "visibility": { + "default": "private", + "description": "The visibility of the property.", + "location": "query", + "type": "string" + } + }, + "path": "files/{fileId}/properties/{propertyKey}", + "response": { + "$ref": "Property" + }, + "scopes": [ + "https://www.googleapis.com/auth/drive", + "https://www.googleapis.com/auth/drive.appdata", + "https://www.googleapis.com/auth/drive.file", + "https://www.googleapis.com/auth/drive.metadata", + "https://www.googleapis.com/auth/drive.metadata.readonly", + "https://www.googleapis.com/auth/drive.photos.readonly", + "https://www.googleapis.com/auth/drive.readonly" + ] + }, + "insert": { + "description": "Adds a property to a file, or updates it if it already exists.", + "httpMethod": "POST", + "id": "drive.properties.insert", + "parameterOrder": [ + "fileId" + ], + "parameters": { + "fileId": { + "description": "The ID of the file.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "files/{fileId}/properties", + "request": { + "$ref": "Property" + }, + "response": { + "$ref": "Property" + }, + "scopes": [ + "https://www.googleapis.com/auth/drive", + "https://www.googleapis.com/auth/drive.appdata", + "https://www.googleapis.com/auth/drive.file", + "https://www.googleapis.com/auth/drive.metadata" + ] + }, + "list": { + "description": "Lists a file's properties.", + "httpMethod": "GET", + "id": "drive.properties.list", + "parameterOrder": [ + "fileId" + ], + "parameters": { + "fileId": { + "description": "The ID of the file.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "files/{fileId}/properties", + "response": { + "$ref": "PropertyList" + }, + "scopes": [ + "https://www.googleapis.com/auth/drive", + "https://www.googleapis.com/auth/drive.appdata", + "https://www.googleapis.com/auth/drive.file", + "https://www.googleapis.com/auth/drive.metadata", + "https://www.googleapis.com/auth/drive.metadata.readonly", + "https://www.googleapis.com/auth/drive.photos.readonly", + "https://www.googleapis.com/auth/drive.readonly" + ] + }, + "patch": { + "description": "Updates a property, or adds it if it doesn't exist. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "drive.properties.patch", + "parameterOrder": [ + "fileId", + "propertyKey" + ], + "parameters": { + "fileId": { + "description": "The ID of the file.", + "location": "path", + "required": true, + "type": "string" + }, + "propertyKey": { + "description": "The key of the property.", + "location": "path", + "required": true, + "type": "string" + }, + "visibility": { + "default": "private", + "description": "The visibility of the property.", + "location": "query", + "type": "string" + } + }, + "path": "files/{fileId}/properties/{propertyKey}", + "request": { + "$ref": "Property" + }, + "response": { + "$ref": "Property" + }, + "scopes": [ + "https://www.googleapis.com/auth/drive", + "https://www.googleapis.com/auth/drive.appdata", + "https://www.googleapis.com/auth/drive.file", + "https://www.googleapis.com/auth/drive.metadata" + ] + }, + "update": { + "description": "Updates a property, or adds it if it doesn't exist.", + "httpMethod": "PUT", + "id": "drive.properties.update", + "parameterOrder": [ + "fileId", + "propertyKey" + ], + "parameters": { + "fileId": { + "description": "The ID of the file.", + "location": "path", + "required": true, + "type": "string" + }, + "propertyKey": { + "description": "The key of the property.", + "location": "path", + "required": true, + "type": "string" + }, + "visibility": { + "default": "private", + "description": "The visibility of the property.", + "location": "query", + "type": "string" + } + }, + "path": "files/{fileId}/properties/{propertyKey}", + "request": { + "$ref": "Property" + }, + "response": { + "$ref": "Property" + }, + "scopes": [ + "https://www.googleapis.com/auth/drive", + "https://www.googleapis.com/auth/drive.appdata", + "https://www.googleapis.com/auth/drive.file", + "https://www.googleapis.com/auth/drive.metadata" + ] + } + } + }, + "realtime": { + "methods": { + "get": { + "description": "Exports the contents of the Realtime API data model associated with this file as JSON.", + "httpMethod": "GET", + "id": "drive.realtime.get", + "parameterOrder": [ + "fileId" + ], + "parameters": { + "fileId": { + "description": "The ID of the file that the Realtime API data model is associated with.", + "location": "path", + "required": true, + "type": "string" + }, + "revision": { + "description": "The revision of the Realtime API data model to export. Revisions start at 1 (the initial empty data model) and are incremented with each change. If this parameter is excluded, the most recent data model will be returned.", + "format": "int32", + "location": "query", + "minimum": "1", + "type": "integer" + } + }, + "path": "files/{fileId}/realtime", + "scopes": [ + "https://www.googleapis.com/auth/drive", + "https://www.googleapis.com/auth/drive.file", + "https://www.googleapis.com/auth/drive.readonly" + ], + "supportsMediaDownload": true + }, + "update": { + "description": "Overwrites the Realtime API data model associated with this file with the provided JSON data model.", + "httpMethod": "PUT", + "id": "drive.realtime.update", + "mediaUpload": { + "accept": [ + "*/*" + ], + "maxSize": "10MB", + "protocols": { + "resumable": { + "multipart": true, + "path": "/resumable/upload/drive/v2/files/{fileId}/realtime" + }, + "simple": { + "multipart": true, + "path": "/upload/drive/v2/files/{fileId}/realtime" + } + } + }, + "parameterOrder": [ + "fileId" + ], + "parameters": { + "baseRevision": { + "description": "The revision of the model to diff the uploaded model against. If set, the uploaded model is diffed against the provided revision and those differences are merged with any changes made to the model after the provided revision. If not set, the uploaded model replaces the current model on the server.", + "location": "query", + "type": "string" + }, + "fileId": { + "description": "The ID of the file that the Realtime API data model is associated with.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "files/{fileId}/realtime", + "scopes": [ + "https://www.googleapis.com/auth/drive", + "https://www.googleapis.com/auth/drive.file" + ], + "supportsMediaUpload": true + } + } + }, + "replies": { + "methods": { + "delete": { + "description": "Deletes a reply.", + "httpMethod": "DELETE", + "id": "drive.replies.delete", + "parameterOrder": [ + "fileId", + "commentId", + "replyId" + ], + "parameters": { + "commentId": { + "description": "The ID of the comment.", + "location": "path", + "required": true, + "type": "string" + }, + "fileId": { + "description": "The ID of the file.", + "location": "path", + "required": true, + "type": "string" + }, + "replyId": { + "description": "The ID of the reply.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "files/{fileId}/comments/{commentId}/replies/{replyId}", + "scopes": [ + "https://www.googleapis.com/auth/drive", + "https://www.googleapis.com/auth/drive.file" + ] + }, + "get": { + "description": "Gets a reply.", + "httpMethod": "GET", + "id": "drive.replies.get", + "parameterOrder": [ + "fileId", + "commentId", + "replyId" + ], + "parameters": { + "commentId": { + "description": "The ID of the comment.", + "location": "path", + "required": true, + "type": "string" + }, + "fileId": { + "description": "The ID of the file.", + "location": "path", + "required": true, + "type": "string" + }, + "includeDeleted": { + "default": "false", + "description": "If set, this will succeed when retrieving a deleted reply.", + "location": "query", + "type": "boolean" + }, + "replyId": { + "description": "The ID of the reply.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "files/{fileId}/comments/{commentId}/replies/{replyId}", + "response": { + "$ref": "CommentReply" + }, + "scopes": [ + "https://www.googleapis.com/auth/drive", + "https://www.googleapis.com/auth/drive.file", + "https://www.googleapis.com/auth/drive.readonly" + ] + }, + "insert": { + "description": "Creates a new reply to the given comment.", + "httpMethod": "POST", + "id": "drive.replies.insert", + "parameterOrder": [ + "fileId", + "commentId" + ], + "parameters": { + "commentId": { + "description": "The ID of the comment.", + "location": "path", + "required": true, + "type": "string" + }, + "fileId": { + "description": "The ID of the file.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "files/{fileId}/comments/{commentId}/replies", + "request": { + "$ref": "CommentReply" + }, + "response": { + "$ref": "CommentReply" + }, + "scopes": [ + "https://www.googleapis.com/auth/drive", + "https://www.googleapis.com/auth/drive.file" + ] + }, + "list": { + "description": "Lists all of the replies to a comment.", + "httpMethod": "GET", + "id": "drive.replies.list", + "parameterOrder": [ + "fileId", + "commentId" + ], + "parameters": { + "commentId": { + "description": "The ID of the comment.", + "location": "path", + "required": true, + "type": "string" + }, + "fileId": { + "description": "The ID of the file.", + "location": "path", + "required": true, + "type": "string" + }, + "includeDeleted": { + "default": "false", + "description": "If set, all replies, including deleted replies (with content stripped) will be returned.", + "location": "query", + "type": "boolean" + }, + "maxResults": { + "default": "20", + "description": "The maximum number of replies to include in the response, used for paging.", + "format": "int32", + "location": "query", + "maximum": "100", + "minimum": "0", + "type": "integer" + }, + "pageToken": { + "description": "The continuation token, used to page through large result sets. To get the next page of results, set this parameter to the value of \"nextPageToken\" from the previous response.", + "location": "query", + "type": "string" + } + }, + "path": "files/{fileId}/comments/{commentId}/replies", + "response": { + "$ref": "CommentReplyList" + }, + "scopes": [ + "https://www.googleapis.com/auth/drive", + "https://www.googleapis.com/auth/drive.file", + "https://www.googleapis.com/auth/drive.readonly" + ] + }, + "patch": { + "description": "Updates an existing reply. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "drive.replies.patch", + "parameterOrder": [ + "fileId", + "commentId", + "replyId" + ], + "parameters": { + "commentId": { + "description": "The ID of the comment.", + "location": "path", + "required": true, + "type": "string" + }, + "fileId": { + "description": "The ID of the file.", + "location": "path", + "required": true, + "type": "string" + }, + "replyId": { + "description": "The ID of the reply.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "files/{fileId}/comments/{commentId}/replies/{replyId}", + "request": { + "$ref": "CommentReply" + }, + "response": { + "$ref": "CommentReply" + }, + "scopes": [ + "https://www.googleapis.com/auth/drive", + "https://www.googleapis.com/auth/drive.file" + ] + }, + "update": { + "description": "Updates an existing reply.", + "httpMethod": "PUT", + "id": "drive.replies.update", + "parameterOrder": [ + "fileId", + "commentId", + "replyId" + ], + "parameters": { + "commentId": { + "description": "The ID of the comment.", + "location": "path", + "required": true, + "type": "string" + }, + "fileId": { + "description": "The ID of the file.", + "location": "path", + "required": true, + "type": "string" + }, + "replyId": { + "description": "The ID of the reply.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "files/{fileId}/comments/{commentId}/replies/{replyId}", + "request": { + "$ref": "CommentReply" + }, + "response": { + "$ref": "CommentReply" + }, + "scopes": [ + "https://www.googleapis.com/auth/drive", + "https://www.googleapis.com/auth/drive.file" + ] + } + } + }, + "revisions": { + "methods": { + "delete": { + "description": "Removes a revision.", + "httpMethod": "DELETE", + "id": "drive.revisions.delete", + "parameterOrder": [ + "fileId", + "revisionId" + ], + "parameters": { + "fileId": { + "description": "The ID of the file.", + "location": "path", + "required": true, + "type": "string" + }, + "revisionId": { + "description": "The ID of the revision.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "files/{fileId}/revisions/{revisionId}", + "scopes": [ + "https://www.googleapis.com/auth/drive", + "https://www.googleapis.com/auth/drive.appdata", + "https://www.googleapis.com/auth/drive.file" + ] + }, + "get": { + "description": "Gets a specific revision.", + "httpMethod": "GET", + "id": "drive.revisions.get", + "parameterOrder": [ + "fileId", + "revisionId" + ], + "parameters": { + "fileId": { + "description": "The ID of the file.", + "location": "path", + "required": true, + "type": "string" + }, + "revisionId": { + "description": "The ID of the revision.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "files/{fileId}/revisions/{revisionId}", + "response": { + "$ref": "Revision" + }, + "scopes": [ + "https://www.googleapis.com/auth/drive", + "https://www.googleapis.com/auth/drive.appdata", + "https://www.googleapis.com/auth/drive.file", + "https://www.googleapis.com/auth/drive.metadata", + "https://www.googleapis.com/auth/drive.metadata.readonly", + "https://www.googleapis.com/auth/drive.photos.readonly", + "https://www.googleapis.com/auth/drive.readonly" + ] + }, + "list": { + "description": "Lists a file's revisions.", + "httpMethod": "GET", + "id": "drive.revisions.list", + "parameterOrder": [ + "fileId" + ], + "parameters": { + "fileId": { + "description": "The ID of the file.", + "location": "path", + "required": true, + "type": "string" + }, + "maxResults": { + "default": "200", + "description": "Maximum number of revisions to return.", + "format": "int32", + "location": "query", + "maximum": "1000", + "minimum": "1", + "type": "integer" + }, + "pageToken": { + "description": "Page token for revisions. To get the next page of results, set this parameter to the value of \"nextPageToken\" from the previous response.", + "location": "query", + "type": "string" + } + }, + "path": "files/{fileId}/revisions", + "response": { + "$ref": "RevisionList" + }, + "scopes": [ + "https://www.googleapis.com/auth/drive", + "https://www.googleapis.com/auth/drive.appdata", + "https://www.googleapis.com/auth/drive.file", + "https://www.googleapis.com/auth/drive.metadata", + "https://www.googleapis.com/auth/drive.metadata.readonly", + "https://www.googleapis.com/auth/drive.photos.readonly", + "https://www.googleapis.com/auth/drive.readonly" + ] + }, + "patch": { + "description": "Updates a revision. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "drive.revisions.patch", + "parameterOrder": [ + "fileId", + "revisionId" + ], + "parameters": { + "fileId": { + "description": "The ID for the file.", + "location": "path", + "required": true, + "type": "string" + }, + "revisionId": { + "description": "The ID for the revision.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "files/{fileId}/revisions/{revisionId}", + "request": { + "$ref": "Revision" + }, + "response": { + "$ref": "Revision" + }, + "scopes": [ + "https://www.googleapis.com/auth/drive", + "https://www.googleapis.com/auth/drive.appdata", + "https://www.googleapis.com/auth/drive.file" + ] + }, + "update": { + "description": "Updates a revision.", + "httpMethod": "PUT", + "id": "drive.revisions.update", + "parameterOrder": [ + "fileId", + "revisionId" + ], + "parameters": { + "fileId": { + "description": "The ID for the file.", + "location": "path", + "required": true, + "type": "string" + }, + "revisionId": { + "description": "The ID for the revision.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "files/{fileId}/revisions/{revisionId}", + "request": { + "$ref": "Revision" + }, + "response": { + "$ref": "Revision" + }, + "scopes": [ + "https://www.googleapis.com/auth/drive", + "https://www.googleapis.com/auth/drive.appdata", + "https://www.googleapis.com/auth/drive.file" + ] + } + } + }, + "teamdrives": { + "methods": { + "delete": { + "description": "Permanently deletes a Team Drive for which the user is an organizer. The Team Drive cannot contain any untrashed items.", + "httpMethod": "DELETE", + "id": "drive.teamdrives.delete", + "parameterOrder": [ + "teamDriveId" + ], + "parameters": { + "teamDriveId": { + "description": "The ID of the Team Drive", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "teamdrives/{teamDriveId}", + "scopes": [ + "https://www.googleapis.com/auth/drive" + ] + }, + "get": { + "description": "Gets a Team Drive's metadata by ID.", + "httpMethod": "GET", + "id": "drive.teamdrives.get", + "parameterOrder": [ + "teamDriveId" + ], + "parameters": { + "teamDriveId": { + "description": "The ID of the Team Drive", + "location": "path", + "required": true, + "type": "string" + }, + "useDomainAdminAccess": { + "default": "false", + "description": "Whether the request should be treated as if it was issued by a domain administrator; if set to true, then the requester will be granted access if they are an administrator of the domain to which the Team Drive belongs.", + "location": "query", + "type": "boolean" + } + }, + "path": "teamdrives/{teamDriveId}", + "response": { + "$ref": "TeamDrive" + }, + "scopes": [ + "https://www.googleapis.com/auth/drive", + "https://www.googleapis.com/auth/drive.readonly" + ] + }, + "insert": { + "description": "Creates a new Team Drive.", + "httpMethod": "POST", + "id": "drive.teamdrives.insert", + "parameterOrder": [ + "requestId" + ], + "parameters": { + "requestId": { + "description": "An ID, such as a random UUID, which uniquely identifies this user's request for idempotent creation of a Team Drive. A repeated request by the same user and with the same request ID will avoid creating duplicates by attempting to create the same Team Drive. If the Team Drive already exists a 409 error will be returned.", + "location": "query", + "required": true, + "type": "string" + } + }, + "path": "teamdrives", + "request": { + "$ref": "TeamDrive" + }, + "response": { + "$ref": "TeamDrive" + }, + "scopes": [ + "https://www.googleapis.com/auth/drive" + ] + }, + "list": { + "description": "Lists the user's Team Drives.", + "httpMethod": "GET", + "id": "drive.teamdrives.list", + "parameters": { + "maxResults": { + "default": "10", + "description": "Maximum number of Team Drives to return.", + "format": "int32", + "location": "query", + "maximum": "100", + "minimum": "1", + "type": "integer" + }, + "pageToken": { + "description": "Page token for Team Drives.", + "location": "query", + "type": "string" + }, + "q": { + "description": "Query string for searching Team Drives.", + "location": "query", + "type": "string" + }, + "useDomainAdminAccess": { + "default": "false", + "description": "Whether the request should be treated as if it was issued by a domain administrator; if set to true, then all Team Drives of the domain in which the requester is an administrator are returned.", + "location": "query", + "type": "boolean" + } + }, + "path": "teamdrives", + "response": { + "$ref": "TeamDriveList" + }, + "scopes": [ + "https://www.googleapis.com/auth/drive", + "https://www.googleapis.com/auth/drive.readonly" + ] + }, + "update": { + "description": "Updates a Team Drive's metadata", + "httpMethod": "PUT", + "id": "drive.teamdrives.update", + "parameterOrder": [ + "teamDriveId" + ], + "parameters": { + "teamDriveId": { + "description": "The ID of the Team Drive", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "teamdrives/{teamDriveId}", + "request": { + "$ref": "TeamDrive" + }, + "response": { + "$ref": "TeamDrive" + }, + "scopes": [ + "https://www.googleapis.com/auth/drive" + ] + } + } } - } }, - "Revision": { - "id": "Revision", - "type": "object", - "description": "A revision of a file.", - "properties": { - "downloadUrl": { - "type": "string", - "description": "Short term download URL for the file. This will only be populated on files with content stored in Drive." + "revision": "20180209", + "rootUrl": "https://www.googleapis.com/", + "schemas": { + "About": { + "description": "An item with user information and settings.", + "id": "About", + "properties": { + "additionalRoleInfo": { + "description": "Information about supported additional roles per file type. The most specific type takes precedence.", + "items": { + "properties": { + "roleSets": { + "description": "The supported additional roles per primary role.", + "items": { + "properties": { + "additionalRoles": { + "description": "The supported additional roles with the primary role.", + "items": { + "type": "string" + }, + "type": "array" + }, + "primaryRole": { + "description": "A primary permission role.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "type": { + "description": "The content type that this additional role info applies to.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "canCreateTeamDrives": { + "description": "Whether the user can create Team Drives.", + "type": "boolean" + }, + "domainSharingPolicy": { + "description": "The domain sharing policy for the current user. Possible values are: \n- allowed \n- allowedWithWarning \n- incomingOnly \n- disallowed", + "type": "string" + }, + "etag": { + "description": "The ETag of the item.", + "type": "string" + }, + "exportFormats": { + "description": "The allowable export formats.", + "items": { + "properties": { + "source": { + "description": "The content type to convert from.", + "type": "string" + }, + "targets": { + "description": "The possible content types to convert to.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "type": "array" + }, + "features": { + "description": "List of additional features enabled on this account.", + "items": { + "properties": { + "featureName": { + "description": "The name of the feature.", + "type": "string" + }, + "featureRate": { + "description": "The request limit rate for this feature, in queries per second.", + "format": "double", + "type": "number" + } + }, + "type": "object" + }, + "type": "array" + }, + "folderColorPalette": { + "description": "The palette of allowable folder colors as RGB hex strings.", + "items": { + "type": "string" + }, + "type": "array" + }, + "importFormats": { + "description": "The allowable import formats.", + "items": { + "properties": { + "source": { + "description": "The imported file's content type to convert from.", + "type": "string" + }, + "targets": { + "description": "The possible content types to convert to.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "type": "array" + }, + "isCurrentAppInstalled": { + "description": "A boolean indicating whether the authenticated app is installed by the authenticated user.", + "type": "boolean" + }, + "kind": { + "default": "drive#about", + "description": "This is always drive#about.", + "type": "string" + }, + "languageCode": { + "description": "The user's language or locale code, as defined by BCP 47, with some extensions from Unicode's LDML format (http://www.unicode.org/reports/tr35/).", + "type": "string" + }, + "largestChangeId": { + "description": "The largest change id.", + "format": "int64", + "type": "string" + }, + "maxUploadSizes": { + "description": "List of max upload sizes for each file type. The most specific type takes precedence.", + "items": { + "properties": { + "size": { + "description": "The max upload size for this type.", + "format": "int64", + "type": "string" + }, + "type": { + "description": "The file type.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "name": { + "description": "The name of the current user.", + "type": "string" + }, + "permissionId": { + "description": "The current user's ID as visible in the permissions collection.", + "type": "string" + }, + "quotaBytesByService": { + "description": "The amount of storage quota used by different Google services.", + "items": { + "properties": { + "bytesUsed": { + "description": "The storage quota bytes used by the service.", + "format": "int64", + "type": "string" + }, + "serviceName": { + "description": "The service's name, e.g. DRIVE, GMAIL, or PHOTOS.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "quotaBytesTotal": { + "description": "The total number of quota bytes.", + "format": "int64", + "type": "string" + }, + "quotaBytesUsed": { + "description": "The number of quota bytes used by Google Drive.", + "format": "int64", + "type": "string" + }, + "quotaBytesUsedAggregate": { + "description": "The number of quota bytes used by all Google apps (Drive, Picasa, etc.).", + "format": "int64", + "type": "string" + }, + "quotaBytesUsedInTrash": { + "description": "The number of quota bytes used by trashed items.", + "format": "int64", + "type": "string" + }, + "quotaType": { + "description": "The type of the user's storage quota. Possible values are: \n- LIMITED \n- UNLIMITED", + "type": "string" + }, + "remainingChangeIds": { + "description": "The number of remaining change ids, limited to no more than 2500.", + "format": "int64", + "type": "string" + }, + "rootFolderId": { + "description": "The id of the root folder.", + "type": "string" + }, + "selfLink": { + "description": "A link back to this item.", + "type": "string" + }, + "teamDriveThemes": { + "description": "A list of themes that are supported for Team Drives.", + "items": { + "properties": { + "backgroundImageLink": { + "description": "A link to this Team Drive theme's background image.", + "type": "string" + }, + "colorRgb": { + "description": "The color of this Team Drive theme as an RGB hex string.", + "type": "string" + }, + "id": { + "description": "The ID of the theme.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "user": { + "$ref": "User", + "description": "The authenticated user." + } + }, + "type": "object" }, - "etag": { - "type": "string", - "description": "The ETag of the revision." + "App": { + "description": "The apps resource provides a list of the apps that a user has installed, with information about each app's supported MIME types, file extensions, and other details.", + "id": "App", + "properties": { + "authorized": { + "description": "Whether the app is authorized to access data on the user's Drive.", + "type": "boolean" + }, + "createInFolderTemplate": { + "description": "The template url to create a new file with this app in a given folder. The template will contain {folderId} to be replaced by the folder to create the new file in.", + "type": "string" + }, + "createUrl": { + "description": "The url to create a new file with this app.", + "type": "string" + }, + "hasDriveWideScope": { + "description": "Whether the app has drive-wide scope. An app with drive-wide scope can access all files in the user's drive.", + "type": "boolean" + }, + "icons": { + "description": "The various icons for the app.", + "items": { + "properties": { + "category": { + "description": "Category of the icon. Allowed values are: \n- application - icon for the application \n- document - icon for a file associated with the app \n- documentShared - icon for a shared file associated with the app", + "type": "string" + }, + "iconUrl": { + "description": "URL for the icon.", + "type": "string" + }, + "size": { + "description": "Size of the icon. Represented as the maximum of the width and height.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "type": "array" + }, + "id": { + "description": "The ID of the app.", + "type": "string" + }, + "installed": { + "description": "Whether the app is installed.", + "type": "boolean" + }, + "kind": { + "default": "drive#app", + "description": "This is always drive#app.", + "type": "string" + }, + "longDescription": { + "description": "A long description of the app.", + "type": "string" + }, + "name": { + "description": "The name of the app.", + "type": "string" + }, + "objectType": { + "description": "The type of object this app creates (e.g. Chart). If empty, the app name should be used instead.", + "type": "string" + }, + "openUrlTemplate": { + "description": "The template url for opening files with this app. The template will contain {ids} and/or {exportIds} to be replaced by the actual file ids. See Open Files for the full documentation.", + "type": "string" + }, + "primaryFileExtensions": { + "description": "The list of primary file extensions.", + "items": { + "type": "string" + }, + "type": "array" + }, + "primaryMimeTypes": { + "description": "The list of primary mime types.", + "items": { + "type": "string" + }, + "type": "array" + }, + "productId": { + "description": "The ID of the product listing for this app.", + "type": "string" + }, + "productUrl": { + "description": "A link to the product listing for this app.", + "type": "string" + }, + "secondaryFileExtensions": { + "description": "The list of secondary file extensions.", + "items": { + "type": "string" + }, + "type": "array" + }, + "secondaryMimeTypes": { + "description": "The list of secondary mime types.", + "items": { + "type": "string" + }, + "type": "array" + }, + "shortDescription": { + "description": "A short description of the app.", + "type": "string" + }, + "supportsCreate": { + "description": "Whether this app supports creating new objects.", + "type": "boolean" + }, + "supportsImport": { + "description": "Whether this app supports importing Google Docs.", + "type": "boolean" + }, + "supportsMultiOpen": { + "description": "Whether this app supports opening more than one file.", + "type": "boolean" + }, + "supportsOfflineCreate": { + "description": "Whether this app supports creating new files when offline.", + "type": "boolean" + }, + "useByDefault": { + "description": "Whether the app is selected as the default handler for the types it supports.", + "type": "boolean" + } + }, + "type": "object" }, - "exportLinks": { - "type": "object", - "description": "Links for exporting Google Docs to specific formats.", - "additionalProperties": { - "type": "string", - "description": "A mapping from export format to URL" - } + "AppList": { + "description": "A list of third-party applications which the user has installed or given access to Google Drive.", + "id": "AppList", + "properties": { + "defaultAppIds": { + "description": "List of app IDs that the user has specified to use by default. The list is in reverse-priority order (lowest to highest).", + "items": { + "type": "string" + }, + "type": "array" + }, + "etag": { + "description": "The ETag of the list.", + "type": "string" + }, + "items": { + "description": "The list of apps.", + "items": { + "$ref": "App" + }, + "type": "array" + }, + "kind": { + "default": "drive#appList", + "description": "This is always drive#appList.", + "type": "string" + }, + "selfLink": { + "description": "A link back to this list.", + "type": "string" + } + }, + "type": "object" }, - "fileSize": { - "type": "string", - "description": "The size of the revision in bytes. This will only be populated on files with content stored in Drive.", - "format": "int64" + "Change": { + "description": "Representation of a change to a file or Team Drive.", + "id": "Change", + "properties": { + "deleted": { + "description": "Whether the file or Team Drive has been removed from this list of changes, for example by deletion or loss of access.", + "type": "boolean" + }, + "file": { + "$ref": "File", + "description": "The updated state of the file. Present if the type is file and the file has not been removed from this list of changes." + }, + "fileId": { + "description": "The ID of the file associated with this change.", + "type": "string" + }, + "id": { + "description": "The ID of the change.", + "format": "int64", + "type": "string" + }, + "kind": { + "default": "drive#change", + "description": "This is always drive#change.", + "type": "string" + }, + "modificationDate": { + "description": "The time of this modification.", + "format": "date-time", + "type": "string" + }, + "selfLink": { + "description": "A link back to this change.", + "type": "string" + }, + "teamDrive": { + "$ref": "TeamDrive", + "description": "The updated state of the Team Drive. Present if the type is teamDrive, the user is still a member of the Team Drive, and the Team Drive has not been deleted." + }, + "teamDriveId": { + "description": "The ID of the Team Drive associated with this change.", + "type": "string" + }, + "type": { + "description": "The type of the change. Possible values are file and teamDrive.", + "type": "string" + } + }, + "type": "object" }, - "id": { - "type": "string", - "description": "The ID of the revision." + "ChangeList": { + "description": "A list of changes for a user.", + "id": "ChangeList", + "properties": { + "etag": { + "description": "The ETag of the list.", + "type": "string" + }, + "items": { + "description": "The list of changes. If nextPageToken is populated, then this list may be incomplete and an additional page of results should be fetched.", + "items": { + "$ref": "Change" + }, + "type": "array" + }, + "kind": { + "default": "drive#changeList", + "description": "This is always drive#changeList.", + "type": "string" + }, + "largestChangeId": { + "description": "The current largest change ID.", + "format": "int64", + "type": "string" + }, + "newStartPageToken": { + "description": "The starting page token for future changes. This will be present only if the end of the current changes list has been reached.", + "type": "string" + }, + "nextLink": { + "description": "A link to the next page of changes.", + "type": "string" + }, + "nextPageToken": { + "description": "The page token for the next page of changes. This will be absent if the end of the changes list has been reached. If the token is rejected for any reason, it should be discarded, and pagination should be restarted from the first page of results.", + "type": "string" + }, + "selfLink": { + "description": "A link back to this list.", + "type": "string" + } + }, + "type": "object" }, - "kind": { - "type": "string", - "description": "This is always drive#revision.", - "default": "drive#revision" + "Channel": { + "description": "An notification channel used to watch for resource changes.", + "id": "Channel", + "properties": { + "address": { + "description": "The address where notifications are delivered for this channel.", + "type": "string" + }, + "expiration": { + "description": "Date and time of notification channel expiration, expressed as a Unix timestamp, in milliseconds. Optional.", + "format": "int64", + "type": "string" + }, + "id": { + "description": "A UUID or similar unique string that identifies this channel.", + "type": "string" + }, + "kind": { + "default": "api#channel", + "description": "Identifies this as a notification channel used to watch for changes to a resource. Value: the fixed string \"api#channel\".", + "type": "string" + }, + "params": { + "additionalProperties": { + "description": "Declares a new parameter by name.", + "type": "string" + }, + "description": "Additional parameters controlling delivery channel behavior. Optional.", + "type": "object" + }, + "payload": { + "description": "A Boolean value to indicate whether payload is wanted. Optional.", + "type": "boolean" + }, + "resourceId": { + "description": "An opaque ID that identifies the resource being watched on this channel. Stable across different API versions.", + "type": "string" + }, + "resourceUri": { + "description": "A version-specific identifier for the watched resource.", + "type": "string" + }, + "token": { + "description": "An arbitrary string delivered to the target address with each notification delivered over this channel. Optional.", + "type": "string" + }, + "type": { + "description": "The type of delivery mechanism used for this channel.", + "type": "string" + } + }, + "type": "object" }, - "lastModifyingUser": { - "$ref": "User", - "description": "The last user to modify this revision." + "ChildList": { + "description": "A list of children of a file.", + "id": "ChildList", + "properties": { + "etag": { + "description": "The ETag of the list.", + "type": "string" + }, + "items": { + "description": "The list of children. If nextPageToken is populated, then this list may be incomplete and an additional page of results should be fetched.", + "items": { + "$ref": "ChildReference" + }, + "type": "array" + }, + "kind": { + "default": "drive#childList", + "description": "This is always drive#childList.", + "type": "string" + }, + "nextLink": { + "description": "A link to the next page of children.", + "type": "string" + }, + "nextPageToken": { + "description": "The page token for the next page of children. This will be absent if the end of the children list has been reached. If the token is rejected for any reason, it should be discarded, and pagination should be restarted from the first page of results.", + "type": "string" + }, + "selfLink": { + "description": "A link back to this list.", + "type": "string" + } + }, + "type": "object" }, - "lastModifyingUserName": { - "type": "string", - "description": "Name of the last user to modify this revision." + "ChildReference": { + "description": "A reference to a folder's child.", + "id": "ChildReference", + "properties": { + "childLink": { + "description": "A link to the child.", + "type": "string" + }, + "id": { + "annotations": { + "required": [ + "drive.children.insert" + ] + }, + "description": "The ID of the child.", + "type": "string" + }, + "kind": { + "default": "drive#childReference", + "description": "This is always drive#childReference.", + "type": "string" + }, + "selfLink": { + "description": "A link back to this reference.", + "type": "string" + } + }, + "type": "object" }, - "md5Checksum": { - "type": "string", - "description": "An MD5 checksum for the content of this revision. This will only be populated on files with content stored in Drive." + "Comment": { + "description": "A comment on a file in Google Drive.", + "id": "Comment", + "properties": { + "anchor": { + "description": "A region of the document represented as a JSON string. See anchor documentation for details on how to define and interpret anchor properties.", + "type": "string" + }, + "author": { + "$ref": "User", + "description": "The user who wrote this comment." + }, + "commentId": { + "description": "The ID of the comment.", + "type": "string" + }, + "content": { + "annotations": { + "required": [ + "drive.comments.insert", + "drive.comments.patch", + "drive.comments.update" + ] + }, + "description": "The plain text content used to create this comment. This is not HTML safe and should only be used as a starting point to make edits to a comment's content.", + "type": "string" + }, + "context": { + "description": "The context of the file which is being commented on.", + "properties": { + "type": { + "description": "The MIME type of the context snippet.", + "type": "string" + }, + "value": { + "description": "Data representation of the segment of the file being commented on. In the case of a text file for example, this would be the actual text that the comment is about.", + "type": "string" + } + }, + "type": "object" + }, + "createdDate": { + "description": "The date when this comment was first created.", + "format": "date-time", + "type": "string" + }, + "deleted": { + "description": "Whether this comment has been deleted. If a comment has been deleted the content will be cleared and this will only represent a comment that once existed.", + "type": "boolean" + }, + "fileId": { + "description": "The file which this comment is addressing.", + "type": "string" + }, + "fileTitle": { + "description": "The title of the file which this comment is addressing.", + "type": "string" + }, + "htmlContent": { + "description": "HTML formatted content for this comment.", + "type": "string" + }, + "kind": { + "default": "drive#comment", + "description": "This is always drive#comment.", + "type": "string" + }, + "modifiedDate": { + "description": "The date when this comment or any of its replies were last modified.", + "format": "date-time", + "type": "string" + }, + "replies": { + "description": "Replies to this post.", + "items": { + "$ref": "CommentReply" + }, + "type": "array" + }, + "selfLink": { + "description": "A link back to this comment.", + "type": "string" + }, + "status": { + "description": "The status of this comment. Status can be changed by posting a reply to a comment with the desired status. \n- \"open\" - The comment is still open. \n- \"resolved\" - The comment has been resolved by one of its replies.", + "type": "string" + } + }, + "type": "object" }, - "mimeType": { - "type": "string", - "description": "The MIME type of the revision." + "CommentList": { + "description": "A list of comments on a file in Google Drive.", + "id": "CommentList", + "properties": { + "items": { + "description": "The list of comments. If nextPageToken is populated, then this list may be incomplete and an additional page of results should be fetched.", + "items": { + "$ref": "Comment" + }, + "type": "array" + }, + "kind": { + "default": "drive#commentList", + "description": "This is always drive#commentList.", + "type": "string" + }, + "nextLink": { + "description": "A link to the next page of comments.", + "type": "string" + }, + "nextPageToken": { + "description": "The page token for the next page of comments. This will be absent if the end of the comments list has been reached. If the token is rejected for any reason, it should be discarded, and pagination should be restarted from the first page of results.", + "type": "string" + }, + "selfLink": { + "description": "A link back to this list.", + "type": "string" + } + }, + "type": "object" }, - "modifiedDate": { - "type": "string", - "description": "Last time this revision was modified (formatted RFC 3339 timestamp).", - "format": "date-time" + "CommentReply": { + "description": "A comment on a file in Google Drive.", + "id": "CommentReply", + "properties": { + "author": { + "$ref": "User", + "description": "The user who wrote this reply." + }, + "content": { + "annotations": { + "required": [ + "drive.replies.patch", + "drive.replies.update" + ] + }, + "description": "The plain text content used to create this reply. This is not HTML safe and should only be used as a starting point to make edits to a reply's content. This field is required on inserts if no verb is specified (resolve/reopen).", + "type": "string" + }, + "createdDate": { + "description": "The date when this reply was first created.", + "format": "date-time", + "type": "string" + }, + "deleted": { + "description": "Whether this reply has been deleted. If a reply has been deleted the content will be cleared and this will only represent a reply that once existed.", + "type": "boolean" + }, + "htmlContent": { + "description": "HTML formatted content for this reply.", + "type": "string" + }, + "kind": { + "default": "drive#commentReply", + "description": "This is always drive#commentReply.", + "type": "string" + }, + "modifiedDate": { + "description": "The date when this reply was last modified.", + "format": "date-time", + "type": "string" + }, + "replyId": { + "description": "The ID of the reply.", + "type": "string" + }, + "verb": { + "description": "The action this reply performed to the parent comment. When creating a new reply this is the action to be perform to the parent comment. Possible values are: \n- \"resolve\" - To resolve a comment. \n- \"reopen\" - To reopen (un-resolve) a comment.", + "type": "string" + } + }, + "type": "object" }, - "originalFilename": { - "type": "string", - "description": "The original filename when this revision was created. This will only be populated on files with content stored in Drive." + "CommentReplyList": { + "description": "A list of replies to a comment on a file in Google Drive.", + "id": "CommentReplyList", + "properties": { + "items": { + "description": "The list of replies. If nextPageToken is populated, then this list may be incomplete and an additional page of results should be fetched.", + "items": { + "$ref": "CommentReply" + }, + "type": "array" + }, + "kind": { + "default": "drive#commentReplyList", + "description": "This is always drive#commentReplyList.", + "type": "string" + }, + "nextLink": { + "description": "A link to the next page of replies.", + "type": "string" + }, + "nextPageToken": { + "description": "The page token for the next page of replies. This will be absent if the end of the replies list has been reached. If the token is rejected for any reason, it should be discarded, and pagination should be restarted from the first page of results.", + "type": "string" + }, + "selfLink": { + "description": "A link back to this list.", + "type": "string" + } + }, + "type": "object" }, - "pinned": { - "type": "boolean", - "description": "Whether this revision is pinned to prevent automatic purging. This will only be populated and can only be modified on files with content stored in Drive which are not Google Docs. Revisions can also be pinned when they are created through the drive.files.insert/update/copy by using the pinned query parameter." + "File": { + "description": "The metadata for a file.", + "id": "File", + "properties": { + "alternateLink": { + "description": "A link for opening the file in a relevant Google editor or viewer.", + "type": "string" + }, + "appDataContents": { + "description": "Whether this file is in the Application Data folder.", + "type": "boolean" + }, + "canComment": { + "description": "Deprecated: use capabilities/canComment.", + "type": "boolean" + }, + "canReadRevisions": { + "description": "Deprecated: use capabilities/canReadRevisions.", + "type": "boolean" + }, + "capabilities": { + "description": "Capabilities the current user has on this file. Each capability corresponds to a fine-grained action that a user may take.", + "properties": { + "canAddChildren": { + "description": "Whether the current user can add children to this folder. This is always false when the item is not a folder.", + "type": "boolean" + }, + "canChangeRestrictedDownload": { + "description": "Whether the current user can change the restricted download label of this file.", + "type": "boolean" + }, + "canComment": { + "description": "Whether the current user can comment on this file.", + "type": "boolean" + }, + "canCopy": { + "description": "Whether the current user can copy this file. For a Team Drive item, whether the current user can copy non-folder descendants of this item, or this item itself if it is not a folder.", + "type": "boolean" + }, + "canDelete": { + "description": "Whether the current user can delete this file.", + "type": "boolean" + }, + "canDownload": { + "description": "Whether the current user can download this file.", + "type": "boolean" + }, + "canEdit": { + "description": "Whether the current user can edit this file.", + "type": "boolean" + }, + "canListChildren": { + "description": "Whether the current user can list the children of this folder. This is always false when the item is not a folder.", + "type": "boolean" + }, + "canMoveItemIntoTeamDrive": { + "description": "Whether the current user can move this item into a Team Drive. If the item is in a Team Drive, this field is equivalent to canMoveTeamDriveItem.", + "type": "boolean" + }, + "canMoveTeamDriveItem": { + "description": "Whether the current user can move this Team Drive item by changing its parent. Note that a request to change the parent for this item may still fail depending on the new parent that is being added. Only populated for Team Drive files.", + "type": "boolean" + }, + "canReadRevisions": { + "description": "Whether the current user can read the revisions resource of this file. For a Team Drive item, whether revisions of non-folder descendants of this item, or this item itself if it is not a folder, can be read.", + "type": "boolean" + }, + "canReadTeamDrive": { + "description": "Whether the current user can read the Team Drive to which this file belongs. Only populated for Team Drive files.", + "type": "boolean" + }, + "canRemoveChildren": { + "description": "Whether the current user can remove children from this folder. This is always false when the item is not a folder.", + "type": "boolean" + }, + "canRename": { + "description": "Whether the current user can rename this file.", + "type": "boolean" + }, + "canShare": { + "description": "Whether the current user can modify the sharing settings for this file.", + "type": "boolean" + }, + "canTrash": { + "description": "Whether the current user can move this file to trash.", + "type": "boolean" + }, + "canUntrash": { + "description": "Whether the current user can restore this file from trash.", + "type": "boolean" + } + }, + "type": "object" + }, + "copyable": { + "description": "Deprecated: use capabilities/canCopy.", + "type": "boolean" + }, + "createdDate": { + "description": "Create time for this file (formatted RFC 3339 timestamp).", + "format": "date-time", + "type": "string" + }, + "defaultOpenWithLink": { + "description": "A link to open this file with the user's default app for this file. Only populated when the drive.apps.readonly scope is used.", + "type": "string" + }, + "description": { + "description": "A short description of the file.", + "type": "string" + }, + "downloadUrl": { + "type": "string" + }, + "editable": { + "description": "Deprecated: use capabilities/canEdit.", + "type": "boolean" + }, + "embedLink": { + "description": "A link for embedding the file.", + "type": "string" + }, + "etag": { + "description": "ETag of the file.", + "type": "string" + }, + "explicitlyTrashed": { + "description": "Whether this file has been explicitly trashed, as opposed to recursively trashed.", + "type": "boolean" + }, + "exportLinks": { + "additionalProperties": { + "description": "A mapping from export format to URL", + "type": "string" + }, + "description": "Links for exporting Google Docs to specific formats.", + "type": "object" + }, + "fileExtension": { + "description": "The final component of fullFileExtension with trailing text that does not appear to be part of the extension removed. This field is only populated for files with content stored in Drive; it is not populated for Google Docs or shortcut files.", + "type": "string" + }, + "fileSize": { + "description": "The size of the file in bytes. This field is only populated for files with content stored in Drive; it is not populated for Google Docs or shortcut files.", + "format": "int64", + "type": "string" + }, + "folderColorRgb": { + "description": "Folder color as an RGB hex string if the file is a folder. The list of supported colors is available in the folderColorPalette field of the About resource. If an unsupported color is specified, it will be changed to the closest color in the palette. Not populated for Team Drive files.", + "type": "string" + }, + "fullFileExtension": { + "description": "The full file extension; extracted from the title. May contain multiple concatenated extensions, such as \"tar.gz\". Removing an extension from the title does not clear this field; however, changing the extension on the title does update this field. This field is only populated for files with content stored in Drive; it is not populated for Google Docs or shortcut files.", + "type": "string" + }, + "hasAugmentedPermissions": { + "description": "Whether any users are granted file access directly on this file. This field is only populated for Team Drive files.", + "type": "boolean" + }, + "hasThumbnail": { + "description": "Whether this file has a thumbnail. This does not indicate whether the requesting app has access to the thumbnail. To check access, look for the presence of the thumbnailLink field.", + "type": "boolean" + }, + "headRevisionId": { + "description": "The ID of the file's head revision. This field is only populated for files with content stored in Drive; it is not populated for Google Docs or shortcut files.", + "type": "string" + }, + "iconLink": { + "description": "A link to the file's icon.", + "type": "string" + }, + "id": { + "description": "The ID of the file.", + "type": "string" + }, + "imageMediaMetadata": { + "description": "Metadata about image media. This will only be present for image types, and its contents will depend on what can be parsed from the image content.", + "properties": { + "aperture": { + "description": "The aperture used to create the photo (f-number).", + "format": "float", + "type": "number" + }, + "cameraMake": { + "description": "The make of the camera used to create the photo.", + "type": "string" + }, + "cameraModel": { + "description": "The model of the camera used to create the photo.", + "type": "string" + }, + "colorSpace": { + "description": "The color space of the photo.", + "type": "string" + }, + "date": { + "description": "The date and time the photo was taken (EXIF format timestamp).", + "type": "string" + }, + "exposureBias": { + "description": "The exposure bias of the photo (APEX value).", + "format": "float", + "type": "number" + }, + "exposureMode": { + "description": "The exposure mode used to create the photo.", + "type": "string" + }, + "exposureTime": { + "description": "The length of the exposure, in seconds.", + "format": "float", + "type": "number" + }, + "flashUsed": { + "description": "Whether a flash was used to create the photo.", + "type": "boolean" + }, + "focalLength": { + "description": "The focal length used to create the photo, in millimeters.", + "format": "float", + "type": "number" + }, + "height": { + "description": "The height of the image in pixels.", + "format": "int32", + "type": "integer" + }, + "isoSpeed": { + "description": "The ISO speed used to create the photo.", + "format": "int32", + "type": "integer" + }, + "lens": { + "description": "The lens used to create the photo.", + "type": "string" + }, + "location": { + "description": "Geographic location information stored in the image.", + "properties": { + "altitude": { + "description": "The altitude stored in the image.", + "format": "double", + "type": "number" + }, + "latitude": { + "description": "The latitude stored in the image.", + "format": "double", + "type": "number" + }, + "longitude": { + "description": "The longitude stored in the image.", + "format": "double", + "type": "number" + } + }, + "type": "object" + }, + "maxApertureValue": { + "description": "The smallest f-number of the lens at the focal length used to create the photo (APEX value).", + "format": "float", + "type": "number" + }, + "meteringMode": { + "description": "The metering mode used to create the photo.", + "type": "string" + }, + "rotation": { + "description": "The rotation in clockwise degrees from the image's original orientation.", + "format": "int32", + "type": "integer" + }, + "sensor": { + "description": "The type of sensor used to create the photo.", + "type": "string" + }, + "subjectDistance": { + "description": "The distance to the subject of the photo, in meters.", + "format": "int32", + "type": "integer" + }, + "whiteBalance": { + "description": "The white balance mode used to create the photo.", + "type": "string" + }, + "width": { + "description": "The width of the image in pixels.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "indexableText": { + "description": "Indexable text attributes for the file (can only be written)", + "properties": { + "text": { + "description": "The text to be indexed for this file.", + "type": "string" + } + }, + "type": "object" + }, + "isAppAuthorized": { + "description": "Whether the file was created or opened by the requesting app.", + "type": "boolean" + }, + "kind": { + "default": "drive#file", + "description": "The type of file. This is always drive#file.", + "type": "string" + }, + "labels": { + "description": "A group of labels for the file.", + "properties": { + "hidden": { + "description": "Deprecated.", + "type": "boolean" + }, + "modified": { + "description": "Whether the file has been modified by this user.", + "type": "boolean" + }, + "restricted": { + "description": "Whether viewers and commenters are prevented from downloading, printing, and copying this file.", + "type": "boolean" + }, + "starred": { + "description": "Whether this file is starred by the user.", + "type": "boolean" + }, + "trashed": { + "description": "Whether this file has been trashed. This label applies to all users accessing the file; however, only owners are allowed to see and untrash files.", + "type": "boolean" + }, + "viewed": { + "description": "Whether this file has been viewed by this user.", + "type": "boolean" + } + }, + "type": "object" + }, + "lastModifyingUser": { + "$ref": "User", + "description": "The last user to modify this file." + }, + "lastModifyingUserName": { + "description": "Name of the last user to modify this file.", + "type": "string" + }, + "lastViewedByMeDate": { + "description": "Last time this file was viewed by the user (formatted RFC 3339 timestamp).", + "format": "date-time", + "type": "string" + }, + "markedViewedByMeDate": { + "description": "Deprecated.", + "format": "date-time", + "type": "string" + }, + "md5Checksum": { + "description": "An MD5 checksum for the content of this file. This field is only populated for files with content stored in Drive; it is not populated for Google Docs or shortcut files.", + "type": "string" + }, + "mimeType": { + "description": "The MIME type of the file. This is only mutable on update when uploading new content. This field can be left blank, and the mimetype will be determined from the uploaded content's MIME type.", + "type": "string" + }, + "modifiedByMeDate": { + "description": "Last time this file was modified by the user (formatted RFC 3339 timestamp). Note that setting modifiedDate will also update the modifiedByMe date for the user which set the date.", + "format": "date-time", + "type": "string" + }, + "modifiedDate": { + "description": "Last time this file was modified by anyone (formatted RFC 3339 timestamp). This is only mutable on update when the setModifiedDate parameter is set.", + "format": "date-time", + "type": "string" + }, + "openWithLinks": { + "additionalProperties": { + "type": "string" + }, + "description": "A map of the id of each of the user's apps to a link to open this file with that app. Only populated when the drive.apps.readonly scope is used.", + "type": "object" + }, + "originalFilename": { + "description": "The original filename of the uploaded content if available, or else the original value of the title field. This is only available for files with binary content in Drive.", + "type": "string" + }, + "ownedByMe": { + "description": "Whether the file is owned by the current user. Not populated for Team Drive files.", + "type": "boolean" + }, + "ownerNames": { + "description": "Name(s) of the owner(s) of this file. Not populated for Team Drive files.", + "items": { + "type": "string" + }, + "type": "array" + }, + "owners": { + "description": "The owner(s) of this file. Not populated for Team Drive files.", + "items": { + "$ref": "User" + }, + "type": "array" + }, + "parents": { + "description": "Collection of parent folders which contain this file.\nIf not specified as part of an insert request, the file will be placed directly in the user's My Drive folder. If not specified as part of a copy request, the file will inherit any discoverable parents of the source file. Update requests can also use the addParents and removeParents parameters to modify the parents list.", + "items": { + "$ref": "ParentReference" + }, + "type": "array" + }, + "permissionIds": { + "description": "List of permission IDs for users with access to this file.", + "items": { + "type": "string" + }, + "type": "array" + }, + "permissions": { + "description": "The list of permissions for users with access to this file. Not populated for Team Drive files.", + "items": { + "$ref": "Permission" + }, + "type": "array" + }, + "properties": { + "description": "The list of properties.", + "items": { + "$ref": "Property" + }, + "type": "array" + }, + "quotaBytesUsed": { + "description": "The number of quota bytes used by this file.", + "format": "int64", + "type": "string" + }, + "selfLink": { + "description": "A link back to this file.", + "type": "string" + }, + "shareable": { + "description": "Deprecated: use capabilities/canShare.", + "type": "boolean" + }, + "shared": { + "description": "Whether the file has been shared. Not populated for Team Drive files.", + "type": "boolean" + }, + "sharedWithMeDate": { + "description": "Time at which this file was shared with the user (formatted RFC 3339 timestamp).", + "format": "date-time", + "type": "string" + }, + "sharingUser": { + "$ref": "User", + "description": "User that shared the item with the current user, if available." + }, + "spaces": { + "description": "The list of spaces which contain the file. Supported values are 'drive', 'appDataFolder' and 'photos'.", + "items": { + "type": "string" + }, + "type": "array" + }, + "teamDriveId": { + "description": "ID of the Team Drive the file resides in.", + "type": "string" + }, + "thumbnail": { + "description": "A thumbnail for the file. This will only be used if Drive cannot generate a standard thumbnail.", + "properties": { + "image": { + "description": "The URL-safe Base64 encoded bytes of the thumbnail image. It should conform to RFC 4648 section 5.", + "format": "byte", + "type": "string" + }, + "mimeType": { + "description": "The MIME type of the thumbnail.", + "type": "string" + } + }, + "type": "object" + }, + "thumbnailLink": { + "description": "A short-lived link to the file's thumbnail. Typically lasts on the order of hours. Only populated when the requesting app can access the file's content.", + "type": "string" + }, + "thumbnailVersion": { + "description": "The thumbnail version for use in thumbnail cache invalidation.", + "format": "int64", + "type": "string" + }, + "title": { + "description": "The title of this file. Note that for immutable items such as the top level folders of Team Drives, My Drive root folder, and Application Data folder the title is constant.", + "type": "string" + }, + "trashedDate": { + "description": "The time that the item was trashed (formatted RFC 3339 timestamp). Only populated for Team Drive files.", + "format": "date-time", + "type": "string" + }, + "trashingUser": { + "$ref": "User", + "description": "If the file has been explicitly trashed, the user who trashed it. Only populated for Team Drive files." + }, + "userPermission": { + "$ref": "Permission", + "description": "The permissions for the authenticated user on this file." + }, + "version": { + "description": "A monotonically increasing version number for the file. This reflects every change made to the file on the server, even those not visible to the requesting user.", + "format": "int64", + "type": "string" + }, + "videoMediaMetadata": { + "description": "Metadata about video media. This will only be present for video types.", + "properties": { + "durationMillis": { + "description": "The duration of the video in milliseconds.", + "format": "int64", + "type": "string" + }, + "height": { + "description": "The height of the video in pixels.", + "format": "int32", + "type": "integer" + }, + "width": { + "description": "The width of the video in pixels.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "webContentLink": { + "description": "A link for downloading the content of the file in a browser using cookie based authentication. In cases where the content is shared publicly, the content can be downloaded without any credentials.", + "type": "string" + }, + "webViewLink": { + "description": "A link only available on public folders for viewing their static web assets (HTML, CSS, JS, etc) via Google Drive's Website Hosting.", + "type": "string" + }, + "writersCanShare": { + "description": "Whether writers can share the document with other users. Not populated for Team Drive files.", + "type": "boolean" + } + }, + "type": "object" }, - "publishAuto": { - "type": "boolean", - "description": "Whether subsequent revisions will be automatically republished. This is only populated and can only be modified for Google Docs." + "FileList": { + "description": "A list of files.", + "id": "FileList", + "properties": { + "etag": { + "description": "The ETag of the list.", + "type": "string" + }, + "incompleteSearch": { + "description": "Whether the search process was incomplete. If true, then some search results may be missing, since all documents were not searched. This may occur when searching multiple Team Drives with the \"default,allTeamDrives\" corpora, but all corpora could not be searched. When this happens, it is suggested that clients narrow their query by choosing a different corpus such as \"default\" or \"teamDrive\".", + "type": "boolean" + }, + "items": { + "description": "The list of files. If nextPageToken is populated, then this list may be incomplete and an additional page of results should be fetched.", + "items": { + "$ref": "File" + }, + "type": "array" + }, + "kind": { + "default": "drive#fileList", + "description": "This is always drive#fileList.", + "type": "string" + }, + "nextLink": { + "description": "A link to the next page of files.", + "type": "string" + }, + "nextPageToken": { + "description": "The page token for the next page of files. This will be absent if the end of the files list has been reached. If the token is rejected for any reason, it should be discarded, and pagination should be restarted from the first page of results.", + "type": "string" + }, + "selfLink": { + "description": "A link back to this list.", + "type": "string" + } + }, + "type": "object" }, - "published": { - "type": "boolean", - "description": "Whether this revision is published. This is only populated and can only be modified for Google Docs." + "GeneratedIds": { + "description": "A list of generated IDs which can be provided in insert requests", + "id": "GeneratedIds", + "properties": { + "ids": { + "description": "The IDs generated for the requesting user in the specified space.", + "items": { + "type": "string" + }, + "type": "array" + }, + "kind": { + "default": "drive#generatedIds", + "description": "This is always drive#generatedIds", + "type": "string" + }, + "space": { + "description": "The type of file that can be created with these IDs.", + "type": "string" + } + }, + "type": "object" }, - "publishedLink": { - "type": "string", - "description": "A link to the published revision." + "ParentList": { + "description": "A list of a file's parents.", + "id": "ParentList", + "properties": { + "etag": { + "description": "The ETag of the list.", + "type": "string" + }, + "items": { + "description": "The list of parents.", + "items": { + "$ref": "ParentReference" + }, + "type": "array" + }, + "kind": { + "default": "drive#parentList", + "description": "This is always drive#parentList.", + "type": "string" + }, + "selfLink": { + "description": "A link back to this list.", + "type": "string" + } + }, + "type": "object" }, - "publishedOutsideDomain": { - "type": "boolean", - "description": "Whether this revision is published outside the domain. This is only populated and can only be modified for Google Docs." + "ParentReference": { + "description": "A reference to a file's parent.", + "id": "ParentReference", + "properties": { + "id": { + "annotations": { + "required": [ + "drive.parents.insert" + ] + }, + "description": "The ID of the parent.", + "type": "string" + }, + "isRoot": { + "description": "Whether or not the parent is the root folder.", + "type": "boolean" + }, + "kind": { + "default": "drive#parentReference", + "description": "This is always drive#parentReference.", + "type": "string" + }, + "parentLink": { + "description": "A link to the parent.", + "type": "string" + }, + "selfLink": { + "description": "A link back to this reference.", + "type": "string" + } + }, + "type": "object" }, - "selfLink": { - "type": "string", - "description": "A link back to this revision." + "Permission": { + "description": "A permission for a file.", + "id": "Permission", + "properties": { + "additionalRoles": { + "description": "Additional roles for this user. Only commenter is currently allowed, though more may be supported in the future.", + "items": { + "type": "string" + }, + "type": "array" + }, + "authKey": { + "description": "Deprecated.", + "type": "string" + }, + "deleted": { + "description": "Whether the account associated with this permission has been deleted. This field only pertains to user and group permissions.", + "type": "boolean" + }, + "domain": { + "description": "The domain name of the entity this permission refers to. This is an output-only field which is present when the permission type is user, group or domain.", + "type": "string" + }, + "emailAddress": { + "description": "The email address of the user or group this permission refers to. This is an output-only field which is present when the permission type is user or group.", + "type": "string" + }, + "etag": { + "description": "The ETag of the permission.", + "type": "string" + }, + "expirationDate": { + "description": "The time at which this permission will expire (RFC 3339 date-time). Expiration dates have the following restrictions: \n- They can only be set on user and group permissions \n- The date must be in the future \n- The date cannot be more than a year in the future \n- The date can only be set on drive.permissions.update or drive.permissions.patch requests", + "format": "date-time", + "type": "string" + }, + "id": { + "description": "The ID of the user this permission refers to, and identical to the permissionId in the About and Files resources. When making a drive.permissions.insert request, exactly one of the id or value fields must be specified unless the permission type is anyone, in which case both id and value are ignored.", + "type": "string" + }, + "kind": { + "default": "drive#permission", + "description": "This is always drive#permission.", + "type": "string" + }, + "name": { + "description": "The name for this permission.", + "type": "string" + }, + "photoLink": { + "description": "A link to the profile photo, if available.", + "type": "string" + }, + "role": { + "annotations": { + "required": [ + "drive.permissions.insert" + ] + }, + "description": "The primary role for this user. While new values may be supported in the future, the following are currently allowed: \n- organizer \n- owner \n- reader \n- writer", + "type": "string" + }, + "selfLink": { + "description": "A link back to this permission.", + "type": "string" + }, + "teamDrivePermissionDetails": { + "description": "Details of whether the permissions on this Team Drive item are inherited or directly on this item. This is an output-only field which is present only for Team Drive items.", + "items": { + "properties": { + "additionalRoles": { + "description": "Additional roles for this user. Only commenter is currently possible, though more may be supported in the future.", + "items": { + "type": "string" + }, + "type": "array" + }, + "inherited": { + "description": "Whether this permission is inherited. This field is always populated. This is an output-only field.", + "type": "boolean" + }, + "inheritedFrom": { + "description": "The ID of the item from which this permission is inherited. This is an output-only field and is only populated for members of the Team Drive.", + "type": "string" + }, + "role": { + "description": "The primary role for this user. While new values may be added in the future, the following are currently possible: \n- organizer \n- reader \n- writer", + "type": "string" + }, + "teamDrivePermissionType": { + "description": "The Team Drive permission type for this user. While new values may be added in future, the following are currently possible: \n- file \n- member", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "type": { + "annotations": { + "required": [ + "drive.permissions.insert" + ] + }, + "description": "The account type. Allowed values are: \n- user \n- group \n- domain \n- anyone", + "type": "string" + }, + "value": { + "description": "The email address or domain name for the entity. This is used during inserts and is not populated in responses. When making a drive.permissions.insert request, exactly one of the id or value fields must be specified unless the permission type is anyone, in which case both id and value are ignored.", + "type": "string" + }, + "withLink": { + "description": "Whether the link is required for this permission.", + "type": "boolean" + } + }, + "type": "object" + }, + "PermissionId": { + "description": "An ID for a user or group as seen in Permission items.", + "id": "PermissionId", + "properties": { + "id": { + "description": "The permission ID.", + "type": "string" + }, + "kind": { + "default": "drive#permissionId", + "description": "This is always drive#permissionId.", + "type": "string" + } + }, + "type": "object" + }, + "PermissionList": { + "description": "A list of permissions associated with a file.", + "id": "PermissionList", + "properties": { + "etag": { + "description": "The ETag of the list.", + "type": "string" + }, + "items": { + "description": "The list of permissions.", + "items": { + "$ref": "Permission" + }, + "type": "array" + }, + "kind": { + "default": "drive#permissionList", + "description": "This is always drive#permissionList.", + "type": "string" + }, + "nextPageToken": { + "description": "The page token for the next page of permissions. This field will be absent if the end of the permissions list has been reached. If the token is rejected for any reason, it should be discarded, and pagination should be restarted from the first page of results.", + "type": "string" + }, + "selfLink": { + "description": "A link back to this list.", + "type": "string" + } + }, + "type": "object" + }, + "Property": { + "description": "A key-value pair attached to a file that is either public or private to an application.\nThe following limits apply to file properties: \n- Maximum of 100 properties total per file\n- Maximum of 30 private properties per app\n- Maximum of 30 public properties\n- Maximum of 124 bytes size limit on (key + value) string in UTF-8 encoding for a single property.", + "id": "Property", + "properties": { + "etag": { + "description": "ETag of the property.", + "type": "string" + }, + "key": { + "description": "The key of this property.", + "type": "string" + }, + "kind": { + "default": "drive#property", + "description": "This is always drive#property.", + "type": "string" + }, + "selfLink": { + "description": "The link back to this property.", + "type": "string" + }, + "value": { + "description": "The value of this property.", + "type": "string" + }, + "visibility": { + "description": "The visibility of this property.", + "type": "string" + } + }, + "type": "object" + }, + "PropertyList": { + "description": "A collection of properties, key-value pairs that are either public or private to an application.", + "id": "PropertyList", + "properties": { + "etag": { + "description": "The ETag of the list.", + "type": "string" + }, + "items": { + "description": "The list of properties.", + "items": { + "$ref": "Property" + }, + "type": "array" + }, + "kind": { + "default": "drive#propertyList", + "description": "This is always drive#propertyList.", + "type": "string" + }, + "selfLink": { + "description": "The link back to this list.", + "type": "string" + } + }, + "type": "object" + }, + "Revision": { + "description": "A revision of a file.", + "id": "Revision", + "properties": { + "downloadUrl": { + "description": "Short term download URL for the file. This will only be populated on files with content stored in Drive.", + "type": "string" + }, + "etag": { + "description": "The ETag of the revision.", + "type": "string" + }, + "exportLinks": { + "additionalProperties": { + "description": "A mapping from export format to URL", + "type": "string" + }, + "description": "Links for exporting Google Docs to specific formats.", + "type": "object" + }, + "fileSize": { + "description": "The size of the revision in bytes. This will only be populated on files with content stored in Drive.", + "format": "int64", + "type": "string" + }, + "id": { + "description": "The ID of the revision.", + "type": "string" + }, + "kind": { + "default": "drive#revision", + "description": "This is always drive#revision.", + "type": "string" + }, + "lastModifyingUser": { + "$ref": "User", + "description": "The last user to modify this revision." + }, + "lastModifyingUserName": { + "description": "Name of the last user to modify this revision.", + "type": "string" + }, + "md5Checksum": { + "description": "An MD5 checksum for the content of this revision. This will only be populated on files with content stored in Drive.", + "type": "string" + }, + "mimeType": { + "description": "The MIME type of the revision.", + "type": "string" + }, + "modifiedDate": { + "description": "Last time this revision was modified (formatted RFC 3339 timestamp).", + "format": "date-time", + "type": "string" + }, + "originalFilename": { + "description": "The original filename when this revision was created. This will only be populated on files with content stored in Drive.", + "type": "string" + }, + "pinned": { + "description": "Whether this revision is pinned to prevent automatic purging. This will only be populated and can only be modified on files with content stored in Drive which are not Google Docs. Revisions can also be pinned when they are created through the drive.files.insert/update/copy by using the pinned query parameter.", + "type": "boolean" + }, + "publishAuto": { + "description": "Whether subsequent revisions will be automatically republished. This is only populated and can only be modified for Google Docs.", + "type": "boolean" + }, + "published": { + "description": "Whether this revision is published. This is only populated and can only be modified for Google Docs.", + "type": "boolean" + }, + "publishedLink": { + "description": "A link to the published revision.", + "type": "string" + }, + "publishedOutsideDomain": { + "description": "Whether this revision is published outside the domain. This is only populated and can only be modified for Google Docs.", + "type": "boolean" + }, + "selfLink": { + "description": "A link back to this revision.", + "type": "string" + } + }, + "type": "object" + }, + "RevisionList": { + "description": "A list of revisions of a file.", + "id": "RevisionList", + "properties": { + "etag": { + "description": "The ETag of the list.", + "type": "string" + }, + "items": { + "description": "The list of revisions. If nextPageToken is populated, then this list may be incomplete and an additional page of results should be fetched.", + "items": { + "$ref": "Revision" + }, + "type": "array" + }, + "kind": { + "default": "drive#revisionList", + "description": "This is always drive#revisionList.", + "type": "string" + }, + "nextPageToken": { + "description": "The page token for the next page of revisions. This field will be absent if the end of the revisions list has been reached. If the token is rejected for any reason, it should be discarded and pagination should be restarted from the first page of results.", + "type": "string" + }, + "selfLink": { + "description": "A link back to this list.", + "type": "string" + } + }, + "type": "object" + }, + "StartPageToken": { + "id": "StartPageToken", + "properties": { + "kind": { + "default": "drive#startPageToken", + "description": "Identifies what kind of resource this is. Value: the fixed string \"drive#startPageToken\".", + "type": "string" + }, + "startPageToken": { + "description": "The starting page token for listing changes.", + "type": "string" + } + }, + "type": "object" + }, + "TeamDrive": { + "description": "Representation of a Team Drive.", + "id": "TeamDrive", + "properties": { + "backgroundImageFile": { + "description": "An image file and cropping parameters from which a background image for this Team Drive is set. This is a write only field; it can only be set on drive.teamdrives.update requests that don't set themeId. When specified, all fields of the backgroundImageFile must be set.", + "properties": { + "id": { + "description": "The ID of an image file in Drive to use for the background image.", + "type": "string" + }, + "width": { + "description": "The width of the cropped image in the closed range of 0 to 1. This value represents the width of the cropped image divided by the width of the entire image. The height is computed by applying a width to height aspect ratio of 80 to 9. The resulting image must be at least 1280 pixels wide and 144 pixels high.", + "format": "float", + "type": "number" + }, + "xCoordinate": { + "description": "The X coordinate of the upper left corner of the cropping area in the background image. This is a value in the closed range of 0 to 1. This value represents the horizontal distance from the left side of the entire image to the left side of the cropping area divided by the width of the entire image.", + "format": "float", + "type": "number" + }, + "yCoordinate": { + "description": "The Y coordinate of the upper left corner of the cropping area in the background image. This is a value in the closed range of 0 to 1. This value represents the vertical distance from the top side of the entire image to the top side of the cropping area divided by the height of the entire image.", + "format": "float", + "type": "number" + } + }, + "type": "object" + }, + "backgroundImageLink": { + "description": "A short-lived link to this Team Drive's background image.", + "type": "string" + }, + "capabilities": { + "description": "Capabilities the current user has on this Team Drive.", + "properties": { + "canAddChildren": { + "description": "Whether the current user can add children to folders in this Team Drive.", + "type": "boolean" + }, + "canChangeTeamDriveBackground": { + "description": "Whether the current user can change the background of this Team Drive.", + "type": "boolean" + }, + "canComment": { + "description": "Whether the current user can comment on files in this Team Drive.", + "type": "boolean" + }, + "canCopy": { + "description": "Whether the current user can copy files in this Team Drive.", + "type": "boolean" + }, + "canDeleteTeamDrive": { + "description": "Whether the current user can delete this Team Drive. Attempting to delete the Team Drive may still fail if there are untrashed items inside the Team Drive.", + "type": "boolean" + }, + "canDownload": { + "description": "Whether the current user can download files in this Team Drive.", + "type": "boolean" + }, + "canEdit": { + "description": "Whether the current user can edit files in this Team Drive", + "type": "boolean" + }, + "canListChildren": { + "description": "Whether the current user can list the children of folders in this Team Drive.", + "type": "boolean" + }, + "canManageMembers": { + "description": "Whether the current user can add members to this Team Drive or remove them or change their role.", + "type": "boolean" + }, + "canReadRevisions": { + "description": "Whether the current user can read the revisions resource of files in this Team Drive.", + "type": "boolean" + }, + "canRemoveChildren": { + "description": "Whether the current user can remove children from folders in this Team Drive.", + "type": "boolean" + }, + "canRename": { + "description": "Whether the current user can rename files or folders in this Team Drive.", + "type": "boolean" + }, + "canRenameTeamDrive": { + "description": "Whether the current user can rename this Team Drive.", + "type": "boolean" + }, + "canShare": { + "description": "Whether the current user can share files or folders in this Team Drive.", + "type": "boolean" + } + }, + "type": "object" + }, + "colorRgb": { + "description": "The color of this Team Drive as an RGB hex string. It can only be set on a drive.teamdrives.update request that does not set themeId.", + "type": "string" + }, + "createdDate": { + "description": "The time at which the Team Drive was created (RFC 3339 date-time).", + "format": "date-time", + "type": "string" + }, + "id": { + "description": "The ID of this Team Drive which is also the ID of the top level folder for this Team Drive.", + "type": "string" + }, + "kind": { + "default": "drive#teamDrive", + "description": "This is always drive#teamDrive", + "type": "string" + }, + "name": { + "annotations": { + "required": [ + "drive.teamdrives.insert" + ] + }, + "description": "The name of this Team Drive.", + "type": "string" + }, + "themeId": { + "description": "The ID of the theme from which the background image and color will be set. The set of possible teamDriveThemes can be retrieved from a drive.about.get response. When not specified on a drive.teamdrives.insert request, a random theme is chosen from which the background image and color are set. This is a write-only field; it can only be set on requests that don't set colorRgb or backgroundImageFile.", + "type": "string" + } + }, + "type": "object" + }, + "TeamDriveList": { + "description": "A list of Team Drives.", + "id": "TeamDriveList", + "properties": { + "items": { + "description": "The list of Team Drives.", + "items": { + "$ref": "TeamDrive" + }, + "type": "array" + }, + "kind": { + "default": "drive#teamDriveList", + "description": "This is always drive#teamDriveList", + "type": "string" + }, + "nextPageToken": { + "description": "The page token for the next page of Team Drives.", + "type": "string" + } + }, + "type": "object" + }, + "User": { + "description": "Information about a Drive user.", + "id": "User", + "properties": { + "displayName": { + "description": "A plain text displayable name for this user.", + "type": "string" + }, + "emailAddress": { + "description": "The email address of the user.", + "type": "string" + }, + "isAuthenticatedUser": { + "description": "Whether this user is the same as the authenticated user for whom the request was made.", + "type": "boolean" + }, + "kind": { + "default": "drive#user", + "description": "This is always drive#user.", + "type": "string" + }, + "permissionId": { + "description": "The user's ID as visible in the permissions collection.", + "type": "string" + }, + "picture": { + "description": "The user's profile picture.", + "properties": { + "url": { + "description": "A URL that points to a profile picture of this user.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" } - } }, - "RevisionList": { - "id": "RevisionList", - "type": "object", - "description": "A list of revisions of a file.", - "properties": { - "etag": { - "type": "string", - "description": "The ETag of the list." - }, - "items": { - "type": "array", - "description": "The list of revisions. If nextPageToken is populated, then this list may be incomplete and an additional page of results should be fetched.", - "items": { - "$ref": "Revision" - } - }, - "kind": { - "type": "string", - "description": "This is always drive#revisionList.", - "default": "drive#revisionList" - }, - "nextPageToken": { - "type": "string", - "description": "The page token for the next page of revisions. This field will be absent if the end of the revisions list has been reached. If the token is rejected for any reason, it should be discarded and pagination should be restarted from the first page of results." - }, - "selfLink": { - "type": "string", - "description": "A link back to this list." - } - } - }, - "StartPageToken": { - "id": "StartPageToken", - "type": "object", - "properties": { - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"drive#startPageToken\".", - "default": "drive#startPageToken" - }, - "startPageToken": { - "type": "string", - "description": "The starting page token for listing changes." - } - } - }, - "TeamDrive": { - "id": "TeamDrive", - "type": "object", - "description": "Representation of a Team Drive.", - "properties": { - "backgroundImageFile": { - "type": "object", - "description": "An image file and cropping parameters from which a background image for this Team Drive is set. This is a write only field; it can only be set on drive.teamdrives.update requests that don't set themeId. When specified, all fields of the backgroundImageFile must be set.", - "properties": { - "id": { - "type": "string", - "description": "The ID of an image file in Drive to use for the background image." - }, - "width": { - "type": "number", - "description": "The width of the cropped image in the closed range of 0 to 1. This value represents the width of the cropped image divided by the width of the entire image. The height is computed by applying a width to height aspect ratio of 80 to 9. The resulting image must be at least 1280 pixels wide and 144 pixels high.", - "format": "float" - }, - "xCoordinate": { - "type": "number", - "description": "The X coordinate of the upper left corner of the cropping area in the background image. This is a value in the closed range of 0 to 1. This value represents the horizontal distance from the left side of the entire image to the left side of the cropping area divided by the width of the entire image.", - "format": "float" - }, - "yCoordinate": { - "type": "number", - "description": "The Y coordinate of the upper left corner of the cropping area in the background image. This is a value in the closed range of 0 to 1. This value represents the vertical distance from the top side of the entire image to the top side of the cropping area divided by the height of the entire image.", - "format": "float" - } - } - }, - "backgroundImageLink": { - "type": "string", - "description": "A short-lived link to this Team Drive's background image." - }, - "capabilities": { - "type": "object", - "description": "Capabilities the current user has on this Team Drive.", - "properties": { - "canAddChildren": { - "type": "boolean", - "description": "Whether the current user can add children to folders in this Team Drive." - }, - "canChangeTeamDriveBackground": { - "type": "boolean", - "description": "Whether the current user can change the background of this Team Drive." - }, - "canComment": { - "type": "boolean", - "description": "Whether the current user can comment on files in this Team Drive." - }, - "canCopy": { - "type": "boolean", - "description": "Whether the current user can copy files in this Team Drive." - }, - "canDeleteTeamDrive": { - "type": "boolean", - "description": "Whether the current user can delete this Team Drive. Attempting to delete the Team Drive may still fail if there are untrashed items inside the Team Drive." - }, - "canDownload": { - "type": "boolean", - "description": "Whether the current user can download files in this Team Drive." - }, - "canEdit": { - "type": "boolean", - "description": "Whether the current user can edit files in this Team Drive" - }, - "canListChildren": { - "type": "boolean", - "description": "Whether the current user can list the children of folders in this Team Drive." - }, - "canManageMembers": { - "type": "boolean", - "description": "Whether the current user can add members to this Team Drive or remove them or change their role." - }, - "canReadRevisions": { - "type": "boolean", - "description": "Whether the current user can read the revisions resource of files in this Team Drive." - }, - "canRemoveChildren": { - "type": "boolean", - "description": "Whether the current user can remove children from folders in this Team Drive." - }, - "canRename": { - "type": "boolean", - "description": "Whether the current user can rename files or folders in this Team Drive." - }, - "canRenameTeamDrive": { - "type": "boolean", - "description": "Whether the current user can rename this Team Drive." - }, - "canShare": { - "type": "boolean", - "description": "Whether the current user can share files or folders in this Team Drive." - } - } - }, - "colorRgb": { - "type": "string", - "description": "The color of this Team Drive as an RGB hex string. It can only be set on a drive.teamdrives.update request that does not set themeId." - }, - "createdDate": { - "type": "string", - "description": "The time at which the Team Drive was created (RFC 3339 date-time).", - "format": "date-time" - }, - "id": { - "type": "string", - "description": "The ID of this Team Drive which is also the ID of the top level folder for this Team Drive." - }, - "kind": { - "type": "string", - "description": "This is always drive#teamDrive", - "default": "drive#teamDrive" - }, - "name": { - "type": "string", - "description": "The name of this Team Drive." - }, - "themeId": { - "type": "string", - "description": "The ID of the theme from which the background image and color will be set. The set of possible teamDriveThemes can be retrieved from a drive.about.get response. When not specified on a drive.teamdrives.insert request, a random theme is chosen from which the background image and color are set. This is a write-only field; it can only be set on requests that don't set colorRgb or backgroundImageFile." - } - } - }, - "TeamDriveList": { - "id": "TeamDriveList", - "type": "object", - "description": "A list of Team Drives.", - "properties": { - "items": { - "type": "array", - "description": "The list of Team Drives.", - "items": { - "$ref": "TeamDrive" - } - }, - "kind": { - "type": "string", - "description": "This is always drive#teamDriveList", - "default": "drive#teamDriveList" - }, - "nextPageToken": { - "type": "string", - "description": "The page token for the next page of Team Drives." - } - } - }, - "User": { - "id": "User", - "type": "object", - "description": "Information about a Drive user.", - "properties": { - "displayName": { - "type": "string", - "description": "A plain text displayable name for this user." - }, - "emailAddress": { - "type": "string", - "description": "The email address of the user." - }, - "isAuthenticatedUser": { - "type": "boolean", - "description": "Whether this user is the same as the authenticated user for whom the request was made." - }, - "kind": { - "type": "string", - "description": "This is always drive#user.", - "default": "drive#user" - }, - "permissionId": { - "type": "string", - "description": "The user's ID as visible in the permissions collection." - }, - "picture": { - "type": "object", - "description": "The user's profile picture.", - "properties": { - "url": { - "type": "string", - "description": "A URL that points to a profile picture of this user." - } - } - } - } - } - }, - "resources": { - "about": { - "methods": { - "get": { - "id": "drive.about.get", - "path": "about", - "httpMethod": "GET", - "description": "Gets the information about the current user along with Drive API settings", - "parameters": { - "includeSubscribed": { - "type": "boolean", - "description": "Whether to count changes outside the My Drive hierarchy. When set to false, changes to files such as those in the Application Data folder or shared files which have not been added to My Drive will be omitted from the maxChangeIdCount.", - "default": "true", - "location": "query" - }, - "maxChangeIdCount": { - "type": "string", - "description": "Maximum number of remaining change IDs to count", - "default": "1", - "format": "int64", - "location": "query" - }, - "startChangeId": { - "type": "string", - "description": "Change ID to start counting from when calculating number of remaining change IDs", - "format": "int64", - "location": "query" - } - }, - "response": { - "$ref": "About" - }, - "scopes": [ - "https://www.googleapis.com/auth/drive", - "https://www.googleapis.com/auth/drive.appdata", - "https://www.googleapis.com/auth/drive.file", - "https://www.googleapis.com/auth/drive.metadata", - "https://www.googleapis.com/auth/drive.metadata.readonly", - "https://www.googleapis.com/auth/drive.photos.readonly", - "https://www.googleapis.com/auth/drive.readonly" - ] - } - } - }, - "apps": { - "methods": { - "get": { - "id": "drive.apps.get", - "path": "apps/{appId}", - "httpMethod": "GET", - "description": "Gets a specific app.", - "parameters": { - "appId": { - "type": "string", - "description": "The ID of the app.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "appId" - ], - "response": { - "$ref": "App" - }, - "scopes": [ - "https://www.googleapis.com/auth/drive", - "https://www.googleapis.com/auth/drive.appdata", - "https://www.googleapis.com/auth/drive.apps.readonly", - "https://www.googleapis.com/auth/drive.file", - "https://www.googleapis.com/auth/drive.metadata", - "https://www.googleapis.com/auth/drive.metadata.readonly", - "https://www.googleapis.com/auth/drive.readonly" - ] - }, - "list": { - "id": "drive.apps.list", - "path": "apps", - "httpMethod": "GET", - "description": "Lists a user's installed apps.", - "parameters": { - "appFilterExtensions": { - "type": "string", - "description": "A comma-separated list of file extensions for open with filtering. All apps within the given app query scope which can open any of the given file extensions will be included in the response. If appFilterMimeTypes are provided as well, the result is a union of the two resulting app lists.", - "default": "", - "location": "query" - }, - "appFilterMimeTypes": { - "type": "string", - "description": "A comma-separated list of MIME types for open with filtering. All apps within the given app query scope which can open any of the given MIME types will be included in the response. If appFilterExtensions are provided as well, the result is a union of the two resulting app lists.", - "default": "", - "location": "query" - }, - "languageCode": { - "type": "string", - "description": "A language or locale code, as defined by BCP 47, with some extensions from Unicode's LDML format (http://www.unicode.org/reports/tr35/).", - "location": "query" - } - }, - "response": { - "$ref": "AppList" - }, - "scopes": [ - "https://www.googleapis.com/auth/drive.apps.readonly" - ] - } - } - }, - "changes": { - "methods": { - "get": { - "id": "drive.changes.get", - "path": "changes/{changeId}", - "httpMethod": "GET", - "description": "Deprecated - Use changes.getStartPageToken and changes.list to retrieve recent changes.", - "parameters": { - "changeId": { - "type": "string", - "description": "The ID of the change.", - "required": true, - "location": "path" - }, - "supportsTeamDrives": { - "type": "boolean", - "description": "Whether the requesting application supports Team Drives.", - "default": "false", - "location": "query" - }, - "teamDriveId": { - "type": "string", - "description": "The Team Drive from which the change will be returned.", - "location": "query" - } - }, - "parameterOrder": [ - "changeId" - ], - "response": { - "$ref": "Change" - }, - "scopes": [ - "https://www.googleapis.com/auth/drive", - "https://www.googleapis.com/auth/drive.appdata", - "https://www.googleapis.com/auth/drive.apps.readonly", - "https://www.googleapis.com/auth/drive.file", - "https://www.googleapis.com/auth/drive.metadata", - "https://www.googleapis.com/auth/drive.metadata.readonly", - "https://www.googleapis.com/auth/drive.photos.readonly", - "https://www.googleapis.com/auth/drive.readonly" - ] - }, - "getStartPageToken": { - "id": "drive.changes.getStartPageToken", - "path": "changes/startPageToken", - "httpMethod": "GET", - "description": "Gets the starting pageToken for listing future changes.", - "parameters": { - "supportsTeamDrives": { - "type": "boolean", - "description": "Whether the requesting application supports Team Drives.", - "default": "false", - "location": "query" - }, - "teamDriveId": { - "type": "string", - "description": "The ID of the Team Drive for which the starting pageToken for listing future changes from that Team Drive will be returned.", - "location": "query" - } - }, - "response": { - "$ref": "StartPageToken" - }, - "scopes": [ - "https://www.googleapis.com/auth/drive", - "https://www.googleapis.com/auth/drive.appdata", - "https://www.googleapis.com/auth/drive.apps.readonly", - "https://www.googleapis.com/auth/drive.file", - "https://www.googleapis.com/auth/drive.metadata", - "https://www.googleapis.com/auth/drive.metadata.readonly", - "https://www.googleapis.com/auth/drive.photos.readonly", - "https://www.googleapis.com/auth/drive.readonly" - ] - }, - "list": { - "id": "drive.changes.list", - "path": "changes", - "httpMethod": "GET", - "description": "Lists the changes for a user or Team Drive.", - "parameters": { - "includeCorpusRemovals": { - "type": "boolean", - "description": "Whether changes should include the file resource if the file is still accessible by the user at the time of the request, even when a file was removed from the list of changes and there will be no further change entries for this file.", - "default": "false", - "location": "query" - }, - "includeDeleted": { - "type": "boolean", - "description": "Whether to include changes indicating that items have been removed from the list of changes, for example by deletion or loss of access.", - "default": "true", - "location": "query" - }, - "includeSubscribed": { - "type": "boolean", - "description": "Whether to include changes outside the My Drive hierarchy in the result. When set to false, changes to files such as those in the Application Data folder or shared files which have not been added to My Drive will be omitted from the result.", - "default": "true", - "location": "query" - }, - "includeTeamDriveItems": { - "type": "boolean", - "description": "Whether Team Drive files or changes should be included in results.", - "default": "false", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "Maximum number of changes to return.", - "default": "100", - "format": "int32", - "minimum": "1", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "The token for continuing a previous list request on the next page. This should be set to the value of 'nextPageToken' from the previous response or to the response from the getStartPageToken method.", - "location": "query" - }, - "spaces": { - "type": "string", - "description": "A comma-separated list of spaces to query. Supported values are 'drive', 'appDataFolder' and 'photos'.", - "location": "query" - }, - "startChangeId": { - "type": "string", - "description": "Deprecated - use pageToken instead.", - "format": "int64", - "location": "query" - }, - "supportsTeamDrives": { - "type": "boolean", - "description": "Whether the requesting application supports Team Drives.", - "default": "false", - "location": "query" - }, - "teamDriveId": { - "type": "string", - "description": "The Team Drive from which changes will be returned. If specified the change IDs will be reflective of the Team Drive; use the combined Team Drive ID and change ID as an identifier.", - "location": "query" - } - }, - "response": { - "$ref": "ChangeList" - }, - "scopes": [ - "https://www.googleapis.com/auth/drive", - "https://www.googleapis.com/auth/drive.appdata", - "https://www.googleapis.com/auth/drive.apps.readonly", - "https://www.googleapis.com/auth/drive.file", - "https://www.googleapis.com/auth/drive.metadata", - "https://www.googleapis.com/auth/drive.metadata.readonly", - "https://www.googleapis.com/auth/drive.photos.readonly", - "https://www.googleapis.com/auth/drive.readonly" - ], - "supportsSubscription": true - }, - "watch": { - "id": "drive.changes.watch", - "path": "changes/watch", - "httpMethod": "POST", - "description": "Subscribe to changes for a user.", - "parameters": { - "includeCorpusRemovals": { - "type": "boolean", - "description": "Whether changes should include the file resource if the file is still accessible by the user at the time of the request, even when a file was removed from the list of changes and there will be no further change entries for this file.", - "default": "false", - "location": "query" - }, - "includeDeleted": { - "type": "boolean", - "description": "Whether to include changes indicating that items have been removed from the list of changes, for example by deletion or loss of access.", - "default": "true", - "location": "query" - }, - "includeSubscribed": { - "type": "boolean", - "description": "Whether to include changes outside the My Drive hierarchy in the result. When set to false, changes to files such as those in the Application Data folder or shared files which have not been added to My Drive will be omitted from the result.", - "default": "true", - "location": "query" - }, - "includeTeamDriveItems": { - "type": "boolean", - "description": "Whether Team Drive files or changes should be included in results.", - "default": "false", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "Maximum number of changes to return.", - "default": "100", - "format": "int32", - "minimum": "1", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "The token for continuing a previous list request on the next page. This should be set to the value of 'nextPageToken' from the previous response or to the response from the getStartPageToken method.", - "location": "query" - }, - "spaces": { - "type": "string", - "description": "A comma-separated list of spaces to query. Supported values are 'drive', 'appDataFolder' and 'photos'.", - "location": "query" - }, - "startChangeId": { - "type": "string", - "description": "Deprecated - use pageToken instead.", - "format": "int64", - "location": "query" - }, - "supportsTeamDrives": { - "type": "boolean", - "description": "Whether the requesting application supports Team Drives.", - "default": "false", - "location": "query" - }, - "teamDriveId": { - "type": "string", - "description": "The Team Drive from which changes will be returned. If specified the change IDs will be reflective of the Team Drive; use the combined Team Drive ID and change ID as an identifier.", - "location": "query" - } - }, - "request": { - "$ref": "Channel", - "parameterName": "resource" - }, - "response": { - "$ref": "Channel" - }, - "scopes": [ - "https://www.googleapis.com/auth/drive", - "https://www.googleapis.com/auth/drive.appdata", - "https://www.googleapis.com/auth/drive.apps.readonly", - "https://www.googleapis.com/auth/drive.file", - "https://www.googleapis.com/auth/drive.metadata", - "https://www.googleapis.com/auth/drive.metadata.readonly", - "https://www.googleapis.com/auth/drive.photos.readonly", - "https://www.googleapis.com/auth/drive.readonly" - ], - "supportsSubscription": true - } - } - }, - "channels": { - "methods": { - "stop": { - "id": "drive.channels.stop", - "path": "channels/stop", - "httpMethod": "POST", - "description": "Stop watching resources through this channel", - "request": { - "$ref": "Channel", - "parameterName": "resource" - }, - "scopes": [ - "https://www.googleapis.com/auth/drive", - "https://www.googleapis.com/auth/drive.appdata", - "https://www.googleapis.com/auth/drive.apps.readonly", - "https://www.googleapis.com/auth/drive.file", - "https://www.googleapis.com/auth/drive.metadata", - "https://www.googleapis.com/auth/drive.metadata.readonly", - "https://www.googleapis.com/auth/drive.photos.readonly", - "https://www.googleapis.com/auth/drive.readonly" - ] - } - } - }, - "children": { - "methods": { - "delete": { - "id": "drive.children.delete", - "path": "files/{folderId}/children/{childId}", - "httpMethod": "DELETE", - "description": "Removes a child from a folder.", - "parameters": { - "childId": { - "type": "string", - "description": "The ID of the child.", - "required": true, - "location": "path" - }, - "folderId": { - "type": "string", - "description": "The ID of the folder.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "folderId", - "childId" - ], - "scopes": [ - "https://www.googleapis.com/auth/drive", - "https://www.googleapis.com/auth/drive.file" - ] - }, - "get": { - "id": "drive.children.get", - "path": "files/{folderId}/children/{childId}", - "httpMethod": "GET", - "description": "Gets a specific child reference.", - "parameters": { - "childId": { - "type": "string", - "description": "The ID of the child.", - "required": true, - "location": "path" - }, - "folderId": { - "type": "string", - "description": "The ID of the folder.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "folderId", - "childId" - ], - "response": { - "$ref": "ChildReference" - }, - "scopes": [ - "https://www.googleapis.com/auth/drive", - "https://www.googleapis.com/auth/drive.appdata", - "https://www.googleapis.com/auth/drive.file", - "https://www.googleapis.com/auth/drive.metadata", - "https://www.googleapis.com/auth/drive.metadata.readonly", - "https://www.googleapis.com/auth/drive.photos.readonly", - "https://www.googleapis.com/auth/drive.readonly" - ] - }, - "insert": { - "id": "drive.children.insert", - "path": "files/{folderId}/children", - "httpMethod": "POST", - "description": "Inserts a file into a folder.", - "parameters": { - "folderId": { - "type": "string", - "description": "The ID of the folder.", - "required": true, - "location": "path" - }, - "supportsTeamDrives": { - "type": "boolean", - "description": "Whether the requesting application supports Team Drives.", - "default": "false", - "location": "query" - } - }, - "parameterOrder": [ - "folderId" - ], - "request": { - "$ref": "ChildReference" - }, - "response": { - "$ref": "ChildReference" - }, - "scopes": [ - "https://www.googleapis.com/auth/drive", - "https://www.googleapis.com/auth/drive.appdata", - "https://www.googleapis.com/auth/drive.file" - ] - }, - "list": { - "id": "drive.children.list", - "path": "files/{folderId}/children", - "httpMethod": "GET", - "description": "Lists a folder's children.", - "parameters": { - "folderId": { - "type": "string", - "description": "The ID of the folder.", - "required": true, - "location": "path" - }, - "maxResults": { - "type": "integer", - "description": "Maximum number of children to return.", - "default": "100", - "format": "int32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "A comma-separated list of sort keys. Valid keys are 'createdDate', 'folder', 'lastViewedByMeDate', 'modifiedByMeDate', 'modifiedDate', 'quotaBytesUsed', 'recency', 'sharedWithMeDate', 'starred', and 'title'. Each key sorts ascending by default, but may be reversed with the 'desc' modifier. Example usage: ?orderBy=folder,modifiedDate desc,title. Please note that there is a current limitation for users with approximately one million files in which the requested sort order is ignored.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Page token for children.", - "location": "query" - }, - "q": { - "type": "string", - "description": "Query string for searching children.", - "location": "query" - } - }, - "parameterOrder": [ - "folderId" - ], - "response": { - "$ref": "ChildList" - }, - "scopes": [ - "https://www.googleapis.com/auth/drive", - "https://www.googleapis.com/auth/drive.appdata", - "https://www.googleapis.com/auth/drive.file", - "https://www.googleapis.com/auth/drive.metadata", - "https://www.googleapis.com/auth/drive.metadata.readonly", - "https://www.googleapis.com/auth/drive.photos.readonly", - "https://www.googleapis.com/auth/drive.readonly" - ] - } - } - }, - "comments": { - "methods": { - "delete": { - "id": "drive.comments.delete", - "path": "files/{fileId}/comments/{commentId}", - "httpMethod": "DELETE", - "description": "Deletes a comment.", - "parameters": { - "commentId": { - "type": "string", - "description": "The ID of the comment.", - "required": true, - "location": "path" - }, - "fileId": { - "type": "string", - "description": "The ID of the file.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "fileId", - "commentId" - ], - "scopes": [ - "https://www.googleapis.com/auth/drive", - "https://www.googleapis.com/auth/drive.file" - ] - }, - "get": { - "id": "drive.comments.get", - "path": "files/{fileId}/comments/{commentId}", - "httpMethod": "GET", - "description": "Gets a comment by ID.", - "parameters": { - "commentId": { - "type": "string", - "description": "The ID of the comment.", - "required": true, - "location": "path" - }, - "fileId": { - "type": "string", - "description": "The ID of the file.", - "required": true, - "location": "path" - }, - "includeDeleted": { - "type": "boolean", - "description": "If set, this will succeed when retrieving a deleted comment, and will include any deleted replies.", - "default": "false", - "location": "query" - } - }, - "parameterOrder": [ - "fileId", - "commentId" - ], - "response": { - "$ref": "Comment" - }, - "scopes": [ - "https://www.googleapis.com/auth/drive", - "https://www.googleapis.com/auth/drive.file", - "https://www.googleapis.com/auth/drive.readonly" - ] - }, - "insert": { - "id": "drive.comments.insert", - "path": "files/{fileId}/comments", - "httpMethod": "POST", - "description": "Creates a new comment on the given file.", - "parameters": { - "fileId": { - "type": "string", - "description": "The ID of the file.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "fileId" - ], - "request": { - "$ref": "Comment" - }, - "response": { - "$ref": "Comment" - }, - "scopes": [ - "https://www.googleapis.com/auth/drive", - "https://www.googleapis.com/auth/drive.file" - ] - }, - "list": { - "id": "drive.comments.list", - "path": "files/{fileId}/comments", - "httpMethod": "GET", - "description": "Lists a file's comments.", - "parameters": { - "fileId": { - "type": "string", - "description": "The ID of the file.", - "required": true, - "location": "path" - }, - "includeDeleted": { - "type": "boolean", - "description": "If set, all comments and replies, including deleted comments and replies (with content stripped) will be returned.", - "default": "false", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of discussions to include in the response, used for paging.", - "default": "20", - "format": "int32", - "minimum": "0", - "maximum": "100", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "The continuation token, used to page through large result sets. To get the next page of results, set this parameter to the value of \"nextPageToken\" from the previous response.", - "location": "query" - }, - "updatedMin": { - "type": "string", - "description": "Only discussions that were updated after this timestamp will be returned. Formatted as an RFC 3339 timestamp.", - "location": "query" - } - }, - "parameterOrder": [ - "fileId" - ], - "response": { - "$ref": "CommentList" - }, - "scopes": [ - "https://www.googleapis.com/auth/drive", - "https://www.googleapis.com/auth/drive.file", - "https://www.googleapis.com/auth/drive.readonly" - ] - }, - "patch": { - "id": "drive.comments.patch", - "path": "files/{fileId}/comments/{commentId}", - "httpMethod": "PATCH", - "description": "Updates an existing comment. This method supports patch semantics.", - "parameters": { - "commentId": { - "type": "string", - "description": "The ID of the comment.", - "required": true, - "location": "path" - }, - "fileId": { - "type": "string", - "description": "The ID of the file.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "fileId", - "commentId" - ], - "request": { - "$ref": "Comment" - }, - "response": { - "$ref": "Comment" - }, - "scopes": [ - "https://www.googleapis.com/auth/drive", - "https://www.googleapis.com/auth/drive.file" - ] - }, - "update": { - "id": "drive.comments.update", - "path": "files/{fileId}/comments/{commentId}", - "httpMethod": "PUT", - "description": "Updates an existing comment.", - "parameters": { - "commentId": { - "type": "string", - "description": "The ID of the comment.", - "required": true, - "location": "path" - }, - "fileId": { - "type": "string", - "description": "The ID of the file.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "fileId", - "commentId" - ], - "request": { - "$ref": "Comment" - }, - "response": { - "$ref": "Comment" - }, - "scopes": [ - "https://www.googleapis.com/auth/drive", - "https://www.googleapis.com/auth/drive.file" - ] - } - } - }, - "files": { - "methods": { - "copy": { - "id": "drive.files.copy", - "path": "files/{fileId}/copy", - "httpMethod": "POST", - "description": "Creates a copy of the specified file.", - "parameters": { - "convert": { - "type": "boolean", - "description": "Whether to convert this file to the corresponding Google Docs format.", - "default": "false", - "location": "query" - }, - "fileId": { - "type": "string", - "description": "The ID of the file to copy.", - "required": true, - "location": "path" - }, - "ocr": { - "type": "boolean", - "description": "Whether to attempt OCR on .jpg, .png, .gif, or .pdf uploads.", - "default": "false", - "location": "query" - }, - "ocrLanguage": { - "type": "string", - "description": "If ocr is true, hints at the language to use. Valid values are BCP 47 codes.", - "location": "query" - }, - "pinned": { - "type": "boolean", - "description": "Whether to pin the head revision of the new copy. A file can have a maximum of 200 pinned revisions.", - "default": "false", - "location": "query" - }, - "supportsTeamDrives": { - "type": "boolean", - "description": "Whether the requesting application supports Team Drives.", - "default": "false", - "location": "query" - }, - "timedTextLanguage": { - "type": "string", - "description": "The language of the timed text.", - "location": "query" - }, - "timedTextTrackName": { - "type": "string", - "description": "The timed text track name.", - "location": "query" - }, - "visibility": { - "type": "string", - "description": "The visibility of the new file. This parameter is only relevant when the source is not a native Google Doc and convert=false.", - "default": "DEFAULT", - "enum": [ - "DEFAULT", - "PRIVATE" - ], - "enumDescriptions": [ - "The visibility of the new file is determined by the user's default visibility/sharing policies.", - "The new file will be visible to only the owner." - ], - "location": "query" - } - }, - "parameterOrder": [ - "fileId" - ], - "request": { - "$ref": "File" - }, - "response": { - "$ref": "File" - }, - "scopes": [ - "https://www.googleapis.com/auth/drive", - "https://www.googleapis.com/auth/drive.appdata", - "https://www.googleapis.com/auth/drive.apps.readonly", - "https://www.googleapis.com/auth/drive.file", - "https://www.googleapis.com/auth/drive.photos.readonly" - ] - }, - "delete": { - "id": "drive.files.delete", - "path": "files/{fileId}", - "httpMethod": "DELETE", - "description": "Permanently deletes a file by ID. Skips the trash. The currently authenticated user must own the file or be an organizer on the parent for Team Drive files.", - "parameters": { - "fileId": { - "type": "string", - "description": "The ID of the file to delete.", - "required": true, - "location": "path" - }, - "supportsTeamDrives": { - "type": "boolean", - "description": "Whether the requesting application supports Team Drives.", - "default": "false", - "location": "query" - } - }, - "parameterOrder": [ - "fileId" - ], - "scopes": [ - "https://www.googleapis.com/auth/drive", - "https://www.googleapis.com/auth/drive.appdata", - "https://www.googleapis.com/auth/drive.file" - ] - }, - "emptyTrash": { - "id": "drive.files.emptyTrash", - "path": "files/trash", - "httpMethod": "DELETE", - "description": "Permanently deletes all of the user's trashed files.", - "scopes": [ - "https://www.googleapis.com/auth/drive" - ] - }, - "export": { - "id": "drive.files.export", - "path": "files/{fileId}/export", - "httpMethod": "GET", - "description": "Exports a Google Doc to the requested MIME type and returns the exported content. Please note that the exported content is limited to 10MB.", - "parameters": { - "fileId": { - "type": "string", - "description": "The ID of the file.", - "required": true, - "location": "path" - }, - "mimeType": { - "type": "string", - "description": "The MIME type of the format requested for this export.", - "required": true, - "location": "query" - } - }, - "parameterOrder": [ - "fileId", - "mimeType" - ], - "scopes": [ - "https://www.googleapis.com/auth/drive", - "https://www.googleapis.com/auth/drive.file", - "https://www.googleapis.com/auth/drive.readonly" - ], - "supportsMediaDownload": true - }, - "generateIds": { - "id": "drive.files.generateIds", - "path": "files/generateIds", - "httpMethod": "GET", - "description": "Generates a set of file IDs which can be provided in insert requests.", - "parameters": { - "maxResults": { - "type": "integer", - "description": "Maximum number of IDs to return.", - "default": "10", - "format": "int32", - "minimum": "1", - "maximum": "1000", - "location": "query" - }, - "space": { - "type": "string", - "description": "The space in which the IDs can be used to create new files. Supported values are 'drive' and 'appDataFolder'.", - "default": "drive", - "location": "query" - } - }, - "response": { - "$ref": "GeneratedIds" - }, - "scopes": [ - "https://www.googleapis.com/auth/drive", - "https://www.googleapis.com/auth/drive.appdata", - "https://www.googleapis.com/auth/drive.file" - ] - }, - "get": { - "id": "drive.files.get", - "path": "files/{fileId}", - "httpMethod": "GET", - "description": "Gets a file's metadata by ID.", - "parameters": { - "acknowledgeAbuse": { - "type": "boolean", - "description": "Whether the user is acknowledging the risk of downloading known malware or other abusive files.", - "default": "false", - "location": "query" - }, - "fileId": { - "type": "string", - "description": "The ID for the file in question.", - "required": true, - "location": "path" - }, - "projection": { - "type": "string", - "description": "This parameter is deprecated and has no function.", - "enum": [ - "BASIC", - "FULL" - ], - "enumDescriptions": [ - "Deprecated", - "Deprecated" - ], - "location": "query" - }, - "revisionId": { - "type": "string", - "description": "Specifies the Revision ID that should be downloaded. Ignored unless alt=media is specified.", - "location": "query" - }, - "supportsTeamDrives": { - "type": "boolean", - "description": "Whether the requesting application supports Team Drives.", - "default": "false", - "location": "query" - }, - "updateViewedDate": { - "type": "boolean", - "description": "Deprecated: Use files.update with modifiedDateBehavior=noChange, updateViewedDate=true and an empty request body.", - "default": "false", - "location": "query" - } - }, - "parameterOrder": [ - "fileId" - ], - "response": { - "$ref": "File" - }, - "scopes": [ - "https://www.googleapis.com/auth/drive", - "https://www.googleapis.com/auth/drive.appdata", - "https://www.googleapis.com/auth/drive.file", - "https://www.googleapis.com/auth/drive.metadata", - "https://www.googleapis.com/auth/drive.metadata.readonly", - "https://www.googleapis.com/auth/drive.photos.readonly", - "https://www.googleapis.com/auth/drive.readonly" - ], - "supportsMediaDownload": true, - "useMediaDownloadService": true, - "supportsSubscription": true - }, - "insert": { - "id": "drive.files.insert", - "path": "files", - "httpMethod": "POST", - "description": "Insert a new file.", - "parameters": { - "convert": { - "type": "boolean", - "description": "Whether to convert this file to the corresponding Google Docs format.", - "default": "false", - "location": "query" - }, - "ocr": { - "type": "boolean", - "description": "Whether to attempt OCR on .jpg, .png, .gif, or .pdf uploads.", - "default": "false", - "location": "query" - }, - "ocrLanguage": { - "type": "string", - "description": "If ocr is true, hints at the language to use. Valid values are BCP 47 codes.", - "location": "query" - }, - "pinned": { - "type": "boolean", - "description": "Whether to pin the head revision of the uploaded file. A file can have a maximum of 200 pinned revisions.", - "default": "false", - "location": "query" - }, - "supportsTeamDrives": { - "type": "boolean", - "description": "Whether the requesting application supports Team Drives.", - "default": "false", - "location": "query" - }, - "timedTextLanguage": { - "type": "string", - "description": "The language of the timed text.", - "location": "query" - }, - "timedTextTrackName": { - "type": "string", - "description": "The timed text track name.", - "location": "query" - }, - "useContentAsIndexableText": { - "type": "boolean", - "description": "Whether to use the content as indexable text.", - "default": "false", - "location": "query" - }, - "visibility": { - "type": "string", - "description": "The visibility of the new file. This parameter is only relevant when convert=false.", - "default": "DEFAULT", - "enum": [ - "DEFAULT", - "PRIVATE" - ], - "enumDescriptions": [ - "The visibility of the new file is determined by the user's default visibility/sharing policies.", - "The new file will be visible to only the owner." - ], - "location": "query" - } - }, - "request": { - "$ref": "File" - }, - "response": { - "$ref": "File" - }, - "scopes": [ - "https://www.googleapis.com/auth/drive", - "https://www.googleapis.com/auth/drive.appdata", - "https://www.googleapis.com/auth/drive.apps.readonly", - "https://www.googleapis.com/auth/drive.file" - ], - "supportsMediaUpload": true, - "mediaUpload": { - "accept": [ - "*/*" - ], - "maxSize": "5120GB", - "protocols": { - "simple": { - "multipart": true, - "path": "/upload/drive/v2/files" - }, - "resumable": { - "multipart": true, - "path": "/resumable/upload/drive/v2/files" - } - } - }, - "supportsSubscription": true - }, - "list": { - "id": "drive.files.list", - "path": "files", - "httpMethod": "GET", - "description": "Lists the user's files.", - "parameters": { - "corpora": { - "type": "string", - "description": "Comma-separated list of bodies of items (files/documents) to which the query applies. Supported bodies are 'default', 'domain', 'teamDrive' and 'allTeamDrives'. 'allTeamDrives' must be combined with 'default'; all other values must be used in isolation. Prefer 'default' or 'teamDrive' to 'allTeamDrives' for efficiency.", - "location": "query" - }, - "corpus": { - "type": "string", - "description": "The body of items (files/documents) to which the query applies. Deprecated: use 'corpora' instead.", - "enum": [ - "DEFAULT", - "DOMAIN" - ], - "enumDescriptions": [ - "The items that the user has accessed.", - "Items shared to the user's domain." - ], - "location": "query" - }, - "includeTeamDriveItems": { - "type": "boolean", - "description": "Whether Team Drive items should be included in results.", - "default": "false", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of files to return per page. Partial or empty result pages are possible even before the end of the files list has been reached.", - "default": "100", - "format": "int32", - "minimum": "0", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "A comma-separated list of sort keys. Valid keys are 'createdDate', 'folder', 'lastViewedByMeDate', 'modifiedByMeDate', 'modifiedDate', 'quotaBytesUsed', 'recency', 'sharedWithMeDate', 'starred', 'title', and 'title_natural'. Each key sorts ascending by default, but may be reversed with the 'desc' modifier. Example usage: ?orderBy=folder,modifiedDate desc,title. Please note that there is a current limitation for users with approximately one million files in which the requested sort order is ignored.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Page token for files.", - "location": "query" - }, - "projection": { - "type": "string", - "description": "This parameter is deprecated and has no function.", - "enum": [ - "BASIC", - "FULL" - ], - "enumDescriptions": [ - "Deprecated", - "Deprecated" - ], - "location": "query" - }, - "q": { - "type": "string", - "description": "Query string for searching files.", - "location": "query" - }, - "spaces": { - "type": "string", - "description": "A comma-separated list of spaces to query. Supported values are 'drive', 'appDataFolder' and 'photos'.", - "location": "query" - }, - "supportsTeamDrives": { - "type": "boolean", - "description": "Whether the requesting application supports Team Drives.", - "default": "false", - "location": "query" - }, - "teamDriveId": { - "type": "string", - "description": "ID of Team Drive to search.", - "location": "query" - } - }, - "response": { - "$ref": "FileList" - }, - "scopes": [ - "https://www.googleapis.com/auth/drive", - "https://www.googleapis.com/auth/drive.appdata", - "https://www.googleapis.com/auth/drive.apps.readonly", - "https://www.googleapis.com/auth/drive.file", - "https://www.googleapis.com/auth/drive.metadata", - "https://www.googleapis.com/auth/drive.metadata.readonly", - "https://www.googleapis.com/auth/drive.photos.readonly", - "https://www.googleapis.com/auth/drive.readonly" - ] - }, - "patch": { - "id": "drive.files.patch", - "path": "files/{fileId}", - "httpMethod": "PATCH", - "description": "Updates file metadata and/or content. This method supports patch semantics.", - "parameters": { - "addParents": { - "type": "string", - "description": "Comma-separated list of parent IDs to add.", - "location": "query" - }, - "convert": { - "type": "boolean", - "description": "This parameter is deprecated and has no function.", - "default": "false", - "location": "query" - }, - "fileId": { - "type": "string", - "description": "The ID of the file to update.", - "required": true, - "location": "path" - }, - "modifiedDateBehavior": { - "type": "string", - "description": "Determines the behavior in which modifiedDate is updated. This overrides setModifiedDate.", - "enum": [ - "fromBody", - "fromBodyIfNeeded", - "fromBodyOrNow", - "noChange", - "now", - "nowIfNeeded" - ], - "enumDescriptions": [ - "Set modifiedDate to the value provided in the body of the request. No change if no value was provided.", - "Set modifiedDate to the value provided in the body of the request depending on other contents of the update.", - "Set modifiedDate to the value provided in the body of the request, or to the current time if no value was provided.", - "Maintain the previous value of modifiedDate.", - "Set modifiedDate to the current time.", - "Set modifiedDate to the current time depending on contents of the update." - ], - "location": "query" - }, - "newRevision": { - "type": "boolean", - "description": "Whether a blob upload should create a new revision. If false, the blob data in the current head revision is replaced. If true or not set, a new blob is created as head revision, and previous unpinned revisions are preserved for a short period of time. Pinned revisions are stored indefinitely, using additional storage quota, up to a maximum of 200 revisions. For details on how revisions are retained, see the Drive Help Center.", - "default": "true", - "location": "query" - }, - "ocr": { - "type": "boolean", - "description": "Whether to attempt OCR on .jpg, .png, .gif, or .pdf uploads.", - "default": "false", - "location": "query" - }, - "ocrLanguage": { - "type": "string", - "description": "If ocr is true, hints at the language to use. Valid values are BCP 47 codes.", - "location": "query" - }, - "pinned": { - "type": "boolean", - "description": "Whether to pin the new revision. A file can have a maximum of 200 pinned revisions.", - "default": "false", - "location": "query" - }, - "removeParents": { - "type": "string", - "description": "Comma-separated list of parent IDs to remove.", - "location": "query" - }, - "setModifiedDate": { - "type": "boolean", - "description": "Whether to set the modified date using the value supplied in the request body. Setting this field to true is equivalent to modifiedDateBehavior=fromBodyOrNow, and false is equivalent to modifiedDateBehavior=now. To prevent any changes to the modified date set modifiedDateBehavior=noChange.", - "default": "false", - "location": "query" - }, - "supportsTeamDrives": { - "type": "boolean", - "description": "Whether the requesting application supports Team Drives.", - "default": "false", - "location": "query" - }, - "timedTextLanguage": { - "type": "string", - "description": "The language of the timed text.", - "location": "query" - }, - "timedTextTrackName": { - "type": "string", - "description": "The timed text track name.", - "location": "query" - }, - "updateViewedDate": { - "type": "boolean", - "description": "Whether to update the view date after successfully updating the file.", - "default": "true", - "location": "query" - }, - "useContentAsIndexableText": { - "type": "boolean", - "description": "Whether to use the content as indexable text.", - "default": "false", - "location": "query" - } - }, - "parameterOrder": [ - "fileId" - ], - "request": { - "$ref": "File" - }, - "response": { - "$ref": "File" - }, - "scopes": [ - "https://www.googleapis.com/auth/drive", - "https://www.googleapis.com/auth/drive.appdata", - "https://www.googleapis.com/auth/drive.apps.readonly", - "https://www.googleapis.com/auth/drive.file", - "https://www.googleapis.com/auth/drive.metadata", - "https://www.googleapis.com/auth/drive.scripts" - ] - }, - "touch": { - "id": "drive.files.touch", - "path": "files/{fileId}/touch", - "httpMethod": "POST", - "description": "Set the file's updated time to the current server time.", - "parameters": { - "fileId": { - "type": "string", - "description": "The ID of the file to update.", - "required": true, - "location": "path" - }, - "supportsTeamDrives": { - "type": "boolean", - "description": "Whether the requesting application supports Team Drives.", - "default": "false", - "location": "query" - } - }, - "parameterOrder": [ - "fileId" - ], - "response": { - "$ref": "File" - }, - "scopes": [ - "https://www.googleapis.com/auth/drive", - "https://www.googleapis.com/auth/drive.appdata", - "https://www.googleapis.com/auth/drive.apps.readonly", - "https://www.googleapis.com/auth/drive.file", - "https://www.googleapis.com/auth/drive.metadata" - ] - }, - "trash": { - "id": "drive.files.trash", - "path": "files/{fileId}/trash", - "httpMethod": "POST", - "description": "Moves a file to the trash. The currently authenticated user must own the file or be an organizer on the parent for Team Drive files.", - "parameters": { - "fileId": { - "type": "string", - "description": "The ID of the file to trash.", - "required": true, - "location": "path" - }, - "supportsTeamDrives": { - "type": "boolean", - "description": "Whether the requesting application supports Team Drives.", - "default": "false", - "location": "query" - } - }, - "parameterOrder": [ - "fileId" - ], - "response": { - "$ref": "File" - }, - "scopes": [ - "https://www.googleapis.com/auth/drive", - "https://www.googleapis.com/auth/drive.appdata", - "https://www.googleapis.com/auth/drive.apps.readonly", - "https://www.googleapis.com/auth/drive.file" - ] - }, - "untrash": { - "id": "drive.files.untrash", - "path": "files/{fileId}/untrash", - "httpMethod": "POST", - "description": "Restores a file from the trash.", - "parameters": { - "fileId": { - "type": "string", - "description": "The ID of the file to untrash.", - "required": true, - "location": "path" - }, - "supportsTeamDrives": { - "type": "boolean", - "description": "Whether the requesting application supports Team Drives.", - "default": "false", - "location": "query" - } - }, - "parameterOrder": [ - "fileId" - ], - "response": { - "$ref": "File" - }, - "scopes": [ - "https://www.googleapis.com/auth/drive", - "https://www.googleapis.com/auth/drive.appdata", - "https://www.googleapis.com/auth/drive.apps.readonly", - "https://www.googleapis.com/auth/drive.file" - ] - }, - "update": { - "id": "drive.files.update", - "path": "files/{fileId}", - "httpMethod": "PUT", - "description": "Updates file metadata and/or content.", - "parameters": { - "addParents": { - "type": "string", - "description": "Comma-separated list of parent IDs to add.", - "location": "query" - }, - "convert": { - "type": "boolean", - "description": "This parameter is deprecated and has no function.", - "default": "false", - "location": "query" - }, - "fileId": { - "type": "string", - "description": "The ID of the file to update.", - "required": true, - "location": "path" - }, - "modifiedDateBehavior": { - "type": "string", - "description": "Determines the behavior in which modifiedDate is updated. This overrides setModifiedDate.", - "enum": [ - "fromBody", - "fromBodyIfNeeded", - "fromBodyOrNow", - "noChange", - "now", - "nowIfNeeded" - ], - "enumDescriptions": [ - "Set modifiedDate to the value provided in the body of the request. No change if no value was provided.", - "Set modifiedDate to the value provided in the body of the request depending on other contents of the update.", - "Set modifiedDate to the value provided in the body of the request, or to the current time if no value was provided.", - "Maintain the previous value of modifiedDate.", - "Set modifiedDate to the current time.", - "Set modifiedDate to the current time depending on contents of the update." - ], - "location": "query" - }, - "newRevision": { - "type": "boolean", - "description": "Whether a blob upload should create a new revision. If false, the blob data in the current head revision is replaced. If true or not set, a new blob is created as head revision, and previous unpinned revisions are preserved for a short period of time. Pinned revisions are stored indefinitely, using additional storage quota, up to a maximum of 200 revisions. For details on how revisions are retained, see the Drive Help Center.", - "default": "true", - "location": "query" - }, - "ocr": { - "type": "boolean", - "description": "Whether to attempt OCR on .jpg, .png, .gif, or .pdf uploads.", - "default": "false", - "location": "query" - }, - "ocrLanguage": { - "type": "string", - "description": "If ocr is true, hints at the language to use. Valid values are BCP 47 codes.", - "location": "query" - }, - "pinned": { - "type": "boolean", - "description": "Whether to pin the new revision. A file can have a maximum of 200 pinned revisions.", - "default": "false", - "location": "query" - }, - "removeParents": { - "type": "string", - "description": "Comma-separated list of parent IDs to remove.", - "location": "query" - }, - "setModifiedDate": { - "type": "boolean", - "description": "Whether to set the modified date using the value supplied in the request body. Setting this field to true is equivalent to modifiedDateBehavior=fromBodyOrNow, and false is equivalent to modifiedDateBehavior=now. To prevent any changes to the modified date set modifiedDateBehavior=noChange.", - "default": "false", - "location": "query" - }, - "supportsTeamDrives": { - "type": "boolean", - "description": "Whether the requesting application supports Team Drives.", - "default": "false", - "location": "query" - }, - "timedTextLanguage": { - "type": "string", - "description": "The language of the timed text.", - "location": "query" - }, - "timedTextTrackName": { - "type": "string", - "description": "The timed text track name.", - "location": "query" - }, - "updateViewedDate": { - "type": "boolean", - "description": "Whether to update the view date after successfully updating the file.", - "default": "true", - "location": "query" - }, - "useContentAsIndexableText": { - "type": "boolean", - "description": "Whether to use the content as indexable text.", - "default": "false", - "location": "query" - } - }, - "parameterOrder": [ - "fileId" - ], - "request": { - "$ref": "File" - }, - "response": { - "$ref": "File" - }, - "scopes": [ - "https://www.googleapis.com/auth/drive", - "https://www.googleapis.com/auth/drive.appdata", - "https://www.googleapis.com/auth/drive.apps.readonly", - "https://www.googleapis.com/auth/drive.file", - "https://www.googleapis.com/auth/drive.metadata", - "https://www.googleapis.com/auth/drive.scripts" - ], - "supportsMediaUpload": true, - "mediaUpload": { - "accept": [ - "*/*" - ], - "maxSize": "5120GB", - "protocols": { - "simple": { - "multipart": true, - "path": "/upload/drive/v2/files/{fileId}" - }, - "resumable": { - "multipart": true, - "path": "/resumable/upload/drive/v2/files/{fileId}" - } - } - } - }, - "watch": { - "id": "drive.files.watch", - "path": "files/{fileId}/watch", - "httpMethod": "POST", - "description": "Subscribe to changes on a file", - "parameters": { - "acknowledgeAbuse": { - "type": "boolean", - "description": "Whether the user is acknowledging the risk of downloading known malware or other abusive files.", - "default": "false", - "location": "query" - }, - "fileId": { - "type": "string", - "description": "The ID for the file in question.", - "required": true, - "location": "path" - }, - "projection": { - "type": "string", - "description": "This parameter is deprecated and has no function.", - "enum": [ - "BASIC", - "FULL" - ], - "enumDescriptions": [ - "Deprecated", - "Deprecated" - ], - "location": "query" - }, - "revisionId": { - "type": "string", - "description": "Specifies the Revision ID that should be downloaded. Ignored unless alt=media is specified.", - "location": "query" - }, - "supportsTeamDrives": { - "type": "boolean", - "description": "Whether the requesting application supports Team Drives.", - "default": "false", - "location": "query" - }, - "updateViewedDate": { - "type": "boolean", - "description": "Deprecated: Use files.update with modifiedDateBehavior=noChange, updateViewedDate=true and an empty request body.", - "default": "false", - "location": "query" - } - }, - "parameterOrder": [ - "fileId" - ], - "request": { - "$ref": "Channel", - "parameterName": "resource" - }, - "response": { - "$ref": "Channel" - }, - "scopes": [ - "https://www.googleapis.com/auth/drive", - "https://www.googleapis.com/auth/drive.appdata", - "https://www.googleapis.com/auth/drive.file", - "https://www.googleapis.com/auth/drive.metadata", - "https://www.googleapis.com/auth/drive.metadata.readonly", - "https://www.googleapis.com/auth/drive.photos.readonly", - "https://www.googleapis.com/auth/drive.readonly" - ], - "supportsMediaDownload": true, - "useMediaDownloadService": true, - "supportsSubscription": true - } - } - }, - "parents": { - "methods": { - "delete": { - "id": "drive.parents.delete", - "path": "files/{fileId}/parents/{parentId}", - "httpMethod": "DELETE", - "description": "Removes a parent from a file.", - "parameters": { - "fileId": { - "type": "string", - "description": "The ID of the file.", - "required": true, - "location": "path" - }, - "parentId": { - "type": "string", - "description": "The ID of the parent.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "fileId", - "parentId" - ], - "scopes": [ - "https://www.googleapis.com/auth/drive", - "https://www.googleapis.com/auth/drive.file" - ] - }, - "get": { - "id": "drive.parents.get", - "path": "files/{fileId}/parents/{parentId}", - "httpMethod": "GET", - "description": "Gets a specific parent reference.", - "parameters": { - "fileId": { - "type": "string", - "description": "The ID of the file.", - "required": true, - "location": "path" - }, - "parentId": { - "type": "string", - "description": "The ID of the parent.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "fileId", - "parentId" - ], - "response": { - "$ref": "ParentReference" - }, - "scopes": [ - "https://www.googleapis.com/auth/drive", - "https://www.googleapis.com/auth/drive.appdata", - "https://www.googleapis.com/auth/drive.file", - "https://www.googleapis.com/auth/drive.metadata", - "https://www.googleapis.com/auth/drive.metadata.readonly", - "https://www.googleapis.com/auth/drive.photos.readonly", - "https://www.googleapis.com/auth/drive.readonly" - ] - }, - "insert": { - "id": "drive.parents.insert", - "path": "files/{fileId}/parents", - "httpMethod": "POST", - "description": "Adds a parent folder for a file.", - "parameters": { - "fileId": { - "type": "string", - "description": "The ID of the file.", - "required": true, - "location": "path" - }, - "supportsTeamDrives": { - "type": "boolean", - "description": "Whether the requesting application supports Team Drives.", - "default": "false", - "location": "query" - } - }, - "parameterOrder": [ - "fileId" - ], - "request": { - "$ref": "ParentReference" - }, - "response": { - "$ref": "ParentReference" - }, - "scopes": [ - "https://www.googleapis.com/auth/drive", - "https://www.googleapis.com/auth/drive.appdata", - "https://www.googleapis.com/auth/drive.file" - ] - }, - "list": { - "id": "drive.parents.list", - "path": "files/{fileId}/parents", - "httpMethod": "GET", - "description": "Lists a file's parents.", - "parameters": { - "fileId": { - "type": "string", - "description": "The ID of the file.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "fileId" - ], - "response": { - "$ref": "ParentList" - }, - "scopes": [ - "https://www.googleapis.com/auth/drive", - "https://www.googleapis.com/auth/drive.appdata", - "https://www.googleapis.com/auth/drive.file", - "https://www.googleapis.com/auth/drive.metadata", - "https://www.googleapis.com/auth/drive.metadata.readonly", - "https://www.googleapis.com/auth/drive.photos.readonly", - "https://www.googleapis.com/auth/drive.readonly" - ] - } - } - }, - "permissions": { - "methods": { - "delete": { - "id": "drive.permissions.delete", - "path": "files/{fileId}/permissions/{permissionId}", - "httpMethod": "DELETE", - "description": "Deletes a permission from a file or Team Drive.", - "parameters": { - "fileId": { - "type": "string", - "description": "The ID for the file or Team Drive.", - "required": true, - "location": "path" - }, - "permissionId": { - "type": "string", - "description": "The ID for the permission.", - "required": true, - "location": "path" - }, - "supportsTeamDrives": { - "type": "boolean", - "description": "Whether the requesting application supports Team Drives.", - "default": "false", - "location": "query" - }, - "useDomainAdminAccess": { - "type": "boolean", - "description": "Whether the request should be treated as if it was issued by a domain administrator; if set to true, then the requester will be granted access if they are an administrator of the domain to which the item belongs.", - "default": "false", - "location": "query" - } - }, - "parameterOrder": [ - "fileId", - "permissionId" - ], - "scopes": [ - "https://www.googleapis.com/auth/drive", - "https://www.googleapis.com/auth/drive.file" - ] - }, - "get": { - "id": "drive.permissions.get", - "path": "files/{fileId}/permissions/{permissionId}", - "httpMethod": "GET", - "description": "Gets a permission by ID.", - "parameters": { - "fileId": { - "type": "string", - "description": "The ID for the file or Team Drive.", - "required": true, - "location": "path" - }, - "permissionId": { - "type": "string", - "description": "The ID for the permission.", - "required": true, - "location": "path" - }, - "supportsTeamDrives": { - "type": "boolean", - "description": "Whether the requesting application supports Team Drives.", - "default": "false", - "location": "query" - }, - "useDomainAdminAccess": { - "type": "boolean", - "description": "Whether the request should be treated as if it was issued by a domain administrator; if set to true, then the requester will be granted access if they are an administrator of the domain to which the item belongs.", - "default": "false", - "location": "query" - } - }, - "parameterOrder": [ - "fileId", - "permissionId" - ], - "response": { - "$ref": "Permission" - }, - "scopes": [ - "https://www.googleapis.com/auth/drive", - "https://www.googleapis.com/auth/drive.file", - "https://www.googleapis.com/auth/drive.metadata", - "https://www.googleapis.com/auth/drive.metadata.readonly", - "https://www.googleapis.com/auth/drive.photos.readonly", - "https://www.googleapis.com/auth/drive.readonly" - ] - }, - "getIdForEmail": { - "id": "drive.permissions.getIdForEmail", - "path": "permissionIds/{email}", - "httpMethod": "GET", - "description": "Returns the permission ID for an email address.", - "parameters": { - "email": { - "type": "string", - "description": "The email address for which to return a permission ID", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "email" - ], - "response": { - "$ref": "PermissionId" - }, - "scopes": [ - "https://www.googleapis.com/auth/drive", - "https://www.googleapis.com/auth/drive.appdata", - "https://www.googleapis.com/auth/drive.apps.readonly", - "https://www.googleapis.com/auth/drive.file", - "https://www.googleapis.com/auth/drive.metadata", - "https://www.googleapis.com/auth/drive.metadata.readonly", - "https://www.googleapis.com/auth/drive.photos.readonly", - "https://www.googleapis.com/auth/drive.readonly" - ] - }, - "insert": { - "id": "drive.permissions.insert", - "path": "files/{fileId}/permissions", - "httpMethod": "POST", - "description": "Inserts a permission for a file or Team Drive.", - "parameters": { - "emailMessage": { - "type": "string", - "description": "A plain text custom message to include in notification emails.", - "location": "query" - }, - "fileId": { - "type": "string", - "description": "The ID for the file or Team Drive.", - "required": true, - "location": "path" - }, - "sendNotificationEmails": { - "type": "boolean", - "description": "Whether to send notification emails when sharing to users or groups. This parameter is ignored and an email is sent if the role is owner.", - "default": "true", - "location": "query" - }, - "supportsTeamDrives": { - "type": "boolean", - "description": "Whether the requesting application supports Team Drives.", - "default": "false", - "location": "query" - }, - "useDomainAdminAccess": { - "type": "boolean", - "description": "Whether the request should be treated as if it was issued by a domain administrator; if set to true, then the requester will be granted access if they are an administrator of the domain to which the item belongs.", - "default": "false", - "location": "query" - } - }, - "parameterOrder": [ - "fileId" - ], - "request": { - "$ref": "Permission" - }, - "response": { - "$ref": "Permission" - }, - "scopes": [ - "https://www.googleapis.com/auth/drive", - "https://www.googleapis.com/auth/drive.file" - ] - }, - "list": { - "id": "drive.permissions.list", - "path": "files/{fileId}/permissions", - "httpMethod": "GET", - "description": "Lists a file's or Team Drive's permissions.", - "parameters": { - "fileId": { - "type": "string", - "description": "The ID for the file or Team Drive.", - "required": true, - "location": "path" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of permissions to return per page. When not set for files in a Team Drive, at most 100 results will be returned. When not set for files that are not in a Team Drive, the entire list will be returned.", - "format": "int32", - "minimum": "1", - "maximum": "100", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "The token for continuing a previous list request on the next page. This should be set to the value of 'nextPageToken' from the previous response.", - "location": "query" - }, - "supportsTeamDrives": { - "type": "boolean", - "description": "Whether the requesting application supports Team Drives.", - "default": "false", - "location": "query" - }, - "useDomainAdminAccess": { - "type": "boolean", - "description": "Whether the request should be treated as if it was issued by a domain administrator; if set to true, then the requester will be granted access if they are an administrator of the domain to which the item belongs.", - "default": "false", - "location": "query" - } - }, - "parameterOrder": [ - "fileId" - ], - "response": { - "$ref": "PermissionList" - }, - "scopes": [ - "https://www.googleapis.com/auth/drive", - "https://www.googleapis.com/auth/drive.file", - "https://www.googleapis.com/auth/drive.metadata", - "https://www.googleapis.com/auth/drive.metadata.readonly", - "https://www.googleapis.com/auth/drive.photos.readonly", - "https://www.googleapis.com/auth/drive.readonly" - ] - }, - "patch": { - "id": "drive.permissions.patch", - "path": "files/{fileId}/permissions/{permissionId}", - "httpMethod": "PATCH", - "description": "Updates a permission using patch semantics.", - "parameters": { - "fileId": { - "type": "string", - "description": "The ID for the file or Team Drive.", - "required": true, - "location": "path" - }, - "permissionId": { - "type": "string", - "description": "The ID for the permission.", - "required": true, - "location": "path" - }, - "removeExpiration": { - "type": "boolean", - "description": "Whether to remove the expiration date.", - "default": "false", - "location": "query" - }, - "supportsTeamDrives": { - "type": "boolean", - "description": "Whether the requesting application supports Team Drives.", - "default": "false", - "location": "query" - }, - "transferOwnership": { - "type": "boolean", - "description": "Whether changing a role to 'owner' downgrades the current owners to writers. Does nothing if the specified role is not 'owner'.", - "default": "false", - "location": "query" - }, - "useDomainAdminAccess": { - "type": "boolean", - "description": "Whether the request should be treated as if it was issued by a domain administrator; if set to true, then the requester will be granted access if they are an administrator of the domain to which the item belongs.", - "default": "false", - "location": "query" - } - }, - "parameterOrder": [ - "fileId", - "permissionId" - ], - "request": { - "$ref": "Permission" - }, - "response": { - "$ref": "Permission" - }, - "scopes": [ - "https://www.googleapis.com/auth/drive", - "https://www.googleapis.com/auth/drive.file" - ] - }, - "update": { - "id": "drive.permissions.update", - "path": "files/{fileId}/permissions/{permissionId}", - "httpMethod": "PUT", - "description": "Updates a permission.", - "parameters": { - "fileId": { - "type": "string", - "description": "The ID for the file or Team Drive.", - "required": true, - "location": "path" - }, - "permissionId": { - "type": "string", - "description": "The ID for the permission.", - "required": true, - "location": "path" - }, - "removeExpiration": { - "type": "boolean", - "description": "Whether to remove the expiration date.", - "default": "false", - "location": "query" - }, - "supportsTeamDrives": { - "type": "boolean", - "description": "Whether the requesting application supports Team Drives.", - "default": "false", - "location": "query" - }, - "transferOwnership": { - "type": "boolean", - "description": "Whether changing a role to 'owner' downgrades the current owners to writers. Does nothing if the specified role is not 'owner'.", - "default": "false", - "location": "query" - }, - "useDomainAdminAccess": { - "type": "boolean", - "description": "Whether the request should be treated as if it was issued by a domain administrator; if set to true, then the requester will be granted access if they are an administrator of the domain to which the item belongs.", - "default": "false", - "location": "query" - } - }, - "parameterOrder": [ - "fileId", - "permissionId" - ], - "request": { - "$ref": "Permission" - }, - "response": { - "$ref": "Permission" - }, - "scopes": [ - "https://www.googleapis.com/auth/drive", - "https://www.googleapis.com/auth/drive.file" - ] - } - } - }, - "properties": { - "methods": { - "delete": { - "id": "drive.properties.delete", - "path": "files/{fileId}/properties/{propertyKey}", - "httpMethod": "DELETE", - "description": "Deletes a property.", - "parameters": { - "fileId": { - "type": "string", - "description": "The ID of the file.", - "required": true, - "location": "path" - }, - "propertyKey": { - "type": "string", - "description": "The key of the property.", - "required": true, - "location": "path" - }, - "visibility": { - "type": "string", - "description": "The visibility of the property.", - "default": "private", - "location": "query" - } - }, - "parameterOrder": [ - "fileId", - "propertyKey" - ], - "scopes": [ - "https://www.googleapis.com/auth/drive", - "https://www.googleapis.com/auth/drive.appdata", - "https://www.googleapis.com/auth/drive.file", - "https://www.googleapis.com/auth/drive.metadata" - ] - }, - "get": { - "id": "drive.properties.get", - "path": "files/{fileId}/properties/{propertyKey}", - "httpMethod": "GET", - "description": "Gets a property by its key.", - "parameters": { - "fileId": { - "type": "string", - "description": "The ID of the file.", - "required": true, - "location": "path" - }, - "propertyKey": { - "type": "string", - "description": "The key of the property.", - "required": true, - "location": "path" - }, - "visibility": { - "type": "string", - "description": "The visibility of the property.", - "default": "private", - "location": "query" - } - }, - "parameterOrder": [ - "fileId", - "propertyKey" - ], - "response": { - "$ref": "Property" - }, - "scopes": [ - "https://www.googleapis.com/auth/drive", - "https://www.googleapis.com/auth/drive.appdata", - "https://www.googleapis.com/auth/drive.file", - "https://www.googleapis.com/auth/drive.metadata", - "https://www.googleapis.com/auth/drive.metadata.readonly", - "https://www.googleapis.com/auth/drive.photos.readonly", - "https://www.googleapis.com/auth/drive.readonly" - ] - }, - "insert": { - "id": "drive.properties.insert", - "path": "files/{fileId}/properties", - "httpMethod": "POST", - "description": "Adds a property to a file, or updates it if it already exists.", - "parameters": { - "fileId": { - "type": "string", - "description": "The ID of the file.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "fileId" - ], - "request": { - "$ref": "Property" - }, - "response": { - "$ref": "Property" - }, - "scopes": [ - "https://www.googleapis.com/auth/drive", - "https://www.googleapis.com/auth/drive.appdata", - "https://www.googleapis.com/auth/drive.file", - "https://www.googleapis.com/auth/drive.metadata" - ] - }, - "list": { - "id": "drive.properties.list", - "path": "files/{fileId}/properties", - "httpMethod": "GET", - "description": "Lists a file's properties.", - "parameters": { - "fileId": { - "type": "string", - "description": "The ID of the file.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "fileId" - ], - "response": { - "$ref": "PropertyList" - }, - "scopes": [ - "https://www.googleapis.com/auth/drive", - "https://www.googleapis.com/auth/drive.appdata", - "https://www.googleapis.com/auth/drive.file", - "https://www.googleapis.com/auth/drive.metadata", - "https://www.googleapis.com/auth/drive.metadata.readonly", - "https://www.googleapis.com/auth/drive.photos.readonly", - "https://www.googleapis.com/auth/drive.readonly" - ] - }, - "patch": { - "id": "drive.properties.patch", - "path": "files/{fileId}/properties/{propertyKey}", - "httpMethod": "PATCH", - "description": "Updates a property, or adds it if it doesn't exist. This method supports patch semantics.", - "parameters": { - "fileId": { - "type": "string", - "description": "The ID of the file.", - "required": true, - "location": "path" - }, - "propertyKey": { - "type": "string", - "description": "The key of the property.", - "required": true, - "location": "path" - }, - "visibility": { - "type": "string", - "description": "The visibility of the property.", - "default": "private", - "location": "query" - } - }, - "parameterOrder": [ - "fileId", - "propertyKey" - ], - "request": { - "$ref": "Property" - }, - "response": { - "$ref": "Property" - }, - "scopes": [ - "https://www.googleapis.com/auth/drive", - "https://www.googleapis.com/auth/drive.appdata", - "https://www.googleapis.com/auth/drive.file", - "https://www.googleapis.com/auth/drive.metadata" - ] - }, - "update": { - "id": "drive.properties.update", - "path": "files/{fileId}/properties/{propertyKey}", - "httpMethod": "PUT", - "description": "Updates a property, or adds it if it doesn't exist.", - "parameters": { - "fileId": { - "type": "string", - "description": "The ID of the file.", - "required": true, - "location": "path" - }, - "propertyKey": { - "type": "string", - "description": "The key of the property.", - "required": true, - "location": "path" - }, - "visibility": { - "type": "string", - "description": "The visibility of the property.", - "default": "private", - "location": "query" - } - }, - "parameterOrder": [ - "fileId", - "propertyKey" - ], - "request": { - "$ref": "Property" - }, - "response": { - "$ref": "Property" - }, - "scopes": [ - "https://www.googleapis.com/auth/drive", - "https://www.googleapis.com/auth/drive.appdata", - "https://www.googleapis.com/auth/drive.file", - "https://www.googleapis.com/auth/drive.metadata" - ] - } - } - }, - "realtime": { - "methods": { - "get": { - "id": "drive.realtime.get", - "path": "files/{fileId}/realtime", - "httpMethod": "GET", - "description": "Exports the contents of the Realtime API data model associated with this file as JSON.", - "parameters": { - "fileId": { - "type": "string", - "description": "The ID of the file that the Realtime API data model is associated with.", - "required": true, - "location": "path" - }, - "revision": { - "type": "integer", - "description": "The revision of the Realtime API data model to export. Revisions start at 1 (the initial empty data model) and are incremented with each change. If this parameter is excluded, the most recent data model will be returned.", - "format": "int32", - "minimum": "1", - "location": "query" - } - }, - "parameterOrder": [ - "fileId" - ], - "scopes": [ - "https://www.googleapis.com/auth/drive", - "https://www.googleapis.com/auth/drive.file", - "https://www.googleapis.com/auth/drive.readonly" - ], - "supportsMediaDownload": true - }, - "update": { - "id": "drive.realtime.update", - "path": "files/{fileId}/realtime", - "httpMethod": "PUT", - "description": "Overwrites the Realtime API data model associated with this file with the provided JSON data model.", - "parameters": { - "baseRevision": { - "type": "string", - "description": "The revision of the model to diff the uploaded model against. If set, the uploaded model is diffed against the provided revision and those differences are merged with any changes made to the model after the provided revision. If not set, the uploaded model replaces the current model on the server.", - "location": "query" - }, - "fileId": { - "type": "string", - "description": "The ID of the file that the Realtime API data model is associated with.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "fileId" - ], - "scopes": [ - "https://www.googleapis.com/auth/drive", - "https://www.googleapis.com/auth/drive.file" - ], - "supportsMediaUpload": true, - "mediaUpload": { - "accept": [ - "*/*" - ], - "maxSize": "10MB", - "protocols": { - "simple": { - "multipart": true, - "path": "/upload/drive/v2/files/{fileId}/realtime" - }, - "resumable": { - "multipart": true, - "path": "/resumable/upload/drive/v2/files/{fileId}/realtime" - } - } - } - } - } - }, - "replies": { - "methods": { - "delete": { - "id": "drive.replies.delete", - "path": "files/{fileId}/comments/{commentId}/replies/{replyId}", - "httpMethod": "DELETE", - "description": "Deletes a reply.", - "parameters": { - "commentId": { - "type": "string", - "description": "The ID of the comment.", - "required": true, - "location": "path" - }, - "fileId": { - "type": "string", - "description": "The ID of the file.", - "required": true, - "location": "path" - }, - "replyId": { - "type": "string", - "description": "The ID of the reply.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "fileId", - "commentId", - "replyId" - ], - "scopes": [ - "https://www.googleapis.com/auth/drive", - "https://www.googleapis.com/auth/drive.file" - ] - }, - "get": { - "id": "drive.replies.get", - "path": "files/{fileId}/comments/{commentId}/replies/{replyId}", - "httpMethod": "GET", - "description": "Gets a reply.", - "parameters": { - "commentId": { - "type": "string", - "description": "The ID of the comment.", - "required": true, - "location": "path" - }, - "fileId": { - "type": "string", - "description": "The ID of the file.", - "required": true, - "location": "path" - }, - "includeDeleted": { - "type": "boolean", - "description": "If set, this will succeed when retrieving a deleted reply.", - "default": "false", - "location": "query" - }, - "replyId": { - "type": "string", - "description": "The ID of the reply.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "fileId", - "commentId", - "replyId" - ], - "response": { - "$ref": "CommentReply" - }, - "scopes": [ - "https://www.googleapis.com/auth/drive", - "https://www.googleapis.com/auth/drive.file", - "https://www.googleapis.com/auth/drive.readonly" - ] - }, - "insert": { - "id": "drive.replies.insert", - "path": "files/{fileId}/comments/{commentId}/replies", - "httpMethod": "POST", - "description": "Creates a new reply to the given comment.", - "parameters": { - "commentId": { - "type": "string", - "description": "The ID of the comment.", - "required": true, - "location": "path" - }, - "fileId": { - "type": "string", - "description": "The ID of the file.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "fileId", - "commentId" - ], - "request": { - "$ref": "CommentReply" - }, - "response": { - "$ref": "CommentReply" - }, - "scopes": [ - "https://www.googleapis.com/auth/drive", - "https://www.googleapis.com/auth/drive.file" - ] - }, - "list": { - "id": "drive.replies.list", - "path": "files/{fileId}/comments/{commentId}/replies", - "httpMethod": "GET", - "description": "Lists all of the replies to a comment.", - "parameters": { - "commentId": { - "type": "string", - "description": "The ID of the comment.", - "required": true, - "location": "path" - }, - "fileId": { - "type": "string", - "description": "The ID of the file.", - "required": true, - "location": "path" - }, - "includeDeleted": { - "type": "boolean", - "description": "If set, all replies, including deleted replies (with content stripped) will be returned.", - "default": "false", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of replies to include in the response, used for paging.", - "default": "20", - "format": "int32", - "minimum": "0", - "maximum": "100", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "The continuation token, used to page through large result sets. To get the next page of results, set this parameter to the value of \"nextPageToken\" from the previous response.", - "location": "query" - } - }, - "parameterOrder": [ - "fileId", - "commentId" - ], - "response": { - "$ref": "CommentReplyList" - }, - "scopes": [ - "https://www.googleapis.com/auth/drive", - "https://www.googleapis.com/auth/drive.file", - "https://www.googleapis.com/auth/drive.readonly" - ] - }, - "patch": { - "id": "drive.replies.patch", - "path": "files/{fileId}/comments/{commentId}/replies/{replyId}", - "httpMethod": "PATCH", - "description": "Updates an existing reply. This method supports patch semantics.", - "parameters": { - "commentId": { - "type": "string", - "description": "The ID of the comment.", - "required": true, - "location": "path" - }, - "fileId": { - "type": "string", - "description": "The ID of the file.", - "required": true, - "location": "path" - }, - "replyId": { - "type": "string", - "description": "The ID of the reply.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "fileId", - "commentId", - "replyId" - ], - "request": { - "$ref": "CommentReply" - }, - "response": { - "$ref": "CommentReply" - }, - "scopes": [ - "https://www.googleapis.com/auth/drive", - "https://www.googleapis.com/auth/drive.file" - ] - }, - "update": { - "id": "drive.replies.update", - "path": "files/{fileId}/comments/{commentId}/replies/{replyId}", - "httpMethod": "PUT", - "description": "Updates an existing reply.", - "parameters": { - "commentId": { - "type": "string", - "description": "The ID of the comment.", - "required": true, - "location": "path" - }, - "fileId": { - "type": "string", - "description": "The ID of the file.", - "required": true, - "location": "path" - }, - "replyId": { - "type": "string", - "description": "The ID of the reply.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "fileId", - "commentId", - "replyId" - ], - "request": { - "$ref": "CommentReply" - }, - "response": { - "$ref": "CommentReply" - }, - "scopes": [ - "https://www.googleapis.com/auth/drive", - "https://www.googleapis.com/auth/drive.file" - ] - } - } - }, - "revisions": { - "methods": { - "delete": { - "id": "drive.revisions.delete", - "path": "files/{fileId}/revisions/{revisionId}", - "httpMethod": "DELETE", - "description": "Removes a revision.", - "parameters": { - "fileId": { - "type": "string", - "description": "The ID of the file.", - "required": true, - "location": "path" - }, - "revisionId": { - "type": "string", - "description": "The ID of the revision.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "fileId", - "revisionId" - ], - "scopes": [ - "https://www.googleapis.com/auth/drive", - "https://www.googleapis.com/auth/drive.appdata", - "https://www.googleapis.com/auth/drive.file" - ] - }, - "get": { - "id": "drive.revisions.get", - "path": "files/{fileId}/revisions/{revisionId}", - "httpMethod": "GET", - "description": "Gets a specific revision.", - "parameters": { - "fileId": { - "type": "string", - "description": "The ID of the file.", - "required": true, - "location": "path" - }, - "revisionId": { - "type": "string", - "description": "The ID of the revision.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "fileId", - "revisionId" - ], - "response": { - "$ref": "Revision" - }, - "scopes": [ - "https://www.googleapis.com/auth/drive", - "https://www.googleapis.com/auth/drive.appdata", - "https://www.googleapis.com/auth/drive.file", - "https://www.googleapis.com/auth/drive.metadata", - "https://www.googleapis.com/auth/drive.metadata.readonly", - "https://www.googleapis.com/auth/drive.photos.readonly", - "https://www.googleapis.com/auth/drive.readonly" - ] - }, - "list": { - "id": "drive.revisions.list", - "path": "files/{fileId}/revisions", - "httpMethod": "GET", - "description": "Lists a file's revisions.", - "parameters": { - "fileId": { - "type": "string", - "description": "The ID of the file.", - "required": true, - "location": "path" - }, - "maxResults": { - "type": "integer", - "description": "Maximum number of revisions to return.", - "default": "200", - "format": "int32", - "minimum": "1", - "maximum": "1000", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Page token for revisions. To get the next page of results, set this parameter to the value of \"nextPageToken\" from the previous response.", - "location": "query" - } - }, - "parameterOrder": [ - "fileId" - ], - "response": { - "$ref": "RevisionList" - }, - "scopes": [ - "https://www.googleapis.com/auth/drive", - "https://www.googleapis.com/auth/drive.appdata", - "https://www.googleapis.com/auth/drive.file", - "https://www.googleapis.com/auth/drive.metadata", - "https://www.googleapis.com/auth/drive.metadata.readonly", - "https://www.googleapis.com/auth/drive.photos.readonly", - "https://www.googleapis.com/auth/drive.readonly" - ] - }, - "patch": { - "id": "drive.revisions.patch", - "path": "files/{fileId}/revisions/{revisionId}", - "httpMethod": "PATCH", - "description": "Updates a revision. This method supports patch semantics.", - "parameters": { - "fileId": { - "type": "string", - "description": "The ID for the file.", - "required": true, - "location": "path" - }, - "revisionId": { - "type": "string", - "description": "The ID for the revision.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "fileId", - "revisionId" - ], - "request": { - "$ref": "Revision" - }, - "response": { - "$ref": "Revision" - }, - "scopes": [ - "https://www.googleapis.com/auth/drive", - "https://www.googleapis.com/auth/drive.appdata", - "https://www.googleapis.com/auth/drive.file" - ] - }, - "update": { - "id": "drive.revisions.update", - "path": "files/{fileId}/revisions/{revisionId}", - "httpMethod": "PUT", - "description": "Updates a revision.", - "parameters": { - "fileId": { - "type": "string", - "description": "The ID for the file.", - "required": true, - "location": "path" - }, - "revisionId": { - "type": "string", - "description": "The ID for the revision.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "fileId", - "revisionId" - ], - "request": { - "$ref": "Revision" - }, - "response": { - "$ref": "Revision" - }, - "scopes": [ - "https://www.googleapis.com/auth/drive", - "https://www.googleapis.com/auth/drive.appdata", - "https://www.googleapis.com/auth/drive.file" - ] - } - } - }, - "teamdrives": { - "methods": { - "delete": { - "id": "drive.teamdrives.delete", - "path": "teamdrives/{teamDriveId}", - "httpMethod": "DELETE", - "description": "Permanently deletes a Team Drive for which the user is an organizer. The Team Drive cannot contain any untrashed items.", - "parameters": { - "teamDriveId": { - "type": "string", - "description": "The ID of the Team Drive", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "teamDriveId" - ], - "scopes": [ - "https://www.googleapis.com/auth/drive" - ] - }, - "get": { - "id": "drive.teamdrives.get", - "path": "teamdrives/{teamDriveId}", - "httpMethod": "GET", - "description": "Gets a Team Drive's metadata by ID.", - "parameters": { - "teamDriveId": { - "type": "string", - "description": "The ID of the Team Drive", - "required": true, - "location": "path" - }, - "useDomainAdminAccess": { - "type": "boolean", - "description": "Whether the request should be treated as if it was issued by a domain administrator; if set to true, then the requester will be granted access if they are an administrator of the domain to which the Team Drive belongs.", - "default": "false", - "location": "query" - } - }, - "parameterOrder": [ - "teamDriveId" - ], - "response": { - "$ref": "TeamDrive" - }, - "scopes": [ - "https://www.googleapis.com/auth/drive", - "https://www.googleapis.com/auth/drive.readonly" - ] - }, - "insert": { - "id": "drive.teamdrives.insert", - "path": "teamdrives", - "httpMethod": "POST", - "description": "Creates a new Team Drive.", - "parameters": { - "requestId": { - "type": "string", - "description": "An ID, such as a random UUID, which uniquely identifies this user's request for idempotent creation of a Team Drive. A repeated request by the same user and with the same request ID will avoid creating duplicates by attempting to create the same Team Drive. If the Team Drive already exists a 409 error will be returned.", - "required": true, - "location": "query" - } - }, - "parameterOrder": [ - "requestId" - ], - "request": { - "$ref": "TeamDrive" - }, - "response": { - "$ref": "TeamDrive" - }, - "scopes": [ - "https://www.googleapis.com/auth/drive" - ] - }, - "list": { - "id": "drive.teamdrives.list", - "path": "teamdrives", - "httpMethod": "GET", - "description": "Lists the user's Team Drives.", - "parameters": { - "maxResults": { - "type": "integer", - "description": "Maximum number of Team Drives to return.", - "default": "10", - "format": "int32", - "minimum": "1", - "maximum": "100", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Page token for Team Drives.", - "location": "query" - }, - "q": { - "type": "string", - "description": "Query string for searching Team Drives.", - "location": "query" - }, - "useDomainAdminAccess": { - "type": "boolean", - "description": "Whether the request should be treated as if it was issued by a domain administrator; if set to true, then all Team Drives of the domain in which the requester is an administrator are returned.", - "default": "false", - "location": "query" - } - }, - "response": { - "$ref": "TeamDriveList" - }, - "scopes": [ - "https://www.googleapis.com/auth/drive", - "https://www.googleapis.com/auth/drive.readonly" - ] - }, - "update": { - "id": "drive.teamdrives.update", - "path": "teamdrives/{teamDriveId}", - "httpMethod": "PUT", - "description": "Updates a Team Drive's metadata", - "parameters": { - "teamDriveId": { - "type": "string", - "description": "The ID of the Team Drive", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "teamDriveId" - ], - "request": { - "$ref": "TeamDrive" - }, - "response": { - "$ref": "TeamDrive" - }, - "scopes": [ - "https://www.googleapis.com/auth/drive" - ] - } - } - } - } -} + "servicePath": "drive/v2/", + "title": "Drive API", + "version": "v2" +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/drive/v2/drive-gen.go b/vendor/google.golang.org/api/drive/v2/drive-gen.go index 01665b187..a16d9cb37 100644 --- a/vendor/google.golang.org/api/drive/v2/drive-gen.go +++ b/vendor/google.golang.org/api/drive/v2/drive-gen.go @@ -271,6 +271,9 @@ type About struct { // file type. The most specific type takes precedence. AdditionalRoleInfo []*AboutAdditionalRoleInfo `json:"additionalRoleInfo,omitempty"` + // CanCreateTeamDrives: Whether the user can create Team Drives. + CanCreateTeamDrives bool `json:"canCreateTeamDrives,omitempty"` + // DomainSharingPolicy: The domain sharing policy for the current user. // Possible values are: // - allowed @@ -2337,7 +2340,8 @@ type Permission struct { // - They can only be set on user and group permissions // - The date must be in the future // - The date cannot be more than a year in the future - // - The date can only be set on drive.permissions.update requests + // - The date can only be set on drive.permissions.update or + // drive.permissions.patch requests ExpirationDate string `json:"expirationDate,omitempty"` // Id: The ID of the user this permission refers to, and identical to @@ -7331,11 +7335,12 @@ func (c *FilesInsertCall) doRequest(alt string) (*http.Response, error) { body = new(bytes.Buffer) reqHeaders.Set("Content-Type", "application/json") } - body, cleanup := c.mediaInfo_.UploadRequest(reqHeaders, body) + body, getBody, cleanup := c.mediaInfo_.UploadRequest(reqHeaders, body) defer cleanup() urls += "?" + c.urlParams_.Encode() req, _ := http.NewRequest("POST", urls, body) req.Header = reqHeaders + gensupport.SetGetBody(req, getBody) return gensupport.SendRequest(c.ctx_, c.s.client, req) } @@ -8822,11 +8827,12 @@ func (c *FilesUpdateCall) doRequest(alt string) (*http.Response, error) { body = new(bytes.Buffer) reqHeaders.Set("Content-Type", "application/json") } - body, cleanup := c.mediaInfo_.UploadRequest(reqHeaders, body) + body, getBody, cleanup := c.mediaInfo_.UploadRequest(reqHeaders, body) defer cleanup() urls += "?" + c.urlParams_.Encode() req, _ := http.NewRequest("PUT", urls, body) req.Header = reqHeaders + gensupport.SetGetBody(req, getBody) googleapi.Expand(req.URL, map[string]string{ "fileId": c.fileId, }) @@ -12233,11 +12239,12 @@ func (c *RealtimeUpdateCall) doRequest(alt string) (*http.Response, error) { body = new(bytes.Buffer) reqHeaders.Set("Content-Type", "application/json") } - body, cleanup := c.mediaInfo_.UploadRequest(reqHeaders, body) + body, getBody, cleanup := c.mediaInfo_.UploadRequest(reqHeaders, body) defer cleanup() urls += "?" + c.urlParams_.Encode() req, _ := http.NewRequest("PUT", urls, body) req.Header = reqHeaders + gensupport.SetGetBody(req, getBody) googleapi.Expand(req.URL, map[string]string{ "fileId": c.fileId, }) diff --git a/vendor/google.golang.org/api/drive/v3/drive-api.json b/vendor/google.golang.org/api/drive/v3/drive-api.json index 61a23f47f..2fe40ee00 100644 --- a/vendor/google.golang.org/api/drive/v3/drive-api.json +++ b/vendor/google.golang.org/api/drive/v3/drive-api.json @@ -1,3080 +1,3084 @@ { - "kind": "discovery#restDescription", - "etag": "\"YWOzh2SDasdU84ArJnpYek-OMdg/JMDtpjXV6K9GRXGmSFN5aHZlstg\"", - "discoveryVersion": "v1", - "id": "drive:v3", - "name": "drive", - "version": "v3", - "revision": "20180105", - "title": "Drive API", - "description": "Manages files in Drive including uploading, downloading, searching, detecting changes, and updating sharing permissions.", - "ownerDomain": "google.com", - "ownerName": "Google", - "icons": { - "x16": "https://ssl.gstatic.com/docs/doclist/images/drive_icon_16.png", - "x32": "https://ssl.gstatic.com/docs/doclist/images/drive_icon_32.png" - }, - "documentationLink": "https://developers.google.com/drive/", - "protocol": "rest", - "baseUrl": "https://www.googleapis.com/drive/v3/", - "basePath": "/drive/v3/", - "rootUrl": "https://www.googleapis.com/", - "servicePath": "drive/v3/", - "batchPath": "batch/drive/v3", - "parameters": { - "alt": { - "type": "string", - "description": "Data format for the response.", - "default": "json", - "enum": [ - "json" - ], - "enumDescriptions": [ - "Responses with Content-Type of application/json" - ], - "location": "query" - }, - "fields": { - "type": "string", - "description": "Selector specifying which fields to include in a partial response.", - "location": "query" - }, - "key": { - "type": "string", - "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" - }, - "oauth_token": { - "type": "string", - "description": "OAuth 2.0 token for the current user.", - "location": "query" - }, - "prettyPrint": { - "type": "boolean", - "description": "Returns response with indentations and line breaks.", - "default": "true", - "location": "query" - }, - "quotaUser": { - "type": "string", - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", - "location": "query" - }, - "userIp": { - "type": "string", - "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", - "location": "query" - } - }, - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/drive": { - "description": "View and manage the files in your Google Drive" - }, - "https://www.googleapis.com/auth/drive.appdata": { - "description": "View and manage its own configuration data in your Google Drive" - }, - "https://www.googleapis.com/auth/drive.file": { - "description": "View and manage Google Drive files and folders that you have opened or created with this app" - }, - "https://www.googleapis.com/auth/drive.metadata": { - "description": "View and manage metadata of files in your Google Drive" - }, - "https://www.googleapis.com/auth/drive.metadata.readonly": { - "description": "View metadata for files in your Google Drive" - }, - "https://www.googleapis.com/auth/drive.photos.readonly": { - "description": "View the photos, videos and albums in your Google Photos" - }, - "https://www.googleapis.com/auth/drive.readonly": { - "description": "View the files in your Google Drive" - }, - "https://www.googleapis.com/auth/drive.scripts": { - "description": "Modify your Google Apps Script scripts' behavior" - } - } - } - }, - "schemas": { - "About": { - "id": "About", - "type": "object", - "description": "Information about the user, the user's Drive, and system capabilities.", - "properties": { - "appInstalled": { - "type": "boolean", - "description": "Whether the user has installed the requesting app." - }, - "exportFormats": { - "type": "object", - "description": "A map of source MIME type to possible targets for all supported exports.", - "additionalProperties": { - "type": "array", - "items": { - "type": "string" + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/drive": { + "description": "View and manage the files in your Google Drive" + }, + "https://www.googleapis.com/auth/drive.appdata": { + "description": "View and manage its own configuration data in your Google Drive" + }, + "https://www.googleapis.com/auth/drive.file": { + "description": "View and manage Google Drive files and folders that you have opened or created with this app" + }, + "https://www.googleapis.com/auth/drive.metadata": { + "description": "View and manage metadata of files in your Google Drive" + }, + "https://www.googleapis.com/auth/drive.metadata.readonly": { + "description": "View metadata for files in your Google Drive" + }, + "https://www.googleapis.com/auth/drive.photos.readonly": { + "description": "View the photos, videos and albums in your Google Photos" + }, + "https://www.googleapis.com/auth/drive.readonly": { + "description": "View the files in your Google Drive" + }, + "https://www.googleapis.com/auth/drive.scripts": { + "description": "Modify your Google Apps Script scripts' behavior" + } } - } - }, - "folderColorPalette": { - "type": "array", - "description": "The currently supported folder colors as RGB hex strings.", - "items": { + } + }, + "basePath": "/drive/v3/", + "baseUrl": "https://www.googleapis.com/drive/v3/", + "batchPath": "batch/drive/v3", + "description": "Manages files in Drive including uploading, downloading, searching, detecting changes, and updating sharing permissions.", + "discoveryVersion": "v1", + "documentationLink": "https://developers.google.com/drive/", + "etag": "\"-iA1DTNe4s-I6JZXPt1t1Ypy8IU/PVNZixC1eon2DG6EdBq4JWCAw68\"", + "icons": { + "x16": "https://ssl.gstatic.com/docs/doclist/images/drive_icon_16.png", + "x32": "https://ssl.gstatic.com/docs/doclist/images/drive_icon_32.png" + }, + "id": "drive:v3", + "kind": "discovery#restDescription", + "name": "drive", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "alt": { + "default": "json", + "description": "Data format for the response.", + "enum": [ + "json" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json" + ], + "location": "query", "type": "string" - } }, - "importFormats": { - "type": "object", - "description": "A map of source MIME type to possible targets for all supported imports.", - "additionalProperties": { - "type": "array", - "items": { - "type": "string" - } - } + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "location": "query", + "type": "string" }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"drive#about\".", - "default": "drive#about" + "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" }, - "maxImportSizes": { - "type": "object", - "description": "A map of maximum import sizes by MIME type, in bytes.", - "additionalProperties": { - "type": "string", - "format": "int64" - } + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" }, - "maxUploadSize": { - "type": "string", - "description": "The maximum upload size in bytes.", - "format": "int64" + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" }, - "storageQuota": { - "type": "object", - "description": "The user's storage quota limits and usage. All fields are measured in bytes.", - "properties": { - "limit": { - "type": "string", - "description": "The usage limit, if applicable. This will not be present if the user has unlimited storage.", - "format": "int64" - }, - "usage": { - "type": "string", - "description": "The total usage across all services.", - "format": "int64" - }, - "usageInDrive": { - "type": "string", - "description": "The usage by all files in Google Drive.", - "format": "int64" - }, - "usageInDriveTrash": { - "type": "string", - "description": "The usage by trashed files in Google Drive.", - "format": "int64" - } - } + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", + "location": "query", + "type": "string" }, - "teamDriveThemes": { - "type": "array", - "description": "A list of themes that are supported for Team Drives.", - "items": { - "type": "object", - "properties": { - "backgroundImageLink": { - "type": "string", - "description": "A link to this Team Drive theme's background image." - }, - "colorRgb": { - "type": "string", - "description": "The color of this Team Drive theme as an RGB hex string." - }, - "id": { - "type": "string", - "description": "The ID of the theme." - } - } - } - }, - "user": { - "$ref": "User", - "description": "The authenticated user." + "userIp": { + "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", + "location": "query", + "type": "string" } - } }, - "Change": { - "id": "Change", - "type": "object", - "description": "A change to a file or Team Drive.", - "properties": { - "file": { - "$ref": "File", - "description": "The updated state of the file. Present if the type is file and the file has not been removed from this list of changes." + "protocol": "rest", + "resources": { + "about": { + "methods": { + "get": { + "description": "Gets information about the user, the user's Drive, and system capabilities.", + "httpMethod": "GET", + "id": "drive.about.get", + "path": "about", + "response": { + "$ref": "About" + }, + "scopes": [ + "https://www.googleapis.com/auth/drive", + "https://www.googleapis.com/auth/drive.appdata", + "https://www.googleapis.com/auth/drive.file", + "https://www.googleapis.com/auth/drive.metadata", + "https://www.googleapis.com/auth/drive.metadata.readonly", + "https://www.googleapis.com/auth/drive.photos.readonly", + "https://www.googleapis.com/auth/drive.readonly" + ] + } + } }, - "fileId": { - "type": "string", - "description": "The ID of the file which has changed." - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"drive#change\".", - "default": "drive#change" - }, - "removed": { - "type": "boolean", - "description": "Whether the file or Team Drive has been removed from this list of changes, for example by deletion or loss of access." - }, - "teamDrive": { - "$ref": "TeamDrive", - "description": "The updated state of the Team Drive. Present if the type is teamDrive, the user is still a member of the Team Drive, and the Team Drive has not been removed." - }, - "teamDriveId": { - "type": "string", - "description": "The ID of the Team Drive associated with this change." - }, - "time": { - "type": "string", - "description": "The time of this change (RFC 3339 date-time).", - "format": "date-time" - }, - "type": { - "type": "string", - "description": "The type of the change. Possible values are file and teamDrive." - } - } - }, - "ChangeList": { - "id": "ChangeList", - "type": "object", - "description": "A list of changes for a user.", - "properties": { "changes": { - "type": "array", - "description": "The list of changes. If nextPageToken is populated, then this list may be incomplete and an additional page of results should be fetched.", - "items": { - "$ref": "Change" - } - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"drive#changeList\".", - "default": "drive#changeList" - }, - "newStartPageToken": { - "type": "string", - "description": "The starting page token for future changes. This will be present only if the end of the current changes list has been reached." - }, - "nextPageToken": { - "type": "string", - "description": "The page token for the next page of changes. This will be absent if the end of the changes list has been reached. If the token is rejected for any reason, it should be discarded, and pagination should be restarted from the first page of results." - } - } - }, - "Channel": { - "id": "Channel", - "type": "object", - "description": "An notification channel used to watch for resource changes.", - "properties": { - "address": { - "type": "string", - "description": "The address where notifications are delivered for this channel." - }, - "expiration": { - "type": "string", - "description": "Date and time of notification channel expiration, expressed as a Unix timestamp, in milliseconds. Optional.", - "format": "int64" - }, - "id": { - "type": "string", - "description": "A UUID or similar unique string that identifies this channel." - }, - "kind": { - "type": "string", - "description": "Identifies this as a notification channel used to watch for changes to a resource. Value: the fixed string \"api#channel\".", - "default": "api#channel" - }, - "params": { - "type": "object", - "description": "Additional parameters controlling delivery channel behavior. Optional.", - "additionalProperties": { - "type": "string", - "description": "Declares a new parameter by name." - } - }, - "payload": { - "type": "boolean", - "description": "A Boolean value to indicate whether payload is wanted. Optional." - }, - "resourceId": { - "type": "string", - "description": "An opaque ID that identifies the resource being watched on this channel. Stable across different API versions." - }, - "resourceUri": { - "type": "string", - "description": "A version-specific identifier for the watched resource." - }, - "token": { - "type": "string", - "description": "An arbitrary string delivered to the target address with each notification delivered over this channel. Optional." - }, - "type": { - "type": "string", - "description": "The type of delivery mechanism used for this channel." - } - } - }, - "Comment": { - "id": "Comment", - "type": "object", - "description": "A comment on a file.", - "properties": { - "anchor": { - "type": "string", - "description": "A region of the document represented as a JSON string. See anchor documentation for details on how to define and interpret anchor properties." - }, - "author": { - "$ref": "User", - "description": "The user who created the comment." - }, - "content": { - "type": "string", - "description": "The plain text content of the comment. This field is used for setting the content, while htmlContent should be displayed.", - "annotations": { - "required": [ - "drive.comments.create", - "drive.comments.update" - ] - } - }, - "createdTime": { - "type": "string", - "description": "The time at which the comment was created (RFC 3339 date-time).", - "format": "date-time" - }, - "deleted": { - "type": "boolean", - "description": "Whether the comment has been deleted. A deleted comment has no content." - }, - "htmlContent": { - "type": "string", - "description": "The content of the comment with HTML formatting." - }, - "id": { - "type": "string", - "description": "The ID of the comment." - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"drive#comment\".", - "default": "drive#comment" - }, - "modifiedTime": { - "type": "string", - "description": "The last time the comment or any of its replies was modified (RFC 3339 date-time).", - "format": "date-time" - }, - "quotedFileContent": { - "type": "object", - "description": "The file content to which the comment refers, typically within the anchor region. For a text file, for example, this would be the text at the location of the comment.", - "properties": { - "mimeType": { - "type": "string", - "description": "The MIME type of the quoted content." - }, - "value": { - "type": "string", - "description": "The quoted content itself. This is interpreted as plain text if set through the API." + "methods": { + "getStartPageToken": { + "description": "Gets the starting pageToken for listing future changes.", + "httpMethod": "GET", + "id": "drive.changes.getStartPageToken", + "parameters": { + "supportsTeamDrives": { + "default": "false", + "description": "Whether the requesting application supports Team Drives.", + "location": "query", + "type": "boolean" + }, + "teamDriveId": { + "description": "The ID of the Team Drive for which the starting pageToken for listing future changes from that Team Drive will be returned.", + "location": "query", + "type": "string" + } + }, + "path": "changes/startPageToken", + "response": { + "$ref": "StartPageToken" + }, + "scopes": [ + "https://www.googleapis.com/auth/drive", + "https://www.googleapis.com/auth/drive.appdata", + "https://www.googleapis.com/auth/drive.file", + "https://www.googleapis.com/auth/drive.metadata", + "https://www.googleapis.com/auth/drive.metadata.readonly", + "https://www.googleapis.com/auth/drive.photos.readonly", + "https://www.googleapis.com/auth/drive.readonly" + ] + }, + "list": { + "description": "Lists the changes for a user or Team Drive.", + "httpMethod": "GET", + "id": "drive.changes.list", + "parameterOrder": [ + "pageToken" + ], + "parameters": { + "includeCorpusRemovals": { + "default": "false", + "description": "Whether changes should include the file resource if the file is still accessible by the user at the time of the request, even when a file was removed from the list of changes and there will be no further change entries for this file.", + "location": "query", + "type": "boolean" + }, + "includeRemoved": { + "default": "true", + "description": "Whether to include changes indicating that items have been removed from the list of changes, for example by deletion or loss of access.", + "location": "query", + "type": "boolean" + }, + "includeTeamDriveItems": { + "default": "false", + "description": "Whether Team Drive files or changes should be included in results.", + "location": "query", + "type": "boolean" + }, + "pageSize": { + "default": "100", + "description": "The maximum number of changes to return per page.", + "format": "int32", + "location": "query", + "maximum": "1000", + "minimum": "1", + "type": "integer" + }, + "pageToken": { + "description": "The token for continuing a previous list request on the next page. This should be set to the value of 'nextPageToken' from the previous response or to the response from the getStartPageToken method.", + "location": "query", + "required": true, + "type": "string" + }, + "restrictToMyDrive": { + "default": "false", + "description": "Whether to restrict the results to changes inside the My Drive hierarchy. This omits changes to files such as those in the Application Data folder or shared files which have not been added to My Drive.", + "location": "query", + "type": "boolean" + }, + "spaces": { + "default": "drive", + "description": "A comma-separated list of spaces to query within the user corpus. Supported values are 'drive', 'appDataFolder' and 'photos'.", + "location": "query", + "type": "string" + }, + "supportsTeamDrives": { + "default": "false", + "description": "Whether the requesting application supports Team Drives.", + "location": "query", + "type": "boolean" + }, + "teamDriveId": { + "description": "The Team Drive from which changes will be returned. If specified the change IDs will be reflective of the Team Drive; use the combined Team Drive ID and change ID as an identifier.", + "location": "query", + "type": "string" + } + }, + "path": "changes", + "response": { + "$ref": "ChangeList" + }, + "scopes": [ + "https://www.googleapis.com/auth/drive", + "https://www.googleapis.com/auth/drive.appdata", + "https://www.googleapis.com/auth/drive.file", + "https://www.googleapis.com/auth/drive.metadata", + "https://www.googleapis.com/auth/drive.metadata.readonly", + "https://www.googleapis.com/auth/drive.photos.readonly", + "https://www.googleapis.com/auth/drive.readonly" + ], + "supportsSubscription": true + }, + "watch": { + "description": "Subscribes to changes for a user.", + "httpMethod": "POST", + "id": "drive.changes.watch", + "parameterOrder": [ + "pageToken" + ], + "parameters": { + "includeCorpusRemovals": { + "default": "false", + "description": "Whether changes should include the file resource if the file is still accessible by the user at the time of the request, even when a file was removed from the list of changes and there will be no further change entries for this file.", + "location": "query", + "type": "boolean" + }, + "includeRemoved": { + "default": "true", + "description": "Whether to include changes indicating that items have been removed from the list of changes, for example by deletion or loss of access.", + "location": "query", + "type": "boolean" + }, + "includeTeamDriveItems": { + "default": "false", + "description": "Whether Team Drive files or changes should be included in results.", + "location": "query", + "type": "boolean" + }, + "pageSize": { + "default": "100", + "description": "The maximum number of changes to return per page.", + "format": "int32", + "location": "query", + "maximum": "1000", + "minimum": "1", + "type": "integer" + }, + "pageToken": { + "description": "The token for continuing a previous list request on the next page. This should be set to the value of 'nextPageToken' from the previous response or to the response from the getStartPageToken method.", + "location": "query", + "required": true, + "type": "string" + }, + "restrictToMyDrive": { + "default": "false", + "description": "Whether to restrict the results to changes inside the My Drive hierarchy. This omits changes to files such as those in the Application Data folder or shared files which have not been added to My Drive.", + "location": "query", + "type": "boolean" + }, + "spaces": { + "default": "drive", + "description": "A comma-separated list of spaces to query within the user corpus. Supported values are 'drive', 'appDataFolder' and 'photos'.", + "location": "query", + "type": "string" + }, + "supportsTeamDrives": { + "default": "false", + "description": "Whether the requesting application supports Team Drives.", + "location": "query", + "type": "boolean" + }, + "teamDriveId": { + "description": "The Team Drive from which changes will be returned. If specified the change IDs will be reflective of the Team Drive; use the combined Team Drive ID and change ID as an identifier.", + "location": "query", + "type": "string" + } + }, + "path": "changes/watch", + "request": { + "$ref": "Channel", + "parameterName": "resource" + }, + "response": { + "$ref": "Channel" + }, + "scopes": [ + "https://www.googleapis.com/auth/drive", + "https://www.googleapis.com/auth/drive.appdata", + "https://www.googleapis.com/auth/drive.file", + "https://www.googleapis.com/auth/drive.metadata", + "https://www.googleapis.com/auth/drive.metadata.readonly", + "https://www.googleapis.com/auth/drive.photos.readonly", + "https://www.googleapis.com/auth/drive.readonly" + ], + "supportsSubscription": true + } } - } }, - "replies": { - "type": "array", - "description": "The full list of replies to the comment in chronological order.", - "items": { - "$ref": "Reply" - } + "channels": { + "methods": { + "stop": { + "description": "Stop watching resources through this channel", + "httpMethod": "POST", + "id": "drive.channels.stop", + "path": "channels/stop", + "request": { + "$ref": "Channel", + "parameterName": "resource" + }, + "scopes": [ + "https://www.googleapis.com/auth/drive", + "https://www.googleapis.com/auth/drive.appdata", + "https://www.googleapis.com/auth/drive.file", + "https://www.googleapis.com/auth/drive.metadata", + "https://www.googleapis.com/auth/drive.metadata.readonly", + "https://www.googleapis.com/auth/drive.photos.readonly", + "https://www.googleapis.com/auth/drive.readonly" + ] + } + } }, - "resolved": { - "type": "boolean", - "description": "Whether the comment has been resolved by one of its replies." - } - } - }, - "CommentList": { - "id": "CommentList", - "type": "object", - "description": "A list of comments on a file.", - "properties": { "comments": { - "type": "array", - "description": "The list of comments. If nextPageToken is populated, then this list may be incomplete and an additional page of results should be fetched.", - "items": { - "$ref": "Comment" - } - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"drive#commentList\".", - "default": "drive#commentList" - }, - "nextPageToken": { - "type": "string", - "description": "The page token for the next page of comments. This will be absent if the end of the comments list has been reached. If the token is rejected for any reason, it should be discarded, and pagination should be restarted from the first page of results." - } - } - }, - "File": { - "id": "File", - "type": "object", - "description": "The metadata for a file.", - "properties": { - "appProperties": { - "type": "object", - "description": "A collection of arbitrary key-value pairs which are private to the requesting app.\nEntries with null values are cleared in update and copy requests.", - "additionalProperties": { - "type": "string" - } - }, - "capabilities": { - "type": "object", - "description": "Capabilities the current user has on this file. Each capability corresponds to a fine-grained action that a user may take.", - "properties": { - "canAddChildren": { - "type": "boolean", - "description": "Whether the current user can add children to this folder. This is always false when the item is not a folder." - }, - "canChangeViewersCanCopyContent": { - "type": "boolean", - "description": "Whether the current user can change whether viewers can copy the contents of this file." - }, - "canComment": { - "type": "boolean", - "description": "Whether the current user can comment on this file." - }, - "canCopy": { - "type": "boolean", - "description": "Whether the current user can copy this file. For a Team Drive item, whether the current user can copy non-folder descendants of this item, or this item itself if it is not a folder." - }, - "canDelete": { - "type": "boolean", - "description": "Whether the current user can delete this file." - }, - "canDownload": { - "type": "boolean", - "description": "Whether the current user can download this file." - }, - "canEdit": { - "type": "boolean", - "description": "Whether the current user can edit this file." - }, - "canListChildren": { - "type": "boolean", - "description": "Whether the current user can list the children of this folder. This is always false when the item is not a folder." - }, - "canMoveItemIntoTeamDrive": { - "type": "boolean", - "description": "Whether the current user can move this item into a Team Drive. If the item is in a Team Drive, this field is equivalent to canMoveTeamDriveItem." - }, - "canMoveTeamDriveItem": { - "type": "boolean", - "description": "Whether the current user can move this Team Drive item by changing its parent. Note that a request to change the parent for this item may still fail depending on the new parent that is being added. Only populated for Team Drive files." - }, - "canReadRevisions": { - "type": "boolean", - "description": "Whether the current user can read the revisions resource of this file. For a Team Drive item, whether revisions of non-folder descendants of this item, or this item itself if it is not a folder, can be read." - }, - "canReadTeamDrive": { - "type": "boolean", - "description": "Whether the current user can read the Team Drive to which this file belongs. Only populated for Team Drive files." - }, - "canRemoveChildren": { - "type": "boolean", - "description": "Whether the current user can remove children from this folder. This is always false when the item is not a folder." - }, - "canRename": { - "type": "boolean", - "description": "Whether the current user can rename this file." - }, - "canShare": { - "type": "boolean", - "description": "Whether the current user can modify the sharing settings for this file." - }, - "canTrash": { - "type": "boolean", - "description": "Whether the current user can move this file to trash." - }, - "canUntrash": { - "type": "boolean", - "description": "Whether the current user can restore this file from trash." - } - } - }, - "contentHints": { - "type": "object", - "description": "Additional information about the content of the file. These fields are never populated in responses.", - "properties": { - "indexableText": { - "type": "string", - "description": "Text to be indexed for the file to improve fullText queries. This is limited to 128KB in length and may contain HTML elements." - }, - "thumbnail": { - "type": "object", - "description": "A thumbnail for the file. This will only be used if Drive cannot generate a standard thumbnail.", - "properties": { - "image": { - "type": "string", - "description": "The thumbnail data encoded with URL-safe Base64 (RFC 4648 section 5).", - "format": "byte" + "methods": { + "create": { + "description": "Creates a new comment on a file.", + "httpMethod": "POST", + "id": "drive.comments.create", + "parameterOrder": [ + "fileId" + ], + "parameters": { + "fileId": { + "description": "The ID of the file.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "files/{fileId}/comments", + "request": { + "$ref": "Comment" + }, + "response": { + "$ref": "Comment" + }, + "scopes": [ + "https://www.googleapis.com/auth/drive", + "https://www.googleapis.com/auth/drive.file" + ] }, - "mimeType": { - "type": "string", - "description": "The MIME type of the thumbnail." + "delete": { + "description": "Deletes a comment.", + "httpMethod": "DELETE", + "id": "drive.comments.delete", + "parameterOrder": [ + "fileId", + "commentId" + ], + "parameters": { + "commentId": { + "description": "The ID of the comment.", + "location": "path", + "required": true, + "type": "string" + }, + "fileId": { + "description": "The ID of the file.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "files/{fileId}/comments/{commentId}", + "scopes": [ + "https://www.googleapis.com/auth/drive", + "https://www.googleapis.com/auth/drive.file" + ] + }, + "get": { + "description": "Gets a comment by ID.", + "httpMethod": "GET", + "id": "drive.comments.get", + "parameterOrder": [ + "fileId", + "commentId" + ], + "parameters": { + "commentId": { + "description": "The ID of the comment.", + "location": "path", + "required": true, + "type": "string" + }, + "fileId": { + "description": "The ID of the file.", + "location": "path", + "required": true, + "type": "string" + }, + "includeDeleted": { + "default": "false", + "description": "Whether to return deleted comments. Deleted comments will not include their original content.", + "location": "query", + "type": "boolean" + } + }, + "path": "files/{fileId}/comments/{commentId}", + "response": { + "$ref": "Comment" + }, + "scopes": [ + "https://www.googleapis.com/auth/drive", + "https://www.googleapis.com/auth/drive.file", + "https://www.googleapis.com/auth/drive.readonly" + ] + }, + "list": { + "description": "Lists a file's comments.", + "httpMethod": "GET", + "id": "drive.comments.list", + "parameterOrder": [ + "fileId" + ], + "parameters": { + "fileId": { + "description": "The ID of the file.", + "location": "path", + "required": true, + "type": "string" + }, + "includeDeleted": { + "default": "false", + "description": "Whether to include deleted comments. Deleted comments will not include their original content.", + "location": "query", + "type": "boolean" + }, + "pageSize": { + "default": "20", + "description": "The maximum number of comments to return per page.", + "format": "int32", + "location": "query", + "maximum": "100", + "minimum": "1", + "type": "integer" + }, + "pageToken": { + "description": "The token for continuing a previous list request on the next page. This should be set to the value of 'nextPageToken' from the previous response.", + "location": "query", + "type": "string" + }, + "startModifiedTime": { + "description": "The minimum value of 'modifiedTime' for the result comments (RFC 3339 date-time).", + "location": "query", + "type": "string" + } + }, + "path": "files/{fileId}/comments", + "response": { + "$ref": "CommentList" + }, + "scopes": [ + "https://www.googleapis.com/auth/drive", + "https://www.googleapis.com/auth/drive.file", + "https://www.googleapis.com/auth/drive.readonly" + ] + }, + "update": { + "description": "Updates a comment with patch semantics.", + "httpMethod": "PATCH", + "id": "drive.comments.update", + "parameterOrder": [ + "fileId", + "commentId" + ], + "parameters": { + "commentId": { + "description": "The ID of the comment.", + "location": "path", + "required": true, + "type": "string" + }, + "fileId": { + "description": "The ID of the file.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "files/{fileId}/comments/{commentId}", + "request": { + "$ref": "Comment" + }, + "response": { + "$ref": "Comment" + }, + "scopes": [ + "https://www.googleapis.com/auth/drive", + "https://www.googleapis.com/auth/drive.file" + ] } - } } - } }, - "createdTime": { - "type": "string", - "description": "The time at which the file was created (RFC 3339 date-time).", - "format": "date-time" - }, - "description": { - "type": "string", - "description": "A short description of the file." - }, - "explicitlyTrashed": { - "type": "boolean", - "description": "Whether the file has been explicitly trashed, as opposed to recursively trashed from a parent folder." - }, - "fileExtension": { - "type": "string", - "description": "The final component of fullFileExtension. This is only available for files with binary content in Drive." - }, - "folderColorRgb": { - "type": "string", - "description": "The color for a folder as an RGB hex string. The supported colors are published in the folderColorPalette field of the About resource.\nIf an unsupported color is specified, the closest color in the palette will be used instead." - }, - "fullFileExtension": { - "type": "string", - "description": "The full file extension extracted from the name field. May contain multiple concatenated extensions, such as \"tar.gz\". This is only available for files with binary content in Drive.\nThis is automatically updated when the name field changes, however it is not cleared if the new name does not contain a valid extension." - }, - "hasAugmentedPermissions": { - "type": "boolean", - "description": "Whether any users are granted file access directly on this file. This field is only populated for Team Drive files." - }, - "hasThumbnail": { - "type": "boolean", - "description": "Whether this file has a thumbnail. This does not indicate whether the requesting app has access to the thumbnail. To check access, look for the presence of the thumbnailLink field." - }, - "headRevisionId": { - "type": "string", - "description": "The ID of the file's head revision. This is currently only available for files with binary content in Drive." - }, - "iconLink": { - "type": "string", - "description": "A static, unauthenticated link to the file's icon." - }, - "id": { - "type": "string", - "description": "The ID of the file." - }, - "imageMediaMetadata": { - "type": "object", - "description": "Additional metadata about image media, if available.", - "properties": { - "aperture": { - "type": "number", - "description": "The aperture used to create the photo (f-number).", - "format": "float" - }, - "cameraMake": { - "type": "string", - "description": "The make of the camera used to create the photo." - }, - "cameraModel": { - "type": "string", - "description": "The model of the camera used to create the photo." - }, - "colorSpace": { - "type": "string", - "description": "The color space of the photo." - }, - "exposureBias": { - "type": "number", - "description": "The exposure bias of the photo (APEX value).", - "format": "float" - }, - "exposureMode": { - "type": "string", - "description": "The exposure mode used to create the photo." - }, - "exposureTime": { - "type": "number", - "description": "The length of the exposure, in seconds.", - "format": "float" - }, - "flashUsed": { - "type": "boolean", - "description": "Whether a flash was used to create the photo." - }, - "focalLength": { - "type": "number", - "description": "The focal length used to create the photo, in millimeters.", - "format": "float" - }, - "height": { - "type": "integer", - "description": "The height of the image in pixels.", - "format": "int32" - }, - "isoSpeed": { - "type": "integer", - "description": "The ISO speed used to create the photo.", - "format": "int32" - }, - "lens": { - "type": "string", - "description": "The lens used to create the photo." - }, - "location": { - "type": "object", - "description": "Geographic location information stored in the image.", - "properties": { - "altitude": { - "type": "number", - "description": "The altitude stored in the image.", - "format": "double" - }, - "latitude": { - "type": "number", - "description": "The latitude stored in the image.", - "format": "double" - }, - "longitude": { - "type": "number", - "description": "The longitude stored in the image.", - "format": "double" - } - } - }, - "maxApertureValue": { - "type": "number", - "description": "The smallest f-number of the lens at the focal length used to create the photo (APEX value).", - "format": "float" - }, - "meteringMode": { - "type": "string", - "description": "The metering mode used to create the photo." - }, - "rotation": { - "type": "integer", - "description": "The rotation in clockwise degrees from the image's original orientation.", - "format": "int32" - }, - "sensor": { - "type": "string", - "description": "The type of sensor used to create the photo." - }, - "subjectDistance": { - "type": "integer", - "description": "The distance to the subject of the photo, in meters.", - "format": "int32" - }, - "time": { - "type": "string", - "description": "The date and time the photo was taken (EXIF DateTime)." - }, - "whiteBalance": { - "type": "string", - "description": "The white balance mode used to create the photo." - }, - "width": { - "type": "integer", - "description": "The width of the image in pixels.", - "format": "int32" - } - } - }, - "isAppAuthorized": { - "type": "boolean", - "description": "Whether the file was created or opened by the requesting app." - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"drive#file\".", - "default": "drive#file" - }, - "lastModifyingUser": { - "$ref": "User", - "description": "The last user to modify the file." - }, - "md5Checksum": { - "type": "string", - "description": "The MD5 checksum for the content of the file. This is only applicable to files with binary content in Drive." - }, - "mimeType": { - "type": "string", - "description": "The MIME type of the file.\nDrive will attempt to automatically detect an appropriate value from uploaded content if no value is provided. The value cannot be changed unless a new revision is uploaded.\nIf a file is created with a Google Doc MIME type, the uploaded content will be imported if possible. The supported import formats are published in the About resource." - }, - "modifiedByMe": { - "type": "boolean", - "description": "Whether the file has been modified by this user." - }, - "modifiedByMeTime": { - "type": "string", - "description": "The last time the file was modified by the user (RFC 3339 date-time).", - "format": "date-time" - }, - "modifiedTime": { - "type": "string", - "description": "The last time the file was modified by anyone (RFC 3339 date-time).\nNote that setting modifiedTime will also update modifiedByMeTime for the user.", - "format": "date-time" - }, - "name": { - "type": "string", - "description": "The name of the file. This is not necessarily unique within a folder. Note that for immutable items such as the top level folders of Team Drives, My Drive root folder, and Application Data folder the name is constant." - }, - "originalFilename": { - "type": "string", - "description": "The original filename of the uploaded content if available, or else the original value of the name field. This is only available for files with binary content in Drive." - }, - "ownedByMe": { - "type": "boolean", - "description": "Whether the user owns the file. Not populated for Team Drive files." - }, - "owners": { - "type": "array", - "description": "The owners of the file. Currently, only certain legacy files may have more than one owner. Not populated for Team Drive files.", - "items": { - "$ref": "User" - } - }, - "parents": { - "type": "array", - "description": "The IDs of the parent folders which contain the file.\nIf not specified as part of a create request, the file will be placed directly in the user's My Drive folder. If not specified as part of a copy request, the file will inherit any discoverable parents of the source file. Update requests must use the addParents and removeParents parameters to modify the parents list.", - "items": { - "type": "string" - } - }, - "permissionIds": { - "type": "array", - "description": "List of permission IDs for users with access to this file.", - "items": { - "type": "string" - } - }, - "permissions": { - "type": "array", - "description": "The full list of permissions for the file. This is only available if the requesting user can share the file. Not populated for Team Drive files.", - "items": { - "$ref": "Permission" - } - }, - "properties": { - "type": "object", - "description": "A collection of arbitrary key-value pairs which are visible to all apps.\nEntries with null values are cleared in update and copy requests.", - "additionalProperties": { - "type": "string" - } - }, - "quotaBytesUsed": { - "type": "string", - "description": "The number of storage quota bytes used by the file. This includes the head revision as well as previous revisions with keepForever enabled.", - "format": "int64" - }, - "shared": { - "type": "boolean", - "description": "Whether the file has been shared. Not populated for Team Drive files." - }, - "sharedWithMeTime": { - "type": "string", - "description": "The time at which the file was shared with the user, if applicable (RFC 3339 date-time).", - "format": "date-time" - }, - "sharingUser": { - "$ref": "User", - "description": "The user who shared the file with the requesting user, if applicable." - }, - "size": { - "type": "string", - "description": "The size of the file's content in bytes. This is only applicable to files with binary content in Drive.", - "format": "int64" - }, - "spaces": { - "type": "array", - "description": "The list of spaces which contain the file. The currently supported values are 'drive', 'appDataFolder' and 'photos'.", - "items": { - "type": "string" - } - }, - "starred": { - "type": "boolean", - "description": "Whether the user has starred the file." - }, - "teamDriveId": { - "type": "string", - "description": "ID of the Team Drive the file resides in." - }, - "thumbnailLink": { - "type": "string", - "description": "A short-lived link to the file's thumbnail, if available. Typically lasts on the order of hours. Only populated when the requesting app can access the file's content." - }, - "thumbnailVersion": { - "type": "string", - "description": "The thumbnail version for use in thumbnail cache invalidation.", - "format": "int64" - }, - "trashed": { - "type": "boolean", - "description": "Whether the file has been trashed, either explicitly or from a trashed parent folder. Only the owner may trash a file, and other users cannot see files in the owner's trash." - }, - "trashedTime": { - "type": "string", - "description": "The time that the item was trashed (RFC 3339 date-time). Only populated for Team Drive files.", - "format": "date-time" - }, - "trashingUser": { - "$ref": "User", - "description": "If the file has been explicitly trashed, the user who trashed it. Only populated for Team Drive files." - }, - "version": { - "type": "string", - "description": "A monotonically increasing version number for the file. This reflects every change made to the file on the server, even those not visible to the user.", - "format": "int64" - }, - "videoMediaMetadata": { - "type": "object", - "description": "Additional metadata about video media. This may not be available immediately upon upload.", - "properties": { - "durationMillis": { - "type": "string", - "description": "The duration of the video in milliseconds.", - "format": "int64" - }, - "height": { - "type": "integer", - "description": "The height of the video in pixels.", - "format": "int32" - }, - "width": { - "type": "integer", - "description": "The width of the video in pixels.", - "format": "int32" - } - } - }, - "viewedByMe": { - "type": "boolean", - "description": "Whether the file has been viewed by this user." - }, - "viewedByMeTime": { - "type": "string", - "description": "The last time the file was viewed by the user (RFC 3339 date-time).", - "format": "date-time" - }, - "viewersCanCopyContent": { - "type": "boolean", - "description": "Whether users with only reader or commenter permission can copy the file's content. This affects copy, download, and print operations." - }, - "webContentLink": { - "type": "string", - "description": "A link for downloading the content of the file in a browser. This is only available for files with binary content in Drive." - }, - "webViewLink": { - "type": "string", - "description": "A link for opening the file in a relevant Google editor or viewer in a browser." - }, - "writersCanShare": { - "type": "boolean", - "description": "Whether users with only writer permission can modify the file's permissions. Not populated for Team Drive files." - } - } - }, - "FileList": { - "id": "FileList", - "type": "object", - "description": "A list of files.", - "properties": { "files": { - "type": "array", - "description": "The list of files. If nextPageToken is populated, then this list may be incomplete and an additional page of results should be fetched.", - "items": { - "$ref": "File" - } - }, - "incompleteSearch": { - "type": "boolean", - "description": "Whether the search process was incomplete. If true, then some search results may be missing, since all documents were not searched. This may occur when searching multiple Team Drives with the \"user,allTeamDrives\" corpora, but all corpora could not be searched. When this happens, it is suggested that clients narrow their query by choosing a different corpus such as \"user\" or \"teamDrive\"." - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"drive#fileList\".", - "default": "drive#fileList" - }, - "nextPageToken": { - "type": "string", - "description": "The page token for the next page of files. This will be absent if the end of the files list has been reached. If the token is rejected for any reason, it should be discarded, and pagination should be restarted from the first page of results." - } - } - }, - "GeneratedIds": { - "id": "GeneratedIds", - "type": "object", - "description": "A list of generated file IDs which can be provided in create requests.", - "properties": { - "ids": { - "type": "array", - "description": "The IDs generated for the requesting user in the specified space.", - "items": { - "type": "string" - } - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"drive#generatedIds\".", - "default": "drive#generatedIds" - }, - "space": { - "type": "string", - "description": "The type of file that can be created with these IDs." - } - } - }, - "Permission": { - "id": "Permission", - "type": "object", - "description": "A permission for a file. A permission grants a user, group, domain or the world access to a file or a folder hierarchy.", - "properties": { - "allowFileDiscovery": { - "type": "boolean", - "description": "Whether the permission allows the file to be discovered through search. This is only applicable for permissions of type domain or anyone." - }, - "deleted": { - "type": "boolean", - "description": "Whether the account associated with this permission has been deleted. This field only pertains to user and group permissions." - }, - "displayName": { - "type": "string", - "description": "A displayable name for users, groups or domains." - }, - "domain": { - "type": "string", - "description": "The domain to which this permission refers." - }, - "emailAddress": { - "type": "string", - "description": "The email address of the user or group to which this permission refers." - }, - "expirationTime": { - "type": "string", - "description": "The time at which this permission will expire (RFC 3339 date-time). Expiration times have the following restrictions: \n- They can only be set on user and group permissions \n- The time must be in the future \n- The time cannot be more than a year in the future", - "format": "date-time" - }, - "id": { - "type": "string", - "description": "The ID of this permission. This is a unique identifier for the grantee, and is published in User resources as permissionId." - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"drive#permission\".", - "default": "drive#permission" - }, - "photoLink": { - "type": "string", - "description": "A link to the user's profile photo, if available." - }, - "role": { - "type": "string", - "description": "The role granted by this permission. While new values may be supported in the future, the following are currently allowed: \n- organizer \n- owner \n- writer \n- commenter \n- reader", - "annotations": { - "required": [ - "drive.permissions.create" - ] - } - }, - "teamDrivePermissionDetails": { - "type": "array", - "description": "Details of whether the permissions on this Team Drive item are inherited or directly on this item. This is an output-only field which is present only for Team Drive items.", - "items": { - "type": "object", - "properties": { - "inherited": { - "type": "boolean", - "description": "Whether this permission is inherited. This field is always populated. This is an output-only field." - }, - "inheritedFrom": { - "type": "string", - "description": "The ID of the item from which this permission is inherited. This is an output-only field and is only populated for members of the Team Drive." - }, - "role": { - "type": "string", - "description": "The primary role for this user. While new values may be added in the future, the following are currently possible: \n- organizer \n- writer \n- commenter \n- reader" - }, - "teamDrivePermissionType": { - "type": "string", - "description": "The Team Drive permission type for this user. While new values may be added in future, the following are currently possible: \n- file \n- member" - } + "methods": { + "copy": { + "description": "Creates a copy of a file and applies any requested updates with patch semantics.", + "httpMethod": "POST", + "id": "drive.files.copy", + "parameterOrder": [ + "fileId" + ], + "parameters": { + "fileId": { + "description": "The ID of the file.", + "location": "path", + "required": true, + "type": "string" + }, + "ignoreDefaultVisibility": { + "default": "false", + "description": "Whether to ignore the domain's default visibility settings for the created file. Domain administrators can choose to make all uploaded files visible to the domain by default; this parameter bypasses that behavior for the request. Permissions are still inherited from parent folders.", + "location": "query", + "type": "boolean" + }, + "keepRevisionForever": { + "default": "false", + "description": "Whether to set the 'keepForever' field in the new head revision. This is only applicable to files with binary content in Drive.", + "location": "query", + "type": "boolean" + }, + "ocrLanguage": { + "description": "A language hint for OCR processing during image import (ISO 639-1 code).", + "location": "query", + "type": "string" + }, + "supportsTeamDrives": { + "default": "false", + "description": "Whether the requesting application supports Team Drives.", + "location": "query", + "type": "boolean" + } + }, + "path": "files/{fileId}/copy", + "request": { + "$ref": "File" + }, + "response": { + "$ref": "File" + }, + "scopes": [ + "https://www.googleapis.com/auth/drive", + "https://www.googleapis.com/auth/drive.appdata", + "https://www.googleapis.com/auth/drive.file", + "https://www.googleapis.com/auth/drive.photos.readonly" + ] + }, + "create": { + "description": "Creates a new file.", + "httpMethod": "POST", + "id": "drive.files.create", + "mediaUpload": { + "accept": [ + "*/*" + ], + "maxSize": "5120GB", + "protocols": { + "resumable": { + "multipart": true, + "path": "/resumable/upload/drive/v3/files" + }, + "simple": { + "multipart": true, + "path": "/upload/drive/v3/files" + } + } + }, + "parameters": { + "ignoreDefaultVisibility": { + "default": "false", + "description": "Whether to ignore the domain's default visibility settings for the created file. Domain administrators can choose to make all uploaded files visible to the domain by default; this parameter bypasses that behavior for the request. Permissions are still inherited from parent folders.", + "location": "query", + "type": "boolean" + }, + "keepRevisionForever": { + "default": "false", + "description": "Whether to set the 'keepForever' field in the new head revision. This is only applicable to files with binary content in Drive.", + "location": "query", + "type": "boolean" + }, + "ocrLanguage": { + "description": "A language hint for OCR processing during image import (ISO 639-1 code).", + "location": "query", + "type": "string" + }, + "supportsTeamDrives": { + "default": "false", + "description": "Whether the requesting application supports Team Drives.", + "location": "query", + "type": "boolean" + }, + "useContentAsIndexableText": { + "default": "false", + "description": "Whether to use the uploaded content as indexable text.", + "location": "query", + "type": "boolean" + } + }, + "path": "files", + "request": { + "$ref": "File" + }, + "response": { + "$ref": "File" + }, + "scopes": [ + "https://www.googleapis.com/auth/drive", + "https://www.googleapis.com/auth/drive.appdata", + "https://www.googleapis.com/auth/drive.file" + ], + "supportsMediaUpload": true, + "supportsSubscription": true + }, + "delete": { + "description": "Permanently deletes a file owned by the user without moving it to the trash. If the file belongs to a Team Drive the user must be an organizer on the parent. If the target is a folder, all descendants owned by the user are also deleted.", + "httpMethod": "DELETE", + "id": "drive.files.delete", + "parameterOrder": [ + "fileId" + ], + "parameters": { + "fileId": { + "description": "The ID of the file.", + "location": "path", + "required": true, + "type": "string" + }, + "supportsTeamDrives": { + "default": "false", + "description": "Whether the requesting application supports Team Drives.", + "location": "query", + "type": "boolean" + } + }, + "path": "files/{fileId}", + "scopes": [ + "https://www.googleapis.com/auth/drive", + "https://www.googleapis.com/auth/drive.appdata", + "https://www.googleapis.com/auth/drive.file" + ] + }, + "emptyTrash": { + "description": "Permanently deletes all of the user's trashed files.", + "httpMethod": "DELETE", + "id": "drive.files.emptyTrash", + "path": "files/trash", + "scopes": [ + "https://www.googleapis.com/auth/drive" + ] + }, + "export": { + "description": "Exports a Google Doc to the requested MIME type and returns the exported content. Please note that the exported content is limited to 10MB.", + "httpMethod": "GET", + "id": "drive.files.export", + "parameterOrder": [ + "fileId", + "mimeType" + ], + "parameters": { + "fileId": { + "description": "The ID of the file.", + "location": "path", + "required": true, + "type": "string" + }, + "mimeType": { + "description": "The MIME type of the format requested for this export.", + "location": "query", + "required": true, + "type": "string" + } + }, + "path": "files/{fileId}/export", + "scopes": [ + "https://www.googleapis.com/auth/drive", + "https://www.googleapis.com/auth/drive.file", + "https://www.googleapis.com/auth/drive.readonly" + ], + "supportsMediaDownload": true + }, + "generateIds": { + "description": "Generates a set of file IDs which can be provided in create requests.", + "httpMethod": "GET", + "id": "drive.files.generateIds", + "parameters": { + "count": { + "default": "10", + "description": "The number of IDs to return.", + "format": "int32", + "location": "query", + "maximum": "1000", + "minimum": "1", + "type": "integer" + }, + "space": { + "default": "drive", + "description": "The space in which the IDs can be used to create new files. Supported values are 'drive' and 'appDataFolder'.", + "location": "query", + "type": "string" + } + }, + "path": "files/generateIds", + "response": { + "$ref": "GeneratedIds" + }, + "scopes": [ + "https://www.googleapis.com/auth/drive", + "https://www.googleapis.com/auth/drive.appdata", + "https://www.googleapis.com/auth/drive.file" + ] + }, + "get": { + "description": "Gets a file's metadata or content by ID.", + "httpMethod": "GET", + "id": "drive.files.get", + "parameterOrder": [ + "fileId" + ], + "parameters": { + "acknowledgeAbuse": { + "default": "false", + "description": "Whether the user is acknowledging the risk of downloading known malware or other abusive files. This is only applicable when alt=media.", + "location": "query", + "type": "boolean" + }, + "fileId": { + "description": "The ID of the file.", + "location": "path", + "required": true, + "type": "string" + }, + "supportsTeamDrives": { + "default": "false", + "description": "Whether the requesting application supports Team Drives.", + "location": "query", + "type": "boolean" + } + }, + "path": "files/{fileId}", + "response": { + "$ref": "File" + }, + "scopes": [ + "https://www.googleapis.com/auth/drive", + "https://www.googleapis.com/auth/drive.appdata", + "https://www.googleapis.com/auth/drive.file", + "https://www.googleapis.com/auth/drive.metadata", + "https://www.googleapis.com/auth/drive.metadata.readonly", + "https://www.googleapis.com/auth/drive.photos.readonly", + "https://www.googleapis.com/auth/drive.readonly" + ], + "supportsMediaDownload": true, + "supportsSubscription": true, + "useMediaDownloadService": true + }, + "list": { + "description": "Lists or searches files.", + "httpMethod": "GET", + "id": "drive.files.list", + "parameters": { + "corpora": { + "description": "Comma-separated list of bodies of items (files/documents) to which the query applies. Supported bodies are 'user', 'domain', 'teamDrive' and 'allTeamDrives'. 'allTeamDrives' must be combined with 'user'; all other values must be used in isolation. Prefer 'user' or 'teamDrive' to 'allTeamDrives' for efficiency.", + "location": "query", + "type": "string" + }, + "corpus": { + "description": "The source of files to list. Deprecated: use 'corpora' instead.", + "enum": [ + "domain", + "user" + ], + "enumDescriptions": [ + "Files shared to the user's domain.", + "Files owned by or shared to the user." + ], + "location": "query", + "type": "string" + }, + "includeTeamDriveItems": { + "default": "false", + "description": "Whether Team Drive items should be included in results.", + "location": "query", + "type": "boolean" + }, + "orderBy": { + "description": "A comma-separated list of sort keys. Valid keys are 'createdTime', 'folder', 'modifiedByMeTime', 'modifiedTime', 'name', 'name_natural', 'quotaBytesUsed', 'recency', 'sharedWithMeTime', 'starred', and 'viewedByMeTime'. Each key sorts ascending by default, but may be reversed with the 'desc' modifier. Example usage: ?orderBy=folder,modifiedTime desc,name. Please note that there is a current limitation for users with approximately one million files in which the requested sort order is ignored.", + "location": "query", + "type": "string" + }, + "pageSize": { + "default": "100", + "description": "The maximum number of files to return per page. Partial or empty result pages are possible even before the end of the files list has been reached.", + "format": "int32", + "location": "query", + "maximum": "1000", + "minimum": "1", + "type": "integer" + }, + "pageToken": { + "description": "The token for continuing a previous list request on the next page. This should be set to the value of 'nextPageToken' from the previous response.", + "location": "query", + "type": "string" + }, + "q": { + "description": "A query for filtering the file results. See the \"Search for Files\" guide for supported syntax.", + "location": "query", + "type": "string" + }, + "spaces": { + "default": "drive", + "description": "A comma-separated list of spaces to query within the corpus. Supported values are 'drive', 'appDataFolder' and 'photos'.", + "location": "query", + "type": "string" + }, + "supportsTeamDrives": { + "default": "false", + "description": "Whether the requesting application supports Team Drives.", + "location": "query", + "type": "boolean" + }, + "teamDriveId": { + "description": "ID of Team Drive to search.", + "location": "query", + "type": "string" + } + }, + "path": "files", + "response": { + "$ref": "FileList" + }, + "scopes": [ + "https://www.googleapis.com/auth/drive", + "https://www.googleapis.com/auth/drive.appdata", + "https://www.googleapis.com/auth/drive.file", + "https://www.googleapis.com/auth/drive.metadata", + "https://www.googleapis.com/auth/drive.metadata.readonly", + "https://www.googleapis.com/auth/drive.photos.readonly", + "https://www.googleapis.com/auth/drive.readonly" + ] + }, + "update": { + "description": "Updates a file's metadata and/or content with patch semantics.", + "httpMethod": "PATCH", + "id": "drive.files.update", + "mediaUpload": { + "accept": [ + "*/*" + ], + "maxSize": "5120GB", + "protocols": { + "resumable": { + "multipart": true, + "path": "/resumable/upload/drive/v3/files/{fileId}" + }, + "simple": { + "multipart": true, + "path": "/upload/drive/v3/files/{fileId}" + } + } + }, + "parameterOrder": [ + "fileId" + ], + "parameters": { + "addParents": { + "description": "A comma-separated list of parent IDs to add.", + "location": "query", + "type": "string" + }, + "fileId": { + "description": "The ID of the file.", + "location": "path", + "required": true, + "type": "string" + }, + "keepRevisionForever": { + "default": "false", + "description": "Whether to set the 'keepForever' field in the new head revision. This is only applicable to files with binary content in Drive.", + "location": "query", + "type": "boolean" + }, + "ocrLanguage": { + "description": "A language hint for OCR processing during image import (ISO 639-1 code).", + "location": "query", + "type": "string" + }, + "removeParents": { + "description": "A comma-separated list of parent IDs to remove.", + "location": "query", + "type": "string" + }, + "supportsTeamDrives": { + "default": "false", + "description": "Whether the requesting application supports Team Drives.", + "location": "query", + "type": "boolean" + }, + "useContentAsIndexableText": { + "default": "false", + "description": "Whether to use the uploaded content as indexable text.", + "location": "query", + "type": "boolean" + } + }, + "path": "files/{fileId}", + "request": { + "$ref": "File" + }, + "response": { + "$ref": "File" + }, + "scopes": [ + "https://www.googleapis.com/auth/drive", + "https://www.googleapis.com/auth/drive.appdata", + "https://www.googleapis.com/auth/drive.file", + "https://www.googleapis.com/auth/drive.metadata", + "https://www.googleapis.com/auth/drive.scripts" + ], + "supportsMediaUpload": true + }, + "watch": { + "description": "Subscribes to changes to a file", + "httpMethod": "POST", + "id": "drive.files.watch", + "parameterOrder": [ + "fileId" + ], + "parameters": { + "acknowledgeAbuse": { + "default": "false", + "description": "Whether the user is acknowledging the risk of downloading known malware or other abusive files. This is only applicable when alt=media.", + "location": "query", + "type": "boolean" + }, + "fileId": { + "description": "The ID of the file.", + "location": "path", + "required": true, + "type": "string" + }, + "supportsTeamDrives": { + "default": "false", + "description": "Whether the requesting application supports Team Drives.", + "location": "query", + "type": "boolean" + } + }, + "path": "files/{fileId}/watch", + "request": { + "$ref": "Channel", + "parameterName": "resource" + }, + "response": { + "$ref": "Channel" + }, + "scopes": [ + "https://www.googleapis.com/auth/drive", + "https://www.googleapis.com/auth/drive.appdata", + "https://www.googleapis.com/auth/drive.file", + "https://www.googleapis.com/auth/drive.metadata", + "https://www.googleapis.com/auth/drive.metadata.readonly", + "https://www.googleapis.com/auth/drive.photos.readonly", + "https://www.googleapis.com/auth/drive.readonly" + ], + "supportsMediaDownload": true, + "supportsSubscription": true, + "useMediaDownloadService": true + } } - } - }, - "type": { - "type": "string", - "description": "The type of the grantee. Valid values are: \n- user \n- group \n- domain \n- anyone", - "annotations": { - "required": [ - "drive.permissions.create" - ] - } - } - } - }, - "PermissionList": { - "id": "PermissionList", - "type": "object", - "description": "A list of permissions for a file.", - "properties": { - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"drive#permissionList\".", - "default": "drive#permissionList" - }, - "nextPageToken": { - "type": "string", - "description": "The page token for the next page of permissions. This field will be absent if the end of the permissions list has been reached. If the token is rejected for any reason, it should be discarded, and pagination should be restarted from the first page of results." }, "permissions": { - "type": "array", - "description": "The list of permissions. If nextPageToken is populated, then this list may be incomplete and an additional page of results should be fetched.", - "items": { - "$ref": "Permission" - } - } - } - }, - "Reply": { - "id": "Reply", - "type": "object", - "description": "A reply to a comment on a file.", - "properties": { - "action": { - "type": "string", - "description": "The action the reply performed to the parent comment. Valid values are: \n- resolve \n- reopen" - }, - "author": { - "$ref": "User", - "description": "The user who created the reply." - }, - "content": { - "type": "string", - "description": "The plain text content of the reply. This field is used for setting the content, while htmlContent should be displayed. This is required on creates if no action is specified.", - "annotations": { - "required": [ - "drive.replies.update" - ] - } - }, - "createdTime": { - "type": "string", - "description": "The time at which the reply was created (RFC 3339 date-time).", - "format": "date-time" - }, - "deleted": { - "type": "boolean", - "description": "Whether the reply has been deleted. A deleted reply has no content." - }, - "htmlContent": { - "type": "string", - "description": "The content of the reply with HTML formatting." - }, - "id": { - "type": "string", - "description": "The ID of the reply." - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"drive#reply\".", - "default": "drive#reply" - }, - "modifiedTime": { - "type": "string", - "description": "The last time the reply was modified (RFC 3339 date-time).", - "format": "date-time" - } - } - }, - "ReplyList": { - "id": "ReplyList", - "type": "object", - "description": "A list of replies to a comment on a file.", - "properties": { - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"drive#replyList\".", - "default": "drive#replyList" - }, - "nextPageToken": { - "type": "string", - "description": "The page token for the next page of replies. This will be absent if the end of the replies list has been reached. If the token is rejected for any reason, it should be discarded, and pagination should be restarted from the first page of results." + "methods": { + "create": { + "description": "Creates a permission for a file or Team Drive.", + "httpMethod": "POST", + "id": "drive.permissions.create", + "parameterOrder": [ + "fileId" + ], + "parameters": { + "emailMessage": { + "description": "A plain text custom message to include in the notification email.", + "location": "query", + "type": "string" + }, + "fileId": { + "description": "The ID of the file or Team Drive.", + "location": "path", + "required": true, + "type": "string" + }, + "sendNotificationEmail": { + "description": "Whether to send a notification email when sharing to users or groups. This defaults to true for users and groups, and is not allowed for other requests. It must not be disabled for ownership transfers.", + "location": "query", + "type": "boolean" + }, + "supportsTeamDrives": { + "default": "false", + "description": "Whether the requesting application supports Team Drives.", + "location": "query", + "type": "boolean" + }, + "transferOwnership": { + "default": "false", + "description": "Whether to transfer ownership to the specified user and downgrade the current owner to a writer. This parameter is required as an acknowledgement of the side effect.", + "location": "query", + "type": "boolean" + }, + "useDomainAdminAccess": { + "default": "false", + "description": "Whether the request should be treated as if it was issued by a domain administrator; if set to true, then the requester will be granted access if they are an administrator of the domain to which the item belongs.", + "location": "query", + "type": "boolean" + } + }, + "path": "files/{fileId}/permissions", + "request": { + "$ref": "Permission" + }, + "response": { + "$ref": "Permission" + }, + "scopes": [ + "https://www.googleapis.com/auth/drive", + "https://www.googleapis.com/auth/drive.file" + ] + }, + "delete": { + "description": "Deletes a permission.", + "httpMethod": "DELETE", + "id": "drive.permissions.delete", + "parameterOrder": [ + "fileId", + "permissionId" + ], + "parameters": { + "fileId": { + "description": "The ID of the file or Team Drive.", + "location": "path", + "required": true, + "type": "string" + }, + "permissionId": { + "description": "The ID of the permission.", + "location": "path", + "required": true, + "type": "string" + }, + "supportsTeamDrives": { + "default": "false", + "description": "Whether the requesting application supports Team Drives.", + "location": "query", + "type": "boolean" + }, + "useDomainAdminAccess": { + "default": "false", + "description": "Whether the request should be treated as if it was issued by a domain administrator; if set to true, then the requester will be granted access if they are an administrator of the domain to which the item belongs.", + "location": "query", + "type": "boolean" + } + }, + "path": "files/{fileId}/permissions/{permissionId}", + "scopes": [ + "https://www.googleapis.com/auth/drive", + "https://www.googleapis.com/auth/drive.file" + ] + }, + "get": { + "description": "Gets a permission by ID.", + "httpMethod": "GET", + "id": "drive.permissions.get", + "parameterOrder": [ + "fileId", + "permissionId" + ], + "parameters": { + "fileId": { + "description": "The ID of the file.", + "location": "path", + "required": true, + "type": "string" + }, + "permissionId": { + "description": "The ID of the permission.", + "location": "path", + "required": true, + "type": "string" + }, + "supportsTeamDrives": { + "default": "false", + "description": "Whether the requesting application supports Team Drives.", + "location": "query", + "type": "boolean" + }, + "useDomainAdminAccess": { + "default": "false", + "description": "Whether the request should be treated as if it was issued by a domain administrator; if set to true, then the requester will be granted access if they are an administrator of the domain to which the item belongs.", + "location": "query", + "type": "boolean" + } + }, + "path": "files/{fileId}/permissions/{permissionId}", + "response": { + "$ref": "Permission" + }, + "scopes": [ + "https://www.googleapis.com/auth/drive", + "https://www.googleapis.com/auth/drive.file", + "https://www.googleapis.com/auth/drive.metadata", + "https://www.googleapis.com/auth/drive.metadata.readonly", + "https://www.googleapis.com/auth/drive.photos.readonly", + "https://www.googleapis.com/auth/drive.readonly" + ] + }, + "list": { + "description": "Lists a file's or Team Drive's permissions.", + "httpMethod": "GET", + "id": "drive.permissions.list", + "parameterOrder": [ + "fileId" + ], + "parameters": { + "fileId": { + "description": "The ID of the file or Team Drive.", + "location": "path", + "required": true, + "type": "string" + }, + "pageSize": { + "description": "The maximum number of permissions to return per page. When not set for files in a Team Drive, at most 100 results will be returned. When not set for files that are not in a Team Drive, the entire list will be returned.", + "format": "int32", + "location": "query", + "maximum": "100", + "minimum": "1", + "type": "integer" + }, + "pageToken": { + "description": "The token for continuing a previous list request on the next page. This should be set to the value of 'nextPageToken' from the previous response.", + "location": "query", + "type": "string" + }, + "supportsTeamDrives": { + "default": "false", + "description": "Whether the requesting application supports Team Drives.", + "location": "query", + "type": "boolean" + }, + "useDomainAdminAccess": { + "default": "false", + "description": "Whether the request should be treated as if it was issued by a domain administrator; if set to true, then the requester will be granted access if they are an administrator of the domain to which the item belongs.", + "location": "query", + "type": "boolean" + } + }, + "path": "files/{fileId}/permissions", + "response": { + "$ref": "PermissionList" + }, + "scopes": [ + "https://www.googleapis.com/auth/drive", + "https://www.googleapis.com/auth/drive.file", + "https://www.googleapis.com/auth/drive.metadata", + "https://www.googleapis.com/auth/drive.metadata.readonly", + "https://www.googleapis.com/auth/drive.photos.readonly", + "https://www.googleapis.com/auth/drive.readonly" + ] + }, + "update": { + "description": "Updates a permission with patch semantics.", + "httpMethod": "PATCH", + "id": "drive.permissions.update", + "parameterOrder": [ + "fileId", + "permissionId" + ], + "parameters": { + "fileId": { + "description": "The ID of the file or Team Drive.", + "location": "path", + "required": true, + "type": "string" + }, + "permissionId": { + "description": "The ID of the permission.", + "location": "path", + "required": true, + "type": "string" + }, + "removeExpiration": { + "default": "false", + "description": "Whether to remove the expiration date.", + "location": "query", + "type": "boolean" + }, + "supportsTeamDrives": { + "default": "false", + "description": "Whether the requesting application supports Team Drives.", + "location": "query", + "type": "boolean" + }, + "transferOwnership": { + "default": "false", + "description": "Whether to transfer ownership to the specified user and downgrade the current owner to a writer. This parameter is required as an acknowledgement of the side effect.", + "location": "query", + "type": "boolean" + }, + "useDomainAdminAccess": { + "default": "false", + "description": "Whether the request should be treated as if it was issued by a domain administrator; if set to true, then the requester will be granted access if they are an administrator of the domain to which the item belongs.", + "location": "query", + "type": "boolean" + } + }, + "path": "files/{fileId}/permissions/{permissionId}", + "request": { + "$ref": "Permission" + }, + "response": { + "$ref": "Permission" + }, + "scopes": [ + "https://www.googleapis.com/auth/drive", + "https://www.googleapis.com/auth/drive.file" + ] + } + } }, "replies": { - "type": "array", - "description": "The list of replies. If nextPageToken is populated, then this list may be incomplete and an additional page of results should be fetched.", - "items": { - "$ref": "Reply" - } - } - } - }, - "Revision": { - "id": "Revision", - "type": "object", - "description": "The metadata for a revision to a file.", - "properties": { - "id": { - "type": "string", - "description": "The ID of the revision." - }, - "keepForever": { - "type": "boolean", - "description": "Whether to keep this revision forever, even if it is no longer the head revision. If not set, the revision will be automatically purged 30 days after newer content is uploaded. This can be set on a maximum of 200 revisions for a file.\nThis field is only applicable to files with binary content in Drive." - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"drive#revision\".", - "default": "drive#revision" - }, - "lastModifyingUser": { - "$ref": "User", - "description": "The last user to modify this revision." - }, - "md5Checksum": { - "type": "string", - "description": "The MD5 checksum of the revision's content. This is only applicable to files with binary content in Drive." - }, - "mimeType": { - "type": "string", - "description": "The MIME type of the revision." - }, - "modifiedTime": { - "type": "string", - "description": "The last time the revision was modified (RFC 3339 date-time).", - "format": "date-time" - }, - "originalFilename": { - "type": "string", - "description": "The original filename used to create this revision. This is only applicable to files with binary content in Drive." - }, - "publishAuto": { - "type": "boolean", - "description": "Whether subsequent revisions will be automatically republished. This is only applicable to Google Docs." - }, - "published": { - "type": "boolean", - "description": "Whether this revision is published. This is only applicable to Google Docs." - }, - "publishedOutsideDomain": { - "type": "boolean", - "description": "Whether this revision is published outside the domain. This is only applicable to Google Docs." - }, - "size": { - "type": "string", - "description": "The size of the revision's content in bytes. This is only applicable to files with binary content in Drive.", - "format": "int64" - } - } - }, - "RevisionList": { - "id": "RevisionList", - "type": "object", - "description": "A list of revisions of a file.", - "properties": { - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"drive#revisionList\".", - "default": "drive#revisionList" - }, - "nextPageToken": { - "type": "string", - "description": "The page token for the next page of revisions. This will be absent if the end of the revisions list has been reached. If the token is rejected for any reason, it should be discarded, and pagination should be restarted from the first page of results." + "methods": { + "create": { + "description": "Creates a new reply to a comment.", + "httpMethod": "POST", + "id": "drive.replies.create", + "parameterOrder": [ + "fileId", + "commentId" + ], + "parameters": { + "commentId": { + "description": "The ID of the comment.", + "location": "path", + "required": true, + "type": "string" + }, + "fileId": { + "description": "The ID of the file.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "files/{fileId}/comments/{commentId}/replies", + "request": { + "$ref": "Reply" + }, + "response": { + "$ref": "Reply" + }, + "scopes": [ + "https://www.googleapis.com/auth/drive", + "https://www.googleapis.com/auth/drive.file" + ] + }, + "delete": { + "description": "Deletes a reply.", + "httpMethod": "DELETE", + "id": "drive.replies.delete", + "parameterOrder": [ + "fileId", + "commentId", + "replyId" + ], + "parameters": { + "commentId": { + "description": "The ID of the comment.", + "location": "path", + "required": true, + "type": "string" + }, + "fileId": { + "description": "The ID of the file.", + "location": "path", + "required": true, + "type": "string" + }, + "replyId": { + "description": "The ID of the reply.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "files/{fileId}/comments/{commentId}/replies/{replyId}", + "scopes": [ + "https://www.googleapis.com/auth/drive", + "https://www.googleapis.com/auth/drive.file" + ] + }, + "get": { + "description": "Gets a reply by ID.", + "httpMethod": "GET", + "id": "drive.replies.get", + "parameterOrder": [ + "fileId", + "commentId", + "replyId" + ], + "parameters": { + "commentId": { + "description": "The ID of the comment.", + "location": "path", + "required": true, + "type": "string" + }, + "fileId": { + "description": "The ID of the file.", + "location": "path", + "required": true, + "type": "string" + }, + "includeDeleted": { + "default": "false", + "description": "Whether to return deleted replies. Deleted replies will not include their original content.", + "location": "query", + "type": "boolean" + }, + "replyId": { + "description": "The ID of the reply.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "files/{fileId}/comments/{commentId}/replies/{replyId}", + "response": { + "$ref": "Reply" + }, + "scopes": [ + "https://www.googleapis.com/auth/drive", + "https://www.googleapis.com/auth/drive.file", + "https://www.googleapis.com/auth/drive.readonly" + ] + }, + "list": { + "description": "Lists a comment's replies.", + "httpMethod": "GET", + "id": "drive.replies.list", + "parameterOrder": [ + "fileId", + "commentId" + ], + "parameters": { + "commentId": { + "description": "The ID of the comment.", + "location": "path", + "required": true, + "type": "string" + }, + "fileId": { + "description": "The ID of the file.", + "location": "path", + "required": true, + "type": "string" + }, + "includeDeleted": { + "default": "false", + "description": "Whether to include deleted replies. Deleted replies will not include their original content.", + "location": "query", + "type": "boolean" + }, + "pageSize": { + "default": "20", + "description": "The maximum number of replies to return per page.", + "format": "int32", + "location": "query", + "maximum": "100", + "minimum": "1", + "type": "integer" + }, + "pageToken": { + "description": "The token for continuing a previous list request on the next page. This should be set to the value of 'nextPageToken' from the previous response.", + "location": "query", + "type": "string" + } + }, + "path": "files/{fileId}/comments/{commentId}/replies", + "response": { + "$ref": "ReplyList" + }, + "scopes": [ + "https://www.googleapis.com/auth/drive", + "https://www.googleapis.com/auth/drive.file", + "https://www.googleapis.com/auth/drive.readonly" + ] + }, + "update": { + "description": "Updates a reply with patch semantics.", + "httpMethod": "PATCH", + "id": "drive.replies.update", + "parameterOrder": [ + "fileId", + "commentId", + "replyId" + ], + "parameters": { + "commentId": { + "description": "The ID of the comment.", + "location": "path", + "required": true, + "type": "string" + }, + "fileId": { + "description": "The ID of the file.", + "location": "path", + "required": true, + "type": "string" + }, + "replyId": { + "description": "The ID of the reply.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "files/{fileId}/comments/{commentId}/replies/{replyId}", + "request": { + "$ref": "Reply" + }, + "response": { + "$ref": "Reply" + }, + "scopes": [ + "https://www.googleapis.com/auth/drive", + "https://www.googleapis.com/auth/drive.file" + ] + } + } }, "revisions": { - "type": "array", - "description": "The list of revisions. If nextPageToken is populated, then this list may be incomplete and an additional page of results should be fetched.", - "items": { - "$ref": "Revision" - } + "methods": { + "delete": { + "description": "Permanently deletes a revision. This method is only applicable to files with binary content in Drive.", + "httpMethod": "DELETE", + "id": "drive.revisions.delete", + "parameterOrder": [ + "fileId", + "revisionId" + ], + "parameters": { + "fileId": { + "description": "The ID of the file.", + "location": "path", + "required": true, + "type": "string" + }, + "revisionId": { + "description": "The ID of the revision.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "files/{fileId}/revisions/{revisionId}", + "scopes": [ + "https://www.googleapis.com/auth/drive", + "https://www.googleapis.com/auth/drive.appdata", + "https://www.googleapis.com/auth/drive.file" + ] + }, + "get": { + "description": "Gets a revision's metadata or content by ID.", + "httpMethod": "GET", + "id": "drive.revisions.get", + "parameterOrder": [ + "fileId", + "revisionId" + ], + "parameters": { + "acknowledgeAbuse": { + "default": "false", + "description": "Whether the user is acknowledging the risk of downloading known malware or other abusive files. This is only applicable when alt=media.", + "location": "query", + "type": "boolean" + }, + "fileId": { + "description": "The ID of the file.", + "location": "path", + "required": true, + "type": "string" + }, + "revisionId": { + "description": "The ID of the revision.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "files/{fileId}/revisions/{revisionId}", + "response": { + "$ref": "Revision" + }, + "scopes": [ + "https://www.googleapis.com/auth/drive", + "https://www.googleapis.com/auth/drive.appdata", + "https://www.googleapis.com/auth/drive.file", + "https://www.googleapis.com/auth/drive.metadata", + "https://www.googleapis.com/auth/drive.metadata.readonly", + "https://www.googleapis.com/auth/drive.photos.readonly", + "https://www.googleapis.com/auth/drive.readonly" + ], + "supportsMediaDownload": true, + "useMediaDownloadService": true + }, + "list": { + "description": "Lists a file's revisions.", + "httpMethod": "GET", + "id": "drive.revisions.list", + "parameterOrder": [ + "fileId" + ], + "parameters": { + "fileId": { + "description": "The ID of the file.", + "location": "path", + "required": true, + "type": "string" + }, + "pageSize": { + "default": "200", + "description": "The maximum number of revisions to return per page.", + "format": "int32", + "location": "query", + "maximum": "1000", + "minimum": "1", + "type": "integer" + }, + "pageToken": { + "description": "The token for continuing a previous list request on the next page. This should be set to the value of 'nextPageToken' from the previous response.", + "location": "query", + "type": "string" + } + }, + "path": "files/{fileId}/revisions", + "response": { + "$ref": "RevisionList" + }, + "scopes": [ + "https://www.googleapis.com/auth/drive", + "https://www.googleapis.com/auth/drive.appdata", + "https://www.googleapis.com/auth/drive.file", + "https://www.googleapis.com/auth/drive.metadata", + "https://www.googleapis.com/auth/drive.metadata.readonly", + "https://www.googleapis.com/auth/drive.photos.readonly", + "https://www.googleapis.com/auth/drive.readonly" + ] + }, + "update": { + "description": "Updates a revision with patch semantics.", + "httpMethod": "PATCH", + "id": "drive.revisions.update", + "parameterOrder": [ + "fileId", + "revisionId" + ], + "parameters": { + "fileId": { + "description": "The ID of the file.", + "location": "path", + "required": true, + "type": "string" + }, + "revisionId": { + "description": "The ID of the revision.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "files/{fileId}/revisions/{revisionId}", + "request": { + "$ref": "Revision" + }, + "response": { + "$ref": "Revision" + }, + "scopes": [ + "https://www.googleapis.com/auth/drive", + "https://www.googleapis.com/auth/drive.appdata", + "https://www.googleapis.com/auth/drive.file" + ] + } + } + }, + "teamdrives": { + "methods": { + "create": { + "description": "Creates a new Team Drive.", + "httpMethod": "POST", + "id": "drive.teamdrives.create", + "parameterOrder": [ + "requestId" + ], + "parameters": { + "requestId": { + "description": "An ID, such as a random UUID, which uniquely identifies this user's request for idempotent creation of a Team Drive. A repeated request by the same user and with the same request ID will avoid creating duplicates by attempting to create the same Team Drive. If the Team Drive already exists a 409 error will be returned.", + "location": "query", + "required": true, + "type": "string" + } + }, + "path": "teamdrives", + "request": { + "$ref": "TeamDrive" + }, + "response": { + "$ref": "TeamDrive" + }, + "scopes": [ + "https://www.googleapis.com/auth/drive" + ] + }, + "delete": { + "description": "Permanently deletes a Team Drive for which the user is an organizer. The Team Drive cannot contain any untrashed items.", + "httpMethod": "DELETE", + "id": "drive.teamdrives.delete", + "parameterOrder": [ + "teamDriveId" + ], + "parameters": { + "teamDriveId": { + "description": "The ID of the Team Drive", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "teamdrives/{teamDriveId}", + "scopes": [ + "https://www.googleapis.com/auth/drive" + ] + }, + "get": { + "description": "Gets a Team Drive's metadata by ID.", + "httpMethod": "GET", + "id": "drive.teamdrives.get", + "parameterOrder": [ + "teamDriveId" + ], + "parameters": { + "teamDriveId": { + "description": "The ID of the Team Drive", + "location": "path", + "required": true, + "type": "string" + }, + "useDomainAdminAccess": { + "default": "false", + "description": "Whether the request should be treated as if it was issued by a domain administrator; if set to true, then the requester will be granted access if they are an administrator of the domain to which the Team Drive belongs.", + "location": "query", + "type": "boolean" + } + }, + "path": "teamdrives/{teamDriveId}", + "response": { + "$ref": "TeamDrive" + }, + "scopes": [ + "https://www.googleapis.com/auth/drive", + "https://www.googleapis.com/auth/drive.readonly" + ] + }, + "list": { + "description": "Lists the user's Team Drives.", + "httpMethod": "GET", + "id": "drive.teamdrives.list", + "parameters": { + "pageSize": { + "default": "10", + "description": "Maximum number of Team Drives to return.", + "format": "int32", + "location": "query", + "maximum": "100", + "minimum": "1", + "type": "integer" + }, + "pageToken": { + "description": "Page token for Team Drives.", + "location": "query", + "type": "string" + }, + "q": { + "description": "Query string for searching Team Drives.", + "location": "query", + "type": "string" + }, + "useDomainAdminAccess": { + "default": "false", + "description": "Whether the request should be treated as if it was issued by a domain administrator; if set to true, then all Team Drives of the domain in which the requester is an administrator are returned.", + "location": "query", + "type": "boolean" + } + }, + "path": "teamdrives", + "response": { + "$ref": "TeamDriveList" + }, + "scopes": [ + "https://www.googleapis.com/auth/drive", + "https://www.googleapis.com/auth/drive.readonly" + ] + }, + "update": { + "description": "Updates a Team Drive's metadata", + "httpMethod": "PATCH", + "id": "drive.teamdrives.update", + "parameterOrder": [ + "teamDriveId" + ], + "parameters": { + "teamDriveId": { + "description": "The ID of the Team Drive", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "teamdrives/{teamDriveId}", + "request": { + "$ref": "TeamDrive" + }, + "response": { + "$ref": "TeamDrive" + }, + "scopes": [ + "https://www.googleapis.com/auth/drive" + ] + } + } } - } }, - "StartPageToken": { - "id": "StartPageToken", - "type": "object", - "properties": { - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"drive#startPageToken\".", - "default": "drive#startPageToken" + "revision": "20180126", + "rootUrl": "https://www.googleapis.com/", + "schemas": { + "About": { + "description": "Information about the user, the user's Drive, and system capabilities.", + "id": "About", + "properties": { + "appInstalled": { + "description": "Whether the user has installed the requesting app.", + "type": "boolean" + }, + "canCreateTeamDrives": { + "description": "Whether the user can create Team Drives.", + "type": "boolean" + }, + "exportFormats": { + "additionalProperties": { + "items": { + "type": "string" + }, + "type": "array" + }, + "description": "A map of source MIME type to possible targets for all supported exports.", + "type": "object" + }, + "folderColorPalette": { + "description": "The currently supported folder colors as RGB hex strings.", + "items": { + "type": "string" + }, + "type": "array" + }, + "importFormats": { + "additionalProperties": { + "items": { + "type": "string" + }, + "type": "array" + }, + "description": "A map of source MIME type to possible targets for all supported imports.", + "type": "object" + }, + "kind": { + "default": "drive#about", + "description": "Identifies what kind of resource this is. Value: the fixed string \"drive#about\".", + "type": "string" + }, + "maxImportSizes": { + "additionalProperties": { + "format": "int64", + "type": "string" + }, + "description": "A map of maximum import sizes by MIME type, in bytes.", + "type": "object" + }, + "maxUploadSize": { + "description": "The maximum upload size in bytes.", + "format": "int64", + "type": "string" + }, + "storageQuota": { + "description": "The user's storage quota limits and usage. All fields are measured in bytes.", + "properties": { + "limit": { + "description": "The usage limit, if applicable. This will not be present if the user has unlimited storage.", + "format": "int64", + "type": "string" + }, + "usage": { + "description": "The total usage across all services.", + "format": "int64", + "type": "string" + }, + "usageInDrive": { + "description": "The usage by all files in Google Drive.", + "format": "int64", + "type": "string" + }, + "usageInDriveTrash": { + "description": "The usage by trashed files in Google Drive.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "teamDriveThemes": { + "description": "A list of themes that are supported for Team Drives.", + "items": { + "properties": { + "backgroundImageLink": { + "description": "A link to this Team Drive theme's background image.", + "type": "string" + }, + "colorRgb": { + "description": "The color of this Team Drive theme as an RGB hex string.", + "type": "string" + }, + "id": { + "description": "The ID of the theme.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "user": { + "$ref": "User", + "description": "The authenticated user." + } + }, + "type": "object" }, - "startPageToken": { - "type": "string", - "description": "The starting page token for listing changes." + "Change": { + "description": "A change to a file or Team Drive.", + "id": "Change", + "properties": { + "file": { + "$ref": "File", + "description": "The updated state of the file. Present if the type is file and the file has not been removed from this list of changes." + }, + "fileId": { + "description": "The ID of the file which has changed.", + "type": "string" + }, + "kind": { + "default": "drive#change", + "description": "Identifies what kind of resource this is. Value: the fixed string \"drive#change\".", + "type": "string" + }, + "removed": { + "description": "Whether the file or Team Drive has been removed from this list of changes, for example by deletion or loss of access.", + "type": "boolean" + }, + "teamDrive": { + "$ref": "TeamDrive", + "description": "The updated state of the Team Drive. Present if the type is teamDrive, the user is still a member of the Team Drive, and the Team Drive has not been removed." + }, + "teamDriveId": { + "description": "The ID of the Team Drive associated with this change.", + "type": "string" + }, + "time": { + "description": "The time of this change (RFC 3339 date-time).", + "format": "date-time", + "type": "string" + }, + "type": { + "description": "The type of the change. Possible values are file and teamDrive.", + "type": "string" + } + }, + "type": "object" + }, + "ChangeList": { + "description": "A list of changes for a user.", + "id": "ChangeList", + "properties": { + "changes": { + "description": "The list of changes. If nextPageToken is populated, then this list may be incomplete and an additional page of results should be fetched.", + "items": { + "$ref": "Change" + }, + "type": "array" + }, + "kind": { + "default": "drive#changeList", + "description": "Identifies what kind of resource this is. Value: the fixed string \"drive#changeList\".", + "type": "string" + }, + "newStartPageToken": { + "description": "The starting page token for future changes. This will be present only if the end of the current changes list has been reached.", + "type": "string" + }, + "nextPageToken": { + "description": "The page token for the next page of changes. This will be absent if the end of the changes list has been reached. If the token is rejected for any reason, it should be discarded, and pagination should be restarted from the first page of results.", + "type": "string" + } + }, + "type": "object" + }, + "Channel": { + "description": "An notification channel used to watch for resource changes.", + "id": "Channel", + "properties": { + "address": { + "description": "The address where notifications are delivered for this channel.", + "type": "string" + }, + "expiration": { + "description": "Date and time of notification channel expiration, expressed as a Unix timestamp, in milliseconds. Optional.", + "format": "int64", + "type": "string" + }, + "id": { + "description": "A UUID or similar unique string that identifies this channel.", + "type": "string" + }, + "kind": { + "default": "api#channel", + "description": "Identifies this as a notification channel used to watch for changes to a resource. Value: the fixed string \"api#channel\".", + "type": "string" + }, + "params": { + "additionalProperties": { + "description": "Declares a new parameter by name.", + "type": "string" + }, + "description": "Additional parameters controlling delivery channel behavior. Optional.", + "type": "object" + }, + "payload": { + "description": "A Boolean value to indicate whether payload is wanted. Optional.", + "type": "boolean" + }, + "resourceId": { + "description": "An opaque ID that identifies the resource being watched on this channel. Stable across different API versions.", + "type": "string" + }, + "resourceUri": { + "description": "A version-specific identifier for the watched resource.", + "type": "string" + }, + "token": { + "description": "An arbitrary string delivered to the target address with each notification delivered over this channel. Optional.", + "type": "string" + }, + "type": { + "description": "The type of delivery mechanism used for this channel.", + "type": "string" + } + }, + "type": "object" + }, + "Comment": { + "description": "A comment on a file.", + "id": "Comment", + "properties": { + "anchor": { + "description": "A region of the document represented as a JSON string. See anchor documentation for details on how to define and interpret anchor properties.", + "type": "string" + }, + "author": { + "$ref": "User", + "description": "The user who created the comment." + }, + "content": { + "annotations": { + "required": [ + "drive.comments.create", + "drive.comments.update" + ] + }, + "description": "The plain text content of the comment. This field is used for setting the content, while htmlContent should be displayed.", + "type": "string" + }, + "createdTime": { + "description": "The time at which the comment was created (RFC 3339 date-time).", + "format": "date-time", + "type": "string" + }, + "deleted": { + "description": "Whether the comment has been deleted. A deleted comment has no content.", + "type": "boolean" + }, + "htmlContent": { + "description": "The content of the comment with HTML formatting.", + "type": "string" + }, + "id": { + "description": "The ID of the comment.", + "type": "string" + }, + "kind": { + "default": "drive#comment", + "description": "Identifies what kind of resource this is. Value: the fixed string \"drive#comment\".", + "type": "string" + }, + "modifiedTime": { + "description": "The last time the comment or any of its replies was modified (RFC 3339 date-time).", + "format": "date-time", + "type": "string" + }, + "quotedFileContent": { + "description": "The file content to which the comment refers, typically within the anchor region. For a text file, for example, this would be the text at the location of the comment.", + "properties": { + "mimeType": { + "description": "The MIME type of the quoted content.", + "type": "string" + }, + "value": { + "description": "The quoted content itself. This is interpreted as plain text if set through the API.", + "type": "string" + } + }, + "type": "object" + }, + "replies": { + "description": "The full list of replies to the comment in chronological order.", + "items": { + "$ref": "Reply" + }, + "type": "array" + }, + "resolved": { + "description": "Whether the comment has been resolved by one of its replies.", + "type": "boolean" + } + }, + "type": "object" + }, + "CommentList": { + "description": "A list of comments on a file.", + "id": "CommentList", + "properties": { + "comments": { + "description": "The list of comments. If nextPageToken is populated, then this list may be incomplete and an additional page of results should be fetched.", + "items": { + "$ref": "Comment" + }, + "type": "array" + }, + "kind": { + "default": "drive#commentList", + "description": "Identifies what kind of resource this is. Value: the fixed string \"drive#commentList\".", + "type": "string" + }, + "nextPageToken": { + "description": "The page token for the next page of comments. This will be absent if the end of the comments list has been reached. If the token is rejected for any reason, it should be discarded, and pagination should be restarted from the first page of results.", + "type": "string" + } + }, + "type": "object" + }, + "File": { + "description": "The metadata for a file.", + "id": "File", + "properties": { + "appProperties": { + "additionalProperties": { + "type": "string" + }, + "description": "A collection of arbitrary key-value pairs which are private to the requesting app.\nEntries with null values are cleared in update and copy requests.", + "type": "object" + }, + "capabilities": { + "description": "Capabilities the current user has on this file. Each capability corresponds to a fine-grained action that a user may take.", + "properties": { + "canAddChildren": { + "description": "Whether the current user can add children to this folder. This is always false when the item is not a folder.", + "type": "boolean" + }, + "canChangeViewersCanCopyContent": { + "description": "Whether the current user can change whether viewers can copy the contents of this file.", + "type": "boolean" + }, + "canComment": { + "description": "Whether the current user can comment on this file.", + "type": "boolean" + }, + "canCopy": { + "description": "Whether the current user can copy this file. For a Team Drive item, whether the current user can copy non-folder descendants of this item, or this item itself if it is not a folder.", + "type": "boolean" + }, + "canDelete": { + "description": "Whether the current user can delete this file.", + "type": "boolean" + }, + "canDownload": { + "description": "Whether the current user can download this file.", + "type": "boolean" + }, + "canEdit": { + "description": "Whether the current user can edit this file.", + "type": "boolean" + }, + "canListChildren": { + "description": "Whether the current user can list the children of this folder. This is always false when the item is not a folder.", + "type": "boolean" + }, + "canMoveItemIntoTeamDrive": { + "description": "Whether the current user can move this item into a Team Drive. If the item is in a Team Drive, this field is equivalent to canMoveTeamDriveItem.", + "type": "boolean" + }, + "canMoveTeamDriveItem": { + "description": "Whether the current user can move this Team Drive item by changing its parent. Note that a request to change the parent for this item may still fail depending on the new parent that is being added. Only populated for Team Drive files.", + "type": "boolean" + }, + "canReadRevisions": { + "description": "Whether the current user can read the revisions resource of this file. For a Team Drive item, whether revisions of non-folder descendants of this item, or this item itself if it is not a folder, can be read.", + "type": "boolean" + }, + "canReadTeamDrive": { + "description": "Whether the current user can read the Team Drive to which this file belongs. Only populated for Team Drive files.", + "type": "boolean" + }, + "canRemoveChildren": { + "description": "Whether the current user can remove children from this folder. This is always false when the item is not a folder.", + "type": "boolean" + }, + "canRename": { + "description": "Whether the current user can rename this file.", + "type": "boolean" + }, + "canShare": { + "description": "Whether the current user can modify the sharing settings for this file.", + "type": "boolean" + }, + "canTrash": { + "description": "Whether the current user can move this file to trash.", + "type": "boolean" + }, + "canUntrash": { + "description": "Whether the current user can restore this file from trash.", + "type": "boolean" + } + }, + "type": "object" + }, + "contentHints": { + "description": "Additional information about the content of the file. These fields are never populated in responses.", + "properties": { + "indexableText": { + "description": "Text to be indexed for the file to improve fullText queries. This is limited to 128KB in length and may contain HTML elements.", + "type": "string" + }, + "thumbnail": { + "description": "A thumbnail for the file. This will only be used if Drive cannot generate a standard thumbnail.", + "properties": { + "image": { + "description": "The thumbnail data encoded with URL-safe Base64 (RFC 4648 section 5).", + "format": "byte", + "type": "string" + }, + "mimeType": { + "description": "The MIME type of the thumbnail.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "createdTime": { + "description": "The time at which the file was created (RFC 3339 date-time).", + "format": "date-time", + "type": "string" + }, + "description": { + "description": "A short description of the file.", + "type": "string" + }, + "explicitlyTrashed": { + "description": "Whether the file has been explicitly trashed, as opposed to recursively trashed from a parent folder.", + "type": "boolean" + }, + "fileExtension": { + "description": "The final component of fullFileExtension. This is only available for files with binary content in Drive.", + "type": "string" + }, + "folderColorRgb": { + "description": "The color for a folder as an RGB hex string. The supported colors are published in the folderColorPalette field of the About resource.\nIf an unsupported color is specified, the closest color in the palette will be used instead.", + "type": "string" + }, + "fullFileExtension": { + "description": "The full file extension extracted from the name field. May contain multiple concatenated extensions, such as \"tar.gz\". This is only available for files with binary content in Drive.\nThis is automatically updated when the name field changes, however it is not cleared if the new name does not contain a valid extension.", + "type": "string" + }, + "hasAugmentedPermissions": { + "description": "Whether any users are granted file access directly on this file. This field is only populated for Team Drive files.", + "type": "boolean" + }, + "hasThumbnail": { + "description": "Whether this file has a thumbnail. This does not indicate whether the requesting app has access to the thumbnail. To check access, look for the presence of the thumbnailLink field.", + "type": "boolean" + }, + "headRevisionId": { + "description": "The ID of the file's head revision. This is currently only available for files with binary content in Drive.", + "type": "string" + }, + "iconLink": { + "description": "A static, unauthenticated link to the file's icon.", + "type": "string" + }, + "id": { + "description": "The ID of the file.", + "type": "string" + }, + "imageMediaMetadata": { + "description": "Additional metadata about image media, if available.", + "properties": { + "aperture": { + "description": "The aperture used to create the photo (f-number).", + "format": "float", + "type": "number" + }, + "cameraMake": { + "description": "The make of the camera used to create the photo.", + "type": "string" + }, + "cameraModel": { + "description": "The model of the camera used to create the photo.", + "type": "string" + }, + "colorSpace": { + "description": "The color space of the photo.", + "type": "string" + }, + "exposureBias": { + "description": "The exposure bias of the photo (APEX value).", + "format": "float", + "type": "number" + }, + "exposureMode": { + "description": "The exposure mode used to create the photo.", + "type": "string" + }, + "exposureTime": { + "description": "The length of the exposure, in seconds.", + "format": "float", + "type": "number" + }, + "flashUsed": { + "description": "Whether a flash was used to create the photo.", + "type": "boolean" + }, + "focalLength": { + "description": "The focal length used to create the photo, in millimeters.", + "format": "float", + "type": "number" + }, + "height": { + "description": "The height of the image in pixels.", + "format": "int32", + "type": "integer" + }, + "isoSpeed": { + "description": "The ISO speed used to create the photo.", + "format": "int32", + "type": "integer" + }, + "lens": { + "description": "The lens used to create the photo.", + "type": "string" + }, + "location": { + "description": "Geographic location information stored in the image.", + "properties": { + "altitude": { + "description": "The altitude stored in the image.", + "format": "double", + "type": "number" + }, + "latitude": { + "description": "The latitude stored in the image.", + "format": "double", + "type": "number" + }, + "longitude": { + "description": "The longitude stored in the image.", + "format": "double", + "type": "number" + } + }, + "type": "object" + }, + "maxApertureValue": { + "description": "The smallest f-number of the lens at the focal length used to create the photo (APEX value).", + "format": "float", + "type": "number" + }, + "meteringMode": { + "description": "The metering mode used to create the photo.", + "type": "string" + }, + "rotation": { + "description": "The rotation in clockwise degrees from the image's original orientation.", + "format": "int32", + "type": "integer" + }, + "sensor": { + "description": "The type of sensor used to create the photo.", + "type": "string" + }, + "subjectDistance": { + "description": "The distance to the subject of the photo, in meters.", + "format": "int32", + "type": "integer" + }, + "time": { + "description": "The date and time the photo was taken (EXIF DateTime).", + "type": "string" + }, + "whiteBalance": { + "description": "The white balance mode used to create the photo.", + "type": "string" + }, + "width": { + "description": "The width of the image in pixels.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "isAppAuthorized": { + "description": "Whether the file was created or opened by the requesting app.", + "type": "boolean" + }, + "kind": { + "default": "drive#file", + "description": "Identifies what kind of resource this is. Value: the fixed string \"drive#file\".", + "type": "string" + }, + "lastModifyingUser": { + "$ref": "User", + "description": "The last user to modify the file." + }, + "md5Checksum": { + "description": "The MD5 checksum for the content of the file. This is only applicable to files with binary content in Drive.", + "type": "string" + }, + "mimeType": { + "description": "The MIME type of the file.\nDrive will attempt to automatically detect an appropriate value from uploaded content if no value is provided. The value cannot be changed unless a new revision is uploaded.\nIf a file is created with a Google Doc MIME type, the uploaded content will be imported if possible. The supported import formats are published in the About resource.", + "type": "string" + }, + "modifiedByMe": { + "description": "Whether the file has been modified by this user.", + "type": "boolean" + }, + "modifiedByMeTime": { + "description": "The last time the file was modified by the user (RFC 3339 date-time).", + "format": "date-time", + "type": "string" + }, + "modifiedTime": { + "description": "The last time the file was modified by anyone (RFC 3339 date-time).\nNote that setting modifiedTime will also update modifiedByMeTime for the user.", + "format": "date-time", + "type": "string" + }, + "name": { + "description": "The name of the file. This is not necessarily unique within a folder. Note that for immutable items such as the top level folders of Team Drives, My Drive root folder, and Application Data folder the name is constant.", + "type": "string" + }, + "originalFilename": { + "description": "The original filename of the uploaded content if available, or else the original value of the name field. This is only available for files with binary content in Drive.", + "type": "string" + }, + "ownedByMe": { + "description": "Whether the user owns the file. Not populated for Team Drive files.", + "type": "boolean" + }, + "owners": { + "description": "The owners of the file. Currently, only certain legacy files may have more than one owner. Not populated for Team Drive files.", + "items": { + "$ref": "User" + }, + "type": "array" + }, + "parents": { + "description": "The IDs of the parent folders which contain the file.\nIf not specified as part of a create request, the file will be placed directly in the user's My Drive folder. If not specified as part of a copy request, the file will inherit any discoverable parents of the source file. Update requests must use the addParents and removeParents parameters to modify the parents list.", + "items": { + "type": "string" + }, + "type": "array" + }, + "permissionIds": { + "description": "List of permission IDs for users with access to this file.", + "items": { + "type": "string" + }, + "type": "array" + }, + "permissions": { + "description": "The full list of permissions for the file. This is only available if the requesting user can share the file. Not populated for Team Drive files.", + "items": { + "$ref": "Permission" + }, + "type": "array" + }, + "properties": { + "additionalProperties": { + "type": "string" + }, + "description": "A collection of arbitrary key-value pairs which are visible to all apps.\nEntries with null values are cleared in update and copy requests.", + "type": "object" + }, + "quotaBytesUsed": { + "description": "The number of storage quota bytes used by the file. This includes the head revision as well as previous revisions with keepForever enabled.", + "format": "int64", + "type": "string" + }, + "shared": { + "description": "Whether the file has been shared. Not populated for Team Drive files.", + "type": "boolean" + }, + "sharedWithMeTime": { + "description": "The time at which the file was shared with the user, if applicable (RFC 3339 date-time).", + "format": "date-time", + "type": "string" + }, + "sharingUser": { + "$ref": "User", + "description": "The user who shared the file with the requesting user, if applicable." + }, + "size": { + "description": "The size of the file's content in bytes. This is only applicable to files with binary content in Drive.", + "format": "int64", + "type": "string" + }, + "spaces": { + "description": "The list of spaces which contain the file. The currently supported values are 'drive', 'appDataFolder' and 'photos'.", + "items": { + "type": "string" + }, + "type": "array" + }, + "starred": { + "description": "Whether the user has starred the file.", + "type": "boolean" + }, + "teamDriveId": { + "description": "ID of the Team Drive the file resides in.", + "type": "string" + }, + "thumbnailLink": { + "description": "A short-lived link to the file's thumbnail, if available. Typically lasts on the order of hours. Only populated when the requesting app can access the file's content.", + "type": "string" + }, + "thumbnailVersion": { + "description": "The thumbnail version for use in thumbnail cache invalidation.", + "format": "int64", + "type": "string" + }, + "trashed": { + "description": "Whether the file has been trashed, either explicitly or from a trashed parent folder. Only the owner may trash a file, and other users cannot see files in the owner's trash.", + "type": "boolean" + }, + "trashedTime": { + "description": "The time that the item was trashed (RFC 3339 date-time). Only populated for Team Drive files.", + "format": "date-time", + "type": "string" + }, + "trashingUser": { + "$ref": "User", + "description": "If the file has been explicitly trashed, the user who trashed it. Only populated for Team Drive files." + }, + "version": { + "description": "A monotonically increasing version number for the file. This reflects every change made to the file on the server, even those not visible to the user.", + "format": "int64", + "type": "string" + }, + "videoMediaMetadata": { + "description": "Additional metadata about video media. This may not be available immediately upon upload.", + "properties": { + "durationMillis": { + "description": "The duration of the video in milliseconds.", + "format": "int64", + "type": "string" + }, + "height": { + "description": "The height of the video in pixels.", + "format": "int32", + "type": "integer" + }, + "width": { + "description": "The width of the video in pixels.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "viewedByMe": { + "description": "Whether the file has been viewed by this user.", + "type": "boolean" + }, + "viewedByMeTime": { + "description": "The last time the file was viewed by the user (RFC 3339 date-time).", + "format": "date-time", + "type": "string" + }, + "viewersCanCopyContent": { + "description": "Whether users with only reader or commenter permission can copy the file's content. This affects copy, download, and print operations.", + "type": "boolean" + }, + "webContentLink": { + "description": "A link for downloading the content of the file in a browser. This is only available for files with binary content in Drive.", + "type": "string" + }, + "webViewLink": { + "description": "A link for opening the file in a relevant Google editor or viewer in a browser.", + "type": "string" + }, + "writersCanShare": { + "description": "Whether users with only writer permission can modify the file's permissions. Not populated for Team Drive files.", + "type": "boolean" + } + }, + "type": "object" + }, + "FileList": { + "description": "A list of files.", + "id": "FileList", + "properties": { + "files": { + "description": "The list of files. If nextPageToken is populated, then this list may be incomplete and an additional page of results should be fetched.", + "items": { + "$ref": "File" + }, + "type": "array" + }, + "incompleteSearch": { + "description": "Whether the search process was incomplete. If true, then some search results may be missing, since all documents were not searched. This may occur when searching multiple Team Drives with the \"user,allTeamDrives\" corpora, but all corpora could not be searched. When this happens, it is suggested that clients narrow their query by choosing a different corpus such as \"user\" or \"teamDrive\".", + "type": "boolean" + }, + "kind": { + "default": "drive#fileList", + "description": "Identifies what kind of resource this is. Value: the fixed string \"drive#fileList\".", + "type": "string" + }, + "nextPageToken": { + "description": "The page token for the next page of files. This will be absent if the end of the files list has been reached. If the token is rejected for any reason, it should be discarded, and pagination should be restarted from the first page of results.", + "type": "string" + } + }, + "type": "object" + }, + "GeneratedIds": { + "description": "A list of generated file IDs which can be provided in create requests.", + "id": "GeneratedIds", + "properties": { + "ids": { + "description": "The IDs generated for the requesting user in the specified space.", + "items": { + "type": "string" + }, + "type": "array" + }, + "kind": { + "default": "drive#generatedIds", + "description": "Identifies what kind of resource this is. Value: the fixed string \"drive#generatedIds\".", + "type": "string" + }, + "space": { + "description": "The type of file that can be created with these IDs.", + "type": "string" + } + }, + "type": "object" + }, + "Permission": { + "description": "A permission for a file. A permission grants a user, group, domain or the world access to a file or a folder hierarchy.", + "id": "Permission", + "properties": { + "allowFileDiscovery": { + "description": "Whether the permission allows the file to be discovered through search. This is only applicable for permissions of type domain or anyone.", + "type": "boolean" + }, + "deleted": { + "description": "Whether the account associated with this permission has been deleted. This field only pertains to user and group permissions.", + "type": "boolean" + }, + "displayName": { + "description": "A displayable name for users, groups or domains.", + "type": "string" + }, + "domain": { + "description": "The domain to which this permission refers.", + "type": "string" + }, + "emailAddress": { + "description": "The email address of the user or group to which this permission refers.", + "type": "string" + }, + "expirationTime": { + "description": "The time at which this permission will expire (RFC 3339 date-time). Expiration times have the following restrictions: \n- They can only be set on user and group permissions \n- The time must be in the future \n- The time cannot be more than a year in the future", + "format": "date-time", + "type": "string" + }, + "id": { + "description": "The ID of this permission. This is a unique identifier for the grantee, and is published in User resources as permissionId.", + "type": "string" + }, + "kind": { + "default": "drive#permission", + "description": "Identifies what kind of resource this is. Value: the fixed string \"drive#permission\".", + "type": "string" + }, + "photoLink": { + "description": "A link to the user's profile photo, if available.", + "type": "string" + }, + "role": { + "annotations": { + "required": [ + "drive.permissions.create" + ] + }, + "description": "The role granted by this permission. While new values may be supported in the future, the following are currently allowed: \n- organizer \n- owner \n- writer \n- commenter \n- reader", + "type": "string" + }, + "teamDrivePermissionDetails": { + "description": "Details of whether the permissions on this Team Drive item are inherited or directly on this item. This is an output-only field which is present only for Team Drive items.", + "items": { + "properties": { + "inherited": { + "description": "Whether this permission is inherited. This field is always populated. This is an output-only field.", + "type": "boolean" + }, + "inheritedFrom": { + "description": "The ID of the item from which this permission is inherited. This is an output-only field and is only populated for members of the Team Drive.", + "type": "string" + }, + "role": { + "description": "The primary role for this user. While new values may be added in the future, the following are currently possible: \n- organizer \n- writer \n- commenter \n- reader", + "type": "string" + }, + "teamDrivePermissionType": { + "description": "The Team Drive permission type for this user. While new values may be added in future, the following are currently possible: \n- file \n- member", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "type": { + "annotations": { + "required": [ + "drive.permissions.create" + ] + }, + "description": "The type of the grantee. Valid values are: \n- user \n- group \n- domain \n- anyone", + "type": "string" + } + }, + "type": "object" + }, + "PermissionList": { + "description": "A list of permissions for a file.", + "id": "PermissionList", + "properties": { + "kind": { + "default": "drive#permissionList", + "description": "Identifies what kind of resource this is. Value: the fixed string \"drive#permissionList\".", + "type": "string" + }, + "nextPageToken": { + "description": "The page token for the next page of permissions. This field will be absent if the end of the permissions list has been reached. If the token is rejected for any reason, it should be discarded, and pagination should be restarted from the first page of results.", + "type": "string" + }, + "permissions": { + "description": "The list of permissions. If nextPageToken is populated, then this list may be incomplete and an additional page of results should be fetched.", + "items": { + "$ref": "Permission" + }, + "type": "array" + } + }, + "type": "object" + }, + "Reply": { + "description": "A reply to a comment on a file.", + "id": "Reply", + "properties": { + "action": { + "description": "The action the reply performed to the parent comment. Valid values are: \n- resolve \n- reopen", + "type": "string" + }, + "author": { + "$ref": "User", + "description": "The user who created the reply." + }, + "content": { + "annotations": { + "required": [ + "drive.replies.update" + ] + }, + "description": "The plain text content of the reply. This field is used for setting the content, while htmlContent should be displayed. This is required on creates if no action is specified.", + "type": "string" + }, + "createdTime": { + "description": "The time at which the reply was created (RFC 3339 date-time).", + "format": "date-time", + "type": "string" + }, + "deleted": { + "description": "Whether the reply has been deleted. A deleted reply has no content.", + "type": "boolean" + }, + "htmlContent": { + "description": "The content of the reply with HTML formatting.", + "type": "string" + }, + "id": { + "description": "The ID of the reply.", + "type": "string" + }, + "kind": { + "default": "drive#reply", + "description": "Identifies what kind of resource this is. Value: the fixed string \"drive#reply\".", + "type": "string" + }, + "modifiedTime": { + "description": "The last time the reply was modified (RFC 3339 date-time).", + "format": "date-time", + "type": "string" + } + }, + "type": "object" + }, + "ReplyList": { + "description": "A list of replies to a comment on a file.", + "id": "ReplyList", + "properties": { + "kind": { + "default": "drive#replyList", + "description": "Identifies what kind of resource this is. Value: the fixed string \"drive#replyList\".", + "type": "string" + }, + "nextPageToken": { + "description": "The page token for the next page of replies. This will be absent if the end of the replies list has been reached. If the token is rejected for any reason, it should be discarded, and pagination should be restarted from the first page of results.", + "type": "string" + }, + "replies": { + "description": "The list of replies. If nextPageToken is populated, then this list may be incomplete and an additional page of results should be fetched.", + "items": { + "$ref": "Reply" + }, + "type": "array" + } + }, + "type": "object" + }, + "Revision": { + "description": "The metadata for a revision to a file.", + "id": "Revision", + "properties": { + "id": { + "description": "The ID of the revision.", + "type": "string" + }, + "keepForever": { + "description": "Whether to keep this revision forever, even if it is no longer the head revision. If not set, the revision will be automatically purged 30 days after newer content is uploaded. This can be set on a maximum of 200 revisions for a file.\nThis field is only applicable to files with binary content in Drive.", + "type": "boolean" + }, + "kind": { + "default": "drive#revision", + "description": "Identifies what kind of resource this is. Value: the fixed string \"drive#revision\".", + "type": "string" + }, + "lastModifyingUser": { + "$ref": "User", + "description": "The last user to modify this revision." + }, + "md5Checksum": { + "description": "The MD5 checksum of the revision's content. This is only applicable to files with binary content in Drive.", + "type": "string" + }, + "mimeType": { + "description": "The MIME type of the revision.", + "type": "string" + }, + "modifiedTime": { + "description": "The last time the revision was modified (RFC 3339 date-time).", + "format": "date-time", + "type": "string" + }, + "originalFilename": { + "description": "The original filename used to create this revision. This is only applicable to files with binary content in Drive.", + "type": "string" + }, + "publishAuto": { + "description": "Whether subsequent revisions will be automatically republished. This is only applicable to Google Docs.", + "type": "boolean" + }, + "published": { + "description": "Whether this revision is published. This is only applicable to Google Docs.", + "type": "boolean" + }, + "publishedOutsideDomain": { + "description": "Whether this revision is published outside the domain. This is only applicable to Google Docs.", + "type": "boolean" + }, + "size": { + "description": "The size of the revision's content in bytes. This is only applicable to files with binary content in Drive.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "RevisionList": { + "description": "A list of revisions of a file.", + "id": "RevisionList", + "properties": { + "kind": { + "default": "drive#revisionList", + "description": "Identifies what kind of resource this is. Value: the fixed string \"drive#revisionList\".", + "type": "string" + }, + "nextPageToken": { + "description": "The page token for the next page of revisions. This will be absent if the end of the revisions list has been reached. If the token is rejected for any reason, it should be discarded, and pagination should be restarted from the first page of results.", + "type": "string" + }, + "revisions": { + "description": "The list of revisions. If nextPageToken is populated, then this list may be incomplete and an additional page of results should be fetched.", + "items": { + "$ref": "Revision" + }, + "type": "array" + } + }, + "type": "object" + }, + "StartPageToken": { + "id": "StartPageToken", + "properties": { + "kind": { + "default": "drive#startPageToken", + "description": "Identifies what kind of resource this is. Value: the fixed string \"drive#startPageToken\".", + "type": "string" + }, + "startPageToken": { + "description": "The starting page token for listing changes.", + "type": "string" + } + }, + "type": "object" + }, + "TeamDrive": { + "description": "Representation of a Team Drive.", + "id": "TeamDrive", + "properties": { + "backgroundImageFile": { + "description": "An image file and cropping parameters from which a background image for this Team Drive is set. This is a write only field; it can only be set on drive.teamdrives.update requests that don't set themeId. When specified, all fields of the backgroundImageFile must be set.", + "properties": { + "id": { + "description": "The ID of an image file in Drive to use for the background image.", + "type": "string" + }, + "width": { + "description": "The width of the cropped image in the closed range of 0 to 1. This value represents the width of the cropped image divided by the width of the entire image. The height is computed by applying a width to height aspect ratio of 80 to 9. The resulting image must be at least 1280 pixels wide and 144 pixels high.", + "format": "float", + "type": "number" + }, + "xCoordinate": { + "description": "The X coordinate of the upper left corner of the cropping area in the background image. This is a value in the closed range of 0 to 1. This value represents the horizontal distance from the left side of the entire image to the left side of the cropping area divided by the width of the entire image.", + "format": "float", + "type": "number" + }, + "yCoordinate": { + "description": "The Y coordinate of the upper left corner of the cropping area in the background image. This is a value in the closed range of 0 to 1. This value represents the vertical distance from the top side of the entire image to the top side of the cropping area divided by the height of the entire image.", + "format": "float", + "type": "number" + } + }, + "type": "object" + }, + "backgroundImageLink": { + "description": "A short-lived link to this Team Drive's background image.", + "type": "string" + }, + "capabilities": { + "description": "Capabilities the current user has on this Team Drive.", + "properties": { + "canAddChildren": { + "description": "Whether the current user can add children to folders in this Team Drive.", + "type": "boolean" + }, + "canChangeTeamDriveBackground": { + "description": "Whether the current user can change the background of this Team Drive.", + "type": "boolean" + }, + "canComment": { + "description": "Whether the current user can comment on files in this Team Drive.", + "type": "boolean" + }, + "canCopy": { + "description": "Whether the current user can copy files in this Team Drive.", + "type": "boolean" + }, + "canDeleteTeamDrive": { + "description": "Whether the current user can delete this Team Drive. Attempting to delete the Team Drive may still fail if there are untrashed items inside the Team Drive.", + "type": "boolean" + }, + "canDownload": { + "description": "Whether the current user can download files in this Team Drive.", + "type": "boolean" + }, + "canEdit": { + "description": "Whether the current user can edit files in this Team Drive", + "type": "boolean" + }, + "canListChildren": { + "description": "Whether the current user can list the children of folders in this Team Drive.", + "type": "boolean" + }, + "canManageMembers": { + "description": "Whether the current user can add members to this Team Drive or remove them or change their role.", + "type": "boolean" + }, + "canReadRevisions": { + "description": "Whether the current user can read the revisions resource of files in this Team Drive.", + "type": "boolean" + }, + "canRemoveChildren": { + "description": "Whether the current user can remove children from folders in this Team Drive.", + "type": "boolean" + }, + "canRename": { + "description": "Whether the current user can rename files or folders in this Team Drive.", + "type": "boolean" + }, + "canRenameTeamDrive": { + "description": "Whether the current user can rename this Team Drive.", + "type": "boolean" + }, + "canShare": { + "description": "Whether the current user can share files or folders in this Team Drive.", + "type": "boolean" + } + }, + "type": "object" + }, + "colorRgb": { + "description": "The color of this Team Drive as an RGB hex string. It can only be set on a drive.teamdrives.update request that does not set themeId.", + "type": "string" + }, + "createdTime": { + "description": "The time at which the Team Drive was created (RFC 3339 date-time).", + "format": "date-time", + "type": "string" + }, + "id": { + "description": "The ID of this Team Drive which is also the ID of the top level folder for this Team Drive.", + "type": "string" + }, + "kind": { + "default": "drive#teamDrive", + "description": "Identifies what kind of resource this is. Value: the fixed string \"drive#teamDrive\".", + "type": "string" + }, + "name": { + "description": "The name of this Team Drive.", + "type": "string" + }, + "themeId": { + "description": "The ID of the theme from which the background image and color will be set. The set of possible teamDriveThemes can be retrieved from a drive.about.get response. When not specified on a drive.teamdrives.create request, a random theme is chosen from which the background image and color are set. This is a write-only field; it can only be set on requests that don't set colorRgb or backgroundImageFile.", + "type": "string" + } + }, + "type": "object" + }, + "TeamDriveList": { + "description": "A list of Team Drives.", + "id": "TeamDriveList", + "properties": { + "kind": { + "default": "drive#teamDriveList", + "description": "Identifies what kind of resource this is. Value: the fixed string \"drive#teamDriveList\".", + "type": "string" + }, + "nextPageToken": { + "description": "The page token for the next page of Team Drives. This will be absent if the end of the Team Drives list has been reached. If the token is rejected for any reason, it should be discarded, and pagination should be restarted from the first page of results.", + "type": "string" + }, + "teamDrives": { + "description": "The list of Team Drives. If nextPageToken is populated, then this list may be incomplete and an additional page of results should be fetched.", + "items": { + "$ref": "TeamDrive" + }, + "type": "array" + } + }, + "type": "object" + }, + "User": { + "description": "Information about a Drive user.", + "id": "User", + "properties": { + "displayName": { + "description": "A plain text displayable name for this user.", + "type": "string" + }, + "emailAddress": { + "description": "The email address of the user. This may not be present in certain contexts if the user has not made their email address visible to the requester.", + "type": "string" + }, + "kind": { + "default": "drive#user", + "description": "Identifies what kind of resource this is. Value: the fixed string \"drive#user\".", + "type": "string" + }, + "me": { + "description": "Whether this user is the requesting user.", + "type": "boolean" + }, + "permissionId": { + "description": "The user's ID as visible in Permission resources.", + "type": "string" + }, + "photoLink": { + "description": "A link to the user's profile photo, if available.", + "type": "string" + } + }, + "type": "object" } - } }, - "TeamDrive": { - "id": "TeamDrive", - "type": "object", - "description": "Representation of a Team Drive.", - "properties": { - "backgroundImageFile": { - "type": "object", - "description": "An image file and cropping parameters from which a background image for this Team Drive is set. This is a write only field; it can only be set on drive.teamdrives.update requests that don't set themeId. When specified, all fields of the backgroundImageFile must be set.", - "properties": { - "id": { - "type": "string", - "description": "The ID of an image file in Drive to use for the background image." - }, - "width": { - "type": "number", - "description": "The width of the cropped image in the closed range of 0 to 1. This value represents the width of the cropped image divided by the width of the entire image. The height is computed by applying a width to height aspect ratio of 80 to 9. The resulting image must be at least 1280 pixels wide and 144 pixels high.", - "format": "float" - }, - "xCoordinate": { - "type": "number", - "description": "The X coordinate of the upper left corner of the cropping area in the background image. This is a value in the closed range of 0 to 1. This value represents the horizontal distance from the left side of the entire image to the left side of the cropping area divided by the width of the entire image.", - "format": "float" - }, - "yCoordinate": { - "type": "number", - "description": "The Y coordinate of the upper left corner of the cropping area in the background image. This is a value in the closed range of 0 to 1. This value represents the vertical distance from the top side of the entire image to the top side of the cropping area divided by the height of the entire image.", - "format": "float" - } - } - }, - "backgroundImageLink": { - "type": "string", - "description": "A short-lived link to this Team Drive's background image." - }, - "capabilities": { - "type": "object", - "description": "Capabilities the current user has on this Team Drive.", - "properties": { - "canAddChildren": { - "type": "boolean", - "description": "Whether the current user can add children to folders in this Team Drive." - }, - "canChangeTeamDriveBackground": { - "type": "boolean", - "description": "Whether the current user can change the background of this Team Drive." - }, - "canComment": { - "type": "boolean", - "description": "Whether the current user can comment on files in this Team Drive." - }, - "canCopy": { - "type": "boolean", - "description": "Whether the current user can copy files in this Team Drive." - }, - "canDeleteTeamDrive": { - "type": "boolean", - "description": "Whether the current user can delete this Team Drive. Attempting to delete the Team Drive may still fail if there are untrashed items inside the Team Drive." - }, - "canDownload": { - "type": "boolean", - "description": "Whether the current user can download files in this Team Drive." - }, - "canEdit": { - "type": "boolean", - "description": "Whether the current user can edit files in this Team Drive" - }, - "canListChildren": { - "type": "boolean", - "description": "Whether the current user can list the children of folders in this Team Drive." - }, - "canManageMembers": { - "type": "boolean", - "description": "Whether the current user can add members to this Team Drive or remove them or change their role." - }, - "canReadRevisions": { - "type": "boolean", - "description": "Whether the current user can read the revisions resource of files in this Team Drive." - }, - "canRemoveChildren": { - "type": "boolean", - "description": "Whether the current user can remove children from folders in this Team Drive." - }, - "canRename": { - "type": "boolean", - "description": "Whether the current user can rename files or folders in this Team Drive." - }, - "canRenameTeamDrive": { - "type": "boolean", - "description": "Whether the current user can rename this Team Drive." - }, - "canShare": { - "type": "boolean", - "description": "Whether the current user can share files or folders in this Team Drive." - } - } - }, - "colorRgb": { - "type": "string", - "description": "The color of this Team Drive as an RGB hex string. It can only be set on a drive.teamdrives.update request that does not set themeId." - }, - "createdTime": { - "type": "string", - "description": "The time at which the Team Drive was created (RFC 3339 date-time).", - "format": "date-time" - }, - "id": { - "type": "string", - "description": "The ID of this Team Drive which is also the ID of the top level folder for this Team Drive." - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"drive#teamDrive\".", - "default": "drive#teamDrive" - }, - "name": { - "type": "string", - "description": "The name of this Team Drive." - }, - "themeId": { - "type": "string", - "description": "The ID of the theme from which the background image and color will be set. The set of possible teamDriveThemes can be retrieved from a drive.about.get response. When not specified on a drive.teamdrives.create request, a random theme is chosen from which the background image and color are set. This is a write-only field; it can only be set on requests that don't set colorRgb or backgroundImageFile." - } - } - }, - "TeamDriveList": { - "id": "TeamDriveList", - "type": "object", - "description": "A list of Team Drives.", - "properties": { - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"drive#teamDriveList\".", - "default": "drive#teamDriveList" - }, - "nextPageToken": { - "type": "string", - "description": "The page token for the next page of Team Drives. This will be absent if the end of the Team Drives list has been reached. If the token is rejected for any reason, it should be discarded, and pagination should be restarted from the first page of results." - }, - "teamDrives": { - "type": "array", - "description": "The list of Team Drives. If nextPageToken is populated, then this list may be incomplete and an additional page of results should be fetched.", - "items": { - "$ref": "TeamDrive" - } - } - } - }, - "User": { - "id": "User", - "type": "object", - "description": "Information about a Drive user.", - "properties": { - "displayName": { - "type": "string", - "description": "A plain text displayable name for this user." - }, - "emailAddress": { - "type": "string", - "description": "The email address of the user. This may not be present in certain contexts if the user has not made their email address visible to the requester." - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"drive#user\".", - "default": "drive#user" - }, - "me": { - "type": "boolean", - "description": "Whether this user is the requesting user." - }, - "permissionId": { - "type": "string", - "description": "The user's ID as visible in Permission resources." - }, - "photoLink": { - "type": "string", - "description": "A link to the user's profile photo, if available." - } - } - } - }, - "resources": { - "about": { - "methods": { - "get": { - "id": "drive.about.get", - "path": "about", - "httpMethod": "GET", - "description": "Gets information about the user, the user's Drive, and system capabilities.", - "response": { - "$ref": "About" - }, - "scopes": [ - "https://www.googleapis.com/auth/drive", - "https://www.googleapis.com/auth/drive.appdata", - "https://www.googleapis.com/auth/drive.file", - "https://www.googleapis.com/auth/drive.metadata", - "https://www.googleapis.com/auth/drive.metadata.readonly", - "https://www.googleapis.com/auth/drive.photos.readonly", - "https://www.googleapis.com/auth/drive.readonly" - ] - } - } - }, - "changes": { - "methods": { - "getStartPageToken": { - "id": "drive.changes.getStartPageToken", - "path": "changes/startPageToken", - "httpMethod": "GET", - "description": "Gets the starting pageToken for listing future changes.", - "parameters": { - "supportsTeamDrives": { - "type": "boolean", - "description": "Whether the requesting application supports Team Drives.", - "default": "false", - "location": "query" - }, - "teamDriveId": { - "type": "string", - "description": "The ID of the Team Drive for which the starting pageToken for listing future changes from that Team Drive will be returned.", - "location": "query" - } - }, - "response": { - "$ref": "StartPageToken" - }, - "scopes": [ - "https://www.googleapis.com/auth/drive", - "https://www.googleapis.com/auth/drive.appdata", - "https://www.googleapis.com/auth/drive.file", - "https://www.googleapis.com/auth/drive.metadata", - "https://www.googleapis.com/auth/drive.metadata.readonly", - "https://www.googleapis.com/auth/drive.photos.readonly", - "https://www.googleapis.com/auth/drive.readonly" - ] - }, - "list": { - "id": "drive.changes.list", - "path": "changes", - "httpMethod": "GET", - "description": "Lists the changes for a user or Team Drive.", - "parameters": { - "includeCorpusRemovals": { - "type": "boolean", - "description": "Whether changes should include the file resource if the file is still accessible by the user at the time of the request, even when a file was removed from the list of changes and there will be no further change entries for this file.", - "default": "false", - "location": "query" - }, - "includeRemoved": { - "type": "boolean", - "description": "Whether to include changes indicating that items have been removed from the list of changes, for example by deletion or loss of access.", - "default": "true", - "location": "query" - }, - "includeTeamDriveItems": { - "type": "boolean", - "description": "Whether Team Drive files or changes should be included in results.", - "default": "false", - "location": "query" - }, - "pageSize": { - "type": "integer", - "description": "The maximum number of changes to return per page.", - "default": "100", - "format": "int32", - "minimum": "1", - "maximum": "1000", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "The token for continuing a previous list request on the next page. This should be set to the value of 'nextPageToken' from the previous response or to the response from the getStartPageToken method.", - "required": true, - "location": "query" - }, - "restrictToMyDrive": { - "type": "boolean", - "description": "Whether to restrict the results to changes inside the My Drive hierarchy. This omits changes to files such as those in the Application Data folder or shared files which have not been added to My Drive.", - "default": "false", - "location": "query" - }, - "spaces": { - "type": "string", - "description": "A comma-separated list of spaces to query within the user corpus. Supported values are 'drive', 'appDataFolder' and 'photos'.", - "default": "drive", - "location": "query" - }, - "supportsTeamDrives": { - "type": "boolean", - "description": "Whether the requesting application supports Team Drives.", - "default": "false", - "location": "query" - }, - "teamDriveId": { - "type": "string", - "description": "The Team Drive from which changes will be returned. If specified the change IDs will be reflective of the Team Drive; use the combined Team Drive ID and change ID as an identifier.", - "location": "query" - } - }, - "parameterOrder": [ - "pageToken" - ], - "response": { - "$ref": "ChangeList" - }, - "scopes": [ - "https://www.googleapis.com/auth/drive", - "https://www.googleapis.com/auth/drive.appdata", - "https://www.googleapis.com/auth/drive.file", - "https://www.googleapis.com/auth/drive.metadata", - "https://www.googleapis.com/auth/drive.metadata.readonly", - "https://www.googleapis.com/auth/drive.photos.readonly", - "https://www.googleapis.com/auth/drive.readonly" - ], - "supportsSubscription": true - }, - "watch": { - "id": "drive.changes.watch", - "path": "changes/watch", - "httpMethod": "POST", - "description": "Subscribes to changes for a user.", - "parameters": { - "includeCorpusRemovals": { - "type": "boolean", - "description": "Whether changes should include the file resource if the file is still accessible by the user at the time of the request, even when a file was removed from the list of changes and there will be no further change entries for this file.", - "default": "false", - "location": "query" - }, - "includeRemoved": { - "type": "boolean", - "description": "Whether to include changes indicating that items have been removed from the list of changes, for example by deletion or loss of access.", - "default": "true", - "location": "query" - }, - "includeTeamDriveItems": { - "type": "boolean", - "description": "Whether Team Drive files or changes should be included in results.", - "default": "false", - "location": "query" - }, - "pageSize": { - "type": "integer", - "description": "The maximum number of changes to return per page.", - "default": "100", - "format": "int32", - "minimum": "1", - "maximum": "1000", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "The token for continuing a previous list request on the next page. This should be set to the value of 'nextPageToken' from the previous response or to the response from the getStartPageToken method.", - "required": true, - "location": "query" - }, - "restrictToMyDrive": { - "type": "boolean", - "description": "Whether to restrict the results to changes inside the My Drive hierarchy. This omits changes to files such as those in the Application Data folder or shared files which have not been added to My Drive.", - "default": "false", - "location": "query" - }, - "spaces": { - "type": "string", - "description": "A comma-separated list of spaces to query within the user corpus. Supported values are 'drive', 'appDataFolder' and 'photos'.", - "default": "drive", - "location": "query" - }, - "supportsTeamDrives": { - "type": "boolean", - "description": "Whether the requesting application supports Team Drives.", - "default": "false", - "location": "query" - }, - "teamDriveId": { - "type": "string", - "description": "The Team Drive from which changes will be returned. If specified the change IDs will be reflective of the Team Drive; use the combined Team Drive ID and change ID as an identifier.", - "location": "query" - } - }, - "parameterOrder": [ - "pageToken" - ], - "request": { - "$ref": "Channel", - "parameterName": "resource" - }, - "response": { - "$ref": "Channel" - }, - "scopes": [ - "https://www.googleapis.com/auth/drive", - "https://www.googleapis.com/auth/drive.appdata", - "https://www.googleapis.com/auth/drive.file", - "https://www.googleapis.com/auth/drive.metadata", - "https://www.googleapis.com/auth/drive.metadata.readonly", - "https://www.googleapis.com/auth/drive.photos.readonly", - "https://www.googleapis.com/auth/drive.readonly" - ], - "supportsSubscription": true - } - } - }, - "channels": { - "methods": { - "stop": { - "id": "drive.channels.stop", - "path": "channels/stop", - "httpMethod": "POST", - "description": "Stop watching resources through this channel", - "request": { - "$ref": "Channel", - "parameterName": "resource" - }, - "scopes": [ - "https://www.googleapis.com/auth/drive", - "https://www.googleapis.com/auth/drive.appdata", - "https://www.googleapis.com/auth/drive.file", - "https://www.googleapis.com/auth/drive.metadata", - "https://www.googleapis.com/auth/drive.metadata.readonly", - "https://www.googleapis.com/auth/drive.photos.readonly", - "https://www.googleapis.com/auth/drive.readonly" - ] - } - } - }, - "comments": { - "methods": { - "create": { - "id": "drive.comments.create", - "path": "files/{fileId}/comments", - "httpMethod": "POST", - "description": "Creates a new comment on a file.", - "parameters": { - "fileId": { - "type": "string", - "description": "The ID of the file.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "fileId" - ], - "request": { - "$ref": "Comment" - }, - "response": { - "$ref": "Comment" - }, - "scopes": [ - "https://www.googleapis.com/auth/drive", - "https://www.googleapis.com/auth/drive.file" - ] - }, - "delete": { - "id": "drive.comments.delete", - "path": "files/{fileId}/comments/{commentId}", - "httpMethod": "DELETE", - "description": "Deletes a comment.", - "parameters": { - "commentId": { - "type": "string", - "description": "The ID of the comment.", - "required": true, - "location": "path" - }, - "fileId": { - "type": "string", - "description": "The ID of the file.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "fileId", - "commentId" - ], - "scopes": [ - "https://www.googleapis.com/auth/drive", - "https://www.googleapis.com/auth/drive.file" - ] - }, - "get": { - "id": "drive.comments.get", - "path": "files/{fileId}/comments/{commentId}", - "httpMethod": "GET", - "description": "Gets a comment by ID.", - "parameters": { - "commentId": { - "type": "string", - "description": "The ID of the comment.", - "required": true, - "location": "path" - }, - "fileId": { - "type": "string", - "description": "The ID of the file.", - "required": true, - "location": "path" - }, - "includeDeleted": { - "type": "boolean", - "description": "Whether to return deleted comments. Deleted comments will not include their original content.", - "default": "false", - "location": "query" - } - }, - "parameterOrder": [ - "fileId", - "commentId" - ], - "response": { - "$ref": "Comment" - }, - "scopes": [ - "https://www.googleapis.com/auth/drive", - "https://www.googleapis.com/auth/drive.file", - "https://www.googleapis.com/auth/drive.readonly" - ] - }, - "list": { - "id": "drive.comments.list", - "path": "files/{fileId}/comments", - "httpMethod": "GET", - "description": "Lists a file's comments.", - "parameters": { - "fileId": { - "type": "string", - "description": "The ID of the file.", - "required": true, - "location": "path" - }, - "includeDeleted": { - "type": "boolean", - "description": "Whether to include deleted comments. Deleted comments will not include their original content.", - "default": "false", - "location": "query" - }, - "pageSize": { - "type": "integer", - "description": "The maximum number of comments to return per page.", - "default": "20", - "format": "int32", - "minimum": "1", - "maximum": "100", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "The token for continuing a previous list request on the next page. This should be set to the value of 'nextPageToken' from the previous response.", - "location": "query" - }, - "startModifiedTime": { - "type": "string", - "description": "The minimum value of 'modifiedTime' for the result comments (RFC 3339 date-time).", - "location": "query" - } - }, - "parameterOrder": [ - "fileId" - ], - "response": { - "$ref": "CommentList" - }, - "scopes": [ - "https://www.googleapis.com/auth/drive", - "https://www.googleapis.com/auth/drive.file", - "https://www.googleapis.com/auth/drive.readonly" - ] - }, - "update": { - "id": "drive.comments.update", - "path": "files/{fileId}/comments/{commentId}", - "httpMethod": "PATCH", - "description": "Updates a comment with patch semantics.", - "parameters": { - "commentId": { - "type": "string", - "description": "The ID of the comment.", - "required": true, - "location": "path" - }, - "fileId": { - "type": "string", - "description": "The ID of the file.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "fileId", - "commentId" - ], - "request": { - "$ref": "Comment" - }, - "response": { - "$ref": "Comment" - }, - "scopes": [ - "https://www.googleapis.com/auth/drive", - "https://www.googleapis.com/auth/drive.file" - ] - } - } - }, - "files": { - "methods": { - "copy": { - "id": "drive.files.copy", - "path": "files/{fileId}/copy", - "httpMethod": "POST", - "description": "Creates a copy of a file and applies any requested updates with patch semantics.", - "parameters": { - "fileId": { - "type": "string", - "description": "The ID of the file.", - "required": true, - "location": "path" - }, - "ignoreDefaultVisibility": { - "type": "boolean", - "description": "Whether to ignore the domain's default visibility settings for the created file. Domain administrators can choose to make all uploaded files visible to the domain by default; this parameter bypasses that behavior for the request. Permissions are still inherited from parent folders.", - "default": "false", - "location": "query" - }, - "keepRevisionForever": { - "type": "boolean", - "description": "Whether to set the 'keepForever' field in the new head revision. This is only applicable to files with binary content in Drive.", - "default": "false", - "location": "query" - }, - "ocrLanguage": { - "type": "string", - "description": "A language hint for OCR processing during image import (ISO 639-1 code).", - "location": "query" - }, - "supportsTeamDrives": { - "type": "boolean", - "description": "Whether the requesting application supports Team Drives.", - "default": "false", - "location": "query" - } - }, - "parameterOrder": [ - "fileId" - ], - "request": { - "$ref": "File" - }, - "response": { - "$ref": "File" - }, - "scopes": [ - "https://www.googleapis.com/auth/drive", - "https://www.googleapis.com/auth/drive.appdata", - "https://www.googleapis.com/auth/drive.file", - "https://www.googleapis.com/auth/drive.photos.readonly" - ] - }, - "create": { - "id": "drive.files.create", - "path": "files", - "httpMethod": "POST", - "description": "Creates a new file.", - "parameters": { - "ignoreDefaultVisibility": { - "type": "boolean", - "description": "Whether to ignore the domain's default visibility settings for the created file. Domain administrators can choose to make all uploaded files visible to the domain by default; this parameter bypasses that behavior for the request. Permissions are still inherited from parent folders.", - "default": "false", - "location": "query" - }, - "keepRevisionForever": { - "type": "boolean", - "description": "Whether to set the 'keepForever' field in the new head revision. This is only applicable to files with binary content in Drive.", - "default": "false", - "location": "query" - }, - "ocrLanguage": { - "type": "string", - "description": "A language hint for OCR processing during image import (ISO 639-1 code).", - "location": "query" - }, - "supportsTeamDrives": { - "type": "boolean", - "description": "Whether the requesting application supports Team Drives.", - "default": "false", - "location": "query" - }, - "useContentAsIndexableText": { - "type": "boolean", - "description": "Whether to use the uploaded content as indexable text.", - "default": "false", - "location": "query" - } - }, - "request": { - "$ref": "File" - }, - "response": { - "$ref": "File" - }, - "scopes": [ - "https://www.googleapis.com/auth/drive", - "https://www.googleapis.com/auth/drive.appdata", - "https://www.googleapis.com/auth/drive.file" - ], - "supportsMediaUpload": true, - "mediaUpload": { - "accept": [ - "*/*" - ], - "maxSize": "5120GB", - "protocols": { - "simple": { - "multipart": true, - "path": "/upload/drive/v3/files" - }, - "resumable": { - "multipart": true, - "path": "/resumable/upload/drive/v3/files" - } - } - }, - "supportsSubscription": true - }, - "delete": { - "id": "drive.files.delete", - "path": "files/{fileId}", - "httpMethod": "DELETE", - "description": "Permanently deletes a file owned by the user without moving it to the trash. If the file belongs to a Team Drive the user must be an organizer on the parent. If the target is a folder, all descendants owned by the user are also deleted.", - "parameters": { - "fileId": { - "type": "string", - "description": "The ID of the file.", - "required": true, - "location": "path" - }, - "supportsTeamDrives": { - "type": "boolean", - "description": "Whether the requesting application supports Team Drives.", - "default": "false", - "location": "query" - } - }, - "parameterOrder": [ - "fileId" - ], - "scopes": [ - "https://www.googleapis.com/auth/drive", - "https://www.googleapis.com/auth/drive.appdata", - "https://www.googleapis.com/auth/drive.file" - ] - }, - "emptyTrash": { - "id": "drive.files.emptyTrash", - "path": "files/trash", - "httpMethod": "DELETE", - "description": "Permanently deletes all of the user's trashed files.", - "scopes": [ - "https://www.googleapis.com/auth/drive" - ] - }, - "export": { - "id": "drive.files.export", - "path": "files/{fileId}/export", - "httpMethod": "GET", - "description": "Exports a Google Doc to the requested MIME type and returns the exported content. Please note that the exported content is limited to 10MB.", - "parameters": { - "fileId": { - "type": "string", - "description": "The ID of the file.", - "required": true, - "location": "path" - }, - "mimeType": { - "type": "string", - "description": "The MIME type of the format requested for this export.", - "required": true, - "location": "query" - } - }, - "parameterOrder": [ - "fileId", - "mimeType" - ], - "scopes": [ - "https://www.googleapis.com/auth/drive", - "https://www.googleapis.com/auth/drive.file", - "https://www.googleapis.com/auth/drive.readonly" - ], - "supportsMediaDownload": true - }, - "generateIds": { - "id": "drive.files.generateIds", - "path": "files/generateIds", - "httpMethod": "GET", - "description": "Generates a set of file IDs which can be provided in create requests.", - "parameters": { - "count": { - "type": "integer", - "description": "The number of IDs to return.", - "default": "10", - "format": "int32", - "minimum": "1", - "maximum": "1000", - "location": "query" - }, - "space": { - "type": "string", - "description": "The space in which the IDs can be used to create new files. Supported values are 'drive' and 'appDataFolder'.", - "default": "drive", - "location": "query" - } - }, - "response": { - "$ref": "GeneratedIds" - }, - "scopes": [ - "https://www.googleapis.com/auth/drive", - "https://www.googleapis.com/auth/drive.appdata", - "https://www.googleapis.com/auth/drive.file" - ] - }, - "get": { - "id": "drive.files.get", - "path": "files/{fileId}", - "httpMethod": "GET", - "description": "Gets a file's metadata or content by ID.", - "parameters": { - "acknowledgeAbuse": { - "type": "boolean", - "description": "Whether the user is acknowledging the risk of downloading known malware or other abusive files. This is only applicable when alt=media.", - "default": "false", - "location": "query" - }, - "fileId": { - "type": "string", - "description": "The ID of the file.", - "required": true, - "location": "path" - }, - "supportsTeamDrives": { - "type": "boolean", - "description": "Whether the requesting application supports Team Drives.", - "default": "false", - "location": "query" - } - }, - "parameterOrder": [ - "fileId" - ], - "response": { - "$ref": "File" - }, - "scopes": [ - "https://www.googleapis.com/auth/drive", - "https://www.googleapis.com/auth/drive.appdata", - "https://www.googleapis.com/auth/drive.file", - "https://www.googleapis.com/auth/drive.metadata", - "https://www.googleapis.com/auth/drive.metadata.readonly", - "https://www.googleapis.com/auth/drive.photos.readonly", - "https://www.googleapis.com/auth/drive.readonly" - ], - "supportsMediaDownload": true, - "useMediaDownloadService": true, - "supportsSubscription": true - }, - "list": { - "id": "drive.files.list", - "path": "files", - "httpMethod": "GET", - "description": "Lists or searches files.", - "parameters": { - "corpora": { - "type": "string", - "description": "Comma-separated list of bodies of items (files/documents) to which the query applies. Supported bodies are 'user', 'domain', 'teamDrive' and 'allTeamDrives'. 'allTeamDrives' must be combined with 'user'; all other values must be used in isolation. Prefer 'user' or 'teamDrive' to 'allTeamDrives' for efficiency.", - "location": "query" - }, - "corpus": { - "type": "string", - "description": "The source of files to list. Deprecated: use 'corpora' instead.", - "enum": [ - "domain", - "user" - ], - "enumDescriptions": [ - "Files shared to the user's domain.", - "Files owned by or shared to the user." - ], - "location": "query" - }, - "includeTeamDriveItems": { - "type": "boolean", - "description": "Whether Team Drive items should be included in results.", - "default": "false", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "A comma-separated list of sort keys. Valid keys are 'createdTime', 'folder', 'modifiedByMeTime', 'modifiedTime', 'name', 'name_natural', 'quotaBytesUsed', 'recency', 'sharedWithMeTime', 'starred', and 'viewedByMeTime'. Each key sorts ascending by default, but may be reversed with the 'desc' modifier. Example usage: ?orderBy=folder,modifiedTime desc,name. Please note that there is a current limitation for users with approximately one million files in which the requested sort order is ignored.", - "location": "query" - }, - "pageSize": { - "type": "integer", - "description": "The maximum number of files to return per page. Partial or empty result pages are possible even before the end of the files list has been reached.", - "default": "100", - "format": "int32", - "minimum": "1", - "maximum": "1000", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "The token for continuing a previous list request on the next page. This should be set to the value of 'nextPageToken' from the previous response.", - "location": "query" - }, - "q": { - "type": "string", - "description": "A query for filtering the file results. See the \"Search for Files\" guide for supported syntax.", - "location": "query" - }, - "spaces": { - "type": "string", - "description": "A comma-separated list of spaces to query within the corpus. Supported values are 'drive', 'appDataFolder' and 'photos'.", - "default": "drive", - "location": "query" - }, - "supportsTeamDrives": { - "type": "boolean", - "description": "Whether the requesting application supports Team Drives.", - "default": "false", - "location": "query" - }, - "teamDriveId": { - "type": "string", - "description": "ID of Team Drive to search.", - "location": "query" - } - }, - "response": { - "$ref": "FileList" - }, - "scopes": [ - "https://www.googleapis.com/auth/drive", - "https://www.googleapis.com/auth/drive.appdata", - "https://www.googleapis.com/auth/drive.file", - "https://www.googleapis.com/auth/drive.metadata", - "https://www.googleapis.com/auth/drive.metadata.readonly", - "https://www.googleapis.com/auth/drive.photos.readonly", - "https://www.googleapis.com/auth/drive.readonly" - ] - }, - "update": { - "id": "drive.files.update", - "path": "files/{fileId}", - "httpMethod": "PATCH", - "description": "Updates a file's metadata and/or content with patch semantics.", - "parameters": { - "addParents": { - "type": "string", - "description": "A comma-separated list of parent IDs to add.", - "location": "query" - }, - "fileId": { - "type": "string", - "description": "The ID of the file.", - "required": true, - "location": "path" - }, - "keepRevisionForever": { - "type": "boolean", - "description": "Whether to set the 'keepForever' field in the new head revision. This is only applicable to files with binary content in Drive.", - "default": "false", - "location": "query" - }, - "ocrLanguage": { - "type": "string", - "description": "A language hint for OCR processing during image import (ISO 639-1 code).", - "location": "query" - }, - "removeParents": { - "type": "string", - "description": "A comma-separated list of parent IDs to remove.", - "location": "query" - }, - "supportsTeamDrives": { - "type": "boolean", - "description": "Whether the requesting application supports Team Drives.", - "default": "false", - "location": "query" - }, - "useContentAsIndexableText": { - "type": "boolean", - "description": "Whether to use the uploaded content as indexable text.", - "default": "false", - "location": "query" - } - }, - "parameterOrder": [ - "fileId" - ], - "request": { - "$ref": "File" - }, - "response": { - "$ref": "File" - }, - "scopes": [ - "https://www.googleapis.com/auth/drive", - "https://www.googleapis.com/auth/drive.appdata", - "https://www.googleapis.com/auth/drive.file", - "https://www.googleapis.com/auth/drive.metadata", - "https://www.googleapis.com/auth/drive.scripts" - ], - "supportsMediaUpload": true, - "mediaUpload": { - "accept": [ - "*/*" - ], - "maxSize": "5120GB", - "protocols": { - "simple": { - "multipart": true, - "path": "/upload/drive/v3/files/{fileId}" - }, - "resumable": { - "multipart": true, - "path": "/resumable/upload/drive/v3/files/{fileId}" - } - } - } - }, - "watch": { - "id": "drive.files.watch", - "path": "files/{fileId}/watch", - "httpMethod": "POST", - "description": "Subscribes to changes to a file", - "parameters": { - "acknowledgeAbuse": { - "type": "boolean", - "description": "Whether the user is acknowledging the risk of downloading known malware or other abusive files. This is only applicable when alt=media.", - "default": "false", - "location": "query" - }, - "fileId": { - "type": "string", - "description": "The ID of the file.", - "required": true, - "location": "path" - }, - "supportsTeamDrives": { - "type": "boolean", - "description": "Whether the requesting application supports Team Drives.", - "default": "false", - "location": "query" - } - }, - "parameterOrder": [ - "fileId" - ], - "request": { - "$ref": "Channel", - "parameterName": "resource" - }, - "response": { - "$ref": "Channel" - }, - "scopes": [ - "https://www.googleapis.com/auth/drive", - "https://www.googleapis.com/auth/drive.appdata", - "https://www.googleapis.com/auth/drive.file", - "https://www.googleapis.com/auth/drive.metadata", - "https://www.googleapis.com/auth/drive.metadata.readonly", - "https://www.googleapis.com/auth/drive.photos.readonly", - "https://www.googleapis.com/auth/drive.readonly" - ], - "supportsMediaDownload": true, - "useMediaDownloadService": true, - "supportsSubscription": true - } - } - }, - "permissions": { - "methods": { - "create": { - "id": "drive.permissions.create", - "path": "files/{fileId}/permissions", - "httpMethod": "POST", - "description": "Creates a permission for a file or Team Drive.", - "parameters": { - "emailMessage": { - "type": "string", - "description": "A plain text custom message to include in the notification email.", - "location": "query" - }, - "fileId": { - "type": "string", - "description": "The ID of the file or Team Drive.", - "required": true, - "location": "path" - }, - "sendNotificationEmail": { - "type": "boolean", - "description": "Whether to send a notification email when sharing to users or groups. This defaults to true for users and groups, and is not allowed for other requests. It must not be disabled for ownership transfers.", - "location": "query" - }, - "supportsTeamDrives": { - "type": "boolean", - "description": "Whether the requesting application supports Team Drives.", - "default": "false", - "location": "query" - }, - "transferOwnership": { - "type": "boolean", - "description": "Whether to transfer ownership to the specified user and downgrade the current owner to a writer. This parameter is required as an acknowledgement of the side effect.", - "default": "false", - "location": "query" - }, - "useDomainAdminAccess": { - "type": "boolean", - "description": "Whether the request should be treated as if it was issued by a domain administrator; if set to true, then the requester will be granted access if they are an administrator of the domain to which the item belongs.", - "default": "false", - "location": "query" - } - }, - "parameterOrder": [ - "fileId" - ], - "request": { - "$ref": "Permission" - }, - "response": { - "$ref": "Permission" - }, - "scopes": [ - "https://www.googleapis.com/auth/drive", - "https://www.googleapis.com/auth/drive.file" - ] - }, - "delete": { - "id": "drive.permissions.delete", - "path": "files/{fileId}/permissions/{permissionId}", - "httpMethod": "DELETE", - "description": "Deletes a permission.", - "parameters": { - "fileId": { - "type": "string", - "description": "The ID of the file or Team Drive.", - "required": true, - "location": "path" - }, - "permissionId": { - "type": "string", - "description": "The ID of the permission.", - "required": true, - "location": "path" - }, - "supportsTeamDrives": { - "type": "boolean", - "description": "Whether the requesting application supports Team Drives.", - "default": "false", - "location": "query" - }, - "useDomainAdminAccess": { - "type": "boolean", - "description": "Whether the request should be treated as if it was issued by a domain administrator; if set to true, then the requester will be granted access if they are an administrator of the domain to which the item belongs.", - "default": "false", - "location": "query" - } - }, - "parameterOrder": [ - "fileId", - "permissionId" - ], - "scopes": [ - "https://www.googleapis.com/auth/drive", - "https://www.googleapis.com/auth/drive.file" - ] - }, - "get": { - "id": "drive.permissions.get", - "path": "files/{fileId}/permissions/{permissionId}", - "httpMethod": "GET", - "description": "Gets a permission by ID.", - "parameters": { - "fileId": { - "type": "string", - "description": "The ID of the file.", - "required": true, - "location": "path" - }, - "permissionId": { - "type": "string", - "description": "The ID of the permission.", - "required": true, - "location": "path" - }, - "supportsTeamDrives": { - "type": "boolean", - "description": "Whether the requesting application supports Team Drives.", - "default": "false", - "location": "query" - }, - "useDomainAdminAccess": { - "type": "boolean", - "description": "Whether the request should be treated as if it was issued by a domain administrator; if set to true, then the requester will be granted access if they are an administrator of the domain to which the item belongs.", - "default": "false", - "location": "query" - } - }, - "parameterOrder": [ - "fileId", - "permissionId" - ], - "response": { - "$ref": "Permission" - }, - "scopes": [ - "https://www.googleapis.com/auth/drive", - "https://www.googleapis.com/auth/drive.file", - "https://www.googleapis.com/auth/drive.metadata", - "https://www.googleapis.com/auth/drive.metadata.readonly", - "https://www.googleapis.com/auth/drive.photos.readonly", - "https://www.googleapis.com/auth/drive.readonly" - ] - }, - "list": { - "id": "drive.permissions.list", - "path": "files/{fileId}/permissions", - "httpMethod": "GET", - "description": "Lists a file's or Team Drive's permissions.", - "parameters": { - "fileId": { - "type": "string", - "description": "The ID of the file or Team Drive.", - "required": true, - "location": "path" - }, - "pageSize": { - "type": "integer", - "description": "The maximum number of permissions to return per page. When not set for files in a Team Drive, at most 100 results will be returned. When not set for files that are not in a Team Drive, the entire list will be returned.", - "format": "int32", - "minimum": "1", - "maximum": "100", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "The token for continuing a previous list request on the next page. This should be set to the value of 'nextPageToken' from the previous response.", - "location": "query" - }, - "supportsTeamDrives": { - "type": "boolean", - "description": "Whether the requesting application supports Team Drives.", - "default": "false", - "location": "query" - }, - "useDomainAdminAccess": { - "type": "boolean", - "description": "Whether the request should be treated as if it was issued by a domain administrator; if set to true, then the requester will be granted access if they are an administrator of the domain to which the item belongs.", - "default": "false", - "location": "query" - } - }, - "parameterOrder": [ - "fileId" - ], - "response": { - "$ref": "PermissionList" - }, - "scopes": [ - "https://www.googleapis.com/auth/drive", - "https://www.googleapis.com/auth/drive.file", - "https://www.googleapis.com/auth/drive.metadata", - "https://www.googleapis.com/auth/drive.metadata.readonly", - "https://www.googleapis.com/auth/drive.photos.readonly", - "https://www.googleapis.com/auth/drive.readonly" - ] - }, - "update": { - "id": "drive.permissions.update", - "path": "files/{fileId}/permissions/{permissionId}", - "httpMethod": "PATCH", - "description": "Updates a permission with patch semantics.", - "parameters": { - "fileId": { - "type": "string", - "description": "The ID of the file or Team Drive.", - "required": true, - "location": "path" - }, - "permissionId": { - "type": "string", - "description": "The ID of the permission.", - "required": true, - "location": "path" - }, - "removeExpiration": { - "type": "boolean", - "description": "Whether to remove the expiration date.", - "default": "false", - "location": "query" - }, - "supportsTeamDrives": { - "type": "boolean", - "description": "Whether the requesting application supports Team Drives.", - "default": "false", - "location": "query" - }, - "transferOwnership": { - "type": "boolean", - "description": "Whether to transfer ownership to the specified user and downgrade the current owner to a writer. This parameter is required as an acknowledgement of the side effect.", - "default": "false", - "location": "query" - }, - "useDomainAdminAccess": { - "type": "boolean", - "description": "Whether the request should be treated as if it was issued by a domain administrator; if set to true, then the requester will be granted access if they are an administrator of the domain to which the item belongs.", - "default": "false", - "location": "query" - } - }, - "parameterOrder": [ - "fileId", - "permissionId" - ], - "request": { - "$ref": "Permission" - }, - "response": { - "$ref": "Permission" - }, - "scopes": [ - "https://www.googleapis.com/auth/drive", - "https://www.googleapis.com/auth/drive.file" - ] - } - } - }, - "replies": { - "methods": { - "create": { - "id": "drive.replies.create", - "path": "files/{fileId}/comments/{commentId}/replies", - "httpMethod": "POST", - "description": "Creates a new reply to a comment.", - "parameters": { - "commentId": { - "type": "string", - "description": "The ID of the comment.", - "required": true, - "location": "path" - }, - "fileId": { - "type": "string", - "description": "The ID of the file.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "fileId", - "commentId" - ], - "request": { - "$ref": "Reply" - }, - "response": { - "$ref": "Reply" - }, - "scopes": [ - "https://www.googleapis.com/auth/drive", - "https://www.googleapis.com/auth/drive.file" - ] - }, - "delete": { - "id": "drive.replies.delete", - "path": "files/{fileId}/comments/{commentId}/replies/{replyId}", - "httpMethod": "DELETE", - "description": "Deletes a reply.", - "parameters": { - "commentId": { - "type": "string", - "description": "The ID of the comment.", - "required": true, - "location": "path" - }, - "fileId": { - "type": "string", - "description": "The ID of the file.", - "required": true, - "location": "path" - }, - "replyId": { - "type": "string", - "description": "The ID of the reply.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "fileId", - "commentId", - "replyId" - ], - "scopes": [ - "https://www.googleapis.com/auth/drive", - "https://www.googleapis.com/auth/drive.file" - ] - }, - "get": { - "id": "drive.replies.get", - "path": "files/{fileId}/comments/{commentId}/replies/{replyId}", - "httpMethod": "GET", - "description": "Gets a reply by ID.", - "parameters": { - "commentId": { - "type": "string", - "description": "The ID of the comment.", - "required": true, - "location": "path" - }, - "fileId": { - "type": "string", - "description": "The ID of the file.", - "required": true, - "location": "path" - }, - "includeDeleted": { - "type": "boolean", - "description": "Whether to return deleted replies. Deleted replies will not include their original content.", - "default": "false", - "location": "query" - }, - "replyId": { - "type": "string", - "description": "The ID of the reply.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "fileId", - "commentId", - "replyId" - ], - "response": { - "$ref": "Reply" - }, - "scopes": [ - "https://www.googleapis.com/auth/drive", - "https://www.googleapis.com/auth/drive.file", - "https://www.googleapis.com/auth/drive.readonly" - ] - }, - "list": { - "id": "drive.replies.list", - "path": "files/{fileId}/comments/{commentId}/replies", - "httpMethod": "GET", - "description": "Lists a comment's replies.", - "parameters": { - "commentId": { - "type": "string", - "description": "The ID of the comment.", - "required": true, - "location": "path" - }, - "fileId": { - "type": "string", - "description": "The ID of the file.", - "required": true, - "location": "path" - }, - "includeDeleted": { - "type": "boolean", - "description": "Whether to include deleted replies. Deleted replies will not include their original content.", - "default": "false", - "location": "query" - }, - "pageSize": { - "type": "integer", - "description": "The maximum number of replies to return per page.", - "default": "20", - "format": "int32", - "minimum": "1", - "maximum": "100", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "The token for continuing a previous list request on the next page. This should be set to the value of 'nextPageToken' from the previous response.", - "location": "query" - } - }, - "parameterOrder": [ - "fileId", - "commentId" - ], - "response": { - "$ref": "ReplyList" - }, - "scopes": [ - "https://www.googleapis.com/auth/drive", - "https://www.googleapis.com/auth/drive.file", - "https://www.googleapis.com/auth/drive.readonly" - ] - }, - "update": { - "id": "drive.replies.update", - "path": "files/{fileId}/comments/{commentId}/replies/{replyId}", - "httpMethod": "PATCH", - "description": "Updates a reply with patch semantics.", - "parameters": { - "commentId": { - "type": "string", - "description": "The ID of the comment.", - "required": true, - "location": "path" - }, - "fileId": { - "type": "string", - "description": "The ID of the file.", - "required": true, - "location": "path" - }, - "replyId": { - "type": "string", - "description": "The ID of the reply.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "fileId", - "commentId", - "replyId" - ], - "request": { - "$ref": "Reply" - }, - "response": { - "$ref": "Reply" - }, - "scopes": [ - "https://www.googleapis.com/auth/drive", - "https://www.googleapis.com/auth/drive.file" - ] - } - } - }, - "revisions": { - "methods": { - "delete": { - "id": "drive.revisions.delete", - "path": "files/{fileId}/revisions/{revisionId}", - "httpMethod": "DELETE", - "description": "Permanently deletes a revision. This method is only applicable to files with binary content in Drive.", - "parameters": { - "fileId": { - "type": "string", - "description": "The ID of the file.", - "required": true, - "location": "path" - }, - "revisionId": { - "type": "string", - "description": "The ID of the revision.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "fileId", - "revisionId" - ], - "scopes": [ - "https://www.googleapis.com/auth/drive", - "https://www.googleapis.com/auth/drive.appdata", - "https://www.googleapis.com/auth/drive.file" - ] - }, - "get": { - "id": "drive.revisions.get", - "path": "files/{fileId}/revisions/{revisionId}", - "httpMethod": "GET", - "description": "Gets a revision's metadata or content by ID.", - "parameters": { - "acknowledgeAbuse": { - "type": "boolean", - "description": "Whether the user is acknowledging the risk of downloading known malware or other abusive files. This is only applicable when alt=media.", - "default": "false", - "location": "query" - }, - "fileId": { - "type": "string", - "description": "The ID of the file.", - "required": true, - "location": "path" - }, - "revisionId": { - "type": "string", - "description": "The ID of the revision.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "fileId", - "revisionId" - ], - "response": { - "$ref": "Revision" - }, - "scopes": [ - "https://www.googleapis.com/auth/drive", - "https://www.googleapis.com/auth/drive.appdata", - "https://www.googleapis.com/auth/drive.file", - "https://www.googleapis.com/auth/drive.metadata", - "https://www.googleapis.com/auth/drive.metadata.readonly", - "https://www.googleapis.com/auth/drive.photos.readonly", - "https://www.googleapis.com/auth/drive.readonly" - ], - "supportsMediaDownload": true, - "useMediaDownloadService": true - }, - "list": { - "id": "drive.revisions.list", - "path": "files/{fileId}/revisions", - "httpMethod": "GET", - "description": "Lists a file's revisions.", - "parameters": { - "fileId": { - "type": "string", - "description": "The ID of the file.", - "required": true, - "location": "path" - }, - "pageSize": { - "type": "integer", - "description": "The maximum number of revisions to return per page.", - "default": "200", - "format": "int32", - "minimum": "1", - "maximum": "1000", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "The token for continuing a previous list request on the next page. This should be set to the value of 'nextPageToken' from the previous response.", - "location": "query" - } - }, - "parameterOrder": [ - "fileId" - ], - "response": { - "$ref": "RevisionList" - }, - "scopes": [ - "https://www.googleapis.com/auth/drive", - "https://www.googleapis.com/auth/drive.appdata", - "https://www.googleapis.com/auth/drive.file", - "https://www.googleapis.com/auth/drive.metadata", - "https://www.googleapis.com/auth/drive.metadata.readonly", - "https://www.googleapis.com/auth/drive.photos.readonly", - "https://www.googleapis.com/auth/drive.readonly" - ] - }, - "update": { - "id": "drive.revisions.update", - "path": "files/{fileId}/revisions/{revisionId}", - "httpMethod": "PATCH", - "description": "Updates a revision with patch semantics.", - "parameters": { - "fileId": { - "type": "string", - "description": "The ID of the file.", - "required": true, - "location": "path" - }, - "revisionId": { - "type": "string", - "description": "The ID of the revision.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "fileId", - "revisionId" - ], - "request": { - "$ref": "Revision" - }, - "response": { - "$ref": "Revision" - }, - "scopes": [ - "https://www.googleapis.com/auth/drive", - "https://www.googleapis.com/auth/drive.appdata", - "https://www.googleapis.com/auth/drive.file" - ] - } - } - }, - "teamdrives": { - "methods": { - "create": { - "id": "drive.teamdrives.create", - "path": "teamdrives", - "httpMethod": "POST", - "description": "Creates a new Team Drive.", - "parameters": { - "requestId": { - "type": "string", - "description": "An ID, such as a random UUID, which uniquely identifies this user's request for idempotent creation of a Team Drive. A repeated request by the same user and with the same request ID will avoid creating duplicates by attempting to create the same Team Drive. If the Team Drive already exists a 409 error will be returned.", - "required": true, - "location": "query" - } - }, - "parameterOrder": [ - "requestId" - ], - "request": { - "$ref": "TeamDrive" - }, - "response": { - "$ref": "TeamDrive" - }, - "scopes": [ - "https://www.googleapis.com/auth/drive" - ] - }, - "delete": { - "id": "drive.teamdrives.delete", - "path": "teamdrives/{teamDriveId}", - "httpMethod": "DELETE", - "description": "Permanently deletes a Team Drive for which the user is an organizer. The Team Drive cannot contain any untrashed items.", - "parameters": { - "teamDriveId": { - "type": "string", - "description": "The ID of the Team Drive", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "teamDriveId" - ], - "scopes": [ - "https://www.googleapis.com/auth/drive" - ] - }, - "get": { - "id": "drive.teamdrives.get", - "path": "teamdrives/{teamDriveId}", - "httpMethod": "GET", - "description": "Gets a Team Drive's metadata by ID.", - "parameters": { - "teamDriveId": { - "type": "string", - "description": "The ID of the Team Drive", - "required": true, - "location": "path" - }, - "useDomainAdminAccess": { - "type": "boolean", - "description": "Whether the request should be treated as if it was issued by a domain administrator; if set to true, then the requester will be granted access if they are an administrator of the domain to which the Team Drive belongs.", - "default": "false", - "location": "query" - } - }, - "parameterOrder": [ - "teamDriveId" - ], - "response": { - "$ref": "TeamDrive" - }, - "scopes": [ - "https://www.googleapis.com/auth/drive", - "https://www.googleapis.com/auth/drive.readonly" - ] - }, - "list": { - "id": "drive.teamdrives.list", - "path": "teamdrives", - "httpMethod": "GET", - "description": "Lists the user's Team Drives.", - "parameters": { - "pageSize": { - "type": "integer", - "description": "Maximum number of Team Drives to return.", - "default": "10", - "format": "int32", - "minimum": "1", - "maximum": "100", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Page token for Team Drives.", - "location": "query" - }, - "q": { - "type": "string", - "description": "Query string for searching Team Drives.", - "location": "query" - }, - "useDomainAdminAccess": { - "type": "boolean", - "description": "Whether the request should be treated as if it was issued by a domain administrator; if set to true, then all Team Drives of the domain in which the requester is an administrator are returned.", - "default": "false", - "location": "query" - } - }, - "response": { - "$ref": "TeamDriveList" - }, - "scopes": [ - "https://www.googleapis.com/auth/drive", - "https://www.googleapis.com/auth/drive.readonly" - ] - }, - "update": { - "id": "drive.teamdrives.update", - "path": "teamdrives/{teamDriveId}", - "httpMethod": "PATCH", - "description": "Updates a Team Drive's metadata", - "parameters": { - "teamDriveId": { - "type": "string", - "description": "The ID of the Team Drive", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "teamDriveId" - ], - "request": { - "$ref": "TeamDrive" - }, - "response": { - "$ref": "TeamDrive" - }, - "scopes": [ - "https://www.googleapis.com/auth/drive" - ] - } - } - } - } -} + "servicePath": "drive/v3/", + "title": "Drive API", + "version": "v3" +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/drive/v3/drive-gen.go b/vendor/google.golang.org/api/drive/v3/drive-gen.go index c9a81ce4d..78989bdfe 100644 --- a/vendor/google.golang.org/api/drive/v3/drive-gen.go +++ b/vendor/google.golang.org/api/drive/v3/drive-gen.go @@ -208,6 +208,9 @@ type About struct { // AppInstalled: Whether the user has installed the requesting app. AppInstalled bool `json:"appInstalled,omitempty"` + // CanCreateTeamDrives: Whether the user can create Team Drives. + CanCreateTeamDrives bool `json:"canCreateTeamDrives,omitempty"` + // ExportFormats: A map of source MIME type to possible targets for all // supported exports. ExportFormats map[string][]string `json:"exportFormats,omitempty"` @@ -4143,11 +4146,12 @@ func (c *FilesCreateCall) doRequest(alt string) (*http.Response, error) { body = new(bytes.Buffer) reqHeaders.Set("Content-Type", "application/json") } - body, cleanup := c.mediaInfo_.UploadRequest(reqHeaders, body) + body, getBody, cleanup := c.mediaInfo_.UploadRequest(reqHeaders, body) defer cleanup() urls += "?" + c.urlParams_.Encode() req, _ := http.NewRequest("POST", urls, body) req.Header = reqHeaders + gensupport.SetGetBody(req, getBody) return gensupport.SendRequest(c.ctx_, c.s.client, req) } @@ -5406,11 +5410,12 @@ func (c *FilesUpdateCall) doRequest(alt string) (*http.Response, error) { body = new(bytes.Buffer) reqHeaders.Set("Content-Type", "application/json") } - body, cleanup := c.mediaInfo_.UploadRequest(reqHeaders, body) + body, getBody, cleanup := c.mediaInfo_.UploadRequest(reqHeaders, body) defer cleanup() urls += "?" + c.urlParams_.Encode() req, _ := http.NewRequest("PATCH", urls, body) req.Header = reqHeaders + gensupport.SetGetBody(req, getBody) googleapi.Expand(req.URL, map[string]string{ "fileId": c.fileId, }) diff --git a/vendor/google.golang.org/api/firebasedynamiclinks/v1/firebasedynamiclinks-api.json b/vendor/google.golang.org/api/firebasedynamiclinks/v1/firebasedynamiclinks-api.json index 1cb930048..cfc4a97b1 100644 --- a/vendor/google.golang.org/api/firebasedynamiclinks/v1/firebasedynamiclinks-api.json +++ b/vendor/google.golang.org/api/firebasedynamiclinks/v1/firebasedynamiclinks-api.json @@ -1,5 +1,4 @@ { - "canonicalName": "Firebase Dynamic Links", "auth": { "oauth2": { "scopes": { @@ -9,81 +8,180 @@ } } }, - "rootUrl": "https://firebasedynamiclinks-ipv6.googleapis.com/", - "ownerDomain": "google.com", - "name": "firebasedynamiclinks", + "basePath": "", + "baseUrl": "https://firebasedynamiclinks-ipv6.googleapis.com/", "batchPath": "batch", - "title": "Firebase Dynamic Links API", + "canonicalName": "Firebase Dynamic Links", + "description": "Programmatically creates and manages Firebase Dynamic Links.", + "discoveryVersion": "v1", + "documentationLink": "https://firebase.google.com/docs/dynamic-links/", + "icons": { + "x16": "http://www.google.com/images/icons/product/search-16.gif", + "x32": "http://www.google.com/images/icons/product/search-32.gif" + }, + "id": "firebasedynamiclinks:v1", + "kind": "discovery#restDescription", + "name": "firebasedynamiclinks", + "ownerDomain": "google.com", "ownerName": "Google", - "resources": { - "v1": { - "methods": { - "getLinkStats": { - "path": "v1/{dynamicLink}/linkStats", - "id": "firebasedynamiclinks.getLinkStats", - "description": "Fetches analytics stats of a short Dynamic Link for a given\nduration. Metrics include number of clicks, redirects, installs,\napp first opens, and app reopens.", - "response": { - "$ref": "DynamicLinkStats" - }, - "parameterOrder": [ - "dynamicLink" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/firebase" - ], - "parameters": { - "dynamicLink": { - "description": "Dynamic Link URL. e.g. https://abcd.app.goo.gl/wxyz", - "required": true, - "type": "string", - "location": "path" - }, - "durationDays": { - "description": "The span of time requested in days.", - "format": "int64", - "type": "string", - "location": "query" - } - }, - "flatPath": "v1/{dynamicLink}/linkStats" - }, - "installAttribution": { - "response": { - "$ref": "GetIosPostInstallAttributionResponse" - }, - "parameterOrder": [], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/firebase" - ], - "parameters": {}, - "flatPath": "v1/installAttribution", - "path": "v1/installAttribution", - "id": "firebasedynamiclinks.installAttribution", - "description": "Get iOS strong/weak-match info for post-install attribution.", - "request": { - "$ref": "GetIosPostInstallAttributionRequest" - } - } - } + "parameters": { + "$.xgafv": { + "description": "V1 error format.", + "enum": [ + "1", + "2" + ], + "enumDescriptions": [ + "v1 error format", + "v2 error format" + ], + "location": "query", + "type": "string" }, + "access_token": { + "description": "OAuth access token.", + "location": "query", + "type": "string" + }, + "alt": { + "default": "json", + "description": "Data format for response.", + "enum": [ + "json", + "media", + "proto" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json", + "Media download with context-dependent Content-Type", + "Responses with Content-Type of application/x-protobuf" + ], + "location": "query", + "type": "string" + }, + "bearer_token": { + "description": "OAuth bearer token.", + "location": "query", + "type": "string" + }, + "callback": { + "description": "JSONP", + "location": "query", + "type": "string" + }, + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "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.", + "location": "query", + "type": "string" + }, + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "pp": { + "default": "true", + "description": "Pretty-print response.", + "location": "query", + "type": "boolean" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", + "location": "query", + "type": "string" + }, + "uploadType": { + "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", + "location": "query", + "type": "string" + }, + "upload_protocol": { + "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", + "location": "query", + "type": "string" + } + }, + "protocol": "rest", + "resources": { "shortLinks": { "methods": { "create": { + "description": "Creates a short Dynamic Link given either a valid long Dynamic Link or\ndetails such as Dynamic Link domain, Android and iOS app information.\nThe created short Dynamic Link will not expire.\n\nRepeated calls with the same long Dynamic Link or Dynamic Link information\nwill produce the same short Dynamic Link.\n\nThe Dynamic Link domain in the request must be owned by requester's\nFirebase project.", "flatPath": "v1/shortLinks", + "httpMethod": "POST", "id": "firebasedynamiclinks.shortLinks.create", + "parameterOrder": [], + "parameters": {}, "path": "v1/shortLinks", "request": { "$ref": "CreateShortDynamicLinkRequest" }, - "description": "Creates a short Dynamic Link given either a valid long Dynamic Link or\ndetails such as Dynamic Link domain, Android and iOS app information.\nThe created short Dynamic Link will not expire.\n\nRepeated calls with the same long Dynamic Link or Dynamic Link information\nwill produce the same short Dynamic Link.\n\nThe Dynamic Link domain in the request must be owned by requester's\nFirebase project.", - "httpMethod": "POST", - "parameterOrder": [], "response": { "$ref": "CreateShortDynamicLinkResponse" }, + "scopes": [ + "https://www.googleapis.com/auth/firebase" + ] + } + } + }, + "v1": { + "methods": { + "getLinkStats": { + "description": "Fetches analytics stats of a short Dynamic Link for a given\nduration. Metrics include number of clicks, redirects, installs,\napp first opens, and app reopens.", + "flatPath": "v1/{dynamicLink}/linkStats", + "httpMethod": "GET", + "id": "firebasedynamiclinks.getLinkStats", + "parameterOrder": [ + "dynamicLink" + ], + "parameters": { + "durationDays": { + "description": "The span of time requested in days.", + "format": "int64", + "location": "query", + "type": "string" + }, + "dynamicLink": { + "description": "Dynamic Link URL. e.g. https://abcd.app.goo.gl/wxyz", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/{dynamicLink}/linkStats", + "response": { + "$ref": "DynamicLinkStats" + }, + "scopes": [ + "https://www.googleapis.com/auth/firebase" + ] + }, + "installAttribution": { + "description": "Get iOS strong/weak-match info for post-install attribution.", + "flatPath": "v1/installAttribution", + "httpMethod": "POST", + "id": "firebasedynamiclinks.installAttribution", + "parameterOrder": [], "parameters": {}, + "path": "v1/installAttribution", + "request": { + "$ref": "GetIosPostInstallAttributionRequest" + }, + "response": { + "$ref": "GetIosPostInstallAttributionResponse" + }, "scopes": [ "https://www.googleapis.com/auth/firebase" ] @@ -91,142 +189,243 @@ } } }, - "parameters": { - "upload_protocol": { - "location": "query", - "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", - "type": "string" - }, - "prettyPrint": { - "location": "query", - "description": "Returns response with indentations and line breaks.", - "type": "boolean", - "default": "true" - }, - "fields": { - "description": "Selector specifying which fields to include in a partial response.", - "type": "string", - "location": "query" - }, - "uploadType": { - "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", - "type": "string", - "location": "query" - }, - "$.xgafv": { - "description": "V1 error format.", - "type": "string", - "enumDescriptions": [ - "v1 error format", - "v2 error format" - ], - "location": "query", - "enum": [ - "1", - "2" - ] - }, - "callback": { - "description": "JSONP", - "type": "string", - "location": "query" - }, - "alt": { - "enum": [ - "json", - "media", - "proto" - ], - "type": "string", - "enumDescriptions": [ - "Responses with Content-Type of application/json", - "Media download with context-dependent Content-Type", - "Responses with Content-Type of application/x-protobuf" - ], - "location": "query", - "description": "Data format for response.", - "default": "json" - }, - "access_token": { - "description": "OAuth access token.", - "type": "string", - "location": "query" - }, - "key": { - "location": "query", - "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.", - "type": "string" - }, - "quotaUser": { - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", - "type": "string", - "location": "query" - }, - "pp": { - "description": "Pretty-print response.", - "type": "boolean", - "default": "true", - "location": "query" - }, - "oauth_token": { - "location": "query", - "description": "OAuth 2.0 token for the current user.", - "type": "string" - }, - "bearer_token": { - "description": "OAuth bearer token.", - "type": "string", - "location": "query" - } - }, - "version": "v1", - "baseUrl": "https://firebasedynamiclinks-ipv6.googleapis.com/", - "servicePath": "", - "description": "Programmatically creates and manages Firebase Dynamic Links.", - "kind": "discovery#restDescription", - "basePath": "", - "revision": "20180112", - "documentationLink": "https://firebase.google.com/docs/dynamic-links/", - "id": "firebasedynamiclinks:v1", - "discoveryVersion": "v1", - "version_module": true, + "revision": "20180303", + "rootUrl": "https://firebasedynamiclinks-ipv6.googleapis.com/", "schemas": { + "AnalyticsInfo": { + "description": "Tracking parameters supported by Dynamic Link.", + "id": "AnalyticsInfo", + "properties": { + "googlePlayAnalytics": { + "$ref": "GooglePlayAnalytics", + "description": "Google Play Campaign Measurements." + }, + "itunesConnectAnalytics": { + "$ref": "ITunesConnectAnalytics", + "description": "iTunes Connect App Analytics." + } + }, + "type": "object" + }, "AndroidInfo": { "description": "Android related attributes to the Dynamic Link.", - "type": "object", + "id": "AndroidInfo", "properties": { - "androidPackageName": { - "description": "Android package name of the app.", - "type": "string" - }, - "androidMinPackageVersionCode": { - "description": "Minimum version code for the Android app. If the installed app’s version\ncode is lower, then the user is taken to the Play Store.", + "androidFallbackLink": { + "description": "Link to open on Android if the app is not installed.", "type": "string" }, "androidLink": { "description": "If specified, this overrides the ‘link’ parameter on Android.", "type": "string" }, - "androidFallbackLink": { - "description": "Link to open on Android if the app is not installed.", + "androidMinPackageVersionCode": { + "description": "Minimum version code for the Android app. If the installed app’s version\ncode is lower, then the user is taken to the Play Store.", + "type": "string" + }, + "androidPackageName": { + "description": "Android package name of the app.", "type": "string" } }, - "id": "AndroidInfo" + "type": "object" + }, + "CreateShortDynamicLinkRequest": { + "description": "Request to create a short Dynamic Link.", + "id": "CreateShortDynamicLinkRequest", + "properties": { + "dynamicLinkInfo": { + "$ref": "DynamicLinkInfo", + "description": "Information about the Dynamic Link to be shortened.\n[Learn more](https://firebase.google.com/docs/reference/dynamic-links/link-shortener)." + }, + "longDynamicLink": { + "description": "Full long Dynamic Link URL with desired query parameters specified.\nFor example,\n\"https://sample.app.goo.gl/?link=http://www.google.com\u0026apn=com.sample\",\n[Learn more](https://firebase.google.com/docs/reference/dynamic-links/link-shortener).", + "type": "string" + }, + "suffix": { + "$ref": "Suffix", + "description": "Short Dynamic Link suffix. Optional." + } + }, + "type": "object" + }, + "CreateShortDynamicLinkResponse": { + "description": "Response to create a short Dynamic Link.", + "id": "CreateShortDynamicLinkResponse", + "properties": { + "previewLink": { + "description": "Preivew link to show the link flow chart.", + "type": "string" + }, + "shortLink": { + "description": "Short Dynamic Link value. e.g. https://abcd.app.goo.gl/wxyz", + "type": "string" + }, + "warning": { + "description": "Information about potential warnings on link creation.", + "items": { + "$ref": "DynamicLinkWarning" + }, + "type": "array" + } + }, + "type": "object" + }, + "DesktopInfo": { + "description": "Desktop related attributes to the Dynamic Link.", + "id": "DesktopInfo", + "properties": { + "desktopFallbackLink": { + "description": "Link to open on desktop.", + "type": "string" + } + }, + "type": "object" + }, + "DeviceInfo": { + "description": "Signals associated with the device making the request.", + "id": "DeviceInfo", + "properties": { + "deviceModelName": { + "description": "Device model name.", + "type": "string" + }, + "languageCode": { + "description": "Device language code setting.", + "type": "string" + }, + "languageCodeFromWebview": { + "description": "Device language code setting obtained by executing JavaScript code in\nWebView.", + "type": "string" + }, + "languageCodeRaw": { + "description": "Device language code raw setting.\niOS does returns language code in different format than iOS WebView.\nFor example WebView returns en_US, but iOS returns en-US.\nField below will return raw value returned by iOS.", + "type": "string" + }, + "screenResolutionHeight": { + "description": "Device display resolution height.", + "format": "int64", + "type": "string" + }, + "screenResolutionWidth": { + "description": "Device display resolution width.", + "format": "int64", + "type": "string" + }, + "timezone": { + "description": "Device timezone setting.", + "type": "string" + } + }, + "type": "object" + }, + "DynamicLinkEventStat": { + "description": "Dynamic Link event stat.", + "id": "DynamicLinkEventStat", + "properties": { + "count": { + "description": "The number of times this event occurred.", + "format": "int64", + "type": "string" + }, + "event": { + "description": "Link event.", + "enum": [ + "DYNAMIC_LINK_EVENT_UNSPECIFIED", + "CLICK", + "REDIRECT", + "APP_INSTALL", + "APP_FIRST_OPEN", + "APP_RE_OPEN" + ], + "enumDescriptions": [ + "Unspecified type.", + "Indicates that an FDL is clicked by users.", + "Indicates that an FDL redirects users to fallback link.", + "Indicates that an FDL triggers an app install from Play store, currently\nit's impossible to get stats from App store.", + "Indicates that the app is opened for the first time after an install\ntriggered by FDLs", + "Indicates that the app is opened via an FDL for non-first time." + ], + "type": "string" + }, + "platform": { + "description": "Requested platform.", + "enum": [ + "DYNAMIC_LINK_PLATFORM_UNSPECIFIED", + "ANDROID", + "IOS", + "DESKTOP" + ], + "enumDescriptions": [ + "Unspecified platform.", + "Represents Android platform.\nAll apps and browsers on Android are classfied in this category.", + "Represents iOS platform.\nAll apps and browsers on iOS are classfied in this category.", + "Represents desktop.\nNote: other platforms like Windows, Blackberry, Amazon fall into this\ncategory." + ], + "type": "string" + } + }, + "type": "object" + }, + "DynamicLinkInfo": { + "description": "Information about a Dynamic Link.", + "id": "DynamicLinkInfo", + "properties": { + "analyticsInfo": { + "$ref": "AnalyticsInfo", + "description": "Parameters used for tracking. See all tracking parameters in the\n[documentation](https://firebase.google.com/docs/dynamic-links/create-manually)." + }, + "androidInfo": { + "$ref": "AndroidInfo", + "description": "Android related information. See Android related parameters in the\n[documentation](https://firebase.google.com/docs/dynamic-links/create-manually)." + }, + "desktopInfo": { + "$ref": "DesktopInfo", + "description": "Desktop related information. See desktop related parameters in the\n[documentation](https://firebase.google.com/docs/dynamic-links/create-manually)." + }, + "dynamicLinkDomain": { + "description": "Dynamic Links domain that the project owns, e.g. abcd.app.goo.gl\n[Learn more](https://firebase.google.com/docs/dynamic-links/android/receive)\non how to set up Dynamic Link domain associated with your Firebase project.\n\nRequired.", + "type": "string" + }, + "iosInfo": { + "$ref": "IosInfo", + "description": "iOS related information. See iOS related parameters in the\n[documentation](https://firebase.google.com/docs/dynamic-links/create-manually)." + }, + "link": { + "description": "The link your app will open, You can specify any URL your app can handle.\nThis link must be a well-formatted URL, be properly URL-encoded, and use\nthe HTTP or HTTPS scheme. See 'link' parameters in the\n[documentation](https://firebase.google.com/docs/dynamic-links/create-manually).\n\nRequired.", + "type": "string" + }, + "navigationInfo": { + "$ref": "NavigationInfo", + "description": "Information of navigation behavior of a Firebase Dynamic Links." + }, + "socialMetaTagInfo": { + "$ref": "SocialMetaTagInfo", + "description": "Parameters for social meta tag params.\nUsed to set meta tag data for link previews on social sites." + } + }, + "type": "object" + }, + "DynamicLinkStats": { + "description": "Analytics stats of a Dynamic Link for a given timeframe.", + "id": "DynamicLinkStats", + "properties": { + "linkEventStats": { + "description": "Dynamic Link event stats.", + "items": { + "$ref": "DynamicLinkEventStat" + }, + "type": "array" + } + }, + "type": "object" }, "DynamicLinkWarning": { "description": "Dynamic Links warning messages.", - "type": "object", + "id": "DynamicLinkWarning", "properties": { - "warningMessage": { - "description": "The warning message to help developers improve their requests.", - "type": "string" - }, - "warningDocumentLink": { - "description": "The document describing the warning, and helps resolve.", - "type": "string" - }, "warningCode": { + "description": "The warning code.", "enum": [ "CODE_UNSPECIFIED", "NOT_IN_PROJECT_ANDROID_PACKAGE_NAME", @@ -258,8 +457,6 @@ "LINK_WITH_FRAGMENTS", "NOT_MATCHING_IOS_BUNDLE_ID_AND_STORE_ID" ], - "description": "The warning code.", - "type": "string", "enumDescriptions": [ "Unknown code.", "The Android package does not match any in developer's DevConsole project.", @@ -290,207 +487,29 @@ "Dynamic Link URL length is too long.", "Dynamic Link URL contains fragments.", "The iOS bundle ID does not match with the given iOS store ID." - ] - } - }, - "id": "DynamicLinkWarning" - }, - "DynamicLinkStats": { - "description": "Analytics stats of a Dynamic Link for a given timeframe.", - "type": "object", - "properties": { - "linkEventStats": { - "description": "Dynamic Link event stats.", - "type": "array", - "items": { - "$ref": "DynamicLinkEventStat" - } - } - }, - "id": "DynamicLinkStats" - }, - "NavigationInfo": { - "description": "Information of navigation behavior.", - "type": "object", - "properties": { - "enableForcedRedirect": { - "description": "If this option is on, FDL click will be forced to redirect rather than\nshow an interstitial page.", - "type": "boolean" - } - }, - "id": "NavigationInfo" - }, - "IosInfo": { - "description": "iOS related attributes to the Dynamic Link..", - "type": "object", - "properties": { - "iosIpadFallbackLink": { - "description": "If specified, this overrides the ios_fallback_link value on iPads.", + ], "type": "string" }, - "iosIpadBundleId": { - "description": "iPad bundle ID of the app.", + "warningDocumentLink": { + "description": "The document describing the warning, and helps resolve.", "type": "string" }, - "iosCustomScheme": { - "description": "Custom (destination) scheme to use for iOS. By default, we’ll use the\nbundle ID as the custom scheme. Developer can override this behavior using\nthis param.", - "type": "string" - }, - "iosBundleId": { - "description": "iOS bundle ID of the app.", - "type": "string" - }, - "iosFallbackLink": { - "description": "Link to open on iOS if the app is not installed.", - "type": "string" - }, - "iosAppStoreId": { - "description": "iOS App Store ID.", + "warningMessage": { + "description": "The warning message to help developers improve their requests.", "type": "string" } }, - "id": "IosInfo" - }, - "AnalyticsInfo": { - "properties": { - "itunesConnectAnalytics": { - "description": "iTunes Connect App Analytics.", - "$ref": "ITunesConnectAnalytics" - }, - "googlePlayAnalytics": { - "$ref": "GooglePlayAnalytics", - "description": "Google Play Campaign Measurements." - } - }, - "id": "AnalyticsInfo", - "description": "Tracking parameters supported by Dynamic Link.", "type": "object" }, - "CreateShortDynamicLinkRequest": { - "description": "Request to create a short Dynamic Link.", - "type": "object", - "properties": { - "suffix": { - "description": "Short Dynamic Link suffix. Optional.", - "$ref": "Suffix" - }, - "dynamicLinkInfo": { - "$ref": "DynamicLinkInfo", - "description": "Information about the Dynamic Link to be shortened.\n[Learn more](https://firebase.google.com/docs/dynamic-links/android#create-a-dynamic-link-programmatically)." - }, - "longDynamicLink": { - "description": "Full long Dynamic Link URL with desired query parameters specified.\nFor example,\n\"https://sample.app.goo.gl/?link=http://www.google.com&apn=com.sample\",\n[Learn more](https://firebase.google.com/docs/dynamic-links/android#create-a-dynamic-link-programmatically).", - "type": "string" - } - }, - "id": "CreateShortDynamicLinkRequest" - }, - "DesktopInfo": { - "description": "Desktop related attributes to the Dynamic Link.", - "type": "object", - "properties": { - "desktopFallbackLink": { - "description": "Link to open on desktop.", - "type": "string" - } - }, - "id": "DesktopInfo" - }, - "DynamicLinkEventStat": { - "description": "Dynamic Link event stat.", - "type": "object", - "properties": { - "platform": { - "enumDescriptions": [ - "Unspecified platform.", - "Represents Android platform.\nAll apps and browsers on Android are classfied in this category.", - "Represents iOS platform.\nAll apps and browsers on iOS are classfied in this category.", - "Represents desktop.\nNote: other platforms like Windows, Blackberry, Amazon fall into this\ncategory." - ], - "enum": [ - "DYNAMIC_LINK_PLATFORM_UNSPECIFIED", - "ANDROID", - "IOS", - "DESKTOP" - ], - "description": "Requested platform.", - "type": "string" - }, - "count": { - "description": "The number of times this event occurred.", - "format": "int64", - "type": "string" - }, - "event": { - "enumDescriptions": [ - "Unspecified type.", - "Indicates that an FDL is clicked by users.", - "Indicates that an FDL redirects users to fallback link.", - "Indicates that an FDL triggers an app install from Play store, currently\nit's impossible to get stats from App store.", - "Indicates that the app is opened for the first time after an install\ntriggered by FDLs", - "Indicates that the app is opened via an FDL for non-first time." - ], - "enum": [ - "DYNAMIC_LINK_EVENT_UNSPECIFIED", - "CLICK", - "REDIRECT", - "APP_INSTALL", - "APP_FIRST_OPEN", - "APP_RE_OPEN" - ], - "description": "Link event.", - "type": "string" - } - }, - "id": "DynamicLinkEventStat" - }, "GetIosPostInstallAttributionRequest": { "description": "Request for iSDK to execute strong match flow for post-install attribution.\nThis is meant for iOS requests only. Requests from other platforms will\nnot be honored.", - "type": "object", + "id": "GetIosPostInstallAttributionRequest", "properties": { "appInstallationTime": { "description": "App installation epoch time (https://en.wikipedia.org/wiki/Unix_time).\nThis is a client signal for a more accurate weak match.", "format": "int64", "type": "string" }, - "iosVersion": { - "description": "iOS version, ie: 9.3.5.\nConsider adding \"build\".", - "type": "string" - }, - "visualStyle": { - "enumDescriptions": [ - "Unknown style.", - "Default style.", - "Custom style." - ], - "enum": [ - "UNKNOWN_VISUAL_STYLE", - "DEFAULT_STYLE", - "CUSTOM_STYLE" - ], - "description": "Strong match page information. Disambiguates between default UI and\ncustom page to present when strong match succeeds/fails to find cookie.", - "type": "string" - }, - "retrievalMethod": { - "enum": [ - "UNKNOWN_PAYLOAD_RETRIEVAL_METHOD", - "IMPLICIT_WEAK_MATCH", - "EXPLICIT_WEAK_MATCH", - "EXPLICIT_STRONG_AFTER_WEAK_MATCH" - ], - "description": "App post install attribution retrieval information. Disambiguates\nmechanism (iSDK or developer invoked) to retrieve payload from\nclicked link.", - "type": "string", - "enumDescriptions": [ - "Unknown method.", - "iSDK performs a server lookup by device fingerprint in the background\nwhen app is first-opened; no API called by developer.", - "iSDK performs a server lookup by device fingerprint upon a dev API call.", - "iSDK performs a strong match only if weak match is found upon a dev\nAPI call." - ] - }, - "sdkVersion": { - "description": "Google SDK version.", - "type": "string" - }, "bundleId": { "description": "APP bundle ID.", "type": "string" @@ -499,58 +518,134 @@ "$ref": "DeviceInfo", "description": "Device information." }, + "iosVersion": { + "description": "iOS version, ie: 9.3.5.\nConsider adding \"build\".", + "type": "string" + }, + "retrievalMethod": { + "description": "App post install attribution retrieval information. Disambiguates\nmechanism (iSDK or developer invoked) to retrieve payload from\nclicked link.", + "enum": [ + "UNKNOWN_PAYLOAD_RETRIEVAL_METHOD", + "IMPLICIT_WEAK_MATCH", + "EXPLICIT_WEAK_MATCH", + "EXPLICIT_STRONG_AFTER_WEAK_MATCH" + ], + "enumDescriptions": [ + "Unknown method.", + "iSDK performs a server lookup by device fingerprint in the background\nwhen app is first-opened; no API called by developer.", + "iSDK performs a server lookup by device fingerprint upon a dev API call.", + "iSDK performs a strong match only if weak match is found upon a dev\nAPI call." + ], + "type": "string" + }, + "sdkVersion": { + "description": "Google SDK version.", + "type": "string" + }, "uniqueMatchLinkToCheck": { "description": "Possible unique matched link that server need to check before performing\nfingerprint match. If passed link is short server need to expand the link.\nIf link is long server need to vslidate the link.", "type": "string" - } - }, - "id": "GetIosPostInstallAttributionRequest" - }, - "CreateShortDynamicLinkResponse": { - "description": "Response to create a short Dynamic Link.", - "type": "object", - "properties": { - "shortLink": { - "description": "Short Dynamic Link value. e.g. https://abcd.app.goo.gl/wxyz", - "type": "string" }, - "previewLink": { - "description": "Preivew link to show the link flow chart.", - "type": "string" - }, - "warning": { - "description": "Information about potential warnings on link creation.", - "type": "array", - "items": { - "$ref": "DynamicLinkWarning" - } - } - }, - "id": "CreateShortDynamicLinkResponse" - }, - "Suffix": { - "description": "Short Dynamic Link suffix.", - "type": "object", - "properties": { - "option": { - "enumDescriptions": [ - "The suffix option is not specified, performs as NOT_GUESSABLE .", - "Short Dynamic Link suffix is a base62 [0-9A-Za-z] encoded string of\na random generated 96 bit random number, which has a length of 17 chars.\nFor example, \"nlAR8U4SlKRZw1cb2\".\nIt prevents other people from guessing and crawling short Dynamic Links\nthat contain personal identifiable information.", - "Short Dynamic Link suffix is a base62 [0-9A-Za-z] string starting with a\nlength of 4 chars. the length will increase when all the space is\noccupied." - ], + "visualStyle": { + "description": "Strong match page information. Disambiguates between default UI and\ncustom page to present when strong match succeeds/fails to find cookie.", "enum": [ - "OPTION_UNSPECIFIED", - "UNGUESSABLE", - "SHORT" + "UNKNOWN_VISUAL_STYLE", + "DEFAULT_STYLE", + "CUSTOM_STYLE" + ], + "enumDescriptions": [ + "Unknown style.", + "Default style.", + "Custom style." ], - "description": "Suffix option.", "type": "string" } }, - "id": "Suffix" + "type": "object" + }, + "GetIosPostInstallAttributionResponse": { + "description": "Response for iSDK to execute strong match flow for post-install attribution.", + "id": "GetIosPostInstallAttributionResponse", + "properties": { + "appMinimumVersion": { + "description": "The minimum version for app, specified by dev through ?imv= parameter.\nReturn to iSDK to allow app to evaluate if current version meets this.", + "type": "string" + }, + "attributionConfidence": { + "description": "The confidence of the returned attribution.", + "enum": [ + "UNKNOWN_ATTRIBUTION_CONFIDENCE", + "WEAK", + "DEFAULT", + "UNIQUE" + ], + "enumDescriptions": [ + "Unset.", + "Weak confidence, more than one matching link found or link suspected to\nbe false positive", + "Default confidence, match based on fingerprint", + "Unique confidence, match based on \"unique match link to check\" or other\nmeans" + ], + "type": "string" + }, + "deepLink": { + "description": "The deep-link attributed post-install via one of several techniques\n(fingerprint, copy unique).", + "type": "string" + }, + "externalBrowserDestinationLink": { + "description": "User-agent specific custom-scheme URIs for iSDK to open. This will be set\naccording to the user-agent tha the click was originally made in. There is\nno Safari-equivalent custom-scheme open URLs.\nie: googlechrome://www.example.com\nie: firefox://open-url?url=http://www.example.com\nie: opera-http://example.com", + "type": "string" + }, + "fallbackLink": { + "description": "The link to navigate to update the app if min version is not met.\nThis is either (in order): 1) fallback link (from ?ifl= parameter, if\nspecified by developer) or 2) AppStore URL (from ?isi= parameter, if\nspecified), or 3) the payload link (from required link= parameter).", + "type": "string" + }, + "invitationId": { + "description": "Invitation ID attributed post-install via one of several techniques\n(fingerprint, copy unique).", + "type": "string" + }, + "isStrongMatchExecutable": { + "description": "Instruction for iSDK to attemmpt to perform strong match. For instance,\nif browser does not support/allow cookie or outside of support browsers,\nthis will be false.", + "type": "boolean" + }, + "matchMessage": { + "description": "Describes why match failed, ie: \"discarded due to low confidence\".\nThis message will be publicly visible.", + "type": "string" + }, + "requestedLink": { + "description": "Entire FDL (short or long) attributed post-install via one of several\ntechniques (fingerprint, copy unique).", + "type": "string" + }, + "resolvedLink": { + "description": "The entire FDL, expanded from a short link. It is the same as the\nrequested_link, if it is long. Parameters from this should not be\nused directly (ie: server can default utm_[campaign|medium|source]\nto a value when requested_link lack them, server determine the best\nfallback_link when requested_link specifies \u003e1 fallback links).", + "type": "string" + }, + "utmCampaign": { + "description": "Scion campaign value to be propagated by iSDK to Scion at post-install.", + "type": "string" + }, + "utmMedium": { + "description": "Scion medium value to be propagated by iSDK to Scion at post-install.", + "type": "string" + }, + "utmSource": { + "description": "Scion source value to be propagated by iSDK to Scion at post-install.", + "type": "string" + } + }, + "type": "object" }, "GooglePlayAnalytics": { + "description": "Parameters for Google Play Campaign Measurements.\n[Learn more](https://developers.google.com/analytics/devguides/collection/android/v4/campaigns#campaign-params)", + "id": "GooglePlayAnalytics", "properties": { + "gclid": { + "description": "[AdWords autotagging parameter](https://support.google.com/analytics/answer/1033981?hl=en);\nused to measure Google AdWords ads. This value is generated dynamically\nand should never be modified.", + "type": "string" + }, + "utmCampaign": { + "description": "Campaign name; used for keyword analysis to identify a specific product\npromotion or strategic campaign.", + "type": "string" + }, "utmContent": { "description": "Campaign content; used for A/B testing and content-targeted ads to\ndifferentiate ads or links that point to the same URL.", "type": "string" @@ -559,70 +654,25 @@ "description": "Campaign medium; used to identify a medium such as email or cost-per-click.", "type": "string" }, - "utmTerm": { - "description": "Campaign term; used with paid search to supply the keywords for ads.", - "type": "string" - }, "utmSource": { "description": "Campaign source; used to identify a search engine, newsletter, or other\nsource.", "type": "string" }, - "gclid": { - "description": "[AdWords autotagging parameter](https://support.google.com/analytics/answer/1033981?hl=en);\nused to measure Google AdWords ads. This value is generated dynamically\nand should never be modified.", - "type": "string" - }, - "utmCampaign": { - "description": "Campaign name; used for keyword analysis to identify a specific product\npromotion or strategic campaign.", + "utmTerm": { + "description": "Campaign term; used with paid search to supply the keywords for ads.", "type": "string" } }, - "id": "GooglePlayAnalytics", - "description": "Parameters for Google Play Campaign Measurements.\n[Learn more](https://developers.google.com/analytics/devguides/collection/android/v4/campaigns#campaign-params)", "type": "object" }, - "DynamicLinkInfo": { - "description": "Information about a Dynamic Link.", - "type": "object", - "properties": { - "navigationInfo": { - "$ref": "NavigationInfo", - "description": "Information of navigation behavior of a Firebase Dynamic Links." - }, - "analyticsInfo": { - "$ref": "AnalyticsInfo", - "description": "Parameters used for tracking. See all tracking parameters in the\n[documentation](https://firebase.google.com/docs/dynamic-links/create-manually)." - }, - "dynamicLinkDomain": { - "description": "Dynamic Links domain that the project owns, e.g. abcd.app.goo.gl\n[Learn more](https://firebase.google.com/docs/dynamic-links/android/receive)\non how to set up Dynamic Link domain associated with your Firebase project.\n\nRequired.", - "type": "string" - }, - "desktopInfo": { - "$ref": "DesktopInfo", - "description": "Desktop related information. See desktop related parameters in the\n[documentation](https://firebase.google.com/docs/dynamic-links/create-manually)." - }, - "link": { - "description": "The link your app will open, You can specify any URL your app can handle.\nThis link must be a well-formatted URL, be properly URL-encoded, and use\nthe HTTP or HTTPS scheme. See 'link' parameters in the\n[documentation](https://firebase.google.com/docs/dynamic-links/create-manually).\n\nRequired.", - "type": "string" - }, - "iosInfo": { - "$ref": "IosInfo", - "description": "iOS related information. See iOS related parameters in the\n[documentation](https://firebase.google.com/docs/dynamic-links/create-manually)." - }, - "socialMetaTagInfo": { - "$ref": "SocialMetaTagInfo", - "description": "Parameters for social meta tag params.\nUsed to set meta tag data for link previews on social sites." - }, - "androidInfo": { - "$ref": "AndroidInfo", - "description": "Android related information. See Android related parameters in the\n[documentation](https://firebase.google.com/docs/dynamic-links/create-manually)." - } - }, - "id": "DynamicLinkInfo" - }, "ITunesConnectAnalytics": { "description": "Parameters for iTunes Connect App Analytics.", - "type": "object", + "id": "ITunesConnectAnalytics", "properties": { + "at": { + "description": "Affiliate token used to create affiliate-coded links.", + "type": "string" + }, "ct": { "description": "Campaign text that developers can optionally add to any link in order to\ntrack sales from a specific marketing campaign.", "type": "string" @@ -634,145 +684,95 @@ "pt": { "description": "Provider token that enables analytics for Dynamic Links from within iTunes\nConnect.", "type": "string" + } + }, + "type": "object" + }, + "IosInfo": { + "description": "iOS related attributes to the Dynamic Link..", + "id": "IosInfo", + "properties": { + "iosAppStoreId": { + "description": "iOS App Store ID.", + "type": "string" }, - "at": { - "description": "Affiliate token used to create affiliate-coded links.", + "iosBundleId": { + "description": "iOS bundle ID of the app.", + "type": "string" + }, + "iosCustomScheme": { + "description": "Custom (destination) scheme to use for iOS. By default, we’ll use the\nbundle ID as the custom scheme. Developer can override this behavior using\nthis param.", + "type": "string" + }, + "iosFallbackLink": { + "description": "Link to open on iOS if the app is not installed.", + "type": "string" + }, + "iosIpadBundleId": { + "description": "iPad bundle ID of the app.", + "type": "string" + }, + "iosIpadFallbackLink": { + "description": "If specified, this overrides the ios_fallback_link value on iPads.", "type": "string" } }, - "id": "ITunesConnectAnalytics" + "type": "object" }, - "DeviceInfo": { - "description": "Signals associated with the device making the request.", - "type": "object", + "NavigationInfo": { + "description": "Information of navigation behavior.", + "id": "NavigationInfo", "properties": { - "deviceModelName": { - "description": "Device model name.", - "type": "string" - }, - "languageCodeFromWebview": { - "description": "Device language code setting obtained by executing JavaScript code in\nWebView.", - "type": "string" - }, - "languageCodeRaw": { - "description": "Device language code raw setting.\niOS does returns language code in different format than iOS WebView.\nFor example WebView returns en_US, but iOS returns en-US.\nField below will return raw value returned by iOS.", - "type": "string" - }, - "screenResolutionWidth": { - "description": "Device display resolution width.", - "format": "int64", - "type": "string" - }, - "timezone": { - "description": "Device timezone setting.", - "type": "string" - }, - "screenResolutionHeight": { - "description": "Device display resolution height.", - "format": "int64", - "type": "string" - }, - "languageCode": { - "description": "Device language code setting.", - "type": "string" - } - }, - "id": "DeviceInfo" - }, - "GetIosPostInstallAttributionResponse": { - "properties": { - "fallbackLink": { - "description": "The link to navigate to update the app if min version is not met.\nThis is either (in order): 1) fallback link (from ?ifl= parameter, if\nspecified by developer) or 2) AppStore URL (from ?isi= parameter, if\nspecified), or 3) the payload link (from required link= parameter).", - "type": "string" - }, - "requestedLink": { - "description": "Entire FDL (short or long) attributed post-install via one of several\ntechniques (fingerprint, copy unique).", - "type": "string" - }, - "utmMedium": { - "description": "Scion medium value to be propagated by iSDK to Scion at post-install.", - "type": "string" - }, - "utmSource": { - "description": "Scion source value to be propagated by iSDK to Scion at post-install.", - "type": "string" - }, - "isStrongMatchExecutable": { - "description": "Instruction for iSDK to attemmpt to perform strong match. For instance,\nif browser does not support/allow cookie or outside of support browsers,\nthis will be false.", + "enableForcedRedirect": { + "description": "If this option is on, FDL click will be forced to redirect rather than\nshow an interstitial page.", "type": "boolean" - }, - "appMinimumVersion": { - "description": "The minimum version for app, specified by dev through ?imv= parameter.\nReturn to iSDK to allow app to evaluate if current version meets this.", - "type": "string" - }, - "invitationId": { - "description": "Invitation ID attributed post-install via one of several techniques\n(fingerprint, copy unique).", - "type": "string" - }, - "deepLink": { - "description": "The deep-link attributed post-install via one of several techniques\n(fingerprint, copy unique).", - "type": "string" - }, - "externalBrowserDestinationLink": { - "description": "User-agent specific custom-scheme URIs for iSDK to open. This will be set\naccording to the user-agent tha the click was originally made in. There is\nno Safari-equivalent custom-scheme open URLs.\nie: googlechrome://www.example.com\nie: firefox://open-url?url=http://www.example.com\nie: opera-http://example.com", - "type": "string" - }, - "attributionConfidence": { - "enumDescriptions": [ - "Unset.", - "Weak confidence, more than one matching link found or link suspected to\nbe false positive", - "Default confidence, match based on fingerprint", - "Unique confidence, match based on \"unique match link to check\" or other\nmeans" - ], - "enum": [ - "UNKNOWN_ATTRIBUTION_CONFIDENCE", - "WEAK", - "DEFAULT", - "UNIQUE" - ], - "description": "The confidence of the returned attribution.", - "type": "string" - }, - "matchMessage": { - "description": "Describes why match failed, ie: \"discarded due to low confidence\".\nThis message will be publicly visible.", - "type": "string" - }, - "resolvedLink": { - "description": "The entire FDL, expanded from a short link. It is the same as the\nrequested_link, if it is long. Parameters from this should not be\nused directly (ie: server can default utm_[campaign|medium|source]\nto a value when requested_link lack them, server determine the best\nfallback_link when requested_link specifies \u003e1 fallback links).", - "type": "string" - }, - "utmCampaign": { - "description": "Scion campaign value to be propagated by iSDK to Scion at post-install.", - "type": "string" } }, - "id": "GetIosPostInstallAttributionResponse", - "description": "Response for iSDK to execute strong match flow for post-install attribution.", "type": "object" }, "SocialMetaTagInfo": { "description": "Parameters for social meta tag params.\nUsed to set meta tag data for link previews on social sites.", - "type": "object", + "id": "SocialMetaTagInfo", "properties": { - "socialTitle": { - "description": "Title to be displayed. Optional.", + "socialDescription": { + "description": "A short description of the link. Optional.", "type": "string" }, "socialImageLink": { "description": "An image url string. Optional.", "type": "string" }, - "socialDescription": { - "description": "A short description of the link. Optional.", + "socialTitle": { + "description": "Title to be displayed. Optional.", "type": "string" } }, - "id": "SocialMetaTagInfo" + "type": "object" + }, + "Suffix": { + "description": "Short Dynamic Link suffix.", + "id": "Suffix", + "properties": { + "option": { + "description": "Suffix option.", + "enum": [ + "OPTION_UNSPECIFIED", + "UNGUESSABLE", + "SHORT" + ], + "enumDescriptions": [ + "The suffix option is not specified, performs as NOT_GUESSABLE .", + "Short Dynamic Link suffix is a base62 [0-9A-Za-z] encoded string of\na random generated 96 bit random number, which has a length of 17 chars.\nFor example, \"nlAR8U4SlKRZw1cb2\".\nIt prevents other people from guessing and crawling short Dynamic Links\nthat contain personal identifiable information.", + "Short Dynamic Link suffix is a base62 [0-9A-Za-z] string starting with a\nlength of 4 chars. the length will increase when all the space is\noccupied." + ], + "type": "string" + } + }, + "type": "object" } }, - "icons": { - "x16": "http://www.google.com/images/icons/product/search-16.gif", - "x32": "http://www.google.com/images/icons/product/search-32.gif" - }, - "protocol": "rest" -} + "servicePath": "", + "title": "Firebase Dynamic Links API", + "version": "v1", + "version_module": true +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/firebasedynamiclinks/v1/firebasedynamiclinks-gen.go b/vendor/google.golang.org/api/firebasedynamiclinks/v1/firebasedynamiclinks-gen.go index e09547993..5a517b94d 100644 --- a/vendor/google.golang.org/api/firebasedynamiclinks/v1/firebasedynamiclinks-gen.go +++ b/vendor/google.golang.org/api/firebasedynamiclinks/v1/firebasedynamiclinks-gen.go @@ -176,8 +176,8 @@ type CreateShortDynamicLinkRequest struct { // DynamicLinkInfo: Information about the Dynamic Link to be // shortened. // [Learn - // more](https://firebase.google.com/docs/dynamic-links/android#create-a- - // dynamic-link-programmatically). + // more](https://firebase.google.com/docs/reference/dynamic-links/link-sh + // ortener). DynamicLinkInfo *DynamicLinkInfo `json:"dynamicLinkInfo,omitempty"` // LongDynamicLink: Full long Dynamic Link URL with desired query @@ -187,8 +187,8 @@ type CreateShortDynamicLinkRequest struct { // "https://sample.app.goo.gl/?link=http://www.google.com&apn=co // m.sample", // [Learn - // more](https://firebase.google.com/docs/dynamic-links/android#create-a- - // dynamic-link-programmatically). + // more](https://firebase.google.com/docs/reference/dynamic-links/link-sh + // ortener). LongDynamicLink string `json:"longDynamicLink,omitempty"` // Suffix: Short Dynamic Link suffix. Optional. diff --git a/vendor/google.golang.org/api/firebaseremoteconfig/v1/firebaseremoteconfig-api.json b/vendor/google.golang.org/api/firebaseremoteconfig/v1/firebaseremoteconfig-api.json index 93b8f6a5b..91ad78095 100644 --- a/vendor/google.golang.org/api/firebaseremoteconfig/v1/firebaseremoteconfig-api.json +++ b/vendor/google.golang.org/api/firebaseremoteconfig/v1/firebaseremoteconfig-api.json @@ -1,85 +1,210 @@ { - "id": "firebaseremoteconfig:v1", - "documentationLink": "https://firebase.google.com/docs/remote-config/", - "revision": "20180110", + "basePath": "", + "baseUrl": "https://firebaseremoteconfig.googleapis.com/", + "batchPath": "batch", + "canonicalName": "Firebase Remote Config", + "description": "Firebase Remote Config API allows the 3P clients to manage Remote Config conditions and parameters for Firebase applications.", "discoveryVersion": "v1", - "version_module": true, + "documentationLink": "https://firebase.google.com/docs/remote-config/", + "fullyEncodeReservedExpansion": true, + "icons": { + "x16": "http://www.google.com/images/icons/product/search-16.gif", + "x32": "http://www.google.com/images/icons/product/search-32.gif" + }, + "id": "firebaseremoteconfig:v1", + "kind": "discovery#restDescription", + "name": "firebaseremoteconfig", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "$.xgafv": { + "description": "V1 error format.", + "enum": [ + "1", + "2" + ], + "enumDescriptions": [ + "v1 error format", + "v2 error format" + ], + "location": "query", + "type": "string" + }, + "access_token": { + "description": "OAuth access token.", + "location": "query", + "type": "string" + }, + "alt": { + "default": "json", + "description": "Data format for response.", + "enum": [ + "json", + "media", + "proto" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json", + "Media download with context-dependent Content-Type", + "Responses with Content-Type of application/x-protobuf" + ], + "location": "query", + "type": "string" + }, + "bearer_token": { + "description": "OAuth bearer token.", + "location": "query", + "type": "string" + }, + "callback": { + "description": "JSONP", + "location": "query", + "type": "string" + }, + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "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.", + "location": "query", + "type": "string" + }, + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "pp": { + "default": "true", + "description": "Pretty-print response.", + "location": "query", + "type": "boolean" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", + "location": "query", + "type": "string" + }, + "uploadType": { + "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", + "location": "query", + "type": "string" + }, + "upload_protocol": { + "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", + "location": "query", + "type": "string" + } + }, + "protocol": "rest", + "resources": { + "projects": { + "methods": { + "getRemoteConfig": { + "description": "Get the latest version Remote Configuration for a project.\nReturns the RemoteConfig as the payload, and also the eTag as a\nresponse header.", + "flatPath": "v1/projects/{projectsId}/remoteConfig", + "httpMethod": "GET", + "id": "firebaseremoteconfig.projects.getRemoteConfig", + "parameterOrder": [ + "project" + ], + "parameters": { + "project": { + "description": "The GMP project identifier. Required.\nSee note at the beginning of this file regarding project ids.", + "location": "path", + "pattern": "^projects/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+project}/remoteConfig", + "response": { + "$ref": "RemoteConfig" + } + }, + "updateRemoteConfig": { + "description": "Update a RemoteConfig. We treat this as an always-existing\nresource (when it is not found in our data store, we treat it as version\n0, a template with zero conditions and zero parameters). Hence there are\nno Create or Delete operations. Returns the updated template when\nsuccessful (and the updated eTag as a response header), or an error if\nthings go wrong.\nPossible error messages:\n* VALIDATION_ERROR (HTTP status 400) with additional details if the\ntemplate being passed in can not be validated.\n* AUTHENTICATION_ERROR (HTTP status 401) if the request can not be\nauthenticate (e.g. no access token, or invalid access token).\n* AUTHORIZATION_ERROR (HTTP status 403) if the request can not be\nauthorized (e.g. the user has no access to the specified project id).\n* VERSION_MISMATCH (HTTP status 412) when trying to update when the\nexpected eTag (passed in via the \"If-match\" header) is not specified, or\nis specified but does does not match the current eTag.\n* Internal error (HTTP status 500) for Database problems or other internal\nerrors.", + "flatPath": "v1/projects/{projectsId}/remoteConfig", + "httpMethod": "PUT", + "id": "firebaseremoteconfig.projects.updateRemoteConfig", + "parameterOrder": [ + "project" + ], + "parameters": { + "project": { + "description": "The GMP project identifier. Required.\nSee note at the beginning of this file regarding project ids.", + "location": "path", + "pattern": "^projects/[^/]+$", + "required": true, + "type": "string" + }, + "validateOnly": { + "description": "Optional. Defaults to \u003ccode\u003efalse\u003c/code\u003e (UpdateRemoteConfig call should\nupdate the backend if there are no validation/interal errors). May be set\nto \u003ccode\u003etrue\u003c/code\u003e to indicate that, should no validation errors occur,\nthe call should return a \"200 OK\" instead of performing the update. Note\nthat other error messages (500 Internal Error, 412 Version Mismatch, etc)\nmay still result after flipping to \u003ccode\u003efalse\u003c/code\u003e, even if getting a\n\"200 OK\" when calling with \u003ccode\u003etrue\u003c/code\u003e.", + "location": "query", + "type": "boolean" + } + }, + "path": "v1/{+project}/remoteConfig", + "request": { + "$ref": "RemoteConfig" + }, + "response": { + "$ref": "RemoteConfig" + } + } + } + } + }, + "revision": "20180129", + "rootUrl": "https://firebaseremoteconfig.googleapis.com/", "schemas": { "RemoteConfig": { - "id": "RemoteConfig", "description": "*\nThe RemoteConfig consists of a list of conditions (which can be\nthought of as named \"if\" statements) and a map of parameters (parameter key\nto a structure containing an optional default value, as well as a optional\nsubmap of (condition name to value when that condition is true).", - "type": "object", + "id": "RemoteConfig", "properties": { + "conditions": { + "description": "The list of named conditions. The order *does* affect the semantics.\nThe condition_name values of these entries must be unique.\n\nThe resolved value of a config parameter P is determined as follow:\n* Let Y be the set of values from the submap of P that refer to conditions\n that evaluate to \u003ccode\u003etrue\u003c/code\u003e.\n* If Y is non empty, the value is taken from the specific submap in Y whose\n condition_name is the earliest in this condition list.\n* Else, if P has a default value option (condition_name is empty) then\n the value is taken from that option.\n* Else, parameter P has no value and is omitted from the config result.\n\nExample: parameter key \"p1\", default value \"v1\", submap specified as\n{\"c1\": v2, \"c2\": v3} where \"c1\" and \"c2\" are names of conditions in the\ncondition list (where \"c1\" in this example appears before \"c2\"). The\nvalue of p1 would be v2 as long as c1 is true. Otherwise, if c2 is true,\np1 would evaluate to v3, and if c1 and c2 are both false, p1 would evaluate\nto v1. If no default value was specified, and c1 and c2 were both false,\nno value for p1 would be generated.", + "items": { + "$ref": "RemoteConfigCondition" + }, + "type": "array" + }, "parameters": { "additionalProperties": { "$ref": "RemoteConfigParameter" }, "description": "Map of parameter keys to their optional default values and optional submap\nof (condition name : value). Order doesn't affect semantics, and so is\nsorted by the server. The 'key' values of the params must be unique.", "type": "object" - }, - "conditions": { - "description": "The list of named conditions. The order *does* affect the semantics.\nThe condition_name values of these entries must be unique.\n\nThe resolved value of a config parameter P is determined as follow:\n* Let Y be the set of values from the submap of P that refer to conditions\n that evaluate to \u003ccode\u003etrue\u003c/code\u003e.\n* If Y is non empty, the value is taken from the specific submap in Y whose\n condition_name is the earliest in this condition list.\n* Else, if P has a default value option (condition_name is empty) then\n the value is taken from that option.\n* Else, parameter P has no value and is omitted from the config result.\n\nExample: parameter key \"p1\", default value \"v1\", submap specified as\n{\"c1\": v2, \"c2\": v3} where \"c1\" and \"c2\" are names of conditions in the\ncondition list (where \"c1\" in this example appears before \"c2\"). The\nvalue of p1 would be v2 as long as c1 is true. Otherwise, if c2 is true,\np1 would evaluate to v3, and if c1 and c2 are both false, p1 would evaluate\nto v1. If no default value was specified, and c1 and c2 were both false,\nno value for p1 would be generated.", - "type": "array", - "items": { - "$ref": "RemoteConfigCondition" - } - } - } - }, - "RemoteConfigParameter": { - "description": "While default_value and conditional_values are each optional, at least one of\nthe two is required - otherwise, the parameter is meaningless (and an\nexception will be thrown by the validation logic).", - "type": "object", - "properties": { - "defaultValue": { - "description": "Optional - value to set the parameter to, when none of the named conditions\nevaluate to \u003ccode\u003etrue\u003c/code\u003e.", - "$ref": "RemoteConfigParameterValue" - }, - "description": { - "description": "Optional.\nA description for this Parameter. Length must be less than or equal to\n100 characters (or more precisely, unicode code points, which is defined in\njava/com/google/wireless/android/config/ConstsExporter.java).\nA description may contain any Unicode characters", - "type": "string" - }, - "conditionalValues": { - "description": "Optional - a map of (condition_name, value). The condition_name of the\nhighest priority (the one listed first in the conditions array) determines\nthe value of this parameter.", - "type": "object", - "additionalProperties": { - "$ref": "RemoteConfigParameterValue" - } } }, - "id": "RemoteConfigParameter" + "type": "object" }, "RemoteConfigCondition": { - "id": "RemoteConfigCondition", "description": "A single RemoteConfig Condition. A list of these (because order matters) are\npart of a single RemoteConfig template.", - "type": "object", + "id": "RemoteConfigCondition", "properties": { - "name": { - "description": "Required.\nA non empty and unique name of this condition.", - "type": "string" - }, "description": { - "description": "Optional.\nA description for this Condition. Length must be less than or equal to\n100 characters (or more precisely, unicode code points, which is defined in\njava/com/google/wireless/android/config/ConstsExporter.java).\nA description may contain any Unicode characters", + "description": "DO NOT USE. Implementation removed and will not be added unless requested.\nA description for this Condition. Length must be less than or equal to\n100 characters (or more precisely, unicode code points, which is defined in\njava/com/google/wireless/android/config/ConstsExporter.java).\nA description may contain any Unicode characters", "type": "string" }, "expression": { "description": "Required.", "type": "string" }, + "name": { + "description": "Required.\nA non empty and unique name of this condition.", + "type": "string" + }, "tagColor": { - "enumDescriptions": [ - "", - "Blue", - "Brown", - "Cyan", - "aka \"Red Orange\"", - "Green", - "Indigo\n*", - "Lime - Approved deviation from Material color palette", - "Orange", - "Pink", - "Purple", - "Teal" - ], + "description": "Optional.\nThe display (tag) color of this condition. This serves as part of a tag\n(in the future, we may add tag text as well as tag color, but that is not\nyet implemented in the UI).\nThis value has no affect on the semantics of the delivered config and it\nis ignored by the backend, except for passing it through write/read\nrequests.\nNot having this value or having the \"CONDITION_DISPLAY_COLOR_UNSPECIFIED\"\nvalue (0) have the same meaning: Let the UI choose any valid color when\ndisplaying the condition.", "enum": [ "CONDITION_DISPLAY_COLOR_UNSPECIFIED", "BLUE", @@ -94,190 +219,65 @@ "PURPLE", "TEAL" ], - "description": "Optional.\nThe display (tag) color of this condition. This serves as part of a tag\n(in the future, we may add tag text as well as tag color, but that is not\nyet implemented in the UI).\nThis value has no affect on the semantics of the delivered config and it\nis ignored by the backend, except for passing it through write/read\nrequests.\nNot having this value or having the \"CONDITION_DISPLAY_COLOR_UNSPECIFIED\"\nvalue (0) have the same meaning: Let the UI choose any valid color when\ndisplaying the condition.", + "enumDescriptions": [ + "", + "Blue", + "Brown", + "Cyan", + "aka \"Red Orange\"", + "Green", + "Indigo\n*", + "Lime - Approved deviation from Material color palette", + "Orange", + "Pink", + "Purple", + "Teal" + ], "type": "string" } - } + }, + "type": "object" + }, + "RemoteConfigParameter": { + "description": "While default_value and conditional_values are each optional, at least one of\nthe two is required - otherwise, the parameter is meaningless (and an\nexception will be thrown by the validation logic).", + "id": "RemoteConfigParameter", + "properties": { + "conditionalValues": { + "additionalProperties": { + "$ref": "RemoteConfigParameterValue" + }, + "description": "Optional - a map of (condition_name, value). The condition_name of the\nhighest priority (the one listed first in the conditions array) determines\nthe value of this parameter.", + "type": "object" + }, + "defaultValue": { + "$ref": "RemoteConfigParameterValue", + "description": "Optional - value to set the parameter to, when none of the named conditions\nevaluate to \u003ccode\u003etrue\u003c/code\u003e." + }, + "description": { + "description": "Optional.\nA description for this Parameter. Length must be less than or equal to\n100 characters (or more precisely, unicode code points, which is defined in\njava/com/google/wireless/android/config/ConstsExporter.java).\nA description may contain any Unicode characters", + "type": "string" + } + }, + "type": "object" }, "RemoteConfigParameterValue": { "description": "A RemoteConfigParameter's \"value\" (either the default value, or the value\nassociated with a condition name) is either a string, or the\n\"use_in_app_default\" indicator (which means to leave out the parameter from\nthe returned \u003ckey, value\u003e map that is the output of the parameter fetch).\nWe represent the \"use_in_app_default\" as a bool, but (when using the boolean\ninstead of the string) it should always be \u003ccode\u003etrue\u003c/code\u003e.", - "type": "object", + "id": "RemoteConfigParameterValue", "properties": { - "value": { - "description": "the string to set the parameter to", - "type": "string" - }, "useInAppDefault": { "description": "if true, omit the parameter from the map of fetched parameter values", "type": "boolean" + }, + "value": { + "description": "the string to set the parameter to", + "type": "string" } }, - "id": "RemoteConfigParameterValue" + "type": "object" } }, - "icons": { - "x16": "http://www.google.com/images/icons/product/search-16.gif", - "x32": "http://www.google.com/images/icons/product/search-32.gif" - }, - "protocol": "rest", - "canonicalName": "Firebase Remote Config", - "rootUrl": "https://firebaseremoteconfig.googleapis.com/", - "ownerDomain": "google.com", - "name": "firebaseremoteconfig", - "batchPath": "batch", - "fullyEncodeReservedExpansion": true, - "title": "Firebase Remote Config API", - "ownerName": "Google", - "resources": { - "projects": { - "methods": { - "getRemoteConfig": { - "response": { - "$ref": "RemoteConfig" - }, - "parameterOrder": [ - "project" - ], - "httpMethod": "GET", - "parameters": { - "project": { - "description": "The GMP project identifier. Required.\nSee note at the beginning of this file regarding project ids.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+$", - "location": "path" - } - }, - "flatPath": "v1/projects/{projectsId}/remoteConfig", - "path": "v1/{+project}/remoteConfig", - "id": "firebaseremoteconfig.projects.getRemoteConfig", - "description": "Get the latest version Remote Configuration for a project.\nReturns the RemoteConfig as the payload, and also the eTag as a\nresponse header." - }, - "updateRemoteConfig": { - "description": "Update a RemoteConfig. We treat this as an always-existing\nresource (when it is not found in our data store, we treat it as version\n0, a template with zero conditions and zero parameters). Hence there are\nno Create or Delete operations. Returns the updated template when\nsuccessful (and the updated eTag as a response header), or an error if\nthings go wrong.\nPossible error messages:\n* VALIDATION_ERROR (HTTP status 400) with additional details if the\ntemplate being passed in can not be validated.\n* AUTHENTICATION_ERROR (HTTP status 401) if the request can not be\nauthenticate (e.g. no access token, or invalid access token).\n* AUTHORIZATION_ERROR (HTTP status 403) if the request can not be\nauthorized (e.g. the user has no access to the specified project id).\n* VERSION_MISMATCH (HTTP status 412) when trying to update when the\nexpected eTag (passed in via the \"If-match\" header) is not specified, or\nis specified but does does not match the current eTag.\n* Internal error (HTTP status 500) for Database problems or other internal\nerrors.", - "request": { - "$ref": "RemoteConfig" - }, - "httpMethod": "PUT", - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "RemoteConfig" - }, - "parameters": { - "validateOnly": { - "description": "Optional. Defaults to \u003ccode\u003efalse\u003c/code\u003e (UpdateRemoteConfig call should\nupdate the backend if there are no validation/interal errors). May be set\nto \u003ccode\u003etrue\u003c/code\u003e to indicate that, should no validation errors occur,\nthe call should return a \"200 OK\" instead of performing the update. Note\nthat other error messages (500 Internal Error, 412 Version Mismatch, etc)\nmay still result after flipping to \u003ccode\u003efalse\u003c/code\u003e, even if getting a\n\"200 OK\" when calling with \u003ccode\u003etrue\u003c/code\u003e.", - "type": "boolean", - "location": "query" - }, - "project": { - "pattern": "^projects/[^/]+$", - "location": "path", - "description": "The GMP project identifier. Required.\nSee note at the beginning of this file regarding project ids.", - "required": true, - "type": "string" - } - }, - "flatPath": "v1/projects/{projectsId}/remoteConfig", - "id": "firebaseremoteconfig.projects.updateRemoteConfig", - "path": "v1/{+project}/remoteConfig" - } - } - } - }, - "parameters": { - "$.xgafv": { - "enumDescriptions": [ - "v1 error format", - "v2 error format" - ], - "location": "query", - "enum": [ - "1", - "2" - ], - "description": "V1 error format.", - "type": "string" - }, - "callback": { - "description": "JSONP", - "type": "string", - "location": "query" - }, - "alt": { - "type": "string", - "enumDescriptions": [ - "Responses with Content-Type of application/json", - "Media download with context-dependent Content-Type", - "Responses with Content-Type of application/x-protobuf" - ], - "location": "query", - "description": "Data format for response.", - "default": "json", - "enum": [ - "json", - "media", - "proto" - ] - }, - "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.", - "type": "string", - "location": "query" - }, - "access_token": { - "location": "query", - "description": "OAuth access token.", - "type": "string" - }, - "quotaUser": { - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", - "type": "string", - "location": "query" - }, - "pp": { - "location": "query", - "description": "Pretty-print response.", - "type": "boolean", - "default": "true" - }, - "oauth_token": { - "location": "query", - "description": "OAuth 2.0 token for the current user.", - "type": "string" - }, - "bearer_token": { - "description": "OAuth bearer token.", - "type": "string", - "location": "query" - }, - "upload_protocol": { - "location": "query", - "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", - "type": "string" - }, - "prettyPrint": { - "description": "Returns response with indentations and line breaks.", - "type": "boolean", - "default": "true", - "location": "query" - }, - "uploadType": { - "location": "query", - "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", - "type": "string" - }, - "fields": { - "location": "query", - "description": "Selector specifying which fields to include in a partial response.", - "type": "string" - } - }, - "version": "v1", - "baseUrl": "https://firebaseremoteconfig.googleapis.com/", "servicePath": "", - "description": "Firebase Remote Config API allows the 3P clients to manage Remote Config conditions and parameters for Firebase applications.", - "kind": "discovery#restDescription", - "basePath": "" -} + "title": "Firebase Remote Config API", + "version": "v1", + "version_module": true +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/firebaseremoteconfig/v1/firebaseremoteconfig-gen.go b/vendor/google.golang.org/api/firebaseremoteconfig/v1/firebaseremoteconfig-gen.go index 969f575a8..cb5cb1706 100644 --- a/vendor/google.golang.org/api/firebaseremoteconfig/v1/firebaseremoteconfig-gen.go +++ b/vendor/google.golang.org/api/firebaseremoteconfig/v1/firebaseremoteconfig-gen.go @@ -157,7 +157,8 @@ func (s *RemoteConfig) MarshalJSON() ([]byte, error) { // these (because order matters) are // part of a single RemoteConfig template. type RemoteConfigCondition struct { - // Description: Optional. + // Description: DO NOT USE. Implementation removed and will not be added + // unless requested. // A description for this Condition. Length must be less than or equal // to // 100 characters (or more precisely, unicode code points, which is diff --git a/vendor/google.golang.org/api/firebaserules/v1/firebaserules-api.json b/vendor/google.golang.org/api/firebaserules/v1/firebaserules-api.json index 5a0036e5a..e56b7688a 100644 --- a/vendor/google.golang.org/api/firebaserules/v1/firebaserules-api.json +++ b/vendor/google.golang.org/api/firebaserules/v1/firebaserules-api.json @@ -1,911 +1,4 @@ { - "ownerDomain": "google.com", - "name": "firebaserules", - "batchPath": "batch", - "title": "Firebase Rules API", - "ownerName": "Google", - "resources": { - "projects": { - "methods": { - "test": { - "response": { - "$ref": "TestRulesetResponse" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/firebase", - "https://www.googleapis.com/auth/firebase.readonly" - ], - "parameters": { - "name": { - "description": "Tests may either provide `source` or a `Ruleset` resource name.\n\nFor tests against `source`, the resource name must refer to the project:\nFormat: `projects/{project_id}`\n\nFor tests against a `Ruleset`, this must be the `Ruleset` resource name:\nFormat: `projects/{project_id}/rulesets/{ruleset_id}`", - "required": true, - "type": "string", - "pattern": "^projects/.+$", - "location": "path" - } - }, - "flatPath": "v1/projects/{projectsId}:test", - "path": "v1/{+name}:test", - "id": "firebaserules.projects.test", - "description": "Test `Source` for syntactic and semantic correctness. Issues present, if\nany, will be returned to the caller with a description, severity, and\nsource location.\n\nThe test method may be executed with `Source` or a `Ruleset` name.\nPassing `Source` is useful for unit testing new rules. Passing a `Ruleset`\nname is useful for regression testing an existing rule.\n\nThe following is an example of `Source` that permits users to upload images\nto a bucket bearing their user id and matching the correct metadata:\n\n_*Example*_\n\n // Users are allowed to subscribe and unsubscribe to the blog.\n service firebase.storage {\n match /users/{userId}/images/{imageName} {\n allow write: if userId == request.auth.uid\n && (imageName.matches('*.png$')\n || imageName.matches('*.jpg$'))\n && resource.mimeType.matches('^image/')\n }\n }", - "request": { - "$ref": "TestRulesetRequest" - } - } - }, - "resources": { - "rulesets": { - "methods": { - "get": { - "description": "Get a `Ruleset` by name including the full `Source` contents.", - "response": { - "$ref": "Ruleset" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/firebase", - "https://www.googleapis.com/auth/firebase.readonly" - ], - "parameters": { - "name": { - "description": "Resource name for the ruleset to get.\n\nFormat: `projects/{project_id}/rulesets/{ruleset_id}`", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/rulesets/[^/]+$", - "location": "path" - } - }, - "flatPath": "v1/projects/{projectsId}/rulesets/{rulesetsId}", - "path": "v1/{+name}", - "id": "firebaserules.projects.rulesets.get" - }, - "list": { - "response": { - "$ref": "ListRulesetsResponse" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "GET", - "parameters": { - "name": { - "description": "Resource name for the project.\n\nFormat: `projects/{project_id}`", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+$", - "location": "path" - }, - "pageToken": { - "location": "query", - "description": "Next page token for loading the next batch of `Ruleset` instances.", - "type": "string" - }, - "pageSize": { - "location": "query", - "description": "Page size to load. Maximum of 100. Defaults to 10.\nNote: `page_size` is just a hint and the service may choose to load less\nthan `page_size` due to the size of the output. To traverse all of the\nreleases, caller should iterate until the `page_token` is empty.", - "format": "int32", - "type": "integer" - }, - "filter": { - "location": "query", - "description": "`Ruleset` filter. The list method supports filters with restrictions on\n`Ruleset.name`.\n\nFilters on `Ruleset.create_time` should use the `date` function which\nparses strings that conform to the RFC 3339 date/time specifications.\n\nExample: `create_time \u003e date(\"2017-01-01\") AND name=UUID-*`", - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/firebase", - "https://www.googleapis.com/auth/firebase.readonly" - ], - "flatPath": "v1/projects/{projectsId}/rulesets", - "path": "v1/{+name}/rulesets", - "id": "firebaserules.projects.rulesets.list", - "description": "List `Ruleset` metadata only and optionally filter the results by `Ruleset`\nname.\n\nThe full `Source` contents of a `Ruleset` may be retrieved with\nGetRuleset." - }, - "create": { - "response": { - "$ref": "Ruleset" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/firebase" - ], - "parameters": { - "name": { - "description": "Resource name for Project which owns this `Ruleset`.\n\nFormat: `projects/{project_id}`", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+$", - "location": "path" - } - }, - "flatPath": "v1/projects/{projectsId}/rulesets", - "path": "v1/{+name}/rulesets", - "id": "firebaserules.projects.rulesets.create", - "description": "Create a `Ruleset` from `Source`.\n\nThe `Ruleset` is given a unique generated name which is returned to the\ncaller. `Source` containing syntactic or semantics errors will result in an\nerror response indicating the first error encountered. For a detailed view\nof `Source` issues, use TestRuleset.", - "request": { - "$ref": "Ruleset" - } - }, - "delete": { - "path": "v1/{+name}", - "id": "firebaserules.projects.rulesets.delete", - "description": "Delete a `Ruleset` by resource name.\n\nIf the `Ruleset` is referenced by a `Release` the operation will fail.", - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "DELETE", - "parameters": { - "name": { - "location": "path", - "description": "Resource name for the ruleset to delete.\n\nFormat: `projects/{project_id}/rulesets/{ruleset_id}`", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/rulesets/[^/]+$" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/firebase" - ], - "flatPath": "v1/projects/{projectsId}/rulesets/{rulesetsId}" - } - } - }, - "releases": { - "methods": { - "getExecutable": { - "path": "v1/{+name}:getExecutable", - "id": "firebaserules.projects.releases.getExecutable", - "description": "Get the `Release` executable to use when enforcing rules.", - "response": { - "$ref": "GetReleaseExecutableResponse" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/firebase", - "https://www.googleapis.com/auth/firebase.readonly" - ], - "parameters": { - "executableVersion": { - "description": "The requested runtime executable version.\nDefaults to FIREBASE_RULES_EXECUTABLE_V1", - "type": "string", - "location": "query", - "enum": [ - "RELEASE_EXECUTABLE_VERSION_UNSPECIFIED", - "FIREBASE_RULES_EXECUTABLE_V1", - "FIREBASE_RULES_EXECUTABLE_V2" - ] - }, - "name": { - "pattern": "^projects/[^/]+/releases/.+$", - "location": "path", - "description": "Resource name of the `Release`.\n\nFormat: `projects/{project_id}/releases/{release_id}`", - "required": true, - "type": "string" - } - }, - "flatPath": "v1/projects/{projectsId}/releases/{releasesId}:getExecutable" - }, - "delete": { - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "DELETE", - "parameters": { - "name": { - "pattern": "^projects/[^/]+/releases/.+$", - "location": "path", - "description": "Resource name for the `Release` to delete.\n\nFormat: `projects/{project_id}/releases/{release_id}`", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/firebase" - ], - "flatPath": "v1/projects/{projectsId}/releases/{releasesId}", - "path": "v1/{+name}", - "id": "firebaserules.projects.releases.delete", - "description": "Delete a `Release` by resource name." - }, - "list": { - "flatPath": "v1/projects/{projectsId}/releases", - "id": "firebaserules.projects.releases.list", - "path": "v1/{+name}/releases", - "description": "List the `Release` values for a project. This list may optionally be\nfiltered by `Release` name, `Ruleset` name, `TestSuite` name, or any\ncombination thereof.", - "httpMethod": "GET", - "response": { - "$ref": "ListReleasesResponse" - }, - "parameterOrder": [ - "name" - ], - "parameters": { - "filter": { - "type": "string", - "location": "query", - "description": "`Release` filter. The list method supports filters with restrictions on the\n`Release.name`, `Release.ruleset_name`, and `Release.test_suite_name`.\n\nExample 1: A filter of 'name=prod*' might return `Release`s with names\nwithin 'projects/foo' prefixed with 'prod':\n\nName | Ruleset Name\n------------------------------|-------------\nprojects/foo/releases/prod | projects/foo/rulesets/uuid1234\nprojects/foo/releases/prod/v1 | projects/foo/rulesets/uuid1234\nprojects/foo/releases/prod/v2 | projects/foo/rulesets/uuid8888\n\nExample 2: A filter of `name=prod* ruleset_name=uuid1234` would return only\n`Release` instances for 'projects/foo' with names prefixed with 'prod'\nreferring to the same `Ruleset` name of 'uuid1234':\n\nName | Ruleset Name\n------------------------------|-------------\nprojects/foo/releases/prod | projects/foo/rulesets/1234\nprojects/foo/releases/prod/v1 | projects/foo/rulesets/1234\n\nIn the examples, the filter parameters refer to the search filters are\nrelative to the project. Fully qualified prefixed may also be used. e.g.\n`test_suite_name=projects/foo/testsuites/uuid1`" - }, - "name": { - "description": "Resource name for the project.\n\nFormat: `projects/{project_id}`", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+$", - "location": "path" - }, - "pageToken": { - "location": "query", - "description": "Next page token for the next batch of `Release` instances.", - "type": "string" - }, - "pageSize": { - "location": "query", - "description": "Page size to load. Maximum of 100. Defaults to 10.\nNote: `page_size` is just a hint and the service may choose to load fewer\nthan `page_size` results due to the size of the output. To traverse all of\nthe releases, the caller should iterate until the `page_token` on the\nresponse is empty.", - "format": "int32", - "type": "integer" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/firebase", - "https://www.googleapis.com/auth/firebase.readonly" - ] - }, - "create": { - "flatPath": "v1/projects/{projectsId}/releases", - "path": "v1/{+name}/releases", - "id": "firebaserules.projects.releases.create", - "request": { - "$ref": "Release" - }, - "description": "Create a `Release`.\n\nRelease names should reflect the developer's deployment practices. For\nexample, the release name may include the environment name, application\nname, application version, or any other name meaningful to the developer.\nOnce a `Release` refers to a `Ruleset`, the rules can be enforced by\nFirebase Rules-enabled services.\n\nMore than one `Release` may be 'live' concurrently. Consider the following\nthree `Release` names for `projects/foo` and the `Ruleset` to which they\nrefer.\n\nRelease Name | Ruleset Name\n--------------------------------|-------------\nprojects/foo/releases/prod | projects/foo/rulesets/uuid123\nprojects/foo/releases/prod/beta | projects/foo/rulesets/uuid123\nprojects/foo/releases/prod/v23 | projects/foo/rulesets/uuid456\n\nThe table reflects the `Ruleset` rollout in progress. The `prod` and\n`prod/beta` releases refer to the same `Ruleset`. However, `prod/v23`\nrefers to a new `Ruleset`. The `Ruleset` reference for a `Release` may be\nupdated using the UpdateRelease method.", - "response": { - "$ref": "Release" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "POST", - "parameters": { - "name": { - "location": "path", - "description": "Resource name for the project which owns this `Release`.\n\nFormat: `projects/{project_id}`", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+$" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/firebase" - ] - }, - "get": { - "response": { - "$ref": "Release" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/firebase", - "https://www.googleapis.com/auth/firebase.readonly" - ], - "parameters": { - "name": { - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/releases/.+$", - "location": "path", - "description": "Resource name of the `Release`.\n\nFormat: `projects/{project_id}/releases/{release_id}`" - } - }, - "flatPath": "v1/projects/{projectsId}/releases/{releasesId}", - "path": "v1/{+name}", - "id": "firebaserules.projects.releases.get", - "description": "Get a `Release` by name." - }, - "patch": { - "description": "Update a `Release` via PATCH.\n\nOnly updates to the `ruleset_name` and `test_suite_name` fields will be\nhonored. `Release` rename is not supported. To create a `Release` use the\nCreateRelease method.", - "request": { - "$ref": "UpdateReleaseRequest" - }, - "response": { - "$ref": "Release" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "PATCH", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/firebase" - ], - "parameters": { - "name": { - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/releases/.+$", - "location": "path", - "description": "Resource name for the project which owns this `Release`.\n\nFormat: `projects/{project_id}`" - } - }, - "flatPath": "v1/projects/{projectsId}/releases/{releasesId}", - "path": "v1/{+name}", - "id": "firebaserules.projects.releases.patch" - } - } - } - } - } - }, - "parameters": { - "quotaUser": { - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", - "type": "string", - "location": "query" - }, - "pp": { - "location": "query", - "description": "Pretty-print response.", - "type": "boolean", - "default": "true" - }, - "oauth_token": { - "location": "query", - "description": "OAuth 2.0 token for the current user.", - "type": "string" - }, - "bearer_token": { - "location": "query", - "description": "OAuth bearer token.", - "type": "string" - }, - "upload_protocol": { - "location": "query", - "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", - "type": "string" - }, - "prettyPrint": { - "description": "Returns response with indentations and line breaks.", - "type": "boolean", - "default": "true", - "location": "query" - }, - "uploadType": { - "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", - "type": "string", - "location": "query" - }, - "fields": { - "description": "Selector specifying which fields to include in a partial response.", - "type": "string", - "location": "query" - }, - "$.xgafv": { - "type": "string", - "enumDescriptions": [ - "v1 error format", - "v2 error format" - ], - "location": "query", - "enum": [ - "1", - "2" - ], - "description": "V1 error format." - }, - "callback": { - "description": "JSONP", - "type": "string", - "location": "query" - }, - "alt": { - "enum": [ - "json", - "media", - "proto" - ], - "type": "string", - "enumDescriptions": [ - "Responses with Content-Type of application/json", - "Media download with context-dependent Content-Type", - "Responses with Content-Type of application/x-protobuf" - ], - "location": "query", - "description": "Data format for response.", - "default": "json" - }, - "key": { - "location": "query", - "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.", - "type": "string" - }, - "access_token": { - "type": "string", - "location": "query", - "description": "OAuth access token." - } - }, - "version": "v1", - "baseUrl": "https://firebaserules.googleapis.com/", - "servicePath": "", - "description": "Creates and manages rules that determine when a Firebase Rules-enabled service should permit a request.\n", - "kind": "discovery#restDescription", - "basePath": "", - "revision": "20180111", - "documentationLink": "https://firebase.google.com/docs/storage/security", - "id": "firebaserules:v1", - "discoveryVersion": "v1", - "version_module": true, - "schemas": { - "FunctionMock": { - "description": "Mock function definition.\n\nMocks must refer to a function declared by the target service. The type of\nthe function args and result will be inferred at test time. If either the\narg or result values are not compatible with function type declaration, the\nrequest will be considered invalid.\n\nMore than one `FunctionMock` may be provided for a given function name so\nlong as the `Arg` matchers are distinct. There may be only one function\nfor a given overload where all `Arg` values are `Arg.any_value`.", - "type": "object", - "properties": { - "args": { - "description": "The list of `Arg` values to match. The order in which the arguments are\nprovided is the order in which they must appear in the function\ninvocation.", - "type": "array", - "items": { - "$ref": "Arg" - } - }, - "function": { - "description": "The name of the function.\n\nThe function name must match one provided by a service declaration.", - "type": "string" - }, - "result": { - "description": "The mock result of the function call.", - "$ref": "Result" - } - }, - "id": "FunctionMock" - }, - "GetReleaseExecutableResponse": { - "id": "GetReleaseExecutableResponse", - "description": "The response for FirebaseRulesService.GetReleaseExecutable", - "type": "object", - "properties": { - "executable": { - "description": "Executable view of the `Ruleset` referenced by the `Release`.", - "format": "byte", - "type": "string" - }, - "updateTime": { - "description": "Timestamp for the most recent `Release.update_time`.", - "format": "google-datetime", - "type": "string" - }, - "language": { - "enumDescriptions": [ - "Language unspecified. Defaults to FIREBASE_RULES.", - "Firebase Rules language.", - "Event Flow triggers." - ], - "enum": [ - "LANGUAGE_UNSPECIFIED", - "FIREBASE_RULES", - "EVENT_FLOW_TRIGGERS" - ], - "description": "`Language` used to generate the executable bytes.", - "type": "string" - }, - "rulesetName": { - "description": "`Ruleset` name associated with the `Release` executable.", - "type": "string" - }, - "executableVersion": { - "enumDescriptions": [ - "Executable format unspecified.\nDefaults to FIREBASE_RULES_EXECUTABLE_V1", - "Firebase Rules syntax 'rules2' executable versions:\nCustom AST for use with Java clients.", - "CEL-based executable for use with C++ clients." - ], - "enum": [ - "RELEASE_EXECUTABLE_VERSION_UNSPECIFIED", - "FIREBASE_RULES_EXECUTABLE_V1", - "FIREBASE_RULES_EXECUTABLE_V2" - ], - "description": "The Rules runtime version of the executable.", - "type": "string" - } - } - }, - "Source": { - "type": "object", - "properties": { - "files": { - "description": "`File` set constituting the `Source` bundle.", - "type": "array", - "items": { - "$ref": "File" - } - } - }, - "id": "Source", - "description": "`Source` is one or more `File` messages comprising a logical set of rules." - }, - "Result": { - "id": "Result", - "description": "Possible result values from the function mock invocation.", - "type": "object", - "properties": { - "value": { - "description": "The result is an actual value. The type of the value must match that\nof the type declared by the service.", - "type": "any" - }, - "undefined": { - "$ref": "Empty", - "description": "The result is undefined, meaning the result could not be computed." - } - } - }, - "SourcePosition": { - "id": "SourcePosition", - "description": "Position in the `Source` content including its line, column number, and an\nindex of the `File` in the `Source` message. Used for debug purposes.", - "type": "object", - "properties": { - "column": { - "description": "First column on the source line associated with the source fragment.", - "format": "int32", - "type": "integer" - }, - "fileName": { - "description": "Name of the `File`.", - "type": "string" - }, - "line": { - "description": "Line number of the source fragment. 1-based.", - "format": "int32", - "type": "integer" - } - } - }, - "TestCase": { - "description": "`TestCase` messages provide the request context and an expectation as to\nwhether the given context will be allowed or denied. Test cases may specify\nthe `request`, `resource`, and `function_mocks` to mock a function call to\na service-provided function.\n\nThe `request` object represents context present at request-time.\n\nThe `resource` is the value of the target resource as it appears in\npersistent storage before the request is executed.", - "type": "object", - "properties": { - "resource": { - "description": "Optional resource value as it appears in persistent storage before the\nrequest is fulfilled.\n\nThe resource type depends on the `request.path` value.", - "type": "any" - }, - "functionMocks": { - "type": "array", - "items": { - "$ref": "FunctionMock" - }, - "description": "Optional function mocks for service-defined functions. If not set, any\nservice defined function is expected to return an error, which may or may\nnot influence the test outcome." - }, - "expectation": { - "description": "Test expectation.", - "type": "string", - "enumDescriptions": [ - "Unspecified expectation.", - "Expect an allowed result.", - "Expect a denied result." - ], - "enum": [ - "EXPECTATION_UNSPECIFIED", - "ALLOW", - "DENY" - ] - }, - "request": { - "description": "Request context.\n\nThe exact format of the request context is service-dependent. See the\nappropriate service documentation for information about the supported\nfields and types on the request. Minimally, all services support the\nfollowing fields and types:\n\nRequest field | Type\n---------------|-----------------\nauth.uid | `string`\nauth.token | `map\u003cstring, string\u003e`\nheaders | `map\u003cstring, string\u003e`\nmethod | `string`\nparams | `map\u003cstring, string\u003e`\npath | `string`\ntime | `google.protobuf.Timestamp`\n\nIf the request value is not well-formed for the service, the request will\nbe rejected as an invalid argument.", - "type": "any" - } - }, - "id": "TestCase" - }, - "Issue": { - "description": "Issues include warnings, errors, and deprecation notices.", - "type": "object", - "properties": { - "sourcePosition": { - "$ref": "SourcePosition", - "description": "Position of the issue in the `Source`." - }, - "severity": { - "description": "The severity of the issue.", - "type": "string", - "enumDescriptions": [ - "An unspecified severity.", - "Deprecation issue for statements and method that may no longer be\nsupported or maintained.", - "Warnings such as: unused variables.", - "Errors such as: unmatched curly braces or variable redefinition." - ], - "enum": [ - "SEVERITY_UNSPECIFIED", - "DEPRECATION", - "WARNING", - "ERROR" - ] - }, - "description": { - "description": "Short error description.", - "type": "string" - } - }, - "id": "Issue" - }, - "TestRulesetRequest": { - "description": "The request for FirebaseRulesService.TestRuleset.", - "type": "object", - "properties": { - "source": { - "$ref": "Source", - "description": "Optional `Source` to be checked for correctness.\n\nThis field must not be set when the resource name refers to a `Ruleset`." - }, - "testSuite": { - "description": "Inline `TestSuite` to run.", - "$ref": "TestSuite" - } - }, - "id": "TestRulesetRequest" - }, - "Ruleset": { - "id": "Ruleset", - "description": "`Ruleset` is an immutable copy of `Source` with a globally unique identifier\nand a creation time.", - "type": "object", - "properties": { - "createTime": { - "description": "Time the `Ruleset` was created.\nOutput only.", - "format": "google-datetime", - "type": "string" - }, - "name": { - "type": "string", - "description": "Name of the `Ruleset`. The ruleset_id is auto generated by the service.\nFormat: `projects/{project_id}/rulesets/{ruleset_id}`\nOutput only." - }, - "source": { - "$ref": "Source", - "description": "`Source` for the `Ruleset`." - } - } - }, - "FunctionCall": { - "description": "Represents a service-defined function call that was invoked during test\nexecution.", - "type": "object", - "properties": { - "args": { - "description": "The arguments that were provided to the function.", - "type": "array", - "items": { - "type": "any" - } - }, - "function": { - "type": "string", - "description": "Name of the function invoked." - } - }, - "id": "FunctionCall" - }, - "ListReleasesResponse": { - "description": "The response for FirebaseRulesService.ListReleases.", - "type": "object", - "properties": { - "releases": { - "description": "List of `Release` instances.", - "type": "array", - "items": { - "$ref": "Release" - } - }, - "nextPageToken": { - "description": "The pagination token to retrieve the next page of results. If the value is\nempty, no further results remain.", - "type": "string" - } - }, - "id": "ListReleasesResponse" - }, - "File": { - "description": "`File` containing source content.", - "type": "object", - "properties": { - "name": { - "description": "File name.", - "type": "string" - }, - "content": { - "type": "string", - "description": "Textual Content." - }, - "fingerprint": { - "description": "Fingerprint (e.g. github sha) associated with the `File`.", - "format": "byte", - "type": "string" - } - }, - "id": "File" - }, - "Release": { - "type": "object", - "properties": { - "createTime": { - "type": "string", - "description": "Time the release was created.\nOutput only.", - "format": "google-datetime" - }, - "updateTime": { - "description": "Time the release was updated.\nOutput only.", - "format": "google-datetime", - "type": "string" - }, - "name": { - "description": "Resource name for the `Release`.\n\n`Release` names may be structured `app1/prod/v2` or flat `app1_prod_v2`\nwhich affords developers a great deal of flexibility in mapping the name\nto the style that best fits their existing development practices. For\nexample, a name could refer to an environment, an app, a version, or some\ncombination of three.\n\nIn the table below, for the project name `projects/foo`, the following\nrelative release paths show how flat and structured names might be chosen\nto match a desired development / deployment strategy.\n\nUse Case | Flat Name | Structured Name\n-------------|---------------------|----------------\nEnvironments | releases/qa | releases/qa\nApps | releases/app1_qa | releases/app1/qa\nVersions | releases/app1_v2_qa | releases/app1/v2/qa\n\nThe delimiter between the release name path elements can be almost anything\nand it should work equally well with the release name list filter, but in\nmany ways the structured paths provide a clearer picture of the\nrelationship between `Release` instances.\n\nFormat: `projects/{project_id}/releases/{release_id}`", - "type": "string" - }, - "rulesetName": { - "description": "Name of the `Ruleset` referred to by this `Release`. The `Ruleset` must\nexist the `Release` to be created.", - "type": "string" - } - }, - "id": "Release", - "description": "`Release` is a named reference to a `Ruleset`. Once a `Release` refers to a\n`Ruleset`, rules-enabled services will be able to enforce the `Ruleset`." - }, - "TestRulesetResponse": { - "description": "The response for FirebaseRulesService.TestRuleset.", - "type": "object", - "properties": { - "issues": { - "description": "Syntactic and semantic `Source` issues of varying severity. Issues of\n`ERROR` severity will prevent tests from executing.", - "type": "array", - "items": { - "$ref": "Issue" - } - }, - "testResults": { - "description": "The set of test results given the test cases in the `TestSuite`.\nThe results will appear in the same order as the test cases appear in the\n`TestSuite`.", - "type": "array", - "items": { - "$ref": "TestResult" - } - } - }, - "id": "TestRulesetResponse" - }, - "ListRulesetsResponse": { - "properties": { - "nextPageToken": { - "description": "The pagination token to retrieve the next page of results. If the value is\nempty, no further results remain.", - "type": "string" - }, - "rulesets": { - "description": "List of `Ruleset` instances.", - "type": "array", - "items": { - "$ref": "Ruleset" - } - } - }, - "id": "ListRulesetsResponse", - "description": "The response for FirebaseRulesService.ListRulesets.", - "type": "object" - }, - "TestResult": { - "description": "Test result message containing the state of the test as well as a\ndescription and source position for test failures.", - "type": "object", - "properties": { - "functionCalls": { - "description": "The set of function calls made to service-defined methods.\n\nFunction calls are included in the order in which they are encountered\nduring evaluation, are provided for both mocked and unmocked functions,\nand included on the response regardless of the test `state`.", - "type": "array", - "items": { - "$ref": "FunctionCall" - } - }, - "state": { - "enum": [ - "STATE_UNSPECIFIED", - "SUCCESS", - "FAILURE" - ], - "description": "State of the test.", - "type": "string", - "enumDescriptions": [ - "Test state is not set.", - "Test is a success.", - "Test is a failure." - ] - }, - "debugMessages": { - "description": "Debug messages related to test execution issues encountered during\nevaluation.\n\nDebug messages may be related to too many or too few invocations of\nfunction mocks or to runtime errors that occur during evaluation.\n\nFor example: ```Unable to read variable [name: \"resource\"]```", - "type": "array", - "items": { - "type": "string" - } - }, - "errorPosition": { - "description": "Position in the `Source` or `Ruleset` where the principle runtime error\noccurs.\n\nEvaluation of an expression may result in an error. Rules are deny by\ndefault, so a `DENY` expectation when an error is generated is valid.\nWhen there is a `DENY` with an error, the `SourcePosition` is returned.\n\nE.g. `error_position { line: 19 column: 37 }`", - "$ref": "SourcePosition" - } - }, - "id": "TestResult" - }, - "Arg": { - "description": "Arg matchers for the mock function.", - "type": "object", - "properties": { - "exactValue": { - "description": "Argument exactly matches value provided.", - "type": "any" - }, - "anyValue": { - "$ref": "Empty", - "description": "Argument matches any value provided." - } - }, - "id": "Arg" - }, - "TestSuite": { - "properties": { - "testCases": { - "description": "Collection of test cases associated with the `TestSuite`.", - "type": "array", - "items": { - "$ref": "TestCase" - } - } - }, - "id": "TestSuite", - "description": "`TestSuite` is a collection of `TestCase` instances that validate the logical\ncorrectness of a `Ruleset`. The `TestSuite` may be referenced in-line within\na `TestRuleset` invocation or as part of a `Release` object as a pre-release\ncheck.", - "type": "object" - }, - "UpdateReleaseRequest": { - "type": "object", - "properties": { - "release": { - "description": "`Release` to update.", - "$ref": "Release" - }, - "updateMask": { - "description": "Specifies which fields to update.", - "format": "google-fieldmask", - "type": "string" - } - }, - "id": "UpdateReleaseRequest", - "description": "The request for FirebaseRulesService.UpdateReleasePatch." - }, - "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 `{}`.", - "type": "object", - "properties": {}, - "id": "Empty" - } - }, - "icons": { - "x32": "http://www.google.com/images/icons/product/search-32.gif", - "x16": "http://www.google.com/images/icons/product/search-16.gif" - }, - "protocol": "rest", - "canonicalName": "Firebase Rules", "auth": { "oauth2": { "scopes": { @@ -921,5 +14,912 @@ } } }, - "rootUrl": "https://firebaserules.googleapis.com/" -} + "basePath": "", + "baseUrl": "https://firebaserules.googleapis.com/", + "batchPath": "batch", + "canonicalName": "Firebase Rules", + "description": "Creates and manages rules that determine when a Firebase Rules-enabled service should permit a request.\n", + "discoveryVersion": "v1", + "documentationLink": "https://firebase.google.com/docs/storage/security", + "icons": { + "x16": "http://www.google.com/images/icons/product/search-16.gif", + "x32": "http://www.google.com/images/icons/product/search-32.gif" + }, + "id": "firebaserules:v1", + "kind": "discovery#restDescription", + "name": "firebaserules", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "$.xgafv": { + "description": "V1 error format.", + "enum": [ + "1", + "2" + ], + "enumDescriptions": [ + "v1 error format", + "v2 error format" + ], + "location": "query", + "type": "string" + }, + "access_token": { + "description": "OAuth access token.", + "location": "query", + "type": "string" + }, + "alt": { + "default": "json", + "description": "Data format for response.", + "enum": [ + "json", + "media", + "proto" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json", + "Media download with context-dependent Content-Type", + "Responses with Content-Type of application/x-protobuf" + ], + "location": "query", + "type": "string" + }, + "bearer_token": { + "description": "OAuth bearer token.", + "location": "query", + "type": "string" + }, + "callback": { + "description": "JSONP", + "location": "query", + "type": "string" + }, + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "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.", + "location": "query", + "type": "string" + }, + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "pp": { + "default": "true", + "description": "Pretty-print response.", + "location": "query", + "type": "boolean" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", + "location": "query", + "type": "string" + }, + "uploadType": { + "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", + "location": "query", + "type": "string" + }, + "upload_protocol": { + "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", + "location": "query", + "type": "string" + } + }, + "protocol": "rest", + "resources": { + "projects": { + "methods": { + "test": { + "description": "Test `Source` for syntactic and semantic correctness. Issues present, if\nany, will be returned to the caller with a description, severity, and\nsource location.\n\nThe test method may be executed with `Source` or a `Ruleset` name.\nPassing `Source` is useful for unit testing new rules. Passing a `Ruleset`\nname is useful for regression testing an existing rule.\n\nThe following is an example of `Source` that permits users to upload images\nto a bucket bearing their user id and matching the correct metadata:\n\n_*Example*_\n\n // Users are allowed to subscribe and unsubscribe to the blog.\n service firebase.storage {\n match /users/{userId}/images/{imageName} {\n allow write: if userId == request.auth.uid\n \u0026\u0026 (imageName.matches('*.png$')\n || imageName.matches('*.jpg$'))\n \u0026\u0026 resource.mimeType.matches('^image/')\n }\n }", + "flatPath": "v1/projects/{projectsId}:test", + "httpMethod": "POST", + "id": "firebaserules.projects.test", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Tests may either provide `source` or a `Ruleset` resource name.\n\nFor tests against `source`, the resource name must refer to the project:\nFormat: `projects/{project_id}`\n\nFor tests against a `Ruleset`, this must be the `Ruleset` resource name:\nFormat: `projects/{project_id}/rulesets/{ruleset_id}`", + "location": "path", + "pattern": "^projects/.+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}:test", + "request": { + "$ref": "TestRulesetRequest" + }, + "response": { + "$ref": "TestRulesetResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/firebase", + "https://www.googleapis.com/auth/firebase.readonly" + ] + } + }, + "resources": { + "releases": { + "methods": { + "create": { + "description": "Create a `Release`.\n\nRelease names should reflect the developer's deployment practices. For\nexample, the release name may include the environment name, application\nname, application version, or any other name meaningful to the developer.\nOnce a `Release` refers to a `Ruleset`, the rules can be enforced by\nFirebase Rules-enabled services.\n\nMore than one `Release` may be 'live' concurrently. Consider the following\nthree `Release` names for `projects/foo` and the `Ruleset` to which they\nrefer.\n\nRelease Name | Ruleset Name\n--------------------------------|-------------\nprojects/foo/releases/prod | projects/foo/rulesets/uuid123\nprojects/foo/releases/prod/beta | projects/foo/rulesets/uuid123\nprojects/foo/releases/prod/v23 | projects/foo/rulesets/uuid456\n\nThe table reflects the `Ruleset` rollout in progress. The `prod` and\n`prod/beta` releases refer to the same `Ruleset`. However, `prod/v23`\nrefers to a new `Ruleset`. The `Ruleset` reference for a `Release` may be\nupdated using the UpdateRelease method.", + "flatPath": "v1/projects/{projectsId}/releases", + "httpMethod": "POST", + "id": "firebaserules.projects.releases.create", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Resource name for the project which owns this `Release`.\n\nFormat: `projects/{project_id}`", + "location": "path", + "pattern": "^projects/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}/releases", + "request": { + "$ref": "Release" + }, + "response": { + "$ref": "Release" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/firebase" + ] + }, + "delete": { + "description": "Delete a `Release` by resource name.", + "flatPath": "v1/projects/{projectsId}/releases/{releasesId}", + "httpMethod": "DELETE", + "id": "firebaserules.projects.releases.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Resource name for the `Release` to delete.\n\nFormat: `projects/{project_id}/releases/{release_id}`", + "location": "path", + "pattern": "^projects/[^/]+/releases/.+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/firebase" + ] + }, + "get": { + "description": "Get a `Release` by name.", + "flatPath": "v1/projects/{projectsId}/releases/{releasesId}", + "httpMethod": "GET", + "id": "firebaserules.projects.releases.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Resource name of the `Release`.\n\nFormat: `projects/{project_id}/releases/{release_id}`", + "location": "path", + "pattern": "^projects/[^/]+/releases/.+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "Release" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/firebase", + "https://www.googleapis.com/auth/firebase.readonly" + ] + }, + "getExecutable": { + "description": "Get the `Release` executable to use when enforcing rules.", + "flatPath": "v1/projects/{projectsId}/releases/{releasesId}:getExecutable", + "httpMethod": "GET", + "id": "firebaserules.projects.releases.getExecutable", + "parameterOrder": [ + "name" + ], + "parameters": { + "executableVersion": { + "description": "The requested runtime executable version.\nDefaults to FIREBASE_RULES_EXECUTABLE_V1", + "enum": [ + "RELEASE_EXECUTABLE_VERSION_UNSPECIFIED", + "FIREBASE_RULES_EXECUTABLE_V1", + "FIREBASE_RULES_EXECUTABLE_V2" + ], + "location": "query", + "type": "string" + }, + "name": { + "description": "Resource name of the `Release`.\n\nFormat: `projects/{project_id}/releases/{release_id}`", + "location": "path", + "pattern": "^projects/[^/]+/releases/.+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}:getExecutable", + "response": { + "$ref": "GetReleaseExecutableResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/firebase", + "https://www.googleapis.com/auth/firebase.readonly" + ] + }, + "list": { + "description": "List the `Release` values for a project. This list may optionally be\nfiltered by `Release` name, `Ruleset` name, `TestSuite` name, or any\ncombination thereof.", + "flatPath": "v1/projects/{projectsId}/releases", + "httpMethod": "GET", + "id": "firebaserules.projects.releases.list", + "parameterOrder": [ + "name" + ], + "parameters": { + "filter": { + "description": "`Release` filter. The list method supports filters with restrictions on the\n`Release.name`, `Release.ruleset_name`, and `Release.test_suite_name`.\n\nExample 1: A filter of 'name=prod*' might return `Release`s with names\nwithin 'projects/foo' prefixed with 'prod':\n\nName | Ruleset Name\n------------------------------|-------------\nprojects/foo/releases/prod | projects/foo/rulesets/uuid1234\nprojects/foo/releases/prod/v1 | projects/foo/rulesets/uuid1234\nprojects/foo/releases/prod/v2 | projects/foo/rulesets/uuid8888\n\nExample 2: A filter of `name=prod* ruleset_name=uuid1234` would return only\n`Release` instances for 'projects/foo' with names prefixed with 'prod'\nreferring to the same `Ruleset` name of 'uuid1234':\n\nName | Ruleset Name\n------------------------------|-------------\nprojects/foo/releases/prod | projects/foo/rulesets/1234\nprojects/foo/releases/prod/v1 | projects/foo/rulesets/1234\n\nIn the examples, the filter parameters refer to the search filters are\nrelative to the project. Fully qualified prefixed may also be used. e.g.\n`test_suite_name=projects/foo/testsuites/uuid1`", + "location": "query", + "type": "string" + }, + "name": { + "description": "Resource name for the project.\n\nFormat: `projects/{project_id}`", + "location": "path", + "pattern": "^projects/[^/]+$", + "required": true, + "type": "string" + }, + "pageSize": { + "description": "Page size to load. Maximum of 100. Defaults to 10.\nNote: `page_size` is just a hint and the service may choose to load fewer\nthan `page_size` results due to the size of the output. To traverse all of\nthe releases, the caller should iterate until the `page_token` on the\nresponse is empty.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Next page token for the next batch of `Release` instances.", + "location": "query", + "type": "string" + } + }, + "path": "v1/{+name}/releases", + "response": { + "$ref": "ListReleasesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/firebase", + "https://www.googleapis.com/auth/firebase.readonly" + ] + }, + "patch": { + "description": "Update a `Release` via PATCH.\n\nOnly updates to the `ruleset_name` and `test_suite_name` fields will be\nhonored. `Release` rename is not supported. To create a `Release` use the\nCreateRelease method.", + "flatPath": "v1/projects/{projectsId}/releases/{releasesId}", + "httpMethod": "PATCH", + "id": "firebaserules.projects.releases.patch", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Resource name for the project which owns this `Release`.\n\nFormat: `projects/{project_id}`", + "location": "path", + "pattern": "^projects/[^/]+/releases/.+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "request": { + "$ref": "UpdateReleaseRequest" + }, + "response": { + "$ref": "Release" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/firebase" + ] + } + } + }, + "rulesets": { + "methods": { + "create": { + "description": "Create a `Ruleset` from `Source`.\n\nThe `Ruleset` is given a unique generated name which is returned to the\ncaller. `Source` containing syntactic or semantics errors will result in an\nerror response indicating the first error encountered. For a detailed view\nof `Source` issues, use TestRuleset.", + "flatPath": "v1/projects/{projectsId}/rulesets", + "httpMethod": "POST", + "id": "firebaserules.projects.rulesets.create", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Resource name for Project which owns this `Ruleset`.\n\nFormat: `projects/{project_id}`", + "location": "path", + "pattern": "^projects/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}/rulesets", + "request": { + "$ref": "Ruleset" + }, + "response": { + "$ref": "Ruleset" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/firebase" + ] + }, + "delete": { + "description": "Delete a `Ruleset` by resource name.\n\nIf the `Ruleset` is referenced by a `Release` the operation will fail.", + "flatPath": "v1/projects/{projectsId}/rulesets/{rulesetsId}", + "httpMethod": "DELETE", + "id": "firebaserules.projects.rulesets.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Resource name for the ruleset to delete.\n\nFormat: `projects/{project_id}/rulesets/{ruleset_id}`", + "location": "path", + "pattern": "^projects/[^/]+/rulesets/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/firebase" + ] + }, + "get": { + "description": "Get a `Ruleset` by name including the full `Source` contents.", + "flatPath": "v1/projects/{projectsId}/rulesets/{rulesetsId}", + "httpMethod": "GET", + "id": "firebaserules.projects.rulesets.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Resource name for the ruleset to get.\n\nFormat: `projects/{project_id}/rulesets/{ruleset_id}`", + "location": "path", + "pattern": "^projects/[^/]+/rulesets/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "Ruleset" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/firebase", + "https://www.googleapis.com/auth/firebase.readonly" + ] + }, + "list": { + "description": "List `Ruleset` metadata only and optionally filter the results by `Ruleset`\nname.\n\nThe full `Source` contents of a `Ruleset` may be retrieved with\nGetRuleset.", + "flatPath": "v1/projects/{projectsId}/rulesets", + "httpMethod": "GET", + "id": "firebaserules.projects.rulesets.list", + "parameterOrder": [ + "name" + ], + "parameters": { + "filter": { + "description": "`Ruleset` filter. The list method supports filters with restrictions on\n`Ruleset.name`.\n\nFilters on `Ruleset.create_time` should use the `date` function which\nparses strings that conform to the RFC 3339 date/time specifications.\n\nExample: `create_time \u003e date(\"2017-01-01\") AND name=UUID-*`", + "location": "query", + "type": "string" + }, + "name": { + "description": "Resource name for the project.\n\nFormat: `projects/{project_id}`", + "location": "path", + "pattern": "^projects/[^/]+$", + "required": true, + "type": "string" + }, + "pageSize": { + "description": "Page size to load. Maximum of 100. Defaults to 10.\nNote: `page_size` is just a hint and the service may choose to load less\nthan `page_size` due to the size of the output. To traverse all of the\nreleases, caller should iterate until the `page_token` is empty.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Next page token for loading the next batch of `Ruleset` instances.", + "location": "query", + "type": "string" + } + }, + "path": "v1/{+name}/rulesets", + "response": { + "$ref": "ListRulesetsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/firebase", + "https://www.googleapis.com/auth/firebase.readonly" + ] + } + } + } + } + } + }, + "revision": "20180124", + "rootUrl": "https://firebaserules.googleapis.com/", + "schemas": { + "Arg": { + "description": "Arg matchers for the mock function.", + "id": "Arg", + "properties": { + "anyValue": { + "$ref": "Empty", + "description": "Argument matches any value provided." + }, + "exactValue": { + "description": "Argument exactly matches value provided.", + "type": "any" + } + }, + "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" + }, + "File": { + "description": "`File` containing source content.", + "id": "File", + "properties": { + "content": { + "description": "Textual Content.", + "type": "string" + }, + "fingerprint": { + "description": "Fingerprint (e.g. github sha) associated with the `File`.", + "format": "byte", + "type": "string" + }, + "name": { + "description": "File name.", + "type": "string" + } + }, + "type": "object" + }, + "FunctionCall": { + "description": "Represents a service-defined function call that was invoked during test\nexecution.", + "id": "FunctionCall", + "properties": { + "args": { + "description": "The arguments that were provided to the function.", + "items": { + "type": "any" + }, + "type": "array" + }, + "function": { + "description": "Name of the function invoked.", + "type": "string" + } + }, + "type": "object" + }, + "FunctionMock": { + "description": "Mock function definition.\n\nMocks must refer to a function declared by the target service. The type of\nthe function args and result will be inferred at test time. If either the\narg or result values are not compatible with function type declaration, the\nrequest will be considered invalid.\n\nMore than one `FunctionMock` may be provided for a given function name so\nlong as the `Arg` matchers are distinct. There may be only one function\nfor a given overload where all `Arg` values are `Arg.any_value`.", + "id": "FunctionMock", + "properties": { + "args": { + "description": "The list of `Arg` values to match. The order in which the arguments are\nprovided is the order in which they must appear in the function\ninvocation.", + "items": { + "$ref": "Arg" + }, + "type": "array" + }, + "function": { + "description": "The name of the function.\n\nThe function name must match one provided by a service declaration.", + "type": "string" + }, + "result": { + "$ref": "Result", + "description": "The mock result of the function call." + } + }, + "type": "object" + }, + "GetReleaseExecutableResponse": { + "description": "The response for FirebaseRulesService.GetReleaseExecutable", + "id": "GetReleaseExecutableResponse", + "properties": { + "executable": { + "description": "Executable view of the `Ruleset` referenced by the `Release`.", + "format": "byte", + "type": "string" + }, + "executableVersion": { + "description": "The Rules runtime version of the executable.", + "enum": [ + "RELEASE_EXECUTABLE_VERSION_UNSPECIFIED", + "FIREBASE_RULES_EXECUTABLE_V1", + "FIREBASE_RULES_EXECUTABLE_V2" + ], + "enumDescriptions": [ + "Executable format unspecified.\nDefaults to FIREBASE_RULES_EXECUTABLE_V1", + "Firebase Rules syntax 'rules2' executable versions:\nCustom AST for use with Java clients.", + "CEL-based executable for use with C++ clients." + ], + "type": "string" + }, + "language": { + "description": "`Language` used to generate the executable bytes.", + "enum": [ + "LANGUAGE_UNSPECIFIED", + "FIREBASE_RULES", + "EVENT_FLOW_TRIGGERS" + ], + "enumDescriptions": [ + "Language unspecified. Defaults to FIREBASE_RULES.", + "Firebase Rules language.", + "Event Flow triggers." + ], + "type": "string" + }, + "rulesetName": { + "description": "`Ruleset` name associated with the `Release` executable.", + "type": "string" + }, + "updateTime": { + "description": "Timestamp for the most recent `Release.update_time`.", + "format": "google-datetime", + "type": "string" + } + }, + "type": "object" + }, + "Issue": { + "description": "Issues include warnings, errors, and deprecation notices.", + "id": "Issue", + "properties": { + "description": { + "description": "Short error description.", + "type": "string" + }, + "severity": { + "description": "The severity of the issue.", + "enum": [ + "SEVERITY_UNSPECIFIED", + "DEPRECATION", + "WARNING", + "ERROR" + ], + "enumDescriptions": [ + "An unspecified severity.", + "Deprecation issue for statements and method that may no longer be\nsupported or maintained.", + "Warnings such as: unused variables.", + "Errors such as: unmatched curly braces or variable redefinition." + ], + "type": "string" + }, + "sourcePosition": { + "$ref": "SourcePosition", + "description": "Position of the issue in the `Source`." + } + }, + "type": "object" + }, + "ListReleasesResponse": { + "description": "The response for FirebaseRulesService.ListReleases.", + "id": "ListReleasesResponse", + "properties": { + "nextPageToken": { + "description": "The pagination token to retrieve the next page of results. If the value is\nempty, no further results remain.", + "type": "string" + }, + "releases": { + "description": "List of `Release` instances.", + "items": { + "$ref": "Release" + }, + "type": "array" + } + }, + "type": "object" + }, + "ListRulesetsResponse": { + "description": "The response for FirebaseRulesService.ListRulesets.", + "id": "ListRulesetsResponse", + "properties": { + "nextPageToken": { + "description": "The pagination token to retrieve the next page of results. If the value is\nempty, no further results remain.", + "type": "string" + }, + "rulesets": { + "description": "List of `Ruleset` instances.", + "items": { + "$ref": "Ruleset" + }, + "type": "array" + } + }, + "type": "object" + }, + "Release": { + "description": "`Release` is a named reference to a `Ruleset`. Once a `Release` refers to a\n`Ruleset`, rules-enabled services will be able to enforce the `Ruleset`.", + "id": "Release", + "properties": { + "createTime": { + "description": "Time the release was created.\nOutput only.", + "format": "google-datetime", + "type": "string" + }, + "name": { + "description": "Resource name for the `Release`.\n\n`Release` names may be structured `app1/prod/v2` or flat `app1_prod_v2`\nwhich affords developers a great deal of flexibility in mapping the name\nto the style that best fits their existing development practices. For\nexample, a name could refer to an environment, an app, a version, or some\ncombination of three.\n\nIn the table below, for the project name `projects/foo`, the following\nrelative release paths show how flat and structured names might be chosen\nto match a desired development / deployment strategy.\n\nUse Case | Flat Name | Structured Name\n-------------|---------------------|----------------\nEnvironments | releases/qa | releases/qa\nApps | releases/app1_qa | releases/app1/qa\nVersions | releases/app1_v2_qa | releases/app1/v2/qa\n\nThe delimiter between the release name path elements can be almost anything\nand it should work equally well with the release name list filter, but in\nmany ways the structured paths provide a clearer picture of the\nrelationship between `Release` instances.\n\nFormat: `projects/{project_id}/releases/{release_id}`", + "type": "string" + }, + "rulesetName": { + "description": "Name of the `Ruleset` referred to by this `Release`. The `Ruleset` must\nexist the `Release` to be created.", + "type": "string" + }, + "updateTime": { + "description": "Time the release was updated.\nOutput only.", + "format": "google-datetime", + "type": "string" + } + }, + "type": "object" + }, + "Result": { + "description": "Possible result values from the function mock invocation.", + "id": "Result", + "properties": { + "undefined": { + "$ref": "Empty", + "description": "The result is undefined, meaning the result could not be computed." + }, + "value": { + "description": "The result is an actual value. The type of the value must match that\nof the type declared by the service.", + "type": "any" + } + }, + "type": "object" + }, + "Ruleset": { + "description": "`Ruleset` is an immutable copy of `Source` with a globally unique identifier\nand a creation time.", + "id": "Ruleset", + "properties": { + "createTime": { + "description": "Time the `Ruleset` was created.\nOutput only.", + "format": "google-datetime", + "type": "string" + }, + "name": { + "description": "Name of the `Ruleset`. The ruleset_id is auto generated by the service.\nFormat: `projects/{project_id}/rulesets/{ruleset_id}`\nOutput only.", + "type": "string" + }, + "source": { + "$ref": "Source", + "description": "`Source` for the `Ruleset`." + } + }, + "type": "object" + }, + "Source": { + "description": "`Source` is one or more `File` messages comprising a logical set of rules.", + "id": "Source", + "properties": { + "files": { + "description": "`File` set constituting the `Source` bundle.", + "items": { + "$ref": "File" + }, + "type": "array" + } + }, + "type": "object" + }, + "SourcePosition": { + "description": "Position in the `Source` content including its line, column number, and an\nindex of the `File` in the `Source` message. Used for debug purposes.", + "id": "SourcePosition", + "properties": { + "column": { + "description": "First column on the source line associated with the source fragment.", + "format": "int32", + "type": "integer" + }, + "fileName": { + "description": "Name of the `File`.", + "type": "string" + }, + "line": { + "description": "Line number of the source fragment. 1-based.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "TestCase": { + "description": "`TestCase` messages provide the request context and an expectation as to\nwhether the given context will be allowed or denied. Test cases may specify\nthe `request`, `resource`, and `function_mocks` to mock a function call to\na service-provided function.\n\nThe `request` object represents context present at request-time.\n\nThe `resource` is the value of the target resource as it appears in\npersistent storage before the request is executed.", + "id": "TestCase", + "properties": { + "expectation": { + "description": "Test expectation.", + "enum": [ + "EXPECTATION_UNSPECIFIED", + "ALLOW", + "DENY" + ], + "enumDescriptions": [ + "Unspecified expectation.", + "Expect an allowed result.", + "Expect a denied result." + ], + "type": "string" + }, + "functionMocks": { + "description": "Optional function mocks for service-defined functions. If not set, any\nservice defined function is expected to return an error, which may or may\nnot influence the test outcome.", + "items": { + "$ref": "FunctionMock" + }, + "type": "array" + }, + "request": { + "description": "Request context.\n\nThe exact format of the request context is service-dependent. See the\nappropriate service documentation for information about the supported\nfields and types on the request. Minimally, all services support the\nfollowing fields and types:\n\nRequest field | Type\n---------------|-----------------\nauth.uid | `string`\nauth.token | `map\u003cstring, string\u003e`\nheaders | `map\u003cstring, string\u003e`\nmethod | `string`\nparams | `map\u003cstring, string\u003e`\npath | `string`\ntime | `google.protobuf.Timestamp`\n\nIf the request value is not well-formed for the service, the request will\nbe rejected as an invalid argument.", + "type": "any" + }, + "resource": { + "description": "Optional resource value as it appears in persistent storage before the\nrequest is fulfilled.\n\nThe resource type depends on the `request.path` value.", + "type": "any" + } + }, + "type": "object" + }, + "TestResult": { + "description": "Test result message containing the state of the test as well as a\ndescription and source position for test failures.", + "id": "TestResult", + "properties": { + "debugMessages": { + "description": "Debug messages related to test execution issues encountered during\nevaluation.\n\nDebug messages may be related to too many or too few invocations of\nfunction mocks or to runtime errors that occur during evaluation.\n\nFor example: ```Unable to read variable [name: \"resource\"]```", + "items": { + "type": "string" + }, + "type": "array" + }, + "errorPosition": { + "$ref": "SourcePosition", + "description": "Position in the `Source` or `Ruleset` where the principle runtime error\noccurs.\n\nEvaluation of an expression may result in an error. Rules are deny by\ndefault, so a `DENY` expectation when an error is generated is valid.\nWhen there is a `DENY` with an error, the `SourcePosition` is returned.\n\nE.g. `error_position { line: 19 column: 37 }`" + }, + "functionCalls": { + "description": "The set of function calls made to service-defined methods.\n\nFunction calls are included in the order in which they are encountered\nduring evaluation, are provided for both mocked and unmocked functions,\nand included on the response regardless of the test `state`.", + "items": { + "$ref": "FunctionCall" + }, + "type": "array" + }, + "state": { + "description": "State of the test.", + "enum": [ + "STATE_UNSPECIFIED", + "SUCCESS", + "FAILURE" + ], + "enumDescriptions": [ + "Test state is not set.", + "Test is a success.", + "Test is a failure." + ], + "type": "string" + } + }, + "type": "object" + }, + "TestRulesetRequest": { + "description": "The request for FirebaseRulesService.TestRuleset.", + "id": "TestRulesetRequest", + "properties": { + "source": { + "$ref": "Source", + "description": "Optional `Source` to be checked for correctness.\n\nThis field must not be set when the resource name refers to a `Ruleset`." + }, + "testSuite": { + "$ref": "TestSuite", + "description": "Inline `TestSuite` to run." + } + }, + "type": "object" + }, + "TestRulesetResponse": { + "description": "The response for FirebaseRulesService.TestRuleset.", + "id": "TestRulesetResponse", + "properties": { + "issues": { + "description": "Syntactic and semantic `Source` issues of varying severity. Issues of\n`ERROR` severity will prevent tests from executing.", + "items": { + "$ref": "Issue" + }, + "type": "array" + }, + "testResults": { + "description": "The set of test results given the test cases in the `TestSuite`.\nThe results will appear in the same order as the test cases appear in the\n`TestSuite`.", + "items": { + "$ref": "TestResult" + }, + "type": "array" + } + }, + "type": "object" + }, + "TestSuite": { + "description": "`TestSuite` is a collection of `TestCase` instances that validate the logical\ncorrectness of a `Ruleset`. The `TestSuite` may be referenced in-line within\na `TestRuleset` invocation or as part of a `Release` object as a pre-release\ncheck.", + "id": "TestSuite", + "properties": { + "testCases": { + "description": "Collection of test cases associated with the `TestSuite`.", + "items": { + "$ref": "TestCase" + }, + "type": "array" + } + }, + "type": "object" + }, + "UpdateReleaseRequest": { + "description": "The request for FirebaseRulesService.UpdateReleasePatch.", + "id": "UpdateReleaseRequest", + "properties": { + "release": { + "$ref": "Release", + "description": "`Release` to update." + }, + "updateMask": { + "description": "Specifies which fields to update.", + "format": "google-fieldmask", + "type": "string" + } + }, + "type": "object" + } + }, + "servicePath": "", + "title": "Firebase Rules API", + "version": "v1", + "version_module": true +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/firestore/v1beta1/firestore-api.json b/vendor/google.golang.org/api/firestore/v1beta1/firestore-api.json index 457043814..287ac2256 100644 --- a/vendor/google.golang.org/api/firestore/v1beta1/firestore-api.json +++ b/vendor/google.golang.org/api/firestore/v1beta1/firestore-api.json @@ -1,102 +1,834 @@ { - "servicePath": "", - "description": "", - "kind": "discovery#restDescription", - "basePath": "", - "id": "firestore:v1beta1", - "documentationLink": "https://cloud.google.com/firestore", - "revision": "20180110", - "discoveryVersion": "v1", - "version_module": true, - "schemas": { - "TargetChange": { - "description": "Targets being watched have changed.", - "type": "object", - "properties": { - "targetIds": { - "description": "The target IDs of targets that have changed.\n\nIf empty, the change applies to all targets.\n\nFor `target_change_type=ADD`, the order of the target IDs matches the order\nof the requests to add the targets. This allows clients to unambiguously\nassociate server-assigned target IDs with added targets.\n\nFor other states, the order of the target IDs is not defined.", - "type": "array", - "items": { - "format": "int32", - "type": "integer" - } + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/cloud-platform": { + "description": "View and manage your data across Google Cloud Platform services" }, - "cause": { - "description": "The error that resulted in this change, if applicable.", - "$ref": "Status" + "https://www.googleapis.com/auth/datastore": { + "description": "View and manage your Google Cloud Datastore data" + } + } + } + }, + "basePath": "", + "baseUrl": "https://firestore.googleapis.com/", + "batchPath": "batch", + "canonicalName": "Firestore", + "description": "", + "discoveryVersion": "v1", + "documentationLink": "https://cloud.google.com/firestore", + "fullyEncodeReservedExpansion": true, + "icons": { + "x16": "http://www.google.com/images/icons/product/search-16.gif", + "x32": "http://www.google.com/images/icons/product/search-32.gif" + }, + "id": "firestore:v1beta1", + "kind": "discovery#restDescription", + "name": "firestore", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "$.xgafv": { + "description": "V1 error format.", + "enum": [ + "1", + "2" + ], + "enumDescriptions": [ + "v1 error format", + "v2 error format" + ], + "location": "query", + "type": "string" + }, + "access_token": { + "description": "OAuth access token.", + "location": "query", + "type": "string" + }, + "alt": { + "default": "json", + "description": "Data format for response.", + "enum": [ + "json", + "media", + "proto" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json", + "Media download with context-dependent Content-Type", + "Responses with Content-Type of application/x-protobuf" + ], + "location": "query", + "type": "string" + }, + "bearer_token": { + "description": "OAuth bearer token.", + "location": "query", + "type": "string" + }, + "callback": { + "description": "JSONP", + "location": "query", + "type": "string" + }, + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "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.", + "location": "query", + "type": "string" + }, + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "pp": { + "default": "true", + "description": "Pretty-print response.", + "location": "query", + "type": "boolean" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", + "location": "query", + "type": "string" + }, + "uploadType": { + "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", + "location": "query", + "type": "string" + }, + "upload_protocol": { + "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", + "location": "query", + "type": "string" + } + }, + "protocol": "rest", + "resources": { + "projects": { + "resources": { + "databases": { + "resources": { + "documents": { + "methods": { + "batchGet": { + "description": "Gets multiple documents.\n\nDocuments returned by this method are not guaranteed to be returned in the\nsame order that they were requested.", + "flatPath": "v1beta1/projects/{projectsId}/databases/{databasesId}/documents:batchGet", + "httpMethod": "POST", + "id": "firestore.projects.databases.documents.batchGet", + "parameterOrder": [ + "database" + ], + "parameters": { + "database": { + "description": "The database name. In the format:\n`projects/{project_id}/databases/{database_id}`.", + "location": "path", + "pattern": "^projects/[^/]+/databases/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+database}/documents:batchGet", + "request": { + "$ref": "BatchGetDocumentsRequest" + }, + "response": { + "$ref": "BatchGetDocumentsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/datastore" + ] + }, + "beginTransaction": { + "description": "Starts a new transaction.", + "flatPath": "v1beta1/projects/{projectsId}/databases/{databasesId}/documents:beginTransaction", + "httpMethod": "POST", + "id": "firestore.projects.databases.documents.beginTransaction", + "parameterOrder": [ + "database" + ], + "parameters": { + "database": { + "description": "The database name. In the format:\n`projects/{project_id}/databases/{database_id}`.", + "location": "path", + "pattern": "^projects/[^/]+/databases/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+database}/documents:beginTransaction", + "request": { + "$ref": "BeginTransactionRequest" + }, + "response": { + "$ref": "BeginTransactionResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/datastore" + ] + }, + "commit": { + "description": "Commits a transaction, while optionally updating documents.", + "flatPath": "v1beta1/projects/{projectsId}/databases/{databasesId}/documents:commit", + "httpMethod": "POST", + "id": "firestore.projects.databases.documents.commit", + "parameterOrder": [ + "database" + ], + "parameters": { + "database": { + "description": "The database name. In the format:\n`projects/{project_id}/databases/{database_id}`.", + "location": "path", + "pattern": "^projects/[^/]+/databases/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+database}/documents:commit", + "request": { + "$ref": "CommitRequest" + }, + "response": { + "$ref": "CommitResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/datastore" + ] + }, + "createDocument": { + "description": "Creates a new document.", + "flatPath": "v1beta1/projects/{projectsId}/databases/{databasesId}/documents/{documentsId}/{collectionId}", + "httpMethod": "POST", + "id": "firestore.projects.databases.documents.createDocument", + "parameterOrder": [ + "parent", + "collectionId" + ], + "parameters": { + "collectionId": { + "description": "The collection ID, relative to `parent`, to list. For example: `chatrooms`.", + "location": "path", + "required": true, + "type": "string" + }, + "documentId": { + "description": "The client-assigned document ID to use for this document.\n\nOptional. If not specified, an ID will be assigned by the service.", + "location": "query", + "type": "string" + }, + "mask.fieldPaths": { + "description": "The list of field paths in the mask. See Document.fields for a field\npath syntax reference.", + "location": "query", + "repeated": true, + "type": "string" + }, + "parent": { + "description": "The parent resource. For example:\n`projects/{project_id}/databases/{database_id}/documents` or\n`projects/{project_id}/databases/{database_id}/documents/chatrooms/{chatroom_id}`", + "location": "path", + "pattern": "^projects/[^/]+/databases/[^/]+/documents/.+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+parent}/{collectionId}", + "request": { + "$ref": "Document" + }, + "response": { + "$ref": "Document" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/datastore" + ] + }, + "delete": { + "description": "Deletes a document.", + "flatPath": "v1beta1/projects/{projectsId}/databases/{databasesId}/documents/{documentsId}/{documentsId1}", + "httpMethod": "DELETE", + "id": "firestore.projects.databases.documents.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "currentDocument.exists": { + "description": "When set to `true`, the target document must exist.\nWhen set to `false`, the target document must not exist.", + "location": "query", + "type": "boolean" + }, + "currentDocument.updateTime": { + "description": "When set, the target document must exist and have been last updated at\nthat time.", + "format": "google-datetime", + "location": "query", + "type": "string" + }, + "name": { + "description": "The resource name of the Document to delete. In the format:\n`projects/{project_id}/databases/{database_id}/documents/{document_path}`.", + "location": "path", + "pattern": "^projects/[^/]+/databases/[^/]+/documents/[^/]+/.+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/datastore" + ] + }, + "get": { + "description": "Gets a single document.", + "flatPath": "v1beta1/projects/{projectsId}/databases/{databasesId}/documents/{documentsId}/{documentsId1}", + "httpMethod": "GET", + "id": "firestore.projects.databases.documents.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "mask.fieldPaths": { + "description": "The list of field paths in the mask. See Document.fields for a field\npath syntax reference.", + "location": "query", + "repeated": true, + "type": "string" + }, + "name": { + "description": "The resource name of the Document to get. In the format:\n`projects/{project_id}/databases/{database_id}/documents/{document_path}`.", + "location": "path", + "pattern": "^projects/[^/]+/databases/[^/]+/documents/[^/]+/.+$", + "required": true, + "type": "string" + }, + "readTime": { + "description": "Reads the version of the document at the given time.\nThis may not be older than 60 seconds.", + "format": "google-datetime", + "location": "query", + "type": "string" + }, + "transaction": { + "description": "Reads the document in a transaction.", + "format": "byte", + "location": "query", + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "response": { + "$ref": "Document" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/datastore" + ] + }, + "list": { + "description": "Lists documents.", + "flatPath": "v1beta1/projects/{projectsId}/databases/{databasesId}/documents/{documentsId}/{documentsId1}/{collectionId}", + "httpMethod": "GET", + "id": "firestore.projects.databases.documents.list", + "parameterOrder": [ + "parent", + "collectionId" + ], + "parameters": { + "collectionId": { + "description": "The collection ID, relative to `parent`, to list. For example: `chatrooms`\nor `messages`.", + "location": "path", + "required": true, + "type": "string" + }, + "mask.fieldPaths": { + "description": "The list of field paths in the mask. See Document.fields for a field\npath syntax reference.", + "location": "query", + "repeated": true, + "type": "string" + }, + "orderBy": { + "description": "The order to sort results by. For example: `priority desc, name`.", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "The maximum number of documents to return.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "The `next_page_token` value returned from a previous List request, if any.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "The parent resource name. In the format:\n`projects/{project_id}/databases/{database_id}/documents` or\n`projects/{project_id}/databases/{database_id}/documents/{document_path}`.\nFor example:\n`projects/my-project/databases/my-database/documents` or\n`projects/my-project/databases/my-database/documents/chatrooms/my-chatroom`", + "location": "path", + "pattern": "^projects/[^/]+/databases/[^/]+/documents/[^/]+/.+$", + "required": true, + "type": "string" + }, + "readTime": { + "description": "Reads documents as they were at the given time.\nThis may not be older than 60 seconds.", + "format": "google-datetime", + "location": "query", + "type": "string" + }, + "showMissing": { + "description": "If the list should show missing documents. A missing document is a\ndocument that does not exist but has sub-documents. These documents will\nbe returned with a key but will not have fields, Document.create_time,\nor Document.update_time set.\n\nRequests with `show_missing` may not specify `where` or\n`order_by`.", + "location": "query", + "type": "boolean" + }, + "transaction": { + "description": "Reads documents in a transaction.", + "format": "byte", + "location": "query", + "type": "string" + } + }, + "path": "v1beta1/{+parent}/{collectionId}", + "response": { + "$ref": "ListDocumentsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/datastore" + ] + }, + "listCollectionIds": { + "description": "Lists all the collection IDs underneath a document.", + "flatPath": "v1beta1/projects/{projectsId}/databases/{databasesId}/documents/{documentsId}/{documentsId1}:listCollectionIds", + "httpMethod": "POST", + "id": "firestore.projects.databases.documents.listCollectionIds", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "The parent document. In the format:\n`projects/{project_id}/databases/{database_id}/documents/{document_path}`.\nFor example:\n`projects/my-project/databases/my-database/documents/chatrooms/my-chatroom`", + "location": "path", + "pattern": "^projects/[^/]+/databases/[^/]+/documents/[^/]+/.+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+parent}:listCollectionIds", + "request": { + "$ref": "ListCollectionIdsRequest" + }, + "response": { + "$ref": "ListCollectionIdsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/datastore" + ] + }, + "listen": { + "description": "Listens to changes.", + "flatPath": "v1beta1/projects/{projectsId}/databases/{databasesId}/documents:listen", + "httpMethod": "POST", + "id": "firestore.projects.databases.documents.listen", + "parameterOrder": [ + "database" + ], + "parameters": { + "database": { + "description": "The database name. In the format:\n`projects/{project_id}/databases/{database_id}`.", + "location": "path", + "pattern": "^projects/[^/]+/databases/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+database}/documents:listen", + "request": { + "$ref": "ListenRequest" + }, + "response": { + "$ref": "ListenResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/datastore" + ] + }, + "patch": { + "description": "Updates or inserts a document.", + "flatPath": "v1beta1/projects/{projectsId}/databases/{databasesId}/documents/{documentsId}/{documentsId1}", + "httpMethod": "PATCH", + "id": "firestore.projects.databases.documents.patch", + "parameterOrder": [ + "name" + ], + "parameters": { + "currentDocument.exists": { + "description": "When set to `true`, the target document must exist.\nWhen set to `false`, the target document must not exist.", + "location": "query", + "type": "boolean" + }, + "currentDocument.updateTime": { + "description": "When set, the target document must exist and have been last updated at\nthat time.", + "format": "google-datetime", + "location": "query", + "type": "string" + }, + "mask.fieldPaths": { + "description": "The list of field paths in the mask. See Document.fields for a field\npath syntax reference.", + "location": "query", + "repeated": true, + "type": "string" + }, + "name": { + "description": "The resource name of the document, for example\n`projects/{project_id}/databases/{database_id}/documents/{document_path}`.", + "location": "path", + "pattern": "^projects/[^/]+/databases/[^/]+/documents/[^/]+/.+$", + "required": true, + "type": "string" + }, + "updateMask.fieldPaths": { + "description": "The list of field paths in the mask. See Document.fields for a field\npath syntax reference.", + "location": "query", + "repeated": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "request": { + "$ref": "Document" + }, + "response": { + "$ref": "Document" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/datastore" + ] + }, + "rollback": { + "description": "Rolls back a transaction.", + "flatPath": "v1beta1/projects/{projectsId}/databases/{databasesId}/documents:rollback", + "httpMethod": "POST", + "id": "firestore.projects.databases.documents.rollback", + "parameterOrder": [ + "database" + ], + "parameters": { + "database": { + "description": "The database name. In the format:\n`projects/{project_id}/databases/{database_id}`.", + "location": "path", + "pattern": "^projects/[^/]+/databases/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+database}/documents:rollback", + "request": { + "$ref": "RollbackRequest" + }, + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/datastore" + ] + }, + "runQuery": { + "description": "Runs a query.", + "flatPath": "v1beta1/projects/{projectsId}/databases/{databasesId}/documents/{documentsId}/{documentsId1}:runQuery", + "httpMethod": "POST", + "id": "firestore.projects.databases.documents.runQuery", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "The parent resource name. In the format:\n`projects/{project_id}/databases/{database_id}/documents` or\n`projects/{project_id}/databases/{database_id}/documents/{document_path}`.\nFor example:\n`projects/my-project/databases/my-database/documents` or\n`projects/my-project/databases/my-database/documents/chatrooms/my-chatroom`", + "location": "path", + "pattern": "^projects/[^/]+/databases/[^/]+/documents/[^/]+/.+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+parent}:runQuery", + "request": { + "$ref": "RunQueryRequest" + }, + "response": { + "$ref": "RunQueryResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/datastore" + ] + }, + "write": { + "description": "Streams batches of document updates and deletes, in order.", + "flatPath": "v1beta1/projects/{projectsId}/databases/{databasesId}/documents:write", + "httpMethod": "POST", + "id": "firestore.projects.databases.documents.write", + "parameterOrder": [ + "database" + ], + "parameters": { + "database": { + "description": "The database name. In the format:\n`projects/{project_id}/databases/{database_id}`.\nThis is only required in the first message.", + "location": "path", + "pattern": "^projects/[^/]+/databases/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+database}/documents:write", + "request": { + "$ref": "WriteRequest" + }, + "response": { + "$ref": "WriteResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/datastore" + ] + } + } + }, + "indexes": { + "methods": { + "create": { + "description": "Creates the specified index.\nA newly created index's initial state is `CREATING`. On completion of the\nreturned google.longrunning.Operation, the state will be `READY`.\nIf the index already exists, the call will return an `ALREADY_EXISTS`\nstatus.\n\nDuring creation, the process could result in an error, in which case the\nindex will move to the `ERROR` state. The process can be recovered by\nfixing the data that caused the error, removing the index with\ndelete, then re-creating the index with\ncreate.\n\nIndexes with a single field cannot be created.", + "flatPath": "v1beta1/projects/{projectsId}/databases/{databasesId}/indexes", + "httpMethod": "POST", + "id": "firestore.projects.databases.indexes.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "The name of the database this index will apply to. For example:\n`projects/{project_id}/databases/{database_id}`", + "location": "path", + "pattern": "^projects/[^/]+/databases/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+parent}/indexes", + "request": { + "$ref": "Index" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/datastore" + ] + }, + "delete": { + "description": "Deletes an index.", + "flatPath": "v1beta1/projects/{projectsId}/databases/{databasesId}/indexes/{indexesId}", + "httpMethod": "DELETE", + "id": "firestore.projects.databases.indexes.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The index name. For example:\n`projects/{project_id}/databases/{database_id}/indexes/{index_id}`", + "location": "path", + "pattern": "^projects/[^/]+/databases/[^/]+/indexes/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/datastore" + ] + }, + "get": { + "description": "Gets an index.", + "flatPath": "v1beta1/projects/{projectsId}/databases/{databasesId}/indexes/{indexesId}", + "httpMethod": "GET", + "id": "firestore.projects.databases.indexes.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the index. For example:\n`projects/{project_id}/databases/{database_id}/indexes/{index_id}`", + "location": "path", + "pattern": "^projects/[^/]+/databases/[^/]+/indexes/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "response": { + "$ref": "Index" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/datastore" + ] + }, + "list": { + "description": "Lists the indexes that match the specified filters.", + "flatPath": "v1beta1/projects/{projectsId}/databases/{databasesId}/indexes", + "httpMethod": "GET", + "id": "firestore.projects.databases.indexes.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "filter": { + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "The standard List page size.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "The standard List page token.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "The database name. For example:\n`projects/{project_id}/databases/{database_id}`", + "location": "path", + "pattern": "^projects/[^/]+/databases/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+parent}/indexes", + "response": { + "$ref": "ListIndexesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/datastore" + ] + } + } + } + } + } + } + } + }, + "revision": "20180321", + "rootUrl": "https://firestore.googleapis.com/", + "schemas": { + "ArrayValue": { + "description": "An array value.", + "id": "ArrayValue", + "properties": { + "values": { + "description": "Values in the array.", + "items": { + "$ref": "Value" + }, + "type": "array" + } + }, + "type": "object" + }, + "BatchGetDocumentsRequest": { + "description": "The request for Firestore.BatchGetDocuments.", + "id": "BatchGetDocumentsRequest", + "properties": { + "documents": { + "description": "The names of the documents to retrieve. In the format:\n`projects/{project_id}/databases/{database_id}/documents/{document_path}`.\nThe request will fail if any of the document is not a child resource of the\ngiven `database`. Duplicate names will be elided.", + "items": { + "type": "string" + }, + "type": "array" + }, + "mask": { + "$ref": "DocumentMask", + "description": "The fields to return. If not set, returns all fields.\n\nIf a document has a field that is not present in this mask, that field will\nnot be returned in the response." + }, + "newTransaction": { + "$ref": "TransactionOptions", + "description": "Starts a new transaction and reads the documents.\nDefaults to a read-only transaction.\nThe new transaction ID will be returned as the first response in the\nstream." }, "readTime": { - "description": "The consistent `read_time` for the given `target_ids` (omitted when the\ntarget_ids are not at a consistent snapshot).\n\nThe stream is guaranteed to send a `read_time` with `target_ids` empty\nwhenever the entire stream reaches a new consistent snapshot. ADD,\nCURRENT, and RESET messages are guaranteed to (eventually) result in a\nnew consistent snapshot (while NO_CHANGE and REMOVE messages are not).\n\nFor a given stream, `read_time` is guaranteed to be monotonically\nincreasing.", + "description": "Reads documents as they were at the given time.\nThis may not be older than 60 seconds.", "format": "google-datetime", "type": "string" }, - "targetChangeType": { - "enumDescriptions": [ - "No change has occurred. Used only to send an updated `resume_token`.", - "The targets have been added.", - "The targets have been removed.", - "The targets reflect all changes committed before the targets were added\nto the stream.\n\nThis will be sent after or with a `read_time` that is greater than or\nequal to the time at which the targets were added.\n\nListeners can wait for this change if read-after-write semantics\nare desired.", - "The targets have been reset, and a new initial state for the targets\nwill be returned in subsequent changes.\n\nAfter the initial state is complete, `CURRENT` will be returned even\nif the target was previously indicated to be `CURRENT`." - ], - "enum": [ - "NO_CHANGE", - "ADD", - "REMOVE", - "CURRENT", - "RESET" - ], - "description": "The type of change that occurred.", - "type": "string" - }, - "resumeToken": { - "description": "A token that can be used to resume the stream for the given `target_ids`,\nor all targets if `target_ids` is empty.\n\nNot set on every target change.", + "transaction": { + "description": "Reads documents in a transaction.", "format": "byte", "type": "string" } }, - "id": "TargetChange" + "type": "object" }, - "MapValue": { - "description": "A map value.", - "type": "object", + "BatchGetDocumentsResponse": { + "description": "The streamed response for Firestore.BatchGetDocuments.", + "id": "BatchGetDocumentsResponse", "properties": { - "fields": { - "additionalProperties": { - "$ref": "Value" - }, - "description": "The map's fields.\n\nThe map keys represent field names. Field names matching the regular\nexpression `__.*__` are reserved. Reserved field names are forbidden except\nin certain documented contexts. The map keys, represented as UTF-8, must\nnot exceed 1,500 bytes and cannot be empty.", - "type": "object" - } - }, - "id": "MapValue" - }, - "DocumentDelete": { - "description": "A Document has been deleted.\n\nMay be the result of multiple writes, including updates, the\nlast of which deleted the Document.\n\nMultiple DocumentDelete messages may be returned for the same logical\ndelete, if multiple targets are affected.", - "type": "object", - "properties": { - "removedTargetIds": { - "description": "A set of target IDs for targets that previously matched this entity.", - "type": "array", - "items": { - "format": "int32", - "type": "integer" - } + "found": { + "$ref": "Document", + "description": "A document that was requested." }, - "document": { - "description": "The resource name of the Document that was deleted.", + "missing": { + "description": "A document name that was requested but does not exist. In the format:\n`projects/{project_id}/databases/{database_id}/documents/{document_path}`.", "type": "string" }, "readTime": { - "description": "The read timestamp at which the delete was observed.\n\nGreater or equal to the `commit_time` of the delete.", + "description": "The time at which the document was read.\nThis may be monotically increasing, in this case the previous documents in\nthe result stream are guaranteed not to have changed between their\nread_time and this one.", "format": "google-datetime", "type": "string" + }, + "transaction": { + "description": "The transaction that was started as part of this request.\nWill only be set in the first response, and only if\nBatchGetDocumentsRequest.new_transaction was set in the request.", + "format": "byte", + "type": "string" } }, - "id": "DocumentDelete" + "type": "object" + }, + "BeginTransactionRequest": { + "description": "The request for Firestore.BeginTransaction.", + "id": "BeginTransactionRequest", + "properties": { + "options": { + "$ref": "TransactionOptions", + "description": "The options for the transaction.\nDefaults to a read-write transaction." + } + }, + "type": "object" }, "BeginTransactionResponse": { "description": "The response for Firestore.BeginTransaction.", - "type": "object", + "id": "BeginTransactionResponse", "properties": { "transaction": { "description": "The transaction that was started.", @@ -104,73 +836,26 @@ "type": "string" } }, - "id": "BeginTransactionResponse" + "type": "object" }, - "IndexField": { - "description": "A field of an index.", - "type": "object", + "CollectionSelector": { + "description": "A selection of a collection, such as `messages as m1`.", + "id": "CollectionSelector", "properties": { - "mode": { - "enum": [ - "MODE_UNSPECIFIED", - "ASCENDING", - "DESCENDING" - ], - "description": "The field's mode.", - "type": "string", - "enumDescriptions": [ - "The mode is unspecified.", - "The field's values are indexed so as to support sequencing in\nascending order and also query by \u003c, \u003e, \u003c=, \u003e=, and =.", - "The field's values are indexed so as to support sequencing in\ndescending order and also query by \u003c, \u003e, \u003c=, \u003e=, and =." - ] + "allDescendants": { + "description": "When false, selects only collections that are immediate children of\nthe `parent` specified in the containing `RunQueryRequest`.\nWhen true, selects all descendant collections.", + "type": "boolean" }, - "fieldPath": { - "description": "The path of the field. Must match the field path specification described\nby google.firestore.v1beta1.Document.fields.\nSpecial field path `__name__` may be used by itself or at the end of a\npath. `__type__` may be used only at the end of path.", + "collectionId": { + "description": "The collection ID.\nWhen set, selects only collections with this ID.", "type": "string" } }, - "id": "IndexField" - }, - "RunQueryResponse": { - "description": "The response for Firestore.RunQuery.", - "type": "object", - "properties": { - "transaction": { - "description": "The transaction that was started as part of this request.\nCan only be set in the first response, and only if\nRunQueryRequest.new_transaction was set in the request.\nIf set, no other fields will be set in this response.", - "format": "byte", - "type": "string" - }, - "document": { - "description": "A query result.\nNot set when reporting partial progress.", - "$ref": "Document" - }, - "readTime": { - "description": "The time at which the document was read. This may be monotonically\nincreasing; in this case, the previous documents in the result stream are\nguaranteed not to have changed between their `read_time` and this one.\n\nIf the query returns no results, a response with `read_time` and no\n`document` will be sent, and this represents the time at which the query\nwas run.", - "format": "google-datetime", - "type": "string" - }, - "skippedResults": { - "description": "The number of results that have been skipped due to an offset between\nthe last response and the current response.", - "format": "int32", - "type": "integer" - } - }, - "id": "RunQueryResponse" - }, - "BeginTransactionRequest": { - "properties": { - "options": { - "description": "The options for the transaction.\nDefaults to a read-write transaction.", - "$ref": "TransactionOptions" - } - }, - "id": "BeginTransactionRequest", - "description": "The request for Firestore.BeginTransaction.", "type": "object" }, "CommitRequest": { "description": "The request for Firestore.Commit.", - "type": "object", + "id": "CommitRequest", "properties": { "transaction": { "description": "If set, applies all writes in this transaction, and commits it.", @@ -179,18 +864,494 @@ }, "writes": { "description": "The writes to apply.\n\nAlways executed atomically and in order.", - "type": "array", "items": { "$ref": "Write" - } + }, + "type": "array" } }, - "id": "CommitRequest" + "type": "object" + }, + "CommitResponse": { + "description": "The response for Firestore.Commit.", + "id": "CommitResponse", + "properties": { + "commitTime": { + "description": "The time at which the commit occurred.", + "format": "google-datetime", + "type": "string" + }, + "writeResults": { + "description": "The result of applying the writes.\n\nThis i-th write result corresponds to the i-th write in the\nrequest.", + "items": { + "$ref": "WriteResult" + }, + "type": "array" + } + }, + "type": "object" + }, + "CompositeFilter": { + "description": "A filter that merges multiple other filters using the given operator.", + "id": "CompositeFilter", + "properties": { + "filters": { + "description": "The list of filters to combine.\nMust contain at least one filter.", + "items": { + "$ref": "Filter" + }, + "type": "array" + }, + "op": { + "description": "The operator for combining multiple filters.", + "enum": [ + "OPERATOR_UNSPECIFIED", + "AND" + ], + "enumDescriptions": [ + "Unspecified. This value must not be used.", + "The results are required to satisfy each of the combined filters." + ], + "type": "string" + } + }, + "type": "object" + }, + "Cursor": { + "description": "A position in a query result set.", + "id": "Cursor", + "properties": { + "before": { + "description": "If the position is just before or just after the given values, relative\nto the sort order defined by the query.", + "type": "boolean" + }, + "values": { + "description": "The values that represent a position, in the order they appear in\nthe order by clause of a query.\n\nCan contain fewer values than specified in the order by clause.", + "items": { + "$ref": "Value" + }, + "type": "array" + } + }, + "type": "object" + }, + "Document": { + "description": "A Firestore document.\n\nMust not exceed 1 MiB - 4 bytes.", + "id": "Document", + "properties": { + "createTime": { + "description": "Output only. The time at which the document was created.\n\nThis value increases monotonically when a document is deleted then\nrecreated. It can also be compared to values from other documents and\nthe `read_time` of a query.", + "format": "google-datetime", + "type": "string" + }, + "fields": { + "additionalProperties": { + "$ref": "Value" + }, + "description": "The document's fields.\n\nThe map keys represent field names.\n\nA simple field name contains only characters `a` to `z`, `A` to `Z`,\n`0` to `9`, or `_`, and must not start with `0` to `9`. For example,\n`foo_bar_17`.\n\nField names matching the regular expression `__.*__` are reserved. Reserved\nfield names are forbidden except in certain documented contexts. The map\nkeys, represented as UTF-8, must not exceed 1,500 bytes and cannot be\nempty.\n\nField paths may be used in other contexts to refer to structured fields\ndefined here. For `map_value`, the field path is represented by the simple\nor quoted field names of the containing fields, delimited by `.`. For\nexample, the structured field\n`\"foo\" : { map_value: { \"x\u0026y\" : { string_value: \"hello\" }}}` would be\nrepresented by the field path `foo.x\u0026y`.\n\nWithin a field path, a quoted field name starts and ends with `` ` `` and\nmay contain any character. Some characters, including `` ` ``, must be\nescaped using a `\\`. For example, `` `x\u0026y` `` represents `x\u0026y` and\n`` `bak\\`tik` `` represents `` bak`tik ``.", + "type": "object" + }, + "name": { + "description": "The resource name of the document, for example\n`projects/{project_id}/databases/{database_id}/documents/{document_path}`.", + "type": "string" + }, + "updateTime": { + "description": "Output only. The time at which the document was last changed.\n\nThis value is initially set to the `create_time` then increases\nmonotonically with each change to the document. It can also be\ncompared to values from other documents and the `read_time` of a query.", + "format": "google-datetime", + "type": "string" + } + }, + "type": "object" + }, + "DocumentChange": { + "description": "A Document has changed.\n\nMay be the result of multiple writes, including deletes, that\nultimately resulted in a new value for the Document.\n\nMultiple DocumentChange messages may be returned for the same logical\nchange, if multiple targets are affected.", + "id": "DocumentChange", + "properties": { + "document": { + "$ref": "Document", + "description": "The new state of the Document.\n\nIf `mask` is set, contains only fields that were updated or added." + }, + "removedTargetIds": { + "description": "A set of target IDs for targets that no longer match this document.", + "items": { + "format": "int32", + "type": "integer" + }, + "type": "array" + }, + "targetIds": { + "description": "A set of target IDs of targets that match this document.", + "items": { + "format": "int32", + "type": "integer" + }, + "type": "array" + } + }, + "type": "object" + }, + "DocumentDelete": { + "description": "A Document has been deleted.\n\nMay be the result of multiple writes, including updates, the\nlast of which deleted the Document.\n\nMultiple DocumentDelete messages may be returned for the same logical\ndelete, if multiple targets are affected.", + "id": "DocumentDelete", + "properties": { + "document": { + "description": "The resource name of the Document that was deleted.", + "type": "string" + }, + "readTime": { + "description": "The read timestamp at which the delete was observed.\n\nGreater or equal to the `commit_time` of the delete.", + "format": "google-datetime", + "type": "string" + }, + "removedTargetIds": { + "description": "A set of target IDs for targets that previously matched this entity.", + "items": { + "format": "int32", + "type": "integer" + }, + "type": "array" + } + }, + "type": "object" + }, + "DocumentMask": { + "description": "A set of field paths on a document.\nUsed to restrict a get or update operation on a document to a subset of its\nfields.\nThis is different from standard field masks, as this is always scoped to a\nDocument, and takes in account the dynamic nature of Value.", + "id": "DocumentMask", + "properties": { + "fieldPaths": { + "description": "The list of field paths in the mask. See Document.fields for a field\npath syntax reference.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "DocumentRemove": { + "description": "A Document has been removed from the view of the targets.\n\nSent if the document is no longer relevant to a target and is out of view.\nCan be sent instead of a DocumentDelete or a DocumentChange if the server\ncan not send the new value of the document.\n\nMultiple DocumentRemove messages may be returned for the same logical\nwrite or delete, if multiple targets are affected.", + "id": "DocumentRemove", + "properties": { + "document": { + "description": "The resource name of the Document that has gone out of view.", + "type": "string" + }, + "readTime": { + "description": "The read timestamp at which the remove was observed.\n\nGreater or equal to the `commit_time` of the change/delete/remove.", + "format": "google-datetime", + "type": "string" + }, + "removedTargetIds": { + "description": "A set of target IDs for targets that previously matched this document.", + "items": { + "format": "int32", + "type": "integer" + }, + "type": "array" + } + }, + "type": "object" + }, + "DocumentTransform": { + "description": "A transformation of a document.", + "id": "DocumentTransform", + "properties": { + "document": { + "description": "The name of the document to transform.", + "type": "string" + }, + "fieldTransforms": { + "description": "The list of transformations to apply to the fields of the document, in\norder.\nThis must not be empty.", + "items": { + "$ref": "FieldTransform" + }, + "type": "array" + } + }, + "type": "object" + }, + "DocumentsTarget": { + "description": "A target specified by a set of documents names.", + "id": "DocumentsTarget", + "properties": { + "documents": { + "description": "The names of the documents to retrieve. In the format:\n`projects/{project_id}/databases/{database_id}/documents/{document_path}`.\nThe request will fail if any of the document is not a child resource of\nthe given `database`. Duplicate names will be elided.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "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" + }, + "ExistenceFilter": { + "description": "A digest of all the documents that match a given target.", + "id": "ExistenceFilter", + "properties": { + "count": { + "description": "The total count of documents that match target_id.\n\nIf different from the count of documents in the client that match, the\nclient must manually determine which documents no longer match the target.", + "format": "int32", + "type": "integer" + }, + "targetId": { + "description": "The target ID to which this filter applies.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "FieldFilter": { + "description": "A filter on a specific field.", + "id": "FieldFilter", + "properties": { + "field": { + "$ref": "FieldReference", + "description": "The field to filter by." + }, + "op": { + "description": "The operator to filter by.", + "enum": [ + "OPERATOR_UNSPECIFIED", + "LESS_THAN", + "LESS_THAN_OR_EQUAL", + "GREATER_THAN", + "GREATER_THAN_OR_EQUAL", + "EQUAL" + ], + "enumDescriptions": [ + "Unspecified. This value must not be used.", + "Less than. Requires that the field come first in `order_by`.", + "Less than or equal. Requires that the field come first in `order_by`.", + "Greater than. Requires that the field come first in `order_by`.", + "Greater than or equal. Requires that the field come first in\n`order_by`.", + "Equal." + ], + "type": "string" + }, + "value": { + "$ref": "Value", + "description": "The value to compare to." + } + }, + "type": "object" + }, + "FieldReference": { + "description": "A reference to a field, such as `max(messages.time) as max_time`.", + "id": "FieldReference", + "properties": { + "fieldPath": { + "type": "string" + } + }, + "type": "object" + }, + "FieldTransform": { + "description": "A transformation of a field of the document.", + "id": "FieldTransform", + "properties": { + "fieldPath": { + "description": "The path of the field. See Document.fields for the field path syntax\nreference.", + "type": "string" + }, + "setToServerValue": { + "description": "Sets the field to the given server value.", + "enum": [ + "SERVER_VALUE_UNSPECIFIED", + "REQUEST_TIME" + ], + "enumDescriptions": [ + "Unspecified. This value must not be used.", + "The time at which the server processed the request, with millisecond\nprecision." + ], + "type": "string" + } + }, + "type": "object" + }, + "Filter": { + "description": "A filter.", + "id": "Filter", + "properties": { + "compositeFilter": { + "$ref": "CompositeFilter", + "description": "A composite filter." + }, + "fieldFilter": { + "$ref": "FieldFilter", + "description": "A filter on a document field." + }, + "unaryFilter": { + "$ref": "UnaryFilter", + "description": "A filter that takes exactly one argument." + } + }, + "type": "object" + }, + "Index": { + "description": "An index definition.", + "id": "Index", + "properties": { + "collectionId": { + "description": "The collection ID to which this index applies. Required.", + "type": "string" + }, + "fields": { + "description": "The fields to index.", + "items": { + "$ref": "IndexField" + }, + "type": "array" + }, + "name": { + "description": "The resource name of the index.\nOutput only.", + "type": "string" + }, + "state": { + "description": "The state of the index.\nOutput only.", + "enum": [ + "STATE_UNSPECIFIED", + "CREATING", + "READY", + "ERROR" + ], + "enumDescriptions": [ + "The state is unspecified.", + "The index is being created.\nThere is an active long-running operation for the index.\nThe index is updated when writing a document.\nSome index data may exist.", + "The index is ready to be used.\nThe index is updated when writing a document.\nThe index is fully populated from all stored documents it applies to.", + "The index was being created, but something went wrong.\nThere is no active long-running operation for the index,\nand the most recently finished long-running operation failed.\nThe index is not updated when writing a document.\nSome index data may exist." + ], + "type": "string" + } + }, + "type": "object" + }, + "IndexField": { + "description": "A field of an index.", + "id": "IndexField", + "properties": { + "fieldPath": { + "description": "The path of the field. Must match the field path specification described\nby google.firestore.v1beta1.Document.fields.\nSpecial field path `__name__` may be used by itself or at the end of a\npath. `__type__` may be used only at the end of path.", + "type": "string" + }, + "mode": { + "description": "The field's mode.", + "enum": [ + "MODE_UNSPECIFIED", + "ASCENDING", + "DESCENDING" + ], + "enumDescriptions": [ + "The mode is unspecified.", + "The field's values are indexed so as to support sequencing in\nascending order and also query by \u003c, \u003e, \u003c=, \u003e=, and =.", + "The field's values are indexed so as to support sequencing in\ndescending order and also query by \u003c, \u003e, \u003c=, \u003e=, and =." + ], + "type": "string" + } + }, + "type": "object" + }, + "LatLng": { + "description": "An object representing a latitude/longitude pair. This is expressed as a pair\nof doubles representing degrees latitude and degrees longitude. Unless\nspecified otherwise, this must conform to the\n\u003ca href=\"http://www.unoosa.org/pdf/icg/2012/template/WGS_84.pdf\"\u003eWGS84\nstandard\u003c/a\u003e. Values must be within normalized ranges.", + "id": "LatLng", + "properties": { + "latitude": { + "description": "The latitude in degrees. It must be in the range [-90.0, +90.0].", + "format": "double", + "type": "number" + }, + "longitude": { + "description": "The longitude in degrees. It must be in the range [-180.0, +180.0].", + "format": "double", + "type": "number" + } + }, + "type": "object" + }, + "ListCollectionIdsRequest": { + "description": "The request for Firestore.ListCollectionIds.", + "id": "ListCollectionIdsRequest", + "properties": { + "pageSize": { + "description": "The maximum number of results to return.", + "format": "int32", + "type": "integer" + }, + "pageToken": { + "description": "A page token. Must be a value from\nListCollectionIdsResponse.", + "type": "string" + } + }, + "type": "object" + }, + "ListCollectionIdsResponse": { + "description": "The response from Firestore.ListCollectionIds.", + "id": "ListCollectionIdsResponse", + "properties": { + "collectionIds": { + "description": "The collection ids.", + "items": { + "type": "string" + }, + "type": "array" + }, + "nextPageToken": { + "description": "A page token that may be used to continue the list.", + "type": "string" + } + }, + "type": "object" + }, + "ListDocumentsResponse": { + "description": "The response for Firestore.ListDocuments.", + "id": "ListDocumentsResponse", + "properties": { + "documents": { + "description": "The Documents found.", + "items": { + "$ref": "Document" + }, + "type": "array" + }, + "nextPageToken": { + "description": "The next page token.", + "type": "string" + } + }, + "type": "object" + }, + "ListIndexesResponse": { + "description": "The response for FirestoreAdmin.ListIndexes.", + "id": "ListIndexesResponse", + "properties": { + "indexes": { + "description": "The indexes.", + "items": { + "$ref": "Index" + }, + "type": "array" + }, + "nextPageToken": { + "description": "The standard List next-page token.", + "type": "string" + } + }, + "type": "object" }, "ListenRequest": { "description": "A request for Firestore.Listen", - "type": "object", + "id": "ListenRequest", "properties": { + "addTarget": { + "$ref": "Target", + "description": "A target to add to this stream." + }, "labels": { "additionalProperties": { "type": "string" @@ -202,122 +1363,305 @@ "description": "The ID of a target to remove from this stream.", "format": "int32", "type": "integer" - }, - "addTarget": { - "$ref": "Target", - "description": "A target to add to this stream." } }, - "id": "ListenRequest" + "type": "object" }, - "LatLng": { - "description": "An object representing a latitude/longitude pair. This is expressed as a pair\nof doubles representing degrees latitude and degrees longitude. Unless\nspecified otherwise, this must conform to the\n\u003ca href=\"http://www.unoosa.org/pdf/icg/2012/template/WGS_84.pdf\"\u003eWGS84\nstandard\u003c/a\u003e. Values must be within normalized ranges.", - "type": "object", + "ListenResponse": { + "description": "The response for Firestore.Listen.", + "id": "ListenResponse", "properties": { - "longitude": { - "description": "The longitude in degrees. It must be in the range [-180.0, +180.0].", - "format": "double", - "type": "number" + "documentChange": { + "$ref": "DocumentChange", + "description": "A Document has changed." }, - "latitude": { - "description": "The latitude in degrees. It must be in the range [-90.0, +90.0].", - "format": "double", - "type": "number" + "documentDelete": { + "$ref": "DocumentDelete", + "description": "A Document has been deleted." + }, + "documentRemove": { + "$ref": "DocumentRemove", + "description": "A Document has been removed from a target (because it is no longer\nrelevant to that target)." + }, + "filter": { + "$ref": "ExistenceFilter", + "description": "A filter to apply to the set of documents previously returned for the\ngiven target.\n\nReturned when documents may have been removed from the given target, but\nthe exact documents are unknown." + }, + "targetChange": { + "$ref": "TargetChange", + "description": "Targets have changed." } }, - "id": "LatLng" + "type": "object" }, - "CollectionSelector": { - "description": "A selection of a collection, such as `messages as m1`.", - "type": "object", + "MapValue": { + "description": "A map value.", + "id": "MapValue", "properties": { - "allDescendants": { - "description": "When false, selects only collections that are immediate children of\nthe `parent` specified in the containing `RunQueryRequest`.\nWhen true, selects all descendant collections.", + "fields": { + "additionalProperties": { + "$ref": "Value" + }, + "description": "The map's fields.\n\nThe map keys represent field names. Field names matching the regular\nexpression `__.*__` are reserved. Reserved field names are forbidden except\nin certain documented contexts. The map keys, represented as UTF-8, must\nnot exceed 1,500 bytes and cannot be empty.", + "type": "object" + } + }, + "type": "object" + }, + "Operation": { + "description": "This resource represents a long-running operation that is the result of a\nnetwork API call.", + "id": "Operation", + "properties": { + "done": { + "description": "If the value is `false`, it means the operation is still in progress.\nIf `true`, the operation is completed, and either `error` or `response` is\navailable.", "type": "boolean" }, - "collectionId": { - "description": "The collection ID.\nWhen set, selects only collections with this ID.", - "type": "string" - } - }, - "id": "CollectionSelector" - }, - "ArrayValue": { - "description": "An array value.", - "type": "object", - "properties": { - "values": { - "description": "Values in the array.", - "type": "array", - "items": { - "$ref": "Value" - } - } - }, - "id": "ArrayValue" - }, - "Index": { - "properties": { - "collectionId": { - "description": "The collection ID to which this index applies. Required.", - "type": "string" + "error": { + "$ref": "Status", + "description": "The error result of the operation in case of failure or cancellation." }, - "fields": { - "description": "The fields to index.", - "type": "array", - "items": { - "$ref": "IndexField" - } - }, - "state": { - "enumDescriptions": [ - "The state is unspecified.", - "The index is being created.\nThere is an active long-running operation for the index.\nThe index is updated when writing a document.\nSome index data may exist.", - "The index is ready to be used.\nThe index is updated when writing a document.\nThe index is fully populated from all stored documents it applies to.", - "The index was being created, but something went wrong.\nThere is no active long-running operation for the index,\nand the most recently finished long-running operation failed.\nThe index is not updated when writing a document.\nSome index data may exist." - ], - "enum": [ - "STATE_UNSPECIFIED", - "CREATING", - "READY", - "ERROR" - ], - "description": "The state of the index.\nOutput only.", - "type": "string" + "metadata": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "description": "Service-specific metadata associated with the operation. It typically\ncontains progress information and common metadata such as create time.\nSome services might not provide such metadata. Any method that returns a\nlong-running operation should document the metadata type, if any.", + "type": "object" }, "name": { - "description": "The resource name of the index.\nOutput only.", + "description": "The server-assigned name, which is only unique within the same service that\noriginally returns it. If you use the default HTTP mapping, the\n`name` should have the format of `operations/some/unique/name`.", + "type": "string" + }, + "response": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "description": "The normal response of the operation in case of success. If the original\nmethod returns no data on success, such as `Delete`, the response is\n`google.protobuf.Empty`. If the original method is standard\n`Get`/`Create`/`Update`, the response should be the resource. For other\nmethods, the response should have the type `XxxResponse`, where `Xxx`\nis the original method name. For example, if the original method name\nis `TakeSnapshot()`, the inferred response type is\n`TakeSnapshotResponse`.", + "type": "object" + } + }, + "type": "object" + }, + "Order": { + "description": "An order on a field.", + "id": "Order", + "properties": { + "direction": { + "description": "The direction to order by. Defaults to `ASCENDING`.", + "enum": [ + "DIRECTION_UNSPECIFIED", + "ASCENDING", + "DESCENDING" + ], + "enumDescriptions": [ + "Unspecified.", + "Ascending.", + "Descending." + ], + "type": "string" + }, + "field": { + "$ref": "FieldReference", + "description": "The field to order by." + } + }, + "type": "object" + }, + "Precondition": { + "description": "A precondition on a document, used for conditional operations.", + "id": "Precondition", + "properties": { + "exists": { + "description": "When set to `true`, the target document must exist.\nWhen set to `false`, the target document must not exist.", + "type": "boolean" + }, + "updateTime": { + "description": "When set, the target document must exist and have been last updated at\nthat time.", + "format": "google-datetime", + "type": "string" + } + }, + "type": "object" + }, + "Projection": { + "description": "The projection of document's fields to return.", + "id": "Projection", + "properties": { + "fields": { + "description": "The fields to return.\n\nIf empty, all fields are returned. To only return the name\nof the document, use `['__name__']`.", + "items": { + "$ref": "FieldReference" + }, + "type": "array" + } + }, + "type": "object" + }, + "QueryTarget": { + "description": "A target specified by a query.", + "id": "QueryTarget", + "properties": { + "parent": { + "description": "The parent resource name. In the format:\n`projects/{project_id}/databases/{database_id}/documents` or\n`projects/{project_id}/databases/{database_id}/documents/{document_path}`.\nFor example:\n`projects/my-project/databases/my-database/documents` or\n`projects/my-project/databases/my-database/documents/chatrooms/my-chatroom`", + "type": "string" + }, + "structuredQuery": { + "$ref": "StructuredQuery", + "description": "A structured query." + } + }, + "type": "object" + }, + "ReadOnly": { + "description": "Options for a transaction that can only be used to read documents.", + "id": "ReadOnly", + "properties": { + "readTime": { + "description": "Reads documents at the given time.\nThis may not be older than 60 seconds.", + "format": "google-datetime", + "type": "string" + } + }, + "type": "object" + }, + "ReadWrite": { + "description": "Options for a transaction that can be used to read and write documents.", + "id": "ReadWrite", + "properties": { + "retryTransaction": { + "description": "An optional transaction to retry.", + "format": "byte", + "type": "string" + } + }, + "type": "object" + }, + "RollbackRequest": { + "description": "The request for Firestore.Rollback.", + "id": "RollbackRequest", + "properties": { + "transaction": { + "description": "The transaction to roll back.", + "format": "byte", + "type": "string" + } + }, + "type": "object" + }, + "RunQueryRequest": { + "description": "The request for Firestore.RunQuery.", + "id": "RunQueryRequest", + "properties": { + "newTransaction": { + "$ref": "TransactionOptions", + "description": "Starts a new transaction and reads the documents.\nDefaults to a read-only transaction.\nThe new transaction ID will be returned as the first response in the\nstream." + }, + "readTime": { + "description": "Reads documents as they were at the given time.\nThis may not be older than 60 seconds.", + "format": "google-datetime", + "type": "string" + }, + "structuredQuery": { + "$ref": "StructuredQuery", + "description": "A structured query." + }, + "transaction": { + "description": "Reads documents in a transaction.", + "format": "byte", + "type": "string" + } + }, + "type": "object" + }, + "RunQueryResponse": { + "description": "The response for Firestore.RunQuery.", + "id": "RunQueryResponse", + "properties": { + "document": { + "$ref": "Document", + "description": "A query result.\nNot set when reporting partial progress." + }, + "readTime": { + "description": "The time at which the document was read. This may be monotonically\nincreasing; in this case, the previous documents in the result stream are\nguaranteed not to have changed between their `read_time` and this one.\n\nIf the query returns no results, a response with `read_time` and no\n`document` will be sent, and this represents the time at which the query\nwas run.", + "format": "google-datetime", + "type": "string" + }, + "skippedResults": { + "description": "The number of results that have been skipped due to an offset between\nthe last response and the current response.", + "format": "int32", + "type": "integer" + }, + "transaction": { + "description": "The transaction that was started as part of this request.\nCan only be set in the first response, and only if\nRunQueryRequest.new_transaction was set in the request.\nIf set, no other fields will be set in this response.", + "format": "byte", + "type": "string" + } + }, + "type": "object" + }, + "Status": { + "description": "The `Status` type defines a logical error model that is suitable for different\nprogramming environments, including REST APIs and RPC APIs. It is used by\n[gRPC](https://github.com/grpc). The error model is designed to be:\n\n- Simple to use and understand for most users\n- Flexible enough to meet unexpected needs\n\n# Overview\n\nThe `Status` message contains three pieces of data: error code, error message,\nand error details. The error code should be an enum value of\ngoogle.rpc.Code, but it may accept additional error codes if needed. The\nerror message should be a developer-facing English message that helps\ndevelopers *understand* and *resolve* the error. If a localized user-facing\nerror message is needed, put the localized message in the error details or\nlocalize it in the client. The optional error details may contain arbitrary\ninformation about the error. There is a predefined set of error detail types\nin the package `google.rpc` that can be used for common error conditions.\n\n# Language mapping\n\nThe `Status` message is the logical representation of the error model, but it\nis not necessarily the actual wire format. When the `Status` message is\nexposed in different client libraries and different wire protocols, it can be\nmapped differently. For example, it will likely be mapped to some exceptions\nin Java, but more likely mapped to some error codes in C.\n\n# Other uses\n\nThe error model and the `Status` message can be used in a variety of\nenvironments, either with or without APIs, to provide a\nconsistent developer experience across different environments.\n\nExample uses of this error model include:\n\n- Partial errors. If a service needs to return partial errors to the client,\n it may embed the `Status` in the normal response to indicate the partial\n errors.\n\n- Workflow errors. A typical workflow has multiple steps. Each step may\n have a `Status` message for error reporting.\n\n- Batch operations. If a client uses batch request and batch response, the\n `Status` message should be used directly inside batch response, one for\n each error sub-response.\n\n- Asynchronous operations. If an API call embeds asynchronous operation\n results in its response, the status of those operations should be\n represented directly using the `Status` message.\n\n- Logging. If some API errors are stored in logs, the message `Status` could\n be used directly after any stripping needed for security/privacy reasons.", + "id": "Status", + "properties": { + "code": { + "description": "The status code, which should be an enum value of google.rpc.Code.", + "format": "int32", + "type": "integer" + }, + "details": { + "description": "A list of messages that carry the error details. There is a common set of\nmessage types for APIs to use.", + "items": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "A developer-facing error message, which should be in English. Any\nuser-facing error message should be localized and sent in the\ngoogle.rpc.Status.details field, or localized by the client.", "type": "string" } }, - "id": "Index", - "description": "An index definition.", "type": "object" }, "StructuredQuery": { "description": "A Firestore query.", - "type": "object", + "id": "StructuredQuery", "properties": { + "endAt": { + "$ref": "Cursor", + "description": "A end point for the query results." + }, + "from": { + "description": "The collections to query.", + "items": { + "$ref": "CollectionSelector" + }, + "type": "array" + }, "limit": { "description": "The maximum number of results to return.\n\nApplies after all other constraints.\nMust be \u003e= 0 if specified.", "format": "int32", "type": "integer" }, - "from": { - "description": "The collections to query.", - "type": "array", - "items": { - "$ref": "CollectionSelector" - } - }, "offset": { "description": "The number of results to skip.\n\nApplies before limit, but after all other constraints. Must be \u003e= 0 if\nspecified.", "format": "int32", "type": "integer" }, - "endAt": { - "description": "A end point for the query results.", - "$ref": "Cursor" + "orderBy": { + "description": "The order to apply to the query results.\n\nFirestore guarantees a stable ordering through the following rules:\n\n * Any field required to appear in `order_by`, that is not already\n specified in `order_by`, is appended to the order in field name order\n by default.\n * If an order on `__name__` is not specified, it is appended by default.\n\nFields are appended with the same sort direction as the last order\nspecified, or 'ASCENDING' if no order was specified. For example:\n\n * `SELECT * FROM Foo ORDER BY A` becomes\n `SELECT * FROM Foo ORDER BY A, __name__`\n * `SELECT * FROM Foo ORDER BY A DESC` becomes\n `SELECT * FROM Foo ORDER BY A DESC, __name__ DESC`\n * `SELECT * FROM Foo WHERE A \u003e 1` becomes\n `SELECT * FROM Foo WHERE A \u003e 1 ORDER BY A, __name__`", + "items": { + "$ref": "Order" + }, + "type": "array" + }, + "select": { + "$ref": "Projection", + "description": "The projection to return." }, "startAt": { "$ref": "Cursor", @@ -326,24 +1670,109 @@ "where": { "$ref": "Filter", "description": "The filter to apply." - }, - "orderBy": { - "description": "The order to apply to the query results.\n\nFirestore guarantees a stable ordering through the following rules:\n\n * Any field required to appear in `order_by`, that is not already\n specified in `order_by`, is appended to the order in field name order\n by default.\n * If an order on `__name__` is not specified, it is appended by default.\n\nFields are appended with the same sort direction as the last order\nspecified, or 'ASCENDING' if no order was specified. For example:\n\n * `SELECT * FROM Foo ORDER BY A` becomes\n `SELECT * FROM Foo ORDER BY A, __name__`\n * `SELECT * FROM Foo ORDER BY A DESC` becomes\n `SELECT * FROM Foo ORDER BY A DESC, __name__ DESC`\n * `SELECT * FROM Foo WHERE A \u003e 1` becomes\n `SELECT * FROM Foo WHERE A \u003e 1 ORDER BY A, __name__`", - "type": "array", - "items": { - "$ref": "Order" - } - }, - "select": { - "description": "The projection to return.", - "$ref": "Projection" } }, - "id": "StructuredQuery" + "type": "object" + }, + "Target": { + "description": "A specification of a set of documents to listen to.", + "id": "Target", + "properties": { + "documents": { + "$ref": "DocumentsTarget", + "description": "A target specified by a set of document names." + }, + "once": { + "description": "If the target should be removed once it is current and consistent.", + "type": "boolean" + }, + "query": { + "$ref": "QueryTarget", + "description": "A target specified by a query." + }, + "readTime": { + "description": "Start listening after a specific `read_time`.\n\nThe client must know the state of matching documents at this time.", + "format": "google-datetime", + "type": "string" + }, + "resumeToken": { + "description": "A resume token from a prior TargetChange for an identical target.\n\nUsing a resume token with a different target is unsupported and may fail.", + "format": "byte", + "type": "string" + }, + "targetId": { + "description": "A client provided target ID.\n\nIf not set, the server will assign an ID for the target.\n\nUsed for resuming a target without changing IDs. The IDs can either be\nclient-assigned or be server-assigned in a previous stream. All targets\nwith client provided IDs must be added before adding a target that needs\na server-assigned id.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "TargetChange": { + "description": "Targets being watched have changed.", + "id": "TargetChange", + "properties": { + "cause": { + "$ref": "Status", + "description": "The error that resulted in this change, if applicable." + }, + "readTime": { + "description": "The consistent `read_time` for the given `target_ids` (omitted when the\ntarget_ids are not at a consistent snapshot).\n\nThe stream is guaranteed to send a `read_time` with `target_ids` empty\nwhenever the entire stream reaches a new consistent snapshot. ADD,\nCURRENT, and RESET messages are guaranteed to (eventually) result in a\nnew consistent snapshot (while NO_CHANGE and REMOVE messages are not).\n\nFor a given stream, `read_time` is guaranteed to be monotonically\nincreasing.", + "format": "google-datetime", + "type": "string" + }, + "resumeToken": { + "description": "A token that can be used to resume the stream for the given `target_ids`,\nor all targets if `target_ids` is empty.\n\nNot set on every target change.", + "format": "byte", + "type": "string" + }, + "targetChangeType": { + "description": "The type of change that occurred.", + "enum": [ + "NO_CHANGE", + "ADD", + "REMOVE", + "CURRENT", + "RESET" + ], + "enumDescriptions": [ + "No change has occurred. Used only to send an updated `resume_token`.", + "The targets have been added.", + "The targets have been removed.", + "The targets reflect all changes committed before the targets were added\nto the stream.\n\nThis will be sent after or with a `read_time` that is greater than or\nequal to the time at which the targets were added.\n\nListeners can wait for this change if read-after-write semantics\nare desired.", + "The targets have been reset, and a new initial state for the targets\nwill be returned in subsequent changes.\n\nAfter the initial state is complete, `CURRENT` will be returned even\nif the target was previously indicated to be `CURRENT`." + ], + "type": "string" + }, + "targetIds": { + "description": "The target IDs of targets that have changed.\n\nIf empty, the change applies to all targets.\n\nFor `target_change_type=ADD`, the order of the target IDs matches the order\nof the requests to add the targets. This allows clients to unambiguously\nassociate server-assigned target IDs with added targets.\n\nFor other states, the order of the target IDs is not defined.", + "items": { + "format": "int32", + "type": "integer" + }, + "type": "array" + } + }, + "type": "object" + }, + "TransactionOptions": { + "description": "Options for creating a new transaction.", + "id": "TransactionOptions", + "properties": { + "readOnly": { + "$ref": "ReadOnly", + "description": "The transaction can only be used for read operations." + }, + "readWrite": { + "$ref": "ReadWrite", + "description": "The transaction can be used for both read and write operations." + } + }, + "type": "object" }, "UnaryFilter": { "description": "A filter with a single operand.", - "type": "object", + "id": "UnaryFilter", "properties": { "field": { "$ref": "FieldReference", @@ -351,66 +1780,112 @@ }, "op": { "description": "The unary operator to apply.", - "type": "string", + "enum": [ + "OPERATOR_UNSPECIFIED", + "IS_NAN", + "IS_NULL" + ], "enumDescriptions": [ "Unspecified. This value must not be used.", "Test if a field is equal to NaN.", "Test if an exprestion evaluates to Null." ], - "enum": [ - "OPERATOR_UNSPECIFIED", - "IS_NAN", - "IS_NULL" - ] - } - }, - "id": "UnaryFilter" - }, - "Filter": { - "description": "A filter.", - "type": "object", - "properties": { - "compositeFilter": { - "$ref": "CompositeFilter", - "description": "A composite filter." - }, - "fieldFilter": { - "$ref": "FieldFilter", - "description": "A filter on a document field." - }, - "unaryFilter": { - "description": "A filter that takes exactly one argument.", - "$ref": "UnaryFilter" - } - }, - "id": "Filter" - }, - "BatchGetDocumentsResponse": { - "properties": { - "found": { - "$ref": "Document", - "description": "A document that was requested." - }, - "missing": { - "description": "A document name that was requested but does not exist. In the format:\n`projects/{project_id}/databases/{database_id}/documents/{document_path}`.", "type": "string" + } + }, + "type": "object" + }, + "Value": { + "description": "A message that can hold any of the supported value types.", + "id": "Value", + "properties": { + "arrayValue": { + "$ref": "ArrayValue", + "description": "An array value.\n\nCannot contain another array value." }, - "transaction": { - "description": "The transaction that was started as part of this request.\nWill only be set in the first response, and only if\nBatchGetDocumentsRequest.new_transaction was set in the request.", + "booleanValue": { + "description": "A boolean value.", + "type": "boolean" + }, + "bytesValue": { + "description": "A bytes value.\n\nMust not exceed 1 MiB - 89 bytes.\nOnly the first 1,500 bytes are considered by queries.", "format": "byte", "type": "string" }, - "readTime": { - "description": "The time at which the document was read.\nThis may be monotically increasing, in this case the previous documents in\nthe result stream are guaranteed not to have changed between their\nread_time and this one.", + "doubleValue": { + "description": "A double value.", + "format": "double", + "type": "number" + }, + "geoPointValue": { + "$ref": "LatLng", + "description": "A geo point value representing a point on the surface of Earth." + }, + "integerValue": { + "description": "An integer value.", + "format": "int64", + "type": "string" + }, + "mapValue": { + "$ref": "MapValue", + "description": "A map value." + }, + "nullValue": { + "description": "A null value.", + "enum": [ + "NULL_VALUE" + ], + "enumDescriptions": [ + "Null value." + ], + "type": "string" + }, + "referenceValue": { + "description": "A reference to a document. For example:\n`projects/{project_id}/databases/{database_id}/documents/{document_path}`.", + "type": "string" + }, + "stringValue": { + "description": "A string value.\n\nThe string, represented as UTF-8, must not exceed 1 MiB - 89 bytes.\nOnly the first 1,500 bytes of the UTF-8 representation are considered by\nqueries.", + "type": "string" + }, + "timestampValue": { + "description": "A timestamp value.\n\nPrecise only to microseconds. When stored, any additional precision is\nrounded down.", "format": "google-datetime", "type": "string" } }, - "id": "BatchGetDocumentsResponse", - "description": "The streamed response for Firestore.BatchGetDocuments.", + "type": "object" + }, + "Write": { + "description": "A write on a document.", + "id": "Write", + "properties": { + "currentDocument": { + "$ref": "Precondition", + "description": "An optional precondition on the document.\n\nThe write will fail if this is set and not met by the target document." + }, + "delete": { + "description": "A document name to delete. In the format:\n`projects/{project_id}/databases/{database_id}/documents/{document_path}`.", + "type": "string" + }, + "transform": { + "$ref": "DocumentTransform", + "description": "Applies a tranformation to a document.\nAt most one `transform` per document is allowed in a given request.\nAn `update` cannot follow a `transform` on the same document in a given\nrequest." + }, + "update": { + "$ref": "Document", + "description": "A document to write." + }, + "updateMask": { + "$ref": "DocumentMask", + "description": "The fields to update in this write.\n\nThis field can be set only when the operation is `update`.\nIf the mask is not set for an `update` and the document exists, any\nexisting data will be overwritten.\nIf the mask is set and the document on the server has fields not covered by\nthe mask, they are left unchanged.\nFields referenced in the mask, but not present in the input document, are\ndeleted from the document on the server.\nThe field paths in this mask must not contain a reserved field name." + } + }, "type": "object" }, "WriteRequest": { + "description": "The request for Firestore.Write.\n\nThe first request creates a stream, or resumes an existing one from a token.\n\nWhen creating a new stream, the server replies with a response containing\nonly an ID and a token, to use in the next request.\n\nWhen resuming a stream, the server first streams any responses later than the\ngiven token, then a response containing only an up-to-date token, to use in\nthe next request.", + "id": "WriteRequest", "properties": { "labels": { "additionalProperties": { @@ -430,717 +1905,27 @@ }, "writes": { "description": "The writes to apply.\n\nAlways executed atomically and in order.\nThis must be empty on the first request.\nThis may be empty on the last request.\nThis must not be empty on all other requests.", - "type": "array", "items": { "$ref": "Write" - } - } - }, - "id": "WriteRequest", - "description": "The request for Firestore.Write.\n\nThe first request creates a stream, or resumes an existing one from a token.\n\nWhen creating a new stream, the server replies with a response containing\nonly an ID and a token, to use in the next request.\n\nWhen resuming a stream, the server first streams any responses later than the\ngiven token, then a response containing only an up-to-date token, to use in\nthe next request.", - "type": "object" - }, - "Target": { - "description": "A specification of a set of documents to listen to.", - "type": "object", - "properties": { - "query": { - "$ref": "QueryTarget", - "description": "A target specified by a query." - }, - "resumeToken": { - "description": "A resume token from a prior TargetChange for an identical target.\n\nUsing a resume token with a different target is unsupported and may fail.", - "format": "byte", - "type": "string" - }, - "once": { - "description": "If the target should be removed once it is current and consistent.", - "type": "boolean" - }, - "readTime": { - "description": "Start listening after a specific `read_time`.\n\nThe client must know the state of matching documents at this time.", - "format": "google-datetime", - "type": "string" - }, - "targetId": { - "description": "A client provided target ID.\n\nIf not set, the server will assign an ID for the target.\n\nUsed for resuming a target without changing IDs. The IDs can either be\nclient-assigned or be server-assigned in a previous stream. All targets\nwith client provided IDs must be added before adding a target that needs\na server-assigned id.", - "format": "int32", - "type": "integer" - }, - "documents": { - "description": "A target specified by a set of document names.", - "$ref": "DocumentsTarget" - } - }, - "id": "Target" - }, - "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 `{}`.", - "type": "object", - "properties": {}, - "id": "Empty" - }, - "Precondition": { - "properties": { - "updateTime": { - "description": "When set, the target document must exist and have been last updated at\nthat time.", - "format": "google-datetime", - "type": "string" - }, - "exists": { - "description": "When set to `true`, the target document must exist.\nWhen set to `false`, the target document must not exist.", - "type": "boolean" - } - }, - "id": "Precondition", - "description": "A precondition on a document, used for conditional operations.", - "type": "object" - }, - "RunQueryRequest": { - "description": "The request for Firestore.RunQuery.", - "type": "object", - "properties": { - "newTransaction": { - "description": "Starts a new transaction and reads the documents.\nDefaults to a read-only transaction.\nThe new transaction ID will be returned as the first response in the\nstream.", - "$ref": "TransactionOptions" - }, - "transaction": { - "description": "Reads documents in a transaction.", - "format": "byte", - "type": "string" - }, - "structuredQuery": { - "$ref": "StructuredQuery", - "description": "A structured query." - }, - "readTime": { - "description": "Reads documents as they were at the given time.\nThis may not be older than 60 seconds.", - "format": "google-datetime", - "type": "string" - } - }, - "id": "RunQueryRequest" - }, - "ListIndexesResponse": { - "properties": { - "nextPageToken": { - "description": "The standard List next-page token.", - "type": "string" - }, - "indexes": { - "description": "The indexes.", - "type": "array", - "items": { - "$ref": "Index" - } - } - }, - "id": "ListIndexesResponse", - "description": "The response for FirestoreAdmin.ListIndexes.", - "type": "object" - }, - "TransactionOptions": { - "description": "Options for creating a new transaction.", - "type": "object", - "properties": { - "readOnly": { - "description": "The transaction can only be used for read operations.", - "$ref": "ReadOnly" - }, - "readWrite": { - "description": "The transaction can be used for both read and write operations.", - "$ref": "ReadWrite" - } - }, - "id": "TransactionOptions" - }, - "FieldReference": { - "description": "A reference to a field, such as `max(messages.time) as max_time`.", - "type": "object", - "properties": { - "fieldPath": { - "type": "string" - } - }, - "id": "FieldReference" - }, - "ListenResponse": { - "description": "The response for Firestore.Listen.", - "type": "object", - "properties": { - "documentDelete": { - "description": "A Document has been deleted.", - "$ref": "DocumentDelete" - }, - "filter": { - "description": "A filter to apply to the set of documents previously returned for the\ngiven target.\n\nReturned when documents may have been removed from the given target, but\nthe exact documents are unknown.", - "$ref": "ExistenceFilter" - }, - "documentChange": { - "description": "A Document has changed.", - "$ref": "DocumentChange" - }, - "targetChange": { - "$ref": "TargetChange", - "description": "Targets have changed." - }, - "documentRemove": { - "$ref": "DocumentRemove", - "description": "A Document has been removed from a target (because it is no longer\nrelevant to that target)." - } - }, - "id": "ListenResponse" - }, - "ListCollectionIdsRequest": { - "properties": { - "pageSize": { - "description": "The maximum number of results to return.", - "format": "int32", - "type": "integer" - }, - "pageToken": { - "description": "A page token. Must be a value from\nListCollectionIdsResponse.", - "type": "string" - } - }, - "id": "ListCollectionIdsRequest", - "description": "The request for Firestore.ListCollectionIds.", - "type": "object" - }, - "ExistenceFilter": { - "description": "A digest of all the documents that match a given target.", - "type": "object", - "properties": { - "count": { - "description": "The total count of documents that match target_id.\n\nIf different from the count of documents in the client that match, the\nclient must manually determine which documents no longer match the target.", - "format": "int32", - "type": "integer" - }, - "targetId": { - "description": "The target ID to which this filter applies.", - "format": "int32", - "type": "integer" - } - }, - "id": "ExistenceFilter" - }, - "ReadOnly": { - "properties": { - "readTime": { - "description": "Reads documents at the given time.\nThis may not be older than 60 seconds.", - "format": "google-datetime", - "type": "string" - } - }, - "id": "ReadOnly", - "description": "Options for a transaction that can only be used to read documents.", - "type": "object" - }, - "WriteResult": { - "properties": { - "updateTime": { - "description": "The last update time of the document after applying the write. Not set\nafter a `delete`.\n\nIf the write did not actually change the document, this will be the\nprevious update_time.", - "format": "google-datetime", - "type": "string" - }, - "transformResults": { - "description": "The results of applying each DocumentTransform.FieldTransform, in the\nsame order.", - "type": "array", - "items": { - "$ref": "Value" - } - } - }, - "id": "WriteResult", - "description": "The result of applying a write.", - "type": "object" - }, - "Value": { - "properties": { - "mapValue": { - "$ref": "MapValue", - "description": "A map value." - }, - "geoPointValue": { - "$ref": "LatLng", - "description": "A geo point value representing a point on the surface of Earth." - }, - "bytesValue": { - "description": "A bytes value.\n\nMust not exceed 1 MiB - 89 bytes.\nOnly the first 1,500 bytes are considered by queries.", - "format": "byte", - "type": "string" - }, - "integerValue": { - "description": "An integer value.", - "format": "int64", - "type": "string" - }, - "stringValue": { - "description": "A string value.\n\nThe string, represented as UTF-8, must not exceed 1 MiB - 89 bytes.\nOnly the first 1,500 bytes of the UTF-8 representation are considered by\nqueries.", - "type": "string" - }, - "arrayValue": { - "description": "An array value.\n\nCannot contain another array value.", - "$ref": "ArrayValue" - }, - "referenceValue": { - "description": "A reference to a document. For example:\n`projects/{project_id}/databases/{database_id}/documents/{document_path}`.", - "type": "string" - }, - "doubleValue": { - "description": "A double value.", - "format": "double", - "type": "number" - }, - "timestampValue": { - "description": "A timestamp value.\n\nPrecise only to microseconds. When stored, any additional precision is\nrounded down.", - "format": "google-datetime", - "type": "string" - }, - "booleanValue": { - "description": "A boolean value.", - "type": "boolean" - }, - "nullValue": { - "enumDescriptions": [ - "Null value." - ], - "enum": [ - "NULL_VALUE" - ], - "description": "A null value.", - "type": "string" - } - }, - "id": "Value", - "description": "A message that can hold any of the supported value types.", - "type": "object" - }, - "Write": { - "description": "A write on a document.", - "type": "object", - "properties": { - "transform": { - "$ref": "DocumentTransform", - "description": "Applies a tranformation to a document.\nAt most one `transform` per document is allowed in a given request.\nAn `update` cannot follow a `transform` on the same document in a given\nrequest." - }, - "delete": { - "description": "A document name to delete. In the format:\n`projects/{project_id}/databases/{database_id}/documents/{document_path}`.", - "type": "string" - }, - "updateMask": { - "$ref": "DocumentMask", - "description": "The fields to update in this write.\n\nThis field can be set only when the operation is `update`.\nNone of the field paths in the mask may contain a reserved name.\nIf the document exists on the server and has fields not referenced in the\nmask, they are left unchanged.\nFields referenced in the mask, but not present in the input document, are\ndeleted from the document on the server.\nThe field paths in this mask must not contain a reserved field name." - }, - "currentDocument": { - "description": "An optional precondition on the document.\n\nThe write will fail if this is set and not met by the target document.", - "$ref": "Precondition" - }, - "update": { - "$ref": "Document", - "description": "A document to write." - } - }, - "id": "Write" - }, - "Cursor": { - "properties": { - "before": { - "description": "If the position is just before or just after the given values, relative\nto the sort order defined by the query.", - "type": "boolean" - }, - "values": { - "description": "The values that represent a position, in the order they appear in\nthe order by clause of a query.\n\nCan contain fewer values than specified in the order by clause.", - "type": "array", - "items": { - "$ref": "Value" - } - } - }, - "id": "Cursor", - "description": "A position in a query result set.", - "type": "object" - }, - "ReadWrite": { - "description": "Options for a transaction that can be used to read and write documents.", - "type": "object", - "properties": { - "retryTransaction": { - "description": "An optional transaction to retry.", - "format": "byte", - "type": "string" - } - }, - "id": "ReadWrite" - }, - "BatchGetDocumentsRequest": { - "description": "The request for Firestore.BatchGetDocuments.", - "type": "object", - "properties": { - "newTransaction": { - "$ref": "TransactionOptions", - "description": "Starts a new transaction and reads the documents.\nDefaults to a read-only transaction.\nThe new transaction ID will be returned as the first response in the\nstream." - }, - "mask": { - "$ref": "DocumentMask", - "description": "The fields to return. If not set, returns all fields.\n\nIf a document has a field that is not present in this mask, that field will\nnot be returned in the response." - }, - "transaction": { - "description": "Reads documents in a transaction.", - "format": "byte", - "type": "string" - }, - "documents": { - "description": "The names of the documents to retrieve. In the format:\n`projects/{project_id}/databases/{database_id}/documents/{document_path}`.\nThe request will fail if any of the document is not a child resource of the\ngiven `database`. Duplicate names will be elided.", - "type": "array", - "items": { - "type": "string" - } - }, - "readTime": { - "description": "Reads documents as they were at the given time.\nThis may not be older than 60 seconds.", - "format": "google-datetime", - "type": "string" - } - }, - "id": "BatchGetDocumentsRequest" - }, - "QueryTarget": { - "properties": { - "parent": { - "description": "The parent resource name. In the format:\n`projects/{project_id}/databases/{database_id}/documents` or\n`projects/{project_id}/databases/{database_id}/documents/{document_path}`.\nFor example:\n`projects/my-project/databases/my-database/documents` or\n`projects/my-project/databases/my-database/documents/chatrooms/my-chatroom`", - "type": "string" - }, - "structuredQuery": { - "description": "A structured query.", - "$ref": "StructuredQuery" - } - }, - "id": "QueryTarget", - "description": "A target specified by a query.", - "type": "object" - }, - "Operation": { - "description": "This resource represents a long-running operation that is the result of a\nnetwork API call.", - "type": "object", - "properties": { - "response": { - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" }, - "description": "The normal response of the operation in case of success. If the original\nmethod returns no data on success, such as `Delete`, the response is\n`google.protobuf.Empty`. If the original method is standard\n`Get`/`Create`/`Update`, the response should be the resource. For other\nmethods, the response should have the type `XxxResponse`, where `Xxx`\nis the original method name. For example, if the original method name\nis `TakeSnapshot()`, the inferred response type is\n`TakeSnapshotResponse`.", - "type": "object" - }, - "name": { - "description": "The server-assigned name, which is only unique within the same service that\noriginally returns it. If you use the default HTTP mapping, the\n`name` should have the format of `operations/some/unique/name`.", - "type": "string" - }, - "error": { - "description": "The error result of the operation in case of failure or cancellation.", - "$ref": "Status" - }, - "metadata": { - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - }, - "description": "Service-specific metadata associated with the operation. It typically\ncontains progress information and common metadata such as create time.\nSome services might not provide such metadata. Any method that returns a\nlong-running operation should document the metadata type, if any.", - "type": "object" - }, - "done": { - "description": "If the value is `false`, it means the operation is still in progress.\nIf `true`, the operation is completed, and either `error` or `response` is\navailable.", - "type": "boolean" + "type": "array" } }, - "id": "Operation" - }, - "DocumentChange": { - "description": "A Document has changed.\n\nMay be the result of multiple writes, including deletes, that\nultimately resulted in a new value for the Document.\n\nMultiple DocumentChange messages may be returned for the same logical\nchange, if multiple targets are affected.", - "type": "object", - "properties": { - "removedTargetIds": { - "description": "A set of target IDs for targets that no longer match this document.", - "type": "array", - "items": { - "format": "int32", - "type": "integer" - } - }, - "document": { - "description": "The new state of the Document.\n\nIf `mask` is set, contains only fields that were updated or added.", - "$ref": "Document" - }, - "targetIds": { - "description": "A set of target IDs of targets that match this document.", - "type": "array", - "items": { - "format": "int32", - "type": "integer" - } - } - }, - "id": "DocumentChange" - }, - "Status": { - "properties": { - "details": { - "description": "A list of messages that carry the error details. There is a common set of\nmessage types for APIs to use.", - "type": "array", - "items": { - "type": "object", - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - } - } - }, - "code": { - "description": "The status code, which should be an enum value of google.rpc.Code.", - "format": "int32", - "type": "integer" - }, - "message": { - "description": "A developer-facing error message, which should be in English. Any\nuser-facing error message should be localized and sent in the\ngoogle.rpc.Status.details field, or localized by the client.", - "type": "string" - } - }, - "id": "Status", - "description": "The `Status` type defines a logical error model that is suitable for different\nprogramming environments, including REST APIs and RPC APIs. It is used by\n[gRPC](https://github.com/grpc). The error model is designed to be:\n\n- Simple to use and understand for most users\n- Flexible enough to meet unexpected needs\n\n# Overview\n\nThe `Status` message contains three pieces of data: error code, error message,\nand error details. The error code should be an enum value of\ngoogle.rpc.Code, but it may accept additional error codes if needed. The\nerror message should be a developer-facing English message that helps\ndevelopers *understand* and *resolve* the error. If a localized user-facing\nerror message is needed, put the localized message in the error details or\nlocalize it in the client. The optional error details may contain arbitrary\ninformation about the error. There is a predefined set of error detail types\nin the package `google.rpc` that can be used for common error conditions.\n\n# Language mapping\n\nThe `Status` message is the logical representation of the error model, but it\nis not necessarily the actual wire format. When the `Status` message is\nexposed in different client libraries and different wire protocols, it can be\nmapped differently. For example, it will likely be mapped to some exceptions\nin Java, but more likely mapped to some error codes in C.\n\n# Other uses\n\nThe error model and the `Status` message can be used in a variety of\nenvironments, either with or without APIs, to provide a\nconsistent developer experience across different environments.\n\nExample uses of this error model include:\n\n- Partial errors. If a service needs to return partial errors to the client,\n it may embed the `Status` in the normal response to indicate the partial\n errors.\n\n- Workflow errors. A typical workflow has multiple steps. Each step may\n have a `Status` message for error reporting.\n\n- Batch operations. If a client uses batch request and batch response, the\n `Status` message should be used directly inside batch response, one for\n each error sub-response.\n\n- Asynchronous operations. If an API call embeds asynchronous operation\n results in its response, the status of those operations should be\n represented directly using the `Status` message.\n\n- Logging. If some API errors are stored in logs, the message `Status` could\n be used directly after any stripping needed for security/privacy reasons.", "type": "object" }, - "Document": { - "description": "A Firestore document.\n\nMust not exceed 1 MiB - 4 bytes.", - "type": "object", - "properties": { - "createTime": { - "description": "Output only. The time at which the document was created.\n\nThis value increases monotonically when a document is deleted then\nrecreated. It can also be compared to values from other documents and\nthe `read_time` of a query.", - "format": "google-datetime", - "type": "string" - }, - "fields": { - "additionalProperties": { - "$ref": "Value" - }, - "description": "The document's fields.\n\nThe map keys represent field names.\n\nA simple field name contains only characters `a` to `z`, `A` to `Z`,\n`0` to `9`, or `_`, and must not start with `0` to `9`. For example,\n`foo_bar_17`.\n\nField names matching the regular expression `__.*__` are reserved. Reserved\nfield names are forbidden except in certain documented contexts. The map\nkeys, represented as UTF-8, must not exceed 1,500 bytes and cannot be\nempty.\n\nField paths may be used in other contexts to refer to structured fields\ndefined here. For `map_value`, the field path is represented by the simple\nor quoted field names of the containing fields, delimited by `.`. For\nexample, the structured field\n`\"foo\" : { map_value: { \"x&y\" : { string_value: \"hello\" }}}` would be\nrepresented by the field path `foo.x&y`.\n\nWithin a field path, a quoted field name starts and ends with `` ` `` and\nmay contain any character. Some characters, including `` ` ``, must be\nescaped using a `\\`. For example, `` `x&y` `` represents `x&y` and\n`` `bak\\`tik` `` represents `` bak`tik ``.", - "type": "object" - }, - "updateTime": { - "description": "Output only. The time at which the document was last changed.\n\nThis value is initally set to the `create_time` then increases\nmonotonically with each change to the document. It can also be\ncompared to values from other documents and the `read_time` of a query.", - "format": "google-datetime", - "type": "string" - }, - "name": { - "description": "The resource name of the document, for example\n`projects/{project_id}/databases/{database_id}/documents/{document_path}`.", - "type": "string" - } - }, - "id": "Document" - }, - "Projection": { - "description": "The projection of document's fields to return.", - "type": "object", - "properties": { - "fields": { - "description": "The fields to return.\n\nIf empty, all fields are returned. To only return the name\nof the document, use `['__name__']`.", - "type": "array", - "items": { - "$ref": "FieldReference" - } - } - }, - "id": "Projection" - }, - "DocumentRemove": { - "description": "A Document has been removed from the view of the targets.\n\nSent if the document is no longer relevant to a target and is out of view.\nCan be sent instead of a DocumentDelete or a DocumentChange if the server\ncan not send the new value of the document.\n\nMultiple DocumentRemove messages may be returned for the same logical\nwrite or delete, if multiple targets are affected.", - "type": "object", - "properties": { - "document": { - "description": "The resource name of the Document that has gone out of view.", - "type": "string" - }, - "readTime": { - "description": "The read timestamp at which the remove was observed.\n\nGreater or equal to the `commit_time` of the change/delete/remove.", - "format": "google-datetime", - "type": "string" - }, - "removedTargetIds": { - "description": "A set of target IDs for targets that previously matched this document.", - "type": "array", - "items": { - "format": "int32", - "type": "integer" - } - } - }, - "id": "DocumentRemove" - }, - "ListDocumentsResponse": { - "description": "The response for Firestore.ListDocuments.", - "type": "object", - "properties": { - "documents": { - "description": "The Documents found.", - "type": "array", - "items": { - "$ref": "Document" - } - }, - "nextPageToken": { - "description": "The next page token.", - "type": "string" - } - }, - "id": "ListDocumentsResponse" - }, - "RollbackRequest": { - "description": "The request for Firestore.Rollback.", - "type": "object", - "properties": { - "transaction": { - "description": "The transaction to roll back.", - "format": "byte", - "type": "string" - } - }, - "id": "RollbackRequest" - }, - "CompositeFilter": { - "description": "A filter that merges multiple other filters using the given operator.", - "type": "object", - "properties": { - "filters": { - "description": "The list of filters to combine.\nMust contain at least one filter.", - "type": "array", - "items": { - "$ref": "Filter" - } - }, - "op": { - "enumDescriptions": [ - "Unspecified. This value must not be used.", - "The results are required to satisfy each of the combined filters." - ], - "enum": [ - "OPERATOR_UNSPECIFIED", - "AND" - ], - "description": "The operator for combining multiple filters.", - "type": "string" - } - }, - "id": "CompositeFilter" - }, - "DocumentsTarget": { - "description": "A target specified by a set of documents names.", - "type": "object", - "properties": { - "documents": { - "description": "The names of the documents to retrieve. In the format:\n`projects/{project_id}/databases/{database_id}/documents/{document_path}`.\nThe request will fail if any of the document is not a child resource of\nthe given `database`. Duplicate names will be elided.", - "type": "array", - "items": { - "type": "string" - } - } - }, - "id": "DocumentsTarget" - }, - "DocumentMask": { - "properties": { - "fieldPaths": { - "description": "The list of field paths in the mask. See Document.fields for a field\npath syntax reference.", - "type": "array", - "items": { - "type": "string" - } - } - }, - "id": "DocumentMask", - "description": "A set of field paths on a document.\nUsed to restrict a get or update operation on a document to a subset of its\nfields.\nThis is different from standard field masks, as this is always scoped to a\nDocument, and takes in account the dynamic nature of Value.", - "type": "object" - }, - "DocumentTransform": { - "description": "A transformation of a document.", - "type": "object", - "properties": { - "fieldTransforms": { - "description": "The list of transformations to apply to the fields of the document, in\norder.\nThis must not be empty.", - "type": "array", - "items": { - "$ref": "FieldTransform" - } - }, - "document": { - "description": "The name of the document to transform.", - "type": "string" - } - }, - "id": "DocumentTransform" - }, - "FieldTransform": { - "description": "A transformation of a field of the document.", - "type": "object", - "properties": { - "fieldPath": { - "description": "The path of the field. See Document.fields for the field path syntax\nreference.", - "type": "string" - }, - "setToServerValue": { - "enum": [ - "SERVER_VALUE_UNSPECIFIED", - "REQUEST_TIME" - ], - "description": "Sets the field to the given server value.", - "type": "string", - "enumDescriptions": [ - "Unspecified. This value must not be used.", - "The time at which the server processed the request, with millisecond\nprecision." - ] - } - }, - "id": "FieldTransform" - }, - "ListCollectionIdsResponse": { - "properties": { - "collectionIds": { - "description": "The collection ids.", - "type": "array", - "items": { - "type": "string" - } - }, - "nextPageToken": { - "description": "A page token that may be used to continue the list.", - "type": "string" - } - }, - "id": "ListCollectionIdsResponse", - "description": "The response from Firestore.ListCollectionIds.", - "type": "object" - }, - "CommitResponse": { + "WriteResponse": { + "description": "The response for Firestore.Write.", + "id": "WriteResponse", "properties": { "commitTime": { "description": "The time at which the commit occurred.", "format": "google-datetime", "type": "string" }, - "writeResults": { - "description": "The result of applying the writes.\n\nThis i-th write result corresponds to the i-th write in the\nrequest.", - "type": "array", - "items": { - "$ref": "WriteResult" - } - } - }, - "id": "CommitResponse", - "description": "The response for Firestore.Commit.", - "type": "object" - }, - "WriteResponse": { - "description": "The response for Firestore.Write.", - "type": "object", - "properties": { + "streamId": { + "description": "The ID of the stream.\nOnly set on the first message, when a new stream was created.", + "type": "string" + }, "streamToken": { "description": "A token that represents the position of this response in the stream.\nThis can be used by a client to resume the stream at this point.\n\nThis field is always set.", "format": "byte", @@ -1148,821 +1933,36 @@ }, "writeResults": { "description": "The result of applying the writes.\n\nThis i-th write result corresponds to the i-th write in the\nrequest.", - "type": "array", "items": { "$ref": "WriteResult" - } + }, + "type": "array" + } + }, + "type": "object" + }, + "WriteResult": { + "description": "The result of applying a write.", + "id": "WriteResult", + "properties": { + "transformResults": { + "description": "The results of applying each DocumentTransform.FieldTransform, in the\nsame order.", + "items": { + "$ref": "Value" + }, + "type": "array" }, - "streamId": { - "description": "The ID of the stream.\nOnly set on the first message, when a new stream was created.", - "type": "string" - }, - "commitTime": { - "description": "The time at which the commit occurred.", + "updateTime": { + "description": "The last update time of the document after applying the write. Not set\nafter a `delete`.\n\nIf the write did not actually change the document, this will be the\nprevious update_time.", "format": "google-datetime", "type": "string" } }, - "id": "WriteResponse" - }, - "Order": { - "description": "An order on a field.", - "type": "object", - "properties": { - "field": { - "description": "The field to order by.", - "$ref": "FieldReference" - }, - "direction": { - "enum": [ - "DIRECTION_UNSPECIFIED", - "ASCENDING", - "DESCENDING" - ], - "description": "The direction to order by. Defaults to `ASCENDING`.", - "type": "string", - "enumDescriptions": [ - "Unspecified.", - "Ascending.", - "Descending." - ] - } - }, - "id": "Order" - }, - "FieldFilter": { - "description": "A filter on a specific field.", - "type": "object", - "properties": { - "value": { - "$ref": "Value", - "description": "The value to compare to." - }, - "op": { - "description": "The operator to filter by.", - "type": "string", - "enumDescriptions": [ - "Unspecified. This value must not be used.", - "Less than. Requires that the field come first in `order_by`.", - "Less than or equal. Requires that the field come first in `order_by`.", - "Greater than. Requires that the field come first in `order_by`.", - "Greater than or equal. Requires that the field come first in\n`order_by`.", - "Equal." - ], - "enum": [ - "OPERATOR_UNSPECIFIED", - "LESS_THAN", - "LESS_THAN_OR_EQUAL", - "GREATER_THAN", - "GREATER_THAN_OR_EQUAL", - "EQUAL" - ] - }, - "field": { - "$ref": "FieldReference", - "description": "The field to filter by." - } - }, - "id": "FieldFilter" + "type": "object" } }, - "icons": { - "x16": "http://www.google.com/images/icons/product/search-16.gif", - "x32": "http://www.google.com/images/icons/product/search-32.gif" - }, - "protocol": "rest", - "canonicalName": "Firestore", - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/datastore": { - "description": "View and manage your Google Cloud Datastore data" - }, - "https://www.googleapis.com/auth/cloud-platform": { - "description": "View and manage your data across Google Cloud Platform services" - } - } - } - }, - "rootUrl": "https://firestore.googleapis.com/", - "ownerDomain": "google.com", - "name": "firestore", - "batchPath": "batch", - "fullyEncodeReservedExpansion": true, + "servicePath": "", "title": "Google Cloud Firestore API", - "ownerName": "Google", - "resources": { - "projects": { - "resources": { - "databases": { - "resources": { - "documents": { - "methods": { - "write": { - "description": "Streams batches of document updates and deletes, in order.", - "request": { - "$ref": "WriteRequest" - }, - "response": { - "$ref": "WriteResponse" - }, - "parameterOrder": [ - "database" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/datastore" - ], - "parameters": { - "database": { - "location": "path", - "description": "The database name. In the format:\n`projects/{project_id}/databases/{database_id}`.\nThis is only required in the first message.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/databases/[^/]+$" - } - }, - "flatPath": "v1beta1/projects/{projectsId}/databases/{databasesId}/documents:write", - "path": "v1beta1/{+database}/documents:write", - "id": "firestore.projects.databases.documents.write" - }, - "batchGet": { - "response": { - "$ref": "BatchGetDocumentsResponse" - }, - "parameterOrder": [ - "database" - ], - "httpMethod": "POST", - "parameters": { - "database": { - "description": "The database name. In the format:\n`projects/{project_id}/databases/{database_id}`.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/databases/[^/]+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/datastore" - ], - "flatPath": "v1beta1/projects/{projectsId}/databases/{databasesId}/documents:batchGet", - "path": "v1beta1/{+database}/documents:batchGet", - "id": "firestore.projects.databases.documents.batchGet", - "request": { - "$ref": "BatchGetDocumentsRequest" - }, - "description": "Gets multiple documents.\n\nDocuments returned by this method are not guaranteed to be returned in the\nsame order that they were requested." - }, - "beginTransaction": { - "response": { - "$ref": "BeginTransactionResponse" - }, - "parameterOrder": [ - "database" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/datastore" - ], - "parameters": { - "database": { - "pattern": "^projects/[^/]+/databases/[^/]+$", - "location": "path", - "description": "The database name. In the format:\n`projects/{project_id}/databases/{database_id}`.", - "required": true, - "type": "string" - } - }, - "flatPath": "v1beta1/projects/{projectsId}/databases/{databasesId}/documents:beginTransaction", - "path": "v1beta1/{+database}/documents:beginTransaction", - "id": "firestore.projects.databases.documents.beginTransaction", - "description": "Starts a new transaction.", - "request": { - "$ref": "BeginTransactionRequest" - } - }, - "list": { - "flatPath": "v1beta1/projects/{projectsId}/databases/{databasesId}/documents/{documentsId}/{documentsId1}/{collectionId}", - "path": "v1beta1/{+parent}/{collectionId}", - "id": "firestore.projects.databases.documents.list", - "description": "Lists documents.", - "response": { - "$ref": "ListDocumentsResponse" - }, - "parameterOrder": [ - "parent", - "collectionId" - ], - "httpMethod": "GET", - "parameters": { - "showMissing": { - "location": "query", - "description": "If the list should show missing documents. A missing document is a\ndocument that does not exist but has sub-documents. These documents will\nbe returned with a key but will not have fields, Document.create_time,\nor Document.update_time set.\n\nRequests with `show_missing` may not specify `where` or\n`order_by`.", - "type": "boolean" - }, - "pageToken": { - "description": "The `next_page_token` value returned from a previous List request, if any.", - "type": "string", - "location": "query" - }, - "mask.fieldPaths": { - "location": "query", - "description": "The list of field paths in the mask. See Document.fields for a field\npath syntax reference.", - "type": "string", - "repeated": true - }, - "pageSize": { - "location": "query", - "description": "The maximum number of documents to return.", - "format": "int32", - "type": "integer" - }, - "collectionId": { - "location": "path", - "description": "The collection ID, relative to `parent`, to list. For example: `chatrooms`\nor `messages`.", - "required": true, - "type": "string" - }, - "transaction": { - "location": "query", - "description": "Reads documents in a transaction.", - "format": "byte", - "type": "string" - }, - "parent": { - "description": "The parent resource name. In the format:\n`projects/{project_id}/databases/{database_id}/documents` or\n`projects/{project_id}/databases/{database_id}/documents/{document_path}`.\nFor example:\n`projects/my-project/databases/my-database/documents` or\n`projects/my-project/databases/my-database/documents/chatrooms/my-chatroom`", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/databases/[^/]+/documents/[^/]+/.+$", - "location": "path" - }, - "readTime": { - "location": "query", - "description": "Reads documents as they were at the given time.\nThis may not be older than 60 seconds.", - "format": "google-datetime", - "type": "string" - }, - "orderBy": { - "location": "query", - "description": "The order to sort results by. For example: `priority desc, name`.", - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/datastore" - ] - }, - "runQuery": { - "response": { - "$ref": "RunQueryResponse" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/datastore" - ], - "parameters": { - "parent": { - "pattern": "^projects/[^/]+/databases/[^/]+/documents/[^/]+/.+$", - "location": "path", - "description": "The parent resource name. In the format:\n`projects/{project_id}/databases/{database_id}/documents` or\n`projects/{project_id}/databases/{database_id}/documents/{document_path}`.\nFor example:\n`projects/my-project/databases/my-database/documents` or\n`projects/my-project/databases/my-database/documents/chatrooms/my-chatroom`", - "required": true, - "type": "string" - } - }, - "flatPath": "v1beta1/projects/{projectsId}/databases/{databasesId}/documents/{documentsId}/{documentsId1}:runQuery", - "path": "v1beta1/{+parent}:runQuery", - "id": "firestore.projects.databases.documents.runQuery", - "description": "Runs a query.", - "request": { - "$ref": "RunQueryRequest" - } - }, - "createDocument": { - "path": "v1beta1/{+parent}/{collectionId}", - "id": "firestore.projects.databases.documents.createDocument", - "request": { - "$ref": "Document" - }, - "description": "Creates a new document.", - "response": { - "$ref": "Document" - }, - "parameterOrder": [ - "parent", - "collectionId" - ], - "httpMethod": "POST", - "parameters": { - "mask.fieldPaths": { - "location": "query", - "description": "The list of field paths in the mask. See Document.fields for a field\npath syntax reference.", - "type": "string", - "repeated": true - }, - "collectionId": { - "location": "path", - "description": "The collection ID, relative to `parent`, to list. For example: `chatrooms`.", - "required": true, - "type": "string" - }, - "parent": { - "pattern": "^projects/[^/]+/databases/[^/]+/documents/.+$", - "location": "path", - "description": "The parent resource. For example:\n`projects/{project_id}/databases/{database_id}/documents` or\n`projects/{project_id}/databases/{database_id}/documents/chatrooms/{chatroom_id}`", - "required": true, - "type": "string" - }, - "documentId": { - "description": "The client-assigned document ID to use for this document.\n\nOptional. If not specified, an ID will be assigned by the service.", - "type": "string", - "location": "query" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/datastore" - ], - "flatPath": "v1beta1/projects/{projectsId}/databases/{databasesId}/documents/{documentsId}/{collectionId}" - }, - "get": { - "description": "Gets a single document.", - "response": { - "$ref": "Document" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "GET", - "parameters": { - "name": { - "location": "path", - "description": "The resource name of the Document to get. In the format:\n`projects/{project_id}/databases/{database_id}/documents/{document_path}`.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/databases/[^/]+/documents/[^/]+/.+$" - }, - "mask.fieldPaths": { - "description": "The list of field paths in the mask. See Document.fields for a field\npath syntax reference.", - "type": "string", - "repeated": true, - "location": "query" - }, - "readTime": { - "location": "query", - "description": "Reads the version of the document at the given time.\nThis may not be older than 60 seconds.", - "format": "google-datetime", - "type": "string" - }, - "transaction": { - "description": "Reads the document in a transaction.", - "format": "byte", - "type": "string", - "location": "query" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/datastore" - ], - "flatPath": "v1beta1/projects/{projectsId}/databases/{databasesId}/documents/{documentsId}/{documentsId1}", - "path": "v1beta1/{+name}", - "id": "firestore.projects.databases.documents.get" - }, - "patch": { - "request": { - "$ref": "Document" - }, - "description": "Updates or inserts a document.", - "response": { - "$ref": "Document" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "PATCH", - "parameters": { - "currentDocument.exists": { - "location": "query", - "description": "When set to `true`, the target document must exist.\nWhen set to `false`, the target document must not exist.", - "type": "boolean" - }, - "name": { - "pattern": "^projects/[^/]+/databases/[^/]+/documents/[^/]+/.+$", - "location": "path", - "description": "The resource name of the document, for example\n`projects/{project_id}/databases/{database_id}/documents/{document_path}`.", - "required": true, - "type": "string" - }, - "updateMask.fieldPaths": { - "description": "The list of field paths in the mask. See Document.fields for a field\npath syntax reference.", - "type": "string", - "repeated": true, - "location": "query" - }, - "mask.fieldPaths": { - "description": "The list of field paths in the mask. See Document.fields for a field\npath syntax reference.", - "type": "string", - "repeated": true, - "location": "query" - }, - "currentDocument.updateTime": { - "description": "When set, the target document must exist and have been last updated at\nthat time.", - "format": "google-datetime", - "type": "string", - "location": "query" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/datastore" - ], - "flatPath": "v1beta1/projects/{projectsId}/databases/{databasesId}/documents/{documentsId}/{documentsId1}", - "path": "v1beta1/{+name}", - "id": "firestore.projects.databases.documents.patch" - }, - "listen": { - "request": { - "$ref": "ListenRequest" - }, - "description": "Listens to changes.", - "response": { - "$ref": "ListenResponse" - }, - "parameterOrder": [ - "database" - ], - "httpMethod": "POST", - "parameters": { - "database": { - "description": "The database name. In the format:\n`projects/{project_id}/databases/{database_id}`.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/databases/[^/]+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/datastore" - ], - "flatPath": "v1beta1/projects/{projectsId}/databases/{databasesId}/documents:listen", - "path": "v1beta1/{+database}/documents:listen", - "id": "firestore.projects.databases.documents.listen" - }, - "listCollectionIds": { - "httpMethod": "POST", - "parameterOrder": [ - "parent" - ], - "response": { - "$ref": "ListCollectionIdsResponse" - }, - "parameters": { - "parent": { - "location": "path", - "description": "The parent document. In the format:\n`projects/{project_id}/databases/{database_id}/documents/{document_path}`.\nFor example:\n`projects/my-project/databases/my-database/documents/chatrooms/my-chatroom`", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/databases/[^/]+/documents/[^/]+/.+$" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/datastore" - ], - "flatPath": "v1beta1/projects/{projectsId}/databases/{databasesId}/documents/{documentsId}/{documentsId1}:listCollectionIds", - "id": "firestore.projects.databases.documents.listCollectionIds", - "path": "v1beta1/{+parent}:listCollectionIds", - "request": { - "$ref": "ListCollectionIdsRequest" - }, - "description": "Lists all the collection IDs underneath a document." - }, - "delete": { - "description": "Deletes a document.", - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "DELETE", - "parameters": { - "currentDocument.updateTime": { - "location": "query", - "description": "When set, the target document must exist and have been last updated at\nthat time.", - "format": "google-datetime", - "type": "string" - }, - "currentDocument.exists": { - "description": "When set to `true`, the target document must exist.\nWhen set to `false`, the target document must not exist.", - "type": "boolean", - "location": "query" - }, - "name": { - "pattern": "^projects/[^/]+/databases/[^/]+/documents/[^/]+/.+$", - "location": "path", - "description": "The resource name of the Document to delete. In the format:\n`projects/{project_id}/databases/{database_id}/documents/{document_path}`.", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/datastore" - ], - "flatPath": "v1beta1/projects/{projectsId}/databases/{databasesId}/documents/{documentsId}/{documentsId1}", - "path": "v1beta1/{+name}", - "id": "firestore.projects.databases.documents.delete" - }, - "commit": { - "request": { - "$ref": "CommitRequest" - }, - "description": "Commits a transaction, while optionally updating documents.", - "response": { - "$ref": "CommitResponse" - }, - "parameterOrder": [ - "database" - ], - "httpMethod": "POST", - "parameters": { - "database": { - "description": "The database name. In the format:\n`projects/{project_id}/databases/{database_id}`.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/databases/[^/]+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/datastore" - ], - "flatPath": "v1beta1/projects/{projectsId}/databases/{databasesId}/documents:commit", - "path": "v1beta1/{+database}/documents:commit", - "id": "firestore.projects.databases.documents.commit" - }, - "rollback": { - "description": "Rolls back a transaction.", - "request": { - "$ref": "RollbackRequest" - }, - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "database" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/datastore" - ], - "parameters": { - "database": { - "description": "The database name. In the format:\n`projects/{project_id}/databases/{database_id}`.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/databases/[^/]+$", - "location": "path" - } - }, - "flatPath": "v1beta1/projects/{projectsId}/databases/{databasesId}/documents:rollback", - "path": "v1beta1/{+database}/documents:rollback", - "id": "firestore.projects.databases.documents.rollback" - } - } - }, - "indexes": { - "methods": { - "create": { - "path": "v1beta1/{+parent}/indexes", - "id": "firestore.projects.databases.indexes.create", - "request": { - "$ref": "Index" - }, - "description": "Creates the specified index.\nA newly created index's initial state is `CREATING`. On completion of the\nreturned google.longrunning.Operation, the state will be `READY`.\nIf the index already exists, the call will return an `ALREADY_EXISTS`\nstatus.\n\nDuring creation, the process could result in an error, in which case the\nindex will move to the `ERROR` state. The process can be recovered by\nfixing the data that caused the error, removing the index with\ndelete, then re-creating the index with\ncreate.\n\nIndexes with a single field cannot be created.", - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "POST", - "parameters": { - "parent": { - "location": "path", - "description": "The name of the database this index will apply to. For example:\n`projects/{project_id}/databases/{database_id}`", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/databases/[^/]+$" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/datastore" - ], - "flatPath": "v1beta1/projects/{projectsId}/databases/{databasesId}/indexes" - }, - "delete": { - "path": "v1beta1/{+name}", - "id": "firestore.projects.databases.indexes.delete", - "description": "Deletes an index.", - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "DELETE", - "parameters": { - "name": { - "description": "The index name. For example:\n`projects/{project_id}/databases/{database_id}/indexes/{index_id}`", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/databases/[^/]+/indexes/[^/]+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/datastore" - ], - "flatPath": "v1beta1/projects/{projectsId}/databases/{databasesId}/indexes/{indexesId}" - }, - "list": { - "httpMethod": "GET", - "parameterOrder": [ - "parent" - ], - "response": { - "$ref": "ListIndexesResponse" - }, - "parameters": { - "pageToken": { - "description": "The standard List page token.", - "type": "string", - "location": "query" - }, - "pageSize": { - "location": "query", - "description": "The standard List page size.", - "format": "int32", - "type": "integer" - }, - "parent": { - "location": "path", - "description": "The database name. For example:\n`projects/{project_id}/databases/{database_id}`", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/databases/[^/]+$" - }, - "filter": { - "type": "string", - "location": "query" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/datastore" - ], - "flatPath": "v1beta1/projects/{projectsId}/databases/{databasesId}/indexes", - "id": "firestore.projects.databases.indexes.list", - "path": "v1beta1/{+parent}/indexes", - "description": "Lists the indexes that match the specified filters." - }, - "get": { - "description": "Gets an index.", - "httpMethod": "GET", - "response": { - "$ref": "Index" - }, - "parameterOrder": [ - "name" - ], - "parameters": { - "name": { - "pattern": "^projects/[^/]+/databases/[^/]+/indexes/[^/]+$", - "location": "path", - "description": "The name of the index. For example:\n`projects/{project_id}/databases/{database_id}/indexes/{index_id}`", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/datastore" - ], - "flatPath": "v1beta1/projects/{projectsId}/databases/{databasesId}/indexes/{indexesId}", - "id": "firestore.projects.databases.indexes.get", - "path": "v1beta1/{+name}" - } - } - } - } - } - } - } - }, - "parameters": { - "upload_protocol": { - "location": "query", - "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", - "type": "string" - }, - "prettyPrint": { - "description": "Returns response with indentations and line breaks.", - "type": "boolean", - "default": "true", - "location": "query" - }, - "uploadType": { - "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", - "type": "string", - "location": "query" - }, - "fields": { - "location": "query", - "description": "Selector specifying which fields to include in a partial response.", - "type": "string" - }, - "$.xgafv": { - "description": "V1 error format.", - "type": "string", - "enumDescriptions": [ - "v1 error format", - "v2 error format" - ], - "location": "query", - "enum": [ - "1", - "2" - ] - }, - "callback": { - "description": "JSONP", - "type": "string", - "location": "query" - }, - "alt": { - "enum": [ - "json", - "media", - "proto" - ], - "type": "string", - "enumDescriptions": [ - "Responses with Content-Type of application/json", - "Media download with context-dependent Content-Type", - "Responses with Content-Type of application/x-protobuf" - ], - "location": "query", - "description": "Data format for response.", - "default": "json" - }, - "access_token": { - "description": "OAuth access token.", - "type": "string", - "location": "query" - }, - "key": { - "location": "query", - "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.", - "type": "string" - }, - "quotaUser": { - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", - "type": "string", - "location": "query" - }, - "pp": { - "location": "query", - "description": "Pretty-print response.", - "type": "boolean", - "default": "true" - }, - "oauth_token": { - "description": "OAuth 2.0 token for the current user.", - "type": "string", - "location": "query" - }, - "bearer_token": { - "description": "OAuth bearer token.", - "type": "string", - "location": "query" - } - }, "version": "v1beta1", - "baseUrl": "https://firestore.googleapis.com/" -} + "version_module": true +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/firestore/v1beta1/firestore-gen.go b/vendor/google.golang.org/api/firestore/v1beta1/firestore-gen.go index cf7c2fcc0..096501f17 100644 --- a/vendor/google.golang.org/api/firestore/v1beta1/firestore-gen.go +++ b/vendor/google.golang.org/api/firestore/v1beta1/firestore-gen.go @@ -569,7 +569,7 @@ type Document struct { // UpdateTime: Output only. The time at which the document was last // changed. // - // This value is initally set to the `create_time` then + // This value is initially set to the `create_time` then // increases // monotonically with each change to the document. It can also // be @@ -2425,10 +2425,12 @@ type Write struct { // UpdateMask: The fields to update in this write. // // This field can be set only when the operation is `update`. - // None of the field paths in the mask may contain a reserved name. - // If the document exists on the server and has fields not referenced in - // the - // mask, they are left unchanged. + // If the mask is not set for an `update` and the document exists, + // any + // existing data will be overwritten. + // If the mask is set and the document on the server has fields not + // covered by + // the mask, they are left unchanged. // Fields referenced in the mask, but not present in the input document, // are // deleted from the document on the server. diff --git a/vendor/google.golang.org/api/fitness/v1/fitness-api.json b/vendor/google.golang.org/api/fitness/v1/fitness-api.json index 55a163a1f..f64d1a43d 100644 --- a/vendor/google.golang.org/api/fitness/v1/fitness-api.json +++ b/vendor/google.golang.org/api/fitness/v1/fitness-api.json @@ -1,1647 +1,1647 @@ { - "kind": "discovery#restDescription", - "etag": "\"YWOzh2SDasdU84ArJnpYek-OMdg/K1BxZmhfi_H1WlvW1SDsecgXAnE\"", - "discoveryVersion": "v1", - "id": "fitness:v1", - "name": "fitness", - "version": "v1", - "revision": "20170922", - "title": "Fitness", - "description": "Stores and accesses user data in the fitness store from apps on any platform.", - "ownerDomain": "google.com", - "ownerName": "Google", - "icons": { - "x16": "https://www.gstatic.com/images/branding/product/1x/googleg_16dp.png", - "x32": "https://www.gstatic.com/images/branding/product/1x/googleg_32dp.png" - }, - "documentationLink": "https://developers.google.com/fit/rest/", - "protocol": "rest", - "baseUrl": "https://www.googleapis.com/fitness/v1/users/", - "basePath": "/fitness/v1/users/", - "rootUrl": "https://www.googleapis.com/", - "servicePath": "fitness/v1/users/", - "batchPath": "batch/fitness/v1", - "parameters": { - "alt": { - "type": "string", - "description": "Data format for the response.", - "default": "json", - "enum": [ - "json" - ], - "enumDescriptions": [ - "Responses with Content-Type of application/json" - ], - "location": "query" - }, - "fields": { - "type": "string", - "description": "Selector specifying which fields to include in a partial response.", - "location": "query" - }, - "key": { - "type": "string", - "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" - }, - "oauth_token": { - "type": "string", - "description": "OAuth 2.0 token for the current user.", - "location": "query" - }, - "prettyPrint": { - "type": "boolean", - "description": "Returns response with indentations and line breaks.", - "default": "true", - "location": "query" - }, - "quotaUser": { - "type": "string", - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", - "location": "query" - }, - "userIp": { - "type": "string", - "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", - "location": "query" - } - }, - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/fitness.activity.read": { - "description": "View your activity information in Google Fit" - }, - "https://www.googleapis.com/auth/fitness.activity.write": { - "description": "View and store your activity information in Google Fit" - }, - "https://www.googleapis.com/auth/fitness.blood_glucose.read": { - "description": "View blood glucose data in Google Fit" - }, - "https://www.googleapis.com/auth/fitness.blood_glucose.write": { - "description": "View and store blood glucose data in Google Fit" - }, - "https://www.googleapis.com/auth/fitness.blood_pressure.read": { - "description": "View blood pressure data in Google Fit" - }, - "https://www.googleapis.com/auth/fitness.blood_pressure.write": { - "description": "View and store blood pressure data in Google Fit" - }, - "https://www.googleapis.com/auth/fitness.body.read": { - "description": "View body sensor information in Google Fit" - }, - "https://www.googleapis.com/auth/fitness.body.write": { - "description": "View and store body sensor data in Google Fit" - }, - "https://www.googleapis.com/auth/fitness.body_temperature.read": { - "description": "View body temperature data in Google Fit" - }, - "https://www.googleapis.com/auth/fitness.body_temperature.write": { - "description": "View and store body temperature data in Google Fit" - }, - "https://www.googleapis.com/auth/fitness.location.read": { - "description": "View your stored location data in Google Fit" - }, - "https://www.googleapis.com/auth/fitness.location.write": { - "description": "View and store your location data in Google Fit" - }, - "https://www.googleapis.com/auth/fitness.nutrition.read": { - "description": "View nutrition information in Google Fit" - }, - "https://www.googleapis.com/auth/fitness.nutrition.write": { - "description": "View and store nutrition information in Google Fit" - }, - "https://www.googleapis.com/auth/fitness.oxygen_saturation.read": { - "description": "View oxygen saturation data in Google Fit" - }, - "https://www.googleapis.com/auth/fitness.oxygen_saturation.write": { - "description": "View and store oxygen saturation data in Google Fit" - }, - "https://www.googleapis.com/auth/fitness.reproductive_health.read": { - "description": "View reproductive health data in Google Fit" - }, - "https://www.googleapis.com/auth/fitness.reproductive_health.write": { - "description": "View and store reproductive health data in Google Fit" + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/fitness.activity.read": { + "description": "View your activity information in Google Fit" + }, + "https://www.googleapis.com/auth/fitness.activity.write": { + "description": "View and store your activity information in Google Fit" + }, + "https://www.googleapis.com/auth/fitness.blood_glucose.read": { + "description": "View blood glucose data in Google Fit" + }, + "https://www.googleapis.com/auth/fitness.blood_glucose.write": { + "description": "View and store blood glucose data in Google Fit" + }, + "https://www.googleapis.com/auth/fitness.blood_pressure.read": { + "description": "View blood pressure data in Google Fit" + }, + "https://www.googleapis.com/auth/fitness.blood_pressure.write": { + "description": "View and store blood pressure data in Google Fit" + }, + "https://www.googleapis.com/auth/fitness.body.read": { + "description": "View body sensor information in Google Fit" + }, + "https://www.googleapis.com/auth/fitness.body.write": { + "description": "View and store body sensor data in Google Fit" + }, + "https://www.googleapis.com/auth/fitness.body_temperature.read": { + "description": "View body temperature data in Google Fit" + }, + "https://www.googleapis.com/auth/fitness.body_temperature.write": { + "description": "View and store body temperature data in Google Fit" + }, + "https://www.googleapis.com/auth/fitness.location.read": { + "description": "View your stored location data in Google Fit" + }, + "https://www.googleapis.com/auth/fitness.location.write": { + "description": "View and store your location data in Google Fit" + }, + "https://www.googleapis.com/auth/fitness.nutrition.read": { + "description": "View nutrition information in Google Fit" + }, + "https://www.googleapis.com/auth/fitness.nutrition.write": { + "description": "View and store nutrition information in Google Fit" + }, + "https://www.googleapis.com/auth/fitness.oxygen_saturation.read": { + "description": "View oxygen saturation data in Google Fit" + }, + "https://www.googleapis.com/auth/fitness.oxygen_saturation.write": { + "description": "View and store oxygen saturation data in Google Fit" + }, + "https://www.googleapis.com/auth/fitness.reproductive_health.read": { + "description": "View reproductive health data in Google Fit" + }, + "https://www.googleapis.com/auth/fitness.reproductive_health.write": { + "description": "View and store reproductive health data in Google Fit" + } + } } - } - } - }, - "schemas": { - "AggregateBucket": { - "id": "AggregateBucket", - "type": "object", - "properties": { - "activity": { - "type": "integer", - "description": "Available for Bucket.Type.ACTIVITY_TYPE, Bucket.Type.ACTIVITY_SEGMENT", - "format": "int32" - }, - "dataset": { - "type": "array", - "description": "There will be one dataset per AggregateBy in the request.", - "items": { - "$ref": "Dataset" - } - }, - "endTimeMillis": { - "type": "string", - "description": "The end time for the aggregated data, in milliseconds since epoch, inclusive.", - "format": "int64" - }, - "session": { - "$ref": "Session", - "description": "Available for Bucket.Type.SESSION" - }, - "startTimeMillis": { - "type": "string", - "description": "The start time for the aggregated data, in milliseconds since epoch, inclusive.", - "format": "int64" - }, - "type": { - "type": "string", - "description": "The type of a bucket signifies how the data aggregation is performed in the bucket.", - "enum": [ - "activitySegment", - "activityType", - "session", - "time", - "unknown" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "" - ] - } - } }, - "AggregateBy": { - "id": "AggregateBy", - "type": "object", - "description": "The specification of which data to aggregate.", - "properties": { - "dataSourceId": { - "type": "string", - "description": "A data source ID to aggregate. Mutually exclusive of dataTypeName. Only data from the specified data source ID will be included in the aggregation. The dataset in the response will have the same data source ID." - }, - "dataTypeName": { - "type": "string", - "description": "The data type to aggregate. All data sources providing this data type will contribute data to the aggregation. The response will contain a single dataset for this data type name. The dataset will have a data source ID of derived:com.google.:com.google.android.gms:aggregated" - } - } + "basePath": "/fitness/v1/users/", + "baseUrl": "https://www.googleapis.com/fitness/v1/users/", + "batchPath": "batch/fitness/v1", + "description": "Stores and accesses user data in the fitness store from apps on any platform.", + "discoveryVersion": "v1", + "documentationLink": "https://developers.google.com/fit/rest/", + "etag": "\"-iA1DTNe4s-I6JZXPt1t1Ypy8IU/K1BxZmhfi_H1WlvW1SDsecgXAnE\"", + "icons": { + "x16": "https://www.gstatic.com/images/branding/product/1x/googleg_16dp.png", + "x32": "https://www.gstatic.com/images/branding/product/1x/googleg_32dp.png" }, - "AggregateRequest": { - "id": "AggregateRequest", - "type": "object", - "description": "Next id: 10", - "properties": { - "aggregateBy": { - "type": "array", - "description": "The specification of data to be aggregated. At least one aggregateBy spec must be provided. All data that is specified will be aggregated using the same bucketing criteria. There will be one dataset in the response for every aggregateBy spec.", - "items": { - "$ref": "AggregateBy" - }, - "annotations": { - "required": [ - "fitness.users.dataset.aggregate" - ] - } - }, - "bucketByActivitySegment": { - "$ref": "BucketByActivity", - "description": "Specifies that data be aggregated each activity segment recored for a user. Similar to bucketByActivitySegment, but bucketing is done for each activity segment rather than all segments of the same type. Mutually exclusive of other bucketing specifications." - }, - "bucketByActivityType": { - "$ref": "BucketByActivity", - "description": "Specifies that data be aggregated by the type of activity being performed when the data was recorded. All data that was recorded during a certain activity type (for the given time range) will be aggregated into the same bucket. Data that was recorded while the user was not active will not be included in the response. Mutually exclusive of other bucketing specifications." - }, - "bucketBySession": { - "$ref": "BucketBySession", - "description": "Specifies that data be aggregated by user sessions. Data that does not fall within the time range of a session will not be included in the response. Mutually exclusive of other bucketing specifications." - }, - "bucketByTime": { - "$ref": "BucketByTime", - "description": "Specifies that data be aggregated by a single time interval. Mutually exclusive of other bucketing specifications." - }, - "endTimeMillis": { - "type": "string", - "description": "The end of a window of time. Data that intersects with this time window will be aggregated. The time is in milliseconds since epoch, inclusive.", - "format": "int64", - "annotations": { - "required": [ - "fitness.users.dataset.aggregate" - ] - } - }, - "filteredDataQualityStandard": { - "type": "array", - "description": "A list of acceptable data quality standards. Only data points which conform to at least one of the specified data quality standards will be returned. If the list is empty, all data points are returned.", - "items": { - "type": "string", + "id": "fitness:v1", + "kind": "discovery#restDescription", + "name": "fitness", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "alt": { + "default": "json", + "description": "Data format for the response.", "enum": [ - "dataQualityBloodGlucoseIso151972003", - "dataQualityBloodGlucoseIso151972013", - "dataQualityBloodPressureAami", - "dataQualityBloodPressureBhsAA", - "dataQualityBloodPressureBhsAB", - "dataQualityBloodPressureBhsBA", - "dataQualityBloodPressureBhsBB", - "dataQualityBloodPressureEsh2002", - "dataQualityBloodPressureEsh2010", - "dataQualityUnknown" + "json" ], "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - } - }, - "startTimeMillis": { - "type": "string", - "description": "The start of a window of time. Data that intersects with this time window will be aggregated. The time is in milliseconds since epoch, inclusive.", - "format": "int64", - "annotations": { - "required": [ - "fitness.users.dataset.aggregate" - ] - } - } - } - }, - "AggregateResponse": { - "id": "AggregateResponse", - "type": "object", - "properties": { - "bucket": { - "type": "array", - "description": "A list of buckets containing the aggregated data.", - "items": { - "$ref": "AggregateBucket" - } - } - } - }, - "Application": { - "id": "Application", - "type": "object", - "description": "", - "properties": { - "detailsUrl": { - "type": "string", - "description": "An optional URI that can be used to link back to the application." - }, - "name": { - "type": "string", - "description": "The name of this application. This is required for REST clients, but we do not enforce uniqueness of this name. It is provided as a matter of convenience for other developers who would like to identify which REST created an Application or Data Source.", - "annotations": { - "required": [ - "fitness.users.dataSources.create", - "fitness.users.dataSources.update", - "fitness.users.sessions.update" - ] - } - }, - "packageName": { - "type": "string", - "description": "Package name for this application. This is used as a unique identifier when created by Android applications, but cannot be specified by REST clients. REST clients will have their developer project number reflected into the Data Source data stream IDs, instead of the packageName." - }, - "version": { - "type": "string", - "description": "Version of the application. You should update this field whenever the application changes in a way that affects the computation of the data." - } - } - }, - "BucketByActivity": { - "id": "BucketByActivity", - "type": "object", - "properties": { - "activityDataSourceId": { - "type": "string", - "description": "The default activity stream will be used if a specific activityDataSourceId is not specified." - }, - "minDurationMillis": { - "type": "string", - "description": "Specifies that only activity segments of duration longer than minDurationMillis are considered and used as a container for aggregated data.", - "format": "int64" - } - } - }, - "BucketBySession": { - "id": "BucketBySession", - "type": "object", - "properties": { - "minDurationMillis": { - "type": "string", - "description": "Specifies that only sessions of duration longer than minDurationMillis are considered and used as a container for aggregated data.", - "format": "int64" - } - } - }, - "BucketByTime": { - "id": "BucketByTime", - "type": "object", - "properties": { - "durationMillis": { - "type": "string", - "description": "Specifies that result buckets aggregate data by exactly durationMillis time frames. Time frames that contain no data will be included in the response with an empty dataset.", - "format": "int64" - }, - "period": { - "$ref": "BucketByTimePeriod" - } - } - }, - "BucketByTimePeriod": { - "id": "BucketByTimePeriod", - "type": "object", - "properties": { - "timeZoneId": { - "type": "string", - "description": "org.joda.timezone.DateTimeZone" - }, - "type": { - "type": "string", - "enum": [ - "day", - "month", - "week" - ], - "enumDescriptions": [ - "", - "", - "" - ] - }, - "value": { - "type": "integer", - "format": "int32" - } - } - }, - "DataPoint": { - "id": "DataPoint", - "type": "object", - "description": "Represents a single data point, generated by a particular data source. A data point holds a value for each field, an end timestamp and an optional start time. The exact semantics of each of these attributes are specified in the documentation for the particular data type.\n\nA data point can represent an instantaneous measurement, reading or input observation, as well as averages or aggregates over a time interval. Check the data type documentation to determine which is the case for a particular data type.\n\nData points always contain one value for each field of the data type.", - "properties": { - "computationTimeMillis": { - "type": "string", - "description": "Used for version checking during transformation; that is, a datapoint can only replace another datapoint that has an older computation time stamp.", - "format": "int64" - }, - "dataTypeName": { - "type": "string", - "description": "The data type defining the format of the values in this data point.", - "annotations": { - "required": [ - "fitness.users.dataSources.datasets.patch" - ] - } - }, - "endTimeNanos": { - "type": "string", - "description": "The end time of the interval represented by this data point, in nanoseconds since epoch.", - "format": "int64", - "annotations": { - "required": [ - "fitness.users.dataSources.datasets.patch" - ] - } - }, - "modifiedTimeMillis": { - "type": "string", - "description": "Indicates the last time this data point was modified. Useful only in contexts where we are listing the data changes, rather than representing the current state of the data.", - "format": "int64" - }, - "originDataSourceId": { - "type": "string", - "description": "If the data point is contained in a dataset for a derived data source, this field will be populated with the data source stream ID that created the data point originally." - }, - "rawTimestampNanos": { - "type": "string", - "description": "The raw timestamp from the original SensorEvent.", - "format": "int64" - }, - "startTimeNanos": { - "type": "string", - "description": "The start time of the interval represented by this data point, in nanoseconds since epoch.", - "format": "int64", - "annotations": { - "required": [ - "fitness.users.dataSources.datasets.patch" - ] - } - }, - "value": { - "type": "array", - "description": "Values of each data type field for the data point. It is expected that each value corresponding to a data type field will occur in the same order that the field is listed with in the data type specified in a data source.\n\nOnly one of integer and floating point fields will be populated, depending on the format enum value within data source's type field.", - "items": { - "$ref": "Value" - }, - "annotations": { - "required": [ - "fitness.users.dataSources.datasets.patch" - ] - } - } - } - }, - "DataSource": { - "id": "DataSource", - "type": "object", - "description": "Definition of a unique source of sensor data. Data sources can expose raw data coming from hardware sensors on local or companion devices. They can also expose derived data, created by transforming or merging other data sources. Multiple data sources can exist for the same data type. Every data point inserted into or read from this service has an associated data source.\n\nThe data source contains enough information to uniquely identify its data, including the hardware device and the application that collected and/or transformed the data. It also holds useful metadata, such as the hardware and application versions, and the device type.\n\nEach data source produces a unique stream of data, with a unique identifier. Not all changes to data source affect the stream identifier, so that data collected by updated versions of the same application/device can still be considered to belong to the same data stream.", - "properties": { - "application": { - "$ref": "Application", - "description": "Information about an application which feeds sensor data into the platform.", - "annotations": { - "required": [ - "fitness.users.dataSources.create", - "fitness.users.dataSources.update" - ] - } - }, - "dataQualityStandard": { - "type": "array", - "description": "", - "items": { - "type": "string", - "enum": [ - "dataQualityBloodGlucoseIso151972003", - "dataQualityBloodGlucoseIso151972013", - "dataQualityBloodPressureAami", - "dataQualityBloodPressureBhsAA", - "dataQualityBloodPressureBhsAB", - "dataQualityBloodPressureBhsBA", - "dataQualityBloodPressureBhsBB", - "dataQualityBloodPressureEsh2002", - "dataQualityBloodPressureEsh2010", - "dataQualityUnknown" + "Responses with Content-Type of application/json" ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - } + "location": "query", + "type": "string" }, - "dataStreamId": { - "type": "string", - "description": "A unique identifier for the data stream produced by this data source. The identifier includes:\n\n \n- The physical device's manufacturer, model, and serial number (UID). \n- The application's package name or name. Package name is used when the data source was created by an Android application. The developer project number is used when the data source was created by a REST client. \n- The data source's type. \n- The data source's stream name. Note that not all attributes of the data source are used as part of the stream identifier. In particular, the version of the hardware/the application isn't used. This allows us to preserve the same stream through version updates. This also means that two DataSource objects may represent the same data stream even if they're not equal.\n\nThe exact format of the data stream ID created by an Android application is: type:dataType.name:application.packageName:device.manufacturer:device.model:device.uid:dataStreamName \n\nThe exact format of the data stream ID created by a REST client is: type:dataType.name:developer project number:device.manufacturer:device.model:device.uid:dataStreamName \n\nWhen any of the optional fields that comprise of the data stream ID are blank, they will be omitted from the data stream ID. The minimum viable data stream ID would be: type:dataType.name:developer project number\n\nFinally, the developer project number is obfuscated when read by any REST or Android client that did not create the data source. Only the data source creator will see the developer project number in clear and normal form.", - "annotations": { - "required": [ - "fitness.users.dataSources.update" - ] - } + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "location": "query", + "type": "string" }, - "dataStreamName": { - "type": "string", - "description": "The stream name uniquely identifies this particular data source among other data sources of the same type from the same underlying producer. Setting the stream name is optional, but should be done whenever an application exposes two streams for the same data type, or when a device has two equivalent sensors." - }, - "dataType": { - "$ref": "DataType", - "description": "The data type defines the schema for a stream of data being collected by, inserted into, or queried from the Fitness API.", - "annotations": { - "required": [ - "fitness.users.dataSources.create", - "fitness.users.dataSources.update" - ] - } - }, - "device": { - "$ref": "Device", - "description": "Representation of an integrated device (such as a phone or a wearable) that can hold sensors.", - "annotations": { - "required": [ - "fitness.users.dataSources.create", - "fitness.users.dataSources.update" - ] - } - }, - "name": { - "type": "string", - "description": "An end-user visible name for this data source." - }, - "type": { - "type": "string", - "description": "A constant describing the type of this data source. Indicates whether this data source produces raw or derived data.", - "enum": [ - "derived", - "raw" - ], - "enumDescriptions": [ - "", - "" - ], - "annotations": { - "required": [ - "fitness.users.dataSources.create", - "fitness.users.dataSources.update" - ] - } - } - } - }, - "DataType": { - "id": "DataType", - "type": "object", - "description": "", - "properties": { - "field": { - "type": "array", - "description": "A field represents one dimension of a data type.", - "items": { - "$ref": "DataTypeField" - }, - "annotations": { - "required": [ - "fitness.users.dataSources.create", - "fitness.users.dataSources.update" - ] - } - }, - "name": { - "type": "string", - "description": "Each data type has a unique, namespaced, name. All data types in the com.google namespace are shared as part of the platform.", - "annotations": { - "required": [ - "fitness.users.dataSources.create", - "fitness.users.dataSources.update" - ] - } - } - } - }, - "DataTypeField": { - "id": "DataTypeField", - "type": "object", - "description": "In case of multi-dimensional data (such as an accelerometer with x, y, and z axes) each field represents one dimension. Each data type field has a unique name which identifies it. The field also defines the format of the data (int, float, etc.).\n\nThis message is only instantiated in code and not used for wire comms or stored in any way.", - "properties": { - "format": { - "type": "string", - "description": "The different supported formats for each field in a data type.", - "enum": [ - "blob", - "floatList", - "floatPoint", - "integer", - "integerList", - "map", - "string" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "" - ], - "annotations": { - "required": [ - "fitness.users.dataSources.create", - "fitness.users.dataSources.update" - ] - } - }, - "name": { - "type": "string", - "description": "Defines the name and format of data. Unlike data type names, field names are not namespaced, and only need to be unique within the data type.", - "annotations": { - "required": [ - "fitness.users.dataSources.create", - "fitness.users.dataSources.update" - ] - } - }, - "optional": { - "type": "boolean" - } - } - }, - "Dataset": { - "id": "Dataset", - "type": "object", - "description": "A dataset represents a projection container for data points. They do not carry any info of their own. Datasets represent a set of data points from a particular data source. A data point can be found in more than one dataset.", - "properties": { - "dataSourceId": { - "type": "string", - "description": "The data stream ID of the data source that created the points in this dataset.", - "annotations": { - "required": [ - "fitness.users.dataSources.datasets.patch" - ] - } - }, - "maxEndTimeNs": { - "type": "string", - "description": "The largest end time of all data points in this possibly partial representation of the dataset. Time is in nanoseconds from epoch. This should also match the first part of the dataset identifier.", - "format": "int64", - "annotations": { - "required": [ - "fitness.users.dataSources.datasets.patch" - ] - } - }, - "minStartTimeNs": { - "type": "string", - "description": "The smallest start time of all data points in this possibly partial representation of the dataset. Time is in nanoseconds from epoch. This should also match the first part of the dataset identifier.", - "format": "int64", - "annotations": { - "required": [ - "fitness.users.dataSources.datasets.patch" - ] - } - }, - "nextPageToken": { - "type": "string", - "description": "This token will be set when a dataset is received in response to a GET request and the dataset is too large to be included in a single response. Provide this value in a subsequent GET request to return the next page of data points within this dataset." - }, - "point": { - "type": "array", - "description": "A partial list of data points contained in the dataset, ordered by largest endTimeNanos first. This list is considered complete when retrieving a small dataset and partial when patching a dataset or retrieving a dataset that is too large to include in a single response.", - "items": { - "$ref": "DataPoint" - }, - "annotations": { - "required": [ - "fitness.users.dataSources.datasets.patch" - ] - } - } - } - }, - "Device": { - "id": "Device", - "type": "object", - "description": "Representation of an integrated device (such as a phone or a wearable) that can hold sensors. Each sensor is exposed as a data source.\n\nThe main purpose of the device information contained in this class is to identify the hardware of a particular data source. This can be useful in different ways, including: \n- Distinguishing two similar sensors on different devices (the step counter on two nexus 5 phones, for instance)\n- Display the source of data to the user (by using the device make / model)\n- Treat data differently depending on sensor type (accelerometers on a watch may give different patterns than those on a phone)\n- Build different analysis models for each device/version.", - "properties": { - "manufacturer": { - "type": "string", - "description": "Manufacturer of the product/hardware.", - "annotations": { - "required": [ - "fitness.users.dataSources.create", - "fitness.users.dataSources.update" - ] - } - }, - "model": { - "type": "string", - "description": "End-user visible model name for the device.", - "annotations": { - "required": [ - "fitness.users.dataSources.create", - "fitness.users.dataSources.update" - ] - } - }, - "type": { - "type": "string", - "description": "A constant representing the type of the device.", - "enum": [ - "chestStrap", - "headMounted", - "phone", - "scale", - "tablet", - "unknown", - "watch" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "" - ], - "annotations": { - "required": [ - "fitness.users.dataSources.create", - "fitness.users.dataSources.update" - ] - } - }, - "uid": { - "type": "string", - "description": "The serial number or other unique ID for the hardware. This field is obfuscated when read by any REST or Android client that did not create the data source. Only the data source creator will see the uid field in clear and normal form.", - "annotations": { - "required": [ - "fitness.users.dataSources.create", - "fitness.users.dataSources.update" - ] - } - }, - "version": { - "type": "string", - "description": "Version string for the device hardware/software.", - "annotations": { - "required": [ - "fitness.users.dataSources.create", - "fitness.users.dataSources.update" - ] - } - } - } - }, - "ListDataPointChangesResponse": { - "id": "ListDataPointChangesResponse", - "type": "object", - "properties": { - "dataSourceId": { - "type": "string", - "description": "The data stream ID of the data source with data point changes." - }, - "deletedDataPoint": { - "type": "array", - "description": "Deleted data points for the user. Note, for modifications this should be parsed before handling insertions.", - "items": { - "$ref": "DataPoint" - } - }, - "insertedDataPoint": { - "type": "array", - "description": "Inserted data points for the user.", - "items": { - "$ref": "DataPoint" - } - }, - "nextPageToken": { - "type": "string", - "description": "The continuation token, which is used to page through large result sets. Provide this value in a subsequent request to return the next page of results." - } - } - }, - "ListDataSourcesResponse": { - "id": "ListDataSourcesResponse", - "type": "object", - "properties": { - "dataSource": { - "type": "array", - "description": "A previously created data source.", - "items": { - "$ref": "DataSource" - } - } - } - }, - "ListSessionsResponse": { - "id": "ListSessionsResponse", - "type": "object", - "properties": { - "deletedSession": { - "type": "array", - "description": "If includeDeleted is set to true in the request, this list will contain sessions deleted with original end times that are within the startTime and endTime frame.", - "items": { - "$ref": "Session" - } - }, - "hasMoreData": { - "type": "boolean", - "description": "Flag to indicate server has more data to transfer" - }, - "nextPageToken": { - "type": "string", - "description": "The continuation token, which is used to page through large result sets. Provide this value in a subsequent request to return the next page of results." - }, - "session": { - "type": "array", - "description": "Sessions with an end time that is between startTime and endTime of the request.", - "items": { - "$ref": "Session" - } - } - } - }, - "MapValue": { - "id": "MapValue", - "type": "object", - "description": "Holder object for the value of an entry in a map field of a data point.\n\nA map value supports a subset of the formats that the regular Value supports.", - "properties": { - "fpVal": { - "type": "number", - "description": "Floating point value.", - "format": "double" - } - } - }, - "Session": { - "id": "Session", - "type": "object", - "description": "Sessions contain metadata, such as a user-friendly name and time interval information.", - "properties": { - "activeTimeMillis": { - "type": "string", - "description": "Session active time. While start_time_millis and end_time_millis define the full session time, the active time can be shorter and specified by active_time_millis. If the inactive time during the session is known, it should also be inserted via a com.google.activity.segment data point with a STILL activity value", - "format": "int64" - }, - "activityType": { - "type": "integer", - "description": "The type of activity this session represents.", - "format": "int32", - "annotations": { - "required": [ - "fitness.users.sessions.update" - ] - } - }, - "application": { - "$ref": "Application", - "description": "The application that created the session.", - "annotations": { - "required": [ - "fitness.users.sessions.update" - ] - } - }, - "description": { - "type": "string", - "description": "A description for this session." - }, - "endTimeMillis": { - "type": "string", - "description": "An end time, in milliseconds since epoch, inclusive.", - "format": "int64", - "annotations": { - "required": [ - "fitness.users.sessions.update" - ] - } - }, - "id": { - "type": "string", - "description": "A client-generated identifier that is unique across all sessions owned by this particular user.", - "annotations": { - "required": [ - "fitness.users.sessions.update" - ] - } - }, - "modifiedTimeMillis": { - "type": "string", - "description": "A timestamp that indicates when the session was last modified.", - "format": "int64" - }, - "name": { - "type": "string", - "description": "A human readable name of the session.", - "annotations": { - "required": [ - "fitness.users.sessions.update" - ] - } - }, - "startTimeMillis": { - "type": "string", - "description": "A start time, in milliseconds since epoch, inclusive.", - "format": "int64", - "annotations": { - "required": [ - "fitness.users.sessions.update" - ] - } - } - } - }, - "Value": { - "id": "Value", - "type": "object", - "description": "Holder object for the value of a single field in a data point.\n\nA field value has a particular format and is only ever set to one of an integer or a floating point value. LINT.IfChange", - "properties": { - "fpVal": { - "type": "number", - "description": "Floating point value. When this is set, other values must not be set.", - "format": "double" - }, - "intVal": { - "type": "integer", - "description": "Integer value. When this is set, other values must not be set.", - "format": "int32" - }, - "mapVal": { - "type": "array", - "description": "Map value. The valid key space and units for the corresponding value of each entry should be documented as part of the data type definition. Keys should be kept small whenever possible. Data streams with large keys and high data frequency may be down sampled.", - "items": { - "$ref": "ValueMapValEntry" - } - }, - "stringVal": { - "type": "string", - "description": "String value. When this is set, other values must not be set. Strings should be kept small whenever possible. Data streams with large string values and high data frequency may be down sampled." - } - } - }, - "ValueMapValEntry": { - "id": "ValueMapValEntry", - "type": "object", - "properties": { "key": { - "type": "string" + "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" }, - "value": { - "$ref": "MapValue" + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", + "location": "query", + "type": "string" + }, + "userIp": { + "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", + "location": "query", + "type": "string" } - } - } - }, - "resources": { - "users": { - "resources": { - "dataSources": { - "methods": { - "create": { - "id": "fitness.users.dataSources.create", - "path": "{userId}/dataSources", - "httpMethod": "POST", - "description": "Creates a new data source that is unique across all data sources belonging to this user. The data stream ID field can be omitted and will be generated by the server with the correct format. The data stream ID is an ordered combination of some fields from the data source. In addition to the data source fields reflected into the data source ID, the developer project number that is authenticated when creating the data source is included. This developer project number is obfuscated when read by any other developer reading public data types.", - "parameters": { - "userId": { - "type": "string", - "description": "Create the data source for the person identified. Use me to indicate the authenticated user. Only me is supported at this time.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "userId" - ], - "request": { - "$ref": "DataSource" - }, - "response": { - "$ref": "DataSource" - }, - "scopes": [ - "https://www.googleapis.com/auth/fitness.activity.write", - "https://www.googleapis.com/auth/fitness.blood_glucose.write", - "https://www.googleapis.com/auth/fitness.blood_pressure.write", - "https://www.googleapis.com/auth/fitness.body.write", - "https://www.googleapis.com/auth/fitness.body_temperature.write", - "https://www.googleapis.com/auth/fitness.location.write", - "https://www.googleapis.com/auth/fitness.nutrition.write", - "https://www.googleapis.com/auth/fitness.oxygen_saturation.write", - "https://www.googleapis.com/auth/fitness.reproductive_health.write" - ] - }, - "delete": { - "id": "fitness.users.dataSources.delete", - "path": "{userId}/dataSources/{dataSourceId}", - "httpMethod": "DELETE", - "description": "Deletes the specified data source. The request will fail if the data source contains any data points.", - "parameters": { - "dataSourceId": { - "type": "string", - "description": "The data stream ID of the data source to delete.", - "required": true, - "location": "path" + }, + "protocol": "rest", + "resources": { + "users": { + "resources": { + "dataSources": { + "methods": { + "create": { + "description": "Creates a new data source that is unique across all data sources belonging to this user. The data stream ID field can be omitted and will be generated by the server with the correct format. The data stream ID is an ordered combination of some fields from the data source. In addition to the data source fields reflected into the data source ID, the developer project number that is authenticated when creating the data source is included. This developer project number is obfuscated when read by any other developer reading public data types.", + "httpMethod": "POST", + "id": "fitness.users.dataSources.create", + "parameterOrder": [ + "userId" + ], + "parameters": { + "userId": { + "description": "Create the data source for the person identified. Use me to indicate the authenticated user. Only me is supported at this time.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{userId}/dataSources", + "request": { + "$ref": "DataSource" + }, + "response": { + "$ref": "DataSource" + }, + "scopes": [ + "https://www.googleapis.com/auth/fitness.activity.write", + "https://www.googleapis.com/auth/fitness.blood_glucose.write", + "https://www.googleapis.com/auth/fitness.blood_pressure.write", + "https://www.googleapis.com/auth/fitness.body.write", + "https://www.googleapis.com/auth/fitness.body_temperature.write", + "https://www.googleapis.com/auth/fitness.location.write", + "https://www.googleapis.com/auth/fitness.nutrition.write", + "https://www.googleapis.com/auth/fitness.oxygen_saturation.write", + "https://www.googleapis.com/auth/fitness.reproductive_health.write" + ] + }, + "delete": { + "description": "Deletes the specified data source. The request will fail if the data source contains any data points.", + "httpMethod": "DELETE", + "id": "fitness.users.dataSources.delete", + "parameterOrder": [ + "userId", + "dataSourceId" + ], + "parameters": { + "dataSourceId": { + "description": "The data stream ID of the data source to delete.", + "location": "path", + "required": true, + "type": "string" + }, + "userId": { + "description": "Retrieve a data source for the person identified. Use me to indicate the authenticated user. Only me is supported at this time.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{userId}/dataSources/{dataSourceId}", + "response": { + "$ref": "DataSource" + }, + "scopes": [ + "https://www.googleapis.com/auth/fitness.activity.write", + "https://www.googleapis.com/auth/fitness.blood_glucose.write", + "https://www.googleapis.com/auth/fitness.blood_pressure.write", + "https://www.googleapis.com/auth/fitness.body.write", + "https://www.googleapis.com/auth/fitness.body_temperature.write", + "https://www.googleapis.com/auth/fitness.location.write", + "https://www.googleapis.com/auth/fitness.nutrition.write", + "https://www.googleapis.com/auth/fitness.oxygen_saturation.write", + "https://www.googleapis.com/auth/fitness.reproductive_health.write" + ] + }, + "get": { + "description": "Returns the specified data source.", + "httpMethod": "GET", + "id": "fitness.users.dataSources.get", + "parameterOrder": [ + "userId", + "dataSourceId" + ], + "parameters": { + "dataSourceId": { + "description": "The data stream ID of the data source to retrieve.", + "location": "path", + "required": true, + "type": "string" + }, + "userId": { + "description": "Retrieve a data source for the person identified. Use me to indicate the authenticated user. Only me is supported at this time.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{userId}/dataSources/{dataSourceId}", + "response": { + "$ref": "DataSource" + }, + "scopes": [ + "https://www.googleapis.com/auth/fitness.activity.read", + "https://www.googleapis.com/auth/fitness.activity.write", + "https://www.googleapis.com/auth/fitness.blood_glucose.read", + "https://www.googleapis.com/auth/fitness.blood_glucose.write", + "https://www.googleapis.com/auth/fitness.blood_pressure.read", + "https://www.googleapis.com/auth/fitness.blood_pressure.write", + "https://www.googleapis.com/auth/fitness.body.read", + "https://www.googleapis.com/auth/fitness.body.write", + "https://www.googleapis.com/auth/fitness.body_temperature.read", + "https://www.googleapis.com/auth/fitness.body_temperature.write", + "https://www.googleapis.com/auth/fitness.location.read", + "https://www.googleapis.com/auth/fitness.location.write", + "https://www.googleapis.com/auth/fitness.nutrition.read", + "https://www.googleapis.com/auth/fitness.nutrition.write", + "https://www.googleapis.com/auth/fitness.oxygen_saturation.read", + "https://www.googleapis.com/auth/fitness.oxygen_saturation.write", + "https://www.googleapis.com/auth/fitness.reproductive_health.read", + "https://www.googleapis.com/auth/fitness.reproductive_health.write" + ] + }, + "list": { + "description": "Lists all data sources that are visible to the developer, using the OAuth scopes provided. The list is not exhaustive; the user may have private data sources that are only visible to other developers, or calls using other scopes.", + "httpMethod": "GET", + "id": "fitness.users.dataSources.list", + "parameterOrder": [ + "userId" + ], + "parameters": { + "dataTypeName": { + "description": "The names of data types to include in the list. If not specified, all data sources will be returned.", + "location": "query", + "repeated": true, + "type": "string" + }, + "userId": { + "description": "List data sources for the person identified. Use me to indicate the authenticated user. Only me is supported at this time.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{userId}/dataSources", + "response": { + "$ref": "ListDataSourcesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/fitness.activity.read", + "https://www.googleapis.com/auth/fitness.activity.write", + "https://www.googleapis.com/auth/fitness.blood_glucose.read", + "https://www.googleapis.com/auth/fitness.blood_glucose.write", + "https://www.googleapis.com/auth/fitness.blood_pressure.read", + "https://www.googleapis.com/auth/fitness.blood_pressure.write", + "https://www.googleapis.com/auth/fitness.body.read", + "https://www.googleapis.com/auth/fitness.body.write", + "https://www.googleapis.com/auth/fitness.body_temperature.read", + "https://www.googleapis.com/auth/fitness.body_temperature.write", + "https://www.googleapis.com/auth/fitness.location.read", + "https://www.googleapis.com/auth/fitness.location.write", + "https://www.googleapis.com/auth/fitness.nutrition.read", + "https://www.googleapis.com/auth/fitness.nutrition.write", + "https://www.googleapis.com/auth/fitness.oxygen_saturation.read", + "https://www.googleapis.com/auth/fitness.oxygen_saturation.write", + "https://www.googleapis.com/auth/fitness.reproductive_health.read", + "https://www.googleapis.com/auth/fitness.reproductive_health.write" + ] + }, + "patch": { + "description": "Updates the specified data source. The dataStreamId, dataType, type, dataStreamName, and device properties with the exception of version, cannot be modified.\n\nData sources are identified by their dataStreamId. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "fitness.users.dataSources.patch", + "parameterOrder": [ + "userId", + "dataSourceId" + ], + "parameters": { + "dataSourceId": { + "description": "The data stream ID of the data source to update.", + "location": "path", + "required": true, + "type": "string" + }, + "userId": { + "description": "Update the data source for the person identified. Use me to indicate the authenticated user. Only me is supported at this time.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{userId}/dataSources/{dataSourceId}", + "request": { + "$ref": "DataSource" + }, + "response": { + "$ref": "DataSource" + }, + "scopes": [ + "https://www.googleapis.com/auth/fitness.activity.write", + "https://www.googleapis.com/auth/fitness.blood_glucose.write", + "https://www.googleapis.com/auth/fitness.blood_pressure.write", + "https://www.googleapis.com/auth/fitness.body.write", + "https://www.googleapis.com/auth/fitness.body_temperature.write", + "https://www.googleapis.com/auth/fitness.location.write", + "https://www.googleapis.com/auth/fitness.nutrition.write", + "https://www.googleapis.com/auth/fitness.oxygen_saturation.write", + "https://www.googleapis.com/auth/fitness.reproductive_health.write" + ] + }, + "update": { + "description": "Updates the specified data source. The dataStreamId, dataType, type, dataStreamName, and device properties with the exception of version, cannot be modified.\n\nData sources are identified by their dataStreamId.", + "httpMethod": "PUT", + "id": "fitness.users.dataSources.update", + "parameterOrder": [ + "userId", + "dataSourceId" + ], + "parameters": { + "dataSourceId": { + "description": "The data stream ID of the data source to update.", + "location": "path", + "required": true, + "type": "string" + }, + "userId": { + "description": "Update the data source for the person identified. Use me to indicate the authenticated user. Only me is supported at this time.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{userId}/dataSources/{dataSourceId}", + "request": { + "$ref": "DataSource" + }, + "response": { + "$ref": "DataSource" + }, + "scopes": [ + "https://www.googleapis.com/auth/fitness.activity.write", + "https://www.googleapis.com/auth/fitness.blood_glucose.write", + "https://www.googleapis.com/auth/fitness.blood_pressure.write", + "https://www.googleapis.com/auth/fitness.body.write", + "https://www.googleapis.com/auth/fitness.body_temperature.write", + "https://www.googleapis.com/auth/fitness.location.write", + "https://www.googleapis.com/auth/fitness.nutrition.write", + "https://www.googleapis.com/auth/fitness.oxygen_saturation.write", + "https://www.googleapis.com/auth/fitness.reproductive_health.write" + ] + } + }, + "resources": { + "dataPointChanges": { + "methods": { + "list": { + "description": "Queries for user's data point changes for a particular data source.", + "httpMethod": "GET", + "id": "fitness.users.dataSources.dataPointChanges.list", + "parameterOrder": [ + "userId", + "dataSourceId" + ], + "parameters": { + "dataSourceId": { + "description": "The data stream ID of the data source that created the dataset.", + "location": "path", + "required": true, + "type": "string" + }, + "limit": { + "description": "If specified, no more than this many data point changes will be included in the response.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "The continuation token, which is used to page through large result sets. To get the next page of results, set this parameter to the value of nextPageToken from the previous response.", + "location": "query", + "type": "string" + }, + "userId": { + "description": "List data points for the person identified. Use me to indicate the authenticated user. Only me is supported at this time.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{userId}/dataSources/{dataSourceId}/dataPointChanges", + "response": { + "$ref": "ListDataPointChangesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/fitness.activity.read", + "https://www.googleapis.com/auth/fitness.activity.write", + "https://www.googleapis.com/auth/fitness.blood_glucose.read", + "https://www.googleapis.com/auth/fitness.blood_glucose.write", + "https://www.googleapis.com/auth/fitness.blood_pressure.read", + "https://www.googleapis.com/auth/fitness.blood_pressure.write", + "https://www.googleapis.com/auth/fitness.body.read", + "https://www.googleapis.com/auth/fitness.body.write", + "https://www.googleapis.com/auth/fitness.body_temperature.read", + "https://www.googleapis.com/auth/fitness.body_temperature.write", + "https://www.googleapis.com/auth/fitness.location.read", + "https://www.googleapis.com/auth/fitness.location.write", + "https://www.googleapis.com/auth/fitness.nutrition.read", + "https://www.googleapis.com/auth/fitness.nutrition.write", + "https://www.googleapis.com/auth/fitness.oxygen_saturation.read", + "https://www.googleapis.com/auth/fitness.oxygen_saturation.write", + "https://www.googleapis.com/auth/fitness.reproductive_health.read", + "https://www.googleapis.com/auth/fitness.reproductive_health.write" + ] + } + } + }, + "datasets": { + "methods": { + "delete": { + "description": "Performs an inclusive delete of all data points whose start and end times have any overlap with the time range specified by the dataset ID. For most data types, the entire data point will be deleted. For data types where the time span represents a consistent value (such as com.google.activity.segment), and a data point straddles either end point of the dataset, only the overlapping portion of the data point will be deleted.", + "httpMethod": "DELETE", + "id": "fitness.users.dataSources.datasets.delete", + "parameterOrder": [ + "userId", + "dataSourceId", + "datasetId" + ], + "parameters": { + "currentTimeMillis": { + "description": "The client's current time in milliseconds since epoch.", + "format": "int64", + "location": "query", + "type": "string" + }, + "dataSourceId": { + "description": "The data stream ID of the data source that created the dataset.", + "location": "path", + "required": true, + "type": "string" + }, + "datasetId": { + "description": "Dataset identifier that is a composite of the minimum data point start time and maximum data point end time represented as nanoseconds from the epoch. The ID is formatted like: \"startTime-endTime\" where startTime and endTime are 64 bit integers.", + "location": "path", + "required": true, + "type": "string" + }, + "modifiedTimeMillis": { + "description": "When the operation was performed on the client.", + "format": "int64", + "location": "query", + "type": "string" + }, + "userId": { + "description": "Delete a dataset for the person identified. Use me to indicate the authenticated user. Only me is supported at this time.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{userId}/dataSources/{dataSourceId}/datasets/{datasetId}", + "scopes": [ + "https://www.googleapis.com/auth/fitness.activity.write", + "https://www.googleapis.com/auth/fitness.blood_glucose.write", + "https://www.googleapis.com/auth/fitness.blood_pressure.write", + "https://www.googleapis.com/auth/fitness.body.write", + "https://www.googleapis.com/auth/fitness.body_temperature.write", + "https://www.googleapis.com/auth/fitness.location.write", + "https://www.googleapis.com/auth/fitness.nutrition.write", + "https://www.googleapis.com/auth/fitness.oxygen_saturation.write", + "https://www.googleapis.com/auth/fitness.reproductive_health.write" + ] + }, + "get": { + "description": "Returns a dataset containing all data points whose start and end times overlap with the specified range of the dataset minimum start time and maximum end time. Specifically, any data point whose start time is less than or equal to the dataset end time and whose end time is greater than or equal to the dataset start time.", + "httpMethod": "GET", + "id": "fitness.users.dataSources.datasets.get", + "parameterOrder": [ + "userId", + "dataSourceId", + "datasetId" + ], + "parameters": { + "dataSourceId": { + "description": "The data stream ID of the data source that created the dataset.", + "location": "path", + "required": true, + "type": "string" + }, + "datasetId": { + "description": "Dataset identifier that is a composite of the minimum data point start time and maximum data point end time represented as nanoseconds from the epoch. The ID is formatted like: \"startTime-endTime\" where startTime and endTime are 64 bit integers.", + "location": "path", + "required": true, + "type": "string" + }, + "limit": { + "description": "If specified, no more than this many data points will be included in the dataset. If there are more data points in the dataset, nextPageToken will be set in the dataset response.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "The continuation token, which is used to page through large datasets. To get the next page of a dataset, set this parameter to the value of nextPageToken from the previous response. Each subsequent call will yield a partial dataset with data point end timestamps that are strictly smaller than those in the previous partial response.", + "location": "query", + "type": "string" + }, + "userId": { + "description": "Retrieve a dataset for the person identified. Use me to indicate the authenticated user. Only me is supported at this time.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{userId}/dataSources/{dataSourceId}/datasets/{datasetId}", + "response": { + "$ref": "Dataset" + }, + "scopes": [ + "https://www.googleapis.com/auth/fitness.activity.read", + "https://www.googleapis.com/auth/fitness.activity.write", + "https://www.googleapis.com/auth/fitness.blood_glucose.read", + "https://www.googleapis.com/auth/fitness.blood_glucose.write", + "https://www.googleapis.com/auth/fitness.blood_pressure.read", + "https://www.googleapis.com/auth/fitness.blood_pressure.write", + "https://www.googleapis.com/auth/fitness.body.read", + "https://www.googleapis.com/auth/fitness.body.write", + "https://www.googleapis.com/auth/fitness.body_temperature.read", + "https://www.googleapis.com/auth/fitness.body_temperature.write", + "https://www.googleapis.com/auth/fitness.location.read", + "https://www.googleapis.com/auth/fitness.location.write", + "https://www.googleapis.com/auth/fitness.nutrition.read", + "https://www.googleapis.com/auth/fitness.nutrition.write", + "https://www.googleapis.com/auth/fitness.oxygen_saturation.read", + "https://www.googleapis.com/auth/fitness.oxygen_saturation.write", + "https://www.googleapis.com/auth/fitness.reproductive_health.read", + "https://www.googleapis.com/auth/fitness.reproductive_health.write" + ] + }, + "patch": { + "description": "Adds data points to a dataset. The dataset need not be previously created. All points within the given dataset will be returned with subsquent calls to retrieve this dataset. Data points can belong to more than one dataset. This method does not use patch semantics.", + "httpMethod": "PATCH", + "id": "fitness.users.dataSources.datasets.patch", + "parameterOrder": [ + "userId", + "dataSourceId", + "datasetId" + ], + "parameters": { + "currentTimeMillis": { + "description": "The client's current time in milliseconds since epoch. Note that the minStartTimeNs and maxEndTimeNs properties in the request body are in nanoseconds instead of milliseconds.", + "format": "int64", + "location": "query", + "type": "string" + }, + "dataSourceId": { + "description": "The data stream ID of the data source that created the dataset.", + "location": "path", + "required": true, + "type": "string" + }, + "datasetId": { + "description": "Dataset identifier that is a composite of the minimum data point start time and maximum data point end time represented as nanoseconds from the epoch. The ID is formatted like: \"startTime-endTime\" where startTime and endTime are 64 bit integers.", + "location": "path", + "required": true, + "type": "string" + }, + "userId": { + "description": "Patch a dataset for the person identified. Use me to indicate the authenticated user. Only me is supported at this time.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{userId}/dataSources/{dataSourceId}/datasets/{datasetId}", + "request": { + "$ref": "Dataset" + }, + "response": { + "$ref": "Dataset" + }, + "scopes": [ + "https://www.googleapis.com/auth/fitness.activity.write", + "https://www.googleapis.com/auth/fitness.blood_glucose.write", + "https://www.googleapis.com/auth/fitness.blood_pressure.write", + "https://www.googleapis.com/auth/fitness.body.write", + "https://www.googleapis.com/auth/fitness.body_temperature.write", + "https://www.googleapis.com/auth/fitness.location.write", + "https://www.googleapis.com/auth/fitness.nutrition.write", + "https://www.googleapis.com/auth/fitness.oxygen_saturation.write", + "https://www.googleapis.com/auth/fitness.reproductive_health.write" + ] + } + } + } + } }, - "userId": { - "type": "string", - "description": "Retrieve a data source for the person identified. Use me to indicate the authenticated user. Only me is supported at this time.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "userId", - "dataSourceId" - ], - "response": { - "$ref": "DataSource" - }, - "scopes": [ - "https://www.googleapis.com/auth/fitness.activity.write", - "https://www.googleapis.com/auth/fitness.blood_glucose.write", - "https://www.googleapis.com/auth/fitness.blood_pressure.write", - "https://www.googleapis.com/auth/fitness.body.write", - "https://www.googleapis.com/auth/fitness.body_temperature.write", - "https://www.googleapis.com/auth/fitness.location.write", - "https://www.googleapis.com/auth/fitness.nutrition.write", - "https://www.googleapis.com/auth/fitness.oxygen_saturation.write", - "https://www.googleapis.com/auth/fitness.reproductive_health.write" - ] - }, - "get": { - "id": "fitness.users.dataSources.get", - "path": "{userId}/dataSources/{dataSourceId}", - "httpMethod": "GET", - "description": "Returns the specified data source.", - "parameters": { - "dataSourceId": { - "type": "string", - "description": "The data stream ID of the data source to retrieve.", - "required": true, - "location": "path" + "dataset": { + "methods": { + "aggregate": { + "description": "Aggregates data of a certain type or stream into buckets divided by a given type of boundary. Multiple data sets of multiple types and from multiple sources can be aggreated into exactly one bucket type per request.", + "httpMethod": "POST", + "id": "fitness.users.dataset.aggregate", + "parameterOrder": [ + "userId" + ], + "parameters": { + "userId": { + "description": "Aggregate data for the person identified. Use me to indicate the authenticated user. Only me is supported at this time.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{userId}/dataset:aggregate", + "request": { + "$ref": "AggregateRequest" + }, + "response": { + "$ref": "AggregateResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/fitness.activity.read", + "https://www.googleapis.com/auth/fitness.activity.write", + "https://www.googleapis.com/auth/fitness.blood_glucose.read", + "https://www.googleapis.com/auth/fitness.blood_glucose.write", + "https://www.googleapis.com/auth/fitness.blood_pressure.read", + "https://www.googleapis.com/auth/fitness.blood_pressure.write", + "https://www.googleapis.com/auth/fitness.body.read", + "https://www.googleapis.com/auth/fitness.body.write", + "https://www.googleapis.com/auth/fitness.body_temperature.read", + "https://www.googleapis.com/auth/fitness.body_temperature.write", + "https://www.googleapis.com/auth/fitness.location.read", + "https://www.googleapis.com/auth/fitness.location.write", + "https://www.googleapis.com/auth/fitness.nutrition.read", + "https://www.googleapis.com/auth/fitness.nutrition.write", + "https://www.googleapis.com/auth/fitness.oxygen_saturation.read", + "https://www.googleapis.com/auth/fitness.oxygen_saturation.write", + "https://www.googleapis.com/auth/fitness.reproductive_health.read", + "https://www.googleapis.com/auth/fitness.reproductive_health.write" + ] + } + } }, - "userId": { - "type": "string", - "description": "Retrieve a data source for the person identified. Use me to indicate the authenticated user. Only me is supported at this time.", - "required": true, - "location": "path" + "sessions": { + "methods": { + "delete": { + "description": "Deletes a session specified by the given session ID.", + "httpMethod": "DELETE", + "id": "fitness.users.sessions.delete", + "parameterOrder": [ + "userId", + "sessionId" + ], + "parameters": { + "currentTimeMillis": { + "description": "The client's current time in milliseconds since epoch.", + "format": "int64", + "location": "query", + "type": "string" + }, + "sessionId": { + "description": "The ID of the session to be deleted.", + "location": "path", + "required": true, + "type": "string" + }, + "userId": { + "description": "Delete a session for the person identified. Use me to indicate the authenticated user. Only me is supported at this time.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{userId}/sessions/{sessionId}", + "scopes": [ + "https://www.googleapis.com/auth/fitness.activity.write" + ] + }, + "list": { + "description": "Lists sessions previously created.", + "httpMethod": "GET", + "id": "fitness.users.sessions.list", + "parameterOrder": [ + "userId" + ], + "parameters": { + "endTime": { + "description": "An RFC3339 timestamp. Only sessions ending between the start and end times will be included in the response.", + "location": "query", + "type": "string" + }, + "includeDeleted": { + "description": "If true, deleted sessions will be returned. When set to true, sessions returned in this response will only have an ID and will not have any other fields.", + "location": "query", + "type": "boolean" + }, + "pageToken": { + "description": "The continuation token, which is used to page through large result sets. To get the next page of results, set this parameter to the value of nextPageToken from the previous response.", + "location": "query", + "type": "string" + }, + "startTime": { + "description": "An RFC3339 timestamp. Only sessions ending between the start and end times will be included in the response.", + "location": "query", + "type": "string" + }, + "userId": { + "description": "List sessions for the person identified. Use me to indicate the authenticated user. Only me is supported at this time.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{userId}/sessions", + "response": { + "$ref": "ListSessionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/fitness.activity.read", + "https://www.googleapis.com/auth/fitness.activity.write", + "https://www.googleapis.com/auth/fitness.blood_glucose.read", + "https://www.googleapis.com/auth/fitness.blood_glucose.write", + "https://www.googleapis.com/auth/fitness.blood_pressure.read", + "https://www.googleapis.com/auth/fitness.blood_pressure.write", + "https://www.googleapis.com/auth/fitness.body.read", + "https://www.googleapis.com/auth/fitness.body.write", + "https://www.googleapis.com/auth/fitness.body_temperature.read", + "https://www.googleapis.com/auth/fitness.body_temperature.write", + "https://www.googleapis.com/auth/fitness.location.read", + "https://www.googleapis.com/auth/fitness.location.write", + "https://www.googleapis.com/auth/fitness.nutrition.read", + "https://www.googleapis.com/auth/fitness.nutrition.write", + "https://www.googleapis.com/auth/fitness.oxygen_saturation.read", + "https://www.googleapis.com/auth/fitness.oxygen_saturation.write", + "https://www.googleapis.com/auth/fitness.reproductive_health.read", + "https://www.googleapis.com/auth/fitness.reproductive_health.write" + ] + }, + "update": { + "description": "Updates or insert a given session.", + "httpMethod": "PUT", + "id": "fitness.users.sessions.update", + "parameterOrder": [ + "userId", + "sessionId" + ], + "parameters": { + "currentTimeMillis": { + "description": "The client's current time in milliseconds since epoch.", + "format": "int64", + "location": "query", + "type": "string" + }, + "sessionId": { + "description": "The ID of the session to be created.", + "location": "path", + "required": true, + "type": "string" + }, + "userId": { + "description": "Create sessions for the person identified. Use me to indicate the authenticated user. Only me is supported at this time.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{userId}/sessions/{sessionId}", + "request": { + "$ref": "Session" + }, + "response": { + "$ref": "Session" + }, + "scopes": [ + "https://www.googleapis.com/auth/fitness.activity.write" + ] + } + } + } + } + } + }, + "revision": "20170922", + "rootUrl": "https://www.googleapis.com/", + "schemas": { + "AggregateBucket": { + "id": "AggregateBucket", + "properties": { + "activity": { + "description": "Available for Bucket.Type.ACTIVITY_TYPE, Bucket.Type.ACTIVITY_SEGMENT", + "format": "int32", + "type": "integer" + }, + "dataset": { + "description": "There will be one dataset per AggregateBy in the request.", + "items": { + "$ref": "Dataset" + }, + "type": "array" + }, + "endTimeMillis": { + "description": "The end time for the aggregated data, in milliseconds since epoch, inclusive.", + "format": "int64", + "type": "string" + }, + "session": { + "$ref": "Session", + "description": "Available for Bucket.Type.SESSION" + }, + "startTimeMillis": { + "description": "The start time for the aggregated data, in milliseconds since epoch, inclusive.", + "format": "int64", + "type": "string" + }, + "type": { + "description": "The type of a bucket signifies how the data aggregation is performed in the bucket.", + "enum": [ + "activitySegment", + "activityType", + "session", + "time", + "unknown" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "" + ], + "type": "string" } - }, - "parameterOrder": [ - "userId", - "dataSourceId" - ], - "response": { - "$ref": "DataSource" - }, - "scopes": [ - "https://www.googleapis.com/auth/fitness.activity.read", - "https://www.googleapis.com/auth/fitness.activity.write", - "https://www.googleapis.com/auth/fitness.blood_glucose.read", - "https://www.googleapis.com/auth/fitness.blood_glucose.write", - "https://www.googleapis.com/auth/fitness.blood_pressure.read", - "https://www.googleapis.com/auth/fitness.blood_pressure.write", - "https://www.googleapis.com/auth/fitness.body.read", - "https://www.googleapis.com/auth/fitness.body.write", - "https://www.googleapis.com/auth/fitness.body_temperature.read", - "https://www.googleapis.com/auth/fitness.body_temperature.write", - "https://www.googleapis.com/auth/fitness.location.read", - "https://www.googleapis.com/auth/fitness.location.write", - "https://www.googleapis.com/auth/fitness.nutrition.read", - "https://www.googleapis.com/auth/fitness.nutrition.write", - "https://www.googleapis.com/auth/fitness.oxygen_saturation.read", - "https://www.googleapis.com/auth/fitness.oxygen_saturation.write", - "https://www.googleapis.com/auth/fitness.reproductive_health.read", - "https://www.googleapis.com/auth/fitness.reproductive_health.write" - ] }, - "list": { - "id": "fitness.users.dataSources.list", - "path": "{userId}/dataSources", - "httpMethod": "GET", - "description": "Lists all data sources that are visible to the developer, using the OAuth scopes provided. The list is not exhaustive; the user may have private data sources that are only visible to other developers, or calls using other scopes.", - "parameters": { + "type": "object" + }, + "AggregateBy": { + "description": "The specification of which data to aggregate.", + "id": "AggregateBy", + "properties": { + "dataSourceId": { + "description": "A data source ID to aggregate. Mutually exclusive of dataTypeName. Only data from the specified data source ID will be included in the aggregation. The dataset in the response will have the same data source ID.", + "type": "string" + }, "dataTypeName": { - "type": "string", - "description": "The names of data types to include in the list. If not specified, all data sources will be returned.", - "repeated": true, - "location": "query" - }, - "userId": { - "type": "string", - "description": "List data sources for the person identified. Use me to indicate the authenticated user. Only me is supported at this time.", - "required": true, - "location": "path" + "description": "The data type to aggregate. All data sources providing this data type will contribute data to the aggregation. The response will contain a single dataset for this data type name. The dataset will have a data source ID of derived:com.google.:com.google.android.gms:aggregated", + "type": "string" } - }, - "parameterOrder": [ - "userId" - ], - "response": { - "$ref": "ListDataSourcesResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/fitness.activity.read", - "https://www.googleapis.com/auth/fitness.activity.write", - "https://www.googleapis.com/auth/fitness.blood_glucose.read", - "https://www.googleapis.com/auth/fitness.blood_glucose.write", - "https://www.googleapis.com/auth/fitness.blood_pressure.read", - "https://www.googleapis.com/auth/fitness.blood_pressure.write", - "https://www.googleapis.com/auth/fitness.body.read", - "https://www.googleapis.com/auth/fitness.body.write", - "https://www.googleapis.com/auth/fitness.body_temperature.read", - "https://www.googleapis.com/auth/fitness.body_temperature.write", - "https://www.googleapis.com/auth/fitness.location.read", - "https://www.googleapis.com/auth/fitness.location.write", - "https://www.googleapis.com/auth/fitness.nutrition.read", - "https://www.googleapis.com/auth/fitness.nutrition.write", - "https://www.googleapis.com/auth/fitness.oxygen_saturation.read", - "https://www.googleapis.com/auth/fitness.oxygen_saturation.write", - "https://www.googleapis.com/auth/fitness.reproductive_health.read", - "https://www.googleapis.com/auth/fitness.reproductive_health.write" - ] }, - "patch": { - "id": "fitness.users.dataSources.patch", - "path": "{userId}/dataSources/{dataSourceId}", - "httpMethod": "PATCH", - "description": "Updates the specified data source. The dataStreamId, dataType, type, dataStreamName, and device properties with the exception of version, cannot be modified.\n\nData sources are identified by their dataStreamId. This method supports patch semantics.", - "parameters": { - "dataSourceId": { - "type": "string", - "description": "The data stream ID of the data source to update.", - "required": true, - "location": "path" - }, - "userId": { - "type": "string", - "description": "Update the data source for the person identified. Use me to indicate the authenticated user. Only me is supported at this time.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "userId", - "dataSourceId" - ], - "request": { - "$ref": "DataSource" - }, - "response": { - "$ref": "DataSource" - }, - "scopes": [ - "https://www.googleapis.com/auth/fitness.activity.write", - "https://www.googleapis.com/auth/fitness.blood_glucose.write", - "https://www.googleapis.com/auth/fitness.blood_pressure.write", - "https://www.googleapis.com/auth/fitness.body.write", - "https://www.googleapis.com/auth/fitness.body_temperature.write", - "https://www.googleapis.com/auth/fitness.location.write", - "https://www.googleapis.com/auth/fitness.nutrition.write", - "https://www.googleapis.com/auth/fitness.oxygen_saturation.write", - "https://www.googleapis.com/auth/fitness.reproductive_health.write" - ] - }, - "update": { - "id": "fitness.users.dataSources.update", - "path": "{userId}/dataSources/{dataSourceId}", - "httpMethod": "PUT", - "description": "Updates the specified data source. The dataStreamId, dataType, type, dataStreamName, and device properties with the exception of version, cannot be modified.\n\nData sources are identified by their dataStreamId.", - "parameters": { - "dataSourceId": { - "type": "string", - "description": "The data stream ID of the data source to update.", - "required": true, - "location": "path" - }, - "userId": { - "type": "string", - "description": "Update the data source for the person identified. Use me to indicate the authenticated user. Only me is supported at this time.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "userId", - "dataSourceId" - ], - "request": { - "$ref": "DataSource" - }, - "response": { - "$ref": "DataSource" - }, - "scopes": [ - "https://www.googleapis.com/auth/fitness.activity.write", - "https://www.googleapis.com/auth/fitness.blood_glucose.write", - "https://www.googleapis.com/auth/fitness.blood_pressure.write", - "https://www.googleapis.com/auth/fitness.body.write", - "https://www.googleapis.com/auth/fitness.body_temperature.write", - "https://www.googleapis.com/auth/fitness.location.write", - "https://www.googleapis.com/auth/fitness.nutrition.write", - "https://www.googleapis.com/auth/fitness.oxygen_saturation.write", - "https://www.googleapis.com/auth/fitness.reproductive_health.write" - ] - } - }, - "resources": { - "dataPointChanges": { - "methods": { - "list": { - "id": "fitness.users.dataSources.dataPointChanges.list", - "path": "{userId}/dataSources/{dataSourceId}/dataPointChanges", - "httpMethod": "GET", - "description": "Queries for user's data point changes for a particular data source.", - "parameters": { - "dataSourceId": { - "type": "string", - "description": "The data stream ID of the data source that created the dataset.", - "required": true, - "location": "path" - }, - "limit": { - "type": "integer", - "description": "If specified, no more than this many data point changes will be included in the response.", - "format": "int32", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "The continuation token, which is used to page through large result sets. To get the next page of results, set this parameter to the value of nextPageToken from the previous response.", - "location": "query" - }, - "userId": { - "type": "string", - "description": "List data points for the person identified. Use me to indicate the authenticated user. Only me is supported at this time.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "userId", - "dataSourceId" - ], - "response": { - "$ref": "ListDataPointChangesResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/fitness.activity.read", - "https://www.googleapis.com/auth/fitness.activity.write", - "https://www.googleapis.com/auth/fitness.blood_glucose.read", - "https://www.googleapis.com/auth/fitness.blood_glucose.write", - "https://www.googleapis.com/auth/fitness.blood_pressure.read", - "https://www.googleapis.com/auth/fitness.blood_pressure.write", - "https://www.googleapis.com/auth/fitness.body.read", - "https://www.googleapis.com/auth/fitness.body.write", - "https://www.googleapis.com/auth/fitness.body_temperature.read", - "https://www.googleapis.com/auth/fitness.body_temperature.write", - "https://www.googleapis.com/auth/fitness.location.read", - "https://www.googleapis.com/auth/fitness.location.write", - "https://www.googleapis.com/auth/fitness.nutrition.read", - "https://www.googleapis.com/auth/fitness.nutrition.write", - "https://www.googleapis.com/auth/fitness.oxygen_saturation.read", - "https://www.googleapis.com/auth/fitness.oxygen_saturation.write", - "https://www.googleapis.com/auth/fitness.reproductive_health.read", - "https://www.googleapis.com/auth/fitness.reproductive_health.write" - ] - } - } - }, - "datasets": { - "methods": { - "delete": { - "id": "fitness.users.dataSources.datasets.delete", - "path": "{userId}/dataSources/{dataSourceId}/datasets/{datasetId}", - "httpMethod": "DELETE", - "description": "Performs an inclusive delete of all data points whose start and end times have any overlap with the time range specified by the dataset ID. For most data types, the entire data point will be deleted. For data types where the time span represents a consistent value (such as com.google.activity.segment), and a data point straddles either end point of the dataset, only the overlapping portion of the data point will be deleted.", - "parameters": { - "currentTimeMillis": { - "type": "string", - "description": "The client's current time in milliseconds since epoch.", - "format": "int64", - "location": "query" - }, - "dataSourceId": { - "type": "string", - "description": "The data stream ID of the data source that created the dataset.", - "required": true, - "location": "path" - }, - "datasetId": { - "type": "string", - "description": "Dataset identifier that is a composite of the minimum data point start time and maximum data point end time represented as nanoseconds from the epoch. The ID is formatted like: \"startTime-endTime\" where startTime and endTime are 64 bit integers.", - "required": true, - "location": "path" - }, - "modifiedTimeMillis": { - "type": "string", - "description": "When the operation was performed on the client.", - "format": "int64", - "location": "query" - }, - "userId": { - "type": "string", - "description": "Delete a dataset for the person identified. Use me to indicate the authenticated user. Only me is supported at this time.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "userId", - "dataSourceId", - "datasetId" - ], - "scopes": [ - "https://www.googleapis.com/auth/fitness.activity.write", - "https://www.googleapis.com/auth/fitness.blood_glucose.write", - "https://www.googleapis.com/auth/fitness.blood_pressure.write", - "https://www.googleapis.com/auth/fitness.body.write", - "https://www.googleapis.com/auth/fitness.body_temperature.write", - "https://www.googleapis.com/auth/fitness.location.write", - "https://www.googleapis.com/auth/fitness.nutrition.write", - "https://www.googleapis.com/auth/fitness.oxygen_saturation.write", - "https://www.googleapis.com/auth/fitness.reproductive_health.write" - ] - }, - "get": { - "id": "fitness.users.dataSources.datasets.get", - "path": "{userId}/dataSources/{dataSourceId}/datasets/{datasetId}", - "httpMethod": "GET", - "description": "Returns a dataset containing all data points whose start and end times overlap with the specified range of the dataset minimum start time and maximum end time. Specifically, any data point whose start time is less than or equal to the dataset end time and whose end time is greater than or equal to the dataset start time.", - "parameters": { - "dataSourceId": { - "type": "string", - "description": "The data stream ID of the data source that created the dataset.", - "required": true, - "location": "path" - }, - "datasetId": { - "type": "string", - "description": "Dataset identifier that is a composite of the minimum data point start time and maximum data point end time represented as nanoseconds from the epoch. The ID is formatted like: \"startTime-endTime\" where startTime and endTime are 64 bit integers.", - "required": true, - "location": "path" - }, - "limit": { - "type": "integer", - "description": "If specified, no more than this many data points will be included in the dataset. If there are more data points in the dataset, nextPageToken will be set in the dataset response.", - "format": "int32", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "The continuation token, which is used to page through large datasets. To get the next page of a dataset, set this parameter to the value of nextPageToken from the previous response. Each subsequent call will yield a partial dataset with data point end timestamps that are strictly smaller than those in the previous partial response.", - "location": "query" - }, - "userId": { - "type": "string", - "description": "Retrieve a dataset for the person identified. Use me to indicate the authenticated user. Only me is supported at this time.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "userId", - "dataSourceId", - "datasetId" - ], - "response": { - "$ref": "Dataset" - }, - "scopes": [ - "https://www.googleapis.com/auth/fitness.activity.read", - "https://www.googleapis.com/auth/fitness.activity.write", - "https://www.googleapis.com/auth/fitness.blood_glucose.read", - "https://www.googleapis.com/auth/fitness.blood_glucose.write", - "https://www.googleapis.com/auth/fitness.blood_pressure.read", - "https://www.googleapis.com/auth/fitness.blood_pressure.write", - "https://www.googleapis.com/auth/fitness.body.read", - "https://www.googleapis.com/auth/fitness.body.write", - "https://www.googleapis.com/auth/fitness.body_temperature.read", - "https://www.googleapis.com/auth/fitness.body_temperature.write", - "https://www.googleapis.com/auth/fitness.location.read", - "https://www.googleapis.com/auth/fitness.location.write", - "https://www.googleapis.com/auth/fitness.nutrition.read", - "https://www.googleapis.com/auth/fitness.nutrition.write", - "https://www.googleapis.com/auth/fitness.oxygen_saturation.read", - "https://www.googleapis.com/auth/fitness.oxygen_saturation.write", - "https://www.googleapis.com/auth/fitness.reproductive_health.read", - "https://www.googleapis.com/auth/fitness.reproductive_health.write" - ] - }, - "patch": { - "id": "fitness.users.dataSources.datasets.patch", - "path": "{userId}/dataSources/{dataSourceId}/datasets/{datasetId}", - "httpMethod": "PATCH", - "description": "Adds data points to a dataset. The dataset need not be previously created. All points within the given dataset will be returned with subsquent calls to retrieve this dataset. Data points can belong to more than one dataset. This method does not use patch semantics.", - "parameters": { - "currentTimeMillis": { - "type": "string", - "description": "The client's current time in milliseconds since epoch. Note that the minStartTimeNs and maxEndTimeNs properties in the request body are in nanoseconds instead of milliseconds.", - "format": "int64", - "location": "query" - }, - "dataSourceId": { - "type": "string", - "description": "The data stream ID of the data source that created the dataset.", - "required": true, - "location": "path" - }, - "datasetId": { - "type": "string", - "description": "Dataset identifier that is a composite of the minimum data point start time and maximum data point end time represented as nanoseconds from the epoch. The ID is formatted like: \"startTime-endTime\" where startTime and endTime are 64 bit integers.", - "required": true, - "location": "path" - }, - "userId": { - "type": "string", - "description": "Patch a dataset for the person identified. Use me to indicate the authenticated user. Only me is supported at this time.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "userId", - "dataSourceId", - "datasetId" - ], - "request": { - "$ref": "Dataset" - }, - "response": { - "$ref": "Dataset" - }, - "scopes": [ - "https://www.googleapis.com/auth/fitness.activity.write", - "https://www.googleapis.com/auth/fitness.blood_glucose.write", - "https://www.googleapis.com/auth/fitness.blood_pressure.write", - "https://www.googleapis.com/auth/fitness.body.write", - "https://www.googleapis.com/auth/fitness.body_temperature.write", - "https://www.googleapis.com/auth/fitness.location.write", - "https://www.googleapis.com/auth/fitness.nutrition.write", - "https://www.googleapis.com/auth/fitness.oxygen_saturation.write", - "https://www.googleapis.com/auth/fitness.reproductive_health.write" - ] - } - } - } - } + "type": "object" }, - "dataset": { - "methods": { - "aggregate": { - "id": "fitness.users.dataset.aggregate", - "path": "{userId}/dataset:aggregate", - "httpMethod": "POST", - "description": "Aggregates data of a certain type or stream into buckets divided by a given type of boundary. Multiple data sets of multiple types and from multiple sources can be aggreated into exactly one bucket type per request.", - "parameters": { - "userId": { - "type": "string", - "description": "Aggregate data for the person identified. Use me to indicate the authenticated user. Only me is supported at this time.", - "required": true, - "location": "path" + "AggregateRequest": { + "description": "Next id: 10", + "id": "AggregateRequest", + "properties": { + "aggregateBy": { + "annotations": { + "required": [ + "fitness.users.dataset.aggregate" + ] + }, + "description": "The specification of data to be aggregated. At least one aggregateBy spec must be provided. All data that is specified will be aggregated using the same bucketing criteria. There will be one dataset in the response for every aggregateBy spec.", + "items": { + "$ref": "AggregateBy" + }, + "type": "array" + }, + "bucketByActivitySegment": { + "$ref": "BucketByActivity", + "description": "Specifies that data be aggregated each activity segment recored for a user. Similar to bucketByActivitySegment, but bucketing is done for each activity segment rather than all segments of the same type. Mutually exclusive of other bucketing specifications." + }, + "bucketByActivityType": { + "$ref": "BucketByActivity", + "description": "Specifies that data be aggregated by the type of activity being performed when the data was recorded. All data that was recorded during a certain activity type (for the given time range) will be aggregated into the same bucket. Data that was recorded while the user was not active will not be included in the response. Mutually exclusive of other bucketing specifications." + }, + "bucketBySession": { + "$ref": "BucketBySession", + "description": "Specifies that data be aggregated by user sessions. Data that does not fall within the time range of a session will not be included in the response. Mutually exclusive of other bucketing specifications." + }, + "bucketByTime": { + "$ref": "BucketByTime", + "description": "Specifies that data be aggregated by a single time interval. Mutually exclusive of other bucketing specifications." + }, + "endTimeMillis": { + "annotations": { + "required": [ + "fitness.users.dataset.aggregate" + ] + }, + "description": "The end of a window of time. Data that intersects with this time window will be aggregated. The time is in milliseconds since epoch, inclusive.", + "format": "int64", + "type": "string" + }, + "filteredDataQualityStandard": { + "description": "A list of acceptable data quality standards. Only data points which conform to at least one of the specified data quality standards will be returned. If the list is empty, all data points are returned.", + "items": { + "enum": [ + "dataQualityBloodGlucoseIso151972003", + "dataQualityBloodGlucoseIso151972013", + "dataQualityBloodPressureAami", + "dataQualityBloodPressureBhsAA", + "dataQualityBloodPressureBhsAB", + "dataQualityBloodPressureBhsBA", + "dataQualityBloodPressureBhsBB", + "dataQualityBloodPressureEsh2002", + "dataQualityBloodPressureEsh2010", + "dataQualityUnknown" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "type": "array" + }, + "startTimeMillis": { + "annotations": { + "required": [ + "fitness.users.dataset.aggregate" + ] + }, + "description": "The start of a window of time. Data that intersects with this time window will be aggregated. The time is in milliseconds since epoch, inclusive.", + "format": "int64", + "type": "string" } - }, - "parameterOrder": [ - "userId" - ], - "request": { - "$ref": "AggregateRequest" - }, - "response": { - "$ref": "AggregateResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/fitness.activity.read", - "https://www.googleapis.com/auth/fitness.activity.write", - "https://www.googleapis.com/auth/fitness.blood_glucose.read", - "https://www.googleapis.com/auth/fitness.blood_glucose.write", - "https://www.googleapis.com/auth/fitness.blood_pressure.read", - "https://www.googleapis.com/auth/fitness.blood_pressure.write", - "https://www.googleapis.com/auth/fitness.body.read", - "https://www.googleapis.com/auth/fitness.body.write", - "https://www.googleapis.com/auth/fitness.body_temperature.read", - "https://www.googleapis.com/auth/fitness.body_temperature.write", - "https://www.googleapis.com/auth/fitness.location.read", - "https://www.googleapis.com/auth/fitness.location.write", - "https://www.googleapis.com/auth/fitness.nutrition.read", - "https://www.googleapis.com/auth/fitness.nutrition.write", - "https://www.googleapis.com/auth/fitness.oxygen_saturation.read", - "https://www.googleapis.com/auth/fitness.oxygen_saturation.write", - "https://www.googleapis.com/auth/fitness.reproductive_health.read", - "https://www.googleapis.com/auth/fitness.reproductive_health.write" - ] - } - } + }, + "type": "object" }, - "sessions": { - "methods": { - "delete": { - "id": "fitness.users.sessions.delete", - "path": "{userId}/sessions/{sessionId}", - "httpMethod": "DELETE", - "description": "Deletes a session specified by the given session ID.", - "parameters": { - "currentTimeMillis": { - "type": "string", - "description": "The client's current time in milliseconds since epoch.", - "format": "int64", - "location": "query" - }, - "sessionId": { - "type": "string", - "description": "The ID of the session to be deleted.", - "required": true, - "location": "path" - }, - "userId": { - "type": "string", - "description": "Delete a session for the person identified. Use me to indicate the authenticated user. Only me is supported at this time.", - "required": true, - "location": "path" + "AggregateResponse": { + "id": "AggregateResponse", + "properties": { + "bucket": { + "description": "A list of buckets containing the aggregated data.", + "items": { + "$ref": "AggregateBucket" + }, + "type": "array" } - }, - "parameterOrder": [ - "userId", - "sessionId" - ], - "scopes": [ - "https://www.googleapis.com/auth/fitness.activity.write" - ] }, - "list": { - "id": "fitness.users.sessions.list", - "path": "{userId}/sessions", - "httpMethod": "GET", - "description": "Lists sessions previously created.", - "parameters": { - "endTime": { - "type": "string", - "description": "An RFC3339 timestamp. Only sessions ending between the start and end times will be included in the response.", - "location": "query" + "type": "object" + }, + "Application": { + "description": "", + "id": "Application", + "properties": { + "detailsUrl": { + "description": "An optional URI that can be used to link back to the application.", + "type": "string" }, - "includeDeleted": { - "type": "boolean", - "description": "If true, deleted sessions will be returned. When set to true, sessions returned in this response will only have an ID and will not have any other fields.", - "location": "query" + "name": { + "annotations": { + "required": [ + "fitness.users.dataSources.create", + "fitness.users.dataSources.update", + "fitness.users.sessions.update" + ] + }, + "description": "The name of this application. This is required for REST clients, but we do not enforce uniqueness of this name. It is provided as a matter of convenience for other developers who would like to identify which REST created an Application or Data Source.", + "type": "string" }, - "pageToken": { - "type": "string", - "description": "The continuation token, which is used to page through large result sets. To get the next page of results, set this parameter to the value of nextPageToken from the previous response.", - "location": "query" + "packageName": { + "description": "Package name for this application. This is used as a unique identifier when created by Android applications, but cannot be specified by REST clients. REST clients will have their developer project number reflected into the Data Source data stream IDs, instead of the packageName.", + "type": "string" }, - "startTime": { - "type": "string", - "description": "An RFC3339 timestamp. Only sessions ending between the start and end times will be included in the response.", - "location": "query" - }, - "userId": { - "type": "string", - "description": "List sessions for the person identified. Use me to indicate the authenticated user. Only me is supported at this time.", - "required": true, - "location": "path" + "version": { + "description": "Version of the application. You should update this field whenever the application changes in a way that affects the computation of the data.", + "type": "string" } - }, - "parameterOrder": [ - "userId" - ], - "response": { - "$ref": "ListSessionsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/fitness.activity.read", - "https://www.googleapis.com/auth/fitness.activity.write", - "https://www.googleapis.com/auth/fitness.blood_glucose.read", - "https://www.googleapis.com/auth/fitness.blood_glucose.write", - "https://www.googleapis.com/auth/fitness.blood_pressure.read", - "https://www.googleapis.com/auth/fitness.blood_pressure.write", - "https://www.googleapis.com/auth/fitness.body.read", - "https://www.googleapis.com/auth/fitness.body.write", - "https://www.googleapis.com/auth/fitness.body_temperature.read", - "https://www.googleapis.com/auth/fitness.body_temperature.write", - "https://www.googleapis.com/auth/fitness.location.read", - "https://www.googleapis.com/auth/fitness.location.write", - "https://www.googleapis.com/auth/fitness.nutrition.read", - "https://www.googleapis.com/auth/fitness.nutrition.write", - "https://www.googleapis.com/auth/fitness.oxygen_saturation.read", - "https://www.googleapis.com/auth/fitness.oxygen_saturation.write", - "https://www.googleapis.com/auth/fitness.reproductive_health.read", - "https://www.googleapis.com/auth/fitness.reproductive_health.write" - ] }, - "update": { - "id": "fitness.users.sessions.update", - "path": "{userId}/sessions/{sessionId}", - "httpMethod": "PUT", - "description": "Updates or insert a given session.", - "parameters": { - "currentTimeMillis": { - "type": "string", - "description": "The client's current time in milliseconds since epoch.", - "format": "int64", - "location": "query" + "type": "object" + }, + "BucketByActivity": { + "id": "BucketByActivity", + "properties": { + "activityDataSourceId": { + "description": "The default activity stream will be used if a specific activityDataSourceId is not specified.", + "type": "string" }, - "sessionId": { - "type": "string", - "description": "The ID of the session to be created.", - "required": true, - "location": "path" - }, - "userId": { - "type": "string", - "description": "Create sessions for the person identified. Use me to indicate the authenticated user. Only me is supported at this time.", - "required": true, - "location": "path" + "minDurationMillis": { + "description": "Specifies that only activity segments of duration longer than minDurationMillis are considered and used as a container for aggregated data.", + "format": "int64", + "type": "string" } - }, - "parameterOrder": [ - "userId", - "sessionId" - ], - "request": { - "$ref": "Session" - }, - "response": { - "$ref": "Session" - }, - "scopes": [ - "https://www.googleapis.com/auth/fitness.activity.write" - ] - } - } + }, + "type": "object" + }, + "BucketBySession": { + "id": "BucketBySession", + "properties": { + "minDurationMillis": { + "description": "Specifies that only sessions of duration longer than minDurationMillis are considered and used as a container for aggregated data.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "BucketByTime": { + "id": "BucketByTime", + "properties": { + "durationMillis": { + "description": "Specifies that result buckets aggregate data by exactly durationMillis time frames. Time frames that contain no data will be included in the response with an empty dataset.", + "format": "int64", + "type": "string" + }, + "period": { + "$ref": "BucketByTimePeriod" + } + }, + "type": "object" + }, + "BucketByTimePeriod": { + "id": "BucketByTimePeriod", + "properties": { + "timeZoneId": { + "description": "org.joda.timezone.DateTimeZone", + "type": "string" + }, + "type": { + "enum": [ + "day", + "month", + "week" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, + "value": { + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "DataPoint": { + "description": "Represents a single data point, generated by a particular data source. A data point holds a value for each field, an end timestamp and an optional start time. The exact semantics of each of these attributes are specified in the documentation for the particular data type.\n\nA data point can represent an instantaneous measurement, reading or input observation, as well as averages or aggregates over a time interval. Check the data type documentation to determine which is the case for a particular data type.\n\nData points always contain one value for each field of the data type.", + "id": "DataPoint", + "properties": { + "computationTimeMillis": { + "description": "Used for version checking during transformation; that is, a datapoint can only replace another datapoint that has an older computation time stamp.", + "format": "int64", + "type": "string" + }, + "dataTypeName": { + "annotations": { + "required": [ + "fitness.users.dataSources.datasets.patch" + ] + }, + "description": "The data type defining the format of the values in this data point.", + "type": "string" + }, + "endTimeNanos": { + "annotations": { + "required": [ + "fitness.users.dataSources.datasets.patch" + ] + }, + "description": "The end time of the interval represented by this data point, in nanoseconds since epoch.", + "format": "int64", + "type": "string" + }, + "modifiedTimeMillis": { + "description": "Indicates the last time this data point was modified. Useful only in contexts where we are listing the data changes, rather than representing the current state of the data.", + "format": "int64", + "type": "string" + }, + "originDataSourceId": { + "description": "If the data point is contained in a dataset for a derived data source, this field will be populated with the data source stream ID that created the data point originally.", + "type": "string" + }, + "rawTimestampNanos": { + "description": "The raw timestamp from the original SensorEvent.", + "format": "int64", + "type": "string" + }, + "startTimeNanos": { + "annotations": { + "required": [ + "fitness.users.dataSources.datasets.patch" + ] + }, + "description": "The start time of the interval represented by this data point, in nanoseconds since epoch.", + "format": "int64", + "type": "string" + }, + "value": { + "annotations": { + "required": [ + "fitness.users.dataSources.datasets.patch" + ] + }, + "description": "Values of each data type field for the data point. It is expected that each value corresponding to a data type field will occur in the same order that the field is listed with in the data type specified in a data source.\n\nOnly one of integer and floating point fields will be populated, depending on the format enum value within data source's type field.", + "items": { + "$ref": "Value" + }, + "type": "array" + } + }, + "type": "object" + }, + "DataSource": { + "description": "Definition of a unique source of sensor data. Data sources can expose raw data coming from hardware sensors on local or companion devices. They can also expose derived data, created by transforming or merging other data sources. Multiple data sources can exist for the same data type. Every data point inserted into or read from this service has an associated data source.\n\nThe data source contains enough information to uniquely identify its data, including the hardware device and the application that collected and/or transformed the data. It also holds useful metadata, such as the hardware and application versions, and the device type.\n\nEach data source produces a unique stream of data, with a unique identifier. Not all changes to data source affect the stream identifier, so that data collected by updated versions of the same application/device can still be considered to belong to the same data stream.", + "id": "DataSource", + "properties": { + "application": { + "$ref": "Application", + "annotations": { + "required": [ + "fitness.users.dataSources.create", + "fitness.users.dataSources.update" + ] + }, + "description": "Information about an application which feeds sensor data into the platform." + }, + "dataQualityStandard": { + "description": "", + "items": { + "enum": [ + "dataQualityBloodGlucoseIso151972003", + "dataQualityBloodGlucoseIso151972013", + "dataQualityBloodPressureAami", + "dataQualityBloodPressureBhsAA", + "dataQualityBloodPressureBhsAB", + "dataQualityBloodPressureBhsBA", + "dataQualityBloodPressureBhsBB", + "dataQualityBloodPressureEsh2002", + "dataQualityBloodPressureEsh2010", + "dataQualityUnknown" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "type": "array" + }, + "dataStreamId": { + "annotations": { + "required": [ + "fitness.users.dataSources.update" + ] + }, + "description": "A unique identifier for the data stream produced by this data source. The identifier includes:\n\n \n- The physical device's manufacturer, model, and serial number (UID). \n- The application's package name or name. Package name is used when the data source was created by an Android application. The developer project number is used when the data source was created by a REST client. \n- The data source's type. \n- The data source's stream name. Note that not all attributes of the data source are used as part of the stream identifier. In particular, the version of the hardware/the application isn't used. This allows us to preserve the same stream through version updates. This also means that two DataSource objects may represent the same data stream even if they're not equal.\n\nThe exact format of the data stream ID created by an Android application is: type:dataType.name:application.packageName:device.manufacturer:device.model:device.uid:dataStreamName \n\nThe exact format of the data stream ID created by a REST client is: type:dataType.name:developer project number:device.manufacturer:device.model:device.uid:dataStreamName \n\nWhen any of the optional fields that comprise of the data stream ID are blank, they will be omitted from the data stream ID. The minimum viable data stream ID would be: type:dataType.name:developer project number\n\nFinally, the developer project number is obfuscated when read by any REST or Android client that did not create the data source. Only the data source creator will see the developer project number in clear and normal form.", + "type": "string" + }, + "dataStreamName": { + "description": "The stream name uniquely identifies this particular data source among other data sources of the same type from the same underlying producer. Setting the stream name is optional, but should be done whenever an application exposes two streams for the same data type, or when a device has two equivalent sensors.", + "type": "string" + }, + "dataType": { + "$ref": "DataType", + "annotations": { + "required": [ + "fitness.users.dataSources.create", + "fitness.users.dataSources.update" + ] + }, + "description": "The data type defines the schema for a stream of data being collected by, inserted into, or queried from the Fitness API." + }, + "device": { + "$ref": "Device", + "annotations": { + "required": [ + "fitness.users.dataSources.create", + "fitness.users.dataSources.update" + ] + }, + "description": "Representation of an integrated device (such as a phone or a wearable) that can hold sensors." + }, + "name": { + "description": "An end-user visible name for this data source.", + "type": "string" + }, + "type": { + "annotations": { + "required": [ + "fitness.users.dataSources.create", + "fitness.users.dataSources.update" + ] + }, + "description": "A constant describing the type of this data source. Indicates whether this data source produces raw or derived data.", + "enum": [ + "derived", + "raw" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "DataType": { + "description": "", + "id": "DataType", + "properties": { + "field": { + "annotations": { + "required": [ + "fitness.users.dataSources.create", + "fitness.users.dataSources.update" + ] + }, + "description": "A field represents one dimension of a data type.", + "items": { + "$ref": "DataTypeField" + }, + "type": "array" + }, + "name": { + "annotations": { + "required": [ + "fitness.users.dataSources.create", + "fitness.users.dataSources.update" + ] + }, + "description": "Each data type has a unique, namespaced, name. All data types in the com.google namespace are shared as part of the platform.", + "type": "string" + } + }, + "type": "object" + }, + "DataTypeField": { + "description": "In case of multi-dimensional data (such as an accelerometer with x, y, and z axes) each field represents one dimension. Each data type field has a unique name which identifies it. The field also defines the format of the data (int, float, etc.).\n\nThis message is only instantiated in code and not used for wire comms or stored in any way.", + "id": "DataTypeField", + "properties": { + "format": { + "annotations": { + "required": [ + "fitness.users.dataSources.create", + "fitness.users.dataSources.update" + ] + }, + "description": "The different supported formats for each field in a data type.", + "enum": [ + "blob", + "floatList", + "floatPoint", + "integer", + "integerList", + "map", + "string" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "name": { + "annotations": { + "required": [ + "fitness.users.dataSources.create", + "fitness.users.dataSources.update" + ] + }, + "description": "Defines the name and format of data. Unlike data type names, field names are not namespaced, and only need to be unique within the data type.", + "type": "string" + }, + "optional": { + "type": "boolean" + } + }, + "type": "object" + }, + "Dataset": { + "description": "A dataset represents a projection container for data points. They do not carry any info of their own. Datasets represent a set of data points from a particular data source. A data point can be found in more than one dataset.", + "id": "Dataset", + "properties": { + "dataSourceId": { + "annotations": { + "required": [ + "fitness.users.dataSources.datasets.patch" + ] + }, + "description": "The data stream ID of the data source that created the points in this dataset.", + "type": "string" + }, + "maxEndTimeNs": { + "annotations": { + "required": [ + "fitness.users.dataSources.datasets.patch" + ] + }, + "description": "The largest end time of all data points in this possibly partial representation of the dataset. Time is in nanoseconds from epoch. This should also match the first part of the dataset identifier.", + "format": "int64", + "type": "string" + }, + "minStartTimeNs": { + "annotations": { + "required": [ + "fitness.users.dataSources.datasets.patch" + ] + }, + "description": "The smallest start time of all data points in this possibly partial representation of the dataset. Time is in nanoseconds from epoch. This should also match the first part of the dataset identifier.", + "format": "int64", + "type": "string" + }, + "nextPageToken": { + "description": "This token will be set when a dataset is received in response to a GET request and the dataset is too large to be included in a single response. Provide this value in a subsequent GET request to return the next page of data points within this dataset.", + "type": "string" + }, + "point": { + "annotations": { + "required": [ + "fitness.users.dataSources.datasets.patch" + ] + }, + "description": "A partial list of data points contained in the dataset, ordered by largest endTimeNanos first. This list is considered complete when retrieving a small dataset and partial when patching a dataset or retrieving a dataset that is too large to include in a single response.", + "items": { + "$ref": "DataPoint" + }, + "type": "array" + } + }, + "type": "object" + }, + "Device": { + "description": "Representation of an integrated device (such as a phone or a wearable) that can hold sensors. Each sensor is exposed as a data source.\n\nThe main purpose of the device information contained in this class is to identify the hardware of a particular data source. This can be useful in different ways, including: \n- Distinguishing two similar sensors on different devices (the step counter on two nexus 5 phones, for instance)\n- Display the source of data to the user (by using the device make / model)\n- Treat data differently depending on sensor type (accelerometers on a watch may give different patterns than those on a phone)\n- Build different analysis models for each device/version.", + "id": "Device", + "properties": { + "manufacturer": { + "annotations": { + "required": [ + "fitness.users.dataSources.create", + "fitness.users.dataSources.update" + ] + }, + "description": "Manufacturer of the product/hardware.", + "type": "string" + }, + "model": { + "annotations": { + "required": [ + "fitness.users.dataSources.create", + "fitness.users.dataSources.update" + ] + }, + "description": "End-user visible model name for the device.", + "type": "string" + }, + "type": { + "annotations": { + "required": [ + "fitness.users.dataSources.create", + "fitness.users.dataSources.update" + ] + }, + "description": "A constant representing the type of the device.", + "enum": [ + "chestStrap", + "headMounted", + "phone", + "scale", + "tablet", + "unknown", + "watch" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "uid": { + "annotations": { + "required": [ + "fitness.users.dataSources.create", + "fitness.users.dataSources.update" + ] + }, + "description": "The serial number or other unique ID for the hardware. This field is obfuscated when read by any REST or Android client that did not create the data source. Only the data source creator will see the uid field in clear and normal form.", + "type": "string" + }, + "version": { + "annotations": { + "required": [ + "fitness.users.dataSources.create", + "fitness.users.dataSources.update" + ] + }, + "description": "Version string for the device hardware/software.", + "type": "string" + } + }, + "type": "object" + }, + "ListDataPointChangesResponse": { + "id": "ListDataPointChangesResponse", + "properties": { + "dataSourceId": { + "description": "The data stream ID of the data source with data point changes.", + "type": "string" + }, + "deletedDataPoint": { + "description": "Deleted data points for the user. Note, for modifications this should be parsed before handling insertions.", + "items": { + "$ref": "DataPoint" + }, + "type": "array" + }, + "insertedDataPoint": { + "description": "Inserted data points for the user.", + "items": { + "$ref": "DataPoint" + }, + "type": "array" + }, + "nextPageToken": { + "description": "The continuation token, which is used to page through large result sets. Provide this value in a subsequent request to return the next page of results.", + "type": "string" + } + }, + "type": "object" + }, + "ListDataSourcesResponse": { + "id": "ListDataSourcesResponse", + "properties": { + "dataSource": { + "description": "A previously created data source.", + "items": { + "$ref": "DataSource" + }, + "type": "array" + } + }, + "type": "object" + }, + "ListSessionsResponse": { + "id": "ListSessionsResponse", + "properties": { + "deletedSession": { + "description": "If includeDeleted is set to true in the request, this list will contain sessions deleted with original end times that are within the startTime and endTime frame.", + "items": { + "$ref": "Session" + }, + "type": "array" + }, + "hasMoreData": { + "description": "Flag to indicate server has more data to transfer", + "type": "boolean" + }, + "nextPageToken": { + "description": "The continuation token, which is used to page through large result sets. Provide this value in a subsequent request to return the next page of results.", + "type": "string" + }, + "session": { + "description": "Sessions with an end time that is between startTime and endTime of the request.", + "items": { + "$ref": "Session" + }, + "type": "array" + } + }, + "type": "object" + }, + "MapValue": { + "description": "Holder object for the value of an entry in a map field of a data point.\n\nA map value supports a subset of the formats that the regular Value supports.", + "id": "MapValue", + "properties": { + "fpVal": { + "description": "Floating point value.", + "format": "double", + "type": "number" + } + }, + "type": "object" + }, + "Session": { + "description": "Sessions contain metadata, such as a user-friendly name and time interval information.", + "id": "Session", + "properties": { + "activeTimeMillis": { + "description": "Session active time. While start_time_millis and end_time_millis define the full session time, the active time can be shorter and specified by active_time_millis. If the inactive time during the session is known, it should also be inserted via a com.google.activity.segment data point with a STILL activity value", + "format": "int64", + "type": "string" + }, + "activityType": { + "annotations": { + "required": [ + "fitness.users.sessions.update" + ] + }, + "description": "The type of activity this session represents.", + "format": "int32", + "type": "integer" + }, + "application": { + "$ref": "Application", + "annotations": { + "required": [ + "fitness.users.sessions.update" + ] + }, + "description": "The application that created the session." + }, + "description": { + "description": "A description for this session.", + "type": "string" + }, + "endTimeMillis": { + "annotations": { + "required": [ + "fitness.users.sessions.update" + ] + }, + "description": "An end time, in milliseconds since epoch, inclusive.", + "format": "int64", + "type": "string" + }, + "id": { + "annotations": { + "required": [ + "fitness.users.sessions.update" + ] + }, + "description": "A client-generated identifier that is unique across all sessions owned by this particular user.", + "type": "string" + }, + "modifiedTimeMillis": { + "description": "A timestamp that indicates when the session was last modified.", + "format": "int64", + "type": "string" + }, + "name": { + "annotations": { + "required": [ + "fitness.users.sessions.update" + ] + }, + "description": "A human readable name of the session.", + "type": "string" + }, + "startTimeMillis": { + "annotations": { + "required": [ + "fitness.users.sessions.update" + ] + }, + "description": "A start time, in milliseconds since epoch, inclusive.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "Value": { + "description": "Holder object for the value of a single field in a data point.\n\nA field value has a particular format and is only ever set to one of an integer or a floating point value. LINT.IfChange", + "id": "Value", + "properties": { + "fpVal": { + "description": "Floating point value. When this is set, other values must not be set.", + "format": "double", + "type": "number" + }, + "intVal": { + "description": "Integer value. When this is set, other values must not be set.", + "format": "int32", + "type": "integer" + }, + "mapVal": { + "description": "Map value. The valid key space and units for the corresponding value of each entry should be documented as part of the data type definition. Keys should be kept small whenever possible. Data streams with large keys and high data frequency may be down sampled.", + "items": { + "$ref": "ValueMapValEntry" + }, + "type": "array" + }, + "stringVal": { + "description": "String value. When this is set, other values must not be set. Strings should be kept small whenever possible. Data streams with large string values and high data frequency may be down sampled.", + "type": "string" + } + }, + "type": "object" + }, + "ValueMapValEntry": { + "id": "ValueMapValEntry", + "properties": { + "key": { + "type": "string" + }, + "value": { + "$ref": "MapValue" + } + }, + "type": "object" } - } - } - } -} + }, + "servicePath": "fitness/v1/users/", + "title": "Fitness", + "version": "v1" +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/fusiontables/v1/fusiontables-api.json b/vendor/google.golang.org/api/fusiontables/v1/fusiontables-api.json index 51fc523e2..bb0068422 100644 --- a/vendor/google.golang.org/api/fusiontables/v1/fusiontables-api.json +++ b/vendor/google.golang.org/api/fusiontables/v1/fusiontables-api.json @@ -1,1826 +1,1826 @@ { - "kind": "discovery#restDescription", - "etag": "\"YWOzh2SDasdU84ArJnpYek-OMdg/hYetPnobfGbbTDN2IyE3ld5RWXw\"", - "discoveryVersion": "v1", - "id": "fusiontables:v1", - "name": "fusiontables", - "version": "v1", - "revision": "20170413", - "title": "Fusion Tables API", - "description": "API for working with Fusion Tables data.", - "ownerDomain": "google.com", - "ownerName": "Google", - "icons": { - "x16": "https://www.gstatic.com/images/branding/product/1x/googleg_16dp.png", - "x32": "https://www.gstatic.com/images/branding/product/1x/googleg_32dp.png" - }, - "documentationLink": "https://developers.google.com/fusiontables", - "protocol": "rest", - "baseUrl": "https://www.googleapis.com/fusiontables/v1/", - "basePath": "/fusiontables/v1/", - "rootUrl": "https://www.googleapis.com/", - "servicePath": "fusiontables/v1/", - "batchPath": "batch/fusiontables/v1", - "parameters": { - "alt": { - "type": "string", - "description": "Data format for the response.", - "default": "json", - "enum": [ - "csv", - "json" - ], - "enumDescriptions": [ - "Responses with Content-Type of text/csv", - "Responses with Content-Type of application/json" - ], - "location": "query" - }, - "fields": { - "type": "string", - "description": "Selector specifying which fields to include in a partial response.", - "location": "query" - }, - "key": { - "type": "string", - "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" - }, - "oauth_token": { - "type": "string", - "description": "OAuth 2.0 token for the current user.", - "location": "query" - }, - "prettyPrint": { - "type": "boolean", - "description": "Returns response with indentations and line breaks.", - "default": "true", - "location": "query" - }, - "quotaUser": { - "type": "string", - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", - "location": "query" - }, - "userIp": { - "type": "string", - "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", - "location": "query" - } - }, - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/fusiontables": { - "description": "Manage your Fusion Tables" - }, - "https://www.googleapis.com/auth/fusiontables.readonly": { - "description": "View your Fusion Tables" - } - } - } - }, - "schemas": { - "Bucket": { - "id": "Bucket", - "type": "object", - "description": "Specifies the minimum and maximum values, the color, opacity, icon and weight of a bucket within a StyleSetting.", - "properties": { - "color": { - "type": "string", - "description": "Color of line or the interior of a polygon in #RRGGBB format." - }, - "icon": { - "type": "string", - "description": "Icon name used for a point." - }, - "max": { - "type": "number", - "description": "Maximum value in the selected column for a row to be styled according to the bucket color, opacity, icon, or weight.", - "format": "double" - }, - "min": { - "type": "number", - "description": "Minimum value in the selected column for a row to be styled according to the bucket color, opacity, icon, or weight.", - "format": "double" - }, - "opacity": { - "type": "number", - "description": "Opacity of the color: 0.0 (transparent) to 1.0 (opaque).", - "format": "double" - }, - "weight": { - "type": "integer", - "description": "Width of a line (in pixels).", - "format": "int32" - } - } - }, - "Column": { - "id": "Column", - "type": "object", - "description": "Specifies the id, name and type of a column in a table.", - "properties": { - "baseColumn": { - "type": "object", - "description": "Optional identifier of the base column. If present, this column is derived from the specified base column.", - "properties": { - "columnId": { - "type": "integer", - "description": "The id of the column in the base table from which this column is derived.", - "format": "int32" - }, - "tableIndex": { - "type": "integer", - "description": "Offset to the entry in the list of base tables in the table definition.", - "format": "int32" - } - } - }, - "columnId": { - "type": "integer", - "description": "Identifier for the column.", - "format": "int32" - }, - "description": { - "type": "string", - "description": "Optional column description." - }, - "graph_predicate": { - "type": "string", - "description": "Optional column predicate. Used to map table to graph data model (subject,predicate,object) See http://www.w3.org/TR/2014/REC-rdf11-concepts-20140225/#data-model" - }, - "kind": { - "type": "string", - "description": "Type name: a template for an individual column.", - "default": "fusiontables#column" - }, - "name": { - "type": "string", - "description": "Required name of the column.", - "annotations": { - "required": [ - "fusiontables.column.insert" - ] - } - }, - "type": { - "type": "string", - "description": "Required type of the column.", - "annotations": { - "required": [ - "fusiontables.column.insert" - ] - } - } - } - }, - "ColumnList": { - "id": "ColumnList", - "type": "object", - "description": "Represents a list of columns in a table.", - "properties": { - "items": { - "type": "array", - "description": "List of all requested columns.", - "items": { - "$ref": "Column" - } - }, - "kind": { - "type": "string", - "description": "Type name: a list of all columns.", - "default": "fusiontables#columnList" - }, - "nextPageToken": { - "type": "string", - "description": "Token used to access the next page of this result. No token is displayed if there are no more pages left." - }, - "totalItems": { - "type": "integer", - "description": "Total number of columns for the table.", - "format": "int32" - } - } - }, - "Geometry": { - "id": "Geometry", - "type": "object", - "description": "Represents a Geometry object.", - "properties": { - "geometries": { - "type": "array", - "description": "The list of geometries in this geometry collection.", - "items": { - "type": "any" - } - }, - "geometry": { - "type": "any" - }, - "type": { - "type": "string", - "description": "Type: A collection of geometries.", - "default": "GeometryCollection" - } - } - }, - "Import": { - "id": "Import", - "type": "object", - "description": "Represents an import request.", - "properties": { - "kind": { - "type": "string", - "description": "Type name: a template for an import request.", - "default": "fusiontables#import" - }, - "numRowsReceived": { - "type": "string", - "description": "The number of rows received from the import request.", - "format": "int64" - } - } - }, - "Line": { - "id": "Line", - "type": "object", - "description": "Represents a line geometry.", - "properties": { - "coordinates": { - "type": "array", - "description": "The coordinates that define the line.", - "items": { - "type": "array", - "items": { - "type": "number", - "format": "double" - } - } - }, - "type": { - "type": "string", - "description": "Type: A line geometry.", - "default": "LineString" - } - } - }, - "LineStyle": { - "id": "LineStyle", - "type": "object", - "description": "Represents a LineStyle within a StyleSetting", - "properties": { - "strokeColor": { - "type": "string", - "description": "Color of the line in #RRGGBB format." - }, - "strokeColorStyler": { - "$ref": "StyleFunction", - "description": "Column-value, gradient or buckets styler that is used to determine the line color and opacity." - }, - "strokeOpacity": { - "type": "number", - "description": "Opacity of the line : 0.0 (transparent) to 1.0 (opaque).", - "format": "double" - }, - "strokeWeight": { - "type": "integer", - "description": "Width of the line in pixels.", - "format": "int32" - }, - "strokeWeightStyler": { - "$ref": "StyleFunction", - "description": "Column-value or bucket styler that is used to determine the width of the line." - } - } - }, - "Point": { - "id": "Point", - "type": "object", - "description": "Represents a point object.", - "properties": { - "coordinates": { - "type": "array", - "description": "The coordinates that define the point.", - "items": { - "type": "number", - "format": "double" - } - }, - "type": { - "type": "string", - "description": "Point: A point geometry.", - "default": "Point" - } - } - }, - "PointStyle": { - "id": "PointStyle", - "type": "object", - "description": "Represents a PointStyle within a StyleSetting", - "properties": { - "iconName": { - "type": "string", - "description": "Name of the icon. Use values defined in http://www.google.com/fusiontables/DataSource?dsrcid=308519" - }, - "iconStyler": { - "$ref": "StyleFunction", - "description": "Column or a bucket value from which the icon name is to be determined." - } - } - }, - "Polygon": { - "id": "Polygon", - "type": "object", - "description": "Represents a polygon object.", - "properties": { - "coordinates": { - "type": "array", - "description": "The coordinates that define the polygon.", - "items": { - "type": "array", - "items": { - "type": "array", - "items": { - "type": "number", - "format": "double" - } - } - } - }, - "type": { - "type": "string", - "description": "Type: A polygon geometry.", - "default": "Polygon" - } - } - }, - "PolygonStyle": { - "id": "PolygonStyle", - "type": "object", - "description": "Represents a PolygonStyle within a StyleSetting", - "properties": { - "fillColor": { - "type": "string", - "description": "Color of the interior of the polygon in #RRGGBB format." - }, - "fillColorStyler": { - "$ref": "StyleFunction", - "description": "Column-value, gradient, or bucket styler that is used to determine the interior color and opacity of the polygon." - }, - "fillOpacity": { - "type": "number", - "description": "Opacity of the interior of the polygon: 0.0 (transparent) to 1.0 (opaque).", - "format": "double" - }, - "strokeColor": { - "type": "string", - "description": "Color of the polygon border in #RRGGBB format." - }, - "strokeColorStyler": { - "$ref": "StyleFunction", - "description": "Column-value, gradient or buckets styler that is used to determine the border color and opacity." - }, - "strokeOpacity": { - "type": "number", - "description": "Opacity of the polygon border: 0.0 (transparent) to 1.0 (opaque).", - "format": "double" - }, - "strokeWeight": { - "type": "integer", - "description": "Width of the polyon border in pixels.", - "format": "int32" - }, - "strokeWeightStyler": { - "$ref": "StyleFunction", - "description": "Column-value or bucket styler that is used to determine the width of the polygon border." - } - } - }, - "Sqlresponse": { - "id": "Sqlresponse", - "type": "object", - "description": "Represents a response to an sql statement.", - "properties": { - "columns": { - "type": "array", - "description": "Columns in the table.", - "items": { - "type": "string" - } - }, - "kind": { - "type": "string", - "description": "Type name: a template for an individual table.", - "default": "fusiontables#sqlresponse" - }, - "rows": { - "type": "array", - "description": "The rows in the table. For each cell we print out whatever cell value (e.g., numeric, string) exists. Thus it is important that each cell contains only one value.", - "items": { - "type": "array", - "items": { - "type": "any" - } - } - } - } - }, - "StyleFunction": { - "id": "StyleFunction", - "type": "object", - "description": "Represents a StyleFunction within a StyleSetting", - "properties": { - "buckets": { - "type": "array", - "description": "Bucket function that assigns a style based on the range a column value falls into.", - "items": { - "$ref": "Bucket" - } - }, - "columnName": { - "type": "string", - "description": "Name of the column whose value is used in the style.", - "annotations": { - "required": [ - "fusiontables.style.insert" - ] - } - }, - "gradient": { - "type": "object", - "description": "Gradient function that interpolates a range of colors based on column value.", - "properties": { - "colors": { - "type": "array", - "description": "Array with two or more colors.", - "items": { - "type": "object", - "properties": { - "color": { - "type": "string", - "description": "Color in #RRGGBB format." - }, - "opacity": { - "type": "number", - "description": "Opacity of the color: 0.0 (transparent) to 1.0 (opaque).", - "format": "double" - } + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/fusiontables": { + "description": "Manage your Fusion Tables" + }, + "https://www.googleapis.com/auth/fusiontables.readonly": { + "description": "View your Fusion Tables" } - } - }, - "max": { - "type": "number", - "description": "Higher-end of the interpolation range: rows with this value will be assigned to colors[n-1].", - "format": "double" - }, - "min": { - "type": "number", - "description": "Lower-end of the interpolation range: rows with this value will be assigned to colors[0].", - "format": "double" } - } - }, - "kind": { - "type": "string", - "description": "Stylers can be one of three kinds: \"fusiontables#fromColumn\" if the column value is to be used as is, i.e., the column values can have colors in #RRGGBBAA format or integer line widths or icon names; \"fusiontables#gradient\" if the styling of the row is to be based on applying the gradient function on the column value; or \"fusiontables#buckets\" if the styling is to based on the bucket into which the the column value falls." } - } }, - "StyleSetting": { - "id": "StyleSetting", - "type": "object", - "description": "Represents a complete StyleSettings object. The primary key is a combination of the tableId and a styleId.", - "properties": { - "kind": { - "type": "string", - "description": "Type name: an individual style setting. A StyleSetting contains the style defintions for points, lines, and polygons in a table. Since a table can have any one or all of them, a style definition can have point, line and polygon style definitions.", - "default": "fusiontables#styleSetting" - }, - "markerOptions": { - "$ref": "PointStyle", - "description": "Style definition for points in the table." - }, - "name": { - "type": "string", - "description": "Optional name for the style setting." - }, - "polygonOptions": { - "$ref": "PolygonStyle", - "description": "Style definition for polygons in the table." - }, - "polylineOptions": { - "$ref": "LineStyle", - "description": "Style definition for lines in the table." - }, - "styleId": { - "type": "integer", - "description": "Identifier for the style setting (unique only within tables).", - "format": "int32" - }, - "tableId": { - "type": "string", - "description": "Identifier for the table." - } - } + "basePath": "/fusiontables/v1/", + "baseUrl": "https://www.googleapis.com/fusiontables/v1/", + "batchPath": "batch/fusiontables/v1", + "description": "API for working with Fusion Tables data.", + "discoveryVersion": "v1", + "documentationLink": "https://developers.google.com/fusiontables", + "etag": "\"-iA1DTNe4s-I6JZXPt1t1Ypy8IU/3n2JbinzwstAjIIKWdbUBbIIhU4\"", + "icons": { + "x16": "https://www.gstatic.com/images/branding/product/1x/googleg_16dp.png", + "x32": "https://www.gstatic.com/images/branding/product/1x/googleg_32dp.png" }, - "StyleSettingList": { - "id": "StyleSettingList", - "type": "object", - "description": "Represents a list of styles for a given table.", - "properties": { - "items": { - "type": "array", - "description": "All requested style settings.", - "items": { - "$ref": "StyleSetting" - } - }, - "kind": { - "type": "string", - "description": "Type name: in this case, a list of style settings.", - "default": "fusiontables#styleSettingList" - }, - "nextPageToken": { - "type": "string", - "description": "Token used to access the next page of this result. No token is displayed if there are no more pages left." - }, - "totalItems": { - "type": "integer", - "description": "Total number of styles for the table.", - "format": "int32" - } - } - }, - "Table": { - "id": "Table", - "type": "object", - "description": "Represents a table. Specifies the name, whether it is exportable, description, attribution, and attribution link.", - "properties": { - "attribution": { - "type": "string", - "description": "Optional attribution assigned to the table." - }, - "attributionLink": { - "type": "string", - "description": "Optional link for attribution." - }, - "baseTableIds": { - "type": "array", - "description": "Optional base table identifier if this table is a view or merged table.", - "items": { - "type": "string" - } - }, - "columns": { - "type": "array", - "description": "Columns in the table.", - "items": { - "$ref": "Column" - }, - "annotations": { - "required": [ - "fusiontables.table.insert", - "fusiontables.table.update" - ] - } - }, - "description": { - "type": "string", - "description": "Optional description assigned to the table." - }, - "isExportable": { - "type": "boolean", - "description": "Variable for whether table is exportable.", - "annotations": { - "required": [ - "fusiontables.table.insert", - "fusiontables.table.update" - ] - } - }, - "kind": { - "type": "string", - "description": "Type name: a template for an individual table.", - "default": "fusiontables#table" - }, - "name": { - "type": "string", - "description": "Name assigned to a table.", - "annotations": { - "required": [ - "fusiontables.table.insert", - "fusiontables.table.update" - ] - } - }, - "sql": { - "type": "string", - "description": "Optional sql that encodes the table definition for derived tables." - }, - "tableId": { - "type": "string", - "description": "Encrypted unique alphanumeric identifier for the table." - } - } - }, - "TableList": { - "id": "TableList", - "type": "object", - "description": "Represents a list of tables.", - "properties": { - "items": { - "type": "array", - "description": "List of all requested tables.", - "items": { - "$ref": "Table" - } - }, - "kind": { - "type": "string", - "description": "Type name: a list of all tables.", - "default": "fusiontables#tableList" - }, - "nextPageToken": { - "type": "string", - "description": "Token used to access the next page of this result. No token is displayed if there are no more pages left." - } - } - }, - "Task": { - "id": "Task", - "type": "object", - "description": "Specifies the identifier, name, and type of a task in a table.", - "properties": { - "kind": { - "type": "string", - "description": "Type of the resource. This is always \"fusiontables#task\".", - "default": "fusiontables#task" - }, - "progress": { - "type": "string", - "description": "An indication of task progress." - }, - "started": { - "type": "boolean", - "description": "false while the table is busy with some other task. true if this background task is currently running." - }, - "taskId": { - "type": "string", - "description": "Identifier for the task.", - "format": "int64" - }, - "type": { - "type": "string", - "description": "Type of background task. One of DELETE_ROWS Deletes one or more rows from the table. ADD_ROWS \"Adds one or more rows to a table. Includes importing data into a new table and importing more rows into an existing table. ADD_COLUMN Adds a new column to the table. CHANGE_TYPE Changes the type of a column." - } - } - }, - "TaskList": { - "id": "TaskList", - "type": "object", - "description": "Represents a list of tasks for a table.", - "properties": { - "items": { - "type": "array", - "description": "List of all requested tasks.", - "items": { - "$ref": "Task" - } - }, - "kind": { - "type": "string", - "description": "Type of the resource. This is always \"fusiontables#taskList\".", - "default": "fusiontables#taskList" - }, - "nextPageToken": { - "type": "string", - "description": "Token used to access the next page of this result. No token is displayed if there are no more pages left." - }, - "totalItems": { - "type": "integer", - "description": "Total number of tasks for the table.", - "format": "int32" - } - } - }, - "Template": { - "id": "Template", - "type": "object", - "description": "Represents the contents of InfoWindow templates.", - "properties": { - "automaticColumnNames": { - "type": "array", - "description": "List of columns from which the template is to be automatically constructed. Only one of body or automaticColumns can be specified.", - "items": { - "type": "string" - } - }, - "body": { - "type": "string", - "description": "Body of the template. It contains HTML with {column_name} to insert values from a particular column. The body is sanitized to remove certain tags, e.g., script. Only one of body or automaticColumns can be specified." - }, - "kind": { - "type": "string", - "description": "Type name: a template for the info window contents. The template can either include an HTML body or a list of columns from which the template is computed automatically.", - "default": "fusiontables#template" - }, - "name": { - "type": "string", - "description": "Optional name assigned to a template." - }, - "tableId": { - "type": "string", - "description": "Identifier for the table for which the template is defined." - }, - "templateId": { - "type": "integer", - "description": "Identifier for the template, unique within the context of a particular table.", - "format": "int32" - } - } - }, - "TemplateList": { - "id": "TemplateList", - "type": "object", - "description": "Represents a list of templates for a given table.", - "properties": { - "items": { - "type": "array", - "description": "List of all requested templates.", - "items": { - "$ref": "Template" - } - }, - "kind": { - "type": "string", - "description": "Type name: a list of all templates.", - "default": "fusiontables#templateList" - }, - "nextPageToken": { - "type": "string", - "description": "Token used to access the next page of this result. No token is displayed if there are no more pages left." - }, - "totalItems": { - "type": "integer", - "description": "Total number of templates for the table.", - "format": "int32" - } - } - } - }, - "resources": { - "column": { - "methods": { - "delete": { - "id": "fusiontables.column.delete", - "path": "tables/{tableId}/columns/{columnId}", - "httpMethod": "DELETE", - "description": "Deletes the column.", - "parameters": { - "columnId": { - "type": "string", - "description": "Name or identifier for the column being deleted.", - "required": true, - "location": "path" - }, - "tableId": { - "type": "string", - "description": "Table from which the column is being deleted.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "tableId", - "columnId" - ], - "scopes": [ - "https://www.googleapis.com/auth/fusiontables" - ] - }, - "get": { - "id": "fusiontables.column.get", - "path": "tables/{tableId}/columns/{columnId}", - "httpMethod": "GET", - "description": "Retrieves a specific column by its id.", - "parameters": { - "columnId": { - "type": "string", - "description": "Name or identifier for the column that is being requested.", - "required": true, - "location": "path" - }, - "tableId": { - "type": "string", - "description": "Table to which the column belongs.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "tableId", - "columnId" - ], - "response": { - "$ref": "Column" - }, - "scopes": [ - "https://www.googleapis.com/auth/fusiontables", - "https://www.googleapis.com/auth/fusiontables.readonly" - ] - }, - "insert": { - "id": "fusiontables.column.insert", - "path": "tables/{tableId}/columns", - "httpMethod": "POST", - "description": "Adds a new column to the table.", - "parameters": { - "tableId": { - "type": "string", - "description": "Table for which a new column is being added.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "tableId" - ], - "request": { - "$ref": "Column" - }, - "response": { - "$ref": "Column" - }, - "scopes": [ - "https://www.googleapis.com/auth/fusiontables" - ] - }, - "list": { - "id": "fusiontables.column.list", - "path": "tables/{tableId}/columns", - "httpMethod": "GET", - "description": "Retrieves a list of columns.", - "parameters": { - "maxResults": { - "type": "integer", - "description": "Maximum number of columns to return. Optional. Default is 5.", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Continuation token specifying which result page to return. Optional.", - "location": "query" - }, - "tableId": { - "type": "string", - "description": "Table whose columns are being listed.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "tableId" - ], - "response": { - "$ref": "ColumnList" - }, - "scopes": [ - "https://www.googleapis.com/auth/fusiontables", - "https://www.googleapis.com/auth/fusiontables.readonly" - ] - }, - "patch": { - "id": "fusiontables.column.patch", - "path": "tables/{tableId}/columns/{columnId}", - "httpMethod": "PATCH", - "description": "Updates the name or type of an existing column. This method supports patch semantics.", - "parameters": { - "columnId": { - "type": "string", - "description": "Name or identifier for the column that is being updated.", - "required": true, - "location": "path" - }, - "tableId": { - "type": "string", - "description": "Table for which the column is being updated.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "tableId", - "columnId" - ], - "request": { - "$ref": "Column" - }, - "response": { - "$ref": "Column" - }, - "scopes": [ - "https://www.googleapis.com/auth/fusiontables" - ] - }, - "update": { - "id": "fusiontables.column.update", - "path": "tables/{tableId}/columns/{columnId}", - "httpMethod": "PUT", - "description": "Updates the name or type of an existing column.", - "parameters": { - "columnId": { - "type": "string", - "description": "Name or identifier for the column that is being updated.", - "required": true, - "location": "path" - }, - "tableId": { - "type": "string", - "description": "Table for which the column is being updated.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "tableId", - "columnId" - ], - "request": { - "$ref": "Column" - }, - "response": { - "$ref": "Column" - }, - "scopes": [ - "https://www.googleapis.com/auth/fusiontables" - ] - } - } - }, - "query": { - "methods": { - "sql": { - "id": "fusiontables.query.sql", - "path": "query", - "httpMethod": "POST", - "description": "Executes an SQL SELECT/INSERT/UPDATE/DELETE/SHOW/DESCRIBE/CREATE statement.", - "parameters": { - "hdrs": { - "type": "boolean", - "description": "Should column names be included (in the first row)?. Default is true.", - "location": "query" - }, - "sql": { - "type": "string", - "description": "An SQL SELECT/SHOW/DESCRIBE/INSERT/UPDATE/DELETE/CREATE statement.", - "required": true, - "location": "query" - }, - "typed": { - "type": "boolean", - "description": "Should typed values be returned in the (JSON) response -- numbers for numeric values and parsed geometries for KML values? Default is true.", - "location": "query" - } - }, - "parameterOrder": [ - "sql" - ], - "response": { - "$ref": "Sqlresponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/fusiontables", - "https://www.googleapis.com/auth/fusiontables.readonly" - ], - "supportsMediaDownload": true, - "useMediaDownloadService": true - }, - "sqlGet": { - "id": "fusiontables.query.sqlGet", - "path": "query", - "httpMethod": "GET", - "description": "Executes an SQL SELECT/SHOW/DESCRIBE statement.", - "parameters": { - "hdrs": { - "type": "boolean", - "description": "Should column names be included (in the first row)?. Default is true.", - "location": "query" - }, - "sql": { - "type": "string", - "description": "An SQL SELECT/SHOW/DESCRIBE statement.", - "required": true, - "location": "query" - }, - "typed": { - "type": "boolean", - "description": "Should typed values be returned in the (JSON) response -- numbers for numeric values and parsed geometries for KML values? Default is true.", - "location": "query" - } - }, - "parameterOrder": [ - "sql" - ], - "response": { - "$ref": "Sqlresponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/fusiontables", - "https://www.googleapis.com/auth/fusiontables.readonly" - ], - "supportsMediaDownload": true, - "useMediaDownloadService": true - } - } - }, - "style": { - "methods": { - "delete": { - "id": "fusiontables.style.delete", - "path": "tables/{tableId}/styles/{styleId}", - "httpMethod": "DELETE", - "description": "Deletes a style.", - "parameters": { - "styleId": { - "type": "integer", - "description": "Identifier (within a table) for the style being deleted", - "required": true, - "format": "int32", - "location": "path" - }, - "tableId": { - "type": "string", - "description": "Table from which the style is being deleted", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "tableId", - "styleId" - ], - "scopes": [ - "https://www.googleapis.com/auth/fusiontables" - ] - }, - "get": { - "id": "fusiontables.style.get", - "path": "tables/{tableId}/styles/{styleId}", - "httpMethod": "GET", - "description": "Gets a specific style.", - "parameters": { - "styleId": { - "type": "integer", - "description": "Identifier (integer) for a specific style in a table", - "required": true, - "format": "int32", - "location": "path" - }, - "tableId": { - "type": "string", - "description": "Table to which the requested style belongs", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "tableId", - "styleId" - ], - "response": { - "$ref": "StyleSetting" - }, - "scopes": [ - "https://www.googleapis.com/auth/fusiontables", - "https://www.googleapis.com/auth/fusiontables.readonly" - ] - }, - "insert": { - "id": "fusiontables.style.insert", - "path": "tables/{tableId}/styles", - "httpMethod": "POST", - "description": "Adds a new style for the table.", - "parameters": { - "tableId": { - "type": "string", - "description": "Table for which a new style is being added", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "tableId" - ], - "request": { - "$ref": "StyleSetting" - }, - "response": { - "$ref": "StyleSetting" - }, - "scopes": [ - "https://www.googleapis.com/auth/fusiontables" - ] - }, - "list": { - "id": "fusiontables.style.list", - "path": "tables/{tableId}/styles", - "httpMethod": "GET", - "description": "Retrieves a list of styles.", - "parameters": { - "maxResults": { - "type": "integer", - "description": "Maximum number of styles to return. Optional. Default is 5.", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Continuation token specifying which result page to return. Optional.", - "location": "query" - }, - "tableId": { - "type": "string", - "description": "Table whose styles are being listed", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "tableId" - ], - "response": { - "$ref": "StyleSettingList" - }, - "scopes": [ - "https://www.googleapis.com/auth/fusiontables", - "https://www.googleapis.com/auth/fusiontables.readonly" - ] - }, - "patch": { - "id": "fusiontables.style.patch", - "path": "tables/{tableId}/styles/{styleId}", - "httpMethod": "PATCH", - "description": "Updates an existing style. This method supports patch semantics.", - "parameters": { - "styleId": { - "type": "integer", - "description": "Identifier (within a table) for the style being updated.", - "required": true, - "format": "int32", - "location": "path" - }, - "tableId": { - "type": "string", - "description": "Table whose style is being updated.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "tableId", - "styleId" - ], - "request": { - "$ref": "StyleSetting" - }, - "response": { - "$ref": "StyleSetting" - }, - "scopes": [ - "https://www.googleapis.com/auth/fusiontables" - ] - }, - "update": { - "id": "fusiontables.style.update", - "path": "tables/{tableId}/styles/{styleId}", - "httpMethod": "PUT", - "description": "Updates an existing style.", - "parameters": { - "styleId": { - "type": "integer", - "description": "Identifier (within a table) for the style being updated.", - "required": true, - "format": "int32", - "location": "path" - }, - "tableId": { - "type": "string", - "description": "Table whose style is being updated.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "tableId", - "styleId" - ], - "request": { - "$ref": "StyleSetting" - }, - "response": { - "$ref": "StyleSetting" - }, - "scopes": [ - "https://www.googleapis.com/auth/fusiontables" - ] - } - } - }, - "table": { - "methods": { - "copy": { - "id": "fusiontables.table.copy", - "path": "tables/{tableId}/copy", - "httpMethod": "POST", - "description": "Copies a table.", - "parameters": { - "copyPresentation": { - "type": "boolean", - "description": "Whether to also copy tabs, styles, and templates. Default is false.", - "location": "query" - }, - "tableId": { - "type": "string", - "description": "ID of the table that is being copied.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "tableId" - ], - "response": { - "$ref": "Table" - }, - "scopes": [ - "https://www.googleapis.com/auth/fusiontables", - "https://www.googleapis.com/auth/fusiontables.readonly" - ] - }, - "delete": { - "id": "fusiontables.table.delete", - "path": "tables/{tableId}", - "httpMethod": "DELETE", - "description": "Deletes a table.", - "parameters": { - "tableId": { - "type": "string", - "description": "ID of the table that is being deleted.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "tableId" - ], - "scopes": [ - "https://www.googleapis.com/auth/fusiontables" - ] - }, - "get": { - "id": "fusiontables.table.get", - "path": "tables/{tableId}", - "httpMethod": "GET", - "description": "Retrieves a specific table by its id.", - "parameters": { - "tableId": { - "type": "string", - "description": "Identifier(ID) for the table being requested.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "tableId" - ], - "response": { - "$ref": "Table" - }, - "scopes": [ - "https://www.googleapis.com/auth/fusiontables", - "https://www.googleapis.com/auth/fusiontables.readonly" - ] - }, - "importRows": { - "id": "fusiontables.table.importRows", - "path": "tables/{tableId}/import", - "httpMethod": "POST", - "description": "Import more rows into a table.", - "parameters": { - "delimiter": { - "type": "string", - "description": "The delimiter used to separate cell values. This can only consist of a single character. Default is ','.", - "location": "query" - }, - "encoding": { - "type": "string", - "description": "The encoding of the content. Default is UTF-8. Use 'auto-detect' if you are unsure of the encoding.", - "location": "query" - }, - "endLine": { - "type": "integer", - "description": "The index of the last line from which to start importing, exclusive. Thus, the number of imported lines is endLine - startLine. If this parameter is not provided, the file will be imported until the last line of the file. If endLine is negative, then the imported content will exclude the last endLine lines. That is, if endline is negative, no line will be imported whose index is greater than N + endLine where N is the number of lines in the file, and the number of imported lines will be N + endLine - startLine.", - "format": "int32", - "location": "query" - }, - "isStrict": { - "type": "boolean", - "description": "Whether the CSV must have the same number of values for each row. If false, rows with fewer values will be padded with empty values. Default is true.", - "location": "query" - }, - "startLine": { - "type": "integer", - "description": "The index of the first line from which to start importing, inclusive. Default is 0.", - "format": "int32", - "location": "query" - }, - "tableId": { - "type": "string", - "description": "The table into which new rows are being imported.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "tableId" - ], - "response": { - "$ref": "Import" - }, - "scopes": [ - "https://www.googleapis.com/auth/fusiontables" - ], - "supportsMediaUpload": true, - "mediaUpload": { - "accept": [ - "application/octet-stream" + "id": "fusiontables:v1", + "kind": "discovery#restDescription", + "name": "fusiontables", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "alt": { + "default": "json", + "description": "Data format for the response.", + "enum": [ + "csv", + "json" ], - "maxSize": "250MB", - "protocols": { - "simple": { - "multipart": true, - "path": "/upload/fusiontables/v1/tables/{tableId}/import" - }, - "resumable": { - "multipart": true, - "path": "/resumable/upload/fusiontables/v1/tables/{tableId}/import" - } - } - } - }, - "importTable": { - "id": "fusiontables.table.importTable", - "path": "tables/import", - "httpMethod": "POST", - "description": "Import a new table.", - "parameters": { - "delimiter": { - "type": "string", - "description": "The delimiter used to separate cell values. This can only consist of a single character. Default is ','.", - "location": "query" - }, - "encoding": { - "type": "string", - "description": "The encoding of the content. Default is UTF-8. Use 'auto-detect' if you are unsure of the encoding.", - "location": "query" - }, - "name": { - "type": "string", - "description": "The name to be assigned to the new table.", - "required": true, - "location": "query" - } - }, - "parameterOrder": [ - "name" - ], - "response": { - "$ref": "Table" - }, - "scopes": [ - "https://www.googleapis.com/auth/fusiontables" - ], - "supportsMediaUpload": true, - "mediaUpload": { - "accept": [ - "application/octet-stream" + "enumDescriptions": [ + "Responses with Content-Type of text/csv", + "Responses with Content-Type of application/json" ], - "maxSize": "250MB", - "protocols": { - "simple": { - "multipart": true, - "path": "/upload/fusiontables/v1/tables/import" - }, - "resumable": { - "multipart": true, - "path": "/resumable/upload/fusiontables/v1/tables/import" - } - } - } + "location": "query", + "type": "string" }, - "insert": { - "id": "fusiontables.table.insert", - "path": "tables", - "httpMethod": "POST", - "description": "Creates a new table.", - "request": { - "$ref": "Table" - }, - "response": { - "$ref": "Table" - }, - "scopes": [ - "https://www.googleapis.com/auth/fusiontables" - ] + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "location": "query", + "type": "string" }, - "list": { - "id": "fusiontables.table.list", - "path": "tables", - "httpMethod": "GET", - "description": "Retrieves a list of tables a user owns.", - "parameters": { - "maxResults": { - "type": "integer", - "description": "Maximum number of styles to return. Optional. Default is 5.", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Continuation token specifying which result page to return. Optional.", - "location": "query" - } - }, - "response": { - "$ref": "TableList" - }, - "scopes": [ - "https://www.googleapis.com/auth/fusiontables", - "https://www.googleapis.com/auth/fusiontables.readonly" - ] + "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" }, - "patch": { - "id": "fusiontables.table.patch", - "path": "tables/{tableId}", - "httpMethod": "PATCH", - "description": "Updates an existing table. Unless explicitly requested, only the name, description, and attribution will be updated. This method supports patch semantics.", - "parameters": { - "replaceViewDefinition": { - "type": "boolean", - "description": "Should the view definition also be updated? The specified view definition replaces the existing one. Only a view can be updated with a new definition.", - "location": "query" - }, - "tableId": { - "type": "string", - "description": "ID of the table that is being updated.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "tableId" - ], - "request": { - "$ref": "Table" - }, - "response": { - "$ref": "Table" - }, - "scopes": [ - "https://www.googleapis.com/auth/fusiontables" - ] + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" }, - "update": { - "id": "fusiontables.table.update", - "path": "tables/{tableId}", - "httpMethod": "PUT", - "description": "Updates an existing table. Unless explicitly requested, only the name, description, and attribution will be updated.", - "parameters": { - "replaceViewDefinition": { - "type": "boolean", - "description": "Should the view definition also be updated? The specified view definition replaces the existing one. Only a view can be updated with a new definition.", - "location": "query" - }, - "tableId": { - "type": "string", - "description": "ID of the table that is being updated.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "tableId" - ], - "request": { - "$ref": "Table" - }, - "response": { - "$ref": "Table" - }, - "scopes": [ - "https://www.googleapis.com/auth/fusiontables" - ] + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", + "location": "query", + "type": "string" + }, + "userIp": { + "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", + "location": "query", + "type": "string" } - } }, - "task": { - "methods": { - "delete": { - "id": "fusiontables.task.delete", - "path": "tables/{tableId}/tasks/{taskId}", - "httpMethod": "DELETE", - "description": "Deletes the task, unless already started.", - "parameters": { - "tableId": { - "type": "string", - "description": "Table from which the task is being deleted.", - "required": true, - "location": "path" - }, - "taskId": { - "type": "string", - "required": true, - "location": "path" + "protocol": "rest", + "resources": { + "column": { + "methods": { + "delete": { + "description": "Deletes the column.", + "httpMethod": "DELETE", + "id": "fusiontables.column.delete", + "parameterOrder": [ + "tableId", + "columnId" + ], + "parameters": { + "columnId": { + "description": "Name or identifier for the column being deleted.", + "location": "path", + "required": true, + "type": "string" + }, + "tableId": { + "description": "Table from which the column is being deleted.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "tables/{tableId}/columns/{columnId}", + "scopes": [ + "https://www.googleapis.com/auth/fusiontables" + ] + }, + "get": { + "description": "Retrieves a specific column by its id.", + "httpMethod": "GET", + "id": "fusiontables.column.get", + "parameterOrder": [ + "tableId", + "columnId" + ], + "parameters": { + "columnId": { + "description": "Name or identifier for the column that is being requested.", + "location": "path", + "required": true, + "type": "string" + }, + "tableId": { + "description": "Table to which the column belongs.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "tables/{tableId}/columns/{columnId}", + "response": { + "$ref": "Column" + }, + "scopes": [ + "https://www.googleapis.com/auth/fusiontables", + "https://www.googleapis.com/auth/fusiontables.readonly" + ] + }, + "insert": { + "description": "Adds a new column to the table.", + "httpMethod": "POST", + "id": "fusiontables.column.insert", + "parameterOrder": [ + "tableId" + ], + "parameters": { + "tableId": { + "description": "Table for which a new column is being added.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "tables/{tableId}/columns", + "request": { + "$ref": "Column" + }, + "response": { + "$ref": "Column" + }, + "scopes": [ + "https://www.googleapis.com/auth/fusiontables" + ] + }, + "list": { + "description": "Retrieves a list of columns.", + "httpMethod": "GET", + "id": "fusiontables.column.list", + "parameterOrder": [ + "tableId" + ], + "parameters": { + "maxResults": { + "description": "Maximum number of columns to return. Optional. Default is 5.", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "pageToken": { + "description": "Continuation token specifying which result page to return. Optional.", + "location": "query", + "type": "string" + }, + "tableId": { + "description": "Table whose columns are being listed.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "tables/{tableId}/columns", + "response": { + "$ref": "ColumnList" + }, + "scopes": [ + "https://www.googleapis.com/auth/fusiontables", + "https://www.googleapis.com/auth/fusiontables.readonly" + ] + }, + "patch": { + "description": "Updates the name or type of an existing column. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "fusiontables.column.patch", + "parameterOrder": [ + "tableId", + "columnId" + ], + "parameters": { + "columnId": { + "description": "Name or identifier for the column that is being updated.", + "location": "path", + "required": true, + "type": "string" + }, + "tableId": { + "description": "Table for which the column is being updated.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "tables/{tableId}/columns/{columnId}", + "request": { + "$ref": "Column" + }, + "response": { + "$ref": "Column" + }, + "scopes": [ + "https://www.googleapis.com/auth/fusiontables" + ] + }, + "update": { + "description": "Updates the name or type of an existing column.", + "httpMethod": "PUT", + "id": "fusiontables.column.update", + "parameterOrder": [ + "tableId", + "columnId" + ], + "parameters": { + "columnId": { + "description": "Name or identifier for the column that is being updated.", + "location": "path", + "required": true, + "type": "string" + }, + "tableId": { + "description": "Table for which the column is being updated.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "tables/{tableId}/columns/{columnId}", + "request": { + "$ref": "Column" + }, + "response": { + "$ref": "Column" + }, + "scopes": [ + "https://www.googleapis.com/auth/fusiontables" + ] + } } - }, - "parameterOrder": [ - "tableId", - "taskId" - ], - "scopes": [ - "https://www.googleapis.com/auth/fusiontables" - ] }, - "get": { - "id": "fusiontables.task.get", - "path": "tables/{tableId}/tasks/{taskId}", - "httpMethod": "GET", - "description": "Retrieves a specific task by its id.", - "parameters": { - "tableId": { - "type": "string", - "description": "Table to which the task belongs.", - "required": true, - "location": "path" - }, - "taskId": { - "type": "string", - "required": true, - "location": "path" + "query": { + "methods": { + "sql": { + "description": "Executes an SQL SELECT/INSERT/UPDATE/DELETE/SHOW/DESCRIBE/CREATE statement.", + "httpMethod": "POST", + "id": "fusiontables.query.sql", + "parameterOrder": [ + "sql" + ], + "parameters": { + "hdrs": { + "description": "Should column names be included (in the first row)?. Default is true.", + "location": "query", + "type": "boolean" + }, + "sql": { + "description": "An SQL SELECT/SHOW/DESCRIBE/INSERT/UPDATE/DELETE/CREATE statement.", + "location": "query", + "required": true, + "type": "string" + }, + "typed": { + "description": "Should typed values be returned in the (JSON) response -- numbers for numeric values and parsed geometries for KML values? Default is true.", + "location": "query", + "type": "boolean" + } + }, + "path": "query", + "response": { + "$ref": "Sqlresponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/fusiontables", + "https://www.googleapis.com/auth/fusiontables.readonly" + ], + "supportsMediaDownload": true, + "useMediaDownloadService": true + }, + "sqlGet": { + "description": "Executes an SQL SELECT/SHOW/DESCRIBE statement.", + "httpMethod": "GET", + "id": "fusiontables.query.sqlGet", + "parameterOrder": [ + "sql" + ], + "parameters": { + "hdrs": { + "description": "Should column names be included (in the first row)?. Default is true.", + "location": "query", + "type": "boolean" + }, + "sql": { + "description": "An SQL SELECT/SHOW/DESCRIBE statement.", + "location": "query", + "required": true, + "type": "string" + }, + "typed": { + "description": "Should typed values be returned in the (JSON) response -- numbers for numeric values and parsed geometries for KML values? Default is true.", + "location": "query", + "type": "boolean" + } + }, + "path": "query", + "response": { + "$ref": "Sqlresponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/fusiontables", + "https://www.googleapis.com/auth/fusiontables.readonly" + ], + "supportsMediaDownload": true, + "useMediaDownloadService": true + } } - }, - "parameterOrder": [ - "tableId", - "taskId" - ], - "response": { - "$ref": "Task" - }, - "scopes": [ - "https://www.googleapis.com/auth/fusiontables", - "https://www.googleapis.com/auth/fusiontables.readonly" - ] }, - "list": { - "id": "fusiontables.task.list", - "path": "tables/{tableId}/tasks", - "httpMethod": "GET", - "description": "Retrieves a list of tasks.", - "parameters": { - "maxResults": { - "type": "integer", - "description": "Maximum number of columns to return. Optional. Default is 5.", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "pageToken": { - "type": "string", - "location": "query" - }, - "startIndex": { - "type": "integer", - "format": "uint32", - "location": "query" - }, - "tableId": { - "type": "string", - "description": "Table whose tasks are being listed.", - "required": true, - "location": "path" + "style": { + "methods": { + "delete": { + "description": "Deletes a style.", + "httpMethod": "DELETE", + "id": "fusiontables.style.delete", + "parameterOrder": [ + "tableId", + "styleId" + ], + "parameters": { + "styleId": { + "description": "Identifier (within a table) for the style being deleted", + "format": "int32", + "location": "path", + "required": true, + "type": "integer" + }, + "tableId": { + "description": "Table from which the style is being deleted", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "tables/{tableId}/styles/{styleId}", + "scopes": [ + "https://www.googleapis.com/auth/fusiontables" + ] + }, + "get": { + "description": "Gets a specific style.", + "httpMethod": "GET", + "id": "fusiontables.style.get", + "parameterOrder": [ + "tableId", + "styleId" + ], + "parameters": { + "styleId": { + "description": "Identifier (integer) for a specific style in a table", + "format": "int32", + "location": "path", + "required": true, + "type": "integer" + }, + "tableId": { + "description": "Table to which the requested style belongs", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "tables/{tableId}/styles/{styleId}", + "response": { + "$ref": "StyleSetting" + }, + "scopes": [ + "https://www.googleapis.com/auth/fusiontables", + "https://www.googleapis.com/auth/fusiontables.readonly" + ] + }, + "insert": { + "description": "Adds a new style for the table.", + "httpMethod": "POST", + "id": "fusiontables.style.insert", + "parameterOrder": [ + "tableId" + ], + "parameters": { + "tableId": { + "description": "Table for which a new style is being added", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "tables/{tableId}/styles", + "request": { + "$ref": "StyleSetting" + }, + "response": { + "$ref": "StyleSetting" + }, + "scopes": [ + "https://www.googleapis.com/auth/fusiontables" + ] + }, + "list": { + "description": "Retrieves a list of styles.", + "httpMethod": "GET", + "id": "fusiontables.style.list", + "parameterOrder": [ + "tableId" + ], + "parameters": { + "maxResults": { + "description": "Maximum number of styles to return. Optional. Default is 5.", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "pageToken": { + "description": "Continuation token specifying which result page to return. Optional.", + "location": "query", + "type": "string" + }, + "tableId": { + "description": "Table whose styles are being listed", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "tables/{tableId}/styles", + "response": { + "$ref": "StyleSettingList" + }, + "scopes": [ + "https://www.googleapis.com/auth/fusiontables", + "https://www.googleapis.com/auth/fusiontables.readonly" + ] + }, + "patch": { + "description": "Updates an existing style. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "fusiontables.style.patch", + "parameterOrder": [ + "tableId", + "styleId" + ], + "parameters": { + "styleId": { + "description": "Identifier (within a table) for the style being updated.", + "format": "int32", + "location": "path", + "required": true, + "type": "integer" + }, + "tableId": { + "description": "Table whose style is being updated.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "tables/{tableId}/styles/{styleId}", + "request": { + "$ref": "StyleSetting" + }, + "response": { + "$ref": "StyleSetting" + }, + "scopes": [ + "https://www.googleapis.com/auth/fusiontables" + ] + }, + "update": { + "description": "Updates an existing style.", + "httpMethod": "PUT", + "id": "fusiontables.style.update", + "parameterOrder": [ + "tableId", + "styleId" + ], + "parameters": { + "styleId": { + "description": "Identifier (within a table) for the style being updated.", + "format": "int32", + "location": "path", + "required": true, + "type": "integer" + }, + "tableId": { + "description": "Table whose style is being updated.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "tables/{tableId}/styles/{styleId}", + "request": { + "$ref": "StyleSetting" + }, + "response": { + "$ref": "StyleSetting" + }, + "scopes": [ + "https://www.googleapis.com/auth/fusiontables" + ] + } + } + }, + "table": { + "methods": { + "copy": { + "description": "Copies a table.", + "httpMethod": "POST", + "id": "fusiontables.table.copy", + "parameterOrder": [ + "tableId" + ], + "parameters": { + "copyPresentation": { + "description": "Whether to also copy tabs, styles, and templates. Default is false.", + "location": "query", + "type": "boolean" + }, + "tableId": { + "description": "ID of the table that is being copied.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "tables/{tableId}/copy", + "response": { + "$ref": "Table" + }, + "scopes": [ + "https://www.googleapis.com/auth/fusiontables", + "https://www.googleapis.com/auth/fusiontables.readonly" + ] + }, + "delete": { + "description": "Deletes a table.", + "httpMethod": "DELETE", + "id": "fusiontables.table.delete", + "parameterOrder": [ + "tableId" + ], + "parameters": { + "tableId": { + "description": "ID of the table that is being deleted.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "tables/{tableId}", + "scopes": [ + "https://www.googleapis.com/auth/fusiontables" + ] + }, + "get": { + "description": "Retrieves a specific table by its id.", + "httpMethod": "GET", + "id": "fusiontables.table.get", + "parameterOrder": [ + "tableId" + ], + "parameters": { + "tableId": { + "description": "Identifier(ID) for the table being requested.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "tables/{tableId}", + "response": { + "$ref": "Table" + }, + "scopes": [ + "https://www.googleapis.com/auth/fusiontables", + "https://www.googleapis.com/auth/fusiontables.readonly" + ] + }, + "importRows": { + "description": "Import more rows into a table.", + "httpMethod": "POST", + "id": "fusiontables.table.importRows", + "mediaUpload": { + "accept": [ + "application/octet-stream" + ], + "maxSize": "250MB", + "protocols": { + "resumable": { + "multipart": true, + "path": "/resumable/upload/fusiontables/v1/tables/{tableId}/import" + }, + "simple": { + "multipart": true, + "path": "/upload/fusiontables/v1/tables/{tableId}/import" + } + } + }, + "parameterOrder": [ + "tableId" + ], + "parameters": { + "delimiter": { + "description": "The delimiter used to separate cell values. This can only consist of a single character. Default is ','.", + "location": "query", + "type": "string" + }, + "encoding": { + "description": "The encoding of the content. Default is UTF-8. Use 'auto-detect' if you are unsure of the encoding.", + "location": "query", + "type": "string" + }, + "endLine": { + "description": "The index of the last line from which to start importing, exclusive. Thus, the number of imported lines is endLine - startLine. If this parameter is not provided, the file will be imported until the last line of the file. If endLine is negative, then the imported content will exclude the last endLine lines. That is, if endline is negative, no line will be imported whose index is greater than N + endLine where N is the number of lines in the file, and the number of imported lines will be N + endLine - startLine.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "isStrict": { + "description": "Whether the CSV must have the same number of values for each row. If false, rows with fewer values will be padded with empty values. Default is true.", + "location": "query", + "type": "boolean" + }, + "startLine": { + "description": "The index of the first line from which to start importing, inclusive. Default is 0.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "tableId": { + "description": "The table into which new rows are being imported.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "tables/{tableId}/import", + "response": { + "$ref": "Import" + }, + "scopes": [ + "https://www.googleapis.com/auth/fusiontables" + ], + "supportsMediaUpload": true + }, + "importTable": { + "description": "Import a new table.", + "httpMethod": "POST", + "id": "fusiontables.table.importTable", + "mediaUpload": { + "accept": [ + "application/octet-stream" + ], + "maxSize": "250MB", + "protocols": { + "resumable": { + "multipart": true, + "path": "/resumable/upload/fusiontables/v1/tables/import" + }, + "simple": { + "multipart": true, + "path": "/upload/fusiontables/v1/tables/import" + } + } + }, + "parameterOrder": [ + "name" + ], + "parameters": { + "delimiter": { + "description": "The delimiter used to separate cell values. This can only consist of a single character. Default is ','.", + "location": "query", + "type": "string" + }, + "encoding": { + "description": "The encoding of the content. Default is UTF-8. Use 'auto-detect' if you are unsure of the encoding.", + "location": "query", + "type": "string" + }, + "name": { + "description": "The name to be assigned to the new table.", + "location": "query", + "required": true, + "type": "string" + } + }, + "path": "tables/import", + "response": { + "$ref": "Table" + }, + "scopes": [ + "https://www.googleapis.com/auth/fusiontables" + ], + "supportsMediaUpload": true + }, + "insert": { + "description": "Creates a new table.", + "httpMethod": "POST", + "id": "fusiontables.table.insert", + "path": "tables", + "request": { + "$ref": "Table" + }, + "response": { + "$ref": "Table" + }, + "scopes": [ + "https://www.googleapis.com/auth/fusiontables" + ] + }, + "list": { + "description": "Retrieves a list of tables a user owns.", + "httpMethod": "GET", + "id": "fusiontables.table.list", + "parameters": { + "maxResults": { + "description": "Maximum number of styles to return. Optional. Default is 5.", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "pageToken": { + "description": "Continuation token specifying which result page to return. Optional.", + "location": "query", + "type": "string" + } + }, + "path": "tables", + "response": { + "$ref": "TableList" + }, + "scopes": [ + "https://www.googleapis.com/auth/fusiontables", + "https://www.googleapis.com/auth/fusiontables.readonly" + ] + }, + "patch": { + "description": "Updates an existing table. Unless explicitly requested, only the name, description, and attribution will be updated. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "fusiontables.table.patch", + "parameterOrder": [ + "tableId" + ], + "parameters": { + "replaceViewDefinition": { + "description": "Should the view definition also be updated? The specified view definition replaces the existing one. Only a view can be updated with a new definition.", + "location": "query", + "type": "boolean" + }, + "tableId": { + "description": "ID of the table that is being updated.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "tables/{tableId}", + "request": { + "$ref": "Table" + }, + "response": { + "$ref": "Table" + }, + "scopes": [ + "https://www.googleapis.com/auth/fusiontables" + ] + }, + "update": { + "description": "Updates an existing table. Unless explicitly requested, only the name, description, and attribution will be updated.", + "httpMethod": "PUT", + "id": "fusiontables.table.update", + "parameterOrder": [ + "tableId" + ], + "parameters": { + "replaceViewDefinition": { + "description": "Should the view definition also be updated? The specified view definition replaces the existing one. Only a view can be updated with a new definition.", + "location": "query", + "type": "boolean" + }, + "tableId": { + "description": "ID of the table that is being updated.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "tables/{tableId}", + "request": { + "$ref": "Table" + }, + "response": { + "$ref": "Table" + }, + "scopes": [ + "https://www.googleapis.com/auth/fusiontables" + ] + } + } + }, + "task": { + "methods": { + "delete": { + "description": "Deletes the task, unless already started.", + "httpMethod": "DELETE", + "id": "fusiontables.task.delete", + "parameterOrder": [ + "tableId", + "taskId" + ], + "parameters": { + "tableId": { + "description": "Table from which the task is being deleted.", + "location": "path", + "required": true, + "type": "string" + }, + "taskId": { + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "tables/{tableId}/tasks/{taskId}", + "scopes": [ + "https://www.googleapis.com/auth/fusiontables" + ] + }, + "get": { + "description": "Retrieves a specific task by its id.", + "httpMethod": "GET", + "id": "fusiontables.task.get", + "parameterOrder": [ + "tableId", + "taskId" + ], + "parameters": { + "tableId": { + "description": "Table to which the task belongs.", + "location": "path", + "required": true, + "type": "string" + }, + "taskId": { + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "tables/{tableId}/tasks/{taskId}", + "response": { + "$ref": "Task" + }, + "scopes": [ + "https://www.googleapis.com/auth/fusiontables", + "https://www.googleapis.com/auth/fusiontables.readonly" + ] + }, + "list": { + "description": "Retrieves a list of tasks.", + "httpMethod": "GET", + "id": "fusiontables.task.list", + "parameterOrder": [ + "tableId" + ], + "parameters": { + "maxResults": { + "description": "Maximum number of columns to return. Optional. Default is 5.", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "pageToken": { + "location": "query", + "type": "string" + }, + "startIndex": { + "format": "uint32", + "location": "query", + "type": "integer" + }, + "tableId": { + "description": "Table whose tasks are being listed.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "tables/{tableId}/tasks", + "response": { + "$ref": "TaskList" + }, + "scopes": [ + "https://www.googleapis.com/auth/fusiontables", + "https://www.googleapis.com/auth/fusiontables.readonly" + ] + } + } + }, + "template": { + "methods": { + "delete": { + "description": "Deletes a template", + "httpMethod": "DELETE", + "id": "fusiontables.template.delete", + "parameterOrder": [ + "tableId", + "templateId" + ], + "parameters": { + "tableId": { + "description": "Table from which the template is being deleted", + "location": "path", + "required": true, + "type": "string" + }, + "templateId": { + "description": "Identifier for the template which is being deleted", + "format": "int32", + "location": "path", + "required": true, + "type": "integer" + } + }, + "path": "tables/{tableId}/templates/{templateId}", + "scopes": [ + "https://www.googleapis.com/auth/fusiontables" + ] + }, + "get": { + "description": "Retrieves a specific template by its id", + "httpMethod": "GET", + "id": "fusiontables.template.get", + "parameterOrder": [ + "tableId", + "templateId" + ], + "parameters": { + "tableId": { + "description": "Table to which the template belongs", + "location": "path", + "required": true, + "type": "string" + }, + "templateId": { + "description": "Identifier for the template that is being requested", + "format": "int32", + "location": "path", + "required": true, + "type": "integer" + } + }, + "path": "tables/{tableId}/templates/{templateId}", + "response": { + "$ref": "Template" + }, + "scopes": [ + "https://www.googleapis.com/auth/fusiontables", + "https://www.googleapis.com/auth/fusiontables.readonly" + ] + }, + "insert": { + "description": "Creates a new template for the table.", + "httpMethod": "POST", + "id": "fusiontables.template.insert", + "parameterOrder": [ + "tableId" + ], + "parameters": { + "tableId": { + "description": "Table for which a new template is being created", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "tables/{tableId}/templates", + "request": { + "$ref": "Template" + }, + "response": { + "$ref": "Template" + }, + "scopes": [ + "https://www.googleapis.com/auth/fusiontables" + ] + }, + "list": { + "description": "Retrieves a list of templates.", + "httpMethod": "GET", + "id": "fusiontables.template.list", + "parameterOrder": [ + "tableId" + ], + "parameters": { + "maxResults": { + "description": "Maximum number of templates to return. Optional. Default is 5.", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "pageToken": { + "description": "Continuation token specifying which results page to return. Optional.", + "location": "query", + "type": "string" + }, + "tableId": { + "description": "Identifier for the table whose templates are being requested", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "tables/{tableId}/templates", + "response": { + "$ref": "TemplateList" + }, + "scopes": [ + "https://www.googleapis.com/auth/fusiontables", + "https://www.googleapis.com/auth/fusiontables.readonly" + ] + }, + "patch": { + "description": "Updates an existing template. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "fusiontables.template.patch", + "parameterOrder": [ + "tableId", + "templateId" + ], + "parameters": { + "tableId": { + "description": "Table to which the updated template belongs", + "location": "path", + "required": true, + "type": "string" + }, + "templateId": { + "description": "Identifier for the template that is being updated", + "format": "int32", + "location": "path", + "required": true, + "type": "integer" + } + }, + "path": "tables/{tableId}/templates/{templateId}", + "request": { + "$ref": "Template" + }, + "response": { + "$ref": "Template" + }, + "scopes": [ + "https://www.googleapis.com/auth/fusiontables" + ] + }, + "update": { + "description": "Updates an existing template", + "httpMethod": "PUT", + "id": "fusiontables.template.update", + "parameterOrder": [ + "tableId", + "templateId" + ], + "parameters": { + "tableId": { + "description": "Table to which the updated template belongs", + "location": "path", + "required": true, + "type": "string" + }, + "templateId": { + "description": "Identifier for the template that is being updated", + "format": "int32", + "location": "path", + "required": true, + "type": "integer" + } + }, + "path": "tables/{tableId}/templates/{templateId}", + "request": { + "$ref": "Template" + }, + "response": { + "$ref": "Template" + }, + "scopes": [ + "https://www.googleapis.com/auth/fusiontables" + ] + } } - }, - "parameterOrder": [ - "tableId" - ], - "response": { - "$ref": "TaskList" - }, - "scopes": [ - "https://www.googleapis.com/auth/fusiontables", - "https://www.googleapis.com/auth/fusiontables.readonly" - ] } - } }, - "template": { - "methods": { - "delete": { - "id": "fusiontables.template.delete", - "path": "tables/{tableId}/templates/{templateId}", - "httpMethod": "DELETE", - "description": "Deletes a template", - "parameters": { - "tableId": { - "type": "string", - "description": "Table from which the template is being deleted", - "required": true, - "location": "path" + "revision": "20171117", + "rootUrl": "https://www.googleapis.com/", + "schemas": { + "Bucket": { + "description": "Specifies the minimum and maximum values, the color, opacity, icon and weight of a bucket within a StyleSetting.", + "id": "Bucket", + "properties": { + "color": { + "description": "Color of line or the interior of a polygon in #RRGGBB format.", + "type": "string" + }, + "icon": { + "description": "Icon name used for a point.", + "type": "string" + }, + "max": { + "description": "Maximum value in the selected column for a row to be styled according to the bucket color, opacity, icon, or weight.", + "format": "double", + "type": "number" + }, + "min": { + "description": "Minimum value in the selected column for a row to be styled according to the bucket color, opacity, icon, or weight.", + "format": "double", + "type": "number" + }, + "opacity": { + "description": "Opacity of the color: 0.0 (transparent) to 1.0 (opaque).", + "format": "double", + "type": "number" + }, + "weight": { + "description": "Width of a line (in pixels).", + "format": "int32", + "type": "integer" + } }, - "templateId": { - "type": "integer", - "description": "Identifier for the template which is being deleted", - "required": true, - "format": "int32", - "location": "path" - } - }, - "parameterOrder": [ - "tableId", - "templateId" - ], - "scopes": [ - "https://www.googleapis.com/auth/fusiontables" - ] + "type": "object" }, - "get": { - "id": "fusiontables.template.get", - "path": "tables/{tableId}/templates/{templateId}", - "httpMethod": "GET", - "description": "Retrieves a specific template by its id", - "parameters": { - "tableId": { - "type": "string", - "description": "Table to which the template belongs", - "required": true, - "location": "path" + "Column": { + "description": "Specifies the id, name and type of a column in a table.", + "id": "Column", + "properties": { + "baseColumn": { + "description": "Optional identifier of the base column. If present, this column is derived from the specified base column.", + "properties": { + "columnId": { + "description": "The id of the column in the base table from which this column is derived.", + "format": "int32", + "type": "integer" + }, + "tableIndex": { + "description": "Offset to the entry in the list of base tables in the table definition.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "columnId": { + "description": "Identifier for the column.", + "format": "int32", + "type": "integer" + }, + "description": { + "description": "Optional column description.", + "type": "string" + }, + "graph_predicate": { + "description": "Optional column predicate. Used to map table to graph data model (subject,predicate,object) See http://www.w3.org/TR/2014/REC-rdf11-concepts-20140225/#data-model", + "type": "string" + }, + "kind": { + "default": "fusiontables#column", + "description": "Type name: a template for an individual column.", + "type": "string" + }, + "name": { + "annotations": { + "required": [ + "fusiontables.column.insert" + ] + }, + "description": "Required name of the column.", + "type": "string" + }, + "type": { + "annotations": { + "required": [ + "fusiontables.column.insert" + ] + }, + "description": "Required type of the column.", + "type": "string" + } }, - "templateId": { - "type": "integer", - "description": "Identifier for the template that is being requested", - "required": true, - "format": "int32", - "location": "path" - } - }, - "parameterOrder": [ - "tableId", - "templateId" - ], - "response": { - "$ref": "Template" - }, - "scopes": [ - "https://www.googleapis.com/auth/fusiontables", - "https://www.googleapis.com/auth/fusiontables.readonly" - ] + "type": "object" }, - "insert": { - "id": "fusiontables.template.insert", - "path": "tables/{tableId}/templates", - "httpMethod": "POST", - "description": "Creates a new template for the table.", - "parameters": { - "tableId": { - "type": "string", - "description": "Table for which a new template is being created", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "tableId" - ], - "request": { - "$ref": "Template" - }, - "response": { - "$ref": "Template" - }, - "scopes": [ - "https://www.googleapis.com/auth/fusiontables" - ] + "ColumnList": { + "description": "Represents a list of columns in a table.", + "id": "ColumnList", + "properties": { + "items": { + "description": "List of all requested columns.", + "items": { + "$ref": "Column" + }, + "type": "array" + }, + "kind": { + "default": "fusiontables#columnList", + "description": "Type name: a list of all columns.", + "type": "string" + }, + "nextPageToken": { + "description": "Token used to access the next page of this result. No token is displayed if there are no more pages left.", + "type": "string" + }, + "totalItems": { + "description": "Total number of columns for the table.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" }, - "list": { - "id": "fusiontables.template.list", - "path": "tables/{tableId}/templates", - "httpMethod": "GET", - "description": "Retrieves a list of templates.", - "parameters": { - "maxResults": { - "type": "integer", - "description": "Maximum number of templates to return. Optional. Default is 5.", - "format": "uint32", - "minimum": "0", - "location": "query" + "Geometry": { + "description": "Represents a Geometry object.", + "id": "Geometry", + "properties": { + "geometries": { + "description": "The list of geometries in this geometry collection.", + "items": { + "type": "any" + }, + "type": "array" + }, + "geometry": { + "type": "any" + }, + "type": { + "default": "GeometryCollection", + "description": "Type: A collection of geometries.", + "type": "string" + } }, - "pageToken": { - "type": "string", - "description": "Continuation token specifying which results page to return. Optional.", - "location": "query" - }, - "tableId": { - "type": "string", - "description": "Identifier for the table whose templates are being requested", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "tableId" - ], - "response": { - "$ref": "TemplateList" - }, - "scopes": [ - "https://www.googleapis.com/auth/fusiontables", - "https://www.googleapis.com/auth/fusiontables.readonly" - ] + "type": "object" }, - "patch": { - "id": "fusiontables.template.patch", - "path": "tables/{tableId}/templates/{templateId}", - "httpMethod": "PATCH", - "description": "Updates an existing template. This method supports patch semantics.", - "parameters": { - "tableId": { - "type": "string", - "description": "Table to which the updated template belongs", - "required": true, - "location": "path" + "Import": { + "description": "Represents an import request.", + "id": "Import", + "properties": { + "kind": { + "default": "fusiontables#import", + "description": "Type name: a template for an import request.", + "type": "string" + }, + "numRowsReceived": { + "description": "The number of rows received from the import request.", + "format": "int64", + "type": "string" + } }, - "templateId": { - "type": "integer", - "description": "Identifier for the template that is being updated", - "required": true, - "format": "int32", - "location": "path" - } - }, - "parameterOrder": [ - "tableId", - "templateId" - ], - "request": { - "$ref": "Template" - }, - "response": { - "$ref": "Template" - }, - "scopes": [ - "https://www.googleapis.com/auth/fusiontables" - ] + "type": "object" }, - "update": { - "id": "fusiontables.template.update", - "path": "tables/{tableId}/templates/{templateId}", - "httpMethod": "PUT", - "description": "Updates an existing template", - "parameters": { - "tableId": { - "type": "string", - "description": "Table to which the updated template belongs", - "required": true, - "location": "path" + "Line": { + "description": "Represents a line geometry.", + "id": "Line", + "properties": { + "coordinates": { + "description": "The coordinates that define the line.", + "items": { + "items": { + "format": "double", + "type": "number" + }, + "type": "array" + }, + "type": "array" + }, + "type": { + "default": "LineString", + "description": "Type: A line geometry.", + "type": "string" + } }, - "templateId": { - "type": "integer", - "description": "Identifier for the template that is being updated", - "required": true, - "format": "int32", - "location": "path" - } - }, - "parameterOrder": [ - "tableId", - "templateId" - ], - "request": { - "$ref": "Template" - }, - "response": { - "$ref": "Template" - }, - "scopes": [ - "https://www.googleapis.com/auth/fusiontables" - ] + "type": "object" + }, + "LineStyle": { + "description": "Represents a LineStyle within a StyleSetting", + "id": "LineStyle", + "properties": { + "strokeColor": { + "description": "Color of the line in #RRGGBB format.", + "type": "string" + }, + "strokeColorStyler": { + "$ref": "StyleFunction", + "description": "Column-value, gradient or buckets styler that is used to determine the line color and opacity." + }, + "strokeOpacity": { + "description": "Opacity of the line : 0.0 (transparent) to 1.0 (opaque).", + "format": "double", + "type": "number" + }, + "strokeWeight": { + "description": "Width of the line in pixels.", + "format": "int32", + "type": "integer" + }, + "strokeWeightStyler": { + "$ref": "StyleFunction", + "description": "Column-value or bucket styler that is used to determine the width of the line." + } + }, + "type": "object" + }, + "Point": { + "description": "Represents a point object.", + "id": "Point", + "properties": { + "coordinates": { + "description": "The coordinates that define the point.", + "items": { + "format": "double", + "type": "number" + }, + "type": "array" + }, + "type": { + "default": "Point", + "description": "Point: A point geometry.", + "type": "string" + } + }, + "type": "object" + }, + "PointStyle": { + "description": "Represents a PointStyle within a StyleSetting", + "id": "PointStyle", + "properties": { + "iconName": { + "description": "Name of the icon. Use values defined in http://www.google.com/fusiontables/DataSource?dsrcid=308519", + "type": "string" + }, + "iconStyler": { + "$ref": "StyleFunction", + "description": "Column or a bucket value from which the icon name is to be determined." + } + }, + "type": "object" + }, + "Polygon": { + "description": "Represents a polygon object.", + "id": "Polygon", + "properties": { + "coordinates": { + "description": "The coordinates that define the polygon.", + "items": { + "items": { + "items": { + "format": "double", + "type": "number" + }, + "type": "array" + }, + "type": "array" + }, + "type": "array" + }, + "type": { + "default": "Polygon", + "description": "Type: A polygon geometry.", + "type": "string" + } + }, + "type": "object" + }, + "PolygonStyle": { + "description": "Represents a PolygonStyle within a StyleSetting", + "id": "PolygonStyle", + "properties": { + "fillColor": { + "description": "Color of the interior of the polygon in #RRGGBB format.", + "type": "string" + }, + "fillColorStyler": { + "$ref": "StyleFunction", + "description": "Column-value, gradient, or bucket styler that is used to determine the interior color and opacity of the polygon." + }, + "fillOpacity": { + "description": "Opacity of the interior of the polygon: 0.0 (transparent) to 1.0 (opaque).", + "format": "double", + "type": "number" + }, + "strokeColor": { + "description": "Color of the polygon border in #RRGGBB format.", + "type": "string" + }, + "strokeColorStyler": { + "$ref": "StyleFunction", + "description": "Column-value, gradient or buckets styler that is used to determine the border color and opacity." + }, + "strokeOpacity": { + "description": "Opacity of the polygon border: 0.0 (transparent) to 1.0 (opaque).", + "format": "double", + "type": "number" + }, + "strokeWeight": { + "description": "Width of the polyon border in pixels.", + "format": "int32", + "type": "integer" + }, + "strokeWeightStyler": { + "$ref": "StyleFunction", + "description": "Column-value or bucket styler that is used to determine the width of the polygon border." + } + }, + "type": "object" + }, + "Sqlresponse": { + "description": "Represents a response to an sql statement.", + "id": "Sqlresponse", + "properties": { + "columns": { + "description": "Columns in the table.", + "items": { + "type": "string" + }, + "type": "array" + }, + "kind": { + "default": "fusiontables#sqlresponse", + "description": "Type name: a template for an individual table.", + "type": "string" + }, + "rows": { + "description": "The rows in the table. For each cell we print out whatever cell value (e.g., numeric, string) exists. Thus it is important that each cell contains only one value.", + "items": { + "items": { + "type": "any" + }, + "type": "array" + }, + "type": "array" + } + }, + "type": "object" + }, + "StyleFunction": { + "description": "Represents a StyleFunction within a StyleSetting", + "id": "StyleFunction", + "properties": { + "buckets": { + "description": "Bucket function that assigns a style based on the range a column value falls into.", + "items": { + "$ref": "Bucket" + }, + "type": "array" + }, + "columnName": { + "annotations": { + "required": [ + "fusiontables.style.insert" + ] + }, + "description": "Name of the column whose value is used in the style.", + "type": "string" + }, + "gradient": { + "description": "Gradient function that interpolates a range of colors based on column value.", + "properties": { + "colors": { + "description": "Array with two or more colors.", + "items": { + "properties": { + "color": { + "description": "Color in #RRGGBB format.", + "type": "string" + }, + "opacity": { + "description": "Opacity of the color: 0.0 (transparent) to 1.0 (opaque).", + "format": "double", + "type": "number" + } + }, + "type": "object" + }, + "type": "array" + }, + "max": { + "description": "Higher-end of the interpolation range: rows with this value will be assigned to colors[n-1].", + "format": "double", + "type": "number" + }, + "min": { + "description": "Lower-end of the interpolation range: rows with this value will be assigned to colors[0].", + "format": "double", + "type": "number" + } + }, + "type": "object" + }, + "kind": { + "description": "Stylers can be one of three kinds: \"fusiontables#fromColumn\" if the column value is to be used as is, i.e., the column values can have colors in #RRGGBBAA format or integer line widths or icon names; \"fusiontables#gradient\" if the styling of the row is to be based on applying the gradient function on the column value; or \"fusiontables#buckets\" if the styling is to based on the bucket into which the the column value falls.", + "type": "string" + } + }, + "type": "object" + }, + "StyleSetting": { + "description": "Represents a complete StyleSettings object. The primary key is a combination of the tableId and a styleId.", + "id": "StyleSetting", + "properties": { + "kind": { + "default": "fusiontables#styleSetting", + "description": "Type name: an individual style setting. A StyleSetting contains the style defintions for points, lines, and polygons in a table. Since a table can have any one or all of them, a style definition can have point, line and polygon style definitions.", + "type": "string" + }, + "markerOptions": { + "$ref": "PointStyle", + "description": "Style definition for points in the table." + }, + "name": { + "description": "Optional name for the style setting.", + "type": "string" + }, + "polygonOptions": { + "$ref": "PolygonStyle", + "description": "Style definition for polygons in the table." + }, + "polylineOptions": { + "$ref": "LineStyle", + "description": "Style definition for lines in the table." + }, + "styleId": { + "description": "Identifier for the style setting (unique only within tables).", + "format": "int32", + "type": "integer" + }, + "tableId": { + "description": "Identifier for the table.", + "type": "string" + } + }, + "type": "object" + }, + "StyleSettingList": { + "description": "Represents a list of styles for a given table.", + "id": "StyleSettingList", + "properties": { + "items": { + "description": "All requested style settings.", + "items": { + "$ref": "StyleSetting" + }, + "type": "array" + }, + "kind": { + "default": "fusiontables#styleSettingList", + "description": "Type name: in this case, a list of style settings.", + "type": "string" + }, + "nextPageToken": { + "description": "Token used to access the next page of this result. No token is displayed if there are no more pages left.", + "type": "string" + }, + "totalItems": { + "description": "Total number of styles for the table.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "Table": { + "description": "Represents a table. Specifies the name, whether it is exportable, description, attribution, and attribution link.", + "id": "Table", + "properties": { + "attribution": { + "description": "Optional attribution assigned to the table.", + "type": "string" + }, + "attributionLink": { + "description": "Optional link for attribution.", + "type": "string" + }, + "baseTableIds": { + "description": "Optional base table identifier if this table is a view or merged table.", + "items": { + "type": "string" + }, + "type": "array" + }, + "columns": { + "annotations": { + "required": [ + "fusiontables.table.insert", + "fusiontables.table.update" + ] + }, + "description": "Columns in the table.", + "items": { + "$ref": "Column" + }, + "type": "array" + }, + "description": { + "description": "Optional description assigned to the table.", + "type": "string" + }, + "isExportable": { + "annotations": { + "required": [ + "fusiontables.table.insert", + "fusiontables.table.update" + ] + }, + "description": "Variable for whether table is exportable.", + "type": "boolean" + }, + "kind": { + "default": "fusiontables#table", + "description": "Type name: a template for an individual table.", + "type": "string" + }, + "name": { + "annotations": { + "required": [ + "fusiontables.table.insert", + "fusiontables.table.update" + ] + }, + "description": "Name assigned to a table.", + "type": "string" + }, + "sql": { + "description": "Optional sql that encodes the table definition for derived tables.", + "type": "string" + }, + "tableId": { + "description": "Encrypted unique alphanumeric identifier for the table.", + "type": "string" + } + }, + "type": "object" + }, + "TableList": { + "description": "Represents a list of tables.", + "id": "TableList", + "properties": { + "items": { + "description": "List of all requested tables.", + "items": { + "$ref": "Table" + }, + "type": "array" + }, + "kind": { + "default": "fusiontables#tableList", + "description": "Type name: a list of all tables.", + "type": "string" + }, + "nextPageToken": { + "description": "Token used to access the next page of this result. No token is displayed if there are no more pages left.", + "type": "string" + } + }, + "type": "object" + }, + "Task": { + "description": "Specifies the identifier, name, and type of a task in a table.", + "id": "Task", + "properties": { + "kind": { + "default": "fusiontables#task", + "description": "Type of the resource. This is always \"fusiontables#task\".", + "type": "string" + }, + "progress": { + "description": "An indication of task progress.", + "type": "string" + }, + "started": { + "description": "false while the table is busy with some other task. true if this background task is currently running.", + "type": "boolean" + }, + "taskId": { + "description": "Identifier for the task.", + "format": "int64", + "type": "string" + }, + "type": { + "description": "Type of background task. One of DELETE_ROWS Deletes one or more rows from the table. ADD_ROWS \"Adds one or more rows to a table. Includes importing data into a new table and importing more rows into an existing table. ADD_COLUMN Adds a new column to the table. CHANGE_TYPE Changes the type of a column.", + "type": "string" + } + }, + "type": "object" + }, + "TaskList": { + "description": "Represents a list of tasks for a table.", + "id": "TaskList", + "properties": { + "items": { + "description": "List of all requested tasks.", + "items": { + "$ref": "Task" + }, + "type": "array" + }, + "kind": { + "default": "fusiontables#taskList", + "description": "Type of the resource. This is always \"fusiontables#taskList\".", + "type": "string" + }, + "nextPageToken": { + "description": "Token used to access the next page of this result. No token is displayed if there are no more pages left.", + "type": "string" + }, + "totalItems": { + "description": "Total number of tasks for the table.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "Template": { + "description": "Represents the contents of InfoWindow templates.", + "id": "Template", + "properties": { + "automaticColumnNames": { + "description": "List of columns from which the template is to be automatically constructed. Only one of body or automaticColumns can be specified.", + "items": { + "type": "string" + }, + "type": "array" + }, + "body": { + "description": "Body of the template. It contains HTML with {column_name} to insert values from a particular column. The body is sanitized to remove certain tags, e.g., script. Only one of body or automaticColumns can be specified.", + "type": "string" + }, + "kind": { + "default": "fusiontables#template", + "description": "Type name: a template for the info window contents. The template can either include an HTML body or a list of columns from which the template is computed automatically.", + "type": "string" + }, + "name": { + "description": "Optional name assigned to a template.", + "type": "string" + }, + "tableId": { + "description": "Identifier for the table for which the template is defined.", + "type": "string" + }, + "templateId": { + "description": "Identifier for the template, unique within the context of a particular table.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "TemplateList": { + "description": "Represents a list of templates for a given table.", + "id": "TemplateList", + "properties": { + "items": { + "description": "List of all requested templates.", + "items": { + "$ref": "Template" + }, + "type": "array" + }, + "kind": { + "default": "fusiontables#templateList", + "description": "Type name: a list of all templates.", + "type": "string" + }, + "nextPageToken": { + "description": "Token used to access the next page of this result. No token is displayed if there are no more pages left.", + "type": "string" + }, + "totalItems": { + "description": "Total number of templates for the table.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" } - } - } - } -} + }, + "servicePath": "fusiontables/v1/", + "title": "Fusion Tables API", + "version": "v1" +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/fusiontables/v1/fusiontables-gen.go b/vendor/google.golang.org/api/fusiontables/v1/fusiontables-gen.go index 6919020d2..8f80cd7cb 100644 --- a/vendor/google.golang.org/api/fusiontables/v1/fusiontables-gen.go +++ b/vendor/google.golang.org/api/fusiontables/v1/fusiontables-gen.go @@ -3805,11 +3805,12 @@ func (c *TableImportRowsCall) doRequest(alt string) (*http.Response, error) { body = new(bytes.Buffer) reqHeaders.Set("Content-Type", "application/json") } - body, cleanup := c.mediaInfo_.UploadRequest(reqHeaders, body) + body, getBody, cleanup := c.mediaInfo_.UploadRequest(reqHeaders, body) defer cleanup() urls += "?" + c.urlParams_.Encode() req, _ := http.NewRequest("POST", urls, body) req.Header = reqHeaders + gensupport.SetGetBody(req, getBody) googleapi.Expand(req.URL, map[string]string{ "tableId": c.tableId, }) @@ -4054,11 +4055,12 @@ func (c *TableImportTableCall) doRequest(alt string) (*http.Response, error) { body = new(bytes.Buffer) reqHeaders.Set("Content-Type", "application/json") } - body, cleanup := c.mediaInfo_.UploadRequest(reqHeaders, body) + body, getBody, cleanup := c.mediaInfo_.UploadRequest(reqHeaders, body) defer cleanup() urls += "?" + c.urlParams_.Encode() req, _ := http.NewRequest("POST", urls, body) req.Header = reqHeaders + gensupport.SetGetBody(req, getBody) return gensupport.SendRequest(c.ctx_, c.s.client, req) } diff --git a/vendor/google.golang.org/api/fusiontables/v2/fusiontables-api.json b/vendor/google.golang.org/api/fusiontables/v2/fusiontables-api.json index dfda240de..21d3350e8 100644 --- a/vendor/google.golang.org/api/fusiontables/v2/fusiontables-api.json +++ b/vendor/google.golang.org/api/fusiontables/v2/fusiontables-api.json @@ -1,1955 +1,1955 @@ { - "kind": "discovery#restDescription", - "etag": "\"YWOzh2SDasdU84ArJnpYek-OMdg/_bC0Z0nYODnrZBcW4xrPKn1ZzhA\"", - "discoveryVersion": "v1", - "id": "fusiontables:v2", - "name": "fusiontables", - "version": "v2", - "revision": "20171117", - "title": "Fusion Tables API", - "description": "API for working with Fusion Tables data.", - "ownerDomain": "google.com", - "ownerName": "Google", - "icons": { - "x16": "https://www.gstatic.com/images/branding/product/1x/googleg_16dp.png", - "x32": "https://www.gstatic.com/images/branding/product/1x/googleg_32dp.png" - }, - "documentationLink": "https://developers.google.com/fusiontables", - "protocol": "rest", - "baseUrl": "https://www.googleapis.com/fusiontables/v2/", - "basePath": "/fusiontables/v2/", - "rootUrl": "https://www.googleapis.com/", - "servicePath": "fusiontables/v2/", - "batchPath": "batch/fusiontables/v2", - "parameters": { - "alt": { - "type": "string", - "description": "Data format for the response.", - "default": "json", - "enum": [ - "csv", - "json" - ], - "enumDescriptions": [ - "Responses with Content-Type of text/csv", - "Responses with Content-Type of application/json" - ], - "location": "query" - }, - "fields": { - "type": "string", - "description": "Selector specifying which fields to include in a partial response.", - "location": "query" - }, - "key": { - "type": "string", - "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" - }, - "oauth_token": { - "type": "string", - "description": "OAuth 2.0 token for the current user.", - "location": "query" - }, - "prettyPrint": { - "type": "boolean", - "description": "Returns response with indentations and line breaks.", - "default": "true", - "location": "query" - }, - "quotaUser": { - "type": "string", - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", - "location": "query" - }, - "userIp": { - "type": "string", - "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", - "location": "query" - } - }, - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/fusiontables": { - "description": "Manage your Fusion Tables" - }, - "https://www.googleapis.com/auth/fusiontables.readonly": { - "description": "View your Fusion Tables" - } - } - } - }, - "schemas": { - "Bucket": { - "id": "Bucket", - "type": "object", - "description": "Specifies the minimum and maximum values, the color, opacity, icon and weight of a bucket within a StyleSetting.", - "properties": { - "color": { - "type": "string", - "description": "Color of line or the interior of a polygon in #RRGGBB format." - }, - "icon": { - "type": "string", - "description": "Icon name used for a point." - }, - "max": { - "type": "number", - "description": "Maximum value in the selected column for a row to be styled according to the bucket color, opacity, icon, or weight.", - "format": "double" - }, - "min": { - "type": "number", - "description": "Minimum value in the selected column for a row to be styled according to the bucket color, opacity, icon, or weight.", - "format": "double" - }, - "opacity": { - "type": "number", - "description": "Opacity of the color: 0.0 (transparent) to 1.0 (opaque).", - "format": "double" - }, - "weight": { - "type": "integer", - "description": "Width of a line (in pixels).", - "format": "int32" - } - } - }, - "Column": { - "id": "Column", - "type": "object", - "description": "Specifies the details of a column in a table.", - "properties": { - "baseColumn": { - "type": "object", - "description": "Identifier of the base column. If present, this column is derived from the specified base column.", - "properties": { - "columnId": { - "type": "integer", - "description": "The id of the column in the base table from which this column is derived.", - "format": "int32" - }, - "tableIndex": { - "type": "integer", - "description": "Offset to the entry in the list of base tables in the table definition.", - "format": "int32" - } - } - }, - "columnId": { - "type": "integer", - "description": "Identifier for the column.", - "format": "int32" - }, - "columnJsonSchema": { - "type": "string", - "description": "JSON schema for interpreting JSON in this column." - }, - "columnPropertiesJson": { - "type": "string", - "description": "JSON object containing custom column properties." - }, - "description": { - "type": "string", - "description": "Column description." - }, - "formatPattern": { - "type": "string", - "description": "Format pattern.\nAcceptable values are DT_DATE_MEDIUMe.g Dec 24, 2008 DT_DATE_SHORTfor example 12/24/08 DT_DATE_TIME_MEDIUMfor example Dec 24, 2008 8:30:45 PM DT_DATE_TIME_SHORTfor example 12/24/08 8:30 PM DT_DAY_MONTH_2_DIGIT_YEARfor example 24/12/08 DT_DAY_MONTH_2_DIGIT_YEAR_TIMEfor example 24/12/08 20:30 DT_DAY_MONTH_2_DIGIT_YEAR_TIME_MERIDIANfor example 24/12/08 8:30 PM DT_DAY_MONTH_4_DIGIT_YEARfor example 24/12/2008 DT_DAY_MONTH_4_DIGIT_YEAR_TIMEfor example 24/12/2008 20:30 DT_DAY_MONTH_4_DIGIT_YEAR_TIME_MERIDIANfor example 24/12/2008 8:30 PM DT_ISO_YEAR_MONTH_DAYfor example 2008-12-24 DT_ISO_YEAR_MONTH_DAY_TIMEfor example 2008-12-24 20:30:45 DT_MONTH_DAY_4_DIGIT_YEARfor example 12/24/2008 DT_TIME_LONGfor example 8:30:45 PM UTC-6 DT_TIME_MEDIUMfor example 8:30:45 PM DT_TIME_SHORTfor example 8:30 PM DT_YEAR_ONLYfor example 2008 HIGHLIGHT_UNTYPED_CELLSHighlight cell data that does not match the data type NONENo formatting (default) NUMBER_CURRENCYfor example $1234.56 NUMBER_DEFAULTfor example 1,234.56 NUMBER_INTEGERfor example 1235 NUMBER_NO_SEPARATORfor example 1234.56 NUMBER_PERCENTfor example 123,456% NUMBER_SCIENTIFICfor example 1E3 STRING_EIGHT_LINE_IMAGEDisplays thumbnail images as tall as eight lines of text STRING_FOUR_LINE_IMAGEDisplays thumbnail images as tall as four lines of text STRING_JSON_TEXTAllows editing of text as JSON in UI STRING_JSON_LISTAllows editing of text as a JSON list in UI STRING_LINKTreats cell as a link (must start with http:// or https://) STRING_ONE_LINE_IMAGEDisplays thumbnail images as tall as one line of text STRING_VIDEO_OR_MAPDisplay a video or map thumbnail" - }, - "graphPredicate": { - "type": "string", - "description": "Column graph predicate.\nUsed to map table to graph data model (subject,predicate,object)\nSee W3C Graph-based Data Model." - }, - "kind": { - "type": "string", - "description": "The kind of item this is. For a column, this is always fusiontables#column.", - "default": "fusiontables#column" - }, - "name": { - "type": "string", - "description": "Name of the column.", - "annotations": { - "required": [ - "fusiontables.column.insert" - ] - } - }, - "type": { - "type": "string", - "description": "Type of the column.", - "annotations": { - "required": [ - "fusiontables.column.insert" - ] - } - }, - "validValues": { - "type": "array", - "description": "List of valid values used to validate data and supply a drop-down list of values in the web application.", - "items": { - "type": "string" - } - }, - "validateData": { - "type": "boolean", - "description": "If true, data entered via the web application is validated." - } - } - }, - "ColumnList": { - "id": "ColumnList", - "type": "object", - "description": "Represents a list of columns in a table.", - "properties": { - "items": { - "type": "array", - "description": "List of all requested columns.", - "items": { - "$ref": "Column" - } - }, - "kind": { - "type": "string", - "description": "The kind of item this is. For a column list, this is always fusiontables#columnList.", - "default": "fusiontables#columnList" - }, - "nextPageToken": { - "type": "string", - "description": "Token used to access the next page of this result. No token is displayed if there are no more pages left." - }, - "totalItems": { - "type": "integer", - "description": "Total number of columns for the table.", - "format": "int32" - } - } - }, - "Geometry": { - "id": "Geometry", - "type": "object", - "description": "Represents a Geometry object.", - "properties": { - "geometries": { - "type": "array", - "description": "The list of geometries in this geometry collection.", - "items": { - "type": "any" - } - }, - "geometry": { - "type": "any" - }, - "type": { - "type": "string", - "description": "Type: A collection of geometries.", - "default": "GeometryCollection" - } - } - }, - "Import": { - "id": "Import", - "type": "object", - "description": "Represents an import request.", - "properties": { - "kind": { - "type": "string", - "description": "The kind of item this is. For an import, this is always fusiontables#import.", - "default": "fusiontables#import" - }, - "numRowsReceived": { - "type": "string", - "description": "The number of rows received from the import request.", - "format": "int64" - } - } - }, - "Line": { - "id": "Line", - "type": "object", - "description": "Represents a line geometry.", - "properties": { - "coordinates": { - "type": "array", - "description": "The coordinates that define the line.", - "items": { - "type": "array", - "items": { - "type": "number", - "format": "double" - } - } - }, - "type": { - "type": "string", - "description": "Type: A line geometry.", - "default": "LineString" - } - } - }, - "LineStyle": { - "id": "LineStyle", - "type": "object", - "description": "Represents a LineStyle within a StyleSetting", - "properties": { - "strokeColor": { - "type": "string", - "description": "Color of the line in #RRGGBB format." - }, - "strokeColorStyler": { - "$ref": "StyleFunction", - "description": "Column-value, gradient or buckets styler that is used to determine the line color and opacity." - }, - "strokeOpacity": { - "type": "number", - "description": "Opacity of the line : 0.0 (transparent) to 1.0 (opaque).", - "format": "double" - }, - "strokeWeight": { - "type": "integer", - "description": "Width of the line in pixels.", - "format": "int32" - }, - "strokeWeightStyler": { - "$ref": "StyleFunction", - "description": "Column-value or bucket styler that is used to determine the width of the line." - } - } - }, - "Point": { - "id": "Point", - "type": "object", - "description": "Represents a point object.", - "properties": { - "coordinates": { - "type": "array", - "description": "The coordinates that define the point.", - "items": { - "type": "number", - "format": "double" - } - }, - "type": { - "type": "string", - "description": "Point: A point geometry.", - "default": "Point" - } - } - }, - "PointStyle": { - "id": "PointStyle", - "type": "object", - "description": "Represents a PointStyle within a StyleSetting", - "properties": { - "iconName": { - "type": "string", - "description": "Name of the icon. Use values defined in http://www.google.com/fusiontables/DataSource?dsrcid=308519" - }, - "iconStyler": { - "$ref": "StyleFunction", - "description": "Column or a bucket value from which the icon name is to be determined." - } - } - }, - "Polygon": { - "id": "Polygon", - "type": "object", - "description": "Represents a polygon object.", - "properties": { - "coordinates": { - "type": "array", - "description": "The coordinates that define the polygon.", - "items": { - "type": "array", - "items": { - "type": "array", - "items": { - "type": "number", - "format": "double" - } - } - } - }, - "type": { - "type": "string", - "description": "Type: A polygon geometry.", - "default": "Polygon" - } - } - }, - "PolygonStyle": { - "id": "PolygonStyle", - "type": "object", - "description": "Represents a PolygonStyle within a StyleSetting", - "properties": { - "fillColor": { - "type": "string", - "description": "Color of the interior of the polygon in #RRGGBB format." - }, - "fillColorStyler": { - "$ref": "StyleFunction", - "description": "Column-value, gradient, or bucket styler that is used to determine the interior color and opacity of the polygon." - }, - "fillOpacity": { - "type": "number", - "description": "Opacity of the interior of the polygon: 0.0 (transparent) to 1.0 (opaque).", - "format": "double" - }, - "strokeColor": { - "type": "string", - "description": "Color of the polygon border in #RRGGBB format." - }, - "strokeColorStyler": { - "$ref": "StyleFunction", - "description": "Column-value, gradient or buckets styler that is used to determine the border color and opacity." - }, - "strokeOpacity": { - "type": "number", - "description": "Opacity of the polygon border: 0.0 (transparent) to 1.0 (opaque).", - "format": "double" - }, - "strokeWeight": { - "type": "integer", - "description": "Width of the polyon border in pixels.", - "format": "int32" - }, - "strokeWeightStyler": { - "$ref": "StyleFunction", - "description": "Column-value or bucket styler that is used to determine the width of the polygon border." - } - } - }, - "Sqlresponse": { - "id": "Sqlresponse", - "type": "object", - "description": "Represents a response to a SQL statement.", - "properties": { - "columns": { - "type": "array", - "description": "Columns in the table.", - "items": { - "type": "string" - } - }, - "kind": { - "type": "string", - "description": "The kind of item this is. For responses to SQL queries, this is always fusiontables#sqlresponse.", - "default": "fusiontables#sqlresponse" - }, - "rows": { - "type": "array", - "description": "The rows in the table. For each cell we print out whatever cell value (e.g., numeric, string) exists. Thus it is important that each cell contains only one value.", - "items": { - "type": "array", - "items": { - "type": "any" - } - } - } - } - }, - "StyleFunction": { - "id": "StyleFunction", - "type": "object", - "description": "Represents a StyleFunction within a StyleSetting", - "properties": { - "buckets": { - "type": "array", - "description": "Bucket function that assigns a style based on the range a column value falls into.", - "items": { - "$ref": "Bucket" - } - }, - "columnName": { - "type": "string", - "description": "Name of the column whose value is used in the style.", - "annotations": { - "required": [ - "fusiontables.style.insert" - ] - } - }, - "gradient": { - "type": "object", - "description": "Gradient function that interpolates a range of colors based on column value.", - "properties": { - "colors": { - "type": "array", - "description": "Array with two or more colors.", - "items": { - "type": "object", - "properties": { - "color": { - "type": "string", - "description": "Color in #RRGGBB format." - }, - "opacity": { - "type": "number", - "description": "Opacity of the color: 0.0 (transparent) to 1.0 (opaque).", - "format": "double" - } + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/fusiontables": { + "description": "Manage your Fusion Tables" + }, + "https://www.googleapis.com/auth/fusiontables.readonly": { + "description": "View your Fusion Tables" } - } - }, - "max": { - "type": "number", - "description": "Higher-end of the interpolation range: rows with this value will be assigned to colors[n-1].", - "format": "double" - }, - "min": { - "type": "number", - "description": "Lower-end of the interpolation range: rows with this value will be assigned to colors[0].", - "format": "double" } - } - }, - "kind": { - "type": "string", - "description": "Stylers can be one of three kinds: \"fusiontables#fromColumn if the column value is to be used as is, i.e., the column values can have colors in #RRGGBBAA format or integer line widths or icon names; fusiontables#gradient if the styling of the row is to be based on applying the gradient function on the column value; or fusiontables#buckets if the styling is to based on the bucket into which the the column value falls." } - } }, - "StyleSetting": { - "id": "StyleSetting", - "type": "object", - "description": "Represents a complete StyleSettings object. The primary key is a combination of the tableId and a styleId.", - "properties": { - "kind": { - "type": "string", - "description": "The kind of item this is. A StyleSetting contains the style definitions for points, lines, and polygons in a table. Since a table can have any one or all of them, a style definition can have point, line and polygon style definitions.", - "default": "fusiontables#styleSetting" - }, - "markerOptions": { - "$ref": "PointStyle", - "description": "Style definition for points in the table." - }, - "name": { - "type": "string", - "description": "Optional name for the style setting." - }, - "polygonOptions": { - "$ref": "PolygonStyle", - "description": "Style definition for polygons in the table." - }, - "polylineOptions": { - "$ref": "LineStyle", - "description": "Style definition for lines in the table." - }, - "styleId": { - "type": "integer", - "description": "Identifier for the style setting (unique only within tables).", - "format": "int32" - }, - "tableId": { - "type": "string", - "description": "Identifier for the table." - } - } + "basePath": "/fusiontables/v2/", + "baseUrl": "https://www.googleapis.com/fusiontables/v2/", + "batchPath": "batch/fusiontables/v2", + "description": "API for working with Fusion Tables data.", + "discoveryVersion": "v1", + "documentationLink": "https://developers.google.com/fusiontables", + "etag": "\"-iA1DTNe4s-I6JZXPt1t1Ypy8IU/_bC0Z0nYODnrZBcW4xrPKn1ZzhA\"", + "icons": { + "x16": "https://www.gstatic.com/images/branding/product/1x/googleg_16dp.png", + "x32": "https://www.gstatic.com/images/branding/product/1x/googleg_32dp.png" }, - "StyleSettingList": { - "id": "StyleSettingList", - "type": "object", - "description": "Represents a list of styles for a given table.", - "properties": { - "items": { - "type": "array", - "description": "All requested style settings.", - "items": { - "$ref": "StyleSetting" - } - }, - "kind": { - "type": "string", - "description": "The kind of item this is. For a style list, this is always fusiontables#styleSettingList .", - "default": "fusiontables#styleSettingList" - }, - "nextPageToken": { - "type": "string", - "description": "Token used to access the next page of this result. No token is displayed if there are no more styles left." - }, - "totalItems": { - "type": "integer", - "description": "Total number of styles for the table.", - "format": "int32" - } - } - }, - "Table": { - "id": "Table", - "type": "object", - "description": "Represents a table.", - "properties": { - "attribution": { - "type": "string", - "description": "Attribution assigned to the table." - }, - "attributionLink": { - "type": "string", - "description": "Optional link for attribution." - }, - "baseTableIds": { - "type": "array", - "description": "Base table identifier if this table is a view or merged table.", - "items": { + "id": "fusiontables:v2", + "kind": "discovery#restDescription", + "name": "fusiontables", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "alt": { + "default": "json", + "description": "Data format for the response.", + "enum": [ + "csv", + "json" + ], + "enumDescriptions": [ + "Responses with Content-Type of text/csv", + "Responses with Content-Type of application/json" + ], + "location": "query", "type": "string" - } }, - "columnPropertiesJsonSchema": { - "type": "string", - "description": "Default JSON schema for validating all JSON column properties." - }, - "columns": { - "type": "array", - "description": "Columns in the table.", - "items": { - "$ref": "Column" - }, - "annotations": { - "required": [ - "fusiontables.table.insert", - "fusiontables.table.update" - ] - } - }, - "description": { - "type": "string", - "description": "Description assigned to the table." - }, - "isExportable": { - "type": "boolean", - "description": "Variable for whether table is exportable.", - "annotations": { - "required": [ - "fusiontables.table.insert", - "fusiontables.table.update" - ] - } - }, - "kind": { - "type": "string", - "description": "The kind of item this is. For a table, this is always fusiontables#table.", - "default": "fusiontables#table" - }, - "name": { - "type": "string", - "description": "Name assigned to a table.", - "annotations": { - "required": [ - "fusiontables.table.insert", - "fusiontables.table.update" - ] - } - }, - "sql": { - "type": "string", - "description": "SQL that encodes the table definition for derived tables." - }, - "tableId": { - "type": "string", - "description": "Encrypted unique alphanumeric identifier for the table." - }, - "tablePropertiesJson": { - "type": "string", - "description": "JSON object containing custom table properties." - }, - "tablePropertiesJsonSchema": { - "type": "string", - "description": "JSON schema for validating the JSON table properties." - } - } - }, - "TableList": { - "id": "TableList", - "type": "object", - "description": "Represents a list of tables.", - "properties": { - "items": { - "type": "array", - "description": "List of all requested tables.", - "items": { - "$ref": "Table" - } - }, - "kind": { - "type": "string", - "description": "The kind of item this is. For table list, this is always fusiontables#tableList.", - "default": "fusiontables#tableList" - }, - "nextPageToken": { - "type": "string", - "description": "Token used to access the next page of this result. No token is displayed if there are no more pages left." - } - } - }, - "Task": { - "id": "Task", - "type": "object", - "description": "A background task on a table, initiated for time- or resource-consuming operations such as changing column types or deleting all rows.", - "properties": { - "kind": { - "type": "string", - "description": "Type of the resource. This is always \"fusiontables#task\".", - "default": "fusiontables#task" - }, - "progress": { - "type": "string", - "description": "Task percentage completion." - }, - "started": { - "type": "boolean", - "description": "false while the table is busy with some other task. true if this background task is currently running." - }, - "taskId": { - "type": "string", - "description": "Identifier for the task.", - "format": "int64" - }, - "type": { - "type": "string", - "description": "Type of background task." - } - } - }, - "TaskList": { - "id": "TaskList", - "type": "object", - "description": "Represents a list of tasks for a table.", - "properties": { - "items": { - "type": "array", - "description": "List of all requested tasks.", - "items": { - "$ref": "Task" - } - }, - "kind": { - "type": "string", - "description": "Type of the resource. This is always \"fusiontables#taskList\".", - "default": "fusiontables#taskList" - }, - "nextPageToken": { - "type": "string", - "description": "Token used to access the next page of this result. No token is displayed if there are no more pages left." - }, - "totalItems": { - "type": "integer", - "description": "Total number of tasks for the table.", - "format": "int32" - } - } - }, - "Template": { - "id": "Template", - "type": "object", - "description": "Represents the contents of InfoWindow templates.", - "properties": { - "automaticColumnNames": { - "type": "array", - "description": "List of columns from which the template is to be automatically constructed. Only one of body or automaticColumns can be specified.", - "items": { + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "location": "query", "type": "string" - } }, - "body": { - "type": "string", - "description": "Body of the template. It contains HTML with {column_name} to insert values from a particular column. The body is sanitized to remove certain tags, e.g., script. Only one of body or automaticColumns can be specified." + "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" }, - "kind": { - "type": "string", - "description": "The kind of item this is. For a template, this is always fusiontables#template.", - "default": "fusiontables#template" + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" }, - "name": { - "type": "string", - "description": "Optional name assigned to a template." + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" }, - "tableId": { - "type": "string", - "description": "Identifier for the table for which the template is defined." + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", + "location": "query", + "type": "string" }, - "templateId": { - "type": "integer", - "description": "Identifier for the template, unique within the context of a particular table.", - "format": "int32" + "userIp": { + "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", + "location": "query", + "type": "string" } - } }, - "TemplateList": { - "id": "TemplateList", - "type": "object", - "description": "Represents a list of templates for a given table.", - "properties": { - "items": { - "type": "array", - "description": "List of all requested templates.", - "items": { - "$ref": "Template" - } + "protocol": "rest", + "resources": { + "column": { + "methods": { + "delete": { + "description": "Deletes the specified column.", + "httpMethod": "DELETE", + "id": "fusiontables.column.delete", + "parameterOrder": [ + "tableId", + "columnId" + ], + "parameters": { + "columnId": { + "description": "Name or identifier for the column being deleted.", + "location": "path", + "required": true, + "type": "string" + }, + "tableId": { + "description": "Table from which the column is being deleted.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "tables/{tableId}/columns/{columnId}", + "scopes": [ + "https://www.googleapis.com/auth/fusiontables" + ] + }, + "get": { + "description": "Retrieves a specific column by its ID.", + "httpMethod": "GET", + "id": "fusiontables.column.get", + "parameterOrder": [ + "tableId", + "columnId" + ], + "parameters": { + "columnId": { + "description": "Name or identifier for the column that is being requested.", + "location": "path", + "required": true, + "type": "string" + }, + "tableId": { + "description": "Table to which the column belongs.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "tables/{tableId}/columns/{columnId}", + "response": { + "$ref": "Column" + }, + "scopes": [ + "https://www.googleapis.com/auth/fusiontables", + "https://www.googleapis.com/auth/fusiontables.readonly" + ] + }, + "insert": { + "description": "Adds a new column to the table.", + "httpMethod": "POST", + "id": "fusiontables.column.insert", + "parameterOrder": [ + "tableId" + ], + "parameters": { + "tableId": { + "description": "Table for which a new column is being added.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "tables/{tableId}/columns", + "request": { + "$ref": "Column" + }, + "response": { + "$ref": "Column" + }, + "scopes": [ + "https://www.googleapis.com/auth/fusiontables" + ] + }, + "list": { + "description": "Retrieves a list of columns.", + "httpMethod": "GET", + "id": "fusiontables.column.list", + "parameterOrder": [ + "tableId" + ], + "parameters": { + "maxResults": { + "description": "Maximum number of columns to return. Default is 5.", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "pageToken": { + "description": "Continuation token specifying which result page to return.", + "location": "query", + "type": "string" + }, + "tableId": { + "description": "Table whose columns are being listed.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "tables/{tableId}/columns", + "response": { + "$ref": "ColumnList" + }, + "scopes": [ + "https://www.googleapis.com/auth/fusiontables", + "https://www.googleapis.com/auth/fusiontables.readonly" + ] + }, + "patch": { + "description": "Updates the name or type of an existing column. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "fusiontables.column.patch", + "parameterOrder": [ + "tableId", + "columnId" + ], + "parameters": { + "columnId": { + "description": "Name or identifier for the column that is being updated.", + "location": "path", + "required": true, + "type": "string" + }, + "tableId": { + "description": "Table for which the column is being updated.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "tables/{tableId}/columns/{columnId}", + "request": { + "$ref": "Column" + }, + "response": { + "$ref": "Column" + }, + "scopes": [ + "https://www.googleapis.com/auth/fusiontables" + ] + }, + "update": { + "description": "Updates the name or type of an existing column.", + "httpMethod": "PUT", + "id": "fusiontables.column.update", + "parameterOrder": [ + "tableId", + "columnId" + ], + "parameters": { + "columnId": { + "description": "Name or identifier for the column that is being updated.", + "location": "path", + "required": true, + "type": "string" + }, + "tableId": { + "description": "Table for which the column is being updated.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "tables/{tableId}/columns/{columnId}", + "request": { + "$ref": "Column" + }, + "response": { + "$ref": "Column" + }, + "scopes": [ + "https://www.googleapis.com/auth/fusiontables" + ] + } + } }, - "kind": { - "type": "string", - "description": "The kind of item this is. For a template list, this is always fusiontables#templateList .", - "default": "fusiontables#templateList" + "query": { + "methods": { + "sql": { + "description": "Executes a Fusion Tables SQL statement, which can be any of \n- SELECT\n- INSERT\n- UPDATE\n- DELETE\n- SHOW\n- DESCRIBE\n- CREATE statement.", + "httpMethod": "POST", + "id": "fusiontables.query.sql", + "parameterOrder": [ + "sql" + ], + "parameters": { + "hdrs": { + "description": "Whether column names are included in the first row. Default is true.", + "location": "query", + "type": "boolean" + }, + "sql": { + "description": "A Fusion Tables SQL statement, which can be any of \n- SELECT\n- INSERT\n- UPDATE\n- DELETE\n- SHOW\n- DESCRIBE\n- CREATE", + "location": "query", + "required": true, + "type": "string" + }, + "typed": { + "description": "Whether typed values are returned in the (JSON) response: numbers for numeric values and parsed geometries for KML values. Default is true.", + "location": "query", + "type": "boolean" + } + }, + "path": "query", + "response": { + "$ref": "Sqlresponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/fusiontables", + "https://www.googleapis.com/auth/fusiontables.readonly" + ], + "supportsMediaDownload": true, + "useMediaDownloadService": true + }, + "sqlGet": { + "description": "Executes a SQL statement which can be any of \n- SELECT\n- SHOW\n- DESCRIBE", + "httpMethod": "GET", + "id": "fusiontables.query.sqlGet", + "parameterOrder": [ + "sql" + ], + "parameters": { + "hdrs": { + "description": "Whether column names are included (in the first row). Default is true.", + "location": "query", + "type": "boolean" + }, + "sql": { + "description": "A SQL statement which can be any of \n- SELECT\n- SHOW\n- DESCRIBE", + "location": "query", + "required": true, + "type": "string" + }, + "typed": { + "description": "Whether typed values are returned in the (JSON) response: numbers for numeric values and parsed geometries for KML values. Default is true.", + "location": "query", + "type": "boolean" + } + }, + "path": "query", + "response": { + "$ref": "Sqlresponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/fusiontables", + "https://www.googleapis.com/auth/fusiontables.readonly" + ], + "supportsMediaDownload": true, + "useMediaDownloadService": true + } + } }, - "nextPageToken": { - "type": "string", - "description": "Token used to access the next page of this result. No token is displayed if there are no more pages left." + "style": { + "methods": { + "delete": { + "description": "Deletes a style.", + "httpMethod": "DELETE", + "id": "fusiontables.style.delete", + "parameterOrder": [ + "tableId", + "styleId" + ], + "parameters": { + "styleId": { + "description": "Identifier (within a table) for the style being deleted", + "format": "int32", + "location": "path", + "required": true, + "type": "integer" + }, + "tableId": { + "description": "Table from which the style is being deleted", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "tables/{tableId}/styles/{styleId}", + "scopes": [ + "https://www.googleapis.com/auth/fusiontables" + ] + }, + "get": { + "description": "Gets a specific style.", + "httpMethod": "GET", + "id": "fusiontables.style.get", + "parameterOrder": [ + "tableId", + "styleId" + ], + "parameters": { + "styleId": { + "description": "Identifier (integer) for a specific style in a table", + "format": "int32", + "location": "path", + "required": true, + "type": "integer" + }, + "tableId": { + "description": "Table to which the requested style belongs", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "tables/{tableId}/styles/{styleId}", + "response": { + "$ref": "StyleSetting" + }, + "scopes": [ + "https://www.googleapis.com/auth/fusiontables", + "https://www.googleapis.com/auth/fusiontables.readonly" + ] + }, + "insert": { + "description": "Adds a new style for the table.", + "httpMethod": "POST", + "id": "fusiontables.style.insert", + "parameterOrder": [ + "tableId" + ], + "parameters": { + "tableId": { + "description": "Table for which a new style is being added", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "tables/{tableId}/styles", + "request": { + "$ref": "StyleSetting" + }, + "response": { + "$ref": "StyleSetting" + }, + "scopes": [ + "https://www.googleapis.com/auth/fusiontables" + ] + }, + "list": { + "description": "Retrieves a list of styles.", + "httpMethod": "GET", + "id": "fusiontables.style.list", + "parameterOrder": [ + "tableId" + ], + "parameters": { + "maxResults": { + "description": "Maximum number of styles to return. Optional. Default is 5.", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "pageToken": { + "description": "Continuation token specifying which result page to return. Optional.", + "location": "query", + "type": "string" + }, + "tableId": { + "description": "Table whose styles are being listed", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "tables/{tableId}/styles", + "response": { + "$ref": "StyleSettingList" + }, + "scopes": [ + "https://www.googleapis.com/auth/fusiontables", + "https://www.googleapis.com/auth/fusiontables.readonly" + ] + }, + "patch": { + "description": "Updates an existing style. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "fusiontables.style.patch", + "parameterOrder": [ + "tableId", + "styleId" + ], + "parameters": { + "styleId": { + "description": "Identifier (within a table) for the style being updated.", + "format": "int32", + "location": "path", + "required": true, + "type": "integer" + }, + "tableId": { + "description": "Table whose style is being updated.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "tables/{tableId}/styles/{styleId}", + "request": { + "$ref": "StyleSetting" + }, + "response": { + "$ref": "StyleSetting" + }, + "scopes": [ + "https://www.googleapis.com/auth/fusiontables" + ] + }, + "update": { + "description": "Updates an existing style.", + "httpMethod": "PUT", + "id": "fusiontables.style.update", + "parameterOrder": [ + "tableId", + "styleId" + ], + "parameters": { + "styleId": { + "description": "Identifier (within a table) for the style being updated.", + "format": "int32", + "location": "path", + "required": true, + "type": "integer" + }, + "tableId": { + "description": "Table whose style is being updated.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "tables/{tableId}/styles/{styleId}", + "request": { + "$ref": "StyleSetting" + }, + "response": { + "$ref": "StyleSetting" + }, + "scopes": [ + "https://www.googleapis.com/auth/fusiontables" + ] + } + } }, - "totalItems": { - "type": "integer", - "description": "Total number of templates for the table.", - "format": "int32" + "table": { + "methods": { + "copy": { + "description": "Copies a table.", + "httpMethod": "POST", + "id": "fusiontables.table.copy", + "parameterOrder": [ + "tableId" + ], + "parameters": { + "copyPresentation": { + "description": "Whether to also copy tabs, styles, and templates. Default is false.", + "location": "query", + "type": "boolean" + }, + "tableId": { + "description": "ID of the table that is being copied.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "tables/{tableId}/copy", + "response": { + "$ref": "Table" + }, + "scopes": [ + "https://www.googleapis.com/auth/fusiontables", + "https://www.googleapis.com/auth/fusiontables.readonly" + ] + }, + "delete": { + "description": "Deletes a table.", + "httpMethod": "DELETE", + "id": "fusiontables.table.delete", + "parameterOrder": [ + "tableId" + ], + "parameters": { + "tableId": { + "description": "ID of the table to be deleted.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "tables/{tableId}", + "scopes": [ + "https://www.googleapis.com/auth/fusiontables" + ] + }, + "get": { + "description": "Retrieves a specific table by its ID.", + "httpMethod": "GET", + "id": "fusiontables.table.get", + "parameterOrder": [ + "tableId" + ], + "parameters": { + "tableId": { + "description": "Identifier for the table being requested.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "tables/{tableId}", + "response": { + "$ref": "Table" + }, + "scopes": [ + "https://www.googleapis.com/auth/fusiontables", + "https://www.googleapis.com/auth/fusiontables.readonly" + ] + }, + "importRows": { + "description": "Imports more rows into a table.", + "httpMethod": "POST", + "id": "fusiontables.table.importRows", + "mediaUpload": { + "accept": [ + "application/octet-stream" + ], + "maxSize": "250MB", + "protocols": { + "resumable": { + "multipart": true, + "path": "/resumable/upload/fusiontables/v2/tables/{tableId}/import" + }, + "simple": { + "multipart": true, + "path": "/upload/fusiontables/v2/tables/{tableId}/import" + } + } + }, + "parameterOrder": [ + "tableId" + ], + "parameters": { + "delimiter": { + "description": "The delimiter used to separate cell values. This can only consist of a single character. Default is ,.", + "location": "query", + "type": "string" + }, + "encoding": { + "description": "The encoding of the content. Default is UTF-8. Use auto-detect if you are unsure of the encoding.", + "location": "query", + "type": "string" + }, + "endLine": { + "description": "The index of the line up to which data will be imported. Default is to import the entire file. If endLine is negative, it is an offset from the end of the file; the imported content will exclude the last endLine lines.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "isStrict": { + "description": "Whether the imported CSV must have the same number of values for each row. If false, rows with fewer values will be padded with empty values. Default is true.", + "location": "query", + "type": "boolean" + }, + "startLine": { + "description": "The index of the first line from which to start importing, inclusive. Default is 0.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "tableId": { + "description": "The table into which new rows are being imported.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "tables/{tableId}/import", + "response": { + "$ref": "Import" + }, + "scopes": [ + "https://www.googleapis.com/auth/fusiontables" + ], + "supportsMediaUpload": true + }, + "importTable": { + "description": "Imports a new table.", + "httpMethod": "POST", + "id": "fusiontables.table.importTable", + "mediaUpload": { + "accept": [ + "application/octet-stream" + ], + "maxSize": "250MB", + "protocols": { + "resumable": { + "multipart": true, + "path": "/resumable/upload/fusiontables/v2/tables/import" + }, + "simple": { + "multipart": true, + "path": "/upload/fusiontables/v2/tables/import" + } + } + }, + "parameterOrder": [ + "name" + ], + "parameters": { + "delimiter": { + "description": "The delimiter used to separate cell values. This can only consist of a single character. Default is ,.", + "location": "query", + "type": "string" + }, + "encoding": { + "description": "The encoding of the content. Default is UTF-8. Use auto-detect if you are unsure of the encoding.", + "location": "query", + "type": "string" + }, + "name": { + "description": "The name to be assigned to the new table.", + "location": "query", + "required": true, + "type": "string" + } + }, + "path": "tables/import", + "response": { + "$ref": "Table" + }, + "scopes": [ + "https://www.googleapis.com/auth/fusiontables" + ], + "supportsMediaUpload": true + }, + "insert": { + "description": "Creates a new table.", + "httpMethod": "POST", + "id": "fusiontables.table.insert", + "path": "tables", + "request": { + "$ref": "Table" + }, + "response": { + "$ref": "Table" + }, + "scopes": [ + "https://www.googleapis.com/auth/fusiontables" + ] + }, + "list": { + "description": "Retrieves a list of tables a user owns.", + "httpMethod": "GET", + "id": "fusiontables.table.list", + "parameters": { + "maxResults": { + "description": "Maximum number of tables to return. Default is 5.", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "pageToken": { + "description": "Continuation token specifying which result page to return.", + "location": "query", + "type": "string" + } + }, + "path": "tables", + "response": { + "$ref": "TableList" + }, + "scopes": [ + "https://www.googleapis.com/auth/fusiontables", + "https://www.googleapis.com/auth/fusiontables.readonly" + ] + }, + "patch": { + "description": "Updates an existing table. Unless explicitly requested, only the name, description, and attribution will be updated. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "fusiontables.table.patch", + "parameterOrder": [ + "tableId" + ], + "parameters": { + "replaceViewDefinition": { + "description": "Whether the view definition is also updated. The specified view definition replaces the existing one. Only a view can be updated with a new definition.", + "location": "query", + "type": "boolean" + }, + "tableId": { + "description": "ID of the table that is being updated.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "tables/{tableId}", + "request": { + "$ref": "Table" + }, + "response": { + "$ref": "Table" + }, + "scopes": [ + "https://www.googleapis.com/auth/fusiontables" + ] + }, + "refetchSheet": { + "description": "Replaces rows of the table with the rows of the spreadsheet that is first imported from. Current rows remain visible until all replacement rows are ready.", + "httpMethod": "POST", + "id": "fusiontables.table.refetchSheet", + "parameterOrder": [ + "tableId" + ], + "parameters": { + "tableId": { + "description": "Table whose rows will be replaced from the spreadsheet.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "tables/{tableId}/refetch", + "response": { + "$ref": "Task" + }, + "scopes": [ + "https://www.googleapis.com/auth/fusiontables" + ] + }, + "replaceRows": { + "description": "Replaces rows of an existing table. Current rows remain visible until all replacement rows are ready.", + "httpMethod": "POST", + "id": "fusiontables.table.replaceRows", + "mediaUpload": { + "accept": [ + "application/octet-stream" + ], + "maxSize": "250MB", + "protocols": { + "resumable": { + "multipart": true, + "path": "/resumable/upload/fusiontables/v2/tables/{tableId}/replace" + }, + "simple": { + "multipart": true, + "path": "/upload/fusiontables/v2/tables/{tableId}/replace" + } + } + }, + "parameterOrder": [ + "tableId" + ], + "parameters": { + "delimiter": { + "description": "The delimiter used to separate cell values. This can only consist of a single character. Default is ,.", + "location": "query", + "type": "string" + }, + "encoding": { + "description": "The encoding of the content. Default is UTF-8. Use 'auto-detect' if you are unsure of the encoding.", + "location": "query", + "type": "string" + }, + "endLine": { + "description": "The index of the line up to which data will be imported. Default is to import the entire file. If endLine is negative, it is an offset from the end of the file; the imported content will exclude the last endLine lines.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "isStrict": { + "description": "Whether the imported CSV must have the same number of column values for each row. If true, throws an exception if the CSV does not have the same number of columns. If false, rows with fewer column values will be padded with empty values. Default is true.", + "location": "query", + "type": "boolean" + }, + "startLine": { + "description": "The index of the first line from which to start importing, inclusive. Default is 0.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "tableId": { + "description": "Table whose rows will be replaced.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "tables/{tableId}/replace", + "response": { + "$ref": "Task" + }, + "scopes": [ + "https://www.googleapis.com/auth/fusiontables" + ], + "supportsMediaUpload": true + }, + "update": { + "description": "Updates an existing table. Unless explicitly requested, only the name, description, and attribution will be updated.", + "httpMethod": "PUT", + "id": "fusiontables.table.update", + "parameterOrder": [ + "tableId" + ], + "parameters": { + "replaceViewDefinition": { + "description": "Whether the view definition is also updated. The specified view definition replaces the existing one. Only a view can be updated with a new definition.", + "location": "query", + "type": "boolean" + }, + "tableId": { + "description": "ID of the table that is being updated.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "tables/{tableId}", + "request": { + "$ref": "Table" + }, + "response": { + "$ref": "Table" + }, + "scopes": [ + "https://www.googleapis.com/auth/fusiontables" + ] + } + } + }, + "task": { + "methods": { + "delete": { + "description": "Deletes a specific task by its ID, unless that task has already started running.", + "httpMethod": "DELETE", + "id": "fusiontables.task.delete", + "parameterOrder": [ + "tableId", + "taskId" + ], + "parameters": { + "tableId": { + "description": "Table from which the task is being deleted.", + "location": "path", + "required": true, + "type": "string" + }, + "taskId": { + "description": "The identifier of the task to delete.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "tables/{tableId}/tasks/{taskId}", + "scopes": [ + "https://www.googleapis.com/auth/fusiontables" + ] + }, + "get": { + "description": "Retrieves a specific task by its ID.", + "httpMethod": "GET", + "id": "fusiontables.task.get", + "parameterOrder": [ + "tableId", + "taskId" + ], + "parameters": { + "tableId": { + "description": "Table to which the task belongs.", + "location": "path", + "required": true, + "type": "string" + }, + "taskId": { + "description": "The identifier of the task to get.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "tables/{tableId}/tasks/{taskId}", + "response": { + "$ref": "Task" + }, + "scopes": [ + "https://www.googleapis.com/auth/fusiontables", + "https://www.googleapis.com/auth/fusiontables.readonly" + ] + }, + "list": { + "description": "Retrieves a list of tasks.", + "httpMethod": "GET", + "id": "fusiontables.task.list", + "parameterOrder": [ + "tableId" + ], + "parameters": { + "maxResults": { + "description": "Maximum number of tasks to return. Default is 5.", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "pageToken": { + "description": "Continuation token specifying which result page to return.", + "location": "query", + "type": "string" + }, + "startIndex": { + "description": "Index of the first result returned in the current page.", + "format": "uint32", + "location": "query", + "type": "integer" + }, + "tableId": { + "description": "Table whose tasks are being listed.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "tables/{tableId}/tasks", + "response": { + "$ref": "TaskList" + }, + "scopes": [ + "https://www.googleapis.com/auth/fusiontables", + "https://www.googleapis.com/auth/fusiontables.readonly" + ] + } + } + }, + "template": { + "methods": { + "delete": { + "description": "Deletes a template", + "httpMethod": "DELETE", + "id": "fusiontables.template.delete", + "parameterOrder": [ + "tableId", + "templateId" + ], + "parameters": { + "tableId": { + "description": "Table from which the template is being deleted", + "location": "path", + "required": true, + "type": "string" + }, + "templateId": { + "description": "Identifier for the template which is being deleted", + "format": "int32", + "location": "path", + "required": true, + "type": "integer" + } + }, + "path": "tables/{tableId}/templates/{templateId}", + "scopes": [ + "https://www.googleapis.com/auth/fusiontables" + ] + }, + "get": { + "description": "Retrieves a specific template by its id", + "httpMethod": "GET", + "id": "fusiontables.template.get", + "parameterOrder": [ + "tableId", + "templateId" + ], + "parameters": { + "tableId": { + "description": "Table to which the template belongs", + "location": "path", + "required": true, + "type": "string" + }, + "templateId": { + "description": "Identifier for the template that is being requested", + "format": "int32", + "location": "path", + "required": true, + "type": "integer" + } + }, + "path": "tables/{tableId}/templates/{templateId}", + "response": { + "$ref": "Template" + }, + "scopes": [ + "https://www.googleapis.com/auth/fusiontables", + "https://www.googleapis.com/auth/fusiontables.readonly" + ] + }, + "insert": { + "description": "Creates a new template for the table.", + "httpMethod": "POST", + "id": "fusiontables.template.insert", + "parameterOrder": [ + "tableId" + ], + "parameters": { + "tableId": { + "description": "Table for which a new template is being created", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "tables/{tableId}/templates", + "request": { + "$ref": "Template" + }, + "response": { + "$ref": "Template" + }, + "scopes": [ + "https://www.googleapis.com/auth/fusiontables" + ] + }, + "list": { + "description": "Retrieves a list of templates.", + "httpMethod": "GET", + "id": "fusiontables.template.list", + "parameterOrder": [ + "tableId" + ], + "parameters": { + "maxResults": { + "description": "Maximum number of templates to return. Optional. Default is 5.", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "pageToken": { + "description": "Continuation token specifying which results page to return. Optional.", + "location": "query", + "type": "string" + }, + "tableId": { + "description": "Identifier for the table whose templates are being requested", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "tables/{tableId}/templates", + "response": { + "$ref": "TemplateList" + }, + "scopes": [ + "https://www.googleapis.com/auth/fusiontables", + "https://www.googleapis.com/auth/fusiontables.readonly" + ] + }, + "patch": { + "description": "Updates an existing template. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "fusiontables.template.patch", + "parameterOrder": [ + "tableId", + "templateId" + ], + "parameters": { + "tableId": { + "description": "Table to which the updated template belongs", + "location": "path", + "required": true, + "type": "string" + }, + "templateId": { + "description": "Identifier for the template that is being updated", + "format": "int32", + "location": "path", + "required": true, + "type": "integer" + } + }, + "path": "tables/{tableId}/templates/{templateId}", + "request": { + "$ref": "Template" + }, + "response": { + "$ref": "Template" + }, + "scopes": [ + "https://www.googleapis.com/auth/fusiontables" + ] + }, + "update": { + "description": "Updates an existing template", + "httpMethod": "PUT", + "id": "fusiontables.template.update", + "parameterOrder": [ + "tableId", + "templateId" + ], + "parameters": { + "tableId": { + "description": "Table to which the updated template belongs", + "location": "path", + "required": true, + "type": "string" + }, + "templateId": { + "description": "Identifier for the template that is being updated", + "format": "int32", + "location": "path", + "required": true, + "type": "integer" + } + }, + "path": "tables/{tableId}/templates/{templateId}", + "request": { + "$ref": "Template" + }, + "response": { + "$ref": "Template" + }, + "scopes": [ + "https://www.googleapis.com/auth/fusiontables" + ] + } + } } - } - } - }, - "resources": { - "column": { - "methods": { - "delete": { - "id": "fusiontables.column.delete", - "path": "tables/{tableId}/columns/{columnId}", - "httpMethod": "DELETE", - "description": "Deletes the specified column.", - "parameters": { - "columnId": { - "type": "string", - "description": "Name or identifier for the column being deleted.", - "required": true, - "location": "path" - }, - "tableId": { - "type": "string", - "description": "Table from which the column is being deleted.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "tableId", - "columnId" - ], - "scopes": [ - "https://www.googleapis.com/auth/fusiontables" - ] - }, - "get": { - "id": "fusiontables.column.get", - "path": "tables/{tableId}/columns/{columnId}", - "httpMethod": "GET", - "description": "Retrieves a specific column by its ID.", - "parameters": { - "columnId": { - "type": "string", - "description": "Name or identifier for the column that is being requested.", - "required": true, - "location": "path" - }, - "tableId": { - "type": "string", - "description": "Table to which the column belongs.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "tableId", - "columnId" - ], - "response": { - "$ref": "Column" - }, - "scopes": [ - "https://www.googleapis.com/auth/fusiontables", - "https://www.googleapis.com/auth/fusiontables.readonly" - ] - }, - "insert": { - "id": "fusiontables.column.insert", - "path": "tables/{tableId}/columns", - "httpMethod": "POST", - "description": "Adds a new column to the table.", - "parameters": { - "tableId": { - "type": "string", - "description": "Table for which a new column is being added.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "tableId" - ], - "request": { - "$ref": "Column" - }, - "response": { - "$ref": "Column" - }, - "scopes": [ - "https://www.googleapis.com/auth/fusiontables" - ] - }, - "list": { - "id": "fusiontables.column.list", - "path": "tables/{tableId}/columns", - "httpMethod": "GET", - "description": "Retrieves a list of columns.", - "parameters": { - "maxResults": { - "type": "integer", - "description": "Maximum number of columns to return. Default is 5.", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Continuation token specifying which result page to return.", - "location": "query" - }, - "tableId": { - "type": "string", - "description": "Table whose columns are being listed.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "tableId" - ], - "response": { - "$ref": "ColumnList" - }, - "scopes": [ - "https://www.googleapis.com/auth/fusiontables", - "https://www.googleapis.com/auth/fusiontables.readonly" - ] - }, - "patch": { - "id": "fusiontables.column.patch", - "path": "tables/{tableId}/columns/{columnId}", - "httpMethod": "PATCH", - "description": "Updates the name or type of an existing column. This method supports patch semantics.", - "parameters": { - "columnId": { - "type": "string", - "description": "Name or identifier for the column that is being updated.", - "required": true, - "location": "path" - }, - "tableId": { - "type": "string", - "description": "Table for which the column is being updated.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "tableId", - "columnId" - ], - "request": { - "$ref": "Column" - }, - "response": { - "$ref": "Column" - }, - "scopes": [ - "https://www.googleapis.com/auth/fusiontables" - ] - }, - "update": { - "id": "fusiontables.column.update", - "path": "tables/{tableId}/columns/{columnId}", - "httpMethod": "PUT", - "description": "Updates the name or type of an existing column.", - "parameters": { - "columnId": { - "type": "string", - "description": "Name or identifier for the column that is being updated.", - "required": true, - "location": "path" - }, - "tableId": { - "type": "string", - "description": "Table for which the column is being updated.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "tableId", - "columnId" - ], - "request": { - "$ref": "Column" - }, - "response": { - "$ref": "Column" - }, - "scopes": [ - "https://www.googleapis.com/auth/fusiontables" - ] - } - } }, - "query": { - "methods": { - "sql": { - "id": "fusiontables.query.sql", - "path": "query", - "httpMethod": "POST", - "description": "Executes a Fusion Tables SQL statement, which can be any of \n- SELECT\n- INSERT\n- UPDATE\n- DELETE\n- SHOW\n- DESCRIBE\n- CREATE statement.", - "parameters": { - "hdrs": { - "type": "boolean", - "description": "Whether column names are included in the first row. Default is true.", - "location": "query" + "revision": "20171117", + "rootUrl": "https://www.googleapis.com/", + "schemas": { + "Bucket": { + "description": "Specifies the minimum and maximum values, the color, opacity, icon and weight of a bucket within a StyleSetting.", + "id": "Bucket", + "properties": { + "color": { + "description": "Color of line or the interior of a polygon in #RRGGBB format.", + "type": "string" + }, + "icon": { + "description": "Icon name used for a point.", + "type": "string" + }, + "max": { + "description": "Maximum value in the selected column for a row to be styled according to the bucket color, opacity, icon, or weight.", + "format": "double", + "type": "number" + }, + "min": { + "description": "Minimum value in the selected column for a row to be styled according to the bucket color, opacity, icon, or weight.", + "format": "double", + "type": "number" + }, + "opacity": { + "description": "Opacity of the color: 0.0 (transparent) to 1.0 (opaque).", + "format": "double", + "type": "number" + }, + "weight": { + "description": "Width of a line (in pixels).", + "format": "int32", + "type": "integer" + } }, - "sql": { - "type": "string", - "description": "A Fusion Tables SQL statement, which can be any of \n- SELECT\n- INSERT\n- UPDATE\n- DELETE\n- SHOW\n- DESCRIBE\n- CREATE", - "required": true, - "location": "query" - }, - "typed": { - "type": "boolean", - "description": "Whether typed values are returned in the (JSON) response: numbers for numeric values and parsed geometries for KML values. Default is true.", - "location": "query" - } - }, - "parameterOrder": [ - "sql" - ], - "response": { - "$ref": "Sqlresponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/fusiontables", - "https://www.googleapis.com/auth/fusiontables.readonly" - ], - "supportsMediaDownload": true, - "useMediaDownloadService": true + "type": "object" }, - "sqlGet": { - "id": "fusiontables.query.sqlGet", - "path": "query", - "httpMethod": "GET", - "description": "Executes a SQL statement which can be any of \n- SELECT\n- SHOW\n- DESCRIBE", - "parameters": { - "hdrs": { - "type": "boolean", - "description": "Whether column names are included (in the first row). Default is true.", - "location": "query" + "Column": { + "description": "Specifies the details of a column in a table.", + "id": "Column", + "properties": { + "baseColumn": { + "description": "Identifier of the base column. If present, this column is derived from the specified base column.", + "properties": { + "columnId": { + "description": "The id of the column in the base table from which this column is derived.", + "format": "int32", + "type": "integer" + }, + "tableIndex": { + "description": "Offset to the entry in the list of base tables in the table definition.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "columnId": { + "description": "Identifier for the column.", + "format": "int32", + "type": "integer" + }, + "columnJsonSchema": { + "description": "JSON schema for interpreting JSON in this column.", + "type": "string" + }, + "columnPropertiesJson": { + "description": "JSON object containing custom column properties.", + "type": "string" + }, + "description": { + "description": "Column description.", + "type": "string" + }, + "formatPattern": { + "description": "Format pattern.\nAcceptable values are DT_DATE_MEDIUMe.g Dec 24, 2008 DT_DATE_SHORTfor example 12/24/08 DT_DATE_TIME_MEDIUMfor example Dec 24, 2008 8:30:45 PM DT_DATE_TIME_SHORTfor example 12/24/08 8:30 PM DT_DAY_MONTH_2_DIGIT_YEARfor example 24/12/08 DT_DAY_MONTH_2_DIGIT_YEAR_TIMEfor example 24/12/08 20:30 DT_DAY_MONTH_2_DIGIT_YEAR_TIME_MERIDIANfor example 24/12/08 8:30 PM DT_DAY_MONTH_4_DIGIT_YEARfor example 24/12/2008 DT_DAY_MONTH_4_DIGIT_YEAR_TIMEfor example 24/12/2008 20:30 DT_DAY_MONTH_4_DIGIT_YEAR_TIME_MERIDIANfor example 24/12/2008 8:30 PM DT_ISO_YEAR_MONTH_DAYfor example 2008-12-24 DT_ISO_YEAR_MONTH_DAY_TIMEfor example 2008-12-24 20:30:45 DT_MONTH_DAY_4_DIGIT_YEARfor example 12/24/2008 DT_TIME_LONGfor example 8:30:45 PM UTC-6 DT_TIME_MEDIUMfor example 8:30:45 PM DT_TIME_SHORTfor example 8:30 PM DT_YEAR_ONLYfor example 2008 HIGHLIGHT_UNTYPED_CELLSHighlight cell data that does not match the data type NONENo formatting (default) NUMBER_CURRENCYfor example $1234.56 NUMBER_DEFAULTfor example 1,234.56 NUMBER_INTEGERfor example 1235 NUMBER_NO_SEPARATORfor example 1234.56 NUMBER_PERCENTfor example 123,456% NUMBER_SCIENTIFICfor example 1E3 STRING_EIGHT_LINE_IMAGEDisplays thumbnail images as tall as eight lines of text STRING_FOUR_LINE_IMAGEDisplays thumbnail images as tall as four lines of text STRING_JSON_TEXTAllows editing of text as JSON in UI STRING_JSON_LISTAllows editing of text as a JSON list in UI STRING_LINKTreats cell as a link (must start with http:// or https://) STRING_ONE_LINE_IMAGEDisplays thumbnail images as tall as one line of text STRING_VIDEO_OR_MAPDisplay a video or map thumbnail", + "type": "string" + }, + "graphPredicate": { + "description": "Column graph predicate.\nUsed to map table to graph data model (subject,predicate,object)\nSee W3C Graph-based Data Model.", + "type": "string" + }, + "kind": { + "default": "fusiontables#column", + "description": "The kind of item this is. For a column, this is always fusiontables#column.", + "type": "string" + }, + "name": { + "annotations": { + "required": [ + "fusiontables.column.insert" + ] + }, + "description": "Name of the column.", + "type": "string" + }, + "type": { + "annotations": { + "required": [ + "fusiontables.column.insert" + ] + }, + "description": "Type of the column.", + "type": "string" + }, + "validValues": { + "description": "List of valid values used to validate data and supply a drop-down list of values in the web application.", + "items": { + "type": "string" + }, + "type": "array" + }, + "validateData": { + "description": "If true, data entered via the web application is validated.", + "type": "boolean" + } }, - "sql": { - "type": "string", - "description": "A SQL statement which can be any of \n- SELECT\n- SHOW\n- DESCRIBE", - "required": true, - "location": "query" + "type": "object" + }, + "ColumnList": { + "description": "Represents a list of columns in a table.", + "id": "ColumnList", + "properties": { + "items": { + "description": "List of all requested columns.", + "items": { + "$ref": "Column" + }, + "type": "array" + }, + "kind": { + "default": "fusiontables#columnList", + "description": "The kind of item this is. For a column list, this is always fusiontables#columnList.", + "type": "string" + }, + "nextPageToken": { + "description": "Token used to access the next page of this result. No token is displayed if there are no more pages left.", + "type": "string" + }, + "totalItems": { + "description": "Total number of columns for the table.", + "format": "int32", + "type": "integer" + } }, - "typed": { - "type": "boolean", - "description": "Whether typed values are returned in the (JSON) response: numbers for numeric values and parsed geometries for KML values. Default is true.", - "location": "query" - } - }, - "parameterOrder": [ - "sql" - ], - "response": { - "$ref": "Sqlresponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/fusiontables", - "https://www.googleapis.com/auth/fusiontables.readonly" - ], - "supportsMediaDownload": true, - "useMediaDownloadService": true + "type": "object" + }, + "Geometry": { + "description": "Represents a Geometry object.", + "id": "Geometry", + "properties": { + "geometries": { + "description": "The list of geometries in this geometry collection.", + "items": { + "type": "any" + }, + "type": "array" + }, + "geometry": { + "type": "any" + }, + "type": { + "default": "GeometryCollection", + "description": "Type: A collection of geometries.", + "type": "string" + } + }, + "type": "object" + }, + "Import": { + "description": "Represents an import request.", + "id": "Import", + "properties": { + "kind": { + "default": "fusiontables#import", + "description": "The kind of item this is. For an import, this is always fusiontables#import.", + "type": "string" + }, + "numRowsReceived": { + "description": "The number of rows received from the import request.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "Line": { + "description": "Represents a line geometry.", + "id": "Line", + "properties": { + "coordinates": { + "description": "The coordinates that define the line.", + "items": { + "items": { + "format": "double", + "type": "number" + }, + "type": "array" + }, + "type": "array" + }, + "type": { + "default": "LineString", + "description": "Type: A line geometry.", + "type": "string" + } + }, + "type": "object" + }, + "LineStyle": { + "description": "Represents a LineStyle within a StyleSetting", + "id": "LineStyle", + "properties": { + "strokeColor": { + "description": "Color of the line in #RRGGBB format.", + "type": "string" + }, + "strokeColorStyler": { + "$ref": "StyleFunction", + "description": "Column-value, gradient or buckets styler that is used to determine the line color and opacity." + }, + "strokeOpacity": { + "description": "Opacity of the line : 0.0 (transparent) to 1.0 (opaque).", + "format": "double", + "type": "number" + }, + "strokeWeight": { + "description": "Width of the line in pixels.", + "format": "int32", + "type": "integer" + }, + "strokeWeightStyler": { + "$ref": "StyleFunction", + "description": "Column-value or bucket styler that is used to determine the width of the line." + } + }, + "type": "object" + }, + "Point": { + "description": "Represents a point object.", + "id": "Point", + "properties": { + "coordinates": { + "description": "The coordinates that define the point.", + "items": { + "format": "double", + "type": "number" + }, + "type": "array" + }, + "type": { + "default": "Point", + "description": "Point: A point geometry.", + "type": "string" + } + }, + "type": "object" + }, + "PointStyle": { + "description": "Represents a PointStyle within a StyleSetting", + "id": "PointStyle", + "properties": { + "iconName": { + "description": "Name of the icon. Use values defined in http://www.google.com/fusiontables/DataSource?dsrcid=308519", + "type": "string" + }, + "iconStyler": { + "$ref": "StyleFunction", + "description": "Column or a bucket value from which the icon name is to be determined." + } + }, + "type": "object" + }, + "Polygon": { + "description": "Represents a polygon object.", + "id": "Polygon", + "properties": { + "coordinates": { + "description": "The coordinates that define the polygon.", + "items": { + "items": { + "items": { + "format": "double", + "type": "number" + }, + "type": "array" + }, + "type": "array" + }, + "type": "array" + }, + "type": { + "default": "Polygon", + "description": "Type: A polygon geometry.", + "type": "string" + } + }, + "type": "object" + }, + "PolygonStyle": { + "description": "Represents a PolygonStyle within a StyleSetting", + "id": "PolygonStyle", + "properties": { + "fillColor": { + "description": "Color of the interior of the polygon in #RRGGBB format.", + "type": "string" + }, + "fillColorStyler": { + "$ref": "StyleFunction", + "description": "Column-value, gradient, or bucket styler that is used to determine the interior color and opacity of the polygon." + }, + "fillOpacity": { + "description": "Opacity of the interior of the polygon: 0.0 (transparent) to 1.0 (opaque).", + "format": "double", + "type": "number" + }, + "strokeColor": { + "description": "Color of the polygon border in #RRGGBB format.", + "type": "string" + }, + "strokeColorStyler": { + "$ref": "StyleFunction", + "description": "Column-value, gradient or buckets styler that is used to determine the border color and opacity." + }, + "strokeOpacity": { + "description": "Opacity of the polygon border: 0.0 (transparent) to 1.0 (opaque).", + "format": "double", + "type": "number" + }, + "strokeWeight": { + "description": "Width of the polyon border in pixels.", + "format": "int32", + "type": "integer" + }, + "strokeWeightStyler": { + "$ref": "StyleFunction", + "description": "Column-value or bucket styler that is used to determine the width of the polygon border." + } + }, + "type": "object" + }, + "Sqlresponse": { + "description": "Represents a response to a SQL statement.", + "id": "Sqlresponse", + "properties": { + "columns": { + "description": "Columns in the table.", + "items": { + "type": "string" + }, + "type": "array" + }, + "kind": { + "default": "fusiontables#sqlresponse", + "description": "The kind of item this is. For responses to SQL queries, this is always fusiontables#sqlresponse.", + "type": "string" + }, + "rows": { + "description": "The rows in the table. For each cell we print out whatever cell value (e.g., numeric, string) exists. Thus it is important that each cell contains only one value.", + "items": { + "items": { + "type": "any" + }, + "type": "array" + }, + "type": "array" + } + }, + "type": "object" + }, + "StyleFunction": { + "description": "Represents a StyleFunction within a StyleSetting", + "id": "StyleFunction", + "properties": { + "buckets": { + "description": "Bucket function that assigns a style based on the range a column value falls into.", + "items": { + "$ref": "Bucket" + }, + "type": "array" + }, + "columnName": { + "annotations": { + "required": [ + "fusiontables.style.insert" + ] + }, + "description": "Name of the column whose value is used in the style.", + "type": "string" + }, + "gradient": { + "description": "Gradient function that interpolates a range of colors based on column value.", + "properties": { + "colors": { + "description": "Array with two or more colors.", + "items": { + "properties": { + "color": { + "description": "Color in #RRGGBB format.", + "type": "string" + }, + "opacity": { + "description": "Opacity of the color: 0.0 (transparent) to 1.0 (opaque).", + "format": "double", + "type": "number" + } + }, + "type": "object" + }, + "type": "array" + }, + "max": { + "description": "Higher-end of the interpolation range: rows with this value will be assigned to colors[n-1].", + "format": "double", + "type": "number" + }, + "min": { + "description": "Lower-end of the interpolation range: rows with this value will be assigned to colors[0].", + "format": "double", + "type": "number" + } + }, + "type": "object" + }, + "kind": { + "description": "Stylers can be one of three kinds: \"fusiontables#fromColumn if the column value is to be used as is, i.e., the column values can have colors in #RRGGBBAA format or integer line widths or icon names; fusiontables#gradient if the styling of the row is to be based on applying the gradient function on the column value; or fusiontables#buckets if the styling is to based on the bucket into which the the column value falls.", + "type": "string" + } + }, + "type": "object" + }, + "StyleSetting": { + "description": "Represents a complete StyleSettings object. The primary key is a combination of the tableId and a styleId.", + "id": "StyleSetting", + "properties": { + "kind": { + "default": "fusiontables#styleSetting", + "description": "The kind of item this is. A StyleSetting contains the style definitions for points, lines, and polygons in a table. Since a table can have any one or all of them, a style definition can have point, line and polygon style definitions.", + "type": "string" + }, + "markerOptions": { + "$ref": "PointStyle", + "description": "Style definition for points in the table." + }, + "name": { + "description": "Optional name for the style setting.", + "type": "string" + }, + "polygonOptions": { + "$ref": "PolygonStyle", + "description": "Style definition for polygons in the table." + }, + "polylineOptions": { + "$ref": "LineStyle", + "description": "Style definition for lines in the table." + }, + "styleId": { + "description": "Identifier for the style setting (unique only within tables).", + "format": "int32", + "type": "integer" + }, + "tableId": { + "description": "Identifier for the table.", + "type": "string" + } + }, + "type": "object" + }, + "StyleSettingList": { + "description": "Represents a list of styles for a given table.", + "id": "StyleSettingList", + "properties": { + "items": { + "description": "All requested style settings.", + "items": { + "$ref": "StyleSetting" + }, + "type": "array" + }, + "kind": { + "default": "fusiontables#styleSettingList", + "description": "The kind of item this is. For a style list, this is always fusiontables#styleSettingList .", + "type": "string" + }, + "nextPageToken": { + "description": "Token used to access the next page of this result. No token is displayed if there are no more styles left.", + "type": "string" + }, + "totalItems": { + "description": "Total number of styles for the table.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "Table": { + "description": "Represents a table.", + "id": "Table", + "properties": { + "attribution": { + "description": "Attribution assigned to the table.", + "type": "string" + }, + "attributionLink": { + "description": "Optional link for attribution.", + "type": "string" + }, + "baseTableIds": { + "description": "Base table identifier if this table is a view or merged table.", + "items": { + "type": "string" + }, + "type": "array" + }, + "columnPropertiesJsonSchema": { + "description": "Default JSON schema for validating all JSON column properties.", + "type": "string" + }, + "columns": { + "annotations": { + "required": [ + "fusiontables.table.insert", + "fusiontables.table.update" + ] + }, + "description": "Columns in the table.", + "items": { + "$ref": "Column" + }, + "type": "array" + }, + "description": { + "description": "Description assigned to the table.", + "type": "string" + }, + "isExportable": { + "annotations": { + "required": [ + "fusiontables.table.insert", + "fusiontables.table.update" + ] + }, + "description": "Variable for whether table is exportable.", + "type": "boolean" + }, + "kind": { + "default": "fusiontables#table", + "description": "The kind of item this is. For a table, this is always fusiontables#table.", + "type": "string" + }, + "name": { + "annotations": { + "required": [ + "fusiontables.table.insert", + "fusiontables.table.update" + ] + }, + "description": "Name assigned to a table.", + "type": "string" + }, + "sql": { + "description": "SQL that encodes the table definition for derived tables.", + "type": "string" + }, + "tableId": { + "description": "Encrypted unique alphanumeric identifier for the table.", + "type": "string" + }, + "tablePropertiesJson": { + "description": "JSON object containing custom table properties.", + "type": "string" + }, + "tablePropertiesJsonSchema": { + "description": "JSON schema for validating the JSON table properties.", + "type": "string" + } + }, + "type": "object" + }, + "TableList": { + "description": "Represents a list of tables.", + "id": "TableList", + "properties": { + "items": { + "description": "List of all requested tables.", + "items": { + "$ref": "Table" + }, + "type": "array" + }, + "kind": { + "default": "fusiontables#tableList", + "description": "The kind of item this is. For table list, this is always fusiontables#tableList.", + "type": "string" + }, + "nextPageToken": { + "description": "Token used to access the next page of this result. No token is displayed if there are no more pages left.", + "type": "string" + } + }, + "type": "object" + }, + "Task": { + "description": "A background task on a table, initiated for time- or resource-consuming operations such as changing column types or deleting all rows.", + "id": "Task", + "properties": { + "kind": { + "default": "fusiontables#task", + "description": "Type of the resource. This is always \"fusiontables#task\".", + "type": "string" + }, + "progress": { + "description": "Task percentage completion.", + "type": "string" + }, + "started": { + "description": "false while the table is busy with some other task. true if this background task is currently running.", + "type": "boolean" + }, + "taskId": { + "description": "Identifier for the task.", + "format": "int64", + "type": "string" + }, + "type": { + "description": "Type of background task.", + "type": "string" + } + }, + "type": "object" + }, + "TaskList": { + "description": "Represents a list of tasks for a table.", + "id": "TaskList", + "properties": { + "items": { + "description": "List of all requested tasks.", + "items": { + "$ref": "Task" + }, + "type": "array" + }, + "kind": { + "default": "fusiontables#taskList", + "description": "Type of the resource. This is always \"fusiontables#taskList\".", + "type": "string" + }, + "nextPageToken": { + "description": "Token used to access the next page of this result. No token is displayed if there are no more pages left.", + "type": "string" + }, + "totalItems": { + "description": "Total number of tasks for the table.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "Template": { + "description": "Represents the contents of InfoWindow templates.", + "id": "Template", + "properties": { + "automaticColumnNames": { + "description": "List of columns from which the template is to be automatically constructed. Only one of body or automaticColumns can be specified.", + "items": { + "type": "string" + }, + "type": "array" + }, + "body": { + "description": "Body of the template. It contains HTML with {column_name} to insert values from a particular column. The body is sanitized to remove certain tags, e.g., script. Only one of body or automaticColumns can be specified.", + "type": "string" + }, + "kind": { + "default": "fusiontables#template", + "description": "The kind of item this is. For a template, this is always fusiontables#template.", + "type": "string" + }, + "name": { + "description": "Optional name assigned to a template.", + "type": "string" + }, + "tableId": { + "description": "Identifier for the table for which the template is defined.", + "type": "string" + }, + "templateId": { + "description": "Identifier for the template, unique within the context of a particular table.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "TemplateList": { + "description": "Represents a list of templates for a given table.", + "id": "TemplateList", + "properties": { + "items": { + "description": "List of all requested templates.", + "items": { + "$ref": "Template" + }, + "type": "array" + }, + "kind": { + "default": "fusiontables#templateList", + "description": "The kind of item this is. For a template list, this is always fusiontables#templateList .", + "type": "string" + }, + "nextPageToken": { + "description": "Token used to access the next page of this result. No token is displayed if there are no more pages left.", + "type": "string" + }, + "totalItems": { + "description": "Total number of templates for the table.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" } - } }, - "style": { - "methods": { - "delete": { - "id": "fusiontables.style.delete", - "path": "tables/{tableId}/styles/{styleId}", - "httpMethod": "DELETE", - "description": "Deletes a style.", - "parameters": { - "styleId": { - "type": "integer", - "description": "Identifier (within a table) for the style being deleted", - "required": true, - "format": "int32", - "location": "path" - }, - "tableId": { - "type": "string", - "description": "Table from which the style is being deleted", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "tableId", - "styleId" - ], - "scopes": [ - "https://www.googleapis.com/auth/fusiontables" - ] - }, - "get": { - "id": "fusiontables.style.get", - "path": "tables/{tableId}/styles/{styleId}", - "httpMethod": "GET", - "description": "Gets a specific style.", - "parameters": { - "styleId": { - "type": "integer", - "description": "Identifier (integer) for a specific style in a table", - "required": true, - "format": "int32", - "location": "path" - }, - "tableId": { - "type": "string", - "description": "Table to which the requested style belongs", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "tableId", - "styleId" - ], - "response": { - "$ref": "StyleSetting" - }, - "scopes": [ - "https://www.googleapis.com/auth/fusiontables", - "https://www.googleapis.com/auth/fusiontables.readonly" - ] - }, - "insert": { - "id": "fusiontables.style.insert", - "path": "tables/{tableId}/styles", - "httpMethod": "POST", - "description": "Adds a new style for the table.", - "parameters": { - "tableId": { - "type": "string", - "description": "Table for which a new style is being added", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "tableId" - ], - "request": { - "$ref": "StyleSetting" - }, - "response": { - "$ref": "StyleSetting" - }, - "scopes": [ - "https://www.googleapis.com/auth/fusiontables" - ] - }, - "list": { - "id": "fusiontables.style.list", - "path": "tables/{tableId}/styles", - "httpMethod": "GET", - "description": "Retrieves a list of styles.", - "parameters": { - "maxResults": { - "type": "integer", - "description": "Maximum number of styles to return. Optional. Default is 5.", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Continuation token specifying which result page to return. Optional.", - "location": "query" - }, - "tableId": { - "type": "string", - "description": "Table whose styles are being listed", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "tableId" - ], - "response": { - "$ref": "StyleSettingList" - }, - "scopes": [ - "https://www.googleapis.com/auth/fusiontables", - "https://www.googleapis.com/auth/fusiontables.readonly" - ] - }, - "patch": { - "id": "fusiontables.style.patch", - "path": "tables/{tableId}/styles/{styleId}", - "httpMethod": "PATCH", - "description": "Updates an existing style. This method supports patch semantics.", - "parameters": { - "styleId": { - "type": "integer", - "description": "Identifier (within a table) for the style being updated.", - "required": true, - "format": "int32", - "location": "path" - }, - "tableId": { - "type": "string", - "description": "Table whose style is being updated.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "tableId", - "styleId" - ], - "request": { - "$ref": "StyleSetting" - }, - "response": { - "$ref": "StyleSetting" - }, - "scopes": [ - "https://www.googleapis.com/auth/fusiontables" - ] - }, - "update": { - "id": "fusiontables.style.update", - "path": "tables/{tableId}/styles/{styleId}", - "httpMethod": "PUT", - "description": "Updates an existing style.", - "parameters": { - "styleId": { - "type": "integer", - "description": "Identifier (within a table) for the style being updated.", - "required": true, - "format": "int32", - "location": "path" - }, - "tableId": { - "type": "string", - "description": "Table whose style is being updated.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "tableId", - "styleId" - ], - "request": { - "$ref": "StyleSetting" - }, - "response": { - "$ref": "StyleSetting" - }, - "scopes": [ - "https://www.googleapis.com/auth/fusiontables" - ] - } - } - }, - "table": { - "methods": { - "copy": { - "id": "fusiontables.table.copy", - "path": "tables/{tableId}/copy", - "httpMethod": "POST", - "description": "Copies a table.", - "parameters": { - "copyPresentation": { - "type": "boolean", - "description": "Whether to also copy tabs, styles, and templates. Default is false.", - "location": "query" - }, - "tableId": { - "type": "string", - "description": "ID of the table that is being copied.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "tableId" - ], - "response": { - "$ref": "Table" - }, - "scopes": [ - "https://www.googleapis.com/auth/fusiontables", - "https://www.googleapis.com/auth/fusiontables.readonly" - ] - }, - "delete": { - "id": "fusiontables.table.delete", - "path": "tables/{tableId}", - "httpMethod": "DELETE", - "description": "Deletes a table.", - "parameters": { - "tableId": { - "type": "string", - "description": "ID of the table to be deleted.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "tableId" - ], - "scopes": [ - "https://www.googleapis.com/auth/fusiontables" - ] - }, - "get": { - "id": "fusiontables.table.get", - "path": "tables/{tableId}", - "httpMethod": "GET", - "description": "Retrieves a specific table by its ID.", - "parameters": { - "tableId": { - "type": "string", - "description": "Identifier for the table being requested.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "tableId" - ], - "response": { - "$ref": "Table" - }, - "scopes": [ - "https://www.googleapis.com/auth/fusiontables", - "https://www.googleapis.com/auth/fusiontables.readonly" - ] - }, - "importRows": { - "id": "fusiontables.table.importRows", - "path": "tables/{tableId}/import", - "httpMethod": "POST", - "description": "Imports more rows into a table.", - "parameters": { - "delimiter": { - "type": "string", - "description": "The delimiter used to separate cell values. This can only consist of a single character. Default is ,.", - "location": "query" - }, - "encoding": { - "type": "string", - "description": "The encoding of the content. Default is UTF-8. Use auto-detect if you are unsure of the encoding.", - "location": "query" - }, - "endLine": { - "type": "integer", - "description": "The index of the line up to which data will be imported. Default is to import the entire file. If endLine is negative, it is an offset from the end of the file; the imported content will exclude the last endLine lines.", - "format": "int32", - "location": "query" - }, - "isStrict": { - "type": "boolean", - "description": "Whether the imported CSV must have the same number of values for each row. If false, rows with fewer values will be padded with empty values. Default is true.", - "location": "query" - }, - "startLine": { - "type": "integer", - "description": "The index of the first line from which to start importing, inclusive. Default is 0.", - "format": "int32", - "location": "query" - }, - "tableId": { - "type": "string", - "description": "The table into which new rows are being imported.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "tableId" - ], - "response": { - "$ref": "Import" - }, - "scopes": [ - "https://www.googleapis.com/auth/fusiontables" - ], - "supportsMediaUpload": true, - "mediaUpload": { - "accept": [ - "application/octet-stream" - ], - "maxSize": "250MB", - "protocols": { - "simple": { - "multipart": true, - "path": "/upload/fusiontables/v2/tables/{tableId}/import" - }, - "resumable": { - "multipart": true, - "path": "/resumable/upload/fusiontables/v2/tables/{tableId}/import" - } - } - } - }, - "importTable": { - "id": "fusiontables.table.importTable", - "path": "tables/import", - "httpMethod": "POST", - "description": "Imports a new table.", - "parameters": { - "delimiter": { - "type": "string", - "description": "The delimiter used to separate cell values. This can only consist of a single character. Default is ,.", - "location": "query" - }, - "encoding": { - "type": "string", - "description": "The encoding of the content. Default is UTF-8. Use auto-detect if you are unsure of the encoding.", - "location": "query" - }, - "name": { - "type": "string", - "description": "The name to be assigned to the new table.", - "required": true, - "location": "query" - } - }, - "parameterOrder": [ - "name" - ], - "response": { - "$ref": "Table" - }, - "scopes": [ - "https://www.googleapis.com/auth/fusiontables" - ], - "supportsMediaUpload": true, - "mediaUpload": { - "accept": [ - "application/octet-stream" - ], - "maxSize": "250MB", - "protocols": { - "simple": { - "multipart": true, - "path": "/upload/fusiontables/v2/tables/import" - }, - "resumable": { - "multipart": true, - "path": "/resumable/upload/fusiontables/v2/tables/import" - } - } - } - }, - "insert": { - "id": "fusiontables.table.insert", - "path": "tables", - "httpMethod": "POST", - "description": "Creates a new table.", - "request": { - "$ref": "Table" - }, - "response": { - "$ref": "Table" - }, - "scopes": [ - "https://www.googleapis.com/auth/fusiontables" - ] - }, - "list": { - "id": "fusiontables.table.list", - "path": "tables", - "httpMethod": "GET", - "description": "Retrieves a list of tables a user owns.", - "parameters": { - "maxResults": { - "type": "integer", - "description": "Maximum number of tables to return. Default is 5.", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Continuation token specifying which result page to return.", - "location": "query" - } - }, - "response": { - "$ref": "TableList" - }, - "scopes": [ - "https://www.googleapis.com/auth/fusiontables", - "https://www.googleapis.com/auth/fusiontables.readonly" - ] - }, - "patch": { - "id": "fusiontables.table.patch", - "path": "tables/{tableId}", - "httpMethod": "PATCH", - "description": "Updates an existing table. Unless explicitly requested, only the name, description, and attribution will be updated. This method supports patch semantics.", - "parameters": { - "replaceViewDefinition": { - "type": "boolean", - "description": "Whether the view definition is also updated. The specified view definition replaces the existing one. Only a view can be updated with a new definition.", - "location": "query" - }, - "tableId": { - "type": "string", - "description": "ID of the table that is being updated.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "tableId" - ], - "request": { - "$ref": "Table" - }, - "response": { - "$ref": "Table" - }, - "scopes": [ - "https://www.googleapis.com/auth/fusiontables" - ] - }, - "refetchSheet": { - "id": "fusiontables.table.refetchSheet", - "path": "tables/{tableId}/refetch", - "httpMethod": "POST", - "description": "Replaces rows of the table with the rows of the spreadsheet that is first imported from. Current rows remain visible until all replacement rows are ready.", - "parameters": { - "tableId": { - "type": "string", - "description": "Table whose rows will be replaced from the spreadsheet.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "tableId" - ], - "response": { - "$ref": "Task" - }, - "scopes": [ - "https://www.googleapis.com/auth/fusiontables" - ] - }, - "replaceRows": { - "id": "fusiontables.table.replaceRows", - "path": "tables/{tableId}/replace", - "httpMethod": "POST", - "description": "Replaces rows of an existing table. Current rows remain visible until all replacement rows are ready.", - "parameters": { - "delimiter": { - "type": "string", - "description": "The delimiter used to separate cell values. This can only consist of a single character. Default is ,.", - "location": "query" - }, - "encoding": { - "type": "string", - "description": "The encoding of the content. Default is UTF-8. Use 'auto-detect' if you are unsure of the encoding.", - "location": "query" - }, - "endLine": { - "type": "integer", - "description": "The index of the line up to which data will be imported. Default is to import the entire file. If endLine is negative, it is an offset from the end of the file; the imported content will exclude the last endLine lines.", - "format": "int32", - "location": "query" - }, - "isStrict": { - "type": "boolean", - "description": "Whether the imported CSV must have the same number of column values for each row. If true, throws an exception if the CSV does not have the same number of columns. If false, rows with fewer column values will be padded with empty values. Default is true.", - "location": "query" - }, - "startLine": { - "type": "integer", - "description": "The index of the first line from which to start importing, inclusive. Default is 0.", - "format": "int32", - "location": "query" - }, - "tableId": { - "type": "string", - "description": "Table whose rows will be replaced.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "tableId" - ], - "response": { - "$ref": "Task" - }, - "scopes": [ - "https://www.googleapis.com/auth/fusiontables" - ], - "supportsMediaUpload": true, - "mediaUpload": { - "accept": [ - "application/octet-stream" - ], - "maxSize": "250MB", - "protocols": { - "simple": { - "multipart": true, - "path": "/upload/fusiontables/v2/tables/{tableId}/replace" - }, - "resumable": { - "multipart": true, - "path": "/resumable/upload/fusiontables/v2/tables/{tableId}/replace" - } - } - } - }, - "update": { - "id": "fusiontables.table.update", - "path": "tables/{tableId}", - "httpMethod": "PUT", - "description": "Updates an existing table. Unless explicitly requested, only the name, description, and attribution will be updated.", - "parameters": { - "replaceViewDefinition": { - "type": "boolean", - "description": "Whether the view definition is also updated. The specified view definition replaces the existing one. Only a view can be updated with a new definition.", - "location": "query" - }, - "tableId": { - "type": "string", - "description": "ID of the table that is being updated.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "tableId" - ], - "request": { - "$ref": "Table" - }, - "response": { - "$ref": "Table" - }, - "scopes": [ - "https://www.googleapis.com/auth/fusiontables" - ] - } - } - }, - "task": { - "methods": { - "delete": { - "id": "fusiontables.task.delete", - "path": "tables/{tableId}/tasks/{taskId}", - "httpMethod": "DELETE", - "description": "Deletes a specific task by its ID, unless that task has already started running.", - "parameters": { - "tableId": { - "type": "string", - "description": "Table from which the task is being deleted.", - "required": true, - "location": "path" - }, - "taskId": { - "type": "string", - "description": "The identifier of the task to delete.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "tableId", - "taskId" - ], - "scopes": [ - "https://www.googleapis.com/auth/fusiontables" - ] - }, - "get": { - "id": "fusiontables.task.get", - "path": "tables/{tableId}/tasks/{taskId}", - "httpMethod": "GET", - "description": "Retrieves a specific task by its ID.", - "parameters": { - "tableId": { - "type": "string", - "description": "Table to which the task belongs.", - "required": true, - "location": "path" - }, - "taskId": { - "type": "string", - "description": "The identifier of the task to get.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "tableId", - "taskId" - ], - "response": { - "$ref": "Task" - }, - "scopes": [ - "https://www.googleapis.com/auth/fusiontables", - "https://www.googleapis.com/auth/fusiontables.readonly" - ] - }, - "list": { - "id": "fusiontables.task.list", - "path": "tables/{tableId}/tasks", - "httpMethod": "GET", - "description": "Retrieves a list of tasks.", - "parameters": { - "maxResults": { - "type": "integer", - "description": "Maximum number of tasks to return. Default is 5.", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Continuation token specifying which result page to return.", - "location": "query" - }, - "startIndex": { - "type": "integer", - "description": "Index of the first result returned in the current page.", - "format": "uint32", - "location": "query" - }, - "tableId": { - "type": "string", - "description": "Table whose tasks are being listed.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "tableId" - ], - "response": { - "$ref": "TaskList" - }, - "scopes": [ - "https://www.googleapis.com/auth/fusiontables", - "https://www.googleapis.com/auth/fusiontables.readonly" - ] - } - } - }, - "template": { - "methods": { - "delete": { - "id": "fusiontables.template.delete", - "path": "tables/{tableId}/templates/{templateId}", - "httpMethod": "DELETE", - "description": "Deletes a template", - "parameters": { - "tableId": { - "type": "string", - "description": "Table from which the template is being deleted", - "required": true, - "location": "path" - }, - "templateId": { - "type": "integer", - "description": "Identifier for the template which is being deleted", - "required": true, - "format": "int32", - "location": "path" - } - }, - "parameterOrder": [ - "tableId", - "templateId" - ], - "scopes": [ - "https://www.googleapis.com/auth/fusiontables" - ] - }, - "get": { - "id": "fusiontables.template.get", - "path": "tables/{tableId}/templates/{templateId}", - "httpMethod": "GET", - "description": "Retrieves a specific template by its id", - "parameters": { - "tableId": { - "type": "string", - "description": "Table to which the template belongs", - "required": true, - "location": "path" - }, - "templateId": { - "type": "integer", - "description": "Identifier for the template that is being requested", - "required": true, - "format": "int32", - "location": "path" - } - }, - "parameterOrder": [ - "tableId", - "templateId" - ], - "response": { - "$ref": "Template" - }, - "scopes": [ - "https://www.googleapis.com/auth/fusiontables", - "https://www.googleapis.com/auth/fusiontables.readonly" - ] - }, - "insert": { - "id": "fusiontables.template.insert", - "path": "tables/{tableId}/templates", - "httpMethod": "POST", - "description": "Creates a new template for the table.", - "parameters": { - "tableId": { - "type": "string", - "description": "Table for which a new template is being created", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "tableId" - ], - "request": { - "$ref": "Template" - }, - "response": { - "$ref": "Template" - }, - "scopes": [ - "https://www.googleapis.com/auth/fusiontables" - ] - }, - "list": { - "id": "fusiontables.template.list", - "path": "tables/{tableId}/templates", - "httpMethod": "GET", - "description": "Retrieves a list of templates.", - "parameters": { - "maxResults": { - "type": "integer", - "description": "Maximum number of templates to return. Optional. Default is 5.", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Continuation token specifying which results page to return. Optional.", - "location": "query" - }, - "tableId": { - "type": "string", - "description": "Identifier for the table whose templates are being requested", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "tableId" - ], - "response": { - "$ref": "TemplateList" - }, - "scopes": [ - "https://www.googleapis.com/auth/fusiontables", - "https://www.googleapis.com/auth/fusiontables.readonly" - ] - }, - "patch": { - "id": "fusiontables.template.patch", - "path": "tables/{tableId}/templates/{templateId}", - "httpMethod": "PATCH", - "description": "Updates an existing template. This method supports patch semantics.", - "parameters": { - "tableId": { - "type": "string", - "description": "Table to which the updated template belongs", - "required": true, - "location": "path" - }, - "templateId": { - "type": "integer", - "description": "Identifier for the template that is being updated", - "required": true, - "format": "int32", - "location": "path" - } - }, - "parameterOrder": [ - "tableId", - "templateId" - ], - "request": { - "$ref": "Template" - }, - "response": { - "$ref": "Template" - }, - "scopes": [ - "https://www.googleapis.com/auth/fusiontables" - ] - }, - "update": { - "id": "fusiontables.template.update", - "path": "tables/{tableId}/templates/{templateId}", - "httpMethod": "PUT", - "description": "Updates an existing template", - "parameters": { - "tableId": { - "type": "string", - "description": "Table to which the updated template belongs", - "required": true, - "location": "path" - }, - "templateId": { - "type": "integer", - "description": "Identifier for the template that is being updated", - "required": true, - "format": "int32", - "location": "path" - } - }, - "parameterOrder": [ - "tableId", - "templateId" - ], - "request": { - "$ref": "Template" - }, - "response": { - "$ref": "Template" - }, - "scopes": [ - "https://www.googleapis.com/auth/fusiontables" - ] - } - } - } - } -} + "servicePath": "fusiontables/v2/", + "title": "Fusion Tables API", + "version": "v2" +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/fusiontables/v2/fusiontables-gen.go b/vendor/google.golang.org/api/fusiontables/v2/fusiontables-gen.go index 4de36b94a..1ca999248 100644 --- a/vendor/google.golang.org/api/fusiontables/v2/fusiontables-gen.go +++ b/vendor/google.golang.org/api/fusiontables/v2/fusiontables-gen.go @@ -3867,11 +3867,12 @@ func (c *TableImportRowsCall) doRequest(alt string) (*http.Response, error) { body = new(bytes.Buffer) reqHeaders.Set("Content-Type", "application/json") } - body, cleanup := c.mediaInfo_.UploadRequest(reqHeaders, body) + body, getBody, cleanup := c.mediaInfo_.UploadRequest(reqHeaders, body) defer cleanup() urls += "?" + c.urlParams_.Encode() req, _ := http.NewRequest("POST", urls, body) req.Header = reqHeaders + gensupport.SetGetBody(req, getBody) googleapi.Expand(req.URL, map[string]string{ "tableId": c.tableId, }) @@ -4116,11 +4117,12 @@ func (c *TableImportTableCall) doRequest(alt string) (*http.Response, error) { body = new(bytes.Buffer) reqHeaders.Set("Content-Type", "application/json") } - body, cleanup := c.mediaInfo_.UploadRequest(reqHeaders, body) + body, getBody, cleanup := c.mediaInfo_.UploadRequest(reqHeaders, body) defer cleanup() urls += "?" + c.urlParams_.Encode() req, _ := http.NewRequest("POST", urls, body) req.Header = reqHeaders + gensupport.SetGetBody(req, getBody) return gensupport.SendRequest(c.ctx_, c.s.client, req) } @@ -4935,11 +4937,12 @@ func (c *TableReplaceRowsCall) doRequest(alt string) (*http.Response, error) { body = new(bytes.Buffer) reqHeaders.Set("Content-Type", "application/json") } - body, cleanup := c.mediaInfo_.UploadRequest(reqHeaders, body) + body, getBody, cleanup := c.mediaInfo_.UploadRequest(reqHeaders, body) defer cleanup() urls += "?" + c.urlParams_.Encode() req, _ := http.NewRequest("POST", urls, body) req.Header = reqHeaders + gensupport.SetGetBody(req, getBody) googleapi.Expand(req.URL, map[string]string{ "tableId": c.tableId, }) diff --git a/vendor/google.golang.org/api/games/v1/games-api.json b/vendor/google.golang.org/api/games/v1/games-api.json index 678913d21..9274ee005 100644 --- a/vendor/google.golang.org/api/games/v1/games-api.json +++ b/vendor/google.golang.org/api/games/v1/games-api.json @@ -1,4888 +1,4888 @@ { - "kind": "discovery#restDescription", - "etag": "\"YWOzh2SDasdU84ArJnpYek-OMdg/keBNPsgSGOvhZL7fvFZhEBtDdIs\"", - "discoveryVersion": "v1", - "id": "games:v1", - "name": "games", - "canonicalName": "Games", - "version": "v1", - "revision": "20180104", - "title": "Google Play Game Services API", - "description": "The API for Google Play Game Services.", - "ownerDomain": "google.com", - "ownerName": "Google", - "icons": { - "x16": "https://www.gstatic.com/images/branding/product/1x/googleg_16dp.png", - "x32": "https://www.gstatic.com/images/branding/product/1x/googleg_32dp.png" - }, - "documentationLink": "https://developers.google.com/games/services/", - "protocol": "rest", - "baseUrl": "https://www.googleapis.com/games/v1/", - "basePath": "/games/v1/", - "rootUrl": "https://www.googleapis.com/", - "servicePath": "games/v1/", - "batchPath": "batch/games/v1", - "parameters": { - "alt": { - "type": "string", - "description": "Data format for the response.", - "default": "json", - "enum": [ - "json" - ], - "enumDescriptions": [ - "Responses with Content-Type of application/json" - ], - "location": "query" - }, - "fields": { - "type": "string", - "description": "Selector specifying which fields to include in a partial response.", - "location": "query" - }, - "key": { - "type": "string", - "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" - }, - "oauth_token": { - "type": "string", - "description": "OAuth 2.0 token for the current user.", - "location": "query" - }, - "prettyPrint": { - "type": "boolean", - "description": "Returns response with indentations and line breaks.", - "default": "true", - "location": "query" - }, - "quotaUser": { - "type": "string", - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", - "location": "query" - }, - "userIp": { - "type": "string", - "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", - "location": "query" - } - }, - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/drive.appdata": { - "description": "View and manage its own configuration data in your Google Drive" - }, - "https://www.googleapis.com/auth/games": { - "description": "Share your Google+ profile information and view and manage your game activity" - }, - "https://www.googleapis.com/auth/plus.login": { - "description": "Know the list of people in your circles, your age range, and language" - } - } - } - }, - "schemas": { - "AchievementDefinition": { - "id": "AchievementDefinition", - "type": "object", - "description": "This is a JSON template for an achievement definition object.", - "properties": { - "achievementType": { - "type": "string", - "description": "The type of the achievement.\nPossible values are: \n- \"STANDARD\" - Achievement is either locked or unlocked. \n- \"INCREMENTAL\" - Achievement is incremental." - }, - "description": { - "type": "string", - "description": "The description of the achievement." - }, - "experiencePoints": { - "type": "string", - "description": "Experience points which will be earned when unlocking this achievement.", - "format": "int64" - }, - "formattedTotalSteps": { - "type": "string", - "description": "The total steps for an incremental achievement as a string." - }, - "id": { - "type": "string", - "description": "The ID of the achievement." - }, - "initialState": { - "type": "string", - "description": "The initial state of the achievement.\nPossible values are: \n- \"HIDDEN\" - Achievement is hidden. \n- \"REVEALED\" - Achievement is revealed. \n- \"UNLOCKED\" - Achievement is unlocked." - }, - "isRevealedIconUrlDefault": { - "type": "boolean", - "description": "Indicates whether the revealed icon image being returned is a default image, or is provided by the game." - }, - "isUnlockedIconUrlDefault": { - "type": "boolean", - "description": "Indicates whether the unlocked icon image being returned is a default image, or is game-provided." - }, - "kind": { - "type": "string", - "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#achievementDefinition.", - "default": "games#achievementDefinition" - }, - "name": { - "type": "string", - "description": "The name of the achievement." - }, - "revealedIconUrl": { - "type": "string", - "description": "The image URL for the revealed achievement icon." - }, - "totalSteps": { - "type": "integer", - "description": "The total steps for an incremental achievement.", - "format": "int32" - }, - "unlockedIconUrl": { - "type": "string", - "description": "The image URL for the unlocked achievement icon." - } - } - }, - "AchievementDefinitionsListResponse": { - "id": "AchievementDefinitionsListResponse", - "type": "object", - "description": "This is a JSON template for a list of achievement definition objects.", - "properties": { - "items": { - "type": "array", - "description": "The achievement definitions.", - "items": { - "$ref": "AchievementDefinition" - } - }, - "kind": { - "type": "string", - "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#achievementDefinitionsListResponse.", - "default": "games#achievementDefinitionsListResponse" - }, - "nextPageToken": { - "type": "string", - "description": "Token corresponding to the next page of results." - } - } - }, - "AchievementIncrementResponse": { - "id": "AchievementIncrementResponse", - "type": "object", - "description": "This is a JSON template for an achievement increment response", - "properties": { - "currentSteps": { - "type": "integer", - "description": "The current steps recorded for this incremental achievement.", - "format": "int32" - }, - "kind": { - "type": "string", - "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#achievementIncrementResponse.", - "default": "games#achievementIncrementResponse" - }, - "newlyUnlocked": { - "type": "boolean", - "description": "Whether the current steps for the achievement has reached the number of steps required to unlock." - } - } - }, - "AchievementRevealResponse": { - "id": "AchievementRevealResponse", - "type": "object", - "description": "This is a JSON template for an achievement reveal response", - "properties": { - "currentState": { - "type": "string", - "description": "The current state of the achievement for which a reveal was attempted. This might be UNLOCKED if the achievement was already unlocked.\nPossible values are: \n- \"REVEALED\" - Achievement is revealed. \n- \"UNLOCKED\" - Achievement is unlocked." - }, - "kind": { - "type": "string", - "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#achievementRevealResponse.", - "default": "games#achievementRevealResponse" - } - } - }, - "AchievementSetStepsAtLeastResponse": { - "id": "AchievementSetStepsAtLeastResponse", - "type": "object", - "description": "This is a JSON template for an achievement set steps at least response.", - "properties": { - "currentSteps": { - "type": "integer", - "description": "The current steps recorded for this incremental achievement.", - "format": "int32" - }, - "kind": { - "type": "string", - "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#achievementSetStepsAtLeastResponse.", - "default": "games#achievementSetStepsAtLeastResponse" - }, - "newlyUnlocked": { - "type": "boolean", - "description": "Whether the the current steps for the achievement has reached the number of steps required to unlock." - } - } - }, - "AchievementUnlockResponse": { - "id": "AchievementUnlockResponse", - "type": "object", - "description": "This is a JSON template for an achievement unlock response", - "properties": { - "kind": { - "type": "string", - "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#achievementUnlockResponse.", - "default": "games#achievementUnlockResponse" - }, - "newlyUnlocked": { - "type": "boolean", - "description": "Whether this achievement was newly unlocked (that is, whether the unlock request for the achievement was the first for the player)." - } - } - }, - "AchievementUpdateMultipleRequest": { - "id": "AchievementUpdateMultipleRequest", - "type": "object", - "description": "This is a JSON template for a list of achievement update requests.", - "properties": { - "kind": { - "type": "string", - "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#achievementUpdateMultipleRequest.", - "default": "games#achievementUpdateMultipleRequest" - }, - "updates": { - "type": "array", - "description": "The individual achievement update requests.", - "items": { - "$ref": "AchievementUpdateRequest" - } - } - } - }, - "AchievementUpdateMultipleResponse": { - "id": "AchievementUpdateMultipleResponse", - "type": "object", - "description": "This is a JSON template for an achievement unlock response.", - "properties": { - "kind": { - "type": "string", - "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#achievementUpdateListResponse.", - "default": "games#achievementUpdateMultipleResponse" - }, - "updatedAchievements": { - "type": "array", - "description": "The updated state of the achievements.", - "items": { - "$ref": "AchievementUpdateResponse" - } - } - } - }, - "AchievementUpdateRequest": { - "id": "AchievementUpdateRequest", - "type": "object", - "description": "This is a JSON template for a request to update an achievement.", - "properties": { - "achievementId": { - "type": "string", - "description": "The achievement this update is being applied to." - }, - "incrementPayload": { - "$ref": "GamesAchievementIncrement", - "description": "The payload if an update of type INCREMENT was requested for the achievement." - }, - "kind": { - "type": "string", - "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#achievementUpdateRequest.", - "default": "games#achievementUpdateRequest" - }, - "setStepsAtLeastPayload": { - "$ref": "GamesAchievementSetStepsAtLeast", - "description": "The payload if an update of type SET_STEPS_AT_LEAST was requested for the achievement." - }, - "updateType": { - "type": "string", - "description": "The type of update being applied.\nPossible values are: \n- \"REVEAL\" - Achievement is revealed. \n- \"UNLOCK\" - Achievement is unlocked. \n- \"INCREMENT\" - Achievement is incremented. \n- \"SET_STEPS_AT_LEAST\" - Achievement progress is set to at least the passed value." - } - } - }, - "AchievementUpdateResponse": { - "id": "AchievementUpdateResponse", - "type": "object", - "description": "This is a JSON template for an achievement update response.", - "properties": { - "achievementId": { - "type": "string", - "description": "The achievement this update is was applied to." - }, - "currentState": { - "type": "string", - "description": "The current state of the achievement.\nPossible values are: \n- \"HIDDEN\" - Achievement is hidden. \n- \"REVEALED\" - Achievement is revealed. \n- \"UNLOCKED\" - Achievement is unlocked." - }, - "currentSteps": { - "type": "integer", - "description": "The current steps recorded for this achievement if it is incremental.", - "format": "int32" - }, - "kind": { - "type": "string", - "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#achievementUpdateResponse.", - "default": "games#achievementUpdateResponse" - }, - "newlyUnlocked": { - "type": "boolean", - "description": "Whether this achievement was newly unlocked (that is, whether the unlock request for the achievement was the first for the player)." - }, - "updateOccurred": { - "type": "boolean", - "description": "Whether the requested updates actually affected the achievement." - } - } - }, - "AggregateStats": { - "id": "AggregateStats", - "type": "object", - "description": "This is a JSON template for aggregate stats.", - "properties": { - "count": { - "type": "string", - "description": "The number of messages sent between a pair of peers.", - "format": "int64" - }, - "kind": { - "type": "string", - "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#aggregateStats.", - "default": "games#aggregateStats" - }, - "max": { - "type": "string", - "description": "The maximum amount.", - "format": "int64" - }, - "min": { - "type": "string", - "description": "The minimum amount.", - "format": "int64" - }, - "sum": { - "type": "string", - "description": "The total number of bytes sent for messages between a pair of peers.", - "format": "int64" - } - } - }, - "AnonymousPlayer": { - "id": "AnonymousPlayer", - "type": "object", - "description": "This is a JSON template for an anonymous player", - "properties": { - "avatarImageUrl": { - "type": "string", - "description": "The base URL for the image to display for the anonymous player." - }, - "displayName": { - "type": "string", - "description": "The name to display for the anonymous player." - }, - "kind": { - "type": "string", - "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#anonymousPlayer.", - "default": "games#anonymousPlayer" - } - } - }, - "Application": { - "id": "Application", - "type": "object", - "description": "This is a JSON template for the Application resource.", - "properties": { - "achievement_count": { - "type": "integer", - "description": "The number of achievements visible to the currently authenticated player.", - "format": "int32" - }, - "assets": { - "type": "array", - "description": "The assets of the application.", - "items": { - "$ref": "ImageAsset" - } - }, - "author": { - "type": "string", - "description": "The author of the application." - }, - "category": { - "$ref": "ApplicationCategory", - "description": "The category of the application." - }, - "description": { - "type": "string", - "description": "The description of the application." - }, - "enabledFeatures": { - "type": "array", - "description": "A list of features that have been enabled for the application.\nPossible values are: \n- \"SNAPSHOTS\" - Snapshots has been enabled", - "items": { - "type": "string" - } - }, - "id": { - "type": "string", - "description": "The ID of the application." - }, - "instances": { - "type": "array", - "description": "The instances of the application.", - "items": { - "$ref": "Instance" - } - }, - "kind": { - "type": "string", - "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#application.", - "default": "games#application" - }, - "lastUpdatedTimestamp": { - "type": "string", - "description": "The last updated timestamp of the application.", - "format": "int64" - }, - "leaderboard_count": { - "type": "integer", - "description": "The number of leaderboards visible to the currently authenticated player.", - "format": "int32" - }, - "name": { - "type": "string", - "description": "The name of the application." - }, - "themeColor": { - "type": "string", - "description": "A hint to the client UI for what color to use as an app-themed color. The color is given as an RGB triplet (e.g. \"E0E0E0\")." - } - } - }, - "ApplicationCategory": { - "id": "ApplicationCategory", - "type": "object", - "description": "This is a JSON template for an application category object.", - "properties": { - "kind": { - "type": "string", - "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#applicationCategory.", - "default": "games#applicationCategory" - }, - "primary": { - "type": "string", - "description": "The primary category." - }, - "secondary": { - "type": "string", - "description": "The secondary category." - } - } - }, - "ApplicationVerifyResponse": { - "id": "ApplicationVerifyResponse", - "type": "object", - "description": "This is a JSON template for a third party application verification response resource.", - "properties": { - "alternate_player_id": { - "type": "string", - "description": "An alternate ID that was once used for the player that was issued the auth token used in this request. (This field is not normally populated.)" - }, - "kind": { - "type": "string", - "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#applicationVerifyResponse.", - "default": "games#applicationVerifyResponse" - }, - "player_id": { - "type": "string", - "description": "The ID of the player that was issued the auth token used in this request." - } - } - }, - "Category": { - "id": "Category", - "type": "object", - "description": "This is a JSON template for data related to individual game categories.", - "properties": { - "category": { - "type": "string", - "description": "The category name." - }, - "experiencePoints": { - "type": "string", - "description": "Experience points earned in this category.", - "format": "int64" - }, - "kind": { - "type": "string", - "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#category.", - "default": "games#category" - } - } - }, - "CategoryListResponse": { - "id": "CategoryListResponse", - "type": "object", - "description": "This is a JSON template for a list of category data objects.", - "properties": { - "items": { - "type": "array", - "description": "The list of categories with usage data.", - "items": { - "$ref": "Category" - } - }, - "kind": { - "type": "string", - "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#categoryListResponse.", - "default": "games#categoryListResponse" - }, - "nextPageToken": { - "type": "string", - "description": "Token corresponding to the next page of results." - } - } - }, - "EventBatchRecordFailure": { - "id": "EventBatchRecordFailure", - "type": "object", - "description": "This is a JSON template for a batch update failure resource.", - "properties": { - "failureCause": { - "type": "string", - "description": "The cause for the update failure.\nPossible values are: \n- \"TOO_LARGE\": A batch request was issued with more events than are allowed in a single batch. \n- \"TIME_PERIOD_EXPIRED\": A batch was sent with data too far in the past to record. \n- \"TIME_PERIOD_SHORT\": A batch was sent with a time range that was too short. \n- \"TIME_PERIOD_LONG\": A batch was sent with a time range that was too long. \n- \"ALREADY_UPDATED\": An attempt was made to record a batch of data which was already seen. \n- \"RECORD_RATE_HIGH\": An attempt was made to record data faster than the server will apply updates." - }, - "kind": { - "type": "string", - "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#eventBatchRecordFailure.", - "default": "games#eventBatchRecordFailure" - }, - "range": { - "$ref": "EventPeriodRange", - "description": "The time range which was rejected; empty for a request-wide failure." - } - } - }, - "EventChild": { - "id": "EventChild", - "type": "object", - "description": "This is a JSON template for an event child relationship resource.", - "properties": { - "childId": { - "type": "string", - "description": "The ID of the child event." - }, - "kind": { - "type": "string", - "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#eventChild.", - "default": "games#eventChild" - } - } - }, - "EventDefinition": { - "id": "EventDefinition", - "type": "object", - "description": "This is a JSON template for an event definition resource.", - "properties": { - "childEvents": { - "type": "array", - "description": "A list of events that are a child of this event.", - "items": { - "$ref": "EventChild" - } - }, - "description": { - "type": "string", - "description": "Description of what this event represents." - }, - "displayName": { - "type": "string", - "description": "The name to display for the event." - }, - "id": { - "type": "string", - "description": "The ID of the event." - }, - "imageUrl": { - "type": "string", - "description": "The base URL for the image that represents the event." - }, - "isDefaultImageUrl": { - "type": "boolean", - "description": "Indicates whether the icon image being returned is a default image, or is game-provided." - }, - "kind": { - "type": "string", - "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#eventDefinition.", - "default": "games#eventDefinition" - }, - "visibility": { - "type": "string", - "description": "The visibility of event being tracked in this definition.\nPossible values are: \n- \"REVEALED\": This event should be visible to all users. \n- \"HIDDEN\": This event should only be shown to users that have recorded this event at least once." - } - } - }, - "EventDefinitionListResponse": { - "id": "EventDefinitionListResponse", - "type": "object", - "description": "This is a JSON template for a ListDefinitions response.", - "properties": { - "items": { - "type": "array", - "description": "The event definitions.", - "items": { - "$ref": "EventDefinition" - } - }, - "kind": { - "type": "string", - "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#eventDefinitionListResponse.", - "default": "games#eventDefinitionListResponse" - }, - "nextPageToken": { - "type": "string", - "description": "The pagination token for the next page of results." - } - } - }, - "EventPeriodRange": { - "id": "EventPeriodRange", - "type": "object", - "description": "This is a JSON template for an event period time range.", - "properties": { - "kind": { - "type": "string", - "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#eventPeriodRange.", - "default": "games#eventPeriodRange" - }, - "periodEndMillis": { - "type": "string", - "description": "The time when this update period ends, in millis, since 1970 UTC (Unix Epoch).", - "format": "int64" - }, - "periodStartMillis": { - "type": "string", - "description": "The time when this update period begins, in millis, since 1970 UTC (Unix Epoch).", - "format": "int64" - } - } - }, - "EventPeriodUpdate": { - "id": "EventPeriodUpdate", - "type": "object", - "description": "This is a JSON template for an event period update resource.", - "properties": { - "kind": { - "type": "string", - "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#eventPeriodUpdate.", - "default": "games#eventPeriodUpdate" - }, - "timePeriod": { - "$ref": "EventPeriodRange", - "description": "The time period being covered by this update." - }, - "updates": { - "type": "array", - "description": "The updates being made for this time period.", - "items": { - "$ref": "EventUpdateRequest" - } - } - } - }, - "EventRecordFailure": { - "id": "EventRecordFailure", - "type": "object", - "description": "This is a JSON template for an event update failure resource.", - "properties": { - "eventId": { - "type": "string", - "description": "The ID of the event that was not updated." - }, - "failureCause": { - "type": "string", - "description": "The cause for the update failure.\nPossible values are: \n- \"NOT_FOUND\" - An attempt was made to set an event that was not defined. \n- \"INVALID_UPDATE_VALUE\" - An attempt was made to increment an event by a non-positive value." - }, - "kind": { - "type": "string", - "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#eventRecordFailure.", - "default": "games#eventRecordFailure" - } - } - }, - "EventRecordRequest": { - "id": "EventRecordRequest", - "type": "object", - "description": "This is a JSON template for an event period update resource.", - "properties": { - "currentTimeMillis": { - "type": "string", - "description": "The current time when this update was sent, in milliseconds, since 1970 UTC (Unix Epoch).", - "format": "int64" - }, - "kind": { - "type": "string", - "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#eventRecordRequest.", - "default": "games#eventRecordRequest" - }, - "requestId": { - "type": "string", - "description": "The request ID used to identify this attempt to record events.", - "format": "int64" - }, - "timePeriods": { - "type": "array", - "description": "A list of the time period updates being made in this request.", - "items": { - "$ref": "EventPeriodUpdate" - } - } - } - }, - "EventUpdateRequest": { - "id": "EventUpdateRequest", - "type": "object", - "description": "This is a JSON template for an event period update resource.", - "properties": { - "definitionId": { - "type": "string", - "description": "The ID of the event being modified in this update." - }, - "kind": { - "type": "string", - "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#eventUpdateRequest.", - "default": "games#eventUpdateRequest" - }, - "updateCount": { - "type": "string", - "description": "The number of times this event occurred in this time period.", - "format": "int64" - } - } - }, - "EventUpdateResponse": { - "id": "EventUpdateResponse", - "type": "object", - "description": "This is a JSON template for an event period update resource.", - "properties": { - "batchFailures": { - "type": "array", - "description": "Any batch-wide failures which occurred applying updates.", - "items": { - "$ref": "EventBatchRecordFailure" - } - }, - "eventFailures": { - "type": "array", - "description": "Any failures updating a particular event.", - "items": { - "$ref": "EventRecordFailure" - } - }, - "kind": { - "type": "string", - "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#eventUpdateResponse.", - "default": "games#eventUpdateResponse" - }, - "playerEvents": { - "type": "array", - "description": "The current status of any updated events", - "items": { - "$ref": "PlayerEvent" - } - } - } - }, - "GamesAchievementIncrement": { - "id": "GamesAchievementIncrement", - "type": "object", - "description": "This is a JSON template for the payload to request to increment an achievement.", - "properties": { - "kind": { - "type": "string", - "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#GamesAchievementIncrement.", - "default": "games#GamesAchievementIncrement" - }, - "requestId": { - "type": "string", - "description": "The requestId associated with an increment to an achievement.", - "format": "int64" - }, - "steps": { - "type": "integer", - "description": "The number of steps to be incremented.", - "format": "int32" - } - } - }, - "GamesAchievementSetStepsAtLeast": { - "id": "GamesAchievementSetStepsAtLeast", - "type": "object", - "description": "This is a JSON template for the payload to request to increment an achievement.", - "properties": { - "kind": { - "type": "string", - "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#GamesAchievementSetStepsAtLeast.", - "default": "games#GamesAchievementSetStepsAtLeast" - }, - "steps": { - "type": "integer", - "description": "The minimum number of steps for the achievement to be set to.", - "format": "int32" - } - } - }, - "ImageAsset": { - "id": "ImageAsset", - "type": "object", - "description": "This is a JSON template for an image asset object.", - "properties": { - "height": { - "type": "integer", - "description": "The height of the asset.", - "format": "int32" - }, - "kind": { - "type": "string", - "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#imageAsset.", - "default": "games#imageAsset" - }, - "name": { - "type": "string", - "description": "The name of the asset." - }, - "url": { - "type": "string", - "description": "The URL of the asset." - }, - "width": { - "type": "integer", - "description": "The width of the asset.", - "format": "int32" - } - } - }, - "Instance": { - "id": "Instance", - "type": "object", - "description": "This is a JSON template for the Instance resource.", - "properties": { - "acquisitionUri": { - "type": "string", - "description": "URI which shows where a user can acquire this instance." - }, - "androidInstance": { - "$ref": "InstanceAndroidDetails", - "description": "Platform dependent details for Android." - }, - "iosInstance": { - "$ref": "InstanceIosDetails", - "description": "Platform dependent details for iOS." - }, - "kind": { - "type": "string", - "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#instance.", - "default": "games#instance" - }, - "name": { - "type": "string", - "description": "Localized display name." - }, - "platformType": { - "type": "string", - "description": "The platform type.\nPossible values are: \n- \"ANDROID\" - Instance is for Android. \n- \"IOS\" - Instance is for iOS \n- \"WEB_APP\" - Instance is for Web App." - }, - "realtimePlay": { - "type": "boolean", - "description": "Flag to show if this game instance supports realtime play." - }, - "turnBasedPlay": { - "type": "boolean", - "description": "Flag to show if this game instance supports turn based play." - }, - "webInstance": { - "$ref": "InstanceWebDetails", - "description": "Platform dependent details for Web." - } - } - }, - "InstanceAndroidDetails": { - "id": "InstanceAndroidDetails", - "type": "object", - "description": "This is a JSON template for the Android instance details resource.", - "properties": { - "enablePiracyCheck": { - "type": "boolean", - "description": "Flag indicating whether the anti-piracy check is enabled." - }, - "kind": { - "type": "string", - "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#instanceAndroidDetails.", - "default": "games#instanceAndroidDetails" - }, - "packageName": { - "type": "string", - "description": "Android package name which maps to Google Play URL." - }, - "preferred": { - "type": "boolean", - "description": "Indicates that this instance is the default for new installations." - } - } - }, - "InstanceIosDetails": { - "id": "InstanceIosDetails", - "type": "object", - "description": "This is a JSON template for the iOS details resource.", - "properties": { - "bundleIdentifier": { - "type": "string", - "description": "Bundle identifier." - }, - "itunesAppId": { - "type": "string", - "description": "iTunes App ID." - }, - "kind": { - "type": "string", - "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#instanceIosDetails.", - "default": "games#instanceIosDetails" - }, - "preferredForIpad": { - "type": "boolean", - "description": "Indicates that this instance is the default for new installations on iPad devices." - }, - "preferredForIphone": { - "type": "boolean", - "description": "Indicates that this instance is the default for new installations on iPhone devices." - }, - "supportIpad": { - "type": "boolean", - "description": "Flag to indicate if this instance supports iPad." - }, - "supportIphone": { - "type": "boolean", - "description": "Flag to indicate if this instance supports iPhone." - } - } - }, - "InstanceWebDetails": { - "id": "InstanceWebDetails", - "type": "object", - "description": "This is a JSON template for the Web details resource.", - "properties": { - "kind": { - "type": "string", - "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#instanceWebDetails.", - "default": "games#instanceWebDetails" - }, - "launchUrl": { - "type": "string", - "description": "Launch URL for the game." - }, - "preferred": { - "type": "boolean", - "description": "Indicates that this instance is the default for new installations." - } - } - }, - "Leaderboard": { - "id": "Leaderboard", - "type": "object", - "description": "This is a JSON template for the Leaderboard resource.", - "properties": { - "iconUrl": { - "type": "string", - "description": "The icon for the leaderboard." - }, - "id": { - "type": "string", - "description": "The leaderboard ID." - }, - "isIconUrlDefault": { - "type": "boolean", - "description": "Indicates whether the icon image being returned is a default image, or is game-provided." - }, - "kind": { - "type": "string", - "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#leaderboard.", - "default": "games#leaderboard" - }, - "name": { - "type": "string", - "description": "The name of the leaderboard." - }, - "order": { - "type": "string", - "description": "How scores are ordered.\nPossible values are: \n- \"LARGER_IS_BETTER\" - Larger values are better; scores are sorted in descending order. \n- \"SMALLER_IS_BETTER\" - Smaller values are better; scores are sorted in ascending order." - } - } - }, - "LeaderboardEntry": { - "id": "LeaderboardEntry", - "type": "object", - "description": "This is a JSON template for the Leaderboard Entry resource.", - "properties": { - "formattedScore": { - "type": "string", - "description": "The localized string for the numerical value of this score." - }, - "formattedScoreRank": { - "type": "string", - "description": "The localized string for the rank of this score for this leaderboard." - }, - "kind": { - "type": "string", - "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#leaderboardEntry.", - "default": "games#leaderboardEntry" - }, - "player": { - "$ref": "Player", - "description": "The player who holds this score." - }, - "scoreRank": { - "type": "string", - "description": "The rank of this score for this leaderboard.", - "format": "int64" - }, - "scoreTag": { - "type": "string", - "description": "Additional information about the score. Values must contain no more than 64 URI-safe characters as defined by section 2.3 of RFC 3986." - }, - "scoreValue": { - "type": "string", - "description": "The numerical value of this score.", - "format": "int64" - }, - "timeSpan": { - "type": "string", - "description": "The time span of this high score.\nPossible values are: \n- \"ALL_TIME\" - The score is an all-time high score. \n- \"WEEKLY\" - The score is a weekly high score. \n- \"DAILY\" - The score is a daily high score." - }, - "writeTimestampMillis": { - "type": "string", - "description": "The timestamp at which this score was recorded, in milliseconds since the epoch in UTC.", - "format": "int64" - } - } - }, - "LeaderboardListResponse": { - "id": "LeaderboardListResponse", - "type": "object", - "description": "This is a JSON template for a list of leaderboard objects.", - "properties": { - "items": { - "type": "array", - "description": "The leaderboards.", - "items": { - "$ref": "Leaderboard" - } - }, - "kind": { - "type": "string", - "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#leaderboardListResponse.", - "default": "games#leaderboardListResponse" - }, - "nextPageToken": { - "type": "string", - "description": "Token corresponding to the next page of results." - } - } - }, - "LeaderboardScoreRank": { - "id": "LeaderboardScoreRank", - "type": "object", - "description": "This is a JSON template for a score rank in a leaderboard.", - "properties": { - "formattedNumScores": { - "type": "string", - "description": "The number of scores in the leaderboard as a string." - }, - "formattedRank": { - "type": "string", - "description": "The rank in the leaderboard as a string." - }, - "kind": { - "type": "string", - "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#leaderboardScoreRank.", - "default": "games#leaderboardScoreRank" - }, - "numScores": { - "type": "string", - "description": "The number of scores in the leaderboard.", - "format": "int64" - }, - "rank": { - "type": "string", - "description": "The rank in the leaderboard.", - "format": "int64" - } - } - }, - "LeaderboardScores": { - "id": "LeaderboardScores", - "type": "object", - "description": "This is a JSON template for a ListScores response.", - "properties": { - "items": { - "type": "array", - "description": "The scores in the leaderboard.", - "items": { - "$ref": "LeaderboardEntry" - } - }, - "kind": { - "type": "string", - "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#leaderboardScores.", - "default": "games#leaderboardScores" - }, - "nextPageToken": { - "type": "string", - "description": "The pagination token for the next page of results." - }, - "numScores": { - "type": "string", - "description": "The total number of scores in the leaderboard.", - "format": "int64" - }, - "playerScore": { - "$ref": "LeaderboardEntry", - "description": "The score of the requesting player on the leaderboard. The player's score may appear both here and in the list of scores above. If you are viewing a public leaderboard and the player is not sharing their gameplay information publicly, the scoreRank and formattedScoreRank values will not be present." - }, - "prevPageToken": { - "type": "string", - "description": "The pagination token for the previous page of results." - } - } - }, - "MetagameConfig": { - "id": "MetagameConfig", - "type": "object", - "description": "This is a JSON template for the metagame config resource", - "properties": { - "currentVersion": { - "type": "integer", - "description": "Current version of the metagame configuration data. When this data is updated, the version number will be increased by one.", - "format": "int32" - }, - "kind": { - "type": "string", - "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#metagameConfig.", - "default": "games#metagameConfig" - }, - "playerLevels": { - "type": "array", - "description": "The list of player levels.", - "items": { - "$ref": "PlayerLevel" - } - } - } - }, - "NetworkDiagnostics": { - "id": "NetworkDiagnostics", - "type": "object", - "description": "This is a JSON template for network diagnostics reported for a client.", - "properties": { - "androidNetworkSubtype": { - "type": "integer", - "description": "The Android network subtype.", - "format": "int32" - }, - "androidNetworkType": { - "type": "integer", - "description": "The Android network type.", - "format": "int32" - }, - "iosNetworkType": { - "type": "integer", - "description": "iOS network type as defined in Reachability.h.", - "format": "int32" - }, - "kind": { - "type": "string", - "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#networkDiagnostics.", - "default": "games#networkDiagnostics" - }, - "networkOperatorCode": { - "type": "string", - "description": "The MCC+MNC code for the client's network connection. On Android: http://developer.android.com/reference/android/telephony/TelephonyManager.html#getNetworkOperator() On iOS, see: https://developer.apple.com/library/ios/documentation/NetworkingInternet/Reference/CTCarrier/Reference/Reference.html" - }, - "networkOperatorName": { - "type": "string", - "description": "The name of the carrier of the client's network connection. On Android: http://developer.android.com/reference/android/telephony/TelephonyManager.html#getNetworkOperatorName() On iOS: https://developer.apple.com/library/ios/documentation/NetworkingInternet/Reference/CTCarrier/Reference/Reference.html#//apple_ref/occ/instp/CTCarrier/carrierName" - }, - "registrationLatencyMillis": { - "type": "integer", - "description": "The amount of time in milliseconds it took for the client to establish a connection with the XMPP server.", - "format": "int32" - } - } - }, - "ParticipantResult": { - "id": "ParticipantResult", - "type": "object", - "description": "This is a JSON template for a result for a match participant.", - "properties": { - "kind": { - "type": "string", - "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#participantResult.", - "default": "games#participantResult" - }, - "participantId": { - "type": "string", - "description": "The ID of the participant." - }, - "placing": { - "type": "integer", - "description": "The placement or ranking of the participant in the match results; a number from one to the number of participants in the match. Multiple participants may have the same placing value in case of a type.", - "format": "int32" - }, - "result": { - "type": "string", - "description": "The result of the participant for this match.\nPossible values are: \n- \"MATCH_RESULT_WIN\" - The participant won the match. \n- \"MATCH_RESULT_LOSS\" - The participant lost the match. \n- \"MATCH_RESULT_TIE\" - The participant tied the match. \n- \"MATCH_RESULT_NONE\" - There was no winner for the match (nobody wins or loses this kind of game.) \n- \"MATCH_RESULT_DISCONNECT\" - The participant disconnected / left during the match. \n- \"MATCH_RESULT_DISAGREED\" - Different clients reported different results for this participant." - } - } - }, - "PeerChannelDiagnostics": { - "id": "PeerChannelDiagnostics", - "type": "object", - "description": "This is a JSON template for peer channel diagnostics.", - "properties": { - "bytesReceived": { - "$ref": "AggregateStats", - "description": "Number of bytes received." - }, - "bytesSent": { - "$ref": "AggregateStats", - "description": "Number of bytes sent." - }, - "kind": { - "type": "string", - "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#peerChannelDiagnostics.", - "default": "games#peerChannelDiagnostics" - }, - "numMessagesLost": { - "type": "integer", - "description": "Number of messages lost.", - "format": "int32" - }, - "numMessagesReceived": { - "type": "integer", - "description": "Number of messages received.", - "format": "int32" - }, - "numMessagesSent": { - "type": "integer", - "description": "Number of messages sent.", - "format": "int32" - }, - "numSendFailures": { - "type": "integer", - "description": "Number of send failures.", - "format": "int32" - }, - "roundtripLatencyMillis": { - "$ref": "AggregateStats", - "description": "Roundtrip latency stats in milliseconds." - } - } - }, - "PeerSessionDiagnostics": { - "id": "PeerSessionDiagnostics", - "type": "object", - "description": "This is a JSON template for peer session diagnostics.", - "properties": { - "connectedTimestampMillis": { - "type": "string", - "description": "Connected time in milliseconds.", - "format": "int64" - }, - "kind": { - "type": "string", - "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#peerSessionDiagnostics.", - "default": "games#peerSessionDiagnostics" - }, - "participantId": { - "type": "string", - "description": "The participant ID of the peer." - }, - "reliableChannel": { - "$ref": "PeerChannelDiagnostics", - "description": "Reliable channel diagnostics." - }, - "unreliableChannel": { - "$ref": "PeerChannelDiagnostics", - "description": "Unreliable channel diagnostics." - } - } - }, - "Played": { - "id": "Played", - "type": "object", - "description": "This is a JSON template for metadata about a player playing a game with the currently authenticated user.", - "properties": { - "autoMatched": { - "type": "boolean", - "description": "True if the player was auto-matched with the currently authenticated user." - }, - "kind": { - "type": "string", - "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#played.", - "default": "games#played" - }, - "timeMillis": { - "type": "string", - "description": "The last time the player played the game in milliseconds since the epoch in UTC.", - "format": "int64" - } - } - }, - "Player": { - "id": "Player", - "type": "object", - "description": "This is a JSON template for a Player resource.", - "properties": { - "avatarImageUrl": { - "type": "string", - "description": "The base URL for the image that represents the player." - }, - "bannerUrlLandscape": { - "type": "string", - "description": "The url to the landscape mode player banner image." - }, - "bannerUrlPortrait": { - "type": "string", - "description": "The url to the portrait mode player banner image." - }, - "displayName": { - "type": "string", - "description": "The name to display for the player." - }, - "experienceInfo": { - "$ref": "PlayerExperienceInfo", - "description": "An object to represent Play Game experience information for the player." - }, - "kind": { - "type": "string", - "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#player.", - "default": "games#player" - }, - "lastPlayedWith": { - "$ref": "Played", - "description": "Details about the last time this player played a multiplayer game with the currently authenticated player. Populated for PLAYED_WITH player collection members." - }, - "name": { - "type": "object", - "description": "An object representation of the individual components of the player's name. For some players, these fields may not be present.", - "properties": { - "familyName": { - "type": "string", - "description": "The family name of this player. In some places, this is known as the last name." - }, - "givenName": { - "type": "string", - "description": "The given name of this player. In some places, this is known as the first name." + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/drive.appdata": { + "description": "View and manage its own configuration data in your Google Drive" + }, + "https://www.googleapis.com/auth/games": { + "description": "Share your Google+ profile information and view and manage your game activity" + }, + "https://www.googleapis.com/auth/plus.login": { + "description": "Know the list of people in your circles, your age range, and language" + } } - } - }, - "originalPlayerId": { - "type": "string", - "description": "The player ID that was used for this player the first time they signed into the game in question. This is only populated for calls to player.get for the requesting player, only if the player ID has subsequently changed, and only to clients that support remapping player IDs." - }, - "playerId": { - "type": "string", - "description": "The ID of the player." - }, - "profileSettings": { - "$ref": "ProfileSettings", - "description": "The player's profile settings. Controls whether or not the player's profile is visible to other players." - }, - "title": { - "type": "string", - "description": "The player's title rewarded for their game activities." } - } }, - "PlayerAchievement": { - "id": "PlayerAchievement", - "type": "object", - "description": "This is a JSON template for an achievement object.", - "properties": { - "achievementState": { - "type": "string", - "description": "The state of the achievement.\nPossible values are: \n- \"HIDDEN\" - Achievement is hidden. \n- \"REVEALED\" - Achievement is revealed. \n- \"UNLOCKED\" - Achievement is unlocked." - }, - "currentSteps": { - "type": "integer", - "description": "The current steps for an incremental achievement.", - "format": "int32" - }, - "experiencePoints": { - "type": "string", - "description": "Experience points earned for the achievement. This field is absent for achievements that have not yet been unlocked and 0 for achievements that have been unlocked by testers but that are unpublished.", - "format": "int64" - }, - "formattedCurrentStepsString": { - "type": "string", - "description": "The current steps for an incremental achievement as a string." - }, - "id": { - "type": "string", - "description": "The ID of the achievement." - }, - "kind": { - "type": "string", - "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#playerAchievement.", - "default": "games#playerAchievement" - }, - "lastUpdatedTimestamp": { - "type": "string", - "description": "The timestamp of the last modification to this achievement's state.", - "format": "int64" - } - } + "basePath": "/games/v1/", + "baseUrl": "https://www.googleapis.com/games/v1/", + "batchPath": "batch/games/v1", + "canonicalName": "Games", + "description": "The API for Google Play Game Services.", + "discoveryVersion": "v1", + "documentationLink": "https://developers.google.com/games/services/", + "etag": "\"-iA1DTNe4s-I6JZXPt1t1Ypy8IU/7thH1n4lmDTGcYNQj8H_tt5h7xE\"", + "icons": { + "x16": "https://www.gstatic.com/images/branding/product/1x/googleg_16dp.png", + "x32": "https://www.gstatic.com/images/branding/product/1x/googleg_32dp.png" }, - "PlayerAchievementListResponse": { - "id": "PlayerAchievementListResponse", - "type": "object", - "description": "This is a JSON template for a list of achievement objects.", - "properties": { - "items": { - "type": "array", - "description": "The achievements.", - "items": { - "$ref": "PlayerAchievement" - } - }, - "kind": { - "type": "string", - "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#playerAchievementListResponse.", - "default": "games#playerAchievementListResponse" - }, - "nextPageToken": { - "type": "string", - "description": "Token corresponding to the next page of results." - } - } - }, - "PlayerEvent": { - "id": "PlayerEvent", - "type": "object", - "description": "This is a JSON template for an event status resource.", - "properties": { - "definitionId": { - "type": "string", - "description": "The ID of the event definition." - }, - "formattedNumEvents": { - "type": "string", - "description": "The current number of times this event has occurred, as a string. The formatting of this string depends on the configuration of your event in the Play Games Developer Console." - }, - "kind": { - "type": "string", - "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#playerEvent.", - "default": "games#playerEvent" - }, - "numEvents": { - "type": "string", - "description": "The current number of times this event has occurred.", - "format": "int64" - }, - "playerId": { - "type": "string", - "description": "The ID of the player." - } - } - }, - "PlayerEventListResponse": { - "id": "PlayerEventListResponse", - "type": "object", - "description": "This is a JSON template for a ListByPlayer response.", - "properties": { - "items": { - "type": "array", - "description": "The player events.", - "items": { - "$ref": "PlayerEvent" - } - }, - "kind": { - "type": "string", - "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#playerEventListResponse.", - "default": "games#playerEventListResponse" - }, - "nextPageToken": { - "type": "string", - "description": "The pagination token for the next page of results." - } - } - }, - "PlayerExperienceInfo": { - "id": "PlayerExperienceInfo", - "type": "object", - "description": "This is a JSON template for 1P/3P metadata about the player's experience.", - "properties": { - "currentExperiencePoints": { - "type": "string", - "description": "The current number of experience points for the player.", - "format": "int64" - }, - "currentLevel": { - "$ref": "PlayerLevel", - "description": "The current level of the player." - }, - "kind": { - "type": "string", - "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#playerExperienceInfo.", - "default": "games#playerExperienceInfo" - }, - "lastLevelUpTimestampMillis": { - "type": "string", - "description": "The timestamp when the player was leveled up, in millis since Unix epoch UTC.", - "format": "int64" - }, - "nextLevel": { - "$ref": "PlayerLevel", - "description": "The next level of the player. If the current level is the maximum level, this should be same as the current level." - } - } - }, - "PlayerLeaderboardScore": { - "id": "PlayerLeaderboardScore", - "type": "object", - "description": "This is a JSON template for a player leaderboard score object.", - "properties": { - "kind": { - "type": "string", - "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#playerLeaderboardScore.", - "default": "games#playerLeaderboardScore" - }, - "leaderboard_id": { - "type": "string", - "description": "The ID of the leaderboard this score is in." - }, - "publicRank": { - "$ref": "LeaderboardScoreRank", - "description": "The public rank of the score in this leaderboard. This object will not be present if the user is not sharing their scores publicly." - }, - "scoreString": { - "type": "string", - "description": "The formatted value of this score." - }, - "scoreTag": { - "type": "string", - "description": "Additional information about the score. Values must contain no more than 64 URI-safe characters as defined by section 2.3 of RFC 3986." - }, - "scoreValue": { - "type": "string", - "description": "The numerical value of this score.", - "format": "int64" - }, - "socialRank": { - "$ref": "LeaderboardScoreRank", - "description": "The social rank of the score in this leaderboard." - }, - "timeSpan": { - "type": "string", - "description": "The time span of this score.\nPossible values are: \n- \"ALL_TIME\" - The score is an all-time score. \n- \"WEEKLY\" - The score is a weekly score. \n- \"DAILY\" - The score is a daily score." - }, - "writeTimestamp": { - "type": "string", - "description": "The timestamp at which this score was recorded, in milliseconds since the epoch in UTC.", - "format": "int64" - } - } - }, - "PlayerLeaderboardScoreListResponse": { - "id": "PlayerLeaderboardScoreListResponse", - "type": "object", - "description": "This is a JSON template for a list of player leaderboard scores.", - "properties": { - "items": { - "type": "array", - "description": "The leaderboard scores.", - "items": { - "$ref": "PlayerLeaderboardScore" - } - }, - "kind": { - "type": "string", - "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#playerLeaderboardScoreListResponse.", - "default": "games#playerLeaderboardScoreListResponse" - }, - "nextPageToken": { - "type": "string", - "description": "The pagination token for the next page of results." - }, - "player": { - "$ref": "Player", - "description": "The Player resources for the owner of this score." - } - } - }, - "PlayerLevel": { - "id": "PlayerLevel", - "type": "object", - "description": "This is a JSON template for 1P/3P metadata about a user's level.", - "properties": { - "kind": { - "type": "string", - "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#playerLevel.", - "default": "games#playerLevel" - }, - "level": { - "type": "integer", - "description": "The level for the user.", - "format": "int32" - }, - "maxExperiencePoints": { - "type": "string", - "description": "The maximum experience points for this level.", - "format": "int64" - }, - "minExperiencePoints": { - "type": "string", - "description": "The minimum experience points for this level.", - "format": "int64" - } - } - }, - "PlayerListResponse": { - "id": "PlayerListResponse", - "type": "object", - "description": "This is a JSON template for a third party player list response.", - "properties": { - "items": { - "type": "array", - "description": "The players.", - "items": { - "$ref": "Player" - } - }, - "kind": { - "type": "string", - "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#playerListResponse.", - "default": "games#playerListResponse" - }, - "nextPageToken": { - "type": "string", - "description": "Token corresponding to the next page of results." - } - } - }, - "PlayerScore": { - "id": "PlayerScore", - "type": "object", - "description": "This is a JSON template for a player score.", - "properties": { - "formattedScore": { - "type": "string", - "description": "The formatted score for this player score." - }, - "kind": { - "type": "string", - "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#playerScore.", - "default": "games#playerScore" - }, - "score": { - "type": "string", - "description": "The numerical value for this player score.", - "format": "int64" - }, - "scoreTag": { - "type": "string", - "description": "Additional information about this score. Values will contain no more than 64 URI-safe characters as defined by section 2.3 of RFC 3986." - }, - "timeSpan": { - "type": "string", - "description": "The time span for this player score.\nPossible values are: \n- \"ALL_TIME\" - The score is an all-time score. \n- \"WEEKLY\" - The score is a weekly score. \n- \"DAILY\" - The score is a daily score." - } - } - }, - "PlayerScoreListResponse": { - "id": "PlayerScoreListResponse", - "type": "object", - "description": "This is a JSON template for a list of score submission statuses.", - "properties": { - "kind": { - "type": "string", - "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#playerScoreListResponse.", - "default": "games#playerScoreListResponse" - }, - "submittedScores": { - "type": "array", - "description": "The score submissions statuses.", - "items": { - "$ref": "PlayerScoreResponse" - } - } - } - }, - "PlayerScoreResponse": { - "id": "PlayerScoreResponse", - "type": "object", - "description": "This is a JSON template for a list of leaderboard entry resources.", - "properties": { - "beatenScoreTimeSpans": { - "type": "array", - "description": "The time spans where the submitted score is better than the existing score for that time span.\nPossible values are: \n- \"ALL_TIME\" - The score is an all-time score. \n- \"WEEKLY\" - The score is a weekly score. \n- \"DAILY\" - The score is a daily score.", - "items": { + "id": "games:v1", + "kind": "discovery#restDescription", + "name": "games", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "alt": { + "default": "json", + "description": "Data format for the response.", + "enum": [ + "json" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json" + ], + "location": "query", "type": "string" - } }, - "formattedScore": { - "type": "string", - "description": "The formatted value of the submitted score." + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "location": "query", + "type": "string" }, - "kind": { - "type": "string", - "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#playerScoreResponse.", - "default": "games#playerScoreResponse" + "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" }, - "leaderboardId": { - "type": "string", - "description": "The leaderboard ID that this score was submitted to." + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" }, - "scoreTag": { - "type": "string", - "description": "Additional information about this score. Values will contain no more than 64 URI-safe characters as defined by section 2.3 of RFC 3986." + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" }, - "unbeatenScores": { - "type": "array", - "description": "The scores in time spans that have not been beaten. As an example, the submitted score may be better than the player's DAILY score, but not better than the player's scores for the WEEKLY or ALL_TIME time spans.", - "items": { - "$ref": "PlayerScore" - } + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", + "location": "query", + "type": "string" + }, + "userIp": { + "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", + "location": "query", + "type": "string" } - } }, - "PlayerScoreSubmissionList": { - "id": "PlayerScoreSubmissionList", - "type": "object", - "description": "This is a JSON template for a list of score submission requests", - "properties": { - "kind": { - "type": "string", - "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#playerScoreSubmissionList.", - "default": "games#playerScoreSubmissionList" + "protocol": "rest", + "resources": { + "achievementDefinitions": { + "methods": { + "list": { + "description": "Lists all the achievement definitions for your application.", + "httpMethod": "GET", + "id": "games.achievementDefinitions.list", + "parameters": { + "language": { + "description": "The preferred language to use for strings returned by this method.", + "location": "query", + "type": "string" + }, + "maxResults": { + "description": "The maximum number of achievement resources to return in the response, used for paging. For any response, the actual number of achievement resources returned may be less than the specified maxResults.", + "format": "int32", + "location": "query", + "maximum": "200", + "minimum": "1", + "type": "integer" + }, + "pageToken": { + "description": "The token returned by the previous request.", + "location": "query", + "type": "string" + } + }, + "path": "achievements", + "response": { + "$ref": "AchievementDefinitionsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/games", + "https://www.googleapis.com/auth/plus.login" + ] + } + } + }, + "achievements": { + "methods": { + "increment": { + "description": "Increments the steps of the achievement with the given ID for the currently authenticated player.", + "httpMethod": "POST", + "id": "games.achievements.increment", + "parameterOrder": [ + "achievementId", + "stepsToIncrement" + ], + "parameters": { + "achievementId": { + "description": "The ID of the achievement used by this method.", + "location": "path", + "required": true, + "type": "string" + }, + "requestId": { + "description": "A randomly generated numeric ID for each request specified by the caller. This number is used at the server to ensure that the request is handled correctly across retries.", + "format": "int64", + "location": "query", + "type": "string" + }, + "stepsToIncrement": { + "description": "The number of steps to increment.", + "format": "int32", + "location": "query", + "minimum": "1", + "required": true, + "type": "integer" + } + }, + "path": "achievements/{achievementId}/increment", + "response": { + "$ref": "AchievementIncrementResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/games", + "https://www.googleapis.com/auth/plus.login" + ] + }, + "list": { + "description": "Lists the progress for all your application's achievements for the currently authenticated player.", + "httpMethod": "GET", + "id": "games.achievements.list", + "parameterOrder": [ + "playerId" + ], + "parameters": { + "language": { + "description": "The preferred language to use for strings returned by this method.", + "location": "query", + "type": "string" + }, + "maxResults": { + "description": "The maximum number of achievement resources to return in the response, used for paging. For any response, the actual number of achievement resources returned may be less than the specified maxResults.", + "format": "int32", + "location": "query", + "maximum": "200", + "minimum": "1", + "type": "integer" + }, + "pageToken": { + "description": "The token returned by the previous request.", + "location": "query", + "type": "string" + }, + "playerId": { + "description": "A player ID. A value of me may be used in place of the authenticated player's ID.", + "location": "path", + "required": true, + "type": "string" + }, + "state": { + "description": "Tells the server to return only achievements with the specified state. If this parameter isn't specified, all achievements are returned.", + "enum": [ + "ALL", + "HIDDEN", + "REVEALED", + "UNLOCKED" + ], + "enumDescriptions": [ + "List all achievements. This is the default.", + "List only hidden achievements.", + "List only revealed achievements.", + "List only unlocked achievements." + ], + "location": "query", + "type": "string" + } + }, + "path": "players/{playerId}/achievements", + "response": { + "$ref": "PlayerAchievementListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/games", + "https://www.googleapis.com/auth/plus.login" + ] + }, + "reveal": { + "description": "Sets the state of the achievement with the given ID to REVEALED for the currently authenticated player.", + "httpMethod": "POST", + "id": "games.achievements.reveal", + "parameterOrder": [ + "achievementId" + ], + "parameters": { + "achievementId": { + "description": "The ID of the achievement used by this method.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "achievements/{achievementId}/reveal", + "response": { + "$ref": "AchievementRevealResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/games", + "https://www.googleapis.com/auth/plus.login" + ] + }, + "setStepsAtLeast": { + "description": "Sets the steps for the currently authenticated player towards unlocking an achievement. If the steps parameter is less than the current number of steps that the player already gained for the achievement, the achievement is not modified.", + "httpMethod": "POST", + "id": "games.achievements.setStepsAtLeast", + "parameterOrder": [ + "achievementId", + "steps" + ], + "parameters": { + "achievementId": { + "description": "The ID of the achievement used by this method.", + "location": "path", + "required": true, + "type": "string" + }, + "steps": { + "description": "The minimum value to set the steps to.", + "format": "int32", + "location": "query", + "minimum": "1", + "required": true, + "type": "integer" + } + }, + "path": "achievements/{achievementId}/setStepsAtLeast", + "response": { + "$ref": "AchievementSetStepsAtLeastResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/games", + "https://www.googleapis.com/auth/plus.login" + ] + }, + "unlock": { + "description": "Unlocks this achievement for the currently authenticated player.", + "httpMethod": "POST", + "id": "games.achievements.unlock", + "parameterOrder": [ + "achievementId" + ], + "parameters": { + "achievementId": { + "description": "The ID of the achievement used by this method.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "achievements/{achievementId}/unlock", + "response": { + "$ref": "AchievementUnlockResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/games", + "https://www.googleapis.com/auth/plus.login" + ] + }, + "updateMultiple": { + "description": "Updates multiple achievements for the currently authenticated player.", + "httpMethod": "POST", + "id": "games.achievements.updateMultiple", + "path": "achievements/updateMultiple", + "request": { + "$ref": "AchievementUpdateMultipleRequest" + }, + "response": { + "$ref": "AchievementUpdateMultipleResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/games", + "https://www.googleapis.com/auth/plus.login" + ] + } + } + }, + "applications": { + "methods": { + "get": { + "description": "Retrieves the metadata of the application with the given ID. If the requested application is not available for the specified platformType, the returned response will not include any instance data.", + "httpMethod": "GET", + "id": "games.applications.get", + "parameterOrder": [ + "applicationId" + ], + "parameters": { + "applicationId": { + "description": "The application ID from the Google Play developer console.", + "location": "path", + "required": true, + "type": "string" + }, + "language": { + "description": "The preferred language to use for strings returned by this method.", + "location": "query", + "type": "string" + }, + "platformType": { + "description": "Restrict application details returned to the specific platform.", + "enum": [ + "ANDROID", + "IOS", + "WEB_APP" + ], + "enumDescriptions": [ + "Retrieve applications that can be played on Android.", + "Retrieve applications that can be played on iOS.", + "Retrieve applications that can be played on desktop web." + ], + "location": "query", + "type": "string" + } + }, + "path": "applications/{applicationId}", + "response": { + "$ref": "Application" + }, + "scopes": [ + "https://www.googleapis.com/auth/games", + "https://www.googleapis.com/auth/plus.login" + ] + }, + "played": { + "description": "Indicate that the the currently authenticated user is playing your application.", + "httpMethod": "POST", + "id": "games.applications.played", + "path": "applications/played", + "scopes": [ + "https://www.googleapis.com/auth/games", + "https://www.googleapis.com/auth/plus.login" + ] + }, + "verify": { + "description": "Verifies the auth token provided with this request is for the application with the specified ID, and returns the ID of the player it was granted for.", + "httpMethod": "GET", + "id": "games.applications.verify", + "parameterOrder": [ + "applicationId" + ], + "parameters": { + "applicationId": { + "description": "The application ID from the Google Play developer console.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "applications/{applicationId}/verify", + "response": { + "$ref": "ApplicationVerifyResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/games", + "https://www.googleapis.com/auth/plus.login" + ] + } + } + }, + "events": { + "methods": { + "listByPlayer": { + "description": "Returns a list showing the current progress on events in this application for the currently authenticated user.", + "httpMethod": "GET", + "id": "games.events.listByPlayer", + "parameters": { + "language": { + "description": "The preferred language to use for strings returned by this method.", + "location": "query", + "type": "string" + }, + "maxResults": { + "description": "The maximum number of events to return in the response, used for paging. For any response, the actual number of events to return may be less than the specified maxResults.", + "format": "int32", + "location": "query", + "maximum": "100", + "minimum": "1", + "type": "integer" + }, + "pageToken": { + "description": "The token returned by the previous request.", + "location": "query", + "type": "string" + } + }, + "path": "events", + "response": { + "$ref": "PlayerEventListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/games", + "https://www.googleapis.com/auth/plus.login" + ] + }, + "listDefinitions": { + "description": "Returns a list of the event definitions in this application.", + "httpMethod": "GET", + "id": "games.events.listDefinitions", + "parameters": { + "language": { + "description": "The preferred language to use for strings returned by this method.", + "location": "query", + "type": "string" + }, + "maxResults": { + "description": "The maximum number of event definitions to return in the response, used for paging. For any response, the actual number of event definitions to return may be less than the specified maxResults.", + "format": "int32", + "location": "query", + "maximum": "100", + "minimum": "1", + "type": "integer" + }, + "pageToken": { + "description": "The token returned by the previous request.", + "location": "query", + "type": "string" + } + }, + "path": "eventDefinitions", + "response": { + "$ref": "EventDefinitionListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/games", + "https://www.googleapis.com/auth/plus.login" + ] + }, + "record": { + "description": "Records a batch of changes to the number of times events have occurred for the currently authenticated user of this application.", + "httpMethod": "POST", + "id": "games.events.record", + "parameters": { + "language": { + "description": "The preferred language to use for strings returned by this method.", + "location": "query", + "type": "string" + } + }, + "path": "events", + "request": { + "$ref": "EventRecordRequest" + }, + "response": { + "$ref": "EventUpdateResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/games", + "https://www.googleapis.com/auth/plus.login" + ] + } + } + }, + "leaderboards": { + "methods": { + "get": { + "description": "Retrieves the metadata of the leaderboard with the given ID.", + "httpMethod": "GET", + "id": "games.leaderboards.get", + "parameterOrder": [ + "leaderboardId" + ], + "parameters": { + "language": { + "description": "The preferred language to use for strings returned by this method.", + "location": "query", + "type": "string" + }, + "leaderboardId": { + "description": "The ID of the leaderboard.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "leaderboards/{leaderboardId}", + "response": { + "$ref": "Leaderboard" + }, + "scopes": [ + "https://www.googleapis.com/auth/games", + "https://www.googleapis.com/auth/plus.login" + ] + }, + "list": { + "description": "Lists all the leaderboard metadata for your application.", + "httpMethod": "GET", + "id": "games.leaderboards.list", + "parameters": { + "language": { + "description": "The preferred language to use for strings returned by this method.", + "location": "query", + "type": "string" + }, + "maxResults": { + "description": "The maximum number of leaderboards to return in the response. For any response, the actual number of leaderboards returned may be less than the specified maxResults.", + "format": "int32", + "location": "query", + "maximum": "200", + "minimum": "1", + "type": "integer" + }, + "pageToken": { + "description": "The token returned by the previous request.", + "location": "query", + "type": "string" + } + }, + "path": "leaderboards", + "response": { + "$ref": "LeaderboardListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/games", + "https://www.googleapis.com/auth/plus.login" + ] + } + } + }, + "metagame": { + "methods": { + "getMetagameConfig": { + "description": "Return the metagame configuration data for the calling application.", + "httpMethod": "GET", + "id": "games.metagame.getMetagameConfig", + "path": "metagameConfig", + "response": { + "$ref": "MetagameConfig" + }, + "scopes": [ + "https://www.googleapis.com/auth/games", + "https://www.googleapis.com/auth/plus.login" + ] + }, + "listCategoriesByPlayer": { + "description": "List play data aggregated per category for the player corresponding to playerId.", + "httpMethod": "GET", + "id": "games.metagame.listCategoriesByPlayer", + "parameterOrder": [ + "playerId", + "collection" + ], + "parameters": { + "collection": { + "description": "The collection of categories for which data will be returned.", + "enum": [ + "all" + ], + "enumDescriptions": [ + "Retrieve data for all categories. This is the default." + ], + "location": "path", + "required": true, + "type": "string" + }, + "language": { + "description": "The preferred language to use for strings returned by this method.", + "location": "query", + "type": "string" + }, + "maxResults": { + "description": "The maximum number of category resources to return in the response, used for paging. For any response, the actual number of category resources returned may be less than the specified maxResults.", + "format": "int32", + "location": "query", + "maximum": "100", + "minimum": "1", + "type": "integer" + }, + "pageToken": { + "description": "The token returned by the previous request.", + "location": "query", + "type": "string" + }, + "playerId": { + "description": "A player ID. A value of me may be used in place of the authenticated player's ID.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "players/{playerId}/categories/{collection}", + "response": { + "$ref": "CategoryListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/games", + "https://www.googleapis.com/auth/plus.login" + ] + } + } + }, + "players": { + "methods": { + "get": { + "description": "Retrieves the Player resource with the given ID. To retrieve the player for the currently authenticated user, set playerId to me.", + "httpMethod": "GET", + "id": "games.players.get", + "parameterOrder": [ + "playerId" + ], + "parameters": { + "language": { + "description": "The preferred language to use for strings returned by this method.", + "location": "query", + "type": "string" + }, + "playerId": { + "description": "A player ID. A value of me may be used in place of the authenticated player's ID.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "players/{playerId}", + "response": { + "$ref": "Player" + }, + "scopes": [ + "https://www.googleapis.com/auth/games", + "https://www.googleapis.com/auth/plus.login" + ] + }, + "list": { + "description": "Get the collection of players for the currently authenticated user.", + "httpMethod": "GET", + "id": "games.players.list", + "parameterOrder": [ + "collection" + ], + "parameters": { + "collection": { + "description": "Collection of players being retrieved", + "enum": [ + "connected", + "playedWith", + "played_with", + "visible" + ], + "enumDescriptions": [ + "Retrieve a list of players that are also playing this game in reverse chronological order.", + "(DEPRECATED: please use played_with!) Retrieve a list of players you have played a multiplayer game (realtime or turn-based) with recently.", + "Retrieve a list of players you have played a multiplayer game (realtime or turn-based) with recently.", + "Retrieve a list of players in the user's social graph that are visible to this game." + ], + "location": "path", + "required": true, + "type": "string" + }, + "language": { + "description": "The preferred language to use for strings returned by this method.", + "location": "query", + "type": "string" + }, + "maxResults": { + "description": "The maximum number of player resources to return in the response, used for paging. For any response, the actual number of player resources returned may be less than the specified maxResults.", + "format": "int32", + "location": "query", + "maximum": "50", + "minimum": "1", + "type": "integer" + }, + "pageToken": { + "description": "The token returned by the previous request.", + "location": "query", + "type": "string" + } + }, + "path": "players/me/players/{collection}", + "response": { + "$ref": "PlayerListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/games", + "https://www.googleapis.com/auth/plus.login" + ] + } + } + }, + "pushtokens": { + "methods": { + "remove": { + "description": "Removes a push token for the current user and application. Removing a non-existent push token will report success.", + "httpMethod": "POST", + "id": "games.pushtokens.remove", + "path": "pushtokens/remove", + "request": { + "$ref": "PushTokenId" + }, + "scopes": [ + "https://www.googleapis.com/auth/games", + "https://www.googleapis.com/auth/plus.login" + ] + }, + "update": { + "description": "Registers a push token for the current user and application.", + "httpMethod": "PUT", + "id": "games.pushtokens.update", + "path": "pushtokens", + "request": { + "$ref": "PushToken" + }, + "scopes": [ + "https://www.googleapis.com/auth/games", + "https://www.googleapis.com/auth/plus.login" + ] + } + } + }, + "questMilestones": { + "methods": { + "claim": { + "description": "Report that a reward for the milestone corresponding to milestoneId for the quest corresponding to questId has been claimed by the currently authorized user.", + "httpMethod": "PUT", + "id": "games.questMilestones.claim", + "parameterOrder": [ + "questId", + "milestoneId", + "requestId" + ], + "parameters": { + "milestoneId": { + "description": "The ID of the milestone.", + "location": "path", + "required": true, + "type": "string" + }, + "questId": { + "description": "The ID of the quest.", + "location": "path", + "required": true, + "type": "string" + }, + "requestId": { + "description": "A numeric ID to ensure that the request is handled correctly across retries. Your client application must generate this ID randomly.", + "format": "int64", + "location": "query", + "required": true, + "type": "string" + } + }, + "path": "quests/{questId}/milestones/{milestoneId}/claim", + "scopes": [ + "https://www.googleapis.com/auth/games", + "https://www.googleapis.com/auth/plus.login" + ] + } + } + }, + "quests": { + "methods": { + "accept": { + "description": "Indicates that the currently authorized user will participate in the quest.", + "httpMethod": "POST", + "id": "games.quests.accept", + "parameterOrder": [ + "questId" + ], + "parameters": { + "language": { + "description": "The preferred language to use for strings returned by this method.", + "location": "query", + "type": "string" + }, + "questId": { + "description": "The ID of the quest.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "quests/{questId}/accept", + "response": { + "$ref": "Quest" + }, + "scopes": [ + "https://www.googleapis.com/auth/games", + "https://www.googleapis.com/auth/plus.login" + ] + }, + "list": { + "description": "Get a list of quests for your application and the currently authenticated player.", + "httpMethod": "GET", + "id": "games.quests.list", + "parameterOrder": [ + "playerId" + ], + "parameters": { + "language": { + "description": "The preferred language to use for strings returned by this method.", + "location": "query", + "type": "string" + }, + "maxResults": { + "description": "The maximum number of quest resources to return in the response, used for paging. For any response, the actual number of quest resources returned may be less than the specified maxResults. Acceptable values are 1 to 50, inclusive. (Default: 50).", + "format": "int32", + "location": "query", + "maximum": "50", + "minimum": "1", + "type": "integer" + }, + "pageToken": { + "description": "The token returned by the previous request.", + "location": "query", + "type": "string" + }, + "playerId": { + "description": "A player ID. A value of me may be used in place of the authenticated player's ID.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "players/{playerId}/quests", + "response": { + "$ref": "QuestListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/games", + "https://www.googleapis.com/auth/plus.login" + ] + } + } + }, + "revisions": { + "methods": { + "check": { + "description": "Checks whether the games client is out of date.", + "httpMethod": "GET", + "id": "games.revisions.check", + "parameterOrder": [ + "clientRevision" + ], + "parameters": { + "clientRevision": { + "description": "The revision of the client SDK used by your application. Format:\n[PLATFORM_TYPE]:[VERSION_NUMBER]. Possible values of PLATFORM_TYPE are:\n \n- \"ANDROID\" - Client is running the Android SDK. \n- \"IOS\" - Client is running the iOS SDK. \n- \"WEB_APP\" - Client is running as a Web App.", + "location": "query", + "required": true, + "type": "string" + } + }, + "path": "revisions/check", + "response": { + "$ref": "RevisionCheckResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/games", + "https://www.googleapis.com/auth/plus.login" + ] + } + } + }, + "rooms": { + "methods": { + "create": { + "description": "Create a room. For internal use by the Games SDK only. Calling this method directly is unsupported.", + "httpMethod": "POST", + "id": "games.rooms.create", + "parameters": { + "language": { + "description": "The preferred language to use for strings returned by this method.", + "location": "query", + "type": "string" + } + }, + "path": "rooms/create", + "request": { + "$ref": "RoomCreateRequest" + }, + "response": { + "$ref": "Room" + }, + "scopes": [ + "https://www.googleapis.com/auth/games", + "https://www.googleapis.com/auth/plus.login" + ] + }, + "decline": { + "description": "Decline an invitation to join a room. For internal use by the Games SDK only. Calling this method directly is unsupported.", + "httpMethod": "POST", + "id": "games.rooms.decline", + "parameterOrder": [ + "roomId" + ], + "parameters": { + "language": { + "description": "The preferred language to use for strings returned by this method.", + "location": "query", + "type": "string" + }, + "roomId": { + "description": "The ID of the room.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "rooms/{roomId}/decline", + "response": { + "$ref": "Room" + }, + "scopes": [ + "https://www.googleapis.com/auth/games", + "https://www.googleapis.com/auth/plus.login" + ] + }, + "dismiss": { + "description": "Dismiss an invitation to join a room. For internal use by the Games SDK only. Calling this method directly is unsupported.", + "httpMethod": "POST", + "id": "games.rooms.dismiss", + "parameterOrder": [ + "roomId" + ], + "parameters": { + "roomId": { + "description": "The ID of the room.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "rooms/{roomId}/dismiss", + "scopes": [ + "https://www.googleapis.com/auth/games", + "https://www.googleapis.com/auth/plus.login" + ] + }, + "get": { + "description": "Get the data for a room.", + "httpMethod": "GET", + "id": "games.rooms.get", + "parameterOrder": [ + "roomId" + ], + "parameters": { + "language": { + "description": "The preferred language to use for strings returned by this method.", + "location": "query", + "type": "string" + }, + "roomId": { + "description": "The ID of the room.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "rooms/{roomId}", + "response": { + "$ref": "Room" + }, + "scopes": [ + "https://www.googleapis.com/auth/games", + "https://www.googleapis.com/auth/plus.login" + ] + }, + "join": { + "description": "Join a room. For internal use by the Games SDK only. Calling this method directly is unsupported.", + "httpMethod": "POST", + "id": "games.rooms.join", + "parameterOrder": [ + "roomId" + ], + "parameters": { + "language": { + "description": "The preferred language to use for strings returned by this method.", + "location": "query", + "type": "string" + }, + "roomId": { + "description": "The ID of the room.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "rooms/{roomId}/join", + "request": { + "$ref": "RoomJoinRequest" + }, + "response": { + "$ref": "Room" + }, + "scopes": [ + "https://www.googleapis.com/auth/games", + "https://www.googleapis.com/auth/plus.login" + ] + }, + "leave": { + "description": "Leave a room. For internal use by the Games SDK only. Calling this method directly is unsupported.", + "httpMethod": "POST", + "id": "games.rooms.leave", + "parameterOrder": [ + "roomId" + ], + "parameters": { + "language": { + "description": "The preferred language to use for strings returned by this method.", + "location": "query", + "type": "string" + }, + "roomId": { + "description": "The ID of the room.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "rooms/{roomId}/leave", + "request": { + "$ref": "RoomLeaveRequest" + }, + "response": { + "$ref": "Room" + }, + "scopes": [ + "https://www.googleapis.com/auth/games", + "https://www.googleapis.com/auth/plus.login" + ] + }, + "list": { + "description": "Returns invitations to join rooms.", + "httpMethod": "GET", + "id": "games.rooms.list", + "parameters": { + "language": { + "description": "The preferred language to use for strings returned by this method.", + "location": "query", + "type": "string" + }, + "maxResults": { + "description": "The maximum number of rooms to return in the response, used for paging. For any response, the actual number of rooms to return may be less than the specified maxResults.", + "format": "int32", + "location": "query", + "maximum": "500", + "minimum": "1", + "type": "integer" + }, + "pageToken": { + "description": "The token returned by the previous request.", + "location": "query", + "type": "string" + } + }, + "path": "rooms", + "response": { + "$ref": "RoomList" + }, + "scopes": [ + "https://www.googleapis.com/auth/games", + "https://www.googleapis.com/auth/plus.login" + ] + }, + "reportStatus": { + "description": "Updates sent by a client reporting the status of peers in a room. For internal use by the Games SDK only. Calling this method directly is unsupported.", + "httpMethod": "POST", + "id": "games.rooms.reportStatus", + "parameterOrder": [ + "roomId" + ], + "parameters": { + "language": { + "description": "The preferred language to use for strings returned by this method.", + "location": "query", + "type": "string" + }, + "roomId": { + "description": "The ID of the room.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "rooms/{roomId}/reportstatus", + "request": { + "$ref": "RoomP2PStatuses" + }, + "response": { + "$ref": "RoomStatus" + }, + "scopes": [ + "https://www.googleapis.com/auth/games", + "https://www.googleapis.com/auth/plus.login" + ] + } + } }, "scores": { - "type": "array", - "description": "The score submissions.", - "items": { - "$ref": "ScoreSubmission" - } - } - } - }, - "ProfileSettings": { - "id": "ProfileSettings", - "type": "object", - "description": "This is a JSON template for profile settings", - "properties": { - "kind": { - "type": "string", - "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#profileSettings.", - "default": "games#profileSettings" - }, - "profileVisible": { - "type": "boolean", - "description": "The player's current profile visibility. This field is visible to both 1P and 3P APIs." - } - } - }, - "PushToken": { - "id": "PushToken", - "type": "object", - "description": "This is a JSON template for a push token resource.", - "properties": { - "clientRevision": { - "type": "string", - "description": "The revision of the client SDK used by your application, in the same format that's used by revisions.check. Used to send backward compatible messages. Format: [PLATFORM_TYPE]:[VERSION_NUMBER]. Possible values of PLATFORM_TYPE are: \n- IOS - Push token is for iOS" - }, - "id": { - "$ref": "PushTokenId", - "description": "Unique identifier for this push token." - }, - "kind": { - "type": "string", - "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#pushToken.", - "default": "games#pushToken" - }, - "language": { - "type": "string", - "description": "The preferred language for notifications that are sent using this token." - } - } - }, - "PushTokenId": { - "id": "PushTokenId", - "type": "object", - "description": "This is a JSON template for a push token ID resource.", - "properties": { - "ios": { - "type": "object", - "description": "A push token ID for iOS devices.", - "properties": { - "apns_device_token": { - "type": "string", - "description": "Device token supplied by an iOS system call to register for remote notifications. Encode this field as web-safe base64.", - "format": "byte" - }, - "apns_environment": { - "type": "string", - "description": "Indicates whether this token should be used for the production or sandbox APNS server." + "methods": { + "get": { + "description": "Get high scores, and optionally ranks, in leaderboards for the currently authenticated player. For a specific time span, leaderboardId can be set to ALL to retrieve data for all leaderboards in a given time span.\nNOTE: You cannot ask for 'ALL' leaderboards and 'ALL' timeSpans in the same request; only one parameter may be set to 'ALL'.", + "httpMethod": "GET", + "id": "games.scores.get", + "parameterOrder": [ + "playerId", + "leaderboardId", + "timeSpan" + ], + "parameters": { + "includeRankType": { + "description": "The types of ranks to return. If the parameter is omitted, no ranks will be returned.", + "enum": [ + "ALL", + "PUBLIC", + "SOCIAL" + ], + "enumDescriptions": [ + "Retrieve public and social ranks.", + "Retrieve public ranks, if the player is sharing their gameplay activity publicly.", + "Retrieve the social rank." + ], + "location": "query", + "type": "string" + }, + "language": { + "description": "The preferred language to use for strings returned by this method.", + "location": "query", + "type": "string" + }, + "leaderboardId": { + "description": "The ID of the leaderboard. Can be set to 'ALL' to retrieve data for all leaderboards for this application.", + "location": "path", + "required": true, + "type": "string" + }, + "maxResults": { + "description": "The maximum number of leaderboard scores to return in the response. For any response, the actual number of leaderboard scores returned may be less than the specified maxResults.", + "format": "int32", + "location": "query", + "maximum": "30", + "minimum": "1", + "type": "integer" + }, + "pageToken": { + "description": "The token returned by the previous request.", + "location": "query", + "type": "string" + }, + "playerId": { + "description": "A player ID. A value of me may be used in place of the authenticated player's ID.", + "location": "path", + "required": true, + "type": "string" + }, + "timeSpan": { + "description": "The time span for the scores and ranks you're requesting.", + "enum": [ + "ALL", + "ALL_TIME", + "DAILY", + "WEEKLY" + ], + "enumDescriptions": [ + "Get the high scores for all time spans. If this is used, maxResults values will be ignored.", + "Get the all time high score.", + "List the top scores for the current day.", + "List the top scores for the current week." + ], + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "players/{playerId}/leaderboards/{leaderboardId}/scores/{timeSpan}", + "response": { + "$ref": "PlayerLeaderboardScoreListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/games", + "https://www.googleapis.com/auth/plus.login" + ] + }, + "list": { + "description": "Lists the scores in a leaderboard, starting from the top.", + "httpMethod": "GET", + "id": "games.scores.list", + "parameterOrder": [ + "leaderboardId", + "collection", + "timeSpan" + ], + "parameters": { + "collection": { + "description": "The collection of scores you're requesting.", + "enum": [ + "PUBLIC", + "SOCIAL", + "SOCIAL_1P" + ], + "enumDescriptions": [ + "List all scores in the public leaderboard.", + "List only social scores.", + "List only social scores, not respecting the fACL." + ], + "location": "path", + "required": true, + "type": "string" + }, + "language": { + "description": "The preferred language to use for strings returned by this method.", + "location": "query", + "type": "string" + }, + "leaderboardId": { + "description": "The ID of the leaderboard.", + "location": "path", + "required": true, + "type": "string" + }, + "maxResults": { + "description": "The maximum number of leaderboard scores to return in the response. For any response, the actual number of leaderboard scores returned may be less than the specified maxResults.", + "format": "int32", + "location": "query", + "maximum": "30", + "minimum": "1", + "type": "integer" + }, + "pageToken": { + "description": "The token returned by the previous request.", + "location": "query", + "type": "string" + }, + "timeSpan": { + "description": "The time span for the scores and ranks you're requesting.", + "enum": [ + "ALL_TIME", + "DAILY", + "WEEKLY" + ], + "enumDescriptions": [ + "List the all-time top scores.", + "List the top scores for the current day.", + "List the top scores for the current week." + ], + "location": "query", + "required": true, + "type": "string" + } + }, + "path": "leaderboards/{leaderboardId}/scores/{collection}", + "response": { + "$ref": "LeaderboardScores" + }, + "scopes": [ + "https://www.googleapis.com/auth/games", + "https://www.googleapis.com/auth/plus.login" + ] + }, + "listWindow": { + "description": "Lists the scores in a leaderboard around (and including) a player's score.", + "httpMethod": "GET", + "id": "games.scores.listWindow", + "parameterOrder": [ + "leaderboardId", + "collection", + "timeSpan" + ], + "parameters": { + "collection": { + "description": "The collection of scores you're requesting.", + "enum": [ + "PUBLIC", + "SOCIAL", + "SOCIAL_1P" + ], + "enumDescriptions": [ + "List all scores in the public leaderboard.", + "List only social scores.", + "List only social scores, not respecting the fACL." + ], + "location": "path", + "required": true, + "type": "string" + }, + "language": { + "description": "The preferred language to use for strings returned by this method.", + "location": "query", + "type": "string" + }, + "leaderboardId": { + "description": "The ID of the leaderboard.", + "location": "path", + "required": true, + "type": "string" + }, + "maxResults": { + "description": "The maximum number of leaderboard scores to return in the response. For any response, the actual number of leaderboard scores returned may be less than the specified maxResults.", + "format": "int32", + "location": "query", + "maximum": "30", + "minimum": "1", + "type": "integer" + }, + "pageToken": { + "description": "The token returned by the previous request.", + "location": "query", + "type": "string" + }, + "resultsAbove": { + "description": "The preferred number of scores to return above the player's score. More scores may be returned if the player is at the bottom of the leaderboard; fewer may be returned if the player is at the top. Must be less than or equal to maxResults.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "returnTopIfAbsent": { + "description": "True if the top scores should be returned when the player is not in the leaderboard. Defaults to true.", + "location": "query", + "type": "boolean" + }, + "timeSpan": { + "description": "The time span for the scores and ranks you're requesting.", + "enum": [ + "ALL_TIME", + "DAILY", + "WEEKLY" + ], + "enumDescriptions": [ + "List the all-time top scores.", + "List the top scores for the current day.", + "List the top scores for the current week." + ], + "location": "query", + "required": true, + "type": "string" + } + }, + "path": "leaderboards/{leaderboardId}/window/{collection}", + "response": { + "$ref": "LeaderboardScores" + }, + "scopes": [ + "https://www.googleapis.com/auth/games", + "https://www.googleapis.com/auth/plus.login" + ] + }, + "submit": { + "description": "Submits a score to the specified leaderboard.", + "httpMethod": "POST", + "id": "games.scores.submit", + "parameterOrder": [ + "leaderboardId", + "score" + ], + "parameters": { + "language": { + "description": "The preferred language to use for strings returned by this method.", + "location": "query", + "type": "string" + }, + "leaderboardId": { + "description": "The ID of the leaderboard.", + "location": "path", + "required": true, + "type": "string" + }, + "score": { + "description": "The score you're submitting. The submitted score is ignored if it is worse than a previously submitted score, where worse depends on the leaderboard sort order. The meaning of the score value depends on the leaderboard format type. For fixed-point, the score represents the raw value. For time, the score represents elapsed time in milliseconds. For currency, the score represents a value in micro units.", + "format": "int64", + "location": "query", + "required": true, + "type": "string" + }, + "scoreTag": { + "description": "Additional information about the score you're submitting. Values must contain no more than 64 URI-safe characters as defined by section 2.3 of RFC 3986.", + "location": "query", + "pattern": "[a-zA-Z0-9-._~]{0,64}", + "type": "string" + } + }, + "path": "leaderboards/{leaderboardId}/scores", + "response": { + "$ref": "PlayerScoreResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/games", + "https://www.googleapis.com/auth/plus.login" + ] + }, + "submitMultiple": { + "description": "Submits multiple scores to leaderboards.", + "httpMethod": "POST", + "id": "games.scores.submitMultiple", + "parameters": { + "language": { + "description": "The preferred language to use for strings returned by this method.", + "location": "query", + "type": "string" + } + }, + "path": "leaderboards/scores", + "request": { + "$ref": "PlayerScoreSubmissionList" + }, + "response": { + "$ref": "PlayerScoreListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/games", + "https://www.googleapis.com/auth/plus.login" + ] + } } - } }, - "kind": { - "type": "string", - "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#pushTokenId.", - "default": "games#pushTokenId" - } - } - }, - "Quest": { - "id": "Quest", - "type": "object", - "description": "This is a JSON template for a Quest resource.", - "properties": { - "acceptedTimestampMillis": { - "type": "string", - "description": "The timestamp at which the user accepted the quest in milliseconds since the epoch in UTC. Only present if the player has accepted the quest.", - "format": "int64" - }, - "applicationId": { - "type": "string", - "description": "The ID of the application this quest is part of." - }, - "bannerUrl": { - "type": "string", - "description": "The banner image URL for the quest." - }, - "description": { - "type": "string", - "description": "The description of the quest." - }, - "endTimestampMillis": { - "type": "string", - "description": "The timestamp at which the quest ceases to be active in milliseconds since the epoch in UTC.", - "format": "int64" - }, - "iconUrl": { - "type": "string", - "description": "The icon image URL for the quest." - }, - "id": { - "type": "string", - "description": "The ID of the quest." - }, - "isDefaultBannerUrl": { - "type": "boolean", - "description": "Indicates whether the banner image being returned is a default image, or is game-provided." - }, - "isDefaultIconUrl": { - "type": "boolean", - "description": "Indicates whether the icon image being returned is a default image, or is game-provided." - }, - "kind": { - "type": "string", - "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#quest.", - "default": "games#quest" - }, - "lastUpdatedTimestampMillis": { - "type": "string", - "description": "The timestamp at which the quest was last updated by the user in milliseconds since the epoch in UTC. Only present if the player has accepted the quest.", - "format": "int64" - }, - "milestones": { - "type": "array", - "description": "The quest milestones.", - "items": { - "$ref": "QuestMilestone" - } - }, - "name": { - "type": "string", - "description": "The name of the quest." - }, - "notifyTimestampMillis": { - "type": "string", - "description": "The timestamp at which the user should be notified that the quest will end soon in milliseconds since the epoch in UTC.", - "format": "int64" - }, - "startTimestampMillis": { - "type": "string", - "description": "The timestamp at which the quest becomes active in milliseconds since the epoch in UTC.", - "format": "int64" - }, - "state": { - "type": "string", - "description": "The state of the quest.\nPossible values are: \n- \"UPCOMING\": The quest is upcoming. The user can see the quest, but cannot accept it until it is open. \n- \"OPEN\": The quest is currently open and may be accepted at this time. \n- \"ACCEPTED\": The user is currently participating in this quest. \n- \"COMPLETED\": The user has completed the quest. \n- \"FAILED\": The quest was attempted but was not completed before the deadline expired. \n- \"EXPIRED\": The quest has expired and was not accepted. \n- \"DELETED\": The quest should be deleted from the local database." - } - } - }, - "QuestContribution": { - "id": "QuestContribution", - "type": "object", - "description": "This is a JSON template for a Quest Criterion Contribution resource.", - "properties": { - "formattedValue": { - "type": "string", - "description": "The formatted value of the contribution as a string. Format depends on the configuration for the associated event definition in the Play Games Developer Console." - }, - "kind": { - "type": "string", - "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#questContribution.", - "default": "games#questContribution" - }, - "value": { - "type": "string", - "description": "The value of the contribution.", - "format": "int64" - } - } - }, - "QuestCriterion": { - "id": "QuestCriterion", - "type": "object", - "description": "This is a JSON template for a Quest Criterion resource.", - "properties": { - "completionContribution": { - "$ref": "QuestContribution", - "description": "The total number of times the associated event must be incremented for the player to complete this quest." - }, - "currentContribution": { - "$ref": "QuestContribution", - "description": "The number of increments the player has made toward the completion count event increments required to complete the quest. This value will not exceed the completion contribution.\nThere will be no currentContribution until the player has accepted the quest." - }, - "eventId": { - "type": "string", - "description": "The ID of the event the criterion corresponds to." - }, - "initialPlayerProgress": { - "$ref": "QuestContribution", - "description": "The value of the event associated with this quest at the time that the quest was accepted. This value may change if event increments that took place before the start of quest are uploaded after the quest starts.\nThere will be no initialPlayerProgress until the player has accepted the quest." - }, - "kind": { - "type": "string", - "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#questCriterion.", - "default": "games#questCriterion" - } - } - }, - "QuestListResponse": { - "id": "QuestListResponse", - "type": "object", - "description": "This is a JSON template for a list of quest objects.", - "properties": { - "items": { - "type": "array", - "description": "The quests.", - "items": { - "$ref": "Quest" - } - }, - "kind": { - "type": "string", - "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#questListResponse.", - "default": "games#questListResponse" - }, - "nextPageToken": { - "type": "string", - "description": "Token corresponding to the next page of results." - } - } - }, - "QuestMilestone": { - "id": "QuestMilestone", - "type": "object", - "description": "This is a JSON template for a Quest Milestone resource.", - "properties": { - "completionRewardData": { - "type": "string", - "description": "The completion reward data of the milestone, represented as a Base64-encoded string. This is a developer-specified binary blob with size between 0 and 2 KB before encoding.", - "format": "byte" - }, - "criteria": { - "type": "array", - "description": "The criteria of the milestone.", - "items": { - "$ref": "QuestCriterion" - } - }, - "id": { - "type": "string", - "description": "The milestone ID." - }, - "kind": { - "type": "string", - "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#questMilestone.", - "default": "games#questMilestone" - }, - "state": { - "type": "string", - "description": "The current state of the milestone.\nPossible values are: \n- \"COMPLETED_NOT_CLAIMED\" - The milestone is complete, but has not yet been claimed. \n- \"CLAIMED\" - The milestone is complete and has been claimed. \n- \"NOT_COMPLETED\" - The milestone has not yet been completed. \n- \"NOT_STARTED\" - The milestone is for a quest that has not yet been accepted." - } - } - }, - "RevisionCheckResponse": { - "id": "RevisionCheckResponse", - "type": "object", - "description": "This is a JSON template for the result of checking a revision.", - "properties": { - "apiVersion": { - "type": "string", - "description": "The version of the API this client revision should use when calling API methods." - }, - "kind": { - "type": "string", - "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#revisionCheckResponse.", - "default": "games#revisionCheckResponse" - }, - "revisionStatus": { - "type": "string", - "description": "The result of the revision check.\nPossible values are: \n- \"OK\" - The revision being used is current. \n- \"DEPRECATED\" - There is currently a newer version available, but the revision being used still works. \n- \"INVALID\" - The revision being used is not supported in any released version." - } - } - }, - "Room": { - "id": "Room", - "type": "object", - "description": "This is a JSON template for a room resource object.", - "properties": { - "applicationId": { - "type": "string", - "description": "The ID of the application being played." - }, - "autoMatchingCriteria": { - "$ref": "RoomAutoMatchingCriteria", - "description": "Criteria for auto-matching players into this room." - }, - "autoMatchingStatus": { - "$ref": "RoomAutoMatchStatus", - "description": "Auto-matching status for this room. Not set if the room is not currently in the auto-matching queue." - }, - "creationDetails": { - "$ref": "RoomModification", - "description": "Details about the room creation." - }, - "description": { - "type": "string", - "description": "This short description is generated by our servers and worded relative to the player requesting the room. It is intended to be displayed when the room is shown in a list (that is, an invitation to a room.)" - }, - "inviterId": { - "type": "string", - "description": "The ID of the participant that invited the user to the room. Not set if the user was not invited to the room." - }, - "kind": { - "type": "string", - "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#room.", - "default": "games#room" - }, - "lastUpdateDetails": { - "$ref": "RoomModification", - "description": "Details about the last update to the room." - }, - "participants": { - "type": "array", - "description": "The participants involved in the room, along with their statuses. Includes participants who have left or declined invitations.", - "items": { - "$ref": "RoomParticipant" - } - }, - "roomId": { - "type": "string", - "description": "Globally unique ID for a room." - }, - "roomStatusVersion": { - "type": "integer", - "description": "The version of the room status: an increasing counter, used by the client to ignore out-of-order updates to room status.", - "format": "int32" - }, - "status": { - "type": "string", - "description": "The status of the room.\nPossible values are: \n- \"ROOM_INVITING\" - One or more players have been invited and not responded. \n- \"ROOM_AUTO_MATCHING\" - One or more slots need to be filled by auto-matching. \n- \"ROOM_CONNECTING\" - Players have joined and are connecting to each other (either before or after auto-matching). \n- \"ROOM_ACTIVE\" - All players have joined and connected to each other. \n- \"ROOM_DELETED\" - The room should no longer be shown on the client. Returned in sync calls when a player joins a room (as a tombstone), or for rooms where all joined participants have left." - }, - "variant": { - "type": "integer", - "description": "The variant / mode of the application being played; can be any integer value, or left blank.", - "format": "int32" - } - } - }, - "RoomAutoMatchStatus": { - "id": "RoomAutoMatchStatus", - "type": "object", - "description": "This is a JSON template for status of room automatching that is in progress.", - "properties": { - "kind": { - "type": "string", - "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#roomAutoMatchStatus.", - "default": "games#roomAutoMatchStatus" - }, - "waitEstimateSeconds": { - "type": "integer", - "description": "An estimate for the amount of time (in seconds) that auto-matching is expected to take to complete.", - "format": "int32" - } - } - }, - "RoomAutoMatchingCriteria": { - "id": "RoomAutoMatchingCriteria", - "type": "object", - "description": "This is a JSON template for a room auto-match criteria object.", - "properties": { - "exclusiveBitmask": { - "type": "string", - "description": "A bitmask indicating when auto-matches are valid. When ANDed with other exclusive bitmasks, the result must be zero. Can be used to support exclusive roles within a game.", - "format": "int64" - }, - "kind": { - "type": "string", - "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#roomAutoMatchingCriteria.", - "default": "games#roomAutoMatchingCriteria" - }, - "maxAutoMatchingPlayers": { - "type": "integer", - "description": "The maximum number of players that should be added to the room by auto-matching.", - "format": "int32" - }, - "minAutoMatchingPlayers": { - "type": "integer", - "description": "The minimum number of players that should be added to the room by auto-matching.", - "format": "int32" - } - } - }, - "RoomClientAddress": { - "id": "RoomClientAddress", - "type": "object", - "description": "This is a JSON template for the client address when setting up a room.", - "properties": { - "kind": { - "type": "string", - "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#roomClientAddress.", - "default": "games#roomClientAddress" - }, - "xmppAddress": { - "type": "string", - "description": "The XMPP address of the client on the Google Games XMPP network." - } - } - }, - "RoomCreateRequest": { - "id": "RoomCreateRequest", - "type": "object", - "description": "This is a JSON template for a room creation request.", - "properties": { - "autoMatchingCriteria": { - "$ref": "RoomAutoMatchingCriteria", - "description": "Criteria for auto-matching players into this room." - }, - "capabilities": { - "type": "array", - "description": "The capabilities that this client supports for realtime communication.", - "items": { - "type": "string" - } - }, - "clientAddress": { - "$ref": "RoomClientAddress", - "description": "Client address for the player creating the room." - }, - "invitedPlayerIds": { - "type": "array", - "description": "The player IDs to invite to the room.", - "items": { - "type": "string" - } - }, - "kind": { - "type": "string", - "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#roomCreateRequest.", - "default": "games#roomCreateRequest" - }, - "networkDiagnostics": { - "$ref": "NetworkDiagnostics", - "description": "Network diagnostics for the client creating the room." - }, - "requestId": { - "type": "string", - "description": "A randomly generated numeric ID. This number is used at the server to ensure that the request is handled correctly across retries.", - "format": "int64" - }, - "variant": { - "type": "integer", - "description": "The variant / mode of the application to be played. This can be any integer value, or left blank. You should use a small number of variants to keep the auto-matching pool as large as possible.", - "format": "int32" - } - } - }, - "RoomJoinRequest": { - "id": "RoomJoinRequest", - "type": "object", - "description": "This is a JSON template for a join room request.", - "properties": { - "capabilities": { - "type": "array", - "description": "The capabilities that this client supports for realtime communication.", - "items": { - "type": "string" - } - }, - "clientAddress": { - "$ref": "RoomClientAddress", - "description": "Client address for the player joining the room." - }, - "kind": { - "type": "string", - "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#roomJoinRequest.", - "default": "games#roomJoinRequest" - }, - "networkDiagnostics": { - "$ref": "NetworkDiagnostics", - "description": "Network diagnostics for the client joining the room." - } - } - }, - "RoomLeaveDiagnostics": { - "id": "RoomLeaveDiagnostics", - "type": "object", - "description": "This is a JSON template for room leave diagnostics.", - "properties": { - "androidNetworkSubtype": { - "type": "integer", - "description": "Android network subtype. http://developer.android.com/reference/android/net/NetworkInfo.html#getSubtype()", - "format": "int32" - }, - "androidNetworkType": { - "type": "integer", - "description": "Android network type. http://developer.android.com/reference/android/net/NetworkInfo.html#getType()", - "format": "int32" - }, - "iosNetworkType": { - "type": "integer", - "description": "iOS network type as defined in Reachability.h.", - "format": "int32" - }, - "kind": { - "type": "string", - "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#roomLeaveDiagnostics.", - "default": "games#roomLeaveDiagnostics" - }, - "networkOperatorCode": { - "type": "string", - "description": "The MCC+MNC code for the client's network connection. On Android: http://developer.android.com/reference/android/telephony/TelephonyManager.html#getNetworkOperator() On iOS, see: https://developer.apple.com/library/ios/documentation/NetworkingInternet/Reference/CTCarrier/Reference/Reference.html" - }, - "networkOperatorName": { - "type": "string", - "description": "The name of the carrier of the client's network connection. On Android: http://developer.android.com/reference/android/telephony/TelephonyManager.html#getNetworkOperatorName() On iOS: https://developer.apple.com/library/ios/documentation/NetworkingInternet/Reference/CTCarrier/Reference/Reference.html#//apple_ref/occ/instp/CTCarrier/carrierName" - }, - "peerSession": { - "type": "array", - "description": "Diagnostics about all peer sessions.", - "items": { - "$ref": "PeerSessionDiagnostics" - } - }, - "socketsUsed": { - "type": "boolean", - "description": "Whether or not sockets were used." - } - } - }, - "RoomLeaveRequest": { - "id": "RoomLeaveRequest", - "type": "object", - "description": "This is a JSON template for a leave room request.", - "properties": { - "kind": { - "type": "string", - "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#roomLeaveRequest.", - "default": "games#roomLeaveRequest" - }, - "leaveDiagnostics": { - "$ref": "RoomLeaveDiagnostics", - "description": "Diagnostics for a player leaving the room." - }, - "reason": { - "type": "string", - "description": "Reason for leaving the match.\nPossible values are: \n- \"PLAYER_LEFT\" - The player chose to leave the room.. \n- \"GAME_LEFT\" - The game chose to remove the player from the room. \n- \"REALTIME_ABANDONED\" - The player switched to another application and abandoned the room. \n- \"REALTIME_PEER_CONNECTION_FAILURE\" - The client was unable to establish a connection to other peer(s). \n- \"REALTIME_SERVER_CONNECTION_FAILURE\" - The client was unable to communicate with the server. \n- \"REALTIME_SERVER_ERROR\" - The client received an error response when it tried to communicate with the server. \n- \"REALTIME_TIMEOUT\" - The client timed out while waiting for a room. \n- \"REALTIME_CLIENT_DISCONNECTING\" - The client disconnects without first calling Leave. \n- \"REALTIME_SIGN_OUT\" - The user signed out of G+ while in the room. \n- \"REALTIME_GAME_CRASHED\" - The game crashed. \n- \"REALTIME_ROOM_SERVICE_CRASHED\" - RoomAndroidService crashed. \n- \"REALTIME_DIFFERENT_CLIENT_ROOM_OPERATION\" - Another client is trying to enter a room. \n- \"REALTIME_SAME_CLIENT_ROOM_OPERATION\" - The same client is trying to enter a new room." - } - } - }, - "RoomList": { - "id": "RoomList", - "type": "object", - "description": "This is a JSON template for a list of rooms.", - "properties": { - "items": { - "type": "array", - "description": "The rooms.", - "items": { - "$ref": "Room" - } - }, - "kind": { - "type": "string", - "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#roomList.", - "default": "games#roomList" - }, - "nextPageToken": { - "type": "string", - "description": "The pagination token for the next page of results." - } - } - }, - "RoomModification": { - "id": "RoomModification", - "type": "object", - "description": "This is a JSON template for room modification metadata.", - "properties": { - "kind": { - "type": "string", - "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#roomModification.", - "default": "games#roomModification" - }, - "modifiedTimestampMillis": { - "type": "string", - "description": "The timestamp at which they modified the room, in milliseconds since the epoch in UTC.", - "format": "int64" - }, - "participantId": { - "type": "string", - "description": "The ID of the participant that modified the room." - } - } - }, - "RoomP2PStatus": { - "id": "RoomP2PStatus", - "type": "object", - "description": "This is a JSON template for an update on the status of a peer in a room.", - "properties": { - "connectionSetupLatencyMillis": { - "type": "integer", - "description": "The amount of time in milliseconds it took to establish connections with this peer.", - "format": "int32" - }, - "error": { - "type": "string", - "description": "The error code in event of a failure.\nPossible values are: \n- \"P2P_FAILED\" - The client failed to establish a P2P connection with the peer. \n- \"PRESENCE_FAILED\" - The client failed to register to receive P2P connections. \n- \"RELAY_SERVER_FAILED\" - The client received an error when trying to use the relay server to establish a P2P connection with the peer." - }, - "error_reason": { - "type": "string", - "description": "More detailed diagnostic message returned in event of a failure." - }, - "kind": { - "type": "string", - "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#roomP2PStatus.", - "default": "games#roomP2PStatus" - }, - "participantId": { - "type": "string", - "description": "The ID of the participant." - }, - "status": { - "type": "string", - "description": "The status of the peer in the room.\nPossible values are: \n- \"CONNECTION_ESTABLISHED\" - The client established a P2P connection with the peer. \n- \"CONNECTION_FAILED\" - The client failed to establish directed presence with the peer." - }, - "unreliableRoundtripLatencyMillis": { - "type": "integer", - "description": "The amount of time in milliseconds it took to send packets back and forth on the unreliable channel with this peer.", - "format": "int32" - } - } - }, - "RoomP2PStatuses": { - "id": "RoomP2PStatuses", - "type": "object", - "description": "This is a JSON template for an update on the status of peers in a room.", - "properties": { - "kind": { - "type": "string", - "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#roomP2PStatuses.", - "default": "games#roomP2PStatuses" - }, - "updates": { - "type": "array", - "description": "The updates for the peers.", - "items": { - "$ref": "RoomP2PStatus" - } - } - } - }, - "RoomParticipant": { - "id": "RoomParticipant", - "type": "object", - "description": "This is a JSON template for a participant in a room.", - "properties": { - "autoMatched": { - "type": "boolean", - "description": "True if this participant was auto-matched with the requesting player." - }, - "autoMatchedPlayer": { - "$ref": "AnonymousPlayer", - "description": "Information about a player that has been anonymously auto-matched against the requesting player. (Either player or autoMatchedPlayer will be set.)" - }, - "capabilities": { - "type": "array", - "description": "The capabilities which can be used when communicating with this participant.", - "items": { - "type": "string" - } - }, - "clientAddress": { - "$ref": "RoomClientAddress", - "description": "Client address for the participant." - }, - "connected": { - "type": "boolean", - "description": "True if this participant is in the fully connected set of peers in the room." - }, - "id": { - "type": "string", - "description": "An identifier for the participant in the scope of the room. Cannot be used to identify a player across rooms or in other contexts." - }, - "kind": { - "type": "string", - "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#roomParticipant.", - "default": "games#roomParticipant" - }, - "leaveReason": { - "type": "string", - "description": "The reason the participant left the room; populated if the participant status is PARTICIPANT_LEFT.\nPossible values are: \n- \"PLAYER_LEFT\" - The player explicitly chose to leave the room. \n- \"GAME_LEFT\" - The game chose to remove the player from the room. \n- \"ABANDONED\" - The player switched to another application and abandoned the room.\n- \"PEER_CONNECTION_FAILURE\" - The client was unable to establish or maintain a connection to other peer(s) in the room.\n- \"SERVER_ERROR\" - The client received an error response when it tried to communicate with the server. \n- \"TIMEOUT\" - The client timed out while waiting for players to join and connect. \n- \"PRESENCE_FAILURE\" - The client's XMPP connection ended abruptly." - }, - "player": { - "$ref": "Player", - "description": "Information about the player. Not populated if this player was anonymously auto-matched against the requesting player. (Either player or autoMatchedPlayer will be set.)" - }, - "status": { - "type": "string", - "description": "The status of the participant with respect to the room.\nPossible values are: \n- \"PARTICIPANT_INVITED\" - The participant has been invited to join the room, but has not yet responded. \n- \"PARTICIPANT_JOINED\" - The participant has joined the room (either after creating it or accepting an invitation.) \n- \"PARTICIPANT_DECLINED\" - The participant declined an invitation to join the room. \n- \"PARTICIPANT_LEFT\" - The participant joined the room and then left it." - } - } - }, - "RoomStatus": { - "id": "RoomStatus", - "type": "object", - "description": "This is a JSON template for the status of a room that the player has joined.", - "properties": { - "autoMatchingStatus": { - "$ref": "RoomAutoMatchStatus", - "description": "Auto-matching status for this room. Not set if the room is not currently in the automatching queue." - }, - "kind": { - "type": "string", - "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#roomStatus.", - "default": "games#roomStatus" - }, - "participants": { - "type": "array", - "description": "The participants involved in the room, along with their statuses. Includes participants who have left or declined invitations.", - "items": { - "$ref": "RoomParticipant" - } - }, - "roomId": { - "type": "string", - "description": "Globally unique ID for a room." - }, - "status": { - "type": "string", - "description": "The status of the room.\nPossible values are: \n- \"ROOM_INVITING\" - One or more players have been invited and not responded. \n- \"ROOM_AUTO_MATCHING\" - One or more slots need to be filled by auto-matching. \n- \"ROOM_CONNECTING\" - Players have joined are connecting to each other (either before or after auto-matching). \n- \"ROOM_ACTIVE\" - All players have joined and connected to each other. \n- \"ROOM_DELETED\" - All joined players have left." - }, - "statusVersion": { - "type": "integer", - "description": "The version of the status for the room: an increasing counter, used by the client to ignore out-of-order updates to room status.", - "format": "int32" - } - } - }, - "ScoreSubmission": { - "id": "ScoreSubmission", - "type": "object", - "description": "This is a JSON template for a request to submit a score to leaderboards.", - "properties": { - "kind": { - "type": "string", - "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#scoreSubmission.", - "default": "games#scoreSubmission" - }, - "leaderboardId": { - "type": "string", - "description": "The leaderboard this score is being submitted to." - }, - "score": { - "type": "string", - "description": "The new score being submitted.", - "format": "int64" - }, - "scoreTag": { - "type": "string", - "description": "Additional information about this score. Values will contain no more than 64 URI-safe characters as defined by section 2.3 of RFC 3986.", - "pattern": "[a-zA-Z0-9-._~]{0,64}" - }, - "signature": { - "type": "string", - "description": "Signature Values will contain URI-safe characters as defined by section 2.3 of RFC 3986." - } - } - }, - "Snapshot": { - "id": "Snapshot", - "type": "object", - "description": "This is a JSON template for an snapshot object.", - "properties": { - "coverImage": { - "$ref": "SnapshotImage", - "description": "The cover image of this snapshot. May be absent if there is no image." - }, - "description": { - "type": "string", - "description": "The description of this snapshot." - }, - "driveId": { - "type": "string", - "description": "The ID of the file underlying this snapshot in the Drive API. Only present if the snapshot is a view on a Drive file and the file is owned by the caller." - }, - "durationMillis": { - "type": "string", - "description": "The duration associated with this snapshot, in millis.", - "format": "int64" - }, - "id": { - "type": "string", - "description": "The ID of the snapshot." - }, - "kind": { - "type": "string", - "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#snapshot.", - "default": "games#snapshot" - }, - "lastModifiedMillis": { - "type": "string", - "description": "The timestamp (in millis since Unix epoch) of the last modification to this snapshot.", - "format": "int64" - }, - "progressValue": { - "type": "string", - "description": "The progress value (64-bit integer set by developer) associated with this snapshot.", - "format": "int64" - }, - "title": { - "type": "string", - "description": "The title of this snapshot." - }, - "type": { - "type": "string", - "description": "The type of this snapshot.\nPossible values are: \n- \"SAVE_GAME\" - A snapshot representing a save game." - }, - "uniqueName": { - "type": "string", - "description": "The unique name provided when the snapshot was created." - } - } - }, - "SnapshotImage": { - "id": "SnapshotImage", - "type": "object", - "description": "This is a JSON template for an image of a snapshot.", - "properties": { - "height": { - "type": "integer", - "description": "The height of the image.", - "format": "int32" - }, - "kind": { - "type": "string", - "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#snapshotImage.", - "default": "games#snapshotImage" - }, - "mime_type": { - "type": "string", - "description": "The MIME type of the image." - }, - "url": { - "type": "string", - "description": "The URL of the image. This URL may be invalidated at any time and should not be cached." - }, - "width": { - "type": "integer", - "description": "The width of the image.", - "format": "int32" - } - } - }, - "SnapshotListResponse": { - "id": "SnapshotListResponse", - "type": "object", - "description": "This is a JSON template for a list of snapshot objects.", - "properties": { - "items": { - "type": "array", - "description": "The snapshots.", - "items": { - "$ref": "Snapshot" - } - }, - "kind": { - "type": "string", - "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#snapshotListResponse.", - "default": "games#snapshotListResponse" - }, - "nextPageToken": { - "type": "string", - "description": "Token corresponding to the next page of results. If there are no more results, the token is omitted." - } - } - }, - "TurnBasedAutoMatchingCriteria": { - "id": "TurnBasedAutoMatchingCriteria", - "type": "object", - "description": "This is a JSON template for an turn-based auto-match criteria object.", - "properties": { - "exclusiveBitmask": { - "type": "string", - "description": "A bitmask indicating when auto-matches are valid. When ANDed with other exclusive bitmasks, the result must be zero. Can be used to support exclusive roles within a game.", - "format": "int64" - }, - "kind": { - "type": "string", - "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#turnBasedAutoMatchingCriteria.", - "default": "games#turnBasedAutoMatchingCriteria" - }, - "maxAutoMatchingPlayers": { - "type": "integer", - "description": "The maximum number of players that should be added to the match by auto-matching.", - "format": "int32" - }, - "minAutoMatchingPlayers": { - "type": "integer", - "description": "The minimum number of players that should be added to the match by auto-matching.", - "format": "int32" - } - } - }, - "TurnBasedMatch": { - "id": "TurnBasedMatch", - "type": "object", - "description": "This is a JSON template for a turn-based match resource object.", - "properties": { - "applicationId": { - "type": "string", - "description": "The ID of the application being played." - }, - "autoMatchingCriteria": { - "$ref": "TurnBasedAutoMatchingCriteria", - "description": "Criteria for auto-matching players into this match." - }, - "creationDetails": { - "$ref": "TurnBasedMatchModification", - "description": "Details about the match creation." - }, - "data": { - "$ref": "TurnBasedMatchData", - "description": "The data / game state for this match." - }, - "description": { - "type": "string", - "description": "This short description is generated by our servers based on turn state and is localized and worded relative to the player requesting the match. It is intended to be displayed when the match is shown in a list." - }, - "inviterId": { - "type": "string", - "description": "The ID of the participant that invited the user to the match. Not set if the user was not invited to the match." - }, - "kind": { - "type": "string", - "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#turnBasedMatch.", - "default": "games#turnBasedMatch" - }, - "lastUpdateDetails": { - "$ref": "TurnBasedMatchModification", - "description": "Details about the last update to the match." - }, - "matchId": { - "type": "string", - "description": "Globally unique ID for a turn-based match." - }, - "matchNumber": { - "type": "integer", - "description": "The number of the match in a chain of rematches. Will be set to 1 for the first match and incremented by 1 for each rematch.", - "format": "int32" - }, - "matchVersion": { - "type": "integer", - "description": "The version of this match: an increasing counter, used to avoid out-of-date updates to the match.", - "format": "int32" - }, - "participants": { - "type": "array", - "description": "The participants involved in the match, along with their statuses. Includes participants who have left or declined invitations.", - "items": { - "$ref": "TurnBasedMatchParticipant" - } - }, - "pendingParticipantId": { - "type": "string", - "description": "The ID of the participant that is taking a turn." - }, - "previousMatchData": { - "$ref": "TurnBasedMatchData", - "description": "The data / game state for the previous match; set for the first turn of rematches only." - }, - "rematchId": { - "type": "string", - "description": "The ID of a rematch of this match. Only set for completed matches that have been rematched." - }, - "results": { - "type": "array", - "description": "The results reported for this match.", - "items": { - "$ref": "ParticipantResult" - } - }, - "status": { - "type": "string", - "description": "The status of the match.\nPossible values are: \n- \"MATCH_AUTO_MATCHING\" - One or more slots need to be filled by auto-matching; the match cannot be established until they are filled. \n- \"MATCH_ACTIVE\" - The match has started. \n- \"MATCH_COMPLETE\" - The match has finished. \n- \"MATCH_CANCELED\" - The match was canceled. \n- \"MATCH_EXPIRED\" - The match expired due to inactivity. \n- \"MATCH_DELETED\" - The match should no longer be shown on the client. Returned only for tombstones for matches when sync is called." - }, - "userMatchStatus": { - "type": "string", - "description": "The status of the current user in the match. Derived from the match type, match status, the user's participant status, and the pending participant for the match.\nPossible values are: \n- \"USER_INVITED\" - The user has been invited to join the match and has not responded yet. \n- \"USER_AWAITING_TURN\" - The user is waiting for their turn. \n- \"USER_TURN\" - The user has an action to take in the match. \n- \"USER_MATCH_COMPLETED\" - The match has ended (it is completed, canceled, or expired.)" - }, - "variant": { - "type": "integer", - "description": "The variant / mode of the application being played; can be any integer value, or left blank.", - "format": "int32" - }, - "withParticipantId": { - "type": "string", - "description": "The ID of another participant in the match that can be used when describing the participants the user is playing with." - } - } - }, - "TurnBasedMatchCreateRequest": { - "id": "TurnBasedMatchCreateRequest", - "type": "object", - "description": "This is a JSON template for a turn-based match creation request.", - "properties": { - "autoMatchingCriteria": { - "$ref": "TurnBasedAutoMatchingCriteria", - "description": "Criteria for auto-matching players into this match." - }, - "invitedPlayerIds": { - "type": "array", - "description": "The player ids to invite to the match.", - "items": { - "type": "string" - } - }, - "kind": { - "type": "string", - "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#turnBasedMatchCreateRequest.", - "default": "games#turnBasedMatchCreateRequest" - }, - "requestId": { - "type": "string", - "description": "A randomly generated numeric ID. This number is used at the server to ensure that the request is handled correctly across retries.", - "format": "int64" - }, - "variant": { - "type": "integer", - "description": "The variant / mode of the application to be played. This can be any integer value, or left blank. You should use a small number of variants to keep the auto-matching pool as large as possible.", - "format": "int32" - } - } - }, - "TurnBasedMatchData": { - "id": "TurnBasedMatchData", - "type": "object", - "description": "This is a JSON template for a turn-based match data object.", - "properties": { - "data": { - "type": "string", - "description": "The byte representation of the data (limited to 128 kB), as a Base64-encoded string with the URL_SAFE encoding option.", - "format": "byte" - }, - "dataAvailable": { - "type": "boolean", - "description": "True if this match has data available but it wasn't returned in a list response; fetching the match individually will retrieve this data." - }, - "kind": { - "type": "string", - "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#turnBasedMatchData.", - "default": "games#turnBasedMatchData" - } - } - }, - "TurnBasedMatchDataRequest": { - "id": "TurnBasedMatchDataRequest", - "type": "object", - "description": "This is a JSON template for sending a turn-based match data object.", - "properties": { - "data": { - "type": "string", - "description": "The byte representation of the data (limited to 128 kB), as a Base64-encoded string with the URL_SAFE encoding option.", - "format": "byte" - }, - "kind": { - "type": "string", - "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#turnBasedMatchDataRequest.", - "default": "games#turnBasedMatchDataRequest" - } - } - }, - "TurnBasedMatchList": { - "id": "TurnBasedMatchList", - "type": "object", - "description": "This is a JSON template for a list of turn-based matches.", - "properties": { - "items": { - "type": "array", - "description": "The matches.", - "items": { - "$ref": "TurnBasedMatch" - } - }, - "kind": { - "type": "string", - "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#turnBasedMatchList.", - "default": "games#turnBasedMatchList" - }, - "nextPageToken": { - "type": "string", - "description": "The pagination token for the next page of results." - } - } - }, - "TurnBasedMatchModification": { - "id": "TurnBasedMatchModification", - "type": "object", - "description": "This is a JSON template for turn-based match modification metadata.", - "properties": { - "kind": { - "type": "string", - "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#turnBasedMatchModification.", - "default": "games#turnBasedMatchModification" - }, - "modifiedTimestampMillis": { - "type": "string", - "description": "The timestamp at which they modified the match, in milliseconds since the epoch in UTC.", - "format": "int64" - }, - "participantId": { - "type": "string", - "description": "The ID of the participant that modified the match." - } - } - }, - "TurnBasedMatchParticipant": { - "id": "TurnBasedMatchParticipant", - "type": "object", - "description": "This is a JSON template for a participant in a turn-based match.", - "properties": { - "autoMatched": { - "type": "boolean", - "description": "True if this participant was auto-matched with the requesting player." - }, - "autoMatchedPlayer": { - "$ref": "AnonymousPlayer", - "description": "Information about a player that has been anonymously auto-matched against the requesting player. (Either player or autoMatchedPlayer will be set.)" - }, - "id": { - "type": "string", - "description": "An identifier for the participant in the scope of the match. Cannot be used to identify a player across matches or in other contexts." - }, - "kind": { - "type": "string", - "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#turnBasedMatchParticipant.", - "default": "games#turnBasedMatchParticipant" - }, - "player": { - "$ref": "Player", - "description": "Information about the player. Not populated if this player was anonymously auto-matched against the requesting player. (Either player or autoMatchedPlayer will be set.)" - }, - "status": { - "type": "string", - "description": "The status of the participant with respect to the match.\nPossible values are: \n- \"PARTICIPANT_NOT_INVITED_YET\" - The participant is slated to be invited to the match, but the invitation has not been sent; the invite will be sent when it becomes their turn. \n- \"PARTICIPANT_INVITED\" - The participant has been invited to join the match, but has not yet responded. \n- \"PARTICIPANT_JOINED\" - The participant has joined the match (either after creating it or accepting an invitation.) \n- \"PARTICIPANT_DECLINED\" - The participant declined an invitation to join the match. \n- \"PARTICIPANT_LEFT\" - The participant joined the match and then left it. \n- \"PARTICIPANT_FINISHED\" - The participant finished playing in the match. \n- \"PARTICIPANT_UNRESPONSIVE\" - The participant did not take their turn in the allotted time." - } - } - }, - "TurnBasedMatchRematch": { - "id": "TurnBasedMatchRematch", - "type": "object", - "description": "This is a JSON template for a rematch response.", - "properties": { - "kind": { - "type": "string", - "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#turnBasedMatchRematch.", - "default": "games#turnBasedMatchRematch" - }, - "previousMatch": { - "$ref": "TurnBasedMatch", - "description": "The old match that the rematch was created from; will be updated such that the rematchId field will point at the new match." - }, - "rematch": { - "$ref": "TurnBasedMatch", - "description": "The newly created match; a rematch of the old match with the same participants." - } - } - }, - "TurnBasedMatchResults": { - "id": "TurnBasedMatchResults", - "type": "object", - "description": "This is a JSON template for a turn-based match results object.", - "properties": { - "data": { - "$ref": "TurnBasedMatchDataRequest", - "description": "The final match data." - }, - "kind": { - "type": "string", - "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#turnBasedMatchResults.", - "default": "games#turnBasedMatchResults" - }, - "matchVersion": { - "type": "integer", - "description": "The version of the match being updated.", - "format": "int32" - }, - "results": { - "type": "array", - "description": "The match results for the participants in the match.", - "items": { - "$ref": "ParticipantResult" - } - } - } - }, - "TurnBasedMatchSync": { - "id": "TurnBasedMatchSync", - "type": "object", - "description": "This is a JSON template for a list of turn-based matches returned from a sync.", - "properties": { - "items": { - "type": "array", - "description": "The matches.", - "items": { - "$ref": "TurnBasedMatch" - } - }, - "kind": { - "type": "string", - "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#turnBasedMatchSync.", - "default": "games#turnBasedMatchSync" - }, - "moreAvailable": { - "type": "boolean", - "description": "True if there were more matches available to fetch at the time the response was generated (which were not returned due to page size limits.)" - }, - "nextPageToken": { - "type": "string", - "description": "The pagination token for the next page of results." - } - } - }, - "TurnBasedMatchTurn": { - "id": "TurnBasedMatchTurn", - "type": "object", - "description": "This is a JSON template for the object representing a turn.", - "properties": { - "data": { - "$ref": "TurnBasedMatchDataRequest", - "description": "The shared game state data after the turn is over." - }, - "kind": { - "type": "string", - "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#turnBasedMatchTurn.", - "default": "games#turnBasedMatchTurn" - }, - "matchVersion": { - "type": "integer", - "description": "The version of this match: an increasing counter, used to avoid out-of-date updates to the match.", - "format": "int32" - }, - "pendingParticipantId": { - "type": "string", - "description": "The ID of the participant who should take their turn next. May be set to the current player's participant ID to update match state without changing the turn. If not set, the match will wait for other player(s) to join via automatching; this is only valid if automatch criteria is set on the match with remaining slots for automatched players." - }, - "results": { - "type": "array", - "description": "The match results for the participants in the match.", - "items": { - "$ref": "ParticipantResult" - } - } - } - } - }, - "resources": { - "achievementDefinitions": { - "methods": { - "list": { - "id": "games.achievementDefinitions.list", - "path": "achievements", - "httpMethod": "GET", - "description": "Lists all the achievement definitions for your application.", - "parameters": { - "language": { - "type": "string", - "description": "The preferred language to use for strings returned by this method.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of achievement resources to return in the response, used for paging. For any response, the actual number of achievement resources returned may be less than the specified maxResults.", - "format": "int32", - "minimum": "1", - "maximum": "200", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "The token returned by the previous request.", - "location": "query" + "snapshots": { + "methods": { + "get": { + "description": "Retrieves the metadata for a given snapshot ID.", + "httpMethod": "GET", + "id": "games.snapshots.get", + "parameterOrder": [ + "snapshotId" + ], + "parameters": { + "language": { + "description": "The preferred language to use for strings returned by this method.", + "location": "query", + "type": "string" + }, + "snapshotId": { + "description": "The ID of the snapshot.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "snapshots/{snapshotId}", + "response": { + "$ref": "Snapshot" + }, + "scopes": [ + "https://www.googleapis.com/auth/drive.appdata", + "https://www.googleapis.com/auth/games", + "https://www.googleapis.com/auth/plus.login" + ] + }, + "list": { + "description": "Retrieves a list of snapshots created by your application for the player corresponding to the player ID.", + "httpMethod": "GET", + "id": "games.snapshots.list", + "parameterOrder": [ + "playerId" + ], + "parameters": { + "language": { + "description": "The preferred language to use for strings returned by this method.", + "location": "query", + "type": "string" + }, + "maxResults": { + "description": "The maximum number of snapshot resources to return in the response, used for paging. For any response, the actual number of snapshot resources returned may be less than the specified maxResults.", + "format": "int32", + "location": "query", + "maximum": "25", + "minimum": "1", + "type": "integer" + }, + "pageToken": { + "description": "The token returned by the previous request.", + "location": "query", + "type": "string" + }, + "playerId": { + "description": "A player ID. A value of me may be used in place of the authenticated player's ID.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "players/{playerId}/snapshots", + "response": { + "$ref": "SnapshotListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/drive.appdata", + "https://www.googleapis.com/auth/games", + "https://www.googleapis.com/auth/plus.login" + ] + } + } + }, + "turnBasedMatches": { + "methods": { + "cancel": { + "description": "Cancel a turn-based match.", + "httpMethod": "PUT", + "id": "games.turnBasedMatches.cancel", + "parameterOrder": [ + "matchId" + ], + "parameters": { + "matchId": { + "description": "The ID of the match.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "turnbasedmatches/{matchId}/cancel", + "scopes": [ + "https://www.googleapis.com/auth/games", + "https://www.googleapis.com/auth/plus.login" + ] + }, + "create": { + "description": "Create a turn-based match.", + "httpMethod": "POST", + "id": "games.turnBasedMatches.create", + "parameters": { + "language": { + "description": "The preferred language to use for strings returned by this method.", + "location": "query", + "type": "string" + } + }, + "path": "turnbasedmatches/create", + "request": { + "$ref": "TurnBasedMatchCreateRequest" + }, + "response": { + "$ref": "TurnBasedMatch" + }, + "scopes": [ + "https://www.googleapis.com/auth/games", + "https://www.googleapis.com/auth/plus.login" + ] + }, + "decline": { + "description": "Decline an invitation to play a turn-based match.", + "httpMethod": "PUT", + "id": "games.turnBasedMatches.decline", + "parameterOrder": [ + "matchId" + ], + "parameters": { + "language": { + "description": "The preferred language to use for strings returned by this method.", + "location": "query", + "type": "string" + }, + "matchId": { + "description": "The ID of the match.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "turnbasedmatches/{matchId}/decline", + "response": { + "$ref": "TurnBasedMatch" + }, + "scopes": [ + "https://www.googleapis.com/auth/games", + "https://www.googleapis.com/auth/plus.login" + ] + }, + "dismiss": { + "description": "Dismiss a turn-based match from the match list. The match will no longer show up in the list and will not generate notifications.", + "httpMethod": "PUT", + "id": "games.turnBasedMatches.dismiss", + "parameterOrder": [ + "matchId" + ], + "parameters": { + "matchId": { + "description": "The ID of the match.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "turnbasedmatches/{matchId}/dismiss", + "scopes": [ + "https://www.googleapis.com/auth/games", + "https://www.googleapis.com/auth/plus.login" + ] + }, + "finish": { + "description": "Finish a turn-based match. Each player should make this call once, after all results are in. Only the player whose turn it is may make the first call to Finish, and can pass in the final match state.", + "httpMethod": "PUT", + "id": "games.turnBasedMatches.finish", + "parameterOrder": [ + "matchId" + ], + "parameters": { + "language": { + "description": "The preferred language to use for strings returned by this method.", + "location": "query", + "type": "string" + }, + "matchId": { + "description": "The ID of the match.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "turnbasedmatches/{matchId}/finish", + "request": { + "$ref": "TurnBasedMatchResults" + }, + "response": { + "$ref": "TurnBasedMatch" + }, + "scopes": [ + "https://www.googleapis.com/auth/games", + "https://www.googleapis.com/auth/plus.login" + ] + }, + "get": { + "description": "Get the data for a turn-based match.", + "httpMethod": "GET", + "id": "games.turnBasedMatches.get", + "parameterOrder": [ + "matchId" + ], + "parameters": { + "includeMatchData": { + "description": "Get match data along with metadata.", + "location": "query", + "type": "boolean" + }, + "language": { + "description": "The preferred language to use for strings returned by this method.", + "location": "query", + "type": "string" + }, + "matchId": { + "description": "The ID of the match.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "turnbasedmatches/{matchId}", + "response": { + "$ref": "TurnBasedMatch" + }, + "scopes": [ + "https://www.googleapis.com/auth/games", + "https://www.googleapis.com/auth/plus.login" + ] + }, + "join": { + "description": "Join a turn-based match.", + "httpMethod": "PUT", + "id": "games.turnBasedMatches.join", + "parameterOrder": [ + "matchId" + ], + "parameters": { + "language": { + "description": "The preferred language to use for strings returned by this method.", + "location": "query", + "type": "string" + }, + "matchId": { + "description": "The ID of the match.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "turnbasedmatches/{matchId}/join", + "response": { + "$ref": "TurnBasedMatch" + }, + "scopes": [ + "https://www.googleapis.com/auth/games", + "https://www.googleapis.com/auth/plus.login" + ] + }, + "leave": { + "description": "Leave a turn-based match when it is not the current player's turn, without canceling the match.", + "httpMethod": "PUT", + "id": "games.turnBasedMatches.leave", + "parameterOrder": [ + "matchId" + ], + "parameters": { + "language": { + "description": "The preferred language to use for strings returned by this method.", + "location": "query", + "type": "string" + }, + "matchId": { + "description": "The ID of the match.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "turnbasedmatches/{matchId}/leave", + "response": { + "$ref": "TurnBasedMatch" + }, + "scopes": [ + "https://www.googleapis.com/auth/games", + "https://www.googleapis.com/auth/plus.login" + ] + }, + "leaveTurn": { + "description": "Leave a turn-based match during the current player's turn, without canceling the match.", + "httpMethod": "PUT", + "id": "games.turnBasedMatches.leaveTurn", + "parameterOrder": [ + "matchId", + "matchVersion" + ], + "parameters": { + "language": { + "description": "The preferred language to use for strings returned by this method.", + "location": "query", + "type": "string" + }, + "matchId": { + "description": "The ID of the match.", + "location": "path", + "required": true, + "type": "string" + }, + "matchVersion": { + "description": "The version of the match being updated.", + "format": "int32", + "location": "query", + "required": true, + "type": "integer" + }, + "pendingParticipantId": { + "description": "The ID of another participant who should take their turn next. If not set, the match will wait for other player(s) to join via automatching; this is only valid if automatch criteria is set on the match with remaining slots for automatched players.", + "location": "query", + "type": "string" + } + }, + "path": "turnbasedmatches/{matchId}/leaveTurn", + "response": { + "$ref": "TurnBasedMatch" + }, + "scopes": [ + "https://www.googleapis.com/auth/games", + "https://www.googleapis.com/auth/plus.login" + ] + }, + "list": { + "description": "Returns turn-based matches the player is or was involved in.", + "httpMethod": "GET", + "id": "games.turnBasedMatches.list", + "parameters": { + "includeMatchData": { + "description": "True if match data should be returned in the response. Note that not all data will necessarily be returned if include_match_data is true; the server may decide to only return data for some of the matches to limit download size for the client. The remainder of the data for these matches will be retrievable on request.", + "location": "query", + "type": "boolean" + }, + "language": { + "description": "The preferred language to use for strings returned by this method.", + "location": "query", + "type": "string" + }, + "maxCompletedMatches": { + "description": "The maximum number of completed or canceled matches to return in the response. If not set, all matches returned could be completed or canceled.", + "format": "int32", + "location": "query", + "maximum": "500", + "minimum": "0", + "type": "integer" + }, + "maxResults": { + "description": "The maximum number of matches to return in the response, used for paging. For any response, the actual number of matches to return may be less than the specified maxResults.", + "format": "int32", + "location": "query", + "maximum": "500", + "minimum": "1", + "type": "integer" + }, + "pageToken": { + "description": "The token returned by the previous request.", + "location": "query", + "type": "string" + } + }, + "path": "turnbasedmatches", + "response": { + "$ref": "TurnBasedMatchList" + }, + "scopes": [ + "https://www.googleapis.com/auth/games", + "https://www.googleapis.com/auth/plus.login" + ] + }, + "rematch": { + "description": "Create a rematch of a match that was previously completed, with the same participants. This can be called by only one player on a match still in their list; the player must have called Finish first. Returns the newly created match; it will be the caller's turn.", + "httpMethod": "POST", + "id": "games.turnBasedMatches.rematch", + "parameterOrder": [ + "matchId" + ], + "parameters": { + "language": { + "description": "The preferred language to use for strings returned by this method.", + "location": "query", + "type": "string" + }, + "matchId": { + "description": "The ID of the match.", + "location": "path", + "required": true, + "type": "string" + }, + "requestId": { + "description": "A randomly generated numeric ID for each request specified by the caller. This number is used at the server to ensure that the request is handled correctly across retries.", + "format": "int64", + "location": "query", + "type": "string" + } + }, + "path": "turnbasedmatches/{matchId}/rematch", + "response": { + "$ref": "TurnBasedMatchRematch" + }, + "scopes": [ + "https://www.googleapis.com/auth/games", + "https://www.googleapis.com/auth/plus.login" + ] + }, + "sync": { + "description": "Returns turn-based matches the player is or was involved in that changed since the last sync call, with the least recent changes coming first. Matches that should be removed from the local cache will have a status of MATCH_DELETED.", + "httpMethod": "GET", + "id": "games.turnBasedMatches.sync", + "parameters": { + "includeMatchData": { + "description": "True if match data should be returned in the response. Note that not all data will necessarily be returned if include_match_data is true; the server may decide to only return data for some of the matches to limit download size for the client. The remainder of the data for these matches will be retrievable on request.", + "location": "query", + "type": "boolean" + }, + "language": { + "description": "The preferred language to use for strings returned by this method.", + "location": "query", + "type": "string" + }, + "maxCompletedMatches": { + "description": "The maximum number of completed or canceled matches to return in the response. If not set, all matches returned could be completed or canceled.", + "format": "int32", + "location": "query", + "maximum": "500", + "minimum": "0", + "type": "integer" + }, + "maxResults": { + "description": "The maximum number of matches to return in the response, used for paging. For any response, the actual number of matches to return may be less than the specified maxResults.", + "format": "int32", + "location": "query", + "maximum": "500", + "minimum": "1", + "type": "integer" + }, + "pageToken": { + "description": "The token returned by the previous request.", + "location": "query", + "type": "string" + } + }, + "path": "turnbasedmatches/sync", + "response": { + "$ref": "TurnBasedMatchSync" + }, + "scopes": [ + "https://www.googleapis.com/auth/games", + "https://www.googleapis.com/auth/plus.login" + ] + }, + "takeTurn": { + "description": "Commit the results of a player turn.", + "httpMethod": "PUT", + "id": "games.turnBasedMatches.takeTurn", + "parameterOrder": [ + "matchId" + ], + "parameters": { + "language": { + "description": "The preferred language to use for strings returned by this method.", + "location": "query", + "type": "string" + }, + "matchId": { + "description": "The ID of the match.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "turnbasedmatches/{matchId}/turn", + "request": { + "$ref": "TurnBasedMatchTurn" + }, + "response": { + "$ref": "TurnBasedMatch" + }, + "scopes": [ + "https://www.googleapis.com/auth/games", + "https://www.googleapis.com/auth/plus.login" + ] + } } - }, - "response": { - "$ref": "AchievementDefinitionsListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/games", - "https://www.googleapis.com/auth/plus.login" - ] } - } }, - "achievements": { - "methods": { - "increment": { - "id": "games.achievements.increment", - "path": "achievements/{achievementId}/increment", - "httpMethod": "POST", - "description": "Increments the steps of the achievement with the given ID for the currently authenticated player.", - "parameters": { - "achievementId": { - "type": "string", - "description": "The ID of the achievement used by this method.", - "required": true, - "location": "path" + "revision": "20180122", + "rootUrl": "https://www.googleapis.com/", + "schemas": { + "AchievementDefinition": { + "description": "This is a JSON template for an achievement definition object.", + "id": "AchievementDefinition", + "properties": { + "achievementType": { + "description": "The type of the achievement.\nPossible values are: \n- \"STANDARD\" - Achievement is either locked or unlocked. \n- \"INCREMENTAL\" - Achievement is incremental.", + "type": "string" + }, + "description": { + "description": "The description of the achievement.", + "type": "string" + }, + "experiencePoints": { + "description": "Experience points which will be earned when unlocking this achievement.", + "format": "int64", + "type": "string" + }, + "formattedTotalSteps": { + "description": "The total steps for an incremental achievement as a string.", + "type": "string" + }, + "id": { + "description": "The ID of the achievement.", + "type": "string" + }, + "initialState": { + "description": "The initial state of the achievement.\nPossible values are: \n- \"HIDDEN\" - Achievement is hidden. \n- \"REVEALED\" - Achievement is revealed. \n- \"UNLOCKED\" - Achievement is unlocked.", + "type": "string" + }, + "isRevealedIconUrlDefault": { + "description": "Indicates whether the revealed icon image being returned is a default image, or is provided by the game.", + "type": "boolean" + }, + "isUnlockedIconUrlDefault": { + "description": "Indicates whether the unlocked icon image being returned is a default image, or is game-provided.", + "type": "boolean" + }, + "kind": { + "default": "games#achievementDefinition", + "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#achievementDefinition.", + "type": "string" + }, + "name": { + "description": "The name of the achievement.", + "type": "string" + }, + "revealedIconUrl": { + "description": "The image URL for the revealed achievement icon.", + "type": "string" + }, + "totalSteps": { + "description": "The total steps for an incremental achievement.", + "format": "int32", + "type": "integer" + }, + "unlockedIconUrl": { + "description": "The image URL for the unlocked achievement icon.", + "type": "string" + } }, - "requestId": { - "type": "string", - "description": "A randomly generated numeric ID for each request specified by the caller. This number is used at the server to ensure that the request is handled correctly across retries.", - "format": "int64", - "location": "query" - }, - "stepsToIncrement": { - "type": "integer", - "description": "The number of steps to increment.", - "required": true, - "format": "int32", - "minimum": "1", - "location": "query" - } - }, - "parameterOrder": [ - "achievementId", - "stepsToIncrement" - ], - "response": { - "$ref": "AchievementIncrementResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/games", - "https://www.googleapis.com/auth/plus.login" - ] + "type": "object" }, - "list": { - "id": "games.achievements.list", - "path": "players/{playerId}/achievements", - "httpMethod": "GET", - "description": "Lists the progress for all your application's achievements for the currently authenticated player.", - "parameters": { - "language": { - "type": "string", - "description": "The preferred language to use for strings returned by this method.", - "location": "query" + "AchievementDefinitionsListResponse": { + "description": "This is a JSON template for a list of achievement definition objects.", + "id": "AchievementDefinitionsListResponse", + "properties": { + "items": { + "description": "The achievement definitions.", + "items": { + "$ref": "AchievementDefinition" + }, + "type": "array" + }, + "kind": { + "default": "games#achievementDefinitionsListResponse", + "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#achievementDefinitionsListResponse.", + "type": "string" + }, + "nextPageToken": { + "description": "Token corresponding to the next page of results.", + "type": "string" + } }, - "maxResults": { - "type": "integer", - "description": "The maximum number of achievement resources to return in the response, used for paging. For any response, the actual number of achievement resources returned may be less than the specified maxResults.", - "format": "int32", - "minimum": "1", - "maximum": "200", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "The token returned by the previous request.", - "location": "query" - }, - "playerId": { - "type": "string", - "description": "A player ID. A value of me may be used in place of the authenticated player's ID.", - "required": true, - "location": "path" - }, - "state": { - "type": "string", - "description": "Tells the server to return only achievements with the specified state. If this parameter isn't specified, all achievements are returned.", - "enum": [ - "ALL", - "HIDDEN", - "REVEALED", - "UNLOCKED" - ], - "enumDescriptions": [ - "List all achievements. This is the default.", - "List only hidden achievements.", - "List only revealed achievements.", - "List only unlocked achievements." - ], - "location": "query" - } - }, - "parameterOrder": [ - "playerId" - ], - "response": { - "$ref": "PlayerAchievementListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/games", - "https://www.googleapis.com/auth/plus.login" - ] + "type": "object" }, - "reveal": { - "id": "games.achievements.reveal", - "path": "achievements/{achievementId}/reveal", - "httpMethod": "POST", - "description": "Sets the state of the achievement with the given ID to REVEALED for the currently authenticated player.", - "parameters": { - "achievementId": { - "type": "string", - "description": "The ID of the achievement used by this method.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "achievementId" - ], - "response": { - "$ref": "AchievementRevealResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/games", - "https://www.googleapis.com/auth/plus.login" - ] - }, - "setStepsAtLeast": { - "id": "games.achievements.setStepsAtLeast", - "path": "achievements/{achievementId}/setStepsAtLeast", - "httpMethod": "POST", - "description": "Sets the steps for the currently authenticated player towards unlocking an achievement. If the steps parameter is less than the current number of steps that the player already gained for the achievement, the achievement is not modified.", - "parameters": { - "achievementId": { - "type": "string", - "description": "The ID of the achievement used by this method.", - "required": true, - "location": "path" + "AchievementIncrementResponse": { + "description": "This is a JSON template for an achievement increment response", + "id": "AchievementIncrementResponse", + "properties": { + "currentSteps": { + "description": "The current steps recorded for this incremental achievement.", + "format": "int32", + "type": "integer" + }, + "kind": { + "default": "games#achievementIncrementResponse", + "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#achievementIncrementResponse.", + "type": "string" + }, + "newlyUnlocked": { + "description": "Whether the current steps for the achievement has reached the number of steps required to unlock.", + "type": "boolean" + } }, - "steps": { - "type": "integer", - "description": "The minimum value to set the steps to.", - "required": true, - "format": "int32", - "minimum": "1", - "location": "query" - } - }, - "parameterOrder": [ - "achievementId", - "steps" - ], - "response": { - "$ref": "AchievementSetStepsAtLeastResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/games", - "https://www.googleapis.com/auth/plus.login" - ] + "type": "object" }, - "unlock": { - "id": "games.achievements.unlock", - "path": "achievements/{achievementId}/unlock", - "httpMethod": "POST", - "description": "Unlocks this achievement for the currently authenticated player.", - "parameters": { - "achievementId": { - "type": "string", - "description": "The ID of the achievement used by this method.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "achievementId" - ], - "response": { - "$ref": "AchievementUnlockResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/games", - "https://www.googleapis.com/auth/plus.login" - ] + "AchievementRevealResponse": { + "description": "This is a JSON template for an achievement reveal response", + "id": "AchievementRevealResponse", + "properties": { + "currentState": { + "description": "The current state of the achievement for which a reveal was attempted. This might be UNLOCKED if the achievement was already unlocked.\nPossible values are: \n- \"REVEALED\" - Achievement is revealed. \n- \"UNLOCKED\" - Achievement is unlocked.", + "type": "string" + }, + "kind": { + "default": "games#achievementRevealResponse", + "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#achievementRevealResponse.", + "type": "string" + } + }, + "type": "object" }, - "updateMultiple": { - "id": "games.achievements.updateMultiple", - "path": "achievements/updateMultiple", - "httpMethod": "POST", - "description": "Updates multiple achievements for the currently authenticated player.", - "request": { - "$ref": "AchievementUpdateMultipleRequest" - }, - "response": { - "$ref": "AchievementUpdateMultipleResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/games", - "https://www.googleapis.com/auth/plus.login" - ] + "AchievementSetStepsAtLeastResponse": { + "description": "This is a JSON template for an achievement set steps at least response.", + "id": "AchievementSetStepsAtLeastResponse", + "properties": { + "currentSteps": { + "description": "The current steps recorded for this incremental achievement.", + "format": "int32", + "type": "integer" + }, + "kind": { + "default": "games#achievementSetStepsAtLeastResponse", + "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#achievementSetStepsAtLeastResponse.", + "type": "string" + }, + "newlyUnlocked": { + "description": "Whether the the current steps for the achievement has reached the number of steps required to unlock.", + "type": "boolean" + } + }, + "type": "object" + }, + "AchievementUnlockResponse": { + "description": "This is a JSON template for an achievement unlock response", + "id": "AchievementUnlockResponse", + "properties": { + "kind": { + "default": "games#achievementUnlockResponse", + "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#achievementUnlockResponse.", + "type": "string" + }, + "newlyUnlocked": { + "description": "Whether this achievement was newly unlocked (that is, whether the unlock request for the achievement was the first for the player).", + "type": "boolean" + } + }, + "type": "object" + }, + "AchievementUpdateMultipleRequest": { + "description": "This is a JSON template for a list of achievement update requests.", + "id": "AchievementUpdateMultipleRequest", + "properties": { + "kind": { + "default": "games#achievementUpdateMultipleRequest", + "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#achievementUpdateMultipleRequest.", + "type": "string" + }, + "updates": { + "description": "The individual achievement update requests.", + "items": { + "$ref": "AchievementUpdateRequest" + }, + "type": "array" + } + }, + "type": "object" + }, + "AchievementUpdateMultipleResponse": { + "description": "This is a JSON template for an achievement unlock response.", + "id": "AchievementUpdateMultipleResponse", + "properties": { + "kind": { + "default": "games#achievementUpdateMultipleResponse", + "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#achievementUpdateListResponse.", + "type": "string" + }, + "updatedAchievements": { + "description": "The updated state of the achievements.", + "items": { + "$ref": "AchievementUpdateResponse" + }, + "type": "array" + } + }, + "type": "object" + }, + "AchievementUpdateRequest": { + "description": "This is a JSON template for a request to update an achievement.", + "id": "AchievementUpdateRequest", + "properties": { + "achievementId": { + "description": "The achievement this update is being applied to.", + "type": "string" + }, + "incrementPayload": { + "$ref": "GamesAchievementIncrement", + "description": "The payload if an update of type INCREMENT was requested for the achievement." + }, + "kind": { + "default": "games#achievementUpdateRequest", + "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#achievementUpdateRequest.", + "type": "string" + }, + "setStepsAtLeastPayload": { + "$ref": "GamesAchievementSetStepsAtLeast", + "description": "The payload if an update of type SET_STEPS_AT_LEAST was requested for the achievement." + }, + "updateType": { + "description": "The type of update being applied.\nPossible values are: \n- \"REVEAL\" - Achievement is revealed. \n- \"UNLOCK\" - Achievement is unlocked. \n- \"INCREMENT\" - Achievement is incremented. \n- \"SET_STEPS_AT_LEAST\" - Achievement progress is set to at least the passed value.", + "type": "string" + } + }, + "type": "object" + }, + "AchievementUpdateResponse": { + "description": "This is a JSON template for an achievement update response.", + "id": "AchievementUpdateResponse", + "properties": { + "achievementId": { + "description": "The achievement this update is was applied to.", + "type": "string" + }, + "currentState": { + "description": "The current state of the achievement.\nPossible values are: \n- \"HIDDEN\" - Achievement is hidden. \n- \"REVEALED\" - Achievement is revealed. \n- \"UNLOCKED\" - Achievement is unlocked.", + "type": "string" + }, + "currentSteps": { + "description": "The current steps recorded for this achievement if it is incremental.", + "format": "int32", + "type": "integer" + }, + "kind": { + "default": "games#achievementUpdateResponse", + "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#achievementUpdateResponse.", + "type": "string" + }, + "newlyUnlocked": { + "description": "Whether this achievement was newly unlocked (that is, whether the unlock request for the achievement was the first for the player).", + "type": "boolean" + }, + "updateOccurred": { + "description": "Whether the requested updates actually affected the achievement.", + "type": "boolean" + } + }, + "type": "object" + }, + "AggregateStats": { + "description": "This is a JSON template for aggregate stats.", + "id": "AggregateStats", + "properties": { + "count": { + "description": "The number of messages sent between a pair of peers.", + "format": "int64", + "type": "string" + }, + "kind": { + "default": "games#aggregateStats", + "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#aggregateStats.", + "type": "string" + }, + "max": { + "description": "The maximum amount.", + "format": "int64", + "type": "string" + }, + "min": { + "description": "The minimum amount.", + "format": "int64", + "type": "string" + }, + "sum": { + "description": "The total number of bytes sent for messages between a pair of peers.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "AnonymousPlayer": { + "description": "This is a JSON template for an anonymous player", + "id": "AnonymousPlayer", + "properties": { + "avatarImageUrl": { + "description": "The base URL for the image to display for the anonymous player.", + "type": "string" + }, + "displayName": { + "description": "The name to display for the anonymous player.", + "type": "string" + }, + "kind": { + "default": "games#anonymousPlayer", + "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#anonymousPlayer.", + "type": "string" + } + }, + "type": "object" + }, + "Application": { + "description": "This is a JSON template for the Application resource.", + "id": "Application", + "properties": { + "achievement_count": { + "description": "The number of achievements visible to the currently authenticated player.", + "format": "int32", + "type": "integer" + }, + "assets": { + "description": "The assets of the application.", + "items": { + "$ref": "ImageAsset" + }, + "type": "array" + }, + "author": { + "description": "The author of the application.", + "type": "string" + }, + "category": { + "$ref": "ApplicationCategory", + "description": "The category of the application." + }, + "description": { + "description": "The description of the application.", + "type": "string" + }, + "enabledFeatures": { + "description": "A list of features that have been enabled for the application.\nPossible values are: \n- \"SNAPSHOTS\" - Snapshots has been enabled", + "items": { + "type": "string" + }, + "type": "array" + }, + "id": { + "description": "The ID of the application.", + "type": "string" + }, + "instances": { + "description": "The instances of the application.", + "items": { + "$ref": "Instance" + }, + "type": "array" + }, + "kind": { + "default": "games#application", + "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#application.", + "type": "string" + }, + "lastUpdatedTimestamp": { + "description": "The last updated timestamp of the application.", + "format": "int64", + "type": "string" + }, + "leaderboard_count": { + "description": "The number of leaderboards visible to the currently authenticated player.", + "format": "int32", + "type": "integer" + }, + "name": { + "description": "The name of the application.", + "type": "string" + }, + "themeColor": { + "description": "A hint to the client UI for what color to use as an app-themed color. The color is given as an RGB triplet (e.g. \"E0E0E0\").", + "type": "string" + } + }, + "type": "object" + }, + "ApplicationCategory": { + "description": "This is a JSON template for an application category object.", + "id": "ApplicationCategory", + "properties": { + "kind": { + "default": "games#applicationCategory", + "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#applicationCategory.", + "type": "string" + }, + "primary": { + "description": "The primary category.", + "type": "string" + }, + "secondary": { + "description": "The secondary category.", + "type": "string" + } + }, + "type": "object" + }, + "ApplicationVerifyResponse": { + "description": "This is a JSON template for a third party application verification response resource.", + "id": "ApplicationVerifyResponse", + "properties": { + "alternate_player_id": { + "description": "An alternate ID that was once used for the player that was issued the auth token used in this request. (This field is not normally populated.)", + "type": "string" + }, + "kind": { + "default": "games#applicationVerifyResponse", + "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#applicationVerifyResponse.", + "type": "string" + }, + "player_id": { + "description": "The ID of the player that was issued the auth token used in this request.", + "type": "string" + } + }, + "type": "object" + }, + "Category": { + "description": "This is a JSON template for data related to individual game categories.", + "id": "Category", + "properties": { + "category": { + "description": "The category name.", + "type": "string" + }, + "experiencePoints": { + "description": "Experience points earned in this category.", + "format": "int64", + "type": "string" + }, + "kind": { + "default": "games#category", + "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#category.", + "type": "string" + } + }, + "type": "object" + }, + "CategoryListResponse": { + "description": "This is a JSON template for a list of category data objects.", + "id": "CategoryListResponse", + "properties": { + "items": { + "description": "The list of categories with usage data.", + "items": { + "$ref": "Category" + }, + "type": "array" + }, + "kind": { + "default": "games#categoryListResponse", + "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#categoryListResponse.", + "type": "string" + }, + "nextPageToken": { + "description": "Token corresponding to the next page of results.", + "type": "string" + } + }, + "type": "object" + }, + "EventBatchRecordFailure": { + "description": "This is a JSON template for a batch update failure resource.", + "id": "EventBatchRecordFailure", + "properties": { + "failureCause": { + "description": "The cause for the update failure.\nPossible values are: \n- \"TOO_LARGE\": A batch request was issued with more events than are allowed in a single batch. \n- \"TIME_PERIOD_EXPIRED\": A batch was sent with data too far in the past to record. \n- \"TIME_PERIOD_SHORT\": A batch was sent with a time range that was too short. \n- \"TIME_PERIOD_LONG\": A batch was sent with a time range that was too long. \n- \"ALREADY_UPDATED\": An attempt was made to record a batch of data which was already seen. \n- \"RECORD_RATE_HIGH\": An attempt was made to record data faster than the server will apply updates.", + "type": "string" + }, + "kind": { + "default": "games#eventBatchRecordFailure", + "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#eventBatchRecordFailure.", + "type": "string" + }, + "range": { + "$ref": "EventPeriodRange", + "description": "The time range which was rejected; empty for a request-wide failure." + } + }, + "type": "object" + }, + "EventChild": { + "description": "This is a JSON template for an event child relationship resource.", + "id": "EventChild", + "properties": { + "childId": { + "description": "The ID of the child event.", + "type": "string" + }, + "kind": { + "default": "games#eventChild", + "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#eventChild.", + "type": "string" + } + }, + "type": "object" + }, + "EventDefinition": { + "description": "This is a JSON template for an event definition resource.", + "id": "EventDefinition", + "properties": { + "childEvents": { + "description": "A list of events that are a child of this event.", + "items": { + "$ref": "EventChild" + }, + "type": "array" + }, + "description": { + "description": "Description of what this event represents.", + "type": "string" + }, + "displayName": { + "description": "The name to display for the event.", + "type": "string" + }, + "id": { + "description": "The ID of the event.", + "type": "string" + }, + "imageUrl": { + "description": "The base URL for the image that represents the event.", + "type": "string" + }, + "isDefaultImageUrl": { + "description": "Indicates whether the icon image being returned is a default image, or is game-provided.", + "type": "boolean" + }, + "kind": { + "default": "games#eventDefinition", + "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#eventDefinition.", + "type": "string" + }, + "visibility": { + "description": "The visibility of event being tracked in this definition.\nPossible values are: \n- \"REVEALED\": This event should be visible to all users. \n- \"HIDDEN\": This event should only be shown to users that have recorded this event at least once.", + "type": "string" + } + }, + "type": "object" + }, + "EventDefinitionListResponse": { + "description": "This is a JSON template for a ListDefinitions response.", + "id": "EventDefinitionListResponse", + "properties": { + "items": { + "description": "The event definitions.", + "items": { + "$ref": "EventDefinition" + }, + "type": "array" + }, + "kind": { + "default": "games#eventDefinitionListResponse", + "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#eventDefinitionListResponse.", + "type": "string" + }, + "nextPageToken": { + "description": "The pagination token for the next page of results.", + "type": "string" + } + }, + "type": "object" + }, + "EventPeriodRange": { + "description": "This is a JSON template for an event period time range.", + "id": "EventPeriodRange", + "properties": { + "kind": { + "default": "games#eventPeriodRange", + "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#eventPeriodRange.", + "type": "string" + }, + "periodEndMillis": { + "description": "The time when this update period ends, in millis, since 1970 UTC (Unix Epoch).", + "format": "int64", + "type": "string" + }, + "periodStartMillis": { + "description": "The time when this update period begins, in millis, since 1970 UTC (Unix Epoch).", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "EventPeriodUpdate": { + "description": "This is a JSON template for an event period update resource.", + "id": "EventPeriodUpdate", + "properties": { + "kind": { + "default": "games#eventPeriodUpdate", + "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#eventPeriodUpdate.", + "type": "string" + }, + "timePeriod": { + "$ref": "EventPeriodRange", + "description": "The time period being covered by this update." + }, + "updates": { + "description": "The updates being made for this time period.", + "items": { + "$ref": "EventUpdateRequest" + }, + "type": "array" + } + }, + "type": "object" + }, + "EventRecordFailure": { + "description": "This is a JSON template for an event update failure resource.", + "id": "EventRecordFailure", + "properties": { + "eventId": { + "description": "The ID of the event that was not updated.", + "type": "string" + }, + "failureCause": { + "description": "The cause for the update failure.\nPossible values are: \n- \"NOT_FOUND\" - An attempt was made to set an event that was not defined. \n- \"INVALID_UPDATE_VALUE\" - An attempt was made to increment an event by a non-positive value.", + "type": "string" + }, + "kind": { + "default": "games#eventRecordFailure", + "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#eventRecordFailure.", + "type": "string" + } + }, + "type": "object" + }, + "EventRecordRequest": { + "description": "This is a JSON template for an event period update resource.", + "id": "EventRecordRequest", + "properties": { + "currentTimeMillis": { + "description": "The current time when this update was sent, in milliseconds, since 1970 UTC (Unix Epoch).", + "format": "int64", + "type": "string" + }, + "kind": { + "default": "games#eventRecordRequest", + "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#eventRecordRequest.", + "type": "string" + }, + "requestId": { + "description": "The request ID used to identify this attempt to record events.", + "format": "int64", + "type": "string" + }, + "timePeriods": { + "description": "A list of the time period updates being made in this request.", + "items": { + "$ref": "EventPeriodUpdate" + }, + "type": "array" + } + }, + "type": "object" + }, + "EventUpdateRequest": { + "description": "This is a JSON template for an event period update resource.", + "id": "EventUpdateRequest", + "properties": { + "definitionId": { + "description": "The ID of the event being modified in this update.", + "type": "string" + }, + "kind": { + "default": "games#eventUpdateRequest", + "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#eventUpdateRequest.", + "type": "string" + }, + "updateCount": { + "description": "The number of times this event occurred in this time period.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "EventUpdateResponse": { + "description": "This is a JSON template for an event period update resource.", + "id": "EventUpdateResponse", + "properties": { + "batchFailures": { + "description": "Any batch-wide failures which occurred applying updates.", + "items": { + "$ref": "EventBatchRecordFailure" + }, + "type": "array" + }, + "eventFailures": { + "description": "Any failures updating a particular event.", + "items": { + "$ref": "EventRecordFailure" + }, + "type": "array" + }, + "kind": { + "default": "games#eventUpdateResponse", + "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#eventUpdateResponse.", + "type": "string" + }, + "playerEvents": { + "description": "The current status of any updated events", + "items": { + "$ref": "PlayerEvent" + }, + "type": "array" + } + }, + "type": "object" + }, + "GamesAchievementIncrement": { + "description": "This is a JSON template for the payload to request to increment an achievement.", + "id": "GamesAchievementIncrement", + "properties": { + "kind": { + "default": "games#GamesAchievementIncrement", + "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#GamesAchievementIncrement.", + "type": "string" + }, + "requestId": { + "description": "The requestId associated with an increment to an achievement.", + "format": "int64", + "type": "string" + }, + "steps": { + "description": "The number of steps to be incremented.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "GamesAchievementSetStepsAtLeast": { + "description": "This is a JSON template for the payload to request to increment an achievement.", + "id": "GamesAchievementSetStepsAtLeast", + "properties": { + "kind": { + "default": "games#GamesAchievementSetStepsAtLeast", + "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#GamesAchievementSetStepsAtLeast.", + "type": "string" + }, + "steps": { + "description": "The minimum number of steps for the achievement to be set to.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "ImageAsset": { + "description": "This is a JSON template for an image asset object.", + "id": "ImageAsset", + "properties": { + "height": { + "description": "The height of the asset.", + "format": "int32", + "type": "integer" + }, + "kind": { + "default": "games#imageAsset", + "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#imageAsset.", + "type": "string" + }, + "name": { + "description": "The name of the asset.", + "type": "string" + }, + "url": { + "description": "The URL of the asset.", + "type": "string" + }, + "width": { + "description": "The width of the asset.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "Instance": { + "description": "This is a JSON template for the Instance resource.", + "id": "Instance", + "properties": { + "acquisitionUri": { + "description": "URI which shows where a user can acquire this instance.", + "type": "string" + }, + "androidInstance": { + "$ref": "InstanceAndroidDetails", + "description": "Platform dependent details for Android." + }, + "iosInstance": { + "$ref": "InstanceIosDetails", + "description": "Platform dependent details for iOS." + }, + "kind": { + "default": "games#instance", + "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#instance.", + "type": "string" + }, + "name": { + "description": "Localized display name.", + "type": "string" + }, + "platformType": { + "description": "The platform type.\nPossible values are: \n- \"ANDROID\" - Instance is for Android. \n- \"IOS\" - Instance is for iOS \n- \"WEB_APP\" - Instance is for Web App.", + "type": "string" + }, + "realtimePlay": { + "description": "Flag to show if this game instance supports realtime play.", + "type": "boolean" + }, + "turnBasedPlay": { + "description": "Flag to show if this game instance supports turn based play.", + "type": "boolean" + }, + "webInstance": { + "$ref": "InstanceWebDetails", + "description": "Platform dependent details for Web." + } + }, + "type": "object" + }, + "InstanceAndroidDetails": { + "description": "This is a JSON template for the Android instance details resource.", + "id": "InstanceAndroidDetails", + "properties": { + "enablePiracyCheck": { + "description": "Flag indicating whether the anti-piracy check is enabled.", + "type": "boolean" + }, + "kind": { + "default": "games#instanceAndroidDetails", + "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#instanceAndroidDetails.", + "type": "string" + }, + "packageName": { + "description": "Android package name which maps to Google Play URL.", + "type": "string" + }, + "preferred": { + "description": "Indicates that this instance is the default for new installations.", + "type": "boolean" + } + }, + "type": "object" + }, + "InstanceIosDetails": { + "description": "This is a JSON template for the iOS details resource.", + "id": "InstanceIosDetails", + "properties": { + "bundleIdentifier": { + "description": "Bundle identifier.", + "type": "string" + }, + "itunesAppId": { + "description": "iTunes App ID.", + "type": "string" + }, + "kind": { + "default": "games#instanceIosDetails", + "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#instanceIosDetails.", + "type": "string" + }, + "preferredForIpad": { + "description": "Indicates that this instance is the default for new installations on iPad devices.", + "type": "boolean" + }, + "preferredForIphone": { + "description": "Indicates that this instance is the default for new installations on iPhone devices.", + "type": "boolean" + }, + "supportIpad": { + "description": "Flag to indicate if this instance supports iPad.", + "type": "boolean" + }, + "supportIphone": { + "description": "Flag to indicate if this instance supports iPhone.", + "type": "boolean" + } + }, + "type": "object" + }, + "InstanceWebDetails": { + "description": "This is a JSON template for the Web details resource.", + "id": "InstanceWebDetails", + "properties": { + "kind": { + "default": "games#instanceWebDetails", + "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#instanceWebDetails.", + "type": "string" + }, + "launchUrl": { + "description": "Launch URL for the game.", + "type": "string" + }, + "preferred": { + "description": "Indicates that this instance is the default for new installations.", + "type": "boolean" + } + }, + "type": "object" + }, + "Leaderboard": { + "description": "This is a JSON template for the Leaderboard resource.", + "id": "Leaderboard", + "properties": { + "iconUrl": { + "description": "The icon for the leaderboard.", + "type": "string" + }, + "id": { + "description": "The leaderboard ID.", + "type": "string" + }, + "isIconUrlDefault": { + "description": "Indicates whether the icon image being returned is a default image, or is game-provided.", + "type": "boolean" + }, + "kind": { + "default": "games#leaderboard", + "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#leaderboard.", + "type": "string" + }, + "name": { + "description": "The name of the leaderboard.", + "type": "string" + }, + "order": { + "description": "How scores are ordered.\nPossible values are: \n- \"LARGER_IS_BETTER\" - Larger values are better; scores are sorted in descending order. \n- \"SMALLER_IS_BETTER\" - Smaller values are better; scores are sorted in ascending order.", + "type": "string" + } + }, + "type": "object" + }, + "LeaderboardEntry": { + "description": "This is a JSON template for the Leaderboard Entry resource.", + "id": "LeaderboardEntry", + "properties": { + "formattedScore": { + "description": "The localized string for the numerical value of this score.", + "type": "string" + }, + "formattedScoreRank": { + "description": "The localized string for the rank of this score for this leaderboard.", + "type": "string" + }, + "kind": { + "default": "games#leaderboardEntry", + "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#leaderboardEntry.", + "type": "string" + }, + "player": { + "$ref": "Player", + "description": "The player who holds this score." + }, + "scoreRank": { + "description": "The rank of this score for this leaderboard.", + "format": "int64", + "type": "string" + }, + "scoreTag": { + "description": "Additional information about the score. Values must contain no more than 64 URI-safe characters as defined by section 2.3 of RFC 3986.", + "type": "string" + }, + "scoreValue": { + "description": "The numerical value of this score.", + "format": "int64", + "type": "string" + }, + "timeSpan": { + "description": "The time span of this high score.\nPossible values are: \n- \"ALL_TIME\" - The score is an all-time high score. \n- \"WEEKLY\" - The score is a weekly high score. \n- \"DAILY\" - The score is a daily high score.", + "type": "string" + }, + "writeTimestampMillis": { + "description": "The timestamp at which this score was recorded, in milliseconds since the epoch in UTC.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "LeaderboardListResponse": { + "description": "This is a JSON template for a list of leaderboard objects.", + "id": "LeaderboardListResponse", + "properties": { + "items": { + "description": "The leaderboards.", + "items": { + "$ref": "Leaderboard" + }, + "type": "array" + }, + "kind": { + "default": "games#leaderboardListResponse", + "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#leaderboardListResponse.", + "type": "string" + }, + "nextPageToken": { + "description": "Token corresponding to the next page of results.", + "type": "string" + } + }, + "type": "object" + }, + "LeaderboardScoreRank": { + "description": "This is a JSON template for a score rank in a leaderboard.", + "id": "LeaderboardScoreRank", + "properties": { + "formattedNumScores": { + "description": "The number of scores in the leaderboard as a string.", + "type": "string" + }, + "formattedRank": { + "description": "The rank in the leaderboard as a string.", + "type": "string" + }, + "kind": { + "default": "games#leaderboardScoreRank", + "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#leaderboardScoreRank.", + "type": "string" + }, + "numScores": { + "description": "The number of scores in the leaderboard.", + "format": "int64", + "type": "string" + }, + "rank": { + "description": "The rank in the leaderboard.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "LeaderboardScores": { + "description": "This is a JSON template for a ListScores response.", + "id": "LeaderboardScores", + "properties": { + "items": { + "description": "The scores in the leaderboard.", + "items": { + "$ref": "LeaderboardEntry" + }, + "type": "array" + }, + "kind": { + "default": "games#leaderboardScores", + "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#leaderboardScores.", + "type": "string" + }, + "nextPageToken": { + "description": "The pagination token for the next page of results.", + "type": "string" + }, + "numScores": { + "description": "The total number of scores in the leaderboard.", + "format": "int64", + "type": "string" + }, + "playerScore": { + "$ref": "LeaderboardEntry", + "description": "The score of the requesting player on the leaderboard. The player's score may appear both here and in the list of scores above. If you are viewing a public leaderboard and the player is not sharing their gameplay information publicly, the scoreRank and formattedScoreRank values will not be present." + }, + "prevPageToken": { + "description": "The pagination token for the previous page of results.", + "type": "string" + } + }, + "type": "object" + }, + "MetagameConfig": { + "description": "This is a JSON template for the metagame config resource", + "id": "MetagameConfig", + "properties": { + "currentVersion": { + "description": "Current version of the metagame configuration data. When this data is updated, the version number will be increased by one.", + "format": "int32", + "type": "integer" + }, + "kind": { + "default": "games#metagameConfig", + "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#metagameConfig.", + "type": "string" + }, + "playerLevels": { + "description": "The list of player levels.", + "items": { + "$ref": "PlayerLevel" + }, + "type": "array" + } + }, + "type": "object" + }, + "NetworkDiagnostics": { + "description": "This is a JSON template for network diagnostics reported for a client.", + "id": "NetworkDiagnostics", + "properties": { + "androidNetworkSubtype": { + "description": "The Android network subtype.", + "format": "int32", + "type": "integer" + }, + "androidNetworkType": { + "description": "The Android network type.", + "format": "int32", + "type": "integer" + }, + "iosNetworkType": { + "description": "iOS network type as defined in Reachability.h.", + "format": "int32", + "type": "integer" + }, + "kind": { + "default": "games#networkDiagnostics", + "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#networkDiagnostics.", + "type": "string" + }, + "networkOperatorCode": { + "description": "The MCC+MNC code for the client's network connection. On Android: http://developer.android.com/reference/android/telephony/TelephonyManager.html#getNetworkOperator() On iOS, see: https://developer.apple.com/library/ios/documentation/NetworkingInternet/Reference/CTCarrier/Reference/Reference.html", + "type": "string" + }, + "networkOperatorName": { + "description": "The name of the carrier of the client's network connection. On Android: http://developer.android.com/reference/android/telephony/TelephonyManager.html#getNetworkOperatorName() On iOS: https://developer.apple.com/library/ios/documentation/NetworkingInternet/Reference/CTCarrier/Reference/Reference.html#//apple_ref/occ/instp/CTCarrier/carrierName", + "type": "string" + }, + "registrationLatencyMillis": { + "description": "The amount of time in milliseconds it took for the client to establish a connection with the XMPP server.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "ParticipantResult": { + "description": "This is a JSON template for a result for a match participant.", + "id": "ParticipantResult", + "properties": { + "kind": { + "default": "games#participantResult", + "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#participantResult.", + "type": "string" + }, + "participantId": { + "description": "The ID of the participant.", + "type": "string" + }, + "placing": { + "description": "The placement or ranking of the participant in the match results; a number from one to the number of participants in the match. Multiple participants may have the same placing value in case of a type.", + "format": "int32", + "type": "integer" + }, + "result": { + "description": "The result of the participant for this match.\nPossible values are: \n- \"MATCH_RESULT_WIN\" - The participant won the match. \n- \"MATCH_RESULT_LOSS\" - The participant lost the match. \n- \"MATCH_RESULT_TIE\" - The participant tied the match. \n- \"MATCH_RESULT_NONE\" - There was no winner for the match (nobody wins or loses this kind of game.) \n- \"MATCH_RESULT_DISCONNECT\" - The participant disconnected / left during the match. \n- \"MATCH_RESULT_DISAGREED\" - Different clients reported different results for this participant.", + "type": "string" + } + }, + "type": "object" + }, + "PeerChannelDiagnostics": { + "description": "This is a JSON template for peer channel diagnostics.", + "id": "PeerChannelDiagnostics", + "properties": { + "bytesReceived": { + "$ref": "AggregateStats", + "description": "Number of bytes received." + }, + "bytesSent": { + "$ref": "AggregateStats", + "description": "Number of bytes sent." + }, + "kind": { + "default": "games#peerChannelDiagnostics", + "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#peerChannelDiagnostics.", + "type": "string" + }, + "numMessagesLost": { + "description": "Number of messages lost.", + "format": "int32", + "type": "integer" + }, + "numMessagesReceived": { + "description": "Number of messages received.", + "format": "int32", + "type": "integer" + }, + "numMessagesSent": { + "description": "Number of messages sent.", + "format": "int32", + "type": "integer" + }, + "numSendFailures": { + "description": "Number of send failures.", + "format": "int32", + "type": "integer" + }, + "roundtripLatencyMillis": { + "$ref": "AggregateStats", + "description": "Roundtrip latency stats in milliseconds." + } + }, + "type": "object" + }, + "PeerSessionDiagnostics": { + "description": "This is a JSON template for peer session diagnostics.", + "id": "PeerSessionDiagnostics", + "properties": { + "connectedTimestampMillis": { + "description": "Connected time in milliseconds.", + "format": "int64", + "type": "string" + }, + "kind": { + "default": "games#peerSessionDiagnostics", + "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#peerSessionDiagnostics.", + "type": "string" + }, + "participantId": { + "description": "The participant ID of the peer.", + "type": "string" + }, + "reliableChannel": { + "$ref": "PeerChannelDiagnostics", + "description": "Reliable channel diagnostics." + }, + "unreliableChannel": { + "$ref": "PeerChannelDiagnostics", + "description": "Unreliable channel diagnostics." + } + }, + "type": "object" + }, + "Played": { + "description": "This is a JSON template for metadata about a player playing a game with the currently authenticated user.", + "id": "Played", + "properties": { + "autoMatched": { + "description": "True if the player was auto-matched with the currently authenticated user.", + "type": "boolean" + }, + "kind": { + "default": "games#played", + "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#played.", + "type": "string" + }, + "timeMillis": { + "description": "The last time the player played the game in milliseconds since the epoch in UTC.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "Player": { + "description": "This is a JSON template for a Player resource.", + "id": "Player", + "properties": { + "avatarImageUrl": { + "description": "The base URL for the image that represents the player.", + "type": "string" + }, + "bannerUrlLandscape": { + "description": "The url to the landscape mode player banner image.", + "type": "string" + }, + "bannerUrlPortrait": { + "description": "The url to the portrait mode player banner image.", + "type": "string" + }, + "displayName": { + "description": "The name to display for the player.", + "type": "string" + }, + "experienceInfo": { + "$ref": "PlayerExperienceInfo", + "description": "An object to represent Play Game experience information for the player." + }, + "kind": { + "default": "games#player", + "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#player.", + "type": "string" + }, + "lastPlayedWith": { + "$ref": "Played", + "description": "Details about the last time this player played a multiplayer game with the currently authenticated player. Populated for PLAYED_WITH player collection members." + }, + "name": { + "description": "An object representation of the individual components of the player's name. For some players, these fields may not be present.", + "properties": { + "familyName": { + "description": "The family name of this player. In some places, this is known as the last name.", + "type": "string" + }, + "givenName": { + "description": "The given name of this player. In some places, this is known as the first name.", + "type": "string" + } + }, + "type": "object" + }, + "originalPlayerId": { + "description": "The player ID that was used for this player the first time they signed into the game in question. This is only populated for calls to player.get for the requesting player, only if the player ID has subsequently changed, and only to clients that support remapping player IDs.", + "type": "string" + }, + "playerId": { + "description": "The ID of the player.", + "type": "string" + }, + "profileSettings": { + "$ref": "ProfileSettings", + "description": "The player's profile settings. Controls whether or not the player's profile is visible to other players." + }, + "title": { + "description": "The player's title rewarded for their game activities.", + "type": "string" + } + }, + "type": "object" + }, + "PlayerAchievement": { + "description": "This is a JSON template for an achievement object.", + "id": "PlayerAchievement", + "properties": { + "achievementState": { + "description": "The state of the achievement.\nPossible values are: \n- \"HIDDEN\" - Achievement is hidden. \n- \"REVEALED\" - Achievement is revealed. \n- \"UNLOCKED\" - Achievement is unlocked.", + "type": "string" + }, + "currentSteps": { + "description": "The current steps for an incremental achievement.", + "format": "int32", + "type": "integer" + }, + "experiencePoints": { + "description": "Experience points earned for the achievement. This field is absent for achievements that have not yet been unlocked and 0 for achievements that have been unlocked by testers but that are unpublished.", + "format": "int64", + "type": "string" + }, + "formattedCurrentStepsString": { + "description": "The current steps for an incremental achievement as a string.", + "type": "string" + }, + "id": { + "description": "The ID of the achievement.", + "type": "string" + }, + "kind": { + "default": "games#playerAchievement", + "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#playerAchievement.", + "type": "string" + }, + "lastUpdatedTimestamp": { + "description": "The timestamp of the last modification to this achievement's state.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "PlayerAchievementListResponse": { + "description": "This is a JSON template for a list of achievement objects.", + "id": "PlayerAchievementListResponse", + "properties": { + "items": { + "description": "The achievements.", + "items": { + "$ref": "PlayerAchievement" + }, + "type": "array" + }, + "kind": { + "default": "games#playerAchievementListResponse", + "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#playerAchievementListResponse.", + "type": "string" + }, + "nextPageToken": { + "description": "Token corresponding to the next page of results.", + "type": "string" + } + }, + "type": "object" + }, + "PlayerEvent": { + "description": "This is a JSON template for an event status resource.", + "id": "PlayerEvent", + "properties": { + "definitionId": { + "description": "The ID of the event definition.", + "type": "string" + }, + "formattedNumEvents": { + "description": "The current number of times this event has occurred, as a string. The formatting of this string depends on the configuration of your event in the Play Games Developer Console.", + "type": "string" + }, + "kind": { + "default": "games#playerEvent", + "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#playerEvent.", + "type": "string" + }, + "numEvents": { + "description": "The current number of times this event has occurred.", + "format": "int64", + "type": "string" + }, + "playerId": { + "description": "The ID of the player.", + "type": "string" + } + }, + "type": "object" + }, + "PlayerEventListResponse": { + "description": "This is a JSON template for a ListByPlayer response.", + "id": "PlayerEventListResponse", + "properties": { + "items": { + "description": "The player events.", + "items": { + "$ref": "PlayerEvent" + }, + "type": "array" + }, + "kind": { + "default": "games#playerEventListResponse", + "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#playerEventListResponse.", + "type": "string" + }, + "nextPageToken": { + "description": "The pagination token for the next page of results.", + "type": "string" + } + }, + "type": "object" + }, + "PlayerExperienceInfo": { + "description": "This is a JSON template for 1P/3P metadata about the player's experience.", + "id": "PlayerExperienceInfo", + "properties": { + "currentExperiencePoints": { + "description": "The current number of experience points for the player.", + "format": "int64", + "type": "string" + }, + "currentLevel": { + "$ref": "PlayerLevel", + "description": "The current level of the player." + }, + "kind": { + "default": "games#playerExperienceInfo", + "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#playerExperienceInfo.", + "type": "string" + }, + "lastLevelUpTimestampMillis": { + "description": "The timestamp when the player was leveled up, in millis since Unix epoch UTC.", + "format": "int64", + "type": "string" + }, + "nextLevel": { + "$ref": "PlayerLevel", + "description": "The next level of the player. If the current level is the maximum level, this should be same as the current level." + } + }, + "type": "object" + }, + "PlayerLeaderboardScore": { + "description": "This is a JSON template for a player leaderboard score object.", + "id": "PlayerLeaderboardScore", + "properties": { + "kind": { + "default": "games#playerLeaderboardScore", + "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#playerLeaderboardScore.", + "type": "string" + }, + "leaderboard_id": { + "description": "The ID of the leaderboard this score is in.", + "type": "string" + }, + "publicRank": { + "$ref": "LeaderboardScoreRank", + "description": "The public rank of the score in this leaderboard. This object will not be present if the user is not sharing their scores publicly." + }, + "scoreString": { + "description": "The formatted value of this score.", + "type": "string" + }, + "scoreTag": { + "description": "Additional information about the score. Values must contain no more than 64 URI-safe characters as defined by section 2.3 of RFC 3986.", + "type": "string" + }, + "scoreValue": { + "description": "The numerical value of this score.", + "format": "int64", + "type": "string" + }, + "socialRank": { + "$ref": "LeaderboardScoreRank", + "description": "The social rank of the score in this leaderboard." + }, + "timeSpan": { + "description": "The time span of this score.\nPossible values are: \n- \"ALL_TIME\" - The score is an all-time score. \n- \"WEEKLY\" - The score is a weekly score. \n- \"DAILY\" - The score is a daily score.", + "type": "string" + }, + "writeTimestamp": { + "description": "The timestamp at which this score was recorded, in milliseconds since the epoch in UTC.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "PlayerLeaderboardScoreListResponse": { + "description": "This is a JSON template for a list of player leaderboard scores.", + "id": "PlayerLeaderboardScoreListResponse", + "properties": { + "items": { + "description": "The leaderboard scores.", + "items": { + "$ref": "PlayerLeaderboardScore" + }, + "type": "array" + }, + "kind": { + "default": "games#playerLeaderboardScoreListResponse", + "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#playerLeaderboardScoreListResponse.", + "type": "string" + }, + "nextPageToken": { + "description": "The pagination token for the next page of results.", + "type": "string" + }, + "player": { + "$ref": "Player", + "description": "The Player resources for the owner of this score." + } + }, + "type": "object" + }, + "PlayerLevel": { + "description": "This is a JSON template for 1P/3P metadata about a user's level.", + "id": "PlayerLevel", + "properties": { + "kind": { + "default": "games#playerLevel", + "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#playerLevel.", + "type": "string" + }, + "level": { + "description": "The level for the user.", + "format": "int32", + "type": "integer" + }, + "maxExperiencePoints": { + "description": "The maximum experience points for this level.", + "format": "int64", + "type": "string" + }, + "minExperiencePoints": { + "description": "The minimum experience points for this level.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "PlayerListResponse": { + "description": "This is a JSON template for a third party player list response.", + "id": "PlayerListResponse", + "properties": { + "items": { + "description": "The players.", + "items": { + "$ref": "Player" + }, + "type": "array" + }, + "kind": { + "default": "games#playerListResponse", + "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#playerListResponse.", + "type": "string" + }, + "nextPageToken": { + "description": "Token corresponding to the next page of results.", + "type": "string" + } + }, + "type": "object" + }, + "PlayerScore": { + "description": "This is a JSON template for a player score.", + "id": "PlayerScore", + "properties": { + "formattedScore": { + "description": "The formatted score for this player score.", + "type": "string" + }, + "kind": { + "default": "games#playerScore", + "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#playerScore.", + "type": "string" + }, + "score": { + "description": "The numerical value for this player score.", + "format": "int64", + "type": "string" + }, + "scoreTag": { + "description": "Additional information about this score. Values will contain no more than 64 URI-safe characters as defined by section 2.3 of RFC 3986.", + "type": "string" + }, + "timeSpan": { + "description": "The time span for this player score.\nPossible values are: \n- \"ALL_TIME\" - The score is an all-time score. \n- \"WEEKLY\" - The score is a weekly score. \n- \"DAILY\" - The score is a daily score.", + "type": "string" + } + }, + "type": "object" + }, + "PlayerScoreListResponse": { + "description": "This is a JSON template for a list of score submission statuses.", + "id": "PlayerScoreListResponse", + "properties": { + "kind": { + "default": "games#playerScoreListResponse", + "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#playerScoreListResponse.", + "type": "string" + }, + "submittedScores": { + "description": "The score submissions statuses.", + "items": { + "$ref": "PlayerScoreResponse" + }, + "type": "array" + } + }, + "type": "object" + }, + "PlayerScoreResponse": { + "description": "This is a JSON template for a list of leaderboard entry resources.", + "id": "PlayerScoreResponse", + "properties": { + "beatenScoreTimeSpans": { + "description": "The time spans where the submitted score is better than the existing score for that time span.\nPossible values are: \n- \"ALL_TIME\" - The score is an all-time score. \n- \"WEEKLY\" - The score is a weekly score. \n- \"DAILY\" - The score is a daily score.", + "items": { + "type": "string" + }, + "type": "array" + }, + "formattedScore": { + "description": "The formatted value of the submitted score.", + "type": "string" + }, + "kind": { + "default": "games#playerScoreResponse", + "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#playerScoreResponse.", + "type": "string" + }, + "leaderboardId": { + "description": "The leaderboard ID that this score was submitted to.", + "type": "string" + }, + "scoreTag": { + "description": "Additional information about this score. Values will contain no more than 64 URI-safe characters as defined by section 2.3 of RFC 3986.", + "type": "string" + }, + "unbeatenScores": { + "description": "The scores in time spans that have not been beaten. As an example, the submitted score may be better than the player's DAILY score, but not better than the player's scores for the WEEKLY or ALL_TIME time spans.", + "items": { + "$ref": "PlayerScore" + }, + "type": "array" + } + }, + "type": "object" + }, + "PlayerScoreSubmissionList": { + "description": "This is a JSON template for a list of score submission requests", + "id": "PlayerScoreSubmissionList", + "properties": { + "kind": { + "default": "games#playerScoreSubmissionList", + "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#playerScoreSubmissionList.", + "type": "string" + }, + "scores": { + "description": "The score submissions.", + "items": { + "$ref": "ScoreSubmission" + }, + "type": "array" + } + }, + "type": "object" + }, + "ProfileSettings": { + "description": "This is a JSON template for profile settings", + "id": "ProfileSettings", + "properties": { + "kind": { + "default": "games#profileSettings", + "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#profileSettings.", + "type": "string" + }, + "profileVisible": { + "description": "The player's current profile visibility. This field is visible to both 1P and 3P APIs.", + "type": "boolean" + } + }, + "type": "object" + }, + "PushToken": { + "description": "This is a JSON template for a push token resource.", + "id": "PushToken", + "properties": { + "clientRevision": { + "description": "The revision of the client SDK used by your application, in the same format that's used by revisions.check. Used to send backward compatible messages. Format: [PLATFORM_TYPE]:[VERSION_NUMBER]. Possible values of PLATFORM_TYPE are: \n- IOS - Push token is for iOS", + "type": "string" + }, + "id": { + "$ref": "PushTokenId", + "description": "Unique identifier for this push token." + }, + "kind": { + "default": "games#pushToken", + "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#pushToken.", + "type": "string" + }, + "language": { + "description": "The preferred language for notifications that are sent using this token.", + "type": "string" + } + }, + "type": "object" + }, + "PushTokenId": { + "description": "This is a JSON template for a push token ID resource.", + "id": "PushTokenId", + "properties": { + "ios": { + "description": "A push token ID for iOS devices.", + "properties": { + "apns_device_token": { + "description": "Device token supplied by an iOS system call to register for remote notifications. Encode this field as web-safe base64.", + "format": "byte", + "type": "string" + }, + "apns_environment": { + "description": "Indicates whether this token should be used for the production or sandbox APNS server.", + "type": "string" + } + }, + "type": "object" + }, + "kind": { + "default": "games#pushTokenId", + "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#pushTokenId.", + "type": "string" + } + }, + "type": "object" + }, + "Quest": { + "description": "This is a JSON template for a Quest resource.", + "id": "Quest", + "properties": { + "acceptedTimestampMillis": { + "description": "The timestamp at which the user accepted the quest in milliseconds since the epoch in UTC. Only present if the player has accepted the quest.", + "format": "int64", + "type": "string" + }, + "applicationId": { + "description": "The ID of the application this quest is part of.", + "type": "string" + }, + "bannerUrl": { + "description": "The banner image URL for the quest.", + "type": "string" + }, + "description": { + "description": "The description of the quest.", + "type": "string" + }, + "endTimestampMillis": { + "description": "The timestamp at which the quest ceases to be active in milliseconds since the epoch in UTC.", + "format": "int64", + "type": "string" + }, + "iconUrl": { + "description": "The icon image URL for the quest.", + "type": "string" + }, + "id": { + "description": "The ID of the quest.", + "type": "string" + }, + "isDefaultBannerUrl": { + "description": "Indicates whether the banner image being returned is a default image, or is game-provided.", + "type": "boolean" + }, + "isDefaultIconUrl": { + "description": "Indicates whether the icon image being returned is a default image, or is game-provided.", + "type": "boolean" + }, + "kind": { + "default": "games#quest", + "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#quest.", + "type": "string" + }, + "lastUpdatedTimestampMillis": { + "description": "The timestamp at which the quest was last updated by the user in milliseconds since the epoch in UTC. Only present if the player has accepted the quest.", + "format": "int64", + "type": "string" + }, + "milestones": { + "description": "The quest milestones.", + "items": { + "$ref": "QuestMilestone" + }, + "type": "array" + }, + "name": { + "description": "The name of the quest.", + "type": "string" + }, + "notifyTimestampMillis": { + "description": "The timestamp at which the user should be notified that the quest will end soon in milliseconds since the epoch in UTC.", + "format": "int64", + "type": "string" + }, + "startTimestampMillis": { + "description": "The timestamp at which the quest becomes active in milliseconds since the epoch in UTC.", + "format": "int64", + "type": "string" + }, + "state": { + "description": "The state of the quest.\nPossible values are: \n- \"UPCOMING\": The quest is upcoming. The user can see the quest, but cannot accept it until it is open. \n- \"OPEN\": The quest is currently open and may be accepted at this time. \n- \"ACCEPTED\": The user is currently participating in this quest. \n- \"COMPLETED\": The user has completed the quest. \n- \"FAILED\": The quest was attempted but was not completed before the deadline expired. \n- \"EXPIRED\": The quest has expired and was not accepted. \n- \"DELETED\": The quest should be deleted from the local database.", + "type": "string" + } + }, + "type": "object" + }, + "QuestContribution": { + "description": "This is a JSON template for a Quest Criterion Contribution resource.", + "id": "QuestContribution", + "properties": { + "formattedValue": { + "description": "The formatted value of the contribution as a string. Format depends on the configuration for the associated event definition in the Play Games Developer Console.", + "type": "string" + }, + "kind": { + "default": "games#questContribution", + "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#questContribution.", + "type": "string" + }, + "value": { + "description": "The value of the contribution.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "QuestCriterion": { + "description": "This is a JSON template for a Quest Criterion resource.", + "id": "QuestCriterion", + "properties": { + "completionContribution": { + "$ref": "QuestContribution", + "description": "The total number of times the associated event must be incremented for the player to complete this quest." + }, + "currentContribution": { + "$ref": "QuestContribution", + "description": "The number of increments the player has made toward the completion count event increments required to complete the quest. This value will not exceed the completion contribution.\nThere will be no currentContribution until the player has accepted the quest." + }, + "eventId": { + "description": "The ID of the event the criterion corresponds to.", + "type": "string" + }, + "initialPlayerProgress": { + "$ref": "QuestContribution", + "description": "The value of the event associated with this quest at the time that the quest was accepted. This value may change if event increments that took place before the start of quest are uploaded after the quest starts.\nThere will be no initialPlayerProgress until the player has accepted the quest." + }, + "kind": { + "default": "games#questCriterion", + "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#questCriterion.", + "type": "string" + } + }, + "type": "object" + }, + "QuestListResponse": { + "description": "This is a JSON template for a list of quest objects.", + "id": "QuestListResponse", + "properties": { + "items": { + "description": "The quests.", + "items": { + "$ref": "Quest" + }, + "type": "array" + }, + "kind": { + "default": "games#questListResponse", + "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#questListResponse.", + "type": "string" + }, + "nextPageToken": { + "description": "Token corresponding to the next page of results.", + "type": "string" + } + }, + "type": "object" + }, + "QuestMilestone": { + "description": "This is a JSON template for a Quest Milestone resource.", + "id": "QuestMilestone", + "properties": { + "completionRewardData": { + "description": "The completion reward data of the milestone, represented as a Base64-encoded string. This is a developer-specified binary blob with size between 0 and 2 KB before encoding.", + "format": "byte", + "type": "string" + }, + "criteria": { + "description": "The criteria of the milestone.", + "items": { + "$ref": "QuestCriterion" + }, + "type": "array" + }, + "id": { + "description": "The milestone ID.", + "type": "string" + }, + "kind": { + "default": "games#questMilestone", + "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#questMilestone.", + "type": "string" + }, + "state": { + "description": "The current state of the milestone.\nPossible values are: \n- \"COMPLETED_NOT_CLAIMED\" - The milestone is complete, but has not yet been claimed. \n- \"CLAIMED\" - The milestone is complete and has been claimed. \n- \"NOT_COMPLETED\" - The milestone has not yet been completed. \n- \"NOT_STARTED\" - The milestone is for a quest that has not yet been accepted.", + "type": "string" + } + }, + "type": "object" + }, + "RevisionCheckResponse": { + "description": "This is a JSON template for the result of checking a revision.", + "id": "RevisionCheckResponse", + "properties": { + "apiVersion": { + "description": "The version of the API this client revision should use when calling API methods.", + "type": "string" + }, + "kind": { + "default": "games#revisionCheckResponse", + "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#revisionCheckResponse.", + "type": "string" + }, + "revisionStatus": { + "description": "The result of the revision check.\nPossible values are: \n- \"OK\" - The revision being used is current. \n- \"DEPRECATED\" - There is currently a newer version available, but the revision being used still works. \n- \"INVALID\" - The revision being used is not supported in any released version.", + "type": "string" + } + }, + "type": "object" + }, + "Room": { + "description": "This is a JSON template for a room resource object.", + "id": "Room", + "properties": { + "applicationId": { + "description": "The ID of the application being played.", + "type": "string" + }, + "autoMatchingCriteria": { + "$ref": "RoomAutoMatchingCriteria", + "description": "Criteria for auto-matching players into this room." + }, + "autoMatchingStatus": { + "$ref": "RoomAutoMatchStatus", + "description": "Auto-matching status for this room. Not set if the room is not currently in the auto-matching queue." + }, + "creationDetails": { + "$ref": "RoomModification", + "description": "Details about the room creation." + }, + "description": { + "description": "This short description is generated by our servers and worded relative to the player requesting the room. It is intended to be displayed when the room is shown in a list (that is, an invitation to a room.)", + "type": "string" + }, + "inviterId": { + "description": "The ID of the participant that invited the user to the room. Not set if the user was not invited to the room.", + "type": "string" + }, + "kind": { + "default": "games#room", + "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#room.", + "type": "string" + }, + "lastUpdateDetails": { + "$ref": "RoomModification", + "description": "Details about the last update to the room." + }, + "participants": { + "description": "The participants involved in the room, along with their statuses. Includes participants who have left or declined invitations.", + "items": { + "$ref": "RoomParticipant" + }, + "type": "array" + }, + "roomId": { + "description": "Globally unique ID for a room.", + "type": "string" + }, + "roomStatusVersion": { + "description": "The version of the room status: an increasing counter, used by the client to ignore out-of-order updates to room status.", + "format": "int32", + "type": "integer" + }, + "status": { + "description": "The status of the room.\nPossible values are: \n- \"ROOM_INVITING\" - One or more players have been invited and not responded. \n- \"ROOM_AUTO_MATCHING\" - One or more slots need to be filled by auto-matching. \n- \"ROOM_CONNECTING\" - Players have joined and are connecting to each other (either before or after auto-matching). \n- \"ROOM_ACTIVE\" - All players have joined and connected to each other. \n- \"ROOM_DELETED\" - The room should no longer be shown on the client. Returned in sync calls when a player joins a room (as a tombstone), or for rooms where all joined participants have left.", + "type": "string" + }, + "variant": { + "description": "The variant / mode of the application being played; can be any integer value, or left blank.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "RoomAutoMatchStatus": { + "description": "This is a JSON template for status of room automatching that is in progress.", + "id": "RoomAutoMatchStatus", + "properties": { + "kind": { + "default": "games#roomAutoMatchStatus", + "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#roomAutoMatchStatus.", + "type": "string" + }, + "waitEstimateSeconds": { + "description": "An estimate for the amount of time (in seconds) that auto-matching is expected to take to complete.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "RoomAutoMatchingCriteria": { + "description": "This is a JSON template for a room auto-match criteria object.", + "id": "RoomAutoMatchingCriteria", + "properties": { + "exclusiveBitmask": { + "description": "A bitmask indicating when auto-matches are valid. When ANDed with other exclusive bitmasks, the result must be zero. Can be used to support exclusive roles within a game.", + "format": "int64", + "type": "string" + }, + "kind": { + "default": "games#roomAutoMatchingCriteria", + "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#roomAutoMatchingCriteria.", + "type": "string" + }, + "maxAutoMatchingPlayers": { + "description": "The maximum number of players that should be added to the room by auto-matching.", + "format": "int32", + "type": "integer" + }, + "minAutoMatchingPlayers": { + "description": "The minimum number of players that should be added to the room by auto-matching.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "RoomClientAddress": { + "description": "This is a JSON template for the client address when setting up a room.", + "id": "RoomClientAddress", + "properties": { + "kind": { + "default": "games#roomClientAddress", + "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#roomClientAddress.", + "type": "string" + }, + "xmppAddress": { + "description": "The XMPP address of the client on the Google Games XMPP network.", + "type": "string" + } + }, + "type": "object" + }, + "RoomCreateRequest": { + "description": "This is a JSON template for a room creation request.", + "id": "RoomCreateRequest", + "properties": { + "autoMatchingCriteria": { + "$ref": "RoomAutoMatchingCriteria", + "description": "Criteria for auto-matching players into this room." + }, + "capabilities": { + "description": "The capabilities that this client supports for realtime communication.", + "items": { + "type": "string" + }, + "type": "array" + }, + "clientAddress": { + "$ref": "RoomClientAddress", + "description": "Client address for the player creating the room." + }, + "invitedPlayerIds": { + "description": "The player IDs to invite to the room.", + "items": { + "type": "string" + }, + "type": "array" + }, + "kind": { + "default": "games#roomCreateRequest", + "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#roomCreateRequest.", + "type": "string" + }, + "networkDiagnostics": { + "$ref": "NetworkDiagnostics", + "description": "Network diagnostics for the client creating the room." + }, + "requestId": { + "description": "A randomly generated numeric ID. This number is used at the server to ensure that the request is handled correctly across retries.", + "format": "int64", + "type": "string" + }, + "variant": { + "description": "The variant / mode of the application to be played. This can be any integer value, or left blank. You should use a small number of variants to keep the auto-matching pool as large as possible.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "RoomJoinRequest": { + "description": "This is a JSON template for a join room request.", + "id": "RoomJoinRequest", + "properties": { + "capabilities": { + "description": "The capabilities that this client supports for realtime communication.", + "items": { + "type": "string" + }, + "type": "array" + }, + "clientAddress": { + "$ref": "RoomClientAddress", + "description": "Client address for the player joining the room." + }, + "kind": { + "default": "games#roomJoinRequest", + "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#roomJoinRequest.", + "type": "string" + }, + "networkDiagnostics": { + "$ref": "NetworkDiagnostics", + "description": "Network diagnostics for the client joining the room." + } + }, + "type": "object" + }, + "RoomLeaveDiagnostics": { + "description": "This is a JSON template for room leave diagnostics.", + "id": "RoomLeaveDiagnostics", + "properties": { + "androidNetworkSubtype": { + "description": "Android network subtype. http://developer.android.com/reference/android/net/NetworkInfo.html#getSubtype()", + "format": "int32", + "type": "integer" + }, + "androidNetworkType": { + "description": "Android network type. http://developer.android.com/reference/android/net/NetworkInfo.html#getType()", + "format": "int32", + "type": "integer" + }, + "iosNetworkType": { + "description": "iOS network type as defined in Reachability.h.", + "format": "int32", + "type": "integer" + }, + "kind": { + "default": "games#roomLeaveDiagnostics", + "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#roomLeaveDiagnostics.", + "type": "string" + }, + "networkOperatorCode": { + "description": "The MCC+MNC code for the client's network connection. On Android: http://developer.android.com/reference/android/telephony/TelephonyManager.html#getNetworkOperator() On iOS, see: https://developer.apple.com/library/ios/documentation/NetworkingInternet/Reference/CTCarrier/Reference/Reference.html", + "type": "string" + }, + "networkOperatorName": { + "description": "The name of the carrier of the client's network connection. On Android: http://developer.android.com/reference/android/telephony/TelephonyManager.html#getNetworkOperatorName() On iOS: https://developer.apple.com/library/ios/documentation/NetworkingInternet/Reference/CTCarrier/Reference/Reference.html#//apple_ref/occ/instp/CTCarrier/carrierName", + "type": "string" + }, + "peerSession": { + "description": "Diagnostics about all peer sessions.", + "items": { + "$ref": "PeerSessionDiagnostics" + }, + "type": "array" + }, + "socketsUsed": { + "description": "Whether or not sockets were used.", + "type": "boolean" + } + }, + "type": "object" + }, + "RoomLeaveRequest": { + "description": "This is a JSON template for a leave room request.", + "id": "RoomLeaveRequest", + "properties": { + "kind": { + "default": "games#roomLeaveRequest", + "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#roomLeaveRequest.", + "type": "string" + }, + "leaveDiagnostics": { + "$ref": "RoomLeaveDiagnostics", + "description": "Diagnostics for a player leaving the room." + }, + "reason": { + "description": "Reason for leaving the match.\nPossible values are: \n- \"PLAYER_LEFT\" - The player chose to leave the room.. \n- \"GAME_LEFT\" - The game chose to remove the player from the room. \n- \"REALTIME_ABANDONED\" - The player switched to another application and abandoned the room. \n- \"REALTIME_PEER_CONNECTION_FAILURE\" - The client was unable to establish a connection to other peer(s). \n- \"REALTIME_SERVER_CONNECTION_FAILURE\" - The client was unable to communicate with the server. \n- \"REALTIME_SERVER_ERROR\" - The client received an error response when it tried to communicate with the server. \n- \"REALTIME_TIMEOUT\" - The client timed out while waiting for a room. \n- \"REALTIME_CLIENT_DISCONNECTING\" - The client disconnects without first calling Leave. \n- \"REALTIME_SIGN_OUT\" - The user signed out of G+ while in the room. \n- \"REALTIME_GAME_CRASHED\" - The game crashed. \n- \"REALTIME_ROOM_SERVICE_CRASHED\" - RoomAndroidService crashed. \n- \"REALTIME_DIFFERENT_CLIENT_ROOM_OPERATION\" - Another client is trying to enter a room. \n- \"REALTIME_SAME_CLIENT_ROOM_OPERATION\" - The same client is trying to enter a new room.", + "type": "string" + } + }, + "type": "object" + }, + "RoomList": { + "description": "This is a JSON template for a list of rooms.", + "id": "RoomList", + "properties": { + "items": { + "description": "The rooms.", + "items": { + "$ref": "Room" + }, + "type": "array" + }, + "kind": { + "default": "games#roomList", + "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#roomList.", + "type": "string" + }, + "nextPageToken": { + "description": "The pagination token for the next page of results.", + "type": "string" + } + }, + "type": "object" + }, + "RoomModification": { + "description": "This is a JSON template for room modification metadata.", + "id": "RoomModification", + "properties": { + "kind": { + "default": "games#roomModification", + "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#roomModification.", + "type": "string" + }, + "modifiedTimestampMillis": { + "description": "The timestamp at which they modified the room, in milliseconds since the epoch in UTC.", + "format": "int64", + "type": "string" + }, + "participantId": { + "description": "The ID of the participant that modified the room.", + "type": "string" + } + }, + "type": "object" + }, + "RoomP2PStatus": { + "description": "This is a JSON template for an update on the status of a peer in a room.", + "id": "RoomP2PStatus", + "properties": { + "connectionSetupLatencyMillis": { + "description": "The amount of time in milliseconds it took to establish connections with this peer.", + "format": "int32", + "type": "integer" + }, + "error": { + "description": "The error code in event of a failure.\nPossible values are: \n- \"P2P_FAILED\" - The client failed to establish a P2P connection with the peer. \n- \"PRESENCE_FAILED\" - The client failed to register to receive P2P connections. \n- \"RELAY_SERVER_FAILED\" - The client received an error when trying to use the relay server to establish a P2P connection with the peer.", + "type": "string" + }, + "error_reason": { + "description": "More detailed diagnostic message returned in event of a failure.", + "type": "string" + }, + "kind": { + "default": "games#roomP2PStatus", + "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#roomP2PStatus.", + "type": "string" + }, + "participantId": { + "description": "The ID of the participant.", + "type": "string" + }, + "status": { + "description": "The status of the peer in the room.\nPossible values are: \n- \"CONNECTION_ESTABLISHED\" - The client established a P2P connection with the peer. \n- \"CONNECTION_FAILED\" - The client failed to establish directed presence with the peer.", + "type": "string" + }, + "unreliableRoundtripLatencyMillis": { + "description": "The amount of time in milliseconds it took to send packets back and forth on the unreliable channel with this peer.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "RoomP2PStatuses": { + "description": "This is a JSON template for an update on the status of peers in a room.", + "id": "RoomP2PStatuses", + "properties": { + "kind": { + "default": "games#roomP2PStatuses", + "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#roomP2PStatuses.", + "type": "string" + }, + "updates": { + "description": "The updates for the peers.", + "items": { + "$ref": "RoomP2PStatus" + }, + "type": "array" + } + }, + "type": "object" + }, + "RoomParticipant": { + "description": "This is a JSON template for a participant in a room.", + "id": "RoomParticipant", + "properties": { + "autoMatched": { + "description": "True if this participant was auto-matched with the requesting player.", + "type": "boolean" + }, + "autoMatchedPlayer": { + "$ref": "AnonymousPlayer", + "description": "Information about a player that has been anonymously auto-matched against the requesting player. (Either player or autoMatchedPlayer will be set.)" + }, + "capabilities": { + "description": "The capabilities which can be used when communicating with this participant.", + "items": { + "type": "string" + }, + "type": "array" + }, + "clientAddress": { + "$ref": "RoomClientAddress", + "description": "Client address for the participant." + }, + "connected": { + "description": "True if this participant is in the fully connected set of peers in the room.", + "type": "boolean" + }, + "id": { + "description": "An identifier for the participant in the scope of the room. Cannot be used to identify a player across rooms or in other contexts.", + "type": "string" + }, + "kind": { + "default": "games#roomParticipant", + "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#roomParticipant.", + "type": "string" + }, + "leaveReason": { + "description": "The reason the participant left the room; populated if the participant status is PARTICIPANT_LEFT.\nPossible values are: \n- \"PLAYER_LEFT\" - The player explicitly chose to leave the room. \n- \"GAME_LEFT\" - The game chose to remove the player from the room. \n- \"ABANDONED\" - The player switched to another application and abandoned the room.\n- \"PEER_CONNECTION_FAILURE\" - The client was unable to establish or maintain a connection to other peer(s) in the room.\n- \"SERVER_ERROR\" - The client received an error response when it tried to communicate with the server. \n- \"TIMEOUT\" - The client timed out while waiting for players to join and connect. \n- \"PRESENCE_FAILURE\" - The client's XMPP connection ended abruptly.", + "type": "string" + }, + "player": { + "$ref": "Player", + "description": "Information about the player. Not populated if this player was anonymously auto-matched against the requesting player. (Either player or autoMatchedPlayer will be set.)" + }, + "status": { + "description": "The status of the participant with respect to the room.\nPossible values are: \n- \"PARTICIPANT_INVITED\" - The participant has been invited to join the room, but has not yet responded. \n- \"PARTICIPANT_JOINED\" - The participant has joined the room (either after creating it or accepting an invitation.) \n- \"PARTICIPANT_DECLINED\" - The participant declined an invitation to join the room. \n- \"PARTICIPANT_LEFT\" - The participant joined the room and then left it.", + "type": "string" + } + }, + "type": "object" + }, + "RoomStatus": { + "description": "This is a JSON template for the status of a room that the player has joined.", + "id": "RoomStatus", + "properties": { + "autoMatchingStatus": { + "$ref": "RoomAutoMatchStatus", + "description": "Auto-matching status for this room. Not set if the room is not currently in the automatching queue." + }, + "kind": { + "default": "games#roomStatus", + "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#roomStatus.", + "type": "string" + }, + "participants": { + "description": "The participants involved in the room, along with their statuses. Includes participants who have left or declined invitations.", + "items": { + "$ref": "RoomParticipant" + }, + "type": "array" + }, + "roomId": { + "description": "Globally unique ID for a room.", + "type": "string" + }, + "status": { + "description": "The status of the room.\nPossible values are: \n- \"ROOM_INVITING\" - One or more players have been invited and not responded. \n- \"ROOM_AUTO_MATCHING\" - One or more slots need to be filled by auto-matching. \n- \"ROOM_CONNECTING\" - Players have joined are connecting to each other (either before or after auto-matching). \n- \"ROOM_ACTIVE\" - All players have joined and connected to each other. \n- \"ROOM_DELETED\" - All joined players have left.", + "type": "string" + }, + "statusVersion": { + "description": "The version of the status for the room: an increasing counter, used by the client to ignore out-of-order updates to room status.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "ScoreSubmission": { + "description": "This is a JSON template for a request to submit a score to leaderboards.", + "id": "ScoreSubmission", + "properties": { + "kind": { + "default": "games#scoreSubmission", + "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#scoreSubmission.", + "type": "string" + }, + "leaderboardId": { + "description": "The leaderboard this score is being submitted to.", + "type": "string" + }, + "score": { + "description": "The new score being submitted.", + "format": "int64", + "type": "string" + }, + "scoreTag": { + "description": "Additional information about this score. Values will contain no more than 64 URI-safe characters as defined by section 2.3 of RFC 3986.", + "pattern": "[a-zA-Z0-9-._~]{0,64}", + "type": "string" + }, + "signature": { + "description": "Signature Values will contain URI-safe characters as defined by section 2.3 of RFC 3986.", + "type": "string" + } + }, + "type": "object" + }, + "Snapshot": { + "description": "This is a JSON template for an snapshot object.", + "id": "Snapshot", + "properties": { + "coverImage": { + "$ref": "SnapshotImage", + "description": "The cover image of this snapshot. May be absent if there is no image." + }, + "description": { + "description": "The description of this snapshot.", + "type": "string" + }, + "driveId": { + "description": "The ID of the file underlying this snapshot in the Drive API. Only present if the snapshot is a view on a Drive file and the file is owned by the caller.", + "type": "string" + }, + "durationMillis": { + "description": "The duration associated with this snapshot, in millis.", + "format": "int64", + "type": "string" + }, + "id": { + "description": "The ID of the snapshot.", + "type": "string" + }, + "kind": { + "default": "games#snapshot", + "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#snapshot.", + "type": "string" + }, + "lastModifiedMillis": { + "description": "The timestamp (in millis since Unix epoch) of the last modification to this snapshot.", + "format": "int64", + "type": "string" + }, + "progressValue": { + "description": "The progress value (64-bit integer set by developer) associated with this snapshot.", + "format": "int64", + "type": "string" + }, + "title": { + "description": "The title of this snapshot.", + "type": "string" + }, + "type": { + "description": "The type of this snapshot.\nPossible values are: \n- \"SAVE_GAME\" - A snapshot representing a save game.", + "type": "string" + }, + "uniqueName": { + "description": "The unique name provided when the snapshot was created.", + "type": "string" + } + }, + "type": "object" + }, + "SnapshotImage": { + "description": "This is a JSON template for an image of a snapshot.", + "id": "SnapshotImage", + "properties": { + "height": { + "description": "The height of the image.", + "format": "int32", + "type": "integer" + }, + "kind": { + "default": "games#snapshotImage", + "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#snapshotImage.", + "type": "string" + }, + "mime_type": { + "description": "The MIME type of the image.", + "type": "string" + }, + "url": { + "description": "The URL of the image. This URL may be invalidated at any time and should not be cached.", + "type": "string" + }, + "width": { + "description": "The width of the image.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "SnapshotListResponse": { + "description": "This is a JSON template for a list of snapshot objects.", + "id": "SnapshotListResponse", + "properties": { + "items": { + "description": "The snapshots.", + "items": { + "$ref": "Snapshot" + }, + "type": "array" + }, + "kind": { + "default": "games#snapshotListResponse", + "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#snapshotListResponse.", + "type": "string" + }, + "nextPageToken": { + "description": "Token corresponding to the next page of results. If there are no more results, the token is omitted.", + "type": "string" + } + }, + "type": "object" + }, + "TurnBasedAutoMatchingCriteria": { + "description": "This is a JSON template for an turn-based auto-match criteria object.", + "id": "TurnBasedAutoMatchingCriteria", + "properties": { + "exclusiveBitmask": { + "description": "A bitmask indicating when auto-matches are valid. When ANDed with other exclusive bitmasks, the result must be zero. Can be used to support exclusive roles within a game.", + "format": "int64", + "type": "string" + }, + "kind": { + "default": "games#turnBasedAutoMatchingCriteria", + "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#turnBasedAutoMatchingCriteria.", + "type": "string" + }, + "maxAutoMatchingPlayers": { + "description": "The maximum number of players that should be added to the match by auto-matching.", + "format": "int32", + "type": "integer" + }, + "minAutoMatchingPlayers": { + "description": "The minimum number of players that should be added to the match by auto-matching.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "TurnBasedMatch": { + "description": "This is a JSON template for a turn-based match resource object.", + "id": "TurnBasedMatch", + "properties": { + "applicationId": { + "description": "The ID of the application being played.", + "type": "string" + }, + "autoMatchingCriteria": { + "$ref": "TurnBasedAutoMatchingCriteria", + "description": "Criteria for auto-matching players into this match." + }, + "creationDetails": { + "$ref": "TurnBasedMatchModification", + "description": "Details about the match creation." + }, + "data": { + "$ref": "TurnBasedMatchData", + "description": "The data / game state for this match." + }, + "description": { + "description": "This short description is generated by our servers based on turn state and is localized and worded relative to the player requesting the match. It is intended to be displayed when the match is shown in a list.", + "type": "string" + }, + "inviterId": { + "description": "The ID of the participant that invited the user to the match. Not set if the user was not invited to the match.", + "type": "string" + }, + "kind": { + "default": "games#turnBasedMatch", + "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#turnBasedMatch.", + "type": "string" + }, + "lastUpdateDetails": { + "$ref": "TurnBasedMatchModification", + "description": "Details about the last update to the match." + }, + "matchId": { + "description": "Globally unique ID for a turn-based match.", + "type": "string" + }, + "matchNumber": { + "description": "The number of the match in a chain of rematches. Will be set to 1 for the first match and incremented by 1 for each rematch.", + "format": "int32", + "type": "integer" + }, + "matchVersion": { + "description": "The version of this match: an increasing counter, used to avoid out-of-date updates to the match.", + "format": "int32", + "type": "integer" + }, + "participants": { + "description": "The participants involved in the match, along with their statuses. Includes participants who have left or declined invitations.", + "items": { + "$ref": "TurnBasedMatchParticipant" + }, + "type": "array" + }, + "pendingParticipantId": { + "description": "The ID of the participant that is taking a turn.", + "type": "string" + }, + "previousMatchData": { + "$ref": "TurnBasedMatchData", + "description": "The data / game state for the previous match; set for the first turn of rematches only." + }, + "rematchId": { + "description": "The ID of a rematch of this match. Only set for completed matches that have been rematched.", + "type": "string" + }, + "results": { + "description": "The results reported for this match.", + "items": { + "$ref": "ParticipantResult" + }, + "type": "array" + }, + "status": { + "description": "The status of the match.\nPossible values are: \n- \"MATCH_AUTO_MATCHING\" - One or more slots need to be filled by auto-matching; the match cannot be established until they are filled. \n- \"MATCH_ACTIVE\" - The match has started. \n- \"MATCH_COMPLETE\" - The match has finished. \n- \"MATCH_CANCELED\" - The match was canceled. \n- \"MATCH_EXPIRED\" - The match expired due to inactivity. \n- \"MATCH_DELETED\" - The match should no longer be shown on the client. Returned only for tombstones for matches when sync is called.", + "type": "string" + }, + "userMatchStatus": { + "description": "The status of the current user in the match. Derived from the match type, match status, the user's participant status, and the pending participant for the match.\nPossible values are: \n- \"USER_INVITED\" - The user has been invited to join the match and has not responded yet. \n- \"USER_AWAITING_TURN\" - The user is waiting for their turn. \n- \"USER_TURN\" - The user has an action to take in the match. \n- \"USER_MATCH_COMPLETED\" - The match has ended (it is completed, canceled, or expired.)", + "type": "string" + }, + "variant": { + "description": "The variant / mode of the application being played; can be any integer value, or left blank.", + "format": "int32", + "type": "integer" + }, + "withParticipantId": { + "description": "The ID of another participant in the match that can be used when describing the participants the user is playing with.", + "type": "string" + } + }, + "type": "object" + }, + "TurnBasedMatchCreateRequest": { + "description": "This is a JSON template for a turn-based match creation request.", + "id": "TurnBasedMatchCreateRequest", + "properties": { + "autoMatchingCriteria": { + "$ref": "TurnBasedAutoMatchingCriteria", + "description": "Criteria for auto-matching players into this match." + }, + "invitedPlayerIds": { + "description": "The player ids to invite to the match.", + "items": { + "type": "string" + }, + "type": "array" + }, + "kind": { + "default": "games#turnBasedMatchCreateRequest", + "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#turnBasedMatchCreateRequest.", + "type": "string" + }, + "requestId": { + "description": "A randomly generated numeric ID. This number is used at the server to ensure that the request is handled correctly across retries.", + "format": "int64", + "type": "string" + }, + "variant": { + "description": "The variant / mode of the application to be played. This can be any integer value, or left blank. You should use a small number of variants to keep the auto-matching pool as large as possible.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "TurnBasedMatchData": { + "description": "This is a JSON template for a turn-based match data object.", + "id": "TurnBasedMatchData", + "properties": { + "data": { + "description": "The byte representation of the data (limited to 128 kB), as a Base64-encoded string with the URL_SAFE encoding option.", + "format": "byte", + "type": "string" + }, + "dataAvailable": { + "description": "True if this match has data available but it wasn't returned in a list response; fetching the match individually will retrieve this data.", + "type": "boolean" + }, + "kind": { + "default": "games#turnBasedMatchData", + "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#turnBasedMatchData.", + "type": "string" + } + }, + "type": "object" + }, + "TurnBasedMatchDataRequest": { + "description": "This is a JSON template for sending a turn-based match data object.", + "id": "TurnBasedMatchDataRequest", + "properties": { + "data": { + "description": "The byte representation of the data (limited to 128 kB), as a Base64-encoded string with the URL_SAFE encoding option.", + "format": "byte", + "type": "string" + }, + "kind": { + "default": "games#turnBasedMatchDataRequest", + "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#turnBasedMatchDataRequest.", + "type": "string" + } + }, + "type": "object" + }, + "TurnBasedMatchList": { + "description": "This is a JSON template for a list of turn-based matches.", + "id": "TurnBasedMatchList", + "properties": { + "items": { + "description": "The matches.", + "items": { + "$ref": "TurnBasedMatch" + }, + "type": "array" + }, + "kind": { + "default": "games#turnBasedMatchList", + "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#turnBasedMatchList.", + "type": "string" + }, + "nextPageToken": { + "description": "The pagination token for the next page of results.", + "type": "string" + } + }, + "type": "object" + }, + "TurnBasedMatchModification": { + "description": "This is a JSON template for turn-based match modification metadata.", + "id": "TurnBasedMatchModification", + "properties": { + "kind": { + "default": "games#turnBasedMatchModification", + "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#turnBasedMatchModification.", + "type": "string" + }, + "modifiedTimestampMillis": { + "description": "The timestamp at which they modified the match, in milliseconds since the epoch in UTC.", + "format": "int64", + "type": "string" + }, + "participantId": { + "description": "The ID of the participant that modified the match.", + "type": "string" + } + }, + "type": "object" + }, + "TurnBasedMatchParticipant": { + "description": "This is a JSON template for a participant in a turn-based match.", + "id": "TurnBasedMatchParticipant", + "properties": { + "autoMatched": { + "description": "True if this participant was auto-matched with the requesting player.", + "type": "boolean" + }, + "autoMatchedPlayer": { + "$ref": "AnonymousPlayer", + "description": "Information about a player that has been anonymously auto-matched against the requesting player. (Either player or autoMatchedPlayer will be set.)" + }, + "id": { + "description": "An identifier for the participant in the scope of the match. Cannot be used to identify a player across matches or in other contexts.", + "type": "string" + }, + "kind": { + "default": "games#turnBasedMatchParticipant", + "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#turnBasedMatchParticipant.", + "type": "string" + }, + "player": { + "$ref": "Player", + "description": "Information about the player. Not populated if this player was anonymously auto-matched against the requesting player. (Either player or autoMatchedPlayer will be set.)" + }, + "status": { + "description": "The status of the participant with respect to the match.\nPossible values are: \n- \"PARTICIPANT_NOT_INVITED_YET\" - The participant is slated to be invited to the match, but the invitation has not been sent; the invite will be sent when it becomes their turn. \n- \"PARTICIPANT_INVITED\" - The participant has been invited to join the match, but has not yet responded. \n- \"PARTICIPANT_JOINED\" - The participant has joined the match (either after creating it or accepting an invitation.) \n- \"PARTICIPANT_DECLINED\" - The participant declined an invitation to join the match. \n- \"PARTICIPANT_LEFT\" - The participant joined the match and then left it. \n- \"PARTICIPANT_FINISHED\" - The participant finished playing in the match. \n- \"PARTICIPANT_UNRESPONSIVE\" - The participant did not take their turn in the allotted time.", + "type": "string" + } + }, + "type": "object" + }, + "TurnBasedMatchRematch": { + "description": "This is a JSON template for a rematch response.", + "id": "TurnBasedMatchRematch", + "properties": { + "kind": { + "default": "games#turnBasedMatchRematch", + "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#turnBasedMatchRematch.", + "type": "string" + }, + "previousMatch": { + "$ref": "TurnBasedMatch", + "description": "The old match that the rematch was created from; will be updated such that the rematchId field will point at the new match." + }, + "rematch": { + "$ref": "TurnBasedMatch", + "description": "The newly created match; a rematch of the old match with the same participants." + } + }, + "type": "object" + }, + "TurnBasedMatchResults": { + "description": "This is a JSON template for a turn-based match results object.", + "id": "TurnBasedMatchResults", + "properties": { + "data": { + "$ref": "TurnBasedMatchDataRequest", + "description": "The final match data." + }, + "kind": { + "default": "games#turnBasedMatchResults", + "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#turnBasedMatchResults.", + "type": "string" + }, + "matchVersion": { + "description": "The version of the match being updated.", + "format": "int32", + "type": "integer" + }, + "results": { + "description": "The match results for the participants in the match.", + "items": { + "$ref": "ParticipantResult" + }, + "type": "array" + } + }, + "type": "object" + }, + "TurnBasedMatchSync": { + "description": "This is a JSON template for a list of turn-based matches returned from a sync.", + "id": "TurnBasedMatchSync", + "properties": { + "items": { + "description": "The matches.", + "items": { + "$ref": "TurnBasedMatch" + }, + "type": "array" + }, + "kind": { + "default": "games#turnBasedMatchSync", + "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#turnBasedMatchSync.", + "type": "string" + }, + "moreAvailable": { + "description": "True if there were more matches available to fetch at the time the response was generated (which were not returned due to page size limits.)", + "type": "boolean" + }, + "nextPageToken": { + "description": "The pagination token for the next page of results.", + "type": "string" + } + }, + "type": "object" + }, + "TurnBasedMatchTurn": { + "description": "This is a JSON template for the object representing a turn.", + "id": "TurnBasedMatchTurn", + "properties": { + "data": { + "$ref": "TurnBasedMatchDataRequest", + "description": "The shared game state data after the turn is over." + }, + "kind": { + "default": "games#turnBasedMatchTurn", + "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#turnBasedMatchTurn.", + "type": "string" + }, + "matchVersion": { + "description": "The version of this match: an increasing counter, used to avoid out-of-date updates to the match.", + "format": "int32", + "type": "integer" + }, + "pendingParticipantId": { + "description": "The ID of the participant who should take their turn next. May be set to the current player's participant ID to update match state without changing the turn. If not set, the match will wait for other player(s) to join via automatching; this is only valid if automatch criteria is set on the match with remaining slots for automatched players.", + "type": "string" + }, + "results": { + "description": "The match results for the participants in the match.", + "items": { + "$ref": "ParticipantResult" + }, + "type": "array" + } + }, + "type": "object" } - } }, - "applications": { - "methods": { - "get": { - "id": "games.applications.get", - "path": "applications/{applicationId}", - "httpMethod": "GET", - "description": "Retrieves the metadata of the application with the given ID. If the requested application is not available for the specified platformType, the returned response will not include any instance data.", - "parameters": { - "applicationId": { - "type": "string", - "description": "The application ID from the Google Play developer console.", - "required": true, - "location": "path" - }, - "language": { - "type": "string", - "description": "The preferred language to use for strings returned by this method.", - "location": "query" - }, - "platformType": { - "type": "string", - "description": "Restrict application details returned to the specific platform.", - "enum": [ - "ANDROID", - "IOS", - "WEB_APP" - ], - "enumDescriptions": [ - "Retrieve applications that can be played on Android.", - "Retrieve applications that can be played on iOS.", - "Retrieve applications that can be played on desktop web." - ], - "location": "query" - } - }, - "parameterOrder": [ - "applicationId" - ], - "response": { - "$ref": "Application" - }, - "scopes": [ - "https://www.googleapis.com/auth/games", - "https://www.googleapis.com/auth/plus.login" - ] - }, - "played": { - "id": "games.applications.played", - "path": "applications/played", - "httpMethod": "POST", - "description": "Indicate that the the currently authenticated user is playing your application.", - "scopes": [ - "https://www.googleapis.com/auth/games", - "https://www.googleapis.com/auth/plus.login" - ] - }, - "verify": { - "id": "games.applications.verify", - "path": "applications/{applicationId}/verify", - "httpMethod": "GET", - "description": "Verifies the auth token provided with this request is for the application with the specified ID, and returns the ID of the player it was granted for.", - "parameters": { - "applicationId": { - "type": "string", - "description": "The application ID from the Google Play developer console.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "applicationId" - ], - "response": { - "$ref": "ApplicationVerifyResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/games", - "https://www.googleapis.com/auth/plus.login" - ] - } - } - }, - "events": { - "methods": { - "listByPlayer": { - "id": "games.events.listByPlayer", - "path": "events", - "httpMethod": "GET", - "description": "Returns a list showing the current progress on events in this application for the currently authenticated user.", - "parameters": { - "language": { - "type": "string", - "description": "The preferred language to use for strings returned by this method.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of events to return in the response, used for paging. For any response, the actual number of events to return may be less than the specified maxResults.", - "format": "int32", - "minimum": "1", - "maximum": "100", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "The token returned by the previous request.", - "location": "query" - } - }, - "response": { - "$ref": "PlayerEventListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/games", - "https://www.googleapis.com/auth/plus.login" - ] - }, - "listDefinitions": { - "id": "games.events.listDefinitions", - "path": "eventDefinitions", - "httpMethod": "GET", - "description": "Returns a list of the event definitions in this application.", - "parameters": { - "language": { - "type": "string", - "description": "The preferred language to use for strings returned by this method.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of event definitions to return in the response, used for paging. For any response, the actual number of event definitions to return may be less than the specified maxResults.", - "format": "int32", - "minimum": "1", - "maximum": "100", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "The token returned by the previous request.", - "location": "query" - } - }, - "response": { - "$ref": "EventDefinitionListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/games", - "https://www.googleapis.com/auth/plus.login" - ] - }, - "record": { - "id": "games.events.record", - "path": "events", - "httpMethod": "POST", - "description": "Records a batch of changes to the number of times events have occurred for the currently authenticated user of this application.", - "parameters": { - "language": { - "type": "string", - "description": "The preferred language to use for strings returned by this method.", - "location": "query" - } - }, - "request": { - "$ref": "EventRecordRequest" - }, - "response": { - "$ref": "EventUpdateResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/games", - "https://www.googleapis.com/auth/plus.login" - ] - } - } - }, - "leaderboards": { - "methods": { - "get": { - "id": "games.leaderboards.get", - "path": "leaderboards/{leaderboardId}", - "httpMethod": "GET", - "description": "Retrieves the metadata of the leaderboard with the given ID.", - "parameters": { - "language": { - "type": "string", - "description": "The preferred language to use for strings returned by this method.", - "location": "query" - }, - "leaderboardId": { - "type": "string", - "description": "The ID of the leaderboard.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "leaderboardId" - ], - "response": { - "$ref": "Leaderboard" - }, - "scopes": [ - "https://www.googleapis.com/auth/games", - "https://www.googleapis.com/auth/plus.login" - ] - }, - "list": { - "id": "games.leaderboards.list", - "path": "leaderboards", - "httpMethod": "GET", - "description": "Lists all the leaderboard metadata for your application.", - "parameters": { - "language": { - "type": "string", - "description": "The preferred language to use for strings returned by this method.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of leaderboards to return in the response. For any response, the actual number of leaderboards returned may be less than the specified maxResults.", - "format": "int32", - "minimum": "1", - "maximum": "200", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "The token returned by the previous request.", - "location": "query" - } - }, - "response": { - "$ref": "LeaderboardListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/games", - "https://www.googleapis.com/auth/plus.login" - ] - } - } - }, - "metagame": { - "methods": { - "getMetagameConfig": { - "id": "games.metagame.getMetagameConfig", - "path": "metagameConfig", - "httpMethod": "GET", - "description": "Return the metagame configuration data for the calling application.", - "response": { - "$ref": "MetagameConfig" - }, - "scopes": [ - "https://www.googleapis.com/auth/games", - "https://www.googleapis.com/auth/plus.login" - ] - }, - "listCategoriesByPlayer": { - "id": "games.metagame.listCategoriesByPlayer", - "path": "players/{playerId}/categories/{collection}", - "httpMethod": "GET", - "description": "List play data aggregated per category for the player corresponding to playerId.", - "parameters": { - "collection": { - "type": "string", - "description": "The collection of categories for which data will be returned.", - "required": true, - "enum": [ - "all" - ], - "enumDescriptions": [ - "Retrieve data for all categories. This is the default." - ], - "location": "path" - }, - "language": { - "type": "string", - "description": "The preferred language to use for strings returned by this method.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of category resources to return in the response, used for paging. For any response, the actual number of category resources returned may be less than the specified maxResults.", - "format": "int32", - "minimum": "1", - "maximum": "100", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "The token returned by the previous request.", - "location": "query" - }, - "playerId": { - "type": "string", - "description": "A player ID. A value of me may be used in place of the authenticated player's ID.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "playerId", - "collection" - ], - "response": { - "$ref": "CategoryListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/games", - "https://www.googleapis.com/auth/plus.login" - ] - } - } - }, - "players": { - "methods": { - "get": { - "id": "games.players.get", - "path": "players/{playerId}", - "httpMethod": "GET", - "description": "Retrieves the Player resource with the given ID. To retrieve the player for the currently authenticated user, set playerId to me.", - "parameters": { - "language": { - "type": "string", - "description": "The preferred language to use for strings returned by this method.", - "location": "query" - }, - "playerId": { - "type": "string", - "description": "A player ID. A value of me may be used in place of the authenticated player's ID.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "playerId" - ], - "response": { - "$ref": "Player" - }, - "scopes": [ - "https://www.googleapis.com/auth/games", - "https://www.googleapis.com/auth/plus.login" - ] - }, - "list": { - "id": "games.players.list", - "path": "players/me/players/{collection}", - "httpMethod": "GET", - "description": "Get the collection of players for the currently authenticated user.", - "parameters": { - "collection": { - "type": "string", - "description": "Collection of players being retrieved", - "required": true, - "enum": [ - "connected", - "playedWith", - "played_with", - "visible" - ], - "enumDescriptions": [ - "Retrieve a list of players that are also playing this game in reverse chronological order.", - "(DEPRECATED: please use played_with!) Retrieve a list of players you have played a multiplayer game (realtime or turn-based) with recently.", - "Retrieve a list of players you have played a multiplayer game (realtime or turn-based) with recently.", - "Retrieve a list of players in the user's social graph that are visible to this game." - ], - "location": "path" - }, - "language": { - "type": "string", - "description": "The preferred language to use for strings returned by this method.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of player resources to return in the response, used for paging. For any response, the actual number of player resources returned may be less than the specified maxResults.", - "format": "int32", - "minimum": "1", - "maximum": "50", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "The token returned by the previous request.", - "location": "query" - } - }, - "parameterOrder": [ - "collection" - ], - "response": { - "$ref": "PlayerListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/games", - "https://www.googleapis.com/auth/plus.login" - ] - } - } - }, - "pushtokens": { - "methods": { - "remove": { - "id": "games.pushtokens.remove", - "path": "pushtokens/remove", - "httpMethod": "POST", - "description": "Removes a push token for the current user and application. Removing a non-existent push token will report success.", - "request": { - "$ref": "PushTokenId" - }, - "scopes": [ - "https://www.googleapis.com/auth/games", - "https://www.googleapis.com/auth/plus.login" - ] - }, - "update": { - "id": "games.pushtokens.update", - "path": "pushtokens", - "httpMethod": "PUT", - "description": "Registers a push token for the current user and application.", - "request": { - "$ref": "PushToken" - }, - "scopes": [ - "https://www.googleapis.com/auth/games", - "https://www.googleapis.com/auth/plus.login" - ] - } - } - }, - "questMilestones": { - "methods": { - "claim": { - "id": "games.questMilestones.claim", - "path": "quests/{questId}/milestones/{milestoneId}/claim", - "httpMethod": "PUT", - "description": "Report that a reward for the milestone corresponding to milestoneId for the quest corresponding to questId has been claimed by the currently authorized user.", - "parameters": { - "milestoneId": { - "type": "string", - "description": "The ID of the milestone.", - "required": true, - "location": "path" - }, - "questId": { - "type": "string", - "description": "The ID of the quest.", - "required": true, - "location": "path" - }, - "requestId": { - "type": "string", - "description": "A numeric ID to ensure that the request is handled correctly across retries. Your client application must generate this ID randomly.", - "required": true, - "format": "int64", - "location": "query" - } - }, - "parameterOrder": [ - "questId", - "milestoneId", - "requestId" - ], - "scopes": [ - "https://www.googleapis.com/auth/games", - "https://www.googleapis.com/auth/plus.login" - ] - } - } - }, - "quests": { - "methods": { - "accept": { - "id": "games.quests.accept", - "path": "quests/{questId}/accept", - "httpMethod": "POST", - "description": "Indicates that the currently authorized user will participate in the quest.", - "parameters": { - "language": { - "type": "string", - "description": "The preferred language to use for strings returned by this method.", - "location": "query" - }, - "questId": { - "type": "string", - "description": "The ID of the quest.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "questId" - ], - "response": { - "$ref": "Quest" - }, - "scopes": [ - "https://www.googleapis.com/auth/games", - "https://www.googleapis.com/auth/plus.login" - ] - }, - "list": { - "id": "games.quests.list", - "path": "players/{playerId}/quests", - "httpMethod": "GET", - "description": "Get a list of quests for your application and the currently authenticated player.", - "parameters": { - "language": { - "type": "string", - "description": "The preferred language to use for strings returned by this method.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of quest resources to return in the response, used for paging. For any response, the actual number of quest resources returned may be less than the specified maxResults. Acceptable values are 1 to 50, inclusive. (Default: 50).", - "format": "int32", - "minimum": "1", - "maximum": "50", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "The token returned by the previous request.", - "location": "query" - }, - "playerId": { - "type": "string", - "description": "A player ID. A value of me may be used in place of the authenticated player's ID.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "playerId" - ], - "response": { - "$ref": "QuestListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/games", - "https://www.googleapis.com/auth/plus.login" - ] - } - } - }, - "revisions": { - "methods": { - "check": { - "id": "games.revisions.check", - "path": "revisions/check", - "httpMethod": "GET", - "description": "Checks whether the games client is out of date.", - "parameters": { - "clientRevision": { - "type": "string", - "description": "The revision of the client SDK used by your application. Format:\n[PLATFORM_TYPE]:[VERSION_NUMBER]. Possible values of PLATFORM_TYPE are:\n \n- \"ANDROID\" - Client is running the Android SDK. \n- \"IOS\" - Client is running the iOS SDK. \n- \"WEB_APP\" - Client is running as a Web App.", - "required": true, - "location": "query" - } - }, - "parameterOrder": [ - "clientRevision" - ], - "response": { - "$ref": "RevisionCheckResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/games", - "https://www.googleapis.com/auth/plus.login" - ] - } - } - }, - "rooms": { - "methods": { - "create": { - "id": "games.rooms.create", - "path": "rooms/create", - "httpMethod": "POST", - "description": "Create a room. For internal use by the Games SDK only. Calling this method directly is unsupported.", - "parameters": { - "language": { - "type": "string", - "description": "The preferred language to use for strings returned by this method.", - "location": "query" - } - }, - "request": { - "$ref": "RoomCreateRequest" - }, - "response": { - "$ref": "Room" - }, - "scopes": [ - "https://www.googleapis.com/auth/games", - "https://www.googleapis.com/auth/plus.login" - ] - }, - "decline": { - "id": "games.rooms.decline", - "path": "rooms/{roomId}/decline", - "httpMethod": "POST", - "description": "Decline an invitation to join a room. For internal use by the Games SDK only. Calling this method directly is unsupported.", - "parameters": { - "language": { - "type": "string", - "description": "The preferred language to use for strings returned by this method.", - "location": "query" - }, - "roomId": { - "type": "string", - "description": "The ID of the room.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "roomId" - ], - "response": { - "$ref": "Room" - }, - "scopes": [ - "https://www.googleapis.com/auth/games", - "https://www.googleapis.com/auth/plus.login" - ] - }, - "dismiss": { - "id": "games.rooms.dismiss", - "path": "rooms/{roomId}/dismiss", - "httpMethod": "POST", - "description": "Dismiss an invitation to join a room. For internal use by the Games SDK only. Calling this method directly is unsupported.", - "parameters": { - "roomId": { - "type": "string", - "description": "The ID of the room.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "roomId" - ], - "scopes": [ - "https://www.googleapis.com/auth/games", - "https://www.googleapis.com/auth/plus.login" - ] - }, - "get": { - "id": "games.rooms.get", - "path": "rooms/{roomId}", - "httpMethod": "GET", - "description": "Get the data for a room.", - "parameters": { - "language": { - "type": "string", - "description": "The preferred language to use for strings returned by this method.", - "location": "query" - }, - "roomId": { - "type": "string", - "description": "The ID of the room.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "roomId" - ], - "response": { - "$ref": "Room" - }, - "scopes": [ - "https://www.googleapis.com/auth/games", - "https://www.googleapis.com/auth/plus.login" - ] - }, - "join": { - "id": "games.rooms.join", - "path": "rooms/{roomId}/join", - "httpMethod": "POST", - "description": "Join a room. For internal use by the Games SDK only. Calling this method directly is unsupported.", - "parameters": { - "language": { - "type": "string", - "description": "The preferred language to use for strings returned by this method.", - "location": "query" - }, - "roomId": { - "type": "string", - "description": "The ID of the room.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "roomId" - ], - "request": { - "$ref": "RoomJoinRequest" - }, - "response": { - "$ref": "Room" - }, - "scopes": [ - "https://www.googleapis.com/auth/games", - "https://www.googleapis.com/auth/plus.login" - ] - }, - "leave": { - "id": "games.rooms.leave", - "path": "rooms/{roomId}/leave", - "httpMethod": "POST", - "description": "Leave a room. For internal use by the Games SDK only. Calling this method directly is unsupported.", - "parameters": { - "language": { - "type": "string", - "description": "The preferred language to use for strings returned by this method.", - "location": "query" - }, - "roomId": { - "type": "string", - "description": "The ID of the room.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "roomId" - ], - "request": { - "$ref": "RoomLeaveRequest" - }, - "response": { - "$ref": "Room" - }, - "scopes": [ - "https://www.googleapis.com/auth/games", - "https://www.googleapis.com/auth/plus.login" - ] - }, - "list": { - "id": "games.rooms.list", - "path": "rooms", - "httpMethod": "GET", - "description": "Returns invitations to join rooms.", - "parameters": { - "language": { - "type": "string", - "description": "The preferred language to use for strings returned by this method.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of rooms to return in the response, used for paging. For any response, the actual number of rooms to return may be less than the specified maxResults.", - "format": "int32", - "minimum": "1", - "maximum": "500", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "The token returned by the previous request.", - "location": "query" - } - }, - "response": { - "$ref": "RoomList" - }, - "scopes": [ - "https://www.googleapis.com/auth/games", - "https://www.googleapis.com/auth/plus.login" - ] - }, - "reportStatus": { - "id": "games.rooms.reportStatus", - "path": "rooms/{roomId}/reportstatus", - "httpMethod": "POST", - "description": "Updates sent by a client reporting the status of peers in a room. For internal use by the Games SDK only. Calling this method directly is unsupported.", - "parameters": { - "language": { - "type": "string", - "description": "The preferred language to use for strings returned by this method.", - "location": "query" - }, - "roomId": { - "type": "string", - "description": "The ID of the room.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "roomId" - ], - "request": { - "$ref": "RoomP2PStatuses" - }, - "response": { - "$ref": "RoomStatus" - }, - "scopes": [ - "https://www.googleapis.com/auth/games", - "https://www.googleapis.com/auth/plus.login" - ] - } - } - }, - "scores": { - "methods": { - "get": { - "id": "games.scores.get", - "path": "players/{playerId}/leaderboards/{leaderboardId}/scores/{timeSpan}", - "httpMethod": "GET", - "description": "Get high scores, and optionally ranks, in leaderboards for the currently authenticated player. For a specific time span, leaderboardId can be set to ALL to retrieve data for all leaderboards in a given time span.\nNOTE: You cannot ask for 'ALL' leaderboards and 'ALL' timeSpans in the same request; only one parameter may be set to 'ALL'.", - "parameters": { - "includeRankType": { - "type": "string", - "description": "The types of ranks to return. If the parameter is omitted, no ranks will be returned.", - "enum": [ - "ALL", - "PUBLIC", - "SOCIAL" - ], - "enumDescriptions": [ - "Retrieve public and social ranks.", - "Retrieve public ranks, if the player is sharing their gameplay activity publicly.", - "Retrieve the social rank." - ], - "location": "query" - }, - "language": { - "type": "string", - "description": "The preferred language to use for strings returned by this method.", - "location": "query" - }, - "leaderboardId": { - "type": "string", - "description": "The ID of the leaderboard. Can be set to 'ALL' to retrieve data for all leaderboards for this application.", - "required": true, - "location": "path" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of leaderboard scores to return in the response. For any response, the actual number of leaderboard scores returned may be less than the specified maxResults.", - "format": "int32", - "minimum": "1", - "maximum": "30", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "The token returned by the previous request.", - "location": "query" - }, - "playerId": { - "type": "string", - "description": "A player ID. A value of me may be used in place of the authenticated player's ID.", - "required": true, - "location": "path" - }, - "timeSpan": { - "type": "string", - "description": "The time span for the scores and ranks you're requesting.", - "required": true, - "enum": [ - "ALL", - "ALL_TIME", - "DAILY", - "WEEKLY" - ], - "enumDescriptions": [ - "Get the high scores for all time spans. If this is used, maxResults values will be ignored.", - "Get the all time high score.", - "List the top scores for the current day.", - "List the top scores for the current week." - ], - "location": "path" - } - }, - "parameterOrder": [ - "playerId", - "leaderboardId", - "timeSpan" - ], - "response": { - "$ref": "PlayerLeaderboardScoreListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/games", - "https://www.googleapis.com/auth/plus.login" - ] - }, - "list": { - "id": "games.scores.list", - "path": "leaderboards/{leaderboardId}/scores/{collection}", - "httpMethod": "GET", - "description": "Lists the scores in a leaderboard, starting from the top.", - "parameters": { - "collection": { - "type": "string", - "description": "The collection of scores you're requesting.", - "required": true, - "enum": [ - "PUBLIC", - "SOCIAL", - "SOCIAL_1P" - ], - "enumDescriptions": [ - "List all scores in the public leaderboard.", - "List only social scores.", - "List only social scores, not respecting the fACL." - ], - "location": "path" - }, - "language": { - "type": "string", - "description": "The preferred language to use for strings returned by this method.", - "location": "query" - }, - "leaderboardId": { - "type": "string", - "description": "The ID of the leaderboard.", - "required": true, - "location": "path" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of leaderboard scores to return in the response. For any response, the actual number of leaderboard scores returned may be less than the specified maxResults.", - "format": "int32", - "minimum": "1", - "maximum": "30", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "The token returned by the previous request.", - "location": "query" - }, - "timeSpan": { - "type": "string", - "description": "The time span for the scores and ranks you're requesting.", - "required": true, - "enum": [ - "ALL_TIME", - "DAILY", - "WEEKLY" - ], - "enumDescriptions": [ - "List the all-time top scores.", - "List the top scores for the current day.", - "List the top scores for the current week." - ], - "location": "query" - } - }, - "parameterOrder": [ - "leaderboardId", - "collection", - "timeSpan" - ], - "response": { - "$ref": "LeaderboardScores" - }, - "scopes": [ - "https://www.googleapis.com/auth/games", - "https://www.googleapis.com/auth/plus.login" - ] - }, - "listWindow": { - "id": "games.scores.listWindow", - "path": "leaderboards/{leaderboardId}/window/{collection}", - "httpMethod": "GET", - "description": "Lists the scores in a leaderboard around (and including) a player's score.", - "parameters": { - "collection": { - "type": "string", - "description": "The collection of scores you're requesting.", - "required": true, - "enum": [ - "PUBLIC", - "SOCIAL", - "SOCIAL_1P" - ], - "enumDescriptions": [ - "List all scores in the public leaderboard.", - "List only social scores.", - "List only social scores, not respecting the fACL." - ], - "location": "path" - }, - "language": { - "type": "string", - "description": "The preferred language to use for strings returned by this method.", - "location": "query" - }, - "leaderboardId": { - "type": "string", - "description": "The ID of the leaderboard.", - "required": true, - "location": "path" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of leaderboard scores to return in the response. For any response, the actual number of leaderboard scores returned may be less than the specified maxResults.", - "format": "int32", - "minimum": "1", - "maximum": "30", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "The token returned by the previous request.", - "location": "query" - }, - "resultsAbove": { - "type": "integer", - "description": "The preferred number of scores to return above the player's score. More scores may be returned if the player is at the bottom of the leaderboard; fewer may be returned if the player is at the top. Must be less than or equal to maxResults.", - "format": "int32", - "location": "query" - }, - "returnTopIfAbsent": { - "type": "boolean", - "description": "True if the top scores should be returned when the player is not in the leaderboard. Defaults to true.", - "location": "query" - }, - "timeSpan": { - "type": "string", - "description": "The time span for the scores and ranks you're requesting.", - "required": true, - "enum": [ - "ALL_TIME", - "DAILY", - "WEEKLY" - ], - "enumDescriptions": [ - "List the all-time top scores.", - "List the top scores for the current day.", - "List the top scores for the current week." - ], - "location": "query" - } - }, - "parameterOrder": [ - "leaderboardId", - "collection", - "timeSpan" - ], - "response": { - "$ref": "LeaderboardScores" - }, - "scopes": [ - "https://www.googleapis.com/auth/games", - "https://www.googleapis.com/auth/plus.login" - ] - }, - "submit": { - "id": "games.scores.submit", - "path": "leaderboards/{leaderboardId}/scores", - "httpMethod": "POST", - "description": "Submits a score to the specified leaderboard.", - "parameters": { - "language": { - "type": "string", - "description": "The preferred language to use for strings returned by this method.", - "location": "query" - }, - "leaderboardId": { - "type": "string", - "description": "The ID of the leaderboard.", - "required": true, - "location": "path" - }, - "score": { - "type": "string", - "description": "The score you're submitting. The submitted score is ignored if it is worse than a previously submitted score, where worse depends on the leaderboard sort order. The meaning of the score value depends on the leaderboard format type. For fixed-point, the score represents the raw value. For time, the score represents elapsed time in milliseconds. For currency, the score represents a value in micro units.", - "required": true, - "format": "int64", - "location": "query" - }, - "scoreTag": { - "type": "string", - "description": "Additional information about the score you're submitting. Values must contain no more than 64 URI-safe characters as defined by section 2.3 of RFC 3986.", - "pattern": "[a-zA-Z0-9-._~]{0,64}", - "location": "query" - } - }, - "parameterOrder": [ - "leaderboardId", - "score" - ], - "response": { - "$ref": "PlayerScoreResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/games", - "https://www.googleapis.com/auth/plus.login" - ] - }, - "submitMultiple": { - "id": "games.scores.submitMultiple", - "path": "leaderboards/scores", - "httpMethod": "POST", - "description": "Submits multiple scores to leaderboards.", - "parameters": { - "language": { - "type": "string", - "description": "The preferred language to use for strings returned by this method.", - "location": "query" - } - }, - "request": { - "$ref": "PlayerScoreSubmissionList" - }, - "response": { - "$ref": "PlayerScoreListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/games", - "https://www.googleapis.com/auth/plus.login" - ] - } - } - }, - "snapshots": { - "methods": { - "get": { - "id": "games.snapshots.get", - "path": "snapshots/{snapshotId}", - "httpMethod": "GET", - "description": "Retrieves the metadata for a given snapshot ID.", - "parameters": { - "language": { - "type": "string", - "description": "The preferred language to use for strings returned by this method.", - "location": "query" - }, - "snapshotId": { - "type": "string", - "description": "The ID of the snapshot.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "snapshotId" - ], - "response": { - "$ref": "Snapshot" - }, - "scopes": [ - "https://www.googleapis.com/auth/drive.appdata", - "https://www.googleapis.com/auth/games", - "https://www.googleapis.com/auth/plus.login" - ] - }, - "list": { - "id": "games.snapshots.list", - "path": "players/{playerId}/snapshots", - "httpMethod": "GET", - "description": "Retrieves a list of snapshots created by your application for the player corresponding to the player ID.", - "parameters": { - "language": { - "type": "string", - "description": "The preferred language to use for strings returned by this method.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of snapshot resources to return in the response, used for paging. For any response, the actual number of snapshot resources returned may be less than the specified maxResults.", - "format": "int32", - "minimum": "1", - "maximum": "25", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "The token returned by the previous request.", - "location": "query" - }, - "playerId": { - "type": "string", - "description": "A player ID. A value of me may be used in place of the authenticated player's ID.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "playerId" - ], - "response": { - "$ref": "SnapshotListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/drive.appdata", - "https://www.googleapis.com/auth/games", - "https://www.googleapis.com/auth/plus.login" - ] - } - } - }, - "turnBasedMatches": { - "methods": { - "cancel": { - "id": "games.turnBasedMatches.cancel", - "path": "turnbasedmatches/{matchId}/cancel", - "httpMethod": "PUT", - "description": "Cancel a turn-based match.", - "parameters": { - "matchId": { - "type": "string", - "description": "The ID of the match.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "matchId" - ], - "scopes": [ - "https://www.googleapis.com/auth/games", - "https://www.googleapis.com/auth/plus.login" - ] - }, - "create": { - "id": "games.turnBasedMatches.create", - "path": "turnbasedmatches/create", - "httpMethod": "POST", - "description": "Create a turn-based match.", - "parameters": { - "language": { - "type": "string", - "description": "The preferred language to use for strings returned by this method.", - "location": "query" - } - }, - "request": { - "$ref": "TurnBasedMatchCreateRequest" - }, - "response": { - "$ref": "TurnBasedMatch" - }, - "scopes": [ - "https://www.googleapis.com/auth/games", - "https://www.googleapis.com/auth/plus.login" - ] - }, - "decline": { - "id": "games.turnBasedMatches.decline", - "path": "turnbasedmatches/{matchId}/decline", - "httpMethod": "PUT", - "description": "Decline an invitation to play a turn-based match.", - "parameters": { - "language": { - "type": "string", - "description": "The preferred language to use for strings returned by this method.", - "location": "query" - }, - "matchId": { - "type": "string", - "description": "The ID of the match.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "matchId" - ], - "response": { - "$ref": "TurnBasedMatch" - }, - "scopes": [ - "https://www.googleapis.com/auth/games", - "https://www.googleapis.com/auth/plus.login" - ] - }, - "dismiss": { - "id": "games.turnBasedMatches.dismiss", - "path": "turnbasedmatches/{matchId}/dismiss", - "httpMethod": "PUT", - "description": "Dismiss a turn-based match from the match list. The match will no longer show up in the list and will not generate notifications.", - "parameters": { - "matchId": { - "type": "string", - "description": "The ID of the match.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "matchId" - ], - "scopes": [ - "https://www.googleapis.com/auth/games", - "https://www.googleapis.com/auth/plus.login" - ] - }, - "finish": { - "id": "games.turnBasedMatches.finish", - "path": "turnbasedmatches/{matchId}/finish", - "httpMethod": "PUT", - "description": "Finish a turn-based match. Each player should make this call once, after all results are in. Only the player whose turn it is may make the first call to Finish, and can pass in the final match state.", - "parameters": { - "language": { - "type": "string", - "description": "The preferred language to use for strings returned by this method.", - "location": "query" - }, - "matchId": { - "type": "string", - "description": "The ID of the match.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "matchId" - ], - "request": { - "$ref": "TurnBasedMatchResults" - }, - "response": { - "$ref": "TurnBasedMatch" - }, - "scopes": [ - "https://www.googleapis.com/auth/games", - "https://www.googleapis.com/auth/plus.login" - ] - }, - "get": { - "id": "games.turnBasedMatches.get", - "path": "turnbasedmatches/{matchId}", - "httpMethod": "GET", - "description": "Get the data for a turn-based match.", - "parameters": { - "includeMatchData": { - "type": "boolean", - "description": "Get match data along with metadata.", - "location": "query" - }, - "language": { - "type": "string", - "description": "The preferred language to use for strings returned by this method.", - "location": "query" - }, - "matchId": { - "type": "string", - "description": "The ID of the match.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "matchId" - ], - "response": { - "$ref": "TurnBasedMatch" - }, - "scopes": [ - "https://www.googleapis.com/auth/games", - "https://www.googleapis.com/auth/plus.login" - ] - }, - "join": { - "id": "games.turnBasedMatches.join", - "path": "turnbasedmatches/{matchId}/join", - "httpMethod": "PUT", - "description": "Join a turn-based match.", - "parameters": { - "language": { - "type": "string", - "description": "The preferred language to use for strings returned by this method.", - "location": "query" - }, - "matchId": { - "type": "string", - "description": "The ID of the match.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "matchId" - ], - "response": { - "$ref": "TurnBasedMatch" - }, - "scopes": [ - "https://www.googleapis.com/auth/games", - "https://www.googleapis.com/auth/plus.login" - ] - }, - "leave": { - "id": "games.turnBasedMatches.leave", - "path": "turnbasedmatches/{matchId}/leave", - "httpMethod": "PUT", - "description": "Leave a turn-based match when it is not the current player's turn, without canceling the match.", - "parameters": { - "language": { - "type": "string", - "description": "The preferred language to use for strings returned by this method.", - "location": "query" - }, - "matchId": { - "type": "string", - "description": "The ID of the match.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "matchId" - ], - "response": { - "$ref": "TurnBasedMatch" - }, - "scopes": [ - "https://www.googleapis.com/auth/games", - "https://www.googleapis.com/auth/plus.login" - ] - }, - "leaveTurn": { - "id": "games.turnBasedMatches.leaveTurn", - "path": "turnbasedmatches/{matchId}/leaveTurn", - "httpMethod": "PUT", - "description": "Leave a turn-based match during the current player's turn, without canceling the match.", - "parameters": { - "language": { - "type": "string", - "description": "The preferred language to use for strings returned by this method.", - "location": "query" - }, - "matchId": { - "type": "string", - "description": "The ID of the match.", - "required": true, - "location": "path" - }, - "matchVersion": { - "type": "integer", - "description": "The version of the match being updated.", - "required": true, - "format": "int32", - "location": "query" - }, - "pendingParticipantId": { - "type": "string", - "description": "The ID of another participant who should take their turn next. If not set, the match will wait for other player(s) to join via automatching; this is only valid if automatch criteria is set on the match with remaining slots for automatched players.", - "location": "query" - } - }, - "parameterOrder": [ - "matchId", - "matchVersion" - ], - "response": { - "$ref": "TurnBasedMatch" - }, - "scopes": [ - "https://www.googleapis.com/auth/games", - "https://www.googleapis.com/auth/plus.login" - ] - }, - "list": { - "id": "games.turnBasedMatches.list", - "path": "turnbasedmatches", - "httpMethod": "GET", - "description": "Returns turn-based matches the player is or was involved in.", - "parameters": { - "includeMatchData": { - "type": "boolean", - "description": "True if match data should be returned in the response. Note that not all data will necessarily be returned if include_match_data is true; the server may decide to only return data for some of the matches to limit download size for the client. The remainder of the data for these matches will be retrievable on request.", - "location": "query" - }, - "language": { - "type": "string", - "description": "The preferred language to use for strings returned by this method.", - "location": "query" - }, - "maxCompletedMatches": { - "type": "integer", - "description": "The maximum number of completed or canceled matches to return in the response. If not set, all matches returned could be completed or canceled.", - "format": "int32", - "minimum": "0", - "maximum": "500", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of matches to return in the response, used for paging. For any response, the actual number of matches to return may be less than the specified maxResults.", - "format": "int32", - "minimum": "1", - "maximum": "500", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "The token returned by the previous request.", - "location": "query" - } - }, - "response": { - "$ref": "TurnBasedMatchList" - }, - "scopes": [ - "https://www.googleapis.com/auth/games", - "https://www.googleapis.com/auth/plus.login" - ] - }, - "rematch": { - "id": "games.turnBasedMatches.rematch", - "path": "turnbasedmatches/{matchId}/rematch", - "httpMethod": "POST", - "description": "Create a rematch of a match that was previously completed, with the same participants. This can be called by only one player on a match still in their list; the player must have called Finish first. Returns the newly created match; it will be the caller's turn.", - "parameters": { - "language": { - "type": "string", - "description": "The preferred language to use for strings returned by this method.", - "location": "query" - }, - "matchId": { - "type": "string", - "description": "The ID of the match.", - "required": true, - "location": "path" - }, - "requestId": { - "type": "string", - "description": "A randomly generated numeric ID for each request specified by the caller. This number is used at the server to ensure that the request is handled correctly across retries.", - "format": "int64", - "location": "query" - } - }, - "parameterOrder": [ - "matchId" - ], - "response": { - "$ref": "TurnBasedMatchRematch" - }, - "scopes": [ - "https://www.googleapis.com/auth/games", - "https://www.googleapis.com/auth/plus.login" - ] - }, - "sync": { - "id": "games.turnBasedMatches.sync", - "path": "turnbasedmatches/sync", - "httpMethod": "GET", - "description": "Returns turn-based matches the player is or was involved in that changed since the last sync call, with the least recent changes coming first. Matches that should be removed from the local cache will have a status of MATCH_DELETED.", - "parameters": { - "includeMatchData": { - "type": "boolean", - "description": "True if match data should be returned in the response. Note that not all data will necessarily be returned if include_match_data is true; the server may decide to only return data for some of the matches to limit download size for the client. The remainder of the data for these matches will be retrievable on request.", - "location": "query" - }, - "language": { - "type": "string", - "description": "The preferred language to use for strings returned by this method.", - "location": "query" - }, - "maxCompletedMatches": { - "type": "integer", - "description": "The maximum number of completed or canceled matches to return in the response. If not set, all matches returned could be completed or canceled.", - "format": "int32", - "minimum": "0", - "maximum": "500", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of matches to return in the response, used for paging. For any response, the actual number of matches to return may be less than the specified maxResults.", - "format": "int32", - "minimum": "1", - "maximum": "500", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "The token returned by the previous request.", - "location": "query" - } - }, - "response": { - "$ref": "TurnBasedMatchSync" - }, - "scopes": [ - "https://www.googleapis.com/auth/games", - "https://www.googleapis.com/auth/plus.login" - ] - }, - "takeTurn": { - "id": "games.turnBasedMatches.takeTurn", - "path": "turnbasedmatches/{matchId}/turn", - "httpMethod": "PUT", - "description": "Commit the results of a player turn.", - "parameters": { - "language": { - "type": "string", - "description": "The preferred language to use for strings returned by this method.", - "location": "query" - }, - "matchId": { - "type": "string", - "description": "The ID of the match.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "matchId" - ], - "request": { - "$ref": "TurnBasedMatchTurn" - }, - "response": { - "$ref": "TurnBasedMatch" - }, - "scopes": [ - "https://www.googleapis.com/auth/games", - "https://www.googleapis.com/auth/plus.login" - ] - } - } - } - } -} + "servicePath": "games/v1/", + "title": "Google Play Game Services API", + "version": "v1" +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/gamesconfiguration/v1configuration/gamesconfiguration-api.json b/vendor/google.golang.org/api/gamesconfiguration/v1configuration/gamesconfiguration-api.json index 1de4d4927..6c7fd539e 100644 --- a/vendor/google.golang.org/api/gamesconfiguration/v1configuration/gamesconfiguration-api.json +++ b/vendor/google.golang.org/api/gamesconfiguration/v1configuration/gamesconfiguration-api.json @@ -1,774 +1,774 @@ { - "kind": "discovery#restDescription", - "etag": "\"YWOzh2SDasdU84ArJnpYek-OMdg/V9bMC5OL2jFg9_Lf_SdJ5NVszwI\"", - "discoveryVersion": "v1", - "id": "gamesConfiguration:v1configuration", - "name": "gamesConfiguration", - "canonicalName": "Games Configuration", - "version": "v1configuration", - "revision": "20170911", - "title": "Google Play Game Services Publishing API", - "description": "The Publishing API for Google Play Game Services.", - "ownerDomain": "google.com", - "ownerName": "Google", - "icons": { - "x16": "https://www.gstatic.com/images/branding/product/1x/googleg_16dp.png", - "x32": "https://www.gstatic.com/images/branding/product/1x/googleg_32dp.png" - }, - "documentationLink": "https://developers.google.com/games/services", - "protocol": "rest", - "baseUrl": "https://www.googleapis.com/games/v1configuration/", - "basePath": "/games/v1configuration/", - "rootUrl": "https://www.googleapis.com/", - "servicePath": "games/v1configuration/", - "batchPath": "batch/gamesConfiguration/v1configuration", - "parameters": { - "alt": { - "type": "string", - "description": "Data format for the response.", - "default": "json", - "enum": [ - "json" - ], - "enumDescriptions": [ - "Responses with Content-Type of application/json" - ], - "location": "query" - }, - "fields": { - "type": "string", - "description": "Selector specifying which fields to include in a partial response.", - "location": "query" - }, - "key": { - "type": "string", - "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" - }, - "oauth_token": { - "type": "string", - "description": "OAuth 2.0 token for the current user.", - "location": "query" - }, - "prettyPrint": { - "type": "boolean", - "description": "Returns response with indentations and line breaks.", - "default": "true", - "location": "query" - }, - "quotaUser": { - "type": "string", - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", - "location": "query" - }, - "userIp": { - "type": "string", - "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", - "location": "query" - } - }, - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/androidpublisher": { - "description": "View and manage your Google Play Developer account" - } - } - } - }, - "schemas": { - "AchievementConfiguration": { - "id": "AchievementConfiguration", - "type": "object", - "description": "This is a JSON template for an achievement configuration resource.", - "properties": { - "achievementType": { - "type": "string", - "description": "The type of the achievement.\nPossible values are: \n- \"STANDARD\" - Achievement is either locked or unlocked. \n- \"INCREMENTAL\" - Achievement is incremental." - }, - "draft": { - "$ref": "AchievementConfigurationDetail", - "description": "The draft data of the achievement." - }, - "id": { - "type": "string", - "description": "The ID of the achievement." - }, - "initialState": { - "type": "string", - "description": "The initial state of the achievement.\nPossible values are: \n- \"HIDDEN\" - Achievement is hidden. \n- \"REVEALED\" - Achievement is revealed. \n- \"UNLOCKED\" - Achievement is unlocked." - }, - "kind": { - "type": "string", - "description": "Uniquely identifies the type of this resource. Value is always the fixed string gamesConfiguration#achievementConfiguration.", - "default": "gamesConfiguration#achievementConfiguration" - }, - "published": { - "$ref": "AchievementConfigurationDetail", - "description": "The read-only published data of the achievement." - }, - "stepsToUnlock": { - "type": "integer", - "description": "Steps to unlock. Only applicable to incremental achievements.", - "format": "int32" - }, - "token": { - "type": "string", - "description": "The token for this resource." - } - } - }, - "AchievementConfigurationDetail": { - "id": "AchievementConfigurationDetail", - "type": "object", - "description": "This is a JSON template for an achievement configuration detail.", - "properties": { - "description": { - "$ref": "LocalizedStringBundle", - "description": "Localized strings for the achievement description." - }, - "iconUrl": { - "type": "string", - "description": "The icon url of this achievement. Writes to this field are ignored." - }, - "kind": { - "type": "string", - "description": "Uniquely identifies the type of this resource. Value is always the fixed string gamesConfiguration#achievementConfigurationDetail.", - "default": "gamesConfiguration#achievementConfigurationDetail" - }, - "name": { - "$ref": "LocalizedStringBundle", - "description": "Localized strings for the achievement name." - }, - "pointValue": { - "type": "integer", - "description": "Point value for the achievement.", - "format": "int32" - }, - "sortRank": { - "type": "integer", - "description": "The sort rank of this achievement. Writes to this field are ignored.", - "format": "int32" - } - } - }, - "AchievementConfigurationListResponse": { - "id": "AchievementConfigurationListResponse", - "type": "object", - "description": "This is a JSON template for a ListConfigurations response.", - "properties": { - "items": { - "type": "array", - "description": "The achievement configurations.", - "items": { - "$ref": "AchievementConfiguration" - } - }, - "kind": { - "type": "string", - "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#achievementConfigurationListResponse.", - "default": "gamesConfiguration#achievementConfigurationListResponse" - }, - "nextPageToken": { - "type": "string", - "description": "The pagination token for the next page of results." - } - } - }, - "GamesNumberAffixConfiguration": { - "id": "GamesNumberAffixConfiguration", - "type": "object", - "description": "This is a JSON template for a number affix resource.", - "properties": { - "few": { - "$ref": "LocalizedStringBundle", - "description": "When the language requires special treatment of \"small\" numbers (as with 2, 3, and 4 in Czech; or numbers ending 2, 3, or 4 but not 12, 13, or 14 in Polish)." - }, - "many": { - "$ref": "LocalizedStringBundle", - "description": "When the language requires special treatment of \"large\" numbers (as with numbers ending 11-99 in Maltese)." - }, - "one": { - "$ref": "LocalizedStringBundle", - "description": "When the language requires special treatment of numbers like one (as with the number 1 in English and most other languages; in Russian, any number ending in 1 but not ending in 11 is in this class)." - }, - "other": { - "$ref": "LocalizedStringBundle", - "description": "When the language does not require special treatment of the given quantity (as with all numbers in Chinese, or 42 in English)." - }, - "two": { - "$ref": "LocalizedStringBundle", - "description": "When the language requires special treatment of numbers like two (as with 2 in Welsh, or 102 in Slovenian)." - }, - "zero": { - "$ref": "LocalizedStringBundle", - "description": "When the language requires special treatment of the number 0 (as in Arabic)." - } - } - }, - "GamesNumberFormatConfiguration": { - "id": "GamesNumberFormatConfiguration", - "type": "object", - "description": "This is a JSON template for a number format resource.", - "properties": { - "currencyCode": { - "type": "string", - "description": "The curreny code string. Only used for CURRENCY format type." - }, - "numDecimalPlaces": { - "type": "integer", - "description": "The number of decimal places for number. Only used for NUMERIC format type.", - "format": "int32" - }, - "numberFormatType": { - "type": "string", - "description": "The formatting for the number.\nPossible values are: \n- \"NUMERIC\" - Numbers are formatted to have no digits or a fixed number of digits after the decimal point according to locale. An optional custom unit can be added.\n- \"TIME_DURATION\" - Numbers are formatted to hours, minutes and seconds.\n- \"CURRENCY\" - Numbers are formatted to currency according to locale." - }, - "suffix": { - "$ref": "GamesNumberAffixConfiguration", - "description": "An optional suffix for the NUMERIC format type. These strings follow the same plural rules as all Android string resources." - } - } - }, - "ImageConfiguration": { - "id": "ImageConfiguration", - "type": "object", - "description": "This is a JSON template for an image configuration resource.", - "properties": { - "imageType": { - "type": "string", - "description": "The image type for the image." - }, - "kind": { - "type": "string", - "description": "Uniquely identifies the type of this resource. Value is always the fixed string gamesConfiguration#imageConfiguration.", - "default": "gamesConfiguration#imageConfiguration" - }, - "resourceId": { - "type": "string", - "description": "The resource ID of resource which the image belongs to." - }, - "url": { - "type": "string", - "description": "The url for this image." - } - } - }, - "LeaderboardConfiguration": { - "id": "LeaderboardConfiguration", - "type": "object", - "description": "This is a JSON template for an leaderboard configuration resource.", - "properties": { - "draft": { - "$ref": "LeaderboardConfigurationDetail", - "description": "The draft data of the leaderboard." - }, - "id": { - "type": "string", - "description": "The ID of the leaderboard." - }, - "kind": { - "type": "string", - "description": "Uniquely identifies the type of this resource. Value is always the fixed string gamesConfiguration#leaderboardConfiguration.", - "default": "gamesConfiguration#leaderboardConfiguration" - }, - "published": { - "$ref": "LeaderboardConfigurationDetail", - "description": "The read-only published data of the leaderboard." - }, - "scoreMax": { - "type": "string", - "description": "Maximum score that can be posted to this leaderboard.", - "format": "int64" - }, - "scoreMin": { - "type": "string", - "description": "Minimum score that can be posted to this leaderboard.", - "format": "int64" - }, - "scoreOrder": { - "type": "string", - "description": "The type of the leaderboard.\nPossible values are: \n- \"LARGER_IS_BETTER\" - Larger scores posted are ranked higher. \n- \"SMALLER_IS_BETTER\" - Smaller scores posted are ranked higher." - }, - "token": { - "type": "string", - "description": "The token for this resource." - } - } - }, - "LeaderboardConfigurationDetail": { - "id": "LeaderboardConfigurationDetail", - "type": "object", - "description": "This is a JSON template for a leaderboard configuration detail.", - "properties": { - "iconUrl": { - "type": "string", - "description": "The icon url of this leaderboard. Writes to this field are ignored." - }, - "kind": { - "type": "string", - "description": "Uniquely identifies the type of this resource. Value is always the fixed string gamesConfiguration#leaderboardConfigurationDetail.", - "default": "gamesConfiguration#leaderboardConfigurationDetail" - }, - "name": { - "$ref": "LocalizedStringBundle", - "description": "Localized strings for the leaderboard name." - }, - "scoreFormat": { - "$ref": "GamesNumberFormatConfiguration", - "description": "The score formatting for the leaderboard." - }, - "sortRank": { - "type": "integer", - "description": "The sort rank of this leaderboard. Writes to this field are ignored.", - "format": "int32" - } - } - }, - "LeaderboardConfigurationListResponse": { - "id": "LeaderboardConfigurationListResponse", - "type": "object", - "description": "This is a JSON template for a ListConfigurations response.", - "properties": { - "items": { - "type": "array", - "description": "The leaderboard configurations.", - "items": { - "$ref": "LeaderboardConfiguration" - } - }, - "kind": { - "type": "string", - "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#leaderboardConfigurationListResponse.", - "default": "gamesConfiguration#leaderboardConfigurationListResponse" - }, - "nextPageToken": { - "type": "string", - "description": "The pagination token for the next page of results." - } - } - }, - "LocalizedString": { - "id": "LocalizedString", - "type": "object", - "description": "This is a JSON template for a localized string resource.", - "properties": { - "kind": { - "type": "string", - "description": "Uniquely identifies the type of this resource. Value is always the fixed string gamesConfiguration#localizedString.", - "default": "gamesConfiguration#localizedString" - }, - "locale": { - "type": "string", - "description": "The locale string." - }, - "value": { - "type": "string", - "description": "The string value." - } - } - }, - "LocalizedStringBundle": { - "id": "LocalizedStringBundle", - "type": "object", - "description": "This is a JSON template for a localized string bundle resource.", - "properties": { - "kind": { - "type": "string", - "description": "Uniquely identifies the type of this resource. Value is always the fixed string gamesConfiguration#localizedStringBundle.", - "default": "gamesConfiguration#localizedStringBundle" - }, - "translations": { - "type": "array", - "description": "The locale strings.", - "items": { - "$ref": "LocalizedString" - } - } - } - } - }, - "resources": { - "achievementConfigurations": { - "methods": { - "delete": { - "id": "gamesConfiguration.achievementConfigurations.delete", - "path": "achievements/{achievementId}", - "httpMethod": "DELETE", - "description": "Delete the achievement configuration with the given ID.", - "parameters": { - "achievementId": { - "type": "string", - "description": "The ID of the achievement used by this method.", - "required": true, - "location": "path" + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/androidpublisher": { + "description": "View and manage your Google Play Developer account" + } } - }, - "parameterOrder": [ - "achievementId" - ], - "scopes": [ - "https://www.googleapis.com/auth/androidpublisher" - ] - }, - "get": { - "id": "gamesConfiguration.achievementConfigurations.get", - "path": "achievements/{achievementId}", - "httpMethod": "GET", - "description": "Retrieves the metadata of the achievement configuration with the given ID.", - "parameters": { - "achievementId": { - "type": "string", - "description": "The ID of the achievement used by this method.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "achievementId" - ], - "response": { - "$ref": "AchievementConfiguration" - }, - "scopes": [ - "https://www.googleapis.com/auth/androidpublisher" - ] - }, - "insert": { - "id": "gamesConfiguration.achievementConfigurations.insert", - "path": "applications/{applicationId}/achievements", - "httpMethod": "POST", - "description": "Insert a new achievement configuration in this application.", - "parameters": { - "applicationId": { - "type": "string", - "description": "The application ID from the Google Play developer console.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "applicationId" - ], - "request": { - "$ref": "AchievementConfiguration" - }, - "response": { - "$ref": "AchievementConfiguration" - }, - "scopes": [ - "https://www.googleapis.com/auth/androidpublisher" - ] - }, - "list": { - "id": "gamesConfiguration.achievementConfigurations.list", - "path": "applications/{applicationId}/achievements", - "httpMethod": "GET", - "description": "Returns a list of the achievement configurations in this application.", - "parameters": { - "applicationId": { - "type": "string", - "description": "The application ID from the Google Play developer console.", - "required": true, - "location": "path" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of resource configurations to return in the response, used for paging. For any response, the actual number of resources returned may be less than the specified maxResults.", - "format": "int32", - "minimum": "1", - "maximum": "200", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "The token returned by the previous request.", - "location": "query" - } - }, - "parameterOrder": [ - "applicationId" - ], - "response": { - "$ref": "AchievementConfigurationListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/androidpublisher" - ] - }, - "patch": { - "id": "gamesConfiguration.achievementConfigurations.patch", - "path": "achievements/{achievementId}", - "httpMethod": "PATCH", - "description": "Update the metadata of the achievement configuration with the given ID. This method supports patch semantics.", - "parameters": { - "achievementId": { - "type": "string", - "description": "The ID of the achievement used by this method.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "achievementId" - ], - "request": { - "$ref": "AchievementConfiguration" - }, - "response": { - "$ref": "AchievementConfiguration" - }, - "scopes": [ - "https://www.googleapis.com/auth/androidpublisher" - ] - }, - "update": { - "id": "gamesConfiguration.achievementConfigurations.update", - "path": "achievements/{achievementId}", - "httpMethod": "PUT", - "description": "Update the metadata of the achievement configuration with the given ID.", - "parameters": { - "achievementId": { - "type": "string", - "description": "The ID of the achievement used by this method.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "achievementId" - ], - "request": { - "$ref": "AchievementConfiguration" - }, - "response": { - "$ref": "AchievementConfiguration" - }, - "scopes": [ - "https://www.googleapis.com/auth/androidpublisher" - ] } - } }, - "imageConfigurations": { - "methods": { - "upload": { - "id": "gamesConfiguration.imageConfigurations.upload", - "path": "images/{resourceId}/imageType/{imageType}", - "httpMethod": "POST", - "description": "Uploads an image for a resource with the given ID and image type.", - "parameters": { - "imageType": { - "type": "string", - "description": "Selects which image in a resource for this method.", - "required": true, - "enum": [ - "ACHIEVEMENT_ICON", - "LEADERBOARD_ICON" - ], - "enumDescriptions": [ - "The icon image for an achievement resource.", - "The icon image for a leaderboard resource." - ], - "location": "path" - }, - "resourceId": { - "type": "string", - "description": "The ID of the resource used by this method.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "resourceId", - "imageType" - ], - "response": { - "$ref": "ImageConfiguration" - }, - "scopes": [ - "https://www.googleapis.com/auth/androidpublisher" - ], - "supportsMediaUpload": true, - "mediaUpload": { - "accept": [ - "image/*" + "basePath": "/games/v1configuration/", + "baseUrl": "https://www.googleapis.com/games/v1configuration/", + "batchPath": "batch/gamesConfiguration/v1configuration", + "canonicalName": "Games Configuration", + "description": "The Publishing API for Google Play Game Services.", + "discoveryVersion": "v1", + "documentationLink": "https://developers.google.com/games/services", + "etag": "\"-iA1DTNe4s-I6JZXPt1t1Ypy8IU/mTDEk9FitO9f_s4BBm_04Bo6ONQ\"", + "icons": { + "x16": "https://www.gstatic.com/images/branding/product/1x/googleg_16dp.png", + "x32": "https://www.gstatic.com/images/branding/product/1x/googleg_32dp.png" + }, + "id": "gamesConfiguration:v1configuration", + "kind": "discovery#restDescription", + "name": "gamesConfiguration", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "alt": { + "default": "json", + "description": "Data format for the response.", + "enum": [ + "json" ], - "maxSize": "15MB", - "protocols": { - "simple": { - "multipart": true, - "path": "/upload/games/v1configuration/images/{resourceId}/imageType/{imageType}" - }, - "resumable": { - "multipart": true, - "path": "/resumable/upload/games/v1configuration/images/{resourceId}/imageType/{imageType}" - } - } - } + "enumDescriptions": [ + "Responses with Content-Type of application/json" + ], + "location": "query", + "type": "string" + }, + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "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.", + "location": "query", + "type": "string" + }, + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", + "location": "query", + "type": "string" + }, + "userIp": { + "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", + "location": "query", + "type": "string" } - } }, - "leaderboardConfigurations": { - "methods": { - "delete": { - "id": "gamesConfiguration.leaderboardConfigurations.delete", - "path": "leaderboards/{leaderboardId}", - "httpMethod": "DELETE", - "description": "Delete the leaderboard configuration with the given ID.", - "parameters": { - "leaderboardId": { - "type": "string", - "description": "The ID of the leaderboard.", - "required": true, - "location": "path" + "protocol": "rest", + "resources": { + "achievementConfigurations": { + "methods": { + "delete": { + "description": "Delete the achievement configuration with the given ID.", + "httpMethod": "DELETE", + "id": "gamesConfiguration.achievementConfigurations.delete", + "parameterOrder": [ + "achievementId" + ], + "parameters": { + "achievementId": { + "description": "The ID of the achievement used by this method.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "achievements/{achievementId}", + "scopes": [ + "https://www.googleapis.com/auth/androidpublisher" + ] + }, + "get": { + "description": "Retrieves the metadata of the achievement configuration with the given ID.", + "httpMethod": "GET", + "id": "gamesConfiguration.achievementConfigurations.get", + "parameterOrder": [ + "achievementId" + ], + "parameters": { + "achievementId": { + "description": "The ID of the achievement used by this method.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "achievements/{achievementId}", + "response": { + "$ref": "AchievementConfiguration" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidpublisher" + ] + }, + "insert": { + "description": "Insert a new achievement configuration in this application.", + "httpMethod": "POST", + "id": "gamesConfiguration.achievementConfigurations.insert", + "parameterOrder": [ + "applicationId" + ], + "parameters": { + "applicationId": { + "description": "The application ID from the Google Play developer console.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "applications/{applicationId}/achievements", + "request": { + "$ref": "AchievementConfiguration" + }, + "response": { + "$ref": "AchievementConfiguration" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidpublisher" + ] + }, + "list": { + "description": "Returns a list of the achievement configurations in this application.", + "httpMethod": "GET", + "id": "gamesConfiguration.achievementConfigurations.list", + "parameterOrder": [ + "applicationId" + ], + "parameters": { + "applicationId": { + "description": "The application ID from the Google Play developer console.", + "location": "path", + "required": true, + "type": "string" + }, + "maxResults": { + "description": "The maximum number of resource configurations to return in the response, used for paging. For any response, the actual number of resources returned may be less than the specified maxResults.", + "format": "int32", + "location": "query", + "maximum": "200", + "minimum": "1", + "type": "integer" + }, + "pageToken": { + "description": "The token returned by the previous request.", + "location": "query", + "type": "string" + } + }, + "path": "applications/{applicationId}/achievements", + "response": { + "$ref": "AchievementConfigurationListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidpublisher" + ] + }, + "patch": { + "description": "Update the metadata of the achievement configuration with the given ID. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "gamesConfiguration.achievementConfigurations.patch", + "parameterOrder": [ + "achievementId" + ], + "parameters": { + "achievementId": { + "description": "The ID of the achievement used by this method.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "achievements/{achievementId}", + "request": { + "$ref": "AchievementConfiguration" + }, + "response": { + "$ref": "AchievementConfiguration" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidpublisher" + ] + }, + "update": { + "description": "Update the metadata of the achievement configuration with the given ID.", + "httpMethod": "PUT", + "id": "gamesConfiguration.achievementConfigurations.update", + "parameterOrder": [ + "achievementId" + ], + "parameters": { + "achievementId": { + "description": "The ID of the achievement used by this method.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "achievements/{achievementId}", + "request": { + "$ref": "AchievementConfiguration" + }, + "response": { + "$ref": "AchievementConfiguration" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidpublisher" + ] + } } - }, - "parameterOrder": [ - "leaderboardId" - ], - "scopes": [ - "https://www.googleapis.com/auth/androidpublisher" - ] }, - "get": { - "id": "gamesConfiguration.leaderboardConfigurations.get", - "path": "leaderboards/{leaderboardId}", - "httpMethod": "GET", - "description": "Retrieves the metadata of the leaderboard configuration with the given ID.", - "parameters": { - "leaderboardId": { - "type": "string", - "description": "The ID of the leaderboard.", - "required": true, - "location": "path" + "imageConfigurations": { + "methods": { + "upload": { + "description": "Uploads an image for a resource with the given ID and image type.", + "httpMethod": "POST", + "id": "gamesConfiguration.imageConfigurations.upload", + "mediaUpload": { + "accept": [ + "image/*" + ], + "maxSize": "15MB", + "protocols": { + "resumable": { + "multipart": true, + "path": "/resumable/upload/games/v1configuration/images/{resourceId}/imageType/{imageType}" + }, + "simple": { + "multipart": true, + "path": "/upload/games/v1configuration/images/{resourceId}/imageType/{imageType}" + } + } + }, + "parameterOrder": [ + "resourceId", + "imageType" + ], + "parameters": { + "imageType": { + "description": "Selects which image in a resource for this method.", + "enum": [ + "ACHIEVEMENT_ICON", + "LEADERBOARD_ICON" + ], + "enumDescriptions": [ + "The icon image for an achievement resource.", + "The icon image for a leaderboard resource." + ], + "location": "path", + "required": true, + "type": "string" + }, + "resourceId": { + "description": "The ID of the resource used by this method.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "images/{resourceId}/imageType/{imageType}", + "response": { + "$ref": "ImageConfiguration" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidpublisher" + ], + "supportsMediaUpload": true + } } - }, - "parameterOrder": [ - "leaderboardId" - ], - "response": { - "$ref": "LeaderboardConfiguration" - }, - "scopes": [ - "https://www.googleapis.com/auth/androidpublisher" - ] }, - "insert": { - "id": "gamesConfiguration.leaderboardConfigurations.insert", - "path": "applications/{applicationId}/leaderboards", - "httpMethod": "POST", - "description": "Insert a new leaderboard configuration in this application.", - "parameters": { - "applicationId": { - "type": "string", - "description": "The application ID from the Google Play developer console.", - "required": true, - "location": "path" + "leaderboardConfigurations": { + "methods": { + "delete": { + "description": "Delete the leaderboard configuration with the given ID.", + "httpMethod": "DELETE", + "id": "gamesConfiguration.leaderboardConfigurations.delete", + "parameterOrder": [ + "leaderboardId" + ], + "parameters": { + "leaderboardId": { + "description": "The ID of the leaderboard.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "leaderboards/{leaderboardId}", + "scopes": [ + "https://www.googleapis.com/auth/androidpublisher" + ] + }, + "get": { + "description": "Retrieves the metadata of the leaderboard configuration with the given ID.", + "httpMethod": "GET", + "id": "gamesConfiguration.leaderboardConfigurations.get", + "parameterOrder": [ + "leaderboardId" + ], + "parameters": { + "leaderboardId": { + "description": "The ID of the leaderboard.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "leaderboards/{leaderboardId}", + "response": { + "$ref": "LeaderboardConfiguration" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidpublisher" + ] + }, + "insert": { + "description": "Insert a new leaderboard configuration in this application.", + "httpMethod": "POST", + "id": "gamesConfiguration.leaderboardConfigurations.insert", + "parameterOrder": [ + "applicationId" + ], + "parameters": { + "applicationId": { + "description": "The application ID from the Google Play developer console.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "applications/{applicationId}/leaderboards", + "request": { + "$ref": "LeaderboardConfiguration" + }, + "response": { + "$ref": "LeaderboardConfiguration" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidpublisher" + ] + }, + "list": { + "description": "Returns a list of the leaderboard configurations in this application.", + "httpMethod": "GET", + "id": "gamesConfiguration.leaderboardConfigurations.list", + "parameterOrder": [ + "applicationId" + ], + "parameters": { + "applicationId": { + "description": "The application ID from the Google Play developer console.", + "location": "path", + "required": true, + "type": "string" + }, + "maxResults": { + "description": "The maximum number of resource configurations to return in the response, used for paging. For any response, the actual number of resources returned may be less than the specified maxResults.", + "format": "int32", + "location": "query", + "maximum": "200", + "minimum": "1", + "type": "integer" + }, + "pageToken": { + "description": "The token returned by the previous request.", + "location": "query", + "type": "string" + } + }, + "path": "applications/{applicationId}/leaderboards", + "response": { + "$ref": "LeaderboardConfigurationListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidpublisher" + ] + }, + "patch": { + "description": "Update the metadata of the leaderboard configuration with the given ID. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "gamesConfiguration.leaderboardConfigurations.patch", + "parameterOrder": [ + "leaderboardId" + ], + "parameters": { + "leaderboardId": { + "description": "The ID of the leaderboard.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "leaderboards/{leaderboardId}", + "request": { + "$ref": "LeaderboardConfiguration" + }, + "response": { + "$ref": "LeaderboardConfiguration" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidpublisher" + ] + }, + "update": { + "description": "Update the metadata of the leaderboard configuration with the given ID.", + "httpMethod": "PUT", + "id": "gamesConfiguration.leaderboardConfigurations.update", + "parameterOrder": [ + "leaderboardId" + ], + "parameters": { + "leaderboardId": { + "description": "The ID of the leaderboard.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "leaderboards/{leaderboardId}", + "request": { + "$ref": "LeaderboardConfiguration" + }, + "response": { + "$ref": "LeaderboardConfiguration" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidpublisher" + ] + } } - }, - "parameterOrder": [ - "applicationId" - ], - "request": { - "$ref": "LeaderboardConfiguration" - }, - "response": { - "$ref": "LeaderboardConfiguration" - }, - "scopes": [ - "https://www.googleapis.com/auth/androidpublisher" - ] - }, - "list": { - "id": "gamesConfiguration.leaderboardConfigurations.list", - "path": "applications/{applicationId}/leaderboards", - "httpMethod": "GET", - "description": "Returns a list of the leaderboard configurations in this application.", - "parameters": { - "applicationId": { - "type": "string", - "description": "The application ID from the Google Play developer console.", - "required": true, - "location": "path" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of resource configurations to return in the response, used for paging. For any response, the actual number of resources returned may be less than the specified maxResults.", - "format": "int32", - "minimum": "1", - "maximum": "200", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "The token returned by the previous request.", - "location": "query" - } - }, - "parameterOrder": [ - "applicationId" - ], - "response": { - "$ref": "LeaderboardConfigurationListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/androidpublisher" - ] - }, - "patch": { - "id": "gamesConfiguration.leaderboardConfigurations.patch", - "path": "leaderboards/{leaderboardId}", - "httpMethod": "PATCH", - "description": "Update the metadata of the leaderboard configuration with the given ID. This method supports patch semantics.", - "parameters": { - "leaderboardId": { - "type": "string", - "description": "The ID of the leaderboard.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "leaderboardId" - ], - "request": { - "$ref": "LeaderboardConfiguration" - }, - "response": { - "$ref": "LeaderboardConfiguration" - }, - "scopes": [ - "https://www.googleapis.com/auth/androidpublisher" - ] - }, - "update": { - "id": "gamesConfiguration.leaderboardConfigurations.update", - "path": "leaderboards/{leaderboardId}", - "httpMethod": "PUT", - "description": "Update the metadata of the leaderboard configuration with the given ID.", - "parameters": { - "leaderboardId": { - "type": "string", - "description": "The ID of the leaderboard.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "leaderboardId" - ], - "request": { - "$ref": "LeaderboardConfiguration" - }, - "response": { - "$ref": "LeaderboardConfiguration" - }, - "scopes": [ - "https://www.googleapis.com/auth/androidpublisher" - ] } - } - } - } -} + }, + "revision": "20180122", + "rootUrl": "https://www.googleapis.com/", + "schemas": { + "AchievementConfiguration": { + "description": "This is a JSON template for an achievement configuration resource.", + "id": "AchievementConfiguration", + "properties": { + "achievementType": { + "description": "The type of the achievement.\nPossible values are: \n- \"STANDARD\" - Achievement is either locked or unlocked. \n- \"INCREMENTAL\" - Achievement is incremental.", + "type": "string" + }, + "draft": { + "$ref": "AchievementConfigurationDetail", + "description": "The draft data of the achievement." + }, + "id": { + "description": "The ID of the achievement.", + "type": "string" + }, + "initialState": { + "description": "The initial state of the achievement.\nPossible values are: \n- \"HIDDEN\" - Achievement is hidden. \n- \"REVEALED\" - Achievement is revealed. \n- \"UNLOCKED\" - Achievement is unlocked.", + "type": "string" + }, + "kind": { + "default": "gamesConfiguration#achievementConfiguration", + "description": "Uniquely identifies the type of this resource. Value is always the fixed string gamesConfiguration#achievementConfiguration.", + "type": "string" + }, + "published": { + "$ref": "AchievementConfigurationDetail", + "description": "The read-only published data of the achievement." + }, + "stepsToUnlock": { + "description": "Steps to unlock. Only applicable to incremental achievements.", + "format": "int32", + "type": "integer" + }, + "token": { + "description": "The token for this resource.", + "type": "string" + } + }, + "type": "object" + }, + "AchievementConfigurationDetail": { + "description": "This is a JSON template for an achievement configuration detail.", + "id": "AchievementConfigurationDetail", + "properties": { + "description": { + "$ref": "LocalizedStringBundle", + "description": "Localized strings for the achievement description." + }, + "iconUrl": { + "description": "The icon url of this achievement. Writes to this field are ignored.", + "type": "string" + }, + "kind": { + "default": "gamesConfiguration#achievementConfigurationDetail", + "description": "Uniquely identifies the type of this resource. Value is always the fixed string gamesConfiguration#achievementConfigurationDetail.", + "type": "string" + }, + "name": { + "$ref": "LocalizedStringBundle", + "description": "Localized strings for the achievement name." + }, + "pointValue": { + "description": "Point value for the achievement.", + "format": "int32", + "type": "integer" + }, + "sortRank": { + "description": "The sort rank of this achievement. Writes to this field are ignored.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "AchievementConfigurationListResponse": { + "description": "This is a JSON template for a ListConfigurations response.", + "id": "AchievementConfigurationListResponse", + "properties": { + "items": { + "description": "The achievement configurations.", + "items": { + "$ref": "AchievementConfiguration" + }, + "type": "array" + }, + "kind": { + "default": "gamesConfiguration#achievementConfigurationListResponse", + "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#achievementConfigurationListResponse.", + "type": "string" + }, + "nextPageToken": { + "description": "The pagination token for the next page of results.", + "type": "string" + } + }, + "type": "object" + }, + "GamesNumberAffixConfiguration": { + "description": "This is a JSON template for a number affix resource.", + "id": "GamesNumberAffixConfiguration", + "properties": { + "few": { + "$ref": "LocalizedStringBundle", + "description": "When the language requires special treatment of \"small\" numbers (as with 2, 3, and 4 in Czech; or numbers ending 2, 3, or 4 but not 12, 13, or 14 in Polish)." + }, + "many": { + "$ref": "LocalizedStringBundle", + "description": "When the language requires special treatment of \"large\" numbers (as with numbers ending 11-99 in Maltese)." + }, + "one": { + "$ref": "LocalizedStringBundle", + "description": "When the language requires special treatment of numbers like one (as with the number 1 in English and most other languages; in Russian, any number ending in 1 but not ending in 11 is in this class)." + }, + "other": { + "$ref": "LocalizedStringBundle", + "description": "When the language does not require special treatment of the given quantity (as with all numbers in Chinese, or 42 in English)." + }, + "two": { + "$ref": "LocalizedStringBundle", + "description": "When the language requires special treatment of numbers like two (as with 2 in Welsh, or 102 in Slovenian)." + }, + "zero": { + "$ref": "LocalizedStringBundle", + "description": "When the language requires special treatment of the number 0 (as in Arabic)." + } + }, + "type": "object" + }, + "GamesNumberFormatConfiguration": { + "description": "This is a JSON template for a number format resource.", + "id": "GamesNumberFormatConfiguration", + "properties": { + "currencyCode": { + "description": "The curreny code string. Only used for CURRENCY format type.", + "type": "string" + }, + "numDecimalPlaces": { + "description": "The number of decimal places for number. Only used for NUMERIC format type.", + "format": "int32", + "type": "integer" + }, + "numberFormatType": { + "description": "The formatting for the number.\nPossible values are: \n- \"NUMERIC\" - Numbers are formatted to have no digits or a fixed number of digits after the decimal point according to locale. An optional custom unit can be added.\n- \"TIME_DURATION\" - Numbers are formatted to hours, minutes and seconds.\n- \"CURRENCY\" - Numbers are formatted to currency according to locale.", + "type": "string" + }, + "suffix": { + "$ref": "GamesNumberAffixConfiguration", + "description": "An optional suffix for the NUMERIC format type. These strings follow the same plural rules as all Android string resources." + } + }, + "type": "object" + }, + "ImageConfiguration": { + "description": "This is a JSON template for an image configuration resource.", + "id": "ImageConfiguration", + "properties": { + "imageType": { + "description": "The image type for the image.", + "type": "string" + }, + "kind": { + "default": "gamesConfiguration#imageConfiguration", + "description": "Uniquely identifies the type of this resource. Value is always the fixed string gamesConfiguration#imageConfiguration.", + "type": "string" + }, + "resourceId": { + "description": "The resource ID of resource which the image belongs to.", + "type": "string" + }, + "url": { + "description": "The url for this image.", + "type": "string" + } + }, + "type": "object" + }, + "LeaderboardConfiguration": { + "description": "This is a JSON template for an leaderboard configuration resource.", + "id": "LeaderboardConfiguration", + "properties": { + "draft": { + "$ref": "LeaderboardConfigurationDetail", + "description": "The draft data of the leaderboard." + }, + "id": { + "description": "The ID of the leaderboard.", + "type": "string" + }, + "kind": { + "default": "gamesConfiguration#leaderboardConfiguration", + "description": "Uniquely identifies the type of this resource. Value is always the fixed string gamesConfiguration#leaderboardConfiguration.", + "type": "string" + }, + "published": { + "$ref": "LeaderboardConfigurationDetail", + "description": "The read-only published data of the leaderboard." + }, + "scoreMax": { + "description": "Maximum score that can be posted to this leaderboard.", + "format": "int64", + "type": "string" + }, + "scoreMin": { + "description": "Minimum score that can be posted to this leaderboard.", + "format": "int64", + "type": "string" + }, + "scoreOrder": { + "description": "The type of the leaderboard.\nPossible values are: \n- \"LARGER_IS_BETTER\" - Larger scores posted are ranked higher. \n- \"SMALLER_IS_BETTER\" - Smaller scores posted are ranked higher.", + "type": "string" + }, + "token": { + "description": "The token for this resource.", + "type": "string" + } + }, + "type": "object" + }, + "LeaderboardConfigurationDetail": { + "description": "This is a JSON template for a leaderboard configuration detail.", + "id": "LeaderboardConfigurationDetail", + "properties": { + "iconUrl": { + "description": "The icon url of this leaderboard. Writes to this field are ignored.", + "type": "string" + }, + "kind": { + "default": "gamesConfiguration#leaderboardConfigurationDetail", + "description": "Uniquely identifies the type of this resource. Value is always the fixed string gamesConfiguration#leaderboardConfigurationDetail.", + "type": "string" + }, + "name": { + "$ref": "LocalizedStringBundle", + "description": "Localized strings for the leaderboard name." + }, + "scoreFormat": { + "$ref": "GamesNumberFormatConfiguration", + "description": "The score formatting for the leaderboard." + }, + "sortRank": { + "description": "The sort rank of this leaderboard. Writes to this field are ignored.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "LeaderboardConfigurationListResponse": { + "description": "This is a JSON template for a ListConfigurations response.", + "id": "LeaderboardConfigurationListResponse", + "properties": { + "items": { + "description": "The leaderboard configurations.", + "items": { + "$ref": "LeaderboardConfiguration" + }, + "type": "array" + }, + "kind": { + "default": "gamesConfiguration#leaderboardConfigurationListResponse", + "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#leaderboardConfigurationListResponse.", + "type": "string" + }, + "nextPageToken": { + "description": "The pagination token for the next page of results.", + "type": "string" + } + }, + "type": "object" + }, + "LocalizedString": { + "description": "This is a JSON template for a localized string resource.", + "id": "LocalizedString", + "properties": { + "kind": { + "default": "gamesConfiguration#localizedString", + "description": "Uniquely identifies the type of this resource. Value is always the fixed string gamesConfiguration#localizedString.", + "type": "string" + }, + "locale": { + "description": "The locale string.", + "type": "string" + }, + "value": { + "description": "The string value.", + "type": "string" + } + }, + "type": "object" + }, + "LocalizedStringBundle": { + "description": "This is a JSON template for a localized string bundle resource.", + "id": "LocalizedStringBundle", + "properties": { + "kind": { + "default": "gamesConfiguration#localizedStringBundle", + "description": "Uniquely identifies the type of this resource. Value is always the fixed string gamesConfiguration#localizedStringBundle.", + "type": "string" + }, + "translations": { + "description": "The locale strings.", + "items": { + "$ref": "LocalizedString" + }, + "type": "array" + } + }, + "type": "object" + } + }, + "servicePath": "games/v1configuration/", + "title": "Google Play Game Services Publishing API", + "version": "v1configuration" +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/gamesconfiguration/v1configuration/gamesconfiguration-gen.go b/vendor/google.golang.org/api/gamesconfiguration/v1configuration/gamesconfiguration-gen.go index 47d140c75..301bfdd76 100644 --- a/vendor/google.golang.org/api/gamesconfiguration/v1configuration/gamesconfiguration-gen.go +++ b/vendor/google.golang.org/api/gamesconfiguration/v1configuration/gamesconfiguration-gen.go @@ -1539,11 +1539,12 @@ func (c *ImageConfigurationsUploadCall) doRequest(alt string) (*http.Response, e body = new(bytes.Buffer) reqHeaders.Set("Content-Type", "application/json") } - body, cleanup := c.mediaInfo_.UploadRequest(reqHeaders, body) + body, getBody, cleanup := c.mediaInfo_.UploadRequest(reqHeaders, body) defer cleanup() urls += "?" + c.urlParams_.Encode() req, _ := http.NewRequest("POST", urls, body) req.Header = reqHeaders + gensupport.SetGetBody(req, getBody) googleapi.Expand(req.URL, map[string]string{ "resourceId": c.resourceId, "imageType": c.imageType, diff --git a/vendor/google.golang.org/api/gamesmanagement/v1management/gamesmanagement-api.json b/vendor/google.golang.org/api/gamesmanagement/v1management/gamesmanagement-api.json index 7e2c08970..ab5f242e5 100644 --- a/vendor/google.golang.org/api/gamesmanagement/v1management/gamesmanagement-api.json +++ b/vendor/google.golang.org/api/gamesmanagement/v1management/gamesmanagement-api.json @@ -1,913 +1,913 @@ { - "kind": "discovery#restDescription", - "etag": "\"YWOzh2SDasdU84ArJnpYek-OMdg/gYl0pTtcNnYGTXFkvxL5OL8Dc58\"", - "discoveryVersion": "v1", - "id": "gamesManagement:v1management", - "name": "gamesManagement", - "canonicalName": "Games Management", - "version": "v1management", - "revision": "20170911", - "title": "Google Play Game Services Management API", - "description": "The Management API for Google Play Game Services.", - "ownerDomain": "google.com", - "ownerName": "Google", - "icons": { - "x16": "https://www.gstatic.com/images/branding/product/1x/googleg_16dp.png", - "x32": "https://www.gstatic.com/images/branding/product/1x/googleg_32dp.png" - }, - "documentationLink": "https://developers.google.com/games/services", - "protocol": "rest", - "baseUrl": "https://www.googleapis.com/games/v1management/", - "basePath": "/games/v1management/", - "rootUrl": "https://www.googleapis.com/", - "servicePath": "games/v1management/", - "batchPath": "batch/gamesManagement/v1management", - "parameters": { - "alt": { - "type": "string", - "description": "Data format for the response.", - "default": "json", - "enum": [ - "json" - ], - "enumDescriptions": [ - "Responses with Content-Type of application/json" - ], - "location": "query" - }, - "fields": { - "type": "string", - "description": "Selector specifying which fields to include in a partial response.", - "location": "query" - }, - "key": { - "type": "string", - "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" - }, - "oauth_token": { - "type": "string", - "description": "OAuth 2.0 token for the current user.", - "location": "query" - }, - "prettyPrint": { - "type": "boolean", - "description": "Returns response with indentations and line breaks.", - "default": "true", - "location": "query" - }, - "quotaUser": { - "type": "string", - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", - "location": "query" - }, - "userIp": { - "type": "string", - "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", - "location": "query" - } - }, - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/games": { - "description": "Share your Google+ profile information and view and manage your game activity" - }, - "https://www.googleapis.com/auth/plus.login": { - "description": "Know the list of people in your circles, your age range, and language" + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/games": { + "description": "Share your Google+ profile information and view and manage your game activity" + }, + "https://www.googleapis.com/auth/plus.login": { + "description": "Know the list of people in your circles, your age range, and language" + } + } } - } - } - }, - "schemas": { - "AchievementResetAllResponse": { - "id": "AchievementResetAllResponse", - "type": "object", - "description": "This is a JSON template for achievement reset all response.", - "properties": { - "kind": { - "type": "string", - "description": "Uniquely identifies the type of this resource. Value is always the fixed string gamesManagement#achievementResetAllResponse.", - "default": "gamesManagement#achievementResetAllResponse" - }, - "results": { - "type": "array", - "description": "The achievement reset results.", - "items": { - "$ref": "AchievementResetResponse" - } - } - } }, - "AchievementResetMultipleForAllRequest": { - "id": "AchievementResetMultipleForAllRequest", - "type": "object", - "description": "This is a JSON template for multiple achievements reset all request.", - "properties": { - "achievement_ids": { - "type": "array", - "description": "The IDs of achievements to reset.", - "items": { + "basePath": "/games/v1management/", + "baseUrl": "https://www.googleapis.com/games/v1management/", + "batchPath": "batch/gamesManagement/v1management", + "canonicalName": "Games Management", + "description": "The Management API for Google Play Game Services.", + "discoveryVersion": "v1", + "documentationLink": "https://developers.google.com/games/services", + "etag": "\"-iA1DTNe4s-I6JZXPt1t1Ypy8IU/ArgZSn7g_dCb-4Fgx52MbFQwEVQ\"", + "icons": { + "x16": "https://www.gstatic.com/images/branding/product/1x/googleg_16dp.png", + "x32": "https://www.gstatic.com/images/branding/product/1x/googleg_32dp.png" + }, + "id": "gamesManagement:v1management", + "kind": "discovery#restDescription", + "name": "gamesManagement", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "alt": { + "default": "json", + "description": "Data format for the response.", + "enum": [ + "json" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json" + ], + "location": "query", "type": "string" - } }, - "kind": { - "type": "string", - "description": "Uniquely identifies the type of this resource. Value is always the fixed string gamesManagement#achievementResetMultipleForAllRequest.", - "default": "gamesManagement#achievementResetMultipleForAllRequest" - } - } - }, - "AchievementResetResponse": { - "id": "AchievementResetResponse", - "type": "object", - "description": "This is a JSON template for an achievement reset response.", - "properties": { - "currentState": { - "type": "string", - "description": "The current state of the achievement. This is the same as the initial state of the achievement.\nPossible values are: \n- \"HIDDEN\"- Achievement is hidden. \n- \"REVEALED\" - Achievement is revealed. \n- \"UNLOCKED\" - Achievement is unlocked." - }, - "definitionId": { - "type": "string", - "description": "The ID of an achievement for which player state has been updated." - }, - "kind": { - "type": "string", - "description": "Uniquely identifies the type of this resource. Value is always the fixed string gamesManagement#achievementResetResponse.", - "default": "gamesManagement#achievementResetResponse" - }, - "updateOccurred": { - "type": "boolean", - "description": "Flag to indicate if the requested update actually occurred." - } - } - }, - "EventsResetMultipleForAllRequest": { - "id": "EventsResetMultipleForAllRequest", - "type": "object", - "description": "This is a JSON template for multiple events reset all request.", - "properties": { - "event_ids": { - "type": "array", - "description": "The IDs of events to reset.", - "items": { + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "location": "query", "type": "string" - } }, - "kind": { - "type": "string", - "description": "Uniquely identifies the type of this resource. Value is always the fixed string gamesManagement#eventsResetMultipleForAllRequest.", - "default": "gamesManagement#eventsResetMultipleForAllRequest" - } - } - }, - "GamesPlayedResource": { - "id": "GamesPlayedResource", - "type": "object", - "description": "This is a JSON template for metadata about a player playing a game with the currently authenticated user.", - "properties": { - "autoMatched": { - "type": "boolean", - "description": "True if the player was auto-matched with the currently authenticated user." - }, - "timeMillis": { - "type": "string", - "description": "The last time the player played the game in milliseconds since the epoch in UTC.", - "format": "int64" - } - } - }, - "GamesPlayerExperienceInfoResource": { - "id": "GamesPlayerExperienceInfoResource", - "type": "object", - "description": "This is a JSON template for 1P/3P metadata about the player's experience.", - "properties": { - "currentExperiencePoints": { - "type": "string", - "description": "The current number of experience points for the player.", - "format": "int64" - }, - "currentLevel": { - "$ref": "GamesPlayerLevelResource", - "description": "The current level of the player." - }, - "lastLevelUpTimestampMillis": { - "type": "string", - "description": "The timestamp when the player was leveled up, in millis since Unix epoch UTC.", - "format": "int64" - }, - "nextLevel": { - "$ref": "GamesPlayerLevelResource", - "description": "The next level of the player. If the current level is the maximum level, this should be same as the current level." - } - } - }, - "GamesPlayerLevelResource": { - "id": "GamesPlayerLevelResource", - "type": "object", - "description": "This is a JSON template for 1P/3P metadata about a user's level.", - "properties": { - "level": { - "type": "integer", - "description": "The level for the user.", - "format": "int32" - }, - "maxExperiencePoints": { - "type": "string", - "description": "The maximum experience points for this level.", - "format": "int64" - }, - "minExperiencePoints": { - "type": "string", - "description": "The minimum experience points for this level.", - "format": "int64" - } - } - }, - "HiddenPlayer": { - "id": "HiddenPlayer", - "type": "object", - "description": "This is a JSON template for the HiddenPlayer resource.", - "properties": { - "hiddenTimeMillis": { - "type": "string", - "description": "The time this player was hidden.", - "format": "int64" - }, - "kind": { - "type": "string", - "description": "Uniquely identifies the type of this resource. Value is always the fixed string gamesManagement#hiddenPlayer.", - "default": "gamesManagement#hiddenPlayer" - }, - "player": { - "$ref": "Player", - "description": "The player information." - } - } - }, - "HiddenPlayerList": { - "id": "HiddenPlayerList", - "type": "object", - "description": "This is a JSON template for a list of hidden players.", - "properties": { - "items": { - "type": "array", - "description": "The players.", - "items": { - "$ref": "HiddenPlayer" - } - }, - "kind": { - "type": "string", - "description": "Uniquely identifies the type of this resource. Value is always the fixed string gamesManagement#hiddenPlayerList.", - "default": "gamesManagement#hiddenPlayerList" - }, - "nextPageToken": { - "type": "string", - "description": "The pagination token for the next page of results." - } - } - }, - "Player": { - "id": "Player", - "type": "object", - "description": "This is a JSON template for a Player resource.", - "properties": { - "avatarImageUrl": { - "type": "string", - "description": "The base URL for the image that represents the player." - }, - "bannerUrlLandscape": { - "type": "string", - "description": "The url to the landscape mode player banner image." - }, - "bannerUrlPortrait": { - "type": "string", - "description": "The url to the portrait mode player banner image." - }, - "displayName": { - "type": "string", - "description": "The name to display for the player." - }, - "experienceInfo": { - "$ref": "GamesPlayerExperienceInfoResource", - "description": "An object to represent Play Game experience information for the player." - }, - "kind": { - "type": "string", - "description": "Uniquely identifies the type of this resource. Value is always the fixed string gamesManagement#player.", - "default": "gamesManagement#player" - }, - "lastPlayedWith": { - "$ref": "GamesPlayedResource", - "description": "Details about the last time this player played a multiplayer game with the currently authenticated player. Populated for PLAYED_WITH player collection members." - }, - "name": { - "type": "object", - "description": "An object representation of the individual components of the player's name. For some players, these fields may not be present.", - "properties": { - "familyName": { - "type": "string", - "description": "The family name of this player. In some places, this is known as the last name." - }, - "givenName": { - "type": "string", - "description": "The given name of this player. In some places, this is known as the first name." - } - } - }, - "originalPlayerId": { - "type": "string", - "description": "The player ID that was used for this player the first time they signed into the game in question. This is only populated for calls to player.get for the requesting player, only if the player ID has subsequently changed, and only to clients that support remapping player IDs." - }, - "playerId": { - "type": "string", - "description": "The ID of the player." - }, - "profileSettings": { - "$ref": "ProfileSettings", - "description": "The player's profile settings. Controls whether or not the player's profile is visible to other players." - }, - "title": { - "type": "string", - "description": "The player's title rewarded for their game activities." - } - } - }, - "PlayerScoreResetAllResponse": { - "id": "PlayerScoreResetAllResponse", - "type": "object", - "description": "This is a JSON template for a list of leaderboard reset resources.", - "properties": { - "kind": { - "type": "string", - "description": "Uniquely identifies the type of this resource. Value is always the fixed string gamesManagement#playerScoreResetResponse.", - "default": "gamesManagement#playerScoreResetAllResponse" - }, - "results": { - "type": "array", - "description": "The leaderboard reset results.", - "items": { - "$ref": "PlayerScoreResetResponse" - } - } - } - }, - "PlayerScoreResetResponse": { - "id": "PlayerScoreResetResponse", - "type": "object", - "description": "This is a JSON template for a list of reset leaderboard entry resources.", - "properties": { - "definitionId": { - "type": "string", - "description": "The ID of an leaderboard for which player state has been updated." - }, - "kind": { - "type": "string", - "description": "Uniquely identifies the type of this resource. Value is always the fixed string gamesManagement#playerScoreResetResponse.", - "default": "gamesManagement#playerScoreResetResponse" - }, - "resetScoreTimeSpans": { - "type": "array", - "description": "The time spans of the updated score.\nPossible values are: \n- \"ALL_TIME\" - The score is an all-time score. \n- \"WEEKLY\" - The score is a weekly score. \n- \"DAILY\" - The score is a daily score.", - "items": { + "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" - } - } - } - }, - "ProfileSettings": { - "id": "ProfileSettings", - "type": "object", - "description": "This is a JSON template for profile settings", - "properties": { - "kind": { - "type": "string", - "description": "Uniquely identifies the type of this resource. Value is always the fixed string gamesManagement#profileSettings.", - "default": "gamesManagement#profileSettings" }, - "profileVisible": { - "type": "boolean", - "description": "The player's current profile visibility. This field is visible to both 1P and 3P APIs." - } - } - }, - "QuestsResetMultipleForAllRequest": { - "id": "QuestsResetMultipleForAllRequest", - "type": "object", - "description": "This is a JSON template for multiple quests reset all request.", - "properties": { - "kind": { - "type": "string", - "description": "Uniquely identifies the type of this resource. Value is always the fixed string gamesManagement#questsResetMultipleForAllRequest.", - "default": "gamesManagement#questsResetMultipleForAllRequest" - }, - "quest_ids": { - "type": "array", - "description": "The IDs of quests to reset.", - "items": { + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", "type": "string" - } - } - } - }, - "ScoresResetMultipleForAllRequest": { - "id": "ScoresResetMultipleForAllRequest", - "type": "object", - "description": "This is a JSON template for multiple scores reset all request.", - "properties": { - "kind": { - "type": "string", - "description": "Uniquely identifies the type of this resource. Value is always the fixed string gamesManagement#scoresResetMultipleForAllRequest.", - "default": "gamesManagement#scoresResetMultipleForAllRequest" }, - "leaderboard_ids": { - "type": "array", - "description": "The IDs of leaderboards to reset.", - "items": { + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", + "location": "query", + "type": "string" + }, + "userIp": { + "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", + "location": "query", "type": "string" - } } - } - } - }, - "resources": { - "achievements": { - "methods": { - "reset": { - "id": "gamesManagement.achievements.reset", - "path": "achievements/{achievementId}/reset", - "httpMethod": "POST", - "description": "Resets the achievement with the given ID for the currently authenticated player. This method is only accessible to whitelisted tester accounts for your application.", - "parameters": { - "achievementId": { - "type": "string", - "description": "The ID of the achievement used by this method.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "achievementId" - ], - "response": { - "$ref": "AchievementResetResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/games", - "https://www.googleapis.com/auth/plus.login" - ] - }, - "resetAll": { - "id": "gamesManagement.achievements.resetAll", - "path": "achievements/reset", - "httpMethod": "POST", - "description": "Resets all achievements for the currently authenticated player for your application. This method is only accessible to whitelisted tester accounts for your application.", - "response": { - "$ref": "AchievementResetAllResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/games", - "https://www.googleapis.com/auth/plus.login" - ] - }, - "resetAllForAllPlayers": { - "id": "gamesManagement.achievements.resetAllForAllPlayers", - "path": "achievements/resetAllForAllPlayers", - "httpMethod": "POST", - "description": "Resets all draft achievements for all players. This method is only available to user accounts for your developer console.", - "scopes": [ - "https://www.googleapis.com/auth/games", - "https://www.googleapis.com/auth/plus.login" - ] - }, - "resetForAllPlayers": { - "id": "gamesManagement.achievements.resetForAllPlayers", - "path": "achievements/{achievementId}/resetForAllPlayers", - "httpMethod": "POST", - "description": "Resets the achievement with the given ID for all players. This method is only available to user accounts for your developer console. Only draft achievements can be reset.", - "parameters": { - "achievementId": { - "type": "string", - "description": "The ID of the achievement used by this method.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "achievementId" - ], - "scopes": [ - "https://www.googleapis.com/auth/games", - "https://www.googleapis.com/auth/plus.login" - ] - }, - "resetMultipleForAllPlayers": { - "id": "gamesManagement.achievements.resetMultipleForAllPlayers", - "path": "achievements/resetMultipleForAllPlayers", - "httpMethod": "POST", - "description": "Resets achievements with the given IDs for all players. This method is only available to user accounts for your developer console. Only draft achievements may be reset.", - "request": { - "$ref": "AchievementResetMultipleForAllRequest" - }, - "scopes": [ - "https://www.googleapis.com/auth/games", - "https://www.googleapis.com/auth/plus.login" - ] - } - } }, - "applications": { - "methods": { - "listHidden": { - "id": "gamesManagement.applications.listHidden", - "path": "applications/{applicationId}/players/hidden", - "httpMethod": "GET", - "description": "Get the list of players hidden from the given application. This method is only available to user accounts for your developer console.", - "parameters": { - "applicationId": { - "type": "string", - "description": "The application ID from the Google Play developer console.", - "required": true, - "location": "path" + "protocol": "rest", + "resources": { + "achievements": { + "methods": { + "reset": { + "description": "Resets the achievement with the given ID for the currently authenticated player. This method is only accessible to whitelisted tester accounts for your application.", + "httpMethod": "POST", + "id": "gamesManagement.achievements.reset", + "parameterOrder": [ + "achievementId" + ], + "parameters": { + "achievementId": { + "description": "The ID of the achievement used by this method.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "achievements/{achievementId}/reset", + "response": { + "$ref": "AchievementResetResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/games", + "https://www.googleapis.com/auth/plus.login" + ] + }, + "resetAll": { + "description": "Resets all achievements for the currently authenticated player for your application. This method is only accessible to whitelisted tester accounts for your application.", + "httpMethod": "POST", + "id": "gamesManagement.achievements.resetAll", + "path": "achievements/reset", + "response": { + "$ref": "AchievementResetAllResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/games", + "https://www.googleapis.com/auth/plus.login" + ] + }, + "resetAllForAllPlayers": { + "description": "Resets all draft achievements for all players. This method is only available to user accounts for your developer console.", + "httpMethod": "POST", + "id": "gamesManagement.achievements.resetAllForAllPlayers", + "path": "achievements/resetAllForAllPlayers", + "scopes": [ + "https://www.googleapis.com/auth/games", + "https://www.googleapis.com/auth/plus.login" + ] + }, + "resetForAllPlayers": { + "description": "Resets the achievement with the given ID for all players. This method is only available to user accounts for your developer console. Only draft achievements can be reset.", + "httpMethod": "POST", + "id": "gamesManagement.achievements.resetForAllPlayers", + "parameterOrder": [ + "achievementId" + ], + "parameters": { + "achievementId": { + "description": "The ID of the achievement used by this method.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "achievements/{achievementId}/resetForAllPlayers", + "scopes": [ + "https://www.googleapis.com/auth/games", + "https://www.googleapis.com/auth/plus.login" + ] + }, + "resetMultipleForAllPlayers": { + "description": "Resets achievements with the given IDs for all players. This method is only available to user accounts for your developer console. Only draft achievements may be reset.", + "httpMethod": "POST", + "id": "gamesManagement.achievements.resetMultipleForAllPlayers", + "path": "achievements/resetMultipleForAllPlayers", + "request": { + "$ref": "AchievementResetMultipleForAllRequest" + }, + "scopes": [ + "https://www.googleapis.com/auth/games", + "https://www.googleapis.com/auth/plus.login" + ] + } + } + }, + "applications": { + "methods": { + "listHidden": { + "description": "Get the list of players hidden from the given application. This method is only available to user accounts for your developer console.", + "httpMethod": "GET", + "id": "gamesManagement.applications.listHidden", + "parameterOrder": [ + "applicationId" + ], + "parameters": { + "applicationId": { + "description": "The application ID from the Google Play developer console.", + "location": "path", + "required": true, + "type": "string" + }, + "maxResults": { + "description": "The maximum number of player resources to return in the response, used for paging. For any response, the actual number of player resources returned may be less than the specified maxResults.", + "format": "int32", + "location": "query", + "maximum": "50", + "minimum": "1", + "type": "integer" + }, + "pageToken": { + "description": "The token returned by the previous request.", + "location": "query", + "type": "string" + } + }, + "path": "applications/{applicationId}/players/hidden", + "response": { + "$ref": "HiddenPlayerList" + }, + "scopes": [ + "https://www.googleapis.com/auth/games", + "https://www.googleapis.com/auth/plus.login" + ] + } + } + }, + "events": { + "methods": { + "reset": { + "description": "Resets all player progress on the event with the given ID for the currently authenticated player. This method is only accessible to whitelisted tester accounts for your application. All quests for this player that use the event will also be reset.", + "httpMethod": "POST", + "id": "gamesManagement.events.reset", + "parameterOrder": [ + "eventId" + ], + "parameters": { + "eventId": { + "description": "The ID of the event.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "events/{eventId}/reset", + "scopes": [ + "https://www.googleapis.com/auth/games", + "https://www.googleapis.com/auth/plus.login" + ] + }, + "resetAll": { + "description": "Resets all player progress on all events for the currently authenticated player. This method is only accessible to whitelisted tester accounts for your application. All quests for this player will also be reset.", + "httpMethod": "POST", + "id": "gamesManagement.events.resetAll", + "path": "events/reset", + "scopes": [ + "https://www.googleapis.com/auth/games", + "https://www.googleapis.com/auth/plus.login" + ] + }, + "resetAllForAllPlayers": { + "description": "Resets all draft events for all players. This method is only available to user accounts for your developer console. All quests that use any of these events will also be reset.", + "httpMethod": "POST", + "id": "gamesManagement.events.resetAllForAllPlayers", + "path": "events/resetAllForAllPlayers", + "scopes": [ + "https://www.googleapis.com/auth/games", + "https://www.googleapis.com/auth/plus.login" + ] + }, + "resetForAllPlayers": { + "description": "Resets the event with the given ID for all players. This method is only available to user accounts for your developer console. Only draft events can be reset. All quests that use the event will also be reset.", + "httpMethod": "POST", + "id": "gamesManagement.events.resetForAllPlayers", + "parameterOrder": [ + "eventId" + ], + "parameters": { + "eventId": { + "description": "The ID of the event.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "events/{eventId}/resetForAllPlayers", + "scopes": [ + "https://www.googleapis.com/auth/games", + "https://www.googleapis.com/auth/plus.login" + ] + }, + "resetMultipleForAllPlayers": { + "description": "Resets events with the given IDs for all players. This method is only available to user accounts for your developer console. Only draft events may be reset. All quests that use any of the events will also be reset.", + "httpMethod": "POST", + "id": "gamesManagement.events.resetMultipleForAllPlayers", + "path": "events/resetMultipleForAllPlayers", + "request": { + "$ref": "EventsResetMultipleForAllRequest" + }, + "scopes": [ + "https://www.googleapis.com/auth/games", + "https://www.googleapis.com/auth/plus.login" + ] + } + } + }, + "players": { + "methods": { + "hide": { + "description": "Hide the given player's leaderboard scores from the given application. This method is only available to user accounts for your developer console.", + "httpMethod": "POST", + "id": "gamesManagement.players.hide", + "parameterOrder": [ + "applicationId", + "playerId" + ], + "parameters": { + "applicationId": { + "description": "The application ID from the Google Play developer console.", + "location": "path", + "required": true, + "type": "string" + }, + "playerId": { + "description": "A player ID. A value of me may be used in place of the authenticated player's ID.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "applications/{applicationId}/players/hidden/{playerId}", + "scopes": [ + "https://www.googleapis.com/auth/games", + "https://www.googleapis.com/auth/plus.login" + ] + }, + "unhide": { + "description": "Unhide the given player's leaderboard scores from the given application. This method is only available to user accounts for your developer console.", + "httpMethod": "DELETE", + "id": "gamesManagement.players.unhide", + "parameterOrder": [ + "applicationId", + "playerId" + ], + "parameters": { + "applicationId": { + "description": "The application ID from the Google Play developer console.", + "location": "path", + "required": true, + "type": "string" + }, + "playerId": { + "description": "A player ID. A value of me may be used in place of the authenticated player's ID.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "applications/{applicationId}/players/hidden/{playerId}", + "scopes": [ + "https://www.googleapis.com/auth/games", + "https://www.googleapis.com/auth/plus.login" + ] + } + } + }, + "quests": { + "methods": { + "reset": { + "description": "Resets all player progress on the quest with the given ID for the currently authenticated player. This method is only accessible to whitelisted tester accounts for your application.", + "httpMethod": "POST", + "id": "gamesManagement.quests.reset", + "parameterOrder": [ + "questId" + ], + "parameters": { + "questId": { + "description": "The ID of the quest.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "quests/{questId}/reset", + "scopes": [ + "https://www.googleapis.com/auth/games", + "https://www.googleapis.com/auth/plus.login" + ] + }, + "resetAll": { + "description": "Resets all player progress on all quests for the currently authenticated player. This method is only accessible to whitelisted tester accounts for your application.", + "httpMethod": "POST", + "id": "gamesManagement.quests.resetAll", + "path": "quests/reset", + "scopes": [ + "https://www.googleapis.com/auth/games", + "https://www.googleapis.com/auth/plus.login" + ] + }, + "resetAllForAllPlayers": { + "description": "Resets all draft quests for all players. This method is only available to user accounts for your developer console.", + "httpMethod": "POST", + "id": "gamesManagement.quests.resetAllForAllPlayers", + "path": "quests/resetAllForAllPlayers", + "scopes": [ + "https://www.googleapis.com/auth/games", + "https://www.googleapis.com/auth/plus.login" + ] + }, + "resetForAllPlayers": { + "description": "Resets all player progress on the quest with the given ID for all players. This method is only available to user accounts for your developer console. Only draft quests can be reset.", + "httpMethod": "POST", + "id": "gamesManagement.quests.resetForAllPlayers", + "parameterOrder": [ + "questId" + ], + "parameters": { + "questId": { + "description": "The ID of the quest.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "quests/{questId}/resetForAllPlayers", + "scopes": [ + "https://www.googleapis.com/auth/games", + "https://www.googleapis.com/auth/plus.login" + ] + }, + "resetMultipleForAllPlayers": { + "description": "Resets quests with the given IDs for all players. This method is only available to user accounts for your developer console. Only draft quests may be reset.", + "httpMethod": "POST", + "id": "gamesManagement.quests.resetMultipleForAllPlayers", + "path": "quests/resetMultipleForAllPlayers", + "request": { + "$ref": "QuestsResetMultipleForAllRequest" + }, + "scopes": [ + "https://www.googleapis.com/auth/games", + "https://www.googleapis.com/auth/plus.login" + ] + } + } + }, + "rooms": { + "methods": { + "reset": { + "description": "Reset all rooms for the currently authenticated player for your application. This method is only accessible to whitelisted tester accounts for your application.", + "httpMethod": "POST", + "id": "gamesManagement.rooms.reset", + "path": "rooms/reset", + "scopes": [ + "https://www.googleapis.com/auth/games", + "https://www.googleapis.com/auth/plus.login" + ] + }, + "resetForAllPlayers": { + "description": "Deletes rooms where the only room participants are from whitelisted tester accounts for your application. This method is only available to user accounts for your developer console.", + "httpMethod": "POST", + "id": "gamesManagement.rooms.resetForAllPlayers", + "path": "rooms/resetForAllPlayers", + "scopes": [ + "https://www.googleapis.com/auth/games", + "https://www.googleapis.com/auth/plus.login" + ] + } + } + }, + "scores": { + "methods": { + "reset": { + "description": "Resets scores for the leaderboard with the given ID for the currently authenticated player. This method is only accessible to whitelisted tester accounts for your application.", + "httpMethod": "POST", + "id": "gamesManagement.scores.reset", + "parameterOrder": [ + "leaderboardId" + ], + "parameters": { + "leaderboardId": { + "description": "The ID of the leaderboard.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "leaderboards/{leaderboardId}/scores/reset", + "response": { + "$ref": "PlayerScoreResetResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/games", + "https://www.googleapis.com/auth/plus.login" + ] + }, + "resetAll": { + "description": "Resets all scores for all leaderboards for the currently authenticated players. This method is only accessible to whitelisted tester accounts for your application.", + "httpMethod": "POST", + "id": "gamesManagement.scores.resetAll", + "path": "scores/reset", + "response": { + "$ref": "PlayerScoreResetAllResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/games", + "https://www.googleapis.com/auth/plus.login" + ] + }, + "resetAllForAllPlayers": { + "description": "Resets scores for all draft leaderboards for all players. This method is only available to user accounts for your developer console.", + "httpMethod": "POST", + "id": "gamesManagement.scores.resetAllForAllPlayers", + "path": "scores/resetAllForAllPlayers", + "scopes": [ + "https://www.googleapis.com/auth/games", + "https://www.googleapis.com/auth/plus.login" + ] + }, + "resetForAllPlayers": { + "description": "Resets scores for the leaderboard with the given ID for all players. This method is only available to user accounts for your developer console. Only draft leaderboards can be reset.", + "httpMethod": "POST", + "id": "gamesManagement.scores.resetForAllPlayers", + "parameterOrder": [ + "leaderboardId" + ], + "parameters": { + "leaderboardId": { + "description": "The ID of the leaderboard.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "leaderboards/{leaderboardId}/scores/resetForAllPlayers", + "scopes": [ + "https://www.googleapis.com/auth/games", + "https://www.googleapis.com/auth/plus.login" + ] + }, + "resetMultipleForAllPlayers": { + "description": "Resets scores for the leaderboards with the given IDs for all players. This method is only available to user accounts for your developer console. Only draft leaderboards may be reset.", + "httpMethod": "POST", + "id": "gamesManagement.scores.resetMultipleForAllPlayers", + "path": "scores/resetMultipleForAllPlayers", + "request": { + "$ref": "ScoresResetMultipleForAllRequest" + }, + "scopes": [ + "https://www.googleapis.com/auth/games", + "https://www.googleapis.com/auth/plus.login" + ] + } + } + }, + "turnBasedMatches": { + "methods": { + "reset": { + "description": "Reset all turn-based match data for a user. This method is only accessible to whitelisted tester accounts for your application.", + "httpMethod": "POST", + "id": "gamesManagement.turnBasedMatches.reset", + "path": "turnbasedmatches/reset", + "scopes": [ + "https://www.googleapis.com/auth/games", + "https://www.googleapis.com/auth/plus.login" + ] + }, + "resetForAllPlayers": { + "description": "Deletes turn-based matches where the only match participants are from whitelisted tester accounts for your application. This method is only available to user accounts for your developer console.", + "httpMethod": "POST", + "id": "gamesManagement.turnBasedMatches.resetForAllPlayers", + "path": "turnbasedmatches/resetForAllPlayers", + "scopes": [ + "https://www.googleapis.com/auth/games", + "https://www.googleapis.com/auth/plus.login" + ] + } + } + } + }, + "revision": "20180122", + "rootUrl": "https://www.googleapis.com/", + "schemas": { + "AchievementResetAllResponse": { + "description": "This is a JSON template for achievement reset all response.", + "id": "AchievementResetAllResponse", + "properties": { + "kind": { + "default": "gamesManagement#achievementResetAllResponse", + "description": "Uniquely identifies the type of this resource. Value is always the fixed string gamesManagement#achievementResetAllResponse.", + "type": "string" + }, + "results": { + "description": "The achievement reset results.", + "items": { + "$ref": "AchievementResetResponse" + }, + "type": "array" + } }, - "maxResults": { - "type": "integer", - "description": "The maximum number of player resources to return in the response, used for paging. For any response, the actual number of player resources returned may be less than the specified maxResults.", - "format": "int32", - "minimum": "1", - "maximum": "50", - "location": "query" + "type": "object" + }, + "AchievementResetMultipleForAllRequest": { + "description": "This is a JSON template for multiple achievements reset all request.", + "id": "AchievementResetMultipleForAllRequest", + "properties": { + "achievement_ids": { + "description": "The IDs of achievements to reset.", + "items": { + "type": "string" + }, + "type": "array" + }, + "kind": { + "default": "gamesManagement#achievementResetMultipleForAllRequest", + "description": "Uniquely identifies the type of this resource. Value is always the fixed string gamesManagement#achievementResetMultipleForAllRequest.", + "type": "string" + } }, - "pageToken": { - "type": "string", - "description": "The token returned by the previous request.", - "location": "query" - } - }, - "parameterOrder": [ - "applicationId" - ], - "response": { - "$ref": "HiddenPlayerList" - }, - "scopes": [ - "https://www.googleapis.com/auth/games", - "https://www.googleapis.com/auth/plus.login" - ] - } - } - }, - "events": { - "methods": { - "reset": { - "id": "gamesManagement.events.reset", - "path": "events/{eventId}/reset", - "httpMethod": "POST", - "description": "Resets all player progress on the event with the given ID for the currently authenticated player. This method is only accessible to whitelisted tester accounts for your application. All quests for this player that use the event will also be reset.", - "parameters": { - "eventId": { - "type": "string", - "description": "The ID of the event.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "eventId" - ], - "scopes": [ - "https://www.googleapis.com/auth/games", - "https://www.googleapis.com/auth/plus.login" - ] + "type": "object" }, - "resetAll": { - "id": "gamesManagement.events.resetAll", - "path": "events/reset", - "httpMethod": "POST", - "description": "Resets all player progress on all events for the currently authenticated player. This method is only accessible to whitelisted tester accounts for your application. All quests for this player will also be reset.", - "scopes": [ - "https://www.googleapis.com/auth/games", - "https://www.googleapis.com/auth/plus.login" - ] - }, - "resetAllForAllPlayers": { - "id": "gamesManagement.events.resetAllForAllPlayers", - "path": "events/resetAllForAllPlayers", - "httpMethod": "POST", - "description": "Resets all draft events for all players. This method is only available to user accounts for your developer console. All quests that use any of these events will also be reset.", - "scopes": [ - "https://www.googleapis.com/auth/games", - "https://www.googleapis.com/auth/plus.login" - ] - }, - "resetForAllPlayers": { - "id": "gamesManagement.events.resetForAllPlayers", - "path": "events/{eventId}/resetForAllPlayers", - "httpMethod": "POST", - "description": "Resets the event with the given ID for all players. This method is only available to user accounts for your developer console. Only draft events can be reset. All quests that use the event will also be reset.", - "parameters": { - "eventId": { - "type": "string", - "description": "The ID of the event.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "eventId" - ], - "scopes": [ - "https://www.googleapis.com/auth/games", - "https://www.googleapis.com/auth/plus.login" - ] - }, - "resetMultipleForAllPlayers": { - "id": "gamesManagement.events.resetMultipleForAllPlayers", - "path": "events/resetMultipleForAllPlayers", - "httpMethod": "POST", - "description": "Resets events with the given IDs for all players. This method is only available to user accounts for your developer console. Only draft events may be reset. All quests that use any of the events will also be reset.", - "request": { - "$ref": "EventsResetMultipleForAllRequest" - }, - "scopes": [ - "https://www.googleapis.com/auth/games", - "https://www.googleapis.com/auth/plus.login" - ] - } - } - }, - "players": { - "methods": { - "hide": { - "id": "gamesManagement.players.hide", - "path": "applications/{applicationId}/players/hidden/{playerId}", - "httpMethod": "POST", - "description": "Hide the given player's leaderboard scores from the given application. This method is only available to user accounts for your developer console.", - "parameters": { - "applicationId": { - "type": "string", - "description": "The application ID from the Google Play developer console.", - "required": true, - "location": "path" + "AchievementResetResponse": { + "description": "This is a JSON template for an achievement reset response.", + "id": "AchievementResetResponse", + "properties": { + "currentState": { + "description": "The current state of the achievement. This is the same as the initial state of the achievement.\nPossible values are: \n- \"HIDDEN\"- Achievement is hidden. \n- \"REVEALED\" - Achievement is revealed. \n- \"UNLOCKED\" - Achievement is unlocked.", + "type": "string" + }, + "definitionId": { + "description": "The ID of an achievement for which player state has been updated.", + "type": "string" + }, + "kind": { + "default": "gamesManagement#achievementResetResponse", + "description": "Uniquely identifies the type of this resource. Value is always the fixed string gamesManagement#achievementResetResponse.", + "type": "string" + }, + "updateOccurred": { + "description": "Flag to indicate if the requested update actually occurred.", + "type": "boolean" + } }, - "playerId": { - "type": "string", - "description": "A player ID. A value of me may be used in place of the authenticated player's ID.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "applicationId", - "playerId" - ], - "scopes": [ - "https://www.googleapis.com/auth/games", - "https://www.googleapis.com/auth/plus.login" - ] + "type": "object" }, - "unhide": { - "id": "gamesManagement.players.unhide", - "path": "applications/{applicationId}/players/hidden/{playerId}", - "httpMethod": "DELETE", - "description": "Unhide the given player's leaderboard scores from the given application. This method is only available to user accounts for your developer console.", - "parameters": { - "applicationId": { - "type": "string", - "description": "The application ID from the Google Play developer console.", - "required": true, - "location": "path" + "EventsResetMultipleForAllRequest": { + "description": "This is a JSON template for multiple events reset all request.", + "id": "EventsResetMultipleForAllRequest", + "properties": { + "event_ids": { + "description": "The IDs of events to reset.", + "items": { + "type": "string" + }, + "type": "array" + }, + "kind": { + "default": "gamesManagement#eventsResetMultipleForAllRequest", + "description": "Uniquely identifies the type of this resource. Value is always the fixed string gamesManagement#eventsResetMultipleForAllRequest.", + "type": "string" + } }, - "playerId": { - "type": "string", - "description": "A player ID. A value of me may be used in place of the authenticated player's ID.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "applicationId", - "playerId" - ], - "scopes": [ - "https://www.googleapis.com/auth/games", - "https://www.googleapis.com/auth/plus.login" - ] + "type": "object" + }, + "GamesPlayedResource": { + "description": "This is a JSON template for metadata about a player playing a game with the currently authenticated user.", + "id": "GamesPlayedResource", + "properties": { + "autoMatched": { + "description": "True if the player was auto-matched with the currently authenticated user.", + "type": "boolean" + }, + "timeMillis": { + "description": "The last time the player played the game in milliseconds since the epoch in UTC.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "GamesPlayerExperienceInfoResource": { + "description": "This is a JSON template for 1P/3P metadata about the player's experience.", + "id": "GamesPlayerExperienceInfoResource", + "properties": { + "currentExperiencePoints": { + "description": "The current number of experience points for the player.", + "format": "int64", + "type": "string" + }, + "currentLevel": { + "$ref": "GamesPlayerLevelResource", + "description": "The current level of the player." + }, + "lastLevelUpTimestampMillis": { + "description": "The timestamp when the player was leveled up, in millis since Unix epoch UTC.", + "format": "int64", + "type": "string" + }, + "nextLevel": { + "$ref": "GamesPlayerLevelResource", + "description": "The next level of the player. If the current level is the maximum level, this should be same as the current level." + } + }, + "type": "object" + }, + "GamesPlayerLevelResource": { + "description": "This is a JSON template for 1P/3P metadata about a user's level.", + "id": "GamesPlayerLevelResource", + "properties": { + "level": { + "description": "The level for the user.", + "format": "int32", + "type": "integer" + }, + "maxExperiencePoints": { + "description": "The maximum experience points for this level.", + "format": "int64", + "type": "string" + }, + "minExperiencePoints": { + "description": "The minimum experience points for this level.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "HiddenPlayer": { + "description": "This is a JSON template for the HiddenPlayer resource.", + "id": "HiddenPlayer", + "properties": { + "hiddenTimeMillis": { + "description": "The time this player was hidden.", + "format": "int64", + "type": "string" + }, + "kind": { + "default": "gamesManagement#hiddenPlayer", + "description": "Uniquely identifies the type of this resource. Value is always the fixed string gamesManagement#hiddenPlayer.", + "type": "string" + }, + "player": { + "$ref": "Player", + "description": "The player information." + } + }, + "type": "object" + }, + "HiddenPlayerList": { + "description": "This is a JSON template for a list of hidden players.", + "id": "HiddenPlayerList", + "properties": { + "items": { + "description": "The players.", + "items": { + "$ref": "HiddenPlayer" + }, + "type": "array" + }, + "kind": { + "default": "gamesManagement#hiddenPlayerList", + "description": "Uniquely identifies the type of this resource. Value is always the fixed string gamesManagement#hiddenPlayerList.", + "type": "string" + }, + "nextPageToken": { + "description": "The pagination token for the next page of results.", + "type": "string" + } + }, + "type": "object" + }, + "Player": { + "description": "This is a JSON template for a Player resource.", + "id": "Player", + "properties": { + "avatarImageUrl": { + "description": "The base URL for the image that represents the player.", + "type": "string" + }, + "bannerUrlLandscape": { + "description": "The url to the landscape mode player banner image.", + "type": "string" + }, + "bannerUrlPortrait": { + "description": "The url to the portrait mode player banner image.", + "type": "string" + }, + "displayName": { + "description": "The name to display for the player.", + "type": "string" + }, + "experienceInfo": { + "$ref": "GamesPlayerExperienceInfoResource", + "description": "An object to represent Play Game experience information for the player." + }, + "kind": { + "default": "gamesManagement#player", + "description": "Uniquely identifies the type of this resource. Value is always the fixed string gamesManagement#player.", + "type": "string" + }, + "lastPlayedWith": { + "$ref": "GamesPlayedResource", + "description": "Details about the last time this player played a multiplayer game with the currently authenticated player. Populated for PLAYED_WITH player collection members." + }, + "name": { + "description": "An object representation of the individual components of the player's name. For some players, these fields may not be present.", + "properties": { + "familyName": { + "description": "The family name of this player. In some places, this is known as the last name.", + "type": "string" + }, + "givenName": { + "description": "The given name of this player. In some places, this is known as the first name.", + "type": "string" + } + }, + "type": "object" + }, + "originalPlayerId": { + "description": "The player ID that was used for this player the first time they signed into the game in question. This is only populated for calls to player.get for the requesting player, only if the player ID has subsequently changed, and only to clients that support remapping player IDs.", + "type": "string" + }, + "playerId": { + "description": "The ID of the player.", + "type": "string" + }, + "profileSettings": { + "$ref": "ProfileSettings", + "description": "The player's profile settings. Controls whether or not the player's profile is visible to other players." + }, + "title": { + "description": "The player's title rewarded for their game activities.", + "type": "string" + } + }, + "type": "object" + }, + "PlayerScoreResetAllResponse": { + "description": "This is a JSON template for a list of leaderboard reset resources.", + "id": "PlayerScoreResetAllResponse", + "properties": { + "kind": { + "default": "gamesManagement#playerScoreResetAllResponse", + "description": "Uniquely identifies the type of this resource. Value is always the fixed string gamesManagement#playerScoreResetResponse.", + "type": "string" + }, + "results": { + "description": "The leaderboard reset results.", + "items": { + "$ref": "PlayerScoreResetResponse" + }, + "type": "array" + } + }, + "type": "object" + }, + "PlayerScoreResetResponse": { + "description": "This is a JSON template for a list of reset leaderboard entry resources.", + "id": "PlayerScoreResetResponse", + "properties": { + "definitionId": { + "description": "The ID of an leaderboard for which player state has been updated.", + "type": "string" + }, + "kind": { + "default": "gamesManagement#playerScoreResetResponse", + "description": "Uniquely identifies the type of this resource. Value is always the fixed string gamesManagement#playerScoreResetResponse.", + "type": "string" + }, + "resetScoreTimeSpans": { + "description": "The time spans of the updated score.\nPossible values are: \n- \"ALL_TIME\" - The score is an all-time score. \n- \"WEEKLY\" - The score is a weekly score. \n- \"DAILY\" - The score is a daily score.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "ProfileSettings": { + "description": "This is a JSON template for profile settings", + "id": "ProfileSettings", + "properties": { + "kind": { + "default": "gamesManagement#profileSettings", + "description": "Uniquely identifies the type of this resource. Value is always the fixed string gamesManagement#profileSettings.", + "type": "string" + }, + "profileVisible": { + "description": "The player's current profile visibility. This field is visible to both 1P and 3P APIs.", + "type": "boolean" + } + }, + "type": "object" + }, + "QuestsResetMultipleForAllRequest": { + "description": "This is a JSON template for multiple quests reset all request.", + "id": "QuestsResetMultipleForAllRequest", + "properties": { + "kind": { + "default": "gamesManagement#questsResetMultipleForAllRequest", + "description": "Uniquely identifies the type of this resource. Value is always the fixed string gamesManagement#questsResetMultipleForAllRequest.", + "type": "string" + }, + "quest_ids": { + "description": "The IDs of quests to reset.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "ScoresResetMultipleForAllRequest": { + "description": "This is a JSON template for multiple scores reset all request.", + "id": "ScoresResetMultipleForAllRequest", + "properties": { + "kind": { + "default": "gamesManagement#scoresResetMultipleForAllRequest", + "description": "Uniquely identifies the type of this resource. Value is always the fixed string gamesManagement#scoresResetMultipleForAllRequest.", + "type": "string" + }, + "leaderboard_ids": { + "description": "The IDs of leaderboards to reset.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" } - } }, - "quests": { - "methods": { - "reset": { - "id": "gamesManagement.quests.reset", - "path": "quests/{questId}/reset", - "httpMethod": "POST", - "description": "Resets all player progress on the quest with the given ID for the currently authenticated player. This method is only accessible to whitelisted tester accounts for your application.", - "parameters": { - "questId": { - "type": "string", - "description": "The ID of the quest.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "questId" - ], - "scopes": [ - "https://www.googleapis.com/auth/games", - "https://www.googleapis.com/auth/plus.login" - ] - }, - "resetAll": { - "id": "gamesManagement.quests.resetAll", - "path": "quests/reset", - "httpMethod": "POST", - "description": "Resets all player progress on all quests for the currently authenticated player. This method is only accessible to whitelisted tester accounts for your application.", - "scopes": [ - "https://www.googleapis.com/auth/games", - "https://www.googleapis.com/auth/plus.login" - ] - }, - "resetAllForAllPlayers": { - "id": "gamesManagement.quests.resetAllForAllPlayers", - "path": "quests/resetAllForAllPlayers", - "httpMethod": "POST", - "description": "Resets all draft quests for all players. This method is only available to user accounts for your developer console.", - "scopes": [ - "https://www.googleapis.com/auth/games", - "https://www.googleapis.com/auth/plus.login" - ] - }, - "resetForAllPlayers": { - "id": "gamesManagement.quests.resetForAllPlayers", - "path": "quests/{questId}/resetForAllPlayers", - "httpMethod": "POST", - "description": "Resets all player progress on the quest with the given ID for all players. This method is only available to user accounts for your developer console. Only draft quests can be reset.", - "parameters": { - "questId": { - "type": "string", - "description": "The ID of the quest.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "questId" - ], - "scopes": [ - "https://www.googleapis.com/auth/games", - "https://www.googleapis.com/auth/plus.login" - ] - }, - "resetMultipleForAllPlayers": { - "id": "gamesManagement.quests.resetMultipleForAllPlayers", - "path": "quests/resetMultipleForAllPlayers", - "httpMethod": "POST", - "description": "Resets quests with the given IDs for all players. This method is only available to user accounts for your developer console. Only draft quests may be reset.", - "request": { - "$ref": "QuestsResetMultipleForAllRequest" - }, - "scopes": [ - "https://www.googleapis.com/auth/games", - "https://www.googleapis.com/auth/plus.login" - ] - } - } - }, - "rooms": { - "methods": { - "reset": { - "id": "gamesManagement.rooms.reset", - "path": "rooms/reset", - "httpMethod": "POST", - "description": "Reset all rooms for the currently authenticated player for your application. This method is only accessible to whitelisted tester accounts for your application.", - "scopes": [ - "https://www.googleapis.com/auth/games", - "https://www.googleapis.com/auth/plus.login" - ] - }, - "resetForAllPlayers": { - "id": "gamesManagement.rooms.resetForAllPlayers", - "path": "rooms/resetForAllPlayers", - "httpMethod": "POST", - "description": "Deletes rooms where the only room participants are from whitelisted tester accounts for your application. This method is only available to user accounts for your developer console.", - "scopes": [ - "https://www.googleapis.com/auth/games", - "https://www.googleapis.com/auth/plus.login" - ] - } - } - }, - "scores": { - "methods": { - "reset": { - "id": "gamesManagement.scores.reset", - "path": "leaderboards/{leaderboardId}/scores/reset", - "httpMethod": "POST", - "description": "Resets scores for the leaderboard with the given ID for the currently authenticated player. This method is only accessible to whitelisted tester accounts for your application.", - "parameters": { - "leaderboardId": { - "type": "string", - "description": "The ID of the leaderboard.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "leaderboardId" - ], - "response": { - "$ref": "PlayerScoreResetResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/games", - "https://www.googleapis.com/auth/plus.login" - ] - }, - "resetAll": { - "id": "gamesManagement.scores.resetAll", - "path": "scores/reset", - "httpMethod": "POST", - "description": "Resets all scores for all leaderboards for the currently authenticated players. This method is only accessible to whitelisted tester accounts for your application.", - "response": { - "$ref": "PlayerScoreResetAllResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/games", - "https://www.googleapis.com/auth/plus.login" - ] - }, - "resetAllForAllPlayers": { - "id": "gamesManagement.scores.resetAllForAllPlayers", - "path": "scores/resetAllForAllPlayers", - "httpMethod": "POST", - "description": "Resets scores for all draft leaderboards for all players. This method is only available to user accounts for your developer console.", - "scopes": [ - "https://www.googleapis.com/auth/games", - "https://www.googleapis.com/auth/plus.login" - ] - }, - "resetForAllPlayers": { - "id": "gamesManagement.scores.resetForAllPlayers", - "path": "leaderboards/{leaderboardId}/scores/resetForAllPlayers", - "httpMethod": "POST", - "description": "Resets scores for the leaderboard with the given ID for all players. This method is only available to user accounts for your developer console. Only draft leaderboards can be reset.", - "parameters": { - "leaderboardId": { - "type": "string", - "description": "The ID of the leaderboard.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "leaderboardId" - ], - "scopes": [ - "https://www.googleapis.com/auth/games", - "https://www.googleapis.com/auth/plus.login" - ] - }, - "resetMultipleForAllPlayers": { - "id": "gamesManagement.scores.resetMultipleForAllPlayers", - "path": "scores/resetMultipleForAllPlayers", - "httpMethod": "POST", - "description": "Resets scores for the leaderboards with the given IDs for all players. This method is only available to user accounts for your developer console. Only draft leaderboards may be reset.", - "request": { - "$ref": "ScoresResetMultipleForAllRequest" - }, - "scopes": [ - "https://www.googleapis.com/auth/games", - "https://www.googleapis.com/auth/plus.login" - ] - } - } - }, - "turnBasedMatches": { - "methods": { - "reset": { - "id": "gamesManagement.turnBasedMatches.reset", - "path": "turnbasedmatches/reset", - "httpMethod": "POST", - "description": "Reset all turn-based match data for a user. This method is only accessible to whitelisted tester accounts for your application.", - "scopes": [ - "https://www.googleapis.com/auth/games", - "https://www.googleapis.com/auth/plus.login" - ] - }, - "resetForAllPlayers": { - "id": "gamesManagement.turnBasedMatches.resetForAllPlayers", - "path": "turnbasedmatches/resetForAllPlayers", - "httpMethod": "POST", - "description": "Deletes turn-based matches where the only match participants are from whitelisted tester accounts for your application. This method is only available to user accounts for your developer console.", - "scopes": [ - "https://www.googleapis.com/auth/games", - "https://www.googleapis.com/auth/plus.login" - ] - } - } - } - } -} + "servicePath": "games/v1management/", + "title": "Google Play Game Services Management API", + "version": "v1management" +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/genomics/v1/genomics-api.json b/vendor/google.golang.org/api/genomics/v1/genomics-api.json index 02f56ca15..297be57e5 100644 --- a/vendor/google.golang.org/api/genomics/v1/genomics-api.json +++ b/vendor/google.golang.org/api/genomics/v1/genomics-api.json @@ -1,832 +1,968 @@ { + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/bigquery": { + "description": "View and manage your data in Google BigQuery" + }, + "https://www.googleapis.com/auth/cloud-platform": { + "description": "View and manage your data across Google Cloud Platform services" + }, + "https://www.googleapis.com/auth/devstorage.read_write": { + "description": "Manage your data in Google Cloud Storage" + }, + "https://www.googleapis.com/auth/genomics": { + "description": "View and manage Genomics data" + }, + "https://www.googleapis.com/auth/genomics.readonly": { + "description": "View Genomics data" + } + } + } + }, "basePath": "", - "ownerDomain": "google.com", - "name": "genomics", + "baseUrl": "https://genomics.googleapis.com/", "batchPath": "batch", - "revision": "20180117", - "documentationLink": "https://cloud.google.com/genomics", - "id": "genomics:v1", - "title": "Genomics API", - "ownerName": "Google", + "description": "Upload, process, query, and search Genomics data in the cloud.", "discoveryVersion": "v1", + "documentationLink": "https://cloud.google.com/genomics", + "fullyEncodeReservedExpansion": true, + "icons": { + "x16": "http://www.google.com/images/icons/product/search-16.gif", + "x32": "http://www.google.com/images/icons/product/search-32.gif" + }, + "id": "genomics:v1", + "kind": "discovery#restDescription", + "name": "genomics", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "$.xgafv": { + "description": "V1 error format.", + "enum": [ + "1", + "2" + ], + "enumDescriptions": [ + "v1 error format", + "v2 error format" + ], + "location": "query", + "type": "string" + }, + "access_token": { + "description": "OAuth access token.", + "location": "query", + "type": "string" + }, + "alt": { + "default": "json", + "description": "Data format for response.", + "enum": [ + "json", + "media", + "proto" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json", + "Media download with context-dependent Content-Type", + "Responses with Content-Type of application/x-protobuf" + ], + "location": "query", + "type": "string" + }, + "bearer_token": { + "description": "OAuth bearer token.", + "location": "query", + "type": "string" + }, + "callback": { + "description": "JSONP", + "location": "query", + "type": "string" + }, + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "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.", + "location": "query", + "type": "string" + }, + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "pp": { + "default": "true", + "description": "Pretty-print response.", + "location": "query", + "type": "boolean" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", + "location": "query", + "type": "string" + }, + "uploadType": { + "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", + "location": "query", + "type": "string" + }, + "upload_protocol": { + "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", + "location": "query", + "type": "string" + } + }, + "protocol": "rest", "resources": { - "datasets": { - "methods": { - "testIamPermissions": { - "description": "Returns permissions that a caller has on the specified resource.\nSee \u003ca href=\"/iam/docs/managing-policies#testing_permissions\"\u003eTesting\nPermissions\u003c/a\u003e for more information.\n\nFor the definitions of datasets and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)", - "request": { - "$ref": "TestIamPermissionsRequest" - }, - "response": { - "$ref": "TestIamPermissionsResponse" - }, - "parameterOrder": [ - "resource" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/genomics" - ], - "parameters": { - "resource": { - "pattern": "^datasets/[^/]+$", - "location": "path", - "description": "REQUIRED: The resource for which policy is being specified. Format is\n`datasets/\u003cdataset ID\u003e`.", - "required": true, - "type": "string" - } - }, - "flatPath": "v1/datasets/{datasetsId}:testIamPermissions", - "path": "v1/{+resource}:testIamPermissions", - "id": "genomics.datasets.testIamPermissions" - }, - "delete": { - "parameters": { - "datasetId": { - "required": true, - "type": "string", - "location": "path", - "description": "The ID of the dataset to be deleted." - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/genomics" - ], - "flatPath": "v1/datasets/{datasetId}", - "path": "v1/datasets/{datasetId}", - "id": "genomics.datasets.delete", - "description": "Deletes a dataset and all of its contents (all read group sets,\nreference sets, variant sets, call sets, annotation sets, etc.)\nThis is reversible (up to one week after the deletion) via\nthe\ndatasets.undelete\noperation.\n\nFor the definitions of datasets and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)", - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "datasetId" - ], - "httpMethod": "DELETE" - }, - "list": { - "flatPath": "v1/datasets", - "path": "v1/datasets", - "id": "genomics.datasets.list", - "description": "Lists datasets within a project.\n\nFor the definitions of datasets and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)", - "response": { - "$ref": "ListDatasetsResponse" - }, - "parameterOrder": [], - "httpMethod": "GET", - "parameters": { - "pageToken": { - "description": "The continuation token, which is used to page through large result sets.\nTo get the next page of results, set this parameter to the value of\n`nextPageToken` from the previous response.", - "type": "string", - "location": "query" - }, - "pageSize": { - "description": "The maximum number of results to return in a single page. If unspecified,\ndefaults to 50. The maximum value is 1024.", - "format": "int32", - "type": "integer", - "location": "query" - }, - "projectId": { - "location": "query", - "description": "Required. The Google Cloud project ID to list datasets for.", - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/genomics", - "https://www.googleapis.com/auth/genomics.readonly" - ] - }, - "setIamPolicy": { - "id": "genomics.datasets.setIamPolicy", - "path": "v1/{+resource}:setIamPolicy", - "request": { - "$ref": "SetIamPolicyRequest" - }, - "description": "Sets the access control policy on the specified dataset. Replaces any\nexisting policy.\n\nFor the definitions of datasets and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)\n\nSee \u003ca href=\"/iam/docs/managing-policies#setting_a_policy\"\u003eSetting a\nPolicy\u003c/a\u003e for more information.", - "httpMethod": "POST", - "parameterOrder": [ - "resource" - ], - "response": { - "$ref": "Policy" - }, - "parameters": { - "resource": { - "description": "REQUIRED: The resource for which policy is being specified. Format is\n`datasets/\u003cdataset ID\u003e`.", - "required": true, - "type": "string", - "pattern": "^datasets/[^/]+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/genomics" - ], - "flatPath": "v1/datasets/{datasetsId}:setIamPolicy" - }, - "create": { - "httpMethod": "POST", - "parameterOrder": [], - "response": { - "$ref": "Dataset" - }, - "parameters": {}, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/genomics" - ], - "flatPath": "v1/datasets", - "id": "genomics.datasets.create", - "path": "v1/datasets", - "request": { - "$ref": "Dataset" - }, - "description": "Creates a new dataset.\n\nFor the definitions of datasets and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)" - }, - "getIamPolicy": { - "flatPath": "v1/datasets/{datasetsId}:getIamPolicy", - "path": "v1/{+resource}:getIamPolicy", - "id": "genomics.datasets.getIamPolicy", - "request": { - "$ref": "GetIamPolicyRequest" - }, - "description": "Gets the access control policy for the dataset. This is empty if the\npolicy or resource does not exist.\n\nSee \u003ca href=\"/iam/docs/managing-policies#getting_a_policy\"\u003eGetting a\nPolicy\u003c/a\u003e for more information.\n\nFor the definitions of datasets and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)", - "response": { - "$ref": "Policy" - }, - "parameterOrder": [ - "resource" - ], - "httpMethod": "POST", - "parameters": { - "resource": { - "description": "REQUIRED: The resource for which policy is being specified. Format is\n`datasets/\u003cdataset ID\u003e`.", - "required": true, - "type": "string", - "pattern": "^datasets/[^/]+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/genomics" - ] - }, - "patch": { - "parameters": { - "datasetId": { - "location": "path", - "description": "The ID of the dataset to be updated.", - "required": true, - "type": "string" - }, - "updateMask": { - "description": "An optional mask specifying which fields to update. At this time, the only\nmutable field is name. The only\nacceptable value is \"name\". If unspecified, all mutable fields will be\nupdated.", - "format": "google-fieldmask", - "type": "string", - "location": "query" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/genomics" - ], - "flatPath": "v1/datasets/{datasetId}", - "path": "v1/datasets/{datasetId}", - "id": "genomics.datasets.patch", - "request": { - "$ref": "Dataset" - }, - "description": "Updates a dataset.\n\nFor the definitions of datasets and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)\n\nThis method supports patch semantics.", - "response": { - "$ref": "Dataset" - }, - "parameterOrder": [ - "datasetId" - ], - "httpMethod": "PATCH" - }, - "get": { - "response": { - "$ref": "Dataset" - }, - "parameterOrder": [ - "datasetId" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/genomics", - "https://www.googleapis.com/auth/genomics.readonly" - ], - "parameters": { - "datasetId": { - "required": true, - "type": "string", - "location": "path", - "description": "The ID of the dataset." - } - }, - "flatPath": "v1/datasets/{datasetId}", - "path": "v1/datasets/{datasetId}", - "id": "genomics.datasets.get", - "description": "Gets a dataset by ID.\n\nFor the definitions of datasets and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)" - }, - "undelete": { - "path": "v1/datasets/{datasetId}:undelete", - "id": "genomics.datasets.undelete", - "request": { - "$ref": "UndeleteDatasetRequest" - }, - "description": "Undeletes a dataset by restoring a dataset which was deleted via this API.\n\nFor the definitions of datasets and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)\n\nThis operation is only possible for a week after the deletion occurred.", - "response": { - "$ref": "Dataset" - }, - "parameterOrder": [ - "datasetId" - ], - "httpMethod": "POST", - "parameters": { - "datasetId": { - "location": "path", - "description": "The ID of the dataset to be undeleted.", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/genomics" - ], - "flatPath": "v1/datasets/{datasetId}:undelete" - } - } - }, - "variantsets": { - "methods": { - "create": { - "response": { - "$ref": "VariantSet" - }, - "parameterOrder": [], - "httpMethod": "POST", - "parameters": {}, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/genomics" - ], - "flatPath": "v1/variantsets", - "path": "v1/variantsets", - "id": "genomics.variantsets.create", - "request": { - "$ref": "VariantSet" - }, - "description": "Creates a new variant set.\n\nFor the definitions of variant sets and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)\n\nThe provided variant set must have a valid `datasetId` set - all other\nfields are optional. Note that the `id` field will be ignored, as this is\nassigned by the server." - }, - "export": { - "request": { - "$ref": "ExportVariantSetRequest" - }, - "description": "Exports variant set data to an external destination.\n\nFor the definitions of variant sets and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)", - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "variantSetId" - ], - "httpMethod": "POST", - "parameters": { - "variantSetId": { - "location": "path", - "description": "Required. The ID of the variant set that contains variant data which\nshould be exported. The caller must have READ access to this variant set.", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/bigquery", - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/genomics" - ], - "flatPath": "v1/variantsets/{variantSetId}:export", - "path": "v1/variantsets/{variantSetId}:export", - "id": "genomics.variantsets.export" - }, - "search": { - "request": { - "$ref": "SearchVariantSetsRequest" - }, - "description": "Returns a list of all variant sets matching search criteria.\n\nFor the definitions of variant sets and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)\n\nImplements\n[GlobalAllianceApi.searchVariantSets](https://github.com/ga4gh/schemas/blob/v0.5.1/src/main/resources/avro/variantmethods.avdl#L49).", - "response": { - "$ref": "SearchVariantSetsResponse" - }, - "parameterOrder": [], - "httpMethod": "POST", - "parameters": {}, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/genomics", - "https://www.googleapis.com/auth/genomics.readonly" - ], - "flatPath": "v1/variantsets/search", - "path": "v1/variantsets/search", - "id": "genomics.variantsets.search" - }, - "patch": { - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/genomics" - ], - "parameters": { - "variantSetId": { - "location": "path", - "description": "The ID of the variant to be updated (must already exist).", - "required": true, - "type": "string" - }, - "updateMask": { - "location": "query", - "description": "An optional mask specifying which fields to update. Supported fields:\n\n* metadata.\n* name.\n* description.\n\nLeaving `updateMask` unset is equivalent to specifying all mutable\nfields.", - "format": "google-fieldmask", - "type": "string" - } - }, - "flatPath": "v1/variantsets/{variantSetId}", - "path": "v1/variantsets/{variantSetId}", - "id": "genomics.variantsets.patch", - "description": "Updates a variant set using patch semantics.\n\nFor the definitions of variant sets and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)", - "request": { - "$ref": "VariantSet" - }, - "response": { - "$ref": "VariantSet" - }, - "parameterOrder": [ - "variantSetId" - ], - "httpMethod": "PATCH" - }, - "get": { - "response": { - "$ref": "VariantSet" - }, - "parameterOrder": [ - "variantSetId" - ], - "httpMethod": "GET", - "parameters": { - "variantSetId": { - "location": "path", - "description": "Required. The ID of the variant set.", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/genomics", - "https://www.googleapis.com/auth/genomics.readonly" - ], - "flatPath": "v1/variantsets/{variantSetId}", - "path": "v1/variantsets/{variantSetId}", - "id": "genomics.variantsets.get", - "description": "Gets a variant set by ID.\n\nFor the definitions of variant sets and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)" - }, - "delete": { - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "variantSetId" - ], - "httpMethod": "DELETE", - "parameters": { - "variantSetId": { - "description": "The ID of the variant set to be deleted.", - "required": true, - "type": "string", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/genomics" - ], - "flatPath": "v1/variantsets/{variantSetId}", - "path": "v1/variantsets/{variantSetId}", - "id": "genomics.variantsets.delete", - "description": "Deletes a variant set including all variants, call sets, and calls within.\nThis is not reversible.\n\nFor the definitions of variant sets and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)" - } - } - }, "annotations": { "methods": { - "create": { - "request": { - "$ref": "Annotation" - }, - "description": "Creates a new annotation. Caller must have WRITE permission\nfor the associated annotation set.\n\nThe following fields are required:\n\n* annotationSetId\n* referenceName or\n referenceId\n\n### Transcripts\n\nFor annotations of type TRANSCRIPT, the following fields of\ntranscript must be provided:\n\n* exons.start\n* exons.end\n\nAll other fields may be optionally specified, unless documented as being\nserver-generated (for example, the `id` field). The annotated\nrange must be no longer than 100Mbp (mega base pairs). See the\nAnnotation resource\nfor additional restrictions on each field.", - "httpMethod": "POST", - "parameterOrder": [], - "response": { - "$ref": "Annotation" - }, - "parameters": {}, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/genomics" - ], - "flatPath": "v1/annotations", - "id": "genomics.annotations.create", - "path": "v1/annotations" - }, "batchCreate": { - "response": { - "$ref": "BatchCreateAnnotationsResponse" - }, - "parameterOrder": [], - "httpMethod": "POST", - "parameters": {}, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/genomics" - ], + "description": "Creates one or more new annotations atomically. All annotations must\nbelong to the same annotation set. Caller must have WRITE\npermission for this annotation set. For optimal performance, batch\npositionally adjacent annotations together.\n\nIf the request has a systemic issue, such as an attempt to write to\nan inaccessible annotation set, the entire RPC will fail accordingly. For\nlesser data issues, when possible an error will be isolated to the\ncorresponding batch entry in the response; the remaining well formed\nannotations will be created normally.\n\nFor details on the requirements for each individual annotation resource,\nsee\nCreateAnnotation.", "flatPath": "v1/annotations:batchCreate", - "path": "v1/annotations:batchCreate", + "httpMethod": "POST", "id": "genomics.annotations.batchCreate", + "parameterOrder": [], + "parameters": {}, + "path": "v1/annotations:batchCreate", "request": { "$ref": "BatchCreateAnnotationsRequest" }, - "description": "Creates one or more new annotations atomically. All annotations must\nbelong to the same annotation set. Caller must have WRITE\npermission for this annotation set. For optimal performance, batch\npositionally adjacent annotations together.\n\nIf the request has a systemic issue, such as an attempt to write to\nan inaccessible annotation set, the entire RPC will fail accordingly. For\nlesser data issues, when possible an error will be isolated to the\ncorresponding batch entry in the response; the remaining well formed\nannotations will be created normally.\n\nFor details on the requirements for each individual annotation resource,\nsee\nCreateAnnotation." + "response": { + "$ref": "BatchCreateAnnotationsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/genomics" + ] + }, + "create": { + "description": "Creates a new annotation. Caller must have WRITE permission\nfor the associated annotation set.\n\nThe following fields are required:\n\n* annotationSetId\n* referenceName or\n referenceId\n\n### Transcripts\n\nFor annotations of type TRANSCRIPT, the following fields of\ntranscript must be provided:\n\n* exons.start\n* exons.end\n\nAll other fields may be optionally specified, unless documented as being\nserver-generated (for example, the `id` field). The annotated\nrange must be no longer than 100Mbp (mega base pairs). See the\nAnnotation resource\nfor additional restrictions on each field.", + "flatPath": "v1/annotations", + "httpMethod": "POST", + "id": "genomics.annotations.create", + "parameterOrder": [], + "parameters": {}, + "path": "v1/annotations", + "request": { + "$ref": "Annotation" + }, + "response": { + "$ref": "Annotation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/genomics" + ] + }, + "delete": { + "description": "Deletes an annotation. Caller must have WRITE permission for\nthe associated annotation set.", + "flatPath": "v1/annotations/{annotationId}", + "httpMethod": "DELETE", + "id": "genomics.annotations.delete", + "parameterOrder": [ + "annotationId" + ], + "parameters": { + "annotationId": { + "description": "The ID of the annotation to be deleted.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/annotations/{annotationId}", + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/genomics" + ] + }, + "get": { + "description": "Gets an annotation. Caller must have READ permission\nfor the associated annotation set.", + "flatPath": "v1/annotations/{annotationId}", + "httpMethod": "GET", + "id": "genomics.annotations.get", + "parameterOrder": [ + "annotationId" + ], + "parameters": { + "annotationId": { + "description": "The ID of the annotation to be retrieved.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/annotations/{annotationId}", + "response": { + "$ref": "Annotation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/genomics", + "https://www.googleapis.com/auth/genomics.readonly" + ] }, "search": { - "flatPath": "v1/annotations/search", - "path": "v1/annotations/search", - "id": "genomics.annotations.search", "description": "Searches for annotations that match the given criteria. Results are\nordered by genomic coordinate (by reference sequence, then position).\nAnnotations with equivalent genomic coordinates are returned in an\nunspecified order. This order is consistent, such that two queries for the\nsame content (regardless of page size) yield annotations in the same order\nacross their respective streams of paginated responses. Caller must have\nREAD permission for the queried annotation sets.", + "flatPath": "v1/annotations/search", + "httpMethod": "POST", + "id": "genomics.annotations.search", + "parameterOrder": [], + "parameters": {}, + "path": "v1/annotations/search", "request": { "$ref": "SearchAnnotationsRequest" }, "response": { "$ref": "SearchAnnotationsResponse" }, - "parameterOrder": [], - "httpMethod": "POST", "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/genomics", "https://www.googleapis.com/auth/genomics.readonly" - ], - "parameters": {} + ] }, - "get": { - "description": "Gets an annotation. Caller must have READ permission\nfor the associated annotation set.", - "response": { - "$ref": "Annotation" - }, + "update": { + "description": "Updates an annotation. Caller must have\nWRITE permission for the associated dataset.", + "flatPath": "v1/annotations/{annotationId}", + "httpMethod": "PUT", + "id": "genomics.annotations.update", "parameterOrder": [ "annotationId" ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/genomics", - "https://www.googleapis.com/auth/genomics.readonly" - ], "parameters": { "annotationId": { - "description": "The ID of the annotation to be retrieved.", + "description": "The ID of the annotation to be updated.", + "location": "path", "required": true, - "type": "string", - "location": "path" - } - }, - "flatPath": "v1/annotations/{annotationId}", - "path": "v1/annotations/{annotationId}", - "id": "genomics.annotations.get" - }, - "update": { - "request": { - "$ref": "Annotation" - }, - "description": "Updates an annotation. Caller must have\nWRITE permission for the associated dataset.", - "response": { - "$ref": "Annotation" - }, - "parameterOrder": [ - "annotationId" - ], - "httpMethod": "PUT", - "parameters": { + "type": "string" + }, "updateMask": { "description": "An optional mask specifying which fields to update. Mutable fields are\nname,\nvariant,\ntranscript, and\ninfo. If unspecified, all mutable\nfields will be updated.", "format": "google-fieldmask", - "type": "string", - "location": "query" - }, - "annotationId": { - "description": "The ID of the annotation to be updated.", - "required": true, - "type": "string", - "location": "path" + "location": "query", + "type": "string" } }, + "path": "v1/annotations/{annotationId}", + "request": { + "$ref": "Annotation" + }, + "response": { + "$ref": "Annotation" + }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/genomics" - ], - "flatPath": "v1/annotations/{annotationId}", - "path": "v1/annotations/{annotationId}", - "id": "genomics.annotations.update" + ] + } + } + }, + "annotationsets": { + "methods": { + "create": { + "description": "Creates a new annotation set. Caller must have WRITE permission for the\nassociated dataset.\n\nThe following fields are required:\n\n * datasetId\n * referenceSetId\n\nAll other fields may be optionally specified, unless documented as being\nserver-generated (for example, the `id` field).", + "flatPath": "v1/annotationsets", + "httpMethod": "POST", + "id": "genomics.annotationsets.create", + "parameterOrder": [], + "parameters": {}, + "path": "v1/annotationsets", + "request": { + "$ref": "AnnotationSet" + }, + "response": { + "$ref": "AnnotationSet" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/genomics" + ] }, "delete": { - "description": "Deletes an annotation. Caller must have WRITE permission for\nthe associated annotation set.", - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "annotationId" - ], + "description": "Deletes an annotation set. Caller must have WRITE permission\nfor the associated annotation set.", + "flatPath": "v1/annotationsets/{annotationSetId}", "httpMethod": "DELETE", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/genomics" + "id": "genomics.annotationsets.delete", + "parameterOrder": [ + "annotationSetId" ], "parameters": { - "annotationId": { + "annotationSetId": { + "description": "The ID of the annotation set to be deleted.", "location": "path", - "description": "The ID of the annotation to be deleted.", "required": true, "type": "string" } }, - "flatPath": "v1/annotations/{annotationId}", - "path": "v1/annotations/{annotationId}", - "id": "genomics.annotations.delete" + "path": "v1/annotationsets/{annotationSetId}", + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/genomics" + ] + }, + "get": { + "description": "Gets an annotation set. Caller must have READ permission for\nthe associated dataset.", + "flatPath": "v1/annotationsets/{annotationSetId}", + "httpMethod": "GET", + "id": "genomics.annotationsets.get", + "parameterOrder": [ + "annotationSetId" + ], + "parameters": { + "annotationSetId": { + "description": "The ID of the annotation set to be retrieved.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/annotationsets/{annotationSetId}", + "response": { + "$ref": "AnnotationSet" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/genomics", + "https://www.googleapis.com/auth/genomics.readonly" + ] + }, + "search": { + "description": "Searches for annotation sets that match the given criteria. Annotation sets\nare returned in an unspecified order. This order is consistent, such that\ntwo queries for the same content (regardless of page size) yield annotation\nsets in the same order across their respective streams of paginated\nresponses. Caller must have READ permission for the queried datasets.", + "flatPath": "v1/annotationsets/search", + "httpMethod": "POST", + "id": "genomics.annotationsets.search", + "parameterOrder": [], + "parameters": {}, + "path": "v1/annotationsets/search", + "request": { + "$ref": "SearchAnnotationSetsRequest" + }, + "response": { + "$ref": "SearchAnnotationSetsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/genomics", + "https://www.googleapis.com/auth/genomics.readonly" + ] + }, + "update": { + "description": "Updates an annotation set. The update must respect all mutability\nrestrictions and other invariants described on the annotation set resource.\nCaller must have WRITE permission for the associated dataset.", + "flatPath": "v1/annotationsets/{annotationSetId}", + "httpMethod": "PUT", + "id": "genomics.annotationsets.update", + "parameterOrder": [ + "annotationSetId" + ], + "parameters": { + "annotationSetId": { + "description": "The ID of the annotation set to be updated.", + "location": "path", + "required": true, + "type": "string" + }, + "updateMask": { + "description": "An optional mask specifying which fields to update. Mutable fields are\nname,\nsource_uri, and\ninfo. If unspecified, all\nmutable fields will be updated.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + } + }, + "path": "v1/annotationsets/{annotationSetId}", + "request": { + "$ref": "AnnotationSet" + }, + "response": { + "$ref": "AnnotationSet" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/genomics" + ] + } + } + }, + "callsets": { + "methods": { + "create": { + "description": "Creates a new call set.\n\nFor the definitions of call sets and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)", + "flatPath": "v1/callsets", + "httpMethod": "POST", + "id": "genomics.callsets.create", + "parameterOrder": [], + "parameters": {}, + "path": "v1/callsets", + "request": { + "$ref": "CallSet" + }, + "response": { + "$ref": "CallSet" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/genomics" + ] + }, + "delete": { + "description": "Deletes a call set.\n\nFor the definitions of call sets and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)", + "flatPath": "v1/callsets/{callSetId}", + "httpMethod": "DELETE", + "id": "genomics.callsets.delete", + "parameterOrder": [ + "callSetId" + ], + "parameters": { + "callSetId": { + "description": "The ID of the call set to be deleted.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/callsets/{callSetId}", + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/genomics" + ] + }, + "get": { + "description": "Gets a call set by ID.\n\nFor the definitions of call sets and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)", + "flatPath": "v1/callsets/{callSetId}", + "httpMethod": "GET", + "id": "genomics.callsets.get", + "parameterOrder": [ + "callSetId" + ], + "parameters": { + "callSetId": { + "description": "The ID of the call set.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/callsets/{callSetId}", + "response": { + "$ref": "CallSet" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/genomics", + "https://www.googleapis.com/auth/genomics.readonly" + ] + }, + "patch": { + "description": "Updates a call set.\n\nFor the definitions of call sets and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)\n\nThis method supports patch semantics.", + "flatPath": "v1/callsets/{callSetId}", + "httpMethod": "PATCH", + "id": "genomics.callsets.patch", + "parameterOrder": [ + "callSetId" + ], + "parameters": { + "callSetId": { + "description": "The ID of the call set to be updated.", + "location": "path", + "required": true, + "type": "string" + }, + "updateMask": { + "description": "An optional mask specifying which fields to update. At this time, the only\nmutable field is name. The only\nacceptable value is \"name\". If unspecified, all mutable fields will be\nupdated.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + } + }, + "path": "v1/callsets/{callSetId}", + "request": { + "$ref": "CallSet" + }, + "response": { + "$ref": "CallSet" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/genomics" + ] + }, + "search": { + "description": "Gets a list of call sets matching the criteria.\n\nFor the definitions of call sets and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)\n\nImplements\n[GlobalAllianceApi.searchCallSets](https://github.com/ga4gh/schemas/blob/v0.5.1/src/main/resources/avro/variantmethods.avdl#L178).", + "flatPath": "v1/callsets/search", + "httpMethod": "POST", + "id": "genomics.callsets.search", + "parameterOrder": [], + "parameters": {}, + "path": "v1/callsets/search", + "request": { + "$ref": "SearchCallSetsRequest" + }, + "response": { + "$ref": "SearchCallSetsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/genomics", + "https://www.googleapis.com/auth/genomics.readonly" + ] + } + } + }, + "datasets": { + "methods": { + "create": { + "description": "Creates a new dataset.\n\nFor the definitions of datasets and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)", + "flatPath": "v1/datasets", + "httpMethod": "POST", + "id": "genomics.datasets.create", + "parameterOrder": [], + "parameters": {}, + "path": "v1/datasets", + "request": { + "$ref": "Dataset" + }, + "response": { + "$ref": "Dataset" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/genomics" + ] + }, + "delete": { + "description": "Deletes a dataset and all of its contents (all read group sets,\nreference sets, variant sets, call sets, annotation sets, etc.)\nThis is reversible (up to one week after the deletion) via\nthe\ndatasets.undelete\noperation.\n\nFor the definitions of datasets and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)", + "flatPath": "v1/datasets/{datasetId}", + "httpMethod": "DELETE", + "id": "genomics.datasets.delete", + "parameterOrder": [ + "datasetId" + ], + "parameters": { + "datasetId": { + "description": "The ID of the dataset to be deleted.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/datasets/{datasetId}", + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/genomics" + ] + }, + "get": { + "description": "Gets a dataset by ID.\n\nFor the definitions of datasets and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)", + "flatPath": "v1/datasets/{datasetId}", + "httpMethod": "GET", + "id": "genomics.datasets.get", + "parameterOrder": [ + "datasetId" + ], + "parameters": { + "datasetId": { + "description": "The ID of the dataset.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/datasets/{datasetId}", + "response": { + "$ref": "Dataset" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/genomics", + "https://www.googleapis.com/auth/genomics.readonly" + ] + }, + "getIamPolicy": { + "description": "Gets the access control policy for the dataset. This is empty if the\npolicy or resource does not exist.\n\nSee \u003ca href=\"/iam/docs/managing-policies#getting_a_policy\"\u003eGetting a\nPolicy\u003c/a\u003e for more information.\n\nFor the definitions of datasets and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)", + "flatPath": "v1/datasets/{datasetsId}:getIamPolicy", + "httpMethod": "POST", + "id": "genomics.datasets.getIamPolicy", + "parameterOrder": [ + "resource" + ], + "parameters": { + "resource": { + "description": "REQUIRED: The resource for which policy is being specified. Format is\n`datasets/\u003cdataset ID\u003e`.", + "location": "path", + "pattern": "^datasets/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+resource}:getIamPolicy", + "request": { + "$ref": "GetIamPolicyRequest" + }, + "response": { + "$ref": "Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/genomics" + ] + }, + "list": { + "description": "Lists datasets within a project.\n\nFor the definitions of datasets and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)", + "flatPath": "v1/datasets", + "httpMethod": "GET", + "id": "genomics.datasets.list", + "parameterOrder": [], + "parameters": { + "pageSize": { + "description": "The maximum number of results to return in a single page. If unspecified,\ndefaults to 50. The maximum value is 1024.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "The continuation token, which is used to page through large result sets.\nTo get the next page of results, set this parameter to the value of\n`nextPageToken` from the previous response.", + "location": "query", + "type": "string" + }, + "projectId": { + "description": "Required. The Google Cloud project ID to list datasets for.", + "location": "query", + "type": "string" + } + }, + "path": "v1/datasets", + "response": { + "$ref": "ListDatasetsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/genomics", + "https://www.googleapis.com/auth/genomics.readonly" + ] + }, + "patch": { + "description": "Updates a dataset.\n\nFor the definitions of datasets and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)\n\nThis method supports patch semantics.", + "flatPath": "v1/datasets/{datasetId}", + "httpMethod": "PATCH", + "id": "genomics.datasets.patch", + "parameterOrder": [ + "datasetId" + ], + "parameters": { + "datasetId": { + "description": "The ID of the dataset to be updated.", + "location": "path", + "required": true, + "type": "string" + }, + "updateMask": { + "description": "An optional mask specifying which fields to update. At this time, the only\nmutable field is name. The only\nacceptable value is \"name\". If unspecified, all mutable fields will be\nupdated.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + } + }, + "path": "v1/datasets/{datasetId}", + "request": { + "$ref": "Dataset" + }, + "response": { + "$ref": "Dataset" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/genomics" + ] + }, + "setIamPolicy": { + "description": "Sets the access control policy on the specified dataset. Replaces any\nexisting policy.\n\nFor the definitions of datasets and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)\n\nSee \u003ca href=\"/iam/docs/managing-policies#setting_a_policy\"\u003eSetting a\nPolicy\u003c/a\u003e for more information.", + "flatPath": "v1/datasets/{datasetsId}:setIamPolicy", + "httpMethod": "POST", + "id": "genomics.datasets.setIamPolicy", + "parameterOrder": [ + "resource" + ], + "parameters": { + "resource": { + "description": "REQUIRED: The resource for which policy is being specified. Format is\n`datasets/\u003cdataset ID\u003e`.", + "location": "path", + "pattern": "^datasets/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+resource}:setIamPolicy", + "request": { + "$ref": "SetIamPolicyRequest" + }, + "response": { + "$ref": "Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/genomics" + ] + }, + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource.\nSee \u003ca href=\"/iam/docs/managing-policies#testing_permissions\"\u003eTesting\nPermissions\u003c/a\u003e for more information.\n\nFor the definitions of datasets and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)", + "flatPath": "v1/datasets/{datasetsId}:testIamPermissions", + "httpMethod": "POST", + "id": "genomics.datasets.testIamPermissions", + "parameterOrder": [ + "resource" + ], + "parameters": { + "resource": { + "description": "REQUIRED: The resource for which policy is being specified. Format is\n`datasets/\u003cdataset ID\u003e`.", + "location": "path", + "pattern": "^datasets/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+resource}:testIamPermissions", + "request": { + "$ref": "TestIamPermissionsRequest" + }, + "response": { + "$ref": "TestIamPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/genomics" + ] + }, + "undelete": { + "description": "Undeletes a dataset by restoring a dataset which was deleted via this API.\n\nFor the definitions of datasets and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)\n\nThis operation is only possible for a week after the deletion occurred.", + "flatPath": "v1/datasets/{datasetId}:undelete", + "httpMethod": "POST", + "id": "genomics.datasets.undelete", + "parameterOrder": [ + "datasetId" + ], + "parameters": { + "datasetId": { + "description": "The ID of the dataset to be undeleted.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/datasets/{datasetId}:undelete", + "request": { + "$ref": "UndeleteDatasetRequest" + }, + "response": { + "$ref": "Dataset" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/genomics" + ] } } }, "operations": { "methods": { "cancel": { - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "POST", - "parameters": { - "name": { - "location": "path", - "description": "The name of the operation resource to be cancelled.", - "required": true, - "type": "string", - "pattern": "^operations/.+$" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/genomics" - ], + "description": "Starts asynchronous cancellation on a long-running operation. The server makes a best effort to cancel the operation, but success is not guaranteed. Clients may use Operations.GetOperation or Operations.ListOperations to check whether the cancellation succeeded or the operation completed despite cancellation.", "flatPath": "v1/operations/{operationsId}:cancel", - "path": "v1/{+name}:cancel", + "httpMethod": "POST", "id": "genomics.operations.cancel", - "request": { - "$ref": "CancelOperationRequest" - }, - "description": "Starts asynchronous cancellation on a long-running operation. The server makes a best effort to cancel the operation, but success is not guaranteed. Clients may use Operations.GetOperation or Operations.ListOperations to check whether the cancellation succeeded or the operation completed despite cancellation." - }, - "list": { - "description": "Lists operations that match the specified filter in the request.", - "response": { - "$ref": "ListOperationsResponse" - }, "parameterOrder": [ "name" ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/genomics" - ], "parameters": { - "pageSize": { - "location": "query", - "description": "The maximum number of results to return. If unspecified, defaults to\n256. The maximum value is 2048.", - "format": "int32", - "type": "integer" - }, - "filter": { - "description": "A string for filtering Operations.\nThe following filter fields are supported:\n\n* projectId: Required. Corresponds to\n OperationMetadata.projectId.\n* createTime: The time this job was created, in seconds from the\n [epoch](http://en.wikipedia.org/wiki/Unix_time). Can use `\u003e=` and/or `\u003c=`\n operators.\n* status: Can be `RUNNING`, `SUCCESS`, `FAILURE`, or `CANCELED`. Only\n one status may be specified.\n* labels.key where key is a label key.\n\nExamples:\n\n* `projectId = my-project AND createTime \u003e= 1432140000`\n* `projectId = my-project AND createTime \u003e= 1432140000 AND createTime \u003c= 1432150000 AND status = RUNNING`\n* `projectId = my-project AND labels.color = *`\n* `projectId = my-project AND labels.color = red`", - "type": "string", - "location": "query" - }, "name": { - "description": "The name of the operation's parent resource.", + "description": "The name of the operation resource to be cancelled.", + "location": "path", + "pattern": "^operations/.+$", "required": true, - "type": "string", - "pattern": "^operations$", - "location": "path" - }, - "pageToken": { - "location": "query", - "description": "The standard list page token.", "type": "string" } }, - "flatPath": "v1/operations", - "path": "v1/{+name}", - "id": "genomics.operations.list" - }, - "get": { - "response": { - "$ref": "Operation" + "path": "v1/{+name}:cancel", + "request": { + "$ref": "CancelOperationRequest" + }, + "response": { + "$ref": "Empty" }, - "parameterOrder": [ - "name" - ], - "httpMethod": "GET", "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/genomics" + ] + }, + "get": { + "description": "Gets the latest state of a long-running operation. Clients can use this\nmethod to poll the operation result at intervals as recommended by the API\nservice.", + "flatPath": "v1/operations/{operationsId}", + "httpMethod": "GET", + "id": "genomics.operations.get", + "parameterOrder": [ + "name" ], "parameters": { "name": { "description": "The name of the operation resource.", - "required": true, - "type": "string", - "pattern": "^operations/.+$", - "location": "path" - } - }, - "flatPath": "v1/operations/{operationsId}", - "path": "v1/{+name}", - "id": "genomics.operations.get", - "description": "Gets the latest state of a long-running operation. Clients can use this\nmethod to poll the operation result at intervals as recommended by the API\nservice." - } - } - }, - "referencesets": { - "methods": { - "search": { - "id": "genomics.referencesets.search", - "path": "v1/referencesets/search", - "request": { - "$ref": "SearchReferenceSetsRequest" - }, - "description": "Searches for reference sets which match the given criteria.\n\nFor the definitions of references and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)\n\nImplements\n[GlobalAllianceApi.searchReferenceSets](https://github.com/ga4gh/schemas/blob/v0.5.1/src/main/resources/avro/referencemethods.avdl#L71)", - "httpMethod": "POST", - "parameterOrder": [], - "response": { - "$ref": "SearchReferenceSetsResponse" - }, - "parameters": {}, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/genomics", - "https://www.googleapis.com/auth/genomics.readonly" - ], - "flatPath": "v1/referencesets/search" - }, - "get": { - "response": { - "$ref": "ReferenceSet" - }, - "parameterOrder": [ - "referenceSetId" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/genomics", - "https://www.googleapis.com/auth/genomics.readonly" - ], - "parameters": { - "referenceSetId": { "location": "path", - "description": "The ID of the reference set.", + "pattern": "^operations/.+$", "required": true, "type": "string" } }, - "flatPath": "v1/referencesets/{referenceSetId}", - "path": "v1/referencesets/{referenceSetId}", - "id": "genomics.referencesets.get", - "description": "Gets a reference set.\n\nFor the definitions of references and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)\n\nImplements\n[GlobalAllianceApi.getReferenceSet](https://github.com/ga4gh/schemas/blob/v0.5.1/src/main/resources/avro/referencemethods.avdl#L83)." + "path": "v1/{+name}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/genomics" + ] + }, + "list": { + "description": "Lists operations that match the specified filter in the request.", + "flatPath": "v1/operations", + "httpMethod": "GET", + "id": "genomics.operations.list", + "parameterOrder": [ + "name" + ], + "parameters": { + "filter": { + "description": "A string for filtering Operations.\nIn v2alpha1, the following filter fields are supported\u0026#58;\n\n* createTime\u0026#58; The time this job was created\n* events\u0026#58; The set of event (names) that have occurred while running\n the pipeline. The \u0026#58; operator can be used to determine if a\n particular event has occurred.\n* error\u0026#58; If the pipeline is running, this value is NULL. Once the\n pipeline finishes, the value is the standard Google error code.\n* labels.key or labels.\"key with space\" where key is a label key.\n\nIn v1 and v1alpha2, the following filter fields are supported\u0026#58;\n\n* projectId\u0026#58; Required. Corresponds to\n OperationMetadata.projectId.\n* createTime\u0026#58; The time this job was created, in seconds from the\n [epoch](http://en.wikipedia.org/wiki/Unix_time). Can use `\u003e=` and/or `\u003c=`\n operators.\n* status\u0026#58; Can be `RUNNING`, `SUCCESS`, `FAILURE`, or `CANCELED`. Only\n one status may be specified.\n* labels.key where key is a label key.\n\nExamples\u0026#58;\n\n* `projectId = my-project AND createTime \u003e= 1432140000`\n* `projectId = my-project AND createTime \u003e= 1432140000 AND createTime \u003c= 1432150000 AND status = RUNNING`\n* `projectId = my-project AND labels.color = *`\n* `projectId = my-project AND labels.color = red`", + "location": "query", + "type": "string" + }, + "name": { + "description": "The name of the operation's parent resource.", + "location": "path", + "pattern": "^operations$", + "required": true, + "type": "string" + }, + "pageSize": { + "description": "The maximum number of results to return. If unspecified, defaults to\n256. The maximum value is 2048.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "The standard list page token.", + "location": "query", + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "ListOperationsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/genomics" + ] } } }, "readgroupsets": { "methods": { - "export": { - "request": { - "$ref": "ExportReadGroupSetRequest" - }, - "description": "Exports a read group set to a BAM file in Google Cloud Storage.\n\nFor the definitions of read group sets and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)\n\nNote that currently there may be some differences between exported BAM\nfiles and the original BAM file at the time of import. See\nImportReadGroupSets\nfor caveats.", - "httpMethod": "POST", + "delete": { + "description": "Deletes a read group set.\n\nFor the definitions of read group sets and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)", + "flatPath": "v1/readgroupsets/{readGroupSetId}", + "httpMethod": "DELETE", + "id": "genomics.readgroupsets.delete", "parameterOrder": [ "readGroupSetId" ], - "response": { - "$ref": "Operation" - }, "parameters": { "readGroupSetId": { + "description": "The ID of the read group set to be deleted. The caller must have WRITE\npermissions to the dataset associated with this read group set.", "location": "path", - "description": "Required. The ID of the read group set to export. The caller must have\nREAD access to this read group set.", "required": true, "type": "string" } }, + "path": "v1/readgroupsets/{readGroupSetId}", + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/genomics" + ] + }, + "export": { + "description": "Exports a read group set to a BAM file in Google Cloud Storage.\n\nFor the definitions of read group sets and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)\n\nNote that currently there may be some differences between exported BAM\nfiles and the original BAM file at the time of import. See\nImportReadGroupSets\nfor caveats.", + "flatPath": "v1/readgroupsets/{readGroupSetId}:export", + "httpMethod": "POST", + "id": "genomics.readgroupsets.export", + "parameterOrder": [ + "readGroupSetId" + ], + "parameters": { + "readGroupSetId": { + "description": "Required. The ID of the read group set to export. The caller must have\nREAD access to this read group set.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/readgroupsets/{readGroupSetId}:export", + "request": { + "$ref": "ExportReadGroupSetRequest" + }, + "response": { + "$ref": "Operation" + }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/devstorage.read_write", "https://www.googleapis.com/auth/genomics" - ], - "flatPath": "v1/readgroupsets/{readGroupSetId}:export", - "id": "genomics.readgroupsets.export", - "path": "v1/readgroupsets/{readGroupSetId}:export" - }, - "search": { - "description": "Searches for read group sets matching the criteria.\n\nFor the definitions of read group sets and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)\n\nImplements\n[GlobalAllianceApi.searchReadGroupSets](https://github.com/ga4gh/schemas/blob/v0.5.1/src/main/resources/avro/readmethods.avdl#L135).", - "request": { - "$ref": "SearchReadGroupSetsRequest" - }, - "response": { - "$ref": "SearchReadGroupSetsResponse" - }, - "parameterOrder": [], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/genomics", - "https://www.googleapis.com/auth/genomics.readonly" - ], - "parameters": {}, - "flatPath": "v1/readgroupsets/search", - "path": "v1/readgroupsets/search", - "id": "genomics.readgroupsets.search" - }, - "patch": { - "path": "v1/readgroupsets/{readGroupSetId}", - "id": "genomics.readgroupsets.patch", - "description": "Updates a read group set.\n\nFor the definitions of read group sets and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)\n\nThis method supports patch semantics.", - "request": { - "$ref": "ReadGroupSet" - }, - "response": { - "$ref": "ReadGroupSet" - }, - "parameterOrder": [ - "readGroupSetId" - ], - "httpMethod": "PATCH", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/genomics" - ], - "parameters": { - "readGroupSetId": { - "description": "The ID of the read group set to be updated. The caller must have WRITE\npermissions to the dataset associated with this read group set.", - "required": true, - "type": "string", - "location": "path" - }, - "updateMask": { - "description": "An optional mask specifying which fields to update. Supported fields:\n\n* name.\n* referenceSetId.\n\nLeaving `updateMask` unset is equivalent to specifying all mutable\nfields.", - "format": "google-fieldmask", - "type": "string", - "location": "query" - } - }, - "flatPath": "v1/readgroupsets/{readGroupSetId}" + ] }, "get": { - "flatPath": "v1/readgroupsets/{readGroupSetId}", - "id": "genomics.readgroupsets.get", - "path": "v1/readgroupsets/{readGroupSetId}", "description": "Gets a read group set by ID.\n\nFor the definitions of read group sets and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)", + "flatPath": "v1/readgroupsets/{readGroupSetId}", "httpMethod": "GET", + "id": "genomics.readgroupsets.get", "parameterOrder": [ "readGroupSetId" ], - "response": { - "$ref": "ReadGroupSet" - }, "parameters": { "readGroupSetId": { "description": "The ID of the read group set.", + "location": "path", "required": true, - "type": "string", - "location": "path" + "type": "string" } }, + "path": "v1/readgroupsets/{readGroupSetId}", + "response": { + "$ref": "ReadGroupSet" + }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/genomics", @@ -834,49 +970,78 @@ ] }, "import": { + "description": "Creates read group sets by asynchronously importing the provided\ninformation.\n\nFor the definitions of read group sets and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)\n\nThe caller must have WRITE permissions to the dataset.\n\n## Notes on [BAM](https://samtools.github.io/hts-specs/SAMv1.pdf) import\n\n- Tags will be converted to strings - tag types are not preserved\n- Comments (`@CO`) in the input file header will not be preserved\n- Original header order of references (`@SQ`) will not be preserved\n- Any reverse stranded unmapped reads will be reverse complemented, and\ntheir qualities (also the \"BQ\" and \"OQ\" tags, if any) will be reversed\n- Unmapped reads will be stripped of positional information (reference name\nand position)", + "flatPath": "v1/readgroupsets:import", + "httpMethod": "POST", + "id": "genomics.readgroupsets.import", + "parameterOrder": [], + "parameters": {}, + "path": "v1/readgroupsets:import", + "request": { + "$ref": "ImportReadGroupSetsRequest" + }, "response": { "$ref": "Operation" }, - "parameterOrder": [], - "httpMethod": "POST", - "parameters": {}, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/devstorage.read_write", "https://www.googleapis.com/auth/genomics" - ], - "flatPath": "v1/readgroupsets:import", - "path": "v1/readgroupsets:import", - "id": "genomics.readgroupsets.import", - "request": { - "$ref": "ImportReadGroupSetsRequest" - }, - "description": "Creates read group sets by asynchronously importing the provided\ninformation.\n\nFor the definitions of read group sets and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)\n\nThe caller must have WRITE permissions to the dataset.\n\n## Notes on [BAM](https://samtools.github.io/hts-specs/SAMv1.pdf) import\n\n- Tags will be converted to strings - tag types are not preserved\n- Comments (`@CO`) in the input file header will not be preserved\n- Original header order of references (`@SQ`) will not be preserved\n- Any reverse stranded unmapped reads will be reverse complemented, and\ntheir qualities (also the \"BQ\" and \"OQ\" tags, if any) will be reversed\n- Unmapped reads will be stripped of positional information (reference name\nand position)" + ] }, - "delete": { - "description": "Deletes a read group set.\n\nFor the definitions of read group sets and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)", - "response": { - "$ref": "Empty" - }, + "patch": { + "description": "Updates a read group set.\n\nFor the definitions of read group sets and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)\n\nThis method supports patch semantics.", + "flatPath": "v1/readgroupsets/{readGroupSetId}", + "httpMethod": "PATCH", + "id": "genomics.readgroupsets.patch", "parameterOrder": [ "readGroupSetId" ], - "httpMethod": "DELETE", "parameters": { "readGroupSetId": { - "required": true, - "type": "string", + "description": "The ID of the read group set to be updated. The caller must have WRITE\npermissions to the dataset associated with this read group set.", "location": "path", - "description": "The ID of the read group set to be deleted. The caller must have WRITE\npermissions to the dataset associated with this read group set." + "required": true, + "type": "string" + }, + "updateMask": { + "description": "An optional mask specifying which fields to update. Supported fields:\n\n* name.\n* referenceSetId.\n\nLeaving `updateMask` unset is equivalent to specifying all mutable\nfields.", + "format": "google-fieldmask", + "location": "query", + "type": "string" } }, + "path": "v1/readgroupsets/{readGroupSetId}", + "request": { + "$ref": "ReadGroupSet" + }, + "response": { + "$ref": "ReadGroupSet" + }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/genomics" - ], - "flatPath": "v1/readgroupsets/{readGroupSetId}", - "path": "v1/readgroupsets/{readGroupSetId}", - "id": "genomics.readgroupsets.delete" + ] + }, + "search": { + "description": "Searches for read group sets matching the criteria.\n\nFor the definitions of read group sets and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)\n\nImplements\n[GlobalAllianceApi.searchReadGroupSets](https://github.com/ga4gh/schemas/blob/v0.5.1/src/main/resources/avro/readmethods.avdl#L135).", + "flatPath": "v1/readgroupsets/search", + "httpMethod": "POST", + "id": "genomics.readgroupsets.search", + "parameterOrder": [], + "parameters": {}, + "path": "v1/readgroupsets/search", + "request": { + "$ref": "SearchReadGroupSetsRequest" + }, + "response": { + "$ref": "SearchReadGroupSetsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/genomics", + "https://www.googleapis.com/auth/genomics.readonly" + ] } }, "resources": { @@ -884,63 +1049,63 @@ "methods": { "list": { "description": "Lists fixed width coverage buckets for a read group set, each of which\ncorrespond to a range of a reference sequence. Each bucket summarizes\ncoverage information across its corresponding genomic range.\n\nFor the definitions of read group sets and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)\n\nCoverage is defined as the number of reads which are aligned to a given\nbase in the reference sequence. Coverage buckets are available at several\nprecomputed bucket widths, enabling retrieval of various coverage 'zoom\nlevels'. The caller must have READ permissions for the target read group\nset.", - "response": { - "$ref": "ListCoverageBucketsResponse" - }, + "flatPath": "v1/readgroupsets/{readGroupSetId}/coveragebuckets", + "httpMethod": "GET", + "id": "genomics.readgroupsets.coveragebuckets.list", "parameterOrder": [ "readGroupSetId" ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/genomics", - "https://www.googleapis.com/auth/genomics.readonly" - ], "parameters": { "end": { - "location": "query", "description": "The end position of the range on the reference, 0-based exclusive. If\nspecified, `referenceName` must also be specified. If unset or 0, defaults\nto the length of the reference.", "format": "int64", - "type": "string" - }, - "pageToken": { "location": "query", - "description": "The continuation token, which is used to page through large result sets.\nTo get the next page of results, set this parameter to the value of\n`nextPageToken` from the previous response.", "type": "string" }, "pageSize": { - "type": "integer", - "location": "query", "description": "The maximum number of results to return in a single page. If unspecified,\ndefaults to 1024. The maximum value is 2048.", - "format": "int32" - }, - "start": { + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "The continuation token, which is used to page through large result sets.\nTo get the next page of results, set this parameter to the value of\n`nextPageToken` from the previous response.", "location": "query", - "description": "The start position of the range on the reference, 0-based inclusive. If\nspecified, `referenceName` must also be specified. Defaults to 0.", - "format": "int64", "type": "string" }, "readGroupSetId": { "description": "Required. The ID of the read group set over which coverage is requested.", + "location": "path", "required": true, - "type": "string", - "location": "path" - }, - "targetBucketWidth": { - "location": "query", - "description": "The desired width of each reported coverage bucket in base pairs. This\nwill be rounded down to the nearest precomputed bucket width; the value\nof which is returned as `bucketWidth` in the response. Defaults\nto infinity (each bucket spans an entire reference sequence) or the length\nof the target range, if specified. The smallest precomputed\n`bucketWidth` is currently 2048 base pairs; this is subject to\nchange.", - "format": "int64", "type": "string" }, "referenceName": { - "location": "query", "description": "The name of the reference to query, within the reference set associated\nwith this query. Optional.", + "location": "query", + "type": "string" + }, + "start": { + "description": "The start position of the range on the reference, 0-based inclusive. If\nspecified, `referenceName` must also be specified. Defaults to 0.", + "format": "int64", + "location": "query", + "type": "string" + }, + "targetBucketWidth": { + "description": "The desired width of each reported coverage bucket in base pairs. This\nwill be rounded down to the nearest precomputed bucket width; the value\nof which is returned as `bucketWidth` in the response. Defaults\nto infinity (each bucket spans an entire reference sequence) or the length\nof the target range, if specified. The smallest precomputed\n`bucketWidth` is currently 2048 base pairs; this is subject to\nchange.", + "format": "int64", + "location": "query", "type": "string" } }, - "flatPath": "v1/readgroupsets/{readGroupSetId}/coveragebuckets", "path": "v1/readgroupsets/{readGroupSetId}/coveragebuckets", - "id": "genomics.readgroupsets.coveragebuckets.list" + "response": { + "$ref": "ListCoverageBucketsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/genomics", + "https://www.googleapis.com/auth/genomics.readonly" + ] } } } @@ -949,1031 +1114,564 @@ "reads": { "methods": { "search": { + "description": "Gets a list of reads for one or more read group sets.\n\nFor the definitions of read group sets and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)\n\nReads search operates over a genomic coordinate space of reference sequence\n\u0026 position defined over the reference sequences to which the requested\nread group sets are aligned.\n\nIf a target positional range is specified, search returns all reads whose\nalignment to the reference genome overlap the range. A query which\nspecifies only read group set IDs yields all reads in those read group\nsets, including unmapped reads.\n\nAll reads returned (including reads on subsequent pages) are ordered by\ngenomic coordinate (by reference sequence, then position). Reads with\nequivalent genomic coordinates are returned in an unspecified order. This\norder is consistent, such that two queries for the same content (regardless\nof page size) yield reads in the same order across their respective streams\nof paginated responses.\n\nImplements\n[GlobalAllianceApi.searchReads](https://github.com/ga4gh/schemas/blob/v0.5.1/src/main/resources/avro/readmethods.avdl#L85).", + "flatPath": "v1/reads/search", + "httpMethod": "POST", + "id": "genomics.reads.search", + "parameterOrder": [], + "parameters": {}, + "path": "v1/reads/search", "request": { "$ref": "SearchReadsRequest" }, - "description": "Gets a list of reads for one or more read group sets.\n\nFor the definitions of read group sets and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)\n\nReads search operates over a genomic coordinate space of reference sequence\n& position defined over the reference sequences to which the requested\nread group sets are aligned.\n\nIf a target positional range is specified, search returns all reads whose\nalignment to the reference genome overlap the range. A query which\nspecifies only read group set IDs yields all reads in those read group\nsets, including unmapped reads.\n\nAll reads returned (including reads on subsequent pages) are ordered by\ngenomic coordinate (by reference sequence, then position). Reads with\nequivalent genomic coordinates are returned in an unspecified order. This\norder is consistent, such that two queries for the same content (regardless\nof page size) yield reads in the same order across their respective streams\nof paginated responses.\n\nImplements\n[GlobalAllianceApi.searchReads](https://github.com/ga4gh/schemas/blob/v0.5.1/src/main/resources/avro/readmethods.avdl#L85).", "response": { "$ref": "SearchReadsResponse" }, - "parameterOrder": [], - "httpMethod": "POST", - "parameters": {}, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/genomics", "https://www.googleapis.com/auth/genomics.readonly" - ], - "flatPath": "v1/reads/search", - "path": "v1/reads/search", - "id": "genomics.reads.search" - } - } - }, - "callsets": { - "methods": { - "create": { - "flatPath": "v1/callsets", - "path": "v1/callsets", - "id": "genomics.callsets.create", - "description": "Creates a new call set.\n\nFor the definitions of call sets and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)", - "request": { - "$ref": "CallSet" - }, - "response": { - "$ref": "CallSet" - }, - "parameterOrder": [], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/genomics" - ], - "parameters": {} - }, - "delete": { - "httpMethod": "DELETE", - "parameterOrder": [ - "callSetId" - ], - "response": { - "$ref": "Empty" - }, - "parameters": { - "callSetId": { - "location": "path", - "description": "The ID of the call set to be deleted.", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/genomics" - ], - "flatPath": "v1/callsets/{callSetId}", - "id": "genomics.callsets.delete", - "path": "v1/callsets/{callSetId}", - "description": "Deletes a call set.\n\nFor the definitions of call sets and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)" - }, - "search": { - "path": "v1/callsets/search", - "id": "genomics.callsets.search", - "description": "Gets a list of call sets matching the criteria.\n\nFor the definitions of call sets and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)\n\nImplements\n[GlobalAllianceApi.searchCallSets](https://github.com/ga4gh/schemas/blob/v0.5.1/src/main/resources/avro/variantmethods.avdl#L178).", - "request": { - "$ref": "SearchCallSetsRequest" - }, - "response": { - "$ref": "SearchCallSetsResponse" - }, - "parameterOrder": [], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/genomics", - "https://www.googleapis.com/auth/genomics.readonly" - ], - "parameters": {}, - "flatPath": "v1/callsets/search" - }, - "patch": { - "response": { - "$ref": "CallSet" - }, - "parameterOrder": [ - "callSetId" - ], - "httpMethod": "PATCH", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/genomics" - ], - "parameters": { - "updateMask": { - "description": "An optional mask specifying which fields to update. At this time, the only\nmutable field is name. The only\nacceptable value is \"name\". If unspecified, all mutable fields will be\nupdated.", - "format": "google-fieldmask", - "type": "string", - "location": "query" - }, - "callSetId": { - "required": true, - "type": "string", - "location": "path", - "description": "The ID of the call set to be updated." - } - }, - "flatPath": "v1/callsets/{callSetId}", - "path": "v1/callsets/{callSetId}", - "id": "genomics.callsets.patch", - "description": "Updates a call set.\n\nFor the definitions of call sets and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)\n\nThis method supports patch semantics.", - "request": { - "$ref": "CallSet" - } - }, - "get": { - "response": { - "$ref": "CallSet" - }, - "parameterOrder": [ - "callSetId" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/genomics", - "https://www.googleapis.com/auth/genomics.readonly" - ], - "parameters": { - "callSetId": { - "location": "path", - "description": "The ID of the call set.", - "required": true, - "type": "string" - } - }, - "flatPath": "v1/callsets/{callSetId}", - "path": "v1/callsets/{callSetId}", - "id": "genomics.callsets.get", - "description": "Gets a call set by ID.\n\nFor the definitions of call sets and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)" - } - } - }, - "annotationsets": { - "methods": { - "delete": { - "flatPath": "v1/annotationsets/{annotationSetId}", - "id": "genomics.annotationsets.delete", - "path": "v1/annotationsets/{annotationSetId}", - "description": "Deletes an annotation set. Caller must have WRITE permission\nfor the associated annotation set.", - "httpMethod": "DELETE", - "parameterOrder": [ - "annotationSetId" - ], - "response": { - "$ref": "Empty" - }, - "parameters": { - "annotationSetId": { - "description": "The ID of the annotation set to be deleted.", - "required": true, - "type": "string", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/genomics" ] - }, - "search": { - "description": "Searches for annotation sets that match the given criteria. Annotation sets\nare returned in an unspecified order. This order is consistent, such that\ntwo queries for the same content (regardless of page size) yield annotation\nsets in the same order across their respective streams of paginated\nresponses. Caller must have READ permission for the queried datasets.", - "request": { - "$ref": "SearchAnnotationSetsRequest" - }, - "response": { - "$ref": "SearchAnnotationSetsResponse" - }, - "parameterOrder": [], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/genomics", - "https://www.googleapis.com/auth/genomics.readonly" - ], - "parameters": {}, - "flatPath": "v1/annotationsets/search", - "path": "v1/annotationsets/search", - "id": "genomics.annotationsets.search" - }, - "get": { - "response": { - "$ref": "AnnotationSet" - }, - "parameterOrder": [ - "annotationSetId" - ], - "httpMethod": "GET", - "parameters": { - "annotationSetId": { - "description": "The ID of the annotation set to be retrieved.", - "required": true, - "type": "string", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/genomics", - "https://www.googleapis.com/auth/genomics.readonly" - ], - "flatPath": "v1/annotationsets/{annotationSetId}", - "path": "v1/annotationsets/{annotationSetId}", - "id": "genomics.annotationsets.get", - "description": "Gets an annotation set. Caller must have READ permission for\nthe associated dataset." - }, - "update": { - "parameters": { - "updateMask": { - "location": "query", - "description": "An optional mask specifying which fields to update. Mutable fields are\nname,\nsource_uri, and\ninfo. If unspecified, all\nmutable fields will be updated.", - "format": "google-fieldmask", - "type": "string" - }, - "annotationSetId": { - "required": true, - "type": "string", - "location": "path", - "description": "The ID of the annotation set to be updated." - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/genomics" - ], - "flatPath": "v1/annotationsets/{annotationSetId}", - "id": "genomics.annotationsets.update", - "path": "v1/annotationsets/{annotationSetId}", - "request": { - "$ref": "AnnotationSet" - }, - "description": "Updates an annotation set. The update must respect all mutability\nrestrictions and other invariants described on the annotation set resource.\nCaller must have WRITE permission for the associated dataset.", - "httpMethod": "PUT", - "parameterOrder": [ - "annotationSetId" - ], - "response": { - "$ref": "AnnotationSet" - } - }, - "create": { - "response": { - "$ref": "AnnotationSet" - }, - "parameterOrder": [], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/genomics" - ], - "parameters": {}, - "flatPath": "v1/annotationsets", - "path": "v1/annotationsets", - "id": "genomics.annotationsets.create", - "description": "Creates a new annotation set. Caller must have WRITE permission for the\nassociated dataset.\n\nThe following fields are required:\n\n * datasetId\n * referenceSetId\n\nAll other fields may be optionally specified, unless documented as being\nserver-generated (for example, the `id` field).", - "request": { - "$ref": "AnnotationSet" - } - } - } - }, - "variants": { - "methods": { - "search": { - "description": "Gets a list of variants matching the criteria.\n\nFor the definitions of variants and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)\n\nImplements\n[GlobalAllianceApi.searchVariants](https://github.com/ga4gh/schemas/blob/v0.5.1/src/main/resources/avro/variantmethods.avdl#L126).", - "request": { - "$ref": "SearchVariantsRequest" - }, - "response": { - "$ref": "SearchVariantsResponse" - }, - "parameterOrder": [], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/genomics", - "https://www.googleapis.com/auth/genomics.readonly" - ], - "parameters": {}, - "flatPath": "v1/variants/search", - "path": "v1/variants/search", - "id": "genomics.variants.search" - }, - "get": { - "response": { - "$ref": "Variant" - }, - "parameterOrder": [ - "variantId" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/genomics", - "https://www.googleapis.com/auth/genomics.readonly" - ], - "parameters": { - "variantId": { - "location": "path", - "description": "The ID of the variant.", - "required": true, - "type": "string" - } - }, - "flatPath": "v1/variants/{variantId}", - "path": "v1/variants/{variantId}", - "id": "genomics.variants.get", - "description": "Gets a variant by ID.\n\nFor the definitions of variants and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)" - }, - "patch": { - "description": "Updates a variant.\n\nFor the definitions of variants and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)\n\nThis method supports patch semantics. Returns the modified variant without\nits calls.", - "request": { - "$ref": "Variant" - }, - "response": { - "$ref": "Variant" - }, - "parameterOrder": [ - "variantId" - ], - "httpMethod": "PATCH", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/genomics" - ], - "parameters": { - "variantId": { - "location": "path", - "description": "The ID of the variant to be updated.", - "required": true, - "type": "string" - }, - "updateMask": { - "description": "An optional mask specifying which fields to update. At this time, mutable\nfields are names and\ninfo. Acceptable values are \"names\" and\n\"info\". If unspecified, all mutable fields will be updated.", - "format": "google-fieldmask", - "type": "string", - "location": "query" - } - }, - "flatPath": "v1/variants/{variantId}", - "path": "v1/variants/{variantId}", - "id": "genomics.variants.patch" - }, - "delete": { - "httpMethod": "DELETE", - "parameterOrder": [ - "variantId" - ], - "response": { - "$ref": "Empty" - }, - "parameters": { - "variantId": { - "location": "path", - "description": "The ID of the variant to be deleted.", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/genomics" - ], - "flatPath": "v1/variants/{variantId}", - "id": "genomics.variants.delete", - "path": "v1/variants/{variantId}", - "description": "Deletes a variant.\n\nFor the definitions of variants and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)" - }, - "merge": { - "request": { - "$ref": "MergeVariantsRequest" - }, - "description": "Merges the given variants with existing variants.\n\nFor the definitions of variants and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)\n\nEach variant will be\nmerged with an existing variant that matches its reference sequence,\nstart, end, reference bases, and alternative bases. If no such variant\nexists, a new one will be created.\n\nWhen variants are merged, the call information from the new variant\nis added to the existing variant. Variant info fields are merged as\nspecified in the\ninfoMergeConfig\nfield of the MergeVariantsRequest.\n\nPlease exercise caution when using this method! It is easy to introduce\nmistakes in existing variants and difficult to back out of them. For\nexample,\nsuppose you were trying to merge a new variant with an existing one and\nboth\nvariants contain calls that belong to callsets with the same callset ID.\n\n // Existing variant - irrelevant fields trimmed for clarity\n {\n \"variantSetId\": \"10473108253681171589\",\n \"referenceName\": \"1\",\n \"start\": \"10582\",\n \"referenceBases\": \"G\",\n \"alternateBases\": [\n \"A\"\n ],\n \"calls\": [\n {\n \"callSetId\": \"10473108253681171589-0\",\n \"callSetName\": \"CALLSET0\",\n \"genotype\": [\n 0,\n 1\n ],\n }\n ]\n }\n\n // New variant with conflicting call information\n {\n \"variantSetId\": \"10473108253681171589\",\n \"referenceName\": \"1\",\n \"start\": \"10582\",\n \"referenceBases\": \"G\",\n \"alternateBases\": [\n \"A\"\n ],\n \"calls\": [\n {\n \"callSetId\": \"10473108253681171589-0\",\n \"callSetName\": \"CALLSET0\",\n \"genotype\": [\n 1,\n 1\n ],\n }\n ]\n }\n\nThe resulting merged variant would overwrite the existing calls with those\nfrom the new variant:\n\n {\n \"variantSetId\": \"10473108253681171589\",\n \"referenceName\": \"1\",\n \"start\": \"10582\",\n \"referenceBases\": \"G\",\n \"alternateBases\": [\n \"A\"\n ],\n \"calls\": [\n {\n \"callSetId\": \"10473108253681171589-0\",\n \"callSetName\": \"CALLSET0\",\n \"genotype\": [\n 1,\n 1\n ],\n }\n ]\n }\n\nThis may be the desired outcome, but it is up to the user to determine if\nif that is indeed the case.", - "response": { - "$ref": "Empty" - }, - "parameterOrder": [], - "httpMethod": "POST", - "parameters": {}, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/genomics" - ], - "flatPath": "v1/variants:merge", - "path": "v1/variants:merge", - "id": "genomics.variants.merge" - }, - "import": { - "response": { - "$ref": "Operation" - }, - "parameterOrder": [], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/devstorage.read_write", - "https://www.googleapis.com/auth/genomics" - ], - "parameters": {}, - "flatPath": "v1/variants:import", - "path": "v1/variants:import", - "id": "genomics.variants.import", - "description": "Creates variant data by asynchronously importing the provided information.\n\nFor the definitions of variant sets and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)\n\nThe variants for import will be merged with any existing variant that\nmatches its reference sequence, start, end, reference bases, and\nalternative bases. If no such variant exists, a new one will be created.\n\nWhen variants are merged, the call information from the new variant\nis added to the existing variant, and Variant info fields are merged\nas specified in\ninfoMergeConfig.\nAs a special case, for single-sample VCF files, QUAL and FILTER fields will\nbe moved to the call level; these are sometimes interpreted in a\ncall-specific context.\nImported VCF headers are appended to the metadata already in a variant set.", - "request": { - "$ref": "ImportVariantsRequest" - } - }, - "create": { - "response": { - "$ref": "Variant" - }, - "parameterOrder": [], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/genomics" - ], - "parameters": {}, - "flatPath": "v1/variants", - "path": "v1/variants", - "id": "genomics.variants.create", - "description": "Creates a new variant.\n\nFor the definitions of variants and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)", - "request": { - "$ref": "Variant" - } } } }, "references": { "methods": { "get": { - "path": "v1/references/{referenceId}", - "id": "genomics.references.get", "description": "Gets a reference.\n\nFor the definitions of references and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)\n\nImplements\n[GlobalAllianceApi.getReference](https://github.com/ga4gh/schemas/blob/v0.5.1/src/main/resources/avro/referencemethods.avdl#L158).", - "response": { - "$ref": "Reference" - }, + "flatPath": "v1/references/{referenceId}", + "httpMethod": "GET", + "id": "genomics.references.get", "parameterOrder": [ "referenceId" ], - "httpMethod": "GET", "parameters": { "referenceId": { - "location": "path", "description": "The ID of the reference.", + "location": "path", "required": true, "type": "string" } }, + "path": "v1/references/{referenceId}", + "response": { + "$ref": "Reference" + }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/genomics", "https://www.googleapis.com/auth/genomics.readonly" - ], - "flatPath": "v1/references/{referenceId}" + ] }, "search": { - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/genomics", - "https://www.googleapis.com/auth/genomics.readonly" - ], - "parameters": {}, - "flatPath": "v1/references/search", - "path": "v1/references/search", - "id": "genomics.references.search", "description": "Searches for references which match the given criteria.\n\nFor the definitions of references and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)\n\nImplements\n[GlobalAllianceApi.searchReferences](https://github.com/ga4gh/schemas/blob/v0.5.1/src/main/resources/avro/referencemethods.avdl#L146).", + "flatPath": "v1/references/search", + "httpMethod": "POST", + "id": "genomics.references.search", + "parameterOrder": [], + "parameters": {}, + "path": "v1/references/search", "request": { "$ref": "SearchReferencesRequest" }, "response": { "$ref": "SearchReferencesResponse" }, - "parameterOrder": [], - "httpMethod": "POST" + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/genomics", + "https://www.googleapis.com/auth/genomics.readonly" + ] } }, "resources": { "bases": { "methods": { "list": { - "flatPath": "v1/references/{referenceId}/bases", - "path": "v1/references/{referenceId}/bases", - "id": "genomics.references.bases.list", "description": "Lists the bases in a reference, optionally restricted to a range.\n\nFor the definitions of references and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)\n\nImplements\n[GlobalAllianceApi.getReferenceBases](https://github.com/ga4gh/schemas/blob/v0.5.1/src/main/resources/avro/referencemethods.avdl#L221).", - "response": { - "$ref": "ListBasesResponse" - }, + "flatPath": "v1/references/{referenceId}/bases", + "httpMethod": "GET", + "id": "genomics.references.bases.list", "parameterOrder": [ "referenceId" ], - "httpMethod": "GET", + "parameters": { + "end": { + "description": "The end position (0-based, exclusive) of this query. Defaults to the length\nof this reference.", + "format": "int64", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "The maximum number of bases to return in a single page. If unspecified,\ndefaults to 200Kbp (kilo base pairs). The maximum value is 10Mbp (mega base\npairs).", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "The continuation token, which is used to page through large result sets.\nTo get the next page of results, set this parameter to the value of\n`nextPageToken` from the previous response.", + "location": "query", + "type": "string" + }, + "referenceId": { + "description": "The ID of the reference.", + "location": "path", + "required": true, + "type": "string" + }, + "start": { + "description": "The start position (0-based) of this query. Defaults to 0.", + "format": "int64", + "location": "query", + "type": "string" + } + }, + "path": "v1/references/{referenceId}/bases", + "response": { + "$ref": "ListBasesResponse" + }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/genomics", "https://www.googleapis.com/auth/genomics.readonly" - ], - "parameters": { - "start": { - "description": "The start position (0-based) of this query. Defaults to 0.", - "format": "int64", - "type": "string", - "location": "query" - }, - "referenceId": { - "description": "The ID of the reference.", - "required": true, - "type": "string", - "location": "path" - }, - "end": { - "type": "string", - "location": "query", - "description": "The end position (0-based, exclusive) of this query. Defaults to the length\nof this reference.", - "format": "int64" - }, - "pageToken": { - "type": "string", - "location": "query", - "description": "The continuation token, which is used to page through large result sets.\nTo get the next page of results, set this parameter to the value of\n`nextPageToken` from the previous response." - }, - "pageSize": { - "location": "query", - "description": "The maximum number of bases to return in a single page. If unspecified,\ndefaults to 200Kbp (kilo base pairs). The maximum value is 10Mbp (mega base\npairs).", - "format": "int32", - "type": "integer" - } - } + ] } } } } - } - }, - "parameters": { - "upload_protocol": { - "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", - "type": "string", - "location": "query" }, - "prettyPrint": { - "description": "Returns response with indentations and line breaks.", - "type": "boolean", - "default": "true", - "location": "query" - }, - "uploadType": { - "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", - "type": "string", - "location": "query" - }, - "fields": { - "location": "query", - "description": "Selector specifying which fields to include in a partial response.", - "type": "string" - }, - "$.xgafv": { - "enumDescriptions": [ - "v1 error format", - "v2 error format" - ], - "location": "query", - "enum": [ - "1", - "2" - ], - "description": "V1 error format.", - "type": "string" - }, - "callback": { - "type": "string", - "location": "query", - "description": "JSONP" - }, - "alt": { - "description": "Data format for response.", - "default": "json", - "enum": [ - "json", - "media", - "proto" - ], - "type": "string", - "enumDescriptions": [ - "Responses with Content-Type of application/json", - "Media download with context-dependent Content-Type", - "Responses with Content-Type of application/x-protobuf" - ], - "location": "query" - }, - "access_token": { - "description": "OAuth access token.", - "type": "string", - "location": "query" - }, - "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.", - "type": "string", - "location": "query" - }, - "quotaUser": { - "location": "query", - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", - "type": "string" - }, - "pp": { - "description": "Pretty-print response.", - "type": "boolean", - "default": "true", - "location": "query" - }, - "oauth_token": { - "description": "OAuth 2.0 token for the current user.", - "type": "string", - "location": "query" - }, - "bearer_token": { - "location": "query", - "description": "OAuth bearer token.", - "type": "string" - } - }, - "schemas": { - "ImportVariantsResponse": { - "description": "The variant data import response.", - "type": "object", - "properties": { - "callSetIds": { - "description": "IDs of the call sets created during the import.", - "type": "array", - "items": { - "type": "string" - } - } - }, - "id": "ImportVariantsResponse" - }, - "ReadGroup": { - "type": "object", - "properties": { - "datasetId": { - "description": "The dataset to which this read group belongs.", - "type": "string" - }, - "experiment": { - "description": "The experiment used to generate this read group.", - "$ref": "Experiment" - }, - "name": { - "description": "The read group name. This corresponds to the @RG ID field in the SAM spec.", - "type": "string" - }, - "referenceSetId": { - "description": "The reference set the reads in this read group are aligned to.", - "type": "string" - }, - "info": { - "description": "A map of additional read group information. This must be of the form\nmap\u003cstring, string[]\u003e (string key mapping to a list of string values).", - "type": "object", - "additionalProperties": { - "type": "array", - "items": { - "type": "any" - } - } - }, - "id": { - "description": "The server-generated read group ID, unique for all read groups.\nNote: This is different than the @RG ID field in the SAM spec. For that\nvalue, see name.", - "type": "string" - }, - "programs": { - "description": "The programs used to generate this read group. Programs are always\nidentical for all read groups within a read group set. For this reason,\nonly the first read group in a returned set will have this field\npopulated.", - "type": "array", - "items": { - "$ref": "Program" - } - }, - "predictedInsertSize": { - "type": "integer", - "description": "The predicted insert size of this read group. The insert size is the length\nthe sequenced DNA fragment from end-to-end, not including the adapters.", - "format": "int32" - }, - "description": { - "description": "A free-form text description of this read group.", - "type": "string" - }, - "sampleId": { - "description": "A client-supplied sample identifier for the reads in this read group.", - "type": "string" - } - }, - "id": "ReadGroup", - "description": "A read group is all the data that's processed the same way by the sequencer." - }, - "ReadGroupSet": { - "description": "A read group set is a logical collection of read groups, which are\ncollections of reads produced by a sequencer. A read group set typically\nmodels reads corresponding to one sample, sequenced one way, and aligned one\nway.\n\n* A read group set belongs to one dataset.\n* A read group belongs to one read group set.\n* A read belongs to one read group.\n\nFor more genomics resource definitions, see [Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)", - "type": "object", - "properties": { - "datasetId": { - "description": "The dataset to which this read group set belongs.", - "type": "string" - }, - "readGroups": { - "description": "The read groups in this set. There are typically 1-10 read groups in a read\ngroup set.", - "type": "array", - "items": { - "$ref": "ReadGroup" - } - }, - "filename": { - "description": "The filename of the original source file for this read group set, if any.", - "type": "string" - }, - "name": { - "description": "The read group set name. By default this will be initialized to the sample\nname of the sequenced data contained in this set.", - "type": "string" - }, - "referenceSetId": { - "description": "The reference set to which the reads in this read group set are aligned.", - "type": "string" - }, - "info": { - "type": "object", - "additionalProperties": { - "type": "array", - "items": { - "type": "any" - } - }, - "description": "A map of additional read group set information." - }, - "id": { - "description": "The server-generated read group set ID, unique for all read group sets.", - "type": "string" - } - }, - "id": "ReadGroupSet" - }, - "SearchVariantSetsResponse": { - "properties": { - "variantSets": { - "description": "The variant sets belonging to the requested dataset.", - "type": "array", - "items": { - "$ref": "VariantSet" - } - }, - "nextPageToken": { - "description": "The continuation token, which is used to page through large result sets.\nProvide this value in a subsequent request to return the next page of\nresults. This field will be empty if there aren't any additional results.", - "type": "string" - } - }, - "id": "SearchVariantSetsResponse", - "description": "The search variant sets response.", - "type": "object" - }, - "Empty": { - "type": "object", - "properties": {}, - "id": "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 `{}`." - }, - "Entry": { - "type": "object", - "properties": { - "status": { - "description": "The creation status.", - "$ref": "Status" - }, - "annotation": { - "description": "The created annotation, if creation was successful.", - "$ref": "Annotation" - } - }, - "id": "Entry" - }, - "Position": { - "description": "An abstraction for referring to a genomic position, in relation to some\nalready known reference. For now, represents a genomic position as a\nreference name, a base number on that reference (0-based), and a\ndetermination of forward or reverse strand.", - "type": "object", - "properties": { - "reverseStrand": { - "description": "Whether this position is on the reverse strand, as opposed to the forward\nstrand.", - "type": "boolean" - }, - "position": { - "type": "string", - "description": "The 0-based offset from the start of the forward strand for that reference.", - "format": "int64" - }, - "referenceName": { - "description": "The name of the reference in whatever reference set is being used.", - "type": "string" - } - }, - "id": "Position" - }, - "SearchReferenceSetsResponse": { - "type": "object", - "properties": { - "referenceSets": { - "description": "The matching references sets.", - "type": "array", - "items": { - "$ref": "ReferenceSet" - } - }, - "nextPageToken": { - "description": "The continuation token, which is used to page through large result sets.\nProvide this value in a subsequent request to return the next page of\nresults. This field will be empty if there aren't any additional results.", - "type": "string" - } - }, - "id": "SearchReferenceSetsResponse" - }, - "SearchCallSetsRequest": { - "properties": { - "name": { - "description": "Only return call sets for which a substring of the name matches this\nstring.", - "type": "string" - }, - "pageToken": { - "description": "The continuation token, which is used to page through large result sets.\nTo get the next page of results, set this parameter to the value of\n`nextPageToken` from the previous response.", - "type": "string" - }, - "pageSize": { - "description": "The maximum number of results to return in a single page. If unspecified,\ndefaults to 1024.", - "format": "int32", - "type": "integer" - }, - "variantSetIds": { - "type": "array", - "items": { - "type": "string" - }, - "description": "Restrict the query to call sets within the given variant sets. At least one\nID must be provided." - } - }, - "id": "SearchCallSetsRequest", - "description": "The call set search request.", - "type": "object" - }, - "ImportReadGroupSetsRequest": { - "description": "The read group set import request.", - "type": "object", - "properties": { - "referenceSetId": { - "description": "The reference set to which the imported read group sets are aligned to, if\nany. The reference names of this reference set must be a superset of those\nfound in the imported file headers. If no reference set id is provided, a\nbest effort is made to associate with a matching reference set.", - "type": "string" - }, - "partitionStrategy": { - "enum": [ - "PARTITION_STRATEGY_UNSPECIFIED", - "PER_FILE_PER_SAMPLE", - "MERGE_ALL" + "referencesets": { + "methods": { + "get": { + "description": "Gets a reference set.\n\nFor the definitions of references and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)\n\nImplements\n[GlobalAllianceApi.getReferenceSet](https://github.com/ga4gh/schemas/blob/v0.5.1/src/main/resources/avro/referencemethods.avdl#L83).", + "flatPath": "v1/referencesets/{referenceSetId}", + "httpMethod": "GET", + "id": "genomics.referencesets.get", + "parameterOrder": [ + "referenceSetId" ], - "description": "The partition strategy describes how read groups are partitioned into read\ngroup sets.", - "type": "string", - "enumDescriptions": [ - "", - "In most cases, this strategy yields one read group set per file. This is\nthe default behavior.\n\nAllocate one read group set per file per sample. For BAM files, read\ngroups are considered to share a sample if they have identical sample\nnames. Furthermore, all reads for each file which do not belong to a read\ngroup, if any, will be grouped into a single read group set per-file.", - "Includes all read groups in all imported files into a single read group\nset. Requires that the headers for all imported files are equivalent. All\nreads which do not belong to a read group, if any, will be grouped into a\nseparate read group set." + "parameters": { + "referenceSetId": { + "description": "The ID of the reference set.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/referencesets/{referenceSetId}", + "response": { + "$ref": "ReferenceSet" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/genomics", + "https://www.googleapis.com/auth/genomics.readonly" ] }, - "datasetId": { - "description": "Required. The ID of the dataset these read group sets will belong to. The\ncaller must have WRITE permissions to this dataset.", - "type": "string" - }, - "sourceUris": { - "type": "array", - "items": { - "type": "string" + "search": { + "description": "Searches for reference sets which match the given criteria.\n\nFor the definitions of references and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)\n\nImplements\n[GlobalAllianceApi.searchReferenceSets](https://github.com/ga4gh/schemas/blob/v0.5.1/src/main/resources/avro/referencemethods.avdl#L71)", + "flatPath": "v1/referencesets/search", + "httpMethod": "POST", + "id": "genomics.referencesets.search", + "parameterOrder": [], + "parameters": {}, + "path": "v1/referencesets/search", + "request": { + "$ref": "SearchReferenceSetsRequest" }, - "description": "A list of URIs pointing at [BAM\nfiles](https://samtools.github.io/hts-specs/SAMv1.pdf)\nin Google Cloud Storage.\nThose URIs can include wildcards (*), but do not add or remove\nmatching files before import has completed.\n\nNote that Google Cloud Storage object listing is only eventually\nconsistent: files added may be not be immediately visible to\neveryone. Thus, if using a wildcard it is preferable not to start\nthe import immediately after the files are created." - } - }, - "id": "ImportReadGroupSetsRequest" - }, - "Policy": { - "description": "Defines an Identity and Access Management (IAM) policy. It is used to\nspecify access control policies for Cloud Platform resources.\n\n\nA `Policy` consists of a list of `bindings`. A `Binding` binds a list of\n`members` to a `role`, where the members can be user accounts, Google groups,\nGoogle domains, and service accounts. A `role` is a named list of permissions\ndefined by IAM.\n\n**Example**\n\n {\n \"bindings\": [\n {\n \"role\": \"roles/owner\",\n \"members\": [\n \"user:mike@example.com\",\n \"group:admins@example.com\",\n \"domain:google.com\",\n \"serviceAccount:my-other-app@appspot.gserviceaccount.com\",\n ]\n },\n {\n \"role\": \"roles/viewer\",\n \"members\": [\"user:sean@example.com\"]\n }\n ]\n }\n\nFor a description of IAM and its features, see the\n[IAM developer's guide](https://cloud.google.com/iam/docs).", - "type": "object", - "properties": { - "etag": { - "type": "string", - "description": "`etag` is used for optimistic concurrency control as a way to help\nprevent simultaneous updates of a policy from overwriting each other.\nIt is strongly suggested that systems make use of the `etag` in the\nread-modify-write cycle to perform policy updates in order to avoid race\nconditions: An `etag` is returned in the response to `getIamPolicy`, and\nsystems are expected to put that etag in the request to `setIamPolicy` to\nensure that their change will be applied to the same version of the policy.\n\nIf no `etag` is provided in the call to `setIamPolicy`, then the existing\npolicy is overwritten blindly.", - "format": "byte" - }, - "version": { - "description": "Deprecated.", - "format": "int32", - "type": "integer" - }, - "bindings": { - "description": "Associates a list of `members` to a `role`.\n`bindings` with no members will result in an error.", - "type": "array", - "items": { - "$ref": "Binding" - } - } - }, - "id": "Policy" - }, - "SearchReadsRequest": { - "properties": { - "referenceName": { - "description": "The reference sequence name, for example `chr1`, `1`, or `chrX`. If set to\n`*`, only unmapped reads are returned. If unspecified, all reads (mapped\nand unmapped) are returned.", - "type": "string" - }, - "readGroupSetIds": { - "description": "The IDs of the read groups sets within which to search for reads. All\nspecified read group sets must be aligned against a common set of reference\nsequences; this defines the genomic coordinates for the query. Must specify\none of `readGroupSetIds` or `readGroupIds`.", - "type": "array", - "items": { - "type": "string" - } - }, - "readGroupIds": { - "type": "array", - "items": { - "type": "string" + "response": { + "$ref": "SearchReferenceSetsResponse" }, - "description": "The IDs of the read groups within which to search for reads. All specified\nread groups must belong to the same read group sets. Must specify one of\n`readGroupSetIds` or `readGroupIds`." - }, - "end": { - "type": "string", - "description": "The end position of the range on the reference, 0-based exclusive. If\nspecified, `referenceName` must also be specified.", - "format": "int64" - }, - "pageToken": { - "description": "The continuation token, which is used to page through large result sets.\nTo get the next page of results, set this parameter to the value of\n`nextPageToken` from the previous response.", - "type": "string" - }, - "pageSize": { - "description": "The maximum number of results to return in a single page. If unspecified,\ndefaults to 256. The maximum value is 2048.", - "format": "int32", - "type": "integer" - }, - "start": { - "description": "The start position of the range on the reference, 0-based inclusive. If\nspecified, `referenceName` must also be specified.", - "format": "int64", - "type": "string" + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/genomics", + "https://www.googleapis.com/auth/genomics.readonly" + ] } - }, - "id": "SearchReadsRequest", - "description": "The read search request.", - "type": "object" + } }, - "CancelOperationRequest": { - "description": "The request message for Operations.CancelOperation.", - "type": "object", - "properties": {}, - "id": "CancelOperationRequest" + "variants": { + "methods": { + "create": { + "description": "Creates a new variant.\n\nFor the definitions of variants and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)", + "flatPath": "v1/variants", + "httpMethod": "POST", + "id": "genomics.variants.create", + "parameterOrder": [], + "parameters": {}, + "path": "v1/variants", + "request": { + "$ref": "Variant" + }, + "response": { + "$ref": "Variant" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/genomics" + ] + }, + "delete": { + "description": "Deletes a variant.\n\nFor the definitions of variants and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)", + "flatPath": "v1/variants/{variantId}", + "httpMethod": "DELETE", + "id": "genomics.variants.delete", + "parameterOrder": [ + "variantId" + ], + "parameters": { + "variantId": { + "description": "The ID of the variant to be deleted.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/variants/{variantId}", + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/genomics" + ] + }, + "get": { + "description": "Gets a variant by ID.\n\nFor the definitions of variants and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)", + "flatPath": "v1/variants/{variantId}", + "httpMethod": "GET", + "id": "genomics.variants.get", + "parameterOrder": [ + "variantId" + ], + "parameters": { + "variantId": { + "description": "The ID of the variant.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/variants/{variantId}", + "response": { + "$ref": "Variant" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/genomics", + "https://www.googleapis.com/auth/genomics.readonly" + ] + }, + "import": { + "description": "Creates variant data by asynchronously importing the provided information.\n\nFor the definitions of variant sets and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)\n\nThe variants for import will be merged with any existing variant that\nmatches its reference sequence, start, end, reference bases, and\nalternative bases. If no such variant exists, a new one will be created.\n\nWhen variants are merged, the call information from the new variant\nis added to the existing variant, and Variant info fields are merged\nas specified in\ninfoMergeConfig.\nAs a special case, for single-sample VCF files, QUAL and FILTER fields will\nbe moved to the call level; these are sometimes interpreted in a\ncall-specific context.\nImported VCF headers are appended to the metadata already in a variant set.", + "flatPath": "v1/variants:import", + "httpMethod": "POST", + "id": "genomics.variants.import", + "parameterOrder": [], + "parameters": {}, + "path": "v1/variants:import", + "request": { + "$ref": "ImportVariantsRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/devstorage.read_write", + "https://www.googleapis.com/auth/genomics" + ] + }, + "merge": { + "description": "Merges the given variants with existing variants.\n\nFor the definitions of variants and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)\n\nEach variant will be\nmerged with an existing variant that matches its reference sequence,\nstart, end, reference bases, and alternative bases. If no such variant\nexists, a new one will be created.\n\nWhen variants are merged, the call information from the new variant\nis added to the existing variant. Variant info fields are merged as\nspecified in the\ninfoMergeConfig\nfield of the MergeVariantsRequest.\n\nPlease exercise caution when using this method! It is easy to introduce\nmistakes in existing variants and difficult to back out of them. For\nexample,\nsuppose you were trying to merge a new variant with an existing one and\nboth\nvariants contain calls that belong to callsets with the same callset ID.\n\n // Existing variant - irrelevant fields trimmed for clarity\n {\n \"variantSetId\": \"10473108253681171589\",\n \"referenceName\": \"1\",\n \"start\": \"10582\",\n \"referenceBases\": \"G\",\n \"alternateBases\": [\n \"A\"\n ],\n \"calls\": [\n {\n \"callSetId\": \"10473108253681171589-0\",\n \"callSetName\": \"CALLSET0\",\n \"genotype\": [\n 0,\n 1\n ],\n }\n ]\n }\n\n // New variant with conflicting call information\n {\n \"variantSetId\": \"10473108253681171589\",\n \"referenceName\": \"1\",\n \"start\": \"10582\",\n \"referenceBases\": \"G\",\n \"alternateBases\": [\n \"A\"\n ],\n \"calls\": [\n {\n \"callSetId\": \"10473108253681171589-0\",\n \"callSetName\": \"CALLSET0\",\n \"genotype\": [\n 1,\n 1\n ],\n }\n ]\n }\n\nThe resulting merged variant would overwrite the existing calls with those\nfrom the new variant:\n\n {\n \"variantSetId\": \"10473108253681171589\",\n \"referenceName\": \"1\",\n \"start\": \"10582\",\n \"referenceBases\": \"G\",\n \"alternateBases\": [\n \"A\"\n ],\n \"calls\": [\n {\n \"callSetId\": \"10473108253681171589-0\",\n \"callSetName\": \"CALLSET0\",\n \"genotype\": [\n 1,\n 1\n ],\n }\n ]\n }\n\nThis may be the desired outcome, but it is up to the user to determine if\nif that is indeed the case.", + "flatPath": "v1/variants:merge", + "httpMethod": "POST", + "id": "genomics.variants.merge", + "parameterOrder": [], + "parameters": {}, + "path": "v1/variants:merge", + "request": { + "$ref": "MergeVariantsRequest" + }, + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/genomics" + ] + }, + "patch": { + "description": "Updates a variant.\n\nFor the definitions of variants and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)\n\nThis method supports patch semantics. Returns the modified variant without\nits calls.", + "flatPath": "v1/variants/{variantId}", + "httpMethod": "PATCH", + "id": "genomics.variants.patch", + "parameterOrder": [ + "variantId" + ], + "parameters": { + "updateMask": { + "description": "An optional mask specifying which fields to update. At this time, mutable\nfields are names and\ninfo. Acceptable values are \"names\" and\n\"info\". If unspecified, all mutable fields will be updated.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + }, + "variantId": { + "description": "The ID of the variant to be updated.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/variants/{variantId}", + "request": { + "$ref": "Variant" + }, + "response": { + "$ref": "Variant" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/genomics" + ] + }, + "search": { + "description": "Gets a list of variants matching the criteria.\n\nFor the definitions of variants and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)\n\nImplements\n[GlobalAllianceApi.searchVariants](https://github.com/ga4gh/schemas/blob/v0.5.1/src/main/resources/avro/variantmethods.avdl#L126).", + "flatPath": "v1/variants/search", + "httpMethod": "POST", + "id": "genomics.variants.search", + "parameterOrder": [], + "parameters": {}, + "path": "v1/variants/search", + "request": { + "$ref": "SearchVariantsRequest" + }, + "response": { + "$ref": "SearchVariantsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/genomics", + "https://www.googleapis.com/auth/genomics.readonly" + ] + } + } }, + "variantsets": { + "methods": { + "create": { + "description": "Creates a new variant set.\n\nFor the definitions of variant sets and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)\n\nThe provided variant set must have a valid `datasetId` set - all other\nfields are optional. Note that the `id` field will be ignored, as this is\nassigned by the server.", + "flatPath": "v1/variantsets", + "httpMethod": "POST", + "id": "genomics.variantsets.create", + "parameterOrder": [], + "parameters": {}, + "path": "v1/variantsets", + "request": { + "$ref": "VariantSet" + }, + "response": { + "$ref": "VariantSet" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/genomics" + ] + }, + "delete": { + "description": "Deletes a variant set including all variants, call sets, and calls within.\nThis is not reversible.\n\nFor the definitions of variant sets and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)", + "flatPath": "v1/variantsets/{variantSetId}", + "httpMethod": "DELETE", + "id": "genomics.variantsets.delete", + "parameterOrder": [ + "variantSetId" + ], + "parameters": { + "variantSetId": { + "description": "The ID of the variant set to be deleted.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/variantsets/{variantSetId}", + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/genomics" + ] + }, + "export": { + "description": "Exports variant set data to an external destination.\n\nFor the definitions of variant sets and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)", + "flatPath": "v1/variantsets/{variantSetId}:export", + "httpMethod": "POST", + "id": "genomics.variantsets.export", + "parameterOrder": [ + "variantSetId" + ], + "parameters": { + "variantSetId": { + "description": "Required. The ID of the variant set that contains variant data which\nshould be exported. The caller must have READ access to this variant set.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/variantsets/{variantSetId}:export", + "request": { + "$ref": "ExportVariantSetRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/bigquery", + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/genomics" + ] + }, + "get": { + "description": "Gets a variant set by ID.\n\nFor the definitions of variant sets and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)", + "flatPath": "v1/variantsets/{variantSetId}", + "httpMethod": "GET", + "id": "genomics.variantsets.get", + "parameterOrder": [ + "variantSetId" + ], + "parameters": { + "variantSetId": { + "description": "Required. The ID of the variant set.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/variantsets/{variantSetId}", + "response": { + "$ref": "VariantSet" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/genomics", + "https://www.googleapis.com/auth/genomics.readonly" + ] + }, + "patch": { + "description": "Updates a variant set using patch semantics.\n\nFor the definitions of variant sets and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)", + "flatPath": "v1/variantsets/{variantSetId}", + "httpMethod": "PATCH", + "id": "genomics.variantsets.patch", + "parameterOrder": [ + "variantSetId" + ], + "parameters": { + "updateMask": { + "description": "An optional mask specifying which fields to update. Supported fields:\n\n* metadata.\n* name.\n* description.\n\nLeaving `updateMask` unset is equivalent to specifying all mutable\nfields.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + }, + "variantSetId": { + "description": "The ID of the variant to be updated (must already exist).", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/variantsets/{variantSetId}", + "request": { + "$ref": "VariantSet" + }, + "response": { + "$ref": "VariantSet" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/genomics" + ] + }, + "search": { + "description": "Returns a list of all variant sets matching search criteria.\n\nFor the definitions of variant sets and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)\n\nImplements\n[GlobalAllianceApi.searchVariantSets](https://github.com/ga4gh/schemas/blob/v0.5.1/src/main/resources/avro/variantmethods.avdl#L49).", + "flatPath": "v1/variantsets/search", + "httpMethod": "POST", + "id": "genomics.variantsets.search", + "parameterOrder": [], + "parameters": {}, + "path": "v1/variantsets/search", + "request": { + "$ref": "SearchVariantSetsRequest" + }, + "response": { + "$ref": "SearchVariantSetsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/genomics", + "https://www.googleapis.com/auth/genomics.readonly" + ] + } + } + } + }, + "revision": "20180225", + "rootUrl": "https://genomics.googleapis.com/", + "schemas": { "Annotation": { "description": "An annotation describes a region of reference genome. The value of an\nannotation may be one of several canonical types, supplemented by arbitrary\ninfo tags. An annotation is not inherently associated with a specific\nsample or individual (though a client could choose to use annotations in\nthis way). Example canonical annotation types are `GENE` and\n`VARIANT`.", - "type": "object", + "id": "Annotation", "properties": { - "transcript": { - "description": "A transcript value represents the assertion that a particular region of\nthe reference genome may be transcribed as RNA. An alternative splicing\npattern would be represented as a separate transcript object. This field\nis only set for annotations of type `TRANSCRIPT`.", - "$ref": "Transcript" + "annotationSetId": { + "description": "The annotation set to which this annotation belongs.", + "type": "string" + }, + "end": { + "description": "The end position of the range on the reference, 0-based exclusive.", + "format": "int64", + "type": "string" + }, + "id": { + "description": "The server-generated annotation ID, unique across all annotations.", + "type": "string" + }, + "info": { + "additionalProperties": { + "items": { + "type": "any" + }, + "type": "array" + }, + "description": "A map of additional read alignment information. This must be of the form\nmap\u003cstring, string[]\u003e (string key mapping to a list of string values).", + "type": "object" + }, + "name": { + "description": "The display name of this annotation.", + "type": "string" + }, + "referenceId": { + "description": "The ID of the Google Genomics reference associated with this range.", + "type": "string" + }, + "referenceName": { + "description": "The display name corresponding to the reference specified by\n`referenceId`, for example `chr1`, `1`, or `chrX`.", + "type": "string" + }, + "reverseStrand": { + "description": "Whether this range refers to the reverse strand, as opposed to the forward\nstrand. Note that regardless of this field, the start/end position of the\nrange always refer to the forward strand.", + "type": "boolean" }, "start": { "description": "The start position of the range on the reference, 0-based inclusive.", "format": "int64", "type": "string" }, - "annotationSetId": { - "description": "The annotation set to which this annotation belongs.", - "type": "string" - }, - "name": { - "description": "The display name of this annotation.", - "type": "string" - }, - "variant": { - "description": "A variant annotation, which describes the effect of a variant on the\ngenome, the coding sequence, and/or higher level consequences at the\norganism level e.g. pathogenicity. This field is only set for annotations\nof type `VARIANT`.", - "$ref": "VariantAnnotation" - }, - "id": { - "description": "The server-generated annotation ID, unique across all annotations.", - "type": "string" - }, - "referenceId": { - "type": "string", - "description": "The ID of the Google Genomics reference associated with this range." - }, - "reverseStrand": { - "description": "Whether this range refers to the reverse strand, as opposed to the forward\nstrand. Note that regardless of this field, the start/end position of the\nrange always refer to the forward strand.", - "type": "boolean" - }, - "referenceName": { - "description": "The display name corresponding to the reference specified by\n`referenceId`, for example `chr1`, `1`, or `chrX`.", - "type": "string" - }, - "info": { - "additionalProperties": { - "type": "array", - "items": { - "type": "any" - } - }, - "description": "A map of additional read alignment information. This must be of the form\nmap\u003cstring, string[]\u003e (string key mapping to a list of string values).", - "type": "object" + "transcript": { + "$ref": "Transcript", + "description": "A transcript value represents the assertion that a particular region of\nthe reference genome may be transcribed as RNA. An alternative splicing\npattern would be represented as a separate transcript object. This field\nis only set for annotations of type `TRANSCRIPT`." }, "type": { - "enumDescriptions": [ - "", - "A `GENERIC` annotation type should be used when no other annotation\ntype will suffice. This represents an untyped annotation of the reference\ngenome.", - "A `VARIANT` annotation type.", - "A `GENE` annotation type represents the existence of a gene at the\nassociated reference coordinates. The start coordinate is typically the\ngene's transcription start site and the end is typically the end of the\ngene's last exon.", - "A `TRANSCRIPT` annotation type represents the assertion that a\nparticular region of the reference genome may be transcribed as RNA." - ], + "description": "The data type for this annotation. Must match the containing annotation\nset's type.", "enum": [ "ANNOTATION_TYPE_UNSPECIFIED", "GENERIC", @@ -1981,1001 +1679,175 @@ "GENE", "TRANSCRIPT" ], - "description": "The data type for this annotation. Must match the containing annotation\nset's type.", + "enumDescriptions": [ + "", + "A `GENERIC` annotation type should be used when no other annotation\ntype will suffice. This represents an untyped annotation of the reference\ngenome.", + "A `VARIANT` annotation type.", + "A `GENE` annotation type represents the existence of a gene at the\nassociated reference coordinates. The start coordinate is typically the\ngene's transcription start site and the end is typically the end of the\ngene's last exon.", + "A `TRANSCRIPT` annotation type represents the assertion that a\nparticular region of the reference genome may be transcribed as RNA." + ], "type": "string" }, - "end": { - "description": "The end position of the range on the reference, 0-based exclusive.", - "format": "int64", - "type": "string" + "variant": { + "$ref": "VariantAnnotation", + "description": "A variant annotation, which describes the effect of a variant on the\ngenome, the coding sequence, and/or higher level consequences at the\norganism level e.g. pathogenicity. This field is only set for annotations\nof type `VARIANT`." } }, - "id": "Annotation" + "type": "object" }, - "Operation": { - "description": "This resource represents a long-running operation that is the result of a\nnetwork API call.", - "type": "object", + "AnnotationSet": { + "description": "An annotation set is a logical grouping of annotations that share consistent\ntype information and provenance. Examples of annotation sets include 'all\ngenes from refseq', and 'all variant annotations from ClinVar'.", + "id": "AnnotationSet", "properties": { - "response": { - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - }, - "description": "If importing ReadGroupSets, an ImportReadGroupSetsResponse is returned. If importing Variants, an ImportVariantsResponse is returned. For pipelines and exports, an Empty response is returned.", - "type": "object" - }, - "name": { - "description": "The server-assigned name, which is only unique within the same service that originally returns it. For example: `operations/CJHU7Oi_ChDrveSpBRjfuL-qzoWAgEw`", + "datasetId": { + "description": "The dataset to which this annotation set belongs.", "type": "string" }, - "error": { - "$ref": "Status", - "description": "The error result of the operation in case of failure or cancellation." - }, - "metadata": { - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - }, - "description": "An OperationMetadata object. This will always be returned with the Operation.", - "type": "object" - }, - "done": { - "description": "If the value is `false`, it means the operation is still in progress.\nIf `true`, the operation is completed, and either `error` or `response` is\navailable.", - "type": "boolean" - } - }, - "id": "Operation" - }, - "RuntimeMetadata": { - "description": "Runtime metadata that will be populated in the\nruntimeMetadata\nfield of the Operation associated with a RunPipeline execution.", - "type": "object", - "properties": { - "computeEngine": { - "description": "Execution information specific to Google Compute Engine.", - "$ref": "ComputeEngine" - } - }, - "id": "RuntimeMetadata" - }, - "ImportReadGroupSetsResponse": { - "description": "The read group set import response.", - "type": "object", - "properties": { - "readGroupSetIds": { - "description": "IDs of the read group sets that were created.", - "type": "array", - "items": { - "type": "string" - } - } - }, - "id": "ImportReadGroupSetsResponse" - }, - "VariantCall": { - "type": "object", - "properties": { - "phaseset": { - "description": "If this field is present, this variant call's genotype ordering implies\nthe phase of the bases and is consistent with any other variant calls in\nthe same reference sequence which have the same phaseset value.\nWhen importing data from VCF, if the genotype data was phased but no\nphase set was specified this field will be set to `*`.", + "id": { + "description": "The server-generated annotation set ID, unique across all annotation sets.", "type": "string" }, "info": { "additionalProperties": { - "type": "array", "items": { "type": "any" - } + }, + "type": "array" }, - "description": "A map of additional variant call information. This must be of the form\nmap\u003cstring, string[]\u003e (string key mapping to a list of string values).", + "description": "A map of additional read alignment information. This must be of the form\nmap\u003cstring, string[]\u003e (string key mapping to a list of string values).", "type": "object" }, - "callSetName": { - "description": "The name of the call set this variant call belongs to.", + "name": { + "description": "The display name for this annotation set.", "type": "string" }, - "genotypeLikelihood": { - "description": "The genotype likelihoods for this variant call. Each array entry\nrepresents how likely a specific genotype is for this call. The value\nordering is defined by the GL tag in the VCF spec.\nIf Phred-scaled genotype likelihood scores (PL) are available and\nlog10(P) genotype likelihood scores (GL) are not, PL scores are converted\nto GL scores. If both are available, PL scores are stored in `info`.", - "type": "array", - "items": { - "format": "double", - "type": "number" - } - }, - "callSetId": { - "description": "The ID of the call set this variant call belongs to.", + "referenceSetId": { + "description": "The ID of the reference set that defines the coordinate space for this\nset's annotations.", "type": "string" }, - "genotype": { - "description": "The genotype of this variant call. Each value represents either the value\nof the `referenceBases` field or a 1-based index into\n`alternateBases`. If a variant had a `referenceBases`\nvalue of `T` and an `alternateBases`\nvalue of `[\"A\", \"C\"]`, and the `genotype` was\n`[2, 1]`, that would mean the call\nrepresented the heterozygous value `CA` for this variant.\nIf the `genotype` was instead `[0, 1]`, the\nrepresented value would be `TA`. Ordering of the\ngenotype values is important if the `phaseset` is present.\nIf a genotype is not called (that is, a `.` is present in the\nGT string) -1 is returned.", - "type": "array", - "items": { - "format": "int32", - "type": "integer" - } + "sourceUri": { + "description": "The source URI describing the file from which this annotation set was\ngenerated, if any.", + "type": "string" + }, + "type": { + "description": "The type of annotations contained within this set.", + "enum": [ + "ANNOTATION_TYPE_UNSPECIFIED", + "GENERIC", + "VARIANT", + "GENE", + "TRANSCRIPT" + ], + "enumDescriptions": [ + "", + "A `GENERIC` annotation type should be used when no other annotation\ntype will suffice. This represents an untyped annotation of the reference\ngenome.", + "A `VARIANT` annotation type.", + "A `GENE` annotation type represents the existence of a gene at the\nassociated reference coordinates. The start coordinate is typically the\ngene's transcription start site and the end is typically the end of the\ngene's last exon.", + "A `TRANSCRIPT` annotation type represents the assertion that a\nparticular region of the reference genome may be transcribed as RNA." + ], + "type": "string" } }, - "id": "VariantCall", - "description": "A call represents the determination of genotype with respect to a particular\nvariant. It may include associated information such as quality and phasing.\nFor example, a call might assign a probability of 0.32 to the occurrence of\na SNP named rs1234 in a call set with the name NA12345." + "type": "object" }, - "SearchVariantsResponse": { - "description": "The variant search response.", - "type": "object", + "BatchCreateAnnotationsRequest": { + "id": "BatchCreateAnnotationsRequest", "properties": { - "nextPageToken": { - "description": "The continuation token, which is used to page through large result sets.\nProvide this value in a subsequent request to return the next page of\nresults. This field will be empty if there aren't any additional results.", - "type": "string" - }, - "variants": { - "description": "The list of matching Variants.", - "type": "array", + "annotations": { + "description": "The annotations to be created. At most 4096 can be specified in a single\nrequest.", "items": { - "$ref": "Variant" - } + "$ref": "Annotation" + }, + "type": "array" + }, + "requestId": { + "description": "A unique request ID which enables the server to detect duplicated requests.\nIf provided, duplicated requests will result in the same response; if not\nprovided, duplicated requests may result in duplicated data. For a given\nannotation set, callers should not reuse `request_id`s when writing\ndifferent batches of annotations - behavior in this case is undefined.\nA common approach is to use a UUID. For batch jobs where worker crashes are\na possibility, consider using some unique variant of a worker or run ID.", + "type": "string" } }, - "id": "SearchVariantsResponse" + "type": "object" }, - "ListBasesResponse": { - "id": "ListBasesResponse", - "type": "object", + "BatchCreateAnnotationsResponse": { + "id": "BatchCreateAnnotationsResponse", "properties": { - "sequence": { - "description": "A substring of the bases that make up this reference.", - "type": "string" - }, - "offset": { - "description": "The offset position (0-based) of the given `sequence` from the\nstart of this `Reference`. This value will differ for each page\nin a paginated request.", - "format": "int64", - "type": "string" - }, - "nextPageToken": { - "description": "The continuation token, which is used to page through large result sets.\nProvide this value in a subsequent request to return the next page of\nresults. This field will be empty if there aren't any additional results.", - "type": "string" - } - } - }, - "Status": { - "description": "The `Status` type defines a logical error model that is suitable for different\nprogramming environments, including REST APIs and RPC APIs. It is used by\n[gRPC](https://github.com/grpc). The error model is designed to be:\n\n- Simple to use and understand for most users\n- Flexible enough to meet unexpected needs\n\n# Overview\n\nThe `Status` message contains three pieces of data: error code, error message,\nand error details. The error code should be an enum value of\ngoogle.rpc.Code, but it may accept additional error codes if needed. The\nerror message should be a developer-facing English message that helps\ndevelopers *understand* and *resolve* the error. If a localized user-facing\nerror message is needed, put the localized message in the error details or\nlocalize it in the client. The optional error details may contain arbitrary\ninformation about the error. There is a predefined set of error detail types\nin the package `google.rpc` that can be used for common error conditions.\n\n# Language mapping\n\nThe `Status` message is the logical representation of the error model, but it\nis not necessarily the actual wire format. When the `Status` message is\nexposed in different client libraries and different wire protocols, it can be\nmapped differently. For example, it will likely be mapped to some exceptions\nin Java, but more likely mapped to some error codes in C.\n\n# Other uses\n\nThe error model and the `Status` message can be used in a variety of\nenvironments, either with or without APIs, to provide a\nconsistent developer experience across different environments.\n\nExample uses of this error model include:\n\n- Partial errors. If a service needs to return partial errors to the client,\n it may embed the `Status` in the normal response to indicate the partial\n errors.\n\n- Workflow errors. A typical workflow has multiple steps. Each step may\n have a `Status` message for error reporting.\n\n- Batch operations. If a client uses batch request and batch response, the\n `Status` message should be used directly inside batch response, one for\n each error sub-response.\n\n- Asynchronous operations. If an API call embeds asynchronous operation\n results in its response, the status of those operations should be\n represented directly using the `Status` message.\n\n- Logging. If some API errors are stored in logs, the message `Status` could\n be used directly after any stripping needed for security/privacy reasons.", - "type": "object", - "properties": { - "message": { - "type": "string", - "description": "A developer-facing error message, which should be in English. Any\nuser-facing error message should be localized and sent in the\ngoogle.rpc.Status.details field, or localized by the client." - }, - "details": { - "description": "A list of messages that carry the error details. There is a common set of\nmessage types for APIs to use.", - "type": "array", + "entries": { + "description": "The resulting per-annotation entries, ordered consistently with the\noriginal request.", "items": { - "type": "object", - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - } - } - }, - "code": { - "type": "integer", - "description": "The status code, which should be an enum value of google.rpc.Code.", - "format": "int32" + "$ref": "Entry" + }, + "type": "array" } }, - "id": "Status" + "type": "object" }, "Binding": { + "description": "Associates `members` with a `role`.", + "id": "Binding", "properties": { "members": { "description": "Specifies the identities requesting access for a Cloud Platform resource.\n`members` can have the following values:\n\n* `allUsers`: A special identifier that represents anyone who is\n on the internet; with or without a Google account.\n\n* `allAuthenticatedUsers`: A special identifier that represents anyone\n who is authenticated with a Google account or a service account.\n\n* `user:{emailid}`: An email address that represents a specific Google\n account. For example, `alice@gmail.com` or `joe@example.com`.\n\n\n* `serviceAccount:{emailid}`: An email address that represents a service\n account. For example, `my-other-app@appspot.gserviceaccount.com`.\n\n* `group:{emailid}`: An email address that represents a Google group.\n For example, `admins@example.com`.\n\n\n* `domain:{domain}`: A Google Apps domain name that represents all the\n users of that domain. For example, `google.com` or `example.com`.\n\n", - "type": "array", "items": { "type": "string" - } + }, + "type": "array" }, "role": { "description": "Role that is assigned to `members`.\nFor example, `roles/viewer`, `roles/editor`, or `roles/owner`.\nRequired", "type": "string" } }, - "id": "Binding", - "description": "Associates `members` with a `role`.", "type": "object" }, - "UndeleteDatasetRequest": { - "type": "object", - "properties": {}, - "id": "UndeleteDatasetRequest" - }, - "Range": { - "description": "A 0-based half-open genomic coordinate range for search requests.", - "type": "object", + "CallSet": { + "description": "A call set is a collection of variant calls, typically for one sample. It\nbelongs to a variant set.\n\nFor more genomics resource definitions, see [Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)", + "id": "CallSet", "properties": { - "start": { - "description": "The start position of the range on the reference, 0-based inclusive.", - "format": "int64", - "type": "string" - }, - "end": { - "description": "The end position of the range on the reference, 0-based exclusive.", - "format": "int64", - "type": "string" - }, - "referenceName": { - "description": "The reference sequence name, for example `chr1`,\n`1`, or `chrX`.", - "type": "string" - } - }, - "id": "Range" - }, - "VariantSet": { - "id": "VariantSet", - "description": "A variant set is a collection of call sets and variants. It contains summary\nstatistics of those contents. A variant set belongs to a dataset.\n\nFor more genomics resource definitions, see [Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)", - "type": "object", - "properties": { - "description": { - "description": "A textual description of this variant set.", - "type": "string" - }, - "datasetId": { - "description": "The dataset to which this variant set belongs.", - "type": "string" - }, - "name": { - "description": "User-specified, mutable name.", - "type": "string" - }, - "referenceSetId": { - "description": "The reference set to which the variant set is mapped. The reference set\ndescribes the alignment provenance of the variant set, while the\n`referenceBounds` describe the shape of the actual variant data. The\nreference set's reference names are a superset of those found in the\n`referenceBounds`.\n\nFor example, given a variant set that is mapped to the GRCh38 reference set\nand contains a single variant on reference 'X', `referenceBounds` would\ncontain only an entry for 'X', while the associated reference set\nenumerates all possible references: '1', '2', 'X', 'Y', 'MT', etc.", - "type": "string" - }, - "metadata": { - "description": "The metadata associated with this variant set.", - "type": "array", - "items": { - "$ref": "VariantSetMetadata" - } - }, - "referenceBounds": { - "description": "A list of all references used by the variants in a variant set\nwith associated coordinate upper bounds for each one.", - "type": "array", - "items": { - "$ref": "ReferenceBound" - } - }, - "id": { - "description": "The server-generated variant set ID, unique across all variant sets.", - "type": "string" - } - } - }, - "ReferenceBound": { - "description": "ReferenceBound records an upper bound for the starting coordinate of\nvariants in a particular reference.", - "type": "object", - "properties": { - "upperBound": { - "type": "string", - "description": "An upper bound (inclusive) on the starting coordinate of any\nvariant in the reference sequence.", - "format": "int64" - }, - "referenceName": { - "description": "The name of the reference associated with this reference bound.", - "type": "string" - } - }, - "id": "ReferenceBound" - }, - "BatchCreateAnnotationsResponse": { - "type": "object", - "properties": { - "entries": { - "description": "The resulting per-annotation entries, ordered consistently with the\noriginal request.", - "type": "array", - "items": { - "$ref": "Entry" - } - } - }, - "id": "BatchCreateAnnotationsResponse" - }, - "SearchCallSetsResponse": { - "description": "The call set search response.", - "type": "object", - "properties": { - "nextPageToken": { - "description": "The continuation token, which is used to page through large result sets.\nProvide this value in a subsequent request to return the next page of\nresults. This field will be empty if there aren't any additional results.", - "type": "string" - }, - "callSets": { - "description": "The list of matching call sets.", - "type": "array", - "items": { - "$ref": "CallSet" - } - } - }, - "id": "SearchCallSetsResponse" - }, - "Variant": { - "description": "A variant represents a change in DNA sequence relative to a reference\nsequence. For example, a variant could represent a SNP or an insertion.\nVariants belong to a variant set.\n\nFor more genomics resource definitions, see [Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)\n\nEach of the calls on a variant represent a determination of genotype with\nrespect to that variant. For example, a call might assign probability of 0.32\nto the occurrence of a SNP named rs1234 in a sample named NA12345. A call\nbelongs to a call set, which contains related calls typically from one\nsample.", - "type": "object", - "properties": { - "calls": { - "description": "The variant calls for this particular variant. Each one represents the\ndetermination of genotype with respect to this variant.", - "type": "array", - "items": { - "$ref": "VariantCall" - } - }, "created": { - "description": "The date this variant was created, in milliseconds from the epoch.", + "description": "The date this call set was created in milliseconds from the epoch.", "format": "int64", "type": "string" }, - "start": { - "description": "The position at which this variant occurs (0-based).\nThis corresponds to the first base of the string of reference bases.", - "format": "int64", - "type": "string" - }, - "quality": { - "description": "A measure of how likely this variant is to be real.\nA higher value is better.", - "format": "double", - "type": "number" - }, "id": { - "description": "The server-generated variant ID, unique across all variants.", - "type": "string" - }, - "variantSetId": { - "description": "The ID of the variant set this variant belongs to.", - "type": "string" - }, - "referenceName": { - "description": "The reference on which this variant occurs.\n(such as `chr20` or `X`)", + "description": "The server-generated call set ID, unique across all call sets.", "type": "string" }, "info": { - "description": "A map of additional variant information. This must be of the form\nmap\u003cstring, string[]\u003e (string key mapping to a list of string values).", - "type": "object", "additionalProperties": { - "type": "array", "items": { "type": "any" - } - } - }, - "referenceBases": { - "description": "The reference bases for this variant. They start at the given\nposition.", - "type": "string" - }, - "names": { - "description": "Names for the variant, for example a RefSNP ID.", - "type": "array", - "items": { - "type": "string" - } - }, - "alternateBases": { - "description": "The bases that appear instead of the reference bases.", - "type": "array", - "items": { - "type": "string" - } - }, - "end": { - "description": "The end position (0-based) of this variant. This corresponds to the first\nbase after the last base in the reference allele. So, the length of\nthe reference allele is (end - start). This is useful for variants\nthat don't explicitly give alternate bases, for example large deletions.", - "format": "int64", - "type": "string" - }, - "filter": { - "description": "A list of filters (normally quality filters) this variant has failed.\n`PASS` indicates this variant has passed all filters.", - "type": "array", - "items": { - "type": "string" - } - } - }, - "id": "Variant" - }, - "ListOperationsResponse": { - "description": "The response message for Operations.ListOperations.", - "type": "object", - "properties": { - "nextPageToken": { - "description": "The standard List next-page token.", - "type": "string" - }, - "operations": { - "description": "A list of operations that matches the specified filter in the request.", - "type": "array", - "items": { - "$ref": "Operation" - } - } - }, - "id": "ListOperationsResponse" - }, - "OperationMetadata": { - "description": "Metadata describing an Operation.", - "type": "object", - "properties": { - "events": { - "description": "Optional event messages that were generated during the job's execution.\nThis also contains any warnings that were generated during import\nor export.", - "type": "array", - "items": { - "$ref": "OperationEvent" - } - }, - "endTime": { - "description": "The time at which the job stopped running.", - "format": "google-datetime", - "type": "string" - }, - "startTime": { - "description": "The time at which the job began to run.", - "format": "google-datetime", - "type": "string" - }, - "request": { - "description": "The original request that started the operation. Note that this will be in\ncurrent version of the API. If the operation was started with v1beta2 API\nand a GetOperation is performed on v1 API, a v1 request will be returned.", - "type": "object", - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - } - }, - "runtimeMetadata": { - "description": "Runtime metadata on this Operation.", - "type": "object", - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - } - }, - "createTime": { - "description": "The time at which the job was submitted to the Genomics service.", - "format": "google-datetime", - "type": "string" - }, - "labels": { - "additionalProperties": { - "type": "string" + }, + "type": "array" }, - "description": "Optionally provided by the caller when submitting the request that creates\nthe operation.", + "description": "A map of additional call set information. This must be of the form\nmap\u003cstring, string[]\u003e (string key mapping to a list of string values).", "type": "object" }, - "projectId": { - "description": "The Google Cloud Project in which the job is scoped.", + "name": { + "description": "The call set name.", + "type": "string" + }, + "sampleId": { + "description": "The sample ID this call set corresponds to.", "type": "string" }, - "clientId": { - "type": "string", - "description": "This field is deprecated. Use `labels` instead. Optionally provided by the\ncaller when submitting the request that creates the operation." - } - }, - "id": "OperationMetadata" - }, - "SearchVariantsRequest": { - "description": "The variant search request.", - "type": "object", - "properties": { "variantSetIds": { - "type": "array", + "description": "The IDs of the variant sets this call set belongs to. This field must\nhave exactly length one, as a call set belongs to a single variant set.\nThis field is repeated for compatibility with the\n[GA4GH 0.5.1\nAPI](https://github.com/ga4gh/schemas/blob/v0.5.1/src/main/resources/avro/variants.avdl#L76).", "items": { "type": "string" }, - "description": "At most one variant set ID must be provided. Only variants from this\nvariant set will be returned. If omitted, a call set id must be included in\nthe request." - }, - "end": { - "description": "The end of the window, 0-based exclusive. If unspecified or 0, defaults to\nthe length of the reference.", - "format": "int64", - "type": "string" - }, - "maxCalls": { - "description": "The maximum number of calls to return in a single page. Note that this\nlimit may be exceeded in the event that a matching variant contains more\ncalls than the requested maximum. If unspecified, defaults to 5000. The\nmaximum value is 10000.", - "format": "int32", - "type": "integer" - }, - "pageToken": { - "description": "The continuation token, which is used to page through large result sets.\nTo get the next page of results, set this parameter to the value of\n`nextPageToken` from the previous response.", - "type": "string" - }, - "pageSize": { - "description": "The maximum number of variants to return in a single page. If unspecified,\ndefaults to 5000. The maximum value is 10000.", - "format": "int32", - "type": "integer" - }, - "callSetIds": { - "description": "Only return variant calls which belong to call sets with these ids.\nLeaving this blank returns all variant calls. If a variant has no\ncalls belonging to any of these call sets, it won't be returned at all.", - "type": "array", - "items": { - "type": "string" - } - }, - "start": { - "description": "The beginning of the window (0-based, inclusive) for which\noverlapping variants should be returned. If unspecified, defaults to 0.", - "format": "int64", - "type": "string" - }, - "variantName": { - "type": "string", - "description": "Only return variants which have exactly this name." - }, - "referenceName": { - "description": "Required. Only return variants in this reference sequence.", - "type": "string" + "type": "array" } }, - "id": "SearchVariantsRequest" - }, - "SearchReadGroupSetsRequest": { - "description": "The read group set search request.", - "type": "object", - "properties": { - "name": { - "description": "Only return read group sets for which a substring of the name matches this\nstring.", - "type": "string" - }, - "pageToken": { - "description": "The continuation token, which is used to page through large result sets.\nTo get the next page of results, set this parameter to the value of\n`nextPageToken` from the previous response.", - "type": "string" - }, - "pageSize": { - "description": "The maximum number of results to return in a single page. If unspecified,\ndefaults to 256. The maximum value is 1024.", - "format": "int32", - "type": "integer" - }, - "datasetIds": { - "description": "Restricts this query to read group sets within the given datasets. At least\none ID must be provided.", - "type": "array", - "items": { - "type": "string" - } - } - }, - "id": "SearchReadGroupSetsRequest" - }, - "SearchAnnotationsResponse": { - "type": "object", - "properties": { - "nextPageToken": { - "description": "The continuation token, which is used to page through large result sets.\nProvide this value in a subsequent request to return the next page of\nresults. This field will be empty if there aren't any additional results.", - "type": "string" - }, - "annotations": { - "description": "The matching annotations.", - "type": "array", - "items": { - "$ref": "Annotation" - } - } - }, - "id": "SearchAnnotationsResponse" - }, - "ClinicalCondition": { - "type": "object", - "properties": { - "omimId": { - "description": "The OMIM id for this condition.\nSearch for these IDs at http://omim.org/", - "type": "string" - }, - "externalIds": { - "description": "The set of external IDs for this condition.", - "type": "array", - "items": { - "$ref": "ExternalId" - } - }, - "conceptId": { - "description": "The MedGen concept id associated with this gene.\nSearch for these IDs at http://www.ncbi.nlm.nih.gov/medgen/", - "type": "string" - }, - "names": { - "description": "A set of names for the condition.", - "type": "array", - "items": { - "type": "string" - } - } - }, - "id": "ClinicalCondition" - }, - "SearchReadsResponse": { - "description": "The read search response.", - "type": "object", - "properties": { - "nextPageToken": { - "description": "The continuation token, which is used to page through large result sets.\nProvide this value in a subsequent request to return the next page of\nresults. This field will be empty if there aren't any additional results.", - "type": "string" - }, - "alignments": { - "description": "The list of matching alignments sorted by mapped genomic coordinate,\nif any, ascending in position within the same reference. Unmapped reads,\nwhich have no position, are returned contiguously and are sorted in\nascending lexicographic order by fragment name.", - "type": "array", - "items": { - "$ref": "Read" - } - } - }, - "id": "SearchReadsResponse" - }, - "Program": { - "type": "object", - "properties": { - "name": { - "description": "The display name of the program. This is typically the colloquial name of\nthe tool used, for example 'bwa' or 'picard'.", - "type": "string" - }, - "commandLine": { - "description": "The command line used to run this program.", - "type": "string" - }, - "prevProgramId": { - "description": "The ID of the program run before this one.", - "type": "string" - }, - "id": { - "description": "The user specified locally unique ID of the program. Used along with\n`prevProgramId` to define an ordering between programs.", - "type": "string" - }, - "version": { - "description": "The version of the program run.", - "type": "string" - } - }, - "id": "Program" - }, - "ComputeEngine": { - "description": "Describes a Compute Engine resource that is being managed by a running\npipeline.", - "type": "object", - "properties": { - "machineType": { - "description": "The machine type of the instance.", - "type": "string" - }, - "diskNames": { - "description": "The names of the disks that were created for this pipeline.", - "type": "array", - "items": { - "type": "string" - } - }, - "instanceName": { - "description": "The instance on which the operation is running.", - "type": "string" - }, - "zone": { - "description": "The availability zone in which the instance resides.", - "type": "string" - } - }, - "id": "ComputeEngine" - }, - "CoverageBucket": { - "description": "A bucket over which read coverage has been precomputed. A bucket corresponds\nto a specific range of the reference sequence.", - "type": "object", - "properties": { - "meanCoverage": { - "description": "The average number of reads which are aligned to each individual\nreference base in this bucket.", - "format": "float", - "type": "number" - }, - "range": { - "description": "The genomic coordinate range spanned by this bucket.", - "$ref": "Range" - } - }, - "id": "CoverageBucket" - }, - "ExternalId": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "The id used by the source of this data." - }, - "sourceName": { - "description": "The name of the source of this data.", - "type": "string" - } - }, - "id": "ExternalId" - }, - "SearchVariantSetsRequest": { - "type": "object", - "properties": { - "pageSize": { - "description": "The maximum number of results to return in a single page. If unspecified,\ndefaults to 1024.", - "format": "int32", - "type": "integer" - }, - "datasetIds": { - "type": "array", - "items": { - "type": "string" - }, - "description": "Exactly one dataset ID must be provided here. Only variant sets which\nbelong to this dataset will be returned." - }, - "pageToken": { - "description": "The continuation token, which is used to page through large result sets.\nTo get the next page of results, set this parameter to the value of\n`nextPageToken` from the previous response.", - "type": "string" - } - }, - "id": "SearchVariantSetsRequest", - "description": "The search variant sets request." - }, - "VariantSetMetadata": { - "properties": { - "key": { - "type": "string", - "description": "The top-level key." - }, - "description": { - "description": "A textual description of this metadata.", - "type": "string" - }, - "info": { - "additionalProperties": { - "type": "array", - "items": { - "type": "any" - } - }, - "description": "Remaining structured metadata key-value pairs. This must be of the form\nmap\u003cstring, string[]\u003e (string key mapping to a list of string values).", - "type": "object" - }, - "type": { - "enum": [ - "TYPE_UNSPECIFIED", - "INTEGER", - "FLOAT", - "FLAG", - "CHARACTER", - "STRING" - ], - "description": "The type of data. Possible types include: Integer, Float,\nFlag, Character, and String.", - "type": "string", - "enumDescriptions": [ - "", - "", - "", - "", - "", - "" - ] - }, - "value": { - "description": "The value field for simple metadata", - "type": "string" - }, - "id": { - "description": "User-provided ID field, not enforced by this API.\nTwo or more pieces of structured metadata with identical\nid and key fields are considered equivalent.", - "type": "string" - }, - "number": { - "description": "The number of values that can be included in a field described by this\nmetadata.", - "type": "string" - } - }, - "id": "VariantSetMetadata", - "description": "Metadata describes a single piece of variant call metadata.\nThese data include a top level key and either a single value string (value)\nor a list of key-value pairs (info.)\nValue and info are mutually exclusive.", "type": "object" }, - "Reference": { - "description": "A reference is a canonical assembled DNA sequence, intended to act as a\nreference coordinate space for other genomic annotations. A single reference\nmight represent the human chromosome 1 or mitochandrial DNA, for instance. A\nreference belongs to one or more reference sets.\n\nFor more genomics resource definitions, see [Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)", - "type": "object", - "properties": { - "name": { - "description": "The name of this reference, for example `22`.", - "type": "string" - }, - "md5checksum": { - "description": "MD5 of the upper-case sequence excluding all whitespace characters (this\nis equivalent to SQ:M5 in SAM). This value is represented in lower case\nhexadecimal format.", - "type": "string" - }, - "id": { - "description": "The server-generated reference ID, unique across all references.", - "type": "string" - }, - "length": { - "description": "The length of this reference's sequence.", - "format": "int64", - "type": "string" - }, - "sourceAccessions": { - "type": "array", - "items": { - "type": "string" - }, - "description": "All known corresponding accession IDs in INSDC (GenBank/ENA/DDBJ) ideally\nwith a version number, for example `GCF_000001405.26`." - }, - "sourceUri": { - "description": "The URI from which the sequence was obtained. Typically specifies a FASTA\nformat file.", - "type": "string" - }, - "ncbiTaxonId": { - "description": "ID from http://www.ncbi.nlm.nih.gov/taxonomy. For example, 9606 for human.", - "format": "int32", - "type": "integer" - } - }, - "id": "Reference" - }, - "SearchReferenceSetsRequest": { - "id": "SearchReferenceSetsRequest", - "type": "object", - "properties": { - "accessions": { - "description": "If present, return reference sets for which a prefix of any of\nsourceAccessions\nmatch any of these strings. Accession numbers typically have a main number\nand a version, for example `NC_000001.11`.", - "type": "array", - "items": { - "type": "string" - } - }, - "pageToken": { - "description": "The continuation token, which is used to page through large result sets.\nTo get the next page of results, set this parameter to the value of\n`nextPageToken` from the previous response.", - "type": "string" - }, - "pageSize": { - "description": "The maximum number of results to return in a single page. If unspecified,\ndefaults to 1024. The maximum value is 4096.", - "format": "int32", - "type": "integer" - }, - "assemblyId": { - "description": "If present, return reference sets for which a substring of their\n`assemblyId` matches this string (case insensitive).", - "type": "string" - }, - "md5checksums": { - "description": "If present, return reference sets for which the\nmd5checksum matches exactly.", - "type": "array", - "items": { - "type": "string" - } - } - } - }, - "SetIamPolicyRequest": { - "description": "Request message for `SetIamPolicy` method.", - "type": "object", - "properties": { - "policy": { - "description": "REQUIRED: The complete policy to be applied to the `resource`. The size of\nthe policy is limited to a few 10s of KB. An empty policy is a\nvalid policy but certain Cloud Platform services (such as Projects)\nmight reject them.", - "$ref": "Policy" - } - }, - "id": "SetIamPolicyRequest" - }, - "MergeVariantsRequest": { - "type": "object", - "properties": { - "variants": { - "description": "The variants to be merged with existing variants.", - "type": "array", - "items": { - "$ref": "Variant" - } - }, - "infoMergeConfig": { - "additionalProperties": { - "type": "string", - "enum": [ - "INFO_MERGE_OPERATION_UNSPECIFIED", - "IGNORE_NEW", - "MOVE_TO_CALLS" - ] - }, - "description": "A mapping between info field keys and the InfoMergeOperations to\nbe performed on them.", - "type": "object" - }, - "variantSetId": { - "description": "The destination variant set.", - "type": "string" - } - }, - "id": "MergeVariantsRequest" - }, - "Read": { - "description": "A read alignment describes a linear alignment of a string of DNA to a\nreference sequence, in addition to metadata\nabout the fragment (the molecule of DNA sequenced) and the read (the bases\nwhich were read by the sequencer). A read is equivalent to a line in a SAM\nfile. A read belongs to exactly one read group and exactly one\nread group set.\n\nFor more genomics resource definitions, see [Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)\n\n### Reverse-stranded reads\n\nMapped reads (reads having a non-null `alignment`) can be aligned to either\nthe forward or the reverse strand of their associated reference. Strandedness\nof a mapped read is encoded by `alignment.position.reverseStrand`.\n\nIf we consider the reference to be a forward-stranded coordinate space of\n`[0, reference.length)` with `0` as the left-most position and\n`reference.length` as the right-most position, reads are always aligned left\nto right. That is, `alignment.position.position` always refers to the\nleft-most reference coordinate and `alignment.cigar` describes the alignment\nof this read to the reference from left to right. All per-base fields such as\n`alignedSequence` and `alignedQuality` share this same left-to-right\norientation; this is true of reads which are aligned to either strand. For\nreverse-stranded reads, this means that `alignedSequence` is the reverse\ncomplement of the bases that were originally reported by the sequencing\nmachine.\n\n### Generating a reference-aligned sequence string\n\nWhen interacting with mapped reads, it's often useful to produce a string\nrepresenting the local alignment of the read to reference. The following\npseudocode demonstrates one way of doing this:\n\n out = \"\"\n offset = 0\n for c in read.alignment.cigar {\n switch c.operation {\n case \"ALIGNMENT_MATCH\", \"SEQUENCE_MATCH\", \"SEQUENCE_MISMATCH\":\n out += read.alignedSequence[offset:offset+c.operationLength]\n offset += c.operationLength\n break\n case \"CLIP_SOFT\", \"INSERT\":\n offset += c.operationLength\n break\n case \"PAD\":\n out += repeat(\"*\", c.operationLength)\n break\n case \"DELETE\":\n out += repeat(\"-\", c.operationLength)\n break\n case \"SKIP\":\n out += repeat(\" \", c.operationLength)\n break\n case \"CLIP_HARD\":\n break\n }\n }\n return out\n\n### Converting to SAM's CIGAR string\n\nThe following pseudocode generates a SAM CIGAR string from the\n`cigar` field. Note that this is a lossy conversion\n(`cigar.referenceSequence` is lost).\n\n cigarMap = {\n \"ALIGNMENT_MATCH\": \"M\",\n \"INSERT\": \"I\",\n \"DELETE\": \"D\",\n \"SKIP\": \"N\",\n \"CLIP_SOFT\": \"S\",\n \"CLIP_HARD\": \"H\",\n \"PAD\": \"P\",\n \"SEQUENCE_MATCH\": \"=\",\n \"SEQUENCE_MISMATCH\": \"X\",\n }\n cigarStr = \"\"\n for c in read.alignment.cigar {\n cigarStr += c.operationLength + cigarMap[c.operation]\n }\n return cigarStr", - "type": "object", - "properties": { - "readGroupSetId": { - "description": "The ID of the read group set this read belongs to. A read belongs to\nexactly one read group set.", - "type": "string" - }, - "duplicateFragment": { - "description": "The fragment is a PCR or optical duplicate (SAM flag 0x400).", - "type": "boolean" - }, - "readNumber": { - "description": "The read number in sequencing. 0-based and less than numberReads. This\nfield replaces SAM flag 0x40 and 0x80.", - "format": "int32", - "type": "integer" - }, - "readGroupId": { - "description": "The ID of the read group this read belongs to. A read belongs to exactly\none read group. This is a server-generated ID which is distinct from SAM's\nRG tag (for that value, see\nReadGroup.name).", - "type": "string" - }, - "alignedSequence": { - "description": "The bases of the read sequence contained in this alignment record,\n**without CIGAR operations applied** (equivalent to SEQ in SAM).\n`alignedSequence` and `alignedQuality` may be\nshorter than the full read sequence and quality. This will occur if the\nalignment is part of a chimeric alignment, or if the read was trimmed. When\nthis occurs, the CIGAR for this read will begin/end with a hard clip\noperator that will indicate the length of the excised sequence.", - "type": "string" - }, - "info": { - "additionalProperties": { - "type": "array", - "items": { - "type": "any" - } - }, - "description": "A map of additional read alignment information. This must be of the form\nmap\u003cstring, string[]\u003e (string key mapping to a list of string values).", - "type": "object" - }, - "nextMatePosition": { - "$ref": "Position", - "description": "The mapping of the primary alignment of the\n`(readNumber+1)%numberReads` read in the fragment. It replaces\nmate position and mate strand in SAM." - }, - "supplementaryAlignment": { - "description": "Whether this alignment is supplementary. Equivalent to SAM flag 0x800.\nSupplementary alignments are used in the representation of a chimeric\nalignment. In a chimeric alignment, a read is split into multiple\nlinear alignments that map to different reference contigs. The first\nlinear alignment in the read will be designated as the representative\nalignment; the remaining linear alignments will be designated as\nsupplementary alignments. These alignments may have different mapping\nquality scores. In each linear alignment in a chimeric alignment, the read\nwill be hard clipped. The `alignedSequence` and\n`alignedQuality` fields in the alignment record will only\nrepresent the bases for its respective linear alignment.", - "type": "boolean" - }, - "properPlacement": { - "description": "The orientation and the distance between reads from the fragment are\nconsistent with the sequencing protocol (SAM flag 0x2).", - "type": "boolean" - }, - "fragmentLength": { - "description": "The observed length of the fragment, equivalent to TLEN in SAM.", - "format": "int32", - "type": "integer" - }, - "failedVendorQualityChecks": { - "description": "Whether this read did not pass filters, such as platform or vendor quality\ncontrols (SAM flag 0x200).", - "type": "boolean" - }, - "alignedQuality": { - "type": "array", - "items": { - "format": "int32", - "type": "integer" - }, - "description": "The quality of the read sequence contained in this alignment record\n(equivalent to QUAL in SAM).\n`alignedSequence` and `alignedQuality` may be shorter than the full read\nsequence and quality. This will occur if the alignment is part of a\nchimeric alignment, or if the read was trimmed. When this occurs, the CIGAR\nfor this read will begin/end with a hard clip operator that will indicate\nthe length of the excised sequence." - }, - "alignment": { - "description": "The linear alignment for this alignment record. This field is null for\nunmapped reads.", - "$ref": "LinearAlignment" - }, - "numberReads": { - "description": "The number of reads in the fragment (extension to SAM flag 0x1).", - "format": "int32", - "type": "integer" - }, - "id": { - "type": "string", - "description": "The server-generated read ID, unique across all reads. This is different\nfrom the `fragmentName`." - }, - "secondaryAlignment": { - "description": "Whether this alignment is secondary. Equivalent to SAM flag 0x100.\nA secondary alignment represents an alternative to the primary alignment\nfor this read. Aligners may return secondary alignments if a read can map\nambiguously to multiple coordinates in the genome. By convention, each read\nhas one and only one alignment where both `secondaryAlignment`\nand `supplementaryAlignment` are false.", - "type": "boolean" - }, - "fragmentName": { - "description": "The fragment name. Equivalent to QNAME (query template name) in SAM.", - "type": "string" - } - }, - "id": "Read" - }, - "BatchCreateAnnotationsRequest": { - "type": "object", - "properties": { - "requestId": { - "description": "A unique request ID which enables the server to detect duplicated requests.\nIf provided, duplicated requests will result in the same response; if not\nprovided, duplicated requests may result in duplicated data. For a given\nannotation set, callers should not reuse `request_id`s when writing\ndifferent batches of annotations - behavior in this case is undefined.\nA common approach is to use a UUID. For batch jobs where worker crashes are\na possibility, consider using some unique variant of a worker or run ID.", - "type": "string" - }, - "annotations": { - "description": "The annotations to be created. At most 4096 can be specified in a single\nrequest.", - "type": "array", - "items": { - "$ref": "Annotation" - } - } - }, - "id": "BatchCreateAnnotationsRequest" + "CancelOperationRequest": { + "description": "The request message for Operations.CancelOperation.", + "id": "CancelOperationRequest", + "properties": {}, + "type": "object" }, "CigarUnit": { + "description": "A single CIGAR operation.", + "id": "CigarUnit", "properties": { "operation": { "enum": [ @@ -2990,7 +1862,6 @@ "SEQUENCE_MATCH", "SEQUENCE_MISMATCH" ], - "type": "string", "enumDescriptions": [ "", "An alignment match indicates that a sequence can be aligned to the\nreference without evidence of an INDEL. Unlike the\n`SEQUENCE_MATCH` and `SEQUENCE_MISMATCH` operators,\nthe `ALIGNMENT_MATCH` operator does not indicate whether the\nreference and read sequences are an exact match. This operator is\nequivalent to SAM's `M`.", @@ -3002,223 +1873,236 @@ "The pad operator indicates that there is padding in an alignment. This\noperator is equivalent to SAM's `P`.", "This operator indicates that this portion of the aligned sequence exactly\nmatches the reference. This operator is equivalent to SAM's `=`.", "This operator indicates that this portion of the aligned sequence is an\nalignment match to the reference, but a sequence mismatch. This can\nindicate a SNP or a read error. This operator is equivalent to SAM's\n`X`." - ] - }, - "referenceSequence": { - "description": "`referenceSequence` is only used at mismatches\n(`SEQUENCE_MISMATCH`) and deletions (`DELETE`).\nFilling this field replaces SAM's MD tag. If the relevant information is\nnot available, this field is unset.", + ], "type": "string" }, "operationLength": { "description": "The number of genomic bases that the operation runs for. Required.", "format": "int64", "type": "string" + }, + "referenceSequence": { + "description": "`referenceSequence` is only used at mismatches\n(`SEQUENCE_MISMATCH`) and deletions (`DELETE`).\nFilling this field replaces SAM's MD tag. If the relevant information is\nnot available, this field is unset.", + "type": "string" } }, - "id": "CigarUnit", - "description": "A single CIGAR operation.", "type": "object" }, - "ReferenceSet": { - "description": "A reference set is a set of references which typically comprise a reference\nassembly for a species, such as `GRCh38` which is representative\nof the human genome. A reference set defines a common coordinate space for\ncomparing reference-aligned experimental data. A reference set contains 1 or\nmore references.\n\nFor more genomics resource definitions, see [Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)", - "type": "object", + "ClinicalCondition": { + "id": "ClinicalCondition", "properties": { - "referenceIds": { - "description": "The IDs of the reference objects that are part of this set.\n`Reference.md5checksum` must be unique within this set.", - "type": "array", + "conceptId": { + "description": "The MedGen concept id associated with this gene.\nSearch for these IDs at http://www.ncbi.nlm.nih.gov/medgen/", + "type": "string" + }, + "externalIds": { + "description": "The set of external IDs for this condition.", + "items": { + "$ref": "ExternalId" + }, + "type": "array" + }, + "names": { + "description": "A set of names for the condition.", "items": { "type": "string" - } + }, + "type": "array" }, - "assemblyId": { - "description": "Public id of this reference set, such as `GRCh37`.", + "omimId": { + "description": "The OMIM id for this condition.\nSearch for these IDs at http://omim.org/", + "type": "string" + } + }, + "type": "object" + }, + "CodingSequence": { + "id": "CodingSequence", + "properties": { + "end": { + "description": "The end of the coding sequence on this annotation's reference sequence,\n0-based exclusive. Note that this position is relative to the reference\nstart, and *not* the containing annotation start.", + "format": "int64", "type": "string" }, - "md5checksum": { - "description": "Order-independent MD5 checksum which identifies this reference set. The\nchecksum is computed by sorting all lower case hexidecimal string\n`reference.md5checksum` (for all reference in this set) in\nascending lexicographic order, concatenating, and taking the MD5 of that\nvalue. The resulting value is represented in lower case hexadecimal format.", + "start": { + "description": "The start of the coding sequence on this annotation's reference sequence,\n0-based inclusive. Note that this position is relative to the reference\nstart, and *not* the containing annotation start.", + "format": "int64", "type": "string" - }, - "id": { - "description": "The server-generated reference set ID, unique across all reference sets.", - "type": "string" - }, - "description": { - "description": "Free text description of this reference set.", - "type": "string" - }, - "sourceAccessions": { - "description": "All known corresponding accession IDs in INSDC (GenBank/ENA/DDBJ) ideally\nwith a version number, for example `NC_000001.11`.", - "type": "array", + } + }, + "type": "object" + }, + "ComputeEngine": { + "description": "Describes a Compute Engine resource that is being managed by a running\npipeline.", + "id": "ComputeEngine", + "properties": { + "diskNames": { + "description": "The names of the disks that were created for this pipeline.", "items": { "type": "string" - } + }, + "type": "array" }, - "ncbiTaxonId": { - "description": "ID from http://www.ncbi.nlm.nih.gov/taxonomy (for example, 9606 for human)\nindicating the species which this reference set is intended to model. Note\nthat contained references may specify a different `ncbiTaxonId`, as\nassemblies may contain reference sequences which do not belong to the\nmodeled species, for example EBV in a human reference genome.", + "instanceName": { + "description": "The instance on which the operation is running.", + "type": "string" + }, + "machineType": { + "description": "The machine type of the instance.", + "type": "string" + }, + "zone": { + "description": "The availability zone in which the instance resides.", + "type": "string" + } + }, + "type": "object" + }, + "ContainerStartedEvent": { + "description": "This event is generated when a container starts.", + "id": "ContainerStartedEvent", + "properties": { + "actionId": { + "description": "The numeric ID of the action that started this container.", "format": "int32", "type": "integer" }, - "sourceUri": { - "description": "The URI from which the references were obtained.", + "ipAddress": { + "description": "The public IP address that can be used to connect to the container. This\nfield is only populated when at least one port mapping is present. If the\ninstance was created with a private address this field will be empty even\nif port mappings exist.", "type": "string" + }, + "portMappings": { + "additionalProperties": { + "format": "int32", + "type": "integer" + }, + "description": "The container to host port mappings installed for this container. This\nset will contain any ports exposed using the PUBLISH_EXPOSED_PORTS flag as\nwell as any specified in the Action definition.", + "type": "object" } }, - "id": "ReferenceSet" - }, - "Transcript": { - "properties": { - "exons": { - "description": "The \u003ca href=\"http://en.wikipedia.org/wiki/Exon\"\u003eexons\u003c/a\u003e that compose\nthis transcript. This field should be unset for genomes where transcript\nsplicing does not occur, for example prokaryotes.\n\nIntrons are regions of the transcript that are not included in the\nspliced RNA product. Though not explicitly modeled here, intron ranges can\nbe deduced; all regions of this transcript that are not exons are introns.\n\nExonic sequences do not necessarily code for a translational product\n(amino acids). Only the regions of exons bounded by the\ncodingSequence correspond\nto coding DNA sequence.\n\nExons are ordered by start position and may not overlap.", - "type": "array", - "items": { - "$ref": "Exon" - } - }, - "codingSequence": { - "$ref": "CodingSequence", - "description": "The range of the coding sequence for this transcript, if any. To determine\nthe exact ranges of coding sequence, intersect this range with those of the\nexons, if any. If there are any\nexons, the\ncodingSequence must start\nand end within them.\n\nNote that in some cases, the reference genome will not exactly match the\nobserved mRNA transcript e.g. due to variance in the source genome from\nreference. In these cases,\nexon.frame will not necessarily\nmatch the expected reference reading frame and coding exon reference bases\ncannot necessarily be concatenated to produce the original transcript mRNA." - }, - "geneId": { - "description": "The annotation ID of the gene from which this transcript is transcribed.", - "type": "string" - } - }, - "id": "Transcript", - "description": "A transcript represents the assertion that a particular region of the\nreference genome may be transcribed as RNA.", "type": "object" }, - "AnnotationSet": { - "description": "An annotation set is a logical grouping of annotations that share consistent\ntype information and provenance. Examples of annotation sets include 'all\ngenes from refseq', and 'all variant annotations from ClinVar'.", - "type": "object", + "ContainerStoppedEvent": { + "description": "This event is generated when a container exits.", + "id": "ContainerStoppedEvent", "properties": { - "datasetId": { - "type": "string", - "description": "The dataset to which this annotation set belongs." + "actionId": { + "description": "The numeric ID of the action that started this container.", + "format": "int32", + "type": "integer" }, - "sourceUri": { - "description": "The source URI describing the file from which this annotation set was\ngenerated, if any.", + "exitStatus": { + "description": "The exit status of the container.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "CoverageBucket": { + "description": "A bucket over which read coverage has been precomputed. A bucket corresponds\nto a specific range of the reference sequence.", + "id": "CoverageBucket", + "properties": { + "meanCoverage": { + "description": "The average number of reads which are aligned to each individual\nreference base in this bucket.", + "format": "float", + "type": "number" + }, + "range": { + "$ref": "Range", + "description": "The genomic coordinate range spanned by this bucket." + } + }, + "type": "object" + }, + "Dataset": { + "description": "A Dataset is a collection of genomic data.\n\nFor more genomics resource definitions, see [Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)", + "id": "Dataset", + "properties": { + "createTime": { + "description": "The time this dataset was created, in seconds from the epoch.", + "format": "google-datetime", + "type": "string" + }, + "id": { + "description": "The server-generated dataset ID, unique across all datasets.", "type": "string" }, "name": { - "type": "string", - "description": "The display name for this annotation set." - }, - "referenceSetId": { - "description": "The ID of the reference set that defines the coordinate space for this\nset's annotations.", + "description": "The dataset name.", "type": "string" }, - "type": { - "enum": [ - "ANNOTATION_TYPE_UNSPECIFIED", - "GENERIC", - "VARIANT", - "GENE", - "TRANSCRIPT" - ], - "description": "The type of annotations contained within this set.", - "type": "string", - "enumDescriptions": [ - "", - "A `GENERIC` annotation type should be used when no other annotation\ntype will suffice. This represents an untyped annotation of the reference\ngenome.", - "A `VARIANT` annotation type.", - "A `GENE` annotation type represents the existence of a gene at the\nassociated reference coordinates. The start coordinate is typically the\ngene's transcription start site and the end is typically the end of the\ngene's last exon.", - "A `TRANSCRIPT` annotation type represents the assertion that a\nparticular region of the reference genome may be transcribed as RNA." - ] - }, - "info": { - "type": "object", - "additionalProperties": { - "type": "array", - "items": { - "type": "any" - } - }, - "description": "A map of additional read alignment information. This must be of the form\nmap\u003cstring, string[]\u003e (string key mapping to a list of string values)." - }, - "id": { - "description": "The server-generated annotation set ID, unique across all annotation sets.", + "projectId": { + "description": "The Google Cloud project ID that this dataset belongs to.", "type": "string" } }, - "id": "AnnotationSet" - }, - "Experiment": { - "type": "object", - "properties": { - "sequencingCenter": { - "description": "The sequencing center used as part of this experiment.", - "type": "string" - }, - "platformUnit": { - "description": "The platform unit used as part of this experiment, for example\nflowcell-barcode.lane for Illumina or slide for SOLiD. Corresponds to the\n@RG PU field in the SAM spec.", - "type": "string" - }, - "libraryId": { - "type": "string", - "description": "A client-supplied library identifier; a library is a collection of DNA\nfragments which have been prepared for sequencing from a sample. This\nfield is important for quality control as error or bias can be introduced\nduring sample preparation." - }, - "instrumentModel": { - "description": "The instrument model used as part of this experiment. This maps to\nsequencing technology in the SAM spec.", - "type": "string" - } - }, - "id": "Experiment" - }, - "ListDatasetsResponse": { - "type": "object", - "properties": { - "datasets": { - "description": "The list of matching Datasets.", - "type": "array", - "items": { - "$ref": "Dataset" - } - }, - "nextPageToken": { - "description": "The continuation token, which is used to page through large result sets.\nProvide this value in a subsequent request to return the next page of\nresults. This field will be empty if there aren't any additional results.", - "type": "string" - } - }, - "id": "ListDatasetsResponse", - "description": "The dataset list response." - }, - "TestIamPermissionsRequest": { - "properties": { - "permissions": { - "description": "REQUIRED: The set of permissions to check for the 'resource'.\nPermissions with wildcards (such as '*' or 'storage.*') are not allowed.\nAllowed permissions are:\n\n* `genomics.datasets.create`\n* `genomics.datasets.delete`\n* `genomics.datasets.get`\n* `genomics.datasets.list`\n* `genomics.datasets.update`\n* `genomics.datasets.getIamPolicy`\n* `genomics.datasets.setIamPolicy`", - "type": "array", - "items": { - "type": "string" - } - } - }, - "id": "TestIamPermissionsRequest", - "description": "Request message for `TestIamPermissions` method.", "type": "object" }, - "ExportReadGroupSetRequest": { - "type": "object", + "DelayedEvent": { + "description": "This event is generated whenever a resource limitation or transient error\ndelays execution of a pipeline that was otherwise ready to run.", + "id": "DelayedEvent", "properties": { - "projectId": { - "description": "Required. The Google Cloud project ID that owns this\nexport. The caller must have WRITE access to this project.", + "cause": { + "description": "A textual description of the cause of the delay. The string may change\nwithout notice since it is often generated by another service (such as\nCompute Engine).", "type": "string" }, - "exportUri": { - "description": "Required. A Google Cloud Storage URI for the exported BAM file.\nThe currently authenticated user must have write access to the new file.\nAn error will be returned if the URI already contains data.", - "type": "string" - }, - "referenceNames": { - "description": "The reference names to export. If this is not specified, all reference\nsequences, including unmapped reads, are exported.\nUse `*` to export only unmapped reads.", - "type": "array", + "metrics": { + "description": "If the delay was caused by a resource shortage, this field lists the\nCompute Engine metrics that are preventing this operation from running\n(for example, CPUS or INSTANCES). If the particular metric is not known,\na single UNKNOWN metric will be present.", "items": { "type": "string" - } + }, + "type": "array" } }, - "id": "ExportReadGroupSetRequest", - "description": "The read group set export request." + "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" + }, + "Entry": { + "id": "Entry", + "properties": { + "annotation": { + "$ref": "Annotation", + "description": "The created annotation, if creation was successful." + }, + "status": { + "$ref": "Status", + "description": "The creation status." + } + }, + "type": "object" + }, + "Event": { + "description": "Event carries information about events that occur during pipeline execution.", + "id": "Event", + "properties": { + "description": { + "description": "A human readable description of the event. Note that these strings may\nchange at any time without notice. Any application logic must use the\ninformation in the details field.", + "type": "string" + }, + "details": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "description": "Machine readable details about the event.", + "type": "object" + }, + "timestamp": { + "description": "The time that the event occurred.", + "format": "google-datetime", + "type": "string" + } + }, + "type": "object" }, "Exon": { - "type": "object", + "id": "Exon", "properties": { "end": { "description": "The end position of the exon on this annotation's reference sequence,\n0-based exclusive. Note that this is relative to the reference start, and\n*not* the containing annotation start.", @@ -3236,121 +2120,320 @@ "type": "string" } }, - "id": "Exon" + "type": "object" }, - "CallSet": { - "id": "CallSet", - "description": "A call set is a collection of variant calls, typically for one sample. It\nbelongs to a variant set.\n\nFor more genomics resource definitions, see [Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)", - "type": "object", + "Experiment": { + "id": "Experiment", "properties": { - "created": { - "description": "The date this call set was created in milliseconds from the epoch.", - "format": "int64", + "instrumentModel": { + "description": "The instrument model used as part of this experiment. This maps to\nsequencing technology in the SAM spec.", "type": "string" }, - "sampleId": { - "description": "The sample ID this call set corresponds to.", + "libraryId": { + "description": "A client-supplied library identifier; a library is a collection of DNA\nfragments which have been prepared for sequencing from a sample. This\nfield is important for quality control as error or bias can be introduced\nduring sample preparation.", "type": "string" }, - "name": { - "type": "string", - "description": "The call set name." + "platformUnit": { + "description": "The platform unit used as part of this experiment, for example\nflowcell-barcode.lane for Illumina or slide for SOLiD. Corresponds to the\n@RG PU field in the SAM spec.", + "type": "string" }, - "info": { - "type": "object", - "additionalProperties": { - "type": "array", - "items": { - "type": "any" - } - }, - "description": "A map of additional call set information. This must be of the form\nmap\u003cstring, string[]\u003e (string key mapping to a list of string values)." + "sequencingCenter": { + "description": "The sequencing center used as part of this experiment.", + "type": "string" + } + }, + "type": "object" + }, + "ExportReadGroupSetRequest": { + "description": "The read group set export request.", + "id": "ExportReadGroupSetRequest", + "properties": { + "exportUri": { + "description": "Required. A Google Cloud Storage URI for the exported BAM file.\nThe currently authenticated user must have write access to the new file.\nAn error will be returned if the URI already contains data.", + "type": "string" }, - "variantSetIds": { - "description": "The IDs of the variant sets this call set belongs to. This field must\nhave exactly length one, as a call set belongs to a single variant set.\nThis field is repeated for compatibility with the\n[GA4GH 0.5.1\nAPI](https://github.com/ga4gh/schemas/blob/v0.5.1/src/main/resources/avro/variants.avdl#L76).", - "type": "array", + "projectId": { + "description": "Required. The Google Cloud project ID that owns this\nexport. The caller must have WRITE access to this project.", + "type": "string" + }, + "referenceNames": { + "description": "The reference names to export. If this is not specified, all reference\nsequences, including unmapped reads, are exported.\nUse `*` to export only unmapped reads.", "items": { "type": "string" - } - }, - "id": { - "description": "The server-generated call set ID, unique across all call sets.", - "type": "string" + }, + "type": "array" } - } + }, + "type": "object" }, - "SearchAnnotationSetsResponse": { - "id": "SearchAnnotationSetsResponse", - "type": "object", + "ExportVariantSetRequest": { + "description": "The variant data export request.", + "id": "ExportVariantSetRequest", "properties": { - "annotationSets": { - "description": "The matching annotation sets.", - "type": "array", - "items": { - "$ref": "AnnotationSet" - } + "bigqueryDataset": { + "description": "Required. The BigQuery dataset to export data to. This dataset must already\nexist. Note that this is distinct from the Genomics concept of \"dataset\".", + "type": "string" }, - "nextPageToken": { - "description": "The continuation token, which is used to page through large result sets.\nProvide this value in a subsequent request to return the next page of\nresults. This field will be empty if there aren't any additional results.", + "bigqueryTable": { + "description": "Required. The BigQuery table to export data to.\nIf the table doesn't exist, it will be created. If it already exists, it\nwill be overwritten.", + "type": "string" + }, + "callSetIds": { + "description": "If provided, only variant call information from the specified call sets\nwill be exported. By default all variant calls are exported.", + "items": { + "type": "string" + }, + "type": "array" + }, + "format": { + "description": "The format for the exported data.", + "enum": [ + "FORMAT_UNSPECIFIED", + "FORMAT_BIGQUERY" + ], + "enumDescriptions": [ + "", + "Export the data to Google BigQuery." + ], + "type": "string" + }, + "projectId": { + "description": "Required. The Google Cloud project ID that owns the destination\nBigQuery dataset. The caller must have WRITE access to this project. This\nproject will also own the resulting export job.", "type": "string" } - } + }, + "type": "object" + }, + "ExternalId": { + "id": "ExternalId", + "properties": { + "id": { + "description": "The id used by the source of this data.", + "type": "string" + }, + "sourceName": { + "description": "The name of the source of this data.", + "type": "string" + } + }, + "type": "object" + }, + "FailedEvent": { + "description": "This event is generated when the execution of a pipeline has failed. Note\nthat other events may continue to occur after this event.", + "id": "FailedEvent", + "properties": { + "cause": { + "description": "The human readable description of the cause of the failure.", + "type": "string" + }, + "code": { + "description": "The Google standard error code that best describes this failure.", + "enum": [ + "OK", + "CANCELLED", + "UNKNOWN", + "INVALID_ARGUMENT", + "DEADLINE_EXCEEDED", + "NOT_FOUND", + "ALREADY_EXISTS", + "PERMISSION_DENIED", + "UNAUTHENTICATED", + "RESOURCE_EXHAUSTED", + "FAILED_PRECONDITION", + "ABORTED", + "OUT_OF_RANGE", + "UNIMPLEMENTED", + "INTERNAL", + "UNAVAILABLE", + "DATA_LOSS" + ], + "enumDescriptions": [ + "Not an error; returned on success\n\nHTTP Mapping: 200 OK", + "The operation was cancelled, typically by the caller.\n\nHTTP Mapping: 499 Client Closed Request", + "Unknown error. For example, this error may be returned when\na `Status` value received from another address space belongs to\nan error space that is not known in this address space. Also\nerrors raised by APIs that do not return enough error information\nmay be converted to this error.\n\nHTTP Mapping: 500 Internal Server Error", + "The client specified an invalid argument. Note that this differs\nfrom `FAILED_PRECONDITION`. `INVALID_ARGUMENT` indicates arguments\nthat are problematic regardless of the state of the system\n(e.g., a malformed file name).\n\nHTTP Mapping: 400 Bad Request", + "The deadline expired before the operation could complete. For operations\nthat change the state of the system, this error may be returned\neven if the operation has completed successfully. For example, a\nsuccessful response from a server could have been delayed long\nenough for the deadline to expire.\n\nHTTP Mapping: 504 Gateway Timeout", + "Some requested entity (e.g., file or directory) was not found.\n\nNote to server developers: if a request is denied for an entire class\nof users, such as gradual feature rollout or undocumented whitelist,\n`NOT_FOUND` may be used. If a request is denied for some users within\na class of users, such as user-based access control, `PERMISSION_DENIED`\nmust be used.\n\nHTTP Mapping: 404 Not Found", + "The entity that a client attempted to create (e.g., file or directory)\nalready exists.\n\nHTTP Mapping: 409 Conflict", + "The caller does not have permission to execute the specified\noperation. `PERMISSION_DENIED` must not be used for rejections\ncaused by exhausting some resource (use `RESOURCE_EXHAUSTED`\ninstead for those errors). `PERMISSION_DENIED` must not be\nused if the caller can not be identified (use `UNAUTHENTICATED`\ninstead for those errors). This error code does not imply the\nrequest is valid or the requested entity exists or satisfies\nother pre-conditions.\n\nHTTP Mapping: 403 Forbidden", + "The request does not have valid authentication credentials for the\noperation.\n\nHTTP Mapping: 401 Unauthorized", + "Some resource has been exhausted, perhaps a per-user quota, or\nperhaps the entire file system is out of space.\n\nHTTP Mapping: 429 Too Many Requests", + "The operation was rejected because the system is not in a state\nrequired for the operation's execution. For example, the directory\nto be deleted is non-empty, an rmdir operation is applied to\na non-directory, etc.\n\nService implementors can use the following guidelines to decide\nbetween `FAILED_PRECONDITION`, `ABORTED`, and `UNAVAILABLE`:\n (a) Use `UNAVAILABLE` if the client can retry just the failing call.\n (b) Use `ABORTED` if the client should retry at a higher level\n (e.g., when a client-specified test-and-set fails, indicating the\n client should restart a read-modify-write sequence).\n (c) Use `FAILED_PRECONDITION` if the client should not retry until\n the system state has been explicitly fixed. E.g., if an \"rmdir\"\n fails because the directory is non-empty, `FAILED_PRECONDITION`\n should be returned since the client should not retry unless\n the files are deleted from the directory.\n\nHTTP Mapping: 400 Bad Request", + "The operation was aborted, typically due to a concurrency issue such as\na sequencer check failure or transaction abort.\n\nSee the guidelines above for deciding between `FAILED_PRECONDITION`,\n`ABORTED`, and `UNAVAILABLE`.\n\nHTTP Mapping: 409 Conflict", + "The operation was attempted past the valid range. E.g., seeking or\nreading past end-of-file.\n\nUnlike `INVALID_ARGUMENT`, this error indicates a problem that may\nbe fixed if the system state changes. For example, a 32-bit file\nsystem will generate `INVALID_ARGUMENT` if asked to read at an\noffset that is not in the range [0,2^32-1], but it will generate\n`OUT_OF_RANGE` if asked to read from an offset past the current\nfile size.\n\nThere is a fair bit of overlap between `FAILED_PRECONDITION` and\n`OUT_OF_RANGE`. We recommend using `OUT_OF_RANGE` (the more specific\nerror) when it applies so that callers who are iterating through\na space can easily look for an `OUT_OF_RANGE` error to detect when\nthey are done.\n\nHTTP Mapping: 400 Bad Request", + "The operation is not implemented or is not supported/enabled in this\nservice.\n\nHTTP Mapping: 501 Not Implemented", + "Internal errors. This means that some invariants expected by the\nunderlying system have been broken. This error code is reserved\nfor serious errors.\n\nHTTP Mapping: 500 Internal Server Error", + "The service is currently unavailable. This is most likely a\ntransient condition, which can be corrected by retrying with\na backoff.\n\nSee the guidelines above for deciding between `FAILED_PRECONDITION`,\n`ABORTED`, and `UNAVAILABLE`.\n\nHTTP Mapping: 503 Service Unavailable", + "Unrecoverable data loss or corruption.\n\nHTTP Mapping: 500 Internal Server Error" + ], + "type": "string" + } + }, + "type": "object" + }, + "GetIamPolicyRequest": { + "description": "Request message for `GetIamPolicy` method.", + "id": "GetIamPolicyRequest", + "properties": {}, + "type": "object" + }, + "ImportReadGroupSetsRequest": { + "description": "The read group set import request.", + "id": "ImportReadGroupSetsRequest", + "properties": { + "datasetId": { + "description": "Required. The ID of the dataset these read group sets will belong to. The\ncaller must have WRITE permissions to this dataset.", + "type": "string" + }, + "partitionStrategy": { + "description": "The partition strategy describes how read groups are partitioned into read\ngroup sets.", + "enum": [ + "PARTITION_STRATEGY_UNSPECIFIED", + "PER_FILE_PER_SAMPLE", + "MERGE_ALL" + ], + "enumDescriptions": [ + "", + "In most cases, this strategy yields one read group set per file. This is\nthe default behavior.\n\nAllocate one read group set per file per sample. For BAM files, read\ngroups are considered to share a sample if they have identical sample\nnames. Furthermore, all reads for each file which do not belong to a read\ngroup, if any, will be grouped into a single read group set per-file.", + "Includes all read groups in all imported files into a single read group\nset. Requires that the headers for all imported files are equivalent. All\nreads which do not belong to a read group, if any, will be grouped into a\nseparate read group set." + ], + "type": "string" + }, + "referenceSetId": { + "description": "The reference set to which the imported read group sets are aligned to, if\nany. The reference names of this reference set must be a superset of those\nfound in the imported file headers. If no reference set id is provided, a\nbest effort is made to associate with a matching reference set.", + "type": "string" + }, + "sourceUris": { + "description": "A list of URIs pointing at [BAM\nfiles](https://samtools.github.io/hts-specs/SAMv1.pdf)\nin Google Cloud Storage.\nThose URIs can include wildcards (*), but do not add or remove\nmatching files before import has completed.\n\nNote that Google Cloud Storage object listing is only eventually\nconsistent: files added may be not be immediately visible to\neveryone. Thus, if using a wildcard it is preferable not to start\nthe import immediately after the files are created.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "ImportReadGroupSetsResponse": { + "description": "The read group set import response.", + "id": "ImportReadGroupSetsResponse", + "properties": { + "readGroupSetIds": { + "description": "IDs of the read group sets that were created.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" }, "ImportVariantsRequest": { "description": "The variant data import request.", - "type": "object", + "id": "ImportVariantsRequest", "properties": { - "normalizeReferenceNames": { - "description": "Convert reference names to the canonical representation.\nhg19 haploytypes (those reference names containing \"_hap\")\nare not modified in any way.\nAll other reference names are modified according to the following rules:\nThe reference name is capitalized.\nThe \"chr\" prefix is dropped for all autosomes and sex chromsomes.\nFor example \"chr17\" becomes \"17\" and \"chrX\" becomes \"X\".\nAll mitochondrial chromosomes (\"chrM\", \"chrMT\", etc) become \"MT\".", - "type": "boolean" - }, "format": { "description": "The format of the variant data being imported. If unspecified, defaults to\nto `VCF`.", - "type": "string", + "enum": [ + "FORMAT_UNSPECIFIED", + "FORMAT_VCF", + "FORMAT_COMPLETE_GENOMICS" + ], "enumDescriptions": [ "", "VCF (Variant Call Format). The VCF files may be gzip compressed. gVCF is\nalso supported. Disclaimer: gzip VCF imports are currently much slower\nthan equivalent uncompressed VCF imports. For this reason, uncompressed\nVCF is currently recommended for imports with more than 1GB combined\nuncompressed size, or for time sensitive imports.", "Complete Genomics masterVarBeta format. The masterVarBeta files may\nbe bzip2 compressed." ], - "enum": [ - "FORMAT_UNSPECIFIED", - "FORMAT_VCF", - "FORMAT_COMPLETE_GENOMICS" - ] + "type": "string" }, "infoMergeConfig": { "additionalProperties": { - "type": "string", "enum": [ "INFO_MERGE_OPERATION_UNSPECIFIED", "IGNORE_NEW", "MOVE_TO_CALLS" - ] + ], + "type": "string" }, "description": "A mapping between info field keys and the InfoMergeOperations to\nbe performed on them. This is plumbed down to the MergeVariantRequests\ngenerated by the resulting import job.", "type": "object" }, - "variantSetId": { - "description": "Required. The variant set to which variant data should be imported.", - "type": "string" + "normalizeReferenceNames": { + "description": "Convert reference names to the canonical representation.\nhg19 haploytypes (those reference names containing \"_hap\")\nare not modified in any way.\nAll other reference names are modified according to the following rules:\nThe reference name is capitalized.\nThe \"chr\" prefix is dropped for all autosomes and sex chromsomes.\nFor example \"chr17\" becomes \"17\" and \"chrX\" becomes \"X\".\nAll mitochondrial chromosomes (\"chrM\", \"chrMT\", etc) become \"MT\".", + "type": "boolean" }, "sourceUris": { - "type": "array", + "description": "A list of URIs referencing variant files in Google Cloud Storage. URIs can\ninclude wildcards [as described\nhere](https://cloud.google.com/storage/docs/gsutil/addlhelp/WildcardNames).\nNote that recursive wildcards ('**') are not supported.", "items": { "type": "string" }, - "description": "A list of URIs referencing variant files in Google Cloud Storage. URIs can\ninclude wildcards [as described\nhere](https://cloud.google.com/storage/docs/gsutil/addlhelp/WildcardNames).\nNote that recursive wildcards ('**') are not supported." + "type": "array" + }, + "variantSetId": { + "description": "Required. The variant set to which variant data should be imported.", + "type": "string" } }, - "id": "ImportVariantsRequest" + "type": "object" }, - "ListCoverageBucketsResponse": { - "type": "object", + "ImportVariantsResponse": { + "description": "The variant data import response.", + "id": "ImportVariantsResponse", + "properties": { + "callSetIds": { + "description": "IDs of the call sets created during the import.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "LinearAlignment": { + "description": "A linear alignment can be represented by one CIGAR string. Describes the\nmapped position and local alignment of the read to the reference.", + "id": "LinearAlignment", + "properties": { + "cigar": { + "description": "Represents the local alignment of this sequence (alignment matches, indels,\netc) against the reference.", + "items": { + "$ref": "CigarUnit" + }, + "type": "array" + }, + "mappingQuality": { + "description": "The mapping quality of this alignment. Represents how likely\nthe read maps to this position as opposed to other locations.\n\nSpecifically, this is -10 log10 Pr(mapping position is wrong), rounded to\nthe nearest integer.", + "format": "int32", + "type": "integer" + }, + "position": { + "$ref": "Position", + "description": "The position of this alignment." + } + }, + "type": "object" + }, + "ListBasesResponse": { + "id": "ListBasesResponse", "properties": { "nextPageToken": { "description": "The continuation token, which is used to page through large result sets.\nProvide this value in a subsequent request to return the next page of\nresults. This field will be empty if there aren't any additional results.", "type": "string" }, + "offset": { + "description": "The offset position (0-based) of the given `sequence` from the\nstart of this `Reference`. This value will differ for each page\nin a paginated request.", + "format": "int64", + "type": "string" + }, + "sequence": { + "description": "A substring of the bases that make up this reference.", + "type": "string" + } + }, + "type": "object" + }, + "ListCoverageBucketsResponse": { + "id": "ListCoverageBucketsResponse", + "properties": { "bucketWidth": { "description": "The length of each coverage bucket in base pairs. Note that buckets at the\nend of a reference sequence may be shorter. This value is omitted if the\nbucket width is infinity (the default behaviour, with no range or\n`targetBucketWidth`).", "format": "int64", @@ -3358,107 +2441,1303 @@ }, "coverageBuckets": { "description": "The coverage buckets. The list of buckets is sparse; a bucket with 0\noverlapping reads is not returned. A bucket never crosses more than one\nreference sequence. Each bucket has width `bucketWidth`, unless\nits end is the end of the reference sequence.", - "type": "array", "items": { "$ref": "CoverageBucket" - } + }, + "type": "array" + }, + "nextPageToken": { + "description": "The continuation token, which is used to page through large result sets.\nProvide this value in a subsequent request to return the next page of\nresults. This field will be empty if there aren't any additional results.", + "type": "string" } }, - "id": "ListCoverageBucketsResponse" + "type": "object" }, - "VariantAnnotation": { - "type": "object", + "ListDatasetsResponse": { + "description": "The dataset list response.", + "id": "ListDatasetsResponse", "properties": { - "conditions": { - "description": "The set of conditions associated with this variant.\nA condition describes the way a variant influences human health.", - "type": "array", + "datasets": { + "description": "The list of matching Datasets.", "items": { - "$ref": "ClinicalCondition" - } + "$ref": "Dataset" + }, + "type": "array" }, - "effect": { - "enumDescriptions": [ - "", - "`EFFECT_OTHER` should be used when no other Effect\nwill suffice.", - "`FRAMESHIFT` indicates a mutation in which the insertion or\ndeletion of nucleotides resulted in a frameshift change.", - "`FRAME_PRESERVING_INDEL` indicates a mutation in which a\nmultiple of three nucleotides has been inserted or deleted, resulting\nin no change to the reading frame of the coding sequence.", - "`SYNONYMOUS_SNP` indicates a single nucleotide polymorphism\nmutation that results in no amino acid change.", - "`NONSYNONYMOUS_SNP` indicates a single nucleotide\npolymorphism mutation that results in an amino acid change.", - "`STOP_GAIN` indicates a mutation that leads to the creation\nof a stop codon at the variant site. Frameshift mutations creating\ndownstream stop codons do not count as `STOP_GAIN`.", - "`STOP_LOSS` indicates a mutation that eliminates a\nstop codon at the variant site.", - "`SPLICE_SITE_DISRUPTION` indicates that this variant is\nfound in a splice site for the associated transcript, and alters the\nnormal splicing pattern." - ], - "enum": [ - "EFFECT_UNSPECIFIED", - "EFFECT_OTHER", - "FRAMESHIFT", - "FRAME_PRESERVING_INDEL", - "SYNONYMOUS_SNP", - "NONSYNONYMOUS_SNP", - "STOP_GAIN", - "STOP_LOSS", - "SPLICE_SITE_DISRUPTION" - ], - "description": "Effect of the variant on the coding sequence.", + "nextPageToken": { + "description": "The continuation token, which is used to page through large result sets.\nProvide this value in a subsequent request to return the next page of\nresults. This field will be empty if there aren't any additional results.", + "type": "string" + } + }, + "type": "object" + }, + "ListOperationsResponse": { + "description": "The response message for Operations.ListOperations.", + "id": "ListOperationsResponse", + "properties": { + "nextPageToken": { + "description": "The standard List next-page token.", "type": "string" }, - "transcriptIds": { - "description": "Google annotation IDs of the transcripts affected by this variant. These\nshould be provided when the variant is created.", - "type": "array", + "operations": { + "description": "A list of operations that matches the specified filter in the request.", + "items": { + "$ref": "Operation" + }, + "type": "array" + } + }, + "type": "object" + }, + "MergeVariantsRequest": { + "id": "MergeVariantsRequest", + "properties": { + "infoMergeConfig": { + "additionalProperties": { + "enum": [ + "INFO_MERGE_OPERATION_UNSPECIFIED", + "IGNORE_NEW", + "MOVE_TO_CALLS" + ], + "type": "string" + }, + "description": "A mapping between info field keys and the InfoMergeOperations to\nbe performed on them.", + "type": "object" + }, + "variantSetId": { + "description": "The destination variant set.", + "type": "string" + }, + "variants": { + "description": "The variants to be merged with existing variants.", + "items": { + "$ref": "Variant" + }, + "type": "array" + } + }, + "type": "object" + }, + "Operation": { + "description": "This resource represents a long-running operation that is the result of a\nnetwork API call.", + "id": "Operation", + "properties": { + "done": { + "description": "If the value is `false`, it means the operation is still in progress.\nIf `true`, the operation is completed, and either `error` or `response` is\navailable.", + "type": "boolean" + }, + "error": { + "$ref": "Status", + "description": "The error result of the operation in case of failure or cancellation." + }, + "metadata": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "description": "An OperationMetadata or Metadata object. This will always be returned with the Operation.", + "type": "object" + }, + "name": { + "description": "The server-assigned name, which is only unique within the same service that originally returns it. For example\u0026#58; `operations/CJHU7Oi_ChDrveSpBRjfuL-qzoWAgEw`", + "type": "string" + }, + "response": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "description": "If importing ReadGroupSets, an ImportReadGroupSetsResponse is returned. If importing Variants, an ImportVariantsResponse is returned. For pipelines and exports, an Empty response is returned.", + "type": "object" + } + }, + "type": "object" + }, + "OperationEvent": { + "description": "An event that occurred during an Operation.", + "id": "OperationEvent", + "properties": { + "description": { + "description": "Required description of event.", + "type": "string" + }, + "endTime": { + "description": "Optional time of when event finished. An event can have a start time and no\nfinish time. If an event has a finish time, there must be a start time.", + "format": "google-datetime", + "type": "string" + }, + "startTime": { + "description": "Optional time of when event started.", + "format": "google-datetime", + "type": "string" + } + }, + "type": "object" + }, + "OperationMetadata": { + "description": "Metadata describing an Operation.", + "id": "OperationMetadata", + "properties": { + "clientId": { + "description": "This field is deprecated. Use `labels` instead. Optionally provided by the\ncaller when submitting the request that creates the operation.", + "type": "string" + }, + "createTime": { + "description": "The time at which the job was submitted to the Genomics service.", + "format": "google-datetime", + "type": "string" + }, + "endTime": { + "description": "The time at which the job stopped running.", + "format": "google-datetime", + "type": "string" + }, + "events": { + "description": "Optional event messages that were generated during the job's execution.\nThis also contains any warnings that were generated during import\nor export.", + "items": { + "$ref": "OperationEvent" + }, + "type": "array" + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Optionally provided by the caller when submitting the request that creates\nthe operation.", + "type": "object" + }, + "projectId": { + "description": "The Google Cloud Project in which the job is scoped.", + "type": "string" + }, + "request": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "description": "The original request that started the operation. Note that this will be in\ncurrent version of the API. If the operation was started with v1beta2 API\nand a GetOperation is performed on v1 API, a v1 request will be returned.", + "type": "object" + }, + "runtimeMetadata": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "description": "Runtime metadata on this Operation.", + "type": "object" + }, + "startTime": { + "description": "The time at which the job began to run.", + "format": "google-datetime", + "type": "string" + } + }, + "type": "object" + }, + "Policy": { + "description": "Defines an Identity and Access Management (IAM) policy. It is used to\nspecify access control policies for Cloud Platform resources.\n\n\nA `Policy` consists of a list of `bindings`. A `Binding` binds a list of\n`members` to a `role`, where the members can be user accounts, Google groups,\nGoogle domains, and service accounts. A `role` is a named list of permissions\ndefined by IAM.\n\n**Example**\n\n {\n \"bindings\": [\n {\n \"role\": \"roles/owner\",\n \"members\": [\n \"user:mike@example.com\",\n \"group:admins@example.com\",\n \"domain:google.com\",\n \"serviceAccount:my-other-app@appspot.gserviceaccount.com\",\n ]\n },\n {\n \"role\": \"roles/viewer\",\n \"members\": [\"user:sean@example.com\"]\n }\n ]\n }\n\nFor a description of IAM and its features, see the\n[IAM developer's guide](https://cloud.google.com/iam/docs).", + "id": "Policy", + "properties": { + "bindings": { + "description": "Associates a list of `members` to a `role`.\n`bindings` with no members will result in an error.", + "items": { + "$ref": "Binding" + }, + "type": "array" + }, + "etag": { + "description": "`etag` is used for optimistic concurrency control as a way to help\nprevent simultaneous updates of a policy from overwriting each other.\nIt is strongly suggested that systems make use of the `etag` in the\nread-modify-write cycle to perform policy updates in order to avoid race\nconditions: An `etag` is returned in the response to `getIamPolicy`, and\nsystems are expected to put that etag in the request to `setIamPolicy` to\nensure that their change will be applied to the same version of the policy.\n\nIf no `etag` is provided in the call to `setIamPolicy`, then the existing\npolicy is overwritten blindly.", + "format": "byte", + "type": "string" + }, + "version": { + "description": "Deprecated.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "Position": { + "description": "An abstraction for referring to a genomic position, in relation to some\nalready known reference. For now, represents a genomic position as a\nreference name, a base number on that reference (0-based), and a\ndetermination of forward or reverse strand.", + "id": "Position", + "properties": { + "position": { + "description": "The 0-based offset from the start of the forward strand for that reference.", + "format": "int64", + "type": "string" + }, + "referenceName": { + "description": "The name of the reference in whatever reference set is being used.", + "type": "string" + }, + "reverseStrand": { + "description": "Whether this position is on the reverse strand, as opposed to the forward\nstrand.", + "type": "boolean" + } + }, + "type": "object" + }, + "Program": { + "id": "Program", + "properties": { + "commandLine": { + "description": "The command line used to run this program.", + "type": "string" + }, + "id": { + "description": "The user specified locally unique ID of the program. Used along with\n`prevProgramId` to define an ordering between programs.", + "type": "string" + }, + "name": { + "description": "The display name of the program. This is typically the colloquial name of\nthe tool used, for example 'bwa' or 'picard'.", + "type": "string" + }, + "prevProgramId": { + "description": "The ID of the program run before this one.", + "type": "string" + }, + "version": { + "description": "The version of the program run.", + "type": "string" + } + }, + "type": "object" + }, + "PullStartedEvent": { + "description": "This event is generated when the worker starts pulling an image.", + "id": "PullStartedEvent", + "properties": { + "imageUri": { + "description": "The URI of the image that was pulled.", + "type": "string" + } + }, + "type": "object" + }, + "PullStoppedEvent": { + "description": "This event is generated when the worker stops pulling an image.", + "id": "PullStoppedEvent", + "properties": { + "imageUri": { + "description": "The URI of the image that was pulled.", + "type": "string" + } + }, + "type": "object" + }, + "Range": { + "description": "A 0-based half-open genomic coordinate range for search requests.", + "id": "Range", + "properties": { + "end": { + "description": "The end position of the range on the reference, 0-based exclusive.", + "format": "int64", + "type": "string" + }, + "referenceName": { + "description": "The reference sequence name, for example `chr1`,\n`1`, or `chrX`.", + "type": "string" + }, + "start": { + "description": "The start position of the range on the reference, 0-based inclusive.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "Read": { + "description": "A read alignment describes a linear alignment of a string of DNA to a\nreference sequence, in addition to metadata\nabout the fragment (the molecule of DNA sequenced) and the read (the bases\nwhich were read by the sequencer). A read is equivalent to a line in a SAM\nfile. A read belongs to exactly one read group and exactly one\nread group set.\n\nFor more genomics resource definitions, see [Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)\n\n### Reverse-stranded reads\n\nMapped reads (reads having a non-null `alignment`) can be aligned to either\nthe forward or the reverse strand of their associated reference. Strandedness\nof a mapped read is encoded by `alignment.position.reverseStrand`.\n\nIf we consider the reference to be a forward-stranded coordinate space of\n`[0, reference.length)` with `0` as the left-most position and\n`reference.length` as the right-most position, reads are always aligned left\nto right. That is, `alignment.position.position` always refers to the\nleft-most reference coordinate and `alignment.cigar` describes the alignment\nof this read to the reference from left to right. All per-base fields such as\n`alignedSequence` and `alignedQuality` share this same left-to-right\norientation; this is true of reads which are aligned to either strand. For\nreverse-stranded reads, this means that `alignedSequence` is the reverse\ncomplement of the bases that were originally reported by the sequencing\nmachine.\n\n### Generating a reference-aligned sequence string\n\nWhen interacting with mapped reads, it's often useful to produce a string\nrepresenting the local alignment of the read to reference. The following\npseudocode demonstrates one way of doing this:\n\n out = \"\"\n offset = 0\n for c in read.alignment.cigar {\n switch c.operation {\n case \"ALIGNMENT_MATCH\", \"SEQUENCE_MATCH\", \"SEQUENCE_MISMATCH\":\n out += read.alignedSequence[offset:offset+c.operationLength]\n offset += c.operationLength\n break\n case \"CLIP_SOFT\", \"INSERT\":\n offset += c.operationLength\n break\n case \"PAD\":\n out += repeat(\"*\", c.operationLength)\n break\n case \"DELETE\":\n out += repeat(\"-\", c.operationLength)\n break\n case \"SKIP\":\n out += repeat(\" \", c.operationLength)\n break\n case \"CLIP_HARD\":\n break\n }\n }\n return out\n\n### Converting to SAM's CIGAR string\n\nThe following pseudocode generates a SAM CIGAR string from the\n`cigar` field. Note that this is a lossy conversion\n(`cigar.referenceSequence` is lost).\n\n cigarMap = {\n \"ALIGNMENT_MATCH\": \"M\",\n \"INSERT\": \"I\",\n \"DELETE\": \"D\",\n \"SKIP\": \"N\",\n \"CLIP_SOFT\": \"S\",\n \"CLIP_HARD\": \"H\",\n \"PAD\": \"P\",\n \"SEQUENCE_MATCH\": \"=\",\n \"SEQUENCE_MISMATCH\": \"X\",\n }\n cigarStr = \"\"\n for c in read.alignment.cigar {\n cigarStr += c.operationLength + cigarMap[c.operation]\n }\n return cigarStr", + "id": "Read", + "properties": { + "alignedQuality": { + "description": "The quality of the read sequence contained in this alignment record\n(equivalent to QUAL in SAM).\n`alignedSequence` and `alignedQuality` may be shorter than the full read\nsequence and quality. This will occur if the alignment is part of a\nchimeric alignment, or if the read was trimmed. When this occurs, the CIGAR\nfor this read will begin/end with a hard clip operator that will indicate\nthe length of the excised sequence.", + "items": { + "format": "int32", + "type": "integer" + }, + "type": "array" + }, + "alignedSequence": { + "description": "The bases of the read sequence contained in this alignment record,\n**without CIGAR operations applied** (equivalent to SEQ in SAM).\n`alignedSequence` and `alignedQuality` may be\nshorter than the full read sequence and quality. This will occur if the\nalignment is part of a chimeric alignment, or if the read was trimmed. When\nthis occurs, the CIGAR for this read will begin/end with a hard clip\noperator that will indicate the length of the excised sequence.", + "type": "string" + }, + "alignment": { + "$ref": "LinearAlignment", + "description": "The linear alignment for this alignment record. This field is null for\nunmapped reads." + }, + "duplicateFragment": { + "description": "The fragment is a PCR or optical duplicate (SAM flag 0x400).", + "type": "boolean" + }, + "failedVendorQualityChecks": { + "description": "Whether this read did not pass filters, such as platform or vendor quality\ncontrols (SAM flag 0x200).", + "type": "boolean" + }, + "fragmentLength": { + "description": "The observed length of the fragment, equivalent to TLEN in SAM.", + "format": "int32", + "type": "integer" + }, + "fragmentName": { + "description": "The fragment name. Equivalent to QNAME (query template name) in SAM.", + "type": "string" + }, + "id": { + "description": "The server-generated read ID, unique across all reads. This is different\nfrom the `fragmentName`.", + "type": "string" + }, + "info": { + "additionalProperties": { + "items": { + "type": "any" + }, + "type": "array" + }, + "description": "A map of additional read alignment information. This must be of the form\nmap\u003cstring, string[]\u003e (string key mapping to a list of string values).", + "type": "object" + }, + "nextMatePosition": { + "$ref": "Position", + "description": "The mapping of the primary alignment of the\n`(readNumber+1)%numberReads` read in the fragment. It replaces\nmate position and mate strand in SAM." + }, + "numberReads": { + "description": "The number of reads in the fragment (extension to SAM flag 0x1).", + "format": "int32", + "type": "integer" + }, + "properPlacement": { + "description": "The orientation and the distance between reads from the fragment are\nconsistent with the sequencing protocol (SAM flag 0x2).", + "type": "boolean" + }, + "readGroupId": { + "description": "The ID of the read group this read belongs to. A read belongs to exactly\none read group. This is a server-generated ID which is distinct from SAM's\nRG tag (for that value, see\nReadGroup.name).", + "type": "string" + }, + "readGroupSetId": { + "description": "The ID of the read group set this read belongs to. A read belongs to\nexactly one read group set.", + "type": "string" + }, + "readNumber": { + "description": "The read number in sequencing. 0-based and less than numberReads. This\nfield replaces SAM flag 0x40 and 0x80.", + "format": "int32", + "type": "integer" + }, + "secondaryAlignment": { + "description": "Whether this alignment is secondary. Equivalent to SAM flag 0x100.\nA secondary alignment represents an alternative to the primary alignment\nfor this read. Aligners may return secondary alignments if a read can map\nambiguously to multiple coordinates in the genome. By convention, each read\nhas one and only one alignment where both `secondaryAlignment`\nand `supplementaryAlignment` are false.", + "type": "boolean" + }, + "supplementaryAlignment": { + "description": "Whether this alignment is supplementary. Equivalent to SAM flag 0x800.\nSupplementary alignments are used in the representation of a chimeric\nalignment. In a chimeric alignment, a read is split into multiple\nlinear alignments that map to different reference contigs. The first\nlinear alignment in the read will be designated as the representative\nalignment; the remaining linear alignments will be designated as\nsupplementary alignments. These alignments may have different mapping\nquality scores. In each linear alignment in a chimeric alignment, the read\nwill be hard clipped. The `alignedSequence` and\n`alignedQuality` fields in the alignment record will only\nrepresent the bases for its respective linear alignment.", + "type": "boolean" + } + }, + "type": "object" + }, + "ReadGroup": { + "description": "A read group is all the data that's processed the same way by the sequencer.", + "id": "ReadGroup", + "properties": { + "datasetId": { + "description": "The dataset to which this read group belongs.", + "type": "string" + }, + "description": { + "description": "A free-form text description of this read group.", + "type": "string" + }, + "experiment": { + "$ref": "Experiment", + "description": "The experiment used to generate this read group." + }, + "id": { + "description": "The server-generated read group ID, unique for all read groups.\nNote: This is different than the @RG ID field in the SAM spec. For that\nvalue, see name.", + "type": "string" + }, + "info": { + "additionalProperties": { + "items": { + "type": "any" + }, + "type": "array" + }, + "description": "A map of additional read group information. This must be of the form\nmap\u003cstring, string[]\u003e (string key mapping to a list of string values).", + "type": "object" + }, + "name": { + "description": "The read group name. This corresponds to the @RG ID field in the SAM spec.", + "type": "string" + }, + "predictedInsertSize": { + "description": "The predicted insert size of this read group. The insert size is the length\nthe sequenced DNA fragment from end-to-end, not including the adapters.", + "format": "int32", + "type": "integer" + }, + "programs": { + "description": "The programs used to generate this read group. Programs are always\nidentical for all read groups within a read group set. For this reason,\nonly the first read group in a returned set will have this field\npopulated.", + "items": { + "$ref": "Program" + }, + "type": "array" + }, + "referenceSetId": { + "description": "The reference set the reads in this read group are aligned to.", + "type": "string" + }, + "sampleId": { + "description": "A client-supplied sample identifier for the reads in this read group.", + "type": "string" + } + }, + "type": "object" + }, + "ReadGroupSet": { + "description": "A read group set is a logical collection of read groups, which are\ncollections of reads produced by a sequencer. A read group set typically\nmodels reads corresponding to one sample, sequenced one way, and aligned one\nway.\n\n* A read group set belongs to one dataset.\n* A read group belongs to one read group set.\n* A read belongs to one read group.\n\nFor more genomics resource definitions, see [Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)", + "id": "ReadGroupSet", + "properties": { + "datasetId": { + "description": "The dataset to which this read group set belongs.", + "type": "string" + }, + "filename": { + "description": "The filename of the original source file for this read group set, if any.", + "type": "string" + }, + "id": { + "description": "The server-generated read group set ID, unique for all read group sets.", + "type": "string" + }, + "info": { + "additionalProperties": { + "items": { + "type": "any" + }, + "type": "array" + }, + "description": "A map of additional read group set information.", + "type": "object" + }, + "name": { + "description": "The read group set name. By default this will be initialized to the sample\nname of the sequenced data contained in this set.", + "type": "string" + }, + "readGroups": { + "description": "The read groups in this set. There are typically 1-10 read groups in a read\ngroup set.", + "items": { + "$ref": "ReadGroup" + }, + "type": "array" + }, + "referenceSetId": { + "description": "The reference set to which the reads in this read group set are aligned.", + "type": "string" + } + }, + "type": "object" + }, + "Reference": { + "description": "A reference is a canonical assembled DNA sequence, intended to act as a\nreference coordinate space for other genomic annotations. A single reference\nmight represent the human chromosome 1 or mitochandrial DNA, for instance. A\nreference belongs to one or more reference sets.\n\nFor more genomics resource definitions, see [Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)", + "id": "Reference", + "properties": { + "id": { + "description": "The server-generated reference ID, unique across all references.", + "type": "string" + }, + "length": { + "description": "The length of this reference's sequence.", + "format": "int64", + "type": "string" + }, + "md5checksum": { + "description": "MD5 of the upper-case sequence excluding all whitespace characters (this\nis equivalent to SQ:M5 in SAM). This value is represented in lower case\nhexadecimal format.", + "type": "string" + }, + "name": { + "description": "The name of this reference, for example `22`.", + "type": "string" + }, + "ncbiTaxonId": { + "description": "ID from http://www.ncbi.nlm.nih.gov/taxonomy. For example, 9606 for human.", + "format": "int32", + "type": "integer" + }, + "sourceAccessions": { + "description": "All known corresponding accession IDs in INSDC (GenBank/ENA/DDBJ) ideally\nwith a version number, for example `GCF_000001405.26`.", "items": { "type": "string" - } + }, + "type": "array" }, - "type": { - "enumDescriptions": [ - "", - "`TYPE_OTHER` should be used when no other Type will suffice.\nFurther explanation of the variant type may be included in the\ninfo field.", - "`INSERTION` indicates an insertion.", - "`DELETION` indicates a deletion.", - "`SUBSTITUTION` indicates a block substitution of\ntwo or more nucleotides.", - "`SNP` indicates a single nucleotide polymorphism.", - "`STRUCTURAL` indicates a large structural variant,\nincluding chromosomal fusions, inversions, etc.", - "`CNV` indicates a variation in copy number." - ], - "enum": [ - "TYPE_UNSPECIFIED", - "TYPE_OTHER", - "INSERTION", - "DELETION", - "SUBSTITUTION", - "SNP", - "STRUCTURAL", - "CNV" - ], - "description": "Type has been adapted from ClinVar's list of variant types.", + "sourceUri": { + "description": "The URI from which the sequence was obtained. Typically specifies a FASTA\nformat file.", + "type": "string" + } + }, + "type": "object" + }, + "ReferenceBound": { + "description": "ReferenceBound records an upper bound for the starting coordinate of\nvariants in a particular reference.", + "id": "ReferenceBound", + "properties": { + "referenceName": { + "description": "The name of the reference associated with this reference bound.", "type": "string" }, + "upperBound": { + "description": "An upper bound (inclusive) on the starting coordinate of any\nvariant in the reference sequence.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "ReferenceSet": { + "description": "A reference set is a set of references which typically comprise a reference\nassembly for a species, such as `GRCh38` which is representative\nof the human genome. A reference set defines a common coordinate space for\ncomparing reference-aligned experimental data. A reference set contains 1 or\nmore references.\n\nFor more genomics resource definitions, see [Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)", + "id": "ReferenceSet", + "properties": { + "assemblyId": { + "description": "Public id of this reference set, such as `GRCh37`.", + "type": "string" + }, + "description": { + "description": "Free text description of this reference set.", + "type": "string" + }, + "id": { + "description": "The server-generated reference set ID, unique across all reference sets.", + "type": "string" + }, + "md5checksum": { + "description": "Order-independent MD5 checksum which identifies this reference set. The\nchecksum is computed by sorting all lower case hexidecimal string\n`reference.md5checksum` (for all reference in this set) in\nascending lexicographic order, concatenating, and taking the MD5 of that\nvalue. The resulting value is represented in lower case hexadecimal format.", + "type": "string" + }, + "ncbiTaxonId": { + "description": "ID from http://www.ncbi.nlm.nih.gov/taxonomy (for example, 9606 for human)\nindicating the species which this reference set is intended to model. Note\nthat contained references may specify a different `ncbiTaxonId`, as\nassemblies may contain reference sequences which do not belong to the\nmodeled species, for example EBV in a human reference genome.", + "format": "int32", + "type": "integer" + }, + "referenceIds": { + "description": "The IDs of the reference objects that are part of this set.\n`Reference.md5checksum` must be unique within this set.", + "items": { + "type": "string" + }, + "type": "array" + }, + "sourceAccessions": { + "description": "All known corresponding accession IDs in INSDC (GenBank/ENA/DDBJ) ideally\nwith a version number, for example `NC_000001.11`.", + "items": { + "type": "string" + }, + "type": "array" + }, + "sourceUri": { + "description": "The URI from which the references were obtained.", + "type": "string" + } + }, + "type": "object" + }, + "RuntimeMetadata": { + "description": "Runtime metadata that will be populated in the\nruntimeMetadata\nfield of the Operation associated with a RunPipeline execution.", + "id": "RuntimeMetadata", + "properties": { + "computeEngine": { + "$ref": "ComputeEngine", + "description": "Execution information specific to Google Compute Engine." + } + }, + "type": "object" + }, + "SearchAnnotationSetsRequest": { + "id": "SearchAnnotationSetsRequest", + "properties": { + "datasetIds": { + "description": "Required. The dataset IDs to search within. Caller must have `READ` access\nto these datasets.", + "items": { + "type": "string" + }, + "type": "array" + }, + "name": { + "description": "Only return annotations sets for which a substring of the name matches this\nstring (case insensitive).", + "type": "string" + }, + "pageSize": { + "description": "The maximum number of results to return in a single page. If unspecified,\ndefaults to 128. The maximum value is 1024.", + "format": "int32", + "type": "integer" + }, + "pageToken": { + "description": "The continuation token, which is used to page through large result sets.\nTo get the next page of results, set this parameter to the value of\n`nextPageToken` from the previous response.", + "type": "string" + }, + "referenceSetId": { + "description": "If specified, only annotation sets associated with the given reference set\nare returned.", + "type": "string" + }, + "types": { + "description": "If specified, only annotation sets that have any of these types are\nreturned.", + "enumDescriptions": [ + "", + "A `GENERIC` annotation type should be used when no other annotation\ntype will suffice. This represents an untyped annotation of the reference\ngenome.", + "A `VARIANT` annotation type.", + "A `GENE` annotation type represents the existence of a gene at the\nassociated reference coordinates. The start coordinate is typically the\ngene's transcription start site and the end is typically the end of the\ngene's last exon.", + "A `TRANSCRIPT` annotation type represents the assertion that a\nparticular region of the reference genome may be transcribed as RNA." + ], + "items": { + "enum": [ + "ANNOTATION_TYPE_UNSPECIFIED", + "GENERIC", + "VARIANT", + "GENE", + "TRANSCRIPT" + ], + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "SearchAnnotationSetsResponse": { + "id": "SearchAnnotationSetsResponse", + "properties": { + "annotationSets": { + "description": "The matching annotation sets.", + "items": { + "$ref": "AnnotationSet" + }, + "type": "array" + }, + "nextPageToken": { + "description": "The continuation token, which is used to page through large result sets.\nProvide this value in a subsequent request to return the next page of\nresults. This field will be empty if there aren't any additional results.", + "type": "string" + } + }, + "type": "object" + }, + "SearchAnnotationsRequest": { + "id": "SearchAnnotationsRequest", + "properties": { + "annotationSetIds": { + "description": "Required. The annotation sets to search within. The caller must have\n`READ` access to these annotation sets.\nAll queried annotation sets must have the same type.", + "items": { + "type": "string" + }, + "type": "array" + }, + "end": { + "description": "The end position of the range on the reference, 0-based exclusive. If\nreferenceId or\nreferenceName\nmust be specified, Defaults to the length of the reference.", + "format": "int64", + "type": "string" + }, + "pageSize": { + "description": "The maximum number of results to return in a single page. If unspecified,\ndefaults to 256. The maximum value is 2048.", + "format": "int32", + "type": "integer" + }, + "pageToken": { + "description": "The continuation token, which is used to page through large result sets.\nTo get the next page of results, set this parameter to the value of\n`nextPageToken` from the previous response.", + "type": "string" + }, + "referenceId": { + "description": "The ID of the reference to query.", + "type": "string" + }, + "referenceName": { + "description": "The name of the reference to query, within the reference set associated\nwith this query.", + "type": "string" + }, + "start": { + "description": "The start position of the range on the reference, 0-based inclusive. If\nspecified,\nreferenceId or\nreferenceName\nmust be specified. Defaults to 0.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "SearchAnnotationsResponse": { + "id": "SearchAnnotationsResponse", + "properties": { + "annotations": { + "description": "The matching annotations.", + "items": { + "$ref": "Annotation" + }, + "type": "array" + }, + "nextPageToken": { + "description": "The continuation token, which is used to page through large result sets.\nProvide this value in a subsequent request to return the next page of\nresults. This field will be empty if there aren't any additional results.", + "type": "string" + } + }, + "type": "object" + }, + "SearchCallSetsRequest": { + "description": "The call set search request.", + "id": "SearchCallSetsRequest", + "properties": { + "name": { + "description": "Only return call sets for which a substring of the name matches this\nstring.", + "type": "string" + }, + "pageSize": { + "description": "The maximum number of results to return in a single page. If unspecified,\ndefaults to 1024.", + "format": "int32", + "type": "integer" + }, + "pageToken": { + "description": "The continuation token, which is used to page through large result sets.\nTo get the next page of results, set this parameter to the value of\n`nextPageToken` from the previous response.", + "type": "string" + }, + "variantSetIds": { + "description": "Restrict the query to call sets within the given variant sets. At least one\nID must be provided.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "SearchCallSetsResponse": { + "description": "The call set search response.", + "id": "SearchCallSetsResponse", + "properties": { + "callSets": { + "description": "The list of matching call sets.", + "items": { + "$ref": "CallSet" + }, + "type": "array" + }, + "nextPageToken": { + "description": "The continuation token, which is used to page through large result sets.\nProvide this value in a subsequent request to return the next page of\nresults. This field will be empty if there aren't any additional results.", + "type": "string" + } + }, + "type": "object" + }, + "SearchReadGroupSetsRequest": { + "description": "The read group set search request.", + "id": "SearchReadGroupSetsRequest", + "properties": { + "datasetIds": { + "description": "Restricts this query to read group sets within the given datasets. At least\none ID must be provided.", + "items": { + "type": "string" + }, + "type": "array" + }, + "name": { + "description": "Only return read group sets for which a substring of the name matches this\nstring.", + "type": "string" + }, + "pageSize": { + "description": "The maximum number of results to return in a single page. If unspecified,\ndefaults to 256. The maximum value is 1024.", + "format": "int32", + "type": "integer" + }, + "pageToken": { + "description": "The continuation token, which is used to page through large result sets.\nTo get the next page of results, set this parameter to the value of\n`nextPageToken` from the previous response.", + "type": "string" + } + }, + "type": "object" + }, + "SearchReadGroupSetsResponse": { + "description": "The read group set search response.", + "id": "SearchReadGroupSetsResponse", + "properties": { + "nextPageToken": { + "description": "The continuation token, which is used to page through large result sets.\nProvide this value in a subsequent request to return the next page of\nresults. This field will be empty if there aren't any additional results.", + "type": "string" + }, + "readGroupSets": { + "description": "The list of matching read group sets.", + "items": { + "$ref": "ReadGroupSet" + }, + "type": "array" + } + }, + "type": "object" + }, + "SearchReadsRequest": { + "description": "The read search request.", + "id": "SearchReadsRequest", + "properties": { + "end": { + "description": "The end position of the range on the reference, 0-based exclusive. If\nspecified, `referenceName` must also be specified.", + "format": "int64", + "type": "string" + }, + "pageSize": { + "description": "The maximum number of results to return in a single page. If unspecified,\ndefaults to 256. The maximum value is 2048.", + "format": "int32", + "type": "integer" + }, + "pageToken": { + "description": "The continuation token, which is used to page through large result sets.\nTo get the next page of results, set this parameter to the value of\n`nextPageToken` from the previous response.", + "type": "string" + }, + "readGroupIds": { + "description": "The IDs of the read groups within which to search for reads. All specified\nread groups must belong to the same read group sets. Must specify one of\n`readGroupSetIds` or `readGroupIds`.", + "items": { + "type": "string" + }, + "type": "array" + }, + "readGroupSetIds": { + "description": "The IDs of the read groups sets within which to search for reads. All\nspecified read group sets must be aligned against a common set of reference\nsequences; this defines the genomic coordinates for the query. Must specify\none of `readGroupSetIds` or `readGroupIds`.", + "items": { + "type": "string" + }, + "type": "array" + }, + "referenceName": { + "description": "The reference sequence name, for example `chr1`, `1`, or `chrX`. If set to\n`*`, only unmapped reads are returned. If unspecified, all reads (mapped\nand unmapped) are returned.", + "type": "string" + }, + "start": { + "description": "The start position of the range on the reference, 0-based inclusive. If\nspecified, `referenceName` must also be specified.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "SearchReadsResponse": { + "description": "The read search response.", + "id": "SearchReadsResponse", + "properties": { + "alignments": { + "description": "The list of matching alignments sorted by mapped genomic coordinate,\nif any, ascending in position within the same reference. Unmapped reads,\nwhich have no position, are returned contiguously and are sorted in\nascending lexicographic order by fragment name.", + "items": { + "$ref": "Read" + }, + "type": "array" + }, + "nextPageToken": { + "description": "The continuation token, which is used to page through large result sets.\nProvide this value in a subsequent request to return the next page of\nresults. This field will be empty if there aren't any additional results.", + "type": "string" + } + }, + "type": "object" + }, + "SearchReferenceSetsRequest": { + "id": "SearchReferenceSetsRequest", + "properties": { + "accessions": { + "description": "If present, return reference sets for which a prefix of any of\nsourceAccessions\nmatch any of these strings. Accession numbers typically have a main number\nand a version, for example `NC_000001.11`.", + "items": { + "type": "string" + }, + "type": "array" + }, + "assemblyId": { + "description": "If present, return reference sets for which a substring of their\n`assemblyId` matches this string (case insensitive).", + "type": "string" + }, + "md5checksums": { + "description": "If present, return reference sets for which the\nmd5checksum matches exactly.", + "items": { + "type": "string" + }, + "type": "array" + }, + "pageSize": { + "description": "The maximum number of results to return in a single page. If unspecified,\ndefaults to 1024. The maximum value is 4096.", + "format": "int32", + "type": "integer" + }, + "pageToken": { + "description": "The continuation token, which is used to page through large result sets.\nTo get the next page of results, set this parameter to the value of\n`nextPageToken` from the previous response.", + "type": "string" + } + }, + "type": "object" + }, + "SearchReferenceSetsResponse": { + "id": "SearchReferenceSetsResponse", + "properties": { + "nextPageToken": { + "description": "The continuation token, which is used to page through large result sets.\nProvide this value in a subsequent request to return the next page of\nresults. This field will be empty if there aren't any additional results.", + "type": "string" + }, + "referenceSets": { + "description": "The matching references sets.", + "items": { + "$ref": "ReferenceSet" + }, + "type": "array" + } + }, + "type": "object" + }, + "SearchReferencesRequest": { + "id": "SearchReferencesRequest", + "properties": { + "accessions": { + "description": "If present, return references for which a prefix of any of\nsourceAccessions match\nany of these strings. Accession numbers typically have a main number and a\nversion, for example `GCF_000001405.26`.", + "items": { + "type": "string" + }, + "type": "array" + }, + "md5checksums": { + "description": "If present, return references for which the\nmd5checksum matches exactly.", + "items": { + "type": "string" + }, + "type": "array" + }, + "pageSize": { + "description": "The maximum number of results to return in a single page. If unspecified,\ndefaults to 1024. The maximum value is 4096.", + "format": "int32", + "type": "integer" + }, + "pageToken": { + "description": "The continuation token, which is used to page through large result sets.\nTo get the next page of results, set this parameter to the value of\n`nextPageToken` from the previous response.", + "type": "string" + }, + "referenceSetId": { + "description": "If present, return only references which belong to this reference set.", + "type": "string" + } + }, + "type": "object" + }, + "SearchReferencesResponse": { + "id": "SearchReferencesResponse", + "properties": { + "nextPageToken": { + "description": "The continuation token, which is used to page through large result sets.\nProvide this value in a subsequent request to return the next page of\nresults. This field will be empty if there aren't any additional results.", + "type": "string" + }, + "references": { + "description": "The matching references.", + "items": { + "$ref": "Reference" + }, + "type": "array" + } + }, + "type": "object" + }, + "SearchVariantSetsRequest": { + "description": "The search variant sets request.", + "id": "SearchVariantSetsRequest", + "properties": { + "datasetIds": { + "description": "Exactly one dataset ID must be provided here. Only variant sets which\nbelong to this dataset will be returned.", + "items": { + "type": "string" + }, + "type": "array" + }, + "pageSize": { + "description": "The maximum number of results to return in a single page. If unspecified,\ndefaults to 1024.", + "format": "int32", + "type": "integer" + }, + "pageToken": { + "description": "The continuation token, which is used to page through large result sets.\nTo get the next page of results, set this parameter to the value of\n`nextPageToken` from the previous response.", + "type": "string" + } + }, + "type": "object" + }, + "SearchVariantSetsResponse": { + "description": "The search variant sets response.", + "id": "SearchVariantSetsResponse", + "properties": { + "nextPageToken": { + "description": "The continuation token, which is used to page through large result sets.\nProvide this value in a subsequent request to return the next page of\nresults. This field will be empty if there aren't any additional results.", + "type": "string" + }, + "variantSets": { + "description": "The variant sets belonging to the requested dataset.", + "items": { + "$ref": "VariantSet" + }, + "type": "array" + } + }, + "type": "object" + }, + "SearchVariantsRequest": { + "description": "The variant search request.", + "id": "SearchVariantsRequest", + "properties": { + "callSetIds": { + "description": "Only return variant calls which belong to call sets with these ids.\nLeaving this blank returns all variant calls. If a variant has no\ncalls belonging to any of these call sets, it won't be returned at all.", + "items": { + "type": "string" + }, + "type": "array" + }, + "end": { + "description": "The end of the window, 0-based exclusive. If unspecified or 0, defaults to\nthe length of the reference.", + "format": "int64", + "type": "string" + }, + "maxCalls": { + "description": "The maximum number of calls to return in a single page. Note that this\nlimit may be exceeded in the event that a matching variant contains more\ncalls than the requested maximum. If unspecified, defaults to 5000. The\nmaximum value is 10000.", + "format": "int32", + "type": "integer" + }, + "pageSize": { + "description": "The maximum number of variants to return in a single page. If unspecified,\ndefaults to 5000. The maximum value is 10000.", + "format": "int32", + "type": "integer" + }, + "pageToken": { + "description": "The continuation token, which is used to page through large result sets.\nTo get the next page of results, set this parameter to the value of\n`nextPageToken` from the previous response.", + "type": "string" + }, + "referenceName": { + "description": "Required. Only return variants in this reference sequence.", + "type": "string" + }, + "start": { + "description": "The beginning of the window (0-based, inclusive) for which\noverlapping variants should be returned. If unspecified, defaults to 0.", + "format": "int64", + "type": "string" + }, + "variantName": { + "description": "Only return variants which have exactly this name.", + "type": "string" + }, + "variantSetIds": { + "description": "At most one variant set ID must be provided. Only variants from this\nvariant set will be returned. If omitted, a call set id must be included in\nthe request.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "SearchVariantsResponse": { + "description": "The variant search response.", + "id": "SearchVariantsResponse", + "properties": { + "nextPageToken": { + "description": "The continuation token, which is used to page through large result sets.\nProvide this value in a subsequent request to return the next page of\nresults. This field will be empty if there aren't any additional results.", + "type": "string" + }, + "variants": { + "description": "The list of matching Variants.", + "items": { + "$ref": "Variant" + }, + "type": "array" + } + }, + "type": "object" + }, + "SetIamPolicyRequest": { + "description": "Request message for `SetIamPolicy` method.", + "id": "SetIamPolicyRequest", + "properties": { + "policy": { + "$ref": "Policy", + "description": "REQUIRED: The complete policy to be applied to the `resource`. The size of\nthe policy is limited to a few 10s of KB. An empty policy is a\nvalid policy but certain Cloud Platform services (such as Projects)\nmight reject them." + } + }, + "type": "object" + }, + "Status": { + "description": "The `Status` type defines a logical error model that is suitable for different\nprogramming environments, including REST APIs and RPC APIs. It is used by\n[gRPC](https://github.com/grpc). The error model is designed to be:\n\n- Simple to use and understand for most users\n- Flexible enough to meet unexpected needs\n\n# Overview\n\nThe `Status` message contains three pieces of data: error code, error message,\nand error details. The error code should be an enum value of\ngoogle.rpc.Code, but it may accept additional error codes if needed. The\nerror message should be a developer-facing English message that helps\ndevelopers *understand* and *resolve* the error. If a localized user-facing\nerror message is needed, put the localized message in the error details or\nlocalize it in the client. The optional error details may contain arbitrary\ninformation about the error. There is a predefined set of error detail types\nin the package `google.rpc` that can be used for common error conditions.\n\n# Language mapping\n\nThe `Status` message is the logical representation of the error model, but it\nis not necessarily the actual wire format. When the `Status` message is\nexposed in different client libraries and different wire protocols, it can be\nmapped differently. For example, it will likely be mapped to some exceptions\nin Java, but more likely mapped to some error codes in C.\n\n# Other uses\n\nThe error model and the `Status` message can be used in a variety of\nenvironments, either with or without APIs, to provide a\nconsistent developer experience across different environments.\n\nExample uses of this error model include:\n\n- Partial errors. If a service needs to return partial errors to the client,\n it may embed the `Status` in the normal response to indicate the partial\n errors.\n\n- Workflow errors. A typical workflow has multiple steps. Each step may\n have a `Status` message for error reporting.\n\n- Batch operations. If a client uses batch request and batch response, the\n `Status` message should be used directly inside batch response, one for\n each error sub-response.\n\n- Asynchronous operations. If an API call embeds asynchronous operation\n results in its response, the status of those operations should be\n represented directly using the `Status` message.\n\n- Logging. If some API errors are stored in logs, the message `Status` could\n be used directly after any stripping needed for security/privacy reasons.", + "id": "Status", + "properties": { + "code": { + "description": "The status code, which should be an enum value of google.rpc.Code.", + "format": "int32", + "type": "integer" + }, + "details": { + "description": "A list of messages that carry the error details. There is a common set of\nmessage types for APIs to use.", + "items": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "A developer-facing error message, which should be in English. Any\nuser-facing error message should be localized and sent in the\ngoogle.rpc.Status.details field, or localized by the client.", + "type": "string" + } + }, + "type": "object" + }, + "TestIamPermissionsRequest": { + "description": "Request message for `TestIamPermissions` method.", + "id": "TestIamPermissionsRequest", + "properties": { + "permissions": { + "description": "REQUIRED: The set of permissions to check for the 'resource'.\nPermissions with wildcards (such as '*' or 'storage.*') are not allowed.\nAllowed permissions are\u0026#58;\n\n* `genomics.datasets.create`\n* `genomics.datasets.delete`\n* `genomics.datasets.get`\n* `genomics.datasets.list`\n* `genomics.datasets.update`\n* `genomics.datasets.getIamPolicy`\n* `genomics.datasets.setIamPolicy`", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "TestIamPermissionsResponse": { + "description": "Response message for `TestIamPermissions` method.", + "id": "TestIamPermissionsResponse", + "properties": { + "permissions": { + "description": "A subset of `TestPermissionsRequest.permissions` that the caller is\nallowed.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "Transcript": { + "description": "A transcript represents the assertion that a particular region of the\nreference genome may be transcribed as RNA.", + "id": "Transcript", + "properties": { + "codingSequence": { + "$ref": "CodingSequence", + "description": "The range of the coding sequence for this transcript, if any. To determine\nthe exact ranges of coding sequence, intersect this range with those of the\nexons, if any. If there are any\nexons, the\ncodingSequence must start\nand end within them.\n\nNote that in some cases, the reference genome will not exactly match the\nobserved mRNA transcript e.g. due to variance in the source genome from\nreference. In these cases,\nexon.frame will not necessarily\nmatch the expected reference reading frame and coding exon reference bases\ncannot necessarily be concatenated to produce the original transcript mRNA." + }, + "exons": { + "description": "The \u003ca href=\"http://en.wikipedia.org/wiki/Exon\"\u003eexons\u003c/a\u003e that compose\nthis transcript. This field should be unset for genomes where transcript\nsplicing does not occur, for example prokaryotes.\n\nIntrons are regions of the transcript that are not included in the\nspliced RNA product. Though not explicitly modeled here, intron ranges can\nbe deduced; all regions of this transcript that are not exons are introns.\n\nExonic sequences do not necessarily code for a translational product\n(amino acids). Only the regions of exons bounded by the\ncodingSequence correspond\nto coding DNA sequence.\n\nExons are ordered by start position and may not overlap.", + "items": { + "$ref": "Exon" + }, + "type": "array" + }, + "geneId": { + "description": "The annotation ID of the gene from which this transcript is transcribed.", + "type": "string" + } + }, + "type": "object" + }, + "UndeleteDatasetRequest": { + "id": "UndeleteDatasetRequest", + "properties": {}, + "type": "object" + }, + "UnexpectedExitStatusEvent": { + "description": "This event is generated when the execution of a container results in a\nnon-zero exit status that was not otherwise ignored. Execution will\ncontinue, but only actions that are flagged as ALWAYS_RUN will be executed:\nother actions will be skipped.", + "id": "UnexpectedExitStatusEvent", + "properties": { + "actionId": { + "description": "The numeric ID of the action that started the container.", + "format": "int32", + "type": "integer" + }, + "exitStatus": { + "description": "The exit status of the container.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "Variant": { + "description": "A variant represents a change in DNA sequence relative to a reference\nsequence. For example, a variant could represent a SNP or an insertion.\nVariants belong to a variant set.\n\nFor more genomics resource definitions, see [Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)\n\nEach of the calls on a variant represent a determination of genotype with\nrespect to that variant. For example, a call might assign probability of 0.32\nto the occurrence of a SNP named rs1234 in a sample named NA12345. A call\nbelongs to a call set, which contains related calls typically from one\nsample.", + "id": "Variant", + "properties": { + "alternateBases": { + "description": "The bases that appear instead of the reference bases.", + "items": { + "type": "string" + }, + "type": "array" + }, + "calls": { + "description": "The variant calls for this particular variant. Each one represents the\ndetermination of genotype with respect to this variant.", + "items": { + "$ref": "VariantCall" + }, + "type": "array" + }, + "created": { + "description": "The date this variant was created, in milliseconds from the epoch.", + "format": "int64", + "type": "string" + }, + "end": { + "description": "The end position (0-based) of this variant. This corresponds to the first\nbase after the last base in the reference allele. So, the length of\nthe reference allele is (end - start). This is useful for variants\nthat don't explicitly give alternate bases, for example large deletions.", + "format": "int64", + "type": "string" + }, + "filter": { + "description": "A list of filters (normally quality filters) this variant has failed.\n`PASS` indicates this variant has passed all filters.", + "items": { + "type": "string" + }, + "type": "array" + }, + "id": { + "description": "The server-generated variant ID, unique across all variants.", + "type": "string" + }, + "info": { + "additionalProperties": { + "items": { + "type": "any" + }, + "type": "array" + }, + "description": "A map of additional variant information. This must be of the form\nmap\u003cstring, string[]\u003e (string key mapping to a list of string values).", + "type": "object" + }, + "names": { + "description": "Names for the variant, for example a RefSNP ID.", + "items": { + "type": "string" + }, + "type": "array" + }, + "quality": { + "description": "A measure of how likely this variant is to be real.\nA higher value is better.", + "format": "double", + "type": "number" + }, + "referenceBases": { + "description": "The reference bases for this variant. They start at the given\nposition.", + "type": "string" + }, + "referenceName": { + "description": "The reference on which this variant occurs.\n(such as `chr20` or `X`)", + "type": "string" + }, + "start": { + "description": "The position at which this variant occurs (0-based).\nThis corresponds to the first base of the string of reference bases.", + "format": "int64", + "type": "string" + }, + "variantSetId": { + "description": "The ID of the variant set this variant belongs to.", + "type": "string" + } + }, + "type": "object" + }, + "VariantAnnotation": { + "id": "VariantAnnotation", + "properties": { "alternateBases": { "description": "The alternate allele for this variant. If multiple alternate alleles\nexist at this location, create a separate variant for each one, as they\nmay represent distinct conditions.", "type": "string" }, - "geneId": { - "description": "Google annotation ID of the gene affected by this variant. This should\nbe provided when the variant is created.", - "type": "string" - }, "clinicalSignificance": { - "type": "string", - "enumDescriptions": [ - "", - "`OTHER` should be used when no other clinical significance\nvalue will suffice.", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "`MULTIPLE_REPORTED` should be used when multiple clinical\nsignficances are reported for a variant. The original clinical\nsignificance values may be provided in the `info` field." - ], + "description": "Describes the clinical significance of a variant.\nIt is adapted from the ClinVar controlled vocabulary for clinical\nsignificance described at:\nhttp://www.ncbi.nlm.nih.gov/clinvar/docs/clinsig/", "enum": [ "CLINICAL_SIGNIFICANCE_UNSPECIFIED", "CLINICAL_SIGNIFICANCE_OTHER", @@ -3475,343 +3754,270 @@ "PROTECTIVE", "MULTIPLE_REPORTED" ], - "description": "Describes the clinical significance of a variant.\nIt is adapted from the ClinVar controlled vocabulary for clinical\nsignificance described at:\nhttp://www.ncbi.nlm.nih.gov/clinvar/docs/clinsig/" - } - }, - "id": "VariantAnnotation" - }, - "ExportVariantSetRequest": { - "properties": { - "callSetIds": { - "description": "If provided, only variant call information from the specified call sets\nwill be exported. By default all variant calls are exported.", - "type": "array", - "items": { - "type": "string" - } - }, - "projectId": { - "description": "Required. The Google Cloud project ID that owns the destination\nBigQuery dataset. The caller must have WRITE access to this project. This\nproject will also own the resulting export job.", - "type": "string" - }, - "format": { "enumDescriptions": [ "", - "Export the data to Google BigQuery." + "`OTHER` should be used when no other clinical significance\nvalue will suffice.", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "`MULTIPLE_REPORTED` should be used when multiple clinical\nsignficances are reported for a variant. The original clinical\nsignificance values may be provided in the `info` field." ], + "type": "string" + }, + "conditions": { + "description": "The set of conditions associated with this variant.\nA condition describes the way a variant influences human health.", + "items": { + "$ref": "ClinicalCondition" + }, + "type": "array" + }, + "effect": { + "description": "Effect of the variant on the coding sequence.", "enum": [ - "FORMAT_UNSPECIFIED", - "FORMAT_BIGQUERY" + "EFFECT_UNSPECIFIED", + "EFFECT_OTHER", + "FRAMESHIFT", + "FRAME_PRESERVING_INDEL", + "SYNONYMOUS_SNP", + "NONSYNONYMOUS_SNP", + "STOP_GAIN", + "STOP_LOSS", + "SPLICE_SITE_DISRUPTION" + ], + "enumDescriptions": [ + "", + "`EFFECT_OTHER` should be used when no other Effect\nwill suffice.", + "`FRAMESHIFT` indicates a mutation in which the insertion or\ndeletion of nucleotides resulted in a frameshift change.", + "`FRAME_PRESERVING_INDEL` indicates a mutation in which a\nmultiple of three nucleotides has been inserted or deleted, resulting\nin no change to the reading frame of the coding sequence.", + "`SYNONYMOUS_SNP` indicates a single nucleotide polymorphism\nmutation that results in no amino acid change.", + "`NONSYNONYMOUS_SNP` indicates a single nucleotide\npolymorphism mutation that results in an amino acid change.", + "`STOP_GAIN` indicates a mutation that leads to the creation\nof a stop codon at the variant site. Frameshift mutations creating\ndownstream stop codons do not count as `STOP_GAIN`.", + "`STOP_LOSS` indicates a mutation that eliminates a\nstop codon at the variant site.", + "`SPLICE_SITE_DISRUPTION` indicates that this variant is\nfound in a splice site for the associated transcript, and alters the\nnormal splicing pattern." ], - "description": "The format for the exported data.", "type": "string" }, - "bigqueryDataset": { - "type": "string", - "description": "Required. The BigQuery dataset to export data to. This dataset must already\nexist. Note that this is distinct from the Genomics concept of \"dataset\"." - }, - "bigqueryTable": { - "description": "Required. The BigQuery table to export data to.\nIf the table doesn't exist, it will be created. If it already exists, it\nwill be overwritten.", + "geneId": { + "description": "Google annotation ID of the gene affected by this variant. This should\nbe provided when the variant is created.", "type": "string" - } - }, - "id": "ExportVariantSetRequest", - "description": "The variant data export request.", - "type": "object" - }, - "SearchAnnotationsRequest": { - "type": "object", - "properties": { - "annotationSetIds": { - "type": "array", + }, + "transcriptIds": { + "description": "Google annotation IDs of the transcripts affected by this variant. These\nshould be provided when the variant is created.", "items": { "type": "string" }, - "description": "Required. The annotation sets to search within. The caller must have\n`READ` access to these annotation sets.\nAll queried annotation sets must have the same type." + "type": "array" }, - "referenceName": { - "description": "The name of the reference to query, within the reference set associated\nwith this query.", + "type": { + "description": "Type has been adapted from ClinVar's list of variant types.", + "enum": [ + "TYPE_UNSPECIFIED", + "TYPE_OTHER", + "INSERTION", + "DELETION", + "SUBSTITUTION", + "SNP", + "STRUCTURAL", + "CNV" + ], + "enumDescriptions": [ + "", + "`TYPE_OTHER` should be used when no other Type will suffice.\nFurther explanation of the variant type may be included in the\ninfo field.", + "`INSERTION` indicates an insertion.", + "`DELETION` indicates a deletion.", + "`SUBSTITUTION` indicates a block substitution of\ntwo or more nucleotides.", + "`SNP` indicates a single nucleotide polymorphism.", + "`STRUCTURAL` indicates a large structural variant,\nincluding chromosomal fusions, inversions, etc.", + "`CNV` indicates a variation in copy number." + ], "type": "string" - }, - "referenceId": { - "description": "The ID of the reference to query.", - "type": "string" - }, - "end": { - "description": "The end position of the range on the reference, 0-based exclusive. If\nreferenceId or\nreferenceName\nmust be specified, Defaults to the length of the reference.", - "format": "int64", - "type": "string" - }, - "pageToken": { - "description": "The continuation token, which is used to page through large result sets.\nTo get the next page of results, set this parameter to the value of\n`nextPageToken` from the previous response.", - "type": "string" - }, - "pageSize": { - "description": "The maximum number of results to return in a single page. If unspecified,\ndefaults to 256. The maximum value is 2048.", - "format": "int32", - "type": "integer" - }, - "start": { - "type": "string", - "description": "The start position of the range on the reference, 0-based inclusive. If\nspecified,\nreferenceId or\nreferenceName\nmust be specified. Defaults to 0.", - "format": "int64" } }, - "id": "SearchAnnotationsRequest" + "type": "object" }, - "OperationEvent": { + "VariantCall": { + "description": "A call represents the determination of genotype with respect to a particular\nvariant. It may include associated information such as quality and phasing.\nFor example, a call might assign a probability of 0.32 to the occurrence of\na SNP named rs1234 in a call set with the name NA12345.", + "id": "VariantCall", "properties": { - "startTime": { - "description": "Optional time of when event started.", - "format": "google-datetime", + "callSetId": { + "description": "The ID of the call set this variant call belongs to.", + "type": "string" + }, + "callSetName": { + "description": "The name of the call set this variant call belongs to.", + "type": "string" + }, + "genotype": { + "description": "The genotype of this variant call. Each value represents either the value\nof the `referenceBases` field or a 1-based index into\n`alternateBases`. If a variant had a `referenceBases`\nvalue of `T` and an `alternateBases`\nvalue of `[\"A\", \"C\"]`, and the `genotype` was\n`[2, 1]`, that would mean the call\nrepresented the heterozygous value `CA` for this variant.\nIf the `genotype` was instead `[0, 1]`, the\nrepresented value would be `TA`. Ordering of the\ngenotype values is important if the `phaseset` is present.\nIf a genotype is not called (that is, a `.` is present in the\nGT string) -1 is returned.", + "items": { + "format": "int32", + "type": "integer" + }, + "type": "array" + }, + "genotypeLikelihood": { + "description": "The genotype likelihoods for this variant call. Each array entry\nrepresents how likely a specific genotype is for this call. The value\nordering is defined by the GL tag in the VCF spec.\nIf Phred-scaled genotype likelihood scores (PL) are available and\nlog10(P) genotype likelihood scores (GL) are not, PL scores are converted\nto GL scores. If both are available, PL scores are stored in `info`.", + "items": { + "format": "double", + "type": "number" + }, + "type": "array" + }, + "info": { + "additionalProperties": { + "items": { + "type": "any" + }, + "type": "array" + }, + "description": "A map of additional variant call information. This must be of the form\nmap\u003cstring, string[]\u003e (string key mapping to a list of string values).", + "type": "object" + }, + "phaseset": { + "description": "If this field is present, this variant call's genotype ordering implies\nthe phase of the bases and is consistent with any other variant calls in\nthe same reference sequence which have the same phaseset value.\nWhen importing data from VCF, if the genotype data was phased but no\nphase set was specified this field will be set to `*`.", + "type": "string" + } + }, + "type": "object" + }, + "VariantSet": { + "description": "A variant set is a collection of call sets and variants. It contains summary\nstatistics of those contents. A variant set belongs to a dataset.\n\nFor more genomics resource definitions, see [Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)", + "id": "VariantSet", + "properties": { + "datasetId": { + "description": "The dataset to which this variant set belongs.", "type": "string" }, "description": { - "description": "Required description of event.", - "type": "string" - }, - "endTime": { - "type": "string", - "description": "Optional time of when event finished. An event can have a start time and no\nfinish time. If an event has a finish time, there must be a start time.", - "format": "google-datetime" - } - }, - "id": "OperationEvent", - "description": "An event that occurred during an Operation.", - "type": "object" - }, - "CodingSequence": { - "type": "object", - "properties": { - "start": { - "type": "string", - "description": "The start of the coding sequence on this annotation's reference sequence,\n0-based inclusive. Note that this position is relative to the reference\nstart, and *not* the containing annotation start.", - "format": "int64" - }, - "end": { - "description": "The end of the coding sequence on this annotation's reference sequence,\n0-based exclusive. Note that this position is relative to the reference\nstart, and *not* the containing annotation start.", - "format": "int64", - "type": "string" - } - }, - "id": "CodingSequence" - }, - "TestIamPermissionsResponse": { - "description": "Response message for `TestIamPermissions` method.", - "type": "object", - "properties": { - "permissions": { - "description": "A subset of `TestPermissionsRequest.permissions` that the caller is\nallowed.", - "type": "array", - "items": { - "type": "string" - } - } - }, - "id": "TestIamPermissionsResponse" - }, - "GetIamPolicyRequest": { - "id": "GetIamPolicyRequest", - "description": "Request message for `GetIamPolicy` method.", - "type": "object", - "properties": {} - }, - "SearchReferencesResponse": { - "type": "object", - "properties": { - "references": { - "description": "The matching references.", - "type": "array", - "items": { - "$ref": "Reference" - } - }, - "nextPageToken": { - "description": "The continuation token, which is used to page through large result sets.\nProvide this value in a subsequent request to return the next page of\nresults. This field will be empty if there aren't any additional results.", - "type": "string" - } - }, - "id": "SearchReferencesResponse" - }, - "SearchAnnotationSetsRequest": { - "id": "SearchAnnotationSetsRequest", - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "Only return annotations sets for which a substring of the name matches this\nstring (case insensitive)." - }, - "referenceSetId": { - "description": "If specified, only annotation sets associated with the given reference set\nare returned.", - "type": "string" - }, - "pageToken": { - "description": "The continuation token, which is used to page through large result sets.\nTo get the next page of results, set this parameter to the value of\n`nextPageToken` from the previous response.", - "type": "string" - }, - "pageSize": { - "description": "The maximum number of results to return in a single page. If unspecified,\ndefaults to 128. The maximum value is 1024.", - "format": "int32", - "type": "integer" - }, - "datasetIds": { - "description": "Required. The dataset IDs to search within. Caller must have `READ` access\nto these datasets.", - "type": "array", - "items": { - "type": "string" - } - }, - "types": { - "description": "If specified, only annotation sets that have any of these types are\nreturned.", - "type": "array", - "items": { - "enum": [ - "ANNOTATION_TYPE_UNSPECIFIED", - "GENERIC", - "VARIANT", - "GENE", - "TRANSCRIPT" - ], - "type": "string" - }, - "enumDescriptions": [ - "", - "A `GENERIC` annotation type should be used when no other annotation\ntype will suffice. This represents an untyped annotation of the reference\ngenome.", - "A `VARIANT` annotation type.", - "A `GENE` annotation type represents the existence of a gene at the\nassociated reference coordinates. The start coordinate is typically the\ngene's transcription start site and the end is typically the end of the\ngene's last exon.", - "A `TRANSCRIPT` annotation type represents the assertion that a\nparticular region of the reference genome may be transcribed as RNA." - ] - } - } - }, - "SearchReadGroupSetsResponse": { - "id": "SearchReadGroupSetsResponse", - "description": "The read group set search response.", - "type": "object", - "properties": { - "readGroupSets": { - "description": "The list of matching read group sets.", - "type": "array", - "items": { - "$ref": "ReadGroupSet" - } - }, - "nextPageToken": { - "type": "string", - "description": "The continuation token, which is used to page through large result sets.\nProvide this value in a subsequent request to return the next page of\nresults. This field will be empty if there aren't any additional results." - } - } - }, - "LinearAlignment": { - "id": "LinearAlignment", - "description": "A linear alignment can be represented by one CIGAR string. Describes the\nmapped position and local alignment of the read to the reference.", - "type": "object", - "properties": { - "position": { - "$ref": "Position", - "description": "The position of this alignment." - }, - "cigar": { - "description": "Represents the local alignment of this sequence (alignment matches, indels,\netc) against the reference.", - "type": "array", - "items": { - "$ref": "CigarUnit" - } - }, - "mappingQuality": { - "description": "The mapping quality of this alignment. Represents how likely\nthe read maps to this position as opposed to other locations.\n\nSpecifically, this is -10 log10 Pr(mapping position is wrong), rounded to\nthe nearest integer.", - "format": "int32", - "type": "integer" - } - } - }, - "SearchReferencesRequest": { - "type": "object", - "properties": { - "accessions": { - "description": "If present, return references for which a prefix of any of\nsourceAccessions match\nany of these strings. Accession numbers typically have a main number and a\nversion, for example `GCF_000001405.26`.", - "type": "array", - "items": { - "type": "string" - } - }, - "pageToken": { - "description": "The continuation token, which is used to page through large result sets.\nTo get the next page of results, set this parameter to the value of\n`nextPageToken` from the previous response.", - "type": "string" - }, - "referenceSetId": { - "description": "If present, return only references which belong to this reference set.", - "type": "string" - }, - "pageSize": { - "description": "The maximum number of results to return in a single page. If unspecified,\ndefaults to 1024. The maximum value is 4096.", - "format": "int32", - "type": "integer" - }, - "md5checksums": { - "description": "If present, return references for which the\nmd5checksum matches exactly.", - "type": "array", - "items": { - "type": "string" - } - } - }, - "id": "SearchReferencesRequest" - }, - "Dataset": { - "description": "A Dataset is a collection of genomic data.\n\nFor more genomics resource definitions, see [Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)", - "type": "object", - "properties": { - "name": { - "description": "The dataset name.", - "type": "string" - }, - "projectId": { - "description": "The Google Cloud project ID that this dataset belongs to.", + "description": "A textual description of this variant set.", "type": "string" }, "id": { - "description": "The server-generated dataset ID, unique across all datasets.", + "description": "The server-generated variant set ID, unique across all variant sets.", "type": "string" }, - "createTime": { - "description": "The time this dataset was created, in seconds from the epoch.", - "format": "google-datetime", + "metadata": { + "description": "The metadata associated with this variant set.", + "items": { + "$ref": "VariantSetMetadata" + }, + "type": "array" + }, + "name": { + "description": "User-specified, mutable name.", + "type": "string" + }, + "referenceBounds": { + "description": "A list of all references used by the variants in a variant set\nwith associated coordinate upper bounds for each one.", + "items": { + "$ref": "ReferenceBound" + }, + "type": "array" + }, + "referenceSetId": { + "description": "The reference set to which the variant set is mapped. The reference set\ndescribes the alignment provenance of the variant set, while the\n`referenceBounds` describe the shape of the actual variant data. The\nreference set's reference names are a superset of those found in the\n`referenceBounds`.\n\nFor example, given a variant set that is mapped to the GRCh38 reference set\nand contains a single variant on reference 'X', `referenceBounds` would\ncontain only an entry for 'X', while the associated reference set\nenumerates all possible references: '1', '2', 'X', 'Y', 'MT', etc.", "type": "string" } }, - "id": "Dataset" - } - }, - "protocol": "rest", - "icons": { - "x32": "http://www.google.com/images/icons/product/search-32.gif", - "x16": "http://www.google.com/images/icons/product/search-16.gif" - }, - "version": "v1", - "baseUrl": "https://genomics.googleapis.com/", - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/bigquery": { - "description": "View and manage your data in Google BigQuery" + "type": "object" + }, + "VariantSetMetadata": { + "description": "Metadata describes a single piece of variant call metadata.\nThese data include a top level key and either a single value string (value)\nor a list of key-value pairs (info.)\nValue and info are mutually exclusive.", + "id": "VariantSetMetadata", + "properties": { + "description": { + "description": "A textual description of this metadata.", + "type": "string" }, - "https://www.googleapis.com/auth/devstorage.read_write": { - "description": "Manage your data in Google Cloud Storage" + "id": { + "description": "User-provided ID field, not enforced by this API.\nTwo or more pieces of structured metadata with identical\nid and key fields are considered equivalent.", + "type": "string" }, - "https://www.googleapis.com/auth/cloud-platform": { - "description": "View and manage your data across Google Cloud Platform services" + "info": { + "additionalProperties": { + "items": { + "type": "any" + }, + "type": "array" + }, + "description": "Remaining structured metadata key-value pairs. This must be of the form\nmap\u003cstring, string[]\u003e (string key mapping to a list of string values).", + "type": "object" }, - "https://www.googleapis.com/auth/genomics.readonly": { - "description": "View Genomics data" + "key": { + "description": "The top-level key.", + "type": "string" }, - "https://www.googleapis.com/auth/genomics": { - "description": "View and manage Genomics data" + "number": { + "description": "The number of values that can be included in a field described by this\nmetadata.", + "type": "string" + }, + "type": { + "description": "The type of data. Possible types include: Integer, Float,\nFlag, Character, and String.", + "enum": [ + "TYPE_UNSPECIFIED", + "INTEGER", + "FLOAT", + "FLAG", + "CHARACTER", + "STRING" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "value": { + "description": "The value field for simple metadata", + "type": "string" } - } + }, + "type": "object" + }, + "WorkerAssignedEvent": { + "description": "This event is generated once a worker VM has been assigned to run the\npipeline.", + "id": "WorkerAssignedEvent", + "properties": { + "instance": { + "description": "The worker's instance name.", + "type": "string" + }, + "zone": { + "description": "The zone the worker is running in.", + "type": "string" + } + }, + "type": "object" + }, + "WorkerReleasedEvent": { + "description": "This event is generated when the worker VM that was assigned to the pipeline\nhas been released (i.e., deleted).", + "id": "WorkerReleasedEvent", + "properties": { + "instance": { + "description": "The worker's instance name.", + "type": "string" + }, + "zone": { + "description": "The zone the worker was running in.", + "type": "string" + } + }, + "type": "object" } }, - "kind": "discovery#restDescription", - "description": "Upload, process, query, and search Genomics data in the cloud.", "servicePath": "", - "rootUrl": "https://genomics.googleapis.com/" -} + "title": "Genomics API", + "version": "v1" +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/genomics/v1/genomics-gen.go b/vendor/google.golang.org/api/genomics/v1/genomics-gen.go index 424abd8e3..fb7787997 100644 --- a/vendor/google.golang.org/api/genomics/v1/genomics-gen.go +++ b/vendor/google.golang.org/api/genomics/v1/genomics-gen.go @@ -873,6 +873,83 @@ func (s *ComputeEngine) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// ContainerStartedEvent: This event is generated when a container +// starts. +type ContainerStartedEvent struct { + // ActionId: The numeric ID of the action that started this container. + ActionId int64 `json:"actionId,omitempty"` + + // IpAddress: The public IP address that can be used to connect to the + // container. This + // field is only populated when at least one port mapping is present. + // If the + // instance was created with a private address this field will be empty + // even + // if port mappings exist. + IpAddress string `json:"ipAddress,omitempty"` + + // PortMappings: The container to host port mappings installed for this + // container. This + // set will contain any ports exposed using the PUBLISH_EXPOSED_PORTS + // flag as + // well as any specified in the Action definition. + PortMappings map[string]int64 `json:"portMappings,omitempty"` + + // ForceSendFields is a list of field names (e.g. "ActionId") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "ActionId") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *ContainerStartedEvent) MarshalJSON() ([]byte, error) { + type NoMethod ContainerStartedEvent + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// ContainerStoppedEvent: This event is generated when a container +// exits. +type ContainerStoppedEvent struct { + // ActionId: The numeric ID of the action that started this container. + ActionId int64 `json:"actionId,omitempty"` + + // ExitStatus: The exit status of the container. + ExitStatus int64 `json:"exitStatus,omitempty"` + + // ForceSendFields is a list of field names (e.g. "ActionId") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "ActionId") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *ContainerStoppedEvent) MarshalJSON() ([]byte, error) { + type NoMethod ContainerStoppedEvent + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // CoverageBucket: A bucket over which read coverage has been // precomputed. A bucket corresponds // to a specific range of the reference sequence. @@ -969,6 +1046,49 @@ func (s *Dataset) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// DelayedEvent: This event is generated whenever a resource limitation +// or transient error +// delays execution of a pipeline that was otherwise ready to run. +type DelayedEvent struct { + // Cause: A textual description of the cause of the delay. The string + // may change + // without notice since it is often generated by another service (such + // as + // Compute Engine). + Cause string `json:"cause,omitempty"` + + // Metrics: If the delay was caused by a resource shortage, this field + // lists the + // Compute Engine metrics that are preventing this operation from + // running + // (for example, CPUS or INSTANCES). If the particular metric is not + // known, + // a single UNKNOWN metric will be present. + Metrics []string `json:"metrics,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Cause") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Cause") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *DelayedEvent) MarshalJSON() ([]byte, error) { + type NoMethod DelayedEvent + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // Empty: A generic empty message that you can re-use to avoid defining // duplicated // empty messages in your APIs. A typical example is to use it as the @@ -1017,6 +1137,45 @@ func (s *Entry) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// Event: Event carries information about events that occur during +// pipeline execution. +type Event struct { + // Description: A human readable description of the event. Note that + // these strings may + // change at any time without notice. Any application logic must use + // the + // information in the details field. + Description string `json:"description,omitempty"` + + // Details: Machine readable details about the event. + Details googleapi.RawMessage `json:"details,omitempty"` + + // Timestamp: The time that the event occurred. + Timestamp string `json:"timestamp,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Description") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Description") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *Event) MarshalJSON() ([]byte, error) { + type NoMethod Event + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + type Exon struct { // End: The end position of the exon on this annotation's reference // sequence, @@ -1256,6 +1415,195 @@ func (s *ExternalId) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// FailedEvent: This event is generated when the execution of a pipeline +// has failed. Note +// that other events may continue to occur after this event. +type FailedEvent struct { + // Cause: The human readable description of the cause of the failure. + Cause string `json:"cause,omitempty"` + + // Code: The Google standard error code that best describes this + // failure. + // + // Possible values: + // "OK" - Not an error; returned on success + // + // HTTP Mapping: 200 OK + // "CANCELLED" - The operation was cancelled, typically by the + // caller. + // + // HTTP Mapping: 499 Client Closed Request + // "UNKNOWN" - Unknown error. For example, this error may be returned + // when + // a `Status` value received from another address space belongs to + // an error space that is not known in this address space. Also + // errors raised by APIs that do not return enough error information + // may be converted to this error. + // + // HTTP Mapping: 500 Internal Server Error + // "INVALID_ARGUMENT" - The client specified an invalid argument. + // Note that this differs + // from `FAILED_PRECONDITION`. `INVALID_ARGUMENT` indicates + // arguments + // that are problematic regardless of the state of the system + // (e.g., a malformed file name). + // + // HTTP Mapping: 400 Bad Request + // "DEADLINE_EXCEEDED" - The deadline expired before the operation + // could complete. For operations + // that change the state of the system, this error may be returned + // even if the operation has completed successfully. For example, + // a + // successful response from a server could have been delayed long + // enough for the deadline to expire. + // + // HTTP Mapping: 504 Gateway Timeout + // "NOT_FOUND" - Some requested entity (e.g., file or directory) was + // not found. + // + // Note to server developers: if a request is denied for an entire + // class + // of users, such as gradual feature rollout or undocumented + // whitelist, + // `NOT_FOUND` may be used. If a request is denied for some users + // within + // a class of users, such as user-based access control, + // `PERMISSION_DENIED` + // must be used. + // + // HTTP Mapping: 404 Not Found + // "ALREADY_EXISTS" - The entity that a client attempted to create + // (e.g., file or directory) + // already exists. + // + // HTTP Mapping: 409 Conflict + // "PERMISSION_DENIED" - The caller does not have permission to + // execute the specified + // operation. `PERMISSION_DENIED` must not be used for rejections + // caused by exhausting some resource (use `RESOURCE_EXHAUSTED` + // instead for those errors). `PERMISSION_DENIED` must not be + // used if the caller can not be identified (use + // `UNAUTHENTICATED` + // instead for those errors). This error code does not imply the + // request is valid or the requested entity exists or satisfies + // other pre-conditions. + // + // HTTP Mapping: 403 Forbidden + // "UNAUTHENTICATED" - The request does not have valid authentication + // credentials for the + // operation. + // + // HTTP Mapping: 401 Unauthorized + // "RESOURCE_EXHAUSTED" - Some resource has been exhausted, perhaps a + // per-user quota, or + // perhaps the entire file system is out of space. + // + // HTTP Mapping: 429 Too Many Requests + // "FAILED_PRECONDITION" - The operation was rejected because the + // system is not in a state + // required for the operation's execution. For example, the + // directory + // to be deleted is non-empty, an rmdir operation is applied to + // a non-directory, etc. + // + // Service implementors can use the following guidelines to + // decide + // between `FAILED_PRECONDITION`, `ABORTED`, and `UNAVAILABLE`: + // (a) Use `UNAVAILABLE` if the client can retry just the failing + // call. + // (b) Use `ABORTED` if the client should retry at a higher level + // (e.g., when a client-specified test-and-set fails, indicating + // the + // client should restart a read-modify-write sequence). + // (c) Use `FAILED_PRECONDITION` if the client should not retry until + // the system state has been explicitly fixed. E.g., if an + // "rmdir" + // fails because the directory is non-empty, `FAILED_PRECONDITION` + // should be returned since the client should not retry unless + // the files are deleted from the directory. + // + // HTTP Mapping: 400 Bad Request + // "ABORTED" - The operation was aborted, typically due to a + // concurrency issue such as + // a sequencer check failure or transaction abort. + // + // See the guidelines above for deciding between + // `FAILED_PRECONDITION`, + // `ABORTED`, and `UNAVAILABLE`. + // + // HTTP Mapping: 409 Conflict + // "OUT_OF_RANGE" - The operation was attempted past the valid range. + // E.g., seeking or + // reading past end-of-file. + // + // Unlike `INVALID_ARGUMENT`, this error indicates a problem that may + // be fixed if the system state changes. For example, a 32-bit + // file + // system will generate `INVALID_ARGUMENT` if asked to read at an + // offset that is not in the range [0,2^32-1], but it will + // generate + // `OUT_OF_RANGE` if asked to read from an offset past the current + // file size. + // + // There is a fair bit of overlap between `FAILED_PRECONDITION` + // and + // `OUT_OF_RANGE`. We recommend using `OUT_OF_RANGE` (the more + // specific + // error) when it applies so that callers who are iterating through + // a space can easily look for an `OUT_OF_RANGE` error to detect + // when + // they are done. + // + // HTTP Mapping: 400 Bad Request + // "UNIMPLEMENTED" - The operation is not implemented or is not + // supported/enabled in this + // service. + // + // HTTP Mapping: 501 Not Implemented + // "INTERNAL" - Internal errors. This means that some invariants + // expected by the + // underlying system have been broken. This error code is reserved + // for serious errors. + // + // HTTP Mapping: 500 Internal Server Error + // "UNAVAILABLE" - The service is currently unavailable. This is most + // likely a + // transient condition, which can be corrected by retrying with + // a backoff. + // + // See the guidelines above for deciding between + // `FAILED_PRECONDITION`, + // `ABORTED`, and `UNAVAILABLE`. + // + // HTTP Mapping: 503 Service Unavailable + // "DATA_LOSS" - Unrecoverable data loss or corruption. + // + // HTTP Mapping: 500 Internal Server Error + Code string `json:"code,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Cause") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Cause") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *FailedEvent) MarshalJSON() ([]byte, error) { + type NoMethod FailedEvent + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // GetIamPolicyRequest: Request message for `GetIamPolicy` method. type GetIamPolicyRequest struct { } @@ -1746,8 +2094,8 @@ type Operation struct { // cancellation. Error *Status `json:"error,omitempty"` - // Metadata: An OperationMetadata object. This will always be returned - // with the Operation. + // Metadata: An OperationMetadata or Metadata object. This will always + // be returned with the Operation. Metadata googleapi.RawMessage `json:"metadata,omitempty"` // Name: The server-assigned name, which is only unique within the same @@ -2067,6 +2415,64 @@ func (s *Program) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// PullStartedEvent: This event is generated when the worker starts +// pulling an image. +type PullStartedEvent struct { + // ImageUri: The URI of the image that was pulled. + ImageUri string `json:"imageUri,omitempty"` + + // ForceSendFields is a list of field names (e.g. "ImageUri") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "ImageUri") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *PullStartedEvent) MarshalJSON() ([]byte, error) { + type NoMethod PullStartedEvent + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// PullStoppedEvent: This event is generated when the worker stops +// pulling an image. +type PullStoppedEvent struct { + // ImageUri: The URI of the image that was pulled. + ImageUri string `json:"imageUri,omitempty"` + + // ForceSendFields is a list of field names (e.g. "ImageUri") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "ImageUri") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *PullStoppedEvent) MarshalJSON() ([]byte, error) { + type NoMethod PullStoppedEvent + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // Range: A 0-based half-open genomic coordinate range for search // requests. type Range struct { @@ -3934,6 +4340,43 @@ func (s *Transcript) MarshalJSON() ([]byte, error) { type UndeleteDatasetRequest struct { } +// UnexpectedExitStatusEvent: This event is generated when the execution +// of a container results in a +// non-zero exit status that was not otherwise ignored. Execution +// will +// continue, but only actions that are flagged as ALWAYS_RUN will be +// executed: +// other actions will be skipped. +type UnexpectedExitStatusEvent struct { + // ActionId: The numeric ID of the action that started the container. + ActionId int64 `json:"actionId,omitempty"` + + // ExitStatus: The exit status of the container. + ExitStatus int64 `json:"exitStatus,omitempty"` + + // ForceSendFields is a list of field names (e.g. "ActionId") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "ActionId") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *UnexpectedExitStatusEvent) MarshalJSON() ([]byte, error) { + type NoMethod UnexpectedExitStatusEvent + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // Variant: A variant represents a change in DNA sequence relative to a // reference // sequence. For example, a variant could represent a SNP or an @@ -4414,6 +4857,72 @@ func (s *VariantSetMetadata) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// WorkerAssignedEvent: This event is generated once a worker VM has +// been assigned to run the +// pipeline. +type WorkerAssignedEvent struct { + // Instance: The worker's instance name. + Instance string `json:"instance,omitempty"` + + // Zone: The zone the worker is running in. + Zone string `json:"zone,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Instance") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Instance") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *WorkerAssignedEvent) MarshalJSON() ([]byte, error) { + type NoMethod WorkerAssignedEvent + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// WorkerReleasedEvent: This event is generated when the worker VM that +// was assigned to the pipeline +// has been released (i.e., deleted). +type WorkerReleasedEvent struct { + // Instance: The worker's instance name. + Instance string `json:"instance,omitempty"` + + // Zone: The zone the worker was running in. + Zone string `json:"zone,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Instance") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Instance") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *WorkerReleasedEvent) MarshalJSON() ([]byte, error) { + type NoMethod WorkerReleasedEvent + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // method id "genomics.annotations.batchCreate": type AnnotationsBatchCreateCall struct { @@ -8378,7 +8887,19 @@ func (r *OperationsService) List(name string) *OperationsListCall { // Filter sets the optional parameter "filter": A string for filtering // Operations. -// The following filter fields are supported: +// In v2alpha1, the following filter fields are supported: +// +// * createTime: The time this job was created +// * events: The set of event (names) that have occurred while +// running +// the pipeline. The : operator can be used to determine if a +// particular event has occurred. +// * error: If the pipeline is running, this value is NULL. Once +// the +// pipeline finishes, the value is the standard Google error code. +// * labels.key or labels."key with space" where key is a label key. +// +// In v1 and v1alpha2, the following filter fields are supported: // // * projectId: Required. Corresponds to // OperationMetadata.projectId. @@ -8521,7 +9042,7 @@ func (c *OperationsListCall) Do(opts ...googleapi.CallOption) (*ListOperationsRe // ], // "parameters": { // "filter": { - // "description": "A string for filtering Operations.\nThe following filter fields are supported\u0026#58;\n\n* projectId\u0026#58; Required. Corresponds to\n OperationMetadata.projectId.\n* createTime\u0026#58; The time this job was created, in seconds from the\n [epoch](http://en.wikipedia.org/wiki/Unix_time). Can use `\u003e=` and/or `\u003c=`\n operators.\n* status\u0026#58; Can be `RUNNING`, `SUCCESS`, `FAILURE`, or `CANCELED`. Only\n one status may be specified.\n* labels.key where key is a label key.\n\nExamples\u0026#58;\n\n* `projectId = my-project AND createTime \u003e= 1432140000`\n* `projectId = my-project AND createTime \u003e= 1432140000 AND createTime \u003c= 1432150000 AND status = RUNNING`\n* `projectId = my-project AND labels.color = *`\n* `projectId = my-project AND labels.color = red`", + // "description": "A string for filtering Operations.\nIn v2alpha1, the following filter fields are supported\u0026#58;\n\n* createTime\u0026#58; The time this job was created\n* events\u0026#58; The set of event (names) that have occurred while running\n the pipeline. The \u0026#58; operator can be used to determine if a\n particular event has occurred.\n* error\u0026#58; If the pipeline is running, this value is NULL. Once the\n pipeline finishes, the value is the standard Google error code.\n* labels.key or labels.\"key with space\" where key is a label key.\n\nIn v1 and v1alpha2, the following filter fields are supported\u0026#58;\n\n* projectId\u0026#58; Required. Corresponds to\n OperationMetadata.projectId.\n* createTime\u0026#58; The time this job was created, in seconds from the\n [epoch](http://en.wikipedia.org/wiki/Unix_time). Can use `\u003e=` and/or `\u003c=`\n operators.\n* status\u0026#58; Can be `RUNNING`, `SUCCESS`, `FAILURE`, or `CANCELED`. Only\n one status may be specified.\n* labels.key where key is a label key.\n\nExamples\u0026#58;\n\n* `projectId = my-project AND createTime \u003e= 1432140000`\n* `projectId = my-project AND createTime \u003e= 1432140000 AND createTime \u003c= 1432150000 AND status = RUNNING`\n* `projectId = my-project AND labels.color = *`\n* `projectId = my-project AND labels.color = red`", // "location": "query", // "type": "string" // }, diff --git a/vendor/google.golang.org/api/genomics/v1alpha2/genomics-api.json b/vendor/google.golang.org/api/genomics/v1alpha2/genomics-api.json index 2f08badec..cc7fd7cd0 100644 --- a/vendor/google.golang.org/api/genomics/v1alpha2/genomics-api.json +++ b/vendor/google.golang.org/api/genomics/v1alpha2/genomics-api.json @@ -1,769 +1,663 @@ { + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/cloud-platform": { + "description": "View and manage your data across Google Cloud Platform services" + }, + "https://www.googleapis.com/auth/compute": { + "description": "View and manage your Google Compute Engine resources" + }, + "https://www.googleapis.com/auth/genomics": { + "description": "View and manage Genomics data" + } + } + } + }, + "basePath": "", + "baseUrl": "https://genomics.googleapis.com/", + "batchPath": "batch", + "description": "Upload, process, query, and search Genomics data in the cloud.", + "discoveryVersion": "v1", + "documentationLink": "https://cloud.google.com/genomics", + "fullyEncodeReservedExpansion": true, + "icons": { + "x16": "http://www.google.com/images/icons/product/search-16.gif", + "x32": "http://www.google.com/images/icons/product/search-32.gif" + }, + "id": "genomics:v1alpha2", + "kind": "discovery#restDescription", + "name": "genomics", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "$.xgafv": { + "description": "V1 error format.", + "enum": [ + "1", + "2" + ], + "enumDescriptions": [ + "v1 error format", + "v2 error format" + ], + "location": "query", + "type": "string" + }, + "access_token": { + "description": "OAuth access token.", + "location": "query", + "type": "string" + }, + "alt": { + "default": "json", + "description": "Data format for response.", + "enum": [ + "json", + "media", + "proto" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json", + "Media download with context-dependent Content-Type", + "Responses with Content-Type of application/x-protobuf" + ], + "location": "query", + "type": "string" + }, + "bearer_token": { + "description": "OAuth bearer token.", + "location": "query", + "type": "string" + }, + "callback": { + "description": "JSONP", + "location": "query", + "type": "string" + }, + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "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.", + "location": "query", + "type": "string" + }, + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "pp": { + "default": "true", + "description": "Pretty-print response.", + "location": "query", + "type": "boolean" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", + "location": "query", + "type": "string" + }, + "uploadType": { + "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", + "location": "query", + "type": "string" + }, + "upload_protocol": { + "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", + "location": "query", + "type": "string" + } + }, + "protocol": "rest", "resources": { "operations": { "methods": { "cancel": { - "flatPath": "v1alpha2/operations/{operationsId}:cancel", - "path": "v1alpha2/{+name}:cancel", - "id": "genomics.operations.cancel", - "request": { - "$ref": "CancelOperationRequest" - }, "description": "Starts asynchronous cancellation on a long-running operation. The server makes a best effort to cancel the operation, but success is not guaranteed. Clients may use Operations.GetOperation or Operations.ListOperations to check whether the cancellation succeeded or the operation completed despite cancellation.", - "response": { - "$ref": "Empty" - }, + "flatPath": "v1alpha2/operations/{operationsId}:cancel", + "httpMethod": "POST", + "id": "genomics.operations.cancel", "parameterOrder": [ "name" ], - "httpMethod": "POST", "parameters": { "name": { "description": "The name of the operation resource to be cancelled.", - "required": true, - "type": "string", + "location": "path", "pattern": "^operations/.+$", - "location": "path" + "required": true, + "type": "string" } }, + "path": "v1alpha2/{+name}:cancel", + "request": { + "$ref": "CancelOperationRequest" + }, + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/genomics" + ] + }, + "get": { + "description": "Gets the latest state of a long-running operation. Clients can use this\nmethod to poll the operation result at intervals as recommended by the API\nservice.", + "flatPath": "v1alpha2/operations/{operationsId}", + "httpMethod": "GET", + "id": "genomics.operations.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource.", + "location": "path", + "pattern": "^operations/.+$", + "required": true, + "type": "string" + } + }, + "path": "v1alpha2/{+name}", + "response": { + "$ref": "Operation" + }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/genomics" ] }, "list": { - "response": { - "$ref": "ListOperationsResponse" - }, + "description": "Lists operations that match the specified filter in the request.", + "flatPath": "v1alpha2/operations", + "httpMethod": "GET", + "id": "genomics.operations.list", "parameterOrder": [ "name" ], - "httpMethod": "GET", "parameters": { - "pageSize": { - "description": "The maximum number of results to return. If unspecified, defaults to\n256. The maximum value is 2048.", - "format": "int32", - "type": "integer", - "location": "query" - }, "filter": { + "description": "A string for filtering Operations.\nIn v2alpha1, the following filter fields are supported\u0026#58;\n\n* createTime\u0026#58; The time this job was created\n* events\u0026#58; The set of event (names) that have occurred while running\n the pipeline. The \u0026#58; operator can be used to determine if a\n particular event has occurred.\n* error\u0026#58; If the pipeline is running, this value is NULL. Once the\n pipeline finishes, the value is the standard Google error code.\n* labels.key or labels.\"key with space\" where key is a label key.\n\nIn v1 and v1alpha2, the following filter fields are supported\u0026#58;\n\n* projectId\u0026#58; Required. Corresponds to\n OperationMetadata.projectId.\n* createTime\u0026#58; The time this job was created, in seconds from the\n [epoch](http://en.wikipedia.org/wiki/Unix_time). Can use `\u003e=` and/or `\u003c=`\n operators.\n* status\u0026#58; Can be `RUNNING`, `SUCCESS`, `FAILURE`, or `CANCELED`. Only\n one status may be specified.\n* labels.key where key is a label key.\n\nExamples\u0026#58;\n\n* `projectId = my-project AND createTime \u003e= 1432140000`\n* `projectId = my-project AND createTime \u003e= 1432140000 AND createTime \u003c= 1432150000 AND status = RUNNING`\n* `projectId = my-project AND labels.color = *`\n* `projectId = my-project AND labels.color = red`", "location": "query", - "description": "A string for filtering Operations.\nThe following filter fields are supported:\n\n* projectId: Required. Corresponds to\n OperationMetadata.projectId.\n* createTime: The time this job was created, in seconds from the\n [epoch](http://en.wikipedia.org/wiki/Unix_time). Can use `\u003e=` and/or `\u003c=`\n operators.\n* status: Can be `RUNNING`, `SUCCESS`, `FAILURE`, or `CANCELED`. Only\n one status may be specified.\n* labels.key where key is a label key.\n\nExamples:\n\n* `projectId = my-project AND createTime \u003e= 1432140000`\n* `projectId = my-project AND createTime \u003e= 1432140000 AND createTime \u003c= 1432150000 AND status = RUNNING`\n* `projectId = my-project AND labels.color = *`\n* `projectId = my-project AND labels.color = red`", "type": "string" }, "name": { - "location": "path", "description": "The name of the operation's parent resource.", + "location": "path", + "pattern": "^operations$", "required": true, - "type": "string", - "pattern": "^operations$" + "type": "string" + }, + "pageSize": { + "description": "The maximum number of results to return. If unspecified, defaults to\n256. The maximum value is 2048.", + "format": "int32", + "location": "query", + "type": "integer" }, "pageToken": { "description": "The standard list page token.", - "type": "string", - "location": "query" + "location": "query", + "type": "string" } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/genomics" - ], - "flatPath": "v1alpha2/operations", "path": "v1alpha2/{+name}", - "id": "genomics.operations.list", - "description": "Lists operations that match the specified filter in the request." - }, - "get": { - "flatPath": "v1alpha2/operations/{operationsId}", - "path": "v1alpha2/{+name}", - "id": "genomics.operations.get", - "description": "Gets the latest state of a long-running operation. Clients can use this\nmethod to poll the operation result at intervals as recommended by the API\nservice.", "response": { - "$ref": "Operation" + "$ref": "ListOperationsResponse" }, - "parameterOrder": [ - "name" - ], - "httpMethod": "GET", "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/genomics" - ], - "parameters": { - "name": { - "location": "path", - "description": "The name of the operation resource.", - "required": true, - "type": "string", - "pattern": "^operations/.+$" - } - } + ] } } }, "pipelines": { "methods": { - "list": { - "response": { - "$ref": "ListPipelinesResponse" - }, + "create": { + "description": "Creates a pipeline that can be run later. Create takes a Pipeline that\nhas all fields other than `pipelineId` populated, and then returns\nthe same pipeline with `pipelineId` populated. This id can be used\nto run the pipeline.\n\nCaller must have WRITE permission to the project.", + "flatPath": "v1alpha2/pipelines", + "httpMethod": "POST", + "id": "genomics.pipelines.create", "parameterOrder": [], + "parameters": {}, + "path": "v1alpha2/pipelines", + "request": { + "$ref": "Pipeline" + }, + "response": { + "$ref": "Pipeline" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/genomics" + ] + }, + "delete": { + "description": "Deletes a pipeline based on ID.\n\nCaller must have WRITE permission to the project.", + "flatPath": "v1alpha2/pipelines/{pipelineId}", + "httpMethod": "DELETE", + "id": "genomics.pipelines.delete", + "parameterOrder": [ + "pipelineId" + ], + "parameters": { + "pipelineId": { + "description": "Caller must have WRITE access to the project in which this pipeline\nis defined.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1alpha2/pipelines/{pipelineId}", + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/genomics" + ] + }, + "get": { + "description": "Retrieves a pipeline based on ID.\n\nCaller must have READ permission to the project.", + "flatPath": "v1alpha2/pipelines/{pipelineId}", "httpMethod": "GET", + "id": "genomics.pipelines.get", + "parameterOrder": [ + "pipelineId" + ], + "parameters": { + "pipelineId": { + "description": "Caller must have READ access to the project in which this pipeline\nis defined.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1alpha2/pipelines/{pipelineId}", + "response": { + "$ref": "Pipeline" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/genomics" + ] + }, + "getControllerConfig": { + "description": "Gets controller configuration information. Should only be called\nby VMs created by the Pipelines Service and not by end users.", + "flatPath": "v1alpha2/pipelines:getControllerConfig", + "httpMethod": "GET", + "id": "genomics.pipelines.getControllerConfig", + "parameterOrder": [], + "parameters": { + "operationId": { + "description": "The operation to retrieve controller configuration for.", + "location": "query", + "type": "string" + }, + "validationToken": { + "format": "uint64", + "location": "query", + "type": "string" + } + }, + "path": "v1alpha2/pipelines:getControllerConfig", + "response": { + "$ref": "ControllerConfig" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/genomics" + ] + }, + "list": { + "description": "Lists pipelines.\n\nCaller must have READ permission to the project.", + "flatPath": "v1alpha2/pipelines", + "httpMethod": "GET", + "id": "genomics.pipelines.list", + "parameterOrder": [], "parameters": { "namePrefix": { "description": "Pipelines with names that match this prefix should be\nreturned. If unspecified, all pipelines in the project, up to\n`pageSize`, will be returned.", - "type": "string", - "location": "query" - }, - "pageToken": { "location": "query", - "description": "Token to use to indicate where to start getting results.\nIf unspecified, returns the first page of results.", "type": "string" }, "pageSize": { - "location": "query", "description": "Number of pipelines to return at once. Defaults to 256, and max\nis 2048.", "format": "int32", + "location": "query", "type": "integer" }, + "pageToken": { + "description": "Token to use to indicate where to start getting results.\nIf unspecified, returns the first page of results.", + "location": "query", + "type": "string" + }, "projectId": { "description": "Required. The name of the project to search for pipelines. Caller\nmust have READ access to this project.", - "type": "string", - "location": "query" + "location": "query", + "type": "string" } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/genomics" - ], - "flatPath": "v1alpha2/pipelines", "path": "v1alpha2/pipelines", - "id": "genomics.pipelines.list", - "description": "Lists pipelines.\n\nCaller must have READ permission to the project." - }, - "create": { "response": { - "$ref": "Pipeline" + "$ref": "ListPipelinesResponse" }, - "parameterOrder": [], - "httpMethod": "POST", "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/genomics" - ], - "parameters": {}, - "flatPath": "v1alpha2/pipelines", - "path": "v1alpha2/pipelines", - "id": "genomics.pipelines.create", - "description": "Creates a pipeline that can be run later. Create takes a Pipeline that\nhas all fields other than `pipelineId` populated, and then returns\nthe same pipeline with `pipelineId` populated. This id can be used\nto run the pipeline.\n\nCaller must have WRITE permission to the project.", - "request": { - "$ref": "Pipeline" - } + ] }, "run": { "description": "Runs a pipeline. If `pipelineId` is specified in the request, then\nrun a saved pipeline. If `ephemeralPipeline` is specified, then run\nthat pipeline once without saving a copy.\n\nThe caller must have READ permission to the project where the pipeline\nis stored and WRITE permission to the project where the pipeline will be\nrun, as VMs will be created and storage will be used.\n\nIf a pipeline operation is still running after 6 days, it will be canceled.", + "flatPath": "v1alpha2/pipelines:run", + "httpMethod": "POST", + "id": "genomics.pipelines.run", + "parameterOrder": [], + "parameters": {}, + "path": "v1alpha2/pipelines:run", "request": { "$ref": "RunPipelineRequest" }, "response": { "$ref": "Operation" }, - "parameterOrder": [], - "httpMethod": "POST", "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/compute", "https://www.googleapis.com/auth/genomics" - ], - "parameters": {}, - "flatPath": "v1alpha2/pipelines:run", - "path": "v1alpha2/pipelines:run", - "id": "genomics.pipelines.run" - }, - "get": { - "description": "Retrieves a pipeline based on ID.\n\nCaller must have READ permission to the project.", - "response": { - "$ref": "Pipeline" - }, - "parameterOrder": [ - "pipelineId" - ], - "httpMethod": "GET", - "parameters": { - "pipelineId": { - "location": "path", - "description": "Caller must have READ access to the project in which this pipeline\nis defined.", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/genomics" - ], - "flatPath": "v1alpha2/pipelines/{pipelineId}", - "path": "v1alpha2/pipelines/{pipelineId}", - "id": "genomics.pipelines.get" + ] }, "setOperationStatus": { - "path": "v1alpha2/pipelines:setOperationStatus", + "description": "Sets status of a given operation. Any new timestamps (as determined by\ndescription) are appended to TimestampEvents. Should only be called by VMs\ncreated by the Pipelines Service and not by end users.", + "flatPath": "v1alpha2/pipelines:setOperationStatus", + "httpMethod": "PUT", "id": "genomics.pipelines.setOperationStatus", + "parameterOrder": [], + "parameters": {}, + "path": "v1alpha2/pipelines:setOperationStatus", "request": { "$ref": "SetOperationStatusRequest" }, - "description": "Sets status of a given operation. Any new timestamps (as determined by\ndescription) are appended to TimestampEvents. Should only be called by VMs\ncreated by the Pipelines Service and not by end users.", "response": { "$ref": "Empty" }, - "parameterOrder": [], - "httpMethod": "PUT", - "parameters": {}, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/genomics" - ], - "flatPath": "v1alpha2/pipelines:setOperationStatus" - }, - "getControllerConfig": { - "description": "Gets controller configuration information. Should only be called\nby VMs created by the Pipelines Service and not by end users.", - "response": { - "$ref": "ControllerConfig" - }, - "parameterOrder": [], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/genomics" - ], - "parameters": { - "operationId": { - "type": "string", - "location": "query", - "description": "The operation to retrieve controller configuration for." - }, - "validationToken": { - "location": "query", - "format": "uint64", - "type": "string" - } - }, - "flatPath": "v1alpha2/pipelines:getControllerConfig", - "path": "v1alpha2/pipelines:getControllerConfig", - "id": "genomics.pipelines.getControllerConfig" - }, - "delete": { - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "pipelineId" - ], - "httpMethod": "DELETE", - "parameters": { - "pipelineId": { - "required": true, - "type": "string", - "location": "path", - "description": "Caller must have WRITE access to the project in which this pipeline\nis defined." - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/genomics" - ], - "flatPath": "v1alpha2/pipelines/{pipelineId}", - "path": "v1alpha2/pipelines/{pipelineId}", - "id": "genomics.pipelines.delete", - "description": "Deletes a pipeline based on ID.\n\nCaller must have WRITE permission to the project." + ] } } } }, - "parameters": { - "upload_protocol": { - "location": "query", - "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", - "type": "string" - }, - "prettyPrint": { - "description": "Returns response with indentations and line breaks.", - "type": "boolean", - "default": "true", - "location": "query" - }, - "uploadType": { - "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", - "type": "string", - "location": "query" - }, - "fields": { - "location": "query", - "description": "Selector specifying which fields to include in a partial response.", - "type": "string" - }, - "callback": { - "location": "query", - "description": "JSONP", - "type": "string" - }, - "$.xgafv": { - "description": "V1 error format.", - "type": "string", - "enumDescriptions": [ - "v1 error format", - "v2 error format" - ], - "location": "query", - "enum": [ - "1", - "2" - ] - }, - "alt": { - "enum": [ - "json", - "media", - "proto" - ], - "type": "string", - "enumDescriptions": [ - "Responses with Content-Type of application/json", - "Media download with context-dependent Content-Type", - "Responses with Content-Type of application/x-protobuf" - ], - "location": "query", - "description": "Data format for response.", - "default": "json" - }, - "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.", - "type": "string", - "location": "query" - }, - "access_token": { - "location": "query", - "description": "OAuth access token.", - "type": "string" - }, - "quotaUser": { - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", - "type": "string", - "location": "query" - }, - "pp": { - "description": "Pretty-print response.", - "type": "boolean", - "default": "true", - "location": "query" - }, - "bearer_token": { - "description": "OAuth bearer token.", - "type": "string", - "location": "query" - }, - "oauth_token": { - "description": "OAuth 2.0 token for the current user.", - "type": "string", - "location": "query" - } - }, + "revision": "20180225", + "rootUrl": "https://genomics.googleapis.com/", "schemas": { - "ImportReadGroupSetsResponse": { - "id": "ImportReadGroupSetsResponse", - "description": "The read group set import response.", - "type": "object", + "CancelOperationRequest": { + "description": "The request message for Operations.CancelOperation.", + "id": "CancelOperationRequest", + "properties": {}, + "type": "object" + }, + "ComputeEngine": { + "description": "Describes a Compute Engine resource that is being managed by a running\npipeline.", + "id": "ComputeEngine", "properties": { - "readGroupSetIds": { - "description": "IDs of the read group sets that were created.", - "type": "array", + "diskNames": { + "description": "The names of the disks that were created for this pipeline.", "items": { "type": "string" - } - } - } - }, - "Status": { - "description": "The `Status` type defines a logical error model that is suitable for different\nprogramming environments, including REST APIs and RPC APIs. It is used by\n[gRPC](https://github.com/grpc). The error model is designed to be:\n\n- Simple to use and understand for most users\n- Flexible enough to meet unexpected needs\n\n# Overview\n\nThe `Status` message contains three pieces of data: error code, error message,\nand error details. The error code should be an enum value of\ngoogle.rpc.Code, but it may accept additional error codes if needed. The\nerror message should be a developer-facing English message that helps\ndevelopers *understand* and *resolve* the error. If a localized user-facing\nerror message is needed, put the localized message in the error details or\nlocalize it in the client. The optional error details may contain arbitrary\ninformation about the error. There is a predefined set of error detail types\nin the package `google.rpc` that can be used for common error conditions.\n\n# Language mapping\n\nThe `Status` message is the logical representation of the error model, but it\nis not necessarily the actual wire format. When the `Status` message is\nexposed in different client libraries and different wire protocols, it can be\nmapped differently. For example, it will likely be mapped to some exceptions\nin Java, but more likely mapped to some error codes in C.\n\n# Other uses\n\nThe error model and the `Status` message can be used in a variety of\nenvironments, either with or without APIs, to provide a\nconsistent developer experience across different environments.\n\nExample uses of this error model include:\n\n- Partial errors. If a service needs to return partial errors to the client,\n it may embed the `Status` in the normal response to indicate the partial\n errors.\n\n- Workflow errors. A typical workflow has multiple steps. Each step may\n have a `Status` message for error reporting.\n\n- Batch operations. If a client uses batch request and batch response, the\n `Status` message should be used directly inside batch response, one for\n each error sub-response.\n\n- Asynchronous operations. If an API call embeds asynchronous operation\n results in its response, the status of those operations should be\n represented directly using the `Status` message.\n\n- Logging. If some API errors are stored in logs, the message `Status` could\n be used directly after any stripping needed for security/privacy reasons.", - "type": "object", - "properties": { - "code": { - "description": "The status code, which should be an enum value of google.rpc.Code.", - "format": "int32", - "type": "integer" + }, + "type": "array" }, - "message": { - "description": "A developer-facing error message, which should be in English. Any\nuser-facing error message should be localized and sent in the\ngoogle.rpc.Status.details field, or localized by the client.", + "instanceName": { + "description": "The instance on which the operation is running.", "type": "string" }, - "details": { - "description": "A list of messages that carry the error details. There is a common set of\nmessage types for APIs to use.", - "type": "array", - "items": { - "type": "object", - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - } - } - } - }, - "id": "Status" - }, - "ServiceAccount": { - "id": "ServiceAccount", - "description": "A Google Cloud Service Account.", - "type": "object", - "properties": { - "email": { - "description": "Email address of the service account. Defaults to `default`,\nwhich uses the compute service account associated with the project.", + "machineType": { + "description": "The machine type of the instance.", "type": "string" }, - "scopes": { - "description": "List of scopes to be enabled for this service account on the VM.\nThe following scopes are automatically included:\n\n* https://www.googleapis.com/auth/compute\n* https://www.googleapis.com/auth/devstorage.full_control\n* https://www.googleapis.com/auth/genomics\n* https://www.googleapis.com/auth/logging.write\n* https://www.googleapis.com/auth/monitoring.write", - "type": "array", - "items": { - "type": "string" - } - } - } - }, - "PipelineResources": { - "description": "The system resources for the pipeline run.", - "type": "object", - "properties": { - "disks": { - "description": "Disks to attach.", - "type": "array", - "items": { - "$ref": "Disk" - } - }, - "bootDiskSizeGb": { - "description": "The size of the boot disk. Defaults to 10 (GB).", - "format": "int32", - "type": "integer" - }, - "minimumRamGb": { - "description": "The minimum amount of RAM to use. Defaults to 3.75 (GB)", - "format": "double", - "type": "number" - }, - "preemptible": { - "description": "Whether to use preemptible VMs. Defaults to `false`. In order to use this,\nmust be true for both create time and run time. Cannot be true at run time\nif false at create time.", - "type": "boolean" - }, - "zones": { - "description": "List of Google Compute Engine availability zones to which resource\ncreation will restricted. If empty, any zone may be chosen.", - "type": "array", - "items": { - "type": "string" - } - }, - "acceleratorCount": { - "description": "Optional. The number of accelerators of the specified type to attach.\nBy specifying this parameter, you will download and install the following\nthird-party software onto your managed Compute Engine instances:\nNVIDIA® Tesla® drivers and NVIDIA® CUDA toolkit.", - "format": "int64", - "type": "string" - }, - "acceleratorType": { - "description": "Optional. The Compute Engine defined accelerator type.\nBy specifying this parameter, you will download and install the following\nthird-party software onto your managed Compute Engine instances: NVIDIA®\nTesla® drivers and NVIDIA® CUDA toolkit.\nPlease see https://cloud.google.com/compute/docs/gpus/ for a list of\navailable accelerator types.", - "type": "string" - }, - "minimumCpuCores": { - "description": "The minimum number of cores to use. Defaults to 1.", - "format": "int32", - "type": "integer" - }, - "noAddress": { - "description": "Whether to assign an external IP to the instance. This is an experimental\nfeature that may go away. Defaults to false.\nCorresponds to `--no_address` flag for [gcloud compute instances create]\n(https://cloud.google.com/sdk/gcloud/reference/compute/instances/create).\nIn order to use this, must be true for both create time and run time.\nCannot be true at run time if false at create time. If you need to ssh into\na private IP VM for debugging, you can ssh to a public VM and then ssh into\nthe private VM's Internal IP. If noAddress is set, this pipeline run may\nonly load docker images from Google Container Registry and not Docker Hub.\nBefore using this, you must\n[configure access to Google services from internal IPs](https://cloud.google.com/compute/docs/configure-private-google-access#configuring_access_to_google_services_from_internal_ips).", - "type": "boolean" - } - }, - "id": "PipelineResources" - }, - "Pipeline": { - "id": "Pipeline", - "description": "The pipeline object. Represents a transformation from a set of input\nparameters to a set of output parameters. The transformation is defined\nas a docker image and command to run within that image. Each pipeline\nis run on a Google Compute Engine VM. A pipeline can be created with the\n`create` method and then later run with the `run` method, or a pipeline can\nbe defined and run all at once with the `run` method.", - "type": "object", - "properties": { - "resources": { - "description": "Required. Specifies resource requirements for the pipeline run.\nRequired fields:\n\n*\nminimumCpuCores\n\n*\nminimumRamGb", - "$ref": "PipelineResources" - }, - "name": { - "description": "Required. A user specified pipeline name that does not have to be unique.\nThis name can be used for filtering Pipelines in ListPipelines.", - "type": "string" - }, - "projectId": { - "type": "string", - "description": "Required. The project in which to create the pipeline. The caller must have\nWRITE access." - }, - "pipelineId": { - "description": "Unique pipeline id that is generated by the service when CreatePipeline\nis called. Cannot be specified in the Pipeline used in the\nCreatePipelineRequest, and will be populated in the response to\nCreatePipeline and all subsequent Get and List calls. Indicates that the\nservice has registered this pipeline.", - "type": "string" - }, - "outputParameters": { - "description": "Output parameters of the pipeline.", - "type": "array", - "items": { - "$ref": "PipelineParameter" - } - }, - "docker": { - "description": "Specifies the docker run information.", - "$ref": "DockerExecutor" - }, - "description": { - "description": "User-specified description.", - "type": "string" - }, - "inputParameters": { - "description": "Input parameters of the pipeline.", - "type": "array", - "items": { - "$ref": "PipelineParameter" - } - } - } - }, - "OperationEvent": { - "properties": { - "endTime": { - "description": "Optional time of when event finished. An event can have a start time and no\nfinish time. If an event has a finish time, there must be a start time.", - "format": "google-datetime", - "type": "string" - }, - "startTime": { - "description": "Optional time of when event started.", - "format": "google-datetime", - "type": "string" - }, - "description": { - "description": "Required description of event.", + "zone": { + "description": "The availability zone in which the instance resides.", "type": "string" } }, - "id": "OperationEvent", - "description": "An event that occurred during an Operation.", + "type": "object" + }, + "ContainerStartedEvent": { + "description": "This event is generated when a container starts.", + "id": "ContainerStartedEvent", + "properties": { + "actionId": { + "description": "The numeric ID of the action that started this container.", + "format": "int32", + "type": "integer" + }, + "ipAddress": { + "description": "The public IP address that can be used to connect to the container. This\nfield is only populated when at least one port mapping is present. If the\ninstance was created with a private address this field will be empty even\nif port mappings exist.", + "type": "string" + }, + "portMappings": { + "additionalProperties": { + "format": "int32", + "type": "integer" + }, + "description": "The container to host port mappings installed for this container. This\nset will contain any ports exposed using the PUBLISH_EXPOSED_PORTS flag as\nwell as any specified in the Action definition.", + "type": "object" + } + }, + "type": "object" + }, + "ContainerStoppedEvent": { + "description": "This event is generated when a container exits.", + "id": "ContainerStoppedEvent", + "properties": { + "actionId": { + "description": "The numeric ID of the action that started this container.", + "format": "int32", + "type": "integer" + }, + "exitStatus": { + "description": "The exit status of the container.", + "format": "int32", + "type": "integer" + } + }, "type": "object" }, "ControllerConfig": { "description": "Stores the information that the controller will fetch from the\nserver in order to run. Should only be used by VMs created by the\nPipelines Service and not by end users.", - "type": "object", + "id": "ControllerConfig", "properties": { - "gcsLogPath": { + "cmd": { "type": "string" }, - "gcsSources": { + "disks": { "additionalProperties": { - "$ref": "RepeatedString" + "type": "string" }, "type": "object" }, + "gcsLogPath": { + "type": "string" + }, "gcsSinks": { "additionalProperties": { "$ref": "RepeatedString" }, "type": "object" }, - "disks": { - "type": "object", + "gcsSources": { "additionalProperties": { - "type": "string" - } + "$ref": "RepeatedString" + }, + "type": "object" + }, + "image": { + "type": "string" }, "machineType": { "type": "string" }, - "cmd": { - "type": "string" - }, "vars": { - "type": "object", "additionalProperties": { "type": "string" - } - }, - "image": { - "type": "string" + }, + "type": "object" } }, - "id": "ControllerConfig" + "type": "object" }, - "RepeatedString": { + "DelayedEvent": { + "description": "This event is generated whenever a resource limitation or transient error\ndelays execution of a pipeline that was otherwise ready to run.", + "id": "DelayedEvent", "properties": { - "values": { - "type": "array", + "cause": { + "description": "A textual description of the cause of the delay. The string may change\nwithout notice since it is often generated by another service (such as\nCompute Engine).", + "type": "string" + }, + "metrics": { + "description": "If the delay was caused by a resource shortage, this field lists the\nCompute Engine metrics that are preventing this operation from running\n(for example, CPUS or INSTANCES). If the particular metric is not known,\na single UNKNOWN metric will be present.", "items": { "type": "string" - } + }, + "type": "array" } }, - "id": "RepeatedString", "type": "object" }, - "ListOperationsResponse": { + "Disk": { + "description": "A Google Compute Engine disk resource specification.", + "id": "Disk", "properties": { - "nextPageToken": { - "type": "string", - "description": "The standard List next-page token." + "autoDelete": { + "description": "Deprecated. Disks created by the Pipelines API will be deleted at the end\nof the pipeline run, regardless of what this field is set to.", + "type": "boolean" }, - "operations": { - "description": "A list of operations that matches the specified filter in the request.", - "type": "array", - "items": { - "$ref": "Operation" - } + "mountPoint": { + "description": "Required at create time and cannot be overridden at run time.\nSpecifies the path in the docker container where files on\nthis disk should be located. For example, if `mountPoint`\nis `/mnt/disk`, and the parameter has `localPath`\n`inputs/file.txt`, the docker container can access the data at\n`/mnt/disk/inputs/file.txt`.", + "type": "string" + }, + "name": { + "description": "Required. The name of the disk that can be used in the pipeline\nparameters. Must be 1 - 63 characters.\nThe name \"boot\" is reserved for system use.", + "type": "string" + }, + "readOnly": { + "description": "Specifies how a sourced-base persistent disk will be mounted. See\nhttps://cloud.google.com/compute/docs/disks/persistent-disks#use_multi_instances\nfor more details.\nCan only be set at create time.", + "type": "boolean" + }, + "sizeGb": { + "description": "The size of the disk. Defaults to 500 (GB).\nThis field is not applicable for local SSD.", + "format": "int32", + "type": "integer" + }, + "source": { + "description": "The full or partial URL of the persistent disk to attach. See\nhttps://cloud.google.com/compute/docs/reference/latest/instances#resource\nand\nhttps://cloud.google.com/compute/docs/disks/persistent-disks#snapshots\nfor more details.", + "type": "string" + }, + "type": { + "description": "Required. The type of the disk to create.", + "enum": [ + "TYPE_UNSPECIFIED", + "PERSISTENT_HDD", + "PERSISTENT_SSD", + "LOCAL_SSD" + ], + "enumDescriptions": [ + "Default disk type. Use one of the other options below.", + "Specifies a Google Compute Engine persistent hard disk. See\nhttps://cloud.google.com/compute/docs/disks/#pdspecs for details.", + "Specifies a Google Compute Engine persistent solid-state disk. See\nhttps://cloud.google.com/compute/docs/disks/#pdspecs for details.", + "Specifies a Google Compute Engine local SSD.\nSee https://cloud.google.com/compute/docs/disks/local-ssd for details." + ], + "type": "string" } }, - "id": "ListOperationsResponse", - "description": "The response message for Operations.ListOperations.", "type": "object" }, - "OperationMetadata": { - "id": "OperationMetadata", - "description": "Metadata describing an Operation.", - "type": "object", + "DockerExecutor": { + "description": "The Docker execuctor specification.", + "id": "DockerExecutor", "properties": { - "projectId": { - "description": "The Google Cloud Project in which the job is scoped.", + "cmd": { + "description": "Required. The command or newline delimited script to run. The command\nstring will be executed within a bash shell.\n\nIf the command exits with a non-zero exit code, output parameter\nde-localization will be skipped and the pipeline operation's\n`error` field will be populated.\n\nMaximum command string length is 16384.", "type": "string" }, - "clientId": { - "description": "This field is deprecated. Use `labels` instead. Optionally provided by the\ncaller when submitting the request that creates the operation.", + "imageName": { + "description": "Required. Image name from either Docker Hub or Google Container Registry.\nUsers that run pipelines must have READ access to the image.", + "type": "string" + } + }, + "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" + }, + "Event": { + "description": "Event carries information about events that occur during pipeline execution.", + "id": "Event", + "properties": { + "description": { + "description": "A human readable description of the event. Note that these strings may\nchange at any time without notice. Any application logic must use the\ninformation in the details field.", "type": "string" }, - "endTime": { - "description": "The time at which the job stopped running.", - "format": "google-datetime", - "type": "string" - }, - "events": { - "description": "Optional event messages that were generated during the job's execution.\nThis also contains any warnings that were generated during import\nor export.", - "type": "array", - "items": { - "$ref": "OperationEvent" - } - }, - "startTime": { - "description": "The time at which the job began to run.", - "format": "google-datetime", - "type": "string" - }, - "request": { - "type": "object", + "details": { "additionalProperties": { "description": "Properties of the object. Contains field @type with type URL.", "type": "any" }, - "description": "The original request that started the operation. Note that this will be in\ncurrent version of the API. If the operation was started with v1beta2 API\nand a GetOperation is performed on v1 API, a v1 request will be returned." - }, - "runtimeMetadata": { - "description": "Runtime metadata on this Operation.", - "type": "object", - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - } - }, - "labels": { - "additionalProperties": { - "type": "string" - }, - "description": "Optionally provided by the caller when submitting the request that creates\nthe operation.", + "description": "Machine readable details about the event.", "type": "object" }, - "createTime": { - "description": "The time at which the job was submitted to the Genomics service.", + "timestamp": { + "description": "The time that the event occurred.", "format": "google-datetime", "type": "string" } - } - }, - "RunPipelineArgs": { - "description": "The pipeline run arguments.", - "type": "object", - "properties": { - "labels": { - "description": "Labels to apply to this pipeline run. Labels will also be applied to\ncompute resources (VM, disks) created by this pipeline run. When listing\noperations, operations can filtered by labels.\nLabel keys may not be empty; label values may be empty. Non-empty labels\nmust be 1-63 characters long, and comply with [RFC1035]\n(https://www.ietf.org/rfc/rfc1035.txt).\nSpecifically, the name must be 1-63 characters long and match the regular\nexpression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first\ncharacter must be a lowercase letter, and all following characters must be\na dash, lowercase letter, or digit, except the last character, which cannot\nbe a dash.", - "type": "object", - "additionalProperties": { - "type": "string" - } - }, - "logging": { - "description": "Required. Logging options. Used by the service to communicate results\nto the user.", - "$ref": "LoggingOptions" - }, - "keepVmAliveOnFailureDuration": { - "description": "How long to keep the VM up after a failure (for example docker command\nfailed, copying input or output files failed, etc). While the VM is up, one\ncan ssh into the VM to debug. Default is 0; maximum allowed value is 1 day.", - "format": "google-duration", - "type": "string" - }, - "resources": { - "description": "Specifies resource requirements/overrides for the pipeline run.", - "$ref": "PipelineResources" - }, - "outputs": { - "description": "Pipeline output arguments; keys are defined in the pipeline\ndocumentation. All output parameters of without default values\nmust be specified. If parameters with defaults are specified\nhere, the defaults will be overridden.", - "type": "object", - "additionalProperties": { - "type": "string" - } - }, - "projectId": { - "description": "Required. The project in which to run the pipeline. The caller must have\nWRITER access to all Google Cloud services and resources (e.g. Google\nCompute Engine) will be used.", - "type": "string" - }, - "clientId": { - "description": "This field is deprecated. Use `labels` instead. Client-specified pipeline\noperation identifier.", - "type": "string" - }, - "serviceAccount": { - "$ref": "ServiceAccount", - "description": "The Google Cloud Service Account that will be used to access data and\nservices. By default, the compute service account associated with\n`projectId` is used." - }, - "inputs": { - "description": "Pipeline input arguments; keys are defined in the pipeline documentation.\nAll input parameters that do not have default values must be specified.\nIf parameters with defaults are specified here, the defaults will be\noverridden.", - "type": "object", - "additionalProperties": { - "type": "string" - } - } }, - "id": "RunPipelineArgs" + "type": "object" }, - "ListPipelinesResponse": { - "description": "The response of ListPipelines. Contains at most `pageSize`\npipelines. If it contains `pageSize` pipelines, and more pipelines\nexist, then `nextPageToken` will be populated and should be\nused as the `pageToken` argument to a subsequent ListPipelines\nrequest.", - "type": "object", + "FailedEvent": { + "description": "This event is generated when the execution of a pipeline has failed. Note\nthat other events may continue to occur after this event.", + "id": "FailedEvent", "properties": { - "nextPageToken": { - "type": "string", - "description": "The token to use to get the next page of results." - }, - "pipelines": { - "description": "The matched pipelines.", - "type": "array", - "items": { - "$ref": "Pipeline" - } - } - }, - "id": "ListPipelinesResponse" - }, - "SetOperationStatusRequest": { - "properties": { - "operationId": { + "cause": { + "description": "The human readable description of the cause of the failure.", "type": "string" }, - "errorMessage": { - "type": "string" - }, - "validationToken": { - "format": "uint64", - "type": "string" - }, - "errorCode": { - "type": "string", + "code": { + "description": "The Google standard error code that best describes this failure.", + "enum": [ + "OK", + "CANCELLED", + "UNKNOWN", + "INVALID_ARGUMENT", + "DEADLINE_EXCEEDED", + "NOT_FOUND", + "ALREADY_EXISTS", + "PERMISSION_DENIED", + "UNAUTHENTICATED", + "RESOURCE_EXHAUSTED", + "FAILED_PRECONDITION", + "ABORTED", + "OUT_OF_RANGE", + "UNIMPLEMENTED", + "INTERNAL", + "UNAVAILABLE", + "DATA_LOSS" + ], "enumDescriptions": [ "Not an error; returned on success\n\nHTTP Mapping: 200 OK", "The operation was cancelled, typically by the caller.\n\nHTTP Mapping: 499 Client Closed Request", @@ -783,6 +677,478 @@ "The service is currently unavailable. This is most likely a\ntransient condition, which can be corrected by retrying with\na backoff.\n\nSee the guidelines above for deciding between `FAILED_PRECONDITION`,\n`ABORTED`, and `UNAVAILABLE`.\n\nHTTP Mapping: 503 Service Unavailable", "Unrecoverable data loss or corruption.\n\nHTTP Mapping: 500 Internal Server Error" ], + "type": "string" + } + }, + "type": "object" + }, + "ImportReadGroupSetsResponse": { + "description": "The read group set import response.", + "id": "ImportReadGroupSetsResponse", + "properties": { + "readGroupSetIds": { + "description": "IDs of the read group sets that were created.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "ImportVariantsResponse": { + "description": "The variant data import response.", + "id": "ImportVariantsResponse", + "properties": { + "callSetIds": { + "description": "IDs of the call sets created during the import.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "ListOperationsResponse": { + "description": "The response message for Operations.ListOperations.", + "id": "ListOperationsResponse", + "properties": { + "nextPageToken": { + "description": "The standard List next-page token.", + "type": "string" + }, + "operations": { + "description": "A list of operations that matches the specified filter in the request.", + "items": { + "$ref": "Operation" + }, + "type": "array" + } + }, + "type": "object" + }, + "ListPipelinesResponse": { + "description": "The response of ListPipelines. Contains at most `pageSize`\npipelines. If it contains `pageSize` pipelines, and more pipelines\nexist, then `nextPageToken` will be populated and should be\nused as the `pageToken` argument to a subsequent ListPipelines\nrequest.", + "id": "ListPipelinesResponse", + "properties": { + "nextPageToken": { + "description": "The token to use to get the next page of results.", + "type": "string" + }, + "pipelines": { + "description": "The matched pipelines.", + "items": { + "$ref": "Pipeline" + }, + "type": "array" + } + }, + "type": "object" + }, + "LocalCopy": { + "description": "LocalCopy defines how a remote file should be copied to and from the VM.", + "id": "LocalCopy", + "properties": { + "disk": { + "description": "Required. The name of the disk where this parameter is\nlocated. Can be the name of one of the disks specified in the\nResources field, or \"boot\", which represents the Docker\ninstance's boot disk and has a mount point of `/`.", + "type": "string" + }, + "path": { + "description": "Required. The path within the user's docker container where\nthis input should be localized to and from, relative to the specified\ndisk's mount point. For example: file.txt,", + "type": "string" + } + }, + "type": "object" + }, + "LoggingOptions": { + "description": "The logging options for the pipeline run.", + "id": "LoggingOptions", + "properties": { + "gcsPath": { + "description": "The location in Google Cloud Storage to which the pipeline logs\nwill be copied. Can be specified as a fully qualified directory\npath, in which case logs will be output with a unique identifier\nas the filename in that directory, or as a fully specified path,\nwhich must end in `.log`, in which case that path will be\nused, and the user must ensure that logs are not\noverwritten. Stdout and stderr logs from the run are also\ngenerated and output as `-stdout.log` and `-stderr.log`.", + "type": "string" + } + }, + "type": "object" + }, + "Operation": { + "description": "This resource represents a long-running operation that is the result of a\nnetwork API call.", + "id": "Operation", + "properties": { + "done": { + "description": "If the value is `false`, it means the operation is still in progress.\nIf `true`, the operation is completed, and either `error` or `response` is\navailable.", + "type": "boolean" + }, + "error": { + "$ref": "Status", + "description": "The error result of the operation in case of failure or cancellation." + }, + "metadata": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "description": "An OperationMetadata or Metadata object. This will always be returned with the Operation.", + "type": "object" + }, + "name": { + "description": "The server-assigned name, which is only unique within the same service that originally returns it. For example\u0026#58; `operations/CJHU7Oi_ChDrveSpBRjfuL-qzoWAgEw`", + "type": "string" + }, + "response": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "description": "If importing ReadGroupSets, an ImportReadGroupSetsResponse is returned. If importing Variants, an ImportVariantsResponse is returned. For pipelines and exports, an Empty response is returned.", + "type": "object" + } + }, + "type": "object" + }, + "OperationEvent": { + "description": "An event that occurred during an Operation.", + "id": "OperationEvent", + "properties": { + "description": { + "description": "Required description of event.", + "type": "string" + }, + "endTime": { + "description": "Optional time of when event finished. An event can have a start time and no\nfinish time. If an event has a finish time, there must be a start time.", + "format": "google-datetime", + "type": "string" + }, + "startTime": { + "description": "Optional time of when event started.", + "format": "google-datetime", + "type": "string" + } + }, + "type": "object" + }, + "OperationMetadata": { + "description": "Metadata describing an Operation.", + "id": "OperationMetadata", + "properties": { + "clientId": { + "description": "This field is deprecated. Use `labels` instead. Optionally provided by the\ncaller when submitting the request that creates the operation.", + "type": "string" + }, + "createTime": { + "description": "The time at which the job was submitted to the Genomics service.", + "format": "google-datetime", + "type": "string" + }, + "endTime": { + "description": "The time at which the job stopped running.", + "format": "google-datetime", + "type": "string" + }, + "events": { + "description": "Optional event messages that were generated during the job's execution.\nThis also contains any warnings that were generated during import\nor export.", + "items": { + "$ref": "OperationEvent" + }, + "type": "array" + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Optionally provided by the caller when submitting the request that creates\nthe operation.", + "type": "object" + }, + "projectId": { + "description": "The Google Cloud Project in which the job is scoped.", + "type": "string" + }, + "request": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "description": "The original request that started the operation. Note that this will be in\ncurrent version of the API. If the operation was started with v1beta2 API\nand a GetOperation is performed on v1 API, a v1 request will be returned.", + "type": "object" + }, + "runtimeMetadata": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "description": "Runtime metadata on this Operation.", + "type": "object" + }, + "startTime": { + "description": "The time at which the job began to run.", + "format": "google-datetime", + "type": "string" + } + }, + "type": "object" + }, + "Pipeline": { + "description": "The pipeline object. Represents a transformation from a set of input\nparameters to a set of output parameters. The transformation is defined\nas a docker image and command to run within that image. Each pipeline\nis run on a Google Compute Engine VM. A pipeline can be created with the\n`create` method and then later run with the `run` method, or a pipeline can\nbe defined and run all at once with the `run` method.", + "id": "Pipeline", + "properties": { + "description": { + "description": "User-specified description.", + "type": "string" + }, + "docker": { + "$ref": "DockerExecutor", + "description": "Specifies the docker run information." + }, + "inputParameters": { + "description": "Input parameters of the pipeline.", + "items": { + "$ref": "PipelineParameter" + }, + "type": "array" + }, + "name": { + "description": "Required. A user specified pipeline name that does not have to be unique.\nThis name can be used for filtering Pipelines in ListPipelines.", + "type": "string" + }, + "outputParameters": { + "description": "Output parameters of the pipeline.", + "items": { + "$ref": "PipelineParameter" + }, + "type": "array" + }, + "pipelineId": { + "description": "Unique pipeline id that is generated by the service when CreatePipeline\nis called. Cannot be specified in the Pipeline used in the\nCreatePipelineRequest, and will be populated in the response to\nCreatePipeline and all subsequent Get and List calls. Indicates that the\nservice has registered this pipeline.", + "type": "string" + }, + "projectId": { + "description": "Required. The project in which to create the pipeline. The caller must have\nWRITE access.", + "type": "string" + }, + "resources": { + "$ref": "PipelineResources", + "description": "Required. Specifies resource requirements for the pipeline run.\nRequired fields:\n\n*\nminimumCpuCores\n\n*\nminimumRamGb" + } + }, + "type": "object" + }, + "PipelineParameter": { + "description": "Parameters facilitate setting and delivering data into the\npipeline's execution environment. They are defined at create time,\nwith optional defaults, and can be overridden at run time.\n\nIf `localCopy` is unset, then the parameter specifies a string that\nis passed as-is into the pipeline, as the value of the environment\nvariable with the given name. A default value can be optionally\nspecified at create time. The default can be overridden at run time\nusing the inputs map. If no default is given, a value must be\nsupplied at runtime.\n\nIf `localCopy` is defined, then the parameter specifies a data\nsource or sink, both in Google Cloud Storage and on the Docker container\nwhere the pipeline computation is run. The service account associated with\nthe Pipeline (by\ndefault the project's Compute Engine service account) must have access to the\nGoogle Cloud Storage paths.\n\nAt run time, the Google Cloud Storage paths can be overridden if a default\nwas provided at create time, or must be set otherwise. The pipeline runner\nshould add a key/value pair to either the inputs or outputs map. The\nindicated data copies will be carried out before/after pipeline execution,\njust as if the corresponding arguments were provided to `gsutil cp`.\n\nFor example: Given the following `PipelineParameter`, specified\nin the `inputParameters` list:\n\n```\n{name: \"input_file\", localCopy: {path: \"file.txt\", disk: \"pd1\"}}\n```\n\nwhere `disk` is defined in the `PipelineResources` object as:\n\n```\n{name: \"pd1\", mountPoint: \"/mnt/disk/\"}\n```\n\nWe create a disk named `pd1`, mount it on the host VM, and map\n`/mnt/pd1` to `/mnt/disk` in the docker container. At\nruntime, an entry for `input_file` would be required in the inputs\nmap, such as:\n\n```\n inputs[\"input_file\"] = \"gs://my-bucket/bar.txt\"\n```\n\nThis would generate the following gsutil call:\n\n```\n gsutil cp gs://my-bucket/bar.txt /mnt/pd1/file.txt\n```\n\nThe file `/mnt/pd1/file.txt` maps to `/mnt/disk/file.txt` in the\nDocker container. Acceptable paths are:\n\n\u003ctable\u003e\n \u003cthead\u003e\n \u003ctr\u003e\u003cth\u003eGoogle Cloud storage path\u003c/th\u003e\u003cth\u003eLocal path\u003c/th\u003e\u003c/tr\u003e\n \u003c/thead\u003e\n \u003ctbody\u003e\n \u003ctr\u003e\u003ctd\u003efile\u003c/td\u003e\u003ctd\u003efile\u003c/td\u003e\u003c/tr\u003e\n \u003ctr\u003e\u003ctd\u003eglob\u003c/td\u003e\u003ctd\u003edirectory\u003c/td\u003e\u003c/tr\u003e\n \u003c/tbody\u003e\n\u003c/table\u003e\n\nFor outputs, the direction of the copy is reversed:\n\n```\n gsutil cp /mnt/disk/file.txt gs://my-bucket/bar.txt\n```\n\nAcceptable paths are:\n\n\u003ctable\u003e\n \u003cthead\u003e\n \u003ctr\u003e\u003cth\u003eLocal path\u003c/th\u003e\u003cth\u003eGoogle Cloud Storage path\u003c/th\u003e\u003c/tr\u003e\n \u003c/thead\u003e\n \u003ctbody\u003e\n \u003ctr\u003e\u003ctd\u003efile\u003c/td\u003e\u003ctd\u003efile\u003c/td\u003e\u003c/tr\u003e\n \u003ctr\u003e\n \u003ctd\u003efile\u003c/td\u003e\n \u003ctd\u003edirectory - directory must already exist\u003c/td\u003e\n \u003c/tr\u003e\n \u003ctr\u003e\n \u003ctd\u003eglob\u003c/td\u003e\n \u003ctd\u003edirectory - directory will be created if it doesn't exist\u003c/td\u003e\u003c/tr\u003e\n \u003c/tbody\u003e\n\u003c/table\u003e\n\nOne restriction due to docker limitations, is that for outputs that are found\non the boot disk, the local path cannot be a glob and must be a file.", + "id": "PipelineParameter", + "properties": { + "defaultValue": { + "description": "The default value for this parameter. Can be overridden at runtime.\nIf `localCopy` is present, then this must be a Google Cloud Storage path\nbeginning with `gs://`.", + "type": "string" + }, + "description": { + "description": "Human-readable description.", + "type": "string" + }, + "localCopy": { + "$ref": "LocalCopy", + "description": "If present, this parameter is marked for copying to and from the VM.\n`LocalCopy` indicates where on the VM the file should be. The value\ngiven to this parameter (either at runtime or using `defaultValue`)\nmust be the remote path where the file should be." + }, + "name": { + "description": "Required. Name of the parameter - the pipeline runner uses this string\nas the key to the input and output maps in RunPipeline.", + "type": "string" + } + }, + "type": "object" + }, + "PipelineResources": { + "description": "The system resources for the pipeline run.", + "id": "PipelineResources", + "properties": { + "acceleratorCount": { + "description": "Optional. The number of accelerators of the specified type to attach.\nBy specifying this parameter, you will download and install the following\nthird-party software onto your managed Compute Engine instances:\nNVIDIA® Tesla® drivers and NVIDIA® CUDA toolkit.", + "format": "int64", + "type": "string" + }, + "acceleratorType": { + "description": "Optional. The Compute Engine defined accelerator type.\nBy specifying this parameter, you will download and install the following\nthird-party software onto your managed Compute Engine instances: NVIDIA®\nTesla® drivers and NVIDIA® CUDA toolkit.\nPlease see https://cloud.google.com/compute/docs/gpus/ for a list of\navailable accelerator types.", + "type": "string" + }, + "bootDiskSizeGb": { + "description": "The size of the boot disk. Defaults to 10 (GB).", + "format": "int32", + "type": "integer" + }, + "disks": { + "description": "Disks to attach.", + "items": { + "$ref": "Disk" + }, + "type": "array" + }, + "minimumCpuCores": { + "description": "The minimum number of cores to use. Defaults to 1.", + "format": "int32", + "type": "integer" + }, + "minimumRamGb": { + "description": "The minimum amount of RAM to use. Defaults to 3.75 (GB)", + "format": "double", + "type": "number" + }, + "noAddress": { + "description": "Whether to assign an external IP to the instance. This is an experimental\nfeature that may go away. Defaults to false.\nCorresponds to `--no_address` flag for [gcloud compute instances create]\n(https://cloud.google.com/sdk/gcloud/reference/compute/instances/create).\nIn order to use this, must be true for both create time and run time.\nCannot be true at run time if false at create time. If you need to ssh into\na private IP VM for debugging, you can ssh to a public VM and then ssh into\nthe private VM's Internal IP. If noAddress is set, this pipeline run may\nonly load docker images from Google Container Registry and not Docker Hub.\nBefore using this, you must\n[configure access to Google services from internal IPs](https://cloud.google.com/compute/docs/configure-private-google-access#configuring_access_to_google_services_from_internal_ips).", + "type": "boolean" + }, + "preemptible": { + "description": "Whether to use preemptible VMs. Defaults to `false`. In order to use this,\nmust be true for both create time and run time. Cannot be true at run time\nif false at create time.", + "type": "boolean" + }, + "zones": { + "description": "List of Google Compute Engine availability zones to which resource\ncreation will restricted. If empty, any zone may be chosen.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "PullStartedEvent": { + "description": "This event is generated when the worker starts pulling an image.", + "id": "PullStartedEvent", + "properties": { + "imageUri": { + "description": "The URI of the image that was pulled.", + "type": "string" + } + }, + "type": "object" + }, + "PullStoppedEvent": { + "description": "This event is generated when the worker stops pulling an image.", + "id": "PullStoppedEvent", + "properties": { + "imageUri": { + "description": "The URI of the image that was pulled.", + "type": "string" + } + }, + "type": "object" + }, + "RepeatedString": { + "id": "RepeatedString", + "properties": { + "values": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "RunPipelineArgs": { + "description": "The pipeline run arguments.", + "id": "RunPipelineArgs", + "properties": { + "clientId": { + "description": "This field is deprecated. Use `labels` instead. Client-specified pipeline\noperation identifier.", + "type": "string" + }, + "inputs": { + "additionalProperties": { + "type": "string" + }, + "description": "Pipeline input arguments; keys are defined in the pipeline documentation.\nAll input parameters that do not have default values must be specified.\nIf parameters with defaults are specified here, the defaults will be\noverridden.", + "type": "object" + }, + "keepVmAliveOnFailureDuration": { + "description": "How long to keep the VM up after a failure (for example docker command\nfailed, copying input or output files failed, etc). While the VM is up, one\ncan ssh into the VM to debug. Default is 0; maximum allowed value is 1 day.", + "format": "google-duration", + "type": "string" + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Labels to apply to this pipeline run. Labels will also be applied to\ncompute resources (VM, disks) created by this pipeline run. When listing\noperations, operations can filtered by labels.\nLabel keys may not be empty; label values may be empty. Non-empty labels\nmust be 1-63 characters long, and comply with [RFC1035]\n(https://www.ietf.org/rfc/rfc1035.txt).\nSpecifically, the name must be 1-63 characters long and match the regular\nexpression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first\ncharacter must be a lowercase letter, and all following characters must be\na dash, lowercase letter, or digit, except the last character, which cannot\nbe a dash.", + "type": "object" + }, + "logging": { + "$ref": "LoggingOptions", + "description": "Required. Logging options. Used by the service to communicate results\nto the user." + }, + "outputs": { + "additionalProperties": { + "type": "string" + }, + "description": "Pipeline output arguments; keys are defined in the pipeline\ndocumentation. All output parameters of without default values\nmust be specified. If parameters with defaults are specified\nhere, the defaults will be overridden.", + "type": "object" + }, + "projectId": { + "description": "Required. The project in which to run the pipeline. The caller must have\nWRITER access to all Google Cloud services and resources (e.g. Google\nCompute Engine) will be used.", + "type": "string" + }, + "resources": { + "$ref": "PipelineResources", + "description": "Specifies resource requirements/overrides for the pipeline run." + }, + "serviceAccount": { + "$ref": "ServiceAccount", + "description": "The Google Cloud Service Account that will be used to access data and\nservices. By default, the compute service account associated with\n`projectId` is used." + } + }, + "type": "object" + }, + "RunPipelineRequest": { + "description": "The request to run a pipeline. If `pipelineId` is specified, it\nrefers to a saved pipeline created with CreatePipeline and set as\nthe `pipelineId` of the returned Pipeline object. If\n`ephemeralPipeline` is specified, that pipeline is run once\nwith the given args and not saved. It is an error to specify both\n`pipelineId` and `ephemeralPipeline`. `pipelineArgs`\nmust be specified.", + "id": "RunPipelineRequest", + "properties": { + "ephemeralPipeline": { + "$ref": "Pipeline", + "description": "A new pipeline object to run once and then delete." + }, + "pipelineArgs": { + "$ref": "RunPipelineArgs", + "description": "The arguments to use when running this pipeline." + }, + "pipelineId": { + "description": "The already created pipeline to run.", + "type": "string" + } + }, + "type": "object" + }, + "RuntimeMetadata": { + "description": "Runtime metadata that will be populated in the\nruntimeMetadata\nfield of the Operation associated with a RunPipeline execution.", + "id": "RuntimeMetadata", + "properties": { + "computeEngine": { + "$ref": "ComputeEngine", + "description": "Execution information specific to Google Compute Engine." + } + }, + "type": "object" + }, + "ServiceAccount": { + "description": "A Google Cloud Service Account.", + "id": "ServiceAccount", + "properties": { + "email": { + "description": "Email address of the service account. Defaults to `default`,\nwhich uses the compute service account associated with the project.", + "type": "string" + }, + "scopes": { + "description": "List of scopes to be enabled for this service account on the VM.\nThe following scopes are automatically included:\n\n* https://www.googleapis.com/auth/compute\n* https://www.googleapis.com/auth/devstorage.full_control\n* https://www.googleapis.com/auth/genomics\n* https://www.googleapis.com/auth/logging.write\n* https://www.googleapis.com/auth/monitoring.write", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "SetOperationStatusRequest": { + "description": "Request to set operation status. Should only be used by VMs\ncreated by the Pipelines Service and not by end users.", + "id": "SetOperationStatusRequest", + "properties": { + "errorCode": { "enum": [ "OK", "CANCELLED", @@ -801,299 +1167,139 @@ "INTERNAL", "UNAVAILABLE", "DATA_LOSS" - ] + ], + "enumDescriptions": [ + "Not an error; returned on success\n\nHTTP Mapping: 200 OK", + "The operation was cancelled, typically by the caller.\n\nHTTP Mapping: 499 Client Closed Request", + "Unknown error. For example, this error may be returned when\na `Status` value received from another address space belongs to\nan error space that is not known in this address space. Also\nerrors raised by APIs that do not return enough error information\nmay be converted to this error.\n\nHTTP Mapping: 500 Internal Server Error", + "The client specified an invalid argument. Note that this differs\nfrom `FAILED_PRECONDITION`. `INVALID_ARGUMENT` indicates arguments\nthat are problematic regardless of the state of the system\n(e.g., a malformed file name).\n\nHTTP Mapping: 400 Bad Request", + "The deadline expired before the operation could complete. For operations\nthat change the state of the system, this error may be returned\neven if the operation has completed successfully. For example, a\nsuccessful response from a server could have been delayed long\nenough for the deadline to expire.\n\nHTTP Mapping: 504 Gateway Timeout", + "Some requested entity (e.g., file or directory) was not found.\n\nNote to server developers: if a request is denied for an entire class\nof users, such as gradual feature rollout or undocumented whitelist,\n`NOT_FOUND` may be used. If a request is denied for some users within\na class of users, such as user-based access control, `PERMISSION_DENIED`\nmust be used.\n\nHTTP Mapping: 404 Not Found", + "The entity that a client attempted to create (e.g., file or directory)\nalready exists.\n\nHTTP Mapping: 409 Conflict", + "The caller does not have permission to execute the specified\noperation. `PERMISSION_DENIED` must not be used for rejections\ncaused by exhausting some resource (use `RESOURCE_EXHAUSTED`\ninstead for those errors). `PERMISSION_DENIED` must not be\nused if the caller can not be identified (use `UNAUTHENTICATED`\ninstead for those errors). This error code does not imply the\nrequest is valid or the requested entity exists or satisfies\nother pre-conditions.\n\nHTTP Mapping: 403 Forbidden", + "The request does not have valid authentication credentials for the\noperation.\n\nHTTP Mapping: 401 Unauthorized", + "Some resource has been exhausted, perhaps a per-user quota, or\nperhaps the entire file system is out of space.\n\nHTTP Mapping: 429 Too Many Requests", + "The operation was rejected because the system is not in a state\nrequired for the operation's execution. For example, the directory\nto be deleted is non-empty, an rmdir operation is applied to\na non-directory, etc.\n\nService implementors can use the following guidelines to decide\nbetween `FAILED_PRECONDITION`, `ABORTED`, and `UNAVAILABLE`:\n (a) Use `UNAVAILABLE` if the client can retry just the failing call.\n (b) Use `ABORTED` if the client should retry at a higher level\n (e.g., when a client-specified test-and-set fails, indicating the\n client should restart a read-modify-write sequence).\n (c) Use `FAILED_PRECONDITION` if the client should not retry until\n the system state has been explicitly fixed. E.g., if an \"rmdir\"\n fails because the directory is non-empty, `FAILED_PRECONDITION`\n should be returned since the client should not retry unless\n the files are deleted from the directory.\n\nHTTP Mapping: 400 Bad Request", + "The operation was aborted, typically due to a concurrency issue such as\na sequencer check failure or transaction abort.\n\nSee the guidelines above for deciding between `FAILED_PRECONDITION`,\n`ABORTED`, and `UNAVAILABLE`.\n\nHTTP Mapping: 409 Conflict", + "The operation was attempted past the valid range. E.g., seeking or\nreading past end-of-file.\n\nUnlike `INVALID_ARGUMENT`, this error indicates a problem that may\nbe fixed if the system state changes. For example, a 32-bit file\nsystem will generate `INVALID_ARGUMENT` if asked to read at an\noffset that is not in the range [0,2^32-1], but it will generate\n`OUT_OF_RANGE` if asked to read from an offset past the current\nfile size.\n\nThere is a fair bit of overlap between `FAILED_PRECONDITION` and\n`OUT_OF_RANGE`. We recommend using `OUT_OF_RANGE` (the more specific\nerror) when it applies so that callers who are iterating through\na space can easily look for an `OUT_OF_RANGE` error to detect when\nthey are done.\n\nHTTP Mapping: 400 Bad Request", + "The operation is not implemented or is not supported/enabled in this\nservice.\n\nHTTP Mapping: 501 Not Implemented", + "Internal errors. This means that some invariants expected by the\nunderlying system have been broken. This error code is reserved\nfor serious errors.\n\nHTTP Mapping: 500 Internal Server Error", + "The service is currently unavailable. This is most likely a\ntransient condition, which can be corrected by retrying with\na backoff.\n\nSee the guidelines above for deciding between `FAILED_PRECONDITION`,\n`ABORTED`, and `UNAVAILABLE`.\n\nHTTP Mapping: 503 Service Unavailable", + "Unrecoverable data loss or corruption.\n\nHTTP Mapping: 500 Internal Server Error" + ], + "type": "string" + }, + "errorMessage": { + "type": "string" + }, + "operationId": { + "type": "string" }, "timestampEvents": { - "type": "array", "items": { "$ref": "TimestampEvent" - } + }, + "type": "array" + }, + "validationToken": { + "format": "uint64", + "type": "string" } }, - "id": "SetOperationStatusRequest", - "description": "Request to set operation status. Should only be used by VMs\ncreated by the Pipelines Service and not by end users.", "type": "object" }, - "ComputeEngine": { - "description": "Describes a Compute Engine resource that is being managed by a running\npipeline.", - "type": "object", + "Status": { + "description": "The `Status` type defines a logical error model that is suitable for different\nprogramming environments, including REST APIs and RPC APIs. It is used by\n[gRPC](https://github.com/grpc). The error model is designed to be:\n\n- Simple to use and understand for most users\n- Flexible enough to meet unexpected needs\n\n# Overview\n\nThe `Status` message contains three pieces of data: error code, error message,\nand error details. The error code should be an enum value of\ngoogle.rpc.Code, but it may accept additional error codes if needed. The\nerror message should be a developer-facing English message that helps\ndevelopers *understand* and *resolve* the error. If a localized user-facing\nerror message is needed, put the localized message in the error details or\nlocalize it in the client. The optional error details may contain arbitrary\ninformation about the error. There is a predefined set of error detail types\nin the package `google.rpc` that can be used for common error conditions.\n\n# Language mapping\n\nThe `Status` message is the logical representation of the error model, but it\nis not necessarily the actual wire format. When the `Status` message is\nexposed in different client libraries and different wire protocols, it can be\nmapped differently. For example, it will likely be mapped to some exceptions\nin Java, but more likely mapped to some error codes in C.\n\n# Other uses\n\nThe error model and the `Status` message can be used in a variety of\nenvironments, either with or without APIs, to provide a\nconsistent developer experience across different environments.\n\nExample uses of this error model include:\n\n- Partial errors. If a service needs to return partial errors to the client,\n it may embed the `Status` in the normal response to indicate the partial\n errors.\n\n- Workflow errors. A typical workflow has multiple steps. Each step may\n have a `Status` message for error reporting.\n\n- Batch operations. If a client uses batch request and batch response, the\n `Status` message should be used directly inside batch response, one for\n each error sub-response.\n\n- Asynchronous operations. If an API call embeds asynchronous operation\n results in its response, the status of those operations should be\n represented directly using the `Status` message.\n\n- Logging. If some API errors are stored in logs, the message `Status` could\n be used directly after any stripping needed for security/privacy reasons.", + "id": "Status", "properties": { - "instanceName": { - "description": "The instance on which the operation is running.", - "type": "string" + "code": { + "description": "The status code, which should be an enum value of google.rpc.Code.", + "format": "int32", + "type": "integer" }, - "zone": { - "description": "The availability zone in which the instance resides.", - "type": "string" - }, - "machineType": { - "description": "The machine type of the instance.", - "type": "string" - }, - "diskNames": { - "description": "The names of the disks that were created for this pipeline.", - "type": "array", + "details": { + "description": "A list of messages that carry the error details. There is a common set of\nmessage types for APIs to use.", "items": { - "type": "string" - } - } - }, - "id": "ComputeEngine" - }, - "ImportVariantsResponse": { - "description": "The variant data import response.", - "type": "object", - "properties": { - "callSetIds": { - "type": "array", - "items": { - "type": "string" + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "type": "object" }, - "description": "IDs of the call sets created during the import." + "type": "array" + }, + "message": { + "description": "A developer-facing error message, which should be in English. Any\nuser-facing error message should be localized and sent in the\ngoogle.rpc.Status.details field, or localized by the client.", + "type": "string" } }, - "id": "ImportVariantsResponse" + "type": "object" }, "TimestampEvent": { "description": "Stores the list of events and times they occured for major events in job\nexecution.", - "type": "object", + "id": "TimestampEvent", "properties": { + "description": { + "description": "String indicating the type of event", + "type": "string" + }, "timestamp": { "description": "The time this event occured.", "format": "google-datetime", "type": "string" - }, - "description": { - "description": "String indicating the type of event", - "type": "string" } }, - "id": "TimestampEvent" - }, - "LocalCopy": { - "properties": { - "disk": { - "description": "Required. The name of the disk where this parameter is\nlocated. Can be the name of one of the disks specified in the\nResources field, or \"boot\", which represents the Docker\ninstance's boot disk and has a mount point of `/`.", - "type": "string" - }, - "path": { - "description": "Required. The path within the user's docker container where\nthis input should be localized to and from, relative to the specified\ndisk's mount point. For example: file.txt,", - "type": "string" - } - }, - "id": "LocalCopy", - "description": "LocalCopy defines how a remote file should be copied to and from the VM.", "type": "object" }, - "DockerExecutor": { - "description": "The Docker execuctor specification.", - "type": "object", + "UnexpectedExitStatusEvent": { + "description": "This event is generated when the execution of a container results in a\nnon-zero exit status that was not otherwise ignored. Execution will\ncontinue, but only actions that are flagged as ALWAYS_RUN will be executed:\nother actions will be skipped.", + "id": "UnexpectedExitStatusEvent", "properties": { - "imageName": { - "description": "Required. Image name from either Docker Hub or Google Container Registry.\nUsers that run pipelines must have READ access to the image.", - "type": "string" - }, - "cmd": { - "type": "string", - "description": "Required. The command or newline delimited script to run. The command\nstring will be executed within a bash shell.\n\nIf the command exits with a non-zero exit code, output parameter\nde-localization will be skipped and the pipeline operation's\n`error` field will be populated.\n\nMaximum command string length is 16384." - } - }, - "id": "DockerExecutor" - }, - "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 `{}`.", - "type": "object", - "properties": {}, - "id": "Empty" - }, - "Disk": { - "type": "object", - "properties": { - "autoDelete": { - "description": "Deprecated. Disks created by the Pipelines API will be deleted at the end\nof the pipeline run, regardless of what this field is set to.", - "type": "boolean" - }, - "sizeGb": { - "description": "The size of the disk. Defaults to 500 (GB).\nThis field is not applicable for local SSD.", + "actionId": { + "description": "The numeric ID of the action that started the container.", "format": "int32", "type": "integer" }, - "mountPoint": { - "description": "Required at create time and cannot be overridden at run time.\nSpecifies the path in the docker container where files on\nthis disk should be located. For example, if `mountPoint`\nis `/mnt/disk`, and the parameter has `localPath`\n`inputs/file.txt`, the docker container can access the data at\n`/mnt/disk/inputs/file.txt`.", - "type": "string" - }, - "readOnly": { - "description": "Specifies how a sourced-base persistent disk will be mounted. See\nhttps://cloud.google.com/compute/docs/disks/persistent-disks#use_multi_instances\nfor more details.\nCan only be set at create time.", - "type": "boolean" - }, - "source": { - "description": "The full or partial URL of the persistent disk to attach. See\nhttps://cloud.google.com/compute/docs/reference/latest/instances#resource\nand\nhttps://cloud.google.com/compute/docs/disks/persistent-disks#snapshots\nfor more details.", - "type": "string" - }, - "name": { - "description": "Required. The name of the disk that can be used in the pipeline\nparameters. Must be 1 - 63 characters.\nThe name \"boot\" is reserved for system use.", - "type": "string" - }, - "type": { - "enum": [ - "TYPE_UNSPECIFIED", - "PERSISTENT_HDD", - "PERSISTENT_SSD", - "LOCAL_SSD" - ], - "description": "Required. The type of the disk to create.", - "type": "string", - "enumDescriptions": [ - "Default disk type. Use one of the other options below.", - "Specifies a Google Compute Engine persistent hard disk. See\nhttps://cloud.google.com/compute/docs/disks/#pdspecs for details.", - "Specifies a Google Compute Engine persistent solid-state disk. See\nhttps://cloud.google.com/compute/docs/disks/#pdspecs for details.", - "Specifies a Google Compute Engine local SSD.\nSee https://cloud.google.com/compute/docs/disks/local-ssd for details." - ] + "exitStatus": { + "description": "The exit status of the container.", + "format": "int32", + "type": "integer" } }, - "id": "Disk", - "description": "A Google Compute Engine disk resource specification." + "type": "object" }, - "PipelineParameter": { - "description": "Parameters facilitate setting and delivering data into the\npipeline's execution environment. They are defined at create time,\nwith optional defaults, and can be overridden at run time.\n\nIf `localCopy` is unset, then the parameter specifies a string that\nis passed as-is into the pipeline, as the value of the environment\nvariable with the given name. A default value can be optionally\nspecified at create time. The default can be overridden at run time\nusing the inputs map. If no default is given, a value must be\nsupplied at runtime.\n\nIf `localCopy` is defined, then the parameter specifies a data\nsource or sink, both in Google Cloud Storage and on the Docker container\nwhere the pipeline computation is run. The service account associated with\nthe Pipeline (by\ndefault the project's Compute Engine service account) must have access to the\nGoogle Cloud Storage paths.\n\nAt run time, the Google Cloud Storage paths can be overridden if a default\nwas provided at create time, or must be set otherwise. The pipeline runner\nshould add a key/value pair to either the inputs or outputs map. The\nindicated data copies will be carried out before/after pipeline execution,\njust as if the corresponding arguments were provided to `gsutil cp`.\n\nFor example: Given the following `PipelineParameter`, specified\nin the `inputParameters` list:\n\n```\n{name: \"input_file\", localCopy: {path: \"file.txt\", disk: \"pd1\"}}\n```\n\nwhere `disk` is defined in the `PipelineResources` object as:\n\n```\n{name: \"pd1\", mountPoint: \"/mnt/disk/\"}\n```\n\nWe create a disk named `pd1`, mount it on the host VM, and map\n`/mnt/pd1` to `/mnt/disk` in the docker container. At\nruntime, an entry for `input_file` would be required in the inputs\nmap, such as:\n\n```\n inputs[\"input_file\"] = \"gs://my-bucket/bar.txt\"\n```\n\nThis would generate the following gsutil call:\n\n```\n gsutil cp gs://my-bucket/bar.txt /mnt/pd1/file.txt\n```\n\nThe file `/mnt/pd1/file.txt` maps to `/mnt/disk/file.txt` in the\nDocker container. Acceptable paths are:\n\n\u003ctable\u003e\n \u003cthead\u003e\n \u003ctr\u003e\u003cth\u003eGoogle Cloud storage path\u003c/th\u003e\u003cth\u003eLocal path\u003c/th\u003e\u003c/tr\u003e\n \u003c/thead\u003e\n \u003ctbody\u003e\n \u003ctr\u003e\u003ctd\u003efile\u003c/td\u003e\u003ctd\u003efile\u003c/td\u003e\u003c/tr\u003e\n \u003ctr\u003e\u003ctd\u003eglob\u003c/td\u003e\u003ctd\u003edirectory\u003c/td\u003e\u003c/tr\u003e\n \u003c/tbody\u003e\n\u003c/table\u003e\n\nFor outputs, the direction of the copy is reversed:\n\n```\n gsutil cp /mnt/disk/file.txt gs://my-bucket/bar.txt\n```\n\nAcceptable paths are:\n\n\u003ctable\u003e\n \u003cthead\u003e\n \u003ctr\u003e\u003cth\u003eLocal path\u003c/th\u003e\u003cth\u003eGoogle Cloud Storage path\u003c/th\u003e\u003c/tr\u003e\n \u003c/thead\u003e\n \u003ctbody\u003e\n \u003ctr\u003e\u003ctd\u003efile\u003c/td\u003e\u003ctd\u003efile\u003c/td\u003e\u003c/tr\u003e\n \u003ctr\u003e\n \u003ctd\u003efile\u003c/td\u003e\n \u003ctd\u003edirectory - directory must already exist\u003c/td\u003e\n \u003c/tr\u003e\n \u003ctr\u003e\n \u003ctd\u003eglob\u003c/td\u003e\n \u003ctd\u003edirectory - directory will be created if it doesn't exist\u003c/td\u003e\u003c/tr\u003e\n \u003c/tbody\u003e\n\u003c/table\u003e\n\nOne restriction due to docker limitations, is that for outputs that are found\non the boot disk, the local path cannot be a glob and must be a file.", - "type": "object", + "WorkerAssignedEvent": { + "description": "This event is generated once a worker VM has been assigned to run the\npipeline.", + "id": "WorkerAssignedEvent", "properties": { - "defaultValue": { - "type": "string", - "description": "The default value for this parameter. Can be overridden at runtime.\nIf `localCopy` is present, then this must be a Google Cloud Storage path\nbeginning with `gs://`." - }, - "name": { - "description": "Required. Name of the parameter - the pipeline runner uses this string\nas the key to the input and output maps in RunPipeline.", + "instance": { + "description": "The worker's instance name.", "type": "string" }, - "description": { - "description": "Human-readable description.", - "type": "string" - }, - "localCopy": { - "$ref": "LocalCopy", - "description": "If present, this parameter is marked for copying to and from the VM.\n`LocalCopy` indicates where on the VM the file should be. The value\ngiven to this parameter (either at runtime or using `defaultValue`)\nmust be the remote path where the file should be." - } - }, - "id": "PipelineParameter" - }, - "LoggingOptions": { - "description": "The logging options for the pipeline run.", - "type": "object", - "properties": { - "gcsPath": { - "description": "The location in Google Cloud Storage to which the pipeline logs\nwill be copied. Can be specified as a fully qualified directory\npath, in which case logs will be output with a unique identifier\nas the filename in that directory, or as a fully specified path,\nwhich must end in `.log`, in which case that path will be\nused, and the user must ensure that logs are not\noverwritten. Stdout and stderr logs from the run are also\ngenerated and output as `-stdout.log` and `-stderr.log`.", + "zone": { + "description": "The zone the worker is running in.", "type": "string" } }, - "id": "LoggingOptions" + "type": "object" }, - "RunPipelineRequest": { - "id": "RunPipelineRequest", - "description": "The request to run a pipeline. If `pipelineId` is specified, it\nrefers to a saved pipeline created with CreatePipeline and set as\nthe `pipelineId` of the returned Pipeline object. If\n`ephemeralPipeline` is specified, that pipeline is run once\nwith the given args and not saved. It is an error to specify both\n`pipelineId` and `ephemeralPipeline`. `pipelineArgs`\nmust be specified.", - "type": "object", + "WorkerReleasedEvent": { + "description": "This event is generated when the worker VM that was assigned to the pipeline\nhas been released (i.e., deleted).", + "id": "WorkerReleasedEvent", "properties": { - "pipelineId": { - "description": "The already created pipeline to run.", + "instance": { + "description": "The worker's instance name.", "type": "string" }, - "ephemeralPipeline": { - "description": "A new pipeline object to run once and then delete.", - "$ref": "Pipeline" - }, - "pipelineArgs": { - "description": "The arguments to use when running this pipeline.", - "$ref": "RunPipelineArgs" - } - } - }, - "CancelOperationRequest": { - "description": "The request message for Operations.CancelOperation.", - "type": "object", - "properties": {}, - "id": "CancelOperationRequest" - }, - "RuntimeMetadata": { - "id": "RuntimeMetadata", - "description": "Runtime metadata that will be populated in the\nruntimeMetadata\nfield of the Operation associated with a RunPipeline execution.", - "type": "object", - "properties": { - "computeEngine": { - "description": "Execution information specific to Google Compute Engine.", - "$ref": "ComputeEngine" - } - } - }, - "Operation": { - "properties": { - "name": { - "description": "The server-assigned name, which is only unique within the same service that originally returns it. For example: `operations/CJHU7Oi_ChDrveSpBRjfuL-qzoWAgEw`", + "zone": { + "description": "The zone the worker was running in.", "type": "string" - }, - "error": { - "$ref": "Status", - "description": "The error result of the operation in case of failure or cancellation." - }, - "metadata": { - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - }, - "description": "An OperationMetadata object. This will always be returned with the Operation.", - "type": "object" - }, - "done": { - "description": "If the value is `false`, it means the operation is still in progress.\nIf `true`, the operation is completed, and either `error` or `response` is\navailable.", - "type": "boolean" - }, - "response": { - "description": "If importing ReadGroupSets, an ImportReadGroupSetsResponse is returned. If importing Variants, an ImportVariantsResponse is returned. For pipelines and exports, an Empty response is returned.", - "type": "object", - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - } } }, - "id": "Operation", - "description": "This resource represents a long-running operation that is the result of a\nnetwork API call.", "type": "object" } }, - "icons": { - "x16": "http://www.google.com/images/icons/product/search-16.gif", - "x32": "http://www.google.com/images/icons/product/search-32.gif" - }, - "protocol": "rest", - "version": "v1alpha2", - "baseUrl": "https://genomics.googleapis.com/", - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/cloud-platform": { - "description": "View and manage your data across Google Cloud Platform services" - }, - "https://www.googleapis.com/auth/genomics": { - "description": "View and manage Genomics data" - }, - "https://www.googleapis.com/auth/compute": { - "description": "View and manage your Google Compute Engine resources" - } - } - } - }, - "kind": "discovery#restDescription", - "description": "Upload, process, query, and search Genomics data in the cloud.", "servicePath": "", - "rootUrl": "https://genomics.googleapis.com/", - "basePath": "", - "ownerDomain": "google.com", - "name": "genomics", - "batchPath": "batch", - "revision": "20180117", - "id": "genomics:v1alpha2", - "documentationLink": "https://cloud.google.com/genomics", "title": "Genomics API", - "discoveryVersion": "v1", - "ownerName": "Google" -} + "version": "v1alpha2" +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/genomics/v1alpha2/genomics-gen.go b/vendor/google.golang.org/api/genomics/v1alpha2/genomics-gen.go index 70e25f2d5..fe175ef7d 100644 --- a/vendor/google.golang.org/api/genomics/v1alpha2/genomics-gen.go +++ b/vendor/google.golang.org/api/genomics/v1alpha2/genomics-gen.go @@ -147,6 +147,83 @@ func (s *ComputeEngine) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// ContainerStartedEvent: This event is generated when a container +// starts. +type ContainerStartedEvent struct { + // ActionId: The numeric ID of the action that started this container. + ActionId int64 `json:"actionId,omitempty"` + + // IpAddress: The public IP address that can be used to connect to the + // container. This + // field is only populated when at least one port mapping is present. + // If the + // instance was created with a private address this field will be empty + // even + // if port mappings exist. + IpAddress string `json:"ipAddress,omitempty"` + + // PortMappings: The container to host port mappings installed for this + // container. This + // set will contain any ports exposed using the PUBLISH_EXPOSED_PORTS + // flag as + // well as any specified in the Action definition. + PortMappings map[string]int64 `json:"portMappings,omitempty"` + + // ForceSendFields is a list of field names (e.g. "ActionId") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "ActionId") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *ContainerStartedEvent) MarshalJSON() ([]byte, error) { + type NoMethod ContainerStartedEvent + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// ContainerStoppedEvent: This event is generated when a container +// exits. +type ContainerStoppedEvent struct { + // ActionId: The numeric ID of the action that started this container. + ActionId int64 `json:"actionId,omitempty"` + + // ExitStatus: The exit status of the container. + ExitStatus int64 `json:"exitStatus,omitempty"` + + // ForceSendFields is a list of field names (e.g. "ActionId") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "ActionId") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *ContainerStoppedEvent) MarshalJSON() ([]byte, error) { + type NoMethod ContainerStoppedEvent + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // ControllerConfig: Stores the information that the controller will // fetch from the // server in order to run. Should only be used by VMs created by @@ -196,6 +273,49 @@ func (s *ControllerConfig) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// DelayedEvent: This event is generated whenever a resource limitation +// or transient error +// delays execution of a pipeline that was otherwise ready to run. +type DelayedEvent struct { + // Cause: A textual description of the cause of the delay. The string + // may change + // without notice since it is often generated by another service (such + // as + // Compute Engine). + Cause string `json:"cause,omitempty"` + + // Metrics: If the delay was caused by a resource shortage, this field + // lists the + // Compute Engine metrics that are preventing this operation from + // running + // (for example, CPUS or INSTANCES). If the particular metric is not + // known, + // a single UNKNOWN metric will be present. + Metrics []string `json:"metrics,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Cause") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Cause") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *DelayedEvent) MarshalJSON() ([]byte, error) { + type NoMethod DelayedEvent + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // Disk: A Google Compute Engine disk resource specification. type Disk struct { // AutoDelete: Deprecated. Disks created by the Pipelines API will be @@ -342,6 +462,234 @@ type Empty struct { googleapi.ServerResponse `json:"-"` } +// Event: Event carries information about events that occur during +// pipeline execution. +type Event struct { + // Description: A human readable description of the event. Note that + // these strings may + // change at any time without notice. Any application logic must use + // the + // information in the details field. + Description string `json:"description,omitempty"` + + // Details: Machine readable details about the event. + Details googleapi.RawMessage `json:"details,omitempty"` + + // Timestamp: The time that the event occurred. + Timestamp string `json:"timestamp,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Description") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Description") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *Event) MarshalJSON() ([]byte, error) { + type NoMethod Event + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// FailedEvent: This event is generated when the execution of a pipeline +// has failed. Note +// that other events may continue to occur after this event. +type FailedEvent struct { + // Cause: The human readable description of the cause of the failure. + Cause string `json:"cause,omitempty"` + + // Code: The Google standard error code that best describes this + // failure. + // + // Possible values: + // "OK" - Not an error; returned on success + // + // HTTP Mapping: 200 OK + // "CANCELLED" - The operation was cancelled, typically by the + // caller. + // + // HTTP Mapping: 499 Client Closed Request + // "UNKNOWN" - Unknown error. For example, this error may be returned + // when + // a `Status` value received from another address space belongs to + // an error space that is not known in this address space. Also + // errors raised by APIs that do not return enough error information + // may be converted to this error. + // + // HTTP Mapping: 500 Internal Server Error + // "INVALID_ARGUMENT" - The client specified an invalid argument. + // Note that this differs + // from `FAILED_PRECONDITION`. `INVALID_ARGUMENT` indicates + // arguments + // that are problematic regardless of the state of the system + // (e.g., a malformed file name). + // + // HTTP Mapping: 400 Bad Request + // "DEADLINE_EXCEEDED" - The deadline expired before the operation + // could complete. For operations + // that change the state of the system, this error may be returned + // even if the operation has completed successfully. For example, + // a + // successful response from a server could have been delayed long + // enough for the deadline to expire. + // + // HTTP Mapping: 504 Gateway Timeout + // "NOT_FOUND" - Some requested entity (e.g., file or directory) was + // not found. + // + // Note to server developers: if a request is denied for an entire + // class + // of users, such as gradual feature rollout or undocumented + // whitelist, + // `NOT_FOUND` may be used. If a request is denied for some users + // within + // a class of users, such as user-based access control, + // `PERMISSION_DENIED` + // must be used. + // + // HTTP Mapping: 404 Not Found + // "ALREADY_EXISTS" - The entity that a client attempted to create + // (e.g., file or directory) + // already exists. + // + // HTTP Mapping: 409 Conflict + // "PERMISSION_DENIED" - The caller does not have permission to + // execute the specified + // operation. `PERMISSION_DENIED` must not be used for rejections + // caused by exhausting some resource (use `RESOURCE_EXHAUSTED` + // instead for those errors). `PERMISSION_DENIED` must not be + // used if the caller can not be identified (use + // `UNAUTHENTICATED` + // instead for those errors). This error code does not imply the + // request is valid or the requested entity exists or satisfies + // other pre-conditions. + // + // HTTP Mapping: 403 Forbidden + // "UNAUTHENTICATED" - The request does not have valid authentication + // credentials for the + // operation. + // + // HTTP Mapping: 401 Unauthorized + // "RESOURCE_EXHAUSTED" - Some resource has been exhausted, perhaps a + // per-user quota, or + // perhaps the entire file system is out of space. + // + // HTTP Mapping: 429 Too Many Requests + // "FAILED_PRECONDITION" - The operation was rejected because the + // system is not in a state + // required for the operation's execution. For example, the + // directory + // to be deleted is non-empty, an rmdir operation is applied to + // a non-directory, etc. + // + // Service implementors can use the following guidelines to + // decide + // between `FAILED_PRECONDITION`, `ABORTED`, and `UNAVAILABLE`: + // (a) Use `UNAVAILABLE` if the client can retry just the failing + // call. + // (b) Use `ABORTED` if the client should retry at a higher level + // (e.g., when a client-specified test-and-set fails, indicating + // the + // client should restart a read-modify-write sequence). + // (c) Use `FAILED_PRECONDITION` if the client should not retry until + // the system state has been explicitly fixed. E.g., if an + // "rmdir" + // fails because the directory is non-empty, `FAILED_PRECONDITION` + // should be returned since the client should not retry unless + // the files are deleted from the directory. + // + // HTTP Mapping: 400 Bad Request + // "ABORTED" - The operation was aborted, typically due to a + // concurrency issue such as + // a sequencer check failure or transaction abort. + // + // See the guidelines above for deciding between + // `FAILED_PRECONDITION`, + // `ABORTED`, and `UNAVAILABLE`. + // + // HTTP Mapping: 409 Conflict + // "OUT_OF_RANGE" - The operation was attempted past the valid range. + // E.g., seeking or + // reading past end-of-file. + // + // Unlike `INVALID_ARGUMENT`, this error indicates a problem that may + // be fixed if the system state changes. For example, a 32-bit + // file + // system will generate `INVALID_ARGUMENT` if asked to read at an + // offset that is not in the range [0,2^32-1], but it will + // generate + // `OUT_OF_RANGE` if asked to read from an offset past the current + // file size. + // + // There is a fair bit of overlap between `FAILED_PRECONDITION` + // and + // `OUT_OF_RANGE`. We recommend using `OUT_OF_RANGE` (the more + // specific + // error) when it applies so that callers who are iterating through + // a space can easily look for an `OUT_OF_RANGE` error to detect + // when + // they are done. + // + // HTTP Mapping: 400 Bad Request + // "UNIMPLEMENTED" - The operation is not implemented or is not + // supported/enabled in this + // service. + // + // HTTP Mapping: 501 Not Implemented + // "INTERNAL" - Internal errors. This means that some invariants + // expected by the + // underlying system have been broken. This error code is reserved + // for serious errors. + // + // HTTP Mapping: 500 Internal Server Error + // "UNAVAILABLE" - The service is currently unavailable. This is most + // likely a + // transient condition, which can be corrected by retrying with + // a backoff. + // + // See the guidelines above for deciding between + // `FAILED_PRECONDITION`, + // `ABORTED`, and `UNAVAILABLE`. + // + // HTTP Mapping: 503 Service Unavailable + // "DATA_LOSS" - Unrecoverable data loss or corruption. + // + // HTTP Mapping: 500 Internal Server Error + Code string `json:"code,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Cause") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Cause") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *FailedEvent) MarshalJSON() ([]byte, error) { + type NoMethod FailedEvent + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // ImportReadGroupSetsResponse: The read group set import response. type ImportReadGroupSetsResponse struct { // ReadGroupSetIds: IDs of the read group sets that were created. @@ -570,8 +918,8 @@ type Operation struct { // cancellation. Error *Status `json:"error,omitempty"` - // Metadata: An OperationMetadata object. This will always be returned - // with the Operation. + // Metadata: An OperationMetadata or Metadata object. This will always + // be returned with the Operation. Metadata googleapi.RawMessage `json:"metadata,omitempty"` // Name: The server-assigned name, which is only unique within the same @@ -1065,6 +1413,64 @@ func (s *PipelineResources) UnmarshalJSON(data []byte) error { return nil } +// PullStartedEvent: This event is generated when the worker starts +// pulling an image. +type PullStartedEvent struct { + // ImageUri: The URI of the image that was pulled. + ImageUri string `json:"imageUri,omitempty"` + + // ForceSendFields is a list of field names (e.g. "ImageUri") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "ImageUri") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *PullStartedEvent) MarshalJSON() ([]byte, error) { + type NoMethod PullStartedEvent + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// PullStoppedEvent: This event is generated when the worker stops +// pulling an image. +type PullStoppedEvent struct { + // ImageUri: The URI of the image that was pulled. + ImageUri string `json:"imageUri,omitempty"` + + // ForceSendFields is a list of field names (e.g. "ImageUri") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "ImageUri") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *PullStoppedEvent) MarshalJSON() ([]byte, error) { + type NoMethod PullStoppedEvent + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + type RepeatedString struct { Values []string `json:"values,omitempty"` @@ -1649,6 +2055,109 @@ func (s *TimestampEvent) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// UnexpectedExitStatusEvent: This event is generated when the execution +// of a container results in a +// non-zero exit status that was not otherwise ignored. Execution +// will +// continue, but only actions that are flagged as ALWAYS_RUN will be +// executed: +// other actions will be skipped. +type UnexpectedExitStatusEvent struct { + // ActionId: The numeric ID of the action that started the container. + ActionId int64 `json:"actionId,omitempty"` + + // ExitStatus: The exit status of the container. + ExitStatus int64 `json:"exitStatus,omitempty"` + + // ForceSendFields is a list of field names (e.g. "ActionId") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "ActionId") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *UnexpectedExitStatusEvent) MarshalJSON() ([]byte, error) { + type NoMethod UnexpectedExitStatusEvent + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// WorkerAssignedEvent: This event is generated once a worker VM has +// been assigned to run the +// pipeline. +type WorkerAssignedEvent struct { + // Instance: The worker's instance name. + Instance string `json:"instance,omitempty"` + + // Zone: The zone the worker is running in. + Zone string `json:"zone,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Instance") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Instance") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *WorkerAssignedEvent) MarshalJSON() ([]byte, error) { + type NoMethod WorkerAssignedEvent + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// WorkerReleasedEvent: This event is generated when the worker VM that +// was assigned to the pipeline +// has been released (i.e., deleted). +type WorkerReleasedEvent struct { + // Instance: The worker's instance name. + Instance string `json:"instance,omitempty"` + + // Zone: The zone the worker was running in. + Zone string `json:"zone,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Instance") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Instance") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *WorkerReleasedEvent) MarshalJSON() ([]byte, error) { + type NoMethod WorkerReleasedEvent + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // method id "genomics.operations.cancel": type OperationsCancelCall struct { @@ -1954,7 +2463,19 @@ func (r *OperationsService) List(name string) *OperationsListCall { // Filter sets the optional parameter "filter": A string for filtering // Operations. -// The following filter fields are supported: +// In v2alpha1, the following filter fields are supported: +// +// * createTime: The time this job was created +// * events: The set of event (names) that have occurred while +// running +// the pipeline. The : operator can be used to determine if a +// particular event has occurred. +// * error: If the pipeline is running, this value is NULL. Once +// the +// pipeline finishes, the value is the standard Google error code. +// * labels.key or labels."key with space" where key is a label key. +// +// In v1 and v1alpha2, the following filter fields are supported: // // * projectId: Required. Corresponds to // OperationMetadata.projectId. @@ -2097,7 +2618,7 @@ func (c *OperationsListCall) Do(opts ...googleapi.CallOption) (*ListOperationsRe // ], // "parameters": { // "filter": { - // "description": "A string for filtering Operations.\nThe following filter fields are supported\u0026#58;\n\n* projectId\u0026#58; Required. Corresponds to\n OperationMetadata.projectId.\n* createTime\u0026#58; The time this job was created, in seconds from the\n [epoch](http://en.wikipedia.org/wiki/Unix_time). Can use `\u003e=` and/or `\u003c=`\n operators.\n* status\u0026#58; Can be `RUNNING`, `SUCCESS`, `FAILURE`, or `CANCELED`. Only\n one status may be specified.\n* labels.key where key is a label key.\n\nExamples\u0026#58;\n\n* `projectId = my-project AND createTime \u003e= 1432140000`\n* `projectId = my-project AND createTime \u003e= 1432140000 AND createTime \u003c= 1432150000 AND status = RUNNING`\n* `projectId = my-project AND labels.color = *`\n* `projectId = my-project AND labels.color = red`", + // "description": "A string for filtering Operations.\nIn v2alpha1, the following filter fields are supported\u0026#58;\n\n* createTime\u0026#58; The time this job was created\n* events\u0026#58; The set of event (names) that have occurred while running\n the pipeline. The \u0026#58; operator can be used to determine if a\n particular event has occurred.\n* error\u0026#58; If the pipeline is running, this value is NULL. Once the\n pipeline finishes, the value is the standard Google error code.\n* labels.key or labels.\"key with space\" where key is a label key.\n\nIn v1 and v1alpha2, the following filter fields are supported\u0026#58;\n\n* projectId\u0026#58; Required. Corresponds to\n OperationMetadata.projectId.\n* createTime\u0026#58; The time this job was created, in seconds from the\n [epoch](http://en.wikipedia.org/wiki/Unix_time). Can use `\u003e=` and/or `\u003c=`\n operators.\n* status\u0026#58; Can be `RUNNING`, `SUCCESS`, `FAILURE`, or `CANCELED`. Only\n one status may be specified.\n* labels.key where key is a label key.\n\nExamples\u0026#58;\n\n* `projectId = my-project AND createTime \u003e= 1432140000`\n* `projectId = my-project AND createTime \u003e= 1432140000 AND createTime \u003c= 1432150000 AND status = RUNNING`\n* `projectId = my-project AND labels.color = *`\n* `projectId = my-project AND labels.color = red`", // "location": "query", // "type": "string" // }, diff --git a/vendor/google.golang.org/api/genomics/v2alpha1/genomics-api.json b/vendor/google.golang.org/api/genomics/v2alpha1/genomics-api.json new file mode 100644 index 000000000..fa0f95689 --- /dev/null +++ b/vendor/google.golang.org/api/genomics/v2alpha1/genomics-api.json @@ -0,0 +1,1087 @@ +{ + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/cloud-platform": { + "description": "View and manage your data across Google Cloud Platform services" + }, + "https://www.googleapis.com/auth/genomics": { + "description": "View and manage Genomics data" + } + } + } + }, + "basePath": "", + "baseUrl": "https://genomics.googleapis.com/", + "batchPath": "batch", + "description": "Upload, process, query, and search Genomics data in the cloud.", + "discoveryVersion": "v1", + "documentationLink": "https://cloud.google.com/genomics", + "fullyEncodeReservedExpansion": true, + "icons": { + "x16": "http://www.google.com/images/icons/product/search-16.gif", + "x32": "http://www.google.com/images/icons/product/search-32.gif" + }, + "id": "genomics:v2alpha1", + "kind": "discovery#restDescription", + "name": "genomics", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "$.xgafv": { + "description": "V1 error format.", + "enum": [ + "1", + "2" + ], + "enumDescriptions": [ + "v1 error format", + "v2 error format" + ], + "location": "query", + "type": "string" + }, + "access_token": { + "description": "OAuth access token.", + "location": "query", + "type": "string" + }, + "alt": { + "default": "json", + "description": "Data format for response.", + "enum": [ + "json", + "media", + "proto" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json", + "Media download with context-dependent Content-Type", + "Responses with Content-Type of application/x-protobuf" + ], + "location": "query", + "type": "string" + }, + "bearer_token": { + "description": "OAuth bearer token.", + "location": "query", + "type": "string" + }, + "callback": { + "description": "JSONP", + "location": "query", + "type": "string" + }, + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "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.", + "location": "query", + "type": "string" + }, + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "pp": { + "default": "true", + "description": "Pretty-print response.", + "location": "query", + "type": "boolean" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", + "location": "query", + "type": "string" + }, + "uploadType": { + "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", + "location": "query", + "type": "string" + }, + "upload_protocol": { + "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", + "location": "query", + "type": "string" + } + }, + "protocol": "rest", + "resources": { + "pipelines": { + "methods": { + "run": { + "description": "Runs a pipeline.\n\n**Note:** In order to use this method, the Genomics Service Agent\nmust have access to your project. This is done automatically when the\nGenomics API is first enabled, but if you delete this permission, or if\nyou have already enabled the Genomics API prior to the launch of the\nv2alpha1 API, you must disable and re-enable the API to grant the Genomics\nService Agent the required permissions.\n\n[1]: /genomics/gsa", + "flatPath": "v2alpha1/pipelines:run", + "httpMethod": "POST", + "id": "genomics.pipelines.run", + "parameterOrder": [], + "parameters": {}, + "path": "v2alpha1/pipelines:run", + "request": { + "$ref": "RunPipelineRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/genomics" + ] + } + } + }, + "projects": { + "resources": { + "operations": { + "methods": { + "cancel": { + "description": "Starts asynchronous cancellation on a long-running operation. The server makes a best effort to cancel the operation, but success is not guaranteed. Clients may use Operations.GetOperation or Operations.ListOperations to check whether the cancellation succeeded or the operation completed despite cancellation.", + "flatPath": "v2alpha1/projects/{projectsId}/operations/{operationsId}:cancel", + "httpMethod": "POST", + "id": "genomics.projects.operations.cancel", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource to be cancelled.", + "location": "path", + "pattern": "^projects/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2alpha1/{+name}:cancel", + "request": { + "$ref": "CancelOperationRequest" + }, + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/genomics" + ] + }, + "get": { + "description": "Gets the latest state of a long-running operation. Clients can use this\nmethod to poll the operation result at intervals as recommended by the API\nservice.", + "flatPath": "v2alpha1/projects/{projectsId}/operations/{operationsId}", + "httpMethod": "GET", + "id": "genomics.projects.operations.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource.", + "location": "path", + "pattern": "^projects/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2alpha1/{+name}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/genomics" + ] + }, + "list": { + "description": "Lists operations that match the specified filter in the request.", + "flatPath": "v2alpha1/projects/{projectsId}/operations", + "httpMethod": "GET", + "id": "genomics.projects.operations.list", + "parameterOrder": [ + "name" + ], + "parameters": { + "filter": { + "description": "A string for filtering Operations.\nIn v2alpha1, the following filter fields are supported\u0026#58;\n\n* createTime\u0026#58; The time this job was created\n* events\u0026#58; The set of event (names) that have occurred while running\n the pipeline. The \u0026#58; operator can be used to determine if a\n particular event has occurred.\n* error\u0026#58; If the pipeline is running, this value is NULL. Once the\n pipeline finishes, the value is the standard Google error code.\n* labels.key or labels.\"key with space\" where key is a label key.\n\nIn v1 and v1alpha2, the following filter fields are supported\u0026#58;\n\n* projectId\u0026#58; Required. Corresponds to\n OperationMetadata.projectId.\n* createTime\u0026#58; The time this job was created, in seconds from the\n [epoch](http://en.wikipedia.org/wiki/Unix_time). Can use `\u003e=` and/or `\u003c=`\n operators.\n* status\u0026#58; Can be `RUNNING`, `SUCCESS`, `FAILURE`, or `CANCELED`. Only\n one status may be specified.\n* labels.key where key is a label key.\n\nExamples\u0026#58;\n\n* `projectId = my-project AND createTime \u003e= 1432140000`\n* `projectId = my-project AND createTime \u003e= 1432140000 AND createTime \u003c= 1432150000 AND status = RUNNING`\n* `projectId = my-project AND labels.color = *`\n* `projectId = my-project AND labels.color = red`", + "location": "query", + "type": "string" + }, + "name": { + "description": "The name of the operation's parent resource.", + "location": "path", + "pattern": "^projects/[^/]+/operations$", + "required": true, + "type": "string" + }, + "pageSize": { + "description": "The maximum number of results to return. If unspecified, defaults to\n256. The maximum value is 2048.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "The standard list page token.", + "location": "query", + "type": "string" + } + }, + "path": "v2alpha1/{+name}", + "response": { + "$ref": "ListOperationsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/genomics" + ] + } + } + } + } + }, + "workers": { + "methods": { + "checkIn": { + "description": "The worker uses this method to retrieve the assigned operation and\nprovide periodic status updates.", + "flatPath": "v2alpha1/workers/{id}:checkIn", + "httpMethod": "POST", + "id": "genomics.workers.checkIn", + "parameterOrder": [ + "id" + ], + "parameters": { + "id": { + "description": "The worker id, assigned when it was created.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v2alpha1/workers/{id}:checkIn", + "request": { + "$ref": "CheckInRequest" + }, + "response": { + "$ref": "CheckInResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/genomics" + ] + } + } + } + }, + "revision": "20180307", + "rootUrl": "https://genomics.googleapis.com/", + "schemas": { + "Action": { + "description": "Action specifies a single action that runs a docker container.", + "id": "Action", + "properties": { + "commands": { + "description": "If specified, overrides the CMD specified in the container. If the\ncontainer also has an ENTRYPOINT the values are used as entrypoint\narguments. Otherwise, they are used as a command and arguments to run\ninside the container.", + "items": { + "type": "string" + }, + "type": "array" + }, + "entrypoint": { + "description": "If specified, overrides the ENTRYPOINT specified in the container.", + "type": "string" + }, + "environment": { + "additionalProperties": { + "type": "string" + }, + "description": "The environment to pass into the container. This environment is merged\nwith any values specified in the Pipeline message. These values overwrite\nany in the Pipeline message.\n\nIn addition to the values passed here, a few other values are\nautomatically injected into the environment. These cannot be hidden or\noverwritten.\n\n`GOOGLE_PIPELINE_FAILED` will be set to \"1\" if the pipeline has failed\nbecause an action has exited with a non-zero status (and did not have the\nIGNORE_EXIT_STATUS flag set). This can be used to determine if additional\ndebug or logging actions should execute.\n\n`GOOGLE_LAST_EXIT_STATUS` will be set to the exit status of the last\nnon-background action that executed. This can be used by workflow engine\nauthors to determine whether an individual action has succeeded or failed.", + "type": "object" + }, + "flags": { + "description": "The set of flags to apply to this action.", + "enumDescriptions": [ + "Unspecified flag.", + "Normally, a non-zero exit status causes the pipeline to fail. This flag\nallows execution of other actions to continue instead.", + "This flag allows an action to continue running in the background while\nexecuting subsequent actions. This is useful to provide services to\nother actions (or to provide debugging support tools like ssh servers).", + "Normally, once an action fails no further actions are run. This flag\nindicates that this action must be run even if the pipeline has already\nfailed. This is useful for actions that copy output files off of the VM\nor for debugging.", + "Enable access to the FUSE device for this action. Filesystems can then\nbe mounted into disks shared with other actions. The other actions do\nnot need the ENABLE_FUSE flag to access the mounted filesystem.\n\nThis has the effect of causing the container to be executed with\nCAP_SYS_ADMIN and exposes /dev/fuse to the container, so it should only\nbe used for containers you trust.", + "Expose all ports specified by EXPOSE statements in the container. To\ndiscover the host side port numbers, consult the ACTION_STARTED event in\nthe operation metadata.", + "Normally, all container images are downloaded before any actions are\nexecuted. This helps prevent typos in URIs or issues like lack of disk\nspace from wasting large amounts of compute resources.\n\nIf set, this flag prevents the worker from downloading the image until\njust before the action is executed.\n\nThis is useful for two reasons: first, if the image is large and a step\nearlier in the pipeline can fail, it can save time to avoid fetching the\nimage until it is needed.\n\nSecond, if the image is private (that is, it requires running `docker\nlogin` to access) this flag **must** be set so that a preceding action\ncan establish the credentials required to fetch it." + ], + "items": { + "enum": [ + "FLAG_UNSPECIFIED", + "IGNORE_EXIT_STATUS", + "RUN_IN_BACKGROUND", + "ALWAYS_RUN", + "ENABLE_FUSE", + "PUBLISH_EXPOSED_PORTS", + "DISABLE_IMAGE_PREFETCH" + ], + "type": "string" + }, + "type": "array" + }, + "imageUri": { + "description": "The URI to pull the container image from. Note that all images referenced\nby actions in the pipeline are pulled before the first action runs. If\nmultiple actions reference the same image, it is only pulled once,\nensuring that the same image is used for all actions in a single pipeline.", + "type": "string" + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Labels to associate with the action. This field is provided to assist\nworkflow engine authors in identifying actions (for example, to indicate\nwhat sort of action they perform: eg. localization, debugging, etc). They\nare returned in the operation metadata but are otherwise ignored.", + "type": "object" + }, + "mounts": { + "description": "A list of mounts to make available to the action.\n\nIn addition to the values specified here, every action has a special\nvirtual disk mounted under /google that contains log files and other\noperational components.\n\n\u003cul\u003e\n \u003cli\u003e\u003ccode\u003e/google/logs\u003c/code\u003e: all logs written during the pipeline\n execution are stored here.\u003c/li\u003e\n \u003cli\u003e\u003ccode\u003e/google/logs/output\u003c/code\u003e: the combined standard output and\n standard error of all actions run as part of the pipeline\n execution.\u003c/li\u003e\n \u003cli\u003e\u003ccode\u003e/google/logs/action/*/stdout\u003c/code\u003e: the complete contents of\n each individual action's standard output\u003c/li\u003e\n \u003cli\u003e\u003ccode\u003e/google/logs/action/*/stderr\u003c/code\u003e: the complete contents of\n each individual action's standard error output\u003c/li\u003e\n\u003c/ul\u003e", + "items": { + "$ref": "Mount" + }, + "type": "array" + }, + "name": { + "description": "An optional name for the container. The container hostname will be set to\nthis name, making it useful for inter-container communication. The name\nmust contain only upper and lowercase alphanumeric characters and hypens\nand cannot start with a hypen.", + "type": "string" + }, + "pidNamespace": { + "description": "The PID namespace to run the action inside. If unspecified, a separate\nisolated namespace is used.", + "type": "string" + }, + "portMappings": { + "additionalProperties": { + "format": "int32", + "type": "integer" + }, + "description": "A map of container to host port mappings for this container. Note that if\nthe container already specifies exposed ports, the PUBLISH_EXPOSED_PORTS\nflag should be used instead.\n\nThe host port number must be less than 65536. If it is zero, an unused\nrandom port is assigned. To determine the resulting port number, consult\nthe ContainerStartedEvent in the operation metadata.", + "type": "object" + } + }, + "type": "object" + }, + "CancelOperationRequest": { + "description": "The request message for Operations.CancelOperation.", + "id": "CancelOperationRequest", + "properties": {}, + "type": "object" + }, + "CheckInRequest": { + "description": "The parameters to the CheckIn method.", + "id": "CheckInRequest", + "properties": { + "deadlineExpired": { + "$ref": "Empty", + "description": "The deadline has expired and the worker needs more time." + }, + "event": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "description": "A workflow specific event occurred.", + "type": "object" + }, + "result": { + "$ref": "Status", + "description": "The operation has finished with the given result." + } + }, + "type": "object" + }, + "CheckInResponse": { + "description": "The response to the CheckIn method.", + "id": "CheckInResponse", + "properties": { + "deadline": { + "description": "The deadline by which the worker must request an extension. The backend\nwill allow for network transmission time and other delays, but the worker\nmust attempt to transmit the extension request no later than the deadline.", + "format": "google-datetime", + "type": "string" + }, + "metadata": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "description": "The metadata that describes the operation assigned to the worker.", + "type": "object" + } + }, + "type": "object" + }, + "ComputeEngine": { + "description": "Describes a Compute Engine resource that is being managed by a running\npipeline.", + "id": "ComputeEngine", + "properties": { + "diskNames": { + "description": "The names of the disks that were created for this pipeline.", + "items": { + "type": "string" + }, + "type": "array" + }, + "instanceName": { + "description": "The instance on which the operation is running.", + "type": "string" + }, + "machineType": { + "description": "The machine type of the instance.", + "type": "string" + }, + "zone": { + "description": "The availability zone in which the instance resides.", + "type": "string" + } + }, + "type": "object" + }, + "ContainerStartedEvent": { + "description": "This event is generated when a container starts.", + "id": "ContainerStartedEvent", + "properties": { + "actionId": { + "description": "The numeric ID of the action that started this container.", + "format": "int32", + "type": "integer" + }, + "ipAddress": { + "description": "The public IP address that can be used to connect to the container. This\nfield is only populated when at least one port mapping is present. If the\ninstance was created with a private address this field will be empty even\nif port mappings exist.", + "type": "string" + }, + "portMappings": { + "additionalProperties": { + "format": "int32", + "type": "integer" + }, + "description": "The container to host port mappings installed for this container. This\nset will contain any ports exposed using the PUBLISH_EXPOSED_PORTS flag as\nwell as any specified in the Action definition.", + "type": "object" + } + }, + "type": "object" + }, + "ContainerStoppedEvent": { + "description": "This event is generated when a container exits.", + "id": "ContainerStoppedEvent", + "properties": { + "actionId": { + "description": "The numeric ID of the action that started this container.", + "format": "int32", + "type": "integer" + }, + "exitStatus": { + "description": "The exit status of the container.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "DelayedEvent": { + "description": "This event is generated whenever a resource limitation or transient error\ndelays execution of a pipeline that was otherwise ready to run.", + "id": "DelayedEvent", + "properties": { + "cause": { + "description": "A textual description of the cause of the delay. The string may change\nwithout notice since it is often generated by another service (such as\nCompute Engine).", + "type": "string" + }, + "metrics": { + "description": "If the delay was caused by a resource shortage, this field lists the\nCompute Engine metrics that are preventing this operation from running\n(for example, CPUS or INSTANCES). If the particular metric is not known,\na single UNKNOWN metric will be present.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "Disk": { + "description": "Carries information about a disk that can be attached to a VM.", + "id": "Disk", + "properties": { + "name": { + "description": "A user supplied name for the disk, used when mounting it into actions.\nThe name must contain only upper and lowercase alphanumeric characters and\nhypens and cannot start with a hypen.", + "type": "string" + }, + "sizeGb": { + "description": "The size, in gigabytes, of the disk to attach. Note that this value is\nnot configurable for some disk types such as local-ssd. If the size is\nnot specified, a size of at least 500gb is used to ensure reasonable I/O\nperformance.", + "format": "int32", + "type": "integer" + }, + "sourceImage": { + "description": "An optional image to put on the disk before attaching it to the VM.", + "type": "string" + }, + "type": { + "description": "The Compute Engine disk type. If unspecified, 'standard-pd' is used.", + "type": "string" + } + }, + "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" + }, + "Event": { + "description": "Event carries information about events that occur during pipeline execution.", + "id": "Event", + "properties": { + "description": { + "description": "A human readable description of the event. Note that these strings may\nchange at any time without notice. Any application logic must use the\ninformation in the details field.", + "type": "string" + }, + "details": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "description": "Machine readable details about the event.", + "type": "object" + }, + "timestamp": { + "description": "The time that the event occurred.", + "format": "google-datetime", + "type": "string" + } + }, + "type": "object" + }, + "FailedEvent": { + "description": "This event is generated when the execution of a pipeline has failed. Note\nthat other events may continue to occur after this event.", + "id": "FailedEvent", + "properties": { + "cause": { + "description": "The human readable description of the cause of the failure.", + "type": "string" + }, + "code": { + "description": "The Google standard error code that best describes this failure.", + "enum": [ + "OK", + "CANCELLED", + "UNKNOWN", + "INVALID_ARGUMENT", + "DEADLINE_EXCEEDED", + "NOT_FOUND", + "ALREADY_EXISTS", + "PERMISSION_DENIED", + "UNAUTHENTICATED", + "RESOURCE_EXHAUSTED", + "FAILED_PRECONDITION", + "ABORTED", + "OUT_OF_RANGE", + "UNIMPLEMENTED", + "INTERNAL", + "UNAVAILABLE", + "DATA_LOSS" + ], + "enumDescriptions": [ + "Not an error; returned on success\n\nHTTP Mapping: 200 OK", + "The operation was cancelled, typically by the caller.\n\nHTTP Mapping: 499 Client Closed Request", + "Unknown error. For example, this error may be returned when\na `Status` value received from another address space belongs to\nan error space that is not known in this address space. Also\nerrors raised by APIs that do not return enough error information\nmay be converted to this error.\n\nHTTP Mapping: 500 Internal Server Error", + "The client specified an invalid argument. Note that this differs\nfrom `FAILED_PRECONDITION`. `INVALID_ARGUMENT` indicates arguments\nthat are problematic regardless of the state of the system\n(e.g., a malformed file name).\n\nHTTP Mapping: 400 Bad Request", + "The deadline expired before the operation could complete. For operations\nthat change the state of the system, this error may be returned\neven if the operation has completed successfully. For example, a\nsuccessful response from a server could have been delayed long\nenough for the deadline to expire.\n\nHTTP Mapping: 504 Gateway Timeout", + "Some requested entity (e.g., file or directory) was not found.\n\nNote to server developers: if a request is denied for an entire class\nof users, such as gradual feature rollout or undocumented whitelist,\n`NOT_FOUND` may be used. If a request is denied for some users within\na class of users, such as user-based access control, `PERMISSION_DENIED`\nmust be used.\n\nHTTP Mapping: 404 Not Found", + "The entity that a client attempted to create (e.g., file or directory)\nalready exists.\n\nHTTP Mapping: 409 Conflict", + "The caller does not have permission to execute the specified\noperation. `PERMISSION_DENIED` must not be used for rejections\ncaused by exhausting some resource (use `RESOURCE_EXHAUSTED`\ninstead for those errors). `PERMISSION_DENIED` must not be\nused if the caller can not be identified (use `UNAUTHENTICATED`\ninstead for those errors). This error code does not imply the\nrequest is valid or the requested entity exists or satisfies\nother pre-conditions.\n\nHTTP Mapping: 403 Forbidden", + "The request does not have valid authentication credentials for the\noperation.\n\nHTTP Mapping: 401 Unauthorized", + "Some resource has been exhausted, perhaps a per-user quota, or\nperhaps the entire file system is out of space.\n\nHTTP Mapping: 429 Too Many Requests", + "The operation was rejected because the system is not in a state\nrequired for the operation's execution. For example, the directory\nto be deleted is non-empty, an rmdir operation is applied to\na non-directory, etc.\n\nService implementors can use the following guidelines to decide\nbetween `FAILED_PRECONDITION`, `ABORTED`, and `UNAVAILABLE`:\n (a) Use `UNAVAILABLE` if the client can retry just the failing call.\n (b) Use `ABORTED` if the client should retry at a higher level\n (e.g., when a client-specified test-and-set fails, indicating the\n client should restart a read-modify-write sequence).\n (c) Use `FAILED_PRECONDITION` if the client should not retry until\n the system state has been explicitly fixed. E.g., if an \"rmdir\"\n fails because the directory is non-empty, `FAILED_PRECONDITION`\n should be returned since the client should not retry unless\n the files are deleted from the directory.\n\nHTTP Mapping: 400 Bad Request", + "The operation was aborted, typically due to a concurrency issue such as\na sequencer check failure or transaction abort.\n\nSee the guidelines above for deciding between `FAILED_PRECONDITION`,\n`ABORTED`, and `UNAVAILABLE`.\n\nHTTP Mapping: 409 Conflict", + "The operation was attempted past the valid range. E.g., seeking or\nreading past end-of-file.\n\nUnlike `INVALID_ARGUMENT`, this error indicates a problem that may\nbe fixed if the system state changes. For example, a 32-bit file\nsystem will generate `INVALID_ARGUMENT` if asked to read at an\noffset that is not in the range [0,2^32-1], but it will generate\n`OUT_OF_RANGE` if asked to read from an offset past the current\nfile size.\n\nThere is a fair bit of overlap between `FAILED_PRECONDITION` and\n`OUT_OF_RANGE`. We recommend using `OUT_OF_RANGE` (the more specific\nerror) when it applies so that callers who are iterating through\na space can easily look for an `OUT_OF_RANGE` error to detect when\nthey are done.\n\nHTTP Mapping: 400 Bad Request", + "The operation is not implemented or is not supported/enabled in this\nservice.\n\nHTTP Mapping: 501 Not Implemented", + "Internal errors. This means that some invariants expected by the\nunderlying system have been broken. This error code is reserved\nfor serious errors.\n\nHTTP Mapping: 500 Internal Server Error", + "The service is currently unavailable. This is most likely a\ntransient condition, which can be corrected by retrying with\na backoff.\n\nSee the guidelines above for deciding between `FAILED_PRECONDITION`,\n`ABORTED`, and `UNAVAILABLE`.\n\nHTTP Mapping: 503 Service Unavailable", + "Unrecoverable data loss or corruption.\n\nHTTP Mapping: 500 Internal Server Error" + ], + "type": "string" + } + }, + "type": "object" + }, + "ImportReadGroupSetsResponse": { + "description": "The read group set import response.", + "id": "ImportReadGroupSetsResponse", + "properties": { + "readGroupSetIds": { + "description": "IDs of the read group sets that were created.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "ImportVariantsResponse": { + "description": "The variant data import response.", + "id": "ImportVariantsResponse", + "properties": { + "callSetIds": { + "description": "IDs of the call sets created during the import.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "ListOperationsResponse": { + "description": "The response message for Operations.ListOperations.", + "id": "ListOperationsResponse", + "properties": { + "nextPageToken": { + "description": "The standard List next-page token.", + "type": "string" + }, + "operations": { + "description": "A list of operations that matches the specified filter in the request.", + "items": { + "$ref": "Operation" + }, + "type": "array" + } + }, + "type": "object" + }, + "Metadata": { + "description": "Metadata carries information about the pipeline execution that is returned\nin the long running operation's metadata field.", + "id": "Metadata", + "properties": { + "createTime": { + "description": "The time that the operation was created by the API.", + "format": "google-datetime", + "type": "string" + }, + "events": { + "description": "The list of events that have happened so far during the execution of this\noperation.", + "items": { + "$ref": "Event" + }, + "type": "array" + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "The user defined labels associated with this operation.", + "type": "object" + }, + "pipeline": { + "$ref": "Pipeline", + "description": "The pipeline this operation represents." + } + }, + "type": "object" + }, + "Mount": { + "description": "Mount carries information about a particular disk mount inside a container.", + "id": "Mount", + "properties": { + "disk": { + "description": "The name of the disk to mount, as specified in the resources section.", + "type": "string" + }, + "path": { + "description": "The path to mount the disk at inside the container.", + "type": "string" + }, + "readOnly": { + "description": "If true, the disk is mounted read only inside the container.", + "type": "boolean" + } + }, + "type": "object" + }, + "Network": { + "description": "VM networking options.", + "id": "Network", + "properties": { + "name": { + "description": "The network name to attach the VM's network interface to. If unspecified,\nthe global default network is used.", + "type": "string" + }, + "usePrivateAddress": { + "description": "If set to true, do not attach a public IP address to the VM. Note that\nwithout an public IP address, additional configuration is required to\nallow the VM to access Google services.\n\nSee https://cloud.google.com/vpc/docs/configure-private-google-access\nfor more information.", + "type": "boolean" + } + }, + "type": "object" + }, + "Operation": { + "description": "This resource represents a long-running operation that is the result of a\nnetwork API call.", + "id": "Operation", + "properties": { + "done": { + "description": "If the value is `false`, it means the operation is still in progress.\nIf `true`, the operation is completed, and either `error` or `response` is\navailable.", + "type": "boolean" + }, + "error": { + "$ref": "Status", + "description": "The error result of the operation in case of failure or cancellation." + }, + "metadata": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "description": "An OperationMetadata or Metadata object. This will always be returned with the Operation.", + "type": "object" + }, + "name": { + "description": "The server-assigned name, which is only unique within the same service that originally returns it. For example\u0026#58; `operations/CJHU7Oi_ChDrveSpBRjfuL-qzoWAgEw`", + "type": "string" + }, + "response": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "description": "If importing ReadGroupSets, an ImportReadGroupSetsResponse is returned. If importing Variants, an ImportVariantsResponse is returned. For pipelines and exports, an Empty response is returned.", + "type": "object" + } + }, + "type": "object" + }, + "OperationEvent": { + "description": "An event that occurred during an Operation.", + "id": "OperationEvent", + "properties": { + "description": { + "description": "Required description of event.", + "type": "string" + }, + "endTime": { + "description": "Optional time of when event finished. An event can have a start time and no\nfinish time. If an event has a finish time, there must be a start time.", + "format": "google-datetime", + "type": "string" + }, + "startTime": { + "description": "Optional time of when event started.", + "format": "google-datetime", + "type": "string" + } + }, + "type": "object" + }, + "OperationMetadata": { + "description": "Metadata describing an Operation.", + "id": "OperationMetadata", + "properties": { + "clientId": { + "description": "This field is deprecated. Use `labels` instead. Optionally provided by the\ncaller when submitting the request that creates the operation.", + "type": "string" + }, + "createTime": { + "description": "The time at which the job was submitted to the Genomics service.", + "format": "google-datetime", + "type": "string" + }, + "endTime": { + "description": "The time at which the job stopped running.", + "format": "google-datetime", + "type": "string" + }, + "events": { + "description": "Optional event messages that were generated during the job's execution.\nThis also contains any warnings that were generated during import\nor export.", + "items": { + "$ref": "OperationEvent" + }, + "type": "array" + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Optionally provided by the caller when submitting the request that creates\nthe operation.", + "type": "object" + }, + "projectId": { + "description": "The Google Cloud Project in which the job is scoped.", + "type": "string" + }, + "request": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "description": "The original request that started the operation. Note that this will be in\ncurrent version of the API. If the operation was started with v1beta2 API\nand a GetOperation is performed on v1 API, a v1 request will be returned.", + "type": "object" + }, + "runtimeMetadata": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "description": "Runtime metadata on this Operation.", + "type": "object" + }, + "startTime": { + "description": "The time at which the job began to run.", + "format": "google-datetime", + "type": "string" + } + }, + "type": "object" + }, + "Pipeline": { + "description": "The Pipeline object describes a series of actions to execute, expressed as\ndocker containers.", + "id": "Pipeline", + "properties": { + "actions": { + "description": "The list of actions to execute, in the order they are specified.", + "items": { + "$ref": "Action" + }, + "type": "array" + }, + "environment": { + "additionalProperties": { + "type": "string" + }, + "description": "The environment to pass into every action. Each action may also specify\nadditional environment variables but cannot delete an entry from this map\n(though they may overwrite it with a different value).", + "type": "object" + }, + "resources": { + "$ref": "Resources", + "description": "The resources required for execution." + } + }, + "type": "object" + }, + "PullStartedEvent": { + "description": "This event is generated when the worker starts pulling an image.", + "id": "PullStartedEvent", + "properties": { + "imageUri": { + "description": "The URI of the image that was pulled.", + "type": "string" + } + }, + "type": "object" + }, + "PullStoppedEvent": { + "description": "This event is generated when the worker stops pulling an image.", + "id": "PullStoppedEvent", + "properties": { + "imageUri": { + "description": "The URI of the image that was pulled.", + "type": "string" + } + }, + "type": "object" + }, + "Resources": { + "description": "The system resources for the pipeline run.\n\nAt least one zone or region must be specified or the pipeline run will fail.", + "id": "Resources", + "properties": { + "projectId": { + "description": "The customer project ID to allocate resources in.", + "type": "string" + }, + "regions": { + "description": "The list of regions allowed for VM allocation. If set, the zones field\nmust not be set.", + "items": { + "type": "string" + }, + "type": "array" + }, + "virtualMachine": { + "$ref": "VirtualMachine", + "description": "The virtual machine specification." + }, + "zones": { + "description": "The list of zones allowed for VM allocation. If set, the regions field\nmust not be set.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "RunPipelineRequest": { + "description": "The arguments to the RunPipeline method. The requesting user must have\nthe iam.serviceAccounts.actAs permission for the Google Genomics Service\nAccount or the request will fail.", + "id": "RunPipelineRequest", + "properties": { + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "User defined labels to associate with the returned operation. These\nlabels are not propagated to any Google Cloud Platform resources used by\nthe operation, and may be modified at any time.\n\nTo associate labels with resources created while executing the operation,\nsee the appropriate resource message (i.e., VirtualMachine).", + "type": "object" + }, + "pipeline": { + "$ref": "Pipeline", + "description": "The description of the pipeline to run." + } + }, + "type": "object" + }, + "RuntimeMetadata": { + "description": "Runtime metadata that will be populated in the\nruntimeMetadata\nfield of the Operation associated with a RunPipeline execution.", + "id": "RuntimeMetadata", + "properties": { + "computeEngine": { + "$ref": "ComputeEngine", + "description": "Execution information specific to Google Compute Engine." + } + }, + "type": "object" + }, + "ServiceAccount": { + "description": "Carries information about a Google Cloud Service Account.", + "id": "ServiceAccount", + "properties": { + "email": { + "description": "Email address of the service account. If not specified, the default\ncompute engine service account for the project will be used.", + "type": "string" + }, + "scopes": { + "description": "List of scopes to be enabled for this service account on the VM, in\naddition to the Google Genomics API scope.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "Status": { + "description": "The `Status` type defines a logical error model that is suitable for different\nprogramming environments, including REST APIs and RPC APIs. It is used by\n[gRPC](https://github.com/grpc). The error model is designed to be:\n\n- Simple to use and understand for most users\n- Flexible enough to meet unexpected needs\n\n# Overview\n\nThe `Status` message contains three pieces of data: error code, error message,\nand error details. The error code should be an enum value of\ngoogle.rpc.Code, but it may accept additional error codes if needed. The\nerror message should be a developer-facing English message that helps\ndevelopers *understand* and *resolve* the error. If a localized user-facing\nerror message is needed, put the localized message in the error details or\nlocalize it in the client. The optional error details may contain arbitrary\ninformation about the error. There is a predefined set of error detail types\nin the package `google.rpc` that can be used for common error conditions.\n\n# Language mapping\n\nThe `Status` message is the logical representation of the error model, but it\nis not necessarily the actual wire format. When the `Status` message is\nexposed in different client libraries and different wire protocols, it can be\nmapped differently. For example, it will likely be mapped to some exceptions\nin Java, but more likely mapped to some error codes in C.\n\n# Other uses\n\nThe error model and the `Status` message can be used in a variety of\nenvironments, either with or without APIs, to provide a\nconsistent developer experience across different environments.\n\nExample uses of this error model include:\n\n- Partial errors. If a service needs to return partial errors to the client,\n it may embed the `Status` in the normal response to indicate the partial\n errors.\n\n- Workflow errors. A typical workflow has multiple steps. Each step may\n have a `Status` message for error reporting.\n\n- Batch operations. If a client uses batch request and batch response, the\n `Status` message should be used directly inside batch response, one for\n each error sub-response.\n\n- Asynchronous operations. If an API call embeds asynchronous operation\n results in its response, the status of those operations should be\n represented directly using the `Status` message.\n\n- Logging. If some API errors are stored in logs, the message `Status` could\n be used directly after any stripping needed for security/privacy reasons.", + "id": "Status", + "properties": { + "code": { + "description": "The status code, which should be an enum value of google.rpc.Code.", + "format": "int32", + "type": "integer" + }, + "details": { + "description": "A list of messages that carry the error details. There is a common set of\nmessage types for APIs to use.", + "items": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "A developer-facing error message, which should be in English. Any\nuser-facing error message should be localized and sent in the\ngoogle.rpc.Status.details field, or localized by the client.", + "type": "string" + } + }, + "type": "object" + }, + "UnexpectedExitStatusEvent": { + "description": "This event is generated when the execution of a container results in a\nnon-zero exit status that was not otherwise ignored. Execution will\ncontinue, but only actions that are flagged as ALWAYS_RUN will be executed:\nother actions will be skipped.", + "id": "UnexpectedExitStatusEvent", + "properties": { + "actionId": { + "description": "The numeric ID of the action that started the container.", + "format": "int32", + "type": "integer" + }, + "exitStatus": { + "description": "The exit status of the container.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "VirtualMachine": { + "description": "Carries information about a Compute Engine VM resource.", + "id": "VirtualMachine", + "properties": { + "bootDiskSizeGb": { + "description": "The size of the boot disk, in gigabytes. The boot disk must be large\nenough to accommodate all of the docker images from each action in the\npipeline at the same time. If not specified, a small but reasonable\ndefault value is used.", + "format": "int32", + "type": "integer" + }, + "bootImage": { + "description": "The host operating system image to use.\n\nAt present, only Container Optimized OS images may be used.\n\nThe default value is \"projects/cos-cloud/global/images/family/cos-stable\"\nwhich selects the latest stable release of Container Optimized OS.\n\nThis option is provided to allow testing against the beta release of the\noperating system to ensure that the new version does not interact\nnegatively with production pipelines.\n\nTo test a pipeline against the beta release of COS, use the value\n\"projects/cos-cloud/global/images/family/cos-beta\".", + "type": "string" + }, + "cpuPlatform": { + "description": "The CPU platform to request. An instance based on a newer platform may be\nallocated but never one with less capabilities. The value of this\nparameter must be a valid Compute Engine CPU platform name (such as \"Intel\nSkylake\"). This parameter is only useful for carefully optimized work\nloads where the CPU platform has a significant impact.\n\nFor more information about the effect of this parameter, please visit\nhttps://cloud.google.com/compute/docs/instances/specify-min-cpu-platform.", + "type": "string" + }, + "disks": { + "description": "The list of disks to create and attach to the VM.", + "items": { + "$ref": "Disk" + }, + "type": "array" + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Optional set of labels to apply to the VM and any attached disk resources.\nThese labels must adhere to the name and value restrictions on VM labels\nimposed by Compute Engine.\n\nThese labels are applied at creation time to the VM and are applied on a\nbest-effort basis to attached disk resources shortly after VM creation.", + "type": "object" + }, + "machineType": { + "description": "The machine type of the virtual machine to create. Must be the short name\nof a standard machine type (such as \"n1-standard-1\") or a custom machine\ntype (such as \"custom-1-4096\").", + "type": "string" + }, + "network": { + "$ref": "Network", + "description": "The VM network configuration." + }, + "preemptible": { + "description": "If true, allocate a preemptible VM.", + "type": "boolean" + }, + "serviceAccount": { + "$ref": "ServiceAccount", + "description": "The service account to install on the VM. This account does not need\nany permissions other than those required by the pipeline." + } + }, + "type": "object" + }, + "WorkerAssignedEvent": { + "description": "This event is generated once a worker VM has been assigned to run the\npipeline.", + "id": "WorkerAssignedEvent", + "properties": { + "instance": { + "description": "The worker's instance name.", + "type": "string" + }, + "zone": { + "description": "The zone the worker is running in.", + "type": "string" + } + }, + "type": "object" + }, + "WorkerReleasedEvent": { + "description": "This event is generated when the worker VM that was assigned to the pipeline\nhas been released (i.e., deleted).", + "id": "WorkerReleasedEvent", + "properties": { + "instance": { + "description": "The worker's instance name.", + "type": "string" + }, + "zone": { + "description": "The zone the worker was running in.", + "type": "string" + } + }, + "type": "object" + } + }, + "servicePath": "", + "title": "Genomics API", + "version": "v2alpha1", + "version_module": true +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/genomics/v2alpha1/genomics-gen.go b/vendor/google.golang.org/api/genomics/v2alpha1/genomics-gen.go new file mode 100644 index 000000000..d98a06be6 --- /dev/null +++ b/vendor/google.golang.org/api/genomics/v2alpha1/genomics-gen.go @@ -0,0 +1,2598 @@ +// Package genomics provides access to the Genomics API. +// +// See https://cloud.google.com/genomics +// +// Usage example: +// +// import "google.golang.org/api/genomics/v2alpha1" +// ... +// genomicsService, err := genomics.New(oauthHttpClient) +package genomics // import "google.golang.org/api/genomics/v2alpha1" + +import ( + "bytes" + "encoding/json" + "errors" + "fmt" + context "golang.org/x/net/context" + ctxhttp "golang.org/x/net/context/ctxhttp" + gensupport "google.golang.org/api/gensupport" + googleapi "google.golang.org/api/googleapi" + "io" + "net/http" + "net/url" + "strconv" + "strings" +) + +// Always reference these packages, just in case the auto-generated code +// below doesn't. +var _ = bytes.NewBuffer +var _ = strconv.Itoa +var _ = fmt.Sprintf +var _ = json.NewDecoder +var _ = io.Copy +var _ = url.Parse +var _ = gensupport.MarshalJSON +var _ = googleapi.Version +var _ = errors.New +var _ = strings.Replace +var _ = context.Canceled +var _ = ctxhttp.Do + +const apiId = "genomics:v2alpha1" +const apiName = "genomics" +const apiVersion = "v2alpha1" +const basePath = "https://genomics.googleapis.com/" + +// OAuth2 scopes used by this API. +const ( + // View and manage your data across Google Cloud Platform services + CloudPlatformScope = "https://www.googleapis.com/auth/cloud-platform" + + // View and manage Genomics data + GenomicsScope = "https://www.googleapis.com/auth/genomics" +) + +func New(client *http.Client) (*Service, error) { + if client == nil { + return nil, errors.New("client is nil") + } + s := &Service{client: client, BasePath: basePath} + s.Pipelines = NewPipelinesService(s) + s.Projects = NewProjectsService(s) + s.Workers = NewWorkersService(s) + return s, nil +} + +type Service struct { + client *http.Client + BasePath string // API endpoint base URL + UserAgent string // optional additional User-Agent fragment + + Pipelines *PipelinesService + + Projects *ProjectsService + + Workers *WorkersService +} + +func (s *Service) userAgent() string { + if s.UserAgent == "" { + return googleapi.UserAgent + } + return googleapi.UserAgent + " " + s.UserAgent +} + +func NewPipelinesService(s *Service) *PipelinesService { + rs := &PipelinesService{s: s} + return rs +} + +type PipelinesService struct { + s *Service +} + +func NewProjectsService(s *Service) *ProjectsService { + rs := &ProjectsService{s: s} + rs.Operations = NewProjectsOperationsService(s) + return rs +} + +type ProjectsService struct { + s *Service + + Operations *ProjectsOperationsService +} + +func NewProjectsOperationsService(s *Service) *ProjectsOperationsService { + rs := &ProjectsOperationsService{s: s} + return rs +} + +type ProjectsOperationsService struct { + s *Service +} + +func NewWorkersService(s *Service) *WorkersService { + rs := &WorkersService{s: s} + return rs +} + +type WorkersService struct { + s *Service +} + +// Action: Action specifies a single action that runs a docker +// container. +type Action struct { + // Commands: If specified, overrides the CMD specified in the container. + // If the + // container also has an ENTRYPOINT the values are used as + // entrypoint + // arguments. Otherwise, they are used as a command and arguments to + // run + // inside the container. + Commands []string `json:"commands,omitempty"` + + // Entrypoint: If specified, overrides the ENTRYPOINT specified in the + // container. + Entrypoint string `json:"entrypoint,omitempty"` + + // Environment: The environment to pass into the container. This + // environment is merged + // with any values specified in the Pipeline message. These values + // overwrite + // any in the Pipeline message. + // + // In addition to the values passed here, a few other values + // are + // automatically injected into the environment. These cannot be hidden + // or + // overwritten. + // + // `GOOGLE_PIPELINE_FAILED` will be set to "1" if the pipeline has + // failed + // because an action has exited with a non-zero status (and did not have + // the + // IGNORE_EXIT_STATUS flag set). This can be used to determine if + // additional + // debug or logging actions should execute. + // + // `GOOGLE_LAST_EXIT_STATUS` will be set to the exit status of the + // last + // non-background action that executed. This can be used by workflow + // engine + // authors to determine whether an individual action has succeeded or + // failed. + Environment map[string]string `json:"environment,omitempty"` + + // Flags: The set of flags to apply to this action. + // + // Possible values: + // "FLAG_UNSPECIFIED" - Unspecified flag. + // "IGNORE_EXIT_STATUS" - Normally, a non-zero exit status causes the + // pipeline to fail. This flag + // allows execution of other actions to continue instead. + // "RUN_IN_BACKGROUND" - This flag allows an action to continue + // running in the background while + // executing subsequent actions. This is useful to provide services + // to + // other actions (or to provide debugging support tools like ssh + // servers). + // "ALWAYS_RUN" - Normally, once an action fails no further actions + // are run. This flag + // indicates that this action must be run even if the pipeline has + // already + // failed. This is useful for actions that copy output files off of the + // VM + // or for debugging. + // "ENABLE_FUSE" - Enable access to the FUSE device for this action. + // Filesystems can then + // be mounted into disks shared with other actions. The other actions + // do + // not need the ENABLE_FUSE flag to access the mounted filesystem. + // + // This has the effect of causing the container to be executed + // with + // CAP_SYS_ADMIN and exposes /dev/fuse to the container, so it should + // only + // be used for containers you trust. + // "PUBLISH_EXPOSED_PORTS" - Expose all ports specified by EXPOSE + // statements in the container. To + // discover the host side port numbers, consult the ACTION_STARTED event + // in + // the operation metadata. + // "DISABLE_IMAGE_PREFETCH" - Normally, all container images are + // downloaded before any actions are + // executed. This helps prevent typos in URIs or issues like lack of + // disk + // space from wasting large amounts of compute resources. + // + // If set, this flag prevents the worker from downloading the image + // until + // just before the action is executed. + // + // This is useful for two reasons: first, if the image is large and a + // step + // earlier in the pipeline can fail, it can save time to avoid fetching + // the + // image until it is needed. + // + // Second, if the image is private (that is, it requires running + // `docker + // login` to access) this flag **must** be set so that a preceding + // action + // can establish the credentials required to fetch it. + Flags []string `json:"flags,omitempty"` + + // ImageUri: The URI to pull the container image from. Note that all + // images referenced + // by actions in the pipeline are pulled before the first action runs. + // If + // multiple actions reference the same image, it is only pulled + // once, + // ensuring that the same image is used for all actions in a single + // pipeline. + ImageUri string `json:"imageUri,omitempty"` + + // Labels: Labels to associate with the action. This field is provided + // to assist + // workflow engine authors in identifying actions (for example, to + // indicate + // what sort of action they perform: eg. localization, debugging, etc). + // They + // are returned in the operation metadata but are otherwise ignored. + Labels map[string]string `json:"labels,omitempty"` + + // Mounts: A list of mounts to make available to the action. + // + // In addition to the values specified here, every action has a + // special + // virtual disk mounted under /google that contains log files and + // other + // operational components. + // + //
    + //
  • /google/logs: all logs written during the + // pipeline + // execution are stored here.
  • + //
  • /google/logs/output: the combined standard output + // and + // standard error of all actions run as part of the pipeline + // execution.
  • + //
  • /google/logs/action/*/stdout: the complete + // contents of + // each individual action's standard output
  • + //
  • /google/logs/action/*/stderr: the complete + // contents of + // each individual action's standard error output
  • + //
+ Mounts []*Mount `json:"mounts,omitempty"` + + // Name: An optional name for the container. The container hostname + // will be set to + // this name, making it useful for inter-container communication. The + // name + // must contain only upper and lowercase alphanumeric characters and + // hypens + // and cannot start with a hypen. + Name string `json:"name,omitempty"` + + // PidNamespace: The PID namespace to run the action inside. If + // unspecified, a separate + // isolated namespace is used. + PidNamespace string `json:"pidNamespace,omitempty"` + + // PortMappings: A map of container to host port mappings for this + // container. Note that if + // the container already specifies exposed ports, the + // PUBLISH_EXPOSED_PORTS + // flag should be used instead. + // + // The host port number must be less than 65536. If it is zero, an + // unused + // random port is assigned. To determine the resulting port number, + // consult + // the ContainerStartedEvent in the operation metadata. + PortMappings map[string]int64 `json:"portMappings,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Commands") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Commands") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *Action) MarshalJSON() ([]byte, error) { + type NoMethod Action + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// CancelOperationRequest: The request message for +// Operations.CancelOperation. +type CancelOperationRequest struct { +} + +// CheckInRequest: The parameters to the CheckIn method. +type CheckInRequest struct { + // DeadlineExpired: The deadline has expired and the worker needs more + // time. + DeadlineExpired *Empty `json:"deadlineExpired,omitempty"` + + // Event: A workflow specific event occurred. + Event googleapi.RawMessage `json:"event,omitempty"` + + // Result: The operation has finished with the given result. + Result *Status `json:"result,omitempty"` + + // ForceSendFields is a list of field names (e.g. "DeadlineExpired") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "DeadlineExpired") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *CheckInRequest) MarshalJSON() ([]byte, error) { + type NoMethod CheckInRequest + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// CheckInResponse: The response to the CheckIn method. +type CheckInResponse struct { + // Deadline: The deadline by which the worker must request an extension. + // The backend + // will allow for network transmission time and other delays, but the + // worker + // must attempt to transmit the extension request no later than the + // deadline. + Deadline string `json:"deadline,omitempty"` + + // Metadata: The metadata that describes the operation assigned to the + // worker. + Metadata googleapi.RawMessage `json:"metadata,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "Deadline") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Deadline") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *CheckInResponse) MarshalJSON() ([]byte, error) { + type NoMethod CheckInResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// ComputeEngine: Describes a Compute Engine resource that is being +// managed by a running +// pipeline. +type ComputeEngine struct { + // DiskNames: The names of the disks that were created for this + // pipeline. + DiskNames []string `json:"diskNames,omitempty"` + + // InstanceName: The instance on which the operation is running. + InstanceName string `json:"instanceName,omitempty"` + + // MachineType: The machine type of the instance. + MachineType string `json:"machineType,omitempty"` + + // Zone: The availability zone in which the instance resides. + Zone string `json:"zone,omitempty"` + + // ForceSendFields is a list of field names (e.g. "DiskNames") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "DiskNames") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *ComputeEngine) MarshalJSON() ([]byte, error) { + type NoMethod ComputeEngine + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// ContainerStartedEvent: This event is generated when a container +// starts. +type ContainerStartedEvent struct { + // ActionId: The numeric ID of the action that started this container. + ActionId int64 `json:"actionId,omitempty"` + + // IpAddress: The public IP address that can be used to connect to the + // container. This + // field is only populated when at least one port mapping is present. + // If the + // instance was created with a private address this field will be empty + // even + // if port mappings exist. + IpAddress string `json:"ipAddress,omitempty"` + + // PortMappings: The container to host port mappings installed for this + // container. This + // set will contain any ports exposed using the PUBLISH_EXPOSED_PORTS + // flag as + // well as any specified in the Action definition. + PortMappings map[string]int64 `json:"portMappings,omitempty"` + + // ForceSendFields is a list of field names (e.g. "ActionId") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "ActionId") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *ContainerStartedEvent) MarshalJSON() ([]byte, error) { + type NoMethod ContainerStartedEvent + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// ContainerStoppedEvent: This event is generated when a container +// exits. +type ContainerStoppedEvent struct { + // ActionId: The numeric ID of the action that started this container. + ActionId int64 `json:"actionId,omitempty"` + + // ExitStatus: The exit status of the container. + ExitStatus int64 `json:"exitStatus,omitempty"` + + // ForceSendFields is a list of field names (e.g. "ActionId") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "ActionId") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *ContainerStoppedEvent) MarshalJSON() ([]byte, error) { + type NoMethod ContainerStoppedEvent + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// DelayedEvent: This event is generated whenever a resource limitation +// or transient error +// delays execution of a pipeline that was otherwise ready to run. +type DelayedEvent struct { + // Cause: A textual description of the cause of the delay. The string + // may change + // without notice since it is often generated by another service (such + // as + // Compute Engine). + Cause string `json:"cause,omitempty"` + + // Metrics: If the delay was caused by a resource shortage, this field + // lists the + // Compute Engine metrics that are preventing this operation from + // running + // (for example, CPUS or INSTANCES). If the particular metric is not + // known, + // a single UNKNOWN metric will be present. + Metrics []string `json:"metrics,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Cause") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Cause") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *DelayedEvent) MarshalJSON() ([]byte, error) { + type NoMethod DelayedEvent + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// Disk: Carries information about a disk that can be attached to a VM. +type Disk struct { + // Name: A user supplied name for the disk, used when mounting it into + // actions. + // The name must contain only upper and lowercase alphanumeric + // characters and + // hypens and cannot start with a hypen. + Name string `json:"name,omitempty"` + + // SizeGb: The size, in gigabytes, of the disk to attach. Note that + // this value is + // not configurable for some disk types such as local-ssd. If the size + // is + // not specified, a size of at least 500gb is used to ensure reasonable + // I/O + // performance. + SizeGb int64 `json:"sizeGb,omitempty"` + + // SourceImage: An optional image to put on the disk before attaching it + // to the VM. + SourceImage string `json:"sourceImage,omitempty"` + + // Type: The Compute Engine disk type. If unspecified, 'standard-pd' is + // used. + Type string `json:"type,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Name") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Name") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *Disk) MarshalJSON() ([]byte, error) { + type NoMethod Disk + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// Empty: A generic empty message that you can re-use to avoid defining +// duplicated +// empty messages in your APIs. A typical example is to use it as the +// request +// or the response type of an API method. For instance: +// +// service Foo { +// rpc Bar(google.protobuf.Empty) returns +// (google.protobuf.Empty); +// } +// +// The JSON representation for `Empty` is empty JSON object `{}`. +type Empty struct { + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` +} + +// Event: Event carries information about events that occur during +// pipeline execution. +type Event struct { + // Description: A human readable description of the event. Note that + // these strings may + // change at any time without notice. Any application logic must use + // the + // information in the details field. + Description string `json:"description,omitempty"` + + // Details: Machine readable details about the event. + Details googleapi.RawMessage `json:"details,omitempty"` + + // Timestamp: The time that the event occurred. + Timestamp string `json:"timestamp,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Description") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Description") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *Event) MarshalJSON() ([]byte, error) { + type NoMethod Event + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// FailedEvent: This event is generated when the execution of a pipeline +// has failed. Note +// that other events may continue to occur after this event. +type FailedEvent struct { + // Cause: The human readable description of the cause of the failure. + Cause string `json:"cause,omitempty"` + + // Code: The Google standard error code that best describes this + // failure. + // + // Possible values: + // "OK" - Not an error; returned on success + // + // HTTP Mapping: 200 OK + // "CANCELLED" - The operation was cancelled, typically by the + // caller. + // + // HTTP Mapping: 499 Client Closed Request + // "UNKNOWN" - Unknown error. For example, this error may be returned + // when + // a `Status` value received from another address space belongs to + // an error space that is not known in this address space. Also + // errors raised by APIs that do not return enough error information + // may be converted to this error. + // + // HTTP Mapping: 500 Internal Server Error + // "INVALID_ARGUMENT" - The client specified an invalid argument. + // Note that this differs + // from `FAILED_PRECONDITION`. `INVALID_ARGUMENT` indicates + // arguments + // that are problematic regardless of the state of the system + // (e.g., a malformed file name). + // + // HTTP Mapping: 400 Bad Request + // "DEADLINE_EXCEEDED" - The deadline expired before the operation + // could complete. For operations + // that change the state of the system, this error may be returned + // even if the operation has completed successfully. For example, + // a + // successful response from a server could have been delayed long + // enough for the deadline to expire. + // + // HTTP Mapping: 504 Gateway Timeout + // "NOT_FOUND" - Some requested entity (e.g., file or directory) was + // not found. + // + // Note to server developers: if a request is denied for an entire + // class + // of users, such as gradual feature rollout or undocumented + // whitelist, + // `NOT_FOUND` may be used. If a request is denied for some users + // within + // a class of users, such as user-based access control, + // `PERMISSION_DENIED` + // must be used. + // + // HTTP Mapping: 404 Not Found + // "ALREADY_EXISTS" - The entity that a client attempted to create + // (e.g., file or directory) + // already exists. + // + // HTTP Mapping: 409 Conflict + // "PERMISSION_DENIED" - The caller does not have permission to + // execute the specified + // operation. `PERMISSION_DENIED` must not be used for rejections + // caused by exhausting some resource (use `RESOURCE_EXHAUSTED` + // instead for those errors). `PERMISSION_DENIED` must not be + // used if the caller can not be identified (use + // `UNAUTHENTICATED` + // instead for those errors). This error code does not imply the + // request is valid or the requested entity exists or satisfies + // other pre-conditions. + // + // HTTP Mapping: 403 Forbidden + // "UNAUTHENTICATED" - The request does not have valid authentication + // credentials for the + // operation. + // + // HTTP Mapping: 401 Unauthorized + // "RESOURCE_EXHAUSTED" - Some resource has been exhausted, perhaps a + // per-user quota, or + // perhaps the entire file system is out of space. + // + // HTTP Mapping: 429 Too Many Requests + // "FAILED_PRECONDITION" - The operation was rejected because the + // system is not in a state + // required for the operation's execution. For example, the + // directory + // to be deleted is non-empty, an rmdir operation is applied to + // a non-directory, etc. + // + // Service implementors can use the following guidelines to + // decide + // between `FAILED_PRECONDITION`, `ABORTED`, and `UNAVAILABLE`: + // (a) Use `UNAVAILABLE` if the client can retry just the failing + // call. + // (b) Use `ABORTED` if the client should retry at a higher level + // (e.g., when a client-specified test-and-set fails, indicating + // the + // client should restart a read-modify-write sequence). + // (c) Use `FAILED_PRECONDITION` if the client should not retry until + // the system state has been explicitly fixed. E.g., if an + // "rmdir" + // fails because the directory is non-empty, `FAILED_PRECONDITION` + // should be returned since the client should not retry unless + // the files are deleted from the directory. + // + // HTTP Mapping: 400 Bad Request + // "ABORTED" - The operation was aborted, typically due to a + // concurrency issue such as + // a sequencer check failure or transaction abort. + // + // See the guidelines above for deciding between + // `FAILED_PRECONDITION`, + // `ABORTED`, and `UNAVAILABLE`. + // + // HTTP Mapping: 409 Conflict + // "OUT_OF_RANGE" - The operation was attempted past the valid range. + // E.g., seeking or + // reading past end-of-file. + // + // Unlike `INVALID_ARGUMENT`, this error indicates a problem that may + // be fixed if the system state changes. For example, a 32-bit + // file + // system will generate `INVALID_ARGUMENT` if asked to read at an + // offset that is not in the range [0,2^32-1], but it will + // generate + // `OUT_OF_RANGE` if asked to read from an offset past the current + // file size. + // + // There is a fair bit of overlap between `FAILED_PRECONDITION` + // and + // `OUT_OF_RANGE`. We recommend using `OUT_OF_RANGE` (the more + // specific + // error) when it applies so that callers who are iterating through + // a space can easily look for an `OUT_OF_RANGE` error to detect + // when + // they are done. + // + // HTTP Mapping: 400 Bad Request + // "UNIMPLEMENTED" - The operation is not implemented or is not + // supported/enabled in this + // service. + // + // HTTP Mapping: 501 Not Implemented + // "INTERNAL" - Internal errors. This means that some invariants + // expected by the + // underlying system have been broken. This error code is reserved + // for serious errors. + // + // HTTP Mapping: 500 Internal Server Error + // "UNAVAILABLE" - The service is currently unavailable. This is most + // likely a + // transient condition, which can be corrected by retrying with + // a backoff. + // + // See the guidelines above for deciding between + // `FAILED_PRECONDITION`, + // `ABORTED`, and `UNAVAILABLE`. + // + // HTTP Mapping: 503 Service Unavailable + // "DATA_LOSS" - Unrecoverable data loss or corruption. + // + // HTTP Mapping: 500 Internal Server Error + Code string `json:"code,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Cause") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Cause") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *FailedEvent) MarshalJSON() ([]byte, error) { + type NoMethod FailedEvent + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// ImportReadGroupSetsResponse: The read group set import response. +type ImportReadGroupSetsResponse struct { + // ReadGroupSetIds: IDs of the read group sets that were created. + ReadGroupSetIds []string `json:"readGroupSetIds,omitempty"` + + // ForceSendFields is a list of field names (e.g. "ReadGroupSetIds") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "ReadGroupSetIds") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *ImportReadGroupSetsResponse) MarshalJSON() ([]byte, error) { + type NoMethod ImportReadGroupSetsResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// ImportVariantsResponse: The variant data import response. +type ImportVariantsResponse struct { + // CallSetIds: IDs of the call sets created during the import. + CallSetIds []string `json:"callSetIds,omitempty"` + + // ForceSendFields is a list of field names (e.g. "CallSetIds") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "CallSetIds") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *ImportVariantsResponse) MarshalJSON() ([]byte, error) { + type NoMethod ImportVariantsResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// ListOperationsResponse: The response message for +// Operations.ListOperations. +type ListOperationsResponse struct { + // NextPageToken: The standard List next-page token. + NextPageToken string `json:"nextPageToken,omitempty"` + + // Operations: A list of operations that matches the specified filter in + // the request. + Operations []*Operation `json:"operations,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "NextPageToken") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "NextPageToken") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *ListOperationsResponse) MarshalJSON() ([]byte, error) { + type NoMethod ListOperationsResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// Metadata: Metadata carries information about the pipeline execution +// that is returned +// in the long running operation's metadata field. +type Metadata struct { + // CreateTime: The time that the operation was created by the API. + CreateTime string `json:"createTime,omitempty"` + + // Events: The list of events that have happened so far during the + // execution of this + // operation. + Events []*Event `json:"events,omitempty"` + + // Labels: The user defined labels associated with this operation. + Labels map[string]string `json:"labels,omitempty"` + + // Pipeline: The pipeline this operation represents. + Pipeline *Pipeline `json:"pipeline,omitempty"` + + // ForceSendFields is a list of field names (e.g. "CreateTime") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "CreateTime") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *Metadata) MarshalJSON() ([]byte, error) { + type NoMethod Metadata + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// Mount: Mount carries information about a particular disk mount inside +// a container. +type Mount struct { + // Disk: The name of the disk to mount, as specified in the resources + // section. + Disk string `json:"disk,omitempty"` + + // Path: The path to mount the disk at inside the container. + Path string `json:"path,omitempty"` + + // ReadOnly: If true, the disk is mounted read only inside the + // container. + ReadOnly bool `json:"readOnly,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Disk") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Disk") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *Mount) MarshalJSON() ([]byte, error) { + type NoMethod Mount + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// Network: VM networking options. +type Network struct { + // Name: The network name to attach the VM's network interface to. If + // unspecified, + // the global default network is used. + Name string `json:"name,omitempty"` + + // UsePrivateAddress: If set to true, do not attach a public IP address + // to the VM. Note that + // without an public IP address, additional configuration is required + // to + // allow the VM to access Google services. + // + // See + // https://cloud.google.com/vpc/docs/configure-private-google-access + // for more information. + UsePrivateAddress bool `json:"usePrivateAddress,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Name") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Name") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *Network) MarshalJSON() ([]byte, error) { + type NoMethod Network + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// Operation: This resource represents a long-running operation that is +// the result of a +// network API call. +type Operation struct { + // Done: If the value is `false`, it means the operation is still in + // progress. + // If `true`, the operation is completed, and either `error` or + // `response` is + // available. + Done bool `json:"done,omitempty"` + + // Error: The error result of the operation in case of failure or + // cancellation. + Error *Status `json:"error,omitempty"` + + // Metadata: An OperationMetadata or Metadata object. This will always + // be returned with the Operation. + Metadata googleapi.RawMessage `json:"metadata,omitempty"` + + // Name: The server-assigned name, which is only unique within the same + // service that originally returns it. For example: + // `operations/CJHU7Oi_ChDrveSpBRjfuL-qzoWAgEw` + Name string `json:"name,omitempty"` + + // Response: If importing ReadGroupSets, an ImportReadGroupSetsResponse + // is returned. If importing Variants, an ImportVariantsResponse is + // returned. For pipelines and exports, an Empty response is returned. + Response googleapi.RawMessage `json:"response,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "Done") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Done") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *Operation) MarshalJSON() ([]byte, error) { + type NoMethod Operation + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// OperationEvent: An event that occurred during an Operation. +type OperationEvent struct { + // Description: Required description of event. + Description string `json:"description,omitempty"` + + // EndTime: Optional time of when event finished. An event can have a + // start time and no + // finish time. If an event has a finish time, there must be a start + // time. + EndTime string `json:"endTime,omitempty"` + + // StartTime: Optional time of when event started. + StartTime string `json:"startTime,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Description") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Description") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *OperationEvent) MarshalJSON() ([]byte, error) { + type NoMethod OperationEvent + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// OperationMetadata: Metadata describing an Operation. +type OperationMetadata struct { + // ClientId: This field is deprecated. Use `labels` instead. Optionally + // provided by the + // caller when submitting the request that creates the operation. + ClientId string `json:"clientId,omitempty"` + + // CreateTime: The time at which the job was submitted to the Genomics + // service. + CreateTime string `json:"createTime,omitempty"` + + // EndTime: The time at which the job stopped running. + EndTime string `json:"endTime,omitempty"` + + // Events: Optional event messages that were generated during the job's + // execution. + // This also contains any warnings that were generated during import + // or export. + Events []*OperationEvent `json:"events,omitempty"` + + // Labels: Optionally provided by the caller when submitting the request + // that creates + // the operation. + Labels map[string]string `json:"labels,omitempty"` + + // ProjectId: The Google Cloud Project in which the job is scoped. + ProjectId string `json:"projectId,omitempty"` + + // Request: The original request that started the operation. Note that + // this will be in + // current version of the API. If the operation was started with v1beta2 + // API + // and a GetOperation is performed on v1 API, a v1 request will be + // returned. + Request googleapi.RawMessage `json:"request,omitempty"` + + // RuntimeMetadata: Runtime metadata on this Operation. + RuntimeMetadata googleapi.RawMessage `json:"runtimeMetadata,omitempty"` + + // StartTime: The time at which the job began to run. + StartTime string `json:"startTime,omitempty"` + + // ForceSendFields is a list of field names (e.g. "ClientId") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "ClientId") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *OperationMetadata) MarshalJSON() ([]byte, error) { + type NoMethod OperationMetadata + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// Pipeline: The Pipeline object describes a series of actions to +// execute, expressed as +// docker containers. +type Pipeline struct { + // Actions: The list of actions to execute, in the order they are + // specified. + Actions []*Action `json:"actions,omitempty"` + + // Environment: The environment to pass into every action. Each action + // may also specify + // additional environment variables but cannot delete an entry from this + // map + // (though they may overwrite it with a different value). + Environment map[string]string `json:"environment,omitempty"` + + // Resources: The resources required for execution. + Resources *Resources `json:"resources,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Actions") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Actions") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *Pipeline) MarshalJSON() ([]byte, error) { + type NoMethod Pipeline + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// PullStartedEvent: This event is generated when the worker starts +// pulling an image. +type PullStartedEvent struct { + // ImageUri: The URI of the image that was pulled. + ImageUri string `json:"imageUri,omitempty"` + + // ForceSendFields is a list of field names (e.g. "ImageUri") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "ImageUri") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *PullStartedEvent) MarshalJSON() ([]byte, error) { + type NoMethod PullStartedEvent + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// PullStoppedEvent: This event is generated when the worker stops +// pulling an image. +type PullStoppedEvent struct { + // ImageUri: The URI of the image that was pulled. + ImageUri string `json:"imageUri,omitempty"` + + // ForceSendFields is a list of field names (e.g. "ImageUri") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "ImageUri") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *PullStoppedEvent) MarshalJSON() ([]byte, error) { + type NoMethod PullStoppedEvent + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// Resources: The system resources for the pipeline run. +// +// At least one zone or region must be specified or the pipeline run +// will fail. +type Resources struct { + // ProjectId: The customer project ID to allocate resources in. + ProjectId string `json:"projectId,omitempty"` + + // Regions: The list of regions allowed for VM allocation. If set, the + // zones field + // must not be set. + Regions []string `json:"regions,omitempty"` + + // VirtualMachine: The virtual machine specification. + VirtualMachine *VirtualMachine `json:"virtualMachine,omitempty"` + + // Zones: The list of zones allowed for VM allocation. If set, the + // regions field + // must not be set. + Zones []string `json:"zones,omitempty"` + + // ForceSendFields is a list of field names (e.g. "ProjectId") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "ProjectId") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *Resources) MarshalJSON() ([]byte, error) { + type NoMethod Resources + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// RunPipelineRequest: The arguments to the RunPipeline method. The +// requesting user must have +// the iam.serviceAccounts.actAs permission for the Google Genomics +// Service +// Account or the request will fail. +type RunPipelineRequest struct { + // Labels: User defined labels to associate with the returned operation. + // These + // labels are not propagated to any Google Cloud Platform resources used + // by + // the operation, and may be modified at any time. + // + // To associate labels with resources created while executing the + // operation, + // see the appropriate resource message (i.e., VirtualMachine). + Labels map[string]string `json:"labels,omitempty"` + + // Pipeline: The description of the pipeline to run. + Pipeline *Pipeline `json:"pipeline,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Labels") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Labels") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *RunPipelineRequest) MarshalJSON() ([]byte, error) { + type NoMethod RunPipelineRequest + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// RuntimeMetadata: Runtime metadata that will be populated in +// the +// runtimeMetadata +// field of the Operation associated with a RunPipeline execution. +type RuntimeMetadata struct { + // ComputeEngine: Execution information specific to Google Compute + // Engine. + ComputeEngine *ComputeEngine `json:"computeEngine,omitempty"` + + // ForceSendFields is a list of field names (e.g. "ComputeEngine") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "ComputeEngine") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *RuntimeMetadata) MarshalJSON() ([]byte, error) { + type NoMethod RuntimeMetadata + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// ServiceAccount: Carries information about a Google Cloud Service +// Account. +type ServiceAccount struct { + // Email: Email address of the service account. If not specified, the + // default + // compute engine service account for the project will be used. + Email string `json:"email,omitempty"` + + // Scopes: List of scopes to be enabled for this service account on the + // VM, in + // addition to the Google Genomics API scope. + Scopes []string `json:"scopes,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Email") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Email") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *ServiceAccount) MarshalJSON() ([]byte, error) { + type NoMethod ServiceAccount + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// Status: The `Status` type defines a logical error model that is +// suitable for different +// programming environments, including REST APIs and RPC APIs. It is +// used by +// [gRPC](https://github.com/grpc). The error model is designed to +// be: +// +// - Simple to use and understand for most users +// - Flexible enough to meet unexpected needs +// +// # Overview +// +// The `Status` message contains three pieces of data: error code, error +// message, +// and error details. The error code should be an enum value +// of +// google.rpc.Code, but it may accept additional error codes if needed. +// The +// error message should be a developer-facing English message that +// helps +// developers *understand* and *resolve* the error. If a localized +// user-facing +// error message is needed, put the localized message in the error +// details or +// localize it in the client. The optional error details may contain +// arbitrary +// information about the error. There is a predefined set of error +// detail types +// in the package `google.rpc` that can be used for common error +// conditions. +// +// # Language mapping +// +// The `Status` message is the logical representation of the error +// model, but it +// is not necessarily the actual wire format. When the `Status` message +// is +// exposed in different client libraries and different wire protocols, +// it can be +// mapped differently. For example, it will likely be mapped to some +// exceptions +// in Java, but more likely mapped to some error codes in C. +// +// # Other uses +// +// The error model and the `Status` message can be used in a variety +// of +// environments, either with or without APIs, to provide a +// consistent developer experience across different +// environments. +// +// Example uses of this error model include: +// +// - Partial errors. If a service needs to return partial errors to the +// client, +// it may embed the `Status` in the normal response to indicate the +// partial +// errors. +// +// - Workflow errors. A typical workflow has multiple steps. Each step +// may +// have a `Status` message for error reporting. +// +// - Batch operations. If a client uses batch request and batch +// response, the +// `Status` message should be used directly inside batch response, +// one for +// each error sub-response. +// +// - Asynchronous operations. If an API call embeds asynchronous +// operation +// results in its response, the status of those operations should +// be +// represented directly using the `Status` message. +// +// - Logging. If some API errors are stored in logs, the message +// `Status` could +// be used directly after any stripping needed for security/privacy +// reasons. +type Status struct { + // Code: The status code, which should be an enum value of + // google.rpc.Code. + Code int64 `json:"code,omitempty"` + + // Details: A list of messages that carry the error details. There is a + // common set of + // message types for APIs to use. + Details []googleapi.RawMessage `json:"details,omitempty"` + + // Message: A developer-facing error message, which should be in + // English. Any + // user-facing error message should be localized and sent in + // the + // google.rpc.Status.details field, or localized by the client. + Message string `json:"message,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Code") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Code") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *Status) MarshalJSON() ([]byte, error) { + type NoMethod Status + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// UnexpectedExitStatusEvent: This event is generated when the execution +// of a container results in a +// non-zero exit status that was not otherwise ignored. Execution +// will +// continue, but only actions that are flagged as ALWAYS_RUN will be +// executed: +// other actions will be skipped. +type UnexpectedExitStatusEvent struct { + // ActionId: The numeric ID of the action that started the container. + ActionId int64 `json:"actionId,omitempty"` + + // ExitStatus: The exit status of the container. + ExitStatus int64 `json:"exitStatus,omitempty"` + + // ForceSendFields is a list of field names (e.g. "ActionId") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "ActionId") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *UnexpectedExitStatusEvent) MarshalJSON() ([]byte, error) { + type NoMethod UnexpectedExitStatusEvent + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// VirtualMachine: Carries information about a Compute Engine VM +// resource. +type VirtualMachine struct { + // BootDiskSizeGb: The size of the boot disk, in gigabytes. The boot + // disk must be large + // enough to accommodate all of the docker images from each action in + // the + // pipeline at the same time. If not specified, a small but + // reasonable + // default value is used. + BootDiskSizeGb int64 `json:"bootDiskSizeGb,omitempty"` + + // BootImage: The host operating system image to use. + // + // At present, only Container Optimized OS images may be used. + // + // The default value is + // "projects/cos-cloud/global/images/family/cos-stable" + // which selects the latest stable release of Container Optimized + // OS. + // + // This option is provided to allow testing against the beta release of + // the + // operating system to ensure that the new version does not + // interact + // negatively with production pipelines. + // + // To test a pipeline against the beta release of COS, use the + // value + // "projects/cos-cloud/global/images/family/cos-beta". + BootImage string `json:"bootImage,omitempty"` + + // CpuPlatform: The CPU platform to request. An instance based on a + // newer platform may be + // allocated but never one with less capabilities. The value of + // this + // parameter must be a valid Compute Engine CPU platform name (such as + // "Intel + // Skylake"). This parameter is only useful for carefully optimized + // work + // loads where the CPU platform has a significant impact. + // + // For more information about the effect of this parameter, please + // visit + // https://cloud.google.com/compute/docs/instances/specify-min-cpu- + // platform. + CpuPlatform string `json:"cpuPlatform,omitempty"` + + // Disks: The list of disks to create and attach to the VM. + Disks []*Disk `json:"disks,omitempty"` + + // Labels: Optional set of labels to apply to the VM and any attached + // disk resources. + // These labels must adhere to the name and value restrictions on VM + // labels + // imposed by Compute Engine. + // + // These labels are applied at creation time to the VM and are applied + // on a + // best-effort basis to attached disk resources shortly after VM + // creation. + Labels map[string]string `json:"labels,omitempty"` + + // MachineType: The machine type of the virtual machine to create. Must + // be the short name + // of a standard machine type (such as "n1-standard-1") or a custom + // machine + // type (such as "custom-1-4096"). + MachineType string `json:"machineType,omitempty"` + + // Network: The VM network configuration. + Network *Network `json:"network,omitempty"` + + // Preemptible: If true, allocate a preemptible VM. + Preemptible bool `json:"preemptible,omitempty"` + + // ServiceAccount: The service account to install on the VM. This + // account does not need + // any permissions other than those required by the pipeline. + ServiceAccount *ServiceAccount `json:"serviceAccount,omitempty"` + + // ForceSendFields is a list of field names (e.g. "BootDiskSizeGb") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "BootDiskSizeGb") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *VirtualMachine) MarshalJSON() ([]byte, error) { + type NoMethod VirtualMachine + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// WorkerAssignedEvent: This event is generated once a worker VM has +// been assigned to run the +// pipeline. +type WorkerAssignedEvent struct { + // Instance: The worker's instance name. + Instance string `json:"instance,omitempty"` + + // Zone: The zone the worker is running in. + Zone string `json:"zone,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Instance") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Instance") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *WorkerAssignedEvent) MarshalJSON() ([]byte, error) { + type NoMethod WorkerAssignedEvent + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// WorkerReleasedEvent: This event is generated when the worker VM that +// was assigned to the pipeline +// has been released (i.e., deleted). +type WorkerReleasedEvent struct { + // Instance: The worker's instance name. + Instance string `json:"instance,omitempty"` + + // Zone: The zone the worker was running in. + Zone string `json:"zone,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Instance") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Instance") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *WorkerReleasedEvent) MarshalJSON() ([]byte, error) { + type NoMethod WorkerReleasedEvent + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// method id "genomics.pipelines.run": + +type PipelinesRunCall struct { + s *Service + runpipelinerequest *RunPipelineRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Run: Runs a pipeline. +// +// **Note:** In order to use this method, the Genomics Service +// Agent +// must have access to your project. This is done automatically when +// the +// Genomics API is first enabled, but if you delete this permission, or +// if +// you have already enabled the Genomics API prior to the launch of +// the +// v2alpha1 API, you must disable and re-enable the API to grant the +// Genomics +// Service Agent the required permissions. +// +// [1]: /genomics/gsa +func (r *PipelinesService) Run(runpipelinerequest *RunPipelineRequest) *PipelinesRunCall { + c := &PipelinesRunCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.runpipelinerequest = runpipelinerequest + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *PipelinesRunCall) Fields(s ...googleapi.Field) *PipelinesRunCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *PipelinesRunCall) Context(ctx context.Context) *PipelinesRunCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *PipelinesRunCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *PipelinesRunCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.runpipelinerequest) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v2alpha1/pipelines:run") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("POST", urls, body) + req.Header = reqHeaders + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "genomics.pipelines.run" call. +// Exactly one of *Operation or error will be non-nil. Any non-2xx +// status code is an error. Response headers are in either +// *Operation.ServerResponse.Header or (if a response was returned at +// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified +// to check whether the returned error was because +// http.StatusNotModified was returned. +func (c *PipelinesRunCall) Do(opts ...googleapi.CallOption) (*Operation, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &Operation{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Runs a pipeline.\n\n**Note:** In order to use this method, the Genomics Service Agent\nmust have access to your project. This is done automatically when the\nGenomics API is first enabled, but if you delete this permission, or if\nyou have already enabled the Genomics API prior to the launch of the\nv2alpha1 API, you must disable and re-enable the API to grant the Genomics\nService Agent the required permissions.\n\n[1]: /genomics/gsa", + // "flatPath": "v2alpha1/pipelines:run", + // "httpMethod": "POST", + // "id": "genomics.pipelines.run", + // "parameterOrder": [], + // "parameters": {}, + // "path": "v2alpha1/pipelines:run", + // "request": { + // "$ref": "RunPipelineRequest" + // }, + // "response": { + // "$ref": "Operation" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform", + // "https://www.googleapis.com/auth/genomics" + // ] + // } + +} + +// method id "genomics.projects.operations.cancel": + +type ProjectsOperationsCancelCall struct { + s *Service + name string + canceloperationrequest *CancelOperationRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Cancel: Starts asynchronous cancellation on a long-running operation. +// The server makes a best effort to cancel the operation, but success +// is not guaranteed. Clients may use Operations.GetOperation or +// Operations.ListOperations to check whether the cancellation succeeded +// or the operation completed despite cancellation. +func (r *ProjectsOperationsService) Cancel(name string, canceloperationrequest *CancelOperationRequest) *ProjectsOperationsCancelCall { + c := &ProjectsOperationsCancelCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + c.canceloperationrequest = canceloperationrequest + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsOperationsCancelCall) Fields(s ...googleapi.Field) *ProjectsOperationsCancelCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsOperationsCancelCall) Context(ctx context.Context) *ProjectsOperationsCancelCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsOperationsCancelCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsOperationsCancelCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.canceloperationrequest) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v2alpha1/{+name}:cancel") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("POST", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "genomics.projects.operations.cancel" call. +// Exactly one of *Empty or error will be non-nil. Any non-2xx status +// code is an error. Response headers are in either +// *Empty.ServerResponse.Header or (if a response was returned at all) +// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to +// check whether the returned error was because http.StatusNotModified +// was returned. +func (c *ProjectsOperationsCancelCall) Do(opts ...googleapi.CallOption) (*Empty, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &Empty{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Starts asynchronous cancellation on a long-running operation. The server makes a best effort to cancel the operation, but success is not guaranteed. Clients may use Operations.GetOperation or Operations.ListOperations to check whether the cancellation succeeded or the operation completed despite cancellation.", + // "flatPath": "v2alpha1/projects/{projectsId}/operations/{operationsId}:cancel", + // "httpMethod": "POST", + // "id": "genomics.projects.operations.cancel", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "The name of the operation resource to be cancelled.", + // "location": "path", + // "pattern": "^projects/[^/]+/operations/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v2alpha1/{+name}:cancel", + // "request": { + // "$ref": "CancelOperationRequest" + // }, + // "response": { + // "$ref": "Empty" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform", + // "https://www.googleapis.com/auth/genomics" + // ] + // } + +} + +// method id "genomics.projects.operations.get": + +type ProjectsOperationsGetCall struct { + s *Service + name string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// Get: Gets the latest state of a long-running operation. Clients can +// use this +// method to poll the operation result at intervals as recommended by +// the API +// service. +func (r *ProjectsOperationsService) Get(name string) *ProjectsOperationsGetCall { + c := &ProjectsOperationsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsOperationsGetCall) Fields(s ...googleapi.Field) *ProjectsOperationsGetCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// IfNoneMatch sets the optional parameter which makes the operation +// fail if the object's ETag matches the given value. This is useful for +// getting updates only after the object has changed since the last +// request. Use googleapi.IsNotModified to check whether the response +// error from Do is the result of In-None-Match. +func (c *ProjectsOperationsGetCall) IfNoneMatch(entityTag string) *ProjectsOperationsGetCall { + c.ifNoneMatch_ = entityTag + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsOperationsGetCall) Context(ctx context.Context) *ProjectsOperationsGetCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsOperationsGetCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsOperationsGetCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + if c.ifNoneMatch_ != "" { + reqHeaders.Set("If-None-Match", c.ifNoneMatch_) + } + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v2alpha1/{+name}") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("GET", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "genomics.projects.operations.get" call. +// Exactly one of *Operation or error will be non-nil. Any non-2xx +// status code is an error. Response headers are in either +// *Operation.ServerResponse.Header or (if a response was returned at +// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified +// to check whether the returned error was because +// http.StatusNotModified was returned. +func (c *ProjectsOperationsGetCall) Do(opts ...googleapi.CallOption) (*Operation, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &Operation{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Gets the latest state of a long-running operation. Clients can use this\nmethod to poll the operation result at intervals as recommended by the API\nservice.", + // "flatPath": "v2alpha1/projects/{projectsId}/operations/{operationsId}", + // "httpMethod": "GET", + // "id": "genomics.projects.operations.get", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "The name of the operation resource.", + // "location": "path", + // "pattern": "^projects/[^/]+/operations/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v2alpha1/{+name}", + // "response": { + // "$ref": "Operation" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform", + // "https://www.googleapis.com/auth/genomics" + // ] + // } + +} + +// method id "genomics.projects.operations.list": + +type ProjectsOperationsListCall struct { + s *Service + name string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// List: Lists operations that match the specified filter in the +// request. +func (r *ProjectsOperationsService) List(name string) *ProjectsOperationsListCall { + c := &ProjectsOperationsListCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + return c +} + +// Filter sets the optional parameter "filter": A string for filtering +// Operations. +// In v2alpha1, the following filter fields are supported: +// +// * createTime: The time this job was created +// * events: The set of event (names) that have occurred while +// running +// the pipeline. The : operator can be used to determine if a +// particular event has occurred. +// * error: If the pipeline is running, this value is NULL. Once +// the +// pipeline finishes, the value is the standard Google error code. +// * labels.key or labels."key with space" where key is a label key. +// +// In v1 and v1alpha2, the following filter fields are supported: +// +// * projectId: Required. Corresponds to +// OperationMetadata.projectId. +// * createTime: The time this job was created, in seconds from the +// [epoch](http://en.wikipedia.org/wiki/Unix_time). Can use `>=` +// and/or `<=` +// operators. +// * status: Can be `RUNNING`, `SUCCESS`, `FAILURE`, or `CANCELED`. +// Only +// one status may be specified. +// * labels.key where key is a label key. +// +// Examples: +// +// * `projectId = my-project AND createTime >= 1432140000` +// * `projectId = my-project AND createTime >= 1432140000 AND createTime +// <= 1432150000 AND status = RUNNING` +// * `projectId = my-project AND labels.color = *` +// * `projectId = my-project AND labels.color = red` +func (c *ProjectsOperationsListCall) Filter(filter string) *ProjectsOperationsListCall { + c.urlParams_.Set("filter", filter) + return c +} + +// PageSize sets the optional parameter "pageSize": The maximum number +// of results to return. If unspecified, defaults to +// 256. The maximum value is 2048. +func (c *ProjectsOperationsListCall) PageSize(pageSize int64) *ProjectsOperationsListCall { + c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) + return c +} + +// PageToken sets the optional parameter "pageToken": The standard list +// page token. +func (c *ProjectsOperationsListCall) PageToken(pageToken string) *ProjectsOperationsListCall { + c.urlParams_.Set("pageToken", pageToken) + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsOperationsListCall) Fields(s ...googleapi.Field) *ProjectsOperationsListCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// IfNoneMatch sets the optional parameter which makes the operation +// fail if the object's ETag matches the given value. This is useful for +// getting updates only after the object has changed since the last +// request. Use googleapi.IsNotModified to check whether the response +// error from Do is the result of In-None-Match. +func (c *ProjectsOperationsListCall) IfNoneMatch(entityTag string) *ProjectsOperationsListCall { + c.ifNoneMatch_ = entityTag + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsOperationsListCall) Context(ctx context.Context) *ProjectsOperationsListCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsOperationsListCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsOperationsListCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + if c.ifNoneMatch_ != "" { + reqHeaders.Set("If-None-Match", c.ifNoneMatch_) + } + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v2alpha1/{+name}") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("GET", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "genomics.projects.operations.list" call. +// Exactly one of *ListOperationsResponse or error will be non-nil. Any +// non-2xx status code is an error. Response headers are in either +// *ListOperationsResponse.ServerResponse.Header or (if a response was +// returned at all) in error.(*googleapi.Error).Header. Use +// googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *ProjectsOperationsListCall) Do(opts ...googleapi.CallOption) (*ListOperationsResponse, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &ListOperationsResponse{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Lists operations that match the specified filter in the request.", + // "flatPath": "v2alpha1/projects/{projectsId}/operations", + // "httpMethod": "GET", + // "id": "genomics.projects.operations.list", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "filter": { + // "description": "A string for filtering Operations.\nIn v2alpha1, the following filter fields are supported\u0026#58;\n\n* createTime\u0026#58; The time this job was created\n* events\u0026#58; The set of event (names) that have occurred while running\n the pipeline. The \u0026#58; operator can be used to determine if a\n particular event has occurred.\n* error\u0026#58; If the pipeline is running, this value is NULL. Once the\n pipeline finishes, the value is the standard Google error code.\n* labels.key or labels.\"key with space\" where key is a label key.\n\nIn v1 and v1alpha2, the following filter fields are supported\u0026#58;\n\n* projectId\u0026#58; Required. Corresponds to\n OperationMetadata.projectId.\n* createTime\u0026#58; The time this job was created, in seconds from the\n [epoch](http://en.wikipedia.org/wiki/Unix_time). Can use `\u003e=` and/or `\u003c=`\n operators.\n* status\u0026#58; Can be `RUNNING`, `SUCCESS`, `FAILURE`, or `CANCELED`. Only\n one status may be specified.\n* labels.key where key is a label key.\n\nExamples\u0026#58;\n\n* `projectId = my-project AND createTime \u003e= 1432140000`\n* `projectId = my-project AND createTime \u003e= 1432140000 AND createTime \u003c= 1432150000 AND status = RUNNING`\n* `projectId = my-project AND labels.color = *`\n* `projectId = my-project AND labels.color = red`", + // "location": "query", + // "type": "string" + // }, + // "name": { + // "description": "The name of the operation's parent resource.", + // "location": "path", + // "pattern": "^projects/[^/]+/operations$", + // "required": true, + // "type": "string" + // }, + // "pageSize": { + // "description": "The maximum number of results to return. If unspecified, defaults to\n256. The maximum value is 2048.", + // "format": "int32", + // "location": "query", + // "type": "integer" + // }, + // "pageToken": { + // "description": "The standard list page token.", + // "location": "query", + // "type": "string" + // } + // }, + // "path": "v2alpha1/{+name}", + // "response": { + // "$ref": "ListOperationsResponse" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform", + // "https://www.googleapis.com/auth/genomics" + // ] + // } + +} + +// Pages invokes f for each page of results. +// A non-nil error returned from f will halt the iteration. +// The provided context supersedes any context provided to the Context method. +func (c *ProjectsOperationsListCall) Pages(ctx context.Context, f func(*ListOperationsResponse) error) error { + c.ctx_ = ctx + defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point + for { + x, err := c.Do() + if err != nil { + return err + } + if err := f(x); err != nil { + return err + } + if x.NextPageToken == "" { + return nil + } + c.PageToken(x.NextPageToken) + } +} + +// method id "genomics.workers.checkIn": + +type WorkersCheckInCall struct { + s *Service + id string + checkinrequest *CheckInRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// CheckIn: The worker uses this method to retrieve the assigned +// operation and +// provide periodic status updates. +func (r *WorkersService) CheckIn(id string, checkinrequest *CheckInRequest) *WorkersCheckInCall { + c := &WorkersCheckInCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.id = id + c.checkinrequest = checkinrequest + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *WorkersCheckInCall) Fields(s ...googleapi.Field) *WorkersCheckInCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *WorkersCheckInCall) Context(ctx context.Context) *WorkersCheckInCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *WorkersCheckInCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *WorkersCheckInCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.checkinrequest) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v2alpha1/workers/{id}:checkIn") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("POST", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "id": c.id, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "genomics.workers.checkIn" call. +// Exactly one of *CheckInResponse or error will be non-nil. Any non-2xx +// status code is an error. Response headers are in either +// *CheckInResponse.ServerResponse.Header or (if a response was returned +// at all) in error.(*googleapi.Error).Header. Use +// googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *WorkersCheckInCall) Do(opts ...googleapi.CallOption) (*CheckInResponse, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &CheckInResponse{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "The worker uses this method to retrieve the assigned operation and\nprovide periodic status updates.", + // "flatPath": "v2alpha1/workers/{id}:checkIn", + // "httpMethod": "POST", + // "id": "genomics.workers.checkIn", + // "parameterOrder": [ + // "id" + // ], + // "parameters": { + // "id": { + // "description": "The worker id, assigned when it was created.", + // "location": "path", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v2alpha1/workers/{id}:checkIn", + // "request": { + // "$ref": "CheckInRequest" + // }, + // "response": { + // "$ref": "CheckInResponse" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform", + // "https://www.googleapis.com/auth/genomics" + // ] + // } + +} diff --git a/vendor/google.golang.org/api/gensupport/go18.go b/vendor/google.golang.org/api/gensupport/go18.go new file mode 100644 index 000000000..c76cb8f20 --- /dev/null +++ b/vendor/google.golang.org/api/gensupport/go18.go @@ -0,0 +1,17 @@ +// Copyright 2018 The Go Authors. All rights reserved. +// Use of this source code is governed by a BSD-style +// license that can be found in the LICENSE file. + +// +build go1.8 + +package gensupport + +import ( + "io" + "net/http" +) + +// SetGetBody sets the GetBody field of req to f. +func SetGetBody(req *http.Request, f func() (io.ReadCloser, error)) { + req.GetBody = f +} diff --git a/vendor/google.golang.org/api/gensupport/json_test.go b/vendor/google.golang.org/api/gensupport/json_test.go index 629803f26..6d83eadbd 100644 --- a/vendor/google.golang.org/api/gensupport/json_test.go +++ b/vendor/google.golang.org/api/gensupport/json_test.go @@ -493,7 +493,7 @@ func TestParseJSONTag(t *testing.T) { t.Fatalf("parsing json:\n got err: %v\ntag: %q", err, tc.tag) } if !reflect.DeepEqual(got, tc.want) { - t.Errorf("parseJSONTage:\ngot :%s\nwant:%s", got, tc.want) + t.Errorf("parseJSONTage:\ngot :%v\nwant:%v", got, tc.want) } } } diff --git a/vendor/google.golang.org/api/gensupport/media.go b/vendor/google.golang.org/api/gensupport/media.go index f3e77fc52..5a2674104 100644 --- a/vendor/google.golang.org/api/gensupport/media.go +++ b/vendor/google.golang.org/api/gensupport/media.go @@ -5,12 +5,14 @@ package gensupport import ( + "bytes" "fmt" "io" "io/ioutil" "mime/multipart" "net/http" "net/textproto" + "strings" "google.golang.org/api/googleapi" ) @@ -251,11 +253,11 @@ func (mi *MediaInfo) UploadType() string { } // UploadRequest sets up an HTTP request for media upload. It adds headers -// as necessary, and returns a replacement for the body. -func (mi *MediaInfo) UploadRequest(reqHeaders http.Header, body io.Reader) (newBody io.Reader, cleanup func()) { +// as necessary, and returns a replacement for the body and a function for http.Request.GetBody. +func (mi *MediaInfo) UploadRequest(reqHeaders http.Header, body io.Reader) (newBody io.Reader, getBody func() (io.ReadCloser, error), cleanup func()) { cleanup = func() {} if mi == nil { - return body, cleanup + return body, nil, cleanup } var media io.Reader if mi.media != nil { @@ -269,7 +271,17 @@ func (mi *MediaInfo) UploadRequest(reqHeaders http.Header, body io.Reader) (newB media, _, _, _ = mi.buffer.Chunk() } if media != nil { + fb := readerFunc(body) + fm := readerFunc(media) combined, ctype := CombineBodyMedia(body, "application/json", media, mi.mType) + if fb != nil && fm != nil { + getBody = func() (io.ReadCloser, error) { + rb := ioutil.NopCloser(fb()) + rm := ioutil.NopCloser(fm()) + r, _ := CombineBodyMedia(rb, "application/json", rm, mi.mType) + return r, nil + } + } cleanup = func() { combined.Close() } reqHeaders.Set("Content-Type", ctype) body = combined @@ -277,7 +289,27 @@ func (mi *MediaInfo) UploadRequest(reqHeaders http.Header, body io.Reader) (newB if mi.buffer != nil && mi.mType != "" && !mi.singleChunk { reqHeaders.Set("X-Upload-Content-Type", mi.mType) } - return body, cleanup + return body, getBody, cleanup +} + +// readerFunc returns a function that always returns an io.Reader that has the same +// contents as r, provided that can be done without consuming r. Otherwise, it +// returns nil. +// See http.NewRequest (in net/http/request.go). +func readerFunc(r io.Reader) func() io.Reader { + switch r := r.(type) { + case *bytes.Buffer: + buf := r.Bytes() + return func() io.Reader { return bytes.NewReader(buf) } + case *bytes.Reader: + snapshot := *r + return func() io.Reader { r := snapshot; return &r } + case *strings.Reader: + snapshot := *r + return func() io.Reader { r := snapshot; return &r } + default: + return nil + } } // ResumableUpload returns an appropriately configured ResumableUpload value if the diff --git a/vendor/google.golang.org/api/gensupport/media_test.go b/vendor/google.golang.org/api/gensupport/media_test.go index 9112721ac..6bf2b4171 100644 --- a/vendor/google.golang.org/api/gensupport/media_test.go +++ b/vendor/google.golang.org/api/gensupport/media_test.go @@ -6,6 +6,7 @@ package gensupport import ( "bytes" + "crypto/rand" "io" "io/ioutil" "net/http" @@ -267,6 +268,75 @@ func TestUploadRequest(t *testing.T) { } } +func TestUploadRequestGetBody(t *testing.T) { + // Test that a single chunk results in a getBody function that is non-nil, and + // that produces the same content as the original body. + + // Mock out rand.Reader so we use the same multipart boundary every time. + rr := rand.Reader + rand.Reader = &nullReader{1000} + defer func() { + rand.Reader = rr + }() + + for _, test := range []struct { + desc string + r io.Reader + chunkSize int + wantGetBody bool + wantContentType string + wantUploadType string + }{ + { + desc: "chunk size of zero: no getBody", + r: &nullReader{10}, + chunkSize: 0, + wantGetBody: false, + }, + { + desc: "chunk size == data size: 1 chunk, getBody", + r: &nullReader{googleapi.MinUploadChunkSize}, + chunkSize: 1, + wantGetBody: true, + }, + { + desc: "chunk size < data size: MediaBuffer, >1 chunk, no getBody", + // No getBody here, because the initial request contains no media data + // Note that ChunkSize = 1 is rounded up to googleapi.MinUploadChunkSize. + r: &nullReader{2 * googleapi.MinUploadChunkSize}, + chunkSize: 1, + wantGetBody: false, + }, + } { + mi := NewInfoFromMedia(test.r, []googleapi.MediaOption{googleapi.ChunkSize(test.chunkSize)}) + r, getBody, _ := mi.UploadRequest(http.Header{}, bytes.NewBuffer([]byte("body"))) + if got, want := (getBody != nil), test.wantGetBody; got != want { + t.Errorf("%s: getBody: got %t, want %t", test.desc, got, want) + continue + } + if getBody == nil { + continue + } + want, err := ioutil.ReadAll(r) + if err != nil { + t.Fatal(err) + } + for i := 0; i < 3; i++ { + rc, err := getBody() + if err != nil { + t.Fatal(err) + } + got, err := ioutil.ReadAll(rc) + if err != nil { + t.Fatal(err) + } + if !bytes.Equal(got, want) { + t.Errorf("%s, %d:\ngot:\n%s\nwant:\n%s", test.desc, i, string(got), string(want)) + } + } + } +} + func TestResumableUpload(t *testing.T) { for _, test := range []struct { desc string @@ -275,7 +345,6 @@ func TestResumableUpload(t *testing.T) { wantUploadType string wantResumableUpload bool }{ - { desc: "chunk size of zero: don't use a MediaBuffer; upload as a single chunk", r: strings.NewReader("12345"), diff --git a/vendor/google.golang.org/api/gensupport/not_go18.go b/vendor/google.golang.org/api/gensupport/not_go18.go new file mode 100644 index 000000000..2536501ce --- /dev/null +++ b/vendor/google.golang.org/api/gensupport/not_go18.go @@ -0,0 +1,14 @@ +// Copyright 2018 The Go Authors. All rights reserved. +// Use of this source code is governed by a BSD-style +// license that can be found in the LICENSE file. + +// +build !go1.8 + +package gensupport + +import ( + "io" + "net/http" +) + +func SetGetBody(req *http.Request, f func() (io.ReadCloser, error)) {} diff --git a/vendor/google.golang.org/api/gensupport/retry_test.go b/vendor/google.golang.org/api/gensupport/retry_test.go index e65bc35cd..dd5e96d9b 100644 --- a/vendor/google.golang.org/api/gensupport/retry_test.go +++ b/vendor/google.golang.org/api/gensupport/retry_test.go @@ -78,7 +78,7 @@ func TestRetry(t *testing.T) { t.Errorf("%s: Retry returned err %v", tt.desc, err) } if got := resp.StatusCode; got != tt.wantStatus { - t.Errorf("%s: Retry returned response with StatusCode=%d; want %d", got, tt.wantStatus) + t.Errorf("%s: Retry returned response with StatusCode=%d; want %d", tt.desc, got, tt.wantStatus) } if len(tt.respStatus) != 0 { t.Errorf("%s: f was not called enough; status codes remaining: %v", tt.desc, tt.respStatus) @@ -120,7 +120,7 @@ func TestRetryClosesBody(t *testing.T) { want := i != 2 // Only the last response should not be closed. got := resp.Body.(*checkCloseReader).closed if got != want { - t.Errorf("response[%d].Body closed = %t, want %t", got, want) + t.Errorf("response[%d].Body closed = %t, want %t", i, got, want) } } } diff --git a/vendor/google.golang.org/api/gmail/v1/gmail-api.json b/vendor/google.golang.org/api/gmail/v1/gmail-api.json index d6bafaf71..607af9b3f 100644 --- a/vendor/google.golang.org/api/gmail/v1/gmail-api.json +++ b/vendor/google.golang.org/api/gmail/v1/gmail-api.json @@ -1,3475 +1,3493 @@ { - "kind": "discovery#restDescription", - "etag": "\"YWOzh2SDasdU84ArJnpYek-OMdg/yLmXjwrCZrd7tYs9N17TGZKIRRE\"", - "discoveryVersion": "v1", - "id": "gmail:v1", - "name": "gmail", - "version": "v1", - "revision": "20170913", - "title": "Gmail API", - "description": "Access Gmail mailboxes including sending user email.", - "ownerDomain": "google.com", - "ownerName": "Google", - "icons": { - "x16": "https://www.google.com/images/icons/product/googlemail-16.png", - "x32": "https://www.google.com/images/icons/product/googlemail-32.png" - }, - "documentationLink": "https://developers.google.com/gmail/api/", - "protocol": "rest", - "baseUrl": "https://www.googleapis.com/gmail/v1/users/", - "basePath": "/gmail/v1/users/", - "rootUrl": "https://www.googleapis.com/", - "servicePath": "gmail/v1/users/", - "batchPath": "batch/gmail/v1", - "parameters": { - "alt": { - "type": "string", - "description": "Data format for the response.", - "default": "json", - "enum": [ - "json" - ], - "enumDescriptions": [ - "Responses with Content-Type of application/json" - ], - "location": "query" - }, - "fields": { - "type": "string", - "description": "Selector specifying which fields to include in a partial response.", - "location": "query" - }, - "key": { - "type": "string", - "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" - }, - "oauth_token": { - "type": "string", - "description": "OAuth 2.0 token for the current user.", - "location": "query" - }, - "prettyPrint": { - "type": "boolean", - "description": "Returns response with indentations and line breaks.", - "default": "true", - "location": "query" - }, - "quotaUser": { - "type": "string", - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", - "location": "query" - }, - "userIp": { - "type": "string", - "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", - "location": "query" - } - }, - "auth": { - "oauth2": { - "scopes": { - "https://mail.google.com/": { - "description": "Read, send, delete, and manage your email" - }, - "https://www.googleapis.com/auth/gmail.compose": { - "description": "Manage drafts and send emails" - }, - "https://www.googleapis.com/auth/gmail.insert": { - "description": "Insert mail into your mailbox" - }, - "https://www.googleapis.com/auth/gmail.labels": { - "description": "Manage mailbox labels" - }, - "https://www.googleapis.com/auth/gmail.metadata": { - "description": "View your email message metadata such as labels and headers, but not the email body" - }, - "https://www.googleapis.com/auth/gmail.modify": { - "description": "View and modify but not delete your email" - }, - "https://www.googleapis.com/auth/gmail.readonly": { - "description": "View your email messages and settings" - }, - "https://www.googleapis.com/auth/gmail.send": { - "description": "Send email on your behalf" - }, - "https://www.googleapis.com/auth/gmail.settings.basic": { - "description": "Manage your basic mail settings" - }, - "https://www.googleapis.com/auth/gmail.settings.sharing": { - "description": "Manage your sensitive mail settings, including who can manage your mail" - } - } - } - }, - "schemas": { - "AutoForwarding": { - "id": "AutoForwarding", - "type": "object", - "description": "Auto-forwarding settings for an account.", - "properties": { - "disposition": { - "type": "string", - "description": "The state that a message should be left in after it has been forwarded.", - "enum": [ - "archive", - "dispositionUnspecified", - "leaveInInbox", - "markRead", - "trash" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "" - ] - }, - "emailAddress": { - "type": "string", - "description": "Email address to which all incoming messages are forwarded. This email address must be a verified member of the forwarding addresses." - }, - "enabled": { - "type": "boolean", - "description": "Whether all incoming mail is automatically forwarded to another address." - } - } - }, - "BatchDeleteMessagesRequest": { - "id": "BatchDeleteMessagesRequest", - "type": "object", - "properties": { - "ids": { - "type": "array", - "description": "The IDs of the messages to delete.", - "items": { - "type": "string" - } - } - } - }, - "BatchModifyMessagesRequest": { - "id": "BatchModifyMessagesRequest", - "type": "object", - "properties": { - "addLabelIds": { - "type": "array", - "description": "A list of label IDs to add to messages.", - "items": { - "type": "string" - } - }, - "ids": { - "type": "array", - "description": "The IDs of the messages to modify. There is a limit of 1000 ids per request.", - "items": { - "type": "string" - } - }, - "removeLabelIds": { - "type": "array", - "description": "A list of label IDs to remove from messages.", - "items": { - "type": "string" - } - } - } - }, - "Draft": { - "id": "Draft", - "type": "object", - "description": "A draft email in the user's mailbox.", - "properties": { - "id": { - "type": "string", - "description": "The immutable ID of the draft.", - "annotations": { - "required": [ - "gmail.users.drafts.send" - ] - } - }, - "message": { - "$ref": "Message", - "description": "The message content of the draft." - } - } - }, - "Filter": { - "id": "Filter", - "type": "object", - "description": "Resource definition for Gmail filters. Filters apply to specific messages instead of an entire email thread.", - "properties": { - "action": { - "$ref": "FilterAction", - "description": "Action that the filter performs." - }, - "criteria": { - "$ref": "FilterCriteria", - "description": "Matching criteria for the filter." - }, - "id": { - "type": "string", - "description": "The server assigned ID of the filter." - } - } - }, - "FilterAction": { - "id": "FilterAction", - "type": "object", - "description": "A set of actions to perform on a message.", - "properties": { - "addLabelIds": { - "type": "array", - "description": "List of labels to add to the message.", - "items": { - "type": "string" - } - }, - "forward": { - "type": "string", - "description": "Email address that the message should be forwarded to." - }, - "removeLabelIds": { - "type": "array", - "description": "List of labels to remove from the message.", - "items": { - "type": "string" - } - } - } - }, - "FilterCriteria": { - "id": "FilterCriteria", - "type": "object", - "description": "Message matching criteria.", - "properties": { - "excludeChats": { - "type": "boolean", - "description": "Whether the response should exclude chats." - }, - "from": { - "type": "string", - "description": "The sender's display name or email address." - }, - "hasAttachment": { - "type": "boolean", - "description": "Whether the message has any attachment." - }, - "negatedQuery": { - "type": "string", - "description": "Only return messages not matching the specified query. Supports the same query format as the Gmail search box. For example, \"from:someuser@example.com rfc822msgid: is:unread\"." - }, - "query": { - "type": "string", - "description": "Only return messages matching the specified query. Supports the same query format as the Gmail search box. For example, \"from:someuser@example.com rfc822msgid: is:unread\"." - }, - "size": { - "type": "integer", - "description": "The size of the entire RFC822 message in bytes, including all headers and attachments.", - "format": "int32" - }, - "sizeComparison": { - "type": "string", - "description": "How the message size in bytes should be in relation to the size field.", - "enum": [ - "larger", - "smaller", - "unspecified" - ], - "enumDescriptions": [ - "", - "", - "" - ] - }, - "subject": { - "type": "string", - "description": "Case-insensitive phrase found in the message's subject. Trailing and leading whitespace are be trimmed and adjacent spaces are collapsed." - }, - "to": { - "type": "string", - "description": "The recipient's display name or email address. Includes recipients in the \"to\", \"cc\", and \"bcc\" header fields. You can use simply the local part of the email address. For example, \"example\" and \"example@\" both match \"example@gmail.com\". This field is case-insensitive." - } - } - }, - "ForwardingAddress": { - "id": "ForwardingAddress", - "type": "object", - "description": "Settings for a forwarding address.", - "properties": { - "forwardingEmail": { - "type": "string", - "description": "An email address to which messages can be forwarded." - }, - "verificationStatus": { - "type": "string", - "description": "Indicates whether this address has been verified and is usable for forwarding. Read-only.", - "enum": [ - "accepted", - "pending", - "verificationStatusUnspecified" - ], - "enumDescriptions": [ - "", - "", - "" - ] - } - } - }, - "History": { - "id": "History", - "type": "object", - "description": "A record of a change to the user's mailbox. Each history change may affect multiple messages in multiple ways.", - "properties": { - "id": { - "type": "string", - "description": "The mailbox sequence ID.", - "format": "uint64" - }, - "labelsAdded": { - "type": "array", - "description": "Labels added to messages in this history record.", - "items": { - "$ref": "HistoryLabelAdded" - } - }, - "labelsRemoved": { - "type": "array", - "description": "Labels removed from messages in this history record.", - "items": { - "$ref": "HistoryLabelRemoved" - } - }, - "messages": { - "type": "array", - "description": "List of messages changed in this history record. The fields for specific change types, such as messagesAdded may duplicate messages in this field. We recommend using the specific change-type fields instead of this.", - "items": { - "$ref": "Message" - } - }, - "messagesAdded": { - "type": "array", - "description": "Messages added to the mailbox in this history record.", - "items": { - "$ref": "HistoryMessageAdded" - } - }, - "messagesDeleted": { - "type": "array", - "description": "Messages deleted (not Trashed) from the mailbox in this history record.", - "items": { - "$ref": "HistoryMessageDeleted" - } - } - } - }, - "HistoryLabelAdded": { - "id": "HistoryLabelAdded", - "type": "object", - "properties": { - "labelIds": { - "type": "array", - "description": "Label IDs added to the message.", - "items": { - "type": "string" - } - }, - "message": { - "$ref": "Message" - } - } - }, - "HistoryLabelRemoved": { - "id": "HistoryLabelRemoved", - "type": "object", - "properties": { - "labelIds": { - "type": "array", - "description": "Label IDs removed from the message.", - "items": { - "type": "string" - } - }, - "message": { - "$ref": "Message" - } - } - }, - "HistoryMessageAdded": { - "id": "HistoryMessageAdded", - "type": "object", - "properties": { - "message": { - "$ref": "Message" - } - } - }, - "HistoryMessageDeleted": { - "id": "HistoryMessageDeleted", - "type": "object", - "properties": { - "message": { - "$ref": "Message" - } - } - }, - "ImapSettings": { - "id": "ImapSettings", - "type": "object", - "description": "IMAP settings for an account.", - "properties": { - "autoExpunge": { - "type": "boolean", - "description": "If this value is true, Gmail will immediately expunge a message when it is marked as deleted in IMAP. Otherwise, Gmail will wait for an update from the client before expunging messages marked as deleted." - }, - "enabled": { - "type": "boolean", - "description": "Whether IMAP is enabled for the account." - }, - "expungeBehavior": { - "type": "string", - "description": "The action that will be executed on a message when it is marked as deleted and expunged from the last visible IMAP folder.", - "enum": [ - "archive", - "deleteForever", - "expungeBehaviorUnspecified", - "trash" - ], - "enumDescriptions": [ - "", - "", - "", - "" - ] - }, - "maxFolderSize": { - "type": "integer", - "description": "An optional limit on the number of messages that an IMAP folder may contain. Legal values are 0, 1000, 2000, 5000 or 10000. A value of zero is interpreted to mean that there is no limit.", - "format": "int32" - } - } - }, - "Label": { - "id": "Label", - "type": "object", - "description": "Labels are used to categorize messages and threads within the user's mailbox.", - "properties": { - "id": { - "type": "string", - "description": "The immutable ID of the label.", - "annotations": { - "required": [ - "gmail.users.labels.update" - ] - } - }, - "labelListVisibility": { - "type": "string", - "description": "The visibility of the label in the label list in the Gmail web interface.", - "enum": [ - "labelHide", - "labelShow", - "labelShowIfUnread" - ], - "enumDescriptions": [ - "", - "", - "" - ], - "annotations": { - "required": [ - "gmail.users.labels.create", - "gmail.users.labels.update" - ] - } - }, - "messageListVisibility": { - "type": "string", - "description": "The visibility of the label in the message list in the Gmail web interface.", - "enum": [ - "hide", - "show" - ], - "enumDescriptions": [ - "", - "" - ], - "annotations": { - "required": [ - "gmail.users.labels.create", - "gmail.users.labels.update" - ] - } - }, - "messagesTotal": { - "type": "integer", - "description": "The total number of messages with the label.", - "format": "int32" - }, - "messagesUnread": { - "type": "integer", - "description": "The number of unread messages with the label.", - "format": "int32" - }, - "name": { - "type": "string", - "description": "The display name of the label.", - "annotations": { - "required": [ - "gmail.users.labels.create", - "gmail.users.labels.update" - ] - } - }, - "threadsTotal": { - "type": "integer", - "description": "The total number of threads with the label.", - "format": "int32" - }, - "threadsUnread": { - "type": "integer", - "description": "The number of unread threads with the label.", - "format": "int32" - }, - "type": { - "type": "string", - "description": "The owner type for the label. User labels are created by the user and can be modified and deleted by the user and can be applied to any message or thread. System labels are internally created and cannot be added, modified, or deleted. System labels may be able to be applied to or removed from messages and threads under some circumstances but this is not guaranteed. For example, users can apply and remove the INBOX and UNREAD labels from messages and threads, but cannot apply or remove the DRAFTS or SENT labels from messages or threads.", - "enum": [ - "system", - "user" - ], - "enumDescriptions": [ - "", - "" - ] - } - } - }, - "ListDraftsResponse": { - "id": "ListDraftsResponse", - "type": "object", - "properties": { - "drafts": { - "type": "array", - "description": "List of drafts.", - "items": { - "$ref": "Draft" - } - }, - "nextPageToken": { - "type": "string", - "description": "Token to retrieve the next page of results in the list." - }, - "resultSizeEstimate": { - "type": "integer", - "description": "Estimated total number of results.", - "format": "uint32" - } - } - }, - "ListFiltersResponse": { - "id": "ListFiltersResponse", - "type": "object", - "description": "Response for the ListFilters method.", - "properties": { - "filter": { - "type": "array", - "description": "List of a user's filters.", - "items": { - "$ref": "Filter" - } - } - } - }, - "ListForwardingAddressesResponse": { - "id": "ListForwardingAddressesResponse", - "type": "object", - "description": "Response for the ListForwardingAddresses method.", - "properties": { - "forwardingAddresses": { - "type": "array", - "description": "List of addresses that may be used for forwarding.", - "items": { - "$ref": "ForwardingAddress" - } - } - } - }, - "ListHistoryResponse": { - "id": "ListHistoryResponse", - "type": "object", - "properties": { - "history": { - "type": "array", - "description": "List of history records. Any messages contained in the response will typically only have id and threadId fields populated.", - "items": { - "$ref": "History" - } - }, - "historyId": { - "type": "string", - "description": "The ID of the mailbox's current history record.", - "format": "uint64" - }, - "nextPageToken": { - "type": "string", - "description": "Page token to retrieve the next page of results in the list." - } - } - }, - "ListLabelsResponse": { - "id": "ListLabelsResponse", - "type": "object", - "properties": { - "labels": { - "type": "array", - "description": "List of labels.", - "items": { - "$ref": "Label" - } - } - } - }, - "ListMessagesResponse": { - "id": "ListMessagesResponse", - "type": "object", - "properties": { - "messages": { - "type": "array", - "description": "List of messages.", - "items": { - "$ref": "Message" - } - }, - "nextPageToken": { - "type": "string", - "description": "Token to retrieve the next page of results in the list." - }, - "resultSizeEstimate": { - "type": "integer", - "description": "Estimated total number of results.", - "format": "uint32" - } - } - }, - "ListSendAsResponse": { - "id": "ListSendAsResponse", - "type": "object", - "description": "Response for the ListSendAs method.", - "properties": { - "sendAs": { - "type": "array", - "description": "List of send-as aliases.", - "items": { - "$ref": "SendAs" - } - } - } - }, - "ListSmimeInfoResponse": { - "id": "ListSmimeInfoResponse", - "type": "object", - "properties": { - "smimeInfo": { - "type": "array", - "description": "List of SmimeInfo.", - "items": { - "$ref": "SmimeInfo" - } - } - } - }, - "ListThreadsResponse": { - "id": "ListThreadsResponse", - "type": "object", - "properties": { - "nextPageToken": { - "type": "string", - "description": "Page token to retrieve the next page of results in the list." - }, - "resultSizeEstimate": { - "type": "integer", - "description": "Estimated total number of results.", - "format": "uint32" - }, - "threads": { - "type": "array", - "description": "List of threads.", - "items": { - "$ref": "Thread" - } - } - } - }, - "Message": { - "id": "Message", - "type": "object", - "description": "An email message.", - "properties": { - "historyId": { - "type": "string", - "description": "The ID of the last history record that modified this message.", - "format": "uint64" - }, - "id": { - "type": "string", - "description": "The immutable ID of the message." - }, - "internalDate": { - "type": "string", - "description": "The internal message creation timestamp (epoch ms), which determines ordering in the inbox. For normal SMTP-received email, this represents the time the message was originally accepted by Google, which is more reliable than the Date header. However, for API-migrated mail, it can be configured by client to be based on the Date header.", - "format": "int64" - }, - "labelIds": { - "type": "array", - "description": "List of IDs of labels applied to this message.", - "items": { - "type": "string" - } - }, - "payload": { - "$ref": "MessagePart", - "description": "The parsed email structure in the message parts." - }, - "raw": { - "type": "string", - "description": "The entire email message in an RFC 2822 formatted and base64url encoded string. Returned in messages.get and drafts.get responses when the format=RAW parameter is supplied.", - "format": "byte", - "annotations": { - "required": [ - "gmail.users.drafts.create", - "gmail.users.drafts.update", - "gmail.users.messages.insert", - "gmail.users.messages.send" - ] - } - }, - "sizeEstimate": { - "type": "integer", - "description": "Estimated size in bytes of the message.", - "format": "int32" - }, - "snippet": { - "type": "string", - "description": "A short part of the message text." - }, - "threadId": { - "type": "string", - "description": "The ID of the thread the message belongs to. To add a message or draft to a thread, the following criteria must be met: \n- The requested threadId must be specified on the Message or Draft.Message you supply with your request. \n- The References and In-Reply-To headers must be set in compliance with the RFC 2822 standard. \n- The Subject headers must match." - } - } - }, - "MessagePart": { - "id": "MessagePart", - "type": "object", - "description": "A single MIME message part.", - "properties": { - "body": { - "$ref": "MessagePartBody", - "description": "The message part body for this part, which may be empty for container MIME message parts." - }, - "filename": { - "type": "string", - "description": "The filename of the attachment. Only present if this message part represents an attachment." - }, - "headers": { - "type": "array", - "description": "List of headers on this message part. For the top-level message part, representing the entire message payload, it will contain the standard RFC 2822 email headers such as To, From, and Subject.", - "items": { - "$ref": "MessagePartHeader" - } - }, - "mimeType": { - "type": "string", - "description": "The MIME type of the message part." - }, - "partId": { - "type": "string", - "description": "The immutable ID of the message part." - }, - "parts": { - "type": "array", - "description": "The child MIME message parts of this part. This only applies to container MIME message parts, for example multipart/*. For non- container MIME message part types, such as text/plain, this field is empty. For more information, see RFC 1521.", - "items": { - "$ref": "MessagePart" - } - } - } - }, - "MessagePartBody": { - "id": "MessagePartBody", - "type": "object", - "description": "The body of a single MIME message part.", - "properties": { - "attachmentId": { - "type": "string", - "description": "When present, contains the ID of an external attachment that can be retrieved in a separate messages.attachments.get request. When not present, the entire content of the message part body is contained in the data field." - }, - "data": { - "type": "string", - "description": "The body data of a MIME message part as a base64url encoded string. May be empty for MIME container types that have no message body or when the body data is sent as a separate attachment. An attachment ID is present if the body data is contained in a separate attachment.", - "format": "byte" - }, - "size": { - "type": "integer", - "description": "Number of bytes for the message part data (encoding notwithstanding).", - "format": "int32" - } - } - }, - "MessagePartHeader": { - "id": "MessagePartHeader", - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "The name of the header before the : separator. For example, To." - }, - "value": { - "type": "string", - "description": "The value of the header after the : separator. For example, someuser@example.com." - } - } - }, - "ModifyMessageRequest": { - "id": "ModifyMessageRequest", - "type": "object", - "properties": { - "addLabelIds": { - "type": "array", - "description": "A list of IDs of labels to add to this message.", - "items": { - "type": "string" - } - }, - "removeLabelIds": { - "type": "array", - "description": "A list IDs of labels to remove from this message.", - "items": { - "type": "string" - } - } - } - }, - "ModifyThreadRequest": { - "id": "ModifyThreadRequest", - "type": "object", - "properties": { - "addLabelIds": { - "type": "array", - "description": "A list of IDs of labels to add to this thread.", - "items": { - "type": "string" - } - }, - "removeLabelIds": { - "type": "array", - "description": "A list of IDs of labels to remove from this thread.", - "items": { - "type": "string" - } - } - } - }, - "PopSettings": { - "id": "PopSettings", - "type": "object", - "description": "POP settings for an account.", - "properties": { - "accessWindow": { - "type": "string", - "description": "The range of messages which are accessible via POP.", - "enum": [ - "accessWindowUnspecified", - "allMail", - "disabled", - "fromNowOn" - ], - "enumDescriptions": [ - "", - "", - "", - "" - ] - }, - "disposition": { - "type": "string", - "description": "The action that will be executed on a message after it has been fetched via POP.", - "enum": [ - "archive", - "dispositionUnspecified", - "leaveInInbox", - "markRead", - "trash" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "" - ] - } - } - }, - "Profile": { - "id": "Profile", - "type": "object", - "description": "Profile for a Gmail user.", - "properties": { - "emailAddress": { - "type": "string", - "description": "The user's email address." - }, - "historyId": { - "type": "string", - "description": "The ID of the mailbox's current history record.", - "format": "uint64" - }, - "messagesTotal": { - "type": "integer", - "description": "The total number of messages in the mailbox.", - "format": "int32" - }, - "threadsTotal": { - "type": "integer", - "description": "The total number of threads in the mailbox.", - "format": "int32" - } - } - }, - "SendAs": { - "id": "SendAs", - "type": "object", - "description": "Settings associated with a send-as alias, which can be either the primary login address associated with the account or a custom \"from\" address. Send-as aliases correspond to the \"Send Mail As\" feature in the web interface.", - "properties": { - "displayName": { - "type": "string", - "description": "A name that appears in the \"From:\" header for mail sent using this alias. For custom \"from\" addresses, when this is empty, Gmail will populate the \"From:\" header with the name that is used for the primary address associated with the account." - }, - "isDefault": { - "type": "boolean", - "description": "Whether this address is selected as the default \"From:\" address in situations such as composing a new message or sending a vacation auto-reply. Every Gmail account has exactly one default send-as address, so the only legal value that clients may write to this field is true. Changing this from false to true for an address will result in this field becoming false for the other previous default address." - }, - "isPrimary": { - "type": "boolean", - "description": "Whether this address is the primary address used to login to the account. Every Gmail account has exactly one primary address, and it cannot be deleted from the collection of send-as aliases. This field is read-only." - }, - "replyToAddress": { - "type": "string", - "description": "An optional email address that is included in a \"Reply-To:\" header for mail sent using this alias. If this is empty, Gmail will not generate a \"Reply-To:\" header." - }, - "sendAsEmail": { - "type": "string", - "description": "The email address that appears in the \"From:\" header for mail sent using this alias. This is read-only for all operations except create." - }, - "signature": { - "type": "string", - "description": "An optional HTML signature that is included in messages composed with this alias in the Gmail web UI." - }, - "smtpMsa": { - "$ref": "SmtpMsa", - "description": "An optional SMTP service that will be used as an outbound relay for mail sent using this alias. If this is empty, outbound mail will be sent directly from Gmail's servers to the destination SMTP service. This setting only applies to custom \"from\" aliases." - }, - "treatAsAlias": { - "type": "boolean", - "description": "Whether Gmail should treat this address as an alias for the user's primary email address. This setting only applies to custom \"from\" aliases." - }, - "verificationStatus": { - "type": "string", - "description": "Indicates whether this address has been verified for use as a send-as alias. Read-only. This setting only applies to custom \"from\" aliases.", - "enum": [ - "accepted", - "pending", - "verificationStatusUnspecified" - ], - "enumDescriptions": [ - "", - "", - "" - ] - } - } - }, - "SmimeInfo": { - "id": "SmimeInfo", - "type": "object", - "description": "An S/MIME email config.", - "properties": { - "encryptedKeyPassword": { - "type": "string", - "description": "Encrypted key password, when key is encrypted." - }, - "expiration": { - "type": "string", - "description": "When the certificate expires (in milliseconds since epoch).", - "format": "int64" - }, - "id": { - "type": "string", - "description": "The immutable ID for the SmimeInfo." - }, - "isDefault": { - "type": "boolean", - "description": "Whether this SmimeInfo is the default one for this user's send-as address." - }, - "issuerCn": { - "type": "string", - "description": "The S/MIME certificate issuer's common name." - }, - "pem": { - "type": "string", - "description": "PEM formatted X509 concatenated certificate string (standard base64 encoding). Format used for returning key, which includes public key as well as certificate chain (not private key)." - }, - "pkcs12": { - "type": "string", - "description": "PKCS#12 format containing a single private/public key pair and certificate chain. This format is only accepted from client for creating a new SmimeInfo and is never returned, because the private key is not intended to be exported. PKCS#12 may be encrypted, in which case encryptedKeyPassword should be set appropriately.", - "format": "byte" - } - } - }, - "SmtpMsa": { - "id": "SmtpMsa", - "type": "object", - "description": "Configuration for communication with an SMTP service.", - "properties": { - "host": { - "type": "string", - "description": "The hostname of the SMTP service. Required." - }, - "password": { - "type": "string", - "description": "The password that will be used for authentication with the SMTP service. This is a write-only field that can be specified in requests to create or update SendAs settings; it is never populated in responses." - }, - "port": { - "type": "integer", - "description": "The port of the SMTP service. Required.", - "format": "int32" - }, - "securityMode": { - "type": "string", - "description": "The protocol that will be used to secure communication with the SMTP service. Required.", - "enum": [ - "none", - "securityModeUnspecified", - "ssl", - "starttls" - ], - "enumDescriptions": [ - "", - "", - "", - "" - ] - }, - "username": { - "type": "string", - "description": "The username that will be used for authentication with the SMTP service. This is a write-only field that can be specified in requests to create or update SendAs settings; it is never populated in responses." - } - } - }, - "Thread": { - "id": "Thread", - "type": "object", - "description": "A collection of messages representing a conversation.", - "properties": { - "historyId": { - "type": "string", - "description": "The ID of the last history record that modified this thread.", - "format": "uint64" - }, - "id": { - "type": "string", - "description": "The unique ID of the thread." - }, - "messages": { - "type": "array", - "description": "The list of messages in the thread.", - "items": { - "$ref": "Message" - } - }, - "snippet": { - "type": "string", - "description": "A short part of the message text." - } - } - }, - "VacationSettings": { - "id": "VacationSettings", - "type": "object", - "description": "Vacation auto-reply settings for an account. These settings correspond to the \"Vacation responder\" feature in the web interface.", - "properties": { - "enableAutoReply": { - "type": "boolean", - "description": "Flag that controls whether Gmail automatically replies to messages." - }, - "endTime": { - "type": "string", - "description": "An optional end time for sending auto-replies (epoch ms). When this is specified, Gmail will automatically reply only to messages that it receives before the end time. If both startTime and endTime are specified, startTime must precede endTime.", - "format": "int64" - }, - "responseBodyHtml": { - "type": "string", - "description": "Response body in HTML format. Gmail will sanitize the HTML before storing it." - }, - "responseBodyPlainText": { - "type": "string", - "description": "Response body in plain text format." - }, - "responseSubject": { - "type": "string", - "description": "Optional text to prepend to the subject line in vacation responses. In order to enable auto-replies, either the response subject or the response body must be nonempty." - }, - "restrictToContacts": { - "type": "boolean", - "description": "Flag that determines whether responses are sent to recipients who are not in the user's list of contacts." - }, - "restrictToDomain": { - "type": "boolean", - "description": "Flag that determines whether responses are sent to recipients who are outside of the user's domain. This feature is only available for G Suite users." - }, - "startTime": { - "type": "string", - "description": "An optional start time for sending auto-replies (epoch ms). When this is specified, Gmail will automatically reply only to messages that it receives after the start time. If both startTime and endTime are specified, startTime must precede endTime.", - "format": "int64" - } - } - }, - "WatchRequest": { - "id": "WatchRequest", - "type": "object", - "description": "Set up or update a new push notification watch on this user's mailbox.", - "properties": { - "labelFilterAction": { - "type": "string", - "description": "Filtering behavior of labelIds list specified.", - "enum": [ - "exclude", - "include" - ], - "enumDescriptions": [ - "", - "" - ] - }, - "labelIds": { - "type": "array", - "description": "List of label_ids to restrict notifications about. By default, if unspecified, all changes are pushed out. If specified then dictates which labels are required for a push notification to be generated.", - "items": { - "type": "string" - } - }, - "topicName": { - "type": "string", - "description": "A fully qualified Google Cloud Pub/Sub API topic name to publish the events to. This topic name **must** already exist in Cloud Pub/Sub and you **must** have already granted gmail \"publish\" permission on it. For example, \"projects/my-project-identifier/topics/my-topic-name\" (using the Cloud Pub/Sub \"v1\" topic naming format).\n\nNote that the \"my-project-identifier\" portion must exactly match your Google developer project id (the one executing this watch request)." - } - } - }, - "WatchResponse": { - "id": "WatchResponse", - "type": "object", - "description": "Push notification watch response.", - "properties": { - "expiration": { - "type": "string", - "description": "When Gmail will stop sending notifications for mailbox updates (epoch millis). Call watch again before this time to renew the watch.", - "format": "int64" - }, - "historyId": { - "type": "string", - "description": "The ID of the mailbox's current history record.", - "format": "uint64" - } - } - } - }, - "resources": { - "users": { - "methods": { - "getProfile": { - "id": "gmail.users.getProfile", - "path": "{userId}/profile", - "httpMethod": "GET", - "description": "Gets the current user's Gmail profile.", - "parameters": { - "userId": { - "type": "string", - "description": "The user's email address. The special value me can be used to indicate the authenticated user.", - "default": "me", - "required": true, - "location": "path" + "auth": { + "oauth2": { + "scopes": { + "https://mail.google.com/": { + "description": "Read, send, delete, and manage your email" + }, + "https://www.googleapis.com/auth/gmail.compose": { + "description": "Manage drafts and send emails" + }, + "https://www.googleapis.com/auth/gmail.insert": { + "description": "Insert mail into your mailbox" + }, + "https://www.googleapis.com/auth/gmail.labels": { + "description": "Manage mailbox labels" + }, + "https://www.googleapis.com/auth/gmail.metadata": { + "description": "View your email message metadata such as labels and headers, but not the email body" + }, + "https://www.googleapis.com/auth/gmail.modify": { + "description": "View and modify but not delete your email" + }, + "https://www.googleapis.com/auth/gmail.readonly": { + "description": "View your email messages and settings" + }, + "https://www.googleapis.com/auth/gmail.send": { + "description": "Send email on your behalf" + }, + "https://www.googleapis.com/auth/gmail.settings.basic": { + "description": "Manage your basic mail settings" + }, + "https://www.googleapis.com/auth/gmail.settings.sharing": { + "description": "Manage your sensitive mail settings, including who can manage your mail" + } } - }, - "parameterOrder": [ - "userId" - ], - "response": { - "$ref": "Profile" - }, - "scopes": [ - "https://mail.google.com/", - "https://www.googleapis.com/auth/gmail.compose", - "https://www.googleapis.com/auth/gmail.metadata", - "https://www.googleapis.com/auth/gmail.modify", - "https://www.googleapis.com/auth/gmail.readonly" - ] - }, - "stop": { - "id": "gmail.users.stop", - "path": "{userId}/stop", - "httpMethod": "POST", - "description": "Stop receiving push notifications for the given user mailbox.", - "parameters": { - "userId": { - "type": "string", - "description": "The user's email address. The special value me can be used to indicate the authenticated user.", - "default": "me", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "userId" - ], - "scopes": [ - "https://mail.google.com/", - "https://www.googleapis.com/auth/gmail.metadata", - "https://www.googleapis.com/auth/gmail.modify", - "https://www.googleapis.com/auth/gmail.readonly" - ] - }, - "watch": { - "id": "gmail.users.watch", - "path": "{userId}/watch", - "httpMethod": "POST", - "description": "Set up or update a push notification watch on the given user mailbox.", - "parameters": { - "userId": { - "type": "string", - "description": "The user's email address. The special value me can be used to indicate the authenticated user.", - "default": "me", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "userId" - ], - "request": { - "$ref": "WatchRequest" - }, - "response": { - "$ref": "WatchResponse" - }, - "scopes": [ - "https://mail.google.com/", - "https://www.googleapis.com/auth/gmail.metadata", - "https://www.googleapis.com/auth/gmail.modify", - "https://www.googleapis.com/auth/gmail.readonly" - ] } - }, - "resources": { - "drafts": { - "methods": { - "create": { - "id": "gmail.users.drafts.create", - "path": "{userId}/drafts", - "httpMethod": "POST", - "description": "Creates a new draft with the DRAFT label.", - "parameters": { - "userId": { - "type": "string", - "description": "The user's email address. The special value me can be used to indicate the authenticated user.", - "default": "me", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "userId" - ], - "request": { - "$ref": "Draft" - }, - "response": { - "$ref": "Draft" - }, - "scopes": [ - "https://mail.google.com/", - "https://www.googleapis.com/auth/gmail.compose", - "https://www.googleapis.com/auth/gmail.modify" - ], - "supportsMediaUpload": true, - "mediaUpload": { - "accept": [ - "message/rfc822" - ], - "maxSize": "35MB", - "protocols": { - "simple": { - "multipart": true, - "path": "/upload/gmail/v1/users/{userId}/drafts" - }, - "resumable": { - "multipart": true, - "path": "/resumable/upload/gmail/v1/users/{userId}/drafts" - } - } - } - }, - "delete": { - "id": "gmail.users.drafts.delete", - "path": "{userId}/drafts/{id}", - "httpMethod": "DELETE", - "description": "Immediately and permanently deletes the specified draft. Does not simply trash it.", - "parameters": { - "id": { - "type": "string", - "description": "The ID of the draft to delete.", - "required": true, - "location": "path" - }, - "userId": { - "type": "string", - "description": "The user's email address. The special value me can be used to indicate the authenticated user.", - "default": "me", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "userId", - "id" - ], - "scopes": [ - "https://mail.google.com/", - "https://www.googleapis.com/auth/gmail.compose", - "https://www.googleapis.com/auth/gmail.modify" - ] - }, - "get": { - "id": "gmail.users.drafts.get", - "path": "{userId}/drafts/{id}", - "httpMethod": "GET", - "description": "Gets the specified draft.", - "parameters": { - "format": { - "type": "string", - "description": "The format to return the draft in.", - "default": "full", - "enum": [ - "full", - "metadata", - "minimal", - "raw" - ], - "enumDescriptions": [ - "", - "", - "", - "" - ], - "location": "query" - }, - "id": { - "type": "string", - "description": "The ID of the draft to retrieve.", - "required": true, - "location": "path" - }, - "userId": { - "type": "string", - "description": "The user's email address. The special value me can be used to indicate the authenticated user.", - "default": "me", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "userId", - "id" - ], - "response": { - "$ref": "Draft" - }, - "scopes": [ - "https://mail.google.com/", - "https://www.googleapis.com/auth/gmail.compose", - "https://www.googleapis.com/auth/gmail.modify", - "https://www.googleapis.com/auth/gmail.readonly" - ] - }, - "list": { - "id": "gmail.users.drafts.list", - "path": "{userId}/drafts", - "httpMethod": "GET", - "description": "Lists the drafts in the user's mailbox.", - "parameters": { - "includeSpamTrash": { - "type": "boolean", - "description": "Include drafts from SPAM and TRASH in the results.", - "default": "false", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "Maximum number of drafts to return.", - "default": "100", - "format": "uint32", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Page token to retrieve a specific page of results in the list.", - "location": "query" - }, - "q": { - "type": "string", - "description": "Only return draft messages matching the specified query. Supports the same query format as the Gmail search box. For example, \"from:someuser@example.com rfc822msgid: is:unread\".", - "location": "query" - }, - "userId": { - "type": "string", - "description": "The user's email address. The special value me can be used to indicate the authenticated user.", - "default": "me", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "userId" - ], - "response": { - "$ref": "ListDraftsResponse" - }, - "scopes": [ - "https://mail.google.com/", - "https://www.googleapis.com/auth/gmail.compose", - "https://www.googleapis.com/auth/gmail.modify", - "https://www.googleapis.com/auth/gmail.readonly" - ] - }, - "send": { - "id": "gmail.users.drafts.send", - "path": "{userId}/drafts/send", - "httpMethod": "POST", - "description": "Sends the specified, existing draft to the recipients in the To, Cc, and Bcc headers.", - "parameters": { - "userId": { - "type": "string", - "description": "The user's email address. The special value me can be used to indicate the authenticated user.", - "default": "me", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "userId" - ], - "request": { - "$ref": "Draft" - }, - "response": { - "$ref": "Message" - }, - "scopes": [ - "https://mail.google.com/", - "https://www.googleapis.com/auth/gmail.compose", - "https://www.googleapis.com/auth/gmail.modify" - ], - "supportsMediaUpload": true, - "mediaUpload": { - "accept": [ - "message/rfc822" - ], - "maxSize": "35MB", - "protocols": { - "simple": { - "multipart": true, - "path": "/upload/gmail/v1/users/{userId}/drafts/send" - }, - "resumable": { - "multipart": true, - "path": "/resumable/upload/gmail/v1/users/{userId}/drafts/send" - } - } - } - }, - "update": { - "id": "gmail.users.drafts.update", - "path": "{userId}/drafts/{id}", - "httpMethod": "PUT", - "description": "Replaces a draft's content.", - "parameters": { - "id": { - "type": "string", - "description": "The ID of the draft to update.", - "required": true, - "location": "path" - }, - "userId": { - "type": "string", - "description": "The user's email address. The special value me can be used to indicate the authenticated user.", - "default": "me", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "userId", - "id" - ], - "request": { - "$ref": "Draft" - }, - "response": { - "$ref": "Draft" - }, - "scopes": [ - "https://mail.google.com/", - "https://www.googleapis.com/auth/gmail.compose", - "https://www.googleapis.com/auth/gmail.modify" - ], - "supportsMediaUpload": true, - "mediaUpload": { - "accept": [ - "message/rfc822" - ], - "maxSize": "35MB", - "protocols": { - "simple": { - "multipart": true, - "path": "/upload/gmail/v1/users/{userId}/drafts/{id}" - }, - "resumable": { - "multipart": true, - "path": "/resumable/upload/gmail/v1/users/{userId}/drafts/{id}" - } - } - } - } - } + }, + "basePath": "/gmail/v1/users/", + "baseUrl": "https://www.googleapis.com/gmail/v1/users/", + "batchPath": "batch/gmail/v1", + "description": "Access Gmail mailboxes including sending user email.", + "discoveryVersion": "v1", + "documentationLink": "https://developers.google.com/gmail/api/", + "etag": "\"-iA1DTNe4s-I6JZXPt1t1Ypy8IU/HU5u3llBS2pcCtNMtKD_RzuFbzU\"", + "icons": { + "x16": "https://www.google.com/images/icons/product/googlemail-16.png", + "x32": "https://www.google.com/images/icons/product/googlemail-32.png" + }, + "id": "gmail:v1", + "kind": "discovery#restDescription", + "name": "gmail", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "alt": { + "default": "json", + "description": "Data format for the response.", + "enum": [ + "json" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json" + ], + "location": "query", + "type": "string" }, - "history": { - "methods": { - "list": { - "id": "gmail.users.history.list", - "path": "{userId}/history", - "httpMethod": "GET", - "description": "Lists the history of all changes to the given mailbox. History results are returned in chronological order (increasing historyId).", - "parameters": { - "historyTypes": { - "type": "string", - "description": "History types to be returned by the function", - "enum": [ - "labelAdded", - "labelRemoved", - "messageAdded", - "messageDeleted" - ], - "enumDescriptions": [ - "", - "", - "", - "" - ], - "repeated": true, - "location": "query" - }, - "labelId": { - "type": "string", - "description": "Only return messages with a label matching the ID.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of history records to return.", - "default": "100", - "format": "uint32", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Page token to retrieve a specific page of results in the list.", - "location": "query" - }, - "startHistoryId": { - "type": "string", - "description": "Required. Returns history records after the specified startHistoryId. The supplied startHistoryId should be obtained from the historyId of a message, thread, or previous list response. History IDs increase chronologically but are not contiguous with random gaps in between valid IDs. Supplying an invalid or out of date startHistoryId typically returns an HTTP 404 error code. A historyId is typically valid for at least a week, but in some rare circumstances may be valid for only a few hours. If you receive an HTTP 404 error response, your application should perform a full sync. If you receive no nextPageToken in the response, there are no updates to retrieve and you can store the returned historyId for a future request.", - "format": "uint64", - "location": "query" - }, - "userId": { - "type": "string", - "description": "The user's email address. The special value me can be used to indicate the authenticated user.", - "default": "me", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "userId" - ], - "response": { - "$ref": "ListHistoryResponse" - }, - "scopes": [ - "https://mail.google.com/", - "https://www.googleapis.com/auth/gmail.metadata", - "https://www.googleapis.com/auth/gmail.modify", - "https://www.googleapis.com/auth/gmail.readonly" - ] - } - } + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "location": "query", + "type": "string" }, - "labels": { - "methods": { - "create": { - "id": "gmail.users.labels.create", - "path": "{userId}/labels", - "httpMethod": "POST", - "description": "Creates a new label.", - "parameters": { - "userId": { - "type": "string", - "description": "The user's email address. The special value me can be used to indicate the authenticated user.", - "default": "me", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "userId" - ], - "request": { - "$ref": "Label" - }, - "response": { - "$ref": "Label" - }, - "scopes": [ - "https://mail.google.com/", - "https://www.googleapis.com/auth/gmail.labels", - "https://www.googleapis.com/auth/gmail.modify" - ] - }, - "delete": { - "id": "gmail.users.labels.delete", - "path": "{userId}/labels/{id}", - "httpMethod": "DELETE", - "description": "Immediately and permanently deletes the specified label and removes it from any messages and threads that it is applied to.", - "parameters": { - "id": { - "type": "string", - "description": "The ID of the label to delete.", - "required": true, - "location": "path" - }, - "userId": { - "type": "string", - "description": "The user's email address. The special value me can be used to indicate the authenticated user.", - "default": "me", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "userId", - "id" - ], - "scopes": [ - "https://mail.google.com/", - "https://www.googleapis.com/auth/gmail.labels", - "https://www.googleapis.com/auth/gmail.modify" - ] - }, - "get": { - "id": "gmail.users.labels.get", - "path": "{userId}/labels/{id}", - "httpMethod": "GET", - "description": "Gets the specified label.", - "parameters": { - "id": { - "type": "string", - "description": "The ID of the label to retrieve.", - "required": true, - "location": "path" - }, - "userId": { - "type": "string", - "description": "The user's email address. The special value me can be used to indicate the authenticated user.", - "default": "me", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "userId", - "id" - ], - "response": { - "$ref": "Label" - }, - "scopes": [ - "https://mail.google.com/", - "https://www.googleapis.com/auth/gmail.labels", - "https://www.googleapis.com/auth/gmail.metadata", - "https://www.googleapis.com/auth/gmail.modify", - "https://www.googleapis.com/auth/gmail.readonly" - ] - }, - "list": { - "id": "gmail.users.labels.list", - "path": "{userId}/labels", - "httpMethod": "GET", - "description": "Lists all labels in the user's mailbox.", - "parameters": { - "userId": { - "type": "string", - "description": "The user's email address. The special value me can be used to indicate the authenticated user.", - "default": "me", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "userId" - ], - "response": { - "$ref": "ListLabelsResponse" - }, - "scopes": [ - "https://mail.google.com/", - "https://www.googleapis.com/auth/gmail.labels", - "https://www.googleapis.com/auth/gmail.metadata", - "https://www.googleapis.com/auth/gmail.modify", - "https://www.googleapis.com/auth/gmail.readonly" - ] - }, - "patch": { - "id": "gmail.users.labels.patch", - "path": "{userId}/labels/{id}", - "httpMethod": "PATCH", - "description": "Updates the specified label. This method supports patch semantics.", - "parameters": { - "id": { - "type": "string", - "description": "The ID of the label to update.", - "required": true, - "location": "path" - }, - "userId": { - "type": "string", - "description": "The user's email address. The special value me can be used to indicate the authenticated user.", - "default": "me", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "userId", - "id" - ], - "request": { - "$ref": "Label" - }, - "response": { - "$ref": "Label" - }, - "scopes": [ - "https://mail.google.com/", - "https://www.googleapis.com/auth/gmail.labels", - "https://www.googleapis.com/auth/gmail.modify" - ] - }, - "update": { - "id": "gmail.users.labels.update", - "path": "{userId}/labels/{id}", - "httpMethod": "PUT", - "description": "Updates the specified label.", - "parameters": { - "id": { - "type": "string", - "description": "The ID of the label to update.", - "required": true, - "location": "path" - }, - "userId": { - "type": "string", - "description": "The user's email address. The special value me can be used to indicate the authenticated user.", - "default": "me", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "userId", - "id" - ], - "request": { - "$ref": "Label" - }, - "response": { - "$ref": "Label" - }, - "scopes": [ - "https://mail.google.com/", - "https://www.googleapis.com/auth/gmail.labels", - "https://www.googleapis.com/auth/gmail.modify" - ] - } - } + "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" }, - "messages": { - "methods": { - "batchDelete": { - "id": "gmail.users.messages.batchDelete", - "path": "{userId}/messages/batchDelete", - "httpMethod": "POST", - "description": "Deletes many messages by message ID. Provides no guarantees that messages were not already deleted or even existed at all.", - "parameters": { - "userId": { - "type": "string", - "description": "The user's email address. The special value me can be used to indicate the authenticated user.", - "default": "me", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "userId" - ], - "request": { - "$ref": "BatchDeleteMessagesRequest" - }, - "scopes": [ - "https://mail.google.com/" - ] - }, - "batchModify": { - "id": "gmail.users.messages.batchModify", - "path": "{userId}/messages/batchModify", - "httpMethod": "POST", - "description": "Modifies the labels on the specified messages.", - "parameters": { - "userId": { - "type": "string", - "description": "The user's email address. The special value me can be used to indicate the authenticated user.", - "default": "me", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "userId" - ], - "request": { - "$ref": "BatchModifyMessagesRequest" - }, - "scopes": [ - "https://mail.google.com/", - "https://www.googleapis.com/auth/gmail.modify" - ] - }, - "delete": { - "id": "gmail.users.messages.delete", - "path": "{userId}/messages/{id}", - "httpMethod": "DELETE", - "description": "Immediately and permanently deletes the specified message. This operation cannot be undone. Prefer messages.trash instead.", - "parameters": { - "id": { - "type": "string", - "description": "The ID of the message to delete.", - "required": true, - "location": "path" + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", + "location": "query", + "type": "string" + }, + "userIp": { + "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", + "location": "query", + "type": "string" + } + }, + "protocol": "rest", + "resources": { + "users": { + "methods": { + "getProfile": { + "description": "Gets the current user's Gmail profile.", + "httpMethod": "GET", + "id": "gmail.users.getProfile", + "parameterOrder": [ + "userId" + ], + "parameters": { + "userId": { + "default": "me", + "description": "The user's email address. The special value me can be used to indicate the authenticated user.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{userId}/profile", + "response": { + "$ref": "Profile" + }, + "scopes": [ + "https://mail.google.com/", + "https://www.googleapis.com/auth/gmail.compose", + "https://www.googleapis.com/auth/gmail.metadata", + "https://www.googleapis.com/auth/gmail.modify", + "https://www.googleapis.com/auth/gmail.readonly" + ] }, - "userId": { - "type": "string", - "description": "The user's email address. The special value me can be used to indicate the authenticated user.", - "default": "me", - "required": true, - "location": "path" + "stop": { + "description": "Stop receiving push notifications for the given user mailbox.", + "httpMethod": "POST", + "id": "gmail.users.stop", + "parameterOrder": [ + "userId" + ], + "parameters": { + "userId": { + "default": "me", + "description": "The user's email address. The special value me can be used to indicate the authenticated user.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{userId}/stop", + "scopes": [ + "https://mail.google.com/", + "https://www.googleapis.com/auth/gmail.metadata", + "https://www.googleapis.com/auth/gmail.modify", + "https://www.googleapis.com/auth/gmail.readonly" + ] + }, + "watch": { + "description": "Set up or update a push notification watch on the given user mailbox.", + "httpMethod": "POST", + "id": "gmail.users.watch", + "parameterOrder": [ + "userId" + ], + "parameters": { + "userId": { + "default": "me", + "description": "The user's email address. The special value me can be used to indicate the authenticated user.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{userId}/watch", + "request": { + "$ref": "WatchRequest" + }, + "response": { + "$ref": "WatchResponse" + }, + "scopes": [ + "https://mail.google.com/", + "https://www.googleapis.com/auth/gmail.metadata", + "https://www.googleapis.com/auth/gmail.modify", + "https://www.googleapis.com/auth/gmail.readonly" + ] } - }, - "parameterOrder": [ - "userId", - "id" - ], - "scopes": [ - "https://mail.google.com/" - ] }, - "get": { - "id": "gmail.users.messages.get", - "path": "{userId}/messages/{id}", - "httpMethod": "GET", - "description": "Gets the specified message.", - "parameters": { - "format": { - "type": "string", - "description": "The format to return the message in.", - "default": "full", - "enum": [ - "full", - "metadata", - "minimal", - "raw" - ], - "enumDescriptions": [ - "", - "", - "", - "" - ], - "location": "query" + "resources": { + "drafts": { + "methods": { + "create": { + "description": "Creates a new draft with the DRAFT label.", + "httpMethod": "POST", + "id": "gmail.users.drafts.create", + "mediaUpload": { + "accept": [ + "message/rfc822" + ], + "maxSize": "35MB", + "protocols": { + "resumable": { + "multipart": true, + "path": "/resumable/upload/gmail/v1/users/{userId}/drafts" + }, + "simple": { + "multipart": true, + "path": "/upload/gmail/v1/users/{userId}/drafts" + } + } + }, + "parameterOrder": [ + "userId" + ], + "parameters": { + "userId": { + "default": "me", + "description": "The user's email address. The special value me can be used to indicate the authenticated user.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{userId}/drafts", + "request": { + "$ref": "Draft" + }, + "response": { + "$ref": "Draft" + }, + "scopes": [ + "https://mail.google.com/", + "https://www.googleapis.com/auth/gmail.compose", + "https://www.googleapis.com/auth/gmail.modify" + ], + "supportsMediaUpload": true + }, + "delete": { + "description": "Immediately and permanently deletes the specified draft. Does not simply trash it.", + "httpMethod": "DELETE", + "id": "gmail.users.drafts.delete", + "parameterOrder": [ + "userId", + "id" + ], + "parameters": { + "id": { + "description": "The ID of the draft to delete.", + "location": "path", + "required": true, + "type": "string" + }, + "userId": { + "default": "me", + "description": "The user's email address. The special value me can be used to indicate the authenticated user.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{userId}/drafts/{id}", + "scopes": [ + "https://mail.google.com/", + "https://www.googleapis.com/auth/gmail.compose", + "https://www.googleapis.com/auth/gmail.modify" + ] + }, + "get": { + "description": "Gets the specified draft.", + "httpMethod": "GET", + "id": "gmail.users.drafts.get", + "parameterOrder": [ + "userId", + "id" + ], + "parameters": { + "format": { + "default": "full", + "description": "The format to return the draft in.", + "enum": [ + "full", + "metadata", + "minimal", + "raw" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ], + "location": "query", + "type": "string" + }, + "id": { + "description": "The ID of the draft to retrieve.", + "location": "path", + "required": true, + "type": "string" + }, + "userId": { + "default": "me", + "description": "The user's email address. The special value me can be used to indicate the authenticated user.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{userId}/drafts/{id}", + "response": { + "$ref": "Draft" + }, + "scopes": [ + "https://mail.google.com/", + "https://www.googleapis.com/auth/gmail.compose", + "https://www.googleapis.com/auth/gmail.modify", + "https://www.googleapis.com/auth/gmail.readonly" + ] + }, + "list": { + "description": "Lists the drafts in the user's mailbox.", + "httpMethod": "GET", + "id": "gmail.users.drafts.list", + "parameterOrder": [ + "userId" + ], + "parameters": { + "includeSpamTrash": { + "default": "false", + "description": "Include drafts from SPAM and TRASH in the results.", + "location": "query", + "type": "boolean" + }, + "maxResults": { + "default": "100", + "description": "Maximum number of drafts to return.", + "format": "uint32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Page token to retrieve a specific page of results in the list.", + "location": "query", + "type": "string" + }, + "q": { + "description": "Only return draft messages matching the specified query. Supports the same query format as the Gmail search box. For example, \"from:someuser@example.com rfc822msgid: is:unread\".", + "location": "query", + "type": "string" + }, + "userId": { + "default": "me", + "description": "The user's email address. The special value me can be used to indicate the authenticated user.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{userId}/drafts", + "response": { + "$ref": "ListDraftsResponse" + }, + "scopes": [ + "https://mail.google.com/", + "https://www.googleapis.com/auth/gmail.compose", + "https://www.googleapis.com/auth/gmail.modify", + "https://www.googleapis.com/auth/gmail.readonly" + ] + }, + "send": { + "description": "Sends the specified, existing draft to the recipients in the To, Cc, and Bcc headers.", + "httpMethod": "POST", + "id": "gmail.users.drafts.send", + "mediaUpload": { + "accept": [ + "message/rfc822" + ], + "maxSize": "35MB", + "protocols": { + "resumable": { + "multipart": true, + "path": "/resumable/upload/gmail/v1/users/{userId}/drafts/send" + }, + "simple": { + "multipart": true, + "path": "/upload/gmail/v1/users/{userId}/drafts/send" + } + } + }, + "parameterOrder": [ + "userId" + ], + "parameters": { + "userId": { + "default": "me", + "description": "The user's email address. The special value me can be used to indicate the authenticated user.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{userId}/drafts/send", + "request": { + "$ref": "Draft" + }, + "response": { + "$ref": "Message" + }, + "scopes": [ + "https://mail.google.com/", + "https://www.googleapis.com/auth/gmail.compose", + "https://www.googleapis.com/auth/gmail.modify" + ], + "supportsMediaUpload": true + }, + "update": { + "description": "Replaces a draft's content.", + "httpMethod": "PUT", + "id": "gmail.users.drafts.update", + "mediaUpload": { + "accept": [ + "message/rfc822" + ], + "maxSize": "35MB", + "protocols": { + "resumable": { + "multipart": true, + "path": "/resumable/upload/gmail/v1/users/{userId}/drafts/{id}" + }, + "simple": { + "multipart": true, + "path": "/upload/gmail/v1/users/{userId}/drafts/{id}" + } + } + }, + "parameterOrder": [ + "userId", + "id" + ], + "parameters": { + "id": { + "description": "The ID of the draft to update.", + "location": "path", + "required": true, + "type": "string" + }, + "userId": { + "default": "me", + "description": "The user's email address. The special value me can be used to indicate the authenticated user.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{userId}/drafts/{id}", + "request": { + "$ref": "Draft" + }, + "response": { + "$ref": "Draft" + }, + "scopes": [ + "https://mail.google.com/", + "https://www.googleapis.com/auth/gmail.compose", + "https://www.googleapis.com/auth/gmail.modify" + ], + "supportsMediaUpload": true + } + } + }, + "history": { + "methods": { + "list": { + "description": "Lists the history of all changes to the given mailbox. History results are returned in chronological order (increasing historyId).", + "httpMethod": "GET", + "id": "gmail.users.history.list", + "parameterOrder": [ + "userId" + ], + "parameters": { + "historyTypes": { + "description": "History types to be returned by the function", + "enum": [ + "labelAdded", + "labelRemoved", + "messageAdded", + "messageDeleted" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ], + "location": "query", + "repeated": true, + "type": "string" + }, + "labelId": { + "description": "Only return messages with a label matching the ID.", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "100", + "description": "The maximum number of history records to return.", + "format": "uint32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Page token to retrieve a specific page of results in the list.", + "location": "query", + "type": "string" + }, + "startHistoryId": { + "description": "Required. Returns history records after the specified startHistoryId. The supplied startHistoryId should be obtained from the historyId of a message, thread, or previous list response. History IDs increase chronologically but are not contiguous with random gaps in between valid IDs. Supplying an invalid or out of date startHistoryId typically returns an HTTP 404 error code. A historyId is typically valid for at least a week, but in some rare circumstances may be valid for only a few hours. If you receive an HTTP 404 error response, your application should perform a full sync. If you receive no nextPageToken in the response, there are no updates to retrieve and you can store the returned historyId for a future request.", + "format": "uint64", + "location": "query", + "type": "string" + }, + "userId": { + "default": "me", + "description": "The user's email address. The special value me can be used to indicate the authenticated user.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{userId}/history", + "response": { + "$ref": "ListHistoryResponse" + }, + "scopes": [ + "https://mail.google.com/", + "https://www.googleapis.com/auth/gmail.metadata", + "https://www.googleapis.com/auth/gmail.modify", + "https://www.googleapis.com/auth/gmail.readonly" + ] + } + } + }, + "labels": { + "methods": { + "create": { + "description": "Creates a new label.", + "httpMethod": "POST", + "id": "gmail.users.labels.create", + "parameterOrder": [ + "userId" + ], + "parameters": { + "userId": { + "default": "me", + "description": "The user's email address. The special value me can be used to indicate the authenticated user.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{userId}/labels", + "request": { + "$ref": "Label" + }, + "response": { + "$ref": "Label" + }, + "scopes": [ + "https://mail.google.com/", + "https://www.googleapis.com/auth/gmail.labels", + "https://www.googleapis.com/auth/gmail.modify" + ] + }, + "delete": { + "description": "Immediately and permanently deletes the specified label and removes it from any messages and threads that it is applied to.", + "httpMethod": "DELETE", + "id": "gmail.users.labels.delete", + "parameterOrder": [ + "userId", + "id" + ], + "parameters": { + "id": { + "description": "The ID of the label to delete.", + "location": "path", + "required": true, + "type": "string" + }, + "userId": { + "default": "me", + "description": "The user's email address. The special value me can be used to indicate the authenticated user.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{userId}/labels/{id}", + "scopes": [ + "https://mail.google.com/", + "https://www.googleapis.com/auth/gmail.labels", + "https://www.googleapis.com/auth/gmail.modify" + ] + }, + "get": { + "description": "Gets the specified label.", + "httpMethod": "GET", + "id": "gmail.users.labels.get", + "parameterOrder": [ + "userId", + "id" + ], + "parameters": { + "id": { + "description": "The ID of the label to retrieve.", + "location": "path", + "required": true, + "type": "string" + }, + "userId": { + "default": "me", + "description": "The user's email address. The special value me can be used to indicate the authenticated user.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{userId}/labels/{id}", + "response": { + "$ref": "Label" + }, + "scopes": [ + "https://mail.google.com/", + "https://www.googleapis.com/auth/gmail.labels", + "https://www.googleapis.com/auth/gmail.metadata", + "https://www.googleapis.com/auth/gmail.modify", + "https://www.googleapis.com/auth/gmail.readonly" + ] + }, + "list": { + "description": "Lists all labels in the user's mailbox.", + "httpMethod": "GET", + "id": "gmail.users.labels.list", + "parameterOrder": [ + "userId" + ], + "parameters": { + "userId": { + "default": "me", + "description": "The user's email address. The special value me can be used to indicate the authenticated user.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{userId}/labels", + "response": { + "$ref": "ListLabelsResponse" + }, + "scopes": [ + "https://mail.google.com/", + "https://www.googleapis.com/auth/gmail.labels", + "https://www.googleapis.com/auth/gmail.metadata", + "https://www.googleapis.com/auth/gmail.modify", + "https://www.googleapis.com/auth/gmail.readonly" + ] + }, + "patch": { + "description": "Updates the specified label. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "gmail.users.labels.patch", + "parameterOrder": [ + "userId", + "id" + ], + "parameters": { + "id": { + "description": "The ID of the label to update.", + "location": "path", + "required": true, + "type": "string" + }, + "userId": { + "default": "me", + "description": "The user's email address. The special value me can be used to indicate the authenticated user.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{userId}/labels/{id}", + "request": { + "$ref": "Label" + }, + "response": { + "$ref": "Label" + }, + "scopes": [ + "https://mail.google.com/", + "https://www.googleapis.com/auth/gmail.labels", + "https://www.googleapis.com/auth/gmail.modify" + ] + }, + "update": { + "description": "Updates the specified label.", + "httpMethod": "PUT", + "id": "gmail.users.labels.update", + "parameterOrder": [ + "userId", + "id" + ], + "parameters": { + "id": { + "description": "The ID of the label to update.", + "location": "path", + "required": true, + "type": "string" + }, + "userId": { + "default": "me", + "description": "The user's email address. The special value me can be used to indicate the authenticated user.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{userId}/labels/{id}", + "request": { + "$ref": "Label" + }, + "response": { + "$ref": "Label" + }, + "scopes": [ + "https://mail.google.com/", + "https://www.googleapis.com/auth/gmail.labels", + "https://www.googleapis.com/auth/gmail.modify" + ] + } + } + }, + "messages": { + "methods": { + "batchDelete": { + "description": "Deletes many messages by message ID. Provides no guarantees that messages were not already deleted or even existed at all.", + "httpMethod": "POST", + "id": "gmail.users.messages.batchDelete", + "parameterOrder": [ + "userId" + ], + "parameters": { + "userId": { + "default": "me", + "description": "The user's email address. The special value me can be used to indicate the authenticated user.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{userId}/messages/batchDelete", + "request": { + "$ref": "BatchDeleteMessagesRequest" + }, + "scopes": [ + "https://mail.google.com/" + ] + }, + "batchModify": { + "description": "Modifies the labels on the specified messages.", + "httpMethod": "POST", + "id": "gmail.users.messages.batchModify", + "parameterOrder": [ + "userId" + ], + "parameters": { + "userId": { + "default": "me", + "description": "The user's email address. The special value me can be used to indicate the authenticated user.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{userId}/messages/batchModify", + "request": { + "$ref": "BatchModifyMessagesRequest" + }, + "scopes": [ + "https://mail.google.com/", + "https://www.googleapis.com/auth/gmail.modify" + ] + }, + "delete": { + "description": "Immediately and permanently deletes the specified message. This operation cannot be undone. Prefer messages.trash instead.", + "httpMethod": "DELETE", + "id": "gmail.users.messages.delete", + "parameterOrder": [ + "userId", + "id" + ], + "parameters": { + "id": { + "description": "The ID of the message to delete.", + "location": "path", + "required": true, + "type": "string" + }, + "userId": { + "default": "me", + "description": "The user's email address. The special value me can be used to indicate the authenticated user.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{userId}/messages/{id}", + "scopes": [ + "https://mail.google.com/" + ] + }, + "get": { + "description": "Gets the specified message.", + "httpMethod": "GET", + "id": "gmail.users.messages.get", + "parameterOrder": [ + "userId", + "id" + ], + "parameters": { + "format": { + "default": "full", + "description": "The format to return the message in.", + "enum": [ + "full", + "metadata", + "minimal", + "raw" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ], + "location": "query", + "type": "string" + }, + "id": { + "description": "The ID of the message to retrieve.", + "location": "path", + "required": true, + "type": "string" + }, + "metadataHeaders": { + "description": "When given and format is METADATA, only include headers specified.", + "location": "query", + "repeated": true, + "type": "string" + }, + "userId": { + "default": "me", + "description": "The user's email address. The special value me can be used to indicate the authenticated user.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{userId}/messages/{id}", + "response": { + "$ref": "Message" + }, + "scopes": [ + "https://mail.google.com/", + "https://www.googleapis.com/auth/gmail.metadata", + "https://www.googleapis.com/auth/gmail.modify", + "https://www.googleapis.com/auth/gmail.readonly" + ] + }, + "import": { + "description": "Imports a message into only this user's mailbox, with standard email delivery scanning and classification similar to receiving via SMTP. Does not send a message.", + "httpMethod": "POST", + "id": "gmail.users.messages.import", + "mediaUpload": { + "accept": [ + "message/rfc822" + ], + "maxSize": "50MB", + "protocols": { + "resumable": { + "multipart": true, + "path": "/resumable/upload/gmail/v1/users/{userId}/messages/import" + }, + "simple": { + "multipart": true, + "path": "/upload/gmail/v1/users/{userId}/messages/import" + } + } + }, + "parameterOrder": [ + "userId" + ], + "parameters": { + "deleted": { + "default": "false", + "description": "Mark the email as permanently deleted (not TRASH) and only visible in Google Vault to a Vault administrator. Only used for G Suite accounts.", + "location": "query", + "type": "boolean" + }, + "internalDateSource": { + "default": "dateHeader", + "description": "Source for Gmail's internal date of the message.", + "enum": [ + "dateHeader", + "receivedTime" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + }, + "neverMarkSpam": { + "default": "false", + "description": "Ignore the Gmail spam classifier decision and never mark this email as SPAM in the mailbox.", + "location": "query", + "type": "boolean" + }, + "processForCalendar": { + "default": "false", + "description": "Process calendar invites in the email and add any extracted meetings to the Google Calendar for this user.", + "location": "query", + "type": "boolean" + }, + "userId": { + "default": "me", + "description": "The user's email address. The special value me can be used to indicate the authenticated user.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{userId}/messages/import", + "request": { + "$ref": "Message" + }, + "response": { + "$ref": "Message" + }, + "scopes": [ + "https://mail.google.com/", + "https://www.googleapis.com/auth/gmail.insert", + "https://www.googleapis.com/auth/gmail.modify" + ], + "supportsMediaUpload": true + }, + "insert": { + "description": "Directly inserts a message into only this user's mailbox similar to IMAP APPEND, bypassing most scanning and classification. Does not send a message.", + "httpMethod": "POST", + "id": "gmail.users.messages.insert", + "mediaUpload": { + "accept": [ + "message/rfc822" + ], + "maxSize": "50MB", + "protocols": { + "resumable": { + "multipart": true, + "path": "/resumable/upload/gmail/v1/users/{userId}/messages" + }, + "simple": { + "multipart": true, + "path": "/upload/gmail/v1/users/{userId}/messages" + } + } + }, + "parameterOrder": [ + "userId" + ], + "parameters": { + "deleted": { + "default": "false", + "description": "Mark the email as permanently deleted (not TRASH) and only visible in Google Vault to a Vault administrator. Only used for G Suite accounts.", + "location": "query", + "type": "boolean" + }, + "internalDateSource": { + "default": "receivedTime", + "description": "Source for Gmail's internal date of the message.", + "enum": [ + "dateHeader", + "receivedTime" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + }, + "userId": { + "default": "me", + "description": "The user's email address. The special value me can be used to indicate the authenticated user.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{userId}/messages", + "request": { + "$ref": "Message" + }, + "response": { + "$ref": "Message" + }, + "scopes": [ + "https://mail.google.com/", + "https://www.googleapis.com/auth/gmail.insert", + "https://www.googleapis.com/auth/gmail.modify" + ], + "supportsMediaUpload": true + }, + "list": { + "description": "Lists the messages in the user's mailbox.", + "httpMethod": "GET", + "id": "gmail.users.messages.list", + "parameterOrder": [ + "userId" + ], + "parameters": { + "includeSpamTrash": { + "default": "false", + "description": "Include messages from SPAM and TRASH in the results.", + "location": "query", + "type": "boolean" + }, + "labelIds": { + "description": "Only return messages with labels that match all of the specified label IDs.", + "location": "query", + "repeated": true, + "type": "string" + }, + "maxResults": { + "default": "100", + "description": "Maximum number of messages to return.", + "format": "uint32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Page token to retrieve a specific page of results in the list.", + "location": "query", + "type": "string" + }, + "q": { + "description": "Only return messages matching the specified query. Supports the same query format as the Gmail search box. For example, \"from:someuser@example.com rfc822msgid:\u003csomemsgid@example.com\u003e is:unread\". Parameter cannot be used when accessing the api using the gmail.metadata scope.", + "location": "query", + "type": "string" + }, + "userId": { + "default": "me", + "description": "The user's email address. The special value me can be used to indicate the authenticated user.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{userId}/messages", + "response": { + "$ref": "ListMessagesResponse" + }, + "scopes": [ + "https://mail.google.com/", + "https://www.googleapis.com/auth/gmail.metadata", + "https://www.googleapis.com/auth/gmail.modify", + "https://www.googleapis.com/auth/gmail.readonly" + ] + }, + "modify": { + "description": "Modifies the labels on the specified message.", + "httpMethod": "POST", + "id": "gmail.users.messages.modify", + "parameterOrder": [ + "userId", + "id" + ], + "parameters": { + "id": { + "description": "The ID of the message to modify.", + "location": "path", + "required": true, + "type": "string" + }, + "userId": { + "default": "me", + "description": "The user's email address. The special value me can be used to indicate the authenticated user.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{userId}/messages/{id}/modify", + "request": { + "$ref": "ModifyMessageRequest" + }, + "response": { + "$ref": "Message" + }, + "scopes": [ + "https://mail.google.com/", + "https://www.googleapis.com/auth/gmail.modify" + ] + }, + "send": { + "description": "Sends the specified message to the recipients in the To, Cc, and Bcc headers.", + "httpMethod": "POST", + "id": "gmail.users.messages.send", + "mediaUpload": { + "accept": [ + "message/rfc822" + ], + "maxSize": "35MB", + "protocols": { + "resumable": { + "multipart": true, + "path": "/resumable/upload/gmail/v1/users/{userId}/messages/send" + }, + "simple": { + "multipart": true, + "path": "/upload/gmail/v1/users/{userId}/messages/send" + } + } + }, + "parameterOrder": [ + "userId" + ], + "parameters": { + "userId": { + "default": "me", + "description": "The user's email address. The special value me can be used to indicate the authenticated user.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{userId}/messages/send", + "request": { + "$ref": "Message" + }, + "response": { + "$ref": "Message" + }, + "scopes": [ + "https://mail.google.com/", + "https://www.googleapis.com/auth/gmail.compose", + "https://www.googleapis.com/auth/gmail.modify", + "https://www.googleapis.com/auth/gmail.send" + ], + "supportsMediaUpload": true + }, + "trash": { + "description": "Moves the specified message to the trash.", + "httpMethod": "POST", + "id": "gmail.users.messages.trash", + "parameterOrder": [ + "userId", + "id" + ], + "parameters": { + "id": { + "description": "The ID of the message to Trash.", + "location": "path", + "required": true, + "type": "string" + }, + "userId": { + "default": "me", + "description": "The user's email address. The special value me can be used to indicate the authenticated user.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{userId}/messages/{id}/trash", + "response": { + "$ref": "Message" + }, + "scopes": [ + "https://mail.google.com/", + "https://www.googleapis.com/auth/gmail.modify" + ] + }, + "untrash": { + "description": "Removes the specified message from the trash.", + "httpMethod": "POST", + "id": "gmail.users.messages.untrash", + "parameterOrder": [ + "userId", + "id" + ], + "parameters": { + "id": { + "description": "The ID of the message to remove from Trash.", + "location": "path", + "required": true, + "type": "string" + }, + "userId": { + "default": "me", + "description": "The user's email address. The special value me can be used to indicate the authenticated user.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{userId}/messages/{id}/untrash", + "response": { + "$ref": "Message" + }, + "scopes": [ + "https://mail.google.com/", + "https://www.googleapis.com/auth/gmail.modify" + ] + } + }, + "resources": { + "attachments": { + "methods": { + "get": { + "description": "Gets the specified message attachment.", + "httpMethod": "GET", + "id": "gmail.users.messages.attachments.get", + "parameterOrder": [ + "userId", + "messageId", + "id" + ], + "parameters": { + "id": { + "description": "The ID of the attachment.", + "location": "path", + "required": true, + "type": "string" + }, + "messageId": { + "description": "The ID of the message containing the attachment.", + "location": "path", + "required": true, + "type": "string" + }, + "userId": { + "default": "me", + "description": "The user's email address. The special value me can be used to indicate the authenticated user.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{userId}/messages/{messageId}/attachments/{id}", + "response": { + "$ref": "MessagePartBody" + }, + "scopes": [ + "https://mail.google.com/", + "https://www.googleapis.com/auth/gmail.modify", + "https://www.googleapis.com/auth/gmail.readonly" + ] + } + } + } + } + }, + "settings": { + "methods": { + "getAutoForwarding": { + "description": "Gets the auto-forwarding setting for the specified account.", + "httpMethod": "GET", + "id": "gmail.users.settings.getAutoForwarding", + "parameterOrder": [ + "userId" + ], + "parameters": { + "userId": { + "default": "me", + "description": "User's email address. The special value \"me\" can be used to indicate the authenticated user.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{userId}/settings/autoForwarding", + "response": { + "$ref": "AutoForwarding" + }, + "scopes": [ + "https://mail.google.com/", + "https://www.googleapis.com/auth/gmail.modify", + "https://www.googleapis.com/auth/gmail.readonly", + "https://www.googleapis.com/auth/gmail.settings.basic" + ] + }, + "getImap": { + "description": "Gets IMAP settings.", + "httpMethod": "GET", + "id": "gmail.users.settings.getImap", + "parameterOrder": [ + "userId" + ], + "parameters": { + "userId": { + "default": "me", + "description": "User's email address. The special value \"me\" can be used to indicate the authenticated user.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{userId}/settings/imap", + "response": { + "$ref": "ImapSettings" + }, + "scopes": [ + "https://mail.google.com/", + "https://www.googleapis.com/auth/gmail.modify", + "https://www.googleapis.com/auth/gmail.readonly", + "https://www.googleapis.com/auth/gmail.settings.basic" + ] + }, + "getPop": { + "description": "Gets POP settings.", + "httpMethod": "GET", + "id": "gmail.users.settings.getPop", + "parameterOrder": [ + "userId" + ], + "parameters": { + "userId": { + "default": "me", + "description": "User's email address. The special value \"me\" can be used to indicate the authenticated user.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{userId}/settings/pop", + "response": { + "$ref": "PopSettings" + }, + "scopes": [ + "https://mail.google.com/", + "https://www.googleapis.com/auth/gmail.modify", + "https://www.googleapis.com/auth/gmail.readonly", + "https://www.googleapis.com/auth/gmail.settings.basic" + ] + }, + "getVacation": { + "description": "Gets vacation responder settings.", + "httpMethod": "GET", + "id": "gmail.users.settings.getVacation", + "parameterOrder": [ + "userId" + ], + "parameters": { + "userId": { + "default": "me", + "description": "User's email address. The special value \"me\" can be used to indicate the authenticated user.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{userId}/settings/vacation", + "response": { + "$ref": "VacationSettings" + }, + "scopes": [ + "https://mail.google.com/", + "https://www.googleapis.com/auth/gmail.modify", + "https://www.googleapis.com/auth/gmail.readonly", + "https://www.googleapis.com/auth/gmail.settings.basic" + ] + }, + "updateAutoForwarding": { + "description": "Updates the auto-forwarding setting for the specified account. A verified forwarding address must be specified when auto-forwarding is enabled.\n\nThis method is only available to service account clients that have been delegated domain-wide authority.", + "httpMethod": "PUT", + "id": "gmail.users.settings.updateAutoForwarding", + "parameterOrder": [ + "userId" + ], + "parameters": { + "userId": { + "default": "me", + "description": "User's email address. The special value \"me\" can be used to indicate the authenticated user.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{userId}/settings/autoForwarding", + "request": { + "$ref": "AutoForwarding" + }, + "response": { + "$ref": "AutoForwarding" + }, + "scopes": [ + "https://www.googleapis.com/auth/gmail.settings.sharing" + ] + }, + "updateImap": { + "description": "Updates IMAP settings.", + "httpMethod": "PUT", + "id": "gmail.users.settings.updateImap", + "parameterOrder": [ + "userId" + ], + "parameters": { + "userId": { + "default": "me", + "description": "User's email address. The special value \"me\" can be used to indicate the authenticated user.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{userId}/settings/imap", + "request": { + "$ref": "ImapSettings" + }, + "response": { + "$ref": "ImapSettings" + }, + "scopes": [ + "https://www.googleapis.com/auth/gmail.settings.basic" + ] + }, + "updatePop": { + "description": "Updates POP settings.", + "httpMethod": "PUT", + "id": "gmail.users.settings.updatePop", + "parameterOrder": [ + "userId" + ], + "parameters": { + "userId": { + "default": "me", + "description": "User's email address. The special value \"me\" can be used to indicate the authenticated user.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{userId}/settings/pop", + "request": { + "$ref": "PopSettings" + }, + "response": { + "$ref": "PopSettings" + }, + "scopes": [ + "https://www.googleapis.com/auth/gmail.settings.basic" + ] + }, + "updateVacation": { + "description": "Updates vacation responder settings.", + "httpMethod": "PUT", + "id": "gmail.users.settings.updateVacation", + "parameterOrder": [ + "userId" + ], + "parameters": { + "userId": { + "default": "me", + "description": "User's email address. The special value \"me\" can be used to indicate the authenticated user.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{userId}/settings/vacation", + "request": { + "$ref": "VacationSettings" + }, + "response": { + "$ref": "VacationSettings" + }, + "scopes": [ + "https://www.googleapis.com/auth/gmail.settings.basic" + ] + } + }, + "resources": { + "filters": { + "methods": { + "create": { + "description": "Creates a filter.", + "httpMethod": "POST", + "id": "gmail.users.settings.filters.create", + "parameterOrder": [ + "userId" + ], + "parameters": { + "userId": { + "default": "me", + "description": "User's email address. The special value \"me\" can be used to indicate the authenticated user.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{userId}/settings/filters", + "request": { + "$ref": "Filter" + }, + "response": { + "$ref": "Filter" + }, + "scopes": [ + "https://www.googleapis.com/auth/gmail.settings.basic" + ] + }, + "delete": { + "description": "Deletes a filter.", + "httpMethod": "DELETE", + "id": "gmail.users.settings.filters.delete", + "parameterOrder": [ + "userId", + "id" + ], + "parameters": { + "id": { + "description": "The ID of the filter to be deleted.", + "location": "path", + "required": true, + "type": "string" + }, + "userId": { + "default": "me", + "description": "User's email address. The special value \"me\" can be used to indicate the authenticated user.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{userId}/settings/filters/{id}", + "scopes": [ + "https://www.googleapis.com/auth/gmail.settings.basic" + ] + }, + "get": { + "description": "Gets a filter.", + "httpMethod": "GET", + "id": "gmail.users.settings.filters.get", + "parameterOrder": [ + "userId", + "id" + ], + "parameters": { + "id": { + "description": "The ID of the filter to be fetched.", + "location": "path", + "required": true, + "type": "string" + }, + "userId": { + "default": "me", + "description": "User's email address. The special value \"me\" can be used to indicate the authenticated user.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{userId}/settings/filters/{id}", + "response": { + "$ref": "Filter" + }, + "scopes": [ + "https://mail.google.com/", + "https://www.googleapis.com/auth/gmail.modify", + "https://www.googleapis.com/auth/gmail.readonly", + "https://www.googleapis.com/auth/gmail.settings.basic" + ] + }, + "list": { + "description": "Lists the message filters of a Gmail user.", + "httpMethod": "GET", + "id": "gmail.users.settings.filters.list", + "parameterOrder": [ + "userId" + ], + "parameters": { + "userId": { + "default": "me", + "description": "User's email address. The special value \"me\" can be used to indicate the authenticated user.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{userId}/settings/filters", + "response": { + "$ref": "ListFiltersResponse" + }, + "scopes": [ + "https://mail.google.com/", + "https://www.googleapis.com/auth/gmail.modify", + "https://www.googleapis.com/auth/gmail.readonly", + "https://www.googleapis.com/auth/gmail.settings.basic" + ] + } + } + }, + "forwardingAddresses": { + "methods": { + "create": { + "description": "Creates a forwarding address. If ownership verification is required, a message will be sent to the recipient and the resource's verification status will be set to pending; otherwise, the resource will be created with verification status set to accepted.\n\nThis method is only available to service account clients that have been delegated domain-wide authority.", + "httpMethod": "POST", + "id": "gmail.users.settings.forwardingAddresses.create", + "parameterOrder": [ + "userId" + ], + "parameters": { + "userId": { + "default": "me", + "description": "User's email address. The special value \"me\" can be used to indicate the authenticated user.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{userId}/settings/forwardingAddresses", + "request": { + "$ref": "ForwardingAddress" + }, + "response": { + "$ref": "ForwardingAddress" + }, + "scopes": [ + "https://www.googleapis.com/auth/gmail.settings.sharing" + ] + }, + "delete": { + "description": "Deletes the specified forwarding address and revokes any verification that may have been required.\n\nThis method is only available to service account clients that have been delegated domain-wide authority.", + "httpMethod": "DELETE", + "id": "gmail.users.settings.forwardingAddresses.delete", + "parameterOrder": [ + "userId", + "forwardingEmail" + ], + "parameters": { + "forwardingEmail": { + "description": "The forwarding address to be deleted.", + "location": "path", + "required": true, + "type": "string" + }, + "userId": { + "default": "me", + "description": "User's email address. The special value \"me\" can be used to indicate the authenticated user.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{userId}/settings/forwardingAddresses/{forwardingEmail}", + "scopes": [ + "https://www.googleapis.com/auth/gmail.settings.sharing" + ] + }, + "get": { + "description": "Gets the specified forwarding address.", + "httpMethod": "GET", + "id": "gmail.users.settings.forwardingAddresses.get", + "parameterOrder": [ + "userId", + "forwardingEmail" + ], + "parameters": { + "forwardingEmail": { + "description": "The forwarding address to be retrieved.", + "location": "path", + "required": true, + "type": "string" + }, + "userId": { + "default": "me", + "description": "User's email address. The special value \"me\" can be used to indicate the authenticated user.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{userId}/settings/forwardingAddresses/{forwardingEmail}", + "response": { + "$ref": "ForwardingAddress" + }, + "scopes": [ + "https://mail.google.com/", + "https://www.googleapis.com/auth/gmail.modify", + "https://www.googleapis.com/auth/gmail.readonly", + "https://www.googleapis.com/auth/gmail.settings.basic" + ] + }, + "list": { + "description": "Lists the forwarding addresses for the specified account.", + "httpMethod": "GET", + "id": "gmail.users.settings.forwardingAddresses.list", + "parameterOrder": [ + "userId" + ], + "parameters": { + "userId": { + "default": "me", + "description": "User's email address. The special value \"me\" can be used to indicate the authenticated user.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{userId}/settings/forwardingAddresses", + "response": { + "$ref": "ListForwardingAddressesResponse" + }, + "scopes": [ + "https://mail.google.com/", + "https://www.googleapis.com/auth/gmail.modify", + "https://www.googleapis.com/auth/gmail.readonly", + "https://www.googleapis.com/auth/gmail.settings.basic" + ] + } + } + }, + "sendAs": { + "methods": { + "create": { + "description": "Creates a custom \"from\" send-as alias. If an SMTP MSA is specified, Gmail will attempt to connect to the SMTP service to validate the configuration before creating the alias. If ownership verification is required for the alias, a message will be sent to the email address and the resource's verification status will be set to pending; otherwise, the resource will be created with verification status set to accepted. If a signature is provided, Gmail will sanitize the HTML before saving it with the alias.\n\nThis method is only available to service account clients that have been delegated domain-wide authority.", + "httpMethod": "POST", + "id": "gmail.users.settings.sendAs.create", + "parameterOrder": [ + "userId" + ], + "parameters": { + "userId": { + "default": "me", + "description": "User's email address. The special value \"me\" can be used to indicate the authenticated user.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{userId}/settings/sendAs", + "request": { + "$ref": "SendAs" + }, + "response": { + "$ref": "SendAs" + }, + "scopes": [ + "https://www.googleapis.com/auth/gmail.settings.sharing" + ] + }, + "delete": { + "description": "Deletes the specified send-as alias. Revokes any verification that may have been required for using it.\n\nThis method is only available to service account clients that have been delegated domain-wide authority.", + "httpMethod": "DELETE", + "id": "gmail.users.settings.sendAs.delete", + "parameterOrder": [ + "userId", + "sendAsEmail" + ], + "parameters": { + "sendAsEmail": { + "description": "The send-as alias to be deleted.", + "location": "path", + "required": true, + "type": "string" + }, + "userId": { + "default": "me", + "description": "User's email address. The special value \"me\" can be used to indicate the authenticated user.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{userId}/settings/sendAs/{sendAsEmail}", + "scopes": [ + "https://www.googleapis.com/auth/gmail.settings.sharing" + ] + }, + "get": { + "description": "Gets the specified send-as alias. Fails with an HTTP 404 error if the specified address is not a member of the collection.", + "httpMethod": "GET", + "id": "gmail.users.settings.sendAs.get", + "parameterOrder": [ + "userId", + "sendAsEmail" + ], + "parameters": { + "sendAsEmail": { + "description": "The send-as alias to be retrieved.", + "location": "path", + "required": true, + "type": "string" + }, + "userId": { + "default": "me", + "description": "User's email address. The special value \"me\" can be used to indicate the authenticated user.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{userId}/settings/sendAs/{sendAsEmail}", + "response": { + "$ref": "SendAs" + }, + "scopes": [ + "https://mail.google.com/", + "https://www.googleapis.com/auth/gmail.modify", + "https://www.googleapis.com/auth/gmail.readonly", + "https://www.googleapis.com/auth/gmail.settings.basic" + ] + }, + "list": { + "description": "Lists the send-as aliases for the specified account. The result includes the primary send-as address associated with the account as well as any custom \"from\" aliases.", + "httpMethod": "GET", + "id": "gmail.users.settings.sendAs.list", + "parameterOrder": [ + "userId" + ], + "parameters": { + "userId": { + "default": "me", + "description": "User's email address. The special value \"me\" can be used to indicate the authenticated user.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{userId}/settings/sendAs", + "response": { + "$ref": "ListSendAsResponse" + }, + "scopes": [ + "https://mail.google.com/", + "https://www.googleapis.com/auth/gmail.modify", + "https://www.googleapis.com/auth/gmail.readonly", + "https://www.googleapis.com/auth/gmail.settings.basic" + ] + }, + "patch": { + "description": "Updates a send-as alias. If a signature is provided, Gmail will sanitize the HTML before saving it with the alias.\n\nAddresses other than the primary address for the account can only be updated by service account clients that have been delegated domain-wide authority. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "gmail.users.settings.sendAs.patch", + "parameterOrder": [ + "userId", + "sendAsEmail" + ], + "parameters": { + "sendAsEmail": { + "description": "The send-as alias to be updated.", + "location": "path", + "required": true, + "type": "string" + }, + "userId": { + "default": "me", + "description": "User's email address. The special value \"me\" can be used to indicate the authenticated user.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{userId}/settings/sendAs/{sendAsEmail}", + "request": { + "$ref": "SendAs" + }, + "response": { + "$ref": "SendAs" + }, + "scopes": [ + "https://www.googleapis.com/auth/gmail.settings.basic", + "https://www.googleapis.com/auth/gmail.settings.sharing" + ] + }, + "update": { + "description": "Updates a send-as alias. If a signature is provided, Gmail will sanitize the HTML before saving it with the alias.\n\nAddresses other than the primary address for the account can only be updated by service account clients that have been delegated domain-wide authority.", + "httpMethod": "PUT", + "id": "gmail.users.settings.sendAs.update", + "parameterOrder": [ + "userId", + "sendAsEmail" + ], + "parameters": { + "sendAsEmail": { + "description": "The send-as alias to be updated.", + "location": "path", + "required": true, + "type": "string" + }, + "userId": { + "default": "me", + "description": "User's email address. The special value \"me\" can be used to indicate the authenticated user.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{userId}/settings/sendAs/{sendAsEmail}", + "request": { + "$ref": "SendAs" + }, + "response": { + "$ref": "SendAs" + }, + "scopes": [ + "https://www.googleapis.com/auth/gmail.settings.basic", + "https://www.googleapis.com/auth/gmail.settings.sharing" + ] + }, + "verify": { + "description": "Sends a verification email to the specified send-as alias address. The verification status must be pending.\n\nThis method is only available to service account clients that have been delegated domain-wide authority.", + "httpMethod": "POST", + "id": "gmail.users.settings.sendAs.verify", + "parameterOrder": [ + "userId", + "sendAsEmail" + ], + "parameters": { + "sendAsEmail": { + "description": "The send-as alias to be verified.", + "location": "path", + "required": true, + "type": "string" + }, + "userId": { + "default": "me", + "description": "User's email address. The special value \"me\" can be used to indicate the authenticated user.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{userId}/settings/sendAs/{sendAsEmail}/verify", + "scopes": [ + "https://www.googleapis.com/auth/gmail.settings.sharing" + ] + } + }, + "resources": { + "smimeInfo": { + "methods": { + "delete": { + "description": "Deletes the specified S/MIME config for the specified send-as alias.", + "httpMethod": "DELETE", + "id": "gmail.users.settings.sendAs.smimeInfo.delete", + "parameterOrder": [ + "userId", + "sendAsEmail", + "id" + ], + "parameters": { + "id": { + "description": "The immutable ID for the SmimeInfo.", + "location": "path", + "required": true, + "type": "string" + }, + "sendAsEmail": { + "description": "The email address that appears in the \"From:\" header for mail sent using this alias.", + "location": "path", + "required": true, + "type": "string" + }, + "userId": { + "default": "me", + "description": "The user's email address. The special value me can be used to indicate the authenticated user.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{userId}/settings/sendAs/{sendAsEmail}/smimeInfo/{id}", + "scopes": [ + "https://www.googleapis.com/auth/gmail.settings.basic", + "https://www.googleapis.com/auth/gmail.settings.sharing" + ] + }, + "get": { + "description": "Gets the specified S/MIME config for the specified send-as alias.", + "httpMethod": "GET", + "id": "gmail.users.settings.sendAs.smimeInfo.get", + "parameterOrder": [ + "userId", + "sendAsEmail", + "id" + ], + "parameters": { + "id": { + "description": "The immutable ID for the SmimeInfo.", + "location": "path", + "required": true, + "type": "string" + }, + "sendAsEmail": { + "description": "The email address that appears in the \"From:\" header for mail sent using this alias.", + "location": "path", + "required": true, + "type": "string" + }, + "userId": { + "default": "me", + "description": "The user's email address. The special value me can be used to indicate the authenticated user.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{userId}/settings/sendAs/{sendAsEmail}/smimeInfo/{id}", + "response": { + "$ref": "SmimeInfo" + }, + "scopes": [ + "https://mail.google.com/", + "https://www.googleapis.com/auth/gmail.modify", + "https://www.googleapis.com/auth/gmail.readonly", + "https://www.googleapis.com/auth/gmail.settings.basic", + "https://www.googleapis.com/auth/gmail.settings.sharing" + ] + }, + "insert": { + "description": "Insert (upload) the given S/MIME config for the specified send-as alias. Note that pkcs12 format is required for the key.", + "httpMethod": "POST", + "id": "gmail.users.settings.sendAs.smimeInfo.insert", + "parameterOrder": [ + "userId", + "sendAsEmail" + ], + "parameters": { + "sendAsEmail": { + "description": "The email address that appears in the \"From:\" header for mail sent using this alias.", + "location": "path", + "required": true, + "type": "string" + }, + "userId": { + "default": "me", + "description": "The user's email address. The special value me can be used to indicate the authenticated user.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{userId}/settings/sendAs/{sendAsEmail}/smimeInfo", + "request": { + "$ref": "SmimeInfo" + }, + "response": { + "$ref": "SmimeInfo" + }, + "scopes": [ + "https://www.googleapis.com/auth/gmail.settings.basic", + "https://www.googleapis.com/auth/gmail.settings.sharing" + ] + }, + "list": { + "description": "Lists S/MIME configs for the specified send-as alias.", + "httpMethod": "GET", + "id": "gmail.users.settings.sendAs.smimeInfo.list", + "parameterOrder": [ + "userId", + "sendAsEmail" + ], + "parameters": { + "sendAsEmail": { + "description": "The email address that appears in the \"From:\" header for mail sent using this alias.", + "location": "path", + "required": true, + "type": "string" + }, + "userId": { + "default": "me", + "description": "The user's email address. The special value me can be used to indicate the authenticated user.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{userId}/settings/sendAs/{sendAsEmail}/smimeInfo", + "response": { + "$ref": "ListSmimeInfoResponse" + }, + "scopes": [ + "https://mail.google.com/", + "https://www.googleapis.com/auth/gmail.modify", + "https://www.googleapis.com/auth/gmail.readonly", + "https://www.googleapis.com/auth/gmail.settings.basic", + "https://www.googleapis.com/auth/gmail.settings.sharing" + ] + }, + "setDefault": { + "description": "Sets the default S/MIME config for the specified send-as alias.", + "httpMethod": "POST", + "id": "gmail.users.settings.sendAs.smimeInfo.setDefault", + "parameterOrder": [ + "userId", + "sendAsEmail", + "id" + ], + "parameters": { + "id": { + "description": "The immutable ID for the SmimeInfo.", + "location": "path", + "required": true, + "type": "string" + }, + "sendAsEmail": { + "description": "The email address that appears in the \"From:\" header for mail sent using this alias.", + "location": "path", + "required": true, + "type": "string" + }, + "userId": { + "default": "me", + "description": "The user's email address. The special value me can be used to indicate the authenticated user.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{userId}/settings/sendAs/{sendAsEmail}/smimeInfo/{id}/setDefault", + "scopes": [ + "https://www.googleapis.com/auth/gmail.settings.basic", + "https://www.googleapis.com/auth/gmail.settings.sharing" + ] + } + } + } + } + } + } + }, + "threads": { + "methods": { + "delete": { + "description": "Immediately and permanently deletes the specified thread. This operation cannot be undone. Prefer threads.trash instead.", + "httpMethod": "DELETE", + "id": "gmail.users.threads.delete", + "parameterOrder": [ + "userId", + "id" + ], + "parameters": { + "id": { + "description": "ID of the Thread to delete.", + "location": "path", + "required": true, + "type": "string" + }, + "userId": { + "default": "me", + "description": "The user's email address. The special value me can be used to indicate the authenticated user.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{userId}/threads/{id}", + "scopes": [ + "https://mail.google.com/" + ] + }, + "get": { + "description": "Gets the specified thread.", + "httpMethod": "GET", + "id": "gmail.users.threads.get", + "parameterOrder": [ + "userId", + "id" + ], + "parameters": { + "format": { + "default": "full", + "description": "The format to return the messages in.", + "enum": [ + "full", + "metadata", + "minimal" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "location": "query", + "type": "string" + }, + "id": { + "description": "The ID of the thread to retrieve.", + "location": "path", + "required": true, + "type": "string" + }, + "metadataHeaders": { + "description": "When given and format is METADATA, only include headers specified.", + "location": "query", + "repeated": true, + "type": "string" + }, + "userId": { + "default": "me", + "description": "The user's email address. The special value me can be used to indicate the authenticated user.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{userId}/threads/{id}", + "response": { + "$ref": "Thread" + }, + "scopes": [ + "https://mail.google.com/", + "https://www.googleapis.com/auth/gmail.metadata", + "https://www.googleapis.com/auth/gmail.modify", + "https://www.googleapis.com/auth/gmail.readonly" + ] + }, + "list": { + "description": "Lists the threads in the user's mailbox.", + "httpMethod": "GET", + "id": "gmail.users.threads.list", + "parameterOrder": [ + "userId" + ], + "parameters": { + "includeSpamTrash": { + "default": "false", + "description": "Include threads from SPAM and TRASH in the results.", + "location": "query", + "type": "boolean" + }, + "labelIds": { + "description": "Only return threads with labels that match all of the specified label IDs.", + "location": "query", + "repeated": true, + "type": "string" + }, + "maxResults": { + "default": "100", + "description": "Maximum number of threads to return.", + "format": "uint32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Page token to retrieve a specific page of results in the list.", + "location": "query", + "type": "string" + }, + "q": { + "description": "Only return threads matching the specified query. Supports the same query format as the Gmail search box. For example, \"from:someuser@example.com rfc822msgid: is:unread\". Parameter cannot be used when accessing the api using the gmail.metadata scope.", + "location": "query", + "type": "string" + }, + "userId": { + "default": "me", + "description": "The user's email address. The special value me can be used to indicate the authenticated user.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{userId}/threads", + "response": { + "$ref": "ListThreadsResponse" + }, + "scopes": [ + "https://mail.google.com/", + "https://www.googleapis.com/auth/gmail.metadata", + "https://www.googleapis.com/auth/gmail.modify", + "https://www.googleapis.com/auth/gmail.readonly" + ] + }, + "modify": { + "description": "Modifies the labels applied to the thread. This applies to all messages in the thread.", + "httpMethod": "POST", + "id": "gmail.users.threads.modify", + "parameterOrder": [ + "userId", + "id" + ], + "parameters": { + "id": { + "description": "The ID of the thread to modify.", + "location": "path", + "required": true, + "type": "string" + }, + "userId": { + "default": "me", + "description": "The user's email address. The special value me can be used to indicate the authenticated user.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{userId}/threads/{id}/modify", + "request": { + "$ref": "ModifyThreadRequest" + }, + "response": { + "$ref": "Thread" + }, + "scopes": [ + "https://mail.google.com/", + "https://www.googleapis.com/auth/gmail.modify" + ] + }, + "trash": { + "description": "Moves the specified thread to the trash.", + "httpMethod": "POST", + "id": "gmail.users.threads.trash", + "parameterOrder": [ + "userId", + "id" + ], + "parameters": { + "id": { + "description": "The ID of the thread to Trash.", + "location": "path", + "required": true, + "type": "string" + }, + "userId": { + "default": "me", + "description": "The user's email address. The special value me can be used to indicate the authenticated user.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{userId}/threads/{id}/trash", + "response": { + "$ref": "Thread" + }, + "scopes": [ + "https://mail.google.com/", + "https://www.googleapis.com/auth/gmail.modify" + ] + }, + "untrash": { + "description": "Removes the specified thread from the trash.", + "httpMethod": "POST", + "id": "gmail.users.threads.untrash", + "parameterOrder": [ + "userId", + "id" + ], + "parameters": { + "id": { + "description": "The ID of the thread to remove from Trash.", + "location": "path", + "required": true, + "type": "string" + }, + "userId": { + "default": "me", + "description": "The user's email address. The special value me can be used to indicate the authenticated user.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{userId}/threads/{id}/untrash", + "response": { + "$ref": "Thread" + }, + "scopes": [ + "https://mail.google.com/", + "https://www.googleapis.com/auth/gmail.modify" + ] + } + } + } + } + } + }, + "revision": "20180319", + "rootUrl": "https://www.googleapis.com/", + "schemas": { + "AutoForwarding": { + "description": "Auto-forwarding settings for an account.", + "id": "AutoForwarding", + "properties": { + "disposition": { + "description": "The state that a message should be left in after it has been forwarded.", + "enum": [ + "archive", + "dispositionUnspecified", + "leaveInInbox", + "markRead", + "trash" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "emailAddress": { + "description": "Email address to which all incoming messages are forwarded. This email address must be a verified member of the forwarding addresses.", + "type": "string" + }, + "enabled": { + "description": "Whether all incoming mail is automatically forwarded to another address.", + "type": "boolean" + } + }, + "type": "object" + }, + "BatchDeleteMessagesRequest": { + "id": "BatchDeleteMessagesRequest", + "properties": { + "ids": { + "description": "The IDs of the messages to delete.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "BatchModifyMessagesRequest": { + "id": "BatchModifyMessagesRequest", + "properties": { + "addLabelIds": { + "description": "A list of label IDs to add to messages.", + "items": { + "type": "string" + }, + "type": "array" + }, + "ids": { + "description": "The IDs of the messages to modify. There is a limit of 1000 ids per request.", + "items": { + "type": "string" + }, + "type": "array" + }, + "removeLabelIds": { + "description": "A list of label IDs to remove from messages.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "Draft": { + "description": "A draft email in the user's mailbox.", + "id": "Draft", + "properties": { + "id": { + "annotations": { + "required": [ + "gmail.users.drafts.send" + ] + }, + "description": "The immutable ID of the draft.", + "type": "string" + }, + "message": { + "$ref": "Message", + "description": "The message content of the draft." + } + }, + "type": "object" + }, + "Filter": { + "description": "Resource definition for Gmail filters. Filters apply to specific messages instead of an entire email thread.", + "id": "Filter", + "properties": { + "action": { + "$ref": "FilterAction", + "description": "Action that the filter performs." + }, + "criteria": { + "$ref": "FilterCriteria", + "description": "Matching criteria for the filter." }, "id": { - "type": "string", - "description": "The ID of the message to retrieve.", - "required": true, - "location": "path" - }, - "metadataHeaders": { - "type": "string", - "description": "When given and format is METADATA, only include headers specified.", - "repeated": true, - "location": "query" - }, - "userId": { - "type": "string", - "description": "The user's email address. The special value me can be used to indicate the authenticated user.", - "default": "me", - "required": true, - "location": "path" + "description": "The server assigned ID of the filter.", + "type": "string" } - }, - "parameterOrder": [ - "userId", - "id" - ], - "response": { - "$ref": "Message" - }, - "scopes": [ - "https://mail.google.com/", - "https://www.googleapis.com/auth/gmail.metadata", - "https://www.googleapis.com/auth/gmail.modify", - "https://www.googleapis.com/auth/gmail.readonly" - ] }, - "import": { - "id": "gmail.users.messages.import", - "path": "{userId}/messages/import", - "httpMethod": "POST", - "description": "Imports a message into only this user's mailbox, with standard email delivery scanning and classification similar to receiving via SMTP. Does not send a message.", - "parameters": { - "deleted": { - "type": "boolean", - "description": "Mark the email as permanently deleted (not TRASH) and only visible in Google Vault to a Vault administrator. Only used for G Suite accounts.", - "default": "false", - "location": "query" + "type": "object" + }, + "FilterAction": { + "description": "A set of actions to perform on a message.", + "id": "FilterAction", + "properties": { + "addLabelIds": { + "description": "List of labels to add to the message.", + "items": { + "type": "string" + }, + "type": "array" }, - "internalDateSource": { - "type": "string", - "description": "Source for Gmail's internal date of the message.", - "default": "dateHeader", - "enum": [ - "dateHeader", - "receivedTime" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" + "forward": { + "description": "Email address that the message should be forwarded to.", + "type": "string" }, - "neverMarkSpam": { - "type": "boolean", - "description": "Ignore the Gmail spam classifier decision and never mark this email as SPAM in the mailbox.", - "default": "false", - "location": "query" - }, - "processForCalendar": { - "type": "boolean", - "description": "Process calendar invites in the email and add any extracted meetings to the Google Calendar for this user.", - "default": "false", - "location": "query" - }, - "userId": { - "type": "string", - "description": "The user's email address. The special value me can be used to indicate the authenticated user.", - "default": "me", - "required": true, - "location": "path" + "removeLabelIds": { + "description": "List of labels to remove from the message.", + "items": { + "type": "string" + }, + "type": "array" } - }, - "parameterOrder": [ - "userId" - ], - "request": { - "$ref": "Message" - }, - "response": { - "$ref": "Message" - }, - "scopes": [ - "https://mail.google.com/", - "https://www.googleapis.com/auth/gmail.insert", - "https://www.googleapis.com/auth/gmail.modify" - ], - "supportsMediaUpload": true, - "mediaUpload": { - "accept": [ - "message/rfc822" - ], - "maxSize": "50MB", - "protocols": { - "simple": { - "multipart": true, - "path": "/upload/gmail/v1/users/{userId}/messages/import" - }, - "resumable": { - "multipart": true, - "path": "/resumable/upload/gmail/v1/users/{userId}/messages/import" - } - } - } }, - "insert": { - "id": "gmail.users.messages.insert", - "path": "{userId}/messages", - "httpMethod": "POST", - "description": "Directly inserts a message into only this user's mailbox similar to IMAP APPEND, bypassing most scanning and classification. Does not send a message.", - "parameters": { - "deleted": { - "type": "boolean", - "description": "Mark the email as permanently deleted (not TRASH) and only visible in Google Vault to a Vault administrator. Only used for G Suite accounts.", - "default": "false", - "location": "query" + "type": "object" + }, + "FilterCriteria": { + "description": "Message matching criteria.", + "id": "FilterCriteria", + "properties": { + "excludeChats": { + "description": "Whether the response should exclude chats.", + "type": "boolean" }, - "internalDateSource": { - "type": "string", - "description": "Source for Gmail's internal date of the message.", - "default": "receivedTime", - "enum": [ - "dateHeader", - "receivedTime" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" + "from": { + "description": "The sender's display name or email address.", + "type": "string" }, - "userId": { - "type": "string", - "description": "The user's email address. The special value me can be used to indicate the authenticated user.", - "default": "me", - "required": true, - "location": "path" + "hasAttachment": { + "description": "Whether the message has any attachment.", + "type": "boolean" + }, + "negatedQuery": { + "description": "Only return messages not matching the specified query. Supports the same query format as the Gmail search box. For example, \"from:someuser@example.com rfc822msgid: is:unread\".", + "type": "string" + }, + "query": { + "description": "Only return messages matching the specified query. Supports the same query format as the Gmail search box. For example, \"from:someuser@example.com rfc822msgid: is:unread\".", + "type": "string" + }, + "size": { + "description": "The size of the entire RFC822 message in bytes, including all headers and attachments.", + "format": "int32", + "type": "integer" + }, + "sizeComparison": { + "description": "How the message size in bytes should be in relation to the size field.", + "enum": [ + "larger", + "smaller", + "unspecified" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, + "subject": { + "description": "Case-insensitive phrase found in the message's subject. Trailing and leading whitespace are be trimmed and adjacent spaces are collapsed.", + "type": "string" + }, + "to": { + "description": "The recipient's display name or email address. Includes recipients in the \"to\", \"cc\", and \"bcc\" header fields. You can use simply the local part of the email address. For example, \"example\" and \"example@\" both match \"example@gmail.com\". This field is case-insensitive.", + "type": "string" } - }, - "parameterOrder": [ - "userId" - ], - "request": { - "$ref": "Message" - }, - "response": { - "$ref": "Message" - }, - "scopes": [ - "https://mail.google.com/", - "https://www.googleapis.com/auth/gmail.insert", - "https://www.googleapis.com/auth/gmail.modify" - ], - "supportsMediaUpload": true, - "mediaUpload": { - "accept": [ - "message/rfc822" - ], - "maxSize": "50MB", - "protocols": { - "simple": { - "multipart": true, - "path": "/upload/gmail/v1/users/{userId}/messages" - }, - "resumable": { - "multipart": true, - "path": "/resumable/upload/gmail/v1/users/{userId}/messages" - } - } - } }, - "list": { - "id": "gmail.users.messages.list", - "path": "{userId}/messages", - "httpMethod": "GET", - "description": "Lists the messages in the user's mailbox.", - "parameters": { - "includeSpamTrash": { - "type": "boolean", - "description": "Include messages from SPAM and TRASH in the results.", - "default": "false", - "location": "query" + "type": "object" + }, + "ForwardingAddress": { + "description": "Settings for a forwarding address.", + "id": "ForwardingAddress", + "properties": { + "forwardingEmail": { + "description": "An email address to which messages can be forwarded.", + "type": "string" }, + "verificationStatus": { + "description": "Indicates whether this address has been verified and is usable for forwarding. Read-only.", + "enum": [ + "accepted", + "pending", + "verificationStatusUnspecified" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "History": { + "description": "A record of a change to the user's mailbox. Each history change may affect multiple messages in multiple ways.", + "id": "History", + "properties": { + "id": { + "description": "The mailbox sequence ID.", + "format": "uint64", + "type": "string" + }, + "labelsAdded": { + "description": "Labels added to messages in this history record.", + "items": { + "$ref": "HistoryLabelAdded" + }, + "type": "array" + }, + "labelsRemoved": { + "description": "Labels removed from messages in this history record.", + "items": { + "$ref": "HistoryLabelRemoved" + }, + "type": "array" + }, + "messages": { + "description": "List of messages changed in this history record. The fields for specific change types, such as messagesAdded may duplicate messages in this field. We recommend using the specific change-type fields instead of this.", + "items": { + "$ref": "Message" + }, + "type": "array" + }, + "messagesAdded": { + "description": "Messages added to the mailbox in this history record.", + "items": { + "$ref": "HistoryMessageAdded" + }, + "type": "array" + }, + "messagesDeleted": { + "description": "Messages deleted (not Trashed) from the mailbox in this history record.", + "items": { + "$ref": "HistoryMessageDeleted" + }, + "type": "array" + } + }, + "type": "object" + }, + "HistoryLabelAdded": { + "id": "HistoryLabelAdded", + "properties": { "labelIds": { - "type": "string", - "description": "Only return messages with labels that match all of the specified label IDs.", - "repeated": true, - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "Maximum number of messages to return.", - "default": "100", - "format": "uint32", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Page token to retrieve a specific page of results in the list.", - "location": "query" - }, - "q": { - "type": "string", - "description": "Only return messages matching the specified query. Supports the same query format as the Gmail search box. For example, \"from:someuser@example.com rfc822msgid:\u003csomemsgid@example.com\u003e is:unread\". Parameter cannot be used when accessing the api using the gmail.metadata scope.", - "location": "query" - }, - "userId": { - "type": "string", - "description": "The user's email address. The special value me can be used to indicate the authenticated user.", - "default": "me", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "userId" - ], - "response": { - "$ref": "ListMessagesResponse" - }, - "scopes": [ - "https://mail.google.com/", - "https://www.googleapis.com/auth/gmail.metadata", - "https://www.googleapis.com/auth/gmail.modify", - "https://www.googleapis.com/auth/gmail.readonly" - ] - }, - "modify": { - "id": "gmail.users.messages.modify", - "path": "{userId}/messages/{id}/modify", - "httpMethod": "POST", - "description": "Modifies the labels on the specified message.", - "parameters": { - "id": { - "type": "string", - "description": "The ID of the message to modify.", - "required": true, - "location": "path" - }, - "userId": { - "type": "string", - "description": "The user's email address. The special value me can be used to indicate the authenticated user.", - "default": "me", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "userId", - "id" - ], - "request": { - "$ref": "ModifyMessageRequest" - }, - "response": { - "$ref": "Message" - }, - "scopes": [ - "https://mail.google.com/", - "https://www.googleapis.com/auth/gmail.modify" - ] - }, - "send": { - "id": "gmail.users.messages.send", - "path": "{userId}/messages/send", - "httpMethod": "POST", - "description": "Sends the specified message to the recipients in the To, Cc, and Bcc headers.", - "parameters": { - "userId": { - "type": "string", - "description": "The user's email address. The special value me can be used to indicate the authenticated user.", - "default": "me", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "userId" - ], - "request": { - "$ref": "Message" - }, - "response": { - "$ref": "Message" - }, - "scopes": [ - "https://mail.google.com/", - "https://www.googleapis.com/auth/gmail.compose", - "https://www.googleapis.com/auth/gmail.modify", - "https://www.googleapis.com/auth/gmail.send" - ], - "supportsMediaUpload": true, - "mediaUpload": { - "accept": [ - "message/rfc822" - ], - "maxSize": "35MB", - "protocols": { - "simple": { - "multipart": true, - "path": "/upload/gmail/v1/users/{userId}/messages/send" - }, - "resumable": { - "multipart": true, - "path": "/resumable/upload/gmail/v1/users/{userId}/messages/send" - } - } - } - }, - "trash": { - "id": "gmail.users.messages.trash", - "path": "{userId}/messages/{id}/trash", - "httpMethod": "POST", - "description": "Moves the specified message to the trash.", - "parameters": { - "id": { - "type": "string", - "description": "The ID of the message to Trash.", - "required": true, - "location": "path" - }, - "userId": { - "type": "string", - "description": "The user's email address. The special value me can be used to indicate the authenticated user.", - "default": "me", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "userId", - "id" - ], - "response": { - "$ref": "Message" - }, - "scopes": [ - "https://mail.google.com/", - "https://www.googleapis.com/auth/gmail.modify" - ] - }, - "untrash": { - "id": "gmail.users.messages.untrash", - "path": "{userId}/messages/{id}/untrash", - "httpMethod": "POST", - "description": "Removes the specified message from the trash.", - "parameters": { - "id": { - "type": "string", - "description": "The ID of the message to remove from Trash.", - "required": true, - "location": "path" - }, - "userId": { - "type": "string", - "description": "The user's email address. The special value me can be used to indicate the authenticated user.", - "default": "me", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "userId", - "id" - ], - "response": { - "$ref": "Message" - }, - "scopes": [ - "https://mail.google.com/", - "https://www.googleapis.com/auth/gmail.modify" - ] - } - }, - "resources": { - "attachments": { - "methods": { - "get": { - "id": "gmail.users.messages.attachments.get", - "path": "{userId}/messages/{messageId}/attachments/{id}", - "httpMethod": "GET", - "description": "Gets the specified message attachment.", - "parameters": { - "id": { - "type": "string", - "description": "The ID of the attachment.", - "required": true, - "location": "path" + "description": "Label IDs added to the message.", + "items": { + "type": "string" }, - "messageId": { - "type": "string", - "description": "The ID of the message containing the attachment.", - "required": true, - "location": "path" - }, - "userId": { - "type": "string", - "description": "The user's email address. The special value me can be used to indicate the authenticated user.", - "default": "me", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "userId", - "messageId", - "id" - ], - "response": { - "$ref": "MessagePartBody" - }, - "scopes": [ - "https://mail.google.com/", - "https://www.googleapis.com/auth/gmail.modify", - "https://www.googleapis.com/auth/gmail.readonly" - ] + "type": "array" + }, + "message": { + "$ref": "Message" } - } - } - } + }, + "type": "object" }, - "settings": { - "methods": { - "getAutoForwarding": { - "id": "gmail.users.settings.getAutoForwarding", - "path": "{userId}/settings/autoForwarding", - "httpMethod": "GET", - "description": "Gets the auto-forwarding setting for the specified account.", - "parameters": { - "userId": { - "type": "string", - "description": "User's email address. The special value \"me\" can be used to indicate the authenticated user.", - "default": "me", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "userId" - ], - "response": { - "$ref": "AutoForwarding" - }, - "scopes": [ - "https://mail.google.com/", - "https://www.googleapis.com/auth/gmail.modify", - "https://www.googleapis.com/auth/gmail.readonly", - "https://www.googleapis.com/auth/gmail.settings.basic" - ] - }, - "getImap": { - "id": "gmail.users.settings.getImap", - "path": "{userId}/settings/imap", - "httpMethod": "GET", - "description": "Gets IMAP settings.", - "parameters": { - "userId": { - "type": "string", - "description": "User's email address. The special value \"me\" can be used to indicate the authenticated user.", - "default": "me", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "userId" - ], - "response": { - "$ref": "ImapSettings" - }, - "scopes": [ - "https://mail.google.com/", - "https://www.googleapis.com/auth/gmail.modify", - "https://www.googleapis.com/auth/gmail.readonly", - "https://www.googleapis.com/auth/gmail.settings.basic" - ] - }, - "getPop": { - "id": "gmail.users.settings.getPop", - "path": "{userId}/settings/pop", - "httpMethod": "GET", - "description": "Gets POP settings.", - "parameters": { - "userId": { - "type": "string", - "description": "User's email address. The special value \"me\" can be used to indicate the authenticated user.", - "default": "me", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "userId" - ], - "response": { - "$ref": "PopSettings" - }, - "scopes": [ - "https://mail.google.com/", - "https://www.googleapis.com/auth/gmail.modify", - "https://www.googleapis.com/auth/gmail.readonly", - "https://www.googleapis.com/auth/gmail.settings.basic" - ] - }, - "getVacation": { - "id": "gmail.users.settings.getVacation", - "path": "{userId}/settings/vacation", - "httpMethod": "GET", - "description": "Gets vacation responder settings.", - "parameters": { - "userId": { - "type": "string", - "description": "User's email address. The special value \"me\" can be used to indicate the authenticated user.", - "default": "me", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "userId" - ], - "response": { - "$ref": "VacationSettings" - }, - "scopes": [ - "https://mail.google.com/", - "https://www.googleapis.com/auth/gmail.modify", - "https://www.googleapis.com/auth/gmail.readonly", - "https://www.googleapis.com/auth/gmail.settings.basic" - ] - }, - "updateAutoForwarding": { - "id": "gmail.users.settings.updateAutoForwarding", - "path": "{userId}/settings/autoForwarding", - "httpMethod": "PUT", - "description": "Updates the auto-forwarding setting for the specified account. A verified forwarding address must be specified when auto-forwarding is enabled.\n\nThis method is only available to service account clients that have been delegated domain-wide authority.", - "parameters": { - "userId": { - "type": "string", - "description": "User's email address. The special value \"me\" can be used to indicate the authenticated user.", - "default": "me", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "userId" - ], - "request": { - "$ref": "AutoForwarding" - }, - "response": { - "$ref": "AutoForwarding" - }, - "scopes": [ - "https://www.googleapis.com/auth/gmail.settings.sharing" - ] - }, - "updateImap": { - "id": "gmail.users.settings.updateImap", - "path": "{userId}/settings/imap", - "httpMethod": "PUT", - "description": "Updates IMAP settings.", - "parameters": { - "userId": { - "type": "string", - "description": "User's email address. The special value \"me\" can be used to indicate the authenticated user.", - "default": "me", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "userId" - ], - "request": { - "$ref": "ImapSettings" - }, - "response": { - "$ref": "ImapSettings" - }, - "scopes": [ - "https://www.googleapis.com/auth/gmail.settings.basic" - ] - }, - "updatePop": { - "id": "gmail.users.settings.updatePop", - "path": "{userId}/settings/pop", - "httpMethod": "PUT", - "description": "Updates POP settings.", - "parameters": { - "userId": { - "type": "string", - "description": "User's email address. The special value \"me\" can be used to indicate the authenticated user.", - "default": "me", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "userId" - ], - "request": { - "$ref": "PopSettings" - }, - "response": { - "$ref": "PopSettings" - }, - "scopes": [ - "https://www.googleapis.com/auth/gmail.settings.basic" - ] - }, - "updateVacation": { - "id": "gmail.users.settings.updateVacation", - "path": "{userId}/settings/vacation", - "httpMethod": "PUT", - "description": "Updates vacation responder settings.", - "parameters": { - "userId": { - "type": "string", - "description": "User's email address. The special value \"me\" can be used to indicate the authenticated user.", - "default": "me", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "userId" - ], - "request": { - "$ref": "VacationSettings" - }, - "response": { - "$ref": "VacationSettings" - }, - "scopes": [ - "https://www.googleapis.com/auth/gmail.settings.basic" - ] - } - }, - "resources": { - "filters": { - "methods": { - "create": { - "id": "gmail.users.settings.filters.create", - "path": "{userId}/settings/filters", - "httpMethod": "POST", - "description": "Creates a filter.", - "parameters": { - "userId": { - "type": "string", - "description": "User's email address. The special value \"me\" can be used to indicate the authenticated user.", - "default": "me", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "userId" - ], - "request": { - "$ref": "Filter" - }, - "response": { - "$ref": "Filter" - }, - "scopes": [ - "https://www.googleapis.com/auth/gmail.settings.basic" - ] - }, - "delete": { - "id": "gmail.users.settings.filters.delete", - "path": "{userId}/settings/filters/{id}", - "httpMethod": "DELETE", - "description": "Deletes a filter.", - "parameters": { - "id": { - "type": "string", - "description": "The ID of the filter to be deleted.", - "required": true, - "location": "path" + "HistoryLabelRemoved": { + "id": "HistoryLabelRemoved", + "properties": { + "labelIds": { + "description": "Label IDs removed from the message.", + "items": { + "type": "string" }, - "userId": { - "type": "string", - "description": "User's email address. The special value \"me\" can be used to indicate the authenticated user.", - "default": "me", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "userId", - "id" - ], - "scopes": [ - "https://www.googleapis.com/auth/gmail.settings.basic" - ] + "type": "array" }, - "get": { - "id": "gmail.users.settings.filters.get", - "path": "{userId}/settings/filters/{id}", - "httpMethod": "GET", - "description": "Gets a filter.", - "parameters": { - "id": { - "type": "string", - "description": "The ID of the filter to be fetched.", - "required": true, - "location": "path" - }, - "userId": { - "type": "string", - "description": "User's email address. The special value \"me\" can be used to indicate the authenticated user.", - "default": "me", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "userId", - "id" - ], - "response": { - "$ref": "Filter" - }, - "scopes": [ - "https://mail.google.com/", - "https://www.googleapis.com/auth/gmail.modify", - "https://www.googleapis.com/auth/gmail.readonly", - "https://www.googleapis.com/auth/gmail.settings.basic" - ] - }, - "list": { - "id": "gmail.users.settings.filters.list", - "path": "{userId}/settings/filters", - "httpMethod": "GET", - "description": "Lists the message filters of a Gmail user.", - "parameters": { - "userId": { - "type": "string", - "description": "User's email address. The special value \"me\" can be used to indicate the authenticated user.", - "default": "me", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "userId" - ], - "response": { - "$ref": "ListFiltersResponse" - }, - "scopes": [ - "https://mail.google.com/", - "https://www.googleapis.com/auth/gmail.modify", - "https://www.googleapis.com/auth/gmail.readonly", - "https://www.googleapis.com/auth/gmail.settings.basic" - ] + "message": { + "$ref": "Message" } - } }, - "forwardingAddresses": { - "methods": { - "create": { - "id": "gmail.users.settings.forwardingAddresses.create", - "path": "{userId}/settings/forwardingAddresses", - "httpMethod": "POST", - "description": "Creates a forwarding address. If ownership verification is required, a message will be sent to the recipient and the resource's verification status will be set to pending; otherwise, the resource will be created with verification status set to accepted.\n\nThis method is only available to service account clients that have been delegated domain-wide authority.", - "parameters": { - "userId": { - "type": "string", - "description": "User's email address. The special value \"me\" can be used to indicate the authenticated user.", - "default": "me", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "userId" - ], - "request": { - "$ref": "ForwardingAddress" - }, - "response": { - "$ref": "ForwardingAddress" - }, - "scopes": [ - "https://www.googleapis.com/auth/gmail.settings.sharing" - ] - }, - "delete": { - "id": "gmail.users.settings.forwardingAddresses.delete", - "path": "{userId}/settings/forwardingAddresses/{forwardingEmail}", - "httpMethod": "DELETE", - "description": "Deletes the specified forwarding address and revokes any verification that may have been required.\n\nThis method is only available to service account clients that have been delegated domain-wide authority.", - "parameters": { - "forwardingEmail": { - "type": "string", - "description": "The forwarding address to be deleted.", - "required": true, - "location": "path" - }, - "userId": { - "type": "string", - "description": "User's email address. The special value \"me\" can be used to indicate the authenticated user.", - "default": "me", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "userId", - "forwardingEmail" - ], - "scopes": [ - "https://www.googleapis.com/auth/gmail.settings.sharing" - ] - }, - "get": { - "id": "gmail.users.settings.forwardingAddresses.get", - "path": "{userId}/settings/forwardingAddresses/{forwardingEmail}", - "httpMethod": "GET", - "description": "Gets the specified forwarding address.", - "parameters": { - "forwardingEmail": { - "type": "string", - "description": "The forwarding address to be retrieved.", - "required": true, - "location": "path" - }, - "userId": { - "type": "string", - "description": "User's email address. The special value \"me\" can be used to indicate the authenticated user.", - "default": "me", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "userId", - "forwardingEmail" - ], - "response": { - "$ref": "ForwardingAddress" - }, - "scopes": [ - "https://mail.google.com/", - "https://www.googleapis.com/auth/gmail.modify", - "https://www.googleapis.com/auth/gmail.readonly", - "https://www.googleapis.com/auth/gmail.settings.basic" - ] - }, - "list": { - "id": "gmail.users.settings.forwardingAddresses.list", - "path": "{userId}/settings/forwardingAddresses", - "httpMethod": "GET", - "description": "Lists the forwarding addresses for the specified account.", - "parameters": { - "userId": { - "type": "string", - "description": "User's email address. The special value \"me\" can be used to indicate the authenticated user.", - "default": "me", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "userId" - ], - "response": { - "$ref": "ListForwardingAddressesResponse" - }, - "scopes": [ - "https://mail.google.com/", - "https://www.googleapis.com/auth/gmail.modify", - "https://www.googleapis.com/auth/gmail.readonly", - "https://www.googleapis.com/auth/gmail.settings.basic" - ] + "type": "object" + }, + "HistoryMessageAdded": { + "id": "HistoryMessageAdded", + "properties": { + "message": { + "$ref": "Message" } - } }, - "sendAs": { - "methods": { - "create": { - "id": "gmail.users.settings.sendAs.create", - "path": "{userId}/settings/sendAs", - "httpMethod": "POST", - "description": "Creates a custom \"from\" send-as alias. If an SMTP MSA is specified, Gmail will attempt to connect to the SMTP service to validate the configuration before creating the alias. If ownership verification is required for the alias, a message will be sent to the email address and the resource's verification status will be set to pending; otherwise, the resource will be created with verification status set to accepted. If a signature is provided, Gmail will sanitize the HTML before saving it with the alias.\n\nThis method is only available to service account clients that have been delegated domain-wide authority.", - "parameters": { - "userId": { - "type": "string", - "description": "User's email address. The special value \"me\" can be used to indicate the authenticated user.", - "default": "me", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "userId" - ], - "request": { - "$ref": "SendAs" - }, - "response": { - "$ref": "SendAs" - }, - "scopes": [ - "https://www.googleapis.com/auth/gmail.settings.sharing" - ] - }, - "delete": { - "id": "gmail.users.settings.sendAs.delete", - "path": "{userId}/settings/sendAs/{sendAsEmail}", - "httpMethod": "DELETE", - "description": "Deletes the specified send-as alias. Revokes any verification that may have been required for using it.\n\nThis method is only available to service account clients that have been delegated domain-wide authority.", - "parameters": { - "sendAsEmail": { - "type": "string", - "description": "The send-as alias to be deleted.", - "required": true, - "location": "path" - }, - "userId": { - "type": "string", - "description": "User's email address. The special value \"me\" can be used to indicate the authenticated user.", - "default": "me", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "userId", - "sendAsEmail" - ], - "scopes": [ - "https://www.googleapis.com/auth/gmail.settings.sharing" - ] - }, - "get": { - "id": "gmail.users.settings.sendAs.get", - "path": "{userId}/settings/sendAs/{sendAsEmail}", - "httpMethod": "GET", - "description": "Gets the specified send-as alias. Fails with an HTTP 404 error if the specified address is not a member of the collection.", - "parameters": { - "sendAsEmail": { - "type": "string", - "description": "The send-as alias to be retrieved.", - "required": true, - "location": "path" - }, - "userId": { - "type": "string", - "description": "User's email address. The special value \"me\" can be used to indicate the authenticated user.", - "default": "me", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "userId", - "sendAsEmail" - ], - "response": { - "$ref": "SendAs" - }, - "scopes": [ - "https://mail.google.com/", - "https://www.googleapis.com/auth/gmail.modify", - "https://www.googleapis.com/auth/gmail.readonly", - "https://www.googleapis.com/auth/gmail.settings.basic" - ] - }, - "list": { - "id": "gmail.users.settings.sendAs.list", - "path": "{userId}/settings/sendAs", - "httpMethod": "GET", - "description": "Lists the send-as aliases for the specified account. The result includes the primary send-as address associated with the account as well as any custom \"from\" aliases.", - "parameters": { - "userId": { - "type": "string", - "description": "User's email address. The special value \"me\" can be used to indicate the authenticated user.", - "default": "me", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "userId" - ], - "response": { - "$ref": "ListSendAsResponse" - }, - "scopes": [ - "https://mail.google.com/", - "https://www.googleapis.com/auth/gmail.modify", - "https://www.googleapis.com/auth/gmail.readonly", - "https://www.googleapis.com/auth/gmail.settings.basic" - ] - }, - "patch": { - "id": "gmail.users.settings.sendAs.patch", - "path": "{userId}/settings/sendAs/{sendAsEmail}", - "httpMethod": "PATCH", - "description": "Updates a send-as alias. If a signature is provided, Gmail will sanitize the HTML before saving it with the alias.\n\nAddresses other than the primary address for the account can only be updated by service account clients that have been delegated domain-wide authority. This method supports patch semantics.", - "parameters": { - "sendAsEmail": { - "type": "string", - "description": "The send-as alias to be updated.", - "required": true, - "location": "path" - }, - "userId": { - "type": "string", - "description": "User's email address. The special value \"me\" can be used to indicate the authenticated user.", - "default": "me", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "userId", - "sendAsEmail" - ], - "request": { - "$ref": "SendAs" - }, - "response": { - "$ref": "SendAs" - }, - "scopes": [ - "https://www.googleapis.com/auth/gmail.settings.basic", - "https://www.googleapis.com/auth/gmail.settings.sharing" - ] - }, - "update": { - "id": "gmail.users.settings.sendAs.update", - "path": "{userId}/settings/sendAs/{sendAsEmail}", - "httpMethod": "PUT", - "description": "Updates a send-as alias. If a signature is provided, Gmail will sanitize the HTML before saving it with the alias.\n\nAddresses other than the primary address for the account can only be updated by service account clients that have been delegated domain-wide authority.", - "parameters": { - "sendAsEmail": { - "type": "string", - "description": "The send-as alias to be updated.", - "required": true, - "location": "path" - }, - "userId": { - "type": "string", - "description": "User's email address. The special value \"me\" can be used to indicate the authenticated user.", - "default": "me", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "userId", - "sendAsEmail" - ], - "request": { - "$ref": "SendAs" - }, - "response": { - "$ref": "SendAs" - }, - "scopes": [ - "https://www.googleapis.com/auth/gmail.settings.basic", - "https://www.googleapis.com/auth/gmail.settings.sharing" - ] - }, - "verify": { - "id": "gmail.users.settings.sendAs.verify", - "path": "{userId}/settings/sendAs/{sendAsEmail}/verify", - "httpMethod": "POST", - "description": "Sends a verification email to the specified send-as alias address. The verification status must be pending.\n\nThis method is only available to service account clients that have been delegated domain-wide authority.", - "parameters": { - "sendAsEmail": { - "type": "string", - "description": "The send-as alias to be verified.", - "required": true, - "location": "path" - }, - "userId": { - "type": "string", - "description": "User's email address. The special value \"me\" can be used to indicate the authenticated user.", - "default": "me", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "userId", - "sendAsEmail" - ], - "scopes": [ - "https://www.googleapis.com/auth/gmail.settings.sharing" - ] + "type": "object" + }, + "HistoryMessageDeleted": { + "id": "HistoryMessageDeleted", + "properties": { + "message": { + "$ref": "Message" } - }, - "resources": { + }, + "type": "object" + }, + "ImapSettings": { + "description": "IMAP settings for an account.", + "id": "ImapSettings", + "properties": { + "autoExpunge": { + "description": "If this value is true, Gmail will immediately expunge a message when it is marked as deleted in IMAP. Otherwise, Gmail will wait for an update from the client before expunging messages marked as deleted.", + "type": "boolean" + }, + "enabled": { + "description": "Whether IMAP is enabled for the account.", + "type": "boolean" + }, + "expungeBehavior": { + "description": "The action that will be executed on a message when it is marked as deleted and expunged from the last visible IMAP folder.", + "enum": [ + "archive", + "deleteForever", + "expungeBehaviorUnspecified", + "trash" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ], + "type": "string" + }, + "maxFolderSize": { + "description": "An optional limit on the number of messages that an IMAP folder may contain. Legal values are 0, 1000, 2000, 5000 or 10000. A value of zero is interpreted to mean that there is no limit.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "Label": { + "description": "Labels are used to categorize messages and threads within the user's mailbox.", + "id": "Label", + "properties": { + "color": { + "$ref": "LabelColor", + "description": "The color to assign to the label. Color is only available for labels that have their type set to user." + }, + "id": { + "annotations": { + "required": [ + "gmail.users.labels.update" + ] + }, + "description": "The immutable ID of the label.", + "type": "string" + }, + "labelListVisibility": { + "annotations": { + "required": [ + "gmail.users.labels.create", + "gmail.users.labels.update" + ] + }, + "description": "The visibility of the label in the label list in the Gmail web interface.", + "enum": [ + "labelHide", + "labelShow", + "labelShowIfUnread" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, + "messageListVisibility": { + "annotations": { + "required": [ + "gmail.users.labels.create", + "gmail.users.labels.update" + ] + }, + "description": "The visibility of the label in the message list in the Gmail web interface.", + "enum": [ + "hide", + "show" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "messagesTotal": { + "description": "The total number of messages with the label.", + "format": "int32", + "type": "integer" + }, + "messagesUnread": { + "description": "The number of unread messages with the label.", + "format": "int32", + "type": "integer" + }, + "name": { + "annotations": { + "required": [ + "gmail.users.labels.create", + "gmail.users.labels.update" + ] + }, + "description": "The display name of the label.", + "type": "string" + }, + "threadsTotal": { + "description": "The total number of threads with the label.", + "format": "int32", + "type": "integer" + }, + "threadsUnread": { + "description": "The number of unread threads with the label.", + "format": "int32", + "type": "integer" + }, + "type": { + "description": "The owner type for the label. User labels are created by the user and can be modified and deleted by the user and can be applied to any message or thread. System labels are internally created and cannot be added, modified, or deleted. System labels may be able to be applied to or removed from messages and threads under some circumstances but this is not guaranteed. For example, users can apply and remove the INBOX and UNREAD labels from messages and threads, but cannot apply or remove the DRAFTS or SENT labels from messages or threads.", + "enum": [ + "system", + "user" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "LabelColor": { + "id": "LabelColor", + "properties": { + "backgroundColor": { + "description": "The background color represented as hex string #RRGGBB (ex #000000). This field is required in order to set the color of a label. Only the following predefined set of color values are allowed:\n#000000, #434343, #666666, #999999, #cccccc, #efefef, #f3f3f3, #ffffff, #fb4c2f, #ffad47, #fad165, #16a766, #43d692, #4a86e8, #a479e2, #f691b3, #f6c5be, #ffe6c7, #fef1d1, #b9e4d0, #c6f3de, #c9daf8, #e4d7f5, #fcdee8, #efa093, #ffd6a2, #fce8b3, #89d3b2, #a0eac9, #a4c2f4, #d0bcf1, #fbc8d9, #e66550, #ffbc6b, #fcda83, #44b984, #68dfa9, #6d9eeb, #b694e8, #f7a7c0, #cc3a21, #eaa041, #f2c960, #149e60, #3dc789, #3c78d8, #8e63ce, #e07798, #ac2b16, #cf8933, #d5ae49, #0b804b, #2a9c68, #285bac, #653e9b, #b65775, #822111, #a46a21, #aa8831, #076239, #1a764d, #1c4587, #41236d, #83334c", + "type": "string" + }, + "textColor": { + "description": "The text color of the label, represented as hex string. This field is required in order to set the color of a label. Only the following predefined set of color values are allowed:\n#000000, #434343, #666666, #999999, #cccccc, #efefef, #f3f3f3, #ffffff, #fb4c2f, #ffad47, #fad165, #16a766, #43d692, #4a86e8, #a479e2, #f691b3, #f6c5be, #ffe6c7, #fef1d1, #b9e4d0, #c6f3de, #c9daf8, #e4d7f5, #fcdee8, #efa093, #ffd6a2, #fce8b3, #89d3b2, #a0eac9, #a4c2f4, #d0bcf1, #fbc8d9, #e66550, #ffbc6b, #fcda83, #44b984, #68dfa9, #6d9eeb, #b694e8, #f7a7c0, #cc3a21, #eaa041, #f2c960, #149e60, #3dc789, #3c78d8, #8e63ce, #e07798, #ac2b16, #cf8933, #d5ae49, #0b804b, #2a9c68, #285bac, #653e9b, #b65775, #822111, #a46a21, #aa8831, #076239, #1a764d, #1c4587, #41236d, #83334c", + "type": "string" + } + }, + "type": "object" + }, + "ListDraftsResponse": { + "id": "ListDraftsResponse", + "properties": { + "drafts": { + "description": "List of drafts.", + "items": { + "$ref": "Draft" + }, + "type": "array" + }, + "nextPageToken": { + "description": "Token to retrieve the next page of results in the list.", + "type": "string" + }, + "resultSizeEstimate": { + "description": "Estimated total number of results.", + "format": "uint32", + "type": "integer" + } + }, + "type": "object" + }, + "ListFiltersResponse": { + "description": "Response for the ListFilters method.", + "id": "ListFiltersResponse", + "properties": { + "filter": { + "description": "List of a user's filters.", + "items": { + "$ref": "Filter" + }, + "type": "array" + } + }, + "type": "object" + }, + "ListForwardingAddressesResponse": { + "description": "Response for the ListForwardingAddresses method.", + "id": "ListForwardingAddressesResponse", + "properties": { + "forwardingAddresses": { + "description": "List of addresses that may be used for forwarding.", + "items": { + "$ref": "ForwardingAddress" + }, + "type": "array" + } + }, + "type": "object" + }, + "ListHistoryResponse": { + "id": "ListHistoryResponse", + "properties": { + "history": { + "description": "List of history records. Any messages contained in the response will typically only have id and threadId fields populated.", + "items": { + "$ref": "History" + }, + "type": "array" + }, + "historyId": { + "description": "The ID of the mailbox's current history record.", + "format": "uint64", + "type": "string" + }, + "nextPageToken": { + "description": "Page token to retrieve the next page of results in the list.", + "type": "string" + } + }, + "type": "object" + }, + "ListLabelsResponse": { + "id": "ListLabelsResponse", + "properties": { + "labels": { + "description": "List of labels.", + "items": { + "$ref": "Label" + }, + "type": "array" + } + }, + "type": "object" + }, + "ListMessagesResponse": { + "id": "ListMessagesResponse", + "properties": { + "messages": { + "description": "List of messages.", + "items": { + "$ref": "Message" + }, + "type": "array" + }, + "nextPageToken": { + "description": "Token to retrieve the next page of results in the list.", + "type": "string" + }, + "resultSizeEstimate": { + "description": "Estimated total number of results.", + "format": "uint32", + "type": "integer" + } + }, + "type": "object" + }, + "ListSendAsResponse": { + "description": "Response for the ListSendAs method.", + "id": "ListSendAsResponse", + "properties": { + "sendAs": { + "description": "List of send-as aliases.", + "items": { + "$ref": "SendAs" + }, + "type": "array" + } + }, + "type": "object" + }, + "ListSmimeInfoResponse": { + "id": "ListSmimeInfoResponse", + "properties": { "smimeInfo": { - "methods": { - "delete": { - "id": "gmail.users.settings.sendAs.smimeInfo.delete", - "path": "{userId}/settings/sendAs/{sendAsEmail}/smimeInfo/{id}", - "httpMethod": "DELETE", - "description": "Deletes the specified S/MIME config for the specified send-as alias.", - "parameters": { - "id": { - "type": "string", - "description": "The immutable ID for the SmimeInfo.", - "required": true, - "location": "path" - }, - "sendAsEmail": { - "type": "string", - "description": "The email address that appears in the \"From:\" header for mail sent using this alias.", - "required": true, - "location": "path" - }, - "userId": { - "type": "string", - "description": "The user's email address. The special value me can be used to indicate the authenticated user.", - "default": "me", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "userId", - "sendAsEmail", - "id" - ], - "scopes": [ - "https://www.googleapis.com/auth/gmail.settings.basic", - "https://www.googleapis.com/auth/gmail.settings.sharing" - ] - }, - "get": { - "id": "gmail.users.settings.sendAs.smimeInfo.get", - "path": "{userId}/settings/sendAs/{sendAsEmail}/smimeInfo/{id}", - "httpMethod": "GET", - "description": "Gets the specified S/MIME config for the specified send-as alias.", - "parameters": { - "id": { - "type": "string", - "description": "The immutable ID for the SmimeInfo.", - "required": true, - "location": "path" - }, - "sendAsEmail": { - "type": "string", - "description": "The email address that appears in the \"From:\" header for mail sent using this alias.", - "required": true, - "location": "path" - }, - "userId": { - "type": "string", - "description": "The user's email address. The special value me can be used to indicate the authenticated user.", - "default": "me", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "userId", - "sendAsEmail", - "id" - ], - "response": { + "description": "List of SmimeInfo.", + "items": { "$ref": "SmimeInfo" - }, - "scopes": [ - "https://mail.google.com/", - "https://www.googleapis.com/auth/gmail.modify", - "https://www.googleapis.com/auth/gmail.readonly", - "https://www.googleapis.com/auth/gmail.settings.basic", - "https://www.googleapis.com/auth/gmail.settings.sharing" - ] }, - "insert": { - "id": "gmail.users.settings.sendAs.smimeInfo.insert", - "path": "{userId}/settings/sendAs/{sendAsEmail}/smimeInfo", - "httpMethod": "POST", - "description": "Insert (upload) the given S/MIME config for the specified send-as alias. Note that pkcs12 format is required for the key.", - "parameters": { - "sendAsEmail": { - "type": "string", - "description": "The email address that appears in the \"From:\" header for mail sent using this alias.", - "required": true, - "location": "path" - }, - "userId": { - "type": "string", - "description": "The user's email address. The special value me can be used to indicate the authenticated user.", - "default": "me", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "userId", - "sendAsEmail" - ], - "request": { - "$ref": "SmimeInfo" - }, - "response": { - "$ref": "SmimeInfo" - }, - "scopes": [ - "https://www.googleapis.com/auth/gmail.settings.basic", - "https://www.googleapis.com/auth/gmail.settings.sharing" - ] - }, - "list": { - "id": "gmail.users.settings.sendAs.smimeInfo.list", - "path": "{userId}/settings/sendAs/{sendAsEmail}/smimeInfo", - "httpMethod": "GET", - "description": "Lists S/MIME configs for the specified send-as alias.", - "parameters": { - "sendAsEmail": { - "type": "string", - "description": "The email address that appears in the \"From:\" header for mail sent using this alias.", - "required": true, - "location": "path" - }, - "userId": { - "type": "string", - "description": "The user's email address. The special value me can be used to indicate the authenticated user.", - "default": "me", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "userId", - "sendAsEmail" - ], - "response": { - "$ref": "ListSmimeInfoResponse" - }, - "scopes": [ - "https://mail.google.com/", - "https://www.googleapis.com/auth/gmail.modify", - "https://www.googleapis.com/auth/gmail.readonly", - "https://www.googleapis.com/auth/gmail.settings.basic", - "https://www.googleapis.com/auth/gmail.settings.sharing" - ] - }, - "setDefault": { - "id": "gmail.users.settings.sendAs.smimeInfo.setDefault", - "path": "{userId}/settings/sendAs/{sendAsEmail}/smimeInfo/{id}/setDefault", - "httpMethod": "POST", - "description": "Sets the default S/MIME config for the specified send-as alias.", - "parameters": { - "id": { - "type": "string", - "description": "The immutable ID for the SmimeInfo.", - "required": true, - "location": "path" - }, - "sendAsEmail": { - "type": "string", - "description": "The email address that appears in the \"From:\" header for mail sent using this alias.", - "required": true, - "location": "path" - }, - "userId": { - "type": "string", - "description": "The user's email address. The special value me can be used to indicate the authenticated user.", - "default": "me", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "userId", - "sendAsEmail", - "id" - ], - "scopes": [ - "https://www.googleapis.com/auth/gmail.settings.basic", - "https://www.googleapis.com/auth/gmail.settings.sharing" - ] - } - } + "type": "array" } - } - } - } + }, + "type": "object" }, - "threads": { - "methods": { - "delete": { - "id": "gmail.users.threads.delete", - "path": "{userId}/threads/{id}", - "httpMethod": "DELETE", - "description": "Immediately and permanently deletes the specified thread. This operation cannot be undone. Prefer threads.trash instead.", - "parameters": { - "id": { - "type": "string", - "description": "ID of the Thread to delete.", - "required": true, - "location": "path" + "ListThreadsResponse": { + "id": "ListThreadsResponse", + "properties": { + "nextPageToken": { + "description": "Page token to retrieve the next page of results in the list.", + "type": "string" }, - "userId": { - "type": "string", - "description": "The user's email address. The special value me can be used to indicate the authenticated user.", - "default": "me", - "required": true, - "location": "path" + "resultSizeEstimate": { + "description": "Estimated total number of results.", + "format": "uint32", + "type": "integer" + }, + "threads": { + "description": "List of threads.", + "items": { + "$ref": "Thread" + }, + "type": "array" } - }, - "parameterOrder": [ - "userId", - "id" - ], - "scopes": [ - "https://mail.google.com/" - ] }, - "get": { - "id": "gmail.users.threads.get", - "path": "{userId}/threads/{id}", - "httpMethod": "GET", - "description": "Gets the specified thread.", - "parameters": { - "format": { - "type": "string", - "description": "The format to return the messages in.", - "default": "full", - "enum": [ - "full", - "metadata", - "minimal" - ], - "enumDescriptions": [ - "", - "", - "" - ], - "location": "query" + "type": "object" + }, + "Message": { + "description": "An email message.", + "id": "Message", + "properties": { + "historyId": { + "description": "The ID of the last history record that modified this message.", + "format": "uint64", + "type": "string" }, "id": { - "type": "string", - "description": "The ID of the thread to retrieve.", - "required": true, - "location": "path" + "description": "The immutable ID of the message.", + "type": "string" }, - "metadataHeaders": { - "type": "string", - "description": "When given and format is METADATA, only include headers specified.", - "repeated": true, - "location": "query" - }, - "userId": { - "type": "string", - "description": "The user's email address. The special value me can be used to indicate the authenticated user.", - "default": "me", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "userId", - "id" - ], - "response": { - "$ref": "Thread" - }, - "scopes": [ - "https://mail.google.com/", - "https://www.googleapis.com/auth/gmail.metadata", - "https://www.googleapis.com/auth/gmail.modify", - "https://www.googleapis.com/auth/gmail.readonly" - ] - }, - "list": { - "id": "gmail.users.threads.list", - "path": "{userId}/threads", - "httpMethod": "GET", - "description": "Lists the threads in the user's mailbox.", - "parameters": { - "includeSpamTrash": { - "type": "boolean", - "description": "Include threads from SPAM and TRASH in the results.", - "default": "false", - "location": "query" + "internalDate": { + "description": "The internal message creation timestamp (epoch ms), which determines ordering in the inbox. For normal SMTP-received email, this represents the time the message was originally accepted by Google, which is more reliable than the Date header. However, for API-migrated mail, it can be configured by client to be based on the Date header.", + "format": "int64", + "type": "string" }, "labelIds": { - "type": "string", - "description": "Only return threads with labels that match all of the specified label IDs.", - "repeated": true, - "location": "query" + "description": "List of IDs of labels applied to this message.", + "items": { + "type": "string" + }, + "type": "array" }, - "maxResults": { - "type": "integer", - "description": "Maximum number of threads to return.", - "default": "100", - "format": "uint32", - "location": "query" + "payload": { + "$ref": "MessagePart", + "description": "The parsed email structure in the message parts." }, - "pageToken": { - "type": "string", - "description": "Page token to retrieve a specific page of results in the list.", - "location": "query" + "raw": { + "annotations": { + "required": [ + "gmail.users.drafts.create", + "gmail.users.drafts.update", + "gmail.users.messages.insert", + "gmail.users.messages.send" + ] + }, + "description": "The entire email message in an RFC 2822 formatted and base64url encoded string. Returned in messages.get and drafts.get responses when the format=RAW parameter is supplied.", + "format": "byte", + "type": "string" }, - "q": { - "type": "string", - "description": "Only return threads matching the specified query. Supports the same query format as the Gmail search box. For example, \"from:someuser@example.com rfc822msgid: is:unread\". Parameter cannot be used when accessing the api using the gmail.metadata scope.", - "location": "query" + "sizeEstimate": { + "description": "Estimated size in bytes of the message.", + "format": "int32", + "type": "integer" }, - "userId": { - "type": "string", - "description": "The user's email address. The special value me can be used to indicate the authenticated user.", - "default": "me", - "required": true, - "location": "path" + "snippet": { + "description": "A short part of the message text.", + "type": "string" + }, + "threadId": { + "description": "The ID of the thread the message belongs to. To add a message or draft to a thread, the following criteria must be met: \n- The requested threadId must be specified on the Message or Draft.Message you supply with your request. \n- The References and In-Reply-To headers must be set in compliance with the RFC 2822 standard. \n- The Subject headers must match.", + "type": "string" } - }, - "parameterOrder": [ - "userId" - ], - "response": { - "$ref": "ListThreadsResponse" - }, - "scopes": [ - "https://mail.google.com/", - "https://www.googleapis.com/auth/gmail.metadata", - "https://www.googleapis.com/auth/gmail.modify", - "https://www.googleapis.com/auth/gmail.readonly" - ] }, - "modify": { - "id": "gmail.users.threads.modify", - "path": "{userId}/threads/{id}/modify", - "httpMethod": "POST", - "description": "Modifies the labels applied to the thread. This applies to all messages in the thread.", - "parameters": { - "id": { - "type": "string", - "description": "The ID of the thread to modify.", - "required": true, - "location": "path" + "type": "object" + }, + "MessagePart": { + "description": "A single MIME message part.", + "id": "MessagePart", + "properties": { + "body": { + "$ref": "MessagePartBody", + "description": "The message part body for this part, which may be empty for container MIME message parts." }, - "userId": { - "type": "string", - "description": "The user's email address. The special value me can be used to indicate the authenticated user.", - "default": "me", - "required": true, - "location": "path" + "filename": { + "description": "The filename of the attachment. Only present if this message part represents an attachment.", + "type": "string" + }, + "headers": { + "description": "List of headers on this message part. For the top-level message part, representing the entire message payload, it will contain the standard RFC 2822 email headers such as To, From, and Subject.", + "items": { + "$ref": "MessagePartHeader" + }, + "type": "array" + }, + "mimeType": { + "description": "The MIME type of the message part.", + "type": "string" + }, + "partId": { + "description": "The immutable ID of the message part.", + "type": "string" + }, + "parts": { + "description": "The child MIME message parts of this part. This only applies to container MIME message parts, for example multipart/*. For non- container MIME message part types, such as text/plain, this field is empty. For more information, see RFC 1521.", + "items": { + "$ref": "MessagePart" + }, + "type": "array" } - }, - "parameterOrder": [ - "userId", - "id" - ], - "request": { - "$ref": "ModifyThreadRequest" - }, - "response": { - "$ref": "Thread" - }, - "scopes": [ - "https://mail.google.com/", - "https://www.googleapis.com/auth/gmail.modify" - ] }, - "trash": { - "id": "gmail.users.threads.trash", - "path": "{userId}/threads/{id}/trash", - "httpMethod": "POST", - "description": "Moves the specified thread to the trash.", - "parameters": { - "id": { - "type": "string", - "description": "The ID of the thread to Trash.", - "required": true, - "location": "path" + "type": "object" + }, + "MessagePartBody": { + "description": "The body of a single MIME message part.", + "id": "MessagePartBody", + "properties": { + "attachmentId": { + "description": "When present, contains the ID of an external attachment that can be retrieved in a separate messages.attachments.get request. When not present, the entire content of the message part body is contained in the data field.", + "type": "string" }, - "userId": { - "type": "string", - "description": "The user's email address. The special value me can be used to indicate the authenticated user.", - "default": "me", - "required": true, - "location": "path" + "data": { + "description": "The body data of a MIME message part as a base64url encoded string. May be empty for MIME container types that have no message body or when the body data is sent as a separate attachment. An attachment ID is present if the body data is contained in a separate attachment.", + "format": "byte", + "type": "string" + }, + "size": { + "description": "Number of bytes for the message part data (encoding notwithstanding).", + "format": "int32", + "type": "integer" } - }, - "parameterOrder": [ - "userId", - "id" - ], - "response": { - "$ref": "Thread" - }, - "scopes": [ - "https://mail.google.com/", - "https://www.googleapis.com/auth/gmail.modify" - ] }, - "untrash": { - "id": "gmail.users.threads.untrash", - "path": "{userId}/threads/{id}/untrash", - "httpMethod": "POST", - "description": "Removes the specified thread from the trash.", - "parameters": { - "id": { - "type": "string", - "description": "The ID of the thread to remove from Trash.", - "required": true, - "location": "path" + "type": "object" + }, + "MessagePartHeader": { + "id": "MessagePartHeader", + "properties": { + "name": { + "description": "The name of the header before the : separator. For example, To.", + "type": "string" }, - "userId": { - "type": "string", - "description": "The user's email address. The special value me can be used to indicate the authenticated user.", - "default": "me", - "required": true, - "location": "path" + "value": { + "description": "The value of the header after the : separator. For example, someuser@example.com.", + "type": "string" } - }, - "parameterOrder": [ - "userId", - "id" - ], - "response": { - "$ref": "Thread" - }, - "scopes": [ - "https://mail.google.com/", - "https://www.googleapis.com/auth/gmail.modify" - ] - } - } + }, + "type": "object" + }, + "ModifyMessageRequest": { + "id": "ModifyMessageRequest", + "properties": { + "addLabelIds": { + "description": "A list of IDs of labels to add to this message.", + "items": { + "type": "string" + }, + "type": "array" + }, + "removeLabelIds": { + "description": "A list IDs of labels to remove from this message.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "ModifyThreadRequest": { + "id": "ModifyThreadRequest", + "properties": { + "addLabelIds": { + "description": "A list of IDs of labels to add to this thread.", + "items": { + "type": "string" + }, + "type": "array" + }, + "removeLabelIds": { + "description": "A list of IDs of labels to remove from this thread.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "PopSettings": { + "description": "POP settings for an account.", + "id": "PopSettings", + "properties": { + "accessWindow": { + "description": "The range of messages which are accessible via POP.", + "enum": [ + "accessWindowUnspecified", + "allMail", + "disabled", + "fromNowOn" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ], + "type": "string" + }, + "disposition": { + "description": "The action that will be executed on a message after it has been fetched via POP.", + "enum": [ + "archive", + "dispositionUnspecified", + "leaveInInbox", + "markRead", + "trash" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "Profile": { + "description": "Profile for a Gmail user.", + "id": "Profile", + "properties": { + "emailAddress": { + "description": "The user's email address.", + "type": "string" + }, + "historyId": { + "description": "The ID of the mailbox's current history record.", + "format": "uint64", + "type": "string" + }, + "messagesTotal": { + "description": "The total number of messages in the mailbox.", + "format": "int32", + "type": "integer" + }, + "threadsTotal": { + "description": "The total number of threads in the mailbox.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "SendAs": { + "description": "Settings associated with a send-as alias, which can be either the primary login address associated with the account or a custom \"from\" address. Send-as aliases correspond to the \"Send Mail As\" feature in the web interface.", + "id": "SendAs", + "properties": { + "displayName": { + "description": "A name that appears in the \"From:\" header for mail sent using this alias. For custom \"from\" addresses, when this is empty, Gmail will populate the \"From:\" header with the name that is used for the primary address associated with the account. If the admin has disabled the ability for users to update their name format, requests to update this field for the primary login will silently fail.", + "type": "string" + }, + "isDefault": { + "description": "Whether this address is selected as the default \"From:\" address in situations such as composing a new message or sending a vacation auto-reply. Every Gmail account has exactly one default send-as address, so the only legal value that clients may write to this field is true. Changing this from false to true for an address will result in this field becoming false for the other previous default address.", + "type": "boolean" + }, + "isPrimary": { + "description": "Whether this address is the primary address used to login to the account. Every Gmail account has exactly one primary address, and it cannot be deleted from the collection of send-as aliases. This field is read-only.", + "type": "boolean" + }, + "replyToAddress": { + "description": "An optional email address that is included in a \"Reply-To:\" header for mail sent using this alias. If this is empty, Gmail will not generate a \"Reply-To:\" header.", + "type": "string" + }, + "sendAsEmail": { + "description": "The email address that appears in the \"From:\" header for mail sent using this alias. This is read-only for all operations except create.", + "type": "string" + }, + "signature": { + "description": "An optional HTML signature that is included in messages composed with this alias in the Gmail web UI.", + "type": "string" + }, + "smtpMsa": { + "$ref": "SmtpMsa", + "description": "An optional SMTP service that will be used as an outbound relay for mail sent using this alias. If this is empty, outbound mail will be sent directly from Gmail's servers to the destination SMTP service. This setting only applies to custom \"from\" aliases." + }, + "treatAsAlias": { + "description": "Whether Gmail should treat this address as an alias for the user's primary email address. This setting only applies to custom \"from\" aliases.", + "type": "boolean" + }, + "verificationStatus": { + "description": "Indicates whether this address has been verified for use as a send-as alias. Read-only. This setting only applies to custom \"from\" aliases.", + "enum": [ + "accepted", + "pending", + "verificationStatusUnspecified" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "SmimeInfo": { + "description": "An S/MIME email config.", + "id": "SmimeInfo", + "properties": { + "encryptedKeyPassword": { + "description": "Encrypted key password, when key is encrypted.", + "type": "string" + }, + "expiration": { + "description": "When the certificate expires (in milliseconds since epoch).", + "format": "int64", + "type": "string" + }, + "id": { + "description": "The immutable ID for the SmimeInfo.", + "type": "string" + }, + "isDefault": { + "description": "Whether this SmimeInfo is the default one for this user's send-as address.", + "type": "boolean" + }, + "issuerCn": { + "description": "The S/MIME certificate issuer's common name.", + "type": "string" + }, + "pem": { + "description": "PEM formatted X509 concatenated certificate string (standard base64 encoding). Format used for returning key, which includes public key as well as certificate chain (not private key).", + "type": "string" + }, + "pkcs12": { + "description": "PKCS#12 format containing a single private/public key pair and certificate chain. This format is only accepted from client for creating a new SmimeInfo and is never returned, because the private key is not intended to be exported. PKCS#12 may be encrypted, in which case encryptedKeyPassword should be set appropriately.", + "format": "byte", + "type": "string" + } + }, + "type": "object" + }, + "SmtpMsa": { + "description": "Configuration for communication with an SMTP service.", + "id": "SmtpMsa", + "properties": { + "host": { + "description": "The hostname of the SMTP service. Required.", + "type": "string" + }, + "password": { + "description": "The password that will be used for authentication with the SMTP service. This is a write-only field that can be specified in requests to create or update SendAs settings; it is never populated in responses.", + "type": "string" + }, + "port": { + "description": "The port of the SMTP service. Required.", + "format": "int32", + "type": "integer" + }, + "securityMode": { + "description": "The protocol that will be used to secure communication with the SMTP service. Required.", + "enum": [ + "none", + "securityModeUnspecified", + "ssl", + "starttls" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ], + "type": "string" + }, + "username": { + "description": "The username that will be used for authentication with the SMTP service. This is a write-only field that can be specified in requests to create or update SendAs settings; it is never populated in responses.", + "type": "string" + } + }, + "type": "object" + }, + "Thread": { + "description": "A collection of messages representing a conversation.", + "id": "Thread", + "properties": { + "historyId": { + "description": "The ID of the last history record that modified this thread.", + "format": "uint64", + "type": "string" + }, + "id": { + "description": "The unique ID of the thread.", + "type": "string" + }, + "messages": { + "description": "The list of messages in the thread.", + "items": { + "$ref": "Message" + }, + "type": "array" + }, + "snippet": { + "description": "A short part of the message text.", + "type": "string" + } + }, + "type": "object" + }, + "VacationSettings": { + "description": "Vacation auto-reply settings for an account. These settings correspond to the \"Vacation responder\" feature in the web interface.", + "id": "VacationSettings", + "properties": { + "enableAutoReply": { + "description": "Flag that controls whether Gmail automatically replies to messages.", + "type": "boolean" + }, + "endTime": { + "description": "An optional end time for sending auto-replies (epoch ms). When this is specified, Gmail will automatically reply only to messages that it receives before the end time. If both startTime and endTime are specified, startTime must precede endTime.", + "format": "int64", + "type": "string" + }, + "responseBodyHtml": { + "description": "Response body in HTML format. Gmail will sanitize the HTML before storing it.", + "type": "string" + }, + "responseBodyPlainText": { + "description": "Response body in plain text format.", + "type": "string" + }, + "responseSubject": { + "description": "Optional text to prepend to the subject line in vacation responses. In order to enable auto-replies, either the response subject or the response body must be nonempty.", + "type": "string" + }, + "restrictToContacts": { + "description": "Flag that determines whether responses are sent to recipients who are not in the user's list of contacts.", + "type": "boolean" + }, + "restrictToDomain": { + "description": "Flag that determines whether responses are sent to recipients who are outside of the user's domain. This feature is only available for G Suite users.", + "type": "boolean" + }, + "startTime": { + "description": "An optional start time for sending auto-replies (epoch ms). When this is specified, Gmail will automatically reply only to messages that it receives after the start time. If both startTime and endTime are specified, startTime must precede endTime.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "WatchRequest": { + "description": "Set up or update a new push notification watch on this user's mailbox.", + "id": "WatchRequest", + "properties": { + "labelFilterAction": { + "description": "Filtering behavior of labelIds list specified.", + "enum": [ + "exclude", + "include" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "labelIds": { + "description": "List of label_ids to restrict notifications about. By default, if unspecified, all changes are pushed out. If specified then dictates which labels are required for a push notification to be generated.", + "items": { + "type": "string" + }, + "type": "array" + }, + "topicName": { + "description": "A fully qualified Google Cloud Pub/Sub API topic name to publish the events to. This topic name **must** already exist in Cloud Pub/Sub and you **must** have already granted gmail \"publish\" permission on it. For example, \"projects/my-project-identifier/topics/my-topic-name\" (using the Cloud Pub/Sub \"v1\" topic naming format).\n\nNote that the \"my-project-identifier\" portion must exactly match your Google developer project id (the one executing this watch request).", + "type": "string" + } + }, + "type": "object" + }, + "WatchResponse": { + "description": "Push notification watch response.", + "id": "WatchResponse", + "properties": { + "expiration": { + "description": "When Gmail will stop sending notifications for mailbox updates (epoch millis). Call watch again before this time to renew the watch.", + "format": "int64", + "type": "string" + }, + "historyId": { + "description": "The ID of the mailbox's current history record.", + "format": "uint64", + "type": "string" + } + }, + "type": "object" } - } - } - } -} + }, + "servicePath": "gmail/v1/users/", + "title": "Gmail API", + "version": "v1" +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/gmail/v1/gmail-gen.go b/vendor/google.golang.org/api/gmail/v1/gmail-gen.go index 4a2296407..e1da72e82 100644 --- a/vendor/google.golang.org/api/gmail/v1/gmail-gen.go +++ b/vendor/google.golang.org/api/gmail/v1/gmail-gen.go @@ -789,6 +789,10 @@ func (s *ImapSettings) MarshalJSON() ([]byte, error) { // Label: Labels are used to categorize messages and threads within the // user's mailbox. type Label struct { + // Color: The color to assign to the label. Color is only available for + // labels that have their type set to user. + Color *LabelColor `json:"color,omitempty"` + // Id: The immutable ID of the label. Id string `json:"id,omitempty"` @@ -843,7 +847,7 @@ type Label struct { // server. googleapi.ServerResponse `json:"-"` - // ForceSendFields is a list of field names (e.g. "Id") to + // ForceSendFields is a list of field names (e.g. "Color") to // unconditionally include in API requests. By default, fields with // empty values are omitted from API requests. However, any non-pointer, // non-interface field appearing in ForceSendFields will be sent to the @@ -851,7 +855,7 @@ type Label struct { // used to include empty fields in Patch requests. ForceSendFields []string `json:"-"` - // NullFields is a list of field names (e.g. "Id") to include in API + // NullFields is a list of field names (e.g. "Color") to include in API // requests with the JSON null value. By default, fields with empty // values are omitted from API requests. However, any field with an // empty value appearing in NullFields will be sent to the server as @@ -866,6 +870,62 @@ func (s *Label) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +type LabelColor struct { + // BackgroundColor: The background color represented as hex string + // #RRGGBB (ex #000000). This field is required in order to set the + // color of a label. Only the following predefined set of color values + // are allowed: + // #000000, #434343, #666666, #999999, #cccccc, #efefef, #f3f3f3, + // #ffffff, #fb4c2f, #ffad47, #fad165, #16a766, #43d692, #4a86e8, + // #a479e2, #f691b3, #f6c5be, #ffe6c7, #fef1d1, #b9e4d0, #c6f3de, + // #c9daf8, #e4d7f5, #fcdee8, #efa093, #ffd6a2, #fce8b3, #89d3b2, + // #a0eac9, #a4c2f4, #d0bcf1, #fbc8d9, #e66550, #ffbc6b, #fcda83, + // #44b984, #68dfa9, #6d9eeb, #b694e8, #f7a7c0, #cc3a21, #eaa041, + // #f2c960, #149e60, #3dc789, #3c78d8, #8e63ce, #e07798, #ac2b16, + // #cf8933, #d5ae49, #0b804b, #2a9c68, #285bac, #653e9b, #b65775, + // #822111, #a46a21, #aa8831, #076239, #1a764d, #1c4587, #41236d, + // #83334c + BackgroundColor string `json:"backgroundColor,omitempty"` + + // TextColor: The text color of the label, represented as hex string. + // This field is required in order to set the color of a label. Only the + // following predefined set of color values are allowed: + // #000000, #434343, #666666, #999999, #cccccc, #efefef, #f3f3f3, + // #ffffff, #fb4c2f, #ffad47, #fad165, #16a766, #43d692, #4a86e8, + // #a479e2, #f691b3, #f6c5be, #ffe6c7, #fef1d1, #b9e4d0, #c6f3de, + // #c9daf8, #e4d7f5, #fcdee8, #efa093, #ffd6a2, #fce8b3, #89d3b2, + // #a0eac9, #a4c2f4, #d0bcf1, #fbc8d9, #e66550, #ffbc6b, #fcda83, + // #44b984, #68dfa9, #6d9eeb, #b694e8, #f7a7c0, #cc3a21, #eaa041, + // #f2c960, #149e60, #3dc789, #3c78d8, #8e63ce, #e07798, #ac2b16, + // #cf8933, #d5ae49, #0b804b, #2a9c68, #285bac, #653e9b, #b65775, + // #822111, #a46a21, #aa8831, #076239, #1a764d, #1c4587, #41236d, + // #83334c + TextColor string `json:"textColor,omitempty"` + + // ForceSendFields is a list of field names (e.g. "BackgroundColor") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "BackgroundColor") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *LabelColor) MarshalJSON() ([]byte, error) { + type NoMethod LabelColor + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + type ListDraftsResponse struct { // Drafts: List of drafts. Drafts []*Draft `json:"drafts,omitempty"` @@ -1536,7 +1596,9 @@ type SendAs struct { // DisplayName: A name that appears in the "From:" header for mail sent // using this alias. For custom "from" addresses, when this is empty, // Gmail will populate the "From:" header with the name that is used for - // the primary address associated with the account. + // the primary address associated with the account. If the admin has + // disabled the ability for users to update their name format, requests + // to update this field for the primary login will silently fail. DisplayName string `json:"displayName,omitempty"` // IsDefault: Whether this address is selected as the default "From:" @@ -2413,11 +2475,12 @@ func (c *UsersDraftsCreateCall) doRequest(alt string) (*http.Response, error) { body = new(bytes.Buffer) reqHeaders.Set("Content-Type", "application/json") } - body, cleanup := c.mediaInfo_.UploadRequest(reqHeaders, body) + body, getBody, cleanup := c.mediaInfo_.UploadRequest(reqHeaders, body) defer cleanup() urls += "?" + c.urlParams_.Encode() req, _ := http.NewRequest("POST", urls, body) req.Header = reqHeaders + gensupport.SetGetBody(req, getBody) googleapi.Expand(req.URL, map[string]string{ "userId": c.userId, }) @@ -3140,11 +3203,12 @@ func (c *UsersDraftsSendCall) doRequest(alt string) (*http.Response, error) { body = new(bytes.Buffer) reqHeaders.Set("Content-Type", "application/json") } - body, cleanup := c.mediaInfo_.UploadRequest(reqHeaders, body) + body, getBody, cleanup := c.mediaInfo_.UploadRequest(reqHeaders, body) defer cleanup() urls += "?" + c.urlParams_.Encode() req, _ := http.NewRequest("POST", urls, body) req.Header = reqHeaders + gensupport.SetGetBody(req, getBody) googleapi.Expand(req.URL, map[string]string{ "userId": c.userId, }) @@ -3362,11 +3426,12 @@ func (c *UsersDraftsUpdateCall) doRequest(alt string) (*http.Response, error) { body = new(bytes.Buffer) reqHeaders.Set("Content-Type", "application/json") } - body, cleanup := c.mediaInfo_.UploadRequest(reqHeaders, body) + body, getBody, cleanup := c.mediaInfo_.UploadRequest(reqHeaders, body) defer cleanup() urls += "?" + c.urlParams_.Encode() req, _ := http.NewRequest("PUT", urls, body) req.Header = reqHeaders + gensupport.SetGetBody(req, getBody) googleapi.Expand(req.URL, map[string]string{ "userId": c.userId, "id": c.id, @@ -5231,11 +5296,12 @@ func (c *UsersMessagesImportCall) doRequest(alt string) (*http.Response, error) body = new(bytes.Buffer) reqHeaders.Set("Content-Type", "application/json") } - body, cleanup := c.mediaInfo_.UploadRequest(reqHeaders, body) + body, getBody, cleanup := c.mediaInfo_.UploadRequest(reqHeaders, body) defer cleanup() urls += "?" + c.urlParams_.Encode() req, _ := http.NewRequest("POST", urls, body) req.Header = reqHeaders + gensupport.SetGetBody(req, getBody) googleapi.Expand(req.URL, map[string]string{ "userId": c.userId, }) @@ -5504,11 +5570,12 @@ func (c *UsersMessagesInsertCall) doRequest(alt string) (*http.Response, error) body = new(bytes.Buffer) reqHeaders.Set("Content-Type", "application/json") } - body, cleanup := c.mediaInfo_.UploadRequest(reqHeaders, body) + body, getBody, cleanup := c.mediaInfo_.UploadRequest(reqHeaders, body) defer cleanup() urls += "?" + c.urlParams_.Encode() req, _ := http.NewRequest("POST", urls, body) req.Header = reqHeaders + gensupport.SetGetBody(req, getBody) googleapi.Expand(req.URL, map[string]string{ "userId": c.userId, }) @@ -6119,11 +6186,12 @@ func (c *UsersMessagesSendCall) doRequest(alt string) (*http.Response, error) { body = new(bytes.Buffer) reqHeaders.Set("Content-Type", "application/json") } - body, cleanup := c.mediaInfo_.UploadRequest(reqHeaders, body) + body, getBody, cleanup := c.mediaInfo_.UploadRequest(reqHeaders, body) defer cleanup() urls += "?" + c.urlParams_.Encode() req, _ := http.NewRequest("POST", urls, body) req.Header = reqHeaders + gensupport.SetGetBody(req, getBody) googleapi.Expand(req.URL, map[string]string{ "userId": c.userId, }) diff --git a/vendor/google.golang.org/api/google-api-go-generator/clients_test.go b/vendor/google.golang.org/api/google-api-go-generator/clients_test.go index 7f6457a86..34da59e51 100644 --- a/vendor/google.golang.org/api/google-api-go-generator/clients_test.go +++ b/vendor/google.golang.org/api/google-api-go-generator/clients_test.go @@ -30,14 +30,14 @@ import ( "golang.org/x/net/context" // If you add a client, add a matching go:generate line below. - dfa "google.golang.org/api/dfareporting/v2.7" + dfa "google.golang.org/api/dfareporting/v2.8" mon "google.golang.org/api/monitoring/v3" storage "google.golang.org/api/storage/v1" ) //go:generate -command api go run gen.go docurls.go -install -api -//go:generate api dfareporting:v2.7 +//go:generate api dfareporting:v2.8 //go:generate api monitoring:v3 //go:generate api storage:v1 diff --git a/vendor/google.golang.org/api/google-api-go-generator/gen.go b/vendor/google.golang.org/api/google-api-go-generator/gen.go index 45434f96f..6cdb6494b 100644 --- a/vendor/google.golang.org/api/google-api-go-generator/gen.go +++ b/vendor/google.golang.org/api/google-api-go-generator/gen.go @@ -30,7 +30,7 @@ import ( const ( googleDiscoveryURL = "https://www.googleapis.com/discovery/v1/apis" - generatorVersion = "20170210" + generatorVersion = "2018018" ) var ( @@ -450,6 +450,19 @@ func (a *API) jsonBytes() []byte { } } else { slurp = slurpURL(a.DiscoveryURL()) + if slurp != nil { + // Make sure that keys are sorted by re-marshalling. + d := make(map[string]interface{}) + json.Unmarshal(slurp, &d) + if err != nil { + log.Fatal(err) + } + var err error + slurp, err = json.MarshalIndent(d, "", " ") + if err != nil { + log.Fatal(err) + } + } } a.forceJSON = slurp } @@ -1841,12 +1854,15 @@ func (meth *Method) generateCode() { pn(" body = new(bytes.Buffer)") pn(` reqHeaders.Set("Content-Type", "application/json")`) pn("}") - pn("body, cleanup := c.mediaInfo_.UploadRequest(reqHeaders, body)") + pn("body, getBody, cleanup := c.mediaInfo_.UploadRequest(reqHeaders, body)") pn("defer cleanup()") } pn("urls += \"?\" + c.urlParams_.Encode()") pn("req, _ := http.NewRequest(%q, urls, body)", httpMethod) pn("req.Header = reqHeaders") + if meth.supportsMediaUpload() { + pn("gensupport.SetGetBody(req, getBody)") + } // Replace param values after NewRequest to avoid reencoding them. // E.g. Cloud Storage API requires '%2F' in entity param to be kept, but url.Parse replaces it with '/'. @@ -2129,6 +2145,8 @@ func (a *argument) exprAsString(prefix string) string { return "strconv.FormatInt(" + prefix + a.goname + ", 10)" case "uint64": return "strconv.FormatUint(" + prefix + a.goname + ", 10)" + case "bool": + return "strconv.FormatBool(" + prefix + a.goname + ")" } log.Panicf("unknown type: apitype=%q, gotype=%q", a.apitype, a.gotype) return "" diff --git a/vendor/google.golang.org/api/groupsmigration/v1/groupsmigration-api.json b/vendor/google.golang.org/api/groupsmigration/v1/groupsmigration-api.json index 9f4df0064..dbe4880e2 100644 --- a/vendor/google.golang.org/api/groupsmigration/v1/groupsmigration-api.json +++ b/vendor/google.golang.org/api/groupsmigration/v1/groupsmigration-api.json @@ -1,143 +1,143 @@ { - "kind": "discovery#restDescription", - "etag": "\"YWOzh2SDasdU84ArJnpYek-OMdg/VuTEwIALyLFp_kdXuKsAPvednIM\"", - "discoveryVersion": "v1", - "id": "groupsmigration:v1", - "name": "groupsmigration", - "canonicalName": "Groups Migration", - "version": "v1", - "revision": "20170607", - "title": "Groups Migration API", - "description": "Groups Migration Api.", - "ownerDomain": "google.com", - "ownerName": "Google", - "icons": { - "x16": "https://www.google.com/images/icons/product/discussions-16.gif", - "x32": "https://www.google.com/images/icons/product/discussions-32.gif" - }, - "documentationLink": "https://developers.google.com/google-apps/groups-migration/", - "protocol": "rest", - "baseUrl": "https://www.googleapis.com/groups/v1/groups/", - "basePath": "/groups/v1/groups/", - "rootUrl": "https://www.googleapis.com/", - "servicePath": "groups/v1/groups/", - "batchPath": "batch/groupsmigration/v1", - "parameters": { - "alt": { - "type": "string", - "description": "Data format for the response.", - "default": "json", - "enum": [ - "json" - ], - "enumDescriptions": [ - "Responses with Content-Type of application/json" - ], - "location": "query" - }, - "fields": { - "type": "string", - "description": "Selector specifying which fields to include in a partial response.", - "location": "query" - }, - "key": { - "type": "string", - "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" - }, - "oauth_token": { - "type": "string", - "description": "OAuth 2.0 token for the current user.", - "location": "query" - }, - "prettyPrint": { - "type": "boolean", - "description": "Returns response with indentations and line breaks.", - "default": "true", - "location": "query" - }, - "quotaUser": { - "type": "string", - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", - "location": "query" - }, - "userIp": { - "type": "string", - "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", - "location": "query" - } - }, - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/apps.groups.migration": { - "description": "Manage messages in groups on your domain" - } - } - } - }, - "schemas": { - "Groups": { - "id": "Groups", - "type": "object", - "description": "JSON response template for groups migration API.", - "properties": { - "kind": { - "type": "string", - "description": "The kind of insert resource this is.", - "default": "groupsmigration#groups" - }, - "responseCode": { - "type": "string", - "description": "The status of the insert request." - } - } - } - }, - "resources": { - "archive": { - "methods": { - "insert": { - "id": "groupsmigration.archive.insert", - "path": "{groupId}/archive", - "httpMethod": "POST", - "description": "Inserts a new mail into the archive of the Google group.", - "parameters": { - "groupId": { - "type": "string", - "description": "The group ID", - "required": true, - "location": "path" + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/apps.groups.migration": { + "description": "Manage messages in groups on your domain" + } } - }, - "parameterOrder": [ - "groupId" - ], - "response": { - "$ref": "Groups" - }, - "scopes": [ - "https://www.googleapis.com/auth/apps.groups.migration" - ], - "supportsMediaUpload": true, - "mediaUpload": { - "accept": [ - "message/rfc822" + } + }, + "basePath": "/groups/v1/groups/", + "baseUrl": "https://www.googleapis.com/groups/v1/groups/", + "batchPath": "batch/groupsmigration/v1", + "canonicalName": "Groups Migration", + "description": "Groups Migration Api.", + "discoveryVersion": "v1", + "documentationLink": "https://developers.google.com/google-apps/groups-migration/", + "etag": "\"-iA1DTNe4s-I6JZXPt1t1Ypy8IU/VuTEwIALyLFp_kdXuKsAPvednIM\"", + "icons": { + "x16": "https://www.google.com/images/icons/product/discussions-16.gif", + "x32": "https://www.google.com/images/icons/product/discussions-32.gif" + }, + "id": "groupsmigration:v1", + "kind": "discovery#restDescription", + "name": "groupsmigration", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "alt": { + "default": "json", + "description": "Data format for the response.", + "enum": [ + "json" ], - "maxSize": "16MB", - "protocols": { - "simple": { - "multipart": true, - "path": "/upload/groups/v1/groups/{groupId}/archive" - }, - "resumable": { - "multipart": true, - "path": "/resumable/upload/groups/v1/groups/{groupId}/archive" - } - } - } + "enumDescriptions": [ + "Responses with Content-Type of application/json" + ], + "location": "query", + "type": "string" + }, + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "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.", + "location": "query", + "type": "string" + }, + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", + "location": "query", + "type": "string" + }, + "userIp": { + "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", + "location": "query", + "type": "string" } - } - } - } -} + }, + "protocol": "rest", + "resources": { + "archive": { + "methods": { + "insert": { + "description": "Inserts a new mail into the archive of the Google group.", + "httpMethod": "POST", + "id": "groupsmigration.archive.insert", + "mediaUpload": { + "accept": [ + "message/rfc822" + ], + "maxSize": "16MB", + "protocols": { + "resumable": { + "multipart": true, + "path": "/resumable/upload/groups/v1/groups/{groupId}/archive" + }, + "simple": { + "multipart": true, + "path": "/upload/groups/v1/groups/{groupId}/archive" + } + } + }, + "parameterOrder": [ + "groupId" + ], + "parameters": { + "groupId": { + "description": "The group ID", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{groupId}/archive", + "response": { + "$ref": "Groups" + }, + "scopes": [ + "https://www.googleapis.com/auth/apps.groups.migration" + ], + "supportsMediaUpload": true + } + } + } + }, + "revision": "20170607", + "rootUrl": "https://www.googleapis.com/", + "schemas": { + "Groups": { + "description": "JSON response template for groups migration API.", + "id": "Groups", + "properties": { + "kind": { + "default": "groupsmigration#groups", + "description": "The kind of insert resource this is.", + "type": "string" + }, + "responseCode": { + "description": "The status of the insert request.", + "type": "string" + } + }, + "type": "object" + } + }, + "servicePath": "groups/v1/groups/", + "title": "Groups Migration API", + "version": "v1" +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/groupsmigration/v1/groupsmigration-gen.go b/vendor/google.golang.org/api/groupsmigration/v1/groupsmigration-gen.go index a0bf090ca..4b0da1c0a 100644 --- a/vendor/google.golang.org/api/groupsmigration/v1/groupsmigration-gen.go +++ b/vendor/google.golang.org/api/groupsmigration/v1/groupsmigration-gen.go @@ -218,11 +218,12 @@ func (c *ArchiveInsertCall) doRequest(alt string) (*http.Response, error) { body = new(bytes.Buffer) reqHeaders.Set("Content-Type", "application/json") } - body, cleanup := c.mediaInfo_.UploadRequest(reqHeaders, body) + body, getBody, cleanup := c.mediaInfo_.UploadRequest(reqHeaders, body) defer cleanup() urls += "?" + c.urlParams_.Encode() req, _ := http.NewRequest("POST", urls, body) req.Header = reqHeaders + gensupport.SetGetBody(req, getBody) googleapi.Expand(req.URL, map[string]string{ "groupId": c.groupId, }) diff --git a/vendor/google.golang.org/api/groupssettings/v1/groupssettings-api.json b/vendor/google.golang.org/api/groupssettings/v1/groupssettings-api.json index 2afb79fb5..4f1af63a6 100644 --- a/vendor/google.golang.org/api/groupssettings/v1/groupssettings-api.json +++ b/vendor/google.golang.org/api/groupssettings/v1/groupssettings-api.json @@ -1,296 +1,296 @@ { - "kind": "discovery#restDescription", - "etag": "\"YWOzh2SDasdU84ArJnpYek-OMdg/OtGmapWnnxLrnB8PsHnXNA0QJ0I\"", - "discoveryVersion": "v1", - "id": "groupssettings:v1", - "name": "groupssettings", - "version": "v1", - "revision": "20170607", - "title": "Groups Settings API", - "description": "Lets you manage permission levels and related settings of a group.", - "ownerDomain": "google.com", - "ownerName": "Google", - "icons": { - "x16": "https://www.gstatic.com/images/branding/product/1x/googleg_16dp.png", - "x32": "https://www.gstatic.com/images/branding/product/1x/googleg_32dp.png" - }, - "documentationLink": "https://developers.google.com/google-apps/groups-settings/get_started", - "protocol": "rest", - "baseUrl": "https://www.googleapis.com/groups/v1/groups/", - "basePath": "/groups/v1/groups/", - "rootUrl": "https://www.googleapis.com/", - "servicePath": "groups/v1/groups/", - "batchPath": "batch/groupssettings/v1", - "parameters": { - "alt": { - "type": "string", - "description": "Data format for the response.", - "default": "atom", - "enum": [ - "atom", - "json" - ], - "enumDescriptions": [ - "Responses with Content-Type of application/atom+xml", - "Responses with Content-Type of application/json" - ], - "location": "query" - }, - "fields": { - "type": "string", - "description": "Selector specifying which fields to include in a partial response.", - "location": "query" - }, - "key": { - "type": "string", - "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" - }, - "oauth_token": { - "type": "string", - "description": "OAuth 2.0 token for the current user.", - "location": "query" - }, - "prettyPrint": { - "type": "boolean", - "description": "Returns response with indentations and line breaks.", - "default": "true", - "location": "query" - }, - "quotaUser": { - "type": "string", - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", - "location": "query" - }, - "userIp": { - "type": "string", - "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", - "location": "query" - } - }, - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/apps.groups.settings": { - "description": "View and manage the settings of a G Suite group" - } - } - } - }, - "schemas": { - "Groups": { - "id": "Groups", - "type": "object", - "description": "JSON template for Group resource", - "properties": { - "allowExternalMembers": { - "type": "string", - "description": "Are external members allowed to join the group." - }, - "allowGoogleCommunication": { - "type": "string", - "description": "Is google allowed to contact admins." - }, - "allowWebPosting": { - "type": "string", - "description": "If posting from web is allowed." - }, - "archiveOnly": { - "type": "string", - "description": "If the group is archive only" - }, - "customFooterText": { - "type": "string", - "description": "Custom footer text." - }, - "customReplyTo": { - "type": "string", - "description": "Default email to which reply to any message should go." - }, - "defaultMessageDenyNotificationText": { - "type": "string", - "description": "Default message deny notification message" - }, - "description": { - "type": "string", - "description": "Description of the group" - }, - "email": { - "type": "string", - "description": "Email id of the group" - }, - "includeCustomFooter": { - "type": "string", - "description": "Whether to include custom footer." - }, - "includeInGlobalAddressList": { - "type": "string", - "description": "If this groups should be included in global address list or not." - }, - "isArchived": { - "type": "string", - "description": "If the contents of the group are archived." - }, - "kind": { - "type": "string", - "description": "The type of the resource.", - "default": "groupsSettings#groups" - }, - "maxMessageBytes": { - "type": "integer", - "description": "Maximum message size allowed.", - "format": "int32" - }, - "membersCanPostAsTheGroup": { - "type": "string", - "description": "Can members post using the group email address." - }, - "messageDisplayFont": { - "type": "string", - "description": "Default message display font. Possible values are: DEFAULT_FONT FIXED_WIDTH_FONT" - }, - "messageModerationLevel": { - "type": "string", - "description": "Moderation level for messages. Possible values are: MODERATE_ALL_MESSAGES MODERATE_NON_MEMBERS MODERATE_NEW_MEMBERS MODERATE_NONE" - }, - "name": { - "type": "string", - "description": "Name of the Group" - }, - "primaryLanguage": { - "type": "string", - "description": "Primary language for the group." - }, - "replyTo": { - "type": "string", - "description": "Whome should the default reply to a message go to. Possible values are: REPLY_TO_CUSTOM REPLY_TO_SENDER REPLY_TO_LIST REPLY_TO_OWNER REPLY_TO_IGNORE REPLY_TO_MANAGERS" - }, - "sendMessageDenyNotification": { - "type": "string", - "description": "Should the member be notified if his message is denied by owner." - }, - "showInGroupDirectory": { - "type": "string", - "description": "Is the group listed in groups directory" - }, - "spamModerationLevel": { - "type": "string", - "description": "Moderation level for messages detected as spam. Possible values are: ALLOW MODERATE SILENTLY_MODERATE REJECT" - }, - "whoCanAdd": { - "type": "string", - "description": "Permissions to add members. Possible values are: ALL_MANAGERS_CAN_ADD ALL_MEMBERS_CAN_ADD NONE_CAN_ADD" - }, - "whoCanContactOwner": { - "type": "string", - "description": "Permission to contact owner of the group via web UI. Possible values are: ANYONE_CAN_CONTACT ALL_IN_DOMAIN_CAN_CONTACT ALL_MEMBERS_CAN_CONTACT ALL_MANAGERS_CAN_CONTACT" - }, - "whoCanInvite": { - "type": "string", - "description": "Permissions to invite members. Possible values are: ALL_MEMBERS_CAN_INVITE ALL_MANAGERS_CAN_INVITE NONE_CAN_INVITE" - }, - "whoCanJoin": { - "type": "string", - "description": "Permissions to join the group. Possible values are: ANYONE_CAN_JOIN ALL_IN_DOMAIN_CAN_JOIN INVITED_CAN_JOIN CAN_REQUEST_TO_JOIN" - }, - "whoCanLeaveGroup": { - "type": "string", - "description": "Permission to leave the group. Possible values are: ALL_MANAGERS_CAN_LEAVE ALL_MEMBERS_CAN_LEAVE NONE_CAN_LEAVE" - }, - "whoCanPostMessage": { - "type": "string", - "description": "Permissions to post messages to the group. Possible values are: NONE_CAN_POST ALL_MANAGERS_CAN_POST ALL_MEMBERS_CAN_POST ALL_OWNERS_CAN_POST ALL_IN_DOMAIN_CAN_POST ANYONE_CAN_POST" - }, - "whoCanViewGroup": { - "type": "string", - "description": "Permissions to view group. Possible values are: ANYONE_CAN_VIEW ALL_IN_DOMAIN_CAN_VIEW ALL_MEMBERS_CAN_VIEW ALL_MANAGERS_CAN_VIEW" - }, - "whoCanViewMembership": { - "type": "string", - "description": "Permissions to view membership. Possible values are: ALL_IN_DOMAIN_CAN_VIEW ALL_MEMBERS_CAN_VIEW ALL_MANAGERS_CAN_VIEW" - } - } - } - }, - "resources": { - "groups": { - "methods": { - "get": { - "id": "groupsSettings.groups.get", - "path": "{groupUniqueId}", - "httpMethod": "GET", - "description": "Gets one resource by id.", - "parameters": { - "groupUniqueId": { - "type": "string", - "description": "The resource ID", - "required": true, - "location": "path" + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/apps.groups.settings": { + "description": "View and manage the settings of a G Suite group" + } } - }, - "parameterOrder": [ - "groupUniqueId" - ], - "response": { - "$ref": "Groups" - }, - "scopes": [ - "https://www.googleapis.com/auth/apps.groups.settings" - ] - }, - "patch": { - "id": "groupsSettings.groups.patch", - "path": "{groupUniqueId}", - "httpMethod": "PATCH", - "description": "Updates an existing resource. This method supports patch semantics.", - "parameters": { - "groupUniqueId": { - "type": "string", - "description": "The resource ID", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "groupUniqueId" - ], - "request": { - "$ref": "Groups" - }, - "response": { - "$ref": "Groups" - }, - "scopes": [ - "https://www.googleapis.com/auth/apps.groups.settings" - ] - }, - "update": { - "id": "groupsSettings.groups.update", - "path": "{groupUniqueId}", - "httpMethod": "PUT", - "description": "Updates an existing resource.", - "parameters": { - "groupUniqueId": { - "type": "string", - "description": "The resource ID", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "groupUniqueId" - ], - "request": { - "$ref": "Groups" - }, - "response": { - "$ref": "Groups" - }, - "scopes": [ - "https://www.googleapis.com/auth/apps.groups.settings" - ] } - } - } - } -} + }, + "basePath": "/groups/v1/groups/", + "baseUrl": "https://www.googleapis.com/groups/v1/groups/", + "batchPath": "batch/groupssettings/v1", + "description": "Lets you manage permission levels and related settings of a group.", + "discoveryVersion": "v1", + "documentationLink": "https://developers.google.com/google-apps/groups-settings/get_started", + "etag": "\"-iA1DTNe4s-I6JZXPt1t1Ypy8IU/OtGmapWnnxLrnB8PsHnXNA0QJ0I\"", + "icons": { + "x16": "https://www.gstatic.com/images/branding/product/1x/googleg_16dp.png", + "x32": "https://www.gstatic.com/images/branding/product/1x/googleg_32dp.png" + }, + "id": "groupssettings:v1", + "kind": "discovery#restDescription", + "name": "groupssettings", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "alt": { + "default": "atom", + "description": "Data format for the response.", + "enum": [ + "atom", + "json" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/atom+xml", + "Responses with Content-Type of application/json" + ], + "location": "query", + "type": "string" + }, + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "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.", + "location": "query", + "type": "string" + }, + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", + "location": "query", + "type": "string" + }, + "userIp": { + "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", + "location": "query", + "type": "string" + } + }, + "protocol": "rest", + "resources": { + "groups": { + "methods": { + "get": { + "description": "Gets one resource by id.", + "httpMethod": "GET", + "id": "groupsSettings.groups.get", + "parameterOrder": [ + "groupUniqueId" + ], + "parameters": { + "groupUniqueId": { + "description": "The resource ID", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{groupUniqueId}", + "response": { + "$ref": "Groups" + }, + "scopes": [ + "https://www.googleapis.com/auth/apps.groups.settings" + ] + }, + "patch": { + "description": "Updates an existing resource. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "groupsSettings.groups.patch", + "parameterOrder": [ + "groupUniqueId" + ], + "parameters": { + "groupUniqueId": { + "description": "The resource ID", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{groupUniqueId}", + "request": { + "$ref": "Groups" + }, + "response": { + "$ref": "Groups" + }, + "scopes": [ + "https://www.googleapis.com/auth/apps.groups.settings" + ] + }, + "update": { + "description": "Updates an existing resource.", + "httpMethod": "PUT", + "id": "groupsSettings.groups.update", + "parameterOrder": [ + "groupUniqueId" + ], + "parameters": { + "groupUniqueId": { + "description": "The resource ID", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{groupUniqueId}", + "request": { + "$ref": "Groups" + }, + "response": { + "$ref": "Groups" + }, + "scopes": [ + "https://www.googleapis.com/auth/apps.groups.settings" + ] + } + } + } + }, + "revision": "20170607", + "rootUrl": "https://www.googleapis.com/", + "schemas": { + "Groups": { + "description": "JSON template for Group resource", + "id": "Groups", + "properties": { + "allowExternalMembers": { + "description": "Are external members allowed to join the group.", + "type": "string" + }, + "allowGoogleCommunication": { + "description": "Is google allowed to contact admins.", + "type": "string" + }, + "allowWebPosting": { + "description": "If posting from web is allowed.", + "type": "string" + }, + "archiveOnly": { + "description": "If the group is archive only", + "type": "string" + }, + "customFooterText": { + "description": "Custom footer text.", + "type": "string" + }, + "customReplyTo": { + "description": "Default email to which reply to any message should go.", + "type": "string" + }, + "defaultMessageDenyNotificationText": { + "description": "Default message deny notification message", + "type": "string" + }, + "description": { + "description": "Description of the group", + "type": "string" + }, + "email": { + "description": "Email id of the group", + "type": "string" + }, + "includeCustomFooter": { + "description": "Whether to include custom footer.", + "type": "string" + }, + "includeInGlobalAddressList": { + "description": "If this groups should be included in global address list or not.", + "type": "string" + }, + "isArchived": { + "description": "If the contents of the group are archived.", + "type": "string" + }, + "kind": { + "default": "groupsSettings#groups", + "description": "The type of the resource.", + "type": "string" + }, + "maxMessageBytes": { + "description": "Maximum message size allowed.", + "format": "int32", + "type": "integer" + }, + "membersCanPostAsTheGroup": { + "description": "Can members post using the group email address.", + "type": "string" + }, + "messageDisplayFont": { + "description": "Default message display font. Possible values are: DEFAULT_FONT FIXED_WIDTH_FONT", + "type": "string" + }, + "messageModerationLevel": { + "description": "Moderation level for messages. Possible values are: MODERATE_ALL_MESSAGES MODERATE_NON_MEMBERS MODERATE_NEW_MEMBERS MODERATE_NONE", + "type": "string" + }, + "name": { + "description": "Name of the Group", + "type": "string" + }, + "primaryLanguage": { + "description": "Primary language for the group.", + "type": "string" + }, + "replyTo": { + "description": "Whome should the default reply to a message go to. Possible values are: REPLY_TO_CUSTOM REPLY_TO_SENDER REPLY_TO_LIST REPLY_TO_OWNER REPLY_TO_IGNORE REPLY_TO_MANAGERS", + "type": "string" + }, + "sendMessageDenyNotification": { + "description": "Should the member be notified if his message is denied by owner.", + "type": "string" + }, + "showInGroupDirectory": { + "description": "Is the group listed in groups directory", + "type": "string" + }, + "spamModerationLevel": { + "description": "Moderation level for messages detected as spam. Possible values are: ALLOW MODERATE SILENTLY_MODERATE REJECT", + "type": "string" + }, + "whoCanAdd": { + "description": "Permissions to add members. Possible values are: ALL_MANAGERS_CAN_ADD ALL_MEMBERS_CAN_ADD NONE_CAN_ADD", + "type": "string" + }, + "whoCanContactOwner": { + "description": "Permission to contact owner of the group via web UI. Possible values are: ANYONE_CAN_CONTACT ALL_IN_DOMAIN_CAN_CONTACT ALL_MEMBERS_CAN_CONTACT ALL_MANAGERS_CAN_CONTACT", + "type": "string" + }, + "whoCanInvite": { + "description": "Permissions to invite members. Possible values are: ALL_MEMBERS_CAN_INVITE ALL_MANAGERS_CAN_INVITE NONE_CAN_INVITE", + "type": "string" + }, + "whoCanJoin": { + "description": "Permissions to join the group. Possible values are: ANYONE_CAN_JOIN ALL_IN_DOMAIN_CAN_JOIN INVITED_CAN_JOIN CAN_REQUEST_TO_JOIN", + "type": "string" + }, + "whoCanLeaveGroup": { + "description": "Permission to leave the group. Possible values are: ALL_MANAGERS_CAN_LEAVE ALL_MEMBERS_CAN_LEAVE NONE_CAN_LEAVE", + "type": "string" + }, + "whoCanPostMessage": { + "description": "Permissions to post messages to the group. Possible values are: NONE_CAN_POST ALL_MANAGERS_CAN_POST ALL_MEMBERS_CAN_POST ALL_OWNERS_CAN_POST ALL_IN_DOMAIN_CAN_POST ANYONE_CAN_POST", + "type": "string" + }, + "whoCanViewGroup": { + "description": "Permissions to view group. Possible values are: ANYONE_CAN_VIEW ALL_IN_DOMAIN_CAN_VIEW ALL_MEMBERS_CAN_VIEW ALL_MANAGERS_CAN_VIEW", + "type": "string" + }, + "whoCanViewMembership": { + "description": "Permissions to view membership. Possible values are: ALL_IN_DOMAIN_CAN_VIEW ALL_MEMBERS_CAN_VIEW ALL_MANAGERS_CAN_VIEW", + "type": "string" + } + }, + "type": "object" + } + }, + "servicePath": "groups/v1/groups/", + "title": "Groups Settings API", + "version": "v1" +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/iam/v1/iam-api.json b/vendor/google.golang.org/api/iam/v1/iam-api.json index ba1b48281..17f48527c 100644 --- a/vendor/google.golang.org/api/iam/v1/iam-api.json +++ b/vendor/google.golang.org/api/iam/v1/iam-api.json @@ -1,308 +1,1188 @@ { - "id": "iam:v1", - "documentationLink": "https://cloud.google.com/iam/", - "revision": "20180113", - "discoveryVersion": "v1", - "version_module": true, - "schemas": { - "SignBlobResponse": { - "description": "The service account sign blob response.", - "type": "object", - "properties": { - "signature": { - "description": "The signed blob.", - "format": "byte", - "type": "string" - }, - "keyId": { - "description": "The id of the key used to sign the blob.", - "type": "string" + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/cloud-platform": { + "description": "View and manage your data across Google Cloud Platform services" } - }, - "id": "SignBlobResponse" + } + } + }, + "basePath": "", + "baseUrl": "https://iam.googleapis.com/", + "batchPath": "batch", + "canonicalName": "iam", + "description": "Manages identity and access control for Google Cloud Platform resources, including the creation of service accounts, which you can use to authenticate to Google and make API calls.", + "discoveryVersion": "v1", + "documentationLink": "https://cloud.google.com/iam/", + "fullyEncodeReservedExpansion": true, + "icons": { + "x16": "http://www.google.com/images/icons/product/search-16.gif", + "x32": "http://www.google.com/images/icons/product/search-32.gif" + }, + "id": "iam:v1", + "kind": "discovery#restDescription", + "name": "iam", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "$.xgafv": { + "description": "V1 error format.", + "enum": [ + "1", + "2" + ], + "enumDescriptions": [ + "v1 error format", + "v2 error format" + ], + "location": "query", + "type": "string" }, - "Permission": { - "description": "A permission which can be included by a role.", - "type": "object", - "properties": { - "stage": { - "enumDescriptions": [ - "The permission is currently in an alpha phase.", - "The permission is currently in a beta phase.", - "The permission is generally available.", - "The permission is being deprecated." - ], - "enum": [ - "ALPHA", - "BETA", - "GA", - "DEPRECATED" - ], - "description": "The current launch stage of the permission.", - "type": "string" - }, - "name": { - "description": "The name of this Permission.", - "type": "string" - }, - "onlyInPredefinedRoles": { - "type": "boolean", - "description": "This permission can ONLY be used in predefined roles." - }, - "title": { - "description": "The title of this Permission.", - "type": "string" - }, - "description": { - "description": "A brief description of what this Permission is used for.", - "type": "string" - }, - "customRolesSupportLevel": { - "enum": [ - "SUPPORTED", - "TESTING", - "NOT_SUPPORTED" - ], - "description": "The current custom role support level.", - "type": "string", - "enumDescriptions": [ - "Permission is fully supported for custom role use.", - "Permission is being tested to check custom role compatibility.", - "Permission is not supported for custom role use." + "access_token": { + "description": "OAuth access token.", + "location": "query", + "type": "string" + }, + "alt": { + "default": "json", + "description": "Data format for response.", + "enum": [ + "json", + "media", + "proto" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json", + "Media download with context-dependent Content-Type", + "Responses with Content-Type of application/x-protobuf" + ], + "location": "query", + "type": "string" + }, + "bearer_token": { + "description": "OAuth bearer token.", + "location": "query", + "type": "string" + }, + "callback": { + "description": "JSONP", + "location": "query", + "type": "string" + }, + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "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.", + "location": "query", + "type": "string" + }, + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "pp": { + "default": "true", + "description": "Pretty-print response.", + "location": "query", + "type": "boolean" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", + "location": "query", + "type": "string" + }, + "uploadType": { + "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", + "location": "query", + "type": "string" + }, + "upload_protocol": { + "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", + "location": "query", + "type": "string" + } + }, + "protocol": "rest", + "resources": { + "iamPolicies": { + "methods": { + "queryAuditableServices": { + "description": "Returns a list of services that support service level audit logging\nconfiguration for the given resource.", + "flatPath": "v1/iamPolicies:queryAuditableServices", + "httpMethod": "POST", + "id": "iam.iamPolicies.queryAuditableServices", + "parameterOrder": [], + "parameters": {}, + "path": "v1/iamPolicies:queryAuditableServices", + "request": { + "$ref": "QueryAuditableServicesRequest" + }, + "response": { + "$ref": "QueryAuditableServicesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" ] } - }, - "id": "Permission" + } }, - "SignJwtRequest": { - "description": "The service account sign JWT request.", - "type": "object", - "properties": { - "payload": { - "description": "The JWT payload to sign, a JSON JWT Claim set.", - "type": "string" - } - }, - "id": "SignJwtRequest" - }, - "PolicyDelta": { - "description": "The difference delta between two policies.", - "type": "object", - "properties": { - "bindingDeltas": { - "description": "The delta for Bindings between two policies.", - "type": "array", - "items": { - "$ref": "BindingDelta" - } - } - }, - "id": "PolicyDelta" - }, - "ListServiceAccountsResponse": { - "description": "The service account list response.", - "type": "object", - "properties": { - "nextPageToken": { - "description": "To retrieve the next page of results, set\nListServiceAccountsRequest.page_token\nto this value.", - "type": "string" - }, - "accounts": { - "description": "The list of matching service accounts.", - "type": "array", - "items": { - "$ref": "ServiceAccount" - } - } - }, - "id": "ListServiceAccountsResponse" - }, - "QueryGrantableRolesResponse": { - "properties": { + "organizations": { + "resources": { "roles": { - "description": "The list of matching roles.", - "type": "array", - "items": { - "$ref": "Role" + "methods": { + "create": { + "description": "Creates a new Role.", + "flatPath": "v1/organizations/{organizationsId}/roles", + "httpMethod": "POST", + "id": "iam.organizations.roles.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "The resource name of the parent resource in one of the following formats:\n`organizations/{ORGANIZATION_ID}`\n`projects/{PROJECT_ID}`", + "location": "path", + "pattern": "^organizations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+parent}/roles", + "request": { + "$ref": "CreateRoleRequest" + }, + "response": { + "$ref": "Role" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Soft deletes a role. The role is suspended and cannot be used to create new\nIAM Policy Bindings.\nThe Role will not be included in `ListRoles()` unless `show_deleted` is set\nin the `ListRolesRequest`. The Role contains the deleted boolean set.\nExisting Bindings remains, but are inactive. The Role can be undeleted\nwithin 7 days. After 7 days the Role is deleted and all Bindings associated\nwith the role are removed.", + "flatPath": "v1/organizations/{organizationsId}/roles/{rolesId}", + "httpMethod": "DELETE", + "id": "iam.organizations.roles.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "etag": { + "description": "Used to perform a consistent read-modify-write.", + "format": "byte", + "location": "query", + "type": "string" + }, + "name": { + "description": "The resource name of the role in one of the following formats:\n`organizations/{ORGANIZATION_ID}/roles/{ROLE_NAME}`\n`projects/{PROJECT_ID}/roles/{ROLE_NAME}`", + "location": "path", + "pattern": "^organizations/[^/]+/roles/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "Role" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Gets a Role definition.", + "flatPath": "v1/organizations/{organizationsId}/roles/{rolesId}", + "httpMethod": "GET", + "id": "iam.organizations.roles.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The resource name of the role in one of the following formats:\n`roles/{ROLE_NAME}`\n`organizations/{ORGANIZATION_ID}/roles/{ROLE_NAME}`\n`projects/{PROJECT_ID}/roles/{ROLE_NAME}`", + "location": "path", + "pattern": "^organizations/[^/]+/roles/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "Role" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists the Roles defined on a resource.", + "flatPath": "v1/organizations/{organizationsId}/roles", + "httpMethod": "GET", + "id": "iam.organizations.roles.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "pageSize": { + "description": "Optional limit on the number of roles to include in the response.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional pagination token returned in an earlier ListRolesResponse.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "The resource name of the parent resource in one of the following formats:\n`` (empty string) -- this refers to curated roles.\n`organizations/{ORGANIZATION_ID}`\n`projects/{PROJECT_ID}`", + "location": "path", + "pattern": "^organizations/[^/]+$", + "required": true, + "type": "string" + }, + "showDeleted": { + "description": "Include Roles that have been deleted.", + "location": "query", + "type": "boolean" + }, + "view": { + "description": "Optional view for the returned Role objects.", + "enum": [ + "BASIC", + "FULL" + ], + "location": "query", + "type": "string" + } + }, + "path": "v1/{+parent}/roles", + "response": { + "$ref": "ListRolesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "patch": { + "description": "Updates a Role definition.", + "flatPath": "v1/organizations/{organizationsId}/roles/{rolesId}", + "httpMethod": "PATCH", + "id": "iam.organizations.roles.patch", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The resource name of the role in one of the following formats:\n`roles/{ROLE_NAME}`\n`organizations/{ORGANIZATION_ID}/roles/{ROLE_NAME}`\n`projects/{PROJECT_ID}/roles/{ROLE_NAME}`", + "location": "path", + "pattern": "^organizations/[^/]+/roles/[^/]+$", + "required": true, + "type": "string" + }, + "updateMask": { + "description": "A mask describing which fields in the Role have changed.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + } + }, + "path": "v1/{+name}", + "request": { + "$ref": "Role" + }, + "response": { + "$ref": "Role" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "undelete": { + "description": "Undelete a Role, bringing it back in its previous state.", + "flatPath": "v1/organizations/{organizationsId}/roles/{rolesId}:undelete", + "httpMethod": "POST", + "id": "iam.organizations.roles.undelete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The resource name of the role in one of the following formats:\n`organizations/{ORGANIZATION_ID}/roles/{ROLE_NAME}`\n`projects/{PROJECT_ID}/roles/{ROLE_NAME}`", + "location": "path", + "pattern": "^organizations/[^/]+/roles/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}:undelete", + "request": { + "$ref": "UndeleteRoleRequest" + }, + "response": { + "$ref": "Role" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + } + } + }, + "permissions": { + "methods": { + "queryTestablePermissions": { + "description": "Lists the permissions testable on a resource.\nA permission is testable if it can be tested for an identity on a resource.", + "flatPath": "v1/permissions:queryTestablePermissions", + "httpMethod": "POST", + "id": "iam.permissions.queryTestablePermissions", + "parameterOrder": [], + "parameters": {}, + "path": "v1/permissions:queryTestablePermissions", + "request": { + "$ref": "QueryTestablePermissionsRequest" + }, + "response": { + "$ref": "QueryTestablePermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + }, + "projects": { + "resources": { + "roles": { + "methods": { + "create": { + "description": "Creates a new Role.", + "flatPath": "v1/projects/{projectsId}/roles", + "httpMethod": "POST", + "id": "iam.projects.roles.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "The resource name of the parent resource in one of the following formats:\n`organizations/{ORGANIZATION_ID}`\n`projects/{PROJECT_ID}`", + "location": "path", + "pattern": "^projects/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+parent}/roles", + "request": { + "$ref": "CreateRoleRequest" + }, + "response": { + "$ref": "Role" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Soft deletes a role. The role is suspended and cannot be used to create new\nIAM Policy Bindings.\nThe Role will not be included in `ListRoles()` unless `show_deleted` is set\nin the `ListRolesRequest`. The Role contains the deleted boolean set.\nExisting Bindings remains, but are inactive. The Role can be undeleted\nwithin 7 days. After 7 days the Role is deleted and all Bindings associated\nwith the role are removed.", + "flatPath": "v1/projects/{projectsId}/roles/{rolesId}", + "httpMethod": "DELETE", + "id": "iam.projects.roles.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "etag": { + "description": "Used to perform a consistent read-modify-write.", + "format": "byte", + "location": "query", + "type": "string" + }, + "name": { + "description": "The resource name of the role in one of the following formats:\n`organizations/{ORGANIZATION_ID}/roles/{ROLE_NAME}`\n`projects/{PROJECT_ID}/roles/{ROLE_NAME}`", + "location": "path", + "pattern": "^projects/[^/]+/roles/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "Role" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Gets a Role definition.", + "flatPath": "v1/projects/{projectsId}/roles/{rolesId}", + "httpMethod": "GET", + "id": "iam.projects.roles.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The resource name of the role in one of the following formats:\n`roles/{ROLE_NAME}`\n`organizations/{ORGANIZATION_ID}/roles/{ROLE_NAME}`\n`projects/{PROJECT_ID}/roles/{ROLE_NAME}`", + "location": "path", + "pattern": "^projects/[^/]+/roles/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "Role" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists the Roles defined on a resource.", + "flatPath": "v1/projects/{projectsId}/roles", + "httpMethod": "GET", + "id": "iam.projects.roles.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "pageSize": { + "description": "Optional limit on the number of roles to include in the response.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional pagination token returned in an earlier ListRolesResponse.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "The resource name of the parent resource in one of the following formats:\n`` (empty string) -- this refers to curated roles.\n`organizations/{ORGANIZATION_ID}`\n`projects/{PROJECT_ID}`", + "location": "path", + "pattern": "^projects/[^/]+$", + "required": true, + "type": "string" + }, + "showDeleted": { + "description": "Include Roles that have been deleted.", + "location": "query", + "type": "boolean" + }, + "view": { + "description": "Optional view for the returned Role objects.", + "enum": [ + "BASIC", + "FULL" + ], + "location": "query", + "type": "string" + } + }, + "path": "v1/{+parent}/roles", + "response": { + "$ref": "ListRolesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "patch": { + "description": "Updates a Role definition.", + "flatPath": "v1/projects/{projectsId}/roles/{rolesId}", + "httpMethod": "PATCH", + "id": "iam.projects.roles.patch", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The resource name of the role in one of the following formats:\n`roles/{ROLE_NAME}`\n`organizations/{ORGANIZATION_ID}/roles/{ROLE_NAME}`\n`projects/{PROJECT_ID}/roles/{ROLE_NAME}`", + "location": "path", + "pattern": "^projects/[^/]+/roles/[^/]+$", + "required": true, + "type": "string" + }, + "updateMask": { + "description": "A mask describing which fields in the Role have changed.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + } + }, + "path": "v1/{+name}", + "request": { + "$ref": "Role" + }, + "response": { + "$ref": "Role" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "undelete": { + "description": "Undelete a Role, bringing it back in its previous state.", + "flatPath": "v1/projects/{projectsId}/roles/{rolesId}:undelete", + "httpMethod": "POST", + "id": "iam.projects.roles.undelete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The resource name of the role in one of the following formats:\n`organizations/{ORGANIZATION_ID}/roles/{ROLE_NAME}`\n`projects/{PROJECT_ID}/roles/{ROLE_NAME}`", + "location": "path", + "pattern": "^projects/[^/]+/roles/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}:undelete", + "request": { + "$ref": "UndeleteRoleRequest" + }, + "response": { + "$ref": "Role" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } } }, - "nextPageToken": { - "description": "To retrieve the next page of results, set\n`QueryGrantableRolesRequest.page_token` to this value.", + "serviceAccounts": { + "methods": { + "create": { + "description": "Creates a ServiceAccount\nand returns it.", + "flatPath": "v1/projects/{projectsId}/serviceAccounts", + "httpMethod": "POST", + "id": "iam.projects.serviceAccounts.create", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The resource name of the project associated with the service\naccounts, such as `projects/my-project-123`.", + "location": "path", + "pattern": "^projects/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}/serviceAccounts", + "request": { + "$ref": "CreateServiceAccountRequest" + }, + "response": { + "$ref": "ServiceAccount" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Deletes a ServiceAccount.", + "flatPath": "v1/projects/{projectsId}/serviceAccounts/{serviceAccountsId}", + "httpMethod": "DELETE", + "id": "iam.projects.serviceAccounts.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The resource name of the service account in the following format:\n`projects/{PROJECT_ID}/serviceAccounts/{ACCOUNT}`.\nUsing `-` as a wildcard for the `PROJECT_ID` will infer the project from\nthe account. The `ACCOUNT` value can be the `email` address or the\n`unique_id` of the service account.", + "location": "path", + "pattern": "^projects/[^/]+/serviceAccounts/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Gets a ServiceAccount.", + "flatPath": "v1/projects/{projectsId}/serviceAccounts/{serviceAccountsId}", + "httpMethod": "GET", + "id": "iam.projects.serviceAccounts.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The resource name of the service account in the following format:\n`projects/{PROJECT_ID}/serviceAccounts/{ACCOUNT}`.\nUsing `-` as a wildcard for the `PROJECT_ID` will infer the project from\nthe account. The `ACCOUNT` value can be the `email` address or the\n`unique_id` of the service account.", + "location": "path", + "pattern": "^projects/[^/]+/serviceAccounts/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "ServiceAccount" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "getIamPolicy": { + "description": "Returns the IAM access control policy for a\nServiceAccount.", + "flatPath": "v1/projects/{projectsId}/serviceAccounts/{serviceAccountsId}:getIamPolicy", + "httpMethod": "POST", + "id": "iam.projects.serviceAccounts.getIamPolicy", + "parameterOrder": [ + "resource" + ], + "parameters": { + "resource": { + "description": "REQUIRED: The resource for which the policy is being requested.\nSee the operation documentation for the appropriate value for this field.", + "location": "path", + "pattern": "^projects/[^/]+/serviceAccounts/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+resource}:getIamPolicy", + "response": { + "$ref": "Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists ServiceAccounts for a project.", + "flatPath": "v1/projects/{projectsId}/serviceAccounts", + "httpMethod": "GET", + "id": "iam.projects.serviceAccounts.list", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The resource name of the project associated with the service\naccounts, such as `projects/my-project-123`.", + "location": "path", + "pattern": "^projects/[^/]+$", + "required": true, + "type": "string" + }, + "pageSize": { + "description": "Optional limit on the number of service accounts to include in the\nresponse. Further accounts can subsequently be obtained by including the\nListServiceAccountsResponse.next_page_token\nin a subsequent request.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional pagination token returned in an earlier\nListServiceAccountsResponse.next_page_token.", + "location": "query", + "type": "string" + } + }, + "path": "v1/{+name}/serviceAccounts", + "response": { + "$ref": "ListServiceAccountsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "setIamPolicy": { + "description": "Sets the IAM access control policy for a\nServiceAccount.", + "flatPath": "v1/projects/{projectsId}/serviceAccounts/{serviceAccountsId}:setIamPolicy", + "httpMethod": "POST", + "id": "iam.projects.serviceAccounts.setIamPolicy", + "parameterOrder": [ + "resource" + ], + "parameters": { + "resource": { + "description": "REQUIRED: The resource for which the policy is being specified.\nSee the operation documentation for the appropriate value for this field.", + "location": "path", + "pattern": "^projects/[^/]+/serviceAccounts/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+resource}:setIamPolicy", + "request": { + "$ref": "SetIamPolicyRequest" + }, + "response": { + "$ref": "Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "signBlob": { + "description": "Signs a blob using a service account's system-managed private key.", + "flatPath": "v1/projects/{projectsId}/serviceAccounts/{serviceAccountsId}:signBlob", + "httpMethod": "POST", + "id": "iam.projects.serviceAccounts.signBlob", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The resource name of the service account in the following format:\n`projects/{PROJECT_ID}/serviceAccounts/{ACCOUNT}`.\nUsing `-` as a wildcard for the `PROJECT_ID` will infer the project from\nthe account. The `ACCOUNT` value can be the `email` address or the\n`unique_id` of the service account.", + "location": "path", + "pattern": "^projects/[^/]+/serviceAccounts/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}:signBlob", + "request": { + "$ref": "SignBlobRequest" + }, + "response": { + "$ref": "SignBlobResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "signJwt": { + "description": "Signs a JWT using a service account's system-managed private key.\n\nIf no expiry time (`exp`) is provided in the `SignJwtRequest`, IAM sets an\nan expiry time of one hour by default. If you request an expiry time of\nmore than one hour, the request will fail.", + "flatPath": "v1/projects/{projectsId}/serviceAccounts/{serviceAccountsId}:signJwt", + "httpMethod": "POST", + "id": "iam.projects.serviceAccounts.signJwt", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The resource name of the service account in the following format:\n`projects/{PROJECT_ID}/serviceAccounts/{ACCOUNT}`.\nUsing `-` as a wildcard for the `PROJECT_ID` will infer the project from\nthe account. The `ACCOUNT` value can be the `email` address or the\n`unique_id` of the service account.", + "location": "path", + "pattern": "^projects/[^/]+/serviceAccounts/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}:signJwt", + "request": { + "$ref": "SignJwtRequest" + }, + "response": { + "$ref": "SignJwtResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "testIamPermissions": { + "description": "Tests the specified permissions against the IAM access control policy\nfor a ServiceAccount.", + "flatPath": "v1/projects/{projectsId}/serviceAccounts/{serviceAccountsId}:testIamPermissions", + "httpMethod": "POST", + "id": "iam.projects.serviceAccounts.testIamPermissions", + "parameterOrder": [ + "resource" + ], + "parameters": { + "resource": { + "description": "REQUIRED: The resource for which the policy detail is being requested.\nSee the operation documentation for the appropriate value for this field.", + "location": "path", + "pattern": "^projects/[^/]+/serviceAccounts/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+resource}:testIamPermissions", + "request": { + "$ref": "TestIamPermissionsRequest" + }, + "response": { + "$ref": "TestIamPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "update": { + "description": "Updates a ServiceAccount.\n\nCurrently, only the following fields are updatable:\n`display_name` .\nThe `etag` is mandatory.", + "flatPath": "v1/projects/{projectsId}/serviceAccounts/{serviceAccountsId}", + "httpMethod": "PUT", + "id": "iam.projects.serviceAccounts.update", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The resource name of the service account in the following format:\n`projects/{PROJECT_ID}/serviceAccounts/{ACCOUNT}`.\n\nRequests using `-` as a wildcard for the `PROJECT_ID` will infer the\nproject from the `account` and the `ACCOUNT` value can be the `email`\naddress or the `unique_id` of the service account.\n\nIn responses the resource name will always be in the format\n`projects/{PROJECT_ID}/serviceAccounts/{ACCOUNT}`.", + "location": "path", + "pattern": "^projects/[^/]+/serviceAccounts/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "request": { + "$ref": "ServiceAccount" + }, + "response": { + "$ref": "ServiceAccount" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + }, + "resources": { + "keys": { + "methods": { + "create": { + "description": "Creates a ServiceAccountKey\nand returns it.", + "flatPath": "v1/projects/{projectsId}/serviceAccounts/{serviceAccountsId}/keys", + "httpMethod": "POST", + "id": "iam.projects.serviceAccounts.keys.create", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The resource name of the service account in the following format:\n`projects/{PROJECT_ID}/serviceAccounts/{ACCOUNT}`.\nUsing `-` as a wildcard for the `PROJECT_ID` will infer the project from\nthe account. The `ACCOUNT` value can be the `email` address or the\n`unique_id` of the service account.", + "location": "path", + "pattern": "^projects/[^/]+/serviceAccounts/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}/keys", + "request": { + "$ref": "CreateServiceAccountKeyRequest" + }, + "response": { + "$ref": "ServiceAccountKey" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Deletes a ServiceAccountKey.", + "flatPath": "v1/projects/{projectsId}/serviceAccounts/{serviceAccountsId}/keys/{keysId}", + "httpMethod": "DELETE", + "id": "iam.projects.serviceAccounts.keys.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The resource name of the service account key in the following format:\n`projects/{PROJECT_ID}/serviceAccounts/{ACCOUNT}/keys/{key}`.\nUsing `-` as a wildcard for the `PROJECT_ID` will infer the project from\nthe account. The `ACCOUNT` value can be the `email` address or the\n`unique_id` of the service account.", + "location": "path", + "pattern": "^projects/[^/]+/serviceAccounts/[^/]+/keys/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Gets the ServiceAccountKey\nby key id.", + "flatPath": "v1/projects/{projectsId}/serviceAccounts/{serviceAccountsId}/keys/{keysId}", + "httpMethod": "GET", + "id": "iam.projects.serviceAccounts.keys.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The resource name of the service account key in the following format:\n`projects/{PROJECT_ID}/serviceAccounts/{ACCOUNT}/keys/{key}`.\n\nUsing `-` as a wildcard for the `PROJECT_ID` will infer the project from\nthe account. The `ACCOUNT` value can be the `email` address or the\n`unique_id` of the service account.", + "location": "path", + "pattern": "^projects/[^/]+/serviceAccounts/[^/]+/keys/[^/]+$", + "required": true, + "type": "string" + }, + "publicKeyType": { + "description": "The output format of the public key requested.\nX509_PEM is the default output format.", + "enum": [ + "TYPE_NONE", + "TYPE_X509_PEM_FILE", + "TYPE_RAW_PUBLIC_KEY" + ], + "location": "query", + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "ServiceAccountKey" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists ServiceAccountKeys.", + "flatPath": "v1/projects/{projectsId}/serviceAccounts/{serviceAccountsId}/keys", + "httpMethod": "GET", + "id": "iam.projects.serviceAccounts.keys.list", + "parameterOrder": [ + "name" + ], + "parameters": { + "keyTypes": { + "description": "Filters the types of keys the user wants to include in the list\nresponse. Duplicate key types are not allowed. If no key type\nis provided, all keys are returned.", + "enum": [ + "KEY_TYPE_UNSPECIFIED", + "USER_MANAGED", + "SYSTEM_MANAGED" + ], + "location": "query", + "repeated": true, + "type": "string" + }, + "name": { + "description": "The resource name of the service account in the following format:\n`projects/{PROJECT_ID}/serviceAccounts/{ACCOUNT}`.\n\nUsing `-` as a wildcard for the `PROJECT_ID`, will infer the project from\nthe account. The `ACCOUNT` value can be the `email` address or the\n`unique_id` of the service account.", + "location": "path", + "pattern": "^projects/[^/]+/serviceAccounts/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}/keys", + "response": { + "$ref": "ListServiceAccountKeysResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + } + } + } + } + }, + "roles": { + "methods": { + "get": { + "description": "Gets a Role definition.", + "flatPath": "v1/roles/{rolesId}", + "httpMethod": "GET", + "id": "iam.roles.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The resource name of the role in one of the following formats:\n`roles/{ROLE_NAME}`\n`organizations/{ORGANIZATION_ID}/roles/{ROLE_NAME}`\n`projects/{PROJECT_ID}/roles/{ROLE_NAME}`", + "location": "path", + "pattern": "^roles/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "Role" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists the Roles defined on a resource.", + "flatPath": "v1/roles", + "httpMethod": "GET", + "id": "iam.roles.list", + "parameterOrder": [], + "parameters": { + "pageSize": { + "description": "Optional limit on the number of roles to include in the response.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional pagination token returned in an earlier ListRolesResponse.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "The resource name of the parent resource in one of the following formats:\n`` (empty string) -- this refers to curated roles.\n`organizations/{ORGANIZATION_ID}`\n`projects/{PROJECT_ID}`", + "location": "query", + "type": "string" + }, + "showDeleted": { + "description": "Include Roles that have been deleted.", + "location": "query", + "type": "boolean" + }, + "view": { + "description": "Optional view for the returned Role objects.", + "enum": [ + "BASIC", + "FULL" + ], + "location": "query", + "type": "string" + } + }, + "path": "v1/roles", + "response": { + "$ref": "ListRolesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "queryGrantableRoles": { + "description": "Queries roles that can be granted on a particular resource.\nA role is grantable if it can be used as the role in a binding for a policy\nfor that resource.", + "flatPath": "v1/roles:queryGrantableRoles", + "httpMethod": "POST", + "id": "iam.roles.queryGrantableRoles", + "parameterOrder": [], + "parameters": {}, + "path": "v1/roles:queryGrantableRoles", + "request": { + "$ref": "QueryGrantableRolesRequest" + }, + "response": { + "$ref": "QueryGrantableRolesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + } + }, + "revision": "20180223", + "rootUrl": "https://iam.googleapis.com/", + "schemas": { + "AuditConfig": { + "description": "Specifies the audit configuration for a service.\nThe configuration determines which permission types are logged, and what\nidentities, if any, are exempted from logging.\nAn AuditConfig must have one or more AuditLogConfigs.\n\nIf there are AuditConfigs for both `allServices` and a specific service,\nthe union of the two AuditConfigs is used for that service: the log_types\nspecified in each AuditConfig are enabled, and the exempted_members in each\nAuditLogConfig are exempted.\n\nExample Policy with multiple AuditConfigs:\n\n {\n \"audit_configs\": [\n {\n \"service\": \"allServices\"\n \"audit_log_configs\": [\n {\n \"log_type\": \"DATA_READ\",\n \"exempted_members\": [\n \"user:foo@gmail.com\"\n ]\n },\n {\n \"log_type\": \"DATA_WRITE\",\n },\n {\n \"log_type\": \"ADMIN_READ\",\n }\n ]\n },\n {\n \"service\": \"fooservice.googleapis.com\"\n \"audit_log_configs\": [\n {\n \"log_type\": \"DATA_READ\",\n },\n {\n \"log_type\": \"DATA_WRITE\",\n \"exempted_members\": [\n \"user:bar@gmail.com\"\n ]\n }\n ]\n }\n ]\n }\n\nFor fooservice, this policy enables DATA_READ, DATA_WRITE and ADMIN_READ\nlogging. It also exempts foo@gmail.com from DATA_READ logging, and\nbar@gmail.com from DATA_WRITE logging.", + "id": "AuditConfig", + "properties": { + "auditLogConfigs": { + "description": "The configuration for logging of each type of permission.\nNext ID: 4", + "items": { + "$ref": "AuditLogConfig" + }, + "type": "array" + }, + "service": { + "description": "Specifies a service that will be enabled for audit logging.\nFor example, `storage.googleapis.com`, `cloudsql.googleapis.com`.\n`allServices` is a special value that covers all services.", "type": "string" } }, - "id": "QueryGrantableRolesResponse", - "description": "The grantable role query response.", "type": "object" }, - "SignBlobRequest": { - "description": "The service account sign blob request.", - "type": "object", - "properties": { - "bytesToSign": { - "description": "The bytes to sign.", - "format": "byte", - "type": "string" - } - }, - "id": "SignBlobRequest" - }, - "SetIamPolicyRequest": { - "type": "object", - "properties": { - "policy": { - "description": "REQUIRED: The complete policy to be applied to the `resource`. The size of\nthe policy is limited to a few 10s of KB. An empty policy is a\nvalid policy but certain Cloud Platform services (such as Projects)\nmight reject them.", - "$ref": "Policy" - } - }, - "id": "SetIamPolicyRequest", - "description": "Request message for `SetIamPolicy` method." - }, - "QueryTestablePermissionsResponse": { - "description": "The response containing permissions which can be tested on a resource.", - "type": "object", - "properties": { - "permissions": { - "description": "The Permissions testable on the requested resource.", - "type": "array", - "items": { - "$ref": "Permission" - } - }, - "nextPageToken": { - "description": "To retrieve the next page of results, set\n`QueryTestableRolesRequest.page_token` to this value.", - "type": "string" - } - }, - "id": "QueryTestablePermissionsResponse" - }, - "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 `{}`.", - "type": "object", - "properties": {}, - "id": "Empty" - }, - "CreateServiceAccountKeyRequest": { - "description": "The service account key create request.", - "type": "object", - "properties": { - "keyAlgorithm": { - "description": "Which type of key and algorithm to use for the key.\nThe default is currently a 2K RSA key. However this may change in the\nfuture.", - "type": "string", - "enumDescriptions": [ - "An unspecified key algorithm.", - "1k RSA Key.", - "2k RSA Key." - ], - "enum": [ - "KEY_ALG_UNSPECIFIED", - "KEY_ALG_RSA_1024", - "KEY_ALG_RSA_2048" - ] - }, - "privateKeyType": { - "enumDescriptions": [ - "Unspecified. Equivalent to `TYPE_GOOGLE_CREDENTIALS_FILE`.", - "PKCS12 format.\nThe password for the PKCS12 file is `notasecret`.\nFor more information, see https://tools.ietf.org/html/rfc7292.", - "Google Credentials File format." - ], - "enum": [ - "TYPE_UNSPECIFIED", - "TYPE_PKCS12_FILE", - "TYPE_GOOGLE_CREDENTIALS_FILE" - ], - "description": "The output format of the private key. The default value is\n`TYPE_GOOGLE_CREDENTIALS_FILE`, which is the Google Credentials File\nformat.", - "type": "string" - } - }, - "id": "CreateServiceAccountKeyRequest" - }, - "SignJwtResponse": { - "description": "The service account sign JWT response.", - "type": "object", - "properties": { - "keyId": { - "description": "The id of the key used to sign the JWT.", - "type": "string" - }, - "signedJwt": { - "description": "The signed JWT.", - "type": "string" - } - }, - "id": "SignJwtResponse" - }, - "TestIamPermissionsRequest": { - "description": "Request message for `TestIamPermissions` method.", - "type": "object", - "properties": { - "permissions": { - "description": "The set of permissions to check for the `resource`. Permissions with\nwildcards (such as '*' or 'storage.*') are not allowed. For more\ninformation see\n[IAM Overview](https://cloud.google.com/iam/docs/overview#permissions).", - "type": "array", - "items": { - "type": "string" - } - } - }, - "id": "TestIamPermissionsRequest" - }, - "Policy": { - "description": "Defines an Identity and Access Management (IAM) policy. It is used to\nspecify access control policies for Cloud Platform resources.\n\n\nA `Policy` consists of a list of `bindings`. A `Binding` binds a list of\n`members` to a `role`, where the members can be user accounts, Google groups,\nGoogle domains, and service accounts. A `role` is a named list of permissions\ndefined by IAM.\n\n**Example**\n\n {\n \"bindings\": [\n {\n \"role\": \"roles/owner\",\n \"members\": [\n \"user:mike@example.com\",\n \"group:admins@example.com\",\n \"domain:google.com\",\n \"serviceAccount:my-other-app@appspot.gserviceaccount.com\",\n ]\n },\n {\n \"role\": \"roles/viewer\",\n \"members\": [\"user:sean@example.com\"]\n }\n ]\n }\n\nFor a description of IAM and its features, see the\n[IAM developer's guide](https://cloud.google.com/iam/docs).", - "type": "object", - "properties": { - "etag": { - "description": "`etag` is used for optimistic concurrency control as a way to help\nprevent simultaneous updates of a policy from overwriting each other.\nIt is strongly suggested that systems make use of the `etag` in the\nread-modify-write cycle to perform policy updates in order to avoid race\nconditions: An `etag` is returned in the response to `getIamPolicy`, and\nsystems are expected to put that etag in the request to `setIamPolicy` to\nensure that their change will be applied to the same version of the policy.\n\nIf no `etag` is provided in the call to `setIamPolicy`, then the existing\npolicy is overwritten blindly.", - "format": "byte", - "type": "string" - }, - "version": { - "description": "Deprecated.", - "format": "int32", - "type": "integer" - }, - "bindings": { - "description": "Associates a list of `members` to a `role`.\n`bindings` with no members will result in an error.", - "type": "array", - "items": { - "$ref": "Binding" - } - } - }, - "id": "Policy" - }, - "ListRolesResponse": { - "description": "The response containing the roles defined under a resource.", - "type": "object", - "properties": { - "roles": { - "description": "The Roles defined on this resource.", - "type": "array", - "items": { - "$ref": "Role" - } - }, - "nextPageToken": { - "description": "To retrieve the next page of results, set\n`ListRolesRequest.page_token` to this value.", - "type": "string" - } - }, - "id": "ListRolesResponse" - }, "AuditData": { + "description": "Audit log information specific to Cloud IAM. This message is serialized\nas an `Any` type in the `ServiceData` message of an\n`AuditLog` message.", + "id": "AuditData", "properties": { "policyDelta": { - "description": "Policy delta between the original policy and the newly set policy.", - "$ref": "PolicyDelta" + "$ref": "PolicyDelta", + "description": "Policy delta between the original policy and the newly set policy." + } + }, + "type": "object" + }, + "AuditLogConfig": { + "description": "Provides the configuration for logging a type of permissions.\nExample:\n\n {\n \"audit_log_configs\": [\n {\n \"log_type\": \"DATA_READ\",\n \"exempted_members\": [\n \"user:foo@gmail.com\"\n ]\n },\n {\n \"log_type\": \"DATA_WRITE\",\n }\n ]\n }\n\nThis enables 'DATA_READ' and 'DATA_WRITE' logging, while exempting\nfoo@gmail.com from DATA_READ logging.", + "id": "AuditLogConfig", + "properties": { + "exemptedMembers": { + "description": "Specifies the identities that do not cause logging for this type of\npermission.\nFollows the same format of Binding.members.", + "items": { + "type": "string" + }, + "type": "array" + }, + "logType": { + "description": "The log type that this config enables.", + "enum": [ + "LOG_TYPE_UNSPECIFIED", + "ADMIN_READ", + "DATA_WRITE", + "DATA_READ" + ], + "enumDescriptions": [ + "Default case. Should never be this.", + "Admin reads. Example: CloudIAM getIamPolicy", + "Data writes. Example: CloudSQL Users create", + "Data reads. Example: CloudSQL Users list" + ], + "type": "string" + } + }, + "type": "object" + }, + "AuditableService": { + "description": "Contains information about an auditable service.", + "id": "AuditableService", + "properties": { + "name": { + "description": "Public name of the service.\nFor example, the service name for Cloud IAM is 'iam.googleapis.com'.", + "type": "string" + } + }, + "type": "object" + }, + "Binding": { + "description": "Associates `members` with a `role`.", + "id": "Binding", + "properties": { + "members": { + "description": "Specifies the identities requesting access for a Cloud Platform resource.\n`members` can have the following values:\n\n* `allUsers`: A special identifier that represents anyone who is\n on the internet; with or without a Google account.\n\n* `allAuthenticatedUsers`: A special identifier that represents anyone\n who is authenticated with a Google account or a service account.\n\n* `user:{emailid}`: An email address that represents a specific Google\n account. For example, `alice@gmail.com` or `joe@example.com`.\n\n\n* `serviceAccount:{emailid}`: An email address that represents a service\n account. For example, `my-other-app@appspot.gserviceaccount.com`.\n\n* `group:{emailid}`: An email address that represents a Google group.\n For example, `admins@example.com`.\n\n\n* `domain:{domain}`: A Google Apps domain name that represents all the\n users of that domain. For example, `google.com` or `example.com`.\n\n", + "items": { + "type": "string" + }, + "type": "array" + }, + "role": { + "description": "Role that is assigned to `members`.\nFor example, `roles/viewer`, `roles/editor`, or `roles/owner`.\nRequired", + "type": "string" } }, - "id": "AuditData", - "description": "Audit log information specific to Cloud IAM. This message is serialized\nas an `Any` type in the `ServiceData` message of an\n`AuditLog` message.", "type": "object" }, "BindingDelta": { "description": "One delta entry for Binding. Each individual change (only one member in each\nentry) to a binding will be a separate entry.", - "type": "object", + "id": "BindingDelta", "properties": { + "action": { + "description": "The action that was performed on a Binding.\nRequired", + "enum": [ + "ACTION_UNSPECIFIED", + "ADD", + "REMOVE" + ], + "enumDescriptions": [ + "Unspecified.", + "Addition of a Binding.", + "Removal of a Binding." + ], + "type": "string" + }, "member": { "description": "A single identity requesting access for a Cloud Platform resource.\nFollows the same format of Binding.members.\nRequired", "type": "string" @@ -310,39 +1190,63 @@ "role": { "description": "Role that is assigned to `members`.\nFor example, `roles/viewer`, `roles/editor`, or `roles/owner`.\nRequired", "type": "string" - }, - "action": { - "enumDescriptions": [ - "Unspecified.", - "Addition of a Binding.", - "Removal of a Binding." - ], - "enum": [ - "ACTION_UNSPECIFIED", - "ADD", - "REMOVE" - ], - "description": "The action that was performed on a Binding.\nRequired", - "type": "string" } }, - "id": "BindingDelta" + "type": "object" }, - "UndeleteRoleRequest": { - "description": "The request to undelete an existing role.", - "type": "object", + "CreateRoleRequest": { + "description": "The request to create a new role.", + "id": "CreateRoleRequest", "properties": { - "etag": { - "description": "Used to perform a consistent read-modify-write.", - "format": "byte", + "role": { + "$ref": "Role", + "description": "The Role resource to create." + }, + "roleId": { + "description": "The role id to use for this role.", "type": "string" } }, - "id": "UndeleteRoleRequest" + "type": "object" + }, + "CreateServiceAccountKeyRequest": { + "description": "The service account key create request.", + "id": "CreateServiceAccountKeyRequest", + "properties": { + "keyAlgorithm": { + "description": "Which type of key and algorithm to use for the key.\nThe default is currently a 2K RSA key. However this may change in the\nfuture.", + "enum": [ + "KEY_ALG_UNSPECIFIED", + "KEY_ALG_RSA_1024", + "KEY_ALG_RSA_2048" + ], + "enumDescriptions": [ + "An unspecified key algorithm.", + "1k RSA Key.", + "2k RSA Key." + ], + "type": "string" + }, + "privateKeyType": { + "description": "The output format of the private key. The default value is\n`TYPE_GOOGLE_CREDENTIALS_FILE`, which is the Google Credentials File\nformat.", + "enum": [ + "TYPE_UNSPECIFIED", + "TYPE_PKCS12_FILE", + "TYPE_GOOGLE_CREDENTIALS_FILE" + ], + "enumDescriptions": [ + "Unspecified. Equivalent to `TYPE_GOOGLE_CREDENTIALS_FILE`.", + "PKCS12 format.\nThe password for the PKCS12 file is `notasecret`.\nFor more information, see https://tools.ietf.org/html/rfc7292.", + "Google Credentials File format." + ], + "type": "string" + } + }, + "type": "object" }, "CreateServiceAccountRequest": { "description": "The service account create request.", - "type": "object", + "id": "CreateServiceAccountRequest", "properties": { "accountId": { "description": "Required. The account id that is used to generate the service account\nemail address and a stable unique id. It is unique within a project,\nmust be 6-30 characters long, and match the regular expression\n`[a-z]([-a-z0-9]*[a-z0-9])` to comply with RFC1035.", @@ -353,18 +1257,285 @@ "description": "The ServiceAccount resource to create.\nCurrently, only the following values are user assignable:\n`display_name` ." } }, - "id": "CreateServiceAccountRequest" + "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" + }, + "ListRolesResponse": { + "description": "The response containing the roles defined under a resource.", + "id": "ListRolesResponse", + "properties": { + "nextPageToken": { + "description": "To retrieve the next page of results, set\n`ListRolesRequest.page_token` to this value.", + "type": "string" + }, + "roles": { + "description": "The Roles defined on this resource.", + "items": { + "$ref": "Role" + }, + "type": "array" + } + }, + "type": "object" + }, + "ListServiceAccountKeysResponse": { + "description": "The service account keys list response.", + "id": "ListServiceAccountKeysResponse", + "properties": { + "keys": { + "description": "The public keys for the service account.", + "items": { + "$ref": "ServiceAccountKey" + }, + "type": "array" + } + }, + "type": "object" + }, + "ListServiceAccountsResponse": { + "description": "The service account list response.", + "id": "ListServiceAccountsResponse", + "properties": { + "accounts": { + "description": "The list of matching service accounts.", + "items": { + "$ref": "ServiceAccount" + }, + "type": "array" + }, + "nextPageToken": { + "description": "To retrieve the next page of results, set\nListServiceAccountsRequest.page_token\nto this value.", + "type": "string" + } + }, + "type": "object" + }, + "Permission": { + "description": "A permission which can be included by a role.", + "id": "Permission", + "properties": { + "apiDisabled": { + "description": "The service API associated with the permission is not enabled.", + "type": "boolean" + }, + "customRolesSupportLevel": { + "description": "The current custom role support level.", + "enum": [ + "SUPPORTED", + "TESTING", + "NOT_SUPPORTED" + ], + "enumDescriptions": [ + "Permission is fully supported for custom role use.", + "Permission is being tested to check custom role compatibility.", + "Permission is not supported for custom role use." + ], + "type": "string" + }, + "description": { + "description": "A brief description of what this Permission is used for.", + "type": "string" + }, + "name": { + "description": "The name of this Permission.", + "type": "string" + }, + "onlyInPredefinedRoles": { + "description": "This permission can ONLY be used in predefined roles.", + "type": "boolean" + }, + "stage": { + "description": "The current launch stage of the permission.", + "enum": [ + "ALPHA", + "BETA", + "GA", + "DEPRECATED" + ], + "enumDescriptions": [ + "The permission is currently in an alpha phase.", + "The permission is currently in a beta phase.", + "The permission is generally available.", + "The permission is being deprecated." + ], + "type": "string" + }, + "title": { + "description": "The title of this Permission.", + "type": "string" + } + }, + "type": "object" + }, + "Policy": { + "description": "Defines an Identity and Access Management (IAM) policy. It is used to\nspecify access control policies for Cloud Platform resources.\n\n\nA `Policy` consists of a list of `bindings`. A `Binding` binds a list of\n`members` to a `role`, where the members can be user accounts, Google groups,\nGoogle domains, and service accounts. A `role` is a named list of permissions\ndefined by IAM.\n\n**Example**\n\n {\n \"bindings\": [\n {\n \"role\": \"roles/owner\",\n \"members\": [\n \"user:mike@example.com\",\n \"group:admins@example.com\",\n \"domain:google.com\",\n \"serviceAccount:my-other-app@appspot.gserviceaccount.com\",\n ]\n },\n {\n \"role\": \"roles/viewer\",\n \"members\": [\"user:sean@example.com\"]\n }\n ]\n }\n\nFor a description of IAM and its features, see the\n[IAM developer's guide](https://cloud.google.com/iam/docs).", + "id": "Policy", + "properties": { + "auditConfigs": { + "description": "Specifies cloud audit logging configuration for this policy.", + "items": { + "$ref": "AuditConfig" + }, + "type": "array" + }, + "bindings": { + "description": "Associates a list of `members` to a `role`.\n`bindings` with no members will result in an error.", + "items": { + "$ref": "Binding" + }, + "type": "array" + }, + "etag": { + "description": "`etag` is used for optimistic concurrency control as a way to help\nprevent simultaneous updates of a policy from overwriting each other.\nIt is strongly suggested that systems make use of the `etag` in the\nread-modify-write cycle to perform policy updates in order to avoid race\nconditions: An `etag` is returned in the response to `getIamPolicy`, and\nsystems are expected to put that etag in the request to `setIamPolicy` to\nensure that their change will be applied to the same version of the policy.\n\nIf no `etag` is provided in the call to `setIamPolicy`, then the existing\npolicy is overwritten blindly.", + "format": "byte", + "type": "string" + }, + "version": { + "description": "Deprecated.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "PolicyDelta": { + "description": "The difference delta between two policies.", + "id": "PolicyDelta", + "properties": { + "bindingDeltas": { + "description": "The delta for Bindings between two policies.", + "items": { + "$ref": "BindingDelta" + }, + "type": "array" + } + }, + "type": "object" + }, + "QueryAuditableServicesRequest": { + "description": "A request to get the list of auditable services for a resource.", + "id": "QueryAuditableServicesRequest", + "properties": { + "fullResourceName": { + "description": "Required. The full resource name to query from the list of auditable\nservices.\n\nThe name follows the Google Cloud Platform resource format.\nFor example, a Cloud Platform project with id `my-project` will be named\n`//cloudresourcemanager.googleapis.com/projects/my-project`.", + "type": "string" + } + }, + "type": "object" + }, + "QueryAuditableServicesResponse": { + "description": "A response containing a list of auditable services for a resource.", + "id": "QueryAuditableServicesResponse", + "properties": { + "services": { + "description": "The auditable services for a resource.", + "items": { + "$ref": "AuditableService" + }, + "type": "array" + } + }, + "type": "object" + }, + "QueryGrantableRolesRequest": { + "description": "The grantable role query request.", + "id": "QueryGrantableRolesRequest", + "properties": { + "fullResourceName": { + "description": "Required. The full resource name to query from the list of grantable roles.\n\nThe name follows the Google Cloud Platform resource format.\nFor example, a Cloud Platform project with id `my-project` will be named\n`//cloudresourcemanager.googleapis.com/projects/my-project`.", + "type": "string" + }, + "pageSize": { + "description": "Optional limit on the number of roles to include in the response.", + "format": "int32", + "type": "integer" + }, + "pageToken": { + "description": "Optional pagination token returned in an earlier\nQueryGrantableRolesResponse.", + "type": "string" + }, + "view": { + "enum": [ + "BASIC", + "FULL" + ], + "enumDescriptions": [ + "Omits the `included_permissions` field.\nThis is the default value.", + "Returns all fields." + ], + "type": "string" + } + }, + "type": "object" + }, + "QueryGrantableRolesResponse": { + "description": "The grantable role query response.", + "id": "QueryGrantableRolesResponse", + "properties": { + "nextPageToken": { + "description": "To retrieve the next page of results, set\n`QueryGrantableRolesRequest.page_token` to this value.", + "type": "string" + }, + "roles": { + "description": "The list of matching roles.", + "items": { + "$ref": "Role" + }, + "type": "array" + } + }, + "type": "object" + }, + "QueryTestablePermissionsRequest": { + "description": "A request to get permissions which can be tested on a resource.", + "id": "QueryTestablePermissionsRequest", + "properties": { + "fullResourceName": { + "description": "Required. The full resource name to query from the list of testable\npermissions.\n\nThe name follows the Google Cloud Platform resource format.\nFor example, a Cloud Platform project with id `my-project` will be named\n`//cloudresourcemanager.googleapis.com/projects/my-project`.", + "type": "string" + }, + "pageSize": { + "description": "Optional limit on the number of permissions to include in the response.", + "format": "int32", + "type": "integer" + }, + "pageToken": { + "description": "Optional pagination token returned in an earlier\nQueryTestablePermissionsRequest.", + "type": "string" + } + }, + "type": "object" + }, + "QueryTestablePermissionsResponse": { + "description": "The response containing permissions which can be tested on a resource.", + "id": "QueryTestablePermissionsResponse", + "properties": { + "nextPageToken": { + "description": "To retrieve the next page of results, set\n`QueryTestableRolesRequest.page_token` to this value.", + "type": "string" + }, + "permissions": { + "description": "The Permissions testable on the requested resource.", + "items": { + "$ref": "Permission" + }, + "type": "array" + } + }, + "type": "object" }, "Role": { "description": "A role in the Identity and Access Management API.", - "type": "object", + "id": "Role", "properties": { - "includedPermissions": { - "description": "The names of the permissions this role grants when bound in an IAM policy.", - "type": "array", - "items": { - "type": "string" - } + "deleted": { + "description": "The current deleted state of the role. This field is read only.\nIt will be ignored in calls to CreateRole and UpdateRole.", + "type": "boolean" }, "description": { "description": "Optional. A human-readable description for the role.", @@ -375,7 +1546,19 @@ "format": "byte", "type": "string" }, + "includedPermissions": { + "description": "The names of the permissions this role grants when bound in an IAM policy.", + "items": { + "type": "string" + }, + "type": "array" + }, + "name": { + "description": "The name of the role.\n\nWhen Role is used in CreateRole, the role name must not be set.\n\nWhen Role is used in output and other input such as UpdateRole, the role\nname is the complete path, e.g., roles/logging.viewer for curated roles\nand organizations/{ORGANIZATION_ID}/roles/logging.viewer for custom roles.", + "type": "string" + }, "stage": { + "description": "The current launch stage of the role.", "enum": [ "ALPHA", "BETA", @@ -384,8 +1567,6 @@ "DISABLED", "EAP" ], - "description": "The current launch stage of the role.", - "type": "string", "enumDescriptions": [ "The user has indicated this role is currently in an alpha phase.", "The user has indicated this role is currently in a beta phase.", @@ -393,85 +1574,41 @@ "The user has indicated this role is being deprecated.", "This role is disabled and will not contribute permissions to any members\nit is granted to in policies.", "The user has indicated this role is currently in an eap phase." - ] - }, - "name": { - "type": "string", - "description": "The name of the role.\n\nWhen Role is used in CreateRole, the role name must not be set.\n\nWhen Role is used in output and other input such as UpdateRole, the role\nname is the complete path, e.g., roles/logging.viewer for curated roles\nand organizations/{ORGANIZATION_ID}/roles/logging.viewer for custom roles." - }, - "deleted": { - "description": "The current deleted state of the role. This field is read only.\nIt will be ignored in calls to CreateRole and UpdateRole.", - "type": "boolean" + ], + "type": "string" }, "title": { "description": "Optional. A human-readable title for the role. Typically this\nis limited to 100 UTF-8 bytes.", "type": "string" } }, - "id": "Role" - }, - "Binding": { - "description": "Associates `members` with a `role`.", - "type": "object", - "properties": { - "role": { - "description": "Role that is assigned to `members`.\nFor example, `roles/viewer`, `roles/editor`, or `roles/owner`.\nRequired", - "type": "string" - }, - "members": { - "description": "Specifies the identities requesting access for a Cloud Platform resource.\n`members` can have the following values:\n\n* `allUsers`: A special identifier that represents anyone who is\n on the internet; with or without a Google account.\n\n* `allAuthenticatedUsers`: A special identifier that represents anyone\n who is authenticated with a Google account or a service account.\n\n* `user:{emailid}`: An email address that represents a specific Google\n account. For example, `alice@gmail.com` or `joe@example.com`.\n\n\n* `serviceAccount:{emailid}`: An email address that represents a service\n account. For example, `my-other-app@appspot.gserviceaccount.com`.\n\n* `group:{emailid}`: An email address that represents a Google group.\n For example, `admins@example.com`.\n\n\n* `domain:{domain}`: A Google Apps domain name that represents all the\n users of that domain. For example, `google.com` or `example.com`.\n\n", - "type": "array", - "items": { - "type": "string" - } - } - }, - "id": "Binding" - }, - "QueryGrantableRolesRequest": { - "description": "The grantable role query request.", - "type": "object", - "properties": { - "pageToken": { - "description": "Optional pagination token returned in an earlier\nQueryGrantableRolesResponse.", - "type": "string" - }, - "pageSize": { - "description": "Optional limit on the number of roles to include in the response.", - "format": "int32", - "type": "integer" - }, - "view": { - "type": "string", - "enumDescriptions": [ - "Omits the `included_permissions` field.\nThis is the default value.", - "Returns all fields." - ], - "enum": [ - "BASIC", - "FULL" - ] - }, - "fullResourceName": { - "description": "Required. The full resource name to query from the list of grantable roles.\n\nThe name follows the Google Cloud Platform resource format.\nFor example, a Cloud Platform project with id `my-project` will be named\n`//cloudresourcemanager.googleapis.com/projects/my-project`.", - "type": "string" - } - }, - "id": "QueryGrantableRolesRequest" + "type": "object" }, "ServiceAccount": { - "id": "ServiceAccount", "description": "A service account in the Identity and Access Management API.\n\nTo create a service account, specify the `project_id` and the `account_id`\nfor the account. The `account_id` is unique within the project, and is used\nto generate the service account email address and a stable\n`unique_id`.\n\nIf the account already exists, the account's resource name is returned\nin the format of projects/{PROJECT_ID}/serviceAccounts/{ACCOUNT}. The caller\ncan use the name in other methods to access the account.\n\nAll other methods can identify the service account using the format\n`projects/{PROJECT_ID}/serviceAccounts/{ACCOUNT}`.\nUsing `-` as a wildcard for the `PROJECT_ID` will infer the project from\nthe account. The `ACCOUNT` value can be the `email` address or the\n`unique_id` of the service account.", - "type": "object", + "id": "ServiceAccount", "properties": { - "name": { - "type": "string", - "description": "The resource name of the service account in the following format:\n`projects/{PROJECT_ID}/serviceAccounts/{ACCOUNT}`.\n\nRequests using `-` as a wildcard for the `PROJECT_ID` will infer the\nproject from the `account` and the `ACCOUNT` value can be the `email`\naddress or the `unique_id` of the service account.\n\nIn responses the resource name will always be in the format\n`projects/{PROJECT_ID}/serviceAccounts/{ACCOUNT}`." + "displayName": { + "description": "Optional. A user-specified description of the service account. Must be\nfewer than 100 UTF-8 bytes.", + "type": "string" }, "email": { "description": "@OutputOnly The email address of the service account.", "type": "string" }, + "etag": { + "description": "Used to perform a consistent read-modify-write.", + "format": "byte", + "type": "string" + }, + "name": { + "description": "The resource name of the service account in the following format:\n`projects/{PROJECT_ID}/serviceAccounts/{ACCOUNT}`.\n\nRequests using `-` as a wildcard for the `PROJECT_ID` will infer the\nproject from the `account` and the `ACCOUNT` value can be the `email`\naddress or the `unique_id` of the service account.\n\nIn responses the resource name will always be in the format\n`projects/{PROJECT_ID}/serviceAccounts/{ACCOUNT}`.", + "type": "string" + }, + "oauth2ClientId": { + "description": "@OutputOnly The OAuth2 client id for the service account.\nThis is used in conjunction with the OAuth2 clientconfig API to make\nthree legged OAuth2 (3LO) flows to access the data of Google users.", + "type": "string" + }, "projectId": { "description": "@OutputOnly The id of the project that owns the service account.", "type": "string" @@ -479,129 +1616,54 @@ "uniqueId": { "description": "@OutputOnly The unique and stable id of the service account.", "type": "string" - }, - "oauth2ClientId": { - "description": "@OutputOnly The OAuth2 client id for the service account.\nThis is used in conjunction with the OAuth2 clientconfig API to make\nthree legged OAuth2 (3LO) flows to access the data of Google users.", - "type": "string" - }, - "displayName": { - "description": "Optional. A user-specified description of the service account. Must be\nfewer than 100 UTF-8 bytes.", - "type": "string" - }, - "etag": { - "description": "Used to perform a consistent read-modify-write.", - "format": "byte", - "type": "string" - } - } - }, - "CreateRoleRequest": { - "description": "The request to create a new role.", - "type": "object", - "properties": { - "roleId": { - "description": "The role id to use for this role.", - "type": "string" - }, - "role": { - "description": "The Role resource to create.", - "$ref": "Role" } }, - "id": "CreateRoleRequest" - }, - "QueryTestablePermissionsRequest": { - "id": "QueryTestablePermissionsRequest", - "description": "A request to get permissions which can be tested on a resource.", - "type": "object", - "properties": { - "fullResourceName": { - "description": "Required. The full resource name to query from the list of testable\npermissions.\n\nThe name follows the Google Cloud Platform resource format.\nFor example, a Cloud Platform project with id `my-project` will be named\n`//cloudresourcemanager.googleapis.com/projects/my-project`.", - "type": "string" - }, - "pageToken": { - "type": "string", - "description": "Optional pagination token returned in an earlier\nQueryTestablePermissionsRequest." - }, - "pageSize": { - "description": "Optional limit on the number of permissions to include in the response.", - "format": "int32", - "type": "integer" - } - } - }, - "TestIamPermissionsResponse": { - "description": "Response message for `TestIamPermissions` method.", - "type": "object", - "properties": { - "permissions": { - "description": "A subset of `TestPermissionsRequest.permissions` that the caller is\nallowed.", - "type": "array", - "items": { - "type": "string" - } - } - }, - "id": "TestIamPermissionsResponse" - }, - "ListServiceAccountKeysResponse": { - "description": "The service account keys list response.", - "type": "object", - "properties": { - "keys": { - "type": "array", - "items": { - "$ref": "ServiceAccountKey" - }, - "description": "The public keys for the service account." - } - }, - "id": "ListServiceAccountKeysResponse" + "type": "object" }, "ServiceAccountKey": { "description": "Represents a service account key.\n\nA service account has two sets of key-pairs: user-managed, and\nsystem-managed.\n\nUser-managed key-pairs can be created and deleted by users. Users are\nresponsible for rotating these keys periodically to ensure security of\ntheir service accounts. Users retain the private key of these key-pairs,\nand Google retains ONLY the public key.\n\nSystem-managed key-pairs are managed automatically by Google, and rotated\ndaily without user intervention. The private key never leaves Google's\nservers to maximize security.\n\nPublic keys for all service accounts are also published at the OAuth2\nService Account API.", - "type": "object", + "id": "ServiceAccountKey", "properties": { - "publicKeyData": { - "description": "The public key data. Only provided in `GetServiceAccountKey` responses.", - "format": "byte", + "keyAlgorithm": { + "description": "Specifies the algorithm (and possibly key size) for the key.", + "enum": [ + "KEY_ALG_UNSPECIFIED", + "KEY_ALG_RSA_1024", + "KEY_ALG_RSA_2048" + ], + "enumDescriptions": [ + "An unspecified key algorithm.", + "1k RSA Key.", + "2k RSA Key." + ], "type": "string" }, "name": { "description": "The resource name of the service account key in the following format\n`projects/{PROJECT_ID}/serviceAccounts/{ACCOUNT}/keys/{key}`.", "type": "string" }, - "validBeforeTime": { - "description": "The key can be used before this timestamp.", - "format": "google-datetime", + "privateKeyData": { + "description": "The private key data. Only provided in `CreateServiceAccountKey`\nresponses. Make sure to keep the private key data secure because it\nallows for the assertion of the service account identity.\nWhen base64 decoded, the private key data can be used to authenticate with\nGoogle API client libraries and with\n\u003ca href=\"/sdk/gcloud/reference/auth/activate-service-account\"\u003egcloud\nauth activate-service-account\u003c/a\u003e.", + "format": "byte", "type": "string" }, - "keyAlgorithm": { - "description": "Specifies the algorithm (and possibly key size) for the key.", - "type": "string", - "enumDescriptions": [ - "An unspecified key algorithm.", - "1k RSA Key.", - "2k RSA Key." - ], - "enum": [ - "KEY_ALG_UNSPECIFIED", - "KEY_ALG_RSA_1024", - "KEY_ALG_RSA_2048" - ] - }, "privateKeyType": { - "enumDescriptions": [ - "Unspecified. Equivalent to `TYPE_GOOGLE_CREDENTIALS_FILE`.", - "PKCS12 format.\nThe password for the PKCS12 file is `notasecret`.\nFor more information, see https://tools.ietf.org/html/rfc7292.", - "Google Credentials File format." - ], + "description": "The output format for the private key.\nOnly provided in `CreateServiceAccountKey` responses, not\nin `GetServiceAccountKey` or `ListServiceAccountKey` responses.\n\nGoogle never exposes system-managed private keys, and never retains\nuser-managed private keys.", "enum": [ "TYPE_UNSPECIFIED", "TYPE_PKCS12_FILE", "TYPE_GOOGLE_CREDENTIALS_FILE" ], - "description": "The output format for the private key.\nOnly provided in `CreateServiceAccountKey` responses, not\nin `GetServiceAccountKey` or `ListServiceAccountKey` responses.\n\nGoogle never exposes system-managed private keys, and never retains\nuser-managed private keys.", + "enumDescriptions": [ + "Unspecified. Equivalent to `TYPE_GOOGLE_CREDENTIALS_FILE`.", + "PKCS12 format.\nThe password for the PKCS12 file is `notasecret`.\nFor more information, see https://tools.ietf.org/html/rfc7292.", + "Google Credentials File format." + ], + "type": "string" + }, + "publicKeyData": { + "description": "The public key data. Only provided in `GetServiceAccountKey` responses.", + "format": "byte", "type": "string" }, "validAfterTime": { @@ -609,1067 +1671,127 @@ "format": "google-datetime", "type": "string" }, - "privateKeyData": { - "description": "The private key data. Only provided in `CreateServiceAccountKey`\nresponses. Make sure to keep the private key data secure because it\nallows for the assertion of the service account identity.\nWhen decoded, the private key data can be used to authenticate with\nGoogle API client libraries and with\n\u003ca href=\"/sdk/gcloud/reference/auth/activate-service-account\"\u003egcloud\nauth activate-service-account\u003c/a\u003e.", + "validBeforeTime": { + "description": "The key can be used before this timestamp.", + "format": "google-datetime", + "type": "string" + } + }, + "type": "object" + }, + "SetIamPolicyRequest": { + "description": "Request message for `SetIamPolicy` method.", + "id": "SetIamPolicyRequest", + "properties": { + "policy": { + "$ref": "Policy", + "description": "REQUIRED: The complete policy to be applied to the `resource`. The size of\nthe policy is limited to a few 10s of KB. An empty policy is a\nvalid policy but certain Cloud Platform services (such as Projects)\nmight reject them." + }, + "updateMask": { + "description": "OPTIONAL: A FieldMask specifying which fields of the policy to modify. Only\nthe fields in the mask will be modified. If no mask is provided, the\nfollowing default mask is used:\npaths: \"bindings, etag\"\nThis field is only used by Cloud IAM.", + "format": "google-fieldmask", + "type": "string" + } + }, + "type": "object" + }, + "SignBlobRequest": { + "description": "The service account sign blob request.", + "id": "SignBlobRequest", + "properties": { + "bytesToSign": { + "description": "The bytes to sign.", "format": "byte", "type": "string" } }, - "id": "ServiceAccountKey" - } - }, - "protocol": "rest", - "icons": { - "x16": "http://www.google.com/images/icons/product/search-16.gif", - "x32": "http://www.google.com/images/icons/product/search-32.gif" - }, - "canonicalName": "iam", - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/cloud-platform": { - "description": "View and manage your data across Google Cloud Platform services" - } - } - } - }, - "rootUrl": "https://iam.googleapis.com/", - "ownerDomain": "google.com", - "name": "iam", - "batchPath": "batch", - "fullyEncodeReservedExpansion": true, - "title": "Google Identity and Access Management (IAM) API", - "ownerName": "Google", - "resources": { - "organizations": { - "resources": { - "roles": { - "methods": { - "list": { - "response": { - "$ref": "ListRolesResponse" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "view": { - "enum": [ - "BASIC", - "FULL" - ], - "description": "Optional view for the returned Role objects.", - "type": "string", - "location": "query" - }, - "parent": { - "location": "path", - "description": "The resource name of the parent resource in one of the following formats:\n`` (empty string) -- this refers to curated roles.\n`organizations/{ORGANIZATION_ID}`\n`projects/{PROJECT_ID}`", - "required": true, - "type": "string", - "pattern": "^organizations/[^/]+$" - }, - "showDeleted": { - "type": "boolean", - "location": "query", - "description": "Include Roles that have been deleted." - }, - "pageToken": { - "description": "Optional pagination token returned in an earlier ListRolesResponse.", - "type": "string", - "location": "query" - }, - "pageSize": { - "description": "Optional limit on the number of roles to include in the response.", - "format": "int32", - "type": "integer", - "location": "query" - } - }, - "flatPath": "v1/organizations/{organizationsId}/roles", - "path": "v1/{+parent}/roles", - "id": "iam.organizations.roles.list", - "description": "Lists the Roles defined on a resource." - }, - "create": { - "flatPath": "v1/organizations/{organizationsId}/roles", - "path": "v1/{+parent}/roles", - "id": "iam.organizations.roles.create", - "description": "Creates a new Role.", - "request": { - "$ref": "CreateRoleRequest" - }, - "response": { - "$ref": "Role" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "parent": { - "description": "The resource name of the parent resource in one of the following formats:\n`organizations/{ORGANIZATION_ID}`\n`projects/{PROJECT_ID}`", - "required": true, - "type": "string", - "pattern": "^organizations/[^/]+$", - "location": "path" - } - } - }, - "undelete": { - "httpMethod": "POST", - "parameterOrder": [ - "name" - ], - "response": { - "$ref": "Role" - }, - "parameters": { - "name": { - "pattern": "^organizations/[^/]+/roles/[^/]+$", - "location": "path", - "description": "The resource name of the role in one of the following formats:\n`organizations/{ORGANIZATION_ID}/roles/{ROLE_NAME}`\n`projects/{PROJECT_ID}/roles/{ROLE_NAME}`", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/organizations/{organizationsId}/roles/{rolesId}:undelete", - "id": "iam.organizations.roles.undelete", - "path": "v1/{+name}:undelete", - "request": { - "$ref": "UndeleteRoleRequest" - }, - "description": "Undelete a Role, bringing it back in its previous state." - }, - "get": { - "httpMethod": "GET", - "parameterOrder": [ - "name" - ], - "response": { - "$ref": "Role" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "name": { - "description": "The resource name of the role in one of the following formats:\n`roles/{ROLE_NAME}`\n`organizations/{ORGANIZATION_ID}/roles/{ROLE_NAME}`\n`projects/{PROJECT_ID}/roles/{ROLE_NAME}`", - "required": true, - "type": "string", - "pattern": "^organizations/[^/]+/roles/[^/]+$", - "location": "path" - } - }, - "flatPath": "v1/organizations/{organizationsId}/roles/{rolesId}", - "id": "iam.organizations.roles.get", - "path": "v1/{+name}", - "description": "Gets a Role definition." - }, - "patch": { - "flatPath": "v1/organizations/{organizationsId}/roles/{rolesId}", - "id": "iam.organizations.roles.patch", - "path": "v1/{+name}", - "description": "Updates a Role definition.", - "request": { - "$ref": "Role" - }, - "httpMethod": "PATCH", - "parameterOrder": [ - "name" - ], - "response": { - "$ref": "Role" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "name": { - "required": true, - "type": "string", - "pattern": "^organizations/[^/]+/roles/[^/]+$", - "location": "path", - "description": "The resource name of the role in one of the following formats:\n`roles/{ROLE_NAME}`\n`organizations/{ORGANIZATION_ID}/roles/{ROLE_NAME}`\n`projects/{PROJECT_ID}/roles/{ROLE_NAME}`" - }, - "updateMask": { - "location": "query", - "description": "A mask describing which fields in the Role have changed.", - "format": "google-fieldmask", - "type": "string" - } - } - }, - "delete": { - "id": "iam.organizations.roles.delete", - "path": "v1/{+name}", - "description": "Soft deletes a role. The role is suspended and cannot be used to create new\nIAM Policy Bindings.\nThe Role will not be included in `ListRoles()` unless `show_deleted` is set\nin the `ListRolesRequest`. The Role contains the deleted boolean set.\nExisting Bindings remains, but are inactive. The Role can be undeleted\nwithin 7 days. After 7 days the Role is deleted and all Bindings associated\nwith the role are removed.", - "httpMethod": "DELETE", - "parameterOrder": [ - "name" - ], - "response": { - "$ref": "Role" - }, - "parameters": { - "name": { - "description": "The resource name of the role in one of the following formats:\n`organizations/{ORGANIZATION_ID}/roles/{ROLE_NAME}`\n`projects/{PROJECT_ID}/roles/{ROLE_NAME}`", - "required": true, - "type": "string", - "pattern": "^organizations/[^/]+/roles/[^/]+$", - "location": "path" - }, - "etag": { - "location": "query", - "description": "Used to perform a consistent read-modify-write.", - "format": "byte", - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/organizations/{organizationsId}/roles/{rolesId}" - } - } - } - } + "type": "object" }, - "projects": { - "resources": { - "serviceAccounts": { - "methods": { - "getIamPolicy": { - "flatPath": "v1/projects/{projectsId}/serviceAccounts/{serviceAccountsId}:getIamPolicy", - "path": "v1/{+resource}:getIamPolicy", - "id": "iam.projects.serviceAccounts.getIamPolicy", - "description": "Returns the IAM access control policy for a\nServiceAccount.", - "response": { - "$ref": "Policy" - }, - "parameterOrder": [ - "resource" - ], - "httpMethod": "POST", - "parameters": { - "resource": { - "pattern": "^projects/[^/]+/serviceAccounts/[^/]+$", - "location": "path", - "description": "REQUIRED: The resource for which the policy is being requested.\nSee the operation documentation for the appropriate value for this field.", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "get": { - "description": "Gets a ServiceAccount.", - "httpMethod": "GET", - "parameterOrder": [ - "name" - ], - "response": { - "$ref": "ServiceAccount" - }, - "parameters": { - "name": { - "description": "The resource name of the service account in the following format:\n`projects/{PROJECT_ID}/serviceAccounts/{ACCOUNT}`.\nUsing `-` as a wildcard for the `PROJECT_ID` will infer the project from\nthe account. The `ACCOUNT` value can be the `email` address or the\n`unique_id` of the service account.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/serviceAccounts/[^/]+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/projects/{projectsId}/serviceAccounts/{serviceAccountsId}", - "id": "iam.projects.serviceAccounts.get", - "path": "v1/{+name}" - }, - "update": { - "response": { - "$ref": "ServiceAccount" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "PUT", - "parameters": { - "name": { - "location": "path", - "description": "The resource name of the service account in the following format:\n`projects/{PROJECT_ID}/serviceAccounts/{ACCOUNT}`.\n\nRequests using `-` as a wildcard for the `PROJECT_ID` will infer the\nproject from the `account` and the `ACCOUNT` value can be the `email`\naddress or the `unique_id` of the service account.\n\nIn responses the resource name will always be in the format\n`projects/{PROJECT_ID}/serviceAccounts/{ACCOUNT}`.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/serviceAccounts/[^/]+$" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/projects/{projectsId}/serviceAccounts/{serviceAccountsId}", - "path": "v1/{+name}", - "id": "iam.projects.serviceAccounts.update", - "request": { - "$ref": "ServiceAccount" - }, - "description": "Updates a ServiceAccount.\n\nCurrently, only the following fields are updatable:\n`display_name` .\nThe `etag` is mandatory." - }, - "testIamPermissions": { - "response": { - "$ref": "TestIamPermissionsResponse" - }, - "parameterOrder": [ - "resource" - ], - "httpMethod": "POST", - "parameters": { - "resource": { - "pattern": "^projects/[^/]+/serviceAccounts/[^/]+$", - "location": "path", - "description": "REQUIRED: The resource for which the policy detail is being requested.\nSee the operation documentation for the appropriate value for this field.", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/projects/{projectsId}/serviceAccounts/{serviceAccountsId}:testIamPermissions", - "path": "v1/{+resource}:testIamPermissions", - "id": "iam.projects.serviceAccounts.testIamPermissions", - "request": { - "$ref": "TestIamPermissionsRequest" - }, - "description": "Tests the specified permissions against the IAM access control policy\nfor a ServiceAccount." - }, - "delete": { - "httpMethod": "DELETE", - "parameterOrder": [ - "name" - ], - "response": { - "$ref": "Empty" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "name": { - "location": "path", - "description": "The resource name of the service account in the following format:\n`projects/{PROJECT_ID}/serviceAccounts/{ACCOUNT}`.\nUsing `-` as a wildcard for the `PROJECT_ID` will infer the project from\nthe account. The `ACCOUNT` value can be the `email` address or the\n`unique_id` of the service account.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/serviceAccounts/[^/]+$" - } - }, - "flatPath": "v1/projects/{projectsId}/serviceAccounts/{serviceAccountsId}", - "id": "iam.projects.serviceAccounts.delete", - "path": "v1/{+name}", - "description": "Deletes a ServiceAccount." - }, - "list": { - "response": { - "$ref": "ListServiceAccountsResponse" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "GET", - "parameters": { - "name": { - "description": "Required. The resource name of the project associated with the service\naccounts, such as `projects/my-project-123`.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+$", - "location": "path" - }, - "pageToken": { - "location": "query", - "description": "Optional pagination token returned in an earlier\nListServiceAccountsResponse.next_page_token.", - "type": "string" - }, - "pageSize": { - "description": "Optional limit on the number of service accounts to include in the\nresponse. Further accounts can subsequently be obtained by including the\nListServiceAccountsResponse.next_page_token\nin a subsequent request.", - "format": "int32", - "type": "integer", - "location": "query" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/projects/{projectsId}/serviceAccounts", - "path": "v1/{+name}/serviceAccounts", - "id": "iam.projects.serviceAccounts.list", - "description": "Lists ServiceAccounts for a project." - }, - "signBlob": { - "request": { - "$ref": "SignBlobRequest" - }, - "description": "Signs a blob using a service account's system-managed private key.", - "response": { - "$ref": "SignBlobResponse" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "POST", - "parameters": { - "name": { - "pattern": "^projects/[^/]+/serviceAccounts/[^/]+$", - "location": "path", - "description": "The resource name of the service account in the following format:\n`projects/{PROJECT_ID}/serviceAccounts/{ACCOUNT}`.\nUsing `-` as a wildcard for the `PROJECT_ID` will infer the project from\nthe account. The `ACCOUNT` value can be the `email` address or the\n`unique_id` of the service account.", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/projects/{projectsId}/serviceAccounts/{serviceAccountsId}:signBlob", - "path": "v1/{+name}:signBlob", - "id": "iam.projects.serviceAccounts.signBlob" - }, - "setIamPolicy": { - "request": { - "$ref": "SetIamPolicyRequest" - }, - "description": "Sets the IAM access control policy for a\nServiceAccount.", - "response": { - "$ref": "Policy" - }, - "parameterOrder": [ - "resource" - ], - "httpMethod": "POST", - "parameters": { - "resource": { - "location": "path", - "description": "REQUIRED: The resource for which the policy is being specified.\nSee the operation documentation for the appropriate value for this field.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/serviceAccounts/[^/]+$" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/projects/{projectsId}/serviceAccounts/{serviceAccountsId}:setIamPolicy", - "path": "v1/{+resource}:setIamPolicy", - "id": "iam.projects.serviceAccounts.setIamPolicy" - }, - "signJwt": { - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "name": { - "pattern": "^projects/[^/]+/serviceAccounts/[^/]+$", - "location": "path", - "description": "The resource name of the service account in the following format:\n`projects/{PROJECT_ID}/serviceAccounts/{ACCOUNT}`.\nUsing `-` as a wildcard for the `PROJECT_ID` will infer the project from\nthe account. The `ACCOUNT` value can be the `email` address or the\n`unique_id` of the service account.", - "required": true, - "type": "string" - } - }, - "flatPath": "v1/projects/{projectsId}/serviceAccounts/{serviceAccountsId}:signJwt", - "path": "v1/{+name}:signJwt", - "id": "iam.projects.serviceAccounts.signJwt", - "description": "Signs a JWT using a service account's system-managed private key.\n\nIf no expiry time (`exp`) is provided in the `SignJwtRequest`, IAM sets an\nan expiry time of one hour by default. If you request an expiry time of\nmore than one hour, the request will fail.", - "request": { - "$ref": "SignJwtRequest" - }, - "response": { - "$ref": "SignJwtResponse" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "POST" - }, - "create": { - "httpMethod": "POST", - "parameterOrder": [ - "name" - ], - "response": { - "$ref": "ServiceAccount" - }, - "parameters": { - "name": { - "description": "Required. The resource name of the project associated with the service\naccounts, such as `projects/my-project-123`.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/projects/{projectsId}/serviceAccounts", - "id": "iam.projects.serviceAccounts.create", - "path": "v1/{+name}/serviceAccounts", - "request": { - "$ref": "CreateServiceAccountRequest" - }, - "description": "Creates a ServiceAccount\nand returns it." - } - }, - "resources": { - "keys": { - "methods": { - "delete": { - "parameters": { - "name": { - "location": "path", - "description": "The resource name of the service account key in the following format:\n`projects/{PROJECT_ID}/serviceAccounts/{ACCOUNT}/keys/{key}`.\nUsing `-` as a wildcard for the `PROJECT_ID` will infer the project from\nthe account. The `ACCOUNT` value can be the `email` address or the\n`unique_id` of the service account.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/serviceAccounts/[^/]+/keys/[^/]+$" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/projects/{projectsId}/serviceAccounts/{serviceAccountsId}/keys/{keysId}", - "path": "v1/{+name}", - "id": "iam.projects.serviceAccounts.keys.delete", - "description": "Deletes a ServiceAccountKey.", - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "DELETE" - }, - "list": { - "description": "Lists ServiceAccountKeys.", - "httpMethod": "GET", - "response": { - "$ref": "ListServiceAccountKeysResponse" - }, - "parameterOrder": [ - "name" - ], - "parameters": { - "keyTypes": { - "repeated": true, - "location": "query", - "enum": [ - "KEY_TYPE_UNSPECIFIED", - "USER_MANAGED", - "SYSTEM_MANAGED" - ], - "description": "Filters the types of keys the user wants to include in the list\nresponse. Duplicate key types are not allowed. If no key type\nis provided, all keys are returned.", - "type": "string" - }, - "name": { - "description": "The resource name of the service account in the following format:\n`projects/{PROJECT_ID}/serviceAccounts/{ACCOUNT}`.\n\nUsing `-` as a wildcard for the `PROJECT_ID`, will infer the project from\nthe account. The `ACCOUNT` value can be the `email` address or the\n`unique_id` of the service account.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/serviceAccounts/[^/]+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/projects/{projectsId}/serviceAccounts/{serviceAccountsId}/keys", - "id": "iam.projects.serviceAccounts.keys.list", - "path": "v1/{+name}/keys" - }, - "get": { - "response": { - "$ref": "ServiceAccountKey" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "publicKeyType": { - "enum": [ - "TYPE_NONE", - "TYPE_X509_PEM_FILE", - "TYPE_RAW_PUBLIC_KEY" - ], - "description": "The output format of the public key requested.\nX509_PEM is the default output format.", - "type": "string", - "location": "query" - }, - "name": { - "description": "The resource name of the service account key in the following format:\n`projects/{PROJECT_ID}/serviceAccounts/{ACCOUNT}/keys/{key}`.\n\nUsing `-` as a wildcard for the `PROJECT_ID` will infer the project from\nthe account. The `ACCOUNT` value can be the `email` address or the\n`unique_id` of the service account.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/serviceAccounts/[^/]+/keys/[^/]+$", - "location": "path" - } - }, - "flatPath": "v1/projects/{projectsId}/serviceAccounts/{serviceAccountsId}/keys/{keysId}", - "path": "v1/{+name}", - "id": "iam.projects.serviceAccounts.keys.get", - "description": "Gets the ServiceAccountKey\nby key id." - }, - "create": { - "path": "v1/{+name}/keys", - "id": "iam.projects.serviceAccounts.keys.create", - "description": "Creates a ServiceAccountKey\nand returns it.", - "request": { - "$ref": "CreateServiceAccountKeyRequest" - }, - "response": { - "$ref": "ServiceAccountKey" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "name": { - "description": "The resource name of the service account in the following format:\n`projects/{PROJECT_ID}/serviceAccounts/{ACCOUNT}`.\nUsing `-` as a wildcard for the `PROJECT_ID` will infer the project from\nthe account. The `ACCOUNT` value can be the `email` address or the\n`unique_id` of the service account.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/serviceAccounts/[^/]+$", - "location": "path" - } - }, - "flatPath": "v1/projects/{projectsId}/serviceAccounts/{serviceAccountsId}/keys" - } - } - } - } + "SignBlobResponse": { + "description": "The service account sign blob response.", + "id": "SignBlobResponse", + "properties": { + "keyId": { + "description": "The id of the key used to sign the blob.", + "type": "string" }, - "roles": { - "methods": { - "list": { - "description": "Lists the Roles defined on a resource.", - "response": { - "$ref": "ListRolesResponse" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "GET", - "parameters": { - "showDeleted": { - "location": "query", - "description": "Include Roles that have been deleted.", - "type": "boolean" - }, - "pageToken": { - "description": "Optional pagination token returned in an earlier ListRolesResponse.", - "type": "string", - "location": "query" - }, - "pageSize": { - "description": "Optional limit on the number of roles to include in the response.", - "format": "int32", - "type": "integer", - "location": "query" - }, - "view": { - "location": "query", - "enum": [ - "BASIC", - "FULL" - ], - "description": "Optional view for the returned Role objects.", - "type": "string" - }, - "parent": { - "description": "The resource name of the parent resource in one of the following formats:\n`` (empty string) -- this refers to curated roles.\n`organizations/{ORGANIZATION_ID}`\n`projects/{PROJECT_ID}`", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/projects/{projectsId}/roles", - "path": "v1/{+parent}/roles", - "id": "iam.projects.roles.list" - }, - "create": { - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "parent": { - "description": "The resource name of the parent resource in one of the following formats:\n`organizations/{ORGANIZATION_ID}`\n`projects/{PROJECT_ID}`", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+$", - "location": "path" - } - }, - "flatPath": "v1/projects/{projectsId}/roles", - "path": "v1/{+parent}/roles", - "id": "iam.projects.roles.create", - "description": "Creates a new Role.", - "request": { - "$ref": "CreateRoleRequest" - }, - "response": { - "$ref": "Role" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "POST" - }, - "undelete": { - "response": { - "$ref": "Role" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "POST", - "parameters": { - "name": { - "pattern": "^projects/[^/]+/roles/[^/]+$", - "location": "path", - "description": "The resource name of the role in one of the following formats:\n`organizations/{ORGANIZATION_ID}/roles/{ROLE_NAME}`\n`projects/{PROJECT_ID}/roles/{ROLE_NAME}`", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/projects/{projectsId}/roles/{rolesId}:undelete", - "path": "v1/{+name}:undelete", - "id": "iam.projects.roles.undelete", - "request": { - "$ref": "UndeleteRoleRequest" - }, - "description": "Undelete a Role, bringing it back in its previous state." - }, - "get": { - "description": "Gets a Role definition.", - "response": { - "$ref": "Role" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "name": { - "description": "The resource name of the role in one of the following formats:\n`roles/{ROLE_NAME}`\n`organizations/{ORGANIZATION_ID}/roles/{ROLE_NAME}`\n`projects/{PROJECT_ID}/roles/{ROLE_NAME}`", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/roles/[^/]+$", - "location": "path" - } - }, - "flatPath": "v1/projects/{projectsId}/roles/{rolesId}", - "path": "v1/{+name}", - "id": "iam.projects.roles.get" - }, - "patch": { - "parameters": { - "name": { - "location": "path", - "description": "The resource name of the role in one of the following formats:\n`roles/{ROLE_NAME}`\n`organizations/{ORGANIZATION_ID}/roles/{ROLE_NAME}`\n`projects/{PROJECT_ID}/roles/{ROLE_NAME}`", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/roles/[^/]+$" - }, - "updateMask": { - "description": "A mask describing which fields in the Role have changed.", - "format": "google-fieldmask", - "type": "string", - "location": "query" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/projects/{projectsId}/roles/{rolesId}", - "path": "v1/{+name}", - "id": "iam.projects.roles.patch", - "request": { - "$ref": "Role" - }, - "description": "Updates a Role definition.", - "response": { - "$ref": "Role" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "PATCH" - }, - "delete": { - "description": "Soft deletes a role. The role is suspended and cannot be used to create new\nIAM Policy Bindings.\nThe Role will not be included in `ListRoles()` unless `show_deleted` is set\nin the `ListRolesRequest`. The Role contains the deleted boolean set.\nExisting Bindings remains, but are inactive. The Role can be undeleted\nwithin 7 days. After 7 days the Role is deleted and all Bindings associated\nwith the role are removed.", - "response": { - "$ref": "Role" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "DELETE", - "parameters": { - "name": { - "location": "path", - "description": "The resource name of the role in one of the following formats:\n`organizations/{ORGANIZATION_ID}/roles/{ROLE_NAME}`\n`projects/{PROJECT_ID}/roles/{ROLE_NAME}`", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/roles/[^/]+$" - }, - "etag": { - "type": "string", - "location": "query", - "description": "Used to perform a consistent read-modify-write.", - "format": "byte" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/projects/{projectsId}/roles/{rolesId}", - "path": "v1/{+name}", - "id": "iam.projects.roles.delete" - } - } + "signature": { + "description": "The signed blob.", + "format": "byte", + "type": "string" } - } + }, + "type": "object" }, - "roles": { - "methods": { - "queryGrantableRoles": { - "path": "v1/roles:queryGrantableRoles", - "id": "iam.roles.queryGrantableRoles", - "description": "Queries roles that can be granted on a particular resource.\nA role is grantable if it can be used as the role in a binding for a policy\nfor that resource.", - "request": { - "$ref": "QueryGrantableRolesRequest" - }, - "response": { - "$ref": "QueryGrantableRolesResponse" - }, - "parameterOrder": [], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": {}, - "flatPath": "v1/roles:queryGrantableRoles" - }, - "list": { - "description": "Lists the Roles defined on a resource.", - "response": { - "$ref": "ListRolesResponse" - }, - "parameterOrder": [], - "httpMethod": "GET", - "parameters": { - "pageToken": { - "location": "query", - "description": "Optional pagination token returned in an earlier ListRolesResponse.", - "type": "string" - }, - "pageSize": { - "description": "Optional limit on the number of roles to include in the response.", - "format": "int32", - "type": "integer", - "location": "query" - }, - "view": { - "description": "Optional view for the returned Role objects.", - "type": "string", - "location": "query", - "enum": [ - "BASIC", - "FULL" - ] - }, - "parent": { - "location": "query", - "description": "The resource name of the parent resource in one of the following formats:\n`` (empty string) -- this refers to curated roles.\n`organizations/{ORGANIZATION_ID}`\n`projects/{PROJECT_ID}`", - "type": "string" - }, - "showDeleted": { - "location": "query", - "description": "Include Roles that have been deleted.", - "type": "boolean" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/roles", - "path": "v1/roles", - "id": "iam.roles.list" - }, - "get": { - "description": "Gets a Role definition.", - "response": { - "$ref": "Role" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "name": { - "location": "path", - "description": "The resource name of the role in one of the following formats:\n`roles/{ROLE_NAME}`\n`organizations/{ORGANIZATION_ID}/roles/{ROLE_NAME}`\n`projects/{PROJECT_ID}/roles/{ROLE_NAME}`", - "required": true, - "type": "string", - "pattern": "^roles/[^/]+$" - } - }, - "flatPath": "v1/roles/{rolesId}", - "path": "v1/{+name}", - "id": "iam.roles.get" + "SignJwtRequest": { + "description": "The service account sign JWT request.", + "id": "SignJwtRequest", + "properties": { + "payload": { + "description": "The JWT payload to sign, a JSON JWT Claim set.", + "type": "string" } - } + }, + "type": "object" }, - "permissions": { - "methods": { - "queryTestablePermissions": { - "httpMethod": "POST", - "parameterOrder": [], - "response": { - "$ref": "QueryTestablePermissionsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": {}, - "flatPath": "v1/permissions:queryTestablePermissions", - "id": "iam.permissions.queryTestablePermissions", - "path": "v1/permissions:queryTestablePermissions", - "description": "Lists the permissions testable on a resource.\nA permission is testable if it can be tested for an identity on a resource.", - "request": { - "$ref": "QueryTestablePermissionsRequest" - } + "SignJwtResponse": { + "description": "The service account sign JWT response.", + "id": "SignJwtResponse", + "properties": { + "keyId": { + "description": "The id of the key used to sign the JWT.", + "type": "string" + }, + "signedJwt": { + "description": "The signed JWT.", + "type": "string" } - } + }, + "type": "object" + }, + "TestIamPermissionsRequest": { + "description": "Request message for `TestIamPermissions` method.", + "id": "TestIamPermissionsRequest", + "properties": { + "permissions": { + "description": "The set of permissions to check for the `resource`. Permissions with\nwildcards (such as '*' or 'storage.*') are not allowed. For more\ninformation see\n[IAM Overview](https://cloud.google.com/iam/docs/overview#permissions).", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "TestIamPermissionsResponse": { + "description": "Response message for `TestIamPermissions` method.", + "id": "TestIamPermissionsResponse", + "properties": { + "permissions": { + "description": "A subset of `TestPermissionsRequest.permissions` that the caller is\nallowed.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "UndeleteRoleRequest": { + "description": "The request to undelete an existing role.", + "id": "UndeleteRoleRequest", + "properties": { + "etag": { + "description": "Used to perform a consistent read-modify-write.", + "format": "byte", + "type": "string" + } + }, + "type": "object" } }, - "parameters": { - "oauth_token": { - "location": "query", - "description": "OAuth 2.0 token for the current user.", - "type": "string" - }, - "bearer_token": { - "location": "query", - "description": "OAuth bearer token.", - "type": "string" - }, - "upload_protocol": { - "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", - "type": "string", - "location": "query" - }, - "prettyPrint": { - "description": "Returns response with indentations and line breaks.", - "type": "boolean", - "default": "true", - "location": "query" - }, - "fields": { - "location": "query", - "description": "Selector specifying which fields to include in a partial response.", - "type": "string" - }, - "uploadType": { - "location": "query", - "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", - "type": "string" - }, - "$.xgafv": { - "type": "string", - "enumDescriptions": [ - "v1 error format", - "v2 error format" - ], - "location": "query", - "enum": [ - "1", - "2" - ], - "description": "V1 error format." - }, - "callback": { - "description": "JSONP", - "type": "string", - "location": "query" - }, - "alt": { - "type": "string", - "enumDescriptions": [ - "Responses with Content-Type of application/json", - "Media download with context-dependent Content-Type", - "Responses with Content-Type of application/x-protobuf" - ], - "location": "query", - "description": "Data format for response.", - "default": "json", - "enum": [ - "json", - "media", - "proto" - ] - }, - "access_token": { - "description": "OAuth access token.", - "type": "string", - "location": "query" - }, - "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.", - "type": "string", - "location": "query" - }, - "quotaUser": { - "location": "query", - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", - "type": "string" - }, - "pp": { - "description": "Pretty-print response.", - "type": "boolean", - "default": "true", - "location": "query" - } - }, - "version": "v1", - "baseUrl": "https://iam.googleapis.com/", - "kind": "discovery#restDescription", - "description": "Manages identity and access control for Google Cloud Platform resources, including the creation of service accounts, which you can use to authenticate to Google and make API calls.", "servicePath": "", - "basePath": "" -} + "title": "Google Identity and Access Management (IAM) API", + "version": "v1", + "version_module": true +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/iam/v1/iam-gen.go b/vendor/google.golang.org/api/iam/v1/iam-gen.go index 103de4579..b31991a4d 100644 --- a/vendor/google.golang.org/api/iam/v1/iam-gen.go +++ b/vendor/google.golang.org/api/iam/v1/iam-gen.go @@ -56,6 +56,7 @@ func New(client *http.Client) (*Service, error) { return nil, errors.New("client is nil") } s := &Service{client: client, BasePath: basePath} + s.IamPolicies = NewIamPoliciesService(s) s.Organizations = NewOrganizationsService(s) s.Permissions = NewPermissionsService(s) s.Projects = NewProjectsService(s) @@ -68,6 +69,8 @@ type Service struct { BasePath string // API endpoint base URL UserAgent string // optional additional User-Agent fragment + IamPolicies *IamPoliciesService + Organizations *OrganizationsService Permissions *PermissionsService @@ -84,6 +87,15 @@ func (s *Service) userAgent() string { return googleapi.UserAgent + " " + s.UserAgent } +func NewIamPoliciesService(s *Service) *IamPoliciesService { + rs := &IamPoliciesService{s: s} + return rs +} + +type IamPoliciesService struct { + s *Service +} + func NewOrganizationsService(s *Service) *OrganizationsService { rs := &OrganizationsService{s: s} rs.Roles = NewOrganizationsRolesService(s) @@ -168,6 +180,100 @@ type RolesService struct { s *Service } +// AuditConfig: Specifies the audit configuration for a service. +// The configuration determines which permission types are logged, and +// what +// identities, if any, are exempted from logging. +// An AuditConfig must have one or more AuditLogConfigs. +// +// If there are AuditConfigs for both `allServices` and a specific +// service, +// the union of the two AuditConfigs is used for that service: the +// log_types +// specified in each AuditConfig are enabled, and the exempted_members +// in each +// AuditLogConfig are exempted. +// +// Example Policy with multiple AuditConfigs: +// +// { +// "audit_configs": [ +// { +// "service": "allServices" +// "audit_log_configs": [ +// { +// "log_type": "DATA_READ", +// "exempted_members": [ +// "user:foo@gmail.com" +// ] +// }, +// { +// "log_type": "DATA_WRITE", +// }, +// { +// "log_type": "ADMIN_READ", +// } +// ] +// }, +// { +// "service": "fooservice.googleapis.com" +// "audit_log_configs": [ +// { +// "log_type": "DATA_READ", +// }, +// { +// "log_type": "DATA_WRITE", +// "exempted_members": [ +// "user:bar@gmail.com" +// ] +// } +// ] +// } +// ] +// } +// +// For fooservice, this policy enables DATA_READ, DATA_WRITE and +// ADMIN_READ +// logging. It also exempts foo@gmail.com from DATA_READ logging, +// and +// bar@gmail.com from DATA_WRITE logging. +type AuditConfig struct { + // AuditLogConfigs: The configuration for logging of each type of + // permission. + // Next ID: 4 + AuditLogConfigs []*AuditLogConfig `json:"auditLogConfigs,omitempty"` + + // Service: Specifies a service that will be enabled for audit + // logging. + // For example, `storage.googleapis.com`, + // `cloudsql.googleapis.com`. + // `allServices` is a special value that covers all services. + Service string `json:"service,omitempty"` + + // ForceSendFields is a list of field names (e.g. "AuditLogConfigs") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "AuditLogConfigs") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *AuditConfig) MarshalJSON() ([]byte, error) { + type NoMethod AuditConfig + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // AuditData: Audit log information specific to Cloud IAM. This message // is serialized // as an `Any` type in the `ServiceData` message of an @@ -200,6 +306,96 @@ func (s *AuditData) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// AuditLogConfig: Provides the configuration for logging a type of +// permissions. +// Example: +// +// { +// "audit_log_configs": [ +// { +// "log_type": "DATA_READ", +// "exempted_members": [ +// "user:foo@gmail.com" +// ] +// }, +// { +// "log_type": "DATA_WRITE", +// } +// ] +// } +// +// This enables 'DATA_READ' and 'DATA_WRITE' logging, while +// exempting +// foo@gmail.com from DATA_READ logging. +type AuditLogConfig struct { + // ExemptedMembers: Specifies the identities that do not cause logging + // for this type of + // permission. + // Follows the same format of Binding.members. + ExemptedMembers []string `json:"exemptedMembers,omitempty"` + + // LogType: The log type that this config enables. + // + // Possible values: + // "LOG_TYPE_UNSPECIFIED" - Default case. Should never be this. + // "ADMIN_READ" - Admin reads. Example: CloudIAM getIamPolicy + // "DATA_WRITE" - Data writes. Example: CloudSQL Users create + // "DATA_READ" - Data reads. Example: CloudSQL Users list + LogType string `json:"logType,omitempty"` + + // ForceSendFields is a list of field names (e.g. "ExemptedMembers") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "ExemptedMembers") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *AuditLogConfig) MarshalJSON() ([]byte, error) { + type NoMethod AuditLogConfig + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// AuditableService: Contains information about an auditable service. +type AuditableService struct { + // Name: Public name of the service. + // For example, the service name for Cloud IAM is 'iam.googleapis.com'. + Name string `json:"name,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Name") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Name") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *AuditableService) MarshalJSON() ([]byte, error) { + type NoMethod AuditableService + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // Binding: Associates `members` with a `role`. type Binding struct { // Members: Specifies the identities requesting access for a Cloud @@ -566,6 +762,10 @@ func (s *ListServiceAccountsResponse) MarshalJSON() ([]byte, error) { // Permission: A permission which can be included by a role. type Permission struct { + // ApiDisabled: The service API associated with the permission is not + // enabled. + ApiDisabled bool `json:"apiDisabled,omitempty"` + // CustomRolesSupportLevel: The current custom role support level. // // Possible values: @@ -597,22 +797,20 @@ type Permission struct { // Title: The title of this Permission. Title string `json:"title,omitempty"` - // ForceSendFields is a list of field names (e.g. - // "CustomRolesSupportLevel") to unconditionally include in API - // requests. By default, fields with empty values are omitted from API - // requests. However, any non-pointer, non-interface field appearing in - // ForceSendFields will be sent to the server regardless of whether the - // field is empty or not. This may be used to include empty fields in - // Patch requests. + // ForceSendFields is a list of field names (e.g. "ApiDisabled") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. ForceSendFields []string `json:"-"` - // NullFields is a list of field names (e.g. "CustomRolesSupportLevel") - // to include in API requests with the JSON null value. By default, - // fields with empty values are omitted from API requests. However, any - // field with an empty value appearing in NullFields will be sent to the - // server as null. It is an error if a field in this list has a - // non-empty value. This may be used to include null fields in Patch - // requests. + // NullFields is a list of field names (e.g. "ApiDisabled") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. NullFields []string `json:"-"` } @@ -659,6 +857,10 @@ func (s *Permission) MarshalJSON() ([]byte, error) { // For a description of IAM and its features, see the // [IAM developer's guide](https://cloud.google.com/iam/docs). type Policy struct { + // AuditConfigs: Specifies cloud audit logging configuration for this + // policy. + AuditConfigs []*AuditConfig `json:"auditConfigs,omitempty"` + // Bindings: Associates a list of `members` to a `role`. // `bindings` with no members will result in an error. Bindings []*Binding `json:"bindings,omitempty"` @@ -690,7 +892,7 @@ type Policy struct { // server. googleapi.ServerResponse `json:"-"` - // ForceSendFields is a list of field names (e.g. "Bindings") to + // ForceSendFields is a list of field names (e.g. "AuditConfigs") to // unconditionally include in API requests. By default, fields with // empty values are omitted from API requests. However, any non-pointer, // non-interface field appearing in ForceSendFields will be sent to the @@ -698,10 +900,10 @@ type Policy struct { // used to include empty fields in Patch requests. ForceSendFields []string `json:"-"` - // NullFields is a list of field names (e.g. "Bindings") to include in - // API requests with the JSON null value. By default, fields with empty - // values are omitted from API requests. However, any field with an - // empty value appearing in NullFields will be sent to the server as + // NullFields is a list of field names (e.g. "AuditConfigs") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as // null. It is an error if a field in this list has a non-empty value. // This may be used to include null fields in Patch requests. NullFields []string `json:"-"` @@ -741,6 +943,76 @@ func (s *PolicyDelta) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// QueryAuditableServicesRequest: A request to get the list of auditable +// services for a resource. +type QueryAuditableServicesRequest struct { + // FullResourceName: Required. The full resource name to query from the + // list of auditable + // services. + // + // The name follows the Google Cloud Platform resource format. + // For example, a Cloud Platform project with id `my-project` will be + // named + // `//cloudresourcemanager.googleapis.com/projects/my-project`. + FullResourceName string `json:"fullResourceName,omitempty"` + + // ForceSendFields is a list of field names (e.g. "FullResourceName") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "FullResourceName") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *QueryAuditableServicesRequest) MarshalJSON() ([]byte, error) { + type NoMethod QueryAuditableServicesRequest + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// QueryAuditableServicesResponse: A response containing a list of +// auditable services for a resource. +type QueryAuditableServicesResponse struct { + // Services: The auditable services for a resource. + Services []*AuditableService `json:"services,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "Services") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Services") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *QueryAuditableServicesResponse) MarshalJSON() ([]byte, error) { + type NoMethod QueryAuditableServicesResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // QueryGrantableRolesRequest: The grantable role query request. type QueryGrantableRolesRequest struct { // FullResourceName: Required. The full resource name to query from the @@ -1127,7 +1399,7 @@ type ServiceAccountKey struct { // responses. Make sure to keep the private key data secure because // it // allows for the assertion of the service account identity. - // When decoded, the private key data can be used to authenticate + // When base64 decoded, the private key data can be used to authenticate // with // Google API client libraries and with // . - Labels map[string]string `json:"labels,omitempty"` - // PredictionInput: Input parameters to create a prediction job. PredictionInput *GoogleCloudMlV1__PredictionInput `json:"predictionInput,omitempty"` @@ -877,30 +900,6 @@ type GoogleCloudMlV1__Model struct { // it was created. Description string `json:"description,omitempty"` - // Etag: `etag` is used for optimistic concurrency control as a way to - // help - // prevent simultaneous updates of a model from overwriting each - // other. - // It is strongly suggested that systems make use of the `etag` in - // the - // read-modify-write cycle to perform model updates in order to avoid - // race - // conditions: An `etag` is returned in the response to `GetModel`, - // and - // systems are expected to put that etag in the request to `UpdateModel` - // to - // ensure that their change will be applied to the model as intended. - Etag string `json:"etag,omitempty"` - - // Labels: Optional. One or more labels that you can add, to organize - // your models. - // Each label is a key-value pair, where both the key and the value - // are - // arbitrary strings that you supply. - // For more information, see the documentation on - // using labels. - Labels map[string]string `json:"labels,omitempty"` - // Name: Required. The name specified for the model when it was // created. // @@ -971,11 +970,6 @@ type GoogleCloudMlV1__OperationMetadata struct { // operation has been made. IsCancellationRequested bool `json:"isCancellationRequested,omitempty"` - // Labels: The user labels, inherited from the model or the model - // version being - // operated on. - Labels map[string]string `json:"labels,omitempty"` - // ModelName: Contains the name of the model associated with the // operation. ModelName string `json:"modelName,omitempty"` @@ -1041,7 +1035,8 @@ type GoogleCloudMlV1__ParameterSpec struct { // should not contain more than 1,000 values. DiscreteValues []float64 `json:"discreteValues,omitempty"` - // MaxValue: Required if typeis `DOUBLE` or `INTEGER`. This field + // MaxValue: Required if type is `DOUBLE` or `INTEGER`. This + // field // should be unset if type is `CATEGORICAL`. This value should be // integers if // type is `INTEGER`. @@ -1353,6 +1348,7 @@ type GoogleCloudMlV1__SetDefaultVersionRequest struct { // details, see the guide to // submitting a training // job. +// Next ID: 22 type GoogleCloudMlV1__TrainingInput struct { // Args: Optional. Command line arguments to pass to the program. Args []string `json:"args,omitempty"` @@ -1364,7 +1360,7 @@ type GoogleCloudMlV1__TrainingInput struct { // training outputs // and other data needed for training. This path is passed to your // TensorFlow - // program as the 'job_dir' command-line argument. The benefit of + // program as the '--job-dir' command-line argument. The benefit of // specifying // this field is that Cloud ML validates the path for use in training. JobDir string `json:"jobDir,omitempty"` @@ -1671,8 +1667,6 @@ func (s *GoogleCloudMlV1__TrainingOutput) UnmarshalJSON(data []byte) error { // calling // [projects.models.versions.list](/ml-engine/reference/rest/v1/p // rojects.models.versions/list). -// -// LINT.IfChange type GoogleCloudMlV1__Version struct { // AutoScaling: Automatically scale the number of nodes used to serve // the model in @@ -1713,20 +1707,22 @@ type GoogleCloudMlV1__Version struct { // cancellation. ErrorMessage string `json:"errorMessage,omitempty"` - // Etag: `etag` is used for optimistic concurrency control as a way to - // help - // prevent simultaneous updates of a model from overwriting each - // other. - // It is strongly suggested that systems make use of the `etag` in - // the - // read-modify-write cycle to perform model updates in order to avoid - // race - // conditions: An `etag` is returned in the response to `GetVersion`, - // and - // systems are expected to put that etag in the request to - // `UpdateVersion` to - // ensure that their change will be applied to the model as intended. - Etag string `json:"etag,omitempty"` + // Framework: Optional. The machine learning framework Cloud ML Engine + // uses to train + // this version of the model. Valid values are `TENSORFLOW`, + // `SCIKIT_LEARN`, + // and `XGBOOST`. If you do not specify a framework, Cloud ML Engine + // uses + // TensorFlow. If you choose `SCIKIT_LEARN` or `XGBOOST`, you must also + // set + // the runtime version of the model to 1.4 or greater. + // + // Possible values: + // "FRAMEWORK_UNSPECIFIED" + // "TENSORFLOW" + // "SCIKIT_LEARN" + // "XGBOOST" + Framework string `json:"framework,omitempty"` // IsDefault: Output only. If true, this version will be used to handle // prediction @@ -1738,15 +1734,6 @@ type GoogleCloudMlV1__Version struct { // st/v1/projects.models.versions/setDefault). IsDefault bool `json:"isDefault,omitempty"` - // Labels: Optional. One or more labels that you can add, to organize - // your model - // versions. Each label is a key-value pair, where both the key and the - // value - // are arbitrary strings that you supply. - // For more information, see the documentation on - // using labels. - Labels map[string]string `json:"labels,omitempty"` - // LastUseTime: Output only. The time the version was last used for // prediction. LastUseTime string `json:"lastUseTime,omitempty"` @@ -1770,6 +1757,14 @@ type GoogleCloudMlV1__Version struct { // The version name must be unique within the model it is created in. Name string `json:"name,omitempty"` + // PythonVersion: Optional. The version of Python used in prediction. If + // not set, the default + // version is '2.7'. Python '3.5' is available when `runtime_version` is + // set + // to '1.4' and above. Python '2.7' works with all supported runtime + // versions. + PythonVersion string `json:"pythonVersion,omitempty"` + // RuntimeVersion: Optional. The Google Cloud ML runtime version to use // for this deployment. // If not set, Google Cloud ML will choose a version. @@ -1780,11 +1775,18 @@ type GoogleCloudMlV1__Version struct { // Possible values: // "UNKNOWN" - The version state is unspecified. // "READY" - The version is ready for prediction. - // "CREATING" - The version is in the process of creation. + // "CREATING" - The version is being created. New UpdateVersion and + // DeleteVersion + // requests will fail if a version is in the CREATING state. // "FAILED" - The version failed to be created, possibly // cancelled. // `error_message` should contain the details of the failure. - // "DELETING" - The version is in the process of deletion. + // "DELETING" - The version is being deleted. New UpdateVersion and + // DeleteVersion + // requests will fail if a version is in the DELETING state. + // "UPDATING" - The version is being updated. New UpdateVersion and + // DeleteVersion + // requests will fail if a version is in the UPDATING state. State string `json:"state,omitempty"` // ServerResponse contains the HTTP response code and headers from the @@ -1814,18 +1816,164 @@ func (s *GoogleCloudMlV1__Version) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// GoogleIamV1__AuditConfig: Specifies the audit configuration for a +// service. +// The configuration determines which permission types are logged, and +// what +// identities, if any, are exempted from logging. +// An AuditConfig must have one or more AuditLogConfigs. +// +// If there are AuditConfigs for both `allServices` and a specific +// service, +// the union of the two AuditConfigs is used for that service: the +// log_types +// specified in each AuditConfig are enabled, and the exempted_members +// in each +// AuditLogConfig are exempted. +// +// Example Policy with multiple AuditConfigs: +// +// { +// "audit_configs": [ +// { +// "service": "allServices" +// "audit_log_configs": [ +// { +// "log_type": "DATA_READ", +// "exempted_members": [ +// "user:foo@gmail.com" +// ] +// }, +// { +// "log_type": "DATA_WRITE", +// }, +// { +// "log_type": "ADMIN_READ", +// } +// ] +// }, +// { +// "service": "fooservice.googleapis.com" +// "audit_log_configs": [ +// { +// "log_type": "DATA_READ", +// }, +// { +// "log_type": "DATA_WRITE", +// "exempted_members": [ +// "user:bar@gmail.com" +// ] +// } +// ] +// } +// ] +// } +// +// For fooservice, this policy enables DATA_READ, DATA_WRITE and +// ADMIN_READ +// logging. It also exempts foo@gmail.com from DATA_READ logging, +// and +// bar@gmail.com from DATA_WRITE logging. +type GoogleIamV1__AuditConfig struct { + // AuditLogConfigs: The configuration for logging of each type of + // permission. + // Next ID: 4 + AuditLogConfigs []*GoogleIamV1__AuditLogConfig `json:"auditLogConfigs,omitempty"` + + // Service: Specifies a service that will be enabled for audit + // logging. + // For example, `storage.googleapis.com`, + // `cloudsql.googleapis.com`. + // `allServices` is a special value that covers all services. + Service string `json:"service,omitempty"` + + // ForceSendFields is a list of field names (e.g. "AuditLogConfigs") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "AuditLogConfigs") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *GoogleIamV1__AuditConfig) MarshalJSON() ([]byte, error) { + type NoMethod GoogleIamV1__AuditConfig + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleIamV1__AuditLogConfig: Provides the configuration for logging a +// type of permissions. +// Example: +// +// { +// "audit_log_configs": [ +// { +// "log_type": "DATA_READ", +// "exempted_members": [ +// "user:foo@gmail.com" +// ] +// }, +// { +// "log_type": "DATA_WRITE", +// } +// ] +// } +// +// This enables 'DATA_READ' and 'DATA_WRITE' logging, while +// exempting +// foo@gmail.com from DATA_READ logging. +type GoogleIamV1__AuditLogConfig struct { + // ExemptedMembers: Specifies the identities that do not cause logging + // for this type of + // permission. + // Follows the same format of Binding.members. + ExemptedMembers []string `json:"exemptedMembers,omitempty"` + + // LogType: The log type that this config enables. + // + // Possible values: + // "LOG_TYPE_UNSPECIFIED" - Default case. Should never be this. + // "ADMIN_READ" - Admin reads. Example: CloudIAM getIamPolicy + // "DATA_WRITE" - Data writes. Example: CloudSQL Users create + // "DATA_READ" - Data reads. Example: CloudSQL Users list + LogType string `json:"logType,omitempty"` + + // ForceSendFields is a list of field names (e.g. "ExemptedMembers") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "ExemptedMembers") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *GoogleIamV1__AuditLogConfig) MarshalJSON() ([]byte, error) { + type NoMethod GoogleIamV1__AuditLogConfig + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // GoogleIamV1__Binding: Associates `members` with a `role`. type GoogleIamV1__Binding struct { - // Condition: The condition that is associated with this binding. - // NOTE: an unsatisfied condition will not allow user access via - // current - // binding. Different bindings, including their conditions, are - // examined - // independently. - // This field is only visible as GOOGLE_INTERNAL or - // CONDITION_TRUSTED_TESTER. - Condition *GoogleType__Expr `json:"condition,omitempty"` - // Members: Specifies the identities requesting access for a Cloud // Platform resource. // `members` can have the following values: @@ -1867,7 +2015,7 @@ type GoogleIamV1__Binding struct { // Required Role string `json:"role,omitempty"` - // ForceSendFields is a list of field names (e.g. "Condition") to + // ForceSendFields is a list of field names (e.g. "Members") to // unconditionally include in API requests. By default, fields with // empty values are omitted from API requests. However, any non-pointer, // non-interface field appearing in ForceSendFields will be sent to the @@ -1875,7 +2023,7 @@ type GoogleIamV1__Binding struct { // used to include empty fields in Patch requests. ForceSendFields []string `json:"-"` - // NullFields is a list of field names (e.g. "Condition") to include in + // NullFields is a list of field names (e.g. "Members") to include in // API requests with the JSON null value. By default, fields with empty // values are omitted from API requests. However, any field with an // empty value appearing in NullFields will be sent to the server as @@ -1927,6 +2075,10 @@ func (s *GoogleIamV1__Binding) MarshalJSON() ([]byte, error) { // For a description of IAM and its features, see the // [IAM developer's guide](https://cloud.google.com/iam/docs). type GoogleIamV1__Policy struct { + // AuditConfigs: Specifies cloud audit logging configuration for this + // policy. + AuditConfigs []*GoogleIamV1__AuditConfig `json:"auditConfigs,omitempty"` + // Bindings: Associates a list of `members` to a `role`. // `bindings` with no members will result in an error. Bindings []*GoogleIamV1__Binding `json:"bindings,omitempty"` @@ -1958,7 +2110,7 @@ type GoogleIamV1__Policy struct { // server. googleapi.ServerResponse `json:"-"` - // ForceSendFields is a list of field names (e.g. "Bindings") to + // ForceSendFields is a list of field names (e.g. "AuditConfigs") to // unconditionally include in API requests. By default, fields with // empty values are omitted from API requests. However, any non-pointer, // non-interface field appearing in ForceSendFields will be sent to the @@ -1966,10 +2118,10 @@ type GoogleIamV1__Policy struct { // used to include empty fields in Patch requests. ForceSendFields []string `json:"-"` - // NullFields is a list of field names (e.g. "Bindings") to include in - // API requests with the JSON null value. By default, fields with empty - // values are omitted from API requests. However, any field with an - // empty value appearing in NullFields will be sent to the server as + // NullFields is a list of field names (e.g. "AuditConfigs") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as // null. It is an error if a field in this list has a non-empty value. // This may be used to include null fields in Patch requests. NullFields []string `json:"-"` @@ -2343,60 +2495,6 @@ func (s *GoogleRpc__Status) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -// GoogleType__Expr: Represents an expression text. Example: -// -// title: "User account presence" -// description: "Determines whether the request has a user account" -// expression: "size(request.user) > 0" -type GoogleType__Expr struct { - // Description: An optional description of the expression. This is a - // longer text which - // describes the expression, e.g. when hovered over it in a UI. - Description string `json:"description,omitempty"` - - // Expression: Textual representation of an expression in - // Common Expression Language syntax. - // - // The application context of the containing message determines - // which - // well-known feature set of CEL is supported. - Expression string `json:"expression,omitempty"` - - // Location: An optional string indicating the location of the - // expression for error - // reporting, e.g. a file name and a position in the file. - Location string `json:"location,omitempty"` - - // Title: An optional title for the expression, i.e. a short string - // describing - // its purpose. This can be used e.g. in UIs which allow to enter - // the - // expression. - Title string `json:"title,omitempty"` - - // ForceSendFields is a list of field names (e.g. "Description") to - // unconditionally include in API requests. By default, fields with - // empty values are omitted from API requests. However, any non-pointer, - // non-interface field appearing in ForceSendFields will be sent to the - // server regardless of whether the field is empty or not. This may be - // used to include empty fields in Patch requests. - ForceSendFields []string `json:"-"` - - // NullFields is a list of field names (e.g. "Description") to include - // in API requests with the JSON null value. By default, fields with - // empty values are omitted from API requests. However, any field with - // an empty value appearing in NullFields will be sent to the server as - // null. It is an error if a field in this list has a non-empty value. - // This may be used to include null fields in Patch requests. - NullFields []string `json:"-"` -} - -func (s *GoogleType__Expr) MarshalJSON() ([]byte, error) { - type NoMethod GoogleType__Expr - raw := NoMethod(*s) - return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) -} - // method id "ml.projects.getConfig": type ProjectsGetConfigCall struct { @@ -3458,178 +3556,6 @@ func (c *ProjectsJobsListCall) Pages(ctx context.Context, f func(*GoogleCloudMlV } } -// method id "ml.projects.jobs.patch": - -type ProjectsJobsPatchCall struct { - s *Service - name string - googlecloudmlv1__job *GoogleCloudMlV1__Job - urlParams_ gensupport.URLParams - ctx_ context.Context - header_ http.Header -} - -// Patch: Updates a specific job resource. -// -// Currently the only supported fields to update are `labels`. -func (r *ProjectsJobsService) Patch(name string, googlecloudmlv1__job *GoogleCloudMlV1__Job) *ProjectsJobsPatchCall { - c := &ProjectsJobsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)} - c.name = name - c.googlecloudmlv1__job = googlecloudmlv1__job - return c -} - -// UpdateMask sets the optional parameter "updateMask": Required. -// Specifies the path, relative to `Job`, of the field to update. -// To adopt etag mechanism, include `etag` field in the mask, and -// include the -// `etag` value in your job resource. -// -// For example, to change the labels of a job, the `update_mask` -// parameter -// would be specified as `labels`, `etag`, and the -// `PATCH` request body would specify the new value, as follows: -// { -// "labels": { -// "owner": "Google", -// "color": "Blue" -// } -// "etag": "33a64df551425fcc55e4d42a148795d9f25f89d4" -// } -// If `etag` matches the one on the server, the labels of the job will -// be -// replaced with the given ones, and the server end `etag` will -// be -// recalculated. -// -// Currently the only supported update masks are `labels` and `etag`. -func (c *ProjectsJobsPatchCall) UpdateMask(updateMask string) *ProjectsJobsPatchCall { - c.urlParams_.Set("updateMask", updateMask) - return c -} - -// Fields allows partial responses to be retrieved. See -// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse -// for more information. -func (c *ProjectsJobsPatchCall) Fields(s ...googleapi.Field) *ProjectsJobsPatchCall { - c.urlParams_.Set("fields", googleapi.CombineFields(s)) - return c -} - -// Context sets the context to be used in this call's Do method. Any -// pending HTTP request will be aborted if the provided context is -// canceled. -func (c *ProjectsJobsPatchCall) Context(ctx context.Context) *ProjectsJobsPatchCall { - c.ctx_ = ctx - return c -} - -// Header returns an http.Header that can be modified by the caller to -// add HTTP headers to the request. -func (c *ProjectsJobsPatchCall) Header() http.Header { - if c.header_ == nil { - c.header_ = make(http.Header) - } - return c.header_ -} - -func (c *ProjectsJobsPatchCall) doRequest(alt string) (*http.Response, error) { - reqHeaders := make(http.Header) - for k, v := range c.header_ { - reqHeaders[k] = v - } - reqHeaders.Set("User-Agent", c.s.userAgent()) - var body io.Reader = nil - body, err := googleapi.WithoutDataWrapper.JSONReader(c.googlecloudmlv1__job) - if err != nil { - return nil, err - } - reqHeaders.Set("Content-Type", "application/json") - c.urlParams_.Set("alt", alt) - urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}") - urls += "?" + c.urlParams_.Encode() - req, _ := http.NewRequest("PATCH", urls, body) - req.Header = reqHeaders - googleapi.Expand(req.URL, map[string]string{ - "name": c.name, - }) - return gensupport.SendRequest(c.ctx_, c.s.client, req) -} - -// Do executes the "ml.projects.jobs.patch" call. -// Exactly one of *GoogleCloudMlV1__Job or error will be non-nil. Any -// non-2xx status code is an error. Response headers are in either -// *GoogleCloudMlV1__Job.ServerResponse.Header or (if a response was -// returned at all) in error.(*googleapi.Error).Header. Use -// googleapi.IsNotModified to check whether the returned error was -// because http.StatusNotModified was returned. -func (c *ProjectsJobsPatchCall) Do(opts ...googleapi.CallOption) (*GoogleCloudMlV1__Job, error) { - gensupport.SetOptions(c.urlParams_, opts...) - res, err := c.doRequest("json") - if res != nil && res.StatusCode == http.StatusNotModified { - if res.Body != nil { - res.Body.Close() - } - return nil, &googleapi.Error{ - Code: res.StatusCode, - Header: res.Header, - } - } - if err != nil { - return nil, err - } - defer googleapi.CloseBody(res) - if err := googleapi.CheckResponse(res); err != nil { - return nil, err - } - ret := &GoogleCloudMlV1__Job{ - ServerResponse: googleapi.ServerResponse{ - Header: res.Header, - HTTPStatusCode: res.StatusCode, - }, - } - target := &ret - if err := gensupport.DecodeResponse(target, res); err != nil { - return nil, err - } - return ret, nil - // { - // "description": "Updates a specific job resource.\n\nCurrently the only supported fields to update are `labels`.", - // "flatPath": "v1/projects/{projectsId}/jobs/{jobsId}", - // "httpMethod": "PATCH", - // "id": "ml.projects.jobs.patch", - // "parameterOrder": [ - // "name" - // ], - // "parameters": { - // "name": { - // "description": "Required. The job name.", - // "location": "path", - // "pattern": "^projects/[^/]+/jobs/[^/]+$", - // "required": true, - // "type": "string" - // }, - // "updateMask": { - // "description": "Required. Specifies the path, relative to `Job`, of the field to update.\nTo adopt etag mechanism, include `etag` field in the mask, and include the\n`etag` value in your job resource.\n\nFor example, to change the labels of a job, the `update_mask` parameter\nwould be specified as `labels`, `etag`, and the\n`PATCH` request body would specify the new value, as follows:\n {\n \"labels\": {\n \"owner\": \"Google\",\n \"color\": \"Blue\"\n }\n \"etag\": \"33a64df551425fcc55e4d42a148795d9f25f89d4\"\n }\nIf `etag` matches the one on the server, the labels of the job will be\nreplaced with the given ones, and the server end `etag` will be\nrecalculated.\n\nCurrently the only supported update masks are `labels` and `etag`.", - // "format": "google-fieldmask", - // "location": "query", - // "type": "string" - // } - // }, - // "path": "v1/{+name}", - // "request": { - // "$ref": "GoogleCloudMlV1__Job" - // }, - // "response": { - // "$ref": "GoogleCloudMlV1__Job" - // }, - // "scopes": [ - // "https://www.googleapis.com/auth/cloud-platform" - // ] - // } - -} - // method id "ml.projects.jobs.setIamPolicy": type ProjectsJobsSetIamPolicyCall struct { @@ -5064,16 +4990,10 @@ func (r *ProjectsModelsService) Patch(name string, googlecloudmlv1__model *Googl // "name":"version_1" // } // } -// In this example, the model is blindly overwritten since no etag is -// given. // -// To adopt etag mechanism, include `etag` field in the mask, and -// include the -// `etag` value in your model resource. -// -// Currently the supported update masks are -// `description`, -// `default_version.name`, `labels`, and `etag`. +// Currently the supported update masks are `description` +// and +// `default_version.name`. func (c *ProjectsModelsPatchCall) UpdateMask(updateMask string) *ProjectsModelsPatchCall { c.urlParams_.Set("updateMask", updateMask) return c @@ -5181,7 +5101,7 @@ func (c *ProjectsModelsPatchCall) Do(opts ...googleapi.CallOption) (*GoogleLongr // "type": "string" // }, // "updateMask": { - // "description": "Required. Specifies the path, relative to `Model`, of the field to update.\n\nFor example, to change the description of a model to \"foo\" and set its\ndefault version to \"version_1\", the `update_mask` parameter would be\nspecified as `description`, `default_version.name`, and the `PATCH`\nrequest body would specify the new value, as follows:\n {\n \"description\": \"foo\",\n \"defaultVersion\": {\n \"name\":\"version_1\"\n }\n }\nIn this example, the model is blindly overwritten since no etag is given.\n\nTo adopt etag mechanism, include `etag` field in the mask, and include the\n`etag` value in your model resource.\n\nCurrently the supported update masks are `description`,\n`default_version.name`, `labels`, and `etag`.", + // "description": "Required. Specifies the path, relative to `Model`, of the field to update.\n\nFor example, to change the description of a model to \"foo\" and set its\ndefault version to \"version_1\", the `update_mask` parameter would be\nspecified as `description`, `default_version.name`, and the `PATCH`\nrequest body would specify the new value, as follows:\n {\n \"description\": \"foo\",\n \"defaultVersion\": {\n \"name\":\"version_1\"\n }\n }\n\nCurrently the supported update masks are `description` and\n`default_version.name`.", // "format": "google-fieldmask", // "location": "query", // "type": "string" @@ -6163,16 +6083,8 @@ func (r *ProjectsModelsVersionsService) Patch(name string, googlecloudmlv1__vers // { // "description": "foo" // } -// In this example, the version is blindly overwritten since no etag is -// given. // -// To adopt etag mechanism, include `etag` field in the mask, and -// include the -// `etag` value in your version resource. -// -// Currently the only supported update masks are `description`, -// `labels`, and -// `etag`, and `expire_time`. +// Currently the only supported update mask is`description`. func (c *ProjectsModelsVersionsPatchCall) UpdateMask(updateMask string) *ProjectsModelsVersionsPatchCall { c.urlParams_.Set("updateMask", updateMask) return c @@ -6280,7 +6192,7 @@ func (c *ProjectsModelsVersionsPatchCall) Do(opts ...googleapi.CallOption) (*Goo // "type": "string" // }, // "updateMask": { - // "description": "Required. Specifies the path, relative to `Version`, of the field to\nupdate. Must be present and non-empty.\n\nFor example, to change the description of a version to \"foo\", the\n`update_mask` parameter would be specified as `description`, and the\n`PATCH` request body would specify the new value, as follows:\n {\n \"description\": \"foo\"\n }\nIn this example, the version is blindly overwritten since no etag is given.\n\nTo adopt etag mechanism, include `etag` field in the mask, and include the\n`etag` value in your version resource.\n\nCurrently the only supported update masks are `description`, `labels`, and\n`etag`, and `expire_time`.", + // "description": "Required. Specifies the path, relative to `Version`, of the field to\nupdate. Must be present and non-empty.\n\nFor example, to change the description of a version to \"foo\", the\n`update_mask` parameter would be specified as `description`, and the\n`PATCH` request body would specify the new value, as follows:\n {\n \"description\": \"foo\"\n }\n\nCurrently the only supported update mask is`description`.", // "format": "google-fieldmask", // "location": "query", // "type": "string" diff --git a/vendor/google.golang.org/api/monitoring/v3/monitoring-api.json b/vendor/google.golang.org/api/monitoring/v3/monitoring-api.json index f62cdeaa5..76b7bdf15 100644 --- a/vendor/google.golang.org/api/monitoring/v3/monitoring-api.json +++ b/vendor/google.golang.org/api/monitoring/v3/monitoring-api.json @@ -1,243 +1,1160 @@ { - "fullyEncodeReservedExpansion": true, - "title": "Stackdriver Monitoring API", - "ownerName": "Google", - "resources": { - "uptimeCheckIps": { - "methods": { - "list": { - "description": "Returns the list of IPs that checkers run from", - "httpMethod": "GET", - "parameterOrder": [], - "response": { - "$ref": "ListUptimeCheckIpsResponse" - }, - "parameters": { - "pageToken": { - "description": "If this field is not empty then it must contain the nextPageToken value returned by a previous call to this method. Using this field causes the method to return more results from the previous method call. NOTE: this field is not yet implemented", - "type": "string", - "location": "query" - }, - "pageSize": { - "location": "query", - "description": "The maximum number of results to return in a single response. The server may further constrain the maximum number of results returned in a single page. If the page_size is \u003c=0, the server will decide the number of results to be returned. NOTE: this field is not yet implemented", - "format": "int32", - "type": "integer" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/monitoring", - "https://www.googleapis.com/auth/monitoring.read" - ], - "flatPath": "v3/uptimeCheckIps", - "id": "monitoring.uptimeCheckIps.list", - "path": "v3/uptimeCheckIps" + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/cloud-platform": { + "description": "View and manage your data across Google Cloud Platform services" + }, + "https://www.googleapis.com/auth/monitoring": { + "description": "View and write monitoring data for all of your Google and third-party Cloud and API projects" + }, + "https://www.googleapis.com/auth/monitoring.read": { + "description": "View monitoring data for all of your Google Cloud and third-party projects" + }, + "https://www.googleapis.com/auth/monitoring.write": { + "description": "Publish metric data to your Google Cloud projects" } } + } + }, + "basePath": "", + "baseUrl": "https://monitoring.googleapis.com/", + "batchPath": "batch", + "canonicalName": "Monitoring", + "description": "Manages your Stackdriver Monitoring data and configurations. Most projects must be associated with a Stackdriver account, with a few exceptions as noted on the individual method pages.", + "discoveryVersion": "v1", + "documentationLink": "https://cloud.google.com/monitoring/api/", + "fullyEncodeReservedExpansion": true, + "icons": { + "x16": "http://www.google.com/images/icons/product/search-16.gif", + "x32": "http://www.google.com/images/icons/product/search-32.gif" + }, + "id": "monitoring:v3", + "kind": "discovery#restDescription", + "name": "monitoring", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "$.xgafv": { + "description": "V1 error format.", + "enum": [ + "1", + "2" + ], + "enumDescriptions": [ + "v1 error format", + "v2 error format" + ], + "location": "query", + "type": "string" }, + "access_token": { + "description": "OAuth access token.", + "location": "query", + "type": "string" + }, + "alt": { + "default": "json", + "description": "Data format for response.", + "enum": [ + "json", + "media", + "proto" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json", + "Media download with context-dependent Content-Type", + "Responses with Content-Type of application/x-protobuf" + ], + "location": "query", + "type": "string" + }, + "bearer_token": { + "description": "OAuth bearer token.", + "location": "query", + "type": "string" + }, + "callback": { + "description": "JSONP", + "location": "query", + "type": "string" + }, + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "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.", + "location": "query", + "type": "string" + }, + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "pp": { + "default": "true", + "description": "Pretty-print response.", + "location": "query", + "type": "boolean" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", + "location": "query", + "type": "string" + }, + "uploadType": { + "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", + "location": "query", + "type": "string" + }, + "upload_protocol": { + "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", + "location": "query", + "type": "string" + } + }, + "protocol": "rest", + "resources": { "projects": { "resources": { - "collectdTimeSeries": { + "alertPolicies": { "methods": { "create": { - "path": "v3/{+name}/collectdTimeSeries", - "id": "monitoring.projects.collectdTimeSeries.create", - "request": { - "$ref": "CreateCollectdTimeSeriesRequest" - }, - "description": "Stackdriver Monitoring Agent only: Creates a new time series.\u003caside class=\"caution\"\u003eThis method is only for use by the Stackdriver Monitoring Agent. Use projects.timeSeries.create instead.\u003c/aside\u003e", - "response": { - "$ref": "CreateCollectdTimeSeriesResponse" - }, + "description": "Creates a new alerting policy.", + "flatPath": "v3/projects/{projectsId}/alertPolicies", + "httpMethod": "POST", + "id": "monitoring.projects.alertPolicies.create", "parameterOrder": [ "name" ], + "parameters": { + "name": { + "description": "The project in which to create the alerting policy. The format is projects/[PROJECT_ID].Note that this field names the parent container in which the alerting policy will be written, not the name of the created policy. The alerting policy that is returned will have a name that contains a normalized representation of this name as a prefix but adds a suffix of the form /alertPolicies/[POLICY_ID], identifying the policy in the container.", + "location": "path", + "pattern": "^projects/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v3/{+name}/alertPolicies", + "request": { + "$ref": "AlertPolicy" + }, + "response": { + "$ref": "AlertPolicy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/monitoring" + ] + }, + "delete": { + "description": "Deletes an alerting policy.", + "flatPath": "v3/projects/{projectsId}/alertPolicies/{alertPoliciesId}", + "httpMethod": "DELETE", + "id": "monitoring.projects.alertPolicies.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The alerting policy to delete. The format is:\nprojects/[PROJECT_ID]/alertPolicies/[ALERT_POLICY_ID]\nFor more information, see AlertPolicy.", + "location": "path", + "pattern": "^projects/[^/]+/alertPolicies/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v3/{+name}", + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/monitoring" + ] + }, + "get": { + "description": "Gets a single alerting policy.", + "flatPath": "v3/projects/{projectsId}/alertPolicies/{alertPoliciesId}", + "httpMethod": "GET", + "id": "monitoring.projects.alertPolicies.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The alerting policy to retrieve. The format is\nprojects/[PROJECT_ID]/alertPolicies/[ALERT_POLICY_ID]\n", + "location": "path", + "pattern": "^projects/[^/]+/alertPolicies/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v3/{+name}", + "response": { + "$ref": "AlertPolicy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/monitoring", + "https://www.googleapis.com/auth/monitoring.read" + ] + }, + "list": { + "description": "Lists the existing alerting policies for the project.", + "flatPath": "v3/projects/{projectsId}/alertPolicies", + "httpMethod": "GET", + "id": "monitoring.projects.alertPolicies.list", + "parameterOrder": [ + "name" + ], + "parameters": { + "filter": { + "description": "If provided, this field specifies the criteria that must be met by alert policies to be included in the response.For more details, see sorting and filtering.", + "location": "query", + "type": "string" + }, + "name": { + "description": "The project whose alert policies are to be listed. The format is\nprojects/[PROJECT_ID]\nNote that this field names the parent container in which the alerting policies to be listed are stored. To retrieve a single alerting policy by name, use the GetAlertPolicy operation, instead.", + "location": "path", + "pattern": "^projects/[^/]+$", + "required": true, + "type": "string" + }, + "orderBy": { + "description": "A comma-separated list of fields by which to sort the result. Supports the same set of field references as the filter field. Entries can be prefixed with a minus sign to sort by the field in descending order.For more details, see sorting and filtering.", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "The maximum number of results to return in a single response.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "If this field is not empty then it must contain the nextPageToken value returned by a previous call to this method. Using this field causes the method to return more results from the previous method call.", + "location": "query", + "type": "string" + } + }, + "path": "v3/{+name}/alertPolicies", + "response": { + "$ref": "ListAlertPoliciesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/monitoring", + "https://www.googleapis.com/auth/monitoring.read" + ] + }, + "patch": { + "description": "Updates an alerting policy. You can either replace the entire policy with a new one or replace only certain fields in the current alerting policy by specifying the fields to be updated via updateMask. Returns the updated alerting policy.", + "flatPath": "v3/projects/{projectsId}/alertPolicies/{alertPoliciesId}", + "httpMethod": "PATCH", + "id": "monitoring.projects.alertPolicies.patch", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required if the policy exists. The resource name for this policy. The syntax is:\nprojects/[PROJECT_ID]/alertPolicies/[ALERT_POLICY_ID]\n[ALERT_POLICY_ID] is assigned by Stackdriver Monitoring when the policy is created. When calling the alertPolicies.create method, do not include the name field in the alerting policy passed as part of the request.", + "location": "path", + "pattern": "^projects/[^/]+/alertPolicies/[^/]+$", + "required": true, + "type": "string" + }, + "updateMask": { + "description": "Optional. A list of alerting policy field names. If this field is not empty, each listed field in the existing alerting policy is set to the value of the corresponding field in the supplied policy (alert_policy), or to the field's default value if the field is not in the supplied alerting policy. Fields not listed retain their previous value.Examples of valid field masks include display_name, documentation, documentation.content, documentation.mime_type, user_labels, user_label.nameofkey, enabled, conditions, combiner, etc.If this field is empty, then the supplied alerting policy replaces the existing policy. It is the same as deleting the existing policy and adding the supplied policy, except for the following:\nThe new policy will have the same [ALERT_POLICY_ID] as the former policy. This gives you continuity with the former policy in your notifications and incidents.\nConditions in the new policy will keep their former [CONDITION_ID] if the supplied condition includes the name field with that [CONDITION_ID]. If the supplied condition omits the name field, then a new [CONDITION_ID] is created.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + } + }, + "path": "v3/{+name}", + "request": { + "$ref": "AlertPolicy" + }, + "response": { + "$ref": "AlertPolicy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/monitoring" + ] + } + } + }, + "collectdTimeSeries": { + "methods": { + "create": { + "description": "Stackdriver Monitoring Agent only: Creates a new time series.\u003caside class=\"caution\"\u003eThis method is only for use by the Stackdriver Monitoring Agent. Use projects.timeSeries.create instead.\u003c/aside\u003e", + "flatPath": "v3/projects/{projectsId}/collectdTimeSeries", "httpMethod": "POST", + "id": "monitoring.projects.collectdTimeSeries.create", + "parameterOrder": [ + "name" + ], "parameters": { "name": { "description": "The project in which to create the time series. The format is \"projects/PROJECT_ID_OR_NUMBER\".", - "required": true, - "type": "string", + "location": "path", "pattern": "^projects/[^/]+$", - "location": "path" + "required": true, + "type": "string" } }, + "path": "v3/{+name}/collectdTimeSeries", + "request": { + "$ref": "CreateCollectdTimeSeriesRequest" + }, + "response": { + "$ref": "CreateCollectdTimeSeriesResponse" + }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/monitoring", "https://www.googleapis.com/auth/monitoring.write" + ] + } + } + }, + "groups": { + "methods": { + "create": { + "description": "Creates a new group.", + "flatPath": "v3/projects/{projectsId}/groups", + "httpMethod": "POST", + "id": "monitoring.projects.groups.create", + "parameterOrder": [ + "name" ], - "flatPath": "v3/projects/{projectsId}/collectdTimeSeries" + "parameters": { + "name": { + "description": "The project in which to create the group. The format is \"projects/{project_id_or_number}\".", + "location": "path", + "pattern": "^projects/[^/]+$", + "required": true, + "type": "string" + }, + "validateOnly": { + "description": "If true, validate this request but do not create the group.", + "location": "query", + "type": "boolean" + } + }, + "path": "v3/{+name}/groups", + "request": { + "$ref": "Group" + }, + "response": { + "$ref": "Group" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/monitoring" + ] + }, + "delete": { + "description": "Deletes an existing group.", + "flatPath": "v3/projects/{projectsId}/groups/{groupsId}", + "httpMethod": "DELETE", + "id": "monitoring.projects.groups.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The group to delete. The format is \"projects/{project_id_or_number}/groups/{group_id}\".", + "location": "path", + "pattern": "^projects/[^/]+/groups/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v3/{+name}", + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/monitoring" + ] + }, + "get": { + "description": "Gets a single group.", + "flatPath": "v3/projects/{projectsId}/groups/{groupsId}", + "httpMethod": "GET", + "id": "monitoring.projects.groups.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The group to retrieve. The format is \"projects/{project_id_or_number}/groups/{group_id}\".", + "location": "path", + "pattern": "^projects/[^/]+/groups/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v3/{+name}", + "response": { + "$ref": "Group" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/monitoring", + "https://www.googleapis.com/auth/monitoring.read" + ] + }, + "list": { + "description": "Lists the existing groups.", + "flatPath": "v3/projects/{projectsId}/groups", + "httpMethod": "GET", + "id": "monitoring.projects.groups.list", + "parameterOrder": [ + "name" + ], + "parameters": { + "ancestorsOfGroup": { + "description": "A group name: \"projects/{project_id_or_number}/groups/{group_id}\". Returns groups that are ancestors of the specified group. The groups are returned in order, starting with the immediate parent and ending with the most distant ancestor. If the specified group has no immediate parent, the results are empty.", + "location": "query", + "type": "string" + }, + "childrenOfGroup": { + "description": "A group name: \"projects/{project_id_or_number}/groups/{group_id}\". Returns groups whose parentName field contains the group name. If no groups have this parent, the results are empty.", + "location": "query", + "type": "string" + }, + "descendantsOfGroup": { + "description": "A group name: \"projects/{project_id_or_number}/groups/{group_id}\". Returns the descendants of the specified group. This is a superset of the results returned by the childrenOfGroup filter, and includes children-of-children, and so forth.", + "location": "query", + "type": "string" + }, + "name": { + "description": "The project whose groups are to be listed. The format is \"projects/{project_id_or_number}\".", + "location": "path", + "pattern": "^projects/[^/]+$", + "required": true, + "type": "string" + }, + "pageSize": { + "description": "A positive number that is the maximum number of results to return.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "If this field is not empty then it must contain the nextPageToken value returned by a previous call to this method. Using this field causes the method to return additional results from the previous method call.", + "location": "query", + "type": "string" + } + }, + "path": "v3/{+name}/groups", + "response": { + "$ref": "ListGroupsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/monitoring", + "https://www.googleapis.com/auth/monitoring.read" + ] + }, + "update": { + "description": "Updates an existing group. You can change any group attributes except name.", + "flatPath": "v3/projects/{projectsId}/groups/{groupsId}", + "httpMethod": "PUT", + "id": "monitoring.projects.groups.update", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Output only. The name of this group. The format is \"projects/{project_id_or_number}/groups/{group_id}\". When creating a group, this field is ignored and a new name is created consisting of the project specified in the call to CreateGroup and a unique {group_id} that is generated automatically.", + "location": "path", + "pattern": "^projects/[^/]+/groups/[^/]+$", + "required": true, + "type": "string" + }, + "validateOnly": { + "description": "If true, validate this request but do not update the existing group.", + "location": "query", + "type": "boolean" + } + }, + "path": "v3/{+name}", + "request": { + "$ref": "Group" + }, + "response": { + "$ref": "Group" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/monitoring" + ] + } + }, + "resources": { + "members": { + "methods": { + "list": { + "description": "Lists the monitored resources that are members of a group.", + "flatPath": "v3/projects/{projectsId}/groups/{groupsId}/members", + "httpMethod": "GET", + "id": "monitoring.projects.groups.members.list", + "parameterOrder": [ + "name" + ], + "parameters": { + "filter": { + "description": "An optional list filter describing the members to be returned. The filter may reference the type, labels, and metadata of monitored resources that comprise the group. For example, to return only resources representing Compute Engine VM instances, use this filter:\nresource.type = \"gce_instance\"\n", + "location": "query", + "type": "string" + }, + "interval.endTime": { + "description": "Required. The end of the time interval.", + "format": "google-datetime", + "location": "query", + "type": "string" + }, + "interval.startTime": { + "description": "Optional. The beginning of the time interval. The default value for the start time is the end time. The start time must not be later than the end time.", + "format": "google-datetime", + "location": "query", + "type": "string" + }, + "name": { + "description": "The group whose members are listed. The format is \"projects/{project_id_or_number}/groups/{group_id}\".", + "location": "path", + "pattern": "^projects/[^/]+/groups/[^/]+$", + "required": true, + "type": "string" + }, + "pageSize": { + "description": "A positive number that is the maximum number of results to return.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "If this field is not empty then it must contain the nextPageToken value returned by a previous call to this method. Using this field causes the method to return additional results from the previous method call.", + "location": "query", + "type": "string" + } + }, + "path": "v3/{+name}/members", + "response": { + "$ref": "ListGroupMembersResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/monitoring", + "https://www.googleapis.com/auth/monitoring.read" + ] + } + } } } }, "metricDescriptors": { "methods": { "create": { - "flatPath": "v3/projects/{projectsId}/metricDescriptors", - "path": "v3/{+name}/metricDescriptors", - "id": "monitoring.projects.metricDescriptors.create", "description": "Creates a new metric descriptor. User-created metric descriptors define custom metrics.", + "flatPath": "v3/projects/{projectsId}/metricDescriptors", + "httpMethod": "POST", + "id": "monitoring.projects.metricDescriptors.create", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The project on which to execute the request. The format is \"projects/{project_id_or_number}\".", + "location": "path", + "pattern": "^projects/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v3/{+name}/metricDescriptors", "request": { "$ref": "MetricDescriptor" }, "response": { "$ref": "MetricDescriptor" }, - "parameterOrder": [ - "name" - ], - "httpMethod": "POST", "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/monitoring", "https://www.googleapis.com/auth/monitoring.write" - ], - "parameters": { - "name": { - "description": "The project on which to execute the request. The format is \"projects/{project_id_or_number}\".", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+$", - "location": "path" - } - } + ] }, "delete": { - "response": { - "$ref": "Empty" - }, + "description": "Deletes a metric descriptor. Only user-created custom metrics can be deleted.", + "flatPath": "v3/projects/{projectsId}/metricDescriptors/{metricDescriptorsId}", + "httpMethod": "DELETE", + "id": "monitoring.projects.metricDescriptors.delete", "parameterOrder": [ "name" ], - "httpMethod": "DELETE", "parameters": { "name": { - "location": "path", "description": "The metric descriptor on which to execute the request. The format is \"projects/{project_id_or_number}/metricDescriptors/{metric_id}\". An example of {metric_id} is: \"custom.googleapis.com/my_test_metric\".", + "location": "path", + "pattern": "^projects/[^/]+/metricDescriptors/.+$", "required": true, - "type": "string", - "pattern": "^projects/[^/]+/metricDescriptors/.+$" + "type": "string" } }, + "path": "v3/{+name}", + "response": { + "$ref": "Empty" + }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/monitoring" - ], - "flatPath": "v3/projects/{projectsId}/metricDescriptors/{metricDescriptorsId}", - "path": "v3/{+name}", - "id": "monitoring.projects.metricDescriptors.delete", - "description": "Deletes a metric descriptor. Only user-created custom metrics can be deleted." + ] }, - "list": { + "get": { + "description": "Gets a single metric descriptor. This method does not require a Stackdriver account.", + "flatPath": "v3/projects/{projectsId}/metricDescriptors/{metricDescriptorsId}", "httpMethod": "GET", - "response": { - "$ref": "ListMetricDescriptorsResponse" - }, + "id": "monitoring.projects.metricDescriptors.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The metric descriptor on which to execute the request. The format is \"projects/{project_id_or_number}/metricDescriptors/{metric_id}\". An example value of {metric_id} is \"compute.googleapis.com/instance/disk/read_bytes_count\".", + "location": "path", + "pattern": "^projects/[^/]+/metricDescriptors/.+$", + "required": true, + "type": "string" + } + }, + "path": "v3/{+name}", + "response": { + "$ref": "MetricDescriptor" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/monitoring", + "https://www.googleapis.com/auth/monitoring.read", + "https://www.googleapis.com/auth/monitoring.write" + ] + }, + "list": { + "description": "Lists metric descriptors that match a filter. This method does not require a Stackdriver account.", + "flatPath": "v3/projects/{projectsId}/metricDescriptors", + "httpMethod": "GET", + "id": "monitoring.projects.metricDescriptors.list", "parameterOrder": [ "name" ], "parameters": { - "pageSize": { - "location": "query", - "description": "A positive number that is the maximum number of results to return.", - "format": "int32", - "type": "integer" - }, "filter": { - "location": "query", "description": "If this field is empty, all custom and system-defined metric descriptors are returned. Otherwise, the filter specifies which metric descriptors are to be returned. For example, the following filter matches all custom metrics:\nmetric.type = starts_with(\"custom.googleapis.com/\")\n", + "location": "query", "type": "string" }, "name": { "description": "The project on which to execute the request. The format is \"projects/{project_id_or_number}\".", - "required": true, - "type": "string", + "location": "path", "pattern": "^projects/[^/]+$", - "location": "path" + "required": true, + "type": "string" + }, + "pageSize": { + "description": "A positive number that is the maximum number of results to return.", + "format": "int32", + "location": "query", + "type": "integer" }, "pageToken": { "description": "If this field is not empty then it must contain the nextPageToken value returned by a previous call to this method. Using this field causes the method to return additional results from the previous method call.", - "type": "string", - "location": "query" + "location": "query", + "type": "string" } }, + "path": "v3/{+name}/metricDescriptors", + "response": { + "$ref": "ListMetricDescriptorsResponse" + }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/monitoring", "https://www.googleapis.com/auth/monitoring.read", "https://www.googleapis.com/auth/monitoring.write" - ], - "flatPath": "v3/projects/{projectsId}/metricDescriptors", - "id": "monitoring.projects.metricDescriptors.list", - "path": "v3/{+name}/metricDescriptors", - "description": "Lists metric descriptors that match a filter. This method does not require a Stackdriver account." - }, + ] + } + } + }, + "monitoredResourceDescriptors": { + "methods": { "get": { - "description": "Gets a single metric descriptor. This method does not require a Stackdriver account.", + "description": "Gets a single monitored resource descriptor. This method does not require a Stackdriver account.", + "flatPath": "v3/projects/{projectsId}/monitoredResourceDescriptors/{monitoredResourceDescriptorsId}", "httpMethod": "GET", - "response": { - "$ref": "MetricDescriptor" - }, + "id": "monitoring.projects.monitoredResourceDescriptors.get", "parameterOrder": [ "name" ], "parameters": { "name": { - "pattern": "^projects/[^/]+/metricDescriptors/.+$", + "description": "The monitored resource descriptor to get. The format is \"projects/{project_id_or_number}/monitoredResourceDescriptors/{resource_type}\". The {resource_type} is a predefined type, such as cloudsql_database.", "location": "path", - "description": "The metric descriptor on which to execute the request. The format is \"projects/{project_id_or_number}/metricDescriptors/{metric_id}\". An example value of {metric_id} is \"compute.googleapis.com/instance/disk/read_bytes_count\".", + "pattern": "^projects/[^/]+/monitoredResourceDescriptors/[^/]+$", "required": true, "type": "string" } }, + "path": "v3/{+name}", + "response": { + "$ref": "MonitoredResourceDescriptor" + }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/monitoring", "https://www.googleapis.com/auth/monitoring.read", "https://www.googleapis.com/auth/monitoring.write" + ] + }, + "list": { + "description": "Lists monitored resource descriptors that match a filter. This method does not require a Stackdriver account.", + "flatPath": "v3/projects/{projectsId}/monitoredResourceDescriptors", + "httpMethod": "GET", + "id": "monitoring.projects.monitoredResourceDescriptors.list", + "parameterOrder": [ + "name" ], - "flatPath": "v3/projects/{projectsId}/metricDescriptors/{metricDescriptorsId}", - "id": "monitoring.projects.metricDescriptors.get", - "path": "v3/{+name}" + "parameters": { + "filter": { + "description": "An optional filter describing the descriptors to be returned. The filter can reference the descriptor's type and labels. For example, the following filter returns only Google Compute Engine descriptors that have an id label:\nresource.type = starts_with(\"gce_\") AND resource.label:id\n", + "location": "query", + "type": "string" + }, + "name": { + "description": "The project on which to execute the request. The format is \"projects/{project_id_or_number}\".", + "location": "path", + "pattern": "^projects/[^/]+$", + "required": true, + "type": "string" + }, + "pageSize": { + "description": "A positive number that is the maximum number of results to return.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "If this field is not empty then it must contain the nextPageToken value returned by a previous call to this method. Using this field causes the method to return additional results from the previous method call.", + "location": "query", + "type": "string" + } + }, + "path": "v3/{+name}/monitoredResourceDescriptors", + "response": { + "$ref": "ListMonitoredResourceDescriptorsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/monitoring", + "https://www.googleapis.com/auth/monitoring.read", + "https://www.googleapis.com/auth/monitoring.write" + ] + } + } + }, + "notificationChannelDescriptors": { + "methods": { + "get": { + "description": "Gets a single channel descriptor. The descriptor indicates which fields are expected / permitted for a notification channel of the given type.", + "flatPath": "v3/projects/{projectsId}/notificationChannelDescriptors/{notificationChannelDescriptorsId}", + "httpMethod": "GET", + "id": "monitoring.projects.notificationChannelDescriptors.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The channel type for which to execute the request. The format is projects/[PROJECT_ID]/notificationChannelDescriptors/{channel_type}.", + "location": "path", + "pattern": "^projects/[^/]+/notificationChannelDescriptors/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v3/{+name}", + "response": { + "$ref": "NotificationChannelDescriptor" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/monitoring", + "https://www.googleapis.com/auth/monitoring.read" + ] + }, + "list": { + "description": "Lists the descriptors for supported channel types. The use of descriptors makes it possible for new channel types to be dynamically added.", + "flatPath": "v3/projects/{projectsId}/notificationChannelDescriptors", + "httpMethod": "GET", + "id": "monitoring.projects.notificationChannelDescriptors.list", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The REST resource name of the parent from which to retrieve the notification channel descriptors. The expected syntax is:\nprojects/[PROJECT_ID]\nNote that this names the parent container in which to look for the descriptors; to retrieve a single descriptor by name, use the GetNotificationChannelDescriptor operation, instead.", + "location": "path", + "pattern": "^projects/[^/]+$", + "required": true, + "type": "string" + }, + "pageSize": { + "description": "The maximum number of results to return in a single response. If not set to a positive number, a reasonable value will be chosen by the service.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "If non-empty, page_token must contain a value returned as the next_page_token in a previous response to request the next set of results.", + "location": "query", + "type": "string" + } + }, + "path": "v3/{+name}/notificationChannelDescriptors", + "response": { + "$ref": "ListNotificationChannelDescriptorsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/monitoring", + "https://www.googleapis.com/auth/monitoring.read" + ] + } + } + }, + "notificationChannels": { + "methods": { + "create": { + "description": "Creates a new notification channel, representing a single notification endpoint such as an email address, SMS number, or pagerduty service.", + "flatPath": "v3/projects/{projectsId}/notificationChannels", + "httpMethod": "POST", + "id": "monitoring.projects.notificationChannels.create", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The project on which to execute the request. The format is:\nprojects/[PROJECT_ID]\nNote that this names the container into which the channel will be written. This does not name the newly created channel. The resulting channel's name will have a normalized version of this field as a prefix, but will add /notificationChannels/[CHANNEL_ID] to identify the channel.", + "location": "path", + "pattern": "^projects/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v3/{+name}/notificationChannels", + "request": { + "$ref": "NotificationChannel" + }, + "response": { + "$ref": "NotificationChannel" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/monitoring" + ] + }, + "delete": { + "description": "Deletes a notification channel.", + "flatPath": "v3/projects/{projectsId}/notificationChannels/{notificationChannelsId}", + "httpMethod": "DELETE", + "id": "monitoring.projects.notificationChannels.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "force": { + "description": "If true, the notification channel will be deleted regardless of its use in alert policies (the policies will be updated to remove the channel). If false, channels that are still referenced by an existing alerting policy will fail to be deleted in a delete operation.", + "location": "query", + "type": "boolean" + }, + "name": { + "description": "The channel for which to execute the request. The format is projects/[PROJECT_ID]/notificationChannels/[CHANNEL_ID].", + "location": "path", + "pattern": "^projects/[^/]+/notificationChannels/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v3/{+name}", + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/monitoring" + ] + }, + "get": { + "description": "Gets a single notification channel. The channel includes the relevant configuration details with which the channel was created. However, the response may truncate or omit passwords, API keys, or other private key matter and thus the response may not be 100% identical to the information that was supplied in the call to the create method.", + "flatPath": "v3/projects/{projectsId}/notificationChannels/{notificationChannelsId}", + "httpMethod": "GET", + "id": "monitoring.projects.notificationChannels.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The channel for which to execute the request. The format is projects/[PROJECT_ID]/notificationChannels/[CHANNEL_ID].", + "location": "path", + "pattern": "^projects/[^/]+/notificationChannels/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v3/{+name}", + "response": { + "$ref": "NotificationChannel" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/monitoring", + "https://www.googleapis.com/auth/monitoring.read" + ] + }, + "getVerificationCode": { + "description": "Requests a verification code for an already verified channel that can then be used in a call to VerifyNotificationChannel() on a different channel with an equivalent identity in the same or in a different project. This makes it possible to copy a channel between projects without requiring manual reverification of the channel. If the channel is not in the verified state, this method will fail (in other words, this may only be used if the SendNotificationChannelVerificationCode and VerifyNotificationChannel paths have already been used to put the given channel into the verified state).There is no guarantee that the verification codes returned by this method will be of a similar structure or form as the ones that are delivered to the channel via SendNotificationChannelVerificationCode; while VerifyNotificationChannel() will recognize both the codes delivered via SendNotificationChannelVerificationCode() and returned from GetNotificationChannelVerificationCode(), it is typically the case that the verification codes delivered via SendNotificationChannelVerificationCode() will be shorter and also have a shorter expiration (e.g. codes such as \"G-123456\") whereas GetVerificationCode() will typically return a much longer, websafe base 64 encoded string that has a longer expiration time.", + "flatPath": "v3/projects/{projectsId}/notificationChannels/{notificationChannelsId}:getVerificationCode", + "httpMethod": "POST", + "id": "monitoring.projects.notificationChannels.getVerificationCode", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The notification channel for which a verification code is to be generated and retrieved. This must name a channel that is already verified; if the specified channel is not verified, the request will fail.", + "location": "path", + "pattern": "^projects/[^/]+/notificationChannels/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v3/{+name}:getVerificationCode", + "request": { + "$ref": "GetNotificationChannelVerificationCodeRequest" + }, + "response": { + "$ref": "GetNotificationChannelVerificationCodeResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/monitoring" + ] + }, + "list": { + "description": "Lists the notification channels that have been created for the project.", + "flatPath": "v3/projects/{projectsId}/notificationChannels", + "httpMethod": "GET", + "id": "monitoring.projects.notificationChannels.list", + "parameterOrder": [ + "name" + ], + "parameters": { + "filter": { + "description": "If provided, this field specifies the criteria that must be met by notification channels to be included in the response.For more details, see sorting and filtering.", + "location": "query", + "type": "string" + }, + "name": { + "description": "The project on which to execute the request. The format is projects/[PROJECT_ID]. That is, this names the container in which to look for the notification channels; it does not name a specific channel. To query a specific channel by REST resource name, use the GetNotificationChannel operation.", + "location": "path", + "pattern": "^projects/[^/]+$", + "required": true, + "type": "string" + }, + "orderBy": { + "description": "A comma-separated list of fields by which to sort the result. Supports the same set of fields as in filter. Entries can be prefixed with a minus sign to sort in descending rather than ascending order.For more details, see sorting and filtering.", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "The maximum number of results to return in a single response. If not set to a positive number, a reasonable value will be chosen by the service.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "If non-empty, page_token must contain a value returned as the next_page_token in a previous response to request the next set of results.", + "location": "query", + "type": "string" + } + }, + "path": "v3/{+name}/notificationChannels", + "response": { + "$ref": "ListNotificationChannelsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/monitoring", + "https://www.googleapis.com/auth/monitoring.read" + ] + }, + "patch": { + "description": "Updates a notification channel. Fields not specified in the field mask remain unchanged.", + "flatPath": "v3/projects/{projectsId}/notificationChannels/{notificationChannelsId}", + "httpMethod": "PATCH", + "id": "monitoring.projects.notificationChannels.patch", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The full REST resource name for this channel. The syntax is:\nprojects/[PROJECT_ID]/notificationChannels/[CHANNEL_ID]\nThe [CHANNEL_ID] is automatically assigned by the server on creation.", + "location": "path", + "pattern": "^projects/[^/]+/notificationChannels/[^/]+$", + "required": true, + "type": "string" + }, + "updateMask": { + "description": "The fields to update.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + } + }, + "path": "v3/{+name}", + "request": { + "$ref": "NotificationChannel" + }, + "response": { + "$ref": "NotificationChannel" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/monitoring" + ] + }, + "sendVerificationCode": { + "description": "Causes a verification code to be delivered to the channel. The code can then be supplied in VerifyNotificationChannel to verify the channel.", + "flatPath": "v3/projects/{projectsId}/notificationChannels/{notificationChannelsId}:sendVerificationCode", + "httpMethod": "POST", + "id": "monitoring.projects.notificationChannels.sendVerificationCode", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The notification channel to which to send a verification code.", + "location": "path", + "pattern": "^projects/[^/]+/notificationChannels/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v3/{+name}:sendVerificationCode", + "request": { + "$ref": "SendNotificationChannelVerificationCodeRequest" + }, + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/monitoring" + ] + }, + "verify": { + "description": "Verifies a NotificationChannel by proving receipt of the code delivered to the channel as a result of calling SendNotificationChannelVerificationCode.", + "flatPath": "v3/projects/{projectsId}/notificationChannels/{notificationChannelsId}:verify", + "httpMethod": "POST", + "id": "monitoring.projects.notificationChannels.verify", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The notification channel to verify.", + "location": "path", + "pattern": "^projects/[^/]+/notificationChannels/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v3/{+name}:verify", + "request": { + "$ref": "VerifyNotificationChannelRequest" + }, + "response": { + "$ref": "NotificationChannel" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/monitoring" + ] } } }, "timeSeries": { "methods": { - "list": { - "response": { - "$ref": "ListTimeSeriesResponse" - }, + "create": { + "description": "Creates or adds data to one or more time series. The response is empty if all time series in the request were written. If any time series could not be written, a corresponding failure message is included in the error response.", + "flatPath": "v3/projects/{projectsId}/timeSeries", + "httpMethod": "POST", + "id": "monitoring.projects.timeSeries.create", "parameterOrder": [ "name" ], - "httpMethod": "GET", + "parameters": { + "name": { + "description": "The project on which to execute the request. The format is \"projects/{project_id_or_number}\".", + "location": "path", + "pattern": "^projects/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v3/{+name}/timeSeries", + "request": { + "$ref": "CreateTimeSeriesRequest" + }, + "response": { + "$ref": "Empty" + }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/monitoring", - "https://www.googleapis.com/auth/monitoring.read" + "https://www.googleapis.com/auth/monitoring.write" + ] + }, + "list": { + "description": "Lists time series that match a filter. This method does not require a Stackdriver account.", + "flatPath": "v3/projects/{projectsId}/timeSeries", + "httpMethod": "GET", + "id": "monitoring.projects.timeSeries.list", + "parameterOrder": [ + "name" ], "parameters": { "aggregation.alignmentPeriod": { - "location": "query", "description": "The alignment period for per-time series alignment. If present, alignmentPeriod must be at least 60 seconds. After per-time series alignment, each time series will contain data points only on the period boundaries. If perSeriesAligner is not specified or equals ALIGN_NONE, then this field is ignored. If perSeriesAligner is specified and does not equal ALIGN_NONE, then this field must be defined; otherwise an error is returned.", "format": "google-duration", + "location": "query", "type": "string" }, - "pageSize": { - "location": "query", - "description": "A positive number that is the maximum number of results to return. When view field sets to FULL, it limits the number of Points server will return; if view field is HEADERS, it limits the number of TimeSeries server will return.", - "format": "int32", - "type": "integer" - }, - "orderBy": { - "description": "Unsupported: must be left blank. The points in each time series are returned in reverse time order.", - "type": "string", - "location": "query" - }, "aggregation.crossSeriesReducer": { + "description": "The approach to be used to combine time series. Not all reducer functions may be applied to all time series, depending on the metric type and the value type of the original time series. Reduction may change the metric type of value type of the time series.Time series data must be aligned in order to perform cross-time series reduction. If crossSeriesReducer is specified, then perSeriesAligner must be specified and not equal ALIGN_NONE and alignmentPeriod must be specified; otherwise, an error is returned.", "enum": [ "REDUCE_NONE", "REDUCE_MEAN", @@ -254,17 +1171,17 @@ "REDUCE_PERCENTILE_50", "REDUCE_PERCENTILE_05" ], - "description": "The approach to be used to combine time series. Not all reducer functions may be applied to all time series, depending on the metric type and the value type of the original time series. Reduction may change the metric type of value type of the time series.Time series data must be aligned in order to perform cross-time series reduction. If crossSeriesReducer is specified, then perSeriesAligner must be specified and not equal ALIGN_NONE and alignmentPeriod must be specified; otherwise, an error is returned.", - "type": "string", - "location": "query" + "location": "query", + "type": "string" }, - "filter": { - "description": "A monitoring filter that specifies which time series should be returned. The filter must specify a single metric type, and can additionally specify metric labels and other information. For example:\nmetric.type = \"compute.googleapis.com/instance/cpu/usage_time\" AND\n metric.label.instance_name = \"my-instance-name\"\n", - "type": "string", - "location": "query" + "aggregation.groupByFields": { + "description": "The set of fields to preserve when crossSeriesReducer is specified. The groupByFields determine how the time series are partitioned into subsets prior to applying the aggregation function. Each subset contains time series that have the same value for each of the grouping fields. Each individual time series is a member of exactly one subset. The crossSeriesReducer is applied to each subset of time series. It is not possible to reduce across different resource types, so this field implicitly contains resource.type. Fields not specified in groupByFields are aggregated away. If groupByFields is not specified and all the time series have the same resource type, then the time series are aggregated into a single output time series. If crossSeriesReducer is not defined, this field is ignored.", + "location": "query", + "repeated": true, + "type": "string" }, "aggregation.perSeriesAligner": { - "location": "query", + "description": "The approach to be used to align individual time series. Not all alignment functions may be applied to all time series, depending on the metric type and value type of the original time series. Alignment may change the metric type or the value type of the time series.Time series data must be aligned in order to perform cross-time series reduction. If crossSeriesReducer is specified, then perSeriesAligner must be specified and not equal ALIGN_NONE and alignmentPeriod must be specified; otherwise, an error is returned.", "enum": [ "ALIGN_NONE", "ALIGN_DELTA", @@ -286,821 +1203,481 @@ "ALIGN_PERCENTILE_05", "ALIGN_PERCENT_CHANGE" ], - "description": "The approach to be used to align individual time series. Not all alignment functions may be applied to all time series, depending on the metric type and value type of the original time series. Alignment may change the metric type or the value type of the time series.Time series data must be aligned in order to perform cross-time series reduction. If crossSeriesReducer is specified, then perSeriesAligner must be specified and not equal ALIGN_NONE and alignmentPeriod must be specified; otherwise, an error is returned.", + "location": "query", "type": "string" }, - "pageToken": { + "filter": { + "description": "A monitoring filter that specifies which time series should be returned. The filter must specify a single metric type, and can additionally specify metric labels and other information. For example:\nmetric.type = \"compute.googleapis.com/instance/cpu/usage_time\" AND\n metric.label.instance_name = \"my-instance-name\"\n", + "location": "query", + "type": "string" + }, + "interval.endTime": { + "description": "Required. The end of the time interval.", + "format": "google-datetime", "location": "query", - "description": "If this field is not empty then it must contain the nextPageToken value returned by a previous call to this method. Using this field causes the method to return additional results from the previous method call.", "type": "string" }, "interval.startTime": { "description": "Optional. The beginning of the time interval. The default value for the start time is the end time. The start time must not be later than the end time.", "format": "google-datetime", - "type": "string", - "location": "query" + "location": "query", + "type": "string" + }, + "name": { + "description": "The project on which to execute the request. The format is \"projects/{project_id_or_number}\".", + "location": "path", + "pattern": "^projects/[^/]+$", + "required": true, + "type": "string" + }, + "orderBy": { + "description": "Unsupported: must be left blank. The points in each time series are returned in reverse time order.", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "A positive number that is the maximum number of results to return. When view field sets to FULL, it limits the number of Points server will return; if view field is HEADERS, it limits the number of TimeSeries server will return.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "If this field is not empty then it must contain the nextPageToken value returned by a previous call to this method. Using this field causes the method to return additional results from the previous method call.", + "location": "query", + "type": "string" }, "view": { + "description": "Specifies which information is returned about the time series.", "enum": [ "FULL", "HEADERS" ], - "description": "Specifies which information is returned about the time series.", - "type": "string", - "location": "query" - }, - "name": { - "description": "The project on which to execute the request. The format is \"projects/{project_id_or_number}\".", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+$", - "location": "path" - }, - "aggregation.groupByFields": { - "description": "The set of fields to preserve when crossSeriesReducer is specified. The groupByFields determine how the time series are partitioned into subsets prior to applying the aggregation function. Each subset contains time series that have the same value for each of the grouping fields. Each individual time series is a member of exactly one subset. The crossSeriesReducer is applied to each subset of time series. It is not possible to reduce across different resource types, so this field implicitly contains resource.type. Fields not specified in groupByFields are aggregated away. If groupByFields is not specified and all the time series have the same resource type, then the time series are aggregated into a single output time series. If crossSeriesReducer is not defined, this field is ignored.", - "type": "string", - "repeated": true, - "location": "query" - }, - "interval.endTime": { "location": "query", - "description": "Required. The end of the time interval.", - "format": "google-datetime", "type": "string" } }, - "flatPath": "v3/projects/{projectsId}/timeSeries", "path": "v3/{+name}/timeSeries", - "id": "monitoring.projects.timeSeries.list", - "description": "Lists time series that match a filter. This method does not require a Stackdriver account." - }, - "create": { - "path": "v3/{+name}/timeSeries", - "id": "monitoring.projects.timeSeries.create", - "description": "Creates or adds data to one or more time series. The response is empty if all time series in the request were written. If any time series could not be written, a corresponding failure message is included in the error response.", - "request": { - "$ref": "CreateTimeSeriesRequest" - }, "response": { - "$ref": "Empty" + "$ref": "ListTimeSeriesResponse" }, - "parameterOrder": [ - "name" - ], - "httpMethod": "POST", "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/monitoring", - "https://www.googleapis.com/auth/monitoring.write" - ], - "parameters": { - "name": { - "pattern": "^projects/[^/]+$", - "location": "path", - "description": "The project on which to execute the request. The format is \"projects/{project_id_or_number}\".", - "required": true, - "type": "string" - } - }, - "flatPath": "v3/projects/{projectsId}/timeSeries" + "https://www.googleapis.com/auth/monitoring.read" + ] } } }, "uptimeCheckConfigs": { "methods": { "create": { + "description": "Creates a new uptime check configuration.", + "flatPath": "v3/projects/{projectsId}/uptimeCheckConfigs", + "httpMethod": "POST", + "id": "monitoring.projects.uptimeCheckConfigs.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "The project in which to create the uptime check. The format is projects/[PROJECT_ID].", + "location": "path", + "pattern": "^projects/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v3/{+parent}/uptimeCheckConfigs", "request": { "$ref": "UptimeCheckConfig" }, - "description": "Creates a new uptime check configuration.", "response": { "$ref": "UptimeCheckConfig" }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "POST", - "parameters": { - "parent": { - "description": "The project in which to create the uptime check. The format is:projects/[PROJECT_ID].", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+$", - "location": "path" - } - }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/monitoring" - ], - "flatPath": "v3/projects/{projectsId}/uptimeCheckConfigs", - "path": "v3/{+parent}/uptimeCheckConfigs", - "id": "monitoring.projects.uptimeCheckConfigs.create" + ] }, "delete": { "description": "Deletes an uptime check configuration. Note that this method will fail if the uptime check configuration is referenced by an alert policy or other dependent configs that would be rendered invalid by the deletion.", - "response": { - "$ref": "Empty" - }, + "flatPath": "v3/projects/{projectsId}/uptimeCheckConfigs/{uptimeCheckConfigsId}", + "httpMethod": "DELETE", + "id": "monitoring.projects.uptimeCheckConfigs.delete", "parameterOrder": [ "name" ], - "httpMethod": "DELETE", "parameters": { "name": { - "description": "The uptime check configuration to delete. The format isprojects/[PROJECT_ID]/uptimeCheckConfigs/[UPTIME_CHECK_ID].", - "required": true, - "type": "string", + "description": "The uptime check configuration to delete. The format is projects/[PROJECT_ID]/uptimeCheckConfigs/[UPTIME_CHECK_ID].", + "location": "path", "pattern": "^projects/[^/]+/uptimeCheckConfigs/[^/]+$", - "location": "path" + "required": true, + "type": "string" } }, + "path": "v3/{+name}", + "response": { + "$ref": "Empty" + }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/monitoring" - ], - "flatPath": "v3/projects/{projectsId}/uptimeCheckConfigs/{uptimeCheckConfigsId}", - "path": "v3/{+name}", - "id": "monitoring.projects.uptimeCheckConfigs.delete" + ] }, - "list": { - "flatPath": "v3/projects/{projectsId}/uptimeCheckConfigs", - "id": "monitoring.projects.uptimeCheckConfigs.list", - "path": "v3/{+parent}/uptimeCheckConfigs", - "description": "Lists the existing valid uptime check configurations for the project, leaving out any invalid configurations.", + "get": { + "description": "Gets a single uptime check configuration.", + "flatPath": "v3/projects/{projectsId}/uptimeCheckConfigs/{uptimeCheckConfigsId}", "httpMethod": "GET", - "response": { - "$ref": "ListUptimeCheckConfigsResponse" - }, + "id": "monitoring.projects.uptimeCheckConfigs.get", "parameterOrder": [ - "parent" + "name" ], "parameters": { - "pageSize": { - "location": "query", - "description": "The maximum number of results to return in a single response. The server may further constrain the maximum number of results returned in a single page. If the page_size is \u003c=0, the server will decide the number of results to be returned.", - "format": "int32", - "type": "integer" - }, - "parent": { + "name": { + "description": "The uptime check configuration to retrieve. The format is projects/[PROJECT_ID]/uptimeCheckConfigs/[UPTIME_CHECK_ID].", "location": "path", - "description": "The project whose uptime check configurations are listed. The format isprojects/[PROJECT_ID].", + "pattern": "^projects/[^/]+/uptimeCheckConfigs/[^/]+$", "required": true, - "type": "string", - "pattern": "^projects/[^/]+$" - }, - "pageToken": { - "description": "If this field is not empty then it must contain the nextPageToken value returned by a previous call to this method. Using this field causes the method to return more results from the previous method call.", - "type": "string", - "location": "query" + "type": "string" } }, + "path": "v3/{+name}", + "response": { + "$ref": "UptimeCheckConfig" + }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/monitoring", "https://www.googleapis.com/auth/monitoring.read" ] }, - "get": { - "response": { - "$ref": "UptimeCheckConfig" - }, - "parameterOrder": [ - "name" - ], + "list": { + "description": "Lists the existing valid uptime check configurations for the project, leaving out any invalid configurations.", + "flatPath": "v3/projects/{projectsId}/uptimeCheckConfigs", "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/monitoring", - "https://www.googleapis.com/auth/monitoring.read" + "id": "monitoring.projects.uptimeCheckConfigs.list", + "parameterOrder": [ + "parent" ], "parameters": { - "name": { - "pattern": "^projects/[^/]+/uptimeCheckConfigs/[^/]+$", + "pageSize": { + "description": "The maximum number of results to return in a single response. The server may further constrain the maximum number of results returned in a single page. If the page_size is \u003c=0, the server will decide the number of results to be returned.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "If this field is not empty then it must contain the nextPageToken value returned by a previous call to this method. Using this field causes the method to return more results from the previous method call.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "The project whose uptime check configurations are listed. The format is projects/[PROJECT_ID].", "location": "path", - "description": "The uptime check configuration to retrieve. The format isprojects/[PROJECT_ID]/uptimeCheckConfigs/[UPTIME_CHECK_ID].", + "pattern": "^projects/[^/]+$", "required": true, "type": "string" } }, - "flatPath": "v3/projects/{projectsId}/uptimeCheckConfigs/{uptimeCheckConfigsId}", - "path": "v3/{+name}", - "id": "monitoring.projects.uptimeCheckConfigs.get", - "description": "Gets a single uptime check configuration." + "path": "v3/{+parent}/uptimeCheckConfigs", + "response": { + "$ref": "ListUptimeCheckConfigsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/monitoring", + "https://www.googleapis.com/auth/monitoring.read" + ] }, "patch": { "description": "Updates an uptime check configuration. You can either replace the entire configuration with a new one or replace only certain fields in the current configuration by specifying the fields to be updated via \"updateMask\". Returns the updated configuration.", - "request": { - "$ref": "UptimeCheckConfig" - }, - "response": { - "$ref": "UptimeCheckConfig" - }, + "flatPath": "v3/projects/{projectsId}/uptimeCheckConfigs/{uptimeCheckConfigsId}", + "httpMethod": "PATCH", + "id": "monitoring.projects.uptimeCheckConfigs.patch", "parameterOrder": [ "name" ], - "httpMethod": "PATCH", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/monitoring" - ], "parameters": { + "name": { + "description": "A unique resource name for this UptimeCheckConfig. The format is:projects/[PROJECT_ID]/uptimeCheckConfigs/[UPTIME_CHECK_ID].This field should be omitted when creating the uptime check configuration; on create, the resource name is assigned by the server and included in the response.", + "location": "path", + "pattern": "^projects/[^/]+/uptimeCheckConfigs/[^/]+$", + "required": true, + "type": "string" + }, "updateMask": { - "location": "query", "description": "Optional. If present, only the listed fields in the current uptime check configuration are updated with values from the new configuration. If this field is empty, then the current configuration is completely replaced with the new configuration.", "format": "google-fieldmask", - "type": "string" - }, - "name": { - "location": "path", - "description": "A unique resource name for this UptimeCheckConfig. The format is:projects/[PROJECT_ID]/uptimeCheckConfigs/[UPTIME_CHECK_ID].This field should be omitted when creating the uptime check configuration; on create, the resource name is assigned by the server and included in the response.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/uptimeCheckConfigs/[^/]+$" - } - }, - "flatPath": "v3/projects/{projectsId}/uptimeCheckConfigs/{uptimeCheckConfigsId}", - "path": "v3/{+name}", - "id": "monitoring.projects.uptimeCheckConfigs.patch" - } - } - }, - "monitoredResourceDescriptors": { - "methods": { - "list": { - "httpMethod": "GET", - "response": { - "$ref": "ListMonitoredResourceDescriptorsResponse" - }, - "parameterOrder": [ - "name" - ], - "parameters": { - "filter": { "location": "query", - "description": "An optional filter describing the descriptors to be returned. The filter can reference the descriptor's type and labels. For example, the following filter returns only Google Compute Engine descriptors that have an id label:\nresource.type = starts_with(\"gce_\") AND resource.label:id\n", - "type": "string" - }, - "name": { - "location": "path", - "description": "The project on which to execute the request. The format is \"projects/{project_id_or_number}\".", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+$" - }, - "pageToken": { - "description": "If this field is not empty then it must contain the nextPageToken value returned by a previous call to this method. Using this field causes the method to return additional results from the previous method call.", - "type": "string", - "location": "query" - }, - "pageSize": { - "description": "A positive number that is the maximum number of results to return.", - "format": "int32", - "type": "integer", - "location": "query" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/monitoring", - "https://www.googleapis.com/auth/monitoring.read", - "https://www.googleapis.com/auth/monitoring.write" - ], - "flatPath": "v3/projects/{projectsId}/monitoredResourceDescriptors", - "id": "monitoring.projects.monitoredResourceDescriptors.list", - "path": "v3/{+name}/monitoredResourceDescriptors", - "description": "Lists monitored resource descriptors that match a filter. This method does not require a Stackdriver account." - }, - "get": { - "description": "Gets a single monitored resource descriptor. This method does not require a Stackdriver account.", - "response": { - "$ref": "MonitoredResourceDescriptor" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/monitoring", - "https://www.googleapis.com/auth/monitoring.read", - "https://www.googleapis.com/auth/monitoring.write" - ], - "parameters": { - "name": { - "pattern": "^projects/[^/]+/monitoredResourceDescriptors/[^/]+$", - "location": "path", - "description": "The monitored resource descriptor to get. The format is \"projects/{project_id_or_number}/monitoredResourceDescriptors/{resource_type}\". The {resource_type} is a predefined type, such as cloudsql_database.", - "required": true, "type": "string" } }, - "flatPath": "v3/projects/{projectsId}/monitoredResourceDescriptors/{monitoredResourceDescriptorsId}", "path": "v3/{+name}", - "id": "monitoring.projects.monitoredResourceDescriptors.get" - } - } - }, - "groups": { - "methods": { - "list": { - "response": { - "$ref": "ListGroupsResponse" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "GET", - "parameters": { - "name": { - "pattern": "^projects/[^/]+$", - "location": "path", - "description": "The project whose groups are to be listed. The format is \"projects/{project_id_or_number}\".", - "required": true, - "type": "string" - }, - "childrenOfGroup": { - "description": "A group name: \"projects/{project_id_or_number}/groups/{group_id}\". Returns groups whose parentName field contains the group name. If no groups have this parent, the results are empty.", - "type": "string", - "location": "query" - }, - "descendantsOfGroup": { - "description": "A group name: \"projects/{project_id_or_number}/groups/{group_id}\". Returns the descendants of the specified group. This is a superset of the results returned by the childrenOfGroup filter, and includes children-of-children, and so forth.", - "type": "string", - "location": "query" - }, - "pageToken": { - "location": "query", - "description": "If this field is not empty then it must contain the nextPageToken value returned by a previous call to this method. Using this field causes the method to return additional results from the previous method call.", - "type": "string" - }, - "pageSize": { - "location": "query", - "description": "A positive number that is the maximum number of results to return.", - "format": "int32", - "type": "integer" - }, - "ancestorsOfGroup": { - "description": "A group name: \"projects/{project_id_or_number}/groups/{group_id}\". Returns groups that are ancestors of the specified group. The groups are returned in order, starting with the immediate parent and ending with the most distant ancestor. If the specified group has no immediate parent, the results are empty.", - "type": "string", - "location": "query" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/monitoring", - "https://www.googleapis.com/auth/monitoring.read" - ], - "flatPath": "v3/projects/{projectsId}/groups", - "path": "v3/{+name}/groups", - "id": "monitoring.projects.groups.list", - "description": "Lists the existing groups." - }, - "get": { - "response": { - "$ref": "Group" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/monitoring", - "https://www.googleapis.com/auth/monitoring.read" - ], - "parameters": { - "name": { - "description": "The group to retrieve. The format is \"projects/{project_id_or_number}/groups/{group_id}\".", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/groups/[^/]+$", - "location": "path" - } - }, - "flatPath": "v3/projects/{projectsId}/groups/{groupsId}", - "path": "v3/{+name}", - "id": "monitoring.projects.groups.get", - "description": "Gets a single group." - }, - "update": { - "response": { - "$ref": "Group" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "PUT", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/monitoring" - ], - "parameters": { - "name": { - "location": "path", - "description": "Output only. The name of this group. The format is \"projects/{project_id_or_number}/groups/{group_id}\". When creating a group, this field is ignored and a new name is created consisting of the project specified in the call to CreateGroup and a unique {group_id} that is generated automatically.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/groups/[^/]+$" - }, - "validateOnly": { - "description": "If true, validate this request but do not update the existing group.", - "type": "boolean", - "location": "query" - } - }, - "flatPath": "v3/projects/{projectsId}/groups/{groupsId}", - "path": "v3/{+name}", - "id": "monitoring.projects.groups.update", - "description": "Updates an existing group. You can change any group attributes except name.", "request": { - "$ref": "Group" - } - }, - "create": { - "path": "v3/{+name}/groups", - "id": "monitoring.projects.groups.create", - "description": "Creates a new group.", - "request": { - "$ref": "Group" + "$ref": "UptimeCheckConfig" }, "response": { - "$ref": "Group" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/monitoring" - ], - "parameters": { - "name": { - "description": "The project in which to create the group. The format is \"projects/{project_id_or_number}\".", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+$", - "location": "path" - }, - "validateOnly": { - "location": "query", - "description": "If true, validate this request but do not create the group.", - "type": "boolean" - } - }, - "flatPath": "v3/projects/{projectsId}/groups" - }, - "delete": { - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "DELETE", - "parameters": { - "name": { - "description": "The group to delete. The format is \"projects/{project_id_or_number}/groups/{group_id}\".", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/groups/[^/]+$", - "location": "path" - } + "$ref": "UptimeCheckConfig" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/monitoring" - ], - "flatPath": "v3/projects/{projectsId}/groups/{groupsId}", - "path": "v3/{+name}", - "id": "monitoring.projects.groups.delete", - "description": "Deletes an existing group." - } - }, - "resources": { - "members": { - "methods": { - "list": { - "response": { - "$ref": "ListGroupMembersResponse" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/monitoring", - "https://www.googleapis.com/auth/monitoring.read" - ], - "parameters": { - "filter": { - "location": "query", - "description": "An optional list filter describing the members to be returned. The filter may reference the type, labels, and metadata of monitored resources that comprise the group. For example, to return only resources representing Compute Engine VM instances, use this filter:\nresource.type = \"gce_instance\"\n", - "type": "string" - }, - "pageToken": { - "location": "query", - "description": "If this field is not empty then it must contain the nextPageToken value returned by a previous call to this method. Using this field causes the method to return additional results from the previous method call.", - "type": "string" - }, - "interval.startTime": { - "location": "query", - "description": "Optional. The beginning of the time interval. The default value for the start time is the end time. The start time must not be later than the end time.", - "format": "google-datetime", - "type": "string" - }, - "pageSize": { - "location": "query", - "description": "A positive number that is the maximum number of results to return.", - "format": "int32", - "type": "integer" - }, - "name": { - "description": "The group whose members are listed. The format is \"projects/{project_id_or_number}/groups/{group_id}\".", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/groups/[^/]+$", - "location": "path" - }, - "interval.endTime": { - "location": "query", - "description": "Required. The end of the time interval.", - "format": "google-datetime", - "type": "string" - } - }, - "flatPath": "v3/projects/{projectsId}/groups/{groupsId}/members", - "path": "v3/{+name}/members", - "id": "monitoring.projects.groups.members.list", - "description": "Lists the monitored resources that are members of a group." - } - } + ] } } } } + }, + "uptimeCheckIps": { + "methods": { + "list": { + "description": "Returns the list of IPs that checkers run from", + "flatPath": "v3/uptimeCheckIps", + "httpMethod": "GET", + "id": "monitoring.uptimeCheckIps.list", + "parameterOrder": [], + "parameters": { + "pageSize": { + "description": "The maximum number of results to return in a single response. The server may further constrain the maximum number of results returned in a single page. If the page_size is \u003c=0, the server will decide the number of results to be returned. NOTE: this field is not yet implemented", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "If this field is not empty then it must contain the nextPageToken value returned by a previous call to this method. Using this field causes the method to return more results from the previous method call. NOTE: this field is not yet implemented", + "location": "query", + "type": "string" + } + }, + "path": "v3/uptimeCheckIps", + "response": { + "$ref": "ListUptimeCheckIpsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/monitoring", + "https://www.googleapis.com/auth/monitoring.read" + ] + } + } } }, - "parameters": { - "uploadType": { - "location": "query", - "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", - "type": "string" - }, - "fields": { - "description": "Selector specifying which fields to include in a partial response.", - "type": "string", - "location": "query" - }, - "callback": { - "location": "query", - "description": "JSONP", - "type": "string" - }, - "$.xgafv": { - "description": "V1 error format.", - "type": "string", - "enumDescriptions": [ - "v1 error format", - "v2 error format" - ], - "location": "query", - "enum": [ - "1", - "2" - ] - }, - "alt": { - "enum": [ - "json", - "media", - "proto" - ], - "type": "string", - "enumDescriptions": [ - "Responses with Content-Type of application/json", - "Media download with context-dependent Content-Type", - "Responses with Content-Type of application/x-protobuf" - ], - "location": "query", - "description": "Data format for response.", - "default": "json" - }, - "key": { - "location": "query", - "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.", - "type": "string" - }, - "access_token": { - "location": "query", - "description": "OAuth access token.", - "type": "string" - }, - "quotaUser": { - "location": "query", - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", - "type": "string" - }, - "pp": { - "location": "query", - "description": "Pretty-print response.", - "type": "boolean", - "default": "true" - }, - "bearer_token": { - "location": "query", - "description": "OAuth bearer token.", - "type": "string" - }, - "oauth_token": { - "description": "OAuth 2.0 token for the current user.", - "type": "string", - "location": "query" - }, - "upload_protocol": { - "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", - "type": "string", - "location": "query" - }, - "prettyPrint": { - "description": "Returns response with indentations and line breaks.", - "type": "boolean", - "default": "true", - "location": "query" - } - }, - "version": "v3", - "baseUrl": "https://monitoring.googleapis.com/", - "servicePath": "", - "description": "Manages your Stackdriver Monitoring data and configurations. Most projects must be associated with a Stackdriver account, with a few exceptions as noted on the individual method pages.", - "kind": "discovery#restDescription", - "basePath": "", - "id": "monitoring:v3", - "documentationLink": "https://cloud.google.com/monitoring/api/", - "revision": "20180116", - "discoveryVersion": "v1", - "version_module": true, + "revision": "20180303", + "rootUrl": "https://monitoring.googleapis.com/", "schemas": { - "CollectdPayloadError": { - "description": "Describes the error status for payloads that were not written.", - "type": "object", + "Aggregation": { + "description": "Describes how to combine multiple time series to provide different views of the data. Aggregation consists of an alignment step on individual time series (alignment_period and per_series_aligner) followed by an optional reduction step of the data across the aligned time series (cross_series_reducer and group_by_fields). For more details, see Aggregation.", + "id": "Aggregation", "properties": { - "index": { - "description": "The zero-based index in CreateCollectdTimeSeriesRequest.collectd_payloads.", - "format": "int32", - "type": "integer" - }, - "error": { - "$ref": "Status", - "description": "Records the error status for the payload. If this field is present, the partial errors for nested values won't be populated." - }, - "valueErrors": { - "description": "Records the error status for values that were not written due to an error.Failed payloads for which nothing is written will not include partial value errors.", - "type": "array", - "items": { - "$ref": "CollectdValueError" - } - } - }, - "id": "CollectdPayloadError" - }, - "MonitoredResourceDescriptor": { - "description": "An object that describes the schema of a MonitoredResource object using a type name and a set of labels. For example, the monitored resource descriptor for Google Compute Engine VM instances has a type of \"gce_instance\" and specifies the use of the labels \"instance_id\" and \"zone\" to identify particular VM instances.Different APIs can support different monitored resource types. APIs generally provide a list method that returns the monitored resource descriptors used by the API.", - "type": "object", - "properties": { - "labels": { - "description": "Required. A set of labels used to describe instances of this monitored resource type. For example, an individual Google Cloud SQL database is identified by values for the labels \"database_id\" and \"zone\".", - "type": "array", - "items": { - "$ref": "LabelDescriptor" - } - }, - "name": { - "description": "Optional. The resource name of the monitored resource descriptor: \"projects/{project_id}/monitoredResourceDescriptors/{type}\" where {type} is the value of the type field in this object and {project_id} is a project ID that provides API-specific context for accessing the type. APIs that do not use project information can use the resource name format \"monitoredResourceDescriptors/{type}\".", + "alignmentPeriod": { + "description": "The alignment period for per-time series alignment. If present, alignmentPeriod must be at least 60 seconds. After per-time series alignment, each time series will contain data points only on the period boundaries. If perSeriesAligner is not specified or equals ALIGN_NONE, then this field is ignored. If perSeriesAligner is specified and does not equal ALIGN_NONE, then this field must be defined; otherwise an error is returned.", + "format": "google-duration", "type": "string" }, - "displayName": { - "description": "Optional. A concise name for the monitored resource type that might be displayed in user interfaces. It should be a Title Cased Noun Phrase, without any article or other determiners. For example, \"Google Cloud SQL Database\".", - "type": "string" - }, - "description": { - "description": "Optional. A detailed description of the monitored resource type that might be used in documentation.", - "type": "string" - }, - "type": { - "description": "Required. The monitored resource type. For example, the type \"cloudsql_database\" represents databases in Google Cloud SQL. The maximum length of this value is 256 characters.", - "type": "string" - } - }, - "id": "MonitoredResourceDescriptor" - }, - "ResourceGroup": { - "description": "The resource submessage for group checks. It can be used instead of a monitored resource, when multiple resources are being monitored.", - "type": "object", - "properties": { - "groupId": { - "description": "The group of resources being monitored. Should be only the group_id, not projects/\u003cproject_id\u003e/groups/\u003cgroup_id\u003e.", - "type": "string" - }, - "resourceType": { + "crossSeriesReducer": { + "description": "The approach to be used to combine time series. Not all reducer functions may be applied to all time series, depending on the metric type and the value type of the original time series. Reduction may change the metric type of value type of the time series.Time series data must be aligned in order to perform cross-time series reduction. If crossSeriesReducer is specified, then perSeriesAligner must be specified and not equal ALIGN_NONE and alignmentPeriod must be specified; otherwise, an error is returned.", "enum": [ - "RESOURCE_TYPE_UNSPECIFIED", - "INSTANCE", - "AWS_ELB_LOAD_BALANCER" + "REDUCE_NONE", + "REDUCE_MEAN", + "REDUCE_MIN", + "REDUCE_MAX", + "REDUCE_SUM", + "REDUCE_STDDEV", + "REDUCE_COUNT", + "REDUCE_COUNT_TRUE", + "REDUCE_COUNT_FALSE", + "REDUCE_FRACTION_TRUE", + "REDUCE_PERCENTILE_99", + "REDUCE_PERCENTILE_95", + "REDUCE_PERCENTILE_50", + "REDUCE_PERCENTILE_05" ], - "description": "The resource type of the group members.", - "type": "string", "enumDescriptions": [ - "Default value (not valid).", - "A group of instances from Google Cloud Platform (GCP) or Amazon Web Services (AWS).", - "A group of AWS load balancers." - ] - } - }, - "id": "ResourceGroup" - }, - "TypedValue": { - "description": "A single strongly-typed value.", - "type": "object", - "properties": { - "doubleValue": { - "description": "A 64-bit double-precision floating-point number. Its magnitude is approximately ±10\u003csup\u003e±300\u003c/sup\u003e and it has 16 significant digits of precision.", - "format": "double", - "type": "number" - }, - "int64Value": { - "description": "A 64-bit integer. Its range is approximately ±9.2x10\u003csup\u003e18\u003c/sup\u003e.", - "format": "int64", + "No cross-time series reduction. The output of the aligner is returned.", + "Reduce by computing the mean across time series for each alignment period. This reducer is valid for delta and gauge metrics with numeric or distribution values. The value type of the output is DOUBLE.", + "Reduce by computing the minimum across time series for each alignment period. This reducer is valid for delta and gauge metrics with numeric values. The value type of the output is the same as the value type of the input.", + "Reduce by computing the maximum across time series for each alignment period. This reducer is valid for delta and gauge metrics with numeric values. The value type of the output is the same as the value type of the input.", + "Reduce by computing the sum across time series for each alignment period. This reducer is valid for delta and gauge metrics with numeric and distribution values. The value type of the output is the same as the value type of the input.", + "Reduce by computing the standard deviation across time series for each alignment period. This reducer is valid for delta and gauge metrics with numeric or distribution values. The value type of the output is DOUBLE.", + "Reduce by computing the count of data points across time series for each alignment period. This reducer is valid for delta and gauge metrics of numeric, Boolean, distribution, and string value type. The value type of the output is INT64.", + "Reduce by computing the count of True-valued data points across time series for each alignment period. This reducer is valid for delta and gauge metrics of Boolean value type. The value type of the output is INT64.", + "Reduce by computing the count of False-valued data points across time series for each alignment period. This reducer is valid for delta and gauge metrics of Boolean value type. The value type of the output is INT64.", + "Reduce by computing the fraction of True-valued data points across time series for each alignment period. This reducer is valid for delta and gauge metrics of Boolean value type. The output value is in the range 0, 1 and has value type DOUBLE.", + "Reduce by computing 99th percentile of data points across time series for each alignment period. This reducer is valid for gauge and delta metrics of numeric and distribution type. The value of the output is DOUBLE", + "Reduce by computing 95th percentile of data points across time series for each alignment period. This reducer is valid for gauge and delta metrics of numeric and distribution type. The value of the output is DOUBLE", + "Reduce by computing 50th percentile of data points across time series for each alignment period. This reducer is valid for gauge and delta metrics of numeric and distribution type. The value of the output is DOUBLE", + "Reduce by computing 5th percentile of data points across time series for each alignment period. This reducer is valid for gauge and delta metrics of numeric and distribution type. The value of the output is DOUBLE" + ], "type": "string" }, - "distributionValue": { - "$ref": "Distribution", - "description": "A distribution value." + "groupByFields": { + "description": "The set of fields to preserve when crossSeriesReducer is specified. The groupByFields determine how the time series are partitioned into subsets prior to applying the aggregation function. Each subset contains time series that have the same value for each of the grouping fields. Each individual time series is a member of exactly one subset. The crossSeriesReducer is applied to each subset of time series. It is not possible to reduce across different resource types, so this field implicitly contains resource.type. Fields not specified in groupByFields are aggregated away. If groupByFields is not specified and all the time series have the same resource type, then the time series are aggregated into a single output time series. If crossSeriesReducer is not defined, this field is ignored.", + "items": { + "type": "string" + }, + "type": "array" }, - "boolValue": { - "description": "A Boolean value: true or false.", - "type": "boolean" - }, - "stringValue": { - "description": "A variable-length string value.", - "type": "string" - } - }, - "id": "TypedValue" - }, - "UptimeCheckIp": { - "properties": { - "region": { - "description": "A broad region category in which the IP address is located.", - "type": "string", - "enumDescriptions": [ - "Default value if no region is specified. Will result in uptime checks running from all regions.", - "Allows checks to run from locations within the United States of America.", - "Allows checks to run from locations within the continent of Europe.", - "Allows checks to run from locations within the continent of South America.", - "Allows checks to run from locations within the Asia Pacific area (ex: Singapore)." - ], + "perSeriesAligner": { + "description": "The approach to be used to align individual time series. Not all alignment functions may be applied to all time series, depending on the metric type and value type of the original time series. Alignment may change the metric type or the value type of the time series.Time series data must be aligned in order to perform cross-time series reduction. If crossSeriesReducer is specified, then perSeriesAligner must be specified and not equal ALIGN_NONE and alignmentPeriod must be specified; otherwise, an error is returned.", "enum": [ - "REGION_UNSPECIFIED", - "USA", - "EUROPE", - "SOUTH_AMERICA", - "ASIA_PACIFIC" - ] - }, - "location": { - "description": "A more specific location within the region that typically encodes a particular city/town/metro (and its containing state/province or country) within the broader umbrella region category.", - "type": "string" - }, - "ipAddress": { - "description": "The IP address from which the uptime check originates. This is a full IP address (not an IP address range). Most IP addresses, as of this publication, are in IPv4 format; however, one should not rely on the IP addresses being in IPv4 format indefinitely and should support interpreting this field in either IPv4 or IPv6 format.", + "ALIGN_NONE", + "ALIGN_DELTA", + "ALIGN_RATE", + "ALIGN_INTERPOLATE", + "ALIGN_NEXT_OLDER", + "ALIGN_MIN", + "ALIGN_MAX", + "ALIGN_MEAN", + "ALIGN_COUNT", + "ALIGN_SUM", + "ALIGN_STDDEV", + "ALIGN_COUNT_TRUE", + "ALIGN_COUNT_FALSE", + "ALIGN_FRACTION_TRUE", + "ALIGN_PERCENTILE_99", + "ALIGN_PERCENTILE_95", + "ALIGN_PERCENTILE_50", + "ALIGN_PERCENTILE_05", + "ALIGN_PERCENT_CHANGE" + ], + "enumDescriptions": [ + "No alignment. Raw data is returned. Not valid if cross-time series reduction is requested. The value type of the result is the same as the value type of the input.", + "Align and convert to delta metric type. This alignment is valid for cumulative metrics and delta metrics. Aligning an existing delta metric to a delta metric requires that the alignment period be increased. The value type of the result is the same as the value type of the input.One can think of this aligner as a rate but without time units; that is, the output is conceptually (second_point - first_point).", + "Align and convert to a rate. This alignment is valid for cumulative metrics and delta metrics with numeric values. The output is a gauge metric with value type DOUBLE.One can think of this aligner as conceptually providing the slope of the line that passes through the value at the start and end of the window. In other words, this is conceptually ((y1 - y0)/(t1 - t0)), and the output unit is one that has a \"/time\" dimension.If, by rate, you are looking for percentage change, see the ALIGN_PERCENT_CHANGE aligner option.", + "Align by interpolating between adjacent points around the period boundary. This alignment is valid for gauge metrics with numeric values. The value type of the result is the same as the value type of the input.", + "Align by shifting the oldest data point before the period boundary to the boundary. This alignment is valid for gauge metrics. The value type of the result is the same as the value type of the input.", + "Align time series via aggregation. The resulting data point in the alignment period is the minimum of all data points in the period. This alignment is valid for gauge and delta metrics with numeric values. The value type of the result is the same as the value type of the input.", + "Align time series via aggregation. The resulting data point in the alignment period is the maximum of all data points in the period. This alignment is valid for gauge and delta metrics with numeric values. The value type of the result is the same as the value type of the input.", + "Align time series via aggregation. The resulting data point in the alignment period is the average or arithmetic mean of all data points in the period. This alignment is valid for gauge and delta metrics with numeric values. The value type of the output is DOUBLE.", + "Align time series via aggregation. The resulting data point in the alignment period is the count of all data points in the period. This alignment is valid for gauge and delta metrics with numeric or Boolean values. The value type of the output is INT64.", + "Align time series via aggregation. The resulting data point in the alignment period is the sum of all data points in the period. This alignment is valid for gauge and delta metrics with numeric and distribution values. The value type of the output is the same as the value type of the input.", + "Align time series via aggregation. The resulting data point in the alignment period is the standard deviation of all data points in the period. This alignment is valid for gauge and delta metrics with numeric values. The value type of the output is DOUBLE.", + "Align time series via aggregation. The resulting data point in the alignment period is the count of True-valued data points in the period. This alignment is valid for gauge metrics with Boolean values. The value type of the output is INT64.", + "Align time series via aggregation. The resulting data point in the alignment period is the count of False-valued data points in the period. This alignment is valid for gauge metrics with Boolean values. The value type of the output is INT64.", + "Align time series via aggregation. The resulting data point in the alignment period is the fraction of True-valued data points in the period. This alignment is valid for gauge metrics with Boolean values. The output value is in the range 0, 1 and has value type DOUBLE.", + "Align time series via aggregation. The resulting data point in the alignment period is the 99th percentile of all data points in the period. This alignment is valid for gauge and delta metrics with distribution values. The output is a gauge metric with value type DOUBLE.", + "Align time series via aggregation. The resulting data point in the alignment period is the 95th percentile of all data points in the period. This alignment is valid for gauge and delta metrics with distribution values. The output is a gauge metric with value type DOUBLE.", + "Align time series via aggregation. The resulting data point in the alignment period is the 50th percentile of all data points in the period. This alignment is valid for gauge and delta metrics with distribution values. The output is a gauge metric with value type DOUBLE.", + "Align time series via aggregation. The resulting data point in the alignment period is the 5th percentile of all data points in the period. This alignment is valid for gauge and delta metrics with distribution values. The output is a gauge metric with value type DOUBLE.", + "Align and convert to a percentage change. This alignment is valid for gauge and delta metrics with numeric values. This alignment conceptually computes the equivalent of \"((current - previous)/previous)*100\" where previous value is determined based on the alignmentPeriod. In the event that previous is 0 the calculated value is infinity with the exception that if both (current - previous) and previous are 0 the calculated value is 0. A 10 minute moving mean is computed at each point of the time window prior to the above calculation to smooth the metric and prevent false positives from very short lived spikes. Only applicable for data that is \u003e= 0. Any values \u003c 0 are treated as no data. While delta metrics are accepted by this alignment special care should be taken that the values for the metric will always be positive. The output is a gauge metric with value type DOUBLE." + ], "type": "string" } }, - "id": "UptimeCheckIp", - "description": "Contains the region, location, and list of IP addresses where checkers in the location run from.", "type": "object" }, - "CollectdValueError": { - "description": "Describes the error status for values that were not written.", - "type": "object", + "AlertPolicy": { + "description": "A description of the conditions under which some aspect of your system is considered to be \"unhealthy\" and the ways to notify people or services about this state. For an overview of alert policies, see Introduction to Alerting.", + "id": "AlertPolicy", "properties": { - "index": { - "description": "The zero-based index in CollectdPayload.values within the parent CreateCollectdTimeSeriesRequest.collectd_payloads.", - "format": "int32", - "type": "integer" + "combiner": { + "description": "How to combine the results of multiple conditions to determine if an incident should be opened.", + "enum": [ + "COMBINE_UNSPECIFIED", + "AND", + "OR", + "AND_WITH_MATCHING_RESOURCE" + ], + "enumDescriptions": [ + "An unspecified combiner.", + "Combine conditions using the logical AND operator. An incident is created only if all conditions are met simultaneously. This combiner is satisfied if all conditions are met, even if they are met on completely different resources.", + "Combine conditions using the logical OR operator. An incident is created if any of the listed conditions is met.", + "Combine conditions using logical AND operator, but unlike the regular AND option, an incident is created only if all conditions are met simultaneously on at least one resource." + ], + "type": "string" }, - "error": { - "description": "Records the error status for the value.", - "$ref": "Status" + "conditions": { + "description": "A list of conditions for the policy. The conditions are combined by AND or OR according to the combiner field. If the combined conditions evaluate to true, then an incident is created. A policy can have from one to six conditions.", + "items": { + "$ref": "Condition" + }, + "type": "array" + }, + "creationRecord": { + "$ref": "MutationRecord", + "description": "A read-only record of the creation of the alerting policy. If provided in a call to create or update, this field will be ignored." + }, + "displayName": { + "description": "A short name or phrase used to identify the policy in dashboards, notifications, and incidents. To avoid confusion, don't use the same display name for multiple policies in the same project. The name is limited to 512 Unicode characters.", + "type": "string" + }, + "documentation": { + "$ref": "Documentation", + "description": "Documentation that is included with notifications and incidents related to this policy. Best practice is for the documentation to include information to help responders understand, mitigate, escalate, and correct the underlying problems detected by the alerting policy. Notification channels that have limited capacity might not show this documentation." + }, + "enabled": { + "description": "Whether or not the policy is enabled. On write, the default interpretation if unset is that the policy is enabled. On read, clients should not make any assumption about the state if it has not been populated. The field should always be populated on List and Get operations, unless a field projection has been specified that strips it out.", + "type": "boolean" + }, + "mutationRecord": { + "$ref": "MutationRecord", + "description": "A read-only record of the most recent change to the alerting policy. If provided in a call to create or update, this field will be ignored." + }, + "name": { + "description": "Required if the policy exists. The resource name for this policy. The syntax is:\nprojects/[PROJECT_ID]/alertPolicies/[ALERT_POLICY_ID]\n[ALERT_POLICY_ID] is assigned by Stackdriver Monitoring when the policy is created. When calling the alertPolicies.create method, do not include the name field in the alerting policy passed as part of the request.", + "type": "string" + }, + "notificationChannels": { + "description": "Identifies the notification channels to which notifications should be sent when incidents are opened or closed or when new violations occur on an already opened incident. Each element of this array corresponds to the name field in each of the NotificationChannel objects that are returned from the ListNotificationChannels method. The syntax of the entries in this field is:\nprojects/[PROJECT_ID]/notificationChannels/[CHANNEL_ID]\n", + "items": { + "type": "string" + }, + "type": "array" + }, + "userLabels": { + "additionalProperties": { + "type": "string" + }, + "description": "User-supplied key/value data to be used for organizing and identifying the AlertPolicy objects.The field can contain up to 64 entries. Each key and value is limited to 63 Unicode characters or 128 bytes, whichever is smaller. Labels and values can contain only lowercase letters, numerals, underscores, and dashes. Keys must begin with a letter.", + "type": "object" } }, - "id": "CollectdValueError" + "type": "object" + }, + "BasicAuthentication": { + "description": "A type of authentication to perform against the specified resource or URL that uses username and password. Currently, only Basic authentication is supported in Uptime Monitoring.", + "id": "BasicAuthentication", + "properties": { + "password": { + "description": "The password to authenticate.", + "type": "string" + }, + "username": { + "description": "The username to authenticate.", + "type": "string" + } + }, + "type": "object" + }, + "BucketOptions": { + "description": "BucketOptions describes the bucket boundaries used to create a histogram for the distribution. The buckets can be in a linear sequence, an exponential sequence, or each bucket can be specified explicitly. BucketOptions does not include the number of values in each bucket.A bucket has an inclusive lower bound and exclusive upper bound for the values that are counted for that bucket. The upper bound of a bucket must be strictly greater than the lower bound. The sequence of N buckets for a distribution consists of an underflow bucket (number 0), zero or more finite buckets (number 1 through N - 2) and an overflow bucket (number N - 1). The buckets are contiguous: the lower bound of bucket i (i \u003e 0) is the same as the upper bound of bucket i - 1. The buckets span the whole range of finite values: lower bound of the underflow bucket is -infinity and the upper bound of the overflow bucket is +infinity. The finite buckets are so-called because both bounds are finite.", + "id": "BucketOptions", + "properties": { + "explicitBuckets": { + "$ref": "Explicit", + "description": "The explicit buckets." + }, + "exponentialBuckets": { + "$ref": "Exponential", + "description": "The exponential buckets." + }, + "linearBuckets": { + "$ref": "Linear", + "description": "The linear bucket." + } + }, + "type": "object" }, "CollectdPayload": { + "description": "A collection of data points sent from a collectd-based plugin. See the collectd documentation for more information.", + "id": "CollectdPayload", "properties": { + "endTime": { + "description": "The end time of the interval.", + "format": "google-datetime", + "type": "string" + }, "metadata": { "additionalProperties": { "$ref": "TypedValue" @@ -1108,10 +1685,6 @@ "description": "The measurement metadata. Example: \"process_id\" -\u003e 12345", "type": "object" }, - "type": { - "description": "The measurement type. Example: \"memory\".", - "type": "string" - }, "plugin": { "description": "The name of the plugin. Example: \"disk\".", "type": "string" @@ -1120,277 +1693,332 @@ "description": "The instance name of the plugin Example: \"hdcl\".", "type": "string" }, - "endTime": { - "description": "The end time of the interval.", - "format": "google-datetime", - "type": "string" - }, "startTime": { "description": "The start time of the interval.", "format": "google-datetime", "type": "string" }, - "values": { - "description": "The measured values during this time interval. Each value must have a different dataSourceName.", - "type": "array", - "items": { - "$ref": "CollectdValue" - } + "type": { + "description": "The measurement type. Example: \"memory\".", + "type": "string" }, "typeInstance": { "description": "The measurement type instance. Example: \"used\".", "type": "string" - } - }, - "id": "CollectdPayload", - "description": "A collection of data points sent from a collectd-based plugin. See the collectd documentation for more information.", - "type": "object" - }, - "CreateCollectdTimeSeriesResponse": { - "properties": { - "payloadErrors": { - "description": "Records the error status for points that were not written due to an error.Failed requests for which nothing is written will return an error response instead.", - "type": "array", + }, + "values": { + "description": "The measured values during this time interval. Each value must have a different dataSourceName.", "items": { - "$ref": "CollectdPayloadError" - } + "$ref": "CollectdValue" + }, + "type": "array" } }, - "id": "CreateCollectdTimeSeriesResponse", - "description": "The CreateCollectdTimeSeries response.", "type": "object" }, - "Linear": { - "description": "Specifies a linear sequence of buckets that all have the same width (except overflow and underflow). Each bucket represents a constant absolute uncertainty on the specific value in the bucket.There are num_finite_buckets + 2 (= N) buckets. Bucket i has the following boundaries:Upper bound (0 \u003c= i \u003c N-1): offset + (width * i). Lower bound (1 \u003c= i \u003c N): offset + (width * (i - 1)).", - "type": "object", + "CollectdPayloadError": { + "description": "Describes the error status for payloads that were not written.", + "id": "CollectdPayloadError", "properties": { - "width": { - "description": "Must be greater than 0.", - "format": "double", - "type": "number" + "error": { + "$ref": "Status", + "description": "Records the error status for the payload. If this field is present, the partial errors for nested values won't be populated." }, - "offset": { - "description": "Lower bound of the first bucket.", - "format": "double", - "type": "number" + "index": { + "description": "The zero-based index in CreateCollectdTimeSeriesRequest.collectd_payloads.", + "format": "int32", + "type": "integer" }, - "numFiniteBuckets": { - "description": "Must be greater than 0.", + "valueErrors": { + "description": "Records the error status for values that were not written due to an error.Failed payloads for which nothing is written will not include partial value errors.", + "items": { + "$ref": "CollectdValueError" + }, + "type": "array" + } + }, + "type": "object" + }, + "CollectdValue": { + "description": "A single data point from a collectd-based plugin.", + "id": "CollectdValue", + "properties": { + "dataSourceName": { + "description": "The data source for the collectd value. For example there are two data sources for network measurements: \"rx\" and \"tx\".", + "type": "string" + }, + "dataSourceType": { + "description": "The type of measurement.", + "enum": [ + "UNSPECIFIED_DATA_SOURCE_TYPE", + "GAUGE", + "COUNTER", + "DERIVE", + "ABSOLUTE" + ], + "enumDescriptions": [ + "An unspecified data source type. This corresponds to google.api.MetricDescriptor.MetricKind.METRIC_KIND_UNSPECIFIED.", + "An instantaneous measurement of a varying quantity. This corresponds to google.api.MetricDescriptor.MetricKind.GAUGE.", + "A cumulative value over time. This corresponds to google.api.MetricDescriptor.MetricKind.CUMULATIVE.", + "A rate of change of the measurement.", + "An amount of change since the last measurement interval. This corresponds to google.api.MetricDescriptor.MetricKind.DELTA." + ], + "type": "string" + }, + "value": { + "$ref": "TypedValue", + "description": "The measurement value." + } + }, + "type": "object" + }, + "CollectdValueError": { + "description": "Describes the error status for values that were not written.", + "id": "CollectdValueError", + "properties": { + "error": { + "$ref": "Status", + "description": "Records the error status for the value." + }, + "index": { + "description": "The zero-based index in CollectdPayload.values within the parent CreateCollectdTimeSeriesRequest.collectd_payloads.", "format": "int32", "type": "integer" } }, - "id": "Linear" + "type": "object" }, - "Option": { - "description": "A protocol buffer option, which can be attached to a message, field, enumeration, etc.", - "type": "object", + "Condition": { + "description": "A condition is a true/false test that determines when an alerting policy should open an incident. If a condition evaluates to true, it signifies that something is wrong.", + "id": "Condition", "properties": { - "name": { - "description": "The option's name. For protobuf built-in options (options defined in descriptor.proto), this is the short name. For example, \"map_entry\". For custom options, it should be the fully-qualified name. For example, \"google.api.http\".", + "conditionAbsent": { + "$ref": "MetricAbsence", + "description": "A condition that checks that a time series continues to receive new data points." + }, + "conditionThreshold": { + "$ref": "MetricThreshold", + "description": "A condition that compares a time series against a threshold." + }, + "displayName": { + "description": "A short name or phrase used to identify the condition in dashboards, notifications, and incidents. To avoid confusion, don't use the same display name for multiple conditions in the same policy.", "type": "string" }, - "value": { - "description": "The option's value packed in an Any message. If the value is a primitive, the corresponding wrapper type defined in google/protobuf/wrappers.proto should be used. If the value is an enum, it should be stored as an int32 value using the google.protobuf.Int32Value type.", - "type": "object", - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - } - } - }, - "id": "Option" - }, - "ContentMatcher": { - "properties": { - "content": { - "description": "String content to match", + "name": { + "description": "Required if the condition exists. The unique resource name for this condition. Its syntax is:\nprojects/[PROJECT_ID]/alertPolicies/[POLICY_ID]/conditions/[CONDITION_ID]\n[CONDITION_ID] is assigned by Stackdriver Monitoring when the condition is created as part of a new or updated alerting policy.When calling the alertPolicies.create method, do not include the name field in the conditions of the requested alerting policy. Stackdriver Monitoring creates the condition identifiers and includes them in the new policy.When calling the alertPolicies.update method to update a policy, including a condition name causes the existing condition to be updated. Conditions without names are added to the updated policy. Existing conditions are deleted if they are not updated.Best practice is to preserve [CONDITION_ID] if you make only small changes, such as those to condition thresholds, durations, or trigger values. Otherwise, treat the change as a new condition and let the existing condition be deleted.", "type": "string" } }, - "id": "ContentMatcher", + "type": "object" + }, + "ContentMatcher": { "description": "Used to perform string matching. Currently, this matches on the exact content. In the future, it can be expanded to allow for regular expressions and more complex matching.", + "id": "ContentMatcher", + "properties": { + "content": { + "description": "String content to match (max 1024 bytes)", + "type": "string" + } + }, + "type": "object" + }, + "CreateCollectdTimeSeriesRequest": { + "description": "The CreateCollectdTimeSeries request.", + "id": "CreateCollectdTimeSeriesRequest", + "properties": { + "collectdPayloads": { + "description": "The collectd payloads representing the time series data. You must not include more than a single point for each time series, so no two payloads can have the same values for all of the fields plugin, plugin_instance, type, and type_instance.", + "items": { + "$ref": "CollectdPayload" + }, + "type": "array" + }, + "collectdVersion": { + "description": "The version of collectd that collected the data. Example: \"5.3.0-192.el6\".", + "type": "string" + }, + "resource": { + "$ref": "MonitoredResource", + "description": "The monitored resource associated with the time series." + } + }, + "type": "object" + }, + "CreateCollectdTimeSeriesResponse": { + "description": "The CreateCollectdTimeSeries response.", + "id": "CreateCollectdTimeSeriesResponse", + "properties": { + "payloadErrors": { + "description": "Records the error status for points that were not written due to an error.Failed requests for which nothing is written will return an error response instead.", + "items": { + "$ref": "CollectdPayloadError" + }, + "type": "array" + } + }, + "type": "object" + }, + "CreateTimeSeriesRequest": { + "description": "The CreateTimeSeries request.", + "id": "CreateTimeSeriesRequest", + "properties": { + "timeSeries": { + "description": "The new data to be added to a list of time series. Adds at most one data point to each of several time series. The new data point must be more recent than any other point in its time series. Each TimeSeries value must fully specify a unique time series by supplying all label values for the metric and the monitored resource.", + "items": { + "$ref": "TimeSeries" + }, + "type": "array" + } + }, + "type": "object" + }, + "Distribution": { + "description": "Distribution contains summary statistics for a population of values. It optionally contains a histogram representing the distribution of those values across a set of buckets.The summary statistics are the count, mean, sum of the squared deviation from the mean, the minimum, and the maximum of the set of population of values. The histogram is based on a sequence of buckets and gives a count of values that fall into each bucket. The boundaries of the buckets are given either explicitly or by formulas for buckets of fixed or exponentially increasing widths.Although it is not forbidden, it is generally a bad idea to include non-finite values (infinities or NaNs) in the population of values, as this will render the mean and sum_of_squared_deviation fields meaningless.", + "id": "Distribution", + "properties": { + "bucketCounts": { + "description": "Required in the Stackdriver Monitoring API v3. The values for each bucket specified in bucket_options. The sum of the values in bucketCounts must equal the value in the count field of the Distribution object. The order of the bucket counts follows the numbering schemes described for the three bucket types. The underflow bucket has number 0; the finite buckets, if any, have numbers 1 through N-2; and the overflow bucket has number N-1. The size of bucket_counts must not be greater than N. If the size is less than N, then the remaining buckets are assigned values of zero.", + "items": { + "format": "int64", + "type": "string" + }, + "type": "array" + }, + "bucketOptions": { + "$ref": "BucketOptions", + "description": "Required in the Stackdriver Monitoring API v3. Defines the histogram bucket boundaries." + }, + "count": { + "description": "The number of values in the population. Must be non-negative. This value must equal the sum of the values in bucket_counts if a histogram is provided.", + "format": "int64", + "type": "string" + }, + "mean": { + "description": "The arithmetic mean of the values in the population. If count is zero then this field must be zero.", + "format": "double", + "type": "number" + }, + "range": { + "$ref": "Range", + "description": "If specified, contains the range of the population values. The field must not be present if the count is zero. This field is presently ignored by the Stackdriver Monitoring API v3." + }, + "sumOfSquaredDeviation": { + "description": "The sum of squared deviations from the mean of the values in the population. For values x_i this is:\nSum[i=1..n]((x_i - mean)^2)\nKnuth, \"The Art of Computer Programming\", Vol. 2, page 323, 3rd edition describes Welford's method for accumulating this sum in one pass.If count is zero then this field must be zero.", + "format": "double", + "type": "number" + } + }, + "type": "object" + }, + "Documentation": { + "description": "A content string and a MIME type that describes the content string's format.", + "id": "Documentation", + "properties": { + "content": { + "description": "The text of the documentation, interpreted according to mime_type. The content may not exceed 8,192 Unicode characters and may not exceed more than 10,240 bytes when encoded in UTF-8 format, whichever is smaller.", + "type": "string" + }, + "mimeType": { + "description": "The format of the content field. Presently, only the value \"text/markdown\" is supported. See Markdown (https://en.wikipedia.org/wiki/Markdown) for more information.", + "type": "string" + } + }, "type": "object" }, "Empty": { "description": "A generic empty message that you can re-use to avoid defining duplicated empty messages in your APIs. A typical example is to use it as the request or the response type of an API method. For instance:\nservice Foo {\n rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty);\n}\nThe JSON representation for Empty is empty JSON object {}.", - "type": "object", + "id": "Empty", "properties": {}, - "id": "Empty" - }, - "InternalChecker": { - "description": "Nimbus InternalCheckers.", - "type": "object", - "properties": { - "displayName": { - "description": "The checker's human-readable name.", - "type": "string" - }, - "projectId": { - "description": "The GCP project ID. Not necessarily the same as the project_id for the config.", - "type": "string" - }, - "checkerId": { - "description": "The checker ID.", - "type": "string" - }, - "gcpZone": { - "description": "The GCP zone the uptime check should egress from. Only respected for internal uptime checks, where internal_network is specified.", - "type": "string" - }, - "network": { - "description": "The internal network to perform this uptime check on.", - "type": "string" - } - }, - "id": "InternalChecker" - }, - "TcpCheck": { - "properties": { - "port": { - "description": "The port to the page to run the check against. Will be combined with host (specified within the MonitoredResource) to construct the full URL. Required.", - "format": "int32", - "type": "integer" - } - }, - "id": "TcpCheck", - "description": "Information required for a TCP uptime check request.", "type": "object" }, "Explicit": { "description": "Specifies a set of buckets with arbitrary widths.There are size(bounds) + 1 (= N) buckets. Bucket i has the following boundaries:Upper bound (0 \u003c= i \u003c N-1): boundsi Lower bound (1 \u003c= i \u003c N); boundsi - 1The bounds field must contain at least one element. If bounds has only one element, then there are no finite buckets, and that single element is the common boundary of the overflow and underflow buckets.", - "type": "object", + "id": "Explicit", "properties": { "bounds": { "description": "The values must be monotonically increasing.", - "type": "array", "items": { "format": "double", "type": "number" - } + }, + "type": "array" } }, - "id": "Explicit" - }, - "TimeInterval": { - "description": "A time interval extending just after a start time through an end time. If the start time is the same as the end time, then the interval represents a single point in time.", - "type": "object", - "properties": { - "startTime": { - "description": "Optional. The beginning of the time interval. The default value for the start time is the end time. The start time must not be later than the end time.", - "format": "google-datetime", - "type": "string" - }, - "endTime": { - "description": "Required. The end of the time interval.", - "format": "google-datetime", - "type": "string" - } - }, - "id": "TimeInterval" - }, - "ListUptimeCheckIpsResponse": { - "description": "The protocol for the ListUptimeCheckIps response.", - "type": "object", - "properties": { - "uptimeCheckIps": { - "description": "The returned list of IP addresses (including region and location) that the checkers run from.", - "type": "array", - "items": { - "$ref": "UptimeCheckIp" - } - }, - "nextPageToken": { - "description": "This field represents the pagination token to retrieve the next page of results. If the value is empty, it means no further results for the request. To retrieve the next page of results, the value of the next_page_token is passed to the subsequent List method call (in the request message's page_token field). NOTE: this field is not yet implemented", - "type": "string" - } - }, - "id": "ListUptimeCheckIpsResponse" + "type": "object" }, "Exponential": { "description": "Specifies an exponential sequence of buckets that have a width that is proportional to the value of the lower bound. Each bucket represents a constant relative uncertainty on a specific value in the bucket.There are num_finite_buckets + 2 (= N) buckets. Bucket i has the following boundaries:Upper bound (0 \u003c= i \u003c N-1): scale * (growth_factor ^ i). Lower bound (1 \u003c= i \u003c N): scale * (growth_factor ^ (i - 1)).", - "type": "object", + "id": "Exponential", "properties": { - "numFiniteBuckets": { - "description": "Must be greater than 0.", - "format": "int32", - "type": "integer" - }, "growthFactor": { "description": "Must be greater than 1.", "format": "double", "type": "number" }, + "numFiniteBuckets": { + "description": "Must be greater than 0.", + "format": "int32", + "type": "integer" + }, "scale": { "description": "Must be greater than 0.", "format": "double", "type": "number" } }, - "id": "Exponential" - }, - "Point": { - "description": "A single data point in a time series.", - "type": "object", - "properties": { - "value": { - "description": "The value of the data point.", - "$ref": "TypedValue" - }, - "interval": { - "description": "The time interval to which the data point applies. For GAUGE metrics, only the end time of the interval is used. For DELTA metrics, the start and end time should specify a non-zero interval, with subsequent points specifying contiguous and non-overlapping intervals. For CUMULATIVE metrics, the start and end time should specify a non-zero interval, with subsequent points specifying the same start time and increasing end times, until an event resets the cumulative value to zero and sets a new start time for the following points.", - "$ref": "TimeInterval" - } - }, - "id": "Point" - }, - "Metric": { - "properties": { - "type": { - "description": "An existing metric type, see google.api.MetricDescriptor. For example, custom.googleapis.com/invoice/paid/amount.", - "type": "string" - }, - "labels": { - "additionalProperties": { - "type": "string" - }, - "description": "The set of label values that uniquely identify this metric. All labels listed in the MetricDescriptor must be assigned values.", - "type": "object" - } - }, - "id": "Metric", - "description": "A specific metric, identified by specifying values for all of the labels of a MetricDescriptor.", "type": "object" }, - "ListUptimeCheckConfigsResponse": { - "description": "The protocol for the ListUptimeCheckConfigs response.", - "type": "object", - "properties": { - "nextPageToken": { - "description": "This field represents the pagination token to retrieve the next page of results. If the value is empty, it means no further results for the request. To retrieve the next page of results, the value of the next_page_token is passed to the subsequent List method call (in the request message's page_token field).", - "type": "string" - }, - "uptimeCheckConfigs": { - "description": "The returned uptime check configurations.", - "type": "array", - "items": { - "$ref": "UptimeCheckConfig" - } - } - }, - "id": "ListUptimeCheckConfigsResponse" - }, "Field": { "description": "A single field of a message type.", - "type": "object", + "id": "Field", "properties": { + "cardinality": { + "description": "The field cardinality.", + "enum": [ + "CARDINALITY_UNKNOWN", + "CARDINALITY_OPTIONAL", + "CARDINALITY_REQUIRED", + "CARDINALITY_REPEATED" + ], + "enumDescriptions": [ + "For fields with unknown cardinality.", + "For optional fields.", + "For required fields. Proto2 syntax only.", + "For repeated fields." + ], + "type": "string" + }, + "defaultValue": { + "description": "The string value of the default value of this field. Proto2 syntax only.", + "type": "string" + }, "jsonName": { "description": "The field JSON name.", "type": "string" }, "kind": { "description": "The field type.", - "type": "string", + "enum": [ + "TYPE_UNKNOWN", + "TYPE_DOUBLE", + "TYPE_FLOAT", + "TYPE_INT64", + "TYPE_UINT64", + "TYPE_INT32", + "TYPE_FIXED64", + "TYPE_FIXED32", + "TYPE_BOOL", + "TYPE_STRING", + "TYPE_GROUP", + "TYPE_MESSAGE", + "TYPE_BYTES", + "TYPE_UINT32", + "TYPE_ENUM", + "TYPE_SFIXED32", + "TYPE_SFIXED64", + "TYPE_SINT32", + "TYPE_SINT64" + ], "enumDescriptions": [ "Field type unknown.", "Field type double.", @@ -1412,143 +2040,84 @@ "Field type sint32.", "Field type sint64." ], - "enum": [ - "TYPE_UNKNOWN", - "TYPE_DOUBLE", - "TYPE_FLOAT", - "TYPE_INT64", - "TYPE_UINT64", - "TYPE_INT32", - "TYPE_FIXED64", - "TYPE_FIXED32", - "TYPE_BOOL", - "TYPE_STRING", - "TYPE_GROUP", - "TYPE_MESSAGE", - "TYPE_BYTES", - "TYPE_UINT32", - "TYPE_ENUM", - "TYPE_SFIXED32", - "TYPE_SFIXED64", - "TYPE_SINT32", - "TYPE_SINT64" - ] - }, - "options": { - "description": "The protocol buffer options.", - "type": "array", - "items": { - "$ref": "Option" - } - }, - "oneofIndex": { - "description": "The index of the field type in Type.oneofs, for message or enumeration types. The first type has index 1; zero means the type is not in the list.", - "format": "int32", - "type": "integer" - }, - "cardinality": { - "enum": [ - "CARDINALITY_UNKNOWN", - "CARDINALITY_OPTIONAL", - "CARDINALITY_REQUIRED", - "CARDINALITY_REPEATED" - ], - "description": "The field cardinality.", - "type": "string", - "enumDescriptions": [ - "For fields with unknown cardinality.", - "For optional fields.", - "For required fields. Proto2 syntax only.", - "For repeated fields." - ] - }, - "packed": { - "description": "Whether to use alternative packed wire representation.", - "type": "boolean" - }, - "defaultValue": { - "description": "The string value of the default value of this field. Proto2 syntax only.", "type": "string" }, "name": { "description": "The field name.", "type": "string" }, - "typeUrl": { - "description": "The field type URL, without the scheme, for message or enumeration types. Example: \"type.googleapis.com/google.protobuf.Timestamp\".", - "type": "string" - }, "number": { "description": "The field number.", "format": "int32", "type": "integer" - } - }, - "id": "Field" - }, - "LabelDescriptor": { - "description": "A description of a label.", - "type": "object", - "properties": { - "valueType": { - "enum": [ - "STRING", - "BOOL", - "INT64" - ], - "description": "The type of data that can be assigned to the label.", - "type": "string", - "enumDescriptions": [ - "A variable-length string. This is the default.", - "Boolean; true or false.", - "A 64-bit signed integer." - ] }, - "key": { - "description": "The label key.", - "type": "string" + "oneofIndex": { + "description": "The index of the field type in Type.oneofs, for message or enumeration types. The first type has index 1; zero means the type is not in the list.", + "format": "int32", + "type": "integer" }, - "description": { - "description": "A human-readable description for the label.", - "type": "string" - } - }, - "id": "LabelDescriptor" - }, - "ListTimeSeriesResponse": { - "description": "The ListTimeSeries response.", - "type": "object", - "properties": { - "timeSeries": { - "description": "One or more time series that match the filter included in the request.", - "type": "array", + "options": { + "description": "The protocol buffer options.", "items": { - "$ref": "TimeSeries" - } + "$ref": "Option" + }, + "type": "array" }, - "nextPageToken": { - "description": "If there are more results than have been returned, then this field is set to a non-empty value. To see the additional results, use that value as pageToken in the next call to this method.", + "packed": { + "description": "Whether to use alternative packed wire representation.", + "type": "boolean" + }, + "typeUrl": { + "description": "The field type URL, without the scheme, for message or enumeration types. Example: \"type.googleapis.com/google.protobuf.Timestamp\".", "type": "string" } }, - "id": "ListTimeSeriesResponse" + "type": "object" + }, + "GetNotificationChannelVerificationCodeRequest": { + "description": "The GetNotificationChannelVerificationCode request.", + "id": "GetNotificationChannelVerificationCodeRequest", + "properties": { + "expireTime": { + "description": "The desired expiration time. If specified, the API will guarantee that the returned code will not be valid after the specified timestamp; however, the API cannot guarantee that the returned code will be valid for at least as long as the requested time (the API puts an upper bound on the amount of time for which a code may be valid). If omitted, a default expiration will be used, which may be less than the max permissible expiration (so specifying an expiration may extend the code's lifetime over omitting an expiration, even though the API does impose an upper limit on the maximum expiration that is permitted).", + "format": "google-datetime", + "type": "string" + } + }, + "type": "object" + }, + "GetNotificationChannelVerificationCodeResponse": { + "description": "The GetNotificationChannelVerificationCode request.", + "id": "GetNotificationChannelVerificationCodeResponse", + "properties": { + "code": { + "description": "The verification code, which may be used to verify other channels that have an equivalent identity (i.e. other channels of the same type with the same fingerprint such as other email channels with the same email address or other sms channels with the same number).", + "type": "string" + }, + "expireTime": { + "description": "The expiration time associated with the code that was returned. If an expiration was provided in the request, this is the minimum of the requested expiration in the request and the max permitted expiration.", + "format": "google-datetime", + "type": "string" + } + }, + "type": "object" }, "Group": { "description": "The description of a dynamic collection of monitored resources. Each group has a filter that is matched against monitored resources and their associated metadata. If a group's filter matches an available monitored resource, then that resource is a member of that group. Groups can contain any number of monitored resources, and each monitored resource can be a member of any number of groups.Groups can be nested in parent-child hierarchies. The parentName field identifies an optional parent for each group. If a group has a parent, then the only monitored resources available to be matched by the group's filter are the resources contained in the parent group. In other words, a group contains the monitored resources that match its filter and the filters of all the group's ancestors. A group without a parent can contain any monitored resource.For example, consider an infrastructure running a set of instances with two user-defined tags: \"environment\" and \"role\". A parent group has a filter, environment=\"production\". A child of that parent group has a filter, role=\"transcoder\". The parent group contains all instances in the production environment, regardless of their roles. The child group contains instances that have the transcoder role and are in the production environment.The monitored resources contained in a group can change at any moment, depending on what resources exist and what filters are associated with the group and its ancestors.", - "type": "object", + "id": "Group", "properties": { "displayName": { "description": "A user-assigned name for this group, used only for display purposes.", "type": "string" }, - "isCluster": { - "description": "If true, the members of this group are considered to be a cluster. The system can perform additional analysis on groups that are clusters.", - "type": "boolean" - }, "filter": { "description": "The filter used to determine which monitored resources belong to this group.", "type": "string" }, + "isCluster": { + "description": "If true, the members of this group are considered to be a cluster. The system can perform additional analysis on groups that are clusters.", + "type": "boolean" + }, "name": { "description": "Output only. The name of this group. The format is \"projects/{project_id_or_number}/groups/{group_id}\". When creating a group, this field is ignored and a new name is created consisting of the project specified in the call to CreateGroup and a unique {group_id} that is generated automatically.", "type": "string" @@ -1558,227 +2127,360 @@ "type": "string" } }, - "id": "Group" - }, - "Type": { - "description": "A protocol buffer message type.", - "type": "object", - "properties": { - "oneofs": { - "description": "The list of types appearing in oneof definitions in this type.", - "type": "array", - "items": { - "type": "string" - } - }, - "sourceContext": { - "$ref": "SourceContext", - "description": "The source context." - }, - "syntax": { - "enum": [ - "SYNTAX_PROTO2", - "SYNTAX_PROTO3" - ], - "description": "The source syntax.", - "type": "string", - "enumDescriptions": [ - "Syntax proto2.", - "Syntax proto3." - ] - }, - "options": { - "description": "The protocol buffer options.", - "type": "array", - "items": { - "$ref": "Option" - } - }, - "fields": { - "description": "The list of fields.", - "type": "array", - "items": { - "$ref": "Field" - } - }, - "name": { - "description": "The fully qualified message name.", - "type": "string" - } - }, - "id": "Type" - }, - "BasicAuthentication": { - "description": "A type of authentication to perform against the specified resource or URL that uses username and password. Currently, only Basic authentication is supported in Uptime Monitoring.", - "type": "object", - "properties": { - "password": { - "description": "The password to authenticate.", - "type": "string" - }, - "username": { - "description": "The username to authenticate.", - "type": "string" - } - }, - "id": "BasicAuthentication" - }, - "MonitoredResourceMetadata": { - "description": "Auxiliary metadata for a MonitoredResource object. MonitoredResource objects contain the minimum set of information to uniquely identify a monitored resource instance. There is some other useful auxiliary metadata. Google Stackdriver Monitoring & Logging uses an ingestion pipeline to extract metadata for cloud resources of all types , and stores the metadata in this message.", - "type": "object", - "properties": { - "userLabels": { - "description": "Output only. A map of user-defined metadata labels.", - "type": "object", - "additionalProperties": { - "type": "string" - } - }, - "systemLabels": { - "additionalProperties": { - "description": "Properties of the object.", - "type": "any" - }, - "description": "Output only. Values for predefined system metadata labels. System labels are a kind of metadata extracted by Google Stackdriver. Stackdriver determines what system labels are useful and how to obtain their values. Some examples: \"machine_image\", \"vpc\", \"subnet_id\", \"security_group\", \"name\", etc. System label values can be only strings, Boolean values, or a list of strings. For example:\n{ \"name\": \"my-test-instance\",\n \"security_group\": [\"a\", \"b\", \"c\"],\n \"spot_instance\": false }\n", - "type": "object" - } - }, - "id": "MonitoredResourceMetadata" - }, - "BucketOptions": { - "description": "BucketOptions describes the bucket boundaries used to create a histogram for the distribution. The buckets can be in a linear sequence, an exponential sequence, or each bucket can be specified explicitly. BucketOptions does not include the number of values in each bucket.A bucket has an inclusive lower bound and exclusive upper bound for the values that are counted for that bucket. The upper bound of a bucket must be strictly greater than the lower bound. The sequence of N buckets for a distribution consists of an underflow bucket (number 0), zero or more finite buckets (number 1 through N - 2) and an overflow bucket (number N - 1). The buckets are contiguous: the lower bound of bucket i (i \u003e 0) is the same as the upper bound of bucket i - 1. The buckets span the whole range of finite values: lower bound of the underflow bucket is -infinity and the upper bound of the overflow bucket is +infinity. The finite buckets are so-called because both bounds are finite.", - "type": "object", - "properties": { - "linearBuckets": { - "$ref": "Linear", - "description": "The linear bucket." - }, - "explicitBuckets": { - "description": "The explicit buckets.", - "$ref": "Explicit" - }, - "exponentialBuckets": { - "$ref": "Exponential", - "description": "The exponential buckets." - } - }, - "id": "BucketOptions" + "type": "object" }, "HttpCheck": { "description": "Information involved in an HTTP/HTTPS uptime check request.", - "type": "object", + "id": "HttpCheck", "properties": { - "port": { - "description": "The port to the page to run the check against. Will be combined with host (specified within the MonitoredResource) and path to construct the full URL. Optional (defaults to 80 without SSL, or 443 with SSL).", - "format": "int32", - "type": "integer" + "authInfo": { + "$ref": "BasicAuthentication", + "description": "The authentication information. Optional when creating an HTTP check; defaults to empty." }, "headers": { "additionalProperties": { "type": "string" }, - "description": "The list of headers to send as part of the uptime check request. If two headers have the same key and different values, they should be entered as a single header, with the value being a comma-separated list of all the desired values as described at https://www.w3.org/Protocols/rfc2616/rfc2616.txt (page 31). Entering two separate headers with the same key in a Create call will cause the first to be overwritten by the second.", + "description": "The list of headers to send as part of the uptime check request. If two headers have the same key and different values, they should be entered as a single header, with the value being a comma-separated list of all the desired values as described at https://www.w3.org/Protocols/rfc2616/rfc2616.txt (page 31). Entering two separate headers with the same key in a Create call will cause the first to be overwritten by the second. The maximum number of headers allowed is 100.", "type": "object" }, - "path": { - "description": "The path to the page to run the check against. Will be combined with the host (specified within the MonitoredResource) and port to construct the full URL. Optional (defaults to \"/\").", - "type": "string" - }, - "useSsl": { - "description": "If true, use HTTPS instead of HTTP to run the check.", - "type": "boolean" - }, "maskHeaders": { "description": "Boolean specifiying whether to encrypt the header information. Encryption should be specified for any headers related to authentication that you do not wish to be seen when retrieving the configuration. The server will be responsible for encrypting the headers. On Get/List calls, if mask_headers is set to True then the headers will be obscured with ******.", "type": "boolean" }, - "authInfo": { - "$ref": "BasicAuthentication", - "description": "The authentication information. Optional when creating an HTTP check; defaults to empty." - } - }, - "id": "HttpCheck" - }, - "Status": { - "description": "The Status type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by gRPC (https://github.com/grpc). The error model is designed to be:\nSimple to use and understand for most users\nFlexible enough to meet unexpected needsOverviewThe Status message contains three pieces of data: error code, error message, and error details. The error code should be an enum value of google.rpc.Code, but it may accept additional error codes if needed. The error message should be a developer-facing English message that helps developers understand and resolve the error. If a localized user-facing error message is needed, put the localized message in the error details or localize it in the client. The optional error details may contain arbitrary information about the error. There is a predefined set of error detail types in the package google.rpc that can be used for common error conditions.Language mappingThe Status message is the logical representation of the error model, but it is not necessarily the actual wire format. When the Status message is exposed in different client libraries and different wire protocols, it can be mapped differently. For example, it will likely be mapped to some exceptions in Java, but more likely mapped to some error codes in C.Other usesThe error model and the Status message can be used in a variety of environments, either with or without APIs, to provide a consistent developer experience across different environments.Example uses of this error model include:\nPartial errors. If a service needs to return partial errors to the client, it may embed the Status in the normal response to indicate the partial errors.\nWorkflow errors. A typical workflow has multiple steps. Each step may have a Status message for error reporting.\nBatch operations. If a client uses batch request and batch response, the Status message should be used directly inside batch response, one for each error sub-response.\nAsynchronous operations. If an API call embeds asynchronous operation results in its response, the status of those operations should be represented directly using the Status message.\nLogging. If some API errors are stored in logs, the message Status could be used directly after any stripping needed for security/privacy reasons.", - "type": "object", - "properties": { - "details": { - "description": "A list of messages that carry the error details. There is a common set of message types for APIs to use.", - "type": "array", - "items": { - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - }, - "type": "object" - } + "path": { + "description": "The path to the page to run the check against. Will be combined with the host (specified within the MonitoredResource) and port to construct the full URL. Optional (defaults to \"/\").", + "type": "string" }, - "code": { - "description": "The status code, which should be an enum value of google.rpc.Code.", + "port": { + "description": "The port to the page to run the check against. Will be combined with host (specified within the MonitoredResource) and path to construct the full URL. Optional (defaults to 80 without SSL, or 443 with SSL).", "format": "int32", "type": "integer" }, - "message": { - "description": "A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the google.rpc.Status.details field, or localized by the client.", - "type": "string" + "useSsl": { + "description": "If true, use HTTPS instead of HTTP to run the check.", + "type": "boolean" } }, - "id": "Status" + "type": "object" }, - "CollectdValue": { - "description": "A single data point from a collectd-based plugin.", - "type": "object", + "InternalChecker": { + "description": "Nimbus InternalCheckers.", + "id": "InternalChecker", "properties": { - "dataSourceType": { - "enumDescriptions": [ - "An unspecified data source type. This corresponds to google.api.MetricDescriptor.MetricKind.METRIC_KIND_UNSPECIFIED.", - "An instantaneous measurement of a varying quantity. This corresponds to google.api.MetricDescriptor.MetricKind.GAUGE.", - "A cumulative value over time. This corresponds to google.api.MetricDescriptor.MetricKind.CUMULATIVE.", - "A rate of change of the measurement.", - "An amount of change since the last measurement interval. This corresponds to google.api.MetricDescriptor.MetricKind.DELTA." - ], - "enum": [ - "UNSPECIFIED_DATA_SOURCE_TYPE", - "GAUGE", - "COUNTER", - "DERIVE", - "ABSOLUTE" - ], - "description": "The type of measurement.", + "checkerId": { + "description": "The checker ID.", "type": "string" }, - "dataSourceName": { - "description": "The data source for the collectd value. For example there are two data sources for network measurements: \"rx\" and \"tx\".", + "displayName": { + "description": "The checker's human-readable name.", "type": "string" }, - "value": { - "$ref": "TypedValue", - "description": "The measurement value." + "gcpZone": { + "description": "The GCP zone the uptime check should egress from. Only respected for internal uptime checks, where internal_network is specified.", + "type": "string" + }, + "network": { + "description": "The internal network to perform this uptime check on.", + "type": "string" + }, + "projectId": { + "description": "The GCP project ID. Not necessarily the same as the project_id for the config.", + "type": "string" } }, - "id": "CollectdValue" + "type": "object" + }, + "LabelDescriptor": { + "description": "A description of a label.", + "id": "LabelDescriptor", + "properties": { + "description": { + "description": "A human-readable description for the label.", + "type": "string" + }, + "key": { + "description": "The label key.", + "type": "string" + }, + "valueType": { + "description": "The type of data that can be assigned to the label.", + "enum": [ + "STRING", + "BOOL", + "INT64" + ], + "enumDescriptions": [ + "A variable-length string. This is the default.", + "Boolean; true or false.", + "A 64-bit signed integer." + ], + "type": "string" + } + }, + "type": "object" + }, + "Linear": { + "description": "Specifies a linear sequence of buckets that all have the same width (except overflow and underflow). Each bucket represents a constant absolute uncertainty on the specific value in the bucket.There are num_finite_buckets + 2 (= N) buckets. Bucket i has the following boundaries:Upper bound (0 \u003c= i \u003c N-1): offset + (width * i). Lower bound (1 \u003c= i \u003c N): offset + (width * (i - 1)).", + "id": "Linear", + "properties": { + "numFiniteBuckets": { + "description": "Must be greater than 0.", + "format": "int32", + "type": "integer" + }, + "offset": { + "description": "Lower bound of the first bucket.", + "format": "double", + "type": "number" + }, + "width": { + "description": "Must be greater than 0.", + "format": "double", + "type": "number" + } + }, + "type": "object" + }, + "ListAlertPoliciesResponse": { + "description": "The protocol for the ListAlertPolicies response.", + "id": "ListAlertPoliciesResponse", + "properties": { + "alertPolicies": { + "description": "The returned alert policies.", + "items": { + "$ref": "AlertPolicy" + }, + "type": "array" + }, + "nextPageToken": { + "description": "If there might be more results than were returned, then this field is set to a non-empty value. To see the additional results, use that value as pageToken in the next call to this method.", + "type": "string" + } + }, + "type": "object" + }, + "ListGroupMembersResponse": { + "description": "The ListGroupMembers response.", + "id": "ListGroupMembersResponse", + "properties": { + "members": { + "description": "A set of monitored resources in the group.", + "items": { + "$ref": "MonitoredResource" + }, + "type": "array" + }, + "nextPageToken": { + "description": "If there are more results than have been returned, then this field is set to a non-empty value. To see the additional results, use that value as pageToken in the next call to this method.", + "type": "string" + }, + "totalSize": { + "description": "The total number of elements matching this request.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "ListGroupsResponse": { + "description": "The ListGroups response.", + "id": "ListGroupsResponse", + "properties": { + "group": { + "description": "The groups that match the specified filters.", + "items": { + "$ref": "Group" + }, + "type": "array" + }, + "nextPageToken": { + "description": "If there are more results than have been returned, then this field is set to a non-empty value. To see the additional results, use that value as pageToken in the next call to this method.", + "type": "string" + } + }, + "type": "object" + }, + "ListMetricDescriptorsResponse": { + "description": "The ListMetricDescriptors response.", + "id": "ListMetricDescriptorsResponse", + "properties": { + "metricDescriptors": { + "description": "The metric descriptors that are available to the project and that match the value of filter, if present.", + "items": { + "$ref": "MetricDescriptor" + }, + "type": "array" + }, + "nextPageToken": { + "description": "If there are more results than have been returned, then this field is set to a non-empty value. To see the additional results, use that value as pageToken in the next call to this method.", + "type": "string" + } + }, + "type": "object" + }, + "ListMonitoredResourceDescriptorsResponse": { + "description": "The ListMonitoredResourceDescriptors response.", + "id": "ListMonitoredResourceDescriptorsResponse", + "properties": { + "nextPageToken": { + "description": "If there are more results than have been returned, then this field is set to a non-empty value. To see the additional results, use that value as pageToken in the next call to this method.", + "type": "string" + }, + "resourceDescriptors": { + "description": "The monitored resource descriptors that are available to this project and that match filter, if present.", + "items": { + "$ref": "MonitoredResourceDescriptor" + }, + "type": "array" + } + }, + "type": "object" + }, + "ListNotificationChannelDescriptorsResponse": { + "description": "The ListNotificationChannelDescriptors response.", + "id": "ListNotificationChannelDescriptorsResponse", + "properties": { + "channelDescriptors": { + "description": "The monitored resource descriptors supported for the specified project, optionally filtered.", + "items": { + "$ref": "NotificationChannelDescriptor" + }, + "type": "array" + }, + "nextPageToken": { + "description": "If not empty, indicates that there may be more results that match the request. Use the value in the page_token field in a subsequent request to fetch the next set of results. If empty, all results have been returned.", + "type": "string" + } + }, + "type": "object" + }, + "ListNotificationChannelsResponse": { + "description": "The ListNotificationChannels response.", + "id": "ListNotificationChannelsResponse", + "properties": { + "nextPageToken": { + "description": "If not empty, indicates that there may be more results that match the request. Use the value in the page_token field in a subsequent request to fetch the next set of results. If empty, all results have been returned.", + "type": "string" + }, + "notificationChannels": { + "description": "The notification channels defined for the specified project.", + "items": { + "$ref": "NotificationChannel" + }, + "type": "array" + } + }, + "type": "object" + }, + "ListTimeSeriesResponse": { + "description": "The ListTimeSeries response.", + "id": "ListTimeSeriesResponse", + "properties": { + "nextPageToken": { + "description": "If there are more results than have been returned, then this field is set to a non-empty value. To see the additional results, use that value as pageToken in the next call to this method.", + "type": "string" + }, + "timeSeries": { + "description": "One or more time series that match the filter included in the request.", + "items": { + "$ref": "TimeSeries" + }, + "type": "array" + } + }, + "type": "object" + }, + "ListUptimeCheckConfigsResponse": { + "description": "The protocol for the ListUptimeCheckConfigs response.", + "id": "ListUptimeCheckConfigsResponse", + "properties": { + "nextPageToken": { + "description": "This field represents the pagination token to retrieve the next page of results. If the value is empty, it means no further results for the request. To retrieve the next page of results, the value of the next_page_token is passed to the subsequent List method call (in the request message's page_token field).", + "type": "string" + }, + "totalSize": { + "description": "The total number of uptime check configurations for the project, irrespective of any pagination.", + "format": "int32", + "type": "integer" + }, + "uptimeCheckConfigs": { + "description": "The returned uptime check configurations.", + "items": { + "$ref": "UptimeCheckConfig" + }, + "type": "array" + } + }, + "type": "object" + }, + "ListUptimeCheckIpsResponse": { + "description": "The protocol for the ListUptimeCheckIps response.", + "id": "ListUptimeCheckIpsResponse", + "properties": { + "nextPageToken": { + "description": "This field represents the pagination token to retrieve the next page of results. If the value is empty, it means no further results for the request. To retrieve the next page of results, the value of the next_page_token is passed to the subsequent List method call (in the request message's page_token field). NOTE: this field is not yet implemented", + "type": "string" + }, + "uptimeCheckIps": { + "description": "The returned list of IP addresses (including region and location) that the checkers run from.", + "items": { + "$ref": "UptimeCheckIp" + }, + "type": "array" + } + }, + "type": "object" + }, + "Metric": { + "description": "A specific metric, identified by specifying values for all of the labels of a MetricDescriptor.", + "id": "Metric", + "properties": { + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "The set of label values that uniquely identify this metric. All labels listed in the MetricDescriptor must be assigned values.", + "type": "object" + }, + "type": { + "description": "An existing metric type, see google.api.MetricDescriptor. For example, custom.googleapis.com/invoice/paid/amount.", + "type": "string" + } + }, + "type": "object" + }, + "MetricAbsence": { + "description": "A condition type that checks that monitored resources are reporting data. The configuration defines a metric and a set of monitored resources. The predicate is considered in violation when a time series for the specified metric of a monitored resource does not include any data in the specified duration.", + "id": "MetricAbsence", + "properties": { + "aggregations": { + "description": "Specifies the alignment of data points in individual time series as well as how to combine the retrieved time series together (such as when aggregating multiple streams on each resource to a single stream for each resource or when aggregating streams across all members of a group of resrouces). Multiple aggregations are applied in the order specified.This field is similar to the one in the MetricService.ListTimeSeries request. It is advisable to use the ListTimeSeries method when debugging this field.", + "items": { + "$ref": "Aggregation" + }, + "type": "array" + }, + "duration": { + "description": "The amount of time that a time series must fail to report new data to be considered failing. Currently, only values that are a multiple of a minute--e.g. 60, 120, or 300 seconds--are supported. If an invalid value is given, an error will be returned. The Duration.nanos field is ignored.", + "format": "google-duration", + "type": "string" + }, + "filter": { + "description": "A filter that identifies which time series should be compared with the threshold.The filter is similar to the one that is specified in the MetricService.ListTimeSeries request (that call is useful to verify the time series that will be retrieved / processed) and must specify the metric type and optionally may contain restrictions on resource type, resource labels, and metric labels. This field may not exceed 2048 Unicode characters in length.", + "type": "string" + }, + "trigger": { + "$ref": "Trigger", + "description": "The number/percent of time series for which the comparison must hold in order for the condition to trigger. If unspecified, then the condition will trigger if the comparison is true for any of the time series that have been identified by filter and aggregations." + } + }, + "type": "object" }, "MetricDescriptor": { "description": "Defines a metric type and its schema. Once a metric descriptor is created, deleting or altering it stops data collection and makes the metric type's existing data unusable.", - "type": "object", + "id": "MetricDescriptor", "properties": { - "metricKind": { - "enum": [ - "METRIC_KIND_UNSPECIFIED", - "GAUGE", - "DELTA", - "CUMULATIVE" - ], - "description": "Whether the metric records instantaneous values, changes to a value, etc. Some combinations of metric_kind and value_type might not be supported.", - "type": "string", - "enumDescriptions": [ - "Do not use this default value.", - "An instantaneous measurement of a value.", - "The change in a value during a time interval.", - "A value accumulated over a time interval. Cumulative measurements in a time series should have the same start time and increasing end times, until an event resets the cumulative value to zero and sets a new start time for the following points." - ] - }, "description": { "description": "A detailed description of the metric, which can be used in documentation.", "type": "string" @@ -1787,16 +2489,28 @@ "description": "A concise name for the metric, which can be displayed in user interfaces. Use sentence case without an ending period, for example \"Request count\". This field is optional but it is recommended to be set for any metrics associated with user-visible concepts, such as Quota.", "type": "string" }, - "unit": { - "description": "Optional. The unit in which the metric value is reported. For example, kBy/s means kilobytes/sec, and 1 is the dimensionless unit. The supported units are a subset of The Unified Code for Units of Measure standard (http://unitsofmeasure.org/ucum.html).\u003cbr\u003e\u003cbr\u003e This field is part of the metric's documentation, but it is ignored by Stackdriver.", - "type": "string" - }, "labels": { "description": "The set of labels that can be used to describe a specific instance of this metric type. For example, the appengine.googleapis.com/http/server/response_latencies metric type has a label for the HTTP response code, response_code, so you can look at latencies for successful responses or just for responses that failed.", - "type": "array", "items": { "$ref": "LabelDescriptor" - } + }, + "type": "array" + }, + "metricKind": { + "description": "Whether the metric records instantaneous values, changes to a value, etc. Some combinations of metric_kind and value_type might not be supported.", + "enum": [ + "METRIC_KIND_UNSPECIFIED", + "GAUGE", + "DELTA", + "CUMULATIVE" + ], + "enumDescriptions": [ + "Do not use this default value.", + "An instantaneous measurement of a value.", + "The change in a value during a time interval.", + "A value accumulated over a time interval. Cumulative measurements in a time series should have the same start time and increasing end times, until an event resets the cumulative value to zero and sets a new start time for the following points." + ], + "type": "string" }, "name": { "description": "The resource name of the metric descriptor.", @@ -1806,9 +2520,21 @@ "description": "The metric type, including its DNS name prefix. The type is not URL-encoded. All user-defined custom metric types have the DNS name custom.googleapis.com. Metric types should use a natural hierarchical grouping. For example:\n\"custom.googleapis.com/invoice/paid/amount\"\n\"appengine.googleapis.com/http/server/response_latencies\"\n", "type": "string" }, + "unit": { + "description": "Optional. The unit in which the metric value is reported. For example, kBy/s means kilobytes/sec, and 1 is the dimensionless unit. The supported units are a subset of The Unified Code for Units of Measure standard (http://unitsofmeasure.org/ucum.html).\u003cbr\u003e\u003cbr\u003e This field is part of the metric's documentation, but it is ignored by Stackdriver.", + "type": "string" + }, "valueType": { "description": "Whether the measurement is an integer, a floating-point number, etc. Some combinations of metric_kind and value_type might not be supported.", - "type": "string", + "enum": [ + "VALUE_TYPE_UNSPECIFIED", + "BOOL", + "INT64", + "DOUBLE", + "STRING", + "DISTRIBUTION", + "MONEY" + ], "enumDescriptions": [ "Do not use this default value.", "The value is a boolean. This value type can be used only if the metric kind is GAUGE.", @@ -1818,327 +2544,79 @@ "The value is a Distribution.", "The value is money." ], - "enum": [ - "VALUE_TYPE_UNSPECIFIED", - "BOOL", - "INT64", - "DOUBLE", - "STRING", - "DISTRIBUTION", - "MONEY" - ] - } - }, - "id": "MetricDescriptor" - }, - "SourceContext": { - "description": "SourceContext represents information about the source of a protobuf element, like the file in which it is defined.", - "type": "object", - "properties": { - "fileName": { - "description": "The path-qualified name of the .proto file that contained the associated protobuf element. For example: \"google/protobuf/source_context.proto\".", "type": "string" } }, - "id": "SourceContext" + "type": "object" }, - "Range": { - "description": "The range of the population values.", - "type": "object", + "MetricThreshold": { + "description": "A condition type that compares a collection of time series against a threshold.", + "id": "MetricThreshold", "properties": { - "min": { - "description": "The minimum of the population values.", - "format": "double", - "type": "number" - }, - "max": { - "description": "The maximum of the population values.", - "format": "double", - "type": "number" - } - }, - "id": "Range" - }, - "ListGroupsResponse": { - "description": "The ListGroups response.", - "type": "object", - "properties": { - "nextPageToken": { - "description": "If there are more results than have been returned, then this field is set to a non-empty value. To see the additional results, use that value as pageToken in the next call to this method.", - "type": "string" - }, - "group": { - "description": "The groups that match the specified filters.", - "type": "array", + "aggregations": { + "description": "Specifies the alignment of data points in individual time series as well as how to combine the retrieved time series together (such as when aggregating multiple streams on each resource to a single stream for each resource or when aggregating streams across all members of a group of resrouces). Multiple aggregations are applied in the order specified.This field is similar to the one in the MetricService.ListTimeSeries request. It is advisable to use the ListTimeSeries method when debugging this field.", "items": { - "$ref": "Group" - } - } - }, - "id": "ListGroupsResponse" - }, - "UptimeCheckConfig": { - "properties": { - "displayName": { - "description": "A human-friendly name for the uptime check configuration. The display name should be unique within a Stackdriver Account in order to make it easier to identify; however, uniqueness is not enforced. Required.", - "type": "string" - }, - "monitoredResource": { - "$ref": "MonitoredResource", - "description": "The monitored resource associated with the configuration." - }, - "contentMatchers": { - "description": "The expected content on the page the check is run against. Currently, only the first entry in the list is supported, and other entries will be ignored. The server will look for an exact match of the string in the page response's content. This field is optional and should only be specified if a content match is required.", - "type": "array", - "items": { - "$ref": "ContentMatcher" - } - }, - "timeout": { - "description": "The maximum amount of time to wait for the request to complete (must be between 1 and 60 seconds). Required.", - "format": "google-duration", - "type": "string" - }, - "period": { - "description": "How often the uptime check is performed. Currently, only 1, 5, 10, and 15 minutes are supported. Required.", - "format": "google-duration", - "type": "string" - }, - "name": { - "description": "A unique resource name for this UptimeCheckConfig. The format is:projects/[PROJECT_ID]/uptimeCheckConfigs/[UPTIME_CHECK_ID].This field should be omitted when creating the uptime check configuration; on create, the resource name is assigned by the server and included in the response.", - "type": "string" - }, - "httpCheck": { - "description": "Contains information needed to make an HTTP or HTTPS check.", - "$ref": "HttpCheck" - }, - "resourceGroup": { - "description": "The group resource associated with the configuration.", - "$ref": "ResourceGroup" - }, - "tcpCheck": { - "description": "Contains information needed to make a TCP check.", - "$ref": "TcpCheck" - }, - "internalCheckers": { - "description": "The internal checkers that this check will egress from. If is_internal is true and this list is empty, the check will egress from all InternalCheckers configured for the project that owns this CheckConfig.", - "type": "array", - "items": { - "$ref": "InternalChecker" - } - }, - "isInternal": { - "description": "Denotes whether this is a check that egresses from InternalCheckers.", - "type": "boolean" - }, - "selectedRegions": { - "description": "The list of regions from which the check will be run. If this field is specified, enough regions to include a minimum of 3 locations must be provided, or an error message is returned. Not specifying this field will result in uptime checks running from all regions.", - "type": "array", - "items": { - "enum": [ - "REGION_UNSPECIFIED", - "USA", - "EUROPE", - "SOUTH_AMERICA", - "ASIA_PACIFIC" - ], - "type": "string" + "$ref": "Aggregation" }, - "enumDescriptions": [ - "Default value if no region is specified. Will result in uptime checks running from all regions.", - "Allows checks to run from locations within the United States of America.", - "Allows checks to run from locations within the continent of Europe.", - "Allows checks to run from locations within the continent of South America.", - "Allows checks to run from locations within the Asia Pacific area (ex: Singapore)." - ] - } - }, - "id": "UptimeCheckConfig", - "description": "This message configures which resources and services to monitor for availability.", - "type": "object" - }, - "CreateCollectdTimeSeriesRequest": { - "description": "The CreateCollectdTimeSeries request.", - "type": "object", - "properties": { - "resource": { - "description": "The monitored resource associated with the time series.", - "$ref": "MonitoredResource" + "type": "array" }, - "collectdPayloads": { - "description": "The collectd payloads representing the time series data. You must not include more than a single point for each time series, so no two payloads can have the same values for all of the fields plugin, plugin_instance, type, and type_instance.", - "type": "array", - "items": { - "$ref": "CollectdPayload" - } - }, - "collectdVersion": { - "description": "The version of collectd that collected the data. Example: \"5.3.0-192.el6\".", - "type": "string" - } - }, - "id": "CreateCollectdTimeSeriesRequest" - }, - "ListGroupMembersResponse": { - "description": "The ListGroupMembers response.", - "type": "object", - "properties": { - "nextPageToken": { - "description": "If there are more results than have been returned, then this field is set to a non-empty value. To see the additional results, use that value as pageToken in the next call to this method.", - "type": "string" - }, - "totalSize": { - "description": "The total number of elements matching this request.", - "format": "int32", - "type": "integer" - }, - "members": { - "description": "A set of monitored resources in the group.", - "type": "array", - "items": { - "$ref": "MonitoredResource" - } - } - }, - "id": "ListGroupMembersResponse" - }, - "ListMonitoredResourceDescriptorsResponse": { - "properties": { - "resourceDescriptors": { - "description": "The monitored resource descriptors that are available to this project and that match filter, if present.", - "type": "array", - "items": { - "$ref": "MonitoredResourceDescriptor" - } - }, - "nextPageToken": { - "description": "If there are more results than have been returned, then this field is set to a non-empty value. To see the additional results, use that value as pageToken in the next call to this method.", - "type": "string" - } - }, - "id": "ListMonitoredResourceDescriptorsResponse", - "description": "The ListMonitoredResourceDescriptors response.", - "type": "object" - }, - "TimeSeries": { - "description": "A collection of data points that describes the time-varying values of a metric. A time series is identified by a combination of a fully-specified monitored resource and a fully-specified metric. This type is used for both listing and creating time series.", - "type": "object", - "properties": { - "valueType": { - "enumDescriptions": [ - "Do not use this default value.", - "The value is a boolean. This value type can be used only if the metric kind is GAUGE.", - "The value is a signed 64-bit integer.", - "The value is a double precision floating point number.", - "The value is a text string. This value type can be used only if the metric kind is GAUGE.", - "The value is a Distribution.", - "The value is money." - ], + "comparison": { + "description": "The comparison to apply between the time series (indicated by filter and aggregation) and the threshold (indicated by threshold_value). The comparison is applied on each time series, with the time series on the left-hand side and the threshold on the right-hand side.Only COMPARISON_LT and COMPARISON_GT are supported currently.", "enum": [ - "VALUE_TYPE_UNSPECIFIED", - "BOOL", - "INT64", - "DOUBLE", - "STRING", - "DISTRIBUTION", - "MONEY" + "COMPARISON_UNSPECIFIED", + "COMPARISON_GT", + "COMPARISON_GE", + "COMPARISON_LT", + "COMPARISON_LE", + "COMPARISON_EQ", + "COMPARISON_NE" ], - "description": "The value type of the time series. When listing time series, this value type might be different from the value type of the associated metric if this time series is an alignment or reduction of other time series.When creating a time series, this field is optional. If present, it must be the same as the type of the data in the points field.", - "type": "string" - }, - "metricKind": { "enumDescriptions": [ - "Do not use this default value.", - "An instantaneous measurement of a value.", - "The change in a value during a time interval.", - "A value accumulated over a time interval. Cumulative measurements in a time series should have the same start time and increasing end times, until an event resets the cumulative value to zero and sets a new start time for the following points." + "No ordering relationship is specified.", + "The left argument is greater than the right argument.", + "The left argument is greater than or equal to the right argument.", + "The left argument is less than the right argument.", + "The left argument is less than or equal to the right argument.", + "The left argument is equal to the right argument.", + "The left argument is not equal to the right argument." ], - "enum": [ - "METRIC_KIND_UNSPECIFIED", - "GAUGE", - "DELTA", - "CUMULATIVE" - ], - "description": "The metric kind of the time series. When listing time series, this metric kind might be different from the metric kind of the associated metric if this time series is an alignment or reduction of other time series.When creating a time series, this field is optional. If present, it must be the same as the metric kind of the associated metric. If the associated metric's descriptor must be auto-created, then this field specifies the metric kind of the new descriptor and must be either GAUGE (the default) or CUMULATIVE.", "type": "string" }, - "points": { - "description": "The data points of this time series. When listing time series, points are returned in reverse time order.When creating a time series, this field must contain exactly one point and the point's type must be the same as the value type of the associated metric. If the associated metric's descriptor must be auto-created, then the value type of the descriptor is determined by the point's type, which must be BOOL, INT64, DOUBLE, or DISTRIBUTION.", - "type": "array", + "denominatorAggregations": { + "description": "Specifies the alignment of data points in individual time series selected by denominatorFilter as well as how to combine the retrieved time series together (such as when aggregating multiple streams on each resource to a single stream for each resource or when aggregating streams across all members of a group of resources).When computing ratios, the aggregations and denominator_aggregations fields must use the same alignment period and produce time series that have the same periodicity and labels.This field is similar to the one in the MetricService.ListTimeSeries request. It is advisable to use the ListTimeSeries method when debugging this field.", "items": { - "$ref": "Point" - } + "$ref": "Aggregation" + }, + "type": "array" }, - "metric": { - "$ref": "Metric", - "description": "The associated metric. A fully-specified metric used to identify the time series." + "denominatorFilter": { + "description": "A filter that identifies a time series that should be used as the denominator of a ratio that will be compared with the threshold. If a denominator_filter is specified, the time series specified by the filter field will be used as the numerator.The filter is similar to the one that is specified in the MetricService.ListTimeSeries request (that call is useful to verify the time series that will be retrieved / processed) and must specify the metric type and optionally may contain restrictions on resource type, resource labels, and metric labels. This field may not exceed 2048 Unicode characters in length.", + "type": "string" }, - "resource": { - "$ref": "MonitoredResource", - "description": "The associated monitored resource. Custom metrics can use only certain monitored resource types in their time series data." + "duration": { + "description": "The amount of time that a time series must violate the threshold to be considered failing. Currently, only values that are a multiple of a minute--e.g. 60, 120, or 300 seconds--are supported. If an invalid value is given, an error will be returned. The Duration.nanos field is ignored. When choosing a duration, it is useful to keep in mind the frequency of the underlying time series data (which may also be affected by any alignments specified in the aggregation field); a good duration is long enough so that a single outlier does not generate spurious alerts, but short enough that unhealthy states are detected and alerted on quickly.", + "format": "google-duration", + "type": "string" }, - "metadata": { - "description": "Output only. The associated monitored resource metadata. When reading a a timeseries, this field will include metadata labels that are explicitly named in the reduction. When creating a timeseries, this field is ignored.", - "$ref": "MonitoredResourceMetadata" - } - }, - "id": "TimeSeries" - }, - "CreateTimeSeriesRequest": { - "properties": { - "timeSeries": { - "description": "The new data to be added to a list of time series. Adds at most one data point to each of several time series. The new data point must be more recent than any other point in its time series. Each TimeSeries value must fully specify a unique time series by supplying all label values for the metric and the monitored resource.", - "type": "array", - "items": { - "$ref": "TimeSeries" - } - } - }, - "id": "CreateTimeSeriesRequest", - "description": "The CreateTimeSeries request.", - "type": "object" - }, - "Distribution": { - "description": "Distribution contains summary statistics for a population of values. It optionally contains a histogram representing the distribution of those values across a set of buckets.The summary statistics are the count, mean, sum of the squared deviation from the mean, the minimum, and the maximum of the set of population of values. The histogram is based on a sequence of buckets and gives a count of values that fall into each bucket. The boundaries of the buckets are given either explicitly or by formulas for buckets of fixed or exponentially increasing widths.Although it is not forbidden, it is generally a bad idea to include non-finite values (infinities or NaNs) in the population of values, as this will render the mean and sum_of_squared_deviation fields meaningless.", - "type": "object", - "properties": { - "sumOfSquaredDeviation": { - "description": "The sum of squared deviations from the mean of the values in the population. For values x_i this is:\nSum[i=1..n]((x_i - mean)^2)\nKnuth, \"The Art of Computer Programming\", Vol. 2, page 323, 3rd edition describes Welford's method for accumulating this sum in one pass.If count is zero then this field must be zero.", + "filter": { + "description": "A filter that identifies which time series should be compared with the threshold.The filter is similar to the one that is specified in the MetricService.ListTimeSeries request (that call is useful to verify the time series that will be retrieved / processed) and must specify the metric type and optionally may contain restrictions on resource type, resource labels, and metric labels. This field may not exceed 2048 Unicode characters in length.", + "type": "string" + }, + "thresholdValue": { + "description": "A value against which to compare the time series.", "format": "double", "type": "number" }, - "range": { - "description": "If specified, contains the range of the population values. The field must not be present if the count is zero. This field is presently ignored by the Stackdriver Monitoring API v3.", - "$ref": "Range" - }, - "count": { - "description": "The number of values in the population. Must be non-negative. This value must equal the sum of the values in bucket_counts if a histogram is provided.", - "format": "int64", - "type": "string" - }, - "mean": { - "description": "The arithmetic mean of the values in the population. If count is zero then this field must be zero.", - "format": "double", - "type": "number" - }, - "bucketCounts": { - "description": "Required in the Stackdriver Monitoring API v3. The values for each bucket specified in bucket_options. The sum of the values in bucketCounts must equal the value in the count field of the Distribution object. The order of the bucket counts follows the numbering schemes described for the three bucket types. The underflow bucket has number 0; the finite buckets, if any, have numbers 1 through N-2; and the overflow bucket has number N-1. The size of bucket_counts must not be greater than N. If the size is less than N, then the remaining buckets are assigned values of zero.", - "type": "array", - "items": { - "format": "int64", - "type": "string" - } - }, - "bucketOptions": { - "$ref": "BucketOptions", - "description": "Required in the Stackdriver Monitoring API v3. Defines the histogram bucket boundaries." + "trigger": { + "$ref": "Trigger", + "description": "The number/percent of time series for which the comparison must hold in order for the condition to trigger. If unspecified, then the condition will trigger if the comparison is true for any of the time series that have been identified by filter and aggregations, or by the ratio, if denominator_filter and denominator_aggregations are specified." } }, - "id": "Distribution" + "type": "object" }, "MonitoredResource": { "description": "An object representing a resource that can be used for monitoring, logging, billing, or other purposes. Examples include virtual machine instances, databases, and storage devices such as disks. The type field identifies a MonitoredResourceDescriptor object that describes the resource's schema. Information in the labels field identifies the actual resource and its attributes according to the schema. For example, a particular Compute Engine VM instance could be represented by the following object, because the MonitoredResourceDescriptor for \"gce_instance\" has labels \"instance_id\" and \"zone\":\n{ \"type\": \"gce_instance\",\n \"labels\": { \"instance_id\": \"12345678901234\",\n \"zone\": \"us-central1-a\" }}\n", - "type": "object", + "id": "MonitoredResource", "properties": { "labels": { "additionalProperties": { @@ -2152,53 +2630,612 @@ "type": "string" } }, - "id": "MonitoredResource" + "type": "object" }, - "ListMetricDescriptorsResponse": { - "description": "The ListMetricDescriptors response.", - "type": "object", + "MonitoredResourceDescriptor": { + "description": "An object that describes the schema of a MonitoredResource object using a type name and a set of labels. For example, the monitored resource descriptor for Google Compute Engine VM instances has a type of \"gce_instance\" and specifies the use of the labels \"instance_id\" and \"zone\" to identify particular VM instances.Different APIs can support different monitored resource types. APIs generally provide a list method that returns the monitored resource descriptors used by the API.", + "id": "MonitoredResourceDescriptor", "properties": { - "metricDescriptors": { - "description": "The metric descriptors that are available to the project and that match the value of filter, if present.", - "type": "array", - "items": { - "$ref": "MetricDescriptor" - } + "description": { + "description": "Optional. A detailed description of the monitored resource type that might be used in documentation.", + "type": "string" }, - "nextPageToken": { - "description": "If there are more results than have been returned, then this field is set to a non-empty value. To see the additional results, use that value as pageToken in the next call to this method.", + "displayName": { + "description": "Optional. A concise name for the monitored resource type that might be displayed in user interfaces. It should be a Title Cased Noun Phrase, without any article or other determiners. For example, \"Google Cloud SQL Database\".", + "type": "string" + }, + "labels": { + "description": "Required. A set of labels used to describe instances of this monitored resource type. For example, an individual Google Cloud SQL database is identified by values for the labels \"database_id\" and \"zone\".", + "items": { + "$ref": "LabelDescriptor" + }, + "type": "array" + }, + "name": { + "description": "Optional. The resource name of the monitored resource descriptor: \"projects/{project_id}/monitoredResourceDescriptors/{type}\" where {type} is the value of the type field in this object and {project_id} is a project ID that provides API-specific context for accessing the type. APIs that do not use project information can use the resource name format \"monitoredResourceDescriptors/{type}\".", + "type": "string" + }, + "type": { + "description": "Required. The monitored resource type. For example, the type \"cloudsql_database\" represents databases in Google Cloud SQL. The maximum length of this value is 256 characters.", "type": "string" } }, - "id": "ListMetricDescriptorsResponse" - } - }, - "icons": { - "x16": "http://www.google.com/images/icons/product/search-16.gif", - "x32": "http://www.google.com/images/icons/product/search-32.gif" - }, - "protocol": "rest", - "canonicalName": "Monitoring", - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/cloud-platform": { - "description": "View and manage your data across Google Cloud Platform services" + "type": "object" + }, + "MonitoredResourceMetadata": { + "description": "Auxiliary metadata for a MonitoredResource object. MonitoredResource objects contain the minimum set of information to uniquely identify a monitored resource instance. There is some other useful auxiliary metadata. Google Stackdriver Monitoring \u0026 Logging uses an ingestion pipeline to extract metadata for cloud resources of all types , and stores the metadata in this message.", + "id": "MonitoredResourceMetadata", + "properties": { + "systemLabels": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "description": "Output only. Values for predefined system metadata labels. System labels are a kind of metadata extracted by Google Stackdriver. Stackdriver determines what system labels are useful and how to obtain their values. Some examples: \"machine_image\", \"vpc\", \"subnet_id\", \"security_group\", \"name\", etc. System label values can be only strings, Boolean values, or a list of strings. For example:\n{ \"name\": \"my-test-instance\",\n \"security_group\": [\"a\", \"b\", \"c\"],\n \"spot_instance\": false }\n", + "type": "object" }, - "https://www.googleapis.com/auth/monitoring.read": { - "description": "View monitoring data for all of your Google Cloud and third-party projects" - }, - "https://www.googleapis.com/auth/monitoring": { - "description": "View and write monitoring data for all of your Google and third-party Cloud and API projects" - }, - "https://www.googleapis.com/auth/monitoring.write": { - "description": "Publish metric data to your Google Cloud projects" + "userLabels": { + "additionalProperties": { + "type": "string" + }, + "description": "Output only. A map of user-defined metadata labels.", + "type": "object" } - } + }, + "type": "object" + }, + "MutationRecord": { + "description": "Describes a change made to a configuration.", + "id": "MutationRecord", + "properties": { + "mutateTime": { + "description": "When the change occurred.", + "format": "google-datetime", + "type": "string" + }, + "mutatedBy": { + "description": "The email address of the user making the change.", + "type": "string" + } + }, + "type": "object" + }, + "NotificationChannel": { + "description": "A NotificationChannel is a medium through which an alert is delivered when a policy violation is detected. Examples of channels include email, SMS, and third-party messaging applications. Fields containing sensitive information like authentication tokens or contact info are only partially populated on retrieval.", + "id": "NotificationChannel", + "properties": { + "description": { + "description": "An optional human-readable description of this notification channel. This description may provide additional details, beyond the display name, for the channel. This may not exceeed 1024 Unicode characters.", + "type": "string" + }, + "displayName": { + "description": "An optional human-readable name for this notification channel. It is recommended that you specify a non-empty and unique name in order to make it easier to identify the channels in your project, though this is not enforced. The display name is limited to 512 Unicode characters.", + "type": "string" + }, + "enabled": { + "description": "Whether notifications are forwarded to the described channel. This makes it possible to disable delivery of notifications to a particular channel without removing the channel from all alerting policies that reference the channel. This is a more convenient approach when the change is temporary and you want to receive notifications from the same set of alerting policies on the channel at some point in the future.", + "type": "boolean" + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Configuration fields that define the channel and its behavior. The permissible and required labels are specified in the NotificationChannelDescriptor.labels of the NotificationChannelDescriptor corresponding to the type field.", + "type": "object" + }, + "name": { + "description": "The full REST resource name for this channel. The syntax is:\nprojects/[PROJECT_ID]/notificationChannels/[CHANNEL_ID]\nThe [CHANNEL_ID] is automatically assigned by the server on creation.", + "type": "string" + }, + "type": { + "description": "The type of the notification channel. This field matches the value of the NotificationChannelDescriptor.type field.", + "type": "string" + }, + "userLabels": { + "additionalProperties": { + "type": "string" + }, + "description": "User-supplied key/value data that does not need to conform to the corresponding NotificationChannelDescriptor's schema, unlike the labels field. This field is intended to be used for organizing and identifying the NotificationChannel objects.The field can contain up to 64 entries. Each key and value is limited to 63 Unicode characters or 128 bytes, whichever is smaller. Labels and values can contain only lowercase letters, numerals, underscores, and dashes. Keys must begin with a letter.", + "type": "object" + }, + "verificationStatus": { + "description": "Indicates whether this channel has been verified or not. On a ListNotificationChannels or GetNotificationChannel operation, this field is expected to be populated.If the value is UNVERIFIED, then it indicates that the channel is non-functioning (it both requires verification and lacks verification); otherwise, it is assumed that the channel works.If the channel is neither VERIFIED nor UNVERIFIED, it implies that the channel is of a type that does not require verification or that this specific channel has been exempted from verification because it was created prior to verification being required for channels of this type.This field cannot be modified using a standard UpdateNotificationChannel operation. To change the value of this field, you must call VerifyNotificationChannel.", + "enum": [ + "VERIFICATION_STATUS_UNSPECIFIED", + "UNVERIFIED", + "VERIFIED" + ], + "enumDescriptions": [ + "Sentinel value used to indicate that the state is unknown, omitted, or is not applicable (as in the case of channels that neither support nor require verification in order to function).", + "The channel has yet to be verified and requires verification to function. Note that this state also applies to the case where the verification process has been initiated by sending a verification code but where the verification code has not been submitted to complete the process.", + "It has been proven that notifications can be received on this notification channel and that someone on the project has access to messages that are delivered to that channel." + ], + "type": "string" + } + }, + "type": "object" + }, + "NotificationChannelDescriptor": { + "description": "A description of a notification channel. The descriptor includes the properties of the channel and the set of labels or fields that must be specified to configure channels of a given type.", + "id": "NotificationChannelDescriptor", + "properties": { + "description": { + "description": "A human-readable description of the notification channel type. The description may include a description of the properties of the channel and pointers to external documentation.", + "type": "string" + }, + "displayName": { + "description": "A human-readable name for the notification channel type. This form of the name is suitable for a user interface.", + "type": "string" + }, + "labels": { + "description": "The set of labels that must be defined to identify a particular channel of the corresponding type. Each label includes a description for how that field should be populated.", + "items": { + "$ref": "LabelDescriptor" + }, + "type": "array" + }, + "name": { + "description": "The full REST resource name for this descriptor. The syntax is:\nprojects/[PROJECT_ID]/notificationChannelDescriptors/[TYPE]\nIn the above, [TYPE] is the value of the type field.", + "type": "string" + }, + "supportedTiers": { + "description": "The tiers that support this notification channel; the project service tier must be one of the supported_tiers.", + "enumDescriptions": [ + "An invalid sentinel value, used to indicate that a tier has not been provided explicitly.", + "The Stackdriver Basic tier, a free tier of service that provides basic features, a moderate allotment of logs, and access to built-in metrics. A number of features are not available in this tier. For more details, see the service tiers documentation (https://cloud.google.com/monitoring/accounts/tiers).", + "The Stackdriver Premium tier, a higher, more expensive tier of service that provides access to all Stackdriver features, lets you use Stackdriver with AWS accounts, and has a larger allotments for logs and metrics. For more details, see the service tiers documentation (https://cloud.google.com/monitoring/accounts/tiers)." + ], + "items": { + "enum": [ + "SERVICE_TIER_UNSPECIFIED", + "SERVICE_TIER_BASIC", + "SERVICE_TIER_PREMIUM" + ], + "type": "string" + }, + "type": "array" + }, + "type": { + "description": "The type of notification channel, such as \"email\", \"sms\", etc. Notification channel types are globally unique.", + "type": "string" + } + }, + "type": "object" + }, + "Option": { + "description": "A protocol buffer option, which can be attached to a message, field, enumeration, etc.", + "id": "Option", + "properties": { + "name": { + "description": "The option's name. For protobuf built-in options (options defined in descriptor.proto), this is the short name. For example, \"map_entry\". For custom options, it should be the fully-qualified name. For example, \"google.api.http\".", + "type": "string" + }, + "value": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "description": "The option's value packed in an Any message. If the value is a primitive, the corresponding wrapper type defined in google/protobuf/wrappers.proto should be used. If the value is an enum, it should be stored as an int32 value using the google.protobuf.Int32Value type.", + "type": "object" + } + }, + "type": "object" + }, + "Point": { + "description": "A single data point in a time series.", + "id": "Point", + "properties": { + "interval": { + "$ref": "TimeInterval", + "description": "The time interval to which the data point applies. For GAUGE metrics, only the end time of the interval is used. For DELTA metrics, the start and end time should specify a non-zero interval, with subsequent points specifying contiguous and non-overlapping intervals. For CUMULATIVE metrics, the start and end time should specify a non-zero interval, with subsequent points specifying the same start time and increasing end times, until an event resets the cumulative value to zero and sets a new start time for the following points." + }, + "value": { + "$ref": "TypedValue", + "description": "The value of the data point." + } + }, + "type": "object" + }, + "Range": { + "description": "The range of the population values.", + "id": "Range", + "properties": { + "max": { + "description": "The maximum of the population values.", + "format": "double", + "type": "number" + }, + "min": { + "description": "The minimum of the population values.", + "format": "double", + "type": "number" + } + }, + "type": "object" + }, + "ResourceGroup": { + "description": "The resource submessage for group checks. It can be used instead of a monitored resource, when multiple resources are being monitored.", + "id": "ResourceGroup", + "properties": { + "groupId": { + "description": "The group of resources being monitored. Should be only the group_id, not projects/\u003cproject_id\u003e/groups/\u003cgroup_id\u003e.", + "type": "string" + }, + "resourceType": { + "description": "The resource type of the group members.", + "enum": [ + "RESOURCE_TYPE_UNSPECIFIED", + "INSTANCE", + "AWS_ELB_LOAD_BALANCER" + ], + "enumDescriptions": [ + "Default value (not valid).", + "A group of instances from Google Cloud Platform (GCP) or Amazon Web Services (AWS).", + "A group of Amazon ELB load balancers." + ], + "type": "string" + } + }, + "type": "object" + }, + "SendNotificationChannelVerificationCodeRequest": { + "description": "The SendNotificationChannelVerificationCode request.", + "id": "SendNotificationChannelVerificationCodeRequest", + "properties": {}, + "type": "object" + }, + "SourceContext": { + "description": "SourceContext represents information about the source of a protobuf element, like the file in which it is defined.", + "id": "SourceContext", + "properties": { + "fileName": { + "description": "The path-qualified name of the .proto file that contained the associated protobuf element. For example: \"google/protobuf/source_context.proto\".", + "type": "string" + } + }, + "type": "object" + }, + "Status": { + "description": "The Status type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by gRPC (https://github.com/grpc). The error model is designed to be:\nSimple to use and understand for most users\nFlexible enough to meet unexpected needsOverviewThe Status message contains three pieces of data: error code, error message, and error details. The error code should be an enum value of google.rpc.Code, but it may accept additional error codes if needed. The error message should be a developer-facing English message that helps developers understand and resolve the error. If a localized user-facing error message is needed, put the localized message in the error details or localize it in the client. The optional error details may contain arbitrary information about the error. There is a predefined set of error detail types in the package google.rpc that can be used for common error conditions.Language mappingThe Status message is the logical representation of the error model, but it is not necessarily the actual wire format. When the Status message is exposed in different client libraries and different wire protocols, it can be mapped differently. For example, it will likely be mapped to some exceptions in Java, but more likely mapped to some error codes in C.Other usesThe error model and the Status message can be used in a variety of environments, either with or without APIs, to provide a consistent developer experience across different environments.Example uses of this error model include:\nPartial errors. If a service needs to return partial errors to the client, it may embed the Status in the normal response to indicate the partial errors.\nWorkflow errors. A typical workflow has multiple steps. Each step may have a Status message for error reporting.\nBatch operations. If a client uses batch request and batch response, the Status message should be used directly inside batch response, one for each error sub-response.\nAsynchronous operations. If an API call embeds asynchronous operation results in its response, the status of those operations should be represented directly using the Status message.\nLogging. If some API errors are stored in logs, the message Status could be used directly after any stripping needed for security/privacy reasons.", + "id": "Status", + "properties": { + "code": { + "description": "The status code, which should be an enum value of google.rpc.Code.", + "format": "int32", + "type": "integer" + }, + "details": { + "description": "A list of messages that carry the error details. There is a common set of message types for APIs to use.", + "items": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the google.rpc.Status.details field, or localized by the client.", + "type": "string" + } + }, + "type": "object" + }, + "TcpCheck": { + "description": "Information required for a TCP uptime check request.", + "id": "TcpCheck", + "properties": { + "port": { + "description": "The port to the page to run the check against. Will be combined with host (specified within the MonitoredResource) to construct the full URL. Required.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "TimeInterval": { + "description": "A time interval extending just after a start time through an end time. If the start time is the same as the end time, then the interval represents a single point in time.", + "id": "TimeInterval", + "properties": { + "endTime": { + "description": "Required. The end of the time interval.", + "format": "google-datetime", + "type": "string" + }, + "startTime": { + "description": "Optional. The beginning of the time interval. The default value for the start time is the end time. The start time must not be later than the end time.", + "format": "google-datetime", + "type": "string" + } + }, + "type": "object" + }, + "TimeSeries": { + "description": "A collection of data points that describes the time-varying values of a metric. A time series is identified by a combination of a fully-specified monitored resource and a fully-specified metric. This type is used for both listing and creating time series.", + "id": "TimeSeries", + "properties": { + "metadata": { + "$ref": "MonitoredResourceMetadata", + "description": "Output only. The associated monitored resource metadata. When reading a a timeseries, this field will include metadata labels that are explicitly named in the reduction. When creating a timeseries, this field is ignored." + }, + "metric": { + "$ref": "Metric", + "description": "The associated metric. A fully-specified metric used to identify the time series." + }, + "metricKind": { + "description": "The metric kind of the time series. When listing time series, this metric kind might be different from the metric kind of the associated metric if this time series is an alignment or reduction of other time series.When creating a time series, this field is optional. If present, it must be the same as the metric kind of the associated metric. If the associated metric's descriptor must be auto-created, then this field specifies the metric kind of the new descriptor and must be either GAUGE (the default) or CUMULATIVE.", + "enum": [ + "METRIC_KIND_UNSPECIFIED", + "GAUGE", + "DELTA", + "CUMULATIVE" + ], + "enumDescriptions": [ + "Do not use this default value.", + "An instantaneous measurement of a value.", + "The change in a value during a time interval.", + "A value accumulated over a time interval. Cumulative measurements in a time series should have the same start time and increasing end times, until an event resets the cumulative value to zero and sets a new start time for the following points." + ], + "type": "string" + }, + "points": { + "description": "The data points of this time series. When listing time series, points are returned in reverse time order.When creating a time series, this field must contain exactly one point and the point's type must be the same as the value type of the associated metric. If the associated metric's descriptor must be auto-created, then the value type of the descriptor is determined by the point's type, which must be BOOL, INT64, DOUBLE, or DISTRIBUTION.", + "items": { + "$ref": "Point" + }, + "type": "array" + }, + "resource": { + "$ref": "MonitoredResource", + "description": "The associated monitored resource. Custom metrics can use only certain monitored resource types in their time series data." + }, + "valueType": { + "description": "The value type of the time series. When listing time series, this value type might be different from the value type of the associated metric if this time series is an alignment or reduction of other time series.When creating a time series, this field is optional. If present, it must be the same as the type of the data in the points field.", + "enum": [ + "VALUE_TYPE_UNSPECIFIED", + "BOOL", + "INT64", + "DOUBLE", + "STRING", + "DISTRIBUTION", + "MONEY" + ], + "enumDescriptions": [ + "Do not use this default value.", + "The value is a boolean. This value type can be used only if the metric kind is GAUGE.", + "The value is a signed 64-bit integer.", + "The value is a double precision floating point number.", + "The value is a text string. This value type can be used only if the metric kind is GAUGE.", + "The value is a Distribution.", + "The value is money." + ], + "type": "string" + } + }, + "type": "object" + }, + "Trigger": { + "description": "Specifies how many time series must fail a predicate to trigger a condition. If not specified, then a {count: 1} trigger is used.", + "id": "Trigger", + "properties": { + "count": { + "description": "The absolute number of time series that must fail the predicate for the condition to be triggered.", + "format": "int32", + "type": "integer" + }, + "percent": { + "description": "The percentage of time series that must fail the predicate for the condition to be triggered.", + "format": "double", + "type": "number" + } + }, + "type": "object" + }, + "Type": { + "description": "A protocol buffer message type.", + "id": "Type", + "properties": { + "fields": { + "description": "The list of fields.", + "items": { + "$ref": "Field" + }, + "type": "array" + }, + "name": { + "description": "The fully qualified message name.", + "type": "string" + }, + "oneofs": { + "description": "The list of types appearing in oneof definitions in this type.", + "items": { + "type": "string" + }, + "type": "array" + }, + "options": { + "description": "The protocol buffer options.", + "items": { + "$ref": "Option" + }, + "type": "array" + }, + "sourceContext": { + "$ref": "SourceContext", + "description": "The source context." + }, + "syntax": { + "description": "The source syntax.", + "enum": [ + "SYNTAX_PROTO2", + "SYNTAX_PROTO3" + ], + "enumDescriptions": [ + "Syntax proto2.", + "Syntax proto3." + ], + "type": "string" + } + }, + "type": "object" + }, + "TypedValue": { + "description": "A single strongly-typed value.", + "id": "TypedValue", + "properties": { + "boolValue": { + "description": "A Boolean value: true or false.", + "type": "boolean" + }, + "distributionValue": { + "$ref": "Distribution", + "description": "A distribution value." + }, + "doubleValue": { + "description": "A 64-bit double-precision floating-point number. Its magnitude is approximately \u0026plusmn;10\u003csup\u003e\u0026plusmn;300\u003c/sup\u003e and it has 16 significant digits of precision.", + "format": "double", + "type": "number" + }, + "int64Value": { + "description": "A 64-bit integer. Its range is approximately \u0026plusmn;9.2x10\u003csup\u003e18\u003c/sup\u003e.", + "format": "int64", + "type": "string" + }, + "stringValue": { + "description": "A variable-length string value.", + "type": "string" + } + }, + "type": "object" + }, + "UptimeCheckConfig": { + "description": "This message configures which resources and services to monitor for availability.", + "id": "UptimeCheckConfig", + "properties": { + "contentMatchers": { + "description": "The expected content on the page the check is run against. Currently, only the first entry in the list is supported, and other entries will be ignored. The server will look for an exact match of the string in the page response's content. This field is optional and should only be specified if a content match is required.", + "items": { + "$ref": "ContentMatcher" + }, + "type": "array" + }, + "displayName": { + "description": "A human-friendly name for the uptime check configuration. The display name should be unique within a Stackdriver Account in order to make it easier to identify; however, uniqueness is not enforced. Required.", + "type": "string" + }, + "httpCheck": { + "$ref": "HttpCheck", + "description": "Contains information needed to make an HTTP or HTTPS check." + }, + "internalCheckers": { + "description": "The internal checkers that this check will egress from. If is_internal is true and this list is empty, the check will egress from all InternalCheckers configured for the project that owns this CheckConfig.", + "items": { + "$ref": "InternalChecker" + }, + "type": "array" + }, + "isInternal": { + "description": "Denotes whether this is a check that egresses from InternalCheckers.", + "type": "boolean" + }, + "monitoredResource": { + "$ref": "MonitoredResource", + "description": "The monitored resource (https://cloud.google.com/monitoring/api/resources) associated with the configuration. The following monitored resource types are supported for uptime checks: uptime_url gce_instance gae_app aws_ec2_instance aws_elb_load_balancer" + }, + "name": { + "description": "A unique resource name for this UptimeCheckConfig. The format is:projects/[PROJECT_ID]/uptimeCheckConfigs/[UPTIME_CHECK_ID].This field should be omitted when creating the uptime check configuration; on create, the resource name is assigned by the server and included in the response.", + "type": "string" + }, + "period": { + "description": "How often, in seconds, the uptime check is performed. Currently, the only supported values are 60s (1 minute), 300s (5 minutes), 600s (10 minutes), and 900s (15 minutes). Optional, defaults to 300s.", + "format": "google-duration", + "type": "string" + }, + "resourceGroup": { + "$ref": "ResourceGroup", + "description": "The group resource associated with the configuration." + }, + "selectedRegions": { + "description": "The list of regions from which the check will be run. If this field is specified, enough regions to include a minimum of 3 locations must be provided, or an error message is returned. Not specifying this field will result in uptime checks running from all regions.", + "enumDescriptions": [ + "Default value if no region is specified. Will result in uptime checks running from all regions.", + "Allows checks to run from locations within the United States of America.", + "Allows checks to run from locations within the continent of Europe.", + "Allows checks to run from locations within the continent of South America.", + "Allows checks to run from locations within the Asia Pacific area (ex: Singapore)." + ], + "items": { + "enum": [ + "REGION_UNSPECIFIED", + "USA", + "EUROPE", + "SOUTH_AMERICA", + "ASIA_PACIFIC" + ], + "type": "string" + }, + "type": "array" + }, + "tcpCheck": { + "$ref": "TcpCheck", + "description": "Contains information needed to make a TCP check." + }, + "timeout": { + "description": "The maximum amount of time to wait for the request to complete (must be between 1 and 60 seconds). Required.", + "format": "google-duration", + "type": "string" + } + }, + "type": "object" + }, + "UptimeCheckIp": { + "description": "Contains the region, location, and list of IP addresses where checkers in the location run from.", + "id": "UptimeCheckIp", + "properties": { + "ipAddress": { + "description": "The IP address from which the uptime check originates. This is a full IP address (not an IP address range). Most IP addresses, as of this publication, are in IPv4 format; however, one should not rely on the IP addresses being in IPv4 format indefinitely and should support interpreting this field in either IPv4 or IPv6 format.", + "type": "string" + }, + "location": { + "description": "A more specific location within the region that typically encodes a particular city/town/metro (and its containing state/province or country) within the broader umbrella region category.", + "type": "string" + }, + "region": { + "description": "A broad region category in which the IP address is located.", + "enum": [ + "REGION_UNSPECIFIED", + "USA", + "EUROPE", + "SOUTH_AMERICA", + "ASIA_PACIFIC" + ], + "enumDescriptions": [ + "Default value if no region is specified. Will result in uptime checks running from all regions.", + "Allows checks to run from locations within the United States of America.", + "Allows checks to run from locations within the continent of Europe.", + "Allows checks to run from locations within the continent of South America.", + "Allows checks to run from locations within the Asia Pacific area (ex: Singapore)." + ], + "type": "string" + } + }, + "type": "object" + }, + "VerifyNotificationChannelRequest": { + "description": "The VerifyNotificationChannel request.", + "id": "VerifyNotificationChannelRequest", + "properties": { + "code": { + "description": "The verification code that was delivered to the channel as a result of invoking the SendNotificationChannelVerificationCode API method or that was retrieved from a verified channel via GetNotificationChannelVerificationCode. For example, one might have \"G-123456\" or \"TKNZGhhd2EyN3I1MnRnMjRv\" (in general, one is only guaranteed that the code is valid UTF-8; one should not make any assumptions regarding the structure or format of the code).", + "type": "string" + } + }, + "type": "object" } }, - "rootUrl": "https://monitoring.googleapis.com/", - "ownerDomain": "google.com", - "name": "monitoring", - "batchPath": "batch" -} + "servicePath": "", + "title": "Stackdriver Monitoring API", + "version": "v3", + "version_module": true +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/monitoring/v3/monitoring-gen.go b/vendor/google.golang.org/api/monitoring/v3/monitoring-gen.go index 64b2552a1..89ed0d02e 100644 --- a/vendor/google.golang.org/api/monitoring/v3/monitoring-gen.go +++ b/vendor/google.golang.org/api/monitoring/v3/monitoring-gen.go @@ -91,10 +91,13 @@ func (s *Service) userAgent() string { func NewProjectsService(s *Service) *ProjectsService { rs := &ProjectsService{s: s} + rs.AlertPolicies = NewProjectsAlertPoliciesService(s) rs.CollectdTimeSeries = NewProjectsCollectdTimeSeriesService(s) rs.Groups = NewProjectsGroupsService(s) rs.MetricDescriptors = NewProjectsMetricDescriptorsService(s) rs.MonitoredResourceDescriptors = NewProjectsMonitoredResourceDescriptorsService(s) + rs.NotificationChannelDescriptors = NewProjectsNotificationChannelDescriptorsService(s) + rs.NotificationChannels = NewProjectsNotificationChannelsService(s) rs.TimeSeries = NewProjectsTimeSeriesService(s) rs.UptimeCheckConfigs = NewProjectsUptimeCheckConfigsService(s) return rs @@ -103,6 +106,8 @@ func NewProjectsService(s *Service) *ProjectsService { type ProjectsService struct { s *Service + AlertPolicies *ProjectsAlertPoliciesService + CollectdTimeSeries *ProjectsCollectdTimeSeriesService Groups *ProjectsGroupsService @@ -111,11 +116,24 @@ type ProjectsService struct { MonitoredResourceDescriptors *ProjectsMonitoredResourceDescriptorsService + NotificationChannelDescriptors *ProjectsNotificationChannelDescriptorsService + + NotificationChannels *ProjectsNotificationChannelsService + TimeSeries *ProjectsTimeSeriesService UptimeCheckConfigs *ProjectsUptimeCheckConfigsService } +func NewProjectsAlertPoliciesService(s *Service) *ProjectsAlertPoliciesService { + rs := &ProjectsAlertPoliciesService{s: s} + return rs +} + +type ProjectsAlertPoliciesService struct { + s *Service +} + func NewProjectsCollectdTimeSeriesService(s *Service) *ProjectsCollectdTimeSeriesService { rs := &ProjectsCollectdTimeSeriesService{s: s} return rs @@ -164,6 +182,24 @@ type ProjectsMonitoredResourceDescriptorsService struct { s *Service } +func NewProjectsNotificationChannelDescriptorsService(s *Service) *ProjectsNotificationChannelDescriptorsService { + rs := &ProjectsNotificationChannelDescriptorsService{s: s} + return rs +} + +type ProjectsNotificationChannelDescriptorsService struct { + s *Service +} + +func NewProjectsNotificationChannelsService(s *Service) *ProjectsNotificationChannelsService { + rs := &ProjectsNotificationChannelsService{s: s} + return rs +} + +type ProjectsNotificationChannelsService struct { + s *Service +} + func NewProjectsTimeSeriesService(s *Service) *ProjectsTimeSeriesService { rs := &ProjectsTimeSeriesService{s: s} return rs @@ -191,6 +227,361 @@ type UptimeCheckIpsService struct { s *Service } +// Aggregation: Describes how to combine multiple time series to provide +// different views of the data. Aggregation consists of an alignment +// step on individual time series (alignment_period and +// per_series_aligner) followed by an optional reduction step of the +// data across the aligned time series (cross_series_reducer and +// group_by_fields). For more details, see Aggregation. +type Aggregation struct { + // AlignmentPeriod: The alignment period for per-time series alignment. + // If present, alignmentPeriod must be at least 60 seconds. After + // per-time series alignment, each time series will contain data points + // only on the period boundaries. If perSeriesAligner is not specified + // or equals ALIGN_NONE, then this field is ignored. If perSeriesAligner + // is specified and does not equal ALIGN_NONE, then this field must be + // defined; otherwise an error is returned. + AlignmentPeriod string `json:"alignmentPeriod,omitempty"` + + // CrossSeriesReducer: The approach to be used to combine time series. + // Not all reducer functions may be applied to all time series, + // depending on the metric type and the value type of the original time + // series. Reduction may change the metric type of value type of the + // time series.Time series data must be aligned in order to perform + // cross-time series reduction. If crossSeriesReducer is specified, then + // perSeriesAligner must be specified and not equal ALIGN_NONE and + // alignmentPeriod must be specified; otherwise, an error is returned. + // + // Possible values: + // "REDUCE_NONE" - No cross-time series reduction. The output of the + // aligner is returned. + // "REDUCE_MEAN" - Reduce by computing the mean across time series for + // each alignment period. This reducer is valid for delta and gauge + // metrics with numeric or distribution values. The value type of the + // output is DOUBLE. + // "REDUCE_MIN" - Reduce by computing the minimum across time series + // for each alignment period. This reducer is valid for delta and gauge + // metrics with numeric values. The value type of the output is the same + // as the value type of the input. + // "REDUCE_MAX" - Reduce by computing the maximum across time series + // for each alignment period. This reducer is valid for delta and gauge + // metrics with numeric values. The value type of the output is the same + // as the value type of the input. + // "REDUCE_SUM" - Reduce by computing the sum across time series for + // each alignment period. This reducer is valid for delta and gauge + // metrics with numeric and distribution values. The value type of the + // output is the same as the value type of the input. + // "REDUCE_STDDEV" - Reduce by computing the standard deviation across + // time series for each alignment period. This reducer is valid for + // delta and gauge metrics with numeric or distribution values. The + // value type of the output is DOUBLE. + // "REDUCE_COUNT" - Reduce by computing the count of data points + // across time series for each alignment period. This reducer is valid + // for delta and gauge metrics of numeric, Boolean, distribution, and + // string value type. The value type of the output is INT64. + // "REDUCE_COUNT_TRUE" - Reduce by computing the count of True-valued + // data points across time series for each alignment period. This + // reducer is valid for delta and gauge metrics of Boolean value type. + // The value type of the output is INT64. + // "REDUCE_COUNT_FALSE" - Reduce by computing the count of + // False-valued data points across time series for each alignment + // period. This reducer is valid for delta and gauge metrics of Boolean + // value type. The value type of the output is INT64. + // "REDUCE_FRACTION_TRUE" - Reduce by computing the fraction of + // True-valued data points across time series for each alignment period. + // This reducer is valid for delta and gauge metrics of Boolean value + // type. The output value is in the range 0, 1 and has value type + // DOUBLE. + // "REDUCE_PERCENTILE_99" - Reduce by computing 99th percentile of + // data points across time series for each alignment period. This + // reducer is valid for gauge and delta metrics of numeric and + // distribution type. The value of the output is DOUBLE + // "REDUCE_PERCENTILE_95" - Reduce by computing 95th percentile of + // data points across time series for each alignment period. This + // reducer is valid for gauge and delta metrics of numeric and + // distribution type. The value of the output is DOUBLE + // "REDUCE_PERCENTILE_50" - Reduce by computing 50th percentile of + // data points across time series for each alignment period. This + // reducer is valid for gauge and delta metrics of numeric and + // distribution type. The value of the output is DOUBLE + // "REDUCE_PERCENTILE_05" - Reduce by computing 5th percentile of data + // points across time series for each alignment period. This reducer is + // valid for gauge and delta metrics of numeric and distribution type. + // The value of the output is DOUBLE + CrossSeriesReducer string `json:"crossSeriesReducer,omitempty"` + + // GroupByFields: The set of fields to preserve when crossSeriesReducer + // is specified. The groupByFields determine how the time series are + // partitioned into subsets prior to applying the aggregation function. + // Each subset contains time series that have the same value for each of + // the grouping fields. Each individual time series is a member of + // exactly one subset. The crossSeriesReducer is applied to each subset + // of time series. It is not possible to reduce across different + // resource types, so this field implicitly contains resource.type. + // Fields not specified in groupByFields are aggregated away. If + // groupByFields is not specified and all the time series have the same + // resource type, then the time series are aggregated into a single + // output time series. If crossSeriesReducer is not defined, this field + // is ignored. + GroupByFields []string `json:"groupByFields,omitempty"` + + // PerSeriesAligner: The approach to be used to align individual time + // series. Not all alignment functions may be applied to all time + // series, depending on the metric type and value type of the original + // time series. Alignment may change the metric type or the value type + // of the time series.Time series data must be aligned in order to + // perform cross-time series reduction. If crossSeriesReducer is + // specified, then perSeriesAligner must be specified and not equal + // ALIGN_NONE and alignmentPeriod must be specified; otherwise, an error + // is returned. + // + // Possible values: + // "ALIGN_NONE" - No alignment. Raw data is returned. Not valid if + // cross-time series reduction is requested. The value type of the + // result is the same as the value type of the input. + // "ALIGN_DELTA" - Align and convert to delta metric type. This + // alignment is valid for cumulative metrics and delta metrics. Aligning + // an existing delta metric to a delta metric requires that the + // alignment period be increased. The value type of the result is the + // same as the value type of the input.One can think of this aligner as + // a rate but without time units; that is, the output is conceptually + // (second_point - first_point). + // "ALIGN_RATE" - Align and convert to a rate. This alignment is valid + // for cumulative metrics and delta metrics with numeric values. The + // output is a gauge metric with value type DOUBLE.One can think of this + // aligner as conceptually providing the slope of the line that passes + // through the value at the start and end of the window. In other words, + // this is conceptually ((y1 - y0)/(t1 - t0)), and the output unit is + // one that has a "/time" dimension.If, by rate, you are looking for + // percentage change, see the ALIGN_PERCENT_CHANGE aligner option. + // "ALIGN_INTERPOLATE" - Align by interpolating between adjacent + // points around the period boundary. This alignment is valid for gauge + // metrics with numeric values. The value type of the result is the same + // as the value type of the input. + // "ALIGN_NEXT_OLDER" - Align by shifting the oldest data point before + // the period boundary to the boundary. This alignment is valid for + // gauge metrics. The value type of the result is the same as the value + // type of the input. + // "ALIGN_MIN" - Align time series via aggregation. The resulting data + // point in the alignment period is the minimum of all data points in + // the period. This alignment is valid for gauge and delta metrics with + // numeric values. The value type of the result is the same as the value + // type of the input. + // "ALIGN_MAX" - Align time series via aggregation. The resulting data + // point in the alignment period is the maximum of all data points in + // the period. This alignment is valid for gauge and delta metrics with + // numeric values. The value type of the result is the same as the value + // type of the input. + // "ALIGN_MEAN" - Align time series via aggregation. The resulting + // data point in the alignment period is the average or arithmetic mean + // of all data points in the period. This alignment is valid for gauge + // and delta metrics with numeric values. The value type of the output + // is DOUBLE. + // "ALIGN_COUNT" - Align time series via aggregation. The resulting + // data point in the alignment period is the count of all data points in + // the period. This alignment is valid for gauge and delta metrics with + // numeric or Boolean values. The value type of the output is INT64. + // "ALIGN_SUM" - Align time series via aggregation. The resulting data + // point in the alignment period is the sum of all data points in the + // period. This alignment is valid for gauge and delta metrics with + // numeric and distribution values. The value type of the output is the + // same as the value type of the input. + // "ALIGN_STDDEV" - Align time series via aggregation. The resulting + // data point in the alignment period is the standard deviation of all + // data points in the period. This alignment is valid for gauge and + // delta metrics with numeric values. The value type of the output is + // DOUBLE. + // "ALIGN_COUNT_TRUE" - Align time series via aggregation. The + // resulting data point in the alignment period is the count of + // True-valued data points in the period. This alignment is valid for + // gauge metrics with Boolean values. The value type of the output is + // INT64. + // "ALIGN_COUNT_FALSE" - Align time series via aggregation. The + // resulting data point in the alignment period is the count of + // False-valued data points in the period. This alignment is valid for + // gauge metrics with Boolean values. The value type of the output is + // INT64. + // "ALIGN_FRACTION_TRUE" - Align time series via aggregation. The + // resulting data point in the alignment period is the fraction of + // True-valued data points in the period. This alignment is valid for + // gauge metrics with Boolean values. The output value is in the range + // 0, 1 and has value type DOUBLE. + // "ALIGN_PERCENTILE_99" - Align time series via aggregation. The + // resulting data point in the alignment period is the 99th percentile + // of all data points in the period. This alignment is valid for gauge + // and delta metrics with distribution values. The output is a gauge + // metric with value type DOUBLE. + // "ALIGN_PERCENTILE_95" - Align time series via aggregation. The + // resulting data point in the alignment period is the 95th percentile + // of all data points in the period. This alignment is valid for gauge + // and delta metrics with distribution values. The output is a gauge + // metric with value type DOUBLE. + // "ALIGN_PERCENTILE_50" - Align time series via aggregation. The + // resulting data point in the alignment period is the 50th percentile + // of all data points in the period. This alignment is valid for gauge + // and delta metrics with distribution values. The output is a gauge + // metric with value type DOUBLE. + // "ALIGN_PERCENTILE_05" - Align time series via aggregation. The + // resulting data point in the alignment period is the 5th percentile of + // all data points in the period. This alignment is valid for gauge and + // delta metrics with distribution values. The output is a gauge metric + // with value type DOUBLE. + // "ALIGN_PERCENT_CHANGE" - Align and convert to a percentage change. + // This alignment is valid for gauge and delta metrics with numeric + // values. This alignment conceptually computes the equivalent of + // "((current - previous)/previous)*100" where previous value is + // determined based on the alignmentPeriod. In the event that previous + // is 0 the calculated value is infinity with the exception that if both + // (current - previous) and previous are 0 the calculated value is 0. A + // 10 minute moving mean is computed at each point of the time window + // prior to the above calculation to smooth the metric and prevent false + // positives from very short lived spikes. Only applicable for data that + // is >= 0. Any values < 0 are treated as no data. While delta metrics + // are accepted by this alignment special care should be taken that the + // values for the metric will always be positive. The output is a gauge + // metric with value type DOUBLE. + PerSeriesAligner string `json:"perSeriesAligner,omitempty"` + + // ForceSendFields is a list of field names (e.g. "AlignmentPeriod") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "AlignmentPeriod") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *Aggregation) MarshalJSON() ([]byte, error) { + type NoMethod Aggregation + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// AlertPolicy: A description of the conditions under which some aspect +// of your system is considered to be "unhealthy" and the ways to notify +// people or services about this state. For an overview of alert +// policies, see Introduction to Alerting. +type AlertPolicy struct { + // Combiner: How to combine the results of multiple conditions to + // determine if an incident should be opened. + // + // Possible values: + // "COMBINE_UNSPECIFIED" - An unspecified combiner. + // "AND" - Combine conditions using the logical AND operator. An + // incident is created only if all conditions are met simultaneously. + // This combiner is satisfied if all conditions are met, even if they + // are met on completely different resources. + // "OR" - Combine conditions using the logical OR operator. An + // incident is created if any of the listed conditions is met. + // "AND_WITH_MATCHING_RESOURCE" - Combine conditions using logical AND + // operator, but unlike the regular AND option, an incident is created + // only if all conditions are met simultaneously on at least one + // resource. + Combiner string `json:"combiner,omitempty"` + + // Conditions: A list of conditions for the policy. The conditions are + // combined by AND or OR according to the combiner field. If the + // combined conditions evaluate to true, then an incident is created. A + // policy can have from one to six conditions. + Conditions []*Condition `json:"conditions,omitempty"` + + // CreationRecord: A read-only record of the creation of the alerting + // policy. If provided in a call to create or update, this field will be + // ignored. + CreationRecord *MutationRecord `json:"creationRecord,omitempty"` + + // DisplayName: A short name or phrase used to identify the policy in + // dashboards, notifications, and incidents. To avoid confusion, don't + // use the same display name for multiple policies in the same project. + // The name is limited to 512 Unicode characters. + DisplayName string `json:"displayName,omitempty"` + + // Documentation: Documentation that is included with notifications and + // incidents related to this policy. Best practice is for the + // documentation to include information to help responders understand, + // mitigate, escalate, and correct the underlying problems detected by + // the alerting policy. Notification channels that have limited capacity + // might not show this documentation. + Documentation *Documentation `json:"documentation,omitempty"` + + // Enabled: Whether or not the policy is enabled. On write, the default + // interpretation if unset is that the policy is enabled. On read, + // clients should not make any assumption about the state if it has not + // been populated. The field should always be populated on List and Get + // operations, unless a field projection has been specified that strips + // it out. + Enabled bool `json:"enabled,omitempty"` + + // MutationRecord: A read-only record of the most recent change to the + // alerting policy. If provided in a call to create or update, this + // field will be ignored. + MutationRecord *MutationRecord `json:"mutationRecord,omitempty"` + + // Name: Required if the policy exists. The resource name for this + // policy. The syntax + // is: + // projects/[PROJECT_ID]/alertPolicies/[ALERT_POLICY_ID] + // [ALERT_POLIC + // Y_ID] is assigned by Stackdriver Monitoring when the policy is + // created. When calling the alertPolicies.create method, do not include + // the name field in the alerting policy passed as part of the request. + Name string `json:"name,omitempty"` + + // NotificationChannels: Identifies the notification channels to which + // notifications should be sent when incidents are opened or closed or + // when new violations occur on an already opened incident. Each element + // of this array corresponds to the name field in each of the + // NotificationChannel objects that are returned from the + // ListNotificationChannels method. The syntax of the entries in this + // field is: + // projects/[PROJECT_ID]/notificationChannels/[CHANNEL_ID] + // + NotificationChannels []string `json:"notificationChannels,omitempty"` + + // UserLabels: User-supplied key/value data to be used for organizing + // and identifying the AlertPolicy objects.The field can contain up to + // 64 entries. Each key and value is limited to 63 Unicode characters or + // 128 bytes, whichever is smaller. Labels and values can contain only + // lowercase letters, numerals, underscores, and dashes. Keys must begin + // with a letter. + UserLabels map[string]string `json:"userLabels,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "Combiner") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Combiner") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *AlertPolicy) MarshalJSON() ([]byte, error) { + type NoMethod AlertPolicy + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // BasicAuthentication: A type of authentication to perform against the // specified resource or URL that uses username and password. Currently, // only Basic authentication is supported in Uptime Monitoring. @@ -446,11 +837,72 @@ func (s *CollectdValueError) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// Condition: A condition is a true/false test that determines when an +// alerting policy should open an incident. If a condition evaluates to +// true, it signifies that something is wrong. +type Condition struct { + // ConditionAbsent: A condition that checks that a time series continues + // to receive new data points. + ConditionAbsent *MetricAbsence `json:"conditionAbsent,omitempty"` + + // ConditionThreshold: A condition that compares a time series against a + // threshold. + ConditionThreshold *MetricThreshold `json:"conditionThreshold,omitempty"` + + // DisplayName: A short name or phrase used to identify the condition in + // dashboards, notifications, and incidents. To avoid confusion, don't + // use the same display name for multiple conditions in the same policy. + DisplayName string `json:"displayName,omitempty"` + + // Name: Required if the condition exists. The unique resource name for + // this condition. Its syntax + // is: + // projects/[PROJECT_ID]/alertPolicies/[POLICY_ID]/conditions/[CONDIT + // ION_ID] + // [CONDITION_ID] is assigned by Stackdriver Monitoring when the + // condition is created as part of a new or updated alerting policy.When + // calling the alertPolicies.create method, do not include the name + // field in the conditions of the requested alerting policy. Stackdriver + // Monitoring creates the condition identifiers and includes them in the + // new policy.When calling the alertPolicies.update method to update a + // policy, including a condition name causes the existing condition to + // be updated. Conditions without names are added to the updated policy. + // Existing conditions are deleted if they are not updated.Best practice + // is to preserve [CONDITION_ID] if you make only small changes, such as + // those to condition thresholds, durations, or trigger values. + // Otherwise, treat the change as a new condition and let the existing + // condition be deleted. + Name string `json:"name,omitempty"` + + // ForceSendFields is a list of field names (e.g. "ConditionAbsent") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "ConditionAbsent") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *Condition) MarshalJSON() ([]byte, error) { + type NoMethod Condition + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // ContentMatcher: Used to perform string matching. Currently, this // matches on the exact content. In the future, it can be expanded to // allow for regular expressions and more complex matching. type ContentMatcher struct { - // Content: String content to match + // Content: String content to match (max 1024 bytes) Content string `json:"content,omitempty"` // ForceSendFields is a list of field names (e.g. "Content") to @@ -673,6 +1125,43 @@ func (s *Distribution) UnmarshalJSON(data []byte) error { return nil } +// Documentation: A content string and a MIME type that describes the +// content string's format. +type Documentation struct { + // Content: The text of the documentation, interpreted according to + // mime_type. The content may not exceed 8,192 Unicode characters and + // may not exceed more than 10,240 bytes when encoded in UTF-8 format, + // whichever is smaller. + Content string `json:"content,omitempty"` + + // MimeType: The format of the content field. Presently, only the value + // "text/markdown" is supported. See Markdown + // (https://en.wikipedia.org/wiki/Markdown) for more information. + MimeType string `json:"mimeType,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Content") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Content") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *Documentation) MarshalJSON() ([]byte, error) { + type NoMethod Documentation + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // Empty: A generic empty message that you can re-use to avoid defining // duplicated empty messages in your APIs. A typical example is to use // it as the request or the response type of an API method. For @@ -866,6 +1355,86 @@ func (s *Field) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// GetNotificationChannelVerificationCodeRequest: The +// GetNotificationChannelVerificationCode request. +type GetNotificationChannelVerificationCodeRequest struct { + // ExpireTime: The desired expiration time. If specified, the API will + // guarantee that the returned code will not be valid after the + // specified timestamp; however, the API cannot guarantee that the + // returned code will be valid for at least as long as the requested + // time (the API puts an upper bound on the amount of time for which a + // code may be valid). If omitted, a default expiration will be used, + // which may be less than the max permissible expiration (so specifying + // an expiration may extend the code's lifetime over omitting an + // expiration, even though the API does impose an upper limit on the + // maximum expiration that is permitted). + ExpireTime string `json:"expireTime,omitempty"` + + // ForceSendFields is a list of field names (e.g. "ExpireTime") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "ExpireTime") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GetNotificationChannelVerificationCodeRequest) MarshalJSON() ([]byte, error) { + type NoMethod GetNotificationChannelVerificationCodeRequest + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GetNotificationChannelVerificationCodeResponse: The +// GetNotificationChannelVerificationCode request. +type GetNotificationChannelVerificationCodeResponse struct { + // Code: The verification code, which may be used to verify other + // channels that have an equivalent identity (i.e. other channels of the + // same type with the same fingerprint such as other email channels with + // the same email address or other sms channels with the same number). + Code string `json:"code,omitempty"` + + // ExpireTime: The expiration time associated with the code that was + // returned. If an expiration was provided in the request, this is the + // minimum of the requested expiration in the request and the max + // permitted expiration. + ExpireTime string `json:"expireTime,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "Code") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Code") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GetNotificationChannelVerificationCodeResponse) MarshalJSON() ([]byte, error) { + type NoMethod GetNotificationChannelVerificationCodeResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // Group: The description of a dynamic collection of monitored // resources. Each group has a filter that is matched against monitored // resources and their associated metadata. If a group's filter matches @@ -955,7 +1524,8 @@ type HttpCheck struct { // comma-separated list of all the desired values as described at // https://www.w3.org/Protocols/rfc2616/rfc2616.txt (page 31). Entering // two separate headers with the same key in a Create call will cause - // the first to be overwritten by the second. + // the first to be overwritten by the second. The maximum number of + // headers allowed is 100. Headers map[string]string `json:"headers,omitempty"` // MaskHeaders: Boolean specifiying whether to encrypt the header @@ -1141,6 +1711,44 @@ func (s *Linear) UnmarshalJSON(data []byte) error { return nil } +// ListAlertPoliciesResponse: The protocol for the ListAlertPolicies +// response. +type ListAlertPoliciesResponse struct { + // AlertPolicies: The returned alert policies. + AlertPolicies []*AlertPolicy `json:"alertPolicies,omitempty"` + + // NextPageToken: If there might be more results than were returned, + // then this field is set to a non-empty value. To see the additional + // results, use that value as pageToken in the next call to this method. + NextPageToken string `json:"nextPageToken,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "AlertPolicies") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "AlertPolicies") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *ListAlertPoliciesResponse) MarshalJSON() ([]byte, error) { + type NoMethod ListAlertPoliciesResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // ListGroupMembersResponse: The ListGroupMembers response. type ListGroupMembersResponse struct { // Members: A set of monitored resources in the group. @@ -1296,6 +1904,87 @@ func (s *ListMonitoredResourceDescriptorsResponse) MarshalJSON() ([]byte, error) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// ListNotificationChannelDescriptorsResponse: The +// ListNotificationChannelDescriptors response. +type ListNotificationChannelDescriptorsResponse struct { + // ChannelDescriptors: The monitored resource descriptors supported for + // the specified project, optionally filtered. + ChannelDescriptors []*NotificationChannelDescriptor `json:"channelDescriptors,omitempty"` + + // NextPageToken: If not empty, indicates that there may be more results + // that match the request. Use the value in the page_token field in a + // subsequent request to fetch the next set of results. If empty, all + // results have been returned. + NextPageToken string `json:"nextPageToken,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "ChannelDescriptors") + // to unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "ChannelDescriptors") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *ListNotificationChannelDescriptorsResponse) MarshalJSON() ([]byte, error) { + type NoMethod ListNotificationChannelDescriptorsResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// ListNotificationChannelsResponse: The ListNotificationChannels +// response. +type ListNotificationChannelsResponse struct { + // NextPageToken: If not empty, indicates that there may be more results + // that match the request. Use the value in the page_token field in a + // subsequent request to fetch the next set of results. If empty, all + // results have been returned. + NextPageToken string `json:"nextPageToken,omitempty"` + + // NotificationChannels: The notification channels defined for the + // specified project. + NotificationChannels []*NotificationChannel `json:"notificationChannels,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "NextPageToken") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "NextPageToken") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *ListNotificationChannelsResponse) MarshalJSON() ([]byte, error) { + type NoMethod ListNotificationChannelsResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // ListTimeSeriesResponse: The ListTimeSeries response. type ListTimeSeriesResponse struct { // NextPageToken: If there are more results than have been returned, @@ -1344,6 +2033,10 @@ type ListUptimeCheckConfigsResponse struct { // call (in the request message's page_token field). NextPageToken string `json:"nextPageToken,omitempty"` + // TotalSize: The total number of uptime check configurations for the + // project, irrespective of any pagination. + TotalSize int64 `json:"totalSize,omitempty"` + // UptimeCheckConfigs: The returned uptime check configurations. UptimeCheckConfigs []*UptimeCheckConfig `json:"uptimeCheckConfigs,omitempty"` @@ -1450,6 +2143,67 @@ func (s *Metric) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// MetricAbsence: A condition type that checks that monitored resources +// are reporting data. The configuration defines a metric and a set of +// monitored resources. The predicate is considered in violation when a +// time series for the specified metric of a monitored resource does not +// include any data in the specified duration. +type MetricAbsence struct { + // Aggregations: Specifies the alignment of data points in individual + // time series as well as how to combine the retrieved time series + // together (such as when aggregating multiple streams on each resource + // to a single stream for each resource or when aggregating streams + // across all members of a group of resrouces). Multiple aggregations + // are applied in the order specified.This field is similar to the one + // in the MetricService.ListTimeSeries request. It is advisable to use + // the ListTimeSeries method when debugging this field. + Aggregations []*Aggregation `json:"aggregations,omitempty"` + + // Duration: The amount of time that a time series must fail to report + // new data to be considered failing. Currently, only values that are a + // multiple of a minute--e.g. 60, 120, or 300 seconds--are supported. If + // an invalid value is given, an error will be returned. The + // Duration.nanos field is ignored. + Duration string `json:"duration,omitempty"` + + // Filter: A filter that identifies which time series should be compared + // with the threshold.The filter is similar to the one that is specified + // in the MetricService.ListTimeSeries request (that call is useful to + // verify the time series that will be retrieved / processed) and must + // specify the metric type and optionally may contain restrictions on + // resource type, resource labels, and metric labels. This field may not + // exceed 2048 Unicode characters in length. + Filter string `json:"filter,omitempty"` + + // Trigger: The number/percent of time series for which the comparison + // must hold in order for the condition to trigger. If unspecified, then + // the condition will trigger if the comparison is true for any of the + // time series that have been identified by filter and aggregations. + Trigger *Trigger `json:"trigger,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Aggregations") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Aggregations") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *MetricAbsence) MarshalJSON() ([]byte, error) { + type NoMethod MetricAbsence + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // MetricDescriptor: Defines a metric type and its schema. Once a metric // descriptor is created, deleting or altering it stops data collection // and makes the metric type's existing data unusable. @@ -1552,6 +2306,135 @@ func (s *MetricDescriptor) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// MetricThreshold: A condition type that compares a collection of time +// series against a threshold. +type MetricThreshold struct { + // Aggregations: Specifies the alignment of data points in individual + // time series as well as how to combine the retrieved time series + // together (such as when aggregating multiple streams on each resource + // to a single stream for each resource or when aggregating streams + // across all members of a group of resrouces). Multiple aggregations + // are applied in the order specified.This field is similar to the one + // in the MetricService.ListTimeSeries request. It is advisable to use + // the ListTimeSeries method when debugging this field. + Aggregations []*Aggregation `json:"aggregations,omitempty"` + + // Comparison: The comparison to apply between the time series + // (indicated by filter and aggregation) and the threshold (indicated by + // threshold_value). The comparison is applied on each time series, with + // the time series on the left-hand side and the threshold on the + // right-hand side.Only COMPARISON_LT and COMPARISON_GT are supported + // currently. + // + // Possible values: + // "COMPARISON_UNSPECIFIED" - No ordering relationship is specified. + // "COMPARISON_GT" - The left argument is greater than the right + // argument. + // "COMPARISON_GE" - The left argument is greater than or equal to the + // right argument. + // "COMPARISON_LT" - The left argument is less than the right + // argument. + // "COMPARISON_LE" - The left argument is less than or equal to the + // right argument. + // "COMPARISON_EQ" - The left argument is equal to the right argument. + // "COMPARISON_NE" - The left argument is not equal to the right + // argument. + Comparison string `json:"comparison,omitempty"` + + // DenominatorAggregations: Specifies the alignment of data points in + // individual time series selected by denominatorFilter as well as how + // to combine the retrieved time series together (such as when + // aggregating multiple streams on each resource to a single stream for + // each resource or when aggregating streams across all members of a + // group of resources).When computing ratios, the aggregations and + // denominator_aggregations fields must use the same alignment period + // and produce time series that have the same periodicity and + // labels.This field is similar to the one in the + // MetricService.ListTimeSeries request. It is advisable to use the + // ListTimeSeries method when debugging this field. + DenominatorAggregations []*Aggregation `json:"denominatorAggregations,omitempty"` + + // DenominatorFilter: A filter that identifies a time series that should + // be used as the denominator of a ratio that will be compared with the + // threshold. If a denominator_filter is specified, the time series + // specified by the filter field will be used as the numerator.The + // filter is similar to the one that is specified in the + // MetricService.ListTimeSeries request (that call is useful to verify + // the time series that will be retrieved / processed) and must specify + // the metric type and optionally may contain restrictions on resource + // type, resource labels, and metric labels. This field may not exceed + // 2048 Unicode characters in length. + DenominatorFilter string `json:"denominatorFilter,omitempty"` + + // Duration: The amount of time that a time series must violate the + // threshold to be considered failing. Currently, only values that are a + // multiple of a minute--e.g. 60, 120, or 300 seconds--are supported. If + // an invalid value is given, an error will be returned. The + // Duration.nanos field is ignored. When choosing a duration, it is + // useful to keep in mind the frequency of the underlying time series + // data (which may also be affected by any alignments specified in the + // aggregation field); a good duration is long enough so that a single + // outlier does not generate spurious alerts, but short enough that + // unhealthy states are detected and alerted on quickly. + Duration string `json:"duration,omitempty"` + + // Filter: A filter that identifies which time series should be compared + // with the threshold.The filter is similar to the one that is specified + // in the MetricService.ListTimeSeries request (that call is useful to + // verify the time series that will be retrieved / processed) and must + // specify the metric type and optionally may contain restrictions on + // resource type, resource labels, and metric labels. This field may not + // exceed 2048 Unicode characters in length. + Filter string `json:"filter,omitempty"` + + // ThresholdValue: A value against which to compare the time series. + ThresholdValue float64 `json:"thresholdValue,omitempty"` + + // Trigger: The number/percent of time series for which the comparison + // must hold in order for the condition to trigger. If unspecified, then + // the condition will trigger if the comparison is true for any of the + // time series that have been identified by filter and aggregations, or + // by the ratio, if denominator_filter and denominator_aggregations are + // specified. + Trigger *Trigger `json:"trigger,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Aggregations") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Aggregations") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *MetricThreshold) MarshalJSON() ([]byte, error) { + type NoMethod MetricThreshold + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +func (s *MetricThreshold) UnmarshalJSON(data []byte) error { + type NoMethod MetricThreshold + var s1 struct { + ThresholdValue gensupport.JSONFloat64 `json:"thresholdValue"` + *NoMethod + } + s1.NoMethod = (*NoMethod)(s) + if err := json.Unmarshal(data, &s1); err != nil { + return err + } + s.ThresholdValue = float64(s1.ThresholdValue) + return nil +} + // MonitoredResource: An object representing a resource that can be used // for monitoring, logging, billing, or other purposes. Examples include // virtual machine instances, databases, and storage devices such as @@ -1712,6 +2595,222 @@ func (s *MonitoredResourceMetadata) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// MutationRecord: Describes a change made to a configuration. +type MutationRecord struct { + // MutateTime: When the change occurred. + MutateTime string `json:"mutateTime,omitempty"` + + // MutatedBy: The email address of the user making the change. + MutatedBy string `json:"mutatedBy,omitempty"` + + // ForceSendFields is a list of field names (e.g. "MutateTime") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "MutateTime") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *MutationRecord) MarshalJSON() ([]byte, error) { + type NoMethod MutationRecord + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// NotificationChannel: A NotificationChannel is a medium through which +// an alert is delivered when a policy violation is detected. Examples +// of channels include email, SMS, and third-party messaging +// applications. Fields containing sensitive information like +// authentication tokens or contact info are only partially populated on +// retrieval. +type NotificationChannel struct { + // Description: An optional human-readable description of this + // notification channel. This description may provide additional + // details, beyond the display name, for the channel. This may not + // exceeed 1024 Unicode characters. + Description string `json:"description,omitempty"` + + // DisplayName: An optional human-readable name for this notification + // channel. It is recommended that you specify a non-empty and unique + // name in order to make it easier to identify the channels in your + // project, though this is not enforced. The display name is limited to + // 512 Unicode characters. + DisplayName string `json:"displayName,omitempty"` + + // Enabled: Whether notifications are forwarded to the described + // channel. This makes it possible to disable delivery of notifications + // to a particular channel without removing the channel from all + // alerting policies that reference the channel. This is a more + // convenient approach when the change is temporary and you want to + // receive notifications from the same set of alerting policies on the + // channel at some point in the future. + Enabled bool `json:"enabled,omitempty"` + + // Labels: Configuration fields that define the channel and its + // behavior. The permissible and required labels are specified in the + // NotificationChannelDescriptor.labels of the + // NotificationChannelDescriptor corresponding to the type field. + Labels map[string]string `json:"labels,omitempty"` + + // Name: The full REST resource name for this channel. The syntax + // is: + // projects/[PROJECT_ID]/notificationChannels/[CHANNEL_ID] + // The [CHANNEL_ID] is automatically assigned by the server on creation. + Name string `json:"name,omitempty"` + + // Type: The type of the notification channel. This field matches the + // value of the NotificationChannelDescriptor.type field. + Type string `json:"type,omitempty"` + + // UserLabels: User-supplied key/value data that does not need to + // conform to the corresponding NotificationChannelDescriptor's schema, + // unlike the labels field. This field is intended to be used for + // organizing and identifying the NotificationChannel objects.The field + // can contain up to 64 entries. Each key and value is limited to 63 + // Unicode characters or 128 bytes, whichever is smaller. Labels and + // values can contain only lowercase letters, numerals, underscores, and + // dashes. Keys must begin with a letter. + UserLabels map[string]string `json:"userLabels,omitempty"` + + // VerificationStatus: Indicates whether this channel has been verified + // or not. On a ListNotificationChannels or GetNotificationChannel + // operation, this field is expected to be populated.If the value is + // UNVERIFIED, then it indicates that the channel is non-functioning (it + // both requires verification and lacks verification); otherwise, it is + // assumed that the channel works.If the channel is neither VERIFIED nor + // UNVERIFIED, it implies that the channel is of a type that does not + // require verification or that this specific channel has been exempted + // from verification because it was created prior to verification being + // required for channels of this type.This field cannot be modified + // using a standard UpdateNotificationChannel operation. To change the + // value of this field, you must call VerifyNotificationChannel. + // + // Possible values: + // "VERIFICATION_STATUS_UNSPECIFIED" - Sentinel value used to indicate + // that the state is unknown, omitted, or is not applicable (as in the + // case of channels that neither support nor require verification in + // order to function). + // "UNVERIFIED" - The channel has yet to be verified and requires + // verification to function. Note that this state also applies to the + // case where the verification process has been initiated by sending a + // verification code but where the verification code has not been + // submitted to complete the process. + // "VERIFIED" - It has been proven that notifications can be received + // on this notification channel and that someone on the project has + // access to messages that are delivered to that channel. + VerificationStatus string `json:"verificationStatus,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "Description") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Description") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *NotificationChannel) MarshalJSON() ([]byte, error) { + type NoMethod NotificationChannel + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// NotificationChannelDescriptor: A description of a notification +// channel. The descriptor includes the properties of the channel and +// the set of labels or fields that must be specified to configure +// channels of a given type. +type NotificationChannelDescriptor struct { + // Description: A human-readable description of the notification channel + // type. The description may include a description of the properties of + // the channel and pointers to external documentation. + Description string `json:"description,omitempty"` + + // DisplayName: A human-readable name for the notification channel type. + // This form of the name is suitable for a user interface. + DisplayName string `json:"displayName,omitempty"` + + // Labels: The set of labels that must be defined to identify a + // particular channel of the corresponding type. Each label includes a + // description for how that field should be populated. + Labels []*LabelDescriptor `json:"labels,omitempty"` + + // Name: The full REST resource name for this descriptor. The syntax + // is: + // projects/[PROJECT_ID]/notificationChannelDescriptors/[TYPE] + // In the above, [TYPE] is the value of the type field. + Name string `json:"name,omitempty"` + + // SupportedTiers: The tiers that support this notification channel; the + // project service tier must be one of the supported_tiers. + // + // Possible values: + // "SERVICE_TIER_UNSPECIFIED" - An invalid sentinel value, used to + // indicate that a tier has not been provided explicitly. + // "SERVICE_TIER_BASIC" - The Stackdriver Basic tier, a free tier of + // service that provides basic features, a moderate allotment of logs, + // and access to built-in metrics. A number of features are not + // available in this tier. For more details, see the service tiers + // documentation (https://cloud.google.com/monitoring/accounts/tiers). + // "SERVICE_TIER_PREMIUM" - The Stackdriver Premium tier, a higher, + // more expensive tier of service that provides access to all + // Stackdriver features, lets you use Stackdriver with AWS accounts, and + // has a larger allotments for logs and metrics. For more details, see + // the service tiers documentation + // (https://cloud.google.com/monitoring/accounts/tiers). + SupportedTiers []string `json:"supportedTiers,omitempty"` + + // Type: The type of notification channel, such as "email", "sms", etc. + // Notification channel types are globally unique. + Type string `json:"type,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "Description") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Description") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *NotificationChannelDescriptor) MarshalJSON() ([]byte, error) { + type NoMethod NotificationChannelDescriptor + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // Option: A protocol buffer option, which can be attached to a message, // field, enumeration, etc. type Option struct { @@ -1851,7 +2950,7 @@ type ResourceGroup struct { // "RESOURCE_TYPE_UNSPECIFIED" - Default value (not valid). // "INSTANCE" - A group of instances from Google Cloud Platform (GCP) // or Amazon Web Services (AWS). - // "AWS_ELB_LOAD_BALANCER" - A group of AWS load balancers. + // "AWS_ELB_LOAD_BALANCER" - A group of Amazon ELB load balancers. ResourceType string `json:"resourceType,omitempty"` // ForceSendFields is a list of field names (e.g. "GroupId") to @@ -1877,6 +2976,11 @@ func (s *ResourceGroup) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// SendNotificationChannelVerificationCodeRequest: The +// SendNotificationChannelVerificationCode request. +type SendNotificationChannelVerificationCodeRequest struct { +} + // SourceContext: SourceContext represents information about the source // of a protobuf element, like the file in which it is defined. type SourceContext struct { @@ -2139,6 +3243,55 @@ func (s *TimeSeries) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// Trigger: Specifies how many time series must fail a predicate to +// trigger a condition. If not specified, then a {count: 1} trigger is +// used. +type Trigger struct { + // Count: The absolute number of time series that must fail the + // predicate for the condition to be triggered. + Count int64 `json:"count,omitempty"` + + // Percent: The percentage of time series that must fail the predicate + // for the condition to be triggered. + Percent float64 `json:"percent,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Count") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Count") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *Trigger) MarshalJSON() ([]byte, error) { + type NoMethod Trigger + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +func (s *Trigger) UnmarshalJSON(data []byte) error { + type NoMethod Trigger + var s1 struct { + Percent gensupport.JSONFloat64 `json:"percent"` + *NoMethod + } + s1.NoMethod = (*NoMethod)(s) + if err := json.Unmarshal(data, &s1); err != nil { + return err + } + s.Percent = float64(s1.Percent) + return nil +} + // Type: A protocol buffer message type. type Type struct { // Fields: The list of fields. @@ -2276,8 +3429,11 @@ type UptimeCheckConfig struct { // InternalCheckers. IsInternal bool `json:"isInternal,omitempty"` - // MonitoredResource: The monitored resource associated with the - // configuration. + // MonitoredResource: The monitored resource + // (https://cloud.google.com/monitoring/api/resources) associated with + // the configuration. The following monitored resource types are + // supported for uptime checks: uptime_url gce_instance gae_app + // aws_ec2_instance aws_elb_load_balancer MonitoredResource *MonitoredResource `json:"monitoredResource,omitempty"` // Name: A unique resource name for this UptimeCheckConfig. The format @@ -2287,8 +3443,10 @@ type UptimeCheckConfig struct { // in the response. Name string `json:"name,omitempty"` - // Period: How often the uptime check is performed. Currently, only 1, - // 5, 10, and 15 minutes are supported. Required. + // Period: How often, in seconds, the uptime check is performed. + // Currently, the only supported values are 60s (1 minute), 300s (5 + // minutes), 600s (10 minutes), and 900s (15 minutes). Optional, + // defaults to 300s. Period string `json:"period,omitempty"` // ResourceGroup: The group resource associated with the configuration. @@ -2403,6 +3561,830 @@ func (s *UptimeCheckIp) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// VerifyNotificationChannelRequest: The VerifyNotificationChannel +// request. +type VerifyNotificationChannelRequest struct { + // Code: The verification code that was delivered to the channel as a + // result of invoking the SendNotificationChannelVerificationCode API + // method or that was retrieved from a verified channel via + // GetNotificationChannelVerificationCode. For example, one might have + // "G-123456" or "TKNZGhhd2EyN3I1MnRnMjRv" (in general, one is only + // guaranteed that the code is valid UTF-8; one should not make any + // assumptions regarding the structure or format of the code). + Code string `json:"code,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Code") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Code") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *VerifyNotificationChannelRequest) MarshalJSON() ([]byte, error) { + type NoMethod VerifyNotificationChannelRequest + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// method id "monitoring.projects.alertPolicies.create": + +type ProjectsAlertPoliciesCreateCall struct { + s *Service + name string + alertpolicy *AlertPolicy + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Create: Creates a new alerting policy. +func (r *ProjectsAlertPoliciesService) Create(name string, alertpolicy *AlertPolicy) *ProjectsAlertPoliciesCreateCall { + c := &ProjectsAlertPoliciesCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + c.alertpolicy = alertpolicy + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsAlertPoliciesCreateCall) Fields(s ...googleapi.Field) *ProjectsAlertPoliciesCreateCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsAlertPoliciesCreateCall) Context(ctx context.Context) *ProjectsAlertPoliciesCreateCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsAlertPoliciesCreateCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsAlertPoliciesCreateCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.alertpolicy) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+name}/alertPolicies") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("POST", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "monitoring.projects.alertPolicies.create" call. +// Exactly one of *AlertPolicy or error will be non-nil. Any non-2xx +// status code is an error. Response headers are in either +// *AlertPolicy.ServerResponse.Header or (if a response was returned at +// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified +// to check whether the returned error was because +// http.StatusNotModified was returned. +func (c *ProjectsAlertPoliciesCreateCall) Do(opts ...googleapi.CallOption) (*AlertPolicy, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &AlertPolicy{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Creates a new alerting policy.", + // "flatPath": "v3/projects/{projectsId}/alertPolicies", + // "httpMethod": "POST", + // "id": "monitoring.projects.alertPolicies.create", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "The project in which to create the alerting policy. The format is projects/[PROJECT_ID].Note that this field names the parent container in which the alerting policy will be written, not the name of the created policy. The alerting policy that is returned will have a name that contains a normalized representation of this name as a prefix but adds a suffix of the form /alertPolicies/[POLICY_ID], identifying the policy in the container.", + // "location": "path", + // "pattern": "^projects/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v3/{+name}/alertPolicies", + // "request": { + // "$ref": "AlertPolicy" + // }, + // "response": { + // "$ref": "AlertPolicy" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform", + // "https://www.googleapis.com/auth/monitoring" + // ] + // } + +} + +// method id "monitoring.projects.alertPolicies.delete": + +type ProjectsAlertPoliciesDeleteCall struct { + s *Service + name string + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Delete: Deletes an alerting policy. +func (r *ProjectsAlertPoliciesService) Delete(name string) *ProjectsAlertPoliciesDeleteCall { + c := &ProjectsAlertPoliciesDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsAlertPoliciesDeleteCall) Fields(s ...googleapi.Field) *ProjectsAlertPoliciesDeleteCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsAlertPoliciesDeleteCall) Context(ctx context.Context) *ProjectsAlertPoliciesDeleteCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsAlertPoliciesDeleteCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsAlertPoliciesDeleteCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+name}") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("DELETE", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "monitoring.projects.alertPolicies.delete" call. +// Exactly one of *Empty or error will be non-nil. Any non-2xx status +// code is an error. Response headers are in either +// *Empty.ServerResponse.Header or (if a response was returned at all) +// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to +// check whether the returned error was because http.StatusNotModified +// was returned. +func (c *ProjectsAlertPoliciesDeleteCall) Do(opts ...googleapi.CallOption) (*Empty, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &Empty{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Deletes an alerting policy.", + // "flatPath": "v3/projects/{projectsId}/alertPolicies/{alertPoliciesId}", + // "httpMethod": "DELETE", + // "id": "monitoring.projects.alertPolicies.delete", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "The alerting policy to delete. The format is:\nprojects/[PROJECT_ID]/alertPolicies/[ALERT_POLICY_ID]\nFor more information, see AlertPolicy.", + // "location": "path", + // "pattern": "^projects/[^/]+/alertPolicies/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v3/{+name}", + // "response": { + // "$ref": "Empty" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform", + // "https://www.googleapis.com/auth/monitoring" + // ] + // } + +} + +// method id "monitoring.projects.alertPolicies.get": + +type ProjectsAlertPoliciesGetCall struct { + s *Service + name string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// Get: Gets a single alerting policy. +func (r *ProjectsAlertPoliciesService) Get(name string) *ProjectsAlertPoliciesGetCall { + c := &ProjectsAlertPoliciesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsAlertPoliciesGetCall) Fields(s ...googleapi.Field) *ProjectsAlertPoliciesGetCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// IfNoneMatch sets the optional parameter which makes the operation +// fail if the object's ETag matches the given value. This is useful for +// getting updates only after the object has changed since the last +// request. Use googleapi.IsNotModified to check whether the response +// error from Do is the result of In-None-Match. +func (c *ProjectsAlertPoliciesGetCall) IfNoneMatch(entityTag string) *ProjectsAlertPoliciesGetCall { + c.ifNoneMatch_ = entityTag + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsAlertPoliciesGetCall) Context(ctx context.Context) *ProjectsAlertPoliciesGetCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsAlertPoliciesGetCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsAlertPoliciesGetCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + if c.ifNoneMatch_ != "" { + reqHeaders.Set("If-None-Match", c.ifNoneMatch_) + } + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+name}") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("GET", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "monitoring.projects.alertPolicies.get" call. +// Exactly one of *AlertPolicy or error will be non-nil. Any non-2xx +// status code is an error. Response headers are in either +// *AlertPolicy.ServerResponse.Header or (if a response was returned at +// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified +// to check whether the returned error was because +// http.StatusNotModified was returned. +func (c *ProjectsAlertPoliciesGetCall) Do(opts ...googleapi.CallOption) (*AlertPolicy, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &AlertPolicy{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Gets a single alerting policy.", + // "flatPath": "v3/projects/{projectsId}/alertPolicies/{alertPoliciesId}", + // "httpMethod": "GET", + // "id": "monitoring.projects.alertPolicies.get", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "The alerting policy to retrieve. The format is\nprojects/[PROJECT_ID]/alertPolicies/[ALERT_POLICY_ID]\n", + // "location": "path", + // "pattern": "^projects/[^/]+/alertPolicies/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v3/{+name}", + // "response": { + // "$ref": "AlertPolicy" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform", + // "https://www.googleapis.com/auth/monitoring", + // "https://www.googleapis.com/auth/monitoring.read" + // ] + // } + +} + +// method id "monitoring.projects.alertPolicies.list": + +type ProjectsAlertPoliciesListCall struct { + s *Service + name string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// List: Lists the existing alerting policies for the project. +func (r *ProjectsAlertPoliciesService) List(name string) *ProjectsAlertPoliciesListCall { + c := &ProjectsAlertPoliciesListCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + return c +} + +// Filter sets the optional parameter "filter": If provided, this field +// specifies the criteria that must be met by alert policies to be +// included in the response.For more details, see sorting and filtering. +func (c *ProjectsAlertPoliciesListCall) Filter(filter string) *ProjectsAlertPoliciesListCall { + c.urlParams_.Set("filter", filter) + return c +} + +// OrderBy sets the optional parameter "orderBy": A comma-separated list +// of fields by which to sort the result. Supports the same set of field +// references as the filter field. Entries can be prefixed with a minus +// sign to sort by the field in descending order.For more details, see +// sorting and filtering. +func (c *ProjectsAlertPoliciesListCall) OrderBy(orderBy string) *ProjectsAlertPoliciesListCall { + c.urlParams_.Set("orderBy", orderBy) + return c +} + +// PageSize sets the optional parameter "pageSize": The maximum number +// of results to return in a single response. +func (c *ProjectsAlertPoliciesListCall) PageSize(pageSize int64) *ProjectsAlertPoliciesListCall { + c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) + return c +} + +// PageToken sets the optional parameter "pageToken": If this field is +// not empty then it must contain the nextPageToken value returned by a +// previous call to this method. Using this field causes the method to +// return more results from the previous method call. +func (c *ProjectsAlertPoliciesListCall) PageToken(pageToken string) *ProjectsAlertPoliciesListCall { + c.urlParams_.Set("pageToken", pageToken) + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsAlertPoliciesListCall) Fields(s ...googleapi.Field) *ProjectsAlertPoliciesListCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// IfNoneMatch sets the optional parameter which makes the operation +// fail if the object's ETag matches the given value. This is useful for +// getting updates only after the object has changed since the last +// request. Use googleapi.IsNotModified to check whether the response +// error from Do is the result of In-None-Match. +func (c *ProjectsAlertPoliciesListCall) IfNoneMatch(entityTag string) *ProjectsAlertPoliciesListCall { + c.ifNoneMatch_ = entityTag + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsAlertPoliciesListCall) Context(ctx context.Context) *ProjectsAlertPoliciesListCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsAlertPoliciesListCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsAlertPoliciesListCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + if c.ifNoneMatch_ != "" { + reqHeaders.Set("If-None-Match", c.ifNoneMatch_) + } + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+name}/alertPolicies") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("GET", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "monitoring.projects.alertPolicies.list" call. +// Exactly one of *ListAlertPoliciesResponse or error will be non-nil. +// Any non-2xx status code is an error. Response headers are in either +// *ListAlertPoliciesResponse.ServerResponse.Header or (if a response +// was returned at all) in error.(*googleapi.Error).Header. Use +// googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *ProjectsAlertPoliciesListCall) Do(opts ...googleapi.CallOption) (*ListAlertPoliciesResponse, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &ListAlertPoliciesResponse{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Lists the existing alerting policies for the project.", + // "flatPath": "v3/projects/{projectsId}/alertPolicies", + // "httpMethod": "GET", + // "id": "monitoring.projects.alertPolicies.list", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "filter": { + // "description": "If provided, this field specifies the criteria that must be met by alert policies to be included in the response.For more details, see sorting and filtering.", + // "location": "query", + // "type": "string" + // }, + // "name": { + // "description": "The project whose alert policies are to be listed. The format is\nprojects/[PROJECT_ID]\nNote that this field names the parent container in which the alerting policies to be listed are stored. To retrieve a single alerting policy by name, use the GetAlertPolicy operation, instead.", + // "location": "path", + // "pattern": "^projects/[^/]+$", + // "required": true, + // "type": "string" + // }, + // "orderBy": { + // "description": "A comma-separated list of fields by which to sort the result. Supports the same set of field references as the filter field. Entries can be prefixed with a minus sign to sort by the field in descending order.For more details, see sorting and filtering.", + // "location": "query", + // "type": "string" + // }, + // "pageSize": { + // "description": "The maximum number of results to return in a single response.", + // "format": "int32", + // "location": "query", + // "type": "integer" + // }, + // "pageToken": { + // "description": "If this field is not empty then it must contain the nextPageToken value returned by a previous call to this method. Using this field causes the method to return more results from the previous method call.", + // "location": "query", + // "type": "string" + // } + // }, + // "path": "v3/{+name}/alertPolicies", + // "response": { + // "$ref": "ListAlertPoliciesResponse" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform", + // "https://www.googleapis.com/auth/monitoring", + // "https://www.googleapis.com/auth/monitoring.read" + // ] + // } + +} + +// Pages invokes f for each page of results. +// A non-nil error returned from f will halt the iteration. +// The provided context supersedes any context provided to the Context method. +func (c *ProjectsAlertPoliciesListCall) Pages(ctx context.Context, f func(*ListAlertPoliciesResponse) error) error { + c.ctx_ = ctx + defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point + for { + x, err := c.Do() + if err != nil { + return err + } + if err := f(x); err != nil { + return err + } + if x.NextPageToken == "" { + return nil + } + c.PageToken(x.NextPageToken) + } +} + +// method id "monitoring.projects.alertPolicies.patch": + +type ProjectsAlertPoliciesPatchCall struct { + s *Service + name string + alertpolicy *AlertPolicy + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Patch: Updates an alerting policy. You can either replace the entire +// policy with a new one or replace only certain fields in the current +// alerting policy by specifying the fields to be updated via +// updateMask. Returns the updated alerting policy. +func (r *ProjectsAlertPoliciesService) Patch(name string, alertpolicy *AlertPolicy) *ProjectsAlertPoliciesPatchCall { + c := &ProjectsAlertPoliciesPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + c.alertpolicy = alertpolicy + return c +} + +// UpdateMask sets the optional parameter "updateMask": A list of +// alerting policy field names. If this field is not empty, each listed +// field in the existing alerting policy is set to the value of the +// corresponding field in the supplied policy (alert_policy), or to the +// field's default value if the field is not in the supplied alerting +// policy. Fields not listed retain their previous value.Examples of +// valid field masks include display_name, documentation, +// documentation.content, documentation.mime_type, user_labels, +// user_label.nameofkey, enabled, conditions, combiner, etc.If this +// field is empty, then the supplied alerting policy replaces the +// existing policy. It is the same as deleting the existing policy and +// adding the supplied policy, except for the following: +// The new policy will have the same [ALERT_POLICY_ID] as the former +// policy. This gives you continuity with the former policy in your +// notifications and incidents. +// Conditions in the new policy will keep their former [CONDITION_ID] if +// the supplied condition includes the name field with that +// [CONDITION_ID]. If the supplied condition omits the name field, then +// a new [CONDITION_ID] is created. +func (c *ProjectsAlertPoliciesPatchCall) UpdateMask(updateMask string) *ProjectsAlertPoliciesPatchCall { + c.urlParams_.Set("updateMask", updateMask) + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsAlertPoliciesPatchCall) Fields(s ...googleapi.Field) *ProjectsAlertPoliciesPatchCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsAlertPoliciesPatchCall) Context(ctx context.Context) *ProjectsAlertPoliciesPatchCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsAlertPoliciesPatchCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsAlertPoliciesPatchCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.alertpolicy) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+name}") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("PATCH", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "monitoring.projects.alertPolicies.patch" call. +// Exactly one of *AlertPolicy or error will be non-nil. Any non-2xx +// status code is an error. Response headers are in either +// *AlertPolicy.ServerResponse.Header or (if a response was returned at +// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified +// to check whether the returned error was because +// http.StatusNotModified was returned. +func (c *ProjectsAlertPoliciesPatchCall) Do(opts ...googleapi.CallOption) (*AlertPolicy, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &AlertPolicy{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Updates an alerting policy. You can either replace the entire policy with a new one or replace only certain fields in the current alerting policy by specifying the fields to be updated via updateMask. Returns the updated alerting policy.", + // "flatPath": "v3/projects/{projectsId}/alertPolicies/{alertPoliciesId}", + // "httpMethod": "PATCH", + // "id": "monitoring.projects.alertPolicies.patch", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "Required if the policy exists. The resource name for this policy. The syntax is:\nprojects/[PROJECT_ID]/alertPolicies/[ALERT_POLICY_ID]\n[ALERT_POLICY_ID] is assigned by Stackdriver Monitoring when the policy is created. When calling the alertPolicies.create method, do not include the name field in the alerting policy passed as part of the request.", + // "location": "path", + // "pattern": "^projects/[^/]+/alertPolicies/[^/]+$", + // "required": true, + // "type": "string" + // }, + // "updateMask": { + // "description": "Optional. A list of alerting policy field names. If this field is not empty, each listed field in the existing alerting policy is set to the value of the corresponding field in the supplied policy (alert_policy), or to the field's default value if the field is not in the supplied alerting policy. Fields not listed retain their previous value.Examples of valid field masks include display_name, documentation, documentation.content, documentation.mime_type, user_labels, user_label.nameofkey, enabled, conditions, combiner, etc.If this field is empty, then the supplied alerting policy replaces the existing policy. It is the same as deleting the existing policy and adding the supplied policy, except for the following:\nThe new policy will have the same [ALERT_POLICY_ID] as the former policy. This gives you continuity with the former policy in your notifications and incidents.\nConditions in the new policy will keep their former [CONDITION_ID] if the supplied condition includes the name field with that [CONDITION_ID]. If the supplied condition omits the name field, then a new [CONDITION_ID] is created.", + // "format": "google-fieldmask", + // "location": "query", + // "type": "string" + // } + // }, + // "path": "v3/{+name}", + // "request": { + // "$ref": "AlertPolicy" + // }, + // "response": { + // "$ref": "AlertPolicy" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform", + // "https://www.googleapis.com/auth/monitoring" + // ] + // } + +} + // method id "monitoring.projects.collectdTimeSeries.create": type ProjectsCollectdTimeSeriesCreateCall struct { @@ -4541,6 +6523,1570 @@ func (c *ProjectsMonitoredResourceDescriptorsListCall) Pages(ctx context.Context } } +// method id "monitoring.projects.notificationChannelDescriptors.get": + +type ProjectsNotificationChannelDescriptorsGetCall struct { + s *Service + name string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// Get: Gets a single channel descriptor. The descriptor indicates which +// fields are expected / permitted for a notification channel of the +// given type. +func (r *ProjectsNotificationChannelDescriptorsService) Get(name string) *ProjectsNotificationChannelDescriptorsGetCall { + c := &ProjectsNotificationChannelDescriptorsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsNotificationChannelDescriptorsGetCall) Fields(s ...googleapi.Field) *ProjectsNotificationChannelDescriptorsGetCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// IfNoneMatch sets the optional parameter which makes the operation +// fail if the object's ETag matches the given value. This is useful for +// getting updates only after the object has changed since the last +// request. Use googleapi.IsNotModified to check whether the response +// error from Do is the result of In-None-Match. +func (c *ProjectsNotificationChannelDescriptorsGetCall) IfNoneMatch(entityTag string) *ProjectsNotificationChannelDescriptorsGetCall { + c.ifNoneMatch_ = entityTag + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsNotificationChannelDescriptorsGetCall) Context(ctx context.Context) *ProjectsNotificationChannelDescriptorsGetCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsNotificationChannelDescriptorsGetCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsNotificationChannelDescriptorsGetCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + if c.ifNoneMatch_ != "" { + reqHeaders.Set("If-None-Match", c.ifNoneMatch_) + } + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+name}") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("GET", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "monitoring.projects.notificationChannelDescriptors.get" call. +// Exactly one of *NotificationChannelDescriptor or error will be +// non-nil. Any non-2xx status code is an error. Response headers are in +// either *NotificationChannelDescriptor.ServerResponse.Header or (if a +// response was returned at all) in error.(*googleapi.Error).Header. Use +// googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *ProjectsNotificationChannelDescriptorsGetCall) Do(opts ...googleapi.CallOption) (*NotificationChannelDescriptor, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &NotificationChannelDescriptor{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Gets a single channel descriptor. The descriptor indicates which fields are expected / permitted for a notification channel of the given type.", + // "flatPath": "v3/projects/{projectsId}/notificationChannelDescriptors/{notificationChannelDescriptorsId}", + // "httpMethod": "GET", + // "id": "monitoring.projects.notificationChannelDescriptors.get", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "The channel type for which to execute the request. The format is projects/[PROJECT_ID]/notificationChannelDescriptors/{channel_type}.", + // "location": "path", + // "pattern": "^projects/[^/]+/notificationChannelDescriptors/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v3/{+name}", + // "response": { + // "$ref": "NotificationChannelDescriptor" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform", + // "https://www.googleapis.com/auth/monitoring", + // "https://www.googleapis.com/auth/monitoring.read" + // ] + // } + +} + +// method id "monitoring.projects.notificationChannelDescriptors.list": + +type ProjectsNotificationChannelDescriptorsListCall struct { + s *Service + name string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// List: Lists the descriptors for supported channel types. The use of +// descriptors makes it possible for new channel types to be dynamically +// added. +func (r *ProjectsNotificationChannelDescriptorsService) List(name string) *ProjectsNotificationChannelDescriptorsListCall { + c := &ProjectsNotificationChannelDescriptorsListCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + return c +} + +// PageSize sets the optional parameter "pageSize": The maximum number +// of results to return in a single response. If not set to a positive +// number, a reasonable value will be chosen by the service. +func (c *ProjectsNotificationChannelDescriptorsListCall) PageSize(pageSize int64) *ProjectsNotificationChannelDescriptorsListCall { + c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) + return c +} + +// PageToken sets the optional parameter "pageToken": If non-empty, +// page_token must contain a value returned as the next_page_token in a +// previous response to request the next set of results. +func (c *ProjectsNotificationChannelDescriptorsListCall) PageToken(pageToken string) *ProjectsNotificationChannelDescriptorsListCall { + c.urlParams_.Set("pageToken", pageToken) + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsNotificationChannelDescriptorsListCall) Fields(s ...googleapi.Field) *ProjectsNotificationChannelDescriptorsListCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// IfNoneMatch sets the optional parameter which makes the operation +// fail if the object's ETag matches the given value. This is useful for +// getting updates only after the object has changed since the last +// request. Use googleapi.IsNotModified to check whether the response +// error from Do is the result of In-None-Match. +func (c *ProjectsNotificationChannelDescriptorsListCall) IfNoneMatch(entityTag string) *ProjectsNotificationChannelDescriptorsListCall { + c.ifNoneMatch_ = entityTag + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsNotificationChannelDescriptorsListCall) Context(ctx context.Context) *ProjectsNotificationChannelDescriptorsListCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsNotificationChannelDescriptorsListCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsNotificationChannelDescriptorsListCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + if c.ifNoneMatch_ != "" { + reqHeaders.Set("If-None-Match", c.ifNoneMatch_) + } + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+name}/notificationChannelDescriptors") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("GET", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "monitoring.projects.notificationChannelDescriptors.list" call. +// Exactly one of *ListNotificationChannelDescriptorsResponse or error +// will be non-nil. Any non-2xx status code is an error. Response +// headers are in either +// *ListNotificationChannelDescriptorsResponse.ServerResponse.Header or +// (if a response was returned at all) in +// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check +// whether the returned error was because http.StatusNotModified was +// returned. +func (c *ProjectsNotificationChannelDescriptorsListCall) Do(opts ...googleapi.CallOption) (*ListNotificationChannelDescriptorsResponse, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &ListNotificationChannelDescriptorsResponse{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Lists the descriptors for supported channel types. The use of descriptors makes it possible for new channel types to be dynamically added.", + // "flatPath": "v3/projects/{projectsId}/notificationChannelDescriptors", + // "httpMethod": "GET", + // "id": "monitoring.projects.notificationChannelDescriptors.list", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "The REST resource name of the parent from which to retrieve the notification channel descriptors. The expected syntax is:\nprojects/[PROJECT_ID]\nNote that this names the parent container in which to look for the descriptors; to retrieve a single descriptor by name, use the GetNotificationChannelDescriptor operation, instead.", + // "location": "path", + // "pattern": "^projects/[^/]+$", + // "required": true, + // "type": "string" + // }, + // "pageSize": { + // "description": "The maximum number of results to return in a single response. If not set to a positive number, a reasonable value will be chosen by the service.", + // "format": "int32", + // "location": "query", + // "type": "integer" + // }, + // "pageToken": { + // "description": "If non-empty, page_token must contain a value returned as the next_page_token in a previous response to request the next set of results.", + // "location": "query", + // "type": "string" + // } + // }, + // "path": "v3/{+name}/notificationChannelDescriptors", + // "response": { + // "$ref": "ListNotificationChannelDescriptorsResponse" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform", + // "https://www.googleapis.com/auth/monitoring", + // "https://www.googleapis.com/auth/monitoring.read" + // ] + // } + +} + +// Pages invokes f for each page of results. +// A non-nil error returned from f will halt the iteration. +// The provided context supersedes any context provided to the Context method. +func (c *ProjectsNotificationChannelDescriptorsListCall) Pages(ctx context.Context, f func(*ListNotificationChannelDescriptorsResponse) error) error { + c.ctx_ = ctx + defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point + for { + x, err := c.Do() + if err != nil { + return err + } + if err := f(x); err != nil { + return err + } + if x.NextPageToken == "" { + return nil + } + c.PageToken(x.NextPageToken) + } +} + +// method id "monitoring.projects.notificationChannels.create": + +type ProjectsNotificationChannelsCreateCall struct { + s *Service + name string + notificationchannel *NotificationChannel + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Create: Creates a new notification channel, representing a single +// notification endpoint such as an email address, SMS number, or +// pagerduty service. +func (r *ProjectsNotificationChannelsService) Create(name string, notificationchannel *NotificationChannel) *ProjectsNotificationChannelsCreateCall { + c := &ProjectsNotificationChannelsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + c.notificationchannel = notificationchannel + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsNotificationChannelsCreateCall) Fields(s ...googleapi.Field) *ProjectsNotificationChannelsCreateCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsNotificationChannelsCreateCall) Context(ctx context.Context) *ProjectsNotificationChannelsCreateCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsNotificationChannelsCreateCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsNotificationChannelsCreateCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.notificationchannel) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+name}/notificationChannels") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("POST", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "monitoring.projects.notificationChannels.create" call. +// Exactly one of *NotificationChannel or error will be non-nil. Any +// non-2xx status code is an error. Response headers are in either +// *NotificationChannel.ServerResponse.Header or (if a response was +// returned at all) in error.(*googleapi.Error).Header. Use +// googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *ProjectsNotificationChannelsCreateCall) Do(opts ...googleapi.CallOption) (*NotificationChannel, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &NotificationChannel{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Creates a new notification channel, representing a single notification endpoint such as an email address, SMS number, or pagerduty service.", + // "flatPath": "v3/projects/{projectsId}/notificationChannels", + // "httpMethod": "POST", + // "id": "monitoring.projects.notificationChannels.create", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "The project on which to execute the request. The format is:\nprojects/[PROJECT_ID]\nNote that this names the container into which the channel will be written. This does not name the newly created channel. The resulting channel's name will have a normalized version of this field as a prefix, but will add /notificationChannels/[CHANNEL_ID] to identify the channel.", + // "location": "path", + // "pattern": "^projects/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v3/{+name}/notificationChannels", + // "request": { + // "$ref": "NotificationChannel" + // }, + // "response": { + // "$ref": "NotificationChannel" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform", + // "https://www.googleapis.com/auth/monitoring" + // ] + // } + +} + +// method id "monitoring.projects.notificationChannels.delete": + +type ProjectsNotificationChannelsDeleteCall struct { + s *Service + name string + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Delete: Deletes a notification channel. +func (r *ProjectsNotificationChannelsService) Delete(name string) *ProjectsNotificationChannelsDeleteCall { + c := &ProjectsNotificationChannelsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + return c +} + +// Force sets the optional parameter "force": If true, the notification +// channel will be deleted regardless of its use in alert policies (the +// policies will be updated to remove the channel). If false, channels +// that are still referenced by an existing alerting policy will fail to +// be deleted in a delete operation. +func (c *ProjectsNotificationChannelsDeleteCall) Force(force bool) *ProjectsNotificationChannelsDeleteCall { + c.urlParams_.Set("force", fmt.Sprint(force)) + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsNotificationChannelsDeleteCall) Fields(s ...googleapi.Field) *ProjectsNotificationChannelsDeleteCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsNotificationChannelsDeleteCall) Context(ctx context.Context) *ProjectsNotificationChannelsDeleteCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsNotificationChannelsDeleteCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsNotificationChannelsDeleteCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+name}") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("DELETE", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "monitoring.projects.notificationChannels.delete" call. +// Exactly one of *Empty or error will be non-nil. Any non-2xx status +// code is an error. Response headers are in either +// *Empty.ServerResponse.Header or (if a response was returned at all) +// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to +// check whether the returned error was because http.StatusNotModified +// was returned. +func (c *ProjectsNotificationChannelsDeleteCall) Do(opts ...googleapi.CallOption) (*Empty, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &Empty{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Deletes a notification channel.", + // "flatPath": "v3/projects/{projectsId}/notificationChannels/{notificationChannelsId}", + // "httpMethod": "DELETE", + // "id": "monitoring.projects.notificationChannels.delete", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "force": { + // "description": "If true, the notification channel will be deleted regardless of its use in alert policies (the policies will be updated to remove the channel). If false, channels that are still referenced by an existing alerting policy will fail to be deleted in a delete operation.", + // "location": "query", + // "type": "boolean" + // }, + // "name": { + // "description": "The channel for which to execute the request. The format is projects/[PROJECT_ID]/notificationChannels/[CHANNEL_ID].", + // "location": "path", + // "pattern": "^projects/[^/]+/notificationChannels/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v3/{+name}", + // "response": { + // "$ref": "Empty" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform", + // "https://www.googleapis.com/auth/monitoring" + // ] + // } + +} + +// method id "monitoring.projects.notificationChannels.get": + +type ProjectsNotificationChannelsGetCall struct { + s *Service + name string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// Get: Gets a single notification channel. The channel includes the +// relevant configuration details with which the channel was created. +// However, the response may truncate or omit passwords, API keys, or +// other private key matter and thus the response may not be 100% +// identical to the information that was supplied in the call to the +// create method. +func (r *ProjectsNotificationChannelsService) Get(name string) *ProjectsNotificationChannelsGetCall { + c := &ProjectsNotificationChannelsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsNotificationChannelsGetCall) Fields(s ...googleapi.Field) *ProjectsNotificationChannelsGetCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// IfNoneMatch sets the optional parameter which makes the operation +// fail if the object's ETag matches the given value. This is useful for +// getting updates only after the object has changed since the last +// request. Use googleapi.IsNotModified to check whether the response +// error from Do is the result of In-None-Match. +func (c *ProjectsNotificationChannelsGetCall) IfNoneMatch(entityTag string) *ProjectsNotificationChannelsGetCall { + c.ifNoneMatch_ = entityTag + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsNotificationChannelsGetCall) Context(ctx context.Context) *ProjectsNotificationChannelsGetCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsNotificationChannelsGetCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsNotificationChannelsGetCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + if c.ifNoneMatch_ != "" { + reqHeaders.Set("If-None-Match", c.ifNoneMatch_) + } + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+name}") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("GET", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "monitoring.projects.notificationChannels.get" call. +// Exactly one of *NotificationChannel or error will be non-nil. Any +// non-2xx status code is an error. Response headers are in either +// *NotificationChannel.ServerResponse.Header or (if a response was +// returned at all) in error.(*googleapi.Error).Header. Use +// googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *ProjectsNotificationChannelsGetCall) Do(opts ...googleapi.CallOption) (*NotificationChannel, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &NotificationChannel{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Gets a single notification channel. The channel includes the relevant configuration details with which the channel was created. However, the response may truncate or omit passwords, API keys, or other private key matter and thus the response may not be 100% identical to the information that was supplied in the call to the create method.", + // "flatPath": "v3/projects/{projectsId}/notificationChannels/{notificationChannelsId}", + // "httpMethod": "GET", + // "id": "monitoring.projects.notificationChannels.get", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "The channel for which to execute the request. The format is projects/[PROJECT_ID]/notificationChannels/[CHANNEL_ID].", + // "location": "path", + // "pattern": "^projects/[^/]+/notificationChannels/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v3/{+name}", + // "response": { + // "$ref": "NotificationChannel" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform", + // "https://www.googleapis.com/auth/monitoring", + // "https://www.googleapis.com/auth/monitoring.read" + // ] + // } + +} + +// method id "monitoring.projects.notificationChannels.getVerificationCode": + +type ProjectsNotificationChannelsGetVerificationCodeCall struct { + s *Service + name string + getnotificationchannelverificationcoderequest *GetNotificationChannelVerificationCodeRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// GetVerificationCode: Requests a verification code for an already +// verified channel that can then be used in a call to +// VerifyNotificationChannel() on a different channel with an equivalent +// identity in the same or in a different project. This makes it +// possible to copy a channel between projects without requiring manual +// reverification of the channel. If the channel is not in the verified +// state, this method will fail (in other words, this may only be used +// if the SendNotificationChannelVerificationCode and +// VerifyNotificationChannel paths have already been used to put the +// given channel into the verified state).There is no guarantee that the +// verification codes returned by this method will be of a similar +// structure or form as the ones that are delivered to the channel via +// SendNotificationChannelVerificationCode; while +// VerifyNotificationChannel() will recognize both the codes delivered +// via SendNotificationChannelVerificationCode() and returned from +// GetNotificationChannelVerificationCode(), it is typically the case +// that the verification codes delivered via +// SendNotificationChannelVerificationCode() will be shorter and also +// have a shorter expiration (e.g. codes such as "G-123456") whereas +// GetVerificationCode() will typically return a much longer, websafe +// base 64 encoded string that has a longer expiration time. +func (r *ProjectsNotificationChannelsService) GetVerificationCode(name string, getnotificationchannelverificationcoderequest *GetNotificationChannelVerificationCodeRequest) *ProjectsNotificationChannelsGetVerificationCodeCall { + c := &ProjectsNotificationChannelsGetVerificationCodeCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + c.getnotificationchannelverificationcoderequest = getnotificationchannelverificationcoderequest + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsNotificationChannelsGetVerificationCodeCall) Fields(s ...googleapi.Field) *ProjectsNotificationChannelsGetVerificationCodeCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsNotificationChannelsGetVerificationCodeCall) Context(ctx context.Context) *ProjectsNotificationChannelsGetVerificationCodeCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsNotificationChannelsGetVerificationCodeCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsNotificationChannelsGetVerificationCodeCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.getnotificationchannelverificationcoderequest) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+name}:getVerificationCode") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("POST", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "monitoring.projects.notificationChannels.getVerificationCode" call. +// Exactly one of *GetNotificationChannelVerificationCodeResponse or +// error will be non-nil. Any non-2xx status code is an error. Response +// headers are in either +// *GetNotificationChannelVerificationCodeResponse.ServerResponse.Header +// or (if a response was returned at all) in +// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check +// whether the returned error was because http.StatusNotModified was +// returned. +func (c *ProjectsNotificationChannelsGetVerificationCodeCall) Do(opts ...googleapi.CallOption) (*GetNotificationChannelVerificationCodeResponse, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &GetNotificationChannelVerificationCodeResponse{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Requests a verification code for an already verified channel that can then be used in a call to VerifyNotificationChannel() on a different channel with an equivalent identity in the same or in a different project. This makes it possible to copy a channel between projects without requiring manual reverification of the channel. If the channel is not in the verified state, this method will fail (in other words, this may only be used if the SendNotificationChannelVerificationCode and VerifyNotificationChannel paths have already been used to put the given channel into the verified state).There is no guarantee that the verification codes returned by this method will be of a similar structure or form as the ones that are delivered to the channel via SendNotificationChannelVerificationCode; while VerifyNotificationChannel() will recognize both the codes delivered via SendNotificationChannelVerificationCode() and returned from GetNotificationChannelVerificationCode(), it is typically the case that the verification codes delivered via SendNotificationChannelVerificationCode() will be shorter and also have a shorter expiration (e.g. codes such as \"G-123456\") whereas GetVerificationCode() will typically return a much longer, websafe base 64 encoded string that has a longer expiration time.", + // "flatPath": "v3/projects/{projectsId}/notificationChannels/{notificationChannelsId}:getVerificationCode", + // "httpMethod": "POST", + // "id": "monitoring.projects.notificationChannels.getVerificationCode", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "The notification channel for which a verification code is to be generated and retrieved. This must name a channel that is already verified; if the specified channel is not verified, the request will fail.", + // "location": "path", + // "pattern": "^projects/[^/]+/notificationChannels/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v3/{+name}:getVerificationCode", + // "request": { + // "$ref": "GetNotificationChannelVerificationCodeRequest" + // }, + // "response": { + // "$ref": "GetNotificationChannelVerificationCodeResponse" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform", + // "https://www.googleapis.com/auth/monitoring" + // ] + // } + +} + +// method id "monitoring.projects.notificationChannels.list": + +type ProjectsNotificationChannelsListCall struct { + s *Service + name string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// List: Lists the notification channels that have been created for the +// project. +func (r *ProjectsNotificationChannelsService) List(name string) *ProjectsNotificationChannelsListCall { + c := &ProjectsNotificationChannelsListCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + return c +} + +// Filter sets the optional parameter "filter": If provided, this field +// specifies the criteria that must be met by notification channels to +// be included in the response.For more details, see sorting and +// filtering. +func (c *ProjectsNotificationChannelsListCall) Filter(filter string) *ProjectsNotificationChannelsListCall { + c.urlParams_.Set("filter", filter) + return c +} + +// OrderBy sets the optional parameter "orderBy": A comma-separated list +// of fields by which to sort the result. Supports the same set of +// fields as in filter. Entries can be prefixed with a minus sign to +// sort in descending rather than ascending order.For more details, see +// sorting and filtering. +func (c *ProjectsNotificationChannelsListCall) OrderBy(orderBy string) *ProjectsNotificationChannelsListCall { + c.urlParams_.Set("orderBy", orderBy) + return c +} + +// PageSize sets the optional parameter "pageSize": The maximum number +// of results to return in a single response. If not set to a positive +// number, a reasonable value will be chosen by the service. +func (c *ProjectsNotificationChannelsListCall) PageSize(pageSize int64) *ProjectsNotificationChannelsListCall { + c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) + return c +} + +// PageToken sets the optional parameter "pageToken": If non-empty, +// page_token must contain a value returned as the next_page_token in a +// previous response to request the next set of results. +func (c *ProjectsNotificationChannelsListCall) PageToken(pageToken string) *ProjectsNotificationChannelsListCall { + c.urlParams_.Set("pageToken", pageToken) + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsNotificationChannelsListCall) Fields(s ...googleapi.Field) *ProjectsNotificationChannelsListCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// IfNoneMatch sets the optional parameter which makes the operation +// fail if the object's ETag matches the given value. This is useful for +// getting updates only after the object has changed since the last +// request. Use googleapi.IsNotModified to check whether the response +// error from Do is the result of In-None-Match. +func (c *ProjectsNotificationChannelsListCall) IfNoneMatch(entityTag string) *ProjectsNotificationChannelsListCall { + c.ifNoneMatch_ = entityTag + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsNotificationChannelsListCall) Context(ctx context.Context) *ProjectsNotificationChannelsListCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsNotificationChannelsListCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsNotificationChannelsListCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + if c.ifNoneMatch_ != "" { + reqHeaders.Set("If-None-Match", c.ifNoneMatch_) + } + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+name}/notificationChannels") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("GET", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "monitoring.projects.notificationChannels.list" call. +// Exactly one of *ListNotificationChannelsResponse or error will be +// non-nil. Any non-2xx status code is an error. Response headers are in +// either *ListNotificationChannelsResponse.ServerResponse.Header or (if +// a response was returned at all) in error.(*googleapi.Error).Header. +// Use googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *ProjectsNotificationChannelsListCall) Do(opts ...googleapi.CallOption) (*ListNotificationChannelsResponse, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &ListNotificationChannelsResponse{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Lists the notification channels that have been created for the project.", + // "flatPath": "v3/projects/{projectsId}/notificationChannels", + // "httpMethod": "GET", + // "id": "monitoring.projects.notificationChannels.list", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "filter": { + // "description": "If provided, this field specifies the criteria that must be met by notification channels to be included in the response.For more details, see sorting and filtering.", + // "location": "query", + // "type": "string" + // }, + // "name": { + // "description": "The project on which to execute the request. The format is projects/[PROJECT_ID]. That is, this names the container in which to look for the notification channels; it does not name a specific channel. To query a specific channel by REST resource name, use the GetNotificationChannel operation.", + // "location": "path", + // "pattern": "^projects/[^/]+$", + // "required": true, + // "type": "string" + // }, + // "orderBy": { + // "description": "A comma-separated list of fields by which to sort the result. Supports the same set of fields as in filter. Entries can be prefixed with a minus sign to sort in descending rather than ascending order.For more details, see sorting and filtering.", + // "location": "query", + // "type": "string" + // }, + // "pageSize": { + // "description": "The maximum number of results to return in a single response. If not set to a positive number, a reasonable value will be chosen by the service.", + // "format": "int32", + // "location": "query", + // "type": "integer" + // }, + // "pageToken": { + // "description": "If non-empty, page_token must contain a value returned as the next_page_token in a previous response to request the next set of results.", + // "location": "query", + // "type": "string" + // } + // }, + // "path": "v3/{+name}/notificationChannels", + // "response": { + // "$ref": "ListNotificationChannelsResponse" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform", + // "https://www.googleapis.com/auth/monitoring", + // "https://www.googleapis.com/auth/monitoring.read" + // ] + // } + +} + +// Pages invokes f for each page of results. +// A non-nil error returned from f will halt the iteration. +// The provided context supersedes any context provided to the Context method. +func (c *ProjectsNotificationChannelsListCall) Pages(ctx context.Context, f func(*ListNotificationChannelsResponse) error) error { + c.ctx_ = ctx + defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point + for { + x, err := c.Do() + if err != nil { + return err + } + if err := f(x); err != nil { + return err + } + if x.NextPageToken == "" { + return nil + } + c.PageToken(x.NextPageToken) + } +} + +// method id "monitoring.projects.notificationChannels.patch": + +type ProjectsNotificationChannelsPatchCall struct { + s *Service + name string + notificationchannel *NotificationChannel + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Patch: Updates a notification channel. Fields not specified in the +// field mask remain unchanged. +func (r *ProjectsNotificationChannelsService) Patch(name string, notificationchannel *NotificationChannel) *ProjectsNotificationChannelsPatchCall { + c := &ProjectsNotificationChannelsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + c.notificationchannel = notificationchannel + return c +} + +// UpdateMask sets the optional parameter "updateMask": The fields to +// update. +func (c *ProjectsNotificationChannelsPatchCall) UpdateMask(updateMask string) *ProjectsNotificationChannelsPatchCall { + c.urlParams_.Set("updateMask", updateMask) + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsNotificationChannelsPatchCall) Fields(s ...googleapi.Field) *ProjectsNotificationChannelsPatchCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsNotificationChannelsPatchCall) Context(ctx context.Context) *ProjectsNotificationChannelsPatchCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsNotificationChannelsPatchCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsNotificationChannelsPatchCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.notificationchannel) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+name}") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("PATCH", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "monitoring.projects.notificationChannels.patch" call. +// Exactly one of *NotificationChannel or error will be non-nil. Any +// non-2xx status code is an error. Response headers are in either +// *NotificationChannel.ServerResponse.Header or (if a response was +// returned at all) in error.(*googleapi.Error).Header. Use +// googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *ProjectsNotificationChannelsPatchCall) Do(opts ...googleapi.CallOption) (*NotificationChannel, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &NotificationChannel{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Updates a notification channel. Fields not specified in the field mask remain unchanged.", + // "flatPath": "v3/projects/{projectsId}/notificationChannels/{notificationChannelsId}", + // "httpMethod": "PATCH", + // "id": "monitoring.projects.notificationChannels.patch", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "The full REST resource name for this channel. The syntax is:\nprojects/[PROJECT_ID]/notificationChannels/[CHANNEL_ID]\nThe [CHANNEL_ID] is automatically assigned by the server on creation.", + // "location": "path", + // "pattern": "^projects/[^/]+/notificationChannels/[^/]+$", + // "required": true, + // "type": "string" + // }, + // "updateMask": { + // "description": "The fields to update.", + // "format": "google-fieldmask", + // "location": "query", + // "type": "string" + // } + // }, + // "path": "v3/{+name}", + // "request": { + // "$ref": "NotificationChannel" + // }, + // "response": { + // "$ref": "NotificationChannel" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform", + // "https://www.googleapis.com/auth/monitoring" + // ] + // } + +} + +// method id "monitoring.projects.notificationChannels.sendVerificationCode": + +type ProjectsNotificationChannelsSendVerificationCodeCall struct { + s *Service + name string + sendnotificationchannelverificationcoderequest *SendNotificationChannelVerificationCodeRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// SendVerificationCode: Causes a verification code to be delivered to +// the channel. The code can then be supplied in +// VerifyNotificationChannel to verify the channel. +func (r *ProjectsNotificationChannelsService) SendVerificationCode(name string, sendnotificationchannelverificationcoderequest *SendNotificationChannelVerificationCodeRequest) *ProjectsNotificationChannelsSendVerificationCodeCall { + c := &ProjectsNotificationChannelsSendVerificationCodeCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + c.sendnotificationchannelverificationcoderequest = sendnotificationchannelverificationcoderequest + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsNotificationChannelsSendVerificationCodeCall) Fields(s ...googleapi.Field) *ProjectsNotificationChannelsSendVerificationCodeCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsNotificationChannelsSendVerificationCodeCall) Context(ctx context.Context) *ProjectsNotificationChannelsSendVerificationCodeCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsNotificationChannelsSendVerificationCodeCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsNotificationChannelsSendVerificationCodeCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.sendnotificationchannelverificationcoderequest) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+name}:sendVerificationCode") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("POST", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "monitoring.projects.notificationChannels.sendVerificationCode" call. +// Exactly one of *Empty or error will be non-nil. Any non-2xx status +// code is an error. Response headers are in either +// *Empty.ServerResponse.Header or (if a response was returned at all) +// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to +// check whether the returned error was because http.StatusNotModified +// was returned. +func (c *ProjectsNotificationChannelsSendVerificationCodeCall) Do(opts ...googleapi.CallOption) (*Empty, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &Empty{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Causes a verification code to be delivered to the channel. The code can then be supplied in VerifyNotificationChannel to verify the channel.", + // "flatPath": "v3/projects/{projectsId}/notificationChannels/{notificationChannelsId}:sendVerificationCode", + // "httpMethod": "POST", + // "id": "monitoring.projects.notificationChannels.sendVerificationCode", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "The notification channel to which to send a verification code.", + // "location": "path", + // "pattern": "^projects/[^/]+/notificationChannels/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v3/{+name}:sendVerificationCode", + // "request": { + // "$ref": "SendNotificationChannelVerificationCodeRequest" + // }, + // "response": { + // "$ref": "Empty" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform", + // "https://www.googleapis.com/auth/monitoring" + // ] + // } + +} + +// method id "monitoring.projects.notificationChannels.verify": + +type ProjectsNotificationChannelsVerifyCall struct { + s *Service + name string + verifynotificationchannelrequest *VerifyNotificationChannelRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Verify: Verifies a NotificationChannel by proving receipt of the code +// delivered to the channel as a result of calling +// SendNotificationChannelVerificationCode. +func (r *ProjectsNotificationChannelsService) Verify(name string, verifynotificationchannelrequest *VerifyNotificationChannelRequest) *ProjectsNotificationChannelsVerifyCall { + c := &ProjectsNotificationChannelsVerifyCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + c.verifynotificationchannelrequest = verifynotificationchannelrequest + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsNotificationChannelsVerifyCall) Fields(s ...googleapi.Field) *ProjectsNotificationChannelsVerifyCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsNotificationChannelsVerifyCall) Context(ctx context.Context) *ProjectsNotificationChannelsVerifyCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsNotificationChannelsVerifyCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsNotificationChannelsVerifyCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.verifynotificationchannelrequest) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v3/{+name}:verify") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("POST", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "monitoring.projects.notificationChannels.verify" call. +// Exactly one of *NotificationChannel or error will be non-nil. Any +// non-2xx status code is an error. Response headers are in either +// *NotificationChannel.ServerResponse.Header or (if a response was +// returned at all) in error.(*googleapi.Error).Header. Use +// googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *ProjectsNotificationChannelsVerifyCall) Do(opts ...googleapi.CallOption) (*NotificationChannel, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &NotificationChannel{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Verifies a NotificationChannel by proving receipt of the code delivered to the channel as a result of calling SendNotificationChannelVerificationCode.", + // "flatPath": "v3/projects/{projectsId}/notificationChannels/{notificationChannelsId}:verify", + // "httpMethod": "POST", + // "id": "monitoring.projects.notificationChannels.verify", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "The notification channel to verify.", + // "location": "path", + // "pattern": "^projects/[^/]+/notificationChannels/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v3/{+name}:verify", + // "request": { + // "$ref": "VerifyNotificationChannelRequest" + // }, + // "response": { + // "$ref": "NotificationChannel" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform", + // "https://www.googleapis.com/auth/monitoring" + // ] + // } + +} + // method id "monitoring.projects.timeSeries.create": type ProjectsTimeSeriesCreateCall struct { @@ -5224,7 +8770,7 @@ func (c *ProjectsUptimeCheckConfigsCreateCall) Do(opts ...googleapi.CallOption) // ], // "parameters": { // "parent": { - // "description": "The project in which to create the uptime check. The format is:projects/[PROJECT_ID].", + // "description": "The project in which to create the uptime check. The format is projects/[PROJECT_ID].", // "location": "path", // "pattern": "^projects/[^/]+$", // "required": true, @@ -5356,7 +8902,7 @@ func (c *ProjectsUptimeCheckConfigsDeleteCall) Do(opts ...googleapi.CallOption) // ], // "parameters": { // "name": { - // "description": "The uptime check configuration to delete. The format isprojects/[PROJECT_ID]/uptimeCheckConfigs/[UPTIME_CHECK_ID].", + // "description": "The uptime check configuration to delete. The format is projects/[PROJECT_ID]/uptimeCheckConfigs/[UPTIME_CHECK_ID].", // "location": "path", // "pattern": "^projects/[^/]+/uptimeCheckConfigs/[^/]+$", // "required": true, @@ -5496,7 +9042,7 @@ func (c *ProjectsUptimeCheckConfigsGetCall) Do(opts ...googleapi.CallOption) (*U // ], // "parameters": { // "name": { - // "description": "The uptime check configuration to retrieve. The format isprojects/[PROJECT_ID]/uptimeCheckConfigs/[UPTIME_CHECK_ID].", + // "description": "The uptime check configuration to retrieve. The format is projects/[PROJECT_ID]/uptimeCheckConfigs/[UPTIME_CHECK_ID].", // "location": "path", // "pattern": "^projects/[^/]+/uptimeCheckConfigs/[^/]+$", // "required": true, @@ -5668,7 +9214,7 @@ func (c *ProjectsUptimeCheckConfigsListCall) Do(opts ...googleapi.CallOption) (* // "type": "string" // }, // "parent": { - // "description": "The project whose uptime check configurations are listed. The format isprojects/[PROJECT_ID].", + // "description": "The project whose uptime check configurations are listed. The format is projects/[PROJECT_ID].", // "location": "path", // "pattern": "^projects/[^/]+$", // "required": true, diff --git a/vendor/google.golang.org/api/oauth2/v1/oauth2-api.json b/vendor/google.golang.org/api/oauth2/v1/oauth2-api.json index 1de8b48fe..5f5f2c348 100644 --- a/vendor/google.golang.org/api/oauth2/v1/oauth2-api.json +++ b/vendor/google.golang.org/api/oauth2/v1/oauth2-api.json @@ -1,407 +1,407 @@ { - "kind": "discovery#restDescription", - "etag": "\"YWOzh2SDasdU84ArJnpYek-OMdg/PozAB5R3hMeaeI5NL5FrPjwfUdY\"", - "discoveryVersion": "v1", - "id": "oauth2:v1", - "name": "oauth2", - "version": "v1", - "revision": "20170807", - "title": "Google OAuth2 API", - "description": "Obtains end-user authorization grants for use with other Google APIs.", - "ownerDomain": "google.com", - "ownerName": "Google", - "icons": { - "x16": "https://www.gstatic.com/images/branding/product/1x/googleg_16dp.png", - "x32": "https://www.gstatic.com/images/branding/product/1x/googleg_32dp.png" - }, - "documentationLink": "https://developers.google.com/accounts/docs/OAuth2", - "protocol": "rest", - "baseUrl": "https://www.googleapis.com/", - "basePath": "/", - "rootUrl": "https://www.googleapis.com/", - "servicePath": "", - "batchPath": "batch/oauth2/v1", - "parameters": { - "alt": { - "type": "string", - "description": "Data format for the response.", - "default": "json", - "enum": [ - "json" - ], - "enumDescriptions": [ - "Responses with Content-Type of application/json" - ], - "location": "query" - }, - "fields": { - "type": "string", - "description": "Selector specifying which fields to include in a partial response.", - "location": "query" - }, - "key": { - "type": "string", - "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" - }, - "oauth_token": { - "type": "string", - "description": "OAuth 2.0 token for the current user.", - "location": "query" - }, - "prettyPrint": { - "type": "boolean", - "description": "Returns response with indentations and line breaks.", - "default": "true", - "location": "query" - }, - "quotaUser": { - "type": "string", - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", - "location": "query" - }, - "userIp": { - "type": "string", - "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", - "location": "query" - } - }, - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/plus.login": { - "description": "Know the list of people in your circles, your age range, and language" - }, - "https://www.googleapis.com/auth/plus.me": { - "description": "Know who you are on Google" - }, - "https://www.googleapis.com/auth/userinfo.email": { - "description": "View your email address" - }, - "https://www.googleapis.com/auth/userinfo.profile": { - "description": "View your basic profile info" - } - } - } - }, - "schemas": { - "Jwk": { - "id": "Jwk", - "type": "object", - "properties": { - "keys": { - "type": "array", - "items": { - "type": "object", - "properties": { - "alg": { - "type": "string", - "default": "RS256" - }, - "e": { - "type": "string" - }, - "kid": { - "type": "string" - }, - "kty": { - "type": "string", - "default": "RSA" - }, - "n": { - "type": "string" - }, - "use": { - "type": "string", - "default": "sig" - } - } - } - } - } - }, - "Raw": { - "id": "Raw", - "type": "object", - "properties": { - "keyvalues": { - "type": "array", - "items": { - "type": "object", - "properties": { - "algorithm": { - "type": "string", - "default": "RSA" - }, - "exponent": { - "type": "string" - }, - "keyid": { - "type": "string" - }, - "modulus": { - "type": "string" - } - } - } - } - } - }, - "Tokeninfo": { - "id": "Tokeninfo", - "type": "object", - "properties": { - "access_type": { - "type": "string", - "description": "The access type granted with this token. It can be offline or online." - }, - "audience": { - "type": "string", - "description": "Who is the intended audience for this token. In general the same as issued_to." - }, - "email": { - "type": "string", - "description": "The email address of the user. Present only if the email scope is present in the request." - }, - "email_verified": { - "type": "boolean", - "description": "Boolean flag which is true if the email address is verified. Present only if the email scope is present in the request." - }, - "expires_in": { - "type": "integer", - "description": "The expiry time of the token, as number of seconds left until expiry.", - "format": "int32" - }, - "issued_at": { - "type": "integer", - "description": "The issue time of the token, as number of seconds.", - "format": "int32" - }, - "issued_to": { - "type": "string", - "description": "To whom was the token issued to. In general the same as audience." - }, - "issuer": { - "type": "string", - "description": "Who issued the token." - }, - "nonce": { - "type": "string", - "description": "Nonce of the id token." - }, - "scope": { - "type": "string", - "description": "The space separated list of scopes granted to this token." - }, - "user_id": { - "type": "string", - "description": "The obfuscated user id." - }, - "verified_email": { - "type": "boolean", - "description": "Boolean flag which is true if the email address is verified. Present only if the email scope is present in the request." - } - } - }, - "Userinfoplus": { - "id": "Userinfoplus", - "type": "object", - "properties": { - "email": { - "type": "string", - "description": "The user's email address." - }, - "family_name": { - "type": "string", - "description": "The user's last name." - }, - "gender": { - "type": "string", - "description": "The user's gender." - }, - "given_name": { - "type": "string", - "description": "The user's first name." - }, - "hd": { - "type": "string", - "description": "The hosted domain e.g. example.com if the user is Google apps user." - }, - "id": { - "type": "string", - "description": "The obfuscated ID of the user." - }, - "link": { - "type": "string", - "description": "URL of the profile page." - }, - "locale": { - "type": "string", - "description": "The user's preferred locale." - }, - "name": { - "type": "string", - "description": "The user's full name." - }, - "picture": { - "type": "string", - "description": "URL of the user's picture image." - }, - "verified_email": { - "type": "boolean", - "description": "Boolean flag which is true if the email address is verified. Always verified because we only return the user's primary email address.", - "default": "true" - } - } - }, - "X509": { - "id": "X509", - "type": "object", - "additionalProperties": { - "type": "string" - } - } - }, - "methods": { - "getCertForOpenIdConnect": { - "id": "oauth2.getCertForOpenIdConnect", - "path": "oauth2/v1/certs", - "httpMethod": "GET", - "response": { - "$ref": "X509" - } - }, - "getCertForOpenIdConnectRaw": { - "id": "oauth2.getCertForOpenIdConnectRaw", - "path": "oauth2/v1/raw_public_keys", - "httpMethod": "GET", - "response": { - "$ref": "Raw" - } - }, - "getRobotJwk": { - "id": "oauth2.getRobotJwk", - "path": "service_accounts/v1/jwk/{robotEmail}", - "httpMethod": "GET", - "parameters": { - "robotEmail": { - "type": "string", - "description": "The email of robot account.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "robotEmail" - ], - "response": { - "$ref": "Jwk" - } - }, - "getRobotMetadataRaw": { - "id": "oauth2.getRobotMetadataRaw", - "path": "service_accounts/v1/metadata/raw/{robotEmail}", - "httpMethod": "GET", - "parameters": { - "robotEmail": { - "type": "string", - "description": "The email of robot account.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "robotEmail" - ], - "response": { - "$ref": "Raw" - } - }, - "getRobotMetadataX509": { - "id": "oauth2.getRobotMetadataX509", - "path": "service_accounts/v1/metadata/x509/{robotEmail}", - "httpMethod": "GET", - "parameters": { - "robotEmail": { - "type": "string", - "description": "The email of robot account.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "robotEmail" - ], - "response": { - "$ref": "X509" - } - }, - "tokeninfo": { - "id": "oauth2.tokeninfo", - "path": "oauth2/v1/tokeninfo", - "httpMethod": "POST", - "description": "Get token info", - "parameters": { - "access_token": { - "type": "string", - "description": "The oauth2 access token", - "location": "query" - }, - "id_token": { - "type": "string", - "description": "The ID token", - "location": "query" - } - }, - "response": { - "$ref": "Tokeninfo" - } - } - }, - "resources": { - "userinfo": { - "methods": { - "get": { - "id": "oauth2.userinfo.get", - "path": "oauth2/v1/userinfo", - "httpMethod": "GET", - "description": "Get user info", - "response": { - "$ref": "Userinfoplus" - }, - "scopes": [ - "https://www.googleapis.com/auth/plus.login", - "https://www.googleapis.com/auth/plus.me", - "https://www.googleapis.com/auth/userinfo.email", - "https://www.googleapis.com/auth/userinfo.profile" - ] - } - }, - "resources": { - "v2": { - "resources": { - "me": { - "methods": { - "get": { - "id": "oauth2.userinfo.v2.me.get", - "path": "userinfo/v2/me", - "httpMethod": "GET", - "description": "Get user info", - "response": { - "$ref": "Userinfoplus" - }, - "scopes": [ - "https://www.googleapis.com/auth/plus.login", - "https://www.googleapis.com/auth/plus.me", - "https://www.googleapis.com/auth/userinfo.email", - "https://www.googleapis.com/auth/userinfo.profile" - ] + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/plus.login": { + "description": "Know the list of people in your circles, your age range, and language" + }, + "https://www.googleapis.com/auth/plus.me": { + "description": "Know who you are on Google" + }, + "https://www.googleapis.com/auth/userinfo.email": { + "description": "View your email address" + }, + "https://www.googleapis.com/auth/userinfo.profile": { + "description": "View your basic profile info" } - } } - } } - } - } - } -} + }, + "basePath": "/", + "baseUrl": "https://www.googleapis.com/", + "batchPath": "batch/oauth2/v1", + "description": "Obtains end-user authorization grants for use with other Google APIs.", + "discoveryVersion": "v1", + "documentationLink": "https://developers.google.com/accounts/docs/OAuth2", + "etag": "\"-iA1DTNe4s-I6JZXPt1t1Ypy8IU/VisqdD00zyRHTdJGbNmo6aMC9IU\"", + "icons": { + "x16": "https://www.gstatic.com/images/branding/product/1x/googleg_16dp.png", + "x32": "https://www.gstatic.com/images/branding/product/1x/googleg_32dp.png" + }, + "id": "oauth2:v1", + "kind": "discovery#restDescription", + "methods": { + "getCertForOpenIdConnect": { + "httpMethod": "GET", + "id": "oauth2.getCertForOpenIdConnect", + "path": "oauth2/v1/certs", + "response": { + "$ref": "X509" + } + }, + "getCertForOpenIdConnectRaw": { + "httpMethod": "GET", + "id": "oauth2.getCertForOpenIdConnectRaw", + "path": "oauth2/v1/raw_public_keys", + "response": { + "$ref": "Raw" + } + }, + "getRobotJwk": { + "httpMethod": "GET", + "id": "oauth2.getRobotJwk", + "parameterOrder": [ + "robotEmail" + ], + "parameters": { + "robotEmail": { + "description": "The email of robot account.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "service_accounts/v1/jwk/{robotEmail}", + "response": { + "$ref": "Jwk" + } + }, + "getRobotMetadataRaw": { + "httpMethod": "GET", + "id": "oauth2.getRobotMetadataRaw", + "parameterOrder": [ + "robotEmail" + ], + "parameters": { + "robotEmail": { + "description": "The email of robot account.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "service_accounts/v1/metadata/raw/{robotEmail}", + "response": { + "$ref": "Raw" + } + }, + "getRobotMetadataX509": { + "httpMethod": "GET", + "id": "oauth2.getRobotMetadataX509", + "parameterOrder": [ + "robotEmail" + ], + "parameters": { + "robotEmail": { + "description": "The email of robot account.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "service_accounts/v1/metadata/x509/{robotEmail}", + "response": { + "$ref": "X509" + } + }, + "tokeninfo": { + "description": "Get token info", + "httpMethod": "POST", + "id": "oauth2.tokeninfo", + "parameters": { + "access_token": { + "description": "The oauth2 access token", + "location": "query", + "type": "string" + }, + "id_token": { + "description": "The ID token", + "location": "query", + "type": "string" + } + }, + "path": "oauth2/v1/tokeninfo", + "response": { + "$ref": "Tokeninfo" + } + } + }, + "name": "oauth2", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "alt": { + "default": "json", + "description": "Data format for the response.", + "enum": [ + "json" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json" + ], + "location": "query", + "type": "string" + }, + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "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.", + "location": "query", + "type": "string" + }, + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", + "location": "query", + "type": "string" + }, + "userIp": { + "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", + "location": "query", + "type": "string" + } + }, + "protocol": "rest", + "resources": { + "userinfo": { + "methods": { + "get": { + "description": "Get user info", + "httpMethod": "GET", + "id": "oauth2.userinfo.get", + "path": "oauth2/v1/userinfo", + "response": { + "$ref": "Userinfoplus" + }, + "scopes": [ + "https://www.googleapis.com/auth/plus.login", + "https://www.googleapis.com/auth/plus.me", + "https://www.googleapis.com/auth/userinfo.email", + "https://www.googleapis.com/auth/userinfo.profile" + ] + } + }, + "resources": { + "v2": { + "resources": { + "me": { + "methods": { + "get": { + "description": "Get user info", + "httpMethod": "GET", + "id": "oauth2.userinfo.v2.me.get", + "path": "userinfo/v2/me", + "response": { + "$ref": "Userinfoplus" + }, + "scopes": [ + "https://www.googleapis.com/auth/plus.login", + "https://www.googleapis.com/auth/plus.me", + "https://www.googleapis.com/auth/userinfo.email", + "https://www.googleapis.com/auth/userinfo.profile" + ] + } + } + } + } + } + } + } + }, + "revision": "20180108", + "rootUrl": "https://www.googleapis.com/", + "schemas": { + "Jwk": { + "id": "Jwk", + "properties": { + "keys": { + "items": { + "properties": { + "alg": { + "default": "RS256", + "type": "string" + }, + "e": { + "type": "string" + }, + "kid": { + "type": "string" + }, + "kty": { + "default": "RSA", + "type": "string" + }, + "n": { + "type": "string" + }, + "use": { + "default": "sig", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + } + }, + "type": "object" + }, + "Raw": { + "id": "Raw", + "properties": { + "keyvalues": { + "items": { + "properties": { + "algorithm": { + "default": "RSA", + "type": "string" + }, + "exponent": { + "type": "string" + }, + "keyid": { + "type": "string" + }, + "modulus": { + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + } + }, + "type": "object" + }, + "Tokeninfo": { + "id": "Tokeninfo", + "properties": { + "access_type": { + "description": "The access type granted with this token. It can be offline or online.", + "type": "string" + }, + "audience": { + "description": "Who is the intended audience for this token. In general the same as issued_to.", + "type": "string" + }, + "email": { + "description": "The email address of the user. Present only if the email scope is present in the request.", + "type": "string" + }, + "email_verified": { + "description": "Boolean flag which is true if the email address is verified. Present only if the email scope is present in the request.", + "type": "boolean" + }, + "expires_in": { + "description": "The expiry time of the token, as number of seconds left until expiry.", + "format": "int32", + "type": "integer" + }, + "issued_at": { + "description": "The issue time of the token, as number of seconds.", + "format": "int32", + "type": "integer" + }, + "issued_to": { + "description": "To whom was the token issued to. In general the same as audience.", + "type": "string" + }, + "issuer": { + "description": "Who issued the token.", + "type": "string" + }, + "nonce": { + "description": "Nonce of the id token.", + "type": "string" + }, + "scope": { + "description": "The space separated list of scopes granted to this token.", + "type": "string" + }, + "user_id": { + "description": "The obfuscated user id.", + "type": "string" + }, + "verified_email": { + "description": "Boolean flag which is true if the email address is verified. Present only if the email scope is present in the request.", + "type": "boolean" + } + }, + "type": "object" + }, + "Userinfoplus": { + "id": "Userinfoplus", + "properties": { + "email": { + "description": "The user's email address.", + "type": "string" + }, + "family_name": { + "description": "The user's last name.", + "type": "string" + }, + "gender": { + "description": "The user's gender.", + "type": "string" + }, + "given_name": { + "description": "The user's first name.", + "type": "string" + }, + "hd": { + "description": "The hosted domain e.g. example.com if the user is Google apps user.", + "type": "string" + }, + "id": { + "description": "The obfuscated ID of the user.", + "type": "string" + }, + "link": { + "description": "URL of the profile page.", + "type": "string" + }, + "locale": { + "description": "The user's preferred locale.", + "type": "string" + }, + "name": { + "description": "The user's full name.", + "type": "string" + }, + "picture": { + "description": "URL of the user's picture image.", + "type": "string" + }, + "verified_email": { + "default": "true", + "description": "Boolean flag which is true if the email address is verified. Always verified because we only return the user's primary email address.", + "type": "boolean" + } + }, + "type": "object" + }, + "X509": { + "additionalProperties": { + "type": "string" + }, + "id": "X509", + "type": "object" + } + }, + "servicePath": "", + "title": "Google OAuth2 API", + "version": "v1" +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/oauth2/v2/oauth2-api.json b/vendor/google.golang.org/api/oauth2/v2/oauth2-api.json index 67a037865..9cae4a866 100644 --- a/vendor/google.golang.org/api/oauth2/v2/oauth2-api.json +++ b/vendor/google.golang.org/api/oauth2/v2/oauth2-api.json @@ -1,294 +1,294 @@ { - "kind": "discovery#restDescription", - "etag": "\"YWOzh2SDasdU84ArJnpYek-OMdg/UI_PjeJG3puXfKEXm-20UHWIhYQ\"", - "discoveryVersion": "v1", - "id": "oauth2:v2", - "name": "oauth2", - "version": "v2", - "revision": "20170807", - "title": "Google OAuth2 API", - "description": "Obtains end-user authorization grants for use with other Google APIs.", - "ownerDomain": "google.com", - "ownerName": "Google", - "icons": { - "x16": "https://www.gstatic.com/images/branding/product/1x/googleg_16dp.png", - "x32": "https://www.gstatic.com/images/branding/product/1x/googleg_32dp.png" - }, - "documentationLink": "https://developers.google.com/accounts/docs/OAuth2", - "protocol": "rest", - "baseUrl": "https://www.googleapis.com/", - "basePath": "/", - "rootUrl": "https://www.googleapis.com/", - "servicePath": "", - "batchPath": "batch/oauth2/v2", - "parameters": { - "alt": { - "type": "string", - "description": "Data format for the response.", - "default": "json", - "enum": [ - "json" - ], - "enumDescriptions": [ - "Responses with Content-Type of application/json" - ], - "location": "query" - }, - "fields": { - "type": "string", - "description": "Selector specifying which fields to include in a partial response.", - "location": "query" - }, - "key": { - "type": "string", - "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" - }, - "oauth_token": { - "type": "string", - "description": "OAuth 2.0 token for the current user.", - "location": "query" - }, - "prettyPrint": { - "type": "boolean", - "description": "Returns response with indentations and line breaks.", - "default": "true", - "location": "query" - }, - "quotaUser": { - "type": "string", - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", - "location": "query" - }, - "userIp": { - "type": "string", - "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", - "location": "query" - } - }, - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/plus.login": { - "description": "Know the list of people in your circles, your age range, and language" - }, - "https://www.googleapis.com/auth/plus.me": { - "description": "Know who you are on Google" - }, - "https://www.googleapis.com/auth/userinfo.email": { - "description": "View your email address" - }, - "https://www.googleapis.com/auth/userinfo.profile": { - "description": "View your basic profile info" - } - } - } - }, - "schemas": { - "Jwk": { - "id": "Jwk", - "type": "object", - "properties": { - "keys": { - "type": "array", - "items": { - "type": "object", - "properties": { - "alg": { - "type": "string", - "default": "RS256" - }, - "e": { - "type": "string" - }, - "kid": { - "type": "string" - }, - "kty": { - "type": "string", - "default": "RSA" - }, - "n": { - "type": "string" - }, - "use": { - "type": "string", - "default": "sig" - } - } - } - } - } - }, - "Tokeninfo": { - "id": "Tokeninfo", - "type": "object", - "properties": { - "access_type": { - "type": "string", - "description": "The access type granted with this token. It can be offline or online." - }, - "audience": { - "type": "string", - "description": "Who is the intended audience for this token. In general the same as issued_to." - }, - "email": { - "type": "string", - "description": "The email address of the user. Present only if the email scope is present in the request." - }, - "expires_in": { - "type": "integer", - "description": "The expiry time of the token, as number of seconds left until expiry.", - "format": "int32" - }, - "issued_to": { - "type": "string", - "description": "To whom was the token issued to. In general the same as audience." - }, - "scope": { - "type": "string", - "description": "The space separated list of scopes granted to this token." - }, - "token_handle": { - "type": "string", - "description": "The token handle associated with this token." - }, - "user_id": { - "type": "string", - "description": "The obfuscated user id." - }, - "verified_email": { - "type": "boolean", - "description": "Boolean flag which is true if the email address is verified. Present only if the email scope is present in the request." - } - } - }, - "Userinfoplus": { - "id": "Userinfoplus", - "type": "object", - "properties": { - "email": { - "type": "string", - "description": "The user's email address." - }, - "family_name": { - "type": "string", - "description": "The user's last name." - }, - "gender": { - "type": "string", - "description": "The user's gender." - }, - "given_name": { - "type": "string", - "description": "The user's first name." - }, - "hd": { - "type": "string", - "description": "The hosted domain e.g. example.com if the user is Google apps user." - }, - "id": { - "type": "string", - "description": "The obfuscated ID of the user." - }, - "link": { - "type": "string", - "description": "URL of the profile page." - }, - "locale": { - "type": "string", - "description": "The user's preferred locale." - }, - "name": { - "type": "string", - "description": "The user's full name." - }, - "picture": { - "type": "string", - "description": "URL of the user's picture image." - }, - "verified_email": { - "type": "boolean", - "description": "Boolean flag which is true if the email address is verified. Always verified because we only return the user's primary email address.", - "default": "true" - } - } - } - }, - "methods": { - "getCertForOpenIdConnect": { - "id": "oauth2.getCertForOpenIdConnect", - "path": "oauth2/v2/certs", - "httpMethod": "GET", - "response": { - "$ref": "Jwk" - } - }, - "tokeninfo": { - "id": "oauth2.tokeninfo", - "path": "oauth2/v2/tokeninfo", - "httpMethod": "POST", - "parameters": { - "access_token": { - "type": "string", - "location": "query" - }, - "id_token": { - "type": "string", - "location": "query" - }, - "token_handle": { - "type": "string", - "location": "query" - } - }, - "response": { - "$ref": "Tokeninfo" - } - } - }, - "resources": { - "userinfo": { - "methods": { - "get": { - "id": "oauth2.userinfo.get", - "path": "oauth2/v2/userinfo", - "httpMethod": "GET", - "response": { - "$ref": "Userinfoplus" - }, - "scopes": [ - "https://www.googleapis.com/auth/plus.login", - "https://www.googleapis.com/auth/plus.me", - "https://www.googleapis.com/auth/userinfo.email", - "https://www.googleapis.com/auth/userinfo.profile" - ] - } - }, - "resources": { - "v2": { - "resources": { - "me": { - "methods": { - "get": { - "id": "oauth2.userinfo.v2.me.get", - "path": "userinfo/v2/me", - "httpMethod": "GET", - "response": { - "$ref": "Userinfoplus" - }, - "scopes": [ - "https://www.googleapis.com/auth/plus.login", - "https://www.googleapis.com/auth/plus.me", - "https://www.googleapis.com/auth/userinfo.email", - "https://www.googleapis.com/auth/userinfo.profile" - ] + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/plus.login": { + "description": "Know the list of people in your circles, your age range, and language" + }, + "https://www.googleapis.com/auth/plus.me": { + "description": "Know who you are on Google" + }, + "https://www.googleapis.com/auth/userinfo.email": { + "description": "View your email address" + }, + "https://www.googleapis.com/auth/userinfo.profile": { + "description": "View your basic profile info" } - } } - } } - } - } - } -} + }, + "basePath": "/", + "baseUrl": "https://www.googleapis.com/", + "batchPath": "batch/oauth2/v2", + "description": "Obtains end-user authorization grants for use with other Google APIs.", + "discoveryVersion": "v1", + "documentationLink": "https://developers.google.com/accounts/docs/OAuth2", + "etag": "\"-iA1DTNe4s-I6JZXPt1t1Ypy8IU/aptYwkK59DHRE1vI13GjvaLFO4s\"", + "icons": { + "x16": "https://www.gstatic.com/images/branding/product/1x/googleg_16dp.png", + "x32": "https://www.gstatic.com/images/branding/product/1x/googleg_32dp.png" + }, + "id": "oauth2:v2", + "kind": "discovery#restDescription", + "methods": { + "getCertForOpenIdConnect": { + "httpMethod": "GET", + "id": "oauth2.getCertForOpenIdConnect", + "path": "oauth2/v2/certs", + "response": { + "$ref": "Jwk" + } + }, + "tokeninfo": { + "httpMethod": "POST", + "id": "oauth2.tokeninfo", + "parameters": { + "access_token": { + "location": "query", + "type": "string" + }, + "id_token": { + "location": "query", + "type": "string" + }, + "token_handle": { + "location": "query", + "type": "string" + } + }, + "path": "oauth2/v2/tokeninfo", + "response": { + "$ref": "Tokeninfo" + } + } + }, + "name": "oauth2", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "alt": { + "default": "json", + "description": "Data format for the response.", + "enum": [ + "json" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json" + ], + "location": "query", + "type": "string" + }, + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "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.", + "location": "query", + "type": "string" + }, + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", + "location": "query", + "type": "string" + }, + "userIp": { + "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", + "location": "query", + "type": "string" + } + }, + "protocol": "rest", + "resources": { + "userinfo": { + "methods": { + "get": { + "httpMethod": "GET", + "id": "oauth2.userinfo.get", + "path": "oauth2/v2/userinfo", + "response": { + "$ref": "Userinfoplus" + }, + "scopes": [ + "https://www.googleapis.com/auth/plus.login", + "https://www.googleapis.com/auth/plus.me", + "https://www.googleapis.com/auth/userinfo.email", + "https://www.googleapis.com/auth/userinfo.profile" + ] + } + }, + "resources": { + "v2": { + "resources": { + "me": { + "methods": { + "get": { + "httpMethod": "GET", + "id": "oauth2.userinfo.v2.me.get", + "path": "userinfo/v2/me", + "response": { + "$ref": "Userinfoplus" + }, + "scopes": [ + "https://www.googleapis.com/auth/plus.login", + "https://www.googleapis.com/auth/plus.me", + "https://www.googleapis.com/auth/userinfo.email", + "https://www.googleapis.com/auth/userinfo.profile" + ] + } + } + } + } + } + } + } + }, + "revision": "20180108", + "rootUrl": "https://www.googleapis.com/", + "schemas": { + "Jwk": { + "id": "Jwk", + "properties": { + "keys": { + "items": { + "properties": { + "alg": { + "default": "RS256", + "type": "string" + }, + "e": { + "type": "string" + }, + "kid": { + "type": "string" + }, + "kty": { + "default": "RSA", + "type": "string" + }, + "n": { + "type": "string" + }, + "use": { + "default": "sig", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + } + }, + "type": "object" + }, + "Tokeninfo": { + "id": "Tokeninfo", + "properties": { + "access_type": { + "description": "The access type granted with this token. It can be offline or online.", + "type": "string" + }, + "audience": { + "description": "Who is the intended audience for this token. In general the same as issued_to.", + "type": "string" + }, + "email": { + "description": "The email address of the user. Present only if the email scope is present in the request.", + "type": "string" + }, + "expires_in": { + "description": "The expiry time of the token, as number of seconds left until expiry.", + "format": "int32", + "type": "integer" + }, + "issued_to": { + "description": "To whom was the token issued to. In general the same as audience.", + "type": "string" + }, + "scope": { + "description": "The space separated list of scopes granted to this token.", + "type": "string" + }, + "token_handle": { + "description": "The token handle associated with this token.", + "type": "string" + }, + "user_id": { + "description": "The obfuscated user id.", + "type": "string" + }, + "verified_email": { + "description": "Boolean flag which is true if the email address is verified. Present only if the email scope is present in the request.", + "type": "boolean" + } + }, + "type": "object" + }, + "Userinfoplus": { + "id": "Userinfoplus", + "properties": { + "email": { + "description": "The user's email address.", + "type": "string" + }, + "family_name": { + "description": "The user's last name.", + "type": "string" + }, + "gender": { + "description": "The user's gender.", + "type": "string" + }, + "given_name": { + "description": "The user's first name.", + "type": "string" + }, + "hd": { + "description": "The hosted domain e.g. example.com if the user is Google apps user.", + "type": "string" + }, + "id": { + "description": "The obfuscated ID of the user.", + "type": "string" + }, + "link": { + "description": "URL of the profile page.", + "type": "string" + }, + "locale": { + "description": "The user's preferred locale.", + "type": "string" + }, + "name": { + "description": "The user's full name.", + "type": "string" + }, + "picture": { + "description": "URL of the user's picture image.", + "type": "string" + }, + "verified_email": { + "default": "true", + "description": "Boolean flag which is true if the email address is verified. Always verified because we only return the user's primary email address.", + "type": "boolean" + } + }, + "type": "object" + } + }, + "servicePath": "", + "title": "Google OAuth2 API", + "version": "v2" +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/option/credentials_go19.go b/vendor/google.golang.org/api/option/credentials_go19.go new file mode 100644 index 000000000..c08c1149d --- /dev/null +++ b/vendor/google.golang.org/api/option/credentials_go19.go @@ -0,0 +1,32 @@ +// Copyright 2018 Google Inc. All Rights Reserved. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +// +build go1.9 + +package option + +import ( + "golang.org/x/oauth2/google" + "google.golang.org/api/internal" +) + +type withCreds google.Credentials + +func (w *withCreds) Apply(o *internal.DialSettings) { + o.Credentials = (*google.Credentials)(w) +} + +func WithCredentials(creds *google.Credentials) ClientOption { + return (*withCreds)(creds) +} diff --git a/vendor/google.golang.org/api/option/credentials_notgo19.go b/vendor/google.golang.org/api/option/credentials_notgo19.go new file mode 100644 index 000000000..90d229001 --- /dev/null +++ b/vendor/google.golang.org/api/option/credentials_notgo19.go @@ -0,0 +1,32 @@ +// Copyright 2018 Google Inc. All Rights Reserved. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +// +build !go1.9 + +package option + +import ( + "golang.org/x/oauth2/google" + "google.golang.org/api/internal" +) + +type withCreds google.DefaultCredentials + +func (w *withCreds) Apply(o *internal.DialSettings) { + o.Credentials = (*google.DefaultCredentials)(w) +} + +func WithCredentials(creds *google.DefaultCredentials) ClientOption { + return (*withCreds)(creds) +} diff --git a/vendor/google.golang.org/api/option/option_test.go b/vendor/google.golang.org/api/option/option_test.go index 68a6d3449..85c9f0ece 100644 --- a/vendor/google.golang.org/api/option/option_test.go +++ b/vendor/google.golang.org/api/option/option_test.go @@ -15,9 +15,11 @@ package option import ( - "reflect" "testing" + "github.com/google/go-cmp/cmp" + "github.com/google/go-cmp/cmp/cmpopts" + "golang.org/x/oauth2/google" "google.golang.org/api/internal" "google.golang.org/grpc" ) @@ -46,6 +48,7 @@ func TestApply(t *testing.T) { WithGRPCConn(conn), WithUserAgent("ua"), WithCredentialsFile("service-account.json"), + WithCredentials(&google.DefaultCredentials{ProjectID: "p"}), WithAPIKey("api-key"), } var got internal.DialSettings @@ -57,10 +60,11 @@ func TestApply(t *testing.T) { UserAgent: "ua", Endpoint: "https://example.com:443", GRPCConn: conn, + Credentials: &google.DefaultCredentials{ProjectID: "p"}, CredentialsFile: "service-account.json", APIKey: "api-key", } - if !reflect.DeepEqual(got, want) { + if !cmp.Equal(got, want, cmpopts.IgnoreUnexported(grpc.ClientConn{})) { t.Errorf("\ngot %#v\nwant %#v", got, want) } } diff --git a/vendor/google.golang.org/api/oslogin/v1/oslogin-api.json b/vendor/google.golang.org/api/oslogin/v1/oslogin-api.json index 329914f0c..c19150c17 100644 --- a/vendor/google.golang.org/api/oslogin/v1/oslogin-api.json +++ b/vendor/google.golang.org/api/oslogin/v1/oslogin-api.json @@ -1,29 +1,389 @@ { - "version": "v1", - "baseUrl": "https://oslogin.googleapis.com/", - "kind": "discovery#restDescription", - "description": "Manages OS login configuration for Google account users.", - "servicePath": "", + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/cloud-platform": { + "description": "View and manage your data across Google Cloud Platform services" + }, + "https://www.googleapis.com/auth/compute": { + "description": "View and manage your Google Compute Engine resources" + } + } + } + }, "basePath": "", - "revision": "20180119", - "id": "oslogin:v1", - "documentationLink": "https://cloud.google.com/compute/docs/oslogin/rest/", + "baseUrl": "https://oslogin.googleapis.com/", + "batchPath": "batch", + "canonicalName": "Cloud OS Login", + "description": "Manages OS login configuration for Google account users.", "discoveryVersion": "v1", - "version_module": true, + "documentationLink": "https://cloud.google.com/compute/docs/oslogin/rest/", + "fullyEncodeReservedExpansion": true, + "icons": { + "x16": "http://www.google.com/images/icons/product/search-16.gif", + "x32": "http://www.google.com/images/icons/product/search-32.gif" + }, + "id": "oslogin:v1", + "kind": "discovery#restDescription", + "name": "oslogin", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "$.xgafv": { + "description": "V1 error format.", + "enum": [ + "1", + "2" + ], + "enumDescriptions": [ + "v1 error format", + "v2 error format" + ], + "location": "query", + "type": "string" + }, + "access_token": { + "description": "OAuth access token.", + "location": "query", + "type": "string" + }, + "alt": { + "default": "json", + "description": "Data format for response.", + "enum": [ + "json", + "media", + "proto" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json", + "Media download with context-dependent Content-Type", + "Responses with Content-Type of application/x-protobuf" + ], + "location": "query", + "type": "string" + }, + "bearer_token": { + "description": "OAuth bearer token.", + "location": "query", + "type": "string" + }, + "callback": { + "description": "JSONP", + "location": "query", + "type": "string" + }, + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "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.", + "location": "query", + "type": "string" + }, + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "pp": { + "default": "true", + "description": "Pretty-print response.", + "location": "query", + "type": "boolean" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", + "location": "query", + "type": "string" + }, + "uploadType": { + "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", + "location": "query", + "type": "string" + }, + "upload_protocol": { + "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", + "location": "query", + "type": "string" + } + }, + "protocol": "rest", + "resources": { + "users": { + "methods": { + "getLoginProfile": { + "description": "Retrieves the profile information used for logging in to a virtual machine\non Google Compute Engine.", + "flatPath": "v1/users/{usersId}/loginProfile", + "httpMethod": "GET", + "id": "oslogin.users.getLoginProfile", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The unique ID for the user in format `users/{user}`.", + "location": "path", + "pattern": "^users/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}/loginProfile", + "response": { + "$ref": "LoginProfile" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "importSshPublicKey": { + "description": "Adds an SSH public key and returns the profile information. Default POSIX\naccount information is set when no username and UID exist as part of the\nlogin profile.", + "flatPath": "v1/users/{usersId}:importSshPublicKey", + "httpMethod": "POST", + "id": "oslogin.users.importSshPublicKey", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "The unique ID for the user in format `users/{user}`.", + "location": "path", + "pattern": "^users/[^/]+$", + "required": true, + "type": "string" + }, + "projectId": { + "description": "The project ID of the Google Cloud Platform project.", + "location": "query", + "type": "string" + } + }, + "path": "v1/{+parent}:importSshPublicKey", + "request": { + "$ref": "SshPublicKey" + }, + "response": { + "$ref": "ImportSshPublicKeyResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + } + }, + "resources": { + "projects": { + "methods": { + "delete": { + "description": "Deletes a POSIX account.", + "flatPath": "v1/users/{usersId}/projects/{projectsId}", + "httpMethod": "DELETE", + "id": "oslogin.users.projects.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "A reference to the POSIX account to update. POSIX accounts are identified\nby the project ID they are associated with. A reference to the POSIX\naccount is in format `users/{user}/projects/{project}`.", + "location": "path", + "pattern": "^users/[^/]+/projects/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + } + } + }, + "sshPublicKeys": { + "methods": { + "delete": { + "description": "Deletes an SSH public key.", + "flatPath": "v1/users/{usersId}/sshPublicKeys/{sshPublicKeysId}", + "httpMethod": "DELETE", + "id": "oslogin.users.sshPublicKeys.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The fingerprint of the public key to update. Public keys are identified by\ntheir SHA-256 fingerprint. The fingerprint of the public key is in format\n`users/{user}/sshPublicKeys/{fingerprint}`.", + "location": "path", + "pattern": "^users/[^/]+/sshPublicKeys/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Retrieves an SSH public key.", + "flatPath": "v1/users/{usersId}/sshPublicKeys/{sshPublicKeysId}", + "httpMethod": "GET", + "id": "oslogin.users.sshPublicKeys.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The fingerprint of the public key to retrieve. Public keys are identified\nby their SHA-256 fingerprint. The fingerprint of the public key is in\nformat `users/{user}/sshPublicKeys/{fingerprint}`.", + "location": "path", + "pattern": "^users/[^/]+/sshPublicKeys/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "SshPublicKey" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "patch": { + "description": "Updates an SSH public key and returns the profile information. This method\nsupports patch semantics.", + "flatPath": "v1/users/{usersId}/sshPublicKeys/{sshPublicKeysId}", + "httpMethod": "PATCH", + "id": "oslogin.users.sshPublicKeys.patch", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The fingerprint of the public key to update. Public keys are identified by\ntheir SHA-256 fingerprint. The fingerprint of the public key is in format\n`users/{user}/sshPublicKeys/{fingerprint}`.", + "location": "path", + "pattern": "^users/[^/]+/sshPublicKeys/[^/]+$", + "required": true, + "type": "string" + }, + "updateMask": { + "description": "Mask to control which fields get updated. Updates all if not present.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + } + }, + "path": "v1/{+name}", + "request": { + "$ref": "SshPublicKey" + }, + "response": { + "$ref": "SshPublicKey" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + } + } + } + } + } + }, + "revision": "20180306", + "rootUrl": "https://oslogin.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" + }, + "ImportSshPublicKeyResponse": { + "description": "A response message for importing an SSH public key.", + "id": "ImportSshPublicKeyResponse", + "properties": { + "loginProfile": { + "$ref": "LoginProfile", + "description": "The login profile information for the user." + } + }, + "type": "object" + }, + "LoginProfile": { + "description": "The user profile information used for logging in to a virtual machine on\nGoogle Compute Engine.", + "id": "LoginProfile", + "properties": { + "name": { + "description": "A unique user ID.", + "type": "string" + }, + "posixAccounts": { + "description": "The list of POSIX accounts associated with the user.", + "items": { + "$ref": "PosixAccount" + }, + "type": "array" + }, + "sshPublicKeys": { + "additionalProperties": { + "$ref": "SshPublicKey" + }, + "description": "A map from SSH public key fingerprint to the associated key object.", + "type": "object" + } + }, + "type": "object" + }, "PosixAccount": { "description": "The POSIX account information associated with a Google account.", - "type": "object", + "id": "PosixAccount", "properties": { "accountId": { "description": "Output only. A POSIX account identifier.", "type": "string" }, + "gecos": { + "description": "The GECOS (user information) entry for this account.", + "type": "string" + }, "gid": { "description": "The default group ID.", "format": "int64", "type": "string" }, + "homeDirectory": { + "description": "The path to the home directory for this account.", + "type": "string" + }, + "primary": { + "description": "Only one POSIX account can be marked as primary.", + "type": "boolean" + }, + "shell": { + "description": "The path to the logic shell for this account.", + "type": "string" + }, + "systemId": { + "description": "System identifier for which account the username or uid applies to.\nBy default, the empty value is used.", + "type": "string" + }, "uid": { "description": "The user ID.", "format": "int64", @@ -32,64 +392,13 @@ "username": { "description": "The username of the POSIX account.", "type": "string" - }, - "shell": { - "description": "The path to the logic shell for this account.", - "type": "string" - }, - "homeDirectory": { - "description": "The path to the home directory for this account.", - "type": "string" - }, - "gecos": { - "description": "The GECOS (user information) entry for this account.", - "type": "string" - }, - "systemId": { - "description": "System identifier for which account the username or uid applies to.\nBy default, the empty value is used.", - "type": "string" - }, - "primary": { - "description": "Only one POSIX account can be marked as primary.", - "type": "boolean" } }, - "id": "PosixAccount" - }, - "LoginProfile": { - "description": "The user profile information used for logging in to a virtual machine on\nGoogle Compute Engine.", - "type": "object", - "properties": { - "sshPublicKeys": { - "description": "A map from SSH public key fingerprint to the associated key object.", - "type": "object", - "additionalProperties": { - "$ref": "SshPublicKey" - } - }, - "name": { - "description": "A unique user ID.", - "type": "string" - }, - "posixAccounts": { - "description": "The list of POSIX accounts associated with the user.", - "type": "array", - "items": { - "$ref": "PosixAccount" - } - } - }, - "id": "LoginProfile" - }, - "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 `{}`.", - "type": "object", - "properties": {}, - "id": "Empty" + "type": "object" }, "SshPublicKey": { "description": "The SSH public key information associated with a Google account.", - "type": "object", + "id": "SshPublicKey", "properties": { "expirationTimeUsec": { "description": "An expiration time in microseconds since epoch.", @@ -105,320 +414,11 @@ "type": "string" } }, - "id": "SshPublicKey" - }, - "ImportSshPublicKeyResponse": { - "description": "A response message for importing an SSH public key.", - "type": "object", - "properties": { - "loginProfile": { - "description": "The login profile information for the user.", - "$ref": "LoginProfile" - } - }, - "id": "ImportSshPublicKeyResponse" + "type": "object" } }, - "protocol": "rest", - "icons": { - "x32": "http://www.google.com/images/icons/product/search-32.gif", - "x16": "http://www.google.com/images/icons/product/search-16.gif" - }, - "canonicalName": "Cloud OS Login", - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/cloud-platform": { - "description": "View and manage your data across Google Cloud Platform services" - }, - "https://www.googleapis.com/auth/compute": { - "description": "View and manage your Google Compute Engine resources" - } - } - } - }, - "rootUrl": "https://oslogin.googleapis.com/", - "ownerDomain": "google.com", - "name": "oslogin", - "batchPath": "batch", - "fullyEncodeReservedExpansion": true, - "title": "Google Cloud OS Login API", - "ownerName": "Google", - "resources": { - "users": { - "methods": { - "importSshPublicKey": { - "response": { - "$ref": "ImportSshPublicKeyResponse" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "POST", - "parameters": { - "projectId": { - "description": "The project ID of the Google Cloud Platform project.", - "type": "string", - "location": "query" - }, - "parent": { - "description": "The unique ID for the user in format `users/{user}`.", - "required": true, - "type": "string", - "pattern": "^users/[^/]+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ], - "flatPath": "v1/users/{usersId}:importSshPublicKey", - "path": "v1/{+parent}:importSshPublicKey", - "id": "oslogin.users.importSshPublicKey", - "request": { - "$ref": "SshPublicKey" - }, - "description": "Adds an SSH public key and returns the profile information. Default POSIX\naccount information is set when no username and UID exist as part of the\nlogin profile." - }, - "getLoginProfile": { - "flatPath": "v1/users/{usersId}/loginProfile", - "path": "v1/{+name}/loginProfile", - "id": "oslogin.users.getLoginProfile", - "description": "Retrieves the profile information used for logging in to a virtual machine\non Google Compute Engine.", - "response": { - "$ref": "LoginProfile" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "GET", - "parameters": { - "name": { - "location": "path", - "description": "The unique ID for the user in format `users/{user}`.", - "required": true, - "type": "string", - "pattern": "^users/[^/]+$" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - } - }, - "resources": { - "projects": { - "methods": { - "delete": { - "flatPath": "v1/users/{usersId}/projects/{projectsId}", - "id": "oslogin.users.projects.delete", - "path": "v1/{+name}", - "description": "Deletes a POSIX account.", - "httpMethod": "DELETE", - "parameterOrder": [ - "name" - ], - "response": { - "$ref": "Empty" - }, - "parameters": { - "name": { - "description": "A reference to the POSIX account to update. POSIX accounts are identified\nby the project ID they are associated with. A reference to the POSIX\naccount is in format `users/{user}/projects/{project}`.", - "required": true, - "type": "string", - "pattern": "^users/[^/]+/projects/[^/]+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - } - } - }, - "sshPublicKeys": { - "methods": { - "delete": { - "description": "Deletes an SSH public key.", - "httpMethod": "DELETE", - "parameterOrder": [ - "name" - ], - "response": { - "$ref": "Empty" - }, - "parameters": { - "name": { - "location": "path", - "description": "The fingerprint of the public key to update. Public keys are identified by\ntheir SHA-256 fingerprint. The fingerprint of the public key is in format\n`users/{user}/sshPublicKeys/{fingerprint}`.", - "required": true, - "type": "string", - "pattern": "^users/[^/]+/sshPublicKeys/[^/]+$" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ], - "flatPath": "v1/users/{usersId}/sshPublicKeys/{sshPublicKeysId}", - "id": "oslogin.users.sshPublicKeys.delete", - "path": "v1/{+name}" - }, - "get": { - "response": { - "$ref": "SshPublicKey" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "GET", - "parameters": { - "name": { - "description": "The fingerprint of the public key to retrieve. Public keys are identified\nby their SHA-256 fingerprint. The fingerprint of the public key is in\nformat `users/{user}/sshPublicKeys/{fingerprint}`.", - "required": true, - "type": "string", - "pattern": "^users/[^/]+/sshPublicKeys/[^/]+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ], - "flatPath": "v1/users/{usersId}/sshPublicKeys/{sshPublicKeysId}", - "path": "v1/{+name}", - "id": "oslogin.users.sshPublicKeys.get", - "description": "Retrieves an SSH public key." - }, - "patch": { - "request": { - "$ref": "SshPublicKey" - }, - "description": "Updates an SSH public key and returns the profile information. This method\nsupports patch semantics.", - "httpMethod": "PATCH", - "parameterOrder": [ - "name" - ], - "response": { - "$ref": "SshPublicKey" - }, - "parameters": { - "updateMask": { - "description": "Mask to control which fields get updated. Updates all if not present.", - "format": "google-fieldmask", - "type": "string", - "location": "query" - }, - "name": { - "description": "The fingerprint of the public key to update. Public keys are identified by\ntheir SHA-256 fingerprint. The fingerprint of the public key is in format\n`users/{user}/sshPublicKeys/{fingerprint}`.", - "required": true, - "type": "string", - "pattern": "^users/[^/]+/sshPublicKeys/[^/]+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ], - "flatPath": "v1/users/{usersId}/sshPublicKeys/{sshPublicKeysId}", - "id": "oslogin.users.sshPublicKeys.patch", - "path": "v1/{+name}" - } - } - } - } - } - }, - "parameters": { - "quotaUser": { - "location": "query", - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", - "type": "string" - }, - "pp": { - "location": "query", - "description": "Pretty-print response.", - "type": "boolean", - "default": "true" - }, - "oauth_token": { - "description": "OAuth 2.0 token for the current user.", - "type": "string", - "location": "query" - }, - "bearer_token": { - "description": "OAuth bearer token.", - "type": "string", - "location": "query" - }, - "upload_protocol": { - "location": "query", - "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", - "type": "string" - }, - "prettyPrint": { - "description": "Returns response with indentations and line breaks.", - "type": "boolean", - "default": "true", - "location": "query" - }, - "uploadType": { - "location": "query", - "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", - "type": "string" - }, - "fields": { - "description": "Selector specifying which fields to include in a partial response.", - "type": "string", - "location": "query" - }, - "$.xgafv": { - "description": "V1 error format.", - "type": "string", - "enumDescriptions": [ - "v1 error format", - "v2 error format" - ], - "location": "query", - "enum": [ - "1", - "2" - ] - }, - "callback": { - "description": "JSONP", - "type": "string", - "location": "query" - }, - "alt": { - "type": "string", - "enumDescriptions": [ - "Responses with Content-Type of application/json", - "Media download with context-dependent Content-Type", - "Responses with Content-Type of application/x-protobuf" - ], - "location": "query", - "description": "Data format for response.", - "default": "json", - "enum": [ - "json", - "media", - "proto" - ] - }, - "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.", - "type": "string", - "location": "query" - }, - "access_token": { - "description": "OAuth access token.", - "type": "string", - "location": "query" - } - } -} + "servicePath": "", + "title": "Cloud OS Login API", + "version": "v1", + "version_module": true +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/oslogin/v1/oslogin-gen.go b/vendor/google.golang.org/api/oslogin/v1/oslogin-gen.go index 55149b679..9d5fa3293 100644 --- a/vendor/google.golang.org/api/oslogin/v1/oslogin-gen.go +++ b/vendor/google.golang.org/api/oslogin/v1/oslogin-gen.go @@ -1,4 +1,4 @@ -// Package oslogin provides access to the Google Cloud OS Login API. +// Package oslogin provides access to the Cloud OS Login API. // // See https://cloud.google.com/compute/docs/oslogin/rest/ // diff --git a/vendor/google.golang.org/api/oslogin/v1alpha/oslogin-api.json b/vendor/google.golang.org/api/oslogin/v1alpha/oslogin-api.json index 786224de4..5d2eddea0 100644 --- a/vendor/google.golang.org/api/oslogin/v1alpha/oslogin-api.json +++ b/vendor/google.golang.org/api/oslogin/v1alpha/oslogin-api.json @@ -1,297 +1,342 @@ { + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/cloud-platform": { + "description": "View and manage your data across Google Cloud Platform services" + }, + "https://www.googleapis.com/auth/cloud-platform.read-only": { + "description": "View your data across Google Cloud Platform services" + }, + "https://www.googleapis.com/auth/compute": { + "description": "View and manage your Google Compute Engine resources" + }, + "https://www.googleapis.com/auth/compute.readonly": { + "description": "View your Google Compute Engine resources" + } + } + } + }, + "basePath": "", + "baseUrl": "https://oslogin.googleapis.com/", + "batchPath": "batch", + "canonicalName": "Cloud OS Login", + "description": "Manages OS login configuration for Google account users.", + "discoveryVersion": "v1", + "documentationLink": "https://cloud.google.com/compute/docs/oslogin/rest/", + "fullyEncodeReservedExpansion": true, + "icons": { + "x16": "http://www.google.com/images/icons/product/search-16.gif", + "x32": "http://www.google.com/images/icons/product/search-32.gif" + }, + "id": "oslogin:v1alpha", + "kind": "discovery#restDescription", + "name": "oslogin", + "ownerDomain": "google.com", "ownerName": "Google", + "parameters": { + "$.xgafv": { + "description": "V1 error format.", + "enum": [ + "1", + "2" + ], + "enumDescriptions": [ + "v1 error format", + "v2 error format" + ], + "location": "query", + "type": "string" + }, + "access_token": { + "description": "OAuth access token.", + "location": "query", + "type": "string" + }, + "alt": { + "default": "json", + "description": "Data format for response.", + "enum": [ + "json", + "media", + "proto" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json", + "Media download with context-dependent Content-Type", + "Responses with Content-Type of application/x-protobuf" + ], + "location": "query", + "type": "string" + }, + "bearer_token": { + "description": "OAuth bearer token.", + "location": "query", + "type": "string" + }, + "callback": { + "description": "JSONP", + "location": "query", + "type": "string" + }, + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "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.", + "location": "query", + "type": "string" + }, + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "pp": { + "default": "true", + "description": "Pretty-print response.", + "location": "query", + "type": "boolean" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", + "location": "query", + "type": "string" + }, + "uploadType": { + "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", + "location": "query", + "type": "string" + }, + "upload_protocol": { + "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", + "location": "query", + "type": "string" + } + }, + "protocol": "rest", "resources": { "users": { - "resources": { - "sshPublicKeys": { - "methods": { - "delete": { - "path": "v1alpha/{+name}", - "id": "oslogin.users.sshPublicKeys.delete", - "description": "Deletes an SSH public key.", - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "DELETE", - "parameters": { - "name": { - "description": "The fingerprint of the public key to update. Public keys are identified by\ntheir SHA-256 fingerprint. The fingerprint of the public key is in format\n`users/{user}/sshPublicKeys/{fingerprint}`.", - "required": true, - "type": "string", - "pattern": "^users/[^/]+/sshPublicKeys/[^/]+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ], - "flatPath": "v1alpha/users/{usersId}/sshPublicKeys/{sshPublicKeysId}" - }, - "get": { - "response": { - "$ref": "SshPublicKey" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "GET", - "parameters": { - "name": { - "pattern": "^users/[^/]+/sshPublicKeys/[^/]+$", - "location": "path", - "description": "The fingerprint of the public key to retrieve. Public keys are identified\nby their SHA-256 fingerprint. The fingerprint of the public key is in\nformat `users/{user}/sshPublicKeys/{fingerprint}`.", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ], - "flatPath": "v1alpha/users/{usersId}/sshPublicKeys/{sshPublicKeysId}", - "path": "v1alpha/{+name}", - "id": "oslogin.users.sshPublicKeys.get", - "description": "Retrieves an SSH public key." - }, - "patch": { - "description": "Updates an SSH public key and returns the profile information. This method\nsupports patch semantics.", - "request": { - "$ref": "SshPublicKey" - }, - "response": { - "$ref": "SshPublicKey" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "PATCH", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ], - "parameters": { - "updateMask": { - "description": "Mask to control which fields get updated. Updates all if not present.", - "format": "google-fieldmask", - "type": "string", - "location": "query" - }, - "name": { - "pattern": "^users/[^/]+/sshPublicKeys/[^/]+$", - "location": "path", - "description": "The fingerprint of the public key to update. Public keys are identified by\ntheir SHA-256 fingerprint. The fingerprint of the public key is in format\n`users/{user}/sshPublicKeys/{fingerprint}`.", - "required": true, - "type": "string" - } - }, - "flatPath": "v1alpha/users/{usersId}/sshPublicKeys/{sshPublicKeysId}", - "path": "v1alpha/{+name}", - "id": "oslogin.users.sshPublicKeys.patch" - } - } - }, - "projects": { - "methods": { - "delete": { - "path": "v1alpha/{+name}", - "id": "oslogin.users.projects.delete", - "description": "Deletes a POSIX account.", - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "DELETE", - "parameters": { - "name": { - "pattern": "^users/[^/]+/projects/[^/]+$", - "location": "path", - "description": "A reference to the POSIX account to update. POSIX accounts are identified\nby the project ID they are associated with. A reference to the POSIX\naccount is in format `users/{user}/projects/{project}`.", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ], - "flatPath": "v1alpha/users/{usersId}/projects/{projectsId}" - } - } - } - }, "methods": { - "importSshPublicKey": { - "response": { - "$ref": "ImportSshPublicKeyResponse" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ], - "parameters": { - "projectId": { - "description": "The project ID of the Google Cloud Platform project.", - "type": "string", - "location": "query" - }, - "parent": { - "description": "The unique ID for the user in format `users/{user}`.", - "required": true, - "type": "string", - "pattern": "^users/[^/]+$", - "location": "path" - } - }, - "flatPath": "v1alpha/users/{usersId}:importSshPublicKey", - "path": "v1alpha/{+parent}:importSshPublicKey", - "id": "oslogin.users.importSshPublicKey", - "description": "Adds an SSH public key and returns the profile information. Default POSIX\naccount information is set when no username and UID exist as part of the\nlogin profile.", - "request": { - "$ref": "SshPublicKey" - } - }, "getLoginProfile": { + "description": "Retrieves the profile information used for logging in to a virtual machine\non Google Compute Engine.", + "flatPath": "v1alpha/users/{usersId}/loginProfile", "httpMethod": "GET", + "id": "oslogin.users.getLoginProfile", "parameterOrder": [ "name" ], - "response": { - "$ref": "LoginProfile" - }, "parameters": { "name": { "description": "The unique ID for the user in format `users/{user}`.", - "required": true, - "type": "string", + "location": "path", "pattern": "^users/[^/]+$", - "location": "path" + "required": true, + "type": "string" } }, + "path": "v1alpha/{+name}/loginProfile", + "response": { + "$ref": "LoginProfile" + }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/cloud-platform.read-only", "https://www.googleapis.com/auth/compute", "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "importSshPublicKey": { + "description": "Adds an SSH public key and returns the profile information. Default POSIX\naccount information is set when no username and UID exist as part of the\nlogin profile.", + "flatPath": "v1alpha/users/{usersId}:importSshPublicKey", + "httpMethod": "POST", + "id": "oslogin.users.importSshPublicKey", + "parameterOrder": [ + "parent" ], - "flatPath": "v1alpha/users/{usersId}/loginProfile", - "id": "oslogin.users.getLoginProfile", - "path": "v1alpha/{+name}/loginProfile", - "description": "Retrieves the profile information used for logging in to a virtual machine\non Google Compute Engine." + "parameters": { + "parent": { + "description": "The unique ID for the user in format `users/{user}`.", + "location": "path", + "pattern": "^users/[^/]+$", + "required": true, + "type": "string" + }, + "projectId": { + "description": "The project ID of the Google Cloud Platform project.", + "location": "query", + "type": "string" + } + }, + "path": "v1alpha/{+parent}:importSshPublicKey", + "request": { + "$ref": "SshPublicKey" + }, + "response": { + "$ref": "ImportSshPublicKeyResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + } + }, + "resources": { + "projects": { + "methods": { + "delete": { + "description": "Deletes a POSIX account.", + "flatPath": "v1alpha/users/{usersId}/projects/{projectsId}", + "httpMethod": "DELETE", + "id": "oslogin.users.projects.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "A reference to the POSIX account to update. POSIX accounts are identified\nby the project ID they are associated with. A reference to the POSIX\naccount is in format `users/{user}/projects/{project}`.", + "location": "path", + "pattern": "^users/[^/]+/projects/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1alpha/{+name}", + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + } + } + }, + "sshPublicKeys": { + "methods": { + "delete": { + "description": "Deletes an SSH public key.", + "flatPath": "v1alpha/users/{usersId}/sshPublicKeys/{sshPublicKeysId}", + "httpMethod": "DELETE", + "id": "oslogin.users.sshPublicKeys.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The fingerprint of the public key to update. Public keys are identified by\ntheir SHA-256 fingerprint. The fingerprint of the public key is in format\n`users/{user}/sshPublicKeys/{fingerprint}`.", + "location": "path", + "pattern": "^users/[^/]+/sshPublicKeys/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1alpha/{+name}", + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Retrieves an SSH public key.", + "flatPath": "v1alpha/users/{usersId}/sshPublicKeys/{sshPublicKeysId}", + "httpMethod": "GET", + "id": "oslogin.users.sshPublicKeys.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The fingerprint of the public key to retrieve. Public keys are identified\nby their SHA-256 fingerprint. The fingerprint of the public key is in\nformat `users/{user}/sshPublicKeys/{fingerprint}`.", + "location": "path", + "pattern": "^users/[^/]+/sshPublicKeys/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1alpha/{+name}", + "response": { + "$ref": "SshPublicKey" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "patch": { + "description": "Updates an SSH public key and returns the profile information. This method\nsupports patch semantics.", + "flatPath": "v1alpha/users/{usersId}/sshPublicKeys/{sshPublicKeysId}", + "httpMethod": "PATCH", + "id": "oslogin.users.sshPublicKeys.patch", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The fingerprint of the public key to update. Public keys are identified by\ntheir SHA-256 fingerprint. The fingerprint of the public key is in format\n`users/{user}/sshPublicKeys/{fingerprint}`.", + "location": "path", + "pattern": "^users/[^/]+/sshPublicKeys/[^/]+$", + "required": true, + "type": "string" + }, + "updateMask": { + "description": "Mask to control which fields get updated. Updates all if not present.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + } + }, + "path": "v1alpha/{+name}", + "request": { + "$ref": "SshPublicKey" + }, + "response": { + "$ref": "SshPublicKey" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + } + } } } } }, - "parameters": { - "access_token": { - "location": "query", - "description": "OAuth access token.", - "type": "string" - }, - "key": { - "location": "query", - "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.", - "type": "string" - }, - "quotaUser": { - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", - "type": "string", - "location": "query" - }, - "pp": { - "location": "query", - "description": "Pretty-print response.", - "type": "boolean", - "default": "true" - }, - "oauth_token": { - "description": "OAuth 2.0 token for the current user.", - "type": "string", - "location": "query" - }, - "bearer_token": { - "description": "OAuth bearer token.", - "type": "string", - "location": "query" - }, - "upload_protocol": { - "location": "query", - "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", - "type": "string" - }, - "prettyPrint": { - "location": "query", - "description": "Returns response with indentations and line breaks.", - "type": "boolean", - "default": "true" - }, - "fields": { - "location": "query", - "description": "Selector specifying which fields to include in a partial response.", - "type": "string" - }, - "uploadType": { - "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", - "type": "string", - "location": "query" - }, - "$.xgafv": { - "enum": [ - "1", - "2" - ], - "description": "V1 error format.", - "type": "string", - "enumDescriptions": [ - "v1 error format", - "v2 error format" - ], - "location": "query" - }, - "callback": { - "description": "JSONP", - "type": "string", - "location": "query" - }, - "alt": { - "description": "Data format for response.", - "default": "json", - "enum": [ - "json", - "media", - "proto" - ], - "type": "string", - "enumDescriptions": [ - "Responses with Content-Type of application/json", - "Media download with context-dependent Content-Type", - "Responses with Content-Type of application/x-protobuf" - ], - "location": "query" - } - }, - "version": "v1alpha", - "baseUrl": "https://oslogin.googleapis.com/", - "servicePath": "", - "description": "Manages OS login configuration for Google account users.", - "kind": "discovery#restDescription", - "basePath": "", - "id": "oslogin:v1alpha", - "documentationLink": "https://cloud.google.com/compute/docs/oslogin/rest/", - "revision": "20180119", - "discoveryVersion": "v1", - "version_module": true, + "revision": "20180306", + "rootUrl": "https://oslogin.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" + }, + "ImportSshPublicKeyResponse": { + "description": "A response message for importing an SSH public key.", + "id": "ImportSshPublicKeyResponse", + "properties": { + "loginProfile": { + "$ref": "LoginProfile", + "description": "The login profile information for the user." + } + }, + "type": "object" + }, "LoginProfile": { + "description": "The user profile information used for logging in to a virtual machine on\nGoogle Compute Engine.", + "id": "LoginProfile", "properties": { "name": { "description": "A unique user ID.", @@ -299,10 +344,10 @@ }, "posixAccounts": { "description": "The list of POSIX accounts associated with the user.", - "type": "array", "items": { "$ref": "PosixAccount" - } + }, + "type": "array" }, "sshPublicKeys": { "additionalProperties": { @@ -312,19 +357,56 @@ "type": "object" } }, - "id": "LoginProfile", - "description": "The user profile information used for logging in to a virtual machine on\nGoogle Compute Engine.", "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 `{}`.", - "type": "object", - "properties": {}, - "id": "Empty" + "PosixAccount": { + "description": "The POSIX account information associated with a Google account.", + "id": "PosixAccount", + "properties": { + "accountId": { + "description": "Output only. A POSIX account identifier.", + "type": "string" + }, + "gecos": { + "description": "The GECOS (user information) entry for this account.", + "type": "string" + }, + "gid": { + "description": "The default group ID.", + "format": "int64", + "type": "string" + }, + "homeDirectory": { + "description": "The path to the home directory for this account.", + "type": "string" + }, + "primary": { + "description": "Only one POSIX account can be marked as primary.", + "type": "boolean" + }, + "shell": { + "description": "The path to the logic shell for this account.", + "type": "string" + }, + "systemId": { + "description": "System identifier for which account the username or uid applies to.\nBy default, the empty value is used.", + "type": "string" + }, + "uid": { + "description": "The user ID.", + "format": "int64", + "type": "string" + }, + "username": { + "description": "The username of the POSIX account.", + "type": "string" + } + }, + "type": "object" }, "SshPublicKey": { "description": "The SSH public key information associated with a Google account.", - "type": "object", + "id": "SshPublicKey", "properties": { "expirationTimeUsec": { "description": "An expiration time in microseconds since epoch.", @@ -340,93 +422,11 @@ "type": "string" } }, - "id": "SshPublicKey" - }, - "ImportSshPublicKeyResponse": { - "properties": { - "loginProfile": { - "description": "The login profile information for the user.", - "$ref": "LoginProfile" - } - }, - "id": "ImportSshPublicKeyResponse", - "description": "A response message for importing an SSH public key.", "type": "object" - }, - "PosixAccount": { - "description": "The POSIX account information associated with a Google account.", - "type": "object", - "properties": { - "primary": { - "description": "Only one POSIX account can be marked as primary.", - "type": "boolean" - }, - "accountId": { - "description": "Output only. A POSIX account identifier.", - "type": "string" - }, - "gid": { - "description": "The default group ID.", - "format": "int64", - "type": "string" - }, - "uid": { - "description": "The user ID.", - "format": "int64", - "type": "string" - }, - "username": { - "description": "The username of the POSIX account.", - "type": "string" - }, - "shell": { - "description": "The path to the logic shell for this account.", - "type": "string" - }, - "homeDirectory": { - "description": "The path to the home directory for this account.", - "type": "string" - }, - "systemId": { - "description": "System identifier for which account the username or uid applies to.\nBy default, the empty value is used.", - "type": "string" - }, - "gecos": { - "description": "The GECOS (user information) entry for this account.", - "type": "string" - } - }, - "id": "PosixAccount" } }, - "protocol": "rest", - "icons": { - "x16": "http://www.google.com/images/icons/product/search-16.gif", - "x32": "http://www.google.com/images/icons/product/search-32.gif" - }, - "canonicalName": "Cloud OS Login", - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/cloud-platform": { - "description": "View and manage your data across Google Cloud Platform services" - }, - "https://www.googleapis.com/auth/compute.readonly": { - "description": "View your Google Compute Engine resources" - }, - "https://www.googleapis.com/auth/compute": { - "description": "View and manage your Google Compute Engine resources" - }, - "https://www.googleapis.com/auth/cloud-platform.read-only": { - "description": "View your data across Google Cloud Platform services" - } - } - } - }, - "rootUrl": "https://oslogin.googleapis.com/", - "ownerDomain": "google.com", - "name": "oslogin", - "batchPath": "batch", - "fullyEncodeReservedExpansion": true, - "title": "Google Cloud OS Login API" -} + "servicePath": "", + "title": "Cloud OS Login API", + "version": "v1alpha", + "version_module": true +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/oslogin/v1alpha/oslogin-gen.go b/vendor/google.golang.org/api/oslogin/v1alpha/oslogin-gen.go index 8230e325e..ceac68348 100644 --- a/vendor/google.golang.org/api/oslogin/v1alpha/oslogin-gen.go +++ b/vendor/google.golang.org/api/oslogin/v1alpha/oslogin-gen.go @@ -1,4 +1,4 @@ -// Package oslogin provides access to the Google Cloud OS Login API. +// Package oslogin provides access to the Cloud OS Login API. // // See https://cloud.google.com/compute/docs/oslogin/rest/ // diff --git a/vendor/google.golang.org/api/oslogin/v1beta/oslogin-api.json b/vendor/google.golang.org/api/oslogin/v1beta/oslogin-api.json index 5dfad3849..513a04712 100644 --- a/vendor/google.golang.org/api/oslogin/v1beta/oslogin-api.json +++ b/vendor/google.golang.org/api/oslogin/v1beta/oslogin-api.json @@ -1,33 +1,397 @@ { + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/cloud-platform": { + "description": "View and manage your data across Google Cloud Platform services" + }, + "https://www.googleapis.com/auth/cloud-platform.read-only": { + "description": "View your data across Google Cloud Platform services" + }, + "https://www.googleapis.com/auth/compute": { + "description": "View and manage your Google Compute Engine resources" + }, + "https://www.googleapis.com/auth/compute.readonly": { + "description": "View your Google Compute Engine resources" + } + } + } + }, + "basePath": "", + "baseUrl": "https://oslogin.googleapis.com/", + "batchPath": "batch", + "canonicalName": "Cloud OS Login", + "description": "Manages OS login configuration for Google account users.", "discoveryVersion": "v1", - "version_module": true, + "documentationLink": "https://cloud.google.com/compute/docs/oslogin/rest/", + "fullyEncodeReservedExpansion": true, + "icons": { + "x16": "http://www.google.com/images/icons/product/search-16.gif", + "x32": "http://www.google.com/images/icons/product/search-32.gif" + }, + "id": "oslogin:v1beta", + "kind": "discovery#restDescription", + "name": "oslogin", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "$.xgafv": { + "description": "V1 error format.", + "enum": [ + "1", + "2" + ], + "enumDescriptions": [ + "v1 error format", + "v2 error format" + ], + "location": "query", + "type": "string" + }, + "access_token": { + "description": "OAuth access token.", + "location": "query", + "type": "string" + }, + "alt": { + "default": "json", + "description": "Data format for response.", + "enum": [ + "json", + "media", + "proto" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json", + "Media download with context-dependent Content-Type", + "Responses with Content-Type of application/x-protobuf" + ], + "location": "query", + "type": "string" + }, + "bearer_token": { + "description": "OAuth bearer token.", + "location": "query", + "type": "string" + }, + "callback": { + "description": "JSONP", + "location": "query", + "type": "string" + }, + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "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.", + "location": "query", + "type": "string" + }, + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "pp": { + "default": "true", + "description": "Pretty-print response.", + "location": "query", + "type": "boolean" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", + "location": "query", + "type": "string" + }, + "uploadType": { + "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", + "location": "query", + "type": "string" + }, + "upload_protocol": { + "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", + "location": "query", + "type": "string" + } + }, + "protocol": "rest", + "resources": { + "users": { + "methods": { + "getLoginProfile": { + "description": "Retrieves the profile information used for logging in to a virtual machine\non Google Compute Engine.", + "flatPath": "v1beta/users/{usersId}/loginProfile", + "httpMethod": "GET", + "id": "oslogin.users.getLoginProfile", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The unique ID for the user in format `users/{user}`.", + "location": "path", + "pattern": "^users/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta/{+name}/loginProfile", + "response": { + "$ref": "LoginProfile" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "importSshPublicKey": { + "description": "Adds an SSH public key and returns the profile information. Default POSIX\naccount information is set when no username and UID exist as part of the\nlogin profile.", + "flatPath": "v1beta/users/{usersId}:importSshPublicKey", + "httpMethod": "POST", + "id": "oslogin.users.importSshPublicKey", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "The unique ID for the user in format `users/{user}`.", + "location": "path", + "pattern": "^users/[^/]+$", + "required": true, + "type": "string" + }, + "projectId": { + "description": "The project ID of the Google Cloud Platform project.", + "location": "query", + "type": "string" + } + }, + "path": "v1beta/{+parent}:importSshPublicKey", + "request": { + "$ref": "SshPublicKey" + }, + "response": { + "$ref": "ImportSshPublicKeyResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + } + }, + "resources": { + "projects": { + "methods": { + "delete": { + "description": "Deletes a POSIX account.", + "flatPath": "v1beta/users/{usersId}/projects/{projectsId}", + "httpMethod": "DELETE", + "id": "oslogin.users.projects.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "A reference to the POSIX account to update. POSIX accounts are identified\nby the project ID they are associated with. A reference to the POSIX\naccount is in format `users/{user}/projects/{project}`.", + "location": "path", + "pattern": "^users/[^/]+/projects/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta/{+name}", + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + } + } + }, + "sshPublicKeys": { + "methods": { + "delete": { + "description": "Deletes an SSH public key.", + "flatPath": "v1beta/users/{usersId}/sshPublicKeys/{sshPublicKeysId}", + "httpMethod": "DELETE", + "id": "oslogin.users.sshPublicKeys.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The fingerprint of the public key to update. Public keys are identified by\ntheir SHA-256 fingerprint. The fingerprint of the public key is in format\n`users/{user}/sshPublicKeys/{fingerprint}`.", + "location": "path", + "pattern": "^users/[^/]+/sshPublicKeys/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta/{+name}", + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Retrieves an SSH public key.", + "flatPath": "v1beta/users/{usersId}/sshPublicKeys/{sshPublicKeysId}", + "httpMethod": "GET", + "id": "oslogin.users.sshPublicKeys.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The fingerprint of the public key to retrieve. Public keys are identified\nby their SHA-256 fingerprint. The fingerprint of the public key is in\nformat `users/{user}/sshPublicKeys/{fingerprint}`.", + "location": "path", + "pattern": "^users/[^/]+/sshPublicKeys/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta/{+name}", + "response": { + "$ref": "SshPublicKey" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "patch": { + "description": "Updates an SSH public key and returns the profile information. This method\nsupports patch semantics.", + "flatPath": "v1beta/users/{usersId}/sshPublicKeys/{sshPublicKeysId}", + "httpMethod": "PATCH", + "id": "oslogin.users.sshPublicKeys.patch", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The fingerprint of the public key to update. Public keys are identified by\ntheir SHA-256 fingerprint. The fingerprint of the public key is in format\n`users/{user}/sshPublicKeys/{fingerprint}`.", + "location": "path", + "pattern": "^users/[^/]+/sshPublicKeys/[^/]+$", + "required": true, + "type": "string" + }, + "updateMask": { + "description": "Mask to control which fields get updated. Updates all if not present.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + } + }, + "path": "v1beta/{+name}", + "request": { + "$ref": "SshPublicKey" + }, + "response": { + "$ref": "SshPublicKey" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + } + } + } + } + } + }, + "revision": "20180306", + "rootUrl": "https://oslogin.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" + }, "ImportSshPublicKeyResponse": { "description": "A response message for importing an SSH public key.", - "type": "object", + "id": "ImportSshPublicKeyResponse", "properties": { "loginProfile": { "$ref": "LoginProfile", "description": "The login profile information for the user." } }, - "id": "ImportSshPublicKeyResponse" + "type": "object" + }, + "LoginProfile": { + "description": "The user profile information used for logging in to a virtual machine on\nGoogle Compute Engine.", + "id": "LoginProfile", + "properties": { + "name": { + "description": "A unique user ID.", + "type": "string" + }, + "posixAccounts": { + "description": "The list of POSIX accounts associated with the user.", + "items": { + "$ref": "PosixAccount" + }, + "type": "array" + }, + "sshPublicKeys": { + "additionalProperties": { + "$ref": "SshPublicKey" + }, + "description": "A map from SSH public key fingerprint to the associated key object.", + "type": "object" + } + }, + "type": "object" }, "PosixAccount": { + "description": "The POSIX account information associated with a Google account.", + "id": "PosixAccount", "properties": { - "primary": { - "description": "Only one POSIX account can be marked as primary.", - "type": "boolean" - }, "accountId": { "description": "Output only. A POSIX account identifier.", "type": "string" }, + "gecos": { + "description": "The GECOS (user information) entry for this account.", + "type": "string" + }, "gid": { "description": "The default group ID.", "format": "int64", "type": "string" }, + "homeDirectory": { + "description": "The path to the home directory for this account.", + "type": "string" + }, + "primary": { + "description": "Only one POSIX account can be marked as primary.", + "type": "boolean" + }, + "shell": { + "description": "The path to the logic shell for this account.", + "type": "string" + }, + "systemId": { + "description": "System identifier for which account the username or uid applies to.\nBy default, the empty value is used.", + "type": "string" + }, "uid": { "description": "The user ID.", "format": "int64", @@ -36,62 +400,13 @@ "username": { "description": "The username of the POSIX account.", "type": "string" - }, - "shell": { - "description": "The path to the logic shell for this account.", - "type": "string" - }, - "homeDirectory": { - "description": "The path to the home directory for this account.", - "type": "string" - }, - "systemId": { - "description": "System identifier for which account the username or uid applies to.\nBy default, the empty value is used.", - "type": "string" - }, - "gecos": { - "description": "The GECOS (user information) entry for this account.", - "type": "string" } }, - "id": "PosixAccount", - "description": "The POSIX account information associated with a Google account.", - "type": "object" - }, - "LoginProfile": { - "properties": { - "sshPublicKeys": { - "additionalProperties": { - "$ref": "SshPublicKey" - }, - "description": "A map from SSH public key fingerprint to the associated key object.", - "type": "object" - }, - "name": { - "description": "A unique user ID.", - "type": "string" - }, - "posixAccounts": { - "description": "The list of POSIX accounts associated with the user.", - "type": "array", - "items": { - "$ref": "PosixAccount" - } - } - }, - "id": "LoginProfile", - "description": "The user profile information used for logging in to a virtual machine on\nGoogle Compute Engine.", - "type": "object" - }, - "Empty": { - "properties": {}, - "id": "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 `{}`.", "type": "object" }, "SshPublicKey": { "description": "The SSH public key information associated with a Google account.", - "type": "object", + "id": "SshPublicKey", "properties": { "expirationTimeUsec": { "description": "An expiration time in microseconds since epoch.", @@ -107,326 +422,11 @@ "type": "string" } }, - "id": "SshPublicKey" + "type": "object" } }, - "protocol": "rest", - "icons": { - "x16": "http://www.google.com/images/icons/product/search-16.gif", - "x32": "http://www.google.com/images/icons/product/search-32.gif" - }, - "canonicalName": "Cloud OS Login", - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/compute.readonly": { - "description": "View your Google Compute Engine resources" - }, - "https://www.googleapis.com/auth/compute": { - "description": "View and manage your Google Compute Engine resources" - }, - "https://www.googleapis.com/auth/cloud-platform.read-only": { - "description": "View your data across Google Cloud Platform services" - }, - "https://www.googleapis.com/auth/cloud-platform": { - "description": "View and manage your data across Google Cloud Platform services" - } - } - } - }, - "rootUrl": "https://oslogin.googleapis.com/", - "ownerDomain": "google.com", - "name": "oslogin", - "batchPath": "batch", - "fullyEncodeReservedExpansion": true, - "title": "Google Cloud OS Login API", - "ownerName": "Google", - "resources": { - "users": { - "resources": { - "sshPublicKeys": { - "methods": { - "delete": { - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "DELETE", - "parameters": { - "name": { - "description": "The fingerprint of the public key to update. Public keys are identified by\ntheir SHA-256 fingerprint. The fingerprint of the public key is in format\n`users/{user}/sshPublicKeys/{fingerprint}`.", - "required": true, - "type": "string", - "pattern": "^users/[^/]+/sshPublicKeys/[^/]+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ], - "flatPath": "v1beta/users/{usersId}/sshPublicKeys/{sshPublicKeysId}", - "path": "v1beta/{+name}", - "id": "oslogin.users.sshPublicKeys.delete", - "description": "Deletes an SSH public key." - }, - "get": { - "flatPath": "v1beta/users/{usersId}/sshPublicKeys/{sshPublicKeysId}", - "path": "v1beta/{+name}", - "id": "oslogin.users.sshPublicKeys.get", - "description": "Retrieves an SSH public key.", - "response": { - "$ref": "SshPublicKey" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ], - "parameters": { - "name": { - "location": "path", - "description": "The fingerprint of the public key to retrieve. Public keys are identified\nby their SHA-256 fingerprint. The fingerprint of the public key is in\nformat `users/{user}/sshPublicKeys/{fingerprint}`.", - "required": true, - "type": "string", - "pattern": "^users/[^/]+/sshPublicKeys/[^/]+$" - } - } - }, - "patch": { - "description": "Updates an SSH public key and returns the profile information. This method\nsupports patch semantics.", - "request": { - "$ref": "SshPublicKey" - }, - "response": { - "$ref": "SshPublicKey" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "PATCH", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ], - "parameters": { - "updateMask": { - "location": "query", - "description": "Mask to control which fields get updated. Updates all if not present.", - "format": "google-fieldmask", - "type": "string" - }, - "name": { - "location": "path", - "description": "The fingerprint of the public key to update. Public keys are identified by\ntheir SHA-256 fingerprint. The fingerprint of the public key is in format\n`users/{user}/sshPublicKeys/{fingerprint}`.", - "required": true, - "type": "string", - "pattern": "^users/[^/]+/sshPublicKeys/[^/]+$" - } - }, - "flatPath": "v1beta/users/{usersId}/sshPublicKeys/{sshPublicKeysId}", - "path": "v1beta/{+name}", - "id": "oslogin.users.sshPublicKeys.patch" - } - } - }, - "projects": { - "methods": { - "delete": { - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "DELETE", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ], - "parameters": { - "name": { - "pattern": "^users/[^/]+/projects/[^/]+$", - "location": "path", - "description": "A reference to the POSIX account to update. POSIX accounts are identified\nby the project ID they are associated with. A reference to the POSIX\naccount is in format `users/{user}/projects/{project}`.", - "required": true, - "type": "string" - } - }, - "flatPath": "v1beta/users/{usersId}/projects/{projectsId}", - "path": "v1beta/{+name}", - "id": "oslogin.users.projects.delete", - "description": "Deletes a POSIX account." - } - } - } - }, - "methods": { - "importSshPublicKey": { - "httpMethod": "POST", - "parameterOrder": [ - "parent" - ], - "response": { - "$ref": "ImportSshPublicKeyResponse" - }, - "parameters": { - "projectId": { - "location": "query", - "description": "The project ID of the Google Cloud Platform project.", - "type": "string" - }, - "parent": { - "pattern": "^users/[^/]+$", - "location": "path", - "description": "The unique ID for the user in format `users/{user}`.", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ], - "flatPath": "v1beta/users/{usersId}:importSshPublicKey", - "id": "oslogin.users.importSshPublicKey", - "path": "v1beta/{+parent}:importSshPublicKey", - "request": { - "$ref": "SshPublicKey" - }, - "description": "Adds an SSH public key and returns the profile information. Default POSIX\naccount information is set when no username and UID exist as part of the\nlogin profile." - }, - "getLoginProfile": { - "description": "Retrieves the profile information used for logging in to a virtual machine\non Google Compute Engine.", - "response": { - "$ref": "LoginProfile" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ], - "parameters": { - "name": { - "location": "path", - "description": "The unique ID for the user in format `users/{user}`.", - "required": true, - "type": "string", - "pattern": "^users/[^/]+$" - } - }, - "flatPath": "v1beta/users/{usersId}/loginProfile", - "path": "v1beta/{+name}/loginProfile", - "id": "oslogin.users.getLoginProfile" - } - } - } - }, - "parameters": { - "upload_protocol": { - "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", - "type": "string", - "location": "query" - }, - "prettyPrint": { - "location": "query", - "description": "Returns response with indentations and line breaks.", - "type": "boolean", - "default": "true" - }, - "uploadType": { - "location": "query", - "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", - "type": "string" - }, - "fields": { - "description": "Selector specifying which fields to include in a partial response.", - "type": "string", - "location": "query" - }, - "$.xgafv": { - "enumDescriptions": [ - "v1 error format", - "v2 error format" - ], - "location": "query", - "enum": [ - "1", - "2" - ], - "description": "V1 error format.", - "type": "string" - }, - "callback": { - "location": "query", - "description": "JSONP", - "type": "string" - }, - "alt": { - "description": "Data format for response.", - "default": "json", - "enum": [ - "json", - "media", - "proto" - ], - "type": "string", - "enumDescriptions": [ - "Responses with Content-Type of application/json", - "Media download with context-dependent Content-Type", - "Responses with Content-Type of application/x-protobuf" - ], - "location": "query" - }, - "access_token": { - "location": "query", - "description": "OAuth access token.", - "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.", - "type": "string", - "location": "query" - }, - "quotaUser": { - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", - "type": "string", - "location": "query" - }, - "pp": { - "description": "Pretty-print response.", - "type": "boolean", - "default": "true", - "location": "query" - }, - "oauth_token": { - "description": "OAuth 2.0 token for the current user.", - "type": "string", - "location": "query" - }, - "bearer_token": { - "location": "query", - "description": "OAuth bearer token.", - "type": "string" - } - }, - "version": "v1beta", - "baseUrl": "https://oslogin.googleapis.com/", "servicePath": "", - "description": "Manages OS login configuration for Google account users.", - "kind": "discovery#restDescription", - "basePath": "", - "id": "oslogin:v1beta", - "documentationLink": "https://cloud.google.com/compute/docs/oslogin/rest/", - "revision": "20180119" -} + "title": "Cloud OS Login API", + "version": "v1beta", + "version_module": true +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/oslogin/v1beta/oslogin-gen.go b/vendor/google.golang.org/api/oslogin/v1beta/oslogin-gen.go index c501e1a6b..186922ca1 100644 --- a/vendor/google.golang.org/api/oslogin/v1beta/oslogin-gen.go +++ b/vendor/google.golang.org/api/oslogin/v1beta/oslogin-gen.go @@ -1,4 +1,4 @@ -// Package oslogin provides access to the Google Cloud OS Login API. +// Package oslogin provides access to the Cloud OS Login API. // // See https://cloud.google.com/compute/docs/oslogin/rest/ // diff --git a/vendor/google.golang.org/api/pagespeedonline/v1/pagespeedonline-api.json b/vendor/google.golang.org/api/pagespeedonline/v1/pagespeedonline-api.json index 6ab14bbf3..a94e0d696 100644 --- a/vendor/google.golang.org/api/pagespeedonline/v1/pagespeedonline-api.json +++ b/vendor/google.golang.org/api/pagespeedonline/v1/pagespeedonline-api.json @@ -1,419 +1,419 @@ { - "kind": "discovery#restDescription", - "etag": "\"YWOzh2SDasdU84ArJnpYek-OMdg/yA0wO_BQAqQnJsdCdy0wjsFB7bE\"", - "discoveryVersion": "v1", - "id": "pagespeedonline:v1", - "name": "pagespeedonline", - "version": "v1", - "revision": "20180108", - "title": "PageSpeed Insights API", - "description": "Analyzes the performance of a web page and provides tailored suggestions to make that page faster.", - "ownerDomain": "google.com", - "ownerName": "Google", - "icons": { - "x16": "https://www.google.com/images/icons/product/pagespeed-16.png", - "x32": "https://www.google.com/images/icons/product/pagespeed-32.png" - }, - "documentationLink": "https://developers.google.com/speed/docs/insights/v1/getting_started", - "protocol": "rest", - "baseUrl": "https://www.googleapis.com/pagespeedonline/v1/", - "basePath": "/pagespeedonline/v1/", - "rootUrl": "https://www.googleapis.com/", - "servicePath": "pagespeedonline/v1/", - "batchPath": "batch/pagespeedonline/v1", - "parameters": { - "alt": { - "type": "string", - "description": "Data format for the response.", - "default": "json", - "enum": [ - "json" - ], - "enumDescriptions": [ - "Responses with Content-Type of application/json" - ], - "location": "query" + "basePath": "/pagespeedonline/v1/", + "baseUrl": "https://www.googleapis.com/pagespeedonline/v1/", + "batchPath": "batch/pagespeedonline/v1", + "description": "Analyzes the performance of a web page and provides tailored suggestions to make that page faster.", + "discoveryVersion": "v1", + "documentationLink": "https://developers.google.com/speed/docs/insights/v1/getting_started", + "etag": "\"-iA1DTNe4s-I6JZXPt1t1Ypy8IU/2oDXdMEFBFoscYUyDCfpupjQitI\"", + "icons": { + "x16": "https://www.google.com/images/icons/product/pagespeed-16.png", + "x32": "https://www.google.com/images/icons/product/pagespeed-32.png" }, - "fields": { - "type": "string", - "description": "Selector specifying which fields to include in a partial response.", - "location": "query" - }, - "key": { - "type": "string", - "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" - }, - "oauth_token": { - "type": "string", - "description": "OAuth 2.0 token for the current user.", - "location": "query" - }, - "prettyPrint": { - "type": "boolean", - "description": "Returns response with indentations and line breaks.", - "default": "true", - "location": "query" - }, - "quotaUser": { - "type": "string", - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", - "location": "query" - }, - "userIp": { - "type": "string", - "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", - "location": "query" - } - }, - "schemas": { - "Result": { - "id": "Result", - "type": "object", - "properties": { - "captchaResult": { - "type": "string", - "description": "The captcha verify result" - }, - "formattedResults": { - "type": "object", - "description": "Localized PageSpeed results. Contains a ruleResults entry for each PageSpeed rule instantiated and run by the server.", - "properties": { - "locale": { - "type": "string", - "description": "The locale of the formattedResults, e.g. \"en_US\"." - }, - "ruleResults": { - "type": "object", - "description": "Dictionary of formatted rule results, with one entry for each PageSpeed rule instantiated and run by the server.", - "additionalProperties": { - "type": "object", - "description": "The enum-like identifier for this rule. For instance \"EnableKeepAlive\" or \"AvoidCssImport\". Not localized.", - "properties": { - "localizedRuleName": { - "type": "string", - "description": "Localized name of the rule, intended for presentation to a user." - }, - "ruleImpact": { - "type": "number", - "description": "The impact (unbounded floating point value) that implementing the suggestions for this rule would have on making the page faster. Impact is comparable between rules to determine which rule's suggestions would have a higher or lower impact on making a page faster. For instance, if enabling compression would save 1MB, while optimizing images would save 500kB, the enable compression rule would have 2x the impact of the image optimization rule, all other things being equal.", - "format": "double" - }, - "urlBlocks": { - "type": "array", - "description": "List of blocks of URLs. Each block may contain a heading and a list of URLs. Each URL may optionally include additional details.", - "items": { - "type": "object", - "properties": { - "header": { - "type": "object", - "description": "Heading to be displayed with the list of URLs.", - "properties": { - "args": { - "type": "array", - "description": "List of arguments for the format string.", - "items": { - "type": "object", - "properties": { - "type": { - "type": "string", - "description": "Type of argument. One of URL, STRING_LITERAL, INT_LITERAL, BYTES, or DURATION." - }, - "value": { - "type": "string", - "description": "Argument value, as a localized string." - } - } - } - }, - "format": { - "type": "string", - "description": "A localized format string with $N placeholders, where N is the 1-indexed argument number, e.g. 'Minifying the following $1 resources would save a total of $2 bytes'." - } - } - }, - "urls": { - "type": "array", - "description": "List of entries that provide information about URLs in the url block. Optional.", - "items": { - "type": "object", - "properties": { - "details": { - "type": "array", - "description": "List of entries that provide additional details about a single URL. Optional.", - "items": { - "type": "object", - "properties": { - "args": { - "type": "array", - "description": "List of arguments for the format string.", - "items": { - "type": "object", - "properties": { - "type": { - "type": "string", - "description": "Type of argument. One of URL, STRING_LITERAL, INT_LITERAL, BYTES, or DURATION." - }, - "value": { - "type": "string", - "description": "Argument value, as a localized string." - } - } - } - }, - "format": { - "type": "string", - "description": "A localized format string with $N placeholders, where N is the 1-indexed argument number, e.g. 'Unnecessary metadata for this resource adds an additional $1 bytes to its download size'." - } - } - } - }, - "result": { - "type": "object", - "description": "A format string that gives information about the URL, and a list of arguments for that format string.", - "properties": { - "args": { - "type": "array", - "description": "List of arguments for the format string.", - "items": { - "type": "object", - "properties": { - "type": { - "type": "string", - "description": "Type of argument. One of URL, STRING_LITERAL, INT_LITERAL, BYTES, or DURATION." - }, - "value": { - "type": "string", - "description": "Argument value, as a localized string." - } - } - } - }, - "format": { - "type": "string", - "description": "A localized format string with $N placeholders, where N is the 1-indexed argument number, e.g. 'Minifying the resource at URL $1 can save $2 bytes'." - } - } - } - } - } - } - } - } - } - } - } - } - } - }, - "id": { - "type": "string", - "description": "Canonicalized and final URL for the document, after following page redirects (if any)." - }, - "invalidRules": { - "type": "array", - "description": "List of rules that were specified in the request, but which the server did not know how to instantiate.", - "items": { + "id": "pagespeedonline:v1", + "kind": "discovery#restDescription", + "name": "pagespeedonline", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "alt": { + "default": "json", + "description": "Data format for the response.", + "enum": [ + "json" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json" + ], + "location": "query", "type": "string" - } }, - "kind": { - "type": "string", - "description": "Kind of result.", - "default": "pagespeedonline#result" + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "location": "query", + "type": "string" }, - "pageStats": { - "type": "object", - "description": "Summary statistics for the page, such as number of JavaScript bytes, number of HTML bytes, etc.", - "properties": { - "cssResponseBytes": { - "type": "string", - "description": "Number of uncompressed response bytes for CSS resources on the page.", - "format": "int64" - }, - "flashResponseBytes": { - "type": "string", - "description": "Number of response bytes for flash resources on the page.", - "format": "int64" - }, - "htmlResponseBytes": { - "type": "string", - "description": "Number of uncompressed response bytes for the main HTML document and all iframes on the page.", - "format": "int64" - }, - "imageResponseBytes": { - "type": "string", - "description": "Number of response bytes for image resources on the page.", - "format": "int64" - }, - "javascriptResponseBytes": { - "type": "string", - "description": "Number of uncompressed response bytes for JS resources on the page.", - "format": "int64" - }, - "numberCssResources": { - "type": "integer", - "description": "Number of CSS resources referenced by the page.", - "format": "int32" - }, - "numberHosts": { - "type": "integer", - "description": "Number of unique hosts referenced by the page.", - "format": "int32" - }, - "numberJsResources": { - "type": "integer", - "description": "Number of JavaScript resources referenced by the page.", - "format": "int32" - }, - "numberResources": { - "type": "integer", - "description": "Number of HTTP resources loaded by the page.", - "format": "int32" - }, - "numberStaticResources": { - "type": "integer", - "description": "Number of static (i.e. cacheable) resources on the page.", - "format": "int32" - }, - "otherResponseBytes": { - "type": "string", - "description": "Number of response bytes for other resources on the page.", - "format": "int64" - }, - "textResponseBytes": { - "type": "string", - "description": "Number of uncompressed response bytes for text resources not covered by other statistics (i.e non-HTML, non-script, non-CSS resources) on the page.", - "format": "int64" - }, - "totalRequestBytes": { - "type": "string", - "description": "Total size of all request bytes sent by the page.", - "format": "int64" - } - } + "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" }, - "responseCode": { - "type": "integer", - "description": "Response code for the document. 200 indicates a normal page load. 4xx/5xx indicates an error.", - "format": "int32" + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" }, - "score": { - "type": "integer", - "description": "The PageSpeed Score (0-100), which indicates how much faster a page could be. A high score indicates little room for improvement, while a lower score indicates more room for improvement.", - "format": "int32" + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" }, - "screenshot": { - "type": "object", - "description": "Base64-encoded screenshot of the page that was analyzed.", - "properties": { - "data": { - "type": "string", - "description": "Image data base64 encoded.", - "format": "byte" - }, - "height": { - "type": "integer", - "description": "Height of screenshot in pixels.", - "format": "int32" - }, - "mime_type": { - "type": "string", - "description": "Mime type of image data. E.g. \"image/jpeg\"." - }, - "width": { - "type": "integer", - "description": "Width of screenshot in pixels.", - "format": "int32" - } - } + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", + "location": "query", + "type": "string" }, - "title": { - "type": "string", - "description": "Title of the page, as displayed in the browser's title bar." - }, - "version": { - "type": "object", - "description": "The version of PageSpeed used to generate these results.", - "properties": { - "major": { - "type": "integer", - "description": "The major version number of PageSpeed used to generate these results.", - "format": "int32" - }, - "minor": { - "type": "integer", - "description": "The minor version number of PageSpeed used to generate these results.", - "format": "int32" - } - } + "userIp": { + "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", + "location": "query", + "type": "string" } - } - } - }, - "resources": { - "pagespeedapi": { - "methods": { - "runpagespeed": { - "id": "pagespeedonline.pagespeedapi.runpagespeed", - "path": "runPagespeed", - "httpMethod": "GET", - "description": "Runs PageSpeed analysis on the page at the specified URL, and returns a PageSpeed score, a list of suggestions to make that page faster, and other information.", - "parameters": { - "filter_third_party_resources": { - "type": "boolean", - "description": "Indicates if third party resources should be filtered out before PageSpeed analysis.", - "default": "false", - "location": "query" - }, - "locale": { - "type": "string", - "description": "The locale used to localize formatted results", - "pattern": "[a-zA-Z]+(_[a-zA-Z]+)?", - "location": "query" - }, - "rule": { - "type": "string", - "description": "A PageSpeed rule to run; if none are given, all rules are run", - "pattern": "[a-zA-Z]+", - "repeated": true, - "location": "query" - }, - "screenshot": { - "type": "boolean", - "description": "Indicates if binary data containing a screenshot should be included", - "default": "false", - "location": "query" - }, - "strategy": { - "type": "string", - "description": "The analysis strategy to use", - "enum": [ - "desktop", - "mobile" - ], - "enumDescriptions": [ - "Fetch and analyze the URL for desktop browsers", - "Fetch and analyze the URL for mobile devices" - ], - "location": "query" - }, - "url": { - "type": "string", - "description": "The URL to fetch and analyze", - "required": true, - "pattern": "(?i)http(s)?://.*", - "location": "query" + }, + "protocol": "rest", + "resources": { + "pagespeedapi": { + "methods": { + "runpagespeed": { + "description": "Runs PageSpeed analysis on the page at the specified URL, and returns a PageSpeed score, a list of suggestions to make that page faster, and other information.", + "httpMethod": "GET", + "id": "pagespeedonline.pagespeedapi.runpagespeed", + "parameterOrder": [ + "url" + ], + "parameters": { + "filter_third_party_resources": { + "default": "false", + "description": "Indicates if third party resources should be filtered out before PageSpeed analysis.", + "location": "query", + "type": "boolean" + }, + "locale": { + "description": "The locale used to localize formatted results", + "location": "query", + "pattern": "[a-zA-Z]+(_[a-zA-Z]+)?", + "type": "string" + }, + "rule": { + "description": "A PageSpeed rule to run; if none are given, all rules are run", + "location": "query", + "pattern": "[a-zA-Z]+", + "repeated": true, + "type": "string" + }, + "screenshot": { + "default": "false", + "description": "Indicates if binary data containing a screenshot should be included", + "location": "query", + "type": "boolean" + }, + "strategy": { + "description": "The analysis strategy to use", + "enum": [ + "desktop", + "mobile" + ], + "enumDescriptions": [ + "Fetch and analyze the URL for desktop browsers", + "Fetch and analyze the URL for mobile devices" + ], + "location": "query", + "type": "string" + }, + "url": { + "description": "The URL to fetch and analyze", + "location": "query", + "pattern": "(?i)http(s)?://.*", + "required": true, + "type": "string" + } + }, + "path": "runPagespeed", + "response": { + "$ref": "Result" + } + } } - }, - "parameterOrder": [ - "url" - ], - "response": { - "$ref": "Result" - } } - } - } - } -} + }, + "revision": "20180127", + "rootUrl": "https://www.googleapis.com/", + "schemas": { + "Result": { + "id": "Result", + "properties": { + "captchaResult": { + "description": "The captcha verify result", + "type": "string" + }, + "formattedResults": { + "description": "Localized PageSpeed results. Contains a ruleResults entry for each PageSpeed rule instantiated and run by the server.", + "properties": { + "locale": { + "description": "The locale of the formattedResults, e.g. \"en_US\".", + "type": "string" + }, + "ruleResults": { + "additionalProperties": { + "description": "The enum-like identifier for this rule. For instance \"EnableKeepAlive\" or \"AvoidCssImport\". Not localized.", + "properties": { + "localizedRuleName": { + "description": "Localized name of the rule, intended for presentation to a user.", + "type": "string" + }, + "ruleImpact": { + "description": "The impact (unbounded floating point value) that implementing the suggestions for this rule would have on making the page faster. Impact is comparable between rules to determine which rule's suggestions would have a higher or lower impact on making a page faster. For instance, if enabling compression would save 1MB, while optimizing images would save 500kB, the enable compression rule would have 2x the impact of the image optimization rule, all other things being equal.", + "format": "double", + "type": "number" + }, + "urlBlocks": { + "description": "List of blocks of URLs. Each block may contain a heading and a list of URLs. Each URL may optionally include additional details.", + "items": { + "properties": { + "header": { + "description": "Heading to be displayed with the list of URLs.", + "properties": { + "args": { + "description": "List of arguments for the format string.", + "items": { + "properties": { + "type": { + "description": "Type of argument. One of URL, STRING_LITERAL, INT_LITERAL, BYTES, or DURATION.", + "type": "string" + }, + "value": { + "description": "Argument value, as a localized string.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "format": { + "description": "A localized format string with $N placeholders, where N is the 1-indexed argument number, e.g. 'Minifying the following $1 resources would save a total of $2 bytes'.", + "type": "string" + } + }, + "type": "object" + }, + "urls": { + "description": "List of entries that provide information about URLs in the url block. Optional.", + "items": { + "properties": { + "details": { + "description": "List of entries that provide additional details about a single URL. Optional.", + "items": { + "properties": { + "args": { + "description": "List of arguments for the format string.", + "items": { + "properties": { + "type": { + "description": "Type of argument. One of URL, STRING_LITERAL, INT_LITERAL, BYTES, or DURATION.", + "type": "string" + }, + "value": { + "description": "Argument value, as a localized string.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "format": { + "description": "A localized format string with $N placeholders, where N is the 1-indexed argument number, e.g. 'Unnecessary metadata for this resource adds an additional $1 bytes to its download size'.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "result": { + "description": "A format string that gives information about the URL, and a list of arguments for that format string.", + "properties": { + "args": { + "description": "List of arguments for the format string.", + "items": { + "properties": { + "type": { + "description": "Type of argument. One of URL, STRING_LITERAL, INT_LITERAL, BYTES, or DURATION.", + "type": "string" + }, + "value": { + "description": "Argument value, as a localized string.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "format": { + "description": "A localized format string with $N placeholders, where N is the 1-indexed argument number, e.g. 'Minifying the resource at URL $1 can save $2 bytes'.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "type": "array" + } + }, + "type": "object" + }, + "type": "array" + } + }, + "type": "object" + }, + "description": "Dictionary of formatted rule results, with one entry for each PageSpeed rule instantiated and run by the server.", + "type": "object" + } + }, + "type": "object" + }, + "id": { + "description": "Canonicalized and final URL for the document, after following page redirects (if any).", + "type": "string" + }, + "invalidRules": { + "description": "List of rules that were specified in the request, but which the server did not know how to instantiate.", + "items": { + "type": "string" + }, + "type": "array" + }, + "kind": { + "default": "pagespeedonline#result", + "description": "Kind of result.", + "type": "string" + }, + "pageStats": { + "description": "Summary statistics for the page, such as number of JavaScript bytes, number of HTML bytes, etc.", + "properties": { + "cssResponseBytes": { + "description": "Number of uncompressed response bytes for CSS resources on the page.", + "format": "int64", + "type": "string" + }, + "flashResponseBytes": { + "description": "Number of response bytes for flash resources on the page.", + "format": "int64", + "type": "string" + }, + "htmlResponseBytes": { + "description": "Number of uncompressed response bytes for the main HTML document and all iframes on the page.", + "format": "int64", + "type": "string" + }, + "imageResponseBytes": { + "description": "Number of response bytes for image resources on the page.", + "format": "int64", + "type": "string" + }, + "javascriptResponseBytes": { + "description": "Number of uncompressed response bytes for JS resources on the page.", + "format": "int64", + "type": "string" + }, + "numberCssResources": { + "description": "Number of CSS resources referenced by the page.", + "format": "int32", + "type": "integer" + }, + "numberHosts": { + "description": "Number of unique hosts referenced by the page.", + "format": "int32", + "type": "integer" + }, + "numberJsResources": { + "description": "Number of JavaScript resources referenced by the page.", + "format": "int32", + "type": "integer" + }, + "numberResources": { + "description": "Number of HTTP resources loaded by the page.", + "format": "int32", + "type": "integer" + }, + "numberStaticResources": { + "description": "Number of static (i.e. cacheable) resources on the page.", + "format": "int32", + "type": "integer" + }, + "otherResponseBytes": { + "description": "Number of response bytes for other resources on the page.", + "format": "int64", + "type": "string" + }, + "textResponseBytes": { + "description": "Number of uncompressed response bytes for text resources not covered by other statistics (i.e non-HTML, non-script, non-CSS resources) on the page.", + "format": "int64", + "type": "string" + }, + "totalRequestBytes": { + "description": "Total size of all request bytes sent by the page.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "responseCode": { + "description": "Response code for the document. 200 indicates a normal page load. 4xx/5xx indicates an error.", + "format": "int32", + "type": "integer" + }, + "score": { + "description": "The PageSpeed Score (0-100), which indicates how much faster a page could be. A high score indicates little room for improvement, while a lower score indicates more room for improvement.", + "format": "int32", + "type": "integer" + }, + "screenshot": { + "description": "Base64-encoded screenshot of the page that was analyzed.", + "properties": { + "data": { + "description": "Image data base64 encoded.", + "format": "byte", + "type": "string" + }, + "height": { + "description": "Height of screenshot in pixels.", + "format": "int32", + "type": "integer" + }, + "mime_type": { + "description": "Mime type of image data. E.g. \"image/jpeg\".", + "type": "string" + }, + "width": { + "description": "Width of screenshot in pixels.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "title": { + "description": "Title of the page, as displayed in the browser's title bar.", + "type": "string" + }, + "version": { + "description": "The version of PageSpeed used to generate these results.", + "properties": { + "major": { + "description": "The major version number of PageSpeed used to generate these results.", + "format": "int32", + "type": "integer" + }, + "minor": { + "description": "The minor version number of PageSpeed used to generate these results.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + } + }, + "type": "object" + } + }, + "servicePath": "pagespeedonline/v1/", + "title": "PageSpeed Insights API", + "version": "v1" +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/pagespeedonline/v2/pagespeedonline-api.json b/vendor/google.golang.org/api/pagespeedonline/v2/pagespeedonline-api.json index f4d1596bb..a014c2c0b 100644 --- a/vendor/google.golang.org/api/pagespeedonline/v2/pagespeedonline-api.json +++ b/vendor/google.golang.org/api/pagespeedonline/v2/pagespeedonline-api.json @@ -1,494 +1,494 @@ { - "kind": "discovery#restDescription", - "etag": "\"YWOzh2SDasdU84ArJnpYek-OMdg/n_okqqqS0ZMnhnemXmv18_Z2rZY\"", - "discoveryVersion": "v1", - "id": "pagespeedonline:v2", - "name": "pagespeedonline", - "version": "v2", - "revision": "20180108", - "title": "PageSpeed Insights API", - "description": "Analyzes the performance of a web page and provides tailored suggestions to make that page faster.", - "ownerDomain": "google.com", - "ownerName": "Google", - "icons": { - "x16": "https://www.google.com/images/icons/product/pagespeed-16.png", - "x32": "https://www.google.com/images/icons/product/pagespeed-32.png" - }, - "documentationLink": "https://developers.google.com/speed/docs/insights/v2/getting-started", - "protocol": "rest", - "baseUrl": "https://www.googleapis.com/pagespeedonline/v2/", - "basePath": "/pagespeedonline/v2/", - "rootUrl": "https://www.googleapis.com/", - "servicePath": "pagespeedonline/v2/", - "batchPath": "batch/pagespeedonline/v2", - "parameters": { - "alt": { - "type": "string", - "description": "Data format for the response.", - "default": "json", - "enum": [ - "json" - ], - "enumDescriptions": [ - "Responses with Content-Type of application/json" - ], - "location": "query" + "basePath": "/pagespeedonline/v2/", + "baseUrl": "https://www.googleapis.com/pagespeedonline/v2/", + "batchPath": "batch/pagespeedonline/v2", + "description": "Analyzes the performance of a web page and provides tailored suggestions to make that page faster.", + "discoveryVersion": "v1", + "documentationLink": "https://developers.google.com/speed/docs/insights/v2/getting-started", + "etag": "\"-iA1DTNe4s-I6JZXPt1t1Ypy8IU/VX1Q3UGaRTnXwXHvoVL4h3VmjFQ\"", + "icons": { + "x16": "https://www.google.com/images/icons/product/pagespeed-16.png", + "x32": "https://www.google.com/images/icons/product/pagespeed-32.png" }, - "fields": { - "type": "string", - "description": "Selector specifying which fields to include in a partial response.", - "location": "query" - }, - "key": { - "type": "string", - "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" - }, - "oauth_token": { - "type": "string", - "description": "OAuth 2.0 token for the current user.", - "location": "query" - }, - "prettyPrint": { - "type": "boolean", - "description": "Returns response with indentations and line breaks.", - "default": "true", - "location": "query" - }, - "quotaUser": { - "type": "string", - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", - "location": "query" - }, - "userIp": { - "type": "string", - "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", - "location": "query" - } - }, - "schemas": { - "PagespeedApiFormatStringV2": { - "id": "PagespeedApiFormatStringV2", - "type": "object", - "properties": { - "args": { - "type": "array", - "description": "List of arguments for the format string.", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "The placeholder key for this arg, as a string." - }, - "rects": { - "type": "array", - "description": "The screen rectangles being referred to, with dimensions measured in CSS pixels. This is only ever used for SNAPSHOT_RECT arguments. If this is absent for a SNAPSHOT_RECT argument, it means that that argument refers to the entire snapshot.", - "items": { - "type": "object", - "properties": { - "height": { - "type": "integer", - "description": "The height of the rect.", - "format": "int32" - }, - "left": { - "type": "integer", - "description": "The left coordinate of the rect, in page coordinates.", - "format": "int32" - }, - "top": { - "type": "integer", - "description": "The top coordinate of the rect, in page coordinates.", - "format": "int32" - }, - "width": { - "type": "integer", - "description": "The width of the rect.", - "format": "int32" - } - } - } - }, - "secondary_rects": { - "type": "array", - "description": "Secondary screen rectangles being referred to, with dimensions measured in CSS pixels. This is only ever used for SNAPSHOT_RECT arguments.", - "items": { - "type": "object", - "properties": { - "height": { - "type": "integer", - "description": "The height of the rect.", - "format": "int32" - }, - "left": { - "type": "integer", - "description": "The left coordinate of the rect, in page coordinates.", - "format": "int32" - }, - "top": { - "type": "integer", - "description": "The top coordinate of the rect, in page coordinates.", - "format": "int32" - }, - "width": { - "type": "integer", - "description": "The width of the rect.", - "format": "int32" - } - } - } - }, - "type": { - "type": "string", - "description": "Type of argument. One of URL, STRING_LITERAL, INT_LITERAL, BYTES, DURATION, VERBATIM_STRING, PERCENTAGE, HYPERLINK, or SNAPSHOT_RECT." - }, - "value": { - "type": "string", - "description": "Argument value, as a localized string." - } - } - } + "id": "pagespeedonline:v2", + "kind": "discovery#restDescription", + "name": "pagespeedonline", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "alt": { + "default": "json", + "description": "Data format for the response.", + "enum": [ + "json" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json" + ], + "location": "query", + "type": "string" }, - "format": { - "type": "string", - "description": "A localized format string with {{FOO}} placeholders, where 'FOO' is the key of the argument whose value should be substituted. For HYPERLINK arguments, the format string will instead contain {{BEGIN_FOO}} and {{END_FOO}} for the argument with key 'FOO'." - } - } - }, - "PagespeedApiImageV2": { - "id": "PagespeedApiImageV2", - "type": "object", - "properties": { - "data": { - "type": "string", - "description": "Image data base64 encoded.", - "format": "byte" - }, - "height": { - "type": "integer", - "description": "Height of screenshot in pixels.", - "format": "int32" + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "location": "query", + "type": "string" }, "key": { - "type": "string", - "description": "Unique string key, if any, identifying this image." - }, - "mime_type": { - "type": "string", - "description": "Mime type of image data (e.g. \"image/jpeg\")." - }, - "page_rect": { - "type": "object", - "description": "The region of the page that is captured by this image, with dimensions measured in CSS pixels.", - "properties": { - "height": { - "type": "integer", - "description": "The height of the rect.", - "format": "int32" - }, - "left": { - "type": "integer", - "description": "The left coordinate of the rect, in page coordinates.", - "format": "int32" - }, - "top": { - "type": "integer", - "description": "The top coordinate of the rect, in page coordinates.", - "format": "int32" - }, - "width": { - "type": "integer", - "description": "The width of the rect.", - "format": "int32" - } - } - }, - "width": { - "type": "integer", - "description": "Width of screenshot in pixels.", - "format": "int32" - } - } - }, - "Result": { - "id": "Result", - "type": "object", - "properties": { - "captchaResult": { - "type": "string", - "description": "The captcha verify result" - }, - "formattedResults": { - "type": "object", - "description": "Localized PageSpeed results. Contains a ruleResults entry for each PageSpeed rule instantiated and run by the server.", - "properties": { - "locale": { - "type": "string", - "description": "The locale of the formattedResults, e.g. \"en_US\"." - }, - "ruleResults": { - "type": "object", - "description": "Dictionary of formatted rule results, with one entry for each PageSpeed rule instantiated and run by the server.", - "additionalProperties": { - "type": "object", - "description": "The enum-like identifier for this rule. For instance \"EnableKeepAlive\" or \"AvoidCssImport\". Not localized.", - "properties": { - "groups": { - "type": "array", - "description": "List of rule groups that this rule belongs to. Each entry in the list is one of \"SPEED\" or \"USABILITY\".", - "items": { - "type": "string" - } - }, - "localizedRuleName": { - "type": "string", - "description": "Localized name of the rule, intended for presentation to a user." - }, - "ruleImpact": { - "type": "number", - "description": "The impact (unbounded floating point value) that implementing the suggestions for this rule would have on making the page faster. Impact is comparable between rules to determine which rule's suggestions would have a higher or lower impact on making a page faster. For instance, if enabling compression would save 1MB, while optimizing images would save 500kB, the enable compression rule would have 2x the impact of the image optimization rule, all other things being equal.", - "format": "double" - }, - "summary": { - "$ref": "PagespeedApiFormatStringV2", - "description": "A brief summary description for the rule, indicating at a high level what should be done to follow the rule and what benefit can be gained by doing so." - }, - "urlBlocks": { - "type": "array", - "description": "List of blocks of URLs. Each block may contain a heading and a list of URLs. Each URL may optionally include additional details.", - "items": { - "type": "object", - "properties": { - "header": { - "$ref": "PagespeedApiFormatStringV2", - "description": "Heading to be displayed with the list of URLs." - }, - "urls": { - "type": "array", - "description": "List of entries that provide information about URLs in the url block. Optional.", - "items": { - "type": "object", - "properties": { - "details": { - "type": "array", - "description": "List of entries that provide additional details about a single URL. Optional.", - "items": { - "$ref": "PagespeedApiFormatStringV2" - } - }, - "result": { - "$ref": "PagespeedApiFormatStringV2", - "description": "A format string that gives information about the URL, and a list of arguments for that format string." - } - } - } - } - } - } - } - } - } - } - } - }, - "id": { - "type": "string", - "description": "Canonicalized and final URL for the document, after following page redirects (if any)." - }, - "invalidRules": { - "type": "array", - "description": "List of rules that were specified in the request, but which the server did not know how to instantiate.", - "items": { + "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" - } }, - "kind": { - "type": "string", - "description": "Kind of result.", - "default": "pagespeedonline#result" + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" }, - "pageStats": { - "type": "object", - "description": "Summary statistics for the page, such as number of JavaScript bytes, number of HTML bytes, etc.", - "properties": { - "cssResponseBytes": { - "type": "string", - "description": "Number of uncompressed response bytes for CSS resources on the page.", - "format": "int64" - }, - "flashResponseBytes": { - "type": "string", - "description": "Number of response bytes for flash resources on the page.", - "format": "int64" - }, - "htmlResponseBytes": { - "type": "string", - "description": "Number of uncompressed response bytes for the main HTML document and all iframes on the page.", - "format": "int64" - }, - "imageResponseBytes": { - "type": "string", - "description": "Number of response bytes for image resources on the page.", - "format": "int64" - }, - "javascriptResponseBytes": { - "type": "string", - "description": "Number of uncompressed response bytes for JS resources on the page.", - "format": "int64" - }, - "numberCssResources": { - "type": "integer", - "description": "Number of CSS resources referenced by the page.", - "format": "int32" - }, - "numberHosts": { - "type": "integer", - "description": "Number of unique hosts referenced by the page.", - "format": "int32" - }, - "numberJsResources": { - "type": "integer", - "description": "Number of JavaScript resources referenced by the page.", - "format": "int32" - }, - "numberResources": { - "type": "integer", - "description": "Number of HTTP resources loaded by the page.", - "format": "int32" - }, - "numberStaticResources": { - "type": "integer", - "description": "Number of static (i.e. cacheable) resources on the page.", - "format": "int32" - }, - "otherResponseBytes": { - "type": "string", - "description": "Number of response bytes for other resources on the page.", - "format": "int64" - }, - "textResponseBytes": { - "type": "string", - "description": "Number of uncompressed response bytes for text resources not covered by other statistics (i.e non-HTML, non-script, non-CSS resources) on the page.", - "format": "int64" - }, - "totalRequestBytes": { - "type": "string", - "description": "Total size of all request bytes sent by the page.", - "format": "int64" + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", + "location": "query", + "type": "string" + }, + "userIp": { + "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", + "location": "query", + "type": "string" + } + }, + "protocol": "rest", + "resources": { + "pagespeedapi": { + "methods": { + "runpagespeed": { + "description": "Runs PageSpeed analysis on the page at the specified URL, and returns PageSpeed scores, a list of suggestions to make that page faster, and other information.", + "httpMethod": "GET", + "id": "pagespeedonline.pagespeedapi.runpagespeed", + "parameterOrder": [ + "url" + ], + "parameters": { + "filter_third_party_resources": { + "default": "false", + "description": "Indicates if third party resources should be filtered out before PageSpeed analysis.", + "location": "query", + "type": "boolean" + }, + "locale": { + "description": "The locale used to localize formatted results", + "location": "query", + "pattern": "[a-zA-Z]+(_[a-zA-Z]+)?", + "type": "string" + }, + "rule": { + "description": "A PageSpeed rule to run; if none are given, all rules are run", + "location": "query", + "pattern": "[a-zA-Z]+", + "repeated": true, + "type": "string" + }, + "screenshot": { + "default": "false", + "description": "Indicates if binary data containing a screenshot should be included", + "location": "query", + "type": "boolean" + }, + "strategy": { + "description": "The analysis strategy to use", + "enum": [ + "desktop", + "mobile" + ], + "enumDescriptions": [ + "Fetch and analyze the URL for desktop browsers", + "Fetch and analyze the URL for mobile devices" + ], + "location": "query", + "type": "string" + }, + "url": { + "description": "The URL to fetch and analyze", + "location": "query", + "pattern": "(?i)http(s)?://.*", + "required": true, + "type": "string" + } + }, + "path": "runPagespeed", + "response": { + "$ref": "Result" + } + } } - } - }, - "responseCode": { - "type": "integer", - "description": "Response code for the document. 200 indicates a normal page load. 4xx/5xx indicates an error.", - "format": "int32" - }, - "ruleGroups": { - "type": "object", - "description": "A map with one entry for each rule group in these results.", - "additionalProperties": { - "type": "object", - "description": "The name of this rule group: one of \"SPEED\" or \"USABILITY\".", + } + }, + "revision": "20180127", + "rootUrl": "https://www.googleapis.com/", + "schemas": { + "PagespeedApiFormatStringV2": { + "id": "PagespeedApiFormatStringV2", "properties": { - "score": { - "type": "integer", - "description": "The score (0-100) for this rule group, which indicates how much better a page could be in that category (e.g. how much faster, or how much more usable). A high score indicates little room for improvement, while a lower score indicates more room for improvement.", - "format": "int32" - } - } - } - }, - "screenshot": { - "$ref": "PagespeedApiImageV2", - "description": "Base64-encoded screenshot of the page that was analyzed." - }, - "title": { - "type": "string", - "description": "Title of the page, as displayed in the browser's title bar." - }, - "version": { - "type": "object", - "description": "The version of PageSpeed used to generate these results.", - "properties": { - "major": { - "type": "integer", - "description": "The major version number of PageSpeed used to generate these results.", - "format": "int32" + "args": { + "description": "List of arguments for the format string.", + "items": { + "properties": { + "key": { + "description": "The placeholder key for this arg, as a string.", + "type": "string" + }, + "rects": { + "description": "The screen rectangles being referred to, with dimensions measured in CSS pixels. This is only ever used for SNAPSHOT_RECT arguments. If this is absent for a SNAPSHOT_RECT argument, it means that that argument refers to the entire snapshot.", + "items": { + "properties": { + "height": { + "description": "The height of the rect.", + "format": "int32", + "type": "integer" + }, + "left": { + "description": "The left coordinate of the rect, in page coordinates.", + "format": "int32", + "type": "integer" + }, + "top": { + "description": "The top coordinate of the rect, in page coordinates.", + "format": "int32", + "type": "integer" + }, + "width": { + "description": "The width of the rect.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "type": "array" + }, + "secondary_rects": { + "description": "Secondary screen rectangles being referred to, with dimensions measured in CSS pixels. This is only ever used for SNAPSHOT_RECT arguments.", + "items": { + "properties": { + "height": { + "description": "The height of the rect.", + "format": "int32", + "type": "integer" + }, + "left": { + "description": "The left coordinate of the rect, in page coordinates.", + "format": "int32", + "type": "integer" + }, + "top": { + "description": "The top coordinate of the rect, in page coordinates.", + "format": "int32", + "type": "integer" + }, + "width": { + "description": "The width of the rect.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "type": "array" + }, + "type": { + "description": "Type of argument. One of URL, STRING_LITERAL, INT_LITERAL, BYTES, DURATION, VERBATIM_STRING, PERCENTAGE, HYPERLINK, or SNAPSHOT_RECT.", + "type": "string" + }, + "value": { + "description": "Argument value, as a localized string.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "format": { + "description": "A localized format string with {{FOO}} placeholders, where 'FOO' is the key of the argument whose value should be substituted. For HYPERLINK arguments, the format string will instead contain {{BEGIN_FOO}} and {{END_FOO}} for the argument with key 'FOO'.", + "type": "string" + } }, - "minor": { - "type": "integer", - "description": "The minor version number of PageSpeed used to generate these results.", - "format": "int32" - } - } + "type": "object" + }, + "PagespeedApiImageV2": { + "id": "PagespeedApiImageV2", + "properties": { + "data": { + "description": "Image data base64 encoded.", + "format": "byte", + "type": "string" + }, + "height": { + "description": "Height of screenshot in pixels.", + "format": "int32", + "type": "integer" + }, + "key": { + "description": "Unique string key, if any, identifying this image.", + "type": "string" + }, + "mime_type": { + "description": "Mime type of image data (e.g. \"image/jpeg\").", + "type": "string" + }, + "page_rect": { + "description": "The region of the page that is captured by this image, with dimensions measured in CSS pixels.", + "properties": { + "height": { + "description": "The height of the rect.", + "format": "int32", + "type": "integer" + }, + "left": { + "description": "The left coordinate of the rect, in page coordinates.", + "format": "int32", + "type": "integer" + }, + "top": { + "description": "The top coordinate of the rect, in page coordinates.", + "format": "int32", + "type": "integer" + }, + "width": { + "description": "The width of the rect.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "width": { + "description": "Width of screenshot in pixels.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "Result": { + "id": "Result", + "properties": { + "captchaResult": { + "description": "The captcha verify result", + "type": "string" + }, + "formattedResults": { + "description": "Localized PageSpeed results. Contains a ruleResults entry for each PageSpeed rule instantiated and run by the server.", + "properties": { + "locale": { + "description": "The locale of the formattedResults, e.g. \"en_US\".", + "type": "string" + }, + "ruleResults": { + "additionalProperties": { + "description": "The enum-like identifier for this rule. For instance \"EnableKeepAlive\" or \"AvoidCssImport\". Not localized.", + "properties": { + "groups": { + "description": "List of rule groups that this rule belongs to. Each entry in the list is one of \"SPEED\" or \"USABILITY\".", + "items": { + "type": "string" + }, + "type": "array" + }, + "localizedRuleName": { + "description": "Localized name of the rule, intended for presentation to a user.", + "type": "string" + }, + "ruleImpact": { + "description": "The impact (unbounded floating point value) that implementing the suggestions for this rule would have on making the page faster. Impact is comparable between rules to determine which rule's suggestions would have a higher or lower impact on making a page faster. For instance, if enabling compression would save 1MB, while optimizing images would save 500kB, the enable compression rule would have 2x the impact of the image optimization rule, all other things being equal.", + "format": "double", + "type": "number" + }, + "summary": { + "$ref": "PagespeedApiFormatStringV2", + "description": "A brief summary description for the rule, indicating at a high level what should be done to follow the rule and what benefit can be gained by doing so." + }, + "urlBlocks": { + "description": "List of blocks of URLs. Each block may contain a heading and a list of URLs. Each URL may optionally include additional details.", + "items": { + "properties": { + "header": { + "$ref": "PagespeedApiFormatStringV2", + "description": "Heading to be displayed with the list of URLs." + }, + "urls": { + "description": "List of entries that provide information about URLs in the url block. Optional.", + "items": { + "properties": { + "details": { + "description": "List of entries that provide additional details about a single URL. Optional.", + "items": { + "$ref": "PagespeedApiFormatStringV2" + }, + "type": "array" + }, + "result": { + "$ref": "PagespeedApiFormatStringV2", + "description": "A format string that gives information about the URL, and a list of arguments for that format string." + } + }, + "type": "object" + }, + "type": "array" + } + }, + "type": "object" + }, + "type": "array" + } + }, + "type": "object" + }, + "description": "Dictionary of formatted rule results, with one entry for each PageSpeed rule instantiated and run by the server.", + "type": "object" + } + }, + "type": "object" + }, + "id": { + "description": "Canonicalized and final URL for the document, after following page redirects (if any).", + "type": "string" + }, + "invalidRules": { + "description": "List of rules that were specified in the request, but which the server did not know how to instantiate.", + "items": { + "type": "string" + }, + "type": "array" + }, + "kind": { + "default": "pagespeedonline#result", + "description": "Kind of result.", + "type": "string" + }, + "pageStats": { + "description": "Summary statistics for the page, such as number of JavaScript bytes, number of HTML bytes, etc.", + "properties": { + "cssResponseBytes": { + "description": "Number of uncompressed response bytes for CSS resources on the page.", + "format": "int64", + "type": "string" + }, + "flashResponseBytes": { + "description": "Number of response bytes for flash resources on the page.", + "format": "int64", + "type": "string" + }, + "htmlResponseBytes": { + "description": "Number of uncompressed response bytes for the main HTML document and all iframes on the page.", + "format": "int64", + "type": "string" + }, + "imageResponseBytes": { + "description": "Number of response bytes for image resources on the page.", + "format": "int64", + "type": "string" + }, + "javascriptResponseBytes": { + "description": "Number of uncompressed response bytes for JS resources on the page.", + "format": "int64", + "type": "string" + }, + "numberCssResources": { + "description": "Number of CSS resources referenced by the page.", + "format": "int32", + "type": "integer" + }, + "numberHosts": { + "description": "Number of unique hosts referenced by the page.", + "format": "int32", + "type": "integer" + }, + "numberJsResources": { + "description": "Number of JavaScript resources referenced by the page.", + "format": "int32", + "type": "integer" + }, + "numberResources": { + "description": "Number of HTTP resources loaded by the page.", + "format": "int32", + "type": "integer" + }, + "numberStaticResources": { + "description": "Number of static (i.e. cacheable) resources on the page.", + "format": "int32", + "type": "integer" + }, + "otherResponseBytes": { + "description": "Number of response bytes for other resources on the page.", + "format": "int64", + "type": "string" + }, + "textResponseBytes": { + "description": "Number of uncompressed response bytes for text resources not covered by other statistics (i.e non-HTML, non-script, non-CSS resources) on the page.", + "format": "int64", + "type": "string" + }, + "totalRequestBytes": { + "description": "Total size of all request bytes sent by the page.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "responseCode": { + "description": "Response code for the document. 200 indicates a normal page load. 4xx/5xx indicates an error.", + "format": "int32", + "type": "integer" + }, + "ruleGroups": { + "additionalProperties": { + "description": "The name of this rule group: one of \"SPEED\" or \"USABILITY\".", + "properties": { + "score": { + "description": "The score (0-100) for this rule group, which indicates how much better a page could be in that category (e.g. how much faster, or how much more usable). A high score indicates little room for improvement, while a lower score indicates more room for improvement.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "description": "A map with one entry for each rule group in these results.", + "type": "object" + }, + "screenshot": { + "$ref": "PagespeedApiImageV2", + "description": "Base64-encoded screenshot of the page that was analyzed." + }, + "title": { + "description": "Title of the page, as displayed in the browser's title bar.", + "type": "string" + }, + "version": { + "description": "The version of PageSpeed used to generate these results.", + "properties": { + "major": { + "description": "The major version number of PageSpeed used to generate these results.", + "format": "int32", + "type": "integer" + }, + "minor": { + "description": "The minor version number of PageSpeed used to generate these results.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + } + }, + "type": "object" } - } - } - }, - "resources": { - "pagespeedapi": { - "methods": { - "runpagespeed": { - "id": "pagespeedonline.pagespeedapi.runpagespeed", - "path": "runPagespeed", - "httpMethod": "GET", - "description": "Runs PageSpeed analysis on the page at the specified URL, and returns PageSpeed scores, a list of suggestions to make that page faster, and other information.", - "parameters": { - "filter_third_party_resources": { - "type": "boolean", - "description": "Indicates if third party resources should be filtered out before PageSpeed analysis.", - "default": "false", - "location": "query" - }, - "locale": { - "type": "string", - "description": "The locale used to localize formatted results", - "pattern": "[a-zA-Z]+(_[a-zA-Z]+)?", - "location": "query" - }, - "rule": { - "type": "string", - "description": "A PageSpeed rule to run; if none are given, all rules are run", - "pattern": "[a-zA-Z]+", - "repeated": true, - "location": "query" - }, - "screenshot": { - "type": "boolean", - "description": "Indicates if binary data containing a screenshot should be included", - "default": "false", - "location": "query" - }, - "strategy": { - "type": "string", - "description": "The analysis strategy to use", - "enum": [ - "desktop", - "mobile" - ], - "enumDescriptions": [ - "Fetch and analyze the URL for desktop browsers", - "Fetch and analyze the URL for mobile devices" - ], - "location": "query" - }, - "url": { - "type": "string", - "description": "The URL to fetch and analyze", - "required": true, - "pattern": "(?i)http(s)?://.*", - "location": "query" - } - }, - "parameterOrder": [ - "url" - ], - "response": { - "$ref": "Result" - } - } - } - } - } -} + }, + "servicePath": "pagespeedonline/v2/", + "title": "PageSpeed Insights API", + "version": "v2" +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/pagespeedonline/v4/pagespeedonline-api.json b/vendor/google.golang.org/api/pagespeedonline/v4/pagespeedonline-api.json new file mode 100644 index 000000000..b2221ea2b --- /dev/null +++ b/vendor/google.golang.org/api/pagespeedonline/v4/pagespeedonline-api.json @@ -0,0 +1,606 @@ +{ + "basePath": "/pagespeedonline/v4/", + "baseUrl": "https://www.googleapis.com/pagespeedonline/v4/", + "batchPath": "batch/pagespeedonline/v4", + "description": "Analyzes the performance of a web page and provides tailored suggestions to make that page faster.", + "discoveryVersion": "v1", + "documentationLink": "https://developers.google.com/speed/docs/insights/v4/getting-started", + "etag": "\"-iA1DTNe4s-I6JZXPt1t1Ypy8IU/XCul5cFRh1Et1JIhvRP7o7R9irw\"", + "icons": { + "x16": "https://www.google.com/images/icons/product/pagespeed-16.png", + "x32": "https://www.google.com/images/icons/product/pagespeed-32.png" + }, + "id": "pagespeedonline:v4", + "kind": "discovery#restDescription", + "name": "pagespeedonline", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "alt": { + "default": "json", + "description": "Data format for the response.", + "enum": [ + "json" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json" + ], + "location": "query", + "type": "string" + }, + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "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.", + "location": "query", + "type": "string" + }, + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", + "location": "query", + "type": "string" + }, + "userIp": { + "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", + "location": "query", + "type": "string" + } + }, + "protocol": "rest", + "resources": { + "pagespeedapi": { + "methods": { + "runpagespeed": { + "description": "Runs PageSpeed analysis on the page at the specified URL, and returns PageSpeed scores, a list of suggestions to make that page faster, and other information.", + "httpMethod": "GET", + "id": "pagespeedonline.pagespeedapi.runpagespeed", + "parameterOrder": [ + "url" + ], + "parameters": { + "filter_third_party_resources": { + "default": "false", + "description": "Indicates if third party resources should be filtered out before PageSpeed analysis.", + "location": "query", + "type": "boolean" + }, + "locale": { + "description": "The locale used to localize formatted results", + "location": "query", + "pattern": "[a-zA-Z]+(_[a-zA-Z]+)?", + "type": "string" + }, + "rule": { + "description": "A PageSpeed rule to run; if none are given, all rules are run", + "location": "query", + "pattern": "[a-zA-Z]+", + "repeated": true, + "type": "string" + }, + "screenshot": { + "default": "false", + "description": "Indicates if binary data containing a screenshot should be included", + "location": "query", + "type": "boolean" + }, + "snapshots": { + "default": "false", + "description": "Indicates if binary data containing snapshot images should be included", + "location": "query", + "type": "boolean" + }, + "strategy": { + "description": "The analysis strategy (desktop or mobile) to use, and desktop is the default", + "enum": [ + "desktop", + "mobile" + ], + "enumDescriptions": [ + "Fetch and analyze the URL for desktop browsers", + "Fetch and analyze the URL for mobile devices" + ], + "location": "query", + "type": "string" + }, + "url": { + "description": "The URL to fetch and analyze", + "location": "query", + "pattern": "(?i)http(s)?://.*", + "required": true, + "type": "string" + }, + "utm_campaign": { + "description": "Campaign name for analytics.", + "location": "query", + "type": "string" + }, + "utm_source": { + "description": "Campaign source for analytics.", + "location": "query", + "type": "string" + } + }, + "path": "runPagespeed", + "response": { + "$ref": "PagespeedApiPagespeedResponseV4" + } + } + } + } + }, + "revision": "20180315", + "rootUrl": "https://www.googleapis.com/", + "schemas": { + "PagespeedApiFormatStringV4": { + "id": "PagespeedApiFormatStringV4", + "properties": { + "args": { + "description": "List of arguments for the format string.", + "items": { + "properties": { + "key": { + "description": "The placeholder key for this arg, as a string.", + "type": "string" + }, + "rects": { + "description": "The screen rectangles being referred to, with dimensions measured in CSS pixels. This is only ever used for SNAPSHOT_RECT arguments. If this is absent for a SNAPSHOT_RECT argument, it means that that argument refers to the entire snapshot.", + "items": { + "properties": { + "height": { + "format": "int32", + "type": "integer" + }, + "left": { + "format": "int32", + "type": "integer" + }, + "top": { + "format": "int32", + "type": "integer" + }, + "width": { + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "type": "array" + }, + "secondary_rects": { + "description": "Secondary screen rectangles being referred to, with dimensions measured in CSS pixels. This is only ever used for SNAPSHOT_RECT arguments.", + "items": { + "properties": { + "height": { + "format": "int32", + "type": "integer" + }, + "left": { + "format": "int32", + "type": "integer" + }, + "top": { + "format": "int32", + "type": "integer" + }, + "width": { + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "type": "array" + }, + "type": { + "description": "Type of argument. One of URL, STRING_LITERAL, INT_LITERAL, BYTES, DURATION, VERBATIM_STRING, PERCENTAGE, HYPERLINK, or SNAPSHOT_RECT.", + "type": "string" + }, + "value": { + "description": "Argument value, as a localized string.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "format": { + "description": "A localized format string with {{FOO}} placeholders, where 'FOO' is the key of the argument whose value should be substituted. For HYPERLINK arguments, the format string will instead contain {{BEGIN_FOO}} and {{END_FOO}} for the argument with key 'FOO'.", + "type": "string" + } + }, + "type": "object" + }, + "PagespeedApiImageV4": { + "id": "PagespeedApiImageV4", + "properties": { + "data": { + "description": "Image data base64 encoded.", + "format": "byte", + "type": "string" + }, + "height": { + "description": "Height of screenshot in pixels.", + "format": "int32", + "type": "integer" + }, + "key": { + "description": "Unique string key, if any, identifying this image.", + "type": "string" + }, + "mime_type": { + "description": "Mime type of image data (e.g. \"image/jpeg\").", + "type": "string" + }, + "page_rect": { + "properties": { + "height": { + "format": "int32", + "type": "integer" + }, + "left": { + "format": "int32", + "type": "integer" + }, + "top": { + "format": "int32", + "type": "integer" + }, + "width": { + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "width": { + "description": "Width of screenshot in pixels.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "PagespeedApiPagespeedResponseV4": { + "id": "PagespeedApiPagespeedResponseV4", + "properties": { + "captchaResult": { + "description": "The captcha verify result", + "type": "string" + }, + "formattedResults": { + "description": "Localized PageSpeed results. Contains a ruleResults entry for each PageSpeed rule instantiated and run by the server.", + "properties": { + "locale": { + "description": "The locale of the formattedResults, e.g. \"en_US\".", + "type": "string" + }, + "ruleResults": { + "additionalProperties": { + "description": "The enum-like identifier for this rule. For instance \"EnableKeepAlive\" or \"AvoidCssImport\". Not localized.", + "properties": { + "beta": { + "description": "Whether this rule is in 'beta'. Rules in beta are new rules that are being tested, which do not impact the overall score.", + "type": "boolean" + }, + "groups": { + "description": "List of rule groups that this rule belongs to. Each entry in the list is one of \"SPEED\", \"USABILITY\", or \"SECURITY\".", + "items": { + "type": "string" + }, + "type": "array" + }, + "localizedRuleName": { + "description": "Localized name of the rule, intended for presentation to a user.", + "type": "string" + }, + "ruleImpact": { + "description": "The impact (unbounded floating point value) that implementing the suggestions for this rule would have on making the page faster. Impact is comparable between rules to determine which rule's suggestions would have a higher or lower impact on making a page faster. For instance, if enabling compression would save 1MB, while optimizing images would save 500kB, the enable compression rule would have 2x the impact of the image optimization rule, all other things being equal.", + "format": "double", + "type": "number" + }, + "summary": { + "$ref": "PagespeedApiFormatStringV4", + "description": "A brief summary description for the rule, indicating at a high level what should be done to follow the rule and what benefit can be gained by doing so." + }, + "urlBlocks": { + "description": "List of blocks of URLs. Each block may contain a heading and a list of URLs. Each URL may optionally include additional details.", + "items": { + "properties": { + "header": { + "$ref": "PagespeedApiFormatStringV4", + "description": "Heading to be displayed with the list of URLs." + }, + "urls": { + "description": "List of entries that provide information about URLs in the url block. Optional.", + "items": { + "properties": { + "details": { + "description": "List of entries that provide additional details about a single URL. Optional.", + "items": { + "$ref": "PagespeedApiFormatStringV4" + }, + "type": "array" + }, + "result": { + "$ref": "PagespeedApiFormatStringV4", + "description": "A format string that gives information about the URL, and a list of arguments for that format string." + } + }, + "type": "object" + }, + "type": "array" + } + }, + "type": "object" + }, + "type": "array" + } + }, + "type": "object" + }, + "description": "Dictionary of formatted rule results, with one entry for each PageSpeed rule instantiated and run by the server.", + "type": "object" + } + }, + "type": "object" + }, + "id": { + "description": "Canonicalized and final URL for the document, after following page redirects (if any).", + "type": "string" + }, + "invalidRules": { + "description": "List of rules that were specified in the request, but which the server did not know how to instantiate.", + "items": { + "type": "string" + }, + "type": "array" + }, + "kind": { + "default": "pagespeedonline#result", + "description": "Kind of result.", + "type": "string" + }, + "loadingExperience": { + "description": "Metrics of end users' page loading experience.", + "properties": { + "id": { + "description": "The url, pattern or origin which the metrics are on.", + "type": "string" + }, + "initial_url": { + "type": "string" + }, + "metrics": { + "additionalProperties": { + "description": "The type of the metric.", + "properties": { + "category": { + "type": "string" + }, + "distributions": { + "items": { + "properties": { + "max": { + "format": "int32", + "type": "integer" + }, + "min": { + "format": "int32", + "type": "integer" + }, + "proportion": { + "format": "double", + "type": "number" + } + }, + "type": "object" + }, + "type": "array" + }, + "median": { + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "type": "object" + }, + "overall_category": { + "type": "string" + } + }, + "type": "object" + }, + "pageStats": { + "description": "Summary statistics for the page, such as number of JavaScript bytes, number of HTML bytes, etc.", + "properties": { + "cms": { + "description": "Content management system (CMS) used for the page.", + "type": "string" + }, + "cssResponseBytes": { + "description": "Number of uncompressed response bytes for CSS resources on the page.", + "format": "int64", + "type": "string" + }, + "flashResponseBytes": { + "description": "Number of response bytes for flash resources on the page.", + "format": "int64", + "type": "string" + }, + "htmlResponseBytes": { + "description": "Number of uncompressed response bytes for the main HTML document and all iframes on the page.", + "format": "int64", + "type": "string" + }, + "imageResponseBytes": { + "description": "Number of response bytes for image resources on the page.", + "format": "int64", + "type": "string" + }, + "javascriptResponseBytes": { + "description": "Number of uncompressed response bytes for JS resources on the page.", + "format": "int64", + "type": "string" + }, + "numRenderBlockingRoundTrips": { + "description": "The needed round trips to load render blocking resources", + "format": "int32", + "type": "integer" + }, + "numTotalRoundTrips": { + "description": "The needed round trips to load the full page", + "format": "int32", + "type": "integer" + }, + "numberCssResources": { + "description": "Number of CSS resources referenced by the page.", + "format": "int32", + "type": "integer" + }, + "numberHosts": { + "description": "Number of unique hosts referenced by the page.", + "format": "int32", + "type": "integer" + }, + "numberJsResources": { + "description": "Number of JavaScript resources referenced by the page.", + "format": "int32", + "type": "integer" + }, + "numberResources": { + "description": "Number of HTTP resources loaded by the page.", + "format": "int32", + "type": "integer" + }, + "numberRobotedResources": { + "description": "Number of roboted resources.", + "format": "int32", + "type": "integer" + }, + "numberStaticResources": { + "description": "Number of static (i.e. cacheable) resources on the page.", + "format": "int32", + "type": "integer" + }, + "numberTransientFetchFailureResources": { + "description": "Number of transient-failed resources.", + "format": "int32", + "type": "integer" + }, + "otherResponseBytes": { + "description": "Number of response bytes for other resources on the page.", + "format": "int64", + "type": "string" + }, + "overTheWireResponseBytes": { + "description": "Number of over-the-wire bytes, uses the default gzip compression strategy as an estimation.", + "format": "int64", + "type": "string" + }, + "robotedUrls": { + "description": "List of roboted urls.", + "items": { + "type": "string" + }, + "type": "array" + }, + "textResponseBytes": { + "description": "Number of uncompressed response bytes for text resources not covered by other statistics (i.e non-HTML, non-script, non-CSS resources) on the page.", + "format": "int64", + "type": "string" + }, + "totalRequestBytes": { + "description": "Total size of all request bytes sent by the page.", + "format": "int64", + "type": "string" + }, + "transientFetchFailureUrls": { + "description": "List of transient fetch failure urls.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "responseCode": { + "description": "Response code for the document. 200 indicates a normal page load. 4xx/5xx indicates an error.", + "format": "int32", + "type": "integer" + }, + "ruleGroups": { + "additionalProperties": { + "description": "The name of this rule group: one of \"SPEED\", \"USABILITY\", or \"SECURITY\".", + "properties": { + "pass": { + "type": "boolean" + }, + "score": { + "description": "The score (0-100) for this rule group, which indicates how much better a page could be in that category (e.g. how much faster, or how much more usable, or how much more secure). A high score indicates little room for improvement, while a lower score indicates more room for improvement.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "description": "A map with one entry for each rule group in these results.", + "type": "object" + }, + "screenshot": { + "$ref": "PagespeedApiImageV4", + "description": "Base64-encoded screenshot of the page that was analyzed." + }, + "snapshots": { + "description": "Additional base64-encoded screenshots of the page, in various partial render states.", + "items": { + "$ref": "PagespeedApiImageV4" + }, + "type": "array" + }, + "title": { + "description": "Title of the page, as displayed in the browser's title bar.", + "type": "string" + }, + "version": { + "description": "The version of PageSpeed used to generate these results.", + "properties": { + "major": { + "description": "The major version number of PageSpeed used to generate these results.", + "format": "int32", + "type": "integer" + }, + "minor": { + "description": "The minor version number of PageSpeed used to generate these results.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + } + }, + "type": "object" + } + }, + "servicePath": "pagespeedonline/v4/", + "title": "PageSpeed Insights API", + "version": "v4" +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/pagespeedonline/v4/pagespeedonline-gen.go b/vendor/google.golang.org/api/pagespeedonline/v4/pagespeedonline-gen.go new file mode 100644 index 000000000..c1e5cdcd8 --- /dev/null +++ b/vendor/google.golang.org/api/pagespeedonline/v4/pagespeedonline-gen.go @@ -0,0 +1,1069 @@ +// Package pagespeedonline provides access to the PageSpeed Insights API. +// +// See https://developers.google.com/speed/docs/insights/v4/getting-started +// +// Usage example: +// +// import "google.golang.org/api/pagespeedonline/v4" +// ... +// pagespeedonlineService, err := pagespeedonline.New(oauthHttpClient) +package pagespeedonline // import "google.golang.org/api/pagespeedonline/v4" + +import ( + "bytes" + "encoding/json" + "errors" + "fmt" + context "golang.org/x/net/context" + ctxhttp "golang.org/x/net/context/ctxhttp" + gensupport "google.golang.org/api/gensupport" + googleapi "google.golang.org/api/googleapi" + "io" + "net/http" + "net/url" + "strconv" + "strings" +) + +// Always reference these packages, just in case the auto-generated code +// below doesn't. +var _ = bytes.NewBuffer +var _ = strconv.Itoa +var _ = fmt.Sprintf +var _ = json.NewDecoder +var _ = io.Copy +var _ = url.Parse +var _ = gensupport.MarshalJSON +var _ = googleapi.Version +var _ = errors.New +var _ = strings.Replace +var _ = context.Canceled +var _ = ctxhttp.Do + +const apiId = "pagespeedonline:v4" +const apiName = "pagespeedonline" +const apiVersion = "v4" +const basePath = "https://www.googleapis.com/pagespeedonline/v4/" + +func New(client *http.Client) (*Service, error) { + if client == nil { + return nil, errors.New("client is nil") + } + s := &Service{client: client, BasePath: basePath} + s.Pagespeedapi = NewPagespeedapiService(s) + return s, nil +} + +type Service struct { + client *http.Client + BasePath string // API endpoint base URL + UserAgent string // optional additional User-Agent fragment + + Pagespeedapi *PagespeedapiService +} + +func (s *Service) userAgent() string { + if s.UserAgent == "" { + return googleapi.UserAgent + } + return googleapi.UserAgent + " " + s.UserAgent +} + +func NewPagespeedapiService(s *Service) *PagespeedapiService { + rs := &PagespeedapiService{s: s} + return rs +} + +type PagespeedapiService struct { + s *Service +} + +type PagespeedApiFormatStringV4 struct { + // Args: List of arguments for the format string. + Args []*PagespeedApiFormatStringV4Args `json:"args,omitempty"` + + // Format: A localized format string with {{FOO}} placeholders, where + // 'FOO' is the key of the argument whose value should be substituted. + // For HYPERLINK arguments, the format string will instead contain + // {{BEGIN_FOO}} and {{END_FOO}} for the argument with key 'FOO'. + Format string `json:"format,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Args") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Args") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *PagespeedApiFormatStringV4) MarshalJSON() ([]byte, error) { + type NoMethod PagespeedApiFormatStringV4 + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +type PagespeedApiFormatStringV4Args struct { + // Key: The placeholder key for this arg, as a string. + Key string `json:"key,omitempty"` + + // Rects: The screen rectangles being referred to, with dimensions + // measured in CSS pixels. This is only ever used for SNAPSHOT_RECT + // arguments. If this is absent for a SNAPSHOT_RECT argument, it means + // that that argument refers to the entire snapshot. + Rects []*PagespeedApiFormatStringV4ArgsRects `json:"rects,omitempty"` + + // SecondaryRects: Secondary screen rectangles being referred to, with + // dimensions measured in CSS pixels. This is only ever used for + // SNAPSHOT_RECT arguments. + SecondaryRects []*PagespeedApiFormatStringV4ArgsSecondaryRects `json:"secondary_rects,omitempty"` + + // Type: Type of argument. One of URL, STRING_LITERAL, INT_LITERAL, + // BYTES, DURATION, VERBATIM_STRING, PERCENTAGE, HYPERLINK, or + // SNAPSHOT_RECT. + Type string `json:"type,omitempty"` + + // Value: Argument value, as a localized string. + Value string `json:"value,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Key") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Key") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *PagespeedApiFormatStringV4Args) MarshalJSON() ([]byte, error) { + type NoMethod PagespeedApiFormatStringV4Args + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +type PagespeedApiFormatStringV4ArgsRects struct { + Height int64 `json:"height,omitempty"` + + Left int64 `json:"left,omitempty"` + + Top int64 `json:"top,omitempty"` + + Width int64 `json:"width,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Height") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Height") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *PagespeedApiFormatStringV4ArgsRects) MarshalJSON() ([]byte, error) { + type NoMethod PagespeedApiFormatStringV4ArgsRects + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +type PagespeedApiFormatStringV4ArgsSecondaryRects struct { + Height int64 `json:"height,omitempty"` + + Left int64 `json:"left,omitempty"` + + Top int64 `json:"top,omitempty"` + + Width int64 `json:"width,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Height") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Height") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *PagespeedApiFormatStringV4ArgsSecondaryRects) MarshalJSON() ([]byte, error) { + type NoMethod PagespeedApiFormatStringV4ArgsSecondaryRects + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +type PagespeedApiImageV4 struct { + // Data: Image data base64 encoded. + Data string `json:"data,omitempty"` + + // Height: Height of screenshot in pixels. + Height int64 `json:"height,omitempty"` + + // Key: Unique string key, if any, identifying this image. + Key string `json:"key,omitempty"` + + // MimeType: Mime type of image data (e.g. "image/jpeg"). + MimeType string `json:"mime_type,omitempty"` + + PageRect *PagespeedApiImageV4PageRect `json:"page_rect,omitempty"` + + // Width: Width of screenshot in pixels. + Width int64 `json:"width,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Data") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Data") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *PagespeedApiImageV4) MarshalJSON() ([]byte, error) { + type NoMethod PagespeedApiImageV4 + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +type PagespeedApiImageV4PageRect struct { + Height int64 `json:"height,omitempty"` + + Left int64 `json:"left,omitempty"` + + Top int64 `json:"top,omitempty"` + + Width int64 `json:"width,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Height") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Height") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *PagespeedApiImageV4PageRect) MarshalJSON() ([]byte, error) { + type NoMethod PagespeedApiImageV4PageRect + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +type PagespeedApiPagespeedResponseV4 struct { + // CaptchaResult: The captcha verify result + CaptchaResult string `json:"captchaResult,omitempty"` + + // FormattedResults: Localized PageSpeed results. Contains a ruleResults + // entry for each PageSpeed rule instantiated and run by the server. + FormattedResults *PagespeedApiPagespeedResponseV4FormattedResults `json:"formattedResults,omitempty"` + + // Id: Canonicalized and final URL for the document, after following + // page redirects (if any). + Id string `json:"id,omitempty"` + + // InvalidRules: List of rules that were specified in the request, but + // which the server did not know how to instantiate. + InvalidRules []string `json:"invalidRules,omitempty"` + + // Kind: Kind of result. + Kind string `json:"kind,omitempty"` + + // LoadingExperience: Metrics of end users' page loading experience. + LoadingExperience *PagespeedApiPagespeedResponseV4LoadingExperience `json:"loadingExperience,omitempty"` + + // PageStats: Summary statistics for the page, such as number of + // JavaScript bytes, number of HTML bytes, etc. + PageStats *PagespeedApiPagespeedResponseV4PageStats `json:"pageStats,omitempty"` + + // ResponseCode: Response code for the document. 200 indicates a normal + // page load. 4xx/5xx indicates an error. + ResponseCode int64 `json:"responseCode,omitempty"` + + // RuleGroups: A map with one entry for each rule group in these + // results. + RuleGroups map[string]PagespeedApiPagespeedResponseV4RuleGroups `json:"ruleGroups,omitempty"` + + // Screenshot: Base64-encoded screenshot of the page that was analyzed. + Screenshot *PagespeedApiImageV4 `json:"screenshot,omitempty"` + + // Snapshots: Additional base64-encoded screenshots of the page, in + // various partial render states. + Snapshots []*PagespeedApiImageV4 `json:"snapshots,omitempty"` + + // Title: Title of the page, as displayed in the browser's title bar. + Title string `json:"title,omitempty"` + + // Version: The version of PageSpeed used to generate these results. + Version *PagespeedApiPagespeedResponseV4Version `json:"version,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "CaptchaResult") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "CaptchaResult") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *PagespeedApiPagespeedResponseV4) MarshalJSON() ([]byte, error) { + type NoMethod PagespeedApiPagespeedResponseV4 + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// PagespeedApiPagespeedResponseV4FormattedResults: Localized PageSpeed +// results. Contains a ruleResults entry for each PageSpeed rule +// instantiated and run by the server. +type PagespeedApiPagespeedResponseV4FormattedResults struct { + // Locale: The locale of the formattedResults, e.g. "en_US". + Locale string `json:"locale,omitempty"` + + // RuleResults: Dictionary of formatted rule results, with one entry for + // each PageSpeed rule instantiated and run by the server. + RuleResults map[string]PagespeedApiPagespeedResponseV4FormattedResultsRuleResults `json:"ruleResults,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Locale") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Locale") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *PagespeedApiPagespeedResponseV4FormattedResults) MarshalJSON() ([]byte, error) { + type NoMethod PagespeedApiPagespeedResponseV4FormattedResults + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// PagespeedApiPagespeedResponseV4FormattedResultsRuleResults: The +// enum-like identifier for this rule. For instance "EnableKeepAlive" or +// "AvoidCssImport". Not localized. +type PagespeedApiPagespeedResponseV4FormattedResultsRuleResults struct { + // Beta: Whether this rule is in 'beta'. Rules in beta are new rules + // that are being tested, which do not impact the overall score. + Beta bool `json:"beta,omitempty"` + + // Groups: List of rule groups that this rule belongs to. Each entry in + // the list is one of "SPEED", "USABILITY", or "SECURITY". + Groups []string `json:"groups,omitempty"` + + // LocalizedRuleName: Localized name of the rule, intended for + // presentation to a user. + LocalizedRuleName string `json:"localizedRuleName,omitempty"` + + // RuleImpact: The impact (unbounded floating point value) that + // implementing the suggestions for this rule would have on making the + // page faster. Impact is comparable between rules to determine which + // rule's suggestions would have a higher or lower impact on making a + // page faster. For instance, if enabling compression would save 1MB, + // while optimizing images would save 500kB, the enable compression rule + // would have 2x the impact of the image optimization rule, all other + // things being equal. + RuleImpact float64 `json:"ruleImpact,omitempty"` + + // Summary: A brief summary description for the rule, indicating at a + // high level what should be done to follow the rule and what benefit + // can be gained by doing so. + Summary *PagespeedApiFormatStringV4 `json:"summary,omitempty"` + + // UrlBlocks: List of blocks of URLs. Each block may contain a heading + // and a list of URLs. Each URL may optionally include additional + // details. + UrlBlocks []*PagespeedApiPagespeedResponseV4FormattedResultsRuleResultsUrlBlocks `json:"urlBlocks,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Beta") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Beta") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *PagespeedApiPagespeedResponseV4FormattedResultsRuleResults) MarshalJSON() ([]byte, error) { + type NoMethod PagespeedApiPagespeedResponseV4FormattedResultsRuleResults + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +func (s *PagespeedApiPagespeedResponseV4FormattedResultsRuleResults) UnmarshalJSON(data []byte) error { + type NoMethod PagespeedApiPagespeedResponseV4FormattedResultsRuleResults + var s1 struct { + RuleImpact gensupport.JSONFloat64 `json:"ruleImpact"` + *NoMethod + } + s1.NoMethod = (*NoMethod)(s) + if err := json.Unmarshal(data, &s1); err != nil { + return err + } + s.RuleImpact = float64(s1.RuleImpact) + return nil +} + +type PagespeedApiPagespeedResponseV4FormattedResultsRuleResultsUrlBlocks struct { + // Header: Heading to be displayed with the list of URLs. + Header *PagespeedApiFormatStringV4 `json:"header,omitempty"` + + // Urls: List of entries that provide information about URLs in the url + // block. Optional. + Urls []*PagespeedApiPagespeedResponseV4FormattedResultsRuleResultsUrlBlocksUrls `json:"urls,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Header") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Header") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *PagespeedApiPagespeedResponseV4FormattedResultsRuleResultsUrlBlocks) MarshalJSON() ([]byte, error) { + type NoMethod PagespeedApiPagespeedResponseV4FormattedResultsRuleResultsUrlBlocks + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +type PagespeedApiPagespeedResponseV4FormattedResultsRuleResultsUrlBlocksUrls struct { + // Details: List of entries that provide additional details about a + // single URL. Optional. + Details []*PagespeedApiFormatStringV4 `json:"details,omitempty"` + + // Result: A format string that gives information about the URL, and a + // list of arguments for that format string. + Result *PagespeedApiFormatStringV4 `json:"result,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Details") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Details") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *PagespeedApiPagespeedResponseV4FormattedResultsRuleResultsUrlBlocksUrls) MarshalJSON() ([]byte, error) { + type NoMethod PagespeedApiPagespeedResponseV4FormattedResultsRuleResultsUrlBlocksUrls + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// PagespeedApiPagespeedResponseV4LoadingExperience: Metrics of end +// users' page loading experience. +type PagespeedApiPagespeedResponseV4LoadingExperience struct { + // Id: The url, pattern or origin which the metrics are on. + Id string `json:"id,omitempty"` + + InitialUrl string `json:"initial_url,omitempty"` + + Metrics map[string]PagespeedApiPagespeedResponseV4LoadingExperienceMetrics `json:"metrics,omitempty"` + + OverallCategory string `json:"overall_category,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Id") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Id") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *PagespeedApiPagespeedResponseV4LoadingExperience) MarshalJSON() ([]byte, error) { + type NoMethod PagespeedApiPagespeedResponseV4LoadingExperience + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// PagespeedApiPagespeedResponseV4LoadingExperienceMetrics: The type of +// the metric. +type PagespeedApiPagespeedResponseV4LoadingExperienceMetrics struct { + Category string `json:"category,omitempty"` + + Distributions []*PagespeedApiPagespeedResponseV4LoadingExperienceMetricsDistributions `json:"distributions,omitempty"` + + Median int64 `json:"median,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Category") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Category") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *PagespeedApiPagespeedResponseV4LoadingExperienceMetrics) MarshalJSON() ([]byte, error) { + type NoMethod PagespeedApiPagespeedResponseV4LoadingExperienceMetrics + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +type PagespeedApiPagespeedResponseV4LoadingExperienceMetricsDistributions struct { + Max int64 `json:"max,omitempty"` + + Min int64 `json:"min,omitempty"` + + Proportion float64 `json:"proportion,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Max") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Max") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *PagespeedApiPagespeedResponseV4LoadingExperienceMetricsDistributions) MarshalJSON() ([]byte, error) { + type NoMethod PagespeedApiPagespeedResponseV4LoadingExperienceMetricsDistributions + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +func (s *PagespeedApiPagespeedResponseV4LoadingExperienceMetricsDistributions) UnmarshalJSON(data []byte) error { + type NoMethod PagespeedApiPagespeedResponseV4LoadingExperienceMetricsDistributions + var s1 struct { + Proportion gensupport.JSONFloat64 `json:"proportion"` + *NoMethod + } + s1.NoMethod = (*NoMethod)(s) + if err := json.Unmarshal(data, &s1); err != nil { + return err + } + s.Proportion = float64(s1.Proportion) + return nil +} + +// PagespeedApiPagespeedResponseV4PageStats: Summary statistics for the +// page, such as number of JavaScript bytes, number of HTML bytes, etc. +type PagespeedApiPagespeedResponseV4PageStats struct { + // Cms: Content management system (CMS) used for the page. + Cms string `json:"cms,omitempty"` + + // CssResponseBytes: Number of uncompressed response bytes for CSS + // resources on the page. + CssResponseBytes int64 `json:"cssResponseBytes,omitempty,string"` + + // FlashResponseBytes: Number of response bytes for flash resources on + // the page. + FlashResponseBytes int64 `json:"flashResponseBytes,omitempty,string"` + + // HtmlResponseBytes: Number of uncompressed response bytes for the main + // HTML document and all iframes on the page. + HtmlResponseBytes int64 `json:"htmlResponseBytes,omitempty,string"` + + // ImageResponseBytes: Number of response bytes for image resources on + // the page. + ImageResponseBytes int64 `json:"imageResponseBytes,omitempty,string"` + + // JavascriptResponseBytes: Number of uncompressed response bytes for JS + // resources on the page. + JavascriptResponseBytes int64 `json:"javascriptResponseBytes,omitempty,string"` + + // NumRenderBlockingRoundTrips: The needed round trips to load render + // blocking resources + NumRenderBlockingRoundTrips int64 `json:"numRenderBlockingRoundTrips,omitempty"` + + // NumTotalRoundTrips: The needed round trips to load the full page + NumTotalRoundTrips int64 `json:"numTotalRoundTrips,omitempty"` + + // NumberCssResources: Number of CSS resources referenced by the page. + NumberCssResources int64 `json:"numberCssResources,omitempty"` + + // NumberHosts: Number of unique hosts referenced by the page. + NumberHosts int64 `json:"numberHosts,omitempty"` + + // NumberJsResources: Number of JavaScript resources referenced by the + // page. + NumberJsResources int64 `json:"numberJsResources,omitempty"` + + // NumberResources: Number of HTTP resources loaded by the page. + NumberResources int64 `json:"numberResources,omitempty"` + + // NumberRobotedResources: Number of roboted resources. + NumberRobotedResources int64 `json:"numberRobotedResources,omitempty"` + + // NumberStaticResources: Number of static (i.e. cacheable) resources on + // the page. + NumberStaticResources int64 `json:"numberStaticResources,omitempty"` + + // NumberTransientFetchFailureResources: Number of transient-failed + // resources. + NumberTransientFetchFailureResources int64 `json:"numberTransientFetchFailureResources,omitempty"` + + // OtherResponseBytes: Number of response bytes for other resources on + // the page. + OtherResponseBytes int64 `json:"otherResponseBytes,omitempty,string"` + + // OverTheWireResponseBytes: Number of over-the-wire bytes, uses the + // default gzip compression strategy as an estimation. + OverTheWireResponseBytes int64 `json:"overTheWireResponseBytes,omitempty,string"` + + // RobotedUrls: List of roboted urls. + RobotedUrls []string `json:"robotedUrls,omitempty"` + + // TextResponseBytes: Number of uncompressed response bytes for text + // resources not covered by other statistics (i.e non-HTML, non-script, + // non-CSS resources) on the page. + TextResponseBytes int64 `json:"textResponseBytes,omitempty,string"` + + // TotalRequestBytes: Total size of all request bytes sent by the page. + TotalRequestBytes int64 `json:"totalRequestBytes,omitempty,string"` + + // TransientFetchFailureUrls: List of transient fetch failure urls. + TransientFetchFailureUrls []string `json:"transientFetchFailureUrls,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Cms") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Cms") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *PagespeedApiPagespeedResponseV4PageStats) MarshalJSON() ([]byte, error) { + type NoMethod PagespeedApiPagespeedResponseV4PageStats + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// PagespeedApiPagespeedResponseV4RuleGroups: The name of this rule +// group: one of "SPEED", "USABILITY", or "SECURITY". +type PagespeedApiPagespeedResponseV4RuleGroups struct { + Pass bool `json:"pass,omitempty"` + + // Score: The score (0-100) for this rule group, which indicates how + // much better a page could be in that category (e.g. how much faster, + // or how much more usable, or how much more secure). A high score + // indicates little room for improvement, while a lower score indicates + // more room for improvement. + Score int64 `json:"score,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Pass") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Pass") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *PagespeedApiPagespeedResponseV4RuleGroups) MarshalJSON() ([]byte, error) { + type NoMethod PagespeedApiPagespeedResponseV4RuleGroups + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// PagespeedApiPagespeedResponseV4Version: The version of PageSpeed used +// to generate these results. +type PagespeedApiPagespeedResponseV4Version struct { + // Major: The major version number of PageSpeed used to generate these + // results. + Major int64 `json:"major,omitempty"` + + // Minor: The minor version number of PageSpeed used to generate these + // results. + Minor int64 `json:"minor,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Major") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Major") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *PagespeedApiPagespeedResponseV4Version) MarshalJSON() ([]byte, error) { + type NoMethod PagespeedApiPagespeedResponseV4Version + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// method id "pagespeedonline.pagespeedapi.runpagespeed": + +type PagespeedapiRunpagespeedCall struct { + s *Service + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// Runpagespeed: Runs PageSpeed analysis on the page at the specified +// URL, and returns PageSpeed scores, a list of suggestions to make that +// page faster, and other information. +func (r *PagespeedapiService) Runpagespeed(url string) *PagespeedapiRunpagespeedCall { + c := &PagespeedapiRunpagespeedCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.urlParams_.Set("url", url) + return c +} + +// FilterThirdPartyResources sets the optional parameter +// "filter_third_party_resources": Indicates if third party resources +// should be filtered out before PageSpeed analysis. +func (c *PagespeedapiRunpagespeedCall) FilterThirdPartyResources(filterThirdPartyResources bool) *PagespeedapiRunpagespeedCall { + c.urlParams_.Set("filter_third_party_resources", fmt.Sprint(filterThirdPartyResources)) + return c +} + +// Locale sets the optional parameter "locale": The locale used to +// localize formatted results +func (c *PagespeedapiRunpagespeedCall) Locale(locale string) *PagespeedapiRunpagespeedCall { + c.urlParams_.Set("locale", locale) + return c +} + +// Rule sets the optional parameter "rule": A PageSpeed rule to run; if +// none are given, all rules are run +func (c *PagespeedapiRunpagespeedCall) Rule(rule ...string) *PagespeedapiRunpagespeedCall { + c.urlParams_.SetMulti("rule", append([]string{}, rule...)) + return c +} + +// Screenshot sets the optional parameter "screenshot": Indicates if +// binary data containing a screenshot should be included +func (c *PagespeedapiRunpagespeedCall) Screenshot(screenshot bool) *PagespeedapiRunpagespeedCall { + c.urlParams_.Set("screenshot", fmt.Sprint(screenshot)) + return c +} + +// Snapshots sets the optional parameter "snapshots": Indicates if +// binary data containing snapshot images should be included +func (c *PagespeedapiRunpagespeedCall) Snapshots(snapshots bool) *PagespeedapiRunpagespeedCall { + c.urlParams_.Set("snapshots", fmt.Sprint(snapshots)) + return c +} + +// Strategy sets the optional parameter "strategy": The analysis +// strategy (desktop or mobile) to use, and desktop is the default +// +// Possible values: +// "desktop" - Fetch and analyze the URL for desktop browsers +// "mobile" - Fetch and analyze the URL for mobile devices +func (c *PagespeedapiRunpagespeedCall) Strategy(strategy string) *PagespeedapiRunpagespeedCall { + c.urlParams_.Set("strategy", strategy) + return c +} + +// UtmCampaign sets the optional parameter "utm_campaign": Campaign name +// for analytics. +func (c *PagespeedapiRunpagespeedCall) UtmCampaign(utmCampaign string) *PagespeedapiRunpagespeedCall { + c.urlParams_.Set("utm_campaign", utmCampaign) + return c +} + +// UtmSource sets the optional parameter "utm_source": Campaign source +// for analytics. +func (c *PagespeedapiRunpagespeedCall) UtmSource(utmSource string) *PagespeedapiRunpagespeedCall { + c.urlParams_.Set("utm_source", utmSource) + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *PagespeedapiRunpagespeedCall) Fields(s ...googleapi.Field) *PagespeedapiRunpagespeedCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// IfNoneMatch sets the optional parameter which makes the operation +// fail if the object's ETag matches the given value. This is useful for +// getting updates only after the object has changed since the last +// request. Use googleapi.IsNotModified to check whether the response +// error from Do is the result of In-None-Match. +func (c *PagespeedapiRunpagespeedCall) IfNoneMatch(entityTag string) *PagespeedapiRunpagespeedCall { + c.ifNoneMatch_ = entityTag + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *PagespeedapiRunpagespeedCall) Context(ctx context.Context) *PagespeedapiRunpagespeedCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *PagespeedapiRunpagespeedCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *PagespeedapiRunpagespeedCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + if c.ifNoneMatch_ != "" { + reqHeaders.Set("If-None-Match", c.ifNoneMatch_) + } + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "runPagespeed") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("GET", urls, body) + req.Header = reqHeaders + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "pagespeedonline.pagespeedapi.runpagespeed" call. +// Exactly one of *PagespeedApiPagespeedResponseV4 or error will be +// non-nil. Any non-2xx status code is an error. Response headers are in +// either *PagespeedApiPagespeedResponseV4.ServerResponse.Header or (if +// a response was returned at all) in error.(*googleapi.Error).Header. +// Use googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *PagespeedapiRunpagespeedCall) Do(opts ...googleapi.CallOption) (*PagespeedApiPagespeedResponseV4, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &PagespeedApiPagespeedResponseV4{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Runs PageSpeed analysis on the page at the specified URL, and returns PageSpeed scores, a list of suggestions to make that page faster, and other information.", + // "httpMethod": "GET", + // "id": "pagespeedonline.pagespeedapi.runpagespeed", + // "parameterOrder": [ + // "url" + // ], + // "parameters": { + // "filter_third_party_resources": { + // "default": "false", + // "description": "Indicates if third party resources should be filtered out before PageSpeed analysis.", + // "location": "query", + // "type": "boolean" + // }, + // "locale": { + // "description": "The locale used to localize formatted results", + // "location": "query", + // "pattern": "[a-zA-Z]+(_[a-zA-Z]+)?", + // "type": "string" + // }, + // "rule": { + // "description": "A PageSpeed rule to run; if none are given, all rules are run", + // "location": "query", + // "pattern": "[a-zA-Z]+", + // "repeated": true, + // "type": "string" + // }, + // "screenshot": { + // "default": "false", + // "description": "Indicates if binary data containing a screenshot should be included", + // "location": "query", + // "type": "boolean" + // }, + // "snapshots": { + // "default": "false", + // "description": "Indicates if binary data containing snapshot images should be included", + // "location": "query", + // "type": "boolean" + // }, + // "strategy": { + // "description": "The analysis strategy (desktop or mobile) to use, and desktop is the default", + // "enum": [ + // "desktop", + // "mobile" + // ], + // "enumDescriptions": [ + // "Fetch and analyze the URL for desktop browsers", + // "Fetch and analyze the URL for mobile devices" + // ], + // "location": "query", + // "type": "string" + // }, + // "url": { + // "description": "The URL to fetch and analyze", + // "location": "query", + // "pattern": "(?i)http(s)?://.*", + // "required": true, + // "type": "string" + // }, + // "utm_campaign": { + // "description": "Campaign name for analytics.", + // "location": "query", + // "type": "string" + // }, + // "utm_source": { + // "description": "Campaign source for analytics.", + // "location": "query", + // "type": "string" + // } + // }, + // "path": "runPagespeed", + // "response": { + // "$ref": "PagespeedApiPagespeedResponseV4" + // } + // } + +} diff --git a/vendor/google.golang.org/api/partners/v2/partners-api.json b/vendor/google.golang.org/api/partners/v2/partners-api.json index 29165553e..8c3dc6f25 100644 --- a/vendor/google.golang.org/api/partners/v2/partners-api.json +++ b/vendor/google.golang.org/api/partners/v2/partners-api.json @@ -1,466 +1,307 @@ { + "basePath": "", + "baseUrl": "https://partners.googleapis.com/", + "batchPath": "batch", + "canonicalName": "Partners", + "description": "Searches certified companies and creates contact leads with them, and also audits the usage of clients.", + "discoveryVersion": "v1", + "documentationLink": "https://developers.google.com/partners/", + "icons": { + "x16": "http://www.google.com/images/icons/product/search-16.gif", + "x32": "http://www.google.com/images/icons/product/search-32.gif" + }, + "id": "partners:v2", + "kind": "discovery#restDescription", + "name": "partners", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "$.xgafv": { + "description": "V1 error format.", + "enum": [ + "1", + "2" + ], + "enumDescriptions": [ + "v1 error format", + "v2 error format" + ], + "location": "query", + "type": "string" + }, + "access_token": { + "description": "OAuth access token.", + "location": "query", + "type": "string" + }, + "alt": { + "default": "json", + "description": "Data format for response.", + "enum": [ + "json", + "media", + "proto" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json", + "Media download with context-dependent Content-Type", + "Responses with Content-Type of application/x-protobuf" + ], + "location": "query", + "type": "string" + }, + "bearer_token": { + "description": "OAuth bearer token.", + "location": "query", + "type": "string" + }, + "callback": { + "description": "JSONP", + "location": "query", + "type": "string" + }, + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "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.", + "location": "query", + "type": "string" + }, + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "pp": { + "default": "true", + "description": "Pretty-print response.", + "location": "query", + "type": "boolean" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", + "location": "query", + "type": "string" + }, + "uploadType": { + "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", + "location": "query", + "type": "string" + }, + "upload_protocol": { + "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", + "location": "query", + "type": "string" + } + }, + "protocol": "rest", "resources": { - "users": { + "analytics": { "methods": { - "createCompanyRelation": { - "flatPath": "v2/users/{userId}/companyRelation", - "path": "v2/users/{userId}/companyRelation", - "id": "partners.users.createCompanyRelation", - "request": { - "$ref": "CompanyRelation" - }, - "description": "Creates a user's company relation. Affiliates the user to a company.", - "response": { - "$ref": "CompanyRelation" - }, - "parameterOrder": [ - "userId" - ], - "httpMethod": "PUT", - "parameters": { - "requestMetadata.experimentIds": { - "description": "Experiment IDs the current request belongs to.", - "type": "string", - "repeated": true, - "location": "query" - }, - "userId": { - "location": "path", - "description": "The ID of the user. Can be set to \u003ccode\u003eme\u003c/code\u003e to mean\nthe currently authenticated user.", - "required": true, - "type": "string" - }, - "requestMetadata.trafficSource.trafficSubId": { - "location": "query", - "description": "Second level identifier to indicate where the traffic comes from.\nAn identifier has multiple letters created by a team which redirected the\ntraffic to us.", - "type": "string" - }, - "requestMetadata.userOverrides.userId": { - "location": "query", - "description": "Logged-in user ID to impersonate instead of the user's ID.", - "type": "string" - }, - "requestMetadata.partnersSessionId": { - "location": "query", - "description": "Google Partners session ID.", - "type": "string" - }, - "requestMetadata.trafficSource.trafficSourceId": { - "description": "Identifier to indicate where the traffic comes from.\nAn identifier has multiple letters created by a team which redirected the\ntraffic to us.", - "type": "string", - "location": "query" - }, - "requestMetadata.locale": { - "description": "Locale to use for the current request.", - "type": "string", - "location": "query" - }, - "requestMetadata.userOverrides.ipAddress": { - "location": "query", - "description": "IP address to use instead of the user's geo-located IP address.", - "type": "string" - } - } - }, - "deleteCompanyRelation": { - "description": "Deletes a user's company relation. Unaffiliaites the user from a company.", - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "userId" - ], - "httpMethod": "DELETE", - "parameters": { - "requestMetadata.userOverrides.userId": { - "type": "string", - "location": "query", - "description": "Logged-in user ID to impersonate instead of the user's ID." - }, - "requestMetadata.partnersSessionId": { - "description": "Google Partners session ID.", - "type": "string", - "location": "query" - }, - "requestMetadata.trafficSource.trafficSourceId": { - "location": "query", - "description": "Identifier to indicate where the traffic comes from.\nAn identifier has multiple letters created by a team which redirected the\ntraffic to us.", - "type": "string" - }, - "requestMetadata.locale": { - "type": "string", - "location": "query", - "description": "Locale to use for the current request." - }, - "requestMetadata.userOverrides.ipAddress": { - "location": "query", - "description": "IP address to use instead of the user's geo-located IP address.", - "type": "string" - }, - "requestMetadata.experimentIds": { - "repeated": true, - "location": "query", - "description": "Experiment IDs the current request belongs to.", - "type": "string" - }, - "requestMetadata.trafficSource.trafficSubId": { - "location": "query", - "description": "Second level identifier to indicate where the traffic comes from.\nAn identifier has multiple letters created by a team which redirected the\ntraffic to us.", - "type": "string" - }, - "userId": { - "location": "path", - "description": "The ID of the user. Can be set to \u003ccode\u003eme\u003c/code\u003e to mean\nthe currently authenticated user.", - "required": true, - "type": "string" - } - }, - "flatPath": "v2/users/{userId}/companyRelation", - "path": "v2/users/{userId}/companyRelation", - "id": "partners.users.deleteCompanyRelation" - }, - "get": { - "description": "Gets a user.", - "response": { - "$ref": "User" - }, - "parameterOrder": [ - "userId" - ], + "list": { + "description": "Lists analytics data for a user's associated company.\nShould only be called within the context of an authorized logged in user.", + "flatPath": "v2/analytics", "httpMethod": "GET", - "parameters": { - "requestMetadata.userOverrides.userId": { - "location": "query", - "description": "Logged-in user ID to impersonate instead of the user's ID.", - "type": "string" - }, - "requestMetadata.partnersSessionId": { - "location": "query", - "description": "Google Partners session ID.", - "type": "string" - }, - "userView": { - "location": "query", - "enum": [ - "BASIC", - "PROFILE", - "PUBLIC_PROFILE" - ], - "description": "Specifies what parts of the user information to return.", - "type": "string" - }, - "requestMetadata.trafficSource.trafficSourceId": { - "description": "Identifier to indicate where the traffic comes from.\nAn identifier has multiple letters created by a team which redirected the\ntraffic to us.", - "type": "string", - "location": "query" - }, - "requestMetadata.locale": { - "location": "query", - "description": "Locale to use for the current request.", - "type": "string" - }, - "requestMetadata.userOverrides.ipAddress": { - "location": "query", - "description": "IP address to use instead of the user's geo-located IP address.", - "type": "string" - }, - "requestMetadata.experimentIds": { - "location": "query", - "description": "Experiment IDs the current request belongs to.", - "type": "string", - "repeated": true - }, - "userId": { - "description": "Identifier of the user. Can be set to \u003ccode\u003eme\u003c/code\u003e to mean the currently\nauthenticated user.", - "required": true, - "type": "string", - "location": "path" - }, - "requestMetadata.trafficSource.trafficSubId": { - "description": "Second level identifier to indicate where the traffic comes from.\nAn identifier has multiple letters created by a team which redirected the\ntraffic to us.", - "type": "string", - "location": "query" - } - }, - "flatPath": "v2/users/{userId}", - "path": "v2/users/{userId}", - "id": "partners.users.get" - }, - "updateProfile": { - "request": { - "$ref": "UserProfile" - }, - "description": "Updates a user's profile. A user can only update their own profile and\nshould only be called within the context of a logged in user.", - "httpMethod": "PATCH", + "id": "partners.analytics.list", "parameterOrder": [], - "response": { - "$ref": "UserProfile" - }, "parameters": { - "requestMetadata.userOverrides.userId": { - "description": "Logged-in user ID to impersonate instead of the user's ID.", - "type": "string", - "location": "query" - }, - "requestMetadata.partnersSessionId": { + "pageSize": { + "description": "Requested page size. Server may return fewer analytics than requested.\nIf unspecified or set to 0, default value is 30.\nSpecifies the number of days in the date range when querying analytics.\nThe `page_token` represents the end date of the date range\nand the start date is calculated using the `page_size` as the number\nof days BEFORE the end date.\nMust be a non-negative integer.", + "format": "int32", "location": "query", - "description": "Google Partners session ID.", - "type": "string" + "type": "integer" }, - "requestMetadata.trafficSource.trafficSourceId": { + "pageToken": { + "description": "A token identifying a page of results that the server returns.\nTypically, this is the value of `ListAnalyticsResponse.next_page_token`\nreturned from the previous call to\nListAnalytics.\nWill be a date string in `YYYY-MM-DD` format representing the end date\nof the date range of results to return.\nIf unspecified or set to \"\", default value is the current date.", "location": "query", - "description": "Identifier to indicate where the traffic comes from.\nAn identifier has multiple letters created by a team which redirected the\ntraffic to us.", - "type": "string" - }, - "requestMetadata.locale": { - "location": "query", - "description": "Locale to use for the current request.", - "type": "string" - }, - "requestMetadata.userOverrides.ipAddress": { - "location": "query", - "description": "IP address to use instead of the user's geo-located IP address.", "type": "string" }, "requestMetadata.experimentIds": { - "repeated": true, - "location": "query", "description": "Experiment IDs the current request belongs to.", + "location": "query", + "repeated": true, + "type": "string" + }, + "requestMetadata.locale": { + "description": "Locale to use for the current request.", + "location": "query", + "type": "string" + }, + "requestMetadata.partnersSessionId": { + "description": "Google Partners session ID.", + "location": "query", + "type": "string" + }, + "requestMetadata.trafficSource.trafficSourceId": { + "description": "Identifier to indicate where the traffic comes from.\nAn identifier has multiple letters created by a team which redirected the\ntraffic to us.", + "location": "query", "type": "string" }, "requestMetadata.trafficSource.trafficSubId": { - "location": "query", "description": "Second level identifier to indicate where the traffic comes from.\nAn identifier has multiple letters created by a team which redirected the\ntraffic to us.", + "location": "query", + "type": "string" + }, + "requestMetadata.userOverrides.ipAddress": { + "description": "IP address to use instead of the user's geo-located IP address.", + "location": "query", + "type": "string" + }, + "requestMetadata.userOverrides.userId": { + "description": "Logged-in user ID to impersonate instead of the user's ID.", + "location": "query", "type": "string" } }, - "flatPath": "v2/users/profile", - "id": "partners.users.updateProfile", - "path": "v2/users/profile" + "path": "v2/analytics", + "response": { + "$ref": "ListAnalyticsResponse" + } + } + } + }, + "clientMessages": { + "methods": { + "log": { + "description": "Logs a generic message from the client, such as\n`Failed to render component`, `Profile page is running slow`,\n`More than 500 users have accessed this result.`, etc.", + "flatPath": "v2/clientMessages:log", + "httpMethod": "POST", + "id": "partners.clientMessages.log", + "parameterOrder": [], + "parameters": {}, + "path": "v2/clientMessages:log", + "request": { + "$ref": "LogMessageRequest" + }, + "response": { + "$ref": "LogMessageResponse" + } } } }, "companies": { "methods": { "get": { - "response": { - "$ref": "GetCompanyResponse" - }, + "description": "Gets a company.", + "flatPath": "v2/companies/{companyId}", + "httpMethod": "GET", + "id": "partners.companies.get", "parameterOrder": [ "companyId" ], - "httpMethod": "GET", "parameters": { - "requestMetadata.trafficSource.trafficSourceId": { + "address": { + "description": "The address to use for sorting the company's addresses by proximity.\nIf not given, the geo-located address of the request is used.\nUsed when order_by is set.", "location": "query", - "description": "Identifier to indicate where the traffic comes from.\nAn identifier has multiple letters created by a team which redirected the\ntraffic to us.", - "type": "string" - }, - "requestMetadata.userOverrides.ipAddress": { - "location": "query", - "description": "IP address to use instead of the user's geo-located IP address.", "type": "string" }, "companyId": { - "required": true, - "type": "string", + "description": "The ID of the company to retrieve.", "location": "path", - "description": "The ID of the company to retrieve." + "required": true, + "type": "string" }, "currencyCode": { - "location": "query", "description": "If the company's budget is in a different currency code than this one, then\nthe converted budget is converted to this currency code.", - "type": "string" - }, - "requestMetadata.experimentIds": { - "repeated": true, "location": "query", - "description": "Experiment IDs the current request belongs to.", - "type": "string" - }, - "requestMetadata.trafficSource.trafficSubId": { - "location": "query", - "description": "Second level identifier to indicate where the traffic comes from.\nAn identifier has multiple letters created by a team which redirected the\ntraffic to us.", "type": "string" }, "orderBy": { - "location": "query", "description": "How to order addresses within the returned company. Currently, only\n`address` and `address desc` is supported which will sorted by closest to\nfarthest in distance from given address and farthest to closest distance\nfrom given address respectively.", - "type": "string" - }, - "requestMetadata.partnersSessionId": { "location": "query", - "description": "Google Partners session ID.", "type": "string" }, - "requestMetadata.userOverrides.userId": { - "description": "Logged-in user ID to impersonate instead of the user's ID.", - "type": "string", - "location": "query" - }, - "view": { - "enum": [ - "COMPANY_VIEW_UNSPECIFIED", - "CV_GOOGLE_PARTNER_SEARCH" - ], - "description": "The view of `Company` resource to be returned. This must not be\n`COMPANY_VIEW_UNSPECIFIED`.", - "type": "string", - "location": "query" + "requestMetadata.experimentIds": { + "description": "Experiment IDs the current request belongs to.", + "location": "query", + "repeated": true, + "type": "string" }, "requestMetadata.locale": { "description": "Locale to use for the current request.", - "type": "string", - "location": "query" - }, - "address": { - "type": "string", "location": "query", - "description": "The address to use for sorting the company's addresses by proximity.\nIf not given, the geo-located address of the request is used.\nUsed when order_by is set." - } - }, - "flatPath": "v2/companies/{companyId}", - "path": "v2/companies/{companyId}", - "id": "partners.companies.get", - "description": "Gets a company." - }, - "list": { - "path": "v2/companies", - "id": "partners.companies.list", - "description": "Lists companies.", - "response": { - "$ref": "ListCompaniesResponse" - }, - "parameterOrder": [], - "httpMethod": "GET", - "parameters": { - "requestMetadata.experimentIds": { - "repeated": true, - "location": "query", - "description": "Experiment IDs the current request belongs to.", "type": "string" }, - "orderBy": { - "type": "string", + "requestMetadata.partnersSessionId": { + "description": "Google Partners session ID.", "location": "query", - "description": "How to order addresses within the returned companies. Currently, only\n`address` and `address desc` is supported which will sorted by closest to\nfarthest in distance from given address and farthest to closest distance\nfrom given address respectively." + "type": "string" }, - "specializations": { - "enum": [ - "BADGE_SPECIALIZATION_UNKNOWN", - "BADGE_SPECIALIZATION_ADWORDS_SEARCH", - "BADGE_SPECIALIZATION_ADWORDS_DISPLAY", - "BADGE_SPECIALIZATION_ADWORDS_MOBILE", - "BADGE_SPECIALIZATION_ADWORDS_VIDEO", - "BADGE_SPECIALIZATION_ADWORDS_SHOPPING" - ], - "description": "List of specializations that the returned agencies should provide. If this\nis not empty, any returned agency must have at least one of these\nspecializations, or one of the services in the \"services\" field.", - "type": "string", - "repeated": true, - "location": "query" - }, - "maxMonthlyBudget.currencyCode": { + "requestMetadata.trafficSource.trafficSourceId": { + "description": "Identifier to indicate where the traffic comes from.\nAn identifier has multiple letters created by a team which redirected the\ntraffic to us.", + "location": "query", + "type": "string" + }, + "requestMetadata.trafficSource.trafficSubId": { + "description": "Second level identifier to indicate where the traffic comes from.\nAn identifier has multiple letters created by a team which redirected the\ntraffic to us.", + "location": "query", + "type": "string" + }, + "requestMetadata.userOverrides.ipAddress": { + "description": "IP address to use instead of the user's geo-located IP address.", "location": "query", - "description": "The 3-letter currency code defined in ISO 4217.", "type": "string" }, "requestMetadata.userOverrides.userId": { "description": "Logged-in user ID to impersonate instead of the user's ID.", - "type": "string", - "location": "query" - }, - "minMonthlyBudget.currencyCode": { - "description": "The 3-letter currency code defined in ISO 4217.", - "type": "string", - "location": "query" + "location": "query", + "type": "string" }, "view": { - "type": "string", - "location": "query", + "description": "The view of `Company` resource to be returned. This must not be\n`COMPANY_VIEW_UNSPECIFIED`.", "enum": [ "COMPANY_VIEW_UNSPECIFIED", "CV_GOOGLE_PARTNER_SEARCH" ], - "description": "The view of the `Company` resource to be returned. This must not be\n`COMPANY_VIEW_UNSPECIFIED`." - }, - "requestMetadata.locale": { - "type": "string", "location": "query", - "description": "Locale to use for the current request." - }, + "type": "string" + } + }, + "path": "v2/companies/{companyId}", + "response": { + "$ref": "GetCompanyResponse" + } + }, + "list": { + "description": "Lists companies.", + "flatPath": "v2/companies", + "httpMethod": "GET", + "id": "partners.companies.list", + "parameterOrder": [], + "parameters": { "address": { "description": "The address to use when searching for companies.\nIf not given, the geo-located address of the request is used.", - "type": "string", - "location": "query" - }, - "minMonthlyBudget.units": { - "description": "The whole units of the amount.\nFor example if `currencyCode` is `\"USD\"`, then 1 unit is one US dollar.", - "format": "int64", - "type": "string", - "location": "query" - }, - "maxMonthlyBudget.nanos": { "location": "query", - "description": "Number of nano (10^-9) units of the amount.\nThe value must be between -999,999,999 and +999,999,999 inclusive.\nIf `units` is positive, `nanos` must be positive or zero.\nIf `units` is zero, `nanos` can be positive, zero, or negative.\nIf `units` is negative, `nanos` must be negative or zero.\nFor example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.", - "format": "int32", - "type": "integer" - }, - "services": { - "description": "List of services that the returned agencies should provide. If this is\nnot empty, any returned agency must have at least one of these services,\nor one of the specializations in the \"specializations\" field.", - "type": "string", - "repeated": true, - "location": "query", - "enum": [ - "SERVICE_UNSPECIFIED", - "S_ADVANCED_ADWORDS_SUPPORT", - "S_ADVERTISING_ON_GOOGLE", - "S_AN_ENHANCED_WEBSITE", - "S_AN_ONLINE_MARKETING_PLAN", - "S_MOBILE_AND_VIDEO_ADS", - "S_MOBILE_WEBSITE_SERVICES" - ] - }, - "requestMetadata.trafficSource.trafficSourceId": { - "location": "query", - "description": "Identifier to indicate where the traffic comes from.\nAn identifier has multiple letters created by a team which redirected the\ntraffic to us.", - "type": "string" - }, - "maxMonthlyBudget.units": { - "description": "The whole units of the amount.\nFor example if `currencyCode` is `\"USD\"`, then 1 unit is one US dollar.", - "format": "int64", - "type": "string", - "location": "query" - }, - "requestMetadata.trafficSource.trafficSubId": { - "type": "string", - "location": "query", - "description": "Second level identifier to indicate where the traffic comes from.\nAn identifier has multiple letters created by a team which redirected the\ntraffic to us." - }, - "minMonthlyBudget.nanos": { - "location": "query", - "description": "Number of nano (10^-9) units of the amount.\nThe value must be between -999,999,999 and +999,999,999 inclusive.\nIf `units` is positive, `nanos` must be positive or zero.\nIf `units` is zero, `nanos` can be positive, zero, or negative.\nIf `units` is negative, `nanos` must be negative or zero.\nFor example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.", - "format": "int32", - "type": "integer" - }, - "requestMetadata.partnersSessionId": { - "location": "query", - "description": "Google Partners session ID.", - "type": "string" - }, - "pageToken": { - "location": "query", - "description": "A token identifying a page of results that the server returns.\nTypically, this is the value of `ListCompaniesResponse.next_page_token`\nreturned from the previous call to\nListCompanies.", "type": "string" }, "companyName": { "description": "Company name to search for.", - "type": "string", - "location": "query" + "location": "query", + "type": "string" + }, + "gpsMotivations": { + "description": "List of reasons for using Google Partner Search to get companies.", + "enum": [ + "GPS_MOTIVATION_UNSPECIFIED", + "GPSM_HELP_WITH_ADVERTISING", + "GPSM_HELP_WITH_WEBSITE", + "GPSM_NO_WEBSITE" + ], + "location": "query", + "repeated": true, + "type": "string" }, "industries": { "description": "List of industries the company can help with.", - "type": "string", - "repeated": true, - "location": "query", "enum": [ "INDUSTRY_UNSPECIFIED", "I_AUTOMOTIVE", @@ -473,72 +314,377 @@ "I_RETAIL", "I_TECHNOLOGY", "I_TRAVEL" - ] - }, - "websiteUrl": { - "description": "Website URL that will help to find a better matched company.\n.", - "type": "string", - "location": "query" - }, - "gpsMotivations": { - "repeated": true, - "location": "query", - "enum": [ - "GPS_MOTIVATION_UNSPECIFIED", - "GPSM_HELP_WITH_ADVERTISING", - "GPSM_HELP_WITH_WEBSITE", - "GPSM_NO_WEBSITE" ], - "description": "List of reasons for using Google Partner Search to get companies.", + "location": "query", + "repeated": true, "type": "string" }, "languageCodes": { "description": "List of language codes that company can support. Only primary language\nsubtags are accepted as defined by\n\u003ca href=\"https://tools.ietf.org/html/bcp47\"\u003eBCP 47\u003c/a\u003e\n(IETF BCP 47, \"Tags for Identifying Languages\").", - "type": "string", + "location": "query", "repeated": true, - "location": "query" + "type": "string" + }, + "maxMonthlyBudget.currencyCode": { + "description": "The 3-letter currency code defined in ISO 4217.", + "location": "query", + "type": "string" + }, + "maxMonthlyBudget.nanos": { + "description": "Number of nano (10^-9) units of the amount.\nThe value must be between -999,999,999 and +999,999,999 inclusive.\nIf `units` is positive, `nanos` must be positive or zero.\nIf `units` is zero, `nanos` can be positive, zero, or negative.\nIf `units` is negative, `nanos` must be negative or zero.\nFor example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "maxMonthlyBudget.units": { + "description": "The whole units of the amount.\nFor example if `currencyCode` is `\"USD\"`, then 1 unit is one US dollar.", + "format": "int64", + "location": "query", + "type": "string" + }, + "minMonthlyBudget.currencyCode": { + "description": "The 3-letter currency code defined in ISO 4217.", + "location": "query", + "type": "string" + }, + "minMonthlyBudget.nanos": { + "description": "Number of nano (10^-9) units of the amount.\nThe value must be between -999,999,999 and +999,999,999 inclusive.\nIf `units` is positive, `nanos` must be positive or zero.\nIf `units` is zero, `nanos` can be positive, zero, or negative.\nIf `units` is negative, `nanos` must be negative or zero.\nFor example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "minMonthlyBudget.units": { + "description": "The whole units of the amount.\nFor example if `currencyCode` is `\"USD\"`, then 1 unit is one US dollar.", + "format": "int64", + "location": "query", + "type": "string" + }, + "orderBy": { + "description": "How to order addresses within the returned companies. Currently, only\n`address` and `address desc` is supported which will sorted by closest to\nfarthest in distance from given address and farthest to closest distance\nfrom given address respectively.", + "location": "query", + "type": "string" }, "pageSize": { - "location": "query", "description": "Requested page size. Server may return fewer companies than requested.\nIf unspecified, server picks an appropriate default.", "format": "int32", + "location": "query", "type": "integer" }, + "pageToken": { + "description": "A token identifying a page of results that the server returns.\nTypically, this is the value of `ListCompaniesResponse.next_page_token`\nreturned from the previous call to\nListCompanies.", + "location": "query", + "type": "string" + }, + "requestMetadata.experimentIds": { + "description": "Experiment IDs the current request belongs to.", + "location": "query", + "repeated": true, + "type": "string" + }, + "requestMetadata.locale": { + "description": "Locale to use for the current request.", + "location": "query", + "type": "string" + }, + "requestMetadata.partnersSessionId": { + "description": "Google Partners session ID.", + "location": "query", + "type": "string" + }, + "requestMetadata.trafficSource.trafficSourceId": { + "description": "Identifier to indicate where the traffic comes from.\nAn identifier has multiple letters created by a team which redirected the\ntraffic to us.", + "location": "query", + "type": "string" + }, + "requestMetadata.trafficSource.trafficSubId": { + "description": "Second level identifier to indicate where the traffic comes from.\nAn identifier has multiple letters created by a team which redirected the\ntraffic to us.", + "location": "query", + "type": "string" + }, "requestMetadata.userOverrides.ipAddress": { "description": "IP address to use instead of the user's geo-located IP address.", - "type": "string", - "location": "query" + "location": "query", + "type": "string" + }, + "requestMetadata.userOverrides.userId": { + "description": "Logged-in user ID to impersonate instead of the user's ID.", + "location": "query", + "type": "string" + }, + "services": { + "description": "List of services that the returned agencies should provide. If this is\nnot empty, any returned agency must have at least one of these services,\nor one of the specializations in the \"specializations\" field.", + "enum": [ + "SERVICE_UNSPECIFIED", + "S_ADVANCED_ADWORDS_SUPPORT", + "S_ADVERTISING_ON_GOOGLE", + "S_AN_ENHANCED_WEBSITE", + "S_AN_ONLINE_MARKETING_PLAN", + "S_MOBILE_AND_VIDEO_ADS", + "S_MOBILE_WEBSITE_SERVICES" + ], + "location": "query", + "repeated": true, + "type": "string" + }, + "specializations": { + "description": "List of specializations that the returned agencies should provide. If this\nis not empty, any returned agency must have at least one of these\nspecializations, or one of the services in the \"services\" field.", + "enum": [ + "BADGE_SPECIALIZATION_UNKNOWN", + "BADGE_SPECIALIZATION_ADWORDS_SEARCH", + "BADGE_SPECIALIZATION_ADWORDS_DISPLAY", + "BADGE_SPECIALIZATION_ADWORDS_MOBILE", + "BADGE_SPECIALIZATION_ADWORDS_VIDEO", + "BADGE_SPECIALIZATION_ADWORDS_SHOPPING" + ], + "location": "query", + "repeated": true, + "type": "string" + }, + "view": { + "description": "The view of the `Company` resource to be returned. This must not be\n`COMPANY_VIEW_UNSPECIFIED`.", + "enum": [ + "COMPANY_VIEW_UNSPECIFIED", + "CV_GOOGLE_PARTNER_SEARCH" + ], + "location": "query", + "type": "string" + }, + "websiteUrl": { + "description": "Website URL that will help to find a better matched company.\n.", + "location": "query", + "type": "string" } }, - "flatPath": "v2/companies" + "path": "v2/companies", + "response": { + "$ref": "ListCompaniesResponse" + } } }, "resources": { "leads": { "methods": { "create": { + "description": "Creates an advertiser lead for the given company ID.", + "flatPath": "v2/companies/{companyId}/leads", "httpMethod": "POST", + "id": "partners.companies.leads.create", "parameterOrder": [ "companyId" ], - "response": { - "$ref": "CreateLeadResponse" - }, "parameters": { "companyId": { - "location": "path", "description": "The ID of the company to contact.", + "location": "path", "required": true, "type": "string" } }, - "flatPath": "v2/companies/{companyId}/leads", - "id": "partners.companies.leads.create", "path": "v2/companies/{companyId}/leads", "request": { "$ref": "CreateLeadRequest" }, - "description": "Creates an advertiser lead for the given company ID." + "response": { + "$ref": "CreateLeadResponse" + } + } + } + } + } + }, + "leads": { + "methods": { + "list": { + "description": "Lists advertiser leads for a user's associated company.\nShould only be called within the context of an authorized logged in user.", + "flatPath": "v2/leads", + "httpMethod": "GET", + "id": "partners.leads.list", + "parameterOrder": [], + "parameters": { + "orderBy": { + "description": "How to order Leads. Currently, only `create_time`\nand `create_time desc` are supported", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "Requested page size. Server may return fewer leads than requested.\nIf unspecified, server picks an appropriate default.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "A token identifying a page of results that the server returns.\nTypically, this is the value of `ListLeadsResponse.next_page_token`\nreturned from the previous call to\nListLeads.", + "location": "query", + "type": "string" + }, + "requestMetadata.experimentIds": { + "description": "Experiment IDs the current request belongs to.", + "location": "query", + "repeated": true, + "type": "string" + }, + "requestMetadata.locale": { + "description": "Locale to use for the current request.", + "location": "query", + "type": "string" + }, + "requestMetadata.partnersSessionId": { + "description": "Google Partners session ID.", + "location": "query", + "type": "string" + }, + "requestMetadata.trafficSource.trafficSourceId": { + "description": "Identifier to indicate where the traffic comes from.\nAn identifier has multiple letters created by a team which redirected the\ntraffic to us.", + "location": "query", + "type": "string" + }, + "requestMetadata.trafficSource.trafficSubId": { + "description": "Second level identifier to indicate where the traffic comes from.\nAn identifier has multiple letters created by a team which redirected the\ntraffic to us.", + "location": "query", + "type": "string" + }, + "requestMetadata.userOverrides.ipAddress": { + "description": "IP address to use instead of the user's geo-located IP address.", + "location": "query", + "type": "string" + }, + "requestMetadata.userOverrides.userId": { + "description": "Logged-in user ID to impersonate instead of the user's ID.", + "location": "query", + "type": "string" + } + }, + "path": "v2/leads", + "response": { + "$ref": "ListLeadsResponse" + } + } + } + }, + "offers": { + "methods": { + "list": { + "description": "Lists the Offers available for the current user", + "flatPath": "v2/offers", + "httpMethod": "GET", + "id": "partners.offers.list", + "parameterOrder": [], + "parameters": { + "requestMetadata.experimentIds": { + "description": "Experiment IDs the current request belongs to.", + "location": "query", + "repeated": true, + "type": "string" + }, + "requestMetadata.locale": { + "description": "Locale to use for the current request.", + "location": "query", + "type": "string" + }, + "requestMetadata.partnersSessionId": { + "description": "Google Partners session ID.", + "location": "query", + "type": "string" + }, + "requestMetadata.trafficSource.trafficSourceId": { + "description": "Identifier to indicate where the traffic comes from.\nAn identifier has multiple letters created by a team which redirected the\ntraffic to us.", + "location": "query", + "type": "string" + }, + "requestMetadata.trafficSource.trafficSubId": { + "description": "Second level identifier to indicate where the traffic comes from.\nAn identifier has multiple letters created by a team which redirected the\ntraffic to us.", + "location": "query", + "type": "string" + }, + "requestMetadata.userOverrides.ipAddress": { + "description": "IP address to use instead of the user's geo-located IP address.", + "location": "query", + "type": "string" + }, + "requestMetadata.userOverrides.userId": { + "description": "Logged-in user ID to impersonate instead of the user's ID.", + "location": "query", + "type": "string" + } + }, + "path": "v2/offers", + "response": { + "$ref": "ListOffersResponse" + } + } + }, + "resources": { + "history": { + "methods": { + "list": { + "description": "Lists the Historical Offers for the current user (or user's entire company)", + "flatPath": "v2/offers/history", + "httpMethod": "GET", + "id": "partners.offers.history.list", + "parameterOrder": [], + "parameters": { + "entireCompany": { + "description": "if true, show history for the entire company. Requires user to be admin.", + "location": "query", + "type": "boolean" + }, + "orderBy": { + "description": "Comma-separated list of fields to order by, e.g.: \"foo,bar,baz\".\nUse \"foo desc\" to sort descending.\nList of valid field names is: name, offer_code, expiration_time, status,\n last_modified_time, sender_name, creation_time, country_code,\n offer_type.", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "Maximum number of rows to return per page.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Token to retrieve a specific page.", + "location": "query", + "type": "string" + }, + "requestMetadata.experimentIds": { + "description": "Experiment IDs the current request belongs to.", + "location": "query", + "repeated": true, + "type": "string" + }, + "requestMetadata.locale": { + "description": "Locale to use for the current request.", + "location": "query", + "type": "string" + }, + "requestMetadata.partnersSessionId": { + "description": "Google Partners session ID.", + "location": "query", + "type": "string" + }, + "requestMetadata.trafficSource.trafficSourceId": { + "description": "Identifier to indicate where the traffic comes from.\nAn identifier has multiple letters created by a team which redirected the\ntraffic to us.", + "location": "query", + "type": "string" + }, + "requestMetadata.trafficSource.trafficSubId": { + "description": "Second level identifier to indicate where the traffic comes from.\nAn identifier has multiple letters created by a team which redirected the\ntraffic to us.", + "location": "query", + "type": "string" + }, + "requestMetadata.userOverrides.ipAddress": { + "description": "IP address to use instead of the user's geo-located IP address.", + "location": "query", + "type": "string" + }, + "requestMetadata.userOverrides.userId": { + "description": "Logged-in user ID to impersonate instead of the user's ID.", + "location": "query", + "type": "string" + } + }, + "path": "v2/offers/history", + "response": { + "$ref": "ListOffersHistoryResponse" + } } } } @@ -548,308 +694,17 @@ "methods": { "log": { "description": "Logs a user event.", + "flatPath": "v2/userEvents:log", + "httpMethod": "POST", + "id": "partners.userEvents.log", + "parameterOrder": [], + "parameters": {}, + "path": "v2/userEvents:log", "request": { "$ref": "LogUserEventRequest" }, "response": { "$ref": "LogUserEventResponse" - }, - "parameterOrder": [], - "httpMethod": "POST", - "parameters": {}, - "flatPath": "v2/userEvents:log", - "path": "v2/userEvents:log", - "id": "partners.userEvents.log" - } - } - }, - "clientMessages": { - "methods": { - "log": { - "parameters": {}, - "flatPath": "v2/clientMessages:log", - "id": "partners.clientMessages.log", - "path": "v2/clientMessages:log", - "description": "Logs a generic message from the client, such as\n`Failed to render component`, `Profile page is running slow`,\n`More than 500 users have accessed this result.`, etc.", - "request": { - "$ref": "LogMessageRequest" - }, - "httpMethod": "POST", - "parameterOrder": [], - "response": { - "$ref": "LogMessageResponse" - } - } - } - }, - "exams": { - "methods": { - "getToken": { - "httpMethod": "GET", - "parameterOrder": [ - "examType" - ], - "response": { - "$ref": "ExamToken" - }, - "parameters": { - "requestMetadata.trafficSource.trafficSourceId": { - "description": "Identifier to indicate where the traffic comes from.\nAn identifier has multiple letters created by a team which redirected the\ntraffic to us.", - "type": "string", - "location": "query" - }, - "requestMetadata.locale": { - "description": "Locale to use for the current request.", - "type": "string", - "location": "query" - }, - "requestMetadata.userOverrides.ipAddress": { - "description": "IP address to use instead of the user's geo-located IP address.", - "type": "string", - "location": "query" - }, - "requestMetadata.experimentIds": { - "location": "query", - "description": "Experiment IDs the current request belongs to.", - "type": "string", - "repeated": true - }, - "requestMetadata.trafficSource.trafficSubId": { - "description": "Second level identifier to indicate where the traffic comes from.\nAn identifier has multiple letters created by a team which redirected the\ntraffic to us.", - "type": "string", - "location": "query" - }, - "examType": { - "description": "The exam type we are requesting a token for.", - "required": true, - "type": "string", - "location": "path", - "enum": [ - "CERTIFICATION_EXAM_TYPE_UNSPECIFIED", - "CET_ADWORDS_FUNDAMENTALS", - "CET_ADWORDS_ADVANCED_SEARCH", - "CET_ADWORDS_ADVANCED_DISPLAY", - "CET_VIDEO_ADS", - "CET_DOUBLECLICK", - "CET_ANALYTICS", - "CET_SHOPPING", - "CET_MOBILE", - "CET_DIGITAL_SALES", - "CET_MOBILE_SITES" - ] - }, - "requestMetadata.userOverrides.userId": { - "location": "query", - "description": "Logged-in user ID to impersonate instead of the user's ID.", - "type": "string" - }, - "requestMetadata.partnersSessionId": { - "description": "Google Partners session ID.", - "type": "string", - "location": "query" - } - }, - "flatPath": "v2/exams/{examType}/token", - "id": "partners.exams.getToken", - "path": "v2/exams/{examType}/token", - "description": "Gets an Exam Token for a Partner's user to take an exam in the Exams System" - } - } - }, - "leads": { - "methods": { - "list": { - "response": { - "$ref": "ListLeadsResponse" - }, - "parameterOrder": [], - "httpMethod": "GET", - "parameters": { - "pageToken": { - "location": "query", - "description": "A token identifying a page of results that the server returns.\nTypically, this is the value of `ListLeadsResponse.next_page_token`\nreturned from the previous call to\nListLeads.", - "type": "string" - }, - "pageSize": { - "type": "integer", - "location": "query", - "description": "Requested page size. Server may return fewer leads than requested.\nIf unspecified, server picks an appropriate default.", - "format": "int32" - }, - "requestMetadata.trafficSource.trafficSourceId": { - "location": "query", - "description": "Identifier to indicate where the traffic comes from.\nAn identifier has multiple letters created by a team which redirected the\ntraffic to us.", - "type": "string" - }, - "requestMetadata.locale": { - "type": "string", - "location": "query", - "description": "Locale to use for the current request." - }, - "requestMetadata.userOverrides.ipAddress": { - "description": "IP address to use instead of the user's geo-located IP address.", - "type": "string", - "location": "query" - }, - "requestMetadata.experimentIds": { - "location": "query", - "description": "Experiment IDs the current request belongs to.", - "type": "string", - "repeated": true - }, - "orderBy": { - "type": "string", - "location": "query", - "description": "How to order Leads. Currently, only `create_time`\nand `create_time desc` are supported" - }, - "requestMetadata.trafficSource.trafficSubId": { - "location": "query", - "description": "Second level identifier to indicate where the traffic comes from.\nAn identifier has multiple letters created by a team which redirected the\ntraffic to us.", - "type": "string" - }, - "requestMetadata.partnersSessionId": { - "location": "query", - "description": "Google Partners session ID.", - "type": "string" - }, - "requestMetadata.userOverrides.userId": { - "description": "Logged-in user ID to impersonate instead of the user's ID.", - "type": "string", - "location": "query" - } - }, - "flatPath": "v2/leads", - "path": "v2/leads", - "id": "partners.leads.list", - "description": "Lists advertiser leads for a user's associated company.\nShould only be called within the context of an authorized logged in user." - } - } - }, - "offers": { - "methods": { - "list": { - "description": "Lists the Offers available for the current user", - "httpMethod": "GET", - "response": { - "$ref": "ListOffersResponse" - }, - "parameterOrder": [], - "parameters": { - "requestMetadata.userOverrides.userId": { - "description": "Logged-in user ID to impersonate instead of the user's ID.", - "type": "string", - "location": "query" - }, - "requestMetadata.partnersSessionId": { - "description": "Google Partners session ID.", - "type": "string", - "location": "query" - }, - "requestMetadata.trafficSource.trafficSourceId": { - "location": "query", - "description": "Identifier to indicate where the traffic comes from.\nAn identifier has multiple letters created by a team which redirected the\ntraffic to us.", - "type": "string" - }, - "requestMetadata.locale": { - "description": "Locale to use for the current request.", - "type": "string", - "location": "query" - }, - "requestMetadata.userOverrides.ipAddress": { - "description": "IP address to use instead of the user's geo-located IP address.", - "type": "string", - "location": "query" - }, - "requestMetadata.experimentIds": { - "location": "query", - "description": "Experiment IDs the current request belongs to.", - "type": "string", - "repeated": true - }, - "requestMetadata.trafficSource.trafficSubId": { - "type": "string", - "location": "query", - "description": "Second level identifier to indicate where the traffic comes from.\nAn identifier has multiple letters created by a team which redirected the\ntraffic to us." - } - }, - "flatPath": "v2/offers", - "id": "partners.offers.list", - "path": "v2/offers" - } - }, - "resources": { - "history": { - "methods": { - "list": { - "flatPath": "v2/offers/history", - "path": "v2/offers/history", - "id": "partners.offers.history.list", - "description": "Lists the Historical Offers for the current user (or user's entire company)", - "response": { - "$ref": "ListOffersHistoryResponse" - }, - "parameterOrder": [], - "httpMethod": "GET", - "parameters": { - "requestMetadata.locale": { - "type": "string", - "location": "query", - "description": "Locale to use for the current request." - }, - "requestMetadata.userOverrides.ipAddress": { - "description": "IP address to use instead of the user's geo-located IP address.", - "type": "string", - "location": "query" - }, - "entireCompany": { - "location": "query", - "description": "if true, show history for the entire company. Requires user to be admin.", - "type": "boolean" - }, - "requestMetadata.experimentIds": { - "description": "Experiment IDs the current request belongs to.", - "type": "string", - "repeated": true, - "location": "query" - }, - "orderBy": { - "description": "Comma-separated list of fields to order by, e.g.: \"foo,bar,baz\".\nUse \"foo desc\" to sort descending.\nList of valid field names is: name, offer_code, expiration_time, status,\n last_modified_time, sender_name, creation_time, country_code,\n offer_type.", - "type": "string", - "location": "query" - }, - "requestMetadata.trafficSource.trafficSubId": { - "description": "Second level identifier to indicate where the traffic comes from.\nAn identifier has multiple letters created by a team which redirected the\ntraffic to us.", - "type": "string", - "location": "query" - }, - "requestMetadata.partnersSessionId": { - "type": "string", - "location": "query", - "description": "Google Partners session ID." - }, - "requestMetadata.userOverrides.userId": { - "location": "query", - "description": "Logged-in user ID to impersonate instead of the user's ID.", - "type": "string" - }, - "pageToken": { - "description": "Token to retrieve a specific page.", - "type": "string", - "location": "query" - }, - "pageSize": { - "description": "Maximum number of rows to return per page.", - "format": "int32", - "type": "integer", - "location": "query" - }, - "requestMetadata.trafficSource.trafficSourceId": { - "location": "query", - "description": "Identifier to indicate where the traffic comes from.\nAn identifier has multiple letters created by a team which redirected the\ntraffic to us.", - "type": "string" - } - } - } } } } @@ -858,406 +713,1177 @@ "methods": { "list": { "description": "Lists states for current user.", + "flatPath": "v2/userStates", "httpMethod": "GET", + "id": "partners.userStates.list", "parameterOrder": [], - "response": { - "$ref": "ListUserStatesResponse" - }, "parameters": { "requestMetadata.experimentIds": { - "repeated": true, - "location": "query", "description": "Experiment IDs the current request belongs to.", + "location": "query", + "repeated": true, "type": "string" }, - "requestMetadata.trafficSource.trafficSubId": { - "description": "Second level identifier to indicate where the traffic comes from.\nAn identifier has multiple letters created by a team which redirected the\ntraffic to us.", - "type": "string", - "location": "query" - }, - "requestMetadata.userOverrides.userId": { + "requestMetadata.locale": { + "description": "Locale to use for the current request.", "location": "query", - "description": "Logged-in user ID to impersonate instead of the user's ID.", "type": "string" }, "requestMetadata.partnersSessionId": { "description": "Google Partners session ID.", - "type": "string", - "location": "query" - }, - "requestMetadata.trafficSource.trafficSourceId": { "location": "query", - "description": "Identifier to indicate where the traffic comes from.\nAn identifier has multiple letters created by a team which redirected the\ntraffic to us.", "type": "string" }, - "requestMetadata.locale": { + "requestMetadata.trafficSource.trafficSourceId": { + "description": "Identifier to indicate where the traffic comes from.\nAn identifier has multiple letters created by a team which redirected the\ntraffic to us.", + "location": "query", + "type": "string" + }, + "requestMetadata.trafficSource.trafficSubId": { + "description": "Second level identifier to indicate where the traffic comes from.\nAn identifier has multiple letters created by a team which redirected the\ntraffic to us.", "location": "query", - "description": "Locale to use for the current request.", "type": "string" }, "requestMetadata.userOverrides.ipAddress": { - "location": "query", "description": "IP address to use instead of the user's geo-located IP address.", + "location": "query", + "type": "string" + }, + "requestMetadata.userOverrides.userId": { + "description": "Logged-in user ID to impersonate instead of the user's ID.", + "location": "query", "type": "string" } }, - "flatPath": "v2/userStates", - "id": "partners.userStates.list", - "path": "v2/userStates" + "path": "v2/userStates", + "response": { + "$ref": "ListUserStatesResponse" + } } } }, - "analytics": { + "users": { "methods": { - "list": { - "flatPath": "v2/analytics", - "id": "partners.analytics.list", - "path": "v2/analytics", - "description": "Lists analytics data for a user's associated company.\nShould only be called within the context of an authorized logged in user.", - "httpMethod": "GET", - "parameterOrder": [], - "response": { - "$ref": "ListAnalyticsResponse" - }, + "createCompanyRelation": { + "description": "Creates a user's company relation. Affiliates the user to a company.", + "flatPath": "v2/users/{userId}/companyRelation", + "httpMethod": "PUT", + "id": "partners.users.createCompanyRelation", + "parameterOrder": [ + "userId" + ], "parameters": { - "requestMetadata.userOverrides.ipAddress": { - "location": "query", - "description": "IP address to use instead of the user's geo-located IP address.", - "type": "string" - }, "requestMetadata.experimentIds": { "description": "Experiment IDs the current request belongs to.", - "type": "string", + "location": "query", "repeated": true, - "location": "query" - }, - "requestMetadata.trafficSource.trafficSubId": { - "type": "string", - "location": "query", - "description": "Second level identifier to indicate where the traffic comes from.\nAn identifier has multiple letters created by a team which redirected the\ntraffic to us." - }, - "requestMetadata.partnersSessionId": { - "type": "string", - "location": "query", - "description": "Google Partners session ID." - }, - "requestMetadata.userOverrides.userId": { - "type": "string", - "location": "query", - "description": "Logged-in user ID to impersonate instead of the user's ID." - }, - "pageToken": { - "location": "query", - "description": "A token identifying a page of results that the server returns.\nTypically, this is the value of `ListAnalyticsResponse.next_page_token`\nreturned from the previous call to\nListAnalytics.\nWill be a date string in `YYYY-MM-DD` format representing the end date\nof the date range of results to return.\nIf unspecified or set to \"\", default value is the current date.", - "type": "string" - }, - "pageSize": { - "location": "query", - "description": "Requested page size. Server may return fewer analytics than requested.\nIf unspecified or set to 0, default value is 30.\nSpecifies the number of days in the date range when querying analytics.\nThe `page_token` represents the end date of the date range\nand the start date is calculated using the `page_size` as the number\nof days BEFORE the end date.\nMust be a non-negative integer.", - "format": "int32", - "type": "integer" - }, - "requestMetadata.trafficSource.trafficSourceId": { - "location": "query", - "description": "Identifier to indicate where the traffic comes from.\nAn identifier has multiple letters created by a team which redirected the\ntraffic to us.", "type": "string" }, "requestMetadata.locale": { - "location": "query", "description": "Locale to use for the current request.", + "location": "query", + "type": "string" + }, + "requestMetadata.partnersSessionId": { + "description": "Google Partners session ID.", + "location": "query", + "type": "string" + }, + "requestMetadata.trafficSource.trafficSourceId": { + "description": "Identifier to indicate where the traffic comes from.\nAn identifier has multiple letters created by a team which redirected the\ntraffic to us.", + "location": "query", + "type": "string" + }, + "requestMetadata.trafficSource.trafficSubId": { + "description": "Second level identifier to indicate where the traffic comes from.\nAn identifier has multiple letters created by a team which redirected the\ntraffic to us.", + "location": "query", + "type": "string" + }, + "requestMetadata.userOverrides.ipAddress": { + "description": "IP address to use instead of the user's geo-located IP address.", + "location": "query", + "type": "string" + }, + "requestMetadata.userOverrides.userId": { + "description": "Logged-in user ID to impersonate instead of the user's ID.", + "location": "query", + "type": "string" + }, + "userId": { + "description": "The ID of the user. Can be set to \u003ccode\u003eme\u003c/code\u003e to mean\nthe currently authenticated user.", + "location": "path", + "required": true, "type": "string" } + }, + "path": "v2/users/{userId}/companyRelation", + "request": { + "$ref": "CompanyRelation" + }, + "response": { + "$ref": "CompanyRelation" + } + }, + "deleteCompanyRelation": { + "description": "Deletes a user's company relation. Unaffiliaites the user from a company.", + "flatPath": "v2/users/{userId}/companyRelation", + "httpMethod": "DELETE", + "id": "partners.users.deleteCompanyRelation", + "parameterOrder": [ + "userId" + ], + "parameters": { + "requestMetadata.experimentIds": { + "description": "Experiment IDs the current request belongs to.", + "location": "query", + "repeated": true, + "type": "string" + }, + "requestMetadata.locale": { + "description": "Locale to use for the current request.", + "location": "query", + "type": "string" + }, + "requestMetadata.partnersSessionId": { + "description": "Google Partners session ID.", + "location": "query", + "type": "string" + }, + "requestMetadata.trafficSource.trafficSourceId": { + "description": "Identifier to indicate where the traffic comes from.\nAn identifier has multiple letters created by a team which redirected the\ntraffic to us.", + "location": "query", + "type": "string" + }, + "requestMetadata.trafficSource.trafficSubId": { + "description": "Second level identifier to indicate where the traffic comes from.\nAn identifier has multiple letters created by a team which redirected the\ntraffic to us.", + "location": "query", + "type": "string" + }, + "requestMetadata.userOverrides.ipAddress": { + "description": "IP address to use instead of the user's geo-located IP address.", + "location": "query", + "type": "string" + }, + "requestMetadata.userOverrides.userId": { + "description": "Logged-in user ID to impersonate instead of the user's ID.", + "location": "query", + "type": "string" + }, + "userId": { + "description": "The ID of the user. Can be set to \u003ccode\u003eme\u003c/code\u003e to mean\nthe currently authenticated user.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v2/users/{userId}/companyRelation", + "response": { + "$ref": "Empty" + } + }, + "get": { + "description": "Gets a user.", + "flatPath": "v2/users/{userId}", + "httpMethod": "GET", + "id": "partners.users.get", + "parameterOrder": [ + "userId" + ], + "parameters": { + "requestMetadata.experimentIds": { + "description": "Experiment IDs the current request belongs to.", + "location": "query", + "repeated": true, + "type": "string" + }, + "requestMetadata.locale": { + "description": "Locale to use for the current request.", + "location": "query", + "type": "string" + }, + "requestMetadata.partnersSessionId": { + "description": "Google Partners session ID.", + "location": "query", + "type": "string" + }, + "requestMetadata.trafficSource.trafficSourceId": { + "description": "Identifier to indicate where the traffic comes from.\nAn identifier has multiple letters created by a team which redirected the\ntraffic to us.", + "location": "query", + "type": "string" + }, + "requestMetadata.trafficSource.trafficSubId": { + "description": "Second level identifier to indicate where the traffic comes from.\nAn identifier has multiple letters created by a team which redirected the\ntraffic to us.", + "location": "query", + "type": "string" + }, + "requestMetadata.userOverrides.ipAddress": { + "description": "IP address to use instead of the user's geo-located IP address.", + "location": "query", + "type": "string" + }, + "requestMetadata.userOverrides.userId": { + "description": "Logged-in user ID to impersonate instead of the user's ID.", + "location": "query", + "type": "string" + }, + "userId": { + "description": "Identifier of the user. Can be set to \u003ccode\u003eme\u003c/code\u003e to mean the currently\nauthenticated user.", + "location": "path", + "required": true, + "type": "string" + }, + "userView": { + "description": "Specifies what parts of the user information to return.", + "enum": [ + "BASIC", + "PROFILE", + "PUBLIC_PROFILE" + ], + "location": "query", + "type": "string" + } + }, + "path": "v2/users/{userId}", + "response": { + "$ref": "User" + } + }, + "updateProfile": { + "description": "Updates a user's profile. A user can only update their own profile and\nshould only be called within the context of a logged in user.", + "flatPath": "v2/users/profile", + "httpMethod": "PATCH", + "id": "partners.users.updateProfile", + "parameterOrder": [], + "parameters": { + "requestMetadata.experimentIds": { + "description": "Experiment IDs the current request belongs to.", + "location": "query", + "repeated": true, + "type": "string" + }, + "requestMetadata.locale": { + "description": "Locale to use for the current request.", + "location": "query", + "type": "string" + }, + "requestMetadata.partnersSessionId": { + "description": "Google Partners session ID.", + "location": "query", + "type": "string" + }, + "requestMetadata.trafficSource.trafficSourceId": { + "description": "Identifier to indicate where the traffic comes from.\nAn identifier has multiple letters created by a team which redirected the\ntraffic to us.", + "location": "query", + "type": "string" + }, + "requestMetadata.trafficSource.trafficSubId": { + "description": "Second level identifier to indicate where the traffic comes from.\nAn identifier has multiple letters created by a team which redirected the\ntraffic to us.", + "location": "query", + "type": "string" + }, + "requestMetadata.userOverrides.ipAddress": { + "description": "IP address to use instead of the user's geo-located IP address.", + "location": "query", + "type": "string" + }, + "requestMetadata.userOverrides.userId": { + "description": "Logged-in user ID to impersonate instead of the user's ID.", + "location": "query", + "type": "string" + } + }, + "path": "v2/users/profile", + "request": { + "$ref": "UserProfile" + }, + "response": { + "$ref": "UserProfile" } } } }, "v2": { "methods": { - "updateCompanies": { - "response": { - "$ref": "Company" - }, + "getPartnersstatus": { + "description": "Gets Partners Status of the logged in user's agency.\nShould only be called if the logged in user is the admin of the agency.", + "flatPath": "v2/partnersstatus", + "httpMethod": "GET", + "id": "partners.getPartnersstatus", "parameterOrder": [], - "httpMethod": "PATCH", "parameters": { - "requestMetadata.userOverrides.userId": { - "description": "Logged-in user ID to impersonate instead of the user's ID.", - "type": "string", - "location": "query" + "requestMetadata.experimentIds": { + "description": "Experiment IDs the current request belongs to.", + "location": "query", + "repeated": true, + "type": "string" + }, + "requestMetadata.locale": { + "description": "Locale to use for the current request.", + "location": "query", + "type": "string" }, "requestMetadata.partnersSessionId": { - "location": "query", "description": "Google Partners session ID.", + "location": "query", "type": "string" }, "requestMetadata.trafficSource.trafficSourceId": { "description": "Identifier to indicate where the traffic comes from.\nAn identifier has multiple letters created by a team which redirected the\ntraffic to us.", - "type": "string", - "location": "query" - }, - "requestMetadata.locale": { "location": "query", - "description": "Locale to use for the current request.", "type": "string" }, - "requestMetadata.userOverrides.ipAddress": { - "location": "query", - "description": "IP address to use instead of the user's geo-located IP address.", - "type": "string" - }, - "updateMask": { - "location": "query", - "description": "Standard field mask for the set of fields to be updated.\nRequired with at least 1 value in FieldMask's paths.", - "format": "google-fieldmask", - "type": "string" - }, - "requestMetadata.experimentIds": { - "location": "query", - "description": "Experiment IDs the current request belongs to.", - "type": "string", - "repeated": true - }, "requestMetadata.trafficSource.trafficSubId": { "description": "Second level identifier to indicate where the traffic comes from.\nAn identifier has multiple letters created by a team which redirected the\ntraffic to us.", - "type": "string", - "location": "query" + "location": "query", + "type": "string" + }, + "requestMetadata.userOverrides.ipAddress": { + "description": "IP address to use instead of the user's geo-located IP address.", + "location": "query", + "type": "string" + }, + "requestMetadata.userOverrides.userId": { + "description": "Logged-in user ID to impersonate instead of the user's ID.", + "location": "query", + "type": "string" } }, - "flatPath": "v2/companies", - "path": "v2/companies", - "id": "partners.updateCompanies", + "path": "v2/partnersstatus", + "response": { + "$ref": "GetPartnersStatusResponse" + } + }, + "updateCompanies": { "description": "Update company.\nShould only be called within the context of an authorized logged in user.", + "flatPath": "v2/companies", + "httpMethod": "PATCH", + "id": "partners.updateCompanies", + "parameterOrder": [], + "parameters": { + "requestMetadata.experimentIds": { + "description": "Experiment IDs the current request belongs to.", + "location": "query", + "repeated": true, + "type": "string" + }, + "requestMetadata.locale": { + "description": "Locale to use for the current request.", + "location": "query", + "type": "string" + }, + "requestMetadata.partnersSessionId": { + "description": "Google Partners session ID.", + "location": "query", + "type": "string" + }, + "requestMetadata.trafficSource.trafficSourceId": { + "description": "Identifier to indicate where the traffic comes from.\nAn identifier has multiple letters created by a team which redirected the\ntraffic to us.", + "location": "query", + "type": "string" + }, + "requestMetadata.trafficSource.trafficSubId": { + "description": "Second level identifier to indicate where the traffic comes from.\nAn identifier has multiple letters created by a team which redirected the\ntraffic to us.", + "location": "query", + "type": "string" + }, + "requestMetadata.userOverrides.ipAddress": { + "description": "IP address to use instead of the user's geo-located IP address.", + "location": "query", + "type": "string" + }, + "requestMetadata.userOverrides.userId": { + "description": "Logged-in user ID to impersonate instead of the user's ID.", + "location": "query", + "type": "string" + }, + "updateMask": { + "description": "Standard field mask for the set of fields to be updated.\nRequired with at least 1 value in FieldMask's paths.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + } + }, + "path": "v2/companies", "request": { "$ref": "Company" + }, + "response": { + "$ref": "Company" } }, - "getPartnersstatus": { - "response": { - "$ref": "GetPartnersStatusResponse" - }, + "updateLeads": { + "description": "Updates the specified lead.", + "flatPath": "v2/leads", + "httpMethod": "PATCH", + "id": "partners.updateLeads", "parameterOrder": [], - "httpMethod": "GET", "parameters": { "requestMetadata.experimentIds": { - "type": "string", + "description": "Experiment IDs the current request belongs to.", + "location": "query", "repeated": true, - "location": "query", - "description": "Experiment IDs the current request belongs to." - }, - "requestMetadata.trafficSource.trafficSubId": { - "location": "query", - "description": "Second level identifier to indicate where the traffic comes from.\nAn identifier has multiple letters created by a team which redirected the\ntraffic to us.", "type": "string" }, - "requestMetadata.userOverrides.userId": { - "description": "Logged-in user ID to impersonate instead of the user's ID.", - "type": "string", - "location": "query" + "requestMetadata.locale": { + "description": "Locale to use for the current request.", + "location": "query", + "type": "string" }, "requestMetadata.partnersSessionId": { - "location": "query", "description": "Google Partners session ID.", + "location": "query", "type": "string" }, "requestMetadata.trafficSource.trafficSourceId": { "description": "Identifier to indicate where the traffic comes from.\nAn identifier has multiple letters created by a team which redirected the\ntraffic to us.", - "type": "string", - "location": "query" + "location": "query", + "type": "string" }, - "requestMetadata.locale": { - "description": "Locale to use for the current request.", - "type": "string", - "location": "query" + "requestMetadata.trafficSource.trafficSubId": { + "description": "Second level identifier to indicate where the traffic comes from.\nAn identifier has multiple letters created by a team which redirected the\ntraffic to us.", + "location": "query", + "type": "string" }, "requestMetadata.userOverrides.ipAddress": { - "location": "query", "description": "IP address to use instead of the user's geo-located IP address.", + "location": "query", + "type": "string" + }, + "requestMetadata.userOverrides.userId": { + "description": "Logged-in user ID to impersonate instead of the user's ID.", + "location": "query", + "type": "string" + }, + "updateMask": { + "description": "Standard field mask for the set of fields to be updated.\nRequired with at least 1 value in FieldMask's paths.\nOnly `state` and `adwords_customer_id` are currently supported.", + "format": "google-fieldmask", + "location": "query", "type": "string" } }, - "flatPath": "v2/partnersstatus", - "path": "v2/partnersstatus", - "id": "partners.getPartnersstatus", - "description": "Gets Partners Status of the logged in user's agency.\nShould only be called if the logged in user is the admin of the agency." - }, - "updateLeads": { - "description": "Updates the specified lead.", + "path": "v2/leads", "request": { "$ref": "Lead" }, "response": { "$ref": "Lead" - }, - "parameterOrder": [], - "httpMethod": "PATCH", - "parameters": { - "requestMetadata.trafficSource.trafficSubId": { - "location": "query", - "description": "Second level identifier to indicate where the traffic comes from.\nAn identifier has multiple letters created by a team which redirected the\ntraffic to us.", - "type": "string" - }, - "requestMetadata.userOverrides.userId": { - "location": "query", - "description": "Logged-in user ID to impersonate instead of the user's ID.", - "type": "string" - }, - "requestMetadata.partnersSessionId": { - "description": "Google Partners session ID.", - "type": "string", - "location": "query" - }, - "requestMetadata.trafficSource.trafficSourceId": { - "location": "query", - "description": "Identifier to indicate where the traffic comes from.\nAn identifier has multiple letters created by a team which redirected the\ntraffic to us.", - "type": "string" - }, - "requestMetadata.locale": { - "description": "Locale to use for the current request.", - "type": "string", - "location": "query" - }, - "requestMetadata.userOverrides.ipAddress": { - "description": "IP address to use instead of the user's geo-located IP address.", - "type": "string", - "location": "query" - }, - "updateMask": { - "type": "string", - "location": "query", - "description": "Standard field mask for the set of fields to be updated.\nRequired with at least 1 value in FieldMask's paths.\nOnly `state` and `adwords_customer_id` are currently supported.", - "format": "google-fieldmask" - }, - "requestMetadata.experimentIds": { - "type": "string", - "repeated": true, - "location": "query", - "description": "Experiment IDs the current request belongs to." - } - }, - "flatPath": "v2/leads", - "path": "v2/leads", - "id": "partners.updateLeads" + } } } } }, - "parameters": { - "upload_protocol": { - "type": "string", - "location": "query", - "description": "Upload protocol for media (e.g. \"raw\", \"multipart\")." - }, - "prettyPrint": { - "description": "Returns response with indentations and line breaks.", - "type": "boolean", - "default": "true", - "location": "query" - }, - "uploadType": { - "location": "query", - "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", - "type": "string" - }, - "fields": { - "description": "Selector specifying which fields to include in a partial response.", - "type": "string", - "location": "query" - }, - "$.xgafv": { - "enumDescriptions": [ - "v1 error format", - "v2 error format" - ], - "location": "query", - "enum": [ - "1", - "2" - ], - "description": "V1 error format.", - "type": "string" - }, - "callback": { - "description": "JSONP", - "type": "string", - "location": "query" - }, - "alt": { - "enumDescriptions": [ - "Responses with Content-Type of application/json", - "Media download with context-dependent Content-Type", - "Responses with Content-Type of application/x-protobuf" - ], - "location": "query", - "description": "Data format for response.", - "default": "json", - "enum": [ - "json", - "media", - "proto" - ], - "type": "string" - }, - "access_token": { - "description": "OAuth access token.", - "type": "string", - "location": "query" - }, - "key": { - "location": "query", - "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.", - "type": "string" - }, - "quotaUser": { - "location": "query", - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", - "type": "string" - }, - "pp": { - "location": "query", - "description": "Pretty-print response.", - "type": "boolean", - "default": "true" - }, - "oauth_token": { - "description": "OAuth 2.0 token for the current user.", - "type": "string", - "location": "query" - }, - "bearer_token": { - "description": "OAuth bearer token.", - "type": "string", - "location": "query" - } - }, + "revision": "20180202", + "rootUrl": "https://partners.googleapis.com/", "schemas": { - "Empty": { - "properties": {}, - "id": "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 `{}`.", + "AdWordsManagerAccountInfo": { + "description": "Information about a particular AdWords Manager Account.\nRead more at https://support.google.com/adwords/answer/6139186", + "id": "AdWordsManagerAccountInfo", + "properties": { + "customerName": { + "description": "Name of the customer this account represents.", + "type": "string" + }, + "id": { + "description": "The AdWords Manager Account id.", + "format": "int64", + "type": "string" + } + }, "type": "object" }, - "TrafficSource": { - "id": "TrafficSource", - "description": "Source of traffic for the current request.", - "type": "object", + "Analytics": { + "description": "Analytics data for a `Company` within a single day.", + "id": "Analytics", "properties": { - "trafficSourceId": { - "description": "Identifier to indicate where the traffic comes from.\nAn identifier has multiple letters created by a team which redirected the\ntraffic to us.", + "contacts": { + "$ref": "AnalyticsDataPoint", + "description": "Instances of users contacting the `Company`\non the specified date." + }, + "eventDate": { + "$ref": "Date", + "description": "Date on which these events occurred." + }, + "profileViews": { + "$ref": "AnalyticsDataPoint", + "description": "Instances of users viewing the `Company` profile\non the specified date." + }, + "searchViews": { + "$ref": "AnalyticsDataPoint", + "description": "Instances of users seeing the `Company` in Google Partners Search results\non the specified date." + } + }, + "type": "object" + }, + "AnalyticsDataPoint": { + "description": "Details of the analytics events for a `Company` within a single day.", + "id": "AnalyticsDataPoint", + "properties": { + "eventCount": { + "description": "Number of times the type of event occurred.\nMeaning depends on context (e.g. profile views, contacts, etc.).", + "format": "int32", + "type": "integer" + }, + "eventLocations": { + "description": "Location information of where these events occurred.", + "items": { + "$ref": "LatLng" + }, + "type": "array" + } + }, + "type": "object" + }, + "AnalyticsSummary": { + "description": "Analytics aggregated data for a `Company` for a given date range.", + "id": "AnalyticsSummary", + "properties": { + "contactsCount": { + "description": "Aggregated number of times users contacted the `Company`\nfor given date range.", + "format": "int32", + "type": "integer" + }, + "profileViewsCount": { + "description": "Aggregated number of profile views for the `Company` for given date range.", + "format": "int32", + "type": "integer" + }, + "searchViewsCount": { + "description": "Aggregated number of times users saw the `Company`\nin Google Partners Search results for given date range.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "AvailableOffer": { + "description": "Available Offers to be distributed.", + "id": "AvailableOffer", + "properties": { + "available": { + "description": "The number of codes for this offer that are available for distribution.", + "format": "int32", + "type": "integer" + }, + "countryOfferInfos": { + "description": "Offer info by country.", + "items": { + "$ref": "CountryOfferInfo" + }, + "type": "array" + }, + "description": { + "description": "Description of the offer.", "type": "string" }, - "trafficSubId": { - "description": "Second level identifier to indicate where the traffic comes from.\nAn identifier has multiple letters created by a team which redirected the\ntraffic to us.", + "id": { + "description": "ID of this offer.", + "format": "int64", + "type": "string" + }, + "maxAccountAge": { + "description": "The maximum age of an account [in days] to be eligible.", + "format": "int32", + "type": "integer" + }, + "name": { + "description": "Name of the offer.", + "type": "string" + }, + "offerLevel": { + "description": "Level of this offer.", + "enum": [ + "OFFER_LEVEL_UNSPECIFIED", + "OFFER_LEVEL_DENY_PROBLEM", + "OFFER_LEVEL_DENY_CONTRACT", + "OFFER_LEVEL_MANUAL", + "OFFER_LEVEL_LIMIT_0", + "OFFER_LEVEL_LIMIT_5", + "OFFER_LEVEL_LIMIT_15", + "OFFER_LEVEL_LIMIT_50" + ], + "enumDescriptions": [ + "Unset.", + "Users/Agencies that have no offers because of a problem.", + "Users/Agencies that have no offers due to contractural agreements.", + "Users/Agencies that have a manually-configured limit.", + "Some Agencies don't get any offers.", + "Basic level gets 5 per month.", + "Agencies with adequate AHI and spend get 15/month.", + "Badged partners (even in grace) get 50 per month." + ], + "type": "string" + }, + "offerType": { + "description": "Type of offer.", + "enum": [ + "OFFER_TYPE_UNSPECIFIED", + "OFFER_TYPE_SPEND_X_GET_Y", + "OFFER_TYPE_VIDEO", + "OFFER_TYPE_SPEND_MATCH" + ], + "enumDescriptions": [ + "Unset.", + "AdWords spend X get Y.", + "Youtube video.", + "Spend Match up to Y." + ], + "type": "string" + }, + "qualifiedCustomer": { + "description": "Customers who qualify for this offer.", + "items": { + "$ref": "OfferCustomer" + }, + "type": "array" + }, + "qualifiedCustomersComplete": { + "description": "Whether or not the list of qualified customers is definitely complete.", + "type": "boolean" + }, + "showSpecialOfferCopy": { + "description": "Should special text be shown on the offers page.", + "type": "boolean" + }, + "terms": { + "description": "Terms of the offer.", "type": "string" } - } + }, + "type": "object" + }, + "Certification": { + "description": "A user's information on a specific certification.", + "id": "Certification", + "properties": { + "achieved": { + "description": "Whether this certification has been achieved.", + "type": "boolean" + }, + "certificationType": { + "description": "The type of certification, the area of expertise.", + "enum": [ + "CERTIFICATION_TYPE_UNSPECIFIED", + "CT_ADWORDS", + "CT_YOUTUBE", + "CT_VIDEOADS", + "CT_ANALYTICS", + "CT_DOUBLECLICK", + "CT_SHOPPING", + "CT_MOBILE", + "CT_DIGITAL_SALES", + "CT_ADWORDS_SEARCH", + "CT_ADWORDS_DISPLAY", + "CT_MOBILE_SITES" + ], + "enumDescriptions": [ + "Unchosen.", + "AdWords certified.", + "YouTube certified.", + "VideoAds certified.", + "Analytics certified.", + "DoubleClick certified.", + "Shopping certified.", + "Mobile certified.", + "Digital sales certified.", + "AdWords Search certified.", + "AdWords Display certified.", + "Mobile Sites certified." + ], + "type": "string" + }, + "expiration": { + "description": "Date this certification is due to expire.", + "format": "google-datetime", + "type": "string" + }, + "lastAchieved": { + "description": "The date the user last achieved certification.", + "format": "google-datetime", + "type": "string" + }, + "warning": { + "description": "Whether this certification is in the state of warning.", + "type": "boolean" + } + }, + "type": "object" + }, + "CertificationExamStatus": { + "description": "Status for a Google Partners certification exam.", + "id": "CertificationExamStatus", + "properties": { + "numberUsersPass": { + "description": "The number of people who have passed the certification exam.", + "format": "int32", + "type": "integer" + }, + "type": { + "description": "The type of certification exam.", + "enum": [ + "CERTIFICATION_EXAM_TYPE_UNSPECIFIED", + "CET_ADWORDS_FUNDAMENTALS", + "CET_ADWORDS_ADVANCED_SEARCH", + "CET_ADWORDS_ADVANCED_DISPLAY", + "CET_VIDEO_ADS", + "CET_DOUBLECLICK", + "CET_ANALYTICS", + "CET_SHOPPING", + "CET_MOBILE", + "CET_DIGITAL_SALES", + "CET_MOBILE_SITES" + ], + "enumDescriptions": [ + "Unchosen.", + "Adwords Fundamentals exam.", + "AdWords advanced search exam.", + "AdWords advanced display exam.", + "VideoAds exam.", + "DoubleClick exam.", + "Analytics exam.", + "Shopping exam.", + "Mobile exam.", + "Digital Sales exam.", + "Mobile Sites exam." + ], + "type": "string" + } + }, + "type": "object" + }, + "CertificationStatus": { + "description": "Google Partners certification status.", + "id": "CertificationStatus", + "properties": { + "examStatuses": { + "description": "List of certification exam statuses.", + "items": { + "$ref": "CertificationExamStatus" + }, + "type": "array" + }, + "isCertified": { + "description": "Whether certification is passing.", + "type": "boolean" + }, + "type": { + "description": "The type of the certification.", + "enum": [ + "CERTIFICATION_TYPE_UNSPECIFIED", + "CT_ADWORDS", + "CT_YOUTUBE", + "CT_VIDEOADS", + "CT_ANALYTICS", + "CT_DOUBLECLICK", + "CT_SHOPPING", + "CT_MOBILE", + "CT_DIGITAL_SALES", + "CT_ADWORDS_SEARCH", + "CT_ADWORDS_DISPLAY", + "CT_MOBILE_SITES" + ], + "enumDescriptions": [ + "Unchosen.", + "AdWords certified.", + "YouTube certified.", + "VideoAds certified.", + "Analytics certified.", + "DoubleClick certified.", + "Shopping certified.", + "Mobile certified.", + "Digital sales certified.", + "AdWords Search certified.", + "AdWords Display certified.", + "Mobile Sites certified." + ], + "type": "string" + }, + "userCount": { + "description": "Number of people who are certified,", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "Company": { + "description": "A company resource in the Google Partners API. Once certified, it qualifies\nfor being searched by advertisers.", + "id": "Company", + "properties": { + "additionalWebsites": { + "description": "URL of the company's additional websites used to verify the dynamic badges.\nThese are stored as full URLs as entered by the user, but only the TLD will\nbe used for the actual verification.", + "items": { + "type": "string" + }, + "type": "array" + }, + "autoApprovalEmailDomains": { + "description": "Email domains that allow users with a matching email address to get\nauto-approved for associating with this company.", + "items": { + "type": "string" + }, + "type": "array" + }, + "badgeTier": { + "description": "Partner badge tier", + "enum": [ + "BADGE_TIER_NONE", + "BADGE_TIER_REGULAR", + "BADGE_TIER_PREMIER" + ], + "enumDescriptions": [ + "Tier badge is not set.", + "Agency has regular partner badge.", + "Agency has premier badge." + ], + "type": "string" + }, + "certificationStatuses": { + "description": "The list of Google Partners certification statuses for the company.", + "items": { + "$ref": "CertificationStatus" + }, + "type": "array" + }, + "companyTypes": { + "description": "Company type labels listed on the company's profile.", + "enumDescriptions": [ + "Unchosen.", + "Handles all aspects of the advertising process.", + "Focuses solely on an advertiser's media placement.", + "Plans/executes advertising campaigns.", + "Like a\nFULL_SERVICE_AGENCY,\nbut specializing in digital.", + "Increases visibility in search engine result pages.", + "Drives promotional efforts for immediate impact.", + "Focuses on bid management, conversion, reporting.", + "Establishes favorable relationship with public through low/no-cost\ncommunications.", + "Does not manage other company's accounts, manages own marketing programs.", + "Full-service AdWords account management for local businesses." + ], + "items": { + "enum": [ + "COMPANY_TYPE_UNSPECIFIED", + "FULL_SERVICE_AGENCY", + "MEDIA_AGENCY", + "CREATIVE_AGENCY", + "CDIGITAL_AGENCY", + "SEM_SEO", + "PERFORMANCE_MARKETING", + "ADVERTISING_TOOL_DEVELOPMENT", + "PR", + "SELF_MANAGED", + "RESELLER" + ], + "type": "string" + }, + "type": "array" + }, + "convertedMinMonthlyBudget": { + "$ref": "Money", + "description": "The minimum monthly budget that the company accepts for partner business,\nconverted to the requested currency code." + }, + "id": { + "description": "The ID of the company.", + "type": "string" + }, + "industries": { + "description": "Industries the company can help with.", + "enumDescriptions": [ + "Unchosen.", + "The automotive industry.", + "The business-to-business industry.", + "The consumer packaged goods industry.", + "The education industry.", + "The finance industry.", + "The healthcare industry.", + "The media and entertainment industry.", + "The retail industry.", + "The technology industry.", + "The travel industry." + ], + "items": { + "enum": [ + "INDUSTRY_UNSPECIFIED", + "I_AUTOMOTIVE", + "I_BUSINESS_TO_BUSINESS", + "I_CONSUMER_PACKAGED_GOODS", + "I_EDUCATION", + "I_FINANCE", + "I_HEALTHCARE", + "I_MEDIA_AND_ENTERTAINMENT", + "I_RETAIL", + "I_TECHNOLOGY", + "I_TRAVEL" + ], + "type": "string" + }, + "type": "array" + }, + "localizedInfos": { + "description": "The list of localized info for the company.", + "items": { + "$ref": "LocalizedCompanyInfo" + }, + "type": "array" + }, + "locations": { + "description": "The list of all company locations.\nIf set, must include the\nprimary_location\nin the list.", + "items": { + "$ref": "Location" + }, + "type": "array" + }, + "name": { + "description": "The name of the company.", + "type": "string" + }, + "originalMinMonthlyBudget": { + "$ref": "Money", + "description": "The unconverted minimum monthly budget that the company accepts for partner\nbusiness." + }, + "primaryAdwordsManagerAccountId": { + "description": "The Primary AdWords Manager Account id.", + "format": "int64", + "type": "string" + }, + "primaryLanguageCode": { + "description": "The primary language code of the company, as defined by\n\u003ca href=\"https://tools.ietf.org/html/bcp47\"\u003eBCP 47\u003c/a\u003e\n(IETF BCP 47, \"Tags for Identifying Languages\").", + "type": "string" + }, + "primaryLocation": { + "$ref": "Location", + "description": "The primary location of the company." + }, + "profileStatus": { + "description": "The public viewability status of the company's profile.", + "enum": [ + "COMPANY_PROFILE_STATUS_UNSPECIFIED", + "HIDDEN", + "PUBLISHED", + "SEARCHABLE" + ], + "enumDescriptions": [ + "Unchosen.", + "Company profile does not show up publicly.", + "Company profile can only be viewed by the profile's URL\nand not by Google Partner Search.", + "Company profile can be viewed by the profile's URL\nand by Google Partner Search." + ], + "type": "string" + }, + "publicProfile": { + "$ref": "PublicProfile", + "description": "Basic information from the company's public profile." + }, + "ranks": { + "description": "Information related to the ranking of the company within the list of\ncompanies.", + "items": { + "$ref": "Rank" + }, + "type": "array" + }, + "services": { + "description": "Services the company can help with.", + "enumDescriptions": [ + "Unchosen.", + "Help with advanced AdWords support.", + "Help with advertising on Google.", + "Help with an enhanced website.", + "Help with an online marketing plan.", + "Help with mobile and video ads.", + "Help with mobile websites." + ], + "items": { + "enum": [ + "SERVICE_UNSPECIFIED", + "S_ADVANCED_ADWORDS_SUPPORT", + "S_ADVERTISING_ON_GOOGLE", + "S_AN_ENHANCED_WEBSITE", + "S_AN_ONLINE_MARKETING_PLAN", + "S_MOBILE_AND_VIDEO_ADS", + "S_MOBILE_WEBSITE_SERVICES" + ], + "type": "string" + }, + "type": "array" + }, + "specializationStatus": { + "description": "The list of Google Partners specialization statuses for the company.", + "items": { + "$ref": "SpecializationStatus" + }, + "type": "array" + }, + "websiteUrl": { + "description": "URL of the company's website.", + "type": "string" + } + }, + "type": "object" + }, + "CompanyRelation": { + "description": "A CompanyRelation resource representing information about a user's\naffiliation and standing with a company in Partners.", + "id": "CompanyRelation", + "properties": { + "address": { + "description": "The primary address for this company.", + "type": "string" + }, + "badgeTier": { + "description": "Whether the company is a Partner.", + "enum": [ + "BADGE_TIER_NONE", + "BADGE_TIER_REGULAR", + "BADGE_TIER_PREMIER" + ], + "enumDescriptions": [ + "Tier badge is not set.", + "Agency has regular partner badge.", + "Agency has premier badge." + ], + "type": "string" + }, + "companyAdmin": { + "description": "Indicates if the user is an admin for this company.", + "type": "boolean" + }, + "companyId": { + "description": "The ID of the company. There may be no id if this is a\npending company.5", + "type": "string" + }, + "creationTime": { + "description": "The timestamp of when affiliation was requested.\n@OutputOnly", + "format": "google-datetime", + "type": "string" + }, + "internalCompanyId": { + "description": "The internal company ID.\nOnly available for a whitelisted set of api clients.", + "type": "string" + }, + "isPending": { + "description": "The flag that indicates if the company is pending verification.", + "type": "boolean" + }, + "logoUrl": { + "description": "A URL to a profile photo, e.g. a G+ profile photo.", + "type": "string" + }, + "managerAccount": { + "description": "The AdWords manager account # associated this company.", + "format": "int64", + "type": "string" + }, + "name": { + "description": "The name (in the company's primary language) for the company.", + "type": "string" + }, + "phoneNumber": { + "description": "The phone number for the company's primary address.", + "type": "string" + }, + "primaryAddress": { + "$ref": "Location", + "description": "The primary location of the company." + }, + "primaryCountryCode": { + "description": "The primary country code of the company.", + "type": "string" + }, + "primaryLanguageCode": { + "description": "The primary language code of the company.", + "type": "string" + }, + "resolvedTimestamp": { + "description": "The timestamp when the user was approved.\n@OutputOnly", + "format": "google-datetime", + "type": "string" + }, + "segment": { + "description": "The segment the company is classified as.", + "enumDescriptions": [ + "Default segment indicates an unknown.", + "Segment representing a selected group of Partners", + "Segment representing Premier SMB Partners, an AdWords partnership program.", + "A segment of Premier SMB Partners that have relationship with Google." + ], + "items": { + "enum": [ + "COMPANY_SEGMENT_UNKNOWN", + "COMPANY_SEGMENT_NAL", + "COMPANY_SEGMENT_PSP", + "COMPANY_SEGMENT_PPSP" + ], + "type": "string" + }, + "type": "array" + }, + "specializationStatus": { + "description": "The list of Google Partners specialization statuses for the company.", + "items": { + "$ref": "SpecializationStatus" + }, + "type": "array" + }, + "state": { + "description": "The state of relationship, in terms of approvals.", + "enum": [ + "USER_COMPANY_REATION_STATE_NONE_SPECIFIED", + "USER_COMPANY_RELATION_STATE_AWAIT_EMAIL", + "USER_COMPANY_RELATION_STATE_AWAIT_ADMIN", + "USER_COMPANY_RELATION_STATE_APPROVED" + ], + "enumDescriptions": [ + "Default unspecified value.", + "User has filled in a request to be associated with an company.\nNow waiting email confirmation.", + "Pending approval from company.\nEmail confirmation will not approve this one.", + "Approved by company." + ], + "type": "string" + }, + "website": { + "description": "The website URL for this company.", + "type": "string" + } + }, + "type": "object" + }, + "CountryOfferInfo": { + "description": "Offer info by country.", + "id": "CountryOfferInfo", + "properties": { + "getYAmount": { + "description": "(localized) Get Y amount for that country's offer.", + "type": "string" + }, + "offerCountryCode": { + "description": "Country code for which offer codes may be requested.", + "type": "string" + }, + "offerType": { + "description": "Type of offer country is eligible for.", + "enum": [ + "OFFER_TYPE_UNSPECIFIED", + "OFFER_TYPE_SPEND_X_GET_Y", + "OFFER_TYPE_VIDEO", + "OFFER_TYPE_SPEND_MATCH" + ], + "enumDescriptions": [ + "Unset.", + "AdWords spend X get Y.", + "Youtube video.", + "Spend Match up to Y." + ], + "type": "string" + }, + "spendXAmount": { + "description": "(localized) Spend X amount for that country's offer.", + "type": "string" + } + }, + "type": "object" }, "CreateLeadRequest": { - "type": "object", + "description": "Request message for CreateLead.", + "id": "CreateLeadRequest", "properties": { - "requestMetadata": { - "$ref": "RequestMetadata", - "description": "Current request metadata." - }, "lead": { "$ref": "Lead", "description": "The lead resource. The `LeadType` must not be `LEAD_TYPE_UNSPECIFIED`\nand either `email` or `phone_number` must be provided." @@ -1265,87 +1891,98 @@ "recaptchaChallenge": { "$ref": "RecaptchaChallenge", "description": "\u003ca href=\"https://www.google.com/recaptcha/\"\u003ereCaptcha\u003c/a\u003e challenge info." + }, + "requestMetadata": { + "$ref": "RequestMetadata", + "description": "Current request metadata." } }, - "id": "CreateLeadRequest", - "description": "Request message for CreateLead." + "type": "object" }, - "RequestMetadata": { - "description": "Common data that is in each API request.", - "type": "object", + "CreateLeadResponse": { + "description": "Response message for CreateLead.", + "id": "CreateLeadResponse", "properties": { - "experimentIds": { - "description": "Experiment IDs the current request belongs to.", - "type": "array", - "items": { - "type": "string" - } + "lead": { + "$ref": "Lead", + "description": "Lead that was created depending on the outcome of\n\u003ca href=\"https://www.google.com/recaptcha/\"\u003ereCaptcha\u003c/a\u003e validation." }, - "trafficSource": { - "$ref": "TrafficSource", - "description": "Source of traffic for the current request." - }, - "locale": { - "description": "Locale to use for the current request.", + "recaptchaStatus": { + "description": "The outcome of \u003ca href=\"https://www.google.com/recaptcha/\"\u003ereCaptcha\u003c/a\u003e\nvalidation.", + "enum": [ + "RECAPTCHA_STATUS_UNSPECIFIED", + "RS_NOT_NEEDED", + "RS_PASSED", + "RS_FAILED" + ], + "enumDescriptions": [ + "Unchosen.", + "No reCaptcha validation needed.", + "reCaptcha challenge passed.", + "reCaptcha challenge failed." + ], "type": "string" }, - "userOverrides": { - "$ref": "UserOverrides", - "description": "Values to use instead of the user's respective defaults for the current\nrequest. These are only honored by whitelisted products." - }, - "partnersSessionId": { - "type": "string", - "description": "Google Partners session ID." + "responseMetadata": { + "$ref": "ResponseMetadata", + "description": "Current response metadata." } }, - "id": "RequestMetadata" + "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": { + "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" + }, + "month": { + "description": "Month of year. Must be from 1 to 12.", + "format": "int32", + "type": "integer" + }, + "year": { + "description": "Year of date. Must be from 1 to 9999, or 0 if specifying a date without\na year.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "DebugInfo": { + "description": "Debug information about this request.", + "id": "DebugInfo", + "properties": { + "serverInfo": { + "description": "Info about the server that serviced this request.", + "type": "string" + }, + "serverTraceInfo": { + "description": "Server-side debug stack trace.", + "type": "string" + }, + "serviceUrl": { + "description": "URL of the service that handled this request.", + "type": "string" + } + }, + "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" }, "EventData": { "description": "Key value data pair for an event.", - "type": "object", + "id": "EventData", "properties": { "key": { - "type": "string", - "enumDescriptions": [ - "Unchosen.", - "Action data.", - "Agency ID data.", - "Agency name data.", - "Agency phone number data.", - "Agency website data.", - "Budget data.", - "Center-point data.", - "Certification data.", - "Comment data.", - "Country data.", - "Currency data.", - "Currently viewed agency ID data.", - "Distance data.", - "Distance type data.", - "Exam data.", - "History token data.", - "Identifier data.", - "Industry data.", - "Insight tag data.", - "Language data.", - "Location data.", - "Marketing opt-in data.", - "Query data.", - "Search start index data.", - "Service data.", - "Show vow data.", - "Solution data.", - "Traffic source ID data.", - "Traffic sub ID data.", - "Viewport data.", - "Website data.", - "Details data.", - "Experiment ID data.", - "Google Partner Search motivation data.", - "URL data.", - "Element we wanted user to focus on.", - "Progress when viewing an item \\[0-100\\]." - ], + "description": "Data type.", "enum": [ "EVENT_DATA_TYPE_UNSPECIFIED", "ACTION", @@ -1386,21 +2023,102 @@ "ELEMENT_FOCUS", "PROGRESS" ], - "description": "Data type." + "enumDescriptions": [ + "Unchosen.", + "Action data.", + "Agency ID data.", + "Agency name data.", + "Agency phone number data.", + "Agency website data.", + "Budget data.", + "Center-point data.", + "Certification data.", + "Comment data.", + "Country data.", + "Currency data.", + "Currently viewed agency ID data.", + "Distance data.", + "Distance type data.", + "Exam data.", + "History token data.", + "Identifier data.", + "Industry data.", + "Insight tag data.", + "Language data.", + "Location data.", + "Marketing opt-in data.", + "Query data.", + "Search start index data.", + "Service data.", + "Show vow data.", + "Solution data.", + "Traffic source ID data.", + "Traffic sub ID data.", + "Viewport data.", + "Website data.", + "Details data.", + "Experiment ID data.", + "Google Partner Search motivation data.", + "URL data.", + "Element we wanted user to focus on.", + "Progress when viewing an item \\[0-100\\]." + ], + "type": "string" }, "values": { "description": "Data values.", - "type": "array", "items": { "type": "string" - } + }, + "type": "array" } }, - "id": "EventData" + "type": "object" }, "ExamStatus": { - "type": "object", + "description": "A user's information on a specific exam.", + "id": "ExamStatus", "properties": { + "examType": { + "description": "The type of the exam.", + "enum": [ + "CERTIFICATION_EXAM_TYPE_UNSPECIFIED", + "CET_ADWORDS_FUNDAMENTALS", + "CET_ADWORDS_ADVANCED_SEARCH", + "CET_ADWORDS_ADVANCED_DISPLAY", + "CET_VIDEO_ADS", + "CET_DOUBLECLICK", + "CET_ANALYTICS", + "CET_SHOPPING", + "CET_MOBILE", + "CET_DIGITAL_SALES", + "CET_MOBILE_SITES" + ], + "enumDescriptions": [ + "Unchosen.", + "Adwords Fundamentals exam.", + "AdWords advanced search exam.", + "AdWords advanced display exam.", + "VideoAds exam.", + "DoubleClick exam.", + "Analytics exam.", + "Shopping exam.", + "Mobile exam.", + "Digital Sales exam.", + "Mobile Sites exam." + ], + "type": "string" + }, + "expiration": { + "description": "Date this exam is due to expire.", + "format": "google-datetime", + "type": "string" + }, + "lastPassed": { + "description": "The date the user last passed this exam.", + "format": "google-datetime", + "type": "string" + }, "passed": { "description": "Whether this exam has been passed and not expired.", "type": "boolean" @@ -1413,1139 +2131,48 @@ "warning": { "description": "Whether this exam is in the state of warning.", "type": "boolean" - }, - "expiration": { - "description": "Date this exam is due to expire.", - "format": "google-datetime", - "type": "string" - }, - "lastPassed": { - "type": "string", - "description": "The date the user last passed this exam.", - "format": "google-datetime" - }, - "examType": { - "enumDescriptions": [ - "Unchosen.", - "Adwords Fundamentals exam.", - "AdWords advanced search exam.", - "AdWords advanced display exam.", - "VideoAds exam.", - "DoubleClick exam.", - "Analytics exam.", - "Shopping exam.", - "Mobile exam.", - "Digital Sales exam.", - "Mobile Sites exam." - ], - "enum": [ - "CERTIFICATION_EXAM_TYPE_UNSPECIFIED", - "CET_ADWORDS_FUNDAMENTALS", - "CET_ADWORDS_ADVANCED_SEARCH", - "CET_ADWORDS_ADVANCED_DISPLAY", - "CET_VIDEO_ADS", - "CET_DOUBLECLICK", - "CET_ANALYTICS", - "CET_SHOPPING", - "CET_MOBILE", - "CET_DIGITAL_SALES", - "CET_MOBILE_SITES" - ], - "description": "The type of the exam.", - "type": "string" } }, - "id": "ExamStatus", - "description": "A user's information on a specific exam." - }, - "ListOffersResponse": { - "description": "Response for ListOffer.", - "type": "object", - "properties": { - "responseMetadata": { - "description": "Current response metadata.", - "$ref": "ResponseMetadata" - }, - "noOfferReason": { - "description": "Reason why no Offers are available.", - "type": "string", - "enumDescriptions": [ - "Unset.", - "Not an MCC.", - "Offer limit has been reached.", - "Ineligible for offers." - ], - "enum": [ - "NO_OFFER_REASON_UNSPECIFIED", - "NO_OFFER_REASON_NO_MCC", - "NO_OFFER_REASON_LIMIT_REACHED", - "NO_OFFER_REASON_INELIGIBLE" - ] - }, - "availableOffers": { - "type": "array", - "items": { - "$ref": "AvailableOffer" - }, - "description": "Available Offers to be distributed." - } - }, - "id": "ListOffersResponse" - }, - "CountryOfferInfo": { - "description": "Offer info by country.", - "type": "object", - "properties": { - "getYAmount": { - "description": "(localized) Get Y amount for that country's offer.", - "type": "string" - }, - "offerCountryCode": { - "type": "string", - "description": "Country code for which offer codes may be requested." - }, - "spendXAmount": { - "description": "(localized) Spend X amount for that country's offer.", - "type": "string" - }, - "offerType": { - "description": "Type of offer country is eligible for.", - "type": "string", - "enumDescriptions": [ - "Unset.", - "AdWords spend X get Y.", - "Youtube video.", - "Spend Match up to Y." - ], - "enum": [ - "OFFER_TYPE_UNSPECIFIED", - "OFFER_TYPE_SPEND_X_GET_Y", - "OFFER_TYPE_VIDEO", - "OFFER_TYPE_SPEND_MATCH" - ] - } - }, - "id": "CountryOfferInfo" - }, - "ListCompaniesResponse": { - "description": "Response message for\nListCompanies.", - "type": "object", - "properties": { - "responseMetadata": { - "description": "Current response metadata.", - "$ref": "ResponseMetadata" - }, - "companies": { - "description": "The list of companies.", - "type": "array", - "items": { - "$ref": "Company" - } - }, - "nextPageToken": { - "description": "A token to retrieve next page of results.\nPass this value in the `ListCompaniesRequest.page_token` field in the\nsubsequent call to\nListCompanies to retrieve the\nnext page of results.", - "type": "string" - } - }, - "id": "ListCompaniesResponse" - }, - "OfferCustomer": { - "description": "Customers qualified for an offer.", - "type": "object", - "properties": { - "spendXAmount": { - "description": "Formatted Spend X amount with currency code.", - "type": "string" - }, - "adwordsUrl": { - "type": "string", - "description": "URL to the customer's AdWords page." - }, - "eligibilityDaysLeft": { - "description": "Days the customer is still eligible.", - "format": "int32", - "type": "integer" - }, - "creationTime": { - "description": "Time the customer was created.", - "format": "google-datetime", - "type": "string" - }, - "offerType": { - "type": "string", - "enumDescriptions": [ - "Unset.", - "AdWords spend X get Y.", - "Youtube video.", - "Spend Match up to Y." - ], - "enum": [ - "OFFER_TYPE_UNSPECIFIED", - "OFFER_TYPE_SPEND_X_GET_Y", - "OFFER_TYPE_VIDEO", - "OFFER_TYPE_SPEND_MATCH" - ], - "description": "Type of the offer" - }, - "externalCid": { - "description": "External CID for the customer.", - "format": "int64", - "type": "string" - }, - "countryCode": { - "description": "Country code of the customer.", - "type": "string" - }, - "getYAmount": { - "type": "string", - "description": "Formatted Get Y amount with currency code." - }, - "name": { - "type": "string", - "description": "Name of the customer." - } - }, - "id": "OfferCustomer" - }, - "CertificationStatus": { - "description": "Google Partners certification status.", - "type": "object", - "properties": { - "userCount": { - "description": "Number of people who are certified,", - "format": "int32", - "type": "integer" - }, - "isCertified": { - "description": "Whether certification is passing.", - "type": "boolean" - }, - "examStatuses": { - "description": "List of certification exam statuses.", - "type": "array", - "items": { - "$ref": "CertificationExamStatus" - } - }, - "type": { - "enumDescriptions": [ - "Unchosen.", - "AdWords certified.", - "YouTube certified.", - "VideoAds certified.", - "Analytics certified.", - "DoubleClick certified.", - "Shopping certified.", - "Mobile certified.", - "Digital sales certified.", - "AdWords Search certified.", - "AdWords Display certified.", - "Mobile Sites certified." - ], - "enum": [ - "CERTIFICATION_TYPE_UNSPECIFIED", - "CT_ADWORDS", - "CT_YOUTUBE", - "CT_VIDEOADS", - "CT_ANALYTICS", - "CT_DOUBLECLICK", - "CT_SHOPPING", - "CT_MOBILE", - "CT_DIGITAL_SALES", - "CT_ADWORDS_SEARCH", - "CT_ADWORDS_DISPLAY", - "CT_MOBILE_SITES" - ], - "description": "The type of the certification.", - "type": "string" - } - }, - "id": "CertificationStatus" - }, - "LocalizedCompanyInfo": { - "type": "object", - "properties": { - "languageCode": { - "description": "Language code of the localized company info, as defined by\n\u003ca href=\"https://tools.ietf.org/html/bcp47\"\u003eBCP 47\u003c/a\u003e\n(IETF BCP 47, \"Tags for Identifying Languages\").", - "type": "string" - }, - "countryCodes": { - "description": "List of country codes for the localized company info.", - "type": "array", - "items": { - "type": "string" - } - }, - "overview": { - "description": "Localized brief description that the company uses to advertise themselves.", - "type": "string" - }, - "displayName": { - "description": "Localized display name.", - "type": "string" - } - }, - "id": "LocalizedCompanyInfo", - "description": "The localized company information." - }, - "LogUserEventResponse": { - "type": "object", - "properties": { - "responseMetadata": { - "$ref": "ResponseMetadata", - "description": "Current response metadata." - } - }, - "id": "LogUserEventResponse", - "description": "Response message for\nLogUserEvent." - }, - "ListOffersHistoryResponse": { - "description": "Response for ListOfferHistory.", - "type": "object", - "properties": { - "canShowEntireCompany": { - "description": "True if the user has the option to show entire company history.", - "type": "boolean" - }, - "totalResults": { - "description": "Number of results across all pages.", - "format": "int32", - "type": "integer" - }, - "showingEntireCompany": { - "type": "boolean", - "description": "True if this response is showing entire company history." - }, - "offers": { - "description": "Historical offers meeting request.", - "type": "array", - "items": { - "$ref": "HistoricalOffer" - } - }, - "nextPageToken": { - "description": "Supply this token in a ListOffersHistoryRequest to retrieve the next page.", - "type": "string" - }, - "responseMetadata": { - "$ref": "ResponseMetadata", - "description": "Current response metadata." - } - }, - "id": "ListOffersHistoryResponse" - }, - "LogMessageResponse": { - "description": "Response message for\nLogClientMessage.", - "type": "object", - "properties": { - "responseMetadata": { - "description": "Current response metadata.", - "$ref": "ResponseMetadata" - } - }, - "id": "LogMessageResponse" - }, - "SpecializationStatus": { - "description": "Agency specialization status", - "type": "object", - "properties": { - "badgeSpecialization": { - "enum": [ - "BADGE_SPECIALIZATION_UNKNOWN", - "BADGE_SPECIALIZATION_ADWORDS_SEARCH", - "BADGE_SPECIALIZATION_ADWORDS_DISPLAY", - "BADGE_SPECIALIZATION_ADWORDS_MOBILE", - "BADGE_SPECIALIZATION_ADWORDS_VIDEO", - "BADGE_SPECIALIZATION_ADWORDS_SHOPPING" - ], - "description": "The specialization this status is for.", - "type": "string", - "enumDescriptions": [ - "Unknown specialization", - "AdWords Search specialization", - "AdWords Display specialization", - "AdWords Mobile specialization", - "AdWords Video specialization", - "AdWords Shopping specialization" - ] - }, - "badgeSpecializationState": { - "enum": [ - "BADGE_SPECIALIZATION_STATE_UNKNOWN", - "BADGE_SPECIALIZATION_STATE_PASSED", - "BADGE_SPECIALIZATION_STATE_NOT_PASSED", - "BADGE_SPECIALIZATION_STATE_IN_GRACE" - ], - "description": "State of agency specialization.", - "type": "string", - "enumDescriptions": [ - "Unknown state", - "Specialization passed", - "Specialization not passed", - "Specialization in grace" - ] - } - }, - "id": "SpecializationStatus" - }, - "Certification": { - "properties": { - "achieved": { - "description": "Whether this certification has been achieved.", - "type": "boolean" - }, - "expiration": { - "type": "string", - "description": "Date this certification is due to expire.", - "format": "google-datetime" - }, - "warning": { - "description": "Whether this certification is in the state of warning.", - "type": "boolean" - }, - "certificationType": { - "description": "The type of certification, the area of expertise.", - "type": "string", - "enumDescriptions": [ - "Unchosen.", - "AdWords certified.", - "YouTube certified.", - "VideoAds certified.", - "Analytics certified.", - "DoubleClick certified.", - "Shopping certified.", - "Mobile certified.", - "Digital sales certified.", - "AdWords Search certified.", - "AdWords Display certified.", - "Mobile Sites certified." - ], - "enum": [ - "CERTIFICATION_TYPE_UNSPECIFIED", - "CT_ADWORDS", - "CT_YOUTUBE", - "CT_VIDEOADS", - "CT_ANALYTICS", - "CT_DOUBLECLICK", - "CT_SHOPPING", - "CT_MOBILE", - "CT_DIGITAL_SALES", - "CT_ADWORDS_SEARCH", - "CT_ADWORDS_DISPLAY", - "CT_MOBILE_SITES" - ] - }, - "lastAchieved": { - "description": "The date the user last achieved certification.", - "format": "google-datetime", - "type": "string" - } - }, - "id": "Certification", - "description": "A user's information on a specific certification.", "type": "object" }, - "User": { - "description": "A resource representing a user of the Partners platform.", - "type": "object", - "properties": { - "internalId": { - "description": "The internal user ID.\nOnly available for a whitelisted set of api clients.", - "type": "string" - }, - "examStatus": { - "description": "The list of exams the user ever taken. For each type of exam, only one\nentry is listed.", - "type": "array", - "items": { - "$ref": "ExamStatus" - } - }, - "id": { - "description": "The ID of the user.", - "type": "string" - }, - "publicProfile": { - "description": "Information about a user's external public profile outside Google Partners.", - "$ref": "PublicProfile" - }, - "certificationStatus": { - "description": "The list of achieved certifications. These are calculated based on exam\nresults and other requirements.\n@OutputOnly", - "type": "array", - "items": { - "$ref": "Certification" - } - }, - "companyVerificationEmail": { - "description": "The email address used by the user used for company verification.\n@OutputOnly", - "type": "string" - }, - "profile": { - "description": "The profile information of a Partners user, contains all the directly\neditable user information.", - "$ref": "UserProfile" - }, - "company": { - "description": "The company that the user is associated with.\nIf not present, the user is not associated with any company.", - "$ref": "CompanyRelation" - }, - "lastAccessTime": { - "description": "The most recent time the user interacted with the Partners site.\n@OutputOnly", - "format": "google-datetime", - "type": "string" - }, - "primaryEmails": { - "description": "The list of emails the user has access to/can select as primary.\n@OutputOnly", - "type": "array", - "items": { - "type": "string" - } - }, - "availableAdwordsManagerAccounts": { - "description": "This is the list of AdWords Manager Accounts the user has edit access to.\nIf the user has edit access to multiple accounts, the user can choose the\npreferred account and we use this when a personal account is needed. Can\nbe empty meaning the user has access to no accounts.\n@OutputOnly", - "type": "array", - "items": { - "$ref": "AdWordsManagerAccountInfo" - } - } - }, - "id": "User" - }, - "ListAnalyticsResponse": { - "description": "Response message for\nListAnalytics.", - "type": "object", - "properties": { - "analytics": { - "description": "The list of analytics.\nSorted in ascending order of\nAnalytics.event_date.", - "type": "array", - "items": { - "$ref": "Analytics" - } - }, - "nextPageToken": { - "description": "A token to retrieve next page of results.\nPass this value in the `ListAnalyticsRequest.page_token` field in the\nsubsequent call to\nListAnalytics to retrieve the\nnext page of results.", - "type": "string" - }, - "responseMetadata": { - "description": "Current response metadata.", - "$ref": "ResponseMetadata" - }, - "analyticsSummary": { - "description": "Aggregated information across the response's\nanalytics.", - "$ref": "AnalyticsSummary" - } - }, - "id": "ListAnalyticsResponse" - }, - "Company": { - "description": "A company resource in the Google Partners API. Once certified, it qualifies\nfor being searched by advertisers.", - "type": "object", - "properties": { - "ranks": { - "description": "Information related to the ranking of the company within the list of\ncompanies.", - "type": "array", - "items": { - "$ref": "Rank" - } - }, - "specializationStatus": { - "description": "The list of Google Partners specialization statuses for the company.", - "type": "array", - "items": { - "$ref": "SpecializationStatus" - } - }, - "badgeTier": { - "type": "string", - "enumDescriptions": [ - "Tier badge is not set.", - "Agency has regular partner badge.", - "Agency has premier badge." - ], - "enum": [ - "BADGE_TIER_NONE", - "BADGE_TIER_REGULAR", - "BADGE_TIER_PREMIER" - ], - "description": "Partner badge tier" - }, - "autoApprovalEmailDomains": { - "description": "Email domains that allow users with a matching email address to get\nauto-approved for associating with this company.", - "type": "array", - "items": { - "type": "string" - } - }, - "companyTypes": { - "enumDescriptions": [ - "Unchosen.", - "Handles all aspects of the advertising process.", - "Focuses solely on an advertiser's media placement.", - "Plans/executes advertising campaigns.", - "Like a\nFULL_SERVICE_AGENCY,\nbut specializing in digital.", - "Increases visibility in search engine result pages.", - "Drives promotional efforts for immediate impact.", - "Focuses on bid management, conversion, reporting.", - "Establishes favorable relationship with public through low/no-cost\ncommunications.", - "Does not manage other company's accounts, manages own marketing programs.", - "Full-service AdWords account management for local businesses." - ], - "description": "Company type labels listed on the company's profile.", - "type": "array", - "items": { - "enum": [ - "COMPANY_TYPE_UNSPECIFIED", - "FULL_SERVICE_AGENCY", - "MEDIA_AGENCY", - "CREATIVE_AGENCY", - "CDIGITAL_AGENCY", - "SEM_SEO", - "PERFORMANCE_MARKETING", - "ADVERTISING_TOOL_DEVELOPMENT", - "PR", - "SELF_MANAGED", - "RESELLER" - ], - "type": "string" - } - }, - "profileStatus": { - "enumDescriptions": [ - "Unchosen.", - "Company profile does not show up publicly.", - "Company profile can only be viewed by the profile's URL\nand not by Google Partner Search.", - "Company profile can be viewed by the profile's URL\nand by Google Partner Search." - ], - "enum": [ - "COMPANY_PROFILE_STATUS_UNSPECIFIED", - "HIDDEN", - "PUBLISHED", - "SEARCHABLE" - ], - "description": "The public viewability status of the company's profile.", - "type": "string" - }, - "primaryLanguageCode": { - "description": "The primary language code of the company, as defined by\n\u003ca href=\"https://tools.ietf.org/html/bcp47\"\u003eBCP 47\u003c/a\u003e\n(IETF BCP 47, \"Tags for Identifying Languages\").", - "type": "string" - }, - "locations": { - "description": "The list of all company locations.\nIf set, must include the\nprimary_location\nin the list.", - "type": "array", - "items": { - "$ref": "Location" - } - }, - "convertedMinMonthlyBudget": { - "$ref": "Money", - "description": "The minimum monthly budget that the company accepts for partner business,\nconverted to the requested currency code." - }, - "industries": { - "description": "Industries the company can help with.", - "type": "array", - "items": { - "enum": [ - "INDUSTRY_UNSPECIFIED", - "I_AUTOMOTIVE", - "I_BUSINESS_TO_BUSINESS", - "I_CONSUMER_PACKAGED_GOODS", - "I_EDUCATION", - "I_FINANCE", - "I_HEALTHCARE", - "I_MEDIA_AND_ENTERTAINMENT", - "I_RETAIL", - "I_TECHNOLOGY", - "I_TRAVEL" - ], - "type": "string" - }, - "enumDescriptions": [ - "Unchosen.", - "The automotive industry.", - "The business-to-business industry.", - "The consumer packaged goods industry.", - "The education industry.", - "The finance industry.", - "The healthcare industry.", - "The media and entertainment industry.", - "The retail industry.", - "The technology industry.", - "The travel industry." - ] - }, - "websiteUrl": { - "description": "URL of the company's website.", - "type": "string" - }, - "additionalWebsites": { - "description": "URL of the company's additional websites used to verify the dynamic badges.\nThese are stored as full URLs as entered by the user, but only the TLD will\nbe used for the actual verification.", - "type": "array", - "items": { - "type": "string" - } - }, - "primaryAdwordsManagerAccountId": { - "description": "The Primary AdWords Manager Account id.", - "format": "int64", - "type": "string" - }, - "name": { - "description": "The name of the company.", - "type": "string" - }, - "localizedInfos": { - "description": "The list of localized info for the company.", - "type": "array", - "items": { - "$ref": "LocalizedCompanyInfo" - } - }, - "certificationStatuses": { - "description": "The list of Google Partners certification statuses for the company.", - "type": "array", - "items": { - "$ref": "CertificationStatus" - } - }, - "id": { - "description": "The ID of the company.", - "type": "string" - }, - "publicProfile": { - "$ref": "PublicProfile", - "description": "Basic information from the company's public profile." - }, - "originalMinMonthlyBudget": { - "$ref": "Money", - "description": "The unconverted minimum monthly budget that the company accepts for partner\nbusiness." - }, - "services": { - "description": "Services the company can help with.", - "type": "array", - "items": { - "type": "string", - "enum": [ - "SERVICE_UNSPECIFIED", - "S_ADVANCED_ADWORDS_SUPPORT", - "S_ADVERTISING_ON_GOOGLE", - "S_AN_ENHANCED_WEBSITE", - "S_AN_ONLINE_MARKETING_PLAN", - "S_MOBILE_AND_VIDEO_ADS", - "S_MOBILE_WEBSITE_SERVICES" - ] - }, - "enumDescriptions": [ - "Unchosen.", - "Help with advanced AdWords support.", - "Help with advertising on Google.", - "Help with an enhanced website.", - "Help with an online marketing plan.", - "Help with mobile and video ads.", - "Help with mobile websites." - ] - }, - "primaryLocation": { - "$ref": "Location", - "description": "The primary location of the company." - } - }, - "id": "Company" - }, - "ListLeadsResponse": { - "description": "Response message for ListLeads.", - "type": "object", - "properties": { - "leads": { - "type": "array", - "items": { - "$ref": "Lead" - }, - "description": "The list of leads." - }, - "nextPageToken": { - "description": "A token to retrieve next page of results.\nPass this value in the `ListLeadsRequest.page_token` field in the\nsubsequent call to\nListLeads to retrieve the\nnext page of results.", - "type": "string" - }, - "responseMetadata": { - "description": "Current response metadata.", - "$ref": "ResponseMetadata" - }, - "totalSize": { - "description": "The total count of leads for the given company.", - "format": "int32", - "type": "integer" - } - }, - "id": "ListLeadsResponse" - }, - "CreateLeadResponse": { - "id": "CreateLeadResponse", - "description": "Response message for CreateLead.", - "type": "object", - "properties": { - "lead": { - "$ref": "Lead", - "description": "Lead that was created depending on the outcome of\n\u003ca href=\"https://www.google.com/recaptcha/\"\u003ereCaptcha\u003c/a\u003e validation." - }, - "recaptchaStatus": { - "enum": [ - "RECAPTCHA_STATUS_UNSPECIFIED", - "RS_NOT_NEEDED", - "RS_PASSED", - "RS_FAILED" - ], - "description": "The outcome of \u003ca href=\"https://www.google.com/recaptcha/\"\u003ereCaptcha\u003c/a\u003e\nvalidation.", - "type": "string", - "enumDescriptions": [ - "Unchosen.", - "No reCaptcha validation needed.", - "reCaptcha challenge passed.", - "reCaptcha challenge failed." - ] - }, - "responseMetadata": { - "$ref": "ResponseMetadata", - "description": "Current response metadata." - } - } - }, "GetCompanyResponse": { "description": "Response message for GetCompany.", - "type": "object", + "id": "GetCompanyResponse", "properties": { - "responseMetadata": { - "description": "Current response metadata.", - "$ref": "ResponseMetadata" - }, "company": { "$ref": "Company", "description": "The company." + }, + "responseMetadata": { + "$ref": "ResponseMetadata", + "description": "Current response metadata." } }, - "id": "GetCompanyResponse" - }, - "Location": { - "properties": { - "administrativeArea": { - "description": "Top-level administrative subdivision of this country.", - "type": "string" - }, - "locality": { - "description": "Generally refers to the city/town portion of an address.", - "type": "string" - }, - "latLng": { - "$ref": "LatLng", - "description": "The latitude and longitude of the location, in degrees." - }, - "regionCode": { - "description": "CLDR (Common Locale Data Repository) region code .", - "type": "string" - }, - "address": { - "description": "The single string version of the address.", - "type": "string" - }, - "dependentLocality": { - "description": "Dependent locality or sublocality. Used for UK dependent localities, or\nneighborhoods or boroughs in other locations.", - "type": "string" - }, - "postalCode": { - "description": "Values are frequently alphanumeric.", - "type": "string" - }, - "sortingCode": { - "description": "Use of this code is very country-specific, but will refer to a secondary\nclassification code for sorting mail.", - "type": "string" - }, - "languageCode": { - "description": "Language code of the address. Should be in BCP 47 format.", - "type": "string" - }, - "addressLine": { - "type": "array", - "items": { - "type": "string" - }, - "description": "The following address lines represent the most specific part of any\naddress." - } - }, - "id": "Location", - "description": "A location with address and geographic coordinates. May optionally contain a\ndetailed (multi-field) version of the address.", "type": "object" }, - "CertificationExamStatus": { - "properties": { - "numberUsersPass": { - "description": "The number of people who have passed the certification exam.", - "format": "int32", - "type": "integer" - }, - "type": { - "description": "The type of certification exam.", - "type": "string", - "enumDescriptions": [ - "Unchosen.", - "Adwords Fundamentals exam.", - "AdWords advanced search exam.", - "AdWords advanced display exam.", - "VideoAds exam.", - "DoubleClick exam.", - "Analytics exam.", - "Shopping exam.", - "Mobile exam.", - "Digital Sales exam.", - "Mobile Sites exam." - ], - "enum": [ - "CERTIFICATION_EXAM_TYPE_UNSPECIFIED", - "CET_ADWORDS_FUNDAMENTALS", - "CET_ADWORDS_ADVANCED_SEARCH", - "CET_ADWORDS_ADVANCED_DISPLAY", - "CET_VIDEO_ADS", - "CET_DOUBLECLICK", - "CET_ANALYTICS", - "CET_SHOPPING", - "CET_MOBILE", - "CET_DIGITAL_SALES", - "CET_MOBILE_SITES" - ] - } - }, - "id": "CertificationExamStatus", - "description": "Status for a Google Partners certification exam.", - "type": "object" - }, - "ExamToken": { - "description": "A token that allows a user to take an exam.", - "type": "object", - "properties": { - "examId": { - "description": "The id of the exam the token is for.", - "format": "int64", - "type": "string" - }, - "token": { - "description": "The token, only present if the user has access to the exam.", - "type": "string" - }, - "examType": { - "description": "The type of the exam the token belongs to.", - "type": "string", - "enumDescriptions": [ - "Unchosen.", - "Adwords Fundamentals exam.", - "AdWords advanced search exam.", - "AdWords advanced display exam.", - "VideoAds exam.", - "DoubleClick exam.", - "Analytics exam.", - "Shopping exam.", - "Mobile exam.", - "Digital Sales exam.", - "Mobile Sites exam." - ], - "enum": [ - "CERTIFICATION_EXAM_TYPE_UNSPECIFIED", - "CET_ADWORDS_FUNDAMENTALS", - "CET_ADWORDS_ADVANCED_SEARCH", - "CET_ADWORDS_ADVANCED_DISPLAY", - "CET_VIDEO_ADS", - "CET_DOUBLECLICK", - "CET_ANALYTICS", - "CET_SHOPPING", - "CET_MOBILE", - "CET_DIGITAL_SALES", - "CET_MOBILE_SITES" - ] - } - }, - "id": "ExamToken" - }, - "OptIns": { - "description": "A set of opt-ins for a user.", - "type": "object", - "properties": { - "specialOffers": { - "description": "An opt-in about receiving email regarding new features and products.", - "type": "boolean" - }, - "performanceSuggestions": { - "description": "An opt-in about receiving email with customized AdWords campaign management\ntips.", - "type": "boolean" - }, - "physicalMail": { - "description": "An opt-in to receive special promotional gifts and material in the mail.", - "type": "boolean" - }, - "phoneContact": { - "description": "An opt-in to allow recieivng phone calls about their Partners account.", - "type": "boolean" - }, - "marketComm": { - "description": "An opt-in about receiving email from Partners marketing teams. Includes\nmember-only events and special promotional offers for Google products.", - "type": "boolean" - } - }, - "id": "OptIns" - }, - "Rank": { - "description": "Information related to ranking of results.", - "type": "object", - "properties": { - "type": { - "type": "string", - "enumDescriptions": [ - "Unchosen.", - "Total final score." - ], - "enum": [ - "RANK_TYPE_UNSPECIFIED", - "RT_FINAL_SCORE" - ], - "description": "The type of rank." - }, - "value": { - "description": "The numerical value of the rank.", - "format": "double", - "type": "number" - } - }, - "id": "Rank" - }, - "UserProfile": { - "id": "UserProfile", - "description": "The profile information of a Partners user.", - "type": "object", - "properties": { - "markets": { - "description": "A list of ids representing which markets the user was interested in.", - "type": "array", - "items": { - "type": "string" - } - }, - "migrateToAfa": { - "description": "Whether or not to migrate the user's exam data to Academy for Ads.", - "type": "boolean" - }, - "adwordsManagerAccount": { - "description": "If the user has edit access to multiple accounts, the user can choose the\npreferred account and it is used when a personal account is needed. Can\nbe empty.", - "format": "int64", - "type": "string" - }, - "phoneNumber": { - "type": "string", - "description": "The user's phone number." - }, - "primaryCountryCode": { - "description": "The user's primary country, an ISO 2-character code.", - "type": "string" - }, - "emailAddress": { - "description": "The email address the user has selected on the Partners site as primary.", - "type": "string" - }, - "channels": { - "description": "A list of ids representing which channels the user selected they were in.", - "type": "array", - "items": { - "type": "string" - } - }, - "profilePublic": { - "description": "Whether the user's public profile is visible to anyone with the URL.", - "type": "boolean" - }, - "jobFunctions": { - "description": "A list of ids represnting which job categories the user selected.", - "type": "array", - "items": { - "type": "string" - } - }, - "givenName": { - "description": "The user's given name.", - "type": "string" - }, - "address": { - "$ref": "Location", - "description": "The user's mailing address, contains multiple fields." - }, - "industries": { - "type": "array", - "items": { - "type": "string" - }, - "description": "A list of ids representing which industries the user selected." - }, - "emailOptIns": { - "description": "The list of opt-ins for the user, related to communication preferences.", - "$ref": "OptIns" - }, - "familyName": { - "description": "The user's family name.", - "type": "string" - }, - "languages": { - "description": "The list of languages this user understands.", - "type": "array", - "items": { - "type": "string" - } - } - } - }, "GetPartnersStatusResponse": { - "type": "object", + "description": "Response message for\nGetPartnersStatus.", + "id": "GetPartnersStatusResponse", "properties": { "responseMetadata": { - "description": "Current response metadata.", - "$ref": "ResponseMetadata" + "$ref": "ResponseMetadata", + "description": "Current response metadata." } }, - "id": "GetPartnersStatusResponse", - "description": "Response message for\nGetPartnersStatus." + "type": "object" }, "HistoricalOffer": { - "id": "HistoricalOffer", "description": "Historical information about a Google Partners Offer.", - "type": "object", + "id": "HistoricalOffer", "properties": { - "expirationTime": { - "description": "Time this offer expires.", - "format": "google-datetime", + "adwordsUrl": { + "description": "Client's AdWords page URL.", "type": "string" }, - "offerCode": { - "description": "Offer code.", - "type": "string" - }, - "creationTime": { - "type": "string", - "description": "Time offer was first created.", - "format": "google-datetime" - }, "clientEmail": { "description": "Email address for client.", "type": "string" }, - "status": { - "enumDescriptions": [ - "Unset.", - "Offer distributed.", - "Offer redeemed.", - "Offer awarded.", - "Offer expired." - ], - "enum": [ - "OFFER_STATUS_UNSPECIFIED", - "OFFER_STATUS_DISTRIBUTED", - "OFFER_STATUS_REDEEMED", - "OFFER_STATUS_AWARDED", - "OFFER_STATUS_EXPIRED" - ], - "description": "Status of the offer.", - "type": "string" - }, "clientId": { "description": "ID of client.", "format": "int64", @@ -2555,67 +2182,657 @@ "description": "Name of the client.", "type": "string" }, + "creationTime": { + "description": "Time offer was first created.", + "format": "google-datetime", + "type": "string" + }, + "expirationTime": { + "description": "Time this offer expires.", + "format": "google-datetime", + "type": "string" + }, "lastModifiedTime": { "description": "Time last action was taken.", "format": "google-datetime", "type": "string" }, - "adwordsUrl": { - "description": "Client's AdWords page URL.", + "offerCode": { + "description": "Offer code.", + "type": "string" + }, + "offerCountryCode": { + "description": "Country Code for the offer country.", "type": "string" }, "offerType": { - "enumDescriptions": [ - "Unset.", - "AdWords spend X get Y.", - "Youtube video.", - "Spend Match up to Y." - ], + "description": "Type of offer.", "enum": [ "OFFER_TYPE_UNSPECIFIED", "OFFER_TYPE_SPEND_X_GET_Y", "OFFER_TYPE_VIDEO", "OFFER_TYPE_SPEND_MATCH" ], - "description": "Type of offer.", + "enumDescriptions": [ + "Unset.", + "AdWords spend X get Y.", + "Youtube video.", + "Spend Match up to Y." + ], "type": "string" }, "senderName": { - "type": "string", - "description": "Name (First + Last) of the partners user to whom the incentive is allocated." - }, - "offerCountryCode": { - "description": "Country Code for the offer country.", - "type": "string" - } - } - }, - "UserOverrides": { - "type": "object", - "properties": { - "ipAddress": { - "description": "IP address to use instead of the user's geo-located IP address.", + "description": "Name (First + Last) of the partners user to whom the incentive is allocated.", "type": "string" }, - "userId": { - "type": "string", - "description": "Logged-in user ID to impersonate instead of the user's ID." + "status": { + "description": "Status of the offer.", + "enum": [ + "OFFER_STATUS_UNSPECIFIED", + "OFFER_STATUS_DISTRIBUTED", + "OFFER_STATUS_REDEEMED", + "OFFER_STATUS_AWARDED", + "OFFER_STATUS_EXPIRED" + ], + "enumDescriptions": [ + "Unset.", + "Offer distributed.", + "Offer redeemed.", + "Offer awarded.", + "Offer expired." + ], + "type": "string" } }, - "id": "UserOverrides", - "description": "Values to use instead of the user's respective defaults. These are only\nhonored by whitelisted products." + "type": "object" + }, + "LatLng": { + "description": "An object representing a latitude/longitude pair. This is expressed as a pair\nof doubles representing degrees latitude and degrees longitude. Unless\nspecified otherwise, this must conform to the\n\u003ca href=\"http://www.unoosa.org/pdf/icg/2012/template/WGS_84.pdf\"\u003eWGS84\nstandard\u003c/a\u003e. Values must be within normalized ranges.", + "id": "LatLng", + "properties": { + "latitude": { + "description": "The latitude in degrees. It must be in the range [-90.0, +90.0].", + "format": "double", + "type": "number" + }, + "longitude": { + "description": "The longitude in degrees. It must be in the range [-180.0, +180.0].", + "format": "double", + "type": "number" + } + }, + "type": "object" + }, + "Lead": { + "description": "A lead resource that represents an advertiser contact for a `Company`. These\nare usually generated via Google Partner Search (the advertiser portal).", + "id": "Lead", + "properties": { + "adwordsCustomerId": { + "description": "The AdWords Customer ID of the lead.", + "format": "int64", + "type": "string" + }, + "comments": { + "description": "Comments lead source gave.", + "type": "string" + }, + "createTime": { + "description": "Timestamp of when this lead was created.", + "format": "google-datetime", + "type": "string" + }, + "email": { + "description": "Email address of lead source.", + "type": "string" + }, + "familyName": { + "description": "Last name of lead source.", + "type": "string" + }, + "givenName": { + "description": "First name of lead source.", + "type": "string" + }, + "gpsMotivations": { + "description": "List of reasons for using Google Partner Search and creating a lead.", + "enumDescriptions": [ + "Unchosen.", + "Advertiser needs help with their advertising.", + "Advertiser needs help with their website.", + "Advertiser does not have a website." + ], + "items": { + "enum": [ + "GPS_MOTIVATION_UNSPECIFIED", + "GPSM_HELP_WITH_ADVERTISING", + "GPSM_HELP_WITH_WEBSITE", + "GPSM_NO_WEBSITE" + ], + "type": "string" + }, + "type": "array" + }, + "id": { + "description": "ID of the lead.", + "type": "string" + }, + "languageCode": { + "description": "Language code of the lead's language preference, as defined by\n\u003ca href=\"https://tools.ietf.org/html/bcp47\"\u003eBCP 47\u003c/a\u003e\n(IETF BCP 47, \"Tags for Identifying Languages\").", + "type": "string" + }, + "marketingOptIn": { + "description": "Whether or not the lead signed up for marketing emails", + "type": "boolean" + }, + "minMonthlyBudget": { + "$ref": "Money", + "description": "The minimum monthly budget lead source is willing to spend." + }, + "phoneNumber": { + "description": "Phone number of lead source.", + "type": "string" + }, + "state": { + "description": "The lead's state in relation to the company.", + "enum": [ + "LEAD_STATE_UNSPECIFIED", + "LEAD", + "CONTACTED", + "CLIENT", + "OTHER" + ], + "enumDescriptions": [ + "Unchosen.", + "Lead not yet contacted.", + "Lead has been contacted.", + "Lead has become a client.", + "Lead in a state not covered by other options." + ], + "type": "string" + }, + "type": { + "description": "Type of lead.", + "enum": [ + "LEAD_TYPE_UNSPECIFIED", + "LT_GPS" + ], + "enumDescriptions": [ + "Unchosen.", + "Google Partner Search." + ], + "type": "string" + }, + "websiteUrl": { + "description": "Website URL of lead source.", + "type": "string" + } + }, + "type": "object" + }, + "ListAnalyticsResponse": { + "description": "Response message for\nListAnalytics.", + "id": "ListAnalyticsResponse", + "properties": { + "analytics": { + "description": "The list of analytics.\nSorted in ascending order of\nAnalytics.event_date.", + "items": { + "$ref": "Analytics" + }, + "type": "array" + }, + "analyticsSummary": { + "$ref": "AnalyticsSummary", + "description": "Aggregated information across the response's\nanalytics." + }, + "nextPageToken": { + "description": "A token to retrieve next page of results.\nPass this value in the `ListAnalyticsRequest.page_token` field in the\nsubsequent call to\nListAnalytics to retrieve the\nnext page of results.", + "type": "string" + }, + "responseMetadata": { + "$ref": "ResponseMetadata", + "description": "Current response metadata." + } + }, + "type": "object" + }, + "ListCompaniesResponse": { + "description": "Response message for\nListCompanies.", + "id": "ListCompaniesResponse", + "properties": { + "companies": { + "description": "The list of companies.", + "items": { + "$ref": "Company" + }, + "type": "array" + }, + "nextPageToken": { + "description": "A token to retrieve next page of results.\nPass this value in the `ListCompaniesRequest.page_token` field in the\nsubsequent call to\nListCompanies to retrieve the\nnext page of results.", + "type": "string" + }, + "responseMetadata": { + "$ref": "ResponseMetadata", + "description": "Current response metadata." + } + }, + "type": "object" + }, + "ListLeadsResponse": { + "description": "Response message for ListLeads.", + "id": "ListLeadsResponse", + "properties": { + "leads": { + "description": "The list of leads.", + "items": { + "$ref": "Lead" + }, + "type": "array" + }, + "nextPageToken": { + "description": "A token to retrieve next page of results.\nPass this value in the `ListLeadsRequest.page_token` field in the\nsubsequent call to\nListLeads to retrieve the\nnext page of results.", + "type": "string" + }, + "responseMetadata": { + "$ref": "ResponseMetadata", + "description": "Current response metadata." + }, + "totalSize": { + "description": "The total count of leads for the given company.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "ListOffersHistoryResponse": { + "description": "Response for ListOfferHistory.", + "id": "ListOffersHistoryResponse", + "properties": { + "canShowEntireCompany": { + "description": "True if the user has the option to show entire company history.", + "type": "boolean" + }, + "nextPageToken": { + "description": "Supply this token in a ListOffersHistoryRequest to retrieve the next page.", + "type": "string" + }, + "offers": { + "description": "Historical offers meeting request.", + "items": { + "$ref": "HistoricalOffer" + }, + "type": "array" + }, + "responseMetadata": { + "$ref": "ResponseMetadata", + "description": "Current response metadata." + }, + "showingEntireCompany": { + "description": "True if this response is showing entire company history.", + "type": "boolean" + }, + "totalResults": { + "description": "Number of results across all pages.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "ListOffersResponse": { + "description": "Response for ListOffer.", + "id": "ListOffersResponse", + "properties": { + "availableOffers": { + "description": "Available Offers to be distributed.", + "items": { + "$ref": "AvailableOffer" + }, + "type": "array" + }, + "noOfferReason": { + "description": "Reason why no Offers are available.", + "enum": [ + "NO_OFFER_REASON_UNSPECIFIED", + "NO_OFFER_REASON_NO_MCC", + "NO_OFFER_REASON_LIMIT_REACHED", + "NO_OFFER_REASON_INELIGIBLE" + ], + "enumDescriptions": [ + "Unset.", + "Not an MCC.", + "Offer limit has been reached.", + "Ineligible for offers." + ], + "type": "string" + }, + "responseMetadata": { + "$ref": "ResponseMetadata", + "description": "Current response metadata." + } + }, + "type": "object" + }, + "ListUserStatesResponse": { + "description": "Response message for\nListUserStates.", + "id": "ListUserStatesResponse", + "properties": { + "responseMetadata": { + "$ref": "ResponseMetadata", + "description": "Current response metadata." + }, + "userStates": { + "description": "User's states.", + "enumDescriptions": [ + "Unchosen.", + "User must pass \u003ca href=\"https://www.google.com/recaptcha/\"\u003ereCaptcha\u003c/a\u003e to\ncontact a Partner via Google Partner Search." + ], + "items": { + "enum": [ + "USER_STATE_UNSPECIFIED", + "US_REQUIRES_RECAPTCHA_FOR_GPS_CONTACT" + ], + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "LocalizedCompanyInfo": { + "description": "The localized company information.", + "id": "LocalizedCompanyInfo", + "properties": { + "countryCodes": { + "description": "List of country codes for the localized company info.", + "items": { + "type": "string" + }, + "type": "array" + }, + "displayName": { + "description": "Localized display name.", + "type": "string" + }, + "languageCode": { + "description": "Language code of the localized company info, as defined by\n\u003ca href=\"https://tools.ietf.org/html/bcp47\"\u003eBCP 47\u003c/a\u003e\n(IETF BCP 47, \"Tags for Identifying Languages\").", + "type": "string" + }, + "overview": { + "description": "Localized brief description that the company uses to advertise themselves.", + "type": "string" + } + }, + "type": "object" + }, + "Location": { + "description": "A location with address and geographic coordinates. May optionally contain a\ndetailed (multi-field) version of the address.", + "id": "Location", + "properties": { + "address": { + "description": "The single string version of the address.", + "type": "string" + }, + "addressLine": { + "description": "The following address lines represent the most specific part of any\naddress.", + "items": { + "type": "string" + }, + "type": "array" + }, + "administrativeArea": { + "description": "Top-level administrative subdivision of this country.", + "type": "string" + }, + "dependentLocality": { + "description": "Dependent locality or sublocality. Used for UK dependent localities, or\nneighborhoods or boroughs in other locations.", + "type": "string" + }, + "languageCode": { + "description": "Language code of the address. Should be in BCP 47 format.", + "type": "string" + }, + "latLng": { + "$ref": "LatLng", + "description": "The latitude and longitude of the location, in degrees." + }, + "locality": { + "description": "Generally refers to the city/town portion of an address.", + "type": "string" + }, + "postalCode": { + "description": "Values are frequently alphanumeric.", + "type": "string" + }, + "regionCode": { + "description": "CLDR (Common Locale Data Repository) region code .", + "type": "string" + }, + "sortingCode": { + "description": "Use of this code is very country-specific, but will refer to a secondary\nclassification code for sorting mail.", + "type": "string" + } + }, + "type": "object" + }, + "LogMessageRequest": { + "description": "Request message for\nLogClientMessage.", + "id": "LogMessageRequest", + "properties": { + "clientInfo": { + "additionalProperties": { + "type": "string" + }, + "description": "Map of client info, such as URL, browser navigator, browser platform, etc.", + "type": "object" + }, + "details": { + "description": "Details about the client message.", + "type": "string" + }, + "level": { + "description": "Message level of client message.", + "enum": [ + "MESSAGE_LEVEL_UNSPECIFIED", + "ML_FINE", + "ML_INFO", + "ML_WARNING", + "ML_SEVERE" + ], + "enumDescriptions": [ + "Unchosen.", + "Message level for tracing information.", + "Message level for informational messages.", + "Message level for potential problems.", + "Message level for serious failures." + ], + "type": "string" + }, + "requestMetadata": { + "$ref": "RequestMetadata", + "description": "Current request metadata." + } + }, + "type": "object" + }, + "LogMessageResponse": { + "description": "Response message for\nLogClientMessage.", + "id": "LogMessageResponse", + "properties": { + "responseMetadata": { + "$ref": "ResponseMetadata", + "description": "Current response metadata." + } + }, + "type": "object" }, "LogUserEventRequest": { "description": "Request message for\nLogUserEvent.", - "type": "object", + "id": "LogUserEventRequest", "properties": { - "lead": { - "$ref": "Lead", - "description": "Advertiser lead information." - }, "eventAction": { "description": "The action that occurred.", - "type": "string", + "enum": [ + "EVENT_ACTION_UNSPECIFIED", + "SMB_CLICKED_FIND_A_PARTNER_BUTTON_BOTTOM", + "SMB_CLICKED_FIND_A_PARTNER_BUTTON_TOP", + "AGENCY_CLICKED_JOIN_NOW_BUTTON_BOTTOM", + "AGENCY_CLICKED_JOIN_NOW_BUTTON_TOP", + "SMB_CANCELED_PARTNER_CONTACT_FORM", + "SMB_CLICKED_CONTACT_A_PARTNER", + "SMB_COMPLETED_PARTNER_CONTACT_FORM", + "SMB_ENTERED_EMAIL_IN_CONTACT_PARTNER_FORM", + "SMB_ENTERED_NAME_IN_CONTACT_PARTNER_FORM", + "SMB_ENTERED_PHONE_IN_CONTACT_PARTNER_FORM", + "SMB_FAILED_RECAPTCHA_IN_CONTACT_PARTNER_FORM", + "PARTNER_VIEWED_BY_SMB", + "SMB_CANCELED_PARTNER_CONTACT_FORM_ON_GPS", + "SMB_CHANGED_A_SEARCH_PARAMETER_TOP", + "SMB_CLICKED_CONTACT_A_PARTNER_ON_GPS", + "SMB_CLICKED_SHOW_MORE_PARTNERS_BUTTON_BOTTOM", + "SMB_COMPLETED_PARTNER_CONTACT_FORM_ON_GPS", + "SMB_NO_PARTNERS_AVAILABLE_WITH_SEARCH_CRITERIA", + "SMB_PERFORMED_SEARCH_ON_GPS", + "SMB_VIEWED_A_PARTNER_ON_GPS", + "SMB_CANCELED_PARTNER_CONTACT_FORM_ON_PROFILE_PAGE", + "SMB_CLICKED_CONTACT_A_PARTNER_ON_PROFILE_PAGE", + "SMB_CLICKED_PARTNER_WEBSITE", + "SMB_COMPLETED_PARTNER_CONTACT_FORM_ON_PROFILE_PAGE", + "SMB_VIEWED_A_PARTNER_PROFILE", + "AGENCY_CLICKED_ACCEPT_TOS_BUTTON", + "AGENCY_CHANGED_TOS_COUNTRY", + "AGENCY_ADDED_ADDRESS_IN_MY_PROFILE_PORTAL", + "AGENCY_ADDED_PHONE_NUMBER_IN_MY_PROFILE_PORTAL", + "AGENCY_CHANGED_PRIMARY_ACCOUNT_ASSOCIATION", + "AGENCY_CHANGED_PRIMARY_COUNTRY_ASSOCIATION", + "AGENCY_CLICKED_AFFILIATE_BUTTON_IN_MY_PROFILE_IN_PORTAL", + "AGENCY_CLICKED_GIVE_EDIT_ACCESS_IN_MY_PROFILE_PORTAL", + "AGENCY_CLICKED_LOG_OUT_IN_MY_PROFILE_PORTAL", + "AGENCY_CLICKED_MY_PROFILE_LEFT_NAV_IN_PORTAL", + "AGENCY_CLICKED_SAVE_AND_CONTINUE_AT_BOT_OF_COMPLETE_PROFILE", + "AGENCY_CLICKED_UNAFFILIATE_IN_MY_PROFILE_PORTAL", + "AGENCY_FILLED_OUT_COMP_AFFILIATION_IN_MY_PROFILE_PORTAL", + "AGENCY_SUCCESSFULLY_CONNECTED_WITH_COMPANY_IN_MY_PROFILE", + "AGENCY_CLICKED_CREATE_MCC_IN_MY_PROFILE_PORTAL", + "AGENCY_DIDNT_HAVE_AN_MCC_ASSOCIATED_ON_COMPLETE_PROFILE", + "AGENCY_HAD_AN_MCC_ASSOCIATED_ON_COMPLETE_PROFILE", + "AGENCY_ADDED_JOB_FUNCTION_IN_MY_PROFILE_PORTAL", + "AGENCY_LOOKED_AT_JOB_FUNCTION_DROP_DOWN", + "AGENCY_SELECTED_ACCOUNT_MANAGER_AS_JOB_FUNCTION", + "AGENCY_SELECTED_ACCOUNT_PLANNER_AS_JOB_FUNCTION", + "AGENCY_SELECTED_ANALYTICS_AS_JOB_FUNCTION", + "AGENCY_SELECTED_CREATIVE_AS_JOB_FUNCTION", + "AGENCY_SELECTED_MEDIA_BUYER_AS_JOB_FUNCTION", + "AGENCY_SELECTED_MEDIA_PLANNER_AS_JOB_FUNCTION", + "AGENCY_SELECTED_OTHER_AS_JOB_FUNCTION", + "AGENCY_SELECTED_PRODUCTION_AS_JOB_FUNCTION", + "AGENCY_SELECTED_SEO_AS_JOB_FUNCTION", + "AGENCY_SELECTED_SALES_REP_AS_JOB_FUNCTION", + "AGENCY_SELECTED_SEARCH_SPECIALIST_AS_JOB_FUNCTION", + "AGENCY_ADDED_CHANNELS_IN_MY_PROFILE_PORTAL", + "AGENCY_LOOKED_AT_ADD_CHANNEL_DROP_DOWN", + "AGENCY_SELECTED_CROSS_CHANNEL_FROM_ADD_CHANNEL", + "AGENCY_SELECTED_DISPLAY_FROM_ADD_CHANNEL", + "AGENCY_SELECTED_MOBILE_FROM_ADD_CHANNEL", + "AGENCY_SELECTED_SEARCH_FROM_ADD_CHANNEL", + "AGENCY_SELECTED_SOCIAL_FROM_ADD_CHANNEL", + "AGENCY_SELECTED_TOOLS_FROM_ADD_CHANNEL", + "AGENCY_SELECTED_YOUTUBE_FROM_ADD_CHANNEL", + "AGENCY_ADDED_INDUSTRIES_IN_MY_PROFILE_PORTAL", + "AGENCY_CHANGED_ADD_INDUSTRIES_DROP_DOWN", + "AGENCY_ADDED_MARKETS_IN_MY_PROFILE_PORTAL", + "AGENCY_CHANGED_ADD_MARKETS_DROP_DOWN", + "AGENCY_CHECKED_RECIEVE_MAIL_PROMOTIONS_MYPROFILE", + "AGENCY_CHECKED_RECIEVE_MAIL_PROMOTIONS_SIGNUP", + "AGENCY_SELECTED_OPT_IN_BETA_TESTS_AND_MKT_RESEARCH", + "AGENCY_SELECTED_OPT_IN_BETA_TESTS_IN_MY_PROFILE_PORTAL", + "AGENCY_SELECTED_OPT_IN_NEWS_IN_MY_PROFILE_PORTAL", + "AGENCY_SELECTED_OPT_IN_NEWS_INVITATIONS_AND_PROMOS", + "AGENCY_SELECTED_OPT_IN_PERFORMANCE_SUG_IN_MY_PROFILE_PORTAL", + "AGENCY_SELECTED_OPT_IN_PERFORMANCE_SUGGESTIONS", + "AGENCY_SELECTED_OPT_IN_SELECT_ALL_EMAIL_NOTIFICATIONS", + "AGENCY_SELECTED_SELECT_ALL_OPT_INS_IN_MY_PROFILE_PORTAL", + "AGENCY_CLICKED_BACK_BUTTON_ON_CONNECT_WITH_COMPANY", + "AGENCY_CLICKED_CONTINUE_TO_OVERVIEW_ON_CONNECT_WITH_COMPANY", + "AGECNY_CLICKED_CREATE_MCC_CONNECT_WITH_COMPANY_NOT_FOUND", + "AGECNY_CLICKED_GIVE_EDIT_ACCESS_CONNECT_WITH_COMPANY_NOT_FOUND", + "AGECNY_CLICKED_LOG_OUT_CONNECT_WITH_COMPANY_NOT_FOUND", + "AGENCY_CLICKED_SKIP_FOR_NOW_ON_CONNECT_WITH_COMPANY_PAGE", + "AGENCY_CLOSED_CONNECTED_TO_COMPANY_X_BUTTON_WRONG_COMPANY", + "AGENCY_COMPLETED_FIELD_CONNECT_WITH_COMPANY", + "AGECNY_FOUND_COMPANY_TO_CONNECT_WITH", + "AGENCY_SUCCESSFULLY_CREATED_COMPANY", + "AGENCY_ADDED_NEW_COMPANY_LOCATION", + "AGENCY_CLICKED_COMMUNITY_JOIN_NOW_LINK_IN_PORTAL_NOTIFICATIONS", + "AGENCY_CLICKED_CONNECT_TO_COMPANY_LINK_IN_PORTAL_NOTIFICATIONS", + "AGENCY_CLICKED_GET_CERTIFIED_LINK_IN_PORTAL_NOTIFICATIONS", + "AGENCY_CLICKED_GET_VIDEO_ADS_CERTIFIED_LINK_IN_PORTAL_NOTIFICATIONS", + "AGENCY_CLICKED_LINK_TO_MCC_LINK_IN_PORTAL_NOTIFICATIONS", + "AGENCY_CLICKED_INSIGHT_CONTENT_IN_PORTAL", + "AGENCY_CLICKED_INSIGHTS_VIEW_NOW_PITCH_DECKS_IN_PORTAL", + "AGENCY_CLICKED_INSIGHTS_LEFT_NAV_IN_PORTAL", + "AGENCY_CLICKED_INSIGHTS_UPLOAD_CONTENT", + "AGENCY_CLICKED_INSIGHTS_VIEWED_DEPRECATED", + "AGENCY_CLICKED_COMMUNITY_LEFT_NAV_IN_PORTAL", + "AGENCY_CLICKED_JOIN_COMMUNITY_BUTTON_COMMUNITY_PORTAL", + "AGENCY_CLICKED_CERTIFICATIONS_LEFT_NAV_IN_PORTAL", + "AGENCY_CLICKED_CERTIFICATIONS_PRODUCT_LEFT_NAV_IN_PORTAL", + "AGENCY_CLICKED_PARTNER_STATUS_LEFT_NAV_IN_PORTAL", + "AGENCY_CLICKED_PARTNER_STATUS_PRODUCT_LEFT_NAV_IN_PORTAL", + "AGENCY_CLICKED_OFFERS_LEFT_NAV_IN_PORTAL", + "AGENCY_CLICKED_SEND_BUTTON_ON_OFFERS_PAGE", + "AGENCY_CLICKED_EXAM_DETAILS_ON_CERT_ADWORDS_PAGE", + "AGENCY_CLICKED_SEE_EXAMS_CERTIFICATION_MAIN_PAGE", + "AGENCY_CLICKED_TAKE_EXAM_ON_CERT_EXAM_PAGE", + "AGENCY_OPENED_LAST_ADMIN_DIALOG", + "AGENCY_OPENED_DIALOG_WITH_NO_USERS", + "AGENCY_PROMOTED_USER_TO_ADMIN", + "AGENCY_UNAFFILIATED", + "AGENCY_CHANGED_ROLES", + "SMB_CLICKED_COMPANY_NAME_LINK_TO_PROFILE", + "SMB_VIEWED_ADWORDS_CERTIFICATE", + "SMB_VIEWED_ADWORDS_SEARCH_CERTIFICATE", + "SMB_VIEWED_ADWORDS_DISPLAY_CERTIFICATE", + "SMB_CLICKED_ADWORDS_CERTIFICATE_HELP_ICON", + "SMB_VIEWED_ANALYTICS_CERTIFICATE", + "SMB_VIEWED_DOUBLECLICK_CERTIFICATE", + "SMB_VIEWED_MOBILE_SITES_CERTIFICATE", + "SMB_VIEWED_VIDEO_ADS_CERTIFICATE", + "SMB_VIEWED_SHOPPING_CERTIFICATE", + "SMB_CLICKED_VIDEO_ADS_CERTIFICATE_HELP_ICON", + "SMB_VIEWED_DIGITAL_SALES_CERTIFICATE", + "CLICKED_HELP_AT_BOTTOM", + "CLICKED_HELP_AT_TOP", + "CLIENT_ERROR", + "AGENCY_CLICKED_LEFT_NAV_STORIES", + "CLICKED", + "SMB_VIEWED_MOBILE_CERTIFICATE", + "AGENCY_FAILED_COMPANY_VERIFICATION", + "VISITED_LANDING", + "VISITED_GPS", + "VISITED_AGENCY_PORTAL", + "CANCELLED_INDIVIDUAL_SIGN_UP", + "CANCELLED_COMPANY_SIGN_UP", + "AGENCY_CLICKED_SIGN_IN_BUTTON_TOP", + "AGENCY_CLICKED_SAVE_AND_CONTINUE_AT_BOT_OF_INCOMPLETE_PROFILE", + "AGENCY_UNSELECTED_OPT_IN_NEWS_INVITATIONS_AND_PROMOS", + "AGENCY_UNSELECTED_OPT_IN_BETA_TESTS_AND_MKT_RESEARCH", + "AGENCY_UNSELECTED_OPT_IN_PERFORMANCE_SUGGESTIONS", + "AGENCY_SELECTED_OPT_OUT_UNSELECT_ALL_EMAIL_NOTIFICATIONS", + "AGENCY_LINKED_INDIVIDUAL_MCC", + "AGENCY_SUGGESTED_TO_USER", + "AGENCY_IGNORED_SUGGESTED_AGENCIES_AND_SEARCHED", + "AGENCY_PICKED_SUGGESTED_AGENCY", + "AGENCY_SEARCHED_FOR_AGENCIES", + "AGENCY_PICKED_SEARCHED_AGENCY", + "AGENCY_DISMISSED_AFFILIATION_WIDGET", + "AGENCY_CLICKED_INSIGHTS_DOWNLOAD_CONTENT", + "AGENCY_PROGRESS_INSIGHTS_VIEW_CONTENT", + "AGENCY_CLICKED_CANCEL_ACCEPT_TOS_BUTTON", + "SMB_ENTERED_WEBSITE_IN_CONTACT_PARTNER_FORM", + "AGENCY_SELECTED_OPT_IN_AFA_MIGRATION", + "AGENCY_SELECTED_OPT_OUT_AFA_MIGRATION" + ], "enumDescriptions": [ "Unchosen.", "Advertiser clicked `Find a partner` bottom button.", @@ -2777,200 +2994,10 @@ "Agency opted in for migrating their exams to Academy for Ads.", "Agency opted out for migrating their exams to Academy for Ads." ], - "enum": [ - "EVENT_ACTION_UNSPECIFIED", - "SMB_CLICKED_FIND_A_PARTNER_BUTTON_BOTTOM", - "SMB_CLICKED_FIND_A_PARTNER_BUTTON_TOP", - "AGENCY_CLICKED_JOIN_NOW_BUTTON_BOTTOM", - "AGENCY_CLICKED_JOIN_NOW_BUTTON_TOP", - "SMB_CANCELED_PARTNER_CONTACT_FORM", - "SMB_CLICKED_CONTACT_A_PARTNER", - "SMB_COMPLETED_PARTNER_CONTACT_FORM", - "SMB_ENTERED_EMAIL_IN_CONTACT_PARTNER_FORM", - "SMB_ENTERED_NAME_IN_CONTACT_PARTNER_FORM", - "SMB_ENTERED_PHONE_IN_CONTACT_PARTNER_FORM", - "SMB_FAILED_RECAPTCHA_IN_CONTACT_PARTNER_FORM", - "PARTNER_VIEWED_BY_SMB", - "SMB_CANCELED_PARTNER_CONTACT_FORM_ON_GPS", - "SMB_CHANGED_A_SEARCH_PARAMETER_TOP", - "SMB_CLICKED_CONTACT_A_PARTNER_ON_GPS", - "SMB_CLICKED_SHOW_MORE_PARTNERS_BUTTON_BOTTOM", - "SMB_COMPLETED_PARTNER_CONTACT_FORM_ON_GPS", - "SMB_NO_PARTNERS_AVAILABLE_WITH_SEARCH_CRITERIA", - "SMB_PERFORMED_SEARCH_ON_GPS", - "SMB_VIEWED_A_PARTNER_ON_GPS", - "SMB_CANCELED_PARTNER_CONTACT_FORM_ON_PROFILE_PAGE", - "SMB_CLICKED_CONTACT_A_PARTNER_ON_PROFILE_PAGE", - "SMB_CLICKED_PARTNER_WEBSITE", - "SMB_COMPLETED_PARTNER_CONTACT_FORM_ON_PROFILE_PAGE", - "SMB_VIEWED_A_PARTNER_PROFILE", - "AGENCY_CLICKED_ACCEPT_TOS_BUTTON", - "AGENCY_CHANGED_TOS_COUNTRY", - "AGENCY_ADDED_ADDRESS_IN_MY_PROFILE_PORTAL", - "AGENCY_ADDED_PHONE_NUMBER_IN_MY_PROFILE_PORTAL", - "AGENCY_CHANGED_PRIMARY_ACCOUNT_ASSOCIATION", - "AGENCY_CHANGED_PRIMARY_COUNTRY_ASSOCIATION", - "AGENCY_CLICKED_AFFILIATE_BUTTON_IN_MY_PROFILE_IN_PORTAL", - "AGENCY_CLICKED_GIVE_EDIT_ACCESS_IN_MY_PROFILE_PORTAL", - "AGENCY_CLICKED_LOG_OUT_IN_MY_PROFILE_PORTAL", - "AGENCY_CLICKED_MY_PROFILE_LEFT_NAV_IN_PORTAL", - "AGENCY_CLICKED_SAVE_AND_CONTINUE_AT_BOT_OF_COMPLETE_PROFILE", - "AGENCY_CLICKED_UNAFFILIATE_IN_MY_PROFILE_PORTAL", - "AGENCY_FILLED_OUT_COMP_AFFILIATION_IN_MY_PROFILE_PORTAL", - "AGENCY_SUCCESSFULLY_CONNECTED_WITH_COMPANY_IN_MY_PROFILE", - "AGENCY_CLICKED_CREATE_MCC_IN_MY_PROFILE_PORTAL", - "AGENCY_DIDNT_HAVE_AN_MCC_ASSOCIATED_ON_COMPLETE_PROFILE", - "AGENCY_HAD_AN_MCC_ASSOCIATED_ON_COMPLETE_PROFILE", - "AGENCY_ADDED_JOB_FUNCTION_IN_MY_PROFILE_PORTAL", - "AGENCY_LOOKED_AT_JOB_FUNCTION_DROP_DOWN", - "AGENCY_SELECTED_ACCOUNT_MANAGER_AS_JOB_FUNCTION", - "AGENCY_SELECTED_ACCOUNT_PLANNER_AS_JOB_FUNCTION", - "AGENCY_SELECTED_ANALYTICS_AS_JOB_FUNCTION", - "AGENCY_SELECTED_CREATIVE_AS_JOB_FUNCTION", - "AGENCY_SELECTED_MEDIA_BUYER_AS_JOB_FUNCTION", - "AGENCY_SELECTED_MEDIA_PLANNER_AS_JOB_FUNCTION", - "AGENCY_SELECTED_OTHER_AS_JOB_FUNCTION", - "AGENCY_SELECTED_PRODUCTION_AS_JOB_FUNCTION", - "AGENCY_SELECTED_SEO_AS_JOB_FUNCTION", - "AGENCY_SELECTED_SALES_REP_AS_JOB_FUNCTION", - "AGENCY_SELECTED_SEARCH_SPECIALIST_AS_JOB_FUNCTION", - "AGENCY_ADDED_CHANNELS_IN_MY_PROFILE_PORTAL", - "AGENCY_LOOKED_AT_ADD_CHANNEL_DROP_DOWN", - "AGENCY_SELECTED_CROSS_CHANNEL_FROM_ADD_CHANNEL", - "AGENCY_SELECTED_DISPLAY_FROM_ADD_CHANNEL", - "AGENCY_SELECTED_MOBILE_FROM_ADD_CHANNEL", - "AGENCY_SELECTED_SEARCH_FROM_ADD_CHANNEL", - "AGENCY_SELECTED_SOCIAL_FROM_ADD_CHANNEL", - "AGENCY_SELECTED_TOOLS_FROM_ADD_CHANNEL", - "AGENCY_SELECTED_YOUTUBE_FROM_ADD_CHANNEL", - "AGENCY_ADDED_INDUSTRIES_IN_MY_PROFILE_PORTAL", - "AGENCY_CHANGED_ADD_INDUSTRIES_DROP_DOWN", - "AGENCY_ADDED_MARKETS_IN_MY_PROFILE_PORTAL", - "AGENCY_CHANGED_ADD_MARKETS_DROP_DOWN", - "AGENCY_CHECKED_RECIEVE_MAIL_PROMOTIONS_MYPROFILE", - "AGENCY_CHECKED_RECIEVE_MAIL_PROMOTIONS_SIGNUP", - "AGENCY_SELECTED_OPT_IN_BETA_TESTS_AND_MKT_RESEARCH", - "AGENCY_SELECTED_OPT_IN_BETA_TESTS_IN_MY_PROFILE_PORTAL", - "AGENCY_SELECTED_OPT_IN_NEWS_IN_MY_PROFILE_PORTAL", - "AGENCY_SELECTED_OPT_IN_NEWS_INVITATIONS_AND_PROMOS", - "AGENCY_SELECTED_OPT_IN_PERFORMANCE_SUG_IN_MY_PROFILE_PORTAL", - "AGENCY_SELECTED_OPT_IN_PERFORMANCE_SUGGESTIONS", - "AGENCY_SELECTED_OPT_IN_SELECT_ALL_EMAIL_NOTIFICATIONS", - "AGENCY_SELECTED_SELECT_ALL_OPT_INS_IN_MY_PROFILE_PORTAL", - "AGENCY_CLICKED_BACK_BUTTON_ON_CONNECT_WITH_COMPANY", - "AGENCY_CLICKED_CONTINUE_TO_OVERVIEW_ON_CONNECT_WITH_COMPANY", - "AGECNY_CLICKED_CREATE_MCC_CONNECT_WITH_COMPANY_NOT_FOUND", - "AGECNY_CLICKED_GIVE_EDIT_ACCESS_CONNECT_WITH_COMPANY_NOT_FOUND", - "AGECNY_CLICKED_LOG_OUT_CONNECT_WITH_COMPANY_NOT_FOUND", - "AGENCY_CLICKED_SKIP_FOR_NOW_ON_CONNECT_WITH_COMPANY_PAGE", - "AGENCY_CLOSED_CONNECTED_TO_COMPANY_X_BUTTON_WRONG_COMPANY", - "AGENCY_COMPLETED_FIELD_CONNECT_WITH_COMPANY", - "AGECNY_FOUND_COMPANY_TO_CONNECT_WITH", - "AGENCY_SUCCESSFULLY_CREATED_COMPANY", - "AGENCY_ADDED_NEW_COMPANY_LOCATION", - "AGENCY_CLICKED_COMMUNITY_JOIN_NOW_LINK_IN_PORTAL_NOTIFICATIONS", - "AGENCY_CLICKED_CONNECT_TO_COMPANY_LINK_IN_PORTAL_NOTIFICATIONS", - "AGENCY_CLICKED_GET_CERTIFIED_LINK_IN_PORTAL_NOTIFICATIONS", - "AGENCY_CLICKED_GET_VIDEO_ADS_CERTIFIED_LINK_IN_PORTAL_NOTIFICATIONS", - "AGENCY_CLICKED_LINK_TO_MCC_LINK_IN_PORTAL_NOTIFICATIONS", - "AGENCY_CLICKED_INSIGHT_CONTENT_IN_PORTAL", - "AGENCY_CLICKED_INSIGHTS_VIEW_NOW_PITCH_DECKS_IN_PORTAL", - "AGENCY_CLICKED_INSIGHTS_LEFT_NAV_IN_PORTAL", - "AGENCY_CLICKED_INSIGHTS_UPLOAD_CONTENT", - "AGENCY_CLICKED_INSIGHTS_VIEWED_DEPRECATED", - "AGENCY_CLICKED_COMMUNITY_LEFT_NAV_IN_PORTAL", - "AGENCY_CLICKED_JOIN_COMMUNITY_BUTTON_COMMUNITY_PORTAL", - "AGENCY_CLICKED_CERTIFICATIONS_LEFT_NAV_IN_PORTAL", - "AGENCY_CLICKED_CERTIFICATIONS_PRODUCT_LEFT_NAV_IN_PORTAL", - "AGENCY_CLICKED_PARTNER_STATUS_LEFT_NAV_IN_PORTAL", - "AGENCY_CLICKED_PARTNER_STATUS_PRODUCT_LEFT_NAV_IN_PORTAL", - "AGENCY_CLICKED_OFFERS_LEFT_NAV_IN_PORTAL", - "AGENCY_CLICKED_SEND_BUTTON_ON_OFFERS_PAGE", - "AGENCY_CLICKED_EXAM_DETAILS_ON_CERT_ADWORDS_PAGE", - "AGENCY_CLICKED_SEE_EXAMS_CERTIFICATION_MAIN_PAGE", - "AGENCY_CLICKED_TAKE_EXAM_ON_CERT_EXAM_PAGE", - "AGENCY_OPENED_LAST_ADMIN_DIALOG", - "AGENCY_OPENED_DIALOG_WITH_NO_USERS", - "AGENCY_PROMOTED_USER_TO_ADMIN", - "AGENCY_UNAFFILIATED", - "AGENCY_CHANGED_ROLES", - "SMB_CLICKED_COMPANY_NAME_LINK_TO_PROFILE", - "SMB_VIEWED_ADWORDS_CERTIFICATE", - "SMB_VIEWED_ADWORDS_SEARCH_CERTIFICATE", - "SMB_VIEWED_ADWORDS_DISPLAY_CERTIFICATE", - "SMB_CLICKED_ADWORDS_CERTIFICATE_HELP_ICON", - "SMB_VIEWED_ANALYTICS_CERTIFICATE", - "SMB_VIEWED_DOUBLECLICK_CERTIFICATE", - "SMB_VIEWED_MOBILE_SITES_CERTIFICATE", - "SMB_VIEWED_VIDEO_ADS_CERTIFICATE", - "SMB_VIEWED_SHOPPING_CERTIFICATE", - "SMB_CLICKED_VIDEO_ADS_CERTIFICATE_HELP_ICON", - "SMB_VIEWED_DIGITAL_SALES_CERTIFICATE", - "CLICKED_HELP_AT_BOTTOM", - "CLICKED_HELP_AT_TOP", - "CLIENT_ERROR", - "AGENCY_CLICKED_LEFT_NAV_STORIES", - "CLICKED", - "SMB_VIEWED_MOBILE_CERTIFICATE", - "AGENCY_FAILED_COMPANY_VERIFICATION", - "VISITED_LANDING", - "VISITED_GPS", - "VISITED_AGENCY_PORTAL", - "CANCELLED_INDIVIDUAL_SIGN_UP", - "CANCELLED_COMPANY_SIGN_UP", - "AGENCY_CLICKED_SIGN_IN_BUTTON_TOP", - "AGENCY_CLICKED_SAVE_AND_CONTINUE_AT_BOT_OF_INCOMPLETE_PROFILE", - "AGENCY_UNSELECTED_OPT_IN_NEWS_INVITATIONS_AND_PROMOS", - "AGENCY_UNSELECTED_OPT_IN_BETA_TESTS_AND_MKT_RESEARCH", - "AGENCY_UNSELECTED_OPT_IN_PERFORMANCE_SUGGESTIONS", - "AGENCY_SELECTED_OPT_OUT_UNSELECT_ALL_EMAIL_NOTIFICATIONS", - "AGENCY_LINKED_INDIVIDUAL_MCC", - "AGENCY_SUGGESTED_TO_USER", - "AGENCY_IGNORED_SUGGESTED_AGENCIES_AND_SEARCHED", - "AGENCY_PICKED_SUGGESTED_AGENCY", - "AGENCY_SEARCHED_FOR_AGENCIES", - "AGENCY_PICKED_SEARCHED_AGENCY", - "AGENCY_DISMISSED_AFFILIATION_WIDGET", - "AGENCY_CLICKED_INSIGHTS_DOWNLOAD_CONTENT", - "AGENCY_PROGRESS_INSIGHTS_VIEW_CONTENT", - "AGENCY_CLICKED_CANCEL_ACCEPT_TOS_BUTTON", - "SMB_ENTERED_WEBSITE_IN_CONTACT_PARTNER_FORM", - "AGENCY_SELECTED_OPT_IN_AFA_MIGRATION", - "AGENCY_SELECTED_OPT_OUT_AFA_MIGRATION" - ] - }, - "url": { - "description": "The URL where the event occurred.", "type": "string" }, - "requestMetadata": { - "description": "Current request metadata.", - "$ref": "RequestMetadata" - }, - "eventDatas": { - "description": "List of event data for the event.", - "type": "array", - "items": { - "$ref": "EventData" - } - }, - "eventScope": { - "type": "string", - "enumDescriptions": [ - "Unchosen.", - "Based on visitor.", - "Based on session.", - "Based on page visit." - ], - "enum": [ - "EVENT_SCOPE_UNSPECIFIED", - "VISITOR", - "SESSION", - "PAGE" - ], - "description": "The scope of the event." - }, "eventCategory": { + "description": "The category the action belongs to.", "enum": [ "EVENT_CATEGORY_UNSPECIFIED", "GOOGLE_PARTNER_SEARCH", @@ -2989,8 +3016,6 @@ "EXTERNAL_LINKS", "GOOGLE_PARTNER_LANDING" ], - "description": "The category the action belongs to.", - "type": "string", "enumDescriptions": [ "Unchosen.", "Google Partner Search category.", @@ -3008,110 +3033,218 @@ "Google Partner portal company profile category.", "External links category.", "Google Partner landing category." - ] + ], + "type": "string" + }, + "eventDatas": { + "description": "List of event data for the event.", + "items": { + "$ref": "EventData" + }, + "type": "array" + }, + "eventScope": { + "description": "The scope of the event.", + "enum": [ + "EVENT_SCOPE_UNSPECIFIED", + "VISITOR", + "SESSION", + "PAGE" + ], + "enumDescriptions": [ + "Unchosen.", + "Based on visitor.", + "Based on session.", + "Based on page visit." + ], + "type": "string" + }, + "lead": { + "$ref": "Lead", + "description": "Advertiser lead information." + }, + "requestMetadata": { + "$ref": "RequestMetadata", + "description": "Current request metadata." + }, + "url": { + "description": "The URL where the event occurred.", + "type": "string" } }, - "id": "LogUserEventRequest" + "type": "object" }, - "AnalyticsDataPoint": { + "LogUserEventResponse": { + "description": "Response message for\nLogUserEvent.", + "id": "LogUserEventResponse", "properties": { - "eventCount": { - "description": "Number of times the type of event occurred.\nMeaning depends on context (e.g. profile views, contacts, etc.).", + "responseMetadata": { + "$ref": "ResponseMetadata", + "description": "Current response metadata." + } + }, + "type": "object" + }, + "Money": { + "description": "Represents an amount of money with its currency type.", + "id": "Money", + "properties": { + "currencyCode": { + "description": "The 3-letter currency code defined in ISO 4217.", + "type": "string" + }, + "nanos": { + "description": "Number of nano (10^-9) units of the amount.\nThe value must be between -999,999,999 and +999,999,999 inclusive.\nIf `units` is positive, `nanos` must be positive or zero.\nIf `units` is zero, `nanos` can be positive, zero, or negative.\nIf `units` is negative, `nanos` must be negative or zero.\nFor example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.", "format": "int32", "type": "integer" }, - "eventLocations": { - "description": "Location information of where these events occurred.", - "type": "array", - "items": { - "$ref": "LatLng" - } + "units": { + "description": "The whole units of the amount.\nFor example if `currencyCode` is `\"USD\"`, then 1 unit is one US dollar.", + "format": "int64", + "type": "string" } }, - "id": "AnalyticsDataPoint", - "description": "Details of the analytics events for a `Company` within a single day.", "type": "object" }, - "Analytics": { - "description": "Analytics data for a `Company` within a single day.", - "type": "object", + "OfferCustomer": { + "description": "Customers qualified for an offer.", + "id": "OfferCustomer", "properties": { - "eventDate": { - "$ref": "Date", - "description": "Date on which these events occurred." + "adwordsUrl": { + "description": "URL to the customer's AdWords page.", + "type": "string" }, - "profileViews": { - "description": "Instances of users viewing the `Company` profile\non the specified date.", - "$ref": "AnalyticsDataPoint" + "countryCode": { + "description": "Country code of the customer.", + "type": "string" }, - "searchViews": { - "$ref": "AnalyticsDataPoint", - "description": "Instances of users seeing the `Company` in Google Partners Search results\non the specified date." + "creationTime": { + "description": "Time the customer was created.", + "format": "google-datetime", + "type": "string" }, - "contacts": { - "$ref": "AnalyticsDataPoint", - "description": "Instances of users contacting the `Company`\non the specified date." + "eligibilityDaysLeft": { + "description": "Days the customer is still eligible.", + "format": "int32", + "type": "integer" + }, + "externalCid": { + "description": "External CID for the customer.", + "format": "int64", + "type": "string" + }, + "getYAmount": { + "description": "Formatted Get Y amount with currency code.", + "type": "string" + }, + "name": { + "description": "Name of the customer.", + "type": "string" + }, + "offerType": { + "description": "Type of the offer", + "enum": [ + "OFFER_TYPE_UNSPECIFIED", + "OFFER_TYPE_SPEND_X_GET_Y", + "OFFER_TYPE_VIDEO", + "OFFER_TYPE_SPEND_MATCH" + ], + "enumDescriptions": [ + "Unset.", + "AdWords spend X get Y.", + "Youtube video.", + "Spend Match up to Y." + ], + "type": "string" + }, + "spendXAmount": { + "description": "Formatted Spend X amount with currency code.", + "type": "string" } }, - "id": "Analytics" + "type": "object" + }, + "OptIns": { + "description": "A set of opt-ins for a user.", + "id": "OptIns", + "properties": { + "marketComm": { + "description": "An opt-in about receiving email from Partners marketing teams. Includes\nmember-only events and special promotional offers for Google products.", + "type": "boolean" + }, + "performanceSuggestions": { + "description": "An opt-in about receiving email with customized AdWords campaign management\ntips.", + "type": "boolean" + }, + "phoneContact": { + "description": "An opt-in to allow recieivng phone calls about their Partners account.", + "type": "boolean" + }, + "physicalMail": { + "description": "An opt-in to receive special promotional gifts and material in the mail.", + "type": "boolean" + }, + "specialOffers": { + "description": "An opt-in about receiving email regarding new features and products.", + "type": "boolean" + } + }, + "type": "object" }, "PublicProfile": { "description": "Basic information from a public profile.", - "type": "object", + "id": "PublicProfile", "properties": { - "profileImage": { - "description": "The URL to the main profile image of the public profile.", + "displayImageUrl": { + "description": "The URL to the main display image of the public profile. Being deprecated.", "type": "string" }, "displayName": { "description": "The display name of the public profile.", "type": "string" }, - "displayImageUrl": { - "description": "The URL to the main display image of the public profile. Being deprecated.", - "type": "string" - }, "id": { "description": "The ID which can be used to retrieve more details about the public profile.", "type": "string" }, + "profileImage": { + "description": "The URL to the main profile image of the public profile.", + "type": "string" + }, "url": { "description": "The URL of the public profile.", "type": "string" } }, - "id": "PublicProfile" + "type": "object" }, - "AdWordsManagerAccountInfo": { - "description": "Information about a particular AdWords Manager Account.\nRead more at https://support.google.com/adwords/answer/6139186", - "type": "object", + "Rank": { + "description": "Information related to ranking of results.", + "id": "Rank", "properties": { - "customerName": { - "description": "Name of the customer this account represents.", + "type": { + "description": "The type of rank.", + "enum": [ + "RANK_TYPE_UNSPECIFIED", + "RT_FINAL_SCORE" + ], + "enumDescriptions": [ + "Unchosen.", + "Total final score." + ], "type": "string" }, - "id": { - "type": "string", - "description": "The AdWords Manager Account id.", - "format": "int64" + "value": { + "description": "The numerical value of the rank.", + "format": "double", + "type": "number" } }, - "id": "AdWordsManagerAccountInfo" - }, - "ResponseMetadata": { - "description": "Common data that is in each API response.", - "type": "object", - "properties": { - "debugInfo": { - "description": "Debug information about this request.", - "$ref": "DebugInfo" - } - }, - "id": "ResponseMetadata" + "type": "object" }, "RecaptchaChallenge": { "description": "\u003ca href=\"https://www.google.com/recaptcha/\"\u003ereCaptcha\u003c/a\u003e challenge info.", - "type": "object", + "id": "RecaptchaChallenge", "properties": { "id": { "description": "The ID of the reCaptcha challenge.", @@ -3122,525 +3255,272 @@ "type": "string" } }, - "id": "RecaptchaChallenge" + "type": "object" }, - "AvailableOffer": { - "description": "Available Offers to be distributed.", - "type": "object", + "RequestMetadata": { + "description": "Common data that is in each API request.", + "id": "RequestMetadata", "properties": { - "available": { - "description": "The number of codes for this offer that are available for distribution.", - "format": "int32", - "type": "integer" - }, - "description": { - "description": "Description of the offer.", - "type": "string" - }, - "offerLevel": { - "enumDescriptions": [ - "Unset.", - "Users/Agencies that have no offers because of a problem.", - "Users/Agencies that have no offers due to contractural agreements.", - "Users/Agencies that have a manually-configured limit.", - "Some Agencies don't get any offers.", - "Basic level gets 5 per month.", - "Agencies with adequate AHI and spend get 15/month.", - "Badged partners (even in grace) get 50 per month." - ], - "enum": [ - "OFFER_LEVEL_UNSPECIFIED", - "OFFER_LEVEL_DENY_PROBLEM", - "OFFER_LEVEL_DENY_CONTRACT", - "OFFER_LEVEL_MANUAL", - "OFFER_LEVEL_LIMIT_0", - "OFFER_LEVEL_LIMIT_5", - "OFFER_LEVEL_LIMIT_15", - "OFFER_LEVEL_LIMIT_50" - ], - "description": "Level of this offer.", - "type": "string" - }, - "name": { - "description": "Name of the offer.", - "type": "string" - }, - "qualifiedCustomersComplete": { - "description": "Whether or not the list of qualified customers is definitely complete.", - "type": "boolean" - }, - "id": { - "description": "ID of this offer.", - "format": "int64", - "type": "string" - }, - "countryOfferInfos": { - "description": "Offer info by country.", - "type": "array", + "experimentIds": { + "description": "Experiment IDs the current request belongs to.", "items": { - "$ref": "CountryOfferInfo" - } - }, - "offerType": { - "enumDescriptions": [ - "Unset.", - "AdWords spend X get Y.", - "Youtube video.", - "Spend Match up to Y." - ], - "enum": [ - "OFFER_TYPE_UNSPECIFIED", - "OFFER_TYPE_SPEND_X_GET_Y", - "OFFER_TYPE_VIDEO", - "OFFER_TYPE_SPEND_MATCH" - ], - "description": "Type of offer.", - "type": "string" - }, - "maxAccountAge": { - "description": "The maximum age of an account [in days] to be eligible.", - "format": "int32", - "type": "integer" - }, - "qualifiedCustomer": { - "description": "Customers who qualify for this offer.", - "type": "array", - "items": { - "$ref": "OfferCustomer" - } - }, - "terms": { - "description": "Terms of the offer.", - "type": "string" - }, - "showSpecialOfferCopy": { - "description": "Should special text be shown on the offers page.", - "type": "boolean" - } - }, - "id": "AvailableOffer" - }, - "LatLng": { - "description": "An object representing a latitude/longitude pair. This is expressed as a pair\nof doubles representing degrees latitude and degrees longitude. Unless\nspecified otherwise, this must conform to the\n\u003ca href=\"http://www.unoosa.org/pdf/icg/2012/template/WGS_84.pdf\"\u003eWGS84\nstandard\u003c/a\u003e. Values must be within normalized ranges.", - "type": "object", - "properties": { - "latitude": { - "description": "The latitude in degrees. It must be in the range [-90.0, +90.0].", - "format": "double", - "type": "number" - }, - "longitude": { - "description": "The longitude in degrees. It must be in the range [-180.0, +180.0].", - "format": "double", - "type": "number" - } - }, - "id": "LatLng" - }, - "Money": { - "id": "Money", - "description": "Represents an amount of money with its currency type.", - "type": "object", - "properties": { - "units": { - "type": "string", - "description": "The whole units of the amount.\nFor example if `currencyCode` is `\"USD\"`, then 1 unit is one US dollar.", - "format": "int64" - }, - "currencyCode": { - "description": "The 3-letter currency code defined in ISO 4217.", - "type": "string" - }, - "nanos": { - "description": "Number of nano (10^-9) units of the amount.\nThe value must be between -999,999,999 and +999,999,999 inclusive.\nIf `units` is positive, `nanos` must be positive or zero.\nIf `units` is zero, `nanos` can be positive, zero, or negative.\nIf `units` is negative, `nanos` must be negative or zero.\nFor example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.", - "format": "int32", - "type": "integer" - } - } - }, - "AnalyticsSummary": { - "description": "Analytics aggregated data for a `Company` for a given date range.", - "type": "object", - "properties": { - "searchViewsCount": { - "description": "Aggregated number of times users saw the `Company`\nin Google Partners Search results for given date range.", - "format": "int32", - "type": "integer" - }, - "contactsCount": { - "description": "Aggregated number of times users contacted the `Company`\nfor given date range.", - "format": "int32", - "type": "integer" - }, - "profileViewsCount": { - "description": "Aggregated number of profile views for the `Company` for given date range.", - "format": "int32", - "type": "integer" - } - }, - "id": "AnalyticsSummary" - }, - "LogMessageRequest": { - "description": "Request message for\nLogClientMessage.", - "type": "object", - "properties": { - "level": { - "enumDescriptions": [ - "Unchosen.", - "Message level for tracing information.", - "Message level for informational messages.", - "Message level for potential problems.", - "Message level for serious failures." - ], - "enum": [ - "MESSAGE_LEVEL_UNSPECIFIED", - "ML_FINE", - "ML_INFO", - "ML_WARNING", - "ML_SEVERE" - ], - "description": "Message level of client message.", - "type": "string" - }, - "details": { - "description": "Details about the client message.", - "type": "string" - }, - "clientInfo": { - "additionalProperties": { "type": "string" }, - "description": "Map of client info, such as URL, browser navigator, browser platform, etc.", - "type": "object" + "type": "array" }, - "requestMetadata": { - "description": "Current request metadata.", - "$ref": "RequestMetadata" + "locale": { + "description": "Locale to use for the current request.", + "type": "string" + }, + "partnersSessionId": { + "description": "Google Partners session ID.", + "type": "string" + }, + "trafficSource": { + "$ref": "TrafficSource", + "description": "Source of traffic for the current request." + }, + "userOverrides": { + "$ref": "UserOverrides", + "description": "Values to use instead of the user's respective defaults for the current\nrequest. These are only honored by whitelisted products." } }, - "id": "LogMessageRequest" + "type": "object" }, - "Lead": { - "id": "Lead", - "description": "A lead resource that represents an advertiser contact for a `Company`. These\nare usually generated via Google Partner Search (the advertiser portal).", - "type": "object", + "ResponseMetadata": { + "description": "Common data that is in each API response.", + "id": "ResponseMetadata", "properties": { - "comments": { - "description": "Comments lead source gave.", + "debugInfo": { + "$ref": "DebugInfo", + "description": "Debug information about this request." + } + }, + "type": "object" + }, + "SpecializationStatus": { + "description": "Agency specialization status", + "id": "SpecializationStatus", + "properties": { + "badgeSpecialization": { + "description": "The specialization this status is for.", + "enum": [ + "BADGE_SPECIALIZATION_UNKNOWN", + "BADGE_SPECIALIZATION_ADWORDS_SEARCH", + "BADGE_SPECIALIZATION_ADWORDS_DISPLAY", + "BADGE_SPECIALIZATION_ADWORDS_MOBILE", + "BADGE_SPECIALIZATION_ADWORDS_VIDEO", + "BADGE_SPECIALIZATION_ADWORDS_SHOPPING" + ], + "enumDescriptions": [ + "Unknown specialization", + "AdWords Search specialization", + "AdWords Display specialization", + "AdWords Mobile specialization", + "AdWords Video specialization", + "AdWords Shopping specialization" + ], "type": "string" }, + "badgeSpecializationState": { + "description": "State of agency specialization.", + "enum": [ + "BADGE_SPECIALIZATION_STATE_UNKNOWN", + "BADGE_SPECIALIZATION_STATE_PASSED", + "BADGE_SPECIALIZATION_STATE_NOT_PASSED", + "BADGE_SPECIALIZATION_STATE_IN_GRACE" + ], + "enumDescriptions": [ + "Unknown state", + "Specialization passed", + "Specialization not passed", + "Specialization in grace" + ], + "type": "string" + } + }, + "type": "object" + }, + "TrafficSource": { + "description": "Source of traffic for the current request.", + "id": "TrafficSource", + "properties": { + "trafficSourceId": { + "description": "Identifier to indicate where the traffic comes from.\nAn identifier has multiple letters created by a team which redirected the\ntraffic to us.", + "type": "string" + }, + "trafficSubId": { + "description": "Second level identifier to indicate where the traffic comes from.\nAn identifier has multiple letters created by a team which redirected the\ntraffic to us.", + "type": "string" + } + }, + "type": "object" + }, + "User": { + "description": "A resource representing a user of the Partners platform.", + "id": "User", + "properties": { + "availableAdwordsManagerAccounts": { + "description": "This is the list of AdWords Manager Accounts the user has edit access to.\nIf the user has edit access to multiple accounts, the user can choose the\npreferred account and we use this when a personal account is needed. Can\nbe empty meaning the user has access to no accounts.\n@OutputOnly", + "items": { + "$ref": "AdWordsManagerAccountInfo" + }, + "type": "array" + }, + "certificationStatus": { + "description": "The list of achieved certifications. These are calculated based on exam\nresults and other requirements.\n@OutputOnly", + "items": { + "$ref": "Certification" + }, + "type": "array" + }, + "company": { + "$ref": "CompanyRelation", + "description": "The company that the user is associated with.\nIf not present, the user is not associated with any company." + }, + "companyVerificationEmail": { + "description": "The email address used by the user used for company verification.\n@OutputOnly", + "type": "string" + }, + "examStatus": { + "description": "The list of exams the user ever taken. For each type of exam, only one\nentry is listed.", + "items": { + "$ref": "ExamStatus" + }, + "type": "array" + }, "id": { - "description": "ID of the lead.", + "description": "The ID of the user.", "type": "string" }, - "adwordsCustomerId": { - "description": "The AdWords Customer ID of the lead.", - "format": "int64", + "internalId": { + "description": "The internal user ID.\nOnly available for a whitelisted set of api clients.", "type": "string" }, - "phoneNumber": { - "description": "Phone number of lead source.", - "type": "string" - }, - "createTime": { - "description": "Timestamp of when this lead was created.", + "lastAccessTime": { + "description": "The most recent time the user interacted with the Partners site.\n@OutputOnly", "format": "google-datetime", "type": "string" }, - "marketingOptIn": { - "description": "Whether or not the lead signed up for marketing emails", - "type": "boolean" + "primaryEmails": { + "description": "The list of emails the user has access to/can select as primary.\n@OutputOnly", + "items": { + "type": "string" + }, + "type": "array" }, - "type": { - "enumDescriptions": [ - "Unchosen.", - "Google Partner Search." - ], - "enum": [ - "LEAD_TYPE_UNSPECIFIED", - "LT_GPS" - ], - "description": "Type of lead.", + "profile": { + "$ref": "UserProfile", + "description": "The profile information of a Partners user, contains all the directly\neditable user information." + }, + "publicProfile": { + "$ref": "PublicProfile", + "description": "Information about a user's external public profile outside Google Partners." + } + }, + "type": "object" + }, + "UserOverrides": { + "description": "Values to use instead of the user's respective defaults. These are only\nhonored by whitelisted products.", + "id": "UserOverrides", + "properties": { + "ipAddress": { + "description": "IP address to use instead of the user's geo-located IP address.", + "type": "string" + }, + "userId": { + "description": "Logged-in user ID to impersonate instead of the user's ID.", + "type": "string" + } + }, + "type": "object" + }, + "UserProfile": { + "description": "The profile information of a Partners user.", + "id": "UserProfile", + "properties": { + "address": { + "$ref": "Location", + "description": "The user's mailing address, contains multiple fields." + }, + "adwordsManagerAccount": { + "description": "If the user has edit access to multiple accounts, the user can choose the\npreferred account and it is used when a personal account is needed. Can\nbe empty.", + "format": "int64", + "type": "string" + }, + "channels": { + "description": "A list of ids representing which channels the user selected they were in.", + "items": { + "type": "string" + }, + "type": "array" + }, + "emailAddress": { + "description": "The email address the user has selected on the Partners site as primary.", + "type": "string" + }, + "emailOptIns": { + "$ref": "OptIns", + "description": "The list of opt-ins for the user, related to communication preferences." + }, + "familyName": { + "description": "The user's family name.", "type": "string" }, "givenName": { - "description": "First name of lead source.", + "description": "The user's given name.", "type": "string" }, - "minMonthlyBudget": { - "$ref": "Money", - "description": "The minimum monthly budget lead source is willing to spend." - }, - "languageCode": { - "description": "Language code of the lead's language preference, as defined by\n\u003ca href=\"https://tools.ietf.org/html/bcp47\"\u003eBCP 47\u003c/a\u003e\n(IETF BCP 47, \"Tags for Identifying Languages\").", - "type": "string" - }, - "websiteUrl": { - "description": "Website URL of lead source.", - "type": "string" - }, - "gpsMotivations": { - "enumDescriptions": [ - "Unchosen.", - "Advertiser needs help with their advertising.", - "Advertiser needs help with their website.", - "Advertiser does not have a website." - ], - "description": "List of reasons for using Google Partner Search and creating a lead.", - "type": "array", + "industries": { + "description": "A list of ids representing which industries the user selected.", "items": { - "enum": [ - "GPS_MOTIVATION_UNSPECIFIED", - "GPSM_HELP_WITH_ADVERTISING", - "GPSM_HELP_WITH_WEBSITE", - "GPSM_NO_WEBSITE" - ], - "type": "string" - } - }, - "state": { - "description": "The lead's state in relation to the company.", - "type": "string", - "enumDescriptions": [ - "Unchosen.", - "Lead not yet contacted.", - "Lead has been contacted.", - "Lead has become a client.", - "Lead in a state not covered by other options." - ], - "enum": [ - "LEAD_STATE_UNSPECIFIED", - "LEAD", - "CONTACTED", - "CLIENT", - "OTHER" - ] - }, - "email": { - "description": "Email address of lead source.", - "type": "string" - }, - "familyName": { - "description": "Last name of lead source.", - "type": "string" - } - } - }, - "DebugInfo": { - "description": "Debug information about this request.", - "type": "object", - "properties": { - "serverInfo": { - "description": "Info about the server that serviced this request.", - "type": "string" - }, - "serverTraceInfo": { - "description": "Server-side debug stack trace.", - "type": "string" - }, - "serviceUrl": { - "description": "URL of the service that handled this request.", - "type": "string" - } - }, - "id": "DebugInfo" - }, - "ListUserStatesResponse": { - "description": "Response message for\nListUserStates.", - "type": "object", - "properties": { - "responseMetadata": { - "description": "Current response metadata.", - "$ref": "ResponseMetadata" - }, - "userStates": { - "description": "User's states.", - "type": "array", - "items": { - "enum": [ - "USER_STATE_UNSPECIFIED", - "US_REQUIRES_RECAPTCHA_FOR_GPS_CONTACT" - ], "type": "string" }, - "enumDescriptions": [ - "Unchosen.", - "User must pass \u003ca href=\"https://www.google.com/recaptcha/\"\u003ereCaptcha\u003c/a\u003e to\ncontact a Partner via Google Partner Search." - ] - } - }, - "id": "ListUserStatesResponse" - }, - "CompanyRelation": { - "description": "A CompanyRelation resource representing information about a user's\naffiliation and standing with a company in Partners.", - "type": "object", - "properties": { - "logoUrl": { - "type": "string", - "description": "A URL to a profile photo, e.g. a G+ profile photo." + "type": "array" }, - "resolvedTimestamp": { - "description": "The timestamp when the user was approved.\n@OutputOnly", - "format": "google-datetime", - "type": "string" - }, - "companyAdmin": { - "description": "Indicates if the user is an admin for this company.", - "type": "boolean" - }, - "address": { - "description": "The primary address for this company.", - "type": "string" - }, - "isPending": { - "description": "The flag that indicates if the company is pending verification.", - "type": "boolean" - }, - "creationTime": { - "description": "The timestamp of when affiliation was requested.\n@OutputOnly", - "format": "google-datetime", - "type": "string" - }, - "state": { - "enumDescriptions": [ - "Default unspecified value.", - "User has filled in a request to be associated with an company.\nNow waiting email confirmation.", - "Pending approval from company.\nEmail confirmation will not approve this one.", - "Approved by company." - ], - "enum": [ - "USER_COMPANY_REATION_STATE_NONE_SPECIFIED", - "USER_COMPANY_RELATION_STATE_AWAIT_EMAIL", - "USER_COMPANY_RELATION_STATE_AWAIT_ADMIN", - "USER_COMPANY_RELATION_STATE_APPROVED" - ], - "description": "The state of relationship, in terms of approvals.", - "type": "string" - }, - "primaryAddress": { - "$ref": "Location", - "description": "The primary location of the company." - }, - "managerAccount": { - "description": "The AdWords manager account # associated this company.", - "format": "int64", - "type": "string" - }, - "name": { - "description": "The name (in the company's primary language) for the company.", - "type": "string" - }, - "segment": { - "description": "The segment the company is classified as.", - "type": "array", + "jobFunctions": { + "description": "A list of ids represnting which job categories the user selected.", "items": { - "type": "string", - "enum": [ - "COMPANY_SEGMENT_UNKNOWN", - "COMPANY_SEGMENT_NAL", - "COMPANY_SEGMENT_PSP", - "COMPANY_SEGMENT_PPSP" - ] + "type": "string" }, - "enumDescriptions": [ - "Default segment indicates an unknown.", - "Segment representing a selected group of Partners", - "Segment representing Premier SMB Partners, an AdWords partnership program.", - "A segment of Premier SMB Partners that have relationship with Google." - ] + "type": "array" }, - "internalCompanyId": { - "description": "The internal company ID.\nOnly available for a whitelisted set of api clients.", - "type": "string" - }, - "badgeTier": { - "enumDescriptions": [ - "Tier badge is not set.", - "Agency has regular partner badge.", - "Agency has premier badge." - ], - "enum": [ - "BADGE_TIER_NONE", - "BADGE_TIER_REGULAR", - "BADGE_TIER_PREMIER" - ], - "description": "Whether the company is a Partner.", - "type": "string" - }, - "specializationStatus": { - "description": "The list of Google Partners specialization statuses for the company.", - "type": "array", + "languages": { + "description": "The list of languages this user understands.", "items": { - "$ref": "SpecializationStatus" - } + "type": "string" + }, + "type": "array" + }, + "markets": { + "description": "A list of ids representing which markets the user was interested in.", + "items": { + "type": "string" + }, + "type": "array" + }, + "migrateToAfa": { + "description": "Whether or not to migrate the user's exam data to Academy for Ads.", + "type": "boolean" }, "phoneNumber": { - "type": "string", - "description": "The phone number for the company's primary address." - }, - "website": { - "type": "string", - "description": "The website URL for this company." + "description": "The user's phone number.", + "type": "string" }, "primaryCountryCode": { - "description": "The primary country code of the company.", + "description": "The user's primary country, an ISO 2-character code.", "type": "string" }, - "companyId": { - "description": "The ID of the company. There may be no id if this is a\npending company.5", - "type": "string" - }, - "primaryLanguageCode": { - "description": "The primary language code of the company.", - "type": "string" + "profilePublic": { + "description": "Whether the user's public profile is visible to anyone with the URL.", + "type": "boolean" } }, - "id": "CompanyRelation" - }, - "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`.", - "type": "object", - "properties": { - "year": { - "description": "Year of date. Must be from 1 to 9999, or 0 if specifying a date without\na year.", - "format": "int32", - "type": "integer" - }, - "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" - }, - "month": { - "description": "Month of year. Must be from 1 to 12.", - "format": "int32", - "type": "integer" - } - }, - "id": "Date" + "type": "object" } }, - "protocol": "rest", - "icons": { - "x32": "http://www.google.com/images/icons/product/search-32.gif", - "x16": "http://www.google.com/images/icons/product/search-16.gif" - }, - "version": "v2", - "baseUrl": "https://partners.googleapis.com/", - "canonicalName": "Partners", - "kind": "discovery#restDescription", - "description": "Searches certified companies and creates contact leads with them, and also audits the usage of clients.", "servicePath": "", - "rootUrl": "https://partners.googleapis.com/", - "basePath": "", - "ownerDomain": "google.com", - "name": "partners", - "batchPath": "batch", - "id": "partners:v2", - "documentationLink": "https://developers.google.com/partners/", - "revision": "20180118", "title": "Google Partners API", - "ownerName": "Google", - "discoveryVersion": "v1", + "version": "v2", "version_module": true -} +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/partners/v2/partners-gen.go b/vendor/google.golang.org/api/partners/v2/partners-gen.go index d3216efda..863216b95 100644 --- a/vendor/google.golang.org/api/partners/v2/partners-gen.go +++ b/vendor/google.golang.org/api/partners/v2/partners-gen.go @@ -53,7 +53,6 @@ func New(client *http.Client) (*Service, error) { s.Analytics = NewAnalyticsService(s) s.ClientMessages = NewClientMessagesService(s) s.Companies = NewCompaniesService(s) - s.Exams = NewExamsService(s) s.Leads = NewLeadsService(s) s.Offers = NewOffersService(s) s.UserEvents = NewUserEventsService(s) @@ -74,8 +73,6 @@ type Service struct { Companies *CompaniesService - Exams *ExamsService - Leads *LeadsService Offers *OffersService @@ -135,15 +132,6 @@ type CompaniesLeadsService struct { s *Service } -func NewExamsService(s *Service) *ExamsService { - rs := &ExamsService{s: s} - return rs -} - -type ExamsService struct { - s *Service -} - func NewLeadsService(s *Service) *LeadsService { rs := &LeadsService{s: s} return rs @@ -1252,57 +1240,6 @@ func (s *ExamStatus) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -// ExamToken: A token that allows a user to take an exam. -type ExamToken struct { - // ExamId: The id of the exam the token is for. - ExamId int64 `json:"examId,omitempty,string"` - - // ExamType: The type of the exam the token belongs to. - // - // Possible values: - // "CERTIFICATION_EXAM_TYPE_UNSPECIFIED" - Unchosen. - // "CET_ADWORDS_FUNDAMENTALS" - Adwords Fundamentals exam. - // "CET_ADWORDS_ADVANCED_SEARCH" - AdWords advanced search exam. - // "CET_ADWORDS_ADVANCED_DISPLAY" - AdWords advanced display exam. - // "CET_VIDEO_ADS" - VideoAds exam. - // "CET_DOUBLECLICK" - DoubleClick exam. - // "CET_ANALYTICS" - Analytics exam. - // "CET_SHOPPING" - Shopping exam. - // "CET_MOBILE" - Mobile exam. - // "CET_DIGITAL_SALES" - Digital Sales exam. - // "CET_MOBILE_SITES" - Mobile Sites exam. - ExamType string `json:"examType,omitempty"` - - // Token: The token, only present if the user has access to the exam. - Token string `json:"token,omitempty"` - - // ServerResponse contains the HTTP response code and headers from the - // server. - googleapi.ServerResponse `json:"-"` - - // ForceSendFields is a list of field names (e.g. "ExamId") to - // unconditionally include in API requests. By default, fields with - // empty values are omitted from API requests. However, any non-pointer, - // non-interface field appearing in ForceSendFields will be sent to the - // server regardless of whether the field is empty or not. This may be - // used to include empty fields in Patch requests. - ForceSendFields []string `json:"-"` - - // NullFields is a list of field names (e.g. "ExamId") to include in API - // requests with the JSON null value. By default, fields with empty - // values are omitted from API requests. However, any field with an - // empty value appearing in NullFields will be sent to the server as - // null. It is an error if a field in this list has a non-empty value. - // This may be used to include null fields in Patch requests. - NullFields []string `json:"-"` -} - -func (s *ExamToken) MarshalJSON() ([]byte, error) { - type NoMethod ExamToken - raw := NoMethod(*s) - return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) -} - // GetCompanyResponse: Response message for GetCompany. type GetCompanyResponse struct { // Company: The company. @@ -4559,251 +4496,6 @@ func (c *CompaniesLeadsCreateCall) Do(opts ...googleapi.CallOption) (*CreateLead } -// method id "partners.exams.getToken": - -type ExamsGetTokenCall struct { - s *Service - examType string - urlParams_ gensupport.URLParams - ifNoneMatch_ string - ctx_ context.Context - header_ http.Header -} - -// GetToken: Gets an Exam Token for a Partner's user to take an exam in -// the Exams System -func (r *ExamsService) GetToken(examType string) *ExamsGetTokenCall { - c := &ExamsGetTokenCall{s: r.s, urlParams_: make(gensupport.URLParams)} - c.examType = examType - return c -} - -// RequestMetadataExperimentIds sets the optional parameter -// "requestMetadata.experimentIds": Experiment IDs the current request -// belongs to. -func (c *ExamsGetTokenCall) RequestMetadataExperimentIds(requestMetadataExperimentIds ...string) *ExamsGetTokenCall { - c.urlParams_.SetMulti("requestMetadata.experimentIds", append([]string{}, requestMetadataExperimentIds...)) - return c -} - -// RequestMetadataLocale sets the optional parameter -// "requestMetadata.locale": Locale to use for the current request. -func (c *ExamsGetTokenCall) RequestMetadataLocale(requestMetadataLocale string) *ExamsGetTokenCall { - c.urlParams_.Set("requestMetadata.locale", requestMetadataLocale) - return c -} - -// RequestMetadataPartnersSessionId sets the optional parameter -// "requestMetadata.partnersSessionId": Google Partners session ID. -func (c *ExamsGetTokenCall) RequestMetadataPartnersSessionId(requestMetadataPartnersSessionId string) *ExamsGetTokenCall { - c.urlParams_.Set("requestMetadata.partnersSessionId", requestMetadataPartnersSessionId) - return c -} - -// RequestMetadataTrafficSourceTrafficSourceId sets the optional -// parameter "requestMetadata.trafficSource.trafficSourceId": Identifier -// to indicate where the traffic comes from. -// An identifier has multiple letters created by a team which redirected -// the -// traffic to us. -func (c *ExamsGetTokenCall) RequestMetadataTrafficSourceTrafficSourceId(requestMetadataTrafficSourceTrafficSourceId string) *ExamsGetTokenCall { - c.urlParams_.Set("requestMetadata.trafficSource.trafficSourceId", requestMetadataTrafficSourceTrafficSourceId) - return c -} - -// RequestMetadataTrafficSourceTrafficSubId sets the optional parameter -// "requestMetadata.trafficSource.trafficSubId": Second level identifier -// to indicate where the traffic comes from. -// An identifier has multiple letters created by a team which redirected -// the -// traffic to us. -func (c *ExamsGetTokenCall) RequestMetadataTrafficSourceTrafficSubId(requestMetadataTrafficSourceTrafficSubId string) *ExamsGetTokenCall { - c.urlParams_.Set("requestMetadata.trafficSource.trafficSubId", requestMetadataTrafficSourceTrafficSubId) - return c -} - -// RequestMetadataUserOverridesIpAddress sets the optional parameter -// "requestMetadata.userOverrides.ipAddress": IP address to use instead -// of the user's geo-located IP address. -func (c *ExamsGetTokenCall) RequestMetadataUserOverridesIpAddress(requestMetadataUserOverridesIpAddress string) *ExamsGetTokenCall { - c.urlParams_.Set("requestMetadata.userOverrides.ipAddress", requestMetadataUserOverridesIpAddress) - return c -} - -// RequestMetadataUserOverridesUserId sets the optional parameter -// "requestMetadata.userOverrides.userId": Logged-in user ID to -// impersonate instead of the user's ID. -func (c *ExamsGetTokenCall) RequestMetadataUserOverridesUserId(requestMetadataUserOverridesUserId string) *ExamsGetTokenCall { - c.urlParams_.Set("requestMetadata.userOverrides.userId", requestMetadataUserOverridesUserId) - return c -} - -// Fields allows partial responses to be retrieved. See -// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse -// for more information. -func (c *ExamsGetTokenCall) Fields(s ...googleapi.Field) *ExamsGetTokenCall { - c.urlParams_.Set("fields", googleapi.CombineFields(s)) - return c -} - -// IfNoneMatch sets the optional parameter which makes the operation -// fail if the object's ETag matches the given value. This is useful for -// getting updates only after the object has changed since the last -// request. Use googleapi.IsNotModified to check whether the response -// error from Do is the result of In-None-Match. -func (c *ExamsGetTokenCall) IfNoneMatch(entityTag string) *ExamsGetTokenCall { - c.ifNoneMatch_ = entityTag - return c -} - -// Context sets the context to be used in this call's Do method. Any -// pending HTTP request will be aborted if the provided context is -// canceled. -func (c *ExamsGetTokenCall) Context(ctx context.Context) *ExamsGetTokenCall { - c.ctx_ = ctx - return c -} - -// Header returns an http.Header that can be modified by the caller to -// add HTTP headers to the request. -func (c *ExamsGetTokenCall) Header() http.Header { - if c.header_ == nil { - c.header_ = make(http.Header) - } - return c.header_ -} - -func (c *ExamsGetTokenCall) doRequest(alt string) (*http.Response, error) { - reqHeaders := make(http.Header) - for k, v := range c.header_ { - reqHeaders[k] = v - } - reqHeaders.Set("User-Agent", c.s.userAgent()) - if c.ifNoneMatch_ != "" { - reqHeaders.Set("If-None-Match", c.ifNoneMatch_) - } - var body io.Reader = nil - c.urlParams_.Set("alt", alt) - urls := googleapi.ResolveRelative(c.s.BasePath, "v2/exams/{examType}/token") - urls += "?" + c.urlParams_.Encode() - req, _ := http.NewRequest("GET", urls, body) - req.Header = reqHeaders - googleapi.Expand(req.URL, map[string]string{ - "examType": c.examType, - }) - return gensupport.SendRequest(c.ctx_, c.s.client, req) -} - -// Do executes the "partners.exams.getToken" call. -// Exactly one of *ExamToken or error will be non-nil. Any non-2xx -// status code is an error. Response headers are in either -// *ExamToken.ServerResponse.Header or (if a response was returned at -// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified -// to check whether the returned error was because -// http.StatusNotModified was returned. -func (c *ExamsGetTokenCall) Do(opts ...googleapi.CallOption) (*ExamToken, error) { - gensupport.SetOptions(c.urlParams_, opts...) - res, err := c.doRequest("json") - if res != nil && res.StatusCode == http.StatusNotModified { - if res.Body != nil { - res.Body.Close() - } - return nil, &googleapi.Error{ - Code: res.StatusCode, - Header: res.Header, - } - } - if err != nil { - return nil, err - } - defer googleapi.CloseBody(res) - if err := googleapi.CheckResponse(res); err != nil { - return nil, err - } - ret := &ExamToken{ - ServerResponse: googleapi.ServerResponse{ - Header: res.Header, - HTTPStatusCode: res.StatusCode, - }, - } - target := &ret - if err := gensupport.DecodeResponse(target, res); err != nil { - return nil, err - } - return ret, nil - // { - // "description": "Gets an Exam Token for a Partner's user to take an exam in the Exams System", - // "flatPath": "v2/exams/{examType}/token", - // "httpMethod": "GET", - // "id": "partners.exams.getToken", - // "parameterOrder": [ - // "examType" - // ], - // "parameters": { - // "examType": { - // "description": "The exam type we are requesting a token for.", - // "enum": [ - // "CERTIFICATION_EXAM_TYPE_UNSPECIFIED", - // "CET_ADWORDS_FUNDAMENTALS", - // "CET_ADWORDS_ADVANCED_SEARCH", - // "CET_ADWORDS_ADVANCED_DISPLAY", - // "CET_VIDEO_ADS", - // "CET_DOUBLECLICK", - // "CET_ANALYTICS", - // "CET_SHOPPING", - // "CET_MOBILE", - // "CET_DIGITAL_SALES", - // "CET_MOBILE_SITES" - // ], - // "location": "path", - // "required": true, - // "type": "string" - // }, - // "requestMetadata.experimentIds": { - // "description": "Experiment IDs the current request belongs to.", - // "location": "query", - // "repeated": true, - // "type": "string" - // }, - // "requestMetadata.locale": { - // "description": "Locale to use for the current request.", - // "location": "query", - // "type": "string" - // }, - // "requestMetadata.partnersSessionId": { - // "description": "Google Partners session ID.", - // "location": "query", - // "type": "string" - // }, - // "requestMetadata.trafficSource.trafficSourceId": { - // "description": "Identifier to indicate where the traffic comes from.\nAn identifier has multiple letters created by a team which redirected the\ntraffic to us.", - // "location": "query", - // "type": "string" - // }, - // "requestMetadata.trafficSource.trafficSubId": { - // "description": "Second level identifier to indicate where the traffic comes from.\nAn identifier has multiple letters created by a team which redirected the\ntraffic to us.", - // "location": "query", - // "type": "string" - // }, - // "requestMetadata.userOverrides.ipAddress": { - // "description": "IP address to use instead of the user's geo-located IP address.", - // "location": "query", - // "type": "string" - // }, - // "requestMetadata.userOverrides.userId": { - // "description": "Logged-in user ID to impersonate instead of the user's ID.", - // "location": "query", - // "type": "string" - // } - // }, - // "path": "v2/exams/{examType}/token", - // "response": { - // "$ref": "ExamToken" - // } - // } - -} - // method id "partners.leads.list": type LeadsListCall struct { diff --git a/vendor/google.golang.org/api/people/v1/people-api.json b/vendor/google.golang.org/api/people/v1/people-api.json index 249a62ec8..5e78a1585 100644 --- a/vendor/google.golang.org/api/people/v1/people-api.json +++ b/vendor/google.golang.org/api/people/v1/people-api.json @@ -1,946 +1,636 @@ { - "rootUrl": "https://people.googleapis.com/", - "ownerDomain": "google.com", - "name": "people", - "batchPath": "batch", - "title": "Google People API", - "ownerName": "Google", - "resources": { - "people": { - "resources": { - "connections": { - "methods": { - "list": { - "path": "v1/{+resourceName}/connections", - "id": "people.people.connections.list", - "description": "Provides a list of the authenticated user's contacts merged with any\nconnected profiles.\n\u003cbr\u003e\nThe request throws a 400 error if 'personFields' is not specified.", - "response": { - "$ref": "ListConnectionsResponse" - }, - "parameterOrder": [ - "resourceName" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/contacts", - "https://www.googleapis.com/auth/contacts.readonly" - ], - "parameters": { - "syncToken": { - "location": "query", - "description": "A sync token returned by a previous call to `people.connections.list`.\nOnly resources changed since the sync token was created will be returned.\nSync requests that specify `sync_token` have an additional rate limit.", - "type": "string" - }, - "personFields": { - "location": "query", - "description": "**Required.** A field mask to restrict which fields on each person are\nreturned. Valid values are:\n\n* addresses\n* ageRanges\n* biographies\n* birthdays\n* braggingRights\n* coverPhotos\n* emailAddresses\n* events\n* genders\n* imClients\n* interests\n* locales\n* memberships\n* metadata\n* names\n* nicknames\n* occupations\n* organizations\n* phoneNumbers\n* photos\n* relations\n* relationshipInterests\n* relationshipStatuses\n* residences\n* skills\n* taglines\n* urls", - "format": "google-fieldmask", - "type": "string" - }, - "sortOrder": { - "location": "query", - "enum": [ - "LAST_MODIFIED_ASCENDING", - "FIRST_NAME_ASCENDING", - "LAST_NAME_ASCENDING" - ], - "description": "The order in which the connections should be sorted. Defaults to\n`LAST_MODIFIED_ASCENDING`.", - "type": "string" - }, - "requestSyncToken": { - "location": "query", - "description": "Whether the response should include a sync token, which can be used to get\nall changes since the last request. For subsequent sync requests use the\n`sync_token` param instead. Initial sync requests that specify\n`request_sync_token` have an additional rate limit.", - "type": "boolean" - }, - "resourceName": { - "location": "path", - "description": "The resource name to return connections for. Only `people/me` is valid.", - "required": true, - "type": "string", - "pattern": "^people/[^/]+$" - }, - "pageToken": { - "location": "query", - "description": "The token of the page to be returned.", - "type": "string" - }, - "requestMask.includeField": { - "location": "query", - "description": "**Required.** Comma-separated list of person fields to be included in the\nresponse. Each path should start with `person.`: for example,\n`person.names` or `person.photos`.", - "format": "google-fieldmask", - "type": "string" - }, - "pageSize": { - "description": "The number of connections to include in the response. Valid values are\nbetween 1 and 2000, inclusive. Defaults to 100.", - "format": "int32", - "type": "integer", - "location": "query" - } - }, - "flatPath": "v1/people/{peopleId}/connections" - } - } - } - }, - "methods": { - "getBatchGet": { - "response": { - "$ref": "GetPeopleResponse" - }, - "parameterOrder": [], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/contacts", - "https://www.googleapis.com/auth/contacts.readonly", - "https://www.googleapis.com/auth/plus.login", - "https://www.googleapis.com/auth/user.addresses.read", - "https://www.googleapis.com/auth/user.birthday.read", - "https://www.googleapis.com/auth/user.emails.read", - "https://www.googleapis.com/auth/user.phonenumbers.read", - "https://www.googleapis.com/auth/userinfo.email", - "https://www.googleapis.com/auth/userinfo.profile" - ], - "parameters": { - "requestMask.includeField": { - "description": "**Required.** Comma-separated list of person fields to be included in the\nresponse. Each path should start with `person.`: for example,\n`person.names` or `person.photos`.", - "format": "google-fieldmask", - "type": "string", - "location": "query" - }, - "resourceNames": { - "description": "The resource names of the people to provide information about.\n\n- To get information about the authenticated user, specify `people/me`.\n- To get information about a google account, specify\n `people/`\u003cvar\u003eaccount_id\u003c/var\u003e.\n- To get information about a contact, specify the resource name that\n identifies the contact as returned by\n[`people.connections.list`](/people/api/rest/v1/people.connections/list).\n\nYou can include up to 50 resource names in one request.", - "type": "string", - "repeated": true, - "location": "query" - }, - "personFields": { - "description": "**Required.** A field mask to restrict which fields on each person are\nreturned. Valid values are:\n\n* addresses\n* ageRanges\n* biographies\n* birthdays\n* braggingRights\n* coverPhotos\n* emailAddresses\n* events\n* genders\n* imClients\n* interests\n* locales\n* memberships\n* metadata\n* names\n* nicknames\n* occupations\n* organizations\n* phoneNumbers\n* photos\n* relations\n* relationshipInterests\n* relationshipStatuses\n* residences\n* skills\n* taglines\n* urls", - "format": "google-fieldmask", - "type": "string", - "location": "query" - } - }, - "flatPath": "v1/people:batchGet", - "path": "v1/people:batchGet", - "id": "people.people.getBatchGet", - "description": "Provides information about a list of specific people by specifying a list\nof requested resource names. Use `people/me` to indicate the authenticated\nuser.\n\u003cbr\u003e\nThe request throws a 400 error if 'personFields' is not specified." + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/contacts": { + "description": "Manage your contacts" }, - "get": { - "path": "v1/{+resourceName}", - "id": "people.people.get", - "description": "Provides information about a person by specifying a resource name. Use\n`people/me` to indicate the authenticated user.\n\u003cbr\u003e\nThe request throws a 400 error if 'personFields' is not specified.", - "response": { - "$ref": "Person" - }, - "parameterOrder": [ - "resourceName" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/contacts", - "https://www.googleapis.com/auth/contacts.readonly", - "https://www.googleapis.com/auth/plus.login", - "https://www.googleapis.com/auth/user.addresses.read", - "https://www.googleapis.com/auth/user.birthday.read", - "https://www.googleapis.com/auth/user.emails.read", - "https://www.googleapis.com/auth/user.phonenumbers.read", - "https://www.googleapis.com/auth/userinfo.email", - "https://www.googleapis.com/auth/userinfo.profile" - ], - "parameters": { - "requestMask.includeField": { - "description": "**Required.** Comma-separated list of person fields to be included in the\nresponse. Each path should start with `person.`: for example,\n`person.names` or `person.photos`.", - "format": "google-fieldmask", - "type": "string", - "location": "query" - }, - "resourceName": { - "description": "The resource name of the person to provide information about.\n\n- To get information about the authenticated user, specify `people/me`.\n- To get information about a google account, specify\n `people/`\u003cvar\u003eaccount_id\u003c/var\u003e.\n- To get information about a contact, specify the resource name that\n identifies the contact as returned by\n[`people.connections.list`](/people/api/rest/v1/people.connections/list).", - "required": true, - "type": "string", - "pattern": "^people/[^/]+$", - "location": "path" - }, - "personFields": { - "location": "query", - "description": "**Required.** A field mask to restrict which fields on the person are\nreturned. Valid values are:\n\n* addresses\n* ageRanges\n* biographies\n* birthdays\n* braggingRights\n* coverPhotos\n* emailAddresses\n* events\n* genders\n* imClients\n* interests\n* locales\n* memberships\n* metadata\n* names\n* nicknames\n* occupations\n* organizations\n* phoneNumbers\n* photos\n* relations\n* relationshipInterests\n* relationshipStatuses\n* residences\n* skills\n* taglines\n* urls", - "format": "google-fieldmask", - "type": "string" - } - }, - "flatPath": "v1/people/{peopleId}" + "https://www.googleapis.com/auth/contacts.readonly": { + "description": "View your contacts" }, - "updateContact": { - "description": "Update contact data for an existing contact person. Any non-contact data\nwill not be modified.\n\nThe request throws a 400 error if `updatePersonFields` is not specified.\n\u003cbr\u003e\nThe request throws a 400 error if `person.metadata.sources` is not\nspecified for the contact to be updated.\n\u003cbr\u003e\nThe request throws a 412 error if `person.metadata.sources.etag` is\ndifferent than the contact's etag, which indicates the contact has changed\nsince its data was read. Clients should get the latest person and re-apply\ntheir updates to the latest person.", - "request": { - "$ref": "Person" - }, - "response": { - "$ref": "Person" - }, - "parameterOrder": [ - "resourceName" - ], - "httpMethod": "PATCH", - "scopes": [ - "https://www.googleapis.com/auth/contacts" - ], - "parameters": { - "resourceName": { - "description": "The resource name for the person, assigned by the server. An ASCII string\nwith a max length of 27 characters, in the form of\n`people/`\u003cvar\u003eperson_id\u003c/var\u003e.", - "required": true, - "type": "string", - "pattern": "^people/[^/]+$", - "location": "path" - }, - "updatePersonFields": { - "location": "query", - "description": "**Required.** A field mask to restrict which fields on the person are\nupdated. Valid values are:\n\n* addresses\n* biographies\n* birthdays\n* braggingRights\n* emailAddresses\n* events\n* genders\n* imClients\n* interests\n* locales\n* names\n* nicknames\n* occupations\n* organizations\n* phoneNumbers\n* relations\n* residences\n* skills\n* urls", - "format": "google-fieldmask", - "type": "string" - } - }, - "flatPath": "v1/people/{peopleId}:updateContact", - "path": "v1/{+resourceName}:updateContact", - "id": "people.people.updateContact" + "https://www.googleapis.com/auth/plus.login": { + "description": "Know the list of people in your circles, your age range, and language" }, - "createContact": { - "httpMethod": "POST", - "parameterOrder": [], - "response": { - "$ref": "Person" - }, - "parameters": { - "parent": { - "location": "query", - "description": "The resource name of the owning person resource.", - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/contacts" - ], - "flatPath": "v1/people:createContact", - "id": "people.people.createContact", - "path": "v1/people:createContact", - "request": { - "$ref": "Person" - }, - "description": "Create a new contact and return the person resource for that contact." + "https://www.googleapis.com/auth/user.addresses.read": { + "description": "View your street addresses" }, - "deleteContact": { - "flatPath": "v1/people/{peopleId}:deleteContact", - "path": "v1/{+resourceName}:deleteContact", - "id": "people.people.deleteContact", - "description": "Delete a contact person. Any non-contact data will not be deleted.", - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "resourceName" - ], - "httpMethod": "DELETE", - "scopes": [ - "https://www.googleapis.com/auth/contacts" - ], - "parameters": { - "resourceName": { - "description": "The resource name of the contact to delete.", - "required": true, - "type": "string", - "pattern": "^people/[^/]+$", - "location": "path" - } - } - } - } - }, - "contactGroups": { - "resources": { - "members": { - "methods": { - "modify": { - "httpMethod": "POST", - "parameterOrder": [ - "resourceName" - ], - "response": { - "$ref": "ModifyContactGroupMembersResponse" - }, - "parameters": { - "resourceName": { - "pattern": "^contactGroups/[^/]+$", - "location": "path", - "description": "The resource name of the contact group to modify.", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/contacts" - ], - "flatPath": "v1/contactGroups/{contactGroupsId}/members:modify", - "id": "people.contactGroups.members.modify", - "path": "v1/{+resourceName}/members:modify", - "request": { - "$ref": "ModifyContactGroupMembersRequest" - }, - "description": "Modify the members of a contact group owned by the authenticated user." - } - } - } - }, - "methods": { - "create": { - "response": { - "$ref": "ContactGroup" - }, - "parameterOrder": [], - "httpMethod": "POST", - "parameters": {}, - "scopes": [ - "https://www.googleapis.com/auth/contacts" - ], - "flatPath": "v1/contactGroups", - "path": "v1/contactGroups", - "id": "people.contactGroups.create", - "request": { - "$ref": "CreateContactGroupRequest" - }, - "description": "Create a new contact group owned by the authenticated user." + "https://www.googleapis.com/auth/user.birthday.read": { + "description": "View your complete date of birth" }, - "get": { - "description": "Get a specific contact group owned by the authenticated user by specifying\na contact group resource name.", - "response": { - "$ref": "ContactGroup" - }, - "parameterOrder": [ - "resourceName" - ], - "httpMethod": "GET", - "parameters": { - "maxMembers": { - "location": "query", - "description": "Specifies the maximum number of members to return.", - "format": "int32", - "type": "integer" - }, - "resourceName": { - "location": "path", - "description": "The resource name of the contact group to get.", - "required": true, - "type": "string", - "pattern": "^contactGroups/[^/]+$" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/contacts", - "https://www.googleapis.com/auth/contacts.readonly" - ], - "flatPath": "v1/contactGroups/{contactGroupsId}", - "path": "v1/{+resourceName}", - "id": "people.contactGroups.get" + "https://www.googleapis.com/auth/user.emails.read": { + "description": "View your email addresses" }, - "update": { - "request": { - "$ref": "UpdateContactGroupRequest" - }, - "description": "Update the name of an existing contact group owned by the authenticated\nuser.", - "response": { - "$ref": "ContactGroup" - }, - "parameterOrder": [ - "resourceName" - ], - "httpMethod": "PUT", - "parameters": { - "resourceName": { - "location": "path", - "description": "The resource name for the contact group, assigned by the server. An ASCII\nstring, in the form of `contactGroups/`\u003cvar\u003econtact_group_id\u003c/var\u003e.", - "required": true, - "type": "string", - "pattern": "^contactGroups/[^/]+$" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/contacts" - ], - "flatPath": "v1/contactGroups/{contactGroupsId}", - "path": "v1/{+resourceName}", - "id": "people.contactGroups.update" + "https://www.googleapis.com/auth/user.phonenumbers.read": { + "description": "View your phone numbers" }, - "batchGet": { - "description": "Get a list of contact groups owned by the authenticated user by specifying\na list of contact group resource names.", - "httpMethod": "GET", - "parameterOrder": [], - "response": { - "$ref": "BatchGetContactGroupsResponse" - }, - "parameters": { - "resourceNames": { - "description": "The resource names of the contact groups to get.", - "type": "string", - "repeated": true, - "location": "query" - }, - "maxMembers": { - "description": "Specifies the maximum number of members to return for each group.", - "format": "int32", - "type": "integer", - "location": "query" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/contacts", - "https://www.googleapis.com/auth/contacts.readonly" - ], - "flatPath": "v1/contactGroups:batchGet", - "id": "people.contactGroups.batchGet", - "path": "v1/contactGroups:batchGet" + "https://www.googleapis.com/auth/userinfo.email": { + "description": "View your email address" }, - "delete": { - "description": "Delete an existing contact group owned by the authenticated user by\nspecifying a contact group resource name.", - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "resourceName" - ], - "httpMethod": "DELETE", - "parameters": { - "resourceName": { - "location": "path", - "description": "The resource name of the contact group to delete.", - "required": true, - "type": "string", - "pattern": "^contactGroups/[^/]+$" - }, - "deleteContacts": { - "description": "Set to true to also delete the contacts in the specified group.", - "type": "boolean", - "location": "query" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/contacts" - ], - "flatPath": "v1/contactGroups/{contactGroupsId}", - "path": "v1/{+resourceName}", - "id": "people.contactGroups.delete" - }, - "list": { - "response": { - "$ref": "ListContactGroupsResponse" - }, - "parameterOrder": [], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/contacts", - "https://www.googleapis.com/auth/contacts.readonly" - ], - "parameters": { - "pageToken": { - "location": "query", - "description": "The next_page_token value returned from a previous call to\n[ListContactGroups](/people/api/rest/v1/contactgroups/list).\nRequests the next page of resources.", - "type": "string" - }, - "pageSize": { - "description": "The maximum number of resources to return.", - "format": "int32", - "type": "integer", - "location": "query" - }, - "syncToken": { - "location": "query", - "description": "A sync token, returned by a previous call to `contactgroups.list`.\nOnly resources changed since the sync token was created will be returned.", - "type": "string" - } - }, - "flatPath": "v1/contactGroups", - "path": "v1/contactGroups", - "id": "people.contactGroups.list", - "description": "List all contact groups owned by the authenticated user. Members of the\ncontact groups are not populated." + "https://www.googleapis.com/auth/userinfo.profile": { + "description": "View your basic profile info" } } } }, + "basePath": "", + "baseUrl": "https://people.googleapis.com/", + "batchPath": "batch", + "canonicalName": "People Service", + "description": "Provides access to information about profiles and contacts.", + "discoveryVersion": "v1", + "documentationLink": "https://developers.google.com/people/", + "icons": { + "x16": "http://www.google.com/images/icons/product/search-16.gif", + "x32": "http://www.google.com/images/icons/product/search-32.gif" + }, + "id": "people:v1", + "kind": "discovery#restDescription", + "name": "people", + "ownerDomain": "google.com", + "ownerName": "Google", "parameters": { "$.xgafv": { + "description": "V1 error format.", "enum": [ "1", "2" ], - "description": "V1 error format.", - "type": "string", "enumDescriptions": [ "v1 error format", "v2 error format" ], - "location": "query" + "location": "query", + "type": "string" }, - "callback": { - "description": "JSONP", - "type": "string", - "location": "query" + "access_token": { + "description": "OAuth access token.", + "location": "query", + "type": "string" }, "alt": { - "type": "string", + "default": "json", + "description": "Data format for response.", + "enum": [ + "json", + "media", + "proto" + ], "enumDescriptions": [ "Responses with Content-Type of application/json", "Media download with context-dependent Content-Type", "Responses with Content-Type of application/x-protobuf" ], "location": "query", - "description": "Data format for response.", - "default": "json", - "enum": [ - "json", - "media", - "proto" - ] - }, - "access_token": { - "description": "OAuth access token.", - "type": "string", - "location": "query" - }, - "key": { - "location": "query", - "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.", - "type": "string" - }, - "quotaUser": { - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", - "type": "string", - "location": "query" - }, - "pp": { - "description": "Pretty-print response.", - "type": "boolean", - "default": "true", - "location": "query" - }, - "oauth_token": { - "location": "query", - "description": "OAuth 2.0 token for the current user.", "type": "string" }, "bearer_token": { - "location": "query", "description": "OAuth bearer token.", + "location": "query", "type": "string" }, - "upload_protocol": { + "callback": { + "description": "JSONP", "location": "query", - "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", "type": "string" }, + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "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.", + "location": "query", + "type": "string" + }, + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "pp": { + "default": "true", + "description": "Pretty-print response.", + "location": "query", + "type": "boolean" + }, "prettyPrint": { - "description": "Returns response with indentations and line breaks.", - "type": "boolean", "default": "true", - "location": "query" + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", + "location": "query", + "type": "string" }, "uploadType": { "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", - "type": "string", - "location": "query" - }, - "fields": { "location": "query", - "description": "Selector specifying which fields to include in a partial response.", + "type": "string" + }, + "upload_protocol": { + "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", + "location": "query", "type": "string" } }, - "version": "v1", - "baseUrl": "https://people.googleapis.com/", - "kind": "discovery#restDescription", - "description": "Provides access to information about profiles and contacts.", - "servicePath": "", - "basePath": "", - "revision": "20180120", - "documentationLink": "https://developers.google.com/people/", - "id": "people:v1", - "discoveryVersion": "v1", - "version_module": true, - "schemas": { - "Date": { - "description": "Represents a whole calendar date, for example a date of birth. The time\nof day and time zone are either specified elsewhere or are not\nsignificant. The date is relative to the\n[Proleptic Gregorian Calendar](https://en.wikipedia.org/wiki/Proleptic_Gregorian_calendar).\nThe day may be 0 to represent a year and month where the day is not\nsignificant. The year may be 0 to represent a month and day independent\nof year; for example, anniversary date.", - "type": "object", - "properties": { - "year": { - "description": "Year of date. Must be from 1 to 9999, or 0 if specifying a date without\na year.", - "format": "int32", - "type": "integer" - }, - "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" - }, - "month": { - "description": "Month of year. Must be from 1 to 12.", - "format": "int32", - "type": "integer" - } - }, - "id": "Date" - }, - "Tagline": { - "properties": { - "metadata": { - "description": "Metadata about the tagline.", - "$ref": "FieldMetadata" - }, - "value": { - "description": "The tagline.", - "type": "string" - } - }, - "id": "Tagline", - "description": "A read-only brief one-line description of the person.", - "type": "object" - }, - "Name": { - "description": "A person's name. If the name is a mononym, the family name is empty.", - "type": "object", - "properties": { - "honorificPrefix": { - "description": "The honorific prefixes, such as `Mrs.` or `Dr.`", - "type": "string" - }, - "phoneticHonorificSuffix": { - "description": "The honorific suffixes spelled as they sound.", - "type": "string" - }, - "middleName": { - "description": "The middle name(s).", - "type": "string" - }, - "givenName": { - "description": "The given name.", - "type": "string" - }, - "phoneticHonorificPrefix": { - "description": "The honorific prefixes spelled as they sound.", - "type": "string" - }, - "phoneticGivenName": { - "description": "The given name spelled as it sounds.", - "type": "string" - }, - "phoneticFamilyName": { - "description": "The family name spelled as it sounds.", - "type": "string" - }, - "familyName": { - "description": "The family name.", - "type": "string" - }, - "phoneticMiddleName": { - "description": "The middle name(s) spelled as they sound.", - "type": "string" - }, - "metadata": { - "description": "Metadata about the name.", - "$ref": "FieldMetadata" - }, - "phoneticFullName": { - "description": "The full name spelled as it sounds.", - "type": "string" - }, - "displayNameLastFirst": { - "description": "The read-only display name with the last name first formatted according to\nthe locale specified by the viewer's account or the\n`Accept-Language` HTTP header.", - "type": "string" - }, - "displayName": { - "description": "The read-only display name formatted according to the locale specified by\nthe viewer's account or the `Accept-Language` HTTP header.", - "type": "string" - }, - "honorificSuffix": { - "description": "The honorific suffixes, such as `Jr.`", - "type": "string" - } - }, - "id": "Name" - }, - "Locale": { - "description": "A person's locale preference.", - "type": "object", - "properties": { - "metadata": { - "description": "Metadata about the locale.", - "$ref": "FieldMetadata" - }, - "value": { - "description": "The well-formed [IETF BCP 47](https://tools.ietf.org/html/bcp47)\nlanguage tag representing the locale.", - "type": "string" - } - }, - "id": "Locale" - }, - "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 `{}`.", - "type": "object", - "properties": {}, - "id": "Empty" - }, - "UserDefined": { - "description": "Arbitrary user data that is populated by the end users.", - "type": "object", - "properties": { - "value": { - "description": "The end user specified value of the user defined data.", - "type": "string" - }, - "key": { - "description": "The end user specified key of the user defined data.", - "type": "string" - }, - "metadata": { - "$ref": "FieldMetadata", - "description": "Metadata about the user defined data." - } - }, - "id": "UserDefined" - }, - "Biography": { - "properties": { - "contentType": { - "description": "The content type of the biography.", - "type": "string", - "enumDescriptions": [ - "Unspecified.", - "Plain text.", - "HTML text." - ], - "enum": [ - "CONTENT_TYPE_UNSPECIFIED", - "TEXT_PLAIN", - "TEXT_HTML" + "protocol": "rest", + "resources": { + "contactGroups": { + "methods": { + "batchGet": { + "description": "Get a list of contact groups owned by the authenticated user by specifying\na list of contact group resource names.", + "flatPath": "v1/contactGroups:batchGet", + "httpMethod": "GET", + "id": "people.contactGroups.batchGet", + "parameterOrder": [], + "parameters": { + "maxMembers": { + "description": "Specifies the maximum number of members to return for each group.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "resourceNames": { + "description": "The resource names of the contact groups to get.", + "location": "query", + "repeated": true, + "type": "string" + } + }, + "path": "v1/contactGroups:batchGet", + "response": { + "$ref": "BatchGetContactGroupsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/contacts", + "https://www.googleapis.com/auth/contacts.readonly" ] }, - "metadata": { - "description": "Metadata about the biography.", - "$ref": "FieldMetadata" + "create": { + "description": "Create a new contact group owned by the authenticated user.", + "flatPath": "v1/contactGroups", + "httpMethod": "POST", + "id": "people.contactGroups.create", + "parameterOrder": [], + "parameters": {}, + "path": "v1/contactGroups", + "request": { + "$ref": "CreateContactGroupRequest" + }, + "response": { + "$ref": "ContactGroup" + }, + "scopes": [ + "https://www.googleapis.com/auth/contacts" + ] }, - "value": { - "description": "The short biography.", - "type": "string" - } - }, - "id": "Biography", - "description": "A person's short biography.", - "type": "object" - }, - "FieldMetadata": { - "description": "Metadata about a field.", - "type": "object", - "properties": { - "verified": { - "description": "True if the field is verified; false if the field is unverified. A\nverified field is typically a name, email address, phone number, or\nwebsite that has been confirmed to be owned by the person.", - "type": "boolean" - }, - "primary": { - "description": "True if the field is the primary field; false if the field is a secondary\nfield.", - "type": "boolean" - }, - "source": { - "$ref": "Source", - "description": "The source of the field." - } - }, - "id": "FieldMetadata" - }, - "Source": { - "description": "The source of a field.", - "type": "object", - "properties": { - "etag": { - "description": "**Only populated in `person.metadata.sources`.**\n\nThe [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the\nsource. Used for web cache validation.", - "type": "string" - }, - "id": { - "description": "The unique identifier within the source type generated by the server.", - "type": "string" - }, - "profileMetadata": { - "$ref": "ProfileMetadata", - "description": "**Only populated in `person.metadata.sources`.**\n\nMetadata about a source of type PROFILE." - }, - "updateTime": { - "description": "**Only populated in `person.metadata.sources`.**\n\nLast update timestamp of this source.", - "format": "google-datetime", - "type": "string" - }, - "type": { - "description": "The source type.", - "type": "string", - "enumDescriptions": [ - "Unspecified.", - "[Google Account](https://accounts.google.com).", - "[Google profile](https://profiles.google.com). You can view the\nprofile at https://profiles.google.com/\u003cvar\u003eid\u003c/var\u003e where\n\u003cvar\u003eid\u003c/var\u003e is the source id.", - "[Google Apps domain profile](https://admin.google.com).", - "[Google contact](https://contacts.google.com). You can view the\ncontact at https://contact.google.com/\u003cvar\u003eid\u003c/var\u003e where \u003cvar\u003eid\u003c/var\u003e\nis the source id." + "delete": { + "description": "Delete an existing contact group owned by the authenticated user by\nspecifying a contact group resource name.", + "flatPath": "v1/contactGroups/{contactGroupsId}", + "httpMethod": "DELETE", + "id": "people.contactGroups.delete", + "parameterOrder": [ + "resourceName" ], - "enum": [ - "SOURCE_TYPE_UNSPECIFIED", - "ACCOUNT", - "PROFILE", - "DOMAIN_PROFILE", - "CONTACT" + "parameters": { + "deleteContacts": { + "description": "Set to true to also delete the contacts in the specified group.", + "location": "query", + "type": "boolean" + }, + "resourceName": { + "description": "The resource name of the contact group to delete.", + "location": "path", + "pattern": "^contactGroups/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+resourceName}", + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/contacts" + ] + }, + "get": { + "description": "Get a specific contact group owned by the authenticated user by specifying\na contact group resource name.", + "flatPath": "v1/contactGroups/{contactGroupsId}", + "httpMethod": "GET", + "id": "people.contactGroups.get", + "parameterOrder": [ + "resourceName" + ], + "parameters": { + "maxMembers": { + "description": "Specifies the maximum number of members to return.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "resourceName": { + "description": "The resource name of the contact group to get.", + "location": "path", + "pattern": "^contactGroups/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+resourceName}", + "response": { + "$ref": "ContactGroup" + }, + "scopes": [ + "https://www.googleapis.com/auth/contacts", + "https://www.googleapis.com/auth/contacts.readonly" + ] + }, + "list": { + "description": "List all contact groups owned by the authenticated user. Members of the\ncontact groups are not populated.", + "flatPath": "v1/contactGroups", + "httpMethod": "GET", + "id": "people.contactGroups.list", + "parameterOrder": [], + "parameters": { + "pageSize": { + "description": "The maximum number of resources to return.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "The next_page_token value returned from a previous call to\n[ListContactGroups](/people/api/rest/v1/contactgroups/list).\nRequests the next page of resources.", + "location": "query", + "type": "string" + }, + "syncToken": { + "description": "A sync token, returned by a previous call to `contactgroups.list`.\nOnly resources changed since the sync token was created will be returned.", + "location": "query", + "type": "string" + } + }, + "path": "v1/contactGroups", + "response": { + "$ref": "ListContactGroupsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/contacts", + "https://www.googleapis.com/auth/contacts.readonly" + ] + }, + "update": { + "description": "Update the name of an existing contact group owned by the authenticated\nuser.", + "flatPath": "v1/contactGroups/{contactGroupsId}", + "httpMethod": "PUT", + "id": "people.contactGroups.update", + "parameterOrder": [ + "resourceName" + ], + "parameters": { + "resourceName": { + "description": "The resource name for the contact group, assigned by the server. An ASCII\nstring, in the form of `contactGroups/`\u003cvar\u003econtact_group_id\u003c/var\u003e.", + "location": "path", + "pattern": "^contactGroups/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+resourceName}", + "request": { + "$ref": "UpdateContactGroupRequest" + }, + "response": { + "$ref": "ContactGroup" + }, + "scopes": [ + "https://www.googleapis.com/auth/contacts" ] } }, - "id": "Source" - }, - "RelationshipInterest": { - "description": "A person's read-only relationship interest .", - "type": "object", - "properties": { - "metadata": { - "description": "Metadata about the relationship interest.", - "$ref": "FieldMetadata" - }, - "value": { - "description": "The kind of relationship the person is looking for. The value can be custom\nor predefined. Possible values include, but are not limited to, the\nfollowing values:\n\n* `friend`\n* `date`\n* `relationship`\n* `networking`", - "type": "string" - }, - "formattedValue": { - "description": "The value of the relationship interest translated and formatted in the\nviewer's account locale or the locale specified in the Accept-Language\nHTTP header.", - "type": "string" - } - }, - "id": "RelationshipInterest" - }, - "GetPeopleResponse": { - "properties": { - "responses": { - "description": "The response for each requested resource name.", - "type": "array", - "items": { - "$ref": "PersonResponse" + "resources": { + "members": { + "methods": { + "modify": { + "description": "Modify the members of a contact group owned by the authenticated user.", + "flatPath": "v1/contactGroups/{contactGroupsId}/members:modify", + "httpMethod": "POST", + "id": "people.contactGroups.members.modify", + "parameterOrder": [ + "resourceName" + ], + "parameters": { + "resourceName": { + "description": "The resource name of the contact group to modify.", + "location": "path", + "pattern": "^contactGroups/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+resourceName}/members:modify", + "request": { + "$ref": "ModifyContactGroupMembersRequest" + }, + "response": { + "$ref": "ModifyContactGroupMembersResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/contacts" + ] + } } } - }, - "id": "GetPeopleResponse", - "type": "object" + } }, - "PhoneNumber": { - "description": "A person's phone number.", - "type": "object", - "properties": { - "value": { - "description": "The phone number.", - "type": "string" - }, - "formattedType": { - "description": "The read-only type of the phone number translated and formatted in the\nviewer's account locale or the `Accept-Language` HTTP header locale.", - "type": "string" - }, - "canonicalForm": { - "description": "The read-only canonicalized [ITU-T E.164](https://law.resource.org/pub/us/cfr/ibr/004/itu-t.E.164.1.2008.pdf)\nform of the phone number.", - "type": "string" - }, - "metadata": { - "$ref": "FieldMetadata", - "description": "Metadata about the phone number." - }, - "type": { - "description": "The type of the phone number. The type can be custom or predefined.\nPossible values include, but are not limited to, the following:\n\n* `home`\n* `work`\n* `mobile`\n* `homeFax`\n* `workFax`\n* `otherFax`\n* `pager`\n* `workMobile`\n* `workPager`\n* `main`\n* `googleVoice`\n* `other`", - "type": "string" - } - }, - "id": "PhoneNumber" - }, - "Photo": { - "description": "A person's read-only photo. A picture shown next to the person's name to\nhelp others recognize the person.", - "type": "object", - "properties": { - "url": { - "description": "The URL of the photo. You can change the desired size by appending a query\nparameter `sz=`\u003cvar\u003esize\u003c/var\u003e at the end of the url. Example:\n`https://lh3.googleusercontent.com/-T_wVWLlmg7w/AAAAAAAAAAI/AAAAAAAABa8/00gzXvDBYqw/s100/photo.jpg?sz=50`", - "type": "string" - }, - "metadata": { - "description": "Metadata about the photo.", - "$ref": "FieldMetadata" - }, - "default": { - "description": "True if the photo is a default photo;\nfalse if the photo is a user-provided photo.", - "type": "boolean" - } - }, - "id": "Photo" - }, - "ListConnectionsResponse": { - "properties": { - "totalPeople": { - "description": "**DEPRECATED** (Please use totalItems)\nThe total number of people in the list without pagination.", - "format": "int32", - "type": "integer" - }, - "nextPageToken": { - "description": "The token that can be used to retrieve the next page of results.", - "type": "string" - }, - "connections": { - "description": "The list of people that the requestor is connected to.", - "type": "array", - "items": { + "people": { + "methods": { + "createContact": { + "description": "Create a new contact and return the person resource for that contact.", + "flatPath": "v1/people:createContact", + "httpMethod": "POST", + "id": "people.people.createContact", + "parameterOrder": [], + "parameters": { + "parent": { + "description": "The resource name of the owning person resource.", + "location": "query", + "type": "string" + } + }, + "path": "v1/people:createContact", + "request": { "$ref": "Person" + }, + "response": { + "$ref": "Person" + }, + "scopes": [ + "https://www.googleapis.com/auth/contacts" + ] + }, + "deleteContact": { + "description": "Delete a contact person. Any non-contact data will not be deleted.", + "flatPath": "v1/people/{peopleId}:deleteContact", + "httpMethod": "DELETE", + "id": "people.people.deleteContact", + "parameterOrder": [ + "resourceName" + ], + "parameters": { + "resourceName": { + "description": "The resource name of the contact to delete.", + "location": "path", + "pattern": "^people/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+resourceName}:deleteContact", + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/contacts" + ] + }, + "get": { + "description": "Provides information about a person by specifying a resource name. Use\n`people/me` to indicate the authenticated user.\n\u003cbr\u003e\nThe request throws a 400 error if 'personFields' is not specified.", + "flatPath": "v1/people/{peopleId}", + "httpMethod": "GET", + "id": "people.people.get", + "parameterOrder": [ + "resourceName" + ], + "parameters": { + "personFields": { + "description": "**Required.** A field mask to restrict which fields on the person are\nreturned. Multiple fields can be specified by separating them with commas.\nValid values are:\n\n* addresses\n* ageRanges\n* biographies\n* birthdays\n* braggingRights\n* coverPhotos\n* emailAddresses\n* events\n* genders\n* imClients\n* interests\n* locales\n* memberships\n* metadata\n* names\n* nicknames\n* occupations\n* organizations\n* phoneNumbers\n* photos\n* relations\n* relationshipInterests\n* relationshipStatuses\n* residences\n* skills\n* taglines\n* urls", + "format": "google-fieldmask", + "location": "query", + "type": "string" + }, + "requestMask.includeField": { + "description": "**Required.** Comma-separated list of person fields to be included in the\nresponse. Each path should start with `person.`: for example,\n`person.names` or `person.photos`.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + }, + "resourceName": { + "description": "The resource name of the person to provide information about.\n\n- To get information about the authenticated user, specify `people/me`.\n- To get information about a google account, specify\n `people/`\u003cvar\u003eaccount_id\u003c/var\u003e.\n- To get information about a contact, specify the resource name that\n identifies the contact as returned by\n[`people.connections.list`](/people/api/rest/v1/people.connections/list).", + "location": "path", + "pattern": "^people/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+resourceName}", + "response": { + "$ref": "Person" + }, + "scopes": [ + "https://www.googleapis.com/auth/contacts", + "https://www.googleapis.com/auth/contacts.readonly", + "https://www.googleapis.com/auth/plus.login", + "https://www.googleapis.com/auth/user.addresses.read", + "https://www.googleapis.com/auth/user.birthday.read", + "https://www.googleapis.com/auth/user.emails.read", + "https://www.googleapis.com/auth/user.phonenumbers.read", + "https://www.googleapis.com/auth/userinfo.email", + "https://www.googleapis.com/auth/userinfo.profile" + ] + }, + "getBatchGet": { + "description": "Provides information about a list of specific people by specifying a list\nof requested resource names. Use `people/me` to indicate the authenticated\nuser.\n\u003cbr\u003e\nThe request throws a 400 error if 'personFields' is not specified.", + "flatPath": "v1/people:batchGet", + "httpMethod": "GET", + "id": "people.people.getBatchGet", + "parameterOrder": [], + "parameters": { + "personFields": { + "description": "**Required.** A field mask to restrict which fields on each person are\nreturned. Multiple fields can be specified by separating them with commas.\nValid values are:\n\n* addresses\n* ageRanges\n* biographies\n* birthdays\n* braggingRights\n* coverPhotos\n* emailAddresses\n* events\n* genders\n* imClients\n* interests\n* locales\n* memberships\n* metadata\n* names\n* nicknames\n* occupations\n* organizations\n* phoneNumbers\n* photos\n* relations\n* relationshipInterests\n* relationshipStatuses\n* residences\n* skills\n* taglines\n* urls", + "format": "google-fieldmask", + "location": "query", + "type": "string" + }, + "requestMask.includeField": { + "description": "**Required.** Comma-separated list of person fields to be included in the\nresponse. Each path should start with `person.`: for example,\n`person.names` or `person.photos`.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + }, + "resourceNames": { + "description": "The resource names of the people to provide information about.\n\n- To get information about the authenticated user, specify `people/me`.\n- To get information about a google account, specify\n `people/`\u003cvar\u003eaccount_id\u003c/var\u003e.\n- To get information about a contact, specify the resource name that\n identifies the contact as returned by\n[`people.connections.list`](/people/api/rest/v1/people.connections/list).\n\nYou can include up to 50 resource names in one request.", + "location": "query", + "repeated": true, + "type": "string" + } + }, + "path": "v1/people:batchGet", + "response": { + "$ref": "GetPeopleResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/contacts", + "https://www.googleapis.com/auth/contacts.readonly", + "https://www.googleapis.com/auth/plus.login", + "https://www.googleapis.com/auth/user.addresses.read", + "https://www.googleapis.com/auth/user.birthday.read", + "https://www.googleapis.com/auth/user.emails.read", + "https://www.googleapis.com/auth/user.phonenumbers.read", + "https://www.googleapis.com/auth/userinfo.email", + "https://www.googleapis.com/auth/userinfo.profile" + ] + }, + "updateContact": { + "description": "Update contact data for an existing contact person. Any non-contact data\nwill not be modified.\n\nThe request throws a 400 error if `updatePersonFields` is not specified.\n\u003cbr\u003e\nThe request throws a 400 error if `person.metadata.sources` is not\nspecified for the contact to be updated.\n\u003cbr\u003e\nThe request throws a 412 error if `person.metadata.sources.etag` is\ndifferent than the contact's etag, which indicates the contact has changed\nsince its data was read. Clients should get the latest person and re-apply\ntheir updates to the latest person.", + "flatPath": "v1/people/{peopleId}:updateContact", + "httpMethod": "PATCH", + "id": "people.people.updateContact", + "parameterOrder": [ + "resourceName" + ], + "parameters": { + "resourceName": { + "description": "The resource name for the person, assigned by the server. An ASCII string\nwith a max length of 27 characters, in the form of\n`people/`\u003cvar\u003eperson_id\u003c/var\u003e.", + "location": "path", + "pattern": "^people/[^/]+$", + "required": true, + "type": "string" + }, + "updatePersonFields": { + "description": "**Required.** A field mask to restrict which fields on the person are\nupdated. Multiple fields can be specified by separating them with commas.\nAll updated fields will be replaced. Valid values are:\n\n* addresses\n* biographies\n* birthdays\n* emailAddresses\n* events\n* genders\n* imClients\n* interests\n* locales\n* names\n* nicknames\n* occupations\n* organizations\n* phoneNumbers\n* relations\n* residences\n* urls", + "format": "google-fieldmask", + "location": "query", + "type": "string" + } + }, + "path": "v1/{+resourceName}:updateContact", + "request": { + "$ref": "Person" + }, + "response": { + "$ref": "Person" + }, + "scopes": [ + "https://www.googleapis.com/auth/contacts" + ] + } + }, + "resources": { + "connections": { + "methods": { + "list": { + "description": "Provides a list of the authenticated user's contacts merged with any\nconnected profiles.\n\u003cbr\u003e\nThe request throws a 400 error if 'personFields' is not specified.", + "flatPath": "v1/people/{peopleId}/connections", + "httpMethod": "GET", + "id": "people.people.connections.list", + "parameterOrder": [ + "resourceName" + ], + "parameters": { + "pageSize": { + "description": "The number of connections to include in the response. Valid values are\nbetween 1 and 2000, inclusive. Defaults to 100.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "The token of the page to be returned.", + "location": "query", + "type": "string" + }, + "personFields": { + "description": "**Required.** A field mask to restrict which fields on each person are\nreturned. Multiple fields can be specified by separating them with commas.\nValid values are:\n\n* addresses\n* ageRanges\n* biographies\n* birthdays\n* braggingRights\n* coverPhotos\n* emailAddresses\n* events\n* genders\n* imClients\n* interests\n* locales\n* memberships\n* metadata\n* names\n* nicknames\n* occupations\n* organizations\n* phoneNumbers\n* photos\n* relations\n* relationshipInterests\n* relationshipStatuses\n* residences\n* skills\n* taglines\n* urls", + "format": "google-fieldmask", + "location": "query", + "type": "string" + }, + "requestMask.includeField": { + "description": "**Required.** Comma-separated list of person fields to be included in the\nresponse. Each path should start with `person.`: for example,\n`person.names` or `person.photos`.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + }, + "requestSyncToken": { + "description": "Whether the response should include a sync token, which can be used to get\nall changes since the last request. For subsequent sync requests use the\n`sync_token` param instead. Initial sync requests that specify\n`request_sync_token` have an additional rate limit.", + "location": "query", + "type": "boolean" + }, + "resourceName": { + "description": "The resource name to return connections for. Only `people/me` is valid.", + "location": "path", + "pattern": "^people/[^/]+$", + "required": true, + "type": "string" + }, + "sortOrder": { + "description": "The order in which the connections should be sorted. Defaults to\n`LAST_MODIFIED_ASCENDING`.", + "enum": [ + "LAST_MODIFIED_ASCENDING", + "FIRST_NAME_ASCENDING", + "LAST_NAME_ASCENDING" + ], + "location": "query", + "type": "string" + }, + "syncToken": { + "description": "A sync token returned by a previous call to `people.connections.list`.\nOnly resources changed since the sync token was created will be returned.\nSync requests that specify `sync_token` have an additional rate limit.", + "location": "query", + "type": "string" + } + }, + "path": "v1/{+resourceName}/connections", + "response": { + "$ref": "ListConnectionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/contacts", + "https://www.googleapis.com/auth/contacts.readonly" + ] + } } - }, - "nextSyncToken": { - "description": "The token that can be used to retrieve changes since the last request.", - "type": "string" - }, - "totalItems": { - "description": "The total number of items in the list without pagination.", - "format": "int32", - "type": "integer" } - }, - "id": "ListConnectionsResponse", - "type": "object" - }, - "Birthday": { - "properties": { - "date": { - "description": "The date of the birthday.", - "$ref": "Date" - }, - "metadata": { - "description": "Metadata about the birthday.", - "$ref": "FieldMetadata" - }, - "text": { - "description": "A free-form string representing the user's birthday.", - "type": "string" - } - }, - "id": "Birthday", - "description": "A person's birthday. At least one of the `date` and `text` fields are\nspecified. The `date` and `text` fields typically represent the same\ndate, but are not guaranteed to.", - "type": "object" - }, - "CreateContactGroupRequest": { - "description": "A request to create a new contact group.", - "type": "object", - "properties": { - "contactGroup": { - "description": "The contact group to create.", - "$ref": "ContactGroup" - } - }, - "id": "CreateContactGroupRequest" - }, + } + } + }, + "revision": "20180303", + "rootUrl": "https://people.googleapis.com/", + "schemas": { "Address": { "description": "A person's physical address. May be a P.O. box or street address. All fields\nare optional.", - "type": "object", + "id": "Address", "properties": { + "city": { + "description": "The city of the address.", + "type": "string" + }, + "country": { + "description": "The country of the address.", + "type": "string" + }, + "countryCode": { + "description": "The [ISO 3166-1 alpha-2](http://www.iso.org/iso/country_codes.htm) country\ncode of the address.", + "type": "string" + }, "extendedAddress": { "description": "The extended address of the address; for example, the apartment number.", "type": "string" }, + "formattedType": { + "description": "The read-only type of the address translated and formatted in the viewer's\naccount locale or the `Accept-Language` HTTP header locale.", + "type": "string" + }, + "formattedValue": { + "description": "The unstructured value of the address. If this is not set by the user it\nwill be automatically constructed from structured values.", + "type": "string" + }, + "metadata": { + "$ref": "FieldMetadata", + "description": "Metadata about the address." + }, "poBox": { "description": "The P.O. box of the address.", "type": "string" @@ -957,507 +647,141 @@ "description": "The street address.", "type": "string" }, - "metadata": { - "description": "Metadata about the address.", - "$ref": "FieldMetadata" - }, - "countryCode": { - "description": "The [ISO 3166-1 alpha-2](http://www.iso.org/iso/country_codes.htm) country\ncode of the address.", - "type": "string" - }, - "formattedType": { - "description": "The read-only type of the address translated and formatted in the viewer's\naccount locale or the `Accept-Language` HTTP header locale.", - "type": "string" - }, - "city": { - "description": "The city of the address.", - "type": "string" - }, - "formattedValue": { - "description": "The unstructured value of the address. If this is not set by the user it\nwill be automatically constructed from structured values.", - "type": "string" - }, - "country": { - "description": "The country of the address.", - "type": "string" - }, "type": { "description": "The type of the address. The type can be custom or predefined.\nPossible values include, but are not limited to, the following:\n\n* `home`\n* `work`\n* `other`", "type": "string" } }, - "id": "Address" - }, - "ContactGroupMembership": { - "description": "A Google contact group membership.", - "type": "object", - "properties": { - "contactGroupId": { - "description": "The contact group ID for the contact group membership. The contact group\nID can be custom or predefined. Possible values include, but are not\nlimited to, the following:\n\n* `myContacts`\n* `starred`\n* A numerical ID for user-created groups.", - "type": "string" - } - }, - "id": "ContactGroupMembership" - }, - "Status": { - "description": "The `Status` type defines a logical error model that is suitable for different\nprogramming environments, including REST APIs and RPC APIs. It is used by\n[gRPC](https://github.com/grpc). The error model is designed to be:\n\n- Simple to use and understand for most users\n- Flexible enough to meet unexpected needs\n\n# Overview\n\nThe `Status` message contains three pieces of data: error code, error message,\nand error details. The error code should be an enum value of\ngoogle.rpc.Code, but it may accept additional error codes if needed. The\nerror message should be a developer-facing English message that helps\ndevelopers *understand* and *resolve* the error. If a localized user-facing\nerror message is needed, put the localized message in the error details or\nlocalize it in the client. The optional error details may contain arbitrary\ninformation about the error. There is a predefined set of error detail types\nin the package `google.rpc` that can be used for common error conditions.\n\n# Language mapping\n\nThe `Status` message is the logical representation of the error model, but it\nis not necessarily the actual wire format. When the `Status` message is\nexposed in different client libraries and different wire protocols, it can be\nmapped differently. For example, it will likely be mapped to some exceptions\nin Java, but more likely mapped to some error codes in C.\n\n# Other uses\n\nThe error model and the `Status` message can be used in a variety of\nenvironments, either with or without APIs, to provide a\nconsistent developer experience across different environments.\n\nExample uses of this error model include:\n\n- Partial errors. If a service needs to return partial errors to the client,\n it may embed the `Status` in the normal response to indicate the partial\n errors.\n\n- Workflow errors. A typical workflow has multiple steps. Each step may\n have a `Status` message for error reporting.\n\n- Batch operations. If a client uses batch request and batch response, the\n `Status` message should be used directly inside batch response, one for\n each error sub-response.\n\n- Asynchronous operations. If an API call embeds asynchronous operation\n results in its response, the status of those operations should be\n represented directly using the `Status` message.\n\n- Logging. If some API errors are stored in logs, the message `Status` could\n be used directly after any stripping needed for security/privacy reasons.", - "type": "object", - "properties": { - "details": { - "description": "A list of messages that carry the error details. There is a common set of\nmessage types for APIs to use.", - "type": "array", - "items": { - "type": "object", - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - } - } - }, - "code": { - "description": "The status code, which should be an enum value of google.rpc.Code.", - "format": "int32", - "type": "integer" - }, - "message": { - "description": "A developer-facing error message, which should be in English. Any\nuser-facing error message should be localized and sent in the\ngoogle.rpc.Status.details field, or localized by the client.", - "type": "string" - } - }, - "id": "Status" - }, - "PersonMetadata": { - "description": "The read-only metadata about a person.", - "type": "object", - "properties": { - "linkedPeopleResourceNames": { - "description": "Resource names of people linked to this resource.", - "type": "array", - "items": { - "type": "string" - } - }, - "sources": { - "description": "The sources of data for the person.", - "type": "array", - "items": { - "$ref": "Source" - } - }, - "previousResourceNames": { - "description": "Any former resource names this person has had. Populated only for\n[`connections.list`](/people/api/rest/v1/people.connections/list) requests\nthat include a sync token.\n\nThe resource name may change when adding or removing fields that link a\ncontact and profile such as a verified email, verified phone number, or\nprofile URL.", - "type": "array", - "items": { - "type": "string" - } - }, - "deleted": { - "description": "True if the person resource has been deleted. Populated only for\n[`connections.list`](/people/api/rest/v1/people.connections/list) requests\nthat include a sync token.", - "type": "boolean" - }, - "objectType": { - "enumDescriptions": [ - "Unspecified.", - "Person.", - "[Google+ Page.](http://www.google.com/+/brands/)" - ], - "enum": [ - "OBJECT_TYPE_UNSPECIFIED", - "PERSON", - "PAGE" - ], - "description": "**DEPRECATED** (Please use\n`person.metadata.sources.profileMetadata.objectType` instead)\n\nThe type of the person object.", - "type": "string" - } - }, - "id": "PersonMetadata" - }, - "ModifyContactGroupMembersRequest": { - "properties": { - "resourceNamesToAdd": { - "description": "The resource names of the contact people to add in the form of in the form\n`people/`\u003cvar\u003eperson_id\u003c/var\u003e.", - "type": "array", - "items": { - "type": "string" - } - }, - "resourceNamesToRemove": { - "description": "The resource names of the contact people to remove in the form of in the\nform of `people/`\u003cvar\u003eperson_id\u003c/var\u003e.", - "type": "array", - "items": { - "type": "string" - } - } - }, - "id": "ModifyContactGroupMembersRequest", - "description": "A request to modify an existing contact group's members.", "type": "object" }, - "ContactGroupResponse": { - "description": "The response for a specific contact group.", - "type": "object", - "properties": { - "contactGroup": { - "$ref": "ContactGroup", - "description": "The contact group." - }, - "status": { - "$ref": "Status", - "description": "The status of the response." - }, - "requestedResourceName": { - "description": "The original requested resource name.", - "type": "string" - } - }, - "id": "ContactGroupResponse" - }, - "Url": { - "description": "A person's associated URLs.", - "type": "object", - "properties": { - "formattedType": { - "description": "The read-only type of the URL translated and formatted in the viewer's\naccount locale or the `Accept-Language` HTTP header locale.", - "type": "string" - }, - "metadata": { - "description": "Metadata about the URL.", - "$ref": "FieldMetadata" - }, - "type": { - "description": "The type of the URL. The type can be custom or predefined.\nPossible values include, but are not limited to, the following:\n\n* `home`\n* `work`\n* `blog`\n* `profile`\n* `homePage`\n* `ftp`\n* `reservations`\n* `appInstallPage`: website for a Google+ application.\n* `other`", - "type": "string" - }, - "value": { - "description": "The URL.", - "type": "string" - } - }, - "id": "Url" - }, - "ImClient": { - "description": "A person's instant messaging client.", - "type": "object", - "properties": { - "formattedProtocol": { - "description": "The read-only protocol of the IM client formatted in the viewer's account\nlocale or the `Accept-Language` HTTP header locale.", - "type": "string" - }, - "formattedType": { - "description": "The read-only type of the IM client translated and formatted in the\nviewer's account locale or the `Accept-Language` HTTP header locale.", - "type": "string" - }, - "metadata": { - "description": "Metadata about the IM client.", - "$ref": "FieldMetadata" - }, - "type": { - "description": "The type of the IM client. The type can be custom or predefined.\nPossible values include, but are not limited to, the following:\n\n* `home`\n* `work`\n* `other`", - "type": "string" - }, - "protocol": { - "description": "The protocol of the IM client. The protocol can be custom or predefined.\nPossible values include, but are not limited to, the following:\n\n* `aim`\n* `msn`\n* `yahoo`\n* `skype`\n* `qq`\n* `googleTalk`\n* `icq`\n* `jabber`\n* `netMeeting`", - "type": "string" - }, - "username": { - "description": "The user name used in the IM client.", - "type": "string" - } - }, - "id": "ImClient" - }, - "DomainMembership": { - "properties": { - "inViewerDomain": { - "description": "True if the person is in the viewer's Google Apps domain.", - "type": "boolean" - } - }, - "id": "DomainMembership", - "description": "A Google Apps Domain membership.", - "type": "object" - }, - "Membership": { - "description": "A person's read-only membership in a group.", - "type": "object", - "properties": { - "metadata": { - "description": "Metadata about the membership.", - "$ref": "FieldMetadata" - }, - "contactGroupMembership": { - "$ref": "ContactGroupMembership", - "description": "The contact group membership." - }, - "domainMembership": { - "$ref": "DomainMembership", - "description": "The domain membership." - } - }, - "id": "Membership" - }, - "BatchGetContactGroupsResponse": { - "description": "The response to a batch get contact groups request.", - "type": "object", - "properties": { - "responses": { - "description": "The list of responses for each requested contact group resource.", - "type": "array", - "items": { - "$ref": "ContactGroupResponse" - } - } - }, - "id": "BatchGetContactGroupsResponse" - }, - "RelationshipStatus": { - "description": "A person's read-only relationship status.", - "type": "object", - "properties": { - "value": { - "description": "The relationship status. The value can be custom or predefined.\nPossible values include, but are not limited to, the following:\n\n* `single`\n* `inARelationship`\n* `engaged`\n* `married`\n* `itsComplicated`\n* `openRelationship`\n* `widowed`\n* `inDomesticPartnership`\n* `inCivilUnion`", - "type": "string" - }, - "formattedValue": { - "description": "The read-only value of the relationship status translated and formatted in\nthe viewer's account locale or the `Accept-Language` HTTP header locale.", - "type": "string" - }, - "metadata": { - "description": "Metadata about the relationship status.", - "$ref": "FieldMetadata" - } - }, - "id": "RelationshipStatus" - }, - "BraggingRights": { - "description": "A person's bragging rights.", - "type": "object", - "properties": { - "metadata": { - "description": "Metadata about the bragging rights.", - "$ref": "FieldMetadata" - }, - "value": { - "description": "The bragging rights; for example, `climbed mount everest`.", - "type": "string" - } - }, - "id": "BraggingRights" - }, - "Organization": { - "description": "A person's past or current organization. Overlapping date ranges are\npermitted.", - "type": "object", - "properties": { - "phoneticName": { - "description": "The phonetic name of the organization.", - "type": "string" - }, - "type": { - "description": "The type of the organization. The type can be custom or predefined.\nPossible values include, but are not limited to, the following:\n\n* `work`\n* `school`", - "type": "string" - }, - "jobDescription": { - "description": "The person's job description at the organization.", - "type": "string" - }, - "endDate": { - "$ref": "Date", - "description": "The end date when the person left the organization." - }, - "symbol": { - "description": "The symbol associated with the organization; for example, a stock ticker\nsymbol, abbreviation, or acronym.", - "type": "string" - }, - "name": { - "description": "The name of the organization.", - "type": "string" - }, - "metadata": { - "description": "Metadata about the organization.", - "$ref": "FieldMetadata" - }, - "location": { - "description": "The location of the organization office the person works at.", - "type": "string" - }, - "title": { - "description": "The person's job title at the organization.", - "type": "string" - }, - "current": { - "description": "True if the organization is the person's current organization;\nfalse if the organization is a past organization.", - "type": "boolean" - }, - "startDate": { - "$ref": "Date", - "description": "The start date when the person joined the organization." - }, - "formattedType": { - "description": "The read-only type of the organization translated and formatted in the\nviewer's account locale or the `Accept-Language` HTTP header locale.", - "type": "string" - }, - "domain": { - "description": "The domain name associated with the organization; for example, `google.com`.", - "type": "string" - }, - "department": { - "description": "The person's department at the organization.", - "type": "string" - } - }, - "id": "Organization" - }, "AgeRangeType": { + "description": "A person's age range.", + "id": "AgeRangeType", "properties": { - "metadata": { - "$ref": "FieldMetadata", - "description": "Metadata about the age range." - }, "ageRange": { + "description": "The age range.", "enum": [ "AGE_RANGE_UNSPECIFIED", "LESS_THAN_EIGHTEEN", "EIGHTEEN_TO_TWENTY", "TWENTY_ONE_OR_OLDER" ], - "description": "The age range.", - "type": "string", "enumDescriptions": [ "Unspecified.", "Younger than eighteen.", "Between eighteen and twenty.", "Twenty-one and older." - ] + ], + "type": "string" + }, + "metadata": { + "$ref": "FieldMetadata", + "description": "Metadata about the age range." } }, - "id": "AgeRangeType", - "description": "A person's age range.", "type": "object" }, - "ListContactGroupsResponse": { - "description": "The response to a list contact groups request.", - "type": "object", + "BatchGetContactGroupsResponse": { + "description": "The response to a batch get contact groups request.", + "id": "BatchGetContactGroupsResponse", "properties": { - "contactGroups": { - "description": "The list of contact groups. Members of the contact groups are not\npopulated.", - "type": "array", + "responses": { + "description": "The list of responses for each requested contact group resource.", "items": { - "$ref": "ContactGroup" - } - }, - "nextPageToken": { - "description": "The token that can be used to retrieve the next page of results.", - "type": "string" - }, - "totalItems": { - "description": "The total number of items in the list without pagination.", - "format": "int32", - "type": "integer" - }, - "nextSyncToken": { - "description": "The token that can be used to retrieve changes since the last request.", - "type": "string" + "$ref": "ContactGroupResponse" + }, + "type": "array" } }, - "id": "ListContactGroupsResponse" - }, - "PersonResponse": { - "properties": { - "person": { - "description": "The person.", - "$ref": "Person" - }, - "status": { - "description": "The status of the response.", - "$ref": "Status" - }, - "httpStatusCode": { - "description": "**DEPRECATED** (Please use status instead)\n\n[HTTP 1.1 status code]\n(http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html).", - "format": "int32", - "type": "integer" - }, - "requestedResourceName": { - "description": "The original requested resource name. May be different than the resource\nname on the returned person.\n\nThe resource name can change when adding or removing fields that link a\ncontact and profile such as a verified email, verified phone number, or a\nprofile URL.", - "type": "string" - } - }, - "id": "PersonResponse", - "description": "The response for a single person", "type": "object" }, - "Relation": { - "description": "A person's relation to another person.", - "type": "object", + "Biography": { + "description": "A person's short biography.", + "id": "Biography", "properties": { + "contentType": { + "description": "The content type of the biography.", + "enum": [ + "CONTENT_TYPE_UNSPECIFIED", + "TEXT_PLAIN", + "TEXT_HTML" + ], + "enumDescriptions": [ + "Unspecified.", + "Plain text.", + "HTML text." + ], + "type": "string" + }, "metadata": { "$ref": "FieldMetadata", - "description": "Metadata about the relation." - }, - "type": { - "description": "The person's relation to the other person. The type can be custom or predefined.\nPossible values include, but are not limited to, the following values:\n\n* `spouse`\n* `child`\n* `mother`\n* `father`\n* `parent`\n* `brother`\n* `sister`\n* `friend`\n* `relative`\n* `domesticPartner`\n* `manager`\n* `assistant`\n* `referredBy`\n* `partner`", - "type": "string" - }, - "person": { - "description": "The name of the other person this relation refers to.", - "type": "string" - }, - "formattedType": { - "description": "The type of the relation translated and formatted in the viewer's account\nlocale or the locale specified in the Accept-Language HTTP header.", - "type": "string" - } - }, - "id": "Relation" - }, - "Occupation": { - "properties": { - "metadata": { - "$ref": "FieldMetadata", - "description": "Metadata about the occupation." + "description": "Metadata about the biography." }, "value": { - "description": "The occupation; for example, `carpenter`.", + "description": "The short biography.", + "type": "string" + } + }, + "type": "object" + }, + "Birthday": { + "description": "A person's birthday. At least one of the `date` and `text` fields are\nspecified. The `date` and `text` fields typically represent the same\ndate, but are not guaranteed to.", + "id": "Birthday", + "properties": { + "date": { + "$ref": "Date", + "description": "The date of the birthday." + }, + "metadata": { + "$ref": "FieldMetadata", + "description": "Metadata about the birthday." + }, + "text": { + "description": "A free-form string representing the user's birthday.", + "type": "string" + } + }, + "type": "object" + }, + "BraggingRights": { + "description": "A person's bragging rights.", + "id": "BraggingRights", + "properties": { + "metadata": { + "$ref": "FieldMetadata", + "description": "Metadata about the bragging rights." + }, + "value": { + "description": "The bragging rights; for example, `climbed mount everest`.", "type": "string" } }, - "id": "Occupation", - "description": "A person's occupation.", "type": "object" }, "ContactGroup": { "description": "A contact group.", - "type": "object", + "id": "ContactGroup", "properties": { "etag": { "description": "The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the\nresource. Used for web cache validation.", "type": "string" }, + "formattedName": { + "description": "The read-only name translated and formatted in the viewer's account locale\nor the `Accept-Language` HTTP header locale for system groups names.\nGroup names set by the owner are the same as name.", + "type": "string" + }, "groupType": { + "description": "The read-only contact group type.", "enum": [ "GROUP_TYPE_UNSPECIFIED", "USER_CONTACT_GROUP", "SYSTEM_CONTACT_GROUP" ], - "description": "The read-only contact group type.", - "type": "string", "enumDescriptions": [ "Unspecified.", "User defined contact group.", "System defined contact group." - ] - }, - "formattedName": { - "description": "The read-only name translated and formatted in the viewer's account locale\nor the `Accept-Language` HTTP header locale for system groups names.\nGroup names set by the owner are the same as name.", - "type": "string" - }, - "memberResourceNames": { - "description": "The list of contact person resource names that are members of the contact\ngroup. The field is not populated for LIST requests and can only be updated\nthrough the\n[ModifyContactGroupMembers](/people/api/rest/v1/contactgroups/members/modify).", - "type": "array", - "items": { - "type": "string" - } - }, - "name": { - "description": "The contact group name set by the group owner or a system provided name\nfor system groups.", + ], "type": "string" }, "memberCount": { @@ -1465,460 +789,149 @@ "format": "int32", "type": "integer" }, + "memberResourceNames": { + "description": "The list of contact person resource names that are members of the contact\ngroup. The field is not populated for LIST requests and can only be updated\nthrough the\n[ModifyContactGroupMembers](/people/api/rest/v1/contactgroups/members/modify).", + "items": { + "type": "string" + }, + "type": "array" + }, "metadata": { - "description": "Metadata about the contact group.", - "$ref": "ContactGroupMetadata" + "$ref": "ContactGroupMetadata", + "description": "Metadata about the contact group." + }, + "name": { + "description": "The contact group name set by the group owner or a system provided name\nfor system groups.", + "type": "string" }, "resourceName": { "description": "The resource name for the contact group, assigned by the server. An ASCII\nstring, in the form of `contactGroups/`\u003cvar\u003econtact_group_id\u003c/var\u003e.", "type": "string" } }, - "id": "ContactGroup" + "type": "object" }, - "Person": { - "description": "Information about a person merged from various data sources such as the\nauthenticated user's contacts and profile data.\n\nMost fields can have multiple items. The items in a field have no guaranteed\norder, but each non-empty field is guaranteed to have exactly one field with\n`metadata.primary` set to true.", - "type": "object", + "ContactGroupMembership": { + "description": "A Google contact group membership.", + "id": "ContactGroupMembership", "properties": { - "nicknames": { - "description": "The person's nicknames.", - "type": "array", - "items": { - "$ref": "Nickname" - } - }, - "names": { - "description": "The person's names.", - "type": "array", - "items": { - "$ref": "Name" - } - }, - "relations": { - "description": "The person's relations.", - "type": "array", - "items": { - "$ref": "Relation" - } - }, - "occupations": { - "description": "The person's occupations.", - "type": "array", - "items": { - "$ref": "Occupation" - } - }, - "emailAddresses": { - "description": "The person's email addresses.", - "type": "array", - "items": { - "$ref": "EmailAddress" - } - }, - "organizations": { - "description": "The person's past or current organizations.", - "type": "array", - "items": { - "$ref": "Organization" - } - }, - "etag": { - "description": "The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the\nresource. Used for web cache validation.", + "contactGroupId": { + "description": "The contact group ID for the contact group membership. The contact group\nID can be custom or predefined. Possible values include, but are not\nlimited to, the following:\n\n* `myContacts`\n* `starred`\n* A numerical ID for user-created groups.", "type": "string" - }, - "braggingRights": { - "description": "The person's bragging rights.", - "type": "array", - "items": { - "$ref": "BraggingRights" - } - }, - "metadata": { - "$ref": "PersonMetadata", - "description": "Read-only metadata about the person." - }, - "residences": { - "description": "The person's residences.", - "type": "array", - "items": { - "$ref": "Residence" - } - }, - "genders": { - "description": "The person's genders.", - "type": "array", - "items": { - "$ref": "Gender" - } - }, - "interests": { - "description": "The person's interests.", - "type": "array", - "items": { - "$ref": "Interest" - } - }, - "resourceName": { - "description": "The resource name for the person, assigned by the server. An ASCII string\nwith a max length of 27 characters, in the form of\n`people/`\u003cvar\u003eperson_id\u003c/var\u003e.", - "type": "string" - }, - "biographies": { - "description": "The person's biographies.", - "type": "array", - "items": { - "$ref": "Biography" - } - }, - "skills": { - "description": "The person's skills.", - "type": "array", - "items": { - "$ref": "Skill" - } - }, - "relationshipStatuses": { - "description": "The person's read-only relationship statuses.", - "type": "array", - "items": { - "$ref": "RelationshipStatus" - } - }, - "photos": { - "description": "The person's read-only photos.", - "type": "array", - "items": { - "$ref": "Photo" - } - }, - "ageRange": { - "enumDescriptions": [ - "Unspecified.", - "Younger than eighteen.", - "Between eighteen and twenty.", - "Twenty-one and older." - ], - "enum": [ - "AGE_RANGE_UNSPECIFIED", - "LESS_THAN_EIGHTEEN", - "EIGHTEEN_TO_TWENTY", - "TWENTY_ONE_OR_OLDER" - ], - "description": "**DEPRECATED** (Please use `person.ageRanges` instead)**\n\nThe person's read-only age range.", - "type": "string" - }, - "taglines": { - "description": "The person's read-only taglines.", - "type": "array", - "items": { - "$ref": "Tagline" - } - }, - "ageRanges": { - "description": "The person's read-only age ranges.", - "type": "array", - "items": { - "$ref": "AgeRangeType" - } - }, - "addresses": { - "description": "The person's street addresses.", - "type": "array", - "items": { - "$ref": "Address" - } - }, - "events": { - "description": "The person's events.", - "type": "array", - "items": { - "$ref": "Event" - } - }, - "memberships": { - "description": "The person's read-only group memberships.", - "type": "array", - "items": { - "$ref": "Membership" - } - }, - "phoneNumbers": { - "description": "The person's phone numbers.", - "type": "array", - "items": { - "$ref": "PhoneNumber" - } - }, - "coverPhotos": { - "description": "The person's read-only cover photos.", - "type": "array", - "items": { - "$ref": "CoverPhoto" - } - }, - "imClients": { - "description": "The person's instant messaging clients.", - "type": "array", - "items": { - "$ref": "ImClient" - } - }, - "birthdays": { - "description": "The person's birthdays.", - "type": "array", - "items": { - "$ref": "Birthday" - } - }, - "userDefined": { - "description": "The person's user defined data.", - "type": "array", - "items": { - "$ref": "UserDefined" - } - }, - "locales": { - "description": "The person's locale preferences.", - "type": "array", - "items": { - "$ref": "Locale" - } - }, - "relationshipInterests": { - "description": "The person's read-only relationship interests.", - "type": "array", - "items": { - "$ref": "RelationshipInterest" - } - }, - "urls": { - "description": "The person's associated URLs.", - "type": "array", - "items": { - "$ref": "Url" - } } }, - "id": "Person" - }, - "UpdateContactGroupRequest": { - "description": "A request to update an existing contact group. Only the name can be updated.", - "type": "object", - "properties": { - "contactGroup": { - "$ref": "ContactGroup", - "description": "The contact group to update." - } - }, - "id": "UpdateContactGroupRequest" + "type": "object" }, "ContactGroupMetadata": { "description": "The read-only metadata about a contact group.", - "type": "object", + "id": "ContactGroupMetadata", "properties": { + "deleted": { + "description": "True if the contact group resource has been deleted. Populated only for\n[`ListContactGroups`](/people/api/rest/v1/contactgroups/list) requests\nthat include a sync token.", + "type": "boolean" + }, "updateTime": { "description": "The time the group was last updated.", "format": "google-datetime", "type": "string" - }, - "deleted": { - "description": "True if the contact group resource has been deleted. Populated only for\n[`ListContactGroups`](/people/api/rest/v1/contactgroups/list) requests\nthat include a sync token.", - "type": "boolean" } }, - "id": "ContactGroupMetadata" - }, - "Residence": { - "properties": { - "value": { - "description": "The address of the residence.", - "type": "string" - }, - "metadata": { - "description": "Metadata about the residence.", - "$ref": "FieldMetadata" - }, - "current": { - "description": "True if the residence is the person's current residence;\nfalse if the residence is a past residence.", - "type": "boolean" - } - }, - "id": "Residence", - "description": "A person's past or current residence.", "type": "object" }, - "Event": { - "description": "An event related to the person.", - "type": "object", + "ContactGroupResponse": { + "description": "The response for a specific contact group.", + "id": "ContactGroupResponse", "properties": { - "metadata": { - "description": "Metadata about the event.", - "$ref": "FieldMetadata" + "contactGroup": { + "$ref": "ContactGroup", + "description": "The contact group." }, - "type": { - "description": "The type of the event. The type can be custom or predefined.\nPossible values include, but are not limited to, the following:\n\n* `anniversary`\n* `other`", + "requestedResourceName": { + "description": "The original requested resource name.", "type": "string" }, - "date": { - "$ref": "Date", - "description": "The date of the event." - }, - "formattedType": { - "description": "The read-only type of the event translated and formatted in the\nviewer's account locale or the `Accept-Language` HTTP header locale.", - "type": "string" + "status": { + "$ref": "Status", + "description": "The status of the response." } }, - "id": "Event" - }, - "ModifyContactGroupMembersResponse": { - "description": "The response to a modify contact group members request.", - "type": "object", - "properties": { - "notFoundResourceNames": { - "description": "The contact people resource names that were not found.", - "type": "array", - "items": { - "type": "string" - } - } - }, - "id": "ModifyContactGroupMembersResponse" - }, - "ProfileMetadata": { - "description": "The read-only metadata about a profile.", - "type": "object", - "properties": { - "userTypes": { - "enumDescriptions": [ - "The user type is not known.", - "The user is a Google user.", - "The user is a Google+ user.", - "The user is a Google Apps for Work user." - ], - "description": "The user types.", - "type": "array", - "items": { - "type": "string", - "enum": [ - "USER_TYPE_UNKNOWN", - "GOOGLE_USER", - "GPLUS_USER", - "GOOGLE_APPS_USER" - ] - } - }, - "objectType": { - "enumDescriptions": [ - "Unspecified.", - "Person.", - "[Google+ Page.](http://www.google.com/+/brands/)" - ], - "enum": [ - "OBJECT_TYPE_UNSPECIFIED", - "PERSON", - "PAGE" - ], - "description": "The profile object type.", - "type": "string" - } - }, - "id": "ProfileMetadata" - }, - "Gender": { - "description": "A person's gender.", - "type": "object", - "properties": { - "value": { - "description": "The gender for the person. The gender can be custom or predefined.\nPossible values include, but are not limited to, the\nfollowing:\n\n* `male`\n* `female`\n* `other`\n* `unknown`", - "type": "string" - }, - "formattedValue": { - "description": "The read-only value of the gender translated and formatted in the viewer's\naccount locale or the `Accept-Language` HTTP header locale.", - "type": "string" - }, - "metadata": { - "$ref": "FieldMetadata", - "description": "Metadata about the gender." - } - }, - "id": "Gender" + "type": "object" }, "CoverPhoto": { + "description": "A person's read-only cover photo. A large image shown on the person's\nprofile page that represents who they are or what they care about.", + "id": "CoverPhoto", "properties": { - "metadata": { - "description": "Metadata about the cover photo.", - "$ref": "FieldMetadata" - }, "default": { "description": "True if the cover photo is the default cover photo;\nfalse if the cover photo is a user-provided cover photo.", "type": "boolean" }, + "metadata": { + "$ref": "FieldMetadata", + "description": "Metadata about the cover photo." + }, "url": { "description": "The URL of the cover photo.", "type": "string" } }, - "id": "CoverPhoto", - "description": "A person's read-only cover photo. A large image shown on the person's\nprofile page that represents who they are or what they care about.", "type": "object" }, - "Interest": { - "description": "One of the person's interests.", - "type": "object", + "CreateContactGroupRequest": { + "description": "A request to create a new contact group.", + "id": "CreateContactGroupRequest", "properties": { - "value": { - "description": "The interest; for example, `stargazing`.", - "type": "string" - }, - "metadata": { - "description": "Metadata about the interest.", - "$ref": "FieldMetadata" + "contactGroup": { + "$ref": "ContactGroup", + "description": "The contact group to create." } }, - "id": "Interest" + "type": "object" }, - "Nickname": { + "Date": { + "description": "Represents a whole calendar date, for example a date of birth. The time\nof day and time zone are either specified elsewhere or are not\nsignificant. The date is relative to the\n[Proleptic Gregorian Calendar](https://en.wikipedia.org/wiki/Proleptic_Gregorian_calendar).\nThe day may be 0 to represent a year and month where the day is not\nsignificant. The year may be 0 to represent a month and day independent\nof year; for example, anniversary date.", + "id": "Date", "properties": { - "metadata": { - "description": "Metadata about the nickname.", - "$ref": "FieldMetadata" + "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": { - "enumDescriptions": [ - "Generic nickname.", - "Maiden name or birth family name. Used when the person's family name has\nchanged as a result of marriage.", - "Initials.", - "Google+ profile nickname.", - "A professional affiliation or other name; for example, `Dr. Smith.`" - ], - "enum": [ - "DEFAULT", - "MAIDEN_NAME", - "INITIALS", - "GPLUS", - "OTHER_NAME" - ], - "description": "The type of the nickname.", - "type": "string" + "month": { + "description": "Month of year. Must be from 1 to 12.", + "format": "int32", + "type": "integer" }, - "value": { - "description": "The nickname.", - "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" + } + }, + "type": "object" + }, + "DomainMembership": { + "description": "A Google Apps Domain membership.", + "id": "DomainMembership", + "properties": { + "inViewerDomain": { + "description": "True if the person is in the viewer's Google Apps domain.", + "type": "boolean" } }, - "id": "Nickname", - "description": "A person's nickname.", "type": "object" }, "EmailAddress": { + "description": "A person's email address.", + "id": "EmailAddress", "properties": { - "formattedType": { - "description": "The read-only type of the email address translated and formatted in the\nviewer's account locale or the `Accept-Language` HTTP header locale.", - "type": "string" - }, "displayName": { "description": "The display name of the email.", "type": "string" }, + "formattedType": { + "description": "The read-only type of the email address translated and formatted in the\nviewer's account locale or the `Accept-Language` HTTP header locale.", + "type": "string" + }, "metadata": { "$ref": "FieldMetadata", "description": "Metadata about the email address." @@ -1932,13 +945,898 @@ "type": "string" } }, - "id": "EmailAddress", - "description": "A person's email address.", + "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" + }, + "Event": { + "description": "An event related to the person.", + "id": "Event", + "properties": { + "date": { + "$ref": "Date", + "description": "The date of the event." + }, + "formattedType": { + "description": "The read-only type of the event translated and formatted in the\nviewer's account locale or the `Accept-Language` HTTP header locale.", + "type": "string" + }, + "metadata": { + "$ref": "FieldMetadata", + "description": "Metadata about the event." + }, + "type": { + "description": "The type of the event. The type can be custom or predefined.\nPossible values include, but are not limited to, the following:\n\n* `anniversary`\n* `other`", + "type": "string" + } + }, + "type": "object" + }, + "FieldMetadata": { + "description": "Metadata about a field.", + "id": "FieldMetadata", + "properties": { + "primary": { + "description": "True if the field is the primary field; false if the field is a secondary\nfield.", + "type": "boolean" + }, + "source": { + "$ref": "Source", + "description": "The source of the field." + }, + "verified": { + "description": "True if the field is verified; false if the field is unverified. A\nverified field is typically a name, email address, phone number, or\nwebsite that has been confirmed to be owned by the person.", + "type": "boolean" + } + }, + "type": "object" + }, + "Gender": { + "description": "A person's gender.", + "id": "Gender", + "properties": { + "formattedValue": { + "description": "The read-only value of the gender translated and formatted in the viewer's\naccount locale or the `Accept-Language` HTTP header locale.", + "type": "string" + }, + "metadata": { + "$ref": "FieldMetadata", + "description": "Metadata about the gender." + }, + "value": { + "description": "The gender for the person. The gender can be custom or predefined.\nPossible values include, but are not limited to, the\nfollowing:\n\n* `male`\n* `female`\n* `other`\n* `unknown`", + "type": "string" + } + }, + "type": "object" + }, + "GetPeopleResponse": { + "id": "GetPeopleResponse", + "properties": { + "responses": { + "description": "The response for each requested resource name.", + "items": { + "$ref": "PersonResponse" + }, + "type": "array" + } + }, + "type": "object" + }, + "ImClient": { + "description": "A person's instant messaging client.", + "id": "ImClient", + "properties": { + "formattedProtocol": { + "description": "The read-only protocol of the IM client formatted in the viewer's account\nlocale or the `Accept-Language` HTTP header locale.", + "type": "string" + }, + "formattedType": { + "description": "The read-only type of the IM client translated and formatted in the\nviewer's account locale or the `Accept-Language` HTTP header locale.", + "type": "string" + }, + "metadata": { + "$ref": "FieldMetadata", + "description": "Metadata about the IM client." + }, + "protocol": { + "description": "The protocol of the IM client. The protocol can be custom or predefined.\nPossible values include, but are not limited to, the following:\n\n* `aim`\n* `msn`\n* `yahoo`\n* `skype`\n* `qq`\n* `googleTalk`\n* `icq`\n* `jabber`\n* `netMeeting`", + "type": "string" + }, + "type": { + "description": "The type of the IM client. The type can be custom or predefined.\nPossible values include, but are not limited to, the following:\n\n* `home`\n* `work`\n* `other`", + "type": "string" + }, + "username": { + "description": "The user name used in the IM client.", + "type": "string" + } + }, + "type": "object" + }, + "Interest": { + "description": "One of the person's interests.", + "id": "Interest", + "properties": { + "metadata": { + "$ref": "FieldMetadata", + "description": "Metadata about the interest." + }, + "value": { + "description": "The interest; for example, `stargazing`.", + "type": "string" + } + }, + "type": "object" + }, + "ListConnectionsResponse": { + "id": "ListConnectionsResponse", + "properties": { + "connections": { + "description": "The list of people that the requestor is connected to.", + "items": { + "$ref": "Person" + }, + "type": "array" + }, + "nextPageToken": { + "description": "The token that can be used to retrieve the next page of results.", + "type": "string" + }, + "nextSyncToken": { + "description": "The token that can be used to retrieve changes since the last request.", + "type": "string" + }, + "totalItems": { + "description": "The total number of items in the list without pagination.", + "format": "int32", + "type": "integer" + }, + "totalPeople": { + "description": "**DEPRECATED** (Please use totalItems)\nThe total number of people in the list without pagination.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "ListContactGroupsResponse": { + "description": "The response to a list contact groups request.", + "id": "ListContactGroupsResponse", + "properties": { + "contactGroups": { + "description": "The list of contact groups. Members of the contact groups are not\npopulated.", + "items": { + "$ref": "ContactGroup" + }, + "type": "array" + }, + "nextPageToken": { + "description": "The token that can be used to retrieve the next page of results.", + "type": "string" + }, + "nextSyncToken": { + "description": "The token that can be used to retrieve changes since the last request.", + "type": "string" + }, + "totalItems": { + "description": "The total number of items in the list without pagination.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "Locale": { + "description": "A person's locale preference.", + "id": "Locale", + "properties": { + "metadata": { + "$ref": "FieldMetadata", + "description": "Metadata about the locale." + }, + "value": { + "description": "The well-formed [IETF BCP 47](https://tools.ietf.org/html/bcp47)\nlanguage tag representing the locale.", + "type": "string" + } + }, + "type": "object" + }, + "Membership": { + "description": "A person's read-only membership in a group.", + "id": "Membership", + "properties": { + "contactGroupMembership": { + "$ref": "ContactGroupMembership", + "description": "The contact group membership." + }, + "domainMembership": { + "$ref": "DomainMembership", + "description": "The domain membership." + }, + "metadata": { + "$ref": "FieldMetadata", + "description": "Metadata about the membership." + } + }, + "type": "object" + }, + "ModifyContactGroupMembersRequest": { + "description": "A request to modify an existing contact group's members. Contacts can be\nremoved from any group but they can only be added to a user group or\nmyContacts or starred system groups.", + "id": "ModifyContactGroupMembersRequest", + "properties": { + "resourceNamesToAdd": { + "description": "The resource names of the contact people to add in the form of in the form\n`people/`\u003cvar\u003eperson_id\u003c/var\u003e.", + "items": { + "type": "string" + }, + "type": "array" + }, + "resourceNamesToRemove": { + "description": "The resource names of the contact people to remove in the form of in the\nform of `people/`\u003cvar\u003eperson_id\u003c/var\u003e.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "ModifyContactGroupMembersResponse": { + "description": "The response to a modify contact group members request.", + "id": "ModifyContactGroupMembersResponse", + "properties": { + "notFoundResourceNames": { + "description": "The contact people resource names that were not found.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "Name": { + "description": "A person's name. If the name is a mononym, the family name is empty.", + "id": "Name", + "properties": { + "displayName": { + "description": "The read-only display name formatted according to the locale specified by\nthe viewer's account or the `Accept-Language` HTTP header.", + "type": "string" + }, + "displayNameLastFirst": { + "description": "The read-only display name with the last name first formatted according to\nthe locale specified by the viewer's account or the\n`Accept-Language` HTTP header.", + "type": "string" + }, + "familyName": { + "description": "The family name.", + "type": "string" + }, + "givenName": { + "description": "The given name.", + "type": "string" + }, + "honorificPrefix": { + "description": "The honorific prefixes, such as `Mrs.` or `Dr.`", + "type": "string" + }, + "honorificSuffix": { + "description": "The honorific suffixes, such as `Jr.`", + "type": "string" + }, + "metadata": { + "$ref": "FieldMetadata", + "description": "Metadata about the name." + }, + "middleName": { + "description": "The middle name(s).", + "type": "string" + }, + "phoneticFamilyName": { + "description": "The family name spelled as it sounds.", + "type": "string" + }, + "phoneticFullName": { + "description": "The full name spelled as it sounds.", + "type": "string" + }, + "phoneticGivenName": { + "description": "The given name spelled as it sounds.", + "type": "string" + }, + "phoneticHonorificPrefix": { + "description": "The honorific prefixes spelled as they sound.", + "type": "string" + }, + "phoneticHonorificSuffix": { + "description": "The honorific suffixes spelled as they sound.", + "type": "string" + }, + "phoneticMiddleName": { + "description": "The middle name(s) spelled as they sound.", + "type": "string" + } + }, + "type": "object" + }, + "Nickname": { + "description": "A person's nickname.", + "id": "Nickname", + "properties": { + "metadata": { + "$ref": "FieldMetadata", + "description": "Metadata about the nickname." + }, + "type": { + "description": "The type of the nickname.", + "enum": [ + "DEFAULT", + "MAIDEN_NAME", + "INITIALS", + "GPLUS", + "OTHER_NAME" + ], + "enumDescriptions": [ + "Generic nickname.", + "Maiden name or birth family name. Used when the person's family name has\nchanged as a result of marriage.", + "Initials.", + "Google+ profile nickname.", + "A professional affiliation or other name; for example, `Dr. Smith.`" + ], + "type": "string" + }, + "value": { + "description": "The nickname.", + "type": "string" + } + }, + "type": "object" + }, + "Occupation": { + "description": "A person's occupation.", + "id": "Occupation", + "properties": { + "metadata": { + "$ref": "FieldMetadata", + "description": "Metadata about the occupation." + }, + "value": { + "description": "The occupation; for example, `carpenter`.", + "type": "string" + } + }, + "type": "object" + }, + "Organization": { + "description": "A person's past or current organization. Overlapping date ranges are\npermitted.", + "id": "Organization", + "properties": { + "current": { + "description": "True if the organization is the person's current organization;\nfalse if the organization is a past organization.", + "type": "boolean" + }, + "department": { + "description": "The person's department at the organization.", + "type": "string" + }, + "domain": { + "description": "The domain name associated with the organization; for example, `google.com`.", + "type": "string" + }, + "endDate": { + "$ref": "Date", + "description": "The end date when the person left the organization." + }, + "formattedType": { + "description": "The read-only type of the organization translated and formatted in the\nviewer's account locale or the `Accept-Language` HTTP header locale.", + "type": "string" + }, + "jobDescription": { + "description": "The person's job description at the organization.", + "type": "string" + }, + "location": { + "description": "The location of the organization office the person works at.", + "type": "string" + }, + "metadata": { + "$ref": "FieldMetadata", + "description": "Metadata about the organization." + }, + "name": { + "description": "The name of the organization.", + "type": "string" + }, + "phoneticName": { + "description": "The phonetic name of the organization.", + "type": "string" + }, + "startDate": { + "$ref": "Date", + "description": "The start date when the person joined the organization." + }, + "symbol": { + "description": "The symbol associated with the organization; for example, a stock ticker\nsymbol, abbreviation, or acronym.", + "type": "string" + }, + "title": { + "description": "The person's job title at the organization.", + "type": "string" + }, + "type": { + "description": "The type of the organization. The type can be custom or predefined.\nPossible values include, but are not limited to, the following:\n\n* `work`\n* `school`", + "type": "string" + } + }, + "type": "object" + }, + "Person": { + "description": "Information about a person merged from various data sources such as the\nauthenticated user's contacts and profile data.\n\nMost fields can have multiple items. The items in a field have no guaranteed\norder, but each non-empty field is guaranteed to have exactly one field with\n`metadata.primary` set to true.", + "id": "Person", + "properties": { + "addresses": { + "description": "The person's street addresses.", + "items": { + "$ref": "Address" + }, + "type": "array" + }, + "ageRange": { + "description": "**DEPRECATED** (Please use `person.ageRanges` instead)**\n\nThe person's read-only age range.", + "enum": [ + "AGE_RANGE_UNSPECIFIED", + "LESS_THAN_EIGHTEEN", + "EIGHTEEN_TO_TWENTY", + "TWENTY_ONE_OR_OLDER" + ], + "enumDescriptions": [ + "Unspecified.", + "Younger than eighteen.", + "Between eighteen and twenty.", + "Twenty-one and older." + ], + "type": "string" + }, + "ageRanges": { + "description": "The person's read-only age ranges.", + "items": { + "$ref": "AgeRangeType" + }, + "type": "array" + }, + "biographies": { + "description": "The person's biographies.", + "items": { + "$ref": "Biography" + }, + "type": "array" + }, + "birthdays": { + "description": "The person's birthdays.", + "items": { + "$ref": "Birthday" + }, + "type": "array" + }, + "braggingRights": { + "description": "The person's bragging rights.", + "items": { + "$ref": "BraggingRights" + }, + "type": "array" + }, + "coverPhotos": { + "description": "The person's read-only cover photos.", + "items": { + "$ref": "CoverPhoto" + }, + "type": "array" + }, + "emailAddresses": { + "description": "The person's email addresses.", + "items": { + "$ref": "EmailAddress" + }, + "type": "array" + }, + "etag": { + "description": "The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the\nresource. Used for web cache validation.", + "type": "string" + }, + "events": { + "description": "The person's events.", + "items": { + "$ref": "Event" + }, + "type": "array" + }, + "genders": { + "description": "The person's genders.", + "items": { + "$ref": "Gender" + }, + "type": "array" + }, + "imClients": { + "description": "The person's instant messaging clients.", + "items": { + "$ref": "ImClient" + }, + "type": "array" + }, + "interests": { + "description": "The person's interests.", + "items": { + "$ref": "Interest" + }, + "type": "array" + }, + "locales": { + "description": "The person's locale preferences.", + "items": { + "$ref": "Locale" + }, + "type": "array" + }, + "memberships": { + "description": "The person's read-only group memberships.", + "items": { + "$ref": "Membership" + }, + "type": "array" + }, + "metadata": { + "$ref": "PersonMetadata", + "description": "Read-only metadata about the person." + }, + "names": { + "description": "The person's names.", + "items": { + "$ref": "Name" + }, + "type": "array" + }, + "nicknames": { + "description": "The person's nicknames.", + "items": { + "$ref": "Nickname" + }, + "type": "array" + }, + "occupations": { + "description": "The person's occupations.", + "items": { + "$ref": "Occupation" + }, + "type": "array" + }, + "organizations": { + "description": "The person's past or current organizations.", + "items": { + "$ref": "Organization" + }, + "type": "array" + }, + "phoneNumbers": { + "description": "The person's phone numbers.", + "items": { + "$ref": "PhoneNumber" + }, + "type": "array" + }, + "photos": { + "description": "The person's read-only photos.", + "items": { + "$ref": "Photo" + }, + "type": "array" + }, + "relations": { + "description": "The person's relations.", + "items": { + "$ref": "Relation" + }, + "type": "array" + }, + "relationshipInterests": { + "description": "The person's read-only relationship interests.", + "items": { + "$ref": "RelationshipInterest" + }, + "type": "array" + }, + "relationshipStatuses": { + "description": "The person's read-only relationship statuses.", + "items": { + "$ref": "RelationshipStatus" + }, + "type": "array" + }, + "residences": { + "description": "The person's residences.", + "items": { + "$ref": "Residence" + }, + "type": "array" + }, + "resourceName": { + "description": "The resource name for the person, assigned by the server. An ASCII string\nwith a max length of 27 characters, in the form of\n`people/`\u003cvar\u003eperson_id\u003c/var\u003e.", + "type": "string" + }, + "skills": { + "description": "The person's skills.", + "items": { + "$ref": "Skill" + }, + "type": "array" + }, + "taglines": { + "description": "The person's read-only taglines.", + "items": { + "$ref": "Tagline" + }, + "type": "array" + }, + "urls": { + "description": "The person's associated URLs.", + "items": { + "$ref": "Url" + }, + "type": "array" + }, + "userDefined": { + "description": "The person's user defined data.", + "items": { + "$ref": "UserDefined" + }, + "type": "array" + } + }, + "type": "object" + }, + "PersonMetadata": { + "description": "The read-only metadata about a person.", + "id": "PersonMetadata", + "properties": { + "deleted": { + "description": "True if the person resource has been deleted. Populated only for\n[`connections.list`](/people/api/rest/v1/people.connections/list) requests\nthat include a sync token.", + "type": "boolean" + }, + "linkedPeopleResourceNames": { + "description": "Resource names of people linked to this resource.", + "items": { + "type": "string" + }, + "type": "array" + }, + "objectType": { + "description": "**DEPRECATED** (Please use\n`person.metadata.sources.profileMetadata.objectType` instead)\n\nThe type of the person object.", + "enum": [ + "OBJECT_TYPE_UNSPECIFIED", + "PERSON", + "PAGE" + ], + "enumDescriptions": [ + "Unspecified.", + "Person.", + "[Google+ Page.](http://www.google.com/+/brands/)" + ], + "type": "string" + }, + "previousResourceNames": { + "description": "Any former resource names this person has had. Populated only for\n[`connections.list`](/people/api/rest/v1/people.connections/list) requests\nthat include a sync token.\n\nThe resource name may change when adding or removing fields that link a\ncontact and profile such as a verified email, verified phone number, or\nprofile URL.", + "items": { + "type": "string" + }, + "type": "array" + }, + "sources": { + "description": "The sources of data for the person.", + "items": { + "$ref": "Source" + }, + "type": "array" + } + }, + "type": "object" + }, + "PersonResponse": { + "description": "The response for a single person", + "id": "PersonResponse", + "properties": { + "httpStatusCode": { + "description": "**DEPRECATED** (Please use status instead)\n\n[HTTP 1.1 status code]\n(http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html).", + "format": "int32", + "type": "integer" + }, + "person": { + "$ref": "Person", + "description": "The person." + }, + "requestedResourceName": { + "description": "The original requested resource name. May be different than the resource\nname on the returned person.\n\nThe resource name can change when adding or removing fields that link a\ncontact and profile such as a verified email, verified phone number, or a\nprofile URL.", + "type": "string" + }, + "status": { + "$ref": "Status", + "description": "The status of the response." + } + }, + "type": "object" + }, + "PhoneNumber": { + "description": "A person's phone number.", + "id": "PhoneNumber", + "properties": { + "canonicalForm": { + "description": "The read-only canonicalized [ITU-T E.164](https://law.resource.org/pub/us/cfr/ibr/004/itu-t.E.164.1.2008.pdf)\nform of the phone number.", + "type": "string" + }, + "formattedType": { + "description": "The read-only type of the phone number translated and formatted in the\nviewer's account locale or the `Accept-Language` HTTP header locale.", + "type": "string" + }, + "metadata": { + "$ref": "FieldMetadata", + "description": "Metadata about the phone number." + }, + "type": { + "description": "The type of the phone number. The type can be custom or predefined.\nPossible values include, but are not limited to, the following:\n\n* `home`\n* `work`\n* `mobile`\n* `homeFax`\n* `workFax`\n* `otherFax`\n* `pager`\n* `workMobile`\n* `workPager`\n* `main`\n* `googleVoice`\n* `other`", + "type": "string" + }, + "value": { + "description": "The phone number.", + "type": "string" + } + }, + "type": "object" + }, + "Photo": { + "description": "A person's read-only photo. A picture shown next to the person's name to\nhelp others recognize the person.", + "id": "Photo", + "properties": { + "default": { + "description": "True if the photo is a default photo;\nfalse if the photo is a user-provided photo.", + "type": "boolean" + }, + "metadata": { + "$ref": "FieldMetadata", + "description": "Metadata about the photo." + }, + "url": { + "description": "The URL of the photo. You can change the desired size by appending a query\nparameter `sz=`\u003cvar\u003esize\u003c/var\u003e at the end of the url. Example:\n`https://lh3.googleusercontent.com/-T_wVWLlmg7w/AAAAAAAAAAI/AAAAAAAABa8/00gzXvDBYqw/s100/photo.jpg?sz=50`", + "type": "string" + } + }, + "type": "object" + }, + "ProfileMetadata": { + "description": "The read-only metadata about a profile.", + "id": "ProfileMetadata", + "properties": { + "objectType": { + "description": "The profile object type.", + "enum": [ + "OBJECT_TYPE_UNSPECIFIED", + "PERSON", + "PAGE" + ], + "enumDescriptions": [ + "Unspecified.", + "Person.", + "[Google+ Page.](http://www.google.com/+/brands/)" + ], + "type": "string" + }, + "userTypes": { + "description": "The user types.", + "enumDescriptions": [ + "The user type is not known.", + "The user is a Google user.", + "The user is a Google+ user.", + "The user is a Google Apps for Work user." + ], + "items": { + "enum": [ + "USER_TYPE_UNKNOWN", + "GOOGLE_USER", + "GPLUS_USER", + "GOOGLE_APPS_USER" + ], + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "Relation": { + "description": "A person's relation to another person.", + "id": "Relation", + "properties": { + "formattedType": { + "description": "The type of the relation translated and formatted in the viewer's account\nlocale or the locale specified in the Accept-Language HTTP header.", + "type": "string" + }, + "metadata": { + "$ref": "FieldMetadata", + "description": "Metadata about the relation." + }, + "person": { + "description": "The name of the other person this relation refers to.", + "type": "string" + }, + "type": { + "description": "The person's relation to the other person. The type can be custom or predefined.\nPossible values include, but are not limited to, the following values:\n\n* `spouse`\n* `child`\n* `mother`\n* `father`\n* `parent`\n* `brother`\n* `sister`\n* `friend`\n* `relative`\n* `domesticPartner`\n* `manager`\n* `assistant`\n* `referredBy`\n* `partner`", + "type": "string" + } + }, + "type": "object" + }, + "RelationshipInterest": { + "description": "A person's read-only relationship interest .", + "id": "RelationshipInterest", + "properties": { + "formattedValue": { + "description": "The value of the relationship interest translated and formatted in the\nviewer's account locale or the locale specified in the Accept-Language\nHTTP header.", + "type": "string" + }, + "metadata": { + "$ref": "FieldMetadata", + "description": "Metadata about the relationship interest." + }, + "value": { + "description": "The kind of relationship the person is looking for. The value can be custom\nor predefined. Possible values include, but are not limited to, the\nfollowing values:\n\n* `friend`\n* `date`\n* `relationship`\n* `networking`", + "type": "string" + } + }, + "type": "object" + }, + "RelationshipStatus": { + "description": "A person's read-only relationship status.", + "id": "RelationshipStatus", + "properties": { + "formattedValue": { + "description": "The read-only value of the relationship status translated and formatted in\nthe viewer's account locale or the `Accept-Language` HTTP header locale.", + "type": "string" + }, + "metadata": { + "$ref": "FieldMetadata", + "description": "Metadata about the relationship status." + }, + "value": { + "description": "The relationship status. The value can be custom or predefined.\nPossible values include, but are not limited to, the following:\n\n* `single`\n* `inARelationship`\n* `engaged`\n* `married`\n* `itsComplicated`\n* `openRelationship`\n* `widowed`\n* `inDomesticPartnership`\n* `inCivilUnion`", + "type": "string" + } + }, + "type": "object" + }, + "Residence": { + "description": "A person's past or current residence.", + "id": "Residence", + "properties": { + "current": { + "description": "True if the residence is the person's current residence;\nfalse if the residence is a past residence.", + "type": "boolean" + }, + "metadata": { + "$ref": "FieldMetadata", + "description": "Metadata about the residence." + }, + "value": { + "description": "The address of the residence.", + "type": "string" + } + }, "type": "object" }, "Skill": { "description": "A skill that the person has.", - "type": "object", + "id": "Skill", "properties": { "metadata": { "$ref": "FieldMetadata", @@ -1949,46 +1847,148 @@ "type": "string" } }, - "id": "Skill" - } - }, - "icons": { - "x16": "http://www.google.com/images/icons/product/search-16.gif", - "x32": "http://www.google.com/images/icons/product/search-32.gif" - }, - "protocol": "rest", - "canonicalName": "People Service", - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/user.addresses.read": { - "description": "View your street addresses" + "type": "object" + }, + "Source": { + "description": "The source of a field.", + "id": "Source", + "properties": { + "etag": { + "description": "**Only populated in `person.metadata.sources`.**\n\nThe [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the\nsource. Used for web cache validation.", + "type": "string" }, - "https://www.googleapis.com/auth/contacts": { - "description": "Manage your contacts" + "id": { + "description": "The unique identifier within the source type generated by the server.", + "type": "string" }, - "https://www.googleapis.com/auth/user.emails.read": { - "description": "View your email addresses" + "profileMetadata": { + "$ref": "ProfileMetadata", + "description": "**Only populated in `person.metadata.sources`.**\n\nMetadata about a source of type PROFILE." }, - "https://www.googleapis.com/auth/user.phonenumbers.read": { - "description": "View your phone numbers" + "type": { + "description": "The source type.", + "enum": [ + "SOURCE_TYPE_UNSPECIFIED", + "ACCOUNT", + "PROFILE", + "DOMAIN_PROFILE", + "CONTACT" + ], + "enumDescriptions": [ + "Unspecified.", + "[Google Account](https://accounts.google.com).", + "[Google profile](https://profiles.google.com). You can view the\nprofile at https://profiles.google.com/\u003cvar\u003eid\u003c/var\u003e where\n\u003cvar\u003eid\u003c/var\u003e is the source id.", + "[Google Apps domain profile](https://admin.google.com).", + "[Google contact](https://contacts.google.com). You can view the\ncontact at https://contact.google.com/\u003cvar\u003eid\u003c/var\u003e where \u003cvar\u003eid\u003c/var\u003e\nis the source id." + ], + "type": "string" }, - "https://www.googleapis.com/auth/userinfo.email": { - "description": "View your email address" - }, - "https://www.googleapis.com/auth/contacts.readonly": { - "description": "View your contacts" - }, - "https://www.googleapis.com/auth/user.birthday.read": { - "description": "View your complete date of birth" - }, - "https://www.googleapis.com/auth/plus.login": { - "description": "Know the list of people in your circles, your age range, and language" - }, - "https://www.googleapis.com/auth/userinfo.profile": { - "description": "View your basic profile info" + "updateTime": { + "description": "**Only populated in `person.metadata.sources`.**\n\nLast update timestamp of this source.", + "format": "google-datetime", + "type": "string" } - } + }, + "type": "object" + }, + "Status": { + "description": "The `Status` type defines a logical error model that is suitable for different\nprogramming environments, including REST APIs and RPC APIs. It is used by\n[gRPC](https://github.com/grpc). The error model is designed to be:\n\n- Simple to use and understand for most users\n- Flexible enough to meet unexpected needs\n\n# Overview\n\nThe `Status` message contains three pieces of data: error code, error message,\nand error details. The error code should be an enum value of\ngoogle.rpc.Code, but it may accept additional error codes if needed. The\nerror message should be a developer-facing English message that helps\ndevelopers *understand* and *resolve* the error. If a localized user-facing\nerror message is needed, put the localized message in the error details or\nlocalize it in the client. The optional error details may contain arbitrary\ninformation about the error. There is a predefined set of error detail types\nin the package `google.rpc` that can be used for common error conditions.\n\n# Language mapping\n\nThe `Status` message is the logical representation of the error model, but it\nis not necessarily the actual wire format. When the `Status` message is\nexposed in different client libraries and different wire protocols, it can be\nmapped differently. For example, it will likely be mapped to some exceptions\nin Java, but more likely mapped to some error codes in C.\n\n# Other uses\n\nThe error model and the `Status` message can be used in a variety of\nenvironments, either with or without APIs, to provide a\nconsistent developer experience across different environments.\n\nExample uses of this error model include:\n\n- Partial errors. If a service needs to return partial errors to the client,\n it may embed the `Status` in the normal response to indicate the partial\n errors.\n\n- Workflow errors. A typical workflow has multiple steps. Each step may\n have a `Status` message for error reporting.\n\n- Batch operations. If a client uses batch request and batch response, the\n `Status` message should be used directly inside batch response, one for\n each error sub-response.\n\n- Asynchronous operations. If an API call embeds asynchronous operation\n results in its response, the status of those operations should be\n represented directly using the `Status` message.\n\n- Logging. If some API errors are stored in logs, the message `Status` could\n be used directly after any stripping needed for security/privacy reasons.", + "id": "Status", + "properties": { + "code": { + "description": "The status code, which should be an enum value of google.rpc.Code.", + "format": "int32", + "type": "integer" + }, + "details": { + "description": "A list of messages that carry the error details. There is a common set of\nmessage types for APIs to use.", + "items": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "A developer-facing error message, which should be in English. Any\nuser-facing error message should be localized and sent in the\ngoogle.rpc.Status.details field, or localized by the client.", + "type": "string" + } + }, + "type": "object" + }, + "Tagline": { + "description": "A read-only brief one-line description of the person.", + "id": "Tagline", + "properties": { + "metadata": { + "$ref": "FieldMetadata", + "description": "Metadata about the tagline." + }, + "value": { + "description": "The tagline.", + "type": "string" + } + }, + "type": "object" + }, + "UpdateContactGroupRequest": { + "description": "A request to update an existing user contact group. All updated fields will\nbe replaced.", + "id": "UpdateContactGroupRequest", + "properties": { + "contactGroup": { + "$ref": "ContactGroup", + "description": "The contact group to update." + } + }, + "type": "object" + }, + "Url": { + "description": "A person's associated URLs.", + "id": "Url", + "properties": { + "formattedType": { + "description": "The read-only type of the URL translated and formatted in the viewer's\naccount locale or the `Accept-Language` HTTP header locale.", + "type": "string" + }, + "metadata": { + "$ref": "FieldMetadata", + "description": "Metadata about the URL." + }, + "type": { + "description": "The type of the URL. The type can be custom or predefined.\nPossible values include, but are not limited to, the following:\n\n* `home`\n* `work`\n* `blog`\n* `profile`\n* `homePage`\n* `ftp`\n* `reservations`\n* `appInstallPage`: website for a Google+ application.\n* `other`", + "type": "string" + }, + "value": { + "description": "The URL.", + "type": "string" + } + }, + "type": "object" + }, + "UserDefined": { + "description": "Arbitrary user data that is populated by the end users.", + "id": "UserDefined", + "properties": { + "key": { + "description": "The end user specified key of the user defined data.", + "type": "string" + }, + "metadata": { + "$ref": "FieldMetadata", + "description": "Metadata about the user defined data." + }, + "value": { + "description": "The end user specified value of the user defined data.", + "type": "string" + } + }, + "type": "object" } - } -} + }, + "servicePath": "", + "title": "People API", + "version": "v1", + "version_module": true +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/people/v1/people-gen.go b/vendor/google.golang.org/api/people/v1/people-gen.go index dbc569c42..e5c035a29 100644 --- a/vendor/google.golang.org/api/people/v1/people-gen.go +++ b/vendor/google.golang.org/api/people/v1/people-gen.go @@ -1,4 +1,4 @@ -// Package people provides access to the Google People API. +// Package people provides access to the People API. // // See https://developers.google.com/people/ // @@ -1214,7 +1214,10 @@ func (s *Membership) MarshalJSON() ([]byte, error) { } // ModifyContactGroupMembersRequest: A request to modify an existing -// contact group's members. +// contact group's members. Contacts can be +// removed from any group but they can only be added to a user group +// or +// myContacts or starred system groups. type ModifyContactGroupMembersRequest struct { // ResourceNamesToAdd: The resource names of the contact people to add // in the form of in the form @@ -2360,8 +2363,9 @@ func (s *Tagline) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -// UpdateContactGroupRequest: A request to update an existing contact -// group. Only the name can be updated. +// UpdateContactGroupRequest: A request to update an existing user +// contact group. All updated fields will +// be replaced. type UpdateContactGroupRequest struct { // ContactGroup: The contact group to update. ContactGroup *ContactGroup `json:"contactGroup,omitempty"` @@ -3793,7 +3797,9 @@ func (r *PeopleService) Get(resourceName string) *PeopleGetCall { // PersonFields sets the optional parameter "personFields": // **Required.** A field mask to restrict which fields on the person // are -// returned. Valid values are: +// returned. Multiple fields can be specified by separating them with +// commas. +// Valid values are: // // * addresses // * ageRanges @@ -3941,7 +3947,7 @@ func (c *PeopleGetCall) Do(opts ...googleapi.CallOption) (*Person, error) { // ], // "parameters": { // "personFields": { - // "description": "**Required.** A field mask to restrict which fields on the person are\nreturned. Valid values are:\n\n* addresses\n* ageRanges\n* biographies\n* birthdays\n* braggingRights\n* coverPhotos\n* emailAddresses\n* events\n* genders\n* imClients\n* interests\n* locales\n* memberships\n* metadata\n* names\n* nicknames\n* occupations\n* organizations\n* phoneNumbers\n* photos\n* relations\n* relationshipInterests\n* relationshipStatuses\n* residences\n* skills\n* taglines\n* urls", + // "description": "**Required.** A field mask to restrict which fields on the person are\nreturned. Multiple fields can be specified by separating them with commas.\nValid values are:\n\n* addresses\n* ageRanges\n* biographies\n* birthdays\n* braggingRights\n* coverPhotos\n* emailAddresses\n* events\n* genders\n* imClients\n* interests\n* locales\n* memberships\n* metadata\n* names\n* nicknames\n* occupations\n* organizations\n* phoneNumbers\n* photos\n* relations\n* relationshipInterests\n* relationshipStatuses\n* residences\n* skills\n* taglines\n* urls", // "format": "google-fieldmask", // "location": "query", // "type": "string" @@ -4004,7 +4010,9 @@ func (r *PeopleService) GetBatchGet() *PeopleGetBatchGetCall { // PersonFields sets the optional parameter "personFields": // **Required.** A field mask to restrict which fields on each person // are -// returned. Valid values are: +// returned. Multiple fields can be specified by separating them with +// commas. +// Valid values are: // // * addresses // * ageRanges @@ -4166,7 +4174,7 @@ func (c *PeopleGetBatchGetCall) Do(opts ...googleapi.CallOption) (*GetPeopleResp // "parameterOrder": [], // "parameters": { // "personFields": { - // "description": "**Required.** A field mask to restrict which fields on each person are\nreturned. Valid values are:\n\n* addresses\n* ageRanges\n* biographies\n* birthdays\n* braggingRights\n* coverPhotos\n* emailAddresses\n* events\n* genders\n* imClients\n* interests\n* locales\n* memberships\n* metadata\n* names\n* nicknames\n* occupations\n* organizations\n* phoneNumbers\n* photos\n* relations\n* relationshipInterests\n* relationshipStatuses\n* residences\n* skills\n* taglines\n* urls", + // "description": "**Required.** A field mask to restrict which fields on each person are\nreturned. Multiple fields can be specified by separating them with commas.\nValid values are:\n\n* addresses\n* ageRanges\n* biographies\n* birthdays\n* braggingRights\n* coverPhotos\n* emailAddresses\n* events\n* genders\n* imClients\n* interests\n* locales\n* memberships\n* metadata\n* names\n* nicknames\n* occupations\n* organizations\n* phoneNumbers\n* photos\n* relations\n* relationshipInterests\n* relationshipStatuses\n* residences\n* skills\n* taglines\n* urls", // "format": "google-fieldmask", // "location": "query", // "type": "string" @@ -4242,12 +4250,13 @@ func (r *PeopleService) UpdateContact(resourceName string, person *Person) *Peop // UpdatePersonFields sets the optional parameter "updatePersonFields": // **Required.** A field mask to restrict which fields on the person // are -// updated. Valid values are: +// updated. Multiple fields can be specified by separating them with +// commas. +// All updated fields will be replaced. Valid values are: // // * addresses // * biographies // * birthdays -// * braggingRights // * emailAddresses // * events // * genders @@ -4261,7 +4270,6 @@ func (r *PeopleService) UpdateContact(resourceName string, person *Person) *Peop // * phoneNumbers // * relations // * residences -// * skills // * urls func (c *PeopleUpdateContactCall) UpdatePersonFields(updatePersonFields string) *PeopleUpdateContactCall { c.urlParams_.Set("updatePersonFields", updatePersonFields) @@ -4370,7 +4378,7 @@ func (c *PeopleUpdateContactCall) Do(opts ...googleapi.CallOption) (*Person, err // "type": "string" // }, // "updatePersonFields": { - // "description": "**Required.** A field mask to restrict which fields on the person are\nupdated. Valid values are:\n\n* addresses\n* biographies\n* birthdays\n* braggingRights\n* emailAddresses\n* events\n* genders\n* imClients\n* interests\n* locales\n* names\n* nicknames\n* occupations\n* organizations\n* phoneNumbers\n* relations\n* residences\n* skills\n* urls", + // "description": "**Required.** A field mask to restrict which fields on the person are\nupdated. Multiple fields can be specified by separating them with commas.\nAll updated fields will be replaced. Valid values are:\n\n* addresses\n* biographies\n* birthdays\n* emailAddresses\n* events\n* genders\n* imClients\n* interests\n* locales\n* names\n* nicknames\n* occupations\n* organizations\n* phoneNumbers\n* relations\n* residences\n* urls", // "format": "google-fieldmask", // "location": "query", // "type": "string" @@ -4430,7 +4438,9 @@ func (c *PeopleConnectionsListCall) PageToken(pageToken string) *PeopleConnectio // PersonFields sets the optional parameter "personFields": // **Required.** A field mask to restrict which fields on each person // are -// returned. Valid values are: +// returned. Multiple fields can be specified by separating them with +// commas. +// Valid values are: // // * addresses // * ageRanges @@ -4627,7 +4637,7 @@ func (c *PeopleConnectionsListCall) Do(opts ...googleapi.CallOption) (*ListConne // "type": "string" // }, // "personFields": { - // "description": "**Required.** A field mask to restrict which fields on each person are\nreturned. Valid values are:\n\n* addresses\n* ageRanges\n* biographies\n* birthdays\n* braggingRights\n* coverPhotos\n* emailAddresses\n* events\n* genders\n* imClients\n* interests\n* locales\n* memberships\n* metadata\n* names\n* nicknames\n* occupations\n* organizations\n* phoneNumbers\n* photos\n* relations\n* relationshipInterests\n* relationshipStatuses\n* residences\n* skills\n* taglines\n* urls", + // "description": "**Required.** A field mask to restrict which fields on each person are\nreturned. Multiple fields can be specified by separating them with commas.\nValid values are:\n\n* addresses\n* ageRanges\n* biographies\n* birthdays\n* braggingRights\n* coverPhotos\n* emailAddresses\n* events\n* genders\n* imClients\n* interests\n* locales\n* memberships\n* metadata\n* names\n* nicknames\n* occupations\n* organizations\n* phoneNumbers\n* photos\n* relations\n* relationshipInterests\n* relationshipStatuses\n* residences\n* skills\n* taglines\n* urls", // "format": "google-fieldmask", // "location": "query", // "type": "string" diff --git a/vendor/google.golang.org/api/playcustomapp/v1/playcustomapp-api.json b/vendor/google.golang.org/api/playcustomapp/v1/playcustomapp-api.json index e814c2471..7b442b5da 100644 --- a/vendor/google.golang.org/api/playcustomapp/v1/playcustomapp-api.json +++ b/vendor/google.golang.org/api/playcustomapp/v1/playcustomapp-api.json @@ -1,149 +1,149 @@ { - "kind": "discovery#restDescription", - "etag": "\"YWOzh2SDasdU84ArJnpYek-OMdg/S9A8Fvkyeh8EMNMlBREkvuFfFUI\"", - "discoveryVersion": "v1", - "id": "playcustomapp:v1", - "name": "playcustomapp", - "version": "v1", - "revision": "20170622", - "title": "Google Play Custom App Publishing API", - "description": "An API to publish custom Android apps.", - "ownerDomain": "google.com", - "ownerName": "Google", - "icons": { - "x16": "https://www.gstatic.com/images/branding/product/1x/googleg_16dp.png", - "x32": "https://www.gstatic.com/images/branding/product/1x/googleg_32dp.png" - }, - "documentationLink": "https://developers.google.com/android/work/play/custom-app-api", - "protocol": "rest", - "baseUrl": "https://www.googleapis.com/playcustomapp/v1/accounts/", - "basePath": "/playcustomapp/v1/accounts/", - "rootUrl": "https://www.googleapis.com/", - "servicePath": "playcustomapp/v1/accounts/", - "batchPath": "batch/playcustomapp/v1", - "parameters": { - "alt": { - "type": "string", - "description": "Data format for the response.", - "default": "json", - "enum": [ - "json" - ], - "enumDescriptions": [ - "Responses with Content-Type of application/json" - ], - "location": "query" - }, - "fields": { - "type": "string", - "description": "Selector specifying which fields to include in a partial response.", - "location": "query" - }, - "key": { - "type": "string", - "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" - }, - "oauth_token": { - "type": "string", - "description": "OAuth 2.0 token for the current user.", - "location": "query" - }, - "prettyPrint": { - "type": "boolean", - "description": "Returns response with indentations and line breaks.", - "default": "true", - "location": "query" - }, - "quotaUser": { - "type": "string", - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", - "location": "query" - }, - "userIp": { - "type": "string", - "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", - "location": "query" - } - }, - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/androidpublisher": { - "description": "View and manage your Google Play Developer account" - } - } - } - }, - "schemas": { - "CustomApp": { - "id": "CustomApp", - "type": "object", - "description": "This resource represents a custom app.", - "properties": { - "languageCode": { - "type": "string", - "description": "Default listing language in BCP 47 format." - }, - "title": { - "type": "string", - "description": "Title for the Android app." - } - } - } - }, - "resources": { - "accounts": { - "resources": { - "customApps": { - "methods": { - "create": { - "id": "playcustomapp.accounts.customApps.create", - "path": "{account}/customApps", - "httpMethod": "POST", - "description": "Create and publish a new custom app.", - "parameters": { - "account": { - "type": "string", - "description": "Developer account ID.", - "required": true, - "format": "int64", - "location": "path" + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/androidpublisher": { + "description": "View and manage your Google Play Developer account" } - }, - "parameterOrder": [ - "account" - ], - "request": { - "$ref": "CustomApp" - }, - "response": { - "$ref": "CustomApp" - }, - "scopes": [ - "https://www.googleapis.com/auth/androidpublisher" - ], - "supportsMediaUpload": true, - "mediaUpload": { - "accept": [ - "*/*" - ], - "maxSize": "100MB", - "protocols": { - "simple": { - "multipart": true, - "path": "/upload/playcustomapp/v1/accounts/{account}/customApps" - }, - "resumable": { - "multipart": true, - "path": "/resumable/upload/playcustomapp/v1/accounts/{account}/customApps" - } - } - } } - } } - } - } - } -} + }, + "basePath": "/playcustomapp/v1/accounts/", + "baseUrl": "https://www.googleapis.com/playcustomapp/v1/accounts/", + "batchPath": "batch/playcustomapp/v1", + "description": "An API to publish custom Android apps.", + "discoveryVersion": "v1", + "documentationLink": "https://developers.google.com/android/work/play/custom-app-api", + "etag": "\"-iA1DTNe4s-I6JZXPt1t1Ypy8IU/S9A8Fvkyeh8EMNMlBREkvuFfFUI\"", + "icons": { + "x16": "https://www.gstatic.com/images/branding/product/1x/googleg_16dp.png", + "x32": "https://www.gstatic.com/images/branding/product/1x/googleg_32dp.png" + }, + "id": "playcustomapp:v1", + "kind": "discovery#restDescription", + "name": "playcustomapp", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "alt": { + "default": "json", + "description": "Data format for the response.", + "enum": [ + "json" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json" + ], + "location": "query", + "type": "string" + }, + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "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.", + "location": "query", + "type": "string" + }, + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", + "location": "query", + "type": "string" + }, + "userIp": { + "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", + "location": "query", + "type": "string" + } + }, + "protocol": "rest", + "resources": { + "accounts": { + "resources": { + "customApps": { + "methods": { + "create": { + "description": "Create and publish a new custom app.", + "httpMethod": "POST", + "id": "playcustomapp.accounts.customApps.create", + "mediaUpload": { + "accept": [ + "*/*" + ], + "maxSize": "100MB", + "protocols": { + "resumable": { + "multipart": true, + "path": "/resumable/upload/playcustomapp/v1/accounts/{account}/customApps" + }, + "simple": { + "multipart": true, + "path": "/upload/playcustomapp/v1/accounts/{account}/customApps" + } + } + }, + "parameterOrder": [ + "account" + ], + "parameters": { + "account": { + "description": "Developer account ID.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{account}/customApps", + "request": { + "$ref": "CustomApp" + }, + "response": { + "$ref": "CustomApp" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidpublisher" + ], + "supportsMediaUpload": true + } + } + } + } + } + }, + "revision": "20170622", + "rootUrl": "https://www.googleapis.com/", + "schemas": { + "CustomApp": { + "description": "This resource represents a custom app.", + "id": "CustomApp", + "properties": { + "languageCode": { + "description": "Default listing language in BCP 47 format.", + "type": "string" + }, + "title": { + "description": "Title for the Android app.", + "type": "string" + } + }, + "type": "object" + } + }, + "servicePath": "playcustomapp/v1/accounts/", + "title": "Google Play Custom App Publishing API", + "version": "v1" +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/playcustomapp/v1/playcustomapp-gen.go b/vendor/google.golang.org/api/playcustomapp/v1/playcustomapp-gen.go index 07855198e..df6c7863d 100644 --- a/vendor/google.golang.org/api/playcustomapp/v1/playcustomapp-gen.go +++ b/vendor/google.golang.org/api/playcustomapp/v1/playcustomapp-gen.go @@ -237,11 +237,12 @@ func (c *AccountsCustomAppsCreateCall) doRequest(alt string) (*http.Response, er body = new(bytes.Buffer) reqHeaders.Set("Content-Type", "application/json") } - body, cleanup := c.mediaInfo_.UploadRequest(reqHeaders, body) + body, getBody, cleanup := c.mediaInfo_.UploadRequest(reqHeaders, body) defer cleanup() urls += "?" + c.urlParams_.Encode() req, _ := http.NewRequest("POST", urls, body) req.Header = reqHeaders + gensupport.SetGetBody(req, getBody) googleapi.Expand(req.URL, map[string]string{ "account": strconv.FormatInt(c.account, 10), }) diff --git a/vendor/google.golang.org/api/playmoviespartner/v1/playmoviespartner-gen.go b/vendor/google.golang.org/api/playmoviespartner/v1/playmoviespartner-gen.go index 96b85a3bf..a00b941b8 100644 --- a/vendor/google.golang.org/api/playmoviespartner/v1/playmoviespartner-gen.go +++ b/vendor/google.golang.org/api/playmoviespartner/v1/playmoviespartner-gen.go @@ -389,8 +389,8 @@ type Avail struct { } func (s *Avail) MarshalJSON() ([]byte, error) { - type noMethod Avail - raw := noMethod(*s) + type NoMethod Avail + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -428,8 +428,8 @@ type ListAvailsResponse struct { } func (s *ListAvailsResponse) MarshalJSON() ([]byte, error) { - type noMethod ListAvailsResponse - raw := noMethod(*s) + type NoMethod ListAvailsResponse + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -467,8 +467,8 @@ type ListOrdersResponse struct { } func (s *ListOrdersResponse) MarshalJSON() ([]byte, error) { - type noMethod ListOrdersResponse - raw := noMethod(*s) + type NoMethod ListOrdersResponse + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -506,8 +506,8 @@ type ListStoreInfosResponse struct { } func (s *ListStoreInfosResponse) MarshalJSON() ([]byte, error) { - type noMethod ListStoreInfosResponse - raw := noMethod(*s) + type NoMethod ListStoreInfosResponse + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -698,18 +698,18 @@ type Order struct { } func (s *Order) MarshalJSON() ([]byte, error) { - type noMethod Order - raw := noMethod(*s) + type NoMethod Order + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } func (s *Order) UnmarshalJSON(data []byte) error { - type noMethod Order + type NoMethod Order var s1 struct { Priority gensupport.JSONFloat64 `json:"priority"` - *noMethod + *NoMethod } - s1.noMethod = (*noMethod)(s) + s1.NoMethod = (*NoMethod)(s) if err := json.Unmarshal(data, &s1); err != nil { return err } @@ -872,8 +872,8 @@ type StoreInfo struct { } func (s *StoreInfo) MarshalJSON() ([]byte, error) { - type noMethod StoreInfo - raw := noMethod(*s) + type NoMethod StoreInfo + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -987,7 +987,7 @@ func (c *AccountsAvailsGetCall) Do(opts ...googleapi.CallOption) (*Avail, error) }, } target := &ret - if err := json.NewDecoder(res.Body).Decode(target); err != nil { + if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil @@ -1206,7 +1206,7 @@ func (c *AccountsAvailsListCall) Do(opts ...googleapi.CallOption) (*ListAvailsRe }, } target := &ret - if err := json.NewDecoder(res.Body).Decode(target); err != nil { + if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil @@ -1422,7 +1422,7 @@ func (c *AccountsOrdersGetCall) Do(opts ...googleapi.CallOption) (*Order, error) }, } target := &ret - if err := json.NewDecoder(res.Body).Decode(target); err != nil { + if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil @@ -1635,7 +1635,7 @@ func (c *AccountsOrdersListCall) Do(opts ...googleapi.CallOption) (*ListOrdersRe }, } target := &ret - if err := json.NewDecoder(res.Body).Decode(target); err != nil { + if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil @@ -1926,7 +1926,7 @@ func (c *AccountsStoreInfosListCall) Do(opts ...googleapi.CallOption) (*ListStor }, } target := &ret - if err := json.NewDecoder(res.Body).Decode(target); err != nil { + if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil @@ -2151,7 +2151,7 @@ func (c *AccountsStoreInfosCountryGetCall) Do(opts ...googleapi.CallOption) (*St }, } target := &ret - if err := json.NewDecoder(res.Body).Decode(target); err != nil { + if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil diff --git a/vendor/google.golang.org/api/plus/v1/plus-api.json b/vendor/google.golang.org/api/plus/v1/plus-api.json index fb9b5397f..5b24b3f29 100644 --- a/vendor/google.golang.org/api/plus/v1/plus-api.json +++ b/vendor/google.golang.org/api/plus/v1/plus-api.json @@ -1,1569 +1,1569 @@ { - "kind": "discovery#restDescription", - "etag": "\"YWOzh2SDasdU84ArJnpYek-OMdg/_-wHHBOc4xeuo22Q1pblI2Gv-vs\"", - "discoveryVersion": "v1", - "id": "plus:v1", - "name": "plus", - "version": "v1", - "revision": "20171030", - "title": "Google+ API", - "description": "Builds on top of the Google+ platform.", - "ownerDomain": "google.com", - "ownerName": "Google", - "icons": { - "x16": "http://www.google.com/images/icons/product/gplus-16.png", - "x32": "http://www.google.com/images/icons/product/gplus-32.png" - }, - "documentationLink": "https://developers.google.com/+/api/", - "protocol": "rest", - "baseUrl": "https://www.googleapis.com/plus/v1/", - "basePath": "/plus/v1/", - "rootUrl": "https://www.googleapis.com/", - "servicePath": "plus/v1/", - "batchPath": "batch/plus/v1", - "parameters": { - "alt": { - "type": "string", - "description": "Data format for the response.", - "default": "json", - "enum": [ - "json" - ], - "enumDescriptions": [ - "Responses with Content-Type of application/json" - ], - "location": "query" - }, - "fields": { - "type": "string", - "description": "Selector specifying which fields to include in a partial response.", - "location": "query" - }, - "key": { - "type": "string", - "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" - }, - "oauth_token": { - "type": "string", - "description": "OAuth 2.0 token for the current user.", - "location": "query" - }, - "prettyPrint": { - "type": "boolean", - "description": "Returns response with indentations and line breaks.", - "default": "true", - "location": "query" - }, - "quotaUser": { - "type": "string", - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", - "location": "query" - }, - "userIp": { - "type": "string", - "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", - "location": "query" - } - }, - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/plus.login": { - "description": "Know the list of people in your circles, your age range, and language" - }, - "https://www.googleapis.com/auth/plus.me": { - "description": "Know who you are on Google" - }, - "https://www.googleapis.com/auth/userinfo.email": { - "description": "View your email address" - }, - "https://www.googleapis.com/auth/userinfo.profile": { - "description": "View your basic profile info" - } - } - } - }, - "schemas": { - "Acl": { - "id": "Acl", - "type": "object", - "properties": { - "description": { - "type": "string", - "description": "Description of the access granted, suitable for display." - }, - "items": { - "type": "array", - "description": "The list of access entries.", - "items": { - "$ref": "PlusAclentryResource" - } - }, - "kind": { - "type": "string", - "description": "Identifies this resource as a collection of access controls. Value: \"plus#acl\".", - "default": "plus#acl" - } - } - }, - "Activity": { - "id": "Activity", - "type": "object", - "properties": { - "access": { - "$ref": "Acl", - "description": "Identifies who has access to see this activity." - }, - "actor": { - "type": "object", - "description": "The person who performed this activity.", - "properties": { - "clientSpecificActorInfo": { - "type": "object", - "description": "Actor info specific to particular clients.", - "properties": { - "youtubeActorInfo": { - "type": "object", - "description": "Actor info specific to YouTube clients.", - "properties": { - "channelId": { - "type": "string", - "description": "ID of the YouTube channel owned by the Actor." - } - } - } - } - }, - "displayName": { - "type": "string", - "description": "The name of the actor, suitable for display." - }, - "id": { - "type": "string", - "description": "The ID of the actor's Person resource." - }, - "image": { - "type": "object", - "description": "The image representation of the actor.", - "properties": { - "url": { - "type": "string", - "description": "The URL of the actor's profile photo. To resize the image and crop it to a square, append the query string ?sz=x, where x is the dimension in pixels of each side." - } - } - }, - "name": { - "type": "object", - "description": "An object representation of the individual components of name.", - "properties": { - "familyName": { - "type": "string", - "description": "The family name (\"last name\") of the actor." + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/plus.login": { + "description": "Know the list of people in your circles, your age range, and language" }, - "givenName": { - "type": "string", - "description": "The given name (\"first name\") of the actor." + "https://www.googleapis.com/auth/plus.me": { + "description": "Know who you are on Google" + }, + "https://www.googleapis.com/auth/userinfo.email": { + "description": "View your email address" + }, + "https://www.googleapis.com/auth/userinfo.profile": { + "description": "View your basic profile info" } - } - }, - "url": { - "type": "string", - "description": "The link to the actor's Google profile." - }, - "verification": { - "type": "object", - "description": "Verification status of actor.", - "properties": { - "adHocVerified": { - "type": "string", - "description": "Verification for one-time or manual processes." - } - } } - } + } + }, + "basePath": "/plus/v1/", + "baseUrl": "https://www.googleapis.com/plus/v1/", + "batchPath": "batch/plus/v1", + "description": "Builds on top of the Google+ platform.", + "discoveryVersion": "v1", + "documentationLink": "https://developers.google.com/+/api/", + "etag": "\"-iA1DTNe4s-I6JZXPt1t1Ypy8IU/IYHE3OeXi-vB1vuZCmFEZNQodOo\"", + "icons": { + "x16": "http://www.google.com/images/icons/product/gplus-16.png", + "x32": "http://www.google.com/images/icons/product/gplus-32.png" + }, + "id": "plus:v1", + "kind": "discovery#restDescription", + "name": "plus", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "alt": { + "default": "json", + "description": "Data format for the response.", + "enum": [ + "json" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json" + ], + "location": "query", + "type": "string" }, - "address": { - "type": "string", - "description": "Street address where this activity occurred." + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "location": "query", + "type": "string" }, - "annotation": { - "type": "string", - "description": "Additional content added by the person who shared this activity, applicable only when resharing an activity." + "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" }, - "crosspostSource": { - "type": "string", - "description": "If this activity is a crosspost from another system, this property specifies the ID of the original activity." + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" }, - "etag": { - "type": "string", - "description": "ETag of this response for caching purposes." + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" }, - "geocode": { - "type": "string", - "description": "Latitude and longitude where this activity occurred. Format is latitude followed by longitude, space separated." + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", + "location": "query", + "type": "string" }, - "id": { - "type": "string", - "description": "The ID of this activity." - }, - "kind": { - "type": "string", - "description": "Identifies this resource as an activity. Value: \"plus#activity\".", - "default": "plus#activity" - }, - "location": { - "$ref": "Place", - "description": "The location where this activity occurred." - }, - "object": { - "type": "object", - "description": "The object of this activity.", - "properties": { - "actor": { - "type": "object", - "description": "If this activity's object is itself another activity, such as when a person reshares an activity, this property specifies the original activity's actor.", - "properties": { - "clientSpecificActorInfo": { - "type": "object", - "description": "Actor info specific to particular clients.", - "properties": { - "youtubeActorInfo": { - "type": "object", - "description": "Actor info specific to YouTube clients.", - "properties": { - "channelId": { - "type": "string", - "description": "ID of the YouTube channel owned by the Actor." + "userIp": { + "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", + "location": "query", + "type": "string" + } + }, + "protocol": "rest", + "resources": { + "activities": { + "methods": { + "get": { + "description": "Get an activity.", + "httpMethod": "GET", + "id": "plus.activities.get", + "parameterOrder": [ + "activityId" + ], + "parameters": { + "activityId": { + "description": "The ID of the activity to get.", + "location": "path", + "required": true, + "type": "string" } - } - } - } + }, + "path": "activities/{activityId}", + "response": { + "$ref": "Activity" + }, + "scopes": [ + "https://www.googleapis.com/auth/plus.login", + "https://www.googleapis.com/auth/plus.me" + ] }, - "displayName": { - "type": "string", - "description": "The original actor's name, which is suitable for display." + "list": { + "description": "List all of the activities in the specified collection for a particular user.", + "httpMethod": "GET", + "id": "plus.activities.list", + "parameterOrder": [ + "userId", + "collection" + ], + "parameters": { + "collection": { + "description": "The collection of activities to list.", + "enum": [ + "public" + ], + "enumDescriptions": [ + "All public activities created by the specified user." + ], + "location": "path", + "required": true, + "type": "string" + }, + "maxResults": { + "default": "20", + "description": "The maximum number of activities to include in the response, which is used for paging. For any response, the actual number returned might be less than the specified maxResults.", + "format": "uint32", + "location": "query", + "maximum": "100", + "minimum": "1", + "type": "integer" + }, + "pageToken": { + "description": "The continuation token, which is used to page through large result sets. To get the next page of results, set this parameter to the value of \"nextPageToken\" from the previous response.", + "location": "query", + "type": "string" + }, + "userId": { + "description": "The ID of the user to get activities for. The special value \"me\" can be used to indicate the authenticated user.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "people/{userId}/activities/{collection}", + "response": { + "$ref": "ActivityFeed" + }, + "scopes": [ + "https://www.googleapis.com/auth/plus.login", + "https://www.googleapis.com/auth/plus.me" + ] }, - "id": { - "type": "string", - "description": "ID of the original actor." - }, - "image": { - "type": "object", - "description": "The image representation of the original actor.", - "properties": { - "url": { - "type": "string", - "description": "A URL that points to a thumbnail photo of the original actor." - } - } - }, - "url": { - "type": "string", - "description": "A link to the original actor's Google profile." - }, - "verification": { - "type": "object", - "description": "Verification status of actor.", - "properties": { - "adHocVerified": { - "type": "string", - "description": "Verification for one-time or manual processes." - } - } + "search": { + "description": "Search public activities.", + "httpMethod": "GET", + "id": "plus.activities.search", + "parameterOrder": [ + "query" + ], + "parameters": { + "language": { + "default": "en-US", + "description": "Specify the preferred language to search with. See search language codes for available values.", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "10", + "description": "The maximum number of activities to include in the response, which is used for paging. For any response, the actual number returned might be less than the specified maxResults.", + "format": "uint32", + "location": "query", + "maximum": "20", + "minimum": "1", + "type": "integer" + }, + "orderBy": { + "default": "recent", + "description": "Specifies how to order search results.", + "enum": [ + "best", + "recent" + ], + "enumDescriptions": [ + "Sort activities by relevance to the user, most relevant first.", + "Sort activities by published date, most recent first." + ], + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "The continuation token, which is used to page through large result sets. To get the next page of results, set this parameter to the value of \"nextPageToken\" from the previous response. This token can be of any length.", + "location": "query", + "type": "string" + }, + "query": { + "description": "Full-text search query string.", + "location": "query", + "required": true, + "type": "string" + } + }, + "path": "activities", + "response": { + "$ref": "ActivityFeed" + }, + "scopes": [ + "https://www.googleapis.com/auth/plus.login", + "https://www.googleapis.com/auth/plus.me" + ] } - } - }, - "attachments": { - "type": "array", - "description": "The media objects attached to this activity.", - "items": { - "type": "object", - "properties": { - "content": { - "type": "string", - "description": "If the attachment is an article, this property contains a snippet of text from the article. It can also include descriptions for other types." - }, - "displayName": { - "type": "string", - "description": "The title of the attachment, such as a photo caption or an article title." - }, - "embed": { - "type": "object", - "description": "If the attachment is a video, the embeddable link.", - "properties": { - "type": { - "type": "string", - "description": "Media type of the link." - }, - "url": { - "type": "string", - "description": "URL of the link." - } - } - }, - "fullImage": { - "type": "object", - "description": "The full image URL for photo attachments.", - "properties": { - "height": { - "type": "integer", - "description": "The height, in pixels, of the linked resource.", - "format": "uint32" - }, - "type": { - "type": "string", - "description": "Media type of the link." - }, - "url": { - "type": "string", - "description": "URL of the image." - }, - "width": { - "type": "integer", - "description": "The width, in pixels, of the linked resource.", - "format": "uint32" - } - } - }, - "id": { - "type": "string", - "description": "The ID of the attachment." - }, - "image": { - "type": "object", - "description": "The preview image for photos or videos.", - "properties": { - "height": { - "type": "integer", - "description": "The height, in pixels, of the linked resource.", - "format": "uint32" - }, - "type": { - "type": "string", - "description": "Media type of the link." - }, - "url": { - "type": "string", - "description": "Image URL." - }, - "width": { - "type": "integer", - "description": "The width, in pixels, of the linked resource.", - "format": "uint32" - } - } - }, - "objectType": { - "type": "string", - "description": "The type of media object. Possible values include, but are not limited to, the following values: \n- \"photo\" - A photo. \n- \"album\" - A photo album. \n- \"video\" - A video. \n- \"article\" - An article, specified by a link." - }, - "thumbnails": { - "type": "array", - "description": "If the attachment is an album, this property is a list of potential additional thumbnails from the album.", + } + }, + "comments": { + "methods": { + "get": { + "description": "Get a comment.", + "httpMethod": "GET", + "id": "plus.comments.get", + "parameterOrder": [ + "commentId" + ], + "parameters": { + "commentId": { + "description": "The ID of the comment to get.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "comments/{commentId}", + "response": { + "$ref": "Comment" + }, + "scopes": [ + "https://www.googleapis.com/auth/plus.login", + "https://www.googleapis.com/auth/plus.me" + ] + }, + "list": { + "description": "List all of the comments for an activity.", + "httpMethod": "GET", + "id": "plus.comments.list", + "parameterOrder": [ + "activityId" + ], + "parameters": { + "activityId": { + "description": "The ID of the activity to get comments for.", + "location": "path", + "required": true, + "type": "string" + }, + "maxResults": { + "default": "20", + "description": "The maximum number of comments to include in the response, which is used for paging. For any response, the actual number returned might be less than the specified maxResults.", + "format": "uint32", + "location": "query", + "maximum": "500", + "minimum": "0", + "type": "integer" + }, + "pageToken": { + "description": "The continuation token, which is used to page through large result sets. To get the next page of results, set this parameter to the value of \"nextPageToken\" from the previous response.", + "location": "query", + "type": "string" + }, + "sortOrder": { + "default": "ascending", + "description": "The order in which to sort the list of comments.", + "enum": [ + "ascending", + "descending" + ], + "enumDescriptions": [ + "Sort oldest comments first.", + "Sort newest comments first." + ], + "location": "query", + "type": "string" + } + }, + "path": "activities/{activityId}/comments", + "response": { + "$ref": "CommentFeed" + }, + "scopes": [ + "https://www.googleapis.com/auth/plus.login", + "https://www.googleapis.com/auth/plus.me" + ] + } + } + }, + "people": { + "methods": { + "get": { + "description": "Get a person's profile. If your app uses scope https://www.googleapis.com/auth/plus.login, this method is guaranteed to return ageRange and language.", + "httpMethod": "GET", + "id": "plus.people.get", + "parameterOrder": [ + "userId" + ], + "parameters": { + "userId": { + "description": "The ID of the person to get the profile for. The special value \"me\" can be used to indicate the authenticated user.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "people/{userId}", + "response": { + "$ref": "Person" + }, + "scopes": [ + "https://www.googleapis.com/auth/plus.login", + "https://www.googleapis.com/auth/plus.me", + "https://www.googleapis.com/auth/userinfo.email", + "https://www.googleapis.com/auth/userinfo.profile" + ] + }, + "list": { + "description": "List all of the people in the specified collection.", + "httpMethod": "GET", + "id": "plus.people.list", + "parameterOrder": [ + "userId", + "collection" + ], + "parameters": { + "collection": { + "description": "The collection of people to list.", + "enum": [ + "connected", + "visible" + ], + "enumDescriptions": [ + "The list of visible people in the authenticated user's circles who also use the requesting app. This list is limited to users who made their app activities visible to the authenticated user.", + "The list of people who this user has added to one or more circles, limited to the circles visible to the requesting application." + ], + "location": "path", + "required": true, + "type": "string" + }, + "maxResults": { + "default": "100", + "description": "The maximum number of people to include in the response, which is used for paging. For any response, the actual number returned might be less than the specified maxResults.", + "format": "uint32", + "location": "query", + "maximum": "100", + "minimum": "1", + "type": "integer" + }, + "orderBy": { + "description": "The order to return people in.", + "enum": [ + "alphabetical", + "best" + ], + "enumDescriptions": [ + "Order the people by their display name.", + "Order people based on the relevence to the viewer." + ], + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "The continuation token, which is used to page through large result sets. To get the next page of results, set this parameter to the value of \"nextPageToken\" from the previous response.", + "location": "query", + "type": "string" + }, + "userId": { + "description": "Get the collection of people for the person identified. Use \"me\" to indicate the authenticated user.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "people/{userId}/people/{collection}", + "response": { + "$ref": "PeopleFeed" + }, + "scopes": [ + "https://www.googleapis.com/auth/plus.login", + "https://www.googleapis.com/auth/plus.me" + ] + }, + "listByActivity": { + "description": "List all of the people in the specified collection for a particular activity.", + "httpMethod": "GET", + "id": "plus.people.listByActivity", + "parameterOrder": [ + "activityId", + "collection" + ], + "parameters": { + "activityId": { + "description": "The ID of the activity to get the list of people for.", + "location": "path", + "required": true, + "type": "string" + }, + "collection": { + "description": "The collection of people to list.", + "enum": [ + "plusoners", + "resharers" + ], + "enumDescriptions": [ + "List all people who have +1'd this activity.", + "List all people who have reshared this activity." + ], + "location": "path", + "required": true, + "type": "string" + }, + "maxResults": { + "default": "20", + "description": "The maximum number of people to include in the response, which is used for paging. For any response, the actual number returned might be less than the specified maxResults.", + "format": "uint32", + "location": "query", + "maximum": "100", + "minimum": "1", + "type": "integer" + }, + "pageToken": { + "description": "The continuation token, which is used to page through large result sets. To get the next page of results, set this parameter to the value of \"nextPageToken\" from the previous response.", + "location": "query", + "type": "string" + } + }, + "path": "activities/{activityId}/people/{collection}", + "response": { + "$ref": "PeopleFeed" + }, + "scopes": [ + "https://www.googleapis.com/auth/plus.login", + "https://www.googleapis.com/auth/plus.me" + ] + }, + "search": { + "description": "Search all public profiles.", + "httpMethod": "GET", + "id": "plus.people.search", + "parameterOrder": [ + "query" + ], + "parameters": { + "language": { + "default": "en-US", + "description": "Specify the preferred language to search with. See search language codes for available values.", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "25", + "description": "The maximum number of people to include in the response, which is used for paging. For any response, the actual number returned might be less than the specified maxResults.", + "format": "uint32", + "location": "query", + "maximum": "50", + "minimum": "1", + "type": "integer" + }, + "pageToken": { + "description": "The continuation token, which is used to page through large result sets. To get the next page of results, set this parameter to the value of \"nextPageToken\" from the previous response. This token can be of any length.", + "location": "query", + "type": "string" + }, + "query": { + "description": "Specify a query string for full text search of public text in all profiles.", + "location": "query", + "required": true, + "type": "string" + } + }, + "path": "people", + "response": { + "$ref": "PeopleFeed" + }, + "scopes": [ + "https://www.googleapis.com/auth/plus.login", + "https://www.googleapis.com/auth/plus.me" + ] + } + } + } + }, + "revision": "20180127", + "rootUrl": "https://www.googleapis.com/", + "schemas": { + "Acl": { + "id": "Acl", + "properties": { + "description": { + "description": "Description of the access granted, suitable for display.", + "type": "string" + }, + "items": { + "description": "The list of access entries.", "items": { - "type": "object", - "properties": { - "description": { - "type": "string", - "description": "Potential name of the thumbnail." + "$ref": "PlusAclentryResource" + }, + "type": "array" + }, + "kind": { + "default": "plus#acl", + "description": "Identifies this resource as a collection of access controls. Value: \"plus#acl\".", + "type": "string" + } + }, + "type": "object" + }, + "Activity": { + "id": "Activity", + "properties": { + "access": { + "$ref": "Acl", + "description": "Identifies who has access to see this activity." + }, + "actor": { + "description": "The person who performed this activity.", + "properties": { + "clientSpecificActorInfo": { + "description": "Actor info specific to particular clients.", + "properties": { + "youtubeActorInfo": { + "description": "Actor info specific to YouTube clients.", + "properties": { + "channelId": { + "description": "ID of the YouTube channel owned by the Actor.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "displayName": { + "description": "The name of the actor, suitable for display.", + "type": "string" + }, + "id": { + "description": "The ID of the actor's Person resource.", + "type": "string" }, "image": { - "type": "object", - "description": "Image resource.", - "properties": { - "height": { - "type": "integer", - "description": "The height, in pixels, of the linked resource.", - "format": "uint32" + "description": "The image representation of the actor.", + "properties": { + "url": { + "description": "The URL of the actor's profile photo. To resize the image and crop it to a square, append the query string ?sz=x, where x is the dimension in pixels of each side.", + "type": "string" + } }, - "type": { - "type": "string", - "description": "Media type of the link." + "type": "object" + }, + "name": { + "description": "An object representation of the individual components of name.", + "properties": { + "familyName": { + "description": "The family name (\"last name\") of the actor.", + "type": "string" + }, + "givenName": { + "description": "The given name (\"first name\") of the actor.", + "type": "string" + } }, - "url": { - "type": "string", - "description": "Image url." - }, - "width": { - "type": "integer", - "description": "The width, in pixels, of the linked resource.", - "format": "uint32" - } - } + "type": "object" }, "url": { - "type": "string", - "description": "URL of the webpage containing the image." + "description": "The link to the actor's Google profile.", + "type": "string" + }, + "verification": { + "description": "Verification status of actor.", + "properties": { + "adHocVerified": { + "description": "Verification for one-time or manual processes.", + "type": "string" + } + }, + "type": "object" } - } - } - }, - "url": { - "type": "string", - "description": "The link to the attachment, which should be of type text/html." - } - } - } - }, - "content": { - "type": "string", - "description": "The HTML-formatted content, which is suitable for display." - }, - "id": { - "type": "string", - "description": "The ID of the object. When resharing an activity, this is the ID of the activity that is being reshared." - }, - "objectType": { - "type": "string", - "description": "The type of the object. Possible values include, but are not limited to, the following values: \n- \"note\" - Textual content. \n- \"activity\" - A Google+ activity." - }, - "originalContent": { - "type": "string", - "description": "The content (text) as provided by the author, which is stored without any HTML formatting. When creating or updating an activity, this value must be supplied as plain text in the request." - }, - "plusoners": { - "type": "object", - "description": "People who +1'd this activity.", - "properties": { - "selfLink": { - "type": "string", - "description": "The URL for the collection of people who +1'd this activity." + }, + "type": "object" }, - "totalItems": { - "type": "integer", - "description": "Total number of people who +1'd this activity.", - "format": "uint32" - } - } - }, - "replies": { - "type": "object", - "description": "Comments in reply to this activity.", - "properties": { - "selfLink": { - "type": "string", - "description": "The URL for the collection of comments in reply to this activity." + "address": { + "description": "Street address where this activity occurred.", + "type": "string" }, - "totalItems": { - "type": "integer", - "description": "Total number of comments on this activity.", - "format": "uint32" - } - } - }, - "resharers": { - "type": "object", - "description": "People who reshared this activity.", - "properties": { - "selfLink": { - "type": "string", - "description": "The URL for the collection of resharers." + "annotation": { + "description": "Additional content added by the person who shared this activity, applicable only when resharing an activity.", + "type": "string" }, - "totalItems": { - "type": "integer", - "description": "Total number of people who reshared this activity.", - "format": "uint32" - } - } - }, - "url": { - "type": "string", - "description": "The URL that points to the linked resource." - } - } - }, - "placeId": { - "type": "string", - "description": "ID of the place where this activity occurred." - }, - "placeName": { - "type": "string", - "description": "Name of the place where this activity occurred." - }, - "provider": { - "type": "object", - "description": "The service provider that initially published this activity.", - "properties": { - "title": { - "type": "string", - "description": "Name of the service provider." - } - } - }, - "published": { - "type": "string", - "description": "The time at which this activity was initially published. Formatted as an RFC 3339 timestamp.", - "format": "date-time" - }, - "radius": { - "type": "string", - "description": "Radius, in meters, of the region where this activity occurred, centered at the latitude and longitude identified in geocode." - }, - "title": { - "type": "string", - "description": "Title of this activity." - }, - "updated": { - "type": "string", - "description": "The time at which this activity was last updated. Formatted as an RFC 3339 timestamp.", - "format": "date-time" - }, - "url": { - "type": "string", - "description": "The link to this activity." - }, - "verb": { - "type": "string", - "description": "This activity's verb, which indicates the action that was performed. Possible values include, but are not limited to, the following values: \n- \"post\" - Publish content to the stream. \n- \"share\" - Reshare an activity." - } - } - }, - "ActivityFeed": { - "id": "ActivityFeed", - "type": "object", - "properties": { - "etag": { - "type": "string", - "description": "ETag of this response for caching purposes." - }, - "id": { - "type": "string", - "description": "The ID of this collection of activities. Deprecated." - }, - "items": { - "type": "array", - "description": "The activities in this page of results.", - "items": { - "$ref": "Activity" - } - }, - "kind": { - "type": "string", - "description": "Identifies this resource as a collection of activities. Value: \"plus#activityFeed\".", - "default": "plus#activityFeed" - }, - "nextLink": { - "type": "string", - "description": "Link to the next page of activities." - }, - "nextPageToken": { - "type": "string", - "description": "The continuation token, which is used to page through large result sets. Provide this value in a subsequent request to return the next page of results." - }, - "selfLink": { - "type": "string", - "description": "Link to this activity resource." - }, - "title": { - "type": "string", - "description": "The title of this collection of activities, which is a truncated portion of the content." - }, - "updated": { - "type": "string", - "description": "The time at which this collection of activities was last updated. Formatted as an RFC 3339 timestamp.", - "format": "date-time" - } - } - }, - "Comment": { - "id": "Comment", - "type": "object", - "properties": { - "actor": { - "type": "object", - "description": "The person who posted this comment.", - "properties": { - "clientSpecificActorInfo": { - "type": "object", - "description": "Actor info specific to particular clients.", - "properties": { - "youtubeActorInfo": { - "type": "object", - "description": "Actor info specific to YouTube clients.", - "properties": { - "channelId": { - "type": "string", - "description": "ID of the YouTube channel owned by the Actor." - } - } - } - } - }, - "displayName": { - "type": "string", - "description": "The name of this actor, suitable for display." - }, - "id": { - "type": "string", - "description": "The ID of the actor." - }, - "image": { - "type": "object", - "description": "The image representation of this actor.", - "properties": { - "url": { - "type": "string", - "description": "The URL of the actor's profile photo. To resize the image and crop it to a square, append the query string ?sz=x, where x is the dimension in pixels of each side." - } - } - }, - "url": { - "type": "string", - "description": "A link to the Person resource for this actor." - }, - "verification": { - "type": "object", - "description": "Verification status of actor.", - "properties": { - "adHocVerified": { - "type": "string", - "description": "Verification for one-time or manual processes." - } - } - } - } - }, - "etag": { - "type": "string", - "description": "ETag of this response for caching purposes." - }, - "id": { - "type": "string", - "description": "The ID of this comment." - }, - "inReplyTo": { - "type": "array", - "description": "The activity this comment replied to.", - "items": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "The ID of the activity." - }, - "url": { - "type": "string", - "description": "The URL of the activity." - } - } - } - }, - "kind": { - "type": "string", - "description": "Identifies this resource as a comment. Value: \"plus#comment\".", - "default": "plus#comment" - }, - "object": { - "type": "object", - "description": "The object of this comment.", - "properties": { - "content": { - "type": "string", - "description": "The HTML-formatted content, suitable for display." - }, - "objectType": { - "type": "string", - "description": "The object type of this comment. Possible values are: \n- \"comment\" - A comment in reply to an activity.", - "default": "comment" - }, - "originalContent": { - "type": "string", - "description": "The content (text) as provided by the author, stored without any HTML formatting. When creating or updating a comment, this value must be supplied as plain text in the request." - } - } - }, - "plusoners": { - "type": "object", - "description": "People who +1'd this comment.", - "properties": { - "totalItems": { - "type": "integer", - "description": "Total number of people who +1'd this comment.", - "format": "uint32" - } - } - }, - "published": { - "type": "string", - "description": "The time at which this comment was initially published. Formatted as an RFC 3339 timestamp.", - "format": "date-time" - }, - "selfLink": { - "type": "string", - "description": "Link to this comment resource." - }, - "updated": { - "type": "string", - "description": "The time at which this comment was last updated. Formatted as an RFC 3339 timestamp.", - "format": "date-time" - }, - "verb": { - "type": "string", - "description": "This comment's verb, indicating what action was performed. Possible values are: \n- \"post\" - Publish content to the stream.", - "default": "post" - } - } - }, - "CommentFeed": { - "id": "CommentFeed", - "type": "object", - "properties": { - "etag": { - "type": "string", - "description": "ETag of this response for caching purposes." - }, - "id": { - "type": "string", - "description": "The ID of this collection of comments." - }, - "items": { - "type": "array", - "description": "The comments in this page of results.", - "items": { - "$ref": "Comment" - } - }, - "kind": { - "type": "string", - "description": "Identifies this resource as a collection of comments. Value: \"plus#commentFeed\".", - "default": "plus#commentFeed" - }, - "nextLink": { - "type": "string", - "description": "Link to the next page of activities." - }, - "nextPageToken": { - "type": "string", - "description": "The continuation token, which is used to page through large result sets. Provide this value in a subsequent request to return the next page of results." - }, - "title": { - "type": "string", - "description": "The title of this collection of comments." - }, - "updated": { - "type": "string", - "description": "The time at which this collection of comments was last updated. Formatted as an RFC 3339 timestamp.", - "format": "date-time" - } - } - }, - "PeopleFeed": { - "id": "PeopleFeed", - "type": "object", - "properties": { - "etag": { - "type": "string", - "description": "ETag of this response for caching purposes." - }, - "items": { - "type": "array", - "description": "The people in this page of results. Each item includes the id, displayName, image, and url for the person. To retrieve additional profile data, see the people.get method.", - "items": { - "$ref": "Person" - } - }, - "kind": { - "type": "string", - "description": "Identifies this resource as a collection of people. Value: \"plus#peopleFeed\".", - "default": "plus#peopleFeed" - }, - "nextPageToken": { - "type": "string", - "description": "The continuation token, which is used to page through large result sets. Provide this value in a subsequent request to return the next page of results." - }, - "selfLink": { - "type": "string", - "description": "Link to this resource." - }, - "title": { - "type": "string", - "description": "The title of this collection of people." - }, - "totalItems": { - "type": "integer", - "description": "The total number of people available in this list. The number of people in a response might be smaller due to paging. This might not be set for all collections.", - "format": "int32" - } - } - }, - "Person": { - "id": "Person", - "type": "object", - "properties": { - "aboutMe": { - "type": "string", - "description": "A short biography for this person." - }, - "ageRange": { - "type": "object", - "description": "The age range of the person. Valid ranges are 17 or younger, 18 to 20, and 21 or older. Age is determined from the user's birthday using Western age reckoning.", - "properties": { - "max": { - "type": "integer", - "description": "The age range's upper bound, if any. Possible values include, but are not limited to, the following: \n- \"17\" - for age 17 \n- \"20\" - for age 20", - "format": "int32" - }, - "min": { - "type": "integer", - "description": "The age range's lower bound, if any. Possible values include, but are not limited to, the following: \n- \"21\" - for age 21 \n- \"18\" - for age 18", - "format": "int32" - } - } - }, - "birthday": { - "type": "string", - "description": "The person's date of birth, represented as YYYY-MM-DD." - }, - "braggingRights": { - "type": "string", - "description": "The \"bragging rights\" line of this person." - }, - "circledByCount": { - "type": "integer", - "description": "For followers who are visible, the number of people who have added this person or page to a circle.", - "format": "int32" - }, - "cover": { - "type": "object", - "description": "The cover photo content.", - "properties": { - "coverInfo": { - "type": "object", - "description": "Extra information about the cover photo.", - "properties": { - "leftImageOffset": { - "type": "integer", - "description": "The difference between the left position of the cover image and the actual displayed cover image. Only valid for banner layout.", - "format": "int32" + "crosspostSource": { + "description": "If this activity is a crosspost from another system, this property specifies the ID of the original activity.", + "type": "string" }, - "topImageOffset": { - "type": "integer", - "description": "The difference between the top position of the cover image and the actual displayed cover image. Only valid for banner layout.", - "format": "int32" - } - } - }, - "coverPhoto": { - "type": "object", - "description": "The person's primary cover image.", - "properties": { - "height": { - "type": "integer", - "description": "The height of the image.", - "format": "int32" + "etag": { + "description": "ETag of this response for caching purposes.", + "type": "string" + }, + "geocode": { + "description": "Latitude and longitude where this activity occurred. Format is latitude followed by longitude, space separated.", + "type": "string" + }, + "id": { + "description": "The ID of this activity.", + "type": "string" + }, + "kind": { + "default": "plus#activity", + "description": "Identifies this resource as an activity. Value: \"plus#activity\".", + "type": "string" + }, + "location": { + "$ref": "Place", + "description": "The location where this activity occurred." + }, + "object": { + "description": "The object of this activity.", + "properties": { + "actor": { + "description": "If this activity's object is itself another activity, such as when a person reshares an activity, this property specifies the original activity's actor.", + "properties": { + "clientSpecificActorInfo": { + "description": "Actor info specific to particular clients.", + "properties": { + "youtubeActorInfo": { + "description": "Actor info specific to YouTube clients.", + "properties": { + "channelId": { + "description": "ID of the YouTube channel owned by the Actor.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "displayName": { + "description": "The original actor's name, which is suitable for display.", + "type": "string" + }, + "id": { + "description": "ID of the original actor.", + "type": "string" + }, + "image": { + "description": "The image representation of the original actor.", + "properties": { + "url": { + "description": "A URL that points to a thumbnail photo of the original actor.", + "type": "string" + } + }, + "type": "object" + }, + "url": { + "description": "A link to the original actor's Google profile.", + "type": "string" + }, + "verification": { + "description": "Verification status of actor.", + "properties": { + "adHocVerified": { + "description": "Verification for one-time or manual processes.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "attachments": { + "description": "The media objects attached to this activity.", + "items": { + "properties": { + "content": { + "description": "If the attachment is an article, this property contains a snippet of text from the article. It can also include descriptions for other types.", + "type": "string" + }, + "displayName": { + "description": "The title of the attachment, such as a photo caption or an article title.", + "type": "string" + }, + "embed": { + "description": "If the attachment is a video, the embeddable link.", + "properties": { + "type": { + "description": "Media type of the link.", + "type": "string" + }, + "url": { + "description": "URL of the link.", + "type": "string" + } + }, + "type": "object" + }, + "fullImage": { + "description": "The full image URL for photo attachments.", + "properties": { + "height": { + "description": "The height, in pixels, of the linked resource.", + "format": "uint32", + "type": "integer" + }, + "type": { + "description": "Media type of the link.", + "type": "string" + }, + "url": { + "description": "URL of the image.", + "type": "string" + }, + "width": { + "description": "The width, in pixels, of the linked resource.", + "format": "uint32", + "type": "integer" + } + }, + "type": "object" + }, + "id": { + "description": "The ID of the attachment.", + "type": "string" + }, + "image": { + "description": "The preview image for photos or videos.", + "properties": { + "height": { + "description": "The height, in pixels, of the linked resource.", + "format": "uint32", + "type": "integer" + }, + "type": { + "description": "Media type of the link.", + "type": "string" + }, + "url": { + "description": "Image URL.", + "type": "string" + }, + "width": { + "description": "The width, in pixels, of the linked resource.", + "format": "uint32", + "type": "integer" + } + }, + "type": "object" + }, + "objectType": { + "description": "The type of media object. Possible values include, but are not limited to, the following values: \n- \"photo\" - A photo. \n- \"album\" - A photo album. \n- \"video\" - A video. \n- \"article\" - An article, specified by a link.", + "type": "string" + }, + "thumbnails": { + "description": "If the attachment is an album, this property is a list of potential additional thumbnails from the album.", + "items": { + "properties": { + "description": { + "description": "Potential name of the thumbnail.", + "type": "string" + }, + "image": { + "description": "Image resource.", + "properties": { + "height": { + "description": "The height, in pixels, of the linked resource.", + "format": "uint32", + "type": "integer" + }, + "type": { + "description": "Media type of the link.", + "type": "string" + }, + "url": { + "description": "Image url.", + "type": "string" + }, + "width": { + "description": "The width, in pixels, of the linked resource.", + "format": "uint32", + "type": "integer" + } + }, + "type": "object" + }, + "url": { + "description": "URL of the webpage containing the image.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "url": { + "description": "The link to the attachment, which should be of type text/html.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "content": { + "description": "The HTML-formatted content, which is suitable for display.", + "type": "string" + }, + "id": { + "description": "The ID of the object. When resharing an activity, this is the ID of the activity that is being reshared.", + "type": "string" + }, + "objectType": { + "description": "The type of the object. Possible values include, but are not limited to, the following values: \n- \"note\" - Textual content. \n- \"activity\" - A Google+ activity.", + "type": "string" + }, + "originalContent": { + "description": "The content (text) as provided by the author, which is stored without any HTML formatting. When creating or updating an activity, this value must be supplied as plain text in the request.", + "type": "string" + }, + "plusoners": { + "description": "People who +1'd this activity.", + "properties": { + "selfLink": { + "description": "The URL for the collection of people who +1'd this activity.", + "type": "string" + }, + "totalItems": { + "description": "Total number of people who +1'd this activity.", + "format": "uint32", + "type": "integer" + } + }, + "type": "object" + }, + "replies": { + "description": "Comments in reply to this activity.", + "properties": { + "selfLink": { + "description": "The URL for the collection of comments in reply to this activity.", + "type": "string" + }, + "totalItems": { + "description": "Total number of comments on this activity.", + "format": "uint32", + "type": "integer" + } + }, + "type": "object" + }, + "resharers": { + "description": "People who reshared this activity.", + "properties": { + "selfLink": { + "description": "The URL for the collection of resharers.", + "type": "string" + }, + "totalItems": { + "description": "Total number of people who reshared this activity.", + "format": "uint32", + "type": "integer" + } + }, + "type": "object" + }, + "url": { + "description": "The URL that points to the linked resource.", + "type": "string" + } + }, + "type": "object" + }, + "placeId": { + "description": "ID of the place where this activity occurred.", + "type": "string" + }, + "placeName": { + "description": "Name of the place where this activity occurred.", + "type": "string" + }, + "provider": { + "description": "The service provider that initially published this activity.", + "properties": { + "title": { + "description": "Name of the service provider.", + "type": "string" + } + }, + "type": "object" + }, + "published": { + "description": "The time at which this activity was initially published. Formatted as an RFC 3339 timestamp.", + "format": "date-time", + "type": "string" + }, + "radius": { + "description": "Radius, in meters, of the region where this activity occurred, centered at the latitude and longitude identified in geocode.", + "type": "string" + }, + "title": { + "description": "Title of this activity.", + "type": "string" + }, + "updated": { + "description": "The time at which this activity was last updated. Formatted as an RFC 3339 timestamp.", + "format": "date-time", + "type": "string" }, "url": { - "type": "string", - "description": "The URL of the image." + "description": "The link to this activity.", + "type": "string" }, - "width": { - "type": "integer", - "description": "The width of the image.", - "format": "int32" + "verb": { + "description": "This activity's verb, which indicates the action that was performed. Possible values include, but are not limited to, the following values: \n- \"post\" - Publish content to the stream. \n- \"share\" - Reshare an activity.", + "type": "string" } - } }, - "layout": { - "type": "string", - "description": "The layout of the cover art. Possible values include, but are not limited to, the following values: \n- \"banner\" - One large image banner." - } - } + "type": "object" }, - "currentLocation": { - "type": "string", - "description": "(this field is not currently used)" - }, - "displayName": { - "type": "string", - "description": "The name of this person, which is suitable for display." - }, - "domain": { - "type": "string", - "description": "The hosted domain name for the user's Google Apps account. For instance, example.com. The plus.profile.emails.read or email scope is needed to get this domain name." - }, - "emails": { - "type": "array", - "description": "A list of email addresses that this person has, including their Google account email address, and the public verified email addresses on their Google+ profile. The plus.profile.emails.read scope is needed to retrieve these email addresses, or the email scope can be used to retrieve just the Google account email address.", - "items": { - "type": "object", + "ActivityFeed": { + "id": "ActivityFeed", "properties": { - "type": { - "type": "string", - "description": "The type of address. Possible values include, but are not limited to, the following values: \n- \"account\" - Google account email address. \n- \"home\" - Home email address. \n- \"work\" - Work email address. \n- \"other\" - Other." - }, - "value": { - "type": "string", - "description": "The email address." - } - } - } - }, - "etag": { - "type": "string", - "description": "ETag of this response for caching purposes." - }, - "gender": { - "type": "string", - "description": "The person's gender. Possible values include, but are not limited to, the following values: \n- \"male\" - Male gender. \n- \"female\" - Female gender. \n- \"other\" - Other." - }, - "id": { - "type": "string", - "description": "The ID of this person." - }, - "image": { - "type": "object", - "description": "The representation of the person's profile photo.", - "properties": { - "isDefault": { - "type": "boolean", - "description": "Whether the person's profile photo is the default one" + "etag": { + "description": "ETag of this response for caching purposes.", + "type": "string" + }, + "id": { + "description": "The ID of this collection of activities. Deprecated.", + "type": "string" + }, + "items": { + "description": "The activities in this page of results.", + "items": { + "$ref": "Activity" + }, + "type": "array" + }, + "kind": { + "default": "plus#activityFeed", + "description": "Identifies this resource as a collection of activities. Value: \"plus#activityFeed\".", + "type": "string" + }, + "nextLink": { + "description": "Link to the next page of activities.", + "type": "string" + }, + "nextPageToken": { + "description": "The continuation token, which is used to page through large result sets. Provide this value in a subsequent request to return the next page of results.", + "type": "string" + }, + "selfLink": { + "description": "Link to this activity resource.", + "type": "string" + }, + "title": { + "description": "The title of this collection of activities, which is a truncated portion of the content.", + "type": "string" + }, + "updated": { + "description": "The time at which this collection of activities was last updated. Formatted as an RFC 3339 timestamp.", + "format": "date-time", + "type": "string" + } }, - "url": { - "type": "string", - "description": "The URL of the person's profile photo. To resize the image and crop it to a square, append the query string ?sz=x, where x is the dimension in pixels of each side." - } - } + "type": "object" }, - "isPlusUser": { - "type": "boolean", - "description": "Whether this user has signed up for Google+." - }, - "kind": { - "type": "string", - "description": "Identifies this resource as a person. Value: \"plus#person\".", - "default": "plus#person" - }, - "language": { - "type": "string", - "description": "The user's preferred language for rendering." - }, - "name": { - "type": "object", - "description": "An object representation of the individual components of a person's name.", - "properties": { - "familyName": { - "type": "string", - "description": "The family name (last name) of this person." - }, - "formatted": { - "type": "string", - "description": "The full name of this person, including middle names, suffixes, etc." - }, - "givenName": { - "type": "string", - "description": "The given name (first name) of this person." - }, - "honorificPrefix": { - "type": "string", - "description": "The honorific prefixes (such as \"Dr.\" or \"Mrs.\") for this person." - }, - "honorificSuffix": { - "type": "string", - "description": "The honorific suffixes (such as \"Jr.\") for this person." - }, - "middleName": { - "type": "string", - "description": "The middle name of this person." - } - } - }, - "nickname": { - "type": "string", - "description": "The nickname of this person." - }, - "objectType": { - "type": "string", - "description": "Type of person within Google+. Possible values include, but are not limited to, the following values: \n- \"person\" - represents an actual person. \n- \"page\" - represents a page." - }, - "occupation": { - "type": "string", - "description": "The occupation of this person." - }, - "organizations": { - "type": "array", - "description": "A list of current or past organizations with which this person is associated.", - "items": { - "type": "object", + "Comment": { + "id": "Comment", "properties": { - "department": { - "type": "string", - "description": "The department within the organization. Deprecated." - }, - "description": { - "type": "string", - "description": "A short description of the person's role in this organization. Deprecated." - }, - "endDate": { - "type": "string", - "description": "The date that the person left this organization." - }, - "location": { - "type": "string", - "description": "The location of this organization. Deprecated." - }, - "name": { - "type": "string", - "description": "The name of the organization." - }, - "primary": { - "type": "boolean", - "description": "If \"true\", indicates this organization is the person's primary one, which is typically interpreted as the current one." - }, - "startDate": { - "type": "string", - "description": "The date that the person joined this organization." - }, - "title": { - "type": "string", - "description": "The person's job title or role within the organization." - }, - "type": { - "type": "string", - "description": "The type of organization. Possible values include, but are not limited to, the following values: \n- \"work\" - Work. \n- \"school\" - School." - } - } - } + "actor": { + "description": "The person who posted this comment.", + "properties": { + "clientSpecificActorInfo": { + "description": "Actor info specific to particular clients.", + "properties": { + "youtubeActorInfo": { + "description": "Actor info specific to YouTube clients.", + "properties": { + "channelId": { + "description": "ID of the YouTube channel owned by the Actor.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "displayName": { + "description": "The name of this actor, suitable for display.", + "type": "string" + }, + "id": { + "description": "The ID of the actor.", + "type": "string" + }, + "image": { + "description": "The image representation of this actor.", + "properties": { + "url": { + "description": "The URL of the actor's profile photo. To resize the image and crop it to a square, append the query string ?sz=x, where x is the dimension in pixels of each side.", + "type": "string" + } + }, + "type": "object" + }, + "url": { + "description": "A link to the Person resource for this actor.", + "type": "string" + }, + "verification": { + "description": "Verification status of actor.", + "properties": { + "adHocVerified": { + "description": "Verification for one-time or manual processes.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "etag": { + "description": "ETag of this response for caching purposes.", + "type": "string" + }, + "id": { + "description": "The ID of this comment.", + "type": "string" + }, + "inReplyTo": { + "description": "The activity this comment replied to.", + "items": { + "properties": { + "id": { + "description": "The ID of the activity.", + "type": "string" + }, + "url": { + "description": "The URL of the activity.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "kind": { + "default": "plus#comment", + "description": "Identifies this resource as a comment. Value: \"plus#comment\".", + "type": "string" + }, + "object": { + "description": "The object of this comment.", + "properties": { + "content": { + "description": "The HTML-formatted content, suitable for display.", + "type": "string" + }, + "objectType": { + "default": "comment", + "description": "The object type of this comment. Possible values are: \n- \"comment\" - A comment in reply to an activity.", + "type": "string" + }, + "originalContent": { + "description": "The content (text) as provided by the author, stored without any HTML formatting. When creating or updating a comment, this value must be supplied as plain text in the request.", + "type": "string" + } + }, + "type": "object" + }, + "plusoners": { + "description": "People who +1'd this comment.", + "properties": { + "totalItems": { + "description": "Total number of people who +1'd this comment.", + "format": "uint32", + "type": "integer" + } + }, + "type": "object" + }, + "published": { + "description": "The time at which this comment was initially published. Formatted as an RFC 3339 timestamp.", + "format": "date-time", + "type": "string" + }, + "selfLink": { + "description": "Link to this comment resource.", + "type": "string" + }, + "updated": { + "description": "The time at which this comment was last updated. Formatted as an RFC 3339 timestamp.", + "format": "date-time", + "type": "string" + }, + "verb": { + "default": "post", + "description": "This comment's verb, indicating what action was performed. Possible values are: \n- \"post\" - Publish content to the stream.", + "type": "string" + } + }, + "type": "object" }, - "placesLived": { - "type": "array", - "description": "A list of places where this person has lived.", - "items": { - "type": "object", + "CommentFeed": { + "id": "CommentFeed", "properties": { - "primary": { - "type": "boolean", - "description": "If \"true\", this place of residence is this person's primary residence." - }, - "value": { - "type": "string", - "description": "A place where this person has lived. For example: \"Seattle, WA\", \"Near Toronto\"." - } - } - } + "etag": { + "description": "ETag of this response for caching purposes.", + "type": "string" + }, + "id": { + "description": "The ID of this collection of comments.", + "type": "string" + }, + "items": { + "description": "The comments in this page of results.", + "items": { + "$ref": "Comment" + }, + "type": "array" + }, + "kind": { + "default": "plus#commentFeed", + "description": "Identifies this resource as a collection of comments. Value: \"plus#commentFeed\".", + "type": "string" + }, + "nextLink": { + "description": "Link to the next page of activities.", + "type": "string" + }, + "nextPageToken": { + "description": "The continuation token, which is used to page through large result sets. Provide this value in a subsequent request to return the next page of results.", + "type": "string" + }, + "title": { + "description": "The title of this collection of comments.", + "type": "string" + }, + "updated": { + "description": "The time at which this collection of comments was last updated. Formatted as an RFC 3339 timestamp.", + "format": "date-time", + "type": "string" + } + }, + "type": "object" }, - "plusOneCount": { - "type": "integer", - "description": "If a Google+ Page, the number of people who have +1'd this page.", - "format": "int32" - }, - "relationshipStatus": { - "type": "string", - "description": "The person's relationship status. Possible values include, but are not limited to, the following values: \n- \"single\" - Person is single. \n- \"in_a_relationship\" - Person is in a relationship. \n- \"engaged\" - Person is engaged. \n- \"married\" - Person is married. \n- \"its_complicated\" - The relationship is complicated. \n- \"open_relationship\" - Person is in an open relationship. \n- \"widowed\" - Person is widowed. \n- \"in_domestic_partnership\" - Person is in a domestic partnership. \n- \"in_civil_union\" - Person is in a civil union." - }, - "skills": { - "type": "string", - "description": "The person's skills." - }, - "tagline": { - "type": "string", - "description": "The brief description (tagline) of this person." - }, - "url": { - "type": "string", - "description": "The URL of this person's profile." - }, - "urls": { - "type": "array", - "description": "A list of URLs for this person.", - "items": { - "type": "object", + "PeopleFeed": { + "id": "PeopleFeed", "properties": { - "label": { - "type": "string", - "description": "The label of the URL." - }, - "type": { - "type": "string", - "description": "The type of URL. Possible values include, but are not limited to, the following values: \n- \"otherProfile\" - URL for another profile. \n- \"contributor\" - URL to a site for which this person is a contributor. \n- \"website\" - URL for this Google+ Page's primary website. \n- \"other\" - Other URL." - }, - "value": { - "type": "string", - "description": "The URL value." - } - } - } + "etag": { + "description": "ETag of this response for caching purposes.", + "type": "string" + }, + "items": { + "description": "The people in this page of results. Each item includes the id, displayName, image, and url for the person. To retrieve additional profile data, see the people.get method.", + "items": { + "$ref": "Person" + }, + "type": "array" + }, + "kind": { + "default": "plus#peopleFeed", + "description": "Identifies this resource as a collection of people. Value: \"plus#peopleFeed\".", + "type": "string" + }, + "nextPageToken": { + "description": "The continuation token, which is used to page through large result sets. Provide this value in a subsequent request to return the next page of results.", + "type": "string" + }, + "selfLink": { + "description": "Link to this resource.", + "type": "string" + }, + "title": { + "description": "The title of this collection of people.", + "type": "string" + }, + "totalItems": { + "description": "The total number of people available in this list. The number of people in a response might be smaller due to paging. This might not be set for all collections.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" }, - "verified": { - "type": "boolean", - "description": "Whether the person or Google+ Page has been verified." + "Person": { + "id": "Person", + "properties": { + "aboutMe": { + "description": "A short biography for this person.", + "type": "string" + }, + "ageRange": { + "description": "The age range of the person. Valid ranges are 17 or younger, 18 to 20, and 21 or older. Age is determined from the user's birthday using Western age reckoning.", + "properties": { + "max": { + "description": "The age range's upper bound, if any. Possible values include, but are not limited to, the following: \n- \"17\" - for age 17 \n- \"20\" - for age 20", + "format": "int32", + "type": "integer" + }, + "min": { + "description": "The age range's lower bound, if any. Possible values include, but are not limited to, the following: \n- \"21\" - for age 21 \n- \"18\" - for age 18", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "birthday": { + "description": "The person's date of birth, represented as YYYY-MM-DD.", + "type": "string" + }, + "braggingRights": { + "description": "The \"bragging rights\" line of this person.", + "type": "string" + }, + "circledByCount": { + "description": "For followers who are visible, the number of people who have added this person or page to a circle.", + "format": "int32", + "type": "integer" + }, + "cover": { + "description": "The cover photo content.", + "properties": { + "coverInfo": { + "description": "Extra information about the cover photo.", + "properties": { + "leftImageOffset": { + "description": "The difference between the left position of the cover image and the actual displayed cover image. Only valid for banner layout.", + "format": "int32", + "type": "integer" + }, + "topImageOffset": { + "description": "The difference between the top position of the cover image and the actual displayed cover image. Only valid for banner layout.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "coverPhoto": { + "description": "The person's primary cover image.", + "properties": { + "height": { + "description": "The height of the image.", + "format": "int32", + "type": "integer" + }, + "url": { + "description": "The URL of the image.", + "type": "string" + }, + "width": { + "description": "The width of the image.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "layout": { + "description": "The layout of the cover art. Possible values include, but are not limited to, the following values: \n- \"banner\" - One large image banner.", + "type": "string" + } + }, + "type": "object" + }, + "currentLocation": { + "description": "(this field is not currently used)", + "type": "string" + }, + "displayName": { + "description": "The name of this person, which is suitable for display.", + "type": "string" + }, + "domain": { + "description": "The hosted domain name for the user's Google Apps account. For instance, example.com. The plus.profile.emails.read or email scope is needed to get this domain name.", + "type": "string" + }, + "emails": { + "description": "A list of email addresses that this person has, including their Google account email address, and the public verified email addresses on their Google+ profile. The plus.profile.emails.read scope is needed to retrieve these email addresses, or the email scope can be used to retrieve just the Google account email address.", + "items": { + "properties": { + "type": { + "description": "The type of address. Possible values include, but are not limited to, the following values: \n- \"account\" - Google account email address. \n- \"home\" - Home email address. \n- \"work\" - Work email address. \n- \"other\" - Other.", + "type": "string" + }, + "value": { + "description": "The email address.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "etag": { + "description": "ETag of this response for caching purposes.", + "type": "string" + }, + "gender": { + "description": "The person's gender. Possible values include, but are not limited to, the following values: \n- \"male\" - Male gender. \n- \"female\" - Female gender. \n- \"other\" - Other.", + "type": "string" + }, + "id": { + "description": "The ID of this person.", + "type": "string" + }, + "image": { + "description": "The representation of the person's profile photo.", + "properties": { + "isDefault": { + "description": "Whether the person's profile photo is the default one", + "type": "boolean" + }, + "url": { + "description": "The URL of the person's profile photo. To resize the image and crop it to a square, append the query string ?sz=x, where x is the dimension in pixels of each side.", + "type": "string" + } + }, + "type": "object" + }, + "isPlusUser": { + "description": "Whether this user has signed up for Google+.", + "type": "boolean" + }, + "kind": { + "default": "plus#person", + "description": "Identifies this resource as a person. Value: \"plus#person\".", + "type": "string" + }, + "language": { + "description": "The user's preferred language for rendering.", + "type": "string" + }, + "name": { + "description": "An object representation of the individual components of a person's name.", + "properties": { + "familyName": { + "description": "The family name (last name) of this person.", + "type": "string" + }, + "formatted": { + "description": "The full name of this person, including middle names, suffixes, etc.", + "type": "string" + }, + "givenName": { + "description": "The given name (first name) of this person.", + "type": "string" + }, + "honorificPrefix": { + "description": "The honorific prefixes (such as \"Dr.\" or \"Mrs.\") for this person.", + "type": "string" + }, + "honorificSuffix": { + "description": "The honorific suffixes (such as \"Jr.\") for this person.", + "type": "string" + }, + "middleName": { + "description": "The middle name of this person.", + "type": "string" + } + }, + "type": "object" + }, + "nickname": { + "description": "The nickname of this person.", + "type": "string" + }, + "objectType": { + "description": "Type of person within Google+. Possible values include, but are not limited to, the following values: \n- \"person\" - represents an actual person. \n- \"page\" - represents a page.", + "type": "string" + }, + "occupation": { + "description": "The occupation of this person.", + "type": "string" + }, + "organizations": { + "description": "A list of current or past organizations with which this person is associated.", + "items": { + "properties": { + "department": { + "description": "The department within the organization. Deprecated.", + "type": "string" + }, + "description": { + "description": "A short description of the person's role in this organization. Deprecated.", + "type": "string" + }, + "endDate": { + "description": "The date that the person left this organization.", + "type": "string" + }, + "location": { + "description": "The location of this organization. Deprecated.", + "type": "string" + }, + "name": { + "description": "The name of the organization.", + "type": "string" + }, + "primary": { + "description": "If \"true\", indicates this organization is the person's primary one, which is typically interpreted as the current one.", + "type": "boolean" + }, + "startDate": { + "description": "The date that the person joined this organization.", + "type": "string" + }, + "title": { + "description": "The person's job title or role within the organization.", + "type": "string" + }, + "type": { + "description": "The type of organization. Possible values include, but are not limited to, the following values: \n- \"work\" - Work. \n- \"school\" - School.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "placesLived": { + "description": "A list of places where this person has lived.", + "items": { + "properties": { + "primary": { + "description": "If \"true\", this place of residence is this person's primary residence.", + "type": "boolean" + }, + "value": { + "description": "A place where this person has lived. For example: \"Seattle, WA\", \"Near Toronto\".", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "plusOneCount": { + "description": "If a Google+ Page, the number of people who have +1'd this page.", + "format": "int32", + "type": "integer" + }, + "relationshipStatus": { + "description": "The person's relationship status. Possible values include, but are not limited to, the following values: \n- \"single\" - Person is single. \n- \"in_a_relationship\" - Person is in a relationship. \n- \"engaged\" - Person is engaged. \n- \"married\" - Person is married. \n- \"its_complicated\" - The relationship is complicated. \n- \"open_relationship\" - Person is in an open relationship. \n- \"widowed\" - Person is widowed. \n- \"in_domestic_partnership\" - Person is in a domestic partnership. \n- \"in_civil_union\" - Person is in a civil union.", + "type": "string" + }, + "skills": { + "description": "The person's skills.", + "type": "string" + }, + "tagline": { + "description": "The brief description (tagline) of this person.", + "type": "string" + }, + "url": { + "description": "The URL of this person's profile.", + "type": "string" + }, + "urls": { + "description": "A list of URLs for this person.", + "items": { + "properties": { + "label": { + "description": "The label of the URL.", + "type": "string" + }, + "type": { + "description": "The type of URL. Possible values include, but are not limited to, the following values: \n- \"otherProfile\" - URL for another profile. \n- \"contributor\" - URL to a site for which this person is a contributor. \n- \"website\" - URL for this Google+ Page's primary website. \n- \"other\" - Other URL.", + "type": "string" + }, + "value": { + "description": "The URL value.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "verified": { + "description": "Whether the person or Google+ Page has been verified.", + "type": "boolean" + } + }, + "type": "object" + }, + "Place": { + "id": "Place", + "properties": { + "address": { + "description": "The physical address of the place.", + "properties": { + "formatted": { + "description": "The formatted address for display.", + "type": "string" + } + }, + "type": "object" + }, + "displayName": { + "description": "The display name of the place.", + "type": "string" + }, + "id": { + "description": "The id of the place.", + "type": "string" + }, + "kind": { + "default": "plus#place", + "description": "Identifies this resource as a place. Value: \"plus#place\".", + "type": "string" + }, + "position": { + "description": "The position of the place.", + "properties": { + "latitude": { + "description": "The latitude of this position.", + "format": "double", + "type": "number" + }, + "longitude": { + "description": "The longitude of this position.", + "format": "double", + "type": "number" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "PlusAclentryResource": { + "id": "PlusAclentryResource", + "properties": { + "displayName": { + "description": "A descriptive name for this entry. Suitable for display.", + "type": "string" + }, + "id": { + "description": "The ID of the entry. For entries of type \"person\" or \"circle\", this is the ID of the resource. For other types, this property is not set.", + "type": "string" + }, + "type": { + "description": "The type of entry describing to whom access is granted. Possible values are: \n- \"person\" - Access to an individual. \n- \"circle\" - Access to members of a circle. \n- \"myCircles\" - Access to members of all the person's circles. \n- \"extendedCircles\" - Access to members of all the person's circles, plus all of the people in their circles. \n- \"domain\" - Access to members of the person's Google Apps domain. \n- \"public\" - Access to anyone on the web.", + "type": "string" + } + }, + "type": "object" } - } }, - "Place": { - "id": "Place", - "type": "object", - "properties": { - "address": { - "type": "object", - "description": "The physical address of the place.", - "properties": { - "formatted": { - "type": "string", - "description": "The formatted address for display." - } - } - }, - "displayName": { - "type": "string", - "description": "The display name of the place." - }, - "id": { - "type": "string", - "description": "The id of the place." - }, - "kind": { - "type": "string", - "description": "Identifies this resource as a place. Value: \"plus#place\".", - "default": "plus#place" - }, - "position": { - "type": "object", - "description": "The position of the place.", - "properties": { - "latitude": { - "type": "number", - "description": "The latitude of this position.", - "format": "double" - }, - "longitude": { - "type": "number", - "description": "The longitude of this position.", - "format": "double" - } - } - } - } - }, - "PlusAclentryResource": { - "id": "PlusAclentryResource", - "type": "object", - "properties": { - "displayName": { - "type": "string", - "description": "A descriptive name for this entry. Suitable for display." - }, - "id": { - "type": "string", - "description": "The ID of the entry. For entries of type \"person\" or \"circle\", this is the ID of the resource. For other types, this property is not set." - }, - "type": { - "type": "string", - "description": "The type of entry describing to whom access is granted. Possible values are: \n- \"person\" - Access to an individual. \n- \"circle\" - Access to members of a circle. \n- \"myCircles\" - Access to members of all the person's circles. \n- \"extendedCircles\" - Access to members of all the person's circles, plus all of the people in their circles. \n- \"domain\" - Access to members of the person's Google Apps domain. \n- \"public\" - Access to anyone on the web." - } - } - } - }, - "resources": { - "activities": { - "methods": { - "get": { - "id": "plus.activities.get", - "path": "activities/{activityId}", - "httpMethod": "GET", - "description": "Get an activity.", - "parameters": { - "activityId": { - "type": "string", - "description": "The ID of the activity to get.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "activityId" - ], - "response": { - "$ref": "Activity" - }, - "scopes": [ - "https://www.googleapis.com/auth/plus.login", - "https://www.googleapis.com/auth/plus.me" - ] - }, - "list": { - "id": "plus.activities.list", - "path": "people/{userId}/activities/{collection}", - "httpMethod": "GET", - "description": "List all of the activities in the specified collection for a particular user.", - "parameters": { - "collection": { - "type": "string", - "description": "The collection of activities to list.", - "required": true, - "enum": [ - "public" - ], - "enumDescriptions": [ - "All public activities created by the specified user." - ], - "location": "path" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of activities to include in the response, which is used for paging. For any response, the actual number returned might be less than the specified maxResults.", - "default": "20", - "format": "uint32", - "minimum": "1", - "maximum": "100", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "The continuation token, which is used to page through large result sets. To get the next page of results, set this parameter to the value of \"nextPageToken\" from the previous response.", - "location": "query" - }, - "userId": { - "type": "string", - "description": "The ID of the user to get activities for. The special value \"me\" can be used to indicate the authenticated user.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "userId", - "collection" - ], - "response": { - "$ref": "ActivityFeed" - }, - "scopes": [ - "https://www.googleapis.com/auth/plus.login", - "https://www.googleapis.com/auth/plus.me" - ] - }, - "search": { - "id": "plus.activities.search", - "path": "activities", - "httpMethod": "GET", - "description": "Search public activities.", - "parameters": { - "language": { - "type": "string", - "description": "Specify the preferred language to search with. See search language codes for available values.", - "default": "en-US", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of activities to include in the response, which is used for paging. For any response, the actual number returned might be less than the specified maxResults.", - "default": "10", - "format": "uint32", - "minimum": "1", - "maximum": "20", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "Specifies how to order search results.", - "default": "recent", - "enum": [ - "best", - "recent" - ], - "enumDescriptions": [ - "Sort activities by relevance to the user, most relevant first.", - "Sort activities by published date, most recent first." - ], - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "The continuation token, which is used to page through large result sets. To get the next page of results, set this parameter to the value of \"nextPageToken\" from the previous response. This token can be of any length.", - "location": "query" - }, - "query": { - "type": "string", - "description": "Full-text search query string.", - "required": true, - "location": "query" - } - }, - "parameterOrder": [ - "query" - ], - "response": { - "$ref": "ActivityFeed" - }, - "scopes": [ - "https://www.googleapis.com/auth/plus.login", - "https://www.googleapis.com/auth/plus.me" - ] - } - } - }, - "comments": { - "methods": { - "get": { - "id": "plus.comments.get", - "path": "comments/{commentId}", - "httpMethod": "GET", - "description": "Get a comment.", - "parameters": { - "commentId": { - "type": "string", - "description": "The ID of the comment to get.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "commentId" - ], - "response": { - "$ref": "Comment" - }, - "scopes": [ - "https://www.googleapis.com/auth/plus.login", - "https://www.googleapis.com/auth/plus.me" - ] - }, - "list": { - "id": "plus.comments.list", - "path": "activities/{activityId}/comments", - "httpMethod": "GET", - "description": "List all of the comments for an activity.", - "parameters": { - "activityId": { - "type": "string", - "description": "The ID of the activity to get comments for.", - "required": true, - "location": "path" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of comments to include in the response, which is used for paging. For any response, the actual number returned might be less than the specified maxResults.", - "default": "20", - "format": "uint32", - "minimum": "0", - "maximum": "500", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "The continuation token, which is used to page through large result sets. To get the next page of results, set this parameter to the value of \"nextPageToken\" from the previous response.", - "location": "query" - }, - "sortOrder": { - "type": "string", - "description": "The order in which to sort the list of comments.", - "default": "ascending", - "enum": [ - "ascending", - "descending" - ], - "enumDescriptions": [ - "Sort oldest comments first.", - "Sort newest comments first." - ], - "location": "query" - } - }, - "parameterOrder": [ - "activityId" - ], - "response": { - "$ref": "CommentFeed" - }, - "scopes": [ - "https://www.googleapis.com/auth/plus.login", - "https://www.googleapis.com/auth/plus.me" - ] - } - } - }, - "people": { - "methods": { - "get": { - "id": "plus.people.get", - "path": "people/{userId}", - "httpMethod": "GET", - "description": "Get a person's profile. If your app uses scope https://www.googleapis.com/auth/plus.login, this method is guaranteed to return ageRange and language.", - "parameters": { - "userId": { - "type": "string", - "description": "The ID of the person to get the profile for. The special value \"me\" can be used to indicate the authenticated user.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "userId" - ], - "response": { - "$ref": "Person" - }, - "scopes": [ - "https://www.googleapis.com/auth/plus.login", - "https://www.googleapis.com/auth/plus.me", - "https://www.googleapis.com/auth/userinfo.email", - "https://www.googleapis.com/auth/userinfo.profile" - ] - }, - "list": { - "id": "plus.people.list", - "path": "people/{userId}/people/{collection}", - "httpMethod": "GET", - "description": "List all of the people in the specified collection.", - "parameters": { - "collection": { - "type": "string", - "description": "The collection of people to list.", - "required": true, - "enum": [ - "connected", - "visible" - ], - "enumDescriptions": [ - "The list of visible people in the authenticated user's circles who also use the requesting app. This list is limited to users who made their app activities visible to the authenticated user.", - "The list of people who this user has added to one or more circles, limited to the circles visible to the requesting application." - ], - "location": "path" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of people to include in the response, which is used for paging. For any response, the actual number returned might be less than the specified maxResults.", - "default": "100", - "format": "uint32", - "minimum": "1", - "maximum": "100", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "The order to return people in.", - "enum": [ - "alphabetical", - "best" - ], - "enumDescriptions": [ - "Order the people by their display name.", - "Order people based on the relevence to the viewer." - ], - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "The continuation token, which is used to page through large result sets. To get the next page of results, set this parameter to the value of \"nextPageToken\" from the previous response.", - "location": "query" - }, - "userId": { - "type": "string", - "description": "Get the collection of people for the person identified. Use \"me\" to indicate the authenticated user.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "userId", - "collection" - ], - "response": { - "$ref": "PeopleFeed" - }, - "scopes": [ - "https://www.googleapis.com/auth/plus.login", - "https://www.googleapis.com/auth/plus.me" - ] - }, - "listByActivity": { - "id": "plus.people.listByActivity", - "path": "activities/{activityId}/people/{collection}", - "httpMethod": "GET", - "description": "List all of the people in the specified collection for a particular activity.", - "parameters": { - "activityId": { - "type": "string", - "description": "The ID of the activity to get the list of people for.", - "required": true, - "location": "path" - }, - "collection": { - "type": "string", - "description": "The collection of people to list.", - "required": true, - "enum": [ - "plusoners", - "resharers" - ], - "enumDescriptions": [ - "List all people who have +1'd this activity.", - "List all people who have reshared this activity." - ], - "location": "path" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of people to include in the response, which is used for paging. For any response, the actual number returned might be less than the specified maxResults.", - "default": "20", - "format": "uint32", - "minimum": "1", - "maximum": "100", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "The continuation token, which is used to page through large result sets. To get the next page of results, set this parameter to the value of \"nextPageToken\" from the previous response.", - "location": "query" - } - }, - "parameterOrder": [ - "activityId", - "collection" - ], - "response": { - "$ref": "PeopleFeed" - }, - "scopes": [ - "https://www.googleapis.com/auth/plus.login", - "https://www.googleapis.com/auth/plus.me" - ] - }, - "search": { - "id": "plus.people.search", - "path": "people", - "httpMethod": "GET", - "description": "Search all public profiles.", - "parameters": { - "language": { - "type": "string", - "description": "Specify the preferred language to search with. See search language codes for available values.", - "default": "en-US", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of people to include in the response, which is used for paging. For any response, the actual number returned might be less than the specified maxResults.", - "default": "25", - "format": "uint32", - "minimum": "1", - "maximum": "50", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "The continuation token, which is used to page through large result sets. To get the next page of results, set this parameter to the value of \"nextPageToken\" from the previous response. This token can be of any length.", - "location": "query" - }, - "query": { - "type": "string", - "description": "Specify a query string for full text search of public text in all profiles.", - "required": true, - "location": "query" - } - }, - "parameterOrder": [ - "query" - ], - "response": { - "$ref": "PeopleFeed" - }, - "scopes": [ - "https://www.googleapis.com/auth/plus.login", - "https://www.googleapis.com/auth/plus.me" - ] - } - } - } - } -} + "servicePath": "plus/v1/", + "title": "Google+ API", + "version": "v1" +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/plusdomains/v1/plusdomains-api.json b/vendor/google.golang.org/api/plusdomains/v1/plusdomains-api.json index 733ffd4fa..1c9570690 100644 --- a/vendor/google.golang.org/api/plusdomains/v1/plusdomains-api.json +++ b/vendor/google.golang.org/api/plusdomains/v1/plusdomains-api.json @@ -1,2241 +1,2241 @@ { - "kind": "discovery#restDescription", - "etag": "\"YWOzh2SDasdU84ArJnpYek-OMdg/Vo5c3NDWXSr5mx5IDaATqckEqqM\"", - "discoveryVersion": "v1", - "id": "plusDomains:v1", - "name": "plusDomains", - "version": "v1", - "revision": "20171030", - "title": "Google+ Domains API", - "description": "Builds on top of the Google+ platform for Google Apps Domains.", - "ownerDomain": "google.com", - "ownerName": "Google", - "icons": { - "x16": "http://www.google.com/images/icons/product/gplus-16.png", - "x32": "http://www.google.com/images/icons/product/gplus-32.png" - }, - "documentationLink": "https://developers.google.com/+/domains/", - "protocol": "rest", - "baseUrl": "https://www.googleapis.com/plusDomains/v1/", - "basePath": "/plusDomains/v1/", - "rootUrl": "https://www.googleapis.com/", - "servicePath": "plusDomains/v1/", - "batchPath": "batch/plusDomains/v1", - "parameters": { - "alt": { - "type": "string", - "description": "Data format for the response.", - "default": "json", - "enum": [ - "json" - ], - "enumDescriptions": [ - "Responses with Content-Type of application/json" - ], - "location": "query" - }, - "fields": { - "type": "string", - "description": "Selector specifying which fields to include in a partial response.", - "location": "query" - }, - "key": { - "type": "string", - "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" - }, - "oauth_token": { - "type": "string", - "description": "OAuth 2.0 token for the current user.", - "location": "query" - }, - "prettyPrint": { - "type": "boolean", - "description": "Returns response with indentations and line breaks.", - "default": "true", - "location": "query" - }, - "quotaUser": { - "type": "string", - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", - "location": "query" - }, - "userIp": { - "type": "string", - "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", - "location": "query" - } - }, - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/plus.circles.read": { - "description": "View your circles and the people and pages in them" - }, - "https://www.googleapis.com/auth/plus.circles.write": { - "description": "Manage your circles and add people and pages. People and pages you add to your circles will be notified. Others may see this information publicly. People you add to circles can use Hangouts with you." - }, - "https://www.googleapis.com/auth/plus.login": { - "description": "Know the list of people in your circles, your age range, and language" - }, - "https://www.googleapis.com/auth/plus.me": { - "description": "Know who you are on Google" - }, - "https://www.googleapis.com/auth/plus.media.upload": { - "description": "Send your photos and videos to Google+" - }, - "https://www.googleapis.com/auth/plus.profiles.read": { - "description": "View your own Google+ profile and profiles visible to you" - }, - "https://www.googleapis.com/auth/plus.stream.read": { - "description": "View your Google+ posts, comments, and stream" - }, - "https://www.googleapis.com/auth/plus.stream.write": { - "description": "Manage your Google+ posts, comments, and stream" - }, - "https://www.googleapis.com/auth/userinfo.email": { - "description": "View your email address" - }, - "https://www.googleapis.com/auth/userinfo.profile": { - "description": "View your basic profile info" - } - } - } - }, - "schemas": { - "Acl": { - "id": "Acl", - "type": "object", - "properties": { - "description": { - "type": "string", - "description": "Description of the access granted, suitable for display." - }, - "domainRestricted": { - "type": "boolean", - "description": "Whether access is restricted to the domain." - }, - "items": { - "type": "array", - "description": "The list of access entries.", - "items": { - "$ref": "PlusDomainsAclentryResource" - } - }, - "kind": { - "type": "string", - "description": "Identifies this resource as a collection of access controls. Value: \"plus#acl\".", - "default": "plus#acl" - } - } - }, - "Activity": { - "id": "Activity", - "type": "object", - "properties": { - "access": { - "$ref": "Acl", - "description": "Identifies who has access to see this activity." - }, - "actor": { - "type": "object", - "description": "The person who performed this activity.", - "properties": { - "clientSpecificActorInfo": { - "type": "object", - "description": "Actor info specific to particular clients.", - "properties": { - "youtubeActorInfo": { - "type": "object", - "description": "Actor info specific to YouTube clients.", - "properties": { - "channelId": { - "type": "string", - "description": "ID of the YouTube channel owned by the Actor." - } - } - } - } - }, - "displayName": { - "type": "string", - "description": "The name of the actor, suitable for display." - }, - "id": { - "type": "string", - "description": "The ID of the actor's Person resource." - }, - "image": { - "type": "object", - "description": "The image representation of the actor.", - "properties": { - "url": { - "type": "string", - "description": "The URL of the actor's profile photo. To resize the image and crop it to a square, append the query string ?sz=x, where x is the dimension in pixels of each side." - } - } - }, - "name": { - "type": "object", - "description": "An object representation of the individual components of name.", - "properties": { - "familyName": { - "type": "string", - "description": "The family name (\"last name\") of the actor." + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/plus.circles.read": { + "description": "View your circles and the people and pages in them" }, - "givenName": { - "type": "string", - "description": "The given name (\"first name\") of the actor." + "https://www.googleapis.com/auth/plus.circles.write": { + "description": "Manage your circles and add people and pages. People and pages you add to your circles will be notified. Others may see this information publicly. People you add to circles can use Hangouts with you." + }, + "https://www.googleapis.com/auth/plus.login": { + "description": "Know the list of people in your circles, your age range, and language" + }, + "https://www.googleapis.com/auth/plus.me": { + "description": "Know who you are on Google" + }, + "https://www.googleapis.com/auth/plus.media.upload": { + "description": "Send your photos and videos to Google+" + }, + "https://www.googleapis.com/auth/plus.profiles.read": { + "description": "View your own Google+ profile and profiles visible to you" + }, + "https://www.googleapis.com/auth/plus.stream.read": { + "description": "View your Google+ posts, comments, and stream" + }, + "https://www.googleapis.com/auth/plus.stream.write": { + "description": "Manage your Google+ posts, comments, and stream" + }, + "https://www.googleapis.com/auth/userinfo.email": { + "description": "View your email address" + }, + "https://www.googleapis.com/auth/userinfo.profile": { + "description": "View your basic profile info" } - } - }, - "url": { - "type": "string", - "description": "The link to the actor's Google profile." - }, - "verification": { - "type": "object", - "description": "Verification status of actor.", - "properties": { - "adHocVerified": { - "type": "string", - "description": "Verification for one-time or manual processes." - } - } } - } + } + }, + "basePath": "/plusDomains/v1/", + "baseUrl": "https://www.googleapis.com/plusDomains/v1/", + "batchPath": "batch/plusDomains/v1", + "description": "Builds on top of the Google+ platform for Google Apps Domains.", + "discoveryVersion": "v1", + "documentationLink": "https://developers.google.com/+/domains/", + "etag": "\"-iA1DTNe4s-I6JZXPt1t1Ypy8IU/uFI9OtaBYnIYFMdaxO5kg4qsSVg\"", + "icons": { + "x16": "http://www.google.com/images/icons/product/gplus-16.png", + "x32": "http://www.google.com/images/icons/product/gplus-32.png" + }, + "id": "plusDomains:v1", + "kind": "discovery#restDescription", + "name": "plusDomains", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "alt": { + "default": "json", + "description": "Data format for the response.", + "enum": [ + "json" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json" + ], + "location": "query", + "type": "string" }, - "address": { - "type": "string", - "description": "Street address where this activity occurred." + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "location": "query", + "type": "string" }, - "annotation": { - "type": "string", - "description": "Additional content added by the person who shared this activity, applicable only when resharing an activity." + "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" }, - "crosspostSource": { - "type": "string", - "description": "If this activity is a crosspost from another system, this property specifies the ID of the original activity." + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" }, - "etag": { - "type": "string", - "description": "ETag of this response for caching purposes." + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" }, - "geocode": { - "type": "string", - "description": "Latitude and longitude where this activity occurred. Format is latitude followed by longitude, space separated." + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", + "location": "query", + "type": "string" }, - "id": { - "type": "string", - "description": "The ID of this activity." - }, - "kind": { - "type": "string", - "description": "Identifies this resource as an activity. Value: \"plus#activity\".", - "default": "plus#activity" - }, - "location": { - "$ref": "Place", - "description": "The location where this activity occurred." - }, - "object": { - "type": "object", - "description": "The object of this activity.", - "properties": { - "actor": { - "type": "object", - "description": "If this activity's object is itself another activity, such as when a person reshares an activity, this property specifies the original activity's actor.", - "properties": { - "clientSpecificActorInfo": { - "type": "object", - "description": "Actor info specific to particular clients.", - "properties": { - "youtubeActorInfo": { - "type": "object", - "description": "Actor info specific to YouTube clients.", - "properties": { - "channelId": { - "type": "string", - "description": "ID of the YouTube channel owned by the Actor." + "userIp": { + "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", + "location": "query", + "type": "string" + } + }, + "protocol": "rest", + "resources": { + "activities": { + "methods": { + "get": { + "description": "Get an activity.", + "httpMethod": "GET", + "id": "plusDomains.activities.get", + "parameterOrder": [ + "activityId" + ], + "parameters": { + "activityId": { + "description": "The ID of the activity to get.", + "location": "path", + "required": true, + "type": "string" } - } - } - } + }, + "path": "activities/{activityId}", + "response": { + "$ref": "Activity" + }, + "scopes": [ + "https://www.googleapis.com/auth/plus.login", + "https://www.googleapis.com/auth/plus.me", + "https://www.googleapis.com/auth/plus.stream.read" + ] }, - "displayName": { - "type": "string", - "description": "The original actor's name, which is suitable for display." - }, - "id": { - "type": "string", - "description": "ID of the original actor." - }, - "image": { - "type": "object", - "description": "The image representation of the original actor.", - "properties": { - "url": { - "type": "string", - "description": "A URL that points to a thumbnail photo of the original actor." - } - } - }, - "url": { - "type": "string", - "description": "A link to the original actor's Google profile." - }, - "verification": { - "type": "object", - "description": "Verification status of actor.", - "properties": { - "adHocVerified": { - "type": "string", - "description": "Verification for one-time or manual processes." - } - } - } - } - }, - "attachments": { - "type": "array", - "description": "The media objects attached to this activity.", - "items": { - "type": "object", - "properties": { - "content": { - "type": "string", - "description": "If the attachment is an article, this property contains a snippet of text from the article. It can also include descriptions for other types." - }, - "displayName": { - "type": "string", - "description": "The title of the attachment, such as a photo caption or an article title." - }, - "embed": { - "type": "object", - "description": "If the attachment is a video, the embeddable link.", - "properties": { - "type": { - "type": "string", - "description": "Media type of the link." - }, - "url": { - "type": "string", - "description": "URL of the link." - } - } - }, - "fullImage": { - "type": "object", - "description": "The full image URL for photo attachments.", - "properties": { - "height": { - "type": "integer", - "description": "The height, in pixels, of the linked resource.", - "format": "uint32" - }, - "type": { - "type": "string", - "description": "Media type of the link." - }, - "url": { - "type": "string", - "description": "URL of the image." - }, - "width": { - "type": "integer", - "description": "The width, in pixels, of the linked resource.", - "format": "uint32" - } - } - }, - "id": { - "type": "string", - "description": "The ID of the attachment." - }, - "image": { - "type": "object", - "description": "The preview image for photos or videos.", - "properties": { - "height": { - "type": "integer", - "description": "The height, in pixels, of the linked resource.", - "format": "uint32" - }, - "type": { - "type": "string", - "description": "Media type of the link." - }, - "url": { - "type": "string", - "description": "Image URL." - }, - "width": { - "type": "integer", - "description": "The width, in pixels, of the linked resource.", - "format": "uint32" - } - } - }, - "objectType": { - "type": "string", - "description": "The type of media object. Possible values include, but are not limited to, the following values: \n- \"photo\" - A photo. \n- \"album\" - A photo album. \n- \"video\" - A video. \n- \"article\" - An article, specified by a link." - }, - "previewThumbnails": { - "type": "array", - "description": "When previewing, these are the optional thumbnails for the post. When posting an article, choose one by setting the attachment.image.url property. If you don't choose one, one will be chosen for you.", - "items": { - "type": "object", - "properties": { - "url": { - "type": "string", - "description": "URL of the thumbnail image." - } - } - } - }, - "thumbnails": { - "type": "array", - "description": "If the attachment is an album, this property is a list of potential additional thumbnails from the album.", - "items": { - "type": "object", - "properties": { - "description": { - "type": "string", - "description": "Potential name of the thumbnail." + "insert": { + "description": "Create a new activity for the authenticated user.", + "httpMethod": "POST", + "id": "plusDomains.activities.insert", + "parameterOrder": [ + "userId" + ], + "parameters": { + "preview": { + "description": "If \"true\", extract the potential media attachments for a URL. The response will include all possible attachments for a URL, including video, photos, and articles based on the content of the page.", + "location": "query", + "type": "boolean" }, - "image": { - "type": "object", - "description": "Image resource.", - "properties": { - "height": { - "type": "integer", - "description": "The height, in pixels, of the linked resource.", - "format": "uint32" + "userId": { + "description": "The ID of the user to create the activity on behalf of. Its value should be \"me\", to indicate the authenticated user.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "people/{userId}/activities", + "request": { + "$ref": "Activity" + }, + "response": { + "$ref": "Activity" + }, + "scopes": [ + "https://www.googleapis.com/auth/plus.login", + "https://www.googleapis.com/auth/plus.me", + "https://www.googleapis.com/auth/plus.stream.write" + ] + }, + "list": { + "description": "List all of the activities in the specified collection for a particular user.", + "httpMethod": "GET", + "id": "plusDomains.activities.list", + "parameterOrder": [ + "userId", + "collection" + ], + "parameters": { + "collection": { + "description": "The collection of activities to list.", + "enum": [ + "user" + ], + "enumDescriptions": [ + "All activities created by the specified user that the authenticated user is authorized to view." + ], + "location": "path", + "required": true, + "type": "string" + }, + "maxResults": { + "default": "20", + "description": "The maximum number of activities to include in the response, which is used for paging. For any response, the actual number returned might be less than the specified maxResults.", + "format": "uint32", + "location": "query", + "maximum": "100", + "minimum": "1", + "type": "integer" + }, + "pageToken": { + "description": "The continuation token, which is used to page through large result sets. To get the next page of results, set this parameter to the value of \"nextPageToken\" from the previous response.", + "location": "query", + "type": "string" + }, + "userId": { + "description": "The ID of the user to get activities for. The special value \"me\" can be used to indicate the authenticated user.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "people/{userId}/activities/{collection}", + "response": { + "$ref": "ActivityFeed" + }, + "scopes": [ + "https://www.googleapis.com/auth/plus.login", + "https://www.googleapis.com/auth/plus.me", + "https://www.googleapis.com/auth/plus.stream.read" + ] + } + } + }, + "audiences": { + "methods": { + "list": { + "description": "List all of the audiences to which a user can share.", + "httpMethod": "GET", + "id": "plusDomains.audiences.list", + "parameterOrder": [ + "userId" + ], + "parameters": { + "maxResults": { + "default": "20", + "description": "The maximum number of circles to include in the response, which is used for paging. For any response, the actual number returned might be less than the specified maxResults.", + "format": "uint32", + "location": "query", + "maximum": "100", + "minimum": "1", + "type": "integer" + }, + "pageToken": { + "description": "The continuation token, which is used to page through large result sets. To get the next page of results, set this parameter to the value of \"nextPageToken\" from the previous response.", + "location": "query", + "type": "string" + }, + "userId": { + "description": "The ID of the user to get audiences for. The special value \"me\" can be used to indicate the authenticated user.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "people/{userId}/audiences", + "response": { + "$ref": "AudiencesFeed" + }, + "scopes": [ + "https://www.googleapis.com/auth/plus.circles.read", + "https://www.googleapis.com/auth/plus.login", + "https://www.googleapis.com/auth/plus.me" + ] + } + } + }, + "circles": { + "methods": { + "addPeople": { + "description": "Add a person to a circle. Google+ limits certain circle operations, including the number of circle adds. Learn More.", + "httpMethod": "PUT", + "id": "plusDomains.circles.addPeople", + "parameterOrder": [ + "circleId" + ], + "parameters": { + "circleId": { + "description": "The ID of the circle to add the person to.", + "location": "path", + "required": true, + "type": "string" + }, + "email": { + "description": "Email of the people to add to the circle. Optional, can be repeated.", + "location": "query", + "repeated": true, + "type": "string" + }, + "userId": { + "description": "IDs of the people to add to the circle. Optional, can be repeated.", + "location": "query", + "repeated": true, + "type": "string" + } + }, + "path": "circles/{circleId}/people", + "response": { + "$ref": "Circle" + }, + "scopes": [ + "https://www.googleapis.com/auth/plus.circles.write", + "https://www.googleapis.com/auth/plus.login" + ] + }, + "get": { + "description": "Get a circle.", + "httpMethod": "GET", + "id": "plusDomains.circles.get", + "parameterOrder": [ + "circleId" + ], + "parameters": { + "circleId": { + "description": "The ID of the circle to get.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "circles/{circleId}", + "response": { + "$ref": "Circle" + }, + "scopes": [ + "https://www.googleapis.com/auth/plus.circles.read", + "https://www.googleapis.com/auth/plus.login" + ] + }, + "insert": { + "description": "Create a new circle for the authenticated user.", + "httpMethod": "POST", + "id": "plusDomains.circles.insert", + "parameterOrder": [ + "userId" + ], + "parameters": { + "userId": { + "description": "The ID of the user to create the circle on behalf of. The value \"me\" can be used to indicate the authenticated user.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "people/{userId}/circles", + "request": { + "$ref": "Circle" + }, + "response": { + "$ref": "Circle" + }, + "scopes": [ + "https://www.googleapis.com/auth/plus.circles.write", + "https://www.googleapis.com/auth/plus.login", + "https://www.googleapis.com/auth/plus.me" + ] + }, + "list": { + "description": "List all of the circles for a user.", + "httpMethod": "GET", + "id": "plusDomains.circles.list", + "parameterOrder": [ + "userId" + ], + "parameters": { + "maxResults": { + "default": "20", + "description": "The maximum number of circles to include in the response, which is used for paging. For any response, the actual number returned might be less than the specified maxResults.", + "format": "uint32", + "location": "query", + "maximum": "100", + "minimum": "1", + "type": "integer" + }, + "pageToken": { + "description": "The continuation token, which is used to page through large result sets. To get the next page of results, set this parameter to the value of \"nextPageToken\" from the previous response.", + "location": "query", + "type": "string" + }, + "userId": { + "description": "The ID of the user to get circles for. The special value \"me\" can be used to indicate the authenticated user.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "people/{userId}/circles", + "response": { + "$ref": "CircleFeed" + }, + "scopes": [ + "https://www.googleapis.com/auth/plus.circles.read", + "https://www.googleapis.com/auth/plus.login", + "https://www.googleapis.com/auth/plus.me" + ] + }, + "patch": { + "description": "Update a circle's description. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "plusDomains.circles.patch", + "parameterOrder": [ + "circleId" + ], + "parameters": { + "circleId": { + "description": "The ID of the circle to update.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "circles/{circleId}", + "request": { + "$ref": "Circle" + }, + "response": { + "$ref": "Circle" + }, + "scopes": [ + "https://www.googleapis.com/auth/plus.circles.write", + "https://www.googleapis.com/auth/plus.login" + ] + }, + "remove": { + "description": "Delete a circle.", + "httpMethod": "DELETE", + "id": "plusDomains.circles.remove", + "parameterOrder": [ + "circleId" + ], + "parameters": { + "circleId": { + "description": "The ID of the circle to delete.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "circles/{circleId}", + "scopes": [ + "https://www.googleapis.com/auth/plus.circles.write", + "https://www.googleapis.com/auth/plus.login" + ] + }, + "removePeople": { + "description": "Remove a person from a circle.", + "httpMethod": "DELETE", + "id": "plusDomains.circles.removePeople", + "parameterOrder": [ + "circleId" + ], + "parameters": { + "circleId": { + "description": "The ID of the circle to remove the person from.", + "location": "path", + "required": true, + "type": "string" + }, + "email": { + "description": "Email of the people to add to the circle. Optional, can be repeated.", + "location": "query", + "repeated": true, + "type": "string" + }, + "userId": { + "description": "IDs of the people to remove from the circle. Optional, can be repeated.", + "location": "query", + "repeated": true, + "type": "string" + } + }, + "path": "circles/{circleId}/people", + "scopes": [ + "https://www.googleapis.com/auth/plus.circles.write", + "https://www.googleapis.com/auth/plus.login" + ] + }, + "update": { + "description": "Update a circle's description.", + "httpMethod": "PUT", + "id": "plusDomains.circles.update", + "parameterOrder": [ + "circleId" + ], + "parameters": { + "circleId": { + "description": "The ID of the circle to update.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "circles/{circleId}", + "request": { + "$ref": "Circle" + }, + "response": { + "$ref": "Circle" + }, + "scopes": [ + "https://www.googleapis.com/auth/plus.circles.write", + "https://www.googleapis.com/auth/plus.login" + ] + } + } + }, + "comments": { + "methods": { + "get": { + "description": "Get a comment.", + "httpMethod": "GET", + "id": "plusDomains.comments.get", + "parameterOrder": [ + "commentId" + ], + "parameters": { + "commentId": { + "description": "The ID of the comment to get.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "comments/{commentId}", + "response": { + "$ref": "Comment" + }, + "scopes": [ + "https://www.googleapis.com/auth/plus.login", + "https://www.googleapis.com/auth/plus.stream.read" + ] + }, + "insert": { + "description": "Create a new comment in reply to an activity.", + "httpMethod": "POST", + "id": "plusDomains.comments.insert", + "parameterOrder": [ + "activityId" + ], + "parameters": { + "activityId": { + "description": "The ID of the activity to reply to.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "activities/{activityId}/comments", + "request": { + "$ref": "Comment" + }, + "response": { + "$ref": "Comment" + }, + "scopes": [ + "https://www.googleapis.com/auth/plus.login", + "https://www.googleapis.com/auth/plus.stream.write" + ] + }, + "list": { + "description": "List all of the comments for an activity.", + "httpMethod": "GET", + "id": "plusDomains.comments.list", + "parameterOrder": [ + "activityId" + ], + "parameters": { + "activityId": { + "description": "The ID of the activity to get comments for.", + "location": "path", + "required": true, + "type": "string" + }, + "maxResults": { + "default": "20", + "description": "The maximum number of comments to include in the response, which is used for paging. For any response, the actual number returned might be less than the specified maxResults.", + "format": "uint32", + "location": "query", + "maximum": "500", + "minimum": "0", + "type": "integer" + }, + "pageToken": { + "description": "The continuation token, which is used to page through large result sets. To get the next page of results, set this parameter to the value of \"nextPageToken\" from the previous response.", + "location": "query", + "type": "string" + }, + "sortOrder": { + "default": "ascending", + "description": "The order in which to sort the list of comments.", + "enum": [ + "ascending", + "descending" + ], + "enumDescriptions": [ + "Sort oldest comments first.", + "Sort newest comments first." + ], + "location": "query", + "type": "string" + } + }, + "path": "activities/{activityId}/comments", + "response": { + "$ref": "CommentFeed" + }, + "scopes": [ + "https://www.googleapis.com/auth/plus.login", + "https://www.googleapis.com/auth/plus.stream.read" + ] + } + } + }, + "media": { + "methods": { + "insert": { + "description": "Add a new media item to an album. The current upload size limitations are 36MB for a photo and 1GB for a video. Uploads do not count against quota if photos are less than 2048 pixels on their longest side or videos are less than 15 minutes in length.", + "httpMethod": "POST", + "id": "plusDomains.media.insert", + "mediaUpload": { + "accept": [ + "image/*", + "video/*" + ], + "protocols": { + "resumable": { + "multipart": true, + "path": "/resumable/upload/plusDomains/v1/people/{userId}/media/{collection}" }, - "type": { - "type": "string", - "description": "Media type of the link." - }, - "url": { - "type": "string", - "description": "Image url." - }, - "width": { - "type": "integer", - "description": "The width, in pixels, of the linked resource.", - "format": "uint32" + "simple": { + "multipart": true, + "path": "/upload/plusDomains/v1/people/{userId}/media/{collection}" } - } - }, - "url": { - "type": "string", - "description": "URL of the webpage containing the image." } - } - } - }, - "url": { - "type": "string", - "description": "The link to the attachment, which should be of type text/html." - } + }, + "parameterOrder": [ + "userId", + "collection" + ], + "parameters": { + "collection": { + "enum": [ + "cloud" + ], + "enumDescriptions": [ + "Upload the media to share on Google+." + ], + "location": "path", + "required": true, + "type": "string" + }, + "userId": { + "description": "The ID of the user to create the activity on behalf of.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "people/{userId}/media/{collection}", + "request": { + "$ref": "Media" + }, + "response": { + "$ref": "Media" + }, + "scopes": [ + "https://www.googleapis.com/auth/plus.login", + "https://www.googleapis.com/auth/plus.me", + "https://www.googleapis.com/auth/plus.media.upload" + ], + "supportsMediaUpload": true } - } - }, - "content": { - "type": "string", - "description": "The HTML-formatted content, which is suitable for display." - }, - "id": { - "type": "string", - "description": "The ID of the object. When resharing an activity, this is the ID of the activity that is being reshared." - }, - "objectType": { - "type": "string", - "description": "The type of the object. Possible values include, but are not limited to, the following values: \n- \"note\" - Textual content. \n- \"activity\" - A Google+ activity." - }, - "originalContent": { - "type": "string", - "description": "The content (text) as provided by the author, which is stored without any HTML formatting. When creating or updating an activity, this value must be supplied as plain text in the request." - }, - "plusoners": { - "type": "object", - "description": "People who +1'd this activity.", - "properties": { - "selfLink": { - "type": "string", - "description": "The URL for the collection of people who +1'd this activity." - }, - "totalItems": { - "type": "integer", - "description": "Total number of people who +1'd this activity.", - "format": "uint32" - } - } - }, - "replies": { - "type": "object", - "description": "Comments in reply to this activity.", - "properties": { - "selfLink": { - "type": "string", - "description": "The URL for the collection of comments in reply to this activity." - }, - "totalItems": { - "type": "integer", - "description": "Total number of comments on this activity.", - "format": "uint32" - } - } - }, - "resharers": { - "type": "object", - "description": "People who reshared this activity.", - "properties": { - "selfLink": { - "type": "string", - "description": "The URL for the collection of resharers." - }, - "totalItems": { - "type": "integer", - "description": "Total number of people who reshared this activity.", - "format": "uint32" - } - } - }, - "statusForViewer": { - "type": "object", - "description": "Status of the activity as seen by the viewer.", - "properties": { - "canComment": { - "type": "boolean", - "description": "Whether the viewer can comment on the activity." - }, - "canPlusone": { - "type": "boolean", - "description": "Whether the viewer can +1 the activity." - }, - "canUpdate": { - "type": "boolean", - "description": "Whether the viewer can edit or delete the activity." - }, - "isPlusOned": { - "type": "boolean", - "description": "Whether the viewer has +1'd the activity." - }, - "resharingDisabled": { - "type": "boolean", - "description": "Whether reshares are disabled for the activity." - } - } - }, - "url": { - "type": "string", - "description": "The URL that points to the linked resource." } - } - }, - "placeId": { - "type": "string", - "description": "ID of the place where this activity occurred." - }, - "placeName": { - "type": "string", - "description": "Name of the place where this activity occurred." - }, - "provider": { - "type": "object", - "description": "The service provider that initially published this activity.", - "properties": { - "title": { - "type": "string", - "description": "Name of the service provider." - } - } - }, - "published": { - "type": "string", - "description": "The time at which this activity was initially published. Formatted as an RFC 3339 timestamp.", - "format": "date-time" - }, - "radius": { - "type": "string", - "description": "Radius, in meters, of the region where this activity occurred, centered at the latitude and longitude identified in geocode." - }, - "title": { - "type": "string", - "description": "Title of this activity." - }, - "updated": { - "type": "string", - "description": "The time at which this activity was last updated. Formatted as an RFC 3339 timestamp.", - "format": "date-time" - }, - "url": { - "type": "string", - "description": "The link to this activity." - }, - "verb": { - "type": "string", - "description": "This activity's verb, which indicates the action that was performed. Possible values include, but are not limited to, the following values: \n- \"post\" - Publish content to the stream. \n- \"share\" - Reshare an activity." - } - } - }, - "ActivityFeed": { - "id": "ActivityFeed", - "type": "object", - "properties": { - "etag": { - "type": "string", - "description": "ETag of this response for caching purposes." - }, - "id": { - "type": "string", - "description": "The ID of this collection of activities. Deprecated." - }, - "items": { - "type": "array", - "description": "The activities in this page of results.", - "items": { - "$ref": "Activity" - } - }, - "kind": { - "type": "string", - "description": "Identifies this resource as a collection of activities. Value: \"plus#activityFeed\".", - "default": "plus#activityFeed" - }, - "nextLink": { - "type": "string", - "description": "Link to the next page of activities." - }, - "nextPageToken": { - "type": "string", - "description": "The continuation token, which is used to page through large result sets. Provide this value in a subsequent request to return the next page of results." - }, - "selfLink": { - "type": "string", - "description": "Link to this activity resource." - }, - "title": { - "type": "string", - "description": "The title of this collection of activities, which is a truncated portion of the content." - }, - "updated": { - "type": "string", - "description": "The time at which this collection of activities was last updated. Formatted as an RFC 3339 timestamp.", - "format": "date-time" - } - } - }, - "Audience": { - "id": "Audience", - "type": "object", - "properties": { - "etag": { - "type": "string", - "description": "ETag of this response for caching purposes." - }, - "item": { - "$ref": "PlusDomainsAclentryResource", - "description": "The access control list entry." - }, - "kind": { - "type": "string", - "description": "Identifies this resource as an audience. Value: \"plus#audience\".", - "default": "plus#audience" - }, - "memberCount": { - "type": "integer", - "description": "The number of people in this circle. This only applies if entity_type is CIRCLE.", - "format": "uint32" - }, - "visibility": { - "type": "string", - "description": "The circle members' visibility as chosen by the owner of the circle. This only applies for items with \"item.type\" equals \"circle\". Possible values are: \n- \"public\" - Members are visible to the public. \n- \"limited\" - Members are visible to a limited audience. \n- \"private\" - Members are visible to the owner only." - } - } - }, - "AudiencesFeed": { - "id": "AudiencesFeed", - "type": "object", - "properties": { - "etag": { - "type": "string", - "description": "ETag of this response for caching purposes." - }, - "items": { - "type": "array", - "description": "The audiences in this result.", - "items": { - "$ref": "Audience" - } - }, - "kind": { - "type": "string", - "description": "Identifies this resource as a collection of audiences. Value: \"plus#audienceFeed\".", - "default": "plus#audiencesFeed" - }, - "nextPageToken": { - "type": "string", - "description": "The continuation token, which is used to page through large result sets. Provide this value in a subsequent request to return the next page of results." - }, - "totalItems": { - "type": "integer", - "description": "The total number of ACL entries. The number of entries in this response may be smaller due to paging.", - "format": "int32" - } - } - }, - "Circle": { - "id": "Circle", - "type": "object", - "properties": { - "description": { - "type": "string", - "description": "The description of this circle." - }, - "displayName": { - "type": "string", - "description": "The circle name." - }, - "etag": { - "type": "string", - "description": "ETag of this response for caching purposes." - }, - "id": { - "type": "string", - "description": "The ID of the circle." - }, - "kind": { - "type": "string", - "description": "Identifies this resource as a circle. Value: \"plus#circle\".", - "default": "plus#circle" }, "people": { - "type": "object", - "description": "The people in this circle.", - "properties": { - "totalItems": { - "type": "integer", - "description": "The total number of people in this circle.", - "format": "uint32" + "methods": { + "get": { + "description": "Get a person's profile.", + "httpMethod": "GET", + "id": "plusDomains.people.get", + "parameterOrder": [ + "userId" + ], + "parameters": { + "userId": { + "description": "The ID of the person to get the profile for. The special value \"me\" can be used to indicate the authenticated user.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "people/{userId}", + "response": { + "$ref": "Person" + }, + "scopes": [ + "https://www.googleapis.com/auth/plus.login", + "https://www.googleapis.com/auth/plus.me", + "https://www.googleapis.com/auth/plus.profiles.read", + "https://www.googleapis.com/auth/userinfo.email", + "https://www.googleapis.com/auth/userinfo.profile" + ] + }, + "list": { + "description": "List all of the people in the specified collection.", + "httpMethod": "GET", + "id": "plusDomains.people.list", + "parameterOrder": [ + "userId", + "collection" + ], + "parameters": { + "collection": { + "description": "The collection of people to list.", + "enum": [ + "circled" + ], + "enumDescriptions": [ + "The list of people who this user has added to one or more circles." + ], + "location": "path", + "required": true, + "type": "string" + }, + "maxResults": { + "default": "100", + "description": "The maximum number of people to include in the response, which is used for paging. For any response, the actual number returned might be less than the specified maxResults.", + "format": "uint32", + "location": "query", + "maximum": "100", + "minimum": "1", + "type": "integer" + }, + "orderBy": { + "description": "The order to return people in.", + "enum": [ + "alphabetical", + "best" + ], + "enumDescriptions": [ + "Order the people by their display name.", + "Order people based on the relevence to the viewer." + ], + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "The continuation token, which is used to page through large result sets. To get the next page of results, set this parameter to the value of \"nextPageToken\" from the previous response.", + "location": "query", + "type": "string" + }, + "userId": { + "description": "Get the collection of people for the person identified. Use \"me\" to indicate the authenticated user.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "people/{userId}/people/{collection}", + "response": { + "$ref": "PeopleFeed" + }, + "scopes": [ + "https://www.googleapis.com/auth/plus.circles.read", + "https://www.googleapis.com/auth/plus.login", + "https://www.googleapis.com/auth/plus.me" + ] + }, + "listByActivity": { + "description": "List all of the people in the specified collection for a particular activity.", + "httpMethod": "GET", + "id": "plusDomains.people.listByActivity", + "parameterOrder": [ + "activityId", + "collection" + ], + "parameters": { + "activityId": { + "description": "The ID of the activity to get the list of people for.", + "location": "path", + "required": true, + "type": "string" + }, + "collection": { + "description": "The collection of people to list.", + "enum": [ + "plusoners", + "resharers", + "sharedto" + ], + "enumDescriptions": [ + "List all people who have +1'd this activity.", + "List all people who have reshared this activity.", + "List all people who this activity was shared to." + ], + "location": "path", + "required": true, + "type": "string" + }, + "maxResults": { + "default": "20", + "description": "The maximum number of people to include in the response, which is used for paging. For any response, the actual number returned might be less than the specified maxResults.", + "format": "uint32", + "location": "query", + "maximum": "100", + "minimum": "1", + "type": "integer" + }, + "pageToken": { + "description": "The continuation token, which is used to page through large result sets. To get the next page of results, set this parameter to the value of \"nextPageToken\" from the previous response.", + "location": "query", + "type": "string" + } + }, + "path": "activities/{activityId}/people/{collection}", + "response": { + "$ref": "PeopleFeed" + }, + "scopes": [ + "https://www.googleapis.com/auth/plus.login", + "https://www.googleapis.com/auth/plus.stream.read" + ] + }, + "listByCircle": { + "description": "List all of the people who are members of a circle.", + "httpMethod": "GET", + "id": "plusDomains.people.listByCircle", + "parameterOrder": [ + "circleId" + ], + "parameters": { + "circleId": { + "description": "The ID of the circle to get the members of.", + "location": "path", + "required": true, + "type": "string" + }, + "maxResults": { + "default": "20", + "description": "The maximum number of people to include in the response, which is used for paging. For any response, the actual number returned might be less than the specified maxResults.", + "format": "uint32", + "location": "query", + "maximum": "100", + "minimum": "1", + "type": "integer" + }, + "pageToken": { + "description": "The continuation token, which is used to page through large result sets. To get the next page of results, set this parameter to the value of \"nextPageToken\" from the previous response.", + "location": "query", + "type": "string" + } + }, + "path": "circles/{circleId}/people", + "response": { + "$ref": "PeopleFeed" + }, + "scopes": [ + "https://www.googleapis.com/auth/plus.circles.read", + "https://www.googleapis.com/auth/plus.login" + ] + } } - } - }, - "selfLink": { - "type": "string", - "description": "Link to this circle resource" } - } }, - "CircleFeed": { - "id": "CircleFeed", - "type": "object", - "properties": { - "etag": { - "type": "string", - "description": "ETag of this response for caching purposes." - }, - "items": { - "type": "array", - "description": "The circles in this page of results.", - "items": { - "$ref": "Circle" - } - }, - "kind": { - "type": "string", - "description": "Identifies this resource as a collection of circles. Value: \"plus#circleFeed\".", - "default": "plus#circleFeed" - }, - "nextLink": { - "type": "string", - "description": "Link to the next page of circles." - }, - "nextPageToken": { - "type": "string", - "description": "The continuation token, which is used to page through large result sets. Provide this value in a subsequent request to return the next page of results." - }, - "selfLink": { - "type": "string", - "description": "Link to this page of circles." - }, - "title": { - "type": "string", - "description": "The title of this list of resources." - }, - "totalItems": { - "type": "integer", - "description": "The total number of circles. The number of circles in this response may be smaller due to paging.", - "format": "int32" - } - } - }, - "Comment": { - "id": "Comment", - "type": "object", - "properties": { - "actor": { - "type": "object", - "description": "The person who posted this comment.", - "properties": { - "clientSpecificActorInfo": { - "type": "object", - "description": "Actor info specific to particular clients.", - "properties": { - "youtubeActorInfo": { - "type": "object", - "description": "Actor info specific to YouTube clients.", - "properties": { - "channelId": { - "type": "string", - "description": "ID of the YouTube channel owned by the Actor." - } - } - } - } - }, - "displayName": { - "type": "string", - "description": "The name of this actor, suitable for display." - }, - "id": { - "type": "string", - "description": "The ID of the actor." - }, - "image": { - "type": "object", - "description": "The image representation of this actor.", - "properties": { - "url": { - "type": "string", - "description": "The URL of the actor's profile photo. To resize the image and crop it to a square, append the query string ?sz=x, where x is the dimension in pixels of each side." - } - } - }, - "url": { - "type": "string", - "description": "A link to the Person resource for this actor." - }, - "verification": { - "type": "object", - "description": "Verification status of actor.", - "properties": { - "adHocVerified": { - "type": "string", - "description": "Verification for one-time or manual processes." - } - } - } - } - }, - "etag": { - "type": "string", - "description": "ETag of this response for caching purposes." - }, - "id": { - "type": "string", - "description": "The ID of this comment." - }, - "inReplyTo": { - "type": "array", - "description": "The activity this comment replied to.", - "items": { - "type": "object", + "revision": "20180127", + "rootUrl": "https://www.googleapis.com/", + "schemas": { + "Acl": { + "id": "Acl", "properties": { - "id": { - "type": "string", - "description": "The ID of the activity." - }, - "url": { - "type": "string", - "description": "The URL of the activity." - } - } - } - }, - "kind": { - "type": "string", - "description": "Identifies this resource as a comment. Value: \"plus#comment\".", - "default": "plus#comment" - }, - "object": { - "type": "object", - "description": "The object of this comment.", - "properties": { - "content": { - "type": "string", - "description": "The HTML-formatted content, suitable for display." - }, - "objectType": { - "type": "string", - "description": "The object type of this comment. Possible values are: \n- \"comment\" - A comment in reply to an activity.", - "default": "comment" - }, - "originalContent": { - "type": "string", - "description": "The content (text) as provided by the author, stored without any HTML formatting. When creating or updating a comment, this value must be supplied as plain text in the request." - } - } - }, - "plusoners": { - "type": "object", - "description": "People who +1'd this comment.", - "properties": { - "totalItems": { - "type": "integer", - "description": "Total number of people who +1'd this comment.", - "format": "uint32" - } - } - }, - "published": { - "type": "string", - "description": "The time at which this comment was initially published. Formatted as an RFC 3339 timestamp.", - "format": "date-time" - }, - "selfLink": { - "type": "string", - "description": "Link to this comment resource." - }, - "updated": { - "type": "string", - "description": "The time at which this comment was last updated. Formatted as an RFC 3339 timestamp.", - "format": "date-time" - }, - "verb": { - "type": "string", - "description": "This comment's verb, indicating what action was performed. Possible values are: \n- \"post\" - Publish content to the stream.", - "default": "post" - } - } - }, - "CommentFeed": { - "id": "CommentFeed", - "type": "object", - "properties": { - "etag": { - "type": "string", - "description": "ETag of this response for caching purposes." - }, - "id": { - "type": "string", - "description": "The ID of this collection of comments." - }, - "items": { - "type": "array", - "description": "The comments in this page of results.", - "items": { - "$ref": "Comment" - } - }, - "kind": { - "type": "string", - "description": "Identifies this resource as a collection of comments. Value: \"plus#commentFeed\".", - "default": "plus#commentFeed" - }, - "nextLink": { - "type": "string", - "description": "Link to the next page of activities." - }, - "nextPageToken": { - "type": "string", - "description": "The continuation token, which is used to page through large result sets. Provide this value in a subsequent request to return the next page of results." - }, - "title": { - "type": "string", - "description": "The title of this collection of comments." - }, - "updated": { - "type": "string", - "description": "The time at which this collection of comments was last updated. Formatted as an RFC 3339 timestamp.", - "format": "date-time" - } - } - }, - "Media": { - "id": "Media", - "type": "object", - "properties": { - "author": { - "type": "object", - "description": "The person who uploaded this media.", - "properties": { - "displayName": { - "type": "string", - "description": "The author's name." - }, - "id": { - "type": "string", - "description": "ID of the author." - }, - "image": { - "type": "object", - "description": "The author's Google profile image.", - "properties": { - "url": { - "type": "string", - "description": "The URL of the author's profile photo. To resize the image and crop it to a square, append the query string ?sz=x, where x is the dimension in pixels of each side." - } - } - }, - "url": { - "type": "string", - "description": "A link to the author's Google profile." - } - } - }, - "displayName": { - "type": "string", - "description": "The display name for this media." - }, - "etag": { - "type": "string", - "description": "ETag of this response for caching purposes." - }, - "exif": { - "type": "object", - "description": "Exif information of the media item.", - "properties": { - "time": { - "type": "string", - "description": "The time the media was captured. Formatted as an RFC 3339 timestamp.", - "format": "date-time" - } - } - }, - "height": { - "type": "integer", - "description": "The height in pixels of the original image.", - "format": "uint32" - }, - "id": { - "type": "string", - "description": "ID of this media, which is generated by the API." - }, - "kind": { - "type": "string", - "description": "The type of resource.", - "default": "plus#media" - }, - "mediaCreatedTime": { - "type": "string", - "description": "The time at which this media was originally created in UTC. Formatted as an RFC 3339 timestamp that matches this example: 2010-11-25T14:30:27.655Z", - "format": "date-time" - }, - "mediaUrl": { - "type": "string", - "description": "The URL of this photo or video's still image." - }, - "published": { - "type": "string", - "description": "The time at which this media was uploaded. Formatted as an RFC 3339 timestamp.", - "format": "date-time" - }, - "sizeBytes": { - "type": "string", - "description": "The size in bytes of this video.", - "format": "int64" - }, - "streams": { - "type": "array", - "description": "The list of video streams for this video. There might be several different streams available for a single video, either Flash or MPEG, of various sizes", - "items": { - "$ref": "Videostream" - } - }, - "summary": { - "type": "string", - "description": "A description, or caption, for this media." - }, - "updated": { - "type": "string", - "description": "The time at which this media was last updated. This includes changes to media metadata. Formatted as an RFC 3339 timestamp.", - "format": "date-time" - }, - "url": { - "type": "string", - "description": "The URL for the page that hosts this media." - }, - "videoDuration": { - "type": "string", - "description": "The duration in milliseconds of this video.", - "format": "int64" - }, - "videoStatus": { - "type": "string", - "description": "The encoding status of this video. Possible values are: \n- \"UPLOADING\" - Not all the video bytes have been received. \n- \"PENDING\" - Video not yet processed. \n- \"FAILED\" - Video processing failed. \n- \"READY\" - A single video stream is playable. \n- \"FINAL\" - All video streams are playable." - }, - "width": { - "type": "integer", - "description": "The width in pixels of the original image.", - "format": "uint32" - } - } - }, - "PeopleFeed": { - "id": "PeopleFeed", - "type": "object", - "properties": { - "etag": { - "type": "string", - "description": "ETag of this response for caching purposes." - }, - "items": { - "type": "array", - "description": "The people in this page of results. Each item includes the id, displayName, image, and url for the person. To retrieve additional profile data, see the people.get method.", - "items": { - "$ref": "Person" - } - }, - "kind": { - "type": "string", - "description": "Identifies this resource as a collection of people. Value: \"plus#peopleFeed\".", - "default": "plus#peopleFeed" - }, - "nextPageToken": { - "type": "string", - "description": "The continuation token, which is used to page through large result sets. Provide this value in a subsequent request to return the next page of results." - }, - "selfLink": { - "type": "string", - "description": "Link to this resource." - }, - "title": { - "type": "string", - "description": "The title of this collection of people." - }, - "totalItems": { - "type": "integer", - "description": "The total number of people available in this list. The number of people in a response might be smaller due to paging. This might not be set for all collections.", - "format": "int32" - } - } - }, - "Person": { - "id": "Person", - "type": "object", - "properties": { - "aboutMe": { - "type": "string", - "description": "A short biography for this person." - }, - "birthday": { - "type": "string", - "description": "The person's date of birth, represented as YYYY-MM-DD." - }, - "braggingRights": { - "type": "string", - "description": "The \"bragging rights\" line of this person." - }, - "circledByCount": { - "type": "integer", - "description": "For followers who are visible, the number of people who have added this person or page to a circle.", - "format": "int32" - }, - "cover": { - "type": "object", - "description": "The cover photo content.", - "properties": { - "coverInfo": { - "type": "object", - "description": "Extra information about the cover photo.", - "properties": { - "leftImageOffset": { - "type": "integer", - "description": "The difference between the left position of the cover image and the actual displayed cover image. Only valid for banner layout.", - "format": "int32" + "description": { + "description": "Description of the access granted, suitable for display.", + "type": "string" }, - "topImageOffset": { - "type": "integer", - "description": "The difference between the top position of the cover image and the actual displayed cover image. Only valid for banner layout.", - "format": "int32" + "domainRestricted": { + "description": "Whether access is restricted to the domain.", + "type": "boolean" + }, + "items": { + "description": "The list of access entries.", + "items": { + "$ref": "PlusDomainsAclentryResource" + }, + "type": "array" + }, + "kind": { + "default": "plus#acl", + "description": "Identifies this resource as a collection of access controls. Value: \"plus#acl\".", + "type": "string" } - } }, - "coverPhoto": { - "type": "object", - "description": "The person's primary cover image.", - "properties": { + "type": "object" + }, + "Activity": { + "id": "Activity", + "properties": { + "access": { + "$ref": "Acl", + "description": "Identifies who has access to see this activity." + }, + "actor": { + "description": "The person who performed this activity.", + "properties": { + "clientSpecificActorInfo": { + "description": "Actor info specific to particular clients.", + "properties": { + "youtubeActorInfo": { + "description": "Actor info specific to YouTube clients.", + "properties": { + "channelId": { + "description": "ID of the YouTube channel owned by the Actor.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "displayName": { + "description": "The name of the actor, suitable for display.", + "type": "string" + }, + "id": { + "description": "The ID of the actor's Person resource.", + "type": "string" + }, + "image": { + "description": "The image representation of the actor.", + "properties": { + "url": { + "description": "The URL of the actor's profile photo. To resize the image and crop it to a square, append the query string ?sz=x, where x is the dimension in pixels of each side.", + "type": "string" + } + }, + "type": "object" + }, + "name": { + "description": "An object representation of the individual components of name.", + "properties": { + "familyName": { + "description": "The family name (\"last name\") of the actor.", + "type": "string" + }, + "givenName": { + "description": "The given name (\"first name\") of the actor.", + "type": "string" + } + }, + "type": "object" + }, + "url": { + "description": "The link to the actor's Google profile.", + "type": "string" + }, + "verification": { + "description": "Verification status of actor.", + "properties": { + "adHocVerified": { + "description": "Verification for one-time or manual processes.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "address": { + "description": "Street address where this activity occurred.", + "type": "string" + }, + "annotation": { + "description": "Additional content added by the person who shared this activity, applicable only when resharing an activity.", + "type": "string" + }, + "crosspostSource": { + "description": "If this activity is a crosspost from another system, this property specifies the ID of the original activity.", + "type": "string" + }, + "etag": { + "description": "ETag of this response for caching purposes.", + "type": "string" + }, + "geocode": { + "description": "Latitude and longitude where this activity occurred. Format is latitude followed by longitude, space separated.", + "type": "string" + }, + "id": { + "description": "The ID of this activity.", + "type": "string" + }, + "kind": { + "default": "plus#activity", + "description": "Identifies this resource as an activity. Value: \"plus#activity\".", + "type": "string" + }, + "location": { + "$ref": "Place", + "description": "The location where this activity occurred." + }, + "object": { + "description": "The object of this activity.", + "properties": { + "actor": { + "description": "If this activity's object is itself another activity, such as when a person reshares an activity, this property specifies the original activity's actor.", + "properties": { + "clientSpecificActorInfo": { + "description": "Actor info specific to particular clients.", + "properties": { + "youtubeActorInfo": { + "description": "Actor info specific to YouTube clients.", + "properties": { + "channelId": { + "description": "ID of the YouTube channel owned by the Actor.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "displayName": { + "description": "The original actor's name, which is suitable for display.", + "type": "string" + }, + "id": { + "description": "ID of the original actor.", + "type": "string" + }, + "image": { + "description": "The image representation of the original actor.", + "properties": { + "url": { + "description": "A URL that points to a thumbnail photo of the original actor.", + "type": "string" + } + }, + "type": "object" + }, + "url": { + "description": "A link to the original actor's Google profile.", + "type": "string" + }, + "verification": { + "description": "Verification status of actor.", + "properties": { + "adHocVerified": { + "description": "Verification for one-time or manual processes.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "attachments": { + "description": "The media objects attached to this activity.", + "items": { + "properties": { + "content": { + "description": "If the attachment is an article, this property contains a snippet of text from the article. It can also include descriptions for other types.", + "type": "string" + }, + "displayName": { + "description": "The title of the attachment, such as a photo caption or an article title.", + "type": "string" + }, + "embed": { + "description": "If the attachment is a video, the embeddable link.", + "properties": { + "type": { + "description": "Media type of the link.", + "type": "string" + }, + "url": { + "description": "URL of the link.", + "type": "string" + } + }, + "type": "object" + }, + "fullImage": { + "description": "The full image URL for photo attachments.", + "properties": { + "height": { + "description": "The height, in pixels, of the linked resource.", + "format": "uint32", + "type": "integer" + }, + "type": { + "description": "Media type of the link.", + "type": "string" + }, + "url": { + "description": "URL of the image.", + "type": "string" + }, + "width": { + "description": "The width, in pixels, of the linked resource.", + "format": "uint32", + "type": "integer" + } + }, + "type": "object" + }, + "id": { + "description": "The ID of the attachment.", + "type": "string" + }, + "image": { + "description": "The preview image for photos or videos.", + "properties": { + "height": { + "description": "The height, in pixels, of the linked resource.", + "format": "uint32", + "type": "integer" + }, + "type": { + "description": "Media type of the link.", + "type": "string" + }, + "url": { + "description": "Image URL.", + "type": "string" + }, + "width": { + "description": "The width, in pixels, of the linked resource.", + "format": "uint32", + "type": "integer" + } + }, + "type": "object" + }, + "objectType": { + "description": "The type of media object. Possible values include, but are not limited to, the following values: \n- \"photo\" - A photo. \n- \"album\" - A photo album. \n- \"video\" - A video. \n- \"article\" - An article, specified by a link.", + "type": "string" + }, + "previewThumbnails": { + "description": "When previewing, these are the optional thumbnails for the post. When posting an article, choose one by setting the attachment.image.url property. If you don't choose one, one will be chosen for you.", + "items": { + "properties": { + "url": { + "description": "URL of the thumbnail image.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "thumbnails": { + "description": "If the attachment is an album, this property is a list of potential additional thumbnails from the album.", + "items": { + "properties": { + "description": { + "description": "Potential name of the thumbnail.", + "type": "string" + }, + "image": { + "description": "Image resource.", + "properties": { + "height": { + "description": "The height, in pixels, of the linked resource.", + "format": "uint32", + "type": "integer" + }, + "type": { + "description": "Media type of the link.", + "type": "string" + }, + "url": { + "description": "Image url.", + "type": "string" + }, + "width": { + "description": "The width, in pixels, of the linked resource.", + "format": "uint32", + "type": "integer" + } + }, + "type": "object" + }, + "url": { + "description": "URL of the webpage containing the image.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "url": { + "description": "The link to the attachment, which should be of type text/html.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "content": { + "description": "The HTML-formatted content, which is suitable for display.", + "type": "string" + }, + "id": { + "description": "The ID of the object. When resharing an activity, this is the ID of the activity that is being reshared.", + "type": "string" + }, + "objectType": { + "description": "The type of the object. Possible values include, but are not limited to, the following values: \n- \"note\" - Textual content. \n- \"activity\" - A Google+ activity.", + "type": "string" + }, + "originalContent": { + "description": "The content (text) as provided by the author, which is stored without any HTML formatting. When creating or updating an activity, this value must be supplied as plain text in the request.", + "type": "string" + }, + "plusoners": { + "description": "People who +1'd this activity.", + "properties": { + "selfLink": { + "description": "The URL for the collection of people who +1'd this activity.", + "type": "string" + }, + "totalItems": { + "description": "Total number of people who +1'd this activity.", + "format": "uint32", + "type": "integer" + } + }, + "type": "object" + }, + "replies": { + "description": "Comments in reply to this activity.", + "properties": { + "selfLink": { + "description": "The URL for the collection of comments in reply to this activity.", + "type": "string" + }, + "totalItems": { + "description": "Total number of comments on this activity.", + "format": "uint32", + "type": "integer" + } + }, + "type": "object" + }, + "resharers": { + "description": "People who reshared this activity.", + "properties": { + "selfLink": { + "description": "The URL for the collection of resharers.", + "type": "string" + }, + "totalItems": { + "description": "Total number of people who reshared this activity.", + "format": "uint32", + "type": "integer" + } + }, + "type": "object" + }, + "statusForViewer": { + "description": "Status of the activity as seen by the viewer.", + "properties": { + "canComment": { + "description": "Whether the viewer can comment on the activity.", + "type": "boolean" + }, + "canPlusone": { + "description": "Whether the viewer can +1 the activity.", + "type": "boolean" + }, + "canUpdate": { + "description": "Whether the viewer can edit or delete the activity.", + "type": "boolean" + }, + "isPlusOned": { + "description": "Whether the viewer has +1'd the activity.", + "type": "boolean" + }, + "resharingDisabled": { + "description": "Whether reshares are disabled for the activity.", + "type": "boolean" + } + }, + "type": "object" + }, + "url": { + "description": "The URL that points to the linked resource.", + "type": "string" + } + }, + "type": "object" + }, + "placeId": { + "description": "ID of the place where this activity occurred.", + "type": "string" + }, + "placeName": { + "description": "Name of the place where this activity occurred.", + "type": "string" + }, + "provider": { + "description": "The service provider that initially published this activity.", + "properties": { + "title": { + "description": "Name of the service provider.", + "type": "string" + } + }, + "type": "object" + }, + "published": { + "description": "The time at which this activity was initially published. Formatted as an RFC 3339 timestamp.", + "format": "date-time", + "type": "string" + }, + "radius": { + "description": "Radius, in meters, of the region where this activity occurred, centered at the latitude and longitude identified in geocode.", + "type": "string" + }, + "title": { + "description": "Title of this activity.", + "type": "string" + }, + "updated": { + "description": "The time at which this activity was last updated. Formatted as an RFC 3339 timestamp.", + "format": "date-time", + "type": "string" + }, + "url": { + "description": "The link to this activity.", + "type": "string" + }, + "verb": { + "description": "This activity's verb, which indicates the action that was performed. Possible values include, but are not limited to, the following values: \n- \"post\" - Publish content to the stream. \n- \"share\" - Reshare an activity.", + "type": "string" + } + }, + "type": "object" + }, + "ActivityFeed": { + "id": "ActivityFeed", + "properties": { + "etag": { + "description": "ETag of this response for caching purposes.", + "type": "string" + }, + "id": { + "description": "The ID of this collection of activities. Deprecated.", + "type": "string" + }, + "items": { + "description": "The activities in this page of results.", + "items": { + "$ref": "Activity" + }, + "type": "array" + }, + "kind": { + "default": "plus#activityFeed", + "description": "Identifies this resource as a collection of activities. Value: \"plus#activityFeed\".", + "type": "string" + }, + "nextLink": { + "description": "Link to the next page of activities.", + "type": "string" + }, + "nextPageToken": { + "description": "The continuation token, which is used to page through large result sets. Provide this value in a subsequent request to return the next page of results.", + "type": "string" + }, + "selfLink": { + "description": "Link to this activity resource.", + "type": "string" + }, + "title": { + "description": "The title of this collection of activities, which is a truncated portion of the content.", + "type": "string" + }, + "updated": { + "description": "The time at which this collection of activities was last updated. Formatted as an RFC 3339 timestamp.", + "format": "date-time", + "type": "string" + } + }, + "type": "object" + }, + "Audience": { + "id": "Audience", + "properties": { + "etag": { + "description": "ETag of this response for caching purposes.", + "type": "string" + }, + "item": { + "$ref": "PlusDomainsAclentryResource", + "description": "The access control list entry." + }, + "kind": { + "default": "plus#audience", + "description": "Identifies this resource as an audience. Value: \"plus#audience\".", + "type": "string" + }, + "memberCount": { + "description": "The number of people in this circle. This only applies if entity_type is CIRCLE.", + "format": "uint32", + "type": "integer" + }, + "visibility": { + "description": "The circle members' visibility as chosen by the owner of the circle. This only applies for items with \"item.type\" equals \"circle\". Possible values are: \n- \"public\" - Members are visible to the public. \n- \"limited\" - Members are visible to a limited audience. \n- \"private\" - Members are visible to the owner only.", + "type": "string" + } + }, + "type": "object" + }, + "AudiencesFeed": { + "id": "AudiencesFeed", + "properties": { + "etag": { + "description": "ETag of this response for caching purposes.", + "type": "string" + }, + "items": { + "description": "The audiences in this result.", + "items": { + "$ref": "Audience" + }, + "type": "array" + }, + "kind": { + "default": "plus#audiencesFeed", + "description": "Identifies this resource as a collection of audiences. Value: \"plus#audienceFeed\".", + "type": "string" + }, + "nextPageToken": { + "description": "The continuation token, which is used to page through large result sets. Provide this value in a subsequent request to return the next page of results.", + "type": "string" + }, + "totalItems": { + "description": "The total number of ACL entries. The number of entries in this response may be smaller due to paging.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "Circle": { + "id": "Circle", + "properties": { + "description": { + "description": "The description of this circle.", + "type": "string" + }, + "displayName": { + "description": "The circle name.", + "type": "string" + }, + "etag": { + "description": "ETag of this response for caching purposes.", + "type": "string" + }, + "id": { + "description": "The ID of the circle.", + "type": "string" + }, + "kind": { + "default": "plus#circle", + "description": "Identifies this resource as a circle. Value: \"plus#circle\".", + "type": "string" + }, + "people": { + "description": "The people in this circle.", + "properties": { + "totalItems": { + "description": "The total number of people in this circle.", + "format": "uint32", + "type": "integer" + } + }, + "type": "object" + }, + "selfLink": { + "description": "Link to this circle resource", + "type": "string" + } + }, + "type": "object" + }, + "CircleFeed": { + "id": "CircleFeed", + "properties": { + "etag": { + "description": "ETag of this response for caching purposes.", + "type": "string" + }, + "items": { + "description": "The circles in this page of results.", + "items": { + "$ref": "Circle" + }, + "type": "array" + }, + "kind": { + "default": "plus#circleFeed", + "description": "Identifies this resource as a collection of circles. Value: \"plus#circleFeed\".", + "type": "string" + }, + "nextLink": { + "description": "Link to the next page of circles.", + "type": "string" + }, + "nextPageToken": { + "description": "The continuation token, which is used to page through large result sets. Provide this value in a subsequent request to return the next page of results.", + "type": "string" + }, + "selfLink": { + "description": "Link to this page of circles.", + "type": "string" + }, + "title": { + "description": "The title of this list of resources.", + "type": "string" + }, + "totalItems": { + "description": "The total number of circles. The number of circles in this response may be smaller due to paging.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "Comment": { + "id": "Comment", + "properties": { + "actor": { + "description": "The person who posted this comment.", + "properties": { + "clientSpecificActorInfo": { + "description": "Actor info specific to particular clients.", + "properties": { + "youtubeActorInfo": { + "description": "Actor info specific to YouTube clients.", + "properties": { + "channelId": { + "description": "ID of the YouTube channel owned by the Actor.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "displayName": { + "description": "The name of this actor, suitable for display.", + "type": "string" + }, + "id": { + "description": "The ID of the actor.", + "type": "string" + }, + "image": { + "description": "The image representation of this actor.", + "properties": { + "url": { + "description": "The URL of the actor's profile photo. To resize the image and crop it to a square, append the query string ?sz=x, where x is the dimension in pixels of each side.", + "type": "string" + } + }, + "type": "object" + }, + "url": { + "description": "A link to the Person resource for this actor.", + "type": "string" + }, + "verification": { + "description": "Verification status of actor.", + "properties": { + "adHocVerified": { + "description": "Verification for one-time or manual processes.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "etag": { + "description": "ETag of this response for caching purposes.", + "type": "string" + }, + "id": { + "description": "The ID of this comment.", + "type": "string" + }, + "inReplyTo": { + "description": "The activity this comment replied to.", + "items": { + "properties": { + "id": { + "description": "The ID of the activity.", + "type": "string" + }, + "url": { + "description": "The URL of the activity.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "kind": { + "default": "plus#comment", + "description": "Identifies this resource as a comment. Value: \"plus#comment\".", + "type": "string" + }, + "object": { + "description": "The object of this comment.", + "properties": { + "content": { + "description": "The HTML-formatted content, suitable for display.", + "type": "string" + }, + "objectType": { + "default": "comment", + "description": "The object type of this comment. Possible values are: \n- \"comment\" - A comment in reply to an activity.", + "type": "string" + }, + "originalContent": { + "description": "The content (text) as provided by the author, stored without any HTML formatting. When creating or updating a comment, this value must be supplied as plain text in the request.", + "type": "string" + } + }, + "type": "object" + }, + "plusoners": { + "description": "People who +1'd this comment.", + "properties": { + "totalItems": { + "description": "Total number of people who +1'd this comment.", + "format": "uint32", + "type": "integer" + } + }, + "type": "object" + }, + "published": { + "description": "The time at which this comment was initially published. Formatted as an RFC 3339 timestamp.", + "format": "date-time", + "type": "string" + }, + "selfLink": { + "description": "Link to this comment resource.", + "type": "string" + }, + "updated": { + "description": "The time at which this comment was last updated. Formatted as an RFC 3339 timestamp.", + "format": "date-time", + "type": "string" + }, + "verb": { + "default": "post", + "description": "This comment's verb, indicating what action was performed. Possible values are: \n- \"post\" - Publish content to the stream.", + "type": "string" + } + }, + "type": "object" + }, + "CommentFeed": { + "id": "CommentFeed", + "properties": { + "etag": { + "description": "ETag of this response for caching purposes.", + "type": "string" + }, + "id": { + "description": "The ID of this collection of comments.", + "type": "string" + }, + "items": { + "description": "The comments in this page of results.", + "items": { + "$ref": "Comment" + }, + "type": "array" + }, + "kind": { + "default": "plus#commentFeed", + "description": "Identifies this resource as a collection of comments. Value: \"plus#commentFeed\".", + "type": "string" + }, + "nextLink": { + "description": "Link to the next page of activities.", + "type": "string" + }, + "nextPageToken": { + "description": "The continuation token, which is used to page through large result sets. Provide this value in a subsequent request to return the next page of results.", + "type": "string" + }, + "title": { + "description": "The title of this collection of comments.", + "type": "string" + }, + "updated": { + "description": "The time at which this collection of comments was last updated. Formatted as an RFC 3339 timestamp.", + "format": "date-time", + "type": "string" + } + }, + "type": "object" + }, + "Media": { + "id": "Media", + "properties": { + "author": { + "description": "The person who uploaded this media.", + "properties": { + "displayName": { + "description": "The author's name.", + "type": "string" + }, + "id": { + "description": "ID of the author.", + "type": "string" + }, + "image": { + "description": "The author's Google profile image.", + "properties": { + "url": { + "description": "The URL of the author's profile photo. To resize the image and crop it to a square, append the query string ?sz=x, where x is the dimension in pixels of each side.", + "type": "string" + } + }, + "type": "object" + }, + "url": { + "description": "A link to the author's Google profile.", + "type": "string" + } + }, + "type": "object" + }, + "displayName": { + "description": "The display name for this media.", + "type": "string" + }, + "etag": { + "description": "ETag of this response for caching purposes.", + "type": "string" + }, + "exif": { + "description": "Exif information of the media item.", + "properties": { + "time": { + "description": "The time the media was captured. Formatted as an RFC 3339 timestamp.", + "format": "date-time", + "type": "string" + } + }, + "type": "object" + }, "height": { - "type": "integer", - "description": "The height of the image.", - "format": "int32" + "description": "The height in pixels of the original image.", + "format": "uint32", + "type": "integer" + }, + "id": { + "description": "ID of this media, which is generated by the API.", + "type": "string" + }, + "kind": { + "default": "plus#media", + "description": "The type of resource.", + "type": "string" + }, + "mediaCreatedTime": { + "description": "The time at which this media was originally created in UTC. Formatted as an RFC 3339 timestamp that matches this example: 2010-11-25T14:30:27.655Z", + "format": "date-time", + "type": "string" + }, + "mediaUrl": { + "description": "The URL of this photo or video's still image.", + "type": "string" + }, + "published": { + "description": "The time at which this media was uploaded. Formatted as an RFC 3339 timestamp.", + "format": "date-time", + "type": "string" + }, + "sizeBytes": { + "description": "The size in bytes of this video.", + "format": "int64", + "type": "string" + }, + "streams": { + "description": "The list of video streams for this video. There might be several different streams available for a single video, either Flash or MPEG, of various sizes", + "items": { + "$ref": "Videostream" + }, + "type": "array" + }, + "summary": { + "description": "A description, or caption, for this media.", + "type": "string" + }, + "updated": { + "description": "The time at which this media was last updated. This includes changes to media metadata. Formatted as an RFC 3339 timestamp.", + "format": "date-time", + "type": "string" }, "url": { - "type": "string", - "description": "The URL of the image." + "description": "The URL for the page that hosts this media.", + "type": "string" + }, + "videoDuration": { + "description": "The duration in milliseconds of this video.", + "format": "int64", + "type": "string" + }, + "videoStatus": { + "description": "The encoding status of this video. Possible values are: \n- \"UPLOADING\" - Not all the video bytes have been received. \n- \"PENDING\" - Video not yet processed. \n- \"FAILED\" - Video processing failed. \n- \"READY\" - A single video stream is playable. \n- \"FINAL\" - All video streams are playable.", + "type": "string" }, "width": { - "type": "integer", - "description": "The width of the image.", - "format": "int32" + "description": "The width in pixels of the original image.", + "format": "uint32", + "type": "integer" } - } }, - "layout": { - "type": "string", - "description": "The layout of the cover art. Possible values include, but are not limited to, the following values: \n- \"banner\" - One large image banner." - } - } + "type": "object" }, - "currentLocation": { - "type": "string", - "description": "(this field is not currently used)" - }, - "displayName": { - "type": "string", - "description": "The name of this person, which is suitable for display." - }, - "domain": { - "type": "string", - "description": "The hosted domain name for the user's Google Apps account. For instance, example.com. The plus.profile.emails.read or email scope is needed to get this domain name." - }, - "emails": { - "type": "array", - "description": "A list of email addresses that this person has, including their Google account email address, and the public verified email addresses on their Google+ profile. The plus.profile.emails.read scope is needed to retrieve these email addresses, or the email scope can be used to retrieve just the Google account email address.", - "items": { - "type": "object", + "PeopleFeed": { + "id": "PeopleFeed", "properties": { - "type": { - "type": "string", - "description": "The type of address. Possible values include, but are not limited to, the following values: \n- \"account\" - Google account email address. \n- \"home\" - Home email address. \n- \"work\" - Work email address. \n- \"other\" - Other." - }, - "value": { - "type": "string", - "description": "The email address." - } - } - } - }, - "etag": { - "type": "string", - "description": "ETag of this response for caching purposes." - }, - "gender": { - "type": "string", - "description": "The person's gender. Possible values include, but are not limited to, the following values: \n- \"male\" - Male gender. \n- \"female\" - Female gender. \n- \"other\" - Other." - }, - "id": { - "type": "string", - "description": "The ID of this person." - }, - "image": { - "type": "object", - "description": "The representation of the person's profile photo.", - "properties": { - "isDefault": { - "type": "boolean", - "description": "Whether the person's profile photo is the default one" + "etag": { + "description": "ETag of this response for caching purposes.", + "type": "string" + }, + "items": { + "description": "The people in this page of results. Each item includes the id, displayName, image, and url for the person. To retrieve additional profile data, see the people.get method.", + "items": { + "$ref": "Person" + }, + "type": "array" + }, + "kind": { + "default": "plus#peopleFeed", + "description": "Identifies this resource as a collection of people. Value: \"plus#peopleFeed\".", + "type": "string" + }, + "nextPageToken": { + "description": "The continuation token, which is used to page through large result sets. Provide this value in a subsequent request to return the next page of results.", + "type": "string" + }, + "selfLink": { + "description": "Link to this resource.", + "type": "string" + }, + "title": { + "description": "The title of this collection of people.", + "type": "string" + }, + "totalItems": { + "description": "The total number of people available in this list. The number of people in a response might be smaller due to paging. This might not be set for all collections.", + "format": "int32", + "type": "integer" + } }, - "url": { - "type": "string", - "description": "The URL of the person's profile photo. To resize the image and crop it to a square, append the query string ?sz=x, where x is the dimension in pixels of each side." - } - } + "type": "object" }, - "isPlusUser": { - "type": "boolean", - "description": "Whether this user has signed up for Google+." - }, - "kind": { - "type": "string", - "description": "Identifies this resource as a person. Value: \"plus#person\".", - "default": "plus#person" - }, - "name": { - "type": "object", - "description": "An object representation of the individual components of a person's name.", - "properties": { - "familyName": { - "type": "string", - "description": "The family name (last name) of this person." - }, - "formatted": { - "type": "string", - "description": "The full name of this person, including middle names, suffixes, etc." - }, - "givenName": { - "type": "string", - "description": "The given name (first name) of this person." - }, - "honorificPrefix": { - "type": "string", - "description": "The honorific prefixes (such as \"Dr.\" or \"Mrs.\") for this person." - }, - "honorificSuffix": { - "type": "string", - "description": "The honorific suffixes (such as \"Jr.\") for this person." - }, - "middleName": { - "type": "string", - "description": "The middle name of this person." - } - } - }, - "nickname": { - "type": "string", - "description": "The nickname of this person." - }, - "objectType": { - "type": "string", - "description": "Type of person within Google+. Possible values include, but are not limited to, the following values: \n- \"person\" - represents an actual person. \n- \"page\" - represents a page." - }, - "occupation": { - "type": "string", - "description": "The occupation of this person." - }, - "organizations": { - "type": "array", - "description": "A list of current or past organizations with which this person is associated.", - "items": { - "type": "object", + "Person": { + "id": "Person", "properties": { - "department": { - "type": "string", - "description": "The department within the organization. Deprecated." - }, - "description": { - "type": "string", - "description": "A short description of the person's role in this organization. Deprecated." - }, - "endDate": { - "type": "string", - "description": "The date that the person left this organization." - }, - "location": { - "type": "string", - "description": "The location of this organization. Deprecated." - }, - "name": { - "type": "string", - "description": "The name of the organization." - }, - "primary": { - "type": "boolean", - "description": "If \"true\", indicates this organization is the person's primary one, which is typically interpreted as the current one." - }, - "startDate": { - "type": "string", - "description": "The date that the person joined this organization." - }, - "title": { - "type": "string", - "description": "The person's job title or role within the organization." - }, - "type": { - "type": "string", - "description": "The type of organization. Possible values include, but are not limited to, the following values: \n- \"work\" - Work. \n- \"school\" - School." - } - } - } + "aboutMe": { + "description": "A short biography for this person.", + "type": "string" + }, + "birthday": { + "description": "The person's date of birth, represented as YYYY-MM-DD.", + "type": "string" + }, + "braggingRights": { + "description": "The \"bragging rights\" line of this person.", + "type": "string" + }, + "circledByCount": { + "description": "For followers who are visible, the number of people who have added this person or page to a circle.", + "format": "int32", + "type": "integer" + }, + "cover": { + "description": "The cover photo content.", + "properties": { + "coverInfo": { + "description": "Extra information about the cover photo.", + "properties": { + "leftImageOffset": { + "description": "The difference between the left position of the cover image and the actual displayed cover image. Only valid for banner layout.", + "format": "int32", + "type": "integer" + }, + "topImageOffset": { + "description": "The difference between the top position of the cover image and the actual displayed cover image. Only valid for banner layout.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "coverPhoto": { + "description": "The person's primary cover image.", + "properties": { + "height": { + "description": "The height of the image.", + "format": "int32", + "type": "integer" + }, + "url": { + "description": "The URL of the image.", + "type": "string" + }, + "width": { + "description": "The width of the image.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "layout": { + "description": "The layout of the cover art. Possible values include, but are not limited to, the following values: \n- \"banner\" - One large image banner.", + "type": "string" + } + }, + "type": "object" + }, + "currentLocation": { + "description": "(this field is not currently used)", + "type": "string" + }, + "displayName": { + "description": "The name of this person, which is suitable for display.", + "type": "string" + }, + "domain": { + "description": "The hosted domain name for the user's Google Apps account. For instance, example.com. The plus.profile.emails.read or email scope is needed to get this domain name.", + "type": "string" + }, + "emails": { + "description": "A list of email addresses that this person has, including their Google account email address, and the public verified email addresses on their Google+ profile. The plus.profile.emails.read scope is needed to retrieve these email addresses, or the email scope can be used to retrieve just the Google account email address.", + "items": { + "properties": { + "type": { + "description": "The type of address. Possible values include, but are not limited to, the following values: \n- \"account\" - Google account email address. \n- \"home\" - Home email address. \n- \"work\" - Work email address. \n- \"other\" - Other.", + "type": "string" + }, + "value": { + "description": "The email address.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "etag": { + "description": "ETag of this response for caching purposes.", + "type": "string" + }, + "gender": { + "description": "The person's gender. Possible values include, but are not limited to, the following values: \n- \"male\" - Male gender. \n- \"female\" - Female gender. \n- \"other\" - Other.", + "type": "string" + }, + "id": { + "description": "The ID of this person.", + "type": "string" + }, + "image": { + "description": "The representation of the person's profile photo.", + "properties": { + "isDefault": { + "description": "Whether the person's profile photo is the default one", + "type": "boolean" + }, + "url": { + "description": "The URL of the person's profile photo. To resize the image and crop it to a square, append the query string ?sz=x, where x is the dimension in pixels of each side.", + "type": "string" + } + }, + "type": "object" + }, + "isPlusUser": { + "description": "Whether this user has signed up for Google+.", + "type": "boolean" + }, + "kind": { + "default": "plus#person", + "description": "Identifies this resource as a person. Value: \"plus#person\".", + "type": "string" + }, + "name": { + "description": "An object representation of the individual components of a person's name.", + "properties": { + "familyName": { + "description": "The family name (last name) of this person.", + "type": "string" + }, + "formatted": { + "description": "The full name of this person, including middle names, suffixes, etc.", + "type": "string" + }, + "givenName": { + "description": "The given name (first name) of this person.", + "type": "string" + }, + "honorificPrefix": { + "description": "The honorific prefixes (such as \"Dr.\" or \"Mrs.\") for this person.", + "type": "string" + }, + "honorificSuffix": { + "description": "The honorific suffixes (such as \"Jr.\") for this person.", + "type": "string" + }, + "middleName": { + "description": "The middle name of this person.", + "type": "string" + } + }, + "type": "object" + }, + "nickname": { + "description": "The nickname of this person.", + "type": "string" + }, + "objectType": { + "description": "Type of person within Google+. Possible values include, but are not limited to, the following values: \n- \"person\" - represents an actual person. \n- \"page\" - represents a page.", + "type": "string" + }, + "occupation": { + "description": "The occupation of this person.", + "type": "string" + }, + "organizations": { + "description": "A list of current or past organizations with which this person is associated.", + "items": { + "properties": { + "department": { + "description": "The department within the organization. Deprecated.", + "type": "string" + }, + "description": { + "description": "A short description of the person's role in this organization. Deprecated.", + "type": "string" + }, + "endDate": { + "description": "The date that the person left this organization.", + "type": "string" + }, + "location": { + "description": "The location of this organization. Deprecated.", + "type": "string" + }, + "name": { + "description": "The name of the organization.", + "type": "string" + }, + "primary": { + "description": "If \"true\", indicates this organization is the person's primary one, which is typically interpreted as the current one.", + "type": "boolean" + }, + "startDate": { + "description": "The date that the person joined this organization.", + "type": "string" + }, + "title": { + "description": "The person's job title or role within the organization.", + "type": "string" + }, + "type": { + "description": "The type of organization. Possible values include, but are not limited to, the following values: \n- \"work\" - Work. \n- \"school\" - School.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "placesLived": { + "description": "A list of places where this person has lived.", + "items": { + "properties": { + "primary": { + "description": "If \"true\", this place of residence is this person's primary residence.", + "type": "boolean" + }, + "value": { + "description": "A place where this person has lived. For example: \"Seattle, WA\", \"Near Toronto\".", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "plusOneCount": { + "description": "If a Google+ Page, the number of people who have +1'd this page.", + "format": "int32", + "type": "integer" + }, + "relationshipStatus": { + "description": "The person's relationship status. Possible values include, but are not limited to, the following values: \n- \"single\" - Person is single. \n- \"in_a_relationship\" - Person is in a relationship. \n- \"engaged\" - Person is engaged. \n- \"married\" - Person is married. \n- \"its_complicated\" - The relationship is complicated. \n- \"open_relationship\" - Person is in an open relationship. \n- \"widowed\" - Person is widowed. \n- \"in_domestic_partnership\" - Person is in a domestic partnership. \n- \"in_civil_union\" - Person is in a civil union.", + "type": "string" + }, + "skills": { + "description": "The person's skills.", + "type": "string" + }, + "tagline": { + "description": "The brief description (tagline) of this person.", + "type": "string" + }, + "url": { + "description": "The URL of this person's profile.", + "type": "string" + }, + "urls": { + "description": "A list of URLs for this person.", + "items": { + "properties": { + "label": { + "description": "The label of the URL.", + "type": "string" + }, + "type": { + "description": "The type of URL. Possible values include, but are not limited to, the following values: \n- \"otherProfile\" - URL for another profile. \n- \"contributor\" - URL to a site for which this person is a contributor. \n- \"website\" - URL for this Google+ Page's primary website. \n- \"other\" - Other URL.", + "type": "string" + }, + "value": { + "description": "The URL value.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "verified": { + "description": "Whether the person or Google+ Page has been verified.", + "type": "boolean" + } + }, + "type": "object" }, - "placesLived": { - "type": "array", - "description": "A list of places where this person has lived.", - "items": { - "type": "object", + "Place": { + "id": "Place", "properties": { - "primary": { - "type": "boolean", - "description": "If \"true\", this place of residence is this person's primary residence." - }, - "value": { - "type": "string", - "description": "A place where this person has lived. For example: \"Seattle, WA\", \"Near Toronto\"." - } - } - } + "address": { + "description": "The physical address of the place.", + "properties": { + "formatted": { + "description": "The formatted address for display.", + "type": "string" + } + }, + "type": "object" + }, + "displayName": { + "description": "The display name of the place.", + "type": "string" + }, + "id": { + "description": "The id of the place.", + "type": "string" + }, + "kind": { + "default": "plus#place", + "description": "Identifies this resource as a place. Value: \"plus#place\".", + "type": "string" + }, + "position": { + "description": "The position of the place.", + "properties": { + "latitude": { + "description": "The latitude of this position.", + "format": "double", + "type": "number" + }, + "longitude": { + "description": "The longitude of this position.", + "format": "double", + "type": "number" + } + }, + "type": "object" + } + }, + "type": "object" }, - "plusOneCount": { - "type": "integer", - "description": "If a Google+ Page, the number of people who have +1'd this page.", - "format": "int32" - }, - "relationshipStatus": { - "type": "string", - "description": "The person's relationship status. Possible values include, but are not limited to, the following values: \n- \"single\" - Person is single. \n- \"in_a_relationship\" - Person is in a relationship. \n- \"engaged\" - Person is engaged. \n- \"married\" - Person is married. \n- \"its_complicated\" - The relationship is complicated. \n- \"open_relationship\" - Person is in an open relationship. \n- \"widowed\" - Person is widowed. \n- \"in_domestic_partnership\" - Person is in a domestic partnership. \n- \"in_civil_union\" - Person is in a civil union." - }, - "skills": { - "type": "string", - "description": "The person's skills." - }, - "tagline": { - "type": "string", - "description": "The brief description (tagline) of this person." - }, - "url": { - "type": "string", - "description": "The URL of this person's profile." - }, - "urls": { - "type": "array", - "description": "A list of URLs for this person.", - "items": { - "type": "object", + "PlusDomainsAclentryResource": { + "id": "PlusDomainsAclentryResource", "properties": { - "label": { - "type": "string", - "description": "The label of the URL." - }, - "type": { - "type": "string", - "description": "The type of URL. Possible values include, but are not limited to, the following values: \n- \"otherProfile\" - URL for another profile. \n- \"contributor\" - URL to a site for which this person is a contributor. \n- \"website\" - URL for this Google+ Page's primary website. \n- \"other\" - Other URL." - }, - "value": { - "type": "string", - "description": "The URL value." - } - } - } + "displayName": { + "description": "A descriptive name for this entry. Suitable for display.", + "type": "string" + }, + "id": { + "description": "The ID of the entry. For entries of type \"person\" or \"circle\", this is the ID of the resource. For other types, this property is not set.", + "type": "string" + }, + "type": { + "description": "The type of entry describing to whom access is granted. Possible values are: \n- \"person\" - Access to an individual. \n- \"circle\" - Access to members of a circle. \n- \"myCircles\" - Access to members of all the person's circles. \n- \"extendedCircles\" - Access to members of all the person's circles, plus all of the people in their circles. \n- \"domain\" - Access to members of the person's Google Apps domain. \n- \"public\" - Access to anyone on the web.", + "type": "string" + } + }, + "type": "object" }, - "verified": { - "type": "boolean", - "description": "Whether the person or Google+ Page has been verified." + "Videostream": { + "id": "Videostream", + "properties": { + "height": { + "description": "The height, in pixels, of the video resource.", + "format": "int32", + "type": "integer" + }, + "type": { + "description": "MIME type of the video stream.", + "type": "string" + }, + "url": { + "description": "URL of the video stream.", + "type": "string" + }, + "width": { + "description": "The width, in pixels, of the video resource.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" } - } }, - "Place": { - "id": "Place", - "type": "object", - "properties": { - "address": { - "type": "object", - "description": "The physical address of the place.", - "properties": { - "formatted": { - "type": "string", - "description": "The formatted address for display." - } - } - }, - "displayName": { - "type": "string", - "description": "The display name of the place." - }, - "id": { - "type": "string", - "description": "The id of the place." - }, - "kind": { - "type": "string", - "description": "Identifies this resource as a place. Value: \"plus#place\".", - "default": "plus#place" - }, - "position": { - "type": "object", - "description": "The position of the place.", - "properties": { - "latitude": { - "type": "number", - "description": "The latitude of this position.", - "format": "double" - }, - "longitude": { - "type": "number", - "description": "The longitude of this position.", - "format": "double" - } - } - } - } - }, - "PlusDomainsAclentryResource": { - "id": "PlusDomainsAclentryResource", - "type": "object", - "properties": { - "displayName": { - "type": "string", - "description": "A descriptive name for this entry. Suitable for display." - }, - "id": { - "type": "string", - "description": "The ID of the entry. For entries of type \"person\" or \"circle\", this is the ID of the resource. For other types, this property is not set." - }, - "type": { - "type": "string", - "description": "The type of entry describing to whom access is granted. Possible values are: \n- \"person\" - Access to an individual. \n- \"circle\" - Access to members of a circle. \n- \"myCircles\" - Access to members of all the person's circles. \n- \"extendedCircles\" - Access to members of all the person's circles, plus all of the people in their circles. \n- \"domain\" - Access to members of the person's Google Apps domain. \n- \"public\" - Access to anyone on the web." - } - } - }, - "Videostream": { - "id": "Videostream", - "type": "object", - "properties": { - "height": { - "type": "integer", - "description": "The height, in pixels, of the video resource.", - "format": "int32" - }, - "type": { - "type": "string", - "description": "MIME type of the video stream." - }, - "url": { - "type": "string", - "description": "URL of the video stream." - }, - "width": { - "type": "integer", - "description": "The width, in pixels, of the video resource.", - "format": "int32" - } - } - } - }, - "resources": { - "activities": { - "methods": { - "get": { - "id": "plusDomains.activities.get", - "path": "activities/{activityId}", - "httpMethod": "GET", - "description": "Get an activity.", - "parameters": { - "activityId": { - "type": "string", - "description": "The ID of the activity to get.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "activityId" - ], - "response": { - "$ref": "Activity" - }, - "scopes": [ - "https://www.googleapis.com/auth/plus.login", - "https://www.googleapis.com/auth/plus.me", - "https://www.googleapis.com/auth/plus.stream.read" - ] - }, - "insert": { - "id": "plusDomains.activities.insert", - "path": "people/{userId}/activities", - "httpMethod": "POST", - "description": "Create a new activity for the authenticated user.", - "parameters": { - "preview": { - "type": "boolean", - "description": "If \"true\", extract the potential media attachments for a URL. The response will include all possible attachments for a URL, including video, photos, and articles based on the content of the page.", - "location": "query" - }, - "userId": { - "type": "string", - "description": "The ID of the user to create the activity on behalf of. Its value should be \"me\", to indicate the authenticated user.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "userId" - ], - "request": { - "$ref": "Activity" - }, - "response": { - "$ref": "Activity" - }, - "scopes": [ - "https://www.googleapis.com/auth/plus.login", - "https://www.googleapis.com/auth/plus.me", - "https://www.googleapis.com/auth/plus.stream.write" - ] - }, - "list": { - "id": "plusDomains.activities.list", - "path": "people/{userId}/activities/{collection}", - "httpMethod": "GET", - "description": "List all of the activities in the specified collection for a particular user.", - "parameters": { - "collection": { - "type": "string", - "description": "The collection of activities to list.", - "required": true, - "enum": [ - "user" - ], - "enumDescriptions": [ - "All activities created by the specified user that the authenticated user is authorized to view." - ], - "location": "path" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of activities to include in the response, which is used for paging. For any response, the actual number returned might be less than the specified maxResults.", - "default": "20", - "format": "uint32", - "minimum": "1", - "maximum": "100", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "The continuation token, which is used to page through large result sets. To get the next page of results, set this parameter to the value of \"nextPageToken\" from the previous response.", - "location": "query" - }, - "userId": { - "type": "string", - "description": "The ID of the user to get activities for. The special value \"me\" can be used to indicate the authenticated user.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "userId", - "collection" - ], - "response": { - "$ref": "ActivityFeed" - }, - "scopes": [ - "https://www.googleapis.com/auth/plus.login", - "https://www.googleapis.com/auth/plus.me", - "https://www.googleapis.com/auth/plus.stream.read" - ] - } - } - }, - "audiences": { - "methods": { - "list": { - "id": "plusDomains.audiences.list", - "path": "people/{userId}/audiences", - "httpMethod": "GET", - "description": "List all of the audiences to which a user can share.", - "parameters": { - "maxResults": { - "type": "integer", - "description": "The maximum number of circles to include in the response, which is used for paging. For any response, the actual number returned might be less than the specified maxResults.", - "default": "20", - "format": "uint32", - "minimum": "1", - "maximum": "100", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "The continuation token, which is used to page through large result sets. To get the next page of results, set this parameter to the value of \"nextPageToken\" from the previous response.", - "location": "query" - }, - "userId": { - "type": "string", - "description": "The ID of the user to get audiences for. The special value \"me\" can be used to indicate the authenticated user.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "userId" - ], - "response": { - "$ref": "AudiencesFeed" - }, - "scopes": [ - "https://www.googleapis.com/auth/plus.circles.read", - "https://www.googleapis.com/auth/plus.login", - "https://www.googleapis.com/auth/plus.me" - ] - } - } - }, - "circles": { - "methods": { - "addPeople": { - "id": "plusDomains.circles.addPeople", - "path": "circles/{circleId}/people", - "httpMethod": "PUT", - "description": "Add a person to a circle. Google+ limits certain circle operations, including the number of circle adds. Learn More.", - "parameters": { - "circleId": { - "type": "string", - "description": "The ID of the circle to add the person to.", - "required": true, - "location": "path" - }, - "email": { - "type": "string", - "description": "Email of the people to add to the circle. Optional, can be repeated.", - "repeated": true, - "location": "query" - }, - "userId": { - "type": "string", - "description": "IDs of the people to add to the circle. Optional, can be repeated.", - "repeated": true, - "location": "query" - } - }, - "parameterOrder": [ - "circleId" - ], - "response": { - "$ref": "Circle" - }, - "scopes": [ - "https://www.googleapis.com/auth/plus.circles.write", - "https://www.googleapis.com/auth/plus.login" - ] - }, - "get": { - "id": "plusDomains.circles.get", - "path": "circles/{circleId}", - "httpMethod": "GET", - "description": "Get a circle.", - "parameters": { - "circleId": { - "type": "string", - "description": "The ID of the circle to get.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "circleId" - ], - "response": { - "$ref": "Circle" - }, - "scopes": [ - "https://www.googleapis.com/auth/plus.circles.read", - "https://www.googleapis.com/auth/plus.login" - ] - }, - "insert": { - "id": "plusDomains.circles.insert", - "path": "people/{userId}/circles", - "httpMethod": "POST", - "description": "Create a new circle for the authenticated user.", - "parameters": { - "userId": { - "type": "string", - "description": "The ID of the user to create the circle on behalf of. The value \"me\" can be used to indicate the authenticated user.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "userId" - ], - "request": { - "$ref": "Circle" - }, - "response": { - "$ref": "Circle" - }, - "scopes": [ - "https://www.googleapis.com/auth/plus.circles.write", - "https://www.googleapis.com/auth/plus.login", - "https://www.googleapis.com/auth/plus.me" - ] - }, - "list": { - "id": "plusDomains.circles.list", - "path": "people/{userId}/circles", - "httpMethod": "GET", - "description": "List all of the circles for a user.", - "parameters": { - "maxResults": { - "type": "integer", - "description": "The maximum number of circles to include in the response, which is used for paging. For any response, the actual number returned might be less than the specified maxResults.", - "default": "20", - "format": "uint32", - "minimum": "1", - "maximum": "100", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "The continuation token, which is used to page through large result sets. To get the next page of results, set this parameter to the value of \"nextPageToken\" from the previous response.", - "location": "query" - }, - "userId": { - "type": "string", - "description": "The ID of the user to get circles for. The special value \"me\" can be used to indicate the authenticated user.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "userId" - ], - "response": { - "$ref": "CircleFeed" - }, - "scopes": [ - "https://www.googleapis.com/auth/plus.circles.read", - "https://www.googleapis.com/auth/plus.login", - "https://www.googleapis.com/auth/plus.me" - ] - }, - "patch": { - "id": "plusDomains.circles.patch", - "path": "circles/{circleId}", - "httpMethod": "PATCH", - "description": "Update a circle's description. This method supports patch semantics.", - "parameters": { - "circleId": { - "type": "string", - "description": "The ID of the circle to update.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "circleId" - ], - "request": { - "$ref": "Circle" - }, - "response": { - "$ref": "Circle" - }, - "scopes": [ - "https://www.googleapis.com/auth/plus.circles.write", - "https://www.googleapis.com/auth/plus.login" - ] - }, - "remove": { - "id": "plusDomains.circles.remove", - "path": "circles/{circleId}", - "httpMethod": "DELETE", - "description": "Delete a circle.", - "parameters": { - "circleId": { - "type": "string", - "description": "The ID of the circle to delete.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "circleId" - ], - "scopes": [ - "https://www.googleapis.com/auth/plus.circles.write", - "https://www.googleapis.com/auth/plus.login" - ] - }, - "removePeople": { - "id": "plusDomains.circles.removePeople", - "path": "circles/{circleId}/people", - "httpMethod": "DELETE", - "description": "Remove a person from a circle.", - "parameters": { - "circleId": { - "type": "string", - "description": "The ID of the circle to remove the person from.", - "required": true, - "location": "path" - }, - "email": { - "type": "string", - "description": "Email of the people to add to the circle. Optional, can be repeated.", - "repeated": true, - "location": "query" - }, - "userId": { - "type": "string", - "description": "IDs of the people to remove from the circle. Optional, can be repeated.", - "repeated": true, - "location": "query" - } - }, - "parameterOrder": [ - "circleId" - ], - "scopes": [ - "https://www.googleapis.com/auth/plus.circles.write", - "https://www.googleapis.com/auth/plus.login" - ] - }, - "update": { - "id": "plusDomains.circles.update", - "path": "circles/{circleId}", - "httpMethod": "PUT", - "description": "Update a circle's description.", - "parameters": { - "circleId": { - "type": "string", - "description": "The ID of the circle to update.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "circleId" - ], - "request": { - "$ref": "Circle" - }, - "response": { - "$ref": "Circle" - }, - "scopes": [ - "https://www.googleapis.com/auth/plus.circles.write", - "https://www.googleapis.com/auth/plus.login" - ] - } - } - }, - "comments": { - "methods": { - "get": { - "id": "plusDomains.comments.get", - "path": "comments/{commentId}", - "httpMethod": "GET", - "description": "Get a comment.", - "parameters": { - "commentId": { - "type": "string", - "description": "The ID of the comment to get.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "commentId" - ], - "response": { - "$ref": "Comment" - }, - "scopes": [ - "https://www.googleapis.com/auth/plus.login", - "https://www.googleapis.com/auth/plus.stream.read" - ] - }, - "insert": { - "id": "plusDomains.comments.insert", - "path": "activities/{activityId}/comments", - "httpMethod": "POST", - "description": "Create a new comment in reply to an activity.", - "parameters": { - "activityId": { - "type": "string", - "description": "The ID of the activity to reply to.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "activityId" - ], - "request": { - "$ref": "Comment" - }, - "response": { - "$ref": "Comment" - }, - "scopes": [ - "https://www.googleapis.com/auth/plus.login", - "https://www.googleapis.com/auth/plus.stream.write" - ] - }, - "list": { - "id": "plusDomains.comments.list", - "path": "activities/{activityId}/comments", - "httpMethod": "GET", - "description": "List all of the comments for an activity.", - "parameters": { - "activityId": { - "type": "string", - "description": "The ID of the activity to get comments for.", - "required": true, - "location": "path" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of comments to include in the response, which is used for paging. For any response, the actual number returned might be less than the specified maxResults.", - "default": "20", - "format": "uint32", - "minimum": "0", - "maximum": "500", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "The continuation token, which is used to page through large result sets. To get the next page of results, set this parameter to the value of \"nextPageToken\" from the previous response.", - "location": "query" - }, - "sortOrder": { - "type": "string", - "description": "The order in which to sort the list of comments.", - "default": "ascending", - "enum": [ - "ascending", - "descending" - ], - "enumDescriptions": [ - "Sort oldest comments first.", - "Sort newest comments first." - ], - "location": "query" - } - }, - "parameterOrder": [ - "activityId" - ], - "response": { - "$ref": "CommentFeed" - }, - "scopes": [ - "https://www.googleapis.com/auth/plus.login", - "https://www.googleapis.com/auth/plus.stream.read" - ] - } - } - }, - "media": { - "methods": { - "insert": { - "id": "plusDomains.media.insert", - "path": "people/{userId}/media/{collection}", - "httpMethod": "POST", - "description": "Add a new media item to an album. The current upload size limitations are 36MB for a photo and 1GB for a video. Uploads do not count against quota if photos are less than 2048 pixels on their longest side or videos are less than 15 minutes in length.", - "parameters": { - "collection": { - "type": "string", - "required": true, - "enum": [ - "cloud" - ], - "enumDescriptions": [ - "Upload the media to share on Google+." - ], - "location": "path" - }, - "userId": { - "type": "string", - "description": "The ID of the user to create the activity on behalf of.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "userId", - "collection" - ], - "request": { - "$ref": "Media" - }, - "response": { - "$ref": "Media" - }, - "scopes": [ - "https://www.googleapis.com/auth/plus.login", - "https://www.googleapis.com/auth/plus.me", - "https://www.googleapis.com/auth/plus.media.upload" - ], - "supportsMediaUpload": true, - "mediaUpload": { - "accept": [ - "image/*", - "video/*" - ], - "protocols": { - "simple": { - "multipart": true, - "path": "/upload/plusDomains/v1/people/{userId}/media/{collection}" - }, - "resumable": { - "multipart": true, - "path": "/resumable/upload/plusDomains/v1/people/{userId}/media/{collection}" - } - } - } - } - } - }, - "people": { - "methods": { - "get": { - "id": "plusDomains.people.get", - "path": "people/{userId}", - "httpMethod": "GET", - "description": "Get a person's profile.", - "parameters": { - "userId": { - "type": "string", - "description": "The ID of the person to get the profile for. The special value \"me\" can be used to indicate the authenticated user.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "userId" - ], - "response": { - "$ref": "Person" - }, - "scopes": [ - "https://www.googleapis.com/auth/plus.login", - "https://www.googleapis.com/auth/plus.me", - "https://www.googleapis.com/auth/plus.profiles.read", - "https://www.googleapis.com/auth/userinfo.email", - "https://www.googleapis.com/auth/userinfo.profile" - ] - }, - "list": { - "id": "plusDomains.people.list", - "path": "people/{userId}/people/{collection}", - "httpMethod": "GET", - "description": "List all of the people in the specified collection.", - "parameters": { - "collection": { - "type": "string", - "description": "The collection of people to list.", - "required": true, - "enum": [ - "circled" - ], - "enumDescriptions": [ - "The list of people who this user has added to one or more circles." - ], - "location": "path" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of people to include in the response, which is used for paging. For any response, the actual number returned might be less than the specified maxResults.", - "default": "100", - "format": "uint32", - "minimum": "1", - "maximum": "100", - "location": "query" - }, - "orderBy": { - "type": "string", - "description": "The order to return people in.", - "enum": [ - "alphabetical", - "best" - ], - "enumDescriptions": [ - "Order the people by their display name.", - "Order people based on the relevence to the viewer." - ], - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "The continuation token, which is used to page through large result sets. To get the next page of results, set this parameter to the value of \"nextPageToken\" from the previous response.", - "location": "query" - }, - "userId": { - "type": "string", - "description": "Get the collection of people for the person identified. Use \"me\" to indicate the authenticated user.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "userId", - "collection" - ], - "response": { - "$ref": "PeopleFeed" - }, - "scopes": [ - "https://www.googleapis.com/auth/plus.circles.read", - "https://www.googleapis.com/auth/plus.login", - "https://www.googleapis.com/auth/plus.me" - ] - }, - "listByActivity": { - "id": "plusDomains.people.listByActivity", - "path": "activities/{activityId}/people/{collection}", - "httpMethod": "GET", - "description": "List all of the people in the specified collection for a particular activity.", - "parameters": { - "activityId": { - "type": "string", - "description": "The ID of the activity to get the list of people for.", - "required": true, - "location": "path" - }, - "collection": { - "type": "string", - "description": "The collection of people to list.", - "required": true, - "enum": [ - "plusoners", - "resharers", - "sharedto" - ], - "enumDescriptions": [ - "List all people who have +1'd this activity.", - "List all people who have reshared this activity.", - "List all people who this activity was shared to." - ], - "location": "path" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of people to include in the response, which is used for paging. For any response, the actual number returned might be less than the specified maxResults.", - "default": "20", - "format": "uint32", - "minimum": "1", - "maximum": "100", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "The continuation token, which is used to page through large result sets. To get the next page of results, set this parameter to the value of \"nextPageToken\" from the previous response.", - "location": "query" - } - }, - "parameterOrder": [ - "activityId", - "collection" - ], - "response": { - "$ref": "PeopleFeed" - }, - "scopes": [ - "https://www.googleapis.com/auth/plus.login", - "https://www.googleapis.com/auth/plus.stream.read" - ] - }, - "listByCircle": { - "id": "plusDomains.people.listByCircle", - "path": "circles/{circleId}/people", - "httpMethod": "GET", - "description": "List all of the people who are members of a circle.", - "parameters": { - "circleId": { - "type": "string", - "description": "The ID of the circle to get the members of.", - "required": true, - "location": "path" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of people to include in the response, which is used for paging. For any response, the actual number returned might be less than the specified maxResults.", - "default": "20", - "format": "uint32", - "minimum": "1", - "maximum": "100", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "The continuation token, which is used to page through large result sets. To get the next page of results, set this parameter to the value of \"nextPageToken\" from the previous response.", - "location": "query" - } - }, - "parameterOrder": [ - "circleId" - ], - "response": { - "$ref": "PeopleFeed" - }, - "scopes": [ - "https://www.googleapis.com/auth/plus.circles.read", - "https://www.googleapis.com/auth/plus.login" - ] - } - } - } - } -} + "servicePath": "plusDomains/v1/", + "title": "Google+ Domains API", + "version": "v1" +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/plusdomains/v1/plusdomains-gen.go b/vendor/google.golang.org/api/plusdomains/v1/plusdomains-gen.go index 077b9de61..4bc01721a 100644 --- a/vendor/google.golang.org/api/plusdomains/v1/plusdomains-gen.go +++ b/vendor/google.golang.org/api/plusdomains/v1/plusdomains-gen.go @@ -5155,11 +5155,12 @@ func (c *MediaInsertCall) doRequest(alt string) (*http.Response, error) { body = new(bytes.Buffer) reqHeaders.Set("Content-Type", "application/json") } - body, cleanup := c.mediaInfo_.UploadRequest(reqHeaders, body) + body, getBody, cleanup := c.mediaInfo_.UploadRequest(reqHeaders, body) defer cleanup() urls += "?" + c.urlParams_.Encode() req, _ := http.NewRequest("POST", urls, body) req.Header = reqHeaders + gensupport.SetGetBody(req, getBody) googleapi.Expand(req.URL, map[string]string{ "userId": c.userId, "collection": c.collection, diff --git a/vendor/google.golang.org/api/poly/v1/poly-api.json b/vendor/google.golang.org/api/poly/v1/poly-api.json index 0d59c6976..cef80eca4 100644 --- a/vendor/google.golang.org/api/poly/v1/poly-api.json +++ b/vendor/google.golang.org/api/poly/v1/poly-api.json @@ -1,302 +1,445 @@ { - "ownerName": "Google", - "resources": { - "assets": { - "methods": { - "get": { - "response": { - "$ref": "Asset" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "GET", - "parameters": { - "name": { - "pattern": "^assets/[^/]+$", - "location": "path", - "description": "Required. An asset's name in the form `assets/{ASSET_ID}`.", - "required": true, - "type": "string" - } - }, - "flatPath": "v1/assets/{assetsId}", - "path": "v1/{+name}", - "id": "poly.assets.get", - "description": "Returns detailed information about an asset given its name.\nPRIVATE assets are returned only if\n the currently authenticated user (via OAuth token) is the author of the asset." - }, - "list": { - "httpMethod": "GET", - "parameterOrder": [], - "response": { - "$ref": "ListAssetsResponse" - }, - "parameters": { - "keywords": { - "location": "query", - "description": "One or more search terms to be matched against all text that Poly has\nindexed for assets, which includes display_name,\ndescription, and tags. Multiple keywords should be\nseparated by spaces.", - "type": "string" - }, - "orderBy": { - "description": "Specifies an ordering for assets. Acceptable values are:\n`BEST`, `NEWEST`, `OLDEST`. Defaults to `BEST`, which ranks assets\nbased on a combination of popularity and other features.", - "type": "string", - "location": "query" - }, - "format": { - "location": "query", - "description": "Return only assets with the matching format. Acceptable values are:\n`BLOCKS`, `FBX`, `GLTF`, `GLTF2`, `OBJ`, `TILT`.", - "type": "string" - }, - "curated": { - "description": "Return only assets that have been curated by the Poly team.", - "type": "boolean", - "location": "query" - }, - "category": { - "description": "Filter assets based on the specified category. Supported values are:\n`animals`, `architecture`, `art`, `food`, `nature`, `objects`, `people`, `scenes`,\n`technology`, and `transport`.", - "type": "string", - "location": "query" - }, - "maxComplexity": { - "location": "query", - "enum": [ - "COMPLEXITY_UNSPECIFIED", - "COMPLEX", - "MEDIUM", - "SIMPLE" - ], - "description": "Returns assets that are of the specified complexity or less. Defaults to\nCOMPLEX. For example, a request for\nMEDIUM assets also includes\nSIMPLE assets.", - "type": "string" - }, - "pageToken": { - "location": "query", - "description": "Specifies a continuation token from a previous search whose results were\nsplit into multiple pages. To get the next page, submit the same request\nspecifying the value from next_page_token.", - "type": "string" - }, - "pageSize": { - "location": "query", - "description": "The maximum number of assets to be returned. This value must be between `1`\nand `100`. Defaults to `20`.", - "format": "int32", - "type": "integer" - } - }, - "flatPath": "v1/assets", - "id": "poly.assets.list", - "path": "v1/assets", - "description": "Lists all public, remixable assets. These are assets with an access level of\nPUBLIC and published under the\nCC-By license." - } - } - }, - "users": { - "resources": { - "likedassets": { - "methods": { - "list": { - "response": { - "$ref": "ListLikedAssetsResponse" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "GET", - "parameters": { - "name": { - "description": "A valid user id. Currently, only the special value 'me', representing the\ncurrently-authenticated user is supported. To use 'me', you must pass\nan OAuth token with the request.", - "required": true, - "type": "string", - "pattern": "^users/[^/]+$", - "location": "path" - }, - "orderBy": { - "location": "query", - "description": "Specifies an ordering for assets. Acceptable values are:\n`BEST`, `NEWEST`, `OLDEST`, 'LIKED_TIME'. Defaults to `LIKED_TIME`, which\nranks assets based on how recently they were liked.", - "type": "string" - }, - "pageToken": { - "location": "query", - "description": "Specifies a continuation token from a previous search whose results were\nsplit into multiple pages. To get the next page, submit the same request\nspecifying the value from\nnext_page_token.", - "type": "string" - }, - "pageSize": { - "location": "query", - "description": "The maximum number of assets to be returned. This value must be between `1`\nand `100`. Defaults to `20`.", - "format": "int32", - "type": "integer" - }, - "format": { - "location": "query", - "description": "Return only assets with the matching format. Acceptable values are:\n`BLOCKS`, `FBX`, `GLTF`, `GLTF2`, `OBJ`, `TILT`.", - "type": "string" - } - }, - "flatPath": "v1/users/{usersId}/likedassets", - "path": "v1/{+name}/likedassets", - "id": "poly.users.likedassets.list", - "description": "Lists assets that the user has liked. Only the value 'me', representing\nthe currently-authenticated user, is supported. May include assets with an\naccess level of UNLISTED." - } - } - }, - "assets": { - "methods": { - "list": { - "path": "v1/{+name}/assets", - "id": "poly.users.assets.list", - "description": "Lists assets authored by the given user. Only the value 'me', representing\nthe currently-authenticated user, is supported. May include assets with an\naccess level of PRIVATE or\nUNLISTED and assets which are\nAll Rights Reserved for the\ncurrently-authenticated user.", - "response": { - "$ref": "ListUserAssetsResponse" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "GET", - "parameters": { - "name": { - "description": "A valid user id. Currently, only the special value 'me', representing the\ncurrently-authenticated user is supported. To use 'me', you must pass\nan OAuth token with the request.", - "required": true, - "type": "string", - "pattern": "^users/[^/]+$", - "location": "path" - }, - "orderBy": { - "description": "Specifies an ordering for assets. Acceptable values are:\n`BEST`, `NEWEST`, `OLDEST`. Defaults to `BEST`, which ranks assets\nbased on a combination of popularity and other features.", - "type": "string", - "location": "query" - }, - "format": { - "description": "Return only assets with the matching format. Acceptable values are:\n`BLOCKS`, `FBX`, `GLTF`, `GLTF2`, `OBJ`, and `TILT`.", - "type": "string", - "location": "query" - }, - "pageToken": { - "description": "Specifies a continuation token from a previous search whose results were\nsplit into multiple pages. To get the next page, submit the same request\nspecifying the value from\nnext_page_token.", - "type": "string", - "location": "query" - }, - "pageSize": { - "location": "query", - "description": "The maximum number of assets to be returned. This value must be between `1`\nand `100`. Defaults to `20`.", - "format": "int32", - "type": "integer" - }, - "visibility": { - "location": "query", - "enum": [ - "VISIBILITY_UNSPECIFIED", - "PUBLISHED", - "PRIVATE" - ], - "description": "The visibility of the assets to be returned.\nDefaults to VISIBILITY_UNSPECIFIED which returns all assets.", - "type": "string" - } - }, - "flatPath": "v1/users/{usersId}/assets" - } - } - } - } - } + "basePath": "", + "baseUrl": "https://poly.googleapis.com/", + "batchPath": "batch", + "canonicalName": "Poly Service", + "description": "The Poly API provides read-only access to assets hosted on \u003ca href=\"https://poly.google.com\"\u003epoly.google.com\u003c/a\u003e.\n", + "discoveryVersion": "v1", + "documentationLink": "https://developers.google.com/poly/", + "fullyEncodeReservedExpansion": true, + "icons": { + "x16": "http://www.google.com/images/icons/product/search-16.gif", + "x32": "http://www.google.com/images/icons/product/search-32.gif" }, + "id": "poly:v1", + "kind": "discovery#restDescription", + "name": "poly", + "ownerDomain": "google.com", + "ownerName": "Google", "parameters": { - "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.", - "type": "string", - "location": "query" - }, - "access_token": { - "description": "OAuth access token.", - "type": "string", - "location": "query" - }, - "quotaUser": { - "location": "query", - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", - "type": "string" - }, - "pp": { - "description": "Pretty-print response.", - "type": "boolean", - "default": "true", - "location": "query" - }, - "oauth_token": { - "location": "query", - "description": "OAuth 2.0 token for the current user.", - "type": "string" - }, - "bearer_token": { - "location": "query", - "description": "OAuth bearer token.", - "type": "string" - }, - "upload_protocol": { - "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", - "type": "string", - "location": "query" - }, - "prettyPrint": { - "location": "query", - "description": "Returns response with indentations and line breaks.", - "type": "boolean", - "default": "true" - }, - "uploadType": { - "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", - "type": "string", - "location": "query" - }, - "fields": { - "location": "query", - "description": "Selector specifying which fields to include in a partial response.", - "type": "string" - }, "$.xgafv": { + "description": "V1 error format.", + "enum": [ + "1", + "2" + ], "enumDescriptions": [ "v1 error format", "v2 error format" ], "location": "query", - "enum": [ - "1", - "2" - ], - "description": "V1 error format.", "type": "string" }, - "callback": { + "access_token": { + "description": "OAuth access token.", "location": "query", - "description": "JSONP", "type": "string" }, "alt": { + "default": "json", + "description": "Data format for response.", + "enum": [ + "json", + "media", + "proto" + ], "enumDescriptions": [ "Responses with Content-Type of application/json", "Media download with context-dependent Content-Type", "Responses with Content-Type of application/x-protobuf" ], "location": "query", - "description": "Data format for response.", - "default": "json", - "enum": [ - "json", - "media", - "proto" - ], + "type": "string" + }, + "bearer_token": { + "description": "OAuth bearer token.", + "location": "query", + "type": "string" + }, + "callback": { + "description": "JSONP", + "location": "query", + "type": "string" + }, + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "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.", + "location": "query", + "type": "string" + }, + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "pp": { + "default": "true", + "description": "Pretty-print response.", + "location": "query", + "type": "boolean" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", + "location": "query", + "type": "string" + }, + "uploadType": { + "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", + "location": "query", + "type": "string" + }, + "upload_protocol": { + "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", + "location": "query", "type": "string" } }, - "version": "v1", - "baseUrl": "https://poly.googleapis.com/", - "kind": "discovery#restDescription", - "description": "The Poly API provides read-only access to assets hosted on \u003ca href=\"https://poly.google.com\"\u003epoly.google.com\u003c/a\u003e.\n", - "servicePath": "", - "basePath": "", - "revision": "20180114", - "documentationLink": "https://developers.google.com/poly/", - "id": "poly:v1", - "discoveryVersion": "v1", - "version_module": true, + "protocol": "rest", + "resources": { + "assets": { + "methods": { + "get": { + "description": "Returns detailed information about an asset given its name.\nPRIVATE assets are returned only if\n the currently authenticated user (via OAuth token) is the author of the asset.", + "flatPath": "v1/assets/{assetsId}", + "httpMethod": "GET", + "id": "poly.assets.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. An asset's name in the form `assets/{ASSET_ID}`.", + "location": "path", + "pattern": "^assets/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "Asset" + } + }, + "list": { + "description": "Lists all public, remixable assets. These are assets with an access level of\nPUBLIC and published under the\nCC-By license.", + "flatPath": "v1/assets", + "httpMethod": "GET", + "id": "poly.assets.list", + "parameterOrder": [], + "parameters": { + "category": { + "description": "Filter assets based on the specified category. Supported values are:\n`animals`, `architecture`, `art`, `food`, `nature`, `objects`, `people`, `scenes`,\n`technology`, and `transport`.", + "location": "query", + "type": "string" + }, + "curated": { + "description": "Return only assets that have been curated by the Poly team.", + "location": "query", + "type": "boolean" + }, + "format": { + "description": "Return only assets with the matching format. Acceptable values are:\n`BLOCKS`, `FBX`, `GLTF`, `GLTF2`, `OBJ`, `TILT`.", + "location": "query", + "type": "string" + }, + "keywords": { + "description": "One or more search terms to be matched against all text that Poly has\nindexed for assets, which includes display_name,\ndescription, and tags. Multiple keywords should be\nseparated by spaces.", + "location": "query", + "type": "string" + }, + "maxComplexity": { + "description": "Returns assets that are of the specified complexity or less. Defaults to\nCOMPLEX. For example, a request for\nMEDIUM assets also includes\nSIMPLE assets.", + "enum": [ + "COMPLEXITY_UNSPECIFIED", + "COMPLEX", + "MEDIUM", + "SIMPLE" + ], + "location": "query", + "type": "string" + }, + "orderBy": { + "description": "Specifies an ordering for assets. Acceptable values are:\n`BEST`, `NEWEST`, `OLDEST`. Defaults to `BEST`, which ranks assets\nbased on a combination of popularity and other features.", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "The maximum number of assets to be returned. This value must be between `1`\nand `100`. Defaults to `20`.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Specifies a continuation token from a previous search whose results were\nsplit into multiple pages. To get the next page, submit the same request\nspecifying the value from next_page_token.", + "location": "query", + "type": "string" + } + }, + "path": "v1/assets", + "response": { + "$ref": "ListAssetsResponse" + } + } + } + }, + "users": { + "resources": { + "assets": { + "methods": { + "list": { + "description": "Lists assets authored by the given user. Only the value 'me', representing\nthe currently-authenticated user, is supported. May include assets with an\naccess level of PRIVATE or\nUNLISTED and assets which are\nAll Rights Reserved for the\ncurrently-authenticated user.", + "flatPath": "v1/users/{usersId}/assets", + "httpMethod": "GET", + "id": "poly.users.assets.list", + "parameterOrder": [ + "name" + ], + "parameters": { + "format": { + "description": "Return only assets with the matching format. Acceptable values are:\n`BLOCKS`, `FBX`, `GLTF`, `GLTF2`, `OBJ`, and `TILT`.", + "location": "query", + "type": "string" + }, + "name": { + "description": "A valid user id. Currently, only the special value 'me', representing the\ncurrently-authenticated user is supported. To use 'me', you must pass\nan OAuth token with the request.", + "location": "path", + "pattern": "^users/[^/]+$", + "required": true, + "type": "string" + }, + "orderBy": { + "description": "Specifies an ordering for assets. Acceptable values are:\n`BEST`, `NEWEST`, `OLDEST`. Defaults to `BEST`, which ranks assets\nbased on a combination of popularity and other features.", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "The maximum number of assets to be returned. This value must be between `1`\nand `100`. Defaults to `20`.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Specifies a continuation token from a previous search whose results were\nsplit into multiple pages. To get the next page, submit the same request\nspecifying the value from\nnext_page_token.", + "location": "query", + "type": "string" + }, + "visibility": { + "description": "The visibility of the assets to be returned.\nDefaults to VISIBILITY_UNSPECIFIED which returns all assets.", + "enum": [ + "VISIBILITY_UNSPECIFIED", + "PUBLISHED", + "PRIVATE" + ], + "location": "query", + "type": "string" + } + }, + "path": "v1/{+name}/assets", + "response": { + "$ref": "ListUserAssetsResponse" + } + } + } + }, + "likedassets": { + "methods": { + "list": { + "description": "Lists assets that the user has liked. Only the value 'me', representing\nthe currently-authenticated user, is supported. May include assets with an\naccess level of UNLISTED.", + "flatPath": "v1/users/{usersId}/likedassets", + "httpMethod": "GET", + "id": "poly.users.likedassets.list", + "parameterOrder": [ + "name" + ], + "parameters": { + "format": { + "description": "Return only assets with the matching format. Acceptable values are:\n`BLOCKS`, `FBX`, `GLTF`, `GLTF2`, `OBJ`, `TILT`.", + "location": "query", + "type": "string" + }, + "name": { + "description": "A valid user id. Currently, only the special value 'me', representing the\ncurrently-authenticated user is supported. To use 'me', you must pass\nan OAuth token with the request.", + "location": "path", + "pattern": "^users/[^/]+$", + "required": true, + "type": "string" + }, + "orderBy": { + "description": "Specifies an ordering for assets. Acceptable values are:\n`BEST`, `NEWEST`, `OLDEST`, 'LIKED_TIME'. Defaults to `LIKED_TIME`, which\nranks assets based on how recently they were liked.", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "The maximum number of assets to be returned. This value must be between `1`\nand `100`. Defaults to `20`.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Specifies a continuation token from a previous search whose results were\nsplit into multiple pages. To get the next page, submit the same request\nspecifying the value from\nnext_page_token.", + "location": "query", + "type": "string" + } + }, + "path": "v1/{+name}/likedassets", + "response": { + "$ref": "ListLikedAssetsResponse" + } + } + } + } + } + } + }, + "revision": "20180217", + "rootUrl": "https://poly.googleapis.com/", "schemas": { + "Asset": { + "description": "Represents and describes an asset in the Poly library. An asset is a 3D model\nor scene created using [Tilt Brush](//www.tiltbrush.com),\n[Blocks](//vr.google.com/blocks/), or any 3D program that produces a file\nthat can be upload to Poly.", + "id": "Asset", + "properties": { + "authorName": { + "description": "The author's publicly visible name. Use this name when giving credit to the\nauthor. For more information, see [Licensing](/poly/discover/licensing).", + "type": "string" + }, + "createTime": { + "description": "For published assets, the time when the asset was published.\nFor unpublished assets, the time when the asset was created.", + "format": "google-datetime", + "type": "string" + }, + "description": { + "description": "The human-readable description, set by the asset's author.", + "type": "string" + }, + "displayName": { + "description": "The human-readable name, set by the asset's author.", + "type": "string" + }, + "formats": { + "description": "A list of Formats where each\nformat describes one representation of the asset.", + "items": { + "$ref": "Format" + }, + "type": "array" + }, + "isCurated": { + "description": "Whether this asset has been curated by the Poly team.", + "type": "boolean" + }, + "license": { + "description": "The license under which the author has made the asset available\nfor use, if any.", + "enum": [ + "UNKNOWN", + "CREATIVE_COMMONS_BY", + "ALL_RIGHTS_RESERVED" + ], + "enumDescriptions": [ + "Unknown license value.", + "Creative Commons CC-BY 3.0. https://creativecommons.org/licenses/by/3.0/", + "Unlicensed: All Rights Reserved by the author. Unlicensed assets are\n**not** returned by List Assets." + ], + "type": "string" + }, + "metadata": { + "description": "Application-defined opaque metadata for this asset. This field is only\nreturned when querying for the signed-in user's own assets, not for public\nassets. This string is limited to 1K chars. It is up to the creator of\nthe asset to define the format for this string (for example, JSON).", + "type": "string" + }, + "name": { + "description": "The unique identifier for the asset in the form:\n`assets/{ASSET_ID}`.", + "type": "string" + }, + "presentationParams": { + "$ref": "PresentationParams", + "description": "Hints for displaying the asset. Note that these parameters are not\nimmutable; the author of an asset may change them post-publication." + }, + "thumbnail": { + "$ref": "File", + "description": "The thumbnail image for the asset." + }, + "updateTime": { + "description": "The time when the asset was last modified. For published assets, whose\ncontents are immutable, the update time changes only when metadata\nproperties, such as visibility, are updated.", + "format": "google-datetime", + "type": "string" + }, + "visibility": { + "description": "The visibility of the asset and who can access it.", + "enum": [ + "VISIBILITY_UNSPECIFIED", + "PRIVATE", + "UNLISTED", + "PUBLIC" + ], + "enumDescriptions": [ + "Unknown (and invalid) visibility.", + "Access to the asset and its underlying files and resources is restricted to\nthe author.\n**Authentication:** You must supply an OAuth token that corresponds to the\nauthor's account.", + "Access to the asset and its underlying files and resources is available to\nanyone with the asset's name. Unlisted assets are **not**\nreturned by List Assets.", + "Access to the asset and its underlying files and resources is available\nto anyone." + ], + "type": "string" + } + }, + "type": "object" + }, + "AssetImportMessage": { + "description": "A message generated by the asset import process.", + "id": "AssetImportMessage", + "properties": { + "code": { + "description": "The code associated with this message.", + "enum": [ + "CODE_UNSPECIFIED", + "NO_IMPORTABLE_FILE", + "EMPTY_MODEL", + "OBJ_PARSE_ERROR", + "EXPIRED", + "IMAGE_ERROR", + "EXTRA_FILES_WITH_ARCHIVE", + "DEFAULT_MATERIALS", + "FATAL_ERROR", + "INVALID_ELEMENT_TYPE" + ], + "enumDescriptions": [ + "Unknown error code.", + "The asset import did not include any file that we can import (i.e. an OBJ\nfile).", + "When generating the preview for the import, no geometry was found.", + "A problem was encountered while parsing the OBJ file. The converter makes\na 'best effort' attempt to continue when encountering such issues. In\nsome cases the resulting preview model may still be acceptable. The\ndetails can be found in the parse error message.", + "The importer was not able to import the model before the expiration time.", + "The importer encountered a problem reading an image file.", + "Multiple files were encountered in addition to a ZIP archive. When\nuploading an archive only one file is permitted.", + "Default materials are used in the model. This means that one or more\nfaces is using default materials either because no usemtl statement was\nspecified or because the requested material was not found due to a\nmissing material file or bad material name. This does not cover the case\nof missing textures.", + "The importer encountered a fatal error and was unable to import the\nmodel.", + "The import includes a file of an unsupported element type. The file path\nis specified." + ], + "type": "string" + }, + "filePath": { + "description": "An optional file path. Only present for those error codes that specify it.", + "type": "string" + }, + "imageError": { + "$ref": "ImageError", + "description": "An optional image error. Only present for INVALID_IMAGE_FILE." + }, + "objParseError": { + "$ref": "ObjParseError", + "description": "An optional OBJ parse error. Only present for OBJ_PARSE_ERROR." + } + }, + "type": "object" + }, "File": { + "description": "Represents a file in Poly, which can be a root,\nresource, or thumbnail file.", + "id": "File", "properties": { "contentType": { "description": "The MIME content-type, such as `image/png`.\nFor more information, see\n[MIME types](//developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types).", @@ -311,240 +454,37 @@ "type": "string" } }, - "id": "File", - "description": "Represents a file in Poly, which can be a root,\nresource, or thumbnail file.", "type": "object" }, - "ListLikedAssetsResponse": { - "properties": { - "nextPageToken": { - "description": "The continuation token for retrieving the next page. If empty,\nindicates that there are no more pages. To get the next page, submit the\nsame request specifying this value as the\npage_token.", - "type": "string" - }, - "assets": { - "description": "A list of assets that match the criteria specified in the request.", - "type": "array", - "items": { - "$ref": "Asset" - } - }, - "totalSize": { - "description": "The total number of assets in the list, without pagination.", - "format": "int32", - "type": "integer" - } - }, - "id": "ListLikedAssetsResponse", - "description": "A response message from a request to list.", - "type": "object" - }, - "ListAssetsResponse": { - "description": "A response message from a request to list.", - "type": "object", - "properties": { - "nextPageToken": { - "description": "The continuation token for retrieving the next page. If empty,\nindicates that there are no more pages. To get the next page, submit the\nsame request specifying this value as the\npage_token.", - "type": "string" - }, - "assets": { - "description": "A list of assets that match the criteria specified in the request.", - "type": "array", - "items": { - "$ref": "Asset" - } - }, - "totalSize": { - "description": "The total number of assets in the list, without pagination.", - "format": "int32", - "type": "integer" - } - }, - "id": "ListAssetsResponse" - }, "Format": { + "description": "The same asset can be represented in different formats, for example,\na [WaveFront .obj](//en.wikipedia.org/wiki/Wavefront_.obj_file) file with its\ncorresponding .mtl file or a [Khronos glTF](//www.khronos.org/gltf) file\nwith its corresponding .glb binary data. A format refers to a specific\nrepresentation of an asset and contains all information needed to\nretrieve and describe this representation.", + "id": "Format", "properties": { - "resources": { - "description": "A list of dependencies of the root element. May include, but is not\nlimited to, materials, textures, and shader programs.", - "type": "array", - "items": { - "$ref": "File" - } - }, "formatComplexity": { - "description": "Complexity stats about this representation of the asset.", - "$ref": "FormatComplexity" - }, - "root": { - "description": "The root of the file hierarchy. This will always be populated.\nFor some format_types - such as `TILT`, which are self-contained -\nthis is all of the data.\n\nOther types - such as `OBJ` - often reference other data elements.\nThese are contained in the resources field.", - "$ref": "File" + "$ref": "FormatComplexity", + "description": "Complexity stats about this representation of the asset." }, "formatType": { "description": "A short string that identifies the format type of this representation.\nPossible values are: `FBX`, `GLTF`, `GLTF2`, `OBJ`, and `TILT`.", "type": "string" - } - }, - "id": "Format", - "description": "The same asset can be represented in different formats, for example,\na [WaveFront .obj](//en.wikipedia.org/wiki/Wavefront_.obj_file) file with its\ncorresponding .mtl file or a [Khronos glTF](//www.khronos.org/gltf) file\nwith its corresponding .glb binary data. A format refers to a specific\nrepresentation of an asset and contains all information needed to\nretrieve and describe this representation.", - "type": "object" - }, - "Asset": { - "properties": { - "visibility": { - "enumDescriptions": [ - "Unknown (and invalid) visibility.", - "Access to the asset and its underlying files and resources is restricted to\nthe author.\n**Authentication:** You must supply an OAuth token that corresponds to the\nauthor's account.", - "Access to the asset and its underlying files and resources is available to\nanyone with the asset's name. Unlisted assets are **not**\nreturned by List Assets.", - "Access to the asset and its underlying files and resources is available\nto anyone." - ], - "enum": [ - "VISIBILITY_UNSPECIFIED", - "PRIVATE", - "UNLISTED", - "PUBLIC" - ], - "description": "The visibility of the asset and who can access it.", - "type": "string" }, - "authorName": { - "description": "The author's publicly visible name. Use this name when giving credit to the\nauthor. For more information, see [Licensing](/poly/discover/licensing).", - "type": "string" - }, - "name": { - "description": "The unique identifier for the asset in the form:\n`assets/{ASSET_ID}`.", - "type": "string" - }, - "displayName": { - "description": "The human-readable name, set by the asset's author.", - "type": "string" - }, - "createTime": { - "description": "For published assets, the time when the asset was published.\nFor unpublished assets, the time when the asset was created.", - "format": "google-datetime", - "type": "string" - }, - "license": { - "enumDescriptions": [ - "Unknown license value.", - "Creative Commons CC-BY 3.0. https://creativecommons.org/licenses/by/3.0/", - "Unlicensed: All Rights Reserved by the author. Unlicensed assets are\n**not** returned by List Assets." - ], - "enum": [ - "UNKNOWN", - "CREATIVE_COMMONS_BY", - "ALL_RIGHTS_RESERVED" - ], - "description": "The license under which the author has made the asset available\nfor use, if any.", - "type": "string" - }, - "updateTime": { - "description": "The time when the asset was last modified. For published assets, whose\ncontents are immutable, the update time changes only when metadata\nproperties, such as visibility, are updated.", - "format": "google-datetime", - "type": "string" - }, - "isCurated": { - "description": "Whether this asset has been curated by the Poly team.", - "type": "boolean" - }, - "formats": { - "description": "A list of Formats where each\nformat describes one representation of the asset.", - "type": "array", + "resources": { + "description": "A list of dependencies of the root element. May include, but is not\nlimited to, materials, textures, and shader programs.", "items": { - "$ref": "Format" - } + "$ref": "File" + }, + "type": "array" }, - "presentationParams": { - "description": "Hints for displaying the asset. Note that these parameters are not\nimmutable; the author of an asset may change them post-publication.", - "$ref": "PresentationParams" - }, - "thumbnail": { - "description": "The thumbnail image for the asset.", - "$ref": "File" - }, - "description": { - "description": "The human-readable description, set by the asset's author.", - "type": "string" + "root": { + "$ref": "File", + "description": "The root of the file hierarchy. This will always be populated.\nFor some format_types - such as `TILT`, which are self-contained -\nthis is all of the data.\n\nOther types - such as `OBJ` - often reference other data elements.\nThese are contained in the resources field." } }, - "id": "Asset", - "description": "Represents and describes an asset in the Poly library. An asset is a 3D model\nor scene created using [Tilt Brush](//www.tiltbrush.com),\n[Blocks](//vr.google.com/blocks/), or any 3D program that produces a file\nthat can be upload to Poly.", - "type": "object" - }, - "PresentationParams": { - "properties": { - "colorSpace": { - "enum": [ - "UNKNOWN", - "LINEAR", - "GAMMA" - ], - "description": "The materials' diffuse/albedo color. This does not apply to vertex colors\nor texture maps.", - "type": "string", - "enumDescriptions": [ - "Invalid color value.", - "Linear color values. Default.", - "Colors should be converted to linear by assuming gamma = 2.0." - ] - }, - "orientingRotation": { - "$ref": "Quaternion", - "description": "A rotation that should be applied to the object root to make it upright.\nMore precisely, this quaternion transforms from \"object space\" (the space\nin which the object is defined) to \"presentation space\", a coordinate\nsystem where +Y is up, +X is right, -Z is forward. For example, if\nthe object is the Eiffel Tower, in its local coordinate system the\nobject might be laid out such that the base of the tower is on the\nYZ plane and the tip of the tower is towards positive X. In this case\nthis quaternion would specify a rotation (of 90 degrees about the Z\naxis) such that in the presentation space the base of the tower is\naligned with the XZ plane, and the tip of the tower lies towards +Y.\n\nThis rotation is unrelated to the object's pose in the web preview,\nwhich is just a camera position setting and is *not* reflected in this\nrotation.\n\nPlease note: this is applicable only to the gLTF." - } - }, - "id": "PresentationParams", - "description": "Hints for displaying the asset, based on information available when the asset\nwas uploaded.", - "type": "object" - }, - "Quaternion": { - "description": "A [Quaternion](//en.wikipedia.org/wiki/Quaternion). Please note: if in the\nresponse you see \"w: 1\" and nothing else this is the default value of\n[0, 0, 0, 1] where x,y, and z are 0.", - "type": "object", - "properties": { - "y": { - "description": "The y component.", - "format": "double", - "type": "number" - }, - "x": { - "description": "The x component.", - "format": "double", - "type": "number" - }, - "z": { - "description": "The z component.", - "format": "double", - "type": "number" - }, - "w": { - "description": "The scalar component.", - "format": "double", - "type": "number" - } - }, - "id": "Quaternion" - }, - "ListUserAssetsResponse": { - "properties": { - "nextPageToken": { - "description": "The continuation token for retrieving the next page. If empty,\nindicates that there are no more pages. To get the next page, submit the\nsame request specifying this value as the\npage_token.", - "type": "string" - }, - "totalSize": { - "description": "The total number of assets in the list, without pagination.", - "format": "int32", - "type": "integer" - }, - "userAssets": { - "description": "A list of UserAssets matching the request.", - "type": "array", - "items": { - "$ref": "UserAsset" - } - } - }, - "id": "ListUserAssetsResponse", - "description": "A response message from a request to list.", "type": "object" }, "FormatComplexity": { + "description": "Information on the complexity of this Format.", + "id": "FormatComplexity", "properties": { "lodHint": { "description": "A non-negative integer that represents the level of detail (LOD) of this\nformat relative to other formats of the same asset with the same\nformat_type.\nThis hint allows you to sort formats from the most-detailed (0) to\nleast-detailed (integers greater than 0).", @@ -557,32 +497,286 @@ "type": "string" } }, - "id": "FormatComplexity", - "description": "Information on the complexity of this Format.", + "type": "object" + }, + "ImageError": { + "description": "A message resulting from reading an image file.", + "id": "ImageError", + "properties": { + "code": { + "description": "The type of image error encountered. Optional for older image errors.", + "enum": [ + "CODE_UNSPECIFIED", + "INVALID_IMAGE", + "IMAGE_TOO_BIG", + "WRONG_IMAGE_TYPE" + ], + "enumDescriptions": [ + "Unknown error code.", + "We were unable to read the image file.", + "The image size is too large.", + "The image data does not match the expected MIME type of the image." + ], + "type": "string" + }, + "filePath": { + "description": "The file path in the import of the image that was rejected.", + "type": "string" + } + }, + "type": "object" + }, + "ListAssetsResponse": { + "description": "A response message from a request to list.", + "id": "ListAssetsResponse", + "properties": { + "assets": { + "description": "A list of assets that match the criteria specified in the request.", + "items": { + "$ref": "Asset" + }, + "type": "array" + }, + "nextPageToken": { + "description": "The continuation token for retrieving the next page. If empty,\nindicates that there are no more pages. To get the next page, submit the\nsame request specifying this value as the\npage_token.", + "type": "string" + }, + "totalSize": { + "description": "The total number of assets in the list, without pagination.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "ListLikedAssetsResponse": { + "description": "A response message from a request to list.", + "id": "ListLikedAssetsResponse", + "properties": { + "assets": { + "description": "A list of assets that match the criteria specified in the request.", + "items": { + "$ref": "Asset" + }, + "type": "array" + }, + "nextPageToken": { + "description": "The continuation token for retrieving the next page. If empty,\nindicates that there are no more pages. To get the next page, submit the\nsame request specifying this value as the\npage_token.", + "type": "string" + }, + "totalSize": { + "description": "The total number of assets in the list, without pagination.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "ListUserAssetsResponse": { + "description": "A response message from a request to list.", + "id": "ListUserAssetsResponse", + "properties": { + "nextPageToken": { + "description": "The continuation token for retrieving the next page. If empty,\nindicates that there are no more pages. To get the next page, submit the\nsame request specifying this value as the\npage_token.", + "type": "string" + }, + "totalSize": { + "description": "The total number of assets in the list, without pagination.", + "format": "int32", + "type": "integer" + }, + "userAssets": { + "description": "A list of UserAssets matching the request.", + "items": { + "$ref": "UserAsset" + }, + "type": "array" + } + }, + "type": "object" + }, + "ObjParseError": { + "description": "Details of an error resulting from parsing an OBJ file", + "id": "ObjParseError", + "properties": { + "code": { + "description": "The type of problem found (required).", + "enum": [ + "CODE_UNSPECIFIED", + "INCONSISTENT_VERTEX_REFS", + "INVALID_COMMAND", + "INVALID_NUMBER", + "INVALID_VERTEX_REF", + "MISSING_GEOMETRIC_VERTEX", + "MISSING_TOKEN", + "TOO_FEW_DIMENSIONS", + "TOO_FEW_VERTICES", + "TOO_MANY_DIMENSIONS", + "UNSUPPORTED_COMMAND", + "UNUSED_TOKENS", + "VERTEX_NOT_FOUND", + "NUMBER_OUT_OF_RANGE", + "INVALID_VALUE", + "INVALID_TEXTURE_OPTION", + "TOO_MANY_PROBLEMS", + "MISSING_FILE_NAME", + "FILE_NOT_FOUND", + "UNKNOWN_MATERIAL", + "NO_MATERIAL_DEFINED", + "INVALID_SMOOTHING_GROUP", + "MISSING_VERTEX_COLORS", + "FILE_SUBSTITUTION", + "LINE_TOO_LONG", + "INVALID_FILE_PATH" + ], + "enumDescriptions": [ + "Unknown error code.", + "Vertex references are specified in an inconsistent style for a face (e.g.\nsome vertices specify texture vertices but some don't).", + "The command is invalid.", + "A invalid number was specified.", + "An invalid vertex reference was specified.", + "A vertex reference does not specify a geometric vertex.", + "An expected token was not found.", + "The vertex specified too few dimensions for its usage.", + "The face specified too few vertices.", + "The vertex specified too many dimensions for its usage.", + "This command is a valid OBJ command but is not supported. This error is\nonly generated for the first instance of such a command.", + "This line ended with unparsed token characters.", + "The specified vertex was not found.", + "The specified number was too large or small for its usage.", + "The specified parameter value was not recognized.", + "The specified texture option is not valid.", + "The maximum number of problems to report was reached. Parsing continues,\nbut further problems will be ignored.", + "An expected file name was not specified.", + "The specified file was not found in the import.", + "The specified material was not found in any material definition in the\nimport.", + "Material parameters were specified before the first material definition.", + "The smoothing group is not valid.", + "Vertex colors were specified for only some vertices of a face.", + "A missing file was found at a different file path.", + "A line in an OBJ or MTL file exceeded the maximum line length.", + "The file path was invalid. Only relative paths are supported." + ], + "type": "string" + }, + "endIndex": { + "description": "The ending character index at which the problem was found.", + "format": "int32", + "type": "integer" + }, + "filePath": { + "description": "The file path in which the problem was found.", + "type": "string" + }, + "line": { + "description": "The text of the line. Note that this may be truncated if the line was very\nlong. This may not include the error if it occurs after line truncation.", + "type": "string" + }, + "lineNumber": { + "description": "Line number at which the problem was found.", + "format": "int32", + "type": "integer" + }, + "startIndex": { + "description": "The starting character index at which the problem was found.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "PresentationParams": { + "description": "Hints for displaying the asset, based on information available when the asset\nwas uploaded.", + "id": "PresentationParams", + "properties": { + "colorSpace": { + "description": "The materials' diffuse/albedo color. This does not apply to vertex colors\nor texture maps.", + "enum": [ + "UNKNOWN", + "LINEAR", + "GAMMA" + ], + "enumDescriptions": [ + "Invalid color value.", + "Linear color values. Default.", + "Colors should be converted to linear by assuming gamma = 2.0." + ], + "type": "string" + }, + "orientingRotation": { + "$ref": "Quaternion", + "description": "A rotation that should be applied to the object root to make it upright.\nMore precisely, this quaternion transforms from \"object space\" (the space\nin which the object is defined) to \"presentation space\", a coordinate\nsystem where +Y is up, +X is right, -Z is forward. For example, if\nthe object is the Eiffel Tower, in its local coordinate system the\nobject might be laid out such that the base of the tower is on the\nYZ plane and the tip of the tower is towards positive X. In this case\nthis quaternion would specify a rotation (of 90 degrees about the Z\naxis) such that in the presentation space the base of the tower is\naligned with the XZ plane, and the tip of the tower lies towards +Y.\n\nThis rotation is unrelated to the object's pose in the web preview,\nwhich is just a camera position setting and is *not* reflected in this\nrotation.\n\nPlease note: this is applicable only to the gLTF." + } + }, + "type": "object" + }, + "Quaternion": { + "description": "A [Quaternion](//en.wikipedia.org/wiki/Quaternion). Please note: if in the\nresponse you see \"w: 1\" and nothing else this is the default value of\n[0, 0, 0, 1] where x,y, and z are 0.", + "id": "Quaternion", + "properties": { + "w": { + "description": "The scalar component.", + "format": "double", + "type": "number" + }, + "x": { + "description": "The x component.", + "format": "double", + "type": "number" + }, + "y": { + "description": "The y component.", + "format": "double", + "type": "number" + }, + "z": { + "description": "The z component.", + "format": "double", + "type": "number" + } + }, + "type": "object" + }, + "StartAssetImportResponse": { + "description": "A response message from a request to list.\nThis is returned in the response field of the Operation.", + "id": "StartAssetImportResponse", + "properties": { + "assetId": { + "description": "The id of newly created asset. If this is empty when the operation is\ncomplete it means the import failed. Please refer to the\nasset_import_message field to understand what went wrong.", + "type": "string" + }, + "assetImportId": { + "description": "The id of the asset import.", + "type": "string" + }, + "assetImportMessages": { + "description": "The message from the asset import. This will contain any warnings\n(or - in the case of failure - errors) that occurred during import.", + "items": { + "$ref": "AssetImportMessage" + }, + "type": "array" + }, + "publishUrl": { + "description": "The publish URL for the asset.", + "type": "string" + } + }, "type": "object" }, "UserAsset": { "description": "Data about the user's asset.", - "type": "object", + "id": "UserAsset", "properties": { "asset": { "$ref": "Asset", "description": "An Asset." } }, - "id": "UserAsset" + "type": "object" } }, - "icons": { - "x32": "http://www.google.com/images/icons/product/search-32.gif", - "x16": "http://www.google.com/images/icons/product/search-16.gif" - }, - "protocol": "rest", - "canonicalName": "Poly Service", - "rootUrl": "https://poly.googleapis.com/", - "ownerDomain": "google.com", - "name": "poly", - "batchPath": "batch", - "fullyEncodeReservedExpansion": true, - "title": "Poly API" -} + "servicePath": "", + "title": "Poly API", + "version": "v1", + "version_module": true +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/poly/v1/poly-gen.go b/vendor/google.golang.org/api/poly/v1/poly-gen.go index c9ef88875..cf931b9fe 100644 --- a/vendor/google.golang.org/api/poly/v1/poly-gen.go +++ b/vendor/google.golang.org/api/poly/v1/poly-gen.go @@ -160,6 +160,15 @@ type Asset struct { // **not** returned by List Assets. License string `json:"license,omitempty"` + // Metadata: Application-defined opaque metadata for this asset. This + // field is only + // returned when querying for the signed-in user's own assets, not for + // public + // assets. This string is limited to 1K chars. It is up to the creator + // of + // the asset to define the format for this string (for example, JSON). + Metadata string `json:"metadata,omitempty"` + // Name: The unique identifier for the asset in the // form: // `assets/{ASSET_ID}`. @@ -226,6 +235,83 @@ func (s *Asset) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// AssetImportMessage: A message generated by the asset import process. +type AssetImportMessage struct { + // Code: The code associated with this message. + // + // Possible values: + // "CODE_UNSPECIFIED" - Unknown error code. + // "NO_IMPORTABLE_FILE" - The asset import did not include any file + // that we can import (i.e. an OBJ + // file). + // "EMPTY_MODEL" - When generating the preview for the import, no + // geometry was found. + // "OBJ_PARSE_ERROR" - A problem was encountered while parsing the OBJ + // file. The converter makes + // a 'best effort' attempt to continue when encountering such issues. + // In + // some cases the resulting preview model may still be acceptable. + // The + // details can be found in the parse error message. + // "EXPIRED" - The importer was not able to import the model before + // the expiration time. + // "IMAGE_ERROR" - The importer encountered a problem reading an image + // file. + // "EXTRA_FILES_WITH_ARCHIVE" - Multiple files were encountered in + // addition to a ZIP archive. When + // uploading an archive only one file is permitted. + // "DEFAULT_MATERIALS" - Default materials are used in the model. This + // means that one or more + // faces is using default materials either because no usemtl statement + // was + // specified or because the requested material was not found due to + // a + // missing material file or bad material name. This does not cover the + // case + // of missing textures. + // "FATAL_ERROR" - The importer encountered a fatal error and was + // unable to import the + // model. + // "INVALID_ELEMENT_TYPE" - The import includes a file of an + // unsupported element type. The file path + // is specified. + Code string `json:"code,omitempty"` + + // FilePath: An optional file path. Only present for those error codes + // that specify it. + FilePath string `json:"filePath,omitempty"` + + // ImageError: An optional image error. Only present for + // INVALID_IMAGE_FILE. + ImageError *ImageError `json:"imageError,omitempty"` + + // ObjParseError: An optional OBJ parse error. Only present for + // OBJ_PARSE_ERROR. + ObjParseError *ObjParseError `json:"objParseError,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Code") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Code") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *AssetImportMessage) MarshalJSON() ([]byte, error) { + type NoMethod AssetImportMessage + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // File: Represents a file in Poly, which can be a root, // resource, or thumbnail file. type File struct { @@ -366,6 +452,45 @@ func (s *FormatComplexity) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// ImageError: A message resulting from reading an image file. +type ImageError struct { + // Code: The type of image error encountered. Optional for older image + // errors. + // + // Possible values: + // "CODE_UNSPECIFIED" - Unknown error code. + // "INVALID_IMAGE" - We were unable to read the image file. + // "IMAGE_TOO_BIG" - The image size is too large. + // "WRONG_IMAGE_TYPE" - The image data does not match the expected + // MIME type of the image. + Code string `json:"code,omitempty"` + + // FilePath: The file path in the import of the image that was rejected. + FilePath string `json:"filePath,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Code") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Code") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *ImageError) MarshalJSON() ([]byte, error) { + type NoMethod ImageError + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // ListAssetsResponse: A response message from a request to list. type ListAssetsResponse struct { // Assets: A list of assets that match the criteria specified in the @@ -500,6 +625,99 @@ func (s *ListUserAssetsResponse) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// ObjParseError: Details of an error resulting from parsing an OBJ file +type ObjParseError struct { + // Code: The type of problem found (required). + // + // Possible values: + // "CODE_UNSPECIFIED" - Unknown error code. + // "INCONSISTENT_VERTEX_REFS" - Vertex references are specified in an + // inconsistent style for a face (e.g. + // some vertices specify texture vertices but some don't). + // "INVALID_COMMAND" - The command is invalid. + // "INVALID_NUMBER" - A invalid number was specified. + // "INVALID_VERTEX_REF" - An invalid vertex reference was specified. + // "MISSING_GEOMETRIC_VERTEX" - A vertex reference does not specify a + // geometric vertex. + // "MISSING_TOKEN" - An expected token was not found. + // "TOO_FEW_DIMENSIONS" - The vertex specified too few dimensions for + // its usage. + // "TOO_FEW_VERTICES" - The face specified too few vertices. + // "TOO_MANY_DIMENSIONS" - The vertex specified too many dimensions + // for its usage. + // "UNSUPPORTED_COMMAND" - This command is a valid OBJ command but is + // not supported. This error is + // only generated for the first instance of such a command. + // "UNUSED_TOKENS" - This line ended with unparsed token characters. + // "VERTEX_NOT_FOUND" - The specified vertex was not found. + // "NUMBER_OUT_OF_RANGE" - The specified number was too large or small + // for its usage. + // "INVALID_VALUE" - The specified parameter value was not recognized. + // "INVALID_TEXTURE_OPTION" - The specified texture option is not + // valid. + // "TOO_MANY_PROBLEMS" - The maximum number of problems to report was + // reached. Parsing continues, + // but further problems will be ignored. + // "MISSING_FILE_NAME" - An expected file name was not specified. + // "FILE_NOT_FOUND" - The specified file was not found in the import. + // "UNKNOWN_MATERIAL" - The specified material was not found in any + // material definition in the + // import. + // "NO_MATERIAL_DEFINED" - Material parameters were specified before + // the first material definition. + // "INVALID_SMOOTHING_GROUP" - The smoothing group is not valid. + // "MISSING_VERTEX_COLORS" - Vertex colors were specified for only + // some vertices of a face. + // "FILE_SUBSTITUTION" - A missing file was found at a different file + // path. + // "LINE_TOO_LONG" - A line in an OBJ or MTL file exceeded the maximum + // line length. + // "INVALID_FILE_PATH" - The file path was invalid. Only relative + // paths are supported. + Code string `json:"code,omitempty"` + + // EndIndex: The ending character index at which the problem was found. + EndIndex int64 `json:"endIndex,omitempty"` + + // FilePath: The file path in which the problem was found. + FilePath string `json:"filePath,omitempty"` + + // Line: The text of the line. Note that this may be truncated if the + // line was very + // long. This may not include the error if it occurs after line + // truncation. + Line string `json:"line,omitempty"` + + // LineNumber: Line number at which the problem was found. + LineNumber int64 `json:"lineNumber,omitempty"` + + // StartIndex: The starting character index at which the problem was + // found. + StartIndex int64 `json:"startIndex,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Code") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Code") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *ObjParseError) MarshalJSON() ([]byte, error) { + type NoMethod ObjParseError + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // PresentationParams: Hints for displaying the asset, based on // information available when the asset // was uploaded. @@ -628,6 +846,51 @@ func (s *Quaternion) UnmarshalJSON(data []byte) error { return nil } +// StartAssetImportResponse: A response message from a request to +// list. +// This is returned in the response field of the Operation. +type StartAssetImportResponse struct { + // AssetId: The id of newly created asset. If this is empty when the + // operation is + // complete it means the import failed. Please refer to + // the + // asset_import_message field to understand what went wrong. + AssetId string `json:"assetId,omitempty"` + + // AssetImportId: The id of the asset import. + AssetImportId string `json:"assetImportId,omitempty"` + + // AssetImportMessages: The message from the asset import. This will + // contain any warnings + // (or - in the case of failure - errors) that occurred during import. + AssetImportMessages []*AssetImportMessage `json:"assetImportMessages,omitempty"` + + // PublishUrl: The publish URL for the asset. + PublishUrl string `json:"publishUrl,omitempty"` + + // ForceSendFields is a list of field names (e.g. "AssetId") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "AssetId") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *StartAssetImportResponse) MarshalJSON() ([]byte, error) { + type NoMethod StartAssetImportResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // UserAsset: Data about the user's asset. type UserAsset struct { // Asset: An Asset. diff --git a/vendor/google.golang.org/api/prediction/v1.2/prediction-api.json b/vendor/google.golang.org/api/prediction/v1.2/prediction-api.json index 59a01d196..11dbb513f 100644 --- a/vendor/google.golang.org/api/prediction/v1.2/prediction-api.json +++ b/vendor/google.golang.org/api/prediction/v1.2/prediction-api.json @@ -1,354 +1,354 @@ { - "kind": "discovery#restDescription", - "etag": "\"YWOzh2SDasdU84ArJnpYek-OMdg/y6-9S-Lx_Izdv2KpEj-E5-XRo7s\"", - "discoveryVersion": "v1", - "id": "prediction:v1.2", - "name": "prediction", - "version": "v1.2", - "revision": "20160511", - "title": "Prediction API", - "description": "Lets you access a cloud hosted machine learning service that makes it easy to build smart apps", - "ownerDomain": "google.com", - "ownerName": "Google", - "icons": { - "x16": "https://www.google.com/images/icons/feature/predictionapi-16.png", - "x32": "https://www.google.com/images/icons/feature/predictionapi-32.png" - }, - "documentationLink": "https://developers.google.com/prediction/docs/developer-guide", - "protocol": "rest", - "baseUrl": "https://www.googleapis.com/prediction/v1.2/", - "basePath": "/prediction/v1.2/", - "rootUrl": "https://www.googleapis.com/", - "servicePath": "prediction/v1.2/", - "batchPath": "batch/prediction/v1.2", - "parameters": { - "alt": { - "type": "string", - "description": "Data format for the response.", - "default": "json", - "enum": [ - "json" - ], - "enumDescriptions": [ - "Responses with Content-Type of application/json" - ], - "location": "query" - }, - "fields": { - "type": "string", - "description": "Selector specifying which fields to include in a partial response.", - "location": "query" - }, - "key": { - "type": "string", - "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" - }, - "oauth_token": { - "type": "string", - "description": "OAuth 2.0 token for the current user.", - "location": "query" - }, - "prettyPrint": { - "type": "boolean", - "description": "Returns response with indentations and line breaks.", - "default": "true", - "location": "query" - }, - "quotaUser": { - "type": "string", - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", - "location": "query" - }, - "userIp": { - "type": "string", - "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", - "location": "query" - } - }, - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/devstorage.full_control": { - "description": "Manage your data and permissions in Google Cloud Storage" - }, - "https://www.googleapis.com/auth/devstorage.read_only": { - "description": "View your data in Google Cloud Storage" - }, - "https://www.googleapis.com/auth/devstorage.read_write": { - "description": "Manage your data in Google Cloud Storage" - }, - "https://www.googleapis.com/auth/prediction": { - "description": "Manage your data in the Google Prediction API" - } - } - } - }, - "schemas": { - "Input": { - "id": "Input", - "type": "object", - "properties": { - "input": { - "type": "object", - "properties": { - "csvInstance": { - "type": "array", - "items": { - "type": "any" - } + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/devstorage.full_control": { + "description": "Manage your data and permissions in Google Cloud Storage" + }, + "https://www.googleapis.com/auth/devstorage.read_only": { + "description": "View your data in Google Cloud Storage" + }, + "https://www.googleapis.com/auth/devstorage.read_write": { + "description": "Manage your data in Google Cloud Storage" + }, + "https://www.googleapis.com/auth/prediction": { + "description": "Manage your data in the Google Prediction API" + } } - } } - } }, - "Output": { - "id": "Output", - "type": "object", - "properties": { - "id": { - "type": "string" - }, - "kind": { - "type": "string", - "default": "prediction#output" - }, - "outputLabel": { - "type": "string" - }, - "outputMulti": { - "type": "array", - "items": { - "type": "object", - "properties": { - "label": { - "type": "string" - }, - "score": { - "type": "number", - "format": "double" - } - } - } - }, - "outputValue": { - "type": "number", - "format": "double" - }, - "selfLink": { - "type": "string" - } - } + "basePath": "/prediction/v1.2/", + "baseUrl": "https://www.googleapis.com/prediction/v1.2/", + "batchPath": "batch/prediction/v1.2", + "description": "Lets you access a cloud hosted machine learning service that makes it easy to build smart apps", + "discoveryVersion": "v1", + "documentationLink": "https://developers.google.com/prediction/docs/developer-guide", + "etag": "\"-iA1DTNe4s-I6JZXPt1t1Ypy8IU/y6-9S-Lx_Izdv2KpEj-E5-XRo7s\"", + "icons": { + "x16": "https://www.google.com/images/icons/feature/predictionapi-16.png", + "x32": "https://www.google.com/images/icons/feature/predictionapi-32.png" }, - "Training": { - "id": "Training", - "type": "object", - "properties": { - "id": { - "type": "string" - }, - "kind": { - "type": "string", - "default": "prediction#training" - }, - "modelInfo": { - "type": "object", - "properties": { - "classificationAccuracy": { - "type": "number", - "format": "double" - }, - "meanSquaredError": { - "type": "number", - "format": "double" - }, - "modelType": { - "type": "string" - } - } - }, - "selfLink": { - "type": "string" - }, - "trainingStatus": { - "type": "string" - } - } - }, - "Update": { - "id": "Update", - "type": "object", - "properties": { - "classLabel": { - "type": "string", - "description": "The true class label of this instance" - }, - "csvInstance": { - "type": "array", - "description": "The input features for this instance", - "items": { - "type": "any" - } - } - } - } - }, - "methods": { - "predict": { - "id": "prediction.predict", - "path": "training/{data}/predict", - "httpMethod": "POST", - "description": "Submit data and request a prediction", - "parameters": { - "data": { - "type": "string", - "description": "mybucket%2Fmydata resource in Google Storage", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "data" - ], - "request": { - "$ref": "Input" - }, - "response": { - "$ref": "Output" - }, - "scopes": [ - "https://www.googleapis.com/auth/prediction" - ] - } - }, - "resources": { - "hostedmodels": { - "methods": { + "id": "prediction:v1.2", + "kind": "discovery#restDescription", + "methods": { "predict": { - "id": "prediction.hostedmodels.predict", - "path": "hostedmodels/{hostedModelName}/predict", - "httpMethod": "POST", - "description": "Submit input and request an output against a hosted model", - "parameters": { - "hostedModelName": { - "type": "string", - "description": "The name of a hosted model", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "hostedModelName" - ], - "request": { - "$ref": "Input" - }, - "response": { - "$ref": "Output" - }, - "scopes": [ - "https://www.googleapis.com/auth/prediction" - ] + "description": "Submit data and request a prediction", + "httpMethod": "POST", + "id": "prediction.predict", + "parameterOrder": [ + "data" + ], + "parameters": { + "data": { + "description": "mybucket%2Fmydata resource in Google Storage", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "training/{data}/predict", + "request": { + "$ref": "Input" + }, + "response": { + "$ref": "Output" + }, + "scopes": [ + "https://www.googleapis.com/auth/prediction" + ] } - } }, - "training": { - "methods": { - "delete": { - "id": "prediction.training.delete", - "path": "training/{data}", - "httpMethod": "DELETE", - "description": "Delete a trained model", - "parameters": { - "data": { - "type": "string", - "description": "mybucket/mydata resource in Google Storage", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "data" - ], - "scopes": [ - "https://www.googleapis.com/auth/prediction" - ] + "name": "prediction", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "alt": { + "default": "json", + "description": "Data format for the response.", + "enum": [ + "json" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json" + ], + "location": "query", + "type": "string" }, - "get": { - "id": "prediction.training.get", - "path": "training/{data}", - "httpMethod": "GET", - "description": "Check training status of your model", - "parameters": { - "data": { - "type": "string", - "description": "mybucket/mydata resource in Google Storage", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "data" - ], - "response": { - "$ref": "Training" - }, - "scopes": [ - "https://www.googleapis.com/auth/prediction" - ] + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "location": "query", + "type": "string" }, - "insert": { - "id": "prediction.training.insert", - "path": "training", - "httpMethod": "POST", - "description": "Begin training your model", - "parameters": { - "data": { - "type": "string", - "description": "mybucket/mydata resource in Google Storage", - "location": "query" - } - }, - "request": { - "$ref": "Training" - }, - "response": { - "$ref": "Training" - }, - "scopes": [ - "https://www.googleapis.com/auth/devstorage.full_control", - "https://www.googleapis.com/auth/devstorage.read_only", - "https://www.googleapis.com/auth/devstorage.read_write", - "https://www.googleapis.com/auth/prediction" - ] + "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" }, - "update": { - "id": "prediction.training.update", - "path": "training/{data}", - "httpMethod": "PUT", - "description": "Add new data to a trained model", - "parameters": { - "data": { - "type": "string", - "description": "mybucket/mydata resource in Google Storage", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "data" - ], - "request": { - "$ref": "Update" - }, - "response": { - "$ref": "Training" - }, - "scopes": [ - "https://www.googleapis.com/auth/prediction" - ] + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", + "location": "query", + "type": "string" + }, + "userIp": { + "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", + "location": "query", + "type": "string" } - } - } - } -} + }, + "protocol": "rest", + "resources": { + "hostedmodels": { + "methods": { + "predict": { + "description": "Submit input and request an output against a hosted model", + "httpMethod": "POST", + "id": "prediction.hostedmodels.predict", + "parameterOrder": [ + "hostedModelName" + ], + "parameters": { + "hostedModelName": { + "description": "The name of a hosted model", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "hostedmodels/{hostedModelName}/predict", + "request": { + "$ref": "Input" + }, + "response": { + "$ref": "Output" + }, + "scopes": [ + "https://www.googleapis.com/auth/prediction" + ] + } + } + }, + "training": { + "methods": { + "delete": { + "description": "Delete a trained model", + "httpMethod": "DELETE", + "id": "prediction.training.delete", + "parameterOrder": [ + "data" + ], + "parameters": { + "data": { + "description": "mybucket/mydata resource in Google Storage", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "training/{data}", + "scopes": [ + "https://www.googleapis.com/auth/prediction" + ] + }, + "get": { + "description": "Check training status of your model", + "httpMethod": "GET", + "id": "prediction.training.get", + "parameterOrder": [ + "data" + ], + "parameters": { + "data": { + "description": "mybucket/mydata resource in Google Storage", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "training/{data}", + "response": { + "$ref": "Training" + }, + "scopes": [ + "https://www.googleapis.com/auth/prediction" + ] + }, + "insert": { + "description": "Begin training your model", + "httpMethod": "POST", + "id": "prediction.training.insert", + "parameters": { + "data": { + "description": "mybucket/mydata resource in Google Storage", + "location": "query", + "type": "string" + } + }, + "path": "training", + "request": { + "$ref": "Training" + }, + "response": { + "$ref": "Training" + }, + "scopes": [ + "https://www.googleapis.com/auth/devstorage.full_control", + "https://www.googleapis.com/auth/devstorage.read_only", + "https://www.googleapis.com/auth/devstorage.read_write", + "https://www.googleapis.com/auth/prediction" + ] + }, + "update": { + "description": "Add new data to a trained model", + "httpMethod": "PUT", + "id": "prediction.training.update", + "parameterOrder": [ + "data" + ], + "parameters": { + "data": { + "description": "mybucket/mydata resource in Google Storage", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "training/{data}", + "request": { + "$ref": "Update" + }, + "response": { + "$ref": "Training" + }, + "scopes": [ + "https://www.googleapis.com/auth/prediction" + ] + } + } + } + }, + "revision": "20160511", + "rootUrl": "https://www.googleapis.com/", + "schemas": { + "Input": { + "id": "Input", + "properties": { + "input": { + "properties": { + "csvInstance": { + "items": { + "type": "any" + }, + "type": "array" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "Output": { + "id": "Output", + "properties": { + "id": { + "type": "string" + }, + "kind": { + "default": "prediction#output", + "type": "string" + }, + "outputLabel": { + "type": "string" + }, + "outputMulti": { + "items": { + "properties": { + "label": { + "type": "string" + }, + "score": { + "format": "double", + "type": "number" + } + }, + "type": "object" + }, + "type": "array" + }, + "outputValue": { + "format": "double", + "type": "number" + }, + "selfLink": { + "type": "string" + } + }, + "type": "object" + }, + "Training": { + "id": "Training", + "properties": { + "id": { + "type": "string" + }, + "kind": { + "default": "prediction#training", + "type": "string" + }, + "modelInfo": { + "properties": { + "classificationAccuracy": { + "format": "double", + "type": "number" + }, + "meanSquaredError": { + "format": "double", + "type": "number" + }, + "modelType": { + "type": "string" + } + }, + "type": "object" + }, + "selfLink": { + "type": "string" + }, + "trainingStatus": { + "type": "string" + } + }, + "type": "object" + }, + "Update": { + "id": "Update", + "properties": { + "classLabel": { + "description": "The true class label of this instance", + "type": "string" + }, + "csvInstance": { + "description": "The input features for this instance", + "items": { + "type": "any" + }, + "type": "array" + } + }, + "type": "object" + } + }, + "servicePath": "prediction/v1.2/", + "title": "Prediction API", + "version": "v1.2" +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/prediction/v1.3/prediction-api.json b/vendor/google.golang.org/api/prediction/v1.3/prediction-api.json index 0177d1d04..50ba47d4c 100644 --- a/vendor/google.golang.org/api/prediction/v1.3/prediction-api.json +++ b/vendor/google.golang.org/api/prediction/v1.3/prediction-api.json @@ -1,412 +1,412 @@ { - "kind": "discovery#restDescription", - "etag": "\"YWOzh2SDasdU84ArJnpYek-OMdg/cYlCW_mo2Sbrsx6lIgVnF3W-L9s\"", - "discoveryVersion": "v1", - "id": "prediction:v1.3", - "name": "prediction", - "version": "v1.3", - "revision": "20160511", - "title": "Prediction API", - "description": "Lets you access a cloud hosted machine learning service that makes it easy to build smart apps", - "ownerDomain": "google.com", - "ownerName": "Google", - "icons": { - "x16": "https://www.google.com/images/icons/feature/predictionapi-16.png", - "x32": "https://www.google.com/images/icons/feature/predictionapi-32.png" - }, - "documentationLink": "https://developers.google.com/prediction/docs/developer-guide", - "protocol": "rest", - "baseUrl": "https://www.googleapis.com/prediction/v1.3/", - "basePath": "/prediction/v1.3/", - "rootUrl": "https://www.googleapis.com/", - "servicePath": "prediction/v1.3/", - "batchPath": "batch/prediction/v1.3", - "parameters": { - "alt": { - "type": "string", - "description": "Data format for the response.", - "default": "json", - "enum": [ - "json" - ], - "enumDescriptions": [ - "Responses with Content-Type of application/json" - ], - "location": "query" - }, - "fields": { - "type": "string", - "description": "Selector specifying which fields to include in a partial response.", - "location": "query" - }, - "key": { - "type": "string", - "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" - }, - "oauth_token": { - "type": "string", - "description": "OAuth 2.0 token for the current user.", - "location": "query" - }, - "prettyPrint": { - "type": "boolean", - "description": "Returns response with indentations and line breaks.", - "default": "true", - "location": "query" - }, - "quotaUser": { - "type": "string", - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", - "location": "query" - }, - "userIp": { - "type": "string", - "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", - "location": "query" - } - }, - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/devstorage.full_control": { - "description": "Manage your data and permissions in Google Cloud Storage" - }, - "https://www.googleapis.com/auth/devstorage.read_only": { - "description": "View your data in Google Cloud Storage" - }, - "https://www.googleapis.com/auth/devstorage.read_write": { - "description": "Manage your data in Google Cloud Storage" - }, - "https://www.googleapis.com/auth/prediction": { - "description": "Manage your data in the Google Prediction API" - } - } - } - }, - "schemas": { - "Input": { - "id": "Input", - "type": "object", - "properties": { - "input": { - "type": "object", - "description": "Input to the model for a prediction", - "properties": { - "csvInstance": { - "type": "array", - "description": "A list of input features, these can be strings or doubles.", - "items": { - "type": "any" - } - } - } - } - } - }, - "Output": { - "id": "Output", - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "The unique name for the predictive model." - }, - "kind": { - "type": "string", - "description": "What kind of resource this is.", - "default": "prediction#output" - }, - "outputLabel": { - "type": "string", - "description": "The most likely class [Categorical models only]." - }, - "outputMulti": { - "type": "array", - "description": "A list of classes with their estimated probabilities [Categorical models only].", - "items": { - "type": "object", - "properties": { - "label": { - "type": "string", - "description": "The class label." - }, - "score": { - "type": "number", - "description": "The probability of the class.", - "format": "double" - } - } - } - }, - "outputValue": { - "type": "number", - "description": "The estimated regression value [Regression models only].", - "format": "double" - }, - "selfLink": { - "type": "string", - "description": "A URL to re-request this resource." - } - } - }, - "Training": { - "id": "Training", - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "The unique name for the predictive model." - }, - "kind": { - "type": "string", - "description": "What kind of resource this is.", - "default": "prediction#training" - }, - "modelInfo": { - "type": "object", - "description": "Model metadata.", - "properties": { - "classWeightedAccuracy": { - "type": "number", - "description": "Estimated accuracy of model taking utility weights into account [Categorical models only].", - "format": "double" - }, - "classificationAccuracy": { - "type": "number", - "description": "A number between 0.0 and 1.0, where 1.0 is 100% accurate. This is an estimate, based on the amount and quality of the training data, of the estimated prediction accuracy. You can use this is a guide to decide whether the results are accurate enough for your needs. This estimate will be more reliable if your real input data is similar to your training data [Categorical models only].", - "format": "double" - }, - "confusionMatrix": { - "type": "object", - "description": "An output confusion matrix. This shows an estimate for how this model will do in predictions. This is first indexed by the true class label. For each true class label, this provides a pair {predicted_label, count}, where count is the estimated number of times the model will predict the predicted label given the true label. Will not output if more then 100 classes [Categorical models only].", - "additionalProperties": { - "type": "object", - "description": "The true class label.", - "additionalProperties": { - "type": "number", - "description": "The pair {predicted_label, count}.", - "format": "double" + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/devstorage.full_control": { + "description": "Manage your data and permissions in Google Cloud Storage" + }, + "https://www.googleapis.com/auth/devstorage.read_only": { + "description": "View your data in Google Cloud Storage" + }, + "https://www.googleapis.com/auth/devstorage.read_write": { + "description": "Manage your data in Google Cloud Storage" + }, + "https://www.googleapis.com/auth/prediction": { + "description": "Manage your data in the Google Prediction API" } - } - }, - "confusionMatrixRowTotals": { - "type": "object", - "description": "A list of the confusion matrix row totals", - "additionalProperties": { - "type": "number", - "description": "The true class associated with how many instances it had", - "format": "double" - } - }, - "meanSquaredError": { - "type": "number", - "description": "An estimated mean squared error. The can be used to measure the quality of the predicted model [Regression models only].", - "format": "double" - }, - "modelType": { - "type": "string", - "description": "Type of predictive model (CLASSIFICATION or REGRESSION)" - }, - "numberClasses": { - "type": "string", - "description": "Number of classes in the trained model [Categorical models only].", - "format": "int64" - }, - "numberInstances": { - "type": "string", - "description": "Number of valid data instances used in the trained model.", - "format": "int64" } - } - }, - "selfLink": { - "type": "string", - "description": "A URL to re-request this resource." - }, - "trainingStatus": { - "type": "string", - "description": "The current status of the training job. This can be one of following: RUNNING; DONE; ERROR; ERROR: TRAINING JOB NOT FOUND" - }, - "utility": { - "type": "array", - "description": "A class weighting function, which allows the importance weights for classes to be specified [Categorical models only].", - "items": { - "type": "object", - "description": "Class label (string).", - "additionalProperties": { - "type": "number", - "format": "double" - } - } } - } }, - "Update": { - "id": "Update", - "type": "object", - "properties": { - "classLabel": { - "type": "string", - "description": "The true class label of this instance" - }, - "csvInstance": { - "type": "array", - "description": "The input features for this instance", - "items": { - "type": "any" - } - } - } - } - }, - "resources": { - "hostedmodels": { - "methods": { - "predict": { - "id": "prediction.hostedmodels.predict", - "path": "hostedmodels/{hostedModelName}/predict", - "httpMethod": "POST", - "description": "Submit input and request an output against a hosted model", - "parameters": { - "hostedModelName": { - "type": "string", - "description": "The name of a hosted model", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "hostedModelName" - ], - "request": { - "$ref": "Input" - }, - "response": { - "$ref": "Output" - }, - "scopes": [ - "https://www.googleapis.com/auth/prediction" - ] - } - } + "basePath": "/prediction/v1.3/", + "baseUrl": "https://www.googleapis.com/prediction/v1.3/", + "batchPath": "batch/prediction/v1.3", + "description": "Lets you access a cloud hosted machine learning service that makes it easy to build smart apps", + "discoveryVersion": "v1", + "documentationLink": "https://developers.google.com/prediction/docs/developer-guide", + "etag": "\"-iA1DTNe4s-I6JZXPt1t1Ypy8IU/cYlCW_mo2Sbrsx6lIgVnF3W-L9s\"", + "icons": { + "x16": "https://www.google.com/images/icons/feature/predictionapi-16.png", + "x32": "https://www.google.com/images/icons/feature/predictionapi-32.png" }, - "training": { - "methods": { - "delete": { - "id": "prediction.training.delete", - "path": "training/{data}", - "httpMethod": "DELETE", - "description": "Delete a trained model", - "parameters": { - "data": { - "type": "string", - "description": "mybucket/mydata resource in Google Storage", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "data" - ], - "scopes": [ - "https://www.googleapis.com/auth/prediction" - ] + "id": "prediction:v1.3", + "kind": "discovery#restDescription", + "name": "prediction", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "alt": { + "default": "json", + "description": "Data format for the response.", + "enum": [ + "json" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json" + ], + "location": "query", + "type": "string" }, - "get": { - "id": "prediction.training.get", - "path": "training/{data}", - "httpMethod": "GET", - "description": "Check training status of your model", - "parameters": { - "data": { - "type": "string", - "description": "mybucket/mydata resource in Google Storage", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "data" - ], - "response": { - "$ref": "Training" - }, - "scopes": [ - "https://www.googleapis.com/auth/prediction" - ] + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "location": "query", + "type": "string" }, - "insert": { - "id": "prediction.training.insert", - "path": "training", - "httpMethod": "POST", - "description": "Begin training your model", - "request": { - "$ref": "Training" - }, - "response": { - "$ref": "Training" - }, - "scopes": [ - "https://www.googleapis.com/auth/devstorage.full_control", - "https://www.googleapis.com/auth/devstorage.read_only", - "https://www.googleapis.com/auth/devstorage.read_write", - "https://www.googleapis.com/auth/prediction" - ] + "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" }, - "predict": { - "id": "prediction.training.predict", - "path": "training/{data}/predict", - "httpMethod": "POST", - "description": "Submit data and request a prediction", - "parameters": { - "data": { - "type": "string", - "description": "mybucket/mydata resource in Google Storage", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "data" - ], - "request": { - "$ref": "Input" - }, - "response": { - "$ref": "Output" - }, - "scopes": [ - "https://www.googleapis.com/auth/prediction" - ] + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" }, - "update": { - "id": "prediction.training.update", - "path": "training/{data}", - "httpMethod": "PUT", - "description": "Add new data to a trained model", - "parameters": { - "data": { - "type": "string", - "description": "mybucket/mydata resource in Google Storage", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "data" - ], - "request": { - "$ref": "Update" - }, - "response": { - "$ref": "Training" - }, - "scopes": [ - "https://www.googleapis.com/auth/prediction" - ] + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", + "location": "query", + "type": "string" + }, + "userIp": { + "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", + "location": "query", + "type": "string" } - } - } - } -} + }, + "protocol": "rest", + "resources": { + "hostedmodels": { + "methods": { + "predict": { + "description": "Submit input and request an output against a hosted model", + "httpMethod": "POST", + "id": "prediction.hostedmodels.predict", + "parameterOrder": [ + "hostedModelName" + ], + "parameters": { + "hostedModelName": { + "description": "The name of a hosted model", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "hostedmodels/{hostedModelName}/predict", + "request": { + "$ref": "Input" + }, + "response": { + "$ref": "Output" + }, + "scopes": [ + "https://www.googleapis.com/auth/prediction" + ] + } + } + }, + "training": { + "methods": { + "delete": { + "description": "Delete a trained model", + "httpMethod": "DELETE", + "id": "prediction.training.delete", + "parameterOrder": [ + "data" + ], + "parameters": { + "data": { + "description": "mybucket/mydata resource in Google Storage", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "training/{data}", + "scopes": [ + "https://www.googleapis.com/auth/prediction" + ] + }, + "get": { + "description": "Check training status of your model", + "httpMethod": "GET", + "id": "prediction.training.get", + "parameterOrder": [ + "data" + ], + "parameters": { + "data": { + "description": "mybucket/mydata resource in Google Storage", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "training/{data}", + "response": { + "$ref": "Training" + }, + "scopes": [ + "https://www.googleapis.com/auth/prediction" + ] + }, + "insert": { + "description": "Begin training your model", + "httpMethod": "POST", + "id": "prediction.training.insert", + "path": "training", + "request": { + "$ref": "Training" + }, + "response": { + "$ref": "Training" + }, + "scopes": [ + "https://www.googleapis.com/auth/devstorage.full_control", + "https://www.googleapis.com/auth/devstorage.read_only", + "https://www.googleapis.com/auth/devstorage.read_write", + "https://www.googleapis.com/auth/prediction" + ] + }, + "predict": { + "description": "Submit data and request a prediction", + "httpMethod": "POST", + "id": "prediction.training.predict", + "parameterOrder": [ + "data" + ], + "parameters": { + "data": { + "description": "mybucket/mydata resource in Google Storage", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "training/{data}/predict", + "request": { + "$ref": "Input" + }, + "response": { + "$ref": "Output" + }, + "scopes": [ + "https://www.googleapis.com/auth/prediction" + ] + }, + "update": { + "description": "Add new data to a trained model", + "httpMethod": "PUT", + "id": "prediction.training.update", + "parameterOrder": [ + "data" + ], + "parameters": { + "data": { + "description": "mybucket/mydata resource in Google Storage", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "training/{data}", + "request": { + "$ref": "Update" + }, + "response": { + "$ref": "Training" + }, + "scopes": [ + "https://www.googleapis.com/auth/prediction" + ] + } + } + } + }, + "revision": "20160511", + "rootUrl": "https://www.googleapis.com/", + "schemas": { + "Input": { + "id": "Input", + "properties": { + "input": { + "description": "Input to the model for a prediction", + "properties": { + "csvInstance": { + "description": "A list of input features, these can be strings or doubles.", + "items": { + "type": "any" + }, + "type": "array" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "Output": { + "id": "Output", + "properties": { + "id": { + "description": "The unique name for the predictive model.", + "type": "string" + }, + "kind": { + "default": "prediction#output", + "description": "What kind of resource this is.", + "type": "string" + }, + "outputLabel": { + "description": "The most likely class [Categorical models only].", + "type": "string" + }, + "outputMulti": { + "description": "A list of classes with their estimated probabilities [Categorical models only].", + "items": { + "properties": { + "label": { + "description": "The class label.", + "type": "string" + }, + "score": { + "description": "The probability of the class.", + "format": "double", + "type": "number" + } + }, + "type": "object" + }, + "type": "array" + }, + "outputValue": { + "description": "The estimated regression value [Regression models only].", + "format": "double", + "type": "number" + }, + "selfLink": { + "description": "A URL to re-request this resource.", + "type": "string" + } + }, + "type": "object" + }, + "Training": { + "id": "Training", + "properties": { + "id": { + "description": "The unique name for the predictive model.", + "type": "string" + }, + "kind": { + "default": "prediction#training", + "description": "What kind of resource this is.", + "type": "string" + }, + "modelInfo": { + "description": "Model metadata.", + "properties": { + "classWeightedAccuracy": { + "description": "Estimated accuracy of model taking utility weights into account [Categorical models only].", + "format": "double", + "type": "number" + }, + "classificationAccuracy": { + "description": "A number between 0.0 and 1.0, where 1.0 is 100% accurate. This is an estimate, based on the amount and quality of the training data, of the estimated prediction accuracy. You can use this is a guide to decide whether the results are accurate enough for your needs. This estimate will be more reliable if your real input data is similar to your training data [Categorical models only].", + "format": "double", + "type": "number" + }, + "confusionMatrix": { + "additionalProperties": { + "additionalProperties": { + "description": "The pair {predicted_label, count}.", + "format": "double", + "type": "number" + }, + "description": "The true class label.", + "type": "object" + }, + "description": "An output confusion matrix. This shows an estimate for how this model will do in predictions. This is first indexed by the true class label. For each true class label, this provides a pair {predicted_label, count}, where count is the estimated number of times the model will predict the predicted label given the true label. Will not output if more then 100 classes [Categorical models only].", + "type": "object" + }, + "confusionMatrixRowTotals": { + "additionalProperties": { + "description": "The true class associated with how many instances it had", + "format": "double", + "type": "number" + }, + "description": "A list of the confusion matrix row totals", + "type": "object" + }, + "meanSquaredError": { + "description": "An estimated mean squared error. The can be used to measure the quality of the predicted model [Regression models only].", + "format": "double", + "type": "number" + }, + "modelType": { + "description": "Type of predictive model (CLASSIFICATION or REGRESSION)", + "type": "string" + }, + "numberClasses": { + "description": "Number of classes in the trained model [Categorical models only].", + "format": "int64", + "type": "string" + }, + "numberInstances": { + "description": "Number of valid data instances used in the trained model.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "selfLink": { + "description": "A URL to re-request this resource.", + "type": "string" + }, + "trainingStatus": { + "description": "The current status of the training job. This can be one of following: RUNNING; DONE; ERROR; ERROR: TRAINING JOB NOT FOUND", + "type": "string" + }, + "utility": { + "description": "A class weighting function, which allows the importance weights for classes to be specified [Categorical models only].", + "items": { + "additionalProperties": { + "format": "double", + "type": "number" + }, + "description": "Class label (string).", + "type": "object" + }, + "type": "array" + } + }, + "type": "object" + }, + "Update": { + "id": "Update", + "properties": { + "classLabel": { + "description": "The true class label of this instance", + "type": "string" + }, + "csvInstance": { + "description": "The input features for this instance", + "items": { + "type": "any" + }, + "type": "array" + } + }, + "type": "object" + } + }, + "servicePath": "prediction/v1.3/", + "title": "Prediction API", + "version": "v1.3" +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/prediction/v1.4/prediction-api.json b/vendor/google.golang.org/api/prediction/v1.4/prediction-api.json index 9a42e1559..318284d2d 100644 --- a/vendor/google.golang.org/api/prediction/v1.4/prediction-api.json +++ b/vendor/google.golang.org/api/prediction/v1.4/prediction-api.json @@ -1,437 +1,437 @@ { - "kind": "discovery#restDescription", - "etag": "\"YWOzh2SDasdU84ArJnpYek-OMdg/UWwWpdkeaK4ZVhf_4VB1iBPZ3Lo\"", - "discoveryVersion": "v1", - "id": "prediction:v1.4", - "name": "prediction", - "version": "v1.4", - "revision": "20160511", - "title": "Prediction API", - "description": "Lets you access a cloud hosted machine learning service that makes it easy to build smart apps", - "ownerDomain": "google.com", - "ownerName": "Google", - "icons": { - "x16": "https://www.google.com/images/icons/feature/predictionapi-16.png", - "x32": "https://www.google.com/images/icons/feature/predictionapi-32.png" - }, - "documentationLink": "https://developers.google.com/prediction/docs/developer-guide", - "protocol": "rest", - "baseUrl": "https://www.googleapis.com/prediction/v1.4/", - "basePath": "/prediction/v1.4/", - "rootUrl": "https://www.googleapis.com/", - "servicePath": "prediction/v1.4/", - "batchPath": "batch/prediction/v1.4", - "parameters": { - "alt": { - "type": "string", - "description": "Data format for the response.", - "default": "json", - "enum": [ - "json" - ], - "enumDescriptions": [ - "Responses with Content-Type of application/json" - ], - "location": "query" - }, - "fields": { - "type": "string", - "description": "Selector specifying which fields to include in a partial response.", - "location": "query" - }, - "key": { - "type": "string", - "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" - }, - "oauth_token": { - "type": "string", - "description": "OAuth 2.0 token for the current user.", - "location": "query" - }, - "prettyPrint": { - "type": "boolean", - "description": "Returns response with indentations and line breaks.", - "default": "true", - "location": "query" - }, - "quotaUser": { - "type": "string", - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", - "location": "query" - }, - "userIp": { - "type": "string", - "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", - "location": "query" - } - }, - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/devstorage.full_control": { - "description": "Manage your data and permissions in Google Cloud Storage" - }, - "https://www.googleapis.com/auth/devstorage.read_only": { - "description": "View your data in Google Cloud Storage" - }, - "https://www.googleapis.com/auth/devstorage.read_write": { - "description": "Manage your data in Google Cloud Storage" - }, - "https://www.googleapis.com/auth/prediction": { - "description": "Manage your data in the Google Prediction API" - } - } - } - }, - "schemas": { - "Input": { - "id": "Input", - "type": "object", - "properties": { - "input": { - "type": "object", - "description": "Input to the model for a prediction", - "properties": { - "csvInstance": { - "type": "array", - "description": "A list of input features, these can be strings or doubles.", - "items": { - "type": "any" - } - } - } - } - } - }, - "Output": { - "id": "Output", - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "The unique name for the predictive model." - }, - "kind": { - "type": "string", - "description": "What kind of resource this is.", - "default": "prediction#output" - }, - "outputLabel": { - "type": "string", - "description": "The most likely class label [Categorical models only]." - }, - "outputMulti": { - "type": "array", - "description": "A list of class labels with their estimated probabilities [Categorical models only].", - "items": { - "type": "object", - "properties": { - "label": { - "type": "string", - "description": "The class label." - }, - "score": { - "type": "number", - "description": "The probability of the class label.", - "format": "double" - } - } - } - }, - "outputValue": { - "type": "number", - "description": "The estimated regression value [Regression models only].", - "format": "double" - }, - "selfLink": { - "type": "string", - "description": "A URL to re-request this resource." - } - } - }, - "Training": { - "id": "Training", - "type": "object", - "properties": { - "dataAnalysis": { - "type": "object", - "description": "Data Analysis.", - "properties": { - "warnings": { - "type": "array", - "items": { - "type": "string" - } - } - } - }, - "id": { - "type": "string", - "description": "The unique name for the predictive model." - }, - "kind": { - "type": "string", - "description": "What kind of resource this is.", - "default": "prediction#training" - }, - "modelInfo": { - "type": "object", - "description": "Model metadata.", - "properties": { - "classWeightedAccuracy": { - "type": "number", - "description": "Estimated accuracy of model taking utility weights into account [Categorical models only].", - "format": "double" - }, - "classificationAccuracy": { - "type": "number", - "description": "A number between 0.0 and 1.0, where 1.0 is 100% accurate. This is an estimate, based on the amount and quality of the training data, of the estimated prediction accuracy. You can use this is a guide to decide whether the results are accurate enough for your needs. This estimate will be more reliable if your real input data is similar to your training data [Categorical models only].", - "format": "double" - }, - "confusionMatrix": { - "type": "object", - "description": "An output confusion matrix. This shows an estimate for how this model will do in predictions. This is first indexed by the true class label. For each true class label, this provides a pair {predicted_label, count}, where count is the estimated number of times the model will predict the predicted label given the true label. Will not output if more then 100 classes [Categorical models only].", - "additionalProperties": { - "type": "object", - "additionalProperties": { - "type": "number", - "format": "double" + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/devstorage.full_control": { + "description": "Manage your data and permissions in Google Cloud Storage" + }, + "https://www.googleapis.com/auth/devstorage.read_only": { + "description": "View your data in Google Cloud Storage" + }, + "https://www.googleapis.com/auth/devstorage.read_write": { + "description": "Manage your data in Google Cloud Storage" + }, + "https://www.googleapis.com/auth/prediction": { + "description": "Manage your data in the Google Prediction API" } - } - }, - "confusionMatrixRowTotals": { - "type": "object", - "description": "A list of the confusion matrix row totals", - "additionalProperties": { - "type": "number", - "format": "double" - } - }, - "meanSquaredError": { - "type": "number", - "description": "An estimated mean squared error. The can be used to measure the quality of the predicted model [Regression models only].", - "format": "double" - }, - "modelType": { - "type": "string", - "description": "Type of predictive model (CLASSIFICATION or REGRESSION)" - }, - "numberInstances": { - "type": "string", - "description": "Number of valid data instances used in the trained model.", - "format": "int64" - }, - "numberLabels": { - "type": "string", - "description": "Number of class labels in the trained model [Categorical models only].", - "format": "int64" } - } - }, - "selfLink": { - "type": "string", - "description": "A URL to re-request this resource." - }, - "storageDataLocation": { - "type": "string", - "description": "Google storage location of the training data file." - }, - "storagePMMLLocation": { - "type": "string", - "description": "Google storage location of the preprocessing pmml file." - }, - "storagePMMLModelLocation": { - "type": "string", - "description": "Google storage location of the pmml model file." - }, - "trainingStatus": { - "type": "string", - "description": "The current status of the training job. This can be one of following: RUNNING; DONE; ERROR; ERROR: TRAINING JOB NOT FOUND" - }, - "utility": { - "type": "array", - "description": "A class weighting function, which allows the importance weights for class labels to be specified [Categorical models only].", - "items": { - "type": "object", - "description": "Class label (string).", - "additionalProperties": { - "type": "number", - "format": "double" - } - } } - } }, - "Update": { - "id": "Update", - "type": "object", - "properties": { - "csvInstance": { - "type": "array", - "description": "The input features for this instance", - "items": { - "type": "any" - } - }, - "label": { - "type": "string", - "description": "The class label of this instance" - }, - "output": { - "type": "string", - "description": "The generic output value - could be regression value or class label" - } - } - } - }, - "resources": { - "hostedmodels": { - "methods": { - "predict": { - "id": "prediction.hostedmodels.predict", - "path": "hostedmodels/{hostedModelName}/predict", - "httpMethod": "POST", - "description": "Submit input and request an output against a hosted model.", - "parameters": { - "hostedModelName": { - "type": "string", - "description": "The name of a hosted model.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "hostedModelName" - ], - "request": { - "$ref": "Input" - }, - "response": { - "$ref": "Output" - }, - "scopes": [ - "https://www.googleapis.com/auth/prediction" - ] - } - } + "basePath": "/prediction/v1.4/", + "baseUrl": "https://www.googleapis.com/prediction/v1.4/", + "batchPath": "batch/prediction/v1.4", + "description": "Lets you access a cloud hosted machine learning service that makes it easy to build smart apps", + "discoveryVersion": "v1", + "documentationLink": "https://developers.google.com/prediction/docs/developer-guide", + "etag": "\"-iA1DTNe4s-I6JZXPt1t1Ypy8IU/UWwWpdkeaK4ZVhf_4VB1iBPZ3Lo\"", + "icons": { + "x16": "https://www.google.com/images/icons/feature/predictionapi-16.png", + "x32": "https://www.google.com/images/icons/feature/predictionapi-32.png" }, - "trainedmodels": { - "methods": { - "delete": { - "id": "prediction.trainedmodels.delete", - "path": "trainedmodels/{id}", - "httpMethod": "DELETE", - "description": "Delete a trained model.", - "parameters": { - "id": { - "type": "string", - "description": "The unique name for the predictive model.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "id" - ], - "scopes": [ - "https://www.googleapis.com/auth/prediction" - ] + "id": "prediction:v1.4", + "kind": "discovery#restDescription", + "name": "prediction", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "alt": { + "default": "json", + "description": "Data format for the response.", + "enum": [ + "json" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json" + ], + "location": "query", + "type": "string" }, - "get": { - "id": "prediction.trainedmodels.get", - "path": "trainedmodels/{id}", - "httpMethod": "GET", - "description": "Check training status of your model.", - "parameters": { - "id": { - "type": "string", - "description": "The unique name for the predictive model.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "id" - ], - "response": { - "$ref": "Training" - }, - "scopes": [ - "https://www.googleapis.com/auth/prediction" - ] + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "location": "query", + "type": "string" }, - "insert": { - "id": "prediction.trainedmodels.insert", - "path": "trainedmodels", - "httpMethod": "POST", - "description": "Begin training your model.", - "request": { - "$ref": "Training" - }, - "response": { - "$ref": "Training" - }, - "scopes": [ - "https://www.googleapis.com/auth/devstorage.full_control", - "https://www.googleapis.com/auth/devstorage.read_only", - "https://www.googleapis.com/auth/devstorage.read_write", - "https://www.googleapis.com/auth/prediction" - ] + "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" }, - "predict": { - "id": "prediction.trainedmodels.predict", - "path": "trainedmodels/{id}/predict", - "httpMethod": "POST", - "description": "Submit model id and request a prediction", - "parameters": { - "id": { - "type": "string", - "description": "The unique name for the predictive model.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "id" - ], - "request": { - "$ref": "Input" - }, - "response": { - "$ref": "Output" - }, - "scopes": [ - "https://www.googleapis.com/auth/prediction" - ] + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" }, - "update": { - "id": "prediction.trainedmodels.update", - "path": "trainedmodels/{id}", - "httpMethod": "PUT", - "description": "Add new data to a trained model.", - "parameters": { - "id": { - "type": "string", - "description": "The unique name for the predictive model.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "id" - ], - "request": { - "$ref": "Update" - }, - "response": { - "$ref": "Training" - }, - "scopes": [ - "https://www.googleapis.com/auth/prediction" - ] + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", + "location": "query", + "type": "string" + }, + "userIp": { + "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", + "location": "query", + "type": "string" } - } - } - } -} + }, + "protocol": "rest", + "resources": { + "hostedmodels": { + "methods": { + "predict": { + "description": "Submit input and request an output against a hosted model.", + "httpMethod": "POST", + "id": "prediction.hostedmodels.predict", + "parameterOrder": [ + "hostedModelName" + ], + "parameters": { + "hostedModelName": { + "description": "The name of a hosted model.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "hostedmodels/{hostedModelName}/predict", + "request": { + "$ref": "Input" + }, + "response": { + "$ref": "Output" + }, + "scopes": [ + "https://www.googleapis.com/auth/prediction" + ] + } + } + }, + "trainedmodels": { + "methods": { + "delete": { + "description": "Delete a trained model.", + "httpMethod": "DELETE", + "id": "prediction.trainedmodels.delete", + "parameterOrder": [ + "id" + ], + "parameters": { + "id": { + "description": "The unique name for the predictive model.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "trainedmodels/{id}", + "scopes": [ + "https://www.googleapis.com/auth/prediction" + ] + }, + "get": { + "description": "Check training status of your model.", + "httpMethod": "GET", + "id": "prediction.trainedmodels.get", + "parameterOrder": [ + "id" + ], + "parameters": { + "id": { + "description": "The unique name for the predictive model.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "trainedmodels/{id}", + "response": { + "$ref": "Training" + }, + "scopes": [ + "https://www.googleapis.com/auth/prediction" + ] + }, + "insert": { + "description": "Begin training your model.", + "httpMethod": "POST", + "id": "prediction.trainedmodels.insert", + "path": "trainedmodels", + "request": { + "$ref": "Training" + }, + "response": { + "$ref": "Training" + }, + "scopes": [ + "https://www.googleapis.com/auth/devstorage.full_control", + "https://www.googleapis.com/auth/devstorage.read_only", + "https://www.googleapis.com/auth/devstorage.read_write", + "https://www.googleapis.com/auth/prediction" + ] + }, + "predict": { + "description": "Submit model id and request a prediction", + "httpMethod": "POST", + "id": "prediction.trainedmodels.predict", + "parameterOrder": [ + "id" + ], + "parameters": { + "id": { + "description": "The unique name for the predictive model.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "trainedmodels/{id}/predict", + "request": { + "$ref": "Input" + }, + "response": { + "$ref": "Output" + }, + "scopes": [ + "https://www.googleapis.com/auth/prediction" + ] + }, + "update": { + "description": "Add new data to a trained model.", + "httpMethod": "PUT", + "id": "prediction.trainedmodels.update", + "parameterOrder": [ + "id" + ], + "parameters": { + "id": { + "description": "The unique name for the predictive model.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "trainedmodels/{id}", + "request": { + "$ref": "Update" + }, + "response": { + "$ref": "Training" + }, + "scopes": [ + "https://www.googleapis.com/auth/prediction" + ] + } + } + } + }, + "revision": "20160511", + "rootUrl": "https://www.googleapis.com/", + "schemas": { + "Input": { + "id": "Input", + "properties": { + "input": { + "description": "Input to the model for a prediction", + "properties": { + "csvInstance": { + "description": "A list of input features, these can be strings or doubles.", + "items": { + "type": "any" + }, + "type": "array" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "Output": { + "id": "Output", + "properties": { + "id": { + "description": "The unique name for the predictive model.", + "type": "string" + }, + "kind": { + "default": "prediction#output", + "description": "What kind of resource this is.", + "type": "string" + }, + "outputLabel": { + "description": "The most likely class label [Categorical models only].", + "type": "string" + }, + "outputMulti": { + "description": "A list of class labels with their estimated probabilities [Categorical models only].", + "items": { + "properties": { + "label": { + "description": "The class label.", + "type": "string" + }, + "score": { + "description": "The probability of the class label.", + "format": "double", + "type": "number" + } + }, + "type": "object" + }, + "type": "array" + }, + "outputValue": { + "description": "The estimated regression value [Regression models only].", + "format": "double", + "type": "number" + }, + "selfLink": { + "description": "A URL to re-request this resource.", + "type": "string" + } + }, + "type": "object" + }, + "Training": { + "id": "Training", + "properties": { + "dataAnalysis": { + "description": "Data Analysis.", + "properties": { + "warnings": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "id": { + "description": "The unique name for the predictive model.", + "type": "string" + }, + "kind": { + "default": "prediction#training", + "description": "What kind of resource this is.", + "type": "string" + }, + "modelInfo": { + "description": "Model metadata.", + "properties": { + "classWeightedAccuracy": { + "description": "Estimated accuracy of model taking utility weights into account [Categorical models only].", + "format": "double", + "type": "number" + }, + "classificationAccuracy": { + "description": "A number between 0.0 and 1.0, where 1.0 is 100% accurate. This is an estimate, based on the amount and quality of the training data, of the estimated prediction accuracy. You can use this is a guide to decide whether the results are accurate enough for your needs. This estimate will be more reliable if your real input data is similar to your training data [Categorical models only].", + "format": "double", + "type": "number" + }, + "confusionMatrix": { + "additionalProperties": { + "additionalProperties": { + "format": "double", + "type": "number" + }, + "type": "object" + }, + "description": "An output confusion matrix. This shows an estimate for how this model will do in predictions. This is first indexed by the true class label. For each true class label, this provides a pair {predicted_label, count}, where count is the estimated number of times the model will predict the predicted label given the true label. Will not output if more then 100 classes [Categorical models only].", + "type": "object" + }, + "confusionMatrixRowTotals": { + "additionalProperties": { + "format": "double", + "type": "number" + }, + "description": "A list of the confusion matrix row totals", + "type": "object" + }, + "meanSquaredError": { + "description": "An estimated mean squared error. The can be used to measure the quality of the predicted model [Regression models only].", + "format": "double", + "type": "number" + }, + "modelType": { + "description": "Type of predictive model (CLASSIFICATION or REGRESSION)", + "type": "string" + }, + "numberInstances": { + "description": "Number of valid data instances used in the trained model.", + "format": "int64", + "type": "string" + }, + "numberLabels": { + "description": "Number of class labels in the trained model [Categorical models only].", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "selfLink": { + "description": "A URL to re-request this resource.", + "type": "string" + }, + "storageDataLocation": { + "description": "Google storage location of the training data file.", + "type": "string" + }, + "storagePMMLLocation": { + "description": "Google storage location of the preprocessing pmml file.", + "type": "string" + }, + "storagePMMLModelLocation": { + "description": "Google storage location of the pmml model file.", + "type": "string" + }, + "trainingStatus": { + "description": "The current status of the training job. This can be one of following: RUNNING; DONE; ERROR; ERROR: TRAINING JOB NOT FOUND", + "type": "string" + }, + "utility": { + "description": "A class weighting function, which allows the importance weights for class labels to be specified [Categorical models only].", + "items": { + "additionalProperties": { + "format": "double", + "type": "number" + }, + "description": "Class label (string).", + "type": "object" + }, + "type": "array" + } + }, + "type": "object" + }, + "Update": { + "id": "Update", + "properties": { + "csvInstance": { + "description": "The input features for this instance", + "items": { + "type": "any" + }, + "type": "array" + }, + "label": { + "description": "The class label of this instance", + "type": "string" + }, + "output": { + "description": "The generic output value - could be regression value or class label", + "type": "string" + } + }, + "type": "object" + } + }, + "servicePath": "prediction/v1.4/", + "title": "Prediction API", + "version": "v1.4" +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/prediction/v1.5/prediction-api.json b/vendor/google.golang.org/api/prediction/v1.5/prediction-api.json index 5bf3e8bfb..4fe72932a 100644 --- a/vendor/google.golang.org/api/prediction/v1.5/prediction-api.json +++ b/vendor/google.golang.org/api/prediction/v1.5/prediction-api.json @@ -1,700 +1,700 @@ { - "kind": "discovery#restDescription", - "etag": "\"YWOzh2SDasdU84ArJnpYek-OMdg/B0qrlmHp5fl-zt3tPCgucMogpLQ\"", - "discoveryVersion": "v1", - "id": "prediction:v1.5", - "name": "prediction", - "version": "v1.5", - "revision": "20160511", - "title": "Prediction API", - "description": "Lets you access a cloud hosted machine learning service that makes it easy to build smart apps", - "ownerDomain": "google.com", - "ownerName": "Google", - "icons": { - "x16": "https://www.google.com/images/icons/feature/predictionapi-16.png", - "x32": "https://www.google.com/images/icons/feature/predictionapi-32.png" - }, - "documentationLink": "https://developers.google.com/prediction/docs/developer-guide", - "protocol": "rest", - "baseUrl": "https://www.googleapis.com/prediction/v1.5/", - "basePath": "/prediction/v1.5/", - "rootUrl": "https://www.googleapis.com/", - "servicePath": "prediction/v1.5/", - "batchPath": "batch/prediction/v1.5", - "parameters": { - "alt": { - "type": "string", - "description": "Data format for the response.", - "default": "json", - "enum": [ - "json" - ], - "enumDescriptions": [ - "Responses with Content-Type of application/json" - ], - "location": "query" - }, - "fields": { - "type": "string", - "description": "Selector specifying which fields to include in a partial response.", - "location": "query" - }, - "key": { - "type": "string", - "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" - }, - "oauth_token": { - "type": "string", - "description": "OAuth 2.0 token for the current user.", - "location": "query" - }, - "prettyPrint": { - "type": "boolean", - "description": "Returns response with indentations and line breaks.", - "default": "true", - "location": "query" - }, - "quotaUser": { - "type": "string", - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", - "location": "query" - }, - "userIp": { - "type": "string", - "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", - "location": "query" - } - }, - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/devstorage.full_control": { - "description": "Manage your data and permissions in Google Cloud Storage" - }, - "https://www.googleapis.com/auth/devstorage.read_only": { - "description": "View your data in Google Cloud Storage" - }, - "https://www.googleapis.com/auth/devstorage.read_write": { - "description": "Manage your data in Google Cloud Storage" - }, - "https://www.googleapis.com/auth/prediction": { - "description": "Manage your data in the Google Prediction API" - } - } - } - }, - "schemas": { - "Analyze": { - "id": "Analyze", - "type": "object", - "properties": { - "dataDescription": { - "type": "object", - "description": "Description of the data the model was trained on.", - "properties": { - "features": { - "type": "array", - "description": "Description of the input features in the data set.", - "items": { - "type": "object", - "properties": { - "categorical": { - "type": "object", - "description": "Description of the categorical values of this feature.", - "properties": { - "count": { - "type": "string", - "description": "Number of categorical values for this feature in the data.", - "format": "int64" - }, - "values": { - "type": "array", - "description": "List of all the categories for this feature in the data set.", - "items": { - "type": "object", - "properties": { - "count": { - "type": "string", - "description": "Number of times this feature had this value.", - "format": "int64" - }, - "value": { - "type": "string", - "description": "The category name." - } - } - } - } - } - }, - "index": { - "type": "string", - "description": "The feature index.", - "format": "int64" - }, - "numeric": { - "type": "object", - "description": "Description of the numeric values of this feature.", - "properties": { - "count": { - "type": "string", - "description": "Number of numeric values for this feature in the data set.", - "format": "int64" - }, - "mean": { - "type": "number", - "description": "Mean of the numeric values of this feature in the data set.", - "format": "double" - }, - "variance": { - "type": "number", - "description": "Variance of the numeric values of this feature in the data set.", - "format": "double" - } - } - }, - "text": { - "type": "object", - "description": "Description of multiple-word text values of this feature.", - "properties": { - "count": { - "type": "string", - "description": "Number of multiple-word text values for this feature.", - "format": "int64" - } - } - } - } - } - }, - "outputFeature": { - "type": "object", - "description": "Description of the output value or label.", - "properties": { - "numeric": { - "type": "object", - "description": "Description of the output values in the data set.", - "properties": { - "count": { - "type": "string", - "description": "Number of numeric output values in the data set.", - "format": "int64" - }, - "mean": { - "type": "number", - "description": "Mean of the output values in the data set.", - "format": "double" - }, - "variance": { - "type": "number", - "description": "Variance of the output values in the data set.", - "format": "double" - } - } + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/devstorage.full_control": { + "description": "Manage your data and permissions in Google Cloud Storage" }, - "text": { - "type": "array", - "description": "Description of the output labels in the data set.", - "items": { - "type": "object", + "https://www.googleapis.com/auth/devstorage.read_only": { + "description": "View your data in Google Cloud Storage" + }, + "https://www.googleapis.com/auth/devstorage.read_write": { + "description": "Manage your data in Google Cloud Storage" + }, + "https://www.googleapis.com/auth/prediction": { + "description": "Manage your data in the Google Prediction API" + } + } + } + }, + "basePath": "/prediction/v1.5/", + "baseUrl": "https://www.googleapis.com/prediction/v1.5/", + "batchPath": "batch/prediction/v1.5", + "description": "Lets you access a cloud hosted machine learning service that makes it easy to build smart apps", + "discoveryVersion": "v1", + "documentationLink": "https://developers.google.com/prediction/docs/developer-guide", + "etag": "\"-iA1DTNe4s-I6JZXPt1t1Ypy8IU/B0qrlmHp5fl-zt3tPCgucMogpLQ\"", + "icons": { + "x16": "https://www.google.com/images/icons/feature/predictionapi-16.png", + "x32": "https://www.google.com/images/icons/feature/predictionapi-32.png" + }, + "id": "prediction:v1.5", + "kind": "discovery#restDescription", + "name": "prediction", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "alt": { + "default": "json", + "description": "Data format for the response.", + "enum": [ + "json" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json" + ], + "location": "query", + "type": "string" + }, + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "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.", + "location": "query", + "type": "string" + }, + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", + "location": "query", + "type": "string" + }, + "userIp": { + "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", + "location": "query", + "type": "string" + } + }, + "protocol": "rest", + "resources": { + "hostedmodels": { + "methods": { + "predict": { + "description": "Submit input and request an output against a hosted model.", + "httpMethod": "POST", + "id": "prediction.hostedmodels.predict", + "parameterOrder": [ + "hostedModelName" + ], + "parameters": { + "hostedModelName": { + "description": "The name of a hosted model.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "hostedmodels/{hostedModelName}/predict", + "request": { + "$ref": "Input" + }, + "response": { + "$ref": "Output" + }, + "scopes": [ + "https://www.googleapis.com/auth/prediction" + ] + } + } + }, + "trainedmodels": { + "methods": { + "analyze": { + "description": "Get analysis of the model and the data the model was trained on.", + "httpMethod": "GET", + "id": "prediction.trainedmodels.analyze", + "parameterOrder": [ + "id" + ], + "parameters": { + "id": { + "description": "The unique name for the predictive model.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "trainedmodels/{id}/analyze", + "response": { + "$ref": "Analyze" + }, + "scopes": [ + "https://www.googleapis.com/auth/prediction" + ] + }, + "delete": { + "description": "Delete a trained model.", + "httpMethod": "DELETE", + "id": "prediction.trainedmodels.delete", + "parameterOrder": [ + "id" + ], + "parameters": { + "id": { + "description": "The unique name for the predictive model.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "trainedmodels/{id}", + "scopes": [ + "https://www.googleapis.com/auth/prediction" + ] + }, + "get": { + "description": "Check training status of your model.", + "httpMethod": "GET", + "id": "prediction.trainedmodels.get", + "parameterOrder": [ + "id" + ], + "parameters": { + "id": { + "description": "The unique name for the predictive model.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "trainedmodels/{id}", + "response": { + "$ref": "Training" + }, + "scopes": [ + "https://www.googleapis.com/auth/prediction" + ] + }, + "insert": { + "description": "Begin training your model.", + "httpMethod": "POST", + "id": "prediction.trainedmodels.insert", + "path": "trainedmodels", + "request": { + "$ref": "Training" + }, + "response": { + "$ref": "Training" + }, + "scopes": [ + "https://www.googleapis.com/auth/devstorage.full_control", + "https://www.googleapis.com/auth/devstorage.read_only", + "https://www.googleapis.com/auth/devstorage.read_write", + "https://www.googleapis.com/auth/prediction" + ] + }, + "list": { + "description": "List available models.", + "httpMethod": "GET", + "id": "prediction.trainedmodels.list", + "parameters": { + "maxResults": { + "description": "Maximum number of results to return", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "pageToken": { + "description": "Pagination token", + "location": "query", + "type": "string" + } + }, + "path": "trainedmodels/list", + "response": { + "$ref": "List" + }, + "scopes": [ + "https://www.googleapis.com/auth/prediction" + ] + }, + "predict": { + "description": "Submit model id and request a prediction.", + "httpMethod": "POST", + "id": "prediction.trainedmodels.predict", + "parameterOrder": [ + "id" + ], + "parameters": { + "id": { + "description": "The unique name for the predictive model.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "trainedmodels/{id}/predict", + "request": { + "$ref": "Input" + }, + "response": { + "$ref": "Output" + }, + "scopes": [ + "https://www.googleapis.com/auth/prediction" + ] + }, + "update": { + "description": "Add new data to a trained model.", + "httpMethod": "PUT", + "id": "prediction.trainedmodels.update", + "parameterOrder": [ + "id" + ], + "parameters": { + "id": { + "description": "The unique name for the predictive model.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "trainedmodels/{id}", + "request": { + "$ref": "Update" + }, + "response": { + "$ref": "Training" + }, + "scopes": [ + "https://www.googleapis.com/auth/prediction" + ] + } + } + } + }, + "revision": "20160511", + "rootUrl": "https://www.googleapis.com/", + "schemas": { + "Analyze": { + "id": "Analyze", + "properties": { + "dataDescription": { + "description": "Description of the data the model was trained on.", "properties": { - "count": { - "type": "string", - "description": "Number of times the output label occurred in the data set.", - "format": "int64" - }, - "value": { - "type": "string", - "description": "The output label." - } - } - } + "features": { + "description": "Description of the input features in the data set.", + "items": { + "properties": { + "categorical": { + "description": "Description of the categorical values of this feature.", + "properties": { + "count": { + "description": "Number of categorical values for this feature in the data.", + "format": "int64", + "type": "string" + }, + "values": { + "description": "List of all the categories for this feature in the data set.", + "items": { + "properties": { + "count": { + "description": "Number of times this feature had this value.", + "format": "int64", + "type": "string" + }, + "value": { + "description": "The category name.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + } + }, + "type": "object" + }, + "index": { + "description": "The feature index.", + "format": "int64", + "type": "string" + }, + "numeric": { + "description": "Description of the numeric values of this feature.", + "properties": { + "count": { + "description": "Number of numeric values for this feature in the data set.", + "format": "int64", + "type": "string" + }, + "mean": { + "description": "Mean of the numeric values of this feature in the data set.", + "format": "double", + "type": "number" + }, + "variance": { + "description": "Variance of the numeric values of this feature in the data set.", + "format": "double", + "type": "number" + } + }, + "type": "object" + }, + "text": { + "description": "Description of multiple-word text values of this feature.", + "properties": { + "count": { + "description": "Number of multiple-word text values for this feature.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "type": "array" + }, + "outputFeature": { + "description": "Description of the output value or label.", + "properties": { + "numeric": { + "description": "Description of the output values in the data set.", + "properties": { + "count": { + "description": "Number of numeric output values in the data set.", + "format": "int64", + "type": "string" + }, + "mean": { + "description": "Mean of the output values in the data set.", + "format": "double", + "type": "number" + }, + "variance": { + "description": "Variance of the output values in the data set.", + "format": "double", + "type": "number" + } + }, + "type": "object" + }, + "text": { + "description": "Description of the output labels in the data set.", + "items": { + "properties": { + "count": { + "description": "Number of times the output label occurred in the data set.", + "format": "int64", + "type": "string" + }, + "value": { + "description": "The output label.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "errors": { + "description": "List of errors with the data.", + "items": { + "additionalProperties": { + "description": "Error level followed by a detailed error message.", + "type": "string" + }, + "type": "object" + }, + "type": "array" + }, + "id": { + "description": "The unique name for the predictive model.", + "type": "string" + }, + "kind": { + "default": "prediction#analyze", + "description": "What kind of resource this is.", + "type": "string" + }, + "modelDescription": { + "description": "Description of the model.", + "properties": { + "confusionMatrix": { + "additionalProperties": { + "additionalProperties": { + "format": "double", + "type": "number" + }, + "type": "object" + }, + "description": "An output confusion matrix. This shows an estimate for how this model will do in predictions. This is first indexed by the true class label. For each true class label, this provides a pair {predicted_label, count}, where count is the estimated number of times the model will predict the predicted label given the true label. Will not output if more then 100 classes [Categorical models only].", + "type": "object" + }, + "confusionMatrixRowTotals": { + "additionalProperties": { + "format": "double", + "type": "number" + }, + "description": "A list of the confusion matrix row totals", + "type": "object" + }, + "modelinfo": { + "$ref": "Training", + "description": "Basic information about the model." + } + }, + "type": "object" + }, + "selfLink": { + "description": "A URL to re-request this resource.", + "type": "string" } - } - } - } + }, + "type": "object" }, - "errors": { - "type": "array", - "description": "List of errors with the data.", - "items": { - "type": "object", - "additionalProperties": { - "type": "string", - "description": "Error level followed by a detailed error message." - } - } - }, - "id": { - "type": "string", - "description": "The unique name for the predictive model." - }, - "kind": { - "type": "string", - "description": "What kind of resource this is.", - "default": "prediction#analyze" - }, - "modelDescription": { - "type": "object", - "description": "Description of the model.", - "properties": { - "confusionMatrix": { - "type": "object", - "description": "An output confusion matrix. This shows an estimate for how this model will do in predictions. This is first indexed by the true class label. For each true class label, this provides a pair {predicted_label, count}, where count is the estimated number of times the model will predict the predicted label given the true label. Will not output if more then 100 classes [Categorical models only].", - "additionalProperties": { - "type": "object", - "additionalProperties": { - "type": "number", - "format": "double" + "Input": { + "id": "Input", + "properties": { + "input": { + "description": "Input to the model for a prediction", + "properties": { + "csvInstance": { + "description": "A list of input features, these can be strings or doubles.", + "items": { + "type": "any" + }, + "type": "array" + } + }, + "type": "object" } - } }, - "confusionMatrixRowTotals": { - "type": "object", - "description": "A list of the confusion matrix row totals", - "additionalProperties": { - "type": "number", - "format": "double" - } - }, - "modelinfo": { - "$ref": "Training", - "description": "Basic information about the model." - } - } + "type": "object" }, - "selfLink": { - "type": "string", - "description": "A URL to re-request this resource." - } - } - }, - "Input": { - "id": "Input", - "type": "object", - "properties": { - "input": { - "type": "object", - "description": "Input to the model for a prediction", - "properties": { - "csvInstance": { - "type": "array", - "description": "A list of input features, these can be strings or doubles.", - "items": { - "type": "any" - } - } - } - } - } - }, - "List": { - "id": "List", - "type": "object", - "properties": { - "items": { - "type": "array", - "description": "List of models.", - "items": { - "$ref": "Training" - } - }, - "kind": { - "type": "string", - "description": "What kind of resource this is.", - "default": "prediction#list" - }, - "nextPageToken": { - "type": "string", - "description": "Pagination token to fetch the next page, if one exists." - }, - "selfLink": { - "type": "string", - "description": "A URL to re-request this resource." - } - } - }, - "Output": { - "id": "Output", - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "The unique name for the predictive model." - }, - "kind": { - "type": "string", - "description": "What kind of resource this is.", - "default": "prediction#output" - }, - "outputLabel": { - "type": "string", - "description": "The most likely class label [Categorical models only]." - }, - "outputMulti": { - "type": "array", - "description": "A list of class labels with their estimated probabilities [Categorical models only].", - "items": { - "type": "object", + "List": { + "id": "List", "properties": { - "label": { - "type": "string", - "description": "The class label." - }, - "score": { - "type": "number", - "description": "The probability of the class label.", - "format": "double" - } - } - } - }, - "outputValue": { - "type": "number", - "description": "The estimated regression value [Regression models only].", - "format": "double" - }, - "selfLink": { - "type": "string", - "description": "A URL to re-request this resource." - } - } - }, - "Training": { - "id": "Training", - "type": "object", - "properties": { - "created": { - "type": "string", - "description": "Insert time of the model (as a RFC 3339 timestamp).", - "format": "date-time" - }, - "id": { - "type": "string", - "description": "The unique name for the predictive model." - }, - "kind": { - "type": "string", - "description": "What kind of resource this is.", - "default": "prediction#training" - }, - "modelInfo": { - "type": "object", - "description": "Model metadata.", - "properties": { - "classWeightedAccuracy": { - "type": "number", - "description": "Estimated accuracy of model taking utility weights into account [Categorical models only].", - "format": "double" - }, - "classificationAccuracy": { - "type": "number", - "description": "A number between 0.0 and 1.0, where 1.0 is 100% accurate. This is an estimate, based on the amount and quality of the training data, of the estimated prediction accuracy. You can use this is a guide to decide whether the results are accurate enough for your needs. This estimate will be more reliable if your real input data is similar to your training data [Categorical models only].", - "format": "double" - }, - "meanSquaredError": { - "type": "number", - "description": "An estimated mean squared error. The can be used to measure the quality of the predicted model [Regression models only].", - "format": "double" - }, - "modelType": { - "type": "string", - "description": "Type of predictive model (CLASSIFICATION or REGRESSION)" - }, - "numberInstances": { - "type": "string", - "description": "Number of valid data instances used in the trained model.", - "format": "int64" - }, - "numberLabels": { - "type": "string", - "description": "Number of class labels in the trained model [Categorical models only].", - "format": "int64" - } - } - }, - "modelType": { - "type": "string", - "description": "Type of predictive model (classification or regression)" - }, - "selfLink": { - "type": "string", - "description": "A URL to re-request this resource." - }, - "storageDataLocation": { - "type": "string", - "description": "Google storage location of the training data file." - }, - "storagePMMLLocation": { - "type": "string", - "description": "Google storage location of the preprocessing pmml file." - }, - "storagePMMLModelLocation": { - "type": "string", - "description": "Google storage location of the pmml model file." - }, - "trainingComplete": { - "type": "string", - "description": "Training completion time (as a RFC 3339 timestamp).", - "format": "date-time" - }, - "trainingInstances": { - "type": "array", - "description": "Instances to train model on.", - "items": { - "type": "object", - "properties": { - "csvInstance": { - "type": "array", - "description": "The input features for this instance", "items": { - "type": "any" + "description": "List of models.", + "items": { + "$ref": "Training" + }, + "type": "array" + }, + "kind": { + "default": "prediction#list", + "description": "What kind of resource this is.", + "type": "string" + }, + "nextPageToken": { + "description": "Pagination token to fetch the next page, if one exists.", + "type": "string" + }, + "selfLink": { + "description": "A URL to re-request this resource.", + "type": "string" } - }, - "output": { - "type": "string", - "description": "The generic output value - could be regression or class label" - } - } - } - }, - "trainingStatus": { - "type": "string", - "description": "The current status of the training job. This can be one of following: RUNNING; DONE; ERROR; ERROR: TRAINING JOB NOT FOUND" - }, - "utility": { - "type": "array", - "description": "A class weighting function, which allows the importance weights for class labels to be specified [Categorical models only].", - "items": { - "type": "object", - "description": "Class label (string).", - "additionalProperties": { - "type": "number", - "format": "double" - } - } - } - } - }, - "Update": { - "id": "Update", - "type": "object", - "properties": { - "csvInstance": { - "type": "array", - "description": "The input features for this instance", - "items": { - "type": "any" - } - }, - "label": { - "type": "string", - "description": "The class label of this instance" - }, - "output": { - "type": "string", - "description": "The generic output value - could be regression value or class label" - } - } - } - }, - "resources": { - "hostedmodels": { - "methods": { - "predict": { - "id": "prediction.hostedmodels.predict", - "path": "hostedmodels/{hostedModelName}/predict", - "httpMethod": "POST", - "description": "Submit input and request an output against a hosted model.", - "parameters": { - "hostedModelName": { - "type": "string", - "description": "The name of a hosted model.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "hostedModelName" - ], - "request": { - "$ref": "Input" - }, - "response": { - "$ref": "Output" - }, - "scopes": [ - "https://www.googleapis.com/auth/prediction" - ] - } - } - }, - "trainedmodels": { - "methods": { - "analyze": { - "id": "prediction.trainedmodels.analyze", - "path": "trainedmodels/{id}/analyze", - "httpMethod": "GET", - "description": "Get analysis of the model and the data the model was trained on.", - "parameters": { - "id": { - "type": "string", - "description": "The unique name for the predictive model.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "id" - ], - "response": { - "$ref": "Analyze" - }, - "scopes": [ - "https://www.googleapis.com/auth/prediction" - ] - }, - "delete": { - "id": "prediction.trainedmodels.delete", - "path": "trainedmodels/{id}", - "httpMethod": "DELETE", - "description": "Delete a trained model.", - "parameters": { - "id": { - "type": "string", - "description": "The unique name for the predictive model.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "id" - ], - "scopes": [ - "https://www.googleapis.com/auth/prediction" - ] - }, - "get": { - "id": "prediction.trainedmodels.get", - "path": "trainedmodels/{id}", - "httpMethod": "GET", - "description": "Check training status of your model.", - "parameters": { - "id": { - "type": "string", - "description": "The unique name for the predictive model.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "id" - ], - "response": { - "$ref": "Training" - }, - "scopes": [ - "https://www.googleapis.com/auth/prediction" - ] - }, - "insert": { - "id": "prediction.trainedmodels.insert", - "path": "trainedmodels", - "httpMethod": "POST", - "description": "Begin training your model.", - "request": { - "$ref": "Training" - }, - "response": { - "$ref": "Training" - }, - "scopes": [ - "https://www.googleapis.com/auth/devstorage.full_control", - "https://www.googleapis.com/auth/devstorage.read_only", - "https://www.googleapis.com/auth/devstorage.read_write", - "https://www.googleapis.com/auth/prediction" - ] - }, - "list": { - "id": "prediction.trainedmodels.list", - "path": "trainedmodels/list", - "httpMethod": "GET", - "description": "List available models.", - "parameters": { - "maxResults": { - "type": "integer", - "description": "Maximum number of results to return", - "format": "uint32", - "minimum": "0", - "location": "query" }, - "pageToken": { - "type": "string", - "description": "Pagination token", - "location": "query" - } - }, - "response": { - "$ref": "List" - }, - "scopes": [ - "https://www.googleapis.com/auth/prediction" - ] + "type": "object" }, - "predict": { - "id": "prediction.trainedmodels.predict", - "path": "trainedmodels/{id}/predict", - "httpMethod": "POST", - "description": "Submit model id and request a prediction.", - "parameters": { - "id": { - "type": "string", - "description": "The unique name for the predictive model.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "id" - ], - "request": { - "$ref": "Input" - }, - "response": { - "$ref": "Output" - }, - "scopes": [ - "https://www.googleapis.com/auth/prediction" - ] + "Output": { + "id": "Output", + "properties": { + "id": { + "description": "The unique name for the predictive model.", + "type": "string" + }, + "kind": { + "default": "prediction#output", + "description": "What kind of resource this is.", + "type": "string" + }, + "outputLabel": { + "description": "The most likely class label [Categorical models only].", + "type": "string" + }, + "outputMulti": { + "description": "A list of class labels with their estimated probabilities [Categorical models only].", + "items": { + "properties": { + "label": { + "description": "The class label.", + "type": "string" + }, + "score": { + "description": "The probability of the class label.", + "format": "double", + "type": "number" + } + }, + "type": "object" + }, + "type": "array" + }, + "outputValue": { + "description": "The estimated regression value [Regression models only].", + "format": "double", + "type": "number" + }, + "selfLink": { + "description": "A URL to re-request this resource.", + "type": "string" + } + }, + "type": "object" }, - "update": { - "id": "prediction.trainedmodels.update", - "path": "trainedmodels/{id}", - "httpMethod": "PUT", - "description": "Add new data to a trained model.", - "parameters": { - "id": { - "type": "string", - "description": "The unique name for the predictive model.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "id" - ], - "request": { - "$ref": "Update" - }, - "response": { - "$ref": "Training" - }, - "scopes": [ - "https://www.googleapis.com/auth/prediction" - ] + "Training": { + "id": "Training", + "properties": { + "created": { + "description": "Insert time of the model (as a RFC 3339 timestamp).", + "format": "date-time", + "type": "string" + }, + "id": { + "description": "The unique name for the predictive model.", + "type": "string" + }, + "kind": { + "default": "prediction#training", + "description": "What kind of resource this is.", + "type": "string" + }, + "modelInfo": { + "description": "Model metadata.", + "properties": { + "classWeightedAccuracy": { + "description": "Estimated accuracy of model taking utility weights into account [Categorical models only].", + "format": "double", + "type": "number" + }, + "classificationAccuracy": { + "description": "A number between 0.0 and 1.0, where 1.0 is 100% accurate. This is an estimate, based on the amount and quality of the training data, of the estimated prediction accuracy. You can use this is a guide to decide whether the results are accurate enough for your needs. This estimate will be more reliable if your real input data is similar to your training data [Categorical models only].", + "format": "double", + "type": "number" + }, + "meanSquaredError": { + "description": "An estimated mean squared error. The can be used to measure the quality of the predicted model [Regression models only].", + "format": "double", + "type": "number" + }, + "modelType": { + "description": "Type of predictive model (CLASSIFICATION or REGRESSION)", + "type": "string" + }, + "numberInstances": { + "description": "Number of valid data instances used in the trained model.", + "format": "int64", + "type": "string" + }, + "numberLabels": { + "description": "Number of class labels in the trained model [Categorical models only].", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "modelType": { + "description": "Type of predictive model (classification or regression)", + "type": "string" + }, + "selfLink": { + "description": "A URL to re-request this resource.", + "type": "string" + }, + "storageDataLocation": { + "description": "Google storage location of the training data file.", + "type": "string" + }, + "storagePMMLLocation": { + "description": "Google storage location of the preprocessing pmml file.", + "type": "string" + }, + "storagePMMLModelLocation": { + "description": "Google storage location of the pmml model file.", + "type": "string" + }, + "trainingComplete": { + "description": "Training completion time (as a RFC 3339 timestamp).", + "format": "date-time", + "type": "string" + }, + "trainingInstances": { + "description": "Instances to train model on.", + "items": { + "properties": { + "csvInstance": { + "description": "The input features for this instance", + "items": { + "type": "any" + }, + "type": "array" + }, + "output": { + "description": "The generic output value - could be regression or class label", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "trainingStatus": { + "description": "The current status of the training job. This can be one of following: RUNNING; DONE; ERROR; ERROR: TRAINING JOB NOT FOUND", + "type": "string" + }, + "utility": { + "description": "A class weighting function, which allows the importance weights for class labels to be specified [Categorical models only].", + "items": { + "additionalProperties": { + "format": "double", + "type": "number" + }, + "description": "Class label (string).", + "type": "object" + }, + "type": "array" + } + }, + "type": "object" + }, + "Update": { + "id": "Update", + "properties": { + "csvInstance": { + "description": "The input features for this instance", + "items": { + "type": "any" + }, + "type": "array" + }, + "label": { + "description": "The class label of this instance", + "type": "string" + }, + "output": { + "description": "The generic output value - could be regression value or class label", + "type": "string" + } + }, + "type": "object" } - } - } - } -} + }, + "servicePath": "prediction/v1.5/", + "title": "Prediction API", + "version": "v1.5" +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/prediction/v1.6/prediction-api.json b/vendor/google.golang.org/api/prediction/v1.6/prediction-api.json index 00012fabc..5aa2f9797 100644 --- a/vendor/google.golang.org/api/prediction/v1.6/prediction-api.json +++ b/vendor/google.golang.org/api/prediction/v1.6/prediction-api.json @@ -1,790 +1,790 @@ { - "kind": "discovery#restDescription", - "etag": "\"YWOzh2SDasdU84ArJnpYek-OMdg/YsFEJnq5UeoemkjE7DFhTi6r2Gw\"", - "discoveryVersion": "v1", - "id": "prediction:v1.6", - "name": "prediction", - "version": "v1.6", - "revision": "20160511", - "title": "Prediction API", - "description": "Lets you access a cloud hosted machine learning service that makes it easy to build smart apps", - "ownerDomain": "google.com", - "ownerName": "Google", - "icons": { - "x16": "https://www.google.com/images/icons/feature/predictionapi-16.png", - "x32": "https://www.google.com/images/icons/feature/predictionapi-32.png" - }, - "documentationLink": "https://developers.google.com/prediction/docs/developer-guide", - "protocol": "rest", - "baseUrl": "https://www.googleapis.com/prediction/v1.6/projects/", - "basePath": "/prediction/v1.6/projects/", - "rootUrl": "https://www.googleapis.com/", - "servicePath": "prediction/v1.6/projects/", - "batchPath": "batch/prediction/v1.6", - "parameters": { - "alt": { - "type": "string", - "description": "Data format for the response.", - "default": "json", - "enum": [ - "json" - ], - "enumDescriptions": [ - "Responses with Content-Type of application/json" - ], - "location": "query" - }, - "fields": { - "type": "string", - "description": "Selector specifying which fields to include in a partial response.", - "location": "query" - }, - "key": { - "type": "string", - "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" - }, - "oauth_token": { - "type": "string", - "description": "OAuth 2.0 token for the current user.", - "location": "query" - }, - "prettyPrint": { - "type": "boolean", - "description": "Returns response with indentations and line breaks.", - "default": "true", - "location": "query" - }, - "quotaUser": { - "type": "string", - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", - "location": "query" - }, - "userIp": { - "type": "string", - "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", - "location": "query" - } - }, - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/cloud-platform": { - "description": "View and manage your data across Google Cloud Platform services" - }, - "https://www.googleapis.com/auth/devstorage.full_control": { - "description": "Manage your data and permissions in Google Cloud Storage" - }, - "https://www.googleapis.com/auth/devstorage.read_only": { - "description": "View your data in Google Cloud Storage" - }, - "https://www.googleapis.com/auth/devstorage.read_write": { - "description": "Manage your data in Google Cloud Storage" - }, - "https://www.googleapis.com/auth/prediction": { - "description": "Manage your data in the Google Prediction API" - } - } - } - }, - "schemas": { - "Analyze": { - "id": "Analyze", - "type": "object", - "properties": { - "dataDescription": { - "type": "object", - "description": "Description of the data the model was trained on.", - "properties": { - "features": { - "type": "array", - "description": "Description of the input features in the data set.", - "items": { - "type": "object", - "properties": { - "categorical": { - "type": "object", - "description": "Description of the categorical values of this feature.", - "properties": { - "count": { - "type": "string", - "description": "Number of categorical values for this feature in the data.", - "format": "int64" - }, - "values": { - "type": "array", - "description": "List of all the categories for this feature in the data set.", - "items": { - "type": "object", - "properties": { - "count": { - "type": "string", - "description": "Number of times this feature had this value.", - "format": "int64" - }, - "value": { - "type": "string", - "description": "The category name." - } - } - } - } - } - }, - "index": { - "type": "string", - "description": "The feature index.", - "format": "int64" - }, - "numeric": { - "type": "object", - "description": "Description of the numeric values of this feature.", - "properties": { - "count": { - "type": "string", - "description": "Number of numeric values for this feature in the data set.", - "format": "int64" - }, - "mean": { - "type": "string", - "description": "Mean of the numeric values of this feature in the data set." - }, - "variance": { - "type": "string", - "description": "Variance of the numeric values of this feature in the data set." - } - } - }, - "text": { - "type": "object", - "description": "Description of multiple-word text values of this feature.", - "properties": { - "count": { - "type": "string", - "description": "Number of multiple-word text values for this feature.", - "format": "int64" - } - } - } - } - } - }, - "outputFeature": { - "type": "object", - "description": "Description of the output value or label.", - "properties": { - "numeric": { - "type": "object", - "description": "Description of the output values in the data set.", - "properties": { - "count": { - "type": "string", - "description": "Number of numeric output values in the data set.", - "format": "int64" - }, - "mean": { - "type": "string", - "description": "Mean of the output values in the data set." - }, - "variance": { - "type": "string", - "description": "Variance of the output values in the data set." - } - } + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/cloud-platform": { + "description": "View and manage your data across Google Cloud Platform services" }, - "text": { - "type": "array", - "description": "Description of the output labels in the data set.", - "items": { - "type": "object", + "https://www.googleapis.com/auth/devstorage.full_control": { + "description": "Manage your data and permissions in Google Cloud Storage" + }, + "https://www.googleapis.com/auth/devstorage.read_only": { + "description": "View your data in Google Cloud Storage" + }, + "https://www.googleapis.com/auth/devstorage.read_write": { + "description": "Manage your data in Google Cloud Storage" + }, + "https://www.googleapis.com/auth/prediction": { + "description": "Manage your data in the Google Prediction API" + } + } + } + }, + "basePath": "/prediction/v1.6/projects/", + "baseUrl": "https://www.googleapis.com/prediction/v1.6/projects/", + "batchPath": "batch/prediction/v1.6", + "description": "Lets you access a cloud hosted machine learning service that makes it easy to build smart apps", + "discoveryVersion": "v1", + "documentationLink": "https://developers.google.com/prediction/docs/developer-guide", + "etag": "\"-iA1DTNe4s-I6JZXPt1t1Ypy8IU/YsFEJnq5UeoemkjE7DFhTi6r2Gw\"", + "icons": { + "x16": "https://www.google.com/images/icons/feature/predictionapi-16.png", + "x32": "https://www.google.com/images/icons/feature/predictionapi-32.png" + }, + "id": "prediction:v1.6", + "kind": "discovery#restDescription", + "name": "prediction", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "alt": { + "default": "json", + "description": "Data format for the response.", + "enum": [ + "json" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json" + ], + "location": "query", + "type": "string" + }, + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "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.", + "location": "query", + "type": "string" + }, + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", + "location": "query", + "type": "string" + }, + "userIp": { + "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", + "location": "query", + "type": "string" + } + }, + "protocol": "rest", + "resources": { + "hostedmodels": { + "methods": { + "predict": { + "description": "Submit input and request an output against a hosted model.", + "httpMethod": "POST", + "id": "prediction.hostedmodels.predict", + "parameterOrder": [ + "project", + "hostedModelName" + ], + "parameters": { + "hostedModelName": { + "description": "The name of a hosted model.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "The project associated with the model.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/hostedmodels/{hostedModelName}/predict", + "request": { + "$ref": "Input" + }, + "response": { + "$ref": "Output" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/prediction" + ] + } + } + }, + "trainedmodels": { + "methods": { + "analyze": { + "description": "Get analysis of the model and the data the model was trained on.", + "httpMethod": "GET", + "id": "prediction.trainedmodels.analyze", + "parameterOrder": [ + "project", + "id" + ], + "parameters": { + "id": { + "description": "The unique name for the predictive model.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "The project associated with the model.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/trainedmodels/{id}/analyze", + "response": { + "$ref": "Analyze" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/prediction" + ] + }, + "delete": { + "description": "Delete a trained model.", + "httpMethod": "DELETE", + "id": "prediction.trainedmodels.delete", + "parameterOrder": [ + "project", + "id" + ], + "parameters": { + "id": { + "description": "The unique name for the predictive model.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "The project associated with the model.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/trainedmodels/{id}", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/prediction" + ] + }, + "get": { + "description": "Check training status of your model.", + "httpMethod": "GET", + "id": "prediction.trainedmodels.get", + "parameterOrder": [ + "project", + "id" + ], + "parameters": { + "id": { + "description": "The unique name for the predictive model.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "The project associated with the model.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/trainedmodels/{id}", + "response": { + "$ref": "Insert2" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/prediction" + ] + }, + "insert": { + "description": "Train a Prediction API model.", + "httpMethod": "POST", + "id": "prediction.trainedmodels.insert", + "parameterOrder": [ + "project" + ], + "parameters": { + "project": { + "description": "The project associated with the model.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/trainedmodels", + "request": { + "$ref": "Insert" + }, + "response": { + "$ref": "Insert2" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/devstorage.full_control", + "https://www.googleapis.com/auth/devstorage.read_only", + "https://www.googleapis.com/auth/devstorage.read_write", + "https://www.googleapis.com/auth/prediction" + ] + }, + "list": { + "description": "List available models.", + "httpMethod": "GET", + "id": "prediction.trainedmodels.list", + "parameterOrder": [ + "project" + ], + "parameters": { + "maxResults": { + "description": "Maximum number of results to return.", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "pageToken": { + "description": "Pagination token.", + "location": "query", + "type": "string" + }, + "project": { + "description": "The project associated with the model.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/trainedmodels/list", + "response": { + "$ref": "List" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/prediction" + ] + }, + "predict": { + "description": "Submit model id and request a prediction.", + "httpMethod": "POST", + "id": "prediction.trainedmodels.predict", + "parameterOrder": [ + "project", + "id" + ], + "parameters": { + "id": { + "description": "The unique name for the predictive model.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "The project associated with the model.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/trainedmodels/{id}/predict", + "request": { + "$ref": "Input" + }, + "response": { + "$ref": "Output" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/prediction" + ] + }, + "update": { + "description": "Add new data to a trained model.", + "httpMethod": "PUT", + "id": "prediction.trainedmodels.update", + "parameterOrder": [ + "project", + "id" + ], + "parameters": { + "id": { + "description": "The unique name for the predictive model.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "The project associated with the model.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/trainedmodels/{id}", + "request": { + "$ref": "Update" + }, + "response": { + "$ref": "Insert2" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/prediction" + ] + } + } + } + }, + "revision": "20160511", + "rootUrl": "https://www.googleapis.com/", + "schemas": { + "Analyze": { + "id": "Analyze", + "properties": { + "dataDescription": { + "description": "Description of the data the model was trained on.", "properties": { - "count": { - "type": "string", - "description": "Number of times the output label occurred in the data set.", - "format": "int64" - }, - "value": { - "type": "string", - "description": "The output label." - } - } - } + "features": { + "description": "Description of the input features in the data set.", + "items": { + "properties": { + "categorical": { + "description": "Description of the categorical values of this feature.", + "properties": { + "count": { + "description": "Number of categorical values for this feature in the data.", + "format": "int64", + "type": "string" + }, + "values": { + "description": "List of all the categories for this feature in the data set.", + "items": { + "properties": { + "count": { + "description": "Number of times this feature had this value.", + "format": "int64", + "type": "string" + }, + "value": { + "description": "The category name.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + } + }, + "type": "object" + }, + "index": { + "description": "The feature index.", + "format": "int64", + "type": "string" + }, + "numeric": { + "description": "Description of the numeric values of this feature.", + "properties": { + "count": { + "description": "Number of numeric values for this feature in the data set.", + "format": "int64", + "type": "string" + }, + "mean": { + "description": "Mean of the numeric values of this feature in the data set.", + "type": "string" + }, + "variance": { + "description": "Variance of the numeric values of this feature in the data set.", + "type": "string" + } + }, + "type": "object" + }, + "text": { + "description": "Description of multiple-word text values of this feature.", + "properties": { + "count": { + "description": "Number of multiple-word text values for this feature.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "type": "array" + }, + "outputFeature": { + "description": "Description of the output value or label.", + "properties": { + "numeric": { + "description": "Description of the output values in the data set.", + "properties": { + "count": { + "description": "Number of numeric output values in the data set.", + "format": "int64", + "type": "string" + }, + "mean": { + "description": "Mean of the output values in the data set.", + "type": "string" + }, + "variance": { + "description": "Variance of the output values in the data set.", + "type": "string" + } + }, + "type": "object" + }, + "text": { + "description": "Description of the output labels in the data set.", + "items": { + "properties": { + "count": { + "description": "Number of times the output label occurred in the data set.", + "format": "int64", + "type": "string" + }, + "value": { + "description": "The output label.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "errors": { + "description": "List of errors with the data.", + "items": { + "additionalProperties": { + "description": "Error level followed by a detailed error message.", + "type": "string" + }, + "type": "object" + }, + "type": "array" + }, + "id": { + "description": "The unique name for the predictive model.", + "type": "string" + }, + "kind": { + "default": "prediction#analyze", + "description": "What kind of resource this is.", + "type": "string" + }, + "modelDescription": { + "description": "Description of the model.", + "properties": { + "confusionMatrix": { + "additionalProperties": { + "additionalProperties": { + "description": "Average number of times an instance with correct class label modelDescription.confusionMatrix.(key) was wrongfully classified as this label.", + "type": "string" + }, + "description": "Confusion matrix information for the true class label.", + "type": "object" + }, + "description": "An output confusion matrix. This shows an estimate for how this model will do in predictions. This is first indexed by the true class label. For each true class label, this provides a pair {predicted_label, count}, where count is the estimated number of times the model will predict the predicted label given the true label. Will not output if more then 100 classes (Categorical models only).", + "type": "object" + }, + "confusionMatrixRowTotals": { + "additionalProperties": { + "type": "string" + }, + "description": "A list of the confusion matrix row totals.", + "type": "object" + }, + "modelinfo": { + "$ref": "Insert2", + "description": "Basic information about the model." + } + }, + "type": "object" + }, + "selfLink": { + "description": "A URL to re-request this resource.", + "type": "string" } - } - } - } - }, - "errors": { - "type": "array", - "description": "List of errors with the data.", - "items": { - "type": "object", - "additionalProperties": { - "type": "string", - "description": "Error level followed by a detailed error message." - } - } - }, - "id": { - "type": "string", - "description": "The unique name for the predictive model." - }, - "kind": { - "type": "string", - "description": "What kind of resource this is.", - "default": "prediction#analyze" - }, - "modelDescription": { - "type": "object", - "description": "Description of the model.", - "properties": { - "confusionMatrix": { - "type": "object", - "description": "An output confusion matrix. This shows an estimate for how this model will do in predictions. This is first indexed by the true class label. For each true class label, this provides a pair {predicted_label, count}, where count is the estimated number of times the model will predict the predicted label given the true label. Will not output if more then 100 classes (Categorical models only).", - "additionalProperties": { - "type": "object", - "description": "Confusion matrix information for the true class label.", - "additionalProperties": { - "type": "string", - "description": "Average number of times an instance with correct class label modelDescription.confusionMatrix.(key) was wrongfully classified as this label." - } - } }, - "confusionMatrixRowTotals": { - "type": "object", - "description": "A list of the confusion matrix row totals.", - "additionalProperties": { - "type": "string" - } - }, - "modelinfo": { - "$ref": "Insert2", - "description": "Basic information about the model." - } - } + "type": "object" }, - "selfLink": { - "type": "string", - "description": "A URL to re-request this resource." - } - } - }, - "Input": { - "id": "Input", - "type": "object", - "properties": { - "input": { - "type": "object", - "description": "Input to the model for a prediction.", - "properties": { - "csvInstance": { - "type": "array", - "description": "A list of input features, these can be strings or doubles.", - "items": { - "type": "any" - } - } - } - } - } - }, - "Insert": { - "id": "Insert", - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "The unique name for the predictive model." - }, - "modelType": { - "type": "string", - "description": "Type of predictive model (classification or regression)." - }, - "sourceModel": { - "type": "string", - "description": "The Id of the model to be copied over." - }, - "storageDataLocation": { - "type": "string", - "description": "Google storage location of the training data file." - }, - "storagePMMLLocation": { - "type": "string", - "description": "Google storage location of the preprocessing pmml file." - }, - "storagePMMLModelLocation": { - "type": "string", - "description": "Google storage location of the pmml model file." - }, - "trainingInstances": { - "type": "array", - "description": "Instances to train model on.", - "items": { - "type": "object", + "Input": { + "id": "Input", + "properties": { + "input": { + "description": "Input to the model for a prediction.", + "properties": { + "csvInstance": { + "description": "A list of input features, these can be strings or doubles.", + "items": { + "type": "any" + }, + "type": "array" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "Insert": { + "id": "Insert", + "properties": { + "id": { + "description": "The unique name for the predictive model.", + "type": "string" + }, + "modelType": { + "description": "Type of predictive model (classification or regression).", + "type": "string" + }, + "sourceModel": { + "description": "The Id of the model to be copied over.", + "type": "string" + }, + "storageDataLocation": { + "description": "Google storage location of the training data file.", + "type": "string" + }, + "storagePMMLLocation": { + "description": "Google storage location of the preprocessing pmml file.", + "type": "string" + }, + "storagePMMLModelLocation": { + "description": "Google storage location of the pmml model file.", + "type": "string" + }, + "trainingInstances": { + "description": "Instances to train model on.", + "items": { + "properties": { + "csvInstance": { + "description": "The input features for this instance.", + "items": { + "type": "any" + }, + "type": "array" + }, + "output": { + "description": "The generic output value - could be regression or class label.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "utility": { + "description": "A class weighting function, which allows the importance weights for class labels to be specified (Categorical models only).", + "items": { + "additionalProperties": { + "format": "double", + "type": "number" + }, + "description": "Class label (string).", + "type": "object" + }, + "type": "array" + } + }, + "type": "object" + }, + "Insert2": { + "id": "Insert2", + "properties": { + "created": { + "description": "Insert time of the model (as a RFC 3339 timestamp).", + "format": "date-time", + "type": "string" + }, + "id": { + "description": "The unique name for the predictive model.", + "type": "string" + }, + "kind": { + "default": "prediction#training", + "description": "What kind of resource this is.", + "type": "string" + }, + "modelInfo": { + "description": "Model metadata.", + "properties": { + "classWeightedAccuracy": { + "description": "Estimated accuracy of model taking utility weights into account (Categorical models only).", + "type": "string" + }, + "classificationAccuracy": { + "description": "A number between 0.0 and 1.0, where 1.0 is 100% accurate. This is an estimate, based on the amount and quality of the training data, of the estimated prediction accuracy. You can use this is a guide to decide whether the results are accurate enough for your needs. This estimate will be more reliable if your real input data is similar to your training data (Categorical models only).", + "type": "string" + }, + "meanSquaredError": { + "description": "An estimated mean squared error. The can be used to measure the quality of the predicted model (Regression models only).", + "type": "string" + }, + "modelType": { + "description": "Type of predictive model (CLASSIFICATION or REGRESSION).", + "type": "string" + }, + "numberInstances": { + "description": "Number of valid data instances used in the trained model.", + "format": "int64", + "type": "string" + }, + "numberLabels": { + "description": "Number of class labels in the trained model (Categorical models only).", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "modelType": { + "description": "Type of predictive model (CLASSIFICATION or REGRESSION).", + "type": "string" + }, + "selfLink": { + "description": "A URL to re-request this resource.", + "type": "string" + }, + "storageDataLocation": { + "description": "Google storage location of the training data file.", + "type": "string" + }, + "storagePMMLLocation": { + "description": "Google storage location of the preprocessing pmml file.", + "type": "string" + }, + "storagePMMLModelLocation": { + "description": "Google storage location of the pmml model file.", + "type": "string" + }, + "trainingComplete": { + "description": "Training completion time (as a RFC 3339 timestamp).", + "format": "date-time", + "type": "string" + }, + "trainingStatus": { + "description": "The current status of the training job. This can be one of following: RUNNING; DONE; ERROR; ERROR: TRAINING JOB NOT FOUND", + "type": "string" + } + }, + "type": "object" + }, + "List": { + "id": "List", "properties": { - "csvInstance": { - "type": "array", - "description": "The input features for this instance.", "items": { - "type": "any" + "description": "List of models.", + "items": { + "$ref": "Insert2" + }, + "type": "array" + }, + "kind": { + "default": "prediction#list", + "description": "What kind of resource this is.", + "type": "string" + }, + "nextPageToken": { + "description": "Pagination token to fetch the next page, if one exists.", + "type": "string" + }, + "selfLink": { + "description": "A URL to re-request this resource.", + "type": "string" } - }, - "output": { - "type": "string", - "description": "The generic output value - could be regression or class label." - } - } - } - }, - "utility": { - "type": "array", - "description": "A class weighting function, which allows the importance weights for class labels to be specified (Categorical models only).", - "items": { - "type": "object", - "description": "Class label (string).", - "additionalProperties": { - "type": "number", - "format": "double" - } - } - } - } - }, - "Insert2": { - "id": "Insert2", - "type": "object", - "properties": { - "created": { - "type": "string", - "description": "Insert time of the model (as a RFC 3339 timestamp).", - "format": "date-time" - }, - "id": { - "type": "string", - "description": "The unique name for the predictive model." - }, - "kind": { - "type": "string", - "description": "What kind of resource this is.", - "default": "prediction#training" - }, - "modelInfo": { - "type": "object", - "description": "Model metadata.", - "properties": { - "classWeightedAccuracy": { - "type": "string", - "description": "Estimated accuracy of model taking utility weights into account (Categorical models only)." }, - "classificationAccuracy": { - "type": "string", - "description": "A number between 0.0 and 1.0, where 1.0 is 100% accurate. This is an estimate, based on the amount and quality of the training data, of the estimated prediction accuracy. You can use this is a guide to decide whether the results are accurate enough for your needs. This estimate will be more reliable if your real input data is similar to your training data (Categorical models only)." - }, - "meanSquaredError": { - "type": "string", - "description": "An estimated mean squared error. The can be used to measure the quality of the predicted model (Regression models only)." - }, - "modelType": { - "type": "string", - "description": "Type of predictive model (CLASSIFICATION or REGRESSION)." - }, - "numberInstances": { - "type": "string", - "description": "Number of valid data instances used in the trained model.", - "format": "int64" - }, - "numberLabels": { - "type": "string", - "description": "Number of class labels in the trained model (Categorical models only).", - "format": "int64" - } - } + "type": "object" }, - "modelType": { - "type": "string", - "description": "Type of predictive model (CLASSIFICATION or REGRESSION)." - }, - "selfLink": { - "type": "string", - "description": "A URL to re-request this resource." - }, - "storageDataLocation": { - "type": "string", - "description": "Google storage location of the training data file." - }, - "storagePMMLLocation": { - "type": "string", - "description": "Google storage location of the preprocessing pmml file." - }, - "storagePMMLModelLocation": { - "type": "string", - "description": "Google storage location of the pmml model file." - }, - "trainingComplete": { - "type": "string", - "description": "Training completion time (as a RFC 3339 timestamp).", - "format": "date-time" - }, - "trainingStatus": { - "type": "string", - "description": "The current status of the training job. This can be one of following: RUNNING; DONE; ERROR; ERROR: TRAINING JOB NOT FOUND" - } - } - }, - "List": { - "id": "List", - "type": "object", - "properties": { - "items": { - "type": "array", - "description": "List of models.", - "items": { - "$ref": "Insert2" - } - }, - "kind": { - "type": "string", - "description": "What kind of resource this is.", - "default": "prediction#list" - }, - "nextPageToken": { - "type": "string", - "description": "Pagination token to fetch the next page, if one exists." - }, - "selfLink": { - "type": "string", - "description": "A URL to re-request this resource." - } - } - }, - "Output": { - "id": "Output", - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "The unique name for the predictive model." - }, - "kind": { - "type": "string", - "description": "What kind of resource this is.", - "default": "prediction#output" - }, - "outputLabel": { - "type": "string", - "description": "The most likely class label (Categorical models only)." - }, - "outputMulti": { - "type": "array", - "description": "A list of class labels with their estimated probabilities (Categorical models only).", - "items": { - "type": "object", + "Output": { + "id": "Output", "properties": { - "label": { - "type": "string", - "description": "The class label." - }, - "score": { - "type": "string", - "description": "The probability of the class label." - } - } - } + "id": { + "description": "The unique name for the predictive model.", + "type": "string" + }, + "kind": { + "default": "prediction#output", + "description": "What kind of resource this is.", + "type": "string" + }, + "outputLabel": { + "description": "The most likely class label (Categorical models only).", + "type": "string" + }, + "outputMulti": { + "description": "A list of class labels with their estimated probabilities (Categorical models only).", + "items": { + "properties": { + "label": { + "description": "The class label.", + "type": "string" + }, + "score": { + "description": "The probability of the class label.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "outputValue": { + "description": "The estimated regression value (Regression models only).", + "type": "string" + }, + "selfLink": { + "description": "A URL to re-request this resource.", + "type": "string" + } + }, + "type": "object" }, - "outputValue": { - "type": "string", - "description": "The estimated regression value (Regression models only)." - }, - "selfLink": { - "type": "string", - "description": "A URL to re-request this resource." + "Update": { + "id": "Update", + "properties": { + "csvInstance": { + "description": "The input features for this instance.", + "items": { + "type": "any" + }, + "type": "array" + }, + "output": { + "description": "The generic output value - could be regression or class label.", + "type": "string" + } + }, + "type": "object" } - } }, - "Update": { - "id": "Update", - "type": "object", - "properties": { - "csvInstance": { - "type": "array", - "description": "The input features for this instance.", - "items": { - "type": "any" - } - }, - "output": { - "type": "string", - "description": "The generic output value - could be regression or class label." - } - } - } - }, - "resources": { - "hostedmodels": { - "methods": { - "predict": { - "id": "prediction.hostedmodels.predict", - "path": "{project}/hostedmodels/{hostedModelName}/predict", - "httpMethod": "POST", - "description": "Submit input and request an output against a hosted model.", - "parameters": { - "hostedModelName": { - "type": "string", - "description": "The name of a hosted model.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "The project associated with the model.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "hostedModelName" - ], - "request": { - "$ref": "Input" - }, - "response": { - "$ref": "Output" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/prediction" - ] - } - } - }, - "trainedmodels": { - "methods": { - "analyze": { - "id": "prediction.trainedmodels.analyze", - "path": "{project}/trainedmodels/{id}/analyze", - "httpMethod": "GET", - "description": "Get analysis of the model and the data the model was trained on.", - "parameters": { - "id": { - "type": "string", - "description": "The unique name for the predictive model.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "The project associated with the model.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "id" - ], - "response": { - "$ref": "Analyze" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/prediction" - ] - }, - "delete": { - "id": "prediction.trainedmodels.delete", - "path": "{project}/trainedmodels/{id}", - "httpMethod": "DELETE", - "description": "Delete a trained model.", - "parameters": { - "id": { - "type": "string", - "description": "The unique name for the predictive model.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "The project associated with the model.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "id" - ], - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/prediction" - ] - }, - "get": { - "id": "prediction.trainedmodels.get", - "path": "{project}/trainedmodels/{id}", - "httpMethod": "GET", - "description": "Check training status of your model.", - "parameters": { - "id": { - "type": "string", - "description": "The unique name for the predictive model.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "The project associated with the model.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "id" - ], - "response": { - "$ref": "Insert2" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/prediction" - ] - }, - "insert": { - "id": "prediction.trainedmodels.insert", - "path": "{project}/trainedmodels", - "httpMethod": "POST", - "description": "Train a Prediction API model.", - "parameters": { - "project": { - "type": "string", - "description": "The project associated with the model.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "request": { - "$ref": "Insert" - }, - "response": { - "$ref": "Insert2" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/devstorage.full_control", - "https://www.googleapis.com/auth/devstorage.read_only", - "https://www.googleapis.com/auth/devstorage.read_write", - "https://www.googleapis.com/auth/prediction" - ] - }, - "list": { - "id": "prediction.trainedmodels.list", - "path": "{project}/trainedmodels/list", - "httpMethod": "GET", - "description": "List available models.", - "parameters": { - "maxResults": { - "type": "integer", - "description": "Maximum number of results to return.", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Pagination token.", - "location": "query" - }, - "project": { - "type": "string", - "description": "The project associated with the model.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "List" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/prediction" - ] - }, - "predict": { - "id": "prediction.trainedmodels.predict", - "path": "{project}/trainedmodels/{id}/predict", - "httpMethod": "POST", - "description": "Submit model id and request a prediction.", - "parameters": { - "id": { - "type": "string", - "description": "The unique name for the predictive model.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "The project associated with the model.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "id" - ], - "request": { - "$ref": "Input" - }, - "response": { - "$ref": "Output" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/prediction" - ] - }, - "update": { - "id": "prediction.trainedmodels.update", - "path": "{project}/trainedmodels/{id}", - "httpMethod": "PUT", - "description": "Add new data to a trained model.", - "parameters": { - "id": { - "type": "string", - "description": "The unique name for the predictive model.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "The project associated with the model.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "id" - ], - "request": { - "$ref": "Update" - }, - "response": { - "$ref": "Insert2" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/prediction" - ] - } - } - } - } -} + "servicePath": "prediction/v1.6/projects/", + "title": "Prediction API", + "version": "v1.6" +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/proximitybeacon/v1beta1/proximitybeacon-api.json b/vendor/google.golang.org/api/proximitybeacon/v1beta1/proximitybeacon-api.json index 715cf7762..5300e24f6 100644 --- a/vendor/google.golang.org/api/proximitybeacon/v1beta1/proximitybeacon-api.json +++ b/vendor/google.golang.org/api/proximitybeacon/v1beta1/proximitybeacon-api.json @@ -1,32 +1,576 @@ { - "rootUrl": "https://proximitybeacon.googleapis.com/", + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/userlocation.beacon.registry": { + "description": "View and modify your beacons" + } + } + } + }, "basePath": "", - "ownerDomain": "google.com", - "name": "proximitybeacon", + "baseUrl": "https://proximitybeacon.googleapis.com/", "batchPath": "batch", - "revision": "20180117", - "documentationLink": "https://developers.google.com/beacons/proximity/", - "id": "proximitybeacon:v1beta1", - "title": "Google Proximity Beacon API", + "description": "Registers, manages, indexes, and searches beacons.", "discoveryVersion": "v1", + "documentationLink": "https://developers.google.com/beacons/proximity/", + "icons": { + "x16": "http://www.google.com/images/icons/product/search-16.gif", + "x32": "http://www.google.com/images/icons/product/search-32.gif" + }, + "id": "proximitybeacon:v1beta1", + "kind": "discovery#restDescription", + "name": "proximitybeacon", + "ownerDomain": "google.com", "ownerName": "Google", - "version_module": true, + "parameters": { + "$.xgafv": { + "description": "V1 error format.", + "enum": [ + "1", + "2" + ], + "enumDescriptions": [ + "v1 error format", + "v2 error format" + ], + "location": "query", + "type": "string" + }, + "access_token": { + "description": "OAuth access token.", + "location": "query", + "type": "string" + }, + "alt": { + "default": "json", + "description": "Data format for response.", + "enum": [ + "json", + "media", + "proto" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json", + "Media download with context-dependent Content-Type", + "Responses with Content-Type of application/x-protobuf" + ], + "location": "query", + "type": "string" + }, + "bearer_token": { + "description": "OAuth bearer token.", + "location": "query", + "type": "string" + }, + "callback": { + "description": "JSONP", + "location": "query", + "type": "string" + }, + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "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.", + "location": "query", + "type": "string" + }, + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "pp": { + "default": "true", + "description": "Pretty-print response.", + "location": "query", + "type": "boolean" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", + "location": "query", + "type": "string" + }, + "uploadType": { + "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", + "location": "query", + "type": "string" + }, + "upload_protocol": { + "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", + "location": "query", + "type": "string" + } + }, + "protocol": "rest", "resources": { "beaconinfo": { "methods": { "getforobserved": { - "response": { - "$ref": "GetInfoForObservedBeaconsResponse" - }, - "parameterOrder": [], - "httpMethod": "POST", - "parameters": {}, - "flatPath": "v1beta1/beaconinfo:getforobserved", - "path": "v1beta1/beaconinfo:getforobserved", - "id": "proximitybeacon.beaconinfo.getforobserved", "description": "Given one or more beacon observations, returns any beacon information\nand attachments accessible to your application. Authorize by using the\n[API key](https://developers.google.com/beacons/proximity/get-started#request_a_browser_api_key)\nfor the application.", + "flatPath": "v1beta1/beaconinfo:getforobserved", + "httpMethod": "POST", + "id": "proximitybeacon.beaconinfo.getforobserved", + "parameterOrder": [], + "parameters": {}, + "path": "v1beta1/beaconinfo:getforobserved", "request": { "$ref": "GetInfoForObservedBeaconsRequest" + }, + "response": { + "$ref": "GetInfoForObservedBeaconsResponse" + } + } + } + }, + "beacons": { + "methods": { + "activate": { + "description": "Activates a beacon. A beacon that is active will return information\nand attachment data when queried via `beaconinfo.getforobserved`.\nCalling this method on an already active beacon will do nothing (but\nwill return a successful response code).\n\nAuthenticate using an [OAuth access token](https://developers.google.com/identity/protocols/OAuth2)\nfrom a signed-in user with **Is owner** or **Can edit** permissions in the\nGoogle Developers Console project.", + "flatPath": "v1beta1/beacons/{beaconsId}:activate", + "httpMethod": "POST", + "id": "proximitybeacon.beacons.activate", + "parameterOrder": [ + "beaconName" + ], + "parameters": { + "beaconName": { + "description": "Beacon that should be activated. A beacon name has the format\n\"beacons/N!beaconId\" where the beaconId is the base16 ID broadcast by\nthe beacon and N is a code for the beacon's type. Possible values are\n`3` for Eddystone-UID, `4` for Eddystone-EID, `1` for iBeacon, or `5`\nfor AltBeacon. For Eddystone-EID beacons, you may use either the\ncurrent EID or the beacon's \"stable\" UID.\nRequired.", + "location": "path", + "pattern": "^beacons/[^/]+$", + "required": true, + "type": "string" + }, + "projectId": { + "description": "The project id of the beacon to activate. If the project id is not\nspecified then the project making the request is used. The project id\nmust match the project that owns the beacon.\nOptional.", + "location": "query", + "type": "string" + } + }, + "path": "v1beta1/{+beaconName}:activate", + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/userlocation.beacon.registry" + ] + }, + "deactivate": { + "description": "Deactivates a beacon. Once deactivated, the API will not return\ninformation nor attachment data for the beacon when queried via\n`beaconinfo.getforobserved`. Calling this method on an already inactive\nbeacon will do nothing (but will return a successful response code).\n\nAuthenticate using an [OAuth access token](https://developers.google.com/identity/protocols/OAuth2)\nfrom a signed-in user with **Is owner** or **Can edit** permissions in the\nGoogle Developers Console project.", + "flatPath": "v1beta1/beacons/{beaconsId}:deactivate", + "httpMethod": "POST", + "id": "proximitybeacon.beacons.deactivate", + "parameterOrder": [ + "beaconName" + ], + "parameters": { + "beaconName": { + "description": "Beacon that should be deactivated. A beacon name has the format\n\"beacons/N!beaconId\" where the beaconId is the base16 ID broadcast by\nthe beacon and N is a code for the beacon's type. Possible values are\n`3` for Eddystone-UID, `4` for Eddystone-EID, `1` for iBeacon, or `5`\nfor AltBeacon. For Eddystone-EID beacons, you may use either the\ncurrent EID or the beacon's \"stable\" UID.\nRequired.", + "location": "path", + "pattern": "^beacons/[^/]+$", + "required": true, + "type": "string" + }, + "projectId": { + "description": "The project id of the beacon to deactivate. If the project id is not\nspecified then the project making the request is used. The project id must\nmatch the project that owns the beacon.\nOptional.", + "location": "query", + "type": "string" + } + }, + "path": "v1beta1/{+beaconName}:deactivate", + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/userlocation.beacon.registry" + ] + }, + "decommission": { + "description": "Decommissions the specified beacon in the service. This beacon will no\nlonger be returned from `beaconinfo.getforobserved`. This operation is\npermanent -- you will not be able to re-register a beacon with this ID\nagain.\n\nAuthenticate using an [OAuth access token](https://developers.google.com/identity/protocols/OAuth2)\nfrom a signed-in user with **Is owner** or **Can edit** permissions in the\nGoogle Developers Console project.", + "flatPath": "v1beta1/beacons/{beaconsId}:decommission", + "httpMethod": "POST", + "id": "proximitybeacon.beacons.decommission", + "parameterOrder": [ + "beaconName" + ], + "parameters": { + "beaconName": { + "description": "Beacon that should be decommissioned. A beacon name has the format\n\"beacons/N!beaconId\" where the beaconId is the base16 ID broadcast by\nthe beacon and N is a code for the beacon's type. Possible values are\n`3` for Eddystone-UID, `4` for Eddystone-EID, `1` for iBeacon, or `5`\nfor AltBeacon. For Eddystone-EID beacons, you may use either the\ncurrent EID of the beacon's \"stable\" UID.\nRequired.", + "location": "path", + "pattern": "^beacons/[^/]+$", + "required": true, + "type": "string" + }, + "projectId": { + "description": "The project id of the beacon to decommission. If the project id is not\nspecified then the project making the request is used. The project id\nmust match the project that owns the beacon.\nOptional.", + "location": "query", + "type": "string" + } + }, + "path": "v1beta1/{+beaconName}:decommission", + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/userlocation.beacon.registry" + ] + }, + "delete": { + "description": "Deletes the specified beacon including all diagnostics data for the beacon\nas well as any attachments on the beacon (including those belonging to\nother projects). This operation cannot be undone.\n\nAuthenticate using an [OAuth access token](https://developers.google.com/identity/protocols/OAuth2)\nfrom a signed-in user with **Is owner** or **Can edit** permissions in the\nGoogle Developers Console project.", + "flatPath": "v1beta1/beacons/{beaconsId}", + "httpMethod": "DELETE", + "id": "proximitybeacon.beacons.delete", + "parameterOrder": [ + "beaconName" + ], + "parameters": { + "beaconName": { + "description": "Beacon that should be deleted. A beacon name has the format\n\"beacons/N!beaconId\" where the beaconId is the base16 ID broadcast by\nthe beacon and N is a code for the beacon's type. Possible values are\n`3` for Eddystone-UID, `4` for Eddystone-EID, `1` for iBeacon, or `5`\nfor AltBeacon. For Eddystone-EID beacons, you may use either the\ncurrent EID or the beacon's \"stable\" UID.\nRequired.", + "location": "path", + "pattern": "^beacons/[^/]+$", + "required": true, + "type": "string" + }, + "projectId": { + "description": "The project id of the beacon to delete. If not provided, the project\nthat is making the request is used.\nOptional.", + "location": "query", + "type": "string" + } + }, + "path": "v1beta1/{+beaconName}", + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/userlocation.beacon.registry" + ] + }, + "get": { + "description": "Returns detailed information about the specified beacon.\n\nAuthenticate using an [OAuth access token](https://developers.google.com/identity/protocols/OAuth2)\nfrom a signed-in user with **viewer**, **Is owner** or **Can edit**\npermissions in the Google Developers Console project.\n\nRequests may supply an Eddystone-EID beacon name in the form:\n`beacons/4!beaconId` where the `beaconId` is the base16 ephemeral ID\nbroadcast by the beacon. The returned `Beacon` object will contain the\nbeacon's stable Eddystone-UID. Clients not authorized to resolve the\nbeacon's ephemeral Eddystone-EID broadcast will receive an error.", + "flatPath": "v1beta1/beacons/{beaconsId}", + "httpMethod": "GET", + "id": "proximitybeacon.beacons.get", + "parameterOrder": [ + "beaconName" + ], + "parameters": { + "beaconName": { + "description": "Resource name of this beacon. A beacon name has the format\n\"beacons/N!beaconId\" where the beaconId is the base16 ID broadcast by\nthe beacon and N is a code for the beacon's type. Possible values are\n`3` for Eddystone-UID, `4` for Eddystone-EID, `1` for iBeacon, or `5`\nfor AltBeacon. For Eddystone-EID beacons, you may use either the\ncurrent EID or the beacon's \"stable\" UID.\nRequired.", + "location": "path", + "pattern": "^beacons/[^/]+$", + "required": true, + "type": "string" + }, + "projectId": { + "description": "The project id of the beacon to request. If the project id is not specified\nthen the project making the request is used. The project id must match the\nproject that owns the beacon.\nOptional.", + "location": "query", + "type": "string" + } + }, + "path": "v1beta1/{+beaconName}", + "response": { + "$ref": "Beacon" + }, + "scopes": [ + "https://www.googleapis.com/auth/userlocation.beacon.registry" + ] + }, + "list": { + "description": "Searches the beacon registry for beacons that match the given search\ncriteria. Only those beacons that the client has permission to list\nwill be returned.\n\nAuthenticate using an [OAuth access token](https://developers.google.com/identity/protocols/OAuth2)\nfrom a signed-in user with **viewer**, **Is owner** or **Can edit**\npermissions in the Google Developers Console project.", + "flatPath": "v1beta1/beacons", + "httpMethod": "GET", + "id": "proximitybeacon.beacons.list", + "parameterOrder": [], + "parameters": { + "pageSize": { + "description": "The maximum number of records to return for this request, up to a\nserver-defined upper limit.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "A pagination token obtained from a previous request to list beacons.", + "location": "query", + "type": "string" + }, + "projectId": { + "description": "The project id to list beacons under. If not present then the project\ncredential that made the request is used as the project.\nOptional.", + "location": "query", + "type": "string" + }, + "q": { + "description": "Filter query string that supports the following field filters:\n\n* **description:`\"\u003cstring\u003e\"`**\n For example: **description:\"Room 3\"**\n Returns beacons whose description matches tokens in the string \"Room 3\"\n (not necessarily that exact string).\n The string must be double-quoted.\n* **status:`\u003cenum\u003e`**\n For example: **status:active**\n Returns beacons whose status matches the given value. Values must be\n one of the Beacon.Status enum values (case insensitive). Accepts\n multiple filters which will be combined with OR logic.\n* **stability:`\u003cenum\u003e`**\n For example: **stability:mobile**\n Returns beacons whose expected stability matches the given value.\n Values must be one of the Beacon.Stability enum values (case\n insensitive). Accepts multiple filters which will be combined with\n OR logic.\n* **place\\_id:`\"\u003cstring\u003e\"`**\n For example: **place\\_id:\"ChIJVSZzVR8FdkgRXGmmm6SslKw=\"**\n Returns beacons explicitly registered at the given place, expressed as\n a Place ID obtained from [Google Places API](/places/place-id). Does not\n match places inside the given place. Does not consider the beacon's\n actual location (which may be different from its registered place).\n Accepts multiple filters that will be combined with OR logic. The place\n ID must be double-quoted.\n* **registration\\_time`[\u003c|\u003e|\u003c=|\u003e=]\u003cinteger\u003e`**\n For example: **registration\\_time\u003e=1433116800**\n Returns beacons whose registration time matches the given filter.\n Supports the operators: \u003c, \u003e, \u003c=, and \u003e=. Timestamp must be expressed as\n an integer number of seconds since midnight January 1, 1970 UTC. Accepts\n at most two filters that will be combined with AND logic, to support\n \"between\" semantics. If more than two are supplied, the latter ones are\n ignored.\n* **lat:`\u003cdouble\u003e lng:\u003cdouble\u003e radius:\u003cinteger\u003e`**\n For example: **lat:51.1232343 lng:-1.093852 radius:1000**\n Returns beacons whose registered location is within the given circle.\n When any of these fields are given, all are required. Latitude and\n longitude must be decimal degrees between -90.0 and 90.0 and between\n -180.0 and 180.0 respectively. Radius must be an integer number of\n meters between 10 and 1,000,000 (1000 km).\n* **property:`\"\u003cstring\u003e=\u003cstring\u003e\"`**\n For example: **property:\"battery-type=CR2032\"**\n Returns beacons which have a property of the given name and value.\n Supports multiple filters which will be combined with OR logic.\n The entire name=value string must be double-quoted as one string.\n* **attachment\\_type:`\"\u003cstring\u003e\"`**\n For example: **attachment_type:\"my-namespace/my-type\"**\n Returns beacons having at least one attachment of the given namespaced\n type. Supports \"any within this namespace\" via the partial wildcard\n syntax: \"my-namespace/*\". Supports multiple filters which will be\n combined with OR logic. The string must be double-quoted.\n* **indoor\\_level:`\"\u003cstring\u003e\"`**\n For example: **indoor\\_level:\"1\"**\n Returns beacons which are located on the given indoor level. Accepts\n multiple filters that will be combined with OR logic.\n\nMultiple filters on the same field are combined with OR logic (except\nregistration_time which is combined with AND logic).\nMultiple filters on different fields are combined with AND logic.\nFilters should be separated by spaces.\n\nAs with any HTTP query string parameter, the whole filter expression must\nbe URL-encoded.\n\nExample REST request:\n`GET /v1beta1/beacons?q=status:active%20lat:51.123%20lng:-1.095%20radius:1000`", + "location": "query", + "type": "string" + } + }, + "path": "v1beta1/beacons", + "response": { + "$ref": "ListBeaconsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/userlocation.beacon.registry" + ] + }, + "register": { + "description": "Registers a previously unregistered beacon given its `advertisedId`.\nThese IDs are unique within the system. An ID can be registered only once.\n\nAuthenticate using an [OAuth access token](https://developers.google.com/identity/protocols/OAuth2)\nfrom a signed-in user with **Is owner** or **Can edit** permissions in the\nGoogle Developers Console project.", + "flatPath": "v1beta1/beacons:register", + "httpMethod": "POST", + "id": "proximitybeacon.beacons.register", + "parameterOrder": [], + "parameters": { + "projectId": { + "description": "The project id of the project the beacon will be registered to. If\nthe project id is not specified then the project making the request\nis used.\nOptional.", + "location": "query", + "type": "string" + } + }, + "path": "v1beta1/beacons:register", + "request": { + "$ref": "Beacon" + }, + "response": { + "$ref": "Beacon" + }, + "scopes": [ + "https://www.googleapis.com/auth/userlocation.beacon.registry" + ] + }, + "update": { + "description": "Updates the information about the specified beacon. **Any field that you do\nnot populate in the submitted beacon will be permanently erased**, so you\nshould follow the \"read, modify, write\" pattern to avoid inadvertently\ndestroying data.\n\nChanges to the beacon status via this method will be silently ignored.\nTo update beacon status, use the separate methods on this API for\nactivation, deactivation, and decommissioning.\nAuthenticate using an [OAuth access token](https://developers.google.com/identity/protocols/OAuth2)\nfrom a signed-in user with **Is owner** or **Can edit** permissions in the\nGoogle Developers Console project.", + "flatPath": "v1beta1/beacons/{beaconsId}", + "httpMethod": "PUT", + "id": "proximitybeacon.beacons.update", + "parameterOrder": [ + "beaconName" + ], + "parameters": { + "beaconName": { + "description": "Resource name of this beacon. A beacon name has the format\n\"beacons/N!beaconId\" where the beaconId is the base16 ID broadcast by\nthe beacon and N is a code for the beacon's type. Possible values are\n`3` for Eddystone, `1` for iBeacon, or `5` for AltBeacon.\n\nThis field must be left empty when registering. After reading a beacon,\nclients can use the name for future operations.", + "location": "path", + "pattern": "^beacons/[^/]+$", + "required": true, + "type": "string" + }, + "projectId": { + "description": "The project id of the beacon to update. If the project id is not\nspecified then the project making the request is used. The project id\nmust match the project that owns the beacon.\nOptional.", + "location": "query", + "type": "string" + } + }, + "path": "v1beta1/{+beaconName}", + "request": { + "$ref": "Beacon" + }, + "response": { + "$ref": "Beacon" + }, + "scopes": [ + "https://www.googleapis.com/auth/userlocation.beacon.registry" + ] + } + }, + "resources": { + "attachments": { + "methods": { + "batchDelete": { + "description": "Deletes multiple attachments on a given beacon. This operation is\npermanent and cannot be undone.\n\nYou can optionally specify `namespacedType` to choose which attachments\nshould be deleted. If you do not specify `namespacedType`, all your\nattachments on the given beacon will be deleted. You also may explicitly\nspecify `*/*` to delete all.\n\nAuthenticate using an [OAuth access token](https://developers.google.com/identity/protocols/OAuth2)\nfrom a signed-in user with **Is owner** or **Can edit** permissions in the\nGoogle Developers Console project.", + "flatPath": "v1beta1/beacons/{beaconsId}/attachments:batchDelete", + "httpMethod": "POST", + "id": "proximitybeacon.beacons.attachments.batchDelete", + "parameterOrder": [ + "beaconName" + ], + "parameters": { + "beaconName": { + "description": "The beacon whose attachments should be deleted. A beacon name has the\nformat \"beacons/N!beaconId\" where the beaconId is the base16 ID broadcast\nby the beacon and N is a code for the beacon's type. Possible values are\n`3` for Eddystone-UID, `4` for Eddystone-EID, `1` for iBeacon, or `5`\nfor AltBeacon. For Eddystone-EID beacons, you may use either the\ncurrent EID or the beacon's \"stable\" UID.\nRequired.", + "location": "path", + "pattern": "^beacons/[^/]+$", + "required": true, + "type": "string" + }, + "namespacedType": { + "description": "Specifies the namespace and type of attachments to delete in\n`namespace/type` format. Accepts `*/*` to specify\n\"all types in all namespaces\".\nOptional.", + "location": "query", + "type": "string" + }, + "projectId": { + "description": "The project id to delete beacon attachments under. This field can be\nused when \"*\" is specified to mean all attachment namespaces. Projects\nmay have multiple attachments with multiple namespaces. If \"*\" is\nspecified and the projectId string is empty, then the project\nmaking the request is used.\nOptional.", + "location": "query", + "type": "string" + } + }, + "path": "v1beta1/{+beaconName}/attachments:batchDelete", + "response": { + "$ref": "DeleteAttachmentsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/userlocation.beacon.registry" + ] + }, + "create": { + "description": "Associates the given data with the specified beacon. Attachment data must\ncontain two parts:\n\u003cul\u003e\n\u003cli\u003eA namespaced type.\u003c/li\u003e\n\u003cli\u003eThe actual attachment data itself.\u003c/li\u003e\n\u003c/ul\u003e\nThe namespaced type consists of two parts, the namespace and the type.\nThe namespace must be one of the values returned by the `namespaces`\nendpoint, while the type can be a string of any characters except for the\nforward slash (`/`) up to 100 characters in length.\n\nAttachment data can be up to 1024 bytes long.\n\nAuthenticate using an [OAuth access token](https://developers.google.com/identity/protocols/OAuth2)\nfrom a signed-in user with **Is owner** or **Can edit** permissions in the\nGoogle Developers Console project.", + "flatPath": "v1beta1/beacons/{beaconsId}/attachments", + "httpMethod": "POST", + "id": "proximitybeacon.beacons.attachments.create", + "parameterOrder": [ + "beaconName" + ], + "parameters": { + "beaconName": { + "description": "Beacon on which the attachment should be created. A beacon name has the\nformat \"beacons/N!beaconId\" where the beaconId is the base16 ID broadcast\nby the beacon and N is a code for the beacon's type. Possible values are\n`3` for Eddystone-UID, `4` for Eddystone-EID, `1` for iBeacon, or `5`\nfor AltBeacon. For Eddystone-EID beacons, you may use either the\ncurrent EID or the beacon's \"stable\" UID.\nRequired.", + "location": "path", + "pattern": "^beacons/[^/]+$", + "required": true, + "type": "string" + }, + "projectId": { + "description": "The project id of the project the attachment will belong to. If\nthe project id is not specified then the project making the request\nis used.\nOptional.", + "location": "query", + "type": "string" + } + }, + "path": "v1beta1/{+beaconName}/attachments", + "request": { + "$ref": "BeaconAttachment" + }, + "response": { + "$ref": "BeaconAttachment" + }, + "scopes": [ + "https://www.googleapis.com/auth/userlocation.beacon.registry" + ] + }, + "delete": { + "description": "Deletes the specified attachment for the given beacon. Each attachment has\na unique attachment name (`attachmentName`) which is returned when you\nfetch the attachment data via this API. You specify this with the delete\nrequest to control which attachment is removed. This operation cannot be\nundone.\n\nAuthenticate using an [OAuth access token](https://developers.google.com/identity/protocols/OAuth2)\nfrom a signed-in user with **Is owner** or **Can edit** permissions in the\nGoogle Developers Console project.", + "flatPath": "v1beta1/beacons/{beaconsId}/attachments/{attachmentsId}", + "httpMethod": "DELETE", + "id": "proximitybeacon.beacons.attachments.delete", + "parameterOrder": [ + "attachmentName" + ], + "parameters": { + "attachmentName": { + "description": "The attachment name (`attachmentName`) of\nthe attachment to remove. For example:\n`beacons/3!893737abc9/attachments/c5e937-af0-494-959-ec49d12738`. For\nEddystone-EID beacons, the beacon ID portion (`3!893737abc9`) may be the\nbeacon's current EID, or its \"stable\" Eddystone-UID.\nRequired.", + "location": "path", + "pattern": "^beacons/[^/]+/attachments/[^/]+$", + "required": true, + "type": "string" + }, + "projectId": { + "description": "The project id of the attachment to delete. If not provided, the project\nthat is making the request is used.\nOptional.", + "location": "query", + "type": "string" + } + }, + "path": "v1beta1/{+attachmentName}", + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/userlocation.beacon.registry" + ] + }, + "list": { + "description": "Returns the attachments for the specified beacon that match the specified\nnamespaced-type pattern.\n\nTo control which namespaced types are returned, you add the\n`namespacedType` query parameter to the request. You must either use\n`*/*`, to return all attachments, or the namespace must be one of\nthe ones returned from the `namespaces` endpoint.\n\nAuthenticate using an [OAuth access token](https://developers.google.com/identity/protocols/OAuth2)\nfrom a signed-in user with **viewer**, **Is owner** or **Can edit**\npermissions in the Google Developers Console project.", + "flatPath": "v1beta1/beacons/{beaconsId}/attachments", + "httpMethod": "GET", + "id": "proximitybeacon.beacons.attachments.list", + "parameterOrder": [ + "beaconName" + ], + "parameters": { + "beaconName": { + "description": "Beacon whose attachments should be fetched. A beacon name has the\nformat \"beacons/N!beaconId\" where the beaconId is the base16 ID broadcast\nby the beacon and N is a code for the beacon's type. Possible values are\n`3` for Eddystone-UID, `4` for Eddystone-EID, `1` for iBeacon, or `5`\nfor AltBeacon. For Eddystone-EID beacons, you may use either the\ncurrent EID or the beacon's \"stable\" UID.\nRequired.", + "location": "path", + "pattern": "^beacons/[^/]+$", + "required": true, + "type": "string" + }, + "namespacedType": { + "description": "Specifies the namespace and type of attachment to include in response in\n\u003cvar\u003enamespace/type\u003c/var\u003e format. Accepts `*/*` to specify\n\"all types in all namespaces\".", + "location": "query", + "type": "string" + }, + "projectId": { + "description": "The project id to list beacon attachments under. This field can be\nused when \"*\" is specified to mean all attachment namespaces. Projects\nmay have multiple attachments with multiple namespaces. If \"*\" is\nspecified and the projectId string is empty, then the project\nmaking the request is used.\nOptional.", + "location": "query", + "type": "string" + } + }, + "path": "v1beta1/{+beaconName}/attachments", + "response": { + "$ref": "ListBeaconAttachmentsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/userlocation.beacon.registry" + ] + } + } + }, + "diagnostics": { + "methods": { + "list": { + "description": "List the diagnostics for a single beacon. You can also list diagnostics for\nall the beacons owned by your Google Developers Console project by using\nthe beacon name `beacons/-`.\n\nAuthenticate using an [OAuth access token](https://developers.google.com/identity/protocols/OAuth2)\nfrom a signed-in user with **viewer**, **Is owner** or **Can edit**\npermissions in the Google Developers Console project.", + "flatPath": "v1beta1/beacons/{beaconsId}/diagnostics", + "httpMethod": "GET", + "id": "proximitybeacon.beacons.diagnostics.list", + "parameterOrder": [ + "beaconName" + ], + "parameters": { + "alertFilter": { + "description": "Requests only beacons that have the given alert. For example, to find\nbeacons that have low batteries use `alert_filter=LOW_BATTERY`.", + "enum": [ + "ALERT_UNSPECIFIED", + "WRONG_LOCATION", + "LOW_BATTERY", + "LOW_ACTIVITY" + ], + "location": "query", + "type": "string" + }, + "beaconName": { + "description": "Beacon that the diagnostics are for.", + "location": "path", + "pattern": "^beacons/[^/]+$", + "required": true, + "type": "string" + }, + "pageSize": { + "description": "Specifies the maximum number of results to return. Defaults to\n10. Maximum 1000. Optional.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Requests results that occur after the `page_token`, obtained from the\nresponse to a previous request. Optional.", + "location": "query", + "type": "string" + }, + "projectId": { + "description": "Requests only diagnostic records for the given project id. If not set,\nthen the project making the request will be used for looking up\ndiagnostic records. Optional.", + "location": "query", + "type": "string" + } + }, + "path": "v1beta1/{+beaconName}/diagnostics", + "response": { + "$ref": "ListDiagnosticsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/userlocation.beacon.registry" + ] + } } } } @@ -34,681 +578,363 @@ "namespaces": { "methods": { "list": { - "id": "proximitybeacon.namespaces.list", - "path": "v1beta1/namespaces", "description": "Lists all attachment namespaces owned by your Google Developers Console\nproject. Attachment data associated with a beacon must include a\nnamespaced type, and the namespace must be owned by your project.\n\nAuthenticate using an [OAuth access token](https://developers.google.com/identity/protocols/OAuth2)\nfrom a signed-in user with **viewer**, **Is owner** or **Can edit**\npermissions in the Google Developers Console project.", + "flatPath": "v1beta1/namespaces", "httpMethod": "GET", - "response": { - "$ref": "ListNamespacesResponse" - }, + "id": "proximitybeacon.namespaces.list", "parameterOrder": [], "parameters": { "projectId": { "description": "The project id to list namespaces under.\nOptional.", - "type": "string", - "location": "query" + "location": "query", + "type": "string" } }, + "path": "v1beta1/namespaces", + "response": { + "$ref": "ListNamespacesResponse" + }, "scopes": [ "https://www.googleapis.com/auth/userlocation.beacon.registry" - ], - "flatPath": "v1beta1/namespaces" + ] }, "update": { - "request": { - "$ref": "Namespace" - }, "description": "Updates the information about the specified namespace. Only the namespace\nvisibility can be updated.", + "flatPath": "v1beta1/namespaces/{namespacesId}", "httpMethod": "PUT", + "id": "proximitybeacon.namespaces.update", "parameterOrder": [ "namespaceName" ], - "response": { - "$ref": "Namespace" - }, "parameters": { "namespaceName": { - "pattern": "^namespaces/[^/]+$", - "location": "path", "description": "Resource name of this namespace. Namespaces names have the format:\n\u003ccode\u003enamespaces/\u003cvar\u003enamespace\u003c/var\u003e\u003c/code\u003e.", + "location": "path", + "pattern": "^namespaces/[^/]+$", "required": true, "type": "string" }, "projectId": { "description": "The project id of the namespace to update. If the project id is not\nspecified then the project making the request is used. The project id\nmust match the project that owns the beacon.\nOptional.", - "type": "string", - "location": "query" + "location": "query", + "type": "string" } }, + "path": "v1beta1/{+namespaceName}", + "request": { + "$ref": "Namespace" + }, + "response": { + "$ref": "Namespace" + }, "scopes": [ "https://www.googleapis.com/auth/userlocation.beacon.registry" - ], - "flatPath": "v1beta1/namespaces/{namespacesId}", - "id": "proximitybeacon.namespaces.update", - "path": "v1beta1/{+namespaceName}" + ] } } }, "v1beta1": { "methods": { "getEidparams": { - "path": "v1beta1/eidparams", - "id": "proximitybeacon.getEidparams", "description": "Gets the Proximity Beacon API's current public key and associated\nparameters used to initiate the Diffie-Hellman key exchange required to\nregister a beacon that broadcasts the Eddystone-EID format. This key\nchanges periodically; clients may cache it and re-use the same public key\nto provision and register multiple beacons. However, clients should be\nprepared to refresh this key when they encounter an error registering an\nEddystone-EID beacon.", + "flatPath": "v1beta1/eidparams", + "httpMethod": "GET", + "id": "proximitybeacon.getEidparams", + "parameterOrder": [], + "parameters": {}, + "path": "v1beta1/eidparams", "response": { "$ref": "EphemeralIdRegistrationParams" }, - "parameterOrder": [], - "httpMethod": "GET", "scopes": [ "https://www.googleapis.com/auth/userlocation.beacon.registry" - ], - "parameters": {}, - "flatPath": "v1beta1/eidparams" - } - } - }, - "beacons": { - "methods": { - "delete": { - "httpMethod": "DELETE", - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "beaconName" - ], - "parameters": { - "beaconName": { - "description": "Beacon that should be deleted. A beacon name has the format\n\"beacons/N!beaconId\" where the beaconId is the base16 ID broadcast by\nthe beacon and N is a code for the beacon's type. Possible values are\n`3` for Eddystone-UID, `4` for Eddystone-EID, `1` for iBeacon, or `5`\nfor AltBeacon. For Eddystone-EID beacons, you may use either the\ncurrent EID or the beacon's \"stable\" UID.\nRequired.", - "required": true, - "type": "string", - "pattern": "^beacons/[^/]+$", - "location": "path" - }, - "projectId": { - "location": "query", - "description": "The project id of the beacon to delete. If not provided, the project\nthat is making the request is used.\nOptional.", - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/userlocation.beacon.registry" - ], - "flatPath": "v1beta1/beacons/{beaconsId}", - "id": "proximitybeacon.beacons.delete", - "path": "v1beta1/{+beaconName}", - "description": "Deletes the specified beacon including all diagnostics data for the beacon\nas well as any attachments on the beacon (including those belonging to\nother projects). This operation cannot be undone.\n\nAuthenticate using an [OAuth access token](https://developers.google.com/identity/protocols/OAuth2)\nfrom a signed-in user with **Is owner** or **Can edit** permissions in the\nGoogle Developers Console project." - }, - "deactivate": { - "path": "v1beta1/{+beaconName}:deactivate", - "id": "proximitybeacon.beacons.deactivate", - "description": "Deactivates a beacon. Once deactivated, the API will not return\ninformation nor attachment data for the beacon when queried via\n`beaconinfo.getforobserved`. Calling this method on an already inactive\nbeacon will do nothing (but will return a successful response code).\n\nAuthenticate using an [OAuth access token](https://developers.google.com/identity/protocols/OAuth2)\nfrom a signed-in user with **Is owner** or **Can edit** permissions in the\nGoogle Developers Console project.", - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "beaconName" - ], - "httpMethod": "POST", - "parameters": { - "beaconName": { - "pattern": "^beacons/[^/]+$", - "location": "path", - "description": "Beacon that should be deactivated. A beacon name has the format\n\"beacons/N!beaconId\" where the beaconId is the base16 ID broadcast by\nthe beacon and N is a code for the beacon's type. Possible values are\n`3` for Eddystone-UID, `4` for Eddystone-EID, `1` for iBeacon, or `5`\nfor AltBeacon. For Eddystone-EID beacons, you may use either the\ncurrent EID or the beacon's \"stable\" UID.\nRequired.", - "required": true, - "type": "string" - }, - "projectId": { - "location": "query", - "description": "The project id of the beacon to deactivate. If the project id is not\nspecified then the project making the request is used. The project id must\nmatch the project that owns the beacon.\nOptional.", - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/userlocation.beacon.registry" - ], - "flatPath": "v1beta1/beacons/{beaconsId}:deactivate" - }, - "list": { - "response": { - "$ref": "ListBeaconsResponse" - }, - "parameterOrder": [], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/userlocation.beacon.registry" - ], - "parameters": { - "pageToken": { - "location": "query", - "description": "A pagination token obtained from a previous request to list beacons.", - "type": "string" - }, - "q": { - "description": "Filter query string that supports the following field filters:\n\n* **description:`\"\u003cstring\u003e\"`**\n For example: **description:\"Room 3\"**\n Returns beacons whose description matches tokens in the string \"Room 3\"\n (not necessarily that exact string).\n The string must be double-quoted.\n* **status:`\u003cenum\u003e`**\n For example: **status:active**\n Returns beacons whose status matches the given value. Values must be\n one of the Beacon.Status enum values (case insensitive). Accepts\n multiple filters which will be combined with OR logic.\n* **stability:`\u003cenum\u003e`**\n For example: **stability:mobile**\n Returns beacons whose expected stability matches the given value.\n Values must be one of the Beacon.Stability enum values (case\n insensitive). Accepts multiple filters which will be combined with\n OR logic.\n* **place\\_id:`\"\u003cstring\u003e\"`**\n For example: **place\\_id:\"ChIJVSZzVR8FdkgRXGmmm6SslKw=\"**\n Returns beacons explicitly registered at the given place, expressed as\n a Place ID obtained from [Google Places API](/places/place-id). Does not\n match places inside the given place. Does not consider the beacon's\n actual location (which may be different from its registered place).\n Accepts multiple filters that will be combined with OR logic. The place\n ID must be double-quoted.\n* **registration\\_time`[\u003c|\u003e|\u003c=|\u003e=]\u003cinteger\u003e`**\n For example: **registration\\_time\u003e=1433116800**\n Returns beacons whose registration time matches the given filter.\n Supports the operators: \u003c, \u003e, \u003c=, and \u003e=. Timestamp must be expressed as\n an integer number of seconds since midnight January 1, 1970 UTC. Accepts\n at most two filters that will be combined with AND logic, to support\n \"between\" semantics. If more than two are supplied, the latter ones are\n ignored.\n* **lat:`\u003cdouble\u003e lng:\u003cdouble\u003e radius:\u003cinteger\u003e`**\n For example: **lat:51.1232343 lng:-1.093852 radius:1000**\n Returns beacons whose registered location is within the given circle.\n When any of these fields are given, all are required. Latitude and\n longitude must be decimal degrees between -90.0 and 90.0 and between\n -180.0 and 180.0 respectively. Radius must be an integer number of\n meters between 10 and 1,000,000 (1000 km).\n* **property:`\"\u003cstring\u003e=\u003cstring\u003e\"`**\n For example: **property:\"battery-type=CR2032\"**\n Returns beacons which have a property of the given name and value.\n Supports multiple filters which will be combined with OR logic.\n The entire name=value string must be double-quoted as one string.\n* **attachment\\_type:`\"\u003cstring\u003e\"`**\n For example: **attachment_type:\"my-namespace/my-type\"**\n Returns beacons having at least one attachment of the given namespaced\n type. Supports \"any within this namespace\" via the partial wildcard\n syntax: \"my-namespace/*\". Supports multiple filters which will be\n combined with OR logic. The string must be double-quoted.\n* **indoor\\_level:`\"\u003cstring\u003e\"`**\n For example: **indoor\\_level:\"1\"**\n Returns beacons which are located on the given indoor level. Accepts\n multiple filters that will be combined with OR logic.\n\nMultiple filters on the same field are combined with OR logic (except\nregistration_time which is combined with AND logic).\nMultiple filters on different fields are combined with AND logic.\nFilters should be separated by spaces.\n\nAs with any HTTP query string parameter, the whole filter expression must\nbe URL-encoded.\n\nExample REST request:\n`GET /v1beta1/beacons?q=status:active%20lat:51.123%20lng:-1.095%20radius:1000`", - "type": "string", - "location": "query" - }, - "pageSize": { - "location": "query", - "description": "The maximum number of records to return for this request, up to a\nserver-defined upper limit.", - "format": "int32", - "type": "integer" - }, - "projectId": { - "description": "The project id to list beacons under. If not present then the project\ncredential that made the request is used as the project.\nOptional.", - "type": "string", - "location": "query" - } - }, - "flatPath": "v1beta1/beacons", - "path": "v1beta1/beacons", - "id": "proximitybeacon.beacons.list", - "description": "Searches the beacon registry for beacons that match the given search\ncriteria. Only those beacons that the client has permission to list\nwill be returned.\n\nAuthenticate using an [OAuth access token](https://developers.google.com/identity/protocols/OAuth2)\nfrom a signed-in user with **viewer**, **Is owner** or **Can edit**\npermissions in the Google Developers Console project." - }, - "register": { - "description": "Registers a previously unregistered beacon given its `advertisedId`.\nThese IDs are unique within the system. An ID can be registered only once.\n\nAuthenticate using an [OAuth access token](https://developers.google.com/identity/protocols/OAuth2)\nfrom a signed-in user with **Is owner** or **Can edit** permissions in the\nGoogle Developers Console project.", - "request": { - "$ref": "Beacon" - }, - "response": { - "$ref": "Beacon" - }, - "parameterOrder": [], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/userlocation.beacon.registry" - ], - "parameters": { - "projectId": { - "description": "The project id of the project the beacon will be registered to. If\nthe project id is not specified then the project making the request\nis used.\nOptional.", - "type": "string", - "location": "query" - } - }, - "flatPath": "v1beta1/beacons:register", - "path": "v1beta1/beacons:register", - "id": "proximitybeacon.beacons.register" - }, - "activate": { - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "beaconName" - ], - "httpMethod": "POST", - "parameters": { - "beaconName": { - "description": "Beacon that should be activated. A beacon name has the format\n\"beacons/N!beaconId\" where the beaconId is the base16 ID broadcast by\nthe beacon and N is a code for the beacon's type. Possible values are\n`3` for Eddystone-UID, `4` for Eddystone-EID, `1` for iBeacon, or `5`\nfor AltBeacon. For Eddystone-EID beacons, you may use either the\ncurrent EID or the beacon's \"stable\" UID.\nRequired.", - "required": true, - "type": "string", - "pattern": "^beacons/[^/]+$", - "location": "path" - }, - "projectId": { - "description": "The project id of the beacon to activate. If the project id is not\nspecified then the project making the request is used. The project id\nmust match the project that owns the beacon.\nOptional.", - "type": "string", - "location": "query" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/userlocation.beacon.registry" - ], - "flatPath": "v1beta1/beacons/{beaconsId}:activate", - "path": "v1beta1/{+beaconName}:activate", - "id": "proximitybeacon.beacons.activate", - "description": "Activates a beacon. A beacon that is active will return information\nand attachment data when queried via `beaconinfo.getforobserved`.\nCalling this method on an already active beacon will do nothing (but\nwill return a successful response code).\n\nAuthenticate using an [OAuth access token](https://developers.google.com/identity/protocols/OAuth2)\nfrom a signed-in user with **Is owner** or **Can edit** permissions in the\nGoogle Developers Console project." - }, - "get": { - "path": "v1beta1/{+beaconName}", - "id": "proximitybeacon.beacons.get", - "description": "Returns detailed information about the specified beacon.\n\nAuthenticate using an [OAuth access token](https://developers.google.com/identity/protocols/OAuth2)\nfrom a signed-in user with **viewer**, **Is owner** or **Can edit**\npermissions in the Google Developers Console project.\n\nRequests may supply an Eddystone-EID beacon name in the form:\n`beacons/4!beaconId` where the `beaconId` is the base16 ephemeral ID\nbroadcast by the beacon. The returned `Beacon` object will contain the\nbeacon's stable Eddystone-UID. Clients not authorized to resolve the\nbeacon's ephemeral Eddystone-EID broadcast will receive an error.", - "response": { - "$ref": "Beacon" - }, - "parameterOrder": [ - "beaconName" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/userlocation.beacon.registry" - ], - "parameters": { - "beaconName": { - "pattern": "^beacons/[^/]+$", - "location": "path", - "description": "Resource name of this beacon. A beacon name has the format\n\"beacons/N!beaconId\" where the beaconId is the base16 ID broadcast by\nthe beacon and N is a code for the beacon's type. Possible values are\n`3` for Eddystone-UID, `4` for Eddystone-EID, `1` for iBeacon, or `5`\nfor AltBeacon. For Eddystone-EID beacons, you may use either the\ncurrent EID or the beacon's \"stable\" UID.\nRequired.", - "required": true, - "type": "string" - }, - "projectId": { - "description": "The project id of the beacon to request. If the project id is not specified\nthen the project making the request is used. The project id must match the\nproject that owns the beacon.\nOptional.", - "type": "string", - "location": "query" - } - }, - "flatPath": "v1beta1/beacons/{beaconsId}" - }, - "update": { - "response": { - "$ref": "Beacon" - }, - "parameterOrder": [ - "beaconName" - ], - "httpMethod": "PUT", - "parameters": { - "beaconName": { - "description": "Resource name of this beacon. A beacon name has the format\n\"beacons/N!beaconId\" where the beaconId is the base16 ID broadcast by\nthe beacon and N is a code for the beacon's type. Possible values are\n`3` for Eddystone, `1` for iBeacon, or `5` for AltBeacon.\n\nThis field must be left empty when registering. After reading a beacon,\nclients can use the name for future operations.", - "required": true, - "type": "string", - "pattern": "^beacons/[^/]+$", - "location": "path" - }, - "projectId": { - "description": "The project id of the beacon to update. If the project id is not\nspecified then the project making the request is used. The project id\nmust match the project that owns the beacon.\nOptional.", - "type": "string", - "location": "query" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/userlocation.beacon.registry" - ], - "flatPath": "v1beta1/beacons/{beaconsId}", - "path": "v1beta1/{+beaconName}", - "id": "proximitybeacon.beacons.update", - "request": { - "$ref": "Beacon" - }, - "description": "Updates the information about the specified beacon. **Any field that you do\nnot populate in the submitted beacon will be permanently erased**, so you\nshould follow the \"read, modify, write\" pattern to avoid inadvertently\ndestroying data.\n\nChanges to the beacon status via this method will be silently ignored.\nTo update beacon status, use the separate methods on this API for\nactivation, deactivation, and decommissioning.\nAuthenticate using an [OAuth access token](https://developers.google.com/identity/protocols/OAuth2)\nfrom a signed-in user with **Is owner** or **Can edit** permissions in the\nGoogle Developers Console project." - }, - "decommission": { - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "beaconName" - ], - "httpMethod": "POST", - "parameters": { - "beaconName": { - "pattern": "^beacons/[^/]+$", - "location": "path", - "description": "Beacon that should be decommissioned. A beacon name has the format\n\"beacons/N!beaconId\" where the beaconId is the base16 ID broadcast by\nthe beacon and N is a code for the beacon's type. Possible values are\n`3` for Eddystone-UID, `4` for Eddystone-EID, `1` for iBeacon, or `5`\nfor AltBeacon. For Eddystone-EID beacons, you may use either the\ncurrent EID of the beacon's \"stable\" UID.\nRequired.", - "required": true, - "type": "string" - }, - "projectId": { - "location": "query", - "description": "The project id of the beacon to decommission. If the project id is not\nspecified then the project making the request is used. The project id\nmust match the project that owns the beacon.\nOptional.", - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/userlocation.beacon.registry" - ], - "flatPath": "v1beta1/beacons/{beaconsId}:decommission", - "path": "v1beta1/{+beaconName}:decommission", - "id": "proximitybeacon.beacons.decommission", - "description": "Decommissions the specified beacon in the service. This beacon will no\nlonger be returned from `beaconinfo.getforobserved`. This operation is\npermanent -- you will not be able to re-register a beacon with this ID\nagain.\n\nAuthenticate using an [OAuth access token](https://developers.google.com/identity/protocols/OAuth2)\nfrom a signed-in user with **Is owner** or **Can edit** permissions in the\nGoogle Developers Console project." - } - }, - "resources": { - "attachments": { - "methods": { - "create": { - "response": { - "$ref": "BeaconAttachment" - }, - "parameterOrder": [ - "beaconName" - ], - "httpMethod": "POST", - "parameters": { - "beaconName": { - "pattern": "^beacons/[^/]+$", - "location": "path", - "description": "Beacon on which the attachment should be created. A beacon name has the\nformat \"beacons/N!beaconId\" where the beaconId is the base16 ID broadcast\nby the beacon and N is a code for the beacon's type. Possible values are\n`3` for Eddystone-UID, `4` for Eddystone-EID, `1` for iBeacon, or `5`\nfor AltBeacon. For Eddystone-EID beacons, you may use either the\ncurrent EID or the beacon's \"stable\" UID.\nRequired.", - "required": true, - "type": "string" - }, - "projectId": { - "location": "query", - "description": "The project id of the project the attachment will belong to. If\nthe project id is not specified then the project making the request\nis used.\nOptional.", - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/userlocation.beacon.registry" - ], - "flatPath": "v1beta1/beacons/{beaconsId}/attachments", - "path": "v1beta1/{+beaconName}/attachments", - "id": "proximitybeacon.beacons.attachments.create", - "request": { - "$ref": "BeaconAttachment" - }, - "description": "Associates the given data with the specified beacon. Attachment data must\ncontain two parts:\n\u003cul\u003e\n\u003cli\u003eA namespaced type.\u003c/li\u003e\n\u003cli\u003eThe actual attachment data itself.\u003c/li\u003e\n\u003c/ul\u003e\nThe namespaced type consists of two parts, the namespace and the type.\nThe namespace must be one of the values returned by the `namespaces`\nendpoint, while the type can be a string of any characters except for the\nforward slash (`/`) up to 100 characters in length.\n\nAttachment data can be up to 1024 bytes long.\n\nAuthenticate using an [OAuth access token](https://developers.google.com/identity/protocols/OAuth2)\nfrom a signed-in user with **Is owner** or **Can edit** permissions in the\nGoogle Developers Console project." - }, - "batchDelete": { - "path": "v1beta1/{+beaconName}/attachments:batchDelete", - "id": "proximitybeacon.beacons.attachments.batchDelete", - "description": "Deletes multiple attachments on a given beacon. This operation is\npermanent and cannot be undone.\n\nYou can optionally specify `namespacedType` to choose which attachments\nshould be deleted. If you do not specify `namespacedType`, all your\nattachments on the given beacon will be deleted. You also may explicitly\nspecify `*/*` to delete all.\n\nAuthenticate using an [OAuth access token](https://developers.google.com/identity/protocols/OAuth2)\nfrom a signed-in user with **Is owner** or **Can edit** permissions in the\nGoogle Developers Console project.", - "response": { - "$ref": "DeleteAttachmentsResponse" - }, - "parameterOrder": [ - "beaconName" - ], - "httpMethod": "POST", - "parameters": { - "namespacedType": { - "description": "Specifies the namespace and type of attachments to delete in\n`namespace/type` format. Accepts `*/*` to specify\n\"all types in all namespaces\".\nOptional.", - "type": "string", - "location": "query" - }, - "beaconName": { - "pattern": "^beacons/[^/]+$", - "location": "path", - "description": "The beacon whose attachments should be deleted. A beacon name has the\nformat \"beacons/N!beaconId\" where the beaconId is the base16 ID broadcast\nby the beacon and N is a code for the beacon's type. Possible values are\n`3` for Eddystone-UID, `4` for Eddystone-EID, `1` for iBeacon, or `5`\nfor AltBeacon. For Eddystone-EID beacons, you may use either the\ncurrent EID or the beacon's \"stable\" UID.\nRequired.", - "required": true, - "type": "string" - }, - "projectId": { - "location": "query", - "description": "The project id to delete beacon attachments under. This field can be\nused when \"*\" is specified to mean all attachment namespaces. Projects\nmay have multiple attachments with multiple namespaces. If \"*\" is\nspecified and the projectId string is empty, then the project\nmaking the request is used.\nOptional.", - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/userlocation.beacon.registry" - ], - "flatPath": "v1beta1/beacons/{beaconsId}/attachments:batchDelete" - }, - "delete": { - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "attachmentName" - ], - "httpMethod": "DELETE", - "parameters": { - "attachmentName": { - "description": "The attachment name (`attachmentName`) of\nthe attachment to remove. For example:\n`beacons/3!893737abc9/attachments/c5e937-af0-494-959-ec49d12738`. For\nEddystone-EID beacons, the beacon ID portion (`3!893737abc9`) may be the\nbeacon's current EID, or its \"stable\" Eddystone-UID.\nRequired.", - "required": true, - "type": "string", - "pattern": "^beacons/[^/]+/attachments/[^/]+$", - "location": "path" - }, - "projectId": { - "description": "The project id of the attachment to delete. If not provided, the project\nthat is making the request is used.\nOptional.", - "type": "string", - "location": "query" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/userlocation.beacon.registry" - ], - "flatPath": "v1beta1/beacons/{beaconsId}/attachments/{attachmentsId}", - "path": "v1beta1/{+attachmentName}", - "id": "proximitybeacon.beacons.attachments.delete", - "description": "Deletes the specified attachment for the given beacon. Each attachment has\na unique attachment name (`attachmentName`) which is returned when you\nfetch the attachment data via this API. You specify this with the delete\nrequest to control which attachment is removed. This operation cannot be\nundone.\n\nAuthenticate using an [OAuth access token](https://developers.google.com/identity/protocols/OAuth2)\nfrom a signed-in user with **Is owner** or **Can edit** permissions in the\nGoogle Developers Console project." - }, - "list": { - "httpMethod": "GET", - "response": { - "$ref": "ListBeaconAttachmentsResponse" - }, - "parameterOrder": [ - "beaconName" - ], - "parameters": { - "namespacedType": { - "location": "query", - "description": "Specifies the namespace and type of attachment to include in response in\n\u003cvar\u003enamespace/type\u003c/var\u003e format. Accepts `*/*` to specify\n\"all types in all namespaces\".", - "type": "string" - }, - "beaconName": { - "description": "Beacon whose attachments should be fetched. A beacon name has the\nformat \"beacons/N!beaconId\" where the beaconId is the base16 ID broadcast\nby the beacon and N is a code for the beacon's type. Possible values are\n`3` for Eddystone-UID, `4` for Eddystone-EID, `1` for iBeacon, or `5`\nfor AltBeacon. For Eddystone-EID beacons, you may use either the\ncurrent EID or the beacon's \"stable\" UID.\nRequired.", - "required": true, - "type": "string", - "pattern": "^beacons/[^/]+$", - "location": "path" - }, - "projectId": { - "location": "query", - "description": "The project id to list beacon attachments under. This field can be\nused when \"*\" is specified to mean all attachment namespaces. Projects\nmay have multiple attachments with multiple namespaces. If \"*\" is\nspecified and the projectId string is empty, then the project\nmaking the request is used.\nOptional.", - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/userlocation.beacon.registry" - ], - "flatPath": "v1beta1/beacons/{beaconsId}/attachments", - "id": "proximitybeacon.beacons.attachments.list", - "path": "v1beta1/{+beaconName}/attachments", - "description": "Returns the attachments for the specified beacon that match the specified\nnamespaced-type pattern.\n\nTo control which namespaced types are returned, you add the\n`namespacedType` query parameter to the request. You must either use\n`*/*`, to return all attachments, or the namespace must be one of\nthe ones returned from the `namespaces` endpoint.\n\nAuthenticate using an [OAuth access token](https://developers.google.com/identity/protocols/OAuth2)\nfrom a signed-in user with **viewer**, **Is owner** or **Can edit**\npermissions in the Google Developers Console project." - } - } - }, - "diagnostics": { - "methods": { - "list": { - "path": "v1beta1/{+beaconName}/diagnostics", - "id": "proximitybeacon.beacons.diagnostics.list", - "description": "List the diagnostics for a single beacon. You can also list diagnostics for\nall the beacons owned by your Google Developers Console project by using\nthe beacon name `beacons/-`.\n\nAuthenticate using an [OAuth access token](https://developers.google.com/identity/protocols/OAuth2)\nfrom a signed-in user with **viewer**, **Is owner** or **Can edit**\npermissions in the Google Developers Console project.", - "response": { - "$ref": "ListDiagnosticsResponse" - }, - "parameterOrder": [ - "beaconName" - ], - "httpMethod": "GET", - "parameters": { - "beaconName": { - "description": "Beacon that the diagnostics are for.", - "required": true, - "type": "string", - "pattern": "^beacons/[^/]+$", - "location": "path" - }, - "pageToken": { - "description": "Requests results that occur after the `page_token`, obtained from the\nresponse to a previous request. Optional.", - "type": "string", - "location": "query" - }, - "pageSize": { - "description": "Specifies the maximum number of results to return. Defaults to\n10. Maximum 1000. Optional.", - "format": "int32", - "type": "integer", - "location": "query" - }, - "alertFilter": { - "location": "query", - "enum": [ - "ALERT_UNSPECIFIED", - "WRONG_LOCATION", - "LOW_BATTERY", - "LOW_ACTIVITY" - ], - "description": "Requests only beacons that have the given alert. For example, to find\nbeacons that have low batteries use `alert_filter=LOW_BATTERY`.", - "type": "string" - }, - "projectId": { - "location": "query", - "description": "Requests only diagnostic records for the given project id. If not set,\nthen the project making the request will be used for looking up\ndiagnostic records. Optional.", - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/userlocation.beacon.registry" - ], - "flatPath": "v1beta1/beacons/{beaconsId}/diagnostics" - } - } + ] } } } }, - "parameters": { - "upload_protocol": { - "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", - "type": "string", - "location": "query" - }, - "prettyPrint": { - "location": "query", - "description": "Returns response with indentations and line breaks.", - "type": "boolean", - "default": "true" - }, - "uploadType": { - "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", - "type": "string", - "location": "query" - }, - "fields": { - "description": "Selector specifying which fields to include in a partial response.", - "type": "string", - "location": "query" - }, - "callback": { - "description": "JSONP", - "type": "string", - "location": "query" - }, - "$.xgafv": { - "enumDescriptions": [ - "v1 error format", - "v2 error format" - ], - "location": "query", - "enum": [ - "1", - "2" - ], - "description": "V1 error format.", - "type": "string" - }, - "alt": { - "enum": [ - "json", - "media", - "proto" - ], - "type": "string", - "enumDescriptions": [ - "Responses with Content-Type of application/json", - "Media download with context-dependent Content-Type", - "Responses with Content-Type of application/x-protobuf" - ], - "location": "query", - "description": "Data format for response.", - "default": "json" - }, - "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.", - "type": "string", - "location": "query" - }, - "access_token": { - "description": "OAuth access token.", - "type": "string", - "location": "query" - }, - "quotaUser": { - "location": "query", - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", - "type": "string" - }, - "pp": { - "location": "query", - "description": "Pretty-print response.", - "type": "boolean", - "default": "true" - }, - "bearer_token": { - "description": "OAuth bearer token.", - "type": "string", - "location": "query" - }, - "oauth_token": { - "location": "query", - "description": "OAuth 2.0 token for the current user.", - "type": "string" - } - }, + "revision": "20180305", + "rootUrl": "https://proximitybeacon.googleapis.com/", "schemas": { - "GetInfoForObservedBeaconsRequest": { - "description": "Request for beacon and attachment information about beacons that\na mobile client has encountered \"in the wild\".", - "type": "object", + "AdvertisedId": { + "description": "Defines a unique identifier of a beacon as broadcast by the device.", + "id": "AdvertisedId", "properties": { - "observations": { - "description": "The beacons that the client has encountered.\nAt least one must be given.", - "type": "array", - "items": { - "$ref": "Observation" - } + "id": { + "description": "The actual beacon identifier, as broadcast by the beacon hardware. Must be\n[base64](http://tools.ietf.org/html/rfc4648#section-4) encoded in HTTP\nrequests, and will be so encoded (with padding) in responses. The base64\nencoding should be of the binary byte-stream and not any textual (such as\nhex) representation thereof.\nRequired.", + "format": "byte", + "type": "string" }, - "namespacedTypes": { - "description": "Specifies what kind of attachments to include in the response.\nWhen given, the response will include only attachments of the given types.\nWhen empty, no attachments will be returned. Must be in the format\n\u003cvar\u003enamespace/type\u003c/var\u003e. Accepts `*` to specify all types in\nall namespaces owned by the client.\nOptional.", - "type": "array", - "items": { - "type": "string" - } + "type": { + "description": "Specifies the identifier type.\nRequired.", + "enum": [ + "TYPE_UNSPECIFIED", + "EDDYSTONE", + "IBEACON", + "ALTBEACON", + "EDDYSTONE_EID" + ], + "enumDescriptions": [ + "Do not use this value.", + "Eddystone, an open beacon format that supports Android and iOS devices\nhttps://github.com/google/eddystone/wiki/Beacon-Specification", + "Apple iBeacon compatible beacon", + "See http://altbeacon.org and/or https://github.com/AltBeacon/spec.", + "Eddystone Ephemeral ID" + ], + "type": "string" } }, - "id": "GetInfoForObservedBeaconsRequest" + "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 `{}`.", - "type": "object", - "properties": {}, - "id": "Empty" - }, - "BeaconAttachment": { + "AttachmentInfo": { + "description": "A subset of attachment information served via the\n`beaconinfo.getforobserved` method, used when your users encounter your\nbeacons.", + "id": "AttachmentInfo", "properties": { "data": { - "description": "An opaque data container for client-provided data. Must be\n[base64](http://tools.ietf.org/html/rfc4648#section-4) encoded in HTTP\nrequests, and will be so encoded (with padding) in responses.\nRequired.", + "description": "An opaque data container for client-provided data.", "format": "byte", "type": "string" }, + "maxDistanceMeters": { + "description": "The distance away from the beacon at which this attachment should be\ndelivered to a mobile app.\n\nSetting this to a value greater than zero indicates that the app should\nbehave as if the beacon is \"seen\" when the mobile device is less than this\ndistance away from the beacon.\n\nDifferent attachments on the same beacon can have different max distances.\n\nNote that even though this value is expressed with fractional meter\nprecision, real-world behavior is likley to be much less precise than one\nmeter, due to the nature of current Bluetooth radio technology.\n\nOptional. When not set or zero, the attachment should be delivered at the\nbeacon's outer limit of detection.", + "format": "double", + "type": "number" + }, + "namespacedType": { + "description": "Specifies what kind of attachment this is. Tells a client how to\ninterpret the `data` field. Format is \u003cvar\u003enamespace/type\u003c/var\u003e, for\nexample \u003ccode\u003escrupulous-wombat-12345/welcome-message\u003c/code\u003e", + "type": "string" + } + }, + "type": "object" + }, + "Beacon": { + "description": "Details of a beacon device.", + "id": "Beacon", + "properties": { + "advertisedId": { + "$ref": "AdvertisedId", + "description": "The identifier of a beacon as advertised by it. This field must be\npopulated when registering. It may be empty when updating a beacon\nrecord because it is ignored in updates.\n\nWhen registering a beacon that broadcasts Eddystone-EID, this field\nshould contain a \"stable\" Eddystone-UID that identifies the beacon and\nlinks it to its attachments. The stable Eddystone-UID is only used for\nadministering the beacon." + }, + "beaconName": { + "description": "Resource name of this beacon. A beacon name has the format\n\"beacons/N!beaconId\" where the beaconId is the base16 ID broadcast by\nthe beacon and N is a code for the beacon's type. Possible values are\n`3` for Eddystone, `1` for iBeacon, or `5` for AltBeacon.\n\nThis field must be left empty when registering. After reading a beacon,\nclients can use the name for future operations.", + "type": "string" + }, + "description": { + "description": "Free text used to identify and describe the beacon. Maximum length 140\ncharacters.\nOptional.", + "type": "string" + }, + "ephemeralIdRegistration": { + "$ref": "EphemeralIdRegistration", + "description": "Write-only registration parameters for beacons using Eddystone-EID\n(remotely resolved ephemeral ID) format. This information will not be\npopulated in API responses. When submitting this data, the `advertised_id`\nfield must contain an ID of type Eddystone-UID. Any other ID type will\nresult in an error." + }, + "expectedStability": { + "description": "Expected location stability. This is set when the beacon is registered or\nupdated, not automatically detected in any way.\nOptional.", + "enum": [ + "STABILITY_UNSPECIFIED", + "STABLE", + "PORTABLE", + "MOBILE", + "ROVING" + ], + "enumDescriptions": [ + "Do not use this value.", + "Not expected to move, for example a store's front door.", + "Usually stable but may move rarely, usually within a single place,\nfor example a store display.", + "Moves frequently, for example a personal item or food truck.", + "Moves continuously in service, for example a bus or train." + ], + "type": "string" + }, + "indoorLevel": { + "$ref": "IndoorLevel", + "description": "The indoor level information for this beacon, if known. As returned by the\nGoogle Maps API.\nOptional." + }, + "latLng": { + "$ref": "LatLng", + "description": "The location of the beacon, expressed as a latitude and longitude pair.\nThis location is given when the beacon is registered or updated. It does\nnot necessarily indicate the actual current location of the beacon.\nOptional." + }, + "placeId": { + "description": "The [Google Places API](/places/place-id) Place ID of the place where\nthe beacon is deployed. This is given when the beacon is registered or\nupdated, not automatically detected in any way.\nOptional.", + "type": "string" + }, + "properties": { + "additionalProperties": { + "type": "string" + }, + "description": "Properties of the beacon device, for example battery type or firmware\nversion.\nOptional.", + "type": "object" + }, + "provisioningKey": { + "description": "Some beacons may require a user to provide an authorization key before\nchanging any of its configuration (e.g. broadcast frames, transmit power).\nThis field provides a place to store and control access to that key.\nThis field is populated in responses to `GET /v1beta1/beacons/3!beaconId`\nfrom users with write access to the given beacon. That is to say: If the\nuser is authorized to write the beacon's confidential data in the service,\nthe service considers them authorized to configure the beacon. Note\nthat this key grants nothing on the service, only on the beacon itself.", + "format": "byte", + "type": "string" + }, + "status": { + "description": "Current status of the beacon.\nRequired.", + "enum": [ + "STATUS_UNSPECIFIED", + "ACTIVE", + "DECOMMISSIONED", + "INACTIVE" + ], + "enumDescriptions": [ + "Do not use this value.", + "The \"normal\" in-use state of a beacon.", + "Beacon should no longer be used for any purpose. This is irreversible.", + "The beacon should not be visible to mobile devices. This is reversible." + ], + "type": "string" + } + }, + "type": "object" + }, + "BeaconAttachment": { + "description": "Project-specific data associated with a beacon.", + "id": "BeaconAttachment", + "properties": { + "attachmentName": { + "description": "Resource name of this attachment. Attachment names have the format:\n\u003ccode\u003ebeacons/\u003cvar\u003ebeacon_id\u003c/var\u003e/attachments/\u003cvar\u003eattachment_id\u003c/var\u003e\u003c/code\u003e.\nLeave this empty on creation.", + "type": "string" + }, "creationTimeMs": { "description": "The UTC time when this attachment was created, in milliseconds since the\nUNIX epoch.", "format": "google-datetime", "type": "string" }, + "data": { + "description": "An opaque data container for client-provided data. Must be\n[base64](http://tools.ietf.org/html/rfc4648#section-4) encoded in HTTP\nrequests, and will be so encoded (with padding) in responses.\nRequired.", + "format": "byte", + "type": "string" + }, "maxDistanceMeters": { "description": "The distance away from the beacon at which this attachment should be\ndelivered to a mobile app.\n\nSetting this to a value greater than zero indicates that the app should\nbehave as if the beacon is \"seen\" when the mobile device is less than this\ndistance away from the beacon.\n\nDifferent attachments on the same beacon can have different max distances.\n\nNote that even though this value is expressed with fractional meter\nprecision, real-world behavior is likley to be much less precise than one\nmeter, due to the nature of current Bluetooth radio technology.\n\nOptional. When not set or zero, the attachment should be delivered at the\nbeacon's outer limit of detection.\n\nNegative values are invalid and return an error.", "format": "double", "type": "number" }, - "attachmentName": { - "description": "Resource name of this attachment. Attachment names have the format:\n\u003ccode\u003ebeacons/\u003cvar\u003ebeacon_id\u003c/var\u003e/attachments/\u003cvar\u003eattachment_id\u003c/var\u003e\u003c/code\u003e.\nLeave this empty on creation.", - "type": "string" - }, "namespacedType": { "description": "Specifies what kind of attachment this is. Tells a client how to\ninterpret the `data` field. Format is \u003cvar\u003enamespace/type\u003c/var\u003e. Namespace\nprovides type separation between clients. Type describes the type of\n`data`, for use by the client when parsing the `data` field.\nRequired.", "type": "string" } }, - "id": "BeaconAttachment", - "description": "Project-specific data associated with a beacon.", + "type": "object" + }, + "BeaconInfo": { + "description": "A subset of beacon information served via the `beaconinfo.getforobserved`\nmethod, which you call when users of your app encounter your beacons.", + "id": "BeaconInfo", + "properties": { + "advertisedId": { + "$ref": "AdvertisedId", + "description": "The ID advertised by the beacon." + }, + "attachments": { + "description": "Attachments matching the type(s) requested.\nMay be empty if no attachment types were requested.", + "items": { + "$ref": "AttachmentInfo" + }, + "type": "array" + }, + "beaconName": { + "description": "The name under which the beacon is registered.", + "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": { + "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" + }, + "month": { + "description": "Month of year. Must be from 1 to 12.", + "format": "int32", + "type": "integer" + }, + "year": { + "description": "Year of date. Must be from 1 to 9999, or 0 if specifying a date without\na year.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "DeleteAttachmentsResponse": { + "description": "Response for a request to delete attachments.", + "id": "DeleteAttachmentsResponse", + "properties": { + "numDeleted": { + "description": "The number of attachments that were deleted.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "Diagnostics": { + "description": "Diagnostics for a single beacon.", + "id": "Diagnostics", + "properties": { + "alerts": { + "description": "An unordered list of Alerts that the beacon has.", + "enumDescriptions": [ + "Invalid value. Should never appear.", + "The beacon has been reported far from its expected location (the beacon's\nlat_lng field if populated, otherwise, if the beacon's place_id field is\npresent, the center of that place). This may indicate that the beacon has\nbeen moved. This signal is not 100% accurate, but indicates that further\ninvestigation is worthwhile.", + "The battery level for the beacon is low enough that, given the beacon's\ncurrent use, its battery will run out with in the next 60 days. This\nindicates that the battery should be replaced soon.", + "The beacon has been reported at a very low rate or not at all. This may\nindicate that the beacon is broken or just that no one has gone near the\nbeacon in recent days. If this status appears unexpectedly, the beacon\nowner should investigate further." + ], + "items": { + "enum": [ + "ALERT_UNSPECIFIED", + "WRONG_LOCATION", + "LOW_BATTERY", + "LOW_ACTIVITY" + ], + "type": "string" + }, + "type": "array" + }, + "beaconName": { + "description": "Resource name of the beacon. For Eddystone-EID beacons, this may\nbe the beacon's current EID, or the beacon's \"stable\" Eddystone-UID.", + "type": "string" + }, + "estimatedLowBatteryDate": { + "$ref": "Date", + "description": "The date when the battery is expected to be low. If the value is missing\nthen there is no estimate for when the battery will be low.\nThis value is only an estimate, not an exact date." + } + }, + "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" }, "EphemeralIdRegistration": { "description": "Write-only registration parameters for beacons using Eddystone-EID format.\nTwo ways of securely registering an Eddystone-EID beacon with the service\nare supported:\n\n1. Perform an ECDH key exchange via this API, including a previous call\n to `GET /v1beta1/eidparams`. In this case the fields\n `beacon_ecdh_public_key` and `service_ecdh_public_key` should be\n populated and `beacon_identity_key` should not be populated. This\n method ensures that only the two parties in the ECDH key exchange can\n compute the identity key, which becomes a secret between them.\n2. Derive or obtain the beacon's identity key via other secure means\n (perhaps an ECDH key exchange between the beacon and a mobile device\n or any other secure method), and then submit the resulting identity key\n to the service. In this case `beacon_identity_key` field should be\n populated, and neither of `beacon_ecdh_public_key` nor\n `service_ecdh_public_key` fields should be. The security of this method\n depends on how securely the parties involved (in particular the\n bluetooth client) handle the identity key, and obviously on how\n securely the identity key was generated.\n\nSee [the Eddystone specification](https://github.com/google/eddystone/tree/master/eddystone-eid) at GitHub.", - "type": "object", + "id": "EphemeralIdRegistration", "properties": { + "beaconEcdhPublicKey": { + "description": "The beacon's public key used for the Elliptic curve Diffie-Hellman\nkey exchange. When this field is populated, `service_ecdh_public_key`\nmust also be populated, and `beacon_identity_key` must not be.", + "format": "byte", + "type": "string" + }, + "beaconIdentityKey": { + "description": "The private key of the beacon. If this field is populated,\n`beacon_ecdh_public_key` and `service_ecdh_public_key` must not be\npopulated.", + "format": "byte", + "type": "string" + }, "initialClockValue": { "description": "The initial clock value of the beacon. The beacon's clock must have\nbegun counting at this value immediately prior to transmitting this\nvalue to the resolving service. Significant delay in transmitting this\nvalue to the service risks registration or resolution failures. If a\nvalue is not provided, the default is zero.", "format": "uint64", "type": "string" }, - "beaconEcdhPublicKey": { - "description": "The beacon's public key used for the Elliptic curve Diffie-Hellman\nkey exchange. When this field is populated, `service_ecdh_public_key`\nmust also be populated, and `beacon_identity_key` must not be.", + "initialEid": { + "description": "An initial ephemeral ID calculated using the clock value submitted as\n`initial_clock_value`, and the secret key generated by the\nDiffie-Hellman key exchange using `service_ecdh_public_key` and\n`service_ecdh_public_key`. This initial EID value will be used by the\nservice to confirm that the key exchange process was successful.", "format": "byte", "type": "string" }, @@ -721,21 +947,81 @@ "description": "The service's public key used for the Elliptic curve Diffie-Hellman\nkey exchange. When this field is populated, `beacon_ecdh_public_key`\nmust also be populated, and `beacon_identity_key` must not be.", "format": "byte", "type": "string" + } + }, + "type": "object" + }, + "EphemeralIdRegistrationParams": { + "description": "Information a client needs to provision and register beacons that\nbroadcast Eddystone-EID format beacon IDs, using Elliptic curve\nDiffie-Hellman key exchange. See\n[the Eddystone specification](https://github.com/google/eddystone/tree/master/eddystone-eid) at GitHub.", + "id": "EphemeralIdRegistrationParams", + "properties": { + "maxRotationPeriodExponent": { + "description": "Indicates the maximum rotation period supported by the service.\nSee EddystoneEidRegistration.rotation_period_exponent", + "format": "uint32", + "type": "integer" }, - "beaconIdentityKey": { - "description": "The private key of the beacon. If this field is populated,\n`beacon_ecdh_public_key` and `service_ecdh_public_key` must not be\npopulated.", - "format": "byte", - "type": "string" + "minRotationPeriodExponent": { + "description": "Indicates the minimum rotation period supported by the service.\nSee EddystoneEidRegistration.rotation_period_exponent", + "format": "uint32", + "type": "integer" }, - "initialEid": { - "description": "An initial ephemeral ID calculated using the clock value submitted as\n`initial_clock_value`, and the secret key generated by the\nDiffie-Hellman key exchange using `service_ecdh_public_key` and\n`service_ecdh_public_key`. This initial EID value will be used by the\nservice to confirm that the key exchange process was successful.", + "serviceEcdhPublicKey": { + "description": "The beacon service's public key for use by a beacon to derive its\nIdentity Key using Elliptic Curve Diffie-Hellman key exchange.", "format": "byte", "type": "string" } }, - "id": "EphemeralIdRegistration" + "type": "object" + }, + "GetInfoForObservedBeaconsRequest": { + "description": "Request for beacon and attachment information about beacons that\na mobile client has encountered \"in the wild\".", + "id": "GetInfoForObservedBeaconsRequest", + "properties": { + "namespacedTypes": { + "description": "Specifies what kind of attachments to include in the response.\nWhen given, the response will include only attachments of the given types.\nWhen empty, no attachments will be returned. Must be in the format\n\u003cvar\u003enamespace/type\u003c/var\u003e. Accepts `*` to specify all types in\nall namespaces owned by the client.\nOptional.", + "items": { + "type": "string" + }, + "type": "array" + }, + "observations": { + "description": "The beacons that the client has encountered.\nAt least one must be given.", + "items": { + "$ref": "Observation" + }, + "type": "array" + } + }, + "type": "object" + }, + "GetInfoForObservedBeaconsResponse": { + "description": "Information about the requested beacons, optionally including attachment\ndata.", + "id": "GetInfoForObservedBeaconsResponse", + "properties": { + "beacons": { + "description": "Public information about beacons.\nMay be empty if the request matched no beacons.", + "items": { + "$ref": "BeaconInfo" + }, + "type": "array" + } + }, + "type": "object" + }, + "IndoorLevel": { + "description": "Indoor level, a human-readable string as returned by Google Maps APIs,\nuseful to indicate which floor of a building a beacon is located on.", + "id": "IndoorLevel", + "properties": { + "name": { + "description": "The name of this level.", + "type": "string" + } + }, + "type": "object" }, "LatLng": { + "description": "An object representing a latitude/longitude pair. This is expressed as a pair\nof doubles representing degrees latitude and degrees longitude. Unless\nspecified otherwise, this must conform to the\n\u003ca href=\"http://www.unoosa.org/pdf/icg/2012/template/WGS_84.pdf\"\u003eWGS84\nstandard\u003c/a\u003e. Values must be within normalized ranges.", + "id": "LatLng", "properties": { "latitude": { "description": "The latitude in degrees. It must be in the range [-90.0, +90.0].", @@ -748,128 +1034,110 @@ "type": "number" } }, - "id": "LatLng", - "description": "An object representing a latitude/longitude pair. This is expressed as a pair\nof doubles representing degrees latitude and degrees longitude. Unless\nspecified otherwise, this must conform to the\n\u003ca href=\"http://www.unoosa.org/pdf/icg/2012/template/WGS_84.pdf\"\u003eWGS84\nstandard\u003c/a\u003e. Values must be within normalized ranges.", "type": "object" }, "ListBeaconAttachmentsResponse": { + "description": "Response to `ListBeaconAttachments` that contains the requested attachments.", + "id": "ListBeaconAttachmentsResponse", "properties": { "attachments": { "description": "The attachments that corresponded to the request params.", - "type": "array", "items": { "$ref": "BeaconAttachment" - } + }, + "type": "array" + } + }, + "type": "object" + }, + "ListBeaconsResponse": { + "description": "Response that contains list beacon results and pagination help.", + "id": "ListBeaconsResponse", + "properties": { + "beacons": { + "description": "The beacons that matched the search criteria.", + "items": { + "$ref": "Beacon" + }, + "type": "array" + }, + "nextPageToken": { + "description": "An opaque pagination token that the client may provide in their next\nrequest to retrieve the next page of results.", + "type": "string" + }, + "totalCount": { + "description": "Estimate of the total number of beacons matched by the query. Higher\nvalues may be less accurate.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "ListDiagnosticsResponse": { + "description": "Response that contains the requested diagnostics.", + "id": "ListDiagnosticsResponse", + "properties": { + "diagnostics": { + "description": "The diagnostics matching the given request.", + "items": { + "$ref": "Diagnostics" + }, + "type": "array" + }, + "nextPageToken": { + "description": "Token that can be used for pagination. Returned only if the\nrequest matches more beacons than can be returned in this response.", + "type": "string" + } + }, + "type": "object" + }, + "ListNamespacesResponse": { + "description": "Response to ListNamespacesRequest that contains all the project's namespaces.", + "id": "ListNamespacesResponse", + "properties": { + "namespaces": { + "description": "The attachments that corresponded to the request params.", + "items": { + "$ref": "Namespace" + }, + "type": "array" } }, - "id": "ListBeaconAttachmentsResponse", - "description": "Response to `ListBeaconAttachments` that contains the requested attachments.", "type": "object" }, "Namespace": { "description": "An attachment namespace defines read and write access for all the attachments\ncreated under it. Each namespace is globally unique, and owned by one\nproject which is the only project that can create attachments under it.", - "type": "object", + "id": "Namespace", "properties": { + "namespaceName": { + "description": "Resource name of this namespace. Namespaces names have the format:\n\u003ccode\u003enamespaces/\u003cvar\u003enamespace\u003c/var\u003e\u003c/code\u003e.", + "type": "string" + }, "servingVisibility": { + "description": "Specifies what clients may receive attachments under this namespace\nvia `beaconinfo.getforobserved`.", "enum": [ "VISIBILITY_UNSPECIFIED", "UNLISTED", "PUBLIC" ], - "description": "Specifies what clients may receive attachments under this namespace\nvia `beaconinfo.getforobserved`.", - "type": "string", "enumDescriptions": [ "Do not use this value.", "Served only to the project that owns the namespace.", "Any project can subscribe to attachments under the namespace." - ] - }, - "namespaceName": { - "description": "Resource name of this namespace. Namespaces names have the format:\n\u003ccode\u003enamespaces/\u003cvar\u003enamespace\u003c/var\u003e\u003c/code\u003e.", + ], "type": "string" } }, - "id": "Namespace" - }, - "BeaconInfo": { - "description": "A subset of beacon information served via the `beaconinfo.getforobserved`\nmethod, which you call when users of your app encounter your beacons.", - "type": "object", - "properties": { - "beaconName": { - "description": "The name under which the beacon is registered.", - "type": "string" - }, - "advertisedId": { - "description": "The ID advertised by the beacon.", - "$ref": "AdvertisedId" - }, - "attachments": { - "description": "Attachments matching the type(s) requested.\nMay be empty if no attachment types were requested.", - "type": "array", - "items": { - "$ref": "AttachmentInfo" - } - } - }, - "id": "BeaconInfo" - }, - "AttachmentInfo": { - "properties": { - "maxDistanceMeters": { - "description": "The distance away from the beacon at which this attachment should be\ndelivered to a mobile app.\n\nSetting this to a value greater than zero indicates that the app should\nbehave as if the beacon is \"seen\" when the mobile device is less than this\ndistance away from the beacon.\n\nDifferent attachments on the same beacon can have different max distances.\n\nNote that even though this value is expressed with fractional meter\nprecision, real-world behavior is likley to be much less precise than one\nmeter, due to the nature of current Bluetooth radio technology.\n\nOptional. When not set or zero, the attachment should be delivered at the\nbeacon's outer limit of detection.", - "format": "double", - "type": "number" - }, - "namespacedType": { - "description": "Specifies what kind of attachment this is. Tells a client how to\ninterpret the `data` field. Format is \u003cvar\u003enamespace/type\u003c/var\u003e, for\nexample \u003ccode\u003escrupulous-wombat-12345/welcome-message\u003c/code\u003e", - "type": "string" - }, - "data": { - "description": "An opaque data container for client-provided data.", - "format": "byte", - "type": "string" - } - }, - "id": "AttachmentInfo", - "description": "A subset of attachment information served via the\n`beaconinfo.getforobserved` method, used when your users encounter your\nbeacons.", "type": "object" }, - "DeleteAttachmentsResponse": { - "description": "Response for a request to delete attachments.", - "type": "object", - "properties": { - "numDeleted": { - "description": "The number of attachments that were deleted.", - "format": "int32", - "type": "integer" - } - }, - "id": "DeleteAttachmentsResponse" - }, - "EphemeralIdRegistrationParams": { - "description": "Information a client needs to provision and register beacons that\nbroadcast Eddystone-EID format beacon IDs, using Elliptic curve\nDiffie-Hellman key exchange. See\n[the Eddystone specification](https://github.com/google/eddystone/tree/master/eddystone-eid) at GitHub.", - "type": "object", - "properties": { - "minRotationPeriodExponent": { - "description": "Indicates the minimum rotation period supported by the service.\nSee EddystoneEidRegistration.rotation_period_exponent", - "format": "uint32", - "type": "integer" - }, - "maxRotationPeriodExponent": { - "description": "Indicates the maximum rotation period supported by the service.\nSee EddystoneEidRegistration.rotation_period_exponent", - "format": "uint32", - "type": "integer" - }, - "serviceEcdhPublicKey": { - "description": "The beacon service's public key for use by a beacon to derive its\nIdentity Key using Elliptic Curve Diffie-Hellman key exchange.", - "format": "byte", - "type": "string" - } - }, - "id": "EphemeralIdRegistrationParams" - }, "Observation": { + "description": "Represents one beacon observed once.", + "id": "Observation", "properties": { + "advertisedId": { + "$ref": "AdvertisedId", + "description": "The ID advertised by the beacon the client has encountered.\n\nIf the submitted `advertised_id` type is Eddystone-EID, then the client\nmust be authorized to resolve the given beacon. Otherwise no data will be\nreturned for that beacon.\nRequired." + }, "telemetry": { "description": "The array of telemetry bytes received from the beacon. The server is\nresponsible for parsing it. This field may frequently be empty, as\nwith a beacon that transmits telemetry only occasionally.", "format": "byte", @@ -879,281 +1147,13 @@ "description": "Time when the beacon was observed.", "format": "google-datetime", "type": "string" - }, - "advertisedId": { - "$ref": "AdvertisedId", - "description": "The ID advertised by the beacon the client has encountered.\n\nIf the submitted `advertised_id` type is Eddystone-EID, then the client\nmust be authorized to resolve the given beacon. Otherwise no data will be\nreturned for that beacon.\nRequired." } }, - "id": "Observation", - "description": "Represents one beacon observed once.", "type": "object" - }, - "ListDiagnosticsResponse": { - "properties": { - "nextPageToken": { - "description": "Token that can be used for pagination. Returned only if the\nrequest matches more beacons than can be returned in this response.", - "type": "string" - }, - "diagnostics": { - "description": "The diagnostics matching the given request.", - "type": "array", - "items": { - "$ref": "Diagnostics" - } - } - }, - "id": "ListDiagnosticsResponse", - "description": "Response that contains the requested diagnostics.", - "type": "object" - }, - "GetInfoForObservedBeaconsResponse": { - "properties": { - "beacons": { - "description": "Public information about beacons.\nMay be empty if the request matched no beacons.", - "type": "array", - "items": { - "$ref": "BeaconInfo" - } - } - }, - "id": "GetInfoForObservedBeaconsResponse", - "description": "Information about the requested beacons, optionally including attachment\ndata.", - "type": "object" - }, - "Beacon": { - "properties": { - "beaconName": { - "description": "Resource name of this beacon. A beacon name has the format\n\"beacons/N!beaconId\" where the beaconId is the base16 ID broadcast by\nthe beacon and N is a code for the beacon's type. Possible values are\n`3` for Eddystone, `1` for iBeacon, or `5` for AltBeacon.\n\nThis field must be left empty when registering. After reading a beacon,\nclients can use the name for future operations.", - "type": "string" - }, - "expectedStability": { - "enumDescriptions": [ - "Do not use this value.", - "Not expected to move, for example a store's front door.", - "Usually stable but may move rarely, usually within a single place,\nfor example a store display.", - "Moves frequently, for example a personal item or food truck.", - "Moves continuously in service, for example a bus or train." - ], - "enum": [ - "STABILITY_UNSPECIFIED", - "STABLE", - "PORTABLE", - "MOBILE", - "ROVING" - ], - "description": "Expected location stability. This is set when the beacon is registered or\nupdated, not automatically detected in any way.\nOptional.", - "type": "string" - }, - "advertisedId": { - "description": "The identifier of a beacon as advertised by it. This field must be\npopulated when registering. It may be empty when updating a beacon\nrecord because it is ignored in updates.\n\nWhen registering a beacon that broadcasts Eddystone-EID, this field\nshould contain a \"stable\" Eddystone-UID that identifies the beacon and\nlinks it to its attachments. The stable Eddystone-UID is only used for\nadministering the beacon.", - "$ref": "AdvertisedId" - }, - "ephemeralIdRegistration": { - "$ref": "EphemeralIdRegistration", - "description": "Write-only registration parameters for beacons using Eddystone-EID\n(remotely resolved ephemeral ID) format. This information will not be\npopulated in API responses. When submitting this data, the `advertised_id`\nfield must contain an ID of type Eddystone-UID. Any other ID type will\nresult in an error." - }, - "provisioningKey": { - "description": "Some beacons may require a user to provide an authorization key before\nchanging any of its configuration (e.g. broadcast frames, transmit power).\nThis field provides a place to store and control access to that key.\nThis field is populated in responses to `GET /v1beta1/beacons/3!beaconId`\nfrom users with write access to the given beacon. That is to say: If the\nuser is authorized to write the beacon's confidential data in the service,\nthe service considers them authorized to configure the beacon. Note\nthat this key grants nothing on the service, only on the beacon itself.", - "format": "byte", - "type": "string" - }, - "latLng": { - "description": "The location of the beacon, expressed as a latitude and longitude pair.\nThis location is given when the beacon is registered or updated. It does\nnot necessarily indicate the actual current location of the beacon.\nOptional.", - "$ref": "LatLng" - }, - "placeId": { - "description": "The [Google Places API](/places/place-id) Place ID of the place where\nthe beacon is deployed. This is given when the beacon is registered or\nupdated, not automatically detected in any way.\nOptional.", - "type": "string" - }, - "description": { - "description": "Free text used to identify and describe the beacon. Maximum length 140\ncharacters.\nOptional.", - "type": "string" - }, - "properties": { - "additionalProperties": { - "type": "string" - }, - "description": "Properties of the beacon device, for example battery type or firmware\nversion.\nOptional.", - "type": "object" - }, - "indoorLevel": { - "$ref": "IndoorLevel", - "description": "The indoor level information for this beacon, if known. As returned by the\nGoogle Maps API.\nOptional." - }, - "status": { - "enumDescriptions": [ - "Do not use this value.", - "The \"normal\" in-use state of a beacon.", - "Beacon should no longer be used for any purpose. This is irreversible.", - "The beacon should not be visible to mobile devices. This is reversible." - ], - "enum": [ - "STATUS_UNSPECIFIED", - "ACTIVE", - "DECOMMISSIONED", - "INACTIVE" - ], - "description": "Current status of the beacon.\nRequired.", - "type": "string" - } - }, - "id": "Beacon", - "description": "Details of a beacon device.", - "type": "object" - }, - "AdvertisedId": { - "description": "Defines a unique identifier of a beacon as broadcast by the device.", - "type": "object", - "properties": { - "id": { - "description": "The actual beacon identifier, as broadcast by the beacon hardware. Must be\n[base64](http://tools.ietf.org/html/rfc4648#section-4) encoded in HTTP\nrequests, and will be so encoded (with padding) in responses. The base64\nencoding should be of the binary byte-stream and not any textual (such as\nhex) representation thereof.\nRequired.", - "format": "byte", - "type": "string" - }, - "type": { - "enum": [ - "TYPE_UNSPECIFIED", - "EDDYSTONE", - "IBEACON", - "ALTBEACON", - "EDDYSTONE_EID" - ], - "description": "Specifies the identifier type.\nRequired.", - "type": "string", - "enumDescriptions": [ - "Do not use this value.", - "Eddystone, an open beacon format that supports Android and iOS devices\nhttps://github.com/google/eddystone/wiki/Beacon-Specification", - "Apple iBeacon compatible beacon", - "See http://altbeacon.org and/or https://github.com/AltBeacon/spec.", - "Eddystone Ephemeral ID" - ] - } - }, - "id": "AdvertisedId" - }, - "IndoorLevel": { - "description": "Indoor level, a human-readable string as returned by Google Maps APIs,\nuseful to indicate which floor of a building a beacon is located on.", - "type": "object", - "properties": { - "name": { - "description": "The name of this level.", - "type": "string" - } - }, - "id": "IndoorLevel" - }, - "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`.", - "type": "object", - "properties": { - "year": { - "description": "Year of date. Must be from 1 to 9999, or 0 if specifying a date without\na year.", - "format": "int32", - "type": "integer" - }, - "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" - }, - "month": { - "description": "Month of year. Must be from 1 to 12.", - "format": "int32", - "type": "integer" - } - }, - "id": "Date" - }, - "ListNamespacesResponse": { - "properties": { - "namespaces": { - "description": "The attachments that corresponded to the request params.", - "type": "array", - "items": { - "$ref": "Namespace" - } - } - }, - "id": "ListNamespacesResponse", - "description": "Response to ListNamespacesRequest that contains all the project's namespaces.", - "type": "object" - }, - "Diagnostics": { - "properties": { - "beaconName": { - "description": "Resource name of the beacon. For Eddystone-EID beacons, this may\nbe the beacon's current EID, or the beacon's \"stable\" Eddystone-UID.", - "type": "string" - }, - "alerts": { - "enumDescriptions": [ - "Invalid value. Should never appear.", - "The beacon has been reported far from its expected location (the beacon's\nlat_lng field if populated, otherwise, if the beacon's place_id field is\npresent, the center of that place). This may indicate that the beacon has\nbeen moved. This signal is not 100% accurate, but indicates that further\ninvestigation is worthwhile.", - "The battery level for the beacon is low enough that, given the beacon's\ncurrent use, its battery will run out with in the next 60 days. This\nindicates that the battery should be replaced soon.", - "The beacon has been reported at a very low rate or not at all. This may\nindicate that the beacon is broken or just that no one has gone near the\nbeacon in recent days. If this status appears unexpectedly, the beacon\nowner should investigate further." - ], - "description": "An unordered list of Alerts that the beacon has.", - "type": "array", - "items": { - "enum": [ - "ALERT_UNSPECIFIED", - "WRONG_LOCATION", - "LOW_BATTERY", - "LOW_ACTIVITY" - ], - "type": "string" - } - }, - "estimatedLowBatteryDate": { - "$ref": "Date", - "description": "The date when the battery is expected to be low. If the value is missing\nthen there is no estimate for when the battery will be low.\nThis value is only an estimate, not an exact date." - } - }, - "id": "Diagnostics", - "description": "Diagnostics for a single beacon.", - "type": "object" - }, - "ListBeaconsResponse": { - "description": "Response that contains list beacon results and pagination help.", - "type": "object", - "properties": { - "nextPageToken": { - "description": "An opaque pagination token that the client may provide in their next\nrequest to retrieve the next page of results.", - "type": "string" - }, - "beacons": { - "description": "The beacons that matched the search criteria.", - "type": "array", - "items": { - "$ref": "Beacon" - } - }, - "totalCount": { - "description": "Estimate of the total number of beacons matched by the query. Higher\nvalues may be less accurate.", - "format": "int64", - "type": "string" - } - }, - "id": "ListBeaconsResponse" - } - }, - "icons": { - "x16": "http://www.google.com/images/icons/product/search-16.gif", - "x32": "http://www.google.com/images/icons/product/search-32.gif" - }, - "protocol": "rest", - "version": "v1beta1", - "baseUrl": "https://proximitybeacon.googleapis.com/", - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/userlocation.beacon.registry": { - "description": "View and modify your beacons" - } - } } }, "servicePath": "", - "description": "Registers, manages, indexes, and searches beacons.", - "kind": "discovery#restDescription" -} + "title": "Proximity Beacon API", + "version": "v1beta1", + "version_module": true +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/proximitybeacon/v1beta1/proximitybeacon-gen.go b/vendor/google.golang.org/api/proximitybeacon/v1beta1/proximitybeacon-gen.go index 668fea93e..65a99da46 100644 --- a/vendor/google.golang.org/api/proximitybeacon/v1beta1/proximitybeacon-gen.go +++ b/vendor/google.golang.org/api/proximitybeacon/v1beta1/proximitybeacon-gen.go @@ -1,4 +1,4 @@ -// Package proximitybeacon provides access to the Google Proximity Beacon API. +// Package proximitybeacon provides access to the Proximity Beacon API. // // See https://developers.google.com/beacons/proximity/ // diff --git a/vendor/google.golang.org/api/pubsub/v1/pubsub-api.json b/vendor/google.golang.org/api/pubsub/v1/pubsub-api.json index 62c8e650f..2f12222fa 100644 --- a/vendor/google.golang.org/api/pubsub/v1/pubsub-api.json +++ b/vendor/google.golang.org/api/pubsub/v1/pubsub-api.json @@ -1,1520 +1,4 @@ { - "basePath": "", - "ownerDomain": "google.com", - "name": "pubsub", - "batchPath": "batch", - "revision": "20180108", - "documentationLink": "https://cloud.google.com/pubsub/docs", - "id": "pubsub:v1", - "title": "Google Cloud Pub/Sub API", - "discoveryVersion": "v1", - "ownerName": "Google", - "resources": { - "projects": { - "resources": { - "subscriptions": { - "methods": { - "setIamPolicy": { - "request": { - "$ref": "SetIamPolicyRequest" - }, - "description": "Sets the access control policy on the specified resource. Replaces any\nexisting policy.", - "httpMethod": "POST", - "parameterOrder": [ - "resource" - ], - "response": { - "$ref": "Policy" - }, - "parameters": { - "resource": { - "description": "REQUIRED: The resource for which the policy is being specified.\nSee the operation documentation for the appropriate value for this field.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/subscriptions/[^/]+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/pubsub" - ], - "flatPath": "v1/projects/{projectsId}/subscriptions/{subscriptionsId}:setIamPolicy", - "id": "pubsub.projects.subscriptions.setIamPolicy", - "path": "v1/{+resource}:setIamPolicy" - }, - "modifyAckDeadline": { - "httpMethod": "POST", - "parameterOrder": [ - "subscription" - ], - "response": { - "$ref": "Empty" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/pubsub" - ], - "parameters": { - "subscription": { - "description": "The name of the subscription.\nFormat is `projects/{project}/subscriptions/{sub}`.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/subscriptions/[^/]+$", - "location": "path" - } - }, - "flatPath": "v1/projects/{projectsId}/subscriptions/{subscriptionsId}:modifyAckDeadline", - "id": "pubsub.projects.subscriptions.modifyAckDeadline", - "path": "v1/{+subscription}:modifyAckDeadline", - "description": "Modifies the ack deadline for a specific message. This method is useful\nto indicate that more time is needed to process a message by the\nsubscriber, or to make the message available for redelivery if the\nprocessing was interrupted. Note that this does not modify the\nsubscription-level `ackDeadlineSeconds` used for subsequent messages.", - "request": { - "$ref": "ModifyAckDeadlineRequest" - } - }, - "getIamPolicy": { - "description": "Gets the access control policy for a resource.\nReturns an empty policy if the resource exists and does not have a policy\nset.", - "response": { - "$ref": "Policy" - }, - "parameterOrder": [ - "resource" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/pubsub" - ], - "parameters": { - "resource": { - "description": "REQUIRED: The resource for which the policy is being requested.\nSee the operation documentation for the appropriate value for this field.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/subscriptions/[^/]+$", - "location": "path" - } - }, - "flatPath": "v1/projects/{projectsId}/subscriptions/{subscriptionsId}:getIamPolicy", - "path": "v1/{+resource}:getIamPolicy", - "id": "pubsub.projects.subscriptions.getIamPolicy" - }, - "pull": { - "description": "Pulls messages from the server. Returns an empty list if there are no\nmessages available in the backlog. The server may return `UNAVAILABLE` if\nthere are too many concurrent pull requests pending for the given\nsubscription.", - "request": { - "$ref": "PullRequest" - }, - "response": { - "$ref": "PullResponse" - }, - "parameterOrder": [ - "subscription" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/pubsub" - ], - "parameters": { - "subscription": { - "description": "The subscription from which messages should be pulled.\nFormat is `projects/{project}/subscriptions/{sub}`.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/subscriptions/[^/]+$", - "location": "path" - } - }, - "flatPath": "v1/projects/{projectsId}/subscriptions/{subscriptionsId}:pull", - "path": "v1/{+subscription}:pull", - "id": "pubsub.projects.subscriptions.pull" - }, - "list": { - "description": "Lists matching subscriptions.", - "response": { - "$ref": "ListSubscriptionsResponse" - }, - "parameterOrder": [ - "project" - ], - "httpMethod": "GET", - "parameters": { - "pageSize": { - "location": "query", - "description": "Maximum number of subscriptions to return.", - "format": "int32", - "type": "integer" - }, - "project": { - "location": "path", - "description": "The name of the cloud project that subscriptions belong to.\nFormat is `projects/{project}`.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+$" - }, - "pageToken": { - "description": "The value returned by the last `ListSubscriptionsResponse`; indicates that\nthis is a continuation of a prior `ListSubscriptions` call, and that the\nsystem should return the next page of data.", - "type": "string", - "location": "query" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/pubsub" - ], - "flatPath": "v1/projects/{projectsId}/subscriptions", - "path": "v1/{+project}/subscriptions", - "id": "pubsub.projects.subscriptions.list" - }, - "create": { - "httpMethod": "PUT", - "parameterOrder": [ - "name" - ], - "response": { - "$ref": "Subscription" - }, - "parameters": { - "name": { - "location": "path", - "description": "The name of the subscription. It must have the format\n`\"projects/{project}/subscriptions/{subscription}\"`. `{subscription}` must\nstart with a letter, and contain only letters (`[A-Za-z]`), numbers\n(`[0-9]`), dashes (`-`), underscores (`_`), periods (`.`), tildes (`~`),\nplus (`+`) or percent signs (`%`). It must be between 3 and 255 characters\nin length, and it must not start with `\"goog\"`.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/subscriptions/[^/]+$" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/pubsub" - ], - "flatPath": "v1/projects/{projectsId}/subscriptions/{subscriptionsId}", - "id": "pubsub.projects.subscriptions.create", - "path": "v1/{+name}", - "request": { - "$ref": "Subscription" - }, - "description": "Creates a subscription to a given topic.\nIf the subscription already exists, returns `ALREADY_EXISTS`.\nIf the corresponding topic doesn't exist, returns `NOT_FOUND`.\n\nIf the name is not provided in the request, the server will assign a random\nname for this subscription on the same project as the topic, conforming\nto the\n[resource name format](https://cloud.google.com/pubsub/docs/overview#names).\nThe generated name is populated in the returned Subscription object.\nNote that for REST API requests, you must specify a name in the request." - }, - "acknowledge": { - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "subscription" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/pubsub" - ], - "parameters": { - "subscription": { - "location": "path", - "description": "The subscription whose message is being acknowledged.\nFormat is `projects/{project}/subscriptions/{sub}`.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/subscriptions/[^/]+$" - } - }, - "flatPath": "v1/projects/{projectsId}/subscriptions/{subscriptionsId}:acknowledge", - "path": "v1/{+subscription}:acknowledge", - "id": "pubsub.projects.subscriptions.acknowledge", - "description": "Acknowledges the messages associated with the `ack_ids` in the\n`AcknowledgeRequest`. The Pub/Sub system can remove the relevant messages\nfrom the subscription.\n\nAcknowledging a message whose ack deadline has expired may succeed,\nbut such a message may be redelivered later. Acknowledging a message more\nthan once will not result in an error.", - "request": { - "$ref": "AcknowledgeRequest" - } - }, - "get": { - "description": "Gets the configuration details of a subscription.", - "response": { - "$ref": "Subscription" - }, - "parameterOrder": [ - "subscription" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/pubsub" - ], - "parameters": { - "subscription": { - "description": "The name of the subscription to get.\nFormat is `projects/{project}/subscriptions/{sub}`.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/subscriptions/[^/]+$", - "location": "path" - } - }, - "flatPath": "v1/projects/{projectsId}/subscriptions/{subscriptionsId}", - "path": "v1/{+subscription}", - "id": "pubsub.projects.subscriptions.get" - }, - "patch": { - "flatPath": "v1/projects/{projectsId}/subscriptions/{subscriptionsId}", - "path": "v1/{+name}", - "id": "pubsub.projects.subscriptions.patch", - "request": { - "$ref": "UpdateSubscriptionRequest" - }, - "description": "Updates an existing subscription. Note that certain properties of a\nsubscription, such as its topic, are not modifiable.", - "response": { - "$ref": "Subscription" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "PATCH", - "parameters": { - "name": { - "description": "The name of the subscription. It must have the format\n`\"projects/{project}/subscriptions/{subscription}\"`. `{subscription}` must\nstart with a letter, and contain only letters (`[A-Za-z]`), numbers\n(`[0-9]`), dashes (`-`), underscores (`_`), periods (`.`), tildes (`~`),\nplus (`+`) or percent signs (`%`). It must be between 3 and 255 characters\nin length, and it must not start with `\"goog\"`.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/subscriptions/[^/]+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/pubsub" - ] - }, - "testIamPermissions": { - "httpMethod": "POST", - "parameterOrder": [ - "resource" - ], - "response": { - "$ref": "TestIamPermissionsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/pubsub" - ], - "parameters": { - "resource": { - "description": "REQUIRED: The resource for which the policy detail is being requested.\nSee the operation documentation for the appropriate value for this field.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/subscriptions/[^/]+$", - "location": "path" - } - }, - "flatPath": "v1/projects/{projectsId}/subscriptions/{subscriptionsId}:testIamPermissions", - "id": "pubsub.projects.subscriptions.testIamPermissions", - "path": "v1/{+resource}:testIamPermissions", - "description": "Returns permissions that a caller has on the specified resource.\nIf the resource does not exist, this will return an empty set of\npermissions, not a NOT_FOUND error.\n\nNote: This operation is designed to be used for building permission-aware\nUIs and command-line tools, not for authorization checking. This operation\nmay \"fail open\" without warning.", - "request": { - "$ref": "TestIamPermissionsRequest" - } - }, - "seek": { - "request": { - "$ref": "SeekRequest" - }, - "description": "Seeks an existing subscription to a point in time or to a given snapshot,\nwhichever is provided in the request.", - "httpMethod": "POST", - "parameterOrder": [ - "subscription" - ], - "response": { - "$ref": "SeekResponse" - }, - "parameters": { - "subscription": { - "location": "path", - "description": "The subscription to affect.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/subscriptions/[^/]+$" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/pubsub" - ], - "flatPath": "v1/projects/{projectsId}/subscriptions/{subscriptionsId}:seek", - "id": "pubsub.projects.subscriptions.seek", - "path": "v1/{+subscription}:seek" - }, - "modifyPushConfig": { - "flatPath": "v1/projects/{projectsId}/subscriptions/{subscriptionsId}:modifyPushConfig", - "path": "v1/{+subscription}:modifyPushConfig", - "id": "pubsub.projects.subscriptions.modifyPushConfig", - "description": "Modifies the `PushConfig` for a specified subscription.\n\nThis may be used to change a push subscription to a pull one (signified by\nan empty `PushConfig`) or vice versa, or change the endpoint URL and other\nattributes of a push subscription. Messages will accumulate for delivery\ncontinuously through the call regardless of changes to the `PushConfig`.", - "request": { - "$ref": "ModifyPushConfigRequest" - }, - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "subscription" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/pubsub" - ], - "parameters": { - "subscription": { - "location": "path", - "description": "The name of the subscription.\nFormat is `projects/{project}/subscriptions/{sub}`.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/subscriptions/[^/]+$" - } - } - }, - "delete": { - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "subscription" - ], - "httpMethod": "DELETE", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/pubsub" - ], - "parameters": { - "subscription": { - "description": "The subscription to delete.\nFormat is `projects/{project}/subscriptions/{sub}`.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/subscriptions/[^/]+$", - "location": "path" - } - }, - "flatPath": "v1/projects/{projectsId}/subscriptions/{subscriptionsId}", - "path": "v1/{+subscription}", - "id": "pubsub.projects.subscriptions.delete", - "description": "Deletes an existing subscription. All messages retained in the subscription\nare immediately dropped. Calls to `Pull` after deletion will return\n`NOT_FOUND`. After a subscription is deleted, a new one may be created with\nthe same name, but the new one has no association with the old\nsubscription or its topic unless the same topic is specified." - } - } - }, - "snapshots": { - "methods": { - "getIamPolicy": { - "flatPath": "v1/projects/{projectsId}/snapshots/{snapshotsId}:getIamPolicy", - "id": "pubsub.projects.snapshots.getIamPolicy", - "path": "v1/{+resource}:getIamPolicy", - "description": "Gets the access control policy for a resource.\nReturns an empty policy if the resource exists and does not have a policy\nset.", - "httpMethod": "GET", - "parameterOrder": [ - "resource" - ], - "response": { - "$ref": "Policy" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/pubsub" - ], - "parameters": { - "resource": { - "location": "path", - "description": "REQUIRED: The resource for which the policy is being requested.\nSee the operation documentation for the appropriate value for this field.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/snapshots/[^/]+$" - } - } - }, - "patch": { - "request": { - "$ref": "UpdateSnapshotRequest" - }, - "description": "Updates an existing snapshot. Note that certain properties of a\nsnapshot are not modifiable.", - "response": { - "$ref": "Snapshot" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "PATCH", - "parameters": { - "name": { - "description": "The name of the snapshot.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/snapshots/[^/]+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/pubsub" - ], - "flatPath": "v1/projects/{projectsId}/snapshots/{snapshotsId}", - "path": "v1/{+name}", - "id": "pubsub.projects.snapshots.patch" - }, - "get": { - "httpMethod": "GET", - "parameterOrder": [ - "snapshot" - ], - "response": { - "$ref": "Snapshot" - }, - "parameters": { - "snapshot": { - "description": "The name of the snapshot to get.\nFormat is `projects/{project}/snapshots/{snap}`.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/snapshots/[^/]+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/pubsub" - ], - "flatPath": "v1/projects/{projectsId}/snapshots/{snapshotsId}", - "id": "pubsub.projects.snapshots.get", - "path": "v1/{+snapshot}", - "description": "Gets the configuration details of a snapshot." - }, - "testIamPermissions": { - "flatPath": "v1/projects/{projectsId}/snapshots/{snapshotsId}:testIamPermissions", - "path": "v1/{+resource}:testIamPermissions", - "id": "pubsub.projects.snapshots.testIamPermissions", - "description": "Returns permissions that a caller has on the specified resource.\nIf the resource does not exist, this will return an empty set of\npermissions, not a NOT_FOUND error.\n\nNote: This operation is designed to be used for building permission-aware\nUIs and command-line tools, not for authorization checking. This operation\nmay \"fail open\" without warning.", - "request": { - "$ref": "TestIamPermissionsRequest" - }, - "response": { - "$ref": "TestIamPermissionsResponse" - }, - "parameterOrder": [ - "resource" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/pubsub" - ], - "parameters": { - "resource": { - "location": "path", - "description": "REQUIRED: The resource for which the policy detail is being requested.\nSee the operation documentation for the appropriate value for this field.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/snapshots/[^/]+$" - } - } - }, - "delete": { - "flatPath": "v1/projects/{projectsId}/snapshots/{snapshotsId}", - "id": "pubsub.projects.snapshots.delete", - "path": "v1/{+snapshot}", - "description": "Removes an existing snapshot. All messages retained in the snapshot\nare immediately dropped. After a snapshot is deleted, a new one may be\ncreated with the same name, but the new one has no association with the old\nsnapshot or its subscription, unless the same subscription is specified.", - "httpMethod": "DELETE", - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "snapshot" - ], - "parameters": { - "snapshot": { - "location": "path", - "description": "The name of the snapshot to delete.\nFormat is `projects/{project}/snapshots/{snap}`.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/snapshots/[^/]+$" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/pubsub" - ] - }, - "list": { - "flatPath": "v1/projects/{projectsId}/snapshots", - "path": "v1/{+project}/snapshots", - "id": "pubsub.projects.snapshots.list", - "description": "Lists the existing snapshots.", - "response": { - "$ref": "ListSnapshotsResponse" - }, - "parameterOrder": [ - "project" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/pubsub" - ], - "parameters": { - "pageSize": { - "description": "Maximum number of snapshots to return.", - "format": "int32", - "type": "integer", - "location": "query" - }, - "project": { - "location": "path", - "description": "The name of the cloud project that snapshots belong to.\nFormat is `projects/{project}`.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+$" - }, - "pageToken": { - "description": "The value returned by the last `ListSnapshotsResponse`; indicates that this\nis a continuation of a prior `ListSnapshots` call, and that the system\nshould return the next page of data.", - "type": "string", - "location": "query" - } - } - }, - "create": { - "description": "Creates a snapshot from the requested subscription.\nIf the snapshot already exists, returns `ALREADY_EXISTS`.\nIf the requested subscription doesn't exist, returns `NOT_FOUND`.\nIf the backlog in the subscription is too old -- and the resulting snapshot\nwould expire in less than 1 hour -- then `FAILED_PRECONDITION` is returned.\nSee also the `Snapshot.expire_time` field.\n\nIf the name is not provided in the request, the server will assign a random\nname for this snapshot on the same project as the subscription, conforming\nto the\n[resource name\nformat](https://cloud.google.com/pubsub/docs/overview#names). The generated\nname is populated in the returned Snapshot object. Note that for REST API\nrequests, you must specify a name in the request.", - "request": { - "$ref": "CreateSnapshotRequest" - }, - "response": { - "$ref": "Snapshot" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "PUT", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/pubsub" - ], - "parameters": { - "name": { - "location": "path", - "description": "Optional user-provided name for this snapshot.\nIf the name is not provided in the request, the server will assign a random\nname for this snapshot on the same project as the subscription.\nNote that for REST API requests, you must specify a name.\nFormat is `projects/{project}/snapshots/{snap}`.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/snapshots/[^/]+$" - } - }, - "flatPath": "v1/projects/{projectsId}/snapshots/{snapshotsId}", - "path": "v1/{+name}", - "id": "pubsub.projects.snapshots.create" - }, - "setIamPolicy": { - "request": { - "$ref": "SetIamPolicyRequest" - }, - "description": "Sets the access control policy on the specified resource. Replaces any\nexisting policy.", - "response": { - "$ref": "Policy" - }, - "parameterOrder": [ - "resource" - ], - "httpMethod": "POST", - "parameters": { - "resource": { - "description": "REQUIRED: The resource for which the policy is being specified.\nSee the operation documentation for the appropriate value for this field.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/snapshots/[^/]+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/pubsub" - ], - "flatPath": "v1/projects/{projectsId}/snapshots/{snapshotsId}:setIamPolicy", - "path": "v1/{+resource}:setIamPolicy", - "id": "pubsub.projects.snapshots.setIamPolicy" - } - } - }, - "topics": { - "methods": { - "testIamPermissions": { - "flatPath": "v1/projects/{projectsId}/topics/{topicsId}:testIamPermissions", - "path": "v1/{+resource}:testIamPermissions", - "id": "pubsub.projects.topics.testIamPermissions", - "description": "Returns permissions that a caller has on the specified resource.\nIf the resource does not exist, this will return an empty set of\npermissions, not a NOT_FOUND error.\n\nNote: This operation is designed to be used for building permission-aware\nUIs and command-line tools, not for authorization checking. This operation\nmay \"fail open\" without warning.", - "request": { - "$ref": "TestIamPermissionsRequest" - }, - "response": { - "$ref": "TestIamPermissionsResponse" - }, - "parameterOrder": [ - "resource" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/pubsub" - ], - "parameters": { - "resource": { - "description": "REQUIRED: The resource for which the policy detail is being requested.\nSee the operation documentation for the appropriate value for this field.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/topics/[^/]+$", - "location": "path" - } - } - }, - "delete": { - "description": "Deletes the topic with the given name. Returns `NOT_FOUND` if the topic\ndoes not exist. After a topic is deleted, a new topic may be created with\nthe same name; this is an entirely new topic with none of the old\nconfiguration or subscriptions. Existing subscriptions to this topic are\nnot deleted, but their `topic` field is set to `_deleted-topic_`.", - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "topic" - ], - "httpMethod": "DELETE", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/pubsub" - ], - "parameters": { - "topic": { - "description": "Name of the topic to delete.\nFormat is `projects/{project}/topics/{topic}`.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/topics/[^/]+$", - "location": "path" - } - }, - "flatPath": "v1/projects/{projectsId}/topics/{topicsId}", - "path": "v1/{+topic}", - "id": "pubsub.projects.topics.delete" - }, - "list": { - "description": "Lists matching topics.", - "response": { - "$ref": "ListTopicsResponse" - }, - "parameterOrder": [ - "project" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/pubsub" - ], - "parameters": { - "pageToken": { - "description": "The value returned by the last `ListTopicsResponse`; indicates that this is\na continuation of a prior `ListTopics` call, and that the system should\nreturn the next page of data.", - "type": "string", - "location": "query" - }, - "pageSize": { - "location": "query", - "description": "Maximum number of topics to return.", - "format": "int32", - "type": "integer" - }, - "project": { - "location": "path", - "description": "The name of the cloud project that topics belong to.\nFormat is `projects/{project}`.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+$" - } - }, - "flatPath": "v1/projects/{projectsId}/topics", - "path": "v1/{+project}/topics", - "id": "pubsub.projects.topics.list" - }, - "create": { - "request": { - "$ref": "Topic" - }, - "description": "Creates the given topic with the given name.", - "httpMethod": "PUT", - "parameterOrder": [ - "name" - ], - "response": { - "$ref": "Topic" - }, - "parameters": { - "name": { - "location": "path", - "description": "The name of the topic. It must have the format\n`\"projects/{project}/topics/{topic}\"`. `{topic}` must start with a letter,\nand contain only letters (`[A-Za-z]`), numbers (`[0-9]`), dashes (`-`),\nunderscores (`_`), periods (`.`), tildes (`~`), plus (`+`) or percent\nsigns (`%`). It must be between 3 and 255 characters in length, and it\nmust not start with `\"goog\"`.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/topics/[^/]+$" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/pubsub" - ], - "flatPath": "v1/projects/{projectsId}/topics/{topicsId}", - "id": "pubsub.projects.topics.create", - "path": "v1/{+name}" - }, - "setIamPolicy": { - "response": { - "$ref": "Policy" - }, - "parameterOrder": [ - "resource" - ], - "httpMethod": "POST", - "parameters": { - "resource": { - "location": "path", - "description": "REQUIRED: The resource for which the policy is being specified.\nSee the operation documentation for the appropriate value for this field.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/topics/[^/]+$" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/pubsub" - ], - "flatPath": "v1/projects/{projectsId}/topics/{topicsId}:setIamPolicy", - "path": "v1/{+resource}:setIamPolicy", - "id": "pubsub.projects.topics.setIamPolicy", - "request": { - "$ref": "SetIamPolicyRequest" - }, - "description": "Sets the access control policy on the specified resource. Replaces any\nexisting policy." - }, - "getIamPolicy": { - "flatPath": "v1/projects/{projectsId}/topics/{topicsId}:getIamPolicy", - "path": "v1/{+resource}:getIamPolicy", - "id": "pubsub.projects.topics.getIamPolicy", - "description": "Gets the access control policy for a resource.\nReturns an empty policy if the resource exists and does not have a policy\nset.", - "response": { - "$ref": "Policy" - }, - "parameterOrder": [ - "resource" - ], - "httpMethod": "GET", - "parameters": { - "resource": { - "location": "path", - "description": "REQUIRED: The resource for which the policy is being requested.\nSee the operation documentation for the appropriate value for this field.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/topics/[^/]+$" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/pubsub" - ] - }, - "get": { - "description": "Gets the configuration of a topic.", - "response": { - "$ref": "Topic" - }, - "parameterOrder": [ - "topic" - ], - "httpMethod": "GET", - "parameters": { - "topic": { - "location": "path", - "description": "The name of the topic to get.\nFormat is `projects/{project}/topics/{topic}`.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/topics/[^/]+$" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/pubsub" - ], - "flatPath": "v1/projects/{projectsId}/topics/{topicsId}", - "path": "v1/{+topic}", - "id": "pubsub.projects.topics.get" - }, - "publish": { - "request": { - "$ref": "PublishRequest" - }, - "description": "Adds one or more messages to the topic. Returns `NOT_FOUND` if the topic\ndoes not exist. The message payload must not be empty; it must contain\n either a non-empty data field, or at least one attribute.", - "httpMethod": "POST", - "parameterOrder": [ - "topic" - ], - "response": { - "$ref": "PublishResponse" - }, - "parameters": { - "topic": { - "location": "path", - "description": "The messages in the request will be published on this topic.\nFormat is `projects/{project}/topics/{topic}`.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/topics/[^/]+$" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/pubsub" - ], - "flatPath": "v1/projects/{projectsId}/topics/{topicsId}:publish", - "id": "pubsub.projects.topics.publish", - "path": "v1/{+topic}:publish" - } - }, - "resources": { - "subscriptions": { - "methods": { - "list": { - "description": "Lists the names of the subscriptions on this topic.", - "httpMethod": "GET", - "response": { - "$ref": "ListTopicSubscriptionsResponse" - }, - "parameterOrder": [ - "topic" - ], - "parameters": { - "pageSize": { - "location": "query", - "description": "Maximum number of subscription names to return.", - "format": "int32", - "type": "integer" - }, - "topic": { - "description": "The name of the topic that subscriptions are attached to.\nFormat is `projects/{project}/topics/{topic}`.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/topics/[^/]+$", - "location": "path" - }, - "pageToken": { - "location": "query", - "description": "The value returned by the last `ListTopicSubscriptionsResponse`; indicates\nthat this is a continuation of a prior `ListTopicSubscriptions` call, and\nthat the system should return the next page of data.", - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/pubsub" - ], - "flatPath": "v1/projects/{projectsId}/topics/{topicsId}/subscriptions", - "id": "pubsub.projects.topics.subscriptions.list", - "path": "v1/{+topic}/subscriptions" - } - } - }, - "snapshots": { - "methods": { - "list": { - "description": "Lists the names of the snapshots on this topic.", - "httpMethod": "GET", - "parameterOrder": [ - "topic" - ], - "response": { - "$ref": "ListTopicSnapshotsResponse" - }, - "parameters": { - "pageToken": { - "description": "The value returned by the last `ListTopicSnapshotsResponse`; indicates\nthat this is a continuation of a prior `ListTopicSnapshots` call, and\nthat the system should return the next page of data.", - "type": "string", - "location": "query" - }, - "pageSize": { - "description": "Maximum number of snapshot names to return.", - "format": "int32", - "type": "integer", - "location": "query" - }, - "topic": { - "description": "The name of the topic that snapshots are attached to.\nFormat is `projects/{project}/topics/{topic}`.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/topics/[^/]+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/pubsub" - ], - "flatPath": "v1/projects/{projectsId}/topics/{topicsId}/snapshots", - "id": "pubsub.projects.topics.snapshots.list", - "path": "v1/{+topic}/snapshots" - } - } - } - } - } - } - } - }, - "parameters": { - "pp": { - "location": "query", - "description": "Pretty-print response.", - "type": "boolean", - "default": "true" - }, - "bearer_token": { - "location": "query", - "description": "OAuth bearer token.", - "type": "string" - }, - "oauth_token": { - "location": "query", - "description": "OAuth 2.0 token for the current user.", - "type": "string" - }, - "upload_protocol": { - "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", - "type": "string", - "location": "query" - }, - "prettyPrint": { - "description": "Returns response with indentations and line breaks.", - "type": "boolean", - "default": "true", - "location": "query" - }, - "uploadType": { - "location": "query", - "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", - "type": "string" - }, - "fields": { - "description": "Selector specifying which fields to include in a partial response.", - "type": "string", - "location": "query" - }, - "callback": { - "description": "JSONP", - "type": "string", - "location": "query" - }, - "$.xgafv": { - "description": "V1 error format.", - "type": "string", - "enumDescriptions": [ - "v1 error format", - "v2 error format" - ], - "location": "query", - "enum": [ - "1", - "2" - ] - }, - "alt": { - "type": "string", - "enumDescriptions": [ - "Responses with Content-Type of application/json", - "Media download with context-dependent Content-Type", - "Responses with Content-Type of application/x-protobuf" - ], - "location": "query", - "description": "Data format for response.", - "default": "json", - "enum": [ - "json", - "media", - "proto" - ] - }, - "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.", - "type": "string", - "location": "query" - }, - "access_token": { - "location": "query", - "description": "OAuth access token.", - "type": "string" - }, - "quotaUser": { - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", - "type": "string", - "location": "query" - } - }, - "schemas": { - "CreateSnapshotRequest": { - "description": "Request for the `CreateSnapshot` method.", - "type": "object", - "properties": { - "subscription": { - "description": "The subscription whose backlog the snapshot retains.\nSpecifically, the created snapshot is guaranteed to retain:\n (a) The existing backlog on the subscription. More precisely, this is\n defined as the messages in the subscription's backlog that are\n unacknowledged upon the successful completion of the\n `CreateSnapshot` request; as well as:\n (b) Any messages published to the subscription's topic following the\n successful completion of the CreateSnapshot request.\nFormat is `projects/{project}/subscriptions/{sub}`.", - "type": "string" - } - }, - "id": "CreateSnapshotRequest" - }, - "ListTopicSnapshotsResponse": { - "description": "Response for the `ListTopicSnapshots` method.", - "type": "object", - "properties": { - "nextPageToken": { - "description": "If not empty, indicates that there may be more snapshots that match\nthe request; this value should be passed in a new\n`ListTopicSnapshotsRequest` to get more snapshots.", - "type": "string" - }, - "snapshots": { - "description": "The names of the snapshots that match the request.", - "type": "array", - "items": { - "type": "string" - } - } - }, - "id": "ListTopicSnapshotsResponse" - }, - "TestIamPermissionsRequest": { - "description": "Request message for `TestIamPermissions` method.", - "type": "object", - "properties": { - "permissions": { - "description": "The set of permissions to check for the `resource`. Permissions with\nwildcards (such as '*' or 'storage.*') are not allowed. For more\ninformation see\n[IAM Overview](https://cloud.google.com/iam/docs/overview#permissions).", - "type": "array", - "items": { - "type": "string" - } - } - }, - "id": "TestIamPermissionsRequest" - }, - "Topic": { - "description": "A topic resource.", - "type": "object", - "properties": { - "name": { - "description": "The name of the topic. It must have the format\n`\"projects/{project}/topics/{topic}\"`. `{topic}` must start with a letter,\nand contain only letters (`[A-Za-z]`), numbers (`[0-9]`), dashes (`-`),\nunderscores (`_`), periods (`.`), tildes (`~`), plus (`+`) or percent\nsigns (`%`). It must be between 3 and 255 characters in length, and it\nmust not start with `\"goog\"`.", - "type": "string" - } - }, - "id": "Topic" - }, - "Policy": { - "description": "Defines an Identity and Access Management (IAM) policy. It is used to\nspecify access control policies for Cloud Platform resources.\n\n\nA `Policy` consists of a list of `bindings`. A `Binding` binds a list of\n`members` to a `role`, where the members can be user accounts, Google groups,\nGoogle domains, and service accounts. A `role` is a named list of permissions\ndefined by IAM.\n\n**Example**\n\n {\n \"bindings\": [\n {\n \"role\": \"roles/owner\",\n \"members\": [\n \"user:mike@example.com\",\n \"group:admins@example.com\",\n \"domain:google.com\",\n \"serviceAccount:my-other-app@appspot.gserviceaccount.com\",\n ]\n },\n {\n \"role\": \"roles/viewer\",\n \"members\": [\"user:sean@example.com\"]\n }\n ]\n }\n\nFor a description of IAM and its features, see the\n[IAM developer's guide](https://cloud.google.com/iam/docs).", - "type": "object", - "properties": { - "etag": { - "description": "`etag` is used for optimistic concurrency control as a way to help\nprevent simultaneous updates of a policy from overwriting each other.\nIt is strongly suggested that systems make use of the `etag` in the\nread-modify-write cycle to perform policy updates in order to avoid race\nconditions: An `etag` is returned in the response to `getIamPolicy`, and\nsystems are expected to put that etag in the request to `setIamPolicy` to\nensure that their change will be applied to the same version of the policy.\n\nIf no `etag` is provided in the call to `setIamPolicy`, then the existing\npolicy is overwritten blindly.", - "format": "byte", - "type": "string" - }, - "version": { - "description": "Deprecated.", - "format": "int32", - "type": "integer" - }, - "bindings": { - "description": "Associates a list of `members` to a `role`.\n`bindings` with no members will result in an error.", - "type": "array", - "items": { - "$ref": "Binding" - } - } - }, - "id": "Policy" - }, - "Binding": { - "description": "Associates `members` with a `role`.", - "type": "object", - "properties": { - "members": { - "description": "Specifies the identities requesting access for a Cloud Platform resource.\n`members` can have the following values:\n\n* `allUsers`: A special identifier that represents anyone who is\n on the internet; with or without a Google account.\n\n* `allAuthenticatedUsers`: A special identifier that represents anyone\n who is authenticated with a Google account or a service account.\n\n* `user:{emailid}`: An email address that represents a specific Google\n account. For example, `alice@gmail.com` or `joe@example.com`.\n\n\n* `serviceAccount:{emailid}`: An email address that represents a service\n account. For example, `my-other-app@appspot.gserviceaccount.com`.\n\n* `group:{emailid}`: An email address that represents a Google group.\n For example, `admins@example.com`.\n\n\n* `domain:{domain}`: A Google Apps domain name that represents all the\n users of that domain. For example, `google.com` or `example.com`.\n\n", - "type": "array", - "items": { - "type": "string" - } - }, - "role": { - "description": "Role that is assigned to `members`.\nFor example, `roles/viewer`, `roles/editor`, or `roles/owner`.\nRequired", - "type": "string" - } - }, - "id": "Binding" - }, - "SeekRequest": { - "description": "Request for the `Seek` method.", - "type": "object", - "properties": { - "time": { - "description": "The time to seek to.\nMessages retained in the subscription that were published before this\ntime are marked as acknowledged, and messages retained in the\nsubscription that were published after this time are marked as\nunacknowledged. Note that this operation affects only those messages\nretained in the subscription (configured by the combination of\n`message_retention_duration` and `retain_acked_messages`). For example,\nif `time` corresponds to a point before the message retention\nwindow (or to a point before the system's notion of the subscription\ncreation time), only retained messages will be marked as unacknowledged,\nand already-expunged messages will not be restored.", - "format": "google-datetime", - "type": "string" - }, - "snapshot": { - "description": "The snapshot to seek to. The snapshot's topic must be the same as that of\nthe provided subscription.\nFormat is `projects/{project}/snapshots/{snap}`.", - "type": "string" - } - }, - "id": "SeekRequest" - }, - "ReceivedMessage": { - "description": "A message and its corresponding acknowledgment ID.", - "type": "object", - "properties": { - "ackId": { - "description": "This ID can be used to acknowledge the received message.", - "type": "string" - }, - "message": { - "$ref": "PubsubMessage", - "description": "The message." - } - }, - "id": "ReceivedMessage" - }, - "PushConfig": { - "description": "Configuration for a push delivery endpoint.", - "type": "object", - "properties": { - "pushEndpoint": { - "description": "A URL locating the endpoint to which messages should be pushed.\nFor example, a Webhook endpoint might use \"https://example.com/push\".", - "type": "string" - }, - "attributes": { - "additionalProperties": { - "type": "string" - }, - "description": "Endpoint configuration attributes.\n\nEvery endpoint has a set of API supported attributes that can be used to\ncontrol different aspects of the message delivery.\n\nThe currently supported attribute is `x-goog-version`, which you can\nuse to change the format of the pushed message. This attribute\nindicates the version of the data expected by the endpoint. This\ncontrols the shape of the pushed message (i.e., its fields and metadata).\nThe endpoint version is based on the version of the Pub/Sub API.\n\nIf not present during the `CreateSubscription` call, it will default to\nthe version of the API used to make such call. If not present during a\n`ModifyPushConfig` call, its value will not be changed. `GetSubscription`\ncalls will always return a valid version, even if the subscription was\ncreated without this attribute.\n\nThe possible values for this attribute are:\n\n* `v1beta1`: uses the push format defined in the v1beta1 Pub/Sub API.\n* `v1` or `v1beta2`: uses the push format defined in the v1 Pub/Sub API.", - "type": "object" - } - }, - "id": "PushConfig" - }, - "TestIamPermissionsResponse": { - "description": "Response message for `TestIamPermissions` method.", - "type": "object", - "properties": { - "permissions": { - "description": "A subset of `TestPermissionsRequest.permissions` that the caller is\nallowed.", - "type": "array", - "items": { - "type": "string" - } - } - }, - "id": "TestIamPermissionsResponse" - }, - "PullRequest": { - "description": "Request for the `Pull` method.", - "type": "object", - "properties": { - "maxMessages": { - "description": "The maximum number of messages returned for this request. The Pub/Sub\nsystem may return fewer than the number specified.", - "format": "int32", - "type": "integer" - }, - "returnImmediately": { - "description": "If this field set to true, the system will respond immediately even if\nit there are no messages available to return in the `Pull` response.\nOtherwise, the system may wait (for a bounded amount of time) until at\nleast one message is available, rather than returning no messages. The\nclient may cancel the request if it does not wish to wait any longer for\nthe response.", - "type": "boolean" - } - }, - "id": "PullRequest" - }, - "PublishRequest": { - "description": "Request for the Publish method.", - "type": "object", - "properties": { - "messages": { - "description": "The messages to publish.", - "type": "array", - "items": { - "$ref": "PubsubMessage" - } - } - }, - "id": "PublishRequest" - }, - "UpdateSubscriptionRequest": { - "description": "Request for the UpdateSubscription method.", - "type": "object", - "properties": { - "subscription": { - "description": "The updated subscription object.", - "$ref": "Subscription" - }, - "updateMask": { - "description": "Indicates which fields in the provided subscription to update.\nMust be specified and non-empty.", - "format": "google-fieldmask", - "type": "string" - } - }, - "id": "UpdateSubscriptionRequest" - }, - "PublishResponse": { - "description": "Response for the `Publish` method.", - "type": "object", - "properties": { - "messageIds": { - "description": "The server-assigned ID of each published message, in the same order as\nthe messages in the request. IDs are guaranteed to be unique within\nthe topic.", - "type": "array", - "items": { - "type": "string" - } - } - }, - "id": "PublishResponse" - }, - "Subscription": { - "description": "A subscription resource.", - "type": "object", - "properties": { - "messageRetentionDuration": { - "description": "How long to retain unacknowledged messages in the subscription's backlog,\nfrom the moment a message is published.\nIf `retain_acked_messages` is true, then this also configures the retention\nof acknowledged messages, and thus configures how far back in time a `Seek`\ncan be done. Defaults to 7 days. Cannot be more than 7 days or less than 10\nminutes.", - "format": "google-duration", - "type": "string" - }, - "retainAckedMessages": { - "description": "Indicates whether to retain acknowledged messages. If true, then\nmessages are not expunged from the subscription's backlog, even if they are\nacknowledged, until they fall out of the `message_retention_duration`\nwindow.", - "type": "boolean" - }, - "name": { - "description": "The name of the subscription. It must have the format\n`\"projects/{project}/subscriptions/{subscription}\"`. `{subscription}` must\nstart with a letter, and contain only letters (`[A-Za-z]`), numbers\n(`[0-9]`), dashes (`-`), underscores (`_`), periods (`.`), tildes (`~`),\nplus (`+`) or percent signs (`%`). It must be between 3 and 255 characters\nin length, and it must not start with `\"goog\"`.", - "type": "string" - }, - "topic": { - "description": "The name of the topic from which this subscription is receiving messages.\nFormat is `projects/{project}/topics/{topic}`.\nThe value of this field will be `_deleted-topic_` if the topic has been\ndeleted.", - "type": "string" - }, - "pushConfig": { - "description": "If push delivery is used with this subscription, this field is\nused to configure it. An empty `pushConfig` signifies that the subscriber\nwill pull and ack messages using API methods.", - "$ref": "PushConfig" - }, - "ackDeadlineSeconds": { - "description": "This value is the maximum time after a subscriber receives a message\nbefore the subscriber should acknowledge the message. After message\ndelivery but before the ack deadline expires and before the message is\nacknowledged, it is an outstanding message and will not be delivered\nagain during that time (on a best-effort basis).\n\nFor pull subscriptions, this value is used as the initial value for the ack\ndeadline. To override this value for a given message, call\n`ModifyAckDeadline` with the corresponding `ack_id` if using\nnon-streaming pull or send the `ack_id` in a\n`StreamingModifyAckDeadlineRequest` if using streaming pull.\nThe minimum custom deadline you can specify is 10 seconds.\nThe maximum custom deadline you can specify is 600 seconds (10 minutes).\nIf this parameter is 0, a default value of 10 seconds is used.\n\nFor push delivery, this value is also used to set the request timeout for\nthe call to the push endpoint.\n\nIf the subscriber never acknowledges the message, the Pub/Sub\nsystem will eventually redeliver the message.", - "format": "int32", - "type": "integer" - } - }, - "id": "Subscription" - }, - "SeekResponse": { - "type": "object", - "properties": {}, - "id": "SeekResponse" - }, - "ModifyAckDeadlineRequest": { - "description": "Request for the ModifyAckDeadline method.", - "type": "object", - "properties": { - "ackIds": { - "description": "List of acknowledgment IDs.", - "type": "array", - "items": { - "type": "string" - } - }, - "ackDeadlineSeconds": { - "description": "The new ack deadline with respect to the time this request was sent to\nthe Pub/Sub system. For example, if the value is 10, the new\nack deadline will expire 10 seconds after the `ModifyAckDeadline` call\nwas made. Specifying zero may immediately make the message available for\nanother pull request.\nThe minimum deadline you can specify is 0 seconds.\nThe maximum deadline you can specify is 600 seconds (10 minutes).", - "format": "int32", - "type": "integer" - } - }, - "id": "ModifyAckDeadlineRequest" - }, - "Snapshot": { - "description": "A snapshot resource.", - "type": "object", - "properties": { - "topic": { - "description": "The name of the topic from which this snapshot is retaining messages.", - "type": "string" - }, - "expireTime": { - "description": "The snapshot is guaranteed to exist up until this time.\nA newly-created snapshot expires no later than 7 days from the time of its\ncreation. Its exact lifetime is determined at creation by the existing\nbacklog in the source subscription. Specifically, the lifetime of the\nsnapshot is `7 days - (age of oldest unacked message in the subscription)`.\nFor example, consider a subscription whose oldest unacked message is 3 days\nold. If a snapshot is created from this subscription, the snapshot -- which\nwill always capture this 3-day-old backlog as long as the snapshot\nexists -- will expire in 4 days. The service will refuse to create a\nsnapshot that would expire in less than 1 hour after creation.", - "format": "google-datetime", - "type": "string" - }, - "name": { - "description": "The name of the snapshot.", - "type": "string" - } - }, - "id": "Snapshot" - }, - "SetIamPolicyRequest": { - "description": "Request message for `SetIamPolicy` method.", - "type": "object", - "properties": { - "policy": { - "description": "REQUIRED: The complete policy to be applied to the `resource`. The size of\nthe policy is limited to a few 10s of KB. An empty policy is a\nvalid policy but certain Cloud Platform services (such as Projects)\nmight reject them.", - "$ref": "Policy" - } - }, - "id": "SetIamPolicyRequest" - }, - "PubsubMessage": { - "description": "A message data and its attributes. The message payload must not be empty;\nit must contain either a non-empty data field, or at least one attribute.", - "type": "object", - "properties": { - "attributes": { - "additionalProperties": { - "type": "string" - }, - "description": "Optional attributes for this message.", - "type": "object" - }, - "messageId": { - "description": "ID of this message, assigned by the server when the message is published.\nGuaranteed to be unique within the topic. This value may be read by a\nsubscriber that receives a `PubsubMessage` via a `Pull` call or a push\ndelivery. It must not be populated by the publisher in a `Publish` call.", - "type": "string" - }, - "publishTime": { - "description": "The time at which the message was published, populated by the server when\nit receives the `Publish` call. It must not be populated by the\npublisher in a `Publish` call.", - "format": "google-datetime", - "type": "string" - }, - "data": { - "description": "The message payload.", - "format": "byte", - "type": "string" - } - }, - "id": "PubsubMessage" - }, - "ModifyPushConfigRequest": { - "description": "Request for the ModifyPushConfig method.", - "type": "object", - "properties": { - "pushConfig": { - "$ref": "PushConfig", - "description": "The push configuration for future deliveries.\n\nAn empty `pushConfig` indicates that the Pub/Sub system should\nstop pushing messages from the given subscription and allow\nmessages to be pulled and acknowledged - effectively pausing\nthe subscription if `Pull` or `StreamingPull` is not called." - } - }, - "id": "ModifyPushConfigRequest" - }, - "AcknowledgeRequest": { - "description": "Request for the Acknowledge method.", - "type": "object", - "properties": { - "ackIds": { - "description": "The acknowledgment ID for the messages being acknowledged that was returned\nby the Pub/Sub system in the `Pull` response. Must not be empty.", - "type": "array", - "items": { - "type": "string" - } - } - }, - "id": "AcknowledgeRequest" - }, - "ListTopicsResponse": { - "description": "Response for the `ListTopics` method.", - "type": "object", - "properties": { - "nextPageToken": { - "description": "If not empty, indicates that there may be more topics that match the\nrequest; this value should be passed in a new `ListTopicsRequest`.", - "type": "string" - }, - "topics": { - "description": "The resulting topics.", - "type": "array", - "items": { - "$ref": "Topic" - } - } - }, - "id": "ListTopicsResponse" - }, - "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 `{}`.", - "type": "object", - "properties": {}, - "id": "Empty" - }, - "ListTopicSubscriptionsResponse": { - "description": "Response for the `ListTopicSubscriptions` method.", - "type": "object", - "properties": { - "nextPageToken": { - "description": "If not empty, indicates that there may be more subscriptions that match\nthe request; this value should be passed in a new\n`ListTopicSubscriptionsRequest` to get more subscriptions.", - "type": "string" - }, - "subscriptions": { - "description": "The names of the subscriptions that match the request.", - "type": "array", - "items": { - "type": "string" - } - } - }, - "id": "ListTopicSubscriptionsResponse" - }, - "PullResponse": { - "description": "Response for the `Pull` method.", - "type": "object", - "properties": { - "receivedMessages": { - "description": "Received Pub/Sub messages. The Pub/Sub system will return zero messages if\nthere are no more available in the backlog. The Pub/Sub system may return\nfewer than the `maxMessages` requested even if there are more messages\navailable in the backlog.", - "type": "array", - "items": { - "$ref": "ReceivedMessage" - } - } - }, - "id": "PullResponse" - }, - "UpdateSnapshotRequest": { - "description": "Request for the UpdateSnapshot method.", - "type": "object", - "properties": { - "updateMask": { - "description": "Indicates which fields in the provided snapshot to update.\nMust be specified and non-empty.", - "format": "google-fieldmask", - "type": "string" - }, - "snapshot": { - "description": "The updated snpashot object.", - "$ref": "Snapshot" - } - }, - "id": "UpdateSnapshotRequest" - }, - "ListSubscriptionsResponse": { - "description": "Response for the `ListSubscriptions` method.", - "type": "object", - "properties": { - "nextPageToken": { - "description": "If not empty, indicates that there may be more subscriptions that match\nthe request; this value should be passed in a new\n`ListSubscriptionsRequest` to get more subscriptions.", - "type": "string" - }, - "subscriptions": { - "description": "The subscriptions that match the request.", - "type": "array", - "items": { - "$ref": "Subscription" - } - } - }, - "id": "ListSubscriptionsResponse" - }, - "ListSnapshotsResponse": { - "description": "Response for the `ListSnapshots` method.", - "type": "object", - "properties": { - "nextPageToken": { - "description": "If not empty, indicates that there may be more snapshot that match the\nrequest; this value should be passed in a new `ListSnapshotsRequest`.", - "type": "string" - }, - "snapshots": { - "description": "The resulting snapshots.", - "type": "array", - "items": { - "$ref": "Snapshot" - } - } - }, - "id": "ListSnapshotsResponse" - } - }, - "protocol": "rest", - "icons": { - "x16": "http://www.google.com/images/icons/product/search-16.gif", - "x32": "http://www.google.com/images/icons/product/search-32.gif" - }, - "version": "v1", - "baseUrl": "https://pubsub.googleapis.com/", - "canonicalName": "Pubsub", "auth": { "oauth2": { "scopes": { @@ -1527,8 +11,1524 @@ } } }, - "kind": "discovery#restDescription", + "basePath": "", + "baseUrl": "https://pubsub.googleapis.com/", + "batchPath": "batch", + "canonicalName": "Pubsub", "description": "Provides reliable, many-to-many, asynchronous messaging between applications.\n", + "discoveryVersion": "v1", + "documentationLink": "https://cloud.google.com/pubsub/docs", + "icons": { + "x16": "http://www.google.com/images/icons/product/search-16.gif", + "x32": "http://www.google.com/images/icons/product/search-32.gif" + }, + "id": "pubsub:v1", + "kind": "discovery#restDescription", + "name": "pubsub", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "$.xgafv": { + "description": "V1 error format.", + "enum": [ + "1", + "2" + ], + "enumDescriptions": [ + "v1 error format", + "v2 error format" + ], + "location": "query", + "type": "string" + }, + "access_token": { + "description": "OAuth access token.", + "location": "query", + "type": "string" + }, + "alt": { + "default": "json", + "description": "Data format for response.", + "enum": [ + "json", + "media", + "proto" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json", + "Media download with context-dependent Content-Type", + "Responses with Content-Type of application/x-protobuf" + ], + "location": "query", + "type": "string" + }, + "bearer_token": { + "description": "OAuth bearer token.", + "location": "query", + "type": "string" + }, + "callback": { + "description": "JSONP", + "location": "query", + "type": "string" + }, + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "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.", + "location": "query", + "type": "string" + }, + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "pp": { + "default": "true", + "description": "Pretty-print response.", + "location": "query", + "type": "boolean" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", + "location": "query", + "type": "string" + }, + "uploadType": { + "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", + "location": "query", + "type": "string" + }, + "upload_protocol": { + "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", + "location": "query", + "type": "string" + } + }, + "protocol": "rest", + "resources": { + "projects": { + "resources": { + "snapshots": { + "methods": { + "create": { + "description": "[ALPHA] This method is a part of a closed Alpha API.\nCreates a snapshot from the requested subscription.\nIf the snapshot already exists, returns `ALREADY_EXISTS`.\nIf the requested subscription doesn't exist, returns `NOT_FOUND`.\nIf the backlog in the subscription is too old -- and the resulting snapshot\nwould expire in less than 1 hour -- then `FAILED_PRECONDITION` is returned.\nSee also the `Snapshot.expire_time` field.\n\nIf the name is not provided in the request, the server will assign a random\nname for this snapshot on the same project as the subscription, conforming\nto the\n[resource name\nformat](https://cloud.google.com/pubsub/docs/overview#names). The generated\nname is populated in the returned Snapshot object. Note that for REST API\nrequests, you must specify a name in the request.", + "flatPath": "v1/projects/{projectsId}/snapshots/{snapshotsId}", + "httpMethod": "PUT", + "id": "pubsub.projects.snapshots.create", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Optional user-provided name for this snapshot.\nIf the name is not provided in the request, the server will assign a random\nname for this snapshot on the same project as the subscription.\nNote that for REST API requests, you must specify a name.\nFormat is `projects/{project}/snapshots/{snap}`.", + "location": "path", + "pattern": "^projects/[^/]+/snapshots/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "request": { + "$ref": "CreateSnapshotRequest" + }, + "response": { + "$ref": "Snapshot" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/pubsub" + ] + }, + "delete": { + "description": "Removes an existing snapshot. All messages retained in the snapshot\nare immediately dropped. After a snapshot is deleted, a new one may be\ncreated with the same name, but the new one has no association with the old\nsnapshot or its subscription, unless the same subscription is specified.\n[ALPHA] This method is a part of a closed Alpha API.", + "flatPath": "v1/projects/{projectsId}/snapshots/{snapshotsId}", + "httpMethod": "DELETE", + "id": "pubsub.projects.snapshots.delete", + "parameterOrder": [ + "snapshot" + ], + "parameters": { + "snapshot": { + "description": "The name of the snapshot to delete.\nFormat is `projects/{project}/snapshots/{snap}`.", + "location": "path", + "pattern": "^projects/[^/]+/snapshots/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+snapshot}", + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/pubsub" + ] + }, + "get": { + "description": "Gets the configuration details of a snapshot.\n[ALPHA] This method is a part of a closed Alpha API.", + "flatPath": "v1/projects/{projectsId}/snapshots/{snapshotsId}", + "httpMethod": "GET", + "id": "pubsub.projects.snapshots.get", + "parameterOrder": [ + "snapshot" + ], + "parameters": { + "snapshot": { + "description": "The name of the snapshot to get.\nFormat is `projects/{project}/snapshots/{snap}`.", + "location": "path", + "pattern": "^projects/[^/]+/snapshots/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+snapshot}", + "response": { + "$ref": "Snapshot" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/pubsub" + ] + }, + "getIamPolicy": { + "description": "Gets the access control policy for a resource.\nReturns an empty policy if the resource exists and does not have a policy\nset.", + "flatPath": "v1/projects/{projectsId}/snapshots/{snapshotsId}:getIamPolicy", + "httpMethod": "GET", + "id": "pubsub.projects.snapshots.getIamPolicy", + "parameterOrder": [ + "resource" + ], + "parameters": { + "resource": { + "description": "REQUIRED: The resource for which the policy is being requested.\nSee the operation documentation for the appropriate value for this field.", + "location": "path", + "pattern": "^projects/[^/]+/snapshots/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+resource}:getIamPolicy", + "response": { + "$ref": "Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/pubsub" + ] + }, + "list": { + "description": "Lists the existing snapshots.\n[ALPHA] This method is a part of a closed Alpha API.", + "flatPath": "v1/projects/{projectsId}/snapshots", + "httpMethod": "GET", + "id": "pubsub.projects.snapshots.list", + "parameterOrder": [ + "project" + ], + "parameters": { + "pageSize": { + "description": "Maximum number of snapshots to return.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "The value returned by the last `ListSnapshotsResponse`; indicates that this\nis a continuation of a prior `ListSnapshots` call, and that the system\nshould return the next page of data.", + "location": "query", + "type": "string" + }, + "project": { + "description": "The name of the cloud project that snapshots belong to.\nFormat is `projects/{project}`.", + "location": "path", + "pattern": "^projects/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+project}/snapshots", + "response": { + "$ref": "ListSnapshotsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/pubsub" + ] + }, + "patch": { + "description": "Updates an existing snapshot. Note that certain properties of a\nsnapshot are not modifiable.\n[ALPHA] This method is a part of a closed Alpha API.", + "flatPath": "v1/projects/{projectsId}/snapshots/{snapshotsId}", + "httpMethod": "PATCH", + "id": "pubsub.projects.snapshots.patch", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the snapshot.", + "location": "path", + "pattern": "^projects/[^/]+/snapshots/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "request": { + "$ref": "UpdateSnapshotRequest" + }, + "response": { + "$ref": "Snapshot" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/pubsub" + ] + }, + "setIamPolicy": { + "description": "Sets the access control policy on the specified resource. Replaces any\nexisting policy.", + "flatPath": "v1/projects/{projectsId}/snapshots/{snapshotsId}:setIamPolicy", + "httpMethod": "POST", + "id": "pubsub.projects.snapshots.setIamPolicy", + "parameterOrder": [ + "resource" + ], + "parameters": { + "resource": { + "description": "REQUIRED: The resource for which the policy is being specified.\nSee the operation documentation for the appropriate value for this field.", + "location": "path", + "pattern": "^projects/[^/]+/snapshots/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+resource}:setIamPolicy", + "request": { + "$ref": "SetIamPolicyRequest" + }, + "response": { + "$ref": "Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/pubsub" + ] + }, + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource.\nIf the resource does not exist, this will return an empty set of\npermissions, not a NOT_FOUND error.\n\nNote: This operation is designed to be used for building permission-aware\nUIs and command-line tools, not for authorization checking. This operation\nmay \"fail open\" without warning.", + "flatPath": "v1/projects/{projectsId}/snapshots/{snapshotsId}:testIamPermissions", + "httpMethod": "POST", + "id": "pubsub.projects.snapshots.testIamPermissions", + "parameterOrder": [ + "resource" + ], + "parameters": { + "resource": { + "description": "REQUIRED: The resource for which the policy detail is being requested.\nSee the operation documentation for the appropriate value for this field.", + "location": "path", + "pattern": "^projects/[^/]+/snapshots/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+resource}:testIamPermissions", + "request": { + "$ref": "TestIamPermissionsRequest" + }, + "response": { + "$ref": "TestIamPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/pubsub" + ] + } + } + }, + "subscriptions": { + "methods": { + "acknowledge": { + "description": "Acknowledges the messages associated with the `ack_ids` in the\n`AcknowledgeRequest`. The Pub/Sub system can remove the relevant messages\nfrom the subscription.\n\nAcknowledging a message whose ack deadline has expired may succeed,\nbut such a message may be redelivered later. Acknowledging a message more\nthan once will not result in an error.", + "flatPath": "v1/projects/{projectsId}/subscriptions/{subscriptionsId}:acknowledge", + "httpMethod": "POST", + "id": "pubsub.projects.subscriptions.acknowledge", + "parameterOrder": [ + "subscription" + ], + "parameters": { + "subscription": { + "description": "The subscription whose message is being acknowledged.\nFormat is `projects/{project}/subscriptions/{sub}`.", + "location": "path", + "pattern": "^projects/[^/]+/subscriptions/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+subscription}:acknowledge", + "request": { + "$ref": "AcknowledgeRequest" + }, + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/pubsub" + ] + }, + "create": { + "description": "Creates a subscription to a given topic.\nIf the subscription already exists, returns `ALREADY_EXISTS`.\nIf the corresponding topic doesn't exist, returns `NOT_FOUND`.\n\nIf the name is not provided in the request, the server will assign a random\nname for this subscription on the same project as the topic, conforming\nto the\n[resource name format](https://cloud.google.com/pubsub/docs/overview#names).\nThe generated name is populated in the returned Subscription object.\nNote that for REST API requests, you must specify a name in the request.", + "flatPath": "v1/projects/{projectsId}/subscriptions/{subscriptionsId}", + "httpMethod": "PUT", + "id": "pubsub.projects.subscriptions.create", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the subscription. It must have the format\n`\"projects/{project}/subscriptions/{subscription}\"`. `{subscription}` must\nstart with a letter, and contain only letters (`[A-Za-z]`), numbers\n(`[0-9]`), dashes (`-`), underscores (`_`), periods (`.`), tildes (`~`),\nplus (`+`) or percent signs (`%`). It must be between 3 and 255 characters\nin length, and it must not start with `\"goog\"`.", + "location": "path", + "pattern": "^projects/[^/]+/subscriptions/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "request": { + "$ref": "Subscription" + }, + "response": { + "$ref": "Subscription" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/pubsub" + ] + }, + "delete": { + "description": "Deletes an existing subscription. All messages retained in the subscription\nare immediately dropped. Calls to `Pull` after deletion will return\n`NOT_FOUND`. After a subscription is deleted, a new one may be created with\nthe same name, but the new one has no association with the old\nsubscription or its topic unless the same topic is specified.", + "flatPath": "v1/projects/{projectsId}/subscriptions/{subscriptionsId}", + "httpMethod": "DELETE", + "id": "pubsub.projects.subscriptions.delete", + "parameterOrder": [ + "subscription" + ], + "parameters": { + "subscription": { + "description": "The subscription to delete.\nFormat is `projects/{project}/subscriptions/{sub}`.", + "location": "path", + "pattern": "^projects/[^/]+/subscriptions/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+subscription}", + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/pubsub" + ] + }, + "get": { + "description": "Gets the configuration details of a subscription.", + "flatPath": "v1/projects/{projectsId}/subscriptions/{subscriptionsId}", + "httpMethod": "GET", + "id": "pubsub.projects.subscriptions.get", + "parameterOrder": [ + "subscription" + ], + "parameters": { + "subscription": { + "description": "The name of the subscription to get.\nFormat is `projects/{project}/subscriptions/{sub}`.", + "location": "path", + "pattern": "^projects/[^/]+/subscriptions/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+subscription}", + "response": { + "$ref": "Subscription" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/pubsub" + ] + }, + "getIamPolicy": { + "description": "Gets the access control policy for a resource.\nReturns an empty policy if the resource exists and does not have a policy\nset.", + "flatPath": "v1/projects/{projectsId}/subscriptions/{subscriptionsId}:getIamPolicy", + "httpMethod": "GET", + "id": "pubsub.projects.subscriptions.getIamPolicy", + "parameterOrder": [ + "resource" + ], + "parameters": { + "resource": { + "description": "REQUIRED: The resource for which the policy is being requested.\nSee the operation documentation for the appropriate value for this field.", + "location": "path", + "pattern": "^projects/[^/]+/subscriptions/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+resource}:getIamPolicy", + "response": { + "$ref": "Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/pubsub" + ] + }, + "list": { + "description": "Lists matching subscriptions.", + "flatPath": "v1/projects/{projectsId}/subscriptions", + "httpMethod": "GET", + "id": "pubsub.projects.subscriptions.list", + "parameterOrder": [ + "project" + ], + "parameters": { + "pageSize": { + "description": "Maximum number of subscriptions to return.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "The value returned by the last `ListSubscriptionsResponse`; indicates that\nthis is a continuation of a prior `ListSubscriptions` call, and that the\nsystem should return the next page of data.", + "location": "query", + "type": "string" + }, + "project": { + "description": "The name of the cloud project that subscriptions belong to.\nFormat is `projects/{project}`.", + "location": "path", + "pattern": "^projects/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+project}/subscriptions", + "response": { + "$ref": "ListSubscriptionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/pubsub" + ] + }, + "modifyAckDeadline": { + "description": "Modifies the ack deadline for a specific message. This method is useful\nto indicate that more time is needed to process a message by the\nsubscriber, or to make the message available for redelivery if the\nprocessing was interrupted. Note that this does not modify the\nsubscription-level `ackDeadlineSeconds` used for subsequent messages.", + "flatPath": "v1/projects/{projectsId}/subscriptions/{subscriptionsId}:modifyAckDeadline", + "httpMethod": "POST", + "id": "pubsub.projects.subscriptions.modifyAckDeadline", + "parameterOrder": [ + "subscription" + ], + "parameters": { + "subscription": { + "description": "The name of the subscription.\nFormat is `projects/{project}/subscriptions/{sub}`.", + "location": "path", + "pattern": "^projects/[^/]+/subscriptions/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+subscription}:modifyAckDeadline", + "request": { + "$ref": "ModifyAckDeadlineRequest" + }, + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/pubsub" + ] + }, + "modifyPushConfig": { + "description": "Modifies the `PushConfig` for a specified subscription.\n\nThis may be used to change a push subscription to a pull one (signified by\nan empty `PushConfig`) or vice versa, or change the endpoint URL and other\nattributes of a push subscription. Messages will accumulate for delivery\ncontinuously through the call regardless of changes to the `PushConfig`.", + "flatPath": "v1/projects/{projectsId}/subscriptions/{subscriptionsId}:modifyPushConfig", + "httpMethod": "POST", + "id": "pubsub.projects.subscriptions.modifyPushConfig", + "parameterOrder": [ + "subscription" + ], + "parameters": { + "subscription": { + "description": "The name of the subscription.\nFormat is `projects/{project}/subscriptions/{sub}`.", + "location": "path", + "pattern": "^projects/[^/]+/subscriptions/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+subscription}:modifyPushConfig", + "request": { + "$ref": "ModifyPushConfigRequest" + }, + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/pubsub" + ] + }, + "patch": { + "description": "Updates an existing subscription. Note that certain properties of a\nsubscription, such as its topic, are not modifiable.", + "flatPath": "v1/projects/{projectsId}/subscriptions/{subscriptionsId}", + "httpMethod": "PATCH", + "id": "pubsub.projects.subscriptions.patch", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the subscription. It must have the format\n`\"projects/{project}/subscriptions/{subscription}\"`. `{subscription}` must\nstart with a letter, and contain only letters (`[A-Za-z]`), numbers\n(`[0-9]`), dashes (`-`), underscores (`_`), periods (`.`), tildes (`~`),\nplus (`+`) or percent signs (`%`). It must be between 3 and 255 characters\nin length, and it must not start with `\"goog\"`.", + "location": "path", + "pattern": "^projects/[^/]+/subscriptions/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "request": { + "$ref": "UpdateSubscriptionRequest" + }, + "response": { + "$ref": "Subscription" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/pubsub" + ] + }, + "pull": { + "description": "Pulls messages from the server. Returns an empty list if there are no\nmessages available in the backlog. The server may return `UNAVAILABLE` if\nthere are too many concurrent pull requests pending for the given\nsubscription.", + "flatPath": "v1/projects/{projectsId}/subscriptions/{subscriptionsId}:pull", + "httpMethod": "POST", + "id": "pubsub.projects.subscriptions.pull", + "parameterOrder": [ + "subscription" + ], + "parameters": { + "subscription": { + "description": "The subscription from which messages should be pulled.\nFormat is `projects/{project}/subscriptions/{sub}`.", + "location": "path", + "pattern": "^projects/[^/]+/subscriptions/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+subscription}:pull", + "request": { + "$ref": "PullRequest" + }, + "response": { + "$ref": "PullResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/pubsub" + ] + }, + "seek": { + "description": "Seeks an existing subscription to a point in time or to a given snapshot,\nwhichever is provided in the request.\n[ALPHA] This method is a part of a closed Alpha API.", + "flatPath": "v1/projects/{projectsId}/subscriptions/{subscriptionsId}:seek", + "httpMethod": "POST", + "id": "pubsub.projects.subscriptions.seek", + "parameterOrder": [ + "subscription" + ], + "parameters": { + "subscription": { + "description": "The subscription to affect.", + "location": "path", + "pattern": "^projects/[^/]+/subscriptions/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+subscription}:seek", + "request": { + "$ref": "SeekRequest" + }, + "response": { + "$ref": "SeekResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/pubsub" + ] + }, + "setIamPolicy": { + "description": "Sets the access control policy on the specified resource. Replaces any\nexisting policy.", + "flatPath": "v1/projects/{projectsId}/subscriptions/{subscriptionsId}:setIamPolicy", + "httpMethod": "POST", + "id": "pubsub.projects.subscriptions.setIamPolicy", + "parameterOrder": [ + "resource" + ], + "parameters": { + "resource": { + "description": "REQUIRED: The resource for which the policy is being specified.\nSee the operation documentation for the appropriate value for this field.", + "location": "path", + "pattern": "^projects/[^/]+/subscriptions/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+resource}:setIamPolicy", + "request": { + "$ref": "SetIamPolicyRequest" + }, + "response": { + "$ref": "Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/pubsub" + ] + }, + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource.\nIf the resource does not exist, this will return an empty set of\npermissions, not a NOT_FOUND error.\n\nNote: This operation is designed to be used for building permission-aware\nUIs and command-line tools, not for authorization checking. This operation\nmay \"fail open\" without warning.", + "flatPath": "v1/projects/{projectsId}/subscriptions/{subscriptionsId}:testIamPermissions", + "httpMethod": "POST", + "id": "pubsub.projects.subscriptions.testIamPermissions", + "parameterOrder": [ + "resource" + ], + "parameters": { + "resource": { + "description": "REQUIRED: The resource for which the policy detail is being requested.\nSee the operation documentation for the appropriate value for this field.", + "location": "path", + "pattern": "^projects/[^/]+/subscriptions/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+resource}:testIamPermissions", + "request": { + "$ref": "TestIamPermissionsRequest" + }, + "response": { + "$ref": "TestIamPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/pubsub" + ] + } + } + }, + "topics": { + "methods": { + "create": { + "description": "Creates the given topic with the given name.", + "flatPath": "v1/projects/{projectsId}/topics/{topicsId}", + "httpMethod": "PUT", + "id": "pubsub.projects.topics.create", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the topic. It must have the format\n`\"projects/{project}/topics/{topic}\"`. `{topic}` must start with a letter,\nand contain only letters (`[A-Za-z]`), numbers (`[0-9]`), dashes (`-`),\nunderscores (`_`), periods (`.`), tildes (`~`), plus (`+`) or percent\nsigns (`%`). It must be between 3 and 255 characters in length, and it\nmust not start with `\"goog\"`.", + "location": "path", + "pattern": "^projects/[^/]+/topics/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "request": { + "$ref": "Topic" + }, + "response": { + "$ref": "Topic" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/pubsub" + ] + }, + "delete": { + "description": "Deletes the topic with the given name. Returns `NOT_FOUND` if the topic\ndoes not exist. After a topic is deleted, a new topic may be created with\nthe same name; this is an entirely new topic with none of the old\nconfiguration or subscriptions. Existing subscriptions to this topic are\nnot deleted, but their `topic` field is set to `_deleted-topic_`.", + "flatPath": "v1/projects/{projectsId}/topics/{topicsId}", + "httpMethod": "DELETE", + "id": "pubsub.projects.topics.delete", + "parameterOrder": [ + "topic" + ], + "parameters": { + "topic": { + "description": "Name of the topic to delete.\nFormat is `projects/{project}/topics/{topic}`.", + "location": "path", + "pattern": "^projects/[^/]+/topics/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+topic}", + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/pubsub" + ] + }, + "get": { + "description": "Gets the configuration of a topic.", + "flatPath": "v1/projects/{projectsId}/topics/{topicsId}", + "httpMethod": "GET", + "id": "pubsub.projects.topics.get", + "parameterOrder": [ + "topic" + ], + "parameters": { + "topic": { + "description": "The name of the topic to get.\nFormat is `projects/{project}/topics/{topic}`.", + "location": "path", + "pattern": "^projects/[^/]+/topics/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+topic}", + "response": { + "$ref": "Topic" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/pubsub" + ] + }, + "getIamPolicy": { + "description": "Gets the access control policy for a resource.\nReturns an empty policy if the resource exists and does not have a policy\nset.", + "flatPath": "v1/projects/{projectsId}/topics/{topicsId}:getIamPolicy", + "httpMethod": "GET", + "id": "pubsub.projects.topics.getIamPolicy", + "parameterOrder": [ + "resource" + ], + "parameters": { + "resource": { + "description": "REQUIRED: The resource for which the policy is being requested.\nSee the operation documentation for the appropriate value for this field.", + "location": "path", + "pattern": "^projects/[^/]+/topics/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+resource}:getIamPolicy", + "response": { + "$ref": "Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/pubsub" + ] + }, + "list": { + "description": "Lists matching topics.", + "flatPath": "v1/projects/{projectsId}/topics", + "httpMethod": "GET", + "id": "pubsub.projects.topics.list", + "parameterOrder": [ + "project" + ], + "parameters": { + "pageSize": { + "description": "Maximum number of topics to return.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "The value returned by the last `ListTopicsResponse`; indicates that this is\na continuation of a prior `ListTopics` call, and that the system should\nreturn the next page of data.", + "location": "query", + "type": "string" + }, + "project": { + "description": "The name of the cloud project that topics belong to.\nFormat is `projects/{project}`.", + "location": "path", + "pattern": "^projects/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+project}/topics", + "response": { + "$ref": "ListTopicsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/pubsub" + ] + }, + "publish": { + "description": "Adds one or more messages to the topic. Returns `NOT_FOUND` if the topic\ndoes not exist. The message payload must not be empty; it must contain\n either a non-empty data field, or at least one attribute.", + "flatPath": "v1/projects/{projectsId}/topics/{topicsId}:publish", + "httpMethod": "POST", + "id": "pubsub.projects.topics.publish", + "parameterOrder": [ + "topic" + ], + "parameters": { + "topic": { + "description": "The messages in the request will be published on this topic.\nFormat is `projects/{project}/topics/{topic}`.", + "location": "path", + "pattern": "^projects/[^/]+/topics/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+topic}:publish", + "request": { + "$ref": "PublishRequest" + }, + "response": { + "$ref": "PublishResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/pubsub" + ] + }, + "setIamPolicy": { + "description": "Sets the access control policy on the specified resource. Replaces any\nexisting policy.", + "flatPath": "v1/projects/{projectsId}/topics/{topicsId}:setIamPolicy", + "httpMethod": "POST", + "id": "pubsub.projects.topics.setIamPolicy", + "parameterOrder": [ + "resource" + ], + "parameters": { + "resource": { + "description": "REQUIRED: The resource for which the policy is being specified.\nSee the operation documentation for the appropriate value for this field.", + "location": "path", + "pattern": "^projects/[^/]+/topics/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+resource}:setIamPolicy", + "request": { + "$ref": "SetIamPolicyRequest" + }, + "response": { + "$ref": "Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/pubsub" + ] + }, + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource.\nIf the resource does not exist, this will return an empty set of\npermissions, not a NOT_FOUND error.\n\nNote: This operation is designed to be used for building permission-aware\nUIs and command-line tools, not for authorization checking. This operation\nmay \"fail open\" without warning.", + "flatPath": "v1/projects/{projectsId}/topics/{topicsId}:testIamPermissions", + "httpMethod": "POST", + "id": "pubsub.projects.topics.testIamPermissions", + "parameterOrder": [ + "resource" + ], + "parameters": { + "resource": { + "description": "REQUIRED: The resource for which the policy detail is being requested.\nSee the operation documentation for the appropriate value for this field.", + "location": "path", + "pattern": "^projects/[^/]+/topics/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+resource}:testIamPermissions", + "request": { + "$ref": "TestIamPermissionsRequest" + }, + "response": { + "$ref": "TestIamPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/pubsub" + ] + } + }, + "resources": { + "snapshots": { + "methods": { + "list": { + "description": "Lists the names of the snapshots on this topic.\n[ALPHA] This method is a part of a closed Alpha API.", + "flatPath": "v1/projects/{projectsId}/topics/{topicsId}/snapshots", + "httpMethod": "GET", + "id": "pubsub.projects.topics.snapshots.list", + "parameterOrder": [ + "topic" + ], + "parameters": { + "pageSize": { + "description": "Maximum number of snapshot names to return.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "The value returned by the last `ListTopicSnapshotsResponse`; indicates\nthat this is a continuation of a prior `ListTopicSnapshots` call, and\nthat the system should return the next page of data.", + "location": "query", + "type": "string" + }, + "topic": { + "description": "The name of the topic that snapshots are attached to.\nFormat is `projects/{project}/topics/{topic}`.", + "location": "path", + "pattern": "^projects/[^/]+/topics/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+topic}/snapshots", + "response": { + "$ref": "ListTopicSnapshotsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/pubsub" + ] + } + } + }, + "subscriptions": { + "methods": { + "list": { + "description": "Lists the names of the subscriptions on this topic.", + "flatPath": "v1/projects/{projectsId}/topics/{topicsId}/subscriptions", + "httpMethod": "GET", + "id": "pubsub.projects.topics.subscriptions.list", + "parameterOrder": [ + "topic" + ], + "parameters": { + "pageSize": { + "description": "Maximum number of subscription names to return.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "The value returned by the last `ListTopicSubscriptionsResponse`; indicates\nthat this is a continuation of a prior `ListTopicSubscriptions` call, and\nthat the system should return the next page of data.", + "location": "query", + "type": "string" + }, + "topic": { + "description": "The name of the topic that subscriptions are attached to.\nFormat is `projects/{project}/topics/{topic}`.", + "location": "path", + "pattern": "^projects/[^/]+/topics/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+topic}/subscriptions", + "response": { + "$ref": "ListTopicSubscriptionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/pubsub" + ] + } + } + } + } + } + } + } + }, + "revision": "20180319", + "rootUrl": "https://pubsub.googleapis.com/", + "schemas": { + "AcknowledgeRequest": { + "description": "Request for the Acknowledge method.", + "id": "AcknowledgeRequest", + "properties": { + "ackIds": { + "description": "The acknowledgment ID for the messages being acknowledged that was returned\nby the Pub/Sub system in the `Pull` response. Must not be empty.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "Binding": { + "description": "Associates `members` with a `role`.", + "id": "Binding", + "properties": { + "members": { + "description": "Specifies the identities requesting access for a Cloud Platform resource.\n`members` can have the following values:\n\n* `allUsers`: A special identifier that represents anyone who is\n on the internet; with or without a Google account.\n\n* `allAuthenticatedUsers`: A special identifier that represents anyone\n who is authenticated with a Google account or a service account.\n\n* `user:{emailid}`: An email address that represents a specific Google\n account. For example, `alice@gmail.com` or `joe@example.com`.\n\n\n* `serviceAccount:{emailid}`: An email address that represents a service\n account. For example, `my-other-app@appspot.gserviceaccount.com`.\n\n* `group:{emailid}`: An email address that represents a Google group.\n For example, `admins@example.com`.\n\n\n* `domain:{domain}`: A Google Apps domain name that represents all the\n users of that domain. For example, `google.com` or `example.com`.\n\n", + "items": { + "type": "string" + }, + "type": "array" + }, + "role": { + "description": "Role that is assigned to `members`.\nFor example, `roles/viewer`, `roles/editor`, or `roles/owner`.\nRequired", + "type": "string" + } + }, + "type": "object" + }, + "CreateSnapshotRequest": { + "description": "Request for the `CreateSnapshot` method.", + "id": "CreateSnapshotRequest", + "properties": { + "subscription": { + "description": "The subscription whose backlog the snapshot retains.\nSpecifically, the created snapshot is guaranteed to retain:\n (a) The existing backlog on the subscription. More precisely, this is\n defined as the messages in the subscription's backlog that are\n unacknowledged upon the successful completion of the\n `CreateSnapshot` request; as well as:\n (b) Any messages published to the subscription's topic following the\n successful completion of the CreateSnapshot request.\nFormat is `projects/{project}/subscriptions/{sub}`.", + "type": "string" + } + }, + "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" + }, + "ListSnapshotsResponse": { + "description": "Response for the `ListSnapshots` method.", + "id": "ListSnapshotsResponse", + "properties": { + "nextPageToken": { + "description": "If not empty, indicates that there may be more snapshot that match the\nrequest; this value should be passed in a new `ListSnapshotsRequest`.", + "type": "string" + }, + "snapshots": { + "description": "The resulting snapshots.", + "items": { + "$ref": "Snapshot" + }, + "type": "array" + } + }, + "type": "object" + }, + "ListSubscriptionsResponse": { + "description": "Response for the `ListSubscriptions` method.", + "id": "ListSubscriptionsResponse", + "properties": { + "nextPageToken": { + "description": "If not empty, indicates that there may be more subscriptions that match\nthe request; this value should be passed in a new\n`ListSubscriptionsRequest` to get more subscriptions.", + "type": "string" + }, + "subscriptions": { + "description": "The subscriptions that match the request.", + "items": { + "$ref": "Subscription" + }, + "type": "array" + } + }, + "type": "object" + }, + "ListTopicSnapshotsResponse": { + "description": "Response for the `ListTopicSnapshots` method.\n[ALPHA] This method is a part of a closed Alpha API.", + "id": "ListTopicSnapshotsResponse", + "properties": { + "nextPageToken": { + "description": "If not empty, indicates that there may be more snapshots that match\nthe request; this value should be passed in a new\n`ListTopicSnapshotsRequest` to get more snapshots.", + "type": "string" + }, + "snapshots": { + "description": "The names of the snapshots that match the request.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "ListTopicSubscriptionsResponse": { + "description": "Response for the `ListTopicSubscriptions` method.", + "id": "ListTopicSubscriptionsResponse", + "properties": { + "nextPageToken": { + "description": "If not empty, indicates that there may be more subscriptions that match\nthe request; this value should be passed in a new\n`ListTopicSubscriptionsRequest` to get more subscriptions.", + "type": "string" + }, + "subscriptions": { + "description": "The names of the subscriptions that match the request.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "ListTopicsResponse": { + "description": "Response for the `ListTopics` method.", + "id": "ListTopicsResponse", + "properties": { + "nextPageToken": { + "description": "If not empty, indicates that there may be more topics that match the\nrequest; this value should be passed in a new `ListTopicsRequest`.", + "type": "string" + }, + "topics": { + "description": "The resulting topics.", + "items": { + "$ref": "Topic" + }, + "type": "array" + } + }, + "type": "object" + }, + "ModifyAckDeadlineRequest": { + "description": "Request for the ModifyAckDeadline method.", + "id": "ModifyAckDeadlineRequest", + "properties": { + "ackDeadlineSeconds": { + "description": "The new ack deadline with respect to the time this request was sent to\nthe Pub/Sub system. For example, if the value is 10, the new\nack deadline will expire 10 seconds after the `ModifyAckDeadline` call\nwas made. Specifying zero may immediately make the message available for\nanother pull request.\nThe minimum deadline you can specify is 0 seconds.\nThe maximum deadline you can specify is 600 seconds (10 minutes).", + "format": "int32", + "type": "integer" + }, + "ackIds": { + "description": "List of acknowledgment IDs.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "ModifyPushConfigRequest": { + "description": "Request for the ModifyPushConfig method.", + "id": "ModifyPushConfigRequest", + "properties": { + "pushConfig": { + "$ref": "PushConfig", + "description": "The push configuration for future deliveries.\n\nAn empty `pushConfig` indicates that the Pub/Sub system should\nstop pushing messages from the given subscription and allow\nmessages to be pulled and acknowledged - effectively pausing\nthe subscription if `Pull` or `StreamingPull` is not called." + } + }, + "type": "object" + }, + "Policy": { + "description": "Defines an Identity and Access Management (IAM) policy. It is used to\nspecify access control policies for Cloud Platform resources.\n\n\nA `Policy` consists of a list of `bindings`. A `Binding` binds a list of\n`members` to a `role`, where the members can be user accounts, Google groups,\nGoogle domains, and service accounts. A `role` is a named list of permissions\ndefined by IAM.\n\n**Example**\n\n {\n \"bindings\": [\n {\n \"role\": \"roles/owner\",\n \"members\": [\n \"user:mike@example.com\",\n \"group:admins@example.com\",\n \"domain:google.com\",\n \"serviceAccount:my-other-app@appspot.gserviceaccount.com\",\n ]\n },\n {\n \"role\": \"roles/viewer\",\n \"members\": [\"user:sean@example.com\"]\n }\n ]\n }\n\nFor a description of IAM and its features, see the\n[IAM developer's guide](https://cloud.google.com/iam/docs).", + "id": "Policy", + "properties": { + "bindings": { + "description": "Associates a list of `members` to a `role`.\n`bindings` with no members will result in an error.", + "items": { + "$ref": "Binding" + }, + "type": "array" + }, + "etag": { + "description": "`etag` is used for optimistic concurrency control as a way to help\nprevent simultaneous updates of a policy from overwriting each other.\nIt is strongly suggested that systems make use of the `etag` in the\nread-modify-write cycle to perform policy updates in order to avoid race\nconditions: An `etag` is returned in the response to `getIamPolicy`, and\nsystems are expected to put that etag in the request to `setIamPolicy` to\nensure that their change will be applied to the same version of the policy.\n\nIf no `etag` is provided in the call to `setIamPolicy`, then the existing\npolicy is overwritten blindly.", + "format": "byte", + "type": "string" + }, + "version": { + "description": "Deprecated.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "PublishRequest": { + "description": "Request for the Publish method.", + "id": "PublishRequest", + "properties": { + "messages": { + "description": "The messages to publish.", + "items": { + "$ref": "PubsubMessage" + }, + "type": "array" + } + }, + "type": "object" + }, + "PublishResponse": { + "description": "Response for the `Publish` method.", + "id": "PublishResponse", + "properties": { + "messageIds": { + "description": "The server-assigned ID of each published message, in the same order as\nthe messages in the request. IDs are guaranteed to be unique within\nthe topic.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "PubsubMessage": { + "description": "A message data and its attributes. The message payload must not be empty;\nit must contain either a non-empty data field, or at least one attribute.", + "id": "PubsubMessage", + "properties": { + "attributes": { + "additionalProperties": { + "type": "string" + }, + "description": "Optional attributes for this message.", + "type": "object" + }, + "data": { + "description": "The message payload.", + "format": "byte", + "type": "string" + }, + "messageId": { + "description": "ID of this message, assigned by the server when the message is published.\nGuaranteed to be unique within the topic. This value may be read by a\nsubscriber that receives a `PubsubMessage` via a `Pull` call or a push\ndelivery. It must not be populated by the publisher in a `Publish` call.", + "type": "string" + }, + "publishTime": { + "description": "The time at which the message was published, populated by the server when\nit receives the `Publish` call. It must not be populated by the\npublisher in a `Publish` call.", + "format": "google-datetime", + "type": "string" + } + }, + "type": "object" + }, + "PullRequest": { + "description": "Request for the `Pull` method.", + "id": "PullRequest", + "properties": { + "maxMessages": { + "description": "The maximum number of messages returned for this request. The Pub/Sub\nsystem may return fewer than the number specified.", + "format": "int32", + "type": "integer" + }, + "returnImmediately": { + "description": "If this field set to true, the system will respond immediately even if\nit there are no messages available to return in the `Pull` response.\nOtherwise, the system may wait (for a bounded amount of time) until at\nleast one message is available, rather than returning no messages. The\nclient may cancel the request if it does not wish to wait any longer for\nthe response.", + "type": "boolean" + } + }, + "type": "object" + }, + "PullResponse": { + "description": "Response for the `Pull` method.", + "id": "PullResponse", + "properties": { + "receivedMessages": { + "description": "Received Pub/Sub messages. The Pub/Sub system will return zero messages if\nthere are no more available in the backlog. The Pub/Sub system may return\nfewer than the `maxMessages` requested even if there are more messages\navailable in the backlog.", + "items": { + "$ref": "ReceivedMessage" + }, + "type": "array" + } + }, + "type": "object" + }, + "PushConfig": { + "description": "Configuration for a push delivery endpoint.", + "id": "PushConfig", + "properties": { + "attributes": { + "additionalProperties": { + "type": "string" + }, + "description": "Endpoint configuration attributes.\n\nEvery endpoint has a set of API supported attributes that can be used to\ncontrol different aspects of the message delivery.\n\nThe currently supported attribute is `x-goog-version`, which you can\nuse to change the format of the pushed message. This attribute\nindicates the version of the data expected by the endpoint. This\ncontrols the shape of the pushed message (i.e., its fields and metadata).\nThe endpoint version is based on the version of the Pub/Sub API.\n\nIf not present during the `CreateSubscription` call, it will default to\nthe version of the API used to make such call. If not present during a\n`ModifyPushConfig` call, its value will not be changed. `GetSubscription`\ncalls will always return a valid version, even if the subscription was\ncreated without this attribute.\n\nThe possible values for this attribute are:\n\n* `v1beta1`: uses the push format defined in the v1beta1 Pub/Sub API.\n* `v1` or `v1beta2`: uses the push format defined in the v1 Pub/Sub API.", + "type": "object" + }, + "pushEndpoint": { + "description": "A URL locating the endpoint to which messages should be pushed.\nFor example, a Webhook endpoint might use \"https://example.com/push\".", + "type": "string" + } + }, + "type": "object" + }, + "ReceivedMessage": { + "description": "A message and its corresponding acknowledgment ID.", + "id": "ReceivedMessage", + "properties": { + "ackId": { + "description": "This ID can be used to acknowledge the received message.", + "type": "string" + }, + "message": { + "$ref": "PubsubMessage", + "description": "The message." + } + }, + "type": "object" + }, + "SeekRequest": { + "description": "Request for the `Seek` method.", + "id": "SeekRequest", + "properties": { + "snapshot": { + "description": "The snapshot to seek to. The snapshot's topic must be the same as that of\nthe provided subscription.\nFormat is `projects/{project}/snapshots/{snap}`.", + "type": "string" + }, + "time": { + "description": "The time to seek to.\nMessages retained in the subscription that were published before this\ntime are marked as acknowledged, and messages retained in the\nsubscription that were published after this time are marked as\nunacknowledged. Note that this operation affects only those messages\nretained in the subscription (configured by the combination of\n`message_retention_duration` and `retain_acked_messages`). For example,\nif `time` corresponds to a point before the message retention\nwindow (or to a point before the system's notion of the subscription\ncreation time), only retained messages will be marked as unacknowledged,\nand already-expunged messages will not be restored.", + "format": "google-datetime", + "type": "string" + } + }, + "type": "object" + }, + "SeekResponse": { + "id": "SeekResponse", + "properties": {}, + "type": "object" + }, + "SetIamPolicyRequest": { + "description": "Request message for `SetIamPolicy` method.", + "id": "SetIamPolicyRequest", + "properties": { + "policy": { + "$ref": "Policy", + "description": "REQUIRED: The complete policy to be applied to the `resource`. The size of\nthe policy is limited to a few 10s of KB. An empty policy is a\nvalid policy but certain Cloud Platform services (such as Projects)\nmight reject them." + } + }, + "type": "object" + }, + "Snapshot": { + "description": "A snapshot resource.", + "id": "Snapshot", + "properties": { + "expireTime": { + "description": "The snapshot is guaranteed to exist up until this time.\nA newly-created snapshot expires no later than 7 days from the time of its\ncreation. Its exact lifetime is determined at creation by the existing\nbacklog in the source subscription. Specifically, the lifetime of the\nsnapshot is `7 days - (age of oldest unacked message in the subscription)`.\nFor example, consider a subscription whose oldest unacked message is 3 days\nold. If a snapshot is created from this subscription, the snapshot -- which\nwill always capture this 3-day-old backlog as long as the snapshot\nexists -- will expire in 4 days. The service will refuse to create a\nsnapshot that would expire in less than 1 hour after creation.", + "format": "google-datetime", + "type": "string" + }, + "name": { + "description": "The name of the snapshot.", + "type": "string" + }, + "topic": { + "description": "The name of the topic from which this snapshot is retaining messages.", + "type": "string" + } + }, + "type": "object" + }, + "Subscription": { + "description": "A subscription resource.", + "id": "Subscription", + "properties": { + "ackDeadlineSeconds": { + "description": "This value is the maximum time after a subscriber receives a message\nbefore the subscriber should acknowledge the message. After message\ndelivery but before the ack deadline expires and before the message is\nacknowledged, it is an outstanding message and will not be delivered\nagain during that time (on a best-effort basis).\n\nFor pull subscriptions, this value is used as the initial value for the ack\ndeadline. To override this value for a given message, call\n`ModifyAckDeadline` with the corresponding `ack_id` if using\nnon-streaming pull or send the `ack_id` in a\n`StreamingModifyAckDeadlineRequest` if using streaming pull.\nThe minimum custom deadline you can specify is 10 seconds.\nThe maximum custom deadline you can specify is 600 seconds (10 minutes).\nIf this parameter is 0, a default value of 10 seconds is used.\n\nFor push delivery, this value is also used to set the request timeout for\nthe call to the push endpoint.\n\nIf the subscriber never acknowledges the message, the Pub/Sub\nsystem will eventually redeliver the message.", + "format": "int32", + "type": "integer" + }, + "messageRetentionDuration": { + "description": "How long to retain unacknowledged messages in the subscription's backlog,\nfrom the moment a message is published.\nIf `retain_acked_messages` is true, then this also configures the retention\nof acknowledged messages, and thus configures how far back in time a `Seek`\ncan be done. Defaults to 7 days. Cannot be more than 7 days or less than 10\nminutes.\n[ALPHA] This field is a part of a closed Alpha API.", + "format": "google-duration", + "type": "string" + }, + "name": { + "description": "The name of the subscription. It must have the format\n`\"projects/{project}/subscriptions/{subscription}\"`. `{subscription}` must\nstart with a letter, and contain only letters (`[A-Za-z]`), numbers\n(`[0-9]`), dashes (`-`), underscores (`_`), periods (`.`), tildes (`~`),\nplus (`+`) or percent signs (`%`). It must be between 3 and 255 characters\nin length, and it must not start with `\"goog\"`.", + "type": "string" + }, + "pushConfig": { + "$ref": "PushConfig", + "description": "If push delivery is used with this subscription, this field is\nused to configure it. An empty `pushConfig` signifies that the subscriber\nwill pull and ack messages using API methods." + }, + "retainAckedMessages": { + "description": "Indicates whether to retain acknowledged messages. If true, then\nmessages are not expunged from the subscription's backlog, even if they are\nacknowledged, until they fall out of the `message_retention_duration`\nwindow.\n[ALPHA] This field is a part of a closed Alpha API.", + "type": "boolean" + }, + "topic": { + "description": "The name of the topic from which this subscription is receiving messages.\nFormat is `projects/{project}/topics/{topic}`.\nThe value of this field will be `_deleted-topic_` if the topic has been\ndeleted.", + "type": "string" + } + }, + "type": "object" + }, + "TestIamPermissionsRequest": { + "description": "Request message for `TestIamPermissions` method.", + "id": "TestIamPermissionsRequest", + "properties": { + "permissions": { + "description": "The set of permissions to check for the `resource`. Permissions with\nwildcards (such as '*' or 'storage.*') are not allowed. For more\ninformation see\n[IAM Overview](https://cloud.google.com/iam/docs/overview#permissions).", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "TestIamPermissionsResponse": { + "description": "Response message for `TestIamPermissions` method.", + "id": "TestIamPermissionsResponse", + "properties": { + "permissions": { + "description": "A subset of `TestPermissionsRequest.permissions` that the caller is\nallowed.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "Topic": { + "description": "A topic resource.", + "id": "Topic", + "properties": { + "name": { + "description": "The name of the topic. It must have the format\n`\"projects/{project}/topics/{topic}\"`. `{topic}` must start with a letter,\nand contain only letters (`[A-Za-z]`), numbers (`[0-9]`), dashes (`-`),\nunderscores (`_`), periods (`.`), tildes (`~`), plus (`+`) or percent\nsigns (`%`). It must be between 3 and 255 characters in length, and it\nmust not start with `\"goog\"`.", + "type": "string" + } + }, + "type": "object" + }, + "UpdateSnapshotRequest": { + "description": "Request for the UpdateSnapshot method.", + "id": "UpdateSnapshotRequest", + "properties": { + "snapshot": { + "$ref": "Snapshot", + "description": "The updated snpashot object." + }, + "updateMask": { + "description": "Indicates which fields in the provided snapshot to update.\nMust be specified and non-empty.", + "format": "google-fieldmask", + "type": "string" + } + }, + "type": "object" + }, + "UpdateSubscriptionRequest": { + "description": "Request for the UpdateSubscription method.", + "id": "UpdateSubscriptionRequest", + "properties": { + "subscription": { + "$ref": "Subscription", + "description": "The updated subscription object." + }, + "updateMask": { + "description": "Indicates which fields in the provided subscription to update.\nMust be specified and non-empty.", + "format": "google-fieldmask", + "type": "string" + } + }, + "type": "object" + } + }, "servicePath": "", - "rootUrl": "https://pubsub.googleapis.com/" -} + "title": "Google Cloud Pub/Sub API", + "version": "v1" +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/pubsub/v1/pubsub-gen.go b/vendor/google.golang.org/api/pubsub/v1/pubsub-gen.go index 2b4a3d24c..66c13b64d 100644 --- a/vendor/google.golang.org/api/pubsub/v1/pubsub-gen.go +++ b/vendor/google.golang.org/api/pubsub/v1/pubsub-gen.go @@ -379,6 +379,7 @@ func (s *ListSubscriptionsResponse) MarshalJSON() ([]byte, error) { // ListTopicSnapshotsResponse: Response for the `ListTopicSnapshots` // method. +// [ALPHA] This method is a part of a closed Alpha API. type ListTopicSnapshotsResponse struct { // NextPageToken: If not empty, indicates that there may be more // snapshots that match @@ -1142,6 +1143,7 @@ type Subscription struct { // can be done. Defaults to 7 days. Cannot be more than 7 days or less // than 10 // minutes. + // [ALPHA] This field is a part of a closed Alpha API. MessageRetentionDuration string `json:"messageRetentionDuration,omitempty"` // Name: The name of the subscription. It must have the @@ -1171,6 +1173,7 @@ type Subscription struct { // acknowledged, until they fall out of the // `message_retention_duration` // window. + // [ALPHA] This field is a part of a closed Alpha API. RetainAckedMessages bool `json:"retainAckedMessages,omitempty"` // Topic: The name of the topic from which this subscription is @@ -1398,7 +1401,8 @@ type ProjectsSnapshotsCreateCall struct { header_ http.Header } -// Create: Creates a snapshot from the requested subscription. +// Create: [ALPHA] This method is a part of a closed Alpha API. +// Creates a snapshot from the requested subscription. // If the snapshot already exists, returns `ALREADY_EXISTS`. // If the requested subscription doesn't exist, returns `NOT_FOUND`. // If the backlog in the subscription is too old -- and the resulting @@ -1512,7 +1516,7 @@ func (c *ProjectsSnapshotsCreateCall) Do(opts ...googleapi.CallOption) (*Snapsho } return ret, nil // { - // "description": "Creates a snapshot from the requested subscription.\nIf the snapshot already exists, returns `ALREADY_EXISTS`.\nIf the requested subscription doesn't exist, returns `NOT_FOUND`.\nIf the backlog in the subscription is too old -- and the resulting snapshot\nwould expire in less than 1 hour -- then `FAILED_PRECONDITION` is returned.\nSee also the `Snapshot.expire_time` field.\n\nIf the name is not provided in the request, the server will assign a random\nname for this snapshot on the same project as the subscription, conforming\nto the\n[resource name\nformat](https://cloud.google.com/pubsub/docs/overview#names). The generated\nname is populated in the returned Snapshot object. Note that for REST API\nrequests, you must specify a name in the request.", + // "description": "[ALPHA] This method is a part of a closed Alpha API.\nCreates a snapshot from the requested subscription.\nIf the snapshot already exists, returns `ALREADY_EXISTS`.\nIf the requested subscription doesn't exist, returns `NOT_FOUND`.\nIf the backlog in the subscription is too old -- and the resulting snapshot\nwould expire in less than 1 hour -- then `FAILED_PRECONDITION` is returned.\nSee also the `Snapshot.expire_time` field.\n\nIf the name is not provided in the request, the server will assign a random\nname for this snapshot on the same project as the subscription, conforming\nto the\n[resource name\nformat](https://cloud.google.com/pubsub/docs/overview#names). The generated\nname is populated in the returned Snapshot object. Note that for REST API\nrequests, you must specify a name in the request.", // "flatPath": "v1/projects/{projectsId}/snapshots/{snapshotsId}", // "httpMethod": "PUT", // "id": "pubsub.projects.snapshots.create", @@ -1561,6 +1565,7 @@ type ProjectsSnapshotsDeleteCall struct { // the old // snapshot or its subscription, unless the same subscription is // specified. +// [ALPHA] This method is a part of a closed Alpha API. func (r *ProjectsSnapshotsService) Delete(snapshot string) *ProjectsSnapshotsDeleteCall { c := &ProjectsSnapshotsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.snapshot = snapshot @@ -1648,7 +1653,7 @@ func (c *ProjectsSnapshotsDeleteCall) Do(opts ...googleapi.CallOption) (*Empty, } return ret, nil // { - // "description": "Removes an existing snapshot. All messages retained in the snapshot\nare immediately dropped. After a snapshot is deleted, a new one may be\ncreated with the same name, but the new one has no association with the old\nsnapshot or its subscription, unless the same subscription is specified.", + // "description": "Removes an existing snapshot. All messages retained in the snapshot\nare immediately dropped. After a snapshot is deleted, a new one may be\ncreated with the same name, but the new one has no association with the old\nsnapshot or its subscription, unless the same subscription is specified.\n[ALPHA] This method is a part of a closed Alpha API.", // "flatPath": "v1/projects/{projectsId}/snapshots/{snapshotsId}", // "httpMethod": "DELETE", // "id": "pubsub.projects.snapshots.delete", @@ -1688,6 +1693,7 @@ type ProjectsSnapshotsGetCall struct { } // Get: Gets the configuration details of a snapshot. +// [ALPHA] This method is a part of a closed Alpha API. func (r *ProjectsSnapshotsService) Get(snapshot string) *ProjectsSnapshotsGetCall { c := &ProjectsSnapshotsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.snapshot = snapshot @@ -1788,7 +1794,7 @@ func (c *ProjectsSnapshotsGetCall) Do(opts ...googleapi.CallOption) (*Snapshot, } return ret, nil // { - // "description": "Gets the configuration details of a snapshot.", + // "description": "Gets the configuration details of a snapshot.\n[ALPHA] This method is a part of a closed Alpha API.", // "flatPath": "v1/projects/{projectsId}/snapshots/{snapshotsId}", // "httpMethod": "GET", // "id": "pubsub.projects.snapshots.get", @@ -1971,6 +1977,7 @@ type ProjectsSnapshotsListCall struct { } // List: Lists the existing snapshots. +// [ALPHA] This method is a part of a closed Alpha API. func (r *ProjectsSnapshotsService) List(project string) *ProjectsSnapshotsListCall { c := &ProjectsSnapshotsListCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.project = project @@ -2088,7 +2095,7 @@ func (c *ProjectsSnapshotsListCall) Do(opts ...googleapi.CallOption) (*ListSnaps } return ret, nil // { - // "description": "Lists the existing snapshots.", + // "description": "Lists the existing snapshots.\n[ALPHA] This method is a part of a closed Alpha API.", // "flatPath": "v1/projects/{projectsId}/snapshots", // "httpMethod": "GET", // "id": "pubsub.projects.snapshots.list", @@ -2162,6 +2169,7 @@ type ProjectsSnapshotsPatchCall struct { // Patch: Updates an existing snapshot. Note that certain properties of // a // snapshot are not modifiable. +// [ALPHA] This method is a part of a closed Alpha API. func (r *ProjectsSnapshotsService) Patch(name string, updatesnapshotrequest *UpdateSnapshotRequest) *ProjectsSnapshotsPatchCall { c := &ProjectsSnapshotsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.name = name @@ -2255,7 +2263,7 @@ func (c *ProjectsSnapshotsPatchCall) Do(opts ...googleapi.CallOption) (*Snapshot } return ret, nil // { - // "description": "Updates an existing snapshot. Note that certain properties of a\nsnapshot are not modifiable.", + // "description": "Updates an existing snapshot. Note that certain properties of a\nsnapshot are not modifiable.\n[ALPHA] This method is a part of a closed Alpha API.", // "flatPath": "v1/projects/{projectsId}/snapshots/{snapshotsId}", // "httpMethod": "PATCH", // "id": "pubsub.projects.snapshots.patch", @@ -4056,6 +4064,7 @@ type ProjectsSubscriptionsSeekCall struct { // Seek: Seeks an existing subscription to a point in time or to a given // snapshot, // whichever is provided in the request. +// [ALPHA] This method is a part of a closed Alpha API. func (r *ProjectsSubscriptionsService) Seek(subscription string, seekrequest *SeekRequest) *ProjectsSubscriptionsSeekCall { c := &ProjectsSubscriptionsSeekCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.subscription = subscription @@ -4149,7 +4158,7 @@ func (c *ProjectsSubscriptionsSeekCall) Do(opts ...googleapi.CallOption) (*SeekR } return ret, nil // { - // "description": "Seeks an existing subscription to a point in time or to a given snapshot,\nwhichever is provided in the request.", + // "description": "Seeks an existing subscription to a point in time or to a given snapshot,\nwhichever is provided in the request.\n[ALPHA] This method is a part of a closed Alpha API.", // "flatPath": "v1/projects/{projectsId}/subscriptions/{subscriptionsId}:seek", // "httpMethod": "POST", // "id": "pubsub.projects.subscriptions.seek", @@ -5642,6 +5651,7 @@ type ProjectsTopicsSnapshotsListCall struct { } // List: Lists the names of the snapshots on this topic. +// [ALPHA] This method is a part of a closed Alpha API. func (r *ProjectsTopicsSnapshotsService) List(topic string) *ProjectsTopicsSnapshotsListCall { c := &ProjectsTopicsSnapshotsListCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.topic = topic @@ -5759,7 +5769,7 @@ func (c *ProjectsTopicsSnapshotsListCall) Do(opts ...googleapi.CallOption) (*Lis } return ret, nil // { - // "description": "Lists the names of the snapshots on this topic.", + // "description": "Lists the names of the snapshots on this topic.\n[ALPHA] This method is a part of a closed Alpha API.", // "flatPath": "v1/projects/{projectsId}/topics/{topicsId}/snapshots", // "httpMethod": "GET", // "id": "pubsub.projects.topics.snapshots.list", diff --git a/vendor/google.golang.org/api/pubsub/v1beta1a/pubsub-api.json b/vendor/google.golang.org/api/pubsub/v1beta1a/pubsub-api.json index 6d2850452..7100598d3 100644 --- a/vendor/google.golang.org/api/pubsub/v1beta1a/pubsub-api.json +++ b/vendor/google.golang.org/api/pubsub/v1beta1a/pubsub-api.json @@ -1,792 +1,4 @@ { - "ownerDomain": "google.com", - "name": "pubsub", - "batchPath": "batch", - "revision": "20180108", - "documentationLink": "https://cloud.google.com/pubsub/docs", - "id": "pubsub:v1beta1a", - "title": "Google Cloud Pub/Sub API", - "discoveryVersion": "v1", - "ownerName": "Google", - "resources": { - "subscriptions": { - "methods": { - "create": { - "description": "Creates a subscription on a given topic for a given subscriber.\nIf the subscription already exists, returns ALREADY_EXISTS.\nIf the corresponding topic doesn't exist, returns NOT_FOUND.\n\nIf the name is not provided in the request, the server will assign a random\nname for this subscription on the same project as the topic.", - "request": { - "$ref": "Subscription" - }, - "response": { - "$ref": "Subscription" - }, - "parameterOrder": [], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/pubsub" - ], - "parameters": {}, - "flatPath": "v1beta1a/subscriptions", - "path": "v1beta1a/subscriptions", - "id": "pubsub.subscriptions.create" - }, - "acknowledge": { - "response": { - "$ref": "Empty" - }, - "parameterOrder": [], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/pubsub" - ], - "parameters": {}, - "flatPath": "v1beta1a/subscriptions/acknowledge", - "path": "v1beta1a/subscriptions/acknowledge", - "id": "pubsub.subscriptions.acknowledge", - "description": "Acknowledges a particular received message: the Pub/Sub system can remove\nthe given message from the subscription. Acknowledging a message whose\nAck deadline has expired may succeed, but the message could have been\nalready redelivered. Acknowledging a message more than once will not\nresult in an error. This is only used for messages received via pull.", - "request": { - "$ref": "AcknowledgeRequest" - } - }, - "modifyAckDeadline": { - "response": { - "$ref": "Empty" - }, - "parameterOrder": [], - "httpMethod": "POST", - "parameters": {}, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/pubsub" - ], - "flatPath": "v1beta1a/subscriptions/modifyAckDeadline", - "path": "v1beta1a/subscriptions/modifyAckDeadline", - "id": "pubsub.subscriptions.modifyAckDeadline", - "request": { - "$ref": "ModifyAckDeadlineRequest" - }, - "description": "Modifies the Ack deadline for a message received from a pull request." - }, - "get": { - "response": { - "$ref": "Subscription" - }, - "parameterOrder": [ - "subscription" - ], - "httpMethod": "GET", - "parameters": { - "subscription": { - "pattern": "^.+$", - "location": "path", - "description": "The name of the subscription to get.", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/pubsub" - ], - "flatPath": "v1beta1a/subscriptions/{subscriptionsId}", - "path": "v1beta1a/subscriptions/{+subscription}", - "id": "pubsub.subscriptions.get", - "description": "Gets the configuration details of a subscription." - }, - "pullBatch": { - "path": "v1beta1a/subscriptions/pullBatch", - "id": "pubsub.subscriptions.pullBatch", - "request": { - "$ref": "PullBatchRequest" - }, - "description": "Pulls messages from the server. Returns an empty list if there are no\nmessages available in the backlog. The system is free to return UNAVAILABLE\nif there are too many pull requests outstanding for the given subscription.", - "response": { - "$ref": "PullBatchResponse" - }, - "parameterOrder": [], - "httpMethod": "POST", - "parameters": {}, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/pubsub" - ], - "flatPath": "v1beta1a/subscriptions/pullBatch" - }, - "modifyPushConfig": { - "response": { - "$ref": "Empty" - }, - "parameterOrder": [], - "httpMethod": "POST", - "parameters": {}, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/pubsub" - ], - "flatPath": "v1beta1a/subscriptions/modifyPushConfig", - "path": "v1beta1a/subscriptions/modifyPushConfig", - "id": "pubsub.subscriptions.modifyPushConfig", - "request": { - "$ref": "ModifyPushConfigRequest" - }, - "description": "Modifies the \u003ccode\u003ePushConfig\u003c/code\u003e for a specified subscription.\nThis method can be used to suspend the flow of messages to an endpoint\nby clearing the \u003ccode\u003ePushConfig\u003c/code\u003e field in the request. Messages\nwill be accumulated for delivery even if no push configuration is\ndefined or while the configuration is modified." - }, - "delete": { - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "subscription" - ], - "httpMethod": "DELETE", - "parameters": { - "subscription": { - "description": "The subscription to delete.", - "required": true, - "type": "string", - "pattern": "^.+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/pubsub" - ], - "flatPath": "v1beta1a/subscriptions/{subscriptionsId}", - "path": "v1beta1a/subscriptions/{+subscription}", - "id": "pubsub.subscriptions.delete", - "description": "Deletes an existing subscription. All pending messages in the subscription\nare immediately dropped. Calls to Pull after deletion will return\nNOT_FOUND." - }, - "pull": { - "httpMethod": "POST", - "parameterOrder": [], - "response": { - "$ref": "PullResponse" - }, - "parameters": {}, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/pubsub" - ], - "flatPath": "v1beta1a/subscriptions/pull", - "id": "pubsub.subscriptions.pull", - "path": "v1beta1a/subscriptions/pull", - "request": { - "$ref": "PullRequest" - }, - "description": "Pulls a single message from the server.\nIf return_immediately is true, and no messages are available in the\nsubscription, this method returns FAILED_PRECONDITION. The system is free\nto return an UNAVAILABLE error if no messages are available in a\nreasonable amount of time (to reduce system load)." - }, - "list": { - "response": { - "$ref": "ListSubscriptionsResponse" - }, - "parameterOrder": [], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/pubsub" - ], - "parameters": { - "pageToken": { - "description": "The value obtained in the last \u003ccode\u003eListSubscriptionsResponse\u003c/code\u003e\nfor continuation.", - "type": "string", - "location": "query" - }, - "query": { - "location": "query", - "description": "A valid label query expression.", - "type": "string" - }, - "maxResults": { - "description": "Maximum number of subscriptions to return.", - "format": "int32", - "type": "integer", - "location": "query" - } - }, - "flatPath": "v1beta1a/subscriptions", - "path": "v1beta1a/subscriptions", - "id": "pubsub.subscriptions.list", - "description": "Lists matching subscriptions." - } - } - }, - "topics": { - "methods": { - "create": { - "response": { - "$ref": "Topic" - }, - "parameterOrder": [], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/pubsub" - ], - "parameters": {}, - "flatPath": "v1beta1a/topics", - "path": "v1beta1a/topics", - "id": "pubsub.topics.create", - "description": "Creates the given topic with the given name.", - "request": { - "$ref": "Topic" - } - }, - "get": { - "httpMethod": "GET", - "parameterOrder": [ - "topic" - ], - "response": { - "$ref": "Topic" - }, - "parameters": { - "topic": { - "pattern": "^.+$", - "location": "path", - "description": "The name of the topic to get.", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/pubsub" - ], - "flatPath": "v1beta1a/topics/{topicsId}", - "id": "pubsub.topics.get", - "path": "v1beta1a/topics/{+topic}", - "description": "Gets the configuration of a topic. Since the topic only has the name\nattribute, this method is only useful to check the existence of a topic.\nIf other attributes are added in the future, they will be returned here." - }, - "publish": { - "id": "pubsub.topics.publish", - "path": "v1beta1a/topics/publish", - "request": { - "$ref": "PublishRequest" - }, - "description": "Adds a message to the topic. Returns NOT_FOUND if the topic does not\nexist.", - "httpMethod": "POST", - "parameterOrder": [], - "response": { - "$ref": "Empty" - }, - "parameters": {}, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/pubsub" - ], - "flatPath": "v1beta1a/topics/publish" - }, - "delete": { - "description": "Deletes the topic with the given name. Returns NOT_FOUND if the topic does\nnot exist. After a topic is deleted, a new topic may be created with the\nsame name.", - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "topic" - ], - "httpMethod": "DELETE", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/pubsub" - ], - "parameters": { - "topic": { - "description": "Name of the topic to delete.", - "required": true, - "type": "string", - "pattern": "^.+$", - "location": "path" - } - }, - "flatPath": "v1beta1a/topics/{topicsId}", - "path": "v1beta1a/topics/{+topic}", - "id": "pubsub.topics.delete" - }, - "publishBatch": { - "path": "v1beta1a/topics/publishBatch", - "id": "pubsub.topics.publishBatch", - "request": { - "$ref": "PublishBatchRequest" - }, - "description": "Adds one or more messages to the topic. Returns NOT_FOUND if the topic does\nnot exist.", - "response": { - "$ref": "PublishBatchResponse" - }, - "parameterOrder": [], - "httpMethod": "POST", - "parameters": {}, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/pubsub" - ], - "flatPath": "v1beta1a/topics/publishBatch" - }, - "list": { - "description": "Lists matching topics.", - "response": { - "$ref": "ListTopicsResponse" - }, - "parameterOrder": [], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/pubsub" - ], - "parameters": { - "pageToken": { - "location": "query", - "description": "The value obtained in the last \u003ccode\u003eListTopicsResponse\u003c/code\u003e\nfor continuation.", - "type": "string" - }, - "query": { - "location": "query", - "description": "A valid label query expression.", - "type": "string" - }, - "maxResults": { - "location": "query", - "description": "Maximum number of topics to return.", - "format": "int32", - "type": "integer" - } - }, - "flatPath": "v1beta1a/topics", - "path": "v1beta1a/topics", - "id": "pubsub.topics.list" - } - } - } - }, - "parameters": { - "upload_protocol": { - "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", - "type": "string", - "location": "query" - }, - "prettyPrint": { - "location": "query", - "description": "Returns response with indentations and line breaks.", - "type": "boolean", - "default": "true" - }, - "uploadType": { - "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", - "type": "string", - "location": "query" - }, - "fields": { - "location": "query", - "description": "Selector specifying which fields to include in a partial response.", - "type": "string" - }, - "$.xgafv": { - "enum": [ - "1", - "2" - ], - "description": "V1 error format.", - "type": "string", - "enumDescriptions": [ - "v1 error format", - "v2 error format" - ], - "location": "query" - }, - "callback": { - "description": "JSONP", - "type": "string", - "location": "query" - }, - "alt": { - "enum": [ - "json", - "media", - "proto" - ], - "type": "string", - "enumDescriptions": [ - "Responses with Content-Type of application/json", - "Media download with context-dependent Content-Type", - "Responses with Content-Type of application/x-protobuf" - ], - "location": "query", - "description": "Data format for response.", - "default": "json" - }, - "key": { - "location": "query", - "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.", - "type": "string" - }, - "access_token": { - "description": "OAuth access token.", - "type": "string", - "location": "query" - }, - "quotaUser": { - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", - "type": "string", - "location": "query" - }, - "pp": { - "location": "query", - "description": "Pretty-print response.", - "type": "boolean", - "default": "true" - }, - "oauth_token": { - "location": "query", - "description": "OAuth 2.0 token for the current user.", - "type": "string" - }, - "bearer_token": { - "description": "OAuth bearer token.", - "type": "string", - "location": "query" - } - }, - "schemas": { - "PullResponse": { - "description": "Either a \u003ccode\u003ePubsubMessage\u003c/code\u003e or a truncation event. One of these two\nmust be populated.", - "type": "object", - "properties": { - "pubsubEvent": { - "description": "A pubsub message or truncation event.", - "$ref": "PubsubEvent" - }, - "ackId": { - "description": "This ID must be used to acknowledge the received event or message.", - "type": "string" - } - }, - "id": "PullResponse" - }, - "PushConfig": { - "properties": { - "pushEndpoint": { - "description": "A URL locating the endpoint to which messages should be pushed.\nFor example, a Webhook endpoint might use \"https://example.com/push\".", - "type": "string" - } - }, - "id": "PushConfig", - "description": "Configuration for a push delivery endpoint.", - "type": "object" - }, - "PullRequest": { - "description": "Request for the Pull method.", - "type": "object", - "properties": { - "subscription": { - "description": "The subscription from which a message should be pulled.", - "type": "string" - }, - "returnImmediately": { - "description": "If this is specified as true the system will respond immediately even if\nit is not able to return a message in the Pull response. Otherwise the\nsystem is allowed to wait until at least one message is available rather\nthan returning FAILED_PRECONDITION. The client may cancel the request if\nit does not wish to wait any longer for the response.", - "type": "boolean" - } - }, - "id": "PullRequest" - }, - "ListSubscriptionsResponse": { - "properties": { - "nextPageToken": { - "description": "If not empty, indicates that there are more subscriptions that match the\nrequest and this value should be passed to the next\n\u003ccode\u003eListSubscriptionsRequest\u003c/code\u003e to continue.", - "type": "string" - }, - "subscription": { - "description": "The subscriptions that match the request.", - "type": "array", - "items": { - "$ref": "Subscription" - } - } - }, - "id": "ListSubscriptionsResponse", - "description": "Response for the ListSubscriptions method.", - "type": "object" - }, - "PubsubEvent": { - "description": "An event indicating a received message or truncation event.", - "type": "object", - "properties": { - "message": { - "description": "A received message.", - "$ref": "PubsubMessage" - }, - "subscription": { - "description": "The subscription that received the event.", - "type": "string" - }, - "truncated": { - "description": "Indicates that this subscription has been truncated.", - "type": "boolean" - }, - "deleted": { - "description": "Indicates that this subscription has been deleted. (Note that pull\nsubscribers will always receive NOT_FOUND in response in their pull\nrequest on the subscription, rather than seeing this boolean.)", - "type": "boolean" - } - }, - "id": "PubsubEvent" - }, - "PublishRequest": { - "description": "Request for the Publish method.", - "type": "object", - "properties": { - "topic": { - "description": "The message in the request will be published on this topic.", - "type": "string" - }, - "message": { - "$ref": "PubsubMessage", - "description": "The message to publish." - } - }, - "id": "PublishRequest" - }, - "PublishBatchResponse": { - "description": "Response for the PublishBatch method.", - "type": "object", - "properties": { - "messageIds": { - "description": "The server-assigned ID of each published message, in the same order as\nthe messages in the request. IDs are guaranteed to be unique within\nthe topic.", - "type": "array", - "items": { - "type": "string" - } - } - }, - "id": "PublishBatchResponse" - }, - "Subscription": { - "description": "A subscription resource.", - "type": "object", - "properties": { - "ackDeadlineSeconds": { - "description": "For either push or pull delivery, the value is the maximum time after a\nsubscriber receives a message before the subscriber should acknowledge or\nNack the message. If the Ack deadline for a message passes without an\nAck or a Nack, the Pub/Sub system will eventually redeliver the message.\nIf a subscriber acknowledges after the deadline, the Pub/Sub system may\naccept the Ack, but it is possible that the message has been already\ndelivered again. Multiple Acks to the message are allowed and will\nsucceed.\n\nFor push delivery, this value is used to set the request timeout for\nthe call to the push endpoint.\n\nFor pull delivery, this value is used as the initial value for the Ack\ndeadline. It may be overridden for each message using its corresponding\nack_id with \u003ccode\u003eModifyAckDeadline\u003c/code\u003e.\nWhile a message is outstanding (i.e. it has been delivered to a pull\nsubscriber and the subscriber has not yet Acked or Nacked), the Pub/Sub\nsystem will not deliver that message to another pull subscriber\n(on a best-effort basis).", - "format": "int32", - "type": "integer" - }, - "name": { - "description": "Name of the subscription.", - "type": "string" - }, - "topic": { - "description": "The name of the topic from which this subscription is receiving messages.", - "type": "string" - }, - "pushConfig": { - "$ref": "PushConfig", - "description": "If push delivery is used with this subscription, this field is\nused to configure it." - } - }, - "id": "Subscription" - }, - "Topic": { - "description": "A topic resource.", - "type": "object", - "properties": { - "name": { - "description": "Name of the topic.", - "type": "string" - } - }, - "id": "Topic" - }, - "Label": { - "description": "A key-value pair applied to a given object.", - "type": "object", - "properties": { - "numValue": { - "description": "An integer value.", - "format": "int64", - "type": "string" - }, - "key": { - "description": "The key of a label is a syntactically valid URL (as per RFC 1738) with\nthe \"scheme\" and initial slashes omitted and with the additional\nrestrictions noted below. Each key should be globally unique. The\n\"host\" portion is called the \"namespace\" and is not necessarily\nresolvable to a network endpoint. Instead, the namespace indicates what\nsystem or entity defines the semantics of the label. Namespaces do not\nrestrict the set of objects to which a label may be associated.\n\nKeys are defined by the following grammar:\n\n key = hostname \"/\" kpath\n kpath = ksegment *[ \"/\" ksegment ]\n ksegment = alphadigit | *[ alphadigit | \"-\" | \"_\" | \".\" ]\n\nwhere \"hostname\" and \"alphadigit\" are defined as in RFC 1738.\n\nExample key:\n spanner.google.com/universe", - "type": "string" - }, - "strValue": { - "description": "A string value.", - "type": "string" - } - }, - "id": "Label" - }, - "ModifyAckDeadlineRequest": { - "description": "Request for the ModifyAckDeadline method.", - "type": "object", - "properties": { - "subscription": { - "description": "Next Index: 5\nThe name of the subscription from which messages are being pulled.", - "type": "string" - }, - "ackId": { - "description": "The acknowledgment ID. Either this or ack_ids must be populated,\nnot both.", - "type": "string" - }, - "ackDeadlineSeconds": { - "description": "The new ack deadline with respect to the time this request was sent to the\nPub/Sub system. Must be \u003e= 0. For example, if the value is 10, the new ack\ndeadline will expire 10 seconds after the ModifyAckDeadline call was made.\nSpecifying zero may immediately make the message available for another pull\nrequest.", - "format": "int32", - "type": "integer" - }, - "ackIds": { - "description": "List of acknowledgment IDs. Either this field or ack_id\nshould be populated, not both.", - "type": "array", - "items": { - "type": "string" - } - } - }, - "id": "ModifyAckDeadlineRequest" - }, - "PullBatchRequest": { - "description": "Request for the PullBatch method.", - "type": "object", - "properties": { - "maxEvents": { - "description": "The maximum number of PubsubEvents returned for this request. The Pub/Sub\nsystem may return fewer than the number of events specified.", - "format": "int32", - "type": "integer" - }, - "subscription": { - "description": "The subscription from which messages should be pulled.", - "type": "string" - }, - "returnImmediately": { - "description": "If this is specified as true the system will respond immediately even if\nit is not able to return a message in the Pull response. Otherwise the\nsystem is allowed to wait until at least one message is available rather\nthan returning no messages. The client may cancel the request if it does\nnot wish to wait any longer for the response.", - "type": "boolean" - } - }, - "id": "PullBatchRequest" - }, - "PubsubMessage": { - "description": "A message data and its labels.", - "type": "object", - "properties": { - "messageId": { - "description": "ID of this message assigned by the server at publication time. Guaranteed\nto be unique within the topic. This value may be read by a subscriber\nthat receives a PubsubMessage via a Pull call or a push delivery. It must\nnot be populated by a publisher in a Publish call.", - "type": "string" - }, - "label": { - "description": "Optional list of labels for this message. Keys in this collection must\nbe unique.", - "type": "array", - "items": { - "$ref": "Label" - } - }, - "publishTime": { - "description": "The time at which the message was published.\nThe time is milliseconds since the UNIX epoch.", - "format": "int64", - "type": "string" - }, - "data": { - "description": "The message payload.", - "format": "byte", - "type": "string" - } - }, - "id": "PubsubMessage" - }, - "ModifyPushConfigRequest": { - "properties": { - "pushConfig": { - "$ref": "PushConfig", - "description": "An empty \u003ccode\u003epush_config\u003c/code\u003e indicates that the Pub/Sub system should\npause pushing messages from the given subscription." - }, - "subscription": { - "description": "The name of the subscription.", - "type": "string" - } - }, - "id": "ModifyPushConfigRequest", - "description": "Request for the ModifyPushConfig method.", - "type": "object" - }, - "ListTopicsResponse": { - "description": "Response for the ListTopics method.", - "type": "object", - "properties": { - "nextPageToken": { - "description": "If not empty, indicates that there are more topics that match the request,\nand this value should be passed to the next \u003ccode\u003eListTopicsRequest\u003c/code\u003e\nto continue.", - "type": "string" - }, - "topic": { - "description": "The resulting topics.", - "type": "array", - "items": { - "$ref": "Topic" - } - } - }, - "id": "ListTopicsResponse" - }, - "PublishBatchRequest": { - "properties": { - "messages": { - "description": "The messages to publish.", - "type": "array", - "items": { - "$ref": "PubsubMessage" - } - }, - "topic": { - "description": "The messages in the request will be published on this topic.", - "type": "string" - } - }, - "id": "PublishBatchRequest", - "description": "Request for the PublishBatch method.", - "type": "object" - }, - "Empty": { - "properties": {}, - "id": "Empty", - "description": "An empty message that you can re-use to avoid defining duplicated empty\nmessages in your project. A typical example is to use it as argument or the\nreturn value of a service API. For instance:\n\n service Foo {\n rpc Bar (proto2.Empty) returns (proto2.Empty) { };\n };\n\nBEGIN GOOGLE-INTERNAL\nThe difference between this one and net/rpc/empty-message.proto is that\n1) The generated message here is in proto2 C++ API.\n2) The proto2.Empty has minimum dependencies\n (no message_set or net/rpc dependencies)\nEND GOOGLE-INTERNAL", - "type": "object" - }, - "PullBatchResponse": { - "properties": { - "pullResponses": { - "description": "Received Pub/Sub messages or status events. The Pub/Sub system will return\nzero messages if there are no more messages available in the backlog. The\nPub/Sub system may return fewer than the max_events requested even if\nthere are more messages available in the backlog.", - "type": "array", - "items": { - "$ref": "PullResponse" - } - } - }, - "id": "PullBatchResponse", - "description": "Response for the PullBatch method.", - "type": "object" - }, - "AcknowledgeRequest": { - "description": "Request for the Acknowledge method.", - "type": "object", - "properties": { - "subscription": { - "description": "The subscription whose message is being acknowledged.", - "type": "string" - }, - "ackId": { - "description": "The acknowledgment ID for the message being acknowledged. This was\nreturned by the Pub/Sub system in the Pull response.", - "type": "array", - "items": { - "type": "string" - } - } - }, - "id": "AcknowledgeRequest" - } - }, - "icons": { - "x16": "http://www.google.com/images/icons/product/search-16.gif", - "x32": "http://www.google.com/images/icons/product/search-32.gif" - }, - "protocol": "rest", - "version": "v1beta1a", - "baseUrl": "https://pubsub.googleapis.com/", - "canonicalName": "Pubsub", "auth": { "oauth2": { "scopes": { @@ -799,9 +11,797 @@ } } }, - "servicePath": "", + "basePath": "", + "baseUrl": "https://pubsub.googleapis.com/", + "batchPath": "batch", + "canonicalName": "Pubsub", "description": "Provides reliable, many-to-many, asynchronous messaging between applications.\n", + "discoveryVersion": "v1", + "documentationLink": "https://cloud.google.com/pubsub/docs", + "icons": { + "x16": "http://www.google.com/images/icons/product/search-16.gif", + "x32": "http://www.google.com/images/icons/product/search-32.gif" + }, + "id": "pubsub:v1beta1a", "kind": "discovery#restDescription", + "name": "pubsub", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "$.xgafv": { + "description": "V1 error format.", + "enum": [ + "1", + "2" + ], + "enumDescriptions": [ + "v1 error format", + "v2 error format" + ], + "location": "query", + "type": "string" + }, + "access_token": { + "description": "OAuth access token.", + "location": "query", + "type": "string" + }, + "alt": { + "default": "json", + "description": "Data format for response.", + "enum": [ + "json", + "media", + "proto" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json", + "Media download with context-dependent Content-Type", + "Responses with Content-Type of application/x-protobuf" + ], + "location": "query", + "type": "string" + }, + "bearer_token": { + "description": "OAuth bearer token.", + "location": "query", + "type": "string" + }, + "callback": { + "description": "JSONP", + "location": "query", + "type": "string" + }, + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "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.", + "location": "query", + "type": "string" + }, + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "pp": { + "default": "true", + "description": "Pretty-print response.", + "location": "query", + "type": "boolean" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", + "location": "query", + "type": "string" + }, + "uploadType": { + "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", + "location": "query", + "type": "string" + }, + "upload_protocol": { + "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", + "location": "query", + "type": "string" + } + }, + "protocol": "rest", + "resources": { + "subscriptions": { + "methods": { + "acknowledge": { + "description": "Acknowledges a particular received message: the Pub/Sub system can remove\nthe given message from the subscription. Acknowledging a message whose\nAck deadline has expired may succeed, but the message could have been\nalready redelivered. Acknowledging a message more than once will not\nresult in an error. This is only used for messages received via pull.", + "flatPath": "v1beta1a/subscriptions/acknowledge", + "httpMethod": "POST", + "id": "pubsub.subscriptions.acknowledge", + "parameterOrder": [], + "parameters": {}, + "path": "v1beta1a/subscriptions/acknowledge", + "request": { + "$ref": "AcknowledgeRequest" + }, + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/pubsub" + ] + }, + "create": { + "description": "Creates a subscription on a given topic for a given subscriber.\nIf the subscription already exists, returns ALREADY_EXISTS.\nIf the corresponding topic doesn't exist, returns NOT_FOUND.\n\nIf the name is not provided in the request, the server will assign a random\nname for this subscription on the same project as the topic.", + "flatPath": "v1beta1a/subscriptions", + "httpMethod": "POST", + "id": "pubsub.subscriptions.create", + "parameterOrder": [], + "parameters": {}, + "path": "v1beta1a/subscriptions", + "request": { + "$ref": "Subscription" + }, + "response": { + "$ref": "Subscription" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/pubsub" + ] + }, + "delete": { + "description": "Deletes an existing subscription. All pending messages in the subscription\nare immediately dropped. Calls to Pull after deletion will return\nNOT_FOUND.", + "flatPath": "v1beta1a/subscriptions/{subscriptionsId}", + "httpMethod": "DELETE", + "id": "pubsub.subscriptions.delete", + "parameterOrder": [ + "subscription" + ], + "parameters": { + "subscription": { + "description": "The subscription to delete.", + "location": "path", + "pattern": "^.+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1a/subscriptions/{+subscription}", + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/pubsub" + ] + }, + "get": { + "description": "Gets the configuration details of a subscription.", + "flatPath": "v1beta1a/subscriptions/{subscriptionsId}", + "httpMethod": "GET", + "id": "pubsub.subscriptions.get", + "parameterOrder": [ + "subscription" + ], + "parameters": { + "subscription": { + "description": "The name of the subscription to get.", + "location": "path", + "pattern": "^.+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1a/subscriptions/{+subscription}", + "response": { + "$ref": "Subscription" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/pubsub" + ] + }, + "list": { + "description": "Lists matching subscriptions.", + "flatPath": "v1beta1a/subscriptions", + "httpMethod": "GET", + "id": "pubsub.subscriptions.list", + "parameterOrder": [], + "parameters": { + "maxResults": { + "description": "Maximum number of subscriptions to return.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "The value obtained in the last \u003ccode\u003eListSubscriptionsResponse\u003c/code\u003e\nfor continuation.", + "location": "query", + "type": "string" + }, + "query": { + "description": "A valid label query expression.", + "location": "query", + "type": "string" + } + }, + "path": "v1beta1a/subscriptions", + "response": { + "$ref": "ListSubscriptionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/pubsub" + ] + }, + "modifyAckDeadline": { + "description": "Modifies the Ack deadline for a message received from a pull request.", + "flatPath": "v1beta1a/subscriptions/modifyAckDeadline", + "httpMethod": "POST", + "id": "pubsub.subscriptions.modifyAckDeadline", + "parameterOrder": [], + "parameters": {}, + "path": "v1beta1a/subscriptions/modifyAckDeadline", + "request": { + "$ref": "ModifyAckDeadlineRequest" + }, + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/pubsub" + ] + }, + "modifyPushConfig": { + "description": "Modifies the \u003ccode\u003ePushConfig\u003c/code\u003e for a specified subscription.\nThis method can be used to suspend the flow of messages to an endpoint\nby clearing the \u003ccode\u003ePushConfig\u003c/code\u003e field in the request. Messages\nwill be accumulated for delivery even if no push configuration is\ndefined or while the configuration is modified.", + "flatPath": "v1beta1a/subscriptions/modifyPushConfig", + "httpMethod": "POST", + "id": "pubsub.subscriptions.modifyPushConfig", + "parameterOrder": [], + "parameters": {}, + "path": "v1beta1a/subscriptions/modifyPushConfig", + "request": { + "$ref": "ModifyPushConfigRequest" + }, + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/pubsub" + ] + }, + "pull": { + "description": "Pulls a single message from the server.\nIf return_immediately is true, and no messages are available in the\nsubscription, this method returns FAILED_PRECONDITION. The system is free\nto return an UNAVAILABLE error if no messages are available in a\nreasonable amount of time (to reduce system load).", + "flatPath": "v1beta1a/subscriptions/pull", + "httpMethod": "POST", + "id": "pubsub.subscriptions.pull", + "parameterOrder": [], + "parameters": {}, + "path": "v1beta1a/subscriptions/pull", + "request": { + "$ref": "PullRequest" + }, + "response": { + "$ref": "PullResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/pubsub" + ] + }, + "pullBatch": { + "description": "Pulls messages from the server. Returns an empty list if there are no\nmessages available in the backlog. The system is free to return UNAVAILABLE\nif there are too many pull requests outstanding for the given subscription.", + "flatPath": "v1beta1a/subscriptions/pullBatch", + "httpMethod": "POST", + "id": "pubsub.subscriptions.pullBatch", + "parameterOrder": [], + "parameters": {}, + "path": "v1beta1a/subscriptions/pullBatch", + "request": { + "$ref": "PullBatchRequest" + }, + "response": { + "$ref": "PullBatchResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/pubsub" + ] + } + } + }, + "topics": { + "methods": { + "create": { + "description": "Creates the given topic with the given name.", + "flatPath": "v1beta1a/topics", + "httpMethod": "POST", + "id": "pubsub.topics.create", + "parameterOrder": [], + "parameters": {}, + "path": "v1beta1a/topics", + "request": { + "$ref": "Topic" + }, + "response": { + "$ref": "Topic" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/pubsub" + ] + }, + "delete": { + "description": "Deletes the topic with the given name. Returns NOT_FOUND if the topic does\nnot exist. After a topic is deleted, a new topic may be created with the\nsame name.", + "flatPath": "v1beta1a/topics/{topicsId}", + "httpMethod": "DELETE", + "id": "pubsub.topics.delete", + "parameterOrder": [ + "topic" + ], + "parameters": { + "topic": { + "description": "Name of the topic to delete.", + "location": "path", + "pattern": "^.+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1a/topics/{+topic}", + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/pubsub" + ] + }, + "get": { + "description": "Gets the configuration of a topic. Since the topic only has the name\nattribute, this method is only useful to check the existence of a topic.\nIf other attributes are added in the future, they will be returned here.", + "flatPath": "v1beta1a/topics/{topicsId}", + "httpMethod": "GET", + "id": "pubsub.topics.get", + "parameterOrder": [ + "topic" + ], + "parameters": { + "topic": { + "description": "The name of the topic to get.", + "location": "path", + "pattern": "^.+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1a/topics/{+topic}", + "response": { + "$ref": "Topic" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/pubsub" + ] + }, + "list": { + "description": "Lists matching topics.", + "flatPath": "v1beta1a/topics", + "httpMethod": "GET", + "id": "pubsub.topics.list", + "parameterOrder": [], + "parameters": { + "maxResults": { + "description": "Maximum number of topics to return.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "The value obtained in the last \u003ccode\u003eListTopicsResponse\u003c/code\u003e\nfor continuation.", + "location": "query", + "type": "string" + }, + "query": { + "description": "A valid label query expression.", + "location": "query", + "type": "string" + } + }, + "path": "v1beta1a/topics", + "response": { + "$ref": "ListTopicsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/pubsub" + ] + }, + "publish": { + "description": "Adds a message to the topic. Returns NOT_FOUND if the topic does not\nexist.", + "flatPath": "v1beta1a/topics/publish", + "httpMethod": "POST", + "id": "pubsub.topics.publish", + "parameterOrder": [], + "parameters": {}, + "path": "v1beta1a/topics/publish", + "request": { + "$ref": "PublishRequest" + }, + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/pubsub" + ] + }, + "publishBatch": { + "description": "Adds one or more messages to the topic. Returns NOT_FOUND if the topic does\nnot exist.", + "flatPath": "v1beta1a/topics/publishBatch", + "httpMethod": "POST", + "id": "pubsub.topics.publishBatch", + "parameterOrder": [], + "parameters": {}, + "path": "v1beta1a/topics/publishBatch", + "request": { + "$ref": "PublishBatchRequest" + }, + "response": { + "$ref": "PublishBatchResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/pubsub" + ] + } + } + } + }, + "revision": "20180129", "rootUrl": "https://pubsub.googleapis.com/", - "basePath": "" -} + "schemas": { + "AcknowledgeRequest": { + "description": "Request for the Acknowledge method.", + "id": "AcknowledgeRequest", + "properties": { + "ackId": { + "description": "The acknowledgment ID for the message being acknowledged. This was\nreturned by the Pub/Sub system in the Pull response.", + "items": { + "type": "string" + }, + "type": "array" + }, + "subscription": { + "description": "The subscription whose message is being acknowledged.", + "type": "string" + } + }, + "type": "object" + }, + "Empty": { + "description": "An empty message that you can re-use to avoid defining duplicated empty\nmessages in your project. A typical example is to use it as argument or the\nreturn value of a service API. For instance:\n\n service Foo {\n rpc Bar (proto2.Empty) returns (proto2.Empty) { };\n };\n\nBEGIN GOOGLE-INTERNAL\nThe difference between this one and net/rpc/empty-message.proto is that\n1) The generated message here is in proto2 C++ API.\n2) The proto2.Empty has minimum dependencies\n (no message_set or net/rpc dependencies)\nEND GOOGLE-INTERNAL", + "id": "Empty", + "properties": {}, + "type": "object" + }, + "Label": { + "description": "A key-value pair applied to a given object.", + "id": "Label", + "properties": { + "key": { + "description": "The key of a label is a syntactically valid URL (as per RFC 1738) with\nthe \"scheme\" and initial slashes omitted and with the additional\nrestrictions noted below. Each key should be globally unique. The\n\"host\" portion is called the \"namespace\" and is not necessarily\nresolvable to a network endpoint. Instead, the namespace indicates what\nsystem or entity defines the semantics of the label. Namespaces do not\nrestrict the set of objects to which a label may be associated.\n\nKeys are defined by the following grammar:\n\n key = hostname \"/\" kpath\n kpath = ksegment *[ \"/\" ksegment ]\n ksegment = alphadigit | *[ alphadigit | \"-\" | \"_\" | \".\" ]\n\nwhere \"hostname\" and \"alphadigit\" are defined as in RFC 1738.\n\nExample key:\n spanner.google.com/universe", + "type": "string" + }, + "numValue": { + "description": "An integer value.", + "format": "int64", + "type": "string" + }, + "strValue": { + "description": "A string value.", + "type": "string" + } + }, + "type": "object" + }, + "ListSubscriptionsResponse": { + "description": "Response for the ListSubscriptions method.", + "id": "ListSubscriptionsResponse", + "properties": { + "nextPageToken": { + "description": "If not empty, indicates that there are more subscriptions that match the\nrequest and this value should be passed to the next\n\u003ccode\u003eListSubscriptionsRequest\u003c/code\u003e to continue.", + "type": "string" + }, + "subscription": { + "description": "The subscriptions that match the request.", + "items": { + "$ref": "Subscription" + }, + "type": "array" + } + }, + "type": "object" + }, + "ListTopicsResponse": { + "description": "Response for the ListTopics method.", + "id": "ListTopicsResponse", + "properties": { + "nextPageToken": { + "description": "If not empty, indicates that there are more topics that match the request,\nand this value should be passed to the next \u003ccode\u003eListTopicsRequest\u003c/code\u003e\nto continue.", + "type": "string" + }, + "topic": { + "description": "The resulting topics.", + "items": { + "$ref": "Topic" + }, + "type": "array" + } + }, + "type": "object" + }, + "ModifyAckDeadlineRequest": { + "description": "Request for the ModifyAckDeadline method.", + "id": "ModifyAckDeadlineRequest", + "properties": { + "ackDeadlineSeconds": { + "description": "The new ack deadline with respect to the time this request was sent to the\nPub/Sub system. Must be \u003e= 0. For example, if the value is 10, the new ack\ndeadline will expire 10 seconds after the ModifyAckDeadline call was made.\nSpecifying zero may immediately make the message available for another pull\nrequest.", + "format": "int32", + "type": "integer" + }, + "ackId": { + "description": "The acknowledgment ID. Either this or ack_ids must be populated,\nnot both.", + "type": "string" + }, + "ackIds": { + "description": "List of acknowledgment IDs. Either this field or ack_id\nshould be populated, not both.", + "items": { + "type": "string" + }, + "type": "array" + }, + "subscription": { + "description": "Next Index: 5\nThe name of the subscription from which messages are being pulled.", + "type": "string" + } + }, + "type": "object" + }, + "ModifyPushConfigRequest": { + "description": "Request for the ModifyPushConfig method.", + "id": "ModifyPushConfigRequest", + "properties": { + "pushConfig": { + "$ref": "PushConfig", + "description": "An empty \u003ccode\u003epush_config\u003c/code\u003e indicates that the Pub/Sub system should\npause pushing messages from the given subscription." + }, + "subscription": { + "description": "The name of the subscription.", + "type": "string" + } + }, + "type": "object" + }, + "PublishBatchRequest": { + "description": "Request for the PublishBatch method.", + "id": "PublishBatchRequest", + "properties": { + "messages": { + "description": "The messages to publish.", + "items": { + "$ref": "PubsubMessage" + }, + "type": "array" + }, + "topic": { + "description": "The messages in the request will be published on this topic.", + "type": "string" + } + }, + "type": "object" + }, + "PublishBatchResponse": { + "description": "Response for the PublishBatch method.", + "id": "PublishBatchResponse", + "properties": { + "messageIds": { + "description": "The server-assigned ID of each published message, in the same order as\nthe messages in the request. IDs are guaranteed to be unique within\nthe topic.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "PublishRequest": { + "description": "Request for the Publish method.", + "id": "PublishRequest", + "properties": { + "message": { + "$ref": "PubsubMessage", + "description": "The message to publish." + }, + "topic": { + "description": "The message in the request will be published on this topic.", + "type": "string" + } + }, + "type": "object" + }, + "PubsubEvent": { + "description": "An event indicating a received message or truncation event.", + "id": "PubsubEvent", + "properties": { + "deleted": { + "description": "Indicates that this subscription has been deleted. (Note that pull\nsubscribers will always receive NOT_FOUND in response in their pull\nrequest on the subscription, rather than seeing this boolean.)", + "type": "boolean" + }, + "message": { + "$ref": "PubsubMessage", + "description": "A received message." + }, + "subscription": { + "description": "The subscription that received the event.", + "type": "string" + }, + "truncated": { + "description": "Indicates that this subscription has been truncated.", + "type": "boolean" + } + }, + "type": "object" + }, + "PubsubMessage": { + "description": "A message data and its labels.", + "id": "PubsubMessage", + "properties": { + "data": { + "description": "The message payload.", + "format": "byte", + "type": "string" + }, + "label": { + "description": "Optional list of labels for this message. Keys in this collection must\nbe unique.", + "items": { + "$ref": "Label" + }, + "type": "array" + }, + "messageId": { + "description": "ID of this message assigned by the server at publication time. Guaranteed\nto be unique within the topic. This value may be read by a subscriber\nthat receives a PubsubMessage via a Pull call or a push delivery. It must\nnot be populated by a publisher in a Publish call.", + "type": "string" + }, + "publishTime": { + "description": "The time at which the message was published.\nThe time is milliseconds since the UNIX epoch.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "PullBatchRequest": { + "description": "Request for the PullBatch method.", + "id": "PullBatchRequest", + "properties": { + "maxEvents": { + "description": "The maximum number of PubsubEvents returned for this request. The Pub/Sub\nsystem may return fewer than the number of events specified.", + "format": "int32", + "type": "integer" + }, + "returnImmediately": { + "description": "If this is specified as true the system will respond immediately even if\nit is not able to return a message in the Pull response. Otherwise the\nsystem is allowed to wait until at least one message is available rather\nthan returning no messages. The client may cancel the request if it does\nnot wish to wait any longer for the response.", + "type": "boolean" + }, + "subscription": { + "description": "The subscription from which messages should be pulled.", + "type": "string" + } + }, + "type": "object" + }, + "PullBatchResponse": { + "description": "Response for the PullBatch method.", + "id": "PullBatchResponse", + "properties": { + "pullResponses": { + "description": "Received Pub/Sub messages or status events. The Pub/Sub system will return\nzero messages if there are no more messages available in the backlog. The\nPub/Sub system may return fewer than the max_events requested even if\nthere are more messages available in the backlog.", + "items": { + "$ref": "PullResponse" + }, + "type": "array" + } + }, + "type": "object" + }, + "PullRequest": { + "description": "Request for the Pull method.", + "id": "PullRequest", + "properties": { + "returnImmediately": { + "description": "If this is specified as true the system will respond immediately even if\nit is not able to return a message in the Pull response. Otherwise the\nsystem is allowed to wait until at least one message is available rather\nthan returning FAILED_PRECONDITION. The client may cancel the request if\nit does not wish to wait any longer for the response.", + "type": "boolean" + }, + "subscription": { + "description": "The subscription from which a message should be pulled.", + "type": "string" + } + }, + "type": "object" + }, + "PullResponse": { + "description": "Either a \u003ccode\u003ePubsubMessage\u003c/code\u003e or a truncation event. One of these two\nmust be populated.", + "id": "PullResponse", + "properties": { + "ackId": { + "description": "This ID must be used to acknowledge the received event or message.", + "type": "string" + }, + "pubsubEvent": { + "$ref": "PubsubEvent", + "description": "A pubsub message or truncation event." + } + }, + "type": "object" + }, + "PushConfig": { + "description": "Configuration for a push delivery endpoint.", + "id": "PushConfig", + "properties": { + "pushEndpoint": { + "description": "A URL locating the endpoint to which messages should be pushed.\nFor example, a Webhook endpoint might use \"https://example.com/push\".", + "type": "string" + } + }, + "type": "object" + }, + "Subscription": { + "description": "A subscription resource.", + "id": "Subscription", + "properties": { + "ackDeadlineSeconds": { + "description": "For either push or pull delivery, the value is the maximum time after a\nsubscriber receives a message before the subscriber should acknowledge or\nNack the message. If the Ack deadline for a message passes without an\nAck or a Nack, the Pub/Sub system will eventually redeliver the message.\nIf a subscriber acknowledges after the deadline, the Pub/Sub system may\naccept the Ack, but it is possible that the message has been already\ndelivered again. Multiple Acks to the message are allowed and will\nsucceed.\n\nFor push delivery, this value is used to set the request timeout for\nthe call to the push endpoint.\n\nFor pull delivery, this value is used as the initial value for the Ack\ndeadline. It may be overridden for each message using its corresponding\nack_id with \u003ccode\u003eModifyAckDeadline\u003c/code\u003e.\nWhile a message is outstanding (i.e. it has been delivered to a pull\nsubscriber and the subscriber has not yet Acked or Nacked), the Pub/Sub\nsystem will not deliver that message to another pull subscriber\n(on a best-effort basis).", + "format": "int32", + "type": "integer" + }, + "name": { + "description": "Name of the subscription.", + "type": "string" + }, + "pushConfig": { + "$ref": "PushConfig", + "description": "If push delivery is used with this subscription, this field is\nused to configure it." + }, + "topic": { + "description": "The name of the topic from which this subscription is receiving messages.", + "type": "string" + } + }, + "type": "object" + }, + "Topic": { + "description": "A topic resource.", + "id": "Topic", + "properties": { + "name": { + "description": "Name of the topic.", + "type": "string" + } + }, + "type": "object" + } + }, + "servicePath": "", + "title": "Google Cloud Pub/Sub API", + "version": "v1beta1a" +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/pubsub/v1beta2/pubsub-api.json b/vendor/google.golang.org/api/pubsub/v1beta2/pubsub-api.json index 9250079bb..784b1a77f 100644 --- a/vendor/google.golang.org/api/pubsub/v1beta2/pubsub-api.json +++ b/vendor/google.golang.org/api/pubsub/v1beta2/pubsub-api.json @@ -1,1058 +1,4 @@ { - "batchPath": "batch", - "revision": "20180108", - "documentationLink": "https://cloud.google.com/pubsub/docs", - "id": "pubsub:v1beta2", - "title": "Google Cloud Pub/Sub API", - "ownerName": "Google", - "discoveryVersion": "v1", - "resources": { - "projects": { - "resources": { - "subscriptions": { - "methods": { - "list": { - "description": "Lists matching subscriptions.", - "response": { - "$ref": "ListSubscriptionsResponse" - }, - "parameterOrder": [ - "project" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/pubsub" - ], - "parameters": { - "project": { - "required": true, - "type": "string", - "pattern": "^projects/[^/]+$", - "location": "path", - "description": "The name of the cloud project that subscriptions belong to." - }, - "pageToken": { - "description": "The value returned by the last `ListSubscriptionsResponse`; indicates that\nthis is a continuation of a prior `ListSubscriptions` call, and that the\nsystem should return the next page of data.", - "type": "string", - "location": "query" - }, - "pageSize": { - "location": "query", - "description": "Maximum number of subscriptions to return.", - "format": "int32", - "type": "integer" - } - }, - "flatPath": "v1beta2/projects/{projectsId}/subscriptions", - "path": "v1beta2/{+project}/subscriptions", - "id": "pubsub.projects.subscriptions.list" - }, - "create": { - "httpMethod": "PUT", - "parameterOrder": [ - "name" - ], - "response": { - "$ref": "Subscription" - }, - "parameters": { - "name": { - "location": "path", - "description": "The name of the subscription. It must have the format\n`\"projects/{project}/subscriptions/{subscription}\"`. `{subscription}` must\nstart with a letter, and contain only letters (`[A-Za-z]`), numbers\n(`[0-9]`), dashes (`-`), underscores (`_`), periods (`.`), tildes (`~`),\nplus (`+`) or percent signs (`%`). It must be between 3 and 255 characters\nin length, and it must not start with `\"goog\"`.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/subscriptions/[^/]+$" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/pubsub" - ], - "flatPath": "v1beta2/projects/{projectsId}/subscriptions/{subscriptionsId}", - "id": "pubsub.projects.subscriptions.create", - "path": "v1beta2/{+name}", - "request": { - "$ref": "Subscription" - }, - "description": "Creates a subscription to a given topic.\nIf the subscription already exists, returns `ALREADY_EXISTS`.\nIf the corresponding topic doesn't exist, returns `NOT_FOUND`.\n\nIf the name is not provided in the request, the server will assign a random\nname for this subscription on the same project as the topic. Note that\nfor REST API requests, you must specify a name." - }, - "setIamPolicy": { - "response": { - "$ref": "Policy" - }, - "parameterOrder": [ - "resource" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/pubsub" - ], - "parameters": { - "resource": { - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/subscriptions/[^/]+$", - "location": "path", - "description": "REQUIRED: The resource for which the policy is being specified.\nSee the operation documentation for the appropriate value for this field." - } - }, - "flatPath": "v1beta2/projects/{projectsId}/subscriptions/{subscriptionsId}:setIamPolicy", - "path": "v1beta2/{+resource}:setIamPolicy", - "id": "pubsub.projects.subscriptions.setIamPolicy", - "description": "Sets the access control policy on the specified resource. Replaces any\nexisting policy.", - "request": { - "$ref": "SetIamPolicyRequest" - } - }, - "acknowledge": { - "flatPath": "v1beta2/projects/{projectsId}/subscriptions/{subscriptionsId}:acknowledge", - "path": "v1beta2/{+subscription}:acknowledge", - "id": "pubsub.projects.subscriptions.acknowledge", - "description": "Acknowledges the messages associated with the `ack_ids` in the\n`AcknowledgeRequest`. The Pub/Sub system can remove the relevant messages\nfrom the subscription.\n\nAcknowledging a message whose ack deadline has expired may succeed,\nbut such a message may be redelivered later. Acknowledging a message more\nthan once will not result in an error.", - "request": { - "$ref": "AcknowledgeRequest" - }, - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "subscription" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/pubsub" - ], - "parameters": { - "subscription": { - "description": "The subscription whose message is being acknowledged.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/subscriptions/[^/]+$", - "location": "path" - } - } - }, - "modifyAckDeadline": { - "request": { - "$ref": "ModifyAckDeadlineRequest" - }, - "description": "Modifies the ack deadline for a specific message. This method is useful\nto indicate that more time is needed to process a message by the\nsubscriber, or to make the message available for redelivery if the\nprocessing was interrupted. Note that this does not modify the\nsubscription-level `ackDeadlineSeconds` used for subsequent messages.", - "httpMethod": "POST", - "parameterOrder": [ - "subscription" - ], - "response": { - "$ref": "Empty" - }, - "parameters": { - "subscription": { - "pattern": "^projects/[^/]+/subscriptions/[^/]+$", - "location": "path", - "description": "The name of the subscription.", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/pubsub" - ], - "flatPath": "v1beta2/projects/{projectsId}/subscriptions/{subscriptionsId}:modifyAckDeadline", - "id": "pubsub.projects.subscriptions.modifyAckDeadline", - "path": "v1beta2/{+subscription}:modifyAckDeadline" - }, - "getIamPolicy": { - "response": { - "$ref": "Policy" - }, - "parameterOrder": [ - "resource" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/pubsub" - ], - "parameters": { - "resource": { - "description": "REQUIRED: The resource for which the policy is being requested.\nSee the operation documentation for the appropriate value for this field.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/subscriptions/[^/]+$", - "location": "path" - } - }, - "flatPath": "v1beta2/projects/{projectsId}/subscriptions/{subscriptionsId}:getIamPolicy", - "path": "v1beta2/{+resource}:getIamPolicy", - "id": "pubsub.projects.subscriptions.getIamPolicy", - "description": "Gets the access control policy for a resource.\nReturns an empty policy if the resource exists and does not have a policy\nset." - }, - "get": { - "description": "Gets the configuration details of a subscription.", - "httpMethod": "GET", - "parameterOrder": [ - "subscription" - ], - "response": { - "$ref": "Subscription" - }, - "parameters": { - "subscription": { - "location": "path", - "description": "The name of the subscription to get.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/subscriptions/[^/]+$" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/pubsub" - ], - "flatPath": "v1beta2/projects/{projectsId}/subscriptions/{subscriptionsId}", - "id": "pubsub.projects.subscriptions.get", - "path": "v1beta2/{+subscription}" - }, - "testIamPermissions": { - "request": { - "$ref": "TestIamPermissionsRequest" - }, - "description": "Returns permissions that a caller has on the specified resource.\nIf the resource does not exist, this will return an empty set of\npermissions, not a NOT_FOUND error.\n\nNote: This operation is designed to be used for building permission-aware\nUIs and command-line tools, not for authorization checking. This operation\nmay \"fail open\" without warning.", - "response": { - "$ref": "TestIamPermissionsResponse" - }, - "parameterOrder": [ - "resource" - ], - "httpMethod": "POST", - "parameters": { - "resource": { - "location": "path", - "description": "REQUIRED: The resource for which the policy detail is being requested.\nSee the operation documentation for the appropriate value for this field.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/subscriptions/[^/]+$" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/pubsub" - ], - "flatPath": "v1beta2/projects/{projectsId}/subscriptions/{subscriptionsId}:testIamPermissions", - "path": "v1beta2/{+resource}:testIamPermissions", - "id": "pubsub.projects.subscriptions.testIamPermissions" - }, - "modifyPushConfig": { - "request": { - "$ref": "ModifyPushConfigRequest" - }, - "description": "Modifies the `PushConfig` for a specified subscription.\n\nThis may be used to change a push subscription to a pull one (signified by\nan empty `PushConfig`) or vice versa, or change the endpoint URL and other\nattributes of a push subscription. Messages will accumulate for delivery\ncontinuously through the call regardless of changes to the `PushConfig`.", - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "subscription" - ], - "httpMethod": "POST", - "parameters": { - "subscription": { - "description": "The name of the subscription.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/subscriptions/[^/]+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/pubsub" - ], - "flatPath": "v1beta2/projects/{projectsId}/subscriptions/{subscriptionsId}:modifyPushConfig", - "path": "v1beta2/{+subscription}:modifyPushConfig", - "id": "pubsub.projects.subscriptions.modifyPushConfig" - }, - "delete": { - "description": "Deletes an existing subscription. All pending messages in the subscription\nare immediately dropped. Calls to `Pull` after deletion will return\n`NOT_FOUND`. After a subscription is deleted, a new one may be created with\nthe same name, but the new one has no association with the old\nsubscription, or its topic unless the same topic is specified.", - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "subscription" - ], - "httpMethod": "DELETE", - "parameters": { - "subscription": { - "description": "The subscription to delete.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/subscriptions/[^/]+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/pubsub" - ], - "flatPath": "v1beta2/projects/{projectsId}/subscriptions/{subscriptionsId}", - "path": "v1beta2/{+subscription}", - "id": "pubsub.projects.subscriptions.delete" - }, - "pull": { - "response": { - "$ref": "PullResponse" - }, - "parameterOrder": [ - "subscription" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/pubsub" - ], - "parameters": { - "subscription": { - "pattern": "^projects/[^/]+/subscriptions/[^/]+$", - "location": "path", - "description": "The subscription from which messages should be pulled.", - "required": true, - "type": "string" - } - }, - "flatPath": "v1beta2/projects/{projectsId}/subscriptions/{subscriptionsId}:pull", - "path": "v1beta2/{+subscription}:pull", - "id": "pubsub.projects.subscriptions.pull", - "description": "Pulls messages from the server. Returns an empty list if there are no\nmessages available in the backlog. The server may return `UNAVAILABLE` if\nthere are too many concurrent pull requests pending for the given\nsubscription.", - "request": { - "$ref": "PullRequest" - } - } - } - }, - "topics": { - "methods": { - "getIamPolicy": { - "response": { - "$ref": "Policy" - }, - "parameterOrder": [ - "resource" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/pubsub" - ], - "parameters": { - "resource": { - "pattern": "^projects/[^/]+/topics/[^/]+$", - "location": "path", - "description": "REQUIRED: The resource for which the policy is being requested.\nSee the operation documentation for the appropriate value for this field.", - "required": true, - "type": "string" - } - }, - "flatPath": "v1beta2/projects/{projectsId}/topics/{topicsId}:getIamPolicy", - "path": "v1beta2/{+resource}:getIamPolicy", - "id": "pubsub.projects.topics.getIamPolicy", - "description": "Gets the access control policy for a resource.\nReturns an empty policy if the resource exists and does not have a policy\nset." - }, - "get": { - "description": "Gets the configuration of a topic.", - "response": { - "$ref": "Topic" - }, - "parameterOrder": [ - "topic" - ], - "httpMethod": "GET", - "parameters": { - "topic": { - "description": "The name of the topic to get.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/topics/[^/]+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/pubsub" - ], - "flatPath": "v1beta2/projects/{projectsId}/topics/{topicsId}", - "path": "v1beta2/{+topic}", - "id": "pubsub.projects.topics.get" - }, - "publish": { - "request": { - "$ref": "PublishRequest" - }, - "description": "Adds one or more messages to the topic. Returns `NOT_FOUND` if the topic\ndoes not exist. The message payload must not be empty; it must contain\n either a non-empty data field, or at least one attribute.", - "response": { - "$ref": "PublishResponse" - }, - "parameterOrder": [ - "topic" - ], - "httpMethod": "POST", - "parameters": { - "topic": { - "pattern": "^projects/[^/]+/topics/[^/]+$", - "location": "path", - "description": "The messages in the request will be published on this topic.", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/pubsub" - ], - "flatPath": "v1beta2/projects/{projectsId}/topics/{topicsId}:publish", - "path": "v1beta2/{+topic}:publish", - "id": "pubsub.projects.topics.publish" - }, - "testIamPermissions": { - "description": "Returns permissions that a caller has on the specified resource.\nIf the resource does not exist, this will return an empty set of\npermissions, not a NOT_FOUND error.\n\nNote: This operation is designed to be used for building permission-aware\nUIs and command-line tools, not for authorization checking. This operation\nmay \"fail open\" without warning.", - "request": { - "$ref": "TestIamPermissionsRequest" - }, - "response": { - "$ref": "TestIamPermissionsResponse" - }, - "parameterOrder": [ - "resource" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/pubsub" - ], - "parameters": { - "resource": { - "description": "REQUIRED: The resource for which the policy detail is being requested.\nSee the operation documentation for the appropriate value for this field.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/topics/[^/]+$", - "location": "path" - } - }, - "flatPath": "v1beta2/projects/{projectsId}/topics/{topicsId}:testIamPermissions", - "path": "v1beta2/{+resource}:testIamPermissions", - "id": "pubsub.projects.topics.testIamPermissions" - }, - "delete": { - "httpMethod": "DELETE", - "parameterOrder": [ - "topic" - ], - "response": { - "$ref": "Empty" - }, - "parameters": { - "topic": { - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/topics/[^/]+$", - "location": "path", - "description": "Name of the topic to delete." - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/pubsub" - ], - "flatPath": "v1beta2/projects/{projectsId}/topics/{topicsId}", - "id": "pubsub.projects.topics.delete", - "path": "v1beta2/{+topic}", - "description": "Deletes the topic with the given name. Returns `NOT_FOUND` if the topic\ndoes not exist. After a topic is deleted, a new topic may be created with\nthe same name; this is an entirely new topic with none of the old\nconfiguration or subscriptions. Existing subscriptions to this topic are\nnot deleted, but their `topic` field is set to `_deleted-topic_`." - }, - "list": { - "response": { - "$ref": "ListTopicsResponse" - }, - "parameterOrder": [ - "project" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/pubsub" - ], - "parameters": { - "pageToken": { - "description": "The value returned by the last `ListTopicsResponse`; indicates that this is\na continuation of a prior `ListTopics` call, and that the system should\nreturn the next page of data.", - "type": "string", - "location": "query" - }, - "pageSize": { - "description": "Maximum number of topics to return.", - "format": "int32", - "type": "integer", - "location": "query" - }, - "project": { - "description": "The name of the cloud project that topics belong to.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+$", - "location": "path" - } - }, - "flatPath": "v1beta2/projects/{projectsId}/topics", - "path": "v1beta2/{+project}/topics", - "id": "pubsub.projects.topics.list", - "description": "Lists matching topics." - }, - "setIamPolicy": { - "request": { - "$ref": "SetIamPolicyRequest" - }, - "description": "Sets the access control policy on the specified resource. Replaces any\nexisting policy.", - "response": { - "$ref": "Policy" - }, - "parameterOrder": [ - "resource" - ], - "httpMethod": "POST", - "parameters": { - "resource": { - "pattern": "^projects/[^/]+/topics/[^/]+$", - "location": "path", - "description": "REQUIRED: The resource for which the policy is being specified.\nSee the operation documentation for the appropriate value for this field.", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/pubsub" - ], - "flatPath": "v1beta2/projects/{projectsId}/topics/{topicsId}:setIamPolicy", - "path": "v1beta2/{+resource}:setIamPolicy", - "id": "pubsub.projects.topics.setIamPolicy" - }, - "create": { - "response": { - "$ref": "Topic" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "PUT", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/pubsub" - ], - "parameters": { - "name": { - "pattern": "^projects/[^/]+/topics/[^/]+$", - "location": "path", - "description": "The name of the topic. It must have the format\n`\"projects/{project}/topics/{topic}\"`. `{topic}` must start with a letter,\nand contain only letters (`[A-Za-z]`), numbers (`[0-9]`), dashes (`-`),\nunderscores (`_`), periods (`.`), tildes (`~`), plus (`+`) or percent\nsigns (`%`). It must be between 3 and 255 characters in length, and it\nmust not start with `\"goog\"`.", - "required": true, - "type": "string" - } - }, - "flatPath": "v1beta2/projects/{projectsId}/topics/{topicsId}", - "path": "v1beta2/{+name}", - "id": "pubsub.projects.topics.create", - "description": "Creates the given topic with the given name.", - "request": { - "$ref": "Topic" - } - } - }, - "resources": { - "subscriptions": { - "methods": { - "list": { - "id": "pubsub.projects.topics.subscriptions.list", - "path": "v1beta2/{+topic}/subscriptions", - "description": "Lists the name of the subscriptions for this topic.", - "httpMethod": "GET", - "parameterOrder": [ - "topic" - ], - "response": { - "$ref": "ListTopicSubscriptionsResponse" - }, - "parameters": { - "pageToken": { - "location": "query", - "description": "The value returned by the last `ListTopicSubscriptionsResponse`; indicates\nthat this is a continuation of a prior `ListTopicSubscriptions` call, and\nthat the system should return the next page of data.", - "type": "string" - }, - "pageSize": { - "description": "Maximum number of subscription names to return.", - "format": "int32", - "type": "integer", - "location": "query" - }, - "topic": { - "description": "The name of the topic that subscriptions are attached to.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/topics/[^/]+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/pubsub" - ], - "flatPath": "v1beta2/projects/{projectsId}/topics/{topicsId}/subscriptions" - } - } - } - } - } - } - } - }, - "parameters": { - "upload_protocol": { - "location": "query", - "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", - "type": "string" - }, - "prettyPrint": { - "description": "Returns response with indentations and line breaks.", - "type": "boolean", - "default": "true", - "location": "query" - }, - "uploadType": { - "location": "query", - "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", - "type": "string" - }, - "fields": { - "location": "query", - "description": "Selector specifying which fields to include in a partial response.", - "type": "string" - }, - "$.xgafv": { - "type": "string", - "enumDescriptions": [ - "v1 error format", - "v2 error format" - ], - "location": "query", - "enum": [ - "1", - "2" - ], - "description": "V1 error format." - }, - "callback": { - "description": "JSONP", - "type": "string", - "location": "query" - }, - "alt": { - "enumDescriptions": [ - "Responses with Content-Type of application/json", - "Media download with context-dependent Content-Type", - "Responses with Content-Type of application/x-protobuf" - ], - "location": "query", - "description": "Data format for response.", - "default": "json", - "enum": [ - "json", - "media", - "proto" - ], - "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.", - "type": "string", - "location": "query" - }, - "access_token": { - "location": "query", - "description": "OAuth access token.", - "type": "string" - }, - "quotaUser": { - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", - "type": "string", - "location": "query" - }, - "pp": { - "location": "query", - "description": "Pretty-print response.", - "type": "boolean", - "default": "true" - }, - "oauth_token": { - "description": "OAuth 2.0 token for the current user.", - "type": "string", - "location": "query" - }, - "bearer_token": { - "description": "OAuth bearer token.", - "type": "string", - "location": "query" - } - }, - "schemas": { - "Topic": { - "description": "A topic resource.", - "type": "object", - "properties": { - "name": { - "description": "The name of the topic. It must have the format\n`\"projects/{project}/topics/{topic}\"`. `{topic}` must start with a letter,\nand contain only letters (`[A-Za-z]`), numbers (`[0-9]`), dashes (`-`),\nunderscores (`_`), periods (`.`), tildes (`~`), plus (`+`) or percent\nsigns (`%`). It must be between 3 and 255 characters in length, and it\nmust not start with `\"goog\"`.", - "type": "string" - } - }, - "id": "Topic" - }, - "Policy": { - "description": "Defines an Identity and Access Management (IAM) policy. It is used to\nspecify access control policies for Cloud Platform resources.\n\n\nA `Policy` consists of a list of `bindings`. A `Binding` binds a list of\n`members` to a `role`, where the members can be user accounts, Google groups,\nGoogle domains, and service accounts. A `role` is a named list of permissions\ndefined by IAM.\n\n**Example**\n\n {\n \"bindings\": [\n {\n \"role\": \"roles/owner\",\n \"members\": [\n \"user:mike@example.com\",\n \"group:admins@example.com\",\n \"domain:google.com\",\n \"serviceAccount:my-other-app@appspot.gserviceaccount.com\",\n ]\n },\n {\n \"role\": \"roles/viewer\",\n \"members\": [\"user:sean@example.com\"]\n }\n ]\n }\n\nFor a description of IAM and its features, see the\n[IAM developer's guide](https://cloud.google.com/iam/docs).", - "type": "object", - "properties": { - "etag": { - "description": "`etag` is used for optimistic concurrency control as a way to help\nprevent simultaneous updates of a policy from overwriting each other.\nIt is strongly suggested that systems make use of the `etag` in the\nread-modify-write cycle to perform policy updates in order to avoid race\nconditions: An `etag` is returned in the response to `getIamPolicy`, and\nsystems are expected to put that etag in the request to `setIamPolicy` to\nensure that their change will be applied to the same version of the policy.\n\nIf no `etag` is provided in the call to `setIamPolicy`, then the existing\npolicy is overwritten blindly.", - "format": "byte", - "type": "string" - }, - "version": { - "type": "integer", - "description": "Deprecated.", - "format": "int32" - }, - "bindings": { - "description": "Associates a list of `members` to a `role`.\n`bindings` with no members will result in an error.", - "type": "array", - "items": { - "$ref": "Binding" - } - } - }, - "id": "Policy" - }, - "ModifyAckDeadlineRequest": { - "description": "Request for the ModifyAckDeadline method.", - "type": "object", - "properties": { - "ackId": { - "type": "string", - "description": "The acknowledgment ID. Either this or ack_ids must be populated, but not\nboth." - }, - "ackDeadlineSeconds": { - "description": "The new ack deadline with respect to the time this request was sent to\nthe Pub/Sub system. Must be \u003e= 0. For example, if the value is 10, the new\nack deadline will expire 10 seconds after the `ModifyAckDeadline` call\nwas made. Specifying zero may immediately make the message available for\nanother pull request.", - "format": "int32", - "type": "integer" - }, - "ackIds": { - "description": "List of acknowledgment IDs.", - "type": "array", - "items": { - "type": "string" - } - } - }, - "id": "ModifyAckDeadlineRequest" - }, - "SetIamPolicyRequest": { - "description": "Request message for `SetIamPolicy` method.", - "type": "object", - "properties": { - "policy": { - "$ref": "Policy", - "description": "REQUIRED: The complete policy to be applied to the `resource`. The size of\nthe policy is limited to a few 10s of KB. An empty policy is a\nvalid policy but certain Cloud Platform services (such as Projects)\nmight reject them." - } - }, - "id": "SetIamPolicyRequest" - }, - "PubsubMessage": { - "properties": { - "attributes": { - "additionalProperties": { - "type": "string" - }, - "description": "Optional attributes for this message.", - "type": "object" - }, - "messageId": { - "description": "ID of this message, assigned by the server when the message is published.\nGuaranteed to be unique within the topic. This value may be read by a\nsubscriber that receives a `PubsubMessage` via a `Pull` call or a push\ndelivery. It must not be populated by the publisher in a `Publish` call.", - "type": "string" - }, - "publishTime": { - "description": "The time at which the message was published, populated by the server when\nit receives the `Publish` call. It must not be populated by the\npublisher in a `Publish` call.", - "format": "google-datetime", - "type": "string" - }, - "data": { - "description": "The message payload. For JSON requests, the value of this field must be\n[base64-encoded](https://tools.ietf.org/html/rfc4648).", - "format": "byte", - "type": "string" - } - }, - "id": "PubsubMessage", - "description": "A message data and its attributes. The message payload must not be empty;\nit must contain either a non-empty data field, or at least one attribute.", - "type": "object" - }, - "ModifyPushConfigRequest": { - "description": "Request for the ModifyPushConfig method.", - "type": "object", - "properties": { - "pushConfig": { - "description": "The push configuration for future deliveries.\n\nAn empty `pushConfig` indicates that the Pub/Sub system should\nstop pushing messages from the given subscription and allow\nmessages to be pulled and acknowledged - effectively pausing\nthe subscription if `Pull` is not called.", - "$ref": "PushConfig" - } - }, - "id": "ModifyPushConfigRequest" - }, - "Binding": { - "description": "Associates `members` with a `role`.", - "type": "object", - "properties": { - "members": { - "type": "array", - "items": { - "type": "string" - }, - "description": "Specifies the identities requesting access for a Cloud Platform resource.\n`members` can have the following values:\n\n* `allUsers`: A special identifier that represents anyone who is\n on the internet; with or without a Google account.\n\n* `allAuthenticatedUsers`: A special identifier that represents anyone\n who is authenticated with a Google account or a service account.\n\n* `user:{emailid}`: An email address that represents a specific Google\n account. For example, `alice@gmail.com` or `joe@example.com`.\n\n\n* `serviceAccount:{emailid}`: An email address that represents a service\n account. For example, `my-other-app@appspot.gserviceaccount.com`.\n\n* `group:{emailid}`: An email address that represents a Google group.\n For example, `admins@example.com`.\n\n\n* `domain:{domain}`: A Google Apps domain name that represents all the\n users of that domain. For example, `google.com` or `example.com`.\n\n" - }, - "role": { - "type": "string", - "description": "Role that is assigned to `members`.\nFor example, `roles/viewer`, `roles/editor`, or `roles/owner`.\nRequired" - } - }, - "id": "Binding" - }, - "ListTopicsResponse": { - "id": "ListTopicsResponse", - "description": "Response for the `ListTopics` method.", - "type": "object", - "properties": { - "nextPageToken": { - "description": "If not empty, indicates that there may be more topics that match the\nrequest; this value should be passed in a new `ListTopicsRequest`.", - "type": "string" - }, - "topics": { - "description": "The resulting topics.", - "type": "array", - "items": { - "$ref": "Topic" - } - } - } - }, - "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 `{}`.", - "type": "object", - "properties": {}, - "id": "Empty" - }, - "AcknowledgeRequest": { - "description": "Request for the Acknowledge method.", - "type": "object", - "properties": { - "ackIds": { - "description": "The acknowledgment ID for the messages being acknowledged that was returned\nby the Pub/Sub system in the `Pull` response. Must not be empty.", - "type": "array", - "items": { - "type": "string" - } - } - }, - "id": "AcknowledgeRequest" - }, - "ListTopicSubscriptionsResponse": { - "type": "object", - "properties": { - "nextPageToken": { - "description": "If not empty, indicates that there may be more subscriptions that match\nthe request; this value should be passed in a new\n`ListTopicSubscriptionsRequest` to get more subscriptions.", - "type": "string" - }, - "subscriptions": { - "description": "The names of the subscriptions that match the request.", - "type": "array", - "items": { - "type": "string" - } - } - }, - "id": "ListTopicSubscriptionsResponse", - "description": "Response for the `ListTopicSubscriptions` method." - }, - "PullResponse": { - "description": "Response for the `Pull` method.", - "type": "object", - "properties": { - "receivedMessages": { - "description": "Received Pub/Sub messages. The Pub/Sub system will return zero messages if\nthere are no more available in the backlog. The Pub/Sub system may return\nfewer than the `maxMessages` requested even if there are more messages\navailable in the backlog.", - "type": "array", - "items": { - "$ref": "ReceivedMessage" - } - } - }, - "id": "PullResponse" - }, - "ReceivedMessage": { - "type": "object", - "properties": { - "message": { - "$ref": "PubsubMessage", - "description": "The message." - }, - "ackId": { - "description": "This ID can be used to acknowledge the received message.", - "type": "string" - } - }, - "id": "ReceivedMessage", - "description": "A message and its corresponding acknowledgment ID." - }, - "PushConfig": { - "description": "Configuration for a push delivery endpoint.", - "type": "object", - "properties": { - "pushEndpoint": { - "description": "A URL locating the endpoint to which messages should be pushed.\nFor example, a Webhook endpoint might use \"https://example.com/push\".", - "type": "string" - }, - "attributes": { - "additionalProperties": { - "type": "string" - }, - "description": "Endpoint configuration attributes.\n\nEvery endpoint has a set of API supported attributes that can be used to\ncontrol different aspects of the message delivery.\n\nThe currently supported attribute is `x-goog-version`, which you can\nuse to change the format of the push message. This attribute\nindicates the version of the data expected by the endpoint. This\ncontrols the shape of the envelope (i.e. its fields and metadata).\nThe endpoint version is based on the version of the Pub/Sub\nAPI.\n\nIf not present during the `CreateSubscription` call, it will default to\nthe version of the API used to make such call. If not present during a\n`ModifyPushConfig` call, its value will not be changed. `GetSubscription`\ncalls will always return a valid version, even if the subscription was\ncreated without this attribute.\n\nThe possible values for this attribute are:\n\n* `v1beta1`: uses the push format defined in the v1beta1 Pub/Sub API.\n* `v1` or `v1beta2`: uses the push format defined in the v1 Pub/Sub API.", - "type": "object" - } - }, - "id": "PushConfig" - }, - "TestIamPermissionsResponse": { - "description": "Response message for `TestIamPermissions` method.", - "type": "object", - "properties": { - "permissions": { - "description": "A subset of `TestPermissionsRequest.permissions` that the caller is\nallowed.", - "type": "array", - "items": { - "type": "string" - } - } - }, - "id": "TestIamPermissionsResponse" - }, - "PullRequest": { - "description": "Request for the `Pull` method.", - "type": "object", - "properties": { - "returnImmediately": { - "description": "If this is specified as true the system will respond immediately even if\nit is not able to return a message in the `Pull` response. Otherwise the\nsystem is allowed to wait until at least one message is available rather\nthan returning no messages. The client may cancel the request if it does\nnot wish to wait any longer for the response.", - "type": "boolean" - }, - "maxMessages": { - "description": "The maximum number of messages returned for this request. The Pub/Sub\nsystem may return fewer than the number specified.", - "format": "int32", - "type": "integer" - } - }, - "id": "PullRequest" - }, - "ListSubscriptionsResponse": { - "description": "Response for the `ListSubscriptions` method.", - "type": "object", - "properties": { - "nextPageToken": { - "description": "If not empty, indicates that there may be more subscriptions that match\nthe request; this value should be passed in a new\n`ListSubscriptionsRequest` to get more subscriptions.", - "type": "string" - }, - "subscriptions": { - "type": "array", - "items": { - "$ref": "Subscription" - }, - "description": "The subscriptions that match the request." - } - }, - "id": "ListSubscriptionsResponse" - }, - "PublishRequest": { - "description": "Request for the Publish method.", - "type": "object", - "properties": { - "messages": { - "type": "array", - "items": { - "$ref": "PubsubMessage" - }, - "description": "The messages to publish." - } - }, - "id": "PublishRequest" - }, - "PublishResponse": { - "id": "PublishResponse", - "description": "Response for the `Publish` method.", - "type": "object", - "properties": { - "messageIds": { - "description": "The server-assigned ID of each published message, in the same order as\nthe messages in the request. IDs are guaranteed to be unique within\nthe topic.", - "type": "array", - "items": { - "type": "string" - } - } - } - }, - "Subscription": { - "properties": { - "name": { - "description": "The name of the subscription. It must have the format\n`\"projects/{project}/subscriptions/{subscription}\"`. `{subscription}` must\nstart with a letter, and contain only letters (`[A-Za-z]`), numbers\n(`[0-9]`), dashes (`-`), underscores (`_`), periods (`.`), tildes (`~`),\nplus (`+`) or percent signs (`%`). It must be between 3 and 255 characters\nin length, and it must not start with `\"goog\"`.", - "type": "string" - }, - "topic": { - "description": "The name of the topic from which this subscription is receiving messages.\nThe value of this field will be `_deleted-topic_` if the topic has been\ndeleted.", - "type": "string" - }, - "pushConfig": { - "$ref": "PushConfig", - "description": "If push delivery is used with this subscription, this field is\nused to configure it. An empty `pushConfig` signifies that the subscriber\nwill pull and ack messages using API methods." - }, - "ackDeadlineSeconds": { - "description": "This value is the maximum time after a subscriber receives a message\nbefore the subscriber should acknowledge the message. After message\ndelivery but before the ack deadline expires and before the message is\nacknowledged, it is an outstanding message and will not be delivered\nagain during that time (on a best-effort basis).\n\nFor pull subscriptions, this value is used as the initial value for the ack\ndeadline. To override this value for a given message, call\n`ModifyAckDeadline` with the corresponding `ack_id` if using pull.\nThe maximum custom deadline you can specify is 600 seconds (10 minutes).\n\nFor push delivery, this value is also used to set the request timeout for\nthe call to the push endpoint.\n\nIf the subscriber never acknowledges the message, the Pub/Sub\nsystem will eventually redeliver the message.\n\nIf this parameter is 0, a default value of 10 seconds is used.", - "format": "int32", - "type": "integer" - } - }, - "id": "Subscription", - "description": "A subscription resource.", - "type": "object" - }, - "TestIamPermissionsRequest": { - "properties": { - "permissions": { - "type": "array", - "items": { - "type": "string" - }, - "description": "The set of permissions to check for the `resource`. Permissions with\nwildcards (such as '*' or 'storage.*') are not allowed. For more\ninformation see\n[IAM Overview](https://cloud.google.com/iam/docs/overview#permissions)." - } - }, - "id": "TestIamPermissionsRequest", - "description": "Request message for `TestIamPermissions` method.", - "type": "object" - } - }, - "icons": { - "x32": "http://www.google.com/images/icons/product/search-32.gif", - "x16": "http://www.google.com/images/icons/product/search-16.gif" - }, - "protocol": "rest", - "version": "v1beta2", - "baseUrl": "https://pubsub.googleapis.com/", - "canonicalName": "Pubsub", "auth": { "oauth2": { "scopes": { @@ -1065,11 +11,1065 @@ } } }, - "kind": "discovery#restDescription", - "description": "Provides reliable, many-to-many, asynchronous messaging between applications.\n", - "servicePath": "", - "rootUrl": "https://pubsub.googleapis.com/", "basePath": "", + "baseUrl": "https://pubsub.googleapis.com/", + "batchPath": "batch", + "canonicalName": "Pubsub", + "description": "Provides reliable, many-to-many, asynchronous messaging between applications.\n", + "discoveryVersion": "v1", + "documentationLink": "https://cloud.google.com/pubsub/docs", + "icons": { + "x16": "http://www.google.com/images/icons/product/search-16.gif", + "x32": "http://www.google.com/images/icons/product/search-32.gif" + }, + "id": "pubsub:v1beta2", + "kind": "discovery#restDescription", + "name": "pubsub", "ownerDomain": "google.com", - "name": "pubsub" -} + "ownerName": "Google", + "parameters": { + "$.xgafv": { + "description": "V1 error format.", + "enum": [ + "1", + "2" + ], + "enumDescriptions": [ + "v1 error format", + "v2 error format" + ], + "location": "query", + "type": "string" + }, + "access_token": { + "description": "OAuth access token.", + "location": "query", + "type": "string" + }, + "alt": { + "default": "json", + "description": "Data format for response.", + "enum": [ + "json", + "media", + "proto" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json", + "Media download with context-dependent Content-Type", + "Responses with Content-Type of application/x-protobuf" + ], + "location": "query", + "type": "string" + }, + "bearer_token": { + "description": "OAuth bearer token.", + "location": "query", + "type": "string" + }, + "callback": { + "description": "JSONP", + "location": "query", + "type": "string" + }, + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "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.", + "location": "query", + "type": "string" + }, + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "pp": { + "default": "true", + "description": "Pretty-print response.", + "location": "query", + "type": "boolean" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", + "location": "query", + "type": "string" + }, + "uploadType": { + "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", + "location": "query", + "type": "string" + }, + "upload_protocol": { + "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", + "location": "query", + "type": "string" + } + }, + "protocol": "rest", + "resources": { + "projects": { + "resources": { + "subscriptions": { + "methods": { + "acknowledge": { + "description": "Acknowledges the messages associated with the `ack_ids` in the\n`AcknowledgeRequest`. The Pub/Sub system can remove the relevant messages\nfrom the subscription.\n\nAcknowledging a message whose ack deadline has expired may succeed,\nbut such a message may be redelivered later. Acknowledging a message more\nthan once will not result in an error.", + "flatPath": "v1beta2/projects/{projectsId}/subscriptions/{subscriptionsId}:acknowledge", + "httpMethod": "POST", + "id": "pubsub.projects.subscriptions.acknowledge", + "parameterOrder": [ + "subscription" + ], + "parameters": { + "subscription": { + "description": "The subscription whose message is being acknowledged.", + "location": "path", + "pattern": "^projects/[^/]+/subscriptions/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta2/{+subscription}:acknowledge", + "request": { + "$ref": "AcknowledgeRequest" + }, + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/pubsub" + ] + }, + "create": { + "description": "Creates a subscription to a given topic.\nIf the subscription already exists, returns `ALREADY_EXISTS`.\nIf the corresponding topic doesn't exist, returns `NOT_FOUND`.\n\nIf the name is not provided in the request, the server will assign a random\nname for this subscription on the same project as the topic. Note that\nfor REST API requests, you must specify a name.", + "flatPath": "v1beta2/projects/{projectsId}/subscriptions/{subscriptionsId}", + "httpMethod": "PUT", + "id": "pubsub.projects.subscriptions.create", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the subscription. It must have the format\n`\"projects/{project}/subscriptions/{subscription}\"`. `{subscription}` must\nstart with a letter, and contain only letters (`[A-Za-z]`), numbers\n(`[0-9]`), dashes (`-`), underscores (`_`), periods (`.`), tildes (`~`),\nplus (`+`) or percent signs (`%`). It must be between 3 and 255 characters\nin length, and it must not start with `\"goog\"`.", + "location": "path", + "pattern": "^projects/[^/]+/subscriptions/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta2/{+name}", + "request": { + "$ref": "Subscription" + }, + "response": { + "$ref": "Subscription" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/pubsub" + ] + }, + "delete": { + "description": "Deletes an existing subscription. All pending messages in the subscription\nare immediately dropped. Calls to `Pull` after deletion will return\n`NOT_FOUND`. After a subscription is deleted, a new one may be created with\nthe same name, but the new one has no association with the old\nsubscription, or its topic unless the same topic is specified.", + "flatPath": "v1beta2/projects/{projectsId}/subscriptions/{subscriptionsId}", + "httpMethod": "DELETE", + "id": "pubsub.projects.subscriptions.delete", + "parameterOrder": [ + "subscription" + ], + "parameters": { + "subscription": { + "description": "The subscription to delete.", + "location": "path", + "pattern": "^projects/[^/]+/subscriptions/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta2/{+subscription}", + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/pubsub" + ] + }, + "get": { + "description": "Gets the configuration details of a subscription.", + "flatPath": "v1beta2/projects/{projectsId}/subscriptions/{subscriptionsId}", + "httpMethod": "GET", + "id": "pubsub.projects.subscriptions.get", + "parameterOrder": [ + "subscription" + ], + "parameters": { + "subscription": { + "description": "The name of the subscription to get.", + "location": "path", + "pattern": "^projects/[^/]+/subscriptions/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta2/{+subscription}", + "response": { + "$ref": "Subscription" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/pubsub" + ] + }, + "getIamPolicy": { + "description": "Gets the access control policy for a resource.\nReturns an empty policy if the resource exists and does not have a policy\nset.", + "flatPath": "v1beta2/projects/{projectsId}/subscriptions/{subscriptionsId}:getIamPolicy", + "httpMethod": "GET", + "id": "pubsub.projects.subscriptions.getIamPolicy", + "parameterOrder": [ + "resource" + ], + "parameters": { + "resource": { + "description": "REQUIRED: The resource for which the policy is being requested.\nSee the operation documentation for the appropriate value for this field.", + "location": "path", + "pattern": "^projects/[^/]+/subscriptions/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta2/{+resource}:getIamPolicy", + "response": { + "$ref": "Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/pubsub" + ] + }, + "list": { + "description": "Lists matching subscriptions.", + "flatPath": "v1beta2/projects/{projectsId}/subscriptions", + "httpMethod": "GET", + "id": "pubsub.projects.subscriptions.list", + "parameterOrder": [ + "project" + ], + "parameters": { + "pageSize": { + "description": "Maximum number of subscriptions to return.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "The value returned by the last `ListSubscriptionsResponse`; indicates that\nthis is a continuation of a prior `ListSubscriptions` call, and that the\nsystem should return the next page of data.", + "location": "query", + "type": "string" + }, + "project": { + "description": "The name of the cloud project that subscriptions belong to.", + "location": "path", + "pattern": "^projects/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta2/{+project}/subscriptions", + "response": { + "$ref": "ListSubscriptionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/pubsub" + ] + }, + "modifyAckDeadline": { + "description": "Modifies the ack deadline for a specific message. This method is useful\nto indicate that more time is needed to process a message by the\nsubscriber, or to make the message available for redelivery if the\nprocessing was interrupted. Note that this does not modify the\nsubscription-level `ackDeadlineSeconds` used for subsequent messages.", + "flatPath": "v1beta2/projects/{projectsId}/subscriptions/{subscriptionsId}:modifyAckDeadline", + "httpMethod": "POST", + "id": "pubsub.projects.subscriptions.modifyAckDeadline", + "parameterOrder": [ + "subscription" + ], + "parameters": { + "subscription": { + "description": "The name of the subscription.", + "location": "path", + "pattern": "^projects/[^/]+/subscriptions/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta2/{+subscription}:modifyAckDeadline", + "request": { + "$ref": "ModifyAckDeadlineRequest" + }, + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/pubsub" + ] + }, + "modifyPushConfig": { + "description": "Modifies the `PushConfig` for a specified subscription.\n\nThis may be used to change a push subscription to a pull one (signified by\nan empty `PushConfig`) or vice versa, or change the endpoint URL and other\nattributes of a push subscription. Messages will accumulate for delivery\ncontinuously through the call regardless of changes to the `PushConfig`.", + "flatPath": "v1beta2/projects/{projectsId}/subscriptions/{subscriptionsId}:modifyPushConfig", + "httpMethod": "POST", + "id": "pubsub.projects.subscriptions.modifyPushConfig", + "parameterOrder": [ + "subscription" + ], + "parameters": { + "subscription": { + "description": "The name of the subscription.", + "location": "path", + "pattern": "^projects/[^/]+/subscriptions/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta2/{+subscription}:modifyPushConfig", + "request": { + "$ref": "ModifyPushConfigRequest" + }, + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/pubsub" + ] + }, + "pull": { + "description": "Pulls messages from the server. Returns an empty list if there are no\nmessages available in the backlog. The server may return `UNAVAILABLE` if\nthere are too many concurrent pull requests pending for the given\nsubscription.", + "flatPath": "v1beta2/projects/{projectsId}/subscriptions/{subscriptionsId}:pull", + "httpMethod": "POST", + "id": "pubsub.projects.subscriptions.pull", + "parameterOrder": [ + "subscription" + ], + "parameters": { + "subscription": { + "description": "The subscription from which messages should be pulled.", + "location": "path", + "pattern": "^projects/[^/]+/subscriptions/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta2/{+subscription}:pull", + "request": { + "$ref": "PullRequest" + }, + "response": { + "$ref": "PullResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/pubsub" + ] + }, + "setIamPolicy": { + "description": "Sets the access control policy on the specified resource. Replaces any\nexisting policy.", + "flatPath": "v1beta2/projects/{projectsId}/subscriptions/{subscriptionsId}:setIamPolicy", + "httpMethod": "POST", + "id": "pubsub.projects.subscriptions.setIamPolicy", + "parameterOrder": [ + "resource" + ], + "parameters": { + "resource": { + "description": "REQUIRED: The resource for which the policy is being specified.\nSee the operation documentation for the appropriate value for this field.", + "location": "path", + "pattern": "^projects/[^/]+/subscriptions/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta2/{+resource}:setIamPolicy", + "request": { + "$ref": "SetIamPolicyRequest" + }, + "response": { + "$ref": "Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/pubsub" + ] + }, + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource.\nIf the resource does not exist, this will return an empty set of\npermissions, not a NOT_FOUND error.\n\nNote: This operation is designed to be used for building permission-aware\nUIs and command-line tools, not for authorization checking. This operation\nmay \"fail open\" without warning.", + "flatPath": "v1beta2/projects/{projectsId}/subscriptions/{subscriptionsId}:testIamPermissions", + "httpMethod": "POST", + "id": "pubsub.projects.subscriptions.testIamPermissions", + "parameterOrder": [ + "resource" + ], + "parameters": { + "resource": { + "description": "REQUIRED: The resource for which the policy detail is being requested.\nSee the operation documentation for the appropriate value for this field.", + "location": "path", + "pattern": "^projects/[^/]+/subscriptions/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta2/{+resource}:testIamPermissions", + "request": { + "$ref": "TestIamPermissionsRequest" + }, + "response": { + "$ref": "TestIamPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/pubsub" + ] + } + } + }, + "topics": { + "methods": { + "create": { + "description": "Creates the given topic with the given name.", + "flatPath": "v1beta2/projects/{projectsId}/topics/{topicsId}", + "httpMethod": "PUT", + "id": "pubsub.projects.topics.create", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the topic. It must have the format\n`\"projects/{project}/topics/{topic}\"`. `{topic}` must start with a letter,\nand contain only letters (`[A-Za-z]`), numbers (`[0-9]`), dashes (`-`),\nunderscores (`_`), periods (`.`), tildes (`~`), plus (`+`) or percent\nsigns (`%`). It must be between 3 and 255 characters in length, and it\nmust not start with `\"goog\"`.", + "location": "path", + "pattern": "^projects/[^/]+/topics/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta2/{+name}", + "request": { + "$ref": "Topic" + }, + "response": { + "$ref": "Topic" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/pubsub" + ] + }, + "delete": { + "description": "Deletes the topic with the given name. Returns `NOT_FOUND` if the topic\ndoes not exist. After a topic is deleted, a new topic may be created with\nthe same name; this is an entirely new topic with none of the old\nconfiguration or subscriptions. Existing subscriptions to this topic are\nnot deleted, but their `topic` field is set to `_deleted-topic_`.", + "flatPath": "v1beta2/projects/{projectsId}/topics/{topicsId}", + "httpMethod": "DELETE", + "id": "pubsub.projects.topics.delete", + "parameterOrder": [ + "topic" + ], + "parameters": { + "topic": { + "description": "Name of the topic to delete.", + "location": "path", + "pattern": "^projects/[^/]+/topics/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta2/{+topic}", + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/pubsub" + ] + }, + "get": { + "description": "Gets the configuration of a topic.", + "flatPath": "v1beta2/projects/{projectsId}/topics/{topicsId}", + "httpMethod": "GET", + "id": "pubsub.projects.topics.get", + "parameterOrder": [ + "topic" + ], + "parameters": { + "topic": { + "description": "The name of the topic to get.", + "location": "path", + "pattern": "^projects/[^/]+/topics/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta2/{+topic}", + "response": { + "$ref": "Topic" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/pubsub" + ] + }, + "getIamPolicy": { + "description": "Gets the access control policy for a resource.\nReturns an empty policy if the resource exists and does not have a policy\nset.", + "flatPath": "v1beta2/projects/{projectsId}/topics/{topicsId}:getIamPolicy", + "httpMethod": "GET", + "id": "pubsub.projects.topics.getIamPolicy", + "parameterOrder": [ + "resource" + ], + "parameters": { + "resource": { + "description": "REQUIRED: The resource for which the policy is being requested.\nSee the operation documentation for the appropriate value for this field.", + "location": "path", + "pattern": "^projects/[^/]+/topics/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta2/{+resource}:getIamPolicy", + "response": { + "$ref": "Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/pubsub" + ] + }, + "list": { + "description": "Lists matching topics.", + "flatPath": "v1beta2/projects/{projectsId}/topics", + "httpMethod": "GET", + "id": "pubsub.projects.topics.list", + "parameterOrder": [ + "project" + ], + "parameters": { + "pageSize": { + "description": "Maximum number of topics to return.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "The value returned by the last `ListTopicsResponse`; indicates that this is\na continuation of a prior `ListTopics` call, and that the system should\nreturn the next page of data.", + "location": "query", + "type": "string" + }, + "project": { + "description": "The name of the cloud project that topics belong to.", + "location": "path", + "pattern": "^projects/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta2/{+project}/topics", + "response": { + "$ref": "ListTopicsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/pubsub" + ] + }, + "publish": { + "description": "Adds one or more messages to the topic. Returns `NOT_FOUND` if the topic\ndoes not exist. The message payload must not be empty; it must contain\n either a non-empty data field, or at least one attribute.", + "flatPath": "v1beta2/projects/{projectsId}/topics/{topicsId}:publish", + "httpMethod": "POST", + "id": "pubsub.projects.topics.publish", + "parameterOrder": [ + "topic" + ], + "parameters": { + "topic": { + "description": "The messages in the request will be published on this topic.", + "location": "path", + "pattern": "^projects/[^/]+/topics/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta2/{+topic}:publish", + "request": { + "$ref": "PublishRequest" + }, + "response": { + "$ref": "PublishResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/pubsub" + ] + }, + "setIamPolicy": { + "description": "Sets the access control policy on the specified resource. Replaces any\nexisting policy.", + "flatPath": "v1beta2/projects/{projectsId}/topics/{topicsId}:setIamPolicy", + "httpMethod": "POST", + "id": "pubsub.projects.topics.setIamPolicy", + "parameterOrder": [ + "resource" + ], + "parameters": { + "resource": { + "description": "REQUIRED: The resource for which the policy is being specified.\nSee the operation documentation for the appropriate value for this field.", + "location": "path", + "pattern": "^projects/[^/]+/topics/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta2/{+resource}:setIamPolicy", + "request": { + "$ref": "SetIamPolicyRequest" + }, + "response": { + "$ref": "Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/pubsub" + ] + }, + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource.\nIf the resource does not exist, this will return an empty set of\npermissions, not a NOT_FOUND error.\n\nNote: This operation is designed to be used for building permission-aware\nUIs and command-line tools, not for authorization checking. This operation\nmay \"fail open\" without warning.", + "flatPath": "v1beta2/projects/{projectsId}/topics/{topicsId}:testIamPermissions", + "httpMethod": "POST", + "id": "pubsub.projects.topics.testIamPermissions", + "parameterOrder": [ + "resource" + ], + "parameters": { + "resource": { + "description": "REQUIRED: The resource for which the policy detail is being requested.\nSee the operation documentation for the appropriate value for this field.", + "location": "path", + "pattern": "^projects/[^/]+/topics/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta2/{+resource}:testIamPermissions", + "request": { + "$ref": "TestIamPermissionsRequest" + }, + "response": { + "$ref": "TestIamPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/pubsub" + ] + } + }, + "resources": { + "subscriptions": { + "methods": { + "list": { + "description": "Lists the name of the subscriptions for this topic.", + "flatPath": "v1beta2/projects/{projectsId}/topics/{topicsId}/subscriptions", + "httpMethod": "GET", + "id": "pubsub.projects.topics.subscriptions.list", + "parameterOrder": [ + "topic" + ], + "parameters": { + "pageSize": { + "description": "Maximum number of subscription names to return.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "The value returned by the last `ListTopicSubscriptionsResponse`; indicates\nthat this is a continuation of a prior `ListTopicSubscriptions` call, and\nthat the system should return the next page of data.", + "location": "query", + "type": "string" + }, + "topic": { + "description": "The name of the topic that subscriptions are attached to.", + "location": "path", + "pattern": "^projects/[^/]+/topics/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta2/{+topic}/subscriptions", + "response": { + "$ref": "ListTopicSubscriptionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/pubsub" + ] + } + } + } + } + } + } + } + }, + "revision": "20180129", + "rootUrl": "https://pubsub.googleapis.com/", + "schemas": { + "AcknowledgeRequest": { + "description": "Request for the Acknowledge method.", + "id": "AcknowledgeRequest", + "properties": { + "ackIds": { + "description": "The acknowledgment ID for the messages being acknowledged that was returned\nby the Pub/Sub system in the `Pull` response. Must not be empty.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "Binding": { + "description": "Associates `members` with a `role`.", + "id": "Binding", + "properties": { + "members": { + "description": "Specifies the identities requesting access for a Cloud Platform resource.\n`members` can have the following values:\n\n* `allUsers`: A special identifier that represents anyone who is\n on the internet; with or without a Google account.\n\n* `allAuthenticatedUsers`: A special identifier that represents anyone\n who is authenticated with a Google account or a service account.\n\n* `user:{emailid}`: An email address that represents a specific Google\n account. For example, `alice@gmail.com` or `joe@example.com`.\n\n\n* `serviceAccount:{emailid}`: An email address that represents a service\n account. For example, `my-other-app@appspot.gserviceaccount.com`.\n\n* `group:{emailid}`: An email address that represents a Google group.\n For example, `admins@example.com`.\n\n\n* `domain:{domain}`: A Google Apps domain name that represents all the\n users of that domain. For example, `google.com` or `example.com`.\n\n", + "items": { + "type": "string" + }, + "type": "array" + }, + "role": { + "description": "Role that is assigned to `members`.\nFor example, `roles/viewer`, `roles/editor`, or `roles/owner`.\nRequired", + "type": "string" + } + }, + "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" + }, + "ListSubscriptionsResponse": { + "description": "Response for the `ListSubscriptions` method.", + "id": "ListSubscriptionsResponse", + "properties": { + "nextPageToken": { + "description": "If not empty, indicates that there may be more subscriptions that match\nthe request; this value should be passed in a new\n`ListSubscriptionsRequest` to get more subscriptions.", + "type": "string" + }, + "subscriptions": { + "description": "The subscriptions that match the request.", + "items": { + "$ref": "Subscription" + }, + "type": "array" + } + }, + "type": "object" + }, + "ListTopicSubscriptionsResponse": { + "description": "Response for the `ListTopicSubscriptions` method.", + "id": "ListTopicSubscriptionsResponse", + "properties": { + "nextPageToken": { + "description": "If not empty, indicates that there may be more subscriptions that match\nthe request; this value should be passed in a new\n`ListTopicSubscriptionsRequest` to get more subscriptions.", + "type": "string" + }, + "subscriptions": { + "description": "The names of the subscriptions that match the request.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "ListTopicsResponse": { + "description": "Response for the `ListTopics` method.", + "id": "ListTopicsResponse", + "properties": { + "nextPageToken": { + "description": "If not empty, indicates that there may be more topics that match the\nrequest; this value should be passed in a new `ListTopicsRequest`.", + "type": "string" + }, + "topics": { + "description": "The resulting topics.", + "items": { + "$ref": "Topic" + }, + "type": "array" + } + }, + "type": "object" + }, + "ModifyAckDeadlineRequest": { + "description": "Request for the ModifyAckDeadline method.", + "id": "ModifyAckDeadlineRequest", + "properties": { + "ackDeadlineSeconds": { + "description": "The new ack deadline with respect to the time this request was sent to\nthe Pub/Sub system. Must be \u003e= 0. For example, if the value is 10, the new\nack deadline will expire 10 seconds after the `ModifyAckDeadline` call\nwas made. Specifying zero may immediately make the message available for\nanother pull request.", + "format": "int32", + "type": "integer" + }, + "ackId": { + "description": "The acknowledgment ID. Either this or ack_ids must be populated, but not\nboth.", + "type": "string" + }, + "ackIds": { + "description": "List of acknowledgment IDs.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "ModifyPushConfigRequest": { + "description": "Request for the ModifyPushConfig method.", + "id": "ModifyPushConfigRequest", + "properties": { + "pushConfig": { + "$ref": "PushConfig", + "description": "The push configuration for future deliveries.\n\nAn empty `pushConfig` indicates that the Pub/Sub system should\nstop pushing messages from the given subscription and allow\nmessages to be pulled and acknowledged - effectively pausing\nthe subscription if `Pull` is not called." + } + }, + "type": "object" + }, + "Policy": { + "description": "Defines an Identity and Access Management (IAM) policy. It is used to\nspecify access control policies for Cloud Platform resources.\n\n\nA `Policy` consists of a list of `bindings`. A `Binding` binds a list of\n`members` to a `role`, where the members can be user accounts, Google groups,\nGoogle domains, and service accounts. A `role` is a named list of permissions\ndefined by IAM.\n\n**Example**\n\n {\n \"bindings\": [\n {\n \"role\": \"roles/owner\",\n \"members\": [\n \"user:mike@example.com\",\n \"group:admins@example.com\",\n \"domain:google.com\",\n \"serviceAccount:my-other-app@appspot.gserviceaccount.com\",\n ]\n },\n {\n \"role\": \"roles/viewer\",\n \"members\": [\"user:sean@example.com\"]\n }\n ]\n }\n\nFor a description of IAM and its features, see the\n[IAM developer's guide](https://cloud.google.com/iam/docs).", + "id": "Policy", + "properties": { + "bindings": { + "description": "Associates a list of `members` to a `role`.\n`bindings` with no members will result in an error.", + "items": { + "$ref": "Binding" + }, + "type": "array" + }, + "etag": { + "description": "`etag` is used for optimistic concurrency control as a way to help\nprevent simultaneous updates of a policy from overwriting each other.\nIt is strongly suggested that systems make use of the `etag` in the\nread-modify-write cycle to perform policy updates in order to avoid race\nconditions: An `etag` is returned in the response to `getIamPolicy`, and\nsystems are expected to put that etag in the request to `setIamPolicy` to\nensure that their change will be applied to the same version of the policy.\n\nIf no `etag` is provided in the call to `setIamPolicy`, then the existing\npolicy is overwritten blindly.", + "format": "byte", + "type": "string" + }, + "version": { + "description": "Deprecated.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "PublishRequest": { + "description": "Request for the Publish method.", + "id": "PublishRequest", + "properties": { + "messages": { + "description": "The messages to publish.", + "items": { + "$ref": "PubsubMessage" + }, + "type": "array" + } + }, + "type": "object" + }, + "PublishResponse": { + "description": "Response for the `Publish` method.", + "id": "PublishResponse", + "properties": { + "messageIds": { + "description": "The server-assigned ID of each published message, in the same order as\nthe messages in the request. IDs are guaranteed to be unique within\nthe topic.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "PubsubMessage": { + "description": "A message data and its attributes. The message payload must not be empty;\nit must contain either a non-empty data field, or at least one attribute.", + "id": "PubsubMessage", + "properties": { + "attributes": { + "additionalProperties": { + "type": "string" + }, + "description": "Optional attributes for this message.", + "type": "object" + }, + "data": { + "description": "The message payload. For JSON requests, the value of this field must be\n[base64-encoded](https://tools.ietf.org/html/rfc4648).", + "format": "byte", + "type": "string" + }, + "messageId": { + "description": "ID of this message, assigned by the server when the message is published.\nGuaranteed to be unique within the topic. This value may be read by a\nsubscriber that receives a `PubsubMessage` via a `Pull` call or a push\ndelivery. It must not be populated by the publisher in a `Publish` call.", + "type": "string" + }, + "publishTime": { + "description": "The time at which the message was published, populated by the server when\nit receives the `Publish` call. It must not be populated by the\npublisher in a `Publish` call.", + "format": "google-datetime", + "type": "string" + } + }, + "type": "object" + }, + "PullRequest": { + "description": "Request for the `Pull` method.", + "id": "PullRequest", + "properties": { + "maxMessages": { + "description": "The maximum number of messages returned for this request. The Pub/Sub\nsystem may return fewer than the number specified.", + "format": "int32", + "type": "integer" + }, + "returnImmediately": { + "description": "If this is specified as true the system will respond immediately even if\nit is not able to return a message in the `Pull` response. Otherwise the\nsystem is allowed to wait until at least one message is available rather\nthan returning no messages. The client may cancel the request if it does\nnot wish to wait any longer for the response.", + "type": "boolean" + } + }, + "type": "object" + }, + "PullResponse": { + "description": "Response for the `Pull` method.", + "id": "PullResponse", + "properties": { + "receivedMessages": { + "description": "Received Pub/Sub messages. The Pub/Sub system will return zero messages if\nthere are no more available in the backlog. The Pub/Sub system may return\nfewer than the `maxMessages` requested even if there are more messages\navailable in the backlog.", + "items": { + "$ref": "ReceivedMessage" + }, + "type": "array" + } + }, + "type": "object" + }, + "PushConfig": { + "description": "Configuration for a push delivery endpoint.", + "id": "PushConfig", + "properties": { + "attributes": { + "additionalProperties": { + "type": "string" + }, + "description": "Endpoint configuration attributes.\n\nEvery endpoint has a set of API supported attributes that can be used to\ncontrol different aspects of the message delivery.\n\nThe currently supported attribute is `x-goog-version`, which you can\nuse to change the format of the push message. This attribute\nindicates the version of the data expected by the endpoint. This\ncontrols the shape of the envelope (i.e. its fields and metadata).\nThe endpoint version is based on the version of the Pub/Sub\nAPI.\n\nIf not present during the `CreateSubscription` call, it will default to\nthe version of the API used to make such call. If not present during a\n`ModifyPushConfig` call, its value will not be changed. `GetSubscription`\ncalls will always return a valid version, even if the subscription was\ncreated without this attribute.\n\nThe possible values for this attribute are:\n\n* `v1beta1`: uses the push format defined in the v1beta1 Pub/Sub API.\n* `v1` or `v1beta2`: uses the push format defined in the v1 Pub/Sub API.", + "type": "object" + }, + "pushEndpoint": { + "description": "A URL locating the endpoint to which messages should be pushed.\nFor example, a Webhook endpoint might use \"https://example.com/push\".", + "type": "string" + } + }, + "type": "object" + }, + "ReceivedMessage": { + "description": "A message and its corresponding acknowledgment ID.", + "id": "ReceivedMessage", + "properties": { + "ackId": { + "description": "This ID can be used to acknowledge the received message.", + "type": "string" + }, + "message": { + "$ref": "PubsubMessage", + "description": "The message." + } + }, + "type": "object" + }, + "SetIamPolicyRequest": { + "description": "Request message for `SetIamPolicy` method.", + "id": "SetIamPolicyRequest", + "properties": { + "policy": { + "$ref": "Policy", + "description": "REQUIRED: The complete policy to be applied to the `resource`. The size of\nthe policy is limited to a few 10s of KB. An empty policy is a\nvalid policy but certain Cloud Platform services (such as Projects)\nmight reject them." + } + }, + "type": "object" + }, + "Subscription": { + "description": "A subscription resource.", + "id": "Subscription", + "properties": { + "ackDeadlineSeconds": { + "description": "This value is the maximum time after a subscriber receives a message\nbefore the subscriber should acknowledge the message. After message\ndelivery but before the ack deadline expires and before the message is\nacknowledged, it is an outstanding message and will not be delivered\nagain during that time (on a best-effort basis).\n\nFor pull subscriptions, this value is used as the initial value for the ack\ndeadline. To override this value for a given message, call\n`ModifyAckDeadline` with the corresponding `ack_id` if using pull.\nThe maximum custom deadline you can specify is 600 seconds (10 minutes).\n\nFor push delivery, this value is also used to set the request timeout for\nthe call to the push endpoint.\n\nIf the subscriber never acknowledges the message, the Pub/Sub\nsystem will eventually redeliver the message.\n\nIf this parameter is 0, a default value of 10 seconds is used.", + "format": "int32", + "type": "integer" + }, + "name": { + "description": "The name of the subscription. It must have the format\n`\"projects/{project}/subscriptions/{subscription}\"`. `{subscription}` must\nstart with a letter, and contain only letters (`[A-Za-z]`), numbers\n(`[0-9]`), dashes (`-`), underscores (`_`), periods (`.`), tildes (`~`),\nplus (`+`) or percent signs (`%`). It must be between 3 and 255 characters\nin length, and it must not start with `\"goog\"`.", + "type": "string" + }, + "pushConfig": { + "$ref": "PushConfig", + "description": "If push delivery is used with this subscription, this field is\nused to configure it. An empty `pushConfig` signifies that the subscriber\nwill pull and ack messages using API methods." + }, + "topic": { + "description": "The name of the topic from which this subscription is receiving messages.\nThe value of this field will be `_deleted-topic_` if the topic has been\ndeleted.", + "type": "string" + } + }, + "type": "object" + }, + "TestIamPermissionsRequest": { + "description": "Request message for `TestIamPermissions` method.", + "id": "TestIamPermissionsRequest", + "properties": { + "permissions": { + "description": "The set of permissions to check for the `resource`. Permissions with\nwildcards (such as '*' or 'storage.*') are not allowed. For more\ninformation see\n[IAM Overview](https://cloud.google.com/iam/docs/overview#permissions).", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "TestIamPermissionsResponse": { + "description": "Response message for `TestIamPermissions` method.", + "id": "TestIamPermissionsResponse", + "properties": { + "permissions": { + "description": "A subset of `TestPermissionsRequest.permissions` that the caller is\nallowed.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "Topic": { + "description": "A topic resource.", + "id": "Topic", + "properties": { + "name": { + "description": "The name of the topic. It must have the format\n`\"projects/{project}/topics/{topic}\"`. `{topic}` must start with a letter,\nand contain only letters (`[A-Za-z]`), numbers (`[0-9]`), dashes (`-`),\nunderscores (`_`), periods (`.`), tildes (`~`), plus (`+`) or percent\nsigns (`%`). It must be between 3 and 255 characters in length, and it\nmust not start with `\"goog\"`.", + "type": "string" + } + }, + "type": "object" + } + }, + "servicePath": "", + "title": "Google Cloud Pub/Sub API", + "version": "v1beta2" +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/qpxexpress/v1/qpxexpress-gen.go b/vendor/google.golang.org/api/qpxexpress/v1/qpxexpress-gen.go index 84605ed91..15cc2b90d 100644 --- a/vendor/google.golang.org/api/qpxexpress/v1/qpxexpress-gen.go +++ b/vendor/google.golang.org/api/qpxexpress/v1/qpxexpress-gen.go @@ -109,8 +109,8 @@ type AircraftData struct { } func (s *AircraftData) MarshalJSON() ([]byte, error) { - type noMethod AircraftData - raw := noMethod(*s) + type NoMethod AircraftData + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -150,8 +150,8 @@ type AirportData struct { } func (s *AirportData) MarshalJSON() ([]byte, error) { - type noMethod AirportData - raw := noMethod(*s) + type NoMethod AirportData + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -193,8 +193,8 @@ type BagDescriptor struct { } func (s *BagDescriptor) MarshalJSON() ([]byte, error) { - type noMethod BagDescriptor - raw := noMethod(*s) + type NoMethod BagDescriptor + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -231,8 +231,8 @@ type CarrierData struct { } func (s *CarrierData) MarshalJSON() ([]byte, error) { - type noMethod CarrierData - raw := noMethod(*s) + type NoMethod CarrierData + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -272,8 +272,8 @@ type CityData struct { } func (s *CityData) MarshalJSON() ([]byte, error) { - type noMethod CityData - raw := noMethod(*s) + type NoMethod CityData + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -322,8 +322,8 @@ type Data struct { } func (s *Data) MarshalJSON() ([]byte, error) { - type noMethod Data - raw := noMethod(*s) + type NoMethod Data + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -375,8 +375,8 @@ type FareInfo struct { } func (s *FareInfo) MarshalJSON() ([]byte, error) { - type noMethod FareInfo - raw := noMethod(*s) + type NoMethod FareInfo + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -412,8 +412,8 @@ type FlightInfo struct { } func (s *FlightInfo) MarshalJSON() ([]byte, error) { - type noMethod FlightInfo - raw := noMethod(*s) + type NoMethod FlightInfo + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -460,8 +460,8 @@ type FreeBaggageAllowance struct { } func (s *FreeBaggageAllowance) MarshalJSON() ([]byte, error) { - type noMethod FreeBaggageAllowance - raw := noMethod(*s) + type NoMethod FreeBaggageAllowance + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -557,8 +557,8 @@ type LegInfo struct { } func (s *LegInfo) MarshalJSON() ([]byte, error) { - type noMethod LegInfo - raw := noMethod(*s) + type NoMethod LegInfo + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -606,8 +606,8 @@ type PassengerCounts struct { } func (s *PassengerCounts) MarshalJSON() ([]byte, error) { - type noMethod PassengerCounts - raw := noMethod(*s) + type NoMethod PassengerCounts + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -686,8 +686,8 @@ type PricingInfo struct { } func (s *PricingInfo) MarshalJSON() ([]byte, error) { - type noMethod PricingInfo - raw := noMethod(*s) + type NoMethod PricingInfo + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -764,8 +764,8 @@ type SegmentInfo struct { } func (s *SegmentInfo) MarshalJSON() ([]byte, error) { - type noMethod SegmentInfo - raw := noMethod(*s) + type NoMethod SegmentInfo + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -805,8 +805,8 @@ type SegmentPricing struct { } func (s *SegmentPricing) MarshalJSON() ([]byte, error) { - type noMethod SegmentPricing - raw := noMethod(*s) + type NoMethod SegmentPricing + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -851,8 +851,8 @@ type SliceInfo struct { } func (s *SliceInfo) MarshalJSON() ([]byte, error) { - type noMethod SliceInfo - raw := noMethod(*s) + type NoMethod SliceInfo + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -919,8 +919,8 @@ type SliceInput struct { } func (s *SliceInput) MarshalJSON() ([]byte, error) { - type noMethod SliceInput - raw := noMethod(*s) + type NoMethod SliceInput + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -954,8 +954,8 @@ type TaxData struct { } func (s *TaxData) MarshalJSON() ([]byte, error) { - type noMethod TaxData - raw := noMethod(*s) + type NoMethod TaxData + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -1000,8 +1000,8 @@ type TaxInfo struct { } func (s *TaxInfo) MarshalJSON() ([]byte, error) { - type noMethod TaxInfo - raw := noMethod(*s) + type NoMethod TaxInfo + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -1036,8 +1036,8 @@ type TimeOfDayRange struct { } func (s *TimeOfDayRange) MarshalJSON() ([]byte, error) { - type noMethod TimeOfDayRange - raw := noMethod(*s) + type NoMethod TimeOfDayRange + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -1078,8 +1078,8 @@ type TripOption struct { } func (s *TripOption) MarshalJSON() ([]byte, error) { - type noMethod TripOption - raw := noMethod(*s) + type NoMethod TripOption + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -1135,8 +1135,8 @@ type TripOptionsRequest struct { } func (s *TripOptionsRequest) MarshalJSON() ([]byte, error) { - type noMethod TripOptionsRequest - raw := noMethod(*s) + type NoMethod TripOptionsRequest + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -1175,8 +1175,8 @@ type TripOptionsResponse struct { } func (s *TripOptionsResponse) MarshalJSON() ([]byte, error) { - type noMethod TripOptionsResponse - raw := noMethod(*s) + type NoMethod TripOptionsResponse + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -1204,8 +1204,8 @@ type TripsSearchRequest struct { } func (s *TripsSearchRequest) MarshalJSON() ([]byte, error) { - type noMethod TripsSearchRequest - raw := noMethod(*s) + type NoMethod TripsSearchRequest + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -1240,8 +1240,8 @@ type TripsSearchResponse struct { } func (s *TripsSearchResponse) MarshalJSON() ([]byte, error) { - type noMethod TripsSearchResponse - raw := noMethod(*s) + type NoMethod TripsSearchResponse + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -1340,7 +1340,7 @@ func (c *TripsSearchCall) Do(opts ...googleapi.CallOption) (*TripsSearchResponse }, } target := &ret - if err := json.NewDecoder(res.Body).Decode(target); err != nil { + if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil diff --git a/vendor/google.golang.org/api/replicapool/v1beta1/replicapool-api.json b/vendor/google.golang.org/api/replicapool/v1beta1/replicapool-api.json index d688986bc..be74b53b6 100644 --- a/vendor/google.golang.org/api/replicapool/v1beta1/replicapool-api.json +++ b/vendor/google.golang.org/api/replicapool/v1beta1/replicapool-api.json @@ -1,1116 +1,1116 @@ { - "kind": "discovery#restDescription", - "etag": "\"YWOzh2SDasdU84ArJnpYek-OMdg/jlteK0NbZ8atlXF9lM-OU-ZamcA\"", - "discoveryVersion": "v1", - "id": "replicapool:v1beta1", - "name": "replicapool", - "version": "v1beta1", - "revision": "20160512", - "title": "Replica Pool API", - "description": "The Replica Pool API allows users to declaratively provision and manage groups of Google Compute Engine instances based on a common template.", - "ownerDomain": "google.com", - "ownerName": "Google", - "icons": { - "x16": "https://www.gstatic.com/images/branding/product/1x/googleg_16dp.png", - "x32": "https://www.gstatic.com/images/branding/product/1x/googleg_32dp.png" - }, - "documentationLink": "https://developers.google.com/compute/docs/replica-pool/", - "labels": [ - "limited_availability" - ], - "protocol": "rest", - "baseUrl": "https://www.googleapis.com/replicapool/v1beta1/projects/", - "basePath": "/replicapool/v1beta1/projects/", - "rootUrl": "https://www.googleapis.com/", - "servicePath": "replicapool/v1beta1/projects/", - "batchPath": "batch/replicapool/v1beta1", - "parameters": { - "alt": { - "type": "string", - "description": "Data format for the response.", - "default": "json", - "enum": [ - "json" - ], - "enumDescriptions": [ - "Responses with Content-Type of application/json" - ], - "location": "query" - }, - "fields": { - "type": "string", - "description": "Selector specifying which fields to include in a partial response.", - "location": "query" - }, - "key": { - "type": "string", - "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" - }, - "oauth_token": { - "type": "string", - "description": "OAuth 2.0 token for the current user.", - "location": "query" - }, - "prettyPrint": { - "type": "boolean", - "description": "Returns response with indentations and line breaks.", - "default": "true", - "location": "query" - }, - "quotaUser": { - "type": "string", - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", - "location": "query" - }, - "userIp": { - "type": "string", - "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", - "location": "query" - } - }, - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/cloud-platform": { - "description": "View and manage your data across Google Cloud Platform services" - }, - "https://www.googleapis.com/auth/cloud-platform.read-only": { - "description": "View your data across Google Cloud Platform services" - }, - "https://www.googleapis.com/auth/ndev.cloudman": { - "description": "View and manage your Google Cloud Platform management resources and deployment status information" - }, - "https://www.googleapis.com/auth/ndev.cloudman.readonly": { - "description": "View your Google Cloud Platform management resources and deployment status information" - }, - "https://www.googleapis.com/auth/replicapool": { - "description": "View and manage replica pools" - }, - "https://www.googleapis.com/auth/replicapool.readonly": { - "description": "View replica pools" + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/cloud-platform": { + "description": "View and manage your data across Google Cloud Platform services" + }, + "https://www.googleapis.com/auth/cloud-platform.read-only": { + "description": "View your data across Google Cloud Platform services" + }, + "https://www.googleapis.com/auth/ndev.cloudman": { + "description": "View and manage your Google Cloud Platform management resources and deployment status information" + }, + "https://www.googleapis.com/auth/ndev.cloudman.readonly": { + "description": "View your Google Cloud Platform management resources and deployment status information" + }, + "https://www.googleapis.com/auth/replicapool": { + "description": "View and manage replica pools" + }, + "https://www.googleapis.com/auth/replicapool.readonly": { + "description": "View replica pools" + } + } } - } - } - }, - "schemas": { - "AccessConfig": { - "id": "AccessConfig", - "type": "object", - "description": "A Compute Engine network accessConfig. Identical to the accessConfig on corresponding Compute Engine resource.", - "properties": { - "name": { - "type": "string", - "description": "Name of this access configuration." - }, - "natIp": { - "type": "string", - "description": "An external IP address associated with this instance." - }, - "type": { - "type": "string", - "description": "Type of this access configuration file. Currently only ONE_TO_ONE_NAT is supported." - } - } }, - "Action": { - "id": "Action", - "type": "object", - "description": "An action that gets executed during initialization of the replicas.", - "properties": { - "commands": { - "type": "array", - "description": "A list of commands to run, one per line. If any command fails, the whole action is considered a failure and no further actions are run. This also marks the virtual machine or replica as a failure.", - "items": { + "basePath": "/replicapool/v1beta1/projects/", + "baseUrl": "https://www.googleapis.com/replicapool/v1beta1/projects/", + "batchPath": "batch/replicapool/v1beta1", + "description": "The Replica Pool API allows users to declaratively provision and manage groups of Google Compute Engine instances based on a common template.", + "discoveryVersion": "v1", + "documentationLink": "https://developers.google.com/compute/docs/replica-pool/", + "etag": "\"-iA1DTNe4s-I6JZXPt1t1Ypy8IU/jlteK0NbZ8atlXF9lM-OU-ZamcA\"", + "icons": { + "x16": "https://www.gstatic.com/images/branding/product/1x/googleg_16dp.png", + "x32": "https://www.gstatic.com/images/branding/product/1x/googleg_32dp.png" + }, + "id": "replicapool:v1beta1", + "kind": "discovery#restDescription", + "labels": [ + "limited_availability" + ], + "name": "replicapool", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "alt": { + "default": "json", + "description": "Data format for the response.", + "enum": [ + "json" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json" + ], + "location": "query", "type": "string" - } }, - "envVariables": { - "type": "array", - "description": "A list of environment variables to use for the commands in this action.", - "items": { - "$ref": "EnvVariable" - } + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "location": "query", + "type": "string" }, - "timeoutMilliSeconds": { - "type": "integer", - "description": "If an action's commands on a particular replica do not finish in the specified timeoutMilliSeconds, the replica is considered to be in a FAILING state. No efforts are made to stop any processes that were spawned or created as the result of running the action's commands. The default is the max allowed value, 1 hour (i.e. 3600000 milliseconds).", - "format": "int32" - } - } - }, - "DiskAttachment": { - "id": "DiskAttachment", - "type": "object", - "description": "Specifies how to attach a disk to a Replica.", - "properties": { - "deviceName": { - "type": "string", - "description": "The device name of this disk." - }, - "index": { - "type": "integer", - "description": "A zero-based index to assign to this disk, where 0 is reserved for the boot disk. If not specified, this is assigned by the server.", - "format": "uint32" - } - } - }, - "EnvVariable": { - "id": "EnvVariable", - "type": "object", - "description": "An environment variable to set for an action.", - "properties": { - "hidden": { - "type": "boolean", - "description": "Deprecated, do not use." - }, - "name": { - "type": "string", - "description": "The name of the environment variable." - }, - "value": { - "type": "string", - "description": "The value of the variable." - } - } - }, - "ExistingDisk": { - "id": "ExistingDisk", - "type": "object", - "description": "A pre-existing persistent disk that will be attached to every Replica in the Pool in READ_ONLY mode.", - "properties": { - "attachment": { - "$ref": "DiskAttachment", - "description": "How the disk will be attached to the Replica." - }, - "source": { - "type": "string", - "description": "The name of the Persistent Disk resource. The Persistent Disk resource must be in the same zone as the Pool." - } - } - }, - "HealthCheck": { - "id": "HealthCheck", - "type": "object", - "properties": { - "checkIntervalSec": { - "type": "integer", - "description": "How often (in seconds) to make HTTP requests for this healthcheck. The default value is 5 seconds.", - "format": "int32" - }, - "description": { - "type": "string", - "description": "The description for this health check." - }, - "healthyThreshold": { - "type": "integer", - "description": "The number of consecutive health check requests that need to succeed before the replica is considered healthy again. The default value is 2.", - "format": "int32" - }, - "host": { - "type": "string", - "description": "The value of the host header in the HTTP health check request. If left empty (default value), the localhost IP 127.0.0.1 will be used." - }, - "name": { - "type": "string", - "description": "The name of this health check." - }, - "path": { - "type": "string", - "description": "The localhost request path to send this health check, in the format /path/to/use. For example, /healthcheck." - }, - "port": { - "type": "integer", - "description": "The TCP port for the health check requests.", - "format": "int32" - }, - "timeoutSec": { - "type": "integer", - "description": "How long (in seconds) to wait before a timeout failure for this healthcheck. The default value is 5 seconds.", - "format": "int32" - }, - "unhealthyThreshold": { - "type": "integer", - "description": "The number of consecutive health check requests that need to fail in order to consider the replica unhealthy. The default value is 2.", - "format": "int32" - } - } - }, - "Label": { - "id": "Label", - "type": "object", - "description": "A label to apply to this replica pool.", - "properties": { "key": { - "type": "string", - "description": "The key for this label." - }, - "value": { - "type": "string", - "description": "The value of this label." - } - } - }, - "Metadata": { - "id": "Metadata", - "type": "object", - "description": "A Compute Engine metadata entry. Identical to the metadata on the corresponding Compute Engine resource.", - "properties": { - "fingerPrint": { - "type": "string", - "description": "The fingerprint of the metadata. Required for updating the metadata entries for this instance." - }, - "items": { - "type": "array", - "description": "A list of metadata items.", - "items": { - "$ref": "MetadataItem" - } - } - } - }, - "MetadataItem": { - "id": "MetadataItem", - "type": "object", - "description": "A Compute Engine metadata item, defined as a key:value pair. Identical to the metadata on the corresponding Compute Engine resource.", - "properties": { - "key": { - "type": "string", - "description": "A metadata key." - }, - "value": { - "type": "string", - "description": "A metadata value." - } - } - }, - "NetworkInterface": { - "id": "NetworkInterface", - "type": "object", - "description": "A Compute Engine NetworkInterface resource. Identical to the NetworkInterface on the corresponding Compute Engine resource.", - "properties": { - "accessConfigs": { - "type": "array", - "description": "An array of configurations for this interface. This specifies how this interface is configured to interact with other network services.", - "items": { - "$ref": "AccessConfig" - } - }, - "network": { - "type": "string", - "description": "Name the Network resource to which this interface applies." - }, - "networkIp": { - "type": "string", - "description": "An optional IPV4 internal network address to assign to the instance for this network interface." - } - } - }, - "NewDisk": { - "id": "NewDisk", - "type": "object", - "description": "A Persistent Disk resource that will be created and attached to each Replica in the Pool. Each Replica will have a unique persistent disk that is created and attached to that Replica in READ_WRITE mode.", - "properties": { - "attachment": { - "$ref": "DiskAttachment", - "description": "How the disk will be attached to the Replica." - }, - "autoDelete": { - "type": "boolean", - "description": "If true, then this disk will be deleted when the instance is deleted. The default value is true." - }, - "boot": { - "type": "boolean", - "description": "If true, indicates that this is the root persistent disk." - }, - "initializeParams": { - "$ref": "NewDiskInitializeParams", - "description": "Create the new disk using these parameters. The name of the disk will be \u003cinstance_name\u003e-\u003cfour_random_charactersgt;." - } - } - }, - "NewDiskInitializeParams": { - "id": "NewDiskInitializeParams", - "type": "object", - "description": "Initialization parameters for creating a new disk.", - "properties": { - "diskSizeGb": { - "type": "string", - "description": "The size of the created disk in gigabytes.", - "format": "int64" - }, - "diskType": { - "type": "string", - "description": "Name of the disk type resource describing which disk type to use to create the disk. For example 'pd-ssd' or 'pd-standard'. Default is 'pd-standard'" - }, - "sourceImage": { - "type": "string", - "description": "The name or fully-qualified URL of a source image to use to create this disk. If you provide a name of the source image, Replica Pool will look for an image with that name in your project. If you are specifying an image provided by Compute Engine, you will need to provide the full URL with the correct project, such as:\nhttp://www.googleapis.com/compute/v1/projects/debian-cloud/ global/images/debian-wheezy-7-vYYYYMMDD" - } - } - }, - "Pool": { - "id": "Pool", - "type": "object", - "properties": { - "autoRestart": { - "type": "boolean", - "description": "Whether replicas in this pool should be restarted if they experience a failure. The default value is true." - }, - "baseInstanceName": { - "type": "string", - "description": "The base instance name to use for the replicas in this pool. This must match the regex [a-z]([-a-z0-9]*[a-z0-9])?. If specified, the instances in this replica pool will be named in the format \u003cbase-instance-name\u003e-\u003cID\u003e. The \u003cID\u003e postfix will be a four character alphanumeric identifier generated by the service.\n\nIf this is not specified by the user, a random base instance name is generated by the service." - }, - "currentNumReplicas": { - "type": "integer", - "description": "[Output Only] The current number of replicas in the pool.", - "format": "int32" - }, - "description": { - "type": "string", - "description": "An optional description of the replica pool." - }, - "healthChecks": { - "type": "array", - "description": "Deprecated. Please use template[].healthChecks instead.", - "items": { - "$ref": "HealthCheck" - } - }, - "initialNumReplicas": { - "type": "integer", - "description": "The initial number of replicas this pool should have. You must provide a value greater than or equal to 0.", - "format": "int32" - }, - "labels": { - "type": "array", - "description": "A list of labels to attach to this replica pool and all created virtual machines in this replica pool.", - "items": { - "$ref": "Label" - } - }, - "name": { - "type": "string", - "description": "The name of the replica pool. Must follow the regex [a-z]([-a-z0-9]*[a-z0-9])? and be 1-28 characters long." - }, - "numReplicas": { - "type": "integer", - "description": "Deprecated! Use initial_num_replicas instead.", - "format": "int32" - }, - "resourceViews": { - "type": "array", - "description": "The list of resource views that should be updated with all the replicas that are managed by this pool.", - "items": { + "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" - } }, - "selfLink": { - "type": "string", - "description": "[Output Only] A self-link to the replica pool." - }, - "targetPool": { - "type": "string", - "description": "Deprecated, please use target_pools instead." - }, - "targetPools": { - "type": "array", - "description": "A list of target pools to update with the replicas that are managed by this pool. If specified, the replicas in this replica pool will be added to the specified target pools for load balancing purposes. The replica pool must live in the same region as the specified target pools. These values must be the target pool resource names, and not fully qualified URLs.", - "items": { + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", "type": "string" - } }, - "template": { - "$ref": "Template", - "description": "The template to use when creating replicas in this pool. This template is used during initial instance creation of the pool, when growing the pool in size, or when a replica restarts." + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" }, - "type": { - "type": "string", - "description": "Deprecated! Do not set." - } - } - }, - "PoolsDeleteRequest": { - "id": "PoolsDeleteRequest", - "type": "object", - "properties": { - "abandonInstances": { - "type": "array", - "description": "If there are instances you would like to keep, you can specify them here. These instances won't be deleted, but the associated replica objects will be removed.", - "items": { + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", + "location": "query", "type": "string" - } - } - } - }, - "PoolsListResponse": { - "id": "PoolsListResponse", - "type": "object", - "properties": { - "nextPageToken": { - "type": "string" }, - "resources": { - "type": "array", - "items": { - "$ref": "Pool" - } - } - } - }, - "Replica": { - "id": "Replica", - "type": "object", - "description": "An individual Replica within a Pool. Replicas are automatically created by the replica pool, using the template provided by the user. You cannot directly create replicas.", - "properties": { - "name": { - "type": "string", - "description": "[Output Only] The name of the Replica object." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] The self-link of the Replica." - }, - "status": { - "$ref": "ReplicaStatus", - "description": "[Output Only] Last known status of the Replica." - } - } - }, - "ReplicaStatus": { - "id": "ReplicaStatus", - "type": "object", - "description": "The current status of a Replica.", - "properties": { - "details": { - "type": "string", - "description": "[Output Only] Human-readable details about the current state of the replica" - }, - "state": { - "type": "string", - "description": "[Output Only] The state of the Replica." - }, - "templateVersion": { - "type": "string", - "description": "[Output Only] The template used to build the replica." - }, - "vmLink": { - "type": "string", - "description": "[Output Only] Link to the virtual machine that this Replica represents." - }, - "vmStartTime": { - "type": "string", - "description": "[Output Only] The time that this Replica got to the RUNNING state, in RFC 3339 format. If the start time is unknown, UNKNOWN is returned." - } - } - }, - "ReplicasDeleteRequest": { - "id": "ReplicasDeleteRequest", - "type": "object", - "properties": { - "abandonInstance": { - "type": "boolean", - "description": "Whether the instance resource represented by this replica should be deleted or abandoned. If abandoned, the replica will be deleted but the virtual machine instance will remain. By default, this is set to false and the instance will be deleted along with the replica." - } - } - }, - "ReplicasListResponse": { - "id": "ReplicasListResponse", - "type": "object", - "properties": { - "nextPageToken": { - "type": "string" - }, - "resources": { - "type": "array", - "items": { - "$ref": "Replica" - } - } - } - }, - "ServiceAccount": { - "id": "ServiceAccount", - "type": "object", - "description": "A Compute Engine service account, identical to the Compute Engine resource.", - "properties": { - "email": { - "type": "string", - "description": "The service account email address, for example: 123845678986@project.gserviceaccount.com" - }, - "scopes": { - "type": "array", - "description": "The list of OAuth2 scopes to obtain for the service account, for example: https://www.googleapis.com/auth/devstorage.full_control", - "items": { + "userIp": { + "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", + "location": "query", "type": "string" - } } - } }, - "Tag": { - "id": "Tag", - "type": "object", - "description": "A Compute Engine Instance tag, identical to the tags on the corresponding Compute Engine Instance resource.", - "properties": { - "fingerPrint": { - "type": "string", - "description": "The fingerprint of the tag. Required for updating the list of tags." + "protocol": "rest", + "resources": { + "pools": { + "methods": { + "delete": { + "description": "Deletes a replica pool.", + "httpMethod": "POST", + "id": "replicapool.pools.delete", + "parameterOrder": [ + "projectName", + "zone", + "poolName" + ], + "parameters": { + "poolName": { + "description": "The name of the replica pool for this request.", + "location": "path", + "required": true, + "type": "string" + }, + "projectName": { + "description": "The project ID for this replica pool.", + "location": "path", + "required": true, + "type": "string" + }, + "zone": { + "description": "The zone for this replica pool.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{projectName}/zones/{zone}/pools/{poolName}", + "request": { + "$ref": "PoolsDeleteRequest" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/ndev.cloudman", + "https://www.googleapis.com/auth/replicapool" + ] + }, + "get": { + "description": "Gets information about a single replica pool.", + "httpMethod": "GET", + "id": "replicapool.pools.get", + "parameterOrder": [ + "projectName", + "zone", + "poolName" + ], + "parameters": { + "poolName": { + "description": "The name of the replica pool for this request.", + "location": "path", + "required": true, + "type": "string" + }, + "projectName": { + "description": "The project ID for this replica pool.", + "location": "path", + "required": true, + "type": "string" + }, + "zone": { + "description": "The zone for this replica pool.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{projectName}/zones/{zone}/pools/{poolName}", + "response": { + "$ref": "Pool" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/ndev.cloudman", + "https://www.googleapis.com/auth/ndev.cloudman.readonly", + "https://www.googleapis.com/auth/replicapool", + "https://www.googleapis.com/auth/replicapool.readonly" + ] + }, + "insert": { + "description": "Inserts a new replica pool.", + "httpMethod": "POST", + "id": "replicapool.pools.insert", + "parameterOrder": [ + "projectName", + "zone" + ], + "parameters": { + "projectName": { + "description": "The project ID for this replica pool.", + "location": "path", + "required": true, + "type": "string" + }, + "zone": { + "description": "The zone for this replica pool.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{projectName}/zones/{zone}/pools", + "request": { + "$ref": "Pool" + }, + "response": { + "$ref": "Pool" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/ndev.cloudman", + "https://www.googleapis.com/auth/replicapool" + ] + }, + "list": { + "description": "List all replica pools.", + "httpMethod": "GET", + "id": "replicapool.pools.list", + "parameterOrder": [ + "projectName", + "zone" + ], + "parameters": { + "maxResults": { + "default": "500", + "description": "Maximum count of results to be returned. Acceptable values are 0 to 100, inclusive. (Default: 50)", + "format": "int32", + "location": "query", + "maximum": "1000", + "minimum": "0", + "type": "integer" + }, + "pageToken": { + "description": "Set this to the nextPageToken value returned by a previous list request to obtain the next page of results from the previous list request.", + "location": "query", + "type": "string" + }, + "projectName": { + "description": "The project ID for this request.", + "location": "path", + "required": true, + "type": "string" + }, + "zone": { + "description": "The zone for this replica pool.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{projectName}/zones/{zone}/pools", + "response": { + "$ref": "PoolsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/ndev.cloudman", + "https://www.googleapis.com/auth/ndev.cloudman.readonly", + "https://www.googleapis.com/auth/replicapool", + "https://www.googleapis.com/auth/replicapool.readonly" + ] + }, + "resize": { + "description": "Resize a pool. This is an asynchronous operation, and multiple overlapping resize requests can be made. Replica Pools will use the information from the last resize request.", + "httpMethod": "POST", + "id": "replicapool.pools.resize", + "parameterOrder": [ + "projectName", + "zone", + "poolName" + ], + "parameters": { + "numReplicas": { + "description": "The desired number of replicas to resize to. If this number is larger than the existing number of replicas, new replicas will be added. If the number is smaller, then existing replicas will be deleted.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "poolName": { + "description": "The name of the replica pool for this request.", + "location": "path", + "required": true, + "type": "string" + }, + "projectName": { + "description": "The project ID for this replica pool.", + "location": "path", + "required": true, + "type": "string" + }, + "zone": { + "description": "The zone for this replica pool.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{projectName}/zones/{zone}/pools/{poolName}/resize", + "response": { + "$ref": "Pool" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/ndev.cloudman", + "https://www.googleapis.com/auth/replicapool" + ] + }, + "updatetemplate": { + "description": "Update the template used by the pool.", + "httpMethod": "POST", + "id": "replicapool.pools.updatetemplate", + "parameterOrder": [ + "projectName", + "zone", + "poolName" + ], + "parameters": { + "poolName": { + "description": "The name of the replica pool for this request.", + "location": "path", + "required": true, + "type": "string" + }, + "projectName": { + "description": "The project ID for this replica pool.", + "location": "path", + "required": true, + "type": "string" + }, + "zone": { + "description": "The zone for this replica pool.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{projectName}/zones/{zone}/pools/{poolName}/updateTemplate", + "request": { + "$ref": "Template" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/ndev.cloudman", + "https://www.googleapis.com/auth/replicapool" + ] + } + } }, - "items": { - "type": "array", - "description": "Items contained in this tag.", - "items": { - "type": "string" - } + "replicas": { + "methods": { + "delete": { + "description": "Deletes a replica from the pool.", + "httpMethod": "POST", + "id": "replicapool.replicas.delete", + "parameterOrder": [ + "projectName", + "zone", + "poolName", + "replicaName" + ], + "parameters": { + "poolName": { + "description": "The replica pool name for this request.", + "location": "path", + "required": true, + "type": "string" + }, + "projectName": { + "description": "The project ID for this request.", + "location": "path", + "required": true, + "type": "string" + }, + "replicaName": { + "description": "The name of the replica for this request.", + "location": "path", + "required": true, + "type": "string" + }, + "zone": { + "description": "The zone where the replica lives.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{projectName}/zones/{zone}/pools/{poolName}/replicas/{replicaName}", + "request": { + "$ref": "ReplicasDeleteRequest" + }, + "response": { + "$ref": "Replica" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/ndev.cloudman", + "https://www.googleapis.com/auth/replicapool" + ] + }, + "get": { + "description": "Gets information about a specific replica.", + "httpMethod": "GET", + "id": "replicapool.replicas.get", + "parameterOrder": [ + "projectName", + "zone", + "poolName", + "replicaName" + ], + "parameters": { + "poolName": { + "description": "The replica pool name for this request.", + "location": "path", + "required": true, + "type": "string" + }, + "projectName": { + "description": "The project ID for this request.", + "location": "path", + "required": true, + "type": "string" + }, + "replicaName": { + "description": "The name of the replica for this request.", + "location": "path", + "required": true, + "type": "string" + }, + "zone": { + "description": "The zone where the replica lives.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{projectName}/zones/{zone}/pools/{poolName}/replicas/{replicaName}", + "response": { + "$ref": "Replica" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/ndev.cloudman", + "https://www.googleapis.com/auth/ndev.cloudman.readonly", + "https://www.googleapis.com/auth/replicapool", + "https://www.googleapis.com/auth/replicapool.readonly" + ] + }, + "list": { + "description": "Lists all replicas in a pool.", + "httpMethod": "GET", + "id": "replicapool.replicas.list", + "parameterOrder": [ + "projectName", + "zone", + "poolName" + ], + "parameters": { + "maxResults": { + "default": "500", + "description": "Maximum count of results to be returned. Acceptable values are 0 to 100, inclusive. (Default: 50)", + "format": "int32", + "location": "query", + "maximum": "1000", + "minimum": "0", + "type": "integer" + }, + "pageToken": { + "description": "Set this to the nextPageToken value returned by a previous list request to obtain the next page of results from the previous list request.", + "location": "query", + "type": "string" + }, + "poolName": { + "description": "The replica pool name for this request.", + "location": "path", + "required": true, + "type": "string" + }, + "projectName": { + "description": "The project ID for this request.", + "location": "path", + "required": true, + "type": "string" + }, + "zone": { + "description": "The zone where the replica pool lives.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{projectName}/zones/{zone}/pools/{poolName}/replicas", + "response": { + "$ref": "ReplicasListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/ndev.cloudman", + "https://www.googleapis.com/auth/ndev.cloudman.readonly", + "https://www.googleapis.com/auth/replicapool", + "https://www.googleapis.com/auth/replicapool.readonly" + ] + }, + "restart": { + "description": "Restarts a replica in a pool.", + "httpMethod": "POST", + "id": "replicapool.replicas.restart", + "parameterOrder": [ + "projectName", + "zone", + "poolName", + "replicaName" + ], + "parameters": { + "poolName": { + "description": "The replica pool name for this request.", + "location": "path", + "required": true, + "type": "string" + }, + "projectName": { + "description": "The project ID for this request.", + "location": "path", + "required": true, + "type": "string" + }, + "replicaName": { + "description": "The name of the replica for this request.", + "location": "path", + "required": true, + "type": "string" + }, + "zone": { + "description": "The zone where the replica lives.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{projectName}/zones/{zone}/pools/{poolName}/replicas/{replicaName}/restart", + "response": { + "$ref": "Replica" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/ndev.cloudman", + "https://www.googleapis.com/auth/replicapool" + ] + } + } } - } }, - "Template": { - "id": "Template", - "type": "object", - "description": "The template used for creating replicas in the pool.", - "properties": { - "action": { - "$ref": "Action", - "description": "An action to run during initialization of your replicas. An action is run as shell commands which are executed one after the other in the same bash shell, so any state established by one command is inherited by later commands." + "revision": "20160512", + "rootUrl": "https://www.googleapis.com/", + "schemas": { + "AccessConfig": { + "description": "A Compute Engine network accessConfig. Identical to the accessConfig on corresponding Compute Engine resource.", + "id": "AccessConfig", + "properties": { + "name": { + "description": "Name of this access configuration.", + "type": "string" + }, + "natIp": { + "description": "An external IP address associated with this instance.", + "type": "string" + }, + "type": { + "description": "Type of this access configuration file. Currently only ONE_TO_ONE_NAT is supported.", + "type": "string" + } + }, + "type": "object" }, - "healthChecks": { - "type": "array", - "description": "A list of HTTP Health Checks to configure for this replica pool and all virtual machines in this replica pool.", - "items": { - "$ref": "HealthCheck" - } + "Action": { + "description": "An action that gets executed during initialization of the replicas.", + "id": "Action", + "properties": { + "commands": { + "description": "A list of commands to run, one per line. If any command fails, the whole action is considered a failure and no further actions are run. This also marks the virtual machine or replica as a failure.", + "items": { + "type": "string" + }, + "type": "array" + }, + "envVariables": { + "description": "A list of environment variables to use for the commands in this action.", + "items": { + "$ref": "EnvVariable" + }, + "type": "array" + }, + "timeoutMilliSeconds": { + "description": "If an action's commands on a particular replica do not finish in the specified timeoutMilliSeconds, the replica is considered to be in a FAILING state. No efforts are made to stop any processes that were spawned or created as the result of running the action's commands. The default is the max allowed value, 1 hour (i.e. 3600000 milliseconds).", + "format": "int32", + "type": "integer" + } + }, + "type": "object" }, - "version": { - "type": "string", - "description": "A free-form string describing the version of this template. You can provide any versioning string you would like. For example, version1 or template-v1." + "DiskAttachment": { + "description": "Specifies how to attach a disk to a Replica.", + "id": "DiskAttachment", + "properties": { + "deviceName": { + "description": "The device name of this disk.", + "type": "string" + }, + "index": { + "description": "A zero-based index to assign to this disk, where 0 is reserved for the boot disk. If not specified, this is assigned by the server.", + "format": "uint32", + "type": "integer" + } + }, + "type": "object" }, - "vmParams": { - "$ref": "VmParams", - "description": "The virtual machine parameters to use for creating replicas. You can define settings such as the machine type and the image of replicas in this pool. This is required if replica type is SMART_VM." + "EnvVariable": { + "description": "An environment variable to set for an action.", + "id": "EnvVariable", + "properties": { + "hidden": { + "description": "Deprecated, do not use.", + "type": "boolean" + }, + "name": { + "description": "The name of the environment variable.", + "type": "string" + }, + "value": { + "description": "The value of the variable.", + "type": "string" + } + }, + "type": "object" + }, + "ExistingDisk": { + "description": "A pre-existing persistent disk that will be attached to every Replica in the Pool in READ_ONLY mode.", + "id": "ExistingDisk", + "properties": { + "attachment": { + "$ref": "DiskAttachment", + "description": "How the disk will be attached to the Replica." + }, + "source": { + "description": "The name of the Persistent Disk resource. The Persistent Disk resource must be in the same zone as the Pool.", + "type": "string" + } + }, + "type": "object" + }, + "HealthCheck": { + "id": "HealthCheck", + "properties": { + "checkIntervalSec": { + "description": "How often (in seconds) to make HTTP requests for this healthcheck. The default value is 5 seconds.", + "format": "int32", + "type": "integer" + }, + "description": { + "description": "The description for this health check.", + "type": "string" + }, + "healthyThreshold": { + "description": "The number of consecutive health check requests that need to succeed before the replica is considered healthy again. The default value is 2.", + "format": "int32", + "type": "integer" + }, + "host": { + "description": "The value of the host header in the HTTP health check request. If left empty (default value), the localhost IP 127.0.0.1 will be used.", + "type": "string" + }, + "name": { + "description": "The name of this health check.", + "type": "string" + }, + "path": { + "description": "The localhost request path to send this health check, in the format /path/to/use. For example, /healthcheck.", + "type": "string" + }, + "port": { + "description": "The TCP port for the health check requests.", + "format": "int32", + "type": "integer" + }, + "timeoutSec": { + "description": "How long (in seconds) to wait before a timeout failure for this healthcheck. The default value is 5 seconds.", + "format": "int32", + "type": "integer" + }, + "unhealthyThreshold": { + "description": "The number of consecutive health check requests that need to fail in order to consider the replica unhealthy. The default value is 2.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "Label": { + "description": "A label to apply to this replica pool.", + "id": "Label", + "properties": { + "key": { + "description": "The key for this label.", + "type": "string" + }, + "value": { + "description": "The value of this label.", + "type": "string" + } + }, + "type": "object" + }, + "Metadata": { + "description": "A Compute Engine metadata entry. Identical to the metadata on the corresponding Compute Engine resource.", + "id": "Metadata", + "properties": { + "fingerPrint": { + "description": "The fingerprint of the metadata. Required for updating the metadata entries for this instance.", + "type": "string" + }, + "items": { + "description": "A list of metadata items.", + "items": { + "$ref": "MetadataItem" + }, + "type": "array" + } + }, + "type": "object" + }, + "MetadataItem": { + "description": "A Compute Engine metadata item, defined as a key:value pair. Identical to the metadata on the corresponding Compute Engine resource.", + "id": "MetadataItem", + "properties": { + "key": { + "description": "A metadata key.", + "type": "string" + }, + "value": { + "description": "A metadata value.", + "type": "string" + } + }, + "type": "object" + }, + "NetworkInterface": { + "description": "A Compute Engine NetworkInterface resource. Identical to the NetworkInterface on the corresponding Compute Engine resource.", + "id": "NetworkInterface", + "properties": { + "accessConfigs": { + "description": "An array of configurations for this interface. This specifies how this interface is configured to interact with other network services.", + "items": { + "$ref": "AccessConfig" + }, + "type": "array" + }, + "network": { + "description": "Name the Network resource to which this interface applies.", + "type": "string" + }, + "networkIp": { + "description": "An optional IPV4 internal network address to assign to the instance for this network interface.", + "type": "string" + } + }, + "type": "object" + }, + "NewDisk": { + "description": "A Persistent Disk resource that will be created and attached to each Replica in the Pool. Each Replica will have a unique persistent disk that is created and attached to that Replica in READ_WRITE mode.", + "id": "NewDisk", + "properties": { + "attachment": { + "$ref": "DiskAttachment", + "description": "How the disk will be attached to the Replica." + }, + "autoDelete": { + "description": "If true, then this disk will be deleted when the instance is deleted. The default value is true.", + "type": "boolean" + }, + "boot": { + "description": "If true, indicates that this is the root persistent disk.", + "type": "boolean" + }, + "initializeParams": { + "$ref": "NewDiskInitializeParams", + "description": "Create the new disk using these parameters. The name of the disk will be \u003cinstance_name\u003e-\u003cfour_random_charactersgt;." + } + }, + "type": "object" + }, + "NewDiskInitializeParams": { + "description": "Initialization parameters for creating a new disk.", + "id": "NewDiskInitializeParams", + "properties": { + "diskSizeGb": { + "description": "The size of the created disk in gigabytes.", + "format": "int64", + "type": "string" + }, + "diskType": { + "description": "Name of the disk type resource describing which disk type to use to create the disk. For example 'pd-ssd' or 'pd-standard'. Default is 'pd-standard'", + "type": "string" + }, + "sourceImage": { + "description": "The name or fully-qualified URL of a source image to use to create this disk. If you provide a name of the source image, Replica Pool will look for an image with that name in your project. If you are specifying an image provided by Compute Engine, you will need to provide the full URL with the correct project, such as:\nhttp://www.googleapis.com/compute/v1/projects/debian-cloud/ global/images/debian-wheezy-7-vYYYYMMDD", + "type": "string" + } + }, + "type": "object" + }, + "Pool": { + "id": "Pool", + "properties": { + "autoRestart": { + "description": "Whether replicas in this pool should be restarted if they experience a failure. The default value is true.", + "type": "boolean" + }, + "baseInstanceName": { + "description": "The base instance name to use for the replicas in this pool. This must match the regex [a-z]([-a-z0-9]*[a-z0-9])?. If specified, the instances in this replica pool will be named in the format \u003cbase-instance-name\u003e-\u003cID\u003e. The \u003cID\u003e postfix will be a four character alphanumeric identifier generated by the service.\n\nIf this is not specified by the user, a random base instance name is generated by the service.", + "type": "string" + }, + "currentNumReplicas": { + "description": "[Output Only] The current number of replicas in the pool.", + "format": "int32", + "type": "integer" + }, + "description": { + "description": "An optional description of the replica pool.", + "type": "string" + }, + "healthChecks": { + "description": "Deprecated. Please use template[].healthChecks instead.", + "items": { + "$ref": "HealthCheck" + }, + "type": "array" + }, + "initialNumReplicas": { + "description": "The initial number of replicas this pool should have. You must provide a value greater than or equal to 0.", + "format": "int32", + "type": "integer" + }, + "labels": { + "description": "A list of labels to attach to this replica pool and all created virtual machines in this replica pool.", + "items": { + "$ref": "Label" + }, + "type": "array" + }, + "name": { + "description": "The name of the replica pool. Must follow the regex [a-z]([-a-z0-9]*[a-z0-9])? and be 1-28 characters long.", + "type": "string" + }, + "numReplicas": { + "description": "Deprecated! Use initial_num_replicas instead.", + "format": "int32", + "type": "integer" + }, + "resourceViews": { + "description": "The list of resource views that should be updated with all the replicas that are managed by this pool.", + "items": { + "type": "string" + }, + "type": "array" + }, + "selfLink": { + "description": "[Output Only] A self-link to the replica pool.", + "type": "string" + }, + "targetPool": { + "description": "Deprecated, please use target_pools instead.", + "type": "string" + }, + "targetPools": { + "description": "A list of target pools to update with the replicas that are managed by this pool. If specified, the replicas in this replica pool will be added to the specified target pools for load balancing purposes. The replica pool must live in the same region as the specified target pools. These values must be the target pool resource names, and not fully qualified URLs.", + "items": { + "type": "string" + }, + "type": "array" + }, + "template": { + "$ref": "Template", + "description": "The template to use when creating replicas in this pool. This template is used during initial instance creation of the pool, when growing the pool in size, or when a replica restarts." + }, + "type": { + "description": "Deprecated! Do not set.", + "type": "string" + } + }, + "type": "object" + }, + "PoolsDeleteRequest": { + "id": "PoolsDeleteRequest", + "properties": { + "abandonInstances": { + "description": "If there are instances you would like to keep, you can specify them here. These instances won't be deleted, but the associated replica objects will be removed.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "PoolsListResponse": { + "id": "PoolsListResponse", + "properties": { + "nextPageToken": { + "type": "string" + }, + "resources": { + "items": { + "$ref": "Pool" + }, + "type": "array" + } + }, + "type": "object" + }, + "Replica": { + "description": "An individual Replica within a Pool. Replicas are automatically created by the replica pool, using the template provided by the user. You cannot directly create replicas.", + "id": "Replica", + "properties": { + "name": { + "description": "[Output Only] The name of the Replica object.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] The self-link of the Replica.", + "type": "string" + }, + "status": { + "$ref": "ReplicaStatus", + "description": "[Output Only] Last known status of the Replica." + } + }, + "type": "object" + }, + "ReplicaStatus": { + "description": "The current status of a Replica.", + "id": "ReplicaStatus", + "properties": { + "details": { + "description": "[Output Only] Human-readable details about the current state of the replica", + "type": "string" + }, + "state": { + "description": "[Output Only] The state of the Replica.", + "type": "string" + }, + "templateVersion": { + "description": "[Output Only] The template used to build the replica.", + "type": "string" + }, + "vmLink": { + "description": "[Output Only] Link to the virtual machine that this Replica represents.", + "type": "string" + }, + "vmStartTime": { + "description": "[Output Only] The time that this Replica got to the RUNNING state, in RFC 3339 format. If the start time is unknown, UNKNOWN is returned.", + "type": "string" + } + }, + "type": "object" + }, + "ReplicasDeleteRequest": { + "id": "ReplicasDeleteRequest", + "properties": { + "abandonInstance": { + "description": "Whether the instance resource represented by this replica should be deleted or abandoned. If abandoned, the replica will be deleted but the virtual machine instance will remain. By default, this is set to false and the instance will be deleted along with the replica.", + "type": "boolean" + } + }, + "type": "object" + }, + "ReplicasListResponse": { + "id": "ReplicasListResponse", + "properties": { + "nextPageToken": { + "type": "string" + }, + "resources": { + "items": { + "$ref": "Replica" + }, + "type": "array" + } + }, + "type": "object" + }, + "ServiceAccount": { + "description": "A Compute Engine service account, identical to the Compute Engine resource.", + "id": "ServiceAccount", + "properties": { + "email": { + "description": "The service account email address, for example: 123845678986@project.gserviceaccount.com", + "type": "string" + }, + "scopes": { + "description": "The list of OAuth2 scopes to obtain for the service account, for example: https://www.googleapis.com/auth/devstorage.full_control", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "Tag": { + "description": "A Compute Engine Instance tag, identical to the tags on the corresponding Compute Engine Instance resource.", + "id": "Tag", + "properties": { + "fingerPrint": { + "description": "The fingerprint of the tag. Required for updating the list of tags.", + "type": "string" + }, + "items": { + "description": "Items contained in this tag.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "Template": { + "description": "The template used for creating replicas in the pool.", + "id": "Template", + "properties": { + "action": { + "$ref": "Action", + "description": "An action to run during initialization of your replicas. An action is run as shell commands which are executed one after the other in the same bash shell, so any state established by one command is inherited by later commands." + }, + "healthChecks": { + "description": "A list of HTTP Health Checks to configure for this replica pool and all virtual machines in this replica pool.", + "items": { + "$ref": "HealthCheck" + }, + "type": "array" + }, + "version": { + "description": "A free-form string describing the version of this template. You can provide any versioning string you would like. For example, version1 or template-v1.", + "type": "string" + }, + "vmParams": { + "$ref": "VmParams", + "description": "The virtual machine parameters to use for creating replicas. You can define settings such as the machine type and the image of replicas in this pool. This is required if replica type is SMART_VM." + } + }, + "type": "object" + }, + "VmParams": { + "description": "Parameters for creating a Compute Engine Instance resource. Most fields are identical to the corresponding Compute Engine resource.", + "id": "VmParams", + "properties": { + "baseInstanceName": { + "description": "Deprecated. Please use baseInstanceName instead.", + "type": "string" + }, + "canIpForward": { + "description": "Enables IP Forwarding, which allows this instance to receive packets destined for a different IP address, and send packets with a different source IP. See IP Forwarding for more information.", + "type": "boolean" + }, + "description": { + "description": "An optional textual description of the instance.", + "type": "string" + }, + "disksToAttach": { + "description": "A list of existing Persistent Disk resources to attach to each replica in the pool. Each disk will be attached in read-only mode to every replica.", + "items": { + "$ref": "ExistingDisk" + }, + "type": "array" + }, + "disksToCreate": { + "description": "A list of Disk resources to create and attach to each Replica in the Pool. Currently, you can only define one disk and it must be a root persistent disk. Note that Replica Pool will create a root persistent disk for each replica.", + "items": { + "$ref": "NewDisk" + }, + "type": "array" + }, + "machineType": { + "description": "The machine type for this instance. The resource name (e.g. n1-standard-1).", + "type": "string" + }, + "metadata": { + "$ref": "Metadata", + "description": "The metadata key/value pairs assigned to this instance." + }, + "networkInterfaces": { + "description": "A list of network interfaces for the instance. Currently only one interface is supported by Google Compute Engine, ONE_TO_ONE_NAT.", + "items": { + "$ref": "NetworkInterface" + }, + "type": "array" + }, + "onHostMaintenance": { + "type": "string" + }, + "serviceAccounts": { + "description": "A list of Service Accounts to enable for this instance.", + "items": { + "$ref": "ServiceAccount" + }, + "type": "array" + }, + "tags": { + "$ref": "Tag", + "description": "A list of tags to apply to the Google Compute Engine instance to identify resources." + } + }, + "type": "object" } - } }, - "VmParams": { - "id": "VmParams", - "type": "object", - "description": "Parameters for creating a Compute Engine Instance resource. Most fields are identical to the corresponding Compute Engine resource.", - "properties": { - "baseInstanceName": { - "type": "string", - "description": "Deprecated. Please use baseInstanceName instead." - }, - "canIpForward": { - "type": "boolean", - "description": "Enables IP Forwarding, which allows this instance to receive packets destined for a different IP address, and send packets with a different source IP. See IP Forwarding for more information." - }, - "description": { - "type": "string", - "description": "An optional textual description of the instance." - }, - "disksToAttach": { - "type": "array", - "description": "A list of existing Persistent Disk resources to attach to each replica in the pool. Each disk will be attached in read-only mode to every replica.", - "items": { - "$ref": "ExistingDisk" - } - }, - "disksToCreate": { - "type": "array", - "description": "A list of Disk resources to create and attach to each Replica in the Pool. Currently, you can only define one disk and it must be a root persistent disk. Note that Replica Pool will create a root persistent disk for each replica.", - "items": { - "$ref": "NewDisk" - } - }, - "machineType": { - "type": "string", - "description": "The machine type for this instance. The resource name (e.g. n1-standard-1)." - }, - "metadata": { - "$ref": "Metadata", - "description": "The metadata key/value pairs assigned to this instance." - }, - "networkInterfaces": { - "type": "array", - "description": "A list of network interfaces for the instance. Currently only one interface is supported by Google Compute Engine, ONE_TO_ONE_NAT.", - "items": { - "$ref": "NetworkInterface" - } - }, - "onHostMaintenance": { - "type": "string" - }, - "serviceAccounts": { - "type": "array", - "description": "A list of Service Accounts to enable for this instance.", - "items": { - "$ref": "ServiceAccount" - } - }, - "tags": { - "$ref": "Tag", - "description": "A list of tags to apply to the Google Compute Engine instance to identify resources." - } - } - } - }, - "resources": { - "pools": { - "methods": { - "delete": { - "id": "replicapool.pools.delete", - "path": "{projectName}/zones/{zone}/pools/{poolName}", - "httpMethod": "POST", - "description": "Deletes a replica pool.", - "parameters": { - "poolName": { - "type": "string", - "description": "The name of the replica pool for this request.", - "required": true, - "location": "path" - }, - "projectName": { - "type": "string", - "description": "The project ID for this replica pool.", - "required": true, - "location": "path" - }, - "zone": { - "type": "string", - "description": "The zone for this replica pool.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "projectName", - "zone", - "poolName" - ], - "request": { - "$ref": "PoolsDeleteRequest" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/ndev.cloudman", - "https://www.googleapis.com/auth/replicapool" - ] - }, - "get": { - "id": "replicapool.pools.get", - "path": "{projectName}/zones/{zone}/pools/{poolName}", - "httpMethod": "GET", - "description": "Gets information about a single replica pool.", - "parameters": { - "poolName": { - "type": "string", - "description": "The name of the replica pool for this request.", - "required": true, - "location": "path" - }, - "projectName": { - "type": "string", - "description": "The project ID for this replica pool.", - "required": true, - "location": "path" - }, - "zone": { - "type": "string", - "description": "The zone for this replica pool.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "projectName", - "zone", - "poolName" - ], - "response": { - "$ref": "Pool" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/ndev.cloudman", - "https://www.googleapis.com/auth/ndev.cloudman.readonly", - "https://www.googleapis.com/auth/replicapool", - "https://www.googleapis.com/auth/replicapool.readonly" - ] - }, - "insert": { - "id": "replicapool.pools.insert", - "path": "{projectName}/zones/{zone}/pools", - "httpMethod": "POST", - "description": "Inserts a new replica pool.", - "parameters": { - "projectName": { - "type": "string", - "description": "The project ID for this replica pool.", - "required": true, - "location": "path" - }, - "zone": { - "type": "string", - "description": "The zone for this replica pool.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "projectName", - "zone" - ], - "request": { - "$ref": "Pool" - }, - "response": { - "$ref": "Pool" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/ndev.cloudman", - "https://www.googleapis.com/auth/replicapool" - ] - }, - "list": { - "id": "replicapool.pools.list", - "path": "{projectName}/zones/{zone}/pools", - "httpMethod": "GET", - "description": "List all replica pools.", - "parameters": { - "maxResults": { - "type": "integer", - "description": "Maximum count of results to be returned. Acceptable values are 0 to 100, inclusive. (Default: 50)", - "default": "500", - "format": "int32", - "minimum": "0", - "maximum": "1000", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Set this to the nextPageToken value returned by a previous list request to obtain the next page of results from the previous list request.", - "location": "query" - }, - "projectName": { - "type": "string", - "description": "The project ID for this request.", - "required": true, - "location": "path" - }, - "zone": { - "type": "string", - "description": "The zone for this replica pool.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "projectName", - "zone" - ], - "response": { - "$ref": "PoolsListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/ndev.cloudman", - "https://www.googleapis.com/auth/ndev.cloudman.readonly", - "https://www.googleapis.com/auth/replicapool", - "https://www.googleapis.com/auth/replicapool.readonly" - ] - }, - "resize": { - "id": "replicapool.pools.resize", - "path": "{projectName}/zones/{zone}/pools/{poolName}/resize", - "httpMethod": "POST", - "description": "Resize a pool. This is an asynchronous operation, and multiple overlapping resize requests can be made. Replica Pools will use the information from the last resize request.", - "parameters": { - "numReplicas": { - "type": "integer", - "description": "The desired number of replicas to resize to. If this number is larger than the existing number of replicas, new replicas will be added. If the number is smaller, then existing replicas will be deleted.", - "format": "int32", - "location": "query" - }, - "poolName": { - "type": "string", - "description": "The name of the replica pool for this request.", - "required": true, - "location": "path" - }, - "projectName": { - "type": "string", - "description": "The project ID for this replica pool.", - "required": true, - "location": "path" - }, - "zone": { - "type": "string", - "description": "The zone for this replica pool.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "projectName", - "zone", - "poolName" - ], - "response": { - "$ref": "Pool" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/ndev.cloudman", - "https://www.googleapis.com/auth/replicapool" - ] - }, - "updatetemplate": { - "id": "replicapool.pools.updatetemplate", - "path": "{projectName}/zones/{zone}/pools/{poolName}/updateTemplate", - "httpMethod": "POST", - "description": "Update the template used by the pool.", - "parameters": { - "poolName": { - "type": "string", - "description": "The name of the replica pool for this request.", - "required": true, - "location": "path" - }, - "projectName": { - "type": "string", - "description": "The project ID for this replica pool.", - "required": true, - "location": "path" - }, - "zone": { - "type": "string", - "description": "The zone for this replica pool.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "projectName", - "zone", - "poolName" - ], - "request": { - "$ref": "Template" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/ndev.cloudman", - "https://www.googleapis.com/auth/replicapool" - ] - } - } - }, - "replicas": { - "methods": { - "delete": { - "id": "replicapool.replicas.delete", - "path": "{projectName}/zones/{zone}/pools/{poolName}/replicas/{replicaName}", - "httpMethod": "POST", - "description": "Deletes a replica from the pool.", - "parameters": { - "poolName": { - "type": "string", - "description": "The replica pool name for this request.", - "required": true, - "location": "path" - }, - "projectName": { - "type": "string", - "description": "The project ID for this request.", - "required": true, - "location": "path" - }, - "replicaName": { - "type": "string", - "description": "The name of the replica for this request.", - "required": true, - "location": "path" - }, - "zone": { - "type": "string", - "description": "The zone where the replica lives.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "projectName", - "zone", - "poolName", - "replicaName" - ], - "request": { - "$ref": "ReplicasDeleteRequest" - }, - "response": { - "$ref": "Replica" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/ndev.cloudman", - "https://www.googleapis.com/auth/replicapool" - ] - }, - "get": { - "id": "replicapool.replicas.get", - "path": "{projectName}/zones/{zone}/pools/{poolName}/replicas/{replicaName}", - "httpMethod": "GET", - "description": "Gets information about a specific replica.", - "parameters": { - "poolName": { - "type": "string", - "description": "The replica pool name for this request.", - "required": true, - "location": "path" - }, - "projectName": { - "type": "string", - "description": "The project ID for this request.", - "required": true, - "location": "path" - }, - "replicaName": { - "type": "string", - "description": "The name of the replica for this request.", - "required": true, - "location": "path" - }, - "zone": { - "type": "string", - "description": "The zone where the replica lives.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "projectName", - "zone", - "poolName", - "replicaName" - ], - "response": { - "$ref": "Replica" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/ndev.cloudman", - "https://www.googleapis.com/auth/ndev.cloudman.readonly", - "https://www.googleapis.com/auth/replicapool", - "https://www.googleapis.com/auth/replicapool.readonly" - ] - }, - "list": { - "id": "replicapool.replicas.list", - "path": "{projectName}/zones/{zone}/pools/{poolName}/replicas", - "httpMethod": "GET", - "description": "Lists all replicas in a pool.", - "parameters": { - "maxResults": { - "type": "integer", - "description": "Maximum count of results to be returned. Acceptable values are 0 to 100, inclusive. (Default: 50)", - "default": "500", - "format": "int32", - "minimum": "0", - "maximum": "1000", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Set this to the nextPageToken value returned by a previous list request to obtain the next page of results from the previous list request.", - "location": "query" - }, - "poolName": { - "type": "string", - "description": "The replica pool name for this request.", - "required": true, - "location": "path" - }, - "projectName": { - "type": "string", - "description": "The project ID for this request.", - "required": true, - "location": "path" - }, - "zone": { - "type": "string", - "description": "The zone where the replica pool lives.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "projectName", - "zone", - "poolName" - ], - "response": { - "$ref": "ReplicasListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/ndev.cloudman", - "https://www.googleapis.com/auth/ndev.cloudman.readonly", - "https://www.googleapis.com/auth/replicapool", - "https://www.googleapis.com/auth/replicapool.readonly" - ] - }, - "restart": { - "id": "replicapool.replicas.restart", - "path": "{projectName}/zones/{zone}/pools/{poolName}/replicas/{replicaName}/restart", - "httpMethod": "POST", - "description": "Restarts a replica in a pool.", - "parameters": { - "poolName": { - "type": "string", - "description": "The replica pool name for this request.", - "required": true, - "location": "path" - }, - "projectName": { - "type": "string", - "description": "The project ID for this request.", - "required": true, - "location": "path" - }, - "replicaName": { - "type": "string", - "description": "The name of the replica for this request.", - "required": true, - "location": "path" - }, - "zone": { - "type": "string", - "description": "The zone where the replica lives.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "projectName", - "zone", - "poolName", - "replicaName" - ], - "response": { - "$ref": "Replica" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/ndev.cloudman", - "https://www.googleapis.com/auth/replicapool" - ] - } - } - } - } -} + "servicePath": "replicapool/v1beta1/projects/", + "title": "Replica Pool API", + "version": "v1beta1" +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/replicapool/v1beta2/replicapool-api.json b/vendor/google.golang.org/api/replicapool/v1beta2/replicapool-api.json index 1cf395b98..e57d4b91f 100644 --- a/vendor/google.golang.org/api/replicapool/v1beta2/replicapool-api.json +++ b/vendor/google.golang.org/api/replicapool/v1beta2/replicapool-api.json @@ -1,1064 +1,1064 @@ { - "kind": "discovery#restDescription", - "etag": "\"YWOzh2SDasdU84ArJnpYek-OMdg/TeJ87k5AaNhxSfkpXHKHkISW9Dw\"", - "discoveryVersion": "v1", - "id": "replicapool:v1beta2", - "name": "replicapool", - "version": "v1beta2", - "revision": "20160512", - "title": "Google Compute Engine Instance Group Manager API", - "description": "[Deprecated. Please use Instance Group Manager in Compute API] Provides groups of homogenous Compute Engine instances.", - "ownerDomain": "google.com", - "ownerName": "Google", - "icons": { - "x16": "https://www.gstatic.com/images/branding/product/1x/googleg_16dp.png", - "x32": "https://www.gstatic.com/images/branding/product/1x/googleg_32dp.png" - }, - "documentationLink": "https://developers.google.com/compute/docs/instance-groups/manager/v1beta2", - "labels": [ - "limited_availability" - ], - "protocol": "rest", - "baseUrl": "https://www.googleapis.com/replicapool/v1beta2/projects/", - "basePath": "/replicapool/v1beta2/projects/", - "rootUrl": "https://www.googleapis.com/", - "servicePath": "replicapool/v1beta2/projects/", - "batchPath": "batch/replicapool/v1beta2", - "parameters": { - "alt": { - "type": "string", - "description": "Data format for the response.", - "default": "json", - "enum": [ - "json" - ], - "enumDescriptions": [ - "Responses with Content-Type of application/json" - ], - "location": "query" - }, - "fields": { - "type": "string", - "description": "Selector specifying which fields to include in a partial response.", - "location": "query" - }, - "key": { - "type": "string", - "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" - }, - "oauth_token": { - "type": "string", - "description": "OAuth 2.0 token for the current user.", - "location": "query" - }, - "prettyPrint": { - "type": "boolean", - "description": "Returns response with indentations and line breaks.", - "default": "true", - "location": "query" - }, - "quotaUser": { - "type": "string", - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", - "location": "query" - }, - "userIp": { - "type": "string", - "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", - "location": "query" - } - }, - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/cloud-platform": { - "description": "View and manage your data across Google Cloud Platform services" - }, - "https://www.googleapis.com/auth/cloud-platform.read-only": { - "description": "View your data across Google Cloud Platform services" - }, - "https://www.googleapis.com/auth/compute": { - "description": "View and manage your Google Compute Engine resources" - }, - "https://www.googleapis.com/auth/compute.readonly": { - "description": "View your Google Compute Engine resources" - } - } - } - }, - "schemas": { - "InstanceGroupManager": { - "id": "InstanceGroupManager", - "type": "object", - "description": "An Instance Group Manager resource.", - "properties": { - "autoHealingPolicies": { - "type": "array", - "description": "The autohealing policy for this managed instance group. You can specify only one value.", - "items": { - "$ref": "ReplicaPoolAutoHealingPolicy" - } - }, - "baseInstanceName": { - "type": "string", - "description": "The base instance name to use for instances in this group. The value must be a valid RFC1035 name. Supported characters are lowercase letters, numbers, and hyphens (-). Instances are named by appending a hyphen and a random four-character string to the base instance name." - }, - "creationTimestamp": { - "type": "string", - "description": "[Output only] The time the instance group manager was created, in RFC3339 text format." - }, - "currentSize": { - "type": "integer", - "description": "[Output only] The number of instances that currently exist and are a part of this group. This includes instances that are starting but are not yet RUNNING, and instances that are in the process of being deleted or abandoned.", - "format": "int32" - }, - "description": { - "type": "string", - "description": "An optional textual description of the instance group manager." - }, - "fingerprint": { - "type": "string", - "description": "[Output only] Fingerprint of the instance group manager. This field is used for optimistic locking. An up-to-date fingerprint must be provided in order to modify the Instance Group Manager resource.", - "format": "byte" - }, - "group": { - "type": "string", - "description": "[Output only] The full URL of the instance group created by the manager. This group contains all of the instances being managed, and cannot contain non-managed instances." - }, - "id": { - "type": "string", - "description": "[Output only] A server-assigned unique identifier for the resource.", - "format": "uint64" - }, - "instanceTemplate": { - "type": "string", - "description": "The full URL to an instance template from which all new instances will be created." - }, - "kind": { - "type": "string", - "description": "[Output only] The resource type. Always replicapool#instanceGroupManager.", - "default": "replicapool#instanceGroupManager" - }, - "name": { - "type": "string", - "description": "The name of the instance group manager. Must be 1-63 characters long and comply with RFC1035. Supported characters include lowercase letters, numbers, and hyphens." - }, - "selfLink": { - "type": "string", - "description": "[Output only] The fully qualified URL for this resource." - }, - "targetPools": { - "type": "array", - "description": "The full URL of all target pools to which new instances in the group are added. Updating the target pool values does not affect existing instances.", - "items": { - "type": "string" - } - }, - "targetSize": { - "type": "integer", - "description": "[Output only] The number of instances that the manager is attempting to maintain. Deleting or abandoning instances affects this number, as does resizing the group.", - "format": "int32" - } - } - }, - "InstanceGroupManagerList": { - "id": "InstanceGroupManagerList", - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Unique identifier for the resource; defined by the server (output only)." - }, - "items": { - "type": "array", - "description": "A list of instance resources.", - "items": { - "$ref": "InstanceGroupManager" - } - }, - "kind": { - "type": "string", - "description": "Type of resource.", - "default": "replicapool#instanceGroupManagerList" - }, - "nextPageToken": { - "type": "string", - "description": "A token used to continue a truncated list request (output only)." - }, - "selfLink": { - "type": "string", - "description": "Server defined URL for this resource (output only)." - } - } - }, - "InstanceGroupManagersAbandonInstancesRequest": { - "id": "InstanceGroupManagersAbandonInstancesRequest", - "type": "object", - "properties": { - "instances": { - "type": "array", - "description": "The names of one or more instances to abandon. For example:\n{ 'instances': [ 'instance-c3po', 'instance-r2d2' ] }", - "items": { - "type": "string" - } - } - } - }, - "InstanceGroupManagersDeleteInstancesRequest": { - "id": "InstanceGroupManagersDeleteInstancesRequest", - "type": "object", - "properties": { - "instances": { - "type": "array", - "description": "Names of instances to delete.\n\nExample: 'instance-foo', 'instance-bar'", - "items": { - "type": "string" - } - } - } - }, - "InstanceGroupManagersRecreateInstancesRequest": { - "id": "InstanceGroupManagersRecreateInstancesRequest", - "type": "object", - "properties": { - "instances": { - "type": "array", - "description": "The names of one or more instances to recreate. For example:\n{ 'instances': [ 'instance-c3po', 'instance-r2d2' ] }", - "items": { - "type": "string" - } - } - } - }, - "InstanceGroupManagersSetInstanceTemplateRequest": { - "id": "InstanceGroupManagersSetInstanceTemplateRequest", - "type": "object", - "properties": { - "instanceTemplate": { - "type": "string", - "description": "The full URL to an Instance Template from which all new instances will be created." - } - } - }, - "InstanceGroupManagersSetTargetPoolsRequest": { - "id": "InstanceGroupManagersSetTargetPoolsRequest", - "type": "object", - "properties": { - "fingerprint": { - "type": "string", - "description": "The current fingerprint of the Instance Group Manager resource. If this does not match the server-side fingerprint of the resource, then the request will be rejected.", - "format": "byte" - }, - "targetPools": { - "type": "array", - "description": "A list of fully-qualified URLs to existing Target Pool resources. New instances in the Instance Group Manager will be added to the specified target pools; existing instances are not affected.", - "items": { - "type": "string" - } - } - } - }, - "Operation": { - "id": "Operation", - "type": "object", - "description": "An operation resource, used to manage asynchronous API requests.", - "properties": { - "clientOperationId": { - "type": "string", - "description": "[Output only] An optional identifier specified by the client when the mutation was initiated. Must be unique for all operation resources in the project." - }, - "creationTimestamp": { - "type": "string", - "description": "[Output Only] The time that this operation was requested, in RFC3339 text format." - }, - "endTime": { - "type": "string", - "description": "[Output Only] The time that this operation was completed, in RFC3339 text format." - }, - "error": { - "type": "object", - "description": "[Output Only] If errors occurred during processing of this operation, this field will be populated.", - "properties": { - "errors": { - "type": "array", - "description": "[Output Only] The array of errors encountered while processing this operation.", - "items": { - "type": "object", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] The error type identifier for this error." - }, - "location": { - "type": "string", - "description": "[Output Only] Indicates the field in the request which caused the error. This property is optional." - }, - "message": { - "type": "string", - "description": "[Output Only] An optional, human-readable error message." - } + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/cloud-platform": { + "description": "View and manage your data across Google Cloud Platform services" + }, + "https://www.googleapis.com/auth/cloud-platform.read-only": { + "description": "View your data across Google Cloud Platform services" + }, + "https://www.googleapis.com/auth/compute": { + "description": "View and manage your Google Compute Engine resources" + }, + "https://www.googleapis.com/auth/compute.readonly": { + "description": "View your Google Compute Engine resources" } - } } - } + } + }, + "basePath": "/replicapool/v1beta2/projects/", + "baseUrl": "https://www.googleapis.com/replicapool/v1beta2/projects/", + "batchPath": "batch/replicapool/v1beta2", + "description": "[Deprecated. Please use Instance Group Manager in Compute API] Provides groups of homogenous Compute Engine instances.", + "discoveryVersion": "v1", + "documentationLink": "https://developers.google.com/compute/docs/instance-groups/manager/v1beta2", + "etag": "\"-iA1DTNe4s-I6JZXPt1t1Ypy8IU/TeJ87k5AaNhxSfkpXHKHkISW9Dw\"", + "icons": { + "x16": "https://www.gstatic.com/images/branding/product/1x/googleg_16dp.png", + "x32": "https://www.gstatic.com/images/branding/product/1x/googleg_32dp.png" + }, + "id": "replicapool:v1beta2", + "kind": "discovery#restDescription", + "labels": [ + "limited_availability" + ], + "name": "replicapool", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "alt": { + "default": "json", + "description": "Data format for the response.", + "enum": [ + "json" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json" + ], + "location": "query", + "type": "string" }, - "httpErrorMessage": { - "type": "string", - "description": "[Output only] If operation fails, the HTTP error message returned." + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "location": "query", + "type": "string" }, - "httpErrorStatusCode": { - "type": "integer", - "description": "[Output only] If operation fails, the HTTP error status code returned.", - "format": "int32" + "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" }, - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource, generated by the server.", - "format": "uint64" + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" }, - "insertTime": { - "type": "string", - "description": "[Output Only] The time that this operation was requested, in RFC3339 text format." + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" }, - "kind": { - "type": "string", - "description": "[Output only] Type of the resource.", - "default": "replicapool#operation" + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", + "location": "query", + "type": "string" }, - "name": { - "type": "string", - "description": "[Output Only] Name of the resource." - }, - "operationType": { - "type": "string", - "description": "[Output only] Type of the operation. Operations include insert, update, and delete." - }, - "progress": { - "type": "integer", - "description": "[Output only] An optional progress indicator that ranges from 0 to 100. There is no requirement that this be linear or support any granularity of operations. This should not be used to guess at when the operation will be complete. This number should be monotonically increasing as the operation progresses.", - "format": "int32" - }, - "region": { - "type": "string", - "description": "[Output Only] URL of the region where the operation resides. Only available when performing regional operations." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined fully-qualified URL for this resource." - }, - "startTime": { - "type": "string", - "description": "[Output Only] The time that this operation was started by the server, in RFC3339 text format." - }, - "status": { - "type": "string", - "description": "[Output Only] Status of the operation.", - "enum": [ - "DONE", - "PENDING", - "RUNNING" - ], - "enumDescriptions": [ - "", - "", - "" - ] - }, - "statusMessage": { - "type": "string", - "description": "[Output Only] An optional textual description of the current status of the operation." - }, - "targetId": { - "type": "string", - "description": "[Output Only] Unique target ID which identifies a particular incarnation of the target.", - "format": "uint64" - }, - "targetLink": { - "type": "string", - "description": "[Output only] URL of the resource the operation is mutating." - }, - "user": { - "type": "string", - "description": "[Output Only] User who requested the operation, for example: user@example.com." - }, - "warnings": { - "type": "array", - "description": "[Output Only] If there are issues with this operation, a warning is returned.", - "items": { - "type": "object", - "properties": { - "code": { - "type": "string", - "description": "[Output only] The warning type identifier for this warning.", - "enum": [ - "DEPRECATED_RESOURCE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "INJECTED_KERNELS_DEPRECATED", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NO_RESULTS_ON_PAGE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_NOT_DELETED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNREACHABLE" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "data": { - "type": "array", - "description": "[Output only] Metadata for this warning in key:value format.", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] Metadata key for this warning." + "userIp": { + "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", + "location": "query", + "type": "string" + } + }, + "protocol": "rest", + "resources": { + "instanceGroupManagers": { + "methods": { + "abandonInstances": { + "description": "Removes the specified instances from the managed instance group, and from any target pools of which they were members, without deleting the instances.", + "httpMethod": "POST", + "id": "replicapool.instanceGroupManagers.abandonInstances", + "parameterOrder": [ + "project", + "zone", + "instanceGroupManager" + ], + "parameters": { + "instanceGroupManager": { + "description": "The name of the instance group manager.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "The Google Developers Console project name.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "zone": { + "description": "The name of the zone in which the instance group manager resides.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } }, - "value": { - "type": "string", - "description": "[Output Only] Metadata value for this warning." - } - } + "path": "{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/abandonInstances", + "request": { + "$ref": "InstanceGroupManagersAbandonInstancesRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "delete": { + "description": "Deletes the instance group manager and all instances contained within. If you'd like to delete the manager without deleting the instances, you must first abandon the instances to remove them from the group.", + "httpMethod": "DELETE", + "id": "replicapool.instanceGroupManagers.delete", + "parameterOrder": [ + "project", + "zone", + "instanceGroupManager" + ], + "parameters": { + "instanceGroupManager": { + "description": "Name of the Instance Group Manager resource to delete.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "The Google Developers Console project name.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "zone": { + "description": "The name of the zone in which the instance group manager resides.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "deleteInstances": { + "description": "Deletes the specified instances. The instances are deleted, then removed from the instance group and any target pools of which they were a member. The targetSize of the instance group manager is reduced by the number of instances deleted.", + "httpMethod": "POST", + "id": "replicapool.instanceGroupManagers.deleteInstances", + "parameterOrder": [ + "project", + "zone", + "instanceGroupManager" + ], + "parameters": { + "instanceGroupManager": { + "description": "The name of the instance group manager.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "The Google Developers Console project name.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "zone": { + "description": "The name of the zone in which the instance group manager resides.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/deleteInstances", + "request": { + "$ref": "InstanceGroupManagersDeleteInstancesRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Returns the specified Instance Group Manager resource.", + "httpMethod": "GET", + "id": "replicapool.instanceGroupManagers.get", + "parameterOrder": [ + "project", + "zone", + "instanceGroupManager" + ], + "parameters": { + "instanceGroupManager": { + "description": "Name of the instance resource to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "The Google Developers Console project name.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "zone": { + "description": "The name of the zone in which the instance group manager resides.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}", + "response": { + "$ref": "InstanceGroupManager" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "description": "Creates an instance group manager, as well as the instance group and the specified number of instances.", + "httpMethod": "POST", + "id": "replicapool.instanceGroupManagers.insert", + "parameterOrder": [ + "project", + "zone", + "size" + ], + "parameters": { + "project": { + "description": "The Google Developers Console project name.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "size": { + "description": "Number of instances that should exist.", + "format": "int32", + "location": "query", + "minimum": "0", + "required": true, + "type": "integer" + }, + "zone": { + "description": "The name of the zone in which the instance group manager resides.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instanceGroupManagers", + "request": { + "$ref": "InstanceGroupManager" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "description": "Retrieves the list of Instance Group Manager resources contained within the specified zone.", + "httpMethod": "GET", + "id": "replicapool.instanceGroupManagers.list", + "parameterOrder": [ + "project", + "zone" + ], + "parameters": { + "filter": { + "description": "Optional. Filter expression for filtering listed resources.", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "Optional. Maximum count of results to be returned. Maximum value is 500 and default value is 500.", + "format": "uint32", + "location": "query", + "maximum": "500", + "minimum": "0", + "type": "integer" + }, + "pageToken": { + "description": "Optional. Tag returned by a previous list request truncated by maxResults. Used to continue a previous list request.", + "location": "query", + "type": "string" + }, + "project": { + "description": "The Google Developers Console project name.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "zone": { + "description": "The name of the zone in which the instance group manager resides.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instanceGroupManagers", + "response": { + "$ref": "InstanceGroupManagerList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "recreateInstances": { + "description": "Recreates the specified instances. The instances are deleted, then recreated using the instance group manager's current instance template.", + "httpMethod": "POST", + "id": "replicapool.instanceGroupManagers.recreateInstances", + "parameterOrder": [ + "project", + "zone", + "instanceGroupManager" + ], + "parameters": { + "instanceGroupManager": { + "description": "The name of the instance group manager.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "The Google Developers Console project name.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "zone": { + "description": "The name of the zone in which the instance group manager resides.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/recreateInstances", + "request": { + "$ref": "InstanceGroupManagersRecreateInstancesRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "resize": { + "description": "Resizes the managed instance group up or down. If resized up, new instances are created using the current instance template. If resized down, instances are removed in the order outlined in Resizing a managed instance group.", + "httpMethod": "POST", + "id": "replicapool.instanceGroupManagers.resize", + "parameterOrder": [ + "project", + "zone", + "instanceGroupManager", + "size" + ], + "parameters": { + "instanceGroupManager": { + "description": "The name of the instance group manager.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "The Google Developers Console project name.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "size": { + "description": "Number of instances that should exist in this Instance Group Manager.", + "format": "int32", + "location": "query", + "minimum": "0", + "required": true, + "type": "integer" + }, + "zone": { + "description": "The name of the zone in which the instance group manager resides.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/resize", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setInstanceTemplate": { + "description": "Sets the instance template to use when creating new instances in this group. Existing instances are not affected.", + "httpMethod": "POST", + "id": "replicapool.instanceGroupManagers.setInstanceTemplate", + "parameterOrder": [ + "project", + "zone", + "instanceGroupManager" + ], + "parameters": { + "instanceGroupManager": { + "description": "The name of the instance group manager.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "The Google Developers Console project name.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "zone": { + "description": "The name of the zone in which the instance group manager resides.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/setInstanceTemplate", + "request": { + "$ref": "InstanceGroupManagersSetInstanceTemplateRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setTargetPools": { + "description": "Modifies the target pools to which all new instances in this group are assigned. Existing instances in the group are not affected.", + "httpMethod": "POST", + "id": "replicapool.instanceGroupManagers.setTargetPools", + "parameterOrder": [ + "project", + "zone", + "instanceGroupManager" + ], + "parameters": { + "instanceGroupManager": { + "description": "The name of the instance group manager.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "The Google Developers Console project name.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "zone": { + "description": "The name of the zone in which the instance group manager resides.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/setTargetPools", + "request": { + "$ref": "InstanceGroupManagersSetTargetPoolsRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] } - }, - "message": { - "type": "string", - "description": "[Output only] Optional human-readable details for this warning." - } } - } }, - "zone": { - "type": "string", - "description": "[Output Only] URL of the zone where the operation resides. Only available when performing per-zone operations." + "zoneOperations": { + "methods": { + "get": { + "description": "Retrieves the specified zone-specific operation resource.", + "httpMethod": "GET", + "id": "replicapool.zoneOperations.get", + "parameterOrder": [ + "project", + "zone", + "operation" + ], + "parameters": { + "operation": { + "description": "Name of the operation resource to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Name of the project scoping this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "zone": { + "description": "Name of the zone scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/operations/{operation}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "description": "Retrieves the list of operation resources contained within the specified zone.", + "httpMethod": "GET", + "id": "replicapool.zoneOperations.list", + "parameterOrder": [ + "project", + "zone" + ], + "parameters": { + "filter": { + "description": "Optional. Filter expression for filtering listed resources.", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "Optional. Maximum count of results to be returned. Maximum value is 500 and default value is 500.", + "format": "uint32", + "location": "query", + "maximum": "500", + "minimum": "0", + "type": "integer" + }, + "pageToken": { + "description": "Optional. Tag returned by a previous list request truncated by maxResults. Used to continue a previous list request.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Name of the project scoping this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "zone": { + "description": "Name of the zone scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/operations", + "response": { + "$ref": "OperationList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + } + } } - } }, - "OperationList": { - "id": "OperationList", - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Unique identifier for the resource; defined by the server (output only)." + "revision": "20160512", + "rootUrl": "https://www.googleapis.com/", + "schemas": { + "InstanceGroupManager": { + "description": "An Instance Group Manager resource.", + "id": "InstanceGroupManager", + "properties": { + "autoHealingPolicies": { + "description": "The autohealing policy for this managed instance group. You can specify only one value.", + "items": { + "$ref": "ReplicaPoolAutoHealingPolicy" + }, + "type": "array" + }, + "baseInstanceName": { + "description": "The base instance name to use for instances in this group. The value must be a valid RFC1035 name. Supported characters are lowercase letters, numbers, and hyphens (-). Instances are named by appending a hyphen and a random four-character string to the base instance name.", + "type": "string" + }, + "creationTimestamp": { + "description": "[Output only] The time the instance group manager was created, in RFC3339 text format.", + "type": "string" + }, + "currentSize": { + "description": "[Output only] The number of instances that currently exist and are a part of this group. This includes instances that are starting but are not yet RUNNING, and instances that are in the process of being deleted or abandoned.", + "format": "int32", + "type": "integer" + }, + "description": { + "description": "An optional textual description of the instance group manager.", + "type": "string" + }, + "fingerprint": { + "description": "[Output only] Fingerprint of the instance group manager. This field is used for optimistic locking. An up-to-date fingerprint must be provided in order to modify the Instance Group Manager resource.", + "format": "byte", + "type": "string" + }, + "group": { + "description": "[Output only] The full URL of the instance group created by the manager. This group contains all of the instances being managed, and cannot contain non-managed instances.", + "type": "string" + }, + "id": { + "description": "[Output only] A server-assigned unique identifier for the resource.", + "format": "uint64", + "type": "string" + }, + "instanceTemplate": { + "description": "The full URL to an instance template from which all new instances will be created.", + "type": "string" + }, + "kind": { + "default": "replicapool#instanceGroupManager", + "description": "[Output only] The resource type. Always replicapool#instanceGroupManager.", + "type": "string" + }, + "name": { + "description": "The name of the instance group manager. Must be 1-63 characters long and comply with RFC1035. Supported characters include lowercase letters, numbers, and hyphens.", + "type": "string" + }, + "selfLink": { + "description": "[Output only] The fully qualified URL for this resource.", + "type": "string" + }, + "targetPools": { + "description": "The full URL of all target pools to which new instances in the group are added. Updating the target pool values does not affect existing instances.", + "items": { + "type": "string" + }, + "type": "array" + }, + "targetSize": { + "description": "[Output only] The number of instances that the manager is attempting to maintain. Deleting or abandoning instances affects this number, as does resizing the group.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" }, - "items": { - "type": "array", - "description": "The operation resources.", - "items": { - "$ref": "Operation" - } + "InstanceGroupManagerList": { + "id": "InstanceGroupManagerList", + "properties": { + "id": { + "description": "Unique identifier for the resource; defined by the server (output only).", + "type": "string" + }, + "items": { + "description": "A list of instance resources.", + "items": { + "$ref": "InstanceGroupManager" + }, + "type": "array" + }, + "kind": { + "default": "replicapool#instanceGroupManagerList", + "description": "Type of resource.", + "type": "string" + }, + "nextPageToken": { + "description": "A token used to continue a truncated list request (output only).", + "type": "string" + }, + "selfLink": { + "description": "Server defined URL for this resource (output only).", + "type": "string" + } + }, + "type": "object" }, - "kind": { - "type": "string", - "description": "Type of resource.", - "default": "replicapool#operationList" + "InstanceGroupManagersAbandonInstancesRequest": { + "id": "InstanceGroupManagersAbandonInstancesRequest", + "properties": { + "instances": { + "description": "The names of one or more instances to abandon. For example:\n{ 'instances': [ 'instance-c3po', 'instance-r2d2' ] }", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" }, - "nextPageToken": { - "type": "string", - "description": "A token used to continue a truncated list request (output only)." + "InstanceGroupManagersDeleteInstancesRequest": { + "id": "InstanceGroupManagersDeleteInstancesRequest", + "properties": { + "instances": { + "description": "Names of instances to delete.\n\nExample: 'instance-foo', 'instance-bar'", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" }, - "selfLink": { - "type": "string", - "description": "Server defined URL for this resource (output only)." + "InstanceGroupManagersRecreateInstancesRequest": { + "id": "InstanceGroupManagersRecreateInstancesRequest", + "properties": { + "instances": { + "description": "The names of one or more instances to recreate. For example:\n{ 'instances': [ 'instance-c3po', 'instance-r2d2' ] }", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "InstanceGroupManagersSetInstanceTemplateRequest": { + "id": "InstanceGroupManagersSetInstanceTemplateRequest", + "properties": { + "instanceTemplate": { + "description": "The full URL to an Instance Template from which all new instances will be created.", + "type": "string" + } + }, + "type": "object" + }, + "InstanceGroupManagersSetTargetPoolsRequest": { + "id": "InstanceGroupManagersSetTargetPoolsRequest", + "properties": { + "fingerprint": { + "description": "The current fingerprint of the Instance Group Manager resource. If this does not match the server-side fingerprint of the resource, then the request will be rejected.", + "format": "byte", + "type": "string" + }, + "targetPools": { + "description": "A list of fully-qualified URLs to existing Target Pool resources. New instances in the Instance Group Manager will be added to the specified target pools; existing instances are not affected.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "Operation": { + "description": "An operation resource, used to manage asynchronous API requests.", + "id": "Operation", + "properties": { + "clientOperationId": { + "description": "[Output only] An optional identifier specified by the client when the mutation was initiated. Must be unique for all operation resources in the project.", + "type": "string" + }, + "creationTimestamp": { + "description": "[Output Only] The time that this operation was requested, in RFC3339 text format.", + "type": "string" + }, + "endTime": { + "description": "[Output Only] The time that this operation was completed, in RFC3339 text format.", + "type": "string" + }, + "error": { + "description": "[Output Only] If errors occurred during processing of this operation, this field will be populated.", + "properties": { + "errors": { + "description": "[Output Only] The array of errors encountered while processing this operation.", + "items": { + "properties": { + "code": { + "description": "[Output Only] The error type identifier for this error.", + "type": "string" + }, + "location": { + "description": "[Output Only] Indicates the field in the request which caused the error. This property is optional.", + "type": "string" + }, + "message": { + "description": "[Output Only] An optional, human-readable error message.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + } + }, + "type": "object" + }, + "httpErrorMessage": { + "description": "[Output only] If operation fails, the HTTP error message returned.", + "type": "string" + }, + "httpErrorStatusCode": { + "description": "[Output only] If operation fails, the HTTP error status code returned.", + "format": "int32", + "type": "integer" + }, + "id": { + "description": "[Output Only] Unique identifier for the resource, generated by the server.", + "format": "uint64", + "type": "string" + }, + "insertTime": { + "description": "[Output Only] The time that this operation was requested, in RFC3339 text format.", + "type": "string" + }, + "kind": { + "default": "replicapool#operation", + "description": "[Output only] Type of the resource.", + "type": "string" + }, + "name": { + "description": "[Output Only] Name of the resource.", + "type": "string" + }, + "operationType": { + "description": "[Output only] Type of the operation. Operations include insert, update, and delete.", + "type": "string" + }, + "progress": { + "description": "[Output only] An optional progress indicator that ranges from 0 to 100. There is no requirement that this be linear or support any granularity of operations. This should not be used to guess at when the operation will be complete. This number should be monotonically increasing as the operation progresses.", + "format": "int32", + "type": "integer" + }, + "region": { + "description": "[Output Only] URL of the region where the operation resides. Only available when performing regional operations.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined fully-qualified URL for this resource.", + "type": "string" + }, + "startTime": { + "description": "[Output Only] The time that this operation was started by the server, in RFC3339 text format.", + "type": "string" + }, + "status": { + "description": "[Output Only] Status of the operation.", + "enum": [ + "DONE", + "PENDING", + "RUNNING" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, + "statusMessage": { + "description": "[Output Only] An optional textual description of the current status of the operation.", + "type": "string" + }, + "targetId": { + "description": "[Output Only] Unique target ID which identifies a particular incarnation of the target.", + "format": "uint64", + "type": "string" + }, + "targetLink": { + "description": "[Output only] URL of the resource the operation is mutating.", + "type": "string" + }, + "user": { + "description": "[Output Only] User who requested the operation, for example: user@example.com.", + "type": "string" + }, + "warnings": { + "description": "[Output Only] If there are issues with this operation, a warning is returned.", + "items": { + "properties": { + "code": { + "description": "[Output only] The warning type identifier for this warning.", + "enum": [ + "DEPRECATED_RESOURCE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "INJECTED_KERNELS_DEPRECATED", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_NOT_DELETED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "data": { + "description": "[Output only] Metadata for this warning in key:value format.", + "items": { + "properties": { + "key": { + "description": "[Output Only] Metadata key for this warning.", + "type": "string" + }, + "value": { + "description": "[Output Only] Metadata value for this warning.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output only] Optional human-readable details for this warning.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "zone": { + "description": "[Output Only] URL of the zone where the operation resides. Only available when performing per-zone operations.", + "type": "string" + } + }, + "type": "object" + }, + "OperationList": { + "id": "OperationList", + "properties": { + "id": { + "description": "Unique identifier for the resource; defined by the server (output only).", + "type": "string" + }, + "items": { + "description": "The operation resources.", + "items": { + "$ref": "Operation" + }, + "type": "array" + }, + "kind": { + "default": "replicapool#operationList", + "description": "Type of resource.", + "type": "string" + }, + "nextPageToken": { + "description": "A token used to continue a truncated list request (output only).", + "type": "string" + }, + "selfLink": { + "description": "Server defined URL for this resource (output only).", + "type": "string" + } + }, + "type": "object" + }, + "ReplicaPoolAutoHealingPolicy": { + "id": "ReplicaPoolAutoHealingPolicy", + "properties": { + "actionType": { + "description": "The action to perform when an instance becomes unhealthy. Possible values are RECREATE or REBOOT. RECREATE replaces an unhealthy instance with a new instance that is based on the instance template for this managed instance group. REBOOT performs a soft reboot on an instance. If the instance cannot reboot, the instance performs a hard restart.", + "enum": [ + "REBOOT", + "RECREATE" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "healthCheck": { + "description": "The URL for the HealthCheck that signals autohealing.", + "type": "string" + } + }, + "type": "object" } - } }, - "ReplicaPoolAutoHealingPolicy": { - "id": "ReplicaPoolAutoHealingPolicy", - "type": "object", - "properties": { - "actionType": { - "type": "string", - "description": "The action to perform when an instance becomes unhealthy. Possible values are RECREATE or REBOOT. RECREATE replaces an unhealthy instance with a new instance that is based on the instance template for this managed instance group. REBOOT performs a soft reboot on an instance. If the instance cannot reboot, the instance performs a hard restart.", - "enum": [ - "REBOOT", - "RECREATE" - ], - "enumDescriptions": [ - "", - "" - ] - }, - "healthCheck": { - "type": "string", - "description": "The URL for the HealthCheck that signals autohealing." - } - } - } - }, - "resources": { - "instanceGroupManagers": { - "methods": { - "abandonInstances": { - "id": "replicapool.instanceGroupManagers.abandonInstances", - "path": "{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/abandonInstances", - "httpMethod": "POST", - "description": "Removes the specified instances from the managed instance group, and from any target pools of which they were members, without deleting the instances.", - "parameters": { - "instanceGroupManager": { - "type": "string", - "description": "The name of the instance group manager.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "The Google Developers Console project name.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "zone": { - "type": "string", - "description": "The name of the zone in which the instance group manager resides.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "instanceGroupManager" - ], - "request": { - "$ref": "InstanceGroupManagersAbandonInstancesRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "delete": { - "id": "replicapool.instanceGroupManagers.delete", - "path": "{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}", - "httpMethod": "DELETE", - "description": "Deletes the instance group manager and all instances contained within. If you'd like to delete the manager without deleting the instances, you must first abandon the instances to remove them from the group.", - "parameters": { - "instanceGroupManager": { - "type": "string", - "description": "Name of the Instance Group Manager resource to delete.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "The Google Developers Console project name.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "zone": { - "type": "string", - "description": "The name of the zone in which the instance group manager resides.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "instanceGroupManager" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "deleteInstances": { - "id": "replicapool.instanceGroupManagers.deleteInstances", - "path": "{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/deleteInstances", - "httpMethod": "POST", - "description": "Deletes the specified instances. The instances are deleted, then removed from the instance group and any target pools of which they were a member. The targetSize of the instance group manager is reduced by the number of instances deleted.", - "parameters": { - "instanceGroupManager": { - "type": "string", - "description": "The name of the instance group manager.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "The Google Developers Console project name.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "zone": { - "type": "string", - "description": "The name of the zone in which the instance group manager resides.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "instanceGroupManager" - ], - "request": { - "$ref": "InstanceGroupManagersDeleteInstancesRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "get": { - "id": "replicapool.instanceGroupManagers.get", - "path": "{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}", - "httpMethod": "GET", - "description": "Returns the specified Instance Group Manager resource.", - "parameters": { - "instanceGroupManager": { - "type": "string", - "description": "Name of the instance resource to return.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "The Google Developers Console project name.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "zone": { - "type": "string", - "description": "The name of the zone in which the instance group manager resides.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "instanceGroupManager" - ], - "response": { - "$ref": "InstanceGroupManager" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "insert": { - "id": "replicapool.instanceGroupManagers.insert", - "path": "{project}/zones/{zone}/instanceGroupManagers", - "httpMethod": "POST", - "description": "Creates an instance group manager, as well as the instance group and the specified number of instances.", - "parameters": { - "project": { - "type": "string", - "description": "The Google Developers Console project name.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "size": { - "type": "integer", - "description": "Number of instances that should exist.", - "required": true, - "format": "int32", - "minimum": "0", - "location": "query" - }, - "zone": { - "type": "string", - "description": "The name of the zone in which the instance group manager resides.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "size" - ], - "request": { - "$ref": "InstanceGroupManager" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "list": { - "id": "replicapool.instanceGroupManagers.list", - "path": "{project}/zones/{zone}/instanceGroupManagers", - "httpMethod": "GET", - "description": "Retrieves the list of Instance Group Manager resources contained within the specified zone.", - "parameters": { - "filter": { - "type": "string", - "description": "Optional. Filter expression for filtering listed resources.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "Optional. Maximum count of results to be returned. Maximum value is 500 and default value is 500.", - "default": "500", - "format": "uint32", - "minimum": "0", - "maximum": "500", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Optional. Tag returned by a previous list request truncated by maxResults. Used to continue a previous list request.", - "location": "query" - }, - "project": { - "type": "string", - "description": "The Google Developers Console project name.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "zone": { - "type": "string", - "description": "The name of the zone in which the instance group manager resides.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone" - ], - "response": { - "$ref": "InstanceGroupManagerList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "recreateInstances": { - "id": "replicapool.instanceGroupManagers.recreateInstances", - "path": "{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/recreateInstances", - "httpMethod": "POST", - "description": "Recreates the specified instances. The instances are deleted, then recreated using the instance group manager's current instance template.", - "parameters": { - "instanceGroupManager": { - "type": "string", - "description": "The name of the instance group manager.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "The Google Developers Console project name.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "zone": { - "type": "string", - "description": "The name of the zone in which the instance group manager resides.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "instanceGroupManager" - ], - "request": { - "$ref": "InstanceGroupManagersRecreateInstancesRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "resize": { - "id": "replicapool.instanceGroupManagers.resize", - "path": "{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/resize", - "httpMethod": "POST", - "description": "Resizes the managed instance group up or down. If resized up, new instances are created using the current instance template. If resized down, instances are removed in the order outlined in Resizing a managed instance group.", - "parameters": { - "instanceGroupManager": { - "type": "string", - "description": "The name of the instance group manager.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "The Google Developers Console project name.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "size": { - "type": "integer", - "description": "Number of instances that should exist in this Instance Group Manager.", - "required": true, - "format": "int32", - "minimum": "0", - "location": "query" - }, - "zone": { - "type": "string", - "description": "The name of the zone in which the instance group manager resides.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "instanceGroupManager", - "size" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "setInstanceTemplate": { - "id": "replicapool.instanceGroupManagers.setInstanceTemplate", - "path": "{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/setInstanceTemplate", - "httpMethod": "POST", - "description": "Sets the instance template to use when creating new instances in this group. Existing instances are not affected.", - "parameters": { - "instanceGroupManager": { - "type": "string", - "description": "The name of the instance group manager.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "The Google Developers Console project name.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "zone": { - "type": "string", - "description": "The name of the zone in which the instance group manager resides.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "instanceGroupManager" - ], - "request": { - "$ref": "InstanceGroupManagersSetInstanceTemplateRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "setTargetPools": { - "id": "replicapool.instanceGroupManagers.setTargetPools", - "path": "{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/setTargetPools", - "httpMethod": "POST", - "description": "Modifies the target pools to which all new instances in this group are assigned. Existing instances in the group are not affected.", - "parameters": { - "instanceGroupManager": { - "type": "string", - "description": "The name of the instance group manager.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "The Google Developers Console project name.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "zone": { - "type": "string", - "description": "The name of the zone in which the instance group manager resides.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "instanceGroupManager" - ], - "request": { - "$ref": "InstanceGroupManagersSetTargetPoolsRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - } - } - }, - "zoneOperations": { - "methods": { - "get": { - "id": "replicapool.zoneOperations.get", - "path": "{project}/zones/{zone}/operations/{operation}", - "httpMethod": "GET", - "description": "Retrieves the specified zone-specific operation resource.", - "parameters": { - "operation": { - "type": "string", - "description": "Name of the operation resource to return.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Name of the project scoping this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "zone": { - "type": "string", - "description": "Name of the zone scoping this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "operation" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "list": { - "id": "replicapool.zoneOperations.list", - "path": "{project}/zones/{zone}/operations", - "httpMethod": "GET", - "description": "Retrieves the list of operation resources contained within the specified zone.", - "parameters": { - "filter": { - "type": "string", - "description": "Optional. Filter expression for filtering listed resources.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "Optional. Maximum count of results to be returned. Maximum value is 500 and default value is 500.", - "default": "500", - "format": "uint32", - "minimum": "0", - "maximum": "500", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Optional. Tag returned by a previous list request truncated by maxResults. Used to continue a previous list request.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Name of the project scoping this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "zone": { - "type": "string", - "description": "Name of the zone scoping this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone" - ], - "response": { - "$ref": "OperationList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - } - } - } - } -} + "servicePath": "replicapool/v1beta2/projects/", + "title": "Google Compute Engine Instance Group Manager API", + "version": "v1beta2" +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/replicapoolupdater/v1beta1/replicapoolupdater-api.json b/vendor/google.golang.org/api/replicapoolupdater/v1beta1/replicapoolupdater-api.json index 6231b3477..b7bd67e77 100644 --- a/vendor/google.golang.org/api/replicapoolupdater/v1beta1/replicapoolupdater-api.json +++ b/vendor/google.golang.org/api/replicapoolupdater/v1beta1/replicapoolupdater-api.json @@ -1,932 +1,932 @@ { - "kind": "discovery#restDescription", - "etag": "\"YWOzh2SDasdU84ArJnpYek-OMdg/UEKDxDt-gBRW5wBq_kkcVGVpuQc\"", - "discoveryVersion": "v1", - "id": "replicapoolupdater:v1beta1", - "name": "replicapoolupdater", - "version": "v1beta1", - "revision": "20161003", - "title": "Google Compute Engine Instance Group Updater API", - "description": "[Deprecated. Please use compute.instanceGroupManagers.update method. replicapoolupdater API will be disabled after December 30th, 2016] Updates groups of Compute Engine instances.", - "ownerDomain": "google.com", - "ownerName": "Google", - "icons": { - "x16": "https://www.gstatic.com/images/branding/product/1x/googleg_16dp.png", - "x32": "https://www.gstatic.com/images/branding/product/1x/googleg_32dp.png" - }, - "documentationLink": "https://cloud.google.com/compute/docs/instance-groups/manager/#applying_rolling_updates_using_the_updater_service", - "labels": [ - "limited_availability" - ], - "protocol": "rest", - "baseUrl": "https://www.googleapis.com/replicapoolupdater/v1beta1/projects/", - "basePath": "/replicapoolupdater/v1beta1/projects/", - "rootUrl": "https://www.googleapis.com/", - "servicePath": "replicapoolupdater/v1beta1/projects/", - "batchPath": "batch/replicapoolupdater/v1beta1", - "parameters": { - "alt": { - "type": "string", - "description": "Data format for the response.", - "default": "json", - "enum": [ - "json" - ], - "enumDescriptions": [ - "Responses with Content-Type of application/json" - ], - "location": "query" - }, - "fields": { - "type": "string", - "description": "Selector specifying which fields to include in a partial response.", - "location": "query" - }, - "key": { - "type": "string", - "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" - }, - "oauth_token": { - "type": "string", - "description": "OAuth 2.0 token for the current user.", - "location": "query" - }, - "prettyPrint": { - "type": "boolean", - "description": "Returns response with indentations and line breaks.", - "default": "true", - "location": "query" - }, - "quotaUser": { - "type": "string", - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", - "location": "query" - }, - "userIp": { - "type": "string", - "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", - "location": "query" - } - }, - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/cloud-platform": { - "description": "View and manage your data across Google Cloud Platform services" - }, - "https://www.googleapis.com/auth/cloud-platform.read-only": { - "description": "View your data across Google Cloud Platform services" - }, - "https://www.googleapis.com/auth/replicapool": { - "description": "View and manage replica pools" - }, - "https://www.googleapis.com/auth/replicapool.readonly": { - "description": "View replica pools" - } - } - } - }, - "schemas": { - "InstanceUpdate": { - "id": "InstanceUpdate", - "type": "object", - "description": "Update of a single instance.", - "properties": { - "error": { - "type": "object", - "description": "Errors that occurred during the instance update.", - "properties": { - "errors": { - "type": "array", - "description": "[Output Only] The array of errors encountered while processing this operation.", - "items": { - "type": "object", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] The error type identifier for this error." - }, - "location": { - "type": "string", - "description": "[Output Only] Indicates the field in the request that caused the error. This property is optional." - }, - "message": { - "type": "string", - "description": "[Output Only] An optional, human-readable error message." - } + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/cloud-platform": { + "description": "View and manage your data across Google Cloud Platform services" + }, + "https://www.googleapis.com/auth/cloud-platform.read-only": { + "description": "View your data across Google Cloud Platform services" + }, + "https://www.googleapis.com/auth/replicapool": { + "description": "View and manage replica pools" + }, + "https://www.googleapis.com/auth/replicapool.readonly": { + "description": "View replica pools" } - } } - } - }, - "instance": { - "type": "string", - "description": "Fully-qualified URL of the instance being updated." - }, - "status": { - "type": "string", - "description": "Status of the instance update. Possible values are: \n- \"PENDING\": The instance update is pending execution. \n- \"ROLLING_FORWARD\": The instance update is going forward. \n- \"ROLLING_BACK\": The instance update is being rolled back. \n- \"PAUSED\": The instance update is temporarily paused (inactive). \n- \"ROLLED_OUT\": The instance update is finished, the instance is running the new template. \n- \"ROLLED_BACK\": The instance update is finished, the instance has been reverted to the previous template. \n- \"CANCELLED\": The instance update is paused and no longer can be resumed, undefined in which template the instance is running." } - } }, - "InstanceUpdateList": { - "id": "InstanceUpdateList", - "type": "object", - "description": "Response returned by ListInstanceUpdates method.", - "properties": { - "items": { - "type": "array", - "description": "Collection of requested instance updates.", - "items": { - "$ref": "InstanceUpdate" - } + "basePath": "/replicapoolupdater/v1beta1/projects/", + "baseUrl": "https://www.googleapis.com/replicapoolupdater/v1beta1/projects/", + "batchPath": "batch/replicapoolupdater/v1beta1", + "description": "[Deprecated. Please use compute.instanceGroupManagers.update method. replicapoolupdater API will be disabled after December 30th, 2016] Updates groups of Compute Engine instances.", + "discoveryVersion": "v1", + "documentationLink": "https://cloud.google.com/compute/docs/instance-groups/manager/#applying_rolling_updates_using_the_updater_service", + "etag": "\"-iA1DTNe4s-I6JZXPt1t1Ypy8IU/UEKDxDt-gBRW5wBq_kkcVGVpuQc\"", + "icons": { + "x16": "https://www.gstatic.com/images/branding/product/1x/googleg_16dp.png", + "x32": "https://www.gstatic.com/images/branding/product/1x/googleg_32dp.png" + }, + "id": "replicapoolupdater:v1beta1", + "kind": "discovery#restDescription", + "labels": [ + "limited_availability" + ], + "name": "replicapoolupdater", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "alt": { + "default": "json", + "description": "Data format for the response.", + "enum": [ + "json" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json" + ], + "location": "query", + "type": "string" }, - "kind": { - "type": "string", - "description": "[Output Only] Type of the resource.", - "default": "replicapoolupdater#instanceUpdateList" + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "location": "query", + "type": "string" }, - "nextPageToken": { - "type": "string", - "description": "A token used to continue a truncated list request." + "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" }, - "selfLink": { - "type": "string", - "description": "[Output Only] The fully qualified URL for the resource." + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", + "location": "query", + "type": "string" + }, + "userIp": { + "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", + "location": "query", + "type": "string" } - } }, - "Operation": { - "id": "Operation", - "type": "object", - "description": "An operation resource, used to manage asynchronous API requests.", - "properties": { - "clientOperationId": { - "type": "string" - }, - "creationTimestamp": { - "type": "string", - "description": "[Output Only] Creation timestamp in RFC3339 text format." - }, - "endTime": { - "type": "string" - }, - "error": { - "type": "object", - "description": "[Output Only] If errors occurred during processing of this operation, this field will be populated.", - "properties": { - "errors": { - "type": "array", - "description": "[Output Only] The array of errors encountered while processing this operation.", - "items": { - "type": "object", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] The error type identifier for this error." - }, - "location": { - "type": "string", - "description": "[Output Only] Indicates the field in the request that caused the error. This property is optional." - }, - "message": { - "type": "string", - "description": "[Output Only] An optional, human-readable error message." - } - } - } - } - } - }, - "httpErrorMessage": { - "type": "string" - }, - "httpErrorStatusCode": { - "type": "integer", - "format": "int32" - }, - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server.", - "format": "uint64" - }, - "insertTime": { - "type": "string", - "description": "[Output Only] The time that this operation was requested. This is in RFC 3339 format." - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of the resource. Always replicapoolupdater#operation for Operation resources.", - "default": "replicapoolupdater#operation" - }, - "name": { - "type": "string", - "description": "[Output Only] Name of the resource." - }, - "operationType": { - "type": "string" - }, - "progress": { - "type": "integer", - "format": "int32" - }, - "region": { - "type": "string", - "description": "[Output Only] URL of the region where the operation resides." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] The fully qualified URL for the resource." - }, - "startTime": { - "type": "string", - "description": "[Output Only] The time that this operation was started by the server. This is in RFC 3339 format." - }, - "status": { - "type": "string", - "description": "[Output Only] Status of the operation. Can be one of the following: \"PENDING\", \"RUNNING\", or \"DONE\"." - }, - "statusMessage": { - "type": "string", - "description": "[Output Only] An optional textual description of the current status of the operation." - }, - "targetId": { - "type": "string", - "description": "[Output Only] Unique target id which identifies a particular incarnation of the target.", - "format": "uint64" - }, - "targetLink": { - "type": "string", - "description": "[Output Only] URL of the resource the operation is mutating." - }, - "user": { - "type": "string" - }, - "warnings": { - "type": "array", - "items": { - "type": "object", - "properties": { - "code": { - "type": "string", - "description": "[Output only] The warning type identifier for this warning." - }, - "data": { - "type": "array", - "description": "[Output only] Metadata for this warning in key:value format.", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] Metadata key for this warning." + "protocol": "rest", + "resources": { + "rollingUpdates": { + "methods": { + "cancel": { + "description": "Cancels an update. The update must be PAUSED before it can be cancelled. This has no effect if the update is already CANCELLED.", + "httpMethod": "POST", + "id": "replicapoolupdater.rollingUpdates.cancel", + "parameterOrder": [ + "project", + "zone", + "rollingUpdate" + ], + "parameters": { + "project": { + "description": "The Google Developers Console project name.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "rollingUpdate": { + "description": "The name of the update.", + "location": "path", + "required": true, + "type": "string" + }, + "zone": { + "description": "The name of the zone in which the update's target resides.", + "location": "path", + "required": true, + "type": "string" + } }, - "value": { - "type": "string", - "description": "[Output Only] Metadata value for this warning." - } - } + "path": "{project}/zones/{zone}/rollingUpdates/{rollingUpdate}/cancel", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/replicapool" + ] + }, + "get": { + "description": "Returns information about an update.", + "httpMethod": "GET", + "id": "replicapoolupdater.rollingUpdates.get", + "parameterOrder": [ + "project", + "zone", + "rollingUpdate" + ], + "parameters": { + "project": { + "description": "The Google Developers Console project name.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "rollingUpdate": { + "description": "The name of the update.", + "location": "path", + "required": true, + "type": "string" + }, + "zone": { + "description": "The name of the zone in which the update's target resides.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/rollingUpdates/{rollingUpdate}", + "response": { + "$ref": "RollingUpdate" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/replicapool", + "https://www.googleapis.com/auth/replicapool.readonly" + ] + }, + "insert": { + "description": "Inserts and starts a new update.", + "httpMethod": "POST", + "id": "replicapoolupdater.rollingUpdates.insert", + "parameterOrder": [ + "project", + "zone" + ], + "parameters": { + "project": { + "description": "The Google Developers Console project name.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "zone": { + "description": "The name of the zone in which the update's target resides.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/rollingUpdates", + "request": { + "$ref": "RollingUpdate" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/replicapool" + ] + }, + "list": { + "description": "Lists recent updates for a given managed instance group, in reverse chronological order and paginated format.", + "httpMethod": "GET", + "id": "replicapoolupdater.rollingUpdates.list", + "parameterOrder": [ + "project", + "zone" + ], + "parameters": { + "filter": { + "description": "Optional. Filter expression for filtering listed resources.", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "Optional. Maximum count of results to be returned. Maximum value is 500 and default value is 500.", + "format": "uint32", + "location": "query", + "maximum": "500", + "minimum": "0", + "type": "integer" + }, + "pageToken": { + "description": "Optional. Tag returned by a previous list request truncated by maxResults. Used to continue a previous list request.", + "location": "query", + "type": "string" + }, + "project": { + "description": "The Google Developers Console project name.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "zone": { + "description": "The name of the zone in which the update's target resides.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/rollingUpdates", + "response": { + "$ref": "RollingUpdateList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/replicapool", + "https://www.googleapis.com/auth/replicapool.readonly" + ] + }, + "listInstanceUpdates": { + "description": "Lists the current status for each instance within a given update.", + "httpMethod": "GET", + "id": "replicapoolupdater.rollingUpdates.listInstanceUpdates", + "parameterOrder": [ + "project", + "zone", + "rollingUpdate" + ], + "parameters": { + "filter": { + "description": "Optional. Filter expression for filtering listed resources.", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "Optional. Maximum count of results to be returned. Maximum value is 500 and default value is 500.", + "format": "uint32", + "location": "query", + "maximum": "500", + "minimum": "0", + "type": "integer" + }, + "pageToken": { + "description": "Optional. Tag returned by a previous list request truncated by maxResults. Used to continue a previous list request.", + "location": "query", + "type": "string" + }, + "project": { + "description": "The Google Developers Console project name.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "rollingUpdate": { + "description": "The name of the update.", + "location": "path", + "required": true, + "type": "string" + }, + "zone": { + "description": "The name of the zone in which the update's target resides.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/rollingUpdates/{rollingUpdate}/instanceUpdates", + "response": { + "$ref": "InstanceUpdateList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/replicapool", + "https://www.googleapis.com/auth/replicapool.readonly" + ] + }, + "pause": { + "description": "Pauses the update in state from ROLLING_FORWARD or ROLLING_BACK. Has no effect if invoked when the state of the update is PAUSED.", + "httpMethod": "POST", + "id": "replicapoolupdater.rollingUpdates.pause", + "parameterOrder": [ + "project", + "zone", + "rollingUpdate" + ], + "parameters": { + "project": { + "description": "The Google Developers Console project name.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "rollingUpdate": { + "description": "The name of the update.", + "location": "path", + "required": true, + "type": "string" + }, + "zone": { + "description": "The name of the zone in which the update's target resides.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/rollingUpdates/{rollingUpdate}/pause", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/replicapool" + ] + }, + "resume": { + "description": "Continues an update in PAUSED state. Has no effect if invoked when the state of the update is ROLLED_OUT.", + "httpMethod": "POST", + "id": "replicapoolupdater.rollingUpdates.resume", + "parameterOrder": [ + "project", + "zone", + "rollingUpdate" + ], + "parameters": { + "project": { + "description": "The Google Developers Console project name.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "rollingUpdate": { + "description": "The name of the update.", + "location": "path", + "required": true, + "type": "string" + }, + "zone": { + "description": "The name of the zone in which the update's target resides.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/rollingUpdates/{rollingUpdate}/resume", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/replicapool" + ] + }, + "rollback": { + "description": "Rolls back the update in state from ROLLING_FORWARD or PAUSED. Has no effect if invoked when the state of the update is ROLLED_BACK.", + "httpMethod": "POST", + "id": "replicapoolupdater.rollingUpdates.rollback", + "parameterOrder": [ + "project", + "zone", + "rollingUpdate" + ], + "parameters": { + "project": { + "description": "The Google Developers Console project name.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "rollingUpdate": { + "description": "The name of the update.", + "location": "path", + "required": true, + "type": "string" + }, + "zone": { + "description": "The name of the zone in which the update's target resides.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/rollingUpdates/{rollingUpdate}/rollback", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/replicapool" + ] } - }, - "message": { - "type": "string", - "description": "[Output only] Optional human-readable details for this warning." - } } - } }, - "zone": { - "type": "string", - "description": "[Output Only] URL of the zone where the operation resides." - } - } - }, - "OperationList": { - "id": "OperationList", - "type": "object", - "description": "Contains a list of Operation resources.", - "properties": { - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "items": { - "type": "array", - "description": "[Output Only] The Operation resources.", - "items": { - "$ref": "Operation" - } - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of resource. Always replicapoolupdater#operationList for OperationList resources.", - "default": "replicapoolupdater#operationList" - }, - "nextPageToken": { - "type": "string", - "description": "[Output Only] A token used to continue a truncate." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] The fully qualified URL for the resource." - } - } - }, - "RollingUpdate": { - "id": "RollingUpdate", - "type": "object", - "description": "The following represents a resource describing a single update (rollout) of a group of instances to the given template.", - "properties": { - "actionType": { - "type": "string", - "description": "Specifies the action to take for each instance within the instance group. This can be RECREATE which will recreate each instance and is only available for managed instance groups. It can also be REBOOT which performs a soft reboot for each instance and is only available for regular (non-managed) instance groups." - }, - "creationTimestamp": { - "type": "string", - "description": "[Output Only] Creation timestamp in RFC3339 text format." - }, - "description": { - "type": "string", - "description": "An optional textual description of the resource; provided by the client when the resource is created." - }, - "error": { - "type": "object", - "description": "[Output Only] Errors that occurred during the rolling update.", - "properties": { - "errors": { - "type": "array", - "description": "[Output Only] The array of errors encountered while processing this operation.", - "items": { - "type": "object", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] The error type identifier for this error." - }, - "location": { - "type": "string", - "description": "[Output Only] Indicates the field in the request that caused the error. This property is optional." - }, - "message": { - "type": "string", - "description": "[Output Only] An optional, human-readable error message." - } + "zoneOperations": { + "methods": { + "get": { + "description": "Retrieves the specified zone-specific operation resource.", + "httpMethod": "GET", + "id": "replicapoolupdater.zoneOperations.get", + "parameterOrder": [ + "project", + "zone", + "operation" + ], + "parameters": { + "operation": { + "description": "Name of the operation resource to return.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Name of the project scoping this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "zone": { + "description": "Name of the zone scoping this request.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/operations/{operation}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/replicapool" + ] + }, + "list": { + "description": "Retrieves the list of Operation resources contained within the specified zone.", + "httpMethod": "GET", + "id": "replicapoolupdater.zoneOperations.list", + "parameterOrder": [ + "project", + "zone" + ], + "parameters": { + "filter": { + "description": "Optional. Filter expression for filtering listed resources.", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "Optional. Maximum count of results to be returned. Maximum value is 500 and default value is 500.", + "format": "uint32", + "location": "query", + "maximum": "500", + "minimum": "0", + "type": "integer" + }, + "pageToken": { + "description": "Optional. Tag returned by a previous list request truncated by maxResults. Used to continue a previous list request.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Name of the project scoping this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "zone": { + "description": "Name of the zone scoping this request.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/operations", + "response": { + "$ref": "OperationList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/replicapool" + ] } - } } - } - }, - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource; defined by the server." - }, - "instanceGroup": { - "type": "string", - "description": "Fully-qualified URL of an instance group being updated. Exactly one of instanceGroupManager and instanceGroup must be set." - }, - "instanceGroupManager": { - "type": "string", - "description": "Fully-qualified URL of an instance group manager being updated. Exactly one of instanceGroupManager and instanceGroup must be set." - }, - "instanceTemplate": { - "type": "string", - "description": "Fully-qualified URL of an instance template to apply." - }, - "kind": { - "type": "string", - "description": "[Output Only] Type of the resource.", - "default": "replicapoolupdater#rollingUpdate" - }, - "oldInstanceTemplate": { - "type": "string", - "description": "Fully-qualified URL of the instance template encountered while starting the update." - }, - "policy": { - "type": "object", - "description": "Parameters of the update process.", - "properties": { - "autoPauseAfterInstances": { - "type": "integer", - "description": "Number of instances to update before the updater pauses the rolling update.", - "format": "int32" - }, - "instanceStartupTimeoutSec": { - "type": "integer", - "description": "The maximum amount of time that the updater waits for a HEALTHY state after all of the update steps are complete. If the HEALTHY state is not received before the deadline, the instance update is considered a failure.", - "format": "int32" - }, - "maxNumConcurrentInstances": { - "type": "integer", - "description": "The maximum number of instances that can be updated simultaneously. An instance update is considered complete only after the instance is restarted and initialized.", - "format": "int32" - }, - "maxNumFailedInstances": { - "type": "integer", - "description": "The maximum number of instance updates that can fail before the group update is considered a failure. An instance update is considered failed if any of its update actions (e.g. Stop call on Instance resource in Rolling Reboot) failed with permanent failure, or if the instance is in an UNHEALTHY state after it finishes all of the update actions.", - "format": "int32" - }, - "minInstanceUpdateTimeSec": { - "type": "integer", - "description": "The minimum amount of time that the updater spends to update each instance. Update time is the time it takes to complete all update actions (e.g. Stop call on Instance resource in Rolling Reboot), reboot, and initialize. If the instance update finishes early, the updater pauses for the remainder of the time before it starts the next instance update.", - "format": "int32" - } - } - }, - "progress": { - "type": "integer", - "description": "[Output Only] An optional progress indicator that ranges from 0 to 100. There is no requirement that this be linear or support any granularity of operations. This should not be used to guess at when the update will be complete. This number should be monotonically increasing as the update progresses.", - "format": "int32" - }, - "selfLink": { - "type": "string", - "description": "[Output Only] The fully qualified URL for the resource." - }, - "status": { - "type": "string", - "description": "[Output Only] Status of the update. Possible values are: \n- \"ROLLING_FORWARD\": The update is going forward. \n- \"ROLLING_BACK\": The update is being rolled back. \n- \"PAUSED\": The update is temporarily paused (inactive). \n- \"ROLLED_OUT\": The update is finished, all instances have been updated successfully. \n- \"ROLLED_BACK\": The update is finished, all instances have been reverted to the previous template. \n- \"CANCELLED\": The update is paused and no longer can be resumed, undefined how many instances are running in which template." - }, - "statusMessage": { - "type": "string", - "description": "[Output Only] An optional textual description of the current status of the update." - }, - "user": { - "type": "string", - "description": "[Output Only] User who requested the update, for example: user@example.com." } - } }, - "RollingUpdateList": { - "id": "RollingUpdateList", - "type": "object", - "description": "Response returned by List method.", - "properties": { - "items": { - "type": "array", - "description": "Collection of requested updates.", - "items": { - "$ref": "RollingUpdate" - } + "revision": "20161003", + "rootUrl": "https://www.googleapis.com/", + "schemas": { + "InstanceUpdate": { + "description": "Update of a single instance.", + "id": "InstanceUpdate", + "properties": { + "error": { + "description": "Errors that occurred during the instance update.", + "properties": { + "errors": { + "description": "[Output Only] The array of errors encountered while processing this operation.", + "items": { + "properties": { + "code": { + "description": "[Output Only] The error type identifier for this error.", + "type": "string" + }, + "location": { + "description": "[Output Only] Indicates the field in the request that caused the error. This property is optional.", + "type": "string" + }, + "message": { + "description": "[Output Only] An optional, human-readable error message.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + } + }, + "type": "object" + }, + "instance": { + "description": "Fully-qualified URL of the instance being updated.", + "type": "string" + }, + "status": { + "description": "Status of the instance update. Possible values are: \n- \"PENDING\": The instance update is pending execution. \n- \"ROLLING_FORWARD\": The instance update is going forward. \n- \"ROLLING_BACK\": The instance update is being rolled back. \n- \"PAUSED\": The instance update is temporarily paused (inactive). \n- \"ROLLED_OUT\": The instance update is finished, the instance is running the new template. \n- \"ROLLED_BACK\": The instance update is finished, the instance has been reverted to the previous template. \n- \"CANCELLED\": The instance update is paused and no longer can be resumed, undefined in which template the instance is running.", + "type": "string" + } + }, + "type": "object" }, - "kind": { - "type": "string", - "description": "[Output Only] Type of the resource.", - "default": "replicapoolupdater#rollingUpdateList" + "InstanceUpdateList": { + "description": "Response returned by ListInstanceUpdates method.", + "id": "InstanceUpdateList", + "properties": { + "items": { + "description": "Collection of requested instance updates.", + "items": { + "$ref": "InstanceUpdate" + }, + "type": "array" + }, + "kind": { + "default": "replicapoolupdater#instanceUpdateList", + "description": "[Output Only] Type of the resource.", + "type": "string" + }, + "nextPageToken": { + "description": "A token used to continue a truncated list request.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] The fully qualified URL for the resource.", + "type": "string" + } + }, + "type": "object" }, - "nextPageToken": { - "type": "string", - "description": "A token used to continue a truncated list request." + "Operation": { + "description": "An operation resource, used to manage asynchronous API requests.", + "id": "Operation", + "properties": { + "clientOperationId": { + "type": "string" + }, + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "endTime": { + "type": "string" + }, + "error": { + "description": "[Output Only] If errors occurred during processing of this operation, this field will be populated.", + "properties": { + "errors": { + "description": "[Output Only] The array of errors encountered while processing this operation.", + "items": { + "properties": { + "code": { + "description": "[Output Only] The error type identifier for this error.", + "type": "string" + }, + "location": { + "description": "[Output Only] Indicates the field in the request that caused the error. This property is optional.", + "type": "string" + }, + "message": { + "description": "[Output Only] An optional, human-readable error message.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + } + }, + "type": "object" + }, + "httpErrorMessage": { + "type": "string" + }, + "httpErrorStatusCode": { + "format": "int32", + "type": "integer" + }, + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "format": "uint64", + "type": "string" + }, + "insertTime": { + "description": "[Output Only] The time that this operation was requested. This is in RFC 3339 format.", + "type": "string" + }, + "kind": { + "default": "replicapoolupdater#operation", + "description": "[Output Only] Type of the resource. Always replicapoolupdater#operation for Operation resources.", + "type": "string" + }, + "name": { + "description": "[Output Only] Name of the resource.", + "type": "string" + }, + "operationType": { + "type": "string" + }, + "progress": { + "format": "int32", + "type": "integer" + }, + "region": { + "description": "[Output Only] URL of the region where the operation resides.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] The fully qualified URL for the resource.", + "type": "string" + }, + "startTime": { + "description": "[Output Only] The time that this operation was started by the server. This is in RFC 3339 format.", + "type": "string" + }, + "status": { + "description": "[Output Only] Status of the operation. Can be one of the following: \"PENDING\", \"RUNNING\", or \"DONE\".", + "type": "string" + }, + "statusMessage": { + "description": "[Output Only] An optional textual description of the current status of the operation.", + "type": "string" + }, + "targetId": { + "description": "[Output Only] Unique target id which identifies a particular incarnation of the target.", + "format": "uint64", + "type": "string" + }, + "targetLink": { + "description": "[Output Only] URL of the resource the operation is mutating.", + "type": "string" + }, + "user": { + "type": "string" + }, + "warnings": { + "items": { + "properties": { + "code": { + "description": "[Output only] The warning type identifier for this warning.", + "type": "string" + }, + "data": { + "description": "[Output only] Metadata for this warning in key:value format.", + "items": { + "properties": { + "key": { + "description": "[Output Only] Metadata key for this warning.", + "type": "string" + }, + "value": { + "description": "[Output Only] Metadata value for this warning.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output only] Optional human-readable details for this warning.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "zone": { + "description": "[Output Only] URL of the zone where the operation resides.", + "type": "string" + } + }, + "type": "object" }, - "selfLink": { - "type": "string", - "description": "[Output Only] The fully qualified URL for the resource." + "OperationList": { + "description": "Contains a list of Operation resources.", + "id": "OperationList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "[Output Only] The Operation resources.", + "items": { + "$ref": "Operation" + }, + "type": "array" + }, + "kind": { + "default": "replicapoolupdater#operationList", + "description": "[Output Only] Type of resource. Always replicapoolupdater#operationList for OperationList resources.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] A token used to continue a truncate.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] The fully qualified URL for the resource.", + "type": "string" + } + }, + "type": "object" + }, + "RollingUpdate": { + "description": "The following represents a resource describing a single update (rollout) of a group of instances to the given template.", + "id": "RollingUpdate", + "properties": { + "actionType": { + "description": "Specifies the action to take for each instance within the instance group. This can be RECREATE which will recreate each instance and is only available for managed instance groups. It can also be REBOOT which performs a soft reboot for each instance and is only available for regular (non-managed) instance groups.", + "type": "string" + }, + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "description": { + "description": "An optional textual description of the resource; provided by the client when the resource is created.", + "type": "string" + }, + "error": { + "description": "[Output Only] Errors that occurred during the rolling update.", + "properties": { + "errors": { + "description": "[Output Only] The array of errors encountered while processing this operation.", + "items": { + "properties": { + "code": { + "description": "[Output Only] The error type identifier for this error.", + "type": "string" + }, + "location": { + "description": "[Output Only] Indicates the field in the request that caused the error. This property is optional.", + "type": "string" + }, + "message": { + "description": "[Output Only] An optional, human-readable error message.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + } + }, + "type": "object" + }, + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "instanceGroup": { + "description": "Fully-qualified URL of an instance group being updated. Exactly one of instanceGroupManager and instanceGroup must be set.", + "type": "string" + }, + "instanceGroupManager": { + "description": "Fully-qualified URL of an instance group manager being updated. Exactly one of instanceGroupManager and instanceGroup must be set.", + "type": "string" + }, + "instanceTemplate": { + "description": "Fully-qualified URL of an instance template to apply.", + "type": "string" + }, + "kind": { + "default": "replicapoolupdater#rollingUpdate", + "description": "[Output Only] Type of the resource.", + "type": "string" + }, + "oldInstanceTemplate": { + "description": "Fully-qualified URL of the instance template encountered while starting the update.", + "type": "string" + }, + "policy": { + "description": "Parameters of the update process.", + "properties": { + "autoPauseAfterInstances": { + "description": "Number of instances to update before the updater pauses the rolling update.", + "format": "int32", + "type": "integer" + }, + "instanceStartupTimeoutSec": { + "description": "The maximum amount of time that the updater waits for a HEALTHY state after all of the update steps are complete. If the HEALTHY state is not received before the deadline, the instance update is considered a failure.", + "format": "int32", + "type": "integer" + }, + "maxNumConcurrentInstances": { + "description": "The maximum number of instances that can be updated simultaneously. An instance update is considered complete only after the instance is restarted and initialized.", + "format": "int32", + "type": "integer" + }, + "maxNumFailedInstances": { + "description": "The maximum number of instance updates that can fail before the group update is considered a failure. An instance update is considered failed if any of its update actions (e.g. Stop call on Instance resource in Rolling Reboot) failed with permanent failure, or if the instance is in an UNHEALTHY state after it finishes all of the update actions.", + "format": "int32", + "type": "integer" + }, + "minInstanceUpdateTimeSec": { + "description": "The minimum amount of time that the updater spends to update each instance. Update time is the time it takes to complete all update actions (e.g. Stop call on Instance resource in Rolling Reboot), reboot, and initialize. If the instance update finishes early, the updater pauses for the remainder of the time before it starts the next instance update.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "progress": { + "description": "[Output Only] An optional progress indicator that ranges from 0 to 100. There is no requirement that this be linear or support any granularity of operations. This should not be used to guess at when the update will be complete. This number should be monotonically increasing as the update progresses.", + "format": "int32", + "type": "integer" + }, + "selfLink": { + "description": "[Output Only] The fully qualified URL for the resource.", + "type": "string" + }, + "status": { + "description": "[Output Only] Status of the update. Possible values are: \n- \"ROLLING_FORWARD\": The update is going forward. \n- \"ROLLING_BACK\": The update is being rolled back. \n- \"PAUSED\": The update is temporarily paused (inactive). \n- \"ROLLED_OUT\": The update is finished, all instances have been updated successfully. \n- \"ROLLED_BACK\": The update is finished, all instances have been reverted to the previous template. \n- \"CANCELLED\": The update is paused and no longer can be resumed, undefined how many instances are running in which template.", + "type": "string" + }, + "statusMessage": { + "description": "[Output Only] An optional textual description of the current status of the update.", + "type": "string" + }, + "user": { + "description": "[Output Only] User who requested the update, for example: user@example.com.", + "type": "string" + } + }, + "type": "object" + }, + "RollingUpdateList": { + "description": "Response returned by List method.", + "id": "RollingUpdateList", + "properties": { + "items": { + "description": "Collection of requested updates.", + "items": { + "$ref": "RollingUpdate" + }, + "type": "array" + }, + "kind": { + "default": "replicapoolupdater#rollingUpdateList", + "description": "[Output Only] Type of the resource.", + "type": "string" + }, + "nextPageToken": { + "description": "A token used to continue a truncated list request.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] The fully qualified URL for the resource.", + "type": "string" + } + }, + "type": "object" } - } - } - }, - "resources": { - "rollingUpdates": { - "methods": { - "cancel": { - "id": "replicapoolupdater.rollingUpdates.cancel", - "path": "{project}/zones/{zone}/rollingUpdates/{rollingUpdate}/cancel", - "httpMethod": "POST", - "description": "Cancels an update. The update must be PAUSED before it can be cancelled. This has no effect if the update is already CANCELLED.", - "parameters": { - "project": { - "type": "string", - "description": "The Google Developers Console project name.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "rollingUpdate": { - "type": "string", - "description": "The name of the update.", - "required": true, - "location": "path" - }, - "zone": { - "type": "string", - "description": "The name of the zone in which the update's target resides.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "rollingUpdate" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/replicapool" - ] - }, - "get": { - "id": "replicapoolupdater.rollingUpdates.get", - "path": "{project}/zones/{zone}/rollingUpdates/{rollingUpdate}", - "httpMethod": "GET", - "description": "Returns information about an update.", - "parameters": { - "project": { - "type": "string", - "description": "The Google Developers Console project name.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "rollingUpdate": { - "type": "string", - "description": "The name of the update.", - "required": true, - "location": "path" - }, - "zone": { - "type": "string", - "description": "The name of the zone in which the update's target resides.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "rollingUpdate" - ], - "response": { - "$ref": "RollingUpdate" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/replicapool", - "https://www.googleapis.com/auth/replicapool.readonly" - ] - }, - "insert": { - "id": "replicapoolupdater.rollingUpdates.insert", - "path": "{project}/zones/{zone}/rollingUpdates", - "httpMethod": "POST", - "description": "Inserts and starts a new update.", - "parameters": { - "project": { - "type": "string", - "description": "The Google Developers Console project name.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "zone": { - "type": "string", - "description": "The name of the zone in which the update's target resides.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone" - ], - "request": { - "$ref": "RollingUpdate" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/replicapool" - ] - }, - "list": { - "id": "replicapoolupdater.rollingUpdates.list", - "path": "{project}/zones/{zone}/rollingUpdates", - "httpMethod": "GET", - "description": "Lists recent updates for a given managed instance group, in reverse chronological order and paginated format.", - "parameters": { - "filter": { - "type": "string", - "description": "Optional. Filter expression for filtering listed resources.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "Optional. Maximum count of results to be returned. Maximum value is 500 and default value is 500.", - "default": "500", - "format": "uint32", - "minimum": "0", - "maximum": "500", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Optional. Tag returned by a previous list request truncated by maxResults. Used to continue a previous list request.", - "location": "query" - }, - "project": { - "type": "string", - "description": "The Google Developers Console project name.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "zone": { - "type": "string", - "description": "The name of the zone in which the update's target resides.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone" - ], - "response": { - "$ref": "RollingUpdateList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/replicapool", - "https://www.googleapis.com/auth/replicapool.readonly" - ] - }, - "listInstanceUpdates": { - "id": "replicapoolupdater.rollingUpdates.listInstanceUpdates", - "path": "{project}/zones/{zone}/rollingUpdates/{rollingUpdate}/instanceUpdates", - "httpMethod": "GET", - "description": "Lists the current status for each instance within a given update.", - "parameters": { - "filter": { - "type": "string", - "description": "Optional. Filter expression for filtering listed resources.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "Optional. Maximum count of results to be returned. Maximum value is 500 and default value is 500.", - "default": "500", - "format": "uint32", - "minimum": "0", - "maximum": "500", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Optional. Tag returned by a previous list request truncated by maxResults. Used to continue a previous list request.", - "location": "query" - }, - "project": { - "type": "string", - "description": "The Google Developers Console project name.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "rollingUpdate": { - "type": "string", - "description": "The name of the update.", - "required": true, - "location": "path" - }, - "zone": { - "type": "string", - "description": "The name of the zone in which the update's target resides.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "rollingUpdate" - ], - "response": { - "$ref": "InstanceUpdateList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/replicapool", - "https://www.googleapis.com/auth/replicapool.readonly" - ] - }, - "pause": { - "id": "replicapoolupdater.rollingUpdates.pause", - "path": "{project}/zones/{zone}/rollingUpdates/{rollingUpdate}/pause", - "httpMethod": "POST", - "description": "Pauses the update in state from ROLLING_FORWARD or ROLLING_BACK. Has no effect if invoked when the state of the update is PAUSED.", - "parameters": { - "project": { - "type": "string", - "description": "The Google Developers Console project name.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "rollingUpdate": { - "type": "string", - "description": "The name of the update.", - "required": true, - "location": "path" - }, - "zone": { - "type": "string", - "description": "The name of the zone in which the update's target resides.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "rollingUpdate" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/replicapool" - ] - }, - "resume": { - "id": "replicapoolupdater.rollingUpdates.resume", - "path": "{project}/zones/{zone}/rollingUpdates/{rollingUpdate}/resume", - "httpMethod": "POST", - "description": "Continues an update in PAUSED state. Has no effect if invoked when the state of the update is ROLLED_OUT.", - "parameters": { - "project": { - "type": "string", - "description": "The Google Developers Console project name.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "rollingUpdate": { - "type": "string", - "description": "The name of the update.", - "required": true, - "location": "path" - }, - "zone": { - "type": "string", - "description": "The name of the zone in which the update's target resides.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "rollingUpdate" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/replicapool" - ] - }, - "rollback": { - "id": "replicapoolupdater.rollingUpdates.rollback", - "path": "{project}/zones/{zone}/rollingUpdates/{rollingUpdate}/rollback", - "httpMethod": "POST", - "description": "Rolls back the update in state from ROLLING_FORWARD or PAUSED. Has no effect if invoked when the state of the update is ROLLED_BACK.", - "parameters": { - "project": { - "type": "string", - "description": "The Google Developers Console project name.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "rollingUpdate": { - "type": "string", - "description": "The name of the update.", - "required": true, - "location": "path" - }, - "zone": { - "type": "string", - "description": "The name of the zone in which the update's target resides.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "rollingUpdate" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/replicapool" - ] - } - } }, - "zoneOperations": { - "methods": { - "get": { - "id": "replicapoolupdater.zoneOperations.get", - "path": "{project}/zones/{zone}/operations/{operation}", - "httpMethod": "GET", - "description": "Retrieves the specified zone-specific operation resource.", - "parameters": { - "operation": { - "type": "string", - "description": "Name of the operation resource to return.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Name of the project scoping this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "zone": { - "type": "string", - "description": "Name of the zone scoping this request.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "operation" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/replicapool" - ] - }, - "list": { - "id": "replicapoolupdater.zoneOperations.list", - "path": "{project}/zones/{zone}/operations", - "httpMethod": "GET", - "description": "Retrieves the list of Operation resources contained within the specified zone.", - "parameters": { - "filter": { - "type": "string", - "description": "Optional. Filter expression for filtering listed resources.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "Optional. Maximum count of results to be returned. Maximum value is 500 and default value is 500.", - "default": "500", - "format": "uint32", - "minimum": "0", - "maximum": "500", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Optional. Tag returned by a previous list request truncated by maxResults. Used to continue a previous list request.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Name of the project scoping this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "zone": { - "type": "string", - "description": "Name of the zone scoping this request.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone" - ], - "response": { - "$ref": "OperationList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/replicapool" - ] - } - } - } - } -} + "servicePath": "replicapoolupdater/v1beta1/projects/", + "title": "Google Compute Engine Instance Group Updater API", + "version": "v1beta1" +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/reseller/v1/reseller-api.json b/vendor/google.golang.org/api/reseller/v1/reseller-api.json index 022cd0be8..324943a52 100644 --- a/vendor/google.golang.org/api/reseller/v1/reseller-api.json +++ b/vendor/google.golang.org/api/reseller/v1/reseller-api.json @@ -1,933 +1,933 @@ { - "kind": "discovery#restDescription", - "etag": "\"YWOzh2SDasdU84ArJnpYek-OMdg/X8_Q_t3uaU1QrzrqghkL9l2OAyo\"", - "discoveryVersion": "v1", - "id": "reseller:v1", - "name": "reseller", - "version": "v1", - "revision": "20170228", - "title": "Enterprise Apps Reseller API", - "description": "Creates and manages your customers and their subscriptions.", - "ownerDomain": "google.com", - "ownerName": "Google", - "icons": { - "x16": "https://www.gstatic.com/images/branding/product/1x/googleg_16dp.png", - "x32": "https://www.gstatic.com/images/branding/product/1x/googleg_32dp.png" - }, - "documentationLink": "https://developers.google.com/google-apps/reseller/", - "labels": [ - "limited_availability" - ], - "protocol": "rest", - "baseUrl": "https://www.googleapis.com/apps/reseller/v1/", - "basePath": "/apps/reseller/v1/", - "rootUrl": "https://www.googleapis.com/", - "servicePath": "apps/reseller/v1/", - "batchPath": "batch/reseller/v1", - "parameters": { - "alt": { - "type": "string", - "description": "Data format for the response.", - "default": "json", - "enum": [ - "json" - ], - "enumDescriptions": [ - "Responses with Content-Type of application/json" - ], - "location": "query" - }, - "fields": { - "type": "string", - "description": "Selector specifying which fields to include in a partial response.", - "location": "query" - }, - "key": { - "type": "string", - "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" - }, - "oauth_token": { - "type": "string", - "description": "OAuth 2.0 token for the current user.", - "location": "query" - }, - "prettyPrint": { - "type": "boolean", - "description": "Returns response with indentations and line breaks.", - "default": "true", - "location": "query" - }, - "quotaUser": { - "type": "string", - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", - "location": "query" - }, - "userIp": { - "type": "string", - "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", - "location": "query" - } - }, - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/apps.order": { - "description": "Manage users on your domain" - }, - "https://www.googleapis.com/auth/apps.order.readonly": { - "description": "Manage users on your domain" - } - } - } - }, - "schemas": { - "Address": { - "id": "Address", - "type": "object", - "description": "JSON template for address of a customer.", - "properties": { - "addressLine1": { - "type": "string", - "description": "A customer's physical address. An address can be composed of one to three lines. The addressline2 and addressLine3 are optional." - }, - "addressLine2": { - "type": "string", - "description": "Line 2 of the address." - }, - "addressLine3": { - "type": "string", - "description": "Line 3 of the address." - }, - "contactName": { - "type": "string", - "description": "The customer contact's name. This is required." - }, - "countryCode": { - "type": "string", - "description": "For countryCode information, see the ISO 3166 country code elements. Verify that country is approved for resale of Google products. This property is required when creating a new customer." - }, - "kind": { - "type": "string", - "description": "Identifies the resource as a customer address. Value: customers#address", - "default": "customers#address" - }, - "locality": { - "type": "string", - "description": "An example of a locality value is the city of San Francisco." - }, - "organizationName": { - "type": "string", - "description": "The company or company division name. This is required." - }, - "postalCode": { - "type": "string", - "description": "A postalCode example is a postal zip code such as 94043. This property is required when creating a new customer." - }, - "region": { - "type": "string", - "description": "An example of a region value is CA for the state of California." - } - } - }, - "ChangePlanRequest": { - "id": "ChangePlanRequest", - "type": "object", - "description": "JSON template for the ChangePlan rpc request.", - "properties": { - "dealCode": { - "type": "string", - "description": "Google-issued code (100 char max) for discounted pricing on subscription plans. Deal code must be included in changePlan request in order to receive discounted rate. This property is optional. If a deal code has already been added to a subscription, this property may be left empty and the existing discounted rate will still apply (if not empty, only provide the deal code that is already present on the subscription). If a deal code has never been added to a subscription and this property is left blank, regular pricing will apply." - }, - "kind": { - "type": "string", - "description": "Identifies the resource as a subscription change plan request. Value: subscriptions#changePlanRequest", - "default": "subscriptions#changePlanRequest" - }, - "planName": { - "type": "string", - "description": "The planName property is required. This is the name of the subscription's payment plan. For more information about the Google payment plans, see API concepts.\n\nPossible values are: \n- ANNUAL_MONTHLY_PAY - The annual commitment plan with monthly payments \n- ANNUAL_YEARLY_PAY - The annual commitment plan with yearly payments \n- FLEXIBLE - The flexible plan \n- TRIAL - The 30-day free trial plan" - }, - "purchaseOrderId": { - "type": "string", - "description": "This is an optional property. This purchase order (PO) information is for resellers to use for their company tracking usage. If a purchaseOrderId value is given it appears in the API responses and shows up in the invoice. The property accepts up to 80 plain text characters." - }, - "seats": { - "$ref": "Seats", - "description": "This is a required property. The seats property is the number of user seat licenses." - } - } - }, - "Customer": { - "id": "Customer", - "type": "object", - "description": "JSON template for a customer.", - "properties": { - "alternateEmail": { - "type": "string", - "description": "Like the \"Customer email\" in the reseller tools, this email is the secondary contact used if something happens to the customer's service such as service outage or a security issue. This property is required when creating a new customer and should not use the same domain as customerDomain." - }, - "customerDomain": { - "type": "string", - "description": "The customer's primary domain name string. customerDomain is required when creating a new customer. Do not include the www prefix in the domain when adding a customer." - }, - "customerDomainVerified": { - "type": "boolean", - "description": "Whether the customer's primary domain has been verified." - }, - "customerId": { - "type": "string", - "description": "This property will always be returned in a response as the unique identifier generated by Google. In a request, this property can be either the primary domain or the unique identifier generated by Google." - }, - "kind": { - "type": "string", - "description": "Identifies the resource as a customer. Value: reseller#customer", - "default": "reseller#customer" - }, - "phoneNumber": { - "type": "string", - "description": "Customer contact phone number. This can be continuous numbers, with spaces, etc. But it must be a real phone number and not, for example, \"123\". See phone local format conventions." - }, - "postalAddress": { - "$ref": "Address", - "description": "A customer's address information. Each field has a limit of 255 charcters." - }, - "resourceUiUrl": { - "type": "string", - "description": "URL to customer's Admin console dashboard. The read-only URL is generated by the API service. This is used if your client application requires the customer to complete a task in the Admin console." - } - } - }, - "RenewalSettings": { - "id": "RenewalSettings", - "type": "object", - "description": "JSON template for a subscription renewal settings.", - "properties": { - "kind": { - "type": "string", - "description": "Identifies the resource as a subscription renewal setting. Value: subscriptions#renewalSettings", - "default": "subscriptions#renewalSettings" - }, - "renewalType": { - "type": "string", - "description": "Renewal settings for the annual commitment plan. For more detailed information, see renewal options in the administrator help center. When renewing a subscription, the renewalType is a required property." - } - } - }, - "ResellernotifyGetwatchdetailsResponse": { - "id": "ResellernotifyGetwatchdetailsResponse", - "type": "object", - "description": "JSON template for resellernotify getwatchdetails response.", - "properties": { - "serviceAccountEmailAddresses": { - "type": "array", - "description": "List of registered service accounts.", - "items": { - "type": "string" - } - }, - "topicName": { - "type": "string", - "description": "Topic name of the PubSub" - } - } - }, - "ResellernotifyResource": { - "id": "ResellernotifyResource", - "type": "object", - "description": "JSON template for resellernotify response.", - "properties": { - "topicName": { - "type": "string", - "description": "Topic name of the PubSub" - } - } - }, - "Seats": { - "id": "Seats", - "type": "object", - "description": "JSON template for subscription seats.", - "properties": { - "kind": { - "type": "string", - "description": "Identifies the resource as a subscription change plan request. Value: subscriptions#seats", - "default": "subscriptions#seats" - }, - "licensedNumberOfSeats": { - "type": "integer", - "description": "Read-only field containing the current number of licensed seats for FLEXIBLE Google-Apps subscriptions and secondary subscriptions such as Google-Vault and Drive-storage.", - "format": "int32" - }, - "maximumNumberOfSeats": { - "type": "integer", - "description": "The maximumNumberOfSeats property is the maximum number of licenses that the customer can purchase. This property applies to plans other than the annual commitment plan. How a user's licenses are managed depends on the subscription's payment plan: \n- annual commitment plan (with monthly or yearly payments) — For this plan, a reseller is invoiced on the number of user licenses in the numberOfSeats property. The maximumNumberOfSeats property is a read-only property in the API's response. \n- flexible plan — For this plan, a reseller is invoiced on the actual number of users which is capped by the maximumNumberOfSeats. This is the maximum number of user licenses a customer has for user license provisioning. This quantity can be increased up to the maximum limit defined in the reseller's contract. And the minimum quantity is the current number of users in the customer account. \n- 30-day free trial plan — A subscription in a 30-day free trial is restricted to maximum 10 seats.", - "format": "int32" - }, - "numberOfSeats": { - "type": "integer", - "description": "The numberOfSeats property holds the customer's number of user licenses. How a user's licenses are managed depends on the subscription's plan: \n- annual commitment plan (with monthly or yearly pay) — For this plan, a reseller is invoiced on the number of user licenses in the numberOfSeats property. This is the maximum number of user licenses that a reseller's customer can create. The reseller can add more licenses, but once set, the numberOfSeats can not be reduced until renewal. The reseller is invoiced based on the numberOfSeats value regardless of how many of these user licenses are provisioned users. \n- flexible plan — For this plan, a reseller is invoiced on the actual number of users which is capped by the maximumNumberOfSeats. The numberOfSeats property is not used in the request or response for flexible plan customers. \n- 30-day free trial plan — The numberOfSeats property is not used in the request or response for an account in a 30-day trial.", - "format": "int32" - } - } - }, - "Subscription": { - "id": "Subscription", - "type": "object", - "description": "JSON template for a subscription.", - "properties": { - "billingMethod": { - "type": "string", - "description": "Read-only field that returns the current billing method for a subscription." - }, - "creationTime": { - "type": "string", - "description": "The creationTime property is the date when subscription was created. It is in milliseconds using the Epoch format. See an example Epoch converter.", - "format": "int64" - }, - "customerDomain": { - "type": "string", - "description": "Primary domain name of the customer" - }, - "customerId": { - "type": "string", - "description": "This property will always be returned in a response as the unique identifier generated by Google. In a request, this property can be either the primary domain or the unique identifier generated by Google." - }, - "dealCode": { - "type": "string", - "description": "Google-issued code (100 char max) for discounted pricing on subscription plans. Deal code must be included in insert requests in order to receive discounted rate. This property is optional, regular pricing applies if left empty." - }, - "kind": { - "type": "string", - "description": "Identifies the resource as a Subscription. Value: reseller#subscription", - "default": "reseller#subscription" - }, - "plan": { - "type": "object", - "description": "The plan property is required. In this version of the API, the G Suite plans are the flexible plan, annual commitment plan, and the 30-day free trial plan. For more information about the API\"s payment plans, see the API concepts.", - "properties": { - "commitmentInterval": { - "type": "object", - "description": "In this version of the API, annual commitment plan's interval is one year.", - "properties": { - "endTime": { - "type": "string", - "description": "An annual commitment plan's interval's endTime in milliseconds using the UNIX Epoch format. See an example Epoch converter.", - "format": "int64" + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/apps.order": { + "description": "Manage users on your domain" }, - "startTime": { - "type": "string", - "description": "An annual commitment plan's interval's startTime in milliseconds using UNIX Epoch format. See an example Epoch converter.", - "format": "int64" + "https://www.googleapis.com/auth/apps.order.readonly": { + "description": "Manage users on your domain" } - } - }, - "isCommitmentPlan": { - "type": "boolean", - "description": "The isCommitmentPlan property's boolean value identifies the plan as an annual commitment plan:\n- true — The subscription's plan is an annual commitment plan.\n- false — The plan is not an annual commitment plan." - }, - "planName": { - "type": "string", - "description": "The planName property is required. This is the name of the subscription's plan. For more information about the Google payment plans, see the API concepts.\n\nPossible values are: \n- ANNUAL_MONTHLY_PAY — The annual commitment plan with monthly payments \n- ANNUAL_YEARLY_PAY — The annual commitment plan with yearly payments \n- FLEXIBLE — The flexible plan \n- TRIAL — The 30-day free trial plan. A subscription in trial will be suspended after the 30th free day if no payment plan is assigned. Calling changePlan will assign a payment plan to a trial but will not activate the plan. A trial will automatically begin its assigned payment plan after its 30th free day or immediately after calling startPaidService." } - } - }, - "purchaseOrderId": { - "type": "string", - "description": "This is an optional property. This purchase order (PO) information is for resellers to use for their company tracking usage. If a purchaseOrderId value is given it appears in the API responses and shows up in the invoice. The property accepts up to 80 plain text characters." - }, - "renewalSettings": { - "$ref": "RenewalSettings", - "description": "Renewal settings for the annual commitment plan. For more detailed information, see renewal options in the administrator help center." - }, - "resourceUiUrl": { - "type": "string", - "description": "URL to customer's Subscriptions page in the Admin console. The read-only URL is generated by the API service. This is used if your client application requires the customer to complete a task using the Subscriptions page in the Admin console." - }, - "seats": { - "$ref": "Seats", - "description": "This is a required property. The number and limit of user seat licenses in the plan." - }, - "skuId": { - "type": "string", - "description": "A required property. The skuId is a unique system identifier for a product's SKU assigned to a customer in the subscription. For products and SKUs available in this version of the API, see Product and SKU IDs." - }, - "skuName": { - "type": "string", - "description": "Read-only external display name for a product's SKU assigned to a customer in the subscription. SKU names are subject to change at Google's discretion. For products and SKUs available in this version of the API, see Product and SKU IDs." - }, - "status": { - "type": "string", - "description": "This is an optional property." - }, - "subscriptionId": { - "type": "string", - "description": "The subscriptionId is the subscription identifier and is unique for each customer. This is a required property. Since a subscriptionId changes when a subscription is updated, we recommend not using this ID as a key for persistent data. Use the subscriptionId as described in retrieve all reseller subscriptions." - }, - "suspensionReasons": { - "type": "array", - "description": "Read-only field containing an enumerable of all the current suspension reasons for a subscription. It is possible for a subscription to have many concurrent, overlapping suspension reasons. A subscription's STATUS is SUSPENDED until all pending suspensions are removed.\n\nPossible options include: \n- PENDING_TOS_ACCEPTANCE - The customer has not logged in and accepted the G Suite Resold Terms of Services. \n- RENEWAL_WITH_TYPE_CANCEL - The customer's commitment ended and their service was cancelled at the end of their term. \n- RESELLER_INITIATED - A manual suspension invoked by a Reseller. \n- TRIAL_ENDED - The customer's trial expired without a plan selected. \n- OTHER - The customer is suspended for an internal Google reason (e.g. abuse or otherwise).", - "items": { - "type": "string" - } - }, - "transferInfo": { - "type": "object", - "description": "Read-only transfer related information for the subscription. For more information, see retrieve transferable subscriptions for a customer.", - "properties": { - "minimumTransferableSeats": { - "type": "integer", - "description": "When inserting a subscription, this is the minimum number of seats listed in the transfer order for this product. For example, if the customer has 20 users, the reseller cannot place a transfer order of 15 seats. The minimum is 20 seats.", - "format": "int32" - }, - "transferabilityExpirationTime": { - "type": "string", - "description": "The time when transfer token or intent to transfer will expire. The time is in milliseconds using UNIX Epoch format.", - "format": "int64" - } - } - }, - "trialSettings": { - "type": "object", - "description": "The G Suite annual commitment and flexible payment plans can be in a 30-day free trial. For more information, see the API concepts.", - "properties": { - "isInTrial": { - "type": "boolean", - "description": "Determines if a subscription's plan is in a 30-day free trial or not:\n- true — The plan is in trial.\n- false — The plan is not in trial." - }, - "trialEndTime": { - "type": "string", - "description": "Date when the trial ends. The value is in milliseconds using the UNIX Epoch format. See an example Epoch converter.", - "format": "int64" - } - } } - } }, - "Subscriptions": { - "id": "Subscriptions", - "type": "object", - "description": "JSON template for a subscription list.", - "properties": { - "kind": { - "type": "string", - "description": "Identifies the resource as a collection of subscriptions. Value: reseller#subscriptions", - "default": "reseller#subscriptions" + "basePath": "/apps/reseller/v1/", + "baseUrl": "https://www.googleapis.com/apps/reseller/v1/", + "batchPath": "batch/reseller/v1", + "description": "Creates and manages your customers and their subscriptions.", + "discoveryVersion": "v1", + "documentationLink": "https://developers.google.com/google-apps/reseller/", + "etag": "\"-iA1DTNe4s-I6JZXPt1t1Ypy8IU/X8_Q_t3uaU1QrzrqghkL9l2OAyo\"", + "icons": { + "x16": "https://www.gstatic.com/images/branding/product/1x/googleg_16dp.png", + "x32": "https://www.gstatic.com/images/branding/product/1x/googleg_32dp.png" + }, + "id": "reseller:v1", + "kind": "discovery#restDescription", + "labels": [ + "limited_availability" + ], + "name": "reseller", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "alt": { + "default": "json", + "description": "Data format for the response.", + "enum": [ + "json" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json" + ], + "location": "query", + "type": "string" }, - "nextPageToken": { - "type": "string", - "description": "The continuation token, used to page through large result sets. Provide this value in a subsequent request to return the next page of results." + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "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.", + "location": "query", + "type": "string" + }, + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", + "location": "query", + "type": "string" + }, + "userIp": { + "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", + "location": "query", + "type": "string" + } + }, + "protocol": "rest", + "resources": { + "customers": { + "methods": { + "get": { + "description": "Get a customer account.", + "httpMethod": "GET", + "id": "reseller.customers.get", + "parameterOrder": [ + "customerId" + ], + "parameters": { + "customerId": { + "description": "Either the customer's primary domain name or the customer's unique identifier. If using the domain name, we do not recommend using a customerId as a key for persistent data. If the domain name for a customerId is changed, the Google system automatically updates.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "customers/{customerId}", + "response": { + "$ref": "Customer" + }, + "scopes": [ + "https://www.googleapis.com/auth/apps.order", + "https://www.googleapis.com/auth/apps.order.readonly" + ] + }, + "insert": { + "description": "Order a new customer's account.", + "httpMethod": "POST", + "id": "reseller.customers.insert", + "parameters": { + "customerAuthToken": { + "description": "The customerAuthToken query string is required when creating a resold account that transfers a direct customer's subscription or transfers another reseller customer's subscription to your reseller management. This is a hexadecimal authentication token needed to complete the subscription transfer. For more information, see the administrator help center.", + "location": "query", + "type": "string" + } + }, + "path": "customers", + "request": { + "$ref": "Customer" + }, + "response": { + "$ref": "Customer" + }, + "scopes": [ + "https://www.googleapis.com/auth/apps.order" + ] + }, + "patch": { + "description": "Update a customer account's settings. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "reseller.customers.patch", + "parameterOrder": [ + "customerId" + ], + "parameters": { + "customerId": { + "description": "Either the customer's primary domain name or the customer's unique identifier. If using the domain name, we do not recommend using a customerId as a key for persistent data. If the domain name for a customerId is changed, the Google system automatically updates.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "customers/{customerId}", + "request": { + "$ref": "Customer" + }, + "response": { + "$ref": "Customer" + }, + "scopes": [ + "https://www.googleapis.com/auth/apps.order" + ] + }, + "update": { + "description": "Update a customer account's settings.", + "httpMethod": "PUT", + "id": "reseller.customers.update", + "parameterOrder": [ + "customerId" + ], + "parameters": { + "customerId": { + "description": "Either the customer's primary domain name or the customer's unique identifier. If using the domain name, we do not recommend using a customerId as a key for persistent data. If the domain name for a customerId is changed, the Google system automatically updates.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "customers/{customerId}", + "request": { + "$ref": "Customer" + }, + "response": { + "$ref": "Customer" + }, + "scopes": [ + "https://www.googleapis.com/auth/apps.order" + ] + } + } + }, + "resellernotify": { + "methods": { + "getwatchdetails": { + "description": "Returns all the details of the watch corresponding to the reseller.", + "httpMethod": "GET", + "id": "reseller.resellernotify.getwatchdetails", + "path": "resellernotify/getwatchdetails", + "response": { + "$ref": "ResellernotifyGetwatchdetailsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/apps.order", + "https://www.googleapis.com/auth/apps.order.readonly" + ] + }, + "register": { + "description": "Registers a Reseller for receiving notifications.", + "httpMethod": "POST", + "id": "reseller.resellernotify.register", + "parameters": { + "serviceAccountEmailAddress": { + "description": "The service account which will own the created Cloud-PubSub topic.", + "location": "query", + "type": "string" + } + }, + "path": "resellernotify/register", + "response": { + "$ref": "ResellernotifyResource" + }, + "scopes": [ + "https://www.googleapis.com/auth/apps.order" + ] + }, + "unregister": { + "description": "Unregisters a Reseller for receiving notifications.", + "httpMethod": "POST", + "id": "reseller.resellernotify.unregister", + "parameters": { + "serviceAccountEmailAddress": { + "description": "The service account which owns the Cloud-PubSub topic.", + "location": "query", + "type": "string" + } + }, + "path": "resellernotify/unregister", + "response": { + "$ref": "ResellernotifyResource" + }, + "scopes": [ + "https://www.googleapis.com/auth/apps.order" + ] + } + } }, "subscriptions": { - "type": "array", - "description": "The subscriptions in this page of results.", - "items": { - "$ref": "Subscription" - } + "methods": { + "activate": { + "description": "Activates a subscription previously suspended by the reseller", + "httpMethod": "POST", + "id": "reseller.subscriptions.activate", + "parameterOrder": [ + "customerId", + "subscriptionId" + ], + "parameters": { + "customerId": { + "description": "Either the customer's primary domain name or the customer's unique identifier. If using the domain name, we do not recommend using a customerId as a key for persistent data. If the domain name for a customerId is changed, the Google system automatically updates.", + "location": "path", + "required": true, + "type": "string" + }, + "subscriptionId": { + "description": "This is a required property. The subscriptionId is the subscription identifier and is unique for each customer. Since a subscriptionId changes when a subscription is updated, we recommend to not use this ID as a key for persistent data. And the subscriptionId can be found using the retrieve all reseller subscriptions method.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "customers/{customerId}/subscriptions/{subscriptionId}/activate", + "response": { + "$ref": "Subscription" + }, + "scopes": [ + "https://www.googleapis.com/auth/apps.order" + ] + }, + "changePlan": { + "description": "Update a subscription plan. Use this method to update a plan for a 30-day trial or a flexible plan subscription to an annual commitment plan with monthly or yearly payments.", + "httpMethod": "POST", + "id": "reseller.subscriptions.changePlan", + "parameterOrder": [ + "customerId", + "subscriptionId" + ], + "parameters": { + "customerId": { + "description": "Either the customer's primary domain name or the customer's unique identifier. If using the domain name, we do not recommend using a customerId as a key for persistent data. If the domain name for a customerId is changed, the Google system automatically updates.", + "location": "path", + "required": true, + "type": "string" + }, + "subscriptionId": { + "description": "This is a required property. The subscriptionId is the subscription identifier and is unique for each customer. Since a subscriptionId changes when a subscription is updated, we recommend to not use this ID as a key for persistent data. And the subscriptionId can be found using the retrieve all reseller subscriptions method.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "customers/{customerId}/subscriptions/{subscriptionId}/changePlan", + "request": { + "$ref": "ChangePlanRequest" + }, + "response": { + "$ref": "Subscription" + }, + "scopes": [ + "https://www.googleapis.com/auth/apps.order" + ] + }, + "changeRenewalSettings": { + "description": "Update a user license's renewal settings. This is applicable for accounts with annual commitment plans only.", + "httpMethod": "POST", + "id": "reseller.subscriptions.changeRenewalSettings", + "parameterOrder": [ + "customerId", + "subscriptionId" + ], + "parameters": { + "customerId": { + "description": "Either the customer's primary domain name or the customer's unique identifier. If using the domain name, we do not recommend using a customerId as a key for persistent data. If the domain name for a customerId is changed, the Google system automatically updates.", + "location": "path", + "required": true, + "type": "string" + }, + "subscriptionId": { + "description": "This is a required property. The subscriptionId is the subscription identifier and is unique for each customer. Since a subscriptionId changes when a subscription is updated, we recommend to not use this ID as a key for persistent data. And the subscriptionId can be found using the retrieve all reseller subscriptions method.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "customers/{customerId}/subscriptions/{subscriptionId}/changeRenewalSettings", + "request": { + "$ref": "RenewalSettings" + }, + "response": { + "$ref": "Subscription" + }, + "scopes": [ + "https://www.googleapis.com/auth/apps.order" + ] + }, + "changeSeats": { + "description": "Update a subscription's user license settings.", + "httpMethod": "POST", + "id": "reseller.subscriptions.changeSeats", + "parameterOrder": [ + "customerId", + "subscriptionId" + ], + "parameters": { + "customerId": { + "description": "Either the customer's primary domain name or the customer's unique identifier. If using the domain name, we do not recommend using a customerId as a key for persistent data. If the domain name for a customerId is changed, the Google system automatically updates.", + "location": "path", + "required": true, + "type": "string" + }, + "subscriptionId": { + "description": "This is a required property. The subscriptionId is the subscription identifier and is unique for each customer. Since a subscriptionId changes when a subscription is updated, we recommend to not use this ID as a key for persistent data. And the subscriptionId can be found using the retrieve all reseller subscriptions method.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "customers/{customerId}/subscriptions/{subscriptionId}/changeSeats", + "request": { + "$ref": "Seats" + }, + "response": { + "$ref": "Subscription" + }, + "scopes": [ + "https://www.googleapis.com/auth/apps.order" + ] + }, + "delete": { + "description": "Cancel, suspend or transfer a subscription to direct.", + "httpMethod": "DELETE", + "id": "reseller.subscriptions.delete", + "parameterOrder": [ + "customerId", + "subscriptionId", + "deletionType" + ], + "parameters": { + "customerId": { + "description": "Either the customer's primary domain name or the customer's unique identifier. If using the domain name, we do not recommend using a customerId as a key for persistent data. If the domain name for a customerId is changed, the Google system automatically updates.", + "location": "path", + "required": true, + "type": "string" + }, + "deletionType": { + "description": "The deletionType query string enables the cancellation, downgrade, or suspension of a subscription.", + "enum": [ + "cancel", + "downgrade", + "suspend", + "transfer_to_direct" + ], + "enumDescriptions": [ + "Cancels the subscription immediately. This does not apply to a G Suite subscription.", + "Downgrades a G Suite subscription to a Google Apps Free edition subscription only if the customer was initially subscribed to a Google Apps Free edition (also known as the Standard edition). Once downgraded, the customer no longer has access to the previous G Suite subscription and is no longer managed by the reseller.\n\nA G Suite subscription's downgrade cannot be invoked if an active or suspended Google Drive or Google Vault subscription is present. The Google Drive or Google Vault subscription must be cancelled before the G Suite subscription's downgrade is invoked.\n\nThe downgrade deletionType does not apply to other products or G Suite SKUs.", + "(DEPRECATED) The G Suite account is suspended for four days and then cancelled. Once suspended, an administrator has access to the suspended account, but the account users can not access their services. A suspension can be lifted, using the reseller tools.\n\nA G Suite subscription's suspension can not be invoked if an active or suspended Google Drive or Google Vault subscription is present. The Google Drive or Google Vault subscription must be cancelled before the G Suite subscription's suspension is invoked.", + "Transfers a subscription directly to Google.  The customer is immediately transferred to a direct billing relationship with Google and is given a short amount of time with no service interruption. The customer can then choose to set up billing directly with Google by using a credit card, or they can transfer to another reseller." + ], + "location": "query", + "required": true, + "type": "string" + }, + "subscriptionId": { + "description": "This is a required property. The subscriptionId is the subscription identifier and is unique for each customer. Since a subscriptionId changes when a subscription is updated, we recommend to not use this ID as a key for persistent data. And the subscriptionId can be found using the retrieve all reseller subscriptions method.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "customers/{customerId}/subscriptions/{subscriptionId}", + "scopes": [ + "https://www.googleapis.com/auth/apps.order" + ] + }, + "get": { + "description": "Get a specific subscription.", + "httpMethod": "GET", + "id": "reseller.subscriptions.get", + "parameterOrder": [ + "customerId", + "subscriptionId" + ], + "parameters": { + "customerId": { + "description": "Either the customer's primary domain name or the customer's unique identifier. If using the domain name, we do not recommend using a customerId as a key for persistent data. If the domain name for a customerId is changed, the Google system automatically updates.", + "location": "path", + "required": true, + "type": "string" + }, + "subscriptionId": { + "description": "This is a required property. The subscriptionId is the subscription identifier and is unique for each customer. Since a subscriptionId changes when a subscription is updated, we recommend to not use this ID as a key for persistent data. And the subscriptionId can be found using the retrieve all reseller subscriptions method.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "customers/{customerId}/subscriptions/{subscriptionId}", + "response": { + "$ref": "Subscription" + }, + "scopes": [ + "https://www.googleapis.com/auth/apps.order", + "https://www.googleapis.com/auth/apps.order.readonly" + ] + }, + "insert": { + "description": "Create or transfer a subscription.", + "httpMethod": "POST", + "id": "reseller.subscriptions.insert", + "parameterOrder": [ + "customerId" + ], + "parameters": { + "customerAuthToken": { + "description": "The customerAuthToken query string is required when creating a resold account that transfers a direct customer's subscription or transfers another reseller customer's subscription to your reseller management. This is a hexadecimal authentication token needed to complete the subscription transfer. For more information, see the administrator help center.", + "location": "query", + "type": "string" + }, + "customerId": { + "description": "Either the customer's primary domain name or the customer's unique identifier. If using the domain name, we do not recommend using a customerId as a key for persistent data. If the domain name for a customerId is changed, the Google system automatically updates.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "customers/{customerId}/subscriptions", + "request": { + "$ref": "Subscription" + }, + "response": { + "$ref": "Subscription" + }, + "scopes": [ + "https://www.googleapis.com/auth/apps.order" + ] + }, + "list": { + "description": "List of subscriptions managed by the reseller. The list can be all subscriptions, all of a customer's subscriptions, or all of a customer's transferable subscriptions.", + "httpMethod": "GET", + "id": "reseller.subscriptions.list", + "parameters": { + "customerAuthToken": { + "description": "The customerAuthToken query string is required when creating a resold account that transfers a direct customer's subscription or transfers another reseller customer's subscription to your reseller management. This is a hexadecimal authentication token needed to complete the subscription transfer. For more information, see the administrator help center.", + "location": "query", + "type": "string" + }, + "customerId": { + "description": "Either the customer's primary domain name or the customer's unique identifier. If using the domain name, we do not recommend using a customerId as a key for persistent data. If the domain name for a customerId is changed, the Google system automatically updates.", + "location": "query", + "type": "string" + }, + "customerNamePrefix": { + "description": "When retrieving all of your subscriptions and filtering for specific customers, you can enter a prefix for a customer name. Using an example customer group that includes exam.com, example20.com and example.com: \n- exa -- Returns all customer names that start with 'exa' which could include exam.com, example20.com, and example.com. A name prefix is similar to using a regular expression's asterisk, exa*. \n- example -- Returns example20.com and example.com.", + "location": "query", + "type": "string" + }, + "maxResults": { + "description": "When retrieving a large list, the maxResults is the maximum number of results per page. The nextPageToken value takes you to the next page. The default is 20.", + "format": "uint32", + "location": "query", + "maximum": "100", + "minimum": "1", + "type": "integer" + }, + "pageToken": { + "description": "Token to specify next page in the list", + "location": "query", + "type": "string" + } + }, + "path": "subscriptions", + "response": { + "$ref": "Subscriptions" + }, + "scopes": [ + "https://www.googleapis.com/auth/apps.order", + "https://www.googleapis.com/auth/apps.order.readonly" + ] + }, + "startPaidService": { + "description": "Immediately move a 30-day free trial subscription to a paid service subscription.", + "httpMethod": "POST", + "id": "reseller.subscriptions.startPaidService", + "parameterOrder": [ + "customerId", + "subscriptionId" + ], + "parameters": { + "customerId": { + "description": "Either the customer's primary domain name or the customer's unique identifier. If using the domain name, we do not recommend using a customerId as a key for persistent data. If the domain name for a customerId is changed, the Google system automatically updates.", + "location": "path", + "required": true, + "type": "string" + }, + "subscriptionId": { + "description": "This is a required property. The subscriptionId is the subscription identifier and is unique for each customer. Since a subscriptionId changes when a subscription is updated, we recommend to not use this ID as a key for persistent data. And the subscriptionId can be found using the retrieve all reseller subscriptions method.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "customers/{customerId}/subscriptions/{subscriptionId}/startPaidService", + "response": { + "$ref": "Subscription" + }, + "scopes": [ + "https://www.googleapis.com/auth/apps.order" + ] + }, + "suspend": { + "description": "Suspends an active subscription.", + "httpMethod": "POST", + "id": "reseller.subscriptions.suspend", + "parameterOrder": [ + "customerId", + "subscriptionId" + ], + "parameters": { + "customerId": { + "description": "Either the customer's primary domain name or the customer's unique identifier. If using the domain name, we do not recommend using a customerId as a key for persistent data. If the domain name for a customerId is changed, the Google system automatically updates.", + "location": "path", + "required": true, + "type": "string" + }, + "subscriptionId": { + "description": "This is a required property. The subscriptionId is the subscription identifier and is unique for each customer. Since a subscriptionId changes when a subscription is updated, we recommend to not use this ID as a key for persistent data. And the subscriptionId can be found using the retrieve all reseller subscriptions method.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "customers/{customerId}/subscriptions/{subscriptionId}/suspend", + "response": { + "$ref": "Subscription" + }, + "scopes": [ + "https://www.googleapis.com/auth/apps.order" + ] + } + } } - } - } - }, - "resources": { - "customers": { - "methods": { - "get": { - "id": "reseller.customers.get", - "path": "customers/{customerId}", - "httpMethod": "GET", - "description": "Get a customer account.", - "parameters": { - "customerId": { - "type": "string", - "description": "Either the customer's primary domain name or the customer's unique identifier. If using the domain name, we do not recommend using a customerId as a key for persistent data. If the domain name for a customerId is changed, the Google system automatically updates.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "customerId" - ], - "response": { - "$ref": "Customer" - }, - "scopes": [ - "https://www.googleapis.com/auth/apps.order", - "https://www.googleapis.com/auth/apps.order.readonly" - ] - }, - "insert": { - "id": "reseller.customers.insert", - "path": "customers", - "httpMethod": "POST", - "description": "Order a new customer's account.", - "parameters": { - "customerAuthToken": { - "type": "string", - "description": "The customerAuthToken query string is required when creating a resold account that transfers a direct customer's subscription or transfers another reseller customer's subscription to your reseller management. This is a hexadecimal authentication token needed to complete the subscription transfer. For more information, see the administrator help center.", - "location": "query" - } - }, - "request": { - "$ref": "Customer" - }, - "response": { - "$ref": "Customer" - }, - "scopes": [ - "https://www.googleapis.com/auth/apps.order" - ] - }, - "patch": { - "id": "reseller.customers.patch", - "path": "customers/{customerId}", - "httpMethod": "PATCH", - "description": "Update a customer account's settings. This method supports patch semantics.", - "parameters": { - "customerId": { - "type": "string", - "description": "Either the customer's primary domain name or the customer's unique identifier. If using the domain name, we do not recommend using a customerId as a key for persistent data. If the domain name for a customerId is changed, the Google system automatically updates.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "customerId" - ], - "request": { - "$ref": "Customer" - }, - "response": { - "$ref": "Customer" - }, - "scopes": [ - "https://www.googleapis.com/auth/apps.order" - ] - }, - "update": { - "id": "reseller.customers.update", - "path": "customers/{customerId}", - "httpMethod": "PUT", - "description": "Update a customer account's settings.", - "parameters": { - "customerId": { - "type": "string", - "description": "Either the customer's primary domain name or the customer's unique identifier. If using the domain name, we do not recommend using a customerId as a key for persistent data. If the domain name for a customerId is changed, the Google system automatically updates.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "customerId" - ], - "request": { - "$ref": "Customer" - }, - "response": { - "$ref": "Customer" - }, - "scopes": [ - "https://www.googleapis.com/auth/apps.order" - ] - } - } }, - "resellernotify": { - "methods": { - "getwatchdetails": { - "id": "reseller.resellernotify.getwatchdetails", - "path": "resellernotify/getwatchdetails", - "httpMethod": "GET", - "description": "Returns all the details of the watch corresponding to the reseller.", - "response": { - "$ref": "ResellernotifyGetwatchdetailsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/apps.order", - "https://www.googleapis.com/auth/apps.order.readonly" - ] + "revision": "20170228", + "rootUrl": "https://www.googleapis.com/", + "schemas": { + "Address": { + "description": "JSON template for address of a customer.", + "id": "Address", + "properties": { + "addressLine1": { + "description": "A customer's physical address. An address can be composed of one to three lines. The addressline2 and addressLine3 are optional.", + "type": "string" + }, + "addressLine2": { + "description": "Line 2 of the address.", + "type": "string" + }, + "addressLine3": { + "description": "Line 3 of the address.", + "type": "string" + }, + "contactName": { + "description": "The customer contact's name. This is required.", + "type": "string" + }, + "countryCode": { + "description": "For countryCode information, see the ISO 3166 country code elements. Verify that country is approved for resale of Google products. This property is required when creating a new customer.", + "type": "string" + }, + "kind": { + "default": "customers#address", + "description": "Identifies the resource as a customer address. Value: customers#address", + "type": "string" + }, + "locality": { + "description": "An example of a locality value is the city of San Francisco.", + "type": "string" + }, + "organizationName": { + "description": "The company or company division name. This is required.", + "type": "string" + }, + "postalCode": { + "description": "A postalCode example is a postal zip code such as 94043. This property is required when creating a new customer.", + "type": "string" + }, + "region": { + "description": "An example of a region value is CA for the state of California.", + "type": "string" + } + }, + "type": "object" }, - "register": { - "id": "reseller.resellernotify.register", - "path": "resellernotify/register", - "httpMethod": "POST", - "description": "Registers a Reseller for receiving notifications.", - "parameters": { - "serviceAccountEmailAddress": { - "type": "string", - "description": "The service account which will own the created Cloud-PubSub topic.", - "location": "query" - } - }, - "response": { - "$ref": "ResellernotifyResource" - }, - "scopes": [ - "https://www.googleapis.com/auth/apps.order" - ] + "ChangePlanRequest": { + "description": "JSON template for the ChangePlan rpc request.", + "id": "ChangePlanRequest", + "properties": { + "dealCode": { + "description": "Google-issued code (100 char max) for discounted pricing on subscription plans. Deal code must be included in changePlan request in order to receive discounted rate. This property is optional. If a deal code has already been added to a subscription, this property may be left empty and the existing discounted rate will still apply (if not empty, only provide the deal code that is already present on the subscription). If a deal code has never been added to a subscription and this property is left blank, regular pricing will apply.", + "type": "string" + }, + "kind": { + "default": "subscriptions#changePlanRequest", + "description": "Identifies the resource as a subscription change plan request. Value: subscriptions#changePlanRequest", + "type": "string" + }, + "planName": { + "description": "The planName property is required. This is the name of the subscription's payment plan. For more information about the Google payment plans, see API concepts.\n\nPossible values are: \n- ANNUAL_MONTHLY_PAY - The annual commitment plan with monthly payments \n- ANNUAL_YEARLY_PAY - The annual commitment plan with yearly payments \n- FLEXIBLE - The flexible plan \n- TRIAL - The 30-day free trial plan", + "type": "string" + }, + "purchaseOrderId": { + "description": "This is an optional property. This purchase order (PO) information is for resellers to use for their company tracking usage. If a purchaseOrderId value is given it appears in the API responses and shows up in the invoice. The property accepts up to 80 plain text characters.", + "type": "string" + }, + "seats": { + "$ref": "Seats", + "description": "This is a required property. The seats property is the number of user seat licenses." + } + }, + "type": "object" }, - "unregister": { - "id": "reseller.resellernotify.unregister", - "path": "resellernotify/unregister", - "httpMethod": "POST", - "description": "Unregisters a Reseller for receiving notifications.", - "parameters": { - "serviceAccountEmailAddress": { - "type": "string", - "description": "The service account which owns the Cloud-PubSub topic.", - "location": "query" - } - }, - "response": { - "$ref": "ResellernotifyResource" - }, - "scopes": [ - "https://www.googleapis.com/auth/apps.order" - ] + "Customer": { + "description": "JSON template for a customer.", + "id": "Customer", + "properties": { + "alternateEmail": { + "description": "Like the \"Customer email\" in the reseller tools, this email is the secondary contact used if something happens to the customer's service such as service outage or a security issue. This property is required when creating a new customer and should not use the same domain as customerDomain.", + "type": "string" + }, + "customerDomain": { + "description": "The customer's primary domain name string. customerDomain is required when creating a new customer. Do not include the www prefix in the domain when adding a customer.", + "type": "string" + }, + "customerDomainVerified": { + "description": "Whether the customer's primary domain has been verified.", + "type": "boolean" + }, + "customerId": { + "description": "This property will always be returned in a response as the unique identifier generated by Google. In a request, this property can be either the primary domain or the unique identifier generated by Google.", + "type": "string" + }, + "kind": { + "default": "reseller#customer", + "description": "Identifies the resource as a customer. Value: reseller#customer", + "type": "string" + }, + "phoneNumber": { + "description": "Customer contact phone number. This can be continuous numbers, with spaces, etc. But it must be a real phone number and not, for example, \"123\". See phone local format conventions.", + "type": "string" + }, + "postalAddress": { + "$ref": "Address", + "description": "A customer's address information. Each field has a limit of 255 charcters." + }, + "resourceUiUrl": { + "description": "URL to customer's Admin console dashboard. The read-only URL is generated by the API service. This is used if your client application requires the customer to complete a task in the Admin console.", + "type": "string" + } + }, + "type": "object" + }, + "RenewalSettings": { + "description": "JSON template for a subscription renewal settings.", + "id": "RenewalSettings", + "properties": { + "kind": { + "default": "subscriptions#renewalSettings", + "description": "Identifies the resource as a subscription renewal setting. Value: subscriptions#renewalSettings", + "type": "string" + }, + "renewalType": { + "description": "Renewal settings for the annual commitment plan. For more detailed information, see renewal options in the administrator help center. When renewing a subscription, the renewalType is a required property.", + "type": "string" + } + }, + "type": "object" + }, + "ResellernotifyGetwatchdetailsResponse": { + "description": "JSON template for resellernotify getwatchdetails response.", + "id": "ResellernotifyGetwatchdetailsResponse", + "properties": { + "serviceAccountEmailAddresses": { + "description": "List of registered service accounts.", + "items": { + "type": "string" + }, + "type": "array" + }, + "topicName": { + "description": "Topic name of the PubSub", + "type": "string" + } + }, + "type": "object" + }, + "ResellernotifyResource": { + "description": "JSON template for resellernotify response.", + "id": "ResellernotifyResource", + "properties": { + "topicName": { + "description": "Topic name of the PubSub", + "type": "string" + } + }, + "type": "object" + }, + "Seats": { + "description": "JSON template for subscription seats.", + "id": "Seats", + "properties": { + "kind": { + "default": "subscriptions#seats", + "description": "Identifies the resource as a subscription change plan request. Value: subscriptions#seats", + "type": "string" + }, + "licensedNumberOfSeats": { + "description": "Read-only field containing the current number of licensed seats for FLEXIBLE Google-Apps subscriptions and secondary subscriptions such as Google-Vault and Drive-storage.", + "format": "int32", + "type": "integer" + }, + "maximumNumberOfSeats": { + "description": "The maximumNumberOfSeats property is the maximum number of licenses that the customer can purchase. This property applies to plans other than the annual commitment plan. How a user's licenses are managed depends on the subscription's payment plan: \n- annual commitment plan (with monthly or yearly payments) — For this plan, a reseller is invoiced on the number of user licenses in the numberOfSeats property. The maximumNumberOfSeats property is a read-only property in the API's response. \n- flexible plan — For this plan, a reseller is invoiced on the actual number of users which is capped by the maximumNumberOfSeats. This is the maximum number of user licenses a customer has for user license provisioning. This quantity can be increased up to the maximum limit defined in the reseller's contract. And the minimum quantity is the current number of users in the customer account. \n- 30-day free trial plan — A subscription in a 30-day free trial is restricted to maximum 10 seats.", + "format": "int32", + "type": "integer" + }, + "numberOfSeats": { + "description": "The numberOfSeats property holds the customer's number of user licenses. How a user's licenses are managed depends on the subscription's plan: \n- annual commitment plan (with monthly or yearly pay) — For this plan, a reseller is invoiced on the number of user licenses in the numberOfSeats property. This is the maximum number of user licenses that a reseller's customer can create. The reseller can add more licenses, but once set, the numberOfSeats can not be reduced until renewal. The reseller is invoiced based on the numberOfSeats value regardless of how many of these user licenses are provisioned users. \n- flexible plan — For this plan, a reseller is invoiced on the actual number of users which is capped by the maximumNumberOfSeats. The numberOfSeats property is not used in the request or response for flexible plan customers. \n- 30-day free trial plan — The numberOfSeats property is not used in the request or response for an account in a 30-day trial.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "Subscription": { + "description": "JSON template for a subscription.", + "id": "Subscription", + "properties": { + "billingMethod": { + "description": "Read-only field that returns the current billing method for a subscription.", + "type": "string" + }, + "creationTime": { + "description": "The creationTime property is the date when subscription was created. It is in milliseconds using the Epoch format. See an example Epoch converter.", + "format": "int64", + "type": "string" + }, + "customerDomain": { + "description": "Primary domain name of the customer", + "type": "string" + }, + "customerId": { + "description": "This property will always be returned in a response as the unique identifier generated by Google. In a request, this property can be either the primary domain or the unique identifier generated by Google.", + "type": "string" + }, + "dealCode": { + "description": "Google-issued code (100 char max) for discounted pricing on subscription plans. Deal code must be included in insert requests in order to receive discounted rate. This property is optional, regular pricing applies if left empty.", + "type": "string" + }, + "kind": { + "default": "reseller#subscription", + "description": "Identifies the resource as a Subscription. Value: reseller#subscription", + "type": "string" + }, + "plan": { + "description": "The plan property is required. In this version of the API, the G Suite plans are the flexible plan, annual commitment plan, and the 30-day free trial plan. For more information about the API\"s payment plans, see the API concepts.", + "properties": { + "commitmentInterval": { + "description": "In this version of the API, annual commitment plan's interval is one year.", + "properties": { + "endTime": { + "description": "An annual commitment plan's interval's endTime in milliseconds using the UNIX Epoch format. See an example Epoch converter.", + "format": "int64", + "type": "string" + }, + "startTime": { + "description": "An annual commitment plan's interval's startTime in milliseconds using UNIX Epoch format. See an example Epoch converter.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "isCommitmentPlan": { + "description": "The isCommitmentPlan property's boolean value identifies the plan as an annual commitment plan:\n- true — The subscription's plan is an annual commitment plan.\n- false — The plan is not an annual commitment plan.", + "type": "boolean" + }, + "planName": { + "description": "The planName property is required. This is the name of the subscription's plan. For more information about the Google payment plans, see the API concepts.\n\nPossible values are: \n- ANNUAL_MONTHLY_PAY — The annual commitment plan with monthly payments \n- ANNUAL_YEARLY_PAY — The annual commitment plan with yearly payments \n- FLEXIBLE — The flexible plan \n- TRIAL — The 30-day free trial plan. A subscription in trial will be suspended after the 30th free day if no payment plan is assigned. Calling changePlan will assign a payment plan to a trial but will not activate the plan. A trial will automatically begin its assigned payment plan after its 30th free day or immediately after calling startPaidService.", + "type": "string" + } + }, + "type": "object" + }, + "purchaseOrderId": { + "description": "This is an optional property. This purchase order (PO) information is for resellers to use for their company tracking usage. If a purchaseOrderId value is given it appears in the API responses and shows up in the invoice. The property accepts up to 80 plain text characters.", + "type": "string" + }, + "renewalSettings": { + "$ref": "RenewalSettings", + "description": "Renewal settings for the annual commitment plan. For more detailed information, see renewal options in the administrator help center." + }, + "resourceUiUrl": { + "description": "URL to customer's Subscriptions page in the Admin console. The read-only URL is generated by the API service. This is used if your client application requires the customer to complete a task using the Subscriptions page in the Admin console.", + "type": "string" + }, + "seats": { + "$ref": "Seats", + "description": "This is a required property. The number and limit of user seat licenses in the plan." + }, + "skuId": { + "description": "A required property. The skuId is a unique system identifier for a product's SKU assigned to a customer in the subscription. For products and SKUs available in this version of the API, see Product and SKU IDs.", + "type": "string" + }, + "skuName": { + "description": "Read-only external display name for a product's SKU assigned to a customer in the subscription. SKU names are subject to change at Google's discretion. For products and SKUs available in this version of the API, see Product and SKU IDs.", + "type": "string" + }, + "status": { + "description": "This is an optional property.", + "type": "string" + }, + "subscriptionId": { + "description": "The subscriptionId is the subscription identifier and is unique for each customer. This is a required property. Since a subscriptionId changes when a subscription is updated, we recommend not using this ID as a key for persistent data. Use the subscriptionId as described in retrieve all reseller subscriptions.", + "type": "string" + }, + "suspensionReasons": { + "description": "Read-only field containing an enumerable of all the current suspension reasons for a subscription. It is possible for a subscription to have many concurrent, overlapping suspension reasons. A subscription's STATUS is SUSPENDED until all pending suspensions are removed.\n\nPossible options include: \n- PENDING_TOS_ACCEPTANCE - The customer has not logged in and accepted the G Suite Resold Terms of Services. \n- RENEWAL_WITH_TYPE_CANCEL - The customer's commitment ended and their service was cancelled at the end of their term. \n- RESELLER_INITIATED - A manual suspension invoked by a Reseller. \n- TRIAL_ENDED - The customer's trial expired without a plan selected. \n- OTHER - The customer is suspended for an internal Google reason (e.g. abuse or otherwise).", + "items": { + "type": "string" + }, + "type": "array" + }, + "transferInfo": { + "description": "Read-only transfer related information for the subscription. For more information, see retrieve transferable subscriptions for a customer.", + "properties": { + "minimumTransferableSeats": { + "description": "When inserting a subscription, this is the minimum number of seats listed in the transfer order for this product. For example, if the customer has 20 users, the reseller cannot place a transfer order of 15 seats. The minimum is 20 seats.", + "format": "int32", + "type": "integer" + }, + "transferabilityExpirationTime": { + "description": "The time when transfer token or intent to transfer will expire. The time is in milliseconds using UNIX Epoch format.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "trialSettings": { + "description": "The G Suite annual commitment and flexible payment plans can be in a 30-day free trial. For more information, see the API concepts.", + "properties": { + "isInTrial": { + "description": "Determines if a subscription's plan is in a 30-day free trial or not:\n- true — The plan is in trial.\n- false — The plan is not in trial.", + "type": "boolean" + }, + "trialEndTime": { + "description": "Date when the trial ends. The value is in milliseconds using the UNIX Epoch format. See an example Epoch converter.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "Subscriptions": { + "description": "JSON template for a subscription list.", + "id": "Subscriptions", + "properties": { + "kind": { + "default": "reseller#subscriptions", + "description": "Identifies the resource as a collection of subscriptions. Value: reseller#subscriptions", + "type": "string" + }, + "nextPageToken": { + "description": "The continuation token, used to page through large result sets. Provide this value in a subsequent request to return the next page of results.", + "type": "string" + }, + "subscriptions": { + "description": "The subscriptions in this page of results.", + "items": { + "$ref": "Subscription" + }, + "type": "array" + } + }, + "type": "object" } - } }, - "subscriptions": { - "methods": { - "activate": { - "id": "reseller.subscriptions.activate", - "path": "customers/{customerId}/subscriptions/{subscriptionId}/activate", - "httpMethod": "POST", - "description": "Activates a subscription previously suspended by the reseller", - "parameters": { - "customerId": { - "type": "string", - "description": "Either the customer's primary domain name or the customer's unique identifier. If using the domain name, we do not recommend using a customerId as a key for persistent data. If the domain name for a customerId is changed, the Google system automatically updates.", - "required": true, - "location": "path" - }, - "subscriptionId": { - "type": "string", - "description": "This is a required property. The subscriptionId is the subscription identifier and is unique for each customer. Since a subscriptionId changes when a subscription is updated, we recommend to not use this ID as a key for persistent data. And the subscriptionId can be found using the retrieve all reseller subscriptions method.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "customerId", - "subscriptionId" - ], - "response": { - "$ref": "Subscription" - }, - "scopes": [ - "https://www.googleapis.com/auth/apps.order" - ] - }, - "changePlan": { - "id": "reseller.subscriptions.changePlan", - "path": "customers/{customerId}/subscriptions/{subscriptionId}/changePlan", - "httpMethod": "POST", - "description": "Update a subscription plan. Use this method to update a plan for a 30-day trial or a flexible plan subscription to an annual commitment plan with monthly or yearly payments.", - "parameters": { - "customerId": { - "type": "string", - "description": "Either the customer's primary domain name or the customer's unique identifier. If using the domain name, we do not recommend using a customerId as a key for persistent data. If the domain name for a customerId is changed, the Google system automatically updates.", - "required": true, - "location": "path" - }, - "subscriptionId": { - "type": "string", - "description": "This is a required property. The subscriptionId is the subscription identifier and is unique for each customer. Since a subscriptionId changes when a subscription is updated, we recommend to not use this ID as a key for persistent data. And the subscriptionId can be found using the retrieve all reseller subscriptions method.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "customerId", - "subscriptionId" - ], - "request": { - "$ref": "ChangePlanRequest" - }, - "response": { - "$ref": "Subscription" - }, - "scopes": [ - "https://www.googleapis.com/auth/apps.order" - ] - }, - "changeRenewalSettings": { - "id": "reseller.subscriptions.changeRenewalSettings", - "path": "customers/{customerId}/subscriptions/{subscriptionId}/changeRenewalSettings", - "httpMethod": "POST", - "description": "Update a user license's renewal settings. This is applicable for accounts with annual commitment plans only.", - "parameters": { - "customerId": { - "type": "string", - "description": "Either the customer's primary domain name or the customer's unique identifier. If using the domain name, we do not recommend using a customerId as a key for persistent data. If the domain name for a customerId is changed, the Google system automatically updates.", - "required": true, - "location": "path" - }, - "subscriptionId": { - "type": "string", - "description": "This is a required property. The subscriptionId is the subscription identifier and is unique for each customer. Since a subscriptionId changes when a subscription is updated, we recommend to not use this ID as a key for persistent data. And the subscriptionId can be found using the retrieve all reseller subscriptions method.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "customerId", - "subscriptionId" - ], - "request": { - "$ref": "RenewalSettings" - }, - "response": { - "$ref": "Subscription" - }, - "scopes": [ - "https://www.googleapis.com/auth/apps.order" - ] - }, - "changeSeats": { - "id": "reseller.subscriptions.changeSeats", - "path": "customers/{customerId}/subscriptions/{subscriptionId}/changeSeats", - "httpMethod": "POST", - "description": "Update a subscription's user license settings.", - "parameters": { - "customerId": { - "type": "string", - "description": "Either the customer's primary domain name or the customer's unique identifier. If using the domain name, we do not recommend using a customerId as a key for persistent data. If the domain name for a customerId is changed, the Google system automatically updates.", - "required": true, - "location": "path" - }, - "subscriptionId": { - "type": "string", - "description": "This is a required property. The subscriptionId is the subscription identifier and is unique for each customer. Since a subscriptionId changes when a subscription is updated, we recommend to not use this ID as a key for persistent data. And the subscriptionId can be found using the retrieve all reseller subscriptions method.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "customerId", - "subscriptionId" - ], - "request": { - "$ref": "Seats" - }, - "response": { - "$ref": "Subscription" - }, - "scopes": [ - "https://www.googleapis.com/auth/apps.order" - ] - }, - "delete": { - "id": "reseller.subscriptions.delete", - "path": "customers/{customerId}/subscriptions/{subscriptionId}", - "httpMethod": "DELETE", - "description": "Cancel, suspend or transfer a subscription to direct.", - "parameters": { - "customerId": { - "type": "string", - "description": "Either the customer's primary domain name or the customer's unique identifier. If using the domain name, we do not recommend using a customerId as a key for persistent data. If the domain name for a customerId is changed, the Google system automatically updates.", - "required": true, - "location": "path" - }, - "deletionType": { - "type": "string", - "description": "The deletionType query string enables the cancellation, downgrade, or suspension of a subscription.", - "required": true, - "enum": [ - "cancel", - "downgrade", - "suspend", - "transfer_to_direct" - ], - "enumDescriptions": [ - "Cancels the subscription immediately. This does not apply to a G Suite subscription.", - "Downgrades a G Suite subscription to a Google Apps Free edition subscription only if the customer was initially subscribed to a Google Apps Free edition (also known as the Standard edition). Once downgraded, the customer no longer has access to the previous G Suite subscription and is no longer managed by the reseller.\n\nA G Suite subscription's downgrade cannot be invoked if an active or suspended Google Drive or Google Vault subscription is present. The Google Drive or Google Vault subscription must be cancelled before the G Suite subscription's downgrade is invoked.\n\nThe downgrade deletionType does not apply to other products or G Suite SKUs.", - "(DEPRECATED) The G Suite account is suspended for four days and then cancelled. Once suspended, an administrator has access to the suspended account, but the account users can not access their services. A suspension can be lifted, using the reseller tools.\n\nA G Suite subscription's suspension can not be invoked if an active or suspended Google Drive or Google Vault subscription is present. The Google Drive or Google Vault subscription must be cancelled before the G Suite subscription's suspension is invoked.", - "Transfers a subscription directly to Google.  The customer is immediately transferred to a direct billing relationship with Google and is given a short amount of time with no service interruption. The customer can then choose to set up billing directly with Google by using a credit card, or they can transfer to another reseller." - ], - "location": "query" - }, - "subscriptionId": { - "type": "string", - "description": "This is a required property. The subscriptionId is the subscription identifier and is unique for each customer. Since a subscriptionId changes when a subscription is updated, we recommend to not use this ID as a key for persistent data. And the subscriptionId can be found using the retrieve all reseller subscriptions method.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "customerId", - "subscriptionId", - "deletionType" - ], - "scopes": [ - "https://www.googleapis.com/auth/apps.order" - ] - }, - "get": { - "id": "reseller.subscriptions.get", - "path": "customers/{customerId}/subscriptions/{subscriptionId}", - "httpMethod": "GET", - "description": "Get a specific subscription.", - "parameters": { - "customerId": { - "type": "string", - "description": "Either the customer's primary domain name or the customer's unique identifier. If using the domain name, we do not recommend using a customerId as a key for persistent data. If the domain name for a customerId is changed, the Google system automatically updates.", - "required": true, - "location": "path" - }, - "subscriptionId": { - "type": "string", - "description": "This is a required property. The subscriptionId is the subscription identifier and is unique for each customer. Since a subscriptionId changes when a subscription is updated, we recommend to not use this ID as a key for persistent data. And the subscriptionId can be found using the retrieve all reseller subscriptions method.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "customerId", - "subscriptionId" - ], - "response": { - "$ref": "Subscription" - }, - "scopes": [ - "https://www.googleapis.com/auth/apps.order", - "https://www.googleapis.com/auth/apps.order.readonly" - ] - }, - "insert": { - "id": "reseller.subscriptions.insert", - "path": "customers/{customerId}/subscriptions", - "httpMethod": "POST", - "description": "Create or transfer a subscription.", - "parameters": { - "customerAuthToken": { - "type": "string", - "description": "The customerAuthToken query string is required when creating a resold account that transfers a direct customer's subscription or transfers another reseller customer's subscription to your reseller management. This is a hexadecimal authentication token needed to complete the subscription transfer. For more information, see the administrator help center.", - "location": "query" - }, - "customerId": { - "type": "string", - "description": "Either the customer's primary domain name or the customer's unique identifier. If using the domain name, we do not recommend using a customerId as a key for persistent data. If the domain name for a customerId is changed, the Google system automatically updates.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "customerId" - ], - "request": { - "$ref": "Subscription" - }, - "response": { - "$ref": "Subscription" - }, - "scopes": [ - "https://www.googleapis.com/auth/apps.order" - ] - }, - "list": { - "id": "reseller.subscriptions.list", - "path": "subscriptions", - "httpMethod": "GET", - "description": "List of subscriptions managed by the reseller. The list can be all subscriptions, all of a customer's subscriptions, or all of a customer's transferable subscriptions.", - "parameters": { - "customerAuthToken": { - "type": "string", - "description": "The customerAuthToken query string is required when creating a resold account that transfers a direct customer's subscription or transfers another reseller customer's subscription to your reseller management. This is a hexadecimal authentication token needed to complete the subscription transfer. For more information, see the administrator help center.", - "location": "query" - }, - "customerId": { - "type": "string", - "description": "Either the customer's primary domain name or the customer's unique identifier. If using the domain name, we do not recommend using a customerId as a key for persistent data. If the domain name for a customerId is changed, the Google system automatically updates.", - "location": "query" - }, - "customerNamePrefix": { - "type": "string", - "description": "When retrieving all of your subscriptions and filtering for specific customers, you can enter a prefix for a customer name. Using an example customer group that includes exam.com, example20.com and example.com: \n- exa -- Returns all customer names that start with 'exa' which could include exam.com, example20.com, and example.com. A name prefix is similar to using a regular expression's asterisk, exa*. \n- example -- Returns example20.com and example.com.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "When retrieving a large list, the maxResults is the maximum number of results per page. The nextPageToken value takes you to the next page. The default is 20.", - "format": "uint32", - "minimum": "1", - "maximum": "100", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Token to specify next page in the list", - "location": "query" - } - }, - "response": { - "$ref": "Subscriptions" - }, - "scopes": [ - "https://www.googleapis.com/auth/apps.order", - "https://www.googleapis.com/auth/apps.order.readonly" - ] - }, - "startPaidService": { - "id": "reseller.subscriptions.startPaidService", - "path": "customers/{customerId}/subscriptions/{subscriptionId}/startPaidService", - "httpMethod": "POST", - "description": "Immediately move a 30-day free trial subscription to a paid service subscription.", - "parameters": { - "customerId": { - "type": "string", - "description": "Either the customer's primary domain name or the customer's unique identifier. If using the domain name, we do not recommend using a customerId as a key for persistent data. If the domain name for a customerId is changed, the Google system automatically updates.", - "required": true, - "location": "path" - }, - "subscriptionId": { - "type": "string", - "description": "This is a required property. The subscriptionId is the subscription identifier and is unique for each customer. Since a subscriptionId changes when a subscription is updated, we recommend to not use this ID as a key for persistent data. And the subscriptionId can be found using the retrieve all reseller subscriptions method.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "customerId", - "subscriptionId" - ], - "response": { - "$ref": "Subscription" - }, - "scopes": [ - "https://www.googleapis.com/auth/apps.order" - ] - }, - "suspend": { - "id": "reseller.subscriptions.suspend", - "path": "customers/{customerId}/subscriptions/{subscriptionId}/suspend", - "httpMethod": "POST", - "description": "Suspends an active subscription.", - "parameters": { - "customerId": { - "type": "string", - "description": "Either the customer's primary domain name or the customer's unique identifier. If using the domain name, we do not recommend using a customerId as a key for persistent data. If the domain name for a customerId is changed, the Google system automatically updates.", - "required": true, - "location": "path" - }, - "subscriptionId": { - "type": "string", - "description": "This is a required property. The subscriptionId is the subscription identifier and is unique for each customer. Since a subscriptionId changes when a subscription is updated, we recommend to not use this ID as a key for persistent data. And the subscriptionId can be found using the retrieve all reseller subscriptions method.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "customerId", - "subscriptionId" - ], - "response": { - "$ref": "Subscription" - }, - "scopes": [ - "https://www.googleapis.com/auth/apps.order" - ] - } - } - } - } -} + "servicePath": "apps/reseller/v1/", + "title": "Enterprise Apps Reseller API", + "version": "v1" +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/resourceviews/v1beta1/resourceviews-api.json b/vendor/google.golang.org/api/resourceviews/v1beta1/resourceviews-api.json index bb2c81df2..6cd02d6db 100644 --- a/vendor/google.golang.org/api/resourceviews/v1beta1/resourceviews-api.json +++ b/vendor/google.golang.org/api/resourceviews/v1beta1/resourceviews-api.json @@ -1,920 +1,920 @@ { - "kind": "discovery#restDescription", - "etag": "\"YWOzh2SDasdU84ArJnpYek-OMdg/HxZRDFK7f86Z7kwjlvcp4S6C4Oc\"", - "discoveryVersion": "v1", - "id": "resourceviews:v1beta1", - "name": "resourceviews", - "version": "v1beta1", - "revision": "20160512", - "title": "Resource Views API", - "description": "The Resource View API allows users to create and manage logical sets of Google Compute Engine instances.", - "ownerDomain": "google.com", - "ownerName": "Google", - "icons": { - "x16": "https://www.gstatic.com/images/branding/product/1x/googleg_16dp.png", - "x32": "https://www.gstatic.com/images/branding/product/1x/googleg_32dp.png" - }, - "documentationLink": "https://developers.google.com/compute/", - "labels": [ - "limited_availability" - ], - "protocol": "rest", - "baseUrl": "https://www.googleapis.com/resourceviews/v1beta1/projects/", - "basePath": "/resourceviews/v1beta1/projects/", - "rootUrl": "https://www.googleapis.com/", - "servicePath": "resourceviews/v1beta1/projects/", - "batchPath": "batch/resourceviews/v1beta1", - "parameters": { - "alt": { - "type": "string", - "description": "Data format for the response.", - "default": "json", - "enum": [ - "json" - ], - "enumDescriptions": [ - "Responses with Content-Type of application/json" - ], - "location": "query" - }, - "fields": { - "type": "string", - "description": "Selector specifying which fields to include in a partial response.", - "location": "query" - }, - "key": { - "type": "string", - "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" - }, - "oauth_token": { - "type": "string", - "description": "OAuth 2.0 token for the current user.", - "location": "query" - }, - "prettyPrint": { - "type": "boolean", - "description": "Returns response with indentations and line breaks.", - "default": "true", - "location": "query" - }, - "quotaUser": { - "type": "string", - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", - "location": "query" - }, - "userIp": { - "type": "string", - "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", - "location": "query" - } - }, - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/cloud-platform": { - "description": "View and manage your data across Google Cloud Platform services" - }, - "https://www.googleapis.com/auth/cloud-platform.read-only": { - "description": "View your data across Google Cloud Platform services" - }, - "https://www.googleapis.com/auth/compute": { - "description": "View and manage your Google Compute Engine resources" - }, - "https://www.googleapis.com/auth/compute.readonly": { - "description": "View your Google Compute Engine resources" - }, - "https://www.googleapis.com/auth/ndev.cloudman": { - "description": "View and manage your Google Cloud Platform management resources and deployment status information" - }, - "https://www.googleapis.com/auth/ndev.cloudman.readonly": { - "description": "View your Google Cloud Platform management resources and deployment status information" + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/cloud-platform": { + "description": "View and manage your data across Google Cloud Platform services" + }, + "https://www.googleapis.com/auth/cloud-platform.read-only": { + "description": "View your data across Google Cloud Platform services" + }, + "https://www.googleapis.com/auth/compute": { + "description": "View and manage your Google Compute Engine resources" + }, + "https://www.googleapis.com/auth/compute.readonly": { + "description": "View your Google Compute Engine resources" + }, + "https://www.googleapis.com/auth/ndev.cloudman": { + "description": "View and manage your Google Cloud Platform management resources and deployment status information" + }, + "https://www.googleapis.com/auth/ndev.cloudman.readonly": { + "description": "View your Google Cloud Platform management resources and deployment status information" + } + } } - } - } - }, - "schemas": { - "Label": { - "id": "Label", - "type": "object", - "description": "The Label to be applied to the resource views.", - "properties": { + }, + "basePath": "/resourceviews/v1beta1/projects/", + "baseUrl": "https://www.googleapis.com/resourceviews/v1beta1/projects/", + "batchPath": "batch/resourceviews/v1beta1", + "description": "The Resource View API allows users to create and manage logical sets of Google Compute Engine instances.", + "discoveryVersion": "v1", + "documentationLink": "https://developers.google.com/compute/", + "etag": "\"-iA1DTNe4s-I6JZXPt1t1Ypy8IU/HxZRDFK7f86Z7kwjlvcp4S6C4Oc\"", + "icons": { + "x16": "https://www.gstatic.com/images/branding/product/1x/googleg_16dp.png", + "x32": "https://www.gstatic.com/images/branding/product/1x/googleg_32dp.png" + }, + "id": "resourceviews:v1beta1", + "kind": "discovery#restDescription", + "labels": [ + "limited_availability" + ], + "name": "resourceviews", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "alt": { + "default": "json", + "description": "Data format for the response.", + "enum": [ + "json" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json" + ], + "location": "query", + "type": "string" + }, + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "location": "query", + "type": "string" + }, "key": { - "type": "string", - "description": "Key of the label." - }, - "value": { - "type": "string", - "description": "Value of the label." - } - } - }, - "RegionViewsAddResourcesRequest": { - "id": "RegionViewsAddResourcesRequest", - "type": "object", - "description": "The request to add resources to the resource view.", - "properties": { - "resources": { - "type": "array", - "description": "The list of resources to be added.", - "items": { + "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" - } - } - } - }, - "RegionViewsInsertResponse": { - "id": "RegionViewsInsertResponse", - "type": "object", - "description": "The response to a resource view insert request.", - "properties": { - "resource": { - "$ref": "ResourceView", - "description": "The resource view object inserted." - } - } - }, - "RegionViewsListResourcesResponse": { - "id": "RegionViewsListResourcesResponse", - "type": "object", - "description": "The response to the list resource request.", - "properties": { - "members": { - "type": "array", - "description": "The resources in the view.", - "items": { + }, + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", "type": "string" - } }, - "nextPageToken": { - "type": "string", - "description": "A token used for pagination." - } - } - }, - "RegionViewsListResponse": { - "id": "RegionViewsListResponse", - "type": "object", - "description": "The response to the list resource view request.", - "properties": { - "nextPageToken": { - "type": "string", - "description": "A token used for pagination." + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" }, - "resourceViews": { - "type": "array", - "description": "The list of resource views that meet the criteria.", - "items": { - "$ref": "ResourceView" - } - } - } - }, - "RegionViewsRemoveResourcesRequest": { - "id": "RegionViewsRemoveResourcesRequest", - "type": "object", - "description": "The request to remove resources from the resource view.", - "properties": { - "resources": { - "type": "array", - "description": "The list of resources to be removed.", - "items": { + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", + "location": "query", "type": "string" - } - } - } - }, - "ResourceView": { - "id": "ResourceView", - "type": "object", - "description": "The resource view object.", - "properties": { - "creationTime": { - "type": "string", - "description": "The creation time of the resource view." }, - "description": { - "type": "string", - "description": "The detailed description of the resource view." - }, - "id": { - "type": "string", - "description": "[Output Only] The ID of the resource view." - }, - "kind": { - "type": "string", - "description": "Type of the resource.", - "default": "resourceviews#resourceView" - }, - "labels": { - "type": "array", - "description": "The labels for events.", - "items": { - "$ref": "Label" - } - }, - "lastModified": { - "type": "string", - "description": "The last modified time of the view. Not supported yet." - }, - "members": { - "type": "array", - "description": "A list of all resources in the resource view.", - "items": { + "userIp": { + "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", + "location": "query", "type": "string" - } - }, - "name": { - "type": "string", - "description": "The name of the resource view." - }, - "numMembers": { - "type": "integer", - "description": "The total number of resources in the resource view.", - "format": "uint32" - }, - "selfLink": { - "type": "string", - "description": "[Output Only] A self-link to the resource view." } - } }, - "ZoneViewsAddResourcesRequest": { - "id": "ZoneViewsAddResourcesRequest", - "type": "object", - "description": "The request to add resources to the resource view.", - "properties": { - "resources": { - "type": "array", - "description": "The list of resources to be added.", - "items": { - "type": "string" - } + "protocol": "rest", + "resources": { + "regionViews": { + "methods": { + "addresources": { + "description": "Add resources to the view.", + "httpMethod": "POST", + "id": "resourceviews.regionViews.addresources", + "parameterOrder": [ + "projectName", + "region", + "resourceViewName" + ], + "parameters": { + "projectName": { + "description": "The project name of the resource view.", + "location": "path", + "required": true, + "type": "string" + }, + "region": { + "description": "The region name of the resource view.", + "location": "path", + "required": true, + "type": "string" + }, + "resourceViewName": { + "description": "The name of the resource view.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{projectName}/regions/{region}/resourceViews/{resourceViewName}/addResources", + "request": { + "$ref": "RegionViewsAddResourcesRequest" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/ndev.cloudman" + ] + }, + "delete": { + "description": "Delete a resource view.", + "httpMethod": "DELETE", + "id": "resourceviews.regionViews.delete", + "parameterOrder": [ + "projectName", + "region", + "resourceViewName" + ], + "parameters": { + "projectName": { + "description": "The project name of the resource view.", + "location": "path", + "required": true, + "type": "string" + }, + "region": { + "description": "The region name of the resource view.", + "location": "path", + "required": true, + "type": "string" + }, + "resourceViewName": { + "description": "The name of the resource view.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{projectName}/regions/{region}/resourceViews/{resourceViewName}", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/ndev.cloudman" + ] + }, + "get": { + "description": "Get the information of a resource view.", + "httpMethod": "GET", + "id": "resourceviews.regionViews.get", + "parameterOrder": [ + "projectName", + "region", + "resourceViewName" + ], + "parameters": { + "projectName": { + "description": "The project name of the resource view.", + "location": "path", + "required": true, + "type": "string" + }, + "region": { + "description": "The region name of the resource view.", + "location": "path", + "required": true, + "type": "string" + }, + "resourceViewName": { + "description": "The name of the resource view.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{projectName}/regions/{region}/resourceViews/{resourceViewName}", + "response": { + "$ref": "ResourceView" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly", + "https://www.googleapis.com/auth/ndev.cloudman", + "https://www.googleapis.com/auth/ndev.cloudman.readonly" + ] + }, + "insert": { + "description": "Create a resource view.", + "httpMethod": "POST", + "id": "resourceviews.regionViews.insert", + "parameterOrder": [ + "projectName", + "region" + ], + "parameters": { + "projectName": { + "description": "The project name of the resource view.", + "location": "path", + "required": true, + "type": "string" + }, + "region": { + "description": "The region name of the resource view.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{projectName}/regions/{region}/resourceViews", + "request": { + "$ref": "ResourceView" + }, + "response": { + "$ref": "RegionViewsInsertResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/ndev.cloudman" + ] + }, + "list": { + "description": "List resource views.", + "httpMethod": "GET", + "id": "resourceviews.regionViews.list", + "parameterOrder": [ + "projectName", + "region" + ], + "parameters": { + "maxResults": { + "default": "5000", + "description": "Maximum count of results to be returned. Acceptable values are 0 to 5000, inclusive. (Default: 5000)", + "format": "int32", + "location": "query", + "maximum": "5000", + "minimum": "0", + "type": "integer" + }, + "pageToken": { + "description": "Specifies a nextPageToken returned by a previous list request. This token can be used to request the next page of results from a previous list request.", + "location": "query", + "type": "string" + }, + "projectName": { + "description": "The project name of the resource view.", + "location": "path", + "required": true, + "type": "string" + }, + "region": { + "description": "The region name of the resource view.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{projectName}/regions/{region}/resourceViews", + "response": { + "$ref": "RegionViewsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly", + "https://www.googleapis.com/auth/ndev.cloudman", + "https://www.googleapis.com/auth/ndev.cloudman.readonly" + ] + }, + "listresources": { + "description": "List the resources in the view.", + "httpMethod": "POST", + "id": "resourceviews.regionViews.listresources", + "parameterOrder": [ + "projectName", + "region", + "resourceViewName" + ], + "parameters": { + "maxResults": { + "default": "5000", + "description": "Maximum count of results to be returned. Acceptable values are 0 to 5000, inclusive. (Default: 5000)", + "format": "int32", + "location": "query", + "maximum": "5000", + "minimum": "0", + "type": "integer" + }, + "pageToken": { + "description": "Specifies a nextPageToken returned by a previous list request. This token can be used to request the next page of results from a previous list request.", + "location": "query", + "type": "string" + }, + "projectName": { + "description": "The project name of the resource view.", + "location": "path", + "required": true, + "type": "string" + }, + "region": { + "description": "The region name of the resource view.", + "location": "path", + "required": true, + "type": "string" + }, + "resourceViewName": { + "description": "The name of the resource view.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{projectName}/regions/{region}/resourceViews/{resourceViewName}/resources", + "response": { + "$ref": "RegionViewsListResourcesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly", + "https://www.googleapis.com/auth/ndev.cloudman", + "https://www.googleapis.com/auth/ndev.cloudman.readonly" + ] + }, + "removeresources": { + "description": "Remove resources from the view.", + "httpMethod": "POST", + "id": "resourceviews.regionViews.removeresources", + "parameterOrder": [ + "projectName", + "region", + "resourceViewName" + ], + "parameters": { + "projectName": { + "description": "The project name of the resource view.", + "location": "path", + "required": true, + "type": "string" + }, + "region": { + "description": "The region name of the resource view.", + "location": "path", + "required": true, + "type": "string" + }, + "resourceViewName": { + "description": "The name of the resource view.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{projectName}/regions/{region}/resourceViews/{resourceViewName}/removeResources", + "request": { + "$ref": "RegionViewsRemoveResourcesRequest" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/ndev.cloudman" + ] + } + } + }, + "zoneViews": { + "methods": { + "addresources": { + "description": "Add resources to the view.", + "httpMethod": "POST", + "id": "resourceviews.zoneViews.addresources", + "parameterOrder": [ + "projectName", + "zone", + "resourceViewName" + ], + "parameters": { + "projectName": { + "description": "The project name of the resource view.", + "location": "path", + "required": true, + "type": "string" + }, + "resourceViewName": { + "description": "The name of the resource view.", + "location": "path", + "required": true, + "type": "string" + }, + "zone": { + "description": "The zone name of the resource view.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{projectName}/zones/{zone}/resourceViews/{resourceViewName}/addResources", + "request": { + "$ref": "ZoneViewsAddResourcesRequest" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/ndev.cloudman" + ] + }, + "delete": { + "description": "Delete a resource view.", + "httpMethod": "DELETE", + "id": "resourceviews.zoneViews.delete", + "parameterOrder": [ + "projectName", + "zone", + "resourceViewName" + ], + "parameters": { + "projectName": { + "description": "The project name of the resource view.", + "location": "path", + "required": true, + "type": "string" + }, + "resourceViewName": { + "description": "The name of the resource view.", + "location": "path", + "required": true, + "type": "string" + }, + "zone": { + "description": "The zone name of the resource view.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{projectName}/zones/{zone}/resourceViews/{resourceViewName}", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/ndev.cloudman" + ] + }, + "get": { + "description": "Get the information of a zonal resource view.", + "httpMethod": "GET", + "id": "resourceviews.zoneViews.get", + "parameterOrder": [ + "projectName", + "zone", + "resourceViewName" + ], + "parameters": { + "projectName": { + "description": "The project name of the resource view.", + "location": "path", + "required": true, + "type": "string" + }, + "resourceViewName": { + "description": "The name of the resource view.", + "location": "path", + "required": true, + "type": "string" + }, + "zone": { + "description": "The zone name of the resource view.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{projectName}/zones/{zone}/resourceViews/{resourceViewName}", + "response": { + "$ref": "ResourceView" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly", + "https://www.googleapis.com/auth/ndev.cloudman", + "https://www.googleapis.com/auth/ndev.cloudman.readonly" + ] + }, + "insert": { + "description": "Create a resource view.", + "httpMethod": "POST", + "id": "resourceviews.zoneViews.insert", + "parameterOrder": [ + "projectName", + "zone" + ], + "parameters": { + "projectName": { + "description": "The project name of the resource view.", + "location": "path", + "required": true, + "type": "string" + }, + "zone": { + "description": "The zone name of the resource view.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{projectName}/zones/{zone}/resourceViews", + "request": { + "$ref": "ResourceView" + }, + "response": { + "$ref": "ZoneViewsInsertResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/ndev.cloudman" + ] + }, + "list": { + "description": "List resource views.", + "httpMethod": "GET", + "id": "resourceviews.zoneViews.list", + "parameterOrder": [ + "projectName", + "zone" + ], + "parameters": { + "maxResults": { + "default": "5000", + "description": "Maximum count of results to be returned. Acceptable values are 0 to 5000, inclusive. (Default: 5000)", + "format": "int32", + "location": "query", + "maximum": "5000", + "minimum": "0", + "type": "integer" + }, + "pageToken": { + "description": "Specifies a nextPageToken returned by a previous list request. This token can be used to request the next page of results from a previous list request.", + "location": "query", + "type": "string" + }, + "projectName": { + "description": "The project name of the resource view.", + "location": "path", + "required": true, + "type": "string" + }, + "zone": { + "description": "The zone name of the resource view.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{projectName}/zones/{zone}/resourceViews", + "response": { + "$ref": "ZoneViewsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly", + "https://www.googleapis.com/auth/ndev.cloudman", + "https://www.googleapis.com/auth/ndev.cloudman.readonly" + ] + }, + "listresources": { + "description": "List the resources of the resource view.", + "httpMethod": "POST", + "id": "resourceviews.zoneViews.listresources", + "parameterOrder": [ + "projectName", + "zone", + "resourceViewName" + ], + "parameters": { + "maxResults": { + "default": "5000", + "description": "Maximum count of results to be returned. Acceptable values are 0 to 5000, inclusive. (Default: 5000)", + "format": "int32", + "location": "query", + "maximum": "5000", + "minimum": "0", + "type": "integer" + }, + "pageToken": { + "description": "Specifies a nextPageToken returned by a previous list request. This token can be used to request the next page of results from a previous list request.", + "location": "query", + "type": "string" + }, + "projectName": { + "description": "The project name of the resource view.", + "location": "path", + "required": true, + "type": "string" + }, + "resourceViewName": { + "description": "The name of the resource view.", + "location": "path", + "required": true, + "type": "string" + }, + "zone": { + "description": "The zone name of the resource view.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{projectName}/zones/{zone}/resourceViews/{resourceViewName}/resources", + "response": { + "$ref": "ZoneViewsListResourcesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly", + "https://www.googleapis.com/auth/ndev.cloudman", + "https://www.googleapis.com/auth/ndev.cloudman.readonly" + ] + }, + "removeresources": { + "description": "Remove resources from the view.", + "httpMethod": "POST", + "id": "resourceviews.zoneViews.removeresources", + "parameterOrder": [ + "projectName", + "zone", + "resourceViewName" + ], + "parameters": { + "projectName": { + "description": "The project name of the resource view.", + "location": "path", + "required": true, + "type": "string" + }, + "resourceViewName": { + "description": "The name of the resource view.", + "location": "path", + "required": true, + "type": "string" + }, + "zone": { + "description": "The zone name of the resource view.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{projectName}/zones/{zone}/resourceViews/{resourceViewName}/removeResources", + "request": { + "$ref": "ZoneViewsRemoveResourcesRequest" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/ndev.cloudman" + ] + } + } } - } }, - "ZoneViewsInsertResponse": { - "id": "ZoneViewsInsertResponse", - "type": "object", - "description": "The response to an insert request.", - "properties": { - "resource": { - "$ref": "ResourceView", - "description": "The resource view object that has been inserted." + "revision": "20160512", + "rootUrl": "https://www.googleapis.com/", + "schemas": { + "Label": { + "description": "The Label to be applied to the resource views.", + "id": "Label", + "properties": { + "key": { + "description": "Key of the label.", + "type": "string" + }, + "value": { + "description": "Value of the label.", + "type": "string" + } + }, + "type": "object" + }, + "RegionViewsAddResourcesRequest": { + "description": "The request to add resources to the resource view.", + "id": "RegionViewsAddResourcesRequest", + "properties": { + "resources": { + "description": "The list of resources to be added.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "RegionViewsInsertResponse": { + "description": "The response to a resource view insert request.", + "id": "RegionViewsInsertResponse", + "properties": { + "resource": { + "$ref": "ResourceView", + "description": "The resource view object inserted." + } + }, + "type": "object" + }, + "RegionViewsListResourcesResponse": { + "description": "The response to the list resource request.", + "id": "RegionViewsListResourcesResponse", + "properties": { + "members": { + "description": "The resources in the view.", + "items": { + "type": "string" + }, + "type": "array" + }, + "nextPageToken": { + "description": "A token used for pagination.", + "type": "string" + } + }, + "type": "object" + }, + "RegionViewsListResponse": { + "description": "The response to the list resource view request.", + "id": "RegionViewsListResponse", + "properties": { + "nextPageToken": { + "description": "A token used for pagination.", + "type": "string" + }, + "resourceViews": { + "description": "The list of resource views that meet the criteria.", + "items": { + "$ref": "ResourceView" + }, + "type": "array" + } + }, + "type": "object" + }, + "RegionViewsRemoveResourcesRequest": { + "description": "The request to remove resources from the resource view.", + "id": "RegionViewsRemoveResourcesRequest", + "properties": { + "resources": { + "description": "The list of resources to be removed.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "ResourceView": { + "description": "The resource view object.", + "id": "ResourceView", + "properties": { + "creationTime": { + "description": "The creation time of the resource view.", + "type": "string" + }, + "description": { + "description": "The detailed description of the resource view.", + "type": "string" + }, + "id": { + "description": "[Output Only] The ID of the resource view.", + "type": "string" + }, + "kind": { + "default": "resourceviews#resourceView", + "description": "Type of the resource.", + "type": "string" + }, + "labels": { + "description": "The labels for events.", + "items": { + "$ref": "Label" + }, + "type": "array" + }, + "lastModified": { + "description": "The last modified time of the view. Not supported yet.", + "type": "string" + }, + "members": { + "description": "A list of all resources in the resource view.", + "items": { + "type": "string" + }, + "type": "array" + }, + "name": { + "description": "The name of the resource view.", + "type": "string" + }, + "numMembers": { + "description": "The total number of resources in the resource view.", + "format": "uint32", + "type": "integer" + }, + "selfLink": { + "description": "[Output Only] A self-link to the resource view.", + "type": "string" + } + }, + "type": "object" + }, + "ZoneViewsAddResourcesRequest": { + "description": "The request to add resources to the resource view.", + "id": "ZoneViewsAddResourcesRequest", + "properties": { + "resources": { + "description": "The list of resources to be added.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "ZoneViewsInsertResponse": { + "description": "The response to an insert request.", + "id": "ZoneViewsInsertResponse", + "properties": { + "resource": { + "$ref": "ResourceView", + "description": "The resource view object that has been inserted." + } + }, + "type": "object" + }, + "ZoneViewsListResourcesResponse": { + "description": "The response to a list resource request.", + "id": "ZoneViewsListResourcesResponse", + "properties": { + "members": { + "description": "The full URL of resources in the view.", + "items": { + "type": "string" + }, + "type": "array" + }, + "nextPageToken": { + "description": "A token used for pagination.", + "type": "string" + } + }, + "type": "object" + }, + "ZoneViewsListResponse": { + "description": "The response to a list request.", + "id": "ZoneViewsListResponse", + "properties": { + "nextPageToken": { + "description": "A token used for pagination.", + "type": "string" + }, + "resourceViews": { + "description": "The result that contains all resource views that meet the criteria.", + "items": { + "$ref": "ResourceView" + }, + "type": "array" + } + }, + "type": "object" + }, + "ZoneViewsRemoveResourcesRequest": { + "description": "The request to remove resources from the resource view.", + "id": "ZoneViewsRemoveResourcesRequest", + "properties": { + "resources": { + "description": "The list of resources to be removed.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" } - } }, - "ZoneViewsListResourcesResponse": { - "id": "ZoneViewsListResourcesResponse", - "type": "object", - "description": "The response to a list resource request.", - "properties": { - "members": { - "type": "array", - "description": "The full URL of resources in the view.", - "items": { - "type": "string" - } - }, - "nextPageToken": { - "type": "string", - "description": "A token used for pagination." - } - } - }, - "ZoneViewsListResponse": { - "id": "ZoneViewsListResponse", - "type": "object", - "description": "The response to a list request.", - "properties": { - "nextPageToken": { - "type": "string", - "description": "A token used for pagination." - }, - "resourceViews": { - "type": "array", - "description": "The result that contains all resource views that meet the criteria.", - "items": { - "$ref": "ResourceView" - } - } - } - }, - "ZoneViewsRemoveResourcesRequest": { - "id": "ZoneViewsRemoveResourcesRequest", - "type": "object", - "description": "The request to remove resources from the resource view.", - "properties": { - "resources": { - "type": "array", - "description": "The list of resources to be removed.", - "items": { - "type": "string" - } - } - } - } - }, - "resources": { - "regionViews": { - "methods": { - "addresources": { - "id": "resourceviews.regionViews.addresources", - "path": "{projectName}/regions/{region}/resourceViews/{resourceViewName}/addResources", - "httpMethod": "POST", - "description": "Add resources to the view.", - "parameters": { - "projectName": { - "type": "string", - "description": "The project name of the resource view.", - "required": true, - "location": "path" - }, - "region": { - "type": "string", - "description": "The region name of the resource view.", - "required": true, - "location": "path" - }, - "resourceViewName": { - "type": "string", - "description": "The name of the resource view.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "projectName", - "region", - "resourceViewName" - ], - "request": { - "$ref": "RegionViewsAddResourcesRequest" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/ndev.cloudman" - ] - }, - "delete": { - "id": "resourceviews.regionViews.delete", - "path": "{projectName}/regions/{region}/resourceViews/{resourceViewName}", - "httpMethod": "DELETE", - "description": "Delete a resource view.", - "parameters": { - "projectName": { - "type": "string", - "description": "The project name of the resource view.", - "required": true, - "location": "path" - }, - "region": { - "type": "string", - "description": "The region name of the resource view.", - "required": true, - "location": "path" - }, - "resourceViewName": { - "type": "string", - "description": "The name of the resource view.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "projectName", - "region", - "resourceViewName" - ], - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/ndev.cloudman" - ] - }, - "get": { - "id": "resourceviews.regionViews.get", - "path": "{projectName}/regions/{region}/resourceViews/{resourceViewName}", - "httpMethod": "GET", - "description": "Get the information of a resource view.", - "parameters": { - "projectName": { - "type": "string", - "description": "The project name of the resource view.", - "required": true, - "location": "path" - }, - "region": { - "type": "string", - "description": "The region name of the resource view.", - "required": true, - "location": "path" - }, - "resourceViewName": { - "type": "string", - "description": "The name of the resource view.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "projectName", - "region", - "resourceViewName" - ], - "response": { - "$ref": "ResourceView" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly", - "https://www.googleapis.com/auth/ndev.cloudman", - "https://www.googleapis.com/auth/ndev.cloudman.readonly" - ] - }, - "insert": { - "id": "resourceviews.regionViews.insert", - "path": "{projectName}/regions/{region}/resourceViews", - "httpMethod": "POST", - "description": "Create a resource view.", - "parameters": { - "projectName": { - "type": "string", - "description": "The project name of the resource view.", - "required": true, - "location": "path" - }, - "region": { - "type": "string", - "description": "The region name of the resource view.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "projectName", - "region" - ], - "request": { - "$ref": "ResourceView" - }, - "response": { - "$ref": "RegionViewsInsertResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/ndev.cloudman" - ] - }, - "list": { - "id": "resourceviews.regionViews.list", - "path": "{projectName}/regions/{region}/resourceViews", - "httpMethod": "GET", - "description": "List resource views.", - "parameters": { - "maxResults": { - "type": "integer", - "description": "Maximum count of results to be returned. Acceptable values are 0 to 5000, inclusive. (Default: 5000)", - "default": "5000", - "format": "int32", - "minimum": "0", - "maximum": "5000", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a nextPageToken returned by a previous list request. This token can be used to request the next page of results from a previous list request.", - "location": "query" - }, - "projectName": { - "type": "string", - "description": "The project name of the resource view.", - "required": true, - "location": "path" - }, - "region": { - "type": "string", - "description": "The region name of the resource view.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "projectName", - "region" - ], - "response": { - "$ref": "RegionViewsListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly", - "https://www.googleapis.com/auth/ndev.cloudman", - "https://www.googleapis.com/auth/ndev.cloudman.readonly" - ] - }, - "listresources": { - "id": "resourceviews.regionViews.listresources", - "path": "{projectName}/regions/{region}/resourceViews/{resourceViewName}/resources", - "httpMethod": "POST", - "description": "List the resources in the view.", - "parameters": { - "maxResults": { - "type": "integer", - "description": "Maximum count of results to be returned. Acceptable values are 0 to 5000, inclusive. (Default: 5000)", - "default": "5000", - "format": "int32", - "minimum": "0", - "maximum": "5000", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a nextPageToken returned by a previous list request. This token can be used to request the next page of results from a previous list request.", - "location": "query" - }, - "projectName": { - "type": "string", - "description": "The project name of the resource view.", - "required": true, - "location": "path" - }, - "region": { - "type": "string", - "description": "The region name of the resource view.", - "required": true, - "location": "path" - }, - "resourceViewName": { - "type": "string", - "description": "The name of the resource view.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "projectName", - "region", - "resourceViewName" - ], - "response": { - "$ref": "RegionViewsListResourcesResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly", - "https://www.googleapis.com/auth/ndev.cloudman", - "https://www.googleapis.com/auth/ndev.cloudman.readonly" - ] - }, - "removeresources": { - "id": "resourceviews.regionViews.removeresources", - "path": "{projectName}/regions/{region}/resourceViews/{resourceViewName}/removeResources", - "httpMethod": "POST", - "description": "Remove resources from the view.", - "parameters": { - "projectName": { - "type": "string", - "description": "The project name of the resource view.", - "required": true, - "location": "path" - }, - "region": { - "type": "string", - "description": "The region name of the resource view.", - "required": true, - "location": "path" - }, - "resourceViewName": { - "type": "string", - "description": "The name of the resource view.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "projectName", - "region", - "resourceViewName" - ], - "request": { - "$ref": "RegionViewsRemoveResourcesRequest" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/ndev.cloudman" - ] - } - } - }, - "zoneViews": { - "methods": { - "addresources": { - "id": "resourceviews.zoneViews.addresources", - "path": "{projectName}/zones/{zone}/resourceViews/{resourceViewName}/addResources", - "httpMethod": "POST", - "description": "Add resources to the view.", - "parameters": { - "projectName": { - "type": "string", - "description": "The project name of the resource view.", - "required": true, - "location": "path" - }, - "resourceViewName": { - "type": "string", - "description": "The name of the resource view.", - "required": true, - "location": "path" - }, - "zone": { - "type": "string", - "description": "The zone name of the resource view.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "projectName", - "zone", - "resourceViewName" - ], - "request": { - "$ref": "ZoneViewsAddResourcesRequest" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/ndev.cloudman" - ] - }, - "delete": { - "id": "resourceviews.zoneViews.delete", - "path": "{projectName}/zones/{zone}/resourceViews/{resourceViewName}", - "httpMethod": "DELETE", - "description": "Delete a resource view.", - "parameters": { - "projectName": { - "type": "string", - "description": "The project name of the resource view.", - "required": true, - "location": "path" - }, - "resourceViewName": { - "type": "string", - "description": "The name of the resource view.", - "required": true, - "location": "path" - }, - "zone": { - "type": "string", - "description": "The zone name of the resource view.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "projectName", - "zone", - "resourceViewName" - ], - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/ndev.cloudman" - ] - }, - "get": { - "id": "resourceviews.zoneViews.get", - "path": "{projectName}/zones/{zone}/resourceViews/{resourceViewName}", - "httpMethod": "GET", - "description": "Get the information of a zonal resource view.", - "parameters": { - "projectName": { - "type": "string", - "description": "The project name of the resource view.", - "required": true, - "location": "path" - }, - "resourceViewName": { - "type": "string", - "description": "The name of the resource view.", - "required": true, - "location": "path" - }, - "zone": { - "type": "string", - "description": "The zone name of the resource view.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "projectName", - "zone", - "resourceViewName" - ], - "response": { - "$ref": "ResourceView" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly", - "https://www.googleapis.com/auth/ndev.cloudman", - "https://www.googleapis.com/auth/ndev.cloudman.readonly" - ] - }, - "insert": { - "id": "resourceviews.zoneViews.insert", - "path": "{projectName}/zones/{zone}/resourceViews", - "httpMethod": "POST", - "description": "Create a resource view.", - "parameters": { - "projectName": { - "type": "string", - "description": "The project name of the resource view.", - "required": true, - "location": "path" - }, - "zone": { - "type": "string", - "description": "The zone name of the resource view.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "projectName", - "zone" - ], - "request": { - "$ref": "ResourceView" - }, - "response": { - "$ref": "ZoneViewsInsertResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/ndev.cloudman" - ] - }, - "list": { - "id": "resourceviews.zoneViews.list", - "path": "{projectName}/zones/{zone}/resourceViews", - "httpMethod": "GET", - "description": "List resource views.", - "parameters": { - "maxResults": { - "type": "integer", - "description": "Maximum count of results to be returned. Acceptable values are 0 to 5000, inclusive. (Default: 5000)", - "default": "5000", - "format": "int32", - "minimum": "0", - "maximum": "5000", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a nextPageToken returned by a previous list request. This token can be used to request the next page of results from a previous list request.", - "location": "query" - }, - "projectName": { - "type": "string", - "description": "The project name of the resource view.", - "required": true, - "location": "path" - }, - "zone": { - "type": "string", - "description": "The zone name of the resource view.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "projectName", - "zone" - ], - "response": { - "$ref": "ZoneViewsListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly", - "https://www.googleapis.com/auth/ndev.cloudman", - "https://www.googleapis.com/auth/ndev.cloudman.readonly" - ] - }, - "listresources": { - "id": "resourceviews.zoneViews.listresources", - "path": "{projectName}/zones/{zone}/resourceViews/{resourceViewName}/resources", - "httpMethod": "POST", - "description": "List the resources of the resource view.", - "parameters": { - "maxResults": { - "type": "integer", - "description": "Maximum count of results to be returned. Acceptable values are 0 to 5000, inclusive. (Default: 5000)", - "default": "5000", - "format": "int32", - "minimum": "0", - "maximum": "5000", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a nextPageToken returned by a previous list request. This token can be used to request the next page of results from a previous list request.", - "location": "query" - }, - "projectName": { - "type": "string", - "description": "The project name of the resource view.", - "required": true, - "location": "path" - }, - "resourceViewName": { - "type": "string", - "description": "The name of the resource view.", - "required": true, - "location": "path" - }, - "zone": { - "type": "string", - "description": "The zone name of the resource view.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "projectName", - "zone", - "resourceViewName" - ], - "response": { - "$ref": "ZoneViewsListResourcesResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly", - "https://www.googleapis.com/auth/ndev.cloudman", - "https://www.googleapis.com/auth/ndev.cloudman.readonly" - ] - }, - "removeresources": { - "id": "resourceviews.zoneViews.removeresources", - "path": "{projectName}/zones/{zone}/resourceViews/{resourceViewName}/removeResources", - "httpMethod": "POST", - "description": "Remove resources from the view.", - "parameters": { - "projectName": { - "type": "string", - "description": "The project name of the resource view.", - "required": true, - "location": "path" - }, - "resourceViewName": { - "type": "string", - "description": "The name of the resource view.", - "required": true, - "location": "path" - }, - "zone": { - "type": "string", - "description": "The zone name of the resource view.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "projectName", - "zone", - "resourceViewName" - ], - "request": { - "$ref": "ZoneViewsRemoveResourcesRequest" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/ndev.cloudman" - ] - } - } - } - } -} + "servicePath": "resourceviews/v1beta1/projects/", + "title": "Resource Views API", + "version": "v1beta1" +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/resourceviews/v1beta2/resourceviews-api.json b/vendor/google.golang.org/api/resourceviews/v1beta2/resourceviews-api.json index 233acf362..8a21d0405 100644 --- a/vendor/google.golang.org/api/resourceviews/v1beta2/resourceviews-api.json +++ b/vendor/google.golang.org/api/resourceviews/v1beta2/resourceviews-api.json @@ -1,1052 +1,1052 @@ { - "kind": "discovery#restDescription", - "etag": "\"YWOzh2SDasdU84ArJnpYek-OMdg/lDspG_RuIpldIEGq_lxUn6PFZOk\"", - "discoveryVersion": "v1", - "id": "resourceviews:v1beta2", - "name": "resourceviews", - "version": "v1beta2", - "revision": "20160512", - "title": "Google Compute Engine Instance Groups API", - "description": "The Resource View API allows users to create and manage logical sets of Google Compute Engine instances.", - "ownerDomain": "google.com", - "ownerName": "Google", - "icons": { - "x16": "https://www.gstatic.com/images/branding/product/1x/googleg_16dp.png", - "x32": "https://www.gstatic.com/images/branding/product/1x/googleg_32dp.png" - }, - "documentationLink": "https://developers.google.com/compute/", - "labels": [ - "limited_availability" - ], - "protocol": "rest", - "baseUrl": "https://www.googleapis.com/resourceviews/v1beta2/projects/", - "basePath": "/resourceviews/v1beta2/projects/", - "rootUrl": "https://www.googleapis.com/", - "servicePath": "resourceviews/v1beta2/projects/", - "batchPath": "batch/resourceviews/v1beta2", - "parameters": { - "alt": { - "type": "string", - "description": "Data format for the response.", - "default": "json", - "enum": [ - "json" - ], - "enumDescriptions": [ - "Responses with Content-Type of application/json" - ], - "location": "query" - }, - "fields": { - "type": "string", - "description": "Selector specifying which fields to include in a partial response.", - "location": "query" - }, - "key": { - "type": "string", - "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" - }, - "oauth_token": { - "type": "string", - "description": "OAuth 2.0 token for the current user.", - "location": "query" - }, - "prettyPrint": { - "type": "boolean", - "description": "Returns response with indentations and line breaks.", - "default": "true", - "location": "query" - }, - "quotaUser": { - "type": "string", - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", - "location": "query" - }, - "userIp": { - "type": "string", - "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", - "location": "query" - } - }, - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/cloud-platform": { - "description": "View and manage your data across Google Cloud Platform services" - }, - "https://www.googleapis.com/auth/cloud-platform.read-only": { - "description": "View your data across Google Cloud Platform services" - }, - "https://www.googleapis.com/auth/compute": { - "description": "View and manage your Google Compute Engine resources" - }, - "https://www.googleapis.com/auth/compute.readonly": { - "description": "View your Google Compute Engine resources" - }, - "https://www.googleapis.com/auth/ndev.cloudman": { - "description": "View and manage your Google Cloud Platform management resources and deployment status information" - }, - "https://www.googleapis.com/auth/ndev.cloudman.readonly": { - "description": "View your Google Cloud Platform management resources and deployment status information" + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/cloud-platform": { + "description": "View and manage your data across Google Cloud Platform services" + }, + "https://www.googleapis.com/auth/cloud-platform.read-only": { + "description": "View your data across Google Cloud Platform services" + }, + "https://www.googleapis.com/auth/compute": { + "description": "View and manage your Google Compute Engine resources" + }, + "https://www.googleapis.com/auth/compute.readonly": { + "description": "View your Google Compute Engine resources" + }, + "https://www.googleapis.com/auth/ndev.cloudman": { + "description": "View and manage your Google Cloud Platform management resources and deployment status information" + }, + "https://www.googleapis.com/auth/ndev.cloudman.readonly": { + "description": "View your Google Cloud Platform management resources and deployment status information" + } + } } - } - } - }, - "schemas": { - "Label": { - "id": "Label", - "type": "object", - "description": "The Label to be applied to the resource views.", - "properties": { + }, + "basePath": "/resourceviews/v1beta2/projects/", + "baseUrl": "https://www.googleapis.com/resourceviews/v1beta2/projects/", + "batchPath": "batch/resourceviews/v1beta2", + "description": "The Resource View API allows users to create and manage logical sets of Google Compute Engine instances.", + "discoveryVersion": "v1", + "documentationLink": "https://developers.google.com/compute/", + "etag": "\"-iA1DTNe4s-I6JZXPt1t1Ypy8IU/lDspG_RuIpldIEGq_lxUn6PFZOk\"", + "icons": { + "x16": "https://www.gstatic.com/images/branding/product/1x/googleg_16dp.png", + "x32": "https://www.gstatic.com/images/branding/product/1x/googleg_32dp.png" + }, + "id": "resourceviews:v1beta2", + "kind": "discovery#restDescription", + "labels": [ + "limited_availability" + ], + "name": "resourceviews", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "alt": { + "default": "json", + "description": "Data format for the response.", + "enum": [ + "json" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json" + ], + "location": "query", + "type": "string" + }, + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "location": "query", + "type": "string" + }, "key": { - "type": "string", - "description": "Key of the label." + "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" }, - "value": { - "type": "string", - "description": "Value of the label." + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", + "location": "query", + "type": "string" + }, + "userIp": { + "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", + "location": "query", + "type": "string" } - } }, - "ListResourceResponseItem": { - "id": "ListResourceResponseItem", - "type": "object", - "description": "The list response item that contains the resource and end points information.", - "properties": { - "endpoints": { - "type": "object", - "description": "The list of service end points on the resource.", - "additionalProperties": { - "type": "array", - "description": "The name of the service end point.", - "items": { - "type": "integer", - "format": "int32" - } - } - }, - "resource": { - "type": "string", - "description": "The full URL of the resource." - } - } - }, - "Operation": { - "id": "Operation", - "type": "object", - "description": "An operation resource, used to manage asynchronous API requests.", - "properties": { - "clientOperationId": { - "type": "string", - "description": "[Output only] An optional identifier specified by the client when the mutation was initiated. Must be unique for all operation resources in the project." - }, - "creationTimestamp": { - "type": "string", - "description": "[Output Only] The time that this operation was requested, in RFC3339 text format." - }, - "endTime": { - "type": "string", - "description": "[Output Only] The time that this operation was completed, in RFC3339 text format." - }, - "error": { - "type": "object", - "description": "[Output Only] If errors occurred during processing of this operation, this field will be populated.", - "properties": { - "errors": { - "type": "array", - "description": "[Output Only] The array of errors encountered while processing this operation.", - "items": { - "type": "object", - "properties": { - "code": { - "type": "string", - "description": "[Output Only] The error type identifier for this error." - }, - "location": { - "type": "string", - "description": "[Output Only] Indicates the field in the request which caused the error. This property is optional." - }, - "message": { - "type": "string", - "description": "[Output Only] An optional, human-readable error message." - } - } - } - } - } - }, - "httpErrorMessage": { - "type": "string", - "description": "[Output only] If operation fails, the HTTP error message returned." - }, - "httpErrorStatusCode": { - "type": "integer", - "description": "[Output only] If operation fails, the HTTP error status code returned.", - "format": "int32" - }, - "id": { - "type": "string", - "description": "[Output Only] Unique identifier for the resource, generated by the server.", - "format": "uint64" - }, - "insertTime": { - "type": "string", - "description": "[Output Only] The time that this operation was requested, in RFC3339 text format." - }, - "kind": { - "type": "string", - "description": "[Output only] Type of the resource.", - "default": "resourceviews#operation" - }, - "name": { - "type": "string", - "description": "[Output Only] Name of the resource." - }, - "operationType": { - "type": "string", - "description": "[Output only] Type of the operation. Operations include insert, update, and delete." - }, - "progress": { - "type": "integer", - "description": "[Output only] An optional progress indicator that ranges from 0 to 100. There is no requirement that this be linear or support any granularity of operations. This should not be used to guess at when the operation will be complete. This number should be monotonically increasing as the operation progresses.", - "format": "int32" - }, - "region": { - "type": "string", - "description": "[Output Only] URL of the region where the operation resides. Only available when performing regional operations." - }, - "selfLink": { - "type": "string", - "description": "[Output Only] Server-defined fully-qualified URL for this resource." - }, - "startTime": { - "type": "string", - "description": "[Output Only] The time that this operation was started by the server, in RFC3339 text format." - }, - "status": { - "type": "string", - "description": "[Output Only] Status of the operation." - }, - "statusMessage": { - "type": "string", - "description": "[Output Only] An optional textual description of the current status of the operation." - }, - "targetId": { - "type": "string", - "description": "[Output Only] Unique target ID which identifies a particular incarnation of the target.", - "format": "uint64" - }, - "targetLink": { - "type": "string", - "description": "[Output only] URL of the resource the operation is mutating." - }, - "user": { - "type": "string", - "description": "[Output Only] User who requested the operation, for example: user@example.com." - }, - "warnings": { - "type": "array", - "description": "[Output Only] If there are issues with this operation, a warning is returned.", - "items": { - "type": "object", - "properties": { - "code": { - "type": "string", - "description": "[Output only] The warning type identifier for this warning." - }, - "data": { - "type": "array", - "description": "[Output only] Metadata for this warning in key:value format.", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "[Output Only] Metadata key for this warning." + "protocol": "rest", + "resources": { + "zoneOperations": { + "methods": { + "get": { + "description": "Retrieves the specified zone-specific operation resource.", + "httpMethod": "GET", + "id": "resourceviews.zoneOperations.get", + "parameterOrder": [ + "project", + "zone", + "operation" + ], + "parameters": { + "operation": { + "description": "Name of the operation resource to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "project": { + "description": "Name of the project scoping this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "zone": { + "description": "Name of the zone scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } }, - "value": { - "type": "string", - "description": "[Output Only] Metadata value for this warning." - } - } + "path": "{project}/zones/{zone}/operations/{operation}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly", + "https://www.googleapis.com/auth/ndev.cloudman", + "https://www.googleapis.com/auth/ndev.cloudman.readonly" + ] + }, + "list": { + "description": "Retrieves the list of operation resources contained within the specified zone.", + "httpMethod": "GET", + "id": "resourceviews.zoneOperations.list", + "parameterOrder": [ + "project", + "zone" + ], + "parameters": { + "filter": { + "description": "Optional. Filter expression for filtering listed resources.", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "Optional. Maximum count of results to be returned. Maximum value is 500 and default value is 500.", + "format": "uint32", + "location": "query", + "maximum": "500", + "minimum": "0", + "type": "integer" + }, + "pageToken": { + "description": "Optional. Tag returned by a previous list request truncated by maxResults. Used to continue a previous list request.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Name of the project scoping this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "zone": { + "description": "Name of the zone scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/operations", + "response": { + "$ref": "OperationList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly", + "https://www.googleapis.com/auth/ndev.cloudman", + "https://www.googleapis.com/auth/ndev.cloudman.readonly" + ] } - }, - "message": { - "type": "string", - "description": "[Output only] Optional human-readable details for this warning." - } } - } }, - "zone": { - "type": "string", - "description": "[Output Only] URL of the zone where the operation resides. Only available when performing per-zone operations." + "zoneViews": { + "methods": { + "addResources": { + "description": "Add resources to the view.", + "httpMethod": "POST", + "id": "resourceviews.zoneViews.addResources", + "parameterOrder": [ + "project", + "zone", + "resourceView" + ], + "parameters": { + "project": { + "description": "The project name of the resource view.", + "location": "path", + "required": true, + "type": "string" + }, + "resourceView": { + "description": "The name of the resource view.", + "location": "path", + "required": true, + "type": "string" + }, + "zone": { + "description": "The zone name of the resource view.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/resourceViews/{resourceView}/addResources", + "request": { + "$ref": "ZoneViewsAddResourcesRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/ndev.cloudman" + ] + }, + "delete": { + "description": "Delete a resource view.", + "httpMethod": "DELETE", + "id": "resourceviews.zoneViews.delete", + "parameterOrder": [ + "project", + "zone", + "resourceView" + ], + "parameters": { + "project": { + "description": "The project name of the resource view.", + "location": "path", + "required": true, + "type": "string" + }, + "resourceView": { + "description": "The name of the resource view.", + "location": "path", + "required": true, + "type": "string" + }, + "zone": { + "description": "The zone name of the resource view.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/resourceViews/{resourceView}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/ndev.cloudman" + ] + }, + "get": { + "description": "Get the information of a zonal resource view.", + "httpMethod": "GET", + "id": "resourceviews.zoneViews.get", + "parameterOrder": [ + "project", + "zone", + "resourceView" + ], + "parameters": { + "project": { + "description": "The project name of the resource view.", + "location": "path", + "required": true, + "type": "string" + }, + "resourceView": { + "description": "The name of the resource view.", + "location": "path", + "required": true, + "type": "string" + }, + "zone": { + "description": "The zone name of the resource view.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/resourceViews/{resourceView}", + "response": { + "$ref": "ResourceView" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly", + "https://www.googleapis.com/auth/ndev.cloudman", + "https://www.googleapis.com/auth/ndev.cloudman.readonly" + ] + }, + "getService": { + "description": "Get the service information of a resource view or a resource.", + "httpMethod": "POST", + "id": "resourceviews.zoneViews.getService", + "parameterOrder": [ + "project", + "zone", + "resourceView" + ], + "parameters": { + "project": { + "description": "The project name of the resource view.", + "location": "path", + "required": true, + "type": "string" + }, + "resourceName": { + "description": "The name of the resource if user wants to get the service information of the resource.", + "location": "query", + "type": "string" + }, + "resourceView": { + "description": "The name of the resource view.", + "location": "path", + "required": true, + "type": "string" + }, + "zone": { + "description": "The zone name of the resource view.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/resourceViews/{resourceView}/getService", + "response": { + "$ref": "ZoneViewsGetServiceResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/ndev.cloudman" + ] + }, + "insert": { + "description": "Create a resource view.", + "httpMethod": "POST", + "id": "resourceviews.zoneViews.insert", + "parameterOrder": [ + "project", + "zone" + ], + "parameters": { + "project": { + "description": "The project name of the resource view.", + "location": "path", + "required": true, + "type": "string" + }, + "zone": { + "description": "The zone name of the resource view.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/resourceViews", + "request": { + "$ref": "ResourceView" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/ndev.cloudman" + ] + }, + "list": { + "description": "List resource views.", + "httpMethod": "GET", + "id": "resourceviews.zoneViews.list", + "parameterOrder": [ + "project", + "zone" + ], + "parameters": { + "maxResults": { + "default": "5000", + "description": "Maximum count of results to be returned. Acceptable values are 0 to 5000, inclusive. (Default: 5000)", + "format": "int32", + "location": "query", + "maximum": "5000", + "minimum": "0", + "type": "integer" + }, + "pageToken": { + "description": "Specifies a nextPageToken returned by a previous list request. This token can be used to request the next page of results from a previous list request.", + "location": "query", + "type": "string" + }, + "project": { + "description": "The project name of the resource view.", + "location": "path", + "required": true, + "type": "string" + }, + "zone": { + "description": "The zone name of the resource view.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/resourceViews", + "response": { + "$ref": "ZoneViewsList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly", + "https://www.googleapis.com/auth/ndev.cloudman", + "https://www.googleapis.com/auth/ndev.cloudman.readonly" + ] + }, + "listResources": { + "description": "List the resources of the resource view.", + "httpMethod": "GET", + "id": "resourceviews.zoneViews.listResources", + "parameterOrder": [ + "project", + "zone", + "resourceView" + ], + "parameters": { + "format": { + "description": "The requested format of the return value. It can be URL or URL_PORT. A JSON object will be included in the response based on the format. The default format is NONE, which results in no JSON in the response.", + "enum": [ + "NONE", + "URL", + "URL_PORT" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "location": "query", + "type": "string" + }, + "listState": { + "default": "ALL", + "description": "The state of the instance to list. By default, it lists all instances.", + "enum": [ + "ALL", + "RUNNING" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "5000", + "description": "Maximum count of results to be returned. Acceptable values are 0 to 5000, inclusive. (Default: 5000)", + "format": "int32", + "location": "query", + "maximum": "5000", + "minimum": "0", + "type": "integer" + }, + "pageToken": { + "description": "Specifies a nextPageToken returned by a previous list request. This token can be used to request the next page of results from a previous list request.", + "location": "query", + "type": "string" + }, + "project": { + "description": "The project name of the resource view.", + "location": "path", + "required": true, + "type": "string" + }, + "resourceView": { + "description": "The name of the resource view.", + "location": "path", + "required": true, + "type": "string" + }, + "serviceName": { + "description": "The service name to return in the response. It is optional and if it is not set, all the service end points will be returned.", + "location": "query", + "type": "string" + }, + "zone": { + "description": "The zone name of the resource view.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/resourceViews/{resourceView}/resources", + "response": { + "$ref": "ZoneViewsListResourcesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly", + "https://www.googleapis.com/auth/ndev.cloudman", + "https://www.googleapis.com/auth/ndev.cloudman.readonly" + ] + }, + "removeResources": { + "description": "Remove resources from the view.", + "httpMethod": "POST", + "id": "resourceviews.zoneViews.removeResources", + "parameterOrder": [ + "project", + "zone", + "resourceView" + ], + "parameters": { + "project": { + "description": "The project name of the resource view.", + "location": "path", + "required": true, + "type": "string" + }, + "resourceView": { + "description": "The name of the resource view.", + "location": "path", + "required": true, + "type": "string" + }, + "zone": { + "description": "The zone name of the resource view.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/resourceViews/{resourceView}/removeResources", + "request": { + "$ref": "ZoneViewsRemoveResourcesRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/ndev.cloudman" + ] + }, + "setService": { + "description": "Update the service information of a resource view or a resource.", + "httpMethod": "POST", + "id": "resourceviews.zoneViews.setService", + "parameterOrder": [ + "project", + "zone", + "resourceView" + ], + "parameters": { + "project": { + "description": "The project name of the resource view.", + "location": "path", + "required": true, + "type": "string" + }, + "resourceView": { + "description": "The name of the resource view.", + "location": "path", + "required": true, + "type": "string" + }, + "zone": { + "description": "The zone name of the resource view.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/zones/{zone}/resourceViews/{resourceView}/setService", + "request": { + "$ref": "ZoneViewsSetServiceRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/ndev.cloudman" + ] + } + } } - } }, - "OperationList": { - "id": "OperationList", - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Unique identifier for the resource; defined by the server (output only)." + "revision": "20160512", + "rootUrl": "https://www.googleapis.com/", + "schemas": { + "Label": { + "description": "The Label to be applied to the resource views.", + "id": "Label", + "properties": { + "key": { + "description": "Key of the label.", + "type": "string" + }, + "value": { + "description": "Value of the label.", + "type": "string" + } + }, + "type": "object" }, - "items": { - "type": "array", - "description": "The operation resources.", - "items": { - "$ref": "Operation" - } + "ListResourceResponseItem": { + "description": "The list response item that contains the resource and end points information.", + "id": "ListResourceResponseItem", + "properties": { + "endpoints": { + "additionalProperties": { + "description": "The name of the service end point.", + "items": { + "format": "int32", + "type": "integer" + }, + "type": "array" + }, + "description": "The list of service end points on the resource.", + "type": "object" + }, + "resource": { + "description": "The full URL of the resource.", + "type": "string" + } + }, + "type": "object" }, - "kind": { - "type": "string", - "description": "Type of resource.", - "default": "resourceviews#operationList" + "Operation": { + "description": "An operation resource, used to manage asynchronous API requests.", + "id": "Operation", + "properties": { + "clientOperationId": { + "description": "[Output only] An optional identifier specified by the client when the mutation was initiated. Must be unique for all operation resources in the project.", + "type": "string" + }, + "creationTimestamp": { + "description": "[Output Only] The time that this operation was requested, in RFC3339 text format.", + "type": "string" + }, + "endTime": { + "description": "[Output Only] The time that this operation was completed, in RFC3339 text format.", + "type": "string" + }, + "error": { + "description": "[Output Only] If errors occurred during processing of this operation, this field will be populated.", + "properties": { + "errors": { + "description": "[Output Only] The array of errors encountered while processing this operation.", + "items": { + "properties": { + "code": { + "description": "[Output Only] The error type identifier for this error.", + "type": "string" + }, + "location": { + "description": "[Output Only] Indicates the field in the request which caused the error. This property is optional.", + "type": "string" + }, + "message": { + "description": "[Output Only] An optional, human-readable error message.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + } + }, + "type": "object" + }, + "httpErrorMessage": { + "description": "[Output only] If operation fails, the HTTP error message returned.", + "type": "string" + }, + "httpErrorStatusCode": { + "description": "[Output only] If operation fails, the HTTP error status code returned.", + "format": "int32", + "type": "integer" + }, + "id": { + "description": "[Output Only] Unique identifier for the resource, generated by the server.", + "format": "uint64", + "type": "string" + }, + "insertTime": { + "description": "[Output Only] The time that this operation was requested, in RFC3339 text format.", + "type": "string" + }, + "kind": { + "default": "resourceviews#operation", + "description": "[Output only] Type of the resource.", + "type": "string" + }, + "name": { + "description": "[Output Only] Name of the resource.", + "type": "string" + }, + "operationType": { + "description": "[Output only] Type of the operation. Operations include insert, update, and delete.", + "type": "string" + }, + "progress": { + "description": "[Output only] An optional progress indicator that ranges from 0 to 100. There is no requirement that this be linear or support any granularity of operations. This should not be used to guess at when the operation will be complete. This number should be monotonically increasing as the operation progresses.", + "format": "int32", + "type": "integer" + }, + "region": { + "description": "[Output Only] URL of the region where the operation resides. Only available when performing regional operations.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined fully-qualified URL for this resource.", + "type": "string" + }, + "startTime": { + "description": "[Output Only] The time that this operation was started by the server, in RFC3339 text format.", + "type": "string" + }, + "status": { + "description": "[Output Only] Status of the operation.", + "type": "string" + }, + "statusMessage": { + "description": "[Output Only] An optional textual description of the current status of the operation.", + "type": "string" + }, + "targetId": { + "description": "[Output Only] Unique target ID which identifies a particular incarnation of the target.", + "format": "uint64", + "type": "string" + }, + "targetLink": { + "description": "[Output only] URL of the resource the operation is mutating.", + "type": "string" + }, + "user": { + "description": "[Output Only] User who requested the operation, for example: user@example.com.", + "type": "string" + }, + "warnings": { + "description": "[Output Only] If there are issues with this operation, a warning is returned.", + "items": { + "properties": { + "code": { + "description": "[Output only] The warning type identifier for this warning.", + "type": "string" + }, + "data": { + "description": "[Output only] Metadata for this warning in key:value format.", + "items": { + "properties": { + "key": { + "description": "[Output Only] Metadata key for this warning.", + "type": "string" + }, + "value": { + "description": "[Output Only] Metadata value for this warning.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output only] Optional human-readable details for this warning.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "zone": { + "description": "[Output Only] URL of the zone where the operation resides. Only available when performing per-zone operations.", + "type": "string" + } + }, + "type": "object" }, - "nextPageToken": { - "type": "string", - "description": "A token used to continue a truncated list request (output only)." + "OperationList": { + "id": "OperationList", + "properties": { + "id": { + "description": "Unique identifier for the resource; defined by the server (output only).", + "type": "string" + }, + "items": { + "description": "The operation resources.", + "items": { + "$ref": "Operation" + }, + "type": "array" + }, + "kind": { + "default": "resourceviews#operationList", + "description": "Type of resource.", + "type": "string" + }, + "nextPageToken": { + "description": "A token used to continue a truncated list request (output only).", + "type": "string" + }, + "selfLink": { + "description": "Server defined URL for this resource (output only).", + "type": "string" + } + }, + "type": "object" }, - "selfLink": { - "type": "string", - "description": "Server defined URL for this resource (output only)." + "ResourceView": { + "description": "The resource view object.", + "id": "ResourceView", + "properties": { + "creationTimestamp": { + "description": "The creation time of the resource view.", + "type": "string" + }, + "description": { + "description": "The detailed description of the resource view.", + "type": "string" + }, + "endpoints": { + "description": "Services endpoint information.", + "items": { + "$ref": "ServiceEndpoint" + }, + "type": "array" + }, + "fingerprint": { + "description": "The fingerprint of the service endpoint information.", + "type": "string" + }, + "id": { + "description": "[Output Only] The ID of the resource view.", + "type": "string" + }, + "kind": { + "default": "resourceviews#resourceView", + "description": "Type of the resource.", + "type": "string" + }, + "labels": { + "description": "The labels for events.", + "items": { + "$ref": "Label" + }, + "type": "array" + }, + "name": { + "description": "The name of the resource view.", + "type": "string" + }, + "network": { + "description": "The URL of a Compute Engine network to which the resources in the view belong.", + "type": "string" + }, + "resources": { + "description": "A list of all resources in the resource view.", + "items": { + "type": "string" + }, + "type": "array" + }, + "selfLink": { + "description": "[Output Only] A self-link to the resource view.", + "type": "string" + }, + "size": { + "description": "The total number of resources in the resource view.", + "format": "uint32", + "type": "integer" + } + }, + "type": "object" + }, + "ServiceEndpoint": { + "description": "The service endpoint that may be started in a VM.", + "id": "ServiceEndpoint", + "properties": { + "name": { + "description": "The name of the service endpoint.", + "type": "string" + }, + "port": { + "description": "The port of the service endpoint.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "ZoneViewsAddResourcesRequest": { + "description": "The request to add resources to the resource view.", + "id": "ZoneViewsAddResourcesRequest", + "properties": { + "resources": { + "description": "The list of resources to be added.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "ZoneViewsGetServiceResponse": { + "id": "ZoneViewsGetServiceResponse", + "properties": { + "endpoints": { + "description": "The service information.", + "items": { + "$ref": "ServiceEndpoint" + }, + "type": "array" + }, + "fingerprint": { + "description": "The fingerprint of the service information.", + "type": "string" + } + }, + "type": "object" + }, + "ZoneViewsList": { + "description": "The response to a list request.", + "id": "ZoneViewsList", + "properties": { + "items": { + "description": "The result that contains all resource views that meet the criteria.", + "items": { + "$ref": "ResourceView" + }, + "type": "array" + }, + "kind": { + "default": "resourceviews#zoneViewsList", + "description": "Type of resource.", + "type": "string" + }, + "nextPageToken": { + "description": "A token used for pagination.", + "type": "string" + }, + "selfLink": { + "description": "Server defined URL for this resource (output only).", + "type": "string" + } + }, + "type": "object" + }, + "ZoneViewsListResourcesResponse": { + "description": "The response to a list resource request.", + "id": "ZoneViewsListResourcesResponse", + "properties": { + "items": { + "description": "The formatted JSON that is requested by the user.", + "items": { + "$ref": "ListResourceResponseItem" + }, + "type": "array" + }, + "network": { + "description": "The URL of a Compute Engine network to which the resources in the view belong.", + "type": "string" + }, + "nextPageToken": { + "description": "A token used for pagination.", + "type": "string" + } + }, + "type": "object" + }, + "ZoneViewsRemoveResourcesRequest": { + "description": "The request to remove resources from the resource view.", + "id": "ZoneViewsRemoveResourcesRequest", + "properties": { + "resources": { + "description": "The list of resources to be removed.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "ZoneViewsSetServiceRequest": { + "id": "ZoneViewsSetServiceRequest", + "properties": { + "endpoints": { + "description": "The service information to be updated.", + "items": { + "$ref": "ServiceEndpoint" + }, + "type": "array" + }, + "fingerprint": { + "description": "Fingerprint of the service information; a hash of the contents. This field is used for optimistic locking when updating the service entries.", + "type": "string" + }, + "resourceName": { + "description": "The name of the resource if user wants to update the service information of the resource.", + "type": "string" + } + }, + "type": "object" } - } }, - "ResourceView": { - "id": "ResourceView", - "type": "object", - "description": "The resource view object.", - "properties": { - "creationTimestamp": { - "type": "string", - "description": "The creation time of the resource view." - }, - "description": { - "type": "string", - "description": "The detailed description of the resource view." - }, - "endpoints": { - "type": "array", - "description": "Services endpoint information.", - "items": { - "$ref": "ServiceEndpoint" - } - }, - "fingerprint": { - "type": "string", - "description": "The fingerprint of the service endpoint information." - }, - "id": { - "type": "string", - "description": "[Output Only] The ID of the resource view." - }, - "kind": { - "type": "string", - "description": "Type of the resource.", - "default": "resourceviews#resourceView" - }, - "labels": { - "type": "array", - "description": "The labels for events.", - "items": { - "$ref": "Label" - } - }, - "name": { - "type": "string", - "description": "The name of the resource view." - }, - "network": { - "type": "string", - "description": "The URL of a Compute Engine network to which the resources in the view belong." - }, - "resources": { - "type": "array", - "description": "A list of all resources in the resource view.", - "items": { - "type": "string" - } - }, - "selfLink": { - "type": "string", - "description": "[Output Only] A self-link to the resource view." - }, - "size": { - "type": "integer", - "description": "The total number of resources in the resource view.", - "format": "uint32" - } - } - }, - "ServiceEndpoint": { - "id": "ServiceEndpoint", - "type": "object", - "description": "The service endpoint that may be started in a VM.", - "properties": { - "name": { - "type": "string", - "description": "The name of the service endpoint." - }, - "port": { - "type": "integer", - "description": "The port of the service endpoint.", - "format": "int32" - } - } - }, - "ZoneViewsAddResourcesRequest": { - "id": "ZoneViewsAddResourcesRequest", - "type": "object", - "description": "The request to add resources to the resource view.", - "properties": { - "resources": { - "type": "array", - "description": "The list of resources to be added.", - "items": { - "type": "string" - } - } - } - }, - "ZoneViewsGetServiceResponse": { - "id": "ZoneViewsGetServiceResponse", - "type": "object", - "properties": { - "endpoints": { - "type": "array", - "description": "The service information.", - "items": { - "$ref": "ServiceEndpoint" - } - }, - "fingerprint": { - "type": "string", - "description": "The fingerprint of the service information." - } - } - }, - "ZoneViewsList": { - "id": "ZoneViewsList", - "type": "object", - "description": "The response to a list request.", - "properties": { - "items": { - "type": "array", - "description": "The result that contains all resource views that meet the criteria.", - "items": { - "$ref": "ResourceView" - } - }, - "kind": { - "type": "string", - "description": "Type of resource.", - "default": "resourceviews#zoneViewsList" - }, - "nextPageToken": { - "type": "string", - "description": "A token used for pagination." - }, - "selfLink": { - "type": "string", - "description": "Server defined URL for this resource (output only)." - } - } - }, - "ZoneViewsListResourcesResponse": { - "id": "ZoneViewsListResourcesResponse", - "type": "object", - "description": "The response to a list resource request.", - "properties": { - "items": { - "type": "array", - "description": "The formatted JSON that is requested by the user.", - "items": { - "$ref": "ListResourceResponseItem" - } - }, - "network": { - "type": "string", - "description": "The URL of a Compute Engine network to which the resources in the view belong." - }, - "nextPageToken": { - "type": "string", - "description": "A token used for pagination." - } - } - }, - "ZoneViewsRemoveResourcesRequest": { - "id": "ZoneViewsRemoveResourcesRequest", - "type": "object", - "description": "The request to remove resources from the resource view.", - "properties": { - "resources": { - "type": "array", - "description": "The list of resources to be removed.", - "items": { - "type": "string" - } - } - } - }, - "ZoneViewsSetServiceRequest": { - "id": "ZoneViewsSetServiceRequest", - "type": "object", - "properties": { - "endpoints": { - "type": "array", - "description": "The service information to be updated.", - "items": { - "$ref": "ServiceEndpoint" - } - }, - "fingerprint": { - "type": "string", - "description": "Fingerprint of the service information; a hash of the contents. This field is used for optimistic locking when updating the service entries." - }, - "resourceName": { - "type": "string", - "description": "The name of the resource if user wants to update the service information of the resource." - } - } - } - }, - "resources": { - "zoneOperations": { - "methods": { - "get": { - "id": "resourceviews.zoneOperations.get", - "path": "{project}/zones/{zone}/operations/{operation}", - "httpMethod": "GET", - "description": "Retrieves the specified zone-specific operation resource.", - "parameters": { - "operation": { - "type": "string", - "description": "Name of the operation resource to return.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - }, - "project": { - "type": "string", - "description": "Name of the project scoping this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "zone": { - "type": "string", - "description": "Name of the zone scoping this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "operation" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly", - "https://www.googleapis.com/auth/ndev.cloudman", - "https://www.googleapis.com/auth/ndev.cloudman.readonly" - ] - }, - "list": { - "id": "resourceviews.zoneOperations.list", - "path": "{project}/zones/{zone}/operations", - "httpMethod": "GET", - "description": "Retrieves the list of operation resources contained within the specified zone.", - "parameters": { - "filter": { - "type": "string", - "description": "Optional. Filter expression for filtering listed resources.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "Optional. Maximum count of results to be returned. Maximum value is 500 and default value is 500.", - "default": "500", - "format": "uint32", - "minimum": "0", - "maximum": "500", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Optional. Tag returned by a previous list request truncated by maxResults. Used to continue a previous list request.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Name of the project scoping this request.", - "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "location": "path" - }, - "zone": { - "type": "string", - "description": "Name of the zone scoping this request.", - "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone" - ], - "response": { - "$ref": "OperationList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly", - "https://www.googleapis.com/auth/ndev.cloudman", - "https://www.googleapis.com/auth/ndev.cloudman.readonly" - ] - } - } - }, - "zoneViews": { - "methods": { - "addResources": { - "id": "resourceviews.zoneViews.addResources", - "path": "{project}/zones/{zone}/resourceViews/{resourceView}/addResources", - "httpMethod": "POST", - "description": "Add resources to the view.", - "parameters": { - "project": { - "type": "string", - "description": "The project name of the resource view.", - "required": true, - "location": "path" - }, - "resourceView": { - "type": "string", - "description": "The name of the resource view.", - "required": true, - "location": "path" - }, - "zone": { - "type": "string", - "description": "The zone name of the resource view.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "resourceView" - ], - "request": { - "$ref": "ZoneViewsAddResourcesRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/ndev.cloudman" - ] - }, - "delete": { - "id": "resourceviews.zoneViews.delete", - "path": "{project}/zones/{zone}/resourceViews/{resourceView}", - "httpMethod": "DELETE", - "description": "Delete a resource view.", - "parameters": { - "project": { - "type": "string", - "description": "The project name of the resource view.", - "required": true, - "location": "path" - }, - "resourceView": { - "type": "string", - "description": "The name of the resource view.", - "required": true, - "location": "path" - }, - "zone": { - "type": "string", - "description": "The zone name of the resource view.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "resourceView" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/ndev.cloudman" - ] - }, - "get": { - "id": "resourceviews.zoneViews.get", - "path": "{project}/zones/{zone}/resourceViews/{resourceView}", - "httpMethod": "GET", - "description": "Get the information of a zonal resource view.", - "parameters": { - "project": { - "type": "string", - "description": "The project name of the resource view.", - "required": true, - "location": "path" - }, - "resourceView": { - "type": "string", - "description": "The name of the resource view.", - "required": true, - "location": "path" - }, - "zone": { - "type": "string", - "description": "The zone name of the resource view.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "resourceView" - ], - "response": { - "$ref": "ResourceView" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly", - "https://www.googleapis.com/auth/ndev.cloudman", - "https://www.googleapis.com/auth/ndev.cloudman.readonly" - ] - }, - "getService": { - "id": "resourceviews.zoneViews.getService", - "path": "{project}/zones/{zone}/resourceViews/{resourceView}/getService", - "httpMethod": "POST", - "description": "Get the service information of a resource view or a resource.", - "parameters": { - "project": { - "type": "string", - "description": "The project name of the resource view.", - "required": true, - "location": "path" - }, - "resourceName": { - "type": "string", - "description": "The name of the resource if user wants to get the service information of the resource.", - "location": "query" - }, - "resourceView": { - "type": "string", - "description": "The name of the resource view.", - "required": true, - "location": "path" - }, - "zone": { - "type": "string", - "description": "The zone name of the resource view.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "resourceView" - ], - "response": { - "$ref": "ZoneViewsGetServiceResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/ndev.cloudman" - ] - }, - "insert": { - "id": "resourceviews.zoneViews.insert", - "path": "{project}/zones/{zone}/resourceViews", - "httpMethod": "POST", - "description": "Create a resource view.", - "parameters": { - "project": { - "type": "string", - "description": "The project name of the resource view.", - "required": true, - "location": "path" - }, - "zone": { - "type": "string", - "description": "The zone name of the resource view.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone" - ], - "request": { - "$ref": "ResourceView" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/ndev.cloudman" - ] - }, - "list": { - "id": "resourceviews.zoneViews.list", - "path": "{project}/zones/{zone}/resourceViews", - "httpMethod": "GET", - "description": "List resource views.", - "parameters": { - "maxResults": { - "type": "integer", - "description": "Maximum count of results to be returned. Acceptable values are 0 to 5000, inclusive. (Default: 5000)", - "default": "5000", - "format": "int32", - "minimum": "0", - "maximum": "5000", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a nextPageToken returned by a previous list request. This token can be used to request the next page of results from a previous list request.", - "location": "query" - }, - "project": { - "type": "string", - "description": "The project name of the resource view.", - "required": true, - "location": "path" - }, - "zone": { - "type": "string", - "description": "The zone name of the resource view.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone" - ], - "response": { - "$ref": "ZoneViewsList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly", - "https://www.googleapis.com/auth/ndev.cloudman", - "https://www.googleapis.com/auth/ndev.cloudman.readonly" - ] - }, - "listResources": { - "id": "resourceviews.zoneViews.listResources", - "path": "{project}/zones/{zone}/resourceViews/{resourceView}/resources", - "httpMethod": "GET", - "description": "List the resources of the resource view.", - "parameters": { - "format": { - "type": "string", - "description": "The requested format of the return value. It can be URL or URL_PORT. A JSON object will be included in the response based on the format. The default format is NONE, which results in no JSON in the response.", - "enum": [ - "NONE", - "URL", - "URL_PORT" - ], - "enumDescriptions": [ - "", - "", - "" - ], - "location": "query" - }, - "listState": { - "type": "string", - "description": "The state of the instance to list. By default, it lists all instances.", - "default": "ALL", - "enum": [ - "ALL", - "RUNNING" - ], - "enumDescriptions": [ - "", - "" - ], - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "Maximum count of results to be returned. Acceptable values are 0 to 5000, inclusive. (Default: 5000)", - "default": "5000", - "format": "int32", - "minimum": "0", - "maximum": "5000", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Specifies a nextPageToken returned by a previous list request. This token can be used to request the next page of results from a previous list request.", - "location": "query" - }, - "project": { - "type": "string", - "description": "The project name of the resource view.", - "required": true, - "location": "path" - }, - "resourceView": { - "type": "string", - "description": "The name of the resource view.", - "required": true, - "location": "path" - }, - "serviceName": { - "type": "string", - "description": "The service name to return in the response. It is optional and if it is not set, all the service end points will be returned.", - "location": "query" - }, - "zone": { - "type": "string", - "description": "The zone name of the resource view.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "resourceView" - ], - "response": { - "$ref": "ZoneViewsListResourcesResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly", - "https://www.googleapis.com/auth/ndev.cloudman", - "https://www.googleapis.com/auth/ndev.cloudman.readonly" - ] - }, - "removeResources": { - "id": "resourceviews.zoneViews.removeResources", - "path": "{project}/zones/{zone}/resourceViews/{resourceView}/removeResources", - "httpMethod": "POST", - "description": "Remove resources from the view.", - "parameters": { - "project": { - "type": "string", - "description": "The project name of the resource view.", - "required": true, - "location": "path" - }, - "resourceView": { - "type": "string", - "description": "The name of the resource view.", - "required": true, - "location": "path" - }, - "zone": { - "type": "string", - "description": "The zone name of the resource view.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "resourceView" - ], - "request": { - "$ref": "ZoneViewsRemoveResourcesRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/ndev.cloudman" - ] - }, - "setService": { - "id": "resourceviews.zoneViews.setService", - "path": "{project}/zones/{zone}/resourceViews/{resourceView}/setService", - "httpMethod": "POST", - "description": "Update the service information of a resource view or a resource.", - "parameters": { - "project": { - "type": "string", - "description": "The project name of the resource view.", - "required": true, - "location": "path" - }, - "resourceView": { - "type": "string", - "description": "The name of the resource view.", - "required": true, - "location": "path" - }, - "zone": { - "type": "string", - "description": "The zone name of the resource view.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "zone", - "resourceView" - ], - "request": { - "$ref": "ZoneViewsSetServiceRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/ndev.cloudman" - ] - } - } - } - } -} + "servicePath": "resourceviews/v1beta2/projects/", + "title": "Google Compute Engine Instance Groups API", + "version": "v1beta2" +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/runtimeconfig/v1/runtimeconfig-api.json b/vendor/google.golang.org/api/runtimeconfig/v1/runtimeconfig-api.json index 5ee1587bc..315e3b3b5 100644 --- a/vendor/google.golang.org/api/runtimeconfig/v1/runtimeconfig-api.json +++ b/vendor/google.golang.org/api/runtimeconfig/v1/runtimeconfig-api.json @@ -1,41 +1,243 @@ { + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/cloud-platform": { + "description": "View and manage your data across Google Cloud Platform services" + }, + "https://www.googleapis.com/auth/cloudruntimeconfig": { + "description": "Manage your Google Cloud Platform services' runtime configuration" + } + } + } + }, + "basePath": "", + "baseUrl": "https://runtimeconfig.googleapis.com/", + "batchPath": "batch", + "canonicalName": "Cloud RuntimeConfig", + "description": "The Runtime Configurator allows you to dynamically configure and expose variables through Google Cloud Platform. In addition, you can also set Watchers and Waiters that will watch for changes to your data and return based on certain conditions.", "discoveryVersion": "v1", - "version_module": true, + "documentationLink": "https://cloud.google.com/deployment-manager/runtime-configurator/", + "fullyEncodeReservedExpansion": true, + "icons": { + "x16": "http://www.google.com/images/icons/product/search-16.gif", + "x32": "http://www.google.com/images/icons/product/search-32.gif" + }, + "id": "runtimeconfig:v1", + "kind": "discovery#restDescription", + "name": "runtimeconfig", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "$.xgafv": { + "description": "V1 error format.", + "enum": [ + "1", + "2" + ], + "enumDescriptions": [ + "v1 error format", + "v2 error format" + ], + "location": "query", + "type": "string" + }, + "access_token": { + "description": "OAuth access token.", + "location": "query", + "type": "string" + }, + "alt": { + "default": "json", + "description": "Data format for response.", + "enum": [ + "json", + "media", + "proto" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json", + "Media download with context-dependent Content-Type", + "Responses with Content-Type of application/x-protobuf" + ], + "location": "query", + "type": "string" + }, + "bearer_token": { + "description": "OAuth bearer token.", + "location": "query", + "type": "string" + }, + "callback": { + "description": "JSONP", + "location": "query", + "type": "string" + }, + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "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.", + "location": "query", + "type": "string" + }, + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "pp": { + "default": "true", + "description": "Pretty-print response.", + "location": "query", + "type": "boolean" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", + "location": "query", + "type": "string" + }, + "uploadType": { + "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", + "location": "query", + "type": "string" + }, + "upload_protocol": { + "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", + "location": "query", + "type": "string" + } + }, + "protocol": "rest", + "resources": { + "operations": { + "methods": { + "cancel": { + "description": "Starts asynchronous cancellation on a long-running operation. The server\nmakes a best effort to cancel the operation, but success is not\nguaranteed. If the server doesn't support this method, it returns\n`google.rpc.Code.UNIMPLEMENTED`. Clients can use\nOperations.GetOperation or\nother methods to check whether the cancellation succeeded or whether the\noperation completed despite cancellation. On successful cancellation,\nthe operation is not deleted; instead, it becomes an operation with\nan Operation.error value with a google.rpc.Status.code of 1,\ncorresponding to `Code.CANCELLED`.", + "flatPath": "v1/operations/{operationsId}:cancel", + "httpMethod": "POST", + "id": "runtimeconfig.operations.cancel", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource to be cancelled.", + "location": "path", + "pattern": "^operations/.+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}:cancel", + "request": { + "$ref": "CancelOperationRequest" + }, + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloudruntimeconfig" + ] + }, + "delete": { + "description": "Deletes a long-running operation. This method indicates that the client is\nno longer interested in the operation result. It does not cancel the\noperation. If the server doesn't support this method, it returns\n`google.rpc.Code.UNIMPLEMENTED`.", + "flatPath": "v1/operations/{operationsId}", + "httpMethod": "DELETE", + "id": "runtimeconfig.operations.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource to be deleted.", + "location": "path", + "pattern": "^operations/.+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloudruntimeconfig" + ] + }, + "list": { + "description": "Lists operations that match the specified filter in the request. If the\nserver doesn't support this method, it returns `UNIMPLEMENTED`.\n\nNOTE: the `name` binding allows API services to override the binding\nto use different resource name schemes, such as `users/*/operations`. To\noverride the binding, API services can add a binding such as\n`\"/v1/{name=users/*}/operations\"` to their service configuration.\nFor backwards compatibility, the default name includes the operations\ncollection id, however overriding users must ensure the name binding\nis the parent resource, without the operations collection id.", + "flatPath": "v1/operations", + "httpMethod": "GET", + "id": "runtimeconfig.operations.list", + "parameterOrder": [ + "name" + ], + "parameters": { + "filter": { + "description": "The standard list filter.", + "location": "query", + "type": "string" + }, + "name": { + "description": "The name of the operation's parent resource.", + "location": "path", + "pattern": "^operations$", + "required": true, + "type": "string" + }, + "pageSize": { + "description": "The standard list page size.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "The standard list page token.", + "location": "query", + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "ListOperationsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloudruntimeconfig" + ] + } + } + } + }, + "revision": "20180108", + "rootUrl": "https://runtimeconfig.googleapis.com/", "schemas": { "CancelOperationRequest": { "description": "The request message for Operations.CancelOperation.", - "type": "object", + "id": "CancelOperationRequest", "properties": {}, - "id": "CancelOperationRequest" + "type": "object" }, - "Status": { - "id": "Status", - "description": "The `Status` type defines a logical error model that is suitable for different\nprogramming environments, including REST APIs and RPC APIs. It is used by\n[gRPC](https://github.com/grpc). The error model is designed to be:\n\n- Simple to use and understand for most users\n- Flexible enough to meet unexpected needs\n\n# Overview\n\nThe `Status` message contains three pieces of data: error code, error message,\nand error details. The error code should be an enum value of\ngoogle.rpc.Code, but it may accept additional error codes if needed. The\nerror message should be a developer-facing English message that helps\ndevelopers *understand* and *resolve* the error. If a localized user-facing\nerror message is needed, put the localized message in the error details or\nlocalize it in the client. The optional error details may contain arbitrary\ninformation about the error. There is a predefined set of error detail types\nin the package `google.rpc` that can be used for common error conditions.\n\n# Language mapping\n\nThe `Status` message is the logical representation of the error model, but it\nis not necessarily the actual wire format. When the `Status` message is\nexposed in different client libraries and different wire protocols, it can be\nmapped differently. For example, it will likely be mapped to some exceptions\nin Java, but more likely mapped to some error codes in C.\n\n# Other uses\n\nThe error model and the `Status` message can be used in a variety of\nenvironments, either with or without APIs, to provide a\nconsistent developer experience across different environments.\n\nExample uses of this error model include:\n\n- Partial errors. If a service needs to return partial errors to the client,\n it may embed the `Status` in the normal response to indicate the partial\n errors.\n\n- Workflow errors. A typical workflow has multiple steps. Each step may\n have a `Status` message for error reporting.\n\n- Batch operations. If a client uses batch request and batch response, the\n `Status` message should be used directly inside batch response, one for\n each error sub-response.\n\n- Asynchronous operations. If an API call embeds asynchronous operation\n results in its response, the status of those operations should be\n represented directly using the `Status` message.\n\n- Logging. If some API errors are stored in logs, the message `Status` could\n be used directly after any stripping needed for security/privacy reasons.", - "type": "object", - "properties": { - "code": { - "description": "The status code, which should be an enum value of google.rpc.Code.", - "format": "int32", - "type": "integer" - }, - "message": { - "description": "A developer-facing error message, which should be in English. Any\nuser-facing error message should be localized and sent in the\ngoogle.rpc.Status.details field, or localized by the client.", - "type": "string" - }, - "details": { - "description": "A list of messages that carry the error details. There is a common set of\nmessage types for APIs to use.", - "type": "array", - "items": { - "type": "object", - "additionalProperties": { - "type": "any", - "description": "Properties of the object. Contains field @type with type URL." - } - } - } - } + "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" }, "ListOperationsResponse": { + "description": "The response message for Operations.ListOperations.", + "id": "ListOperationsResponse", "properties": { "nextPageToken": { "description": "The standard List next-page token.", @@ -43,36 +245,22 @@ }, "operations": { "description": "A list of operations that matches the specified filter in the request.", - "type": "array", "items": { "$ref": "Operation" - } + }, + "type": "array" } }, - "id": "ListOperationsResponse", - "description": "The response message for Operations.ListOperations.", "type": "object" }, "Operation": { "description": "This resource represents a long-running operation that is the result of a\nnetwork API call.", - "type": "object", + "id": "Operation", "properties": { "done": { "description": "If the value is `false`, it means the operation is still in progress.\nIf `true`, the operation is completed, and either `error` or `response` is\navailable.", "type": "boolean" }, - "response": { - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - }, - "description": "The normal response of the operation in case of success. If the original\nmethod returns no data on success, such as `Delete`, the response is\n`google.protobuf.Empty`. If the original method is standard\n`Get`/`Create`/`Update`, the response should be the resource. For other\nmethods, the response should have the type `XxxResponse`, where `Xxx`\nis the original method name. For example, if the original method name\nis `TakeSnapshot()`, the inferred response type is\n`TakeSnapshotResponse`.", - "type": "object" - }, - "name": { - "description": "The server-assigned name, which is only unique within the same service that\noriginally returns it. If you use the default HTTP mapping, the\n`name` should have the format of `operations/some/unique/name`.", - "type": "string" - }, "error": { "$ref": "Status", "description": "The error result of the operation in case of failure or cancellation." @@ -84,240 +272,52 @@ }, "description": "Service-specific metadata associated with the operation. It typically\ncontains progress information and common metadata such as create time.\nSome services might not provide such metadata. Any method that returns a\nlong-running operation should document the metadata type, if any.", "type": "object" + }, + "name": { + "description": "The server-assigned name, which is only unique within the same service that\noriginally returns it. If you use the default HTTP mapping, the\n`name` should have the format of `operations/some/unique/name`.", + "type": "string" + }, + "response": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "description": "The normal response of the operation in case of success. If the original\nmethod returns no data on success, such as `Delete`, the response is\n`google.protobuf.Empty`. If the original method is standard\n`Get`/`Create`/`Update`, the response should be the resource. For other\nmethods, the response should have the type `XxxResponse`, where `Xxx`\nis the original method name. For example, if the original method name\nis `TakeSnapshot()`, the inferred response type is\n`TakeSnapshotResponse`.", + "type": "object" } }, - "id": "Operation" + "type": "object" }, - "Empty": { - "properties": {}, - "id": "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 `{}`.", + "Status": { + "description": "The `Status` type defines a logical error model that is suitable for different\nprogramming environments, including REST APIs and RPC APIs. It is used by\n[gRPC](https://github.com/grpc). The error model is designed to be:\n\n- Simple to use and understand for most users\n- Flexible enough to meet unexpected needs\n\n# Overview\n\nThe `Status` message contains three pieces of data: error code, error message,\nand error details. The error code should be an enum value of\ngoogle.rpc.Code, but it may accept additional error codes if needed. The\nerror message should be a developer-facing English message that helps\ndevelopers *understand* and *resolve* the error. If a localized user-facing\nerror message is needed, put the localized message in the error details or\nlocalize it in the client. The optional error details may contain arbitrary\ninformation about the error. There is a predefined set of error detail types\nin the package `google.rpc` that can be used for common error conditions.\n\n# Language mapping\n\nThe `Status` message is the logical representation of the error model, but it\nis not necessarily the actual wire format. When the `Status` message is\nexposed in different client libraries and different wire protocols, it can be\nmapped differently. For example, it will likely be mapped to some exceptions\nin Java, but more likely mapped to some error codes in C.\n\n# Other uses\n\nThe error model and the `Status` message can be used in a variety of\nenvironments, either with or without APIs, to provide a\nconsistent developer experience across different environments.\n\nExample uses of this error model include:\n\n- Partial errors. If a service needs to return partial errors to the client,\n it may embed the `Status` in the normal response to indicate the partial\n errors.\n\n- Workflow errors. A typical workflow has multiple steps. Each step may\n have a `Status` message for error reporting.\n\n- Batch operations. If a client uses batch request and batch response, the\n `Status` message should be used directly inside batch response, one for\n each error sub-response.\n\n- Asynchronous operations. If an API call embeds asynchronous operation\n results in its response, the status of those operations should be\n represented directly using the `Status` message.\n\n- Logging. If some API errors are stored in logs, the message `Status` could\n be used directly after any stripping needed for security/privacy reasons.", + "id": "Status", + "properties": { + "code": { + "description": "The status code, which should be an enum value of google.rpc.Code.", + "format": "int32", + "type": "integer" + }, + "details": { + "description": "A list of messages that carry the error details. There is a common set of\nmessage types for APIs to use.", + "items": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "A developer-facing error message, which should be in English. Any\nuser-facing error message should be localized and sent in the\ngoogle.rpc.Status.details field, or localized by the client.", + "type": "string" + } + }, "type": "object" } }, - "protocol": "rest", - "icons": { - "x16": "http://www.google.com/images/icons/product/search-16.gif", - "x32": "http://www.google.com/images/icons/product/search-32.gif" - }, - "canonicalName": "Cloud RuntimeConfig", - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/cloudruntimeconfig": { - "description": "Manage your Google Cloud Platform services' runtime configuration" - }, - "https://www.googleapis.com/auth/cloud-platform": { - "description": "View and manage your data across Google Cloud Platform services" - } - } - } - }, - "rootUrl": "https://runtimeconfig.googleapis.com/", - "ownerDomain": "google.com", - "name": "runtimeconfig", - "batchPath": "batch", - "fullyEncodeReservedExpansion": true, - "title": "Google Cloud Runtime Configuration API", - "ownerName": "Google", - "resources": { - "operations": { - "methods": { - "cancel": { - "flatPath": "v1/operations/{operationsId}:cancel", - "id": "runtimeconfig.operations.cancel", - "path": "v1/{+name}:cancel", - "description": "Starts asynchronous cancellation on a long-running operation. The server\nmakes a best effort to cancel the operation, but success is not\nguaranteed. If the server doesn't support this method, it returns\n`google.rpc.Code.UNIMPLEMENTED`. Clients can use\nOperations.GetOperation or\nother methods to check whether the cancellation succeeded or whether the\noperation completed despite cancellation. On successful cancellation,\nthe operation is not deleted; instead, it becomes an operation with\nan Operation.error value with a google.rpc.Status.code of 1,\ncorresponding to `Code.CANCELLED`.", - "request": { - "$ref": "CancelOperationRequest" - }, - "httpMethod": "POST", - "parameterOrder": [ - "name" - ], - "response": { - "$ref": "Empty" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloudruntimeconfig" - ], - "parameters": { - "name": { - "description": "The name of the operation resource to be cancelled.", - "required": true, - "type": "string", - "pattern": "^operations/.+$", - "location": "path" - } - } - }, - "delete": { - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "DELETE", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloudruntimeconfig" - ], - "parameters": { - "name": { - "required": true, - "type": "string", - "pattern": "^operations/.+$", - "location": "path", - "description": "The name of the operation resource to be deleted." - } - }, - "flatPath": "v1/operations/{operationsId}", - "path": "v1/{+name}", - "id": "runtimeconfig.operations.delete", - "description": "Deletes a long-running operation. This method indicates that the client is\nno longer interested in the operation result. It does not cancel the\noperation. If the server doesn't support this method, it returns\n`google.rpc.Code.UNIMPLEMENTED`." - }, - "list": { - "parameters": { - "name": { - "pattern": "^operations$", - "location": "path", - "description": "The name of the operation's parent resource.", - "required": true, - "type": "string" - }, - "pageToken": { - "description": "The standard list page token.", - "type": "string", - "location": "query" - }, - "pageSize": { - "location": "query", - "description": "The standard list page size.", - "format": "int32", - "type": "integer" - }, - "filter": { - "location": "query", - "description": "The standard list filter.", - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloudruntimeconfig" - ], - "flatPath": "v1/operations", - "id": "runtimeconfig.operations.list", - "path": "v1/{+name}", - "description": "Lists operations that match the specified filter in the request. If the\nserver doesn't support this method, it returns `UNIMPLEMENTED`.\n\nNOTE: the `name` binding allows API services to override the binding\nto use different resource name schemes, such as `users/*/operations`. To\noverride the binding, API services can add a binding such as\n`\"/v1/{name=users/*}/operations\"` to their service configuration.\nFor backwards compatibility, the default name includes the operations\ncollection id, however overriding users must ensure the name binding\nis the parent resource, without the operations collection id.", - "httpMethod": "GET", - "response": { - "$ref": "ListOperationsResponse" - }, - "parameterOrder": [ - "name" - ] - } - } - } - }, - "parameters": { - "upload_protocol": { - "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", - "type": "string", - "location": "query" - }, - "prettyPrint": { - "location": "query", - "description": "Returns response with indentations and line breaks.", - "type": "boolean", - "default": "true" - }, - "fields": { - "location": "query", - "description": "Selector specifying which fields to include in a partial response.", - "type": "string" - }, - "uploadType": { - "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", - "type": "string", - "location": "query" - }, - "callback": { - "description": "JSONP", - "type": "string", - "location": "query" - }, - "$.xgafv": { - "enum": [ - "1", - "2" - ], - "description": "V1 error format.", - "type": "string", - "enumDescriptions": [ - "v1 error format", - "v2 error format" - ], - "location": "query" - }, - "alt": { - "enum": [ - "json", - "media", - "proto" - ], - "type": "string", - "enumDescriptions": [ - "Responses with Content-Type of application/json", - "Media download with context-dependent Content-Type", - "Responses with Content-Type of application/x-protobuf" - ], - "location": "query", - "description": "Data format for response.", - "default": "json" - }, - "access_token": { - "description": "OAuth access token.", - "type": "string", - "location": "query" - }, - "key": { - "type": "string", - "location": "query", - "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." - }, - "quotaUser": { - "location": "query", - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", - "type": "string" - }, - "pp": { - "location": "query", - "description": "Pretty-print response.", - "type": "boolean", - "default": "true" - }, - "oauth_token": { - "location": "query", - "description": "OAuth 2.0 token for the current user.", - "type": "string" - }, - "bearer_token": { - "location": "query", - "description": "OAuth bearer token.", - "type": "string" - } - }, - "version": "v1", - "baseUrl": "https://runtimeconfig.googleapis.com/", - "kind": "discovery#restDescription", - "description": "The Runtime Configurator allows you to dynamically configure and expose variables through Google Cloud Platform. In addition, you can also set Watchers and Waiters that will watch for changes to your data and return based on certain conditions.", "servicePath": "", - "basePath": "", - "revision": "20180108", - "documentationLink": "https://cloud.google.com/deployment-manager/runtime-configurator/", - "id": "runtimeconfig:v1" -} + "title": "Google Cloud Runtime Configuration API", + "version": "v1", + "version_module": true +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/runtimeconfig/v1beta1/runtimeconfig-api.json b/vendor/google.golang.org/api/runtimeconfig/v1beta1/runtimeconfig-api.json index 9fdac1acb..1c45c8706 100644 --- a/vendor/google.golang.org/api/runtimeconfig/v1beta1/runtimeconfig-api.json +++ b/vendor/google.golang.org/api/runtimeconfig/v1beta1/runtimeconfig-api.json @@ -1,489 +1,455 @@ { + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/cloud-platform": { + "description": "View and manage your data across Google Cloud Platform services" + }, + "https://www.googleapis.com/auth/cloudruntimeconfig": { + "description": "Manage your Google Cloud Platform services' runtime configuration" + } + } + } + }, + "basePath": "", + "baseUrl": "https://runtimeconfig.googleapis.com/", + "batchPath": "batch", + "canonicalName": "Cloud RuntimeConfig", + "description": "The Runtime Configurator allows you to dynamically configure and expose variables through Google Cloud Platform. In addition, you can also set Watchers and Waiters that will watch for changes to your data and return based on certain conditions.", + "discoveryVersion": "v1", + "documentationLink": "https://cloud.google.com/deployment-manager/runtime-configurator/", + "fullyEncodeReservedExpansion": true, + "icons": { + "x16": "http://www.google.com/images/icons/product/search-16.gif", + "x32": "http://www.google.com/images/icons/product/search-32.gif" + }, + "id": "runtimeconfig:v1beta1", + "kind": "discovery#restDescription", + "name": "runtimeconfig", + "ownerDomain": "google.com", "ownerName": "Google", + "parameters": { + "$.xgafv": { + "description": "V1 error format.", + "enum": [ + "1", + "2" + ], + "enumDescriptions": [ + "v1 error format", + "v2 error format" + ], + "location": "query", + "type": "string" + }, + "access_token": { + "description": "OAuth access token.", + "location": "query", + "type": "string" + }, + "alt": { + "default": "json", + "description": "Data format for response.", + "enum": [ + "json", + "media", + "proto" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json", + "Media download with context-dependent Content-Type", + "Responses with Content-Type of application/x-protobuf" + ], + "location": "query", + "type": "string" + }, + "bearer_token": { + "description": "OAuth bearer token.", + "location": "query", + "type": "string" + }, + "callback": { + "description": "JSONP", + "location": "query", + "type": "string" + }, + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "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.", + "location": "query", + "type": "string" + }, + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "pp": { + "default": "true", + "description": "Pretty-print response.", + "location": "query", + "type": "boolean" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", + "location": "query", + "type": "string" + }, + "uploadType": { + "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", + "location": "query", + "type": "string" + }, + "upload_protocol": { + "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", + "location": "query", + "type": "string" + } + }, + "protocol": "rest", "resources": { "projects": { "resources": { "configs": { "methods": { + "create": { + "description": "Creates a new RuntimeConfig resource. The configuration name must be\nunique within project.", + "flatPath": "v1beta1/projects/{projectsId}/configs", + "httpMethod": "POST", + "id": "runtimeconfig.projects.configs.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "The [project\nID](https://support.google.com/cloud/answer/6158840?hl=en\u0026ref_topic=6158848)\nfor this request, in the format `projects/[PROJECT_ID]`.", + "location": "path", + "pattern": "^projects/[^/]+$", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional but recommended unique `request_id`. If the server\nreceives two `create()` requests with the same\n`request_id`, then the second request will be ignored and the\nfirst resource created and stored in the backend is returned.\nEmpty `request_id` fields are ignored.\n\nIt is responsibility of the client to ensure uniqueness of the\n`request_id` strings.\n\n`request_id` strings are limited to 64 characters.", + "location": "query", + "type": "string" + } + }, + "path": "v1beta1/{+parent}/configs", + "request": { + "$ref": "RuntimeConfig" + }, + "response": { + "$ref": "RuntimeConfig" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloudruntimeconfig" + ] + }, + "delete": { + "description": "Deletes a RuntimeConfig resource.", + "flatPath": "v1beta1/projects/{projectsId}/configs/{configsId}", + "httpMethod": "DELETE", + "id": "runtimeconfig.projects.configs.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The RuntimeConfig resource to delete, in the format:\n\n`projects/[PROJECT_ID]/configs/[CONFIG_NAME]`", + "location": "path", + "pattern": "^projects/[^/]+/configs/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloudruntimeconfig" + ] + }, + "get": { + "description": "Gets information about a RuntimeConfig resource.", + "flatPath": "v1beta1/projects/{projectsId}/configs/{configsId}", + "httpMethod": "GET", + "id": "runtimeconfig.projects.configs.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the RuntimeConfig resource to retrieve, in the format:\n\n`projects/[PROJECT_ID]/configs/[CONFIG_NAME]`", + "location": "path", + "pattern": "^projects/[^/]+/configs/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "response": { + "$ref": "RuntimeConfig" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloudruntimeconfig" + ] + }, + "getIamPolicy": { + "description": "Gets the access control policy for a resource.\nReturns an empty policy if the resource exists and does not have a policy\nset.", + "flatPath": "v1beta1/projects/{projectsId}/configs/{configsId}:getIamPolicy", + "httpMethod": "GET", + "id": "runtimeconfig.projects.configs.getIamPolicy", + "parameterOrder": [ + "resource" + ], + "parameters": { + "resource": { + "description": "REQUIRED: The resource for which the policy is being requested.\nSee the operation documentation for the appropriate value for this field.", + "location": "path", + "pattern": "^projects/[^/]+/configs/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+resource}:getIamPolicy", + "response": { + "$ref": "Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloudruntimeconfig" + ] + }, + "list": { + "description": "Lists all the RuntimeConfig resources within project.", + "flatPath": "v1beta1/projects/{projectsId}/configs", + "httpMethod": "GET", + "id": "runtimeconfig.projects.configs.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "pageSize": { + "description": "Specifies the number of results to return per page. If there are fewer\nelements than the specified number, returns all elements.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Specifies a page token to use. Set `pageToken` to a `nextPageToken`\nreturned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "The [project\nID](https://support.google.com/cloud/answer/6158840?hl=en\u0026ref_topic=6158848)\nfor this request, in the format `projects/[PROJECT_ID]`.", + "location": "path", + "pattern": "^projects/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+parent}/configs", + "response": { + "$ref": "ListConfigsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloudruntimeconfig" + ] + }, + "setIamPolicy": { + "description": "Sets the access control policy on the specified resource. Replaces any\nexisting policy.", + "flatPath": "v1beta1/projects/{projectsId}/configs/{configsId}:setIamPolicy", + "httpMethod": "POST", + "id": "runtimeconfig.projects.configs.setIamPolicy", + "parameterOrder": [ + "resource" + ], + "parameters": { + "resource": { + "description": "REQUIRED: The resource for which the policy is being specified.\nSee the operation documentation for the appropriate value for this field.", + "location": "path", + "pattern": "^projects/[^/]+/configs/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+resource}:setIamPolicy", + "request": { + "$ref": "SetIamPolicyRequest" + }, + "response": { + "$ref": "Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloudruntimeconfig" + ] + }, "testIamPermissions": { "description": "Returns permissions that a caller has on the specified resource.\nIf the resource does not exist, this will return an empty set of\npermissions, not a NOT_FOUND error.\n\nNote: This operation is designed to be used for building permission-aware\nUIs and command-line tools, not for authorization checking. This operation\nmay \"fail open\" without warning.", + "flatPath": "v1beta1/projects/{projectsId}/configs/{configsId}:testIamPermissions", + "httpMethod": "POST", + "id": "runtimeconfig.projects.configs.testIamPermissions", + "parameterOrder": [ + "resource" + ], + "parameters": { + "resource": { + "description": "REQUIRED: The resource for which the policy detail is being requested.\nSee the operation documentation for the appropriate value for this field.", + "location": "path", + "pattern": "^projects/[^/]+/configs/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+resource}:testIamPermissions", "request": { "$ref": "TestIamPermissionsRequest" }, "response": { "$ref": "TestIamPermissionsResponse" }, - "parameterOrder": [ - "resource" - ], - "httpMethod": "POST", "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/cloudruntimeconfig" - ], - "parameters": { - "resource": { - "description": "REQUIRED: The resource for which the policy detail is being requested.\nSee the operation documentation for the appropriate value for this field.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/configs/[^/]+$", - "location": "path" - } - }, - "flatPath": "v1beta1/projects/{projectsId}/configs/{configsId}:testIamPermissions", - "path": "v1beta1/{+resource}:testIamPermissions", - "id": "runtimeconfig.projects.configs.testIamPermissions" - }, - "delete": { - "httpMethod": "DELETE", - "parameterOrder": [ - "name" - ], - "response": { - "$ref": "Empty" - }, - "parameters": { - "name": { - "location": "path", - "description": "The RuntimeConfig resource to delete, in the format:\n\n`projects/[PROJECT_ID]/configs/[CONFIG_NAME]`", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/configs/[^/]+$" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloudruntimeconfig" - ], - "flatPath": "v1beta1/projects/{projectsId}/configs/{configsId}", - "id": "runtimeconfig.projects.configs.delete", - "path": "v1beta1/{+name}", - "description": "Deletes a RuntimeConfig resource." - }, - "list": { - "description": "Lists all the RuntimeConfig resources within project.", - "response": { - "$ref": "ListConfigsResponse" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloudruntimeconfig" - ], - "parameters": { - "pageToken": { - "location": "query", - "description": "Specifies a page token to use. Set `pageToken` to a `nextPageToken`\nreturned by a previous list request to get the next page of results.", - "type": "string" - }, - "pageSize": { - "location": "query", - "description": "Specifies the number of results to return per page. If there are fewer\nelements than the specified number, returns all elements.", - "format": "int32", - "type": "integer" - }, - "parent": { - "description": "The [project ID](https://support.google.com/cloud/answer/6158840?hl=en&ref_topic=6158848)\nfor this request, in the format `projects/[PROJECT_ID]`.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+$", - "location": "path" - } - }, - "flatPath": "v1beta1/projects/{projectsId}/configs", - "path": "v1beta1/{+parent}/configs", - "id": "runtimeconfig.projects.configs.list" - }, - "create": { - "response": { - "$ref": "RuntimeConfig" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloudruntimeconfig" - ], - "parameters": { - "requestId": { - "description": "An optional but recommended unique `request_id`. If the server\nreceives two `create()` requests with the same\n`request_id`, then the second request will be ignored and the\nfirst resource created and stored in the backend is returned.\nEmpty `request_id` fields are ignored.\n\nIt is responsibility of the client to ensure uniqueness of the\n`request_id` strings.\n\n`request_id` strings are limited to 64 characters.", - "type": "string", - "location": "query" - }, - "parent": { - "description": "The [project ID](https://support.google.com/cloud/answer/6158840?hl=en&ref_topic=6158848)\nfor this request, in the format `projects/[PROJECT_ID]`.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+$", - "location": "path" - } - }, - "flatPath": "v1beta1/projects/{projectsId}/configs", - "path": "v1beta1/{+parent}/configs", - "id": "runtimeconfig.projects.configs.create", - "description": "Creates a new RuntimeConfig resource. The configuration name must be\nunique within project.", - "request": { - "$ref": "RuntimeConfig" - } - }, - "setIamPolicy": { - "httpMethod": "POST", - "parameterOrder": [ - "resource" - ], - "response": { - "$ref": "Policy" - }, - "parameters": { - "resource": { - "description": "REQUIRED: The resource for which the policy is being specified.\nSee the operation documentation for the appropriate value for this field.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/configs/[^/]+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloudruntimeconfig" - ], - "flatPath": "v1beta1/projects/{projectsId}/configs/{configsId}:setIamPolicy", - "id": "runtimeconfig.projects.configs.setIamPolicy", - "path": "v1beta1/{+resource}:setIamPolicy", - "request": { - "$ref": "SetIamPolicyRequest" - }, - "description": "Sets the access control policy on the specified resource. Replaces any\nexisting policy." - }, - "getIamPolicy": { - "description": "Gets the access control policy for a resource.\nReturns an empty policy if the resource exists and does not have a policy\nset.", - "httpMethod": "GET", - "parameterOrder": [ - "resource" - ], - "response": { - "$ref": "Policy" - }, - "parameters": { - "resource": { - "description": "REQUIRED: The resource for which the policy is being requested.\nSee the operation documentation for the appropriate value for this field.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/configs/[^/]+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloudruntimeconfig" - ], - "flatPath": "v1beta1/projects/{projectsId}/configs/{configsId}:getIamPolicy", - "id": "runtimeconfig.projects.configs.getIamPolicy", - "path": "v1beta1/{+resource}:getIamPolicy" - }, - "get": { - "description": "Gets information about a RuntimeConfig resource.", - "response": { - "$ref": "RuntimeConfig" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloudruntimeconfig" - ], - "parameters": { - "name": { - "description": "The name of the RuntimeConfig resource to retrieve, in the format:\n\n`projects/[PROJECT_ID]/configs/[CONFIG_NAME]`", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/configs/[^/]+$", - "location": "path" - } - }, - "flatPath": "v1beta1/projects/{projectsId}/configs/{configsId}", - "path": "v1beta1/{+name}", - "id": "runtimeconfig.projects.configs.get" + ] }, "update": { - "request": { - "$ref": "RuntimeConfig" - }, "description": "Updates a RuntimeConfig resource. The configuration must exist beforehand.", + "flatPath": "v1beta1/projects/{projectsId}/configs/{configsId}", "httpMethod": "PUT", + "id": "runtimeconfig.projects.configs.update", "parameterOrder": [ "name" ], - "response": { - "$ref": "RuntimeConfig" - }, "parameters": { "name": { - "location": "path", "description": "The name of the RuntimeConfig resource to update, in the format:\n\n`projects/[PROJECT_ID]/configs/[CONFIG_NAME]`", + "location": "path", + "pattern": "^projects/[^/]+/configs/[^/]+$", "required": true, - "type": "string", - "pattern": "^projects/[^/]+/configs/[^/]+$" + "type": "string" } }, + "path": "v1beta1/{+name}", + "request": { + "$ref": "RuntimeConfig" + }, + "response": { + "$ref": "RuntimeConfig" + }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/cloudruntimeconfig" - ], - "flatPath": "v1beta1/projects/{projectsId}/configs/{configsId}", - "id": "runtimeconfig.projects.configs.update", - "path": "v1beta1/{+name}" + ] } }, "resources": { "operations": { "methods": { "get": { - "flatPath": "v1beta1/projects/{projectsId}/configs/{configsId}/operations/{operationsId}", - "path": "v1beta1/{+name}", - "id": "runtimeconfig.projects.configs.operations.get", "description": "Gets the latest state of a long-running operation. Clients can use this\nmethod to poll the operation result at intervals as recommended by the API\nservice.", - "response": { - "$ref": "Operation" - }, + "flatPath": "v1beta1/projects/{projectsId}/configs/{configsId}/operations/{operationsId}", + "httpMethod": "GET", + "id": "runtimeconfig.projects.configs.operations.get", "parameterOrder": [ "name" ], - "httpMethod": "GET", "parameters": { "name": { "description": "The name of the operation resource.", - "required": true, - "type": "string", + "location": "path", "pattern": "^projects/[^/]+/configs/[^/]+/operations/.+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloudruntimeconfig" - ] - }, - "testIamPermissions": { - "request": { - "$ref": "TestIamPermissionsRequest" - }, - "description": "Returns permissions that a caller has on the specified resource.\nIf the resource does not exist, this will return an empty set of\npermissions, not a NOT_FOUND error.\n\nNote: This operation is designed to be used for building permission-aware\nUIs and command-line tools, not for authorization checking. This operation\nmay \"fail open\" without warning.", - "response": { - "$ref": "TestIamPermissionsResponse" - }, - "parameterOrder": [ - "resource" - ], - "httpMethod": "POST", - "parameters": { - "resource": { - "location": "path", - "description": "REQUIRED: The resource for which the policy detail is being requested.\nSee the operation documentation for the appropriate value for this field.", "required": true, - "type": "string", - "pattern": "^projects/[^/]+/configs/[^/]+/operations/.+$" + "type": "string" } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloudruntimeconfig" - ], - "flatPath": "v1beta1/projects/{projectsId}/configs/{configsId}/operations/{operationsId}:testIamPermissions", - "path": "v1beta1/{+resource}:testIamPermissions", - "id": "runtimeconfig.projects.configs.operations.testIamPermissions" - } - } - }, - "waiters": { - "methods": { - "list": { - "httpMethod": "GET", - "parameterOrder": [ - "parent" - ], - "response": { - "$ref": "ListWaitersResponse" - }, - "parameters": { - "pageToken": { - "description": "Specifies a page token to use. Set `pageToken` to a `nextPageToken`\nreturned by a previous list request to get the next page of results.", - "type": "string", - "location": "query" - }, - "pageSize": { - "description": "Specifies the number of results to return per page. If there are fewer\nelements than the specified number, returns all elements.", - "format": "int32", - "type": "integer", - "location": "query" - }, - "parent": { - "location": "path", - "description": "The path to the configuration for which you want to get a list of waiters.\nThe configuration must exist beforehand; the path must be in the format:\n\n`projects/[PROJECT_ID]/configs/[CONFIG_NAME]`", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/configs/[^/]+$" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloudruntimeconfig" - ], - "flatPath": "v1beta1/projects/{projectsId}/configs/{configsId}/waiters", - "id": "runtimeconfig.projects.configs.waiters.list", - "path": "v1beta1/{+parent}/waiters", - "description": "List waiters within the given configuration." - }, - "get": { - "flatPath": "v1beta1/projects/{projectsId}/configs/{configsId}/waiters/{waitersId}", "path": "v1beta1/{+name}", - "id": "runtimeconfig.projects.configs.waiters.get", - "description": "Gets information about a single waiter.", - "response": { - "$ref": "Waiter" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "GET", - "parameters": { - "name": { - "location": "path", - "description": "The fully-qualified name of the Waiter resource object to retrieve, in the\nformat:\n\n`projects/[PROJECT_ID]/configs/[CONFIG_NAME]/waiters/[WAITER_NAME]`", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/configs/[^/]+/waiters/[^/]+$" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloudruntimeconfig" - ] - }, - "create": { - "request": { - "$ref": "Waiter" - }, - "description": "Creates a Waiter resource. This operation returns a long-running Operation\nresource which can be polled for completion. However, a waiter with the\ngiven name will exist (and can be retrieved) prior to the operation\ncompleting. If the operation fails, the failed Waiter resource will\nstill exist and must be deleted prior to subsequent creation attempts.", - "httpMethod": "POST", - "parameterOrder": [ - "parent" - ], "response": { "$ref": "Operation" }, - "parameters": { - "requestId": { - "description": "An optional but recommended unique `request_id`. If the server\nreceives two `create()` requests with the same\n`request_id`, then the second request will be ignored and the\nfirst resource created and stored in the backend is returned.\nEmpty `request_id` fields are ignored.\n\nIt is responsibility of the client to ensure uniqueness of the\n`request_id` strings.\n\n`request_id` strings are limited to 64 characters.", - "type": "string", - "location": "query" - }, - "parent": { - "location": "path", - "description": "The path to the configuration that will own the waiter.\nThe configuration must exist beforehand; the path must be in the format:\n\n`projects/[PROJECT_ID]/configs/[CONFIG_NAME]`.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/configs/[^/]+$" - } - }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/cloudruntimeconfig" - ], - "flatPath": "v1beta1/projects/{projectsId}/configs/{configsId}/waiters", - "id": "runtimeconfig.projects.configs.waiters.create", - "path": "v1beta1/{+parent}/waiters" + ] }, "testIamPermissions": { "description": "Returns permissions that a caller has on the specified resource.\nIf the resource does not exist, this will return an empty set of\npermissions, not a NOT_FOUND error.\n\nNote: This operation is designed to be used for building permission-aware\nUIs and command-line tools, not for authorization checking. This operation\nmay \"fail open\" without warning.", + "flatPath": "v1beta1/projects/{projectsId}/configs/{configsId}/operations/{operationsId}:testIamPermissions", + "httpMethod": "POST", + "id": "runtimeconfig.projects.configs.operations.testIamPermissions", + "parameterOrder": [ + "resource" + ], + "parameters": { + "resource": { + "description": "REQUIRED: The resource for which the policy detail is being requested.\nSee the operation documentation for the appropriate value for this field.", + "location": "path", + "pattern": "^projects/[^/]+/configs/[^/]+/operations/.+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+resource}:testIamPermissions", "request": { "$ref": "TestIamPermissionsRequest" }, "response": { "$ref": "TestIamPermissionsResponse" }, - "parameterOrder": [ - "resource" - ], - "httpMethod": "POST", "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/cloudruntimeconfig" - ], - "parameters": { - "resource": { - "description": "REQUIRED: The resource for which the policy detail is being requested.\nSee the operation documentation for the appropriate value for this field.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/configs/[^/]+/waiters/[^/]+$", - "location": "path" - } - }, - "flatPath": "v1beta1/projects/{projectsId}/configs/{configsId}/waiters/{waitersId}:testIamPermissions", - "path": "v1beta1/{+resource}:testIamPermissions", - "id": "runtimeconfig.projects.configs.waiters.testIamPermissions" - }, - "delete": { - "description": "Deletes the waiter with the specified name.", - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "DELETE", - "parameters": { - "name": { - "location": "path", - "description": "The Waiter resource to delete, in the format:\n\n `projects/[PROJECT_ID]/configs/[CONFIG_NAME]/waiters/[WAITER_NAME]`", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/configs/[^/]+/waiters/[^/]+$" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloudruntimeconfig" - ], - "flatPath": "v1beta1/projects/{projectsId}/configs/{configsId}/waiters/{waitersId}", - "path": "v1beta1/{+name}", - "id": "runtimeconfig.projects.configs.waiters.delete" + ] } } }, "variables": { "methods": { - "testIamPermissions": { - "flatPath": "v1beta1/projects/{projectsId}/configs/{configsId}/variables/{variablesId}:testIamPermissions", - "id": "runtimeconfig.projects.configs.variables.testIamPermissions", - "path": "v1beta1/{+resource}:testIamPermissions", - "request": { - "$ref": "TestIamPermissionsRequest" - }, - "description": "Returns permissions that a caller has on the specified resource.\nIf the resource does not exist, this will return an empty set of\npermissions, not a NOT_FOUND error.\n\nNote: This operation is designed to be used for building permission-aware\nUIs and command-line tools, not for authorization checking. This operation\nmay \"fail open\" without warning.", + "create": { + "description": "Creates a variable within the given configuration. You cannot create\na variable with a name that is a prefix of an existing variable name, or a\nname that has an existing variable name as a prefix.\n\nTo learn more about creating a variable, read the\n[Setting and Getting\nData](/deployment-manager/runtime-configurator/set-and-get-variables)\ndocumentation.", + "flatPath": "v1beta1/projects/{projectsId}/configs/{configsId}/variables", "httpMethod": "POST", + "id": "runtimeconfig.projects.configs.variables.create", "parameterOrder": [ - "resource" + "parent" ], - "response": { - "$ref": "TestIamPermissionsResponse" - }, "parameters": { - "resource": { + "parent": { + "description": "The path to the RutimeConfig resource that this variable should belong to.\nThe configuration must exist beforehand; the path must be in the format:\n\n`projects/[PROJECT_ID]/configs/[CONFIG_NAME]`", "location": "path", - "description": "REQUIRED: The resource for which the policy detail is being requested.\nSee the operation documentation for the appropriate value for this field.", + "pattern": "^projects/[^/]+/configs/[^/]+$", "required": true, - "type": "string", - "pattern": "^projects/[^/]+/configs/[^/]+/variables/.+$" + "type": "string" + }, + "requestId": { + "description": "An optional but recommended unique `request_id`. If the server\nreceives two `create()` requests with the same\n`request_id`, then the second request will be ignored and the\nfirst resource created and stored in the backend is returned.\nEmpty `request_id` fields are ignored.\n\nIt is responsibility of the client to ensure uniqueness of the\n`request_id` strings.\n\n`request_id` strings are limited to 64 characters.", + "location": "query", + "type": "string" } }, + "path": "v1beta1/{+parent}/variables", + "request": { + "$ref": "Variable" + }, + "response": { + "$ref": "Variable" + }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/cloudruntimeconfig" @@ -491,199 +457,350 @@ }, "delete": { "description": "Deletes a variable or multiple variables.\n\nIf you specify a variable name, then that variable is deleted. If you\nspecify a prefix and `recursive` is true, then all variables with that\nprefix are deleted. You must set a `recursive` to true if you delete\nvariables by prefix.", + "flatPath": "v1beta1/projects/{projectsId}/configs/{configsId}/variables/{variablesId}", "httpMethod": "DELETE", + "id": "runtimeconfig.projects.configs.variables.delete", "parameterOrder": [ "name" ], + "parameters": { + "name": { + "description": "The name of the variable to delete, in the format:\n\n`projects/[PROJECT_ID]/configs/[CONFIG_NAME]/variables/[VARIABLE_NAME]`", + "location": "path", + "pattern": "^projects/[^/]+/configs/[^/]+/variables/.+$", + "required": true, + "type": "string" + }, + "recursive": { + "description": "Set to `true` to recursively delete multiple variables with the same\nprefix.", + "location": "query", + "type": "boolean" + } + }, + "path": "v1beta1/{+name}", "response": { "$ref": "Empty" }, - "parameters": { - "recursive": { - "location": "query", - "description": "Set to `true` to recursively delete multiple variables with the same\nprefix.", - "type": "boolean" - }, - "name": { - "description": "The name of the variable to delete, in the format:\n\n`projects/[PROJECT_ID]/configs/[CONFIG_NAME]/variables/[VARIABLE_NAME]`", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/configs/[^/]+/variables/.+$", - "location": "path" - } - }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/cloudruntimeconfig" - ], - "flatPath": "v1beta1/projects/{projectsId}/configs/{configsId}/variables/{variablesId}", - "id": "runtimeconfig.projects.configs.variables.delete", - "path": "v1beta1/{+name}" - }, - "list": { - "httpMethod": "GET", - "parameterOrder": [ - "parent" - ], - "response": { - "$ref": "ListVariablesResponse" - }, - "parameters": { - "filter": { - "description": "Filters variables by matching the specified filter. For example:\n\n`projects/example-project/config/[CONFIG_NAME]/variables/example-variable`.", - "type": "string", - "location": "query" - }, - "pageToken": { - "description": "Specifies a page token to use. Set `pageToken` to a `nextPageToken`\nreturned by a previous list request to get the next page of results.", - "type": "string", - "location": "query" - }, - "returnValues": { - "description": "The flag indicates whether the user wants to return values of variables.\nIf true, then only those variables that user has IAM GetVariable permission\nwill be returned along with their values.", - "type": "boolean", - "location": "query" - }, - "pageSize": { - "description": "Specifies the number of results to return per page. If there are fewer\nelements than the specified number, returns all elements.", - "format": "int32", - "type": "integer", - "location": "query" - }, - "parent": { - "description": "The path to the RuntimeConfig resource for which you want to list variables.\nThe configuration must exist beforehand; the path must be in the format:\n\n`projects/[PROJECT_ID]/configs/[CONFIG_NAME]`", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/configs/[^/]+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloudruntimeconfig" - ], - "flatPath": "v1beta1/projects/{projectsId}/configs/{configsId}/variables", - "id": "runtimeconfig.projects.configs.variables.list", - "path": "v1beta1/{+parent}/variables", - "description": "Lists variables within given a configuration, matching any provided filters.\nThis only lists variable names, not the values, unless `return_values` is\ntrue, in which case only variables that user has IAM permission to GetVariable\nwill be returned." - }, - "create": { - "response": { - "$ref": "Variable" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "POST", - "parameters": { - "requestId": { - "description": "An optional but recommended unique `request_id`. If the server\nreceives two `create()` requests with the same\n`request_id`, then the second request will be ignored and the\nfirst resource created and stored in the backend is returned.\nEmpty `request_id` fields are ignored.\n\nIt is responsibility of the client to ensure uniqueness of the\n`request_id` strings.\n\n`request_id` strings are limited to 64 characters.", - "type": "string", - "location": "query" - }, - "parent": { - "description": "The path to the RutimeConfig resource that this variable should belong to.\nThe configuration must exist beforehand; the path must be in the format:\n\n`projects/[PROJECT_ID]/configs/[CONFIG_NAME]`", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/configs/[^/]+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloudruntimeconfig" - ], - "flatPath": "v1beta1/projects/{projectsId}/configs/{configsId}/variables", - "path": "v1beta1/{+parent}/variables", - "id": "runtimeconfig.projects.configs.variables.create", - "request": { - "$ref": "Variable" - }, - "description": "Creates a variable within the given configuration. You cannot create\na variable with a name that is a prefix of an existing variable name, or a\nname that has an existing variable name as a prefix.\n\nTo learn more about creating a variable, read the\n[Setting and Getting Data](/deployment-manager/runtime-configurator/set-and-get-variables)\ndocumentation." + ] }, "get": { "description": "Gets information about a single variable.", - "response": { - "$ref": "Variable" - }, + "flatPath": "v1beta1/projects/{projectsId}/configs/{configsId}/variables/{variablesId}", + "httpMethod": "GET", + "id": "runtimeconfig.projects.configs.variables.get", "parameterOrder": [ "name" ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloudruntimeconfig" - ], "parameters": { "name": { "description": "The name of the variable to return, in the format:\n\n`projects/[PROJECT_ID]/configs/[CONFIG_NAME]/variables/[VARIBLE_NAME]`", - "required": true, - "type": "string", + "location": "path", "pattern": "^projects/[^/]+/configs/[^/]+/variables/.+$", - "location": "path" + "required": true, + "type": "string" } }, - "flatPath": "v1beta1/projects/{projectsId}/configs/{configsId}/variables/{variablesId}", "path": "v1beta1/{+name}", - "id": "runtimeconfig.projects.configs.variables.get" + "response": { + "$ref": "Variable" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloudruntimeconfig" + ] + }, + "list": { + "description": "Lists variables within given a configuration, matching any provided\nfilters. This only lists variable names, not the values, unless\n`return_values` is true, in which case only variables that user has IAM\npermission to GetVariable will be returned.", + "flatPath": "v1beta1/projects/{projectsId}/configs/{configsId}/variables", + "httpMethod": "GET", + "id": "runtimeconfig.projects.configs.variables.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "filter": { + "description": "Filters variables by matching the specified filter. For example:\n\n`projects/example-project/config/[CONFIG_NAME]/variables/example-variable`.", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "Specifies the number of results to return per page. If there are fewer\nelements than the specified number, returns all elements.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Specifies a page token to use. Set `pageToken` to a `nextPageToken`\nreturned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "The path to the RuntimeConfig resource for which you want to list\nvariables. The configuration must exist beforehand; the path must be in the\nformat:\n\n`projects/[PROJECT_ID]/configs/[CONFIG_NAME]`", + "location": "path", + "pattern": "^projects/[^/]+/configs/[^/]+$", + "required": true, + "type": "string" + }, + "returnValues": { + "description": "The flag indicates whether the user wants to return values of variables.\nIf true, then only those variables that user has IAM GetVariable permission\nwill be returned along with their values.", + "location": "query", + "type": "boolean" + } + }, + "path": "v1beta1/{+parent}/variables", + "response": { + "$ref": "ListVariablesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloudruntimeconfig" + ] + }, + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource.\nIf the resource does not exist, this will return an empty set of\npermissions, not a NOT_FOUND error.\n\nNote: This operation is designed to be used for building permission-aware\nUIs and command-line tools, not for authorization checking. This operation\nmay \"fail open\" without warning.", + "flatPath": "v1beta1/projects/{projectsId}/configs/{configsId}/variables/{variablesId}:testIamPermissions", + "httpMethod": "POST", + "id": "runtimeconfig.projects.configs.variables.testIamPermissions", + "parameterOrder": [ + "resource" + ], + "parameters": { + "resource": { + "description": "REQUIRED: The resource for which the policy detail is being requested.\nSee the operation documentation for the appropriate value for this field.", + "location": "path", + "pattern": "^projects/[^/]+/configs/[^/]+/variables/.+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+resource}:testIamPermissions", + "request": { + "$ref": "TestIamPermissionsRequest" + }, + "response": { + "$ref": "TestIamPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloudruntimeconfig" + ] + }, + "update": { + "description": "Updates an existing variable with a new value.", + "flatPath": "v1beta1/projects/{projectsId}/configs/{configsId}/variables/{variablesId}", + "httpMethod": "PUT", + "id": "runtimeconfig.projects.configs.variables.update", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the variable to update, in the format:\n\n`projects/[PROJECT_ID]/configs/[CONFIG_NAME]/variables/[VARIABLE_NAME]`", + "location": "path", + "pattern": "^projects/[^/]+/configs/[^/]+/variables/.+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "request": { + "$ref": "Variable" + }, + "response": { + "$ref": "Variable" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloudruntimeconfig" + ] }, "watch": { - "description": "Watches a specific variable and waits for a change in the variable's value.\nWhen there is a change, this method returns the new value or times out.\n\nIf a variable is deleted while being watched, the `variableState` state is\nset to `DELETED` and the method returns the last known variable `value`.\n\nIf you set the deadline for watching to a larger value than internal timeout\n(60 seconds), the current variable value is returned and the `variableState`\nwill be `VARIABLE_STATE_UNSPECIFIED`.\n\nTo learn more about creating a watcher, read the\n[Watching a Variable for Changes](/deployment-manager/runtime-configurator/watching-a-variable)\ndocumentation.", + "description": "Watches a specific variable and waits for a change in the variable's value.\nWhen there is a change, this method returns the new value or times out.\n\nIf a variable is deleted while being watched, the `variableState` state is\nset to `DELETED` and the method returns the last known variable `value`.\n\nIf you set the deadline for watching to a larger value than internal\ntimeout (60 seconds), the current variable value is returned and the\n`variableState` will be `VARIABLE_STATE_UNSPECIFIED`.\n\nTo learn more about creating a watcher, read the\n[Watching a Variable for\nChanges](/deployment-manager/runtime-configurator/watching-a-variable)\ndocumentation.", + "flatPath": "v1beta1/projects/{projectsId}/configs/{configsId}/variables/{variablesId}:watch", + "httpMethod": "POST", + "id": "runtimeconfig.projects.configs.variables.watch", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the variable to watch, in the format:\n\n`projects/[PROJECT_ID]/configs/[CONFIG_NAME]`", + "location": "path", + "pattern": "^projects/[^/]+/configs/[^/]+/variables/.+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}:watch", "request": { "$ref": "WatchVariableRequest" }, "response": { "$ref": "Variable" }, - "parameterOrder": [ - "name" - ], + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloudruntimeconfig" + ] + } + } + }, + "waiters": { + "methods": { + "create": { + "description": "Creates a Waiter resource. This operation returns a long-running Operation\nresource which can be polled for completion. However, a waiter with the\ngiven name will exist (and can be retrieved) prior to the operation\ncompleting. If the operation fails, the failed Waiter resource will\nstill exist and must be deleted prior to subsequent creation attempts.", + "flatPath": "v1beta1/projects/{projectsId}/configs/{configsId}/waiters", "httpMethod": "POST", + "id": "runtimeconfig.projects.configs.waiters.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "The path to the configuration that will own the waiter.\nThe configuration must exist beforehand; the path must be in the format:\n\n`projects/[PROJECT_ID]/configs/[CONFIG_NAME]`.", + "location": "path", + "pattern": "^projects/[^/]+/configs/[^/]+$", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional but recommended unique `request_id`. If the server\nreceives two `create()` requests with the same\n`request_id`, then the second request will be ignored and the\nfirst resource created and stored in the backend is returned.\nEmpty `request_id` fields are ignored.\n\nIt is responsibility of the client to ensure uniqueness of the\n`request_id` strings.\n\n`request_id` strings are limited to 64 characters.", + "location": "query", + "type": "string" + } + }, + "path": "v1beta1/{+parent}/waiters", + "request": { + "$ref": "Waiter" + }, + "response": { + "$ref": "Operation" + }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/cloudruntimeconfig" - ], - "parameters": { - "name": { - "location": "path", - "description": "The name of the variable to watch, in the format:\n\n`projects/[PROJECT_ID]/configs/[CONFIG_NAME]`", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/configs/[^/]+/variables/.+$" - } - }, - "flatPath": "v1beta1/projects/{projectsId}/configs/{configsId}/variables/{variablesId}:watch", - "path": "v1beta1/{+name}:watch", - "id": "runtimeconfig.projects.configs.variables.watch" + ] }, - "update": { - "httpMethod": "PUT", + "delete": { + "description": "Deletes the waiter with the specified name.", + "flatPath": "v1beta1/projects/{projectsId}/configs/{configsId}/waiters/{waitersId}", + "httpMethod": "DELETE", + "id": "runtimeconfig.projects.configs.waiters.delete", "parameterOrder": [ "name" ], - "response": { - "$ref": "Variable" - }, "parameters": { "name": { + "description": "The Waiter resource to delete, in the format:\n\n `projects/[PROJECT_ID]/configs/[CONFIG_NAME]/waiters/[WAITER_NAME]`", "location": "path", - "description": "The name of the variable to update, in the format:\n\n`projects/[PROJECT_ID]/configs/[CONFIG_NAME]/variables/[VARIABLE_NAME]`", + "pattern": "^projects/[^/]+/configs/[^/]+/waiters/[^/]+$", "required": true, - "type": "string", - "pattern": "^projects/[^/]+/configs/[^/]+/variables/.+$" + "type": "string" } }, + "path": "v1beta1/{+name}", + "response": { + "$ref": "Empty" + }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/cloudruntimeconfig" + ] + }, + "get": { + "description": "Gets information about a single waiter.", + "flatPath": "v1beta1/projects/{projectsId}/configs/{configsId}/waiters/{waitersId}", + "httpMethod": "GET", + "id": "runtimeconfig.projects.configs.waiters.get", + "parameterOrder": [ + "name" ], - "flatPath": "v1beta1/projects/{projectsId}/configs/{configsId}/variables/{variablesId}", - "id": "runtimeconfig.projects.configs.variables.update", - "path": "v1beta1/{+name}", - "request": { - "$ref": "Variable" + "parameters": { + "name": { + "description": "The fully-qualified name of the Waiter resource object to retrieve, in the\nformat:\n\n`projects/[PROJECT_ID]/configs/[CONFIG_NAME]/waiters/[WAITER_NAME]`", + "location": "path", + "pattern": "^projects/[^/]+/configs/[^/]+/waiters/[^/]+$", + "required": true, + "type": "string" + } }, - "description": "Updates an existing variable with a new value." + "path": "v1beta1/{+name}", + "response": { + "$ref": "Waiter" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloudruntimeconfig" + ] + }, + "list": { + "description": "List waiters within the given configuration.", + "flatPath": "v1beta1/projects/{projectsId}/configs/{configsId}/waiters", + "httpMethod": "GET", + "id": "runtimeconfig.projects.configs.waiters.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "pageSize": { + "description": "Specifies the number of results to return per page. If there are fewer\nelements than the specified number, returns all elements.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Specifies a page token to use. Set `pageToken` to a `nextPageToken`\nreturned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "The path to the configuration for which you want to get a list of waiters.\nThe configuration must exist beforehand; the path must be in the format:\n\n`projects/[PROJECT_ID]/configs/[CONFIG_NAME]`", + "location": "path", + "pattern": "^projects/[^/]+/configs/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+parent}/waiters", + "response": { + "$ref": "ListWaitersResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloudruntimeconfig" + ] + }, + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource.\nIf the resource does not exist, this will return an empty set of\npermissions, not a NOT_FOUND error.\n\nNote: This operation is designed to be used for building permission-aware\nUIs and command-line tools, not for authorization checking. This operation\nmay \"fail open\" without warning.", + "flatPath": "v1beta1/projects/{projectsId}/configs/{configsId}/waiters/{waitersId}:testIamPermissions", + "httpMethod": "POST", + "id": "runtimeconfig.projects.configs.waiters.testIamPermissions", + "parameterOrder": [ + "resource" + ], + "parameters": { + "resource": { + "description": "REQUIRED: The resource for which the policy detail is being requested.\nSee the operation documentation for the appropriate value for this field.", + "location": "path", + "pattern": "^projects/[^/]+/configs/[^/]+/waiters/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+resource}:testIamPermissions", + "request": { + "$ref": "TestIamPermissionsRequest" + }, + "response": { + "$ref": "TestIamPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloudruntimeconfig" + ] } } } @@ -692,275 +809,99 @@ } } }, - "parameters": { - "$.xgafv": { - "enumDescriptions": [ - "v1 error format", - "v2 error format" - ], - "location": "query", - "enum": [ - "1", - "2" - ], - "description": "V1 error format.", - "type": "string" - }, - "callback": { - "location": "query", - "description": "JSONP", - "type": "string" - }, - "alt": { - "enumDescriptions": [ - "Responses with Content-Type of application/json", - "Media download with context-dependent Content-Type", - "Responses with Content-Type of application/x-protobuf" - ], - "location": "query", - "description": "Data format for response.", - "default": "json", - "enum": [ - "json", - "media", - "proto" - ], - "type": "string" - }, - "key": { - "location": "query", - "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.", - "type": "string" - }, - "access_token": { - "description": "OAuth access token.", - "type": "string", - "location": "query" - }, - "quotaUser": { - "location": "query", - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", - "type": "string" - }, - "pp": { - "location": "query", - "description": "Pretty-print response.", - "type": "boolean", - "default": "true" - }, - "oauth_token": { - "location": "query", - "description": "OAuth 2.0 token for the current user.", - "type": "string" - }, - "bearer_token": { - "description": "OAuth bearer token.", - "type": "string", - "location": "query" - }, - "upload_protocol": { - "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", - "type": "string", - "location": "query" - }, - "prettyPrint": { - "description": "Returns response with indentations and line breaks.", - "type": "boolean", - "default": "true", - "location": "query" - }, - "uploadType": { - "location": "query", - "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", - "type": "string" - }, - "fields": { - "description": "Selector specifying which fields to include in a partial response.", - "type": "string", - "location": "query" - } - }, - "version": "v1beta1", - "baseUrl": "https://runtimeconfig.googleapis.com/", - "servicePath": "", - "description": "The Runtime Configurator allows you to dynamically configure and expose variables through Google Cloud Platform. In addition, you can also set Watchers and Waiters that will watch for changes to your data and return based on certain conditions.", - "kind": "discovery#restDescription", - "basePath": "", - "id": "runtimeconfig:v1beta1", - "documentationLink": "https://cloud.google.com/deployment-manager/runtime-configurator/", - "revision": "20180108", - "discoveryVersion": "v1", - "version_module": true, + "revision": "20180212", + "rootUrl": "https://runtimeconfig.googleapis.com/", "schemas": { - "SetIamPolicyRequest": { - "description": "Request message for `SetIamPolicy` method.", - "type": "object", - "properties": { - "policy": { - "description": "REQUIRED: The complete policy to be applied to the `resource`. The size of\nthe policy is limited to a few 10s of KB. An empty policy is a\nvalid policy but certain Cloud Platform services (such as Projects)\nmight reject them.", - "$ref": "Policy" - } - }, - "id": "SetIamPolicyRequest" - }, - "Status": { - "description": "The `Status` type defines a logical error model that is suitable for different\nprogramming environments, including REST APIs and RPC APIs. It is used by\n[gRPC](https://github.com/grpc). The error model is designed to be:\n\n- Simple to use and understand for most users\n- Flexible enough to meet unexpected needs\n\n# Overview\n\nThe `Status` message contains three pieces of data: error code, error message,\nand error details. The error code should be an enum value of\ngoogle.rpc.Code, but it may accept additional error codes if needed. The\nerror message should be a developer-facing English message that helps\ndevelopers *understand* and *resolve* the error. If a localized user-facing\nerror message is needed, put the localized message in the error details or\nlocalize it in the client. The optional error details may contain arbitrary\ninformation about the error. There is a predefined set of error detail types\nin the package `google.rpc` that can be used for common error conditions.\n\n# Language mapping\n\nThe `Status` message is the logical representation of the error model, but it\nis not necessarily the actual wire format. When the `Status` message is\nexposed in different client libraries and different wire protocols, it can be\nmapped differently. For example, it will likely be mapped to some exceptions\nin Java, but more likely mapped to some error codes in C.\n\n# Other uses\n\nThe error model and the `Status` message can be used in a variety of\nenvironments, either with or without APIs, to provide a\nconsistent developer experience across different environments.\n\nExample uses of this error model include:\n\n- Partial errors. If a service needs to return partial errors to the client,\n it may embed the `Status` in the normal response to indicate the partial\n errors.\n\n- Workflow errors. A typical workflow has multiple steps. Each step may\n have a `Status` message for error reporting.\n\n- Batch operations. If a client uses batch request and batch response, the\n `Status` message should be used directly inside batch response, one for\n each error sub-response.\n\n- Asynchronous operations. If an API call embeds asynchronous operation\n results in its response, the status of those operations should be\n represented directly using the `Status` message.\n\n- Logging. If some API errors are stored in logs, the message `Status` could\n be used directly after any stripping needed for security/privacy reasons.", - "type": "object", - "properties": { - "code": { - "description": "The status code, which should be an enum value of google.rpc.Code.", - "format": "int32", - "type": "integer" - }, - "message": { - "description": "A developer-facing error message, which should be in English. Any\nuser-facing error message should be localized and sent in the\ngoogle.rpc.Status.details field, or localized by the client.", - "type": "string" - }, - "details": { - "description": "A list of messages that carry the error details. There is a common set of\nmessage types for APIs to use.", - "type": "array", - "items": { - "type": "object", - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - } - } - } - }, - "id": "Status" - }, "Binding": { "description": "Associates `members` with a `role`.", - "type": "object", + "id": "Binding", "properties": { "members": { "description": "Specifies the identities requesting access for a Cloud Platform resource.\n`members` can have the following values:\n\n* `allUsers`: A special identifier that represents anyone who is\n on the internet; with or without a Google account.\n\n* `allAuthenticatedUsers`: A special identifier that represents anyone\n who is authenticated with a Google account or a service account.\n\n* `user:{emailid}`: An email address that represents a specific Google\n account. For example, `alice@gmail.com` or `joe@example.com`.\n\n\n* `serviceAccount:{emailid}`: An email address that represents a service\n account. For example, `my-other-app@appspot.gserviceaccount.com`.\n\n* `group:{emailid}`: An email address that represents a Google group.\n For example, `admins@example.com`.\n\n\n* `domain:{domain}`: A Google Apps domain name that represents all the\n users of that domain. For example, `google.com` or `example.com`.\n\n", - "type": "array", "items": { "type": "string" - } + }, + "type": "array" }, "role": { "description": "Role that is assigned to `members`.\nFor example, `roles/viewer`, `roles/editor`, or `roles/owner`.\nRequired", "type": "string" } }, - "id": "Binding" + "type": "object" }, "Cardinality": { "description": "A Cardinality condition for the Waiter resource. A cardinality condition is\nmet when the number of variables under a specified path prefix reaches a\npredefined number. For example, if you set a Cardinality condition where\nthe `path` is set to `/foo` and the number of paths is set to 2, the\nfollowing variables would meet the condition in a RuntimeConfig resource:\n\n+ `/foo/variable1 = \"value1\"`\n+ `/foo/variable2 = \"value2\"`\n+ `/bar/variable3 = \"value3\"`\n\nIt would not would not satisify the same condition with the `number` set to\n3, however, because there is only 2 paths that start with `/foo`.\nCardinality conditions are recursive; all subtrees under the specific\npath prefix are counted.", - "type": "object", + "id": "Cardinality", "properties": { - "path": { - "description": "The root of the variable subtree to monitor. For example, `/foo`.", - "type": "string" - }, "number": { "description": "The number variables under the `path` that must exist to meet this\ncondition. Defaults to 1 if not specified.", "format": "int32", "type": "integer" - } - }, - "id": "Cardinality" - }, - "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 `{}`.", - "type": "object", - "properties": {}, - "id": "Empty" - }, - "ListConfigsResponse": { - "description": "`ListConfigs()` returns the following response. The order of returned\nobjects is arbitrary; that is, it is not ordered in any particular way.", - "type": "object", - "properties": { - "configs": { - "description": "A list of the configurations in the project. The order of returned\nobjects is arbitrary; that is, it is not ordered in any particular way.", - "type": "array", - "items": { - "$ref": "RuntimeConfig" - } }, - "nextPageToken": { - "description": "This token allows you to get the next page of results for list requests.\nIf the number of results is larger than `pageSize`, use the `nextPageToken`\nas a value for the query parameter `pageToken` in the next list request.\nSubsequent list requests will have their own `nextPageToken` to continue\npaging through the results", + "path": { + "description": "The root of the variable subtree to monitor. For example, `/foo`.", "type": "string" } }, - "id": "ListConfigsResponse" + "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" }, "EndCondition": { "description": "The condition that a Waiter resource is waiting for.", - "type": "object", + "id": "EndCondition", "properties": { "cardinality": { "$ref": "Cardinality", "description": "The cardinality of the `EndCondition`." } }, - "id": "EndCondition" + "type": "object" }, - "TestIamPermissionsResponse": { - "description": "Response message for `TestIamPermissions` method.", - "type": "object", + "ListConfigsResponse": { + "description": "`ListConfigs()` returns the following response. The order of returned\nobjects is arbitrary; that is, it is not ordered in any particular way.", + "id": "ListConfigsResponse", "properties": { - "permissions": { - "description": "A subset of `TestPermissionsRequest.permissions` that the caller is\nallowed.", - "type": "array", + "configs": { + "description": "A list of the configurations in the project. The order of returned\nobjects is arbitrary; that is, it is not ordered in any particular way.", "items": { - "type": "string" - } - } - }, - "id": "TestIamPermissionsResponse" - }, - "ListVariablesResponse": { - "description": "Response for the `ListVariables()` method.", - "type": "object", - "properties": { - "variables": { - "description": "A list of variables and their values. The order of returned variable\nobjects is arbitrary.", - "type": "array", - "items": { - "$ref": "Variable" - } + "$ref": "RuntimeConfig" + }, + "type": "array" }, "nextPageToken": { "description": "This token allows you to get the next page of results for list requests.\nIf the number of results is larger than `pageSize`, use the `nextPageToken`\nas a value for the query parameter `pageToken` in the next list request.\nSubsequent list requests will have their own `nextPageToken` to continue\npaging through the results", "type": "string" } }, - "id": "ListVariablesResponse" + "type": "object" }, - "RuntimeConfig": { - "description": "A RuntimeConfig resource is the primary resource in the Cloud RuntimeConfig\nservice. A RuntimeConfig resource consists of metadata and a hierarchy of\nvariables.", - "type": "object", + "ListVariablesResponse": { + "description": "Response for the `ListVariables()` method.", + "id": "ListVariablesResponse", "properties": { - "name": { - "description": "The resource name of a runtime config. The name must have the format:\n\n projects/[PROJECT_ID]/configs/[CONFIG_NAME]\n\nThe `[PROJECT_ID]` must be a valid project ID, and `[CONFIG_NAME]` is an\narbitrary name that matches the\n`[0-9A-Za-z](?:[_.A-Za-z0-9-]{0,62}[_.A-Za-z0-9])?` regular expression.\nThe length of `[CONFIG_NAME]` must be less than 64 characters.\n\nYou pick the RuntimeConfig resource name, but the server will validate that\nthe name adheres to this format. After you create the resource, you cannot\nchange the resource's name.", + "nextPageToken": { + "description": "This token allows you to get the next page of results for list requests.\nIf the number of results is larger than `pageSize`, use the `nextPageToken`\nas a value for the query parameter `pageToken` in the next list request.\nSubsequent list requests will have their own `nextPageToken` to continue\npaging through the results", "type": "string" }, - "description": { - "description": "An optional description of the RuntimeConfig object.", - "type": "string" + "variables": { + "description": "A list of variables and their values. The order of returned variable\nobjects is arbitrary.", + "items": { + "$ref": "Variable" + }, + "type": "array" } }, - "id": "RuntimeConfig" - }, - "WatchVariableRequest": { - "description": "Request for the `WatchVariable()` method.", - "type": "object", - "properties": { - "newerThan": { - "description": "If specified, checks the current timestamp of the variable and if the\ncurrent timestamp is newer than `newerThan` timestamp, the method returns\nimmediately.\n\nIf not specified or the variable has an older timestamp, the watcher waits\nfor a the value to change before returning.", - "format": "google-datetime", - "type": "string" - } - }, - "id": "WatchVariableRequest" + "type": "object" }, "ListWaitersResponse": { "description": "Response for the `ListWaiters()` method.\nOrder of returned waiter objects is arbitrary.", - "type": "object", + "id": "ListWaitersResponse", "properties": { "nextPageToken": { "description": "This token allows you to get the next page of results for list requests.\nIf the number of results is larger than `pageSize`, use the `nextPageToken`\nas a value for the query parameter `pageToken` in the next list request.\nSubsequent list requests will have their own `nextPageToken` to continue\npaging through the results", @@ -968,114 +909,59 @@ }, "waiters": { "description": "Found waiters in the project.", - "type": "array", "items": { "$ref": "Waiter" - } + }, + "type": "array" } }, - "id": "ListWaitersResponse" + "type": "object" }, - "Waiter": { - "description": "A Waiter resource waits for some end condition within a RuntimeConfig resource\nto be met before it returns. For example, assume you have a distributed\nsystem where each node writes to a Variable resource indidicating the node's\nreadiness as part of the startup process.\n\nYou then configure a Waiter resource with the success condition set to wait\nuntil some number of nodes have checked in. Afterwards, your application\nruns some arbitrary code after the condition has been met and the waiter\nreturns successfully.\n\nOnce created, a Waiter resource is immutable.\n\nTo learn more about using waiters, read the\n[Creating a Waiter](/deployment-manager/runtime-configurator/creating-a-waiter)\ndocumentation.", - "type": "object", + "Operation": { + "description": "This resource represents a long-running operation that is the result of a\nnetwork API call.", + "id": "Operation", "properties": { - "createTime": { - "description": "[Output Only] The instant at which this Waiter resource was created. Adding\nthe value of `timeout` to this instant yields the timeout deadline for the\nwaiter.", - "format": "google-datetime", - "type": "string" - }, "done": { - "description": "[Output Only] If the value is `false`, it means the waiter is still waiting\nfor one of its conditions to be met.\n\nIf true, the waiter has finished. If the waiter finished due to a timeout\nor failure, `error` will be set.", + "description": "If the value is `false`, it means the operation is still in progress.\nIf `true`, the operation is completed, and either `error` or `response` is\navailable.", "type": "boolean" }, - "timeout": { - "description": "[Required] Specifies the timeout of the waiter in seconds, beginning from\nthe instant that `waiters().create` method is called. If this time elapses\nbefore the success or failure conditions are met, the waiter fails and sets\nthe `error` code to `DEADLINE_EXCEEDED`.", - "format": "google-duration", - "type": "string" - }, - "name": { - "description": "The name of the Waiter resource, in the format:\n\n projects/[PROJECT_ID]/configs/[CONFIG_NAME]/waiters/[WAITER_NAME]\n\nThe `[PROJECT_ID]` must be a valid Google Cloud project ID,\nthe `[CONFIG_NAME]` must be a valid RuntimeConfig resource, the\n`[WAITER_NAME]` must match RFC 1035 segment specification, and the length\nof `[WAITER_NAME]` must be less than 64 bytes.\n\nAfter you create a Waiter resource, you cannot change the resource name.", - "type": "string" - }, "error": { "$ref": "Status", - "description": "[Output Only] If the waiter ended due to a failure or timeout, this value\nwill be set." + "description": "The error result of the operation in case of failure or cancellation." }, - "failure": { - "description": "[Optional] The failure condition of this waiter. If this condition is met,\n`done` will be set to `true` and the `error` code will be set to `ABORTED`.\nThe failure condition takes precedence over the success condition. If both\nconditions are met, a failure will be indicated. This value is optional; if\nno failure condition is set, the only failure scenario will be a timeout.", - "$ref": "EndCondition" - }, - "success": { - "description": "[Required] The success condition. If this condition is met, `done` will be\nset to `true` and the `error` value will remain unset. The failure condition\ntakes precedence over the success condition. If both conditions are met, a\nfailure will be indicated.", - "$ref": "EndCondition" - } - }, - "id": "Waiter" - }, - "TestIamPermissionsRequest": { - "description": "Request message for `TestIamPermissions` method.", - "type": "object", - "properties": { - "permissions": { - "description": "The set of permissions to check for the `resource`. Permissions with\nwildcards (such as '*' or 'storage.*') are not allowed. For more\ninformation see\n[IAM Overview](https://cloud.google.com/iam/docs/overview#permissions).", - "type": "array", - "items": { - "type": "string" - } - } - }, - "id": "TestIamPermissionsRequest" - }, - "Variable": { - "description": "Describes a single variable within a RuntimeConfig resource.\nThe name denotes the hierarchical variable name. For example,\n`ports/serving_port` is a valid variable name. The variable value is an\nopaque string and only leaf variables can have values (that is, variables\nthat do not have any child variables).", - "type": "object", - "properties": { - "updateTime": { - "description": "[Output Only] The time of the last variable update.", - "format": "google-datetime", - "type": "string" - }, - "state": { - "enumDescriptions": [ - "Default variable state.", - "The variable was updated, while `variables().watch` was executing.", - "The variable was deleted, while `variables().watch` was executing." - ], - "enum": [ - "VARIABLE_STATE_UNSPECIFIED", - "UPDATED", - "DELETED" - ], - "description": "[Ouput only] The current state of the variable. The variable state indicates\nthe outcome of the `variables().watch` call and is visible through the\n`get` and `list` calls.", - "type": "string" + "metadata": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "description": "Service-specific metadata associated with the operation. It typically\ncontains progress information and common metadata such as create time.\nSome services might not provide such metadata. Any method that returns a\nlong-running operation should document the metadata type, if any.", + "type": "object" }, "name": { - "description": "The name of the variable resource, in the format:\n\n projects/[PROJECT_ID]/configs/[CONFIG_NAME]/variables/[VARIABLE_NAME]\n\nThe `[PROJECT_ID]` must be a valid project ID, `[CONFIG_NAME]` must be a\nvalid RuntimeConfig reource and `[VARIABLE_NAME]` follows Unix file system\nfile path naming.\n\nThe `[VARIABLE_NAME]` can contain ASCII letters, numbers, slashes and\ndashes. Slashes are used as path element separators and are not part of the\n`[VARIABLE_NAME]` itself, so `[VARIABLE_NAME]` must contain at least one\nnon-slash character. Multiple slashes are coalesced into single slash\ncharacter. Each path segment should match\n[0-9A-Za-z](?:[_.A-Za-z0-9-]{0,62}[_.A-Za-z0-9])? regular expression.\nThe length of a `[VARIABLE_NAME]` must be less than 256 characters.\n\nOnce you create a variable, you cannot change the variable name.", + "description": "The server-assigned name, which is only unique within the same service that\noriginally returns it. If you use the default HTTP mapping, the\n`name` should have the format of `operations/some/unique/name`.", "type": "string" }, - "text": { - "description": "The string value of the variable. The length of the value must be less\nthan 4096 bytes. Empty values are also accepted. For example,\n`text: \"my text value\"`. The string must be valid UTF-8.", - "type": "string" - }, - "value": { - "description": "The binary value of the variable. The length of the value must be less\nthan 4096 bytes. Empty values are also accepted. The value must be\nbase64 encoded. Only one of `value` or `text` can be set.", - "format": "byte", - "type": "string" + "response": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "description": "The normal response of the operation in case of success. If the original\nmethod returns no data on success, such as `Delete`, the response is\n`google.protobuf.Empty`. If the original method is standard\n`Get`/`Create`/`Update`, the response should be the resource. For other\nmethods, the response should have the type `XxxResponse`, where `Xxx`\nis the original method name. For example, if the original method name\nis `TakeSnapshot()`, the inferred response type is\n`TakeSnapshotResponse`.", + "type": "object" } }, - "id": "Variable" + "type": "object" }, "Policy": { "description": "Defines an Identity and Access Management (IAM) policy. It is used to\nspecify access control policies for Cloud Platform resources.\n\n\nA `Policy` consists of a list of `bindings`. A `Binding` binds a list of\n`members` to a `role`, where the members can be user accounts, Google groups,\nGoogle domains, and service accounts. A `role` is a named list of permissions\ndefined by IAM.\n\n**Example**\n\n {\n \"bindings\": [\n {\n \"role\": \"roles/owner\",\n \"members\": [\n \"user:mike@example.com\",\n \"group:admins@example.com\",\n \"domain:google.com\",\n \"serviceAccount:my-other-app@appspot.gserviceaccount.com\",\n ]\n },\n {\n \"role\": \"roles/viewer\",\n \"members\": [\"user:sean@example.com\"]\n }\n ]\n }\n\nFor a description of IAM and its features, see the\n[IAM developer's guide](https://cloud.google.com/iam/docs).", - "type": "object", + "id": "Policy", "properties": { "bindings": { "description": "Associates a list of `members` to a `role`.\n`bindings` with no members will result in an error.", - "type": "array", "items": { "$ref": "Binding" - } + }, + "type": "array" }, "etag": { "description": "`etag` is used for optimistic concurrency control as a way to help\nprevent simultaneous updates of a policy from overwriting each other.\nIt is strongly suggested that systems make use of the `etag` in the\nread-modify-write cycle to perform policy updates in order to avoid race\nconditions: An `etag` is returned in the response to `getIamPolicy`, and\nsystems are expected to put that etag in the request to `setIamPolicy` to\nensure that their change will be applied to the same version of the policy.\n\nIf no `etag` is provided in the call to `setIamPolicy`, then the existing\npolicy is overwritten blindly.", @@ -1088,66 +974,180 @@ "type": "integer" } }, - "id": "Policy" + "type": "object" }, - "Operation": { - "description": "This resource represents a long-running operation that is the result of a\nnetwork API call.", - "type": "object", + "RuntimeConfig": { + "description": "A RuntimeConfig resource is the primary resource in the Cloud RuntimeConfig\nservice. A RuntimeConfig resource consists of metadata and a hierarchy of\nvariables.", + "id": "RuntimeConfig", "properties": { - "error": { - "$ref": "Status", - "description": "The error result of the operation in case of failure or cancellation." - }, - "metadata": { - "description": "Service-specific metadata associated with the operation. It typically\ncontains progress information and common metadata such as create time.\nSome services might not provide such metadata. Any method that returns a\nlong-running operation should document the metadata type, if any.", - "type": "object", - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - } - }, - "done": { - "description": "If the value is `false`, it means the operation is still in progress.\nIf `true`, the operation is completed, and either `error` or `response` is\navailable.", - "type": "boolean" - }, - "response": { - "description": "The normal response of the operation in case of success. If the original\nmethod returns no data on success, such as `Delete`, the response is\n`google.protobuf.Empty`. If the original method is standard\n`Get`/`Create`/`Update`, the response should be the resource. For other\nmethods, the response should have the type `XxxResponse`, where `Xxx`\nis the original method name. For example, if the original method name\nis `TakeSnapshot()`, the inferred response type is\n`TakeSnapshotResponse`.", - "type": "object", - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - } + "description": { + "description": "An optional description of the RuntimeConfig object.", + "type": "string" }, "name": { - "description": "The server-assigned name, which is only unique within the same service that\noriginally returns it. If you use the default HTTP mapping, the\n`name` should have the format of `operations/some/unique/name`.", + "description": "The resource name of a runtime config. The name must have the format:\n\n projects/[PROJECT_ID]/configs/[CONFIG_NAME]\n\nThe `[PROJECT_ID]` must be a valid project ID, and `[CONFIG_NAME]` is an\narbitrary name that matches the\n`[0-9A-Za-z](?:[_.A-Za-z0-9-]{0,62}[_.A-Za-z0-9])?` regular expression.\nThe length of `[CONFIG_NAME]` must be less than 64 characters.\n\nYou pick the RuntimeConfig resource name, but the server will validate that\nthe name adheres to this format. After you create the resource, you cannot\nchange the resource's name.", "type": "string" } }, - "id": "Operation" - } - }, - "protocol": "rest", - "icons": { - "x16": "http://www.google.com/images/icons/product/search-16.gif", - "x32": "http://www.google.com/images/icons/product/search-32.gif" - }, - "canonicalName": "Cloud RuntimeConfig", - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/cloudruntimeconfig": { - "description": "Manage your Google Cloud Platform services' runtime configuration" - }, - "https://www.googleapis.com/auth/cloud-platform": { - "description": "View and manage your data across Google Cloud Platform services" + "type": "object" + }, + "SetIamPolicyRequest": { + "description": "Request message for `SetIamPolicy` method.", + "id": "SetIamPolicyRequest", + "properties": { + "policy": { + "$ref": "Policy", + "description": "REQUIRED: The complete policy to be applied to the `resource`. The size of\nthe policy is limited to a few 10s of KB. An empty policy is a\nvalid policy but certain Cloud Platform services (such as Projects)\nmight reject them." } - } + }, + "type": "object" + }, + "Status": { + "description": "The `Status` type defines a logical error model that is suitable for different\nprogramming environments, including REST APIs and RPC APIs. It is used by\n[gRPC](https://github.com/grpc). The error model is designed to be:\n\n- Simple to use and understand for most users\n- Flexible enough to meet unexpected needs\n\n# Overview\n\nThe `Status` message contains three pieces of data: error code, error message,\nand error details. The error code should be an enum value of\ngoogle.rpc.Code, but it may accept additional error codes if needed. The\nerror message should be a developer-facing English message that helps\ndevelopers *understand* and *resolve* the error. If a localized user-facing\nerror message is needed, put the localized message in the error details or\nlocalize it in the client. The optional error details may contain arbitrary\ninformation about the error. There is a predefined set of error detail types\nin the package `google.rpc` that can be used for common error conditions.\n\n# Language mapping\n\nThe `Status` message is the logical representation of the error model, but it\nis not necessarily the actual wire format. When the `Status` message is\nexposed in different client libraries and different wire protocols, it can be\nmapped differently. For example, it will likely be mapped to some exceptions\nin Java, but more likely mapped to some error codes in C.\n\n# Other uses\n\nThe error model and the `Status` message can be used in a variety of\nenvironments, either with or without APIs, to provide a\nconsistent developer experience across different environments.\n\nExample uses of this error model include:\n\n- Partial errors. If a service needs to return partial errors to the client,\n it may embed the `Status` in the normal response to indicate the partial\n errors.\n\n- Workflow errors. A typical workflow has multiple steps. Each step may\n have a `Status` message for error reporting.\n\n- Batch operations. If a client uses batch request and batch response, the\n `Status` message should be used directly inside batch response, one for\n each error sub-response.\n\n- Asynchronous operations. If an API call embeds asynchronous operation\n results in its response, the status of those operations should be\n represented directly using the `Status` message.\n\n- Logging. If some API errors are stored in logs, the message `Status` could\n be used directly after any stripping needed for security/privacy reasons.", + "id": "Status", + "properties": { + "code": { + "description": "The status code, which should be an enum value of google.rpc.Code.", + "format": "int32", + "type": "integer" + }, + "details": { + "description": "A list of messages that carry the error details. There is a common set of\nmessage types for APIs to use.", + "items": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "A developer-facing error message, which should be in English. Any\nuser-facing error message should be localized and sent in the\ngoogle.rpc.Status.details field, or localized by the client.", + "type": "string" + } + }, + "type": "object" + }, + "TestIamPermissionsRequest": { + "description": "Request message for `TestIamPermissions` method.", + "id": "TestIamPermissionsRequest", + "properties": { + "permissions": { + "description": "The set of permissions to check for the `resource`. Permissions with\nwildcards (such as '*' or 'storage.*') are not allowed. For more\ninformation see\n[IAM Overview](https://cloud.google.com/iam/docs/overview#permissions).", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "TestIamPermissionsResponse": { + "description": "Response message for `TestIamPermissions` method.", + "id": "TestIamPermissionsResponse", + "properties": { + "permissions": { + "description": "A subset of `TestPermissionsRequest.permissions` that the caller is\nallowed.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "Variable": { + "description": "Describes a single variable within a RuntimeConfig resource.\nThe name denotes the hierarchical variable name. For example,\n`ports/serving_port` is a valid variable name. The variable value is an\nopaque string and only leaf variables can have values (that is, variables\nthat do not have any child variables).", + "id": "Variable", + "properties": { + "name": { + "description": "The name of the variable resource, in the format:\n\n projects/[PROJECT_ID]/configs/[CONFIG_NAME]/variables/[VARIABLE_NAME]\n\nThe `[PROJECT_ID]` must be a valid project ID, `[CONFIG_NAME]` must be a\nvalid RuntimeConfig reource and `[VARIABLE_NAME]` follows Unix file system\nfile path naming.\n\nThe `[VARIABLE_NAME]` can contain ASCII letters, numbers, slashes and\ndashes. Slashes are used as path element separators and are not part of the\n`[VARIABLE_NAME]` itself, so `[VARIABLE_NAME]` must contain at least one\nnon-slash character. Multiple slashes are coalesced into single slash\ncharacter. Each path segment should match\n[0-9A-Za-z](?:[_.A-Za-z0-9-]{0,62}[_.A-Za-z0-9])? regular expression.\nThe length of a `[VARIABLE_NAME]` must be less than 256 characters.\n\nOnce you create a variable, you cannot change the variable name.", + "type": "string" + }, + "state": { + "description": "[Ouput only] The current state of the variable. The variable state indicates\nthe outcome of the `variables().watch` call and is visible through the\n`get` and `list` calls.", + "enum": [ + "VARIABLE_STATE_UNSPECIFIED", + "UPDATED", + "DELETED" + ], + "enumDescriptions": [ + "Default variable state.", + "The variable was updated, while `variables().watch` was executing.", + "The variable was deleted, while `variables().watch` was executing." + ], + "type": "string" + }, + "text": { + "description": "The string value of the variable. The length of the value must be less\nthan 4096 bytes. Empty values are also accepted. For example,\n`text: \"my text value\"`. The string must be valid UTF-8.", + "type": "string" + }, + "updateTime": { + "description": "Output only. The time of the last variable update.", + "format": "google-datetime", + "type": "string" + }, + "value": { + "description": "The binary value of the variable. The length of the value must be less\nthan 4096 bytes. Empty values are also accepted. The value must be\nbase64 encoded. Only one of `value` or `text` can be set.", + "format": "byte", + "type": "string" + } + }, + "type": "object" + }, + "Waiter": { + "description": "A Waiter resource waits for some end condition within a RuntimeConfig resource\nto be met before it returns. For example, assume you have a distributed\nsystem where each node writes to a Variable resource indidicating the node's\nreadiness as part of the startup process.\n\nYou then configure a Waiter resource with the success condition set to wait\nuntil some number of nodes have checked in. Afterwards, your application\nruns some arbitrary code after the condition has been met and the waiter\nreturns successfully.\n\nOnce created, a Waiter resource is immutable.\n\nTo learn more about using waiters, read the\n[Creating a Waiter](/deployment-manager/runtime-configurator/creating-a-waiter)\ndocumentation.", + "id": "Waiter", + "properties": { + "createTime": { + "description": "Output only. The instant at which this Waiter resource was created. Adding\nthe value of `timeout` to this instant yields the timeout deadline for the\nwaiter.", + "format": "google-datetime", + "type": "string" + }, + "done": { + "description": "Output only. If the value is `false`, it means the waiter is still waiting\nfor one of its conditions to be met.\n\nIf true, the waiter has finished. If the waiter finished due to a timeout\nor failure, `error` will be set.", + "type": "boolean" + }, + "error": { + "$ref": "Status", + "description": "Output only. If the waiter ended due to a failure or timeout, this value\nwill be set." + }, + "failure": { + "$ref": "EndCondition", + "description": "[Optional] The failure condition of this waiter. If this condition is met,\n`done` will be set to `true` and the `error` code will be set to `ABORTED`.\nThe failure condition takes precedence over the success condition. If both\nconditions are met, a failure will be indicated. This value is optional; if\nno failure condition is set, the only failure scenario will be a timeout." + }, + "name": { + "description": "The name of the Waiter resource, in the format:\n\n projects/[PROJECT_ID]/configs/[CONFIG_NAME]/waiters/[WAITER_NAME]\n\nThe `[PROJECT_ID]` must be a valid Google Cloud project ID,\nthe `[CONFIG_NAME]` must be a valid RuntimeConfig resource, the\n`[WAITER_NAME]` must match RFC 1035 segment specification, and the length\nof `[WAITER_NAME]` must be less than 64 bytes.\n\nAfter you create a Waiter resource, you cannot change the resource name.", + "type": "string" + }, + "success": { + "$ref": "EndCondition", + "description": "[Required] The success condition. If this condition is met, `done` will be\nset to `true` and the `error` value will remain unset. The failure condition\ntakes precedence over the success condition. If both conditions are met, a\nfailure will be indicated." + }, + "timeout": { + "description": "[Required] Specifies the timeout of the waiter in seconds, beginning from\nthe instant that `waiters().create` method is called. If this time elapses\nbefore the success or failure conditions are met, the waiter fails and sets\nthe `error` code to `DEADLINE_EXCEEDED`.", + "format": "google-duration", + "type": "string" + } + }, + "type": "object" + }, + "WatchVariableRequest": { + "description": "Request for the `WatchVariable()` method.", + "id": "WatchVariableRequest", + "properties": { + "newerThan": { + "description": "If specified, checks the current timestamp of the variable and if the\ncurrent timestamp is newer than `newerThan` timestamp, the method returns\nimmediately.\n\nIf not specified or the variable has an older timestamp, the watcher waits\nfor a the value to change before returning.", + "format": "google-datetime", + "type": "string" + } + }, + "type": "object" } }, - "rootUrl": "https://runtimeconfig.googleapis.com/", - "ownerDomain": "google.com", - "name": "runtimeconfig", - "batchPath": "batch", - "fullyEncodeReservedExpansion": true, - "title": "Google Cloud Runtime Configuration API" -} + "servicePath": "", + "title": "Google Cloud Runtime Configuration API", + "version": "v1beta1", + "version_module": true +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/runtimeconfig/v1beta1/runtimeconfig-gen.go b/vendor/google.golang.org/api/runtimeconfig/v1beta1/runtimeconfig-gen.go index 79aea0d4f..a5c1fed13 100644 --- a/vendor/google.golang.org/api/runtimeconfig/v1beta1/runtimeconfig-gen.go +++ b/vendor/google.golang.org/api/runtimeconfig/v1beta1/runtimeconfig-gen.go @@ -944,7 +944,7 @@ type Variable struct { // `text: "my text value". The string must be valid UTF-8. Text string `json:"text,omitempty"` - // UpdateTime: [Output Only] The time of the last variable update. + // UpdateTime: Output only. The time of the last variable update. UpdateTime string `json:"updateTime,omitempty"` // Value: The binary value of the variable. The length of the value must @@ -1005,14 +1005,14 @@ func (s *Variable) MarshalJSON() ([]byte, error) { // do // cumentation. type Waiter struct { - // CreateTime: [Output Only] The instant at which this Waiter resource + // CreateTime: Output only. The instant at which this Waiter resource // was created. Adding // the value of `timeout` to this instant yields the timeout deadline // for the // waiter. CreateTime string `json:"createTime,omitempty"` - // Done: [Output Only] If the value is `false`, it means the waiter is + // Done: Output only. If the value is `false`, it means the waiter is // still waiting // for one of its conditions to be met. // @@ -1021,7 +1021,7 @@ type Waiter struct { // or failure, `error` will be set. Done bool `json:"done,omitempty"` - // Error: [Output Only] If the waiter ended due to a failure or timeout, + // Error: Output only. If the waiter ended due to a failure or timeout, // this value // will be set. Error *Status `json:"error,omitempty"` @@ -1269,7 +1269,7 @@ func (c *ProjectsConfigsCreateCall) Do(opts ...googleapi.CallOption) (*RuntimeCo // ], // "parameters": { // "parent": { - // "description": "The [project ID](https://support.google.com/cloud/answer/6158840?hl=en\u0026ref_topic=6158848)\nfor this request, in the format `projects/[PROJECT_ID]`.", + // "description": "The [project\nID](https://support.google.com/cloud/answer/6158840?hl=en\u0026ref_topic=6158848)\nfor this request, in the format `projects/[PROJECT_ID]`.", // "location": "path", // "pattern": "^projects/[^/]+$", // "required": true, @@ -1853,7 +1853,7 @@ func (c *ProjectsConfigsListCall) Do(opts ...googleapi.CallOption) (*ListConfigs // "type": "string" // }, // "parent": { - // "description": "The [project ID](https://support.google.com/cloud/answer/6158840?hl=en\u0026ref_topic=6158848)\nfor this request, in the format `projects/[PROJECT_ID]`.", + // "description": "The [project\nID](https://support.google.com/cloud/answer/6158840?hl=en\u0026ref_topic=6158848)\nfor this request, in the format `projects/[PROJECT_ID]`.", // "location": "path", // "pattern": "^projects/[^/]+$", // "required": true, @@ -2622,9 +2622,10 @@ type ProjectsConfigsVariablesCreateCall struct { // name that has an existing variable name as a prefix. // // To learn more about creating a variable, read the -// [Setting and Getting -// Data](/deployment-manager/runtime-configurator/set-and-get-variables) -// +// [Setting and +// Getting +// Data](/deployment-manager/runtime-configurator/set-and-get-var +// iables) // documentation. func (r *ProjectsConfigsVariablesService) Create(parent string, variable *Variable) *ProjectsConfigsVariablesCreateCall { c := &ProjectsConfigsVariablesCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)} @@ -2736,7 +2737,7 @@ func (c *ProjectsConfigsVariablesCreateCall) Do(opts ...googleapi.CallOption) (* } return ret, nil // { - // "description": "Creates a variable within the given configuration. You cannot create\na variable with a name that is a prefix of an existing variable name, or a\nname that has an existing variable name as a prefix.\n\nTo learn more about creating a variable, read the\n[Setting and Getting Data](/deployment-manager/runtime-configurator/set-and-get-variables)\ndocumentation.", + // "description": "Creates a variable within the given configuration. You cannot create\na variable with a name that is a prefix of an existing variable name, or a\nname that has an existing variable name as a prefix.\n\nTo learn more about creating a variable, read the\n[Setting and Getting\nData](/deployment-manager/runtime-configurator/set-and-get-variables)\ndocumentation.", // "flatPath": "v1beta1/projects/{projectsId}/configs/{configsId}/variables", // "httpMethod": "POST", // "id": "runtimeconfig.projects.configs.variables.create", @@ -3071,12 +3072,12 @@ type ProjectsConfigsVariablesListCall struct { } // List: Lists variables within given a configuration, matching any -// provided filters. -// This only lists variable names, not the values, unless -// `return_values` is -// true, in which case only variables that user has IAM permission to -// GetVariable -// will be returned. +// provided +// filters. This only lists variable names, not the values, +// unless +// `return_values` is true, in which case only variables that user has +// IAM +// permission to GetVariable will be returned. func (r *ProjectsConfigsVariablesService) List(parent string) *ProjectsConfigsVariablesListCall { c := &ProjectsConfigsVariablesListCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.parent = parent @@ -3214,7 +3215,7 @@ func (c *ProjectsConfigsVariablesListCall) Do(opts ...googleapi.CallOption) (*Li } return ret, nil // { - // "description": "Lists variables within given a configuration, matching any provided filters.\nThis only lists variable names, not the values, unless `return_values` is\ntrue, in which case only variables that user has IAM permission to GetVariable\nwill be returned.", + // "description": "Lists variables within given a configuration, matching any provided\nfilters. This only lists variable names, not the values, unless\n`return_values` is true, in which case only variables that user has IAM\npermission to GetVariable will be returned.", // "flatPath": "v1beta1/projects/{projectsId}/configs/{configsId}/variables", // "httpMethod": "GET", // "id": "runtimeconfig.projects.configs.variables.list", @@ -3239,7 +3240,7 @@ func (c *ProjectsConfigsVariablesListCall) Do(opts ...googleapi.CallOption) (*Li // "type": "string" // }, // "parent": { - // "description": "The path to the RuntimeConfig resource for which you want to list variables.\nThe configuration must exist beforehand; the path must be in the format:\n\n`projects/[PROJECT_ID]/configs/[CONFIG_NAME]`", + // "description": "The path to the RuntimeConfig resource for which you want to list\nvariables. The configuration must exist beforehand; the path must be in the\nformat:\n\n`projects/[PROJECT_ID]/configs/[CONFIG_NAME]`", // "location": "path", // "pattern": "^projects/[^/]+/configs/[^/]+$", // "required": true, @@ -3587,16 +3588,17 @@ type ProjectsConfigsVariablesWatchCall struct { // set to `DELETED` and the method returns the last known variable // `value`. // -// If you set the deadline for watching to a larger value than internal -// timeout -// (60 seconds), the current variable value is returned and the -// `variableState` -// will be `VARIABLE_STATE_UNSPECIFIED`. +// If you set the deadline for watching to a larger value than +// internal +// timeout (60 seconds), the current variable value is returned and +// the +// `variableState` will be `VARIABLE_STATE_UNSPECIFIED`. // // To learn more about creating a watcher, read the -// [Watching a Variable for -// Changes](/deployment-manager/runtime-configurator/watching-a-variable) -// +// [Watching a Variable +// for +// Changes](/deployment-manager/runtime-configurator/watching-a-varia +// ble) // documentation. func (r *ProjectsConfigsVariablesService) Watch(name string, watchvariablerequest *WatchVariableRequest) *ProjectsConfigsVariablesWatchCall { c := &ProjectsConfigsVariablesWatchCall{s: r.s, urlParams_: make(gensupport.URLParams)} @@ -3691,7 +3693,7 @@ func (c *ProjectsConfigsVariablesWatchCall) Do(opts ...googleapi.CallOption) (*V } return ret, nil // { - // "description": "Watches a specific variable and waits for a change in the variable's value.\nWhen there is a change, this method returns the new value or times out.\n\nIf a variable is deleted while being watched, the `variableState` state is\nset to `DELETED` and the method returns the last known variable `value`.\n\nIf you set the deadline for watching to a larger value than internal timeout\n(60 seconds), the current variable value is returned and the `variableState`\nwill be `VARIABLE_STATE_UNSPECIFIED`.\n\nTo learn more about creating a watcher, read the\n[Watching a Variable for Changes](/deployment-manager/runtime-configurator/watching-a-variable)\ndocumentation.", + // "description": "Watches a specific variable and waits for a change in the variable's value.\nWhen there is a change, this method returns the new value or times out.\n\nIf a variable is deleted while being watched, the `variableState` state is\nset to `DELETED` and the method returns the last known variable `value`.\n\nIf you set the deadline for watching to a larger value than internal\ntimeout (60 seconds), the current variable value is returned and the\n`variableState` will be `VARIABLE_STATE_UNSPECIFIED`.\n\nTo learn more about creating a watcher, read the\n[Watching a Variable for\nChanges](/deployment-manager/runtime-configurator/watching-a-variable)\ndocumentation.", // "flatPath": "v1beta1/projects/{projectsId}/configs/{configsId}/variables/{variablesId}:watch", // "httpMethod": "POST", // "id": "runtimeconfig.projects.configs.variables.watch", diff --git a/vendor/google.golang.org/api/safebrowsing/v4/safebrowsing-api.json b/vendor/google.golang.org/api/safebrowsing/v4/safebrowsing-api.json index 4321f2e3d..a1d98c649 100644 --- a/vendor/google.golang.org/api/safebrowsing/v4/safebrowsing-api.json +++ b/vendor/google.golang.org/api/safebrowsing/v4/safebrowsing-api.json @@ -1,348 +1,524 @@ { - "id": "safebrowsing:v4", - "documentationLink": "https://developers.google.com/safe-browsing/", - "revision": "20180116", - "title": "Google Safe Browsing API", - "ownerName": "Google", + "basePath": "", + "baseUrl": "https://safebrowsing.googleapis.com/", + "batchPath": "batch", + "description": "Enables client applications to check web resources (most commonly URLs) against Google-generated lists of unsafe web resources.", "discoveryVersion": "v1", - "resources": { - "threatHits": { - "methods": { - "create": { - "path": "v4/threatHits", - "id": "safebrowsing.threatHits.create", - "description": "Reports a Safe Browsing threat list hit to Google. Only projects with\nTRUSTED_REPORTER visibility can use this method.", - "request": { - "$ref": "ThreatHit" - }, - "response": { - "$ref": "Empty" - }, - "parameterOrder": [], - "httpMethod": "POST", - "parameters": {}, - "flatPath": "v4/threatHits" - } - } - }, - "encodedFullHashes": { - "methods": { - "get": { - "path": "v4/encodedFullHashes/{encodedRequest}", - "id": "safebrowsing.encodedFullHashes.get", - "description": "", - "response": { - "$ref": "FindFullHashesResponse" - }, - "parameterOrder": [ - "encodedRequest" - ], - "httpMethod": "GET", - "parameters": { - "encodedRequest": { - "location": "path", - "description": "A serialized FindFullHashesRequest proto.", - "format": "byte", - "required": true, - "type": "string" - }, - "clientId": { - "description": "A client ID that (hopefully) uniquely identifies the client implementation\nof the Safe Browsing API.", - "type": "string", - "location": "query" - }, - "clientVersion": { - "location": "query", - "description": "The version of the client implementation.", - "type": "string" - } - }, - "flatPath": "v4/encodedFullHashes/{encodedRequest}" - } - } - }, - "threatLists": { - "methods": { - "list": { - "parameters": {}, - "flatPath": "v4/threatLists", - "path": "v4/threatLists", - "id": "safebrowsing.threatLists.list", - "description": "Lists the Safe Browsing threat lists available for download.", - "response": { - "$ref": "ListThreatListsResponse" - }, - "parameterOrder": [], - "httpMethod": "GET" - } - } - }, - "threatMatches": { - "methods": { - "find": { - "parameters": {}, - "flatPath": "v4/threatMatches:find", - "path": "v4/threatMatches:find", - "id": "safebrowsing.threatMatches.find", - "request": { - "$ref": "FindThreatMatchesRequest" - }, - "description": "Finds the threat entries that match the Safe Browsing lists.", - "response": { - "$ref": "FindThreatMatchesResponse" - }, - "parameterOrder": [], - "httpMethod": "POST" - } - } - }, - "fullHashes": { - "methods": { - "find": { - "request": { - "$ref": "FindFullHashesRequest" - }, - "description": "Finds the full hashes that match the requested hash prefixes.", - "response": { - "$ref": "FindFullHashesResponse" - }, - "parameterOrder": [], - "httpMethod": "POST", - "parameters": {}, - "flatPath": "v4/fullHashes:find", - "path": "v4/fullHashes:find", - "id": "safebrowsing.fullHashes.find" - } - } - }, - "encodedUpdates": { - "methods": { - "get": { - "parameters": { - "encodedRequest": { - "description": "A serialized FetchThreatListUpdatesRequest proto.", - "format": "byte", - "required": true, - "type": "string", - "location": "path" - }, - "clientId": { - "description": "A client ID that uniquely identifies the client implementation of the Safe\nBrowsing API.", - "type": "string", - "location": "query" - }, - "clientVersion": { - "description": "The version of the client implementation.", - "type": "string", - "location": "query" - } - }, - "flatPath": "v4/encodedUpdates/{encodedRequest}", - "path": "v4/encodedUpdates/{encodedRequest}", - "id": "safebrowsing.encodedUpdates.get", - "description": "", - "response": { - "$ref": "FetchThreatListUpdatesResponse" - }, - "parameterOrder": [ - "encodedRequest" - ], - "httpMethod": "GET" - } - } - }, - "threatListUpdates": { - "methods": { - "fetch": { - "id": "safebrowsing.threatListUpdates.fetch", - "path": "v4/threatListUpdates:fetch", - "request": { - "$ref": "FetchThreatListUpdatesRequest" - }, - "description": "Fetches the most recent threat list updates. A client can request updates\nfor multiple lists at once.", - "httpMethod": "POST", - "parameterOrder": [], - "response": { - "$ref": "FetchThreatListUpdatesResponse" - }, - "parameters": {}, - "flatPath": "v4/threatListUpdates:fetch" - } - } - } + "documentationLink": "https://developers.google.com/safe-browsing/", + "icons": { + "x16": "http://www.google.com/images/icons/product/search-16.gif", + "x32": "http://www.google.com/images/icons/product/search-32.gif" }, + "id": "safebrowsing:v4", + "kind": "discovery#restDescription", + "name": "safebrowsing", + "ownerDomain": "google.com", + "ownerName": "Google", "parameters": { - "key": { - "location": "query", - "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.", - "type": "string" - }, - "access_token": { - "location": "query", - "description": "OAuth access token.", - "type": "string" - }, - "quotaUser": { - "location": "query", - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", - "type": "string" - }, - "pp": { - "description": "Pretty-print response.", - "type": "boolean", - "default": "true", - "location": "query" - }, - "oauth_token": { - "description": "OAuth 2.0 token for the current user.", - "type": "string", - "location": "query" - }, - "bearer_token": { - "location": "query", - "description": "OAuth bearer token.", - "type": "string" - }, - "upload_protocol": { - "location": "query", - "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", - "type": "string" - }, - "prettyPrint": { - "location": "query", - "description": "Returns response with indentations and line breaks.", - "type": "boolean", - "default": "true" - }, - "uploadType": { - "location": "query", - "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", - "type": "string" - }, - "fields": { - "location": "query", - "description": "Selector specifying which fields to include in a partial response.", - "type": "string" - }, "$.xgafv": { "description": "V1 error format.", - "type": "string", + "enum": [ + "1", + "2" + ], "enumDescriptions": [ "v1 error format", "v2 error format" ], "location": "query", - "enum": [ - "1", - "2" - ] + "type": "string" }, - "callback": { + "access_token": { + "description": "OAuth access token.", "location": "query", - "description": "JSONP", "type": "string" }, "alt": { + "default": "json", + "description": "Data format for response.", "enum": [ "json", "media", "proto" ], - "type": "string", "enumDescriptions": [ "Responses with Content-Type of application/json", "Media download with context-dependent Content-Type", "Responses with Content-Type of application/x-protobuf" ], "location": "query", - "description": "Data format for response.", - "default": "json" + "type": "string" + }, + "bearer_token": { + "description": "OAuth bearer token.", + "location": "query", + "type": "string" + }, + "callback": { + "description": "JSONP", + "location": "query", + "type": "string" + }, + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "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.", + "location": "query", + "type": "string" + }, + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "pp": { + "default": "true", + "description": "Pretty-print response.", + "location": "query", + "type": "boolean" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", + "location": "query", + "type": "string" + }, + "uploadType": { + "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", + "location": "query", + "type": "string" + }, + "upload_protocol": { + "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", + "location": "query", + "type": "string" } }, - "schemas": { - "RawHashes": { - "id": "RawHashes", - "description": "The uncompressed threat entries in hash format of a particular prefix length.\nHashes can be anywhere from 4 to 32 bytes in size. A large majority are 4\nbytes, but some hashes are lengthened if they collide with the hash of a\npopular URL.\n\nUsed for sending ThreatEntrySet to clients that do not support compression,\nor when sending non-4-byte hashes to clients that do support compression.", - "type": "object", - "properties": { - "prefixSize": { - "description": "The number of bytes for each prefix encoded below. This field can be\nanywhere from 4 (shortest prefix) to 32 (full SHA256 hash).", - "format": "int32", - "type": "integer" - }, - "rawHashes": { - "description": "The hashes, in binary format, concatenated into one long string. Hashes are\nsorted in lexicographic order. For JSON API users, hashes are\nbase64-encoded.", - "format": "byte", - "type": "string" + "protocol": "rest", + "resources": { + "encodedFullHashes": { + "methods": { + "get": { + "description": "", + "flatPath": "v4/encodedFullHashes/{encodedRequest}", + "httpMethod": "GET", + "id": "safebrowsing.encodedFullHashes.get", + "parameterOrder": [ + "encodedRequest" + ], + "parameters": { + "clientId": { + "description": "A client ID that (hopefully) uniquely identifies the client implementation\nof the Safe Browsing API.", + "location": "query", + "type": "string" + }, + "clientVersion": { + "description": "The version of the client implementation.", + "location": "query", + "type": "string" + }, + "encodedRequest": { + "description": "A serialized FindFullHashesRequest proto.", + "format": "byte", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v4/encodedFullHashes/{encodedRequest}", + "response": { + "$ref": "FindFullHashesResponse" + } } } }, + "encodedUpdates": { + "methods": { + "get": { + "description": "", + "flatPath": "v4/encodedUpdates/{encodedRequest}", + "httpMethod": "GET", + "id": "safebrowsing.encodedUpdates.get", + "parameterOrder": [ + "encodedRequest" + ], + "parameters": { + "clientId": { + "description": "A client ID that uniquely identifies the client implementation of the Safe\nBrowsing API.", + "location": "query", + "type": "string" + }, + "clientVersion": { + "description": "The version of the client implementation.", + "location": "query", + "type": "string" + }, + "encodedRequest": { + "description": "A serialized FetchThreatListUpdatesRequest proto.", + "format": "byte", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v4/encodedUpdates/{encodedRequest}", + "response": { + "$ref": "FetchThreatListUpdatesResponse" + } + } + } + }, + "fullHashes": { + "methods": { + "find": { + "description": "Finds the full hashes that match the requested hash prefixes.", + "flatPath": "v4/fullHashes:find", + "httpMethod": "POST", + "id": "safebrowsing.fullHashes.find", + "parameterOrder": [], + "parameters": {}, + "path": "v4/fullHashes:find", + "request": { + "$ref": "FindFullHashesRequest" + }, + "response": { + "$ref": "FindFullHashesResponse" + } + } + } + }, + "threatHits": { + "methods": { + "create": { + "description": "Reports a Safe Browsing threat list hit to Google. Only projects with\nTRUSTED_REPORTER visibility can use this method.", + "flatPath": "v4/threatHits", + "httpMethod": "POST", + "id": "safebrowsing.threatHits.create", + "parameterOrder": [], + "parameters": {}, + "path": "v4/threatHits", + "request": { + "$ref": "ThreatHit" + }, + "response": { + "$ref": "Empty" + } + } + } + }, + "threatListUpdates": { + "methods": { + "fetch": { + "description": "Fetches the most recent threat list updates. A client can request updates\nfor multiple lists at once.", + "flatPath": "v4/threatListUpdates:fetch", + "httpMethod": "POST", + "id": "safebrowsing.threatListUpdates.fetch", + "parameterOrder": [], + "parameters": {}, + "path": "v4/threatListUpdates:fetch", + "request": { + "$ref": "FetchThreatListUpdatesRequest" + }, + "response": { + "$ref": "FetchThreatListUpdatesResponse" + } + } + } + }, + "threatLists": { + "methods": { + "list": { + "description": "Lists the Safe Browsing threat lists available for download.", + "flatPath": "v4/threatLists", + "httpMethod": "GET", + "id": "safebrowsing.threatLists.list", + "parameterOrder": [], + "parameters": {}, + "path": "v4/threatLists", + "response": { + "$ref": "ListThreatListsResponse" + } + } + } + }, + "threatMatches": { + "methods": { + "find": { + "description": "Finds the threat entries that match the Safe Browsing lists.", + "flatPath": "v4/threatMatches:find", + "httpMethod": "POST", + "id": "safebrowsing.threatMatches.find", + "parameterOrder": [], + "parameters": {}, + "path": "v4/threatMatches:find", + "request": { + "$ref": "FindThreatMatchesRequest" + }, + "response": { + "$ref": "FindThreatMatchesResponse" + } + } + } + } + }, + "revision": "20180215", + "rootUrl": "https://safebrowsing.googleapis.com/", + "schemas": { + "Checksum": { + "description": "The expected state of a client's local database.", + "id": "Checksum", + "properties": { + "sha256": { + "description": "The SHA256 hash of the client state; that is, of the sorted list of all\nhashes present in the database.", + "format": "byte", + "type": "string" + } + }, + "type": "object" + }, + "ClientInfo": { + "description": "The client metadata associated with Safe Browsing API requests.", + "id": "ClientInfo", + "properties": { + "clientId": { + "description": "A client ID that (hopefully) uniquely identifies the client implementation\nof the Safe Browsing API.", + "type": "string" + }, + "clientVersion": { + "description": "The version of the client implementation.", + "type": "string" + } + }, + "type": "object" + }, + "Constraints": { + "description": "The constraints for this update.", + "id": "Constraints", + "properties": { + "deviceLocation": { + "description": "A client's physical location, expressed as a ISO 31166-1 alpha-2\nregion code.", + "type": "string" + }, + "language": { + "description": "Requests the lists for a specific language. Expects ISO 639 alpha-2\nformat.", + "type": "string" + }, + "maxDatabaseEntries": { + "description": "Sets the maximum number of entries that the client is willing to have\nin the local database. This should be a power of 2 between 2**10 and\n2**20. If zero, no database size limit is set.", + "format": "int32", + "type": "integer" + }, + "maxUpdateEntries": { + "description": "The maximum size in number of entries. The update will not contain more\nentries than this value. This should be a power of 2 between 2**10 and\n2**20. If zero, no update size limit is set.", + "format": "int32", + "type": "integer" + }, + "region": { + "description": "Requests the list for a specific geographic location. If not set the\nserver may pick that value based on the user's IP address. Expects ISO\n3166-1 alpha-2 format.", + "type": "string" + }, + "supportedCompressions": { + "description": "The compression types supported by the client.", + "enumDescriptions": [ + "Unknown.", + "Raw, uncompressed data.", + "Rice-Golomb encoded data." + ], + "items": { + "enum": [ + "COMPRESSION_TYPE_UNSPECIFIED", + "RAW", + "RICE" + ], + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, "Empty": { - "id": "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 `{}`.", - "type": "object", - "properties": {} + "id": "Empty", + "properties": {}, + "type": "object" + }, + "FetchThreatListUpdatesRequest": { + "description": "Describes a Safe Browsing API update request. Clients can request updates for\nmultiple lists in a single request.\nNOTE: Field index 2 is unused.\nNEXT: 5", + "id": "FetchThreatListUpdatesRequest", + "properties": { + "client": { + "$ref": "ClientInfo", + "description": "The client metadata." + }, + "listUpdateRequests": { + "description": "The requested threat list updates.", + "items": { + "$ref": "ListUpdateRequest" + }, + "type": "array" + } + }, + "type": "object" + }, + "FetchThreatListUpdatesResponse": { + "id": "FetchThreatListUpdatesResponse", + "properties": { + "listUpdateResponses": { + "description": "The list updates requested by the clients.", + "items": { + "$ref": "ListUpdateResponse" + }, + "type": "array" + }, + "minimumWaitDuration": { + "description": "The minimum duration the client must wait before issuing any update\nrequest. If this field is not set clients may update as soon as they want.", + "format": "google-duration", + "type": "string" + } + }, + "type": "object" }, "FindFullHashesRequest": { - "id": "FindFullHashesRequest", "description": "Request to return full hashes matched by the provided hash prefixes.", - "type": "object", + "id": "FindFullHashesRequest", "properties": { "apiClient": { - "description": "Client metadata associated with callers of higher-level APIs built on top\nof the client's implementation.", - "$ref": "ClientInfo" + "$ref": "ClientInfo", + "description": "Client metadata associated with callers of higher-level APIs built on top\nof the client's implementation." + }, + "client": { + "$ref": "ClientInfo", + "description": "The client metadata." }, "clientStates": { "description": "The current client states for each of the client's local threat lists.", - "type": "array", "items": { "format": "byte", "type": "string" - } + }, + "type": "array" }, + "threatInfo": { + "$ref": "ThreatInfo", + "description": "The lists and hashes to be checked." + } + }, + "type": "object" + }, + "FindFullHashesResponse": { + "id": "FindFullHashesResponse", + "properties": { + "matches": { + "description": "The full hashes that matched the requested prefixes.", + "items": { + "$ref": "ThreatMatch" + }, + "type": "array" + }, + "minimumWaitDuration": { + "description": "The minimum duration the client must wait before issuing any find hashes\nrequest. If this field is not set, clients can issue a request as soon as\nthey want.", + "format": "google-duration", + "type": "string" + }, + "negativeCacheDuration": { + "description": "For requested entities that did not match the threat list, how long to\ncache the response.", + "format": "google-duration", + "type": "string" + } + }, + "type": "object" + }, + "FindThreatMatchesRequest": { + "description": "Request to check entries against lists.", + "id": "FindThreatMatchesRequest", + "properties": { "client": { "$ref": "ClientInfo", "description": "The client metadata." }, "threatInfo": { "$ref": "ThreatInfo", - "description": "The lists and hashes to be checked." + "description": "The lists and entries to be checked for matches." } - } + }, + "type": "object" }, - "FetchThreatListUpdatesRequest": { - "id": "FetchThreatListUpdatesRequest", - "description": "Describes a Safe Browsing API update request. Clients can request updates for\nmultiple lists in a single request.\nNOTE: Field index 2 is unused.\nNEXT: 5", - "type": "object", + "FindThreatMatchesResponse": { + "id": "FindThreatMatchesResponse", "properties": { - "listUpdateRequests": { - "description": "The requested threat list updates.", - "type": "array", + "matches": { + "description": "The threat list matches.", "items": { - "$ref": "ListUpdateRequest" - } - }, - "client": { - "description": "The client metadata.", - "$ref": "ClientInfo" + "$ref": "ThreatMatch" + }, + "type": "array" } - } + }, + "type": "object" }, - "ListUpdateResponse": { - "id": "ListUpdateResponse", - "description": "An update to an individual list.", - "type": "object", + "ListThreatListsResponse": { + "id": "ListThreatListsResponse", "properties": { - "threatEntryType": { - "enumDescriptions": [ - "Unspecified.", - "A URL.", - "An executable program.", - "An IP range.", - "Chrome extension.", - "Filename.", - "CERT" + "threatLists": { + "description": "The lists available for download by the client.", + "items": { + "$ref": "ThreatListDescriptor" + }, + "type": "array" + } + }, + "type": "object" + }, + "ListUpdateRequest": { + "description": "A single list update request.", + "id": "ListUpdateRequest", + "properties": { + "constraints": { + "$ref": "Constraints", + "description": "The constraints associated with this request." + }, + "platformType": { + "description": "The type of platform at risk by entries present in the list.", + "enum": [ + "PLATFORM_TYPE_UNSPECIFIED", + "WINDOWS", + "LINUX", + "ANDROID", + "OSX", + "IOS", + "ANY_PLATFORM", + "ALL_PLATFORMS", + "CHROME" ], + "enumDescriptions": [ + "Unknown platform.", + "Threat posed to Windows.", + "Threat posed to Linux.", + "Threat posed to Android.", + "Threat posed to OS X.", + "Threat posed to iOS.", + "Threat posed to at least one of the defined platforms.", + "Threat posed to all defined platforms.", + "Threat posed to Chrome." + ], + "type": "string" + }, + "state": { + "description": "The current state of the client for the requested list (the encrypted\nclient state that was received from the last successful list update).", + "format": "byte", + "type": "string" + }, + "threatEntryType": { + "description": "The types of entries present in the list.", "enum": [ "THREAT_ENTRY_TYPE_UNSPECIFIED", "URL", @@ -352,51 +528,19 @@ "FILENAME", "CERT" ], - "description": "The format of the threats.", + "enumDescriptions": [ + "Unspecified.", + "A URL.", + "An executable program.", + "An IP range.", + "Chrome extension.", + "Filename.", + "CERT" + ], "type": "string" }, - "additions": { - "description": "A set of entries to add to a local threat type's list. Repeated to allow\nfor a combination of compressed and raw data to be sent in a single\nresponse.", - "type": "array", - "items": { - "$ref": "ThreatEntrySet" - } - }, - "checksum": { - "description": "The expected SHA256 hash of the client state; that is, of the sorted list\nof all hashes present in the database after applying the provided update.\nIf the client state doesn't match the expected state, the client must\ndisregard this update and retry later.", - "$ref": "Checksum" - }, - "responseType": { - "description": "The type of response. This may indicate that an action is required by the\nclient when the response is received.", - "type": "string", - "enumDescriptions": [ - "Unknown.", - "Partial updates are applied to the client's existing local database.", - "Full updates replace the client's entire local database. This means\nthat either the client was seriously out-of-date or the client is\nbelieved to be corrupt." - ], - "enum": [ - "RESPONSE_TYPE_UNSPECIFIED", - "PARTIAL_UPDATE", - "FULL_UPDATE" - ] - }, "threatType": { - "enumDescriptions": [ - "Unknown.", - "Malware threat type.", - "Social engineering threat type.", - "Unwanted software threat type.", - "Potentially harmful application threat type.", - "Social engineering threat type for internal use.", - "API abuse threat type.", - "Malicious binary threat type.", - "Client side detection whitelist threat type.", - "Client side download detection whitelist threat type.", - "Client incident threat type.", - "Whitelist used when detecting client incident threats.\nThis enum was never launched and should be re-used for the next list.", - "List used for offline APK checks in PAM.", - "Patterns to be used for activating the subresource filter. Interstitial\nwill not be shown for patterns from this list." - ], + "description": "The type of threat posed by entries present in the list.", "enum": [ "THREAT_TYPE_UNSPECIFIED", "MALWARE", @@ -413,15 +557,41 @@ "APK_MALWARE_OFFLINE", "SUBRESOURCE_FILTER" ], - "description": "The threat type for which data is returned.", + "enumDescriptions": [ + "Unknown.", + "Malware threat type.", + "Social engineering threat type.", + "Unwanted software threat type.", + "Potentially harmful application threat type.", + "Social engineering threat type for internal use.", + "API abuse threat type.", + "Malicious binary threat type.", + "Client side detection whitelist threat type.", + "Client side download detection whitelist threat type.", + "Client incident threat type.", + "Whitelist used when detecting client incident threats.\nThis enum was never launched and should be re-used for the next list.", + "List used for offline APK checks in PAM.", + "Patterns to be used for activating the subresource filter. Interstitial\nwill not be shown for patterns from this list." + ], "type": "string" - }, - "removals": { - "description": "A set of entries to remove from a local threat type's list. In practice,\nthis field is empty or contains exactly one ThreatEntrySet.", - "type": "array", + } + }, + "type": "object" + }, + "ListUpdateResponse": { + "description": "An update to an individual list.", + "id": "ListUpdateResponse", + "properties": { + "additions": { + "description": "A set of entries to add to a local threat type's list. Repeated to allow\nfor a combination of compressed and raw data to be sent in a single\nresponse.", "items": { "$ref": "ThreatEntrySet" - } + }, + "type": "array" + }, + "checksum": { + "$ref": "Checksum", + "description": "The expected SHA256 hash of the client state; that is, of the sorted list\nof all hashes present in the database after applying the provided update.\nIf the client state doesn't match the expected state, the client must\ndisregard this update and retry later." }, "newClientState": { "description": "The new client state, in encrypted format. Opaque to clients.", @@ -429,44 +599,18 @@ "type": "string" }, "platformType": { - "enumDescriptions": [ - "Unknown platform.", - "Threat posed to Windows.", - "Threat posed to Linux.", - "Threat posed to Android.", - "Threat posed to OS X.", - "Threat posed to iOS.", - "Threat posed to at least one of the defined platforms.", - "Threat posed to all defined platforms.", - "Threat posed to Chrome." - ], - "enum": [ - "PLATFORM_TYPE_UNSPECIFIED", - "WINDOWS", - "LINUX", - "ANDROID", - "OSX", - "IOS", - "ANY_PLATFORM", - "ALL_PLATFORMS", - "CHROME" - ], "description": "The platform type for which data is returned.", - "type": "string" - } - } - }, - "ThreatMatch": { - "description": "A match when checking a threat entry in the Safe Browsing threat lists.", - "type": "object", - "properties": { - "threat": { - "$ref": "ThreatEntry", - "description": "The threat matching this threat." - }, - "platformType": { - "description": "The platform type matching this threat.", - "type": "string", + "enum": [ + "PLATFORM_TYPE_UNSPECIFIED", + "WINDOWS", + "LINUX", + "ANDROID", + "OSX", + "IOS", + "ANY_PLATFORM", + "ALL_PLATFORMS", + "CHROME" + ], "enumDescriptions": [ "Unknown platform.", "Threat posed to Windows.", @@ -478,21 +622,40 @@ "Threat posed to all defined platforms.", "Threat posed to Chrome." ], + "type": "string" + }, + "removals": { + "description": "A set of entries to remove from a local threat type's list. In practice,\nthis field is empty or contains exactly one ThreatEntrySet.", + "items": { + "$ref": "ThreatEntrySet" + }, + "type": "array" + }, + "responseType": { + "description": "The type of response. This may indicate that an action is required by the\nclient when the response is received.", "enum": [ - "PLATFORM_TYPE_UNSPECIFIED", - "WINDOWS", - "LINUX", - "ANDROID", - "OSX", - "IOS", - "ANY_PLATFORM", - "ALL_PLATFORMS", - "CHROME" - ] + "RESPONSE_TYPE_UNSPECIFIED", + "PARTIAL_UPDATE", + "FULL_UPDATE" + ], + "enumDescriptions": [ + "Unknown.", + "Partial updates are applied to the client's existing local database.", + "Full updates replace the client's entire local database. This means\nthat either the client was seriously out-of-date or the client is\nbelieved to be corrupt." + ], + "type": "string" }, "threatEntryType": { - "description": "The threat entry type matching this threat.", - "type": "string", + "description": "The format of the threats.", + "enum": [ + "THREAT_ENTRY_TYPE_UNSPECIFIED", + "URL", + "EXECUTABLE", + "IP_RANGE", + "CHROME_EXTENSION", + "FILENAME", + "CERT" + ], "enumDescriptions": [ "Unspecified.", "A URL.", @@ -502,38 +665,10 @@ "Filename.", "CERT" ], - "enum": [ - "THREAT_ENTRY_TYPE_UNSPECIFIED", - "URL", - "EXECUTABLE", - "IP_RANGE", - "CHROME_EXTENSION", - "FILENAME", - "CERT" - ] - }, - "cacheDuration": { - "description": "The cache lifetime for the returned match. Clients must not cache this\nresponse for more than this duration to avoid false positives.", - "format": "google-duration", "type": "string" }, "threatType": { - "enumDescriptions": [ - "Unknown.", - "Malware threat type.", - "Social engineering threat type.", - "Unwanted software threat type.", - "Potentially harmful application threat type.", - "Social engineering threat type for internal use.", - "API abuse threat type.", - "Malicious binary threat type.", - "Client side detection whitelist threat type.", - "Client side download detection whitelist threat type.", - "Client incident threat type.", - "Whitelist used when detecting client incident threats.\nThis enum was never launched and should be re-used for the next list.", - "List used for offline APK checks in PAM.", - "Patterns to be used for activating the subresource filter. Interstitial\nwill not be shown for patterns from this list." - ], + "description": "The threat type for which data is returned.", "enum": [ "THREAT_TYPE_UNSPECIFIED", "MALWARE", @@ -550,41 +685,30 @@ "APK_MALWARE_OFFLINE", "SUBRESOURCE_FILTER" ], - "description": "The threat type matching this threat.", + "enumDescriptions": [ + "Unknown.", + "Malware threat type.", + "Social engineering threat type.", + "Unwanted software threat type.", + "Potentially harmful application threat type.", + "Social engineering threat type for internal use.", + "API abuse threat type.", + "Malicious binary threat type.", + "Client side detection whitelist threat type.", + "Client side download detection whitelist threat type.", + "Client incident threat type.", + "Whitelist used when detecting client incident threats.\nThis enum was never launched and should be re-used for the next list.", + "List used for offline APK checks in PAM.", + "Patterns to be used for activating the subresource filter. Interstitial\nwill not be shown for patterns from this list." + ], "type": "string" - }, - "threatEntryMetadata": { - "$ref": "ThreatEntryMetadata", - "description": "Optional metadata associated with this threat." } }, - "id": "ThreatMatch" - }, - "ThreatEntry": { - "id": "ThreatEntry", - "description": "An individual threat; for example, a malicious URL or its hash\nrepresentation. Only one of these fields should be set.", - "type": "object", - "properties": { - "url": { - "description": "A URL.", - "type": "string" - }, - "digest": { - "description": "The digest of an executable in SHA256 format. The API supports both\nbinary and hex digests. For JSON requests, digests are base64-encoded.", - "format": "byte", - "type": "string" - }, - "hash": { - "description": "A hash prefix, consisting of the most significant 4-32 bytes of a SHA256\nhash. This field is in binary format. For JSON requests, hashes are\nbase64-encoded.", - "format": "byte", - "type": "string" - } - } + "type": "object" }, "MetadataEntry": { - "id": "MetadataEntry", "description": "A single metadata entry.", - "type": "object", + "id": "MetadataEntry", "properties": { "key": { "description": "The metadata entry key. For JSON requests, the key is base64-encoded.", @@ -596,475 +720,153 @@ "format": "byte", "type": "string" } - } + }, + "type": "object" }, - "FindThreatMatchesRequest": { - "id": "FindThreatMatchesRequest", - "description": "Request to check entries against lists.", - "type": "object", + "RawHashes": { + "description": "The uncompressed threat entries in hash format of a particular prefix length.\nHashes can be anywhere from 4 to 32 bytes in size. A large majority are 4\nbytes, but some hashes are lengthened if they collide with the hash of a\npopular URL.\n\nUsed for sending ThreatEntrySet to clients that do not support compression,\nor when sending non-4-byte hashes to clients that do support compression.", + "id": "RawHashes", "properties": { - "client": { - "$ref": "ClientInfo", - "description": "The client metadata." + "prefixSize": { + "description": "The number of bytes for each prefix encoded below. This field can be\nanywhere from 4 (shortest prefix) to 32 (full SHA256 hash).", + "format": "int32", + "type": "integer" }, - "threatInfo": { - "$ref": "ThreatInfo", - "description": "The lists and entries to be checked for matches." + "rawHashes": { + "description": "The hashes, in binary format, concatenated into one long string. Hashes are\nsorted in lexicographic order. For JSON API users, hashes are\nbase64-encoded.", + "format": "byte", + "type": "string" } - } + }, + "type": "object" }, "RawIndices": { "description": "A set of raw indices to remove from a local list.", - "type": "object", + "id": "RawIndices", "properties": { "indices": { "description": "The indices to remove from a lexicographically-sorted local list.", - "type": "array", "items": { "format": "int32", "type": "integer" - } - } - }, - "id": "RawIndices" - }, - "ThreatSource": { - "id": "ThreatSource", - "description": "A single resource related to a threat hit.", - "type": "object", - "properties": { - "url": { - "description": "The URL of the resource.", - "type": "string" - }, - "remoteIp": { - "description": "The remote IP of the resource in ASCII format. Either IPv4 or IPv6.", - "type": "string" - }, - "referrer": { - "description": "Referrer of the resource. Only set if the referrer is available.", - "type": "string" - }, - "type": { - "description": "The type of source reported.", - "type": "string", - "enumDescriptions": [ - "Unknown.", - "The URL that matched the threat list (for which GetFullHash returned a\nvalid hash).", - "The final top-level URL of the tab that the client was browsing when the\nmatch occurred.", - "A redirect URL that was fetched before hitting the final TAB_URL.", - "A resource loaded within the final TAB_URL." - ], - "enum": [ - "THREAT_SOURCE_TYPE_UNSPECIFIED", - "MATCHING_URL", - "TAB_URL", - "TAB_REDIRECT", - "TAB_RESOURCE" - ] - } - } - }, - "UserInfo": { - "description": "Details about the user that encountered the threat.", - "type": "object", - "properties": { - "userId": { - "description": "Unique user identifier defined by the client.", - "format": "byte", - "type": "string" - }, - "regionCode": { - "description": "The UN M.49 region code associated with the user's location.", - "type": "string" - } - }, - "id": "UserInfo" - }, - "FetchThreatListUpdatesResponse": { - "type": "object", - "properties": { - "listUpdateResponses": { - "description": "The list updates requested by the clients.", - "type": "array", - "items": { - "$ref": "ListUpdateResponse" - } - }, - "minimumWaitDuration": { - "description": "The minimum duration the client must wait before issuing any update\nrequest. If this field is not set clients may update as soon as they want.", - "format": "google-duration", - "type": "string" - } - }, - "id": "FetchThreatListUpdatesResponse" - }, - "Checksum": { - "description": "The expected state of a client's local database.", - "type": "object", - "properties": { - "sha256": { - "description": "The SHA256 hash of the client state; that is, of the sorted list of all\nhashes present in the database.", - "format": "byte", - "type": "string" - } - }, - "id": "Checksum" - }, - "FindFullHashesResponse": { - "id": "FindFullHashesResponse", - "type": "object", - "properties": { - "negativeCacheDuration": { - "description": "For requested entities that did not match the threat list, how long to\ncache the response.", - "format": "google-duration", - "type": "string" - }, - "minimumWaitDuration": { - "description": "The minimum duration the client must wait before issuing any find hashes\nrequest. If this field is not set, clients can issue a request as soon as\nthey want.", - "format": "google-duration", - "type": "string" - }, - "matches": { - "description": "The full hashes that matched the requested prefixes.", - "type": "array", - "items": { - "$ref": "ThreatMatch" - } - } - } - }, - "ThreatHit": { - "type": "object", - "properties": { - "threatType": { - "description": "The threat type reported.", - "type": "string", - "enumDescriptions": [ - "Unknown.", - "Malware threat type.", - "Social engineering threat type.", - "Unwanted software threat type.", - "Potentially harmful application threat type.", - "Social engineering threat type for internal use.", - "API abuse threat type.", - "Malicious binary threat type.", - "Client side detection whitelist threat type.", - "Client side download detection whitelist threat type.", - "Client incident threat type.", - "Whitelist used when detecting client incident threats.\nThis enum was never launched and should be re-used for the next list.", - "List used for offline APK checks in PAM.", - "Patterns to be used for activating the subresource filter. Interstitial\nwill not be shown for patterns from this list." - ], - "enum": [ - "THREAT_TYPE_UNSPECIFIED", - "MALWARE", - "SOCIAL_ENGINEERING", - "UNWANTED_SOFTWARE", - "POTENTIALLY_HARMFUL_APPLICATION", - "SOCIAL_ENGINEERING_INTERNAL", - "API_ABUSE", - "MALICIOUS_BINARY", - "CSD_WHITELIST", - "CSD_DOWNLOAD_WHITELIST", - "CLIENT_INCIDENT", - "CLIENT_INCIDENT_WHITELIST", - "APK_MALWARE_OFFLINE", - "SUBRESOURCE_FILTER" - ] - }, - "resources": { - "description": "The resources related to the threat hit.", - "type": "array", - "items": { - "$ref": "ThreatSource" - } - }, - "entry": { - "description": "The threat entry responsible for the hit. Full hash should be reported for\nhash-based hits.", - "$ref": "ThreatEntry" - }, - "platformType": { - "description": "The platform type reported.", - "type": "string", - "enumDescriptions": [ - "Unknown platform.", - "Threat posed to Windows.", - "Threat posed to Linux.", - "Threat posed to Android.", - "Threat posed to OS X.", - "Threat posed to iOS.", - "Threat posed to at least one of the defined platforms.", - "Threat posed to all defined platforms.", - "Threat posed to Chrome." - ], - "enum": [ - "PLATFORM_TYPE_UNSPECIFIED", - "WINDOWS", - "LINUX", - "ANDROID", - "OSX", - "IOS", - "ANY_PLATFORM", - "ALL_PLATFORMS", - "CHROME" - ] - }, - "userInfo": { - "description": "Details about the user that encountered the threat.", - "$ref": "UserInfo" - }, - "clientInfo": { - "$ref": "ClientInfo", - "description": "Client-reported identification." - } - }, - "id": "ThreatHit" - }, - "ThreatEntrySet": { - "description": "A set of threats that should be added or removed from a client's local\ndatabase.", - "type": "object", - "properties": { - "compressionType": { - "enumDescriptions": [ - "Unknown.", - "Raw, uncompressed data.", - "Rice-Golomb encoded data." - ], - "enum": [ - "COMPRESSION_TYPE_UNSPECIFIED", - "RAW", - "RICE" - ], - "description": "The compression type for the entries in this set.", - "type": "string" - }, - "riceIndices": { - "description": "The encoded local, lexicographically-sorted list indices, using a\nGolomb-Rice encoding. Used for sending compressed removal indices. The\nremoval indices (uint32) are sorted in ascending order, then delta encoded\nand stored as encoded_data.", - "$ref": "RiceDeltaEncoding" - }, - "rawIndices": { - "description": "The raw removal indices for a local list.", - "$ref": "RawIndices" - }, - "rawHashes": { - "description": "The raw SHA256-formatted entries.", - "$ref": "RawHashes" - }, - "riceHashes": { - "description": "The encoded 4-byte prefixes of SHA256-formatted entries, using a\nGolomb-Rice encoding. The hashes are converted to uint32, sorted in\nascending order, then delta encoded and stored as encoded_data.", - "$ref": "RiceDeltaEncoding" - } - }, - "id": "ThreatEntrySet" - }, - "ListUpdateRequest": { - "description": "A single list update request.", - "type": "object", - "properties": { - "platformType": { - "enumDescriptions": [ - "Unknown platform.", - "Threat posed to Windows.", - "Threat posed to Linux.", - "Threat posed to Android.", - "Threat posed to OS X.", - "Threat posed to iOS.", - "Threat posed to at least one of the defined platforms.", - "Threat posed to all defined platforms.", - "Threat posed to Chrome." - ], - "enum": [ - "PLATFORM_TYPE_UNSPECIFIED", - "WINDOWS", - "LINUX", - "ANDROID", - "OSX", - "IOS", - "ANY_PLATFORM", - "ALL_PLATFORMS", - "CHROME" - ], - "description": "The type of platform at risk by entries present in the list.", - "type": "string" - }, - "threatType": { - "description": "The type of threat posed by entries present in the list.", - "type": "string", - "enumDescriptions": [ - "Unknown.", - "Malware threat type.", - "Social engineering threat type.", - "Unwanted software threat type.", - "Potentially harmful application threat type.", - "Social engineering threat type for internal use.", - "API abuse threat type.", - "Malicious binary threat type.", - "Client side detection whitelist threat type.", - "Client side download detection whitelist threat type.", - "Client incident threat type.", - "Whitelist used when detecting client incident threats.\nThis enum was never launched and should be re-used for the next list.", - "List used for offline APK checks in PAM.", - "Patterns to be used for activating the subresource filter. Interstitial\nwill not be shown for patterns from this list." - ], - "enum": [ - "THREAT_TYPE_UNSPECIFIED", - "MALWARE", - "SOCIAL_ENGINEERING", - "UNWANTED_SOFTWARE", - "POTENTIALLY_HARMFUL_APPLICATION", - "SOCIAL_ENGINEERING_INTERNAL", - "API_ABUSE", - "MALICIOUS_BINARY", - "CSD_WHITELIST", - "CSD_DOWNLOAD_WHITELIST", - "CLIENT_INCIDENT", - "CLIENT_INCIDENT_WHITELIST", - "APK_MALWARE_OFFLINE", - "SUBRESOURCE_FILTER" - ] - }, - "constraints": { - "description": "The constraints associated with this request.", - "$ref": "Constraints" - }, - "threatEntryType": { - "enumDescriptions": [ - "Unspecified.", - "A URL.", - "An executable program.", - "An IP range.", - "Chrome extension.", - "Filename.", - "CERT" - ], - "enum": [ - "THREAT_ENTRY_TYPE_UNSPECIFIED", - "URL", - "EXECUTABLE", - "IP_RANGE", - "CHROME_EXTENSION", - "FILENAME", - "CERT" - ], - "description": "The types of entries present in the list.", - "type": "string" - }, - "state": { - "description": "The current state of the client for the requested list (the encrypted\nclient state that was received from the last successful list update).", - "format": "byte", - "type": "string" - } - }, - "id": "ListUpdateRequest" - }, - "Constraints": { - "id": "Constraints", - "description": "The constraints for this update.", - "type": "object", - "properties": { - "maxUpdateEntries": { - "description": "The maximum size in number of entries. The update will not contain more\nentries than this value. This should be a power of 2 between 2**10 and\n2**20. If zero, no update size limit is set.", - "format": "int32", - "type": "integer" - }, - "maxDatabaseEntries": { - "description": "Sets the maximum number of entries that the client is willing to have\nin the local database. This should be a power of 2 between 2**10 and\n2**20. If zero, no database size limit is set.", - "format": "int32", - "type": "integer" - }, - "region": { - "description": "Requests the list for a specific geographic location. If not set the\nserver may pick that value based on the user's IP address. Expects ISO\n3166-1 alpha-2 format.", - "type": "string" - }, - "supportedCompressions": { - "description": "The compression types supported by the client.", - "type": "array", - "items": { - "enum": [ - "COMPRESSION_TYPE_UNSPECIFIED", - "RAW", - "RICE" - ], - "type": "string" }, - "enumDescriptions": [ - "Unknown.", - "Raw, uncompressed data.", - "Rice-Golomb encoded data." - ] + "type": "array" } - } - }, - "ListThreatListsResponse": { - "id": "ListThreatListsResponse", - "type": "object", - "properties": { - "threatLists": { - "description": "The lists available for download by the client.", - "type": "array", - "items": { - "$ref": "ThreatListDescriptor" - } - } - } + }, + "type": "object" }, "RiceDeltaEncoding": { - "id": "RiceDeltaEncoding", "description": "The Rice-Golomb encoded data. Used for sending compressed 4-byte hashes or\ncompressed removal indices.", - "type": "object", + "id": "RiceDeltaEncoding", "properties": { - "riceParameter": { - "description": "The Golomb-Rice parameter, which is a number between 2 and 28. This field\nis missing (that is, zero) if `num_entries` is zero.", - "format": "int32", - "type": "integer" - }, - "firstValue": { - "description": "The offset of the first entry in the encoded data, or, if only a single\ninteger was encoded, that single integer's value.", - "format": "int64", - "type": "string" - }, "encodedData": { "description": "The encoded deltas that are encoded using the Golomb-Rice coder.", "format": "byte", "type": "string" }, + "firstValue": { + "description": "The offset of the first entry in the encoded data, or, if only a single\ninteger was encoded, that single integer's value. If the field is empty or\nmissing, assume zero.", + "format": "int64", + "type": "string" + }, "numEntries": { "description": "The number of entries that are delta encoded in the encoded data. If only a\nsingle integer was encoded, this will be zero and the single value will be\nstored in `first_value`.", "format": "int32", "type": "integer" - } - } - }, - "FindThreatMatchesResponse": { - "type": "object", - "properties": { - "matches": { - "description": "The threat list matches.", - "type": "array", - "items": { - "$ref": "ThreatMatch" - } + }, + "riceParameter": { + "description": "The Golomb-Rice parameter, which is a number between 2 and 28. This field\nis missing (that is, zero) if `num_entries` is zero.", + "format": "int32", + "type": "integer" } }, - "id": "FindThreatMatchesResponse" + "type": "object" }, - "ThreatListDescriptor": { - "description": "Describes an individual threat list. A list is defined by three parameters:\nthe type of threat posed, the type of platform targeted by the threat, and\nthe type of entries in the list.", - "type": "object", + "ThreatEntry": { + "description": "An individual threat; for example, a malicious URL or its hash\nrepresentation. Only one of these fields should be set.", + "id": "ThreatEntry", "properties": { - "platformType": { - "enumDescriptions": [ - "Unknown platform.", - "Threat posed to Windows.", - "Threat posed to Linux.", - "Threat posed to Android.", - "Threat posed to OS X.", - "Threat posed to iOS.", - "Threat posed to at least one of the defined platforms.", - "Threat posed to all defined platforms.", - "Threat posed to Chrome." + "digest": { + "description": "The digest of an executable in SHA256 format. The API supports both\nbinary and hex digests. For JSON requests, digests are base64-encoded.", + "format": "byte", + "type": "string" + }, + "hash": { + "description": "A hash prefix, consisting of the most significant 4-32 bytes of a SHA256\nhash. This field is in binary format. For JSON requests, hashes are\nbase64-encoded.", + "format": "byte", + "type": "string" + }, + "url": { + "description": "A URL.", + "type": "string" + } + }, + "type": "object" + }, + "ThreatEntryMetadata": { + "description": "The metadata associated with a specific threat entry. The client is expected\nto know the metadata key/value pairs associated with each threat type.", + "id": "ThreatEntryMetadata", + "properties": { + "entries": { + "description": "The metadata entries.", + "items": { + "$ref": "MetadataEntry" + }, + "type": "array" + } + }, + "type": "object" + }, + "ThreatEntrySet": { + "description": "A set of threats that should be added or removed from a client's local\ndatabase.", + "id": "ThreatEntrySet", + "properties": { + "compressionType": { + "description": "The compression type for the entries in this set.", + "enum": [ + "COMPRESSION_TYPE_UNSPECIFIED", + "RAW", + "RICE" ], + "enumDescriptions": [ + "Unknown.", + "Raw, uncompressed data.", + "Rice-Golomb encoded data." + ], + "type": "string" + }, + "rawHashes": { + "$ref": "RawHashes", + "description": "The raw SHA256-formatted entries." + }, + "rawIndices": { + "$ref": "RawIndices", + "description": "The raw removal indices for a local list." + }, + "riceHashes": { + "$ref": "RiceDeltaEncoding", + "description": "The encoded 4-byte prefixes of SHA256-formatted entries, using a\nGolomb-Rice encoding. The hashes are converted to uint32, sorted in\nascending order, then delta encoded and stored as encoded_data." + }, + "riceIndices": { + "$ref": "RiceDeltaEncoding", + "description": "The encoded local, lexicographically-sorted list indices, using a\nGolomb-Rice encoding. Used for sending compressed removal indices. The\nremoval indices (uint32) are sorted in ascending order, then delta encoded\nand stored as encoded_data." + } + }, + "type": "object" + }, + "ThreatHit": { + "id": "ThreatHit", + "properties": { + "clientInfo": { + "$ref": "ClientInfo", + "description": "Client-reported identification." + }, + "entry": { + "$ref": "ThreatEntry", + "description": "The threat entry responsible for the hit. Full hash should be reported for\nhash-based hits." + }, + "platformType": { + "description": "The platform type reported.", "enum": [ "PLATFORM_TYPE_UNSPECIFIED", "WINDOWS", @@ -1076,12 +878,44 @@ "ALL_PLATFORMS", "CHROME" ], - "description": "The platform type targeted by the list's entries.", + "enumDescriptions": [ + "Unknown platform.", + "Threat posed to Windows.", + "Threat posed to Linux.", + "Threat posed to Android.", + "Threat posed to OS X.", + "Threat posed to iOS.", + "Threat posed to at least one of the defined platforms.", + "Threat posed to all defined platforms.", + "Threat posed to Chrome." + ], "type": "string" }, + "resources": { + "description": "The resources related to the threat hit.", + "items": { + "$ref": "ThreatSource" + }, + "type": "array" + }, "threatType": { - "description": "The threat type posed by the list's entries.", - "type": "string", + "description": "The threat type reported.", + "enum": [ + "THREAT_TYPE_UNSPECIFIED", + "MALWARE", + "SOCIAL_ENGINEERING", + "UNWANTED_SOFTWARE", + "POTENTIALLY_HARMFUL_APPLICATION", + "SOCIAL_ENGINEERING_INTERNAL", + "API_ABUSE", + "MALICIOUS_BINARY", + "CSD_WHITELIST", + "CSD_DOWNLOAD_WHITELIST", + "CLIENT_INCIDENT", + "CLIENT_INCIDENT_WHITELIST", + "APK_MALWARE_OFFLINE", + "SUBRESOURCE_FILTER" + ], "enumDescriptions": [ "Unknown.", "Malware threat type.", @@ -1098,68 +932,57 @@ "List used for offline APK checks in PAM.", "Patterns to be used for activating the subresource filter. Interstitial\nwill not be shown for patterns from this list." ], - "enum": [ - "THREAT_TYPE_UNSPECIFIED", - "MALWARE", - "SOCIAL_ENGINEERING", - "UNWANTED_SOFTWARE", - "POTENTIALLY_HARMFUL_APPLICATION", - "SOCIAL_ENGINEERING_INTERNAL", - "API_ABUSE", - "MALICIOUS_BINARY", - "CSD_WHITELIST", - "CSD_DOWNLOAD_WHITELIST", - "CLIENT_INCIDENT", - "CLIENT_INCIDENT_WHITELIST", - "APK_MALWARE_OFFLINE", - "SUBRESOURCE_FILTER" - ] - }, - "threatEntryType": { - "enumDescriptions": [ - "Unspecified.", - "A URL.", - "An executable program.", - "An IP range.", - "Chrome extension.", - "Filename.", - "CERT" - ], - "enum": [ - "THREAT_ENTRY_TYPE_UNSPECIFIED", - "URL", - "EXECUTABLE", - "IP_RANGE", - "CHROME_EXTENSION", - "FILENAME", - "CERT" - ], - "description": "The entry types contained in the list.", - "type": "string" - } - }, - "id": "ThreatListDescriptor" - }, - "ClientInfo": { - "description": "The client metadata associated with Safe Browsing API requests.", - "type": "object", - "properties": { - "clientId": { - "description": "A client ID that (hopefully) uniquely identifies the client implementation\nof the Safe Browsing API.", "type": "string" }, - "clientVersion": { - "description": "The version of the client implementation.", - "type": "string" + "userInfo": { + "$ref": "UserInfo", + "description": "Details about the user that encountered the threat." } }, - "id": "ClientInfo" + "type": "object" }, "ThreatInfo": { "description": "The information regarding one or more threats that a client submits when\nchecking for matches in threat lists.", - "type": "object", + "id": "ThreatInfo", "properties": { + "platformTypes": { + "description": "The platform types to be checked.", + "enumDescriptions": [ + "Unknown platform.", + "Threat posed to Windows.", + "Threat posed to Linux.", + "Threat posed to Android.", + "Threat posed to OS X.", + "Threat posed to iOS.", + "Threat posed to at least one of the defined platforms.", + "Threat posed to all defined platforms.", + "Threat posed to Chrome." + ], + "items": { + "enum": [ + "PLATFORM_TYPE_UNSPECIFIED", + "WINDOWS", + "LINUX", + "ANDROID", + "OSX", + "IOS", + "ANY_PLATFORM", + "ALL_PLATFORMS", + "CHROME" + ], + "type": "string" + }, + "type": "array" + }, + "threatEntries": { + "description": "The threat entries to be checked.", + "items": { + "$ref": "ThreatEntry" + }, + "type": "array" + }, "threatEntryTypes": { + "description": "The entry types to be checked.", "enumDescriptions": [ "Unspecified.", "A URL.", @@ -1169,8 +992,6 @@ "Filename.", "CERT" ], - "description": "The entry types to be checked.", - "type": "array", "items": { "enum": [ "THREAT_ENTRY_TYPE_UNSPECIFIED", @@ -1182,13 +1003,28 @@ "CERT" ], "type": "string" - } + }, + "type": "array" }, "threatTypes": { "description": "The threat types to be checked.", - "type": "array", + "enumDescriptions": [ + "Unknown.", + "Malware threat type.", + "Social engineering threat type.", + "Unwanted software threat type.", + "Potentially harmful application threat type.", + "Social engineering threat type for internal use.", + "API abuse threat type.", + "Malicious binary threat type.", + "Client side detection whitelist threat type.", + "Client side download detection whitelist threat type.", + "Client incident threat type.", + "Whitelist used when detecting client incident threats.\nThis enum was never launched and should be re-used for the next list.", + "List used for offline APK checks in PAM.", + "Patterns to be used for activating the subresource filter. Interstitial\nwill not be shown for patterns from this list." + ], "items": { - "type": "string", "enum": [ "THREAT_TYPE_UNSPECIFIED", "MALWARE", @@ -1204,8 +1040,84 @@ "CLIENT_INCIDENT_WHITELIST", "APK_MALWARE_OFFLINE", "SUBRESOURCE_FILTER" - ] + ], + "type": "string" }, + "type": "array" + } + }, + "type": "object" + }, + "ThreatListDescriptor": { + "description": "Describes an individual threat list. A list is defined by three parameters:\nthe type of threat posed, the type of platform targeted by the threat, and\nthe type of entries in the list.", + "id": "ThreatListDescriptor", + "properties": { + "platformType": { + "description": "The platform type targeted by the list's entries.", + "enum": [ + "PLATFORM_TYPE_UNSPECIFIED", + "WINDOWS", + "LINUX", + "ANDROID", + "OSX", + "IOS", + "ANY_PLATFORM", + "ALL_PLATFORMS", + "CHROME" + ], + "enumDescriptions": [ + "Unknown platform.", + "Threat posed to Windows.", + "Threat posed to Linux.", + "Threat posed to Android.", + "Threat posed to OS X.", + "Threat posed to iOS.", + "Threat posed to at least one of the defined platforms.", + "Threat posed to all defined platforms.", + "Threat posed to Chrome." + ], + "type": "string" + }, + "threatEntryType": { + "description": "The entry types contained in the list.", + "enum": [ + "THREAT_ENTRY_TYPE_UNSPECIFIED", + "URL", + "EXECUTABLE", + "IP_RANGE", + "CHROME_EXTENSION", + "FILENAME", + "CERT" + ], + "enumDescriptions": [ + "Unspecified.", + "A URL.", + "An executable program.", + "An IP range.", + "Chrome extension.", + "Filename.", + "CERT" + ], + "type": "string" + }, + "threatType": { + "description": "The threat type posed by the list's entries.", + "enum": [ + "THREAT_TYPE_UNSPECIFIED", + "MALWARE", + "SOCIAL_ENGINEERING", + "UNWANTED_SOFTWARE", + "POTENTIALLY_HARMFUL_APPLICATION", + "SOCIAL_ENGINEERING_INTERNAL", + "API_ABUSE", + "MALICIOUS_BINARY", + "CSD_WHITELIST", + "CSD_DOWNLOAD_WHITELIST", + "CLIENT_INCIDENT", + "CLIENT_INCIDENT_WHITELIST", + "APK_MALWARE_OFFLINE", + "SUBRESOURCE_FILTER" + ], "enumDescriptions": [ "Unknown.", "Malware threat type.", @@ -1221,25 +1133,34 @@ "Whitelist used when detecting client incident threats.\nThis enum was never launched and should be re-used for the next list.", "List used for offline APK checks in PAM.", "Patterns to be used for activating the subresource filter. Interstitial\nwill not be shown for patterns from this list." - ] + ], + "type": "string" + } + }, + "type": "object" + }, + "ThreatMatch": { + "description": "A match when checking a threat entry in the Safe Browsing threat lists.", + "id": "ThreatMatch", + "properties": { + "cacheDuration": { + "description": "The cache lifetime for the returned match. Clients must not cache this\nresponse for more than this duration to avoid false positives.", + "format": "google-duration", + "type": "string" }, - "platformTypes": { - "description": "The platform types to be checked.", - "type": "array", - "items": { - "type": "string", - "enum": [ - "PLATFORM_TYPE_UNSPECIFIED", - "WINDOWS", - "LINUX", - "ANDROID", - "OSX", - "IOS", - "ANY_PLATFORM", - "ALL_PLATFORMS", - "CHROME" - ] - }, + "platformType": { + "description": "The platform type matching this threat.", + "enum": [ + "PLATFORM_TYPE_UNSPECIFIED", + "WINDOWS", + "LINUX", + "ANDROID", + "OSX", + "IOS", + "ANY_PLATFORM", + "ALL_PLATFORMS", + "CHROME" + ], "enumDescriptions": [ "Unknown platform.", "Threat posed to Windows.", @@ -1250,46 +1171,133 @@ "Threat posed to at least one of the defined platforms.", "Threat posed to all defined platforms.", "Threat posed to Chrome." - ] + ], + "type": "string" }, - "threatEntries": { - "description": "The threat entries to be checked.", - "type": "array", - "items": { - "$ref": "ThreatEntry" - } + "threat": { + "$ref": "ThreatEntry", + "description": "The threat matching this threat." + }, + "threatEntryMetadata": { + "$ref": "ThreatEntryMetadata", + "description": "Optional metadata associated with this threat." + }, + "threatEntryType": { + "description": "The threat entry type matching this threat.", + "enum": [ + "THREAT_ENTRY_TYPE_UNSPECIFIED", + "URL", + "EXECUTABLE", + "IP_RANGE", + "CHROME_EXTENSION", + "FILENAME", + "CERT" + ], + "enumDescriptions": [ + "Unspecified.", + "A URL.", + "An executable program.", + "An IP range.", + "Chrome extension.", + "Filename.", + "CERT" + ], + "type": "string" + }, + "threatType": { + "description": "The threat type matching this threat.", + "enum": [ + "THREAT_TYPE_UNSPECIFIED", + "MALWARE", + "SOCIAL_ENGINEERING", + "UNWANTED_SOFTWARE", + "POTENTIALLY_HARMFUL_APPLICATION", + "SOCIAL_ENGINEERING_INTERNAL", + "API_ABUSE", + "MALICIOUS_BINARY", + "CSD_WHITELIST", + "CSD_DOWNLOAD_WHITELIST", + "CLIENT_INCIDENT", + "CLIENT_INCIDENT_WHITELIST", + "APK_MALWARE_OFFLINE", + "SUBRESOURCE_FILTER" + ], + "enumDescriptions": [ + "Unknown.", + "Malware threat type.", + "Social engineering threat type.", + "Unwanted software threat type.", + "Potentially harmful application threat type.", + "Social engineering threat type for internal use.", + "API abuse threat type.", + "Malicious binary threat type.", + "Client side detection whitelist threat type.", + "Client side download detection whitelist threat type.", + "Client incident threat type.", + "Whitelist used when detecting client incident threats.\nThis enum was never launched and should be re-used for the next list.", + "List used for offline APK checks in PAM.", + "Patterns to be used for activating the subresource filter. Interstitial\nwill not be shown for patterns from this list." + ], + "type": "string" } }, - "id": "ThreatInfo" + "type": "object" }, - "ThreatEntryMetadata": { - "id": "ThreatEntryMetadata", - "description": "The metadata associated with a specific threat entry. The client is expected\nto know the metadata key/value pairs associated with each threat type.", - "type": "object", + "ThreatSource": { + "description": "A single resource related to a threat hit.", + "id": "ThreatSource", "properties": { - "entries": { - "description": "The metadata entries.", - "type": "array", - "items": { - "$ref": "MetadataEntry" - } + "referrer": { + "description": "Referrer of the resource. Only set if the referrer is available.", + "type": "string" + }, + "remoteIp": { + "description": "The remote IP of the resource in ASCII format. Either IPv4 or IPv6.", + "type": "string" + }, + "type": { + "description": "The type of source reported.", + "enum": [ + "THREAT_SOURCE_TYPE_UNSPECIFIED", + "MATCHING_URL", + "TAB_URL", + "TAB_REDIRECT", + "TAB_RESOURCE" + ], + "enumDescriptions": [ + "Unknown.", + "The URL that matched the threat list (for which GetFullHash returned a\nvalid hash).", + "The final top-level URL of the tab that the client was browsing when the\nmatch occurred.", + "A redirect URL that was fetched before hitting the final TAB_URL.", + "A resource loaded within the final TAB_URL." + ], + "type": "string" + }, + "url": { + "description": "The URL of the resource.", + "type": "string" } - } + }, + "type": "object" + }, + "UserInfo": { + "description": "Details about the user that encountered the threat.", + "id": "UserInfo", + "properties": { + "regionCode": { + "description": "The UN M.49 region code associated with the user's location.", + "type": "string" + }, + "userId": { + "description": "Unique user identifier defined by the client.", + "format": "byte", + "type": "string" + } + }, + "type": "object" } }, - "protocol": "rest", - "icons": { - "x32": "http://www.google.com/images/icons/product/search-32.gif", - "x16": "http://www.google.com/images/icons/product/search-16.gif" - }, - "version": "v4", - "baseUrl": "https://safebrowsing.googleapis.com/", - "kind": "discovery#restDescription", - "description": "Enables client applications to check web resources (most commonly URLs) against Google-generated lists of unsafe web resources.", "servicePath": "", - "rootUrl": "https://safebrowsing.googleapis.com/", - "basePath": "", - "ownerDomain": "google.com", - "name": "safebrowsing", - "batchPath": "batch" -} + "title": "Google Safe Browsing API", + "version": "v4" +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/safebrowsing/v4/safebrowsing-gen.go b/vendor/google.golang.org/api/safebrowsing/v4/safebrowsing-gen.go index 0442251ba..701f7a583 100644 --- a/vendor/google.golang.org/api/safebrowsing/v4/safebrowsing-gen.go +++ b/vendor/google.golang.org/api/safebrowsing/v4/safebrowsing-gen.go @@ -216,6 +216,16 @@ func (s *ClientInfo) MarshalJSON() ([]byte, error) { // Constraints: The constraints for this update. type Constraints struct { + // DeviceLocation: A client's physical location, expressed as a ISO + // 31166-1 alpha-2 + // region code. + DeviceLocation string `json:"deviceLocation,omitempty"` + + // Language: Requests the lists for a specific language. Expects ISO 639 + // alpha-2 + // format. + Language string `json:"language,omitempty"` + // MaxDatabaseEntries: Sets the maximum number of entries that the // client is willing to have // in the local database. This should be a power of 2 between 2**10 @@ -245,15 +255,15 @@ type Constraints struct { // "RICE" - Rice-Golomb encoded data. SupportedCompressions []string `json:"supportedCompressions,omitempty"` - // ForceSendFields is a list of field names (e.g. "MaxDatabaseEntries") - // to unconditionally include in API requests. By default, fields with + // ForceSendFields is a list of field names (e.g. "DeviceLocation") to + // unconditionally include in API requests. By default, fields with // empty values are omitted from API requests. However, any non-pointer, // non-interface field appearing in ForceSendFields will be sent to the // server regardless of whether the field is empty or not. This may be // used to include empty fields in Patch requests. ForceSendFields []string `json:"-"` - // NullFields is a list of field names (e.g. "MaxDatabaseEntries") to + // NullFields is a list of field names (e.g. "DeviceLocation") to // include in API requests with the JSON null value. By default, fields // with empty values are omitted from API requests. However, any field // with an empty value appearing in NullFields will be sent to the @@ -862,7 +872,9 @@ type RiceDeltaEncoding struct { // FirstValue: The offset of the first entry in the encoded data, or, if // only a single - // integer was encoded, that single integer's value. + // integer was encoded, that single integer's value. If the field is + // empty or + // missing, assume zero. FirstValue int64 `json:"firstValue,omitempty,string"` // NumEntries: The number of entries that are delta encoded in the diff --git a/vendor/google.golang.org/api/script/v1/script-api.json b/vendor/google.golang.org/api/script/v1/script-api.json index 65d664db0..5201c80dd 100644 --- a/vendor/google.golang.org/api/script/v1/script-api.json +++ b/vendor/google.golang.org/api/script/v1/script-api.json @@ -1,886 +1,741 @@ { - "revision": "20180120", - "documentationLink": "https://developers.google.com/apps-script/api/", - "id": "script:v1", - "discoveryVersion": "v1", - "schemas": { - "ExecutionRequest": { - "description": "A request to run the function in a script. The script is identified by the\nspecified `script_id`. Executing a function on a script returns results\nbased on the implementation of the script.", - "type": "object", - "properties": { - "function": { - "description": "The name of the function to execute in the given script. The name does not\ninclude parentheses or parameters.", - "type": "string" - }, - "devMode": { - "description": "If `true` and the user is an owner of the script, the script runs at the\nmost recently saved version rather than the version deployed for use with\nthe Apps Script API. Optional; default is `false`.", - "type": "boolean" - }, - "parameters": { - "description": "The parameters to be passed to the function being executed. The object type\nfor each parameter should match the expected type in Apps Script.\nParameters cannot be Apps Script-specific object types (such as a\n`Document` or a `Calendar`); they can only be primitive types such as\n`string`, `number`, `array`, `object`, or `boolean`. Optional.", - "type": "array", - "items": { - "type": "any" - } - }, - "sessionState": { - "description": "For Android add-ons only. An ID that represents the user's current session\nin the Android app for Google Docs or Sheets, included as extra data in the\n[Intent](https://developer.android.com/guide/components/intents-filters.html)\nthat launches the add-on. When an Android add-on is run with a session\nstate, it gains the privileges of a\n[bound](https://developers.google.com/apps-script/guides/bound)\nscript—that is, it can access information like the user's current\ncursor position (in Docs) or selected cell (in Sheets). To retrieve the\nstate, call\n`Intent.getStringExtra(\"com.google.android.apps.docs.addons.SessionState\")`.\nOptional.", - "type": "string" - } - }, - "id": "ExecutionRequest" - }, - "EntryPoint": { - "description": "A configuration that defines how a deployment is accessed externally.", - "type": "object", - "properties": { - "executionApi": { - "$ref": "GoogleAppsScriptTypeExecutionApiEntryPoint", - "description": "An entry point specification for Apps Script API execution calls." - }, - "entryPointType": { - "enum": [ - "ENTRY_POINT_TYPE_UNSPECIFIED", - "WEB_APP", - "EXECUTION_API", - "ADD_ON" - ], - "description": "The type of the entry point.", - "type": "string", - "enumDescriptions": [ - "An unspecified entry point.", - "A web application entry point.", - "An API executable entry point.", - "An Add-On entry point." - ] - }, - "addOn": { - "$ref": "GoogleAppsScriptTypeAddOnEntryPoint", - "description": "Add-on properties." - }, - "webApp": { - "description": "An entry point specification for web apps.", - "$ref": "GoogleAppsScriptTypeWebAppEntryPoint" - } - }, - "id": "EntryPoint" - }, - "Version": { - "description": "A resource representing a script project version. A version is a \"snapshot\"\nof a script project and is similar to a read-only branched release. When\ncreating deployments, the version to use must be specified.", - "type": "object", - "properties": { - "createTime": { - "description": "When the version was created.", - "format": "google-datetime", - "type": "string" - }, - "description": { - "description": "The description for this version.", - "type": "string" - }, - "versionNumber": { - "description": "The incremental ID that is created by Apps Script when a version is\ncreated. This is system assigned number and is immutable once created.", - "format": "int32", - "type": "integer" - }, - "scriptId": { - "description": "The script project's Drive ID.", - "type": "string" - } - }, - "id": "Version" - }, - "GoogleAppsScriptTypeExecutionApiConfig": { - "description": "API executable entry point configuration.", - "type": "object", - "properties": { - "access": { - "description": "Who has permission to run the API executable.", - "type": "string", - "enumDescriptions": [ - "Default value, should not be used.", - "Only the user who deployed the web app or executable can access it.\nNote that this is not necessarily the owner of the script project.", - "Only users in the same domain as the user who deployed the web app or\nexecutable can access it.", - "Any logged in user can access the web app or executable.", - "Any user, logged in or not, can access the web app or executable." - ], - "enum": [ - "UNKNOWN_ACCESS", - "MYSELF", - "DOMAIN", - "ANYONE", - "ANYONE_ANONYMOUS" - ] - } - }, - "id": "GoogleAppsScriptTypeExecutionApiConfig" - }, - "GoogleAppsScriptTypeProcess": { - "id": "GoogleAppsScriptTypeProcess", - "description": "Representation of a single script process execution that was started from\nthe script editor, a trigger, an application, or using the Apps Script API.\nThis is distinct from the `Operation`\nresource, which only represents exeuctions started via the Apps Script API.", - "type": "object", - "properties": { - "duration": { - "description": "Duration the execution spent executing.", - "format": "google-duration", - "type": "string" - }, - "functionName": { - "description": "Name of the function the started the execution.", - "type": "string" - }, - "startTime": { - "description": "Time the execution started.", - "format": "google-datetime", - "type": "string" - }, - "userAccessLevel": { - "enum": [ - "USER_ACCESS_LEVEL_UNSPECIFIED", - "NONE", - "READ", - "WRITE", - "OWNER" - ], - "description": "The executing users access level to the script.", - "type": "string", - "enumDescriptions": [ - "User access level unspecified", - "The user has no access.", - "The user has read-only access.", - "The user has write access.", - "The user is an owner." - ] - }, - "processType": { - "enumDescriptions": [ - "Unspecified type.", - "The process was started from an add-on entry point.", - "The process was started using the Apps Script API.", - "The process was started from a time-based trigger.", - "The process was started from an event-based trigger.", - "The process was started from a web app entry point.", - "The process was started using the Apps Script IDE." - ], - "enum": [ - "PROCESS_TYPE_UNSPECIFIED", - "ADD_ON", - "EXECUTION_API", - "TIME_DRIVEN", - "TRIGGER", - "WEBAPP", - "EDITOR" - ], - "description": "The executions type.", - "type": "string" - }, - "executingUser": { - "description": "User-facing name for the user executing the script.", - "type": "string" - }, - "projectName": { - "description": "Name of the script being executed.", - "type": "string" - }, - "processStatus": { - "enumDescriptions": [ - "Unspecified status.", - "The process is currently running.", - "The process has paused.", - "The process has completed.", - "The process was cancelled.", - "The process failed.", - "The process timed out.", - "Process status unknown." - ], - "enum": [ - "PROCESS_STATUS_UNSPECIFIED", - "RUNNING", - "PAUSED", - "COMPLETED", - "CANCELED", - "FAILED", - "TIMED_OUT", - "UNKNOWN" - ], - "description": "The executions status.", - "type": "string" - } - } - }, - "DeploymentConfig": { - "description": "Metadata the defines how a deployment is configured.", - "type": "object", - "properties": { - "description": { - "description": "The description for this deployment.", - "type": "string" - }, - "versionNumber": { - "type": "integer", - "description": "The version number on which this deployment is based.", - "format": "int32" - }, - "scriptId": { - "description": "The script project's Drive ID.", - "type": "string" - }, - "manifestFileName": { - "type": "string", - "description": "The manifest file name for this deployment." - } - }, - "id": "DeploymentConfig" - }, - "CreateProjectRequest": { - "description": "Request to create a script project.", - "type": "object", - "properties": { - "parentId": { - "description": "The Drive ID of a parent file that the created script project is bound to.\nThis is usually the ID of a Google Doc, Google Sheet, Google Form, or\nGoogle Slides file. If not set, a standalone script project is created.", - "type": "string" - }, - "title": { - "description": "The title for the project.", - "type": "string" - } - }, - "id": "CreateProjectRequest" - }, - "Operation": { - "description": "A representation of a execution of an Apps Script function that is started using run. The execution response does not arrive until the function finishes executing. The maximum execution runtime is listed in the [Apps Script quotas guide](/apps-script/guides/services/quotas#current_limitations). \u003cp\u003eAfter the execution is started, it can have one of four outcomes:\u003c/p\u003e \u003cul\u003e \u003cli\u003e If the script function returns successfully, the\n response field contains an\n ExecutionResponse object\n with the function's return value in the object's `result` field.\u003c/li\u003e\n\u003cli\u003e If the script function (or Apps Script itself) throws an exception, the\n error field contains a\n Status object. The `Status` object's `details`\n field contains an array with a single\n ExecutionError object that\n provides information about the nature of the error.\u003c/li\u003e\n\u003cli\u003e If the execution has not yet completed,\n the done field is `false` and\n the neither the `response` nor `error` fields are present.\u003c/li\u003e\n\u003cli\u003e If the `run` call itself fails (for example, because of a\n malformed request or an authorization error), the method returns an HTTP\n response code in the 4XX range with a different format for the response\n body. Client libraries automatically convert a 4XX response into an\n exception class.\u003c/li\u003e\n\u003c/ul\u003e", - "type": "object", - "properties": { - "done": { - "description": "This field indicates whether the script execution has completed. A completed execution has a populated `response` field containing the ExecutionResponse from function that was executed.", - "type": "boolean" - }, - "response": { - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - }, - "description": "If the script function returns successfully, this field contains an ExecutionResponse object with the function's return value.", - "type": "object" - }, - "error": { - "$ref": "Status", - "description": "If a `run` call succeeds but the script function (or Apps Script itself) throws an exception, this field contains a Status object. The `Status` object's `details` field contains an array with a single ExecutionError object that provides information about the nature of the error." - } - }, - "id": "Operation" - }, - "Status": { - "type": "object", - "properties": { - "code": { - "description": "The status code. For this API, this value either: \u003cul\u003e \u003cli\u003e 3, indicating an `INVALID_ARGUMENT` error, or\u003c/li\u003e \u003cli\u003e 1, indicating a `CANCELLED` execution.\u003c/li\u003e \u003c/ul\u003e", - "format": "int32", - "type": "integer" - }, - "message": { - "description": "A developer-facing error message, which is in English. Any user-facing error message is localized and sent in the [google.rpc.Status.details](google.rpc.Status.details) field, or localized by the client.", - "type": "string" - }, - "details": { - "type": "array", - "items": { - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - }, - "type": "object" - }, - "description": "An array that contains a single ExecutionError object that provides information about the nature of the error." - } - }, - "id": "Status", - "description": "If a `run` call succeeds but the script function (or Apps Script itself) throws an exception, the response body's error field contains this `Status` object." - }, - "GoogleAppsScriptTypeFunction": { - "type": "object", - "properties": { - "name": { - "description": "The function name in the script project.", - "type": "string" - } - }, - "id": "GoogleAppsScriptTypeFunction", - "description": "Represents a function in a script project." - }, - "MetricsValue": { - "description": "Metrics value that holds number of executions counted.", - "type": "object", - "properties": { - "startTime": { - "description": "Required field indicating the start time of the interval.", - "format": "google-datetime", - "type": "string" - }, - "value": { - "description": "Indicates the number of executions counted.", - "format": "uint64", - "type": "string" - }, - "endTime": { - "type": "string", - "description": "Required field indicating the end time of the interval.", - "format": "google-datetime" - } - }, - "id": "MetricsValue" - }, - "Deployment": { - "properties": { - "deploymentId": { - "type": "string", - "description": "The deployment ID for this deployment." - }, - "entryPoints": { - "description": "The deployment's entry points.", - "type": "array", - "items": { - "$ref": "EntryPoint" - } - }, - "scopeSet": { - "$ref": "GoogleAppsScriptTypeScopeSet", - "description": "Set of scopes required by the deployment." - }, - "updateTime": { - "description": "Last modified date time stamp.", - "format": "google-datetime", - "type": "string" - }, - "functionSet": { - "description": "Script's defined set of functions.", - "$ref": "GoogleAppsScriptTypeFunctionSet" - }, - "deploymentConfig": { - "$ref": "DeploymentConfig", - "description": "The deployment configuration." - } - }, - "id": "Deployment", - "description": "Representation of a single script deployment.", - "type": "object" - }, - "GoogleAppsScriptTypeAddOnEntryPoint": { - "type": "object", - "properties": { - "addOnType": { - "description": "The add-on's required list of supported container types.", - "type": "string", - "enumDescriptions": [ - "Default value, unknown add-on type.", - "Add-on type for Gmail.", - "Add-on type for Data Studio." - ], - "enum": [ - "UNKNOWN_ADDON_TYPE", - "GMAIL", - "DATA_STUDIO" - ] - }, - "helpUrl": { - "description": "The add-on's optional help URL.", - "type": "string" - }, - "title": { - "description": "The add-on's required title.", - "type": "string" - }, - "reportIssueUrl": { - "description": "The add-on's optional report issue URL.", - "type": "string" - }, - "postInstallTipUrl": { - "description": "The add-on's required post install tip URL.", - "type": "string" - }, - "description": { - "description": "The add-on's optional description.", - "type": "string" - } - }, - "id": "GoogleAppsScriptTypeAddOnEntryPoint", - "description": "An add-on entry point." - }, - "ScriptStackTraceElement": { - "description": "A stack trace through the script that shows where the execution failed.", - "type": "object", - "properties": { - "function": { - "description": "The name of the function that failed.", - "type": "string" - }, - "lineNumber": { - "description": "The line number where the script failed.", - "format": "int32", - "type": "integer" - } - }, - "id": "ScriptStackTraceElement" - }, - "ListScriptProcessesResponse": { - "description": "Response with the list of\nProcess resources.", - "type": "object", - "properties": { - "processes": { - "description": "List of processes matching request parameters.", - "type": "array", - "items": { - "$ref": "GoogleAppsScriptTypeProcess" - } - }, - "nextPageToken": { - "description": "Token for the next page of results. If empty, there are no more pages\nremaining.", - "type": "string" - } - }, - "id": "ListScriptProcessesResponse" - }, - "GoogleAppsScriptTypeWebAppConfig": { - "type": "object", - "properties": { - "access": { - "enumDescriptions": [ - "Default value, should not be used.", - "Only the user who deployed the web app or executable can access it.\nNote that this is not necessarily the owner of the script project.", - "Only users in the same domain as the user who deployed the web app or\nexecutable can access it.", - "Any logged in user can access the web app or executable.", - "Any user, logged in or not, can access the web app or executable." - ], - "enum": [ - "UNKNOWN_ACCESS", - "MYSELF", - "DOMAIN", - "ANYONE", - "ANYONE_ANONYMOUS" - ], - "description": "Who has permission to run the web app.", - "type": "string" - }, - "executeAs": { - "enumDescriptions": [ - "Default value, should not be used.", - "The script runs as the user accessing the web app.", - "The script runs as the user who deployed the web app. Note that this is\nnot necessarily the owner of the script project." - ], - "enum": [ - "UNKNOWN_EXECUTE_AS", - "USER_ACCESSING", - "USER_DEPLOYING" - ], - "description": "Who to execute the web app as.", - "type": "string" - } - }, - "id": "GoogleAppsScriptTypeWebAppConfig", - "description": "Web app entry point configuration." - }, - "Project": { - "description": "The script project resource.", - "type": "object", - "properties": { - "scriptId": { - "description": "The script project's Drive ID.", - "type": "string" - }, - "title": { - "description": "The title for the project.", - "type": "string" - }, - "lastModifyUser": { - "description": "User who last modified the script.", - "$ref": "GoogleAppsScriptTypeUser" - }, - "parentId": { - "description": "The parent's Drive ID that the script will be attached to. This is usually\nthe ID of a Google Document or Google Sheet. This filed is optional, and\nif not set, a stand-alone script will be created.", - "type": "string" - }, - "createTime": { - "description": "When the script was created.", - "format": "google-datetime", - "type": "string" - }, - "updateTime": { - "description": "When the script was last updated.", - "format": "google-datetime", - "type": "string" - }, - "creator": { - "description": "User who originally created the script.", - "$ref": "GoogleAppsScriptTypeUser" - } - }, - "id": "Project" - }, - "ListDeploymentsResponse": { - "description": "Response with the list of deployments for the specified Apps Script project.", - "type": "object", - "properties": { - "deployments": { - "description": "The list of deployments.", - "type": "array", - "items": { - "$ref": "Deployment" - } - }, - "nextPageToken": { - "description": "The token that can be used in the next call to get the next page of\nresults.", - "type": "string" - } - }, - "id": "ListDeploymentsResponse" - }, - "File": { - "type": "object", - "properties": { - "source": { - "description": "The file content.", - "type": "string" - }, - "lastModifyUser": { - "$ref": "GoogleAppsScriptTypeUser", - "description": "The user who modified the file most recently.\nThis read-only field is only visible to users who have WRITER\npermission for the script project." - }, - "createTime": { - "description": "Creation date timestamp.\nThis read-only field is only visible to users who have WRITER\npermission for the script project.", - "format": "google-datetime", - "type": "string" - }, - "updateTime": { - "description": "Last modified date timestamp.\nThis read-only field is only visible to users who have WRITER\npermission for the script project.", - "format": "google-datetime", - "type": "string" - }, - "functionSet": { - "description": "The defined set of functions in the script file, if any.", - "$ref": "GoogleAppsScriptTypeFunctionSet" - }, - "name": { - "description": "The name of the file. The file extension is not part of the file\nname, which can be identified from the type field.", - "type": "string" - }, - "type": { - "enumDescriptions": [ - "Undetermined file type; never actually used.", - "An Apps Script server-side code file.", - "A file containing client-side HTML.", - "A file in JSON format. This type is only used for the script\nproject's manifest. The manifest file content must match the\nstructure of a valid\n[ScriptManifest](/apps-script/concepts/manifests)" - ], - "enum": [ - "ENUM_TYPE_UNSPECIFIED", - "SERVER_JS", - "HTML", - "JSON" - ], - "description": "The type of the file.", - "type": "string" - } - }, - "id": "File", - "description": "An individual file within a script project.\nA file is a third-party source code created by one or more\ndevelopers. It can be a server-side JS code, HTML, or a\nconfiguration file. Each script project can contain multiple files." - }, - "ExecutionResponse": { - "description": "An object that provides the return value of a function executed using the\nApps Script API. If the script function returns successfully, the response\nbody's response field contains this\n`ExecutionResponse` object.", - "type": "object", - "properties": { - "result": { - "type": "any", - "description": "The return value of the script function. The type matches the object type\nreturned in Apps Script. Functions called using the Apps Script API cannot\nreturn Apps Script-specific objects (such as a `Document` or a `Calendar`);\nthey can only return primitive types such as a `string`, `number`, `array`,\n`object`, or `boolean`." - } - }, - "id": "ExecutionResponse" - }, - "GoogleAppsScriptTypeScopeSet": { - "description": "A set of scopes. No duplicates are permitted.", - "type": "object", - "properties": { - "values": { - "description": "List of scope values in the set.", - "type": "array", - "items": { - "$ref": "GoogleAppsScriptTypeScope" - } - } - }, - "id": "GoogleAppsScriptTypeScopeSet" - }, - "GoogleAppsScriptTypeScope": { - "description": "Represents an authorization scope.", - "type": "object", - "properties": { - "name": { - "description": "The scope's identifying string.", - "type": "string" - }, - "authorizer": { - "enum": [ - "SCOPE_AUTHORIZER_UNSPECIFIED", - "AUTHORIZED_BY_DEVELOPER", - "AUTHORIZED_BY_END_USER" - ], - "description": "Who authorized the scope.", - "type": "string", - "enumDescriptions": [ - "Authorizer unspecified.", - "Developer authorized scope.", - "End user authorized scope." - ] - } - }, - "id": "GoogleAppsScriptTypeScope" - }, - "ListVersionsResponse": { - "type": "object", - "properties": { - "nextPageToken": { - "description": "The token use to fetch the next page of records. if not exist in the\nresponse, that means no more versions to list.", - "type": "string" - }, - "versions": { - "description": "The list of versions.", - "type": "array", - "items": { - "$ref": "Version" - } - } - }, - "id": "ListVersionsResponse", - "description": "Response with the list of the versions for the specified script project." - }, - "Metrics": { - "id": "Metrics", - "description": "Resource containing usage stats for a given script, based on the supplied\nfilter and mask present in the request.", - "type": "object", - "properties": { - "activeUsers": { - "description": "Number of active users.", - "type": "array", - "items": { - "$ref": "MetricsValue" - } - }, - "totalExecutions": { - "description": "Number of total executions.", - "type": "array", - "items": { - "$ref": "MetricsValue" - } - }, - "failedExecutions": { - "description": "Number of failed executions.", - "type": "array", - "items": { - "$ref": "MetricsValue" - } - } - } - }, - "GoogleAppsScriptTypeFunctionSet": { - "description": "A set of functions. No duplicates are permitted.", - "type": "object", - "properties": { - "values": { - "description": "A list of functions composing the set.", - "type": "array", - "items": { - "$ref": "GoogleAppsScriptTypeFunction" - } - } - }, - "id": "GoogleAppsScriptTypeFunctionSet" - }, - "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 `{}`.", - "type": "object", - "properties": {}, - "id": "Empty" - }, - "GoogleAppsScriptTypeWebAppEntryPoint": { - "properties": { - "url": { - "description": "The URL for the web application.", - "type": "string" - }, - "entryPointConfig": { - "$ref": "GoogleAppsScriptTypeWebAppConfig", - "description": "The entry point's configuration." - } - }, - "id": "GoogleAppsScriptTypeWebAppEntryPoint", - "description": "A web application entry point.", - "type": "object" - }, - "Content": { - "id": "Content", - "description": "The Content resource.", - "type": "object", - "properties": { - "scriptId": { - "description": "The script project's Drive ID.", - "type": "string" - }, - "files": { - "description": "The list of script project files.\nOne of the files is a script manifest; it must be named \"appsscript\",\nmust have type of JSON, and include the manifest configurations for the\nproject.", - "type": "array", - "items": { - "$ref": "File" - } - } - } - }, - "UpdateDeploymentRequest": { - "description": "Request with deployment information to update an existing deployment.", - "type": "object", - "properties": { - "deploymentConfig": { - "$ref": "DeploymentConfig", - "description": "The deployment configuration." - } - }, - "id": "UpdateDeploymentRequest" - }, - "GoogleAppsScriptTypeExecutionApiEntryPoint": { - "id": "GoogleAppsScriptTypeExecutionApiEntryPoint", - "description": "An API executable entry point.", - "type": "object", - "properties": { - "entryPointConfig": { - "$ref": "GoogleAppsScriptTypeExecutionApiConfig", - "description": "The entry point's configuration." - } - } - }, - "ExecutionError": { - "description": "An object that provides information about the nature of an error resulting\nfrom an attempted execution of a script function using the Apps Script API.\nIf a run call\nsucceeds but the script function (or Apps Script itself) throws an exception,\nthe response body's error field\ncontains a\nStatus object. The `Status` object's `details` field\ncontains an array with a single one of these `ExecutionError` objects.", - "type": "object", - "properties": { - "errorType": { - "description": "The error type, for example `TypeError` or `ReferenceError`. If the error\ntype is unavailable, this field is not included.", - "type": "string" - }, - "errorMessage": { - "type": "string", - "description": "The error message thrown by Apps Script, usually localized into the user's\nlanguage." - }, - "scriptStackTraceElements": { - "description": "An array of objects that provide a stack trace through the script to show\nwhere the execution failed, with the deepest call first.", - "type": "array", - "items": { - "$ref": "ScriptStackTraceElement" - } - } - }, - "id": "ExecutionError" - }, - "ListUserProcessesResponse": { - "type": "object", - "properties": { - "processes": { - "description": "List of processes matching request parameters.", - "type": "array", - "items": { - "$ref": "GoogleAppsScriptTypeProcess" - } - }, - "nextPageToken": { - "description": "Token for the next page of results. If empty, there are no more pages\nremaining.", - "type": "string" - } - }, - "id": "ListUserProcessesResponse", - "description": "Response with the list of\nProcess resources." - }, - "GoogleAppsScriptTypeUser": { - "description": "A simple user profile resource.", - "type": "object", - "properties": { - "domain": { - "description": "The user's domain.", - "type": "string" - }, - "photoUrl": { - "description": "The user's photo.", - "type": "string" - }, - "email": { - "description": "The user's identifying email address.", - "type": "string" - }, - "name": { - "description": "The user's display name.", - "type": "string" - } - }, - "id": "GoogleAppsScriptTypeUser" - } - }, - "icons": { - "x32": "http://www.google.com/images/icons/product/search-32.gif", - "x16": "http://www.google.com/images/icons/product/search-16.gif" - }, - "protocol": "rest", - "canonicalName": "Script", "auth": { "oauth2": { "scopes": { - "https://www.googleapis.com/auth/groups": { - "description": "View and manage your Google Groups" - }, - "https://www.googleapis.com/auth/forms.currentonly": { - "description": "View and manage forms that this application has been installed in" - }, - "https://www.googleapis.com/auth/drive": { - "description": "View and manage the files in your Google Drive" - }, - "https://www.googleapis.com/auth/admin.directory.user": { - "description": "View and manage the provisioning of users on your domain" - }, - "https://www.googleapis.com/auth/admin.directory.group": { - "description": "View and manage the provisioning of groups on your domain" - }, - "https://www.googleapis.com/auth/spreadsheets": { - "description": "View and manage your spreadsheets in Google Drive" - }, "https://mail.google.com/": { "description": "Read, send, delete, and manage your email" }, - "https://www.googleapis.com/auth/forms": { - "description": "View and manage your forms in Google Drive" + "https://www.google.com/calendar/feeds": { + "description": "Manage your calendars" }, "https://www.google.com/m8/feeds": { "description": "Manage your contacts" }, + "https://www.googleapis.com/auth/admin.directory.group": { + "description": "View and manage the provisioning of groups on your domain" + }, + "https://www.googleapis.com/auth/admin.directory.user": { + "description": "View and manage the provisioning of users on your domain" + }, + "https://www.googleapis.com/auth/drive": { + "description": "View and manage the files in your Google Drive" + }, + "https://www.googleapis.com/auth/forms": { + "description": "View and manage your forms in Google Drive" + }, + "https://www.googleapis.com/auth/forms.currentonly": { + "description": "View and manage forms that this application has been installed in" + }, + "https://www.googleapis.com/auth/groups": { + "description": "View and manage your Google Groups" + }, + "https://www.googleapis.com/auth/spreadsheets": { + "description": "View and manage your spreadsheets in Google Drive" + }, "https://www.googleapis.com/auth/userinfo.email": { "description": "View your email address" - }, - "https://www.google.com/calendar/feeds": { - "description": "Manage your calendars" } } } }, - "rootUrl": "https://script.googleapis.com/", - "ownerDomain": "google.com", - "name": "script", + "basePath": "", + "baseUrl": "https://script.googleapis.com/", "batchPath": "batch", + "canonicalName": "Script", + "description": "An API for managing and executing Google Apps Script projects.", + "discoveryVersion": "v1", + "documentationLink": "https://developers.google.com/apps-script/api/", "fullyEncodeReservedExpansion": true, - "title": "Google Apps Script API", + "icons": { + "x16": "http://www.google.com/images/icons/product/search-16.gif", + "x32": "http://www.google.com/images/icons/product/search-32.gif" + }, + "id": "script:v1", + "kind": "discovery#restDescription", + "name": "script", + "ownerDomain": "google.com", "ownerName": "Google", + "parameters": { + "$.xgafv": { + "description": "V1 error format.", + "enum": [ + "1", + "2" + ], + "enumDescriptions": [ + "v1 error format", + "v2 error format" + ], + "location": "query", + "type": "string" + }, + "access_token": { + "description": "OAuth access token.", + "location": "query", + "type": "string" + }, + "alt": { + "default": "json", + "description": "Data format for response.", + "enum": [ + "json", + "media", + "proto" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json", + "Media download with context-dependent Content-Type", + "Responses with Content-Type of application/x-protobuf" + ], + "location": "query", + "type": "string" + }, + "bearer_token": { + "description": "OAuth bearer token.", + "location": "query", + "type": "string" + }, + "callback": { + "description": "JSONP", + "location": "query", + "type": "string" + }, + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "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.", + "location": "query", + "type": "string" + }, + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "pp": { + "default": "true", + "description": "Pretty-print response.", + "location": "query", + "type": "boolean" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", + "location": "query", + "type": "string" + }, + "uploadType": { + "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", + "location": "query", + "type": "string" + }, + "upload_protocol": { + "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", + "location": "query", + "type": "string" + } + }, + "protocol": "rest", "resources": { - "scripts": { + "processes": { "methods": { - "run": { - "response": { - "$ref": "Operation" + "list": { + "description": "List information about processes made by or on behalf of a user,\nsuch as process type and current status.", + "flatPath": "v1/processes", + "httpMethod": "GET", + "id": "script.processes.list", + "parameterOrder": [], + "parameters": { + "pageSize": { + "description": "The maximum number of returned processes per page of results. Defaults to\n50.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "The token for continuing a previous list request on the next page. This\nshould be set to the value of `nextPageToken` from a previous response.", + "location": "query", + "type": "string" + }, + "userProcessFilter.deploymentId": { + "description": "Optional field used to limit returned processes to those originating from\nprojects with a specific deployment ID.", + "location": "query", + "type": "string" + }, + "userProcessFilter.endTime": { + "description": "Optional field used to limit returned processes to those that completed\non or before the given timestamp.", + "format": "google-datetime", + "location": "query", + "type": "string" + }, + "userProcessFilter.functionName": { + "description": "Optional field used to limit returned processes to those originating from\na script function with the given function name.", + "location": "query", + "type": "string" + }, + "userProcessFilter.projectName": { + "description": "Optional field used to limit returned processes to those originating from\nprojects with a specific project name.", + "location": "query", + "type": "string" + }, + "userProcessFilter.scriptId": { + "description": "Optional field used to limit returned processes to those originating from\nprojects with a specific script ID.", + "location": "query", + "type": "string" + }, + "userProcessFilter.startTime": { + "description": "Optional field used to limit returned processes to those that were\nstarted on or after the given timestamp.", + "format": "google-datetime", + "location": "query", + "type": "string" + }, + "userProcessFilter.statuses": { + "description": "Optional field used to limit returned processes to those having one of\nthe specified process statuses.", + "enum": [ + "PROCESS_STATUS_UNSPECIFIED", + "RUNNING", + "PAUSED", + "COMPLETED", + "CANCELED", + "FAILED", + "TIMED_OUT", + "UNKNOWN", + "DELAYED" + ], + "location": "query", + "repeated": true, + "type": "string" + }, + "userProcessFilter.types": { + "description": "Optional field used to limit returned processes to those having one of\nthe specified process types.", + "enum": [ + "PROCESS_TYPE_UNSPECIFIED", + "ADD_ON", + "EXECUTION_API", + "TIME_DRIVEN", + "TRIGGER", + "WEBAPP", + "EDITOR" + ], + "location": "query", + "repeated": true, + "type": "string" + }, + "userProcessFilter.userAccessLevels": { + "description": "Optional field used to limit returned processes to those having one of\nthe specified user access levels.", + "enum": [ + "USER_ACCESS_LEVEL_UNSPECIFIED", + "NONE", + "READ", + "WRITE", + "OWNER" + ], + "location": "query", + "repeated": true, + "type": "string" + } }, + "path": "v1/processes", + "response": { + "$ref": "ListUserProcessesResponse" + } + }, + "listScriptProcesses": { + "description": "List information about a script's executed processes, such as process type\nand current status.", + "flatPath": "v1/processes:listScriptProcesses", + "httpMethod": "GET", + "id": "script.processes.listScriptProcesses", + "parameterOrder": [], + "parameters": { + "pageSize": { + "description": "The maximum number of returned processes per page of results. Defaults to\n50.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "The token for continuing a previous list request on the next page. This\nshould be set to the value of `nextPageToken` from a previous response.", + "location": "query", + "type": "string" + }, + "scriptId": { + "description": "The script ID of the project whose processes are listed.", + "location": "query", + "type": "string" + }, + "scriptProcessFilter.deploymentId": { + "description": "Optional field used to limit returned processes to those originating from\nprojects with a specific deployment ID.", + "location": "query", + "type": "string" + }, + "scriptProcessFilter.endTime": { + "description": "Optional field used to limit returned processes to those that completed\non or before the given timestamp.", + "format": "google-datetime", + "location": "query", + "type": "string" + }, + "scriptProcessFilter.functionName": { + "description": "Optional field used to limit returned processes to those originating from\na script function with the given function name.", + "location": "query", + "type": "string" + }, + "scriptProcessFilter.startTime": { + "description": "Optional field used to limit returned processes to those that were\nstarted on or after the given timestamp.", + "format": "google-datetime", + "location": "query", + "type": "string" + }, + "scriptProcessFilter.statuses": { + "description": "Optional field used to limit returned processes to those having one of\nthe specified process statuses.", + "enum": [ + "PROCESS_STATUS_UNSPECIFIED", + "RUNNING", + "PAUSED", + "COMPLETED", + "CANCELED", + "FAILED", + "TIMED_OUT", + "UNKNOWN", + "DELAYED" + ], + "location": "query", + "repeated": true, + "type": "string" + }, + "scriptProcessFilter.types": { + "description": "Optional field used to limit returned processes to those having one of\nthe specified process types.", + "enum": [ + "PROCESS_TYPE_UNSPECIFIED", + "ADD_ON", + "EXECUTION_API", + "TIME_DRIVEN", + "TRIGGER", + "WEBAPP", + "EDITOR" + ], + "location": "query", + "repeated": true, + "type": "string" + }, + "scriptProcessFilter.userAccessLevels": { + "description": "Optional field used to limit returned processes to those having one of\nthe specified user access levels.", + "enum": [ + "USER_ACCESS_LEVEL_UNSPECIFIED", + "NONE", + "READ", + "WRITE", + "OWNER" + ], + "location": "query", + "repeated": true, + "type": "string" + } + }, + "path": "v1/processes:listScriptProcesses", + "response": { + "$ref": "ListScriptProcessesResponse" + } + } + } + }, + "projects": { + "methods": { + "create": { + "description": "Creates a new, empty script project with no script files and a base\nmanifest file.", + "flatPath": "v1/projects", + "httpMethod": "POST", + "id": "script.projects.create", + "parameterOrder": [], + "parameters": {}, + "path": "v1/projects", + "request": { + "$ref": "CreateProjectRequest" + }, + "response": { + "$ref": "Project" + } + }, + "get": { + "description": "Gets a script project's metadata.", + "flatPath": "v1/projects/{scriptId}", + "httpMethod": "GET", + "id": "script.projects.get", "parameterOrder": [ "scriptId" ], + "parameters": { + "scriptId": { + "description": "The script project's Drive ID.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/projects/{scriptId}", + "response": { + "$ref": "Project" + } + }, + "getContent": { + "description": "Gets the content of the script project, including the code source and\nmetadata for each script file.", + "flatPath": "v1/projects/{scriptId}/content", + "httpMethod": "GET", + "id": "script.projects.getContent", + "parameterOrder": [ + "scriptId" + ], + "parameters": { + "scriptId": { + "description": "The script project's Drive ID.", + "location": "path", + "required": true, + "type": "string" + }, + "versionNumber": { + "description": "The version number of the project to retrieve. If not provided, the\nproject's HEAD version is returned.", + "format": "int32", + "location": "query", + "type": "integer" + } + }, + "path": "v1/projects/{scriptId}/content", + "response": { + "$ref": "Content" + } + }, + "getMetrics": { + "description": "Get metrics data for scripts, such as number of executions and\nactive users.", + "flatPath": "v1/projects/{scriptId}/metrics", + "httpMethod": "GET", + "id": "script.projects.getMetrics", + "parameterOrder": [ + "scriptId" + ], + "parameters": { + "metricsFilter.deploymentId": { + "description": "Optional field indicating a specific deployment to retrieve metrics from.", + "location": "query", + "type": "string" + }, + "metricsGranularity": { + "description": "Required field indicating what granularity of metrics are returned.", + "enum": [ + "UNSPECIFIED_GRANULARITY", + "WEEKLY", + "DAILY" + ], + "location": "query", + "type": "string" + }, + "scriptId": { + "description": "Required field indicating the script to get metrics for.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/projects/{scriptId}/metrics", + "response": { + "$ref": "Metrics" + } + }, + "updateContent": { + "description": "Updates the content of the specified script project.\nThis content is stored as the HEAD version, and is used when the script is\nexecuted as a trigger, in the script editor, in add-on preview mode, or as\na web app or Apps Script API in development mode. This clears all the\nexisting files in the project.", + "flatPath": "v1/projects/{scriptId}/content", + "httpMethod": "PUT", + "id": "script.projects.updateContent", + "parameterOrder": [ + "scriptId" + ], + "parameters": { + "scriptId": { + "description": "The script project's Drive ID.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/projects/{scriptId}/content", + "request": { + "$ref": "Content" + }, + "response": { + "$ref": "Content" + } + } + }, + "resources": { + "deployments": { + "methods": { + "create": { + "description": "Creates a deployment of an Apps Script project.", + "flatPath": "v1/projects/{scriptId}/deployments", + "httpMethod": "POST", + "id": "script.projects.deployments.create", + "parameterOrder": [ + "scriptId" + ], + "parameters": { + "scriptId": { + "description": "The script project's Drive ID.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/projects/{scriptId}/deployments", + "request": { + "$ref": "DeploymentConfig" + }, + "response": { + "$ref": "Deployment" + } + }, + "delete": { + "description": "Deletes a deployment of an Apps Script project.", + "flatPath": "v1/projects/{scriptId}/deployments/{deploymentId}", + "httpMethod": "DELETE", + "id": "script.projects.deployments.delete", + "parameterOrder": [ + "scriptId", + "deploymentId" + ], + "parameters": { + "deploymentId": { + "description": "The deployment ID to be undeployed.", + "location": "path", + "required": true, + "type": "string" + }, + "scriptId": { + "description": "The script project's Drive ID.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/projects/{scriptId}/deployments/{deploymentId}", + "response": { + "$ref": "Empty" + } + }, + "get": { + "description": "Gets a deployment of an Apps Script project.", + "flatPath": "v1/projects/{scriptId}/deployments/{deploymentId}", + "httpMethod": "GET", + "id": "script.projects.deployments.get", + "parameterOrder": [ + "scriptId", + "deploymentId" + ], + "parameters": { + "deploymentId": { + "description": "The deployment ID.", + "location": "path", + "required": true, + "type": "string" + }, + "scriptId": { + "description": "The script project's Drive ID.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/projects/{scriptId}/deployments/{deploymentId}", + "response": { + "$ref": "Deployment" + } + }, + "list": { + "description": "Lists the deployments of an Apps Script project.", + "flatPath": "v1/projects/{scriptId}/deployments", + "httpMethod": "GET", + "id": "script.projects.deployments.list", + "parameterOrder": [ + "scriptId" + ], + "parameters": { + "pageSize": { + "description": "The maximum number of deployments on each returned page. Defaults to 50.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "The token for continuing a previous list request on the next page. This\nshould be set to the value of `nextPageToken` from a previous response.", + "location": "query", + "type": "string" + }, + "scriptId": { + "description": "The script project's Drive ID.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/projects/{scriptId}/deployments", + "response": { + "$ref": "ListDeploymentsResponse" + } + }, + "update": { + "description": "Updates a deployment of an Apps Script project.", + "flatPath": "v1/projects/{scriptId}/deployments/{deploymentId}", + "httpMethod": "PUT", + "id": "script.projects.deployments.update", + "parameterOrder": [ + "scriptId", + "deploymentId" + ], + "parameters": { + "deploymentId": { + "description": "The deployment ID for this deployment.", + "location": "path", + "required": true, + "type": "string" + }, + "scriptId": { + "description": "The script project's Drive ID.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/projects/{scriptId}/deployments/{deploymentId}", + "request": { + "$ref": "UpdateDeploymentRequest" + }, + "response": { + "$ref": "Deployment" + } + } + } + }, + "versions": { + "methods": { + "create": { + "description": "Creates a new immutable version using the current code, with a unique\nversion number.", + "flatPath": "v1/projects/{scriptId}/versions", + "httpMethod": "POST", + "id": "script.projects.versions.create", + "parameterOrder": [ + "scriptId" + ], + "parameters": { + "scriptId": { + "description": "The script project's Drive ID.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/projects/{scriptId}/versions", + "request": { + "$ref": "Version" + }, + "response": { + "$ref": "Version" + } + }, + "get": { + "description": "Gets a version of a script project.", + "flatPath": "v1/projects/{scriptId}/versions/{versionNumber}", + "httpMethod": "GET", + "id": "script.projects.versions.get", + "parameterOrder": [ + "scriptId", + "versionNumber" + ], + "parameters": { + "scriptId": { + "description": "The script project's Drive ID.", + "location": "path", + "required": true, + "type": "string" + }, + "versionNumber": { + "description": "The version number.", + "format": "int32", + "location": "path", + "required": true, + "type": "integer" + } + }, + "path": "v1/projects/{scriptId}/versions/{versionNumber}", + "response": { + "$ref": "Version" + } + }, + "list": { + "description": "List the versions of a script project.", + "flatPath": "v1/projects/{scriptId}/versions", + "httpMethod": "GET", + "id": "script.projects.versions.list", + "parameterOrder": [ + "scriptId" + ], + "parameters": { + "pageSize": { + "description": "The maximum number of versions on each returned page. Defaults to 50.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "The token for continuing a previous list request on the next page. This\nshould be set to the value of `nextPageToken` from a previous response.", + "location": "query", + "type": "string" + }, + "scriptId": { + "description": "The script project's Drive ID.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/projects/{scriptId}/versions", + "response": { + "$ref": "ListVersionsResponse" + } + } + } + } + } + }, + "scripts": { + "methods": { + "run": { + "description": "Runs a function in an Apps Script project. The project must be deployed\nfor use with the Apps Script API.\n\nThis method requires authorization with an OAuth 2.0 token that includes at\nleast one of the scopes listed in the [Authorization](#authorization)\nsection; script projects that do not require authorization cannot be\nexecuted through this API. To find the correct scopes to include in the\nauthentication token, open the project in the script editor, then select\n**File \u003e Project properties** and click the **Scopes** tab.", + "flatPath": "v1/scripts/{scriptId}:run", "httpMethod": "POST", + "id": "script.scripts.run", + "parameterOrder": [ + "scriptId" + ], + "parameters": { + "scriptId": { + "description": "The script ID of the script to be executed. To find the script ID, open\nthe project in the script editor and select **File \u003e Project properties**.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/scripts/{scriptId}:run", + "request": { + "$ref": "ExecutionRequest" + }, + "response": { + "$ref": "Operation" + }, "scopes": [ "https://mail.google.com/", "https://www.google.com/calendar/feeds", @@ -893,682 +748,831 @@ "https://www.googleapis.com/auth/groups", "https://www.googleapis.com/auth/spreadsheets", "https://www.googleapis.com/auth/userinfo.email" - ], - "parameters": { - "scriptId": { - "description": "The script ID of the script to be executed. To find the script ID, open\nthe project in the script editor and select **File \u003e Project properties**.", - "required": true, - "type": "string", - "location": "path" - } - }, - "flatPath": "v1/scripts/{scriptId}:run", - "path": "v1/scripts/{scriptId}:run", - "id": "script.scripts.run", - "description": "Runs a function in an Apps Script project. The project must be deployed\nfor use with the Apps Script API.\n\nThis method requires authorization with an OAuth 2.0 token that includes at\nleast one of the scopes listed in the [Authorization](#authorization)\nsection; script projects that do not require authorization cannot be\nexecuted through this API. To find the correct scopes to include in the\nauthentication token, open the project in the script editor, then select\n**File \u003e Project properties** and click the **Scopes** tab.", - "request": { - "$ref": "ExecutionRequest" - } + ] } } - }, - "projects": { - "methods": { - "updateContent": { - "response": { - "$ref": "Content" + } + }, + "revision": "20180323", + "rootUrl": "https://script.googleapis.com/", + "schemas": { + "Content": { + "description": "The Content resource.", + "id": "Content", + "properties": { + "files": { + "description": "The list of script project files.\nOne of the files is a script manifest; it must be named \"appsscript\",\nmust have type of JSON, and include the manifest configurations for the\nproject.", + "items": { + "$ref": "File" }, - "parameterOrder": [ - "scriptId" - ], - "httpMethod": "PUT", - "parameters": { - "scriptId": { - "location": "path", - "description": "The script project's Drive ID.", - "required": true, - "type": "string" - } - }, - "flatPath": "v1/projects/{scriptId}/content", - "path": "v1/projects/{scriptId}/content", - "id": "script.projects.updateContent", - "request": { - "$ref": "Content" - }, - "description": "Updates the content of the specified script project.\nThis content is stored as the HEAD version, and is used when the script is\nexecuted as a trigger, in the script editor, in add-on preview mode, or as\na web app or Apps Script API in development mode. This clears all the\nexisting files in the project." + "type": "array" }, - "create": { - "path": "v1/projects", - "id": "script.projects.create", - "description": "Creates a new, empty script project with no script files and a base\nmanifest file.", - "request": { - "$ref": "CreateProjectRequest" - }, - "response": { - "$ref": "Project" - }, - "parameterOrder": [], - "httpMethod": "POST", - "parameters": {}, - "flatPath": "v1/projects" - }, - "getContent": { - "path": "v1/projects/{scriptId}/content", - "id": "script.projects.getContent", - "description": "Gets the content of the script project, including the code source and\nmetadata for each script file.", - "response": { - "$ref": "Content" - }, - "parameterOrder": [ - "scriptId" - ], - "httpMethod": "GET", - "parameters": { - "versionNumber": { - "location": "query", - "description": "The version number of the project to retrieve. If not provided, the\nproject's HEAD version is returned.", - "format": "int32", - "type": "integer" - }, - "scriptId": { - "location": "path", - "description": "The script project's Drive ID.", - "required": true, - "type": "string" - } - }, - "flatPath": "v1/projects/{scriptId}/content" - }, - "getMetrics": { - "parameters": { - "metricsFilter.deploymentId": { - "description": "Optional field indicating a specific deployment to retrieve metrics from.", - "type": "string", - "location": "query" - }, - "scriptId": { - "location": "path", - "description": "Required field indicating the script to get metrics for.", - "required": true, - "type": "string" - }, - "metricsGranularity": { - "location": "query", - "enum": [ - "UNSPECIFIED_GRANULARITY", - "WEEKLY", - "DAILY" - ], - "description": "Required field indicating what granularity of metrics are returned.", - "type": "string" - } - }, - "flatPath": "v1/projects/{scriptId}/metrics", - "path": "v1/projects/{scriptId}/metrics", - "id": "script.projects.getMetrics", - "description": "Get metrics data for scripts, such as number of executions and\nactive users.", - "response": { - "$ref": "Metrics" - }, - "parameterOrder": [ - "scriptId" - ], - "httpMethod": "GET" - }, - "get": { - "response": { - "$ref": "Project" - }, - "parameterOrder": [ - "scriptId" - ], - "httpMethod": "GET", - "parameters": { - "scriptId": { - "required": true, - "type": "string", - "location": "path", - "description": "The script project's Drive ID." - } - }, - "flatPath": "v1/projects/{scriptId}", - "path": "v1/projects/{scriptId}", - "id": "script.projects.get", - "description": "Gets a script project's metadata." + "scriptId": { + "description": "The script project's Drive ID.", + "type": "string" } }, - "resources": { + "type": "object" + }, + "CreateProjectRequest": { + "description": "Request to create a script project.", + "id": "CreateProjectRequest", + "properties": { + "parentId": { + "description": "The Drive ID of a parent file that the created script project is bound to.\nThis is usually the ID of a Google Doc, Google Sheet, Google Form, or\nGoogle Slides file. If not set, a standalone script project is created.", + "type": "string" + }, + "title": { + "description": "The title for the project.", + "type": "string" + } + }, + "type": "object" + }, + "Deployment": { + "description": "Representation of a single script deployment.", + "id": "Deployment", + "properties": { + "deploymentConfig": { + "$ref": "DeploymentConfig", + "description": "The deployment configuration." + }, + "deploymentId": { + "description": "The deployment ID for this deployment.", + "type": "string" + }, + "entryPoints": { + "description": "The deployment's entry points.", + "items": { + "$ref": "EntryPoint" + }, + "type": "array" + }, + "functionSet": { + "$ref": "GoogleAppsScriptTypeFunctionSet", + "description": "Script's defined set of functions." + }, + "scopeSet": { + "$ref": "GoogleAppsScriptTypeScopeSet", + "description": "Set of scopes required by the deployment." + }, + "updateTime": { + "description": "Last modified date time stamp.", + "format": "google-datetime", + "type": "string" + } + }, + "type": "object" + }, + "DeploymentConfig": { + "description": "Metadata the defines how a deployment is configured.", + "id": "DeploymentConfig", + "properties": { + "description": { + "description": "The description for this deployment.", + "type": "string" + }, + "manifestFileName": { + "description": "The manifest file name for this deployment.", + "type": "string" + }, + "scriptId": { + "description": "The script project's Drive ID.", + "type": "string" + }, + "versionNumber": { + "description": "The version number on which this deployment is based.", + "format": "int32", + "type": "integer" + } + }, + "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" + }, + "EntryPoint": { + "description": "A configuration that defines how a deployment is accessed externally.", + "id": "EntryPoint", + "properties": { + "addOn": { + "$ref": "GoogleAppsScriptTypeAddOnEntryPoint", + "description": "Add-on properties." + }, + "entryPointType": { + "description": "The type of the entry point.", + "enum": [ + "ENTRY_POINT_TYPE_UNSPECIFIED", + "WEB_APP", + "EXECUTION_API", + "ADD_ON" + ], + "enumDescriptions": [ + "An unspecified entry point.", + "A web application entry point.", + "An API executable entry point.", + "An Add-On entry point." + ], + "type": "string" + }, + "executionApi": { + "$ref": "GoogleAppsScriptTypeExecutionApiEntryPoint", + "description": "An entry point specification for Apps Script API execution calls." + }, + "webApp": { + "$ref": "GoogleAppsScriptTypeWebAppEntryPoint", + "description": "An entry point specification for web apps." + } + }, + "type": "object" + }, + "ExecutionError": { + "description": "An object that provides information about the nature of an error resulting\nfrom an attempted execution of a script function using the Apps Script API.\nIf a run call\nsucceeds but the script function (or Apps Script itself) throws an exception,\nthe response body's error field\ncontains a\nStatus object. The `Status` object's `details` field\ncontains an array with a single one of these `ExecutionError` objects.", + "id": "ExecutionError", + "properties": { + "errorMessage": { + "description": "The error message thrown by Apps Script, usually localized into the user's\nlanguage.", + "type": "string" + }, + "errorType": { + "description": "The error type, for example `TypeError` or `ReferenceError`. If the error\ntype is unavailable, this field is not included.", + "type": "string" + }, + "scriptStackTraceElements": { + "description": "An array of objects that provide a stack trace through the script to show\nwhere the execution failed, with the deepest call first.", + "items": { + "$ref": "ScriptStackTraceElement" + }, + "type": "array" + } + }, + "type": "object" + }, + "ExecutionRequest": { + "description": "A request to run the function in a script. The script is identified by the\nspecified `script_id`. Executing a function on a script returns results\nbased on the implementation of the script.", + "id": "ExecutionRequest", + "properties": { + "devMode": { + "description": "If `true` and the user is an owner of the script, the script runs at the\nmost recently saved version rather than the version deployed for use with\nthe Apps Script API. Optional; default is `false`.", + "type": "boolean" + }, + "function": { + "description": "The name of the function to execute in the given script. The name does not\ninclude parentheses or parameters.", + "type": "string" + }, + "parameters": { + "description": "The parameters to be passed to the function being executed. The object type\nfor each parameter should match the expected type in Apps Script.\nParameters cannot be Apps Script-specific object types (such as a\n`Document` or a `Calendar`); they can only be primitive types such as\n`string`, `number`, `array`, `object`, or `boolean`. Optional.", + "items": { + "type": "any" + }, + "type": "array" + }, + "sessionState": { + "description": "For Android add-ons only. An ID that represents the user's current session\nin the Android app for Google Docs or Sheets, included as extra data in the\n[Intent](https://developer.android.com/guide/components/intents-filters.html)\nthat launches the add-on. When an Android add-on is run with a session\nstate, it gains the privileges of a\n[bound](https://developers.google.com/apps-script/guides/bound)\nscript\u0026mdash;that is, it can access information like the user's current\ncursor position (in Docs) or selected cell (in Sheets). To retrieve the\nstate, call\n`Intent.getStringExtra(\"com.google.android.apps.docs.addons.SessionState\")`.\nOptional.", + "type": "string" + } + }, + "type": "object" + }, + "ExecutionResponse": { + "description": "An object that provides the return value of a function executed using the\nApps Script API. If the script function returns successfully, the response\nbody's response field contains this\n`ExecutionResponse` object.", + "id": "ExecutionResponse", + "properties": { + "result": { + "description": "The return value of the script function. The type matches the object type\nreturned in Apps Script. Functions called using the Apps Script API cannot\nreturn Apps Script-specific objects (such as a `Document` or a `Calendar`);\nthey can only return primitive types such as a `string`, `number`, `array`,\n`object`, or `boolean`.", + "type": "any" + } + }, + "type": "object" + }, + "File": { + "description": "An individual file within a script project.\nA file is a third-party source code created by one or more\ndevelopers. It can be a server-side JS code, HTML, or a\nconfiguration file. Each script project can contain multiple files.", + "id": "File", + "properties": { + "createTime": { + "description": "Creation date timestamp.\nThis read-only field is only visible to users who have WRITER\npermission for the script project.", + "format": "google-datetime", + "type": "string" + }, + "functionSet": { + "$ref": "GoogleAppsScriptTypeFunctionSet", + "description": "The defined set of functions in the script file, if any." + }, + "lastModifyUser": { + "$ref": "GoogleAppsScriptTypeUser", + "description": "The user who modified the file most recently.\nThis read-only field is only visible to users who have WRITER\npermission for the script project." + }, + "name": { + "description": "The name of the file. The file extension is not part of the file\nname, which can be identified from the type field.", + "type": "string" + }, + "source": { + "description": "The file content.", + "type": "string" + }, + "type": { + "description": "The type of the file.", + "enum": [ + "ENUM_TYPE_UNSPECIFIED", + "SERVER_JS", + "HTML", + "JSON" + ], + "enumDescriptions": [ + "Undetermined file type; never actually used.", + "An Apps Script server-side code file.", + "A file containing client-side HTML.", + "A file in JSON format. This type is only used for the script\nproject's manifest. The manifest file content must match the\nstructure of a valid\n[ScriptManifest](/apps-script/concepts/manifests)" + ], + "type": "string" + }, + "updateTime": { + "description": "Last modified date timestamp.\nThis read-only field is only visible to users who have WRITER\npermission for the script project.", + "format": "google-datetime", + "type": "string" + } + }, + "type": "object" + }, + "GoogleAppsScriptTypeAddOnEntryPoint": { + "description": "An add-on entry point.", + "id": "GoogleAppsScriptTypeAddOnEntryPoint", + "properties": { + "addOnType": { + "description": "The add-on's required list of supported container types.", + "enum": [ + "UNKNOWN_ADDON_TYPE", + "GMAIL", + "DATA_STUDIO" + ], + "enumDescriptions": [ + "Default value, unknown add-on type.", + "Add-on type for Gmail.", + "Add-on type for Data Studio." + ], + "type": "string" + }, + "description": { + "description": "The add-on's optional description.", + "type": "string" + }, + "helpUrl": { + "description": "The add-on's optional help URL.", + "type": "string" + }, + "postInstallTipUrl": { + "description": "The add-on's required post install tip URL.", + "type": "string" + }, + "reportIssueUrl": { + "description": "The add-on's optional report issue URL.", + "type": "string" + }, + "title": { + "description": "The add-on's required title.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleAppsScriptTypeExecutionApiConfig": { + "description": "API executable entry point configuration.", + "id": "GoogleAppsScriptTypeExecutionApiConfig", + "properties": { + "access": { + "description": "Who has permission to run the API executable.", + "enum": [ + "UNKNOWN_ACCESS", + "MYSELF", + "DOMAIN", + "ANYONE", + "ANYONE_ANONYMOUS" + ], + "enumDescriptions": [ + "Default value, should not be used.", + "Only the user who deployed the web app or executable can access it.\nNote that this is not necessarily the owner of the script project.", + "Only users in the same domain as the user who deployed the web app or\nexecutable can access it.", + "Any logged in user can access the web app or executable.", + "Any user, logged in or not, can access the web app or executable." + ], + "type": "string" + } + }, + "type": "object" + }, + "GoogleAppsScriptTypeExecutionApiEntryPoint": { + "description": "An API executable entry point.", + "id": "GoogleAppsScriptTypeExecutionApiEntryPoint", + "properties": { + "entryPointConfig": { + "$ref": "GoogleAppsScriptTypeExecutionApiConfig", + "description": "The entry point's configuration." + } + }, + "type": "object" + }, + "GoogleAppsScriptTypeFunction": { + "description": "Represents a function in a script project.", + "id": "GoogleAppsScriptTypeFunction", + "properties": { + "name": { + "description": "The function name in the script project.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleAppsScriptTypeFunctionSet": { + "description": "A set of functions. No duplicates are permitted.", + "id": "GoogleAppsScriptTypeFunctionSet", + "properties": { + "values": { + "description": "A list of functions composing the set.", + "items": { + "$ref": "GoogleAppsScriptTypeFunction" + }, + "type": "array" + } + }, + "type": "object" + }, + "GoogleAppsScriptTypeProcess": { + "description": "Representation of a single script process execution that was started from\nthe script editor, a trigger, an application, or using the Apps Script API.\nThis is distinct from the `Operation`\nresource, which only represents exeuctions started via the Apps Script API.", + "id": "GoogleAppsScriptTypeProcess", + "properties": { + "duration": { + "description": "Duration the execution spent executing.", + "format": "google-duration", + "type": "string" + }, + "executingUser": { + "description": "User-facing name for the user executing the script.", + "type": "string" + }, + "functionName": { + "description": "Name of the function the started the execution.", + "type": "string" + }, + "processStatus": { + "description": "The executions status.", + "enum": [ + "PROCESS_STATUS_UNSPECIFIED", + "RUNNING", + "PAUSED", + "COMPLETED", + "CANCELED", + "FAILED", + "TIMED_OUT", + "UNKNOWN", + "DELAYED" + ], + "enumDescriptions": [ + "Unspecified status.", + "The process is currently running.", + "The process has paused.", + "The process has completed.", + "The process was cancelled.", + "The process failed.", + "The process timed out.", + "Process status unknown.", + "The process is delayed, waiting for quota." + ], + "type": "string" + }, + "processType": { + "description": "The executions type.", + "enum": [ + "PROCESS_TYPE_UNSPECIFIED", + "ADD_ON", + "EXECUTION_API", + "TIME_DRIVEN", + "TRIGGER", + "WEBAPP", + "EDITOR" + ], + "enumDescriptions": [ + "Unspecified type.", + "The process was started from an add-on entry point.", + "The process was started using the Apps Script API.", + "The process was started from a time-based trigger.", + "The process was started from an event-based trigger.", + "The process was started from a web app entry point.", + "The process was started using the Apps Script IDE." + ], + "type": "string" + }, + "projectName": { + "description": "Name of the script being executed.", + "type": "string" + }, + "startTime": { + "description": "Time the execution started.", + "format": "google-datetime", + "type": "string" + }, + "userAccessLevel": { + "description": "The executing users access level to the script.", + "enum": [ + "USER_ACCESS_LEVEL_UNSPECIFIED", + "NONE", + "READ", + "WRITE", + "OWNER" + ], + "enumDescriptions": [ + "User access level unspecified", + "The user has no access.", + "The user has read-only access.", + "The user has write access.", + "The user is an owner." + ], + "type": "string" + } + }, + "type": "object" + }, + "GoogleAppsScriptTypeScope": { + "description": "Represents an authorization scope.", + "id": "GoogleAppsScriptTypeScope", + "properties": { + "authorizer": { + "description": "Who authorized the scope.", + "enum": [ + "SCOPE_AUTHORIZER_UNSPECIFIED", + "AUTHORIZED_BY_DEVELOPER", + "AUTHORIZED_BY_END_USER" + ], + "enumDescriptions": [ + "Authorizer unspecified.", + "Developer authorized scope.", + "End user authorized scope." + ], + "type": "string" + }, + "name": { + "description": "The scope's identifying string.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleAppsScriptTypeScopeSet": { + "description": "A set of scopes. No duplicates are permitted.", + "id": "GoogleAppsScriptTypeScopeSet", + "properties": { + "values": { + "description": "List of scope values in the set.", + "items": { + "$ref": "GoogleAppsScriptTypeScope" + }, + "type": "array" + } + }, + "type": "object" + }, + "GoogleAppsScriptTypeUser": { + "description": "A simple user profile resource.", + "id": "GoogleAppsScriptTypeUser", + "properties": { + "domain": { + "description": "The user's domain.", + "type": "string" + }, + "email": { + "description": "The user's identifying email address.", + "type": "string" + }, + "name": { + "description": "The user's display name.", + "type": "string" + }, + "photoUrl": { + "description": "The user's photo.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleAppsScriptTypeWebAppConfig": { + "description": "Web app entry point configuration.", + "id": "GoogleAppsScriptTypeWebAppConfig", + "properties": { + "access": { + "description": "Who has permission to run the web app.", + "enum": [ + "UNKNOWN_ACCESS", + "MYSELF", + "DOMAIN", + "ANYONE", + "ANYONE_ANONYMOUS" + ], + "enumDescriptions": [ + "Default value, should not be used.", + "Only the user who deployed the web app or executable can access it.\nNote that this is not necessarily the owner of the script project.", + "Only users in the same domain as the user who deployed the web app or\nexecutable can access it.", + "Any logged in user can access the web app or executable.", + "Any user, logged in or not, can access the web app or executable." + ], + "type": "string" + }, + "executeAs": { + "description": "Who to execute the web app as.", + "enum": [ + "UNKNOWN_EXECUTE_AS", + "USER_ACCESSING", + "USER_DEPLOYING" + ], + "enumDescriptions": [ + "Default value, should not be used.", + "The script runs as the user accessing the web app.", + "The script runs as the user who deployed the web app. Note that this is\nnot necessarily the owner of the script project." + ], + "type": "string" + } + }, + "type": "object" + }, + "GoogleAppsScriptTypeWebAppEntryPoint": { + "description": "A web application entry point.", + "id": "GoogleAppsScriptTypeWebAppEntryPoint", + "properties": { + "entryPointConfig": { + "$ref": "GoogleAppsScriptTypeWebAppConfig", + "description": "The entry point's configuration." + }, + "url": { + "description": "The URL for the web application.", + "type": "string" + } + }, + "type": "object" + }, + "ListDeploymentsResponse": { + "description": "Response with the list of deployments for the specified Apps Script project.", + "id": "ListDeploymentsResponse", + "properties": { "deployments": { - "methods": { - "delete": { - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "scriptId", - "deploymentId" - ], - "httpMethod": "DELETE", - "parameters": { - "deploymentId": { - "location": "path", - "description": "The deployment ID to be undeployed.", - "required": true, - "type": "string" - }, - "scriptId": { - "description": "The script project's Drive ID.", - "required": true, - "type": "string", - "location": "path" - } - }, - "flatPath": "v1/projects/{scriptId}/deployments/{deploymentId}", - "path": "v1/projects/{scriptId}/deployments/{deploymentId}", - "id": "script.projects.deployments.delete", - "description": "Deletes a deployment of an Apps Script project." - }, - "get": { - "response": { - "$ref": "Deployment" - }, - "parameterOrder": [ - "scriptId", - "deploymentId" - ], - "httpMethod": "GET", - "parameters": { - "scriptId": { - "location": "path", - "description": "The script project's Drive ID.", - "required": true, - "type": "string" - }, - "deploymentId": { - "description": "The deployment ID.", - "required": true, - "type": "string", - "location": "path" - } - }, - "flatPath": "v1/projects/{scriptId}/deployments/{deploymentId}", - "path": "v1/projects/{scriptId}/deployments/{deploymentId}", - "id": "script.projects.deployments.get", - "description": "Gets a deployment of an Apps Script project." - }, - "list": { - "path": "v1/projects/{scriptId}/deployments", - "id": "script.projects.deployments.list", - "description": "Lists the deployments of an Apps Script project.", - "response": { - "$ref": "ListDeploymentsResponse" - }, - "parameterOrder": [ - "scriptId" - ], - "httpMethod": "GET", - "parameters": { - "pageSize": { - "location": "query", - "description": "The maximum number of deployments on each returned page. Defaults to 50.", - "format": "int32", - "type": "integer" - }, - "scriptId": { - "location": "path", - "description": "The script project's Drive ID.", - "required": true, - "type": "string" - }, - "pageToken": { - "location": "query", - "description": "The token for continuing a previous list request on the next page. This\nshould be set to the value of `nextPageToken` from a previous response.", - "type": "string" - } - }, - "flatPath": "v1/projects/{scriptId}/deployments" - }, - "update": { - "path": "v1/projects/{scriptId}/deployments/{deploymentId}", - "id": "script.projects.deployments.update", - "request": { - "$ref": "UpdateDeploymentRequest" - }, - "description": "Updates a deployment of an Apps Script project.", - "response": { - "$ref": "Deployment" - }, - "parameterOrder": [ - "scriptId", - "deploymentId" - ], - "httpMethod": "PUT", - "parameters": { - "scriptId": { - "description": "The script project's Drive ID.", - "required": true, - "type": "string", - "location": "path" - }, - "deploymentId": { - "location": "path", - "description": "The deployment ID for this deployment.", - "required": true, - "type": "string" - } - }, - "flatPath": "v1/projects/{scriptId}/deployments/{deploymentId}" - }, - "create": { - "httpMethod": "POST", - "parameterOrder": [ - "scriptId" - ], - "response": { - "$ref": "Deployment" - }, - "parameters": { - "scriptId": { - "location": "path", - "description": "The script project's Drive ID.", - "required": true, - "type": "string" - } - }, - "flatPath": "v1/projects/{scriptId}/deployments", - "id": "script.projects.deployments.create", - "path": "v1/projects/{scriptId}/deployments", - "request": { - "$ref": "DeploymentConfig" - }, - "description": "Creates a deployment of an Apps Script project." - } - } + "description": "The list of deployments.", + "items": { + "$ref": "Deployment" + }, + "type": "array" + }, + "nextPageToken": { + "description": "The token that can be used in the next call to get the next page of\nresults.", + "type": "string" + } + }, + "type": "object" + }, + "ListScriptProcessesResponse": { + "description": "Response with the list of\nProcess resources.", + "id": "ListScriptProcessesResponse", + "properties": { + "nextPageToken": { + "description": "Token for the next page of results. If empty, there are no more pages\nremaining.", + "type": "string" + }, + "processes": { + "description": "List of processes matching request parameters.", + "items": { + "$ref": "GoogleAppsScriptTypeProcess" + }, + "type": "array" + } + }, + "type": "object" + }, + "ListUserProcessesResponse": { + "description": "Response with the list of\nProcess resources.", + "id": "ListUserProcessesResponse", + "properties": { + "nextPageToken": { + "description": "Token for the next page of results. If empty, there are no more pages\nremaining.", + "type": "string" + }, + "processes": { + "description": "List of processes matching request parameters.", + "items": { + "$ref": "GoogleAppsScriptTypeProcess" + }, + "type": "array" + } + }, + "type": "object" + }, + "ListVersionsResponse": { + "description": "Response with the list of the versions for the specified script project.", + "id": "ListVersionsResponse", + "properties": { + "nextPageToken": { + "description": "The token use to fetch the next page of records. if not exist in the\nresponse, that means no more versions to list.", + "type": "string" }, "versions": { - "methods": { - "create": { - "parameters": { - "scriptId": { - "description": "The script project's Drive ID.", - "required": true, - "type": "string", - "location": "path" - } - }, - "flatPath": "v1/projects/{scriptId}/versions", - "path": "v1/projects/{scriptId}/versions", - "id": "script.projects.versions.create", - "description": "Creates a new immutable version using the current code, with a unique\nversion number.", - "request": { - "$ref": "Version" - }, - "response": { - "$ref": "Version" - }, - "parameterOrder": [ - "scriptId" - ], - "httpMethod": "POST" - }, - "get": { - "response": { - "$ref": "Version" - }, - "parameterOrder": [ - "scriptId", - "versionNumber" - ], - "httpMethod": "GET", - "parameters": { - "versionNumber": { - "description": "The version number.", - "format": "int32", - "required": true, - "type": "integer", - "location": "path" - }, - "scriptId": { - "location": "path", - "description": "The script project's Drive ID.", - "required": true, - "type": "string" - } - }, - "flatPath": "v1/projects/{scriptId}/versions/{versionNumber}", - "path": "v1/projects/{scriptId}/versions/{versionNumber}", - "id": "script.projects.versions.get", - "description": "Gets a version of a script project." - }, - "list": { - "response": { - "$ref": "ListVersionsResponse" - }, - "parameterOrder": [ - "scriptId" - ], - "httpMethod": "GET", - "parameters": { - "scriptId": { - "location": "path", - "description": "The script project's Drive ID.", - "required": true, - "type": "string" - }, - "pageToken": { - "location": "query", - "description": "The token for continuing a previous list request on the next page. This\nshould be set to the value of `nextPageToken` from a previous response.", - "type": "string" - }, - "pageSize": { - "description": "The maximum number of versions on each returned page. Defaults to 50.", - "format": "int32", - "type": "integer", - "location": "query" - } - }, - "flatPath": "v1/projects/{scriptId}/versions", - "path": "v1/projects/{scriptId}/versions", - "id": "script.projects.versions.list", - "description": "List the versions of a script project." - } - } - } - } - }, - "processes": { - "methods": { - "list": { - "flatPath": "v1/processes", - "id": "script.processes.list", - "path": "v1/processes", - "description": "List information about processes made by or on behalf of a user,\nsuch as process type and current status.", - "httpMethod": "GET", - "response": { - "$ref": "ListUserProcessesResponse" + "description": "The list of versions.", + "items": { + "$ref": "Version" }, - "parameterOrder": [], - "parameters": { - "pageToken": { - "description": "The token for continuing a previous list request on the next page. This\nshould be set to the value of `nextPageToken` from a previous response.", - "type": "string", - "location": "query" - }, - "userProcessFilter.endTime": { - "type": "string", - "location": "query", - "description": "Optional field used to limit returned processes to those that completed\non or before the given timestamp.", - "format": "google-datetime" - }, - "pageSize": { - "location": "query", - "description": "The maximum number of returned processes per page of results. Defaults to\n50.", - "format": "int32", - "type": "integer" - }, - "userProcessFilter.startTime": { - "type": "string", - "location": "query", - "description": "Optional field used to limit returned processes to those that were\nstarted on or after the given timestamp.", - "format": "google-datetime" - }, - "userProcessFilter.projectName": { - "location": "query", - "description": "Optional field used to limit returned processes to those originating from\nprojects with a specific project name.", - "type": "string" - }, - "userProcessFilter.userAccessLevels": { - "description": "Optional field used to limit returned processes to those having one of\nthe specified user access levels.", - "type": "string", - "repeated": true, - "location": "query", - "enum": [ - "USER_ACCESS_LEVEL_UNSPECIFIED", - "NONE", - "READ", - "WRITE", - "OWNER" - ] - }, - "userProcessFilter.functionName": { - "description": "Optional field used to limit returned processes to those originating from\na script function with the given function name.", - "type": "string", - "location": "query" - }, - "userProcessFilter.scriptId": { - "location": "query", - "description": "Optional field used to limit returned processes to those originating from\nprojects with a specific script ID.", - "type": "string" - }, - "userProcessFilter.types": { - "description": "Optional field used to limit returned processes to those having one of\nthe specified process types.", - "type": "string", - "repeated": true, - "location": "query", - "enum": [ - "PROCESS_TYPE_UNSPECIFIED", - "ADD_ON", - "EXECUTION_API", - "TIME_DRIVEN", - "TRIGGER", - "WEBAPP", - "EDITOR" - ] - }, - "userProcessFilter.statuses": { - "description": "Optional field used to limit returned processes to those having one of\nthe specified process statuses.", - "type": "string", - "repeated": true, - "location": "query", - "enum": [ - "PROCESS_STATUS_UNSPECIFIED", - "RUNNING", - "PAUSED", - "COMPLETED", - "CANCELED", - "FAILED", - "TIMED_OUT", - "UNKNOWN" - ] - }, - "userProcessFilter.deploymentId": { - "type": "string", - "location": "query", - "description": "Optional field used to limit returned processes to those originating from\nprojects with a specific deployment ID." - } - } + "type": "array" + } + }, + "type": "object" + }, + "Metrics": { + "description": "Resource containing usage stats for a given script, based on the supplied\nfilter and mask present in the request.", + "id": "Metrics", + "properties": { + "activeUsers": { + "description": "Number of active users.", + "items": { + "$ref": "MetricsValue" + }, + "type": "array" }, - "listScriptProcesses": { - "description": "List information about a script's executed processes, such as process type\nand current status.", - "response": { - "$ref": "ListScriptProcessesResponse" + "failedExecutions": { + "description": "Number of failed executions.", + "items": { + "$ref": "MetricsValue" }, - "parameterOrder": [], - "httpMethod": "GET", - "parameters": { - "scriptProcessFilter.endTime": { - "description": "Optional field used to limit returned processes to those that completed\non or before the given timestamp.", - "format": "google-datetime", - "type": "string", - "location": "query" - }, - "scriptProcessFilter.userAccessLevels": { - "repeated": true, - "location": "query", - "enum": [ - "USER_ACCESS_LEVEL_UNSPECIFIED", - "NONE", - "READ", - "WRITE", - "OWNER" - ], - "description": "Optional field used to limit returned processes to those having one of\nthe specified user access levels.", - "type": "string" - }, - "scriptProcessFilter.statuses": { - "repeated": true, - "location": "query", - "enum": [ - "PROCESS_STATUS_UNSPECIFIED", - "RUNNING", - "PAUSED", - "COMPLETED", - "CANCELED", - "FAILED", - "TIMED_OUT", - "UNKNOWN" - ], - "description": "Optional field used to limit returned processes to those having one of\nthe specified process statuses.", - "type": "string" - }, - "scriptProcessFilter.functionName": { - "location": "query", - "description": "Optional field used to limit returned processes to those originating from\na script function with the given function name.", - "type": "string" - }, - "scriptProcessFilter.startTime": { - "location": "query", - "description": "Optional field used to limit returned processes to those that were\nstarted on or after the given timestamp.", - "format": "google-datetime", - "type": "string" - }, - "scriptProcessFilter.deploymentId": { - "location": "query", - "description": "Optional field used to limit returned processes to those originating from\nprojects with a specific deployment ID.", - "type": "string" - }, - "scriptId": { - "description": "The script ID of the project whose processes are listed.", - "type": "string", - "location": "query" - }, - "scriptProcessFilter.types": { - "description": "Optional field used to limit returned processes to those having one of\nthe specified process types.", - "type": "string", - "repeated": true, - "location": "query", - "enum": [ - "PROCESS_TYPE_UNSPECIFIED", - "ADD_ON", - "EXECUTION_API", - "TIME_DRIVEN", - "TRIGGER", - "WEBAPP", - "EDITOR" - ] - }, - "pageToken": { - "description": "The token for continuing a previous list request on the next page. This\nshould be set to the value of `nextPageToken` from a previous response.", - "type": "string", - "location": "query" - }, - "pageSize": { - "location": "query", - "description": "The maximum number of returned processes per page of results. Defaults to\n50.", - "format": "int32", - "type": "integer" - } + "type": "array" + }, + "totalExecutions": { + "description": "Number of total executions.", + "items": { + "$ref": "MetricsValue" }, - "flatPath": "v1/processes:listScriptProcesses", - "path": "v1/processes:listScriptProcesses", - "id": "script.processes.listScriptProcesses" + "type": "array" } - } + }, + "type": "object" + }, + "MetricsValue": { + "description": "Metrics value that holds number of executions counted.", + "id": "MetricsValue", + "properties": { + "endTime": { + "description": "Required field indicating the end time of the interval.", + "format": "google-datetime", + "type": "string" + }, + "startTime": { + "description": "Required field indicating the start time of the interval.", + "format": "google-datetime", + "type": "string" + }, + "value": { + "description": "Indicates the number of executions counted.", + "format": "uint64", + "type": "string" + } + }, + "type": "object" + }, + "Operation": { + "description": "A representation of a execution of an Apps Script function that is started using run. The execution response does not arrive until the function finishes executing. The maximum execution runtime is listed in the [Apps Script quotas guide](/apps-script/guides/services/quotas#current_limitations). \u003cp\u003eAfter the execution is started, it can have one of four outcomes:\u003c/p\u003e \u003cul\u003e \u003cli\u003e If the script function returns successfully, the\n response field contains an\n ExecutionResponse object\n with the function's return value in the object's `result` field.\u003c/li\u003e\n\u003cli\u003e If the script function (or Apps Script itself) throws an exception, the\n error field contains a\n Status object. The `Status` object's `details`\n field contains an array with a single\n ExecutionError object that\n provides information about the nature of the error.\u003c/li\u003e\n\u003cli\u003e If the execution has not yet completed,\n the done field is `false` and\n the neither the `response` nor `error` fields are present.\u003c/li\u003e\n\u003cli\u003e If the `run` call itself fails (for example, because of a\n malformed request or an authorization error), the method returns an HTTP\n response code in the 4XX range with a different format for the response\n body. Client libraries automatically convert a 4XX response into an\n exception class.\u003c/li\u003e\n\u003c/ul\u003e", + "id": "Operation", + "properties": { + "done": { + "description": "This field indicates whether the script execution has completed. A completed execution has a populated `response` field containing the ExecutionResponse from function that was executed.", + "type": "boolean" + }, + "error": { + "$ref": "Status", + "description": "If a `run` call succeeds but the script function (or Apps Script itself) throws an exception, this field contains a Status object. The `Status` object's `details` field contains an array with a single ExecutionError object that provides information about the nature of the error." + }, + "response": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "description": "If the script function returns successfully, this field contains an ExecutionResponse object with the function's return value.", + "type": "object" + } + }, + "type": "object" + }, + "Project": { + "description": "The script project resource.", + "id": "Project", + "properties": { + "createTime": { + "description": "When the script was created.", + "format": "google-datetime", + "type": "string" + }, + "creator": { + "$ref": "GoogleAppsScriptTypeUser", + "description": "User who originally created the script." + }, + "lastModifyUser": { + "$ref": "GoogleAppsScriptTypeUser", + "description": "User who last modified the script." + }, + "parentId": { + "description": "The parent's Drive ID that the script will be attached to. This is usually\nthe ID of a Google Document or Google Sheet. This filed is optional, and\nif not set, a stand-alone script will be created.", + "type": "string" + }, + "scriptId": { + "description": "The script project's Drive ID.", + "type": "string" + }, + "title": { + "description": "The title for the project.", + "type": "string" + }, + "updateTime": { + "description": "When the script was last updated.", + "format": "google-datetime", + "type": "string" + } + }, + "type": "object" + }, + "ScriptStackTraceElement": { + "description": "A stack trace through the script that shows where the execution failed.", + "id": "ScriptStackTraceElement", + "properties": { + "function": { + "description": "The name of the function that failed.", + "type": "string" + }, + "lineNumber": { + "description": "The line number where the script failed.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "Status": { + "description": "If a `run` call succeeds but the script function (or Apps Script itself) throws an exception, the response body's error field contains this `Status` object.", + "id": "Status", + "properties": { + "code": { + "description": "The status code. For this API, this value either: \u003cul\u003e \u003cli\u003e 3, indicating an `INVALID_ARGUMENT` error, or\u003c/li\u003e \u003cli\u003e 1, indicating a `CANCELLED` execution.\u003c/li\u003e \u003c/ul\u003e", + "format": "int32", + "type": "integer" + }, + "details": { + "description": "An array that contains a single ExecutionError object that provides information about the nature of the error.", + "items": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "A developer-facing error message, which is in English. Any user-facing error message is localized and sent in the [google.rpc.Status.details](google.rpc.Status.details) field, or localized by the client.", + "type": "string" + } + }, + "type": "object" + }, + "UpdateDeploymentRequest": { + "description": "Request with deployment information to update an existing deployment.", + "id": "UpdateDeploymentRequest", + "properties": { + "deploymentConfig": { + "$ref": "DeploymentConfig", + "description": "The deployment configuration." + } + }, + "type": "object" + }, + "Version": { + "description": "A resource representing a script project version. A version is a \"snapshot\"\nof a script project and is similar to a read-only branched release. When\ncreating deployments, the version to use must be specified.", + "id": "Version", + "properties": { + "createTime": { + "description": "When the version was created.", + "format": "google-datetime", + "type": "string" + }, + "description": { + "description": "The description for this version.", + "type": "string" + }, + "scriptId": { + "description": "The script project's Drive ID.", + "type": "string" + }, + "versionNumber": { + "description": "The incremental ID that is created by Apps Script when a version is\ncreated. This is system assigned number and is immutable once created.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" } }, - "parameters": { - "quotaUser": { - "type": "string", - "location": "query", - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters." - }, - "pp": { - "location": "query", - "description": "Pretty-print response.", - "type": "boolean", - "default": "true" - }, - "oauth_token": { - "location": "query", - "description": "OAuth 2.0 token for the current user.", - "type": "string" - }, - "bearer_token": { - "location": "query", - "description": "OAuth bearer token.", - "type": "string" - }, - "upload_protocol": { - "location": "query", - "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", - "type": "string" - }, - "prettyPrint": { - "description": "Returns response with indentations and line breaks.", - "type": "boolean", - "default": "true", - "location": "query" - }, - "fields": { - "description": "Selector specifying which fields to include in a partial response.", - "type": "string", - "location": "query" - }, - "uploadType": { - "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", - "type": "string", - "location": "query" - }, - "callback": { - "location": "query", - "description": "JSONP", - "type": "string" - }, - "$.xgafv": { - "enumDescriptions": [ - "v1 error format", - "v2 error format" - ], - "location": "query", - "enum": [ - "1", - "2" - ], - "description": "V1 error format.", - "type": "string" - }, - "alt": { - "description": "Data format for response.", - "default": "json", - "enum": [ - "json", - "media", - "proto" - ], - "type": "string", - "enumDescriptions": [ - "Responses with Content-Type of application/json", - "Media download with context-dependent Content-Type", - "Responses with Content-Type of application/x-protobuf" - ], - "location": "query" - }, - "access_token": { - "location": "query", - "description": "OAuth access token.", - "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.", - "type": "string", - "location": "query" - } - }, - "version": "v1", - "baseUrl": "https://script.googleapis.com/", "servicePath": "", - "description": "An API for managing and executing Google Apps Script projects.", - "kind": "discovery#restDescription", - "basePath": "" -} + "title": "Apps Script API", + "version": "v1" +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/script/v1/script-gen.go b/vendor/google.golang.org/api/script/v1/script-gen.go index d02b26749..fa12f6223 100644 --- a/vendor/google.golang.org/api/script/v1/script-gen.go +++ b/vendor/google.golang.org/api/script/v1/script-gen.go @@ -1,4 +1,4 @@ -// Package script provides access to the Google Apps Script API. +// Package script provides access to the Apps Script API. // // See https://developers.google.com/apps-script/api/ // @@ -834,6 +834,7 @@ type GoogleAppsScriptTypeProcess struct { // "FAILED" - The process failed. // "TIMED_OUT" - The process timed out. // "UNKNOWN" - Process status unknown. + // "DELAYED" - The process is delayed, waiting for quota. ProcessStatus string `json:"processStatus,omitempty"` // ProcessType: The executions type. @@ -1685,6 +1686,7 @@ func (c *ProcessesListCall) UserProcessFilterStartTime(userProcessFilterStartTim // "FAILED" // "TIMED_OUT" // "UNKNOWN" +// "DELAYED" func (c *ProcessesListCall) UserProcessFilterStatuses(userProcessFilterStatuses ...string) *ProcessesListCall { c.urlParams_.SetMulti("userProcessFilter.statuses", append([]string{}, userProcessFilterStatuses...)) return c @@ -1874,7 +1876,8 @@ func (c *ProcessesListCall) Do(opts ...googleapi.CallOption) (*ListUserProcesses // "CANCELED", // "FAILED", // "TIMED_OUT", - // "UNKNOWN" + // "UNKNOWN", + // "DELAYED" // ], // "location": "query", // "repeated": true, @@ -2030,6 +2033,7 @@ func (c *ProcessesListScriptProcessesCall) ScriptProcessFilterStartTime(scriptPr // "FAILED" // "TIMED_OUT" // "UNKNOWN" +// "DELAYED" func (c *ProcessesListScriptProcessesCall) ScriptProcessFilterStatuses(scriptProcessFilterStatuses ...string) *ProcessesListScriptProcessesCall { c.urlParams_.SetMulti("scriptProcessFilter.statuses", append([]string{}, scriptProcessFilterStatuses...)) return c @@ -2214,7 +2218,8 @@ func (c *ProcessesListScriptProcessesCall) Do(opts ...googleapi.CallOption) (*Li // "CANCELED", // "FAILED", // "TIMED_OUT", - // "UNKNOWN" + // "UNKNOWN", + // "DELAYED" // ], // "location": "query", // "repeated": true, diff --git a/vendor/google.golang.org/api/searchconsole/v1/searchconsole-api.json b/vendor/google.golang.org/api/searchconsole/v1/searchconsole-api.json index 86c469af7..0f14f1594 100644 --- a/vendor/google.golang.org/api/searchconsole/v1/searchconsole-api.json +++ b/vendor/google.golang.org/api/searchconsole/v1/searchconsole-api.json @@ -1,34 +1,127 @@ { - "rootUrl": "https://searchconsole.googleapis.com/", "basePath": "", - "ownerDomain": "google.com", - "name": "searchconsole", + "baseUrl": "https://searchconsole.googleapis.com/", "batchPath": "batch", - "id": "searchconsole:v1", - "documentationLink": "https://developers.google.com/webmaster-tools/search-console-api/", - "revision": "20180120", - "title": "Google Search Console URL Testing Tools API", - "ownerName": "Google", + "canonicalName": "Search Console", + "description": "Provides tools for running validation tests against single URLs", "discoveryVersion": "v1", - "version_module": true, + "documentationLink": "https://developers.google.com/webmaster-tools/search-console-api/", + "icons": { + "x16": "http://www.google.com/images/icons/product/search-16.gif", + "x32": "http://www.google.com/images/icons/product/search-32.gif" + }, + "id": "searchconsole:v1", + "kind": "discovery#restDescription", + "name": "searchconsole", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "$.xgafv": { + "description": "V1 error format.", + "enum": [ + "1", + "2" + ], + "enumDescriptions": [ + "v1 error format", + "v2 error format" + ], + "location": "query", + "type": "string" + }, + "access_token": { + "description": "OAuth access token.", + "location": "query", + "type": "string" + }, + "alt": { + "default": "json", + "description": "Data format for response.", + "enum": [ + "json", + "media", + "proto" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json", + "Media download with context-dependent Content-Type", + "Responses with Content-Type of application/x-protobuf" + ], + "location": "query", + "type": "string" + }, + "bearer_token": { + "description": "OAuth bearer token.", + "location": "query", + "type": "string" + }, + "callback": { + "description": "JSONP", + "location": "query", + "type": "string" + }, + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "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.", + "location": "query", + "type": "string" + }, + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "pp": { + "default": "true", + "description": "Pretty-print response.", + "location": "query", + "type": "boolean" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", + "location": "query", + "type": "string" + }, + "uploadType": { + "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", + "location": "query", + "type": "string" + }, + "upload_protocol": { + "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", + "location": "query", + "type": "string" + } + }, + "protocol": "rest", "resources": { "urlTestingTools": { "resources": { "mobileFriendlyTest": { "methods": { "run": { - "response": { - "$ref": "RunMobileFriendlyTestResponse" - }, - "parameterOrder": [], - "httpMethod": "POST", - "parameters": {}, - "flatPath": "v1/urlTestingTools/mobileFriendlyTest:run", - "path": "v1/urlTestingTools/mobileFriendlyTest:run", - "id": "searchconsole.urlTestingTools.mobileFriendlyTest.run", "description": "Runs Mobile-Friendly Test for a given URL.", + "flatPath": "v1/urlTestingTools/mobileFriendlyTest:run", + "httpMethod": "POST", + "id": "searchconsole.urlTestingTools.mobileFriendlyTest.run", + "parameterOrder": [], + "parameters": {}, + "path": "v1/urlTestingTools/mobileFriendlyTest:run", "request": { "$ref": "RunMobileFriendlyTestRequest" + }, + "response": { + "$ref": "RunMobileFriendlyTestResponse" } } } @@ -36,232 +129,42 @@ } } }, - "parameters": { - "pp": { - "type": "boolean", - "default": "true", - "location": "query", - "description": "Pretty-print response." - }, - "oauth_token": { - "location": "query", - "description": "OAuth 2.0 token for the current user.", - "type": "string" - }, - "bearer_token": { - "type": "string", - "location": "query", - "description": "OAuth bearer token." - }, - "upload_protocol": { - "type": "string", - "location": "query", - "description": "Upload protocol for media (e.g. \"raw\", \"multipart\")." - }, - "prettyPrint": { - "location": "query", - "description": "Returns response with indentations and line breaks.", - "type": "boolean", - "default": "true" - }, - "fields": { - "type": "string", - "location": "query", - "description": "Selector specifying which fields to include in a partial response." - }, - "uploadType": { - "location": "query", - "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", - "type": "string" - }, - "$.xgafv": { - "type": "string", - "enumDescriptions": [ - "v1 error format", - "v2 error format" - ], - "location": "query", - "enum": [ - "1", - "2" - ], - "description": "V1 error format." - }, - "callback": { - "location": "query", - "description": "JSONP", - "type": "string" - }, - "alt": { - "enum": [ - "json", - "media", - "proto" - ], - "type": "string", - "enumDescriptions": [ - "Responses with Content-Type of application/json", - "Media download with context-dependent Content-Type", - "Responses with Content-Type of application/x-protobuf" - ], - "location": "query", - "description": "Data format for response.", - "default": "json" - }, - "access_token": { - "location": "query", - "description": "OAuth access token.", - "type": "string" - }, - "key": { - "type": "string", - "location": "query", - "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." - }, - "quotaUser": { - "location": "query", - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", - "type": "string" - } - }, + "revision": "20180203", + "rootUrl": "https://searchconsole.googleapis.com/", "schemas": { - "RunMobileFriendlyTestResponse": { - "description": "Mobile-friendly test response, including mobile-friendly issues and resource\nissues.", - "type": "object", - "properties": { - "mobileFriendlyIssues": { - "type": "array", - "items": { - "$ref": "MobileFriendlyIssue" - }, - "description": "List of mobile-usability issues." - }, - "screenshot": { - "$ref": "Image", - "description": "Screenshot of the requested URL." - }, - "testStatus": { - "$ref": "TestStatus", - "description": "Final state of the test, can be either complete or an error." - }, - "resourceIssues": { - "description": "Information about embedded resources issues.", - "type": "array", - "items": { - "$ref": "ResourceIssue" - } - }, - "mobileFriendliness": { - "enum": [ - "MOBILE_FRIENDLY_TEST_RESULT_UNSPECIFIED", - "MOBILE_FRIENDLY", - "NOT_MOBILE_FRIENDLY" - ], - "description": "Test verdict, whether the page is mobile friendly or not.", - "type": "string", - "enumDescriptions": [ - "Internal error when running this test. Please try running the test again.", - "The page is mobile friendly.", - "The page is not mobile friendly." - ] - } - }, - "id": "RunMobileFriendlyTestResponse" - }, - "ResourceIssue": { - "description": "Information about a resource with issue.", - "type": "object", - "properties": { - "blockedResource": { - "$ref": "BlockedResource", - "description": "Describes a blocked resource issue." - } - }, - "id": "ResourceIssue" - }, "BlockedResource": { - "type": "object", + "description": "Blocked resource.", + "id": "BlockedResource", "properties": { "url": { "description": "URL of the blocked resource.", "type": "string" } }, - "id": "BlockedResource", - "description": "Blocked resource." - }, - "TestStatus": { - "type": "object", - "properties": { - "status": { - "type": "string", - "enumDescriptions": [ - "Internal error when running this test. Please try running the test again.", - "Inspection has completed without errors.", - "Inspection terminated in an error state. This indicates a problem in\nGoogle's infrastructure, not a user error. Please try again later.", - "Google can not access the URL because of a user error such as a robots.txt\nblockage, a 403 or 500 code etc. Please make sure that the URL provided is\naccessible by Googlebot and is not password protected." - ], - "enum": [ - "TEST_STATUS_UNSPECIFIED", - "COMPLETE", - "INTERNAL_ERROR", - "PAGE_UNREACHABLE" - ], - "description": "Status of the test." - }, - "details": { - "description": "Error details if applicable.", - "type": "string" - } - }, - "id": "TestStatus", - "description": "Final state of the test, including error details if necessary." - }, - "RunMobileFriendlyTestRequest": { - "type": "object", - "properties": { - "url": { - "type": "string", - "description": "URL for inspection." - }, - "requestScreenshot": { - "type": "boolean", - "description": "Whether or not screenshot is requested. Default is false." - } - }, - "id": "RunMobileFriendlyTestRequest", - "description": "Mobile-friendly test request." + "type": "object" }, "Image": { "description": "Describe image data.", - "type": "object", + "id": "Image", "properties": { - "mimeType": { - "type": "string", - "description": "The mime-type of the image data." - }, "data": { "description": "Image data in format determined by the mime type. Currently, the format\nwill always be \"image/png\", but this might change in the future.", "format": "byte", "type": "string" + }, + "mimeType": { + "description": "The mime-type of the image data.", + "type": "string" } }, - "id": "Image" + "type": "object" }, "MobileFriendlyIssue": { - "type": "object", + "description": "Mobile-friendly issue.", + "id": "MobileFriendlyIssue", "properties": { "rule": { - "type": "string", - "enumDescriptions": [ - "Unknown rule. Sorry, we don't have any description for the rule that was\nbroken.", - "Plugins incompatible with mobile devices are being used. [Learn more]\n(https://support.google.com/webmasters/answer/6352293#flash_usage).", - "Viewsport is not specified using the meta viewport tag. [Learn more]\n(https://support.google.com/webmasters/answer/6352293#viewport_not_configured).", - "Viewport defined to a fixed width. [Learn more]\n(https://support.google.com/webmasters/answer/6352293#fixed-width_viewport).", - "Content not sized to viewport. [Learn more]\n(https://support.google.com/webmasters/answer/6352293#content_not_sized_to_viewport).", - "Font size is too small for easy reading on a small screen. [Learn More]\n(https://support.google.com/webmasters/answer/6352293#small_font_size).", - "Touch elements are too close to each other. [Learn more]\n(https://support.google.com/webmasters/answer/6352293#touch_elements_too_close)." - ], + "description": "Rule violated.", "enum": [ "MOBILE_FRIENDLY_RULE_UNSPECIFIED", "USES_INCOMPATIBLE_PLUGINS", @@ -271,22 +174,119 @@ "USE_LEGIBLE_FONT_SIZES", "TAP_TARGETS_TOO_CLOSE" ], - "description": "Rule violated." + "enumDescriptions": [ + "Unknown rule. Sorry, we don't have any description for the rule that was\nbroken.", + "Plugins incompatible with mobile devices are being used. [Learn more]\n(https://support.google.com/webmasters/answer/6352293#flash_usage).", + "Viewsport is not specified using the meta viewport tag. [Learn more]\n(https://support.google.com/webmasters/answer/6352293#viewport_not_configured).", + "Viewport defined to a fixed width. [Learn more]\n(https://support.google.com/webmasters/answer/6352293#fixed-width_viewport).", + "Content not sized to viewport. [Learn more]\n(https://support.google.com/webmasters/answer/6352293#content_not_sized_to_viewport).", + "Font size is too small for easy reading on a small screen. [Learn More]\n(https://support.google.com/webmasters/answer/6352293#small_font_size).", + "Touch elements are too close to each other. [Learn more]\n(https://support.google.com/webmasters/answer/6352293#touch_elements_too_close)." + ], + "type": "string" } }, - "id": "MobileFriendlyIssue", - "description": "Mobile-friendly issue." + "type": "object" + }, + "ResourceIssue": { + "description": "Information about a resource with issue.", + "id": "ResourceIssue", + "properties": { + "blockedResource": { + "$ref": "BlockedResource", + "description": "Describes a blocked resource issue." + } + }, + "type": "object" + }, + "RunMobileFriendlyTestRequest": { + "description": "Mobile-friendly test request.", + "id": "RunMobileFriendlyTestRequest", + "properties": { + "requestScreenshot": { + "description": "Whether or not screenshot is requested. Default is false.", + "type": "boolean" + }, + "url": { + "description": "URL for inspection.", + "type": "string" + } + }, + "type": "object" + }, + "RunMobileFriendlyTestResponse": { + "description": "Mobile-friendly test response, including mobile-friendly issues and resource\nissues.", + "id": "RunMobileFriendlyTestResponse", + "properties": { + "mobileFriendliness": { + "description": "Test verdict, whether the page is mobile friendly or not.", + "enum": [ + "MOBILE_FRIENDLY_TEST_RESULT_UNSPECIFIED", + "MOBILE_FRIENDLY", + "NOT_MOBILE_FRIENDLY" + ], + "enumDescriptions": [ + "Internal error when running this test. Please try running the test again.", + "The page is mobile friendly.", + "The page is not mobile friendly." + ], + "type": "string" + }, + "mobileFriendlyIssues": { + "description": "List of mobile-usability issues.", + "items": { + "$ref": "MobileFriendlyIssue" + }, + "type": "array" + }, + "resourceIssues": { + "description": "Information about embedded resources issues.", + "items": { + "$ref": "ResourceIssue" + }, + "type": "array" + }, + "screenshot": { + "$ref": "Image", + "description": "Screenshot of the requested URL." + }, + "testStatus": { + "$ref": "TestStatus", + "description": "Final state of the test, can be either complete or an error." + } + }, + "type": "object" + }, + "TestStatus": { + "description": "Final state of the test, including error details if necessary.", + "id": "TestStatus", + "properties": { + "details": { + "description": "Error details if applicable.", + "type": "string" + }, + "status": { + "description": "Status of the test.", + "enum": [ + "TEST_STATUS_UNSPECIFIED", + "COMPLETE", + "INTERNAL_ERROR", + "PAGE_UNREACHABLE" + ], + "enumDescriptions": [ + "Internal error when running this test. Please try running the test again.", + "Inspection has completed without errors.", + "Inspection terminated in an error state. This indicates a problem in\nGoogle's infrastructure, not a user error. Please try again later.", + "Google can not access the URL because of a user error such as a robots.txt\nblockage, a 403 or 500 code etc. Please make sure that the URL provided is\naccessible by Googlebot and is not password protected." + ], + "type": "string" + } + }, + "type": "object" } }, - "protocol": "rest", - "icons": { - "x16": "http://www.google.com/images/icons/product/search-16.gif", - "x32": "http://www.google.com/images/icons/product/search-32.gif" - }, + "servicePath": "", + "title": "Google Search Console URL Testing Tools API", "version": "v1", - "baseUrl": "https://searchconsole.googleapis.com/", - "canonicalName": "Search Console", - "kind": "discovery#restDescription", - "description": "Provides tools for running validation tests against single URLs", - "servicePath": "" -} + "version_module": true +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/serviceconsumermanagement/v1/serviceconsumermanagement-api.json b/vendor/google.golang.org/api/serviceconsumermanagement/v1/serviceconsumermanagement-api.json index dd6c95e9d..4f805136b 100644 --- a/vendor/google.golang.org/api/serviceconsumermanagement/v1/serviceconsumermanagement-api.json +++ b/vendor/google.golang.org/api/serviceconsumermanagement/v1/serviceconsumermanagement-api.json @@ -1,1278 +1,534 @@ { - "fullyEncodeReservedExpansion": true, - "title": "Service Consumer Management API", - "ownerName": "Google", - "resources": { - "services": { - "methods": { - "search": { - "description": "Search tenancy units for a service.", - "httpMethod": "GET", - "response": { - "$ref": "SearchTenancyUnitsResponse" - }, - "parameterOrder": [ - "parent" - ], - "parameters": { - "pageToken": { - "description": "The continuation token, which is used to page through large result sets.\nTo get the next page of results, set this parameter to the value of\n`nextPageToken` from the previous response.\n\nOptional.", - "type": "string", - "location": "query" - }, - "pageSize": { - "description": "The maximum number of results returned by this request. Currently, the\ndefault maximum is set to 1000. If page_size is not provided or provided a\nnumber larger than 1000, it will be automatically set to 1000.\n\nOptional.", - "format": "int32", - "type": "integer", - "location": "query" - }, - "query": { - "description": "Set a query `{expression}` for querying tenancy units. Your `{expression}`\nmust be in the format: `field_name=literal_string`. The `field_name` is the\nname of the field you want to compare. Supported fields are\n`tenant_resources.tag` and`tenant_resources.resource`.\n\nFor example, to search tenancy units that contain at least one tenant\nresource with given tag 'xyz', use query `tenant_resources.tag=xyz`.\nTo search tenancy units that contain at least one tenant resource with\ngiven resource name 'projects/123456', use query\n`tenant_resources.resource=projects/123456`.\n\nMultiple expressions can be joined with `AND`s. Tenancy units must match\nall expressions to be included in the result set. For example,\n`tenant_resources.tag=xyz AND tenant_resources.resource=projects/123456`\n\nOptional.", - "type": "string", - "location": "query" - }, - "parent": { - "location": "path", - "description": "Service for which search is performed.\nservices/{service}\n{service} the name of a service, for example 'service.googleapis.com'.", - "required": true, - "type": "string", - "pattern": "^services/[^/]+$" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/services/{servicesId}:search", - "id": "serviceconsumermanagement.services.search", - "path": "v1/{+parent}:search" - } - }, - "resources": { - "tenancyUnits": { - "methods": { - "removeProject": { - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "name": { - "description": "Name of the tenancy unit.\nSuch as 'services/service.googleapis.com/projects/12345/tenancyUnits/abcd'.", - "required": true, - "type": "string", - "pattern": "^services/[^/]+/[^/]+/[^/]+/tenancyUnits/[^/]+$", - "location": "path" - } - }, - "flatPath": "v1/services/{servicesId}/{servicesId1}/{servicesId2}/tenancyUnits/{tenancyUnitsId}:removeProject", - "path": "v1/{+name}:removeProject", - "id": "serviceconsumermanagement.services.tenancyUnits.removeProject", - "description": "Removes specified project resource identified by tenant resource tag.\nIt will remove project lien with 'TenantManager' origin if that was added.\nIt will then attempt to delete the project.\nIf that operation fails, this method fails.\nOperation\u003cresponse: Empty\u003e.", - "request": { - "$ref": "RemoveTenantProjectRequest" - } - }, - "delete": { - "flatPath": "v1/services/{servicesId}/{servicesId1}/{servicesId2}/tenancyUnits/{tenancyUnitsId}", - "id": "serviceconsumermanagement.services.tenancyUnits.delete", - "path": "v1/{+name}", - "description": "Delete tenancy unit. Before the tenancy unit is deleted, there should be\nno tenant resource in it.\nOperation\u003cresponse: Empty\u003e.", - "httpMethod": "DELETE", - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "name" - ], - "parameters": { - "name": { - "description": "Name of the tenancy unit to be deleted.", - "required": true, - "type": "string", - "pattern": "^services/[^/]+/[^/]+/[^/]+/tenancyUnits/[^/]+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "addProject": { - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "POST", - "parameters": { - "parent": { - "location": "path", - "description": "Name of the tenancy unit.", - "required": true, - "type": "string", - "pattern": "^services/[^/]+/[^/]+/[^/]+/tenancyUnits/[^/]+$" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/services/{servicesId}/{servicesId1}/{servicesId2}/tenancyUnits/{tenancyUnitsId}:addProject", - "path": "v1/{+parent}:addProject", - "id": "serviceconsumermanagement.services.tenancyUnits.addProject", - "request": { - "$ref": "AddTenantProjectRequest" - }, - "description": "Add a new tenant project to the tenancy unit.\nThere can be at most 512 tenant projects in a tenancy units.\nIf there are previously failed AddTenantProject calls, you might need to\ncall RemoveTenantProject first to clean them before you can make another\nAddTenantProject with the same tag.\nOperation\u003cresponse: Empty\u003e." - }, - "list": { - "description": "Find tenancy unit for a service and consumer.\nThis method should not be used in producers' runtime path, e.g. finding\nthe tenant project number when creating VMs. Producers should persist\nthe tenant project information after the project is created.", - "response": { - "$ref": "ListTenancyUnitsResponse" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "filter": { - "description": "Filter expression over tenancy resources field. Optional.", - "type": "string", - "location": "query" - }, - "pageToken": { - "location": "query", - "description": "The continuation token, which is used to page through large result sets.\nTo get the next page of results, set this parameter to the value of\n`nextPageToken` from the previous response.", - "type": "string" - }, - "pageSize": { - "description": "The maximum number of results returned by this request.", - "format": "int32", - "type": "integer", - "location": "query" - }, - "parent": { - "location": "path", - "description": "Service and consumer. Required.\nservices/{service}/{collection id}/{resource id}\n{collection id} is the cloud resource collection type representing the\nservice consumer, for example 'projects', or 'organizations'.\n{resource id} is the consumer numeric id, such as project number: '123456'.\n{service} the name of a service, for example 'service.googleapis.com'.", - "required": true, - "type": "string", - "pattern": "^services/[^/]+/[^/]+/[^/]+$" - } - }, - "flatPath": "v1/services/{servicesId}/{servicesId1}/{servicesId2}/tenancyUnits", - "path": "v1/{+parent}/tenancyUnits", - "id": "serviceconsumermanagement.services.tenancyUnits.list" - }, - "create": { - "description": "Creates a tenancy unit with no tenant resources.", - "request": { - "$ref": "CreateTenancyUnitRequest" - }, - "response": { - "$ref": "TenancyUnit" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "parent": { - "description": "services/{service}/{collection id}/{resource id}\n{collection id} is the cloud resource collection type representing the\nservice consumer, for example 'projects', or 'organizations'.\n{resource id} is the consumer numeric id, such as project number: '123456'.\n{service} the name of a service, for example 'service.googleapis.com'.\nEnabled service binding using the new tenancy unit.", - "required": true, - "type": "string", - "pattern": "^services/[^/]+/[^/]+/[^/]+$", - "location": "path" - } - }, - "flatPath": "v1/services/{servicesId}/{servicesId1}/{servicesId2}/tenancyUnits", - "path": "v1/{+parent}/tenancyUnits", - "id": "serviceconsumermanagement.services.tenancyUnits.create" - } - } + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/cloud-platform": { + "description": "View and manage your data across Google Cloud Platform services" + }, + "https://www.googleapis.com/auth/service.management": { + "description": "Manage your Google API service configuration" } } + } + }, + "basePath": "", + "baseUrl": "https://serviceconsumermanagement.googleapis.com/", + "batchPath": "batch", + "canonicalName": "Service Consumer Management", + "description": "Provides management methods for configuring service producer resources on Google Cloud.", + "discoveryVersion": "v1", + "documentationLink": "https://cloud.google.com/service-consumer-management/docs/overview", + "fullyEncodeReservedExpansion": true, + "icons": { + "x16": "http://www.google.com/images/icons/product/search-16.gif", + "x32": "http://www.google.com/images/icons/product/search-32.gif" + }, + "id": "serviceconsumermanagement:v1", + "kind": "discovery#restDescription", + "name": "serviceconsumermanagement", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "$.xgafv": { + "description": "V1 error format.", + "enum": [ + "1", + "2" + ], + "enumDescriptions": [ + "v1 error format", + "v2 error format" + ], + "location": "query", + "type": "string" }, + "access_token": { + "description": "OAuth access token.", + "location": "query", + "type": "string" + }, + "alt": { + "default": "json", + "description": "Data format for response.", + "enum": [ + "json", + "media", + "proto" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json", + "Media download with context-dependent Content-Type", + "Responses with Content-Type of application/x-protobuf" + ], + "location": "query", + "type": "string" + }, + "bearer_token": { + "description": "OAuth bearer token.", + "location": "query", + "type": "string" + }, + "callback": { + "description": "JSONP", + "location": "query", + "type": "string" + }, + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "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.", + "location": "query", + "type": "string" + }, + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "pp": { + "default": "true", + "description": "Pretty-print response.", + "location": "query", + "type": "boolean" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", + "location": "query", + "type": "string" + }, + "uploadType": { + "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", + "location": "query", + "type": "string" + }, + "upload_protocol": { + "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", + "location": "query", + "type": "string" + } + }, + "protocol": "rest", + "resources": { "operations": { "methods": { - "list": { - "flatPath": "v1/operations", - "path": "v1/{+name}", - "id": "serviceconsumermanagement.operations.list", - "description": "Lists operations that match the specified filter in the request. If the\nserver doesn't support this method, it returns `UNIMPLEMENTED`.\n\nNOTE: the `name` binding allows API services to override the binding\nto use different resource name schemes, such as `users/*/operations`. To\noverride the binding, API services can add a binding such as\n`\"/v1/{name=users/*}/operations\"` to their service configuration.\nFor backwards compatibility, the default name includes the operations\ncollection id, however overriding users must ensure the name binding\nis the parent resource, without the operations collection id.", - "response": { - "$ref": "ListOperationsResponse" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/service.management" - ], - "parameters": { - "filter": { - "description": "The standard list filter.", - "type": "string", - "location": "query" - }, - "name": { - "location": "path", - "description": "The name of the operation's parent resource.", - "required": true, - "type": "string", - "pattern": "^operations$" - }, - "pageToken": { - "description": "The standard list page token.", - "type": "string", - "location": "query" - }, - "pageSize": { - "location": "query", - "description": "The standard list page size.", - "format": "int32", - "type": "integer" - } - } - }, - "get": { - "description": "Gets the latest state of a long-running operation. Clients can use this\nmethod to poll the operation result at intervals as recommended by the API\nservice.", - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/service.management" - ], - "parameters": { - "name": { - "location": "path", - "description": "The name of the operation resource.", - "required": true, - "type": "string", - "pattern": "^operations/[^/]+$" - } - }, - "flatPath": "v1/operations/{operationsId}", - "path": "v1/{+name}", - "id": "serviceconsumermanagement.operations.get" - }, "cancel": { "description": "Starts asynchronous cancellation on a long-running operation. The server\nmakes a best effort to cancel the operation, but success is not\nguaranteed. If the server doesn't support this method, it returns\n`google.rpc.Code.UNIMPLEMENTED`. Clients can use\nOperations.GetOperation or\nother methods to check whether the cancellation succeeded or whether the\noperation completed despite cancellation. On successful cancellation,\nthe operation is not deleted; instead, it becomes an operation with\nan Operation.error value with a google.rpc.Status.code of 1,\ncorresponding to `Code.CANCELLED`.", + "flatPath": "v1/operations/{operationsId}:cancel", + "httpMethod": "POST", + "id": "serviceconsumermanagement.operations.cancel", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource to be cancelled.", + "location": "path", + "pattern": "^operations/.+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}:cancel", "request": { "$ref": "CancelOperationRequest" }, "response": { "$ref": "Empty" }, - "parameterOrder": [ - "name" - ], - "httpMethod": "POST", "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/service.management" + ] + }, + "delete": { + "description": "Deletes a long-running operation. This method indicates that the client is\nno longer interested in the operation result. It does not cancel the\noperation. If the server doesn't support this method, it returns\n`google.rpc.Code.UNIMPLEMENTED`.", + "flatPath": "v1/operations/{operationsId}", + "httpMethod": "DELETE", + "id": "serviceconsumermanagement.operations.delete", + "parameterOrder": [ + "name" ], "parameters": { "name": { + "description": "The name of the operation resource to be deleted.", "location": "path", - "description": "The name of the operation resource to be cancelled.", + "pattern": "^operations/.+$", "required": true, - "type": "string", - "pattern": "^operations/.+$" + "type": "string" } }, - "flatPath": "v1/operations/{operationsId}:cancel", - "path": "v1/{+name}:cancel", - "id": "serviceconsumermanagement.operations.cancel" - }, - "delete": { - "flatPath": "v1/operations/{operationsId}", "path": "v1/{+name}", - "id": "serviceconsumermanagement.operations.delete", - "description": "Deletes a long-running operation. This method indicates that the client is\nno longer interested in the operation result. It does not cancel the\noperation. If the server doesn't support this method, it returns\n`google.rpc.Code.UNIMPLEMENTED`.", "response": { "$ref": "Empty" }, - "parameterOrder": [ - "name" - ], - "httpMethod": "DELETE", "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/service.management" + ] + }, + "get": { + "description": "Gets the latest state of a long-running operation. Clients can use this\nmethod to poll the operation result at intervals as recommended by the API\nservice.", + "flatPath": "v1/operations/{operationsId}", + "httpMethod": "GET", + "id": "serviceconsumermanagement.operations.get", + "parameterOrder": [ + "name" ], "parameters": { "name": { + "description": "The name of the operation resource.", "location": "path", - "description": "The name of the operation resource to be deleted.", + "pattern": "^operations/[^/]+$", "required": true, - "type": "string", - "pattern": "^operations/.+$" + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/service.management" + ] + }, + "list": { + "description": "Lists operations that match the specified filter in the request. If the\nserver doesn't support this method, it returns `UNIMPLEMENTED`.\n\nNOTE: the `name` binding allows API services to override the binding\nto use different resource name schemes, such as `users/*/operations`. To\noverride the binding, API services can add a binding such as\n`\"/v1/{name=users/*}/operations\"` to their service configuration.\nFor backwards compatibility, the default name includes the operations\ncollection id, however overriding users must ensure the name binding\nis the parent resource, without the operations collection id.", + "flatPath": "v1/operations", + "httpMethod": "GET", + "id": "serviceconsumermanagement.operations.list", + "parameterOrder": [ + "name" + ], + "parameters": { + "filter": { + "description": "The standard list filter.", + "location": "query", + "type": "string" + }, + "name": { + "description": "The name of the operation's parent resource.", + "location": "path", + "pattern": "^operations$", + "required": true, + "type": "string" + }, + "pageSize": { + "description": "The standard list page size.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "The standard list page token.", + "location": "query", + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "ListOperationsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/service.management" + ] + } + } + }, + "services": { + "methods": { + "search": { + "description": "Search tenancy units for a service.", + "flatPath": "v1/services/{servicesId}:search", + "httpMethod": "GET", + "id": "serviceconsumermanagement.services.search", + "parameterOrder": [ + "parent" + ], + "parameters": { + "pageSize": { + "description": "The maximum number of results returned by this request. Currently, the\ndefault maximum is set to 1000. If page_size is not provided or the size\nprovided is a number larger than 1000, it will be automatically set to\n1000.\n\nOptional.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "The continuation token, which is used to page through large result sets.\nTo get the next page of results, set this parameter to the value of\n`nextPageToken` from the previous response.\n\nOptional.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Service for which search is performed.\nservices/{service}\n{service} the name of a service, for example 'service.googleapis.com'.", + "location": "path", + "pattern": "^services/[^/]+$", + "required": true, + "type": "string" + }, + "query": { + "description": "Set a query `{expression}` for querying tenancy units. Your `{expression}`\nmust be in the format: `field_name=literal_string`. The `field_name` is the\nname of the field you want to compare. Supported fields are\n`tenant_resources.tag` and `tenant_resources.resource`.\n\nFor example, to search tenancy units that contain at least one tenant\nresource with given tag 'xyz', use query `tenant_resources.tag=xyz`.\nTo search tenancy units that contain at least one tenant resource with\ngiven resource name 'projects/123456', use query\n`tenant_resources.resource=projects/123456`.\n\nMultiple expressions can be joined with `AND`s. Tenancy units must match\nall expressions to be included in the result set. For example,\n`tenant_resources.tag=xyz AND tenant_resources.resource=projects/123456`\n\nOptional.", + "location": "query", + "type": "string" + } + }, + "path": "v1/{+parent}:search", + "response": { + "$ref": "SearchTenancyUnitsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + }, + "resources": { + "tenancyUnits": { + "methods": { + "addProject": { + "description": "Add a new tenant project to the tenancy unit.\nThere can be at most 512 tenant projects in a tenancy unit.\nIf there are previously failed `AddTenantProject` calls, you might need to\ncall `RemoveTenantProject` first to clean them before you can make another\n`AddTenantProject` with the same tag.\nOperation\u003cresponse: Empty\u003e.", + "flatPath": "v1/services/{servicesId}/{servicesId1}/{servicesId2}/tenancyUnits/{tenancyUnitsId}:addProject", + "httpMethod": "POST", + "id": "serviceconsumermanagement.services.tenancyUnits.addProject", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Name of the tenancy unit.", + "location": "path", + "pattern": "^services/[^/]+/[^/]+/[^/]+/tenancyUnits/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+parent}:addProject", + "request": { + "$ref": "AddTenantProjectRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "create": { + "description": "Creates a tenancy unit with no tenant resources.", + "flatPath": "v1/services/{servicesId}/{servicesId1}/{servicesId2}/tenancyUnits", + "httpMethod": "POST", + "id": "serviceconsumermanagement.services.tenancyUnits.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "services/{service}/{collection id}/{resource id}\n{collection id} is the cloud resource collection type representing the\nservice consumer, for example 'projects', or 'organizations'.\n{resource id} is the consumer numeric id, such as project number: '123456'.\n{service} the name of a service, for example 'service.googleapis.com'.\nEnabled service binding using the new tenancy unit.", + "location": "path", + "pattern": "^services/[^/]+/[^/]+/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+parent}/tenancyUnits", + "request": { + "$ref": "CreateTenancyUnitRequest" + }, + "response": { + "$ref": "TenancyUnit" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Delete a tenancy unit. Before the tenancy unit is deleted, there should be\nno tenant resources in it.\nOperation\u003cresponse: Empty\u003e.", + "flatPath": "v1/services/{servicesId}/{servicesId1}/{servicesId2}/tenancyUnits/{tenancyUnitsId}", + "httpMethod": "DELETE", + "id": "serviceconsumermanagement.services.tenancyUnits.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Name of the tenancy unit to be deleted.", + "location": "path", + "pattern": "^services/[^/]+/[^/]+/[^/]+/tenancyUnits/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Find the tenancy unit for a service and consumer.\nThis method should not be used in producers' runtime path, for example\nfinding the tenant project number when creating VMs. Producers should\npersist the tenant project information after the project is created.", + "flatPath": "v1/services/{servicesId}/{servicesId1}/{servicesId2}/tenancyUnits", + "httpMethod": "GET", + "id": "serviceconsumermanagement.services.tenancyUnits.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "filter": { + "description": "Filter expression over tenancy resources field. Optional.", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "The maximum number of results returned by this request.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "The continuation token, which is used to page through large result sets.\nTo get the next page of results, set this parameter to the value of\n`nextPageToken` from the previous response.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Service and consumer. Required.\nservices/{service}/{collection id}/{resource id}\n{collection id} is the cloud resource collection type representing the\nservice consumer, for example 'projects', or 'organizations'.\n{resource id} is the consumer numeric id, such as project number: '123456'.\n{service} the name of a service, for example 'service.googleapis.com'.", + "location": "path", + "pattern": "^services/[^/]+/[^/]+/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+parent}/tenancyUnits", + "response": { + "$ref": "ListTenancyUnitsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "removeProject": { + "description": "Removes specified project resource identified by tenant resource tag.\nIt will remove project lien with 'TenantManager' origin if that was added.\nIt will then attempt to delete the project.\nIf that operation fails, this method fails.\nOperation\u003cresponse: Empty\u003e.", + "flatPath": "v1/services/{servicesId}/{servicesId1}/{servicesId2}/tenancyUnits/{tenancyUnitsId}:removeProject", + "httpMethod": "POST", + "id": "serviceconsumermanagement.services.tenancyUnits.removeProject", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Name of the tenancy unit.\nSuch as 'services/service.googleapis.com/projects/12345/tenancyUnits/abcd'.", + "location": "path", + "pattern": "^services/[^/]+/[^/]+/[^/]+/tenancyUnits/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}:removeProject", + "request": { + "$ref": "RemoveTenantProjectRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] } } } } } }, - "parameters": { - "pp": { - "location": "query", - "description": "Pretty-print response.", - "type": "boolean", - "default": "true" - }, - "bearer_token": { - "location": "query", - "description": "OAuth bearer token.", - "type": "string" - }, - "oauth_token": { - "location": "query", - "description": "OAuth 2.0 token for the current user.", - "type": "string" - }, - "upload_protocol": { - "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", - "type": "string", - "location": "query" - }, - "prettyPrint": { - "location": "query", - "description": "Returns response with indentations and line breaks.", - "type": "boolean", - "default": "true" - }, - "uploadType": { - "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", - "type": "string", - "location": "query" - }, - "fields": { - "description": "Selector specifying which fields to include in a partial response.", - "type": "string", - "location": "query" - }, - "callback": { - "description": "JSONP", - "type": "string", - "location": "query" - }, - "$.xgafv": { - "enumDescriptions": [ - "v1 error format", - "v2 error format" - ], - "location": "query", - "enum": [ - "1", - "2" - ], - "description": "V1 error format.", - "type": "string" - }, - "alt": { - "description": "Data format for response.", - "default": "json", - "enum": [ - "json", - "media", - "proto" - ], - "type": "string", - "enumDescriptions": [ - "Responses with Content-Type of application/json", - "Media download with context-dependent Content-Type", - "Responses with Content-Type of application/x-protobuf" - ], - "location": "query" - }, - "key": { - "location": "query", - "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.", - "type": "string" - }, - "access_token": { - "location": "query", - "description": "OAuth access token.", - "type": "string" - }, - "quotaUser": { - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", - "type": "string", - "location": "query" - } - }, - "version": "v1", - "baseUrl": "https://serviceconsumermanagement.googleapis.com/", - "kind": "discovery#restDescription", - "description": "Provides management methods for configuring service producer resources on Google Cloud.", - "servicePath": "", - "basePath": "", - "id": "serviceconsumermanagement:v1", - "documentationLink": "https://cloud.google.com/service-consumer-management/docs/overview", - "revision": "20180120", - "discoveryVersion": "v1", - "version_module": true, + "revision": "20180322", + "rootUrl": "https://serviceconsumermanagement.googleapis.com/", "schemas": { - "AuthorizationConfig": { - "description": "Configuration of authorization.\n\nThis section determines the authorization provider, if unspecified, then no\nauthorization check will be done.\n\nExample:\n\n experimental:\n authorization:\n provider: firebaserules.googleapis.com", - "type": "object", + "AddTenantProjectRequest": { + "description": "Request to add a newly created and configured tenant project to a tenancy\nunit.", + "id": "AddTenantProjectRequest", "properties": { - "provider": { - "description": "The name of the authorization provider, such as\nfirebaserules.googleapis.com.", + "projectConfig": { + "$ref": "TenantProjectConfig", + "description": "Configuration of the new tenant project that will be added to tenancy unit\nresources." + }, + "tag": { + "description": "Tag of the added project. Must be less than 128 characters. Required.", "type": "string" } }, - "id": "AuthorizationConfig" - }, - "ServiceAccountConfig": { - "description": "Describes service account configuration for the tenant project.", - "type": "object", - "properties": { - "tenantProjectRoles": { - "description": "Roles for the service account above on tenant project.", - "type": "array", - "items": { - "type": "string" - } - }, - "accountId": { - "description": "ID of the IAM service account to be created in tenant project.\nThe email format of the service account will be\n\"\u003caccount-id\u003e@\u003ctenant-project-id\u003e.iam.gserviceaccount.com\".\nThis account id has to be unique within tenant project and producers\nhave to guarantee it.", - "type": "string" - } - }, - "id": "ServiceAccountConfig" - }, - "DocumentationRule": { - "description": "A documentation rule provides information about individual API elements.", - "type": "object", - "properties": { - "description": { - "description": "Description of the selected API(s).", - "type": "string" - }, - "deprecationDescription": { - "description": "Deprecation description of the selected element(s). It can be provided if an\nelement is marked as `deprecated`.", - "type": "string" - }, - "selector": { - "description": "The selector is a comma-separated list of patterns. Each pattern is a\nqualified name of the element which may end in \"*\", indicating a wildcard.\nWildcards are only allowed at the end and for a whole component of the\nqualified name, i.e. \"foo.*\" is ok, but not \"foo.b*\" or \"foo.*.bar\". To\nspecify a default for all applicable elements, the whole pattern \"*\"\nis used.", - "type": "string" - } - }, - "id": "DocumentationRule" - }, - "ContextRule": { - "description": "A context rule provides information about the context for an individual API\nelement.", - "type": "object", - "properties": { - "provided": { - "description": "A list of full type names of provided contexts.", - "type": "array", - "items": { - "type": "string" - } - }, - "requested": { - "description": "A list of full type names of requested contexts.", - "type": "array", - "items": { - "type": "string" - } - }, - "selector": { - "description": "Selects the methods to which this rule applies.\n\nRefer to selector for syntax details.", - "type": "string" - } - }, - "id": "ContextRule" - }, - "Billing": { - "description": "Billing related configuration of the service.\n\nThe following example shows how to configure monitored resources and metrics\nfor billing:\n\n monitored_resources:\n - type: library.googleapis.com/branch\n labels:\n - key: /city\n description: The city where the library branch is located in.\n - key: /name\n description: The name of the branch.\n metrics:\n - name: library.googleapis.com/book/borrowed_count\n metric_kind: DELTA\n value_type: INT64\n billing:\n consumer_destinations:\n - monitored_resource: library.googleapis.com/branch\n metrics:\n - library.googleapis.com/book/borrowed_count", - "type": "object", - "properties": { - "consumerDestinations": { - "description": "Billing configurations for sending metrics to the consumer project.\nThere can be multiple consumer destinations per service, each one must have\na different monitored resource type. A metric can be used in at most\none consumer destination.", - "type": "array", - "items": { - "$ref": "BillingDestination" - } - } - }, - "id": "Billing" - }, - "MetricDescriptor": { - "description": "Defines a metric type and its schema. Once a metric descriptor is created,\ndeleting or altering it stops data collection and makes the metric type's\nexisting data unusable.", - "type": "object", - "properties": { - "type": { - "description": "The metric type, including its DNS name prefix. The type is not\nURL-encoded. All user-defined custom metric types have the DNS name\n`custom.googleapis.com`. Metric types should use a natural hierarchical\ngrouping. For example:\n\n \"custom.googleapis.com/invoice/paid/amount\"\n \"appengine.googleapis.com/http/server/response_latencies\"", - "type": "string" - }, - "valueType": { - "enumDescriptions": [ - "Do not use this default value.", - "The value is a boolean.\nThis value type can be used only if the metric kind is `GAUGE`.", - "The value is a signed 64-bit integer.", - "The value is a double precision floating point number.", - "The value is a text string.\nThis value type can be used only if the metric kind is `GAUGE`.", - "The value is a `Distribution`.", - "The value is money." - ], - "enum": [ - "VALUE_TYPE_UNSPECIFIED", - "BOOL", - "INT64", - "DOUBLE", - "STRING", - "DISTRIBUTION", - "MONEY" - ], - "description": "Whether the measurement is an integer, a floating-point number, etc.\nSome combinations of `metric_kind` and `value_type` might not be supported.", - "type": "string" - }, - "metricKind": { - "description": "Whether the metric records instantaneous values, changes to a value, etc.\nSome combinations of `metric_kind` and `value_type` might not be supported.", - "type": "string", - "enumDescriptions": [ - "Do not use this default value.", - "An instantaneous measurement of a value.", - "The change in a value during a time interval.", - "A value accumulated over a time interval. Cumulative\nmeasurements in a time series should have the same start time\nand increasing end times, until an event resets the cumulative\nvalue to zero and sets a new start time for the following\npoints." - ], - "enum": [ - "METRIC_KIND_UNSPECIFIED", - "GAUGE", - "DELTA", - "CUMULATIVE" - ] - }, - "description": { - "description": "A detailed description of the metric, which can be used in documentation.", - "type": "string" - }, - "displayName": { - "description": "A concise name for the metric, which can be displayed in user interfaces.\nUse sentence case without an ending period, for example \"Request count\".\nThis field is optional but it is recommended to be set for any metrics\nassociated with user-visible concepts, such as Quota.", - "type": "string" - }, - "unit": { - "description": "The unit in which the metric value is reported. It is only applicable\nif the `value_type` is `INT64`, `DOUBLE`, or `DISTRIBUTION`. The\nsupported units are a subset of [The Unified Code for Units of\nMeasure](http://unitsofmeasure.org/ucum.html) standard:\n\n**Basic units (UNIT)**\n\n* `bit` bit\n* `By` byte\n* `s` second\n* `min` minute\n* `h` hour\n* `d` day\n\n**Prefixes (PREFIX)**\n\n* `k` kilo (10**3)\n* `M` mega (10**6)\n* `G` giga (10**9)\n* `T` tera (10**12)\n* `P` peta (10**15)\n* `E` exa (10**18)\n* `Z` zetta (10**21)\n* `Y` yotta (10**24)\n* `m` milli (10**-3)\n* `u` micro (10**-6)\n* `n` nano (10**-9)\n* `p` pico (10**-12)\n* `f` femto (10**-15)\n* `a` atto (10**-18)\n* `z` zepto (10**-21)\n* `y` yocto (10**-24)\n* `Ki` kibi (2**10)\n* `Mi` mebi (2**20)\n* `Gi` gibi (2**30)\n* `Ti` tebi (2**40)\n\n**Grammar**\n\nThe grammar includes the dimensionless unit `1`, such as `1/s`.\n\nThe grammar also includes these connectors:\n\n* `/` division (as an infix operator, e.g. `1/s`).\n* `.` multiplication (as an infix operator, e.g. `GBy.d`)\n\nThe grammar for a unit is as follows:\n\n Expression = Component { \".\" Component } { \"/\" Component } ;\n\n Component = [ PREFIX ] UNIT [ Annotation ]\n | Annotation\n | \"1\"\n ;\n\n Annotation = \"{\" NAME \"}\" ;\n\nNotes:\n\n* `Annotation` is just a comment if it follows a `UNIT` and is\n equivalent to `1` if it is used alone. For examples,\n `{requests}/s == 1/s`, `By{transmitted}/s == By/s`.\n* `NAME` is a sequence of non-blank printable ASCII characters not\n containing '{' or '}'.", - "type": "string" - }, - "labels": { - "description": "The set of labels that can be used to describe a specific\ninstance of this metric type. For example, the\n`appengine.googleapis.com/http/server/response_latencies` metric\ntype has a label for the HTTP response code, `response_code`, so\nyou can look at latencies for successful responses or just\nfor responses that failed.", - "type": "array", - "items": { - "$ref": "LabelDescriptor" - } - }, - "name": { - "description": "The resource name of the metric descriptor.", - "type": "string" - } - }, - "id": "MetricDescriptor" - }, - "SourceContext": { - "description": "`SourceContext` represents information about the source of a\nprotobuf element, like the file in which it is defined.", - "type": "object", - "properties": { - "fileName": { - "description": "The path-qualified name of the .proto file that contained the associated\nprotobuf element. For example: `\"google/protobuf/source_context.proto\"`.", - "type": "string" - } - }, - "id": "SourceContext" - }, - "ListTenancyUnitsResponse": { - "description": "Response for the list request.", - "type": "object", - "properties": { - "nextPageToken": { - "description": "Pagination token for large results.", - "type": "string" - }, - "tenancyUnits": { - "description": "Tenancy Units matching the request.", - "type": "array", - "items": { - "$ref": "TenancyUnit" - } - } - }, - "id": "ListTenancyUnitsResponse" - }, - "SearchTenancyUnitsResponse": { - "description": "Response for the search query.", - "type": "object", - "properties": { - "nextPageToken": { - "description": "Pagination token for large results.", - "type": "string" - }, - "tenancyUnits": { - "description": "Tenancy Units matching the request.", - "type": "array", - "items": { - "$ref": "TenancyUnit" - } - } - }, - "id": "SearchTenancyUnitsResponse" - }, - "Endpoint": { - "description": "`Endpoint` describes a network endpoint that serves a set of APIs.\nA service may expose any number of endpoints, and all endpoints share the\nsame service configuration, such as quota configuration and monitoring\nconfiguration.\n\nExample service configuration:\n\n name: library-example.googleapis.com\n endpoints:\n # Below entry makes 'google.example.library.v1.Library'\n # API be served from endpoint address library-example.googleapis.com.\n # It also allows HTTP OPTIONS calls to be passed to the backend, for\n # it to decide whether the subsequent cross-origin request is\n # allowed to proceed.\n - name: library-example.googleapis.com\n allow_cors: true", - "type": "object", - "properties": { - "aliases": { - "description": "DEPRECATED: This field is no longer supported. Instead of using aliases,\nplease specify multiple google.api.Endpoint for each of the intended\naliases.\n\nAdditional names that this endpoint will be hosted on.", - "type": "array", - "items": { - "type": "string" - } - }, - "features": { - "description": "The list of features enabled on this endpoint.", - "type": "array", - "items": { - "type": "string" - } - }, - "allowCors": { - "description": "Allowing\n[CORS](https://en.wikipedia.org/wiki/Cross-origin_resource_sharing), aka\ncross-domain traffic, would allow the backends served from this endpoint to\nreceive and respond to HTTP OPTIONS requests. The response will be used by\nthe browser to determine whether the subsequent cross-origin request is\nallowed to proceed.", - "type": "boolean" - }, - "name": { - "description": "The canonical name of this endpoint.", - "type": "string" - }, - "target": { - "description": "The specification of an Internet routable address of API frontend that will\nhandle requests to this [API Endpoint](https://cloud.google.com/apis/design/glossary).\nIt should be either a valid IPv4 address or a fully-qualified domain name.\nFor example, \"8.8.8.8\" or \"myservice.appspot.com\".", - "type": "string" - } - }, - "id": "Endpoint" - }, - "OAuthRequirements": { - "description": "OAuth scopes are a way to define data and permissions on data. For example,\nthere are scopes defined for \"Read-only access to Google Calendar\" and\n\"Access to Cloud Platform\". Users can consent to a scope for an application,\ngiving it permission to access that data on their behalf.\n\nOAuth scope specifications should be fairly coarse grained; a user will need\nto see and understand the text description of what your scope means.\n\nIn most cases: use one or at most two OAuth scopes for an entire family of\nproducts. If your product has multiple APIs, you should probably be sharing\nthe OAuth scope across all of those APIs.\n\nWhen you need finer grained OAuth consent screens: talk with your product\nmanagement about how developers will use them in practice.\n\nPlease note that even though each of the canonical scopes is enough for a\nrequest to be accepted and passed to the backend, a request can still fail\ndue to the backend requiring additional scopes or permissions.", - "type": "object", - "properties": { - "canonicalScopes": { - "description": "The list of publicly documented OAuth scopes that are allowed access. An\nOAuth token containing any of these scopes will be accepted.\n\nExample:\n\n canonical_scopes: https://www.googleapis.com/auth/calendar,\n https://www.googleapis.com/auth/calendar.read", - "type": "string" - } - }, - "id": "OAuthRequirements" - }, - "Usage": { - "description": "Configuration controlling usage of a service.", - "type": "object", - "properties": { - "producerNotificationChannel": { - "description": "The full resource name of a channel used for sending notifications to the\nservice producer.\n\nGoogle Service Management currently only supports\n[Google Cloud Pub/Sub](https://cloud.google.com/pubsub) as a notification\nchannel. To use Google Cloud Pub/Sub as the channel, this must be the name\nof a Cloud Pub/Sub topic that uses the Cloud Pub/Sub topic name format\ndocumented in https://cloud.google.com/pubsub/docs/overview.", - "type": "string" - }, - "rules": { - "description": "A list of usage rules that apply to individual API methods.\n\n**NOTE:** All service configuration rules follow \"last one wins\" order.", - "type": "array", - "items": { - "$ref": "UsageRule" - } - }, - "requirements": { - "description": "Requirements that must be satisfied before a consumer project can use the\nservice. Each requirement is of the form \u003cservice.name\u003e/\u003crequirement-id\u003e;\nfor example 'serviceusage.googleapis.com/billing-enabled'.", - "type": "array", - "items": { - "type": "string" - } - } - }, - "id": "Usage" - }, - "Context": { - "description": "`Context` defines which contexts an API requests.\n\nExample:\n\n context:\n rules:\n - selector: \"*\"\n requested:\n - google.rpc.context.ProjectContext\n - google.rpc.context.OriginContext\n\nThe above specifies that all methods in the API request\n`google.rpc.context.ProjectContext` and\n`google.rpc.context.OriginContext`.\n\nAvailable context types are defined in package\n`google.rpc.context`.", - "type": "object", - "properties": { - "rules": { - "description": "A list of RPC context rules that apply to individual API methods.\n\n**NOTE:** All service configuration rules follow \"last one wins\" order.", - "type": "array", - "items": { - "$ref": "ContextRule" - } - } - }, - "id": "Context" - }, - "LogDescriptor": { - "description": "A description of a log type. Example in YAML format:\n\n - name: library.googleapis.com/activity_history\n description: The history of borrowing and returning library items.\n display_name: Activity\n labels:\n - key: /customer_id\n description: Identifier of a library customer", - "type": "object", - "properties": { - "description": { - "description": "A human-readable description of this log. This information appears in\nthe documentation and can contain details.", - "type": "string" - }, - "displayName": { - "description": "The human-readable name for this log. This information appears on\nthe user interface and should be concise.", - "type": "string" - }, - "labels": { - "description": "The set of labels that are available to describe a specific log entry.\nRuntime requests that contain labels not specified here are\nconsidered invalid.", - "type": "array", - "items": { - "$ref": "LabelDescriptor" - } - }, - "name": { - "description": "The name of the log. It must be less than 512 characters long and can\ninclude the following characters: upper- and lower-case alphanumeric\ncharacters [A-Za-z0-9], and punctuation characters including\nslash, underscore, hyphen, period [/_-.].", - "type": "string" - } - }, - "id": "LogDescriptor" - }, - "MonitoredResourceDescriptor": { - "description": "An object that describes the schema of a MonitoredResource object using a\ntype name and a set of labels. For example, the monitored resource\ndescriptor for Google Compute Engine VM instances has a type of\n`\"gce_instance\"` and specifies the use of the labels `\"instance_id\"` and\n`\"zone\"` to identify particular VM instances.\n\nDifferent APIs can support different monitored resource types. APIs generally\nprovide a `list` method that returns the monitored resource descriptors used\nby the API.", - "type": "object", - "properties": { - "labels": { - "description": "Required. A set of labels used to describe instances of this monitored\nresource type. For example, an individual Google Cloud SQL database is\nidentified by values for the labels `\"database_id\"` and `\"zone\"`.", - "type": "array", - "items": { - "$ref": "LabelDescriptor" - } - }, - "name": { - "description": "Optional. The resource name of the monitored resource descriptor:\n`\"projects/{project_id}/monitoredResourceDescriptors/{type}\"` where\n{type} is the value of the `type` field in this object and\n{project_id} is a project ID that provides API-specific context for\naccessing the type. APIs that do not use project information can use the\nresource name format `\"monitoredResourceDescriptors/{type}\"`.", - "type": "string" - }, - "displayName": { - "description": "Optional. A concise name for the monitored resource type that might be\ndisplayed in user interfaces. It should be a Title Cased Noun Phrase,\nwithout any article or other determiners. For example,\n`\"Google Cloud SQL Database\"`.", - "type": "string" - }, - "description": { - "description": "Optional. A detailed description of the monitored resource type that might\nbe used in documentation.", - "type": "string" - }, - "type": { - "description": "Required. The monitored resource type. For example, the type\n`\"cloudsql_database\"` represents databases in Google Cloud SQL.\nThe maximum length of this value is 256 characters.", - "type": "string" - } - }, - "id": "MonitoredResourceDescriptor" - }, - "CustomErrorRule": { - "description": "A custom error rule.", - "type": "object", - "properties": { - "isErrorType": { - "description": "Mark this message as possible payload in error response. Otherwise,\nobjects of this type will be filtered when they appear in error payload.", - "type": "boolean" - }, - "selector": { - "description": "Selects messages to which this rule applies.\n\nRefer to selector for syntax details.", - "type": "string" - } - }, - "id": "CustomErrorRule" - }, - "CustomAuthRequirements": { - "description": "Configuration for a custom authentication provider.", - "type": "object", - "properties": { - "provider": { - "description": "A configuration string containing connection information for the\nauthentication provider, typically formatted as a SmartService string\n(go/smartservice).", - "type": "string" - } - }, - "id": "CustomAuthRequirements" - }, - "MediaDownload": { - "description": "Defines the Media configuration for a service in case of a download.\nUse this only for Scotty Requests. Do not use this for media support using\nBytestream, add instead [][google.bytestream.RestByteStream] as an API to\nyour configuration for Bytestream methods.", - "type": "object", - "properties": { - "enabled": { - "description": "Whether download is enabled.", - "type": "boolean" - }, - "downloadService": { - "description": "DO NOT USE FIELDS BELOW THIS LINE UNTIL THIS WARNING IS REMOVED.\n\nSpecify name of the download service if one is used for download.", - "type": "string" - }, - "completeNotification": { - "description": "A boolean that determines whether a notification for the completion of a\ndownload should be sent to the backend.", - "type": "boolean" - }, - "maxDirectDownloadSize": { - "description": "Optional maximum acceptable size for direct download.\nThe size is specified in bytes.", - "format": "int64", - "type": "string" - }, - "dropzone": { - "description": "Name of the Scotty dropzone to use for the current API.", - "type": "string" - }, - "useDirectDownload": { - "description": "A boolean that determines if direct download from ESF should be used for\ndownload of this media.", - "type": "boolean" - } - }, - "id": "MediaDownload" - }, - "AuthorizationRule": { - "description": "Authorization rule for API services.\n\nIt specifies the permission(s) required for an API element for the overall\nAPI request to succeed. It is typically used to mark request message fields\nthat contain the name of the resource and indicates the permissions that\nwill be checked on that resource.\n\nFor example:\n\n package google.storage.v1;\n\n message CopyObjectRequest {\n string source = 1 [\n (google.api.authz).permissions = \"storage.objects.get\"];\n\n string destination = 2 [\n (google.api.authz).permissions =\n \"storage.objects.create,storage.objects.update\"];\n }", - "type": "object", - "properties": { - "permissions": { - "description": "The required permissions. The acceptable values vary depend on the\nauthorization system used. For Google APIs, it should be a comma-separated\nGoogle IAM permission values. When multiple permissions are listed, the\nsemantics is not defined by the system. Additional documentation must\nbe provided manually.", - "type": "string" - }, - "selector": { - "description": "Selects the API elements to which this rule applies.\n\nRefer to selector for syntax details.", - "type": "string" - } - }, - "id": "AuthorizationRule" - }, - "MediaUpload": { - "description": "Defines the Media configuration for a service in case of an upload.\nUse this only for Scotty Requests. Do not use this for media support using\nBytestream, add instead [][google.bytestream.RestByteStream] as an API to\nyour configuration for Bytestream methods.", - "type": "object", - "properties": { - "mimeTypes": { - "description": "An array of mimetype patterns. Esf will only accept uploads that match one\nof the given patterns.", - "type": "array", - "items": { - "type": "string" - } - }, - "maxSize": { - "description": "Optional maximum acceptable size for an upload.\nThe size is specified in bytes.", - "format": "int64", - "type": "string" - }, - "enabled": { - "description": "Whether upload is enabled.", - "type": "boolean" - }, - "progressNotification": { - "description": "Whether to receive a notification for progress changes of media upload.", - "type": "boolean" - }, - "completeNotification": { - "description": "A boolean that determines whether a notification for the completion of an\nupload should be sent to the backend. These notifications will not be seen\nby the client and will not consume quota.", - "type": "boolean" - }, - "dropzone": { - "description": "Name of the Scotty dropzone to use for the current API.", - "type": "string" - }, - "startNotification": { - "description": "Whether to receive a notification on the start of media upload.", - "type": "boolean" - }, - "uploadService": { - "description": "DO NOT USE FIELDS BELOW THIS LINE UNTIL THIS WARNING IS REMOVED.\n\nSpecify name of the upload service if one is used for upload.", - "type": "string" - } - }, - "id": "MediaUpload" - }, - "CreateTenancyUnitRequest": { - "description": "Request to create a tenancy unit for a consumer of a service.", - "type": "object", - "properties": { - "tenancyUnitId": { - "description": "Optional producer provided identifier of the tenancy unit\nMust be no longer than 40 characters and preferably URI friendly\nIf it is not provided, UID for the tenancy unit will be auto generated\nIt must be unique across a service.\nIf the tenancy unit already exists for the service and consumer pair,\nCreateTenancyUnit will return existing tenancy unit if provided identifier\nis identical or empty, otherwise the call will fail.", - "type": "string" - } - }, - "id": "CreateTenancyUnitRequest" - }, - "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 `{}`.", - "type": "object", - "properties": {}, - "id": "Empty" - }, - "BillingDestination": { - "description": "Configuration of a specific billing destination (Currently only support\nbill against consumer project).", - "type": "object", - "properties": { - "metrics": { - "description": "Names of the metrics to report to this billing destination.\nEach name must be defined in Service.metrics section.", - "type": "array", - "items": { - "type": "string" - } - }, - "monitoredResource": { - "description": "The monitored resource type. The type must be defined in\nService.monitored_resources section.", - "type": "string" - } - }, - "id": "BillingDestination" - }, - "UsageRule": { - "description": "Usage configuration rules for the service.\n\nNOTE: Under development.\n\n\nUse this rule to configure unregistered calls for the service. Unregistered\ncalls are calls that do not contain consumer project identity.\n(Example: calls that do not contain an API key).\nBy default, API methods do not allow unregistered calls, and each method call\nmust be identified by a consumer project identity. Use this rule to\nallow/disallow unregistered calls.\n\nExample of an API that wants to allow unregistered calls for entire service.\n\n usage:\n rules:\n - selector: \"*\"\n allow_unregistered_calls: true\n\nExample of a method that wants to allow unregistered calls.\n\n usage:\n rules:\n - selector: \"google.example.library.v1.LibraryService.CreateBook\"\n allow_unregistered_calls: true", - "type": "object", - "properties": { - "selector": { - "description": "Selects the methods to which this rule applies. Use '*' to indicate all\nmethods in all APIs.\n\nRefer to selector for syntax details.", - "type": "string" - }, - "skipServiceControl": { - "description": "If true, the selected method should skip service control and the control\nplane features, such as quota and billing, will not be available.\nThis flag is used by Google Cloud Endpoints to bypass checks for internal\nmethods, such as service health check methods.", - "type": "boolean" - }, - "allowUnregisteredCalls": { - "description": "If true, the selected method allows unregistered calls, e.g. calls\nthat don't identify any user or application.", - "type": "boolean" - } - }, - "id": "UsageRule" - }, - "AuthRequirement": { - "description": "User-defined authentication requirements, including support for\n[JSON Web Token (JWT)](https://tools.ietf.org/html/draft-ietf-oauth-json-web-token-32).", - "type": "object", - "properties": { - "audiences": { - "description": "NOTE: This will be deprecated soon, once AuthProvider.audiences is\nimplemented and accepted in all the runtime components.\n\nThe list of JWT\n[audiences](https://tools.ietf.org/html/draft-ietf-oauth-json-web-token-32#section-4.1.3).\nthat are allowed to access. A JWT containing any of these audiences will\nbe accepted. When this setting is absent, only JWTs with audience\n\"https://Service_name/API_name\"\nwill be accepted. For example, if no audiences are in the setting,\nLibraryService API will only accept JWTs with the following audience\n\"https://library-example.googleapis.com/google.example.library.v1.LibraryService\".\n\nExample:\n\n audiences: bookstore_android.apps.googleusercontent.com,\n bookstore_web.apps.googleusercontent.com", - "type": "string" - }, - "providerId": { - "description": "id from authentication provider.\n\nExample:\n\n provider_id: bookstore_auth", - "type": "string" - } - }, - "id": "AuthRequirement" - }, - "Documentation": { - "description": "`Documentation` provides the information for describing a service.\n\nExample:\n\u003cpre\u003e\u003ccode\u003edocumentation:\n summary: \u003e\n The Google Calendar API gives access\n to most calendar features.\n pages:\n - name: Overview\n content: (== include google/foo/overview.md ==)\n - name: Tutorial\n content: (== include google/foo/tutorial.md ==)\n subpages;\n - name: Java\n content: (== include google/foo/tutorial_java.md ==)\n rules:\n - selector: google.calendar.Calendar.Get\n description: \u003e\n ...\n - selector: google.calendar.Calendar.Put\n description: \u003e\n ...\n\u003c/code\u003e\u003c/pre\u003e\nDocumentation is provided in markdown syntax. In addition to\nstandard markdown features, definition lists, tables and fenced\ncode blocks are supported. Section headers can be provided and are\ninterpreted relative to the section nesting of the context where\na documentation fragment is embedded.\n\nDocumentation from the IDL is merged with documentation defined\nvia the config at normalization time, where documentation provided\nby config rules overrides IDL provided.\n\nA number of constructs specific to the API platform are supported\nin documentation text.\n\nIn order to reference a proto element, the following\nnotation can be used:\n\u003cpre\u003e\u003ccode\u003e[fully.qualified.proto.name][]\u003c/code\u003e\u003c/pre\u003e\nTo override the display text used for the link, this can be used:\n\u003cpre\u003e\u003ccode\u003e[display text][fully.qualified.proto.name]\u003c/code\u003e\u003c/pre\u003e\nText can be excluded from doc using the following notation:\n\u003cpre\u003e\u003ccode\u003e(-- internal comment --)\u003c/code\u003e\u003c/pre\u003e\nComments can be made conditional using a visibility label. The below\ntext will be only rendered if the `BETA` label is available:\n\u003cpre\u003e\u003ccode\u003e(--BETA: comment for BETA users --)\u003c/code\u003e\u003c/pre\u003e\nA few directives are available in documentation. Note that\ndirectives must appear on a single line to be properly\nidentified. The `include` directive includes a markdown file from\nan external source:\n\u003cpre\u003e\u003ccode\u003e(== include path/to/file ==)\u003c/code\u003e\u003c/pre\u003e\nThe `resource_for` directive marks a message to be the resource of\na collection in REST view. If it is not specified, tools attempt\nto infer the resource from the operations in a collection:\n\u003cpre\u003e\u003ccode\u003e(== resource_for v1.shelves.books ==)\u003c/code\u003e\u003c/pre\u003e\nThe directive `suppress_warning` does not directly affect documentation\nand is documented together with service config validation.", - "type": "object", - "properties": { - "pages": { - "description": "The top level pages for the documentation set.", - "type": "array", - "items": { - "$ref": "Page" - } - }, - "summary": { - "description": "A short summary of what the service does. Can only be provided by\nplain text.", - "type": "string" - }, - "documentationRootUrl": { - "description": "The URL to the root of documentation.", - "type": "string" - }, - "rules": { - "description": "A list of documentation rules that apply to individual API elements.\n\n**NOTE:** All service configuration rules follow \"last one wins\" order.", - "type": "array", - "items": { - "$ref": "DocumentationRule" - } - }, - "overview": { - "description": "Declares a single overview page. For example:\n\u003cpre\u003e\u003ccode\u003edocumentation:\n summary: ...\n overview: (== include overview.md ==)\n\u003c/code\u003e\u003c/pre\u003e\nThis is a shortcut for the following declaration (using pages style):\n\u003cpre\u003e\u003ccode\u003edocumentation:\n summary: ...\n pages:\n - name: Overview\n content: (== include overview.md ==)\n\u003c/code\u003e\u003c/pre\u003e\nNote: you cannot specify both `overview` field and `pages` field.", - "type": "string" - } - }, - "id": "Documentation" - }, - "AuthenticationRule": { - "description": "Authentication rules for the service.\n\nBy default, if a method has any authentication requirements, every request\nmust include a valid credential matching one of the requirements.\nIt's an error to include more than one kind of credential in a single\nrequest.\n\nIf a method doesn't have any auth requirements, request credentials will be\nignored.", - "type": "object", - "properties": { - "requirements": { - "description": "Requirements for additional authentication providers.", - "type": "array", - "items": { - "$ref": "AuthRequirement" - } - }, - "selector": { - "description": "Selects the methods to which this rule applies.\n\nRefer to selector for syntax details.", - "type": "string" - }, - "allowWithoutCredential": { - "description": "Whether to allow requests without a credential. The credential can be\nan OAuth token, Google cookies (first-party auth) or EndUserCreds.\n\nFor requests without credentials, if the service control environment is\nspecified, each incoming request **must** be associated with a service\nconsumer. This can be done by passing an API key that belongs to a consumer\nproject.", - "type": "boolean" - }, - "oauth": { - "description": "The requirements for OAuth credentials.", - "$ref": "OAuthRequirements" - }, - "customAuth": { - "$ref": "CustomAuthRequirements", - "description": "Configuration for custom authentication." - } - }, - "id": "AuthenticationRule" - }, - "BackendRule": { - "description": "A backend rule provides configuration for an individual API element.", - "type": "object", - "properties": { - "minDeadline": { - "description": "Minimum deadline in seconds needed for this method. Calls having deadline\nvalue lower than this will be rejected.", - "format": "double", - "type": "number" - }, - "address": { - "description": "The address of the API backend.", - "type": "string" - }, - "selector": { - "description": "Selects the methods to which this rule applies.\n\nRefer to selector for syntax details.", - "type": "string" - }, - "deadline": { - "description": "The number of seconds to wait for a response from a request. The default\ndeadline for gRPC is infinite (no deadline) and HTTP requests is 5 seconds.", - "format": "double", - "type": "number" - } - }, - "id": "BackendRule" + "type": "object" }, "Api": { "description": "Api is a light-weight descriptor for an API Interface.\n\nInterfaces are also described as \"protocol buffer services\" in some contexts,\nsuch as by the \"service\" keyword in a .proto file, but they are different\nfrom API Services, which represent a concrete implementation of an interface\nas opposed to simply a description of methods and bindings. They are also\nsometimes simply referred to as \"APIs\" in other contexts, such as the name of\nthis message itself. See https://cloud.google.com/apis/design/glossary for\ndetailed terminology.", - "type": "object", + "id": "Api", "properties": { - "syntax": { - "description": "The source syntax of the service.", - "type": "string", - "enumDescriptions": [ - "Syntax `proto2`.", - "Syntax `proto3`." - ], - "enum": [ - "SYNTAX_PROTO2", - "SYNTAX_PROTO3" - ] + "methods": { + "description": "The methods of this interface, in unspecified order.", + "items": { + "$ref": "Method" + }, + "type": "array" + }, + "mixins": { + "description": "Included interfaces. See Mixin.", + "items": { + "$ref": "Mixin" + }, + "type": "array" + }, + "name": { + "description": "The fully qualified name of this interface, including package name\nfollowed by the interface's simple name.", + "type": "string" + }, + "options": { + "description": "Any metadata attached to the interface.", + "items": { + "$ref": "Option" + }, + "type": "array" }, "sourceContext": { "$ref": "SourceContext", "description": "Source context for the protocol buffer service represented by this\nmessage." }, + "syntax": { + "description": "The source syntax of the service.", + "enum": [ + "SYNTAX_PROTO2", + "SYNTAX_PROTO3" + ], + "enumDescriptions": [ + "Syntax `proto2`.", + "Syntax `proto3`." + ], + "type": "string" + }, "version": { "description": "A version string for this interface. If specified, must have the form\n`major-version.minor-version`, as in `1.10`. If the minor version is\nomitted, it defaults to zero. If the entire version field is empty, the\nmajor version is derived from the package name, as outlined below. If the\nfield is not empty, the version in the package name will be verified to be\nconsistent with what is provided here.\n\nThe versioning schema uses [semantic\nversioning](http://semver.org) where the major version number\nindicates a breaking change and the minor version an additive,\nnon-breaking change. Both version numbers are signals to users\nwhat to expect from different versions, and should be carefully\nchosen based on the product plan.\n\nThe major version is also reflected in the package name of the\ninterface, which must end in `v\u003cmajor-version\u003e`, as in\n`google.feature.v1`. For major versions 0 and 1, the suffix can\nbe omitted. Zero major versions must only be used for\nexperimental, non-GA interfaces.\n", "type": "string" - }, - "mixins": { - "description": "Included interfaces. See Mixin.", - "type": "array", - "items": { - "$ref": "Mixin" - } - }, - "options": { - "description": "Any metadata attached to the interface.", - "type": "array", - "items": { - "$ref": "Option" - } - }, - "methods": { - "description": "The methods of this interface, in unspecified order.", - "type": "array", - "items": { - "$ref": "Method" - } - }, - "name": { - "description": "The fully qualified name of this interface, including package name\nfollowed by the interface's simple name.", - "type": "string" } }, - "id": "Api" - }, - "MetricRule": { - "description": "Bind API methods to metrics. Binding a method to a metric causes that\nmetric's configured quota behaviors to apply to the method call.", - "type": "object", - "properties": { - "selector": { - "description": "Selects the methods to which this rule applies.\n\nRefer to selector for syntax details.", - "type": "string" - }, - "metricCosts": { - "additionalProperties": { - "format": "int64", - "type": "string" - }, - "description": "Metrics to update when the selected methods are called, and the associated\ncost applied to each metric.\n\nThe key of the map is the metric name, and the values are the amount\nincreased for the metric against which the quota limits are defined.\nThe value must not be negative.", - "type": "object" - } - }, - "id": "MetricRule" - }, - "CancelOperationRequest": { - "description": "The request message for Operations.CancelOperation.", - "type": "object", - "properties": {}, - "id": "CancelOperationRequest" - }, - "Authentication": { - "description": "`Authentication` defines the authentication configuration for an API.\n\nExample for an API targeted for external use:\n\n name: calendar.googleapis.com\n authentication:\n providers:\n - id: google_calendar_auth\n jwks_uri: https://www.googleapis.com/oauth2/v1/certs\n issuer: https://securetoken.google.com\n rules:\n - selector: \"*\"\n requirements:\n provider_id: google_calendar_auth", - "type": "object", - "properties": { - "providers": { - "description": "Defines a set of authentication providers that a service supports.", - "type": "array", - "items": { - "$ref": "AuthProvider" - } - }, - "rules": { - "description": "A list of authentication rules that apply to individual API methods.\n\n**NOTE:** All service configuration rules follow \"last one wins\" order.", - "type": "array", - "items": { - "$ref": "AuthenticationRule" - } - } - }, - "id": "Authentication" - }, - "TenantProjectPolicy": { - "description": "Describes policy settings that need to be applied to a newly\ncreated Tenant Project.", - "type": "object", - "properties": { - "policyBindings": { - "description": "Additional policy bindings to be applied on the tenant\nproject.\nAt least one owner must be set in the bindings. Among the list of members\nas owners, at least one of them must be either `user` or `group` based.", - "type": "array", - "items": { - "$ref": "PolicyBinding" - } - } - }, - "id": "TenantProjectPolicy" - }, - "Operation": { - "description": "This resource represents a long-running operation that is the result of a\nnetwork API call.", - "type": "object", - "properties": { - "error": { - "description": "The error result of the operation in case of failure or cancellation.", - "$ref": "Status" - }, - "metadata": { - "description": "Service-specific metadata associated with the operation. It typically\ncontains progress information and common metadata such as create time.\nSome services might not provide such metadata. Any method that returns a\nlong-running operation should document the metadata type, if any.", - "type": "object", - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - } - }, - "done": { - "description": "If the value is `false`, it means the operation is still in progress.\nIf `true`, the operation is completed, and either `error` or `response` is\navailable.", - "type": "boolean" - }, - "response": { - "description": "The normal response of the operation in case of success. If the original\nmethod returns no data on success, such as `Delete`, the response is\n`google.protobuf.Empty`. If the original method is standard\n`Get`/`Create`/`Update`, the response should be the resource. For other\nmethods, the response should have the type `XxxResponse`, where `Xxx`\nis the original method name. For example, if the original method name\nis `TakeSnapshot()`, the inferred response type is\n`TakeSnapshotResponse`.", - "type": "object", - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - } - }, - "name": { - "description": "The server-assigned name, which is only unique within the same service that\noriginally returns it. If you use the default HTTP mapping, the\n`name` should have the format of `operations/some/unique/name`.", - "type": "string" - } - }, - "id": "Operation" - }, - "Page": { - "description": "Represents a documentation page. A page can contain subpages to represent\nnested documentation set structure.", - "type": "object", - "properties": { - "content": { - "description": "The Markdown content of the page. You can use \u003ccode\u003e(== include {path} ==)\u003c/code\u003e\nto include content from a Markdown file.", - "type": "string" - }, - "subpages": { - "description": "Subpages of this page. The order of subpages specified here will be\nhonored in the generated docset.", - "type": "array", - "items": { - "$ref": "Page" - } - }, - "name": { - "description": "The name of the page. It will be used as an identity of the page to\ngenerate URI of the page, text of the link to this page in navigation,\netc. The full page name (start from the root page name to this page\nconcatenated with `.`) can be used as reference to the page in your\ndocumentation. For example:\n\u003cpre\u003e\u003ccode\u003epages:\n- name: Tutorial\n content: (== include tutorial.md ==)\n subpages:\n - name: Java\n content: (== include tutorial_java.md ==)\n\u003c/code\u003e\u003c/pre\u003e\nYou can reference `Java` page using Markdown reference link syntax:\n`Java`.", - "type": "string" - } - }, - "id": "Page" - }, - "Status": { - "description": "The `Status` type defines a logical error model that is suitable for different\nprogramming environments, including REST APIs and RPC APIs. It is used by\n[gRPC](https://github.com/grpc). The error model is designed to be:\n\n- Simple to use and understand for most users\n- Flexible enough to meet unexpected needs\n\n# Overview\n\nThe `Status` message contains three pieces of data: error code, error message,\nand error details. The error code should be an enum value of\ngoogle.rpc.Code, but it may accept additional error codes if needed. The\nerror message should be a developer-facing English message that helps\ndevelopers *understand* and *resolve* the error. If a localized user-facing\nerror message is needed, put the localized message in the error details or\nlocalize it in the client. The optional error details may contain arbitrary\ninformation about the error. There is a predefined set of error detail types\nin the package `google.rpc` that can be used for common error conditions.\n\n# Language mapping\n\nThe `Status` message is the logical representation of the error model, but it\nis not necessarily the actual wire format. When the `Status` message is\nexposed in different client libraries and different wire protocols, it can be\nmapped differently. For example, it will likely be mapped to some exceptions\nin Java, but more likely mapped to some error codes in C.\n\n# Other uses\n\nThe error model and the `Status` message can be used in a variety of\nenvironments, either with or without APIs, to provide a\nconsistent developer experience across different environments.\n\nExample uses of this error model include:\n\n- Partial errors. If a service needs to return partial errors to the client,\n it may embed the `Status` in the normal response to indicate the partial\n errors.\n\n- Workflow errors. A typical workflow has multiple steps. Each step may\n have a `Status` message for error reporting.\n\n- Batch operations. If a client uses batch request and batch response, the\n `Status` message should be used directly inside batch response, one for\n each error sub-response.\n\n- Asynchronous operations. If an API call embeds asynchronous operation\n results in its response, the status of those operations should be\n represented directly using the `Status` message.\n\n- Logging. If some API errors are stored in logs, the message `Status` could\n be used directly after any stripping needed for security/privacy reasons.", - "type": "object", - "properties": { - "details": { - "description": "A list of messages that carry the error details. There is a common set of\nmessage types for APIs to use.", - "type": "array", - "items": { - "type": "object", - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - } - } - }, - "code": { - "description": "The status code, which should be an enum value of google.rpc.Code.", - "format": "int32", - "type": "integer" - }, - "message": { - "description": "A developer-facing error message, which should be in English. Any\nuser-facing error message should be localized and sent in the\ngoogle.rpc.Status.details field, or localized by the client.", - "type": "string" - } - }, - "id": "Status" - }, - "AddTenantProjectRequest": { - "description": "Request to add a newly created and configured tenant project to tenancy\nunit.", - "type": "object", - "properties": { - "tag": { - "description": "Tag of the added project. Must be less than 128 characters. Required.", - "type": "string" - }, - "projectConfig": { - "description": "Configuration of the new tenant project that will be added to tenancy unit\nresources.", - "$ref": "TenantProjectConfig" - } - }, - "id": "AddTenantProjectRequest" + "type": "object" }, "AuthProvider": { "description": "Configuration for an anthentication provider, including support for\n[JSON Web Token (JWT)](https://tools.ietf.org/html/draft-ietf-oauth-json-web-token-32).", - "type": "object", + "id": "AuthProvider", "properties": { - "jwksUri": { - "description": "URL of the provider's public key set to validate signature of the JWT. See\n[OpenID Discovery](https://openid.net/specs/openid-connect-discovery-1_0.html#ProviderMetadata).\nOptional if the key set document:\n - can be retrieved from\n [OpenID Discovery](https://openid.net/specs/openid-connect-discovery-1_0.html\n of the issuer.\n - can be inferred from the email domain of the issuer (e.g. a Google service account).\n\nExample: https://www.googleapis.com/oauth2/v1/certs", - "type": "string" - }, "audiences": { "description": "The list of JWT\n[audiences](https://tools.ietf.org/html/draft-ietf-oauth-json-web-token-32#section-4.1.3).\nthat are allowed to access. A JWT containing any of these audiences will\nbe accepted. When this setting is absent, only JWTs with audience\n\"https://Service_name/API_name\"\nwill be accepted. For example, if no audiences are in the setting,\nLibraryService API will only accept JWTs with the following audience\n\"https://library-example.googleapis.com/google.example.library.v1.LibraryService\".\n\nExample:\n\n audiences: bookstore_android.apps.googleusercontent.com,\n bookstore_web.apps.googleusercontent.com", "type": "string" }, + "authorizationUrl": { + "description": "Redirect URL if JWT token is required but no present or is expired.\nImplement authorizationUrl of securityDefinitions in OpenAPI spec.", + "type": "string" + }, "id": { "description": "The unique identifier of the auth provider. It will be referred to by\n`AuthRequirement.provider_id`.\n\nExample: \"bookstore_auth\".", "type": "string" @@ -1281,205 +537,318 @@ "description": "Identifies the principal that issued the JWT. See\nhttps://tools.ietf.org/html/draft-ietf-oauth-json-web-token-32#section-4.1.1\nUsually a URL or an email address.\n\nExample: https://securetoken.google.com\nExample: 1234567-compute@developer.gserviceaccount.com", "type": "string" }, - "authorizationUrl": { - "description": "Redirect URL if JWT token is required but no present or is expired.\nImplement authorizationUrl of securityDefinitions in OpenAPI spec.", + "jwksUri": { + "description": "URL of the provider's public key set to validate signature of the JWT. See\n[OpenID Discovery](https://openid.net/specs/openid-connect-discovery-1_0.html#ProviderMetadata).\nOptional if the key set document:\n - can be retrieved from\n [OpenID Discovery](https://openid.net/specs/openid-connect-discovery-1_0.html\n of the issuer.\n - can be inferred from the email domain of the issuer (e.g. a Google service account).\n\nExample: https://www.googleapis.com/oauth2/v1/certs", "type": "string" } }, - "id": "AuthProvider" + "type": "object" }, - "EnumValue": { - "description": "Enum value definition.", - "type": "object", + "AuthRequirement": { + "description": "User-defined authentication requirements, including support for\n[JSON Web Token (JWT)](https://tools.ietf.org/html/draft-ietf-oauth-json-web-token-32).", + "id": "AuthRequirement", "properties": { - "options": { - "description": "Protocol buffer options.", - "type": "array", - "items": { - "$ref": "Option" - } + "audiences": { + "description": "NOTE: This will be deprecated soon, once AuthProvider.audiences is\nimplemented and accepted in all the runtime components.\n\nThe list of JWT\n[audiences](https://tools.ietf.org/html/draft-ietf-oauth-json-web-token-32#section-4.1.3).\nthat are allowed to access. A JWT containing any of these audiences will\nbe accepted. When this setting is absent, only JWTs with audience\n\"https://Service_name/API_name\"\nwill be accepted. For example, if no audiences are in the setting,\nLibraryService API will only accept JWTs with the following audience\n\"https://library-example.googleapis.com/google.example.library.v1.LibraryService\".\n\nExample:\n\n audiences: bookstore_android.apps.googleusercontent.com,\n bookstore_web.apps.googleusercontent.com", + "type": "string" }, - "number": { - "description": "Enum value number.", - "format": "int32", - "type": "integer" - }, - "name": { - "description": "Enum value name.", + "providerId": { + "description": "id from authentication provider.\n\nExample:\n\n provider_id: bookstore_auth", "type": "string" } }, - "id": "EnumValue" + "type": "object" }, - "Service": { - "description": "`Service` is the root object of Google service configuration schema. It\ndescribes basic information about a service, such as the name and the\ntitle, and delegates other aspects to sub-sections. Each sub-section is\neither a proto message or a repeated proto message that configures a\nspecific aspect, such as auth. See each proto message definition for details.\n\nExample:\n\n type: google.api.Service\n config_version: 3\n name: calendar.googleapis.com\n title: Google Calendar API\n apis:\n - name: google.calendar.v3.Calendar\n authentication:\n providers:\n - id: google_calendar_auth\n jwks_uri: https://www.googleapis.com/oauth2/v1/certs\n issuer: https://securetoken.google.com\n rules:\n - selector: \"*\"\n requirements:\n provider_id: google_calendar_auth", - "type": "object", + "Authentication": { + "description": "`Authentication` defines the authentication configuration for an API.\n\nExample for an API targeted for external use:\n\n name: calendar.googleapis.com\n authentication:\n providers:\n - id: google_calendar_auth\n jwks_uri: https://www.googleapis.com/oauth2/v1/certs\n issuer: https://securetoken.google.com\n rules:\n - selector: \"*\"\n requirements:\n provider_id: google_calendar_auth", + "id": "Authentication", "properties": { - "authentication": { - "$ref": "Authentication", - "description": "Auth configuration." - }, - "experimental": { - "description": "Experimental configuration.", - "$ref": "Experimental" - }, - "control": { - "description": "Configuration for the service control plane.", - "$ref": "Control" - }, - "configVersion": { - "description": "The semantic version of the service configuration. The config version\naffects the interpretation of the service configuration. For example,\ncertain features are enabled by default for certain config versions.\nThe latest config version is `3`.", - "format": "uint32", - "type": "integer" - }, - "monitoring": { - "$ref": "Monitoring", - "description": "Monitoring configuration." - }, - "systemTypes": { - "description": "A list of all proto message types included in this API service.\nIt serves similar purpose as [google.api.Service.types], except that\nthese types are not needed by user-defined APIs. Therefore, they will not\nshow up in the generated discovery doc. This field should only be used\nto define system APIs in ESF.", - "type": "array", + "providers": { + "description": "Defines a set of authentication providers that a service supports.", "items": { - "$ref": "Type" - } + "$ref": "AuthProvider" + }, + "type": "array" }, - "producerProjectId": { - "description": "The Google project that owns this service.", + "rules": { + "description": "A list of authentication rules that apply to individual API methods.\n\n**NOTE:** All service configuration rules follow \"last one wins\" order.", + "items": { + "$ref": "AuthenticationRule" + }, + "type": "array" + } + }, + "type": "object" + }, + "AuthenticationRule": { + "description": "Authentication rules for the service.\n\nBy default, if a method has any authentication requirements, every request\nmust include a valid credential matching one of the requirements.\nIt's an error to include more than one kind of credential in a single\nrequest.\n\nIf a method doesn't have any auth requirements, request credentials will be\nignored.", + "id": "AuthenticationRule", + "properties": { + "allowWithoutCredential": { + "description": "Whether to allow requests without a credential. The credential can be\nan OAuth token, Google cookies (first-party auth) or EndUserCreds.\n\nFor requests without credentials, if the service control environment is\nspecified, each incoming request **must** be associated with a service\nconsumer. This can be done by passing an API key that belongs to a consumer\nproject.", + "type": "boolean" + }, + "customAuth": { + "$ref": "CustomAuthRequirements", + "description": "Configuration for custom authentication." + }, + "oauth": { + "$ref": "OAuthRequirements", + "description": "The requirements for OAuth credentials." + }, + "requirements": { + "description": "Requirements for additional authentication providers.", + "items": { + "$ref": "AuthRequirement" + }, + "type": "array" + }, + "selector": { + "description": "Selects the methods to which this rule applies.\n\nRefer to selector for syntax details.", + "type": "string" + } + }, + "type": "object" + }, + "AuthorizationConfig": { + "description": "Configuration of authorization.\n\nThis section determines the authorization provider, if unspecified, then no\nauthorization check will be done.\n\nExample:\n\n experimental:\n authorization:\n provider: firebaserules.googleapis.com", + "id": "AuthorizationConfig", + "properties": { + "provider": { + "description": "The name of the authorization provider, such as\nfirebaserules.googleapis.com.", + "type": "string" + } + }, + "type": "object" + }, + "AuthorizationRule": { + "description": "Authorization rule for API services.\n\nIt specifies the permission(s) required for an API element for the overall\nAPI request to succeed. It is typically used to mark request message fields\nthat contain the name of the resource and indicates the permissions that\nwill be checked on that resource.\n\nFor example:\n\n package google.storage.v1;\n\n message CopyObjectRequest {\n string source = 1 [\n (google.api.authz).permissions = \"storage.objects.get\"];\n\n string destination = 2 [\n (google.api.authz).permissions =\n \"storage.objects.create,storage.objects.update\"];\n }", + "id": "AuthorizationRule", + "properties": { + "permissions": { + "description": "The required permissions. The acceptable values vary depend on the\nauthorization system used. For Google APIs, it should be a comma-separated\nGoogle IAM permission values. When multiple permissions are listed, the\nsemantics is not defined by the system. Additional documentation must\nbe provided manually.", "type": "string" }, - "visibility": { - "$ref": "Visibility", - "description": "API visibility configuration." - }, - "quota": { - "description": "Quota configuration.", - "$ref": "Quota" - }, - "name": { - "description": "The DNS address at which this service is available,\ne.g. `calendar.googleapis.com`.", + "selector": { + "description": "Selects the API elements to which this rule applies.\n\nRefer to selector for syntax details.", + "type": "string" + } + }, + "type": "object" + }, + "Backend": { + "description": "`Backend` defines the backend configuration for a service.", + "id": "Backend", + "properties": { + "rules": { + "description": "A list of API backend rules that apply to individual API methods.\n\n**NOTE:** All service configuration rules follow \"last one wins\" order.", + "items": { + "$ref": "BackendRule" + }, + "type": "array" + } + }, + "type": "object" + }, + "BackendRule": { + "description": "A backend rule provides configuration for an individual API element.", + "id": "BackendRule", + "properties": { + "address": { + "description": "The address of the API backend.", "type": "string" }, - "billing": { - "description": "Billing configuration.", - "$ref": "Billing" + "deadline": { + "description": "The number of seconds to wait for a response from a request. The default\ndeadline for gRPC is infinite (no deadline) and HTTP requests is 5 seconds.", + "format": "double", + "type": "number" }, - "customError": { - "$ref": "CustomError", - "description": "Custom error configuration." + "minDeadline": { + "description": "Minimum deadline in seconds needed for this method. Calls having deadline\nvalue lower than this will be rejected.", + "format": "double", + "type": "number" }, - "title": { - "description": "The product title for this service.", + "selector": { + "description": "Selects the methods to which this rule applies.\n\nRefer to selector for syntax details.", "type": "string" - }, - "endpoints": { - "description": "Configuration for network endpoints. If this is empty, then an endpoint\nwith the same name as the service is automatically generated to service all\ndefined APIs.", - "type": "array", + } + }, + "type": "object" + }, + "Billing": { + "description": "Billing related configuration of the service.\n\nThe following example shows how to configure monitored resources and metrics\nfor billing:\n\n monitored_resources:\n - type: library.googleapis.com/branch\n labels:\n - key: /city\n description: The city where the library branch is located in.\n - key: /name\n description: The name of the branch.\n metrics:\n - name: library.googleapis.com/book/borrowed_count\n metric_kind: DELTA\n value_type: INT64\n billing:\n consumer_destinations:\n - monitored_resource: library.googleapis.com/branch\n metrics:\n - library.googleapis.com/book/borrowed_count", + "id": "Billing", + "properties": { + "consumerDestinations": { + "description": "Billing configurations for sending metrics to the consumer project.\nThere can be multiple consumer destinations per service, each one must have\na different monitored resource type. A metric can be used in at most\none consumer destination.", "items": { - "$ref": "Endpoint" - } - }, - "apis": { - "description": "A list of API interfaces exported by this service. Only the `name` field\nof the google.protobuf.Api needs to be provided by the configuration\nauthor, as the remaining fields will be derived from the IDL during the\nnormalization process. It is an error to specify an API interface here\nwhich cannot be resolved against the associated IDL files.", - "type": "array", + "$ref": "BillingDestination" + }, + "type": "array" + } + }, + "type": "object" + }, + "BillingConfig": { + "description": "Describes billing configuration for a new tenant project.", + "id": "BillingConfig", + "properties": { + "billingAccount": { + "description": "Name of the billing account.\nFor example `billingAccounts/012345-567890-ABCDEF`.", + "type": "string" + } + }, + "type": "object" + }, + "BillingDestination": { + "description": "Configuration of a specific billing destination (Currently only support\nbill against consumer project).", + "id": "BillingDestination", + "properties": { + "metrics": { + "description": "Names of the metrics to report to this billing destination.\nEach name must be defined in Service.metrics section.", "items": { - "$ref": "Api" - } + "type": "string" + }, + "type": "array" }, - "logs": { - "description": "Defines the logs used by this service.", - "type": "array", + "monitoredResource": { + "description": "The monitored resource type. The type must be defined in\nService.monitored_resources section.", + "type": "string" + } + }, + "type": "object" + }, + "CancelOperationRequest": { + "description": "The request message for Operations.CancelOperation.", + "id": "CancelOperationRequest", + "properties": {}, + "type": "object" + }, + "Context": { + "description": "`Context` defines which contexts an API requests.\n\nExample:\n\n context:\n rules:\n - selector: \"*\"\n requested:\n - google.rpc.context.ProjectContext\n - google.rpc.context.OriginContext\n\nThe above specifies that all methods in the API request\n`google.rpc.context.ProjectContext` and\n`google.rpc.context.OriginContext`.\n\nAvailable context types are defined in package\n`google.rpc.context`.\n\nThis also provides mechanism to whitelist any protobuf message extension that\ncan be sent in grpc metadata using “x-goog-ext-\u003cextension_id\u003e-bin” and\n“x-goog-ext-\u003cextension_id\u003e-jspb” format. For example, list any service\nspecific protobuf types that can appear in grpc metadata as follows in your\nyaml file:\n\nExample:\n\n context:\n rules:\n - selector: \"google.example.library.v1.LibraryService.CreateBook\"\n allowed_request_extensions:\n - google.foo.v1.NewExtension\n allowed_response_extensions:\n - google.foo.v1.NewExtension\n\nYou can also specify extension ID instead of fully qualified extension name\nhere.", + "id": "Context", + "properties": { + "rules": { + "description": "A list of RPC context rules that apply to individual API methods.\n\n**NOTE:** All service configuration rules follow \"last one wins\" order.", "items": { - "$ref": "LogDescriptor" - } + "$ref": "ContextRule" + }, + "type": "array" + } + }, + "type": "object" + }, + "ContextRule": { + "description": "A context rule provides information about the context for an individual API\nelement.", + "id": "ContextRule", + "properties": { + "allowedRequestExtensions": { + "description": "A list of full type names or extension IDs of extensions allowed in grpc\nside channel from client to backend.", + "items": { + "type": "string" + }, + "type": "array" + }, + "allowedResponseExtensions": { + "description": "A list of full type names or extension IDs of extensions allowed in grpc\nside channel from backend to client.", + "items": { + "type": "string" + }, + "type": "array" + }, + "provided": { + "description": "A list of full type names of provided contexts.", + "items": { + "type": "string" + }, + "type": "array" + }, + "requested": { + "description": "A list of full type names of requested contexts.", + "items": { + "type": "string" + }, + "type": "array" + }, + "selector": { + "description": "Selects the methods to which this rule applies.\n\nRefer to selector for syntax details.", + "type": "string" + } + }, + "type": "object" + }, + "Control": { + "description": "Selects and configures the service controller used by the service. The\nservice controller handles features like abuse, quota, billing, logging,\nmonitoring, etc.", + "id": "Control", + "properties": { + "environment": { + "description": "The service control environment to use. If empty, no control plane\nfeature (like quota and billing) will be enabled.", + "type": "string" + } + }, + "type": "object" + }, + "CreateTenancyUnitRequest": { + "description": "Request to create a tenancy unit for a consumer of a service.", + "id": "CreateTenancyUnitRequest", + "properties": { + "tenancyUnitId": { + "description": "Optional producer provided identifier of the tenancy unit.\nMust be no longer than 40 characters and preferably URI friendly.\nIf it is not provided, a UID for the tenancy unit will be auto generated.\nIt must be unique across a service.\nIf the tenancy unit already exists for the service and consumer pair,\n`CreateTenancyUnit` will return the existing tenancy unit if the provided\nidentifier is identical or empty, otherwise the call will fail.", + "type": "string" + } + }, + "type": "object" + }, + "CustomAuthRequirements": { + "description": "Configuration for a custom authentication provider.", + "id": "CustomAuthRequirements", + "properties": { + "provider": { + "description": "A configuration string containing connection information for the\nauthentication provider, typically formatted as a SmartService string\n(go/smartservice).", + "type": "string" + } + }, + "type": "object" + }, + "CustomError": { + "description": "Customize service error responses. For example, list any service\nspecific protobuf types that can appear in error detail lists of\nerror responses.\n\nExample:\n\n custom_error:\n types:\n - google.foo.v1.CustomError\n - google.foo.v1.AnotherError", + "id": "CustomError", + "properties": { + "rules": { + "description": "The list of custom error rules that apply to individual API messages.\n\n**NOTE:** All service configuration rules follow \"last one wins\" order.", + "items": { + "$ref": "CustomErrorRule" + }, + "type": "array" }, "types": { - "description": "A list of all proto message types included in this API service.\nTypes referenced directly or indirectly by the `apis` are\nautomatically included. Messages which are not referenced but\nshall be included, such as types used by the `google.protobuf.Any` type,\nshould be listed here by name. Example:\n\n types:\n - name: google.protobuf.Int32", - "type": "array", + "description": "The list of custom error detail types, e.g. 'google.foo.v1.CustomError'.", "items": { - "$ref": "Type" - } - }, - "sourceInfo": { - "description": "Output only. The source information for this configuration if available.", - "$ref": "SourceInfo" - }, - "http": { - "$ref": "Http", - "description": "HTTP configuration." - }, - "backend": { - "description": "API backend configuration.", - "$ref": "Backend" - }, - "systemParameters": { - "$ref": "SystemParameters", - "description": "System parameter configuration." - }, - "documentation": { - "$ref": "Documentation", - "description": "Additional API documentation." - }, - "monitoredResources": { - "description": "Defines the monitored resources used by this service. This is required\nby the Service.monitoring and Service.logging configurations.", - "type": "array", - "items": { - "$ref": "MonitoredResourceDescriptor" - } - }, - "logging": { - "description": "Logging configuration.", - "$ref": "Logging" - }, - "enums": { - "description": "A list of all enum types included in this API service. Enums\nreferenced directly or indirectly by the `apis` are automatically\nincluded. Enums which are not referenced but shall be included\nshould be listed here by name. Example:\n\n enums:\n - name: google.someapi.v1.SomeEnum", - "type": "array", - "items": { - "$ref": "Enum" - } - }, - "context": { - "$ref": "Context", - "description": "Context configuration." - }, - "id": { - "description": "A unique ID for a specific instance of this message, typically assigned\nby the client for tracking purpose. If empty, the server may choose to\ngenerate one instead.", - "type": "string" - }, - "usage": { - "$ref": "Usage", - "description": "Configuration controlling usage of this service." - }, - "metrics": { - "description": "Defines the metrics used by this service.", - "type": "array", - "items": { - "$ref": "MetricDescriptor" - } + "type": "string" + }, + "type": "array" } }, - "id": "Service" + "type": "object" }, - "ListOperationsResponse": { - "description": "The response message for Operations.ListOperations.", - "type": "object", + "CustomErrorRule": { + "description": "A custom error rule.", + "id": "CustomErrorRule", "properties": { - "nextPageToken": { - "description": "The standard List next-page token.", - "type": "string" + "isErrorType": { + "description": "Mark this message as possible payload in error response. Otherwise,\nobjects of this type will be filtered when they appear in error payload.", + "type": "boolean" }, - "operations": { - "description": "A list of operations that matches the specified filter in the request.", - "type": "array", - "items": { - "$ref": "Operation" - } + "selector": { + "description": "Selects messages to which this rule applies.\n\nRefer to selector for syntax details.", + "type": "string" } }, - "id": "ListOperationsResponse" + "type": "object" }, "CustomHttpPattern": { "description": "A custom pattern is used for defining custom HTTP verb.", - "type": "object", + "id": "CustomHttpPattern", "properties": { "kind": { "description": "The name of this custom HTTP verb.", @@ -1490,627 +859,225 @@ "type": "string" } }, - "id": "CustomHttpPattern" + "type": "object" }, - "SystemParameterRule": { - "description": "Define a system parameter rule mapping system parameter definitions to\nmethods.", - "type": "object", + "Documentation": { + "description": "`Documentation` provides the information for describing a service.\n\nExample:\n\u003cpre\u003e\u003ccode\u003edocumentation:\n summary: \u003e\n The Google Calendar API gives access\n to most calendar features.\n pages:\n - name: Overview\n content: \u0026#40;== include google/foo/overview.md ==\u0026#41;\n - name: Tutorial\n content: \u0026#40;== include google/foo/tutorial.md ==\u0026#41;\n subpages;\n - name: Java\n content: \u0026#40;== include google/foo/tutorial_java.md ==\u0026#41;\n rules:\n - selector: google.calendar.Calendar.Get\n description: \u003e\n ...\n - selector: google.calendar.Calendar.Put\n description: \u003e\n ...\n\u003c/code\u003e\u003c/pre\u003e\nDocumentation is provided in markdown syntax. In addition to\nstandard markdown features, definition lists, tables and fenced\ncode blocks are supported. Section headers can be provided and are\ninterpreted relative to the section nesting of the context where\na documentation fragment is embedded.\n\nDocumentation from the IDL is merged with documentation defined\nvia the config at normalization time, where documentation provided\nby config rules overrides IDL provided.\n\nA number of constructs specific to the API platform are supported\nin documentation text.\n\nIn order to reference a proto element, the following\nnotation can be used:\n\u003cpre\u003e\u003ccode\u003e\u0026#91;fully.qualified.proto.name]\u0026#91;]\u003c/code\u003e\u003c/pre\u003e\nTo override the display text used for the link, this can be used:\n\u003cpre\u003e\u003ccode\u003e\u0026#91;display text]\u0026#91;fully.qualified.proto.name]\u003c/code\u003e\u003c/pre\u003e\nText can be excluded from doc using the following notation:\n\u003cpre\u003e\u003ccode\u003e\u0026#40;-- internal comment --\u0026#41;\u003c/code\u003e\u003c/pre\u003e\n\nA few directives are available in documentation. Note that\ndirectives must appear on a single line to be properly\nidentified. The `include` directive includes a markdown file from\nan external source:\n\u003cpre\u003e\u003ccode\u003e\u0026#40;== include path/to/file ==\u0026#41;\u003c/code\u003e\u003c/pre\u003e\nThe `resource_for` directive marks a message to be the resource of\na collection in REST view. If it is not specified, tools attempt\nto infer the resource from the operations in a collection:\n\u003cpre\u003e\u003ccode\u003e\u0026#40;== resource_for v1.shelves.books ==\u0026#41;\u003c/code\u003e\u003c/pre\u003e\nThe directive `suppress_warning` does not directly affect documentation\nand is documented together with service config validation.", + "id": "Documentation", "properties": { - "parameters": { - "description": "Define parameters. Multiple names may be defined for a parameter.\nFor a given method call, only one of them should be used. If multiple\nnames are used the behavior is implementation-dependent.\nIf none of the specified names are present the behavior is\nparameter-dependent.", - "type": "array", + "documentationRootUrl": { + "description": "The URL to the root of documentation.", + "type": "string" + }, + "overview": { + "description": "Declares a single overview page. For example:\n\u003cpre\u003e\u003ccode\u003edocumentation:\n summary: ...\n overview: \u0026#40;== include overview.md ==\u0026#41;\n\u003c/code\u003e\u003c/pre\u003e\nThis is a shortcut for the following declaration (using pages style):\n\u003cpre\u003e\u003ccode\u003edocumentation:\n summary: ...\n pages:\n - name: Overview\n content: \u0026#40;== include overview.md ==\u0026#41;\n\u003c/code\u003e\u003c/pre\u003e\nNote: you cannot specify both `overview` field and `pages` field.", + "type": "string" + }, + "pages": { + "description": "The top level pages for the documentation set.", "items": { - "$ref": "SystemParameter" - } + "$ref": "Page" + }, + "type": "array" }, - "selector": { - "description": "Selects the methods to which this rule applies. Use '*' to indicate all\nmethods in all APIs.\n\nRefer to selector for syntax details.", - "type": "string" - } - }, - "id": "SystemParameterRule" - }, - "BillingConfig": { - "description": "Describes billing configuration for new a Tenant Project", - "type": "object", - "properties": { - "billingAccount": { - "description": "Name of the billing account.\nFor example `billingAccounts/012345-567890-ABCDEF`.", - "type": "string" - } - }, - "id": "BillingConfig" - }, - "TenantResource": { - "description": "Resource constituting the TenancyUnit.", - "type": "object", - "properties": { - "resource": { - "description": "@OutputOnly Identifier of the tenant resource.\nFor cloud projects it is in the form 'projects/{number}'.\nFor example 'projects/123456'.", - "type": "string" - }, - "status": { - "description": "Status of tenant resource.", - "type": "string", - "enumDescriptions": [ - "Unspecified status is the default unset value.", - "Creation of the tenant resource is ongoing.", - "Active resource.", - "Deletion of the resource is ongoing.", - "Tenant resource creation or deletion has failed." - ], - "enum": [ - "STATUS_UNSPECIFIED", - "PENDING_CREATE", - "ACTIVE", - "PENDING_DELETE", - "FAILED" - ] - }, - "tag": { - "description": "Unique per single tenancy unit.", - "type": "string" - } - }, - "id": "TenantResource" - }, - "RemoveTenantProjectRequest": { - "description": "Request message to remove tenant project resource from the tenancy unit.", - "type": "object", - "properties": { - "tag": { - "description": "Tag of the resource within the tenancy unit.", - "type": "string" - } - }, - "id": "RemoveTenantProjectRequest" - }, - "HttpRule": { - "description": "`HttpRule` defines the mapping of an RPC method to one or more HTTP\nREST API methods. The mapping specifies how different portions of the RPC\nrequest message are mapped to URL path, URL query parameters, and\nHTTP request body. The mapping is typically specified as an\n`google.api.http` annotation on the RPC method,\nsee \"google/api/annotations.proto\" for details.\n\nThe mapping consists of a field specifying the path template and\nmethod kind. The path template can refer to fields in the request\nmessage, as in the example below which describes a REST GET\noperation on a resource collection of messages:\n\n\n service Messaging {\n rpc GetMessage(GetMessageRequest) returns (Message) {\n option (google.api.http).get = \"/v1/messages/{message_id}/{sub.subfield}\";\n }\n }\n message GetMessageRequest {\n message SubMessage {\n string subfield = 1;\n }\n string message_id = 1; // mapped to the URL\n SubMessage sub = 2; // `sub.subfield` is url-mapped\n }\n message Message {\n string text = 1; // content of the resource\n }\n\nThe same http annotation can alternatively be expressed inside the\n`GRPC API Configuration` YAML file.\n\n http:\n rules:\n - selector: \u003cproto_package_name\u003e.Messaging.GetMessage\n get: /v1/messages/{message_id}/{sub.subfield}\n\nThis definition enables an automatic, bidrectional mapping of HTTP\nJSON to RPC. Example:\n\nHTTP | RPC\n-----|-----\n`GET /v1/messages/123456/foo` | `GetMessage(message_id: \"123456\" sub: SubMessage(subfield: \"foo\"))`\n\nIn general, not only fields but also field paths can be referenced\nfrom a path pattern. Fields mapped to the path pattern cannot be\nrepeated and must have a primitive (non-message) type.\n\nAny fields in the request message which are not bound by the path\npattern automatically become (optional) HTTP query\nparameters. Assume the following definition of the request message:\n\n\n service Messaging {\n rpc GetMessage(GetMessageRequest) returns (Message) {\n option (google.api.http).get = \"/v1/messages/{message_id}\";\n }\n }\n message GetMessageRequest {\n message SubMessage {\n string subfield = 1;\n }\n string message_id = 1; // mapped to the URL\n int64 revision = 2; // becomes a parameter\n SubMessage sub = 3; // `sub.subfield` becomes a parameter\n }\n\n\nThis enables a HTTP JSON to RPC mapping as below:\n\nHTTP | RPC\n-----|-----\n`GET /v1/messages/123456?revision=2&sub.subfield=foo` | `GetMessage(message_id: \"123456\" revision: 2 sub: SubMessage(subfield: \"foo\"))`\n\nNote that fields which are mapped to HTTP parameters must have a\nprimitive type or a repeated primitive type. Message types are not\nallowed. In the case of a repeated type, the parameter can be\nrepeated in the URL, as in `...?param=A¶m=B`.\n\nFor HTTP method kinds which allow a request body, the `body` field\nspecifies the mapping. Consider a REST update method on the\nmessage resource collection:\n\n\n service Messaging {\n rpc UpdateMessage(UpdateMessageRequest) returns (Message) {\n option (google.api.http) = {\n put: \"/v1/messages/{message_id}\"\n body: \"message\"\n };\n }\n }\n message UpdateMessageRequest {\n string message_id = 1; // mapped to the URL\n Message message = 2; // mapped to the body\n }\n\n\nThe following HTTP JSON to RPC mapping is enabled, where the\nrepresentation of the JSON in the request body is determined by\nprotos JSON encoding:\n\nHTTP | RPC\n-----|-----\n`PUT /v1/messages/123456 { \"text\": \"Hi!\" }` | `UpdateMessage(message_id: \"123456\" message { text: \"Hi!\" })`\n\nThe special name `*` can be used in the body mapping to define that\nevery field not bound by the path template should be mapped to the\nrequest body. This enables the following alternative definition of\nthe update method:\n\n service Messaging {\n rpc UpdateMessage(Message) returns (Message) {\n option (google.api.http) = {\n put: \"/v1/messages/{message_id}\"\n body: \"*\"\n };\n }\n }\n message Message {\n string message_id = 1;\n string text = 2;\n }\n\n\nThe following HTTP JSON to RPC mapping is enabled:\n\nHTTP | RPC\n-----|-----\n`PUT /v1/messages/123456 { \"text\": \"Hi!\" }` | `UpdateMessage(message_id: \"123456\" text: \"Hi!\")`\n\nNote that when using `*` in the body mapping, it is not possible to\nhave HTTP parameters, as all fields not bound by the path end in\nthe body. This makes this option more rarely used in practice of\ndefining REST APIs. The common usage of `*` is in custom methods\nwhich don't use the URL at all for transferring data.\n\nIt is possible to define multiple HTTP methods for one RPC by using\nthe `additional_bindings` option. Example:\n\n service Messaging {\n rpc GetMessage(GetMessageRequest) returns (Message) {\n option (google.api.http) = {\n get: \"/v1/messages/{message_id}\"\n additional_bindings {\n get: \"/v1/users/{user_id}/messages/{message_id}\"\n }\n };\n }\n }\n message GetMessageRequest {\n string message_id = 1;\n string user_id = 2;\n }\n\n\nThis enables the following two alternative HTTP JSON to RPC\nmappings:\n\nHTTP | RPC\n-----|-----\n`GET /v1/messages/123456` | `GetMessage(message_id: \"123456\")`\n`GET /v1/users/me/messages/123456` | `GetMessage(user_id: \"me\" message_id: \"123456\")`\n\n# Rules for HTTP mapping\n\nThe rules for mapping HTTP path, query parameters, and body fields\nto the request message are as follows:\n\n1. The `body` field specifies either `*` or a field path, or is\n omitted. If omitted, it indicates there is no HTTP request body.\n2. Leaf fields (recursive expansion of nested messages in the\n request) can be classified into three types:\n (a) Matched in the URL template.\n (b) Covered by body (if body is `*`, everything except (a) fields;\n else everything under the body field)\n (c) All other fields.\n3. URL query parameters found in the HTTP request are mapped to (c) fields.\n4. Any body sent with an HTTP request can contain only (b) fields.\n\nThe syntax of the path template is as follows:\n\n Template = \"/\" Segments [ Verb ] ;\n Segments = Segment { \"/\" Segment } ;\n Segment = \"*\" | \"**\" | LITERAL | Variable ;\n Variable = \"{\" FieldPath [ \"=\" Segments ] \"}\" ;\n FieldPath = IDENT { \".\" IDENT } ;\n Verb = \":\" LITERAL ;\n\nThe syntax `*` matches a single path segment. The syntax `**` matches zero\nor more path segments, which must be the last part of the path except the\n`Verb`. The syntax `LITERAL` matches literal text in the path.\n\nThe syntax `Variable` matches part of the URL path as specified by its\ntemplate. A variable template must not contain other variables. If a variable\nmatches a single path segment, its template may be omitted, e.g. `{var}`\nis equivalent to `{var=*}`.\n\nIf a variable contains exactly one path segment, such as `\"{var}\"` or\n`\"{var=*}\"`, when such a variable is expanded into a URL path, all characters\nexcept `[-_.~0-9a-zA-Z]` are percent-encoded. Such variables show up in the\nDiscovery Document as `{var}`.\n\nIf a variable contains one or more path segments, such as `\"{var=foo/*}\"`\nor `\"{var=**}\"`, when such a variable is expanded into a URL path, all\ncharacters except `[-_.~/0-9a-zA-Z]` are percent-encoded. Such variables\nshow up in the Discovery Document as `{+var}`.\n\nNOTE: While the single segment variable matches the semantics of\n[RFC 6570](https://tools.ietf.org/html/rfc6570) Section 3.2.2\nSimple String Expansion, the multi segment variable **does not** match\nRFC 6570 Reserved Expansion. The reason is that the Reserved Expansion\ndoes not expand special characters like `?` and `#`, which would lead\nto invalid URLs.\n\nNOTE: the field paths in variables and in the `body` must not refer to\nrepeated fields or map fields.", - "type": "object", - "properties": { - "mediaDownload": { - "description": "Use this only for Scotty Requests. Do not use this for bytestream methods.\nFor media support, add instead [][google.bytestream.RestByteStream] as an\nAPI to your configuration.", - "$ref": "MediaDownload" - }, - "post": { - "description": "Used for creating a resource.", - "type": "string" - }, - "restMethodName": { - "description": "DO NOT USE. This is an experimental field.\n\nOptional. The rest method name is by default derived from the URL\npattern. If specified, this field overrides the default method name.\nExample:\n\n rpc CreateResource(CreateResourceRequest)\n returns (CreateResourceResponse) {\n option (google.api.http) = {\n post: \"/v1/resources\",\n body: \"resource\",\n rest_method_name: \"insert\"\n };\n }\n\nThis method has the automatically derived rest method name\n\"create\", but for backwards compatibility with apiary, it is specified as\ninsert.", - "type": "string" - }, - "additionalBindings": { - "description": "Additional HTTP bindings for the selector. Nested bindings must\nnot contain an `additional_bindings` field themselves (that is,\nthe nesting may only be one level deep).", - "type": "array", - "items": { - "$ref": "HttpRule" - } - }, - "restCollection": { - "description": "DO NOT USE. This is an experimental field.\n\nOptional. The REST collection name is by default derived from the URL\npattern. If specified, this field overrides the default collection name.\nExample:\n\n rpc AddressesAggregatedList(AddressesAggregatedListRequest)\n returns (AddressesAggregatedListResponse) {\n option (google.api.http) = {\n get: \"/v1/projects/{project_id}/aggregated/addresses\"\n rest_collection: \"projects.addresses\"\n };\n }\n\nThis method has the automatically derived collection name\n\"projects.aggregated\". Because, semantically, this rpc is actually an\noperation on the \"projects.addresses\" collection, the `rest_collection`\nfield is configured to override the derived collection name.", - "type": "string" - }, - "mediaUpload": { - "description": "Use this only for Scotty Requests. Do not use this for media support using\nBytestream, add instead\n[][google.bytestream.RestByteStream] as an API to your\nconfiguration for Bytestream methods.", - "$ref": "MediaUpload" - }, - "selector": { - "description": "Selects methods to which this rule applies.\n\nRefer to selector for syntax details.", - "type": "string" - }, - "custom": { - "$ref": "CustomHttpPattern", - "description": "The custom pattern is used for specifying an HTTP method that is not\nincluded in the `pattern` field, such as HEAD, or \"*\" to leave the\nHTTP method unspecified for this rule. The wild-card rule is useful\nfor services that provide content to Web (HTML) clients." - }, - "get": { - "description": "Used for listing and getting information about resources.", - "type": "string" - }, - "patch": { - "description": "Used for updating a resource.", - "type": "string" - }, - "authorizations": { - "description": "Specifies the permission(s) required for an API element for the overall\nAPI request to succeed. It is typically used to mark request message fields\nthat contain the name of the resource and indicates the permissions that\nwill be checked on that resource.", - "type": "array", - "items": { - "$ref": "AuthorizationRule" - } - }, - "put": { - "description": "Used for updating a resource.", - "type": "string" - }, - "delete": { - "description": "Used for deleting a resource.", - "type": "string" - }, - "body": { - "description": "The name of the request field whose value is mapped to the HTTP body, or\n`*` for mapping all fields not captured by the path pattern to the HTTP\nbody. NOTE: the referred field must not be a repeated field and must be\npresent at the top-level of request message type.", - "type": "string" - } - }, - "id": "HttpRule" - }, - "VisibilityRule": { - "description": "A visibility rule provides visibility configuration for an individual API\nelement.", - "type": "object", - "properties": { - "restriction": { - "description": "A comma-separated list of visibility labels that apply to the `selector`.\nAny of the listed labels can be used to grant the visibility.\n\nIf a rule has multiple labels, removing one of the labels but not all of\nthem can break clients.\n\nExample:\n\n visibility:\n rules:\n - selector: google.calendar.Calendar.EnhancedSearch\n restriction: GOOGLE_INTERNAL, TRUSTED_TESTER\n\nRemoving GOOGLE_INTERNAL from this restriction will break clients that\nrely on this method and only had access to it through GOOGLE_INTERNAL.", - "type": "string" - }, - "selector": { - "description": "Selects methods, messages, fields, enums, etc. to which this rule applies.\n\nRefer to selector for syntax details.", - "type": "string" - } - }, - "id": "VisibilityRule" - }, - "MonitoringDestination": { - "description": "Configuration of a specific monitoring destination (the producer project\nor the consumer project).", - "type": "object", - "properties": { - "monitoredResource": { - "description": "The monitored resource type. The type must be defined in\nService.monitored_resources section.", - "type": "string" - }, - "metrics": { - "description": "Names of the metrics to report to this monitoring destination.\nEach name must be defined in Service.metrics section.", - "type": "array", - "items": { - "type": "string" - } - } - }, - "id": "MonitoringDestination" - }, - "TenancyUnit": { - "description": "Representation of a tenancy unit.", - "type": "object", - "properties": { - "tenantResources": { - "description": "Resources constituting the tenancy unit.\nThere can be at most 512 tenant resources in a tenancy units.", - "type": "array", - "items": { - "$ref": "TenantResource" - } - }, - "consumer": { - "description": "@OutputOnly Cloud resource One Platform Name of the consumer of this\nservice. For example 'projects/123456'.", - "type": "string" - }, - "createTime": { - "description": "@OutputOnly The time this tenancy unit was created.", - "format": "google-datetime", - "type": "string" - }, - "service": { - "description": "@OutputOnly Google Cloud API name of the service owning this tenancy unit.\nFor example 'serviceconsumermanagement.googleapis.com'.", - "type": "string" - }, - "name": { - "description": "Globally unique identifier of this tenancy unit\n\"services/{service}/{collection id}/{resource id}/tenancyUnits/{unit}\"", - "type": "string" - } - }, - "id": "TenancyUnit" - }, - "Visibility": { - "description": "`Visibility` defines restrictions for the visibility of service\nelements. Restrictions are specified using visibility labels\n(e.g., TRUSTED_TESTER) that are elsewhere linked to users and projects.\n\nUsers and projects can have access to more than one visibility label. The\neffective visibility for multiple labels is the union of each label's\nelements, plus any unrestricted elements.\n\nIf an element and its parents have no restrictions, visibility is\nunconditionally granted.\n\nExample:\n\n visibility:\n rules:\n - selector: google.calendar.Calendar.EnhancedSearch\n restriction: TRUSTED_TESTER\n - selector: google.calendar.Calendar.Delegate\n restriction: GOOGLE_INTERNAL\n\nHere, all methods are publicly visible except for the restricted methods\nEnhancedSearch and Delegate.", - "type": "object", - "properties": { "rules": { - "description": "A list of visibility rules that apply to individual API elements.\n\n**NOTE:** All service configuration rules follow \"last one wins\" order.", - "type": "array", + "description": "A list of documentation rules that apply to individual API elements.\n\n**NOTE:** All service configuration rules follow \"last one wins\" order.", "items": { - "$ref": "VisibilityRule" - } - } - }, - "id": "Visibility" - }, - "SystemParameters": { - "description": "### System parameter configuration\n\nA system parameter is a special kind of parameter defined by the API\nsystem, not by an individual API. It is typically mapped to an HTTP header\nand/or a URL query parameter. This configuration specifies which methods\nchange the names of the system parameters.", - "type": "object", - "properties": { - "rules": { - "description": "Define system parameters.\n\nThe parameters defined here will override the default parameters\nimplemented by the system. If this field is missing from the service\nconfig, default system parameters will be used. Default system parameters\nand names is implementation-dependent.\n\nExample: define api key for all methods\n\n system_parameters\n rules:\n - selector: \"*\"\n parameters:\n - name: api_key\n url_query_parameter: api_key\n\n\nExample: define 2 api key names for a specific method.\n\n system_parameters\n rules:\n - selector: \"/ListShelves\"\n parameters:\n - name: api_key\n http_header: Api-Key1\n - name: api_key\n http_header: Api-Key2\n\n**NOTE:** All service configuration rules follow \"last one wins\" order.", - "type": "array", - "items": { - "$ref": "SystemParameterRule" - } - } - }, - "id": "SystemParameters" - }, - "Quota": { - "description": "Quota configuration helps to achieve fairness and budgeting in service\nusage.\n\nThe quota configuration works this way:\n- The service configuration defines a set of metrics.\n- For API calls, the quota.metric_rules maps methods to metrics with\n corresponding costs.\n- The quota.limits defines limits on the metrics, which will be used for\n quota checks at runtime.\n\nAn example quota configuration in yaml format:\n\n quota:\n\n - name: apiWriteQpsPerProject\n metric: library.googleapis.com/write_calls\n unit: \"1/min/{project}\" # rate limit for consumer projects\n values:\n STANDARD: 10000\n\n\n # The metric rules bind all methods to the read_calls metric,\n # except for the UpdateBook and DeleteBook methods. These two methods\n # are mapped to the write_calls metric, with the UpdateBook method\n # consuming at twice rate as the DeleteBook method.\n metric_rules:\n - selector: \"*\"\n metric_costs:\n library.googleapis.com/read_calls: 1\n - selector: google.example.library.v1.LibraryService.UpdateBook\n metric_costs:\n library.googleapis.com/write_calls: 2\n - selector: google.example.library.v1.LibraryService.DeleteBook\n metric_costs:\n library.googleapis.com/write_calls: 1\n\n Corresponding Metric definition:\n\n metrics:\n - name: library.googleapis.com/read_calls\n display_name: Read requests\n metric_kind: DELTA\n value_type: INT64\n\n - name: library.googleapis.com/write_calls\n display_name: Write requests\n metric_kind: DELTA\n value_type: INT64", - "type": "object", - "properties": { - "limits": { - "description": "List of `QuotaLimit` definitions for the service.", - "type": "array", - "items": { - "$ref": "QuotaLimit" - } + "$ref": "DocumentationRule" + }, + "type": "array" }, - "metricRules": { - "description": "List of `MetricRule` definitions, each one mapping a selected method to one\nor more metrics.", - "type": "array", - "items": { - "$ref": "MetricRule" - } - } - }, - "id": "Quota" - }, - "TenantProjectConfig": { - "description": "This structure defines a tenant project to be added to the specified tenancy\nunit and its initial configuration and properties. A project lien will be\ncreated for the tenant project to prevent the tenant project from being\ndeleted accidentally. The lien will be deleted as part of tenant project\nremoval.", - "type": "object", - "properties": { - "tenantProjectPolicy": { - "description": "Describes ownership and policies for the new tenant project. Required.", - "$ref": "TenantProjectPolicy" - }, - "folder": { - "description": "Folder where project in this tenancy unit must be located\nThis folder must have been previously created with proper\npermissions for the caller to create and configure a project in it.\nValid folder resource names have the format `folders/{folder_number}`\n(for example, `folders/123456`).", - "type": "string" - }, - "labels": { - "description": "Labels that will be applied to this project.", - "type": "object", - "additionalProperties": { - "type": "string" - } - }, - "serviceAccountConfig": { - "$ref": "ServiceAccountConfig", - "description": "Configuration for IAM service account on tenant project." - }, - "services": { - "description": "Google Cloud API names of services that will be activated on this project\nduring provisioning. If any of these services can not be activated,\naddTenantProject method will fail.\nFor example: 'compute.googleapis.com','cloudfunctions.googleapis.com'", - "type": "array", - "items": { - "type": "string" - } - }, - "billingConfig": { - "description": "Billing account properties.\nIt may be specified explicitly, or created from the specified group\nduring provisioning", - "$ref": "BillingConfig" - } - }, - "id": "TenantProjectConfig" - }, - "PolicyBinding": { - "description": "Translates to IAM Policy bindings (without auditing at this level)", - "type": "object", - "properties": { - "members": { - "description": "Uses the same format as in IAM policy.\n`member` must include both prefix and id. E.g., `user:{emailId}`,\n`serviceAccount:{emailId}`, `group:{emailId}`.", - "type": "array", - "items": { - "type": "string" - } - }, - "role": { - "description": "Role. (https://cloud.google.com/iam/docs/understanding-roles)\nFor example, `roles/viewer`, `roles/editor`, or `roles/owner`.", + "summary": { + "description": "A short summary of what the service does. Can only be provided by\nplain text.", "type": "string" } }, - "id": "PolicyBinding" + "type": "object" }, - "LoggingDestination": { - "description": "Configuration of a specific logging destination (the producer project\nor the consumer project).", - "type": "object", + "DocumentationRule": { + "description": "A documentation rule provides information about individual API elements.", + "id": "DocumentationRule", "properties": { - "logs": { - "description": "Names of the logs to be sent to this destination. Each name must\nbe defined in the Service.logs section. If the log name is\nnot a domain scoped name, it will be automatically prefixed with\nthe service name followed by \"/\".", - "type": "array", - "items": { - "type": "string" - } - }, - "monitoredResource": { - "description": "The monitored resource type. The type must be defined in the\nService.monitored_resources section.", - "type": "string" - } - }, - "id": "LoggingDestination" - }, - "Option": { - "description": "A protocol buffer option, which can be attached to a message, field,\nenumeration, etc.", - "type": "object", - "properties": { - "value": { - "description": "The option's value packed in an Any message. If the value is a primitive,\nthe corresponding wrapper type defined in google/protobuf/wrappers.proto\nshould be used. If the value is an enum, it should be stored as an int32\nvalue using the google.protobuf.Int32Value type.", - "type": "object", - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - } - }, - "name": { - "description": "The option's name. For protobuf built-in options (options defined in\ndescriptor.proto), this is the short name. For example, `\"map_entry\"`.\nFor custom options, it should be the fully-qualified name. For example,\n`\"google.api.http\"`.", - "type": "string" - } - }, - "id": "Option" - }, - "Logging": { - "description": "Logging configuration of the service.\n\nThe following example shows how to configure logs to be sent to the\nproducer and consumer projects. In the example, the `activity_history`\nlog is sent to both the producer and consumer projects, whereas the\n`purchase_history` log is only sent to the producer project.\n\n monitored_resources:\n - type: library.googleapis.com/branch\n labels:\n - key: /city\n description: The city where the library branch is located in.\n - key: /name\n description: The name of the branch.\n logs:\n - name: activity_history\n labels:\n - key: /customer_id\n - name: purchase_history\n logging:\n producer_destinations:\n - monitored_resource: library.googleapis.com/branch\n logs:\n - activity_history\n - purchase_history\n consumer_destinations:\n - monitored_resource: library.googleapis.com/branch\n logs:\n - activity_history", - "type": "object", - "properties": { - "consumerDestinations": { - "description": "Logging configurations for sending logs to the consumer project.\nThere can be multiple consumer destinations, each one must have a\ndifferent monitored resource type. A log can be used in at most\none consumer destination.", - "type": "array", - "items": { - "$ref": "LoggingDestination" - } - }, - "producerDestinations": { - "description": "Logging configurations for sending logs to the producer project.\nThere can be multiple producer destinations, each one must have a\ndifferent monitored resource type. A log can be used in at most\none producer destination.", - "type": "array", - "items": { - "$ref": "LoggingDestination" - } - } - }, - "id": "Logging" - }, - "QuotaLimit": { - "description": "`QuotaLimit` defines a specific limit that applies over a specified duration\nfor a limit type. There can be at most one limit for a duration and limit\ntype combination defined within a `QuotaGroup`.", - "type": "object", - "properties": { - "displayName": { - "description": "User-visible display name for this limit.\nOptional. If not set, the UI will provide a default display name based on\nthe quota configuration. This field can be used to override the default\ndisplay name generated from the configuration.", - "type": "string" - }, - "metric": { - "description": "The name of the metric this quota limit applies to. The quota limits with\nthe same metric will be checked together during runtime. The metric must be\ndefined within the service config.", + "deprecationDescription": { + "description": "Deprecation description of the selected element(s). It can be provided if an\nelement is marked as `deprecated`.", "type": "string" }, "description": { - "description": "Optional. User-visible, extended description for this quota limit.\nShould be used only when more context is needed to understand this limit\nthan provided by the limit's display name (see: `display_name`).", + "description": "Description of the selected API(s).", "type": "string" }, - "values": { - "description": "Tiered limit values. You must specify this as a key:value pair, with an\ninteger value that is the maximum number of requests allowed for the\nspecified unit. Currently only STANDARD is supported.", - "type": "object", - "additionalProperties": { - "format": "int64", - "type": "string" - } - }, - "unit": { - "description": "Specify the unit of the quota limit. It uses the same syntax as\nMetric.unit. The supported unit kinds are determined by the quota\nbackend system.\n\nHere are some examples:\n* \"1/min/{project}\" for quota per minute per project.\n\nNote: the order of unit components is insignificant.\nThe \"1\" at the beginning is required to follow the metric unit syntax.", - "type": "string" - }, - "maxLimit": { - "description": "Maximum number of tokens that can be consumed during the specified\nduration. Client application developers can override the default limit up\nto this maximum. If specified, this value cannot be set to a value less\nthan the default limit. If not specified, it is set to the default limit.\n\nTo allow clients to apply overrides with no upper bound, set this to -1,\nindicating unlimited maximum quota.\n\nUsed by group-based quotas only.", - "format": "int64", - "type": "string" - }, - "name": { - "description": "Name of the quota limit.\n\nThe name must be provided, and it must be unique within the service. The\nname can only include alphanumeric characters as well as '-'.\n\nThe maximum length of the limit name is 64 characters.", - "type": "string" - }, - "freeTier": { - "description": "Free tier value displayed in the Developers Console for this limit.\nThe free tier is the number of tokens that will be subtracted from the\nbilled amount when billing is enabled.\nThis field can only be set on a limit with duration \"1d\", in a billable\ngroup; it is invalid on any other limit. If this field is not set, it\ndefaults to 0, indicating that there is no free tier for this service.\n\nUsed by group-based quotas only.", - "format": "int64", - "type": "string" - }, - "duration": { - "description": "Duration of this limit in textual notation. Example: \"100s\", \"24h\", \"1d\".\nFor duration longer than a day, only multiple of days is supported. We\nsupport only \"100s\" and \"1d\" for now. Additional support will be added in\nthe future. \"0\" indicates indefinite duration.\n\nUsed by group-based quotas only.", - "type": "string" - }, - "defaultLimit": { - "description": "Default number of tokens that can be consumed during the specified\nduration. This is the number of tokens assigned when a client\napplication developer activates the service for his/her project.\n\nSpecifying a value of 0 will block all requests. This can be used if you\nare provisioning quota to selected consumers and blocking others.\nSimilarly, a value of -1 will indicate an unlimited quota. No other\nnegative values are allowed.\n\nUsed by group-based quotas only.", - "format": "int64", + "selector": { + "description": "The selector is a comma-separated list of patterns. Each pattern is a\nqualified name of the element which may end in \"*\", indicating a wildcard.\nWildcards are only allowed at the end and for a whole component of the\nqualified name, i.e. \"foo.*\" is ok, but not \"foo.b*\" or \"foo.*.bar\". To\nspecify a default for all applicable elements, the whole pattern \"*\"\nis used.", "type": "string" } }, - "id": "QuotaLimit" + "type": "object" }, - "Method": { - "description": "Method represents a method of an API interface.", - "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" + }, + "Endpoint": { + "description": "`Endpoint` describes a network endpoint that serves a set of APIs.\nA service may expose any number of endpoints, and all endpoints share the\nsame service configuration, such as quota configuration and monitoring\nconfiguration.\n\nExample service configuration:\n\n name: library-example.googleapis.com\n endpoints:\n # Below entry makes 'google.example.library.v1.Library'\n # API be served from endpoint address library-example.googleapis.com.\n # It also allows HTTP OPTIONS calls to be passed to the backend, for\n # it to decide whether the subsequent cross-origin request is\n # allowed to proceed.\n - name: library-example.googleapis.com\n allow_cors: true", + "id": "Endpoint", "properties": { - "responseTypeUrl": { - "description": "The URL of the output message type.", + "aliases": { + "description": "DEPRECATED: This field is no longer supported. Instead of using aliases,\nplease specify multiple google.api.Endpoint for each of the intended\naliases.\n\nAdditional names that this endpoint will be hosted on.", + "items": { + "type": "string" + }, + "type": "array" + }, + "allowCors": { + "description": "Allowing\n[CORS](https://en.wikipedia.org/wiki/Cross-origin_resource_sharing), aka\ncross-domain traffic, would allow the backends served from this endpoint to\nreceive and respond to HTTP OPTIONS requests. The response will be used by\nthe browser to determine whether the subsequent cross-origin request is\nallowed to proceed.", + "type": "boolean" + }, + "features": { + "description": "The list of features enabled on this endpoint.", + "items": { + "type": "string" + }, + "type": "array" + }, + "name": { + "description": "The canonical name of this endpoint.", + "type": "string" + }, + "target": { + "description": "The specification of an Internet routable address of API frontend that will\nhandle requests to this [API Endpoint](https://cloud.google.com/apis/design/glossary).\nIt should be either a valid IPv4 address or a fully-qualified domain name.\nFor example, \"8.8.8.8\" or \"myservice.appspot.com\".", + "type": "string" + } + }, + "type": "object" + }, + "Enum": { + "description": "Enum type definition.", + "id": "Enum", + "properties": { + "enumvalue": { + "description": "Enum value definitions.", + "items": { + "$ref": "EnumValue" + }, + "type": "array" + }, + "name": { + "description": "Enum type name.", "type": "string" }, "options": { - "description": "Any metadata attached to the method.", - "type": "array", + "description": "Protocol buffer options.", "items": { "$ref": "Option" - } + }, + "type": "array" }, - "responseStreaming": { - "description": "If true, the response is streamed.", - "type": "boolean" - }, - "name": { - "description": "The simple name of this method.", - "type": "string" - }, - "requestTypeUrl": { - "description": "A URL of the input message type.", - "type": "string" - }, - "requestStreaming": { - "description": "If true, the request is streamed.", - "type": "boolean" + "sourceContext": { + "$ref": "SourceContext", + "description": "The source context." }, "syntax": { - "enumDescriptions": [ - "Syntax `proto2`.", - "Syntax `proto3`." - ], + "description": "The source syntax.", "enum": [ "SYNTAX_PROTO2", "SYNTAX_PROTO3" ], - "description": "The source syntax of this method.", + "enumDescriptions": [ + "Syntax `proto2`.", + "Syntax `proto3`." + ], "type": "string" } }, - "id": "Method" + "type": "object" }, - "Mixin": { - "description": "Declares an API Interface to be included in this interface. The including\ninterface must redeclare all the methods from the included interface, but\ndocumentation and options are inherited as follows:\n\n- If after comment and whitespace stripping, the documentation\n string of the redeclared method is empty, it will be inherited\n from the original method.\n\n- Each annotation belonging to the service config (http,\n visibility) which is not set in the redeclared method will be\n inherited.\n\n- If an http annotation is inherited, the path pattern will be\n modified as follows. Any version prefix will be replaced by the\n version of the including interface plus the root path if\n specified.\n\nExample of a simple mixin:\n\n package google.acl.v1;\n service AccessControl {\n // Get the underlying ACL object.\n rpc GetAcl(GetAclRequest) returns (Acl) {\n option (google.api.http).get = \"/v1/{resource=**}:getAcl\";\n }\n }\n\n package google.storage.v2;\n service Storage {\n // rpc GetAcl(GetAclRequest) returns (Acl);\n\n // Get a data record.\n rpc GetData(GetDataRequest) returns (Data) {\n option (google.api.http).get = \"/v2/{resource=**}\";\n }\n }\n\nExample of a mixin configuration:\n\n apis:\n - name: google.storage.v2.Storage\n mixins:\n - name: google.acl.v1.AccessControl\n\nThe mixin construct implies that all methods in `AccessControl` are\nalso declared with same name and request/response types in\n`Storage`. A documentation generator or annotation processor will\nsee the effective `Storage.GetAcl` method after inherting\ndocumentation and annotations as follows:\n\n service Storage {\n // Get the underlying ACL object.\n rpc GetAcl(GetAclRequest) returns (Acl) {\n option (google.api.http).get = \"/v2/{resource=**}:getAcl\";\n }\n ...\n }\n\nNote how the version in the path pattern changed from `v1` to `v2`.\n\nIf the `root` field in the mixin is specified, it should be a\nrelative path under which inherited HTTP paths are placed. Example:\n\n apis:\n - name: google.storage.v2.Storage\n mixins:\n - name: google.acl.v1.AccessControl\n root: acls\n\nThis implies the following inherited HTTP annotation:\n\n service Storage {\n // Get the underlying ACL object.\n rpc GetAcl(GetAclRequest) returns (Acl) {\n option (google.api.http).get = \"/v2/acls/{resource=**}:getAcl\";\n }\n ...\n }", - "type": "object", + "EnumValue": { + "description": "Enum value definition.", + "id": "EnumValue", "properties": { "name": { - "description": "The fully qualified name of the interface which is included.", - "type": "string" - }, - "root": { - "description": "If non-empty specifies a path under which inherited HTTP paths\nare rooted.", - "type": "string" - } - }, - "id": "Mixin" - }, - "CustomError": { - "description": "Customize service error responses. For example, list any service\nspecific protobuf types that can appear in error detail lists of\nerror responses.\n\nExample:\n\n custom_error:\n types:\n - google.foo.v1.CustomError\n - google.foo.v1.AnotherError", - "type": "object", - "properties": { - "types": { - "description": "The list of custom error detail types, e.g. 'google.foo.v1.CustomError'.", - "type": "array", - "items": { - "type": "string" - } - }, - "rules": { - "description": "The list of custom error rules that apply to individual API messages.\n\n**NOTE:** All service configuration rules follow \"last one wins\" order.", - "type": "array", - "items": { - "$ref": "CustomErrorRule" - } - } - }, - "id": "CustomError" - }, - "Http": { - "description": "Defines the HTTP configuration for an API service. It contains a list of\nHttpRule, each specifying the mapping of an RPC method\nto one or more HTTP REST API methods.", - "type": "object", - "properties": { - "fullyDecodeReservedExpansion": { - "description": "When set to true, URL path parmeters will be fully URI-decoded except in\ncases of single segment matches in reserved expansion, where \"%2F\" will be\nleft encoded.\n\nThe default behavior is to not decode RFC 6570 reserved characters in multi\nsegment matches.", - "type": "boolean" - }, - "rules": { - "description": "A list of HTTP configuration rules that apply to individual API methods.\n\n**NOTE:** All service configuration rules follow \"last one wins\" order.", - "type": "array", - "items": { - "$ref": "HttpRule" - } - } - }, - "id": "Http" - }, - "SourceInfo": { - "description": "Source information used to create a Service Config", - "type": "object", - "properties": { - "sourceFiles": { - "description": "All files used during config generation.", - "type": "array", - "items": { - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - }, - "type": "object" - } - } - }, - "id": "SourceInfo" - }, - "Control": { - "description": "Selects and configures the service controller used by the service. The\nservice controller handles features like abuse, quota, billing, logging,\nmonitoring, etc.", - "type": "object", - "properties": { - "environment": { - "description": "The service control environment to use. If empty, no control plane\nfeature (like quota and billing) will be enabled.", - "type": "string" - } - }, - "id": "Control" - }, - "SystemParameter": { - "description": "Define a parameter's name and location. The parameter may be passed as either\nan HTTP header or a URL query parameter, and if both are passed the behavior\nis implementation-dependent.", - "type": "object", - "properties": { - "urlQueryParameter": { - "description": "Define the URL query parameter name to use for the parameter. It is case\nsensitive.", - "type": "string" - }, - "httpHeader": { - "description": "Define the HTTP header name to use for the parameter. It is case\ninsensitive.", - "type": "string" - }, - "name": { - "description": "Define the name of the parameter, such as \"api_key\" . It is case sensitive.", - "type": "string" - } - }, - "id": "SystemParameter" - }, - "Monitoring": { - "description": "Monitoring configuration of the service.\n\nThe example below shows how to configure monitored resources and metrics\nfor monitoring. In the example, a monitored resource and two metrics are\ndefined. The `library.googleapis.com/book/returned_count` metric is sent\nto both producer and consumer projects, whereas the\n`library.googleapis.com/book/overdue_count` metric is only sent to the\nconsumer project.\n\n monitored_resources:\n - type: library.googleapis.com/branch\n labels:\n - key: /city\n description: The city where the library branch is located in.\n - key: /name\n description: The name of the branch.\n metrics:\n - name: library.googleapis.com/book/returned_count\n metric_kind: DELTA\n value_type: INT64\n labels:\n - key: /customer_id\n - name: library.googleapis.com/book/overdue_count\n metric_kind: GAUGE\n value_type: INT64\n labels:\n - key: /customer_id\n monitoring:\n producer_destinations:\n - monitored_resource: library.googleapis.com/branch\n metrics:\n - library.googleapis.com/book/returned_count\n consumer_destinations:\n - monitored_resource: library.googleapis.com/branch\n metrics:\n - library.googleapis.com/book/returned_count\n - library.googleapis.com/book/overdue_count", - "type": "object", - "properties": { - "consumerDestinations": { - "description": "Monitoring configurations for sending metrics to the consumer project.\nThere can be multiple consumer destinations, each one must have a\ndifferent monitored resource type. A metric can be used in at most\none consumer destination.", - "type": "array", - "items": { - "$ref": "MonitoringDestination" - } - }, - "producerDestinations": { - "description": "Monitoring configurations for sending metrics to the producer project.\nThere can be multiple producer destinations, each one must have a\ndifferent monitored resource type. A metric can be used in at most\none producer destination.", - "type": "array", - "items": { - "$ref": "MonitoringDestination" - } - } - }, - "id": "Monitoring" - }, - "Field": { - "description": "A single field of a message type.", - "type": "object", - "properties": { - "defaultValue": { - "description": "The string value of the default value of this field. Proto2 syntax only.", - "type": "string" - }, - "name": { - "description": "The field name.", - "type": "string" - }, - "typeUrl": { - "description": "The field type URL, without the scheme, for message or enumeration\ntypes. Example: `\"type.googleapis.com/google.protobuf.Timestamp\"`.", + "description": "Enum value name.", "type": "string" }, "number": { - "description": "The field number.", + "description": "Enum value number.", "format": "int32", "type": "integer" }, + "options": { + "description": "Protocol buffer options.", + "items": { + "$ref": "Option" + }, + "type": "array" + } + }, + "type": "object" + }, + "Experimental": { + "description": "Experimental service configuration. These configuration options can\nonly be used by whitelisted users.", + "id": "Experimental", + "properties": { + "authorization": { + "$ref": "AuthorizationConfig", + "description": "Authorization configuration." + } + }, + "type": "object" + }, + "Field": { + "description": "A single field of a message type.", + "id": "Field", + "properties": { + "cardinality": { + "description": "The field cardinality.", + "enum": [ + "CARDINALITY_UNKNOWN", + "CARDINALITY_OPTIONAL", + "CARDINALITY_REQUIRED", + "CARDINALITY_REPEATED" + ], + "enumDescriptions": [ + "For fields with unknown cardinality.", + "For optional fields.", + "For required fields. Proto2 syntax only.", + "For repeated fields." + ], + "type": "string" + }, + "defaultValue": { + "description": "The string value of the default value of this field. Proto2 syntax only.", + "type": "string" + }, "jsonName": { "description": "The field JSON name.", "type": "string" }, "kind": { "description": "The field type.", - "type": "string", + "enum": [ + "TYPE_UNKNOWN", + "TYPE_DOUBLE", + "TYPE_FLOAT", + "TYPE_INT64", + "TYPE_UINT64", + "TYPE_INT32", + "TYPE_FIXED64", + "TYPE_FIXED32", + "TYPE_BOOL", + "TYPE_STRING", + "TYPE_GROUP", + "TYPE_MESSAGE", + "TYPE_BYTES", + "TYPE_UINT32", + "TYPE_ENUM", + "TYPE_SFIXED32", + "TYPE_SFIXED64", + "TYPE_SINT32", + "TYPE_SINT64" + ], "enumDescriptions": [ "Field type unknown.", "Field type double.", @@ -2132,150 +1099,1156 @@ "Field type sint32.", "Field type sint64." ], - "enum": [ - "TYPE_UNKNOWN", - "TYPE_DOUBLE", - "TYPE_FLOAT", - "TYPE_INT64", - "TYPE_UINT64", - "TYPE_INT32", - "TYPE_FIXED64", - "TYPE_FIXED32", - "TYPE_BOOL", - "TYPE_STRING", - "TYPE_GROUP", - "TYPE_MESSAGE", - "TYPE_BYTES", - "TYPE_UINT32", - "TYPE_ENUM", - "TYPE_SFIXED32", - "TYPE_SFIXED64", - "TYPE_SINT32", - "TYPE_SINT64" - ] + "type": "string" }, - "options": { - "description": "The protocol buffer options.", - "type": "array", - "items": { - "$ref": "Option" - } + "name": { + "description": "The field name.", + "type": "string" + }, + "number": { + "description": "The field number.", + "format": "int32", + "type": "integer" }, "oneofIndex": { "description": "The index of the field type in `Type.oneofs`, for message or enumeration\ntypes. The first type has index 1; zero means the type is not in the list.", "format": "int32", "type": "integer" }, - "cardinality": { - "enumDescriptions": [ - "For fields with unknown cardinality.", - "For optional fields.", - "For required fields. Proto2 syntax only.", - "For repeated fields." - ], - "enum": [ - "CARDINALITY_UNKNOWN", - "CARDINALITY_OPTIONAL", - "CARDINALITY_REQUIRED", - "CARDINALITY_REPEATED" - ], - "description": "The field cardinality.", - "type": "string" + "options": { + "description": "The protocol buffer options.", + "items": { + "$ref": "Option" + }, + "type": "array" }, "packed": { "description": "Whether to use alternative packed wire representation.", "type": "boolean" + }, + "typeUrl": { + "description": "The field type URL, without the scheme, for message or enumeration\ntypes. Example: `\"type.googleapis.com/google.protobuf.Timestamp\"`.", + "type": "string" } }, - "id": "Field" + "type": "object" }, - "Enum": { - "description": "Enum type definition.", - "type": "object", + "Http": { + "description": "Defines the HTTP configuration for an API service. It contains a list of\nHttpRule, each specifying the mapping of an RPC method\nto one or more HTTP REST API methods.", + "id": "Http", "properties": { - "options": { - "description": "Protocol buffer options.", - "type": "array", + "fullyDecodeReservedExpansion": { + "description": "When set to true, URL path parmeters will be fully URI-decoded except in\ncases of single segment matches in reserved expansion, where \"%2F\" will be\nleft encoded.\n\nThe default behavior is to not decode RFC 6570 reserved characters in multi\nsegment matches.", + "type": "boolean" + }, + "rules": { + "description": "A list of HTTP configuration rules that apply to individual API methods.\n\n**NOTE:** All service configuration rules follow \"last one wins\" order.", "items": { - "$ref": "Option" - } + "$ref": "HttpRule" + }, + "type": "array" + } + }, + "type": "object" + }, + "HttpRule": { + "description": "`HttpRule` defines the mapping of an RPC method to one or more HTTP\nREST API methods. The mapping specifies how different portions of the RPC\nrequest message are mapped to URL path, URL query parameters, and\nHTTP request body. The mapping is typically specified as an\n`google.api.http` annotation on the RPC method,\nsee \"google/api/annotations.proto\" for details.\n\nThe mapping consists of a field specifying the path template and\nmethod kind. The path template can refer to fields in the request\nmessage, as in the example below which describes a REST GET\noperation on a resource collection of messages:\n\n\n service Messaging {\n rpc GetMessage(GetMessageRequest) returns (Message) {\n option (google.api.http).get = \"/v1/messages/{message_id}/{sub.subfield}\";\n }\n }\n message GetMessageRequest {\n message SubMessage {\n string subfield = 1;\n }\n string message_id = 1; // mapped to the URL\n SubMessage sub = 2; // `sub.subfield` is url-mapped\n }\n message Message {\n string text = 1; // content of the resource\n }\n\nThe same http annotation can alternatively be expressed inside the\n`GRPC API Configuration` YAML file.\n\n http:\n rules:\n - selector: \u003cproto_package_name\u003e.Messaging.GetMessage\n get: /v1/messages/{message_id}/{sub.subfield}\n\nThis definition enables an automatic, bidrectional mapping of HTTP\nJSON to RPC. Example:\n\nHTTP | RPC\n-----|-----\n`GET /v1/messages/123456/foo` | `GetMessage(message_id: \"123456\" sub: SubMessage(subfield: \"foo\"))`\n\nIn general, not only fields but also field paths can be referenced\nfrom a path pattern. Fields mapped to the path pattern cannot be\nrepeated and must have a primitive (non-message) type.\n\nAny fields in the request message which are not bound by the path\npattern automatically become (optional) HTTP query\nparameters. Assume the following definition of the request message:\n\n\n service Messaging {\n rpc GetMessage(GetMessageRequest) returns (Message) {\n option (google.api.http).get = \"/v1/messages/{message_id}\";\n }\n }\n message GetMessageRequest {\n message SubMessage {\n string subfield = 1;\n }\n string message_id = 1; // mapped to the URL\n int64 revision = 2; // becomes a parameter\n SubMessage sub = 3; // `sub.subfield` becomes a parameter\n }\n\n\nThis enables a HTTP JSON to RPC mapping as below:\n\nHTTP | RPC\n-----|-----\n`GET /v1/messages/123456?revision=2\u0026sub.subfield=foo` | `GetMessage(message_id: \"123456\" revision: 2 sub: SubMessage(subfield: \"foo\"))`\n\nNote that fields which are mapped to HTTP parameters must have a\nprimitive type or a repeated primitive type. Message types are not\nallowed. In the case of a repeated type, the parameter can be\nrepeated in the URL, as in `...?param=A\u0026param=B`.\n\nFor HTTP method kinds which allow a request body, the `body` field\nspecifies the mapping. Consider a REST update method on the\nmessage resource collection:\n\n\n service Messaging {\n rpc UpdateMessage(UpdateMessageRequest) returns (Message) {\n option (google.api.http) = {\n put: \"/v1/messages/{message_id}\"\n body: \"message\"\n };\n }\n }\n message UpdateMessageRequest {\n string message_id = 1; // mapped to the URL\n Message message = 2; // mapped to the body\n }\n\n\nThe following HTTP JSON to RPC mapping is enabled, where the\nrepresentation of the JSON in the request body is determined by\nprotos JSON encoding:\n\nHTTP | RPC\n-----|-----\n`PUT /v1/messages/123456 { \"text\": \"Hi!\" }` | `UpdateMessage(message_id: \"123456\" message { text: \"Hi!\" })`\n\nThe special name `*` can be used in the body mapping to define that\nevery field not bound by the path template should be mapped to the\nrequest body. This enables the following alternative definition of\nthe update method:\n\n service Messaging {\n rpc UpdateMessage(Message) returns (Message) {\n option (google.api.http) = {\n put: \"/v1/messages/{message_id}\"\n body: \"*\"\n };\n }\n }\n message Message {\n string message_id = 1;\n string text = 2;\n }\n\n\nThe following HTTP JSON to RPC mapping is enabled:\n\nHTTP | RPC\n-----|-----\n`PUT /v1/messages/123456 { \"text\": \"Hi!\" }` | `UpdateMessage(message_id: \"123456\" text: \"Hi!\")`\n\nNote that when using `*` in the body mapping, it is not possible to\nhave HTTP parameters, as all fields not bound by the path end in\nthe body. This makes this option more rarely used in practice of\ndefining REST APIs. The common usage of `*` is in custom methods\nwhich don't use the URL at all for transferring data.\n\nIt is possible to define multiple HTTP methods for one RPC by using\nthe `additional_bindings` option. Example:\n\n service Messaging {\n rpc GetMessage(GetMessageRequest) returns (Message) {\n option (google.api.http) = {\n get: \"/v1/messages/{message_id}\"\n additional_bindings {\n get: \"/v1/users/{user_id}/messages/{message_id}\"\n }\n };\n }\n }\n message GetMessageRequest {\n string message_id = 1;\n string user_id = 2;\n }\n\n\nThis enables the following two alternative HTTP JSON to RPC\nmappings:\n\nHTTP | RPC\n-----|-----\n`GET /v1/messages/123456` | `GetMessage(message_id: \"123456\")`\n`GET /v1/users/me/messages/123456` | `GetMessage(user_id: \"me\" message_id: \"123456\")`\n\n# Rules for HTTP mapping\n\nThe rules for mapping HTTP path, query parameters, and body fields\nto the request message are as follows:\n\n1. The `body` field specifies either `*` or a field path, or is\n omitted. If omitted, it indicates there is no HTTP request body.\n2. Leaf fields (recursive expansion of nested messages in the\n request) can be classified into three types:\n (a) Matched in the URL template.\n (b) Covered by body (if body is `*`, everything except (a) fields;\n else everything under the body field)\n (c) All other fields.\n3. URL query parameters found in the HTTP request are mapped to (c) fields.\n4. Any body sent with an HTTP request can contain only (b) fields.\n\nThe syntax of the path template is as follows:\n\n Template = \"/\" Segments [ Verb ] ;\n Segments = Segment { \"/\" Segment } ;\n Segment = \"*\" | \"**\" | LITERAL | Variable ;\n Variable = \"{\" FieldPath [ \"=\" Segments ] \"}\" ;\n FieldPath = IDENT { \".\" IDENT } ;\n Verb = \":\" LITERAL ;\n\nThe syntax `*` matches a single path segment. The syntax `**` matches zero\nor more path segments, which must be the last part of the path except the\n`Verb`. The syntax `LITERAL` matches literal text in the path.\n\nThe syntax `Variable` matches part of the URL path as specified by its\ntemplate. A variable template must not contain other variables. If a variable\nmatches a single path segment, its template may be omitted, e.g. `{var}`\nis equivalent to `{var=*}`.\n\nIf a variable contains exactly one path segment, such as `\"{var}\"` or\n`\"{var=*}\"`, when such a variable is expanded into a URL path, all characters\nexcept `[-_.~0-9a-zA-Z]` are percent-encoded. Such variables show up in the\nDiscovery Document as `{var}`.\n\nIf a variable contains one or more path segments, such as `\"{var=foo/*}\"`\nor `\"{var=**}\"`, when such a variable is expanded into a URL path, all\ncharacters except `[-_.~/0-9a-zA-Z]` are percent-encoded. Such variables\nshow up in the Discovery Document as `{+var}`.\n\nNOTE: While the single segment variable matches the semantics of\n[RFC 6570](https://tools.ietf.org/html/rfc6570) Section 3.2.2\nSimple String Expansion, the multi segment variable **does not** match\nRFC 6570 Reserved Expansion. The reason is that the Reserved Expansion\ndoes not expand special characters like `?` and `#`, which would lead\nto invalid URLs.\n\nNOTE: the field paths in variables and in the `body` must not refer to\nrepeated fields or map fields.", + "id": "HttpRule", + "properties": { + "additionalBindings": { + "description": "Additional HTTP bindings for the selector. Nested bindings must\nnot contain an `additional_bindings` field themselves (that is,\nthe nesting may only be one level deep).", + "items": { + "$ref": "HttpRule" + }, + "type": "array" }, - "sourceContext": { - "description": "The source context.", - "$ref": "SourceContext" + "authorizations": { + "description": "Specifies the permission(s) required for an API element for the overall\nAPI request to succeed. It is typically used to mark request message fields\nthat contain the name of the resource and indicates the permissions that\nwill be checked on that resource.", + "items": { + "$ref": "AuthorizationRule" + }, + "type": "array" }, - "syntax": { - "description": "The source syntax.", - "type": "string", - "enumDescriptions": [ - "Syntax `proto2`.", - "Syntax `proto3`." - ], - "enum": [ - "SYNTAX_PROTO2", - "SYNTAX_PROTO3" - ] - }, - "name": { - "description": "Enum type name.", + "body": { + "description": "The name of the request field whose value is mapped to the HTTP body, or\n`*` for mapping all fields not captured by the path pattern to the HTTP\nbody. NOTE: the referred field must not be a repeated field and must be\npresent at the top-level of request message type.", "type": "string" }, - "enumvalue": { - "description": "Enum value definitions.", - "type": "array", - "items": { - "$ref": "EnumValue" - } + "custom": { + "$ref": "CustomHttpPattern", + "description": "The custom pattern is used for specifying an HTTP method that is not\nincluded in the `pattern` field, such as HEAD, or \"*\" to leave the\nHTTP method unspecified for this rule. The wild-card rule is useful\nfor services that provide content to Web (HTML) clients." + }, + "delete": { + "description": "Used for deleting a resource.", + "type": "string" + }, + "get": { + "description": "Used for listing and getting information about resources.", + "type": "string" + }, + "mediaDownload": { + "$ref": "MediaDownload", + "description": "Use this only for Scotty Requests. Do not use this for bytestream methods.\nFor media support, add instead [][google.bytestream.RestByteStream] as an\nAPI to your configuration." + }, + "mediaUpload": { + "$ref": "MediaUpload", + "description": "Use this only for Scotty Requests. Do not use this for media support using\nBytestream, add instead\n[][google.bytestream.RestByteStream] as an API to your\nconfiguration for Bytestream methods." + }, + "patch": { + "description": "Used for updating a resource.", + "type": "string" + }, + "post": { + "description": "Used for creating a resource.", + "type": "string" + }, + "put": { + "description": "Used for updating a resource.", + "type": "string" + }, + "restCollection": { + "description": "DO NOT USE. This is an experimental field.\n\nOptional. The REST collection name is by default derived from the URL\npattern. If specified, this field overrides the default collection name.\nExample:\n\n rpc AddressesAggregatedList(AddressesAggregatedListRequest)\n returns (AddressesAggregatedListResponse) {\n option (google.api.http) = {\n get: \"/v1/projects/{project_id}/aggregated/addresses\"\n rest_collection: \"projects.addresses\"\n };\n }\n\nThis method has the automatically derived collection name\n\"projects.aggregated\". Because, semantically, this rpc is actually an\noperation on the \"projects.addresses\" collection, the `rest_collection`\nfield is configured to override the derived collection name.", + "type": "string" + }, + "restMethodName": { + "description": "DO NOT USE. This is an experimental field.\n\nOptional. The rest method name is by default derived from the URL\npattern. If specified, this field overrides the default method name.\nExample:\n\n rpc CreateResource(CreateResourceRequest)\n returns (CreateResourceResponse) {\n option (google.api.http) = {\n post: \"/v1/resources\",\n body: \"resource\",\n rest_method_name: \"insert\"\n };\n }\n\nThis method has the automatically derived rest method name\n\"create\", but for backwards compatibility with apiary, it is specified as\ninsert.", + "type": "string" + }, + "selector": { + "description": "Selects methods to which this rule applies.\n\nRefer to selector for syntax details.", + "type": "string" } }, - "id": "Enum" + "type": "object" }, "LabelDescriptor": { "description": "A description of a label.", - "type": "object", + "id": "LabelDescriptor", "properties": { "description": { "description": "A human-readable description for the label.", "type": "string" }, + "key": { + "description": "The label key.", + "type": "string" + }, "valueType": { "description": "The type of data that can be assigned to the label.", - "type": "string", + "enum": [ + "STRING", + "BOOL", + "INT64" + ], "enumDescriptions": [ "A variable-length string. This is the default.", "Boolean; true or false.", "A 64-bit signed integer." ], - "enum": [ - "STRING", - "BOOL", - "INT64" - ] - }, - "key": { - "description": "The label key.", "type": "string" } }, - "id": "LabelDescriptor" + "type": "object" + }, + "ListOperationsResponse": { + "description": "The response message for Operations.ListOperations.", + "id": "ListOperationsResponse", + "properties": { + "nextPageToken": { + "description": "The standard List next-page token.", + "type": "string" + }, + "operations": { + "description": "A list of operations that matches the specified filter in the request.", + "items": { + "$ref": "Operation" + }, + "type": "array" + } + }, + "type": "object" + }, + "ListTenancyUnitsResponse": { + "description": "Response for the list request.", + "id": "ListTenancyUnitsResponse", + "properties": { + "nextPageToken": { + "description": "Pagination token for large results.", + "type": "string" + }, + "tenancyUnits": { + "description": "Tenancy units matching the request.", + "items": { + "$ref": "TenancyUnit" + }, + "type": "array" + } + }, + "type": "object" + }, + "LogDescriptor": { + "description": "A description of a log type. Example in YAML format:\n\n - name: library.googleapis.com/activity_history\n description: The history of borrowing and returning library items.\n display_name: Activity\n labels:\n - key: /customer_id\n description: Identifier of a library customer", + "id": "LogDescriptor", + "properties": { + "description": { + "description": "A human-readable description of this log. This information appears in\nthe documentation and can contain details.", + "type": "string" + }, + "displayName": { + "description": "The human-readable name for this log. This information appears on\nthe user interface and should be concise.", + "type": "string" + }, + "labels": { + "description": "The set of labels that are available to describe a specific log entry.\nRuntime requests that contain labels not specified here are\nconsidered invalid.", + "items": { + "$ref": "LabelDescriptor" + }, + "type": "array" + }, + "name": { + "description": "The name of the log. It must be less than 512 characters long and can\ninclude the following characters: upper- and lower-case alphanumeric\ncharacters [A-Za-z0-9], and punctuation characters including\nslash, underscore, hyphen, period [/_-.].", + "type": "string" + } + }, + "type": "object" + }, + "Logging": { + "description": "Logging configuration of the service.\n\nThe following example shows how to configure logs to be sent to the\nproducer and consumer projects. In the example, the `activity_history`\nlog is sent to both the producer and consumer projects, whereas the\n`purchase_history` log is only sent to the producer project.\n\n monitored_resources:\n - type: library.googleapis.com/branch\n labels:\n - key: /city\n description: The city where the library branch is located in.\n - key: /name\n description: The name of the branch.\n logs:\n - name: activity_history\n labels:\n - key: /customer_id\n - name: purchase_history\n logging:\n producer_destinations:\n - monitored_resource: library.googleapis.com/branch\n logs:\n - activity_history\n - purchase_history\n consumer_destinations:\n - monitored_resource: library.googleapis.com/branch\n logs:\n - activity_history", + "id": "Logging", + "properties": { + "consumerDestinations": { + "description": "Logging configurations for sending logs to the consumer project.\nThere can be multiple consumer destinations, each one must have a\ndifferent monitored resource type. A log can be used in at most\none consumer destination.", + "items": { + "$ref": "LoggingDestination" + }, + "type": "array" + }, + "producerDestinations": { + "description": "Logging configurations for sending logs to the producer project.\nThere can be multiple producer destinations, each one must have a\ndifferent monitored resource type. A log can be used in at most\none producer destination.", + "items": { + "$ref": "LoggingDestination" + }, + "type": "array" + } + }, + "type": "object" + }, + "LoggingDestination": { + "description": "Configuration of a specific logging destination (the producer project\nor the consumer project).", + "id": "LoggingDestination", + "properties": { + "logs": { + "description": "Names of the logs to be sent to this destination. Each name must\nbe defined in the Service.logs section. If the log name is\nnot a domain scoped name, it will be automatically prefixed with\nthe service name followed by \"/\".", + "items": { + "type": "string" + }, + "type": "array" + }, + "monitoredResource": { + "description": "The monitored resource type. The type must be defined in the\nService.monitored_resources section.", + "type": "string" + } + }, + "type": "object" + }, + "MediaDownload": { + "description": "Defines the Media configuration for a service in case of a download.\nUse this only for Scotty Requests. Do not use this for media support using\nBytestream, add instead [][google.bytestream.RestByteStream] as an API to\nyour configuration for Bytestream methods.", + "id": "MediaDownload", + "properties": { + "completeNotification": { + "description": "A boolean that determines whether a notification for the completion of a\ndownload should be sent to the backend.", + "type": "boolean" + }, + "downloadService": { + "description": "DO NOT USE FIELDS BELOW THIS LINE UNTIL THIS WARNING IS REMOVED.\n\nSpecify name of the download service if one is used for download.", + "type": "string" + }, + "dropzone": { + "description": "Name of the Scotty dropzone to use for the current API.", + "type": "string" + }, + "enabled": { + "description": "Whether download is enabled.", + "type": "boolean" + }, + "maxDirectDownloadSize": { + "description": "Optional maximum acceptable size for direct download.\nThe size is specified in bytes.", + "format": "int64", + "type": "string" + }, + "useDirectDownload": { + "description": "A boolean that determines if direct download from ESF should be used for\ndownload of this media.", + "type": "boolean" + } + }, + "type": "object" + }, + "MediaUpload": { + "description": "Defines the Media configuration for a service in case of an upload.\nUse this only for Scotty Requests. Do not use this for media support using\nBytestream, add instead [][google.bytestream.RestByteStream] as an API to\nyour configuration for Bytestream methods.", + "id": "MediaUpload", + "properties": { + "completeNotification": { + "description": "A boolean that determines whether a notification for the completion of an\nupload should be sent to the backend. These notifications will not be seen\nby the client and will not consume quota.", + "type": "boolean" + }, + "dropzone": { + "description": "Name of the Scotty dropzone to use for the current API.", + "type": "string" + }, + "enabled": { + "description": "Whether upload is enabled.", + "type": "boolean" + }, + "maxSize": { + "description": "Optional maximum acceptable size for an upload.\nThe size is specified in bytes.", + "format": "int64", + "type": "string" + }, + "mimeTypes": { + "description": "An array of mimetype patterns. Esf will only accept uploads that match one\nof the given patterns.", + "items": { + "type": "string" + }, + "type": "array" + }, + "progressNotification": { + "description": "Whether to receive a notification for progress changes of media upload.", + "type": "boolean" + }, + "startNotification": { + "description": "Whether to receive a notification on the start of media upload.", + "type": "boolean" + }, + "uploadService": { + "description": "DO NOT USE FIELDS BELOW THIS LINE UNTIL THIS WARNING IS REMOVED.\n\nSpecify name of the upload service if one is used for upload.", + "type": "string" + } + }, + "type": "object" + }, + "Method": { + "description": "Method represents a method of an API interface.", + "id": "Method", + "properties": { + "name": { + "description": "The simple name of this method.", + "type": "string" + }, + "options": { + "description": "Any metadata attached to the method.", + "items": { + "$ref": "Option" + }, + "type": "array" + }, + "requestStreaming": { + "description": "If true, the request is streamed.", + "type": "boolean" + }, + "requestTypeUrl": { + "description": "A URL of the input message type.", + "type": "string" + }, + "responseStreaming": { + "description": "If true, the response is streamed.", + "type": "boolean" + }, + "responseTypeUrl": { + "description": "The URL of the output message type.", + "type": "string" + }, + "syntax": { + "description": "The source syntax of this method.", + "enum": [ + "SYNTAX_PROTO2", + "SYNTAX_PROTO3" + ], + "enumDescriptions": [ + "Syntax `proto2`.", + "Syntax `proto3`." + ], + "type": "string" + } + }, + "type": "object" + }, + "MetricDescriptor": { + "description": "Defines a metric type and its schema. Once a metric descriptor is created,\ndeleting or altering it stops data collection and makes the metric type's\nexisting data unusable.", + "id": "MetricDescriptor", + "properties": { + "description": { + "description": "A detailed description of the metric, which can be used in documentation.", + "type": "string" + }, + "displayName": { + "description": "A concise name for the metric, which can be displayed in user interfaces.\nUse sentence case without an ending period, for example \"Request count\".\nThis field is optional but it is recommended to be set for any metrics\nassociated with user-visible concepts, such as Quota.", + "type": "string" + }, + "labels": { + "description": "The set of labels that can be used to describe a specific\ninstance of this metric type. For example, the\n`appengine.googleapis.com/http/server/response_latencies` metric\ntype has a label for the HTTP response code, `response_code`, so\nyou can look at latencies for successful responses or just\nfor responses that failed.", + "items": { + "$ref": "LabelDescriptor" + }, + "type": "array" + }, + "metricKind": { + "description": "Whether the metric records instantaneous values, changes to a value, etc.\nSome combinations of `metric_kind` and `value_type` might not be supported.", + "enum": [ + "METRIC_KIND_UNSPECIFIED", + "GAUGE", + "DELTA", + "CUMULATIVE" + ], + "enumDescriptions": [ + "Do not use this default value.", + "An instantaneous measurement of a value.", + "The change in a value during a time interval.", + "A value accumulated over a time interval. Cumulative\nmeasurements in a time series should have the same start time\nand increasing end times, until an event resets the cumulative\nvalue to zero and sets a new start time for the following\npoints." + ], + "type": "string" + }, + "name": { + "description": "The resource name of the metric descriptor.", + "type": "string" + }, + "type": { + "description": "The metric type, including its DNS name prefix. The type is not\nURL-encoded. All user-defined custom metric types have the DNS name\n`custom.googleapis.com`. Metric types should use a natural hierarchical\ngrouping. For example:\n\n \"custom.googleapis.com/invoice/paid/amount\"\n \"appengine.googleapis.com/http/server/response_latencies\"", + "type": "string" + }, + "unit": { + "description": "The unit in which the metric value is reported. It is only applicable\nif the `value_type` is `INT64`, `DOUBLE`, or `DISTRIBUTION`. The\nsupported units are a subset of [The Unified Code for Units of\nMeasure](http://unitsofmeasure.org/ucum.html) standard:\n\n**Basic units (UNIT)**\n\n* `bit` bit\n* `By` byte\n* `s` second\n* `min` minute\n* `h` hour\n* `d` day\n\n**Prefixes (PREFIX)**\n\n* `k` kilo (10**3)\n* `M` mega (10**6)\n* `G` giga (10**9)\n* `T` tera (10**12)\n* `P` peta (10**15)\n* `E` exa (10**18)\n* `Z` zetta (10**21)\n* `Y` yotta (10**24)\n* `m` milli (10**-3)\n* `u` micro (10**-6)\n* `n` nano (10**-9)\n* `p` pico (10**-12)\n* `f` femto (10**-15)\n* `a` atto (10**-18)\n* `z` zepto (10**-21)\n* `y` yocto (10**-24)\n* `Ki` kibi (2**10)\n* `Mi` mebi (2**20)\n* `Gi` gibi (2**30)\n* `Ti` tebi (2**40)\n\n**Grammar**\n\nThe grammar also includes these connectors:\n\n* `/` division (as an infix operator, e.g. `1/s`).\n* `.` multiplication (as an infix operator, e.g. `GBy.d`)\n\nThe grammar for a unit is as follows:\n\n Expression = Component { \".\" Component } { \"/\" Component } ;\n\n Component = ( [ PREFIX ] UNIT | \"%\" ) [ Annotation ]\n | Annotation\n | \"1\"\n ;\n\n Annotation = \"{\" NAME \"}\" ;\n\nNotes:\n\n* `Annotation` is just a comment if it follows a `UNIT` and is\n equivalent to `1` if it is used alone. For examples,\n `{requests}/s == 1/s`, `By{transmitted}/s == By/s`.\n* `NAME` is a sequence of non-blank printable ASCII characters not\n containing '{' or '}'.\n* `1` represents dimensionless value 1, such as in `1/s`.\n* `%` represents dimensionless value 1/100, and annotates values giving\n a percentage.", + "type": "string" + }, + "valueType": { + "description": "Whether the measurement is an integer, a floating-point number, etc.\nSome combinations of `metric_kind` and `value_type` might not be supported.", + "enum": [ + "VALUE_TYPE_UNSPECIFIED", + "BOOL", + "INT64", + "DOUBLE", + "STRING", + "DISTRIBUTION", + "MONEY" + ], + "enumDescriptions": [ + "Do not use this default value.", + "The value is a boolean.\nThis value type can be used only if the metric kind is `GAUGE`.", + "The value is a signed 64-bit integer.", + "The value is a double precision floating point number.", + "The value is a text string.\nThis value type can be used only if the metric kind is `GAUGE`.", + "The value is a `Distribution`.", + "The value is money." + ], + "type": "string" + } + }, + "type": "object" + }, + "MetricRule": { + "description": "Bind API methods to metrics. Binding a method to a metric causes that\nmetric's configured quota behaviors to apply to the method call.", + "id": "MetricRule", + "properties": { + "metricCosts": { + "additionalProperties": { + "format": "int64", + "type": "string" + }, + "description": "Metrics to update when the selected methods are called, and the associated\ncost applied to each metric.\n\nThe key of the map is the metric name, and the values are the amount\nincreased for the metric against which the quota limits are defined.\nThe value must not be negative.", + "type": "object" + }, + "selector": { + "description": "Selects the methods to which this rule applies.\n\nRefer to selector for syntax details.", + "type": "string" + } + }, + "type": "object" + }, + "Mixin": { + "description": "Declares an API Interface to be included in this interface. The including\ninterface must redeclare all the methods from the included interface, but\ndocumentation and options are inherited as follows:\n\n- If after comment and whitespace stripping, the documentation\n string of the redeclared method is empty, it will be inherited\n from the original method.\n\n- Each annotation belonging to the service config (http,\n visibility) which is not set in the redeclared method will be\n inherited.\n\n- If an http annotation is inherited, the path pattern will be\n modified as follows. Any version prefix will be replaced by the\n version of the including interface plus the root path if\n specified.\n\nExample of a simple mixin:\n\n package google.acl.v1;\n service AccessControl {\n // Get the underlying ACL object.\n rpc GetAcl(GetAclRequest) returns (Acl) {\n option (google.api.http).get = \"/v1/{resource=**}:getAcl\";\n }\n }\n\n package google.storage.v2;\n service Storage {\n // rpc GetAcl(GetAclRequest) returns (Acl);\n\n // Get a data record.\n rpc GetData(GetDataRequest) returns (Data) {\n option (google.api.http).get = \"/v2/{resource=**}\";\n }\n }\n\nExample of a mixin configuration:\n\n apis:\n - name: google.storage.v2.Storage\n mixins:\n - name: google.acl.v1.AccessControl\n\nThe mixin construct implies that all methods in `AccessControl` are\nalso declared with same name and request/response types in\n`Storage`. A documentation generator or annotation processor will\nsee the effective `Storage.GetAcl` method after inherting\ndocumentation and annotations as follows:\n\n service Storage {\n // Get the underlying ACL object.\n rpc GetAcl(GetAclRequest) returns (Acl) {\n option (google.api.http).get = \"/v2/{resource=**}:getAcl\";\n }\n ...\n }\n\nNote how the version in the path pattern changed from `v1` to `v2`.\n\nIf the `root` field in the mixin is specified, it should be a\nrelative path under which inherited HTTP paths are placed. Example:\n\n apis:\n - name: google.storage.v2.Storage\n mixins:\n - name: google.acl.v1.AccessControl\n root: acls\n\nThis implies the following inherited HTTP annotation:\n\n service Storage {\n // Get the underlying ACL object.\n rpc GetAcl(GetAclRequest) returns (Acl) {\n option (google.api.http).get = \"/v2/acls/{resource=**}:getAcl\";\n }\n ...\n }", + "id": "Mixin", + "properties": { + "name": { + "description": "The fully qualified name of the interface which is included.", + "type": "string" + }, + "root": { + "description": "If non-empty specifies a path under which inherited HTTP paths\nare rooted.", + "type": "string" + } + }, + "type": "object" + }, + "MonitoredResourceDescriptor": { + "description": "An object that describes the schema of a MonitoredResource object using a\ntype name and a set of labels. For example, the monitored resource\ndescriptor for Google Compute Engine VM instances has a type of\n`\"gce_instance\"` and specifies the use of the labels `\"instance_id\"` and\n`\"zone\"` to identify particular VM instances.\n\nDifferent APIs can support different monitored resource types. APIs generally\nprovide a `list` method that returns the monitored resource descriptors used\nby the API.", + "id": "MonitoredResourceDescriptor", + "properties": { + "description": { + "description": "Optional. A detailed description of the monitored resource type that might\nbe used in documentation.", + "type": "string" + }, + "displayName": { + "description": "Optional. A concise name for the monitored resource type that might be\ndisplayed in user interfaces. It should be a Title Cased Noun Phrase,\nwithout any article or other determiners. For example,\n`\"Google Cloud SQL Database\"`.", + "type": "string" + }, + "labels": { + "description": "Required. A set of labels used to describe instances of this monitored\nresource type. For example, an individual Google Cloud SQL database is\nidentified by values for the labels `\"database_id\"` and `\"zone\"`.", + "items": { + "$ref": "LabelDescriptor" + }, + "type": "array" + }, + "name": { + "description": "Optional. The resource name of the monitored resource descriptor:\n`\"projects/{project_id}/monitoredResourceDescriptors/{type}\"` where\n{type} is the value of the `type` field in this object and\n{project_id} is a project ID that provides API-specific context for\naccessing the type. APIs that do not use project information can use the\nresource name format `\"monitoredResourceDescriptors/{type}\"`.", + "type": "string" + }, + "type": { + "description": "Required. The monitored resource type. For example, the type\n`\"cloudsql_database\"` represents databases in Google Cloud SQL.\nThe maximum length of this value is 256 characters.", + "type": "string" + } + }, + "type": "object" + }, + "Monitoring": { + "description": "Monitoring configuration of the service.\n\nThe example below shows how to configure monitored resources and metrics\nfor monitoring. In the example, a monitored resource and two metrics are\ndefined. The `library.googleapis.com/book/returned_count` metric is sent\nto both producer and consumer projects, whereas the\n`library.googleapis.com/book/overdue_count` metric is only sent to the\nconsumer project.\n\n monitored_resources:\n - type: library.googleapis.com/branch\n labels:\n - key: /city\n description: The city where the library branch is located in.\n - key: /name\n description: The name of the branch.\n metrics:\n - name: library.googleapis.com/book/returned_count\n metric_kind: DELTA\n value_type: INT64\n labels:\n - key: /customer_id\n - name: library.googleapis.com/book/overdue_count\n metric_kind: GAUGE\n value_type: INT64\n labels:\n - key: /customer_id\n monitoring:\n producer_destinations:\n - monitored_resource: library.googleapis.com/branch\n metrics:\n - library.googleapis.com/book/returned_count\n consumer_destinations:\n - monitored_resource: library.googleapis.com/branch\n metrics:\n - library.googleapis.com/book/returned_count\n - library.googleapis.com/book/overdue_count", + "id": "Monitoring", + "properties": { + "consumerDestinations": { + "description": "Monitoring configurations for sending metrics to the consumer project.\nThere can be multiple consumer destinations, each one must have a\ndifferent monitored resource type. A metric can be used in at most\none consumer destination.", + "items": { + "$ref": "MonitoringDestination" + }, + "type": "array" + }, + "producerDestinations": { + "description": "Monitoring configurations for sending metrics to the producer project.\nThere can be multiple producer destinations, each one must have a\ndifferent monitored resource type. A metric can be used in at most\none producer destination.", + "items": { + "$ref": "MonitoringDestination" + }, + "type": "array" + } + }, + "type": "object" + }, + "MonitoringDestination": { + "description": "Configuration of a specific monitoring destination (the producer project\nor the consumer project).", + "id": "MonitoringDestination", + "properties": { + "metrics": { + "description": "Names of the metrics to report to this monitoring destination.\nEach name must be defined in Service.metrics section.", + "items": { + "type": "string" + }, + "type": "array" + }, + "monitoredResource": { + "description": "The monitored resource type. The type must be defined in\nService.monitored_resources section.", + "type": "string" + } + }, + "type": "object" + }, + "OAuthRequirements": { + "description": "OAuth scopes are a way to define data and permissions on data. For example,\nthere are scopes defined for \"Read-only access to Google Calendar\" and\n\"Access to Cloud Platform\". Users can consent to a scope for an application,\ngiving it permission to access that data on their behalf.\n\nOAuth scope specifications should be fairly coarse grained; a user will need\nto see and understand the text description of what your scope means.\n\nIn most cases: use one or at most two OAuth scopes for an entire family of\nproducts. If your product has multiple APIs, you should probably be sharing\nthe OAuth scope across all of those APIs.\n\nWhen you need finer grained OAuth consent screens: talk with your product\nmanagement about how developers will use them in practice.\n\nPlease note that even though each of the canonical scopes is enough for a\nrequest to be accepted and passed to the backend, a request can still fail\ndue to the backend requiring additional scopes or permissions.", + "id": "OAuthRequirements", + "properties": { + "canonicalScopes": { + "description": "The list of publicly documented OAuth scopes that are allowed access. An\nOAuth token containing any of these scopes will be accepted.\n\nExample:\n\n canonical_scopes: https://www.googleapis.com/auth/calendar,\n https://www.googleapis.com/auth/calendar.read", + "type": "string" + } + }, + "type": "object" + }, + "Operation": { + "description": "This resource represents a long-running operation that is the result of a\nnetwork API call.", + "id": "Operation", + "properties": { + "done": { + "description": "If the value is `false`, it means the operation is still in progress.\nIf `true`, the operation is completed, and either `error` or `response` is\navailable.", + "type": "boolean" + }, + "error": { + "$ref": "Status", + "description": "The error result of the operation in case of failure or cancellation." + }, + "metadata": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "description": "Service-specific metadata associated with the operation. It typically\ncontains progress information and common metadata such as create time.\nSome services might not provide such metadata. Any method that returns a\nlong-running operation should document the metadata type, if any.", + "type": "object" + }, + "name": { + "description": "The server-assigned name, which is only unique within the same service that\noriginally returns it. If you use the default HTTP mapping, the\n`name` should have the format of `operations/some/unique/name`.", + "type": "string" + }, + "response": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "description": "The normal response of the operation in case of success. If the original\nmethod returns no data on success, such as `Delete`, the response is\n`google.protobuf.Empty`. If the original method is standard\n`Get`/`Create`/`Update`, the response should be the resource. For other\nmethods, the response should have the type `XxxResponse`, where `Xxx`\nis the original method name. For example, if the original method name\nis `TakeSnapshot()`, the inferred response type is\n`TakeSnapshotResponse`.", + "type": "object" + } + }, + "type": "object" + }, + "Option": { + "description": "A protocol buffer option, which can be attached to a message, field,\nenumeration, etc.", + "id": "Option", + "properties": { + "name": { + "description": "The option's name. For protobuf built-in options (options defined in\ndescriptor.proto), this is the short name. For example, `\"map_entry\"`.\nFor custom options, it should be the fully-qualified name. For example,\n`\"google.api.http\"`.", + "type": "string" + }, + "value": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "description": "The option's value packed in an Any message. If the value is a primitive,\nthe corresponding wrapper type defined in google/protobuf/wrappers.proto\nshould be used. If the value is an enum, it should be stored as an int32\nvalue using the google.protobuf.Int32Value type.", + "type": "object" + } + }, + "type": "object" + }, + "Page": { + "description": "Represents a documentation page. A page can contain subpages to represent\nnested documentation set structure.", + "id": "Page", + "properties": { + "content": { + "description": "The Markdown content of the page. You can use \u003ccode\u003e\u0026#40;== include {path} ==\u0026#41;\u003c/code\u003e\nto include content from a Markdown file.", + "type": "string" + }, + "name": { + "description": "The name of the page. It will be used as an identity of the page to\ngenerate URI of the page, text of the link to this page in navigation,\netc. The full page name (start from the root page name to this page\nconcatenated with `.`) can be used as reference to the page in your\ndocumentation. For example:\n\u003cpre\u003e\u003ccode\u003epages:\n- name: Tutorial\n content: \u0026#40;== include tutorial.md ==\u0026#41;\n subpages:\n - name: Java\n content: \u0026#40;== include tutorial_java.md ==\u0026#41;\n\u003c/code\u003e\u003c/pre\u003e\nYou can reference `Java` page using Markdown reference link syntax:\n`Java`.", + "type": "string" + }, + "subpages": { + "description": "Subpages of this page. The order of subpages specified here will be\nhonored in the generated docset.", + "items": { + "$ref": "Page" + }, + "type": "array" + } + }, + "type": "object" + }, + "PolicyBinding": { + "description": "Translates to IAM Policy bindings (without auditing at this level)", + "id": "PolicyBinding", + "properties": { + "members": { + "description": "Uses the same format as in IAM policy.\n`member` must include both prefix and ID. For example, `user:{emailId}`,\n`serviceAccount:{emailId}`, `group:{emailId}`.", + "items": { + "type": "string" + }, + "type": "array" + }, + "role": { + "description": "Role. (https://cloud.google.com/iam/docs/understanding-roles)\nFor example, `roles/viewer`, `roles/editor`, or `roles/owner`.", + "type": "string" + } + }, + "type": "object" + }, + "Quota": { + "description": "Quota configuration helps to achieve fairness and budgeting in service\nusage.\n\nThe quota configuration works this way:\n- The service configuration defines a set of metrics.\n- For API calls, the quota.metric_rules maps methods to metrics with\n corresponding costs.\n- The quota.limits defines limits on the metrics, which will be used for\n quota checks at runtime.\n\nAn example quota configuration in yaml format:\n\n quota:\n\n - name: apiWriteQpsPerProject\n metric: library.googleapis.com/write_calls\n unit: \"1/min/{project}\" # rate limit for consumer projects\n values:\n STANDARD: 10000\n\n\n # The metric rules bind all methods to the read_calls metric,\n # except for the UpdateBook and DeleteBook methods. These two methods\n # are mapped to the write_calls metric, with the UpdateBook method\n # consuming at twice rate as the DeleteBook method.\n metric_rules:\n - selector: \"*\"\n metric_costs:\n library.googleapis.com/read_calls: 1\n - selector: google.example.library.v1.LibraryService.UpdateBook\n metric_costs:\n library.googleapis.com/write_calls: 2\n - selector: google.example.library.v1.LibraryService.DeleteBook\n metric_costs:\n library.googleapis.com/write_calls: 1\n\n Corresponding Metric definition:\n\n metrics:\n - name: library.googleapis.com/read_calls\n display_name: Read requests\n metric_kind: DELTA\n value_type: INT64\n\n - name: library.googleapis.com/write_calls\n display_name: Write requests\n metric_kind: DELTA\n value_type: INT64", + "id": "Quota", + "properties": { + "limits": { + "description": "List of `QuotaLimit` definitions for the service.", + "items": { + "$ref": "QuotaLimit" + }, + "type": "array" + }, + "metricRules": { + "description": "List of `MetricRule` definitions, each one mapping a selected method to one\nor more metrics.", + "items": { + "$ref": "MetricRule" + }, + "type": "array" + } + }, + "type": "object" + }, + "QuotaLimit": { + "description": "`QuotaLimit` defines a specific limit that applies over a specified duration\nfor a limit type. There can be at most one limit for a duration and limit\ntype combination defined within a `QuotaGroup`.", + "id": "QuotaLimit", + "properties": { + "defaultLimit": { + "description": "Default number of tokens that can be consumed during the specified\nduration. This is the number of tokens assigned when a client\napplication developer activates the service for his/her project.\n\nSpecifying a value of 0 will block all requests. This can be used if you\nare provisioning quota to selected consumers and blocking others.\nSimilarly, a value of -1 will indicate an unlimited quota. No other\nnegative values are allowed.\n\nUsed by group-based quotas only.", + "format": "int64", + "type": "string" + }, + "description": { + "description": "Optional. User-visible, extended description for this quota limit.\nShould be used only when more context is needed to understand this limit\nthan provided by the limit's display name (see: `display_name`).", + "type": "string" + }, + "displayName": { + "description": "User-visible display name for this limit.\nOptional. If not set, the UI will provide a default display name based on\nthe quota configuration. This field can be used to override the default\ndisplay name generated from the configuration.", + "type": "string" + }, + "duration": { + "description": "Duration of this limit in textual notation. Example: \"100s\", \"24h\", \"1d\".\nFor duration longer than a day, only multiple of days is supported. We\nsupport only \"100s\" and \"1d\" for now. Additional support will be added in\nthe future. \"0\" indicates indefinite duration.\n\nUsed by group-based quotas only.", + "type": "string" + }, + "freeTier": { + "description": "Free tier value displayed in the Developers Console for this limit.\nThe free tier is the number of tokens that will be subtracted from the\nbilled amount when billing is enabled.\nThis field can only be set on a limit with duration \"1d\", in a billable\ngroup; it is invalid on any other limit. If this field is not set, it\ndefaults to 0, indicating that there is no free tier for this service.\n\nUsed by group-based quotas only.", + "format": "int64", + "type": "string" + }, + "maxLimit": { + "description": "Maximum number of tokens that can be consumed during the specified\nduration. Client application developers can override the default limit up\nto this maximum. If specified, this value cannot be set to a value less\nthan the default limit. If not specified, it is set to the default limit.\n\nTo allow clients to apply overrides with no upper bound, set this to -1,\nindicating unlimited maximum quota.\n\nUsed by group-based quotas only.", + "format": "int64", + "type": "string" + }, + "metric": { + "description": "The name of the metric this quota limit applies to. The quota limits with\nthe same metric will be checked together during runtime. The metric must be\ndefined within the service config.", + "type": "string" + }, + "name": { + "description": "Name of the quota limit.\n\nThe name must be provided, and it must be unique within the service. The\nname can only include alphanumeric characters as well as '-'.\n\nThe maximum length of the limit name is 64 characters.", + "type": "string" + }, + "unit": { + "description": "Specify the unit of the quota limit. It uses the same syntax as\nMetric.unit. The supported unit kinds are determined by the quota\nbackend system.\n\nHere are some examples:\n* \"1/min/{project}\" for quota per minute per project.\n\nNote: the order of unit components is insignificant.\nThe \"1\" at the beginning is required to follow the metric unit syntax.", + "type": "string" + }, + "values": { + "additionalProperties": { + "format": "int64", + "type": "string" + }, + "description": "Tiered limit values. You must specify this as a key:value pair, with an\ninteger value that is the maximum number of requests allowed for the\nspecified unit. Currently only STANDARD is supported.", + "type": "object" + } + }, + "type": "object" + }, + "RemoveTenantProjectRequest": { + "description": "Request message to remove tenant project resource from the tenancy unit.", + "id": "RemoveTenantProjectRequest", + "properties": { + "tag": { + "description": "Tag of the resource within the tenancy unit.", + "type": "string" + } + }, + "type": "object" + }, + "SearchTenancyUnitsResponse": { + "description": "Response for the search query.", + "id": "SearchTenancyUnitsResponse", + "properties": { + "nextPageToken": { + "description": "Pagination token for large results.", + "type": "string" + }, + "tenancyUnits": { + "description": "Tenancy Units matching the request.", + "items": { + "$ref": "TenancyUnit" + }, + "type": "array" + } + }, + "type": "object" + }, + "Service": { + "description": "`Service` is the root object of Google service configuration schema. It\ndescribes basic information about a service, such as the name and the\ntitle, and delegates other aspects to sub-sections. Each sub-section is\neither a proto message or a repeated proto message that configures a\nspecific aspect, such as auth. See each proto message definition for details.\n\nExample:\n\n type: google.api.Service\n config_version: 3\n name: calendar.googleapis.com\n title: Google Calendar API\n apis:\n - name: google.calendar.v3.Calendar\n authentication:\n providers:\n - id: google_calendar_auth\n jwks_uri: https://www.googleapis.com/oauth2/v1/certs\n issuer: https://securetoken.google.com\n rules:\n - selector: \"*\"\n requirements:\n provider_id: google_calendar_auth", + "id": "Service", + "properties": { + "apis": { + "description": "A list of API interfaces exported by this service. Only the `name` field\nof the google.protobuf.Api needs to be provided by the configuration\nauthor, as the remaining fields will be derived from the IDL during the\nnormalization process. It is an error to specify an API interface here\nwhich cannot be resolved against the associated IDL files.", + "items": { + "$ref": "Api" + }, + "type": "array" + }, + "authentication": { + "$ref": "Authentication", + "description": "Auth configuration." + }, + "backend": { + "$ref": "Backend", + "description": "API backend configuration." + }, + "billing": { + "$ref": "Billing", + "description": "Billing configuration." + }, + "configVersion": { + "description": "The semantic version of the service configuration. The config version\naffects the interpretation of the service configuration. For example,\ncertain features are enabled by default for certain config versions.\nThe latest config version is `3`.", + "format": "uint32", + "type": "integer" + }, + "context": { + "$ref": "Context", + "description": "Context configuration." + }, + "control": { + "$ref": "Control", + "description": "Configuration for the service control plane." + }, + "customError": { + "$ref": "CustomError", + "description": "Custom error configuration." + }, + "documentation": { + "$ref": "Documentation", + "description": "Additional API documentation." + }, + "endpoints": { + "description": "Configuration for network endpoints. If this is empty, then an endpoint\nwith the same name as the service is automatically generated to service all\ndefined APIs.", + "items": { + "$ref": "Endpoint" + }, + "type": "array" + }, + "enums": { + "description": "A list of all enum types included in this API service. Enums\nreferenced directly or indirectly by the `apis` are automatically\nincluded. Enums which are not referenced but shall be included\nshould be listed here by name. Example:\n\n enums:\n - name: google.someapi.v1.SomeEnum", + "items": { + "$ref": "Enum" + }, + "type": "array" + }, + "experimental": { + "$ref": "Experimental", + "description": "Experimental configuration." + }, + "http": { + "$ref": "Http", + "description": "HTTP configuration." + }, + "id": { + "description": "A unique ID for a specific instance of this message, typically assigned\nby the client for tracking purpose. If empty, the server may choose to\ngenerate one instead.", + "type": "string" + }, + "logging": { + "$ref": "Logging", + "description": "Logging configuration." + }, + "logs": { + "description": "Defines the logs used by this service.", + "items": { + "$ref": "LogDescriptor" + }, + "type": "array" + }, + "metrics": { + "description": "Defines the metrics used by this service.", + "items": { + "$ref": "MetricDescriptor" + }, + "type": "array" + }, + "monitoredResources": { + "description": "Defines the monitored resources used by this service. This is required\nby the Service.monitoring and Service.logging configurations.", + "items": { + "$ref": "MonitoredResourceDescriptor" + }, + "type": "array" + }, + "monitoring": { + "$ref": "Monitoring", + "description": "Monitoring configuration." + }, + "name": { + "description": "The DNS address at which this service is available,\ne.g. `calendar.googleapis.com`.", + "type": "string" + }, + "producerProjectId": { + "description": "The Google project that owns this service.", + "type": "string" + }, + "quota": { + "$ref": "Quota", + "description": "Quota configuration." + }, + "sourceInfo": { + "$ref": "SourceInfo", + "description": "Output only. The source information for this configuration if available." + }, + "systemParameters": { + "$ref": "SystemParameters", + "description": "System parameter configuration." + }, + "systemTypes": { + "description": "A list of all proto message types included in this API service.\nIt serves similar purpose as [google.api.Service.types], except that\nthese types are not needed by user-defined APIs. Therefore, they will not\nshow up in the generated discovery doc. This field should only be used\nto define system APIs in ESF.", + "items": { + "$ref": "Type" + }, + "type": "array" + }, + "title": { + "description": "The product title for this service.", + "type": "string" + }, + "types": { + "description": "A list of all proto message types included in this API service.\nTypes referenced directly or indirectly by the `apis` are\nautomatically included. Messages which are not referenced but\nshall be included, such as types used by the `google.protobuf.Any` type,\nshould be listed here by name. Example:\n\n types:\n - name: google.protobuf.Int32", + "items": { + "$ref": "Type" + }, + "type": "array" + }, + "usage": { + "$ref": "Usage", + "description": "Configuration controlling usage of this service." + } + }, + "type": "object" + }, + "ServiceAccountConfig": { + "description": "Describes service account configuration for the tenant project.", + "id": "ServiceAccountConfig", + "properties": { + "accountId": { + "description": "ID of the IAM service account to be created in tenant project.\nThe email format of the service account will be\n\"\u003caccount-id\u003e@\u003ctenant-project-id\u003e.iam.gserviceaccount.com\".\nThis account id has to be unique within tenant project and producers\nhave to guarantee it.", + "type": "string" + }, + "tenantProjectRoles": { + "description": "Roles for the associated service account for the tenant project.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "SourceContext": { + "description": "`SourceContext` represents information about the source of a\nprotobuf element, like the file in which it is defined.", + "id": "SourceContext", + "properties": { + "fileName": { + "description": "The path-qualified name of the .proto file that contained the associated\nprotobuf element. For example: `\"google/protobuf/source_context.proto\"`.", + "type": "string" + } + }, + "type": "object" + }, + "SourceInfo": { + "description": "Source information used to create a Service Config", + "id": "SourceInfo", + "properties": { + "sourceFiles": { + "description": "All files used during config generation.", + "items": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "type": "object" + }, + "type": "array" + } + }, + "type": "object" + }, + "Status": { + "description": "The `Status` type defines a logical error model that is suitable for different\nprogramming environments, including REST APIs and RPC APIs. It is used by\n[gRPC](https://github.com/grpc). The error model is designed to be:\n\n- Simple to use and understand for most users\n- Flexible enough to meet unexpected needs\n\n# Overview\n\nThe `Status` message contains three pieces of data: error code, error message,\nand error details. The error code should be an enum value of\ngoogle.rpc.Code, but it may accept additional error codes if needed. The\nerror message should be a developer-facing English message that helps\ndevelopers *understand* and *resolve* the error. If a localized user-facing\nerror message is needed, put the localized message in the error details or\nlocalize it in the client. The optional error details may contain arbitrary\ninformation about the error. There is a predefined set of error detail types\nin the package `google.rpc` that can be used for common error conditions.\n\n# Language mapping\n\nThe `Status` message is the logical representation of the error model, but it\nis not necessarily the actual wire format. When the `Status` message is\nexposed in different client libraries and different wire protocols, it can be\nmapped differently. For example, it will likely be mapped to some exceptions\nin Java, but more likely mapped to some error codes in C.\n\n# Other uses\n\nThe error model and the `Status` message can be used in a variety of\nenvironments, either with or without APIs, to provide a\nconsistent developer experience across different environments.\n\nExample uses of this error model include:\n\n- Partial errors. If a service needs to return partial errors to the client,\n it may embed the `Status` in the normal response to indicate the partial\n errors.\n\n- Workflow errors. A typical workflow has multiple steps. Each step may\n have a `Status` message for error reporting.\n\n- Batch operations. If a client uses batch request and batch response, the\n `Status` message should be used directly inside batch response, one for\n each error sub-response.\n\n- Asynchronous operations. If an API call embeds asynchronous operation\n results in its response, the status of those operations should be\n represented directly using the `Status` message.\n\n- Logging. If some API errors are stored in logs, the message `Status` could\n be used directly after any stripping needed for security/privacy reasons.", + "id": "Status", + "properties": { + "code": { + "description": "The status code, which should be an enum value of google.rpc.Code.", + "format": "int32", + "type": "integer" + }, + "details": { + "description": "A list of messages that carry the error details. There is a common set of\nmessage types for APIs to use.", + "items": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "A developer-facing error message, which should be in English. Any\nuser-facing error message should be localized and sent in the\ngoogle.rpc.Status.details field, or localized by the client.", + "type": "string" + } + }, + "type": "object" + }, + "SystemParameter": { + "description": "Define a parameter's name and location. The parameter may be passed as either\nan HTTP header or a URL query parameter, and if both are passed the behavior\nis implementation-dependent.", + "id": "SystemParameter", + "properties": { + "httpHeader": { + "description": "Define the HTTP header name to use for the parameter. It is case\ninsensitive.", + "type": "string" + }, + "name": { + "description": "Define the name of the parameter, such as \"api_key\" . It is case sensitive.", + "type": "string" + }, + "urlQueryParameter": { + "description": "Define the URL query parameter name to use for the parameter. It is case\nsensitive.", + "type": "string" + } + }, + "type": "object" + }, + "SystemParameterRule": { + "description": "Define a system parameter rule mapping system parameter definitions to\nmethods.", + "id": "SystemParameterRule", + "properties": { + "parameters": { + "description": "Define parameters. Multiple names may be defined for a parameter.\nFor a given method call, only one of them should be used. If multiple\nnames are used the behavior is implementation-dependent.\nIf none of the specified names are present the behavior is\nparameter-dependent.", + "items": { + "$ref": "SystemParameter" + }, + "type": "array" + }, + "selector": { + "description": "Selects the methods to which this rule applies. Use '*' to indicate all\nmethods in all APIs.\n\nRefer to selector for syntax details.", + "type": "string" + } + }, + "type": "object" + }, + "SystemParameters": { + "description": "### System parameter configuration\n\nA system parameter is a special kind of parameter defined by the API\nsystem, not by an individual API. It is typically mapped to an HTTP header\nand/or a URL query parameter. This configuration specifies which methods\nchange the names of the system parameters.", + "id": "SystemParameters", + "properties": { + "rules": { + "description": "Define system parameters.\n\nThe parameters defined here will override the default parameters\nimplemented by the system. If this field is missing from the service\nconfig, default system parameters will be used. Default system parameters\nand names is implementation-dependent.\n\nExample: define api key for all methods\n\n system_parameters\n rules:\n - selector: \"*\"\n parameters:\n - name: api_key\n url_query_parameter: api_key\n\n\nExample: define 2 api key names for a specific method.\n\n system_parameters\n rules:\n - selector: \"/ListShelves\"\n parameters:\n - name: api_key\n http_header: Api-Key1\n - name: api_key\n http_header: Api-Key2\n\n**NOTE:** All service configuration rules follow \"last one wins\" order.", + "items": { + "$ref": "SystemParameterRule" + }, + "type": "array" + } + }, + "type": "object" + }, + "TenancyUnit": { + "description": "Representation of a tenancy unit.", + "id": "TenancyUnit", + "properties": { + "consumer": { + "description": "@OutputOnly Cloud resource name of the consumer of this service.\nFor example 'projects/123456'.", + "type": "string" + }, + "createTime": { + "description": "@OutputOnly The time this tenancy unit was created.", + "format": "google-datetime", + "type": "string" + }, + "name": { + "description": "Globally unique identifier of this tenancy unit\n\"services/{service}/{collection id}/{resource id}/tenancyUnits/{unit}\"", + "type": "string" + }, + "service": { + "description": "@OutputOnly Google Cloud API name of the service owning this tenancy unit.\nFor example 'serviceconsumermanagement.googleapis.com'.", + "type": "string" + }, + "tenantResources": { + "description": "Resources constituting the tenancy unit.\nThere can be at most 512 tenant resources in a tenancy unit.", + "items": { + "$ref": "TenantResource" + }, + "type": "array" + } + }, + "type": "object" + }, + "TenantProjectConfig": { + "description": "This structure defines a tenant project to be added to the specified tenancy\nunit and its initial configuration and properties. A project lien will be\ncreated for the tenant project to prevent the tenant project from being\ndeleted accidentally. The lien will be deleted as part of tenant project\nremoval.", + "id": "TenantProjectConfig", + "properties": { + "billingConfig": { + "$ref": "BillingConfig", + "description": "Billing account properties.\nIt might be specified explicitly, or created from the specified group\nduring provisioning" + }, + "folder": { + "description": "Folder where project in this tenancy unit must be located\nThis folder must have been previously created with proper\npermissions for the caller to create and configure a project in it.\nValid folder resource names have the format `folders/{folder_number}`\n(for example, `folders/123456`).", + "type": "string" + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Labels that will be applied to this project.", + "type": "object" + }, + "serviceAccountConfig": { + "$ref": "ServiceAccountConfig", + "description": "Configuration for IAM service account on tenant project." + }, + "services": { + "description": "Google Cloud API names of services that will be activated on this project\nduring provisioning. If any of these services can not be activated,\nrequest will fail.\nFor example: 'compute.googleapis.com','cloudfunctions.googleapis.com'", + "items": { + "type": "string" + }, + "type": "array" + }, + "tenantProjectPolicy": { + "$ref": "TenantProjectPolicy", + "description": "Describes ownership and policies for the new tenant project. Required." + } + }, + "type": "object" + }, + "TenantProjectPolicy": { + "description": "Describes policy settings that need to be applied to a newly\ncreated tenant project.", + "id": "TenantProjectPolicy", + "properties": { + "policyBindings": { + "description": "Policy bindings to be applied to the tenant project, in addition to the\n'roles/owner' role granted to the Service Consumer Management service\naccount.\nAt least one binding must have the role `roles/owner`. Among the list of\nmembers for `roles/owner`, at least one of them must be either `user` or\n`group` type.", + "items": { + "$ref": "PolicyBinding" + }, + "type": "array" + } + }, + "type": "object" + }, + "TenantResource": { + "description": "Resource constituting the TenancyUnit.", + "id": "TenantResource", + "properties": { + "resource": { + "description": "@OutputOnly Identifier of the tenant resource.\nFor cloud projects, it is in the form 'projects/{number}'.\nFor example 'projects/123456'.", + "type": "string" + }, + "status": { + "description": "Status of tenant resource.", + "enum": [ + "STATUS_UNSPECIFIED", + "PENDING_CREATE", + "ACTIVE", + "PENDING_DELETE", + "FAILED" + ], + "enumDescriptions": [ + "Unspecified status is the default unset value.", + "Creation of the tenant resource is ongoing.", + "Active resource.", + "Deletion of the resource is ongoing.", + "Tenant resource creation or deletion has failed." + ], + "type": "string" + }, + "tag": { + "description": "Unique per single tenancy unit.", + "type": "string" + } + }, + "type": "object" }, "Type": { "description": "A protocol buffer message type.", - "type": "object", + "id": "Type", "properties": { - "options": { - "description": "The protocol buffer options.", - "type": "array", - "items": { - "$ref": "Option" - } - }, "fields": { "description": "The list of fields.", - "type": "array", "items": { "$ref": "Field" - } + }, + "type": "array" }, "name": { "description": "The fully qualified message name.", @@ -2283,76 +2256,84 @@ }, "oneofs": { "description": "The list of types appearing in `oneof` definitions in this type.", - "type": "array", "items": { "type": "string" - } + }, + "type": "array" + }, + "options": { + "description": "The protocol buffer options.", + "items": { + "$ref": "Option" + }, + "type": "array" }, "sourceContext": { - "description": "The source context.", - "$ref": "SourceContext" + "$ref": "SourceContext", + "description": "The source context." }, "syntax": { - "enumDescriptions": [ - "Syntax `proto2`.", - "Syntax `proto3`." - ], + "description": "The source syntax.", "enum": [ "SYNTAX_PROTO2", "SYNTAX_PROTO3" ], - "description": "The source syntax.", + "enumDescriptions": [ + "Syntax `proto2`.", + "Syntax `proto3`." + ], "type": "string" } }, - "id": "Type" + "type": "object" }, - "Experimental": { - "description": "Experimental service configuration. These configuration options can\nonly be used by whitelisted users.", - "type": "object", + "Usage": { + "description": "Configuration controlling usage of a service.", + "id": "Usage", "properties": { - "authorization": { - "description": "Authorization configuration.", - "$ref": "AuthorizationConfig" - } - }, - "id": "Experimental" - }, - "Backend": { - "description": "`Backend` defines the backend configuration for a service.", - "type": "object", - "properties": { - "rules": { - "description": "A list of API backend rules that apply to individual API methods.\n\n**NOTE:** All service configuration rules follow \"last one wins\" order.", - "type": "array", - "items": { - "$ref": "BackendRule" - } - } - }, - "id": "Backend" - } - }, - "protocol": "rest", - "icons": { - "x16": "http://www.google.com/images/icons/product/search-16.gif", - "x32": "http://www.google.com/images/icons/product/search-32.gif" - }, - "canonicalName": "Service Consumer Management", - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/service.management": { - "description": "Manage your Google API service configuration" + "producerNotificationChannel": { + "description": "The full resource name of a channel used for sending notifications to the\nservice producer.\n\nGoogle Service Management currently only supports\n[Google Cloud Pub/Sub](https://cloud.google.com/pubsub) as a notification\nchannel. To use Google Cloud Pub/Sub as the channel, this must be the name\nof a Cloud Pub/Sub topic that uses the Cloud Pub/Sub topic name format\ndocumented in https://cloud.google.com/pubsub/docs/overview.", + "type": "string" }, - "https://www.googleapis.com/auth/cloud-platform": { - "description": "View and manage your data across Google Cloud Platform services" + "requirements": { + "description": "Requirements that must be satisfied before a consumer project can use the\nservice. Each requirement is of the form \u003cservice.name\u003e/\u003crequirement-id\u003e;\nfor example 'serviceusage.googleapis.com/billing-enabled'.", + "items": { + "type": "string" + }, + "type": "array" + }, + "rules": { + "description": "A list of usage rules that apply to individual API methods.\n\n**NOTE:** All service configuration rules follow \"last one wins\" order.", + "items": { + "$ref": "UsageRule" + }, + "type": "array" } - } + }, + "type": "object" + }, + "UsageRule": { + "description": "Usage configuration rules for the service.\n\nNOTE: Under development.\n\n\nUse this rule to configure unregistered calls for the service. Unregistered\ncalls are calls that do not contain consumer project identity.\n(Example: calls that do not contain an API key).\nBy default, API methods do not allow unregistered calls, and each method call\nmust be identified by a consumer project identity. Use this rule to\nallow/disallow unregistered calls.\n\nExample of an API that wants to allow unregistered calls for entire service.\n\n usage:\n rules:\n - selector: \"*\"\n allow_unregistered_calls: true\n\nExample of a method that wants to allow unregistered calls.\n\n usage:\n rules:\n - selector: \"google.example.library.v1.LibraryService.CreateBook\"\n allow_unregistered_calls: true", + "id": "UsageRule", + "properties": { + "allowUnregisteredCalls": { + "description": "If true, the selected method allows unregistered calls, e.g. calls\nthat don't identify any user or application.", + "type": "boolean" + }, + "selector": { + "description": "Selects the methods to which this rule applies. Use '*' to indicate all\nmethods in all APIs.\n\nRefer to selector for syntax details.", + "type": "string" + }, + "skipServiceControl": { + "description": "If true, the selected method should skip service control and the control\nplane features, such as quota and billing, will not be available.\nThis flag is used by Google Cloud Endpoints to bypass checks for internal\nmethods, such as service health check methods.", + "type": "boolean" + } + }, + "type": "object" } }, - "rootUrl": "https://serviceconsumermanagement.googleapis.com/", - "ownerDomain": "google.com", - "name": "serviceconsumermanagement", - "batchPath": "batch" -} + "servicePath": "", + "title": "Service Consumer Management API", + "version": "v1", + "version_module": true +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/serviceconsumermanagement/v1/serviceconsumermanagement-gen.go b/vendor/google.golang.org/api/serviceconsumermanagement/v1/serviceconsumermanagement-gen.go index a2922aabb..1b9c44638 100644 --- a/vendor/google.golang.org/api/serviceconsumermanagement/v1/serviceconsumermanagement-gen.go +++ b/vendor/google.golang.org/api/serviceconsumermanagement/v1/serviceconsumermanagement-gen.go @@ -112,7 +112,7 @@ type ServicesTenancyUnitsService struct { } // AddTenantProjectRequest: Request to add a newly created and -// configured tenant project to tenancy +// configured tenant project to a tenancy // unit. type AddTenantProjectRequest struct { // ProjectConfig: Configuration of the new tenant project that will be @@ -767,8 +767,8 @@ func (s *Billing) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -// BillingConfig: Describes billing configuration for new a Tenant -// Project +// BillingConfig: Describes billing configuration for a new tenant +// project. type BillingConfig struct { // BillingAccount: Name of the billing account. // For example `billingAccounts/012345-567890-ABCDEF`. @@ -858,8 +858,35 @@ type CancelOperationRequest struct { // and // `google.rpc.context.OriginContext`. // -// Available context types are defined in package +// Available context types are defined in +// package // `google.rpc.context`. +// +// This also provides mechanism to whitelist any protobuf message +// extension that +// can be sent in grpc metadata using +// “x-goog-ext--bin” +// and +// “x-goog-ext--jspb” format. For example, list any +// service +// specific protobuf types that can appear in grpc metadata as follows +// in your +// yaml file: +// +// Example: +// +// context: +// rules: +// - selector: +// "google.example.library.v1.LibraryService.CreateBook" +// allowed_request_extensions: +// - google.foo.v1.NewExtension +// allowed_response_extensions: +// - google.foo.v1.NewExtension +// +// You can also specify extension ID instead of fully qualified +// extension name +// here. type Context struct { // Rules: A list of RPC context rules that apply to individual API // methods. @@ -895,6 +922,16 @@ func (s *Context) MarshalJSON() ([]byte, error) { // for an individual API // element. type ContextRule struct { + // AllowedRequestExtensions: A list of full type names or extension IDs + // of extensions allowed in grpc + // side channel from client to backend. + AllowedRequestExtensions []string `json:"allowedRequestExtensions,omitempty"` + + // AllowedResponseExtensions: A list of full type names or extension IDs + // of extensions allowed in grpc + // side channel from backend to client. + AllowedResponseExtensions []string `json:"allowedResponseExtensions,omitempty"` + // Provided: A list of full type names of provided contexts. Provided []string `json:"provided,omitempty"` @@ -906,20 +943,22 @@ type ContextRule struct { // Refer to selector for syntax details. Selector string `json:"selector,omitempty"` - // ForceSendFields is a list of field names (e.g. "Provided") to - // unconditionally include in API requests. By default, fields with - // empty values are omitted from API requests. However, any non-pointer, - // non-interface field appearing in ForceSendFields will be sent to the - // server regardless of whether the field is empty or not. This may be - // used to include empty fields in Patch requests. + // ForceSendFields is a list of field names (e.g. + // "AllowedRequestExtensions") to unconditionally include in API + // requests. By default, fields with empty values are omitted from API + // requests. However, any non-pointer, non-interface field appearing in + // ForceSendFields will be sent to the server regardless of whether the + // field is empty or not. This may be used to include empty fields in + // Patch requests. ForceSendFields []string `json:"-"` - // NullFields is a list of field names (e.g. "Provided") to include in - // API requests with the JSON null value. By default, fields with empty - // values are omitted from API requests. However, any field with an - // empty value appearing in NullFields will be sent to the server as - // null. It is an error if a field in this list has a non-empty value. - // This may be used to include null fields in Patch requests. + // NullFields is a list of field names (e.g. "AllowedRequestExtensions") + // to include in API requests with the JSON null value. By default, + // fields with empty values are omitted from API requests. However, any + // field with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. NullFields []string `json:"-"` } @@ -967,16 +1006,16 @@ func (s *Control) MarshalJSON() ([]byte, error) { // consumer of a service. type CreateTenancyUnitRequest struct { // TenancyUnitId: Optional producer provided identifier of the tenancy - // unit - // Must be no longer than 40 characters and preferably URI friendly - // If it is not provided, UID for the tenancy unit will be auto - // generated + // unit. + // Must be no longer than 40 characters and preferably URI friendly. + // If it is not provided, a UID for the tenancy unit will be auto + // generated. // It must be unique across a service. // If the tenancy unit already exists for the service and consumer // pair, - // CreateTenancyUnit will return existing tenancy unit if provided - // identifier - // is identical or empty, otherwise the call will fail. + // `CreateTenancyUnit` will return the existing tenancy unit if the + // provided + // identifier is identical or empty, otherwise the call will fail. TenancyUnitId string `json:"tenancyUnitId,omitempty"` // ForceSendFields is a list of field names (e.g. "TenancyUnitId") to @@ -1200,11 +1239,7 @@ func (s *CustomHttpPattern) MarshalJSON() ([]byte, error) { // Text can be excluded from doc using the following // notation: //
(-- internal comment --)
-// Comments can be made conditional using a visibility label. The -// below -// text will be only rendered if the `BETA` label is -// available: -//
(--BETA: comment for BETA users --)
+// // A few directives are available in documentation. Note that // directives must appear on a single line to be properly // identified. The `include` directive includes a markdown file from @@ -2164,7 +2199,7 @@ type ListTenancyUnitsResponse struct { // NextPageToken: Pagination token for large results. NextPageToken string `json:"nextPageToken,omitempty"` - // TenancyUnits: Tenancy Units matching the request. + // TenancyUnits: Tenancy units matching the request. TenancyUnits []*TenancyUnit `json:"tenancyUnits,omitempty"` // ServerResponse contains the HTTP response code and headers from the @@ -2648,8 +2683,6 @@ type MetricDescriptor struct { // // **Grammar** // - // The grammar includes the dimensionless unit `1`, such as `1/s`. - // // The grammar also includes these connectors: // // * `/` division (as an infix operator, e.g. `1/s`). @@ -2659,7 +2692,7 @@ type MetricDescriptor struct { // // Expression = Component { "." Component } { "/" Component } ; // - // Component = [ PREFIX ] UNIT [ Annotation ] + // Component = ( [ PREFIX ] UNIT | "%" ) [ Annotation ] // | Annotation // | "1" // ; @@ -2673,6 +2706,10 @@ type MetricDescriptor struct { // `{requests}/s == 1/s`, `By{transmitted}/s == By/s`. // * `NAME` is a sequence of non-blank printable ASCII characters not // containing '{' or '}'. + // * `1` represents dimensionless value 1, such as in `1/s`. + // * `%` represents dimensionless value 1/100, and annotates values + // giving + // a percentage. Unit string `json:"unit,omitempty"` // ValueType: Whether the measurement is an integer, a floating-point @@ -3324,7 +3361,7 @@ func (s *Page) MarshalJSON() ([]byte, error) { // this level) type PolicyBinding struct { // Members: Uses the same format as in IAM policy. - // `member` must include both prefix and id. E.g., + // `member` must include both prefix and ID. For example, // `user:{emailId}`, // `serviceAccount:{emailId}`, `group:{emailId}`. Members []string `json:"members,omitempty"` @@ -3812,9 +3849,6 @@ type Service struct { // Usage: Configuration controlling usage of this service. Usage *Usage `json:"usage,omitempty"` - // Visibility: API visibility configuration. - Visibility *Visibility `json:"visibility,omitempty"` - // ForceSendFields is a list of field names (e.g. "Apis") to // unconditionally include in API requests. By default, fields with // empty values are omitted from API requests. However, any non-pointer, @@ -3851,8 +3885,8 @@ type ServiceAccountConfig struct { // have to guarantee it. AccountId string `json:"accountId,omitempty"` - // TenantProjectRoles: Roles for the service account above on tenant - // project. + // TenantProjectRoles: Roles for the associated service account for the + // tenant project. TenantProjectRoles []string `json:"tenantProjectRoles,omitempty"` // ForceSendFields is a list of field names (e.g. "AccountId") to @@ -4215,9 +4249,9 @@ func (s *SystemParameters) MarshalJSON() ([]byte, error) { // TenancyUnit: Representation of a tenancy unit. type TenancyUnit struct { - // Consumer: @OutputOnly Cloud resource One Platform Name of the - // consumer of this - // service. For example 'projects/123456'. + // Consumer: @OutputOnly Cloud resource name of the consumer of this + // service. + // For example 'projects/123456'. Consumer string `json:"consumer,omitempty"` // CreateTime: @OutputOnly The time this tenancy unit was created. @@ -4235,7 +4269,7 @@ type TenancyUnit struct { Service string `json:"service,omitempty"` // TenantResources: Resources constituting the tenancy unit. - // There can be at most 512 tenant resources in a tenancy units. + // There can be at most 512 tenant resources in a tenancy unit. TenantResources []*TenantResource `json:"tenantResources,omitempty"` // ServerResponse contains the HTTP response code and headers from the @@ -4276,7 +4310,7 @@ func (s *TenancyUnit) MarshalJSON() ([]byte, error) { // removal. type TenantProjectConfig struct { // BillingConfig: Billing account properties. - // It may be specified explicitly, or created from the specified + // It might be specified explicitly, or created from the specified // group // during provisioning BillingConfig *BillingConfig `json:"billingConfig,omitempty"` @@ -4302,7 +4336,7 @@ type TenantProjectConfig struct { // on this project // during provisioning. If any of these services can not be // activated, - // addTenantProject method will fail. + // request will fail. // For example: 'compute.googleapis.com','cloudfunctions.googleapis.com' Services []string `json:"services,omitempty"` @@ -4335,15 +4369,18 @@ func (s *TenantProjectConfig) MarshalJSON() ([]byte, error) { // TenantProjectPolicy: Describes policy settings that need to be // applied to a newly -// created Tenant Project. +// created tenant project. type TenantProjectPolicy struct { - // PolicyBindings: Additional policy bindings to be applied on the - // tenant - // project. - // At least one owner must be set in the bindings. Among the list of - // members - // as owners, at least one of them must be either `user` or `group` - // based. + // PolicyBindings: Policy bindings to be applied to the tenant project, + // in addition to the + // 'roles/owner' role granted to the Service Consumer Management + // service + // account. + // At least one binding must have the role `roles/owner`. Among the list + // of + // members for `roles/owner`, at least one of them must be either `user` + // or + // `group` type. PolicyBindings []*PolicyBinding `json:"policyBindings,omitempty"` // ForceSendFields is a list of field names (e.g. "PolicyBindings") to @@ -4373,7 +4410,7 @@ func (s *TenantProjectPolicy) MarshalJSON() ([]byte, error) { // TenantResource: Resource constituting the TenancyUnit. type TenantResource struct { // Resource: @OutputOnly Identifier of the tenant resource. - // For cloud projects it is in the form 'projects/{number}'. + // For cloud projects, it is in the form 'projects/{number}'. // For example 'projects/123456'. Resource string `json:"resource,omitempty"` @@ -4595,119 +4632,6 @@ func (s *UsageRule) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -// Visibility: `Visibility` defines restrictions for the visibility of -// service -// elements. Restrictions are specified using visibility labels -// (e.g., TRUSTED_TESTER) that are elsewhere linked to users and -// projects. -// -// Users and projects can have access to more than one visibility label. -// The -// effective visibility for multiple labels is the union of each -// label's -// elements, plus any unrestricted elements. -// -// If an element and its parents have no restrictions, visibility -// is -// unconditionally granted. -// -// Example: -// -// visibility: -// rules: -// - selector: google.calendar.Calendar.EnhancedSearch -// restriction: TRUSTED_TESTER -// - selector: google.calendar.Calendar.Delegate -// restriction: GOOGLE_INTERNAL -// -// Here, all methods are publicly visible except for the restricted -// methods -// EnhancedSearch and Delegate. -type Visibility struct { - // Rules: A list of visibility rules that apply to individual API - // elements. - // - // **NOTE:** All service configuration rules follow "last one wins" - // order. - Rules []*VisibilityRule `json:"rules,omitempty"` - - // ForceSendFields is a list of field names (e.g. "Rules") to - // unconditionally include in API requests. By default, fields with - // empty values are omitted from API requests. However, any non-pointer, - // non-interface field appearing in ForceSendFields will be sent to the - // server regardless of whether the field is empty or not. This may be - // used to include empty fields in Patch requests. - ForceSendFields []string `json:"-"` - - // NullFields is a list of field names (e.g. "Rules") to include in API - // requests with the JSON null value. By default, fields with empty - // values are omitted from API requests. However, any field with an - // empty value appearing in NullFields will be sent to the server as - // null. It is an error if a field in this list has a non-empty value. - // This may be used to include null fields in Patch requests. - NullFields []string `json:"-"` -} - -func (s *Visibility) MarshalJSON() ([]byte, error) { - type NoMethod Visibility - raw := NoMethod(*s) - return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) -} - -// VisibilityRule: A visibility rule provides visibility configuration -// for an individual API -// element. -type VisibilityRule struct { - // Restriction: A comma-separated list of visibility labels that apply - // to the `selector`. - // Any of the listed labels can be used to grant the visibility. - // - // If a rule has multiple labels, removing one of the labels but not all - // of - // them can break clients. - // - // Example: - // - // visibility: - // rules: - // - selector: google.calendar.Calendar.EnhancedSearch - // restriction: GOOGLE_INTERNAL, TRUSTED_TESTER - // - // Removing GOOGLE_INTERNAL from this restriction will break clients - // that - // rely on this method and only had access to it through - // GOOGLE_INTERNAL. - Restriction string `json:"restriction,omitempty"` - - // Selector: Selects methods, messages, fields, enums, etc. to which - // this rule applies. - // - // Refer to selector for syntax details. - Selector string `json:"selector,omitempty"` - - // ForceSendFields is a list of field names (e.g. "Restriction") to - // unconditionally include in API requests. By default, fields with - // empty values are omitted from API requests. However, any non-pointer, - // non-interface field appearing in ForceSendFields will be sent to the - // server regardless of whether the field is empty or not. This may be - // used to include empty fields in Patch requests. - ForceSendFields []string `json:"-"` - - // NullFields is a list of field names (e.g. "Restriction") to include - // in API requests with the JSON null value. By default, fields with - // empty values are omitted from API requests. However, any field with - // an empty value appearing in NullFields will be sent to the server as - // null. It is an error if a field in this list has a non-empty value. - // This may be used to include null fields in Patch requests. - NullFields []string `json:"-"` -} - -func (s *VisibilityRule) MarshalJSON() ([]byte, error) { - type NoMethod VisibilityRule - raw := NoMethod(*s) - return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) -} - // method id "serviceconsumermanagement.operations.cancel": type OperationsCancelCall struct { @@ -5371,9 +5295,11 @@ func (r *ServicesService) Search(parent string) *ServicesSearchCall { // PageSize sets the optional parameter "pageSize": The maximum number // of results returned by this request. Currently, the -// default maximum is set to 1000. If page_size is not provided or -// provided a -// number larger than 1000, it will be automatically set to 1000. +// default maximum is set to 1000. If page_size is not provided or the +// size +// provided is a number larger than 1000, it will be automatically set +// to +// 1000. func (c *ServicesSearchCall) PageSize(pageSize int64) *ServicesSearchCall { c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) return c @@ -5395,7 +5321,7 @@ func (c *ServicesSearchCall) PageToken(pageToken string) *ServicesSearchCall { // is the // name of the field you want to compare. Supported fields // are -// `tenant_resources.tag` and`tenant_resources.resource`. +// `tenant_resources.tag` and `tenant_resources.resource`. // // For example, to search tenancy units that contain at least one // tenant @@ -5521,7 +5447,7 @@ func (c *ServicesSearchCall) Do(opts ...googleapi.CallOption) (*SearchTenancyUni // ], // "parameters": { // "pageSize": { - // "description": "The maximum number of results returned by this request. Currently, the\ndefault maximum is set to 1000. If page_size is not provided or provided a\nnumber larger than 1000, it will be automatically set to 1000.\n\nOptional.", + // "description": "The maximum number of results returned by this request. Currently, the\ndefault maximum is set to 1000. If page_size is not provided or the size\nprovided is a number larger than 1000, it will be automatically set to\n1000.\n\nOptional.", // "format": "int32", // "location": "query", // "type": "integer" @@ -5539,7 +5465,7 @@ func (c *ServicesSearchCall) Do(opts ...googleapi.CallOption) (*SearchTenancyUni // "type": "string" // }, // "query": { - // "description": "Set a query `{expression}` for querying tenancy units. Your `{expression}`\nmust be in the format: `field_name=literal_string`. The `field_name` is the\nname of the field you want to compare. Supported fields are\n`tenant_resources.tag` and`tenant_resources.resource`.\n\nFor example, to search tenancy units that contain at least one tenant\nresource with given tag 'xyz', use query `tenant_resources.tag=xyz`.\nTo search tenancy units that contain at least one tenant resource with\ngiven resource name 'projects/123456', use query\n`tenant_resources.resource=projects/123456`.\n\nMultiple expressions can be joined with `AND`s. Tenancy units must match\nall expressions to be included in the result set. For example,\n`tenant_resources.tag=xyz AND tenant_resources.resource=projects/123456`\n\nOptional.", + // "description": "Set a query `{expression}` for querying tenancy units. Your `{expression}`\nmust be in the format: `field_name=literal_string`. The `field_name` is the\nname of the field you want to compare. Supported fields are\n`tenant_resources.tag` and `tenant_resources.resource`.\n\nFor example, to search tenancy units that contain at least one tenant\nresource with given tag 'xyz', use query `tenant_resources.tag=xyz`.\nTo search tenancy units that contain at least one tenant resource with\ngiven resource name 'projects/123456', use query\n`tenant_resources.resource=projects/123456`.\n\nMultiple expressions can be joined with `AND`s. Tenancy units must match\nall expressions to be included in the result set. For example,\n`tenant_resources.tag=xyz AND tenant_resources.resource=projects/123456`\n\nOptional.", // "location": "query", // "type": "string" // } @@ -5588,12 +5514,12 @@ type ServicesTenancyUnitsAddProjectCall struct { } // AddProject: Add a new tenant project to the tenancy unit. -// There can be at most 512 tenant projects in a tenancy units. -// If there are previously failed AddTenantProject calls, you might need -// to -// call RemoveTenantProject first to clean them before you can make +// There can be at most 512 tenant projects in a tenancy unit. +// If there are previously failed `AddTenantProject` calls, you might +// need to +// call `RemoveTenantProject` first to clean them before you can make // another -// AddTenantProject with the same tag. +// `AddTenantProject` with the same tag. // Operation. func (r *ServicesTenancyUnitsService) AddProject(parent string, addtenantprojectrequest *AddTenantProjectRequest) *ServicesTenancyUnitsAddProjectCall { c := &ServicesTenancyUnitsAddProjectCall{s: r.s, urlParams_: make(gensupport.URLParams)} @@ -5688,7 +5614,7 @@ func (c *ServicesTenancyUnitsAddProjectCall) Do(opts ...googleapi.CallOption) (* } return ret, nil // { - // "description": "Add a new tenant project to the tenancy unit.\nThere can be at most 512 tenant projects in a tenancy units.\nIf there are previously failed AddTenantProject calls, you might need to\ncall RemoveTenantProject first to clean them before you can make another\nAddTenantProject with the same tag.\nOperation\u003cresponse: Empty\u003e.", + // "description": "Add a new tenant project to the tenancy unit.\nThere can be at most 512 tenant projects in a tenancy unit.\nIf there are previously failed `AddTenantProject` calls, you might need to\ncall `RemoveTenantProject` first to clean them before you can make another\n`AddTenantProject` with the same tag.\nOperation\u003cresponse: Empty\u003e.", // "flatPath": "v1/services/{servicesId}/{servicesId1}/{servicesId2}/tenancyUnits/{tenancyUnitsId}:addProject", // "httpMethod": "POST", // "id": "serviceconsumermanagement.services.tenancyUnits.addProject", @@ -5863,9 +5789,9 @@ type ServicesTenancyUnitsDeleteCall struct { header_ http.Header } -// Delete: Delete tenancy unit. Before the tenancy unit is deleted, +// Delete: Delete a tenancy unit. Before the tenancy unit is deleted, // there should be -// no tenant resource in it. +// no tenant resources in it. // Operation. func (r *ServicesTenancyUnitsService) Delete(name string) *ServicesTenancyUnitsDeleteCall { c := &ServicesTenancyUnitsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)} @@ -5954,7 +5880,7 @@ func (c *ServicesTenancyUnitsDeleteCall) Do(opts ...googleapi.CallOption) (*Oper } return ret, nil // { - // "description": "Delete tenancy unit. Before the tenancy unit is deleted, there should be\nno tenant resource in it.\nOperation\u003cresponse: Empty\u003e.", + // "description": "Delete a tenancy unit. Before the tenancy unit is deleted, there should be\nno tenant resources in it.\nOperation\u003cresponse: Empty\u003e.", // "flatPath": "v1/services/{servicesId}/{servicesId1}/{servicesId2}/tenancyUnits/{tenancyUnitsId}", // "httpMethod": "DELETE", // "id": "serviceconsumermanagement.services.tenancyUnits.delete", @@ -5992,12 +5918,12 @@ type ServicesTenancyUnitsListCall struct { header_ http.Header } -// List: Find tenancy unit for a service and consumer. -// This method should not be used in producers' runtime path, e.g. -// finding -// the tenant project number when creating VMs. Producers should -// persist -// the tenant project information after the project is created. +// List: Find the tenancy unit for a service and consumer. +// This method should not be used in producers' runtime path, for +// example +// finding the tenant project number when creating VMs. Producers +// should +// persist the tenant project information after the project is created. func (r *ServicesTenancyUnitsService) List(parent string) *ServicesTenancyUnitsListCall { c := &ServicesTenancyUnitsListCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.parent = parent @@ -6122,7 +6048,7 @@ func (c *ServicesTenancyUnitsListCall) Do(opts ...googleapi.CallOption) (*ListTe } return ret, nil // { - // "description": "Find tenancy unit for a service and consumer.\nThis method should not be used in producers' runtime path, e.g. finding\nthe tenant project number when creating VMs. Producers should persist\nthe tenant project information after the project is created.", + // "description": "Find the tenancy unit for a service and consumer.\nThis method should not be used in producers' runtime path, for example\nfinding the tenant project number when creating VMs. Producers should\npersist the tenant project information after the project is created.", // "flatPath": "v1/services/{servicesId}/{servicesId1}/{servicesId2}/tenancyUnits", // "httpMethod": "GET", // "id": "serviceconsumermanagement.services.tenancyUnits.list", diff --git a/vendor/google.golang.org/api/servicecontrol/v1/servicecontrol-api.json b/vendor/google.golang.org/api/servicecontrol/v1/servicecontrol-api.json index f2b5c8a26..cbab22f7b 100644 --- a/vendor/google.golang.org/api/servicecontrol/v1/servicecontrol-api.json +++ b/vendor/google.golang.org/api/servicecontrol/v1/servicecontrol-api.json @@ -1,400 +1,406 @@ { - "canonicalName": "Service Control", "auth": { "oauth2": { "scopes": { - "https://www.googleapis.com/auth/servicecontrol": { - "description": "Manage your Google Service Control data" - }, "https://www.googleapis.com/auth/cloud-platform": { "description": "View and manage your data across Google Cloud Platform services" + }, + "https://www.googleapis.com/auth/servicecontrol": { + "description": "Manage your Google Service Control data" } } } }, - "rootUrl": "https://servicecontrol.googleapis.com/", - "ownerDomain": "google.com", - "name": "servicecontrol", + "basePath": "", + "baseUrl": "https://servicecontrol.googleapis.com/", "batchPath": "batch", + "canonicalName": "Service Control", + "description": "Google Service Control provides control plane functionality to managed services, such as logging, monitoring, and status checks.", + "discoveryVersion": "v1", + "documentationLink": "https://cloud.google.com/service-control/", "fullyEncodeReservedExpansion": true, - "title": "Google Service Control API", + "icons": { + "x16": "http://www.google.com/images/icons/product/search-16.gif", + "x32": "http://www.google.com/images/icons/product/search-32.gif" + }, + "id": "servicecontrol:v1", + "kind": "discovery#restDescription", + "name": "servicecontrol", + "ownerDomain": "google.com", "ownerName": "Google", + "parameters": { + "$.xgafv": { + "description": "V1 error format.", + "enum": [ + "1", + "2" + ], + "enumDescriptions": [ + "v1 error format", + "v2 error format" + ], + "location": "query", + "type": "string" + }, + "access_token": { + "description": "OAuth access token.", + "location": "query", + "type": "string" + }, + "alt": { + "default": "json", + "description": "Data format for response.", + "enum": [ + "json", + "media", + "proto" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json", + "Media download with context-dependent Content-Type", + "Responses with Content-Type of application/x-protobuf" + ], + "location": "query", + "type": "string" + }, + "bearer_token": { + "description": "OAuth bearer token.", + "location": "query", + "type": "string" + }, + "callback": { + "description": "JSONP", + "location": "query", + "type": "string" + }, + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "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.", + "location": "query", + "type": "string" + }, + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "pp": { + "default": "true", + "description": "Pretty-print response.", + "location": "query", + "type": "boolean" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", + "location": "query", + "type": "string" + }, + "uploadType": { + "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", + "location": "query", + "type": "string" + }, + "upload_protocol": { + "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", + "location": "query", + "type": "string" + } + }, + "protocol": "rest", "resources": { "services": { "methods": { - "endReconciliation": { - "flatPath": "v1/services/{serviceName}:endReconciliation", - "path": "v1/services/{serviceName}:endReconciliation", - "id": "servicecontrol.services.endReconciliation", - "request": { - "$ref": "EndReconciliationRequest" - }, - "description": "Signals the quota controller that service ends the ongoing usage\nreconciliation.\n\nThis method requires the `servicemanagement.services.quota`\npermission on the specified service. For more information, see\n[Google Cloud IAM](https://cloud.google.com/iam).", - "response": { - "$ref": "EndReconciliationResponse" - }, + "allocateQuota": { + "description": "Attempts to allocate quota for the specified consumer. It should be called\nbefore the operation is executed.\n\nThis method requires the `servicemanagement.services.quota`\npermission on the specified service. For more information, see\n[Cloud IAM](https://cloud.google.com/iam).\n\n**NOTE:** The client **must** fail-open on server errors `INTERNAL`,\n`UNKNOWN`, `DEADLINE_EXCEEDED`, and `UNAVAILABLE`. To ensure system\nreliability, the server may inject these errors to prohibit any hard\ndependency on the quota functionality.", + "flatPath": "v1/services/{serviceName}:allocateQuota", + "httpMethod": "POST", + "id": "servicecontrol.services.allocateQuota", "parameterOrder": [ "serviceName" ], - "httpMethod": "POST", "parameters": { "serviceName": { "description": "Name of the service as specified in the service configuration. For example,\n`\"pubsub.googleapis.com\"`.\n\nSee google.api.Service for the definition of a service name.", + "location": "path", "required": true, - "type": "string", - "location": "path" + "type": "string" } }, + "path": "v1/services/{serviceName}:allocateQuota", + "request": { + "$ref": "AllocateQuotaRequest" + }, + "response": { + "$ref": "AllocateQuotaResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/servicecontrol" + ] + }, + "check": { + "description": "Checks whether an operation on a service should be allowed to proceed\nbased on the configuration of the service and related policies. It must be\ncalled before the operation is executed.\n\nIf feasible, the client should cache the check results and reuse them for\n60 seconds. In case of any server errors, the client should rely on the\ncached results for much longer time to avoid outage.\nWARNING: There is general 60s delay for the configuration and policy\npropagation, therefore callers MUST NOT depend on the `Check` method having\nthe latest policy information.\n\nNOTE: the CheckRequest has the size limit of 64KB.\n\nThis method requires the `servicemanagement.services.check` permission\non the specified service. For more information, see\n[Cloud IAM](https://cloud.google.com/iam).", + "flatPath": "v1/services/{serviceName}:check", + "httpMethod": "POST", + "id": "servicecontrol.services.check", + "parameterOrder": [ + "serviceName" + ], + "parameters": { + "serviceName": { + "description": "The service name as specified in its service configuration. For example,\n`\"pubsub.googleapis.com\"`.\n\nSee\n[google.api.Service](https://cloud.google.com/service-management/reference/rpc/google.api#google.api.Service)\nfor the definition of a service name.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/services/{serviceName}:check", + "request": { + "$ref": "CheckRequest" + }, + "response": { + "$ref": "CheckResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/servicecontrol" + ] + }, + "endReconciliation": { + "description": "Signals the quota controller that service ends the ongoing usage\nreconciliation.\n\nThis method requires the `servicemanagement.services.quota`\npermission on the specified service. For more information, see\n[Google Cloud IAM](https://cloud.google.com/iam).", + "flatPath": "v1/services/{serviceName}:endReconciliation", + "httpMethod": "POST", + "id": "servicecontrol.services.endReconciliation", + "parameterOrder": [ + "serviceName" + ], + "parameters": { + "serviceName": { + "description": "Name of the service as specified in the service configuration. For example,\n`\"pubsub.googleapis.com\"`.\n\nSee google.api.Service for the definition of a service name.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/services/{serviceName}:endReconciliation", + "request": { + "$ref": "EndReconciliationRequest" + }, + "response": { + "$ref": "EndReconciliationResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/servicecontrol" + ] + }, + "releaseQuota": { + "description": "Releases previously allocated quota done through AllocateQuota method.\n\nThis method requires the `servicemanagement.services.quota`\npermission on the specified service. For more information, see\n[Cloud IAM](https://cloud.google.com/iam).\n\n\n**NOTE:** The client **must** fail-open on server errors `INTERNAL`,\n`UNKNOWN`, `DEADLINE_EXCEEDED`, and `UNAVAILABLE`. To ensure system\nreliability, the server may inject these errors to prohibit any hard\ndependency on the quota functionality.", + "flatPath": "v1/services/{serviceName}:releaseQuota", + "httpMethod": "POST", + "id": "servicecontrol.services.releaseQuota", + "parameterOrder": [ + "serviceName" + ], + "parameters": { + "serviceName": { + "description": "Name of the service as specified in the service configuration. For example,\n`\"pubsub.googleapis.com\"`.\n\nSee google.api.Service for the definition of a service name.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/services/{serviceName}:releaseQuota", + "request": { + "$ref": "ReleaseQuotaRequest" + }, + "response": { + "$ref": "ReleaseQuotaResponse" + }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/servicecontrol" ] }, "report": { + "description": "Reports operation results to Google Service Control, such as logs and\nmetrics. It should be called after an operation is completed.\n\nIf feasible, the client should aggregate reporting data for up to 5\nseconds to reduce API traffic. Limiting aggregation to 5 seconds is to\nreduce data loss during client crashes. Clients should carefully choose\nthe aggregation time window to avoid data loss risk more than 0.01%\nfor business and compliance reasons.\n\nNOTE: the ReportRequest has the size limit of 1MB.\n\nThis method requires the `servicemanagement.services.report` permission\non the specified service. For more information, see\n[Google Cloud IAM](https://cloud.google.com/iam).", + "flatPath": "v1/services/{serviceName}:report", + "httpMethod": "POST", + "id": "servicecontrol.services.report", + "parameterOrder": [ + "serviceName" + ], + "parameters": { + "serviceName": { + "description": "The service name as specified in its service configuration. For example,\n`\"pubsub.googleapis.com\"`.\n\nSee\n[google.api.Service](https://cloud.google.com/service-management/reference/rpc/google.api#google.api.Service)\nfor the definition of a service name.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/services/{serviceName}:report", "request": { "$ref": "ReportRequest" }, - "description": "Reports operation results to Google Service Control, such as logs and\nmetrics. It should be called after an operation is completed.\n\nIf feasible, the client should aggregate reporting data for up to 5\nseconds to reduce API traffic. Limiting aggregation to 5 seconds is to\nreduce data loss during client crashes. Clients should carefully choose\nthe aggregation time window to avoid data loss risk more than 0.01%\nfor business and compliance reasons.\n\nNOTE: the ReportRequest has the size limit of 1MB.\n\nThis method requires the `servicemanagement.services.report` permission\non the specified service. For more information, see\n[Google Cloud IAM](https://cloud.google.com/iam).", "response": { "$ref": "ReportResponse" }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/servicecontrol" + ] + }, + "startReconciliation": { + "description": "Unlike rate quota, allocation quota does not get refilled periodically.\nSo, it is possible that the quota usage as seen by the service differs from\nwhat the One Platform considers the usage is. This is expected to happen\nonly rarely, but over time this can accumulate. Services can invoke\nStartReconciliation and EndReconciliation to correct this usage drift, as\ndescribed below:\n1. Service sends StartReconciliation with a timestamp in future for each\n metric that needs to be reconciled. The timestamp being in future allows\n to account for in-flight AllocateQuota and ReleaseQuota requests for the\n same metric.\n2. One Platform records this timestamp and starts tracking subsequent\n AllocateQuota and ReleaseQuota requests until EndReconciliation is\n called.\n3. At or after the time specified in the StartReconciliation, service\n sends EndReconciliation with the usage that needs to be reconciled to.\n4. One Platform adjusts its own record of usage for that metric to the\n value specified in EndReconciliation by taking in to account any\n allocation or release between StartReconciliation and EndReconciliation.\n\nSignals the quota controller that the service wants to perform a usage\nreconciliation as specified in the request.\n\nThis method requires the `servicemanagement.services.quota`\npermission on the specified service. For more information, see\n[Google Cloud IAM](https://cloud.google.com/iam).", + "flatPath": "v1/services/{serviceName}:startReconciliation", + "httpMethod": "POST", + "id": "servicecontrol.services.startReconciliation", "parameterOrder": [ "serviceName" ], - "httpMethod": "POST", "parameters": { "serviceName": { + "description": "Name of the service as specified in the service configuration. For example,\n`\"pubsub.googleapis.com\"`.\n\nSee google.api.Service for the definition of a service name.", "location": "path", - "description": "The service name as specified in its service configuration. For example,\n`\"pubsub.googleapis.com\"`.\n\nSee\n[google.api.Service](https://cloud.google.com/service-management/reference/rpc/google.api#google.api.Service)\nfor the definition of a service name.", "required": true, "type": "string" } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/servicecontrol" - ], - "flatPath": "v1/services/{serviceName}:report", - "path": "v1/services/{serviceName}:report", - "id": "servicecontrol.services.report" - }, - "allocateQuota": { - "httpMethod": "POST", - "parameterOrder": [ - "serviceName" - ], - "response": { - "$ref": "AllocateQuotaResponse" - }, - "parameters": { - "serviceName": { - "description": "Name of the service as specified in the service configuration. For example,\n`\"pubsub.googleapis.com\"`.\n\nSee google.api.Service for the definition of a service name.", - "required": true, - "type": "string", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/servicecontrol" - ], - "flatPath": "v1/services/{serviceName}:allocateQuota", - "id": "servicecontrol.services.allocateQuota", - "path": "v1/services/{serviceName}:allocateQuota", - "request": { - "$ref": "AllocateQuotaRequest" - }, - "description": "Attempts to allocate quota for the specified consumer. It should be called\nbefore the operation is executed.\n\nThis method requires the `servicemanagement.services.quota`\npermission on the specified service. For more information, see\n[Cloud IAM](https://cloud.google.com/iam).\n\n**NOTE:** The client **must** fail-open on server errors `INTERNAL`,\n`UNKNOWN`, `DEADLINE_EXCEEDED`, and `UNAVAILABLE`. To ensure system\nreliability, the server may inject these errors to prohibit any hard\ndependency on the quota functionality." - }, - "startReconciliation": { + "path": "v1/services/{serviceName}:startReconciliation", "request": { "$ref": "StartReconciliationRequest" }, - "description": "Unlike rate quota, allocation quota does not get refilled periodically.\nSo, it is possible that the quota usage as seen by the service differs from\nwhat the One Platform considers the usage is. This is expected to happen\nonly rarely, but over time this can accumulate. Services can invoke\nStartReconciliation and EndReconciliation to correct this usage drift, as\ndescribed below:\n1. Service sends StartReconciliation with a timestamp in future for each\n metric that needs to be reconciled. The timestamp being in future allows\n to account for in-flight AllocateQuota and ReleaseQuota requests for the\n same metric.\n2. One Platform records this timestamp and starts tracking subsequent\n AllocateQuota and ReleaseQuota requests until EndReconciliation is\n called.\n3. At or after the time specified in the StartReconciliation, service\n sends EndReconciliation with the usage that needs to be reconciled to.\n4. One Platform adjusts its own record of usage for that metric to the\n value specified in EndReconciliation by taking in to account any\n allocation or release between StartReconciliation and EndReconciliation.\n\nSignals the quota controller that the service wants to perform a usage\nreconciliation as specified in the request.\n\nThis method requires the `servicemanagement.services.quota`\npermission on the specified service. For more information, see\n[Google Cloud IAM](https://cloud.google.com/iam).", "response": { "$ref": "StartReconciliationResponse" }, - "parameterOrder": [ - "serviceName" - ], - "httpMethod": "POST", - "parameters": { - "serviceName": { - "description": "Name of the service as specified in the service configuration. For example,\n`\"pubsub.googleapis.com\"`.\n\nSee google.api.Service for the definition of a service name.", - "required": true, - "type": "string", - "location": "path" - } - }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/servicecontrol" - ], - "flatPath": "v1/services/{serviceName}:startReconciliation", - "path": "v1/services/{serviceName}:startReconciliation", - "id": "servicecontrol.services.startReconciliation" - }, - "check": { - "response": { - "$ref": "CheckResponse" - }, - "parameterOrder": [ - "serviceName" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/servicecontrol" - ], - "parameters": { - "serviceName": { - "location": "path", - "description": "The service name as specified in its service configuration. For example,\n`\"pubsub.googleapis.com\"`.\n\nSee\n[google.api.Service](https://cloud.google.com/service-management/reference/rpc/google.api#google.api.Service)\nfor the definition of a service name.", - "required": true, - "type": "string" - } - }, - "flatPath": "v1/services/{serviceName}:check", - "path": "v1/services/{serviceName}:check", - "id": "servicecontrol.services.check", - "description": "Checks an operation with Google Service Control to decide whether\nthe given operation should proceed. It should be called before the\noperation is executed.\n\nIf feasible, the client should cache the check results and reuse them for\n60 seconds. In case of server errors, the client can rely on the cached\nresults for longer time.\n\nNOTE: the CheckRequest has the size limit of 64KB.\n\nThis method requires the `servicemanagement.services.check` permission\non the specified service. For more information, see\n[Google Cloud IAM](https://cloud.google.com/iam).", - "request": { - "$ref": "CheckRequest" - } - }, - "releaseQuota": { - "description": "Releases previously allocated quota done through AllocateQuota method.\n\nThis method requires the `servicemanagement.services.quota`\npermission on the specified service. For more information, see\n[Cloud IAM](https://cloud.google.com/iam).\n\n\n**NOTE:** The client **must** fail-open on server errors `INTERNAL`,\n`UNKNOWN`, `DEADLINE_EXCEEDED`, and `UNAVAILABLE`. To ensure system\nreliability, the server may inject these errors to prohibit any hard\ndependency on the quota functionality.", - "request": { - "$ref": "ReleaseQuotaRequest" - }, - "response": { - "$ref": "ReleaseQuotaResponse" - }, - "parameterOrder": [ - "serviceName" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/servicecontrol" - ], - "parameters": { - "serviceName": { - "location": "path", - "description": "Name of the service as specified in the service configuration. For example,\n`\"pubsub.googleapis.com\"`.\n\nSee google.api.Service for the definition of a service name.", - "required": true, - "type": "string" - } - }, - "flatPath": "v1/services/{serviceName}:releaseQuota", - "path": "v1/services/{serviceName}:releaseQuota", - "id": "servicecontrol.services.releaseQuota" + ] } } } }, - "parameters": { - "upload_protocol": { - "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", - "type": "string", - "location": "query" - }, - "prettyPrint": { - "description": "Returns response with indentations and line breaks.", - "type": "boolean", - "default": "true", - "location": "query" - }, - "fields": { - "location": "query", - "description": "Selector specifying which fields to include in a partial response.", - "type": "string" - }, - "uploadType": { - "location": "query", - "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", - "type": "string" - }, - "$.xgafv": { - "enumDescriptions": [ - "v1 error format", - "v2 error format" - ], - "location": "query", - "enum": [ - "1", - "2" - ], - "description": "V1 error format.", - "type": "string" - }, - "callback": { - "location": "query", - "description": "JSONP", - "type": "string" - }, - "alt": { - "type": "string", - "enumDescriptions": [ - "Responses with Content-Type of application/json", - "Media download with context-dependent Content-Type", - "Responses with Content-Type of application/x-protobuf" - ], - "location": "query", - "description": "Data format for response.", - "default": "json", - "enum": [ - "json", - "media", - "proto" - ] - }, - "access_token": { - "description": "OAuth access token.", - "type": "string", - "location": "query" - }, - "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.", - "type": "string", - "location": "query" - }, - "quotaUser": { - "location": "query", - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", - "type": "string" - }, - "pp": { - "location": "query", - "description": "Pretty-print response.", - "type": "boolean", - "default": "true" - }, - "oauth_token": { - "location": "query", - "description": "OAuth 2.0 token for the current user.", - "type": "string" - }, - "bearer_token": { - "description": "OAuth bearer token.", - "type": "string", - "location": "query" - } - }, - "version": "v1", - "baseUrl": "https://servicecontrol.googleapis.com/", - "servicePath": "", - "kind": "discovery#restDescription", - "description": "Google Service Control provides control plane functionality to managed services, such as logging, monitoring, and status checks.", - "basePath": "", - "id": "servicecontrol:v1", - "documentationLink": "https://cloud.google.com/service-control/", - "revision": "20180116", - "discoveryVersion": "v1", - "version_module": true, + "revision": "20180312", + "rootUrl": "https://servicecontrol.googleapis.com/", "schemas": { - "CheckResponse": { - "description": "Response message for the Check method.", - "type": "object", - "properties": { - "operationId": { - "description": "The same operation_id value used in the CheckRequest.\nUsed for logging and diagnostics purposes.", - "type": "string" - }, - "checkErrors": { - "description": "Indicate the decision of the check.\n\nIf no check errors are present, the service should process the operation.\nOtherwise the service should use the list of errors to determine the\nappropriate action.", - "type": "array", - "items": { - "$ref": "CheckError" - } - }, - "checkInfo": { - "description": "Feedback data returned from the server during processing a Check request.", - "$ref": "CheckInfo" - }, - "quotaInfo": { - "description": "Quota information for the check request associated with this response.\n", - "$ref": "QuotaInfo" - }, - "serviceConfigId": { - "description": "The actual config id used to process the request.", - "type": "string" - } - }, - "id": "CheckResponse" - }, - "Status": { - "description": "The `Status` type defines a logical error model that is suitable for different\nprogramming environments, including REST APIs and RPC APIs. It is used by\n[gRPC](https://github.com/grpc). The error model is designed to be:\n\n- Simple to use and understand for most users\n- Flexible enough to meet unexpected needs\n\n# Overview\n\nThe `Status` message contains three pieces of data: error code, error message,\nand error details. The error code should be an enum value of\ngoogle.rpc.Code, but it may accept additional error codes if needed. The\nerror message should be a developer-facing English message that helps\ndevelopers *understand* and *resolve* the error. If a localized user-facing\nerror message is needed, put the localized message in the error details or\nlocalize it in the client. The optional error details may contain arbitrary\ninformation about the error. There is a predefined set of error detail types\nin the package `google.rpc` that can be used for common error conditions.\n\n# Language mapping\n\nThe `Status` message is the logical representation of the error model, but it\nis not necessarily the actual wire format. When the `Status` message is\nexposed in different client libraries and different wire protocols, it can be\nmapped differently. For example, it will likely be mapped to some exceptions\nin Java, but more likely mapped to some error codes in C.\n\n# Other uses\n\nThe error model and the `Status` message can be used in a variety of\nenvironments, either with or without APIs, to provide a\nconsistent developer experience across different environments.\n\nExample uses of this error model include:\n\n- Partial errors. If a service needs to return partial errors to the client,\n it may embed the `Status` in the normal response to indicate the partial\n errors.\n\n- Workflow errors. A typical workflow has multiple steps. Each step may\n have a `Status` message for error reporting.\n\n- Batch operations. If a client uses batch request and batch response, the\n `Status` message should be used directly inside batch response, one for\n each error sub-response.\n\n- Asynchronous operations. If an API call embeds asynchronous operation\n results in its response, the status of those operations should be\n represented directly using the `Status` message.\n\n- Logging. If some API errors are stored in logs, the message `Status` could\n be used directly after any stripping needed for security/privacy reasons.", - "type": "object", - "properties": { - "code": { - "description": "The status code, which should be an enum value of google.rpc.Code.", - "format": "int32", - "type": "integer" - }, - "message": { - "description": "A developer-facing error message, which should be in English. Any\nuser-facing error message should be localized and sent in the\ngoogle.rpc.Status.details field, or localized by the client.", - "type": "string" - }, - "details": { - "description": "A list of messages that carry the error details. There is a common set of\nmessage types for APIs to use.", - "type": "array", - "items": { - "type": "object", - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - } - } - } - }, - "id": "Status" - }, - "ReportRequest": { - "description": "Request message for the Report method.", - "type": "object", - "properties": { - "operations": { - "description": "Operations to be reported.\n\nTypically the service should report one operation per request.\nPutting multiple operations into a single request is allowed, but should\nbe used only when multiple operations are natually available at the time\nof the report.\n\nIf multiple operations are in a single request, the total request size\nshould be no larger than 1MB. See ReportResponse.report_errors for\npartial failure behavior.", - "type": "array", - "items": { - "$ref": "Operation" - } - }, - "serviceConfigId": { - "description": "Specifies which version of service config should be used to process the\nrequest.\n\nIf unspecified or no matching version can be found, the\nlatest one will be used.", - "type": "string" - } - }, - "id": "ReportRequest" - }, "AllocateInfo": { - "type": "object", + "id": "AllocateInfo", "properties": { "unusedArguments": { "description": "A list of label keys that were unused by the server in processing the\nrequest. Thus, for similar requests repeated in a certain future time\nwindow, the caller can choose to ignore these labels in the requests\nto achieve better client-side cache hits and quota aggregation.", - "type": "array", "items": { "type": "string" - } + }, + "type": "array" } }, - "id": "AllocateInfo" + "type": "object" + }, + "AllocateQuotaRequest": { + "description": "Request message for the AllocateQuota method.", + "id": "AllocateQuotaRequest", + "properties": { + "allocateOperation": { + "$ref": "QuotaOperation", + "description": "Operation that describes the quota allocation." + }, + "serviceConfigId": { + "description": "Specifies which version of service configuration should be used to process\nthe request. If unspecified or no matching version can be found, the latest\none will be used.", + "type": "string" + } + }, + "type": "object" + }, + "AllocateQuotaResponse": { + "description": "Response message for the AllocateQuota method.", + "id": "AllocateQuotaResponse", + "properties": { + "allocateErrors": { + "description": "Indicates the decision of the allocate.", + "items": { + "$ref": "QuotaError" + }, + "type": "array" + }, + "allocateInfo": { + "$ref": "AllocateInfo", + "description": "WARNING: DO NOT use this field until this warning message is removed." + }, + "operationId": { + "description": "The same operation_id value used in the AllocateQuotaRequest. Used for\nlogging and diagnostics purposes.", + "type": "string" + }, + "quotaMetrics": { + "description": "Quota metrics to indicate the result of allocation. Depending on the\nrequest, one or more of the following metrics will be included:\n\n1. Per quota group or per quota metric incremental usage will be specified\nusing the following delta metric :\n \"serviceruntime.googleapis.com/api/consumer/quota_used_count\"\n\n2. The quota limit reached condition will be specified using the following\nboolean metric :\n \"serviceruntime.googleapis.com/quota/exceeded\"", + "items": { + "$ref": "MetricValueSet" + }, + "type": "array" + }, + "serviceConfigId": { + "description": "ID of the actual config used to process the request.", + "type": "string" + } + }, + "type": "object" }, "AuditLog": { "description": "Common audit log format for Google Cloud Platform API operations.\n\n", - "type": "object", + "id": "AuditLog", "properties": { "authenticationInfo": { - "description": "Authentication information.", - "$ref": "AuthenticationInfo" + "$ref": "AuthenticationInfo", + "description": "Authentication information." }, - "status": { - "$ref": "Status", - "description": "The status of the overall operation." + "authorizationInfo": { + "description": "Authorization information. If there are multiple\nresources or permissions involved, then there is\none AuthorizationInfo element for each {resource, permission} tuple.", + "items": { + "$ref": "AuthorizationInfo" + }, + "type": "array" }, - "serviceName": { - "description": "The name of the API service performing the operation. For example,\n`\"datastore.googleapis.com\"`.", + "metadata": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "description": "Other service-specific data about the request, response, and other\ninformation associated with the current audited event.", + "type": "object" + }, + "methodName": { + "description": "The name of the service method or operation.\nFor API calls, this should be the name of the API method.\nFor example,\n\n \"google.datastore.v1.Datastore.RunQuery\"\n \"google.logging.v1.LoggingService.DeleteLog\"", + "type": "string" + }, + "numResponseItems": { + "description": "The number of items returned from a List or Query API method,\nif applicable.", + "format": "int64", + "type": "string" + }, + "request": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "description": "The operation request. This may not include all request parameters,\nsuch as those that are too large, privacy-sensitive, or duplicated\nelsewhere in the log record.\nIt should never include user-generated data, such as file contents.\nWhen the JSON object represented here has a proto equivalent, the proto\nname will be indicated in the `@type` property.", + "type": "object" + }, + "requestMetadata": { + "$ref": "RequestMetadata", + "description": "Metadata about the operation." + }, + "resourceName": { + "description": "The resource or collection that is the target of the operation.\nThe name is a scheme-less URI, not including the API service name.\nFor example:\n\n \"shelves/SHELF_ID/books\"\n \"shelves/SHELF_ID/books/BOOK_ID\"", "type": "string" }, "response": { @@ -405,322 +411,51 @@ "description": "The operation response. This may not include all response elements,\nsuch as those that are too large, privacy-sensitive, or duplicated\nelsewhere in the log record.\nIt should never include user-generated data, such as file contents.\nWhen the JSON object represented here has a proto equivalent, the proto\nname will be indicated in the `@type` property.", "type": "object" }, - "metadata": { - "description": "Other service-specific data about the request, response, and other\ninformation associated with the current audited event.", - "type": "object", - "additionalProperties": { - "description": "Properties of the object.", - "type": "any" - } - }, - "methodName": { - "description": "The name of the service method or operation.\nFor API calls, this should be the name of the API method.\nFor example,\n\n \"google.datastore.v1.Datastore.RunQuery\"\n \"google.logging.v1.LoggingService.DeleteLog\"", - "type": "string" - }, - "resourceName": { - "description": "The resource or collection that is the target of the operation.\nThe name is a scheme-less URI, not including the API service name.\nFor example:\n\n \"shelves/SHELF_ID/books\"\n \"shelves/SHELF_ID/books/BOOK_ID\"", - "type": "string" - }, "serviceData": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, "description": "Deprecated, use `metadata` field instead.\nOther service-specific data about the request, response, and other\nactivities.", - "type": "object", - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - } + "type": "object" }, - "numResponseItems": { - "description": "The number of items returned from a List or Query API method,\nif applicable.", - "format": "int64", + "serviceName": { + "description": "The name of the API service performing the operation. For example,\n`\"datastore.googleapis.com\"`.", "type": "string" }, - "authorizationInfo": { - "description": "Authorization information. If there are multiple\nresources or permissions involved, then there is\none AuthorizationInfo element for each {resource, permission} tuple.", - "type": "array", - "items": { - "$ref": "AuthorizationInfo" - } - }, - "request": { - "description": "The operation request. This may not include all request parameters,\nsuch as those that are too large, privacy-sensitive, or duplicated\nelsewhere in the log record.\nIt should never include user-generated data, such as file contents.\nWhen the JSON object represented here has a proto equivalent, the proto\nname will be indicated in the `@type` property.", - "type": "object", - "additionalProperties": { - "description": "Properties of the object.", - "type": "any" - } - }, - "requestMetadata": { - "$ref": "RequestMetadata", - "description": "Metadata about the operation." + "status": { + "$ref": "Status", + "description": "The status of the overall operation." } }, - "id": "AuditLog" + "type": "object" }, - "LogEntry": { + "AuthenticationInfo": { + "description": "Authentication information for the operation.", + "id": "AuthenticationInfo", "properties": { - "severity": { - "enumDescriptions": [ - "(0) The log entry has no assigned severity level.", - "(100) Debug or trace information.", - "(200) Routine information, such as ongoing status or performance.", - "(300) Normal but significant events, such as start up, shut down, or\na configuration change.", - "(400) Warning events might cause problems.", - "(500) Error events are likely to cause problems.", - "(600) Critical events cause more severe problems or outages.", - "(700) A person must take an action immediately.", - "(800) One or more systems are unusable." - ], - "enum": [ - "DEFAULT", - "DEBUG", - "INFO", - "NOTICE", - "WARNING", - "ERROR", - "CRITICAL", - "ALERT", - "EMERGENCY" - ], - "description": "The severity of the log entry. The default value is\n`LogSeverity.DEFAULT`.", + "authoritySelector": { + "description": "The authority selector specified by the requestor, if any.\nIt is not guaranteed that the principal was allowed to use this authority.", "type": "string" }, - "name": { - "description": "Required. The log to which this log entry belongs. Examples: `\"syslog\"`,\n`\"book_log\"`.", + "principalEmail": { + "description": "The email address of the authenticated user (or service account on behalf\nof third party principal) making the request. For privacy reasons, the\nprincipal email address is redacted for all read-only operations that fail\nwith a \"permission denied\" error.", "type": "string" }, - "insertId": { - "description": "A unique ID for the log entry used for deduplication. If omitted,\nthe implementation will generate one based on operation_id.", - "type": "string" - }, - "structPayload": { + "thirdPartyPrincipal": { "additionalProperties": { "description": "Properties of the object.", "type": "any" }, - "description": "The log entry payload, represented as a structure that\nis expressed as a JSON object.", - "type": "object" - }, - "textPayload": { - "description": "The log entry payload, represented as a Unicode string (UTF-8).", - "type": "string" - }, - "protoPayload": { - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - }, - "description": "The log entry payload, represented as a protocol buffer that is\nexpressed as a JSON object. The only accepted type currently is\nAuditLog.", - "type": "object" - }, - "timestamp": { - "description": "The time the event described by the log entry occurred. If\nomitted, defaults to operation start time.", - "format": "google-datetime", - "type": "string" - }, - "labels": { - "additionalProperties": { - "type": "string" - }, - "description": "A set of user-defined (key, value) data that provides additional\ninformation about the log entry.", + "description": "The third party identification (if any) of the authenticated user making\nthe request.\nWhen the JSON object represented here has a proto equivalent, the proto\nname will be indicated in the `@type` property.", "type": "object" } }, - "id": "LogEntry", - "description": "An individual log entry.", - "type": "object" - }, - "MetricValue": { - "description": "Represents a single metric value.", - "type": "object", - "properties": { - "labels": { - "additionalProperties": { - "type": "string" - }, - "description": "The labels describing the metric value.\nSee comments on google.api.servicecontrol.v1.Operation.labels for\nthe overriding relationship.", - "type": "object" - }, - "stringValue": { - "description": "A text string value.", - "type": "string" - }, - "doubleValue": { - "description": "A double precision floating point value.", - "format": "double", - "type": "number" - }, - "int64Value": { - "description": "A signed 64-bit integer value.", - "format": "int64", - "type": "string" - }, - "distributionValue": { - "description": "A distribution value.", - "$ref": "Distribution" - }, - "boolValue": { - "description": "A boolean value.", - "type": "boolean" - }, - "endTime": { - "description": "The end of the time period over which this metric value's measurement\napplies.", - "format": "google-datetime", - "type": "string" - }, - "startTime": { - "description": "The start of the time period over which this metric value's measurement\napplies. The time period has different semantics for different metric\ntypes (cumulative, delta, and gauge). See the metric definition\ndocumentation in the service configuration for details.", - "format": "google-datetime", - "type": "string" - }, - "moneyValue": { - "$ref": "Money", - "description": "A money value." - } - }, - "id": "MetricValue" - }, - "Money": { - "description": "Represents an amount of money with its currency type.", - "type": "object", - "properties": { - "currencyCode": { - "description": "The 3-letter currency code defined in ISO 4217.", - "type": "string" - }, - "nanos": { - "description": "Number of nano (10^-9) units of the amount.\nThe value must be between -999,999,999 and +999,999,999 inclusive.\nIf `units` is positive, `nanos` must be positive or zero.\nIf `units` is zero, `nanos` can be positive, zero, or negative.\nIf `units` is negative, `nanos` must be negative or zero.\nFor example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.", - "format": "int32", - "type": "integer" - }, - "units": { - "description": "The whole units of the amount.\nFor example if `currencyCode` is `\"USD\"`, then 1 unit is one US dollar.", - "format": "int64", - "type": "string" - } - }, - "id": "Money" - }, - "EndReconciliationResponse": { - "properties": { - "quotaMetrics": { - "description": "Metric values as tracked by One Platform before the adjustment was made.\nThe following metrics will be included:\n\n1. Per quota metric total usage will be specified using the following gauge\nmetric:\n \"serviceruntime.googleapis.com/allocation/consumer/quota_used_count\"\n\n2. Value for each quota limit associated with the metrics will be specified\nusing the following gauge metric:\n \"serviceruntime.googleapis.com/quota/limit\"\n\n3. Delta value of the usage after the reconciliation for limits associated\nwith the metrics will be specified using the following metric:\n \"serviceruntime.googleapis.com/allocation/reconciliation_delta\"\nThe delta value is defined as:\n new_usage_from_client - existing_value_in_spanner.\nThis metric is not defined in serviceruntime.yaml or in Cloud Monarch.\nThis metric is meant for callers' use only. Since this metric is not\ndefined in the monitoring backend, reporting on this metric will result in\nan error.", - "type": "array", - "items": { - "$ref": "MetricValueSet" - } - }, - "operationId": { - "description": "The same operation_id value used in the EndReconciliationRequest. Used for\nlogging and diagnostics purposes.", - "type": "string" - }, - "reconciliationErrors": { - "description": "Indicates the decision of the reconciliation end.", - "type": "array", - "items": { - "$ref": "QuotaError" - } - }, - "serviceConfigId": { - "description": "ID of the actual config used to process the request.", - "type": "string" - } - }, - "id": "EndReconciliationResponse", - "description": "Response message for QuotaController.EndReconciliation.", - "type": "object" - }, - "ExplicitBuckets": { - "properties": { - "bounds": { - "description": "'bound' is a list of strictly increasing boundaries between\nbuckets. Note that a list of length N-1 defines N buckets because\nof fenceposting. See comments on `bucket_options` for details.\n\nThe i'th finite bucket covers the interval\n [bound[i-1], bound[i])\nwhere i ranges from 1 to bound_size() - 1. Note that there are no\nfinite buckets at all if 'bound' only contains a single element; in\nthat special case the single bound defines the boundary between the\nunderflow and overflow buckets.\n\nbucket number lower bound upper bound\n i == 0 (underflow) -inf bound[i]\n 0 \u003c i \u003c bound_size() bound[i-1] bound[i]\n i == bound_size() (overflow) bound[i-1] +inf", - "type": "array", - "items": { - "format": "double", - "type": "number" - } - } - }, - "id": "ExplicitBuckets", - "description": "Describing buckets with arbitrary user-provided width.", - "type": "object" - }, - "Distribution": { - "description": "Distribution represents a frequency distribution of double-valued sample\npoints. It contains the size of the population of sample points plus\nadditional optional information:\n\n - the arithmetic mean of the samples\n - the minimum and maximum of the samples\n - the sum-squared-deviation of the samples, used to compute variance\n - a histogram of the values of the sample points", - "type": "object", - "properties": { - "count": { - "description": "The total number of samples in the distribution. Must be \u003e= 0.", - "format": "int64", - "type": "string" - }, - "mean": { - "description": "The arithmetic mean of the samples in the distribution. If `count` is\nzero then this field must be zero.", - "format": "double", - "type": "number" - }, - "bucketCounts": { - "description": "The number of samples in each histogram bucket. `bucket_counts` are\noptional. If present, they must sum to the `count` value.\n\nThe buckets are defined below in `bucket_option`. There are N buckets.\n`bucket_counts[0]` is the number of samples in the underflow bucket.\n`bucket_counts[1]` to `bucket_counts[N-1]` are the numbers of samples\nin each of the finite buckets. And `bucket_counts[N] is the number\nof samples in the overflow bucket. See the comments of `bucket_option`\nbelow for more details.\n\nAny suffix of trailing zeros may be omitted.", - "type": "array", - "items": { - "format": "int64", - "type": "string" - } - }, - "explicitBuckets": { - "description": "Buckets with arbitrary user-provided width.", - "$ref": "ExplicitBuckets" - }, - "maximum": { - "description": "The maximum of the population of values. Ignored if `count` is zero.", - "format": "double", - "type": "number" - }, - "sumOfSquaredDeviation": { - "description": "The sum of squared deviations from the mean:\n Sum[i=1..count]((x_i - mean)^2)\nwhere each x_i is a sample values. If `count` is zero then this field\nmust be zero, otherwise validation of the request fails.", - "format": "double", - "type": "number" - }, - "exponentialBuckets": { - "$ref": "ExponentialBuckets", - "description": "Buckets with exponentially growing width." - }, - "linearBuckets": { - "description": "Buckets with constant width.", - "$ref": "LinearBuckets" - }, - "minimum": { - "description": "The minimum of the population of values. Ignored if `count` is zero.", - "format": "double", - "type": "number" - } - }, - "id": "Distribution" - }, - "ExponentialBuckets": { - "properties": { - "scale": { - "description": "The i'th exponential bucket covers the interval\n [scale * growth_factor^(i-1), scale * growth_factor^i)\nwhere i ranges from 1 to num_finite_buckets inclusive.\nMust be \u003e 0.", - "format": "double", - "type": "number" - }, - "numFiniteBuckets": { - "description": "The number of finite buckets. With the underflow and overflow buckets,\nthe total number of buckets is `num_finite_buckets` + 2.\nSee comments on `bucket_options` for details.", - "format": "int32", - "type": "integer" - }, - "growthFactor": { - "description": "The i'th exponential bucket covers the interval\n [scale * growth_factor^(i-1), scale * growth_factor^i)\nwhere i ranges from 1 to num_finite_buckets inclusive.\nMust be larger than 1.0.", - "format": "double", - "type": "number" - } - }, - "id": "ExponentialBuckets", - "description": "Describing buckets with exponentially growing width.", "type": "object" }, "AuthorizationInfo": { "description": "Authorization information for the operation.", - "type": "object", + "id": "AuthorizationInfo", "properties": { "granted": { "description": "Whether or not authorization for `resource` and `permission`\nwas granted.", @@ -735,342 +470,14 @@ "type": "string" } }, - "id": "AuthorizationInfo" - }, - "ResourceInfo": { - "description": "Describes a resource associated with this operation.", - "type": "object", - "properties": { - "resourceName": { - "description": "Name of the resource. This is used for auditing purposes.", - "type": "string" - }, - "resourceContainer": { - "description": "The identifier of the parent of this resource instance.\nMust be in one of the following formats:\n - “projects/\u003cproject-id or project-number\u003e”\n - “folders/\u003cfolder-id\u003e”\n - “organizations/\u003corganization-id\u003e”", - "type": "string" - } - }, - "id": "ResourceInfo" - }, - "StartReconciliationResponse": { - "description": "Response message for QuotaController.StartReconciliation.", - "type": "object", - "properties": { - "quotaMetrics": { - "description": "Metric values as tracked by One Platform before the start of\nreconciliation. The following metrics will be included:\n\n1. Per quota metric total usage will be specified using the following gauge\nmetric:\n \"serviceruntime.googleapis.com/allocation/consumer/quota_used_count\"\n\n2. Value for each quota limit associated with the metrics will be specified\nusing the following gauge metric:\n \"serviceruntime.googleapis.com/quota/limit\"", - "type": "array", - "items": { - "$ref": "MetricValueSet" - } - }, - "operationId": { - "description": "The same operation_id value used in the StartReconciliationRequest. Used\nfor logging and diagnostics purposes.", - "type": "string" - }, - "reconciliationErrors": { - "description": "Indicates the decision of the reconciliation start.", - "type": "array", - "items": { - "$ref": "QuotaError" - } - }, - "serviceConfigId": { - "description": "ID of the actual config used to process the request.", - "type": "string" - } - }, - "id": "StartReconciliationResponse" - }, - "QuotaProperties": { - "description": "Represents the properties needed for quota operations.", - "type": "object", - "properties": { - "quotaMode": { - "description": "Quota mode for this operation.", - "type": "string", - "enumDescriptions": [ - "Decreases available quota by the cost specified for the operation.\nIf cost is higher than available quota, operation fails and returns\nerror.", - "Decreases available quota by the cost specified for the operation.\nIf cost is higher than available quota, operation does not fail and\navailable quota goes down to zero but it returns error.", - "Does not change any available quota. Only checks if there is enough\nquota.\nNo lock is placed on the checked tokens neither.", - "Increases available quota by the operation cost specified for the\noperation." - ], - "enum": [ - "ACQUIRE", - "ACQUIRE_BEST_EFFORT", - "CHECK", - "RELEASE" - ] - } - }, - "id": "QuotaProperties" - }, - "LinearBuckets": { - "description": "Describing buckets with constant width.", - "type": "object", - "properties": { - "width": { - "description": "The i'th linear bucket covers the interval\n [offset + (i-1) * width, offset + i * width)\nwhere i ranges from 1 to num_finite_buckets, inclusive.\nMust be strictly positive.", - "format": "double", - "type": "number" - }, - "offset": { - "description": "The i'th linear bucket covers the interval\n [offset + (i-1) * width, offset + i * width)\nwhere i ranges from 1 to num_finite_buckets, inclusive.", - "format": "double", - "type": "number" - }, - "numFiniteBuckets": { - "description": "The number of finite buckets. With the underflow and overflow buckets,\nthe total number of buckets is `num_finite_buckets` + 2.\nSee comments on `bucket_options` for details.", - "format": "int32", - "type": "integer" - } - }, - "id": "LinearBuckets" - }, - "AuthenticationInfo": { - "description": "Authentication information for the operation.", - "type": "object", - "properties": { - "principalEmail": { - "description": "The email address of the authenticated user (or service account on behalf\nof third party principal) making the request. For privacy reasons, the\nprincipal email address is redacted for all read-only operations that fail\nwith a \"permission denied\" error.", - "type": "string" - }, - "authoritySelector": { - "description": "The authority selector specified by the requestor, if any.\nIt is not guaranteed that the principal was allowed to use this authority.", - "type": "string" - }, - "thirdPartyPrincipal": { - "description": "The third party identification (if any) of the authenticated user making\nthe request.\nWhen the JSON object represented here has a proto equivalent, the proto\nname will be indicated in the `@type` property.", - "type": "object", - "additionalProperties": { - "description": "Properties of the object.", - "type": "any" - } - } - }, - "id": "AuthenticationInfo" - }, - "AllocateQuotaResponse": { - "properties": { - "operationId": { - "description": "The same operation_id value used in the AllocateQuotaRequest. Used for\nlogging and diagnostics purposes.", - "type": "string" - }, - "serviceConfigId": { - "description": "ID of the actual config used to process the request.", - "type": "string" - }, - "allocateInfo": { - "$ref": "AllocateInfo", - "description": "WARNING: DO NOT use this field until this warning message is removed." - }, - "allocateErrors": { - "description": "Indicates the decision of the allocate.", - "type": "array", - "items": { - "$ref": "QuotaError" - } - }, - "quotaMetrics": { - "description": "Quota metrics to indicate the result of allocation. Depending on the\nrequest, one or more of the following metrics will be included:\n\n1. Per quota group or per quota metric incremental usage will be specified\nusing the following delta metric :\n \"serviceruntime.googleapis.com/api/consumer/quota_used_count\"\n\n2. The quota limit reached condition will be specified using the following\nboolean metric :\n \"serviceruntime.googleapis.com/quota/exceeded\"", - "type": "array", - "items": { - "$ref": "MetricValueSet" - } - } - }, - "id": "AllocateQuotaResponse", - "description": "Response message for the AllocateQuota method.", "type": "object" }, - "ReleaseQuotaRequest": { - "description": "Request message for the ReleaseQuota method.", - "type": "object", - "properties": { - "releaseOperation": { - "$ref": "QuotaOperation", - "description": "Operation that describes the quota release." - }, - "serviceConfigId": { - "description": "Specifies which version of service configuration should be used to process\nthe request. If unspecified or no matching version can be found, the latest\none will be used.", - "type": "string" - } - }, - "id": "ReleaseQuotaRequest" - }, - "QuotaError": { - "description": "Represents error information for QuotaOperation.", - "type": "object", - "properties": { - "subject": { - "description": "Subject to whom this error applies. See the specific enum for more details\non this field. For example, \"clientip:\u003cip address of client\u003e\" or\n\"project:\u003cGoogle developer project id\u003e\".", - "type": "string" - }, - "description": { - "description": "Free-form text that provides details on the cause of the error.", - "type": "string" - }, - "code": { - "description": "Error code.", - "type": "string", - "enumDescriptions": [ - "This is never used.", - "Quota allocation failed.\nSame as google.rpc.Code.RESOURCE_EXHAUSTED.", - "Quota release failed. This error is ONLY returned on a NORMAL release.\nMore formally: if a user requests a release of 10 tokens, but only\n5 tokens were previously allocated, in a BEST_EFFORT release, this will\nbe considered a success, 5 tokens will be released, and the result will\nbe \"Ok\". If this is done in NORMAL mode, no tokens will be released,\nand an OUT_OF_RANGE error will be returned.\nSame as google.rpc.Code.OUT_OF_RANGE.", - "Consumer cannot access the service because the service requires active\nbilling.", - "Consumer's project has been marked as deleted (soft deletion).", - "Specified API key is invalid.", - "Specified API Key has expired.", - "Consumer's spatula header is invalid.", - "The consumer's LOAS role is invalid.", - "The consumer's LOAS role has no associated project.", - "The backend server for looking up project id/number is unavailable.", - "The backend server for checking service status is unavailable.", - "The backend server for checking billing status is unavailable.", - "The backend server for checking quota limits is unavailable." - ], - "enum": [ - "UNSPECIFIED", - "RESOURCE_EXHAUSTED", - "OUT_OF_RANGE", - "BILLING_NOT_ACTIVE", - "PROJECT_DELETED", - "API_KEY_INVALID", - "API_KEY_EXPIRED", - "SPATULA_HEADER_INVALID", - "LOAS_ROLE_INVALID", - "NO_LOAS_PROJECT", - "PROJECT_STATUS_UNAVAILABLE", - "SERVICE_STATUS_UNAVAILABLE", - "BILLING_STATUS_UNAVAILABLE", - "QUOTA_SYSTEM_UNAVAILABLE" - ] - } - }, - "id": "QuotaError" - }, - "RequestMetadata": { - "description": "Metadata about the request.", - "type": "object", - "properties": { - "callerNetwork": { - "description": "The network of the caller.\nSet only if the network host project is part of the same GCP organization\n(or project) as the accessed resource.\nSee https://cloud.google.com/compute/docs/vpc/ for more information.\nThis is a scheme-less URI full resource name. For example:\n\n \"//compute.googleapis.com/projects/PROJECT_ID/global/networks/NETWORK_ID\"", - "type": "string" - }, - "callerIp": { - "description": "The IP address of the caller.\nFor caller from internet, this will be public IPv4 or IPv6 address.\nFor caller from a Compute Engine VM with external IP address, this\nwill be the VM's external IP address. For caller from a Compute\nEngine VM without external IP address, if the VM is in the same\norganization (or project) as the accessed resource, `caller_ip` will\nbe the VM's internal IPv4 address, otherwise the `caller_ip` will be\nredacted to \"gce-internal-ip\".\nSee https://cloud.google.com/compute/docs/vpc/ for more information.", - "type": "string" - }, - "callerSuppliedUserAgent": { - "description": "The user agent of the caller.\nThis information is not authenticated and should be treated accordingly.\nFor example:\n\n+ `google-api-python-client/1.4.0`:\n The request was made by the Google API client for Python.\n+ `Cloud SDK Command Line Tool apitools-client/1.0 gcloud/0.9.62`:\n The request was made by the Google Cloud SDK CLI (gcloud).\n+ `AppEngine-Google; (+http://code.google.com/appengine; appid: s~my-project`:\n The request was made from the `my-project` App Engine app.\nNOLINT", - "type": "string" - } - }, - "id": "RequestMetadata" - }, - "CheckInfo": { - "properties": { - "unusedArguments": { - "description": "A list of fields and label keys that are ignored by the server.\nThe client doesn't need to send them for following requests to improve\nperformance and allow better aggregation.", - "type": "array", - "items": { - "type": "string" - } - }, - "consumerInfo": { - "$ref": "ConsumerInfo", - "description": "Consumer info of this check." - } - }, - "id": "CheckInfo", - "description": "Contains additional information about the check operation.", - "type": "object" - }, - "ReleaseQuotaResponse": { - "description": "Response message for the ReleaseQuota method.", - "type": "object", - "properties": { - "quotaMetrics": { - "description": "Quota metrics to indicate the result of release. Depending on the\nrequest, one or more of the following metrics will be included:\n\n1. For rate quota, per quota group or per quota metric released amount\nwill be specified using the following delta metric:\n \"serviceruntime.googleapis.com/api/consumer/quota_refund_count\"\n\n2. For allocation quota, per quota metric total usage will be specified\nusing the following gauge metric:\n \"serviceruntime.googleapis.com/allocation/consumer/quota_used_count\"\n\n3. For allocation quota, value for each quota limit associated with\nthe metrics will be specified using the following gauge metric:\n \"serviceruntime.googleapis.com/quota/limit\"", - "type": "array", - "items": { - "$ref": "MetricValueSet" - } - }, - "operationId": { - "description": "The same operation_id value used in the ReleaseQuotaRequest. Used for\nlogging and diagnostics purposes.", - "type": "string" - }, - "serviceConfigId": { - "description": "ID of the actual config used to process the request.", - "type": "string" - }, - "releaseErrors": { - "description": "Indicates the decision of the release.", - "type": "array", - "items": { - "$ref": "QuotaError" - } - } - }, - "id": "ReleaseQuotaResponse" - }, - "AllocateQuotaRequest": { - "properties": { - "serviceConfigId": { - "description": "Specifies which version of service configuration should be used to process\nthe request. If unspecified or no matching version can be found, the latest\none will be used.", - "type": "string" - }, - "allocateOperation": { - "description": "Operation that describes the quota allocation.", - "$ref": "QuotaOperation" - } - }, - "id": "AllocateQuotaRequest", - "description": "Request message for the AllocateQuota method.", - "type": "object" - }, - "MetricValueSet": { - "properties": { - "metricName": { - "description": "The metric name defined in the service configuration.", - "type": "string" - }, - "metricValues": { - "description": "The values in this metric.", - "type": "array", - "items": { - "$ref": "MetricValue" - } - } - }, - "id": "MetricValueSet", - "description": "Represents a set of metric values in the same metric.\nEach metric value in the set should have a unique combination of start time,\nend time, and label values.", - "type": "object" - }, - "ReportError": { - "description": "Represents the processing error of one Operation in the request.", - "type": "object", - "properties": { - "status": { - "$ref": "Status", - "description": "Details of the error when processing the Operation." - }, - "operationId": { - "description": "The Operation.operation_id value from the request.", - "type": "string" - } - }, - "id": "ReportError" - }, "CheckError": { "description": "Defines the errors to be returned in\ngoogle.api.servicecontrol.v1.CheckResponse.check_errors.", - "type": "object", + "id": "CheckError", "properties": { - "subject": { - "description": "Subject to whom this error applies. See the specific code enum for more\ndetails on this field. For example:\n - “project:\u003cproject-id or project-number\u003e”\n - “folder:\u003cfolder-id\u003e”\n - “organization:\u003corganization-id\u003e”", - "type": "string" - }, "code": { + "description": "The error code.", "enum": [ "ERROR_CODE_UNSPECIFIED", "NOT_FOUND", @@ -1097,6 +504,7 @@ "NO_LOAS_PROJECT", "LOAS_PROJECT_DISABLED", "SECURITY_POLICY_VIOLATED", + "INVALID_CREDENTIAL", "NAMESPACE_LOOKUP_UNAVAILABLE", "SERVICE_STATUS_UNAVAILABLE", "BILLING_STATUS_UNAVAILABLE", @@ -1105,8 +513,6 @@ "CLOUD_RESOURCE_MANAGER_BACKEND_UNAVAILABLE", "SECURITY_POLICY_BACKEND_UNAVAILABLE" ], - "description": "The error code.", - "type": "string", "enumDescriptions": [ "This is never used in `CheckResponse`.", "The consumer's project id, network container, or resource container was\nnot found. Same as google.rpc.Code.NOT_FOUND.", @@ -1133,6 +539,7 @@ "The consumer's LOAS role has no associated project.", "The consumer's LOAS project is not `ACTIVE` in LoquatV2.", "Request is not allowed as per security policies defined in Org Policy.", + "The credential in the request can not be verified.", "The backend server for looking up project id/number is unavailable.", "The backend server for checking service status is unavailable.", "The backend server for checking billing status is unavailable.", @@ -1140,77 +547,42 @@ "The Spanner for looking up LOAS project is unavailable.", "Cloud Resource Manager backend server is unavailable.", "Backend server for evaluating security policy is unavailable." - ] + ], + "type": "string" }, "detail": { "description": "Free-form text providing details on the error cause of the error.", "type": "string" - } - }, - "id": "CheckError" - }, - "StartReconciliationRequest": { - "properties": { - "reconciliationOperation": { - "description": "Operation that describes the quota reconciliation.", - "$ref": "QuotaOperation" }, - "serviceConfigId": { - "description": "Specifies which version of service configuration should be used to process\nthe request. If unspecified or no matching version can be found, the latest\none will be used.", + "subject": { + "description": "Subject to whom this error applies. See the specific code enum for more\ndetails on this field. For example:\n - “project:\u003cproject-id or project-number\u003e”\n - “folder:\u003cfolder-id\u003e”\n - “organization:\u003corganization-id\u003e”", "type": "string" } }, - "id": "StartReconciliationRequest", - "description": "Request message for QuotaController.StartReconciliation.", "type": "object" }, - "QuotaInfo": { - "description": "Contains the quota information for a quota check response.", - "type": "object", + "CheckInfo": { + "description": "Contains additional information about the check operation.", + "id": "CheckInfo", "properties": { - "limitExceeded": { - "description": "Quota Metrics that have exceeded quota limits.\nFor QuotaGroup-based quota, this is QuotaGroup.name\nFor QuotaLimit-based quota, this is QuotaLimit.name\nSee: google.api.Quota\nDeprecated: Use quota_metrics to get per quota group limit exceeded status.", - "type": "array", + "consumerInfo": { + "$ref": "ConsumerInfo", + "description": "Consumer info of this check." + }, + "unusedArguments": { + "description": "A list of fields and label keys that are ignored by the server.\nThe client doesn't need to send them for following requests to improve\nperformance and allow better aggregation.", "items": { "type": "string" - } - }, - "quotaConsumed": { - "additionalProperties": { - "format": "int32", - "type": "integer" }, - "description": "Map of quota group name to the actual number of tokens consumed. If the\nquota check was not successful, then this will not be populated due to no\nquota consumption.\n\nWe are not merging this field with 'quota_metrics' field because of the\ncomplexity of scaling in Chemist client code base. For simplicity, we will\nkeep this field for Castor (that scales quota usage) and 'quota_metrics'\nfor SuperQuota (that doesn't scale quota usage).\n", - "type": "object" - }, - "quotaMetrics": { - "description": "Quota metrics to indicate the usage. Depending on the check request, one or\nmore of the following metrics will be included:\n\n1. For rate quota, per quota group or per quota metric incremental usage\nwill be specified using the following delta metric:\n \"serviceruntime.googleapis.com/api/consumer/quota_used_count\"\n\n2. For allocation quota, per quota metric total usage will be specified\nusing the following gauge metric:\n \"serviceruntime.googleapis.com/allocation/consumer/quota_used_count\"\n\n3. For both rate quota and allocation quota, the quota limit reached\ncondition will be specified using the following boolean metric:\n \"serviceruntime.googleapis.com/quota/exceeded\"", - "type": "array", - "items": { - "$ref": "MetricValueSet" - } + "type": "array" } }, - "id": "QuotaInfo" - }, - "ConsumerInfo": { - "description": "`ConsumerInfo` provides information about the consumer project.", - "type": "object", - "properties": { - "projectNumber": { - "description": "The Google cloud project number, e.g. 1234567890. A value of 0 indicates\nno project number is found.", - "format": "int64", - "type": "string" - } - }, - "id": "ConsumerInfo" + "type": "object" }, "CheckRequest": { + "description": "Request message for the Check method.", + "id": "CheckRequest", "properties": { - "skipActivationCheck": { - "description": "Indicates if service activation check should be skipped for this request.\nDefault behavior is to perform the check and apply relevant quota.", - "type": "boolean" - }, "operation": { "$ref": "Operation", "description": "The operation to be checked." @@ -1222,64 +594,111 @@ "serviceConfigId": { "description": "Specifies which version of service configuration should be used to process\nthe request.\n\nIf unspecified or no matching version can be found, the\nlatest one will be used.", "type": "string" + }, + "skipActivationCheck": { + "description": "Indicates if service activation check should be skipped for this request.\nDefault behavior is to perform the check and apply relevant quota.", + "type": "boolean" } }, - "id": "CheckRequest", - "description": "Request message for the Check method.", "type": "object" }, - "QuotaOperation": { + "CheckResponse": { + "description": "Response message for the Check method.", + "id": "CheckResponse", "properties": { - "quotaMetrics": { - "description": "Represents information about this operation. Each MetricValueSet\ncorresponds to a metric defined in the service configuration.\nThe data type used in the MetricValueSet must agree with\nthe data type specified in the metric definition.\n\nWithin a single operation, it is not allowed to have more than one\nMetricValue instances that have the same metric names and identical\nlabel value combinations. If a request has such duplicated MetricValue\ninstances, the entire request is rejected with\nan invalid argument error.\n\nThis field is mutually exclusive with method_name.", - "type": "array", + "checkErrors": { + "description": "Indicate the decision of the check.\n\nIf no check errors are present, the service should process the operation.\nOtherwise the service should use the list of errors to determine the\nappropriate action.", "items": { - "$ref": "MetricValueSet" - } - }, - "labels": { - "additionalProperties": { - "type": "string" + "$ref": "CheckError" }, - "description": "Labels describing the operation.", - "type": "object" + "type": "array" }, - "consumerId": { - "description": "Identity of the consumer for whom this quota operation is being performed.\n\nThis can be in one of the following formats:\n project:\u003cproject_id\u003e,\n project_number:\u003cproject_number\u003e,\n api_key:\u003capi_key\u003e.", - "type": "string" + "checkInfo": { + "$ref": "CheckInfo", + "description": "Feedback data returned from the server during processing a Check request." }, "operationId": { - "description": "Identity of the operation. This is expected to be unique within the scope\nof the service that generated the operation, and guarantees idempotency in\ncase of retries.\n\nUUID version 4 is recommended, though not required. In scenarios where an\noperation is computed from existing information and an idempotent id is\ndesirable for deduplication purpose, UUID version 5 is recommended. See\nRFC 4122 for details.", + "description": "The same operation_id value used in the CheckRequest.\nUsed for logging and diagnostics purposes.", "type": "string" }, - "quotaMode": { - "enumDescriptions": [ - "Guard against implicit default. Must not be used.", - "For AllocateQuota request, allocates quota for the amount specified in\nthe service configuration or specified using the quota metrics. If the\namount is higher than the available quota, allocation error will be\nreturned and no quota will be allocated.", - "The operation allocates quota for the amount specified in the service\nconfiguration or specified using the quota metrics. If the amount is\nhigher than the available quota, request does not fail but all available\nquota will be allocated.", - "For AllocateQuota request, only checks if there is enough quota\navailable and does not change the available quota. No lock is placed on\nthe available quota either." - ], - "enum": [ - "UNSPECIFIED", - "NORMAL", - "BEST_EFFORT", - "CHECK_ONLY" - ], - "description": "Quota mode for this operation.", - "type": "string" + "quotaInfo": { + "$ref": "QuotaInfo", + "description": "Quota information for the check request associated with this response.\n" }, - "methodName": { - "description": "Fully qualified name of the API method for which this quota operation is\nrequested. This name is used for matching quota rules or metric rules and\nbilling status rules defined in service configuration.\n\nThis field should not be set if any of the following is true:\n(1) the quota operation is performed on non-API resources.\n(2) quota_metrics is set because the caller is doing quota override.\n\nExample of an RPC method name:\n google.example.library.v1.LibraryService.CreateShelf", + "serviceConfigId": { + "description": "The actual config id used to process the request.", "type": "string" } }, - "id": "QuotaOperation", - "description": "Represents information regarding a quota operation.", + "type": "object" + }, + "ConsumerInfo": { + "description": "`ConsumerInfo` provides information about the consumer project.", + "id": "ConsumerInfo", + "properties": { + "projectNumber": { + "description": "The Google cloud project number, e.g. 1234567890. A value of 0 indicates\nno project number is found.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "Distribution": { + "description": "Distribution represents a frequency distribution of double-valued sample\npoints. It contains the size of the population of sample points plus\nadditional optional information:\n\n - the arithmetic mean of the samples\n - the minimum and maximum of the samples\n - the sum-squared-deviation of the samples, used to compute variance\n - a histogram of the values of the sample points", + "id": "Distribution", + "properties": { + "bucketCounts": { + "description": "The number of samples in each histogram bucket. `bucket_counts` are\noptional. If present, they must sum to the `count` value.\n\nThe buckets are defined below in `bucket_option`. There are N buckets.\n`bucket_counts[0]` is the number of samples in the underflow bucket.\n`bucket_counts[1]` to `bucket_counts[N-1]` are the numbers of samples\nin each of the finite buckets. And `bucket_counts[N] is the number\nof samples in the overflow bucket. See the comments of `bucket_option`\nbelow for more details.\n\nAny suffix of trailing zeros may be omitted.", + "items": { + "format": "int64", + "type": "string" + }, + "type": "array" + }, + "count": { + "description": "The total number of samples in the distribution. Must be \u003e= 0.", + "format": "int64", + "type": "string" + }, + "explicitBuckets": { + "$ref": "ExplicitBuckets", + "description": "Buckets with arbitrary user-provided width." + }, + "exponentialBuckets": { + "$ref": "ExponentialBuckets", + "description": "Buckets with exponentially growing width." + }, + "linearBuckets": { + "$ref": "LinearBuckets", + "description": "Buckets with constant width." + }, + "maximum": { + "description": "The maximum of the population of values. Ignored if `count` is zero.", + "format": "double", + "type": "number" + }, + "mean": { + "description": "The arithmetic mean of the samples in the distribution. If `count` is\nzero then this field must be zero.", + "format": "double", + "type": "number" + }, + "minimum": { + "description": "The minimum of the population of values. Ignored if `count` is zero.", + "format": "double", + "type": "number" + }, + "sumOfSquaredDeviation": { + "description": "The sum of squared deviations from the mean:\n Sum[i=1..count]((x_i - mean)^2)\nwhere each x_i is a sample values. If `count` is zero then this field\nmust be zero, otherwise validation of the request fails.", + "format": "double", + "type": "number" + } + }, "type": "object" }, "EndReconciliationRequest": { "description": "Request message for QuotaController.EndReconciliation.", - "type": "object", + "id": "EndReconciliationRequest", "properties": { "reconciliationOperation": { "$ref": "QuotaOperation", @@ -1290,11 +709,558 @@ "type": "string" } }, - "id": "EndReconciliationRequest" + "type": "object" + }, + "EndReconciliationResponse": { + "description": "Response message for QuotaController.EndReconciliation.", + "id": "EndReconciliationResponse", + "properties": { + "operationId": { + "description": "The same operation_id value used in the EndReconciliationRequest. Used for\nlogging and diagnostics purposes.", + "type": "string" + }, + "quotaMetrics": { + "description": "Metric values as tracked by One Platform before the adjustment was made.\nThe following metrics will be included:\n\n1. Per quota metric total usage will be specified using the following gauge\nmetric:\n \"serviceruntime.googleapis.com/allocation/consumer/quota_used_count\"\n\n2. Value for each quota limit associated with the metrics will be specified\nusing the following gauge metric:\n \"serviceruntime.googleapis.com/quota/limit\"\n\n3. Delta value of the usage after the reconciliation for limits associated\nwith the metrics will be specified using the following metric:\n \"serviceruntime.googleapis.com/allocation/reconciliation_delta\"\nThe delta value is defined as:\n new_usage_from_client - existing_value_in_spanner.\nThis metric is not defined in serviceruntime.yaml or in Cloud Monarch.\nThis metric is meant for callers' use only. Since this metric is not\ndefined in the monitoring backend, reporting on this metric will result in\nan error.", + "items": { + "$ref": "MetricValueSet" + }, + "type": "array" + }, + "reconciliationErrors": { + "description": "Indicates the decision of the reconciliation end.", + "items": { + "$ref": "QuotaError" + }, + "type": "array" + }, + "serviceConfigId": { + "description": "ID of the actual config used to process the request.", + "type": "string" + } + }, + "type": "object" + }, + "ExplicitBuckets": { + "description": "Describing buckets with arbitrary user-provided width.", + "id": "ExplicitBuckets", + "properties": { + "bounds": { + "description": "'bound' is a list of strictly increasing boundaries between\nbuckets. Note that a list of length N-1 defines N buckets because\nof fenceposting. See comments on `bucket_options` for details.\n\nThe i'th finite bucket covers the interval\n [bound[i-1], bound[i])\nwhere i ranges from 1 to bound_size() - 1. Note that there are no\nfinite buckets at all if 'bound' only contains a single element; in\nthat special case the single bound defines the boundary between the\nunderflow and overflow buckets.\n\nbucket number lower bound upper bound\n i == 0 (underflow) -inf bound[i]\n 0 \u003c i \u003c bound_size() bound[i-1] bound[i]\n i == bound_size() (overflow) bound[i-1] +inf", + "items": { + "format": "double", + "type": "number" + }, + "type": "array" + } + }, + "type": "object" + }, + "ExponentialBuckets": { + "description": "Describing buckets with exponentially growing width.", + "id": "ExponentialBuckets", + "properties": { + "growthFactor": { + "description": "The i'th exponential bucket covers the interval\n [scale * growth_factor^(i-1), scale * growth_factor^i)\nwhere i ranges from 1 to num_finite_buckets inclusive.\nMust be larger than 1.0.", + "format": "double", + "type": "number" + }, + "numFiniteBuckets": { + "description": "The number of finite buckets. With the underflow and overflow buckets,\nthe total number of buckets is `num_finite_buckets` + 2.\nSee comments on `bucket_options` for details.", + "format": "int32", + "type": "integer" + }, + "scale": { + "description": "The i'th exponential bucket covers the interval\n [scale * growth_factor^(i-1), scale * growth_factor^i)\nwhere i ranges from 1 to num_finite_buckets inclusive.\nMust be \u003e 0.", + "format": "double", + "type": "number" + } + }, + "type": "object" + }, + "LinearBuckets": { + "description": "Describing buckets with constant width.", + "id": "LinearBuckets", + "properties": { + "numFiniteBuckets": { + "description": "The number of finite buckets. With the underflow and overflow buckets,\nthe total number of buckets is `num_finite_buckets` + 2.\nSee comments on `bucket_options` for details.", + "format": "int32", + "type": "integer" + }, + "offset": { + "description": "The i'th linear bucket covers the interval\n [offset + (i-1) * width, offset + i * width)\nwhere i ranges from 1 to num_finite_buckets, inclusive.", + "format": "double", + "type": "number" + }, + "width": { + "description": "The i'th linear bucket covers the interval\n [offset + (i-1) * width, offset + i * width)\nwhere i ranges from 1 to num_finite_buckets, inclusive.\nMust be strictly positive.", + "format": "double", + "type": "number" + } + }, + "type": "object" + }, + "LogEntry": { + "description": "An individual log entry.", + "id": "LogEntry", + "properties": { + "insertId": { + "description": "A unique ID for the log entry used for deduplication. If omitted,\nthe implementation will generate one based on operation_id.", + "type": "string" + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "A set of user-defined (key, value) data that provides additional\ninformation about the log entry.", + "type": "object" + }, + "name": { + "description": "Required. The log to which this log entry belongs. Examples: `\"syslog\"`,\n`\"book_log\"`.", + "type": "string" + }, + "protoPayload": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "description": "The log entry payload, represented as a protocol buffer that is\nexpressed as a JSON object. The only accepted type currently is\nAuditLog.", + "type": "object" + }, + "severity": { + "description": "The severity of the log entry. The default value is\n`LogSeverity.DEFAULT`.", + "enum": [ + "DEFAULT", + "DEBUG", + "INFO", + "NOTICE", + "WARNING", + "ERROR", + "CRITICAL", + "ALERT", + "EMERGENCY" + ], + "enumDescriptions": [ + "(0) The log entry has no assigned severity level.", + "(100) Debug or trace information.", + "(200) Routine information, such as ongoing status or performance.", + "(300) Normal but significant events, such as start up, shut down, or\na configuration change.", + "(400) Warning events might cause problems.", + "(500) Error events are likely to cause problems.", + "(600) Critical events cause more severe problems or outages.", + "(700) A person must take an action immediately.", + "(800) One or more systems are unusable." + ], + "type": "string" + }, + "structPayload": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "description": "The log entry payload, represented as a structure that\nis expressed as a JSON object.", + "type": "object" + }, + "textPayload": { + "description": "The log entry payload, represented as a Unicode string (UTF-8).", + "type": "string" + }, + "timestamp": { + "description": "The time the event described by the log entry occurred. If\nomitted, defaults to operation start time.", + "format": "google-datetime", + "type": "string" + } + }, + "type": "object" + }, + "MetricValue": { + "description": "Represents a single metric value.", + "id": "MetricValue", + "properties": { + "boolValue": { + "description": "A boolean value.", + "type": "boolean" + }, + "distributionValue": { + "$ref": "Distribution", + "description": "A distribution value." + }, + "doubleValue": { + "description": "A double precision floating point value.", + "format": "double", + "type": "number" + }, + "endTime": { + "description": "The end of the time period over which this metric value's measurement\napplies.", + "format": "google-datetime", + "type": "string" + }, + "int64Value": { + "description": "A signed 64-bit integer value.", + "format": "int64", + "type": "string" + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "The labels describing the metric value.\nSee comments on google.api.servicecontrol.v1.Operation.labels for\nthe overriding relationship.", + "type": "object" + }, + "moneyValue": { + "$ref": "Money", + "description": "A money value." + }, + "startTime": { + "description": "The start of the time period over which this metric value's measurement\napplies. The time period has different semantics for different metric\ntypes (cumulative, delta, and gauge). See the metric definition\ndocumentation in the service configuration for details.", + "format": "google-datetime", + "type": "string" + }, + "stringValue": { + "description": "A text string value.", + "type": "string" + } + }, + "type": "object" + }, + "MetricValueSet": { + "description": "Represents a set of metric values in the same metric.\nEach metric value in the set should have a unique combination of start time,\nend time, and label values.", + "id": "MetricValueSet", + "properties": { + "metricName": { + "description": "The metric name defined in the service configuration.", + "type": "string" + }, + "metricValues": { + "description": "The values in this metric.", + "items": { + "$ref": "MetricValue" + }, + "type": "array" + } + }, + "type": "object" + }, + "Money": { + "description": "Represents an amount of money with its currency type.", + "id": "Money", + "properties": { + "currencyCode": { + "description": "The 3-letter currency code defined in ISO 4217.", + "type": "string" + }, + "nanos": { + "description": "Number of nano (10^-9) units of the amount.\nThe value must be between -999,999,999 and +999,999,999 inclusive.\nIf `units` is positive, `nanos` must be positive or zero.\nIf `units` is zero, `nanos` can be positive, zero, or negative.\nIf `units` is negative, `nanos` must be negative or zero.\nFor example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.", + "format": "int32", + "type": "integer" + }, + "units": { + "description": "The whole units of the amount.\nFor example if `currencyCode` is `\"USD\"`, then 1 unit is one US dollar.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "Operation": { + "description": "Represents information regarding an operation.", + "id": "Operation", + "properties": { + "consumerId": { + "description": "Identity of the consumer who is using the service.\nThis field should be filled in for the operations initiated by a\nconsumer, but not for service-initiated operations that are\nnot related to a specific consumer.\n\nThis can be in one of the following formats:\n project:\u003cproject_id\u003e,\n project_number:\u003cproject_number\u003e,\n api_key:\u003capi_key\u003e.", + "type": "string" + }, + "endTime": { + "description": "End time of the operation.\nRequired when the operation is used in ServiceController.Report,\nbut optional when the operation is used in ServiceController.Check.", + "format": "google-datetime", + "type": "string" + }, + "importance": { + "description": "DO NOT USE. This is an experimental field.", + "enum": [ + "LOW", + "HIGH", + "DEBUG" + ], + "enumDescriptions": [ + "The API implementation may cache and aggregate the data.\nThe data may be lost when rare and unexpected system failures occur.", + "The API implementation doesn't cache and aggregate the data.\nIf the method returns successfully, it's guaranteed that the data has\nbeen persisted in durable storage.", + "In addition to the behavior described in HIGH, DEBUG enables\nadditional validation logic that is only useful during the onboarding\nprocess. This is only available to Google internal services and\nthe service must be whitelisted by chemist-dev@google.com in order\nto use this level." + ], + "type": "string" + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Labels describing the operation. Only the following labels are allowed:\n\n- Labels describing monitored resources as defined in\n the service configuration.\n- Default labels of metric values. When specified, labels defined in the\n metric value override these default.\n- The following labels defined by Google Cloud Platform:\n - `cloud.googleapis.com/location` describing the location where the\n operation happened,\n - `servicecontrol.googleapis.com/user_agent` describing the user agent\n of the API request,\n - `servicecontrol.googleapis.com/service_agent` describing the service\n used to handle the API request (e.g. ESP),\n - `servicecontrol.googleapis.com/platform` describing the platform\n where the API is served, such as App Engine, Compute Engine, or\n Kubernetes Engine.", + "type": "object" + }, + "logEntries": { + "description": "Represents information to be logged.", + "items": { + "$ref": "LogEntry" + }, + "type": "array" + }, + "metricValueSets": { + "description": "Represents information about this operation. Each MetricValueSet\ncorresponds to a metric defined in the service configuration.\nThe data type used in the MetricValueSet must agree with\nthe data type specified in the metric definition.\n\nWithin a single operation, it is not allowed to have more than one\nMetricValue instances that have the same metric names and identical\nlabel value combinations. If a request has such duplicated MetricValue\ninstances, the entire request is rejected with\nan invalid argument error.", + "items": { + "$ref": "MetricValueSet" + }, + "type": "array" + }, + "operationId": { + "description": "Identity of the operation. This must be unique within the scope of the\nservice that generated the operation. If the service calls\nCheck() and Report() on the same operation, the two calls should carry\nthe same id.\n\nUUID version 4 is recommended, though not required.\nIn scenarios where an operation is computed from existing information\nand an idempotent id is desirable for deduplication purpose, UUID version 5\nis recommended. See RFC 4122 for details.", + "type": "string" + }, + "operationName": { + "description": "Fully qualified name of the operation. Reserved for future use.", + "type": "string" + }, + "quotaProperties": { + "$ref": "QuotaProperties", + "description": "Represents the properties needed for quota check. Applicable only if this\noperation is for a quota check request. If this is not specified, no quota\ncheck will be performed." + }, + "resourceContainer": { + "description": "DO NOT USE. This field is deprecated, use \"resources\" field instead.\nThe resource name of the parent of a resource in the resource hierarchy.\n\nThis can be in one of the following formats:\n - “projects/\u003cproject-id or project-number\u003e”\n - “folders/\u003cfolder-id\u003e”\n - “organizations/\u003corganization-id\u003e”", + "type": "string" + }, + "resources": { + "description": "The resources that are involved in the operation.", + "items": { + "$ref": "ResourceInfo" + }, + "type": "array" + }, + "startTime": { + "description": "Required. Start time of the operation.", + "format": "google-datetime", + "type": "string" + }, + "userLabels": { + "additionalProperties": { + "type": "string" + }, + "description": "User defined labels for the resource that this operation is associated\nwith. Only a combination of 1000 user labels per consumer project are\nallowed.", + "type": "object" + } + }, + "type": "object" + }, + "QuotaError": { + "description": "Represents error information for QuotaOperation.", + "id": "QuotaError", + "properties": { + "code": { + "description": "Error code.", + "enum": [ + "UNSPECIFIED", + "RESOURCE_EXHAUSTED", + "OUT_OF_RANGE", + "BILLING_NOT_ACTIVE", + "PROJECT_DELETED", + "API_KEY_INVALID", + "API_KEY_EXPIRED", + "SPATULA_HEADER_INVALID", + "LOAS_ROLE_INVALID", + "NO_LOAS_PROJECT", + "PROJECT_STATUS_UNAVAILABLE", + "SERVICE_STATUS_UNAVAILABLE", + "BILLING_STATUS_UNAVAILABLE", + "QUOTA_SYSTEM_UNAVAILABLE" + ], + "enumDescriptions": [ + "This is never used.", + "Quota allocation failed.\nSame as google.rpc.Code.RESOURCE_EXHAUSTED.", + "Quota release failed. This error is ONLY returned on a NORMAL release.\nMore formally: if a user requests a release of 10 tokens, but only\n5 tokens were previously allocated, in a BEST_EFFORT release, this will\nbe considered a success, 5 tokens will be released, and the result will\nbe \"Ok\". If this is done in NORMAL mode, no tokens will be released,\nand an OUT_OF_RANGE error will be returned.\nSame as google.rpc.Code.OUT_OF_RANGE.", + "Consumer cannot access the service because the service requires active\nbilling.", + "Consumer's project has been marked as deleted (soft deletion).", + "Specified API key is invalid.", + "Specified API Key has expired.", + "Consumer's spatula header is invalid.", + "The consumer's LOAS role is invalid.", + "The consumer's LOAS role has no associated project.", + "The backend server for looking up project id/number is unavailable.", + "The backend server for checking service status is unavailable.", + "The backend server for checking billing status is unavailable.", + "The backend server for checking quota limits is unavailable." + ], + "type": "string" + }, + "description": { + "description": "Free-form text that provides details on the cause of the error.", + "type": "string" + }, + "subject": { + "description": "Subject to whom this error applies. See the specific enum for more details\non this field. For example, \"clientip:\u003cip address of client\u003e\" or\n\"project:\u003cGoogle developer project id\u003e\".", + "type": "string" + } + }, + "type": "object" + }, + "QuotaInfo": { + "description": "Contains the quota information for a quota check response.", + "id": "QuotaInfo", + "properties": { + "limitExceeded": { + "description": "Quota Metrics that have exceeded quota limits.\nFor QuotaGroup-based quota, this is QuotaGroup.name\nFor QuotaLimit-based quota, this is QuotaLimit.name\nSee: google.api.Quota\nDeprecated: Use quota_metrics to get per quota group limit exceeded status.", + "items": { + "type": "string" + }, + "type": "array" + }, + "quotaConsumed": { + "additionalProperties": { + "format": "int32", + "type": "integer" + }, + "description": "Map of quota group name to the actual number of tokens consumed. If the\nquota check was not successful, then this will not be populated due to no\nquota consumption.\n\nWe are not merging this field with 'quota_metrics' field because of the\ncomplexity of scaling in Chemist client code base. For simplicity, we will\nkeep this field for Castor (that scales quota usage) and 'quota_metrics'\nfor SuperQuota (that doesn't scale quota usage).\n", + "type": "object" + }, + "quotaMetrics": { + "description": "Quota metrics to indicate the usage. Depending on the check request, one or\nmore of the following metrics will be included:\n\n1. For rate quota, per quota group or per quota metric incremental usage\nwill be specified using the following delta metric:\n \"serviceruntime.googleapis.com/api/consumer/quota_used_count\"\n\n2. For allocation quota, per quota metric total usage will be specified\nusing the following gauge metric:\n \"serviceruntime.googleapis.com/allocation/consumer/quota_used_count\"\n\n3. For both rate quota and allocation quota, the quota limit reached\ncondition will be specified using the following boolean metric:\n \"serviceruntime.googleapis.com/quota/exceeded\"", + "items": { + "$ref": "MetricValueSet" + }, + "type": "array" + } + }, + "type": "object" + }, + "QuotaOperation": { + "description": "Represents information regarding a quota operation.", + "id": "QuotaOperation", + "properties": { + "consumerId": { + "description": "Identity of the consumer for whom this quota operation is being performed.\n\nThis can be in one of the following formats:\n project:\u003cproject_id\u003e,\n project_number:\u003cproject_number\u003e,\n api_key:\u003capi_key\u003e.", + "type": "string" + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Labels describing the operation.", + "type": "object" + }, + "methodName": { + "description": "Fully qualified name of the API method for which this quota operation is\nrequested. This name is used for matching quota rules or metric rules and\nbilling status rules defined in service configuration.\n\nThis field should not be set if any of the following is true:\n(1) the quota operation is performed on non-API resources.\n(2) quota_metrics is set because the caller is doing quota override.\n\nExample of an RPC method name:\n google.example.library.v1.LibraryService.CreateShelf", + "type": "string" + }, + "operationId": { + "description": "Identity of the operation. This is expected to be unique within the scope\nof the service that generated the operation, and guarantees idempotency in\ncase of retries.\n\nUUID version 4 is recommended, though not required. In scenarios where an\noperation is computed from existing information and an idempotent id is\ndesirable for deduplication purpose, UUID version 5 is recommended. See\nRFC 4122 for details.", + "type": "string" + }, + "quotaMetrics": { + "description": "Represents information about this operation. Each MetricValueSet\ncorresponds to a metric defined in the service configuration.\nThe data type used in the MetricValueSet must agree with\nthe data type specified in the metric definition.\n\nWithin a single operation, it is not allowed to have more than one\nMetricValue instances that have the same metric names and identical\nlabel value combinations. If a request has such duplicated MetricValue\ninstances, the entire request is rejected with\nan invalid argument error.\n\nThis field is mutually exclusive with method_name.", + "items": { + "$ref": "MetricValueSet" + }, + "type": "array" + }, + "quotaMode": { + "description": "Quota mode for this operation.", + "enum": [ + "UNSPECIFIED", + "NORMAL", + "BEST_EFFORT", + "CHECK_ONLY" + ], + "enumDescriptions": [ + "Guard against implicit default. Must not be used.", + "For AllocateQuota request, allocates quota for the amount specified in\nthe service configuration or specified using the quota metrics. If the\namount is higher than the available quota, allocation error will be\nreturned and no quota will be allocated.", + "The operation allocates quota for the amount specified in the service\nconfiguration or specified using the quota metrics. If the amount is\nhigher than the available quota, request does not fail but all available\nquota will be allocated.", + "For AllocateQuota request, only checks if there is enough quota\navailable and does not change the available quota. No lock is placed on\nthe available quota either." + ], + "type": "string" + } + }, + "type": "object" + }, + "QuotaProperties": { + "description": "Represents the properties needed for quota operations.", + "id": "QuotaProperties", + "properties": { + "quotaMode": { + "description": "Quota mode for this operation.", + "enum": [ + "ACQUIRE", + "ACQUIRE_BEST_EFFORT", + "CHECK", + "RELEASE" + ], + "enumDescriptions": [ + "Decreases available quota by the cost specified for the operation.\nIf cost is higher than available quota, operation fails and returns\nerror.", + "Decreases available quota by the cost specified for the operation.\nIf cost is higher than available quota, operation does not fail and\navailable quota goes down to zero but it returns error.", + "Does not change any available quota. Only checks if there is enough\nquota.\nNo lock is placed on the checked tokens neither.", + "Increases available quota by the operation cost specified for the\noperation." + ], + "type": "string" + } + }, + "type": "object" + }, + "ReleaseQuotaRequest": { + "description": "Request message for the ReleaseQuota method.", + "id": "ReleaseQuotaRequest", + "properties": { + "releaseOperation": { + "$ref": "QuotaOperation", + "description": "Operation that describes the quota release." + }, + "serviceConfigId": { + "description": "Specifies which version of service configuration should be used to process\nthe request. If unspecified or no matching version can be found, the latest\none will be used.", + "type": "string" + } + }, + "type": "object" + }, + "ReleaseQuotaResponse": { + "description": "Response message for the ReleaseQuota method.", + "id": "ReleaseQuotaResponse", + "properties": { + "operationId": { + "description": "The same operation_id value used in the ReleaseQuotaRequest. Used for\nlogging and diagnostics purposes.", + "type": "string" + }, + "quotaMetrics": { + "description": "Quota metrics to indicate the result of release. Depending on the\nrequest, one or more of the following metrics will be included:\n\n1. For rate quota, per quota group or per quota metric released amount\nwill be specified using the following delta metric:\n \"serviceruntime.googleapis.com/api/consumer/quota_refund_count\"\n\n2. For allocation quota, per quota metric total usage will be specified\nusing the following gauge metric:\n \"serviceruntime.googleapis.com/allocation/consumer/quota_used_count\"\n\n3. For allocation quota, value for each quota limit associated with\nthe metrics will be specified using the following gauge metric:\n \"serviceruntime.googleapis.com/quota/limit\"", + "items": { + "$ref": "MetricValueSet" + }, + "type": "array" + }, + "releaseErrors": { + "description": "Indicates the decision of the release.", + "items": { + "$ref": "QuotaError" + }, + "type": "array" + }, + "serviceConfigId": { + "description": "ID of the actual config used to process the request.", + "type": "string" + } + }, + "type": "object" + }, + "ReportError": { + "description": "Represents the processing error of one Operation in the request.", + "id": "ReportError", + "properties": { + "operationId": { + "description": "The Operation.operation_id value from the request.", + "type": "string" + }, + "status": { + "$ref": "Status", + "description": "Details of the error when processing the Operation." + } + }, + "type": "object" }, "ReportInfo": { "description": "Contains additional info about the report operation.", - "type": "object", + "id": "ReportInfo", "properties": { "operationId": { "description": "The Operation.operation_id value from the request.", @@ -1305,123 +1271,159 @@ "description": "Quota usage info when processing the `Operation`." } }, - "id": "ReportInfo" + "type": "object" }, - "Operation": { - "description": "Represents information regarding an operation.", - "type": "object", + "ReportRequest": { + "description": "Request message for the Report method.", + "id": "ReportRequest", "properties": { - "consumerId": { - "description": "Identity of the consumer who is using the service.\nThis field should be filled in for the operations initiated by a\nconsumer, but not for service-initiated operations that are\nnot related to a specific consumer.\n\nThis can be in one of the following formats:\n project:\u003cproject_id\u003e,\n project_number:\u003cproject_number\u003e,\n api_key:\u003capi_key\u003e.", - "type": "string" - }, - "operationId": { - "description": "Identity of the operation. This must be unique within the scope of the\nservice that generated the operation. If the service calls\nCheck() and Report() on the same operation, the two calls should carry\nthe same id.\n\nUUID version 4 is recommended, though not required.\nIn scenarios where an operation is computed from existing information\nand an idempotent id is desirable for deduplication purpose, UUID version 5\nis recommended. See RFC 4122 for details.", - "type": "string" - }, - "operationName": { - "description": "Fully qualified name of the operation. Reserved for future use.", - "type": "string" - }, - "endTime": { - "description": "End time of the operation.\nRequired when the operation is used in ServiceController.Report,\nbut optional when the operation is used in ServiceController.Check.", - "format": "google-datetime", - "type": "string" - }, - "startTime": { - "description": "Required. Start time of the operation.", - "format": "google-datetime", - "type": "string" - }, - "importance": { - "enumDescriptions": [ - "The API implementation may cache and aggregate the data.\nThe data may be lost when rare and unexpected system failures occur.", - "The API implementation doesn't cache and aggregate the data.\nIf the method returns successfully, it's guaranteed that the data has\nbeen persisted in durable storage.", - "In addition to the behavior described in HIGH, DEBUG enables\nadditional validation logic that is only useful during the onboarding\nprocess. This is only available to Google internal services and\nthe service must be whitelisted by chemist-dev@google.com in order\nto use this level." - ], - "enum": [ - "LOW", - "HIGH", - "DEBUG" - ], - "description": "DO NOT USE. This is an experimental field.", - "type": "string" - }, - "resourceContainer": { - "description": "DO NOT USE. This field is deprecated, use \"resources\" field instead.\nThe resource name of the parent of a resource in the resource hierarchy.\n\nThis can be in one of the following formats:\n - “projects/\u003cproject-id or project-number\u003e”\n - “folders/\u003cfolder-id\u003e”\n - “organizations/\u003corganization-id\u003e”", - "type": "string" - }, - "labels": { - "additionalProperties": { - "type": "string" + "operations": { + "description": "Operations to be reported.\n\nTypically the service should report one operation per request.\nPutting multiple operations into a single request is allowed, but should\nbe used only when multiple operations are natually available at the time\nof the report.\n\nIf multiple operations are in a single request, the total request size\nshould be no larger than 1MB. See ReportResponse.report_errors for\npartial failure behavior.", + "items": { + "$ref": "Operation" }, - "description": "Labels describing the operation. Only the following labels are allowed:\n\n- Labels describing monitored resources as defined in\n the service configuration.\n- Default labels of metric values. When specified, labels defined in the\n metric value override these default.\n- The following labels defined by Google Cloud Platform:\n - `cloud.googleapis.com/location` describing the location where the\n operation happened,\n - `servicecontrol.googleapis.com/user_agent` describing the user agent\n of the API request,\n - `servicecontrol.googleapis.com/service_agent` describing the service\n used to handle the API request (e.g. ESP),\n - `servicecontrol.googleapis.com/platform` describing the platform\n where the API is served (e.g. GAE, GCE, GKE).", - "type": "object" + "type": "array" }, - "resources": { - "description": "The resources that are involved in the operation.", - "type": "array", - "items": { - "$ref": "ResourceInfo" - } - }, - "logEntries": { - "description": "Represents information to be logged.", - "type": "array", - "items": { - "$ref": "LogEntry" - } - }, - "userLabels": { - "additionalProperties": { - "type": "string" - }, - "description": "User defined labels for the resource that this operation is associated\nwith. Only a combination of 1000 user labels per consumer project are\nallowed.", - "type": "object" - }, - "metricValueSets": { - "description": "Represents information about this operation. Each MetricValueSet\ncorresponds to a metric defined in the service configuration.\nThe data type used in the MetricValueSet must agree with\nthe data type specified in the metric definition.\n\nWithin a single operation, it is not allowed to have more than one\nMetricValue instances that have the same metric names and identical\nlabel value combinations. If a request has such duplicated MetricValue\ninstances, the entire request is rejected with\nan invalid argument error.", - "type": "array", - "items": { - "$ref": "MetricValueSet" - } - }, - "quotaProperties": { - "description": "Represents the properties needed for quota check. Applicable only if this\noperation is for a quota check request. If this is not specified, no quota\ncheck will be performed.", - "$ref": "QuotaProperties" + "serviceConfigId": { + "description": "Specifies which version of service config should be used to process the\nrequest.\n\nIf unspecified or no matching version can be found, the\nlatest one will be used.", + "type": "string" } }, - "id": "Operation" + "type": "object" }, "ReportResponse": { "description": "Response message for the Report method.", - "type": "object", + "id": "ReportResponse", "properties": { + "reportErrors": { + "description": "Partial failures, one for each `Operation` in the request that failed\nprocessing. There are three possible combinations of the RPC status:\n\n1. The combination of a successful RPC status and an empty `report_errors`\n list indicates a complete success where all `Operations` in the\n request are processed successfully.\n2. The combination of a successful RPC status and a non-empty\n `report_errors` list indicates a partial success where some\n `Operations` in the request succeeded. Each\n `Operation` that failed processing has a corresponding item\n in this list.\n3. A failed RPC status indicates a general non-deterministic failure.\n When this happens, it's impossible to know which of the\n 'Operations' in the request succeeded or failed.", + "items": { + "$ref": "ReportError" + }, + "type": "array" + }, "reportInfos": { "description": "Quota usage for each quota release `Operation` request.\n\nFully or partially failed quota release request may or may not be present\nin `report_quota_info`. For example, a failed quota release request will\nhave the current quota usage info when precise quota library returns the\ninfo. A deadline exceeded quota request will not have quota usage info.\n\nIf there is no quota release request, report_quota_info will be empty.\n", - "type": "array", "items": { "$ref": "ReportInfo" - } + }, + "type": "array" }, "serviceConfigId": { "description": "The actual config id used to process the request.", "type": "string" - }, - "reportErrors": { - "description": "Partial failures, one for each `Operation` in the request that failed\nprocessing. There are three possible combinations of the RPC status:\n\n1. The combination of a successful RPC status and an empty `report_errors`\n list indicates a complete success where all `Operations` in the\n request are processed successfully.\n2. The combination of a successful RPC status and a non-empty\n `report_errors` list indicates a partial success where some\n `Operations` in the request succeeded. Each\n `Operation` that failed processing has a corresponding item\n in this list.\n3. A failed RPC status indicates a general non-deterministic failure.\n When this happens, it's impossible to know which of the\n 'Operations' in the request succeeded or failed.", - "type": "array", - "items": { - "$ref": "ReportError" - } } }, - "id": "ReportResponse" + "type": "object" + }, + "RequestMetadata": { + "description": "Metadata about the request.", + "id": "RequestMetadata", + "properties": { + "callerIp": { + "description": "The IP address of the caller.\nFor caller from internet, this will be public IPv4 or IPv6 address.\nFor caller from a Compute Engine VM with external IP address, this\nwill be the VM's external IP address. For caller from a Compute\nEngine VM without external IP address, if the VM is in the same\norganization (or project) as the accessed resource, `caller_ip` will\nbe the VM's internal IPv4 address, otherwise the `caller_ip` will be\nredacted to \"gce-internal-ip\".\nSee https://cloud.google.com/compute/docs/vpc/ for more information.", + "type": "string" + }, + "callerNetwork": { + "description": "The network of the caller.\nSet only if the network host project is part of the same GCP organization\n(or project) as the accessed resource.\nSee https://cloud.google.com/compute/docs/vpc/ for more information.\nThis is a scheme-less URI full resource name. For example:\n\n \"//compute.googleapis.com/projects/PROJECT_ID/global/networks/NETWORK_ID\"", + "type": "string" + }, + "callerSuppliedUserAgent": { + "description": "The user agent of the caller.\nThis information is not authenticated and should be treated accordingly.\nFor example:\n\n+ `google-api-python-client/1.4.0`:\n The request was made by the Google API client for Python.\n+ `Cloud SDK Command Line Tool apitools-client/1.0 gcloud/0.9.62`:\n The request was made by the Google Cloud SDK CLI (gcloud).\n+ `AppEngine-Google; (+http://code.google.com/appengine; appid: s~my-project`:\n The request was made from the `my-project` App Engine app.\nNOLINT", + "type": "string" + } + }, + "type": "object" + }, + "ResourceInfo": { + "description": "Describes a resource associated with this operation.", + "id": "ResourceInfo", + "properties": { + "resourceContainer": { + "description": "The identifier of the parent of this resource instance.\nMust be in one of the following formats:\n - “projects/\u003cproject-id or project-number\u003e”\n - “folders/\u003cfolder-id\u003e”\n - “organizations/\u003corganization-id\u003e”", + "type": "string" + }, + "resourceName": { + "description": "Name of the resource. This is used for auditing purposes.", + "type": "string" + } + }, + "type": "object" + }, + "StartReconciliationRequest": { + "description": "Request message for QuotaController.StartReconciliation.", + "id": "StartReconciliationRequest", + "properties": { + "reconciliationOperation": { + "$ref": "QuotaOperation", + "description": "Operation that describes the quota reconciliation." + }, + "serviceConfigId": { + "description": "Specifies which version of service configuration should be used to process\nthe request. If unspecified or no matching version can be found, the latest\none will be used.", + "type": "string" + } + }, + "type": "object" + }, + "StartReconciliationResponse": { + "description": "Response message for QuotaController.StartReconciliation.", + "id": "StartReconciliationResponse", + "properties": { + "operationId": { + "description": "The same operation_id value used in the StartReconciliationRequest. Used\nfor logging and diagnostics purposes.", + "type": "string" + }, + "quotaMetrics": { + "description": "Metric values as tracked by One Platform before the start of\nreconciliation. The following metrics will be included:\n\n1. Per quota metric total usage will be specified using the following gauge\nmetric:\n \"serviceruntime.googleapis.com/allocation/consumer/quota_used_count\"\n\n2. Value for each quota limit associated with the metrics will be specified\nusing the following gauge metric:\n \"serviceruntime.googleapis.com/quota/limit\"", + "items": { + "$ref": "MetricValueSet" + }, + "type": "array" + }, + "reconciliationErrors": { + "description": "Indicates the decision of the reconciliation start.", + "items": { + "$ref": "QuotaError" + }, + "type": "array" + }, + "serviceConfigId": { + "description": "ID of the actual config used to process the request.", + "type": "string" + } + }, + "type": "object" + }, + "Status": { + "description": "The `Status` type defines a logical error model that is suitable for different\nprogramming environments, including REST APIs and RPC APIs. It is used by\n[gRPC](https://github.com/grpc). The error model is designed to be:\n\n- Simple to use and understand for most users\n- Flexible enough to meet unexpected needs\n\n# Overview\n\nThe `Status` message contains three pieces of data: error code, error message,\nand error details. The error code should be an enum value of\ngoogle.rpc.Code, but it may accept additional error codes if needed. The\nerror message should be a developer-facing English message that helps\ndevelopers *understand* and *resolve* the error. If a localized user-facing\nerror message is needed, put the localized message in the error details or\nlocalize it in the client. The optional error details may contain arbitrary\ninformation about the error. There is a predefined set of error detail types\nin the package `google.rpc` that can be used for common error conditions.\n\n# Language mapping\n\nThe `Status` message is the logical representation of the error model, but it\nis not necessarily the actual wire format. When the `Status` message is\nexposed in different client libraries and different wire protocols, it can be\nmapped differently. For example, it will likely be mapped to some exceptions\nin Java, but more likely mapped to some error codes in C.\n\n# Other uses\n\nThe error model and the `Status` message can be used in a variety of\nenvironments, either with or without APIs, to provide a\nconsistent developer experience across different environments.\n\nExample uses of this error model include:\n\n- Partial errors. If a service needs to return partial errors to the client,\n it may embed the `Status` in the normal response to indicate the partial\n errors.\n\n- Workflow errors. A typical workflow has multiple steps. Each step may\n have a `Status` message for error reporting.\n\n- Batch operations. If a client uses batch request and batch response, the\n `Status` message should be used directly inside batch response, one for\n each error sub-response.\n\n- Asynchronous operations. If an API call embeds asynchronous operation\n results in its response, the status of those operations should be\n represented directly using the `Status` message.\n\n- Logging. If some API errors are stored in logs, the message `Status` could\n be used directly after any stripping needed for security/privacy reasons.", + "id": "Status", + "properties": { + "code": { + "description": "The status code, which should be an enum value of google.rpc.Code.", + "format": "int32", + "type": "integer" + }, + "details": { + "description": "A list of messages that carry the error details. There is a common set of\nmessage types for APIs to use.", + "items": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "A developer-facing error message, which should be in English. Any\nuser-facing error message should be localized and sent in the\ngoogle.rpc.Status.details field, or localized by the client.", + "type": "string" + } + }, + "type": "object" } }, - "icons": { - "x16": "http://www.google.com/images/icons/product/search-16.gif", - "x32": "http://www.google.com/images/icons/product/search-32.gif" - }, - "protocol": "rest" -} + "servicePath": "", + "title": "Google Service Control API", + "version": "v1", + "version_module": true +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/servicecontrol/v1/servicecontrol-gen.go b/vendor/google.golang.org/api/servicecontrol/v1/servicecontrol-gen.go index 63f4327ca..eb5788dd9 100644 --- a/vendor/google.golang.org/api/servicecontrol/v1/servicecontrol-gen.go +++ b/vendor/google.golang.org/api/servicecontrol/v1/servicecontrol-gen.go @@ -470,6 +470,8 @@ type CheckError struct { // `ACTIVE` in LoquatV2. // "SECURITY_POLICY_VIOLATED" - Request is not allowed as per security // policies defined in Org Policy. + // "INVALID_CREDENTIAL" - The credential in the request can not be + // verified. // "NAMESPACE_LOOKUP_UNAVAILABLE" - The backend server for looking up // project id/number is unavailable. // "SERVICE_STATUS_UNAVAILABLE" - The backend server for checking @@ -1365,7 +1367,9 @@ type Operation struct { // used to handle the API request (e.g. ESP), // - `servicecontrol.googleapis.com/platform` describing the // platform - // where the API is served (e.g. GAE, GCE, GKE). + // where the API is served, such as App Engine, Compute Engine, + // or + // Kubernetes Engine. Labels map[string]string `json:"labels,omitempty"` // LogEntries: Represents information to be logged. @@ -2529,24 +2533,29 @@ type ServicesCheckCall struct { header_ http.Header } -// Check: Checks an operation with Google Service Control to decide -// whether -// the given operation should proceed. It should be called before -// the -// operation is executed. +// Check: Checks whether an operation on a service should be allowed to +// proceed +// based on the configuration of the service and related policies. It +// must be +// called before the operation is executed. // // If feasible, the client should cache the check results and reuse them // for -// 60 seconds. In case of server errors, the client can rely on the -// cached -// results for longer time. +// 60 seconds. In case of any server errors, the client should rely on +// the +// cached results for much longer time to avoid outage. +// WARNING: There is general 60s delay for the configuration and +// policy +// propagation, therefore callers MUST NOT depend on the `Check` method +// having +// the latest policy information. // // NOTE: the CheckRequest has the size limit of 64KB. // // This method requires the `servicemanagement.services.check` // permission // on the specified service. For more information, see -// [Google Cloud IAM](https://cloud.google.com/iam). +// [Cloud IAM](https://cloud.google.com/iam). func (r *ServicesService) Check(serviceName string, checkrequest *CheckRequest) *ServicesCheckCall { c := &ServicesCheckCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.serviceName = serviceName @@ -2640,7 +2649,7 @@ func (c *ServicesCheckCall) Do(opts ...googleapi.CallOption) (*CheckResponse, er } return ret, nil // { - // "description": "Checks an operation with Google Service Control to decide whether\nthe given operation should proceed. It should be called before the\noperation is executed.\n\nIf feasible, the client should cache the check results and reuse them for\n60 seconds. In case of server errors, the client can rely on the cached\nresults for longer time.\n\nNOTE: the CheckRequest has the size limit of 64KB.\n\nThis method requires the `servicemanagement.services.check` permission\non the specified service. For more information, see\n[Google Cloud IAM](https://cloud.google.com/iam).", + // "description": "Checks whether an operation on a service should be allowed to proceed\nbased on the configuration of the service and related policies. It must be\ncalled before the operation is executed.\n\nIf feasible, the client should cache the check results and reuse them for\n60 seconds. In case of any server errors, the client should rely on the\ncached results for much longer time to avoid outage.\nWARNING: There is general 60s delay for the configuration and policy\npropagation, therefore callers MUST NOT depend on the `Check` method having\nthe latest policy information.\n\nNOTE: the CheckRequest has the size limit of 64KB.\n\nThis method requires the `servicemanagement.services.check` permission\non the specified service. For more information, see\n[Cloud IAM](https://cloud.google.com/iam).", // "flatPath": "v1/services/{serviceName}:check", // "httpMethod": "POST", // "id": "servicecontrol.services.check", diff --git a/vendor/google.golang.org/api/servicemanagement/v1/servicemanagement-api.json b/vendor/google.golang.org/api/servicemanagement/v1/servicemanagement-api.json index e5ad67932..42ee1350e 100644 --- a/vendor/google.golang.org/api/servicemanagement/v1/servicemanagement-api.json +++ b/vendor/google.golang.org/api/servicemanagement/v1/servicemanagement-api.json @@ -1,686 +1,1018 @@ { - "kind": "discovery#restDescription", - "description": "Google Service Management allows service producers to publish their services on Google Cloud Platform so that they can be discovered and used by service consumers.", - "servicePath": "", - "basePath": "", - "revision": "20180112", - "documentationLink": "https://cloud.google.com/service-management/", - "id": "servicemanagement:v1", - "discoveryVersion": "v1", - "schemas": { - "LogDescriptor": { - "description": "A description of a log type. Example in YAML format:\n\n - name: library.googleapis.com/activity_history\n description: The history of borrowing and returning library items.\n display_name: Activity\n labels:\n - key: /customer_id\n description: Identifier of a library customer", - "type": "object", - "properties": { - "labels": { - "description": "The set of labels that are available to describe a specific log entry.\nRuntime requests that contain labels not specified here are\nconsidered invalid.", - "type": "array", - "items": { - "$ref": "LabelDescriptor" - } + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/cloud-platform": { + "description": "View and manage your data across Google Cloud Platform services" }, - "name": { - "description": "The name of the log. It must be less than 512 characters long and can\ninclude the following characters: upper- and lower-case alphanumeric\ncharacters [A-Za-z0-9], and punctuation characters including\nslash, underscore, hyphen, period [/_-.].", - "type": "string" + "https://www.googleapis.com/auth/cloud-platform.read-only": { + "description": "View your data across Google Cloud Platform services" }, - "description": { - "type": "string", - "description": "A human-readable description of this log. This information appears in\nthe documentation and can contain details." + "https://www.googleapis.com/auth/service.management": { + "description": "Manage your Google API service configuration" }, - "displayName": { - "description": "The human-readable name for this log. This information appears on\nthe user interface and should be concise.", - "type": "string" + "https://www.googleapis.com/auth/service.management.readonly": { + "description": "View your Google API service configuration" } - }, - "id": "LogDescriptor" + } + } + }, + "basePath": "", + "baseUrl": "https://servicemanagement.googleapis.com/", + "batchPath": "batch", + "canonicalName": "Service Management", + "description": "Google Service Management allows service producers to publish their services on Google Cloud Platform so that they can be discovered and used by service consumers.", + "discoveryVersion": "v1", + "documentationLink": "https://cloud.google.com/service-management/", + "fullyEncodeReservedExpansion": true, + "icons": { + "x16": "http://www.google.com/images/icons/product/search-16.gif", + "x32": "http://www.google.com/images/icons/product/search-32.gif" + }, + "id": "servicemanagement:v1", + "kind": "discovery#restDescription", + "name": "servicemanagement", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "$.xgafv": { + "description": "V1 error format.", + "enum": [ + "1", + "2" + ], + "enumDescriptions": [ + "v1 error format", + "v2 error format" + ], + "location": "query", + "type": "string" }, - "ConfigFile": { - "properties": { - "fileType": { - "enum": [ - "FILE_TYPE_UNSPECIFIED", - "SERVICE_CONFIG_YAML", - "OPEN_API_JSON", - "OPEN_API_YAML", - "FILE_DESCRIPTOR_SET_PROTO", - "PROTO_FILE" + "access_token": { + "description": "OAuth access token.", + "location": "query", + "type": "string" + }, + "alt": { + "default": "json", + "description": "Data format for response.", + "enum": [ + "json", + "media", + "proto" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json", + "Media download with context-dependent Content-Type", + "Responses with Content-Type of application/x-protobuf" + ], + "location": "query", + "type": "string" + }, + "bearer_token": { + "description": "OAuth bearer token.", + "location": "query", + "type": "string" + }, + "callback": { + "description": "JSONP", + "location": "query", + "type": "string" + }, + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "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.", + "location": "query", + "type": "string" + }, + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "pp": { + "default": "true", + "description": "Pretty-print response.", + "location": "query", + "type": "boolean" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", + "location": "query", + "type": "string" + }, + "uploadType": { + "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", + "location": "query", + "type": "string" + }, + "upload_protocol": { + "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", + "location": "query", + "type": "string" + } + }, + "protocol": "rest", + "resources": { + "operations": { + "methods": { + "get": { + "description": "Gets the latest state of a long-running operation. Clients can use this\nmethod to poll the operation result at intervals as recommended by the API\nservice.", + "flatPath": "v1/operations/{operationsId}", + "httpMethod": "GET", + "id": "servicemanagement.operations.get", + "parameterOrder": [ + "name" ], - "description": "The type of configuration file this represents.", - "type": "string", - "enumDescriptions": [ - "Unknown file type.", - "YAML-specification of service.", - "OpenAPI specification, serialized in JSON.", - "OpenAPI specification, serialized in YAML.", - "FileDescriptorSet, generated by protoc.\n\nTo generate, use protoc with imports and source info included.\nFor an example test.proto file, the following command would put the value\nin a new file named out.pb.\n\n$protoc --include_imports --include_source_info test.proto -o out.pb", - "Uncompiled Proto file. Used for storage and display purposes only,\ncurrently server-side compilation is not supported. Should match the\ninputs to 'protoc' command used to generated FILE_DESCRIPTOR_SET_PROTO. A\nfile of this type can only be included if at least one file of type\nFILE_DESCRIPTOR_SET_PROTO is included." + "parameters": { + "name": { + "description": "The name of the operation resource.", + "location": "path", + "pattern": "^operations/.+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/service.management" ] }, - "fileContents": { - "description": "The bytes that constitute the file.", - "format": "byte", - "type": "string" - }, - "filePath": { - "description": "The file name of the configuration file (full or relative path).", - "type": "string" - } - }, - "id": "ConfigFile", - "description": "Generic specification of a source configuration file", - "type": "object" - }, - "CustomErrorRule": { - "type": "object", - "properties": { - "isErrorType": { - "description": "Mark this message as possible payload in error response. Otherwise,\nobjects of this type will be filtered when they appear in error payload.", - "type": "boolean" - }, - "selector": { - "type": "string", - "description": "Selects messages to which this rule applies.\n\nRefer to selector for syntax details." - } - }, - "id": "CustomErrorRule", - "description": "A custom error rule." - }, - "MonitoredResourceDescriptor": { - "type": "object", - "properties": { - "labels": { - "description": "Required. A set of labels used to describe instances of this monitored\nresource type. For example, an individual Google Cloud SQL database is\nidentified by values for the labels `\"database_id\"` and `\"zone\"`.", - "type": "array", - "items": { - "$ref": "LabelDescriptor" - } - }, - "name": { - "description": "Optional. The resource name of the monitored resource descriptor:\n`\"projects/{project_id}/monitoredResourceDescriptors/{type}\"` where\n{type} is the value of the `type` field in this object and\n{project_id} is a project ID that provides API-specific context for\naccessing the type. APIs that do not use project information can use the\nresource name format `\"monitoredResourceDescriptors/{type}\"`.", - "type": "string" - }, - "displayName": { - "description": "Optional. A concise name for the monitored resource type that might be\ndisplayed in user interfaces. It should be a Title Cased Noun Phrase,\nwithout any article or other determiners. For example,\n`\"Google Cloud SQL Database\"`.", - "type": "string" - }, - "description": { - "description": "Optional. A detailed description of the monitored resource type that might\nbe used in documentation.", - "type": "string" - }, - "type": { - "description": "Required. The monitored resource type. For example, the type\n`\"cloudsql_database\"` represents databases in Google Cloud SQL.\nThe maximum length of this value is 256 characters.", - "type": "string" - } - }, - "id": "MonitoredResourceDescriptor", - "description": "An object that describes the schema of a MonitoredResource object using a\ntype name and a set of labels. For example, the monitored resource\ndescriptor for Google Compute Engine VM instances has a type of\n`\"gce_instance\"` and specifies the use of the labels `\"instance_id\"` and\n`\"zone\"` to identify particular VM instances.\n\nDifferent APIs can support different monitored resource types. APIs generally\nprovide a `list` method that returns the monitored resource descriptors used\nby the API." - }, - "CustomAuthRequirements": { - "id": "CustomAuthRequirements", - "description": "Configuration for a custom authentication provider.", - "type": "object", - "properties": { - "provider": { - "description": "A configuration string containing connection information for the\nauthentication provider, typically formatted as a SmartService string\n(go/smartservice).", - "type": "string" - } - } - }, - "MediaDownload": { - "id": "MediaDownload", - "description": "Defines the Media configuration for a service in case of a download.\nUse this only for Scotty Requests. Do not use this for media support using\nBytestream, add instead [][google.bytestream.RestByteStream] as an API to\nyour configuration for Bytestream methods.", - "type": "object", - "properties": { - "enabled": { - "description": "Whether download is enabled.", - "type": "boolean" - }, - "downloadService": { - "description": "DO NOT USE FIELDS BELOW THIS LINE UNTIL THIS WARNING IS REMOVED.\n\nSpecify name of the download service if one is used for download.", - "type": "string" - }, - "completeNotification": { - "description": "A boolean that determines whether a notification for the completion of a\ndownload should be sent to the backend.", - "type": "boolean" - }, - "maxDirectDownloadSize": { - "description": "Optional maximum acceptable size for direct download.\nThe size is specified in bytes.", - "format": "int64", - "type": "string" - }, - "dropzone": { - "description": "Name of the Scotty dropzone to use for the current API.", - "type": "string" - }, - "useDirectDownload": { - "description": "A boolean that determines if direct download from ESF should be used for\ndownload of this media.", - "type": "boolean" - } - } - }, - "ChangeReport": { - "description": "Change report associated with a particular service configuration.\n\nIt contains a list of ConfigChanges based on the comparison between\ntwo service configurations.", - "type": "object", - "properties": { - "configChanges": { - "description": "List of changes between two service configurations.\nThe changes will be alphabetically sorted based on the identifier\nof each change.\nA ConfigChange identifier is a dot separated path to the configuration.\nExample: visibility.rules[selector='LibraryService.CreateBook'].restriction", - "type": "array", - "items": { - "$ref": "ConfigChange" - } - } - }, - "id": "ChangeReport" - }, - "DisableServiceRequest": { - "description": "Request message for DisableService method.", - "type": "object", - "properties": { - "consumerId": { - "description": "The identity of consumer resource which service disablement will be\napplied to.\n\nThe Google Service Management implementation accepts the following\nforms:\n- \"project:\u003cproject_id\u003e\"\n\nNote: this is made compatible with\ngoogle.api.servicecontrol.v1.Operation.consumer_id.", - "type": "string" - } - }, - "id": "DisableServiceRequest" - }, - "SubmitConfigSourceResponse": { - "description": "Response message for SubmitConfigSource method.", - "type": "object", - "properties": { - "serviceConfig": { - "$ref": "Service", - "description": "The generated service configuration." - } - }, - "id": "SubmitConfigSourceResponse" - }, - "MediaUpload": { - "description": "Defines the Media configuration for a service in case of an upload.\nUse this only for Scotty Requests. Do not use this for media support using\nBytestream, add instead [][google.bytestream.RestByteStream] as an API to\nyour configuration for Bytestream methods.", - "type": "object", - "properties": { - "startNotification": { - "description": "Whether to receive a notification on the start of media upload.", - "type": "boolean" - }, - "uploadService": { - "description": "DO NOT USE FIELDS BELOW THIS LINE UNTIL THIS WARNING IS REMOVED.\n\nSpecify name of the upload service if one is used for upload.", - "type": "string" - }, - "maxSize": { - "description": "Optional maximum acceptable size for an upload.\nThe size is specified in bytes.", - "format": "int64", - "type": "string" - }, - "mimeTypes": { - "type": "array", - "items": { - "type": "string" + "list": { + "description": "Lists service operations that match the specified filter in the request.", + "flatPath": "v1/operations", + "httpMethod": "GET", + "id": "servicemanagement.operations.list", + "parameterOrder": [], + "parameters": { + "filter": { + "description": "A string for filtering Operations.\n The following filter fields are supported\u0026#58;\n\n * serviceName\u0026#58; Required. Only `=` operator is allowed.\n * startTime\u0026#58; The time this job was started, in ISO 8601 format.\n Allowed operators are `\u003e=`, `\u003e`, `\u003c=`, and `\u003c`.\n * status\u0026#58; Can be `done`, `in_progress`, or `failed`. Allowed\n operators are `=`, and `!=`.\n\n Filter expression supports conjunction (AND) and disjunction (OR)\n logical operators. However, the serviceName restriction must be at the\n top-level and can only be combined with other restrictions via the AND\n logical operator.\n\n Examples\u0026#58;\n\n * `serviceName={some-service}.googleapis.com`\n * `serviceName={some-service}.googleapis.com AND startTime\u003e=\"2017-02-01\"`\n * `serviceName={some-service}.googleapis.com AND status=done`\n * `serviceName={some-service}.googleapis.com AND (status=done OR startTime\u003e=\"2017-02-01\")`", + "location": "query", + "type": "string" + }, + "name": { + "description": "Not used.", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "The maximum number of operations to return. If unspecified, defaults to\n50. The maximum value is 100.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "The standard list page token.", + "location": "query", + "type": "string" + } }, - "description": "An array of mimetype patterns. Esf will only accept uploads that match one\nof the given patterns." + "path": "v1/operations", + "response": { + "$ref": "ListOperationsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/service.management" + ] + } + } + }, + "services": { + "methods": { + "create": { + "description": "Creates a new managed service.\nPlease note one producer project can own no more than 20 services.\n\nOperation\u003cresponse: ManagedService\u003e", + "flatPath": "v1/services", + "httpMethod": "POST", + "id": "servicemanagement.services.create", + "parameterOrder": [], + "parameters": {}, + "path": "v1/services", + "request": { + "$ref": "ManagedService" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/service.management" + ] }, - "completeNotification": { - "type": "boolean", - "description": "A boolean that determines whether a notification for the completion of an\nupload should be sent to the backend. These notifications will not be seen\nby the client and will not consume quota." + "delete": { + "description": "Deletes a managed service. This method will change the service to the\n`Soft-Delete` state for 30 days. Within this period, service producers may\ncall UndeleteService to restore the service.\nAfter 30 days, the service will be permanently deleted.\n\nOperation\u003cresponse: google.protobuf.Empty\u003e", + "flatPath": "v1/services/{serviceName}", + "httpMethod": "DELETE", + "id": "servicemanagement.services.delete", + "parameterOrder": [ + "serviceName" + ], + "parameters": { + "serviceName": { + "description": "The name of the service. See the [overview](/service-management/overview)\nfor naming requirements. For example: `example.googleapis.com`.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/services/{serviceName}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/service.management" + ] }, - "progressNotification": { - "description": "Whether to receive a notification for progress changes of media upload.", - "type": "boolean" + "disable": { + "description": "Disables a service for a project, so it can no longer be\nbe used for the project. It prevents accidental usage that may cause\nunexpected billing charges or security leaks.\n\nOperation\u003cresponse: DisableServiceResponse\u003e", + "flatPath": "v1/services/{serviceName}:disable", + "httpMethod": "POST", + "id": "servicemanagement.services.disable", + "parameterOrder": [ + "serviceName" + ], + "parameters": { + "serviceName": { + "description": "Name of the service to disable. Specifying an unknown service name\nwill cause the request to fail.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/services/{serviceName}:disable", + "request": { + "$ref": "DisableServiceRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/service.management" + ] }, - "enabled": { - "description": "Whether upload is enabled.", - "type": "boolean" + "enable": { + "description": "Enables a service for a project, so it can be used\nfor the project. See\n[Cloud Auth Guide](https://cloud.google.com/docs/authentication) for\nmore information.\n\nOperation\u003cresponse: EnableServiceResponse\u003e", + "flatPath": "v1/services/{serviceName}:enable", + "httpMethod": "POST", + "id": "servicemanagement.services.enable", + "parameterOrder": [ + "serviceName" + ], + "parameters": { + "serviceName": { + "description": "Name of the service to enable. Specifying an unknown service name will\ncause the request to fail.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/services/{serviceName}:enable", + "request": { + "$ref": "EnableServiceRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/service.management" + ] }, - "dropzone": { - "description": "Name of the Scotty dropzone to use for the current API.", - "type": "string" + "generateConfigReport": { + "description": "Generates and returns a report (errors, warnings and changes from\nexisting configurations) associated with\nGenerateConfigReportRequest.new_value\n\nIf GenerateConfigReportRequest.old_value is specified,\nGenerateConfigReportRequest will contain a single ChangeReport based on the\ncomparison between GenerateConfigReportRequest.new_value and\nGenerateConfigReportRequest.old_value.\nIf GenerateConfigReportRequest.old_value is not specified, this method\nwill compare GenerateConfigReportRequest.new_value with the last pushed\nservice configuration.", + "flatPath": "v1/services:generateConfigReport", + "httpMethod": "POST", + "id": "servicemanagement.services.generateConfigReport", + "parameterOrder": [], + "parameters": {}, + "path": "v1/services:generateConfigReport", + "request": { + "$ref": "GenerateConfigReportRequest" + }, + "response": { + "$ref": "GenerateConfigReportResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/service.management" + ] + }, + "get": { + "description": "Gets a managed service. Authentication is required unless the service is\npublic.", + "flatPath": "v1/services/{serviceName}", + "httpMethod": "GET", + "id": "servicemanagement.services.get", + "parameterOrder": [ + "serviceName" + ], + "parameters": { + "serviceName": { + "description": "The name of the service. See the `ServiceManager` overview for naming\nrequirements. For example: `example.googleapis.com`.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/services/{serviceName}", + "response": { + "$ref": "ManagedService" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/service.management", + "https://www.googleapis.com/auth/service.management.readonly" + ] + }, + "getConfig": { + "description": "Gets a service configuration (version) for a managed service.", + "flatPath": "v1/services/{serviceName}/config", + "httpMethod": "GET", + "id": "servicemanagement.services.getConfig", + "parameterOrder": [ + "serviceName" + ], + "parameters": { + "configId": { + "description": "The id of the service configuration resource.", + "location": "query", + "type": "string" + }, + "serviceName": { + "description": "The name of the service. See the [overview](/service-management/overview)\nfor naming requirements. For example: `example.googleapis.com`.", + "location": "path", + "required": true, + "type": "string" + }, + "view": { + "description": "Specifies which parts of the Service Config should be returned in the\nresponse.", + "enum": [ + "BASIC", + "FULL" + ], + "location": "query", + "type": "string" + } + }, + "path": "v1/services/{serviceName}/config", + "response": { + "$ref": "Service" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/service.management", + "https://www.googleapis.com/auth/service.management.readonly" + ] + }, + "getIamPolicy": { + "description": "Gets the access control policy for a resource.\nReturns an empty policy if the resource exists and does not have a policy\nset.", + "flatPath": "v1/services/{servicesId}:getIamPolicy", + "httpMethod": "POST", + "id": "servicemanagement.services.getIamPolicy", + "parameterOrder": [ + "resource" + ], + "parameters": { + "resource": { + "description": "REQUIRED: The resource for which the policy is being requested.\nSee the operation documentation for the appropriate value for this field.", + "location": "path", + "pattern": "^services/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+resource}:getIamPolicy", + "request": { + "$ref": "GetIamPolicyRequest" + }, + "response": { + "$ref": "Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/service.management", + "https://www.googleapis.com/auth/service.management.readonly" + ] + }, + "list": { + "description": "Lists managed services.\n\nReturns all public services. For authenticated users, also returns all\nservices the calling user has \"servicemanagement.services.get\" permission\nfor.\n\n**BETA:** If the caller specifies the `consumer_id`, it returns only the\nservices enabled on the consumer. The `consumer_id` must have the format\nof \"project:{PROJECT-ID}\".", + "flatPath": "v1/services", + "httpMethod": "GET", + "id": "servicemanagement.services.list", + "parameterOrder": [], + "parameters": { + "consumerId": { + "description": "Include services consumed by the specified consumer.\n\nThe Google Service Management implementation accepts the following\nforms:\n- project:\u003cproject_id\u003e", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "Requested size of the next page of data.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Token identifying which result to start with; returned by a previous list\ncall.", + "location": "query", + "type": "string" + }, + "producerProjectId": { + "description": "Include services produced by the specified project.", + "location": "query", + "type": "string" + } + }, + "path": "v1/services", + "response": { + "$ref": "ListServicesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/service.management", + "https://www.googleapis.com/auth/service.management.readonly" + ] + }, + "setIamPolicy": { + "description": "Sets the access control policy on the specified resource. Replaces any\nexisting policy.", + "flatPath": "v1/services/{servicesId}:setIamPolicy", + "httpMethod": "POST", + "id": "servicemanagement.services.setIamPolicy", + "parameterOrder": [ + "resource" + ], + "parameters": { + "resource": { + "description": "REQUIRED: The resource for which the policy is being specified.\nSee the operation documentation for the appropriate value for this field.", + "location": "path", + "pattern": "^services/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+resource}:setIamPolicy", + "request": { + "$ref": "SetIamPolicyRequest" + }, + "response": { + "$ref": "Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/service.management" + ] + }, + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource.\nIf the resource does not exist, this will return an empty set of\npermissions, not a NOT_FOUND error.\n\nNote: This operation is designed to be used for building permission-aware\nUIs and command-line tools, not for authorization checking. This operation\nmay \"fail open\" without warning.", + "flatPath": "v1/services/{servicesId}:testIamPermissions", + "httpMethod": "POST", + "id": "servicemanagement.services.testIamPermissions", + "parameterOrder": [ + "resource" + ], + "parameters": { + "resource": { + "description": "REQUIRED: The resource for which the policy detail is being requested.\nSee the operation documentation for the appropriate value for this field.", + "location": "path", + "pattern": "^services/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+resource}:testIamPermissions", + "request": { + "$ref": "TestIamPermissionsRequest" + }, + "response": { + "$ref": "TestIamPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/service.management", + "https://www.googleapis.com/auth/service.management.readonly" + ] + }, + "undelete": { + "description": "Revives a previously deleted managed service. The method restores the\nservice using the configuration at the time the service was deleted.\nThe target service must exist and must have been deleted within the\nlast 30 days.\n\nOperation\u003cresponse: UndeleteServiceResponse\u003e", + "flatPath": "v1/services/{serviceName}:undelete", + "httpMethod": "POST", + "id": "servicemanagement.services.undelete", + "parameterOrder": [ + "serviceName" + ], + "parameters": { + "serviceName": { + "description": "The name of the service. See the [overview](/service-management/overview)\nfor naming requirements. For example: `example.googleapis.com`.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/services/{serviceName}:undelete", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/service.management" + ] } }, - "id": "MediaUpload" - }, - "BillingDestination": { - "description": "Configuration of a specific billing destination (Currently only support\nbill against consumer project).", - "type": "object", - "properties": { - "monitoredResource": { - "description": "The monitored resource type. The type must be defined in\nService.monitored_resources section.", - "type": "string" + "resources": { + "configs": { + "methods": { + "create": { + "description": "Creates a new service configuration (version) for a managed service.\nThis method only stores the service configuration. To roll out the service\nconfiguration to backend systems please call\nCreateServiceRollout.\n\nOnly the 100 most recent service configurations and ones referenced by\nexisting rollouts are kept for each service. The rest will be deleted\neventually.", + "flatPath": "v1/services/{serviceName}/configs", + "httpMethod": "POST", + "id": "servicemanagement.services.configs.create", + "parameterOrder": [ + "serviceName" + ], + "parameters": { + "serviceName": { + "description": "The name of the service. See the [overview](/service-management/overview)\nfor naming requirements. For example: `example.googleapis.com`.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/services/{serviceName}/configs", + "request": { + "$ref": "Service" + }, + "response": { + "$ref": "Service" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/service.management" + ] + }, + "get": { + "description": "Gets a service configuration (version) for a managed service.", + "flatPath": "v1/services/{serviceName}/configs/{configId}", + "httpMethod": "GET", + "id": "servicemanagement.services.configs.get", + "parameterOrder": [ + "serviceName", + "configId" + ], + "parameters": { + "configId": { + "description": "The id of the service configuration resource.", + "location": "path", + "required": true, + "type": "string" + }, + "serviceName": { + "description": "The name of the service. See the [overview](/service-management/overview)\nfor naming requirements. For example: `example.googleapis.com`.", + "location": "path", + "required": true, + "type": "string" + }, + "view": { + "description": "Specifies which parts of the Service Config should be returned in the\nresponse.", + "enum": [ + "BASIC", + "FULL" + ], + "location": "query", + "type": "string" + } + }, + "path": "v1/services/{serviceName}/configs/{configId}", + "response": { + "$ref": "Service" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/service.management", + "https://www.googleapis.com/auth/service.management.readonly" + ] + }, + "list": { + "description": "Lists the history of the service configuration for a managed service,\nfrom the newest to the oldest.", + "flatPath": "v1/services/{serviceName}/configs", + "httpMethod": "GET", + "id": "servicemanagement.services.configs.list", + "parameterOrder": [ + "serviceName" + ], + "parameters": { + "pageSize": { + "description": "The max number of items to include in the response list.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "The token of the page to retrieve.", + "location": "query", + "type": "string" + }, + "serviceName": { + "description": "The name of the service. See the [overview](/service-management/overview)\nfor naming requirements. For example: `example.googleapis.com`.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/services/{serviceName}/configs", + "response": { + "$ref": "ListServiceConfigsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/service.management", + "https://www.googleapis.com/auth/service.management.readonly" + ] + }, + "submit": { + "description": "Creates a new service configuration (version) for a managed service based\non\nuser-supplied configuration source files (for example: OpenAPI\nSpecification). This method stores the source configurations as well as the\ngenerated service configuration. To rollout the service configuration to\nother services,\nplease call CreateServiceRollout.\n\nOnly the 100 most recent configuration sources and ones referenced by\nexisting service configurtions are kept for each service. The rest will be\ndeleted eventually.\n\nOperation\u003cresponse: SubmitConfigSourceResponse\u003e", + "flatPath": "v1/services/{serviceName}/configs:submit", + "httpMethod": "POST", + "id": "servicemanagement.services.configs.submit", + "parameterOrder": [ + "serviceName" + ], + "parameters": { + "serviceName": { + "description": "The name of the service. See the [overview](/service-management/overview)\nfor naming requirements. For example: `example.googleapis.com`.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/services/{serviceName}/configs:submit", + "request": { + "$ref": "SubmitConfigSourceRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/service.management" + ] + } + } }, - "metrics": { - "description": "Names of the metrics to report to this billing destination.\nEach name must be defined in Service.metrics section.", - "type": "array", - "items": { - "type": "string" + "consumers": { + "methods": { + "getIamPolicy": { + "description": "Gets the access control policy for a resource.\nReturns an empty policy if the resource exists and does not have a policy\nset.", + "flatPath": "v1/services/{servicesId}/consumers/{consumersId}:getIamPolicy", + "httpMethod": "POST", + "id": "servicemanagement.services.consumers.getIamPolicy", + "parameterOrder": [ + "resource" + ], + "parameters": { + "resource": { + "description": "REQUIRED: The resource for which the policy is being requested.\nSee the operation documentation for the appropriate value for this field.", + "location": "path", + "pattern": "^services/[^/]+/consumers/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+resource}:getIamPolicy", + "request": { + "$ref": "GetIamPolicyRequest" + }, + "response": { + "$ref": "Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/service.management", + "https://www.googleapis.com/auth/service.management.readonly" + ] + }, + "setIamPolicy": { + "description": "Sets the access control policy on the specified resource. Replaces any\nexisting policy.", + "flatPath": "v1/services/{servicesId}/consumers/{consumersId}:setIamPolicy", + "httpMethod": "POST", + "id": "servicemanagement.services.consumers.setIamPolicy", + "parameterOrder": [ + "resource" + ], + "parameters": { + "resource": { + "description": "REQUIRED: The resource for which the policy is being specified.\nSee the operation documentation for the appropriate value for this field.", + "location": "path", + "pattern": "^services/[^/]+/consumers/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+resource}:setIamPolicy", + "request": { + "$ref": "SetIamPolicyRequest" + }, + "response": { + "$ref": "Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/service.management" + ] + }, + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource.\nIf the resource does not exist, this will return an empty set of\npermissions, not a NOT_FOUND error.\n\nNote: This operation is designed to be used for building permission-aware\nUIs and command-line tools, not for authorization checking. This operation\nmay \"fail open\" without warning.", + "flatPath": "v1/services/{servicesId}/consumers/{consumersId}:testIamPermissions", + "httpMethod": "POST", + "id": "servicemanagement.services.consumers.testIamPermissions", + "parameterOrder": [ + "resource" + ], + "parameters": { + "resource": { + "description": "REQUIRED: The resource for which the policy detail is being requested.\nSee the operation documentation for the appropriate value for this field.", + "location": "path", + "pattern": "^services/[^/]+/consumers/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+resource}:testIamPermissions", + "request": { + "$ref": "TestIamPermissionsRequest" + }, + "response": { + "$ref": "TestIamPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/service.management", + "https://www.googleapis.com/auth/service.management.readonly" + ] + } + } + }, + "rollouts": { + "methods": { + "create": { + "description": "Creates a new service configuration rollout. Based on rollout, the\nGoogle Service Management will roll out the service configurations to\ndifferent backend services. For example, the logging configuration will be\npushed to Google Cloud Logging.\n\nPlease note that any previous pending and running Rollouts and associated\nOperations will be automatically cancelled so that the latest Rollout will\nnot be blocked by previous Rollouts.\n\nOnly the 100 most recent (in any state) and the last 10 successful (if not\nalready part of the set of 100 most recent) rollouts are kept for each\nservice. The rest will be deleted eventually.\n\nOperation\u003cresponse: Rollout\u003e", + "flatPath": "v1/services/{serviceName}/rollouts", + "httpMethod": "POST", + "id": "servicemanagement.services.rollouts.create", + "parameterOrder": [ + "serviceName" + ], + "parameters": { + "serviceName": { + "description": "The name of the service. See the [overview](/service-management/overview)\nfor naming requirements. For example: `example.googleapis.com`.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/services/{serviceName}/rollouts", + "request": { + "$ref": "Rollout" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/service.management" + ] + }, + "get": { + "description": "Gets a service configuration rollout.", + "flatPath": "v1/services/{serviceName}/rollouts/{rolloutId}", + "httpMethod": "GET", + "id": "servicemanagement.services.rollouts.get", + "parameterOrder": [ + "serviceName", + "rolloutId" + ], + "parameters": { + "rolloutId": { + "description": "The id of the rollout resource.", + "location": "path", + "required": true, + "type": "string" + }, + "serviceName": { + "description": "The name of the service. See the [overview](/service-management/overview)\nfor naming requirements. For example: `example.googleapis.com`.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/services/{serviceName}/rollouts/{rolloutId}", + "response": { + "$ref": "Rollout" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/service.management", + "https://www.googleapis.com/auth/service.management.readonly" + ] + }, + "list": { + "description": "Lists the history of the service configuration rollouts for a managed\nservice, from the newest to the oldest.", + "flatPath": "v1/services/{serviceName}/rollouts", + "httpMethod": "GET", + "id": "servicemanagement.services.rollouts.list", + "parameterOrder": [ + "serviceName" + ], + "parameters": { + "filter": { + "description": "Use `filter` to return subset of rollouts.\nThe following filters are supported:\n -- To limit the results to only those in\n [status](google.api.servicemanagement.v1.RolloutStatus) 'SUCCESS',\n use filter='status=SUCCESS'\n -- To limit the results to those in\n [status](google.api.servicemanagement.v1.RolloutStatus) 'CANCELLED'\n or 'FAILED', use filter='status=CANCELLED OR status=FAILED'", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "The max number of items to include in the response list.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "The token of the page to retrieve.", + "location": "query", + "type": "string" + }, + "serviceName": { + "description": "The name of the service. See the [overview](/service-management/overview)\nfor naming requirements. For example: `example.googleapis.com`.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/services/{serviceName}/rollouts", + "response": { + "$ref": "ListServiceRolloutsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/service.management", + "https://www.googleapis.com/auth/service.management.readonly" + ] + } } } - }, - "id": "BillingDestination" - }, + } + } + }, + "revision": "20180323", + "rootUrl": "https://servicemanagement.googleapis.com/", + "schemas": { "Advice": { "description": "Generated advice about this change, used for providing more\ninformation about how a change will affect the existing service.", - "type": "object", + "id": "Advice", "properties": { "description": { - "type": "string", - "description": "Useful description for why this advice was applied and what actions should\nbe taken to mitigate any implied risks." - } - }, - "id": "Advice" - }, - "ManagedService": { - "type": "object", - "properties": { - "serviceName": { - "description": "The name of the service. See the [overview](/service-management/overview)\nfor naming requirements.", - "type": "string" - }, - "producerProjectId": { - "description": "ID of the project that produces and owns this service.", + "description": "Useful description for why this advice was applied and what actions should\nbe taken to mitigate any implied risks.", "type": "string" } }, - "id": "ManagedService", - "description": "The full representation of a Service that is managed by\nGoogle Service Management." - }, - "UsageRule": { - "description": "Usage configuration rules for the service.\n\nNOTE: Under development.\n\n\nUse this rule to configure unregistered calls for the service. Unregistered\ncalls are calls that do not contain consumer project identity.\n(Example: calls that do not contain an API key).\nBy default, API methods do not allow unregistered calls, and each method call\nmust be identified by a consumer project identity. Use this rule to\nallow/disallow unregistered calls.\n\nExample of an API that wants to allow unregistered calls for entire service.\n\n usage:\n rules:\n - selector: \"*\"\n allow_unregistered_calls: true\n\nExample of a method that wants to allow unregistered calls.\n\n usage:\n rules:\n - selector: \"google.example.library.v1.LibraryService.CreateBook\"\n allow_unregistered_calls: true", - "type": "object", - "properties": { - "selector": { - "type": "string", - "description": "Selects the methods to which this rule applies. Use '*' to indicate all\nmethods in all APIs.\n\nRefer to selector for syntax details." - }, - "skipServiceControl": { - "description": "If true, the selected method should skip service control and the control\nplane features, such as quota and billing, will not be available.\nThis flag is used by Google Cloud Endpoints to bypass checks for internal\nmethods, such as service health check methods.", - "type": "boolean" - }, - "allowUnregisteredCalls": { - "description": "If true, the selected method allows unregistered calls, e.g. calls\nthat don't identify any user or application.", - "type": "boolean" - } - }, - "id": "UsageRule" - }, - "AuthRequirement": { - "properties": { - "providerId": { - "description": "id from authentication provider.\n\nExample:\n\n provider_id: bookstore_auth", - "type": "string" - }, - "audiences": { - "description": "NOTE: This will be deprecated soon, once AuthProvider.audiences is\nimplemented and accepted in all the runtime components.\n\nThe list of JWT\n[audiences](https://tools.ietf.org/html/draft-ietf-oauth-json-web-token-32#section-4.1.3).\nthat are allowed to access. A JWT containing any of these audiences will\nbe accepted. When this setting is absent, only JWTs with audience\n\"https://Service_name/API_name\"\nwill be accepted. For example, if no audiences are in the setting,\nLibraryService API will only accept JWTs with the following audience\n\"https://library-example.googleapis.com/google.example.library.v1.LibraryService\".\n\nExample:\n\n audiences: bookstore_android.apps.googleusercontent.com,\n bookstore_web.apps.googleusercontent.com", - "type": "string" - } - }, - "id": "AuthRequirement", - "description": "User-defined authentication requirements, including support for\n[JSON Web Token (JWT)](https://tools.ietf.org/html/draft-ietf-oauth-json-web-token-32).", - "type": "object" - }, - "TrafficPercentStrategy": { - "description": "Strategy that specifies how clients of Google Service Controller want to\nsend traffic to use different config versions. This is generally\nused by API proxy to split traffic based on your configured precentage for\neach config version.\n\nOne example of how to gradually rollout a new service configuration using\nthis\nstrategy:\nDay 1\n\n Rollout {\n id: \"example.googleapis.com/rollout_20160206\"\n traffic_percent_strategy {\n percentages: {\n \"example.googleapis.com/20160201\": 70.00\n \"example.googleapis.com/20160206\": 30.00\n }\n }\n }\n\nDay 2\n\n Rollout {\n id: \"example.googleapis.com/rollout_20160207\"\n traffic_percent_strategy: {\n percentages: {\n \"example.googleapis.com/20160206\": 100.00\n }\n }\n }", - "type": "object", - "properties": { - "percentages": { - "additionalProperties": { - "format": "double", - "type": "number" - }, - "description": "Maps service configuration IDs to their corresponding traffic percentage.\nKey is the service configuration ID, Value is the traffic percentage\nwhich must be greater than 0.0 and the sum must equal to 100.0.", - "type": "object" - } - }, - "id": "TrafficPercentStrategy" - }, - "Documentation": { - "description": "`Documentation` provides the information for describing a service.\n\nExample:\n\u003cpre\u003e\u003ccode\u003edocumentation:\n summary: \u003e\n The Google Calendar API gives access\n to most calendar features.\n pages:\n - name: Overview\n content: (== include google/foo/overview.md ==)\n - name: Tutorial\n content: (== include google/foo/tutorial.md ==)\n subpages;\n - name: Java\n content: (== include google/foo/tutorial_java.md ==)\n rules:\n - selector: google.calendar.Calendar.Get\n description: \u003e\n ...\n - selector: google.calendar.Calendar.Put\n description: \u003e\n ...\n\u003c/code\u003e\u003c/pre\u003e\nDocumentation is provided in markdown syntax. In addition to\nstandard markdown features, definition lists, tables and fenced\ncode blocks are supported. Section headers can be provided and are\ninterpreted relative to the section nesting of the context where\na documentation fragment is embedded.\n\nDocumentation from the IDL is merged with documentation defined\nvia the config at normalization time, where documentation provided\nby config rules overrides IDL provided.\n\nA number of constructs specific to the API platform are supported\nin documentation text.\n\nIn order to reference a proto element, the following\nnotation can be used:\n\u003cpre\u003e\u003ccode\u003e[fully.qualified.proto.name][]\u003c/code\u003e\u003c/pre\u003e\nTo override the display text used for the link, this can be used:\n\u003cpre\u003e\u003ccode\u003e[display text][fully.qualified.proto.name]\u003c/code\u003e\u003c/pre\u003e\nText can be excluded from doc using the following notation:\n\u003cpre\u003e\u003ccode\u003e(-- internal comment --)\u003c/code\u003e\u003c/pre\u003e\nComments can be made conditional using a visibility label. The below\ntext will be only rendered if the `BETA` label is available:\n\u003cpre\u003e\u003ccode\u003e(--BETA: comment for BETA users --)\u003c/code\u003e\u003c/pre\u003e\nA few directives are available in documentation. Note that\ndirectives must appear on a single line to be properly\nidentified. The `include` directive includes a markdown file from\nan external source:\n\u003cpre\u003e\u003ccode\u003e(== include path/to/file ==)\u003c/code\u003e\u003c/pre\u003e\nThe `resource_for` directive marks a message to be the resource of\na collection in REST view. If it is not specified, tools attempt\nto infer the resource from the operations in a collection:\n\u003cpre\u003e\u003ccode\u003e(== resource_for v1.shelves.books ==)\u003c/code\u003e\u003c/pre\u003e\nThe directive `suppress_warning` does not directly affect documentation\nand is documented together with service config validation.", - "type": "object", - "properties": { - "summary": { - "description": "A short summary of what the service does. Can only be provided by\nplain text.", - "type": "string" - }, - "documentationRootUrl": { - "description": "The URL to the root of documentation.", - "type": "string" - }, - "rules": { - "description": "A list of documentation rules that apply to individual API elements.\n\n**NOTE:** All service configuration rules follow \"last one wins\" order.", - "type": "array", - "items": { - "$ref": "DocumentationRule" - } - }, - "overview": { - "description": "Declares a single overview page. For example:\n\u003cpre\u003e\u003ccode\u003edocumentation:\n summary: ...\n overview: (== include overview.md ==)\n\u003c/code\u003e\u003c/pre\u003e\nThis is a shortcut for the following declaration (using pages style):\n\u003cpre\u003e\u003ccode\u003edocumentation:\n summary: ...\n pages:\n - name: Overview\n content: (== include overview.md ==)\n\u003c/code\u003e\u003c/pre\u003e\nNote: you cannot specify both `overview` field and `pages` field.", - "type": "string" - }, - "pages": { - "type": "array", - "items": { - "$ref": "Page" - }, - "description": "The top level pages for the documentation set." - } - }, - "id": "Documentation" - }, - "ConfigSource": { - "type": "object", - "properties": { - "files": { - "description": "Set of source configuration files that are used to generate a service\nconfiguration (`google.api.Service`).", - "type": "array", - "items": { - "$ref": "ConfigFile" - } - }, - "id": { - "description": "A unique ID for a specific instance of this message, typically assigned\nby the client for tracking purpose. If empty, the server may choose to\ngenerate one instead.", - "type": "string" - } - }, - "id": "ConfigSource", - "description": "Represents a source file which is used to generate the service configuration\ndefined by `google.api.Service`." - }, - "AuthenticationRule": { - "type": "object", - "properties": { - "requirements": { - "description": "Requirements for additional authentication providers.", - "type": "array", - "items": { - "$ref": "AuthRequirement" - } - }, - "selector": { - "type": "string", - "description": "Selects the methods to which this rule applies.\n\nRefer to selector for syntax details." - }, - "allowWithoutCredential": { - "description": "Whether to allow requests without a credential. The credential can be\nan OAuth token, Google cookies (first-party auth) or EndUserCreds.\n\nFor requests without credentials, if the service control environment is\nspecified, each incoming request **must** be associated with a service\nconsumer. This can be done by passing an API key that belongs to a consumer\nproject.", - "type": "boolean" - }, - "oauth": { - "$ref": "OAuthRequirements", - "description": "The requirements for OAuth credentials." - }, - "customAuth": { - "description": "Configuration for custom authentication.", - "$ref": "CustomAuthRequirements" - } - }, - "id": "AuthenticationRule", - "description": "Authentication rules for the service.\n\nBy default, if a method has any authentication requirements, every request\nmust include a valid credential matching one of the requirements.\nIt's an error to include more than one kind of credential in a single\nrequest.\n\nIf a method doesn't have any auth requirements, request credentials will be\nignored." - }, - "BackendRule": { - "description": "A backend rule provides configuration for an individual API element.", - "type": "object", - "properties": { - "address": { - "description": "The address of the API backend.", - "type": "string" - }, - "selector": { - "type": "string", - "description": "Selects the methods to which this rule applies.\n\nRefer to selector for syntax details." - }, - "deadline": { - "description": "The number of seconds to wait for a response from a request. The default\ndeadline for gRPC is infinite (no deadline) and HTTP requests is 5 seconds.", - "format": "double", - "type": "number" - }, - "minDeadline": { - "description": "Minimum deadline in seconds needed for this method. Calls having deadline\nvalue lower than this will be rejected.", - "format": "double", - "type": "number" - } - }, - "id": "BackendRule" - }, - "Policy": { - "description": "Defines an Identity and Access Management (IAM) policy. It is used to\nspecify access control policies for Cloud Platform resources.\n\n\nA `Policy` consists of a list of `bindings`. A `Binding` binds a list of\n`members` to a `role`, where the members can be user accounts, Google groups,\nGoogle domains, and service accounts. A `role` is a named list of permissions\ndefined by IAM.\n\n**Example**\n\n {\n \"bindings\": [\n {\n \"role\": \"roles/owner\",\n \"members\": [\n \"user:mike@example.com\",\n \"group:admins@example.com\",\n \"domain:google.com\",\n \"serviceAccount:my-other-app@appspot.gserviceaccount.com\",\n ]\n },\n {\n \"role\": \"roles/viewer\",\n \"members\": [\"user:sean@example.com\"]\n }\n ]\n }\n\nFor a description of IAM and its features, see the\n[IAM developer's guide](https://cloud.google.com/iam/docs).", - "type": "object", - "properties": { - "bindings": { - "description": "Associates a list of `members` to a `role`.\n`bindings` with no members will result in an error.", - "type": "array", - "items": { - "$ref": "Binding" - } - }, - "etag": { - "description": "`etag` is used for optimistic concurrency control as a way to help\nprevent simultaneous updates of a policy from overwriting each other.\nIt is strongly suggested that systems make use of the `etag` in the\nread-modify-write cycle to perform policy updates in order to avoid race\nconditions: An `etag` is returned in the response to `getIamPolicy`, and\nsystems are expected to put that etag in the request to `setIamPolicy` to\nensure that their change will be applied to the same version of the policy.\n\nIf no `etag` is provided in the call to `setIamPolicy`, then the existing\npolicy is overwritten blindly.", - "format": "byte", - "type": "string" - }, - "version": { - "description": "Deprecated.", - "format": "int32", - "type": "integer" - } - }, - "id": "Policy" - }, - "UndeleteServiceResponse": { - "properties": { - "service": { - "description": "Revived service resource.", - "$ref": "ManagedService" - } - }, - "id": "UndeleteServiceResponse", - "description": "Response message for UndeleteService method.", "type": "object" }, "Api": { "description": "Api is a light-weight descriptor for an API Interface.\n\nInterfaces are also described as \"protocol buffer services\" in some contexts,\nsuch as by the \"service\" keyword in a .proto file, but they are different\nfrom API Services, which represent a concrete implementation of an interface\nas opposed to simply a description of methods and bindings. They are also\nsometimes simply referred to as \"APIs\" in other contexts, such as the name of\nthis message itself. See https://cloud.google.com/apis/design/glossary for\ndetailed terminology.", - "type": "object", + "id": "Api", "properties": { - "options": { - "description": "Any metadata attached to the interface.", - "type": "array", - "items": { - "$ref": "Option" - } - }, "methods": { "description": "The methods of this interface, in unspecified order.", - "type": "array", "items": { "$ref": "Method" - } + }, + "type": "array" + }, + "mixins": { + "description": "Included interfaces. See Mixin.", + "items": { + "$ref": "Mixin" + }, + "type": "array" }, "name": { "description": "The fully qualified name of this interface, including package name\nfollowed by the interface's simple name.", "type": "string" }, - "syntax": { - "enumDescriptions": [ - "Syntax `proto2`.", - "Syntax `proto3`." - ], - "enum": [ - "SYNTAX_PROTO2", - "SYNTAX_PROTO3" - ], - "description": "The source syntax of the service.", - "type": "string" + "options": { + "description": "Any metadata attached to the interface.", + "items": { + "$ref": "Option" + }, + "type": "array" }, "sourceContext": { "$ref": "SourceContext", "description": "Source context for the protocol buffer service represented by this\nmessage." }, + "syntax": { + "description": "The source syntax of the service.", + "enum": [ + "SYNTAX_PROTO2", + "SYNTAX_PROTO3" + ], + "enumDescriptions": [ + "Syntax `proto2`.", + "Syntax `proto3`." + ], + "type": "string" + }, "version": { "description": "A version string for this interface. If specified, must have the form\n`major-version.minor-version`, as in `1.10`. If the minor version is\nomitted, it defaults to zero. If the entire version field is empty, the\nmajor version is derived from the package name, as outlined below. If the\nfield is not empty, the version in the package name will be verified to be\nconsistent with what is provided here.\n\nThe versioning schema uses [semantic\nversioning](http://semver.org) where the major version number\nindicates a breaking change and the minor version an additive,\nnon-breaking change. Both version numbers are signals to users\nwhat to expect from different versions, and should be carefully\nchosen based on the product plan.\n\nThe major version is also reflected in the package name of the\ninterface, which must end in `v\u003cmajor-version\u003e`, as in\n`google.feature.v1`. For major versions 0 and 1, the suffix can\nbe omitted. Zero major versions must only be used for\nexperimental, non-GA interfaces.\n", "type": "string" - }, - "mixins": { - "description": "Included interfaces. See Mixin.", - "type": "array", - "items": { - "$ref": "Mixin" - } } }, - "id": "Api" - }, - "MetricRule": { - "description": "Bind API methods to metrics. Binding a method to a metric causes that\nmetric's configured quota behaviors to apply to the method call.", - "type": "object", - "properties": { - "selector": { - "description": "Selects the methods to which this rule applies.\n\nRefer to selector for syntax details.", - "type": "string" - }, - "metricCosts": { - "additionalProperties": { - "format": "int64", - "type": "string" - }, - "description": "Metrics to update when the selected methods are called, and the associated\ncost applied to each metric.\n\nThe key of the map is the metric name, and the values are the amount\nincreased for the metric against which the quota limits are defined.\nThe value must not be negative.", - "type": "object" - } - }, - "id": "MetricRule" - }, - "Authentication": { - "properties": { - "rules": { - "description": "A list of authentication rules that apply to individual API methods.\n\n**NOTE:** All service configuration rules follow \"last one wins\" order.", - "type": "array", - "items": { - "$ref": "AuthenticationRule" - } - }, - "providers": { - "description": "Defines a set of authentication providers that a service supports.", - "type": "array", - "items": { - "$ref": "AuthProvider" - } - } - }, - "id": "Authentication", - "description": "`Authentication` defines the authentication configuration for an API.\n\nExample for an API targeted for external use:\n\n name: calendar.googleapis.com\n authentication:\n providers:\n - id: google_calendar_auth\n jwks_uri: https://www.googleapis.com/oauth2/v1/certs\n issuer: https://securetoken.google.com\n rules:\n - selector: \"*\"\n requirements:\n provider_id: google_calendar_auth", "type": "object" }, - "Operation": { - "type": "object", + "AuditConfig": { + "description": "Specifies the audit configuration for a service.\nThe configuration determines which permission types are logged, and what\nidentities, if any, are exempted from logging.\nAn AuditConfig must have one or more AuditLogConfigs.\n\nIf there are AuditConfigs for both `allServices` and a specific service,\nthe union of the two AuditConfigs is used for that service: the log_types\nspecified in each AuditConfig are enabled, and the exempted_members in each\nAuditLogConfig are exempted.\n\nExample Policy with multiple AuditConfigs:\n\n {\n \"audit_configs\": [\n {\n \"service\": \"allServices\"\n \"audit_log_configs\": [\n {\n \"log_type\": \"DATA_READ\",\n \"exempted_members\": [\n \"user:foo@gmail.com\"\n ]\n },\n {\n \"log_type\": \"DATA_WRITE\",\n },\n {\n \"log_type\": \"ADMIN_READ\",\n }\n ]\n },\n {\n \"service\": \"fooservice.googleapis.com\"\n \"audit_log_configs\": [\n {\n \"log_type\": \"DATA_READ\",\n },\n {\n \"log_type\": \"DATA_WRITE\",\n \"exempted_members\": [\n \"user:bar@gmail.com\"\n ]\n }\n ]\n }\n ]\n }\n\nFor fooservice, this policy enables DATA_READ, DATA_WRITE and ADMIN_READ\nlogging. It also exempts foo@gmail.com from DATA_READ logging, and\nbar@gmail.com from DATA_WRITE logging.", + "id": "AuditConfig", "properties": { - "response": { - "description": "The normal response of the operation in case of success. If the original\nmethod returns no data on success, such as `Delete`, the response is\n`google.protobuf.Empty`. If the original method is standard\n`Get`/`Create`/`Update`, the response should be the resource. For other\nmethods, the response should have the type `XxxResponse`, where `Xxx`\nis the original method name. For example, if the original method name\nis `TakeSnapshot()`, the inferred response type is\n`TakeSnapshotResponse`.", - "type": "object", - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - } - }, - "name": { - "description": "The server-assigned name, which is only unique within the same service that\noriginally returns it. If you use the default HTTP mapping, the\n`name` should have the format of `operations/some/unique/name`.", - "type": "string" - }, - "error": { - "$ref": "Status", - "description": "The error result of the operation in case of failure or cancellation." - }, - "metadata": { - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" + "auditLogConfigs": { + "description": "The configuration for logging of each type of permission.\nNext ID: 4", + "items": { + "$ref": "AuditLogConfig" }, - "description": "Service-specific metadata associated with the operation. It typically\ncontains progress information and common metadata such as create time.\nSome services might not provide such metadata. Any method that returns a\nlong-running operation should document the metadata type, if any.", - "type": "object" + "type": "array" }, - "done": { - "description": "If the value is `false`, it means the operation is still in progress.\nIf `true`, the operation is completed, and either `error` or `response` is\navailable.", - "type": "boolean" - } - }, - "id": "Operation", - "description": "This resource represents a long-running operation that is the result of a\nnetwork API call." - }, - "Page": { - "description": "Represents a documentation page. A page can contain subpages to represent\nnested documentation set structure.", - "type": "object", - "properties": { - "content": { - "description": "The Markdown content of the page. You can use \u003ccode\u003e(== include {path} ==)\u003c/code\u003e\nto include content from a Markdown file.", - "type": "string" - }, - "subpages": { - "description": "Subpages of this page. The order of subpages specified here will be\nhonored in the generated docset.", - "type": "array", - "items": { - "$ref": "Page" - } - }, - "name": { - "description": "The name of the page. It will be used as an identity of the page to\ngenerate URI of the page, text of the link to this page in navigation,\netc. The full page name (start from the root page name to this page\nconcatenated with `.`) can be used as reference to the page in your\ndocumentation. For example:\n\u003cpre\u003e\u003ccode\u003epages:\n- name: Tutorial\n content: (== include tutorial.md ==)\n subpages:\n - name: Java\n content: (== include tutorial_java.md ==)\n\u003c/code\u003e\u003c/pre\u003e\nYou can reference `Java` page using Markdown reference link syntax:\n`Java`.", + "service": { + "description": "Specifies a service that will be enabled for audit logging.\nFor example, `storage.googleapis.com`, `cloudsql.googleapis.com`.\n`allServices` is a special value that covers all services.", "type": "string" } }, - "id": "Page" + "type": "object" }, - "Status": { - "description": "The `Status` type defines a logical error model that is suitable for different\nprogramming environments, including REST APIs and RPC APIs. It is used by\n[gRPC](https://github.com/grpc). The error model is designed to be:\n\n- Simple to use and understand for most users\n- Flexible enough to meet unexpected needs\n\n# Overview\n\nThe `Status` message contains three pieces of data: error code, error message,\nand error details. The error code should be an enum value of\ngoogle.rpc.Code, but it may accept additional error codes if needed. The\nerror message should be a developer-facing English message that helps\ndevelopers *understand* and *resolve* the error. If a localized user-facing\nerror message is needed, put the localized message in the error details or\nlocalize it in the client. The optional error details may contain arbitrary\ninformation about the error. There is a predefined set of error detail types\nin the package `google.rpc` that can be used for common error conditions.\n\n# Language mapping\n\nThe `Status` message is the logical representation of the error model, but it\nis not necessarily the actual wire format. When the `Status` message is\nexposed in different client libraries and different wire protocols, it can be\nmapped differently. For example, it will likely be mapped to some exceptions\nin Java, but more likely mapped to some error codes in C.\n\n# Other uses\n\nThe error model and the `Status` message can be used in a variety of\nenvironments, either with or without APIs, to provide a\nconsistent developer experience across different environments.\n\nExample uses of this error model include:\n\n- Partial errors. If a service needs to return partial errors to the client,\n it may embed the `Status` in the normal response to indicate the partial\n errors.\n\n- Workflow errors. A typical workflow has multiple steps. Each step may\n have a `Status` message for error reporting.\n\n- Batch operations. If a client uses batch request and batch response, the\n `Status` message should be used directly inside batch response, one for\n each error sub-response.\n\n- Asynchronous operations. If an API call embeds asynchronous operation\n results in its response, the status of those operations should be\n represented directly using the `Status` message.\n\n- Logging. If some API errors are stored in logs, the message `Status` could\n be used directly after any stripping needed for security/privacy reasons.", - "type": "object", + "AuditLogConfig": { + "description": "Provides the configuration for logging a type of permissions.\nExample:\n\n {\n \"audit_log_configs\": [\n {\n \"log_type\": \"DATA_READ\",\n \"exempted_members\": [\n \"user:foo@gmail.com\"\n ]\n },\n {\n \"log_type\": \"DATA_WRITE\",\n }\n ]\n }\n\nThis enables 'DATA_READ' and 'DATA_WRITE' logging, while exempting\nfoo@gmail.com from DATA_READ logging.", + "id": "AuditLogConfig", "properties": { - "code": { - "description": "The status code, which should be an enum value of google.rpc.Code.", - "format": "int32", - "type": "integer" - }, - "message": { - "description": "A developer-facing error message, which should be in English. Any\nuser-facing error message should be localized and sent in the\ngoogle.rpc.Status.details field, or localized by the client.", - "type": "string" - }, - "details": { - "description": "A list of messages that carry the error details. There is a common set of\nmessage types for APIs to use.", - "type": "array", - "items": { - "type": "object", - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - } - } - } - }, - "id": "Status" - }, - "Binding": { - "properties": { - "role": { - "description": "Role that is assigned to `members`.\nFor example, `roles/viewer`, `roles/editor`, or `roles/owner`.\nRequired", - "type": "string" - }, - "condition": { - "description": "The condition that is associated with this binding.\nNOTE: an unsatisfied condition will not allow user access via current\nbinding. Different bindings, including their conditions, are examined\nindependently.\nThis field is only visible as GOOGLE_INTERNAL or CONDITION_TRUSTED_TESTER.", - "$ref": "Expr" - }, - "members": { - "description": "Specifies the identities requesting access for a Cloud Platform resource.\n`members` can have the following values:\n\n* `allUsers`: A special identifier that represents anyone who is\n on the internet; with or without a Google account.\n\n* `allAuthenticatedUsers`: A special identifier that represents anyone\n who is authenticated with a Google account or a service account.\n\n* `user:{emailid}`: An email address that represents a specific Google\n account. For example, `alice@gmail.com` or `joe@example.com`.\n\n\n* `serviceAccount:{emailid}`: An email address that represents a service\n account. For example, `my-other-app@appspot.gserviceaccount.com`.\n\n* `group:{emailid}`: An email address that represents a Google group.\n For example, `admins@example.com`.\n\n\n* `domain:{domain}`: A Google Apps domain name that represents all the\n users of that domain. For example, `google.com` or `example.com`.\n\n", - "type": "array", + "exemptedMembers": { + "description": "Specifies the identities that do not cause logging for this type of\npermission.\nFollows the same format of Binding.members.", "items": { "type": "string" - } + }, + "type": "array" + }, + "logType": { + "description": "The log type that this config enables.", + "enum": [ + "LOG_TYPE_UNSPECIFIED", + "ADMIN_READ", + "DATA_WRITE", + "DATA_READ" + ], + "enumDescriptions": [ + "Default case. Should never be this.", + "Admin reads. Example: CloudIAM getIamPolicy", + "Data writes. Example: CloudSQL Users create", + "Data reads. Example: CloudSQL Users list" + ], + "type": "string" } }, - "id": "Binding", - "description": "Associates `members` with a `role`.", "type": "object" }, "AuthProvider": { "description": "Configuration for an anthentication provider, including support for\n[JSON Web Token (JWT)](https://tools.ietf.org/html/draft-ietf-oauth-json-web-token-32).", - "type": "object", + "id": "AuthProvider", "properties": { - "jwksUri": { - "description": "URL of the provider's public key set to validate signature of the JWT. See\n[OpenID Discovery](https://openid.net/specs/openid-connect-discovery-1_0.html#ProviderMetadata).\nOptional if the key set document:\n - can be retrieved from\n [OpenID Discovery](https://openid.net/specs/openid-connect-discovery-1_0.html\n of the issuer.\n - can be inferred from the email domain of the issuer (e.g. a Google service account).\n\nExample: https://www.googleapis.com/oauth2/v1/certs", - "type": "string" - }, "audiences": { "description": "The list of JWT\n[audiences](https://tools.ietf.org/html/draft-ietf-oauth-json-web-token-32#section-4.1.3).\nthat are allowed to access. A JWT containing any of these audiences will\nbe accepted. When this setting is absent, only JWTs with audience\n\"https://Service_name/API_name\"\nwill be accepted. For example, if no audiences are in the setting,\nLibraryService API will only accept JWTs with the following audience\n\"https://library-example.googleapis.com/google.example.library.v1.LibraryService\".\n\nExample:\n\n audiences: bookstore_android.apps.googleusercontent.com,\n bookstore_web.apps.googleusercontent.com", "type": "string" }, + "authorizationUrl": { + "description": "Redirect URL if JWT token is required but no present or is expired.\nImplement authorizationUrl of securityDefinitions in OpenAPI spec.", + "type": "string" + }, "id": { "description": "The unique identifier of the auth provider. It will be referred to by\n`AuthRequirement.provider_id`.\n\nExample: \"bookstore_auth\".", "type": "string" @@ -689,976 +1021,671 @@ "description": "Identifies the principal that issued the JWT. See\nhttps://tools.ietf.org/html/draft-ietf-oauth-json-web-token-32#section-4.1.1\nUsually a URL or an email address.\n\nExample: https://securetoken.google.com\nExample: 1234567-compute@developer.gserviceaccount.com", "type": "string" }, - "authorizationUrl": { - "type": "string", - "description": "Redirect URL if JWT token is required but no present or is expired.\nImplement authorizationUrl of securityDefinitions in OpenAPI spec." + "jwksUri": { + "description": "URL of the provider's public key set to validate signature of the JWT. See\n[OpenID Discovery](https://openid.net/specs/openid-connect-discovery-1_0.html#ProviderMetadata).\nOptional if the key set document:\n - can be retrieved from\n [OpenID Discovery](https://openid.net/specs/openid-connect-discovery-1_0.html\n of the issuer.\n - can be inferred from the email domain of the issuer (e.g. a Google service account).\n\nExample: https://www.googleapis.com/oauth2/v1/certs", + "type": "string" } }, - "id": "AuthProvider" + "type": "object" }, - "Service": { - "id": "Service", - "description": "`Service` is the root object of Google service configuration schema. It\ndescribes basic information about a service, such as the name and the\ntitle, and delegates other aspects to sub-sections. Each sub-section is\neither a proto message or a repeated proto message that configures a\nspecific aspect, such as auth. See each proto message definition for details.\n\nExample:\n\n type: google.api.Service\n config_version: 3\n name: calendar.googleapis.com\n title: Google Calendar API\n apis:\n - name: google.calendar.v3.Calendar\n authentication:\n providers:\n - id: google_calendar_auth\n jwks_uri: https://www.googleapis.com/oauth2/v1/certs\n issuer: https://securetoken.google.com\n rules:\n - selector: \"*\"\n requirements:\n provider_id: google_calendar_auth", - "type": "object", + "AuthRequirement": { + "description": "User-defined authentication requirements, including support for\n[JSON Web Token (JWT)](https://tools.ietf.org/html/draft-ietf-oauth-json-web-token-32).", + "id": "AuthRequirement", "properties": { - "usage": { - "$ref": "Usage", - "description": "Configuration controlling usage of this service." - }, - "metrics": { - "description": "Defines the metrics used by this service.", - "type": "array", - "items": { - "$ref": "MetricDescriptor" - } - }, - "authentication": { - "$ref": "Authentication", - "description": "Auth configuration." - }, - "experimental": { - "description": "Experimental configuration.", - "$ref": "Experimental" - }, - "control": { - "description": "Configuration for the service control plane.", - "$ref": "Control" - }, - "configVersion": { - "description": "The semantic version of the service configuration. The config version\naffects the interpretation of the service configuration. For example,\ncertain features are enabled by default for certain config versions.\nThe latest config version is `3`.", - "format": "uint32", - "type": "integer" - }, - "monitoring": { - "description": "Monitoring configuration.", - "$ref": "Monitoring" - }, - "systemTypes": { - "description": "A list of all proto message types included in this API service.\nIt serves similar purpose as [google.api.Service.types], except that\nthese types are not needed by user-defined APIs. Therefore, they will not\nshow up in the generated discovery doc. This field should only be used\nto define system APIs in ESF.", - "type": "array", - "items": { - "$ref": "Type" - } - }, - "producerProjectId": { - "description": "The Google project that owns this service.", + "audiences": { + "description": "NOTE: This will be deprecated soon, once AuthProvider.audiences is\nimplemented and accepted in all the runtime components.\n\nThe list of JWT\n[audiences](https://tools.ietf.org/html/draft-ietf-oauth-json-web-token-32#section-4.1.3).\nthat are allowed to access. A JWT containing any of these audiences will\nbe accepted. When this setting is absent, only JWTs with audience\n\"https://Service_name/API_name\"\nwill be accepted. For example, if no audiences are in the setting,\nLibraryService API will only accept JWTs with the following audience\n\"https://library-example.googleapis.com/google.example.library.v1.LibraryService\".\n\nExample:\n\n audiences: bookstore_android.apps.googleusercontent.com,\n bookstore_web.apps.googleusercontent.com", "type": "string" }, - "visibility": { - "description": "API visibility configuration.", - "$ref": "Visibility" - }, - "quota": { - "$ref": "Quota", - "description": "Quota configuration." - }, - "billing": { - "$ref": "Billing", - "description": "Billing configuration." - }, - "name": { - "description": "The DNS address at which this service is available,\ne.g. `calendar.googleapis.com`.", + "providerId": { + "description": "id from authentication provider.\n\nExample:\n\n provider_id: bookstore_auth", "type": "string" - }, - "customError": { - "$ref": "CustomError", - "description": "Custom error configuration." - }, - "title": { - "description": "The product title for this service.", - "type": "string" - }, - "endpoints": { - "description": "Configuration for network endpoints. If this is empty, then an endpoint\nwith the same name as the service is automatically generated to service all\ndefined APIs.", - "type": "array", + } + }, + "type": "object" + }, + "Authentication": { + "description": "`Authentication` defines the authentication configuration for an API.\n\nExample for an API targeted for external use:\n\n name: calendar.googleapis.com\n authentication:\n providers:\n - id: google_calendar_auth\n jwks_uri: https://www.googleapis.com/oauth2/v1/certs\n issuer: https://securetoken.google.com\n rules:\n - selector: \"*\"\n requirements:\n provider_id: google_calendar_auth", + "id": "Authentication", + "properties": { + "providers": { + "description": "Defines a set of authentication providers that a service supports.", "items": { - "$ref": "Endpoint" - } - }, - "logs": { - "description": "Defines the logs used by this service.", - "type": "array", - "items": { - "$ref": "LogDescriptor" - } - }, - "apis": { - "type": "array", - "items": { - "$ref": "Api" + "$ref": "AuthProvider" }, - "description": "A list of API interfaces exported by this service. Only the `name` field\nof the google.protobuf.Api needs to be provided by the configuration\nauthor, as the remaining fields will be derived from the IDL during the\nnormalization process. It is an error to specify an API interface here\nwhich cannot be resolved against the associated IDL files." + "type": "array" }, - "types": { - "description": "A list of all proto message types included in this API service.\nTypes referenced directly or indirectly by the `apis` are\nautomatically included. Messages which are not referenced but\nshall be included, such as types used by the `google.protobuf.Any` type,\nshould be listed here by name. Example:\n\n types:\n - name: google.protobuf.Int32", - "type": "array", + "rules": { + "description": "A list of authentication rules that apply to individual API methods.\n\n**NOTE:** All service configuration rules follow \"last one wins\" order.", "items": { - "$ref": "Type" - } - }, - "sourceInfo": { - "$ref": "SourceInfo", - "description": "Output only. The source information for this configuration if available." - }, - "http": { - "$ref": "Http", - "description": "HTTP configuration." - }, - "systemParameters": { - "$ref": "SystemParameters", - "description": "System parameter configuration." - }, - "backend": { - "description": "API backend configuration.", - "$ref": "Backend" - }, - "documentation": { - "description": "Additional API documentation.", - "$ref": "Documentation" - }, - "monitoredResources": { - "description": "Defines the monitored resources used by this service. This is required\nby the Service.monitoring and Service.logging configurations.", - "type": "array", - "items": { - "$ref": "MonitoredResourceDescriptor" - } - }, - "logging": { - "$ref": "Logging", - "description": "Logging configuration." - }, - "context": { - "$ref": "Context", - "description": "Context configuration." - }, - "enums": { - "description": "A list of all enum types included in this API service. Enums\nreferenced directly or indirectly by the `apis` are automatically\nincluded. Enums which are not referenced but shall be included\nshould be listed here by name. Example:\n\n enums:\n - name: google.someapi.v1.SomeEnum", - "type": "array", - "items": { - "$ref": "Enum" - } - }, - "id": { - "description": "A unique ID for a specific instance of this message, typically assigned\nby the client for tracking purpose. If empty, the server may choose to\ngenerate one instead.", - "type": "string" - } - } - }, - "EnumValue": { - "description": "Enum value definition.", - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "Enum value name." - }, - "options": { - "description": "Protocol buffer options.", - "type": "array", - "items": { - "$ref": "Option" - } - }, - "number": { - "description": "Enum value number.", - "format": "int32", - "type": "integer" + "$ref": "AuthenticationRule" + }, + "type": "array" } }, - "id": "EnumValue" + "type": "object" }, - "ListOperationsResponse": { - "description": "The response message for Operations.ListOperations.", - "type": "object", + "AuthenticationRule": { + "description": "Authentication rules for the service.\n\nBy default, if a method has any authentication requirements, every request\nmust include a valid credential matching one of the requirements.\nIt's an error to include more than one kind of credential in a single\nrequest.\n\nIf a method doesn't have any auth requirements, request credentials will be\nignored.", + "id": "AuthenticationRule", "properties": { - "operations": { - "description": "A list of operations that matches the specified filter in the request.", - "type": "array", - "items": { - "$ref": "Operation" - } + "allowWithoutCredential": { + "description": "Whether to allow requests without a credential. The credential can be\nan OAuth token, Google cookies (first-party auth) or EndUserCreds.\n\nFor requests without credentials, if the service control environment is\nspecified, each incoming request **must** be associated with a service\nconsumer. This can be done by passing an API key that belongs to a consumer\nproject.", + "type": "boolean" }, - "nextPageToken": { - "description": "The standard List next-page token.", + "customAuth": { + "$ref": "CustomAuthRequirements", + "description": "Configuration for custom authentication." + }, + "oauth": { + "$ref": "OAuthRequirements", + "description": "The requirements for OAuth credentials." + }, + "requirements": { + "description": "Requirements for additional authentication providers.", + "items": { + "$ref": "AuthRequirement" + }, + "type": "array" + }, + "selector": { + "description": "Selects the methods to which this rule applies.\n\nRefer to selector for syntax details.", "type": "string" } }, - "id": "ListOperationsResponse" + "type": "object" }, - "CustomHttpPattern": { - "type": "object", + "AuthorizationConfig": { + "description": "Configuration of authorization.\n\nThis section determines the authorization provider, if unspecified, then no\nauthorization check will be done.\n\nExample:\n\n experimental:\n authorization:\n provider: firebaserules.googleapis.com", + "id": "AuthorizationConfig", "properties": { - "path": { - "description": "The path matched by this custom verb.", - "type": "string" - }, - "kind": { - "description": "The name of this custom HTTP verb.", + "provider": { + "description": "The name of the authorization provider, such as\nfirebaserules.googleapis.com.", "type": "string" } }, - "id": "CustomHttpPattern", - "description": "A custom pattern is used for defining custom HTTP verb." + "type": "object" }, - "OperationMetadata": { - "description": "The metadata associated with a long running operation resource.", - "type": "object", + "Backend": { + "description": "`Backend` defines the backend configuration for a service.", + "id": "Backend", "properties": { - "resourceNames": { - "description": "The full name of the resources that this operation is directly\nassociated with.", - "type": "array", + "rules": { + "description": "A list of API backend rules that apply to individual API methods.\n\n**NOTE:** All service configuration rules follow \"last one wins\" order.", + "items": { + "$ref": "BackendRule" + }, + "type": "array" + } + }, + "type": "object" + }, + "BackendRule": { + "description": "A backend rule provides configuration for an individual API element.", + "id": "BackendRule", + "properties": { + "address": { + "description": "The address of the API backend.", + "type": "string" + }, + "deadline": { + "description": "The number of seconds to wait for a response from a request. The default\ndeadline for gRPC is infinite (no deadline) and HTTP requests is 5 seconds.", + "format": "double", + "type": "number" + }, + "minDeadline": { + "description": "Minimum deadline in seconds needed for this method. Calls having deadline\nvalue lower than this will be rejected.", + "format": "double", + "type": "number" + }, + "selector": { + "description": "Selects the methods to which this rule applies.\n\nRefer to selector for syntax details.", + "type": "string" + } + }, + "type": "object" + }, + "Billing": { + "description": "Billing related configuration of the service.\n\nThe following example shows how to configure monitored resources and metrics\nfor billing:\n\n monitored_resources:\n - type: library.googleapis.com/branch\n labels:\n - key: /city\n description: The city where the library branch is located in.\n - key: /name\n description: The name of the branch.\n metrics:\n - name: library.googleapis.com/book/borrowed_count\n metric_kind: DELTA\n value_type: INT64\n billing:\n consumer_destinations:\n - monitored_resource: library.googleapis.com/branch\n metrics:\n - library.googleapis.com/book/borrowed_count", + "id": "Billing", + "properties": { + "consumerDestinations": { + "description": "Billing configurations for sending metrics to the consumer project.\nThere can be multiple consumer destinations per service, each one must have\na different monitored resource type. A metric can be used in at most\none consumer destination.", + "items": { + "$ref": "BillingDestination" + }, + "type": "array" + } + }, + "type": "object" + }, + "BillingDestination": { + "description": "Configuration of a specific billing destination (Currently only support\nbill against consumer project).", + "id": "BillingDestination", + "properties": { + "metrics": { + "description": "Names of the metrics to report to this billing destination.\nEach name must be defined in Service.metrics section.", "items": { "type": "string" - } + }, + "type": "array" }, - "steps": { - "description": "Detailed status information for each step. The order is undetermined.", - "type": "array", - "items": { - "$ref": "Step" - } - }, - "progressPercentage": { - "description": "Percentage of completion of this operation, ranging from 0 to 100.", - "format": "int32", - "type": "integer" - }, - "startTime": { - "description": "The start time of the operation.", - "format": "google-datetime", - "type": "string" - } - }, - "id": "OperationMetadata" - }, - "SystemParameterRule": { - "description": "Define a system parameter rule mapping system parameter definitions to\nmethods.", - "type": "object", - "properties": { - "selector": { - "description": "Selects the methods to which this rule applies. Use '*' to indicate all\nmethods in all APIs.\n\nRefer to selector for syntax details.", - "type": "string" - }, - "parameters": { - "description": "Define parameters. Multiple names may be defined for a parameter.\nFor a given method call, only one of them should be used. If multiple\nnames are used the behavior is implementation-dependent.\nIf none of the specified names are present the behavior is\nparameter-dependent.", - "type": "array", - "items": { - "$ref": "SystemParameter" - } - } - }, - "id": "SystemParameterRule" - }, - "HttpRule": { - "description": "`HttpRule` defines the mapping of an RPC method to one or more HTTP\nREST API methods. The mapping specifies how different portions of the RPC\nrequest message are mapped to URL path, URL query parameters, and\nHTTP request body. The mapping is typically specified as an\n`google.api.http` annotation on the RPC method,\nsee \"google/api/annotations.proto\" for details.\n\nThe mapping consists of a field specifying the path template and\nmethod kind. The path template can refer to fields in the request\nmessage, as in the example below which describes a REST GET\noperation on a resource collection of messages:\n\n\n service Messaging {\n rpc GetMessage(GetMessageRequest) returns (Message) {\n option (google.api.http).get = \"/v1/messages/{message_id}/{sub.subfield}\";\n }\n }\n message GetMessageRequest {\n message SubMessage {\n string subfield = 1;\n }\n string message_id = 1; // mapped to the URL\n SubMessage sub = 2; // `sub.subfield` is url-mapped\n }\n message Message {\n string text = 1; // content of the resource\n }\n\nThe same http annotation can alternatively be expressed inside the\n`GRPC API Configuration` YAML file.\n\n http:\n rules:\n - selector: \u003cproto_package_name\u003e.Messaging.GetMessage\n get: /v1/messages/{message_id}/{sub.subfield}\n\nThis definition enables an automatic, bidrectional mapping of HTTP\nJSON to RPC. Example:\n\nHTTP | RPC\n-----|-----\n`GET /v1/messages/123456/foo` | `GetMessage(message_id: \"123456\" sub: SubMessage(subfield: \"foo\"))`\n\nIn general, not only fields but also field paths can be referenced\nfrom a path pattern. Fields mapped to the path pattern cannot be\nrepeated and must have a primitive (non-message) type.\n\nAny fields in the request message which are not bound by the path\npattern automatically become (optional) HTTP query\nparameters. Assume the following definition of the request message:\n\n\n service Messaging {\n rpc GetMessage(GetMessageRequest) returns (Message) {\n option (google.api.http).get = \"/v1/messages/{message_id}\";\n }\n }\n message GetMessageRequest {\n message SubMessage {\n string subfield = 1;\n }\n string message_id = 1; // mapped to the URL\n int64 revision = 2; // becomes a parameter\n SubMessage sub = 3; // `sub.subfield` becomes a parameter\n }\n\n\nThis enables a HTTP JSON to RPC mapping as below:\n\nHTTP | RPC\n-----|-----\n`GET /v1/messages/123456?revision=2&sub.subfield=foo` | `GetMessage(message_id: \"123456\" revision: 2 sub: SubMessage(subfield: \"foo\"))`\n\nNote that fields which are mapped to HTTP parameters must have a\nprimitive type or a repeated primitive type. Message types are not\nallowed. In the case of a repeated type, the parameter can be\nrepeated in the URL, as in `...?param=A¶m=B`.\n\nFor HTTP method kinds which allow a request body, the `body` field\nspecifies the mapping. Consider a REST update method on the\nmessage resource collection:\n\n\n service Messaging {\n rpc UpdateMessage(UpdateMessageRequest) returns (Message) {\n option (google.api.http) = {\n put: \"/v1/messages/{message_id}\"\n body: \"message\"\n };\n }\n }\n message UpdateMessageRequest {\n string message_id = 1; // mapped to the URL\n Message message = 2; // mapped to the body\n }\n\n\nThe following HTTP JSON to RPC mapping is enabled, where the\nrepresentation of the JSON in the request body is determined by\nprotos JSON encoding:\n\nHTTP | RPC\n-----|-----\n`PUT /v1/messages/123456 { \"text\": \"Hi!\" }` | `UpdateMessage(message_id: \"123456\" message { text: \"Hi!\" })`\n\nThe special name `*` can be used in the body mapping to define that\nevery field not bound by the path template should be mapped to the\nrequest body. This enables the following alternative definition of\nthe update method:\n\n service Messaging {\n rpc UpdateMessage(Message) returns (Message) {\n option (google.api.http) = {\n put: \"/v1/messages/{message_id}\"\n body: \"*\"\n };\n }\n }\n message Message {\n string message_id = 1;\n string text = 2;\n }\n\n\nThe following HTTP JSON to RPC mapping is enabled:\n\nHTTP | RPC\n-----|-----\n`PUT /v1/messages/123456 { \"text\": \"Hi!\" }` | `UpdateMessage(message_id: \"123456\" text: \"Hi!\")`\n\nNote that when using `*` in the body mapping, it is not possible to\nhave HTTP parameters, as all fields not bound by the path end in\nthe body. This makes this option more rarely used in practice of\ndefining REST APIs. The common usage of `*` is in custom methods\nwhich don't use the URL at all for transferring data.\n\nIt is possible to define multiple HTTP methods for one RPC by using\nthe `additional_bindings` option. Example:\n\n service Messaging {\n rpc GetMessage(GetMessageRequest) returns (Message) {\n option (google.api.http) = {\n get: \"/v1/messages/{message_id}\"\n additional_bindings {\n get: \"/v1/users/{user_id}/messages/{message_id}\"\n }\n };\n }\n }\n message GetMessageRequest {\n string message_id = 1;\n string user_id = 2;\n }\n\n\nThis enables the following two alternative HTTP JSON to RPC\nmappings:\n\nHTTP | RPC\n-----|-----\n`GET /v1/messages/123456` | `GetMessage(message_id: \"123456\")`\n`GET /v1/users/me/messages/123456` | `GetMessage(user_id: \"me\" message_id: \"123456\")`\n\n# Rules for HTTP mapping\n\nThe rules for mapping HTTP path, query parameters, and body fields\nto the request message are as follows:\n\n1. The `body` field specifies either `*` or a field path, or is\n omitted. If omitted, it indicates there is no HTTP request body.\n2. Leaf fields (recursive expansion of nested messages in the\n request) can be classified into three types:\n (a) Matched in the URL template.\n (b) Covered by body (if body is `*`, everything except (a) fields;\n else everything under the body field)\n (c) All other fields.\n3. URL query parameters found in the HTTP request are mapped to (c) fields.\n4. Any body sent with an HTTP request can contain only (b) fields.\n\nThe syntax of the path template is as follows:\n\n Template = \"/\" Segments [ Verb ] ;\n Segments = Segment { \"/\" Segment } ;\n Segment = \"*\" | \"**\" | LITERAL | Variable ;\n Variable = \"{\" FieldPath [ \"=\" Segments ] \"}\" ;\n FieldPath = IDENT { \".\" IDENT } ;\n Verb = \":\" LITERAL ;\n\nThe syntax `*` matches a single path segment. The syntax `**` matches zero\nor more path segments, which must be the last part of the path except the\n`Verb`. The syntax `LITERAL` matches literal text in the path.\n\nThe syntax `Variable` matches part of the URL path as specified by its\ntemplate. A variable template must not contain other variables. If a variable\nmatches a single path segment, its template may be omitted, e.g. `{var}`\nis equivalent to `{var=*}`.\n\nIf a variable contains exactly one path segment, such as `\"{var}\"` or\n`\"{var=*}\"`, when such a variable is expanded into a URL path, all characters\nexcept `[-_.~0-9a-zA-Z]` are percent-encoded. Such variables show up in the\nDiscovery Document as `{var}`.\n\nIf a variable contains one or more path segments, such as `\"{var=foo/*}\"`\nor `\"{var=**}\"`, when such a variable is expanded into a URL path, all\ncharacters except `[-_.~/0-9a-zA-Z]` are percent-encoded. Such variables\nshow up in the Discovery Document as `{+var}`.\n\nNOTE: While the single segment variable matches the semantics of\n[RFC 6570](https://tools.ietf.org/html/rfc6570) Section 3.2.2\nSimple String Expansion, the multi segment variable **does not** match\nRFC 6570 Reserved Expansion. The reason is that the Reserved Expansion\ndoes not expand special characters like `?` and `#`, which would lead\nto invalid URLs.\n\nNOTE: the field paths in variables and in the `body` must not refer to\nrepeated fields or map fields.", - "type": "object", - "properties": { - "mediaUpload": { - "$ref": "MediaUpload", - "description": "Use this only for Scotty Requests. Do not use this for media support using\nBytestream, add instead\n[][google.bytestream.RestByteStream] as an API to your\nconfiguration for Bytestream methods." - }, - "body": { - "description": "The name of the request field whose value is mapped to the HTTP body, or\n`*` for mapping all fields not captured by the path pattern to the HTTP\nbody. NOTE: the referred field must not be a repeated field and must be\npresent at the top-level of request message type.", - "type": "string" - }, - "selector": { - "description": "Selects methods to which this rule applies.\n\nRefer to selector for syntax details.", - "type": "string" - }, - "post": { - "type": "string", - "description": "Used for creating a resource." - }, - "custom": { - "$ref": "CustomHttpPattern", - "description": "The custom pattern is used for specifying an HTTP method that is not\nincluded in the `pattern` field, such as HEAD, or \"*\" to leave the\nHTTP method unspecified for this rule. The wild-card rule is useful\nfor services that provide content to Web (HTML) clients." - }, - "mediaDownload": { - "$ref": "MediaDownload", - "description": "Use this only for Scotty Requests. Do not use this for bytestream methods.\nFor media support, add instead [][google.bytestream.RestByteStream] as an\nAPI to your configuration." - }, - "get": { - "description": "Used for listing and getting information about resources.", - "type": "string" - }, - "patch": { - "description": "Used for updating a resource.", - "type": "string" - }, - "put": { - "description": "Used for updating a resource.", - "type": "string" - }, - "additionalBindings": { - "description": "Additional HTTP bindings for the selector. Nested bindings must\nnot contain an `additional_bindings` field themselves (that is,\nthe nesting may only be one level deep).", - "type": "array", - "items": { - "$ref": "HttpRule" - } - }, - "delete": { - "type": "string", - "description": "Used for deleting a resource." - } - }, - "id": "HttpRule" - }, - "VisibilityRule": { - "id": "VisibilityRule", - "description": "A visibility rule provides visibility configuration for an individual API\nelement.", - "type": "object", - "properties": { - "restriction": { - "type": "string", - "description": "A comma-separated list of visibility labels that apply to the `selector`.\nAny of the listed labels can be used to grant the visibility.\n\nIf a rule has multiple labels, removing one of the labels but not all of\nthem can break clients.\n\nExample:\n\n visibility:\n rules:\n - selector: google.calendar.Calendar.EnhancedSearch\n restriction: GOOGLE_INTERNAL, TRUSTED_TESTER\n\nRemoving GOOGLE_INTERNAL from this restriction will break clients that\nrely on this method and only had access to it through GOOGLE_INTERNAL." - }, - "selector": { - "description": "Selects methods, messages, fields, enums, etc. to which this rule applies.\n\nRefer to selector for syntax details.", - "type": "string" - } - } - }, - "MonitoringDestination": { - "description": "Configuration of a specific monitoring destination (the producer project\nor the consumer project).", - "type": "object", - "properties": { "monitoredResource": { "description": "The monitored resource type. The type must be defined in\nService.monitored_resources section.", "type": "string" - }, - "metrics": { - "description": "Names of the metrics to report to this monitoring destination.\nEach name must be defined in Service.metrics section.", - "type": "array", + } + }, + "type": "object" + }, + "Binding": { + "description": "Associates `members` with a `role`.", + "id": "Binding", + "properties": { + "members": { + "description": "Specifies the identities requesting access for a Cloud Platform resource.\n`members` can have the following values:\n\n* `allUsers`: A special identifier that represents anyone who is\n on the internet; with or without a Google account.\n\n* `allAuthenticatedUsers`: A special identifier that represents anyone\n who is authenticated with a Google account or a service account.\n\n* `user:{emailid}`: An email address that represents a specific Google\n account. For example, `alice@gmail.com` or `joe@example.com`.\n\n\n* `serviceAccount:{emailid}`: An email address that represents a service\n account. For example, `my-other-app@appspot.gserviceaccount.com`.\n\n* `group:{emailid}`: An email address that represents a Google group.\n For example, `admins@example.com`.\n\n\n* `domain:{domain}`: A Google Apps domain name that represents all the\n users of that domain. For example, `google.com` or `example.com`.\n\n", "items": { "type": "string" - } + }, + "type": "array" + }, + "role": { + "description": "Role that is assigned to `members`.\nFor example, `roles/viewer`, `roles/editor`, or `roles/owner`.\nRequired", + "type": "string" } }, - "id": "MonitoringDestination" + "type": "object" }, - "Visibility": { - "type": "object", + "ChangeReport": { + "description": "Change report associated with a particular service configuration.\n\nIt contains a list of ConfigChanges based on the comparison between\ntwo service configurations.", + "id": "ChangeReport", "properties": { - "rules": { - "description": "A list of visibility rules that apply to individual API elements.\n\n**NOTE:** All service configuration rules follow \"last one wins\" order.", - "type": "array", + "configChanges": { + "description": "List of changes between two service configurations.\nThe changes will be alphabetically sorted based on the identifier\nof each change.\nA ConfigChange identifier is a dot separated path to the configuration.\nExample: visibility.rules[selector='LibraryService.CreateBook'].restriction", "items": { - "$ref": "VisibilityRule" - } + "$ref": "ConfigChange" + }, + "type": "array" } }, - "id": "Visibility", - "description": "`Visibility` defines restrictions for the visibility of service\nelements. Restrictions are specified using visibility labels\n(e.g., TRUSTED_TESTER) that are elsewhere linked to users and projects.\n\nUsers and projects can have access to more than one visibility label. The\neffective visibility for multiple labels is the union of each label's\nelements, plus any unrestricted elements.\n\nIf an element and its parents have no restrictions, visibility is\nunconditionally granted.\n\nExample:\n\n visibility:\n rules:\n - selector: google.calendar.Calendar.EnhancedSearch\n restriction: TRUSTED_TESTER\n - selector: google.calendar.Calendar.Delegate\n restriction: GOOGLE_INTERNAL\n\nHere, all methods are publicly visible except for the restricted methods\nEnhancedSearch and Delegate." + "type": "object" }, "ConfigChange": { "description": "Output generated from semantically comparing two versions of a service\nconfiguration.\n\nIncludes detailed information about a field that have changed with\napplicable advice about potential consequences for the change, such as\nbackwards-incompatibility.", - "type": "object", + "id": "ConfigChange", "properties": { - "newValue": { - "description": "Value of the changed object in the new Service configuration,\nin JSON format. This field will not be populated if ChangeType == REMOVED.", - "type": "string" + "advices": { + "description": "Collection of advice provided for this change, useful for determining the\npossible impact of this change.", + "items": { + "$ref": "Advice" + }, + "type": "array" }, "changeType": { + "description": "The type for this change, either ADDED, REMOVED, or MODIFIED.", "enum": [ "CHANGE_TYPE_UNSPECIFIED", "ADDED", "REMOVED", "MODIFIED" ], - "description": "The type for this change, either ADDED, REMOVED, or MODIFIED.", - "type": "string", "enumDescriptions": [ "No value was provided.", "The changed object exists in the 'new' service configuration, but not\nin the 'old' service configuration.", "The changed object exists in the 'old' service configuration, but not\nin the 'new' service configuration.", "The changed object exists in both service configurations, but its value\nis different." - ] + ], + "type": "string" }, "element": { "description": "Object hierarchy path to the change, with levels separated by a '.'\ncharacter. For repeated fields, an applicable unique identifier field is\nused for the index (usually selector, name, or id). For maps, the term\n'key' is used. If the field has no unique identifier, the numeric index\nis used.\nExamples:\n- visibility.rules[selector==\"google.LibraryService.CreateBook\"].restriction\n- quota.metric_rules[selector==\"google\"].metric_costs[key==\"reads\"].value\n- logging.producer_destinations[0]", "type": "string" }, - "oldValue": { - "type": "string", - "description": "Value of the changed object in the old Service configuration,\nin JSON format. This field will not be populated if ChangeType == ADDED." + "newValue": { + "description": "Value of the changed object in the new Service configuration,\nin JSON format. This field will not be populated if ChangeType == REMOVED.", + "type": "string" }, - "advices": { - "description": "Collection of advice provided for this change, useful for determining the\npossible impact of this change.", - "type": "array", - "items": { - "$ref": "Advice" - } + "oldValue": { + "description": "Value of the changed object in the old Service configuration,\nin JSON format. This field will not be populated if ChangeType == ADDED.", + "type": "string" } }, - "id": "ConfigChange" - }, - "SystemParameters": { - "properties": { - "rules": { - "description": "Define system parameters.\n\nThe parameters defined here will override the default parameters\nimplemented by the system. If this field is missing from the service\nconfig, default system parameters will be used. Default system parameters\nand names is implementation-dependent.\n\nExample: define api key for all methods\n\n system_parameters\n rules:\n - selector: \"*\"\n parameters:\n - name: api_key\n url_query_parameter: api_key\n\n\nExample: define 2 api key names for a specific method.\n\n system_parameters\n rules:\n - selector: \"/ListShelves\"\n parameters:\n - name: api_key\n http_header: Api-Key1\n - name: api_key\n http_header: Api-Key2\n\n**NOTE:** All service configuration rules follow \"last one wins\" order.", - "type": "array", - "items": { - "$ref": "SystemParameterRule" - } - } - }, - "id": "SystemParameters", - "description": "### System parameter configuration\n\nA system parameter is a special kind of parameter defined by the API\nsystem, not by an individual API. It is typically mapped to an HTTP header\nand/or a URL query parameter. This configuration specifies which methods\nchange the names of the system parameters.", "type": "object" }, - "Rollout": { - "id": "Rollout", - "description": "A rollout resource that defines how service configuration versions are pushed\nto control plane systems. Typically, you create a new version of the\nservice config, and then create a Rollout to push the service config.", - "type": "object", + "ConfigFile": { + "description": "Generic specification of a source configuration file", + "id": "ConfigFile", "properties": { - "rolloutId": { - "description": "Optional unique identifier of this Rollout. Only lower case letters, digits\n and '-' are allowed.\n\nIf not specified by client, the server will generate one. The generated id\nwill have the form of \u003cdate\u003e\u003crevision number\u003e, where \"date\" is the create\ndate in ISO 8601 format. \"revision number\" is a monotonically increasing\npositive number that is reset every day for each service.\nAn example of the generated rollout_id is '2016-02-16r1'", + "fileContents": { + "description": "The bytes that constitute the file.", + "format": "byte", "type": "string" }, - "deleteServiceStrategy": { - "description": "The strategy associated with a rollout to delete a `ManagedService`.\nReadonly.", - "$ref": "DeleteServiceStrategy" - }, - "createTime": { - "description": "Creation time of the rollout. Readonly.", - "format": "google-datetime", + "filePath": { + "description": "The file name of the configuration file (full or relative path).", "type": "string" }, - "status": { + "fileType": { + "description": "The type of configuration file this represents.", "enum": [ - "ROLLOUT_STATUS_UNSPECIFIED", - "IN_PROGRESS", - "SUCCESS", - "CANCELLED", - "FAILED", - "PENDING", - "FAILED_ROLLED_BACK" + "FILE_TYPE_UNSPECIFIED", + "SERVICE_CONFIG_YAML", + "OPEN_API_JSON", + "OPEN_API_YAML", + "FILE_DESCRIPTOR_SET_PROTO", + "PROTO_FILE" ], - "description": "The status of this rollout. Readonly. In case of a failed rollout,\nthe system will automatically rollback to the current Rollout\nversion. Readonly.", - "type": "string", "enumDescriptions": [ - "No status specified.", - "The Rollout is in progress.", - "The Rollout has completed successfully.", - "The Rollout has been cancelled. This can happen if you have overlapping\nRollout pushes, and the previous ones will be cancelled.", - "The Rollout has failed and the rollback attempt has failed too.", - "The Rollout has not started yet and is pending for execution.", - "The Rollout has failed and rolled back to the previous successful\nRollout." - ] - }, - "serviceName": { - "description": "The name of the service associated with this Rollout.", - "type": "string" - }, - "createdBy": { - "description": "The user who created the Rollout. Readonly.", - "type": "string" - }, - "trafficPercentStrategy": { - "description": "Google Service Control selects service configurations based on\ntraffic percentage.", - "$ref": "TrafficPercentStrategy" - } - } - }, - "Quota": { - "description": "Quota configuration helps to achieve fairness and budgeting in service\nusage.\n\nThe quota configuration works this way:\n- The service configuration defines a set of metrics.\n- For API calls, the quota.metric_rules maps methods to metrics with\n corresponding costs.\n- The quota.limits defines limits on the metrics, which will be used for\n quota checks at runtime.\n\nAn example quota configuration in yaml format:\n\n quota:\n\n - name: apiWriteQpsPerProject\n metric: library.googleapis.com/write_calls\n unit: \"1/min/{project}\" # rate limit for consumer projects\n values:\n STANDARD: 10000\n\n\n # The metric rules bind all methods to the read_calls metric,\n # except for the UpdateBook and DeleteBook methods. These two methods\n # are mapped to the write_calls metric, with the UpdateBook method\n # consuming at twice rate as the DeleteBook method.\n metric_rules:\n - selector: \"*\"\n metric_costs:\n library.googleapis.com/read_calls: 1\n - selector: google.example.library.v1.LibraryService.UpdateBook\n metric_costs:\n library.googleapis.com/write_calls: 2\n - selector: google.example.library.v1.LibraryService.DeleteBook\n metric_costs:\n library.googleapis.com/write_calls: 1\n\n Corresponding Metric definition:\n\n metrics:\n - name: library.googleapis.com/read_calls\n display_name: Read requests\n metric_kind: DELTA\n value_type: INT64\n\n - name: library.googleapis.com/write_calls\n display_name: Write requests\n metric_kind: DELTA\n value_type: INT64", - "type": "object", - "properties": { - "limits": { - "description": "List of `QuotaLimit` definitions for the service.", - "type": "array", - "items": { - "$ref": "QuotaLimit" - } - }, - "metricRules": { - "description": "List of `MetricRule` definitions, each one mapping a selected method to one\nor more metrics.", - "type": "array", - "items": { - "$ref": "MetricRule" - } - } - }, - "id": "Quota" - }, - "GenerateConfigReportRequest": { - "description": "Request message for GenerateConfigReport method.", - "type": "object", - "properties": { - "oldConfig": { - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - }, - "description": "Service configuration against which the comparison will be done.\nFor this version of API, the supported types are\ngoogle.api.servicemanagement.v1.ConfigRef,\ngoogle.api.servicemanagement.v1.ConfigSource,\nand google.api.Service", - "type": "object" - }, - "newConfig": { - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - }, - "description": "Service configuration for which we want to generate the report.\nFor this version of API, the supported types are\ngoogle.api.servicemanagement.v1.ConfigRef,\ngoogle.api.servicemanagement.v1.ConfigSource,\nand google.api.Service", - "type": "object" - } - }, - "id": "GenerateConfigReportRequest" - }, - "SetIamPolicyRequest": { - "id": "SetIamPolicyRequest", - "description": "Request message for `SetIamPolicy` method.", - "type": "object", - "properties": { - "updateMask": { - "description": "OPTIONAL: A FieldMask specifying which fields of the policy to modify. Only\nthe fields in the mask will be modified. If no mask is provided, the\nfollowing default mask is used:\npaths: \"bindings, etag\"\nThis field is only used by Cloud IAM.", - "format": "google-fieldmask", - "type": "string" - }, - "policy": { - "$ref": "Policy", - "description": "REQUIRED: The complete policy to be applied to the `resource`. The size of\nthe policy is limited to a few 10s of KB. An empty policy is a\nvalid policy but certain Cloud Platform services (such as Projects)\nmight reject them." - } - } - }, - "DeleteServiceStrategy": { - "description": "Strategy used to delete a service. This strategy is a placeholder only\nused by the system generated rollout to delete a service.", - "type": "object", - "properties": {}, - "id": "DeleteServiceStrategy" - }, - "Step": { - "description": "Represents the status of one operation step.", - "type": "object", - "properties": { - "status": { - "enum": [ - "STATUS_UNSPECIFIED", - "DONE", - "NOT_STARTED", - "IN_PROGRESS", - "FAILED", - "CANCELLED" + "Unknown file type.", + "YAML-specification of service.", + "OpenAPI specification, serialized in JSON.", + "OpenAPI specification, serialized in YAML.", + "FileDescriptorSet, generated by protoc.\n\nTo generate, use protoc with imports and source info included.\nFor an example test.proto file, the following command would put the value\nin a new file named out.pb.\n\n$protoc --include_imports --include_source_info test.proto -o out.pb", + "Uncompiled Proto file. Used for storage and display purposes only,\ncurrently server-side compilation is not supported. Should match the\ninputs to 'protoc' command used to generated FILE_DESCRIPTOR_SET_PROTO. A\nfile of this type can only be included if at least one file of type\nFILE_DESCRIPTOR_SET_PROTO is included." ], - "description": "The status code.", - "type": "string", - "enumDescriptions": [ - "Unspecifed code.", - "The operation or step has completed without errors.", - "The operation or step has not started yet.", - "The operation or step is in progress.", - "The operation or step has completed with errors. If the operation is\nrollbackable, the rollback completed with errors too.", - "The operation or step has completed with cancellation." - ] - }, - "description": { - "description": "The short description of the step.", "type": "string" } }, - "id": "Step" - }, - "LoggingDestination": { - "id": "LoggingDestination", - "description": "Configuration of a specific logging destination (the producer project\nor the consumer project).", - "type": "object", - "properties": { - "logs": { - "description": "Names of the logs to be sent to this destination. Each name must\nbe defined in the Service.logs section. If the log name is\nnot a domain scoped name, it will be automatically prefixed with\nthe service name followed by \"/\".", - "type": "array", - "items": { - "type": "string" - } - }, - "monitoredResource": { - "type": "string", - "description": "The monitored resource type. The type must be defined in the\nService.monitored_resources section." - } - } - }, - "Option": { - "description": "A protocol buffer option, which can be attached to a message, field,\nenumeration, etc.", - "type": "object", - "properties": { - "value": { - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - }, - "description": "The option's value packed in an Any message. If the value is a primitive,\nthe corresponding wrapper type defined in google/protobuf/wrappers.proto\nshould be used. If the value is an enum, it should be stored as an int32\nvalue using the google.protobuf.Int32Value type.", - "type": "object" - }, - "name": { - "description": "The option's name. For protobuf built-in options (options defined in\ndescriptor.proto), this is the short name. For example, `\"map_entry\"`.\nFor custom options, it should be the fully-qualified name. For example,\n`\"google.api.http\"`.", - "type": "string" - } - }, - "id": "Option" - }, - "Logging": { - "description": "Logging configuration of the service.\n\nThe following example shows how to configure logs to be sent to the\nproducer and consumer projects. In the example, the `activity_history`\nlog is sent to both the producer and consumer projects, whereas the\n`purchase_history` log is only sent to the producer project.\n\n monitored_resources:\n - type: library.googleapis.com/branch\n labels:\n - key: /city\n description: The city where the library branch is located in.\n - key: /name\n description: The name of the branch.\n logs:\n - name: activity_history\n labels:\n - key: /customer_id\n - name: purchase_history\n logging:\n producer_destinations:\n - monitored_resource: library.googleapis.com/branch\n logs:\n - activity_history\n - purchase_history\n consumer_destinations:\n - monitored_resource: library.googleapis.com/branch\n logs:\n - activity_history", - "type": "object", - "properties": { - "producerDestinations": { - "description": "Logging configurations for sending logs to the producer project.\nThere can be multiple producer destinations, each one must have a\ndifferent monitored resource type. A log can be used in at most\none producer destination.", - "type": "array", - "items": { - "$ref": "LoggingDestination" - } - }, - "consumerDestinations": { - "description": "Logging configurations for sending logs to the consumer project.\nThere can be multiple consumer destinations, each one must have a\ndifferent monitored resource type. A log can be used in at most\none consumer destination.", - "type": "array", - "items": { - "$ref": "LoggingDestination" - } - } - }, - "id": "Logging" - }, - "QuotaLimit": { - "description": "`QuotaLimit` defines a specific limit that applies over a specified duration\nfor a limit type. There can be at most one limit for a duration and limit\ntype combination defined within a `QuotaGroup`.", - "type": "object", - "properties": { - "freeTier": { - "description": "Free tier value displayed in the Developers Console for this limit.\nThe free tier is the number of tokens that will be subtracted from the\nbilled amount when billing is enabled.\nThis field can only be set on a limit with duration \"1d\", in a billable\ngroup; it is invalid on any other limit. If this field is not set, it\ndefaults to 0, indicating that there is no free tier for this service.\n\nUsed by group-based quotas only.", - "format": "int64", - "type": "string" - }, - "duration": { - "type": "string", - "description": "Duration of this limit in textual notation. Example: \"100s\", \"24h\", \"1d\".\nFor duration longer than a day, only multiple of days is supported. We\nsupport only \"100s\" and \"1d\" for now. Additional support will be added in\nthe future. \"0\" indicates indefinite duration.\n\nUsed by group-based quotas only." - }, - "defaultLimit": { - "description": "Default number of tokens that can be consumed during the specified\nduration. This is the number of tokens assigned when a client\napplication developer activates the service for his/her project.\n\nSpecifying a value of 0 will block all requests. This can be used if you\nare provisioning quota to selected consumers and blocking others.\nSimilarly, a value of -1 will indicate an unlimited quota. No other\nnegative values are allowed.\n\nUsed by group-based quotas only.", - "format": "int64", - "type": "string" - }, - "displayName": { - "description": "User-visible display name for this limit.\nOptional. If not set, the UI will provide a default display name based on\nthe quota configuration. This field can be used to override the default\ndisplay name generated from the configuration.", - "type": "string" - }, - "metric": { - "description": "The name of the metric this quota limit applies to. The quota limits with\nthe same metric will be checked together during runtime. The metric must be\ndefined within the service config.", - "type": "string" - }, - "description": { - "description": "Optional. User-visible, extended description for this quota limit.\nShould be used only when more context is needed to understand this limit\nthan provided by the limit's display name (see: `display_name`).", - "type": "string" - }, - "values": { - "description": "Tiered limit values. You must specify this as a key:value pair, with an\ninteger value that is the maximum number of requests allowed for the\nspecified unit. Currently only STANDARD is supported.", - "type": "object", - "additionalProperties": { - "format": "int64", - "type": "string" - } - }, - "unit": { - "description": "Specify the unit of the quota limit. It uses the same syntax as\nMetric.unit. The supported unit kinds are determined by the quota\nbackend system.\n\nHere are some examples:\n* \"1/min/{project}\" for quota per minute per project.\n\nNote: the order of unit components is insignificant.\nThe \"1\" at the beginning is required to follow the metric unit syntax.", - "type": "string" - }, - "maxLimit": { - "description": "Maximum number of tokens that can be consumed during the specified\nduration. Client application developers can override the default limit up\nto this maximum. If specified, this value cannot be set to a value less\nthan the default limit. If not specified, it is set to the default limit.\n\nTo allow clients to apply overrides with no upper bound, set this to -1,\nindicating unlimited maximum quota.\n\nUsed by group-based quotas only.", - "format": "int64", - "type": "string" - }, - "name": { - "description": "Name of the quota limit.\n\nThe name must be provided, and it must be unique within the service. The\nname can only include alphanumeric characters as well as '-'.\n\nThe maximum length of the limit name is 64 characters.", - "type": "string" - } - }, - "id": "QuotaLimit" - }, - "Method": { - "description": "Method represents a method of an API interface.", - "type": "object", - "properties": { - "responseTypeUrl": { - "description": "The URL of the output message type.", - "type": "string" - }, - "options": { - "description": "Any metadata attached to the method.", - "type": "array", - "items": { - "$ref": "Option" - } - }, - "responseStreaming": { - "description": "If true, the response is streamed.", - "type": "boolean" - }, - "name": { - "type": "string", - "description": "The simple name of this method." - }, - "requestTypeUrl": { - "description": "A URL of the input message type.", - "type": "string" - }, - "requestStreaming": { - "description": "If true, the request is streamed.", - "type": "boolean" - }, - "syntax": { - "enumDescriptions": [ - "Syntax `proto2`.", - "Syntax `proto3`." - ], - "enum": [ - "SYNTAX_PROTO2", - "SYNTAX_PROTO3" - ], - "description": "The source syntax of this method.", - "type": "string" - } - }, - "id": "Method" - }, - "ListServiceRolloutsResponse": { - "properties": { - "nextPageToken": { - "description": "The token of the next page of results.", - "type": "string" - }, - "rollouts": { - "description": "The list of rollout resources.", - "type": "array", - "items": { - "$ref": "Rollout" - } - } - }, - "id": "ListServiceRolloutsResponse", - "description": "Response message for ListServiceRollouts method.", "type": "object" }, "ConfigRef": { "description": "Represents a service configuration with its name and id.", - "type": "object", + "id": "ConfigRef", "properties": { "name": { "description": "Resource name of a service config. It must have the following\nformat: \"services/{service name}/configs/{config id}\".", "type": "string" } }, - "id": "ConfigRef" + "type": "object" }, - "Mixin": { - "description": "Declares an API Interface to be included in this interface. The including\ninterface must redeclare all the methods from the included interface, but\ndocumentation and options are inherited as follows:\n\n- If after comment and whitespace stripping, the documentation\n string of the redeclared method is empty, it will be inherited\n from the original method.\n\n- Each annotation belonging to the service config (http,\n visibility) which is not set in the redeclared method will be\n inherited.\n\n- If an http annotation is inherited, the path pattern will be\n modified as follows. Any version prefix will be replaced by the\n version of the including interface plus the root path if\n specified.\n\nExample of a simple mixin:\n\n package google.acl.v1;\n service AccessControl {\n // Get the underlying ACL object.\n rpc GetAcl(GetAclRequest) returns (Acl) {\n option (google.api.http).get = \"/v1/{resource=**}:getAcl\";\n }\n }\n\n package google.storage.v2;\n service Storage {\n // rpc GetAcl(GetAclRequest) returns (Acl);\n\n // Get a data record.\n rpc GetData(GetDataRequest) returns (Data) {\n option (google.api.http).get = \"/v2/{resource=**}\";\n }\n }\n\nExample of a mixin configuration:\n\n apis:\n - name: google.storage.v2.Storage\n mixins:\n - name: google.acl.v1.AccessControl\n\nThe mixin construct implies that all methods in `AccessControl` are\nalso declared with same name and request/response types in\n`Storage`. A documentation generator or annotation processor will\nsee the effective `Storage.GetAcl` method after inherting\ndocumentation and annotations as follows:\n\n service Storage {\n // Get the underlying ACL object.\n rpc GetAcl(GetAclRequest) returns (Acl) {\n option (google.api.http).get = \"/v2/{resource=**}:getAcl\";\n }\n ...\n }\n\nNote how the version in the path pattern changed from `v1` to `v2`.\n\nIf the `root` field in the mixin is specified, it should be a\nrelative path under which inherited HTTP paths are placed. Example:\n\n apis:\n - name: google.storage.v2.Storage\n mixins:\n - name: google.acl.v1.AccessControl\n root: acls\n\nThis implies the following inherited HTTP annotation:\n\n service Storage {\n // Get the underlying ACL object.\n rpc GetAcl(GetAclRequest) returns (Acl) {\n option (google.api.http).get = \"/v2/acls/{resource=**}:getAcl\";\n }\n ...\n }", - "type": "object", + "ConfigSource": { + "description": "Represents a source file which is used to generate the service configuration\ndefined by `google.api.Service`.", + "id": "ConfigSource", "properties": { - "name": { - "type": "string", - "description": "The fully qualified name of the interface which is included." - }, - "root": { - "description": "If non-empty specifies a path under which inherited HTTP paths\nare rooted.", - "type": "string" - } - }, - "id": "Mixin" - }, - "FlowOperationMetadata": { - "description": "The metadata associated with a long running operation resource.", - "type": "object", - "properties": { - "surface": { - "type": "string", - "enumDescriptions": [ - "", - "", - "", - "TenancyUnit, ServiceNetworking fall under this" - ], - "enum": [ - "UNSPECIFIED_OP_SERVICE", - "SERVICE_MANAGEMENT", - "SERVICE_USAGE", - "SERVICE_CONSUMER_MANAGEMENT" - ] - }, - "flowName": { - "type": "string", - "description": "The name of the top-level flow corresponding to this operation.\nMust be equal to the \"name\" field for a FlowName enum." - }, - "resourceNames": { - "description": "The full name of the resources that this flow is directly associated with.", - "type": "array", + "files": { + "description": "Set of source configuration files that are used to generate a service\nconfiguration (`google.api.Service`).", "items": { - "type": "string" - } - }, - "cancelState": { - "enumDescriptions": [ - "Default state, cancellable but not cancelled.", - "The operation has proceeded past the point of no return and cannot\nbe cancelled.", - "The operation has been cancelled, work should cease\nand any needed rollback steps executed." - ], - "enum": [ - "RUNNING", - "UNCANCELLABLE", - "CANCELLED" - ], - "description": "The state of the operation with respect to cancellation.", - "type": "string" - }, - "deadline": { - "description": "Deadline for the flow to complete, to prevent orphaned Operations.\n\nIf the flow has not completed by this time, it may be terminated by\nthe engine, or force-failed by Operation lookup.\n\nNote that this is not a hard deadline after which the Flow will\ndefinitely be failed, rather it is a deadline after which it is reasonable\nto suspect a problem and other parts of the system may kill operation\nto ensure we don't have orphans.\nsee also: go/prevent-orphaned-operations", - "format": "google-datetime", - "type": "string" - }, - "operationType": { - "description": "Operation type which is a flow type and subtype info as that is missing in\nour datastore otherwise. This maps to the ordinal value of the enum:\njcg/api/tenant/operations/OperationNamespace.java", - "format": "int32", - "type": "integer" - }, - "startTime": { - "description": "The start time of the operation.", - "format": "google-datetime", - "type": "string" - } - }, - "id": "FlowOperationMetadata" - }, - "CustomError": { - "description": "Customize service error responses. For example, list any service\nspecific protobuf types that can appear in error detail lists of\nerror responses.\n\nExample:\n\n custom_error:\n types:\n - google.foo.v1.CustomError\n - google.foo.v1.AnotherError", - "type": "object", - "properties": { - "types": { - "description": "The list of custom error detail types, e.g. 'google.foo.v1.CustomError'.", - "type": "array", - "items": { - "type": "string" - } - }, - "rules": { - "description": "The list of custom error rules that apply to individual API messages.\n\n**NOTE:** All service configuration rules follow \"last one wins\" order.", - "type": "array", - "items": { - "$ref": "CustomErrorRule" - } - } - }, - "id": "CustomError" - }, - "Http": { - "id": "Http", - "description": "Defines the HTTP configuration for an API service. It contains a list of\nHttpRule, each specifying the mapping of an RPC method\nto one or more HTTP REST API methods.", - "type": "object", - "properties": { - "rules": { - "description": "A list of HTTP configuration rules that apply to individual API methods.\n\n**NOTE:** All service configuration rules follow \"last one wins\" order.", - "type": "array", - "items": { - "$ref": "HttpRule" - } - }, - "fullyDecodeReservedExpansion": { - "description": "When set to true, URL path parmeters will be fully URI-decoded except in\ncases of single segment matches in reserved expansion, where \"%2F\" will be\nleft encoded.\n\nThe default behavior is to not decode RFC 6570 reserved characters in multi\nsegment matches.", - "type": "boolean" - } - } - }, - "SourceInfo": { - "description": "Source information used to create a Service Config", - "type": "object", - "properties": { - "sourceFiles": { - "type": "array", - "items": { - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - }, - "type": "object" + "$ref": "ConfigFile" }, - "description": "All files used during config generation." + "type": "array" + }, + "id": { + "description": "A unique ID for a specific instance of this message, typically assigned\nby the client for tracking purpose. If empty, the server may choose to\ngenerate one instead.", + "type": "string" } }, - "id": "SourceInfo" + "type": "object" + }, + "Context": { + "description": "`Context` defines which contexts an API requests.\n\nExample:\n\n context:\n rules:\n - selector: \"*\"\n requested:\n - google.rpc.context.ProjectContext\n - google.rpc.context.OriginContext\n\nThe above specifies that all methods in the API request\n`google.rpc.context.ProjectContext` and\n`google.rpc.context.OriginContext`.\n\nAvailable context types are defined in package\n`google.rpc.context`.\n\nThis also provides mechanism to whitelist any protobuf message extension that\ncan be sent in grpc metadata using “x-goog-ext-\u003cextension_id\u003e-bin” and\n“x-goog-ext-\u003cextension_id\u003e-jspb” format. For example, list any service\nspecific protobuf types that can appear in grpc metadata as follows in your\nyaml file:\n\nExample:\n\n context:\n rules:\n - selector: \"google.example.library.v1.LibraryService.CreateBook\"\n allowed_request_extensions:\n - google.foo.v1.NewExtension\n allowed_response_extensions:\n - google.foo.v1.NewExtension\n\nYou can also specify extension ID instead of fully qualified extension name\nhere.", + "id": "Context", + "properties": { + "rules": { + "description": "A list of RPC context rules that apply to individual API methods.\n\n**NOTE:** All service configuration rules follow \"last one wins\" order.", + "items": { + "$ref": "ContextRule" + }, + "type": "array" + } + }, + "type": "object" + }, + "ContextRule": { + "description": "A context rule provides information about the context for an individual API\nelement.", + "id": "ContextRule", + "properties": { + "allowedRequestExtensions": { + "description": "A list of full type names or extension IDs of extensions allowed in grpc\nside channel from client to backend.", + "items": { + "type": "string" + }, + "type": "array" + }, + "allowedResponseExtensions": { + "description": "A list of full type names or extension IDs of extensions allowed in grpc\nside channel from backend to client.", + "items": { + "type": "string" + }, + "type": "array" + }, + "provided": { + "description": "A list of full type names of provided contexts.", + "items": { + "type": "string" + }, + "type": "array" + }, + "requested": { + "description": "A list of full type names of requested contexts.", + "items": { + "type": "string" + }, + "type": "array" + }, + "selector": { + "description": "Selects the methods to which this rule applies.\n\nRefer to selector for syntax details.", + "type": "string" + } + }, + "type": "object" }, "Control": { "description": "Selects and configures the service controller used by the service. The\nservice controller handles features like abuse, quota, billing, logging,\nmonitoring, etc.", - "type": "object", + "id": "Control", "properties": { "environment": { "description": "The service control environment to use. If empty, no control plane\nfeature (like quota and billing) will be enabled.", "type": "string" } }, - "id": "Control" + "type": "object" }, - "SystemParameter": { - "type": "object", + "CustomAuthRequirements": { + "description": "Configuration for a custom authentication provider.", + "id": "CustomAuthRequirements", + "properties": { + "provider": { + "description": "A configuration string containing connection information for the\nauthentication provider, typically formatted as a SmartService string\n(go/smartservice).", + "type": "string" + } + }, + "type": "object" + }, + "CustomError": { + "description": "Customize service error responses. For example, list any service\nspecific protobuf types that can appear in error detail lists of\nerror responses.\n\nExample:\n\n custom_error:\n types:\n - google.foo.v1.CustomError\n - google.foo.v1.AnotherError", + "id": "CustomError", + "properties": { + "rules": { + "description": "The list of custom error rules that apply to individual API messages.\n\n**NOTE:** All service configuration rules follow \"last one wins\" order.", + "items": { + "$ref": "CustomErrorRule" + }, + "type": "array" + }, + "types": { + "description": "The list of custom error detail types, e.g. 'google.foo.v1.CustomError'.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "CustomErrorRule": { + "description": "A custom error rule.", + "id": "CustomErrorRule", + "properties": { + "isErrorType": { + "description": "Mark this message as possible payload in error response. Otherwise,\nobjects of this type will be filtered when they appear in error payload.", + "type": "boolean" + }, + "selector": { + "description": "Selects messages to which this rule applies.\n\nRefer to selector for syntax details.", + "type": "string" + } + }, + "type": "object" + }, + "CustomHttpPattern": { + "description": "A custom pattern is used for defining custom HTTP verb.", + "id": "CustomHttpPattern", + "properties": { + "kind": { + "description": "The name of this custom HTTP verb.", + "type": "string" + }, + "path": { + "description": "The path matched by this custom verb.", + "type": "string" + } + }, + "type": "object" + }, + "DeleteServiceStrategy": { + "description": "Strategy used to delete a service. This strategy is a placeholder only\nused by the system generated rollout to delete a service.", + "id": "DeleteServiceStrategy", + "properties": {}, + "type": "object" + }, + "Diagnostic": { + "description": "Represents a diagnostic message (error or warning)", + "id": "Diagnostic", + "properties": { + "kind": { + "description": "The kind of diagnostic information provided.", + "enum": [ + "WARNING", + "ERROR" + ], + "enumDescriptions": [ + "Warnings and errors", + "Only errors" + ], + "type": "string" + }, + "location": { + "description": "File name and line number of the error or warning.", + "type": "string" + }, + "message": { + "description": "Message describing the error or warning.", + "type": "string" + } + }, + "type": "object" + }, + "DisableServiceRequest": { + "description": "Request message for DisableService method.", + "id": "DisableServiceRequest", + "properties": { + "consumerId": { + "description": "The identity of consumer resource which service disablement will be\napplied to.\n\nThe Google Service Management implementation accepts the following\nforms:\n- \"project:\u003cproject_id\u003e\"\n\nNote: this is made compatible with\ngoogle.api.servicecontrol.v1.Operation.consumer_id.", + "type": "string" + } + }, + "type": "object" + }, + "Documentation": { + "description": "`Documentation` provides the information for describing a service.\n\nExample:\n\u003cpre\u003e\u003ccode\u003edocumentation:\n summary: \u003e\n The Google Calendar API gives access\n to most calendar features.\n pages:\n - name: Overview\n content: \u0026#40;== include google/foo/overview.md ==\u0026#41;\n - name: Tutorial\n content: \u0026#40;== include google/foo/tutorial.md ==\u0026#41;\n subpages;\n - name: Java\n content: \u0026#40;== include google/foo/tutorial_java.md ==\u0026#41;\n rules:\n - selector: google.calendar.Calendar.Get\n description: \u003e\n ...\n - selector: google.calendar.Calendar.Put\n description: \u003e\n ...\n\u003c/code\u003e\u003c/pre\u003e\nDocumentation is provided in markdown syntax. In addition to\nstandard markdown features, definition lists, tables and fenced\ncode blocks are supported. Section headers can be provided and are\ninterpreted relative to the section nesting of the context where\na documentation fragment is embedded.\n\nDocumentation from the IDL is merged with documentation defined\nvia the config at normalization time, where documentation provided\nby config rules overrides IDL provided.\n\nA number of constructs specific to the API platform are supported\nin documentation text.\n\nIn order to reference a proto element, the following\nnotation can be used:\n\u003cpre\u003e\u003ccode\u003e\u0026#91;fully.qualified.proto.name]\u0026#91;]\u003c/code\u003e\u003c/pre\u003e\nTo override the display text used for the link, this can be used:\n\u003cpre\u003e\u003ccode\u003e\u0026#91;display text]\u0026#91;fully.qualified.proto.name]\u003c/code\u003e\u003c/pre\u003e\nText can be excluded from doc using the following notation:\n\u003cpre\u003e\u003ccode\u003e\u0026#40;-- internal comment --\u0026#41;\u003c/code\u003e\u003c/pre\u003e\n\nA few directives are available in documentation. Note that\ndirectives must appear on a single line to be properly\nidentified. The `include` directive includes a markdown file from\nan external source:\n\u003cpre\u003e\u003ccode\u003e\u0026#40;== include path/to/file ==\u0026#41;\u003c/code\u003e\u003c/pre\u003e\nThe `resource_for` directive marks a message to be the resource of\na collection in REST view. If it is not specified, tools attempt\nto infer the resource from the operations in a collection:\n\u003cpre\u003e\u003ccode\u003e\u0026#40;== resource_for v1.shelves.books ==\u0026#41;\u003c/code\u003e\u003c/pre\u003e\nThe directive `suppress_warning` does not directly affect documentation\nand is documented together with service config validation.", + "id": "Documentation", + "properties": { + "documentationRootUrl": { + "description": "The URL to the root of documentation.", + "type": "string" + }, + "overview": { + "description": "Declares a single overview page. For example:\n\u003cpre\u003e\u003ccode\u003edocumentation:\n summary: ...\n overview: \u0026#40;== include overview.md ==\u0026#41;\n\u003c/code\u003e\u003c/pre\u003e\nThis is a shortcut for the following declaration (using pages style):\n\u003cpre\u003e\u003ccode\u003edocumentation:\n summary: ...\n pages:\n - name: Overview\n content: \u0026#40;== include overview.md ==\u0026#41;\n\u003c/code\u003e\u003c/pre\u003e\nNote: you cannot specify both `overview` field and `pages` field.", + "type": "string" + }, + "pages": { + "description": "The top level pages for the documentation set.", + "items": { + "$ref": "Page" + }, + "type": "array" + }, + "rules": { + "description": "A list of documentation rules that apply to individual API elements.\n\n**NOTE:** All service configuration rules follow \"last one wins\" order.", + "items": { + "$ref": "DocumentationRule" + }, + "type": "array" + }, + "summary": { + "description": "A short summary of what the service does. Can only be provided by\nplain text.", + "type": "string" + } + }, + "type": "object" + }, + "DocumentationRule": { + "description": "A documentation rule provides information about individual API elements.", + "id": "DocumentationRule", + "properties": { + "deprecationDescription": { + "description": "Deprecation description of the selected element(s). It can be provided if an\nelement is marked as `deprecated`.", + "type": "string" + }, + "description": { + "description": "Description of the selected API(s).", + "type": "string" + }, + "selector": { + "description": "The selector is a comma-separated list of patterns. Each pattern is a\nqualified name of the element which may end in \"*\", indicating a wildcard.\nWildcards are only allowed at the end and for a whole component of the\nqualified name, i.e. \"foo.*\" is ok, but not \"foo.b*\" or \"foo.*.bar\". To\nspecify a default for all applicable elements, the whole pattern \"*\"\nis used.", + "type": "string" + } + }, + "type": "object" + }, + "EnableServiceRequest": { + "description": "Request message for EnableService method.", + "id": "EnableServiceRequest", + "properties": { + "consumerId": { + "description": "The identity of consumer resource which service enablement will be\napplied to.\n\nThe Google Service Management implementation accepts the following\nforms:\n- \"project:\u003cproject_id\u003e\"\n\nNote: this is made compatible with\ngoogle.api.servicecontrol.v1.Operation.consumer_id.", + "type": "string" + } + }, + "type": "object" + }, + "Endpoint": { + "description": "`Endpoint` describes a network endpoint that serves a set of APIs.\nA service may expose any number of endpoints, and all endpoints share the\nsame service configuration, such as quota configuration and monitoring\nconfiguration.\n\nExample service configuration:\n\n name: library-example.googleapis.com\n endpoints:\n # Below entry makes 'google.example.library.v1.Library'\n # API be served from endpoint address library-example.googleapis.com.\n # It also allows HTTP OPTIONS calls to be passed to the backend, for\n # it to decide whether the subsequent cross-origin request is\n # allowed to proceed.\n - name: library-example.googleapis.com\n allow_cors: true", + "id": "Endpoint", + "properties": { + "aliases": { + "description": "DEPRECATED: This field is no longer supported. Instead of using aliases,\nplease specify multiple google.api.Endpoint for each of the intended\naliases.\n\nAdditional names that this endpoint will be hosted on.", + "items": { + "type": "string" + }, + "type": "array" + }, + "allowCors": { + "description": "Allowing\n[CORS](https://en.wikipedia.org/wiki/Cross-origin_resource_sharing), aka\ncross-domain traffic, would allow the backends served from this endpoint to\nreceive and respond to HTTP OPTIONS requests. The response will be used by\nthe browser to determine whether the subsequent cross-origin request is\nallowed to proceed.", + "type": "boolean" + }, + "features": { + "description": "The list of features enabled on this endpoint.", + "items": { + "type": "string" + }, + "type": "array" + }, + "name": { + "description": "The canonical name of this endpoint.", + "type": "string" + }, + "target": { + "description": "The specification of an Internet routable address of API frontend that will\nhandle requests to this [API Endpoint](https://cloud.google.com/apis/design/glossary).\nIt should be either a valid IPv4 address or a fully-qualified domain name.\nFor example, \"8.8.8.8\" or \"myservice.appspot.com\".", + "type": "string" + } + }, + "type": "object" + }, + "Enum": { + "description": "Enum type definition.", + "id": "Enum", + "properties": { + "enumvalue": { + "description": "Enum value definitions.", + "items": { + "$ref": "EnumValue" + }, + "type": "array" + }, + "name": { + "description": "Enum type name.", + "type": "string" + }, + "options": { + "description": "Protocol buffer options.", + "items": { + "$ref": "Option" + }, + "type": "array" + }, + "sourceContext": { + "$ref": "SourceContext", + "description": "The source context." + }, + "syntax": { + "description": "The source syntax.", + "enum": [ + "SYNTAX_PROTO2", + "SYNTAX_PROTO3" + ], + "enumDescriptions": [ + "Syntax `proto2`.", + "Syntax `proto3`." + ], + "type": "string" + } + }, + "type": "object" + }, + "EnumValue": { + "description": "Enum value definition.", + "id": "EnumValue", "properties": { "name": { - "description": "Define the name of the parameter, such as \"api_key\" . It is case sensitive.", + "description": "Enum value name.", "type": "string" }, - "urlQueryParameter": { - "description": "Define the URL query parameter name to use for the parameter. It is case\nsensitive.", - "type": "string" + "number": { + "description": "Enum value number.", + "format": "int32", + "type": "integer" }, - "httpHeader": { - "description": "Define the HTTP header name to use for the parameter. It is case\ninsensitive.", - "type": "string" - } - }, - "id": "SystemParameter", - "description": "Define a parameter's name and location. The parameter may be passed as either\nan HTTP header or a URL query parameter, and if both are passed the behavior\nis implementation-dependent." - }, - "Monitoring": { - "description": "Monitoring configuration of the service.\n\nThe example below shows how to configure monitored resources and metrics\nfor monitoring. In the example, a monitored resource and two metrics are\ndefined. The `library.googleapis.com/book/returned_count` metric is sent\nto both producer and consumer projects, whereas the\n`library.googleapis.com/book/overdue_count` metric is only sent to the\nconsumer project.\n\n monitored_resources:\n - type: library.googleapis.com/branch\n labels:\n - key: /city\n description: The city where the library branch is located in.\n - key: /name\n description: The name of the branch.\n metrics:\n - name: library.googleapis.com/book/returned_count\n metric_kind: DELTA\n value_type: INT64\n labels:\n - key: /customer_id\n - name: library.googleapis.com/book/overdue_count\n metric_kind: GAUGE\n value_type: INT64\n labels:\n - key: /customer_id\n monitoring:\n producer_destinations:\n - monitored_resource: library.googleapis.com/branch\n metrics:\n - library.googleapis.com/book/returned_count\n consumer_destinations:\n - monitored_resource: library.googleapis.com/branch\n metrics:\n - library.googleapis.com/book/returned_count\n - library.googleapis.com/book/overdue_count", - "type": "object", - "properties": { - "consumerDestinations": { - "description": "Monitoring configurations for sending metrics to the consumer project.\nThere can be multiple consumer destinations, each one must have a\ndifferent monitored resource type. A metric can be used in at most\none consumer destination.", - "type": "array", + "options": { + "description": "Protocol buffer options.", "items": { - "$ref": "MonitoringDestination" - } - }, - "producerDestinations": { - "type": "array", - "items": { - "$ref": "MonitoringDestination" + "$ref": "Option" }, - "description": "Monitoring configurations for sending metrics to the producer project.\nThere can be multiple producer destinations, each one must have a\ndifferent monitored resource type. A metric can be used in at most\none producer destination." + "type": "array" } }, - "id": "Monitoring" + "type": "object" + }, + "Experimental": { + "description": "Experimental service configuration. These configuration options can\nonly be used by whitelisted users.", + "id": "Experimental", + "properties": { + "authorization": { + "$ref": "AuthorizationConfig", + "description": "Authorization configuration." + } + }, + "type": "object" }, "Field": { "description": "A single field of a message type.", - "type": "object", + "id": "Field", "properties": { + "cardinality": { + "description": "The field cardinality.", + "enum": [ + "CARDINALITY_UNKNOWN", + "CARDINALITY_OPTIONAL", + "CARDINALITY_REQUIRED", + "CARDINALITY_REPEATED" + ], + "enumDescriptions": [ + "For fields with unknown cardinality.", + "For optional fields.", + "For required fields. Proto2 syntax only.", + "For repeated fields." + ], + "type": "string" + }, + "defaultValue": { + "description": "The string value of the default value of this field. Proto2 syntax only.", + "type": "string" + }, "jsonName": { "description": "The field JSON name.", "type": "string" }, "kind": { - "enumDescriptions": [ - "Field type unknown.", - "Field type double.", - "Field type float.", - "Field type int64.", - "Field type uint64.", - "Field type int32.", - "Field type fixed64.", - "Field type fixed32.", - "Field type bool.", - "Field type string.", - "Field type group. Proto2 syntax only, and deprecated.", - "Field type message.", - "Field type bytes.", - "Field type uint32.", - "Field type enum.", - "Field type sfixed32.", - "Field type sfixed64.", - "Field type sint32.", - "Field type sint64." - ], + "description": "The field type.", "enum": [ "TYPE_UNKNOWN", "TYPE_DOUBLE", @@ -1680,273 +1707,241 @@ "TYPE_SINT32", "TYPE_SINT64" ], - "description": "The field type.", - "type": "string" - }, - "options": { - "description": "The protocol buffer options.", - "type": "array", - "items": { - "$ref": "Option" - } - }, - "oneofIndex": { - "type": "integer", - "description": "The index of the field type in `Type.oneofs`, for message or enumeration\ntypes. The first type has index 1; zero means the type is not in the list.", - "format": "int32" - }, - "cardinality": { - "enum": [ - "CARDINALITY_UNKNOWN", - "CARDINALITY_OPTIONAL", - "CARDINALITY_REQUIRED", - "CARDINALITY_REPEATED" - ], - "description": "The field cardinality.", - "type": "string", "enumDescriptions": [ - "For fields with unknown cardinality.", - "For optional fields.", - "For required fields. Proto2 syntax only.", - "For repeated fields." - ] - }, - "packed": { - "description": "Whether to use alternative packed wire representation.", - "type": "boolean" - }, - "defaultValue": { - "description": "The string value of the default value of this field. Proto2 syntax only.", + "Field type unknown.", + "Field type double.", + "Field type float.", + "Field type int64.", + "Field type uint64.", + "Field type int32.", + "Field type fixed64.", + "Field type fixed32.", + "Field type bool.", + "Field type string.", + "Field type group. Proto2 syntax only, and deprecated.", + "Field type message.", + "Field type bytes.", + "Field type uint32.", + "Field type enum.", + "Field type sfixed32.", + "Field type sfixed64.", + "Field type sint32.", + "Field type sint64." + ], "type": "string" }, "name": { "description": "The field name.", "type": "string" }, + "number": { + "description": "The field number.", + "format": "int32", + "type": "integer" + }, + "oneofIndex": { + "description": "The index of the field type in `Type.oneofs`, for message or enumeration\ntypes. The first type has index 1; zero means the type is not in the list.", + "format": "int32", + "type": "integer" + }, + "options": { + "description": "The protocol buffer options.", + "items": { + "$ref": "Option" + }, + "type": "array" + }, + "packed": { + "description": "Whether to use alternative packed wire representation.", + "type": "boolean" + }, "typeUrl": { "description": "The field type URL, without the scheme, for message or enumeration\ntypes. Example: `\"type.googleapis.com/google.protobuf.Timestamp\"`.", "type": "string" - }, - "number": { - "type": "integer", - "description": "The field number.", - "format": "int32" } }, - "id": "Field" - }, - "TestIamPermissionsRequest": { - "properties": { - "permissions": { - "description": "The set of permissions to check for the `resource`. Permissions with\nwildcards (such as '*' or 'storage.*') are not allowed. For more\ninformation see\n[IAM Overview](https://cloud.google.com/iam/docs/overview#permissions).", - "type": "array", - "items": { - "type": "string" - } - } - }, - "id": "TestIamPermissionsRequest", - "description": "Request message for `TestIamPermissions` method.", "type": "object" }, - "Enum": { - "description": "Enum type definition.", - "type": "object", + "GenerateConfigReportRequest": { + "description": "Request message for GenerateConfigReport method.", + "id": "GenerateConfigReportRequest", "properties": { - "sourceContext": { - "description": "The source context.", - "$ref": "SourceContext" + "newConfig": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "description": "Service configuration for which we want to generate the report.\nFor this version of API, the supported types are\ngoogle.api.servicemanagement.v1.ConfigRef,\ngoogle.api.servicemanagement.v1.ConfigSource,\nand google.api.Service", + "type": "object" }, - "syntax": { - "enumDescriptions": [ - "Syntax `proto2`.", - "Syntax `proto3`." - ], - "enum": [ - "SYNTAX_PROTO2", - "SYNTAX_PROTO3" - ], - "description": "The source syntax.", - "type": "string" - }, - "name": { - "description": "Enum type name.", - "type": "string" - }, - "enumvalue": { - "description": "Enum value definitions.", - "type": "array", - "items": { - "$ref": "EnumValue" - } - }, - "options": { - "description": "Protocol buffer options.", - "type": "array", - "items": { - "$ref": "Option" - } + "oldConfig": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "description": "Service configuration against which the comparison will be done.\nFor this version of API, the supported types are\ngoogle.api.servicemanagement.v1.ConfigRef,\ngoogle.api.servicemanagement.v1.ConfigSource,\nand google.api.Service", + "type": "object" } }, - "id": "Enum" - }, - "EnableServiceRequest": { - "description": "Request message for EnableService method.", - "type": "object", - "properties": { - "consumerId": { - "description": "The identity of consumer resource which service enablement will be\napplied to.\n\nThe Google Service Management implementation accepts the following\nforms:\n- \"project:\u003cproject_id\u003e\"\n\nNote: this is made compatible with\ngoogle.api.servicecontrol.v1.Operation.consumer_id.", - "type": "string" - } - }, - "id": "EnableServiceRequest" - }, - "Diagnostic": { - "description": "Represents a diagnostic message (error or warning)", - "type": "object", - "properties": { - "location": { - "description": "File name and line number of the error or warning.", - "type": "string" - }, - "kind": { - "description": "The kind of diagnostic information provided.", - "type": "string", - "enumDescriptions": [ - "Warnings and errors", - "Only errors" - ], - "enum": [ - "WARNING", - "ERROR" - ] - }, - "message": { - "description": "Message describing the error or warning.", - "type": "string" - } - }, - "id": "Diagnostic" - }, - "LabelDescriptor": { - "id": "LabelDescriptor", - "description": "A description of a label.", - "type": "object", - "properties": { - "valueType": { - "enumDescriptions": [ - "A variable-length string. This is the default.", - "Boolean; true or false.", - "A 64-bit signed integer." - ], - "enum": [ - "STRING", - "BOOL", - "INT64" - ], - "description": "The type of data that can be assigned to the label.", - "type": "string" - }, - "key": { - "type": "string", - "description": "The label key." - }, - "description": { - "type": "string", - "description": "A human-readable description for the label." - } - } + "type": "object" }, "GenerateConfigReportResponse": { + "description": "Response message for GenerateConfigReport method.", + "id": "GenerateConfigReportResponse", "properties": { "changeReports": { "description": "list of ChangeReport, each corresponding to comparison between two\nservice configurations.", - "type": "array", "items": { "$ref": "ChangeReport" - } - }, - "id": { - "type": "string", - "description": "ID of the service configuration this report belongs to." + }, + "type": "array" }, "diagnostics": { "description": "Errors / Linter warnings associated with the service definition this\nreport\nbelongs to.", - "type": "array", "items": { "$ref": "Diagnostic" - } + }, + "type": "array" + }, + "id": { + "description": "ID of the service configuration this report belongs to.", + "type": "string" }, "serviceName": { "description": "Name of the service this report belongs to.", "type": "string" } }, - "id": "GenerateConfigReportResponse", - "description": "Response message for GenerateConfigReport method.", "type": "object" }, - "Type": { - "description": "A protocol buffer message type.", - "type": "object", + "GetIamPolicyRequest": { + "description": "Request message for `GetIamPolicy` method.", + "id": "GetIamPolicyRequest", + "properties": {}, + "type": "object" + }, + "Http": { + "description": "Defines the HTTP configuration for an API service. It contains a list of\nHttpRule, each specifying the mapping of an RPC method\nto one or more HTTP REST API methods.", + "id": "Http", "properties": { - "options": { - "description": "The protocol buffer options.", - "type": "array", - "items": { - "$ref": "Option" - } + "fullyDecodeReservedExpansion": { + "description": "When set to true, URL path parmeters will be fully URI-decoded except in\ncases of single segment matches in reserved expansion, where \"%2F\" will be\nleft encoded.\n\nThe default behavior is to not decode RFC 6570 reserved characters in multi\nsegment matches.", + "type": "boolean" }, - "fields": { - "description": "The list of fields.", - "type": "array", + "rules": { + "description": "A list of HTTP configuration rules that apply to individual API methods.\n\n**NOTE:** All service configuration rules follow \"last one wins\" order.", "items": { - "$ref": "Field" - } + "$ref": "HttpRule" + }, + "type": "array" + } + }, + "type": "object" + }, + "HttpRule": { + "description": "`HttpRule` defines the mapping of an RPC method to one or more HTTP\nREST API methods. The mapping specifies how different portions of the RPC\nrequest message are mapped to URL path, URL query parameters, and\nHTTP request body. The mapping is typically specified as an\n`google.api.http` annotation on the RPC method,\nsee \"google/api/annotations.proto\" for details.\n\nThe mapping consists of a field specifying the path template and\nmethod kind. The path template can refer to fields in the request\nmessage, as in the example below which describes a REST GET\noperation on a resource collection of messages:\n\n\n service Messaging {\n rpc GetMessage(GetMessageRequest) returns (Message) {\n option (google.api.http).get = \"/v1/messages/{message_id}/{sub.subfield}\";\n }\n }\n message GetMessageRequest {\n message SubMessage {\n string subfield = 1;\n }\n string message_id = 1; // mapped to the URL\n SubMessage sub = 2; // `sub.subfield` is url-mapped\n }\n message Message {\n string text = 1; // content of the resource\n }\n\nThe same http annotation can alternatively be expressed inside the\n`GRPC API Configuration` YAML file.\n\n http:\n rules:\n - selector: \u003cproto_package_name\u003e.Messaging.GetMessage\n get: /v1/messages/{message_id}/{sub.subfield}\n\nThis definition enables an automatic, bidrectional mapping of HTTP\nJSON to RPC. Example:\n\nHTTP | RPC\n-----|-----\n`GET /v1/messages/123456/foo` | `GetMessage(message_id: \"123456\" sub: SubMessage(subfield: \"foo\"))`\n\nIn general, not only fields but also field paths can be referenced\nfrom a path pattern. Fields mapped to the path pattern cannot be\nrepeated and must have a primitive (non-message) type.\n\nAny fields in the request message which are not bound by the path\npattern automatically become (optional) HTTP query\nparameters. Assume the following definition of the request message:\n\n\n service Messaging {\n rpc GetMessage(GetMessageRequest) returns (Message) {\n option (google.api.http).get = \"/v1/messages/{message_id}\";\n }\n }\n message GetMessageRequest {\n message SubMessage {\n string subfield = 1;\n }\n string message_id = 1; // mapped to the URL\n int64 revision = 2; // becomes a parameter\n SubMessage sub = 3; // `sub.subfield` becomes a parameter\n }\n\n\nThis enables a HTTP JSON to RPC mapping as below:\n\nHTTP | RPC\n-----|-----\n`GET /v1/messages/123456?revision=2\u0026sub.subfield=foo` | `GetMessage(message_id: \"123456\" revision: 2 sub: SubMessage(subfield: \"foo\"))`\n\nNote that fields which are mapped to HTTP parameters must have a\nprimitive type or a repeated primitive type. Message types are not\nallowed. In the case of a repeated type, the parameter can be\nrepeated in the URL, as in `...?param=A\u0026param=B`.\n\nFor HTTP method kinds which allow a request body, the `body` field\nspecifies the mapping. Consider a REST update method on the\nmessage resource collection:\n\n\n service Messaging {\n rpc UpdateMessage(UpdateMessageRequest) returns (Message) {\n option (google.api.http) = {\n put: \"/v1/messages/{message_id}\"\n body: \"message\"\n };\n }\n }\n message UpdateMessageRequest {\n string message_id = 1; // mapped to the URL\n Message message = 2; // mapped to the body\n }\n\n\nThe following HTTP JSON to RPC mapping is enabled, where the\nrepresentation of the JSON in the request body is determined by\nprotos JSON encoding:\n\nHTTP | RPC\n-----|-----\n`PUT /v1/messages/123456 { \"text\": \"Hi!\" }` | `UpdateMessage(message_id: \"123456\" message { text: \"Hi!\" })`\n\nThe special name `*` can be used in the body mapping to define that\nevery field not bound by the path template should be mapped to the\nrequest body. This enables the following alternative definition of\nthe update method:\n\n service Messaging {\n rpc UpdateMessage(Message) returns (Message) {\n option (google.api.http) = {\n put: \"/v1/messages/{message_id}\"\n body: \"*\"\n };\n }\n }\n message Message {\n string message_id = 1;\n string text = 2;\n }\n\n\nThe following HTTP JSON to RPC mapping is enabled:\n\nHTTP | RPC\n-----|-----\n`PUT /v1/messages/123456 { \"text\": \"Hi!\" }` | `UpdateMessage(message_id: \"123456\" text: \"Hi!\")`\n\nNote that when using `*` in the body mapping, it is not possible to\nhave HTTP parameters, as all fields not bound by the path end in\nthe body. This makes this option more rarely used in practice of\ndefining REST APIs. The common usage of `*` is in custom methods\nwhich don't use the URL at all for transferring data.\n\nIt is possible to define multiple HTTP methods for one RPC by using\nthe `additional_bindings` option. Example:\n\n service Messaging {\n rpc GetMessage(GetMessageRequest) returns (Message) {\n option (google.api.http) = {\n get: \"/v1/messages/{message_id}\"\n additional_bindings {\n get: \"/v1/users/{user_id}/messages/{message_id}\"\n }\n };\n }\n }\n message GetMessageRequest {\n string message_id = 1;\n string user_id = 2;\n }\n\n\nThis enables the following two alternative HTTP JSON to RPC\nmappings:\n\nHTTP | RPC\n-----|-----\n`GET /v1/messages/123456` | `GetMessage(message_id: \"123456\")`\n`GET /v1/users/me/messages/123456` | `GetMessage(user_id: \"me\" message_id: \"123456\")`\n\n# Rules for HTTP mapping\n\nThe rules for mapping HTTP path, query parameters, and body fields\nto the request message are as follows:\n\n1. The `body` field specifies either `*` or a field path, or is\n omitted. If omitted, it indicates there is no HTTP request body.\n2. Leaf fields (recursive expansion of nested messages in the\n request) can be classified into three types:\n (a) Matched in the URL template.\n (b) Covered by body (if body is `*`, everything except (a) fields;\n else everything under the body field)\n (c) All other fields.\n3. URL query parameters found in the HTTP request are mapped to (c) fields.\n4. Any body sent with an HTTP request can contain only (b) fields.\n\nThe syntax of the path template is as follows:\n\n Template = \"/\" Segments [ Verb ] ;\n Segments = Segment { \"/\" Segment } ;\n Segment = \"*\" | \"**\" | LITERAL | Variable ;\n Variable = \"{\" FieldPath [ \"=\" Segments ] \"}\" ;\n FieldPath = IDENT { \".\" IDENT } ;\n Verb = \":\" LITERAL ;\n\nThe syntax `*` matches a single path segment. The syntax `**` matches zero\nor more path segments, which must be the last part of the path except the\n`Verb`. The syntax `LITERAL` matches literal text in the path.\n\nThe syntax `Variable` matches part of the URL path as specified by its\ntemplate. A variable template must not contain other variables. If a variable\nmatches a single path segment, its template may be omitted, e.g. `{var}`\nis equivalent to `{var=*}`.\n\nIf a variable contains exactly one path segment, such as `\"{var}\"` or\n`\"{var=*}\"`, when such a variable is expanded into a URL path, all characters\nexcept `[-_.~0-9a-zA-Z]` are percent-encoded. Such variables show up in the\nDiscovery Document as `{var}`.\n\nIf a variable contains one or more path segments, such as `\"{var=foo/*}\"`\nor `\"{var=**}\"`, when such a variable is expanded into a URL path, all\ncharacters except `[-_.~/0-9a-zA-Z]` are percent-encoded. Such variables\nshow up in the Discovery Document as `{+var}`.\n\nNOTE: While the single segment variable matches the semantics of\n[RFC 6570](https://tools.ietf.org/html/rfc6570) Section 3.2.2\nSimple String Expansion, the multi segment variable **does not** match\nRFC 6570 Reserved Expansion. The reason is that the Reserved Expansion\ndoes not expand special characters like `?` and `#`, which would lead\nto invalid URLs.\n\nNOTE: the field paths in variables and in the `body` must not refer to\nrepeated fields or map fields.", + "id": "HttpRule", + "properties": { + "additionalBindings": { + "description": "Additional HTTP bindings for the selector. Nested bindings must\nnot contain an `additional_bindings` field themselves (that is,\nthe nesting may only be one level deep).", + "items": { + "$ref": "HttpRule" + }, + "type": "array" }, - "name": { - "description": "The fully qualified message name.", + "body": { + "description": "The name of the request field whose value is mapped to the HTTP body, or\n`*` for mapping all fields not captured by the path pattern to the HTTP\nbody. NOTE: the referred field must not be a repeated field and must be\npresent at the top-level of request message type.", "type": "string" }, - "oneofs": { - "description": "The list of types appearing in `oneof` definitions in this type.", - "type": "array", - "items": { - "type": "string" - } + "custom": { + "$ref": "CustomHttpPattern", + "description": "The custom pattern is used for specifying an HTTP method that is not\nincluded in the `pattern` field, such as HEAD, or \"*\" to leave the\nHTTP method unspecified for this rule. The wild-card rule is useful\nfor services that provide content to Web (HTML) clients." }, - "sourceContext": { - "$ref": "SourceContext", - "description": "The source context." + "delete": { + "description": "Used for deleting a resource.", + "type": "string" }, - "syntax": { - "enum": [ - "SYNTAX_PROTO2", - "SYNTAX_PROTO3" - ], - "description": "The source syntax.", - "type": "string", - "enumDescriptions": [ - "Syntax `proto2`.", - "Syntax `proto3`." - ] + "get": { + "description": "Used for listing and getting information about resources.", + "type": "string" + }, + "mediaDownload": { + "$ref": "MediaDownload", + "description": "Use this only for Scotty Requests. Do not use this for bytestream methods.\nFor media support, add instead [][google.bytestream.RestByteStream] as an\nAPI to your configuration." + }, + "mediaUpload": { + "$ref": "MediaUpload", + "description": "Use this only for Scotty Requests. Do not use this for media support using\nBytestream, add instead\n[][google.bytestream.RestByteStream] as an API to your\nconfiguration for Bytestream methods." + }, + "patch": { + "description": "Used for updating a resource.", + "type": "string" + }, + "post": { + "description": "Used for creating a resource.", + "type": "string" + }, + "put": { + "description": "Used for updating a resource.", + "type": "string" + }, + "selector": { + "description": "Selects methods to which this rule applies.\n\nRefer to selector for syntax details.", + "type": "string" } }, - "id": "Type" + "type": "object" }, - "Experimental": { - "description": "Experimental service configuration. These configuration options can\nonly be used by whitelisted users.", - "type": "object", + "LabelDescriptor": { + "description": "A description of a label.", + "id": "LabelDescriptor", "properties": { - "authorization": { - "description": "Authorization configuration.", - "$ref": "AuthorizationConfig" + "description": { + "description": "A human-readable description for the label.", + "type": "string" + }, + "key": { + "description": "The label key.", + "type": "string" + }, + "valueType": { + "description": "The type of data that can be assigned to the label.", + "enum": [ + "STRING", + "BOOL", + "INT64" + ], + "enumDescriptions": [ + "A variable-length string. This is the default.", + "Boolean; true or false.", + "A 64-bit signed integer." + ], + "type": "string" } }, - "id": "Experimental" + "type": "object" + }, + "ListOperationsResponse": { + "description": "The response message for Operations.ListOperations.", + "id": "ListOperationsResponse", + "properties": { + "nextPageToken": { + "description": "The standard List next-page token.", + "type": "string" + }, + "operations": { + "description": "A list of operations that matches the specified filter in the request.", + "items": { + "$ref": "Operation" + }, + "type": "array" + } + }, + "type": "object" }, "ListServiceConfigsResponse": { - "type": "object", + "description": "Response message for ListServiceConfigs method.", + "id": "ListServiceConfigsResponse", "properties": { "nextPageToken": { "description": "The token of the next page of results.", @@ -1954,116 +1949,286 @@ }, "serviceConfigs": { "description": "The list of service configuration resources.", - "type": "array", "items": { "$ref": "Service" - } + }, + "type": "array" } }, - "id": "ListServiceConfigsResponse", - "description": "Response message for ListServiceConfigs method." - }, - "Backend": { - "description": "`Backend` defines the backend configuration for a service.", - "type": "object", - "properties": { - "rules": { - "description": "A list of API backend rules that apply to individual API methods.\n\n**NOTE:** All service configuration rules follow \"last one wins\" order.", - "type": "array", - "items": { - "$ref": "BackendRule" - } - } - }, - "id": "Backend" - }, - "SubmitConfigSourceRequest": { - "properties": { - "validateOnly": { - "description": "Optional. If set, this will result in the generation of a\n`google.api.Service` configuration based on the `ConfigSource` provided,\nbut the generated config and the sources will NOT be persisted.", - "type": "boolean" - }, - "configSource": { - "$ref": "ConfigSource", - "description": "The source configuration for the service." - } - }, - "id": "SubmitConfigSourceRequest", - "description": "Request message for SubmitConfigSource method.", "type": "object" }, - "AuthorizationConfig": { - "description": "Configuration of authorization.\n\nThis section determines the authorization provider, if unspecified, then no\nauthorization check will be done.\n\nExample:\n\n experimental:\n authorization:\n provider: firebaserules.googleapis.com", - "type": "object", + "ListServiceRolloutsResponse": { + "description": "Response message for ListServiceRollouts method.", + "id": "ListServiceRolloutsResponse", "properties": { - "provider": { - "description": "The name of the authorization provider, such as\nfirebaserules.googleapis.com.", - "type": "string" - } - }, - "id": "AuthorizationConfig" - }, - "DocumentationRule": { - "description": "A documentation rule provides information about individual API elements.", - "type": "object", - "properties": { - "selector": { - "description": "The selector is a comma-separated list of patterns. Each pattern is a\nqualified name of the element which may end in \"*\", indicating a wildcard.\nWildcards are only allowed at the end and for a whole component of the\nqualified name, i.e. \"foo.*\" is ok, but not \"foo.b*\" or \"foo.*.bar\". To\nspecify a default for all applicable elements, the whole pattern \"*\"\nis used.", + "nextPageToken": { + "description": "The token of the next page of results.", "type": "string" }, + "rollouts": { + "description": "The list of rollout resources.", + "items": { + "$ref": "Rollout" + }, + "type": "array" + } + }, + "type": "object" + }, + "ListServicesResponse": { + "description": "Response message for `ListServices` method.", + "id": "ListServicesResponse", + "properties": { + "nextPageToken": { + "description": "Token that can be passed to `ListServices` to resume a paginated query.", + "type": "string" + }, + "services": { + "description": "The returned services will only have the name field set.", + "items": { + "$ref": "ManagedService" + }, + "type": "array" + } + }, + "type": "object" + }, + "LogDescriptor": { + "description": "A description of a log type. Example in YAML format:\n\n - name: library.googleapis.com/activity_history\n description: The history of borrowing and returning library items.\n display_name: Activity\n labels:\n - key: /customer_id\n description: Identifier of a library customer", + "id": "LogDescriptor", + "properties": { "description": { - "description": "Description of the selected API(s).", + "description": "A human-readable description of this log. This information appears in\nthe documentation and can contain details.", "type": "string" }, - "deprecationDescription": { - "description": "Deprecation description of the selected element(s). It can be provided if an\nelement is marked as `deprecated`.", + "displayName": { + "description": "The human-readable name for this log. This information appears on\nthe user interface and should be concise.", + "type": "string" + }, + "labels": { + "description": "The set of labels that are available to describe a specific log entry.\nRuntime requests that contain labels not specified here are\nconsidered invalid.", + "items": { + "$ref": "LabelDescriptor" + }, + "type": "array" + }, + "name": { + "description": "The name of the log. It must be less than 512 characters long and can\ninclude the following characters: upper- and lower-case alphanumeric\ncharacters [A-Za-z0-9], and punctuation characters including\nslash, underscore, hyphen, period [/_-.].", "type": "string" } }, - "id": "DocumentationRule" + "type": "object" }, - "ContextRule": { - "description": "A context rule provides information about the context for an individual API\nelement.", - "type": "object", - "properties": { - "selector": { - "description": "Selects the methods to which this rule applies.\n\nRefer to selector for syntax details.", - "type": "string" - }, - "provided": { - "description": "A list of full type names of provided contexts.", - "type": "array", - "items": { - "type": "string" - } - }, - "requested": { - "description": "A list of full type names of requested contexts.", - "type": "array", - "items": { - "type": "string" - } - } - }, - "id": "ContextRule" - }, - "Billing": { + "Logging": { + "description": "Logging configuration of the service.\n\nThe following example shows how to configure logs to be sent to the\nproducer and consumer projects. In the example, the `activity_history`\nlog is sent to both the producer and consumer projects, whereas the\n`purchase_history` log is only sent to the producer project.\n\n monitored_resources:\n - type: library.googleapis.com/branch\n labels:\n - key: /city\n description: The city where the library branch is located in.\n - key: /name\n description: The name of the branch.\n logs:\n - name: activity_history\n labels:\n - key: /customer_id\n - name: purchase_history\n logging:\n producer_destinations:\n - monitored_resource: library.googleapis.com/branch\n logs:\n - activity_history\n - purchase_history\n consumer_destinations:\n - monitored_resource: library.googleapis.com/branch\n logs:\n - activity_history", + "id": "Logging", "properties": { "consumerDestinations": { - "description": "Billing configurations for sending metrics to the consumer project.\nThere can be multiple consumer destinations per service, each one must have\na different monitored resource type. A metric can be used in at most\none consumer destination.", - "type": "array", + "description": "Logging configurations for sending logs to the consumer project.\nThere can be multiple consumer destinations, each one must have a\ndifferent monitored resource type. A log can be used in at most\none consumer destination.", "items": { - "$ref": "BillingDestination" - } + "$ref": "LoggingDestination" + }, + "type": "array" + }, + "producerDestinations": { + "description": "Logging configurations for sending logs to the producer project.\nThere can be multiple producer destinations, each one must have a\ndifferent monitored resource type. A log can be used in at most\none producer destination.", + "items": { + "$ref": "LoggingDestination" + }, + "type": "array" + } + }, + "type": "object" + }, + "LoggingDestination": { + "description": "Configuration of a specific logging destination (the producer project\nor the consumer project).", + "id": "LoggingDestination", + "properties": { + "logs": { + "description": "Names of the logs to be sent to this destination. Each name must\nbe defined in the Service.logs section. If the log name is\nnot a domain scoped name, it will be automatically prefixed with\nthe service name followed by \"/\".", + "items": { + "type": "string" + }, + "type": "array" + }, + "monitoredResource": { + "description": "The monitored resource type. The type must be defined in the\nService.monitored_resources section.", + "type": "string" + } + }, + "type": "object" + }, + "ManagedService": { + "description": "The full representation of a Service that is managed by\nGoogle Service Management.", + "id": "ManagedService", + "properties": { + "producerProjectId": { + "description": "ID of the project that produces and owns this service.", + "type": "string" + }, + "serviceName": { + "description": "The name of the service. See the [overview](/service-management/overview)\nfor naming requirements.", + "type": "string" + } + }, + "type": "object" + }, + "MediaDownload": { + "description": "Defines the Media configuration for a service in case of a download.\nUse this only for Scotty Requests. Do not use this for media support using\nBytestream, add instead [][google.bytestream.RestByteStream] as an API to\nyour configuration for Bytestream methods.", + "id": "MediaDownload", + "properties": { + "completeNotification": { + "description": "A boolean that determines whether a notification for the completion of a\ndownload should be sent to the backend.", + "type": "boolean" + }, + "downloadService": { + "description": "DO NOT USE FIELDS BELOW THIS LINE UNTIL THIS WARNING IS REMOVED.\n\nSpecify name of the download service if one is used for download.", + "type": "string" + }, + "dropzone": { + "description": "Name of the Scotty dropzone to use for the current API.", + "type": "string" + }, + "enabled": { + "description": "Whether download is enabled.", + "type": "boolean" + }, + "maxDirectDownloadSize": { + "description": "Optional maximum acceptable size for direct download.\nThe size is specified in bytes.", + "format": "int64", + "type": "string" + }, + "useDirectDownload": { + "description": "A boolean that determines if direct download from ESF should be used for\ndownload of this media.", + "type": "boolean" + } + }, + "type": "object" + }, + "MediaUpload": { + "description": "Defines the Media configuration for a service in case of an upload.\nUse this only for Scotty Requests. Do not use this for media support using\nBytestream, add instead [][google.bytestream.RestByteStream] as an API to\nyour configuration for Bytestream methods.", + "id": "MediaUpload", + "properties": { + "completeNotification": { + "description": "A boolean that determines whether a notification for the completion of an\nupload should be sent to the backend. These notifications will not be seen\nby the client and will not consume quota.", + "type": "boolean" + }, + "dropzone": { + "description": "Name of the Scotty dropzone to use for the current API.", + "type": "string" + }, + "enabled": { + "description": "Whether upload is enabled.", + "type": "boolean" + }, + "maxSize": { + "description": "Optional maximum acceptable size for an upload.\nThe size is specified in bytes.", + "format": "int64", + "type": "string" + }, + "mimeTypes": { + "description": "An array of mimetype patterns. Esf will only accept uploads that match one\nof the given patterns.", + "items": { + "type": "string" + }, + "type": "array" + }, + "progressNotification": { + "description": "Whether to receive a notification for progress changes of media upload.", + "type": "boolean" + }, + "startNotification": { + "description": "Whether to receive a notification on the start of media upload.", + "type": "boolean" + }, + "uploadService": { + "description": "DO NOT USE FIELDS BELOW THIS LINE UNTIL THIS WARNING IS REMOVED.\n\nSpecify name of the upload service if one is used for upload.", + "type": "string" + } + }, + "type": "object" + }, + "Method": { + "description": "Method represents a method of an API interface.", + "id": "Method", + "properties": { + "name": { + "description": "The simple name of this method.", + "type": "string" + }, + "options": { + "description": "Any metadata attached to the method.", + "items": { + "$ref": "Option" + }, + "type": "array" + }, + "requestStreaming": { + "description": "If true, the request is streamed.", + "type": "boolean" + }, + "requestTypeUrl": { + "description": "A URL of the input message type.", + "type": "string" + }, + "responseStreaming": { + "description": "If true, the response is streamed.", + "type": "boolean" + }, + "responseTypeUrl": { + "description": "The URL of the output message type.", + "type": "string" + }, + "syntax": { + "description": "The source syntax of this method.", + "enum": [ + "SYNTAX_PROTO2", + "SYNTAX_PROTO3" + ], + "enumDescriptions": [ + "Syntax `proto2`.", + "Syntax `proto3`." + ], + "type": "string" } }, - "id": "Billing", - "description": "Billing related configuration of the service.\n\nThe following example shows how to configure monitored resources and metrics\nfor billing:\n\n monitored_resources:\n - type: library.googleapis.com/branch\n labels:\n - key: /city\n description: The city where the library branch is located in.\n - key: /name\n description: The name of the branch.\n metrics:\n - name: library.googleapis.com/book/borrowed_count\n metric_kind: DELTA\n value_type: INT64\n billing:\n consumer_destinations:\n - monitored_resource: library.googleapis.com/branch\n metrics:\n - library.googleapis.com/book/borrowed_count", "type": "object" }, "MetricDescriptor": { - "type": "object", + "description": "Defines a metric type and its schema. Once a metric descriptor is created,\ndeleting or altering it stops data collection and makes the metric type's\nexisting data unusable.", + "id": "MetricDescriptor", "properties": { + "description": { + "description": "A detailed description of the metric, which can be used in documentation.", + "type": "string" + }, + "displayName": { + "description": "A concise name for the metric, which can be displayed in user interfaces.\nUse sentence case without an ending period, for example \"Request count\".\nThis field is optional but it is recommended to be set for any metrics\nassociated with user-visible concepts, such as Quota.", + "type": "string" + }, + "labels": { + "description": "The set of labels that can be used to describe a specific\ninstance of this metric type. For example, the\n`appengine.googleapis.com/http/server/response_latencies` metric\ntype has a label for the HTTP response code, `response_code`, so\nyou can look at latencies for successful responses or just\nfor responses that failed.", + "items": { + "$ref": "LabelDescriptor" + }, + "type": "array" + }, + "metricKind": { + "description": "Whether the metric records instantaneous values, changes to a value, etc.\nSome combinations of `metric_kind` and `value_type` might not be supported.", + "enum": [ + "METRIC_KIND_UNSPECIFIED", + "GAUGE", + "DELTA", + "CUMULATIVE" + ], + "enumDescriptions": [ + "Do not use this default value.", + "An instantaneous measurement of a value.", + "The change in a value during a time interval.", + "A value accumulated over a time interval. Cumulative\nmeasurements in a time series should have the same start time\nand increasing end times, until an event resets the cumulative\nvalue to zero and sets a new start time for the following\npoints." + ], + "type": "string" + }, "name": { "description": "The resource name of the metric descriptor.", "type": "string" @@ -2072,16 +2237,12 @@ "description": "The metric type, including its DNS name prefix. The type is not\nURL-encoded. All user-defined custom metric types have the DNS name\n`custom.googleapis.com`. Metric types should use a natural hierarchical\ngrouping. For example:\n\n \"custom.googleapis.com/invoice/paid/amount\"\n \"appengine.googleapis.com/http/server/response_latencies\"", "type": "string" }, + "unit": { + "description": "The unit in which the metric value is reported. It is only applicable\nif the `value_type` is `INT64`, `DOUBLE`, or `DISTRIBUTION`. The\nsupported units are a subset of [The Unified Code for Units of\nMeasure](http://unitsofmeasure.org/ucum.html) standard:\n\n**Basic units (UNIT)**\n\n* `bit` bit\n* `By` byte\n* `s` second\n* `min` minute\n* `h` hour\n* `d` day\n\n**Prefixes (PREFIX)**\n\n* `k` kilo (10**3)\n* `M` mega (10**6)\n* `G` giga (10**9)\n* `T` tera (10**12)\n* `P` peta (10**15)\n* `E` exa (10**18)\n* `Z` zetta (10**21)\n* `Y` yotta (10**24)\n* `m` milli (10**-3)\n* `u` micro (10**-6)\n* `n` nano (10**-9)\n* `p` pico (10**-12)\n* `f` femto (10**-15)\n* `a` atto (10**-18)\n* `z` zepto (10**-21)\n* `y` yocto (10**-24)\n* `Ki` kibi (2**10)\n* `Mi` mebi (2**20)\n* `Gi` gibi (2**30)\n* `Ti` tebi (2**40)\n\n**Grammar**\n\nThe grammar also includes these connectors:\n\n* `/` division (as an infix operator, e.g. `1/s`).\n* `.` multiplication (as an infix operator, e.g. `GBy.d`)\n\nThe grammar for a unit is as follows:\n\n Expression = Component { \".\" Component } { \"/\" Component } ;\n\n Component = ( [ PREFIX ] UNIT | \"%\" ) [ Annotation ]\n | Annotation\n | \"1\"\n ;\n\n Annotation = \"{\" NAME \"}\" ;\n\nNotes:\n\n* `Annotation` is just a comment if it follows a `UNIT` and is\n equivalent to `1` if it is used alone. For examples,\n `{requests}/s == 1/s`, `By{transmitted}/s == By/s`.\n* `NAME` is a sequence of non-blank printable ASCII characters not\n containing '{' or '}'.\n* `1` represents dimensionless value 1, such as in `1/s`.\n* `%` represents dimensionless value 1/100, and annotates values giving\n a percentage.", + "type": "string" + }, "valueType": { - "enumDescriptions": [ - "Do not use this default value.", - "The value is a boolean.\nThis value type can be used only if the metric kind is `GAUGE`.", - "The value is a signed 64-bit integer.", - "The value is a double precision floating point number.", - "The value is a text string.\nThis value type can be used only if the metric kind is `GAUGE`.", - "The value is a `Distribution`.", - "The value is money." - ], + "description": "Whether the measurement is an integer, a floating-point number, etc.\nSome combinations of `metric_kind` and `value_type` might not be supported.", "enum": [ "VALUE_TYPE_UNSPECIFIED", "BOOL", @@ -2091,1087 +2252,873 @@ "DISTRIBUTION", "MONEY" ], - "description": "Whether the measurement is an integer, a floating-point number, etc.\nSome combinations of `metric_kind` and `value_type` might not be supported.", - "type": "string" - }, - "metricKind": { "enumDescriptions": [ "Do not use this default value.", - "An instantaneous measurement of a value.", - "The change in a value during a time interval.", - "A value accumulated over a time interval. Cumulative\nmeasurements in a time series should have the same start time\nand increasing end times, until an event resets the cumulative\nvalue to zero and sets a new start time for the following\npoints." + "The value is a boolean.\nThis value type can be used only if the metric kind is `GAUGE`.", + "The value is a signed 64-bit integer.", + "The value is a double precision floating point number.", + "The value is a text string.\nThis value type can be used only if the metric kind is `GAUGE`.", + "The value is a `Distribution`.", + "The value is money." ], - "enum": [ - "METRIC_KIND_UNSPECIFIED", - "GAUGE", - "DELTA", - "CUMULATIVE" - ], - "description": "Whether the metric records instantaneous values, changes to a value, etc.\nSome combinations of `metric_kind` and `value_type` might not be supported.", + "type": "string" + } + }, + "type": "object" + }, + "MetricRule": { + "description": "Bind API methods to metrics. Binding a method to a metric causes that\nmetric's configured quota behaviors to apply to the method call.", + "id": "MetricRule", + "properties": { + "metricCosts": { + "additionalProperties": { + "format": "int64", + "type": "string" + }, + "description": "Metrics to update when the selected methods are called, and the associated\ncost applied to each metric.\n\nThe key of the map is the metric name, and the values are the amount\nincreased for the metric against which the quota limits are defined.\nThe value must not be negative.", + "type": "object" + }, + "selector": { + "description": "Selects the methods to which this rule applies.\n\nRefer to selector for syntax details.", + "type": "string" + } + }, + "type": "object" + }, + "Mixin": { + "description": "Declares an API Interface to be included in this interface. The including\ninterface must redeclare all the methods from the included interface, but\ndocumentation and options are inherited as follows:\n\n- If after comment and whitespace stripping, the documentation\n string of the redeclared method is empty, it will be inherited\n from the original method.\n\n- Each annotation belonging to the service config (http,\n visibility) which is not set in the redeclared method will be\n inherited.\n\n- If an http annotation is inherited, the path pattern will be\n modified as follows. Any version prefix will be replaced by the\n version of the including interface plus the root path if\n specified.\n\nExample of a simple mixin:\n\n package google.acl.v1;\n service AccessControl {\n // Get the underlying ACL object.\n rpc GetAcl(GetAclRequest) returns (Acl) {\n option (google.api.http).get = \"/v1/{resource=**}:getAcl\";\n }\n }\n\n package google.storage.v2;\n service Storage {\n // rpc GetAcl(GetAclRequest) returns (Acl);\n\n // Get a data record.\n rpc GetData(GetDataRequest) returns (Data) {\n option (google.api.http).get = \"/v2/{resource=**}\";\n }\n }\n\nExample of a mixin configuration:\n\n apis:\n - name: google.storage.v2.Storage\n mixins:\n - name: google.acl.v1.AccessControl\n\nThe mixin construct implies that all methods in `AccessControl` are\nalso declared with same name and request/response types in\n`Storage`. A documentation generator or annotation processor will\nsee the effective `Storage.GetAcl` method after inherting\ndocumentation and annotations as follows:\n\n service Storage {\n // Get the underlying ACL object.\n rpc GetAcl(GetAclRequest) returns (Acl) {\n option (google.api.http).get = \"/v2/{resource=**}:getAcl\";\n }\n ...\n }\n\nNote how the version in the path pattern changed from `v1` to `v2`.\n\nIf the `root` field in the mixin is specified, it should be a\nrelative path under which inherited HTTP paths are placed. Example:\n\n apis:\n - name: google.storage.v2.Storage\n mixins:\n - name: google.acl.v1.AccessControl\n root: acls\n\nThis implies the following inherited HTTP annotation:\n\n service Storage {\n // Get the underlying ACL object.\n rpc GetAcl(GetAclRequest) returns (Acl) {\n option (google.api.http).get = \"/v2/acls/{resource=**}:getAcl\";\n }\n ...\n }", + "id": "Mixin", + "properties": { + "name": { + "description": "The fully qualified name of the interface which is included.", "type": "string" }, + "root": { + "description": "If non-empty specifies a path under which inherited HTTP paths\nare rooted.", + "type": "string" + } + }, + "type": "object" + }, + "MonitoredResourceDescriptor": { + "description": "An object that describes the schema of a MonitoredResource object using a\ntype name and a set of labels. For example, the monitored resource\ndescriptor for Google Compute Engine VM instances has a type of\n`\"gce_instance\"` and specifies the use of the labels `\"instance_id\"` and\n`\"zone\"` to identify particular VM instances.\n\nDifferent APIs can support different monitored resource types. APIs generally\nprovide a `list` method that returns the monitored resource descriptors used\nby the API.", + "id": "MonitoredResourceDescriptor", + "properties": { "description": { - "description": "A detailed description of the metric, which can be used in documentation.", + "description": "Optional. A detailed description of the monitored resource type that might\nbe used in documentation.", "type": "string" }, "displayName": { - "description": "A concise name for the metric, which can be displayed in user interfaces.\nUse sentence case without an ending period, for example \"Request count\".\nThis field is optional but it is recommended to be set for any metrics\nassociated with user-visible concepts, such as Quota.", - "type": "string" - }, - "unit": { - "description": "The unit in which the metric value is reported. It is only applicable\nif the `value_type` is `INT64`, `DOUBLE`, or `DISTRIBUTION`. The\nsupported units are a subset of [The Unified Code for Units of\nMeasure](http://unitsofmeasure.org/ucum.html) standard:\n\n**Basic units (UNIT)**\n\n* `bit` bit\n* `By` byte\n* `s` second\n* `min` minute\n* `h` hour\n* `d` day\n\n**Prefixes (PREFIX)**\n\n* `k` kilo (10**3)\n* `M` mega (10**6)\n* `G` giga (10**9)\n* `T` tera (10**12)\n* `P` peta (10**15)\n* `E` exa (10**18)\n* `Z` zetta (10**21)\n* `Y` yotta (10**24)\n* `m` milli (10**-3)\n* `u` micro (10**-6)\n* `n` nano (10**-9)\n* `p` pico (10**-12)\n* `f` femto (10**-15)\n* `a` atto (10**-18)\n* `z` zepto (10**-21)\n* `y` yocto (10**-24)\n* `Ki` kibi (2**10)\n* `Mi` mebi (2**20)\n* `Gi` gibi (2**30)\n* `Ti` tebi (2**40)\n\n**Grammar**\n\nThe grammar includes the dimensionless unit `1`, such as `1/s`.\n\nThe grammar also includes these connectors:\n\n* `/` division (as an infix operator, e.g. `1/s`).\n* `.` multiplication (as an infix operator, e.g. `GBy.d`)\n\nThe grammar for a unit is as follows:\n\n Expression = Component { \".\" Component } { \"/\" Component } ;\n\n Component = [ PREFIX ] UNIT [ Annotation ]\n | Annotation\n | \"1\"\n ;\n\n Annotation = \"{\" NAME \"}\" ;\n\nNotes:\n\n* `Annotation` is just a comment if it follows a `UNIT` and is\n equivalent to `1` if it is used alone. For examples,\n `{requests}/s == 1/s`, `By{transmitted}/s == By/s`.\n* `NAME` is a sequence of non-blank printable ASCII characters not\n containing '{' or '}'.", + "description": "Optional. A concise name for the monitored resource type that might be\ndisplayed in user interfaces. It should be a Title Cased Noun Phrase,\nwithout any article or other determiners. For example,\n`\"Google Cloud SQL Database\"`.", "type": "string" }, "labels": { - "description": "The set of labels that can be used to describe a specific\ninstance of this metric type. For example, the\n`appengine.googleapis.com/http/server/response_latencies` metric\ntype has a label for the HTTP response code, `response_code`, so\nyou can look at latencies for successful responses or just\nfor responses that failed.", - "type": "array", + "description": "Required. A set of labels used to describe instances of this monitored\nresource type. For example, an individual Google Cloud SQL database is\nidentified by values for the labels `\"database_id\"` and `\"zone\"`.", "items": { "$ref": "LabelDescriptor" - } + }, + "type": "array" + }, + "name": { + "description": "Optional. The resource name of the monitored resource descriptor:\n`\"projects/{project_id}/monitoredResourceDescriptors/{type}\"` where\n{type} is the value of the `type` field in this object and\n{project_id} is a project ID that provides API-specific context for\naccessing the type. APIs that do not use project information can use the\nresource name format `\"monitoredResourceDescriptors/{type}\"`.", + "type": "string" + }, + "type": { + "description": "Required. The monitored resource type. For example, the type\n`\"cloudsql_database\"` represents databases in Google Cloud SQL.\nThe maximum length of this value is 256 characters.", + "type": "string" } }, - "id": "MetricDescriptor", - "description": "Defines a metric type and its schema. Once a metric descriptor is created,\ndeleting or altering it stops data collection and makes the metric type's\nexisting data unusable." + "type": "object" + }, + "Monitoring": { + "description": "Monitoring configuration of the service.\n\nThe example below shows how to configure monitored resources and metrics\nfor monitoring. In the example, a monitored resource and two metrics are\ndefined. The `library.googleapis.com/book/returned_count` metric is sent\nto both producer and consumer projects, whereas the\n`library.googleapis.com/book/overdue_count` metric is only sent to the\nconsumer project.\n\n monitored_resources:\n - type: library.googleapis.com/branch\n labels:\n - key: /city\n description: The city where the library branch is located in.\n - key: /name\n description: The name of the branch.\n metrics:\n - name: library.googleapis.com/book/returned_count\n metric_kind: DELTA\n value_type: INT64\n labels:\n - key: /customer_id\n - name: library.googleapis.com/book/overdue_count\n metric_kind: GAUGE\n value_type: INT64\n labels:\n - key: /customer_id\n monitoring:\n producer_destinations:\n - monitored_resource: library.googleapis.com/branch\n metrics:\n - library.googleapis.com/book/returned_count\n consumer_destinations:\n - monitored_resource: library.googleapis.com/branch\n metrics:\n - library.googleapis.com/book/returned_count\n - library.googleapis.com/book/overdue_count", + "id": "Monitoring", + "properties": { + "consumerDestinations": { + "description": "Monitoring configurations for sending metrics to the consumer project.\nThere can be multiple consumer destinations, each one must have a\ndifferent monitored resource type. A metric can be used in at most\none consumer destination.", + "items": { + "$ref": "MonitoringDestination" + }, + "type": "array" + }, + "producerDestinations": { + "description": "Monitoring configurations for sending metrics to the producer project.\nThere can be multiple producer destinations, each one must have a\ndifferent monitored resource type. A metric can be used in at most\none producer destination.", + "items": { + "$ref": "MonitoringDestination" + }, + "type": "array" + } + }, + "type": "object" + }, + "MonitoringDestination": { + "description": "Configuration of a specific monitoring destination (the producer project\nor the consumer project).", + "id": "MonitoringDestination", + "properties": { + "metrics": { + "description": "Names of the metrics to report to this monitoring destination.\nEach name must be defined in Service.metrics section.", + "items": { + "type": "string" + }, + "type": "array" + }, + "monitoredResource": { + "description": "The monitored resource type. The type must be defined in\nService.monitored_resources section.", + "type": "string" + } + }, + "type": "object" + }, + "OAuthRequirements": { + "description": "OAuth scopes are a way to define data and permissions on data. For example,\nthere are scopes defined for \"Read-only access to Google Calendar\" and\n\"Access to Cloud Platform\". Users can consent to a scope for an application,\ngiving it permission to access that data on their behalf.\n\nOAuth scope specifications should be fairly coarse grained; a user will need\nto see and understand the text description of what your scope means.\n\nIn most cases: use one or at most two OAuth scopes for an entire family of\nproducts. If your product has multiple APIs, you should probably be sharing\nthe OAuth scope across all of those APIs.\n\nWhen you need finer grained OAuth consent screens: talk with your product\nmanagement about how developers will use them in practice.\n\nPlease note that even though each of the canonical scopes is enough for a\nrequest to be accepted and passed to the backend, a request can still fail\ndue to the backend requiring additional scopes or permissions.", + "id": "OAuthRequirements", + "properties": { + "canonicalScopes": { + "description": "The list of publicly documented OAuth scopes that are allowed access. An\nOAuth token containing any of these scopes will be accepted.\n\nExample:\n\n canonical_scopes: https://www.googleapis.com/auth/calendar,\n https://www.googleapis.com/auth/calendar.read", + "type": "string" + } + }, + "type": "object" + }, + "Operation": { + "description": "This resource represents a long-running operation that is the result of a\nnetwork API call.", + "id": "Operation", + "properties": { + "done": { + "description": "If the value is `false`, it means the operation is still in progress.\nIf `true`, the operation is completed, and either `error` or `response` is\navailable.", + "type": "boolean" + }, + "error": { + "$ref": "Status", + "description": "The error result of the operation in case of failure or cancellation." + }, + "metadata": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "description": "Service-specific metadata associated with the operation. It typically\ncontains progress information and common metadata such as create time.\nSome services might not provide such metadata. Any method that returns a\nlong-running operation should document the metadata type, if any.", + "type": "object" + }, + "name": { + "description": "The server-assigned name, which is only unique within the same service that\noriginally returns it. If you use the default HTTP mapping, the\n`name` should have the format of `operations/some/unique/name`.", + "type": "string" + }, + "response": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "description": "The normal response of the operation in case of success. If the original\nmethod returns no data on success, such as `Delete`, the response is\n`google.protobuf.Empty`. If the original method is standard\n`Get`/`Create`/`Update`, the response should be the resource. For other\nmethods, the response should have the type `XxxResponse`, where `Xxx`\nis the original method name. For example, if the original method name\nis `TakeSnapshot()`, the inferred response type is\n`TakeSnapshotResponse`.", + "type": "object" + } + }, + "type": "object" + }, + "OperationMetadata": { + "description": "The metadata associated with a long running operation resource.", + "id": "OperationMetadata", + "properties": { + "progressPercentage": { + "description": "Percentage of completion of this operation, ranging from 0 to 100.", + "format": "int32", + "type": "integer" + }, + "resourceNames": { + "description": "The full name of the resources that this operation is directly\nassociated with.", + "items": { + "type": "string" + }, + "type": "array" + }, + "startTime": { + "description": "The start time of the operation.", + "format": "google-datetime", + "type": "string" + }, + "steps": { + "description": "Detailed status information for each step. The order is undetermined.", + "items": { + "$ref": "Step" + }, + "type": "array" + } + }, + "type": "object" + }, + "Option": { + "description": "A protocol buffer option, which can be attached to a message, field,\nenumeration, etc.", + "id": "Option", + "properties": { + "name": { + "description": "The option's name. For protobuf built-in options (options defined in\ndescriptor.proto), this is the short name. For example, `\"map_entry\"`.\nFor custom options, it should be the fully-qualified name. For example,\n`\"google.api.http\"`.", + "type": "string" + }, + "value": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "description": "The option's value packed in an Any message. If the value is a primitive,\nthe corresponding wrapper type defined in google/protobuf/wrappers.proto\nshould be used. If the value is an enum, it should be stored as an int32\nvalue using the google.protobuf.Int32Value type.", + "type": "object" + } + }, + "type": "object" + }, + "Page": { + "description": "Represents a documentation page. A page can contain subpages to represent\nnested documentation set structure.", + "id": "Page", + "properties": { + "content": { + "description": "The Markdown content of the page. You can use \u003ccode\u003e\u0026#40;== include {path} ==\u0026#41;\u003c/code\u003e\nto include content from a Markdown file.", + "type": "string" + }, + "name": { + "description": "The name of the page. It will be used as an identity of the page to\ngenerate URI of the page, text of the link to this page in navigation,\netc. The full page name (start from the root page name to this page\nconcatenated with `.`) can be used as reference to the page in your\ndocumentation. For example:\n\u003cpre\u003e\u003ccode\u003epages:\n- name: Tutorial\n content: \u0026#40;== include tutorial.md ==\u0026#41;\n subpages:\n - name: Java\n content: \u0026#40;== include tutorial_java.md ==\u0026#41;\n\u003c/code\u003e\u003c/pre\u003e\nYou can reference `Java` page using Markdown reference link syntax:\n`Java`.", + "type": "string" + }, + "subpages": { + "description": "Subpages of this page. The order of subpages specified here will be\nhonored in the generated docset.", + "items": { + "$ref": "Page" + }, + "type": "array" + } + }, + "type": "object" + }, + "Policy": { + "description": "Defines an Identity and Access Management (IAM) policy. It is used to\nspecify access control policies for Cloud Platform resources.\n\n\nA `Policy` consists of a list of `bindings`. A `Binding` binds a list of\n`members` to a `role`, where the members can be user accounts, Google groups,\nGoogle domains, and service accounts. A `role` is a named list of permissions\ndefined by IAM.\n\n**Example**\n\n {\n \"bindings\": [\n {\n \"role\": \"roles/owner\",\n \"members\": [\n \"user:mike@example.com\",\n \"group:admins@example.com\",\n \"domain:google.com\",\n \"serviceAccount:my-other-app@appspot.gserviceaccount.com\",\n ]\n },\n {\n \"role\": \"roles/viewer\",\n \"members\": [\"user:sean@example.com\"]\n }\n ]\n }\n\nFor a description of IAM and its features, see the\n[IAM developer's guide](https://cloud.google.com/iam/docs).", + "id": "Policy", + "properties": { + "auditConfigs": { + "description": "Specifies cloud audit logging configuration for this policy.", + "items": { + "$ref": "AuditConfig" + }, + "type": "array" + }, + "bindings": { + "description": "Associates a list of `members` to a `role`.\n`bindings` with no members will result in an error.", + "items": { + "$ref": "Binding" + }, + "type": "array" + }, + "etag": { + "description": "`etag` is used for optimistic concurrency control as a way to help\nprevent simultaneous updates of a policy from overwriting each other.\nIt is strongly suggested that systems make use of the `etag` in the\nread-modify-write cycle to perform policy updates in order to avoid race\nconditions: An `etag` is returned in the response to `getIamPolicy`, and\nsystems are expected to put that etag in the request to `setIamPolicy` to\nensure that their change will be applied to the same version of the policy.\n\nIf no `etag` is provided in the call to `setIamPolicy`, then the existing\npolicy is overwritten blindly.", + "format": "byte", + "type": "string" + }, + "version": { + "description": "Deprecated.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "Quota": { + "description": "Quota configuration helps to achieve fairness and budgeting in service\nusage.\n\nThe quota configuration works this way:\n- The service configuration defines a set of metrics.\n- For API calls, the quota.metric_rules maps methods to metrics with\n corresponding costs.\n- The quota.limits defines limits on the metrics, which will be used for\n quota checks at runtime.\n\nAn example quota configuration in yaml format:\n\n quota:\n\n - name: apiWriteQpsPerProject\n metric: library.googleapis.com/write_calls\n unit: \"1/min/{project}\" # rate limit for consumer projects\n values:\n STANDARD: 10000\n\n\n # The metric rules bind all methods to the read_calls metric,\n # except for the UpdateBook and DeleteBook methods. These two methods\n # are mapped to the write_calls metric, with the UpdateBook method\n # consuming at twice rate as the DeleteBook method.\n metric_rules:\n - selector: \"*\"\n metric_costs:\n library.googleapis.com/read_calls: 1\n - selector: google.example.library.v1.LibraryService.UpdateBook\n metric_costs:\n library.googleapis.com/write_calls: 2\n - selector: google.example.library.v1.LibraryService.DeleteBook\n metric_costs:\n library.googleapis.com/write_calls: 1\n\n Corresponding Metric definition:\n\n metrics:\n - name: library.googleapis.com/read_calls\n display_name: Read requests\n metric_kind: DELTA\n value_type: INT64\n\n - name: library.googleapis.com/write_calls\n display_name: Write requests\n metric_kind: DELTA\n value_type: INT64", + "id": "Quota", + "properties": { + "limits": { + "description": "List of `QuotaLimit` definitions for the service.", + "items": { + "$ref": "QuotaLimit" + }, + "type": "array" + }, + "metricRules": { + "description": "List of `MetricRule` definitions, each one mapping a selected method to one\nor more metrics.", + "items": { + "$ref": "MetricRule" + }, + "type": "array" + } + }, + "type": "object" + }, + "QuotaLimit": { + "description": "`QuotaLimit` defines a specific limit that applies over a specified duration\nfor a limit type. There can be at most one limit for a duration and limit\ntype combination defined within a `QuotaGroup`.", + "id": "QuotaLimit", + "properties": { + "defaultLimit": { + "description": "Default number of tokens that can be consumed during the specified\nduration. This is the number of tokens assigned when a client\napplication developer activates the service for his/her project.\n\nSpecifying a value of 0 will block all requests. This can be used if you\nare provisioning quota to selected consumers and blocking others.\nSimilarly, a value of -1 will indicate an unlimited quota. No other\nnegative values are allowed.\n\nUsed by group-based quotas only.", + "format": "int64", + "type": "string" + }, + "description": { + "description": "Optional. User-visible, extended description for this quota limit.\nShould be used only when more context is needed to understand this limit\nthan provided by the limit's display name (see: `display_name`).", + "type": "string" + }, + "displayName": { + "description": "User-visible display name for this limit.\nOptional. If not set, the UI will provide a default display name based on\nthe quota configuration. This field can be used to override the default\ndisplay name generated from the configuration.", + "type": "string" + }, + "duration": { + "description": "Duration of this limit in textual notation. Example: \"100s\", \"24h\", \"1d\".\nFor duration longer than a day, only multiple of days is supported. We\nsupport only \"100s\" and \"1d\" for now. Additional support will be added in\nthe future. \"0\" indicates indefinite duration.\n\nUsed by group-based quotas only.", + "type": "string" + }, + "freeTier": { + "description": "Free tier value displayed in the Developers Console for this limit.\nThe free tier is the number of tokens that will be subtracted from the\nbilled amount when billing is enabled.\nThis field can only be set on a limit with duration \"1d\", in a billable\ngroup; it is invalid on any other limit. If this field is not set, it\ndefaults to 0, indicating that there is no free tier for this service.\n\nUsed by group-based quotas only.", + "format": "int64", + "type": "string" + }, + "maxLimit": { + "description": "Maximum number of tokens that can be consumed during the specified\nduration. Client application developers can override the default limit up\nto this maximum. If specified, this value cannot be set to a value less\nthan the default limit. If not specified, it is set to the default limit.\n\nTo allow clients to apply overrides with no upper bound, set this to -1,\nindicating unlimited maximum quota.\n\nUsed by group-based quotas only.", + "format": "int64", + "type": "string" + }, + "metric": { + "description": "The name of the metric this quota limit applies to. The quota limits with\nthe same metric will be checked together during runtime. The metric must be\ndefined within the service config.", + "type": "string" + }, + "name": { + "description": "Name of the quota limit.\n\nThe name must be provided, and it must be unique within the service. The\nname can only include alphanumeric characters as well as '-'.\n\nThe maximum length of the limit name is 64 characters.", + "type": "string" + }, + "unit": { + "description": "Specify the unit of the quota limit. It uses the same syntax as\nMetric.unit. The supported unit kinds are determined by the quota\nbackend system.\n\nHere are some examples:\n* \"1/min/{project}\" for quota per minute per project.\n\nNote: the order of unit components is insignificant.\nThe \"1\" at the beginning is required to follow the metric unit syntax.", + "type": "string" + }, + "values": { + "additionalProperties": { + "format": "int64", + "type": "string" + }, + "description": "Tiered limit values. You must specify this as a key:value pair, with an\ninteger value that is the maximum number of requests allowed for the\nspecified unit. Currently only STANDARD is supported.", + "type": "object" + } + }, + "type": "object" + }, + "Rollout": { + "description": "A rollout resource that defines how service configuration versions are pushed\nto control plane systems. Typically, you create a new version of the\nservice config, and then create a Rollout to push the service config.", + "id": "Rollout", + "properties": { + "createTime": { + "description": "Creation time of the rollout. Readonly.", + "format": "google-datetime", + "type": "string" + }, + "createdBy": { + "description": "The user who created the Rollout. Readonly.", + "type": "string" + }, + "deleteServiceStrategy": { + "$ref": "DeleteServiceStrategy", + "description": "The strategy associated with a rollout to delete a `ManagedService`.\nReadonly." + }, + "rolloutId": { + "description": "Optional unique identifier of this Rollout. Only lower case letters, digits\n and '-' are allowed.\n\nIf not specified by client, the server will generate one. The generated id\nwill have the form of \u003cdate\u003e\u003crevision number\u003e, where \"date\" is the create\ndate in ISO 8601 format. \"revision number\" is a monotonically increasing\npositive number that is reset every day for each service.\nAn example of the generated rollout_id is '2016-02-16r1'", + "type": "string" + }, + "serviceName": { + "description": "The name of the service associated with this Rollout.", + "type": "string" + }, + "status": { + "description": "The status of this rollout. Readonly. In case of a failed rollout,\nthe system will automatically rollback to the current Rollout\nversion. Readonly.", + "enum": [ + "ROLLOUT_STATUS_UNSPECIFIED", + "IN_PROGRESS", + "SUCCESS", + "CANCELLED", + "FAILED", + "PENDING", + "FAILED_ROLLED_BACK" + ], + "enumDescriptions": [ + "No status specified.", + "The Rollout is in progress.", + "The Rollout has completed successfully.", + "The Rollout has been cancelled. This can happen if you have overlapping\nRollout pushes, and the previous ones will be cancelled.", + "The Rollout has failed and the rollback attempt has failed too.", + "The Rollout has not started yet and is pending for execution.", + "The Rollout has failed and rolled back to the previous successful\nRollout." + ], + "type": "string" + }, + "trafficPercentStrategy": { + "$ref": "TrafficPercentStrategy", + "description": "Google Service Control selects service configurations based on\ntraffic percentage." + } + }, + "type": "object" + }, + "Service": { + "description": "`Service` is the root object of Google service configuration schema. It\ndescribes basic information about a service, such as the name and the\ntitle, and delegates other aspects to sub-sections. Each sub-section is\neither a proto message or a repeated proto message that configures a\nspecific aspect, such as auth. See each proto message definition for details.\n\nExample:\n\n type: google.api.Service\n config_version: 3\n name: calendar.googleapis.com\n title: Google Calendar API\n apis:\n - name: google.calendar.v3.Calendar\n authentication:\n providers:\n - id: google_calendar_auth\n jwks_uri: https://www.googleapis.com/oauth2/v1/certs\n issuer: https://securetoken.google.com\n rules:\n - selector: \"*\"\n requirements:\n provider_id: google_calendar_auth", + "id": "Service", + "properties": { + "apis": { + "description": "A list of API interfaces exported by this service. Only the `name` field\nof the google.protobuf.Api needs to be provided by the configuration\nauthor, as the remaining fields will be derived from the IDL during the\nnormalization process. It is an error to specify an API interface here\nwhich cannot be resolved against the associated IDL files.", + "items": { + "$ref": "Api" + }, + "type": "array" + }, + "authentication": { + "$ref": "Authentication", + "description": "Auth configuration." + }, + "backend": { + "$ref": "Backend", + "description": "API backend configuration." + }, + "billing": { + "$ref": "Billing", + "description": "Billing configuration." + }, + "configVersion": { + "description": "The semantic version of the service configuration. The config version\naffects the interpretation of the service configuration. For example,\ncertain features are enabled by default for certain config versions.\nThe latest config version is `3`.", + "format": "uint32", + "type": "integer" + }, + "context": { + "$ref": "Context", + "description": "Context configuration." + }, + "control": { + "$ref": "Control", + "description": "Configuration for the service control plane." + }, + "customError": { + "$ref": "CustomError", + "description": "Custom error configuration." + }, + "documentation": { + "$ref": "Documentation", + "description": "Additional API documentation." + }, + "endpoints": { + "description": "Configuration for network endpoints. If this is empty, then an endpoint\nwith the same name as the service is automatically generated to service all\ndefined APIs.", + "items": { + "$ref": "Endpoint" + }, + "type": "array" + }, + "enums": { + "description": "A list of all enum types included in this API service. Enums\nreferenced directly or indirectly by the `apis` are automatically\nincluded. Enums which are not referenced but shall be included\nshould be listed here by name. Example:\n\n enums:\n - name: google.someapi.v1.SomeEnum", + "items": { + "$ref": "Enum" + }, + "type": "array" + }, + "experimental": { + "$ref": "Experimental", + "description": "Experimental configuration." + }, + "http": { + "$ref": "Http", + "description": "HTTP configuration." + }, + "id": { + "description": "A unique ID for a specific instance of this message, typically assigned\nby the client for tracking purpose. If empty, the server may choose to\ngenerate one instead.", + "type": "string" + }, + "logging": { + "$ref": "Logging", + "description": "Logging configuration." + }, + "logs": { + "description": "Defines the logs used by this service.", + "items": { + "$ref": "LogDescriptor" + }, + "type": "array" + }, + "metrics": { + "description": "Defines the metrics used by this service.", + "items": { + "$ref": "MetricDescriptor" + }, + "type": "array" + }, + "monitoredResources": { + "description": "Defines the monitored resources used by this service. This is required\nby the Service.monitoring and Service.logging configurations.", + "items": { + "$ref": "MonitoredResourceDescriptor" + }, + "type": "array" + }, + "monitoring": { + "$ref": "Monitoring", + "description": "Monitoring configuration." + }, + "name": { + "description": "The DNS address at which this service is available,\ne.g. `calendar.googleapis.com`.", + "type": "string" + }, + "producerProjectId": { + "description": "The Google project that owns this service.", + "type": "string" + }, + "quota": { + "$ref": "Quota", + "description": "Quota configuration." + }, + "sourceInfo": { + "$ref": "SourceInfo", + "description": "Output only. The source information for this configuration if available." + }, + "systemParameters": { + "$ref": "SystemParameters", + "description": "System parameter configuration." + }, + "systemTypes": { + "description": "A list of all proto message types included in this API service.\nIt serves similar purpose as [google.api.Service.types], except that\nthese types are not needed by user-defined APIs. Therefore, they will not\nshow up in the generated discovery doc. This field should only be used\nto define system APIs in ESF.", + "items": { + "$ref": "Type" + }, + "type": "array" + }, + "title": { + "description": "The product title for this service.", + "type": "string" + }, + "types": { + "description": "A list of all proto message types included in this API service.\nTypes referenced directly or indirectly by the `apis` are\nautomatically included. Messages which are not referenced but\nshall be included, such as types used by the `google.protobuf.Any` type,\nshould be listed here by name. Example:\n\n types:\n - name: google.protobuf.Int32", + "items": { + "$ref": "Type" + }, + "type": "array" + }, + "usage": { + "$ref": "Usage", + "description": "Configuration controlling usage of this service." + } + }, + "type": "object" + }, + "SetIamPolicyRequest": { + "description": "Request message for `SetIamPolicy` method.", + "id": "SetIamPolicyRequest", + "properties": { + "policy": { + "$ref": "Policy", + "description": "REQUIRED: The complete policy to be applied to the `resource`. The size of\nthe policy is limited to a few 10s of KB. An empty policy is a\nvalid policy but certain Cloud Platform services (such as Projects)\nmight reject them." + }, + "updateMask": { + "description": "OPTIONAL: A FieldMask specifying which fields of the policy to modify. Only\nthe fields in the mask will be modified. If no mask is provided, the\nfollowing default mask is used:\npaths: \"bindings, etag\"\nThis field is only used by Cloud IAM.", + "format": "google-fieldmask", + "type": "string" + } + }, + "type": "object" }, "SourceContext": { "description": "`SourceContext` represents information about the source of a\nprotobuf element, like the file in which it is defined.", - "type": "object", + "id": "SourceContext", "properties": { "fileName": { "description": "The path-qualified name of the .proto file that contained the associated\nprotobuf element. For example: `\"google/protobuf/source_context.proto\"`.", "type": "string" } }, - "id": "SourceContext" + "type": "object" }, - "Expr": { - "description": "Represents an expression text. Example:\n\n title: \"User account presence\"\n description: \"Determines whether the request has a user account\"\n expression: \"size(request.user) \u003e 0\"", - "type": "object", + "SourceInfo": { + "description": "Source information used to create a Service Config", + "id": "SourceInfo", "properties": { - "title": { - "description": "An optional title for the expression, i.e. a short string describing\nits purpose. This can be used e.g. in UIs which allow to enter the\nexpression.", - "type": "string" + "sourceFiles": { + "description": "All files used during config generation.", + "items": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "type": "object" + }, + "type": "array" + } + }, + "type": "object" + }, + "Status": { + "description": "The `Status` type defines a logical error model that is suitable for different\nprogramming environments, including REST APIs and RPC APIs. It is used by\n[gRPC](https://github.com/grpc). The error model is designed to be:\n\n- Simple to use and understand for most users\n- Flexible enough to meet unexpected needs\n\n# Overview\n\nThe `Status` message contains three pieces of data: error code, error message,\nand error details. The error code should be an enum value of\ngoogle.rpc.Code, but it may accept additional error codes if needed. The\nerror message should be a developer-facing English message that helps\ndevelopers *understand* and *resolve* the error. If a localized user-facing\nerror message is needed, put the localized message in the error details or\nlocalize it in the client. The optional error details may contain arbitrary\ninformation about the error. There is a predefined set of error detail types\nin the package `google.rpc` that can be used for common error conditions.\n\n# Language mapping\n\nThe `Status` message is the logical representation of the error model, but it\nis not necessarily the actual wire format. When the `Status` message is\nexposed in different client libraries and different wire protocols, it can be\nmapped differently. For example, it will likely be mapped to some exceptions\nin Java, but more likely mapped to some error codes in C.\n\n# Other uses\n\nThe error model and the `Status` message can be used in a variety of\nenvironments, either with or without APIs, to provide a\nconsistent developer experience across different environments.\n\nExample uses of this error model include:\n\n- Partial errors. If a service needs to return partial errors to the client,\n it may embed the `Status` in the normal response to indicate the partial\n errors.\n\n- Workflow errors. A typical workflow has multiple steps. Each step may\n have a `Status` message for error reporting.\n\n- Batch operations. If a client uses batch request and batch response, the\n `Status` message should be used directly inside batch response, one for\n each error sub-response.\n\n- Asynchronous operations. If an API call embeds asynchronous operation\n results in its response, the status of those operations should be\n represented directly using the `Status` message.\n\n- Logging. If some API errors are stored in logs, the message `Status` could\n be used directly after any stripping needed for security/privacy reasons.", + "id": "Status", + "properties": { + "code": { + "description": "The status code, which should be an enum value of google.rpc.Code.", + "format": "int32", + "type": "integer" }, - "location": { - "description": "An optional string indicating the location of the expression for error\nreporting, e.g. a file name and a position in the file.", - "type": "string" + "details": { + "description": "A list of messages that carry the error details. There is a common set of\nmessage types for APIs to use.", + "items": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "type": "object" + }, + "type": "array" }, + "message": { + "description": "A developer-facing error message, which should be in English. Any\nuser-facing error message should be localized and sent in the\ngoogle.rpc.Status.details field, or localized by the client.", + "type": "string" + } + }, + "type": "object" + }, + "Step": { + "description": "Represents the status of one operation step.", + "id": "Step", + "properties": { "description": { - "description": "An optional description of the expression. This is a longer text which\ndescribes the expression, e.g. when hovered over it in a UI.", + "description": "The short description of the step.", "type": "string" }, - "expression": { - "description": "Textual representation of an expression in\nCommon Expression Language syntax.\n\nThe application context of the containing message determines which\nwell-known feature set of CEL is supported.", + "status": { + "description": "The status code.", + "enum": [ + "STATUS_UNSPECIFIED", + "DONE", + "NOT_STARTED", + "IN_PROGRESS", + "FAILED", + "CANCELLED" + ], + "enumDescriptions": [ + "Unspecifed code.", + "The operation or step has completed without errors.", + "The operation or step has not started yet.", + "The operation or step is in progress.", + "The operation or step has completed with errors. If the operation is\nrollbackable, the rollback completed with errors too.", + "The operation or step has completed with cancellation." + ], "type": "string" } }, - "id": "Expr" + "type": "object" }, - "ListServicesResponse": { - "description": "Response message for `ListServices` method.", - "type": "object", + "SubmitConfigSourceRequest": { + "description": "Request message for SubmitConfigSource method.", + "id": "SubmitConfigSourceRequest", "properties": { - "services": { - "description": "The returned services will only have the name field set.", - "type": "array", - "items": { - "$ref": "ManagedService" - } + "configSource": { + "$ref": "ConfigSource", + "description": "The source configuration for the service." }, - "nextPageToken": { - "description": "Token that can be passed to `ListServices` to resume a paginated query.", - "type": "string" - } - }, - "id": "ListServicesResponse" - }, - "Endpoint": { - "description": "`Endpoint` describes a network endpoint that serves a set of APIs.\nA service may expose any number of endpoints, and all endpoints share the\nsame service configuration, such as quota configuration and monitoring\nconfiguration.\n\nExample service configuration:\n\n name: library-example.googleapis.com\n endpoints:\n # Below entry makes 'google.example.library.v1.Library'\n # API be served from endpoint address library-example.googleapis.com.\n # It also allows HTTP OPTIONS calls to be passed to the backend, for\n # it to decide whether the subsequent cross-origin request is\n # allowed to proceed.\n - name: library-example.googleapis.com\n allow_cors: true", - "type": "object", - "properties": { - "aliases": { - "description": "DEPRECATED: This field is no longer supported. Instead of using aliases,\nplease specify multiple google.api.Endpoint for each of the intended\naliases.\n\nAdditional names that this endpoint will be hosted on.", - "type": "array", - "items": { - "type": "string" - } - }, - "features": { - "description": "The list of features enabled on this endpoint.", - "type": "array", - "items": { - "type": "string" - } - }, - "allowCors": { - "description": "Allowing\n[CORS](https://en.wikipedia.org/wiki/Cross-origin_resource_sharing), aka\ncross-domain traffic, would allow the backends served from this endpoint to\nreceive and respond to HTTP OPTIONS requests. The response will be used by\nthe browser to determine whether the subsequent cross-origin request is\nallowed to proceed.", + "validateOnly": { + "description": "Optional. If set, this will result in the generation of a\n`google.api.Service` configuration based on the `ConfigSource` provided,\nbut the generated config and the sources will NOT be persisted.", "type": "boolean" + } + }, + "type": "object" + }, + "SubmitConfigSourceResponse": { + "description": "Response message for SubmitConfigSource method.", + "id": "SubmitConfigSourceResponse", + "properties": { + "serviceConfig": { + "$ref": "Service", + "description": "The generated service configuration." + } + }, + "type": "object" + }, + "SystemParameter": { + "description": "Define a parameter's name and location. The parameter may be passed as either\nan HTTP header or a URL query parameter, and if both are passed the behavior\nis implementation-dependent.", + "id": "SystemParameter", + "properties": { + "httpHeader": { + "description": "Define the HTTP header name to use for the parameter. It is case\ninsensitive.", + "type": "string" }, "name": { - "description": "The canonical name of this endpoint.", + "description": "Define the name of the parameter, such as \"api_key\" . It is case sensitive.", "type": "string" }, - "target": { - "description": "The specification of an Internet routable address of API frontend that will\nhandle requests to this [API Endpoint](https://cloud.google.com/apis/design/glossary).\nIt should be either a valid IPv4 address or a fully-qualified domain name.\nFor example, \"8.8.8.8\" or \"myservice.appspot.com\".", + "urlQueryParameter": { + "description": "Define the URL query parameter name to use for the parameter. It is case\nsensitive.", "type": "string" } }, - "id": "Endpoint" + "type": "object" }, - "OAuthRequirements": { - "description": "OAuth scopes are a way to define data and permissions on data. For example,\nthere are scopes defined for \"Read-only access to Google Calendar\" and\n\"Access to Cloud Platform\". Users can consent to a scope for an application,\ngiving it permission to access that data on their behalf.\n\nOAuth scope specifications should be fairly coarse grained; a user will need\nto see and understand the text description of what your scope means.\n\nIn most cases: use one or at most two OAuth scopes for an entire family of\nproducts. If your product has multiple APIs, you should probably be sharing\nthe OAuth scope across all of those APIs.\n\nWhen you need finer grained OAuth consent screens: talk with your product\nmanagement about how developers will use them in practice.\n\nPlease note that even though each of the canonical scopes is enough for a\nrequest to be accepted and passed to the backend, a request can still fail\ndue to the backend requiring additional scopes or permissions.", - "type": "object", + "SystemParameterRule": { + "description": "Define a system parameter rule mapping system parameter definitions to\nmethods.", + "id": "SystemParameterRule", "properties": { - "canonicalScopes": { - "type": "string", - "description": "The list of publicly documented OAuth scopes that are allowed access. An\nOAuth token containing any of these scopes will be accepted.\n\nExample:\n\n canonical_scopes: https://www.googleapis.com/auth/calendar,\n https://www.googleapis.com/auth/calendar.read" + "parameters": { + "description": "Define parameters. Multiple names may be defined for a parameter.\nFor a given method call, only one of them should be used. If multiple\nnames are used the behavior is implementation-dependent.\nIf none of the specified names are present the behavior is\nparameter-dependent.", + "items": { + "$ref": "SystemParameter" + }, + "type": "array" + }, + "selector": { + "description": "Selects the methods to which this rule applies. Use '*' to indicate all\nmethods in all APIs.\n\nRefer to selector for syntax details.", + "type": "string" } }, - "id": "OAuthRequirements" + "type": "object" + }, + "SystemParameters": { + "description": "### System parameter configuration\n\nA system parameter is a special kind of parameter defined by the API\nsystem, not by an individual API. It is typically mapped to an HTTP header\nand/or a URL query parameter. This configuration specifies which methods\nchange the names of the system parameters.", + "id": "SystemParameters", + "properties": { + "rules": { + "description": "Define system parameters.\n\nThe parameters defined here will override the default parameters\nimplemented by the system. If this field is missing from the service\nconfig, default system parameters will be used. Default system parameters\nand names is implementation-dependent.\n\nExample: define api key for all methods\n\n system_parameters\n rules:\n - selector: \"*\"\n parameters:\n - name: api_key\n url_query_parameter: api_key\n\n\nExample: define 2 api key names for a specific method.\n\n system_parameters\n rules:\n - selector: \"/ListShelves\"\n parameters:\n - name: api_key\n http_header: Api-Key1\n - name: api_key\n http_header: Api-Key2\n\n**NOTE:** All service configuration rules follow \"last one wins\" order.", + "items": { + "$ref": "SystemParameterRule" + }, + "type": "array" + } + }, + "type": "object" + }, + "TestIamPermissionsRequest": { + "description": "Request message for `TestIamPermissions` method.", + "id": "TestIamPermissionsRequest", + "properties": { + "permissions": { + "description": "The set of permissions to check for the `resource`. Permissions with\nwildcards (such as '*' or 'storage.*') are not allowed. For more\ninformation see\n[IAM Overview](https://cloud.google.com/iam/docs/overview#permissions).", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "TestIamPermissionsResponse": { + "description": "Response message for `TestIamPermissions` method.", + "id": "TestIamPermissionsResponse", + "properties": { + "permissions": { + "description": "A subset of `TestPermissionsRequest.permissions` that the caller is\nallowed.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "TrafficPercentStrategy": { + "description": "Strategy that specifies how clients of Google Service Controller want to\nsend traffic to use different config versions. This is generally\nused by API proxy to split traffic based on your configured precentage for\neach config version.\n\nOne example of how to gradually rollout a new service configuration using\nthis\nstrategy:\nDay 1\n\n Rollout {\n id: \"example.googleapis.com/rollout_20160206\"\n traffic_percent_strategy {\n percentages: {\n \"example.googleapis.com/20160201\": 70.00\n \"example.googleapis.com/20160206\": 30.00\n }\n }\n }\n\nDay 2\n\n Rollout {\n id: \"example.googleapis.com/rollout_20160207\"\n traffic_percent_strategy: {\n percentages: {\n \"example.googleapis.com/20160206\": 100.00\n }\n }\n }", + "id": "TrafficPercentStrategy", + "properties": { + "percentages": { + "additionalProperties": { + "format": "double", + "type": "number" + }, + "description": "Maps service configuration IDs to their corresponding traffic percentage.\nKey is the service configuration ID, Value is the traffic percentage\nwhich must be greater than 0.0 and the sum must equal to 100.0.", + "type": "object" + } + }, + "type": "object" + }, + "Type": { + "description": "A protocol buffer message type.", + "id": "Type", + "properties": { + "fields": { + "description": "The list of fields.", + "items": { + "$ref": "Field" + }, + "type": "array" + }, + "name": { + "description": "The fully qualified message name.", + "type": "string" + }, + "oneofs": { + "description": "The list of types appearing in `oneof` definitions in this type.", + "items": { + "type": "string" + }, + "type": "array" + }, + "options": { + "description": "The protocol buffer options.", + "items": { + "$ref": "Option" + }, + "type": "array" + }, + "sourceContext": { + "$ref": "SourceContext", + "description": "The source context." + }, + "syntax": { + "description": "The source syntax.", + "enum": [ + "SYNTAX_PROTO2", + "SYNTAX_PROTO3" + ], + "enumDescriptions": [ + "Syntax `proto2`.", + "Syntax `proto3`." + ], + "type": "string" + } + }, + "type": "object" + }, + "UndeleteServiceResponse": { + "description": "Response message for UndeleteService method.", + "id": "UndeleteServiceResponse", + "properties": { + "service": { + "$ref": "ManagedService", + "description": "Revived service resource." + } + }, + "type": "object" }, "Usage": { "description": "Configuration controlling usage of a service.", - "type": "object", + "id": "Usage", "properties": { "producerNotificationChannel": { "description": "The full resource name of a channel used for sending notifications to the\nservice producer.\n\nGoogle Service Management currently only supports\n[Google Cloud Pub/Sub](https://cloud.google.com/pubsub) as a notification\nchannel. To use Google Cloud Pub/Sub as the channel, this must be the name\nof a Cloud Pub/Sub topic that uses the Cloud Pub/Sub topic name format\ndocumented in https://cloud.google.com/pubsub/docs/overview.", "type": "string" }, - "rules": { - "description": "A list of usage rules that apply to individual API methods.\n\n**NOTE:** All service configuration rules follow \"last one wins\" order.", - "type": "array", - "items": { - "$ref": "UsageRule" - } - }, "requirements": { "description": "Requirements that must be satisfied before a consumer project can use the\nservice. Each requirement is of the form \u003cservice.name\u003e/\u003crequirement-id\u003e;\nfor example 'serviceusage.googleapis.com/billing-enabled'.", - "type": "array", "items": { "type": "string" - } + }, + "type": "array" + }, + "rules": { + "description": "A list of usage rules that apply to individual API methods.\n\n**NOTE:** All service configuration rules follow \"last one wins\" order.", + "items": { + "$ref": "UsageRule" + }, + "type": "array" } }, - "id": "Usage" - }, - "GetIamPolicyRequest": { - "properties": {}, - "id": "GetIamPolicyRequest", - "description": "Request message for `GetIamPolicy` method.", "type": "object" }, - "TestIamPermissionsResponse": { - "description": "Response message for `TestIamPermissions` method.", - "type": "object", + "UsageRule": { + "description": "Usage configuration rules for the service.\n\nNOTE: Under development.\n\n\nUse this rule to configure unregistered calls for the service. Unregistered\ncalls are calls that do not contain consumer project identity.\n(Example: calls that do not contain an API key).\nBy default, API methods do not allow unregistered calls, and each method call\nmust be identified by a consumer project identity. Use this rule to\nallow/disallow unregistered calls.\n\nExample of an API that wants to allow unregistered calls for entire service.\n\n usage:\n rules:\n - selector: \"*\"\n allow_unregistered_calls: true\n\nExample of a method that wants to allow unregistered calls.\n\n usage:\n rules:\n - selector: \"google.example.library.v1.LibraryService.CreateBook\"\n allow_unregistered_calls: true", + "id": "UsageRule", "properties": { - "permissions": { - "description": "A subset of `TestPermissionsRequest.permissions` that the caller is\nallowed.", - "type": "array", - "items": { - "type": "string" - } + "allowUnregisteredCalls": { + "description": "If true, the selected method allows unregistered calls, e.g. calls\nthat don't identify any user or application.", + "type": "boolean" + }, + "selector": { + "description": "Selects the methods to which this rule applies. Use '*' to indicate all\nmethods in all APIs.\n\nRefer to selector for syntax details.", + "type": "string" + }, + "skipServiceControl": { + "description": "If true, the selected method should skip service control and the control\nplane features, such as quota and billing, will not be available.\nThis flag is used by Google Cloud Endpoints to bypass checks for internal\nmethods, such as service health check methods.", + "type": "boolean" } }, - "id": "TestIamPermissionsResponse" - }, - "Context": { - "description": "`Context` defines which contexts an API requests.\n\nExample:\n\n context:\n rules:\n - selector: \"*\"\n requested:\n - google.rpc.context.ProjectContext\n - google.rpc.context.OriginContext\n\nThe above specifies that all methods in the API request\n`google.rpc.context.ProjectContext` and\n`google.rpc.context.OriginContext`.\n\nAvailable context types are defined in package\n`google.rpc.context`.", - "type": "object", - "properties": { - "rules": { - "description": "A list of RPC context rules that apply to individual API methods.\n\n**NOTE:** All service configuration rules follow \"last one wins\" order.", - "type": "array", - "items": { - "$ref": "ContextRule" - } - } - }, - "id": "Context" + "type": "object" } }, - "icons": { - "x16": "http://www.google.com/images/icons/product/search-16.gif", - "x32": "http://www.google.com/images/icons/product/search-32.gif" - }, - "protocol": "rest", - "canonicalName": "Service Management", - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/cloud-platform.read-only": { - "description": "View your data across Google Cloud Platform services" - }, - "https://www.googleapis.com/auth/service.management.readonly": { - "description": "View your Google API service configuration" - }, - "https://www.googleapis.com/auth/cloud-platform": { - "description": "View and manage your data across Google Cloud Platform services" - }, - "https://www.googleapis.com/auth/service.management": { - "description": "Manage your Google API service configuration" - } - } - } - }, - "rootUrl": "https://servicemanagement.googleapis.com/", - "ownerDomain": "google.com", - "name": "servicemanagement", - "batchPath": "batch", - "fullyEncodeReservedExpansion": true, + "servicePath": "", "title": "Google Service Management API", - "ownerName": "Google", - "resources": { - "services": { - "methods": { - "delete": { - "httpMethod": "DELETE", - "parameterOrder": [ - "serviceName" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/service.management" - ], - "parameters": { - "serviceName": { - "location": "path", - "description": "The name of the service. See the [overview](/service-management/overview)\nfor naming requirements. For example: `example.googleapis.com`.", - "required": true, - "type": "string" - } - }, - "flatPath": "v1/services/{serviceName}", - "id": "servicemanagement.services.delete", - "path": "v1/services/{serviceName}", - "description": "Deletes a managed service. This method will change the service to the\n`Soft-Delete` state for 30 days. Within this period, service producers may\ncall UndeleteService to restore the service.\nAfter 30 days, the service will be permanently deleted.\n\nOperation\u003cresponse: google.protobuf.Empty\u003e" - }, - "enable": { - "path": "v1/services/{serviceName}:enable", - "id": "servicemanagement.services.enable", - "request": { - "$ref": "EnableServiceRequest" - }, - "description": "Enables a service for a project, so it can be used\nfor the project. See\n[Cloud Auth Guide](https://cloud.google.com/docs/authentication) for\nmore information.\n\nOperation\u003cresponse: EnableServiceResponse\u003e", - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "serviceName" - ], - "httpMethod": "POST", - "parameters": { - "serviceName": { - "location": "path", - "description": "Name of the service to enable. Specifying an unknown service name will\ncause the request to fail.", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/service.management" - ], - "flatPath": "v1/services/{serviceName}:enable" - }, - "setIamPolicy": { - "path": "v1/{+resource}:setIamPolicy", - "id": "servicemanagement.services.setIamPolicy", - "request": { - "$ref": "SetIamPolicyRequest" - }, - "description": "Sets the access control policy on the specified resource. Replaces any\nexisting policy.", - "response": { - "$ref": "Policy" - }, - "parameterOrder": [ - "resource" - ], - "httpMethod": "POST", - "parameters": { - "resource": { - "pattern": "^services/[^/]+$", - "location": "path", - "description": "REQUIRED: The resource for which the policy is being specified.\nSee the operation documentation for the appropriate value for this field.", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/service.management" - ], - "flatPath": "v1/services/{servicesId}:setIamPolicy" - }, - "disable": { - "flatPath": "v1/services/{serviceName}:disable", - "id": "servicemanagement.services.disable", - "path": "v1/services/{serviceName}:disable", - "description": "Disables a service for a project, so it can no longer be\nbe used for the project. It prevents accidental usage that may cause\nunexpected billing charges or security leaks.\n\nOperation\u003cresponse: DisableServiceResponse\u003e", - "request": { - "$ref": "DisableServiceRequest" - }, - "httpMethod": "POST", - "parameterOrder": [ - "serviceName" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/service.management" - ], - "parameters": { - "serviceName": { - "description": "Name of the service to disable. Specifying an unknown service name\nwill cause the request to fail.", - "required": true, - "type": "string", - "location": "path" - } - } - }, - "getIamPolicy": { - "httpMethod": "POST", - "parameterOrder": [ - "resource" - ], - "response": { - "$ref": "Policy" - }, - "parameters": { - "resource": { - "pattern": "^services/[^/]+$", - "location": "path", - "description": "REQUIRED: The resource for which the policy is being requested.\nSee the operation documentation for the appropriate value for this field.", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/service.management", - "https://www.googleapis.com/auth/service.management.readonly" - ], - "flatPath": "v1/services/{servicesId}:getIamPolicy", - "id": "servicemanagement.services.getIamPolicy", - "path": "v1/{+resource}:getIamPolicy", - "request": { - "$ref": "GetIamPolicyRequest" - }, - "description": "Gets the access control policy for a resource.\nReturns an empty policy if the resource exists and does not have a policy\nset." - }, - "undelete": { - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "serviceName" - ], - "httpMethod": "POST", - "parameters": { - "serviceName": { - "description": "The name of the service. See the [overview](/service-management/overview)\nfor naming requirements. For example: `example.googleapis.com`.", - "required": true, - "type": "string", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/service.management" - ], - "flatPath": "v1/services/{serviceName}:undelete", - "path": "v1/services/{serviceName}:undelete", - "id": "servicemanagement.services.undelete", - "description": "Revives a previously deleted managed service. The method restores the\nservice using the configuration at the time the service was deleted.\nThe target service must exist and must have been deleted within the\nlast 30 days.\n\nOperation\u003cresponse: UndeleteServiceResponse\u003e" - }, - "list": { - "description": "Lists managed services.\n\nReturns all public services. For authenticated users, also returns all\nservices the calling user has \"servicemanagement.services.get\" permission\nfor.\n\n**BETA:** If the caller specifies the `consumer_id`, it returns only the\nservices enabled on the consumer. The `consumer_id` must have the format\nof \"project:{PROJECT-ID}\".", - "response": { - "$ref": "ListServicesResponse" - }, - "parameterOrder": [], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/service.management", - "https://www.googleapis.com/auth/service.management.readonly" - ], - "parameters": { - "consumerId": { - "type": "string", - "location": "query", - "description": "Include services consumed by the specified consumer.\n\nThe Google Service Management implementation accepts the following\nforms:\n- project:\u003cproject_id\u003e" - }, - "pageToken": { - "location": "query", - "description": "Token identifying which result to start with; returned by a previous list\ncall.", - "type": "string" - }, - "pageSize": { - "description": "Requested size of the next page of data.", - "format": "int32", - "type": "integer", - "location": "query" - }, - "producerProjectId": { - "location": "query", - "description": "Include services produced by the specified project.", - "type": "string" - } - }, - "flatPath": "v1/services", - "path": "v1/services", - "id": "servicemanagement.services.list" - }, - "create": { - "path": "v1/services", - "id": "servicemanagement.services.create", - "request": { - "$ref": "ManagedService" - }, - "description": "Creates a new managed service.\nPlease note one producer project can own no more than 20 services.\n\nOperation\u003cresponse: ManagedService\u003e", - "response": { - "$ref": "Operation" - }, - "parameterOrder": [], - "httpMethod": "POST", - "parameters": {}, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/service.management" - ], - "flatPath": "v1/services" - }, - "generateConfigReport": { - "httpMethod": "POST", - "parameterOrder": [], - "response": { - "$ref": "GenerateConfigReportResponse" - }, - "parameters": {}, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/service.management" - ], - "flatPath": "v1/services:generateConfigReport", - "id": "servicemanagement.services.generateConfigReport", - "path": "v1/services:generateConfigReport", - "request": { - "$ref": "GenerateConfigReportRequest" - }, - "description": "Generates and returns a report (errors, warnings and changes from\nexisting configurations) associated with\nGenerateConfigReportRequest.new_value\n\nIf GenerateConfigReportRequest.old_value is specified,\nGenerateConfigReportRequest will contain a single ChangeReport based on the\ncomparison between GenerateConfigReportRequest.new_value and\nGenerateConfigReportRequest.old_value.\nIf GenerateConfigReportRequest.old_value is not specified, this method\nwill compare GenerateConfigReportRequest.new_value with the last pushed\nservice configuration." - }, - "get": { - "response": { - "$ref": "ManagedService" - }, - "parameterOrder": [ - "serviceName" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/service.management", - "https://www.googleapis.com/auth/service.management.readonly" - ], - "parameters": { - "serviceName": { - "location": "path", - "description": "The name of the service. See the `ServiceManager` overview for naming\nrequirements. For example: `example.googleapis.com`.", - "required": true, - "type": "string" - } - }, - "flatPath": "v1/services/{serviceName}", - "path": "v1/services/{serviceName}", - "id": "servicemanagement.services.get", - "description": "Gets a managed service. Authentication is required unless the service is\npublic." - }, - "testIamPermissions": { - "description": "Returns permissions that a caller has on the specified resource.\nIf the resource does not exist, this will return an empty set of\npermissions, not a NOT_FOUND error.\n\nNote: This operation is designed to be used for building permission-aware\nUIs and command-line tools, not for authorization checking. This operation\nmay \"fail open\" without warning.", - "request": { - "$ref": "TestIamPermissionsRequest" - }, - "httpMethod": "POST", - "parameterOrder": [ - "resource" - ], - "response": { - "$ref": "TestIamPermissionsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/service.management", - "https://www.googleapis.com/auth/service.management.readonly" - ], - "parameters": { - "resource": { - "required": true, - "type": "string", - "pattern": "^services/[^/]+$", - "location": "path", - "description": "REQUIRED: The resource for which the policy detail is being requested.\nSee the operation documentation for the appropriate value for this field." - } - }, - "flatPath": "v1/services/{servicesId}:testIamPermissions", - "id": "servicemanagement.services.testIamPermissions", - "path": "v1/{+resource}:testIamPermissions" - }, - "getConfig": { - "description": "Gets a service configuration (version) for a managed service.", - "httpMethod": "GET", - "parameterOrder": [ - "serviceName" - ], - "response": { - "$ref": "Service" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/service.management", - "https://www.googleapis.com/auth/service.management.readonly" - ], - "parameters": { - "view": { - "type": "string", - "location": "query", - "enum": [ - "BASIC", - "FULL" - ], - "description": "Specifies which parts of the Service Config should be returned in the\nresponse." - }, - "serviceName": { - "description": "The name of the service. See the [overview](/service-management/overview)\nfor naming requirements. For example: `example.googleapis.com`.", - "required": true, - "type": "string", - "location": "path" - }, - "configId": { - "location": "query", - "description": "The id of the service configuration resource.", - "type": "string" - } - }, - "flatPath": "v1/services/{serviceName}/config", - "id": "servicemanagement.services.getConfig", - "path": "v1/services/{serviceName}/config" - } - }, - "resources": { - "rollouts": { - "methods": { - "create": { - "parameters": { - "serviceName": { - "location": "path", - "description": "The name of the service. See the [overview](/service-management/overview)\nfor naming requirements. For example: `example.googleapis.com`.", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/service.management" - ], - "flatPath": "v1/services/{serviceName}/rollouts", - "id": "servicemanagement.services.rollouts.create", - "path": "v1/services/{serviceName}/rollouts", - "request": { - "$ref": "Rollout" - }, - "description": "Creates a new service configuration rollout. Based on rollout, the\nGoogle Service Management will roll out the service configurations to\ndifferent backend services. For example, the logging configuration will be\npushed to Google Cloud Logging.\n\nPlease note that any previous pending and running Rollouts and associated\nOperations will be automatically cancelled so that the latest Rollout will\nnot be blocked by previous Rollouts.\n\nOperation\u003cresponse: Rollout\u003e", - "httpMethod": "POST", - "parameterOrder": [ - "serviceName" - ], - "response": { - "$ref": "Operation" - } - }, - "list": { - "description": "Lists the history of the service configuration rollouts for a managed\nservice, from the newest to the oldest.", - "response": { - "$ref": "ListServiceRolloutsResponse" - }, - "parameterOrder": [ - "serviceName" - ], - "httpMethod": "GET", - "parameters": { - "filter": { - "location": "query", - "description": "Use `filter` to return subset of rollouts.\nThe following filters are supported:\n -- To limit the results to only those in\n [status](google.api.servicemanagement.v1.RolloutStatus) 'SUCCESS',\n use filter='status=SUCCESS'\n -- To limit the results to those in\n [status](google.api.servicemanagement.v1.RolloutStatus) 'CANCELLED'\n or 'FAILED', use filter='status=CANCELLED OR status=FAILED'", - "type": "string" - }, - "serviceName": { - "location": "path", - "description": "The name of the service. See the [overview](/service-management/overview)\nfor naming requirements. For example: `example.googleapis.com`.", - "required": true, - "type": "string" - }, - "pageToken": { - "location": "query", - "description": "The token of the page to retrieve.", - "type": "string" - }, - "pageSize": { - "description": "The max number of items to include in the response list.", - "format": "int32", - "type": "integer", - "location": "query" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/service.management", - "https://www.googleapis.com/auth/service.management.readonly" - ], - "flatPath": "v1/services/{serviceName}/rollouts", - "path": "v1/services/{serviceName}/rollouts", - "id": "servicemanagement.services.rollouts.list" - }, - "get": { - "path": "v1/services/{serviceName}/rollouts/{rolloutId}", - "id": "servicemanagement.services.rollouts.get", - "description": "Gets a service configuration rollout.", - "response": { - "$ref": "Rollout" - }, - "parameterOrder": [ - "serviceName", - "rolloutId" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/service.management", - "https://www.googleapis.com/auth/service.management.readonly" - ], - "parameters": { - "serviceName": { - "description": "The name of the service. See the [overview](/service-management/overview)\nfor naming requirements. For example: `example.googleapis.com`.", - "required": true, - "type": "string", - "location": "path" - }, - "rolloutId": { - "location": "path", - "description": "The id of the rollout resource.", - "required": true, - "type": "string" - } - }, - "flatPath": "v1/services/{serviceName}/rollouts/{rolloutId}" - } - } - }, - "configs": { - "methods": { - "list": { - "httpMethod": "GET", - "response": { - "$ref": "ListServiceConfigsResponse" - }, - "parameterOrder": [ - "serviceName" - ], - "parameters": { - "serviceName": { - "location": "path", - "description": "The name of the service. See the [overview](/service-management/overview)\nfor naming requirements. For example: `example.googleapis.com`.", - "required": true, - "type": "string" - }, - "pageToken": { - "description": "The token of the page to retrieve.", - "type": "string", - "location": "query" - }, - "pageSize": { - "location": "query", - "description": "The max number of items to include in the response list.", - "format": "int32", - "type": "integer" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/service.management", - "https://www.googleapis.com/auth/service.management.readonly" - ], - "flatPath": "v1/services/{serviceName}/configs", - "id": "servicemanagement.services.configs.list", - "path": "v1/services/{serviceName}/configs", - "description": "Lists the history of the service configuration for a managed service,\nfrom the newest to the oldest." - }, - "get": { - "id": "servicemanagement.services.configs.get", - "path": "v1/services/{serviceName}/configs/{configId}", - "description": "Gets a service configuration (version) for a managed service.", - "httpMethod": "GET", - "response": { - "$ref": "Service" - }, - "parameterOrder": [ - "serviceName", - "configId" - ], - "parameters": { - "serviceName": { - "location": "path", - "description": "The name of the service. See the [overview](/service-management/overview)\nfor naming requirements. For example: `example.googleapis.com`.", - "required": true, - "type": "string" - }, - "configId": { - "location": "path", - "description": "The id of the service configuration resource.", - "required": true, - "type": "string" - }, - "view": { - "description": "Specifies which parts of the Service Config should be returned in the\nresponse.", - "type": "string", - "location": "query", - "enum": [ - "BASIC", - "FULL" - ] - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/service.management", - "https://www.googleapis.com/auth/service.management.readonly" - ], - "flatPath": "v1/services/{serviceName}/configs/{configId}" - }, - "create": { - "response": { - "$ref": "Service" - }, - "parameterOrder": [ - "serviceName" - ], - "httpMethod": "POST", - "parameters": { - "serviceName": { - "description": "The name of the service. See the [overview](/service-management/overview)\nfor naming requirements. For example: `example.googleapis.com`.", - "required": true, - "type": "string", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/service.management" - ], - "flatPath": "v1/services/{serviceName}/configs", - "path": "v1/services/{serviceName}/configs", - "id": "servicemanagement.services.configs.create", - "request": { - "$ref": "Service" - }, - "description": "Creates a new service configuration (version) for a managed service.\nThis method only stores the service configuration. To roll out the service\nconfiguration to backend systems please call\nCreateServiceRollout." - }, - "submit": { - "path": "v1/services/{serviceName}/configs:submit", - "id": "servicemanagement.services.configs.submit", - "description": "Creates a new service configuration (version) for a managed service based\non\nuser-supplied configuration source files (for example: OpenAPI\nSpecification). This method stores the source configurations as well as the\ngenerated service configuration. To rollout the service configuration to\nother services,\nplease call CreateServiceRollout.\n\nOperation\u003cresponse: SubmitConfigSourceResponse\u003e", - "request": { - "$ref": "SubmitConfigSourceRequest" - }, - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "serviceName" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/service.management" - ], - "parameters": { - "serviceName": { - "description": "The name of the service. See the [overview](/service-management/overview)\nfor naming requirements. For example: `example.googleapis.com`.", - "required": true, - "type": "string", - "location": "path" - } - }, - "flatPath": "v1/services/{serviceName}/configs:submit" - } - } - }, - "consumers": { - "methods": { - "setIamPolicy": { - "flatPath": "v1/services/{servicesId}/consumers/{consumersId}:setIamPolicy", - "id": "servicemanagement.services.consumers.setIamPolicy", - "path": "v1/{+resource}:setIamPolicy", - "request": { - "$ref": "SetIamPolicyRequest" - }, - "description": "Sets the access control policy on the specified resource. Replaces any\nexisting policy.", - "httpMethod": "POST", - "parameterOrder": [ - "resource" - ], - "response": { - "$ref": "Policy" - }, - "parameters": { - "resource": { - "pattern": "^services/[^/]+/consumers/[^/]+$", - "location": "path", - "description": "REQUIRED: The resource for which the policy is being specified.\nSee the operation documentation for the appropriate value for this field.", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/service.management" - ] - }, - "testIamPermissions": { - "response": { - "$ref": "TestIamPermissionsResponse" - }, - "parameterOrder": [ - "resource" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/service.management", - "https://www.googleapis.com/auth/service.management.readonly" - ], - "parameters": { - "resource": { - "pattern": "^services/[^/]+/consumers/[^/]+$", - "location": "path", - "description": "REQUIRED: The resource for which the policy detail is being requested.\nSee the operation documentation for the appropriate value for this field.", - "required": true, - "type": "string" - } - }, - "flatPath": "v1/services/{servicesId}/consumers/{consumersId}:testIamPermissions", - "path": "v1/{+resource}:testIamPermissions", - "id": "servicemanagement.services.consumers.testIamPermissions", - "description": "Returns permissions that a caller has on the specified resource.\nIf the resource does not exist, this will return an empty set of\npermissions, not a NOT_FOUND error.\n\nNote: This operation is designed to be used for building permission-aware\nUIs and command-line tools, not for authorization checking. This operation\nmay \"fail open\" without warning.", - "request": { - "$ref": "TestIamPermissionsRequest" - } - }, - "getIamPolicy": { - "httpMethod": "POST", - "parameterOrder": [ - "resource" - ], - "response": { - "$ref": "Policy" - }, - "parameters": { - "resource": { - "pattern": "^services/[^/]+/consumers/[^/]+$", - "location": "path", - "description": "REQUIRED: The resource for which the policy is being requested.\nSee the operation documentation for the appropriate value for this field.", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/service.management", - "https://www.googleapis.com/auth/service.management.readonly" - ], - "flatPath": "v1/services/{servicesId}/consumers/{consumersId}:getIamPolicy", - "id": "servicemanagement.services.consumers.getIamPolicy", - "path": "v1/{+resource}:getIamPolicy", - "request": { - "$ref": "GetIamPolicyRequest" - }, - "description": "Gets the access control policy for a resource.\nReturns an empty policy if the resource exists and does not have a policy\nset." - } - } - } - } - }, - "operations": { - "methods": { - "list": { - "flatPath": "v1/operations", - "id": "servicemanagement.operations.list", - "path": "v1/operations", - "description": "Lists service operations that match the specified filter in the request.", - "httpMethod": "GET", - "parameterOrder": [], - "response": { - "$ref": "ListOperationsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/service.management" - ], - "parameters": { - "name": { - "description": "Not used.", - "type": "string", - "location": "query" - }, - "pageToken": { - "location": "query", - "description": "The standard list page token.", - "type": "string" - }, - "pageSize": { - "location": "query", - "description": "The maximum number of operations to return. If unspecified, defaults to\n50. The maximum value is 100.", - "format": "int32", - "type": "integer" - }, - "filter": { - "description": "A string for filtering Operations.\n The following filter fields are supported:\n\n * serviceName: Required. Only `=` operator is allowed.\n * startTime: The time this job was started, in ISO 8601 format.\n Allowed operators are `\u003e=`, `\u003e`, `\u003c=`, and `\u003c`.\n * status: Can be `done`, `in_progress`, or `failed`. Allowed\n operators are `=`, and `!=`.\n\n Filter expression supports conjunction (AND) and disjunction (OR)\n logical operators. However, the serviceName restriction must be at the\n top-level and can only be combined with other restrictions via the AND\n logical operator.\n\n Examples:\n\n * `serviceName={some-service}.googleapis.com`\n * `serviceName={some-service}.googleapis.com AND startTime\u003e=\"2017-02-01\"`\n * `serviceName={some-service}.googleapis.com AND status=done`\n * `serviceName={some-service}.googleapis.com AND (status=done OR startTime\u003e=\"2017-02-01\")`", - "type": "string", - "location": "query" - } - } - }, - "get": { - "httpMethod": "GET", - "parameterOrder": [ - "name" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/service.management" - ], - "parameters": { - "name": { - "pattern": "^operations/.+$", - "location": "path", - "description": "The name of the operation resource.", - "required": true, - "type": "string" - } - }, - "flatPath": "v1/operations/{operationsId}", - "id": "servicemanagement.operations.get", - "path": "v1/{+name}", - "description": "Gets the latest state of a long-running operation. Clients can use this\nmethod to poll the operation result at intervals as recommended by the API\nservice." - } - } - } - }, - "parameters": { - "oauth_token": { - "description": "OAuth 2.0 token for the current user.", - "type": "string", - "location": "query" - }, - "bearer_token": { - "location": "query", - "description": "OAuth bearer token.", - "type": "string" - }, - "upload_protocol": { - "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", - "type": "string", - "location": "query" - }, - "prettyPrint": { - "description": "Returns response with indentations and line breaks.", - "type": "boolean", - "default": "true", - "location": "query" - }, - "fields": { - "type": "string", - "location": "query", - "description": "Selector specifying which fields to include in a partial response." - }, - "uploadType": { - "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", - "type": "string", - "location": "query" - }, - "callback": { - "location": "query", - "description": "JSONP", - "type": "string" - }, - "$.xgafv": { - "enumDescriptions": [ - "v1 error format", - "v2 error format" - ], - "location": "query", - "enum": [ - "1", - "2" - ], - "description": "V1 error format.", - "type": "string" - }, - "alt": { - "enumDescriptions": [ - "Responses with Content-Type of application/json", - "Media download with context-dependent Content-Type", - "Responses with Content-Type of application/x-protobuf" - ], - "location": "query", - "description": "Data format for response.", - "default": "json", - "enum": [ - "json", - "media", - "proto" - ], - "type": "string" - }, - "access_token": { - "type": "string", - "location": "query", - "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.", - "type": "string", - "location": "query" - }, - "quotaUser": { - "location": "query", - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", - "type": "string" - }, - "pp": { - "description": "Pretty-print response.", - "type": "boolean", - "default": "true", - "location": "query" - } - }, - "version": "v1", - "baseUrl": "https://servicemanagement.googleapis.com/" -} + "version": "v1" +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/servicemanagement/v1/servicemanagement-gen.go b/vendor/google.golang.org/api/servicemanagement/v1/servicemanagement-gen.go index 10e5008e6..d81b17e33 100644 --- a/vendor/google.golang.org/api/servicemanagement/v1/servicemanagement-gen.go +++ b/vendor/google.golang.org/api/servicemanagement/v1/servicemanagement-gen.go @@ -271,6 +271,161 @@ func (s *Api) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// AuditConfig: Specifies the audit configuration for a service. +// The configuration determines which permission types are logged, and +// what +// identities, if any, are exempted from logging. +// An AuditConfig must have one or more AuditLogConfigs. +// +// If there are AuditConfigs for both `allServices` and a specific +// service, +// the union of the two AuditConfigs is used for that service: the +// log_types +// specified in each AuditConfig are enabled, and the exempted_members +// in each +// AuditLogConfig are exempted. +// +// Example Policy with multiple AuditConfigs: +// +// { +// "audit_configs": [ +// { +// "service": "allServices" +// "audit_log_configs": [ +// { +// "log_type": "DATA_READ", +// "exempted_members": [ +// "user:foo@gmail.com" +// ] +// }, +// { +// "log_type": "DATA_WRITE", +// }, +// { +// "log_type": "ADMIN_READ", +// } +// ] +// }, +// { +// "service": "fooservice.googleapis.com" +// "audit_log_configs": [ +// { +// "log_type": "DATA_READ", +// }, +// { +// "log_type": "DATA_WRITE", +// "exempted_members": [ +// "user:bar@gmail.com" +// ] +// } +// ] +// } +// ] +// } +// +// For fooservice, this policy enables DATA_READ, DATA_WRITE and +// ADMIN_READ +// logging. It also exempts foo@gmail.com from DATA_READ logging, +// and +// bar@gmail.com from DATA_WRITE logging. +type AuditConfig struct { + // AuditLogConfigs: The configuration for logging of each type of + // permission. + // Next ID: 4 + AuditLogConfigs []*AuditLogConfig `json:"auditLogConfigs,omitempty"` + + // Service: Specifies a service that will be enabled for audit + // logging. + // For example, `storage.googleapis.com`, + // `cloudsql.googleapis.com`. + // `allServices` is a special value that covers all services. + Service string `json:"service,omitempty"` + + // ForceSendFields is a list of field names (e.g. "AuditLogConfigs") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "AuditLogConfigs") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *AuditConfig) MarshalJSON() ([]byte, error) { + type NoMethod AuditConfig + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// AuditLogConfig: Provides the configuration for logging a type of +// permissions. +// Example: +// +// { +// "audit_log_configs": [ +// { +// "log_type": "DATA_READ", +// "exempted_members": [ +// "user:foo@gmail.com" +// ] +// }, +// { +// "log_type": "DATA_WRITE", +// } +// ] +// } +// +// This enables 'DATA_READ' and 'DATA_WRITE' logging, while +// exempting +// foo@gmail.com from DATA_READ logging. +type AuditLogConfig struct { + // ExemptedMembers: Specifies the identities that do not cause logging + // for this type of + // permission. + // Follows the same format of Binding.members. + ExemptedMembers []string `json:"exemptedMembers,omitempty"` + + // LogType: The log type that this config enables. + // + // Possible values: + // "LOG_TYPE_UNSPECIFIED" - Default case. Should never be this. + // "ADMIN_READ" - Admin reads. Example: CloudIAM getIamPolicy + // "DATA_WRITE" - Data writes. Example: CloudSQL Users create + // "DATA_READ" - Data reads. Example: CloudSQL Users list + LogType string `json:"logType,omitempty"` + + // ForceSendFields is a list of field names (e.g. "ExemptedMembers") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "ExemptedMembers") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *AuditLogConfig) MarshalJSON() ([]byte, error) { + type NoMethod AuditLogConfig + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // AuthProvider: Configuration for an anthentication provider, including // support for // [JSON Web Token @@ -770,16 +925,6 @@ func (s *BillingDestination) MarshalJSON() ([]byte, error) { // Binding: Associates `members` with a `role`. type Binding struct { - // Condition: The condition that is associated with this binding. - // NOTE: an unsatisfied condition will not allow user access via - // current - // binding. Different bindings, including their conditions, are - // examined - // independently. - // This field is only visible as GOOGLE_INTERNAL or - // CONDITION_TRUSTED_TESTER. - Condition *Expr `json:"condition,omitempty"` - // Members: Specifies the identities requesting access for a Cloud // Platform resource. // `members` can have the following values: @@ -821,7 +966,7 @@ type Binding struct { // Required Role string `json:"role,omitempty"` - // ForceSendFields is a list of field names (e.g. "Condition") to + // ForceSendFields is a list of field names (e.g. "Members") to // unconditionally include in API requests. By default, fields with // empty values are omitted from API requests. However, any non-pointer, // non-interface field appearing in ForceSendFields will be sent to the @@ -829,7 +974,7 @@ type Binding struct { // used to include empty fields in Patch requests. ForceSendFields []string `json:"-"` - // NullFields is a list of field names (e.g. "Condition") to include in + // NullFields is a list of field names (e.g. "Members") to include in // API requests with the JSON null value. By default, fields with empty // values are omitted from API requests. However, any field with an // empty value appearing in NullFields will be sent to the server as @@ -1115,8 +1260,35 @@ func (s *ConfigSource) MarshalJSON() ([]byte, error) { // and // `google.rpc.context.OriginContext`. // -// Available context types are defined in package +// Available context types are defined in +// package // `google.rpc.context`. +// +// This also provides mechanism to whitelist any protobuf message +// extension that +// can be sent in grpc metadata using +// “x-goog-ext--bin” +// and +// “x-goog-ext--jspb” format. For example, list any +// service +// specific protobuf types that can appear in grpc metadata as follows +// in your +// yaml file: +// +// Example: +// +// context: +// rules: +// - selector: +// "google.example.library.v1.LibraryService.CreateBook" +// allowed_request_extensions: +// - google.foo.v1.NewExtension +// allowed_response_extensions: +// - google.foo.v1.NewExtension +// +// You can also specify extension ID instead of fully qualified +// extension name +// here. type Context struct { // Rules: A list of RPC context rules that apply to individual API // methods. @@ -1152,6 +1324,16 @@ func (s *Context) MarshalJSON() ([]byte, error) { // for an individual API // element. type ContextRule struct { + // AllowedRequestExtensions: A list of full type names or extension IDs + // of extensions allowed in grpc + // side channel from client to backend. + AllowedRequestExtensions []string `json:"allowedRequestExtensions,omitempty"` + + // AllowedResponseExtensions: A list of full type names or extension IDs + // of extensions allowed in grpc + // side channel from backend to client. + AllowedResponseExtensions []string `json:"allowedResponseExtensions,omitempty"` + // Provided: A list of full type names of provided contexts. Provided []string `json:"provided,omitempty"` @@ -1163,20 +1345,22 @@ type ContextRule struct { // Refer to selector for syntax details. Selector string `json:"selector,omitempty"` - // ForceSendFields is a list of field names (e.g. "Provided") to - // unconditionally include in API requests. By default, fields with - // empty values are omitted from API requests. However, any non-pointer, - // non-interface field appearing in ForceSendFields will be sent to the - // server regardless of whether the field is empty or not. This may be - // used to include empty fields in Patch requests. + // ForceSendFields is a list of field names (e.g. + // "AllowedRequestExtensions") to unconditionally include in API + // requests. By default, fields with empty values are omitted from API + // requests. However, any non-pointer, non-interface field appearing in + // ForceSendFields will be sent to the server regardless of whether the + // field is empty or not. This may be used to include empty fields in + // Patch requests. ForceSendFields []string `json:"-"` - // NullFields is a list of field names (e.g. "Provided") to include in - // API requests with the JSON null value. By default, fields with empty - // values are omitted from API requests. However, any field with an - // empty value appearing in NullFields will be sent to the server as - // null. It is an error if a field in this list has a non-empty value. - // This may be used to include null fields in Patch requests. + // NullFields is a list of field names (e.g. "AllowedRequestExtensions") + // to include in API requests with the JSON null value. By default, + // fields with empty values are omitted from API requests. However, any + // field with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. NullFields []string `json:"-"` } @@ -1501,11 +1685,7 @@ func (s *DisableServiceRequest) MarshalJSON() ([]byte, error) { // Text can be excluded from doc using the following // notation: //
(-- internal comment --)
-// Comments can be made conditional using a visibility label. The -// below -// text will be only rendered if the `BETA` label is -// available: -//
(--BETA: comment for BETA users --)
+// // A few directives are available in documentation. Note that // directives must appear on a single line to be properly // identified. The `include` directive includes a markdown file from @@ -1859,60 +2039,6 @@ func (s *Experimental) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -// Expr: Represents an expression text. Example: -// -// title: "User account presence" -// description: "Determines whether the request has a user account" -// expression: "size(request.user) > 0" -type Expr struct { - // Description: An optional description of the expression. This is a - // longer text which - // describes the expression, e.g. when hovered over it in a UI. - Description string `json:"description,omitempty"` - - // Expression: Textual representation of an expression in - // Common Expression Language syntax. - // - // The application context of the containing message determines - // which - // well-known feature set of CEL is supported. - Expression string `json:"expression,omitempty"` - - // Location: An optional string indicating the location of the - // expression for error - // reporting, e.g. a file name and a position in the file. - Location string `json:"location,omitempty"` - - // Title: An optional title for the expression, i.e. a short string - // describing - // its purpose. This can be used e.g. in UIs which allow to enter - // the - // expression. - Title string `json:"title,omitempty"` - - // ForceSendFields is a list of field names (e.g. "Description") to - // unconditionally include in API requests. By default, fields with - // empty values are omitted from API requests. However, any non-pointer, - // non-interface field appearing in ForceSendFields will be sent to the - // server regardless of whether the field is empty or not. This may be - // used to include empty fields in Patch requests. - ForceSendFields []string `json:"-"` - - // NullFields is a list of field names (e.g. "Description") to include - // in API requests with the JSON null value. By default, fields with - // empty values are omitted from API requests. However, any field with - // an empty value appearing in NullFields will be sent to the server as - // null. It is an error if a field in this list has a non-empty value. - // This may be used to include null fields in Patch requests. - NullFields []string `json:"-"` -} - -func (s *Expr) MarshalJSON() ([]byte, error) { - type NoMethod Expr - raw := NoMethod(*s) - return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) -} - // Field: A single field of a message type. type Field struct { // Cardinality: The field cardinality. @@ -2002,88 +2128,6 @@ func (s *Field) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -// FlowOperationMetadata: The metadata associated with a long running -// operation resource. -type FlowOperationMetadata struct { - // CancelState: The state of the operation with respect to cancellation. - // - // Possible values: - // "RUNNING" - Default state, cancellable but not cancelled. - // "UNCANCELLABLE" - The operation has proceeded past the point of no - // return and cannot - // be cancelled. - // "CANCELLED" - The operation has been cancelled, work should - // cease - // and any needed rollback steps executed. - CancelState string `json:"cancelState,omitempty"` - - // Deadline: Deadline for the flow to complete, to prevent orphaned - // Operations. - // - // If the flow has not completed by this time, it may be terminated - // by - // the engine, or force-failed by Operation lookup. - // - // Note that this is not a hard deadline after which the Flow - // will - // definitely be failed, rather it is a deadline after which it is - // reasonable - // to suspect a problem and other parts of the system may kill - // operation - // to ensure we don't have orphans. - // see also: go/prevent-orphaned-operations - Deadline string `json:"deadline,omitempty"` - - // FlowName: The name of the top-level flow corresponding to this - // operation. - // Must be equal to the "name" field for a FlowName enum. - FlowName string `json:"flowName,omitempty"` - - // OperationType: Operation type which is a flow type and subtype info - // as that is missing in - // our datastore otherwise. This maps to the ordinal value of the - // enum: - // jcg/api/tenant/operations/OperationNamespace.java - OperationType int64 `json:"operationType,omitempty"` - - // ResourceNames: The full name of the resources that this flow is - // directly associated with. - ResourceNames []string `json:"resourceNames,omitempty"` - - // StartTime: The start time of the operation. - StartTime string `json:"startTime,omitempty"` - - // Possible values: - // "UNSPECIFIED_OP_SERVICE" - // "SERVICE_MANAGEMENT" - // "SERVICE_USAGE" - // "SERVICE_CONSUMER_MANAGEMENT" - TenancyUnit, ServiceNetworking fall - // under this - Surface string `json:"surface,omitempty"` - - // ForceSendFields is a list of field names (e.g. "CancelState") to - // unconditionally include in API requests. By default, fields with - // empty values are omitted from API requests. However, any non-pointer, - // non-interface field appearing in ForceSendFields will be sent to the - // server regardless of whether the field is empty or not. This may be - // used to include empty fields in Patch requests. - ForceSendFields []string `json:"-"` - - // NullFields is a list of field names (e.g. "CancelState") to include - // in API requests with the JSON null value. By default, fields with - // empty values are omitted from API requests. However, any field with - // an empty value appearing in NullFields will be sent to the server as - // null. It is an error if a field in this list has a non-empty value. - // This may be used to include null fields in Patch requests. - NullFields []string `json:"-"` -} - -func (s *FlowOperationMetadata) MarshalJSON() ([]byte, error) { - type NoMethod FlowOperationMetadata - raw := NoMethod(*s) - return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) -} - // GenerateConfigReportRequest: Request message for GenerateConfigReport // method. type GenerateConfigReportRequest struct { @@ -3260,8 +3304,6 @@ type MetricDescriptor struct { // // **Grammar** // - // The grammar includes the dimensionless unit `1`, such as `1/s`. - // // The grammar also includes these connectors: // // * `/` division (as an infix operator, e.g. `1/s`). @@ -3271,7 +3313,7 @@ type MetricDescriptor struct { // // Expression = Component { "." Component } { "/" Component } ; // - // Component = [ PREFIX ] UNIT [ Annotation ] + // Component = ( [ PREFIX ] UNIT | "%" ) [ Annotation ] // | Annotation // | "1" // ; @@ -3285,6 +3327,10 @@ type MetricDescriptor struct { // `{requests}/s == 1/s`, `By{transmitted}/s == By/s`. // * `NAME` is a sequence of non-blank printable ASCII characters not // containing '{' or '}'. + // * `1` represents dimensionless value 1, such as in `1/s`. + // * `%` represents dimensionless value 1/100, and annotates values + // giving + // a percentage. Unit string `json:"unit,omitempty"` // ValueType: Whether the measurement is an integer, a floating-point @@ -4012,6 +4058,10 @@ func (s *Page) MarshalJSON() ([]byte, error) { // For a description of IAM and its features, see the // [IAM developer's guide](https://cloud.google.com/iam/docs). type Policy struct { + // AuditConfigs: Specifies cloud audit logging configuration for this + // policy. + AuditConfigs []*AuditConfig `json:"auditConfigs,omitempty"` + // Bindings: Associates a list of `members` to a `role`. // `bindings` with no members will result in an error. Bindings []*Binding `json:"bindings,omitempty"` @@ -4043,7 +4093,7 @@ type Policy struct { // server. googleapi.ServerResponse `json:"-"` - // ForceSendFields is a list of field names (e.g. "Bindings") to + // ForceSendFields is a list of field names (e.g. "AuditConfigs") to // unconditionally include in API requests. By default, fields with // empty values are omitted from API requests. However, any non-pointer, // non-interface field appearing in ForceSendFields will be sent to the @@ -4051,10 +4101,10 @@ type Policy struct { // used to include empty fields in Patch requests. ForceSendFields []string `json:"-"` - // NullFields is a list of field names (e.g. "Bindings") to include in - // API requests with the JSON null value. By default, fields with empty - // values are omitted from API requests. However, any field with an - // empty value appearing in NullFields will be sent to the server as + // NullFields is a list of field names (e.g. "AuditConfigs") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as // null. It is an error if a field in this list has a non-empty value. // This may be used to include null fields in Patch requests. NullFields []string `json:"-"` @@ -4545,9 +4595,6 @@ type Service struct { // Usage: Configuration controlling usage of this service. Usage *Usage `json:"usage,omitempty"` - // Visibility: API visibility configuration. - Visibility *Visibility `json:"visibility,omitempty"` - // ServerResponse contains the HTTP response code and headers from the // server. googleapi.ServerResponse `json:"-"` @@ -5402,119 +5449,6 @@ func (s *UsageRule) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -// Visibility: `Visibility` defines restrictions for the visibility of -// service -// elements. Restrictions are specified using visibility labels -// (e.g., TRUSTED_TESTER) that are elsewhere linked to users and -// projects. -// -// Users and projects can have access to more than one visibility label. -// The -// effective visibility for multiple labels is the union of each -// label's -// elements, plus any unrestricted elements. -// -// If an element and its parents have no restrictions, visibility -// is -// unconditionally granted. -// -// Example: -// -// visibility: -// rules: -// - selector: google.calendar.Calendar.EnhancedSearch -// restriction: TRUSTED_TESTER -// - selector: google.calendar.Calendar.Delegate -// restriction: GOOGLE_INTERNAL -// -// Here, all methods are publicly visible except for the restricted -// methods -// EnhancedSearch and Delegate. -type Visibility struct { - // Rules: A list of visibility rules that apply to individual API - // elements. - // - // **NOTE:** All service configuration rules follow "last one wins" - // order. - Rules []*VisibilityRule `json:"rules,omitempty"` - - // ForceSendFields is a list of field names (e.g. "Rules") to - // unconditionally include in API requests. By default, fields with - // empty values are omitted from API requests. However, any non-pointer, - // non-interface field appearing in ForceSendFields will be sent to the - // server regardless of whether the field is empty or not. This may be - // used to include empty fields in Patch requests. - ForceSendFields []string `json:"-"` - - // NullFields is a list of field names (e.g. "Rules") to include in API - // requests with the JSON null value. By default, fields with empty - // values are omitted from API requests. However, any field with an - // empty value appearing in NullFields will be sent to the server as - // null. It is an error if a field in this list has a non-empty value. - // This may be used to include null fields in Patch requests. - NullFields []string `json:"-"` -} - -func (s *Visibility) MarshalJSON() ([]byte, error) { - type NoMethod Visibility - raw := NoMethod(*s) - return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) -} - -// VisibilityRule: A visibility rule provides visibility configuration -// for an individual API -// element. -type VisibilityRule struct { - // Restriction: A comma-separated list of visibility labels that apply - // to the `selector`. - // Any of the listed labels can be used to grant the visibility. - // - // If a rule has multiple labels, removing one of the labels but not all - // of - // them can break clients. - // - // Example: - // - // visibility: - // rules: - // - selector: google.calendar.Calendar.EnhancedSearch - // restriction: GOOGLE_INTERNAL, TRUSTED_TESTER - // - // Removing GOOGLE_INTERNAL from this restriction will break clients - // that - // rely on this method and only had access to it through - // GOOGLE_INTERNAL. - Restriction string `json:"restriction,omitempty"` - - // Selector: Selects methods, messages, fields, enums, etc. to which - // this rule applies. - // - // Refer to selector for syntax details. - Selector string `json:"selector,omitempty"` - - // ForceSendFields is a list of field names (e.g. "Restriction") to - // unconditionally include in API requests. By default, fields with - // empty values are omitted from API requests. However, any non-pointer, - // non-interface field appearing in ForceSendFields will be sent to the - // server regardless of whether the field is empty or not. This may be - // used to include empty fields in Patch requests. - ForceSendFields []string `json:"-"` - - // NullFields is a list of field names (e.g. "Restriction") to include - // in API requests with the JSON null value. By default, fields with - // empty values are omitted from API requests. However, any field with - // an empty value appearing in NullFields will be sent to the server as - // null. It is an error if a field in this list has a non-empty value. - // This may be used to include null fields in Patch requests. - NullFields []string `json:"-"` -} - -func (s *VisibilityRule) MarshalJSON() ([]byte, error) { - type NoMethod VisibilityRule - raw := NoMethod(*s) - return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) -} - // method id "servicemanagement.operations.get": type OperationsGetCall struct { @@ -7666,8 +7600,15 @@ type ServicesConfigsCreateCall struct { // service. // This method only stores the service configuration. To roll out the // service -// configuration to backend systems please call +// configuration to backend systems please +// call // CreateServiceRollout. +// +// Only the 100 most recent service configurations and ones referenced +// by +// existing rollouts are kept for each service. The rest will be +// deleted +// eventually. func (r *ServicesConfigsService) Create(serviceName string, service *Service) *ServicesConfigsCreateCall { c := &ServicesConfigsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.serviceName = serviceName @@ -7761,7 +7702,7 @@ func (c *ServicesConfigsCreateCall) Do(opts ...googleapi.CallOption) (*Service, } return ret, nil // { - // "description": "Creates a new service configuration (version) for a managed service.\nThis method only stores the service configuration. To roll out the service\nconfiguration to backend systems please call\nCreateServiceRollout.", + // "description": "Creates a new service configuration (version) for a managed service.\nThis method only stores the service configuration. To roll out the service\nconfiguration to backend systems please call\nCreateServiceRollout.\n\nOnly the 100 most recent service configurations and ones referenced by\nexisting rollouts are kept for each service. The rest will be deleted\neventually.", // "flatPath": "v1/services/{serviceName}/configs", // "httpMethod": "POST", // "id": "servicemanagement.services.configs.create", @@ -8175,6 +8116,12 @@ type ServicesConfigsSubmitCall struct { // other services, // please call CreateServiceRollout. // +// Only the 100 most recent configuration sources and ones referenced +// by +// existing service configurtions are kept for each service. The rest +// will be +// deleted eventually. +// // Operation func (r *ServicesConfigsService) Submit(serviceName string, submitconfigsourcerequest *SubmitConfigSourceRequest) *ServicesConfigsSubmitCall { c := &ServicesConfigsSubmitCall{s: r.s, urlParams_: make(gensupport.URLParams)} @@ -8269,7 +8216,7 @@ func (c *ServicesConfigsSubmitCall) Do(opts ...googleapi.CallOption) (*Operation } return ret, nil // { - // "description": "Creates a new service configuration (version) for a managed service based\non\nuser-supplied configuration source files (for example: OpenAPI\nSpecification). This method stores the source configurations as well as the\ngenerated service configuration. To rollout the service configuration to\nother services,\nplease call CreateServiceRollout.\n\nOperation\u003cresponse: SubmitConfigSourceResponse\u003e", + // "description": "Creates a new service configuration (version) for a managed service based\non\nuser-supplied configuration source files (for example: OpenAPI\nSpecification). This method stores the source configurations as well as the\ngenerated service configuration. To rollout the service configuration to\nother services,\nplease call CreateServiceRollout.\n\nOnly the 100 most recent configuration sources and ones referenced by\nexisting service configurtions are kept for each service. The rest will be\ndeleted eventually.\n\nOperation\u003cresponse: SubmitConfigSourceResponse\u003e", // "flatPath": "v1/services/{serviceName}/configs:submit", // "httpMethod": "POST", // "id": "servicemanagement.services.configs.submit", @@ -8751,6 +8698,12 @@ type ServicesRolloutsCreateCall struct { // will // not be blocked by previous Rollouts. // +// Only the 100 most recent (in any state) and the last 10 successful +// (if not +// already part of the set of 100 most recent) rollouts are kept for +// each +// service. The rest will be deleted eventually. +// // Operation func (r *ServicesRolloutsService) Create(serviceName string, rollout *Rollout) *ServicesRolloutsCreateCall { c := &ServicesRolloutsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)} @@ -8845,7 +8798,7 @@ func (c *ServicesRolloutsCreateCall) Do(opts ...googleapi.CallOption) (*Operatio } return ret, nil // { - // "description": "Creates a new service configuration rollout. Based on rollout, the\nGoogle Service Management will roll out the service configurations to\ndifferent backend services. For example, the logging configuration will be\npushed to Google Cloud Logging.\n\nPlease note that any previous pending and running Rollouts and associated\nOperations will be automatically cancelled so that the latest Rollout will\nnot be blocked by previous Rollouts.\n\nOperation\u003cresponse: Rollout\u003e", + // "description": "Creates a new service configuration rollout. Based on rollout, the\nGoogle Service Management will roll out the service configurations to\ndifferent backend services. For example, the logging configuration will be\npushed to Google Cloud Logging.\n\nPlease note that any previous pending and running Rollouts and associated\nOperations will be automatically cancelled so that the latest Rollout will\nnot be blocked by previous Rollouts.\n\nOnly the 100 most recent (in any state) and the last 10 successful (if not\nalready part of the set of 100 most recent) rollouts are kept for each\nservice. The rest will be deleted eventually.\n\nOperation\u003cresponse: Rollout\u003e", // "flatPath": "v1/services/{serviceName}/rollouts", // "httpMethod": "POST", // "id": "servicemanagement.services.rollouts.create", diff --git a/vendor/google.golang.org/api/serviceusage/v1/serviceusage-api.json b/vendor/google.golang.org/api/serviceusage/v1/serviceusage-api.json new file mode 100644 index 000000000..42b822a24 --- /dev/null +++ b/vendor/google.golang.org/api/serviceusage/v1/serviceusage-api.json @@ -0,0 +1,2253 @@ +{ + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/cloud-platform": { + "description": "View and manage your data across Google Cloud Platform services" + }, + "https://www.googleapis.com/auth/cloud-platform.read-only": { + "description": "View your data across Google Cloud Platform services" + }, + "https://www.googleapis.com/auth/service.management": { + "description": "Manage your Google API service configuration" + } + } + } + }, + "basePath": "", + "baseUrl": "https://serviceusage.googleapis.com/", + "batchPath": "batch", + "canonicalName": "Service Usage", + "description": "Enables services that service consumers want to use on Google Cloud Platform, lists the available or enabled services, or disables services that service consumers no longer use.", + "discoveryVersion": "v1", + "documentationLink": "https://cloud.google.com/service-usage/", + "fullyEncodeReservedExpansion": true, + "icons": { + "x16": "http://www.google.com/images/icons/product/search-16.gif", + "x32": "http://www.google.com/images/icons/product/search-32.gif" + }, + "id": "serviceusage:v1", + "kind": "discovery#restDescription", + "name": "serviceusage", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "$.xgafv": { + "description": "V1 error format.", + "enum": [ + "1", + "2" + ], + "enumDescriptions": [ + "v1 error format", + "v2 error format" + ], + "location": "query", + "type": "string" + }, + "access_token": { + "description": "OAuth access token.", + "location": "query", + "type": "string" + }, + "alt": { + "default": "json", + "description": "Data format for response.", + "enum": [ + "json", + "media", + "proto" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json", + "Media download with context-dependent Content-Type", + "Responses with Content-Type of application/x-protobuf" + ], + "location": "query", + "type": "string" + }, + "bearer_token": { + "description": "OAuth bearer token.", + "location": "query", + "type": "string" + }, + "callback": { + "description": "JSONP", + "location": "query", + "type": "string" + }, + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "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.", + "location": "query", + "type": "string" + }, + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "pp": { + "default": "true", + "description": "Pretty-print response.", + "location": "query", + "type": "boolean" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", + "location": "query", + "type": "string" + }, + "uploadType": { + "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", + "location": "query", + "type": "string" + }, + "upload_protocol": { + "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", + "location": "query", + "type": "string" + } + }, + "protocol": "rest", + "resources": { + "operations": { + "methods": { + "cancel": { + "description": "Starts asynchronous cancellation on a long-running operation. The server\nmakes a best effort to cancel the operation, but success is not\nguaranteed. If the server doesn't support this method, it returns\n`google.rpc.Code.UNIMPLEMENTED`. Clients can use\nOperations.GetOperation or\nother methods to check whether the cancellation succeeded or whether the\noperation completed despite cancellation. On successful cancellation,\nthe operation is not deleted; instead, it becomes an operation with\nan Operation.error value with a google.rpc.Status.code of 1,\ncorresponding to `Code.CANCELLED`.", + "flatPath": "v1/operations/{operationsId}:cancel", + "httpMethod": "POST", + "id": "serviceusage.operations.cancel", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource to be cancelled.", + "location": "path", + "pattern": "^operations/.+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}:cancel", + "request": { + "$ref": "CancelOperationRequest" + }, + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/service.management" + ] + }, + "delete": { + "description": "Deletes a long-running operation. This method indicates that the client is\nno longer interested in the operation result. It does not cancel the\noperation. If the server doesn't support this method, it returns\n`google.rpc.Code.UNIMPLEMENTED`.", + "flatPath": "v1/operations/{operationsId}", + "httpMethod": "DELETE", + "id": "serviceusage.operations.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource to be deleted.", + "location": "path", + "pattern": "^operations/.+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/service.management" + ] + }, + "get": { + "description": "Gets the latest state of a long-running operation. Clients can use this\nmethod to poll the operation result at intervals as recommended by the API\nservice.", + "flatPath": "v1/operations/{operationsId}", + "httpMethod": "GET", + "id": "serviceusage.operations.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource.", + "location": "path", + "pattern": "^operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/service.management" + ] + }, + "list": { + "description": "Lists operations that match the specified filter in the request. If the\nserver doesn't support this method, it returns `UNIMPLEMENTED`.\n\nNOTE: the `name` binding allows API services to override the binding\nto use different resource name schemes, such as `users/*/operations`. To\noverride the binding, API services can add a binding such as\n`\"/v1/{name=users/*}/operations\"` to their service configuration.\nFor backwards compatibility, the default name includes the operations\ncollection id, however overriding users must ensure the name binding\nis the parent resource, without the operations collection id.", + "flatPath": "v1/operations", + "httpMethod": "GET", + "id": "serviceusage.operations.list", + "parameterOrder": [], + "parameters": { + "filter": { + "description": "The standard list filter.", + "location": "query", + "type": "string" + }, + "name": { + "description": "The name of the operation's parent resource.", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "The standard list page size.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "The standard list page token.", + "location": "query", + "type": "string" + } + }, + "path": "v1/operations", + "response": { + "$ref": "ListOperationsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/service.management" + ] + } + } + }, + "services": { + "methods": { + "disable": { + "description": "Disable a service so it can no longer be used with a\nproject. This prevents unintended usage that may cause unexpected billing\ncharges or security leaks.\n\nIt is not valid to call the disable method on a service that is not\ncurrently enabled. Callers will receive a FAILED_PRECONDITION status if\nthe target service is not currently enabled.\n\nOperation\u003cresponse: google.protobuf.Empty\u003e", + "flatPath": "v1/{v1Id}/{v1Id1}/services/{servicesId}:disable", + "httpMethod": "POST", + "id": "serviceusage.services.disable", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Name of the consumer and service to disable the service on.\n\nThe enable and disable methods currently only support projects.\n\nAn example name would be:\nprojects/123/services/serviceusage.googleapis.com", + "location": "path", + "pattern": "^[^/]+/[^/]+/services/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}:disable", + "request": { + "$ref": "DisableServiceRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/service.management" + ] + }, + "enable": { + "description": "Enable a service so it can be used with a project.\nSee [Cloud Auth Guide](https://cloud.google.com/docs/authentication) for\nmore information.\n\nOperation\u003cresponse: google.protobuf.Empty\u003e", + "flatPath": "v1/{v1Id}/{v1Id1}/services/{servicesId}:enable", + "httpMethod": "POST", + "id": "serviceusage.services.enable", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Name of the consumer and service to enable the service on.\n\nThe enable and disable methods currently only support projects.\n\nEnabling a service requires that the service is public or is shared with\nthe user enabling the service.\n\nAn example name would be:\nprojects/123/services/serviceusage.googleapis.com", + "location": "path", + "pattern": "^[^/]+/[^/]+/services/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}:enable", + "request": { + "$ref": "EnableServiceRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/service.management" + ] + }, + "get": { + "description": "Returns the service definition and EnabledState for a given service.", + "flatPath": "v1/{v1Id}/{v1Id1}/services/{servicesId}", + "httpMethod": "GET", + "id": "serviceusage.services.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Name of the consumer and service to get the ConsumerState for.\n\nAn example name would be:\nprojects/123/services/serviceusage.googleapis.com", + "location": "path", + "pattern": "^[^/]+/[^/]+/services/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "ServiceState" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + }, + "listEnabled": { + "description": "List enabled services.", + "flatPath": "v1/{v1Id}/{v1Id1}/services:enabled", + "httpMethod": "GET", + "id": "serviceusage.services.listEnabled", + "parameterOrder": [ + "parent" + ], + "parameters": { + "pageSize": { + "description": "Requested size of the next page of data.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Token identifying which result to start with; returned by a previous list\ncall.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Parent to search for services on.\n\nAn example name would be:\nprojects/123", + "location": "path", + "pattern": "^[^/]+/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+parent}/services:enabled", + "response": { + "$ref": "ListEnabledServicesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + }, + "search": { + "description": "Search available services.\n\nWhen no filter is specified, returns all accessible services. This includes\npublic services and services for which the calling user has the\n\"servicemanagement.services.bind\" permission.", + "flatPath": "v1/services:search", + "httpMethod": "GET", + "id": "serviceusage.services.search", + "parameterOrder": [], + "parameters": { + "pageSize": { + "description": "Requested size of the next page of data.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Token identifying which result to start with; returned by a previous search\ncall.", + "location": "query", + "type": "string" + } + }, + "path": "v1/services:search", + "response": { + "$ref": "SearchServicesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + } + } + } + }, + "revision": "20180210", + "rootUrl": "https://serviceusage.googleapis.com/", + "schemas": { + "Api": { + "description": "Api is a light-weight descriptor for an API Interface.\n\nInterfaces are also described as \"protocol buffer services\" in some contexts,\nsuch as by the \"service\" keyword in a .proto file, but they are different\nfrom API Services, which represent a concrete implementation of an interface\nas opposed to simply a description of methods and bindings. They are also\nsometimes simply referred to as \"APIs\" in other contexts, such as the name of\nthis message itself. See https://cloud.google.com/apis/design/glossary for\ndetailed terminology.", + "id": "Api", + "properties": { + "methods": { + "description": "The methods of this interface, in unspecified order.", + "items": { + "$ref": "Method" + }, + "type": "array" + }, + "mixins": { + "description": "Included interfaces. See Mixin.", + "items": { + "$ref": "Mixin" + }, + "type": "array" + }, + "name": { + "description": "The fully qualified name of this interface, including package name\nfollowed by the interface's simple name.", + "type": "string" + }, + "options": { + "description": "Any metadata attached to the interface.", + "items": { + "$ref": "Option" + }, + "type": "array" + }, + "sourceContext": { + "$ref": "SourceContext", + "description": "Source context for the protocol buffer service represented by this\nmessage." + }, + "syntax": { + "description": "The source syntax of the service.", + "enum": [ + "SYNTAX_PROTO2", + "SYNTAX_PROTO3" + ], + "enumDescriptions": [ + "Syntax `proto2`.", + "Syntax `proto3`." + ], + "type": "string" + }, + "version": { + "description": "A version string for this interface. If specified, must have the form\n`major-version.minor-version`, as in `1.10`. If the minor version is\nomitted, it defaults to zero. If the entire version field is empty, the\nmajor version is derived from the package name, as outlined below. If the\nfield is not empty, the version in the package name will be verified to be\nconsistent with what is provided here.\n\nThe versioning schema uses [semantic\nversioning](http://semver.org) where the major version number\nindicates a breaking change and the minor version an additive,\nnon-breaking change. Both version numbers are signals to users\nwhat to expect from different versions, and should be carefully\nchosen based on the product plan.\n\nThe major version is also reflected in the package name of the\ninterface, which must end in `v\u003cmajor-version\u003e`, as in\n`google.feature.v1`. For major versions 0 and 1, the suffix can\nbe omitted. Zero major versions must only be used for\nexperimental, non-GA interfaces.\n", + "type": "string" + } + }, + "type": "object" + }, + "AuthProvider": { + "description": "Configuration for an anthentication provider, including support for\n[JSON Web Token (JWT)](https://tools.ietf.org/html/draft-ietf-oauth-json-web-token-32).", + "id": "AuthProvider", + "properties": { + "audiences": { + "description": "The list of JWT\n[audiences](https://tools.ietf.org/html/draft-ietf-oauth-json-web-token-32#section-4.1.3).\nthat are allowed to access. A JWT containing any of these audiences will\nbe accepted. When this setting is absent, only JWTs with audience\n\"https://Service_name/API_name\"\nwill be accepted. For example, if no audiences are in the setting,\nLibraryService API will only accept JWTs with the following audience\n\"https://library-example.googleapis.com/google.example.library.v1.LibraryService\".\n\nExample:\n\n audiences: bookstore_android.apps.googleusercontent.com,\n bookstore_web.apps.googleusercontent.com", + "type": "string" + }, + "authorizationUrl": { + "description": "Redirect URL if JWT token is required but no present or is expired.\nImplement authorizationUrl of securityDefinitions in OpenAPI spec.", + "type": "string" + }, + "id": { + "description": "The unique identifier of the auth provider. It will be referred to by\n`AuthRequirement.provider_id`.\n\nExample: \"bookstore_auth\".", + "type": "string" + }, + "issuer": { + "description": "Identifies the principal that issued the JWT. See\nhttps://tools.ietf.org/html/draft-ietf-oauth-json-web-token-32#section-4.1.1\nUsually a URL or an email address.\n\nExample: https://securetoken.google.com\nExample: 1234567-compute@developer.gserviceaccount.com", + "type": "string" + }, + "jwksUri": { + "description": "URL of the provider's public key set to validate signature of the JWT. See\n[OpenID Discovery](https://openid.net/specs/openid-connect-discovery-1_0.html#ProviderMetadata).\nOptional if the key set document:\n - can be retrieved from\n [OpenID Discovery](https://openid.net/specs/openid-connect-discovery-1_0.html\n of the issuer.\n - can be inferred from the email domain of the issuer (e.g. a Google service account).\n\nExample: https://www.googleapis.com/oauth2/v1/certs", + "type": "string" + } + }, + "type": "object" + }, + "AuthRequirement": { + "description": "User-defined authentication requirements, including support for\n[JSON Web Token (JWT)](https://tools.ietf.org/html/draft-ietf-oauth-json-web-token-32).", + "id": "AuthRequirement", + "properties": { + "audiences": { + "description": "NOTE: This will be deprecated soon, once AuthProvider.audiences is\nimplemented and accepted in all the runtime components.\n\nThe list of JWT\n[audiences](https://tools.ietf.org/html/draft-ietf-oauth-json-web-token-32#section-4.1.3).\nthat are allowed to access. A JWT containing any of these audiences will\nbe accepted. When this setting is absent, only JWTs with audience\n\"https://Service_name/API_name\"\nwill be accepted. For example, if no audiences are in the setting,\nLibraryService API will only accept JWTs with the following audience\n\"https://library-example.googleapis.com/google.example.library.v1.LibraryService\".\n\nExample:\n\n audiences: bookstore_android.apps.googleusercontent.com,\n bookstore_web.apps.googleusercontent.com", + "type": "string" + }, + "providerId": { + "description": "id from authentication provider.\n\nExample:\n\n provider_id: bookstore_auth", + "type": "string" + } + }, + "type": "object" + }, + "Authentication": { + "description": "`Authentication` defines the authentication configuration for an API.\n\nExample for an API targeted for external use:\n\n name: calendar.googleapis.com\n authentication:\n providers:\n - id: google_calendar_auth\n jwks_uri: https://www.googleapis.com/oauth2/v1/certs\n issuer: https://securetoken.google.com\n rules:\n - selector: \"*\"\n requirements:\n provider_id: google_calendar_auth", + "id": "Authentication", + "properties": { + "providers": { + "description": "Defines a set of authentication providers that a service supports.", + "items": { + "$ref": "AuthProvider" + }, + "type": "array" + }, + "rules": { + "description": "A list of authentication rules that apply to individual API methods.\n\n**NOTE:** All service configuration rules follow \"last one wins\" order.", + "items": { + "$ref": "AuthenticationRule" + }, + "type": "array" + } + }, + "type": "object" + }, + "AuthenticationRule": { + "description": "Authentication rules for the service.\n\nBy default, if a method has any authentication requirements, every request\nmust include a valid credential matching one of the requirements.\nIt's an error to include more than one kind of credential in a single\nrequest.\n\nIf a method doesn't have any auth requirements, request credentials will be\nignored.", + "id": "AuthenticationRule", + "properties": { + "allowWithoutCredential": { + "description": "Whether to allow requests without a credential. The credential can be\nan OAuth token, Google cookies (first-party auth) or EndUserCreds.\n\nFor requests without credentials, if the service control environment is\nspecified, each incoming request **must** be associated with a service\nconsumer. This can be done by passing an API key that belongs to a consumer\nproject.", + "type": "boolean" + }, + "customAuth": { + "$ref": "CustomAuthRequirements", + "description": "Configuration for custom authentication." + }, + "oauth": { + "$ref": "OAuthRequirements", + "description": "The requirements for OAuth credentials." + }, + "requirements": { + "description": "Requirements for additional authentication providers.", + "items": { + "$ref": "AuthRequirement" + }, + "type": "array" + }, + "selector": { + "description": "Selects the methods to which this rule applies.\n\nRefer to selector for syntax details.", + "type": "string" + } + }, + "type": "object" + }, + "AuthorizationConfig": { + "description": "Configuration of authorization.\n\nThis section determines the authorization provider, if unspecified, then no\nauthorization check will be done.\n\nExample:\n\n experimental:\n authorization:\n provider: firebaserules.googleapis.com", + "id": "AuthorizationConfig", + "properties": { + "provider": { + "description": "The name of the authorization provider, such as\nfirebaserules.googleapis.com.", + "type": "string" + } + }, + "type": "object" + }, + "AuthorizationRule": { + "description": "Authorization rule for API services.\n\nIt specifies the permission(s) required for an API element for the overall\nAPI request to succeed. It is typically used to mark request message fields\nthat contain the name of the resource and indicates the permissions that\nwill be checked on that resource.\n\nFor example:\n\n package google.storage.v1;\n\n message CopyObjectRequest {\n string source = 1 [\n (google.api.authz).permissions = \"storage.objects.get\"];\n\n string destination = 2 [\n (google.api.authz).permissions =\n \"storage.objects.create,storage.objects.update\"];\n }", + "id": "AuthorizationRule", + "properties": { + "permissions": { + "description": "The required permissions. The acceptable values vary depend on the\nauthorization system used. For Google APIs, it should be a comma-separated\nGoogle IAM permission values. When multiple permissions are listed, the\nsemantics is not defined by the system. Additional documentation must\nbe provided manually.", + "type": "string" + }, + "selector": { + "description": "Selects the API elements to which this rule applies.\n\nRefer to selector for syntax details.", + "type": "string" + } + }, + "type": "object" + }, + "Backend": { + "description": "`Backend` defines the backend configuration for a service.", + "id": "Backend", + "properties": { + "rules": { + "description": "A list of API backend rules that apply to individual API methods.\n\n**NOTE:** All service configuration rules follow \"last one wins\" order.", + "items": { + "$ref": "BackendRule" + }, + "type": "array" + } + }, + "type": "object" + }, + "BackendRule": { + "description": "A backend rule provides configuration for an individual API element.", + "id": "BackendRule", + "properties": { + "address": { + "description": "The address of the API backend.", + "type": "string" + }, + "deadline": { + "description": "The number of seconds to wait for a response from a request. The default\ndeadline for gRPC is infinite (no deadline) and HTTP requests is 5 seconds.", + "format": "double", + "type": "number" + }, + "minDeadline": { + "description": "Minimum deadline in seconds needed for this method. Calls having deadline\nvalue lower than this will be rejected.", + "format": "double", + "type": "number" + }, + "selector": { + "description": "Selects the methods to which this rule applies.\n\nRefer to selector for syntax details.", + "type": "string" + } + }, + "type": "object" + }, + "Billing": { + "description": "Billing related configuration of the service.\n\nThe following example shows how to configure monitored resources and metrics\nfor billing:\n\n monitored_resources:\n - type: library.googleapis.com/branch\n labels:\n - key: /city\n description: The city where the library branch is located in.\n - key: /name\n description: The name of the branch.\n metrics:\n - name: library.googleapis.com/book/borrowed_count\n metric_kind: DELTA\n value_type: INT64\n billing:\n consumer_destinations:\n - monitored_resource: library.googleapis.com/branch\n metrics:\n - library.googleapis.com/book/borrowed_count", + "id": "Billing", + "properties": { + "consumerDestinations": { + "description": "Billing configurations for sending metrics to the consumer project.\nThere can be multiple consumer destinations per service, each one must have\na different monitored resource type. A metric can be used in at most\none consumer destination.", + "items": { + "$ref": "BillingDestination" + }, + "type": "array" + } + }, + "type": "object" + }, + "BillingDestination": { + "description": "Configuration of a specific billing destination (Currently only support\nbill against consumer project).", + "id": "BillingDestination", + "properties": { + "metrics": { + "description": "Names of the metrics to report to this billing destination.\nEach name must be defined in Service.metrics section.", + "items": { + "type": "string" + }, + "type": "array" + }, + "monitoredResource": { + "description": "The monitored resource type. The type must be defined in\nService.monitored_resources section.", + "type": "string" + } + }, + "type": "object" + }, + "CancelOperationRequest": { + "description": "The request message for Operations.CancelOperation.", + "id": "CancelOperationRequest", + "properties": {}, + "type": "object" + }, + "Context": { + "description": "`Context` defines which contexts an API requests.\n\nExample:\n\n context:\n rules:\n - selector: \"*\"\n requested:\n - google.rpc.context.ProjectContext\n - google.rpc.context.OriginContext\n\nThe above specifies that all methods in the API request\n`google.rpc.context.ProjectContext` and\n`google.rpc.context.OriginContext`.\n\nAvailable context types are defined in package\n`google.rpc.context`.\n\nThis also provides mechanism to whitelist any protobuf message extension that\ncan be sent in grpc metadata using “x-goog-ext-\u003cextension_id\u003e-bin” and\n“x-goog-ext-\u003cextension_id\u003e-jspb” format. For example, list any service\nspecific protobuf types that can appear in grpc metadata as follows in your\nyaml file:\n\nExample:\n\n context:\n rules:\n - selector: \"google.example.library.v1.LibraryService.CreateBook\"\n allowed_request_extensions:\n - google.foo.v1.NewExtension\n allowed_response_extensions:\n - google.foo.v1.NewExtension\n\nYou can also specify extension ID instead of fully qualified extension name\nhere.", + "id": "Context", + "properties": { + "rules": { + "description": "A list of RPC context rules that apply to individual API methods.\n\n**NOTE:** All service configuration rules follow \"last one wins\" order.", + "items": { + "$ref": "ContextRule" + }, + "type": "array" + } + }, + "type": "object" + }, + "ContextRule": { + "description": "A context rule provides information about the context for an individual API\nelement.", + "id": "ContextRule", + "properties": { + "allowedRequestExtensions": { + "description": "A list of full type names or extension IDs of extensions allowed in grpc\nside channel from client to backend.", + "items": { + "type": "string" + }, + "type": "array" + }, + "allowedResponseExtensions": { + "description": "A list of full type names or extension IDs of extensions allowed in grpc\nside channel from backend to client.", + "items": { + "type": "string" + }, + "type": "array" + }, + "provided": { + "description": "A list of full type names of provided contexts.", + "items": { + "type": "string" + }, + "type": "array" + }, + "requested": { + "description": "A list of full type names of requested contexts.", + "items": { + "type": "string" + }, + "type": "array" + }, + "selector": { + "description": "Selects the methods to which this rule applies.\n\nRefer to selector for syntax details.", + "type": "string" + } + }, + "type": "object" + }, + "Control": { + "description": "Selects and configures the service controller used by the service. The\nservice controller handles features like abuse, quota, billing, logging,\nmonitoring, etc.", + "id": "Control", + "properties": { + "environment": { + "description": "The service control environment to use. If empty, no control plane\nfeature (like quota and billing) will be enabled.", + "type": "string" + } + }, + "type": "object" + }, + "CustomAuthRequirements": { + "description": "Configuration for a custom authentication provider.", + "id": "CustomAuthRequirements", + "properties": { + "provider": { + "description": "A configuration string containing connection information for the\nauthentication provider, typically formatted as a SmartService string\n(go/smartservice).", + "type": "string" + } + }, + "type": "object" + }, + "CustomError": { + "description": "Customize service error responses. For example, list any service\nspecific protobuf types that can appear in error detail lists of\nerror responses.\n\nExample:\n\n custom_error:\n types:\n - google.foo.v1.CustomError\n - google.foo.v1.AnotherError", + "id": "CustomError", + "properties": { + "rules": { + "description": "The list of custom error rules that apply to individual API messages.\n\n**NOTE:** All service configuration rules follow \"last one wins\" order.", + "items": { + "$ref": "CustomErrorRule" + }, + "type": "array" + }, + "types": { + "description": "The list of custom error detail types, e.g. 'google.foo.v1.CustomError'.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "CustomErrorRule": { + "description": "A custom error rule.", + "id": "CustomErrorRule", + "properties": { + "isErrorType": { + "description": "Mark this message as possible payload in error response. Otherwise,\nobjects of this type will be filtered when they appear in error payload.", + "type": "boolean" + }, + "selector": { + "description": "Selects messages to which this rule applies.\n\nRefer to selector for syntax details.", + "type": "string" + } + }, + "type": "object" + }, + "CustomHttpPattern": { + "description": "A custom pattern is used for defining custom HTTP verb.", + "id": "CustomHttpPattern", + "properties": { + "kind": { + "description": "The name of this custom HTTP verb.", + "type": "string" + }, + "path": { + "description": "The path matched by this custom verb.", + "type": "string" + } + }, + "type": "object" + }, + "DisableServiceRequest": { + "description": "Request message for DisableService.", + "id": "DisableServiceRequest", + "properties": {}, + "type": "object" + }, + "Documentation": { + "description": "`Documentation` provides the information for describing a service.\n\nExample:\n\u003cpre\u003e\u003ccode\u003edocumentation:\n summary: \u003e\n The Google Calendar API gives access\n to most calendar features.\n pages:\n - name: Overview\n content: \u0026#40;== include google/foo/overview.md ==\u0026#41;\n - name: Tutorial\n content: \u0026#40;== include google/foo/tutorial.md ==\u0026#41;\n subpages;\n - name: Java\n content: \u0026#40;== include google/foo/tutorial_java.md ==\u0026#41;\n rules:\n - selector: google.calendar.Calendar.Get\n description: \u003e\n ...\n - selector: google.calendar.Calendar.Put\n description: \u003e\n ...\n\u003c/code\u003e\u003c/pre\u003e\nDocumentation is provided in markdown syntax. In addition to\nstandard markdown features, definition lists, tables and fenced\ncode blocks are supported. Section headers can be provided and are\ninterpreted relative to the section nesting of the context where\na documentation fragment is embedded.\n\nDocumentation from the IDL is merged with documentation defined\nvia the config at normalization time, where documentation provided\nby config rules overrides IDL provided.\n\nA number of constructs specific to the API platform are supported\nin documentation text.\n\nIn order to reference a proto element, the following\nnotation can be used:\n\u003cpre\u003e\u003ccode\u003e\u0026#91;fully.qualified.proto.name]\u0026#91;]\u003c/code\u003e\u003c/pre\u003e\nTo override the display text used for the link, this can be used:\n\u003cpre\u003e\u003ccode\u003e\u0026#91;display text]\u0026#91;fully.qualified.proto.name]\u003c/code\u003e\u003c/pre\u003e\nText can be excluded from doc using the following notation:\n\u003cpre\u003e\u003ccode\u003e\u0026#40;-- internal comment --\u0026#41;\u003c/code\u003e\u003c/pre\u003e\nComments can be made conditional using a visibility label. The below\ntext will be only rendered if the `BETA` label is available:\n\u003cpre\u003e\u003ccode\u003e\u0026#40;--BETA: comment for BETA users --\u0026#41;\u003c/code\u003e\u003c/pre\u003e\nA few directives are available in documentation. Note that\ndirectives must appear on a single line to be properly\nidentified. The `include` directive includes a markdown file from\nan external source:\n\u003cpre\u003e\u003ccode\u003e\u0026#40;== include path/to/file ==\u0026#41;\u003c/code\u003e\u003c/pre\u003e\nThe `resource_for` directive marks a message to be the resource of\na collection in REST view. If it is not specified, tools attempt\nto infer the resource from the operations in a collection:\n\u003cpre\u003e\u003ccode\u003e\u0026#40;== resource_for v1.shelves.books ==\u0026#41;\u003c/code\u003e\u003c/pre\u003e\nThe directive `suppress_warning` does not directly affect documentation\nand is documented together with service config validation.", + "id": "Documentation", + "properties": { + "documentationRootUrl": { + "description": "The URL to the root of documentation.", + "type": "string" + }, + "overview": { + "description": "Declares a single overview page. For example:\n\u003cpre\u003e\u003ccode\u003edocumentation:\n summary: ...\n overview: \u0026#40;== include overview.md ==\u0026#41;\n\u003c/code\u003e\u003c/pre\u003e\nThis is a shortcut for the following declaration (using pages style):\n\u003cpre\u003e\u003ccode\u003edocumentation:\n summary: ...\n pages:\n - name: Overview\n content: \u0026#40;== include overview.md ==\u0026#41;\n\u003c/code\u003e\u003c/pre\u003e\nNote: you cannot specify both `overview` field and `pages` field.", + "type": "string" + }, + "pages": { + "description": "The top level pages for the documentation set.", + "items": { + "$ref": "Page" + }, + "type": "array" + }, + "rules": { + "description": "A list of documentation rules that apply to individual API elements.\n\n**NOTE:** All service configuration rules follow \"last one wins\" order.", + "items": { + "$ref": "DocumentationRule" + }, + "type": "array" + }, + "summary": { + "description": "A short summary of what the service does. Can only be provided by\nplain text.", + "type": "string" + } + }, + "type": "object" + }, + "DocumentationRule": { + "description": "A documentation rule provides information about individual API elements.", + "id": "DocumentationRule", + "properties": { + "deprecationDescription": { + "description": "Deprecation description of the selected element(s). It can be provided if an\nelement is marked as `deprecated`.", + "type": "string" + }, + "description": { + "description": "Description of the selected API(s).", + "type": "string" + }, + "selector": { + "description": "The selector is a comma-separated list of patterns. Each pattern is a\nqualified name of the element which may end in \"*\", indicating a wildcard.\nWildcards are only allowed at the end and for a whole component of the\nqualified name, i.e. \"foo.*\" is ok, but not \"foo.b*\" or \"foo.*.bar\". To\nspecify a default for all applicable elements, the whole pattern \"*\"\nis used.", + "type": "string" + } + }, + "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" + }, + "EnableServiceRequest": { + "description": "Request message for EnableService.", + "id": "EnableServiceRequest", + "properties": {}, + "type": "object" + }, + "EnabledState": { + "description": "The EnabledState reflects whether the service has been explicitly enabled or\nnot.", + "id": "EnabledState", + "properties": { + "state": { + "description": "Whether or not the service has been explicitly enabled.", + "enum": [ + "ENABLED_UNSPECIFIED", + "DISABLED", + "ENABLED" + ], + "enumDescriptions": [ + "The default value, which indicates that the enabled state of the service\nis unknown or unspecified.", + "The service has not been made available for use for the consumer.", + "The service was explicitly enabled for use by a consumer." + ], + "type": "string" + } + }, + "type": "object" + }, + "Endpoint": { + "description": "`Endpoint` describes a network endpoint that serves a set of APIs.\nA service may expose any number of endpoints, and all endpoints share the\nsame service configuration, such as quota configuration and monitoring\nconfiguration.\n\nExample service configuration:\n\n name: library-example.googleapis.com\n endpoints:\n # Below entry makes 'google.example.library.v1.Library'\n # API be served from endpoint address library-example.googleapis.com.\n # It also allows HTTP OPTIONS calls to be passed to the backend, for\n # it to decide whether the subsequent cross-origin request is\n # allowed to proceed.\n - name: library-example.googleapis.com\n allow_cors: true", + "id": "Endpoint", + "properties": { + "aliases": { + "description": "DEPRECATED: This field is no longer supported. Instead of using aliases,\nplease specify multiple google.api.Endpoint for each of the intended\naliases.\n\nAdditional names that this endpoint will be hosted on.", + "items": { + "type": "string" + }, + "type": "array" + }, + "allowCors": { + "description": "Allowing\n[CORS](https://en.wikipedia.org/wiki/Cross-origin_resource_sharing), aka\ncross-domain traffic, would allow the backends served from this endpoint to\nreceive and respond to HTTP OPTIONS requests. The response will be used by\nthe browser to determine whether the subsequent cross-origin request is\nallowed to proceed.", + "type": "boolean" + }, + "features": { + "description": "The list of features enabled on this endpoint.", + "items": { + "type": "string" + }, + "type": "array" + }, + "name": { + "description": "The canonical name of this endpoint.", + "type": "string" + }, + "target": { + "description": "The specification of an Internet routable address of API frontend that will\nhandle requests to this [API Endpoint](https://cloud.google.com/apis/design/glossary).\nIt should be either a valid IPv4 address or a fully-qualified domain name.\nFor example, \"8.8.8.8\" or \"myservice.appspot.com\".", + "type": "string" + } + }, + "type": "object" + }, + "Enum": { + "description": "Enum type definition.", + "id": "Enum", + "properties": { + "enumvalue": { + "description": "Enum value definitions.", + "items": { + "$ref": "EnumValue" + }, + "type": "array" + }, + "name": { + "description": "Enum type name.", + "type": "string" + }, + "options": { + "description": "Protocol buffer options.", + "items": { + "$ref": "Option" + }, + "type": "array" + }, + "sourceContext": { + "$ref": "SourceContext", + "description": "The source context." + }, + "syntax": { + "description": "The source syntax.", + "enum": [ + "SYNTAX_PROTO2", + "SYNTAX_PROTO3" + ], + "enumDescriptions": [ + "Syntax `proto2`.", + "Syntax `proto3`." + ], + "type": "string" + } + }, + "type": "object" + }, + "EnumValue": { + "description": "Enum value definition.", + "id": "EnumValue", + "properties": { + "name": { + "description": "Enum value name.", + "type": "string" + }, + "number": { + "description": "Enum value number.", + "format": "int32", + "type": "integer" + }, + "options": { + "description": "Protocol buffer options.", + "items": { + "$ref": "Option" + }, + "type": "array" + } + }, + "type": "object" + }, + "Experimental": { + "description": "Experimental service configuration. These configuration options can\nonly be used by whitelisted users.", + "id": "Experimental", + "properties": { + "authorization": { + "$ref": "AuthorizationConfig", + "description": "Authorization configuration." + } + }, + "type": "object" + }, + "Field": { + "description": "A single field of a message type.", + "id": "Field", + "properties": { + "cardinality": { + "description": "The field cardinality.", + "enum": [ + "CARDINALITY_UNKNOWN", + "CARDINALITY_OPTIONAL", + "CARDINALITY_REQUIRED", + "CARDINALITY_REPEATED" + ], + "enumDescriptions": [ + "For fields with unknown cardinality.", + "For optional fields.", + "For required fields. Proto2 syntax only.", + "For repeated fields." + ], + "type": "string" + }, + "defaultValue": { + "description": "The string value of the default value of this field. Proto2 syntax only.", + "type": "string" + }, + "jsonName": { + "description": "The field JSON name.", + "type": "string" + }, + "kind": { + "description": "The field type.", + "enum": [ + "TYPE_UNKNOWN", + "TYPE_DOUBLE", + "TYPE_FLOAT", + "TYPE_INT64", + "TYPE_UINT64", + "TYPE_INT32", + "TYPE_FIXED64", + "TYPE_FIXED32", + "TYPE_BOOL", + "TYPE_STRING", + "TYPE_GROUP", + "TYPE_MESSAGE", + "TYPE_BYTES", + "TYPE_UINT32", + "TYPE_ENUM", + "TYPE_SFIXED32", + "TYPE_SFIXED64", + "TYPE_SINT32", + "TYPE_SINT64" + ], + "enumDescriptions": [ + "Field type unknown.", + "Field type double.", + "Field type float.", + "Field type int64.", + "Field type uint64.", + "Field type int32.", + "Field type fixed64.", + "Field type fixed32.", + "Field type bool.", + "Field type string.", + "Field type group. Proto2 syntax only, and deprecated.", + "Field type message.", + "Field type bytes.", + "Field type uint32.", + "Field type enum.", + "Field type sfixed32.", + "Field type sfixed64.", + "Field type sint32.", + "Field type sint64." + ], + "type": "string" + }, + "name": { + "description": "The field name.", + "type": "string" + }, + "number": { + "description": "The field number.", + "format": "int32", + "type": "integer" + }, + "oneofIndex": { + "description": "The index of the field type in `Type.oneofs`, for message or enumeration\ntypes. The first type has index 1; zero means the type is not in the list.", + "format": "int32", + "type": "integer" + }, + "options": { + "description": "The protocol buffer options.", + "items": { + "$ref": "Option" + }, + "type": "array" + }, + "packed": { + "description": "Whether to use alternative packed wire representation.", + "type": "boolean" + }, + "typeUrl": { + "description": "The field type URL, without the scheme, for message or enumeration\ntypes. Example: `\"type.googleapis.com/google.protobuf.Timestamp\"`.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleApiService": { + "description": "`Service` is the root object of Google service configuration schema. It\ndescribes basic information about a service, such as the name and the\ntitle, and delegates other aspects to sub-sections. Each sub-section is\neither a proto message or a repeated proto message that configures a\nspecific aspect, such as auth. See each proto message definition for details.\n\nExample:\n\n type: google.api.Service\n config_version: 3\n name: calendar.googleapis.com\n title: Google Calendar API\n apis:\n - name: google.calendar.v3.Calendar\n authentication:\n providers:\n - id: google_calendar_auth\n jwks_uri: https://www.googleapis.com/oauth2/v1/certs\n issuer: https://securetoken.google.com\n rules:\n - selector: \"*\"\n requirements:\n provider_id: google_calendar_auth", + "id": "GoogleApiService", + "properties": { + "apis": { + "description": "A list of API interfaces exported by this service. Only the `name` field\nof the google.protobuf.Api needs to be provided by the configuration\nauthor, as the remaining fields will be derived from the IDL during the\nnormalization process. It is an error to specify an API interface here\nwhich cannot be resolved against the associated IDL files.", + "items": { + "$ref": "Api" + }, + "type": "array" + }, + "authentication": { + "$ref": "Authentication", + "description": "Auth configuration." + }, + "backend": { + "$ref": "Backend", + "description": "API backend configuration." + }, + "billing": { + "$ref": "Billing", + "description": "Billing configuration." + }, + "configVersion": { + "description": "The semantic version of the service configuration. The config version\naffects the interpretation of the service configuration. For example,\ncertain features are enabled by default for certain config versions.\nThe latest config version is `3`.", + "format": "uint32", + "type": "integer" + }, + "context": { + "$ref": "Context", + "description": "Context configuration." + }, + "control": { + "$ref": "Control", + "description": "Configuration for the service control plane." + }, + "customError": { + "$ref": "CustomError", + "description": "Custom error configuration." + }, + "documentation": { + "$ref": "Documentation", + "description": "Additional API documentation." + }, + "endpoints": { + "description": "Configuration for network endpoints. If this is empty, then an endpoint\nwith the same name as the service is automatically generated to service all\ndefined APIs.", + "items": { + "$ref": "Endpoint" + }, + "type": "array" + }, + "enums": { + "description": "A list of all enum types included in this API service. Enums\nreferenced directly or indirectly by the `apis` are automatically\nincluded. Enums which are not referenced but shall be included\nshould be listed here by name. Example:\n\n enums:\n - name: google.someapi.v1.SomeEnum", + "items": { + "$ref": "Enum" + }, + "type": "array" + }, + "experimental": { + "$ref": "Experimental", + "description": "Experimental configuration." + }, + "http": { + "$ref": "Http", + "description": "HTTP configuration." + }, + "id": { + "description": "A unique ID for a specific instance of this message, typically assigned\nby the client for tracking purpose. If empty, the server may choose to\ngenerate one instead.", + "type": "string" + }, + "logging": { + "$ref": "Logging", + "description": "Logging configuration." + }, + "logs": { + "description": "Defines the logs used by this service.", + "items": { + "$ref": "LogDescriptor" + }, + "type": "array" + }, + "metrics": { + "description": "Defines the metrics used by this service.", + "items": { + "$ref": "MetricDescriptor" + }, + "type": "array" + }, + "monitoredResources": { + "description": "Defines the monitored resources used by this service. This is required\nby the Service.monitoring and Service.logging configurations.", + "items": { + "$ref": "MonitoredResourceDescriptor" + }, + "type": "array" + }, + "monitoring": { + "$ref": "Monitoring", + "description": "Monitoring configuration." + }, + "name": { + "description": "The DNS address at which this service is available,\ne.g. `calendar.googleapis.com`.", + "type": "string" + }, + "producerProjectId": { + "description": "The Google project that owns this service.", + "type": "string" + }, + "quota": { + "$ref": "Quota", + "description": "Quota configuration." + }, + "sourceInfo": { + "$ref": "SourceInfo", + "description": "Output only. The source information for this configuration if available." + }, + "systemParameters": { + "$ref": "SystemParameters", + "description": "System parameter configuration." + }, + "systemTypes": { + "description": "A list of all proto message types included in this API service.\nIt serves similar purpose as [google.api.Service.types], except that\nthese types are not needed by user-defined APIs. Therefore, they will not\nshow up in the generated discovery doc. This field should only be used\nto define system APIs in ESF.", + "items": { + "$ref": "Type" + }, + "type": "array" + }, + "title": { + "description": "The product title for this service.", + "type": "string" + }, + "types": { + "description": "A list of all proto message types included in this API service.\nTypes referenced directly or indirectly by the `apis` are\nautomatically included. Messages which are not referenced but\nshall be included, such as types used by the `google.protobuf.Any` type,\nshould be listed here by name. Example:\n\n types:\n - name: google.protobuf.Int32", + "items": { + "$ref": "Type" + }, + "type": "array" + }, + "usage": { + "$ref": "Usage", + "description": "Configuration controlling usage of this service." + }, + "visibility": { + "$ref": "Visibility", + "description": "API visibility configuration." + } + }, + "type": "object" + }, + "Http": { + "description": "Defines the HTTP configuration for an API service. It contains a list of\nHttpRule, each specifying the mapping of an RPC method\nto one or more HTTP REST API methods.", + "id": "Http", + "properties": { + "fullyDecodeReservedExpansion": { + "description": "When set to true, URL path parmeters will be fully URI-decoded except in\ncases of single segment matches in reserved expansion, where \"%2F\" will be\nleft encoded.\n\nThe default behavior is to not decode RFC 6570 reserved characters in multi\nsegment matches.", + "type": "boolean" + }, + "rules": { + "description": "A list of HTTP configuration rules that apply to individual API methods.\n\n**NOTE:** All service configuration rules follow \"last one wins\" order.", + "items": { + "$ref": "HttpRule" + }, + "type": "array" + } + }, + "type": "object" + }, + "HttpRule": { + "description": "`HttpRule` defines the mapping of an RPC method to one or more HTTP\nREST API methods. The mapping specifies how different portions of the RPC\nrequest message are mapped to URL path, URL query parameters, and\nHTTP request body. The mapping is typically specified as an\n`google.api.http` annotation on the RPC method,\nsee \"google/api/annotations.proto\" for details.\n\nThe mapping consists of a field specifying the path template and\nmethod kind. The path template can refer to fields in the request\nmessage, as in the example below which describes a REST GET\noperation on a resource collection of messages:\n\n\n service Messaging {\n rpc GetMessage(GetMessageRequest) returns (Message) {\n option (google.api.http).get = \"/v1/messages/{message_id}/{sub.subfield}\";\n }\n }\n message GetMessageRequest {\n message SubMessage {\n string subfield = 1;\n }\n string message_id = 1; // mapped to the URL\n SubMessage sub = 2; // `sub.subfield` is url-mapped\n }\n message Message {\n string text = 1; // content of the resource\n }\n\nThe same http annotation can alternatively be expressed inside the\n`GRPC API Configuration` YAML file.\n\n http:\n rules:\n - selector: \u003cproto_package_name\u003e.Messaging.GetMessage\n get: /v1/messages/{message_id}/{sub.subfield}\n\nThis definition enables an automatic, bidrectional mapping of HTTP\nJSON to RPC. Example:\n\nHTTP | RPC\n-----|-----\n`GET /v1/messages/123456/foo` | `GetMessage(message_id: \"123456\" sub: SubMessage(subfield: \"foo\"))`\n\nIn general, not only fields but also field paths can be referenced\nfrom a path pattern. Fields mapped to the path pattern cannot be\nrepeated and must have a primitive (non-message) type.\n\nAny fields in the request message which are not bound by the path\npattern automatically become (optional) HTTP query\nparameters. Assume the following definition of the request message:\n\n\n service Messaging {\n rpc GetMessage(GetMessageRequest) returns (Message) {\n option (google.api.http).get = \"/v1/messages/{message_id}\";\n }\n }\n message GetMessageRequest {\n message SubMessage {\n string subfield = 1;\n }\n string message_id = 1; // mapped to the URL\n int64 revision = 2; // becomes a parameter\n SubMessage sub = 3; // `sub.subfield` becomes a parameter\n }\n\n\nThis enables a HTTP JSON to RPC mapping as below:\n\nHTTP | RPC\n-----|-----\n`GET /v1/messages/123456?revision=2\u0026sub.subfield=foo` | `GetMessage(message_id: \"123456\" revision: 2 sub: SubMessage(subfield: \"foo\"))`\n\nNote that fields which are mapped to HTTP parameters must have a\nprimitive type or a repeated primitive type. Message types are not\nallowed. In the case of a repeated type, the parameter can be\nrepeated in the URL, as in `...?param=A\u0026param=B`.\n\nFor HTTP method kinds which allow a request body, the `body` field\nspecifies the mapping. Consider a REST update method on the\nmessage resource collection:\n\n\n service Messaging {\n rpc UpdateMessage(UpdateMessageRequest) returns (Message) {\n option (google.api.http) = {\n put: \"/v1/messages/{message_id}\"\n body: \"message\"\n };\n }\n }\n message UpdateMessageRequest {\n string message_id = 1; // mapped to the URL\n Message message = 2; // mapped to the body\n }\n\n\nThe following HTTP JSON to RPC mapping is enabled, where the\nrepresentation of the JSON in the request body is determined by\nprotos JSON encoding:\n\nHTTP | RPC\n-----|-----\n`PUT /v1/messages/123456 { \"text\": \"Hi!\" }` | `UpdateMessage(message_id: \"123456\" message { text: \"Hi!\" })`\n\nThe special name `*` can be used in the body mapping to define that\nevery field not bound by the path template should be mapped to the\nrequest body. This enables the following alternative definition of\nthe update method:\n\n service Messaging {\n rpc UpdateMessage(Message) returns (Message) {\n option (google.api.http) = {\n put: \"/v1/messages/{message_id}\"\n body: \"*\"\n };\n }\n }\n message Message {\n string message_id = 1;\n string text = 2;\n }\n\n\nThe following HTTP JSON to RPC mapping is enabled:\n\nHTTP | RPC\n-----|-----\n`PUT /v1/messages/123456 { \"text\": \"Hi!\" }` | `UpdateMessage(message_id: \"123456\" text: \"Hi!\")`\n\nNote that when using `*` in the body mapping, it is not possible to\nhave HTTP parameters, as all fields not bound by the path end in\nthe body. This makes this option more rarely used in practice of\ndefining REST APIs. The common usage of `*` is in custom methods\nwhich don't use the URL at all for transferring data.\n\nIt is possible to define multiple HTTP methods for one RPC by using\nthe `additional_bindings` option. Example:\n\n service Messaging {\n rpc GetMessage(GetMessageRequest) returns (Message) {\n option (google.api.http) = {\n get: \"/v1/messages/{message_id}\"\n additional_bindings {\n get: \"/v1/users/{user_id}/messages/{message_id}\"\n }\n };\n }\n }\n message GetMessageRequest {\n string message_id = 1;\n string user_id = 2;\n }\n\n\nThis enables the following two alternative HTTP JSON to RPC\nmappings:\n\nHTTP | RPC\n-----|-----\n`GET /v1/messages/123456` | `GetMessage(message_id: \"123456\")`\n`GET /v1/users/me/messages/123456` | `GetMessage(user_id: \"me\" message_id: \"123456\")`\n\n# Rules for HTTP mapping\n\nThe rules for mapping HTTP path, query parameters, and body fields\nto the request message are as follows:\n\n1. The `body` field specifies either `*` or a field path, or is\n omitted. If omitted, it indicates there is no HTTP request body.\n2. Leaf fields (recursive expansion of nested messages in the\n request) can be classified into three types:\n (a) Matched in the URL template.\n (b) Covered by body (if body is `*`, everything except (a) fields;\n else everything under the body field)\n (c) All other fields.\n3. URL query parameters found in the HTTP request are mapped to (c) fields.\n4. Any body sent with an HTTP request can contain only (b) fields.\n\nThe syntax of the path template is as follows:\n\n Template = \"/\" Segments [ Verb ] ;\n Segments = Segment { \"/\" Segment } ;\n Segment = \"*\" | \"**\" | LITERAL | Variable ;\n Variable = \"{\" FieldPath [ \"=\" Segments ] \"}\" ;\n FieldPath = IDENT { \".\" IDENT } ;\n Verb = \":\" LITERAL ;\n\nThe syntax `*` matches a single path segment. The syntax `**` matches zero\nor more path segments, which must be the last part of the path except the\n`Verb`. The syntax `LITERAL` matches literal text in the path.\n\nThe syntax `Variable` matches part of the URL path as specified by its\ntemplate. A variable template must not contain other variables. If a variable\nmatches a single path segment, its template may be omitted, e.g. `{var}`\nis equivalent to `{var=*}`.\n\nIf a variable contains exactly one path segment, such as `\"{var}\"` or\n`\"{var=*}\"`, when such a variable is expanded into a URL path, all characters\nexcept `[-_.~0-9a-zA-Z]` are percent-encoded. Such variables show up in the\nDiscovery Document as `{var}`.\n\nIf a variable contains one or more path segments, such as `\"{var=foo/*}\"`\nor `\"{var=**}\"`, when such a variable is expanded into a URL path, all\ncharacters except `[-_.~/0-9a-zA-Z]` are percent-encoded. Such variables\nshow up in the Discovery Document as `{+var}`.\n\nNOTE: While the single segment variable matches the semantics of\n[RFC 6570](https://tools.ietf.org/html/rfc6570) Section 3.2.2\nSimple String Expansion, the multi segment variable **does not** match\nRFC 6570 Reserved Expansion. The reason is that the Reserved Expansion\ndoes not expand special characters like `?` and `#`, which would lead\nto invalid URLs.\n\nNOTE: the field paths in variables and in the `body` must not refer to\nrepeated fields or map fields.", + "id": "HttpRule", + "properties": { + "additionalBindings": { + "description": "Additional HTTP bindings for the selector. Nested bindings must\nnot contain an `additional_bindings` field themselves (that is,\nthe nesting may only be one level deep).", + "items": { + "$ref": "HttpRule" + }, + "type": "array" + }, + "authorizations": { + "description": "Specifies the permission(s) required for an API element for the overall\nAPI request to succeed. It is typically used to mark request message fields\nthat contain the name of the resource and indicates the permissions that\nwill be checked on that resource.", + "items": { + "$ref": "AuthorizationRule" + }, + "type": "array" + }, + "body": { + "description": "The name of the request field whose value is mapped to the HTTP body, or\n`*` for mapping all fields not captured by the path pattern to the HTTP\nbody. NOTE: the referred field must not be a repeated field and must be\npresent at the top-level of request message type.", + "type": "string" + }, + "custom": { + "$ref": "CustomHttpPattern", + "description": "The custom pattern is used for specifying an HTTP method that is not\nincluded in the `pattern` field, such as HEAD, or \"*\" to leave the\nHTTP method unspecified for this rule. The wild-card rule is useful\nfor services that provide content to Web (HTML) clients." + }, + "delete": { + "description": "Used for deleting a resource.", + "type": "string" + }, + "get": { + "description": "Used for listing and getting information about resources.", + "type": "string" + }, + "mediaDownload": { + "$ref": "MediaDownload", + "description": "Use this only for Scotty Requests. Do not use this for bytestream methods.\nFor media support, add instead [][google.bytestream.RestByteStream] as an\nAPI to your configuration." + }, + "mediaUpload": { + "$ref": "MediaUpload", + "description": "Use this only for Scotty Requests. Do not use this for media support using\nBytestream, add instead\n[][google.bytestream.RestByteStream] as an API to your\nconfiguration for Bytestream methods." + }, + "patch": { + "description": "Used for updating a resource.", + "type": "string" + }, + "post": { + "description": "Used for creating a resource.", + "type": "string" + }, + "put": { + "description": "Used for updating a resource.", + "type": "string" + }, + "restCollection": { + "description": "DO NOT USE. This is an experimental field.\n\nOptional. The REST collection name is by default derived from the URL\npattern. If specified, this field overrides the default collection name.\nExample:\n\n rpc AddressesAggregatedList(AddressesAggregatedListRequest)\n returns (AddressesAggregatedListResponse) {\n option (google.api.http) = {\n get: \"/v1/projects/{project_id}/aggregated/addresses\"\n rest_collection: \"projects.addresses\"\n };\n }\n\nThis method has the automatically derived collection name\n\"projects.aggregated\". Because, semantically, this rpc is actually an\noperation on the \"projects.addresses\" collection, the `rest_collection`\nfield is configured to override the derived collection name.", + "type": "string" + }, + "restMethodName": { + "description": "DO NOT USE. This is an experimental field.\n\nOptional. The rest method name is by default derived from the URL\npattern. If specified, this field overrides the default method name.\nExample:\n\n rpc CreateResource(CreateResourceRequest)\n returns (CreateResourceResponse) {\n option (google.api.http) = {\n post: \"/v1/resources\",\n body: \"resource\",\n rest_method_name: \"insert\"\n };\n }\n\nThis method has the automatically derived rest method name\n\"create\", but for backwards compatibility with apiary, it is specified as\ninsert.", + "type": "string" + }, + "selector": { + "description": "Selects methods to which this rule applies.\n\nRefer to selector for syntax details.", + "type": "string" + } + }, + "type": "object" + }, + "LabelDescriptor": { + "description": "A description of a label.", + "id": "LabelDescriptor", + "properties": { + "description": { + "description": "A human-readable description for the label.", + "type": "string" + }, + "key": { + "description": "The label key.", + "type": "string" + }, + "valueType": { + "description": "The type of data that can be assigned to the label.", + "enum": [ + "STRING", + "BOOL", + "INT64" + ], + "enumDescriptions": [ + "A variable-length string. This is the default.", + "Boolean; true or false.", + "A 64-bit signed integer." + ], + "type": "string" + } + }, + "type": "object" + }, + "ListEnabledServicesResponse": { + "description": "Response message for ListEnabledServices.", + "id": "ListEnabledServicesResponse", + "properties": { + "nextPageToken": { + "description": "Token that can be passed to `ListEnabledServices` to resume a paginated\nquery.", + "type": "string" + }, + "services": { + "description": "The state of the enabled services for the requested parent.", + "items": { + "$ref": "ServiceState" + }, + "type": "array" + } + }, + "type": "object" + }, + "ListOperationsResponse": { + "description": "The response message for Operations.ListOperations.", + "id": "ListOperationsResponse", + "properties": { + "nextPageToken": { + "description": "The standard List next-page token.", + "type": "string" + }, + "operations": { + "description": "A list of operations that matches the specified filter in the request.", + "items": { + "$ref": "Operation" + }, + "type": "array" + } + }, + "type": "object" + }, + "LogDescriptor": { + "description": "A description of a log type. Example in YAML format:\n\n - name: library.googleapis.com/activity_history\n description: The history of borrowing and returning library items.\n display_name: Activity\n labels:\n - key: /customer_id\n description: Identifier of a library customer", + "id": "LogDescriptor", + "properties": { + "description": { + "description": "A human-readable description of this log. This information appears in\nthe documentation and can contain details.", + "type": "string" + }, + "displayName": { + "description": "The human-readable name for this log. This information appears on\nthe user interface and should be concise.", + "type": "string" + }, + "labels": { + "description": "The set of labels that are available to describe a specific log entry.\nRuntime requests that contain labels not specified here are\nconsidered invalid.", + "items": { + "$ref": "LabelDescriptor" + }, + "type": "array" + }, + "name": { + "description": "The name of the log. It must be less than 512 characters long and can\ninclude the following characters: upper- and lower-case alphanumeric\ncharacters [A-Za-z0-9], and punctuation characters including\nslash, underscore, hyphen, period [/_-.].", + "type": "string" + } + }, + "type": "object" + }, + "Logging": { + "description": "Logging configuration of the service.\n\nThe following example shows how to configure logs to be sent to the\nproducer and consumer projects. In the example, the `activity_history`\nlog is sent to both the producer and consumer projects, whereas the\n`purchase_history` log is only sent to the producer project.\n\n monitored_resources:\n - type: library.googleapis.com/branch\n labels:\n - key: /city\n description: The city where the library branch is located in.\n - key: /name\n description: The name of the branch.\n logs:\n - name: activity_history\n labels:\n - key: /customer_id\n - name: purchase_history\n logging:\n producer_destinations:\n - monitored_resource: library.googleapis.com/branch\n logs:\n - activity_history\n - purchase_history\n consumer_destinations:\n - monitored_resource: library.googleapis.com/branch\n logs:\n - activity_history", + "id": "Logging", + "properties": { + "consumerDestinations": { + "description": "Logging configurations for sending logs to the consumer project.\nThere can be multiple consumer destinations, each one must have a\ndifferent monitored resource type. A log can be used in at most\none consumer destination.", + "items": { + "$ref": "LoggingDestination" + }, + "type": "array" + }, + "producerDestinations": { + "description": "Logging configurations for sending logs to the producer project.\nThere can be multiple producer destinations, each one must have a\ndifferent monitored resource type. A log can be used in at most\none producer destination.", + "items": { + "$ref": "LoggingDestination" + }, + "type": "array" + } + }, + "type": "object" + }, + "LoggingDestination": { + "description": "Configuration of a specific logging destination (the producer project\nor the consumer project).", + "id": "LoggingDestination", + "properties": { + "logs": { + "description": "Names of the logs to be sent to this destination. Each name must\nbe defined in the Service.logs section. If the log name is\nnot a domain scoped name, it will be automatically prefixed with\nthe service name followed by \"/\".", + "items": { + "type": "string" + }, + "type": "array" + }, + "monitoredResource": { + "description": "The monitored resource type. The type must be defined in the\nService.monitored_resources section.", + "type": "string" + } + }, + "type": "object" + }, + "MediaDownload": { + "description": "Defines the Media configuration for a service in case of a download.\nUse this only for Scotty Requests. Do not use this for media support using\nBytestream, add instead [][google.bytestream.RestByteStream] as an API to\nyour configuration for Bytestream methods.", + "id": "MediaDownload", + "properties": { + "completeNotification": { + "description": "A boolean that determines whether a notification for the completion of a\ndownload should be sent to the backend.", + "type": "boolean" + }, + "downloadService": { + "description": "DO NOT USE FIELDS BELOW THIS LINE UNTIL THIS WARNING IS REMOVED.\n\nSpecify name of the download service if one is used for download.", + "type": "string" + }, + "dropzone": { + "description": "Name of the Scotty dropzone to use for the current API.", + "type": "string" + }, + "enabled": { + "description": "Whether download is enabled.", + "type": "boolean" + }, + "maxDirectDownloadSize": { + "description": "Optional maximum acceptable size for direct download.\nThe size is specified in bytes.", + "format": "int64", + "type": "string" + }, + "useDirectDownload": { + "description": "A boolean that determines if direct download from ESF should be used for\ndownload of this media.", + "type": "boolean" + } + }, + "type": "object" + }, + "MediaUpload": { + "description": "Defines the Media configuration for a service in case of an upload.\nUse this only for Scotty Requests. Do not use this for media support using\nBytestream, add instead [][google.bytestream.RestByteStream] as an API to\nyour configuration for Bytestream methods.", + "id": "MediaUpload", + "properties": { + "completeNotification": { + "description": "A boolean that determines whether a notification for the completion of an\nupload should be sent to the backend. These notifications will not be seen\nby the client and will not consume quota.", + "type": "boolean" + }, + "dropzone": { + "description": "Name of the Scotty dropzone to use for the current API.", + "type": "string" + }, + "enabled": { + "description": "Whether upload is enabled.", + "type": "boolean" + }, + "maxSize": { + "description": "Optional maximum acceptable size for an upload.\nThe size is specified in bytes.", + "format": "int64", + "type": "string" + }, + "mimeTypes": { + "description": "An array of mimetype patterns. Esf will only accept uploads that match one\nof the given patterns.", + "items": { + "type": "string" + }, + "type": "array" + }, + "progressNotification": { + "description": "Whether to receive a notification for progress changes of media upload.", + "type": "boolean" + }, + "startNotification": { + "description": "Whether to receive a notification on the start of media upload.", + "type": "boolean" + }, + "uploadService": { + "description": "DO NOT USE FIELDS BELOW THIS LINE UNTIL THIS WARNING IS REMOVED.\n\nSpecify name of the upload service if one is used for upload.", + "type": "string" + } + }, + "type": "object" + }, + "Method": { + "description": "Method represents a method of an API interface.", + "id": "Method", + "properties": { + "name": { + "description": "The simple name of this method.", + "type": "string" + }, + "options": { + "description": "Any metadata attached to the method.", + "items": { + "$ref": "Option" + }, + "type": "array" + }, + "requestStreaming": { + "description": "If true, the request is streamed.", + "type": "boolean" + }, + "requestTypeUrl": { + "description": "A URL of the input message type.", + "type": "string" + }, + "responseStreaming": { + "description": "If true, the response is streamed.", + "type": "boolean" + }, + "responseTypeUrl": { + "description": "The URL of the output message type.", + "type": "string" + }, + "syntax": { + "description": "The source syntax of this method.", + "enum": [ + "SYNTAX_PROTO2", + "SYNTAX_PROTO3" + ], + "enumDescriptions": [ + "Syntax `proto2`.", + "Syntax `proto3`." + ], + "type": "string" + } + }, + "type": "object" + }, + "MetricDescriptor": { + "description": "Defines a metric type and its schema. Once a metric descriptor is created,\ndeleting or altering it stops data collection and makes the metric type's\nexisting data unusable.", + "id": "MetricDescriptor", + "properties": { + "description": { + "description": "A detailed description of the metric, which can be used in documentation.", + "type": "string" + }, + "displayName": { + "description": "A concise name for the metric, which can be displayed in user interfaces.\nUse sentence case without an ending period, for example \"Request count\".\nThis field is optional but it is recommended to be set for any metrics\nassociated with user-visible concepts, such as Quota.", + "type": "string" + }, + "labels": { + "description": "The set of labels that can be used to describe a specific\ninstance of this metric type. For example, the\n`appengine.googleapis.com/http/server/response_latencies` metric\ntype has a label for the HTTP response code, `response_code`, so\nyou can look at latencies for successful responses or just\nfor responses that failed.", + "items": { + "$ref": "LabelDescriptor" + }, + "type": "array" + }, + "metricKind": { + "description": "Whether the metric records instantaneous values, changes to a value, etc.\nSome combinations of `metric_kind` and `value_type` might not be supported.", + "enum": [ + "METRIC_KIND_UNSPECIFIED", + "GAUGE", + "DELTA", + "CUMULATIVE" + ], + "enumDescriptions": [ + "Do not use this default value.", + "An instantaneous measurement of a value.", + "The change in a value during a time interval.", + "A value accumulated over a time interval. Cumulative\nmeasurements in a time series should have the same start time\nand increasing end times, until an event resets the cumulative\nvalue to zero and sets a new start time for the following\npoints." + ], + "type": "string" + }, + "name": { + "description": "The resource name of the metric descriptor.", + "type": "string" + }, + "type": { + "description": "The metric type, including its DNS name prefix. The type is not\nURL-encoded. All user-defined custom metric types have the DNS name\n`custom.googleapis.com`. Metric types should use a natural hierarchical\ngrouping. For example:\n\n \"custom.googleapis.com/invoice/paid/amount\"\n \"appengine.googleapis.com/http/server/response_latencies\"", + "type": "string" + }, + "unit": { + "description": "The unit in which the metric value is reported. It is only applicable\nif the `value_type` is `INT64`, `DOUBLE`, or `DISTRIBUTION`. The\nsupported units are a subset of [The Unified Code for Units of\nMeasure](http://unitsofmeasure.org/ucum.html) standard:\n\n**Basic units (UNIT)**\n\n* `bit` bit\n* `By` byte\n* `s` second\n* `min` minute\n* `h` hour\n* `d` day\n\n**Prefixes (PREFIX)**\n\n* `k` kilo (10**3)\n* `M` mega (10**6)\n* `G` giga (10**9)\n* `T` tera (10**12)\n* `P` peta (10**15)\n* `E` exa (10**18)\n* `Z` zetta (10**21)\n* `Y` yotta (10**24)\n* `m` milli (10**-3)\n* `u` micro (10**-6)\n* `n` nano (10**-9)\n* `p` pico (10**-12)\n* `f` femto (10**-15)\n* `a` atto (10**-18)\n* `z` zepto (10**-21)\n* `y` yocto (10**-24)\n* `Ki` kibi (2**10)\n* `Mi` mebi (2**20)\n* `Gi` gibi (2**30)\n* `Ti` tebi (2**40)\n\n**Grammar**\n\nThe grammar also includes these connectors:\n\n* `/` division (as an infix operator, e.g. `1/s`).\n* `.` multiplication (as an infix operator, e.g. `GBy.d`)\n\nThe grammar for a unit is as follows:\n\n Expression = Component { \".\" Component } { \"/\" Component } ;\n\n Component = ( [ PREFIX ] UNIT | \"%\" ) [ Annotation ]\n | Annotation\n | \"1\"\n ;\n\n Annotation = \"{\" NAME \"}\" ;\n\nNotes:\n\n* `Annotation` is just a comment if it follows a `UNIT` and is\n equivalent to `1` if it is used alone. For examples,\n `{requests}/s == 1/s`, `By{transmitted}/s == By/s`.\n* `NAME` is a sequence of non-blank printable ASCII characters not\n containing '{' or '}'.\n* `1` represents dimensionless value 1, such as in `1/s`.\n* `%` represents dimensionless value 1/100, and annotates values giving\n a percentage.", + "type": "string" + }, + "valueType": { + "description": "Whether the measurement is an integer, a floating-point number, etc.\nSome combinations of `metric_kind` and `value_type` might not be supported.", + "enum": [ + "VALUE_TYPE_UNSPECIFIED", + "BOOL", + "INT64", + "DOUBLE", + "STRING", + "DISTRIBUTION", + "MONEY" + ], + "enumDescriptions": [ + "Do not use this default value.", + "The value is a boolean.\nThis value type can be used only if the metric kind is `GAUGE`.", + "The value is a signed 64-bit integer.", + "The value is a double precision floating point number.", + "The value is a text string.\nThis value type can be used only if the metric kind is `GAUGE`.", + "The value is a `Distribution`.", + "The value is money." + ], + "type": "string" + } + }, + "type": "object" + }, + "MetricRule": { + "description": "Bind API methods to metrics. Binding a method to a metric causes that\nmetric's configured quota behaviors to apply to the method call.", + "id": "MetricRule", + "properties": { + "metricCosts": { + "additionalProperties": { + "format": "int64", + "type": "string" + }, + "description": "Metrics to update when the selected methods are called, and the associated\ncost applied to each metric.\n\nThe key of the map is the metric name, and the values are the amount\nincreased for the metric against which the quota limits are defined.\nThe value must not be negative.", + "type": "object" + }, + "selector": { + "description": "Selects the methods to which this rule applies.\n\nRefer to selector for syntax details.", + "type": "string" + } + }, + "type": "object" + }, + "Mixin": { + "description": "Declares an API Interface to be included in this interface. The including\ninterface must redeclare all the methods from the included interface, but\ndocumentation and options are inherited as follows:\n\n- If after comment and whitespace stripping, the documentation\n string of the redeclared method is empty, it will be inherited\n from the original method.\n\n- Each annotation belonging to the service config (http,\n visibility) which is not set in the redeclared method will be\n inherited.\n\n- If an http annotation is inherited, the path pattern will be\n modified as follows. Any version prefix will be replaced by the\n version of the including interface plus the root path if\n specified.\n\nExample of a simple mixin:\n\n package google.acl.v1;\n service AccessControl {\n // Get the underlying ACL object.\n rpc GetAcl(GetAclRequest) returns (Acl) {\n option (google.api.http).get = \"/v1/{resource=**}:getAcl\";\n }\n }\n\n package google.storage.v2;\n service Storage {\n // rpc GetAcl(GetAclRequest) returns (Acl);\n\n // Get a data record.\n rpc GetData(GetDataRequest) returns (Data) {\n option (google.api.http).get = \"/v2/{resource=**}\";\n }\n }\n\nExample of a mixin configuration:\n\n apis:\n - name: google.storage.v2.Storage\n mixins:\n - name: google.acl.v1.AccessControl\n\nThe mixin construct implies that all methods in `AccessControl` are\nalso declared with same name and request/response types in\n`Storage`. A documentation generator or annotation processor will\nsee the effective `Storage.GetAcl` method after inherting\ndocumentation and annotations as follows:\n\n service Storage {\n // Get the underlying ACL object.\n rpc GetAcl(GetAclRequest) returns (Acl) {\n option (google.api.http).get = \"/v2/{resource=**}:getAcl\";\n }\n ...\n }\n\nNote how the version in the path pattern changed from `v1` to `v2`.\n\nIf the `root` field in the mixin is specified, it should be a\nrelative path under which inherited HTTP paths are placed. Example:\n\n apis:\n - name: google.storage.v2.Storage\n mixins:\n - name: google.acl.v1.AccessControl\n root: acls\n\nThis implies the following inherited HTTP annotation:\n\n service Storage {\n // Get the underlying ACL object.\n rpc GetAcl(GetAclRequest) returns (Acl) {\n option (google.api.http).get = \"/v2/acls/{resource=**}:getAcl\";\n }\n ...\n }", + "id": "Mixin", + "properties": { + "name": { + "description": "The fully qualified name of the interface which is included.", + "type": "string" + }, + "root": { + "description": "If non-empty specifies a path under which inherited HTTP paths\nare rooted.", + "type": "string" + } + }, + "type": "object" + }, + "MonitoredResourceDescriptor": { + "description": "An object that describes the schema of a MonitoredResource object using a\ntype name and a set of labels. For example, the monitored resource\ndescriptor for Google Compute Engine VM instances has a type of\n`\"gce_instance\"` and specifies the use of the labels `\"instance_id\"` and\n`\"zone\"` to identify particular VM instances.\n\nDifferent APIs can support different monitored resource types. APIs generally\nprovide a `list` method that returns the monitored resource descriptors used\nby the API.", + "id": "MonitoredResourceDescriptor", + "properties": { + "description": { + "description": "Optional. A detailed description of the monitored resource type that might\nbe used in documentation.", + "type": "string" + }, + "displayName": { + "description": "Optional. A concise name for the monitored resource type that might be\ndisplayed in user interfaces. It should be a Title Cased Noun Phrase,\nwithout any article or other determiners. For example,\n`\"Google Cloud SQL Database\"`.", + "type": "string" + }, + "labels": { + "description": "Required. A set of labels used to describe instances of this monitored\nresource type. For example, an individual Google Cloud SQL database is\nidentified by values for the labels `\"database_id\"` and `\"zone\"`.", + "items": { + "$ref": "LabelDescriptor" + }, + "type": "array" + }, + "name": { + "description": "Optional. The resource name of the monitored resource descriptor:\n`\"projects/{project_id}/monitoredResourceDescriptors/{type}\"` where\n{type} is the value of the `type` field in this object and\n{project_id} is a project ID that provides API-specific context for\naccessing the type. APIs that do not use project information can use the\nresource name format `\"monitoredResourceDescriptors/{type}\"`.", + "type": "string" + }, + "type": { + "description": "Required. The monitored resource type. For example, the type\n`\"cloudsql_database\"` represents databases in Google Cloud SQL.\nThe maximum length of this value is 256 characters.", + "type": "string" + } + }, + "type": "object" + }, + "Monitoring": { + "description": "Monitoring configuration of the service.\n\nThe example below shows how to configure monitored resources and metrics\nfor monitoring. In the example, a monitored resource and two metrics are\ndefined. The `library.googleapis.com/book/returned_count` metric is sent\nto both producer and consumer projects, whereas the\n`library.googleapis.com/book/overdue_count` metric is only sent to the\nconsumer project.\n\n monitored_resources:\n - type: library.googleapis.com/branch\n labels:\n - key: /city\n description: The city where the library branch is located in.\n - key: /name\n description: The name of the branch.\n metrics:\n - name: library.googleapis.com/book/returned_count\n metric_kind: DELTA\n value_type: INT64\n labels:\n - key: /customer_id\n - name: library.googleapis.com/book/overdue_count\n metric_kind: GAUGE\n value_type: INT64\n labels:\n - key: /customer_id\n monitoring:\n producer_destinations:\n - monitored_resource: library.googleapis.com/branch\n metrics:\n - library.googleapis.com/book/returned_count\n consumer_destinations:\n - monitored_resource: library.googleapis.com/branch\n metrics:\n - library.googleapis.com/book/returned_count\n - library.googleapis.com/book/overdue_count", + "id": "Monitoring", + "properties": { + "consumerDestinations": { + "description": "Monitoring configurations for sending metrics to the consumer project.\nThere can be multiple consumer destinations, each one must have a\ndifferent monitored resource type. A metric can be used in at most\none consumer destination.", + "items": { + "$ref": "MonitoringDestination" + }, + "type": "array" + }, + "producerDestinations": { + "description": "Monitoring configurations for sending metrics to the producer project.\nThere can be multiple producer destinations, each one must have a\ndifferent monitored resource type. A metric can be used in at most\none producer destination.", + "items": { + "$ref": "MonitoringDestination" + }, + "type": "array" + } + }, + "type": "object" + }, + "MonitoringDestination": { + "description": "Configuration of a specific monitoring destination (the producer project\nor the consumer project).", + "id": "MonitoringDestination", + "properties": { + "metrics": { + "description": "Names of the metrics to report to this monitoring destination.\nEach name must be defined in Service.metrics section.", + "items": { + "type": "string" + }, + "type": "array" + }, + "monitoredResource": { + "description": "The monitored resource type. The type must be defined in\nService.monitored_resources section.", + "type": "string" + } + }, + "type": "object" + }, + "OAuthRequirements": { + "description": "OAuth scopes are a way to define data and permissions on data. For example,\nthere are scopes defined for \"Read-only access to Google Calendar\" and\n\"Access to Cloud Platform\". Users can consent to a scope for an application,\ngiving it permission to access that data on their behalf.\n\nOAuth scope specifications should be fairly coarse grained; a user will need\nto see and understand the text description of what your scope means.\n\nIn most cases: use one or at most two OAuth scopes for an entire family of\nproducts. If your product has multiple APIs, you should probably be sharing\nthe OAuth scope across all of those APIs.\n\nWhen you need finer grained OAuth consent screens: talk with your product\nmanagement about how developers will use them in practice.\n\nPlease note that even though each of the canonical scopes is enough for a\nrequest to be accepted and passed to the backend, a request can still fail\ndue to the backend requiring additional scopes or permissions.", + "id": "OAuthRequirements", + "properties": { + "canonicalScopes": { + "description": "The list of publicly documented OAuth scopes that are allowed access. An\nOAuth token containing any of these scopes will be accepted.\n\nExample:\n\n canonical_scopes: https://www.googleapis.com/auth/calendar,\n https://www.googleapis.com/auth/calendar.read", + "type": "string" + } + }, + "type": "object" + }, + "Operation": { + "description": "This resource represents a long-running operation that is the result of a\nnetwork API call.", + "id": "Operation", + "properties": { + "done": { + "description": "If the value is `false`, it means the operation is still in progress.\nIf `true`, the operation is completed, and either `error` or `response` is\navailable.", + "type": "boolean" + }, + "error": { + "$ref": "Status", + "description": "The error result of the operation in case of failure or cancellation." + }, + "metadata": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "description": "Service-specific metadata associated with the operation. It typically\ncontains progress information and common metadata such as create time.\nSome services might not provide such metadata. Any method that returns a\nlong-running operation should document the metadata type, if any.", + "type": "object" + }, + "name": { + "description": "The server-assigned name, which is only unique within the same service that\noriginally returns it. If you use the default HTTP mapping, the\n`name` should have the format of `operations/some/unique/name`.", + "type": "string" + }, + "response": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "description": "The normal response of the operation in case of success. If the original\nmethod returns no data on success, such as `Delete`, the response is\n`google.protobuf.Empty`. If the original method is standard\n`Get`/`Create`/`Update`, the response should be the resource. For other\nmethods, the response should have the type `XxxResponse`, where `Xxx`\nis the original method name. For example, if the original method name\nis `TakeSnapshot()`, the inferred response type is\n`TakeSnapshotResponse`.", + "type": "object" + } + }, + "type": "object" + }, + "OperationMetadata": { + "description": "The metadata associated with a long running operation resource.", + "id": "OperationMetadata", + "properties": { + "progressPercentage": { + "description": "Percentage of completion of this operation, ranging from 0 to 100.", + "format": "int32", + "type": "integer" + }, + "resourceNames": { + "description": "The full name of the resources that this operation is directly\nassociated with.", + "items": { + "type": "string" + }, + "type": "array" + }, + "startTime": { + "description": "The start time of the operation.", + "format": "google-datetime", + "type": "string" + }, + "steps": { + "description": "Detailed status information for each step. The order is undetermined.", + "items": { + "$ref": "Step" + }, + "type": "array" + } + }, + "type": "object" + }, + "Option": { + "description": "A protocol buffer option, which can be attached to a message, field,\nenumeration, etc.", + "id": "Option", + "properties": { + "name": { + "description": "The option's name. For protobuf built-in options (options defined in\ndescriptor.proto), this is the short name. For example, `\"map_entry\"`.\nFor custom options, it should be the fully-qualified name. For example,\n`\"google.api.http\"`.", + "type": "string" + }, + "value": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "description": "The option's value packed in an Any message. If the value is a primitive,\nthe corresponding wrapper type defined in google/protobuf/wrappers.proto\nshould be used. If the value is an enum, it should be stored as an int32\nvalue using the google.protobuf.Int32Value type.", + "type": "object" + } + }, + "type": "object" + }, + "Page": { + "description": "Represents a documentation page. A page can contain subpages to represent\nnested documentation set structure.", + "id": "Page", + "properties": { + "content": { + "description": "The Markdown content of the page. You can use \u003ccode\u003e\u0026#40;== include {path} ==\u0026#41;\u003c/code\u003e\nto include content from a Markdown file.", + "type": "string" + }, + "name": { + "description": "The name of the page. It will be used as an identity of the page to\ngenerate URI of the page, text of the link to this page in navigation,\netc. The full page name (start from the root page name to this page\nconcatenated with `.`) can be used as reference to the page in your\ndocumentation. For example:\n\u003cpre\u003e\u003ccode\u003epages:\n- name: Tutorial\n content: \u0026#40;== include tutorial.md ==\u0026#41;\n subpages:\n - name: Java\n content: \u0026#40;== include tutorial_java.md ==\u0026#41;\n\u003c/code\u003e\u003c/pre\u003e\nYou can reference `Java` page using Markdown reference link syntax:\n`Java`.", + "type": "string" + }, + "subpages": { + "description": "Subpages of this page. The order of subpages specified here will be\nhonored in the generated docset.", + "items": { + "$ref": "Page" + }, + "type": "array" + } + }, + "type": "object" + }, + "PublishedService": { + "description": "The published version of a Service that is managed by\nGoogle Service Management.", + "id": "PublishedService", + "properties": { + "name": { + "description": "The resource name of the service.\n\nA valid name would be:\n- services/serviceusage.googleapis.com", + "type": "string" + }, + "service": { + "$ref": "GoogleApiService", + "description": "The service's published configuration." + } + }, + "type": "object" + }, + "Quota": { + "description": "Quota configuration helps to achieve fairness and budgeting in service\nusage.\n\nThe quota configuration works this way:\n- The service configuration defines a set of metrics.\n- For API calls, the quota.metric_rules maps methods to metrics with\n corresponding costs.\n- The quota.limits defines limits on the metrics, which will be used for\n quota checks at runtime.\n\nAn example quota configuration in yaml format:\n\n quota:\n\n - name: apiWriteQpsPerProject\n metric: library.googleapis.com/write_calls\n unit: \"1/min/{project}\" # rate limit for consumer projects\n values:\n STANDARD: 10000\n\n\n # The metric rules bind all methods to the read_calls metric,\n # except for the UpdateBook and DeleteBook methods. These two methods\n # are mapped to the write_calls metric, with the UpdateBook method\n # consuming at twice rate as the DeleteBook method.\n metric_rules:\n - selector: \"*\"\n metric_costs:\n library.googleapis.com/read_calls: 1\n - selector: google.example.library.v1.LibraryService.UpdateBook\n metric_costs:\n library.googleapis.com/write_calls: 2\n - selector: google.example.library.v1.LibraryService.DeleteBook\n metric_costs:\n library.googleapis.com/write_calls: 1\n\n Corresponding Metric definition:\n\n metrics:\n - name: library.googleapis.com/read_calls\n display_name: Read requests\n metric_kind: DELTA\n value_type: INT64\n\n - name: library.googleapis.com/write_calls\n display_name: Write requests\n metric_kind: DELTA\n value_type: INT64", + "id": "Quota", + "properties": { + "limits": { + "description": "List of `QuotaLimit` definitions for the service.", + "items": { + "$ref": "QuotaLimit" + }, + "type": "array" + }, + "metricRules": { + "description": "List of `MetricRule` definitions, each one mapping a selected method to one\nor more metrics.", + "items": { + "$ref": "MetricRule" + }, + "type": "array" + } + }, + "type": "object" + }, + "QuotaLimit": { + "description": "`QuotaLimit` defines a specific limit that applies over a specified duration\nfor a limit type. There can be at most one limit for a duration and limit\ntype combination defined within a `QuotaGroup`.", + "id": "QuotaLimit", + "properties": { + "defaultLimit": { + "description": "Default number of tokens that can be consumed during the specified\nduration. This is the number of tokens assigned when a client\napplication developer activates the service for his/her project.\n\nSpecifying a value of 0 will block all requests. This can be used if you\nare provisioning quota to selected consumers and blocking others.\nSimilarly, a value of -1 will indicate an unlimited quota. No other\nnegative values are allowed.\n\nUsed by group-based quotas only.", + "format": "int64", + "type": "string" + }, + "description": { + "description": "Optional. User-visible, extended description for this quota limit.\nShould be used only when more context is needed to understand this limit\nthan provided by the limit's display name (see: `display_name`).", + "type": "string" + }, + "displayName": { + "description": "User-visible display name for this limit.\nOptional. If not set, the UI will provide a default display name based on\nthe quota configuration. This field can be used to override the default\ndisplay name generated from the configuration.", + "type": "string" + }, + "duration": { + "description": "Duration of this limit in textual notation. Example: \"100s\", \"24h\", \"1d\".\nFor duration longer than a day, only multiple of days is supported. We\nsupport only \"100s\" and \"1d\" for now. Additional support will be added in\nthe future. \"0\" indicates indefinite duration.\n\nUsed by group-based quotas only.", + "type": "string" + }, + "freeTier": { + "description": "Free tier value displayed in the Developers Console for this limit.\nThe free tier is the number of tokens that will be subtracted from the\nbilled amount when billing is enabled.\nThis field can only be set on a limit with duration \"1d\", in a billable\ngroup; it is invalid on any other limit. If this field is not set, it\ndefaults to 0, indicating that there is no free tier for this service.\n\nUsed by group-based quotas only.", + "format": "int64", + "type": "string" + }, + "maxLimit": { + "description": "Maximum number of tokens that can be consumed during the specified\nduration. Client application developers can override the default limit up\nto this maximum. If specified, this value cannot be set to a value less\nthan the default limit. If not specified, it is set to the default limit.\n\nTo allow clients to apply overrides with no upper bound, set this to -1,\nindicating unlimited maximum quota.\n\nUsed by group-based quotas only.", + "format": "int64", + "type": "string" + }, + "metric": { + "description": "The name of the metric this quota limit applies to. The quota limits with\nthe same metric will be checked together during runtime. The metric must be\ndefined within the service config.", + "type": "string" + }, + "name": { + "description": "Name of the quota limit.\n\nThe name must be provided, and it must be unique within the service. The\nname can only include alphanumeric characters as well as '-'.\n\nThe maximum length of the limit name is 64 characters.", + "type": "string" + }, + "unit": { + "description": "Specify the unit of the quota limit. It uses the same syntax as\nMetric.unit. The supported unit kinds are determined by the quota\nbackend system.\n\nHere are some examples:\n* \"1/min/{project}\" for quota per minute per project.\n\nNote: the order of unit components is insignificant.\nThe \"1\" at the beginning is required to follow the metric unit syntax.", + "type": "string" + }, + "values": { + "additionalProperties": { + "format": "int64", + "type": "string" + }, + "description": "Tiered limit values. You must specify this as a key:value pair, with an\ninteger value that is the maximum number of requests allowed for the\nspecified unit. Currently only STANDARD is supported.", + "type": "object" + } + }, + "type": "object" + }, + "SearchServicesResponse": { + "description": "Response message for SearchServices.", + "id": "SearchServicesResponse", + "properties": { + "nextPageToken": { + "description": "Token that can be passed to `SearchServices` to resume a paginated query.", + "type": "string" + }, + "services": { + "description": "The state of services available publicly or available to the authenticated\ncaller.", + "items": { + "$ref": "PublishedService" + }, + "type": "array" + } + }, + "type": "object" + }, + "ServiceState": { + "description": "The properties of a consumer with respect to a Service.", + "id": "ServiceState", + "properties": { + "enabled": { + "$ref": "EnabledState", + "description": "Reflects whether or not the service has been explicitly enabled." + }, + "name": { + "description": "The resource name of the consumer and service.\n\nA valid name would be:\n- projects/123/services/serviceusage.googleapis.com", + "type": "string" + }, + "service": { + "$ref": "PublishedService", + "description": "The published version of the consumed service." + } + }, + "type": "object" + }, + "SourceContext": { + "description": "`SourceContext` represents information about the source of a\nprotobuf element, like the file in which it is defined.", + "id": "SourceContext", + "properties": { + "fileName": { + "description": "The path-qualified name of the .proto file that contained the associated\nprotobuf element. For example: `\"google/protobuf/source_context.proto\"`.", + "type": "string" + } + }, + "type": "object" + }, + "SourceInfo": { + "description": "Source information used to create a Service Config", + "id": "SourceInfo", + "properties": { + "sourceFiles": { + "description": "All files used during config generation.", + "items": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "type": "object" + }, + "type": "array" + } + }, + "type": "object" + }, + "Status": { + "description": "The `Status` type defines a logical error model that is suitable for different\nprogramming environments, including REST APIs and RPC APIs. It is used by\n[gRPC](https://github.com/grpc). The error model is designed to be:\n\n- Simple to use and understand for most users\n- Flexible enough to meet unexpected needs\n\n# Overview\n\nThe `Status` message contains three pieces of data: error code, error message,\nand error details. The error code should be an enum value of\ngoogle.rpc.Code, but it may accept additional error codes if needed. The\nerror message should be a developer-facing English message that helps\ndevelopers *understand* and *resolve* the error. If a localized user-facing\nerror message is needed, put the localized message in the error details or\nlocalize it in the client. The optional error details may contain arbitrary\ninformation about the error. There is a predefined set of error detail types\nin the package `google.rpc` that can be used for common error conditions.\n\n# Language mapping\n\nThe `Status` message is the logical representation of the error model, but it\nis not necessarily the actual wire format. When the `Status` message is\nexposed in different client libraries and different wire protocols, it can be\nmapped differently. For example, it will likely be mapped to some exceptions\nin Java, but more likely mapped to some error codes in C.\n\n# Other uses\n\nThe error model and the `Status` message can be used in a variety of\nenvironments, either with or without APIs, to provide a\nconsistent developer experience across different environments.\n\nExample uses of this error model include:\n\n- Partial errors. If a service needs to return partial errors to the client,\n it may embed the `Status` in the normal response to indicate the partial\n errors.\n\n- Workflow errors. A typical workflow has multiple steps. Each step may\n have a `Status` message for error reporting.\n\n- Batch operations. If a client uses batch request and batch response, the\n `Status` message should be used directly inside batch response, one for\n each error sub-response.\n\n- Asynchronous operations. If an API call embeds asynchronous operation\n results in its response, the status of those operations should be\n represented directly using the `Status` message.\n\n- Logging. If some API errors are stored in logs, the message `Status` could\n be used directly after any stripping needed for security/privacy reasons.", + "id": "Status", + "properties": { + "code": { + "description": "The status code, which should be an enum value of google.rpc.Code.", + "format": "int32", + "type": "integer" + }, + "details": { + "description": "A list of messages that carry the error details. There is a common set of\nmessage types for APIs to use.", + "items": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "A developer-facing error message, which should be in English. Any\nuser-facing error message should be localized and sent in the\ngoogle.rpc.Status.details field, or localized by the client.", + "type": "string" + } + }, + "type": "object" + }, + "Step": { + "description": "Represents the status of one operation step.", + "id": "Step", + "properties": { + "description": { + "description": "The short description of the step.", + "type": "string" + }, + "status": { + "description": "The status code.", + "enum": [ + "STATUS_UNSPECIFIED", + "DONE", + "NOT_STARTED", + "IN_PROGRESS", + "FAILED", + "CANCELLED" + ], + "enumDescriptions": [ + "Unspecifed code.", + "The operation or step has completed without errors.", + "The operation or step has not started yet.", + "The operation or step is in progress.", + "The operation or step has completed with errors. If the operation is\nrollbackable, the rollback completed with errors too.", + "The operation or step has completed with cancellation." + ], + "type": "string" + } + }, + "type": "object" + }, + "SystemParameter": { + "description": "Define a parameter's name and location. The parameter may be passed as either\nan HTTP header or a URL query parameter, and if both are passed the behavior\nis implementation-dependent.", + "id": "SystemParameter", + "properties": { + "httpHeader": { + "description": "Define the HTTP header name to use for the parameter. It is case\ninsensitive.", + "type": "string" + }, + "name": { + "description": "Define the name of the parameter, such as \"api_key\" . It is case sensitive.", + "type": "string" + }, + "urlQueryParameter": { + "description": "Define the URL query parameter name to use for the parameter. It is case\nsensitive.", + "type": "string" + } + }, + "type": "object" + }, + "SystemParameterRule": { + "description": "Define a system parameter rule mapping system parameter definitions to\nmethods.", + "id": "SystemParameterRule", + "properties": { + "parameters": { + "description": "Define parameters. Multiple names may be defined for a parameter.\nFor a given method call, only one of them should be used. If multiple\nnames are used the behavior is implementation-dependent.\nIf none of the specified names are present the behavior is\nparameter-dependent.", + "items": { + "$ref": "SystemParameter" + }, + "type": "array" + }, + "selector": { + "description": "Selects the methods to which this rule applies. Use '*' to indicate all\nmethods in all APIs.\n\nRefer to selector for syntax details.", + "type": "string" + } + }, + "type": "object" + }, + "SystemParameters": { + "description": "### System parameter configuration\n\nA system parameter is a special kind of parameter defined by the API\nsystem, not by an individual API. It is typically mapped to an HTTP header\nand/or a URL query parameter. This configuration specifies which methods\nchange the names of the system parameters.", + "id": "SystemParameters", + "properties": { + "rules": { + "description": "Define system parameters.\n\nThe parameters defined here will override the default parameters\nimplemented by the system. If this field is missing from the service\nconfig, default system parameters will be used. Default system parameters\nand names is implementation-dependent.\n\nExample: define api key for all methods\n\n system_parameters\n rules:\n - selector: \"*\"\n parameters:\n - name: api_key\n url_query_parameter: api_key\n\n\nExample: define 2 api key names for a specific method.\n\n system_parameters\n rules:\n - selector: \"/ListShelves\"\n parameters:\n - name: api_key\n http_header: Api-Key1\n - name: api_key\n http_header: Api-Key2\n\n**NOTE:** All service configuration rules follow \"last one wins\" order.", + "items": { + "$ref": "SystemParameterRule" + }, + "type": "array" + } + }, + "type": "object" + }, + "Type": { + "description": "A protocol buffer message type.", + "id": "Type", + "properties": { + "fields": { + "description": "The list of fields.", + "items": { + "$ref": "Field" + }, + "type": "array" + }, + "name": { + "description": "The fully qualified message name.", + "type": "string" + }, + "oneofs": { + "description": "The list of types appearing in `oneof` definitions in this type.", + "items": { + "type": "string" + }, + "type": "array" + }, + "options": { + "description": "The protocol buffer options.", + "items": { + "$ref": "Option" + }, + "type": "array" + }, + "sourceContext": { + "$ref": "SourceContext", + "description": "The source context." + }, + "syntax": { + "description": "The source syntax.", + "enum": [ + "SYNTAX_PROTO2", + "SYNTAX_PROTO3" + ], + "enumDescriptions": [ + "Syntax `proto2`.", + "Syntax `proto3`." + ], + "type": "string" + } + }, + "type": "object" + }, + "Usage": { + "description": "Configuration controlling usage of a service.", + "id": "Usage", + "properties": { + "producerNotificationChannel": { + "description": "The full resource name of a channel used for sending notifications to the\nservice producer.\n\nGoogle Service Management currently only supports\n[Google Cloud Pub/Sub](https://cloud.google.com/pubsub) as a notification\nchannel. To use Google Cloud Pub/Sub as the channel, this must be the name\nof a Cloud Pub/Sub topic that uses the Cloud Pub/Sub topic name format\ndocumented in https://cloud.google.com/pubsub/docs/overview.", + "type": "string" + }, + "requirements": { + "description": "Requirements that must be satisfied before a consumer project can use the\nservice. Each requirement is of the form \u003cservice.name\u003e/\u003crequirement-id\u003e;\nfor example 'serviceusage.googleapis.com/billing-enabled'.", + "items": { + "type": "string" + }, + "type": "array" + }, + "rules": { + "description": "A list of usage rules that apply to individual API methods.\n\n**NOTE:** All service configuration rules follow \"last one wins\" order.", + "items": { + "$ref": "UsageRule" + }, + "type": "array" + } + }, + "type": "object" + }, + "UsageRule": { + "description": "Usage configuration rules for the service.\n\nNOTE: Under development.\n\n\nUse this rule to configure unregistered calls for the service. Unregistered\ncalls are calls that do not contain consumer project identity.\n(Example: calls that do not contain an API key).\nBy default, API methods do not allow unregistered calls, and each method call\nmust be identified by a consumer project identity. Use this rule to\nallow/disallow unregistered calls.\n\nExample of an API that wants to allow unregistered calls for entire service.\n\n usage:\n rules:\n - selector: \"*\"\n allow_unregistered_calls: true\n\nExample of a method that wants to allow unregistered calls.\n\n usage:\n rules:\n - selector: \"google.example.library.v1.LibraryService.CreateBook\"\n allow_unregistered_calls: true", + "id": "UsageRule", + "properties": { + "allowUnregisteredCalls": { + "description": "If true, the selected method allows unregistered calls, e.g. calls\nthat don't identify any user or application.", + "type": "boolean" + }, + "selector": { + "description": "Selects the methods to which this rule applies. Use '*' to indicate all\nmethods in all APIs.\n\nRefer to selector for syntax details.", + "type": "string" + }, + "skipServiceControl": { + "description": "If true, the selected method should skip service control and the control\nplane features, such as quota and billing, will not be available.\nThis flag is used by Google Cloud Endpoints to bypass checks for internal\nmethods, such as service health check methods.", + "type": "boolean" + } + }, + "type": "object" + }, + "Visibility": { + "description": "`Visibility` defines restrictions for the visibility of service\nelements. Restrictions are specified using visibility labels\n(e.g., TRUSTED_TESTER) that are elsewhere linked to users and projects.\n\nUsers and projects can have access to more than one visibility label. The\neffective visibility for multiple labels is the union of each label's\nelements, plus any unrestricted elements.\n\nIf an element and its parents have no restrictions, visibility is\nunconditionally granted.\n\nExample:\n\n visibility:\n rules:\n - selector: google.calendar.Calendar.EnhancedSearch\n restriction: TRUSTED_TESTER\n - selector: google.calendar.Calendar.Delegate\n restriction: GOOGLE_INTERNAL\n\nHere, all methods are publicly visible except for the restricted methods\nEnhancedSearch and Delegate.", + "id": "Visibility", + "properties": { + "rules": { + "description": "A list of visibility rules that apply to individual API elements.\n\n**NOTE:** All service configuration rules follow \"last one wins\" order.", + "items": { + "$ref": "VisibilityRule" + }, + "type": "array" + } + }, + "type": "object" + }, + "VisibilityRule": { + "description": "A visibility rule provides visibility configuration for an individual API\nelement.", + "id": "VisibilityRule", + "properties": { + "restriction": { + "description": "A comma-separated list of visibility labels that apply to the `selector`.\nAny of the listed labels can be used to grant the visibility.\n\nIf a rule has multiple labels, removing one of the labels but not all of\nthem can break clients.\n\nExample:\n\n visibility:\n rules:\n - selector: google.calendar.Calendar.EnhancedSearch\n restriction: GOOGLE_INTERNAL, TRUSTED_TESTER\n\nRemoving GOOGLE_INTERNAL from this restriction will break clients that\nrely on this method and only had access to it through GOOGLE_INTERNAL.", + "type": "string" + }, + "selector": { + "description": "Selects methods, messages, fields, enums, etc. to which this rule applies.\n\nRefer to selector for syntax details.", + "type": "string" + } + }, + "type": "object" + } + }, + "servicePath": "", + "title": "Service Usage API", + "version": "v1", + "version_module": true +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/serviceusage/v1/serviceusage-gen.go b/vendor/google.golang.org/api/serviceusage/v1/serviceusage-gen.go new file mode 100644 index 000000000..324626270 --- /dev/null +++ b/vendor/google.golang.org/api/serviceusage/v1/serviceusage-gen.go @@ -0,0 +1,5981 @@ +// Package serviceusage provides access to the Service Usage API. +// +// See https://cloud.google.com/service-usage/ +// +// Usage example: +// +// import "google.golang.org/api/serviceusage/v1" +// ... +// serviceusageService, err := serviceusage.New(oauthHttpClient) +package serviceusage // import "google.golang.org/api/serviceusage/v1" + +import ( + "bytes" + "encoding/json" + "errors" + "fmt" + context "golang.org/x/net/context" + ctxhttp "golang.org/x/net/context/ctxhttp" + gensupport "google.golang.org/api/gensupport" + googleapi "google.golang.org/api/googleapi" + "io" + "net/http" + "net/url" + "strconv" + "strings" +) + +// Always reference these packages, just in case the auto-generated code +// below doesn't. +var _ = bytes.NewBuffer +var _ = strconv.Itoa +var _ = fmt.Sprintf +var _ = json.NewDecoder +var _ = io.Copy +var _ = url.Parse +var _ = gensupport.MarshalJSON +var _ = googleapi.Version +var _ = errors.New +var _ = strings.Replace +var _ = context.Canceled +var _ = ctxhttp.Do + +const apiId = "serviceusage:v1" +const apiName = "serviceusage" +const apiVersion = "v1" +const basePath = "https://serviceusage.googleapis.com/" + +// OAuth2 scopes used by this API. +const ( + // View and manage your data across Google Cloud Platform services + CloudPlatformScope = "https://www.googleapis.com/auth/cloud-platform" + + // View your data across Google Cloud Platform services + CloudPlatformReadOnlyScope = "https://www.googleapis.com/auth/cloud-platform.read-only" + + // Manage your Google API service configuration + ServiceManagementScope = "https://www.googleapis.com/auth/service.management" +) + +func New(client *http.Client) (*Service, error) { + if client == nil { + return nil, errors.New("client is nil") + } + s := &Service{client: client, BasePath: basePath} + s.Operations = NewOperationsService(s) + s.Services = NewServicesService(s) + return s, nil +} + +type Service struct { + client *http.Client + BasePath string // API endpoint base URL + UserAgent string // optional additional User-Agent fragment + + Operations *OperationsService + + Services *ServicesService +} + +func (s *Service) userAgent() string { + if s.UserAgent == "" { + return googleapi.UserAgent + } + return googleapi.UserAgent + " " + s.UserAgent +} + +func NewOperationsService(s *Service) *OperationsService { + rs := &OperationsService{s: s} + return rs +} + +type OperationsService struct { + s *Service +} + +func NewServicesService(s *Service) *ServicesService { + rs := &ServicesService{s: s} + return rs +} + +type ServicesService struct { + s *Service +} + +// Api: Api is a light-weight descriptor for an API +// Interface. +// +// Interfaces are also described as "protocol buffer services" in some +// contexts, +// such as by the "service" keyword in a .proto file, but they are +// different +// from API Services, which represent a concrete implementation of an +// interface +// as opposed to simply a description of methods and bindings. They are +// also +// sometimes simply referred to as "APIs" in other contexts, such as the +// name of +// this message itself. See +// https://cloud.google.com/apis/design/glossary for +// detailed terminology. +type Api struct { + // Methods: The methods of this interface, in unspecified order. + Methods []*Method `json:"methods,omitempty"` + + // Mixins: Included interfaces. See Mixin. + Mixins []*Mixin `json:"mixins,omitempty"` + + // Name: The fully qualified name of this interface, including package + // name + // followed by the interface's simple name. + Name string `json:"name,omitempty"` + + // Options: Any metadata attached to the interface. + Options []*Option `json:"options,omitempty"` + + // SourceContext: Source context for the protocol buffer service + // represented by this + // message. + SourceContext *SourceContext `json:"sourceContext,omitempty"` + + // Syntax: The source syntax of the service. + // + // Possible values: + // "SYNTAX_PROTO2" - Syntax `proto2`. + // "SYNTAX_PROTO3" - Syntax `proto3`. + Syntax string `json:"syntax,omitempty"` + + // Version: A version string for this interface. If specified, must have + // the form + // `major-version.minor-version`, as in `1.10`. If the minor version + // is + // omitted, it defaults to zero. If the entire version field is empty, + // the + // major version is derived from the package name, as outlined below. If + // the + // field is not empty, the version in the package name will be verified + // to be + // consistent with what is provided here. + // + // The versioning schema uses [semantic + // versioning](http://semver.org) where the major version + // number + // indicates a breaking change and the minor version an + // additive, + // non-breaking change. Both version numbers are signals to users + // what to expect from different versions, and should be + // carefully + // chosen based on the product plan. + // + // The major version is also reflected in the package name of + // the + // interface, which must end in `v`, as + // in + // `google.feature.v1`. For major versions 0 and 1, the suffix can + // be omitted. Zero major versions must only be used for + // experimental, non-GA interfaces. + // + Version string `json:"version,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Methods") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Methods") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *Api) MarshalJSON() ([]byte, error) { + type NoMethod Api + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// AuthProvider: Configuration for an anthentication provider, including +// support for +// [JSON Web Token +// (JWT)](https://tools.ietf.org/html/draft-ietf-oauth-json-web-token-32) +// . +type AuthProvider struct { + // Audiences: The list of + // JWT + // [audiences](https://tools.ietf.org/html/draft-ietf-oauth-json-web- + // token-32#section-4.1.3). + // that are allowed to access. A JWT containing any of these audiences + // will + // be accepted. When this setting is absent, only JWTs with + // audience + // "https://Service_name/API_name" + // will be accepted. For example, if no audiences are in the + // setting, + // LibraryService API will only accept JWTs with the following + // audience + // "https://library-example.googleapis.com/google.example.librar + // y.v1.LibraryService". + // + // Example: + // + // audiences: bookstore_android.apps.googleusercontent.com, + // bookstore_web.apps.googleusercontent.com + Audiences string `json:"audiences,omitempty"` + + // AuthorizationUrl: Redirect URL if JWT token is required but no + // present or is expired. + // Implement authorizationUrl of securityDefinitions in OpenAPI spec. + AuthorizationUrl string `json:"authorizationUrl,omitempty"` + + // Id: The unique identifier of the auth provider. It will be referred + // to by + // `AuthRequirement.provider_id`. + // + // Example: "bookstore_auth". + Id string `json:"id,omitempty"` + + // Issuer: Identifies the principal that issued the JWT. + // See + // https://tools.ietf.org/html/draft-ietf-oauth-json-web-token-32#sec + // tion-4.1.1 + // Usually a URL or an email address. + // + // Example: https://securetoken.google.com + // Example: 1234567-compute@developer.gserviceaccount.com + Issuer string `json:"issuer,omitempty"` + + // JwksUri: URL of the provider's public key set to validate signature + // of the JWT. See + // [OpenID + // Discovery](https://openid.net/specs/openid-connect-discovery-1_0.html# + // ProviderMetadata). + // Optional if the key set document: + // - can be retrieved from + // [OpenID + // Discovery](https://openid.net/specs/openid-connect-discovery-1_0.html + // + // of the issuer. + // - can be inferred from the email domain of the issuer (e.g. a Google + // service account). + // + // Example: https://www.googleapis.com/oauth2/v1/certs + JwksUri string `json:"jwksUri,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Audiences") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Audiences") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *AuthProvider) MarshalJSON() ([]byte, error) { + type NoMethod AuthProvider + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// AuthRequirement: User-defined authentication requirements, including +// support for +// [JSON Web Token +// (JWT)](https://tools.ietf.org/html/draft-ietf-oauth-json-web-token-32) +// . +type AuthRequirement struct { + // Audiences: NOTE: This will be deprecated soon, once + // AuthProvider.audiences is + // implemented and accepted in all the runtime components. + // + // The list of + // JWT + // [audiences](https://tools.ietf.org/html/draft-ietf-oauth-json-web- + // token-32#section-4.1.3). + // that are allowed to access. A JWT containing any of these audiences + // will + // be accepted. When this setting is absent, only JWTs with + // audience + // "https://Service_name/API_name" + // will be accepted. For example, if no audiences are in the + // setting, + // LibraryService API will only accept JWTs with the following + // audience + // "https://library-example.googleapis.com/google.example.librar + // y.v1.LibraryService". + // + // Example: + // + // audiences: bookstore_android.apps.googleusercontent.com, + // bookstore_web.apps.googleusercontent.com + Audiences string `json:"audiences,omitempty"` + + // ProviderId: id from authentication provider. + // + // Example: + // + // provider_id: bookstore_auth + ProviderId string `json:"providerId,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Audiences") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Audiences") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *AuthRequirement) MarshalJSON() ([]byte, error) { + type NoMethod AuthRequirement + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// Authentication: `Authentication` defines the authentication +// configuration for an API. +// +// Example for an API targeted for external use: +// +// name: calendar.googleapis.com +// authentication: +// providers: +// - id: google_calendar_auth +// jwks_uri: https://www.googleapis.com/oauth2/v1/certs +// issuer: https://securetoken.google.com +// rules: +// - selector: "*" +// requirements: +// provider_id: google_calendar_auth +type Authentication struct { + // Providers: Defines a set of authentication providers that a service + // supports. + Providers []*AuthProvider `json:"providers,omitempty"` + + // Rules: A list of authentication rules that apply to individual API + // methods. + // + // **NOTE:** All service configuration rules follow "last one wins" + // order. + Rules []*AuthenticationRule `json:"rules,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Providers") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Providers") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *Authentication) MarshalJSON() ([]byte, error) { + type NoMethod Authentication + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// AuthenticationRule: Authentication rules for the service. +// +// By default, if a method has any authentication requirements, every +// request +// must include a valid credential matching one of the +// requirements. +// It's an error to include more than one kind of credential in a +// single +// request. +// +// If a method doesn't have any auth requirements, request credentials +// will be +// ignored. +type AuthenticationRule struct { + // AllowWithoutCredential: Whether to allow requests without a + // credential. The credential can be + // an OAuth token, Google cookies (first-party auth) or + // EndUserCreds. + // + // For requests without credentials, if the service control environment + // is + // specified, each incoming request **must** be associated with a + // service + // consumer. This can be done by passing an API key that belongs to a + // consumer + // project. + AllowWithoutCredential bool `json:"allowWithoutCredential,omitempty"` + + // CustomAuth: Configuration for custom authentication. + CustomAuth *CustomAuthRequirements `json:"customAuth,omitempty"` + + // Oauth: The requirements for OAuth credentials. + Oauth *OAuthRequirements `json:"oauth,omitempty"` + + // Requirements: Requirements for additional authentication providers. + Requirements []*AuthRequirement `json:"requirements,omitempty"` + + // Selector: Selects the methods to which this rule applies. + // + // Refer to selector for syntax details. + Selector string `json:"selector,omitempty"` + + // ForceSendFields is a list of field names (e.g. + // "AllowWithoutCredential") to unconditionally include in API requests. + // By default, fields with empty values are omitted from API requests. + // However, any non-pointer, non-interface field appearing in + // ForceSendFields will be sent to the server regardless of whether the + // field is empty or not. This may be used to include empty fields in + // Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "AllowWithoutCredential") + // to include in API requests with the JSON null value. By default, + // fields with empty values are omitted from API requests. However, any + // field with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *AuthenticationRule) MarshalJSON() ([]byte, error) { + type NoMethod AuthenticationRule + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// AuthorizationConfig: Configuration of authorization. +// +// This section determines the authorization provider, if unspecified, +// then no +// authorization check will be done. +// +// Example: +// +// experimental: +// authorization: +// provider: firebaserules.googleapis.com +type AuthorizationConfig struct { + // Provider: The name of the authorization provider, such + // as + // firebaserules.googleapis.com. + Provider string `json:"provider,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Provider") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Provider") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *AuthorizationConfig) MarshalJSON() ([]byte, error) { + type NoMethod AuthorizationConfig + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// AuthorizationRule: Authorization rule for API services. +// +// It specifies the permission(s) required for an API element for the +// overall +// API request to succeed. It is typically used to mark request message +// fields +// that contain the name of the resource and indicates the permissions +// that +// will be checked on that resource. +// +// For example: +// +// package google.storage.v1; +// +// message CopyObjectRequest { +// string source = 1 [ +// (google.api.authz).permissions = "storage.objects.get"]; +// +// string destination = 2 [ +// (google.api.authz).permissions = +// "storage.objects.create,storage.objects.update"]; +// } +type AuthorizationRule struct { + // Permissions: The required permissions. The acceptable values vary + // depend on the + // authorization system used. For Google APIs, it should be a + // comma-separated + // Google IAM permission values. When multiple permissions are listed, + // the + // semantics is not defined by the system. Additional documentation + // must + // be provided manually. + Permissions string `json:"permissions,omitempty"` + + // Selector: Selects the API elements to which this rule applies. + // + // Refer to selector for syntax details. + Selector string `json:"selector,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Permissions") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Permissions") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *AuthorizationRule) MarshalJSON() ([]byte, error) { + type NoMethod AuthorizationRule + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// Backend: `Backend` defines the backend configuration for a service. +type Backend struct { + // Rules: A list of API backend rules that apply to individual API + // methods. + // + // **NOTE:** All service configuration rules follow "last one wins" + // order. + Rules []*BackendRule `json:"rules,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Rules") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Rules") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *Backend) MarshalJSON() ([]byte, error) { + type NoMethod Backend + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// BackendRule: A backend rule provides configuration for an individual +// API element. +type BackendRule struct { + // Address: The address of the API backend. + Address string `json:"address,omitempty"` + + // Deadline: The number of seconds to wait for a response from a + // request. The default + // deadline for gRPC is infinite (no deadline) and HTTP requests is 5 + // seconds. + Deadline float64 `json:"deadline,omitempty"` + + // MinDeadline: Minimum deadline in seconds needed for this method. + // Calls having deadline + // value lower than this will be rejected. + MinDeadline float64 `json:"minDeadline,omitempty"` + + // Selector: Selects the methods to which this rule applies. + // + // Refer to selector for syntax details. + Selector string `json:"selector,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Address") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Address") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *BackendRule) MarshalJSON() ([]byte, error) { + type NoMethod BackendRule + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +func (s *BackendRule) UnmarshalJSON(data []byte) error { + type NoMethod BackendRule + var s1 struct { + Deadline gensupport.JSONFloat64 `json:"deadline"` + MinDeadline gensupport.JSONFloat64 `json:"minDeadline"` + *NoMethod + } + s1.NoMethod = (*NoMethod)(s) + if err := json.Unmarshal(data, &s1); err != nil { + return err + } + s.Deadline = float64(s1.Deadline) + s.MinDeadline = float64(s1.MinDeadline) + return nil +} + +// Billing: Billing related configuration of the service. +// +// The following example shows how to configure monitored resources and +// metrics +// for billing: +// +// monitored_resources: +// - type: library.googleapis.com/branch +// labels: +// - key: /city +// description: The city where the library branch is located +// in. +// - key: /name +// description: The name of the branch. +// metrics: +// - name: library.googleapis.com/book/borrowed_count +// metric_kind: DELTA +// value_type: INT64 +// billing: +// consumer_destinations: +// - monitored_resource: library.googleapis.com/branch +// metrics: +// - library.googleapis.com/book/borrowed_count +type Billing struct { + // ConsumerDestinations: Billing configurations for sending metrics to + // the consumer project. + // There can be multiple consumer destinations per service, each one + // must have + // a different monitored resource type. A metric can be used in at + // most + // one consumer destination. + ConsumerDestinations []*BillingDestination `json:"consumerDestinations,omitempty"` + + // ForceSendFields is a list of field names (e.g. + // "ConsumerDestinations") to unconditionally include in API requests. + // By default, fields with empty values are omitted from API requests. + // However, any non-pointer, non-interface field appearing in + // ForceSendFields will be sent to the server regardless of whether the + // field is empty or not. This may be used to include empty fields in + // Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "ConsumerDestinations") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *Billing) MarshalJSON() ([]byte, error) { + type NoMethod Billing + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// BillingDestination: Configuration of a specific billing destination +// (Currently only support +// bill against consumer project). +type BillingDestination struct { + // Metrics: Names of the metrics to report to this billing + // destination. + // Each name must be defined in Service.metrics section. + Metrics []string `json:"metrics,omitempty"` + + // MonitoredResource: The monitored resource type. The type must be + // defined in + // Service.monitored_resources section. + MonitoredResource string `json:"monitoredResource,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Metrics") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Metrics") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *BillingDestination) MarshalJSON() ([]byte, error) { + type NoMethod BillingDestination + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// CancelOperationRequest: The request message for +// Operations.CancelOperation. +type CancelOperationRequest struct { +} + +// Context: `Context` defines which contexts an API +// requests. +// +// Example: +// +// context: +// rules: +// - selector: "*" +// requested: +// - google.rpc.context.ProjectContext +// - google.rpc.context.OriginContext +// +// The above specifies that all methods in the API +// request +// `google.rpc.context.ProjectContext` +// and +// `google.rpc.context.OriginContext`. +// +// Available context types are defined in +// package +// `google.rpc.context`. +// +// This also provides mechanism to whitelist any protobuf message +// extension that +// can be sent in grpc metadata using +// “x-goog-ext--bin” +// and +// “x-goog-ext--jspb” format. For example, list any +// service +// specific protobuf types that can appear in grpc metadata as follows +// in your +// yaml file: +// +// Example: +// +// context: +// rules: +// - selector: +// "google.example.library.v1.LibraryService.CreateBook" +// allowed_request_extensions: +// - google.foo.v1.NewExtension +// allowed_response_extensions: +// - google.foo.v1.NewExtension +// +// You can also specify extension ID instead of fully qualified +// extension name +// here. +type Context struct { + // Rules: A list of RPC context rules that apply to individual API + // methods. + // + // **NOTE:** All service configuration rules follow "last one wins" + // order. + Rules []*ContextRule `json:"rules,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Rules") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Rules") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *Context) MarshalJSON() ([]byte, error) { + type NoMethod Context + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// ContextRule: A context rule provides information about the context +// for an individual API +// element. +type ContextRule struct { + // AllowedRequestExtensions: A list of full type names or extension IDs + // of extensions allowed in grpc + // side channel from client to backend. + AllowedRequestExtensions []string `json:"allowedRequestExtensions,omitempty"` + + // AllowedResponseExtensions: A list of full type names or extension IDs + // of extensions allowed in grpc + // side channel from backend to client. + AllowedResponseExtensions []string `json:"allowedResponseExtensions,omitempty"` + + // Provided: A list of full type names of provided contexts. + Provided []string `json:"provided,omitempty"` + + // Requested: A list of full type names of requested contexts. + Requested []string `json:"requested,omitempty"` + + // Selector: Selects the methods to which this rule applies. + // + // Refer to selector for syntax details. + Selector string `json:"selector,omitempty"` + + // ForceSendFields is a list of field names (e.g. + // "AllowedRequestExtensions") to unconditionally include in API + // requests. By default, fields with empty values are omitted from API + // requests. However, any non-pointer, non-interface field appearing in + // ForceSendFields will be sent to the server regardless of whether the + // field is empty or not. This may be used to include empty fields in + // Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "AllowedRequestExtensions") + // to include in API requests with the JSON null value. By default, + // fields with empty values are omitted from API requests. However, any + // field with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *ContextRule) MarshalJSON() ([]byte, error) { + type NoMethod ContextRule + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// Control: Selects and configures the service controller used by the +// service. The +// service controller handles features like abuse, quota, billing, +// logging, +// monitoring, etc. +type Control struct { + // Environment: The service control environment to use. If empty, no + // control plane + // feature (like quota and billing) will be enabled. + Environment string `json:"environment,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Environment") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Environment") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *Control) MarshalJSON() ([]byte, error) { + type NoMethod Control + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// CustomAuthRequirements: Configuration for a custom authentication +// provider. +type CustomAuthRequirements struct { + // Provider: A configuration string containing connection information + // for the + // authentication provider, typically formatted as a SmartService + // string + // (go/smartservice). + Provider string `json:"provider,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Provider") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Provider") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *CustomAuthRequirements) MarshalJSON() ([]byte, error) { + type NoMethod CustomAuthRequirements + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// CustomError: Customize service error responses. For example, list +// any service +// specific protobuf types that can appear in error detail lists +// of +// error responses. +// +// Example: +// +// custom_error: +// types: +// - google.foo.v1.CustomError +// - google.foo.v1.AnotherError +type CustomError struct { + // Rules: The list of custom error rules that apply to individual API + // messages. + // + // **NOTE:** All service configuration rules follow "last one wins" + // order. + Rules []*CustomErrorRule `json:"rules,omitempty"` + + // Types: The list of custom error detail types, e.g. + // 'google.foo.v1.CustomError'. + Types []string `json:"types,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Rules") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Rules") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *CustomError) MarshalJSON() ([]byte, error) { + type NoMethod CustomError + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// CustomErrorRule: A custom error rule. +type CustomErrorRule struct { + // IsErrorType: Mark this message as possible payload in error response. + // Otherwise, + // objects of this type will be filtered when they appear in error + // payload. + IsErrorType bool `json:"isErrorType,omitempty"` + + // Selector: Selects messages to which this rule applies. + // + // Refer to selector for syntax details. + Selector string `json:"selector,omitempty"` + + // ForceSendFields is a list of field names (e.g. "IsErrorType") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "IsErrorType") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *CustomErrorRule) MarshalJSON() ([]byte, error) { + type NoMethod CustomErrorRule + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// CustomHttpPattern: A custom pattern is used for defining custom HTTP +// verb. +type CustomHttpPattern struct { + // Kind: The name of this custom HTTP verb. + Kind string `json:"kind,omitempty"` + + // Path: The path matched by this custom verb. + Path string `json:"path,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Kind") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Kind") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *CustomHttpPattern) MarshalJSON() ([]byte, error) { + type NoMethod CustomHttpPattern + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// DisableServiceRequest: Request message for DisableService. +type DisableServiceRequest struct { +} + +// Documentation: `Documentation` provides the information for +// describing a service. +// +// Example: +//
documentation:
+//   summary: >
+//     The Google Calendar API gives access
+//     to most calendar features.
+//   pages:
+//   - name: Overview
+//     content: (== include google/foo/overview.md ==)
+//   - name: Tutorial
+//     content: (== include google/foo/tutorial.md ==)
+//     subpages;
+//     - name: Java
+//       content: (== include google/foo/tutorial_java.md ==)
+//   rules:
+//   - selector: google.calendar.Calendar.Get
+//     description: >
+//       ...
+//   - selector: google.calendar.Calendar.Put
+//     description: >
+//       ...
+// 
+// Documentation is provided in markdown syntax. In addition to +// standard markdown features, definition lists, tables and fenced +// code blocks are supported. Section headers can be provided and +// are +// interpreted relative to the section nesting of the context where +// a documentation fragment is embedded. +// +// Documentation from the IDL is merged with documentation defined +// via the config at normalization time, where documentation provided +// by config rules overrides IDL provided. +// +// A number of constructs specific to the API platform are supported +// in documentation text. +// +// In order to reference a proto element, the following +// notation can be +// used: +//
[fully.qualified.proto.name][]
+// T +// o override the display text used for the link, this can be +// used: +//
[display
+// text][fully.qualified.proto.name]
+// Text can be excluded from doc using the following +// notation: +//
(-- internal comment --)
+// Comments can be made conditional using a visibility label. The +// below +// text will be only rendered if the `BETA` label is +// available: +//
(--BETA: comment for BETA users --)
+// A few directives are available in documentation. Note that +// directives must appear on a single line to be properly +// identified. The `include` directive includes a markdown file from +// an external source: +//
(== include path/to/file ==)
+// The `resource_for` directive marks a message to be the resource of +// a collection in REST view. If it is not specified, tools attempt +// to infer the resource from the operations in a +// collection: +//
(== resource_for v1.shelves.books
+// ==)
+// The directive `suppress_warning` does not directly affect +// documentation +// and is documented together with service config validation. +type Documentation struct { + // DocumentationRootUrl: The URL to the root of documentation. + DocumentationRootUrl string `json:"documentationRootUrl,omitempty"` + + // Overview: Declares a single overview page. For + // example: + //
documentation:
+	//   summary: ...
+	//   overview: (== include overview.md ==)
+	// 
+ // This is a shortcut for the following declaration (using pages + // style): + //
documentation:
+	//   summary: ...
+	//   pages:
+	//   - name: Overview
+	//     content: (== include overview.md ==)
+	// 
+ // Note: you cannot specify both `overview` field and `pages` field. + Overview string `json:"overview,omitempty"` + + // Pages: The top level pages for the documentation set. + Pages []*Page `json:"pages,omitempty"` + + // Rules: A list of documentation rules that apply to individual API + // elements. + // + // **NOTE:** All service configuration rules follow "last one wins" + // order. + Rules []*DocumentationRule `json:"rules,omitempty"` + + // Summary: A short summary of what the service does. Can only be + // provided by + // plain text. + Summary string `json:"summary,omitempty"` + + // ForceSendFields is a list of field names (e.g. + // "DocumentationRootUrl") to unconditionally include in API requests. + // By default, fields with empty values are omitted from API requests. + // However, any non-pointer, non-interface field appearing in + // ForceSendFields will be sent to the server regardless of whether the + // field is empty or not. This may be used to include empty fields in + // Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "DocumentationRootUrl") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *Documentation) MarshalJSON() ([]byte, error) { + type NoMethod Documentation + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// DocumentationRule: A documentation rule provides information about +// individual API elements. +type DocumentationRule struct { + // DeprecationDescription: Deprecation description of the selected + // element(s). It can be provided if an + // element is marked as `deprecated`. + DeprecationDescription string `json:"deprecationDescription,omitempty"` + + // Description: Description of the selected API(s). + Description string `json:"description,omitempty"` + + // Selector: The selector is a comma-separated list of patterns. Each + // pattern is a + // qualified name of the element which may end in "*", indicating a + // wildcard. + // Wildcards are only allowed at the end and for a whole component of + // the + // qualified name, i.e. "foo.*" is ok, but not "foo.b*" or "foo.*.bar". + // To + // specify a default for all applicable elements, the whole pattern + // "*" + // is used. + Selector string `json:"selector,omitempty"` + + // ForceSendFields is a list of field names (e.g. + // "DeprecationDescription") to unconditionally include in API requests. + // By default, fields with empty values are omitted from API requests. + // However, any non-pointer, non-interface field appearing in + // ForceSendFields will be sent to the server regardless of whether the + // field is empty or not. This may be used to include empty fields in + // Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "DeprecationDescription") + // to include in API requests with the JSON null value. By default, + // fields with empty values are omitted from API requests. However, any + // field with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *DocumentationRule) MarshalJSON() ([]byte, error) { + type NoMethod DocumentationRule + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// Empty: A generic empty message that you can re-use to avoid defining +// duplicated +// empty messages in your APIs. A typical example is to use it as the +// request +// or the response type of an API method. For instance: +// +// service Foo { +// rpc Bar(google.protobuf.Empty) returns +// (google.protobuf.Empty); +// } +// +// The JSON representation for `Empty` is empty JSON object `{}`. +type Empty struct { + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` +} + +// EnableServiceRequest: Request message for EnableService. +type EnableServiceRequest struct { +} + +// EnabledState: The EnabledState reflects whether the service has been +// explicitly enabled or +// not. +type EnabledState struct { + // State: Whether or not the service has been explicitly enabled. + // + // Possible values: + // "ENABLED_UNSPECIFIED" - The default value, which indicates that the + // enabled state of the service + // is unknown or unspecified. + // "DISABLED" - The service has not been made available for use for + // the consumer. + // "ENABLED" - The service was explicitly enabled for use by a + // consumer. + State string `json:"state,omitempty"` + + // ForceSendFields is a list of field names (e.g. "State") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "State") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *EnabledState) MarshalJSON() ([]byte, error) { + type NoMethod EnabledState + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// Endpoint: `Endpoint` describes a network endpoint that serves a set +// of APIs. +// A service may expose any number of endpoints, and all endpoints share +// the +// same service configuration, such as quota configuration and +// monitoring +// configuration. +// +// Example service configuration: +// +// name: library-example.googleapis.com +// endpoints: +// # Below entry makes 'google.example.library.v1.Library' +// # API be served from endpoint address +// library-example.googleapis.com. +// # It also allows HTTP OPTIONS calls to be passed to the +// backend, for +// # it to decide whether the subsequent cross-origin request is +// # allowed to proceed. +// - name: library-example.googleapis.com +// allow_cors: true +type Endpoint struct { + // Aliases: DEPRECATED: This field is no longer supported. Instead of + // using aliases, + // please specify multiple google.api.Endpoint for each of the + // intended + // aliases. + // + // Additional names that this endpoint will be hosted on. + Aliases []string `json:"aliases,omitempty"` + + // AllowCors: + // Allowing + // [CORS](https://en.wikipedia.org/wiki/Cross-origin_resource_sh + // aring), aka + // cross-domain traffic, would allow the backends served from this + // endpoint to + // receive and respond to HTTP OPTIONS requests. The response will be + // used by + // the browser to determine whether the subsequent cross-origin request + // is + // allowed to proceed. + AllowCors bool `json:"allowCors,omitempty"` + + // Features: The list of features enabled on this endpoint. + Features []string `json:"features,omitempty"` + + // Name: The canonical name of this endpoint. + Name string `json:"name,omitempty"` + + // Target: The specification of an Internet routable address of API + // frontend that will + // handle requests to this [API + // Endpoint](https://cloud.google.com/apis/design/glossary). + // It should be either a valid IPv4 address or a fully-qualified domain + // name. + // For example, "8.8.8.8" or "myservice.appspot.com". + Target string `json:"target,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Aliases") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Aliases") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *Endpoint) MarshalJSON() ([]byte, error) { + type NoMethod Endpoint + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// Enum: Enum type definition. +type Enum struct { + // Enumvalue: Enum value definitions. + Enumvalue []*EnumValue `json:"enumvalue,omitempty"` + + // Name: Enum type name. + Name string `json:"name,omitempty"` + + // Options: Protocol buffer options. + Options []*Option `json:"options,omitempty"` + + // SourceContext: The source context. + SourceContext *SourceContext `json:"sourceContext,omitempty"` + + // Syntax: The source syntax. + // + // Possible values: + // "SYNTAX_PROTO2" - Syntax `proto2`. + // "SYNTAX_PROTO3" - Syntax `proto3`. + Syntax string `json:"syntax,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Enumvalue") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Enumvalue") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *Enum) MarshalJSON() ([]byte, error) { + type NoMethod Enum + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// EnumValue: Enum value definition. +type EnumValue struct { + // Name: Enum value name. + Name string `json:"name,omitempty"` + + // Number: Enum value number. + Number int64 `json:"number,omitempty"` + + // Options: Protocol buffer options. + Options []*Option `json:"options,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Name") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Name") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *EnumValue) MarshalJSON() ([]byte, error) { + type NoMethod EnumValue + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// Experimental: Experimental service configuration. These configuration +// options can +// only be used by whitelisted users. +type Experimental struct { + // Authorization: Authorization configuration. + Authorization *AuthorizationConfig `json:"authorization,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Authorization") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Authorization") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *Experimental) MarshalJSON() ([]byte, error) { + type NoMethod Experimental + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// Field: A single field of a message type. +type Field struct { + // Cardinality: The field cardinality. + // + // Possible values: + // "CARDINALITY_UNKNOWN" - For fields with unknown cardinality. + // "CARDINALITY_OPTIONAL" - For optional fields. + // "CARDINALITY_REQUIRED" - For required fields. Proto2 syntax only. + // "CARDINALITY_REPEATED" - For repeated fields. + Cardinality string `json:"cardinality,omitempty"` + + // DefaultValue: The string value of the default value of this field. + // Proto2 syntax only. + DefaultValue string `json:"defaultValue,omitempty"` + + // JsonName: The field JSON name. + JsonName string `json:"jsonName,omitempty"` + + // Kind: The field type. + // + // Possible values: + // "TYPE_UNKNOWN" - Field type unknown. + // "TYPE_DOUBLE" - Field type double. + // "TYPE_FLOAT" - Field type float. + // "TYPE_INT64" - Field type int64. + // "TYPE_UINT64" - Field type uint64. + // "TYPE_INT32" - Field type int32. + // "TYPE_FIXED64" - Field type fixed64. + // "TYPE_FIXED32" - Field type fixed32. + // "TYPE_BOOL" - Field type bool. + // "TYPE_STRING" - Field type string. + // "TYPE_GROUP" - Field type group. Proto2 syntax only, and + // deprecated. + // "TYPE_MESSAGE" - Field type message. + // "TYPE_BYTES" - Field type bytes. + // "TYPE_UINT32" - Field type uint32. + // "TYPE_ENUM" - Field type enum. + // "TYPE_SFIXED32" - Field type sfixed32. + // "TYPE_SFIXED64" - Field type sfixed64. + // "TYPE_SINT32" - Field type sint32. + // "TYPE_SINT64" - Field type sint64. + Kind string `json:"kind,omitempty"` + + // Name: The field name. + Name string `json:"name,omitempty"` + + // Number: The field number. + Number int64 `json:"number,omitempty"` + + // OneofIndex: The index of the field type in `Type.oneofs`, for message + // or enumeration + // types. The first type has index 1; zero means the type is not in the + // list. + OneofIndex int64 `json:"oneofIndex,omitempty"` + + // Options: The protocol buffer options. + Options []*Option `json:"options,omitempty"` + + // Packed: Whether to use alternative packed wire representation. + Packed bool `json:"packed,omitempty"` + + // TypeUrl: The field type URL, without the scheme, for message or + // enumeration + // types. Example: "type.googleapis.com/google.protobuf.Timestamp". + TypeUrl string `json:"typeUrl,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Cardinality") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Cardinality") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *Field) MarshalJSON() ([]byte, error) { + type NoMethod Field + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleApiService: `Service` is the root object of Google service +// configuration schema. It +// describes basic information about a service, such as the name and +// the +// title, and delegates other aspects to sub-sections. Each sub-section +// is +// either a proto message or a repeated proto message that configures +// a +// specific aspect, such as auth. See each proto message definition for +// details. +// +// Example: +// +// type: google.api.Service +// config_version: 3 +// name: calendar.googleapis.com +// title: Google Calendar API +// apis: +// - name: google.calendar.v3.Calendar +// authentication: +// providers: +// - id: google_calendar_auth +// jwks_uri: https://www.googleapis.com/oauth2/v1/certs +// issuer: https://securetoken.google.com +// rules: +// - selector: "*" +// requirements: +// provider_id: google_calendar_auth +type GoogleApiService struct { + // Apis: A list of API interfaces exported by this service. Only the + // `name` field + // of the google.protobuf.Api needs to be provided by the + // configuration + // author, as the remaining fields will be derived from the IDL during + // the + // normalization process. It is an error to specify an API interface + // here + // which cannot be resolved against the associated IDL files. + Apis []*Api `json:"apis,omitempty"` + + // Authentication: Auth configuration. + Authentication *Authentication `json:"authentication,omitempty"` + + // Backend: API backend configuration. + Backend *Backend `json:"backend,omitempty"` + + // Billing: Billing configuration. + Billing *Billing `json:"billing,omitempty"` + + // ConfigVersion: The semantic version of the service configuration. The + // config version + // affects the interpretation of the service configuration. For + // example, + // certain features are enabled by default for certain config + // versions. + // The latest config version is `3`. + ConfigVersion int64 `json:"configVersion,omitempty"` + + // Context: Context configuration. + Context *Context `json:"context,omitempty"` + + // Control: Configuration for the service control plane. + Control *Control `json:"control,omitempty"` + + // CustomError: Custom error configuration. + CustomError *CustomError `json:"customError,omitempty"` + + // Documentation: Additional API documentation. + Documentation *Documentation `json:"documentation,omitempty"` + + // Endpoints: Configuration for network endpoints. If this is empty, + // then an endpoint + // with the same name as the service is automatically generated to + // service all + // defined APIs. + Endpoints []*Endpoint `json:"endpoints,omitempty"` + + // Enums: A list of all enum types included in this API service. + // Enums + // referenced directly or indirectly by the `apis` are + // automatically + // included. Enums which are not referenced but shall be + // included + // should be listed here by name. Example: + // + // enums: + // - name: google.someapi.v1.SomeEnum + Enums []*Enum `json:"enums,omitempty"` + + // Experimental: Experimental configuration. + Experimental *Experimental `json:"experimental,omitempty"` + + // Http: HTTP configuration. + Http *Http `json:"http,omitempty"` + + // Id: A unique ID for a specific instance of this message, typically + // assigned + // by the client for tracking purpose. If empty, the server may choose + // to + // generate one instead. + Id string `json:"id,omitempty"` + + // Logging: Logging configuration. + Logging *Logging `json:"logging,omitempty"` + + // Logs: Defines the logs used by this service. + Logs []*LogDescriptor `json:"logs,omitempty"` + + // Metrics: Defines the metrics used by this service. + Metrics []*MetricDescriptor `json:"metrics,omitempty"` + + // MonitoredResources: Defines the monitored resources used by this + // service. This is required + // by the Service.monitoring and Service.logging configurations. + MonitoredResources []*MonitoredResourceDescriptor `json:"monitoredResources,omitempty"` + + // Monitoring: Monitoring configuration. + Monitoring *Monitoring `json:"monitoring,omitempty"` + + // Name: The DNS address at which this service is available, + // e.g. `calendar.googleapis.com`. + Name string `json:"name,omitempty"` + + // ProducerProjectId: The Google project that owns this service. + ProducerProjectId string `json:"producerProjectId,omitempty"` + + // Quota: Quota configuration. + Quota *Quota `json:"quota,omitempty"` + + // SourceInfo: Output only. The source information for this + // configuration if available. + SourceInfo *SourceInfo `json:"sourceInfo,omitempty"` + + // SystemParameters: System parameter configuration. + SystemParameters *SystemParameters `json:"systemParameters,omitempty"` + + // SystemTypes: A list of all proto message types included in this API + // service. + // It serves similar purpose as [google.api.Service.types], except + // that + // these types are not needed by user-defined APIs. Therefore, they will + // not + // show up in the generated discovery doc. This field should only be + // used + // to define system APIs in ESF. + SystemTypes []*Type `json:"systemTypes,omitempty"` + + // Title: The product title for this service. + Title string `json:"title,omitempty"` + + // Types: A list of all proto message types included in this API + // service. + // Types referenced directly or indirectly by the `apis` + // are + // automatically included. Messages which are not referenced but + // shall be included, such as types used by the `google.protobuf.Any` + // type, + // should be listed here by name. Example: + // + // types: + // - name: google.protobuf.Int32 + Types []*Type `json:"types,omitempty"` + + // Usage: Configuration controlling usage of this service. + Usage *Usage `json:"usage,omitempty"` + + // Visibility: API visibility configuration. + Visibility *Visibility `json:"visibility,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Apis") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Apis") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleApiService) MarshalJSON() ([]byte, error) { + type NoMethod GoogleApiService + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// Http: Defines the HTTP configuration for an API service. It contains +// a list of +// HttpRule, each specifying the mapping of an RPC method +// to one or more HTTP REST API methods. +type Http struct { + // FullyDecodeReservedExpansion: When set to true, URL path parmeters + // will be fully URI-decoded except in + // cases of single segment matches in reserved expansion, where "%2F" + // will be + // left encoded. + // + // The default behavior is to not decode RFC 6570 reserved characters in + // multi + // segment matches. + FullyDecodeReservedExpansion bool `json:"fullyDecodeReservedExpansion,omitempty"` + + // Rules: A list of HTTP configuration rules that apply to individual + // API methods. + // + // **NOTE:** All service configuration rules follow "last one wins" + // order. + Rules []*HttpRule `json:"rules,omitempty"` + + // ForceSendFields is a list of field names (e.g. + // "FullyDecodeReservedExpansion") to unconditionally include in API + // requests. By default, fields with empty values are omitted from API + // requests. However, any non-pointer, non-interface field appearing in + // ForceSendFields will be sent to the server regardless of whether the + // field is empty or not. This may be used to include empty fields in + // Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. + // "FullyDecodeReservedExpansion") to include in API requests with the + // JSON null value. By default, fields with empty values are omitted + // from API requests. However, any field with an empty value appearing + // in NullFields will be sent to the server as null. It is an error if a + // field in this list has a non-empty value. This may be used to include + // null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *Http) MarshalJSON() ([]byte, error) { + type NoMethod Http + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// HttpRule: `HttpRule` defines the mapping of an RPC method to one or +// more HTTP +// REST API methods. The mapping specifies how different portions of the +// RPC +// request message are mapped to URL path, URL query parameters, +// and +// HTTP request body. The mapping is typically specified as +// an +// `google.api.http` annotation on the RPC method, +// see "google/api/annotations.proto" for details. +// +// The mapping consists of a field specifying the path template +// and +// method kind. The path template can refer to fields in the +// request +// message, as in the example below which describes a REST GET +// operation on a resource collection of messages: +// +// +// service Messaging { +// rpc GetMessage(GetMessageRequest) returns (Message) { +// option (google.api.http).get = +// "/v1/messages/{message_id}/{sub.subfield}"; +// } +// } +// message GetMessageRequest { +// message SubMessage { +// string subfield = 1; +// } +// string message_id = 1; // mapped to the URL +// SubMessage sub = 2; // `sub.subfield` is url-mapped +// } +// message Message { +// string text = 1; // content of the resource +// } +// +// The same http annotation can alternatively be expressed inside +// the +// `GRPC API Configuration` YAML file. +// +// http: +// rules: +// - selector: .Messaging.GetMessage +// get: /v1/messages/{message_id}/{sub.subfield} +// +// This definition enables an automatic, bidrectional mapping of +// HTTP +// JSON to RPC. Example: +// +// HTTP | RPC +// -----|----- +// `GET /v1/messages/123456/foo` | `GetMessage(message_id: "123456" +// sub: SubMessage(subfield: "foo"))` +// +// In general, not only fields but also field paths can be +// referenced +// from a path pattern. Fields mapped to the path pattern cannot +// be +// repeated and must have a primitive (non-message) type. +// +// Any fields in the request message which are not bound by the +// path +// pattern automatically become (optional) HTTP query +// parameters. Assume the following definition of the request +// message: +// +// +// service Messaging { +// rpc GetMessage(GetMessageRequest) returns (Message) { +// option (google.api.http).get = "/v1/messages/{message_id}"; +// } +// } +// message GetMessageRequest { +// message SubMessage { +// string subfield = 1; +// } +// string message_id = 1; // mapped to the URL +// int64 revision = 2; // becomes a parameter +// SubMessage sub = 3; // `sub.subfield` becomes a parameter +// } +// +// +// This enables a HTTP JSON to RPC mapping as below: +// +// HTTP | RPC +// -----|----- +// `GET /v1/messages/123456?revision=2&sub.subfield=foo` | +// `GetMessage(message_id: "123456" revision: 2 sub: +// SubMessage(subfield: "foo"))` +// +// Note that fields which are mapped to HTTP parameters must have +// a +// primitive type or a repeated primitive type. Message types are +// not +// allowed. In the case of a repeated type, the parameter can +// be +// repeated in the URL, as in `...?param=A¶m=B`. +// +// For HTTP method kinds which allow a request body, the `body` +// field +// specifies the mapping. Consider a REST update method on the +// message resource collection: +// +// +// service Messaging { +// rpc UpdateMessage(UpdateMessageRequest) returns (Message) { +// option (google.api.http) = { +// put: "/v1/messages/{message_id}" +// body: "message" +// }; +// } +// } +// message UpdateMessageRequest { +// string message_id = 1; // mapped to the URL +// Message message = 2; // mapped to the body +// } +// +// +// The following HTTP JSON to RPC mapping is enabled, where +// the +// representation of the JSON in the request body is determined +// by +// protos JSON encoding: +// +// HTTP | RPC +// -----|----- +// `PUT /v1/messages/123456 { "text": "Hi!" }` | +// `UpdateMessage(message_id: "123456" message { text: "Hi!" })` +// +// The special name `*` can be used in the body mapping to define +// that +// every field not bound by the path template should be mapped to +// the +// request body. This enables the following alternative definition +// of +// the update method: +// +// service Messaging { +// rpc UpdateMessage(Message) returns (Message) { +// option (google.api.http) = { +// put: "/v1/messages/{message_id}" +// body: "*" +// }; +// } +// } +// message Message { +// string message_id = 1; +// string text = 2; +// } +// +// +// The following HTTP JSON to RPC mapping is enabled: +// +// HTTP | RPC +// -----|----- +// `PUT /v1/messages/123456 { "text": "Hi!" }` | +// `UpdateMessage(message_id: "123456" text: "Hi!")` +// +// Note that when using `*` in the body mapping, it is not possible +// to +// have HTTP parameters, as all fields not bound by the path end in +// the body. This makes this option more rarely used in practice +// of +// defining REST APIs. The common usage of `*` is in custom +// methods +// which don't use the URL at all for transferring data. +// +// It is possible to define multiple HTTP methods for one RPC by +// using +// the `additional_bindings` option. Example: +// +// service Messaging { +// rpc GetMessage(GetMessageRequest) returns (Message) { +// option (google.api.http) = { +// get: "/v1/messages/{message_id}" +// additional_bindings { +// get: "/v1/users/{user_id}/messages/{message_id}" +// } +// }; +// } +// } +// message GetMessageRequest { +// string message_id = 1; +// string user_id = 2; +// } +// +// +// This enables the following two alternative HTTP JSON to +// RPC +// mappings: +// +// HTTP | RPC +// -----|----- +// `GET /v1/messages/123456` | `GetMessage(message_id: "123456")` +// `GET /v1/users/me/messages/123456` | `GetMessage(user_id: "me" +// message_id: "123456")` +// +// # Rules for HTTP mapping +// +// The rules for mapping HTTP path, query parameters, and body fields +// to the request message are as follows: +// +// 1. The `body` field specifies either `*` or a field path, or is +// omitted. If omitted, it indicates there is no HTTP request +// body. +// 2. Leaf fields (recursive expansion of nested messages in the +// request) can be classified into three types: +// (a) Matched in the URL template. +// (b) Covered by body (if body is `*`, everything except (a) +// fields; +// else everything under the body field) +// (c) All other fields. +// 3. URL query parameters found in the HTTP request are mapped to (c) +// fields. +// 4. Any body sent with an HTTP request can contain only (b) +// fields. +// +// The syntax of the path template is as follows: +// +// Template = "/" Segments [ Verb ] ; +// Segments = Segment { "/" Segment } ; +// Segment = "*" | "**" | LITERAL | Variable ; +// Variable = "{" FieldPath [ "=" Segments ] "}" ; +// FieldPath = IDENT { "." IDENT } ; +// Verb = ":" LITERAL ; +// +// The syntax `*` matches a single path segment. The syntax `**` matches +// zero +// or more path segments, which must be the last part of the path except +// the +// `Verb`. The syntax `LITERAL` matches literal text in the path. +// +// The syntax `Variable` matches part of the URL path as specified by +// its +// template. A variable template must not contain other variables. If a +// variable +// matches a single path segment, its template may be omitted, e.g. +// `{var}` +// is equivalent to `{var=*}`. +// +// If a variable contains exactly one path segment, such as "{var}" +// or +// "{var=*}", when such a variable is expanded into a URL path, all +// characters +// except `[-_.~0-9a-zA-Z]` are percent-encoded. Such variables show up +// in the +// Discovery Document as `{var}`. +// +// If a variable contains one or more path segments, such as +// "{var=foo/*}" +// or "{var=**}", when such a variable is expanded into a URL path, +// all +// characters except `[-_.~/0-9a-zA-Z]` are percent-encoded. Such +// variables +// show up in the Discovery Document as `{+var}`. +// +// NOTE: While the single segment variable matches the semantics of +// [RFC 6570](https://tools.ietf.org/html/rfc6570) Section 3.2.2 +// Simple String Expansion, the multi segment variable **does not** +// match +// RFC 6570 Reserved Expansion. The reason is that the Reserved +// Expansion +// does not expand special characters like `?` and `#`, which would +// lead +// to invalid URLs. +// +// NOTE: the field paths in variables and in the `body` must not refer +// to +// repeated fields or map fields. +type HttpRule struct { + // AdditionalBindings: Additional HTTP bindings for the selector. Nested + // bindings must + // not contain an `additional_bindings` field themselves (that is, + // the nesting may only be one level deep). + AdditionalBindings []*HttpRule `json:"additionalBindings,omitempty"` + + // Authorizations: Specifies the permission(s) required for an API + // element for the overall + // API request to succeed. It is typically used to mark request message + // fields + // that contain the name of the resource and indicates the permissions + // that + // will be checked on that resource. + Authorizations []*AuthorizationRule `json:"authorizations,omitempty"` + + // Body: The name of the request field whose value is mapped to the HTTP + // body, or + // `*` for mapping all fields not captured by the path pattern to the + // HTTP + // body. NOTE: the referred field must not be a repeated field and must + // be + // present at the top-level of request message type. + Body string `json:"body,omitempty"` + + // Custom: The custom pattern is used for specifying an HTTP method that + // is not + // included in the `pattern` field, such as HEAD, or "*" to leave + // the + // HTTP method unspecified for this rule. The wild-card rule is + // useful + // for services that provide content to Web (HTML) clients. + Custom *CustomHttpPattern `json:"custom,omitempty"` + + // Delete: Used for deleting a resource. + Delete string `json:"delete,omitempty"` + + // Get: Used for listing and getting information about resources. + Get string `json:"get,omitempty"` + + // MediaDownload: Use this only for Scotty Requests. Do not use this for + // bytestream methods. + // For media support, add instead [][google.bytestream.RestByteStream] + // as an + // API to your configuration. + MediaDownload *MediaDownload `json:"mediaDownload,omitempty"` + + // MediaUpload: Use this only for Scotty Requests. Do not use this for + // media support using + // Bytestream, add instead + // [][google.bytestream.RestByteStream] as an API to your + // configuration for Bytestream methods. + MediaUpload *MediaUpload `json:"mediaUpload,omitempty"` + + // Patch: Used for updating a resource. + Patch string `json:"patch,omitempty"` + + // Post: Used for creating a resource. + Post string `json:"post,omitempty"` + + // Put: Used for updating a resource. + Put string `json:"put,omitempty"` + + // RestCollection: DO NOT USE. This is an experimental field. + // + // Optional. The REST collection name is by default derived from the + // URL + // pattern. If specified, this field overrides the default collection + // name. + // Example: + // + // rpc AddressesAggregatedList(AddressesAggregatedListRequest) + // returns (AddressesAggregatedListResponse) { + // option (google.api.http) = { + // get: "/v1/projects/{project_id}/aggregated/addresses" + // rest_collection: "projects.addresses" + // }; + // } + // + // This method has the automatically derived collection + // name + // "projects.aggregated". Because, semantically, this rpc is actually + // an + // operation on the "projects.addresses" collection, the + // `rest_collection` + // field is configured to override the derived collection name. + RestCollection string `json:"restCollection,omitempty"` + + // RestMethodName: DO NOT USE. This is an experimental field. + // + // Optional. The rest method name is by default derived from the + // URL + // pattern. If specified, this field overrides the default method + // name. + // Example: + // + // rpc CreateResource(CreateResourceRequest) + // returns (CreateResourceResponse) { + // option (google.api.http) = { + // post: "/v1/resources", + // body: "resource", + // rest_method_name: "insert" + // }; + // } + // + // This method has the automatically derived rest method name + // "create", but for backwards compatibility with apiary, it is + // specified as + // insert. + RestMethodName string `json:"restMethodName,omitempty"` + + // Selector: Selects methods to which this rule applies. + // + // Refer to selector for syntax details. + Selector string `json:"selector,omitempty"` + + // ForceSendFields is a list of field names (e.g. "AdditionalBindings") + // to unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "AdditionalBindings") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *HttpRule) MarshalJSON() ([]byte, error) { + type NoMethod HttpRule + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// LabelDescriptor: A description of a label. +type LabelDescriptor struct { + // Description: A human-readable description for the label. + Description string `json:"description,omitempty"` + + // Key: The label key. + Key string `json:"key,omitempty"` + + // ValueType: The type of data that can be assigned to the label. + // + // Possible values: + // "STRING" - A variable-length string. This is the default. + // "BOOL" - Boolean; true or false. + // "INT64" - A 64-bit signed integer. + ValueType string `json:"valueType,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Description") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Description") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *LabelDescriptor) MarshalJSON() ([]byte, error) { + type NoMethod LabelDescriptor + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// ListEnabledServicesResponse: Response message for +// ListEnabledServices. +type ListEnabledServicesResponse struct { + // NextPageToken: Token that can be passed to `ListEnabledServices` to + // resume a paginated + // query. + NextPageToken string `json:"nextPageToken,omitempty"` + + // Services: The state of the enabled services for the requested parent. + Services []*ServiceState `json:"services,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "NextPageToken") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "NextPageToken") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *ListEnabledServicesResponse) MarshalJSON() ([]byte, error) { + type NoMethod ListEnabledServicesResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// ListOperationsResponse: The response message for +// Operations.ListOperations. +type ListOperationsResponse struct { + // NextPageToken: The standard List next-page token. + NextPageToken string `json:"nextPageToken,omitempty"` + + // Operations: A list of operations that matches the specified filter in + // the request. + Operations []*Operation `json:"operations,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "NextPageToken") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "NextPageToken") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *ListOperationsResponse) MarshalJSON() ([]byte, error) { + type NoMethod ListOperationsResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// LogDescriptor: A description of a log type. Example in YAML format: +// +// - name: library.googleapis.com/activity_history +// description: The history of borrowing and returning library +// items. +// display_name: Activity +// labels: +// - key: /customer_id +// description: Identifier of a library customer +type LogDescriptor struct { + // Description: A human-readable description of this log. This + // information appears in + // the documentation and can contain details. + Description string `json:"description,omitempty"` + + // DisplayName: The human-readable name for this log. This information + // appears on + // the user interface and should be concise. + DisplayName string `json:"displayName,omitempty"` + + // Labels: The set of labels that are available to describe a specific + // log entry. + // Runtime requests that contain labels not specified here + // are + // considered invalid. + Labels []*LabelDescriptor `json:"labels,omitempty"` + + // Name: The name of the log. It must be less than 512 characters long + // and can + // include the following characters: upper- and lower-case + // alphanumeric + // characters [A-Za-z0-9], and punctuation characters including + // slash, underscore, hyphen, period [/_-.]. + Name string `json:"name,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Description") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Description") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *LogDescriptor) MarshalJSON() ([]byte, error) { + type NoMethod LogDescriptor + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// Logging: Logging configuration of the service. +// +// The following example shows how to configure logs to be sent to +// the +// producer and consumer projects. In the example, the +// `activity_history` +// log is sent to both the producer and consumer projects, whereas +// the +// `purchase_history` log is only sent to the producer project. +// +// monitored_resources: +// - type: library.googleapis.com/branch +// labels: +// - key: /city +// description: The city where the library branch is located +// in. +// - key: /name +// description: The name of the branch. +// logs: +// - name: activity_history +// labels: +// - key: /customer_id +// - name: purchase_history +// logging: +// producer_destinations: +// - monitored_resource: library.googleapis.com/branch +// logs: +// - activity_history +// - purchase_history +// consumer_destinations: +// - monitored_resource: library.googleapis.com/branch +// logs: +// - activity_history +type Logging struct { + // ConsumerDestinations: Logging configurations for sending logs to the + // consumer project. + // There can be multiple consumer destinations, each one must have + // a + // different monitored resource type. A log can be used in at most + // one consumer destination. + ConsumerDestinations []*LoggingDestination `json:"consumerDestinations,omitempty"` + + // ProducerDestinations: Logging configurations for sending logs to the + // producer project. + // There can be multiple producer destinations, each one must have + // a + // different monitored resource type. A log can be used in at most + // one producer destination. + ProducerDestinations []*LoggingDestination `json:"producerDestinations,omitempty"` + + // ForceSendFields is a list of field names (e.g. + // "ConsumerDestinations") to unconditionally include in API requests. + // By default, fields with empty values are omitted from API requests. + // However, any non-pointer, non-interface field appearing in + // ForceSendFields will be sent to the server regardless of whether the + // field is empty or not. This may be used to include empty fields in + // Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "ConsumerDestinations") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *Logging) MarshalJSON() ([]byte, error) { + type NoMethod Logging + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// LoggingDestination: Configuration of a specific logging destination +// (the producer project +// or the consumer project). +type LoggingDestination struct { + // Logs: Names of the logs to be sent to this destination. Each name + // must + // be defined in the Service.logs section. If the log name is + // not a domain scoped name, it will be automatically prefixed with + // the service name followed by "/". + Logs []string `json:"logs,omitempty"` + + // MonitoredResource: The monitored resource type. The type must be + // defined in the + // Service.monitored_resources section. + MonitoredResource string `json:"monitoredResource,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Logs") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Logs") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *LoggingDestination) MarshalJSON() ([]byte, error) { + type NoMethod LoggingDestination + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// MediaDownload: Defines the Media configuration for a service in case +// of a download. +// Use this only for Scotty Requests. Do not use this for media support +// using +// Bytestream, add instead [][google.bytestream.RestByteStream] as an +// API to +// your configuration for Bytestream methods. +type MediaDownload struct { + // CompleteNotification: A boolean that determines whether a + // notification for the completion of a + // download should be sent to the backend. + CompleteNotification bool `json:"completeNotification,omitempty"` + + // DownloadService: DO NOT USE FIELDS BELOW THIS LINE UNTIL THIS WARNING + // IS REMOVED. + // + // Specify name of the download service if one is used for download. + DownloadService string `json:"downloadService,omitempty"` + + // Dropzone: Name of the Scotty dropzone to use for the current API. + Dropzone string `json:"dropzone,omitempty"` + + // Enabled: Whether download is enabled. + Enabled bool `json:"enabled,omitempty"` + + // MaxDirectDownloadSize: Optional maximum acceptable size for direct + // download. + // The size is specified in bytes. + MaxDirectDownloadSize int64 `json:"maxDirectDownloadSize,omitempty,string"` + + // UseDirectDownload: A boolean that determines if direct download from + // ESF should be used for + // download of this media. + UseDirectDownload bool `json:"useDirectDownload,omitempty"` + + // ForceSendFields is a list of field names (e.g. + // "CompleteNotification") to unconditionally include in API requests. + // By default, fields with empty values are omitted from API requests. + // However, any non-pointer, non-interface field appearing in + // ForceSendFields will be sent to the server regardless of whether the + // field is empty or not. This may be used to include empty fields in + // Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "CompleteNotification") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *MediaDownload) MarshalJSON() ([]byte, error) { + type NoMethod MediaDownload + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// MediaUpload: Defines the Media configuration for a service in case of +// an upload. +// Use this only for Scotty Requests. Do not use this for media support +// using +// Bytestream, add instead [][google.bytestream.RestByteStream] as an +// API to +// your configuration for Bytestream methods. +type MediaUpload struct { + // CompleteNotification: A boolean that determines whether a + // notification for the completion of an + // upload should be sent to the backend. These notifications will not be + // seen + // by the client and will not consume quota. + CompleteNotification bool `json:"completeNotification,omitempty"` + + // Dropzone: Name of the Scotty dropzone to use for the current API. + Dropzone string `json:"dropzone,omitempty"` + + // Enabled: Whether upload is enabled. + Enabled bool `json:"enabled,omitempty"` + + // MaxSize: Optional maximum acceptable size for an upload. + // The size is specified in bytes. + MaxSize int64 `json:"maxSize,omitempty,string"` + + // MimeTypes: An array of mimetype patterns. Esf will only accept + // uploads that match one + // of the given patterns. + MimeTypes []string `json:"mimeTypes,omitempty"` + + // ProgressNotification: Whether to receive a notification for progress + // changes of media upload. + ProgressNotification bool `json:"progressNotification,omitempty"` + + // StartNotification: Whether to receive a notification on the start of + // media upload. + StartNotification bool `json:"startNotification,omitempty"` + + // UploadService: DO NOT USE FIELDS BELOW THIS LINE UNTIL THIS WARNING + // IS REMOVED. + // + // Specify name of the upload service if one is used for upload. + UploadService string `json:"uploadService,omitempty"` + + // ForceSendFields is a list of field names (e.g. + // "CompleteNotification") to unconditionally include in API requests. + // By default, fields with empty values are omitted from API requests. + // However, any non-pointer, non-interface field appearing in + // ForceSendFields will be sent to the server regardless of whether the + // field is empty or not. This may be used to include empty fields in + // Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "CompleteNotification") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *MediaUpload) MarshalJSON() ([]byte, error) { + type NoMethod MediaUpload + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// Method: Method represents a method of an API interface. +type Method struct { + // Name: The simple name of this method. + Name string `json:"name,omitempty"` + + // Options: Any metadata attached to the method. + Options []*Option `json:"options,omitempty"` + + // RequestStreaming: If true, the request is streamed. + RequestStreaming bool `json:"requestStreaming,omitempty"` + + // RequestTypeUrl: A URL of the input message type. + RequestTypeUrl string `json:"requestTypeUrl,omitempty"` + + // ResponseStreaming: If true, the response is streamed. + ResponseStreaming bool `json:"responseStreaming,omitempty"` + + // ResponseTypeUrl: The URL of the output message type. + ResponseTypeUrl string `json:"responseTypeUrl,omitempty"` + + // Syntax: The source syntax of this method. + // + // Possible values: + // "SYNTAX_PROTO2" - Syntax `proto2`. + // "SYNTAX_PROTO3" - Syntax `proto3`. + Syntax string `json:"syntax,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Name") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Name") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *Method) MarshalJSON() ([]byte, error) { + type NoMethod Method + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// MetricDescriptor: Defines a metric type and its schema. Once a metric +// descriptor is created, +// deleting or altering it stops data collection and makes the metric +// type's +// existing data unusable. +type MetricDescriptor struct { + // Description: A detailed description of the metric, which can be used + // in documentation. + Description string `json:"description,omitempty"` + + // DisplayName: A concise name for the metric, which can be displayed in + // user interfaces. + // Use sentence case without an ending period, for example "Request + // count". + // This field is optional but it is recommended to be set for any + // metrics + // associated with user-visible concepts, such as Quota. + DisplayName string `json:"displayName,omitempty"` + + // Labels: The set of labels that can be used to describe a + // specific + // instance of this metric type. For example, + // the + // `appengine.googleapis.com/http/server/response_latencies` metric + // type has a label for the HTTP response code, `response_code`, so + // you can look at latencies for successful responses or just + // for responses that failed. + Labels []*LabelDescriptor `json:"labels,omitempty"` + + // MetricKind: Whether the metric records instantaneous values, changes + // to a value, etc. + // Some combinations of `metric_kind` and `value_type` might not be + // supported. + // + // Possible values: + // "METRIC_KIND_UNSPECIFIED" - Do not use this default value. + // "GAUGE" - An instantaneous measurement of a value. + // "DELTA" - The change in a value during a time interval. + // "CUMULATIVE" - A value accumulated over a time interval. + // Cumulative + // measurements in a time series should have the same start time + // and increasing end times, until an event resets the cumulative + // value to zero and sets a new start time for the following + // points. + MetricKind string `json:"metricKind,omitempty"` + + // Name: The resource name of the metric descriptor. + Name string `json:"name,omitempty"` + + // Type: The metric type, including its DNS name prefix. The type is + // not + // URL-encoded. All user-defined custom metric types have the DNS + // name + // `custom.googleapis.com`. Metric types should use a natural + // hierarchical + // grouping. For example: + // + // "custom.googleapis.com/invoice/paid/amount" + // "appengine.googleapis.com/http/server/response_latencies" + Type string `json:"type,omitempty"` + + // Unit: The unit in which the metric value is reported. It is only + // applicable + // if the `value_type` is `INT64`, `DOUBLE`, or `DISTRIBUTION`. + // The + // supported units are a subset of [The Unified Code for Units + // of + // Measure](http://unitsofmeasure.org/ucum.html) standard: + // + // **Basic units (UNIT)** + // + // * `bit` bit + // * `By` byte + // * `s` second + // * `min` minute + // * `h` hour + // * `d` day + // + // **Prefixes (PREFIX)** + // + // * `k` kilo (10**3) + // * `M` mega (10**6) + // * `G` giga (10**9) + // * `T` tera (10**12) + // * `P` peta (10**15) + // * `E` exa (10**18) + // * `Z` zetta (10**21) + // * `Y` yotta (10**24) + // * `m` milli (10**-3) + // * `u` micro (10**-6) + // * `n` nano (10**-9) + // * `p` pico (10**-12) + // * `f` femto (10**-15) + // * `a` atto (10**-18) + // * `z` zepto (10**-21) + // * `y` yocto (10**-24) + // * `Ki` kibi (2**10) + // * `Mi` mebi (2**20) + // * `Gi` gibi (2**30) + // * `Ti` tebi (2**40) + // + // **Grammar** + // + // The grammar also includes these connectors: + // + // * `/` division (as an infix operator, e.g. `1/s`). + // * `.` multiplication (as an infix operator, e.g. `GBy.d`) + // + // The grammar for a unit is as follows: + // + // Expression = Component { "." Component } { "/" Component } ; + // + // Component = ( [ PREFIX ] UNIT | "%" ) [ Annotation ] + // | Annotation + // | "1" + // ; + // + // Annotation = "{" NAME "}" ; + // + // Notes: + // + // * `Annotation` is just a comment if it follows a `UNIT` and is + // equivalent to `1` if it is used alone. For examples, + // `{requests}/s == 1/s`, `By{transmitted}/s == By/s`. + // * `NAME` is a sequence of non-blank printable ASCII characters not + // containing '{' or '}'. + // * `1` represents dimensionless value 1, such as in `1/s`. + // * `%` represents dimensionless value 1/100, and annotates values + // giving + // a percentage. + Unit string `json:"unit,omitempty"` + + // ValueType: Whether the measurement is an integer, a floating-point + // number, etc. + // Some combinations of `metric_kind` and `value_type` might not be + // supported. + // + // Possible values: + // "VALUE_TYPE_UNSPECIFIED" - Do not use this default value. + // "BOOL" - The value is a boolean. + // This value type can be used only if the metric kind is `GAUGE`. + // "INT64" - The value is a signed 64-bit integer. + // "DOUBLE" - The value is a double precision floating point number. + // "STRING" - The value is a text string. + // This value type can be used only if the metric kind is `GAUGE`. + // "DISTRIBUTION" - The value is a `Distribution`. + // "MONEY" - The value is money. + ValueType string `json:"valueType,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Description") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Description") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *MetricDescriptor) MarshalJSON() ([]byte, error) { + type NoMethod MetricDescriptor + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// MetricRule: Bind API methods to metrics. Binding a method to a metric +// causes that +// metric's configured quota behaviors to apply to the method call. +type MetricRule struct { + // MetricCosts: Metrics to update when the selected methods are called, + // and the associated + // cost applied to each metric. + // + // The key of the map is the metric name, and the values are the + // amount + // increased for the metric against which the quota limits are + // defined. + // The value must not be negative. + MetricCosts map[string]string `json:"metricCosts,omitempty"` + + // Selector: Selects the methods to which this rule applies. + // + // Refer to selector for syntax details. + Selector string `json:"selector,omitempty"` + + // ForceSendFields is a list of field names (e.g. "MetricCosts") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "MetricCosts") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *MetricRule) MarshalJSON() ([]byte, error) { + type NoMethod MetricRule + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// Mixin: Declares an API Interface to be included in this interface. +// The including +// interface must redeclare all the methods from the included interface, +// but +// documentation and options are inherited as follows: +// +// - If after comment and whitespace stripping, the documentation +// string of the redeclared method is empty, it will be inherited +// from the original method. +// +// - Each annotation belonging to the service config (http, +// visibility) which is not set in the redeclared method will be +// inherited. +// +// - If an http annotation is inherited, the path pattern will be +// modified as follows. Any version prefix will be replaced by the +// version of the including interface plus the root path if +// specified. +// +// Example of a simple mixin: +// +// package google.acl.v1; +// service AccessControl { +// // Get the underlying ACL object. +// rpc GetAcl(GetAclRequest) returns (Acl) { +// option (google.api.http).get = "/v1/{resource=**}:getAcl"; +// } +// } +// +// package google.storage.v2; +// service Storage { +// // rpc GetAcl(GetAclRequest) returns (Acl); +// +// // Get a data record. +// rpc GetData(GetDataRequest) returns (Data) { +// option (google.api.http).get = "/v2/{resource=**}"; +// } +// } +// +// Example of a mixin configuration: +// +// apis: +// - name: google.storage.v2.Storage +// mixins: +// - name: google.acl.v1.AccessControl +// +// The mixin construct implies that all methods in `AccessControl` +// are +// also declared with same name and request/response types in +// `Storage`. A documentation generator or annotation processor will +// see the effective `Storage.GetAcl` method after +// inherting +// documentation and annotations as follows: +// +// service Storage { +// // Get the underlying ACL object. +// rpc GetAcl(GetAclRequest) returns (Acl) { +// option (google.api.http).get = "/v2/{resource=**}:getAcl"; +// } +// ... +// } +// +// Note how the version in the path pattern changed from `v1` to +// `v2`. +// +// If the `root` field in the mixin is specified, it should be +// a +// relative path under which inherited HTTP paths are placed. Example: +// +// apis: +// - name: google.storage.v2.Storage +// mixins: +// - name: google.acl.v1.AccessControl +// root: acls +// +// This implies the following inherited HTTP annotation: +// +// service Storage { +// // Get the underlying ACL object. +// rpc GetAcl(GetAclRequest) returns (Acl) { +// option (google.api.http).get = +// "/v2/acls/{resource=**}:getAcl"; +// } +// ... +// } +type Mixin struct { + // Name: The fully qualified name of the interface which is included. + Name string `json:"name,omitempty"` + + // Root: If non-empty specifies a path under which inherited HTTP + // paths + // are rooted. + Root string `json:"root,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Name") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Name") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *Mixin) MarshalJSON() ([]byte, error) { + type NoMethod Mixin + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// MonitoredResourceDescriptor: An object that describes the schema of a +// MonitoredResource object using a +// type name and a set of labels. For example, the monitored +// resource +// descriptor for Google Compute Engine VM instances has a type +// of +// "gce_instance" and specifies the use of the labels "instance_id" +// and +// "zone" to identify particular VM instances. +// +// Different APIs can support different monitored resource types. APIs +// generally +// provide a `list` method that returns the monitored resource +// descriptors used +// by the API. +type MonitoredResourceDescriptor struct { + // Description: Optional. A detailed description of the monitored + // resource type that might + // be used in documentation. + Description string `json:"description,omitempty"` + + // DisplayName: Optional. A concise name for the monitored resource type + // that might be + // displayed in user interfaces. It should be a Title Cased Noun + // Phrase, + // without any article or other determiners. For example, + // "Google Cloud SQL Database". + DisplayName string `json:"displayName,omitempty"` + + // Labels: Required. A set of labels used to describe instances of this + // monitored + // resource type. For example, an individual Google Cloud SQL database + // is + // identified by values for the labels "database_id" and "zone". + Labels []*LabelDescriptor `json:"labels,omitempty"` + + // Name: Optional. The resource name of the monitored resource + // descriptor: + // "projects/{project_id}/monitoredResourceDescriptors/{type + // }" where + // {type} is the value of the `type` field in this object + // and + // {project_id} is a project ID that provides API-specific context + // for + // accessing the type. APIs that do not use project information can use + // the + // resource name format "monitoredResourceDescriptors/{type}". + Name string `json:"name,omitempty"` + + // Type: Required. The monitored resource type. For example, the + // type + // "cloudsql_database" represents databases in Google Cloud SQL. + // The maximum length of this value is 256 characters. + Type string `json:"type,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Description") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Description") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *MonitoredResourceDescriptor) MarshalJSON() ([]byte, error) { + type NoMethod MonitoredResourceDescriptor + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// Monitoring: Monitoring configuration of the service. +// +// The example below shows how to configure monitored resources and +// metrics +// for monitoring. In the example, a monitored resource and two metrics +// are +// defined. The `library.googleapis.com/book/returned_count` metric is +// sent +// to both producer and consumer projects, whereas +// the +// `library.googleapis.com/book/overdue_count` metric is only sent to +// the +// consumer project. +// +// monitored_resources: +// - type: library.googleapis.com/branch +// labels: +// - key: /city +// description: The city where the library branch is located +// in. +// - key: /name +// description: The name of the branch. +// metrics: +// - name: library.googleapis.com/book/returned_count +// metric_kind: DELTA +// value_type: INT64 +// labels: +// - key: /customer_id +// - name: library.googleapis.com/book/overdue_count +// metric_kind: GAUGE +// value_type: INT64 +// labels: +// - key: /customer_id +// monitoring: +// producer_destinations: +// - monitored_resource: library.googleapis.com/branch +// metrics: +// - library.googleapis.com/book/returned_count +// consumer_destinations: +// - monitored_resource: library.googleapis.com/branch +// metrics: +// - library.googleapis.com/book/returned_count +// - library.googleapis.com/book/overdue_count +type Monitoring struct { + // ConsumerDestinations: Monitoring configurations for sending metrics + // to the consumer project. + // There can be multiple consumer destinations, each one must have + // a + // different monitored resource type. A metric can be used in at + // most + // one consumer destination. + ConsumerDestinations []*MonitoringDestination `json:"consumerDestinations,omitempty"` + + // ProducerDestinations: Monitoring configurations for sending metrics + // to the producer project. + // There can be multiple producer destinations, each one must have + // a + // different monitored resource type. A metric can be used in at + // most + // one producer destination. + ProducerDestinations []*MonitoringDestination `json:"producerDestinations,omitempty"` + + // ForceSendFields is a list of field names (e.g. + // "ConsumerDestinations") to unconditionally include in API requests. + // By default, fields with empty values are omitted from API requests. + // However, any non-pointer, non-interface field appearing in + // ForceSendFields will be sent to the server regardless of whether the + // field is empty or not. This may be used to include empty fields in + // Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "ConsumerDestinations") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *Monitoring) MarshalJSON() ([]byte, error) { + type NoMethod Monitoring + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// MonitoringDestination: Configuration of a specific monitoring +// destination (the producer project +// or the consumer project). +type MonitoringDestination struct { + // Metrics: Names of the metrics to report to this monitoring + // destination. + // Each name must be defined in Service.metrics section. + Metrics []string `json:"metrics,omitempty"` + + // MonitoredResource: The monitored resource type. The type must be + // defined in + // Service.monitored_resources section. + MonitoredResource string `json:"monitoredResource,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Metrics") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Metrics") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *MonitoringDestination) MarshalJSON() ([]byte, error) { + type NoMethod MonitoringDestination + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// OAuthRequirements: OAuth scopes are a way to define data and +// permissions on data. For example, +// there are scopes defined for "Read-only access to Google Calendar" +// and +// "Access to Cloud Platform". Users can consent to a scope for an +// application, +// giving it permission to access that data on their behalf. +// +// OAuth scope specifications should be fairly coarse grained; a user +// will need +// to see and understand the text description of what your scope +// means. +// +// In most cases: use one or at most two OAuth scopes for an entire +// family of +// products. If your product has multiple APIs, you should probably be +// sharing +// the OAuth scope across all of those APIs. +// +// When you need finer grained OAuth consent screens: talk with your +// product +// management about how developers will use them in practice. +// +// Please note that even though each of the canonical scopes is enough +// for a +// request to be accepted and passed to the backend, a request can still +// fail +// due to the backend requiring additional scopes or permissions. +type OAuthRequirements struct { + // CanonicalScopes: The list of publicly documented OAuth scopes that + // are allowed access. An + // OAuth token containing any of these scopes will be + // accepted. + // + // Example: + // + // canonical_scopes: https://www.googleapis.com/auth/calendar, + // https://www.googleapis.com/auth/calendar.read + CanonicalScopes string `json:"canonicalScopes,omitempty"` + + // ForceSendFields is a list of field names (e.g. "CanonicalScopes") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "CanonicalScopes") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *OAuthRequirements) MarshalJSON() ([]byte, error) { + type NoMethod OAuthRequirements + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// Operation: This resource represents a long-running operation that is +// the result of a +// network API call. +type Operation struct { + // Done: If the value is `false`, it means the operation is still in + // progress. + // If `true`, the operation is completed, and either `error` or + // `response` is + // available. + Done bool `json:"done,omitempty"` + + // Error: The error result of the operation in case of failure or + // cancellation. + Error *Status `json:"error,omitempty"` + + // Metadata: Service-specific metadata associated with the operation. + // It typically + // contains progress information and common metadata such as create + // time. + // Some services might not provide such metadata. Any method that + // returns a + // long-running operation should document the metadata type, if any. + Metadata googleapi.RawMessage `json:"metadata,omitempty"` + + // Name: The server-assigned name, which is only unique within the same + // service that + // originally returns it. If you use the default HTTP mapping, + // the + // `name` should have the format of `operations/some/unique/name`. + Name string `json:"name,omitempty"` + + // Response: The normal response of the operation in case of success. + // If the original + // method returns no data on success, such as `Delete`, the response + // is + // `google.protobuf.Empty`. If the original method is + // standard + // `Get`/`Create`/`Update`, the response should be the resource. For + // other + // methods, the response should have the type `XxxResponse`, where + // `Xxx` + // is the original method name. For example, if the original method + // name + // is `TakeSnapshot()`, the inferred response type + // is + // `TakeSnapshotResponse`. + Response googleapi.RawMessage `json:"response,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "Done") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Done") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *Operation) MarshalJSON() ([]byte, error) { + type NoMethod Operation + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// OperationMetadata: The metadata associated with a long running +// operation resource. +type OperationMetadata struct { + // ProgressPercentage: Percentage of completion of this operation, + // ranging from 0 to 100. + ProgressPercentage int64 `json:"progressPercentage,omitempty"` + + // ResourceNames: The full name of the resources that this operation is + // directly + // associated with. + ResourceNames []string `json:"resourceNames,omitempty"` + + // StartTime: The start time of the operation. + StartTime string `json:"startTime,omitempty"` + + // Steps: Detailed status information for each step. The order is + // undetermined. + Steps []*Step `json:"steps,omitempty"` + + // ForceSendFields is a list of field names (e.g. "ProgressPercentage") + // to unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "ProgressPercentage") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *OperationMetadata) MarshalJSON() ([]byte, error) { + type NoMethod OperationMetadata + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// Option: A protocol buffer option, which can be attached to a message, +// field, +// enumeration, etc. +type Option struct { + // Name: The option's name. For protobuf built-in options (options + // defined in + // descriptor.proto), this is the short name. For example, + // "map_entry". + // For custom options, it should be the fully-qualified name. For + // example, + // "google.api.http". + Name string `json:"name,omitempty"` + + // Value: The option's value packed in an Any message. If the value is a + // primitive, + // the corresponding wrapper type defined in + // google/protobuf/wrappers.proto + // should be used. If the value is an enum, it should be stored as an + // int32 + // value using the google.protobuf.Int32Value type. + Value googleapi.RawMessage `json:"value,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Name") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Name") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *Option) MarshalJSON() ([]byte, error) { + type NoMethod Option + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// Page: Represents a documentation page. A page can contain subpages to +// represent +// nested documentation set structure. +type Page struct { + // Content: The Markdown content of the page. You can use (== + // include {path} ==) + // to include content from a Markdown file. + Content string `json:"content,omitempty"` + + // Name: The name of the page. It will be used as an identity of the + // page to + // generate URI of the page, text of the link to this page in + // navigation, + // etc. The full page name (start from the root page name to this + // page + // concatenated with `.`) can be used as reference to the page in + // your + // documentation. For example: + //
pages:
+	// - name: Tutorial
+	//   content: (== include tutorial.md ==)
+	//   subpages:
+	//   - name: Java
+	//     content: (== include tutorial_java.md
+	// ==)
+	// 
+ // You can reference `Java` page using Markdown reference link + // syntax: + // `Java`. + Name string `json:"name,omitempty"` + + // Subpages: Subpages of this page. The order of subpages specified here + // will be + // honored in the generated docset. + Subpages []*Page `json:"subpages,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Content") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Content") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *Page) MarshalJSON() ([]byte, error) { + type NoMethod Page + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// PublishedService: The published version of a Service that is managed +// by +// Google Service Management. +type PublishedService struct { + // Name: The resource name of the service. + // + // A valid name would be: + // - services/serviceusage.googleapis.com + Name string `json:"name,omitempty"` + + // Service: The service's published configuration. + Service *GoogleApiService `json:"service,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Name") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Name") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *PublishedService) MarshalJSON() ([]byte, error) { + type NoMethod PublishedService + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// Quota: Quota configuration helps to achieve fairness and budgeting in +// service +// usage. +// +// The quota configuration works this way: +// - The service configuration defines a set of metrics. +// - For API calls, the quota.metric_rules maps methods to metrics with +// corresponding costs. +// - The quota.limits defines limits on the metrics, which will be used +// for +// quota checks at runtime. +// +// An example quota configuration in yaml format: +// +// quota: +// +// - name: apiWriteQpsPerProject +// metric: library.googleapis.com/write_calls +// unit: "1/min/{project}" # rate limit for consumer projects +// values: +// STANDARD: 10000 +// +// +// # The metric rules bind all methods to the read_calls metric, +// # except for the UpdateBook and DeleteBook methods. These two +// methods +// # are mapped to the write_calls metric, with the UpdateBook +// method +// # consuming at twice rate as the DeleteBook method. +// metric_rules: +// - selector: "*" +// metric_costs: +// library.googleapis.com/read_calls: 1 +// - selector: google.example.library.v1.LibraryService.UpdateBook +// metric_costs: +// library.googleapis.com/write_calls: 2 +// - selector: google.example.library.v1.LibraryService.DeleteBook +// metric_costs: +// library.googleapis.com/write_calls: 1 +// +// Corresponding Metric definition: +// +// metrics: +// - name: library.googleapis.com/read_calls +// display_name: Read requests +// metric_kind: DELTA +// value_type: INT64 +// +// - name: library.googleapis.com/write_calls +// display_name: Write requests +// metric_kind: DELTA +// value_type: INT64 +type Quota struct { + // Limits: List of `QuotaLimit` definitions for the service. + Limits []*QuotaLimit `json:"limits,omitempty"` + + // MetricRules: List of `MetricRule` definitions, each one mapping a + // selected method to one + // or more metrics. + MetricRules []*MetricRule `json:"metricRules,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Limits") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Limits") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *Quota) MarshalJSON() ([]byte, error) { + type NoMethod Quota + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// QuotaLimit: `QuotaLimit` defines a specific limit that applies over a +// specified duration +// for a limit type. There can be at most one limit for a duration and +// limit +// type combination defined within a `QuotaGroup`. +type QuotaLimit struct { + // DefaultLimit: Default number of tokens that can be consumed during + // the specified + // duration. This is the number of tokens assigned when a + // client + // application developer activates the service for his/her + // project. + // + // Specifying a value of 0 will block all requests. This can be used if + // you + // are provisioning quota to selected consumers and blocking + // others. + // Similarly, a value of -1 will indicate an unlimited quota. No + // other + // negative values are allowed. + // + // Used by group-based quotas only. + DefaultLimit int64 `json:"defaultLimit,omitempty,string"` + + // Description: Optional. User-visible, extended description for this + // quota limit. + // Should be used only when more context is needed to understand this + // limit + // than provided by the limit's display name (see: `display_name`). + Description string `json:"description,omitempty"` + + // DisplayName: User-visible display name for this limit. + // Optional. If not set, the UI will provide a default display name + // based on + // the quota configuration. This field can be used to override the + // default + // display name generated from the configuration. + DisplayName string `json:"displayName,omitempty"` + + // Duration: Duration of this limit in textual notation. Example: + // "100s", "24h", "1d". + // For duration longer than a day, only multiple of days is supported. + // We + // support only "100s" and "1d" for now. Additional support will be + // added in + // the future. "0" indicates indefinite duration. + // + // Used by group-based quotas only. + Duration string `json:"duration,omitempty"` + + // FreeTier: Free tier value displayed in the Developers Console for + // this limit. + // The free tier is the number of tokens that will be subtracted from + // the + // billed amount when billing is enabled. + // This field can only be set on a limit with duration "1d", in a + // billable + // group; it is invalid on any other limit. If this field is not set, + // it + // defaults to 0, indicating that there is no free tier for this + // service. + // + // Used by group-based quotas only. + FreeTier int64 `json:"freeTier,omitempty,string"` + + // MaxLimit: Maximum number of tokens that can be consumed during the + // specified + // duration. Client application developers can override the default + // limit up + // to this maximum. If specified, this value cannot be set to a value + // less + // than the default limit. If not specified, it is set to the default + // limit. + // + // To allow clients to apply overrides with no upper bound, set this to + // -1, + // indicating unlimited maximum quota. + // + // Used by group-based quotas only. + MaxLimit int64 `json:"maxLimit,omitempty,string"` + + // Metric: The name of the metric this quota limit applies to. The quota + // limits with + // the same metric will be checked together during runtime. The metric + // must be + // defined within the service config. + Metric string `json:"metric,omitempty"` + + // Name: Name of the quota limit. + // + // The name must be provided, and it must be unique within the service. + // The + // name can only include alphanumeric characters as well as '-'. + // + // The maximum length of the limit name is 64 characters. + Name string `json:"name,omitempty"` + + // Unit: Specify the unit of the quota limit. It uses the same syntax + // as + // Metric.unit. The supported unit kinds are determined by the + // quota + // backend system. + // + // Here are some examples: + // * "1/min/{project}" for quota per minute per project. + // + // Note: the order of unit components is insignificant. + // The "1" at the beginning is required to follow the metric unit + // syntax. + Unit string `json:"unit,omitempty"` + + // Values: Tiered limit values. You must specify this as a key:value + // pair, with an + // integer value that is the maximum number of requests allowed for + // the + // specified unit. Currently only STANDARD is supported. + Values map[string]string `json:"values,omitempty"` + + // ForceSendFields is a list of field names (e.g. "DefaultLimit") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "DefaultLimit") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *QuotaLimit) MarshalJSON() ([]byte, error) { + type NoMethod QuotaLimit + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// SearchServicesResponse: Response message for SearchServices. +type SearchServicesResponse struct { + // NextPageToken: Token that can be passed to `SearchServices` to resume + // a paginated query. + NextPageToken string `json:"nextPageToken,omitempty"` + + // Services: The state of services available publicly or available to + // the authenticated + // caller. + Services []*PublishedService `json:"services,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "NextPageToken") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "NextPageToken") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *SearchServicesResponse) MarshalJSON() ([]byte, error) { + type NoMethod SearchServicesResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// ServiceState: The properties of a consumer with respect to a Service. +type ServiceState struct { + // Enabled: Reflects whether or not the service has been explicitly + // enabled. + Enabled *EnabledState `json:"enabled,omitempty"` + + // Name: The resource name of the consumer and service. + // + // A valid name would be: + // - projects/123/services/serviceusage.googleapis.com + Name string `json:"name,omitempty"` + + // Service: The published version of the consumed service. + Service *PublishedService `json:"service,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "Enabled") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Enabled") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *ServiceState) MarshalJSON() ([]byte, error) { + type NoMethod ServiceState + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// SourceContext: `SourceContext` represents information about the +// source of a +// protobuf element, like the file in which it is defined. +type SourceContext struct { + // FileName: The path-qualified name of the .proto file that contained + // the associated + // protobuf element. For example: + // "google/protobuf/source_context.proto". + FileName string `json:"fileName,omitempty"` + + // ForceSendFields is a list of field names (e.g. "FileName") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "FileName") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *SourceContext) MarshalJSON() ([]byte, error) { + type NoMethod SourceContext + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// SourceInfo: Source information used to create a Service Config +type SourceInfo struct { + // SourceFiles: All files used during config generation. + SourceFiles []googleapi.RawMessage `json:"sourceFiles,omitempty"` + + // ForceSendFields is a list of field names (e.g. "SourceFiles") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "SourceFiles") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *SourceInfo) MarshalJSON() ([]byte, error) { + type NoMethod SourceInfo + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// Status: The `Status` type defines a logical error model that is +// suitable for different +// programming environments, including REST APIs and RPC APIs. It is +// used by +// [gRPC](https://github.com/grpc). The error model is designed to +// be: +// +// - Simple to use and understand for most users +// - Flexible enough to meet unexpected needs +// +// # Overview +// +// The `Status` message contains three pieces of data: error code, error +// message, +// and error details. The error code should be an enum value +// of +// google.rpc.Code, but it may accept additional error codes if needed. +// The +// error message should be a developer-facing English message that +// helps +// developers *understand* and *resolve* the error. If a localized +// user-facing +// error message is needed, put the localized message in the error +// details or +// localize it in the client. The optional error details may contain +// arbitrary +// information about the error. There is a predefined set of error +// detail types +// in the package `google.rpc` that can be used for common error +// conditions. +// +// # Language mapping +// +// The `Status` message is the logical representation of the error +// model, but it +// is not necessarily the actual wire format. When the `Status` message +// is +// exposed in different client libraries and different wire protocols, +// it can be +// mapped differently. For example, it will likely be mapped to some +// exceptions +// in Java, but more likely mapped to some error codes in C. +// +// # Other uses +// +// The error model and the `Status` message can be used in a variety +// of +// environments, either with or without APIs, to provide a +// consistent developer experience across different +// environments. +// +// Example uses of this error model include: +// +// - Partial errors. If a service needs to return partial errors to the +// client, +// it may embed the `Status` in the normal response to indicate the +// partial +// errors. +// +// - Workflow errors. A typical workflow has multiple steps. Each step +// may +// have a `Status` message for error reporting. +// +// - Batch operations. If a client uses batch request and batch +// response, the +// `Status` message should be used directly inside batch response, +// one for +// each error sub-response. +// +// - Asynchronous operations. If an API call embeds asynchronous +// operation +// results in its response, the status of those operations should +// be +// represented directly using the `Status` message. +// +// - Logging. If some API errors are stored in logs, the message +// `Status` could +// be used directly after any stripping needed for security/privacy +// reasons. +type Status struct { + // Code: The status code, which should be an enum value of + // google.rpc.Code. + Code int64 `json:"code,omitempty"` + + // Details: A list of messages that carry the error details. There is a + // common set of + // message types for APIs to use. + Details []googleapi.RawMessage `json:"details,omitempty"` + + // Message: A developer-facing error message, which should be in + // English. Any + // user-facing error message should be localized and sent in + // the + // google.rpc.Status.details field, or localized by the client. + Message string `json:"message,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Code") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Code") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *Status) MarshalJSON() ([]byte, error) { + type NoMethod Status + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// Step: Represents the status of one operation step. +type Step struct { + // Description: The short description of the step. + Description string `json:"description,omitempty"` + + // Status: The status code. + // + // Possible values: + // "STATUS_UNSPECIFIED" - Unspecifed code. + // "DONE" - The operation or step has completed without errors. + // "NOT_STARTED" - The operation or step has not started yet. + // "IN_PROGRESS" - The operation or step is in progress. + // "FAILED" - The operation or step has completed with errors. If the + // operation is + // rollbackable, the rollback completed with errors too. + // "CANCELLED" - The operation or step has completed with + // cancellation. + Status string `json:"status,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Description") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Description") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *Step) MarshalJSON() ([]byte, error) { + type NoMethod Step + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// SystemParameter: Define a parameter's name and location. The +// parameter may be passed as either +// an HTTP header or a URL query parameter, and if both are passed the +// behavior +// is implementation-dependent. +type SystemParameter struct { + // HttpHeader: Define the HTTP header name to use for the parameter. It + // is case + // insensitive. + HttpHeader string `json:"httpHeader,omitempty"` + + // Name: Define the name of the parameter, such as "api_key" . It is + // case sensitive. + Name string `json:"name,omitempty"` + + // UrlQueryParameter: Define the URL query parameter name to use for the + // parameter. It is case + // sensitive. + UrlQueryParameter string `json:"urlQueryParameter,omitempty"` + + // ForceSendFields is a list of field names (e.g. "HttpHeader") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "HttpHeader") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *SystemParameter) MarshalJSON() ([]byte, error) { + type NoMethod SystemParameter + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// SystemParameterRule: Define a system parameter rule mapping system +// parameter definitions to +// methods. +type SystemParameterRule struct { + // Parameters: Define parameters. Multiple names may be defined for a + // parameter. + // For a given method call, only one of them should be used. If + // multiple + // names are used the behavior is implementation-dependent. + // If none of the specified names are present the behavior + // is + // parameter-dependent. + Parameters []*SystemParameter `json:"parameters,omitempty"` + + // Selector: Selects the methods to which this rule applies. Use '*' to + // indicate all + // methods in all APIs. + // + // Refer to selector for syntax details. + Selector string `json:"selector,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Parameters") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Parameters") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *SystemParameterRule) MarshalJSON() ([]byte, error) { + type NoMethod SystemParameterRule + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// SystemParameters: ### System parameter configuration +// +// A system parameter is a special kind of parameter defined by the +// API +// system, not by an individual API. It is typically mapped to an HTTP +// header +// and/or a URL query parameter. This configuration specifies which +// methods +// change the names of the system parameters. +type SystemParameters struct { + // Rules: Define system parameters. + // + // The parameters defined here will override the default + // parameters + // implemented by the system. If this field is missing from the + // service + // config, default system parameters will be used. Default system + // parameters + // and names is implementation-dependent. + // + // Example: define api key for all methods + // + // system_parameters + // rules: + // - selector: "*" + // parameters: + // - name: api_key + // url_query_parameter: api_key + // + // + // Example: define 2 api key names for a specific method. + // + // system_parameters + // rules: + // - selector: "/ListShelves" + // parameters: + // - name: api_key + // http_header: Api-Key1 + // - name: api_key + // http_header: Api-Key2 + // + // **NOTE:** All service configuration rules follow "last one wins" + // order. + Rules []*SystemParameterRule `json:"rules,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Rules") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Rules") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *SystemParameters) MarshalJSON() ([]byte, error) { + type NoMethod SystemParameters + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// Type: A protocol buffer message type. +type Type struct { + // Fields: The list of fields. + Fields []*Field `json:"fields,omitempty"` + + // Name: The fully qualified message name. + Name string `json:"name,omitempty"` + + // Oneofs: The list of types appearing in `oneof` definitions in this + // type. + Oneofs []string `json:"oneofs,omitempty"` + + // Options: The protocol buffer options. + Options []*Option `json:"options,omitempty"` + + // SourceContext: The source context. + SourceContext *SourceContext `json:"sourceContext,omitempty"` + + // Syntax: The source syntax. + // + // Possible values: + // "SYNTAX_PROTO2" - Syntax `proto2`. + // "SYNTAX_PROTO3" - Syntax `proto3`. + Syntax string `json:"syntax,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Fields") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Fields") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *Type) MarshalJSON() ([]byte, error) { + type NoMethod Type + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// Usage: Configuration controlling usage of a service. +type Usage struct { + // ProducerNotificationChannel: The full resource name of a channel used + // for sending notifications to the + // service producer. + // + // Google Service Management currently only supports + // [Google Cloud Pub/Sub](https://cloud.google.com/pubsub) as a + // notification + // channel. To use Google Cloud Pub/Sub as the channel, this must be the + // name + // of a Cloud Pub/Sub topic that uses the Cloud Pub/Sub topic name + // format + // documented in https://cloud.google.com/pubsub/docs/overview. + ProducerNotificationChannel string `json:"producerNotificationChannel,omitempty"` + + // Requirements: Requirements that must be satisfied before a consumer + // project can use the + // service. Each requirement is of the form + // /; + // for example 'serviceusage.googleapis.com/billing-enabled'. + Requirements []string `json:"requirements,omitempty"` + + // Rules: A list of usage rules that apply to individual API + // methods. + // + // **NOTE:** All service configuration rules follow "last one wins" + // order. + Rules []*UsageRule `json:"rules,omitempty"` + + // ForceSendFields is a list of field names (e.g. + // "ProducerNotificationChannel") to unconditionally include in API + // requests. By default, fields with empty values are omitted from API + // requests. However, any non-pointer, non-interface field appearing in + // ForceSendFields will be sent to the server regardless of whether the + // field is empty or not. This may be used to include empty fields in + // Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. + // "ProducerNotificationChannel") to include in API requests with the + // JSON null value. By default, fields with empty values are omitted + // from API requests. However, any field with an empty value appearing + // in NullFields will be sent to the server as null. It is an error if a + // field in this list has a non-empty value. This may be used to include + // null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *Usage) MarshalJSON() ([]byte, error) { + type NoMethod Usage + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// UsageRule: Usage configuration rules for the service. +// +// NOTE: Under development. +// +// +// Use this rule to configure unregistered calls for the service. +// Unregistered +// calls are calls that do not contain consumer project +// identity. +// (Example: calls that do not contain an API key). +// By default, API methods do not allow unregistered calls, and each +// method call +// must be identified by a consumer project identity. Use this rule +// to +// allow/disallow unregistered calls. +// +// Example of an API that wants to allow unregistered calls for entire +// service. +// +// usage: +// rules: +// - selector: "*" +// allow_unregistered_calls: true +// +// Example of a method that wants to allow unregistered calls. +// +// usage: +// rules: +// - selector: +// "google.example.library.v1.LibraryService.CreateBook" +// allow_unregistered_calls: true +type UsageRule struct { + // AllowUnregisteredCalls: If true, the selected method allows + // unregistered calls, e.g. calls + // that don't identify any user or application. + AllowUnregisteredCalls bool `json:"allowUnregisteredCalls,omitempty"` + + // Selector: Selects the methods to which this rule applies. Use '*' to + // indicate all + // methods in all APIs. + // + // Refer to selector for syntax details. + Selector string `json:"selector,omitempty"` + + // SkipServiceControl: If true, the selected method should skip service + // control and the control + // plane features, such as quota and billing, will not be + // available. + // This flag is used by Google Cloud Endpoints to bypass checks for + // internal + // methods, such as service health check methods. + SkipServiceControl bool `json:"skipServiceControl,omitempty"` + + // ForceSendFields is a list of field names (e.g. + // "AllowUnregisteredCalls") to unconditionally include in API requests. + // By default, fields with empty values are omitted from API requests. + // However, any non-pointer, non-interface field appearing in + // ForceSendFields will be sent to the server regardless of whether the + // field is empty or not. This may be used to include empty fields in + // Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "AllowUnregisteredCalls") + // to include in API requests with the JSON null value. By default, + // fields with empty values are omitted from API requests. However, any + // field with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *UsageRule) MarshalJSON() ([]byte, error) { + type NoMethod UsageRule + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// Visibility: `Visibility` defines restrictions for the visibility of +// service +// elements. Restrictions are specified using visibility labels +// (e.g., TRUSTED_TESTER) that are elsewhere linked to users and +// projects. +// +// Users and projects can have access to more than one visibility label. +// The +// effective visibility for multiple labels is the union of each +// label's +// elements, plus any unrestricted elements. +// +// If an element and its parents have no restrictions, visibility +// is +// unconditionally granted. +// +// Example: +// +// visibility: +// rules: +// - selector: google.calendar.Calendar.EnhancedSearch +// restriction: TRUSTED_TESTER +// - selector: google.calendar.Calendar.Delegate +// restriction: GOOGLE_INTERNAL +// +// Here, all methods are publicly visible except for the restricted +// methods +// EnhancedSearch and Delegate. +type Visibility struct { + // Rules: A list of visibility rules that apply to individual API + // elements. + // + // **NOTE:** All service configuration rules follow "last one wins" + // order. + Rules []*VisibilityRule `json:"rules,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Rules") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Rules") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *Visibility) MarshalJSON() ([]byte, error) { + type NoMethod Visibility + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// VisibilityRule: A visibility rule provides visibility configuration +// for an individual API +// element. +type VisibilityRule struct { + // Restriction: A comma-separated list of visibility labels that apply + // to the `selector`. + // Any of the listed labels can be used to grant the visibility. + // + // If a rule has multiple labels, removing one of the labels but not all + // of + // them can break clients. + // + // Example: + // + // visibility: + // rules: + // - selector: google.calendar.Calendar.EnhancedSearch + // restriction: GOOGLE_INTERNAL, TRUSTED_TESTER + // + // Removing GOOGLE_INTERNAL from this restriction will break clients + // that + // rely on this method and only had access to it through + // GOOGLE_INTERNAL. + Restriction string `json:"restriction,omitempty"` + + // Selector: Selects methods, messages, fields, enums, etc. to which + // this rule applies. + // + // Refer to selector for syntax details. + Selector string `json:"selector,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Restriction") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Restriction") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *VisibilityRule) MarshalJSON() ([]byte, error) { + type NoMethod VisibilityRule + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// method id "serviceusage.operations.cancel": + +type OperationsCancelCall struct { + s *Service + name string + canceloperationrequest *CancelOperationRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Cancel: Starts asynchronous cancellation on a long-running operation. +// The server +// makes a best effort to cancel the operation, but success is +// not +// guaranteed. If the server doesn't support this method, it +// returns +// `google.rpc.Code.UNIMPLEMENTED`. Clients can +// use +// Operations.GetOperation or +// other methods to check whether the cancellation succeeded or whether +// the +// operation completed despite cancellation. On successful +// cancellation, +// the operation is not deleted; instead, it becomes an operation +// with +// an Operation.error value with a google.rpc.Status.code of +// 1, +// corresponding to `Code.CANCELLED`. +func (r *OperationsService) Cancel(name string, canceloperationrequest *CancelOperationRequest) *OperationsCancelCall { + c := &OperationsCancelCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + c.canceloperationrequest = canceloperationrequest + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *OperationsCancelCall) Fields(s ...googleapi.Field) *OperationsCancelCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *OperationsCancelCall) Context(ctx context.Context) *OperationsCancelCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *OperationsCancelCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *OperationsCancelCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.canceloperationrequest) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}:cancel") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("POST", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "serviceusage.operations.cancel" call. +// Exactly one of *Empty or error will be non-nil. Any non-2xx status +// code is an error. Response headers are in either +// *Empty.ServerResponse.Header or (if a response was returned at all) +// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to +// check whether the returned error was because http.StatusNotModified +// was returned. +func (c *OperationsCancelCall) Do(opts ...googleapi.CallOption) (*Empty, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &Empty{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Starts asynchronous cancellation on a long-running operation. The server\nmakes a best effort to cancel the operation, but success is not\nguaranteed. If the server doesn't support this method, it returns\n`google.rpc.Code.UNIMPLEMENTED`. Clients can use\nOperations.GetOperation or\nother methods to check whether the cancellation succeeded or whether the\noperation completed despite cancellation. On successful cancellation,\nthe operation is not deleted; instead, it becomes an operation with\nan Operation.error value with a google.rpc.Status.code of 1,\ncorresponding to `Code.CANCELLED`.", + // "flatPath": "v1/operations/{operationsId}:cancel", + // "httpMethod": "POST", + // "id": "serviceusage.operations.cancel", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "The name of the operation resource to be cancelled.", + // "location": "path", + // "pattern": "^operations/.+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1/{+name}:cancel", + // "request": { + // "$ref": "CancelOperationRequest" + // }, + // "response": { + // "$ref": "Empty" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform", + // "https://www.googleapis.com/auth/service.management" + // ] + // } + +} + +// method id "serviceusage.operations.delete": + +type OperationsDeleteCall struct { + s *Service + name string + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Delete: Deletes a long-running operation. This method indicates that +// the client is +// no longer interested in the operation result. It does not cancel +// the +// operation. If the server doesn't support this method, it +// returns +// `google.rpc.Code.UNIMPLEMENTED`. +func (r *OperationsService) Delete(name string) *OperationsDeleteCall { + c := &OperationsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *OperationsDeleteCall) Fields(s ...googleapi.Field) *OperationsDeleteCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *OperationsDeleteCall) Context(ctx context.Context) *OperationsDeleteCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *OperationsDeleteCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *OperationsDeleteCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("DELETE", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "serviceusage.operations.delete" call. +// Exactly one of *Empty or error will be non-nil. Any non-2xx status +// code is an error. Response headers are in either +// *Empty.ServerResponse.Header or (if a response was returned at all) +// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to +// check whether the returned error was because http.StatusNotModified +// was returned. +func (c *OperationsDeleteCall) Do(opts ...googleapi.CallOption) (*Empty, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &Empty{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Deletes a long-running operation. This method indicates that the client is\nno longer interested in the operation result. It does not cancel the\noperation. If the server doesn't support this method, it returns\n`google.rpc.Code.UNIMPLEMENTED`.", + // "flatPath": "v1/operations/{operationsId}", + // "httpMethod": "DELETE", + // "id": "serviceusage.operations.delete", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "The name of the operation resource to be deleted.", + // "location": "path", + // "pattern": "^operations/.+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1/{+name}", + // "response": { + // "$ref": "Empty" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform", + // "https://www.googleapis.com/auth/service.management" + // ] + // } + +} + +// method id "serviceusage.operations.get": + +type OperationsGetCall struct { + s *Service + name string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// Get: Gets the latest state of a long-running operation. Clients can +// use this +// method to poll the operation result at intervals as recommended by +// the API +// service. +func (r *OperationsService) Get(name string) *OperationsGetCall { + c := &OperationsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *OperationsGetCall) Fields(s ...googleapi.Field) *OperationsGetCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// IfNoneMatch sets the optional parameter which makes the operation +// fail if the object's ETag matches the given value. This is useful for +// getting updates only after the object has changed since the last +// request. Use googleapi.IsNotModified to check whether the response +// error from Do is the result of In-None-Match. +func (c *OperationsGetCall) IfNoneMatch(entityTag string) *OperationsGetCall { + c.ifNoneMatch_ = entityTag + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *OperationsGetCall) Context(ctx context.Context) *OperationsGetCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *OperationsGetCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *OperationsGetCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + if c.ifNoneMatch_ != "" { + reqHeaders.Set("If-None-Match", c.ifNoneMatch_) + } + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("GET", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "serviceusage.operations.get" call. +// Exactly one of *Operation or error will be non-nil. Any non-2xx +// status code is an error. Response headers are in either +// *Operation.ServerResponse.Header or (if a response was returned at +// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified +// to check whether the returned error was because +// http.StatusNotModified was returned. +func (c *OperationsGetCall) Do(opts ...googleapi.CallOption) (*Operation, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &Operation{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Gets the latest state of a long-running operation. Clients can use this\nmethod to poll the operation result at intervals as recommended by the API\nservice.", + // "flatPath": "v1/operations/{operationsId}", + // "httpMethod": "GET", + // "id": "serviceusage.operations.get", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "The name of the operation resource.", + // "location": "path", + // "pattern": "^operations/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1/{+name}", + // "response": { + // "$ref": "Operation" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform", + // "https://www.googleapis.com/auth/service.management" + // ] + // } + +} + +// method id "serviceusage.operations.list": + +type OperationsListCall struct { + s *Service + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// List: Lists operations that match the specified filter in the +// request. If the +// server doesn't support this method, it returns +// `UNIMPLEMENTED`. +// +// NOTE: the `name` binding allows API services to override the +// binding +// to use different resource name schemes, such as `users/*/operations`. +// To +// override the binding, API services can add a binding such +// as +// "/v1/{name=users/*}/operations" to their service configuration. +// For backwards compatibility, the default name includes the +// operations +// collection id, however overriding users must ensure the name +// binding +// is the parent resource, without the operations collection id. +func (r *OperationsService) List() *OperationsListCall { + c := &OperationsListCall{s: r.s, urlParams_: make(gensupport.URLParams)} + return c +} + +// Filter sets the optional parameter "filter": The standard list +// filter. +func (c *OperationsListCall) Filter(filter string) *OperationsListCall { + c.urlParams_.Set("filter", filter) + return c +} + +// Name sets the optional parameter "name": The name of the operation's +// parent resource. +func (c *OperationsListCall) Name(name string) *OperationsListCall { + c.urlParams_.Set("name", name) + return c +} + +// PageSize sets the optional parameter "pageSize": The standard list +// page size. +func (c *OperationsListCall) PageSize(pageSize int64) *OperationsListCall { + c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) + return c +} + +// PageToken sets the optional parameter "pageToken": The standard list +// page token. +func (c *OperationsListCall) PageToken(pageToken string) *OperationsListCall { + c.urlParams_.Set("pageToken", pageToken) + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *OperationsListCall) Fields(s ...googleapi.Field) *OperationsListCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// IfNoneMatch sets the optional parameter which makes the operation +// fail if the object's ETag matches the given value. This is useful for +// getting updates only after the object has changed since the last +// request. Use googleapi.IsNotModified to check whether the response +// error from Do is the result of In-None-Match. +func (c *OperationsListCall) IfNoneMatch(entityTag string) *OperationsListCall { + c.ifNoneMatch_ = entityTag + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *OperationsListCall) Context(ctx context.Context) *OperationsListCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *OperationsListCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *OperationsListCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + if c.ifNoneMatch_ != "" { + reqHeaders.Set("If-None-Match", c.ifNoneMatch_) + } + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v1/operations") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("GET", urls, body) + req.Header = reqHeaders + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "serviceusage.operations.list" call. +// Exactly one of *ListOperationsResponse or error will be non-nil. Any +// non-2xx status code is an error. Response headers are in either +// *ListOperationsResponse.ServerResponse.Header or (if a response was +// returned at all) in error.(*googleapi.Error).Header. Use +// googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *OperationsListCall) Do(opts ...googleapi.CallOption) (*ListOperationsResponse, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &ListOperationsResponse{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Lists operations that match the specified filter in the request. If the\nserver doesn't support this method, it returns `UNIMPLEMENTED`.\n\nNOTE: the `name` binding allows API services to override the binding\nto use different resource name schemes, such as `users/*/operations`. To\noverride the binding, API services can add a binding such as\n`\"/v1/{name=users/*}/operations\"` to their service configuration.\nFor backwards compatibility, the default name includes the operations\ncollection id, however overriding users must ensure the name binding\nis the parent resource, without the operations collection id.", + // "flatPath": "v1/operations", + // "httpMethod": "GET", + // "id": "serviceusage.operations.list", + // "parameterOrder": [], + // "parameters": { + // "filter": { + // "description": "The standard list filter.", + // "location": "query", + // "type": "string" + // }, + // "name": { + // "description": "The name of the operation's parent resource.", + // "location": "query", + // "type": "string" + // }, + // "pageSize": { + // "description": "The standard list page size.", + // "format": "int32", + // "location": "query", + // "type": "integer" + // }, + // "pageToken": { + // "description": "The standard list page token.", + // "location": "query", + // "type": "string" + // } + // }, + // "path": "v1/operations", + // "response": { + // "$ref": "ListOperationsResponse" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform", + // "https://www.googleapis.com/auth/service.management" + // ] + // } + +} + +// Pages invokes f for each page of results. +// A non-nil error returned from f will halt the iteration. +// The provided context supersedes any context provided to the Context method. +func (c *OperationsListCall) Pages(ctx context.Context, f func(*ListOperationsResponse) error) error { + c.ctx_ = ctx + defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point + for { + x, err := c.Do() + if err != nil { + return err + } + if err := f(x); err != nil { + return err + } + if x.NextPageToken == "" { + return nil + } + c.PageToken(x.NextPageToken) + } +} + +// method id "serviceusage.services.disable": + +type ServicesDisableCall struct { + s *Service + name string + disableservicerequest *DisableServiceRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Disable: Disable a service so it can no longer be used with +// a +// project. This prevents unintended usage that may cause unexpected +// billing +// charges or security leaks. +// +// It is not valid to call the disable method on a service that is +// not +// currently enabled. Callers will receive a FAILED_PRECONDITION status +// if +// the target service is not currently enabled. +// +// Operation +func (r *ServicesService) Disable(name string, disableservicerequest *DisableServiceRequest) *ServicesDisableCall { + c := &ServicesDisableCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + c.disableservicerequest = disableservicerequest + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ServicesDisableCall) Fields(s ...googleapi.Field) *ServicesDisableCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ServicesDisableCall) Context(ctx context.Context) *ServicesDisableCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ServicesDisableCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ServicesDisableCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.disableservicerequest) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}:disable") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("POST", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "serviceusage.services.disable" call. +// Exactly one of *Operation or error will be non-nil. Any non-2xx +// status code is an error. Response headers are in either +// *Operation.ServerResponse.Header or (if a response was returned at +// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified +// to check whether the returned error was because +// http.StatusNotModified was returned. +func (c *ServicesDisableCall) Do(opts ...googleapi.CallOption) (*Operation, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &Operation{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Disable a service so it can no longer be used with a\nproject. This prevents unintended usage that may cause unexpected billing\ncharges or security leaks.\n\nIt is not valid to call the disable method on a service that is not\ncurrently enabled. Callers will receive a FAILED_PRECONDITION status if\nthe target service is not currently enabled.\n\nOperation\u003cresponse: google.protobuf.Empty\u003e", + // "flatPath": "v1/{v1Id}/{v1Id1}/services/{servicesId}:disable", + // "httpMethod": "POST", + // "id": "serviceusage.services.disable", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "Name of the consumer and service to disable the service on.\n\nThe enable and disable methods currently only support projects.\n\nAn example name would be:\nprojects/123/services/serviceusage.googleapis.com", + // "location": "path", + // "pattern": "^[^/]+/[^/]+/services/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1/{+name}:disable", + // "request": { + // "$ref": "DisableServiceRequest" + // }, + // "response": { + // "$ref": "Operation" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform", + // "https://www.googleapis.com/auth/service.management" + // ] + // } + +} + +// method id "serviceusage.services.enable": + +type ServicesEnableCall struct { + s *Service + name string + enableservicerequest *EnableServiceRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Enable: Enable a service so it can be used with a project. +// See [Cloud Auth Guide](https://cloud.google.com/docs/authentication) +// for +// more information. +// +// Operation +func (r *ServicesService) Enable(name string, enableservicerequest *EnableServiceRequest) *ServicesEnableCall { + c := &ServicesEnableCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + c.enableservicerequest = enableservicerequest + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ServicesEnableCall) Fields(s ...googleapi.Field) *ServicesEnableCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ServicesEnableCall) Context(ctx context.Context) *ServicesEnableCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ServicesEnableCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ServicesEnableCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.enableservicerequest) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}:enable") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("POST", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "serviceusage.services.enable" call. +// Exactly one of *Operation or error will be non-nil. Any non-2xx +// status code is an error. Response headers are in either +// *Operation.ServerResponse.Header or (if a response was returned at +// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified +// to check whether the returned error was because +// http.StatusNotModified was returned. +func (c *ServicesEnableCall) Do(opts ...googleapi.CallOption) (*Operation, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &Operation{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Enable a service so it can be used with a project.\nSee [Cloud Auth Guide](https://cloud.google.com/docs/authentication) for\nmore information.\n\nOperation\u003cresponse: google.protobuf.Empty\u003e", + // "flatPath": "v1/{v1Id}/{v1Id1}/services/{servicesId}:enable", + // "httpMethod": "POST", + // "id": "serviceusage.services.enable", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "Name of the consumer and service to enable the service on.\n\nThe enable and disable methods currently only support projects.\n\nEnabling a service requires that the service is public or is shared with\nthe user enabling the service.\n\nAn example name would be:\nprojects/123/services/serviceusage.googleapis.com", + // "location": "path", + // "pattern": "^[^/]+/[^/]+/services/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1/{+name}:enable", + // "request": { + // "$ref": "EnableServiceRequest" + // }, + // "response": { + // "$ref": "Operation" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform", + // "https://www.googleapis.com/auth/service.management" + // ] + // } + +} + +// method id "serviceusage.services.get": + +type ServicesGetCall struct { + s *Service + name string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// Get: Returns the service definition and EnabledState for a given +// service. +func (r *ServicesService) Get(name string) *ServicesGetCall { + c := &ServicesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ServicesGetCall) Fields(s ...googleapi.Field) *ServicesGetCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// IfNoneMatch sets the optional parameter which makes the operation +// fail if the object's ETag matches the given value. This is useful for +// getting updates only after the object has changed since the last +// request. Use googleapi.IsNotModified to check whether the response +// error from Do is the result of In-None-Match. +func (c *ServicesGetCall) IfNoneMatch(entityTag string) *ServicesGetCall { + c.ifNoneMatch_ = entityTag + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ServicesGetCall) Context(ctx context.Context) *ServicesGetCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ServicesGetCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ServicesGetCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + if c.ifNoneMatch_ != "" { + reqHeaders.Set("If-None-Match", c.ifNoneMatch_) + } + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("GET", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "serviceusage.services.get" call. +// Exactly one of *ServiceState or error will be non-nil. Any non-2xx +// status code is an error. Response headers are in either +// *ServiceState.ServerResponse.Header or (if a response was returned at +// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified +// to check whether the returned error was because +// http.StatusNotModified was returned. +func (c *ServicesGetCall) Do(opts ...googleapi.CallOption) (*ServiceState, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &ServiceState{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Returns the service definition and EnabledState for a given service.", + // "flatPath": "v1/{v1Id}/{v1Id1}/services/{servicesId}", + // "httpMethod": "GET", + // "id": "serviceusage.services.get", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "Name of the consumer and service to get the ConsumerState for.\n\nAn example name would be:\nprojects/123/services/serviceusage.googleapis.com", + // "location": "path", + // "pattern": "^[^/]+/[^/]+/services/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1/{+name}", + // "response": { + // "$ref": "ServiceState" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform", + // "https://www.googleapis.com/auth/cloud-platform.read-only" + // ] + // } + +} + +// method id "serviceusage.services.listEnabled": + +type ServicesListEnabledCall struct { + s *Service + parent string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// ListEnabled: List enabled services. +func (r *ServicesService) ListEnabled(parent string) *ServicesListEnabledCall { + c := &ServicesListEnabledCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.parent = parent + return c +} + +// PageSize sets the optional parameter "pageSize": Requested size of +// the next page of data. +func (c *ServicesListEnabledCall) PageSize(pageSize int64) *ServicesListEnabledCall { + c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) + return c +} + +// PageToken sets the optional parameter "pageToken": Token identifying +// which result to start with; returned by a previous list +// call. +func (c *ServicesListEnabledCall) PageToken(pageToken string) *ServicesListEnabledCall { + c.urlParams_.Set("pageToken", pageToken) + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ServicesListEnabledCall) Fields(s ...googleapi.Field) *ServicesListEnabledCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// IfNoneMatch sets the optional parameter which makes the operation +// fail if the object's ETag matches the given value. This is useful for +// getting updates only after the object has changed since the last +// request. Use googleapi.IsNotModified to check whether the response +// error from Do is the result of In-None-Match. +func (c *ServicesListEnabledCall) IfNoneMatch(entityTag string) *ServicesListEnabledCall { + c.ifNoneMatch_ = entityTag + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ServicesListEnabledCall) Context(ctx context.Context) *ServicesListEnabledCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ServicesListEnabledCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ServicesListEnabledCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + if c.ifNoneMatch_ != "" { + reqHeaders.Set("If-None-Match", c.ifNoneMatch_) + } + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/services:enabled") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("GET", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "parent": c.parent, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "serviceusage.services.listEnabled" call. +// Exactly one of *ListEnabledServicesResponse or error will be non-nil. +// Any non-2xx status code is an error. Response headers are in either +// *ListEnabledServicesResponse.ServerResponse.Header or (if a response +// was returned at all) in error.(*googleapi.Error).Header. Use +// googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *ServicesListEnabledCall) Do(opts ...googleapi.CallOption) (*ListEnabledServicesResponse, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &ListEnabledServicesResponse{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "List enabled services.", + // "flatPath": "v1/{v1Id}/{v1Id1}/services:enabled", + // "httpMethod": "GET", + // "id": "serviceusage.services.listEnabled", + // "parameterOrder": [ + // "parent" + // ], + // "parameters": { + // "pageSize": { + // "description": "Requested size of the next page of data.", + // "format": "int32", + // "location": "query", + // "type": "integer" + // }, + // "pageToken": { + // "description": "Token identifying which result to start with; returned by a previous list\ncall.", + // "location": "query", + // "type": "string" + // }, + // "parent": { + // "description": "Parent to search for services on.\n\nAn example name would be:\nprojects/123", + // "location": "path", + // "pattern": "^[^/]+/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1/{+parent}/services:enabled", + // "response": { + // "$ref": "ListEnabledServicesResponse" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform", + // "https://www.googleapis.com/auth/cloud-platform.read-only" + // ] + // } + +} + +// Pages invokes f for each page of results. +// A non-nil error returned from f will halt the iteration. +// The provided context supersedes any context provided to the Context method. +func (c *ServicesListEnabledCall) Pages(ctx context.Context, f func(*ListEnabledServicesResponse) error) error { + c.ctx_ = ctx + defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point + for { + x, err := c.Do() + if err != nil { + return err + } + if err := f(x); err != nil { + return err + } + if x.NextPageToken == "" { + return nil + } + c.PageToken(x.NextPageToken) + } +} + +// method id "serviceusage.services.search": + +type ServicesSearchCall struct { + s *Service + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// Search: Search available services. +// +// When no filter is specified, returns all accessible services. This +// includes +// public services and services for which the calling user has +// the +// "servicemanagement.services.bind" permission. +func (r *ServicesService) Search() *ServicesSearchCall { + c := &ServicesSearchCall{s: r.s, urlParams_: make(gensupport.URLParams)} + return c +} + +// PageSize sets the optional parameter "pageSize": Requested size of +// the next page of data. +func (c *ServicesSearchCall) PageSize(pageSize int64) *ServicesSearchCall { + c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) + return c +} + +// PageToken sets the optional parameter "pageToken": Token identifying +// which result to start with; returned by a previous search +// call. +func (c *ServicesSearchCall) PageToken(pageToken string) *ServicesSearchCall { + c.urlParams_.Set("pageToken", pageToken) + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ServicesSearchCall) Fields(s ...googleapi.Field) *ServicesSearchCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// IfNoneMatch sets the optional parameter which makes the operation +// fail if the object's ETag matches the given value. This is useful for +// getting updates only after the object has changed since the last +// request. Use googleapi.IsNotModified to check whether the response +// error from Do is the result of In-None-Match. +func (c *ServicesSearchCall) IfNoneMatch(entityTag string) *ServicesSearchCall { + c.ifNoneMatch_ = entityTag + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ServicesSearchCall) Context(ctx context.Context) *ServicesSearchCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ServicesSearchCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ServicesSearchCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + if c.ifNoneMatch_ != "" { + reqHeaders.Set("If-None-Match", c.ifNoneMatch_) + } + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v1/services:search") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("GET", urls, body) + req.Header = reqHeaders + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "serviceusage.services.search" call. +// Exactly one of *SearchServicesResponse or error will be non-nil. Any +// non-2xx status code is an error. Response headers are in either +// *SearchServicesResponse.ServerResponse.Header or (if a response was +// returned at all) in error.(*googleapi.Error).Header. Use +// googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *ServicesSearchCall) Do(opts ...googleapi.CallOption) (*SearchServicesResponse, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &SearchServicesResponse{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Search available services.\n\nWhen no filter is specified, returns all accessible services. This includes\npublic services and services for which the calling user has the\n\"servicemanagement.services.bind\" permission.", + // "flatPath": "v1/services:search", + // "httpMethod": "GET", + // "id": "serviceusage.services.search", + // "parameterOrder": [], + // "parameters": { + // "pageSize": { + // "description": "Requested size of the next page of data.", + // "format": "int32", + // "location": "query", + // "type": "integer" + // }, + // "pageToken": { + // "description": "Token identifying which result to start with; returned by a previous search\ncall.", + // "location": "query", + // "type": "string" + // } + // }, + // "path": "v1/services:search", + // "response": { + // "$ref": "SearchServicesResponse" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform", + // "https://www.googleapis.com/auth/cloud-platform.read-only" + // ] + // } + +} + +// Pages invokes f for each page of results. +// A non-nil error returned from f will halt the iteration. +// The provided context supersedes any context provided to the Context method. +func (c *ServicesSearchCall) Pages(ctx context.Context, f func(*SearchServicesResponse) error) error { + c.ctx_ = ctx + defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point + for { + x, err := c.Do() + if err != nil { + return err + } + if err := f(x); err != nil { + return err + } + if x.NextPageToken == "" { + return nil + } + c.PageToken(x.NextPageToken) + } +} diff --git a/vendor/google.golang.org/api/serviceusage/v1beta1/serviceusage-api.json b/vendor/google.golang.org/api/serviceusage/v1beta1/serviceusage-api.json new file mode 100644 index 000000000..cbf772769 --- /dev/null +++ b/vendor/google.golang.org/api/serviceusage/v1beta1/serviceusage-api.json @@ -0,0 +1,2178 @@ +{ + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/cloud-platform": { + "description": "View and manage your data across Google Cloud Platform services" + }, + "https://www.googleapis.com/auth/cloud-platform.read-only": { + "description": "View your data across Google Cloud Platform services" + }, + "https://www.googleapis.com/auth/service.management": { + "description": "Manage your Google API service configuration" + } + } + } + }, + "basePath": "", + "baseUrl": "https://serviceusage.googleapis.com/", + "batchPath": "batch", + "canonicalName": "Service Usage", + "description": "Enables services that service consumers want to use on Google Cloud Platform, lists the available or enabled services, or disables services that service consumers no longer use.", + "discoveryVersion": "v1", + "documentationLink": "https://cloud.google.com/service-usage/", + "fullyEncodeReservedExpansion": true, + "icons": { + "x16": "http://www.google.com/images/icons/product/search-16.gif", + "x32": "http://www.google.com/images/icons/product/search-32.gif" + }, + "id": "serviceusage:v1beta1", + "kind": "discovery#restDescription", + "name": "serviceusage", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "$.xgafv": { + "description": "V1 error format.", + "enum": [ + "1", + "2" + ], + "enumDescriptions": [ + "v1 error format", + "v2 error format" + ], + "location": "query", + "type": "string" + }, + "access_token": { + "description": "OAuth access token.", + "location": "query", + "type": "string" + }, + "alt": { + "default": "json", + "description": "Data format for response.", + "enum": [ + "json", + "media", + "proto" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json", + "Media download with context-dependent Content-Type", + "Responses with Content-Type of application/x-protobuf" + ], + "location": "query", + "type": "string" + }, + "bearer_token": { + "description": "OAuth bearer token.", + "location": "query", + "type": "string" + }, + "callback": { + "description": "JSONP", + "location": "query", + "type": "string" + }, + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "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.", + "location": "query", + "type": "string" + }, + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "pp": { + "default": "true", + "description": "Pretty-print response.", + "location": "query", + "type": "boolean" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", + "location": "query", + "type": "string" + }, + "uploadType": { + "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", + "location": "query", + "type": "string" + }, + "upload_protocol": { + "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", + "location": "query", + "type": "string" + } + }, + "protocol": "rest", + "resources": { + "operations": { + "methods": { + "get": { + "description": "Gets the latest state of a long-running operation. Clients can use this\nmethod to poll the operation result at intervals as recommended by the API\nservice.", + "flatPath": "v1beta1/operations/{operationsId}", + "httpMethod": "GET", + "id": "serviceusage.operations.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource.", + "location": "path", + "pattern": "^operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/service.management" + ] + }, + "list": { + "description": "Lists operations that match the specified filter in the request. If the\nserver doesn't support this method, it returns `UNIMPLEMENTED`.\n\nNOTE: the `name` binding allows API services to override the binding\nto use different resource name schemes, such as `users/*/operations`. To\noverride the binding, API services can add a binding such as\n`\"/v1/{name=users/*}/operations\"` to their service configuration.\nFor backwards compatibility, the default name includes the operations\ncollection id, however overriding users must ensure the name binding\nis the parent resource, without the operations collection id.", + "flatPath": "v1beta1/operations", + "httpMethod": "GET", + "id": "serviceusage.operations.list", + "parameterOrder": [], + "parameters": { + "filter": { + "description": "The standard list filter.", + "location": "query", + "type": "string" + }, + "name": { + "description": "The name of the operation's parent resource.", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "The standard list page size.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "The standard list page token.", + "location": "query", + "type": "string" + } + }, + "path": "v1beta1/operations", + "response": { + "$ref": "ListOperationsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/service.management" + ] + } + } + }, + "services": { + "methods": { + "batchEnable": { + "description": "Enable multiple services on a project. The operation is atomic: if enabling\nany service fails, then the entire batch fails, and no state changes occur.\n\nOperation\u003cresponse: google.protobuf.Empty\u003e", + "flatPath": "v1beta1/{v1beta1Id}/{v1beta1Id1}/services:batchEnable", + "httpMethod": "POST", + "id": "serviceusage.services.batchEnable", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Parent to enable services on.\n\nAn example name would be:\n`projects/123`\nwhere `123` is the project number (not project ID).\n\nThe `BatchEnableServices` method currently only supports projects.", + "location": "path", + "pattern": "^[^/]+/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+parent}/services:batchEnable", + "request": { + "$ref": "BatchEnableServicesRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/service.management" + ] + }, + "disable": { + "description": "Disable a service so that it can no longer be used with a project.\nThis prevents unintended usage that may cause unexpected billing\ncharges or security leaks.\n\nIt is not valid to call the disable method on a service that is not\ncurrently enabled. Callers will receive a `FAILED_PRECONDITION` status if\nthe target service is not currently enabled.\n\nOperation\u003cresponse: google.protobuf.Empty\u003e", + "flatPath": "v1beta1/{v1beta1Id}/{v1beta1Id1}/services/{servicesId}:disable", + "httpMethod": "POST", + "id": "serviceusage.services.disable", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Name of the consumer and service to disable the service on.\n\nThe enable and disable methods currently only support projects.\n\nAn example name would be:\n`projects/123/services/serviceusage.googleapis.com`\nwhere `123` is the project number (not project ID).", + "location": "path", + "pattern": "^[^/]+/[^/]+/services/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}:disable", + "request": { + "$ref": "DisableServiceRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/service.management" + ] + }, + "enable": { + "description": "Enable a service so that it can be used with a project.\n\nOperation\u003cresponse: google.protobuf.Empty\u003e", + "flatPath": "v1beta1/{v1beta1Id}/{v1beta1Id1}/services/{servicesId}:enable", + "httpMethod": "POST", + "id": "serviceusage.services.enable", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Name of the consumer and service to enable the service on.\n\nThe `EnableService` and `DisableService` methods currently only support\nprojects.\n\nEnabling a service requires that the service is public or is shared with\nthe user enabling the service.\n\nAn example name would be:\n`projects/123/services/serviceusage.googleapis.com`\nwhere `123` is the project number (not project ID).", + "location": "path", + "pattern": "^[^/]+/[^/]+/services/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}:enable", + "request": { + "$ref": "EnableServiceRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/service.management" + ] + }, + "get": { + "description": "Returns the service configuration and enabled state for a given service.", + "flatPath": "v1beta1/{v1beta1Id}/{v1beta1Id1}/services/{servicesId}", + "httpMethod": "GET", + "id": "serviceusage.services.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Name of the consumer and service to get the `ConsumerState` for.\n\nAn example name would be:\n`projects/123/services/serviceusage.googleapis.com`\nwhere `123` is the project number (not project ID).", + "location": "path", + "pattern": "^[^/]+/[^/]+/services/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "response": { + "$ref": "Service" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + }, + "list": { + "description": "List all services available to the specified project, and the current\nstate of those services with respect to the project. The list includes\nall public services, all services for which the calling user has the\n`servicemanagement.services.bind` permission, and all services that have\nalready been enabled on the project. The list can be filtered to\nonly include services in a specific state, for example to only include\nservices enabled on the project.", + "flatPath": "v1beta1/{v1beta1Id}/{v1beta1Id1}/services", + "httpMethod": "GET", + "id": "serviceusage.services.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "filter": { + "description": "Only list services that conform to the given filter.\nThe allowed filter strings are `state:ENABLED` and `state:DISABLED`.", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "Requested size of the next page of data.\nRequested page size cannot exceed 200.\n If not set, the default page size is 50.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Token identifying which result to start with, which is returned by a\nprevious list call.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Parent to search for services on.\n\nAn example name would be:\n`projects/123`\nwhere `123` is the project number (not project ID).", + "location": "path", + "pattern": "^[^/]+/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+parent}/services", + "response": { + "$ref": "ListServicesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + } + } + } + }, + "revision": "20180322", + "rootUrl": "https://serviceusage.googleapis.com/", + "schemas": { + "Api": { + "description": "Api is a light-weight descriptor for an API Interface.\n\nInterfaces are also described as \"protocol buffer services\" in some contexts,\nsuch as by the \"service\" keyword in a .proto file, but they are different\nfrom API Services, which represent a concrete implementation of an interface\nas opposed to simply a description of methods and bindings. They are also\nsometimes simply referred to as \"APIs\" in other contexts, such as the name of\nthis message itself. See https://cloud.google.com/apis/design/glossary for\ndetailed terminology.", + "id": "Api", + "properties": { + "methods": { + "description": "The methods of this interface, in unspecified order.", + "items": { + "$ref": "Method" + }, + "type": "array" + }, + "mixins": { + "description": "Included interfaces. See Mixin.", + "items": { + "$ref": "Mixin" + }, + "type": "array" + }, + "name": { + "description": "The fully qualified name of this interface, including package name\nfollowed by the interface's simple name.", + "type": "string" + }, + "options": { + "description": "Any metadata attached to the interface.", + "items": { + "$ref": "Option" + }, + "type": "array" + }, + "sourceContext": { + "$ref": "SourceContext", + "description": "Source context for the protocol buffer service represented by this\nmessage." + }, + "syntax": { + "description": "The source syntax of the service.", + "enum": [ + "SYNTAX_PROTO2", + "SYNTAX_PROTO3" + ], + "enumDescriptions": [ + "Syntax `proto2`.", + "Syntax `proto3`." + ], + "type": "string" + }, + "version": { + "description": "A version string for this interface. If specified, must have the form\n`major-version.minor-version`, as in `1.10`. If the minor version is\nomitted, it defaults to zero. If the entire version field is empty, the\nmajor version is derived from the package name, as outlined below. If the\nfield is not empty, the version in the package name will be verified to be\nconsistent with what is provided here.\n\nThe versioning schema uses [semantic\nversioning](http://semver.org) where the major version number\nindicates a breaking change and the minor version an additive,\nnon-breaking change. Both version numbers are signals to users\nwhat to expect from different versions, and should be carefully\nchosen based on the product plan.\n\nThe major version is also reflected in the package name of the\ninterface, which must end in `v\u003cmajor-version\u003e`, as in\n`google.feature.v1`. For major versions 0 and 1, the suffix can\nbe omitted. Zero major versions must only be used for\nexperimental, non-GA interfaces.\n", + "type": "string" + } + }, + "type": "object" + }, + "AuthProvider": { + "description": "Configuration for an anthentication provider, including support for\n[JSON Web Token (JWT)](https://tools.ietf.org/html/draft-ietf-oauth-json-web-token-32).", + "id": "AuthProvider", + "properties": { + "audiences": { + "description": "The list of JWT\n[audiences](https://tools.ietf.org/html/draft-ietf-oauth-json-web-token-32#section-4.1.3).\nthat are allowed to access. A JWT containing any of these audiences will\nbe accepted. When this setting is absent, only JWTs with audience\n\"https://Service_name/API_name\"\nwill be accepted. For example, if no audiences are in the setting,\nLibraryService API will only accept JWTs with the following audience\n\"https://library-example.googleapis.com/google.example.library.v1.LibraryService\".\n\nExample:\n\n audiences: bookstore_android.apps.googleusercontent.com,\n bookstore_web.apps.googleusercontent.com", + "type": "string" + }, + "authorizationUrl": { + "description": "Redirect URL if JWT token is required but no present or is expired.\nImplement authorizationUrl of securityDefinitions in OpenAPI spec.", + "type": "string" + }, + "id": { + "description": "The unique identifier of the auth provider. It will be referred to by\n`AuthRequirement.provider_id`.\n\nExample: \"bookstore_auth\".", + "type": "string" + }, + "issuer": { + "description": "Identifies the principal that issued the JWT. See\nhttps://tools.ietf.org/html/draft-ietf-oauth-json-web-token-32#section-4.1.1\nUsually a URL or an email address.\n\nExample: https://securetoken.google.com\nExample: 1234567-compute@developer.gserviceaccount.com", + "type": "string" + }, + "jwksUri": { + "description": "URL of the provider's public key set to validate signature of the JWT. See\n[OpenID Discovery](https://openid.net/specs/openid-connect-discovery-1_0.html#ProviderMetadata).\nOptional if the key set document:\n - can be retrieved from\n [OpenID Discovery](https://openid.net/specs/openid-connect-discovery-1_0.html\n of the issuer.\n - can be inferred from the email domain of the issuer (e.g. a Google service account).\n\nExample: https://www.googleapis.com/oauth2/v1/certs", + "type": "string" + } + }, + "type": "object" + }, + "AuthRequirement": { + "description": "User-defined authentication requirements, including support for\n[JSON Web Token (JWT)](https://tools.ietf.org/html/draft-ietf-oauth-json-web-token-32).", + "id": "AuthRequirement", + "properties": { + "audiences": { + "description": "NOTE: This will be deprecated soon, once AuthProvider.audiences is\nimplemented and accepted in all the runtime components.\n\nThe list of JWT\n[audiences](https://tools.ietf.org/html/draft-ietf-oauth-json-web-token-32#section-4.1.3).\nthat are allowed to access. A JWT containing any of these audiences will\nbe accepted. When this setting is absent, only JWTs with audience\n\"https://Service_name/API_name\"\nwill be accepted. For example, if no audiences are in the setting,\nLibraryService API will only accept JWTs with the following audience\n\"https://library-example.googleapis.com/google.example.library.v1.LibraryService\".\n\nExample:\n\n audiences: bookstore_android.apps.googleusercontent.com,\n bookstore_web.apps.googleusercontent.com", + "type": "string" + }, + "providerId": { + "description": "id from authentication provider.\n\nExample:\n\n provider_id: bookstore_auth", + "type": "string" + } + }, + "type": "object" + }, + "Authentication": { + "description": "`Authentication` defines the authentication configuration for an API.\n\nExample for an API targeted for external use:\n\n name: calendar.googleapis.com\n authentication:\n providers:\n - id: google_calendar_auth\n jwks_uri: https://www.googleapis.com/oauth2/v1/certs\n issuer: https://securetoken.google.com\n rules:\n - selector: \"*\"\n requirements:\n provider_id: google_calendar_auth", + "id": "Authentication", + "properties": { + "providers": { + "description": "Defines a set of authentication providers that a service supports.", + "items": { + "$ref": "AuthProvider" + }, + "type": "array" + }, + "rules": { + "description": "A list of authentication rules that apply to individual API methods.\n\n**NOTE:** All service configuration rules follow \"last one wins\" order.", + "items": { + "$ref": "AuthenticationRule" + }, + "type": "array" + } + }, + "type": "object" + }, + "AuthenticationRule": { + "description": "Authentication rules for the service.\n\nBy default, if a method has any authentication requirements, every request\nmust include a valid credential matching one of the requirements.\nIt's an error to include more than one kind of credential in a single\nrequest.\n\nIf a method doesn't have any auth requirements, request credentials will be\nignored.", + "id": "AuthenticationRule", + "properties": { + "allowWithoutCredential": { + "description": "Whether to allow requests without a credential. The credential can be\nan OAuth token, Google cookies (first-party auth) or EndUserCreds.\n\nFor requests without credentials, if the service control environment is\nspecified, each incoming request **must** be associated with a service\nconsumer. This can be done by passing an API key that belongs to a consumer\nproject.", + "type": "boolean" + }, + "customAuth": { + "$ref": "CustomAuthRequirements", + "description": "Configuration for custom authentication." + }, + "oauth": { + "$ref": "OAuthRequirements", + "description": "The requirements for OAuth credentials." + }, + "requirements": { + "description": "Requirements for additional authentication providers.", + "items": { + "$ref": "AuthRequirement" + }, + "type": "array" + }, + "selector": { + "description": "Selects the methods to which this rule applies.\n\nRefer to selector for syntax details.", + "type": "string" + } + }, + "type": "object" + }, + "AuthorizationConfig": { + "description": "Configuration of authorization.\n\nThis section determines the authorization provider, if unspecified, then no\nauthorization check will be done.\n\nExample:\n\n experimental:\n authorization:\n provider: firebaserules.googleapis.com", + "id": "AuthorizationConfig", + "properties": { + "provider": { + "description": "The name of the authorization provider, such as\nfirebaserules.googleapis.com.", + "type": "string" + } + }, + "type": "object" + }, + "AuthorizationRule": { + "description": "Authorization rule for API services.\n\nIt specifies the permission(s) required for an API element for the overall\nAPI request to succeed. It is typically used to mark request message fields\nthat contain the name of the resource and indicates the permissions that\nwill be checked on that resource.\n\nFor example:\n\n package google.storage.v1;\n\n message CopyObjectRequest {\n string source = 1 [\n (google.api.authz).permissions = \"storage.objects.get\"];\n\n string destination = 2 [\n (google.api.authz).permissions =\n \"storage.objects.create,storage.objects.update\"];\n }", + "id": "AuthorizationRule", + "properties": { + "permissions": { + "description": "The required permissions. The acceptable values vary depend on the\nauthorization system used. For Google APIs, it should be a comma-separated\nGoogle IAM permission values. When multiple permissions are listed, the\nsemantics is not defined by the system. Additional documentation must\nbe provided manually.", + "type": "string" + }, + "selector": { + "description": "Selects the API elements to which this rule applies.\n\nRefer to selector for syntax details.", + "type": "string" + } + }, + "type": "object" + }, + "Backend": { + "description": "`Backend` defines the backend configuration for a service.", + "id": "Backend", + "properties": { + "rules": { + "description": "A list of API backend rules that apply to individual API methods.\n\n**NOTE:** All service configuration rules follow \"last one wins\" order.", + "items": { + "$ref": "BackendRule" + }, + "type": "array" + } + }, + "type": "object" + }, + "BackendRule": { + "description": "A backend rule provides configuration for an individual API element.", + "id": "BackendRule", + "properties": { + "address": { + "description": "The address of the API backend.", + "type": "string" + }, + "deadline": { + "description": "The number of seconds to wait for a response from a request. The default\ndeadline for gRPC is infinite (no deadline) and HTTP requests is 5 seconds.", + "format": "double", + "type": "number" + }, + "minDeadline": { + "description": "Minimum deadline in seconds needed for this method. Calls having deadline\nvalue lower than this will be rejected.", + "format": "double", + "type": "number" + }, + "selector": { + "description": "Selects the methods to which this rule applies.\n\nRefer to selector for syntax details.", + "type": "string" + } + }, + "type": "object" + }, + "BatchEnableServicesRequest": { + "description": "Request message for the `BatchEnableServices` method.", + "id": "BatchEnableServicesRequest", + "properties": { + "serviceIds": { + "description": "The identifiers of the services to enable on the project.\n\nA valid identifier would be:\nserviceusage.googleapis.com\n\nEnabling services requires that each service is public or is shared with\nthe user enabling the service.\n\nTwo or more services must be specified. To enable a single service,\nuse the `EnableService` method instead.\n\nA single request can enable a maximum of 20 services at a time. If more\nthan 20 services are specified, the request will fail, and no state changes\nwill occur.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "Billing": { + "description": "Billing related configuration of the service.\n\nThe following example shows how to configure monitored resources and metrics\nfor billing:\n\n monitored_resources:\n - type: library.googleapis.com/branch\n labels:\n - key: /city\n description: The city where the library branch is located in.\n - key: /name\n description: The name of the branch.\n metrics:\n - name: library.googleapis.com/book/borrowed_count\n metric_kind: DELTA\n value_type: INT64\n billing:\n consumer_destinations:\n - monitored_resource: library.googleapis.com/branch\n metrics:\n - library.googleapis.com/book/borrowed_count", + "id": "Billing", + "properties": { + "consumerDestinations": { + "description": "Billing configurations for sending metrics to the consumer project.\nThere can be multiple consumer destinations per service, each one must have\na different monitored resource type. A metric can be used in at most\none consumer destination.", + "items": { + "$ref": "BillingDestination" + }, + "type": "array" + } + }, + "type": "object" + }, + "BillingDestination": { + "description": "Configuration of a specific billing destination (Currently only support\nbill against consumer project).", + "id": "BillingDestination", + "properties": { + "metrics": { + "description": "Names of the metrics to report to this billing destination.\nEach name must be defined in Service.metrics section.", + "items": { + "type": "string" + }, + "type": "array" + }, + "monitoredResource": { + "description": "The monitored resource type. The type must be defined in\nService.monitored_resources section.", + "type": "string" + } + }, + "type": "object" + }, + "Context": { + "description": "`Context` defines which contexts an API requests.\n\nExample:\n\n context:\n rules:\n - selector: \"*\"\n requested:\n - google.rpc.context.ProjectContext\n - google.rpc.context.OriginContext\n\nThe above specifies that all methods in the API request\n`google.rpc.context.ProjectContext` and\n`google.rpc.context.OriginContext`.\n\nAvailable context types are defined in package\n`google.rpc.context`.\n\nThis also provides mechanism to whitelist any protobuf message extension that\ncan be sent in grpc metadata using “x-goog-ext-\u003cextension_id\u003e-bin” and\n“x-goog-ext-\u003cextension_id\u003e-jspb” format. For example, list any service\nspecific protobuf types that can appear in grpc metadata as follows in your\nyaml file:\n\nExample:\n\n context:\n rules:\n - selector: \"google.example.library.v1.LibraryService.CreateBook\"\n allowed_request_extensions:\n - google.foo.v1.NewExtension\n allowed_response_extensions:\n - google.foo.v1.NewExtension\n\nYou can also specify extension ID instead of fully qualified extension name\nhere.", + "id": "Context", + "properties": { + "rules": { + "description": "A list of RPC context rules that apply to individual API methods.\n\n**NOTE:** All service configuration rules follow \"last one wins\" order.", + "items": { + "$ref": "ContextRule" + }, + "type": "array" + } + }, + "type": "object" + }, + "ContextRule": { + "description": "A context rule provides information about the context for an individual API\nelement.", + "id": "ContextRule", + "properties": { + "allowedRequestExtensions": { + "description": "A list of full type names or extension IDs of extensions allowed in grpc\nside channel from client to backend.", + "items": { + "type": "string" + }, + "type": "array" + }, + "allowedResponseExtensions": { + "description": "A list of full type names or extension IDs of extensions allowed in grpc\nside channel from backend to client.", + "items": { + "type": "string" + }, + "type": "array" + }, + "provided": { + "description": "A list of full type names of provided contexts.", + "items": { + "type": "string" + }, + "type": "array" + }, + "requested": { + "description": "A list of full type names of requested contexts.", + "items": { + "type": "string" + }, + "type": "array" + }, + "selector": { + "description": "Selects the methods to which this rule applies.\n\nRefer to selector for syntax details.", + "type": "string" + } + }, + "type": "object" + }, + "Control": { + "description": "Selects and configures the service controller used by the service. The\nservice controller handles features like abuse, quota, billing, logging,\nmonitoring, etc.", + "id": "Control", + "properties": { + "environment": { + "description": "The service control environment to use. If empty, no control plane\nfeature (like quota and billing) will be enabled.", + "type": "string" + } + }, + "type": "object" + }, + "CustomAuthRequirements": { + "description": "Configuration for a custom authentication provider.", + "id": "CustomAuthRequirements", + "properties": { + "provider": { + "description": "A configuration string containing connection information for the\nauthentication provider, typically formatted as a SmartService string\n(go/smartservice).", + "type": "string" + } + }, + "type": "object" + }, + "CustomError": { + "description": "Customize service error responses. For example, list any service\nspecific protobuf types that can appear in error detail lists of\nerror responses.\n\nExample:\n\n custom_error:\n types:\n - google.foo.v1.CustomError\n - google.foo.v1.AnotherError", + "id": "CustomError", + "properties": { + "rules": { + "description": "The list of custom error rules that apply to individual API messages.\n\n**NOTE:** All service configuration rules follow \"last one wins\" order.", + "items": { + "$ref": "CustomErrorRule" + }, + "type": "array" + }, + "types": { + "description": "The list of custom error detail types, e.g. 'google.foo.v1.CustomError'.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "CustomErrorRule": { + "description": "A custom error rule.", + "id": "CustomErrorRule", + "properties": { + "isErrorType": { + "description": "Mark this message as possible payload in error response. Otherwise,\nobjects of this type will be filtered when they appear in error payload.", + "type": "boolean" + }, + "selector": { + "description": "Selects messages to which this rule applies.\n\nRefer to selector for syntax details.", + "type": "string" + } + }, + "type": "object" + }, + "CustomHttpPattern": { + "description": "A custom pattern is used for defining custom HTTP verb.", + "id": "CustomHttpPattern", + "properties": { + "kind": { + "description": "The name of this custom HTTP verb.", + "type": "string" + }, + "path": { + "description": "The path matched by this custom verb.", + "type": "string" + } + }, + "type": "object" + }, + "DisableServiceRequest": { + "description": "Request message for the `DisableService` method.", + "id": "DisableServiceRequest", + "properties": {}, + "type": "object" + }, + "Documentation": { + "description": "`Documentation` provides the information for describing a service.\n\nExample:\n\u003cpre\u003e\u003ccode\u003edocumentation:\n summary: \u003e\n The Google Calendar API gives access\n to most calendar features.\n pages:\n - name: Overview\n content: \u0026#40;== include google/foo/overview.md ==\u0026#41;\n - name: Tutorial\n content: \u0026#40;== include google/foo/tutorial.md ==\u0026#41;\n subpages;\n - name: Java\n content: \u0026#40;== include google/foo/tutorial_java.md ==\u0026#41;\n rules:\n - selector: google.calendar.Calendar.Get\n description: \u003e\n ...\n - selector: google.calendar.Calendar.Put\n description: \u003e\n ...\n\u003c/code\u003e\u003c/pre\u003e\nDocumentation is provided in markdown syntax. In addition to\nstandard markdown features, definition lists, tables and fenced\ncode blocks are supported. Section headers can be provided and are\ninterpreted relative to the section nesting of the context where\na documentation fragment is embedded.\n\nDocumentation from the IDL is merged with documentation defined\nvia the config at normalization time, where documentation provided\nby config rules overrides IDL provided.\n\nA number of constructs specific to the API platform are supported\nin documentation text.\n\nIn order to reference a proto element, the following\nnotation can be used:\n\u003cpre\u003e\u003ccode\u003e\u0026#91;fully.qualified.proto.name]\u0026#91;]\u003c/code\u003e\u003c/pre\u003e\nTo override the display text used for the link, this can be used:\n\u003cpre\u003e\u003ccode\u003e\u0026#91;display text]\u0026#91;fully.qualified.proto.name]\u003c/code\u003e\u003c/pre\u003e\nText can be excluded from doc using the following notation:\n\u003cpre\u003e\u003ccode\u003e\u0026#40;-- internal comment --\u0026#41;\u003c/code\u003e\u003c/pre\u003e\n\nA few directives are available in documentation. Note that\ndirectives must appear on a single line to be properly\nidentified. The `include` directive includes a markdown file from\nan external source:\n\u003cpre\u003e\u003ccode\u003e\u0026#40;== include path/to/file ==\u0026#41;\u003c/code\u003e\u003c/pre\u003e\nThe `resource_for` directive marks a message to be the resource of\na collection in REST view. If it is not specified, tools attempt\nto infer the resource from the operations in a collection:\n\u003cpre\u003e\u003ccode\u003e\u0026#40;== resource_for v1.shelves.books ==\u0026#41;\u003c/code\u003e\u003c/pre\u003e\nThe directive `suppress_warning` does not directly affect documentation\nand is documented together with service config validation.", + "id": "Documentation", + "properties": { + "documentationRootUrl": { + "description": "The URL to the root of documentation.", + "type": "string" + }, + "overview": { + "description": "Declares a single overview page. For example:\n\u003cpre\u003e\u003ccode\u003edocumentation:\n summary: ...\n overview: \u0026#40;== include overview.md ==\u0026#41;\n\u003c/code\u003e\u003c/pre\u003e\nThis is a shortcut for the following declaration (using pages style):\n\u003cpre\u003e\u003ccode\u003edocumentation:\n summary: ...\n pages:\n - name: Overview\n content: \u0026#40;== include overview.md ==\u0026#41;\n\u003c/code\u003e\u003c/pre\u003e\nNote: you cannot specify both `overview` field and `pages` field.", + "type": "string" + }, + "pages": { + "description": "The top level pages for the documentation set.", + "items": { + "$ref": "Page" + }, + "type": "array" + }, + "rules": { + "description": "A list of documentation rules that apply to individual API elements.\n\n**NOTE:** All service configuration rules follow \"last one wins\" order.", + "items": { + "$ref": "DocumentationRule" + }, + "type": "array" + }, + "summary": { + "description": "A short summary of what the service does. Can only be provided by\nplain text.", + "type": "string" + } + }, + "type": "object" + }, + "DocumentationRule": { + "description": "A documentation rule provides information about individual API elements.", + "id": "DocumentationRule", + "properties": { + "deprecationDescription": { + "description": "Deprecation description of the selected element(s). It can be provided if an\nelement is marked as `deprecated`.", + "type": "string" + }, + "description": { + "description": "Description of the selected API(s).", + "type": "string" + }, + "selector": { + "description": "The selector is a comma-separated list of patterns. Each pattern is a\nqualified name of the element which may end in \"*\", indicating a wildcard.\nWildcards are only allowed at the end and for a whole component of the\nqualified name, i.e. \"foo.*\" is ok, but not \"foo.b*\" or \"foo.*.bar\". To\nspecify a default for all applicable elements, the whole pattern \"*\"\nis used.", + "type": "string" + } + }, + "type": "object" + }, + "EnableServiceRequest": { + "description": "Request message for the `EnableService` method.", + "id": "EnableServiceRequest", + "properties": {}, + "type": "object" + }, + "Endpoint": { + "description": "`Endpoint` describes a network endpoint that serves a set of APIs.\nA service may expose any number of endpoints, and all endpoints share the\nsame service configuration, such as quota configuration and monitoring\nconfiguration.\n\nExample service configuration:\n\n name: library-example.googleapis.com\n endpoints:\n # Below entry makes 'google.example.library.v1.Library'\n # API be served from endpoint address library-example.googleapis.com.\n # It also allows HTTP OPTIONS calls to be passed to the backend, for\n # it to decide whether the subsequent cross-origin request is\n # allowed to proceed.\n - name: library-example.googleapis.com\n allow_cors: true", + "id": "Endpoint", + "properties": { + "aliases": { + "description": "DEPRECATED: This field is no longer supported. Instead of using aliases,\nplease specify multiple google.api.Endpoint for each of the intended\naliases.\n\nAdditional names that this endpoint will be hosted on.", + "items": { + "type": "string" + }, + "type": "array" + }, + "allowCors": { + "description": "Allowing\n[CORS](https://en.wikipedia.org/wiki/Cross-origin_resource_sharing), aka\ncross-domain traffic, would allow the backends served from this endpoint to\nreceive and respond to HTTP OPTIONS requests. The response will be used by\nthe browser to determine whether the subsequent cross-origin request is\nallowed to proceed.", + "type": "boolean" + }, + "features": { + "description": "The list of features enabled on this endpoint.", + "items": { + "type": "string" + }, + "type": "array" + }, + "name": { + "description": "The canonical name of this endpoint.", + "type": "string" + }, + "target": { + "description": "The specification of an Internet routable address of API frontend that will\nhandle requests to this [API Endpoint](https://cloud.google.com/apis/design/glossary).\nIt should be either a valid IPv4 address or a fully-qualified domain name.\nFor example, \"8.8.8.8\" or \"myservice.appspot.com\".", + "type": "string" + } + }, + "type": "object" + }, + "Enum": { + "description": "Enum type definition.", + "id": "Enum", + "properties": { + "enumvalue": { + "description": "Enum value definitions.", + "items": { + "$ref": "EnumValue" + }, + "type": "array" + }, + "name": { + "description": "Enum type name.", + "type": "string" + }, + "options": { + "description": "Protocol buffer options.", + "items": { + "$ref": "Option" + }, + "type": "array" + }, + "sourceContext": { + "$ref": "SourceContext", + "description": "The source context." + }, + "syntax": { + "description": "The source syntax.", + "enum": [ + "SYNTAX_PROTO2", + "SYNTAX_PROTO3" + ], + "enumDescriptions": [ + "Syntax `proto2`.", + "Syntax `proto3`." + ], + "type": "string" + } + }, + "type": "object" + }, + "EnumValue": { + "description": "Enum value definition.", + "id": "EnumValue", + "properties": { + "name": { + "description": "Enum value name.", + "type": "string" + }, + "number": { + "description": "Enum value number.", + "format": "int32", + "type": "integer" + }, + "options": { + "description": "Protocol buffer options.", + "items": { + "$ref": "Option" + }, + "type": "array" + } + }, + "type": "object" + }, + "Experimental": { + "description": "Experimental service configuration. These configuration options can\nonly be used by whitelisted users.", + "id": "Experimental", + "properties": { + "authorization": { + "$ref": "AuthorizationConfig", + "description": "Authorization configuration." + } + }, + "type": "object" + }, + "Field": { + "description": "A single field of a message type.", + "id": "Field", + "properties": { + "cardinality": { + "description": "The field cardinality.", + "enum": [ + "CARDINALITY_UNKNOWN", + "CARDINALITY_OPTIONAL", + "CARDINALITY_REQUIRED", + "CARDINALITY_REPEATED" + ], + "enumDescriptions": [ + "For fields with unknown cardinality.", + "For optional fields.", + "For required fields. Proto2 syntax only.", + "For repeated fields." + ], + "type": "string" + }, + "defaultValue": { + "description": "The string value of the default value of this field. Proto2 syntax only.", + "type": "string" + }, + "jsonName": { + "description": "The field JSON name.", + "type": "string" + }, + "kind": { + "description": "The field type.", + "enum": [ + "TYPE_UNKNOWN", + "TYPE_DOUBLE", + "TYPE_FLOAT", + "TYPE_INT64", + "TYPE_UINT64", + "TYPE_INT32", + "TYPE_FIXED64", + "TYPE_FIXED32", + "TYPE_BOOL", + "TYPE_STRING", + "TYPE_GROUP", + "TYPE_MESSAGE", + "TYPE_BYTES", + "TYPE_UINT32", + "TYPE_ENUM", + "TYPE_SFIXED32", + "TYPE_SFIXED64", + "TYPE_SINT32", + "TYPE_SINT64" + ], + "enumDescriptions": [ + "Field type unknown.", + "Field type double.", + "Field type float.", + "Field type int64.", + "Field type uint64.", + "Field type int32.", + "Field type fixed64.", + "Field type fixed32.", + "Field type bool.", + "Field type string.", + "Field type group. Proto2 syntax only, and deprecated.", + "Field type message.", + "Field type bytes.", + "Field type uint32.", + "Field type enum.", + "Field type sfixed32.", + "Field type sfixed64.", + "Field type sint32.", + "Field type sint64." + ], + "type": "string" + }, + "name": { + "description": "The field name.", + "type": "string" + }, + "number": { + "description": "The field number.", + "format": "int32", + "type": "integer" + }, + "oneofIndex": { + "description": "The index of the field type in `Type.oneofs`, for message or enumeration\ntypes. The first type has index 1; zero means the type is not in the list.", + "format": "int32", + "type": "integer" + }, + "options": { + "description": "The protocol buffer options.", + "items": { + "$ref": "Option" + }, + "type": "array" + }, + "packed": { + "description": "Whether to use alternative packed wire representation.", + "type": "boolean" + }, + "typeUrl": { + "description": "The field type URL, without the scheme, for message or enumeration\ntypes. Example: `\"type.googleapis.com/google.protobuf.Timestamp\"`.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleApiService": { + "description": "`Service` is the root object of Google service configuration schema. It\ndescribes basic information about a service, such as the name and the\ntitle, and delegates other aspects to sub-sections. Each sub-section is\neither a proto message or a repeated proto message that configures a\nspecific aspect, such as auth. See each proto message definition for details.\n\nExample:\n\n type: google.api.Service\n config_version: 3\n name: calendar.googleapis.com\n title: Google Calendar API\n apis:\n - name: google.calendar.v3.Calendar\n authentication:\n providers:\n - id: google_calendar_auth\n jwks_uri: https://www.googleapis.com/oauth2/v1/certs\n issuer: https://securetoken.google.com\n rules:\n - selector: \"*\"\n requirements:\n provider_id: google_calendar_auth", + "id": "GoogleApiService", + "properties": { + "apis": { + "description": "A list of API interfaces exported by this service. Only the `name` field\nof the google.protobuf.Api needs to be provided by the configuration\nauthor, as the remaining fields will be derived from the IDL during the\nnormalization process. It is an error to specify an API interface here\nwhich cannot be resolved against the associated IDL files.", + "items": { + "$ref": "Api" + }, + "type": "array" + }, + "authentication": { + "$ref": "Authentication", + "description": "Auth configuration." + }, + "backend": { + "$ref": "Backend", + "description": "API backend configuration." + }, + "billing": { + "$ref": "Billing", + "description": "Billing configuration." + }, + "configVersion": { + "description": "The semantic version of the service configuration. The config version\naffects the interpretation of the service configuration. For example,\ncertain features are enabled by default for certain config versions.\nThe latest config version is `3`.", + "format": "uint32", + "type": "integer" + }, + "context": { + "$ref": "Context", + "description": "Context configuration." + }, + "control": { + "$ref": "Control", + "description": "Configuration for the service control plane." + }, + "customError": { + "$ref": "CustomError", + "description": "Custom error configuration." + }, + "documentation": { + "$ref": "Documentation", + "description": "Additional API documentation." + }, + "endpoints": { + "description": "Configuration for network endpoints. If this is empty, then an endpoint\nwith the same name as the service is automatically generated to service all\ndefined APIs.", + "items": { + "$ref": "Endpoint" + }, + "type": "array" + }, + "enums": { + "description": "A list of all enum types included in this API service. Enums\nreferenced directly or indirectly by the `apis` are automatically\nincluded. Enums which are not referenced but shall be included\nshould be listed here by name. Example:\n\n enums:\n - name: google.someapi.v1.SomeEnum", + "items": { + "$ref": "Enum" + }, + "type": "array" + }, + "experimental": { + "$ref": "Experimental", + "description": "Experimental configuration." + }, + "http": { + "$ref": "Http", + "description": "HTTP configuration." + }, + "id": { + "description": "A unique ID for a specific instance of this message, typically assigned\nby the client for tracking purpose. If empty, the server may choose to\ngenerate one instead.", + "type": "string" + }, + "logging": { + "$ref": "Logging", + "description": "Logging configuration." + }, + "logs": { + "description": "Defines the logs used by this service.", + "items": { + "$ref": "LogDescriptor" + }, + "type": "array" + }, + "metrics": { + "description": "Defines the metrics used by this service.", + "items": { + "$ref": "MetricDescriptor" + }, + "type": "array" + }, + "monitoredResources": { + "description": "Defines the monitored resources used by this service. This is required\nby the Service.monitoring and Service.logging configurations.", + "items": { + "$ref": "MonitoredResourceDescriptor" + }, + "type": "array" + }, + "monitoring": { + "$ref": "Monitoring", + "description": "Monitoring configuration." + }, + "name": { + "description": "The DNS address at which this service is available,\ne.g. `calendar.googleapis.com`.", + "type": "string" + }, + "producerProjectId": { + "description": "The Google project that owns this service.", + "type": "string" + }, + "quota": { + "$ref": "Quota", + "description": "Quota configuration." + }, + "sourceInfo": { + "$ref": "SourceInfo", + "description": "Output only. The source information for this configuration if available." + }, + "systemParameters": { + "$ref": "SystemParameters", + "description": "System parameter configuration." + }, + "systemTypes": { + "description": "A list of all proto message types included in this API service.\nIt serves similar purpose as [google.api.Service.types], except that\nthese types are not needed by user-defined APIs. Therefore, they will not\nshow up in the generated discovery doc. This field should only be used\nto define system APIs in ESF.", + "items": { + "$ref": "Type" + }, + "type": "array" + }, + "title": { + "description": "The product title for this service.", + "type": "string" + }, + "types": { + "description": "A list of all proto message types included in this API service.\nTypes referenced directly or indirectly by the `apis` are\nautomatically included. Messages which are not referenced but\nshall be included, such as types used by the `google.protobuf.Any` type,\nshould be listed here by name. Example:\n\n types:\n - name: google.protobuf.Int32", + "items": { + "$ref": "Type" + }, + "type": "array" + }, + "usage": { + "$ref": "Usage", + "description": "Configuration controlling usage of this service." + } + }, + "type": "object" + }, + "Http": { + "description": "Defines the HTTP configuration for an API service. It contains a list of\nHttpRule, each specifying the mapping of an RPC method\nto one or more HTTP REST API methods.", + "id": "Http", + "properties": { + "fullyDecodeReservedExpansion": { + "description": "When set to true, URL path parmeters will be fully URI-decoded except in\ncases of single segment matches in reserved expansion, where \"%2F\" will be\nleft encoded.\n\nThe default behavior is to not decode RFC 6570 reserved characters in multi\nsegment matches.", + "type": "boolean" + }, + "rules": { + "description": "A list of HTTP configuration rules that apply to individual API methods.\n\n**NOTE:** All service configuration rules follow \"last one wins\" order.", + "items": { + "$ref": "HttpRule" + }, + "type": "array" + } + }, + "type": "object" + }, + "HttpRule": { + "description": "`HttpRule` defines the mapping of an RPC method to one or more HTTP\nREST API methods. The mapping specifies how different portions of the RPC\nrequest message are mapped to URL path, URL query parameters, and\nHTTP request body. The mapping is typically specified as an\n`google.api.http` annotation on the RPC method,\nsee \"google/api/annotations.proto\" for details.\n\nThe mapping consists of a field specifying the path template and\nmethod kind. The path template can refer to fields in the request\nmessage, as in the example below which describes a REST GET\noperation on a resource collection of messages:\n\n\n service Messaging {\n rpc GetMessage(GetMessageRequest) returns (Message) {\n option (google.api.http).get = \"/v1/messages/{message_id}/{sub.subfield}\";\n }\n }\n message GetMessageRequest {\n message SubMessage {\n string subfield = 1;\n }\n string message_id = 1; // mapped to the URL\n SubMessage sub = 2; // `sub.subfield` is url-mapped\n }\n message Message {\n string text = 1; // content of the resource\n }\n\nThe same http annotation can alternatively be expressed inside the\n`GRPC API Configuration` YAML file.\n\n http:\n rules:\n - selector: \u003cproto_package_name\u003e.Messaging.GetMessage\n get: /v1/messages/{message_id}/{sub.subfield}\n\nThis definition enables an automatic, bidrectional mapping of HTTP\nJSON to RPC. Example:\n\nHTTP | RPC\n-----|-----\n`GET /v1/messages/123456/foo` | `GetMessage(message_id: \"123456\" sub: SubMessage(subfield: \"foo\"))`\n\nIn general, not only fields but also field paths can be referenced\nfrom a path pattern. Fields mapped to the path pattern cannot be\nrepeated and must have a primitive (non-message) type.\n\nAny fields in the request message which are not bound by the path\npattern automatically become (optional) HTTP query\nparameters. Assume the following definition of the request message:\n\n\n service Messaging {\n rpc GetMessage(GetMessageRequest) returns (Message) {\n option (google.api.http).get = \"/v1/messages/{message_id}\";\n }\n }\n message GetMessageRequest {\n message SubMessage {\n string subfield = 1;\n }\n string message_id = 1; // mapped to the URL\n int64 revision = 2; // becomes a parameter\n SubMessage sub = 3; // `sub.subfield` becomes a parameter\n }\n\n\nThis enables a HTTP JSON to RPC mapping as below:\n\nHTTP | RPC\n-----|-----\n`GET /v1/messages/123456?revision=2\u0026sub.subfield=foo` | `GetMessage(message_id: \"123456\" revision: 2 sub: SubMessage(subfield: \"foo\"))`\n\nNote that fields which are mapped to HTTP parameters must have a\nprimitive type or a repeated primitive type. Message types are not\nallowed. In the case of a repeated type, the parameter can be\nrepeated in the URL, as in `...?param=A\u0026param=B`.\n\nFor HTTP method kinds which allow a request body, the `body` field\nspecifies the mapping. Consider a REST update method on the\nmessage resource collection:\n\n\n service Messaging {\n rpc UpdateMessage(UpdateMessageRequest) returns (Message) {\n option (google.api.http) = {\n put: \"/v1/messages/{message_id}\"\n body: \"message\"\n };\n }\n }\n message UpdateMessageRequest {\n string message_id = 1; // mapped to the URL\n Message message = 2; // mapped to the body\n }\n\n\nThe following HTTP JSON to RPC mapping is enabled, where the\nrepresentation of the JSON in the request body is determined by\nprotos JSON encoding:\n\nHTTP | RPC\n-----|-----\n`PUT /v1/messages/123456 { \"text\": \"Hi!\" }` | `UpdateMessage(message_id: \"123456\" message { text: \"Hi!\" })`\n\nThe special name `*` can be used in the body mapping to define that\nevery field not bound by the path template should be mapped to the\nrequest body. This enables the following alternative definition of\nthe update method:\n\n service Messaging {\n rpc UpdateMessage(Message) returns (Message) {\n option (google.api.http) = {\n put: \"/v1/messages/{message_id}\"\n body: \"*\"\n };\n }\n }\n message Message {\n string message_id = 1;\n string text = 2;\n }\n\n\nThe following HTTP JSON to RPC mapping is enabled:\n\nHTTP | RPC\n-----|-----\n`PUT /v1/messages/123456 { \"text\": \"Hi!\" }` | `UpdateMessage(message_id: \"123456\" text: \"Hi!\")`\n\nNote that when using `*` in the body mapping, it is not possible to\nhave HTTP parameters, as all fields not bound by the path end in\nthe body. This makes this option more rarely used in practice of\ndefining REST APIs. The common usage of `*` is in custom methods\nwhich don't use the URL at all for transferring data.\n\nIt is possible to define multiple HTTP methods for one RPC by using\nthe `additional_bindings` option. Example:\n\n service Messaging {\n rpc GetMessage(GetMessageRequest) returns (Message) {\n option (google.api.http) = {\n get: \"/v1/messages/{message_id}\"\n additional_bindings {\n get: \"/v1/users/{user_id}/messages/{message_id}\"\n }\n };\n }\n }\n message GetMessageRequest {\n string message_id = 1;\n string user_id = 2;\n }\n\n\nThis enables the following two alternative HTTP JSON to RPC\nmappings:\n\nHTTP | RPC\n-----|-----\n`GET /v1/messages/123456` | `GetMessage(message_id: \"123456\")`\n`GET /v1/users/me/messages/123456` | `GetMessage(user_id: \"me\" message_id: \"123456\")`\n\n# Rules for HTTP mapping\n\nThe rules for mapping HTTP path, query parameters, and body fields\nto the request message are as follows:\n\n1. The `body` field specifies either `*` or a field path, or is\n omitted. If omitted, it indicates there is no HTTP request body.\n2. Leaf fields (recursive expansion of nested messages in the\n request) can be classified into three types:\n (a) Matched in the URL template.\n (b) Covered by body (if body is `*`, everything except (a) fields;\n else everything under the body field)\n (c) All other fields.\n3. URL query parameters found in the HTTP request are mapped to (c) fields.\n4. Any body sent with an HTTP request can contain only (b) fields.\n\nThe syntax of the path template is as follows:\n\n Template = \"/\" Segments [ Verb ] ;\n Segments = Segment { \"/\" Segment } ;\n Segment = \"*\" | \"**\" | LITERAL | Variable ;\n Variable = \"{\" FieldPath [ \"=\" Segments ] \"}\" ;\n FieldPath = IDENT { \".\" IDENT } ;\n Verb = \":\" LITERAL ;\n\nThe syntax `*` matches a single path segment. The syntax `**` matches zero\nor more path segments, which must be the last part of the path except the\n`Verb`. The syntax `LITERAL` matches literal text in the path.\n\nThe syntax `Variable` matches part of the URL path as specified by its\ntemplate. A variable template must not contain other variables. If a variable\nmatches a single path segment, its template may be omitted, e.g. `{var}`\nis equivalent to `{var=*}`.\n\nIf a variable contains exactly one path segment, such as `\"{var}\"` or\n`\"{var=*}\"`, when such a variable is expanded into a URL path, all characters\nexcept `[-_.~0-9a-zA-Z]` are percent-encoded. Such variables show up in the\nDiscovery Document as `{var}`.\n\nIf a variable contains one or more path segments, such as `\"{var=foo/*}\"`\nor `\"{var=**}\"`, when such a variable is expanded into a URL path, all\ncharacters except `[-_.~/0-9a-zA-Z]` are percent-encoded. Such variables\nshow up in the Discovery Document as `{+var}`.\n\nNOTE: While the single segment variable matches the semantics of\n[RFC 6570](https://tools.ietf.org/html/rfc6570) Section 3.2.2\nSimple String Expansion, the multi segment variable **does not** match\nRFC 6570 Reserved Expansion. The reason is that the Reserved Expansion\ndoes not expand special characters like `?` and `#`, which would lead\nto invalid URLs.\n\nNOTE: the field paths in variables and in the `body` must not refer to\nrepeated fields or map fields.", + "id": "HttpRule", + "properties": { + "additionalBindings": { + "description": "Additional HTTP bindings for the selector. Nested bindings must\nnot contain an `additional_bindings` field themselves (that is,\nthe nesting may only be one level deep).", + "items": { + "$ref": "HttpRule" + }, + "type": "array" + }, + "authorizations": { + "description": "Specifies the permission(s) required for an API element for the overall\nAPI request to succeed. It is typically used to mark request message fields\nthat contain the name of the resource and indicates the permissions that\nwill be checked on that resource.", + "items": { + "$ref": "AuthorizationRule" + }, + "type": "array" + }, + "body": { + "description": "The name of the request field whose value is mapped to the HTTP body, or\n`*` for mapping all fields not captured by the path pattern to the HTTP\nbody. NOTE: the referred field must not be a repeated field and must be\npresent at the top-level of request message type.", + "type": "string" + }, + "custom": { + "$ref": "CustomHttpPattern", + "description": "The custom pattern is used for specifying an HTTP method that is not\nincluded in the `pattern` field, such as HEAD, or \"*\" to leave the\nHTTP method unspecified for this rule. The wild-card rule is useful\nfor services that provide content to Web (HTML) clients." + }, + "delete": { + "description": "Used for deleting a resource.", + "type": "string" + }, + "get": { + "description": "Used for listing and getting information about resources.", + "type": "string" + }, + "mediaDownload": { + "$ref": "MediaDownload", + "description": "Use this only for Scotty Requests. Do not use this for bytestream methods.\nFor media support, add instead [][google.bytestream.RestByteStream] as an\nAPI to your configuration." + }, + "mediaUpload": { + "$ref": "MediaUpload", + "description": "Use this only for Scotty Requests. Do not use this for media support using\nBytestream, add instead\n[][google.bytestream.RestByteStream] as an API to your\nconfiguration for Bytestream methods." + }, + "patch": { + "description": "Used for updating a resource.", + "type": "string" + }, + "post": { + "description": "Used for creating a resource.", + "type": "string" + }, + "put": { + "description": "Used for updating a resource.", + "type": "string" + }, + "restCollection": { + "description": "DO NOT USE. This is an experimental field.\n\nOptional. The REST collection name is by default derived from the URL\npattern. If specified, this field overrides the default collection name.\nExample:\n\n rpc AddressesAggregatedList(AddressesAggregatedListRequest)\n returns (AddressesAggregatedListResponse) {\n option (google.api.http) = {\n get: \"/v1/projects/{project_id}/aggregated/addresses\"\n rest_collection: \"projects.addresses\"\n };\n }\n\nThis method has the automatically derived collection name\n\"projects.aggregated\". Because, semantically, this rpc is actually an\noperation on the \"projects.addresses\" collection, the `rest_collection`\nfield is configured to override the derived collection name.", + "type": "string" + }, + "restMethodName": { + "description": "DO NOT USE. This is an experimental field.\n\nOptional. The rest method name is by default derived from the URL\npattern. If specified, this field overrides the default method name.\nExample:\n\n rpc CreateResource(CreateResourceRequest)\n returns (CreateResourceResponse) {\n option (google.api.http) = {\n post: \"/v1/resources\",\n body: \"resource\",\n rest_method_name: \"insert\"\n };\n }\n\nThis method has the automatically derived rest method name\n\"create\", but for backwards compatibility with apiary, it is specified as\ninsert.", + "type": "string" + }, + "selector": { + "description": "Selects methods to which this rule applies.\n\nRefer to selector for syntax details.", + "type": "string" + } + }, + "type": "object" + }, + "LabelDescriptor": { + "description": "A description of a label.", + "id": "LabelDescriptor", + "properties": { + "description": { + "description": "A human-readable description for the label.", + "type": "string" + }, + "key": { + "description": "The label key.", + "type": "string" + }, + "valueType": { + "description": "The type of data that can be assigned to the label.", + "enum": [ + "STRING", + "BOOL", + "INT64" + ], + "enumDescriptions": [ + "A variable-length string. This is the default.", + "Boolean; true or false.", + "A 64-bit signed integer." + ], + "type": "string" + } + }, + "type": "object" + }, + "ListOperationsResponse": { + "description": "The response message for Operations.ListOperations.", + "id": "ListOperationsResponse", + "properties": { + "nextPageToken": { + "description": "The standard List next-page token.", + "type": "string" + }, + "operations": { + "description": "A list of operations that matches the specified filter in the request.", + "items": { + "$ref": "Operation" + }, + "type": "array" + } + }, + "type": "object" + }, + "ListServicesResponse": { + "description": "Response message for the `ListServices` method.", + "id": "ListServicesResponse", + "properties": { + "nextPageToken": { + "description": "Token that can be passed to `ListServices` to resume a paginated\nquery.", + "type": "string" + }, + "services": { + "description": "The available services for the requested project.", + "items": { + "$ref": "Service" + }, + "type": "array" + } + }, + "type": "object" + }, + "LogDescriptor": { + "description": "A description of a log type. Example in YAML format:\n\n - name: library.googleapis.com/activity_history\n description: The history of borrowing and returning library items.\n display_name: Activity\n labels:\n - key: /customer_id\n description: Identifier of a library customer", + "id": "LogDescriptor", + "properties": { + "description": { + "description": "A human-readable description of this log. This information appears in\nthe documentation and can contain details.", + "type": "string" + }, + "displayName": { + "description": "The human-readable name for this log. This information appears on\nthe user interface and should be concise.", + "type": "string" + }, + "labels": { + "description": "The set of labels that are available to describe a specific log entry.\nRuntime requests that contain labels not specified here are\nconsidered invalid.", + "items": { + "$ref": "LabelDescriptor" + }, + "type": "array" + }, + "name": { + "description": "The name of the log. It must be less than 512 characters long and can\ninclude the following characters: upper- and lower-case alphanumeric\ncharacters [A-Za-z0-9], and punctuation characters including\nslash, underscore, hyphen, period [/_-.].", + "type": "string" + } + }, + "type": "object" + }, + "Logging": { + "description": "Logging configuration of the service.\n\nThe following example shows how to configure logs to be sent to the\nproducer and consumer projects. In the example, the `activity_history`\nlog is sent to both the producer and consumer projects, whereas the\n`purchase_history` log is only sent to the producer project.\n\n monitored_resources:\n - type: library.googleapis.com/branch\n labels:\n - key: /city\n description: The city where the library branch is located in.\n - key: /name\n description: The name of the branch.\n logs:\n - name: activity_history\n labels:\n - key: /customer_id\n - name: purchase_history\n logging:\n producer_destinations:\n - monitored_resource: library.googleapis.com/branch\n logs:\n - activity_history\n - purchase_history\n consumer_destinations:\n - monitored_resource: library.googleapis.com/branch\n logs:\n - activity_history", + "id": "Logging", + "properties": { + "consumerDestinations": { + "description": "Logging configurations for sending logs to the consumer project.\nThere can be multiple consumer destinations, each one must have a\ndifferent monitored resource type. A log can be used in at most\none consumer destination.", + "items": { + "$ref": "LoggingDestination" + }, + "type": "array" + }, + "producerDestinations": { + "description": "Logging configurations for sending logs to the producer project.\nThere can be multiple producer destinations, each one must have a\ndifferent monitored resource type. A log can be used in at most\none producer destination.", + "items": { + "$ref": "LoggingDestination" + }, + "type": "array" + } + }, + "type": "object" + }, + "LoggingDestination": { + "description": "Configuration of a specific logging destination (the producer project\nor the consumer project).", + "id": "LoggingDestination", + "properties": { + "logs": { + "description": "Names of the logs to be sent to this destination. Each name must\nbe defined in the Service.logs section. If the log name is\nnot a domain scoped name, it will be automatically prefixed with\nthe service name followed by \"/\".", + "items": { + "type": "string" + }, + "type": "array" + }, + "monitoredResource": { + "description": "The monitored resource type. The type must be defined in the\nService.monitored_resources section.", + "type": "string" + } + }, + "type": "object" + }, + "MediaDownload": { + "description": "Defines the Media configuration for a service in case of a download.\nUse this only for Scotty Requests. Do not use this for media support using\nBytestream, add instead [][google.bytestream.RestByteStream] as an API to\nyour configuration for Bytestream methods.", + "id": "MediaDownload", + "properties": { + "completeNotification": { + "description": "A boolean that determines whether a notification for the completion of a\ndownload should be sent to the backend.", + "type": "boolean" + }, + "downloadService": { + "description": "DO NOT USE FIELDS BELOW THIS LINE UNTIL THIS WARNING IS REMOVED.\n\nSpecify name of the download service if one is used for download.", + "type": "string" + }, + "dropzone": { + "description": "Name of the Scotty dropzone to use for the current API.", + "type": "string" + }, + "enabled": { + "description": "Whether download is enabled.", + "type": "boolean" + }, + "maxDirectDownloadSize": { + "description": "Optional maximum acceptable size for direct download.\nThe size is specified in bytes.", + "format": "int64", + "type": "string" + }, + "useDirectDownload": { + "description": "A boolean that determines if direct download from ESF should be used for\ndownload of this media.", + "type": "boolean" + } + }, + "type": "object" + }, + "MediaUpload": { + "description": "Defines the Media configuration for a service in case of an upload.\nUse this only for Scotty Requests. Do not use this for media support using\nBytestream, add instead [][google.bytestream.RestByteStream] as an API to\nyour configuration for Bytestream methods.", + "id": "MediaUpload", + "properties": { + "completeNotification": { + "description": "A boolean that determines whether a notification for the completion of an\nupload should be sent to the backend. These notifications will not be seen\nby the client and will not consume quota.", + "type": "boolean" + }, + "dropzone": { + "description": "Name of the Scotty dropzone to use for the current API.", + "type": "string" + }, + "enabled": { + "description": "Whether upload is enabled.", + "type": "boolean" + }, + "maxSize": { + "description": "Optional maximum acceptable size for an upload.\nThe size is specified in bytes.", + "format": "int64", + "type": "string" + }, + "mimeTypes": { + "description": "An array of mimetype patterns. Esf will only accept uploads that match one\nof the given patterns.", + "items": { + "type": "string" + }, + "type": "array" + }, + "progressNotification": { + "description": "Whether to receive a notification for progress changes of media upload.", + "type": "boolean" + }, + "startNotification": { + "description": "Whether to receive a notification on the start of media upload.", + "type": "boolean" + }, + "uploadService": { + "description": "DO NOT USE FIELDS BELOW THIS LINE UNTIL THIS WARNING IS REMOVED.\n\nSpecify name of the upload service if one is used for upload.", + "type": "string" + } + }, + "type": "object" + }, + "Method": { + "description": "Method represents a method of an API interface.", + "id": "Method", + "properties": { + "name": { + "description": "The simple name of this method.", + "type": "string" + }, + "options": { + "description": "Any metadata attached to the method.", + "items": { + "$ref": "Option" + }, + "type": "array" + }, + "requestStreaming": { + "description": "If true, the request is streamed.", + "type": "boolean" + }, + "requestTypeUrl": { + "description": "A URL of the input message type.", + "type": "string" + }, + "responseStreaming": { + "description": "If true, the response is streamed.", + "type": "boolean" + }, + "responseTypeUrl": { + "description": "The URL of the output message type.", + "type": "string" + }, + "syntax": { + "description": "The source syntax of this method.", + "enum": [ + "SYNTAX_PROTO2", + "SYNTAX_PROTO3" + ], + "enumDescriptions": [ + "Syntax `proto2`.", + "Syntax `proto3`." + ], + "type": "string" + } + }, + "type": "object" + }, + "MetricDescriptor": { + "description": "Defines a metric type and its schema. Once a metric descriptor is created,\ndeleting or altering it stops data collection and makes the metric type's\nexisting data unusable.", + "id": "MetricDescriptor", + "properties": { + "description": { + "description": "A detailed description of the metric, which can be used in documentation.", + "type": "string" + }, + "displayName": { + "description": "A concise name for the metric, which can be displayed in user interfaces.\nUse sentence case without an ending period, for example \"Request count\".\nThis field is optional but it is recommended to be set for any metrics\nassociated with user-visible concepts, such as Quota.", + "type": "string" + }, + "labels": { + "description": "The set of labels that can be used to describe a specific\ninstance of this metric type. For example, the\n`appengine.googleapis.com/http/server/response_latencies` metric\ntype has a label for the HTTP response code, `response_code`, so\nyou can look at latencies for successful responses or just\nfor responses that failed.", + "items": { + "$ref": "LabelDescriptor" + }, + "type": "array" + }, + "metricKind": { + "description": "Whether the metric records instantaneous values, changes to a value, etc.\nSome combinations of `metric_kind` and `value_type` might not be supported.", + "enum": [ + "METRIC_KIND_UNSPECIFIED", + "GAUGE", + "DELTA", + "CUMULATIVE" + ], + "enumDescriptions": [ + "Do not use this default value.", + "An instantaneous measurement of a value.", + "The change in a value during a time interval.", + "A value accumulated over a time interval. Cumulative\nmeasurements in a time series should have the same start time\nand increasing end times, until an event resets the cumulative\nvalue to zero and sets a new start time for the following\npoints." + ], + "type": "string" + }, + "name": { + "description": "The resource name of the metric descriptor.", + "type": "string" + }, + "type": { + "description": "The metric type, including its DNS name prefix. The type is not\nURL-encoded. All user-defined custom metric types have the DNS name\n`custom.googleapis.com`. Metric types should use a natural hierarchical\ngrouping. For example:\n\n \"custom.googleapis.com/invoice/paid/amount\"\n \"appengine.googleapis.com/http/server/response_latencies\"", + "type": "string" + }, + "unit": { + "description": "The unit in which the metric value is reported. It is only applicable\nif the `value_type` is `INT64`, `DOUBLE`, or `DISTRIBUTION`. The\nsupported units are a subset of [The Unified Code for Units of\nMeasure](http://unitsofmeasure.org/ucum.html) standard:\n\n**Basic units (UNIT)**\n\n* `bit` bit\n* `By` byte\n* `s` second\n* `min` minute\n* `h` hour\n* `d` day\n\n**Prefixes (PREFIX)**\n\n* `k` kilo (10**3)\n* `M` mega (10**6)\n* `G` giga (10**9)\n* `T` tera (10**12)\n* `P` peta (10**15)\n* `E` exa (10**18)\n* `Z` zetta (10**21)\n* `Y` yotta (10**24)\n* `m` milli (10**-3)\n* `u` micro (10**-6)\n* `n` nano (10**-9)\n* `p` pico (10**-12)\n* `f` femto (10**-15)\n* `a` atto (10**-18)\n* `z` zepto (10**-21)\n* `y` yocto (10**-24)\n* `Ki` kibi (2**10)\n* `Mi` mebi (2**20)\n* `Gi` gibi (2**30)\n* `Ti` tebi (2**40)\n\n**Grammar**\n\nThe grammar also includes these connectors:\n\n* `/` division (as an infix operator, e.g. `1/s`).\n* `.` multiplication (as an infix operator, e.g. `GBy.d`)\n\nThe grammar for a unit is as follows:\n\n Expression = Component { \".\" Component } { \"/\" Component } ;\n\n Component = ( [ PREFIX ] UNIT | \"%\" ) [ Annotation ]\n | Annotation\n | \"1\"\n ;\n\n Annotation = \"{\" NAME \"}\" ;\n\nNotes:\n\n* `Annotation` is just a comment if it follows a `UNIT` and is\n equivalent to `1` if it is used alone. For examples,\n `{requests}/s == 1/s`, `By{transmitted}/s == By/s`.\n* `NAME` is a sequence of non-blank printable ASCII characters not\n containing '{' or '}'.\n* `1` represents dimensionless value 1, such as in `1/s`.\n* `%` represents dimensionless value 1/100, and annotates values giving\n a percentage.", + "type": "string" + }, + "valueType": { + "description": "Whether the measurement is an integer, a floating-point number, etc.\nSome combinations of `metric_kind` and `value_type` might not be supported.", + "enum": [ + "VALUE_TYPE_UNSPECIFIED", + "BOOL", + "INT64", + "DOUBLE", + "STRING", + "DISTRIBUTION", + "MONEY" + ], + "enumDescriptions": [ + "Do not use this default value.", + "The value is a boolean.\nThis value type can be used only if the metric kind is `GAUGE`.", + "The value is a signed 64-bit integer.", + "The value is a double precision floating point number.", + "The value is a text string.\nThis value type can be used only if the metric kind is `GAUGE`.", + "The value is a `Distribution`.", + "The value is money." + ], + "type": "string" + } + }, + "type": "object" + }, + "MetricRule": { + "description": "Bind API methods to metrics. Binding a method to a metric causes that\nmetric's configured quota behaviors to apply to the method call.", + "id": "MetricRule", + "properties": { + "metricCosts": { + "additionalProperties": { + "format": "int64", + "type": "string" + }, + "description": "Metrics to update when the selected methods are called, and the associated\ncost applied to each metric.\n\nThe key of the map is the metric name, and the values are the amount\nincreased for the metric against which the quota limits are defined.\nThe value must not be negative.", + "type": "object" + }, + "selector": { + "description": "Selects the methods to which this rule applies.\n\nRefer to selector for syntax details.", + "type": "string" + } + }, + "type": "object" + }, + "Mixin": { + "description": "Declares an API Interface to be included in this interface. The including\ninterface must redeclare all the methods from the included interface, but\ndocumentation and options are inherited as follows:\n\n- If after comment and whitespace stripping, the documentation\n string of the redeclared method is empty, it will be inherited\n from the original method.\n\n- Each annotation belonging to the service config (http,\n visibility) which is not set in the redeclared method will be\n inherited.\n\n- If an http annotation is inherited, the path pattern will be\n modified as follows. Any version prefix will be replaced by the\n version of the including interface plus the root path if\n specified.\n\nExample of a simple mixin:\n\n package google.acl.v1;\n service AccessControl {\n // Get the underlying ACL object.\n rpc GetAcl(GetAclRequest) returns (Acl) {\n option (google.api.http).get = \"/v1/{resource=**}:getAcl\";\n }\n }\n\n package google.storage.v2;\n service Storage {\n // rpc GetAcl(GetAclRequest) returns (Acl);\n\n // Get a data record.\n rpc GetData(GetDataRequest) returns (Data) {\n option (google.api.http).get = \"/v2/{resource=**}\";\n }\n }\n\nExample of a mixin configuration:\n\n apis:\n - name: google.storage.v2.Storage\n mixins:\n - name: google.acl.v1.AccessControl\n\nThe mixin construct implies that all methods in `AccessControl` are\nalso declared with same name and request/response types in\n`Storage`. A documentation generator or annotation processor will\nsee the effective `Storage.GetAcl` method after inherting\ndocumentation and annotations as follows:\n\n service Storage {\n // Get the underlying ACL object.\n rpc GetAcl(GetAclRequest) returns (Acl) {\n option (google.api.http).get = \"/v2/{resource=**}:getAcl\";\n }\n ...\n }\n\nNote how the version in the path pattern changed from `v1` to `v2`.\n\nIf the `root` field in the mixin is specified, it should be a\nrelative path under which inherited HTTP paths are placed. Example:\n\n apis:\n - name: google.storage.v2.Storage\n mixins:\n - name: google.acl.v1.AccessControl\n root: acls\n\nThis implies the following inherited HTTP annotation:\n\n service Storage {\n // Get the underlying ACL object.\n rpc GetAcl(GetAclRequest) returns (Acl) {\n option (google.api.http).get = \"/v2/acls/{resource=**}:getAcl\";\n }\n ...\n }", + "id": "Mixin", + "properties": { + "name": { + "description": "The fully qualified name of the interface which is included.", + "type": "string" + }, + "root": { + "description": "If non-empty specifies a path under which inherited HTTP paths\nare rooted.", + "type": "string" + } + }, + "type": "object" + }, + "MonitoredResourceDescriptor": { + "description": "An object that describes the schema of a MonitoredResource object using a\ntype name and a set of labels. For example, the monitored resource\ndescriptor for Google Compute Engine VM instances has a type of\n`\"gce_instance\"` and specifies the use of the labels `\"instance_id\"` and\n`\"zone\"` to identify particular VM instances.\n\nDifferent APIs can support different monitored resource types. APIs generally\nprovide a `list` method that returns the monitored resource descriptors used\nby the API.", + "id": "MonitoredResourceDescriptor", + "properties": { + "description": { + "description": "Optional. A detailed description of the monitored resource type that might\nbe used in documentation.", + "type": "string" + }, + "displayName": { + "description": "Optional. A concise name for the monitored resource type that might be\ndisplayed in user interfaces. It should be a Title Cased Noun Phrase,\nwithout any article or other determiners. For example,\n`\"Google Cloud SQL Database\"`.", + "type": "string" + }, + "labels": { + "description": "Required. A set of labels used to describe instances of this monitored\nresource type. For example, an individual Google Cloud SQL database is\nidentified by values for the labels `\"database_id\"` and `\"zone\"`.", + "items": { + "$ref": "LabelDescriptor" + }, + "type": "array" + }, + "name": { + "description": "Optional. The resource name of the monitored resource descriptor:\n`\"projects/{project_id}/monitoredResourceDescriptors/{type}\"` where\n{type} is the value of the `type` field in this object and\n{project_id} is a project ID that provides API-specific context for\naccessing the type. APIs that do not use project information can use the\nresource name format `\"monitoredResourceDescriptors/{type}\"`.", + "type": "string" + }, + "type": { + "description": "Required. The monitored resource type. For example, the type\n`\"cloudsql_database\"` represents databases in Google Cloud SQL.\nThe maximum length of this value is 256 characters.", + "type": "string" + } + }, + "type": "object" + }, + "Monitoring": { + "description": "Monitoring configuration of the service.\n\nThe example below shows how to configure monitored resources and metrics\nfor monitoring. In the example, a monitored resource and two metrics are\ndefined. The `library.googleapis.com/book/returned_count` metric is sent\nto both producer and consumer projects, whereas the\n`library.googleapis.com/book/overdue_count` metric is only sent to the\nconsumer project.\n\n monitored_resources:\n - type: library.googleapis.com/branch\n labels:\n - key: /city\n description: The city where the library branch is located in.\n - key: /name\n description: The name of the branch.\n metrics:\n - name: library.googleapis.com/book/returned_count\n metric_kind: DELTA\n value_type: INT64\n labels:\n - key: /customer_id\n - name: library.googleapis.com/book/overdue_count\n metric_kind: GAUGE\n value_type: INT64\n labels:\n - key: /customer_id\n monitoring:\n producer_destinations:\n - monitored_resource: library.googleapis.com/branch\n metrics:\n - library.googleapis.com/book/returned_count\n consumer_destinations:\n - monitored_resource: library.googleapis.com/branch\n metrics:\n - library.googleapis.com/book/returned_count\n - library.googleapis.com/book/overdue_count", + "id": "Monitoring", + "properties": { + "consumerDestinations": { + "description": "Monitoring configurations for sending metrics to the consumer project.\nThere can be multiple consumer destinations, each one must have a\ndifferent monitored resource type. A metric can be used in at most\none consumer destination.", + "items": { + "$ref": "MonitoringDestination" + }, + "type": "array" + }, + "producerDestinations": { + "description": "Monitoring configurations for sending metrics to the producer project.\nThere can be multiple producer destinations, each one must have a\ndifferent monitored resource type. A metric can be used in at most\none producer destination.", + "items": { + "$ref": "MonitoringDestination" + }, + "type": "array" + } + }, + "type": "object" + }, + "MonitoringDestination": { + "description": "Configuration of a specific monitoring destination (the producer project\nor the consumer project).", + "id": "MonitoringDestination", + "properties": { + "metrics": { + "description": "Names of the metrics to report to this monitoring destination.\nEach name must be defined in Service.metrics section.", + "items": { + "type": "string" + }, + "type": "array" + }, + "monitoredResource": { + "description": "The monitored resource type. The type must be defined in\nService.monitored_resources section.", + "type": "string" + } + }, + "type": "object" + }, + "OAuthRequirements": { + "description": "OAuth scopes are a way to define data and permissions on data. For example,\nthere are scopes defined for \"Read-only access to Google Calendar\" and\n\"Access to Cloud Platform\". Users can consent to a scope for an application,\ngiving it permission to access that data on their behalf.\n\nOAuth scope specifications should be fairly coarse grained; a user will need\nto see and understand the text description of what your scope means.\n\nIn most cases: use one or at most two OAuth scopes for an entire family of\nproducts. If your product has multiple APIs, you should probably be sharing\nthe OAuth scope across all of those APIs.\n\nWhen you need finer grained OAuth consent screens: talk with your product\nmanagement about how developers will use them in practice.\n\nPlease note that even though each of the canonical scopes is enough for a\nrequest to be accepted and passed to the backend, a request can still fail\ndue to the backend requiring additional scopes or permissions.", + "id": "OAuthRequirements", + "properties": { + "canonicalScopes": { + "description": "The list of publicly documented OAuth scopes that are allowed access. An\nOAuth token containing any of these scopes will be accepted.\n\nExample:\n\n canonical_scopes: https://www.googleapis.com/auth/calendar,\n https://www.googleapis.com/auth/calendar.read", + "type": "string" + } + }, + "type": "object" + }, + "Operation": { + "description": "This resource represents a long-running operation that is the result of a\nnetwork API call.", + "id": "Operation", + "properties": { + "done": { + "description": "If the value is `false`, it means the operation is still in progress.\nIf `true`, the operation is completed, and either `error` or `response` is\navailable.", + "type": "boolean" + }, + "error": { + "$ref": "Status", + "description": "The error result of the operation in case of failure or cancellation." + }, + "metadata": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "description": "Service-specific metadata associated with the operation. It typically\ncontains progress information and common metadata such as create time.\nSome services might not provide such metadata. Any method that returns a\nlong-running operation should document the metadata type, if any.", + "type": "object" + }, + "name": { + "description": "The server-assigned name, which is only unique within the same service that\noriginally returns it. If you use the default HTTP mapping, the\n`name` should have the format of `operations/some/unique/name`.", + "type": "string" + }, + "response": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "description": "The normal response of the operation in case of success. If the original\nmethod returns no data on success, such as `Delete`, the response is\n`google.protobuf.Empty`. If the original method is standard\n`Get`/`Create`/`Update`, the response should be the resource. For other\nmethods, the response should have the type `XxxResponse`, where `Xxx`\nis the original method name. For example, if the original method name\nis `TakeSnapshot()`, the inferred response type is\n`TakeSnapshotResponse`.", + "type": "object" + } + }, + "type": "object" + }, + "OperationMetadata": { + "description": "The metadata associated with a long running operation resource.", + "id": "OperationMetadata", + "properties": { + "progressPercentage": { + "description": "Percentage of completion of this operation, ranging from 0 to 100.", + "format": "int32", + "type": "integer" + }, + "resourceNames": { + "description": "The full name of the resources that this operation is directly\nassociated with.", + "items": { + "type": "string" + }, + "type": "array" + }, + "startTime": { + "description": "The start time of the operation.", + "format": "google-datetime", + "type": "string" + }, + "steps": { + "description": "Detailed status information for each step. The order is undetermined.", + "items": { + "$ref": "Step" + }, + "type": "array" + } + }, + "type": "object" + }, + "Option": { + "description": "A protocol buffer option, which can be attached to a message, field,\nenumeration, etc.", + "id": "Option", + "properties": { + "name": { + "description": "The option's name. For protobuf built-in options (options defined in\ndescriptor.proto), this is the short name. For example, `\"map_entry\"`.\nFor custom options, it should be the fully-qualified name. For example,\n`\"google.api.http\"`.", + "type": "string" + }, + "value": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "description": "The option's value packed in an Any message. If the value is a primitive,\nthe corresponding wrapper type defined in google/protobuf/wrappers.proto\nshould be used. If the value is an enum, it should be stored as an int32\nvalue using the google.protobuf.Int32Value type.", + "type": "object" + } + }, + "type": "object" + }, + "Page": { + "description": "Represents a documentation page. A page can contain subpages to represent\nnested documentation set structure.", + "id": "Page", + "properties": { + "content": { + "description": "The Markdown content of the page. You can use \u003ccode\u003e\u0026#40;== include {path} ==\u0026#41;\u003c/code\u003e\nto include content from a Markdown file.", + "type": "string" + }, + "name": { + "description": "The name of the page. It will be used as an identity of the page to\ngenerate URI of the page, text of the link to this page in navigation,\netc. The full page name (start from the root page name to this page\nconcatenated with `.`) can be used as reference to the page in your\ndocumentation. For example:\n\u003cpre\u003e\u003ccode\u003epages:\n- name: Tutorial\n content: \u0026#40;== include tutorial.md ==\u0026#41;\n subpages:\n - name: Java\n content: \u0026#40;== include tutorial_java.md ==\u0026#41;\n\u003c/code\u003e\u003c/pre\u003e\nYou can reference `Java` page using Markdown reference link syntax:\n`Java`.", + "type": "string" + }, + "subpages": { + "description": "Subpages of this page. The order of subpages specified here will be\nhonored in the generated docset.", + "items": { + "$ref": "Page" + }, + "type": "array" + } + }, + "type": "object" + }, + "Quota": { + "description": "Quota configuration helps to achieve fairness and budgeting in service\nusage.\n\nThe quota configuration works this way:\n- The service configuration defines a set of metrics.\n- For API calls, the quota.metric_rules maps methods to metrics with\n corresponding costs.\n- The quota.limits defines limits on the metrics, which will be used for\n quota checks at runtime.\n\nAn example quota configuration in yaml format:\n\n quota:\n\n - name: apiWriteQpsPerProject\n metric: library.googleapis.com/write_calls\n unit: \"1/min/{project}\" # rate limit for consumer projects\n values:\n STANDARD: 10000\n\n\n # The metric rules bind all methods to the read_calls metric,\n # except for the UpdateBook and DeleteBook methods. These two methods\n # are mapped to the write_calls metric, with the UpdateBook method\n # consuming at twice rate as the DeleteBook method.\n metric_rules:\n - selector: \"*\"\n metric_costs:\n library.googleapis.com/read_calls: 1\n - selector: google.example.library.v1.LibraryService.UpdateBook\n metric_costs:\n library.googleapis.com/write_calls: 2\n - selector: google.example.library.v1.LibraryService.DeleteBook\n metric_costs:\n library.googleapis.com/write_calls: 1\n\n Corresponding Metric definition:\n\n metrics:\n - name: library.googleapis.com/read_calls\n display_name: Read requests\n metric_kind: DELTA\n value_type: INT64\n\n - name: library.googleapis.com/write_calls\n display_name: Write requests\n metric_kind: DELTA\n value_type: INT64", + "id": "Quota", + "properties": { + "limits": { + "description": "List of `QuotaLimit` definitions for the service.", + "items": { + "$ref": "QuotaLimit" + }, + "type": "array" + }, + "metricRules": { + "description": "List of `MetricRule` definitions, each one mapping a selected method to one\nor more metrics.", + "items": { + "$ref": "MetricRule" + }, + "type": "array" + } + }, + "type": "object" + }, + "QuotaLimit": { + "description": "`QuotaLimit` defines a specific limit that applies over a specified duration\nfor a limit type. There can be at most one limit for a duration and limit\ntype combination defined within a `QuotaGroup`.", + "id": "QuotaLimit", + "properties": { + "defaultLimit": { + "description": "Default number of tokens that can be consumed during the specified\nduration. This is the number of tokens assigned when a client\napplication developer activates the service for his/her project.\n\nSpecifying a value of 0 will block all requests. This can be used if you\nare provisioning quota to selected consumers and blocking others.\nSimilarly, a value of -1 will indicate an unlimited quota. No other\nnegative values are allowed.\n\nUsed by group-based quotas only.", + "format": "int64", + "type": "string" + }, + "description": { + "description": "Optional. User-visible, extended description for this quota limit.\nShould be used only when more context is needed to understand this limit\nthan provided by the limit's display name (see: `display_name`).", + "type": "string" + }, + "displayName": { + "description": "User-visible display name for this limit.\nOptional. If not set, the UI will provide a default display name based on\nthe quota configuration. This field can be used to override the default\ndisplay name generated from the configuration.", + "type": "string" + }, + "duration": { + "description": "Duration of this limit in textual notation. Example: \"100s\", \"24h\", \"1d\".\nFor duration longer than a day, only multiple of days is supported. We\nsupport only \"100s\" and \"1d\" for now. Additional support will be added in\nthe future. \"0\" indicates indefinite duration.\n\nUsed by group-based quotas only.", + "type": "string" + }, + "freeTier": { + "description": "Free tier value displayed in the Developers Console for this limit.\nThe free tier is the number of tokens that will be subtracted from the\nbilled amount when billing is enabled.\nThis field can only be set on a limit with duration \"1d\", in a billable\ngroup; it is invalid on any other limit. If this field is not set, it\ndefaults to 0, indicating that there is no free tier for this service.\n\nUsed by group-based quotas only.", + "format": "int64", + "type": "string" + }, + "maxLimit": { + "description": "Maximum number of tokens that can be consumed during the specified\nduration. Client application developers can override the default limit up\nto this maximum. If specified, this value cannot be set to a value less\nthan the default limit. If not specified, it is set to the default limit.\n\nTo allow clients to apply overrides with no upper bound, set this to -1,\nindicating unlimited maximum quota.\n\nUsed by group-based quotas only.", + "format": "int64", + "type": "string" + }, + "metric": { + "description": "The name of the metric this quota limit applies to. The quota limits with\nthe same metric will be checked together during runtime. The metric must be\ndefined within the service config.", + "type": "string" + }, + "name": { + "description": "Name of the quota limit.\n\nThe name must be provided, and it must be unique within the service. The\nname can only include alphanumeric characters as well as '-'.\n\nThe maximum length of the limit name is 64 characters.", + "type": "string" + }, + "unit": { + "description": "Specify the unit of the quota limit. It uses the same syntax as\nMetric.unit. The supported unit kinds are determined by the quota\nbackend system.\n\nHere are some examples:\n* \"1/min/{project}\" for quota per minute per project.\n\nNote: the order of unit components is insignificant.\nThe \"1\" at the beginning is required to follow the metric unit syntax.", + "type": "string" + }, + "values": { + "additionalProperties": { + "format": "int64", + "type": "string" + }, + "description": "Tiered limit values. You must specify this as a key:value pair, with an\ninteger value that is the maximum number of requests allowed for the\nspecified unit. Currently only STANDARD is supported.", + "type": "object" + } + }, + "type": "object" + }, + "Service": { + "description": "A service that is available for use by the consumer.", + "id": "Service", + "properties": { + "config": { + "$ref": "ServiceConfig", + "description": "The service configuration of the available service.\nSome fields may be filtered out of the configuration in responses to\nthe `ListServices` method. These fields are present only in responses to\nthe `GetService` method." + }, + "name": { + "description": "The resource name of the consumer and service.\n\nA valid name would be:\n- projects/123/services/serviceusage.googleapis.com", + "type": "string" + }, + "parent": { + "description": "The resource name of the consumer.\n\nA valid name would be:\n- projects/123", + "type": "string" + }, + "state": { + "description": "Whether or not the service has been enabled for use by the consumer.", + "enum": [ + "STATE_UNSPECIFIED", + "DISABLED", + "ENABLED" + ], + "enumDescriptions": [ + "The default value, which indicates that the enabled state of the service\nis unspecified or not meaningful. Currently, all consumers other than\nprojects (such as folders and organizations) are always in this state.", + "The service cannot be used by this consumer. It has either been explicitly\ndisabled, or has never been enabled.", + "The service has been explicitly enabled for use by this consumer." + ], + "type": "string" + } + }, + "type": "object" + }, + "ServiceConfig": { + "description": "The configuration of the service.", + "id": "ServiceConfig", + "properties": { + "apis": { + "description": "A list of API interfaces exported by this service. Contains only the names,\nversions, and method names of the interfaces.", + "items": { + "$ref": "Api" + }, + "type": "array" + }, + "authentication": { + "$ref": "Authentication", + "description": "Auth configuration. Contains only the OAuth rules." + }, + "documentation": { + "$ref": "Documentation", + "description": "Additional API documentation. Contains only the summary and the\ndocumentation URL." + }, + "endpoints": { + "description": "Configuration for network endpoints. Contains only the names and aliases\nof the endpoints.", + "items": { + "$ref": "Endpoint" + }, + "type": "array" + }, + "name": { + "description": "The DNS address at which this service is available.\n\nAn example DNS address would be:\n`calendar.googleapis.com`.", + "type": "string" + }, + "quota": { + "$ref": "Quota", + "description": "Quota configuration." + }, + "title": { + "description": "The product title for this service.", + "type": "string" + }, + "usage": { + "$ref": "Usage", + "description": "Configuration controlling usage of this service." + } + }, + "type": "object" + }, + "SourceContext": { + "description": "`SourceContext` represents information about the source of a\nprotobuf element, like the file in which it is defined.", + "id": "SourceContext", + "properties": { + "fileName": { + "description": "The path-qualified name of the .proto file that contained the associated\nprotobuf element. For example: `\"google/protobuf/source_context.proto\"`.", + "type": "string" + } + }, + "type": "object" + }, + "SourceInfo": { + "description": "Source information used to create a Service Config", + "id": "SourceInfo", + "properties": { + "sourceFiles": { + "description": "All files used during config generation.", + "items": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "type": "object" + }, + "type": "array" + } + }, + "type": "object" + }, + "Status": { + "description": "The `Status` type defines a logical error model that is suitable for different\nprogramming environments, including REST APIs and RPC APIs. It is used by\n[gRPC](https://github.com/grpc). The error model is designed to be:\n\n- Simple to use and understand for most users\n- Flexible enough to meet unexpected needs\n\n# Overview\n\nThe `Status` message contains three pieces of data: error code, error message,\nand error details. The error code should be an enum value of\ngoogle.rpc.Code, but it may accept additional error codes if needed. The\nerror message should be a developer-facing English message that helps\ndevelopers *understand* and *resolve* the error. If a localized user-facing\nerror message is needed, put the localized message in the error details or\nlocalize it in the client. The optional error details may contain arbitrary\ninformation about the error. There is a predefined set of error detail types\nin the package `google.rpc` that can be used for common error conditions.\n\n# Language mapping\n\nThe `Status` message is the logical representation of the error model, but it\nis not necessarily the actual wire format. When the `Status` message is\nexposed in different client libraries and different wire protocols, it can be\nmapped differently. For example, it will likely be mapped to some exceptions\nin Java, but more likely mapped to some error codes in C.\n\n# Other uses\n\nThe error model and the `Status` message can be used in a variety of\nenvironments, either with or without APIs, to provide a\nconsistent developer experience across different environments.\n\nExample uses of this error model include:\n\n- Partial errors. If a service needs to return partial errors to the client,\n it may embed the `Status` in the normal response to indicate the partial\n errors.\n\n- Workflow errors. A typical workflow has multiple steps. Each step may\n have a `Status` message for error reporting.\n\n- Batch operations. If a client uses batch request and batch response, the\n `Status` message should be used directly inside batch response, one for\n each error sub-response.\n\n- Asynchronous operations. If an API call embeds asynchronous operation\n results in its response, the status of those operations should be\n represented directly using the `Status` message.\n\n- Logging. If some API errors are stored in logs, the message `Status` could\n be used directly after any stripping needed for security/privacy reasons.", + "id": "Status", + "properties": { + "code": { + "description": "The status code, which should be an enum value of google.rpc.Code.", + "format": "int32", + "type": "integer" + }, + "details": { + "description": "A list of messages that carry the error details. There is a common set of\nmessage types for APIs to use.", + "items": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "A developer-facing error message, which should be in English. Any\nuser-facing error message should be localized and sent in the\ngoogle.rpc.Status.details field, or localized by the client.", + "type": "string" + } + }, + "type": "object" + }, + "Step": { + "description": "Represents the status of one operation step.", + "id": "Step", + "properties": { + "description": { + "description": "The short description of the step.", + "type": "string" + }, + "status": { + "description": "The status code.", + "enum": [ + "STATUS_UNSPECIFIED", + "DONE", + "NOT_STARTED", + "IN_PROGRESS", + "FAILED", + "CANCELLED" + ], + "enumDescriptions": [ + "Unspecifed code.", + "The operation or step has completed without errors.", + "The operation or step has not started yet.", + "The operation or step is in progress.", + "The operation or step has completed with errors. If the operation is\nrollbackable, the rollback completed with errors too.", + "The operation or step has completed with cancellation." + ], + "type": "string" + } + }, + "type": "object" + }, + "SystemParameter": { + "description": "Define a parameter's name and location. The parameter may be passed as either\nan HTTP header or a URL query parameter, and if both are passed the behavior\nis implementation-dependent.", + "id": "SystemParameter", + "properties": { + "httpHeader": { + "description": "Define the HTTP header name to use for the parameter. It is case\ninsensitive.", + "type": "string" + }, + "name": { + "description": "Define the name of the parameter, such as \"api_key\" . It is case sensitive.", + "type": "string" + }, + "urlQueryParameter": { + "description": "Define the URL query parameter name to use for the parameter. It is case\nsensitive.", + "type": "string" + } + }, + "type": "object" + }, + "SystemParameterRule": { + "description": "Define a system parameter rule mapping system parameter definitions to\nmethods.", + "id": "SystemParameterRule", + "properties": { + "parameters": { + "description": "Define parameters. Multiple names may be defined for a parameter.\nFor a given method call, only one of them should be used. If multiple\nnames are used the behavior is implementation-dependent.\nIf none of the specified names are present the behavior is\nparameter-dependent.", + "items": { + "$ref": "SystemParameter" + }, + "type": "array" + }, + "selector": { + "description": "Selects the methods to which this rule applies. Use '*' to indicate all\nmethods in all APIs.\n\nRefer to selector for syntax details.", + "type": "string" + } + }, + "type": "object" + }, + "SystemParameters": { + "description": "### System parameter configuration\n\nA system parameter is a special kind of parameter defined by the API\nsystem, not by an individual API. It is typically mapped to an HTTP header\nand/or a URL query parameter. This configuration specifies which methods\nchange the names of the system parameters.", + "id": "SystemParameters", + "properties": { + "rules": { + "description": "Define system parameters.\n\nThe parameters defined here will override the default parameters\nimplemented by the system. If this field is missing from the service\nconfig, default system parameters will be used. Default system parameters\nand names is implementation-dependent.\n\nExample: define api key for all methods\n\n system_parameters\n rules:\n - selector: \"*\"\n parameters:\n - name: api_key\n url_query_parameter: api_key\n\n\nExample: define 2 api key names for a specific method.\n\n system_parameters\n rules:\n - selector: \"/ListShelves\"\n parameters:\n - name: api_key\n http_header: Api-Key1\n - name: api_key\n http_header: Api-Key2\n\n**NOTE:** All service configuration rules follow \"last one wins\" order.", + "items": { + "$ref": "SystemParameterRule" + }, + "type": "array" + } + }, + "type": "object" + }, + "Type": { + "description": "A protocol buffer message type.", + "id": "Type", + "properties": { + "fields": { + "description": "The list of fields.", + "items": { + "$ref": "Field" + }, + "type": "array" + }, + "name": { + "description": "The fully qualified message name.", + "type": "string" + }, + "oneofs": { + "description": "The list of types appearing in `oneof` definitions in this type.", + "items": { + "type": "string" + }, + "type": "array" + }, + "options": { + "description": "The protocol buffer options.", + "items": { + "$ref": "Option" + }, + "type": "array" + }, + "sourceContext": { + "$ref": "SourceContext", + "description": "The source context." + }, + "syntax": { + "description": "The source syntax.", + "enum": [ + "SYNTAX_PROTO2", + "SYNTAX_PROTO3" + ], + "enumDescriptions": [ + "Syntax `proto2`.", + "Syntax `proto3`." + ], + "type": "string" + } + }, + "type": "object" + }, + "Usage": { + "description": "Configuration controlling usage of a service.", + "id": "Usage", + "properties": { + "producerNotificationChannel": { + "description": "The full resource name of a channel used for sending notifications to the\nservice producer.\n\nGoogle Service Management currently only supports\n[Google Cloud Pub/Sub](https://cloud.google.com/pubsub) as a notification\nchannel. To use Google Cloud Pub/Sub as the channel, this must be the name\nof a Cloud Pub/Sub topic that uses the Cloud Pub/Sub topic name format\ndocumented in https://cloud.google.com/pubsub/docs/overview.", + "type": "string" + }, + "requirements": { + "description": "Requirements that must be satisfied before a consumer project can use the\nservice. Each requirement is of the form \u003cservice.name\u003e/\u003crequirement-id\u003e;\nfor example 'serviceusage.googleapis.com/billing-enabled'.", + "items": { + "type": "string" + }, + "type": "array" + }, + "rules": { + "description": "A list of usage rules that apply to individual API methods.\n\n**NOTE:** All service configuration rules follow \"last one wins\" order.", + "items": { + "$ref": "UsageRule" + }, + "type": "array" + } + }, + "type": "object" + }, + "UsageRule": { + "description": "Usage configuration rules for the service.\n\nNOTE: Under development.\n\n\nUse this rule to configure unregistered calls for the service. Unregistered\ncalls are calls that do not contain consumer project identity.\n(Example: calls that do not contain an API key).\nBy default, API methods do not allow unregistered calls, and each method call\nmust be identified by a consumer project identity. Use this rule to\nallow/disallow unregistered calls.\n\nExample of an API that wants to allow unregistered calls for entire service.\n\n usage:\n rules:\n - selector: \"*\"\n allow_unregistered_calls: true\n\nExample of a method that wants to allow unregistered calls.\n\n usage:\n rules:\n - selector: \"google.example.library.v1.LibraryService.CreateBook\"\n allow_unregistered_calls: true", + "id": "UsageRule", + "properties": { + "allowUnregisteredCalls": { + "description": "If true, the selected method allows unregistered calls, e.g. calls\nthat don't identify any user or application.", + "type": "boolean" + }, + "selector": { + "description": "Selects the methods to which this rule applies. Use '*' to indicate all\nmethods in all APIs.\n\nRefer to selector for syntax details.", + "type": "string" + }, + "skipServiceControl": { + "description": "If true, the selected method should skip service control and the control\nplane features, such as quota and billing, will not be available.\nThis flag is used by Google Cloud Endpoints to bypass checks for internal\nmethods, such as service health check methods.", + "type": "boolean" + } + }, + "type": "object" + } + }, + "servicePath": "", + "title": "Service Usage API", + "version": "v1beta1", + "version_module": true +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/serviceusage/v1beta1/serviceusage-gen.go b/vendor/google.golang.org/api/serviceusage/v1beta1/serviceusage-gen.go new file mode 100644 index 000000000..24018cd84 --- /dev/null +++ b/vendor/google.golang.org/api/serviceusage/v1beta1/serviceusage-gen.go @@ -0,0 +1,5555 @@ +// Package serviceusage provides access to the Service Usage API. +// +// See https://cloud.google.com/service-usage/ +// +// Usage example: +// +// import "google.golang.org/api/serviceusage/v1beta1" +// ... +// serviceusageService, err := serviceusage.New(oauthHttpClient) +package serviceusage // import "google.golang.org/api/serviceusage/v1beta1" + +import ( + "bytes" + "encoding/json" + "errors" + "fmt" + context "golang.org/x/net/context" + ctxhttp "golang.org/x/net/context/ctxhttp" + gensupport "google.golang.org/api/gensupport" + googleapi "google.golang.org/api/googleapi" + "io" + "net/http" + "net/url" + "strconv" + "strings" +) + +// Always reference these packages, just in case the auto-generated code +// below doesn't. +var _ = bytes.NewBuffer +var _ = strconv.Itoa +var _ = fmt.Sprintf +var _ = json.NewDecoder +var _ = io.Copy +var _ = url.Parse +var _ = gensupport.MarshalJSON +var _ = googleapi.Version +var _ = errors.New +var _ = strings.Replace +var _ = context.Canceled +var _ = ctxhttp.Do + +const apiId = "serviceusage:v1beta1" +const apiName = "serviceusage" +const apiVersion = "v1beta1" +const basePath = "https://serviceusage.googleapis.com/" + +// OAuth2 scopes used by this API. +const ( + // View and manage your data across Google Cloud Platform services + CloudPlatformScope = "https://www.googleapis.com/auth/cloud-platform" + + // View your data across Google Cloud Platform services + CloudPlatformReadOnlyScope = "https://www.googleapis.com/auth/cloud-platform.read-only" + + // Manage your Google API service configuration + ServiceManagementScope = "https://www.googleapis.com/auth/service.management" +) + +func New(client *http.Client) (*APIService, error) { + if client == nil { + return nil, errors.New("client is nil") + } + s := &APIService{client: client, BasePath: basePath} + s.Operations = NewOperationsService(s) + s.Services = NewServicesService(s) + return s, nil +} + +type APIService struct { + client *http.Client + BasePath string // API endpoint base URL + UserAgent string // optional additional User-Agent fragment + + Operations *OperationsService + + Services *ServicesService +} + +func (s *APIService) userAgent() string { + if s.UserAgent == "" { + return googleapi.UserAgent + } + return googleapi.UserAgent + " " + s.UserAgent +} + +func NewOperationsService(s *APIService) *OperationsService { + rs := &OperationsService{s: s} + return rs +} + +type OperationsService struct { + s *APIService +} + +func NewServicesService(s *APIService) *ServicesService { + rs := &ServicesService{s: s} + return rs +} + +type ServicesService struct { + s *APIService +} + +// Api: Api is a light-weight descriptor for an API +// Interface. +// +// Interfaces are also described as "protocol buffer services" in some +// contexts, +// such as by the "service" keyword in a .proto file, but they are +// different +// from API Services, which represent a concrete implementation of an +// interface +// as opposed to simply a description of methods and bindings. They are +// also +// sometimes simply referred to as "APIs" in other contexts, such as the +// name of +// this message itself. See +// https://cloud.google.com/apis/design/glossary for +// detailed terminology. +type Api struct { + // Methods: The methods of this interface, in unspecified order. + Methods []*Method `json:"methods,omitempty"` + + // Mixins: Included interfaces. See Mixin. + Mixins []*Mixin `json:"mixins,omitempty"` + + // Name: The fully qualified name of this interface, including package + // name + // followed by the interface's simple name. + Name string `json:"name,omitempty"` + + // Options: Any metadata attached to the interface. + Options []*Option `json:"options,omitempty"` + + // SourceContext: Source context for the protocol buffer service + // represented by this + // message. + SourceContext *SourceContext `json:"sourceContext,omitempty"` + + // Syntax: The source syntax of the service. + // + // Possible values: + // "SYNTAX_PROTO2" - Syntax `proto2`. + // "SYNTAX_PROTO3" - Syntax `proto3`. + Syntax string `json:"syntax,omitempty"` + + // Version: A version string for this interface. If specified, must have + // the form + // `major-version.minor-version`, as in `1.10`. If the minor version + // is + // omitted, it defaults to zero. If the entire version field is empty, + // the + // major version is derived from the package name, as outlined below. If + // the + // field is not empty, the version in the package name will be verified + // to be + // consistent with what is provided here. + // + // The versioning schema uses [semantic + // versioning](http://semver.org) where the major version + // number + // indicates a breaking change and the minor version an + // additive, + // non-breaking change. Both version numbers are signals to users + // what to expect from different versions, and should be + // carefully + // chosen based on the product plan. + // + // The major version is also reflected in the package name of + // the + // interface, which must end in `v`, as + // in + // `google.feature.v1`. For major versions 0 and 1, the suffix can + // be omitted. Zero major versions must only be used for + // experimental, non-GA interfaces. + // + Version string `json:"version,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Methods") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Methods") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *Api) MarshalJSON() ([]byte, error) { + type NoMethod Api + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// AuthProvider: Configuration for an anthentication provider, including +// support for +// [JSON Web Token +// (JWT)](https://tools.ietf.org/html/draft-ietf-oauth-json-web-token-32) +// . +type AuthProvider struct { + // Audiences: The list of + // JWT + // [audiences](https://tools.ietf.org/html/draft-ietf-oauth-json-web- + // token-32#section-4.1.3). + // that are allowed to access. A JWT containing any of these audiences + // will + // be accepted. When this setting is absent, only JWTs with + // audience + // "https://Service_name/API_name" + // will be accepted. For example, if no audiences are in the + // setting, + // LibraryService API will only accept JWTs with the following + // audience + // "https://library-example.googleapis.com/google.example.librar + // y.v1.LibraryService". + // + // Example: + // + // audiences: bookstore_android.apps.googleusercontent.com, + // bookstore_web.apps.googleusercontent.com + Audiences string `json:"audiences,omitempty"` + + // AuthorizationUrl: Redirect URL if JWT token is required but no + // present or is expired. + // Implement authorizationUrl of securityDefinitions in OpenAPI spec. + AuthorizationUrl string `json:"authorizationUrl,omitempty"` + + // Id: The unique identifier of the auth provider. It will be referred + // to by + // `AuthRequirement.provider_id`. + // + // Example: "bookstore_auth". + Id string `json:"id,omitempty"` + + // Issuer: Identifies the principal that issued the JWT. + // See + // https://tools.ietf.org/html/draft-ietf-oauth-json-web-token-32#sec + // tion-4.1.1 + // Usually a URL or an email address. + // + // Example: https://securetoken.google.com + // Example: 1234567-compute@developer.gserviceaccount.com + Issuer string `json:"issuer,omitempty"` + + // JwksUri: URL of the provider's public key set to validate signature + // of the JWT. See + // [OpenID + // Discovery](https://openid.net/specs/openid-connect-discovery-1_0.html# + // ProviderMetadata). + // Optional if the key set document: + // - can be retrieved from + // [OpenID + // Discovery](https://openid.net/specs/openid-connect-discovery-1_0.html + // + // of the issuer. + // - can be inferred from the email domain of the issuer (e.g. a Google + // service account). + // + // Example: https://www.googleapis.com/oauth2/v1/certs + JwksUri string `json:"jwksUri,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Audiences") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Audiences") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *AuthProvider) MarshalJSON() ([]byte, error) { + type NoMethod AuthProvider + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// AuthRequirement: User-defined authentication requirements, including +// support for +// [JSON Web Token +// (JWT)](https://tools.ietf.org/html/draft-ietf-oauth-json-web-token-32) +// . +type AuthRequirement struct { + // Audiences: NOTE: This will be deprecated soon, once + // AuthProvider.audiences is + // implemented and accepted in all the runtime components. + // + // The list of + // JWT + // [audiences](https://tools.ietf.org/html/draft-ietf-oauth-json-web- + // token-32#section-4.1.3). + // that are allowed to access. A JWT containing any of these audiences + // will + // be accepted. When this setting is absent, only JWTs with + // audience + // "https://Service_name/API_name" + // will be accepted. For example, if no audiences are in the + // setting, + // LibraryService API will only accept JWTs with the following + // audience + // "https://library-example.googleapis.com/google.example.librar + // y.v1.LibraryService". + // + // Example: + // + // audiences: bookstore_android.apps.googleusercontent.com, + // bookstore_web.apps.googleusercontent.com + Audiences string `json:"audiences,omitempty"` + + // ProviderId: id from authentication provider. + // + // Example: + // + // provider_id: bookstore_auth + ProviderId string `json:"providerId,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Audiences") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Audiences") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *AuthRequirement) MarshalJSON() ([]byte, error) { + type NoMethod AuthRequirement + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// Authentication: `Authentication` defines the authentication +// configuration for an API. +// +// Example for an API targeted for external use: +// +// name: calendar.googleapis.com +// authentication: +// providers: +// - id: google_calendar_auth +// jwks_uri: https://www.googleapis.com/oauth2/v1/certs +// issuer: https://securetoken.google.com +// rules: +// - selector: "*" +// requirements: +// provider_id: google_calendar_auth +type Authentication struct { + // Providers: Defines a set of authentication providers that a service + // supports. + Providers []*AuthProvider `json:"providers,omitempty"` + + // Rules: A list of authentication rules that apply to individual API + // methods. + // + // **NOTE:** All service configuration rules follow "last one wins" + // order. + Rules []*AuthenticationRule `json:"rules,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Providers") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Providers") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *Authentication) MarshalJSON() ([]byte, error) { + type NoMethod Authentication + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// AuthenticationRule: Authentication rules for the service. +// +// By default, if a method has any authentication requirements, every +// request +// must include a valid credential matching one of the +// requirements. +// It's an error to include more than one kind of credential in a +// single +// request. +// +// If a method doesn't have any auth requirements, request credentials +// will be +// ignored. +type AuthenticationRule struct { + // AllowWithoutCredential: Whether to allow requests without a + // credential. The credential can be + // an OAuth token, Google cookies (first-party auth) or + // EndUserCreds. + // + // For requests without credentials, if the service control environment + // is + // specified, each incoming request **must** be associated with a + // service + // consumer. This can be done by passing an API key that belongs to a + // consumer + // project. + AllowWithoutCredential bool `json:"allowWithoutCredential,omitempty"` + + // CustomAuth: Configuration for custom authentication. + CustomAuth *CustomAuthRequirements `json:"customAuth,omitempty"` + + // Oauth: The requirements for OAuth credentials. + Oauth *OAuthRequirements `json:"oauth,omitempty"` + + // Requirements: Requirements for additional authentication providers. + Requirements []*AuthRequirement `json:"requirements,omitempty"` + + // Selector: Selects the methods to which this rule applies. + // + // Refer to selector for syntax details. + Selector string `json:"selector,omitempty"` + + // ForceSendFields is a list of field names (e.g. + // "AllowWithoutCredential") to unconditionally include in API requests. + // By default, fields with empty values are omitted from API requests. + // However, any non-pointer, non-interface field appearing in + // ForceSendFields will be sent to the server regardless of whether the + // field is empty or not. This may be used to include empty fields in + // Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "AllowWithoutCredential") + // to include in API requests with the JSON null value. By default, + // fields with empty values are omitted from API requests. However, any + // field with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *AuthenticationRule) MarshalJSON() ([]byte, error) { + type NoMethod AuthenticationRule + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// AuthorizationConfig: Configuration of authorization. +// +// This section determines the authorization provider, if unspecified, +// then no +// authorization check will be done. +// +// Example: +// +// experimental: +// authorization: +// provider: firebaserules.googleapis.com +type AuthorizationConfig struct { + // Provider: The name of the authorization provider, such + // as + // firebaserules.googleapis.com. + Provider string `json:"provider,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Provider") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Provider") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *AuthorizationConfig) MarshalJSON() ([]byte, error) { + type NoMethod AuthorizationConfig + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// AuthorizationRule: Authorization rule for API services. +// +// It specifies the permission(s) required for an API element for the +// overall +// API request to succeed. It is typically used to mark request message +// fields +// that contain the name of the resource and indicates the permissions +// that +// will be checked on that resource. +// +// For example: +// +// package google.storage.v1; +// +// message CopyObjectRequest { +// string source = 1 [ +// (google.api.authz).permissions = "storage.objects.get"]; +// +// string destination = 2 [ +// (google.api.authz).permissions = +// "storage.objects.create,storage.objects.update"]; +// } +type AuthorizationRule struct { + // Permissions: The required permissions. The acceptable values vary + // depend on the + // authorization system used. For Google APIs, it should be a + // comma-separated + // Google IAM permission values. When multiple permissions are listed, + // the + // semantics is not defined by the system. Additional documentation + // must + // be provided manually. + Permissions string `json:"permissions,omitempty"` + + // Selector: Selects the API elements to which this rule applies. + // + // Refer to selector for syntax details. + Selector string `json:"selector,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Permissions") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Permissions") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *AuthorizationRule) MarshalJSON() ([]byte, error) { + type NoMethod AuthorizationRule + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// Backend: `Backend` defines the backend configuration for a service. +type Backend struct { + // Rules: A list of API backend rules that apply to individual API + // methods. + // + // **NOTE:** All service configuration rules follow "last one wins" + // order. + Rules []*BackendRule `json:"rules,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Rules") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Rules") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *Backend) MarshalJSON() ([]byte, error) { + type NoMethod Backend + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// BackendRule: A backend rule provides configuration for an individual +// API element. +type BackendRule struct { + // Address: The address of the API backend. + Address string `json:"address,omitempty"` + + // Deadline: The number of seconds to wait for a response from a + // request. The default + // deadline for gRPC is infinite (no deadline) and HTTP requests is 5 + // seconds. + Deadline float64 `json:"deadline,omitempty"` + + // MinDeadline: Minimum deadline in seconds needed for this method. + // Calls having deadline + // value lower than this will be rejected. + MinDeadline float64 `json:"minDeadline,omitempty"` + + // Selector: Selects the methods to which this rule applies. + // + // Refer to selector for syntax details. + Selector string `json:"selector,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Address") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Address") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *BackendRule) MarshalJSON() ([]byte, error) { + type NoMethod BackendRule + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +func (s *BackendRule) UnmarshalJSON(data []byte) error { + type NoMethod BackendRule + var s1 struct { + Deadline gensupport.JSONFloat64 `json:"deadline"` + MinDeadline gensupport.JSONFloat64 `json:"minDeadline"` + *NoMethod + } + s1.NoMethod = (*NoMethod)(s) + if err := json.Unmarshal(data, &s1); err != nil { + return err + } + s.Deadline = float64(s1.Deadline) + s.MinDeadline = float64(s1.MinDeadline) + return nil +} + +// BatchEnableServicesRequest: Request message for the +// `BatchEnableServices` method. +type BatchEnableServicesRequest struct { + // ServiceIds: The identifiers of the services to enable on the + // project. + // + // A valid identifier would be: + // serviceusage.googleapis.com + // + // Enabling services requires that each service is public or is shared + // with + // the user enabling the service. + // + // Two or more services must be specified. To enable a single + // service, + // use the `EnableService` method instead. + // + // A single request can enable a maximum of 20 services at a time. If + // more + // than 20 services are specified, the request will fail, and no state + // changes + // will occur. + ServiceIds []string `json:"serviceIds,omitempty"` + + // ForceSendFields is a list of field names (e.g. "ServiceIds") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "ServiceIds") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *BatchEnableServicesRequest) MarshalJSON() ([]byte, error) { + type NoMethod BatchEnableServicesRequest + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// Billing: Billing related configuration of the service. +// +// The following example shows how to configure monitored resources and +// metrics +// for billing: +// +// monitored_resources: +// - type: library.googleapis.com/branch +// labels: +// - key: /city +// description: The city where the library branch is located +// in. +// - key: /name +// description: The name of the branch. +// metrics: +// - name: library.googleapis.com/book/borrowed_count +// metric_kind: DELTA +// value_type: INT64 +// billing: +// consumer_destinations: +// - monitored_resource: library.googleapis.com/branch +// metrics: +// - library.googleapis.com/book/borrowed_count +type Billing struct { + // ConsumerDestinations: Billing configurations for sending metrics to + // the consumer project. + // There can be multiple consumer destinations per service, each one + // must have + // a different monitored resource type. A metric can be used in at + // most + // one consumer destination. + ConsumerDestinations []*BillingDestination `json:"consumerDestinations,omitempty"` + + // ForceSendFields is a list of field names (e.g. + // "ConsumerDestinations") to unconditionally include in API requests. + // By default, fields with empty values are omitted from API requests. + // However, any non-pointer, non-interface field appearing in + // ForceSendFields will be sent to the server regardless of whether the + // field is empty or not. This may be used to include empty fields in + // Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "ConsumerDestinations") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *Billing) MarshalJSON() ([]byte, error) { + type NoMethod Billing + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// BillingDestination: Configuration of a specific billing destination +// (Currently only support +// bill against consumer project). +type BillingDestination struct { + // Metrics: Names of the metrics to report to this billing + // destination. + // Each name must be defined in Service.metrics section. + Metrics []string `json:"metrics,omitempty"` + + // MonitoredResource: The monitored resource type. The type must be + // defined in + // Service.monitored_resources section. + MonitoredResource string `json:"monitoredResource,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Metrics") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Metrics") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *BillingDestination) MarshalJSON() ([]byte, error) { + type NoMethod BillingDestination + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// Context: `Context` defines which contexts an API +// requests. +// +// Example: +// +// context: +// rules: +// - selector: "*" +// requested: +// - google.rpc.context.ProjectContext +// - google.rpc.context.OriginContext +// +// The above specifies that all methods in the API +// request +// `google.rpc.context.ProjectContext` +// and +// `google.rpc.context.OriginContext`. +// +// Available context types are defined in +// package +// `google.rpc.context`. +// +// This also provides mechanism to whitelist any protobuf message +// extension that +// can be sent in grpc metadata using +// “x-goog-ext--bin” +// and +// “x-goog-ext--jspb” format. For example, list any +// service +// specific protobuf types that can appear in grpc metadata as follows +// in your +// yaml file: +// +// Example: +// +// context: +// rules: +// - selector: +// "google.example.library.v1.LibraryService.CreateBook" +// allowed_request_extensions: +// - google.foo.v1.NewExtension +// allowed_response_extensions: +// - google.foo.v1.NewExtension +// +// You can also specify extension ID instead of fully qualified +// extension name +// here. +type Context struct { + // Rules: A list of RPC context rules that apply to individual API + // methods. + // + // **NOTE:** All service configuration rules follow "last one wins" + // order. + Rules []*ContextRule `json:"rules,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Rules") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Rules") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *Context) MarshalJSON() ([]byte, error) { + type NoMethod Context + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// ContextRule: A context rule provides information about the context +// for an individual API +// element. +type ContextRule struct { + // AllowedRequestExtensions: A list of full type names or extension IDs + // of extensions allowed in grpc + // side channel from client to backend. + AllowedRequestExtensions []string `json:"allowedRequestExtensions,omitempty"` + + // AllowedResponseExtensions: A list of full type names or extension IDs + // of extensions allowed in grpc + // side channel from backend to client. + AllowedResponseExtensions []string `json:"allowedResponseExtensions,omitempty"` + + // Provided: A list of full type names of provided contexts. + Provided []string `json:"provided,omitempty"` + + // Requested: A list of full type names of requested contexts. + Requested []string `json:"requested,omitempty"` + + // Selector: Selects the methods to which this rule applies. + // + // Refer to selector for syntax details. + Selector string `json:"selector,omitempty"` + + // ForceSendFields is a list of field names (e.g. + // "AllowedRequestExtensions") to unconditionally include in API + // requests. By default, fields with empty values are omitted from API + // requests. However, any non-pointer, non-interface field appearing in + // ForceSendFields will be sent to the server regardless of whether the + // field is empty or not. This may be used to include empty fields in + // Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "AllowedRequestExtensions") + // to include in API requests with the JSON null value. By default, + // fields with empty values are omitted from API requests. However, any + // field with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *ContextRule) MarshalJSON() ([]byte, error) { + type NoMethod ContextRule + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// Control: Selects and configures the service controller used by the +// service. The +// service controller handles features like abuse, quota, billing, +// logging, +// monitoring, etc. +type Control struct { + // Environment: The service control environment to use. If empty, no + // control plane + // feature (like quota and billing) will be enabled. + Environment string `json:"environment,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Environment") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Environment") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *Control) MarshalJSON() ([]byte, error) { + type NoMethod Control + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// CustomAuthRequirements: Configuration for a custom authentication +// provider. +type CustomAuthRequirements struct { + // Provider: A configuration string containing connection information + // for the + // authentication provider, typically formatted as a SmartService + // string + // (go/smartservice). + Provider string `json:"provider,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Provider") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Provider") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *CustomAuthRequirements) MarshalJSON() ([]byte, error) { + type NoMethod CustomAuthRequirements + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// CustomError: Customize service error responses. For example, list +// any service +// specific protobuf types that can appear in error detail lists +// of +// error responses. +// +// Example: +// +// custom_error: +// types: +// - google.foo.v1.CustomError +// - google.foo.v1.AnotherError +type CustomError struct { + // Rules: The list of custom error rules that apply to individual API + // messages. + // + // **NOTE:** All service configuration rules follow "last one wins" + // order. + Rules []*CustomErrorRule `json:"rules,omitempty"` + + // Types: The list of custom error detail types, e.g. + // 'google.foo.v1.CustomError'. + Types []string `json:"types,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Rules") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Rules") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *CustomError) MarshalJSON() ([]byte, error) { + type NoMethod CustomError + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// CustomErrorRule: A custom error rule. +type CustomErrorRule struct { + // IsErrorType: Mark this message as possible payload in error response. + // Otherwise, + // objects of this type will be filtered when they appear in error + // payload. + IsErrorType bool `json:"isErrorType,omitempty"` + + // Selector: Selects messages to which this rule applies. + // + // Refer to selector for syntax details. + Selector string `json:"selector,omitempty"` + + // ForceSendFields is a list of field names (e.g. "IsErrorType") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "IsErrorType") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *CustomErrorRule) MarshalJSON() ([]byte, error) { + type NoMethod CustomErrorRule + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// CustomHttpPattern: A custom pattern is used for defining custom HTTP +// verb. +type CustomHttpPattern struct { + // Kind: The name of this custom HTTP verb. + Kind string `json:"kind,omitempty"` + + // Path: The path matched by this custom verb. + Path string `json:"path,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Kind") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Kind") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *CustomHttpPattern) MarshalJSON() ([]byte, error) { + type NoMethod CustomHttpPattern + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// DisableServiceRequest: Request message for the `DisableService` +// method. +type DisableServiceRequest struct { +} + +// Documentation: `Documentation` provides the information for +// describing a service. +// +// Example: +//
documentation:
+//   summary: >
+//     The Google Calendar API gives access
+//     to most calendar features.
+//   pages:
+//   - name: Overview
+//     content: (== include google/foo/overview.md ==)
+//   - name: Tutorial
+//     content: (== include google/foo/tutorial.md ==)
+//     subpages;
+//     - name: Java
+//       content: (== include google/foo/tutorial_java.md ==)
+//   rules:
+//   - selector: google.calendar.Calendar.Get
+//     description: >
+//       ...
+//   - selector: google.calendar.Calendar.Put
+//     description: >
+//       ...
+// 
+// Documentation is provided in markdown syntax. In addition to +// standard markdown features, definition lists, tables and fenced +// code blocks are supported. Section headers can be provided and +// are +// interpreted relative to the section nesting of the context where +// a documentation fragment is embedded. +// +// Documentation from the IDL is merged with documentation defined +// via the config at normalization time, where documentation provided +// by config rules overrides IDL provided. +// +// A number of constructs specific to the API platform are supported +// in documentation text. +// +// In order to reference a proto element, the following +// notation can be +// used: +//
[fully.qualified.proto.name][]
+// T +// o override the display text used for the link, this can be +// used: +//
[display
+// text][fully.qualified.proto.name]
+// Text can be excluded from doc using the following +// notation: +//
(-- internal comment --)
+// +// A few directives are available in documentation. Note that +// directives must appear on a single line to be properly +// identified. The `include` directive includes a markdown file from +// an external source: +//
(== include path/to/file ==)
+// The `resource_for` directive marks a message to be the resource of +// a collection in REST view. If it is not specified, tools attempt +// to infer the resource from the operations in a +// collection: +//
(== resource_for v1.shelves.books
+// ==)
+// The directive `suppress_warning` does not directly affect +// documentation +// and is documented together with service config validation. +type Documentation struct { + // DocumentationRootUrl: The URL to the root of documentation. + DocumentationRootUrl string `json:"documentationRootUrl,omitempty"` + + // Overview: Declares a single overview page. For + // example: + //
documentation:
+	//   summary: ...
+	//   overview: (== include overview.md ==)
+	// 
+ // This is a shortcut for the following declaration (using pages + // style): + //
documentation:
+	//   summary: ...
+	//   pages:
+	//   - name: Overview
+	//     content: (== include overview.md ==)
+	// 
+ // Note: you cannot specify both `overview` field and `pages` field. + Overview string `json:"overview,omitempty"` + + // Pages: The top level pages for the documentation set. + Pages []*Page `json:"pages,omitempty"` + + // Rules: A list of documentation rules that apply to individual API + // elements. + // + // **NOTE:** All service configuration rules follow "last one wins" + // order. + Rules []*DocumentationRule `json:"rules,omitempty"` + + // Summary: A short summary of what the service does. Can only be + // provided by + // plain text. + Summary string `json:"summary,omitempty"` + + // ForceSendFields is a list of field names (e.g. + // "DocumentationRootUrl") to unconditionally include in API requests. + // By default, fields with empty values are omitted from API requests. + // However, any non-pointer, non-interface field appearing in + // ForceSendFields will be sent to the server regardless of whether the + // field is empty or not. This may be used to include empty fields in + // Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "DocumentationRootUrl") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *Documentation) MarshalJSON() ([]byte, error) { + type NoMethod Documentation + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// DocumentationRule: A documentation rule provides information about +// individual API elements. +type DocumentationRule struct { + // DeprecationDescription: Deprecation description of the selected + // element(s). It can be provided if an + // element is marked as `deprecated`. + DeprecationDescription string `json:"deprecationDescription,omitempty"` + + // Description: Description of the selected API(s). + Description string `json:"description,omitempty"` + + // Selector: The selector is a comma-separated list of patterns. Each + // pattern is a + // qualified name of the element which may end in "*", indicating a + // wildcard. + // Wildcards are only allowed at the end and for a whole component of + // the + // qualified name, i.e. "foo.*" is ok, but not "foo.b*" or "foo.*.bar". + // To + // specify a default for all applicable elements, the whole pattern + // "*" + // is used. + Selector string `json:"selector,omitempty"` + + // ForceSendFields is a list of field names (e.g. + // "DeprecationDescription") to unconditionally include in API requests. + // By default, fields with empty values are omitted from API requests. + // However, any non-pointer, non-interface field appearing in + // ForceSendFields will be sent to the server regardless of whether the + // field is empty or not. This may be used to include empty fields in + // Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "DeprecationDescription") + // to include in API requests with the JSON null value. By default, + // fields with empty values are omitted from API requests. However, any + // field with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *DocumentationRule) MarshalJSON() ([]byte, error) { + type NoMethod DocumentationRule + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// EnableServiceRequest: Request message for the `EnableService` method. +type EnableServiceRequest struct { +} + +// Endpoint: `Endpoint` describes a network endpoint that serves a set +// of APIs. +// A service may expose any number of endpoints, and all endpoints share +// the +// same service configuration, such as quota configuration and +// monitoring +// configuration. +// +// Example service configuration: +// +// name: library-example.googleapis.com +// endpoints: +// # Below entry makes 'google.example.library.v1.Library' +// # API be served from endpoint address +// library-example.googleapis.com. +// # It also allows HTTP OPTIONS calls to be passed to the +// backend, for +// # it to decide whether the subsequent cross-origin request is +// # allowed to proceed. +// - name: library-example.googleapis.com +// allow_cors: true +type Endpoint struct { + // Aliases: DEPRECATED: This field is no longer supported. Instead of + // using aliases, + // please specify multiple google.api.Endpoint for each of the + // intended + // aliases. + // + // Additional names that this endpoint will be hosted on. + Aliases []string `json:"aliases,omitempty"` + + // AllowCors: + // Allowing + // [CORS](https://en.wikipedia.org/wiki/Cross-origin_resource_sh + // aring), aka + // cross-domain traffic, would allow the backends served from this + // endpoint to + // receive and respond to HTTP OPTIONS requests. The response will be + // used by + // the browser to determine whether the subsequent cross-origin request + // is + // allowed to proceed. + AllowCors bool `json:"allowCors,omitempty"` + + // Features: The list of features enabled on this endpoint. + Features []string `json:"features,omitempty"` + + // Name: The canonical name of this endpoint. + Name string `json:"name,omitempty"` + + // Target: The specification of an Internet routable address of API + // frontend that will + // handle requests to this [API + // Endpoint](https://cloud.google.com/apis/design/glossary). + // It should be either a valid IPv4 address or a fully-qualified domain + // name. + // For example, "8.8.8.8" or "myservice.appspot.com". + Target string `json:"target,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Aliases") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Aliases") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *Endpoint) MarshalJSON() ([]byte, error) { + type NoMethod Endpoint + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// Enum: Enum type definition. +type Enum struct { + // Enumvalue: Enum value definitions. + Enumvalue []*EnumValue `json:"enumvalue,omitempty"` + + // Name: Enum type name. + Name string `json:"name,omitempty"` + + // Options: Protocol buffer options. + Options []*Option `json:"options,omitempty"` + + // SourceContext: The source context. + SourceContext *SourceContext `json:"sourceContext,omitempty"` + + // Syntax: The source syntax. + // + // Possible values: + // "SYNTAX_PROTO2" - Syntax `proto2`. + // "SYNTAX_PROTO3" - Syntax `proto3`. + Syntax string `json:"syntax,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Enumvalue") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Enumvalue") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *Enum) MarshalJSON() ([]byte, error) { + type NoMethod Enum + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// EnumValue: Enum value definition. +type EnumValue struct { + // Name: Enum value name. + Name string `json:"name,omitempty"` + + // Number: Enum value number. + Number int64 `json:"number,omitempty"` + + // Options: Protocol buffer options. + Options []*Option `json:"options,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Name") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Name") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *EnumValue) MarshalJSON() ([]byte, error) { + type NoMethod EnumValue + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// Experimental: Experimental service configuration. These configuration +// options can +// only be used by whitelisted users. +type Experimental struct { + // Authorization: Authorization configuration. + Authorization *AuthorizationConfig `json:"authorization,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Authorization") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Authorization") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *Experimental) MarshalJSON() ([]byte, error) { + type NoMethod Experimental + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// Field: A single field of a message type. +type Field struct { + // Cardinality: The field cardinality. + // + // Possible values: + // "CARDINALITY_UNKNOWN" - For fields with unknown cardinality. + // "CARDINALITY_OPTIONAL" - For optional fields. + // "CARDINALITY_REQUIRED" - For required fields. Proto2 syntax only. + // "CARDINALITY_REPEATED" - For repeated fields. + Cardinality string `json:"cardinality,omitempty"` + + // DefaultValue: The string value of the default value of this field. + // Proto2 syntax only. + DefaultValue string `json:"defaultValue,omitempty"` + + // JsonName: The field JSON name. + JsonName string `json:"jsonName,omitempty"` + + // Kind: The field type. + // + // Possible values: + // "TYPE_UNKNOWN" - Field type unknown. + // "TYPE_DOUBLE" - Field type double. + // "TYPE_FLOAT" - Field type float. + // "TYPE_INT64" - Field type int64. + // "TYPE_UINT64" - Field type uint64. + // "TYPE_INT32" - Field type int32. + // "TYPE_FIXED64" - Field type fixed64. + // "TYPE_FIXED32" - Field type fixed32. + // "TYPE_BOOL" - Field type bool. + // "TYPE_STRING" - Field type string. + // "TYPE_GROUP" - Field type group. Proto2 syntax only, and + // deprecated. + // "TYPE_MESSAGE" - Field type message. + // "TYPE_BYTES" - Field type bytes. + // "TYPE_UINT32" - Field type uint32. + // "TYPE_ENUM" - Field type enum. + // "TYPE_SFIXED32" - Field type sfixed32. + // "TYPE_SFIXED64" - Field type sfixed64. + // "TYPE_SINT32" - Field type sint32. + // "TYPE_SINT64" - Field type sint64. + Kind string `json:"kind,omitempty"` + + // Name: The field name. + Name string `json:"name,omitempty"` + + // Number: The field number. + Number int64 `json:"number,omitempty"` + + // OneofIndex: The index of the field type in `Type.oneofs`, for message + // or enumeration + // types. The first type has index 1; zero means the type is not in the + // list. + OneofIndex int64 `json:"oneofIndex,omitempty"` + + // Options: The protocol buffer options. + Options []*Option `json:"options,omitempty"` + + // Packed: Whether to use alternative packed wire representation. + Packed bool `json:"packed,omitempty"` + + // TypeUrl: The field type URL, without the scheme, for message or + // enumeration + // types. Example: "type.googleapis.com/google.protobuf.Timestamp". + TypeUrl string `json:"typeUrl,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Cardinality") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Cardinality") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *Field) MarshalJSON() ([]byte, error) { + type NoMethod Field + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleApiService: `Service` is the root object of Google service +// configuration schema. It +// describes basic information about a service, such as the name and +// the +// title, and delegates other aspects to sub-sections. Each sub-section +// is +// either a proto message or a repeated proto message that configures +// a +// specific aspect, such as auth. See each proto message definition for +// details. +// +// Example: +// +// type: google.api.Service +// config_version: 3 +// name: calendar.googleapis.com +// title: Google Calendar API +// apis: +// - name: google.calendar.v3.Calendar +// authentication: +// providers: +// - id: google_calendar_auth +// jwks_uri: https://www.googleapis.com/oauth2/v1/certs +// issuer: https://securetoken.google.com +// rules: +// - selector: "*" +// requirements: +// provider_id: google_calendar_auth +type GoogleApiService struct { + // Apis: A list of API interfaces exported by this service. Only the + // `name` field + // of the google.protobuf.Api needs to be provided by the + // configuration + // author, as the remaining fields will be derived from the IDL during + // the + // normalization process. It is an error to specify an API interface + // here + // which cannot be resolved against the associated IDL files. + Apis []*Api `json:"apis,omitempty"` + + // Authentication: Auth configuration. + Authentication *Authentication `json:"authentication,omitempty"` + + // Backend: API backend configuration. + Backend *Backend `json:"backend,omitempty"` + + // Billing: Billing configuration. + Billing *Billing `json:"billing,omitempty"` + + // ConfigVersion: The semantic version of the service configuration. The + // config version + // affects the interpretation of the service configuration. For + // example, + // certain features are enabled by default for certain config + // versions. + // The latest config version is `3`. + ConfigVersion int64 `json:"configVersion,omitempty"` + + // Context: Context configuration. + Context *Context `json:"context,omitempty"` + + // Control: Configuration for the service control plane. + Control *Control `json:"control,omitempty"` + + // CustomError: Custom error configuration. + CustomError *CustomError `json:"customError,omitempty"` + + // Documentation: Additional API documentation. + Documentation *Documentation `json:"documentation,omitempty"` + + // Endpoints: Configuration for network endpoints. If this is empty, + // then an endpoint + // with the same name as the service is automatically generated to + // service all + // defined APIs. + Endpoints []*Endpoint `json:"endpoints,omitempty"` + + // Enums: A list of all enum types included in this API service. + // Enums + // referenced directly or indirectly by the `apis` are + // automatically + // included. Enums which are not referenced but shall be + // included + // should be listed here by name. Example: + // + // enums: + // - name: google.someapi.v1.SomeEnum + Enums []*Enum `json:"enums,omitempty"` + + // Experimental: Experimental configuration. + Experimental *Experimental `json:"experimental,omitempty"` + + // Http: HTTP configuration. + Http *Http `json:"http,omitempty"` + + // Id: A unique ID for a specific instance of this message, typically + // assigned + // by the client for tracking purpose. If empty, the server may choose + // to + // generate one instead. + Id string `json:"id,omitempty"` + + // Logging: Logging configuration. + Logging *Logging `json:"logging,omitempty"` + + // Logs: Defines the logs used by this service. + Logs []*LogDescriptor `json:"logs,omitempty"` + + // Metrics: Defines the metrics used by this service. + Metrics []*MetricDescriptor `json:"metrics,omitempty"` + + // MonitoredResources: Defines the monitored resources used by this + // service. This is required + // by the Service.monitoring and Service.logging configurations. + MonitoredResources []*MonitoredResourceDescriptor `json:"monitoredResources,omitempty"` + + // Monitoring: Monitoring configuration. + Monitoring *Monitoring `json:"monitoring,omitempty"` + + // Name: The DNS address at which this service is available, + // e.g. `calendar.googleapis.com`. + Name string `json:"name,omitempty"` + + // ProducerProjectId: The Google project that owns this service. + ProducerProjectId string `json:"producerProjectId,omitempty"` + + // Quota: Quota configuration. + Quota *Quota `json:"quota,omitempty"` + + // SourceInfo: Output only. The source information for this + // configuration if available. + SourceInfo *SourceInfo `json:"sourceInfo,omitempty"` + + // SystemParameters: System parameter configuration. + SystemParameters *SystemParameters `json:"systemParameters,omitempty"` + + // SystemTypes: A list of all proto message types included in this API + // service. + // It serves similar purpose as [google.api.Service.types], except + // that + // these types are not needed by user-defined APIs. Therefore, they will + // not + // show up in the generated discovery doc. This field should only be + // used + // to define system APIs in ESF. + SystemTypes []*Type `json:"systemTypes,omitempty"` + + // Title: The product title for this service. + Title string `json:"title,omitempty"` + + // Types: A list of all proto message types included in this API + // service. + // Types referenced directly or indirectly by the `apis` + // are + // automatically included. Messages which are not referenced but + // shall be included, such as types used by the `google.protobuf.Any` + // type, + // should be listed here by name. Example: + // + // types: + // - name: google.protobuf.Int32 + Types []*Type `json:"types,omitempty"` + + // Usage: Configuration controlling usage of this service. + Usage *Usage `json:"usage,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Apis") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Apis") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleApiService) MarshalJSON() ([]byte, error) { + type NoMethod GoogleApiService + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// Http: Defines the HTTP configuration for an API service. It contains +// a list of +// HttpRule, each specifying the mapping of an RPC method +// to one or more HTTP REST API methods. +type Http struct { + // FullyDecodeReservedExpansion: When set to true, URL path parmeters + // will be fully URI-decoded except in + // cases of single segment matches in reserved expansion, where "%2F" + // will be + // left encoded. + // + // The default behavior is to not decode RFC 6570 reserved characters in + // multi + // segment matches. + FullyDecodeReservedExpansion bool `json:"fullyDecodeReservedExpansion,omitempty"` + + // Rules: A list of HTTP configuration rules that apply to individual + // API methods. + // + // **NOTE:** All service configuration rules follow "last one wins" + // order. + Rules []*HttpRule `json:"rules,omitempty"` + + // ForceSendFields is a list of field names (e.g. + // "FullyDecodeReservedExpansion") to unconditionally include in API + // requests. By default, fields with empty values are omitted from API + // requests. However, any non-pointer, non-interface field appearing in + // ForceSendFields will be sent to the server regardless of whether the + // field is empty or not. This may be used to include empty fields in + // Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. + // "FullyDecodeReservedExpansion") to include in API requests with the + // JSON null value. By default, fields with empty values are omitted + // from API requests. However, any field with an empty value appearing + // in NullFields will be sent to the server as null. It is an error if a + // field in this list has a non-empty value. This may be used to include + // null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *Http) MarshalJSON() ([]byte, error) { + type NoMethod Http + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// HttpRule: `HttpRule` defines the mapping of an RPC method to one or +// more HTTP +// REST API methods. The mapping specifies how different portions of the +// RPC +// request message are mapped to URL path, URL query parameters, +// and +// HTTP request body. The mapping is typically specified as +// an +// `google.api.http` annotation on the RPC method, +// see "google/api/annotations.proto" for details. +// +// The mapping consists of a field specifying the path template +// and +// method kind. The path template can refer to fields in the +// request +// message, as in the example below which describes a REST GET +// operation on a resource collection of messages: +// +// +// service Messaging { +// rpc GetMessage(GetMessageRequest) returns (Message) { +// option (google.api.http).get = +// "/v1/messages/{message_id}/{sub.subfield}"; +// } +// } +// message GetMessageRequest { +// message SubMessage { +// string subfield = 1; +// } +// string message_id = 1; // mapped to the URL +// SubMessage sub = 2; // `sub.subfield` is url-mapped +// } +// message Message { +// string text = 1; // content of the resource +// } +// +// The same http annotation can alternatively be expressed inside +// the +// `GRPC API Configuration` YAML file. +// +// http: +// rules: +// - selector: .Messaging.GetMessage +// get: /v1/messages/{message_id}/{sub.subfield} +// +// This definition enables an automatic, bidrectional mapping of +// HTTP +// JSON to RPC. Example: +// +// HTTP | RPC +// -----|----- +// `GET /v1/messages/123456/foo` | `GetMessage(message_id: "123456" +// sub: SubMessage(subfield: "foo"))` +// +// In general, not only fields but also field paths can be +// referenced +// from a path pattern. Fields mapped to the path pattern cannot +// be +// repeated and must have a primitive (non-message) type. +// +// Any fields in the request message which are not bound by the +// path +// pattern automatically become (optional) HTTP query +// parameters. Assume the following definition of the request +// message: +// +// +// service Messaging { +// rpc GetMessage(GetMessageRequest) returns (Message) { +// option (google.api.http).get = "/v1/messages/{message_id}"; +// } +// } +// message GetMessageRequest { +// message SubMessage { +// string subfield = 1; +// } +// string message_id = 1; // mapped to the URL +// int64 revision = 2; // becomes a parameter +// SubMessage sub = 3; // `sub.subfield` becomes a parameter +// } +// +// +// This enables a HTTP JSON to RPC mapping as below: +// +// HTTP | RPC +// -----|----- +// `GET /v1/messages/123456?revision=2&sub.subfield=foo` | +// `GetMessage(message_id: "123456" revision: 2 sub: +// SubMessage(subfield: "foo"))` +// +// Note that fields which are mapped to HTTP parameters must have +// a +// primitive type or a repeated primitive type. Message types are +// not +// allowed. In the case of a repeated type, the parameter can +// be +// repeated in the URL, as in `...?param=A¶m=B`. +// +// For HTTP method kinds which allow a request body, the `body` +// field +// specifies the mapping. Consider a REST update method on the +// message resource collection: +// +// +// service Messaging { +// rpc UpdateMessage(UpdateMessageRequest) returns (Message) { +// option (google.api.http) = { +// put: "/v1/messages/{message_id}" +// body: "message" +// }; +// } +// } +// message UpdateMessageRequest { +// string message_id = 1; // mapped to the URL +// Message message = 2; // mapped to the body +// } +// +// +// The following HTTP JSON to RPC mapping is enabled, where +// the +// representation of the JSON in the request body is determined +// by +// protos JSON encoding: +// +// HTTP | RPC +// -----|----- +// `PUT /v1/messages/123456 { "text": "Hi!" }` | +// `UpdateMessage(message_id: "123456" message { text: "Hi!" })` +// +// The special name `*` can be used in the body mapping to define +// that +// every field not bound by the path template should be mapped to +// the +// request body. This enables the following alternative definition +// of +// the update method: +// +// service Messaging { +// rpc UpdateMessage(Message) returns (Message) { +// option (google.api.http) = { +// put: "/v1/messages/{message_id}" +// body: "*" +// }; +// } +// } +// message Message { +// string message_id = 1; +// string text = 2; +// } +// +// +// The following HTTP JSON to RPC mapping is enabled: +// +// HTTP | RPC +// -----|----- +// `PUT /v1/messages/123456 { "text": "Hi!" }` | +// `UpdateMessage(message_id: "123456" text: "Hi!")` +// +// Note that when using `*` in the body mapping, it is not possible +// to +// have HTTP parameters, as all fields not bound by the path end in +// the body. This makes this option more rarely used in practice +// of +// defining REST APIs. The common usage of `*` is in custom +// methods +// which don't use the URL at all for transferring data. +// +// It is possible to define multiple HTTP methods for one RPC by +// using +// the `additional_bindings` option. Example: +// +// service Messaging { +// rpc GetMessage(GetMessageRequest) returns (Message) { +// option (google.api.http) = { +// get: "/v1/messages/{message_id}" +// additional_bindings { +// get: "/v1/users/{user_id}/messages/{message_id}" +// } +// }; +// } +// } +// message GetMessageRequest { +// string message_id = 1; +// string user_id = 2; +// } +// +// +// This enables the following two alternative HTTP JSON to +// RPC +// mappings: +// +// HTTP | RPC +// -----|----- +// `GET /v1/messages/123456` | `GetMessage(message_id: "123456")` +// `GET /v1/users/me/messages/123456` | `GetMessage(user_id: "me" +// message_id: "123456")` +// +// # Rules for HTTP mapping +// +// The rules for mapping HTTP path, query parameters, and body fields +// to the request message are as follows: +// +// 1. The `body` field specifies either `*` or a field path, or is +// omitted. If omitted, it indicates there is no HTTP request +// body. +// 2. Leaf fields (recursive expansion of nested messages in the +// request) can be classified into three types: +// (a) Matched in the URL template. +// (b) Covered by body (if body is `*`, everything except (a) +// fields; +// else everything under the body field) +// (c) All other fields. +// 3. URL query parameters found in the HTTP request are mapped to (c) +// fields. +// 4. Any body sent with an HTTP request can contain only (b) +// fields. +// +// The syntax of the path template is as follows: +// +// Template = "/" Segments [ Verb ] ; +// Segments = Segment { "/" Segment } ; +// Segment = "*" | "**" | LITERAL | Variable ; +// Variable = "{" FieldPath [ "=" Segments ] "}" ; +// FieldPath = IDENT { "." IDENT } ; +// Verb = ":" LITERAL ; +// +// The syntax `*` matches a single path segment. The syntax `**` matches +// zero +// or more path segments, which must be the last part of the path except +// the +// `Verb`. The syntax `LITERAL` matches literal text in the path. +// +// The syntax `Variable` matches part of the URL path as specified by +// its +// template. A variable template must not contain other variables. If a +// variable +// matches a single path segment, its template may be omitted, e.g. +// `{var}` +// is equivalent to `{var=*}`. +// +// If a variable contains exactly one path segment, such as "{var}" +// or +// "{var=*}", when such a variable is expanded into a URL path, all +// characters +// except `[-_.~0-9a-zA-Z]` are percent-encoded. Such variables show up +// in the +// Discovery Document as `{var}`. +// +// If a variable contains one or more path segments, such as +// "{var=foo/*}" +// or "{var=**}", when such a variable is expanded into a URL path, +// all +// characters except `[-_.~/0-9a-zA-Z]` are percent-encoded. Such +// variables +// show up in the Discovery Document as `{+var}`. +// +// NOTE: While the single segment variable matches the semantics of +// [RFC 6570](https://tools.ietf.org/html/rfc6570) Section 3.2.2 +// Simple String Expansion, the multi segment variable **does not** +// match +// RFC 6570 Reserved Expansion. The reason is that the Reserved +// Expansion +// does not expand special characters like `?` and `#`, which would +// lead +// to invalid URLs. +// +// NOTE: the field paths in variables and in the `body` must not refer +// to +// repeated fields or map fields. +type HttpRule struct { + // AdditionalBindings: Additional HTTP bindings for the selector. Nested + // bindings must + // not contain an `additional_bindings` field themselves (that is, + // the nesting may only be one level deep). + AdditionalBindings []*HttpRule `json:"additionalBindings,omitempty"` + + // Authorizations: Specifies the permission(s) required for an API + // element for the overall + // API request to succeed. It is typically used to mark request message + // fields + // that contain the name of the resource and indicates the permissions + // that + // will be checked on that resource. + Authorizations []*AuthorizationRule `json:"authorizations,omitempty"` + + // Body: The name of the request field whose value is mapped to the HTTP + // body, or + // `*` for mapping all fields not captured by the path pattern to the + // HTTP + // body. NOTE: the referred field must not be a repeated field and must + // be + // present at the top-level of request message type. + Body string `json:"body,omitempty"` + + // Custom: The custom pattern is used for specifying an HTTP method that + // is not + // included in the `pattern` field, such as HEAD, or "*" to leave + // the + // HTTP method unspecified for this rule. The wild-card rule is + // useful + // for services that provide content to Web (HTML) clients. + Custom *CustomHttpPattern `json:"custom,omitempty"` + + // Delete: Used for deleting a resource. + Delete string `json:"delete,omitempty"` + + // Get: Used for listing and getting information about resources. + Get string `json:"get,omitempty"` + + // MediaDownload: Use this only for Scotty Requests. Do not use this for + // bytestream methods. + // For media support, add instead [][google.bytestream.RestByteStream] + // as an + // API to your configuration. + MediaDownload *MediaDownload `json:"mediaDownload,omitempty"` + + // MediaUpload: Use this only for Scotty Requests. Do not use this for + // media support using + // Bytestream, add instead + // [][google.bytestream.RestByteStream] as an API to your + // configuration for Bytestream methods. + MediaUpload *MediaUpload `json:"mediaUpload,omitempty"` + + // Patch: Used for updating a resource. + Patch string `json:"patch,omitempty"` + + // Post: Used for creating a resource. + Post string `json:"post,omitempty"` + + // Put: Used for updating a resource. + Put string `json:"put,omitempty"` + + // RestCollection: DO NOT USE. This is an experimental field. + // + // Optional. The REST collection name is by default derived from the + // URL + // pattern. If specified, this field overrides the default collection + // name. + // Example: + // + // rpc AddressesAggregatedList(AddressesAggregatedListRequest) + // returns (AddressesAggregatedListResponse) { + // option (google.api.http) = { + // get: "/v1/projects/{project_id}/aggregated/addresses" + // rest_collection: "projects.addresses" + // }; + // } + // + // This method has the automatically derived collection + // name + // "projects.aggregated". Because, semantically, this rpc is actually + // an + // operation on the "projects.addresses" collection, the + // `rest_collection` + // field is configured to override the derived collection name. + RestCollection string `json:"restCollection,omitempty"` + + // RestMethodName: DO NOT USE. This is an experimental field. + // + // Optional. The rest method name is by default derived from the + // URL + // pattern. If specified, this field overrides the default method + // name. + // Example: + // + // rpc CreateResource(CreateResourceRequest) + // returns (CreateResourceResponse) { + // option (google.api.http) = { + // post: "/v1/resources", + // body: "resource", + // rest_method_name: "insert" + // }; + // } + // + // This method has the automatically derived rest method name + // "create", but for backwards compatibility with apiary, it is + // specified as + // insert. + RestMethodName string `json:"restMethodName,omitempty"` + + // Selector: Selects methods to which this rule applies. + // + // Refer to selector for syntax details. + Selector string `json:"selector,omitempty"` + + // ForceSendFields is a list of field names (e.g. "AdditionalBindings") + // to unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "AdditionalBindings") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *HttpRule) MarshalJSON() ([]byte, error) { + type NoMethod HttpRule + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// LabelDescriptor: A description of a label. +type LabelDescriptor struct { + // Description: A human-readable description for the label. + Description string `json:"description,omitempty"` + + // Key: The label key. + Key string `json:"key,omitempty"` + + // ValueType: The type of data that can be assigned to the label. + // + // Possible values: + // "STRING" - A variable-length string. This is the default. + // "BOOL" - Boolean; true or false. + // "INT64" - A 64-bit signed integer. + ValueType string `json:"valueType,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Description") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Description") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *LabelDescriptor) MarshalJSON() ([]byte, error) { + type NoMethod LabelDescriptor + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// ListOperationsResponse: The response message for +// Operations.ListOperations. +type ListOperationsResponse struct { + // NextPageToken: The standard List next-page token. + NextPageToken string `json:"nextPageToken,omitempty"` + + // Operations: A list of operations that matches the specified filter in + // the request. + Operations []*Operation `json:"operations,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "NextPageToken") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "NextPageToken") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *ListOperationsResponse) MarshalJSON() ([]byte, error) { + type NoMethod ListOperationsResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// ListServicesResponse: Response message for the `ListServices` method. +type ListServicesResponse struct { + // NextPageToken: Token that can be passed to `ListServices` to resume a + // paginated + // query. + NextPageToken string `json:"nextPageToken,omitempty"` + + // Services: The available services for the requested project. + Services []*Service `json:"services,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "NextPageToken") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "NextPageToken") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *ListServicesResponse) MarshalJSON() ([]byte, error) { + type NoMethod ListServicesResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// LogDescriptor: A description of a log type. Example in YAML format: +// +// - name: library.googleapis.com/activity_history +// description: The history of borrowing and returning library +// items. +// display_name: Activity +// labels: +// - key: /customer_id +// description: Identifier of a library customer +type LogDescriptor struct { + // Description: A human-readable description of this log. This + // information appears in + // the documentation and can contain details. + Description string `json:"description,omitempty"` + + // DisplayName: The human-readable name for this log. This information + // appears on + // the user interface and should be concise. + DisplayName string `json:"displayName,omitempty"` + + // Labels: The set of labels that are available to describe a specific + // log entry. + // Runtime requests that contain labels not specified here + // are + // considered invalid. + Labels []*LabelDescriptor `json:"labels,omitempty"` + + // Name: The name of the log. It must be less than 512 characters long + // and can + // include the following characters: upper- and lower-case + // alphanumeric + // characters [A-Za-z0-9], and punctuation characters including + // slash, underscore, hyphen, period [/_-.]. + Name string `json:"name,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Description") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Description") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *LogDescriptor) MarshalJSON() ([]byte, error) { + type NoMethod LogDescriptor + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// Logging: Logging configuration of the service. +// +// The following example shows how to configure logs to be sent to +// the +// producer and consumer projects. In the example, the +// `activity_history` +// log is sent to both the producer and consumer projects, whereas +// the +// `purchase_history` log is only sent to the producer project. +// +// monitored_resources: +// - type: library.googleapis.com/branch +// labels: +// - key: /city +// description: The city where the library branch is located +// in. +// - key: /name +// description: The name of the branch. +// logs: +// - name: activity_history +// labels: +// - key: /customer_id +// - name: purchase_history +// logging: +// producer_destinations: +// - monitored_resource: library.googleapis.com/branch +// logs: +// - activity_history +// - purchase_history +// consumer_destinations: +// - monitored_resource: library.googleapis.com/branch +// logs: +// - activity_history +type Logging struct { + // ConsumerDestinations: Logging configurations for sending logs to the + // consumer project. + // There can be multiple consumer destinations, each one must have + // a + // different monitored resource type. A log can be used in at most + // one consumer destination. + ConsumerDestinations []*LoggingDestination `json:"consumerDestinations,omitempty"` + + // ProducerDestinations: Logging configurations for sending logs to the + // producer project. + // There can be multiple producer destinations, each one must have + // a + // different monitored resource type. A log can be used in at most + // one producer destination. + ProducerDestinations []*LoggingDestination `json:"producerDestinations,omitempty"` + + // ForceSendFields is a list of field names (e.g. + // "ConsumerDestinations") to unconditionally include in API requests. + // By default, fields with empty values are omitted from API requests. + // However, any non-pointer, non-interface field appearing in + // ForceSendFields will be sent to the server regardless of whether the + // field is empty or not. This may be used to include empty fields in + // Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "ConsumerDestinations") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *Logging) MarshalJSON() ([]byte, error) { + type NoMethod Logging + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// LoggingDestination: Configuration of a specific logging destination +// (the producer project +// or the consumer project). +type LoggingDestination struct { + // Logs: Names of the logs to be sent to this destination. Each name + // must + // be defined in the Service.logs section. If the log name is + // not a domain scoped name, it will be automatically prefixed with + // the service name followed by "/". + Logs []string `json:"logs,omitempty"` + + // MonitoredResource: The monitored resource type. The type must be + // defined in the + // Service.monitored_resources section. + MonitoredResource string `json:"monitoredResource,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Logs") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Logs") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *LoggingDestination) MarshalJSON() ([]byte, error) { + type NoMethod LoggingDestination + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// MediaDownload: Defines the Media configuration for a service in case +// of a download. +// Use this only for Scotty Requests. Do not use this for media support +// using +// Bytestream, add instead [][google.bytestream.RestByteStream] as an +// API to +// your configuration for Bytestream methods. +type MediaDownload struct { + // CompleteNotification: A boolean that determines whether a + // notification for the completion of a + // download should be sent to the backend. + CompleteNotification bool `json:"completeNotification,omitempty"` + + // DownloadService: DO NOT USE FIELDS BELOW THIS LINE UNTIL THIS WARNING + // IS REMOVED. + // + // Specify name of the download service if one is used for download. + DownloadService string `json:"downloadService,omitempty"` + + // Dropzone: Name of the Scotty dropzone to use for the current API. + Dropzone string `json:"dropzone,omitempty"` + + // Enabled: Whether download is enabled. + Enabled bool `json:"enabled,omitempty"` + + // MaxDirectDownloadSize: Optional maximum acceptable size for direct + // download. + // The size is specified in bytes. + MaxDirectDownloadSize int64 `json:"maxDirectDownloadSize,omitempty,string"` + + // UseDirectDownload: A boolean that determines if direct download from + // ESF should be used for + // download of this media. + UseDirectDownload bool `json:"useDirectDownload,omitempty"` + + // ForceSendFields is a list of field names (e.g. + // "CompleteNotification") to unconditionally include in API requests. + // By default, fields with empty values are omitted from API requests. + // However, any non-pointer, non-interface field appearing in + // ForceSendFields will be sent to the server regardless of whether the + // field is empty or not. This may be used to include empty fields in + // Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "CompleteNotification") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *MediaDownload) MarshalJSON() ([]byte, error) { + type NoMethod MediaDownload + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// MediaUpload: Defines the Media configuration for a service in case of +// an upload. +// Use this only for Scotty Requests. Do not use this for media support +// using +// Bytestream, add instead [][google.bytestream.RestByteStream] as an +// API to +// your configuration for Bytestream methods. +type MediaUpload struct { + // CompleteNotification: A boolean that determines whether a + // notification for the completion of an + // upload should be sent to the backend. These notifications will not be + // seen + // by the client and will not consume quota. + CompleteNotification bool `json:"completeNotification,omitempty"` + + // Dropzone: Name of the Scotty dropzone to use for the current API. + Dropzone string `json:"dropzone,omitempty"` + + // Enabled: Whether upload is enabled. + Enabled bool `json:"enabled,omitempty"` + + // MaxSize: Optional maximum acceptable size for an upload. + // The size is specified in bytes. + MaxSize int64 `json:"maxSize,omitempty,string"` + + // MimeTypes: An array of mimetype patterns. Esf will only accept + // uploads that match one + // of the given patterns. + MimeTypes []string `json:"mimeTypes,omitempty"` + + // ProgressNotification: Whether to receive a notification for progress + // changes of media upload. + ProgressNotification bool `json:"progressNotification,omitempty"` + + // StartNotification: Whether to receive a notification on the start of + // media upload. + StartNotification bool `json:"startNotification,omitempty"` + + // UploadService: DO NOT USE FIELDS BELOW THIS LINE UNTIL THIS WARNING + // IS REMOVED. + // + // Specify name of the upload service if one is used for upload. + UploadService string `json:"uploadService,omitempty"` + + // ForceSendFields is a list of field names (e.g. + // "CompleteNotification") to unconditionally include in API requests. + // By default, fields with empty values are omitted from API requests. + // However, any non-pointer, non-interface field appearing in + // ForceSendFields will be sent to the server regardless of whether the + // field is empty or not. This may be used to include empty fields in + // Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "CompleteNotification") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *MediaUpload) MarshalJSON() ([]byte, error) { + type NoMethod MediaUpload + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// Method: Method represents a method of an API interface. +type Method struct { + // Name: The simple name of this method. + Name string `json:"name,omitempty"` + + // Options: Any metadata attached to the method. + Options []*Option `json:"options,omitempty"` + + // RequestStreaming: If true, the request is streamed. + RequestStreaming bool `json:"requestStreaming,omitempty"` + + // RequestTypeUrl: A URL of the input message type. + RequestTypeUrl string `json:"requestTypeUrl,omitempty"` + + // ResponseStreaming: If true, the response is streamed. + ResponseStreaming bool `json:"responseStreaming,omitempty"` + + // ResponseTypeUrl: The URL of the output message type. + ResponseTypeUrl string `json:"responseTypeUrl,omitempty"` + + // Syntax: The source syntax of this method. + // + // Possible values: + // "SYNTAX_PROTO2" - Syntax `proto2`. + // "SYNTAX_PROTO3" - Syntax `proto3`. + Syntax string `json:"syntax,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Name") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Name") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *Method) MarshalJSON() ([]byte, error) { + type NoMethod Method + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// MetricDescriptor: Defines a metric type and its schema. Once a metric +// descriptor is created, +// deleting or altering it stops data collection and makes the metric +// type's +// existing data unusable. +type MetricDescriptor struct { + // Description: A detailed description of the metric, which can be used + // in documentation. + Description string `json:"description,omitempty"` + + // DisplayName: A concise name for the metric, which can be displayed in + // user interfaces. + // Use sentence case without an ending period, for example "Request + // count". + // This field is optional but it is recommended to be set for any + // metrics + // associated with user-visible concepts, such as Quota. + DisplayName string `json:"displayName,omitempty"` + + // Labels: The set of labels that can be used to describe a + // specific + // instance of this metric type. For example, + // the + // `appengine.googleapis.com/http/server/response_latencies` metric + // type has a label for the HTTP response code, `response_code`, so + // you can look at latencies for successful responses or just + // for responses that failed. + Labels []*LabelDescriptor `json:"labels,omitempty"` + + // MetricKind: Whether the metric records instantaneous values, changes + // to a value, etc. + // Some combinations of `metric_kind` and `value_type` might not be + // supported. + // + // Possible values: + // "METRIC_KIND_UNSPECIFIED" - Do not use this default value. + // "GAUGE" - An instantaneous measurement of a value. + // "DELTA" - The change in a value during a time interval. + // "CUMULATIVE" - A value accumulated over a time interval. + // Cumulative + // measurements in a time series should have the same start time + // and increasing end times, until an event resets the cumulative + // value to zero and sets a new start time for the following + // points. + MetricKind string `json:"metricKind,omitempty"` + + // Name: The resource name of the metric descriptor. + Name string `json:"name,omitempty"` + + // Type: The metric type, including its DNS name prefix. The type is + // not + // URL-encoded. All user-defined custom metric types have the DNS + // name + // `custom.googleapis.com`. Metric types should use a natural + // hierarchical + // grouping. For example: + // + // "custom.googleapis.com/invoice/paid/amount" + // "appengine.googleapis.com/http/server/response_latencies" + Type string `json:"type,omitempty"` + + // Unit: The unit in which the metric value is reported. It is only + // applicable + // if the `value_type` is `INT64`, `DOUBLE`, or `DISTRIBUTION`. + // The + // supported units are a subset of [The Unified Code for Units + // of + // Measure](http://unitsofmeasure.org/ucum.html) standard: + // + // **Basic units (UNIT)** + // + // * `bit` bit + // * `By` byte + // * `s` second + // * `min` minute + // * `h` hour + // * `d` day + // + // **Prefixes (PREFIX)** + // + // * `k` kilo (10**3) + // * `M` mega (10**6) + // * `G` giga (10**9) + // * `T` tera (10**12) + // * `P` peta (10**15) + // * `E` exa (10**18) + // * `Z` zetta (10**21) + // * `Y` yotta (10**24) + // * `m` milli (10**-3) + // * `u` micro (10**-6) + // * `n` nano (10**-9) + // * `p` pico (10**-12) + // * `f` femto (10**-15) + // * `a` atto (10**-18) + // * `z` zepto (10**-21) + // * `y` yocto (10**-24) + // * `Ki` kibi (2**10) + // * `Mi` mebi (2**20) + // * `Gi` gibi (2**30) + // * `Ti` tebi (2**40) + // + // **Grammar** + // + // The grammar also includes these connectors: + // + // * `/` division (as an infix operator, e.g. `1/s`). + // * `.` multiplication (as an infix operator, e.g. `GBy.d`) + // + // The grammar for a unit is as follows: + // + // Expression = Component { "." Component } { "/" Component } ; + // + // Component = ( [ PREFIX ] UNIT | "%" ) [ Annotation ] + // | Annotation + // | "1" + // ; + // + // Annotation = "{" NAME "}" ; + // + // Notes: + // + // * `Annotation` is just a comment if it follows a `UNIT` and is + // equivalent to `1` if it is used alone. For examples, + // `{requests}/s == 1/s`, `By{transmitted}/s == By/s`. + // * `NAME` is a sequence of non-blank printable ASCII characters not + // containing '{' or '}'. + // * `1` represents dimensionless value 1, such as in `1/s`. + // * `%` represents dimensionless value 1/100, and annotates values + // giving + // a percentage. + Unit string `json:"unit,omitempty"` + + // ValueType: Whether the measurement is an integer, a floating-point + // number, etc. + // Some combinations of `metric_kind` and `value_type` might not be + // supported. + // + // Possible values: + // "VALUE_TYPE_UNSPECIFIED" - Do not use this default value. + // "BOOL" - The value is a boolean. + // This value type can be used only if the metric kind is `GAUGE`. + // "INT64" - The value is a signed 64-bit integer. + // "DOUBLE" - The value is a double precision floating point number. + // "STRING" - The value is a text string. + // This value type can be used only if the metric kind is `GAUGE`. + // "DISTRIBUTION" - The value is a `Distribution`. + // "MONEY" - The value is money. + ValueType string `json:"valueType,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Description") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Description") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *MetricDescriptor) MarshalJSON() ([]byte, error) { + type NoMethod MetricDescriptor + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// MetricRule: Bind API methods to metrics. Binding a method to a metric +// causes that +// metric's configured quota behaviors to apply to the method call. +type MetricRule struct { + // MetricCosts: Metrics to update when the selected methods are called, + // and the associated + // cost applied to each metric. + // + // The key of the map is the metric name, and the values are the + // amount + // increased for the metric against which the quota limits are + // defined. + // The value must not be negative. + MetricCosts map[string]string `json:"metricCosts,omitempty"` + + // Selector: Selects the methods to which this rule applies. + // + // Refer to selector for syntax details. + Selector string `json:"selector,omitempty"` + + // ForceSendFields is a list of field names (e.g. "MetricCosts") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "MetricCosts") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *MetricRule) MarshalJSON() ([]byte, error) { + type NoMethod MetricRule + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// Mixin: Declares an API Interface to be included in this interface. +// The including +// interface must redeclare all the methods from the included interface, +// but +// documentation and options are inherited as follows: +// +// - If after comment and whitespace stripping, the documentation +// string of the redeclared method is empty, it will be inherited +// from the original method. +// +// - Each annotation belonging to the service config (http, +// visibility) which is not set in the redeclared method will be +// inherited. +// +// - If an http annotation is inherited, the path pattern will be +// modified as follows. Any version prefix will be replaced by the +// version of the including interface plus the root path if +// specified. +// +// Example of a simple mixin: +// +// package google.acl.v1; +// service AccessControl { +// // Get the underlying ACL object. +// rpc GetAcl(GetAclRequest) returns (Acl) { +// option (google.api.http).get = "/v1/{resource=**}:getAcl"; +// } +// } +// +// package google.storage.v2; +// service Storage { +// // rpc GetAcl(GetAclRequest) returns (Acl); +// +// // Get a data record. +// rpc GetData(GetDataRequest) returns (Data) { +// option (google.api.http).get = "/v2/{resource=**}"; +// } +// } +// +// Example of a mixin configuration: +// +// apis: +// - name: google.storage.v2.Storage +// mixins: +// - name: google.acl.v1.AccessControl +// +// The mixin construct implies that all methods in `AccessControl` +// are +// also declared with same name and request/response types in +// `Storage`. A documentation generator or annotation processor will +// see the effective `Storage.GetAcl` method after +// inherting +// documentation and annotations as follows: +// +// service Storage { +// // Get the underlying ACL object. +// rpc GetAcl(GetAclRequest) returns (Acl) { +// option (google.api.http).get = "/v2/{resource=**}:getAcl"; +// } +// ... +// } +// +// Note how the version in the path pattern changed from `v1` to +// `v2`. +// +// If the `root` field in the mixin is specified, it should be +// a +// relative path under which inherited HTTP paths are placed. Example: +// +// apis: +// - name: google.storage.v2.Storage +// mixins: +// - name: google.acl.v1.AccessControl +// root: acls +// +// This implies the following inherited HTTP annotation: +// +// service Storage { +// // Get the underlying ACL object. +// rpc GetAcl(GetAclRequest) returns (Acl) { +// option (google.api.http).get = +// "/v2/acls/{resource=**}:getAcl"; +// } +// ... +// } +type Mixin struct { + // Name: The fully qualified name of the interface which is included. + Name string `json:"name,omitempty"` + + // Root: If non-empty specifies a path under which inherited HTTP + // paths + // are rooted. + Root string `json:"root,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Name") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Name") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *Mixin) MarshalJSON() ([]byte, error) { + type NoMethod Mixin + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// MonitoredResourceDescriptor: An object that describes the schema of a +// MonitoredResource object using a +// type name and a set of labels. For example, the monitored +// resource +// descriptor for Google Compute Engine VM instances has a type +// of +// "gce_instance" and specifies the use of the labels "instance_id" +// and +// "zone" to identify particular VM instances. +// +// Different APIs can support different monitored resource types. APIs +// generally +// provide a `list` method that returns the monitored resource +// descriptors used +// by the API. +type MonitoredResourceDescriptor struct { + // Description: Optional. A detailed description of the monitored + // resource type that might + // be used in documentation. + Description string `json:"description,omitempty"` + + // DisplayName: Optional. A concise name for the monitored resource type + // that might be + // displayed in user interfaces. It should be a Title Cased Noun + // Phrase, + // without any article or other determiners. For example, + // "Google Cloud SQL Database". + DisplayName string `json:"displayName,omitempty"` + + // Labels: Required. A set of labels used to describe instances of this + // monitored + // resource type. For example, an individual Google Cloud SQL database + // is + // identified by values for the labels "database_id" and "zone". + Labels []*LabelDescriptor `json:"labels,omitempty"` + + // Name: Optional. The resource name of the monitored resource + // descriptor: + // "projects/{project_id}/monitoredResourceDescriptors/{type + // }" where + // {type} is the value of the `type` field in this object + // and + // {project_id} is a project ID that provides API-specific context + // for + // accessing the type. APIs that do not use project information can use + // the + // resource name format "monitoredResourceDescriptors/{type}". + Name string `json:"name,omitempty"` + + // Type: Required. The monitored resource type. For example, the + // type + // "cloudsql_database" represents databases in Google Cloud SQL. + // The maximum length of this value is 256 characters. + Type string `json:"type,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Description") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Description") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *MonitoredResourceDescriptor) MarshalJSON() ([]byte, error) { + type NoMethod MonitoredResourceDescriptor + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// Monitoring: Monitoring configuration of the service. +// +// The example below shows how to configure monitored resources and +// metrics +// for monitoring. In the example, a monitored resource and two metrics +// are +// defined. The `library.googleapis.com/book/returned_count` metric is +// sent +// to both producer and consumer projects, whereas +// the +// `library.googleapis.com/book/overdue_count` metric is only sent to +// the +// consumer project. +// +// monitored_resources: +// - type: library.googleapis.com/branch +// labels: +// - key: /city +// description: The city where the library branch is located +// in. +// - key: /name +// description: The name of the branch. +// metrics: +// - name: library.googleapis.com/book/returned_count +// metric_kind: DELTA +// value_type: INT64 +// labels: +// - key: /customer_id +// - name: library.googleapis.com/book/overdue_count +// metric_kind: GAUGE +// value_type: INT64 +// labels: +// - key: /customer_id +// monitoring: +// producer_destinations: +// - monitored_resource: library.googleapis.com/branch +// metrics: +// - library.googleapis.com/book/returned_count +// consumer_destinations: +// - monitored_resource: library.googleapis.com/branch +// metrics: +// - library.googleapis.com/book/returned_count +// - library.googleapis.com/book/overdue_count +type Monitoring struct { + // ConsumerDestinations: Monitoring configurations for sending metrics + // to the consumer project. + // There can be multiple consumer destinations, each one must have + // a + // different monitored resource type. A metric can be used in at + // most + // one consumer destination. + ConsumerDestinations []*MonitoringDestination `json:"consumerDestinations,omitempty"` + + // ProducerDestinations: Monitoring configurations for sending metrics + // to the producer project. + // There can be multiple producer destinations, each one must have + // a + // different monitored resource type. A metric can be used in at + // most + // one producer destination. + ProducerDestinations []*MonitoringDestination `json:"producerDestinations,omitempty"` + + // ForceSendFields is a list of field names (e.g. + // "ConsumerDestinations") to unconditionally include in API requests. + // By default, fields with empty values are omitted from API requests. + // However, any non-pointer, non-interface field appearing in + // ForceSendFields will be sent to the server regardless of whether the + // field is empty or not. This may be used to include empty fields in + // Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "ConsumerDestinations") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *Monitoring) MarshalJSON() ([]byte, error) { + type NoMethod Monitoring + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// MonitoringDestination: Configuration of a specific monitoring +// destination (the producer project +// or the consumer project). +type MonitoringDestination struct { + // Metrics: Names of the metrics to report to this monitoring + // destination. + // Each name must be defined in Service.metrics section. + Metrics []string `json:"metrics,omitempty"` + + // MonitoredResource: The monitored resource type. The type must be + // defined in + // Service.monitored_resources section. + MonitoredResource string `json:"monitoredResource,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Metrics") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Metrics") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *MonitoringDestination) MarshalJSON() ([]byte, error) { + type NoMethod MonitoringDestination + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// OAuthRequirements: OAuth scopes are a way to define data and +// permissions on data. For example, +// there are scopes defined for "Read-only access to Google Calendar" +// and +// "Access to Cloud Platform". Users can consent to a scope for an +// application, +// giving it permission to access that data on their behalf. +// +// OAuth scope specifications should be fairly coarse grained; a user +// will need +// to see and understand the text description of what your scope +// means. +// +// In most cases: use one or at most two OAuth scopes for an entire +// family of +// products. If your product has multiple APIs, you should probably be +// sharing +// the OAuth scope across all of those APIs. +// +// When you need finer grained OAuth consent screens: talk with your +// product +// management about how developers will use them in practice. +// +// Please note that even though each of the canonical scopes is enough +// for a +// request to be accepted and passed to the backend, a request can still +// fail +// due to the backend requiring additional scopes or permissions. +type OAuthRequirements struct { + // CanonicalScopes: The list of publicly documented OAuth scopes that + // are allowed access. An + // OAuth token containing any of these scopes will be + // accepted. + // + // Example: + // + // canonical_scopes: https://www.googleapis.com/auth/calendar, + // https://www.googleapis.com/auth/calendar.read + CanonicalScopes string `json:"canonicalScopes,omitempty"` + + // ForceSendFields is a list of field names (e.g. "CanonicalScopes") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "CanonicalScopes") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *OAuthRequirements) MarshalJSON() ([]byte, error) { + type NoMethod OAuthRequirements + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// Operation: This resource represents a long-running operation that is +// the result of a +// network API call. +type Operation struct { + // Done: If the value is `false`, it means the operation is still in + // progress. + // If `true`, the operation is completed, and either `error` or + // `response` is + // available. + Done bool `json:"done,omitempty"` + + // Error: The error result of the operation in case of failure or + // cancellation. + Error *Status `json:"error,omitempty"` + + // Metadata: Service-specific metadata associated with the operation. + // It typically + // contains progress information and common metadata such as create + // time. + // Some services might not provide such metadata. Any method that + // returns a + // long-running operation should document the metadata type, if any. + Metadata googleapi.RawMessage `json:"metadata,omitempty"` + + // Name: The server-assigned name, which is only unique within the same + // service that + // originally returns it. If you use the default HTTP mapping, + // the + // `name` should have the format of `operations/some/unique/name`. + Name string `json:"name,omitempty"` + + // Response: The normal response of the operation in case of success. + // If the original + // method returns no data on success, such as `Delete`, the response + // is + // `google.protobuf.Empty`. If the original method is + // standard + // `Get`/`Create`/`Update`, the response should be the resource. For + // other + // methods, the response should have the type `XxxResponse`, where + // `Xxx` + // is the original method name. For example, if the original method + // name + // is `TakeSnapshot()`, the inferred response type + // is + // `TakeSnapshotResponse`. + Response googleapi.RawMessage `json:"response,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "Done") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Done") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *Operation) MarshalJSON() ([]byte, error) { + type NoMethod Operation + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// OperationMetadata: The metadata associated with a long running +// operation resource. +type OperationMetadata struct { + // ProgressPercentage: Percentage of completion of this operation, + // ranging from 0 to 100. + ProgressPercentage int64 `json:"progressPercentage,omitempty"` + + // ResourceNames: The full name of the resources that this operation is + // directly + // associated with. + ResourceNames []string `json:"resourceNames,omitempty"` + + // StartTime: The start time of the operation. + StartTime string `json:"startTime,omitempty"` + + // Steps: Detailed status information for each step. The order is + // undetermined. + Steps []*Step `json:"steps,omitempty"` + + // ForceSendFields is a list of field names (e.g. "ProgressPercentage") + // to unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "ProgressPercentage") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *OperationMetadata) MarshalJSON() ([]byte, error) { + type NoMethod OperationMetadata + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// Option: A protocol buffer option, which can be attached to a message, +// field, +// enumeration, etc. +type Option struct { + // Name: The option's name. For protobuf built-in options (options + // defined in + // descriptor.proto), this is the short name. For example, + // "map_entry". + // For custom options, it should be the fully-qualified name. For + // example, + // "google.api.http". + Name string `json:"name,omitempty"` + + // Value: The option's value packed in an Any message. If the value is a + // primitive, + // the corresponding wrapper type defined in + // google/protobuf/wrappers.proto + // should be used. If the value is an enum, it should be stored as an + // int32 + // value using the google.protobuf.Int32Value type. + Value googleapi.RawMessage `json:"value,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Name") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Name") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *Option) MarshalJSON() ([]byte, error) { + type NoMethod Option + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// Page: Represents a documentation page. A page can contain subpages to +// represent +// nested documentation set structure. +type Page struct { + // Content: The Markdown content of the page. You can use (== + // include {path} ==) + // to include content from a Markdown file. + Content string `json:"content,omitempty"` + + // Name: The name of the page. It will be used as an identity of the + // page to + // generate URI of the page, text of the link to this page in + // navigation, + // etc. The full page name (start from the root page name to this + // page + // concatenated with `.`) can be used as reference to the page in + // your + // documentation. For example: + //
pages:
+	// - name: Tutorial
+	//   content: (== include tutorial.md ==)
+	//   subpages:
+	//   - name: Java
+	//     content: (== include tutorial_java.md
+	// ==)
+	// 
+ // You can reference `Java` page using Markdown reference link + // syntax: + // `Java`. + Name string `json:"name,omitempty"` + + // Subpages: Subpages of this page. The order of subpages specified here + // will be + // honored in the generated docset. + Subpages []*Page `json:"subpages,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Content") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Content") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *Page) MarshalJSON() ([]byte, error) { + type NoMethod Page + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// Quota: Quota configuration helps to achieve fairness and budgeting in +// service +// usage. +// +// The quota configuration works this way: +// - The service configuration defines a set of metrics. +// - For API calls, the quota.metric_rules maps methods to metrics with +// corresponding costs. +// - The quota.limits defines limits on the metrics, which will be used +// for +// quota checks at runtime. +// +// An example quota configuration in yaml format: +// +// quota: +// +// - name: apiWriteQpsPerProject +// metric: library.googleapis.com/write_calls +// unit: "1/min/{project}" # rate limit for consumer projects +// values: +// STANDARD: 10000 +// +// +// # The metric rules bind all methods to the read_calls metric, +// # except for the UpdateBook and DeleteBook methods. These two +// methods +// # are mapped to the write_calls metric, with the UpdateBook +// method +// # consuming at twice rate as the DeleteBook method. +// metric_rules: +// - selector: "*" +// metric_costs: +// library.googleapis.com/read_calls: 1 +// - selector: google.example.library.v1.LibraryService.UpdateBook +// metric_costs: +// library.googleapis.com/write_calls: 2 +// - selector: google.example.library.v1.LibraryService.DeleteBook +// metric_costs: +// library.googleapis.com/write_calls: 1 +// +// Corresponding Metric definition: +// +// metrics: +// - name: library.googleapis.com/read_calls +// display_name: Read requests +// metric_kind: DELTA +// value_type: INT64 +// +// - name: library.googleapis.com/write_calls +// display_name: Write requests +// metric_kind: DELTA +// value_type: INT64 +type Quota struct { + // Limits: List of `QuotaLimit` definitions for the service. + Limits []*QuotaLimit `json:"limits,omitempty"` + + // MetricRules: List of `MetricRule` definitions, each one mapping a + // selected method to one + // or more metrics. + MetricRules []*MetricRule `json:"metricRules,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Limits") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Limits") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *Quota) MarshalJSON() ([]byte, error) { + type NoMethod Quota + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// QuotaLimit: `QuotaLimit` defines a specific limit that applies over a +// specified duration +// for a limit type. There can be at most one limit for a duration and +// limit +// type combination defined within a `QuotaGroup`. +type QuotaLimit struct { + // DefaultLimit: Default number of tokens that can be consumed during + // the specified + // duration. This is the number of tokens assigned when a + // client + // application developer activates the service for his/her + // project. + // + // Specifying a value of 0 will block all requests. This can be used if + // you + // are provisioning quota to selected consumers and blocking + // others. + // Similarly, a value of -1 will indicate an unlimited quota. No + // other + // negative values are allowed. + // + // Used by group-based quotas only. + DefaultLimit int64 `json:"defaultLimit,omitempty,string"` + + // Description: Optional. User-visible, extended description for this + // quota limit. + // Should be used only when more context is needed to understand this + // limit + // than provided by the limit's display name (see: `display_name`). + Description string `json:"description,omitempty"` + + // DisplayName: User-visible display name for this limit. + // Optional. If not set, the UI will provide a default display name + // based on + // the quota configuration. This field can be used to override the + // default + // display name generated from the configuration. + DisplayName string `json:"displayName,omitempty"` + + // Duration: Duration of this limit in textual notation. Example: + // "100s", "24h", "1d". + // For duration longer than a day, only multiple of days is supported. + // We + // support only "100s" and "1d" for now. Additional support will be + // added in + // the future. "0" indicates indefinite duration. + // + // Used by group-based quotas only. + Duration string `json:"duration,omitempty"` + + // FreeTier: Free tier value displayed in the Developers Console for + // this limit. + // The free tier is the number of tokens that will be subtracted from + // the + // billed amount when billing is enabled. + // This field can only be set on a limit with duration "1d", in a + // billable + // group; it is invalid on any other limit. If this field is not set, + // it + // defaults to 0, indicating that there is no free tier for this + // service. + // + // Used by group-based quotas only. + FreeTier int64 `json:"freeTier,omitempty,string"` + + // MaxLimit: Maximum number of tokens that can be consumed during the + // specified + // duration. Client application developers can override the default + // limit up + // to this maximum. If specified, this value cannot be set to a value + // less + // than the default limit. If not specified, it is set to the default + // limit. + // + // To allow clients to apply overrides with no upper bound, set this to + // -1, + // indicating unlimited maximum quota. + // + // Used by group-based quotas only. + MaxLimit int64 `json:"maxLimit,omitempty,string"` + + // Metric: The name of the metric this quota limit applies to. The quota + // limits with + // the same metric will be checked together during runtime. The metric + // must be + // defined within the service config. + Metric string `json:"metric,omitempty"` + + // Name: Name of the quota limit. + // + // The name must be provided, and it must be unique within the service. + // The + // name can only include alphanumeric characters as well as '-'. + // + // The maximum length of the limit name is 64 characters. + Name string `json:"name,omitempty"` + + // Unit: Specify the unit of the quota limit. It uses the same syntax + // as + // Metric.unit. The supported unit kinds are determined by the + // quota + // backend system. + // + // Here are some examples: + // * "1/min/{project}" for quota per minute per project. + // + // Note: the order of unit components is insignificant. + // The "1" at the beginning is required to follow the metric unit + // syntax. + Unit string `json:"unit,omitempty"` + + // Values: Tiered limit values. You must specify this as a key:value + // pair, with an + // integer value that is the maximum number of requests allowed for + // the + // specified unit. Currently only STANDARD is supported. + Values map[string]string `json:"values,omitempty"` + + // ForceSendFields is a list of field names (e.g. "DefaultLimit") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "DefaultLimit") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *QuotaLimit) MarshalJSON() ([]byte, error) { + type NoMethod QuotaLimit + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// Service: A service that is available for use by the consumer. +type Service struct { + // Config: The service configuration of the available service. + // Some fields may be filtered out of the configuration in responses + // to + // the `ListServices` method. These fields are present only in responses + // to + // the `GetService` method. + Config *ServiceConfig `json:"config,omitempty"` + + // Name: The resource name of the consumer and service. + // + // A valid name would be: + // - projects/123/services/serviceusage.googleapis.com + Name string `json:"name,omitempty"` + + // Parent: The resource name of the consumer. + // + // A valid name would be: + // - projects/123 + Parent string `json:"parent,omitempty"` + + // State: Whether or not the service has been enabled for use by the + // consumer. + // + // Possible values: + // "STATE_UNSPECIFIED" - The default value, which indicates that the + // enabled state of the service + // is unspecified or not meaningful. Currently, all consumers other + // than + // projects (such as folders and organizations) are always in this + // state. + // "DISABLED" - The service cannot be used by this consumer. It has + // either been explicitly + // disabled, or has never been enabled. + // "ENABLED" - The service has been explicitly enabled for use by this + // consumer. + State string `json:"state,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "Config") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Config") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *Service) MarshalJSON() ([]byte, error) { + type NoMethod Service + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// ServiceConfig: The configuration of the service. +type ServiceConfig struct { + // Apis: A list of API interfaces exported by this service. Contains + // only the names, + // versions, and method names of the interfaces. + Apis []*Api `json:"apis,omitempty"` + + // Authentication: Auth configuration. Contains only the OAuth rules. + Authentication *Authentication `json:"authentication,omitempty"` + + // Documentation: Additional API documentation. Contains only the + // summary and the + // documentation URL. + Documentation *Documentation `json:"documentation,omitempty"` + + // Endpoints: Configuration for network endpoints. Contains only the + // names and aliases + // of the endpoints. + Endpoints []*Endpoint `json:"endpoints,omitempty"` + + // Name: The DNS address at which this service is available. + // + // An example DNS address would be: + // `calendar.googleapis.com`. + Name string `json:"name,omitempty"` + + // Quota: Quota configuration. + Quota *Quota `json:"quota,omitempty"` + + // Title: The product title for this service. + Title string `json:"title,omitempty"` + + // Usage: Configuration controlling usage of this service. + Usage *Usage `json:"usage,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Apis") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Apis") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *ServiceConfig) MarshalJSON() ([]byte, error) { + type NoMethod ServiceConfig + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// SourceContext: `SourceContext` represents information about the +// source of a +// protobuf element, like the file in which it is defined. +type SourceContext struct { + // FileName: The path-qualified name of the .proto file that contained + // the associated + // protobuf element. For example: + // "google/protobuf/source_context.proto". + FileName string `json:"fileName,omitempty"` + + // ForceSendFields is a list of field names (e.g. "FileName") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "FileName") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *SourceContext) MarshalJSON() ([]byte, error) { + type NoMethod SourceContext + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// SourceInfo: Source information used to create a Service Config +type SourceInfo struct { + // SourceFiles: All files used during config generation. + SourceFiles []googleapi.RawMessage `json:"sourceFiles,omitempty"` + + // ForceSendFields is a list of field names (e.g. "SourceFiles") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "SourceFiles") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *SourceInfo) MarshalJSON() ([]byte, error) { + type NoMethod SourceInfo + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// Status: The `Status` type defines a logical error model that is +// suitable for different +// programming environments, including REST APIs and RPC APIs. It is +// used by +// [gRPC](https://github.com/grpc). The error model is designed to +// be: +// +// - Simple to use and understand for most users +// - Flexible enough to meet unexpected needs +// +// # Overview +// +// The `Status` message contains three pieces of data: error code, error +// message, +// and error details. The error code should be an enum value +// of +// google.rpc.Code, but it may accept additional error codes if needed. +// The +// error message should be a developer-facing English message that +// helps +// developers *understand* and *resolve* the error. If a localized +// user-facing +// error message is needed, put the localized message in the error +// details or +// localize it in the client. The optional error details may contain +// arbitrary +// information about the error. There is a predefined set of error +// detail types +// in the package `google.rpc` that can be used for common error +// conditions. +// +// # Language mapping +// +// The `Status` message is the logical representation of the error +// model, but it +// is not necessarily the actual wire format. When the `Status` message +// is +// exposed in different client libraries and different wire protocols, +// it can be +// mapped differently. For example, it will likely be mapped to some +// exceptions +// in Java, but more likely mapped to some error codes in C. +// +// # Other uses +// +// The error model and the `Status` message can be used in a variety +// of +// environments, either with or without APIs, to provide a +// consistent developer experience across different +// environments. +// +// Example uses of this error model include: +// +// - Partial errors. If a service needs to return partial errors to the +// client, +// it may embed the `Status` in the normal response to indicate the +// partial +// errors. +// +// - Workflow errors. A typical workflow has multiple steps. Each step +// may +// have a `Status` message for error reporting. +// +// - Batch operations. If a client uses batch request and batch +// response, the +// `Status` message should be used directly inside batch response, +// one for +// each error sub-response. +// +// - Asynchronous operations. If an API call embeds asynchronous +// operation +// results in its response, the status of those operations should +// be +// represented directly using the `Status` message. +// +// - Logging. If some API errors are stored in logs, the message +// `Status` could +// be used directly after any stripping needed for security/privacy +// reasons. +type Status struct { + // Code: The status code, which should be an enum value of + // google.rpc.Code. + Code int64 `json:"code,omitempty"` + + // Details: A list of messages that carry the error details. There is a + // common set of + // message types for APIs to use. + Details []googleapi.RawMessage `json:"details,omitempty"` + + // Message: A developer-facing error message, which should be in + // English. Any + // user-facing error message should be localized and sent in + // the + // google.rpc.Status.details field, or localized by the client. + Message string `json:"message,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Code") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Code") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *Status) MarshalJSON() ([]byte, error) { + type NoMethod Status + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// Step: Represents the status of one operation step. +type Step struct { + // Description: The short description of the step. + Description string `json:"description,omitempty"` + + // Status: The status code. + // + // Possible values: + // "STATUS_UNSPECIFIED" - Unspecifed code. + // "DONE" - The operation or step has completed without errors. + // "NOT_STARTED" - The operation or step has not started yet. + // "IN_PROGRESS" - The operation or step is in progress. + // "FAILED" - The operation or step has completed with errors. If the + // operation is + // rollbackable, the rollback completed with errors too. + // "CANCELLED" - The operation or step has completed with + // cancellation. + Status string `json:"status,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Description") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Description") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *Step) MarshalJSON() ([]byte, error) { + type NoMethod Step + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// SystemParameter: Define a parameter's name and location. The +// parameter may be passed as either +// an HTTP header or a URL query parameter, and if both are passed the +// behavior +// is implementation-dependent. +type SystemParameter struct { + // HttpHeader: Define the HTTP header name to use for the parameter. It + // is case + // insensitive. + HttpHeader string `json:"httpHeader,omitempty"` + + // Name: Define the name of the parameter, such as "api_key" . It is + // case sensitive. + Name string `json:"name,omitempty"` + + // UrlQueryParameter: Define the URL query parameter name to use for the + // parameter. It is case + // sensitive. + UrlQueryParameter string `json:"urlQueryParameter,omitempty"` + + // ForceSendFields is a list of field names (e.g. "HttpHeader") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "HttpHeader") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *SystemParameter) MarshalJSON() ([]byte, error) { + type NoMethod SystemParameter + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// SystemParameterRule: Define a system parameter rule mapping system +// parameter definitions to +// methods. +type SystemParameterRule struct { + // Parameters: Define parameters. Multiple names may be defined for a + // parameter. + // For a given method call, only one of them should be used. If + // multiple + // names are used the behavior is implementation-dependent. + // If none of the specified names are present the behavior + // is + // parameter-dependent. + Parameters []*SystemParameter `json:"parameters,omitempty"` + + // Selector: Selects the methods to which this rule applies. Use '*' to + // indicate all + // methods in all APIs. + // + // Refer to selector for syntax details. + Selector string `json:"selector,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Parameters") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Parameters") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *SystemParameterRule) MarshalJSON() ([]byte, error) { + type NoMethod SystemParameterRule + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// SystemParameters: ### System parameter configuration +// +// A system parameter is a special kind of parameter defined by the +// API +// system, not by an individual API. It is typically mapped to an HTTP +// header +// and/or a URL query parameter. This configuration specifies which +// methods +// change the names of the system parameters. +type SystemParameters struct { + // Rules: Define system parameters. + // + // The parameters defined here will override the default + // parameters + // implemented by the system. If this field is missing from the + // service + // config, default system parameters will be used. Default system + // parameters + // and names is implementation-dependent. + // + // Example: define api key for all methods + // + // system_parameters + // rules: + // - selector: "*" + // parameters: + // - name: api_key + // url_query_parameter: api_key + // + // + // Example: define 2 api key names for a specific method. + // + // system_parameters + // rules: + // - selector: "/ListShelves" + // parameters: + // - name: api_key + // http_header: Api-Key1 + // - name: api_key + // http_header: Api-Key2 + // + // **NOTE:** All service configuration rules follow "last one wins" + // order. + Rules []*SystemParameterRule `json:"rules,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Rules") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Rules") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *SystemParameters) MarshalJSON() ([]byte, error) { + type NoMethod SystemParameters + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// Type: A protocol buffer message type. +type Type struct { + // Fields: The list of fields. + Fields []*Field `json:"fields,omitempty"` + + // Name: The fully qualified message name. + Name string `json:"name,omitempty"` + + // Oneofs: The list of types appearing in `oneof` definitions in this + // type. + Oneofs []string `json:"oneofs,omitempty"` + + // Options: The protocol buffer options. + Options []*Option `json:"options,omitempty"` + + // SourceContext: The source context. + SourceContext *SourceContext `json:"sourceContext,omitempty"` + + // Syntax: The source syntax. + // + // Possible values: + // "SYNTAX_PROTO2" - Syntax `proto2`. + // "SYNTAX_PROTO3" - Syntax `proto3`. + Syntax string `json:"syntax,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Fields") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Fields") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *Type) MarshalJSON() ([]byte, error) { + type NoMethod Type + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// Usage: Configuration controlling usage of a service. +type Usage struct { + // ProducerNotificationChannel: The full resource name of a channel used + // for sending notifications to the + // service producer. + // + // Google Service Management currently only supports + // [Google Cloud Pub/Sub](https://cloud.google.com/pubsub) as a + // notification + // channel. To use Google Cloud Pub/Sub as the channel, this must be the + // name + // of a Cloud Pub/Sub topic that uses the Cloud Pub/Sub topic name + // format + // documented in https://cloud.google.com/pubsub/docs/overview. + ProducerNotificationChannel string `json:"producerNotificationChannel,omitempty"` + + // Requirements: Requirements that must be satisfied before a consumer + // project can use the + // service. Each requirement is of the form + // /; + // for example 'serviceusage.googleapis.com/billing-enabled'. + Requirements []string `json:"requirements,omitempty"` + + // Rules: A list of usage rules that apply to individual API + // methods. + // + // **NOTE:** All service configuration rules follow "last one wins" + // order. + Rules []*UsageRule `json:"rules,omitempty"` + + // ForceSendFields is a list of field names (e.g. + // "ProducerNotificationChannel") to unconditionally include in API + // requests. By default, fields with empty values are omitted from API + // requests. However, any non-pointer, non-interface field appearing in + // ForceSendFields will be sent to the server regardless of whether the + // field is empty or not. This may be used to include empty fields in + // Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. + // "ProducerNotificationChannel") to include in API requests with the + // JSON null value. By default, fields with empty values are omitted + // from API requests. However, any field with an empty value appearing + // in NullFields will be sent to the server as null. It is an error if a + // field in this list has a non-empty value. This may be used to include + // null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *Usage) MarshalJSON() ([]byte, error) { + type NoMethod Usage + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// UsageRule: Usage configuration rules for the service. +// +// NOTE: Under development. +// +// +// Use this rule to configure unregistered calls for the service. +// Unregistered +// calls are calls that do not contain consumer project +// identity. +// (Example: calls that do not contain an API key). +// By default, API methods do not allow unregistered calls, and each +// method call +// must be identified by a consumer project identity. Use this rule +// to +// allow/disallow unregistered calls. +// +// Example of an API that wants to allow unregistered calls for entire +// service. +// +// usage: +// rules: +// - selector: "*" +// allow_unregistered_calls: true +// +// Example of a method that wants to allow unregistered calls. +// +// usage: +// rules: +// - selector: +// "google.example.library.v1.LibraryService.CreateBook" +// allow_unregistered_calls: true +type UsageRule struct { + // AllowUnregisteredCalls: If true, the selected method allows + // unregistered calls, e.g. calls + // that don't identify any user or application. + AllowUnregisteredCalls bool `json:"allowUnregisteredCalls,omitempty"` + + // Selector: Selects the methods to which this rule applies. Use '*' to + // indicate all + // methods in all APIs. + // + // Refer to selector for syntax details. + Selector string `json:"selector,omitempty"` + + // SkipServiceControl: If true, the selected method should skip service + // control and the control + // plane features, such as quota and billing, will not be + // available. + // This flag is used by Google Cloud Endpoints to bypass checks for + // internal + // methods, such as service health check methods. + SkipServiceControl bool `json:"skipServiceControl,omitempty"` + + // ForceSendFields is a list of field names (e.g. + // "AllowUnregisteredCalls") to unconditionally include in API requests. + // By default, fields with empty values are omitted from API requests. + // However, any non-pointer, non-interface field appearing in + // ForceSendFields will be sent to the server regardless of whether the + // field is empty or not. This may be used to include empty fields in + // Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "AllowUnregisteredCalls") + // to include in API requests with the JSON null value. By default, + // fields with empty values are omitted from API requests. However, any + // field with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *UsageRule) MarshalJSON() ([]byte, error) { + type NoMethod UsageRule + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// method id "serviceusage.operations.get": + +type OperationsGetCall struct { + s *APIService + name string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// Get: Gets the latest state of a long-running operation. Clients can +// use this +// method to poll the operation result at intervals as recommended by +// the API +// service. +func (r *OperationsService) Get(name string) *OperationsGetCall { + c := &OperationsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *OperationsGetCall) Fields(s ...googleapi.Field) *OperationsGetCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// IfNoneMatch sets the optional parameter which makes the operation +// fail if the object's ETag matches the given value. This is useful for +// getting updates only after the object has changed since the last +// request. Use googleapi.IsNotModified to check whether the response +// error from Do is the result of In-None-Match. +func (c *OperationsGetCall) IfNoneMatch(entityTag string) *OperationsGetCall { + c.ifNoneMatch_ = entityTag + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *OperationsGetCall) Context(ctx context.Context) *OperationsGetCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *OperationsGetCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *OperationsGetCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + if c.ifNoneMatch_ != "" { + reqHeaders.Set("If-None-Match", c.ifNoneMatch_) + } + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("GET", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "serviceusage.operations.get" call. +// Exactly one of *Operation or error will be non-nil. Any non-2xx +// status code is an error. Response headers are in either +// *Operation.ServerResponse.Header or (if a response was returned at +// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified +// to check whether the returned error was because +// http.StatusNotModified was returned. +func (c *OperationsGetCall) Do(opts ...googleapi.CallOption) (*Operation, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &Operation{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Gets the latest state of a long-running operation. Clients can use this\nmethod to poll the operation result at intervals as recommended by the API\nservice.", + // "flatPath": "v1beta1/operations/{operationsId}", + // "httpMethod": "GET", + // "id": "serviceusage.operations.get", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "The name of the operation resource.", + // "location": "path", + // "pattern": "^operations/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1beta1/{+name}", + // "response": { + // "$ref": "Operation" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform", + // "https://www.googleapis.com/auth/service.management" + // ] + // } + +} + +// method id "serviceusage.operations.list": + +type OperationsListCall struct { + s *APIService + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// List: Lists operations that match the specified filter in the +// request. If the +// server doesn't support this method, it returns +// `UNIMPLEMENTED`. +// +// NOTE: the `name` binding allows API services to override the +// binding +// to use different resource name schemes, such as `users/*/operations`. +// To +// override the binding, API services can add a binding such +// as +// "/v1/{name=users/*}/operations" to their service configuration. +// For backwards compatibility, the default name includes the +// operations +// collection id, however overriding users must ensure the name +// binding +// is the parent resource, without the operations collection id. +func (r *OperationsService) List() *OperationsListCall { + c := &OperationsListCall{s: r.s, urlParams_: make(gensupport.URLParams)} + return c +} + +// Filter sets the optional parameter "filter": The standard list +// filter. +func (c *OperationsListCall) Filter(filter string) *OperationsListCall { + c.urlParams_.Set("filter", filter) + return c +} + +// Name sets the optional parameter "name": The name of the operation's +// parent resource. +func (c *OperationsListCall) Name(name string) *OperationsListCall { + c.urlParams_.Set("name", name) + return c +} + +// PageSize sets the optional parameter "pageSize": The standard list +// page size. +func (c *OperationsListCall) PageSize(pageSize int64) *OperationsListCall { + c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) + return c +} + +// PageToken sets the optional parameter "pageToken": The standard list +// page token. +func (c *OperationsListCall) PageToken(pageToken string) *OperationsListCall { + c.urlParams_.Set("pageToken", pageToken) + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *OperationsListCall) Fields(s ...googleapi.Field) *OperationsListCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// IfNoneMatch sets the optional parameter which makes the operation +// fail if the object's ETag matches the given value. This is useful for +// getting updates only after the object has changed since the last +// request. Use googleapi.IsNotModified to check whether the response +// error from Do is the result of In-None-Match. +func (c *OperationsListCall) IfNoneMatch(entityTag string) *OperationsListCall { + c.ifNoneMatch_ = entityTag + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *OperationsListCall) Context(ctx context.Context) *OperationsListCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *OperationsListCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *OperationsListCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + if c.ifNoneMatch_ != "" { + reqHeaders.Set("If-None-Match", c.ifNoneMatch_) + } + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/operations") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("GET", urls, body) + req.Header = reqHeaders + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "serviceusage.operations.list" call. +// Exactly one of *ListOperationsResponse or error will be non-nil. Any +// non-2xx status code is an error. Response headers are in either +// *ListOperationsResponse.ServerResponse.Header or (if a response was +// returned at all) in error.(*googleapi.Error).Header. Use +// googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *OperationsListCall) Do(opts ...googleapi.CallOption) (*ListOperationsResponse, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &ListOperationsResponse{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Lists operations that match the specified filter in the request. If the\nserver doesn't support this method, it returns `UNIMPLEMENTED`.\n\nNOTE: the `name` binding allows API services to override the binding\nto use different resource name schemes, such as `users/*/operations`. To\noverride the binding, API services can add a binding such as\n`\"/v1/{name=users/*}/operations\"` to their service configuration.\nFor backwards compatibility, the default name includes the operations\ncollection id, however overriding users must ensure the name binding\nis the parent resource, without the operations collection id.", + // "flatPath": "v1beta1/operations", + // "httpMethod": "GET", + // "id": "serviceusage.operations.list", + // "parameterOrder": [], + // "parameters": { + // "filter": { + // "description": "The standard list filter.", + // "location": "query", + // "type": "string" + // }, + // "name": { + // "description": "The name of the operation's parent resource.", + // "location": "query", + // "type": "string" + // }, + // "pageSize": { + // "description": "The standard list page size.", + // "format": "int32", + // "location": "query", + // "type": "integer" + // }, + // "pageToken": { + // "description": "The standard list page token.", + // "location": "query", + // "type": "string" + // } + // }, + // "path": "v1beta1/operations", + // "response": { + // "$ref": "ListOperationsResponse" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform", + // "https://www.googleapis.com/auth/service.management" + // ] + // } + +} + +// Pages invokes f for each page of results. +// A non-nil error returned from f will halt the iteration. +// The provided context supersedes any context provided to the Context method. +func (c *OperationsListCall) Pages(ctx context.Context, f func(*ListOperationsResponse) error) error { + c.ctx_ = ctx + defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point + for { + x, err := c.Do() + if err != nil { + return err + } + if err := f(x); err != nil { + return err + } + if x.NextPageToken == "" { + return nil + } + c.PageToken(x.NextPageToken) + } +} + +// method id "serviceusage.services.batchEnable": + +type ServicesBatchEnableCall struct { + s *APIService + parent string + batchenableservicesrequest *BatchEnableServicesRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// BatchEnable: Enable multiple services on a project. The operation is +// atomic: if enabling +// any service fails, then the entire batch fails, and no state changes +// occur. +// +// Operation +func (r *ServicesService) BatchEnable(parent string, batchenableservicesrequest *BatchEnableServicesRequest) *ServicesBatchEnableCall { + c := &ServicesBatchEnableCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.parent = parent + c.batchenableservicesrequest = batchenableservicesrequest + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ServicesBatchEnableCall) Fields(s ...googleapi.Field) *ServicesBatchEnableCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ServicesBatchEnableCall) Context(ctx context.Context) *ServicesBatchEnableCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ServicesBatchEnableCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ServicesBatchEnableCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.batchenableservicesrequest) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+parent}/services:batchEnable") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("POST", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "parent": c.parent, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "serviceusage.services.batchEnable" call. +// Exactly one of *Operation or error will be non-nil. Any non-2xx +// status code is an error. Response headers are in either +// *Operation.ServerResponse.Header or (if a response was returned at +// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified +// to check whether the returned error was because +// http.StatusNotModified was returned. +func (c *ServicesBatchEnableCall) Do(opts ...googleapi.CallOption) (*Operation, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &Operation{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Enable multiple services on a project. The operation is atomic: if enabling\nany service fails, then the entire batch fails, and no state changes occur.\n\nOperation\u003cresponse: google.protobuf.Empty\u003e", + // "flatPath": "v1beta1/{v1beta1Id}/{v1beta1Id1}/services:batchEnable", + // "httpMethod": "POST", + // "id": "serviceusage.services.batchEnable", + // "parameterOrder": [ + // "parent" + // ], + // "parameters": { + // "parent": { + // "description": "Parent to enable services on.\n\nAn example name would be:\n`projects/123`\nwhere `123` is the project number (not project ID).\n\nThe `BatchEnableServices` method currently only supports projects.", + // "location": "path", + // "pattern": "^[^/]+/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1beta1/{+parent}/services:batchEnable", + // "request": { + // "$ref": "BatchEnableServicesRequest" + // }, + // "response": { + // "$ref": "Operation" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform", + // "https://www.googleapis.com/auth/service.management" + // ] + // } + +} + +// method id "serviceusage.services.disable": + +type ServicesDisableCall struct { + s *APIService + name string + disableservicerequest *DisableServiceRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Disable: Disable a service so that it can no longer be used with a +// project. +// This prevents unintended usage that may cause unexpected +// billing +// charges or security leaks. +// +// It is not valid to call the disable method on a service that is +// not +// currently enabled. Callers will receive a `FAILED_PRECONDITION` +// status if +// the target service is not currently enabled. +// +// Operation +func (r *ServicesService) Disable(name string, disableservicerequest *DisableServiceRequest) *ServicesDisableCall { + c := &ServicesDisableCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + c.disableservicerequest = disableservicerequest + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ServicesDisableCall) Fields(s ...googleapi.Field) *ServicesDisableCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ServicesDisableCall) Context(ctx context.Context) *ServicesDisableCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ServicesDisableCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ServicesDisableCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.disableservicerequest) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}:disable") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("POST", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "serviceusage.services.disable" call. +// Exactly one of *Operation or error will be non-nil. Any non-2xx +// status code is an error. Response headers are in either +// *Operation.ServerResponse.Header or (if a response was returned at +// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified +// to check whether the returned error was because +// http.StatusNotModified was returned. +func (c *ServicesDisableCall) Do(opts ...googleapi.CallOption) (*Operation, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &Operation{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Disable a service so that it can no longer be used with a project.\nThis prevents unintended usage that may cause unexpected billing\ncharges or security leaks.\n\nIt is not valid to call the disable method on a service that is not\ncurrently enabled. Callers will receive a `FAILED_PRECONDITION` status if\nthe target service is not currently enabled.\n\nOperation\u003cresponse: google.protobuf.Empty\u003e", + // "flatPath": "v1beta1/{v1beta1Id}/{v1beta1Id1}/services/{servicesId}:disable", + // "httpMethod": "POST", + // "id": "serviceusage.services.disable", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "Name of the consumer and service to disable the service on.\n\nThe enable and disable methods currently only support projects.\n\nAn example name would be:\n`projects/123/services/serviceusage.googleapis.com`\nwhere `123` is the project number (not project ID).", + // "location": "path", + // "pattern": "^[^/]+/[^/]+/services/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1beta1/{+name}:disable", + // "request": { + // "$ref": "DisableServiceRequest" + // }, + // "response": { + // "$ref": "Operation" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform", + // "https://www.googleapis.com/auth/service.management" + // ] + // } + +} + +// method id "serviceusage.services.enable": + +type ServicesEnableCall struct { + s *APIService + name string + enableservicerequest *EnableServiceRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Enable: Enable a service so that it can be used with a +// project. +// +// Operation +func (r *ServicesService) Enable(name string, enableservicerequest *EnableServiceRequest) *ServicesEnableCall { + c := &ServicesEnableCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + c.enableservicerequest = enableservicerequest + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ServicesEnableCall) Fields(s ...googleapi.Field) *ServicesEnableCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ServicesEnableCall) Context(ctx context.Context) *ServicesEnableCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ServicesEnableCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ServicesEnableCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.enableservicerequest) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}:enable") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("POST", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "serviceusage.services.enable" call. +// Exactly one of *Operation or error will be non-nil. Any non-2xx +// status code is an error. Response headers are in either +// *Operation.ServerResponse.Header or (if a response was returned at +// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified +// to check whether the returned error was because +// http.StatusNotModified was returned. +func (c *ServicesEnableCall) Do(opts ...googleapi.CallOption) (*Operation, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &Operation{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Enable a service so that it can be used with a project.\n\nOperation\u003cresponse: google.protobuf.Empty\u003e", + // "flatPath": "v1beta1/{v1beta1Id}/{v1beta1Id1}/services/{servicesId}:enable", + // "httpMethod": "POST", + // "id": "serviceusage.services.enable", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "Name of the consumer and service to enable the service on.\n\nThe `EnableService` and `DisableService` methods currently only support\nprojects.\n\nEnabling a service requires that the service is public or is shared with\nthe user enabling the service.\n\nAn example name would be:\n`projects/123/services/serviceusage.googleapis.com`\nwhere `123` is the project number (not project ID).", + // "location": "path", + // "pattern": "^[^/]+/[^/]+/services/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1beta1/{+name}:enable", + // "request": { + // "$ref": "EnableServiceRequest" + // }, + // "response": { + // "$ref": "Operation" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform", + // "https://www.googleapis.com/auth/service.management" + // ] + // } + +} + +// method id "serviceusage.services.get": + +type ServicesGetCall struct { + s *APIService + name string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// Get: Returns the service configuration and enabled state for a given +// service. +func (r *ServicesService) Get(name string) *ServicesGetCall { + c := &ServicesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ServicesGetCall) Fields(s ...googleapi.Field) *ServicesGetCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// IfNoneMatch sets the optional parameter which makes the operation +// fail if the object's ETag matches the given value. This is useful for +// getting updates only after the object has changed since the last +// request. Use googleapi.IsNotModified to check whether the response +// error from Do is the result of In-None-Match. +func (c *ServicesGetCall) IfNoneMatch(entityTag string) *ServicesGetCall { + c.ifNoneMatch_ = entityTag + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ServicesGetCall) Context(ctx context.Context) *ServicesGetCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ServicesGetCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ServicesGetCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + if c.ifNoneMatch_ != "" { + reqHeaders.Set("If-None-Match", c.ifNoneMatch_) + } + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("GET", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "serviceusage.services.get" call. +// Exactly one of *Service or error will be non-nil. Any non-2xx status +// code is an error. Response headers are in either +// *Service.ServerResponse.Header or (if a response was returned at all) +// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to +// check whether the returned error was because http.StatusNotModified +// was returned. +func (c *ServicesGetCall) Do(opts ...googleapi.CallOption) (*Service, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &Service{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Returns the service configuration and enabled state for a given service.", + // "flatPath": "v1beta1/{v1beta1Id}/{v1beta1Id1}/services/{servicesId}", + // "httpMethod": "GET", + // "id": "serviceusage.services.get", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "Name of the consumer and service to get the `ConsumerState` for.\n\nAn example name would be:\n`projects/123/services/serviceusage.googleapis.com`\nwhere `123` is the project number (not project ID).", + // "location": "path", + // "pattern": "^[^/]+/[^/]+/services/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1beta1/{+name}", + // "response": { + // "$ref": "Service" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform", + // "https://www.googleapis.com/auth/cloud-platform.read-only" + // ] + // } + +} + +// method id "serviceusage.services.list": + +type ServicesListCall struct { + s *APIService + parent string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// List: List all services available to the specified project, and the +// current +// state of those services with respect to the project. The list +// includes +// all public services, all services for which the calling user has +// the +// `servicemanagement.services.bind` permission, and all services that +// have +// already been enabled on the project. The list can be filtered to +// only include services in a specific state, for example to only +// include +// services enabled on the project. +func (r *ServicesService) List(parent string) *ServicesListCall { + c := &ServicesListCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.parent = parent + return c +} + +// Filter sets the optional parameter "filter": Only list services that +// conform to the given filter. +// The allowed filter strings are `state:ENABLED` and `state:DISABLED`. +func (c *ServicesListCall) Filter(filter string) *ServicesListCall { + c.urlParams_.Set("filter", filter) + return c +} + +// PageSize sets the optional parameter "pageSize": Requested size of +// the next page of data. +// Requested page size cannot exceed 200. +// If not set, the default page size is 50. +func (c *ServicesListCall) PageSize(pageSize int64) *ServicesListCall { + c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) + return c +} + +// PageToken sets the optional parameter "pageToken": Token identifying +// which result to start with, which is returned by a +// previous list call. +func (c *ServicesListCall) PageToken(pageToken string) *ServicesListCall { + c.urlParams_.Set("pageToken", pageToken) + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ServicesListCall) Fields(s ...googleapi.Field) *ServicesListCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// IfNoneMatch sets the optional parameter which makes the operation +// fail if the object's ETag matches the given value. This is useful for +// getting updates only after the object has changed since the last +// request. Use googleapi.IsNotModified to check whether the response +// error from Do is the result of In-None-Match. +func (c *ServicesListCall) IfNoneMatch(entityTag string) *ServicesListCall { + c.ifNoneMatch_ = entityTag + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ServicesListCall) Context(ctx context.Context) *ServicesListCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ServicesListCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ServicesListCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + if c.ifNoneMatch_ != "" { + reqHeaders.Set("If-None-Match", c.ifNoneMatch_) + } + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+parent}/services") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("GET", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "parent": c.parent, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "serviceusage.services.list" call. +// Exactly one of *ListServicesResponse or error will be non-nil. Any +// non-2xx status code is an error. Response headers are in either +// *ListServicesResponse.ServerResponse.Header or (if a response was +// returned at all) in error.(*googleapi.Error).Header. Use +// googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *ServicesListCall) Do(opts ...googleapi.CallOption) (*ListServicesResponse, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &ListServicesResponse{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "List all services available to the specified project, and the current\nstate of those services with respect to the project. The list includes\nall public services, all services for which the calling user has the\n`servicemanagement.services.bind` permission, and all services that have\nalready been enabled on the project. The list can be filtered to\nonly include services in a specific state, for example to only include\nservices enabled on the project.", + // "flatPath": "v1beta1/{v1beta1Id}/{v1beta1Id1}/services", + // "httpMethod": "GET", + // "id": "serviceusage.services.list", + // "parameterOrder": [ + // "parent" + // ], + // "parameters": { + // "filter": { + // "description": "Only list services that conform to the given filter.\nThe allowed filter strings are `state:ENABLED` and `state:DISABLED`.", + // "location": "query", + // "type": "string" + // }, + // "pageSize": { + // "description": "Requested size of the next page of data.\nRequested page size cannot exceed 200.\n If not set, the default page size is 50.", + // "format": "int32", + // "location": "query", + // "type": "integer" + // }, + // "pageToken": { + // "description": "Token identifying which result to start with, which is returned by a\nprevious list call.", + // "location": "query", + // "type": "string" + // }, + // "parent": { + // "description": "Parent to search for services on.\n\nAn example name would be:\n`projects/123`\nwhere `123` is the project number (not project ID).", + // "location": "path", + // "pattern": "^[^/]+/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1beta1/{+parent}/services", + // "response": { + // "$ref": "ListServicesResponse" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform", + // "https://www.googleapis.com/auth/cloud-platform.read-only" + // ] + // } + +} + +// Pages invokes f for each page of results. +// A non-nil error returned from f will halt the iteration. +// The provided context supersedes any context provided to the Context method. +func (c *ServicesListCall) Pages(ctx context.Context, f func(*ListServicesResponse) error) error { + c.ctx_ = ctx + defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point + for { + x, err := c.Do() + if err != nil { + return err + } + if err := f(x); err != nil { + return err + } + if x.NextPageToken == "" { + return nil + } + c.PageToken(x.NextPageToken) + } +} diff --git a/vendor/google.golang.org/api/serviceuser/v1/serviceuser-api.json b/vendor/google.golang.org/api/serviceuser/v1/serviceuser-api.json index 6ecbf8104..58214d1e9 100644 --- a/vendor/google.golang.org/api/serviceuser/v1/serviceuser-api.json +++ b/vendor/google.golang.org/api/serviceuser/v1/serviceuser-api.json @@ -1,338 +1,819 @@ { - "resources": { - "services": { - "methods": { - "search": { - "response": { - "$ref": "SearchServicesResponse" - }, - "parameterOrder": [], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ], - "parameters": { - "pageToken": { - "location": "query", - "description": "Token identifying which result to start with; returned by a previous list\ncall.", - "type": "string" - }, - "pageSize": { - "location": "query", - "description": "Requested size of the next page of data.", - "format": "int32", - "type": "integer" - } - }, - "flatPath": "v1/services:search", - "path": "v1/services:search", - "id": "serviceuser.services.search", - "description": "Search available services.\n\nWhen no filter is specified, returns all accessible services. For\nauthenticated users, also returns all services the calling user has\n\"servicemanagement.services.bind\" permission for." - } - } - }, - "projects": { - "resources": { - "services": { - "methods": { - "enable": { - "request": { - "$ref": "EnableServiceRequest" - }, - "description": "Enable a service so it can be used with a project.\nSee [Cloud Auth Guide](https://cloud.google.com/docs/authentication) for\nmore information.\n\nOperation\u003cresponse: google.protobuf.Empty\u003e", - "httpMethod": "POST", - "parameterOrder": [ - "name" - ], - "response": { - "$ref": "Operation" - }, - "parameters": { - "name": { - "pattern": "^projects/[^/]+/services/[^/]+$", - "location": "path", - "description": "Name of the consumer and the service to enable for that consumer.\n\nA valid path would be:\n- /v1/projects/my-project/services/servicemanagement.googleapis.com:enable", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/service.management" - ], - "flatPath": "v1/projects/{projectsId}/services/{servicesId}:enable", - "id": "serviceuser.projects.services.enable", - "path": "v1/{+name}:enable" - }, - "list": { - "response": { - "$ref": "ListEnabledServicesResponse" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "GET", - "parameters": { - "parent": { - "description": "List enabled services for the specified parent.\n\nAn example valid parent would be:\n- projects/my-project", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+$", - "location": "path" - }, - "pageToken": { - "location": "query", - "description": "Token identifying which result to start with; returned by a previous list\ncall.", - "type": "string" - }, - "pageSize": { - "description": "Requested size of the next page of data.", - "format": "int32", - "type": "integer", - "location": "query" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ], - "flatPath": "v1/projects/{projectsId}/services", - "path": "v1/{+parent}/services", - "id": "serviceuser.projects.services.list", - "description": "List enabled services for the specified consumer." - }, - "disable": { - "path": "v1/{+name}:disable", - "id": "serviceuser.projects.services.disable", - "request": { - "$ref": "DisableServiceRequest" - }, - "description": "Disable a service so it can no longer be used with a\nproject. This prevents unintended usage that may cause unexpected billing\ncharges or security leaks.\n\nOperation\u003cresponse: google.protobuf.Empty\u003e", - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "POST", - "parameters": { - "name": { - "pattern": "^projects/[^/]+/services/[^/]+$", - "location": "path", - "description": "Name of the consumer and the service to disable for that consumer.\n\nThe Service User implementation accepts the following forms for consumer:\n- \"project:\u003cproject_id\u003e\"\n\nA valid path would be:\n- /v1/projects/my-project/services/servicemanagement.googleapis.com:disable", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/service.management" - ], - "flatPath": "v1/projects/{projectsId}/services/{servicesId}:disable" - } - } + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/cloud-platform": { + "description": "View and manage your data across Google Cloud Platform services" + }, + "https://www.googleapis.com/auth/cloud-platform.read-only": { + "description": "View your data across Google Cloud Platform services" + }, + "https://www.googleapis.com/auth/service.management": { + "description": "Manage your Google API service configuration" } } } }, + "basePath": "", + "baseUrl": "https://serviceuser.googleapis.com/", + "batchPath": "batch", + "canonicalName": "Service User", + "description": "Enables services that service consumers want to use on Google Cloud Platform, lists the available or enabled services, or disables services that service consumers no longer use.", + "discoveryVersion": "v1", + "documentationLink": "https://cloud.google.com/service-management/", + "icons": { + "x16": "http://www.google.com/images/icons/product/search-16.gif", + "x32": "http://www.google.com/images/icons/product/search-32.gif" + }, + "id": "serviceuser:v1", + "kind": "discovery#restDescription", + "name": "serviceuser", + "ownerDomain": "google.com", + "ownerName": "Google", "parameters": { - "access_token": { - "description": "OAuth access token.", - "type": "string", - "location": "query" - }, - "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.", - "type": "string", - "location": "query" - }, - "quotaUser": { - "location": "query", - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", - "type": "string" - }, - "pp": { - "location": "query", - "description": "Pretty-print response.", - "type": "boolean", - "default": "true" - }, - "bearer_token": { - "description": "OAuth bearer token.", - "type": "string", - "location": "query" - }, - "oauth_token": { - "location": "query", - "description": "OAuth 2.0 token for the current user.", - "type": "string" - }, - "upload_protocol": { - "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", - "type": "string", - "location": "query" - }, - "prettyPrint": { - "location": "query", - "description": "Returns response with indentations and line breaks.", - "type": "boolean", - "default": "true" - }, - "fields": { - "location": "query", - "description": "Selector specifying which fields to include in a partial response.", - "type": "string" - }, - "uploadType": { - "location": "query", - "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", - "type": "string" - }, - "callback": { - "location": "query", - "description": "JSONP", - "type": "string" - }, "$.xgafv": { + "description": "V1 error format.", "enum": [ "1", "2" ], - "description": "V1 error format.", - "type": "string", "enumDescriptions": [ "v1 error format", "v2 error format" ], - "location": "query" + "location": "query", + "type": "string" + }, + "access_token": { + "description": "OAuth access token.", + "location": "query", + "type": "string" }, "alt": { + "default": "json", + "description": "Data format for response.", "enum": [ "json", "media", "proto" ], - "type": "string", "enumDescriptions": [ "Responses with Content-Type of application/json", "Media download with context-dependent Content-Type", "Responses with Content-Type of application/x-protobuf" ], "location": "query", - "description": "Data format for response.", - "default": "json" + "type": "string" + }, + "bearer_token": { + "description": "OAuth bearer token.", + "location": "query", + "type": "string" + }, + "callback": { + "description": "JSONP", + "location": "query", + "type": "string" + }, + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "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.", + "location": "query", + "type": "string" + }, + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "pp": { + "default": "true", + "description": "Pretty-print response.", + "location": "query", + "type": "boolean" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", + "location": "query", + "type": "string" + }, + "uploadType": { + "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", + "location": "query", + "type": "string" + }, + "upload_protocol": { + "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", + "location": "query", + "type": "string" } }, - "version": "v1", - "baseUrl": "https://serviceuser.googleapis.com/", - "servicePath": "", - "description": "Enables services that service consumers want to use on Google Cloud Platform, lists the available or enabled services, or disables services that service consumers no longer use.", - "kind": "discovery#restDescription", - "basePath": "", - "documentationLink": "https://cloud.google.com/service-management/", - "revision": "20180112", - "id": "serviceuser:v1", - "discoveryVersion": "v1", - "version_module": true, - "schemas": { - "SourceInfo": { - "properties": { - "sourceFiles": { - "description": "All files used during config generation.", - "type": "array", - "items": { - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" + "protocol": "rest", + "resources": { + "projects": { + "resources": { + "services": { + "methods": { + "disable": { + "description": "Disable a service so it can no longer be used with a\nproject. This prevents unintended usage that may cause unexpected billing\ncharges or security leaks.\n\nOperation\u003cresponse: google.protobuf.Empty\u003e", + "flatPath": "v1/projects/{projectsId}/services/{servicesId}:disable", + "httpMethod": "POST", + "id": "serviceuser.projects.services.disable", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Name of the consumer and the service to disable for that consumer.\n\nThe Service User implementation accepts the following forms for consumer:\n- \"project:\u003cproject_id\u003e\"\n\nA valid path would be:\n- /v1/projects/my-project/services/servicemanagement.googleapis.com:disable", + "location": "path", + "pattern": "^projects/[^/]+/services/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}:disable", + "request": { + "$ref": "DisableServiceRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/service.management" + ] }, - "type": "object" + "enable": { + "description": "Enable a service so it can be used with a project.\nSee [Cloud Auth Guide](https://cloud.google.com/docs/authentication) for\nmore information.\n\nOperation\u003cresponse: google.protobuf.Empty\u003e", + "flatPath": "v1/projects/{projectsId}/services/{servicesId}:enable", + "httpMethod": "POST", + "id": "serviceuser.projects.services.enable", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Name of the consumer and the service to enable for that consumer.\n\nA valid path would be:\n- /v1/projects/my-project/services/servicemanagement.googleapis.com:enable", + "location": "path", + "pattern": "^projects/[^/]+/services/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}:enable", + "request": { + "$ref": "EnableServiceRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/service.management" + ] + }, + "list": { + "description": "List enabled services for the specified consumer.", + "flatPath": "v1/projects/{projectsId}/services", + "httpMethod": "GET", + "id": "serviceuser.projects.services.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "pageSize": { + "description": "Requested size of the next page of data.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Token identifying which result to start with; returned by a previous list\ncall.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "List enabled services for the specified parent.\n\nAn example valid parent would be:\n- projects/my-project", + "location": "path", + "pattern": "^projects/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+parent}/services", + "response": { + "$ref": "ListEnabledServicesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + } } } + } + }, + "services": { + "methods": { + "search": { + "description": "Search available services.\n\nWhen no filter is specified, returns all accessible services. For\nauthenticated users, also returns all services the calling user has\n\"servicemanagement.services.bind\" permission for.", + "flatPath": "v1/services:search", + "httpMethod": "GET", + "id": "serviceuser.services.search", + "parameterOrder": [], + "parameters": { + "pageSize": { + "description": "Requested size of the next page of data.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Token identifying which result to start with; returned by a previous list\ncall.", + "location": "query", + "type": "string" + } + }, + "path": "v1/services:search", + "response": { + "$ref": "SearchServicesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + } + } + } + }, + "revision": "20180323", + "rootUrl": "https://serviceuser.googleapis.com/", + "schemas": { + "Api": { + "description": "Api is a light-weight descriptor for an API Interface.\n\nInterfaces are also described as \"protocol buffer services\" in some contexts,\nsuch as by the \"service\" keyword in a .proto file, but they are different\nfrom API Services, which represent a concrete implementation of an interface\nas opposed to simply a description of methods and bindings. They are also\nsometimes simply referred to as \"APIs\" in other contexts, such as the name of\nthis message itself. See https://cloud.google.com/apis/design/glossary for\ndetailed terminology.", + "id": "Api", + "properties": { + "methods": { + "description": "The methods of this interface, in unspecified order.", + "items": { + "$ref": "Method" + }, + "type": "array" + }, + "mixins": { + "description": "Included interfaces. See Mixin.", + "items": { + "$ref": "Mixin" + }, + "type": "array" + }, + "name": { + "description": "The fully qualified name of this interface, including package name\nfollowed by the interface's simple name.", + "type": "string" + }, + "options": { + "description": "Any metadata attached to the interface.", + "items": { + "$ref": "Option" + }, + "type": "array" + }, + "sourceContext": { + "$ref": "SourceContext", + "description": "Source context for the protocol buffer service represented by this\nmessage." + }, + "syntax": { + "description": "The source syntax of the service.", + "enum": [ + "SYNTAX_PROTO2", + "SYNTAX_PROTO3" + ], + "enumDescriptions": [ + "Syntax `proto2`.", + "Syntax `proto3`." + ], + "type": "string" + }, + "version": { + "description": "A version string for this interface. If specified, must have the form\n`major-version.minor-version`, as in `1.10`. If the minor version is\nomitted, it defaults to zero. If the entire version field is empty, the\nmajor version is derived from the package name, as outlined below. If the\nfield is not empty, the version in the package name will be verified to be\nconsistent with what is provided here.\n\nThe versioning schema uses [semantic\nversioning](http://semver.org) where the major version number\nindicates a breaking change and the minor version an additive,\nnon-breaking change. Both version numbers are signals to users\nwhat to expect from different versions, and should be carefully\nchosen based on the product plan.\n\nThe major version is also reflected in the package name of the\ninterface, which must end in `v\u003cmajor-version\u003e`, as in\n`google.feature.v1`. For major versions 0 and 1, the suffix can\nbe omitted. Zero major versions must only be used for\nexperimental, non-GA interfaces.\n", + "type": "string" + } + }, + "type": "object" + }, + "AuthProvider": { + "description": "Configuration for an anthentication provider, including support for\n[JSON Web Token (JWT)](https://tools.ietf.org/html/draft-ietf-oauth-json-web-token-32).", + "id": "AuthProvider", + "properties": { + "audiences": { + "description": "The list of JWT\n[audiences](https://tools.ietf.org/html/draft-ietf-oauth-json-web-token-32#section-4.1.3).\nthat are allowed to access. A JWT containing any of these audiences will\nbe accepted. When this setting is absent, only JWTs with audience\n\"https://Service_name/API_name\"\nwill be accepted. For example, if no audiences are in the setting,\nLibraryService API will only accept JWTs with the following audience\n\"https://library-example.googleapis.com/google.example.library.v1.LibraryService\".\n\nExample:\n\n audiences: bookstore_android.apps.googleusercontent.com,\n bookstore_web.apps.googleusercontent.com", + "type": "string" + }, + "authorizationUrl": { + "description": "Redirect URL if JWT token is required but no present or is expired.\nImplement authorizationUrl of securityDefinitions in OpenAPI spec.", + "type": "string" + }, + "id": { + "description": "The unique identifier of the auth provider. It will be referred to by\n`AuthRequirement.provider_id`.\n\nExample: \"bookstore_auth\".", + "type": "string" + }, + "issuer": { + "description": "Identifies the principal that issued the JWT. See\nhttps://tools.ietf.org/html/draft-ietf-oauth-json-web-token-32#section-4.1.1\nUsually a URL or an email address.\n\nExample: https://securetoken.google.com\nExample: 1234567-compute@developer.gserviceaccount.com", + "type": "string" + }, + "jwksUri": { + "description": "URL of the provider's public key set to validate signature of the JWT. See\n[OpenID Discovery](https://openid.net/specs/openid-connect-discovery-1_0.html#ProviderMetadata).\nOptional if the key set document:\n - can be retrieved from\n [OpenID Discovery](https://openid.net/specs/openid-connect-discovery-1_0.html\n of the issuer.\n - can be inferred from the email domain of the issuer (e.g. a Google service account).\n\nExample: https://www.googleapis.com/oauth2/v1/certs", + "type": "string" + } + }, + "type": "object" + }, + "AuthRequirement": { + "description": "User-defined authentication requirements, including support for\n[JSON Web Token (JWT)](https://tools.ietf.org/html/draft-ietf-oauth-json-web-token-32).", + "id": "AuthRequirement", + "properties": { + "audiences": { + "description": "NOTE: This will be deprecated soon, once AuthProvider.audiences is\nimplemented and accepted in all the runtime components.\n\nThe list of JWT\n[audiences](https://tools.ietf.org/html/draft-ietf-oauth-json-web-token-32#section-4.1.3).\nthat are allowed to access. A JWT containing any of these audiences will\nbe accepted. When this setting is absent, only JWTs with audience\n\"https://Service_name/API_name\"\nwill be accepted. For example, if no audiences are in the setting,\nLibraryService API will only accept JWTs with the following audience\n\"https://library-example.googleapis.com/google.example.library.v1.LibraryService\".\n\nExample:\n\n audiences: bookstore_android.apps.googleusercontent.com,\n bookstore_web.apps.googleusercontent.com", + "type": "string" + }, + "providerId": { + "description": "id from authentication provider.\n\nExample:\n\n provider_id: bookstore_auth", + "type": "string" + } + }, + "type": "object" + }, + "Authentication": { + "description": "`Authentication` defines the authentication configuration for an API.\n\nExample for an API targeted for external use:\n\n name: calendar.googleapis.com\n authentication:\n providers:\n - id: google_calendar_auth\n jwks_uri: https://www.googleapis.com/oauth2/v1/certs\n issuer: https://securetoken.google.com\n rules:\n - selector: \"*\"\n requirements:\n provider_id: google_calendar_auth", + "id": "Authentication", + "properties": { + "providers": { + "description": "Defines a set of authentication providers that a service supports.", + "items": { + "$ref": "AuthProvider" + }, + "type": "array" + }, + "rules": { + "description": "A list of authentication rules that apply to individual API methods.\n\n**NOTE:** All service configuration rules follow \"last one wins\" order.", + "items": { + "$ref": "AuthenticationRule" + }, + "type": "array" + } + }, + "type": "object" + }, + "AuthenticationRule": { + "description": "Authentication rules for the service.\n\nBy default, if a method has any authentication requirements, every request\nmust include a valid credential matching one of the requirements.\nIt's an error to include more than one kind of credential in a single\nrequest.\n\nIf a method doesn't have any auth requirements, request credentials will be\nignored.", + "id": "AuthenticationRule", + "properties": { + "allowWithoutCredential": { + "description": "Whether to allow requests without a credential. The credential can be\nan OAuth token, Google cookies (first-party auth) or EndUserCreds.\n\nFor requests without credentials, if the service control environment is\nspecified, each incoming request **must** be associated with a service\nconsumer. This can be done by passing an API key that belongs to a consumer\nproject.", + "type": "boolean" + }, + "customAuth": { + "$ref": "CustomAuthRequirements", + "description": "Configuration for custom authentication." + }, + "oauth": { + "$ref": "OAuthRequirements", + "description": "The requirements for OAuth credentials." + }, + "requirements": { + "description": "Requirements for additional authentication providers.", + "items": { + "$ref": "AuthRequirement" + }, + "type": "array" + }, + "selector": { + "description": "Selects the methods to which this rule applies.\n\nRefer to selector for syntax details.", + "type": "string" + } + }, + "type": "object" + }, + "AuthorizationConfig": { + "description": "Configuration of authorization.\n\nThis section determines the authorization provider, if unspecified, then no\nauthorization check will be done.\n\nExample:\n\n experimental:\n authorization:\n provider: firebaserules.googleapis.com", + "id": "AuthorizationConfig", + "properties": { + "provider": { + "description": "The name of the authorization provider, such as\nfirebaserules.googleapis.com.", + "type": "string" + } + }, + "type": "object" + }, + "Backend": { + "description": "`Backend` defines the backend configuration for a service.", + "id": "Backend", + "properties": { + "rules": { + "description": "A list of API backend rules that apply to individual API methods.\n\n**NOTE:** All service configuration rules follow \"last one wins\" order.", + "items": { + "$ref": "BackendRule" + }, + "type": "array" + } + }, + "type": "object" + }, + "BackendRule": { + "description": "A backend rule provides configuration for an individual API element.", + "id": "BackendRule", + "properties": { + "address": { + "description": "The address of the API backend.", + "type": "string" + }, + "deadline": { + "description": "The number of seconds to wait for a response from a request. The default\ndeadline for gRPC is infinite (no deadline) and HTTP requests is 5 seconds.", + "format": "double", + "type": "number" + }, + "minDeadline": { + "description": "Minimum deadline in seconds needed for this method. Calls having deadline\nvalue lower than this will be rejected.", + "format": "double", + "type": "number" + }, + "selector": { + "description": "Selects the methods to which this rule applies.\n\nRefer to selector for syntax details.", + "type": "string" + } + }, + "type": "object" + }, + "Billing": { + "description": "Billing related configuration of the service.\n\nThe following example shows how to configure monitored resources and metrics\nfor billing:\n\n monitored_resources:\n - type: library.googleapis.com/branch\n labels:\n - key: /city\n description: The city where the library branch is located in.\n - key: /name\n description: The name of the branch.\n metrics:\n - name: library.googleapis.com/book/borrowed_count\n metric_kind: DELTA\n value_type: INT64\n billing:\n consumer_destinations:\n - monitored_resource: library.googleapis.com/branch\n metrics:\n - library.googleapis.com/book/borrowed_count", + "id": "Billing", + "properties": { + "consumerDestinations": { + "description": "Billing configurations for sending metrics to the consumer project.\nThere can be multiple consumer destinations per service, each one must have\na different monitored resource type. A metric can be used in at most\none consumer destination.", + "items": { + "$ref": "BillingDestination" + }, + "type": "array" + } + }, + "type": "object" + }, + "BillingDestination": { + "description": "Configuration of a specific billing destination (Currently only support\nbill against consumer project).", + "id": "BillingDestination", + "properties": { + "metrics": { + "description": "Names of the metrics to report to this billing destination.\nEach name must be defined in Service.metrics section.", + "items": { + "type": "string" + }, + "type": "array" + }, + "monitoredResource": { + "description": "The monitored resource type. The type must be defined in\nService.monitored_resources section.", + "type": "string" + } + }, + "type": "object" + }, + "Context": { + "description": "`Context` defines which contexts an API requests.\n\nExample:\n\n context:\n rules:\n - selector: \"*\"\n requested:\n - google.rpc.context.ProjectContext\n - google.rpc.context.OriginContext\n\nThe above specifies that all methods in the API request\n`google.rpc.context.ProjectContext` and\n`google.rpc.context.OriginContext`.\n\nAvailable context types are defined in package\n`google.rpc.context`.\n\nThis also provides mechanism to whitelist any protobuf message extension that\ncan be sent in grpc metadata using “x-goog-ext-\u003cextension_id\u003e-bin” and\n“x-goog-ext-\u003cextension_id\u003e-jspb” format. For example, list any service\nspecific protobuf types that can appear in grpc metadata as follows in your\nyaml file:\n\nExample:\n\n context:\n rules:\n - selector: \"google.example.library.v1.LibraryService.CreateBook\"\n allowed_request_extensions:\n - google.foo.v1.NewExtension\n allowed_response_extensions:\n - google.foo.v1.NewExtension\n\nYou can also specify extension ID instead of fully qualified extension name\nhere.", + "id": "Context", + "properties": { + "rules": { + "description": "A list of RPC context rules that apply to individual API methods.\n\n**NOTE:** All service configuration rules follow \"last one wins\" order.", + "items": { + "$ref": "ContextRule" + }, + "type": "array" + } + }, + "type": "object" + }, + "ContextRule": { + "description": "A context rule provides information about the context for an individual API\nelement.", + "id": "ContextRule", + "properties": { + "allowedRequestExtensions": { + "description": "A list of full type names or extension IDs of extensions allowed in grpc\nside channel from client to backend.", + "items": { + "type": "string" + }, + "type": "array" + }, + "allowedResponseExtensions": { + "description": "A list of full type names or extension IDs of extensions allowed in grpc\nside channel from backend to client.", + "items": { + "type": "string" + }, + "type": "array" + }, + "provided": { + "description": "A list of full type names of provided contexts.", + "items": { + "type": "string" + }, + "type": "array" + }, + "requested": { + "description": "A list of full type names of requested contexts.", + "items": { + "type": "string" + }, + "type": "array" + }, + "selector": { + "description": "Selects the methods to which this rule applies.\n\nRefer to selector for syntax details.", + "type": "string" + } }, - "id": "SourceInfo", - "description": "Source information used to create a Service Config", "type": "object" }, "Control": { + "description": "Selects and configures the service controller used by the service. The\nservice controller handles features like abuse, quota, billing, logging,\nmonitoring, etc.", + "id": "Control", "properties": { "environment": { "description": "The service control environment to use. If empty, no control plane\nfeature (like quota and billing) will be enabled.", "type": "string" } }, - "id": "Control", - "description": "Selects and configures the service controller used by the service. The\nservice controller handles features like abuse, quota, billing, logging,\nmonitoring, etc.", "type": "object" }, - "SystemParameter": { - "description": "Define a parameter's name and location. The parameter may be passed as either\nan HTTP header or a URL query parameter, and if both are passed the behavior\nis implementation-dependent.", - "type": "object", + "CustomAuthRequirements": { + "description": "Configuration for a custom authentication provider.", + "id": "CustomAuthRequirements", "properties": { - "urlQueryParameter": { - "description": "Define the URL query parameter name to use for the parameter. It is case\nsensitive.", + "provider": { + "description": "A configuration string containing connection information for the\nauthentication provider, typically formatted as a SmartService string\n(go/smartservice).", + "type": "string" + } + }, + "type": "object" + }, + "CustomError": { + "description": "Customize service error responses. For example, list any service\nspecific protobuf types that can appear in error detail lists of\nerror responses.\n\nExample:\n\n custom_error:\n types:\n - google.foo.v1.CustomError\n - google.foo.v1.AnotherError", + "id": "CustomError", + "properties": { + "rules": { + "description": "The list of custom error rules that apply to individual API messages.\n\n**NOTE:** All service configuration rules follow \"last one wins\" order.", + "items": { + "$ref": "CustomErrorRule" + }, + "type": "array" + }, + "types": { + "description": "The list of custom error detail types, e.g. 'google.foo.v1.CustomError'.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "CustomErrorRule": { + "description": "A custom error rule.", + "id": "CustomErrorRule", + "properties": { + "isErrorType": { + "description": "Mark this message as possible payload in error response. Otherwise,\nobjects of this type will be filtered when they appear in error payload.", + "type": "boolean" + }, + "selector": { + "description": "Selects messages to which this rule applies.\n\nRefer to selector for syntax details.", + "type": "string" + } + }, + "type": "object" + }, + "CustomHttpPattern": { + "description": "A custom pattern is used for defining custom HTTP verb.", + "id": "CustomHttpPattern", + "properties": { + "kind": { + "description": "The name of this custom HTTP verb.", "type": "string" }, - "httpHeader": { - "description": "Define the HTTP header name to use for the parameter. It is case\ninsensitive.", + "path": { + "description": "The path matched by this custom verb.", "type": "string" + } + }, + "type": "object" + }, + "DisableServiceRequest": { + "description": "Request message for DisableService method.", + "id": "DisableServiceRequest", + "properties": {}, + "type": "object" + }, + "Documentation": { + "description": "`Documentation` provides the information for describing a service.\n\nExample:\n\u003cpre\u003e\u003ccode\u003edocumentation:\n summary: \u003e\n The Google Calendar API gives access\n to most calendar features.\n pages:\n - name: Overview\n content: \u0026#40;== include google/foo/overview.md ==\u0026#41;\n - name: Tutorial\n content: \u0026#40;== include google/foo/tutorial.md ==\u0026#41;\n subpages;\n - name: Java\n content: \u0026#40;== include google/foo/tutorial_java.md ==\u0026#41;\n rules:\n - selector: google.calendar.Calendar.Get\n description: \u003e\n ...\n - selector: google.calendar.Calendar.Put\n description: \u003e\n ...\n\u003c/code\u003e\u003c/pre\u003e\nDocumentation is provided in markdown syntax. In addition to\nstandard markdown features, definition lists, tables and fenced\ncode blocks are supported. Section headers can be provided and are\ninterpreted relative to the section nesting of the context where\na documentation fragment is embedded.\n\nDocumentation from the IDL is merged with documentation defined\nvia the config at normalization time, where documentation provided\nby config rules overrides IDL provided.\n\nA number of constructs specific to the API platform are supported\nin documentation text.\n\nIn order to reference a proto element, the following\nnotation can be used:\n\u003cpre\u003e\u003ccode\u003e\u0026#91;fully.qualified.proto.name]\u0026#91;]\u003c/code\u003e\u003c/pre\u003e\nTo override the display text used for the link, this can be used:\n\u003cpre\u003e\u003ccode\u003e\u0026#91;display text]\u0026#91;fully.qualified.proto.name]\u003c/code\u003e\u003c/pre\u003e\nText can be excluded from doc using the following notation:\n\u003cpre\u003e\u003ccode\u003e\u0026#40;-- internal comment --\u0026#41;\u003c/code\u003e\u003c/pre\u003e\n\nA few directives are available in documentation. Note that\ndirectives must appear on a single line to be properly\nidentified. The `include` directive includes a markdown file from\nan external source:\n\u003cpre\u003e\u003ccode\u003e\u0026#40;== include path/to/file ==\u0026#41;\u003c/code\u003e\u003c/pre\u003e\nThe `resource_for` directive marks a message to be the resource of\na collection in REST view. If it is not specified, tools attempt\nto infer the resource from the operations in a collection:\n\u003cpre\u003e\u003ccode\u003e\u0026#40;== resource_for v1.shelves.books ==\u0026#41;\u003c/code\u003e\u003c/pre\u003e\nThe directive `suppress_warning` does not directly affect documentation\nand is documented together with service config validation.", + "id": "Documentation", + "properties": { + "documentationRootUrl": { + "description": "The URL to the root of documentation.", + "type": "string" + }, + "overview": { + "description": "Declares a single overview page. For example:\n\u003cpre\u003e\u003ccode\u003edocumentation:\n summary: ...\n overview: \u0026#40;== include overview.md ==\u0026#41;\n\u003c/code\u003e\u003c/pre\u003e\nThis is a shortcut for the following declaration (using pages style):\n\u003cpre\u003e\u003ccode\u003edocumentation:\n summary: ...\n pages:\n - name: Overview\n content: \u0026#40;== include overview.md ==\u0026#41;\n\u003c/code\u003e\u003c/pre\u003e\nNote: you cannot specify both `overview` field and `pages` field.", + "type": "string" + }, + "pages": { + "description": "The top level pages for the documentation set.", + "items": { + "$ref": "Page" + }, + "type": "array" + }, + "rules": { + "description": "A list of documentation rules that apply to individual API elements.\n\n**NOTE:** All service configuration rules follow \"last one wins\" order.", + "items": { + "$ref": "DocumentationRule" + }, + "type": "array" + }, + "summary": { + "description": "A short summary of what the service does. Can only be provided by\nplain text.", + "type": "string" + } + }, + "type": "object" + }, + "DocumentationRule": { + "description": "A documentation rule provides information about individual API elements.", + "id": "DocumentationRule", + "properties": { + "deprecationDescription": { + "description": "Deprecation description of the selected element(s). It can be provided if an\nelement is marked as `deprecated`.", + "type": "string" + }, + "description": { + "description": "Description of the selected API(s).", + "type": "string" + }, + "selector": { + "description": "The selector is a comma-separated list of patterns. Each pattern is a\nqualified name of the element which may end in \"*\", indicating a wildcard.\nWildcards are only allowed at the end and for a whole component of the\nqualified name, i.e. \"foo.*\" is ok, but not \"foo.b*\" or \"foo.*.bar\". To\nspecify a default for all applicable elements, the whole pattern \"*\"\nis used.", + "type": "string" + } + }, + "type": "object" + }, + "EnableServiceRequest": { + "description": "Request message for EnableService method.", + "id": "EnableServiceRequest", + "properties": {}, + "type": "object" + }, + "Endpoint": { + "description": "`Endpoint` describes a network endpoint that serves a set of APIs.\nA service may expose any number of endpoints, and all endpoints share the\nsame service configuration, such as quota configuration and monitoring\nconfiguration.\n\nExample service configuration:\n\n name: library-example.googleapis.com\n endpoints:\n # Below entry makes 'google.example.library.v1.Library'\n # API be served from endpoint address library-example.googleapis.com.\n # It also allows HTTP OPTIONS calls to be passed to the backend, for\n # it to decide whether the subsequent cross-origin request is\n # allowed to proceed.\n - name: library-example.googleapis.com\n allow_cors: true", + "id": "Endpoint", + "properties": { + "aliases": { + "description": "DEPRECATED: This field is no longer supported. Instead of using aliases,\nplease specify multiple google.api.Endpoint for each of the intended\naliases.\n\nAdditional names that this endpoint will be hosted on.", + "items": { + "type": "string" + }, + "type": "array" + }, + "allowCors": { + "description": "Allowing\n[CORS](https://en.wikipedia.org/wiki/Cross-origin_resource_sharing), aka\ncross-domain traffic, would allow the backends served from this endpoint to\nreceive and respond to HTTP OPTIONS requests. The response will be used by\nthe browser to determine whether the subsequent cross-origin request is\nallowed to proceed.", + "type": "boolean" + }, + "features": { + "description": "The list of features enabled on this endpoint.", + "items": { + "type": "string" + }, + "type": "array" }, "name": { - "description": "Define the name of the parameter, such as \"api_key\" . It is case sensitive.", + "description": "The canonical name of this endpoint.", + "type": "string" + }, + "target": { + "description": "The specification of an Internet routable address of API frontend that will\nhandle requests to this [API Endpoint](https://cloud.google.com/apis/design/glossary).\nIt should be either a valid IPv4 address or a fully-qualified domain name.\nFor example, \"8.8.8.8\" or \"myservice.appspot.com\".", "type": "string" } }, - "id": "SystemParameter" + "type": "object" }, - "Monitoring": { + "Enum": { + "description": "Enum type definition.", + "id": "Enum", "properties": { - "consumerDestinations": { - "description": "Monitoring configurations for sending metrics to the consumer project.\nThere can be multiple consumer destinations, each one must have a\ndifferent monitored resource type. A metric can be used in at most\none consumer destination.", - "type": "array", + "enumvalue": { + "description": "Enum value definitions.", "items": { - "$ref": "MonitoringDestination" - } + "$ref": "EnumValue" + }, + "type": "array" }, - "producerDestinations": { - "description": "Monitoring configurations for sending metrics to the producer project.\nThere can be multiple producer destinations, each one must have a\ndifferent monitored resource type. A metric can be used in at most\none producer destination.", - "type": "array", + "name": { + "description": "Enum type name.", + "type": "string" + }, + "options": { + "description": "Protocol buffer options.", "items": { - "$ref": "MonitoringDestination" - } + "$ref": "Option" + }, + "type": "array" + }, + "sourceContext": { + "$ref": "SourceContext", + "description": "The source context." + }, + "syntax": { + "description": "The source syntax.", + "enum": [ + "SYNTAX_PROTO2", + "SYNTAX_PROTO3" + ], + "enumDescriptions": [ + "Syntax `proto2`.", + "Syntax `proto3`." + ], + "type": "string" + } + }, + "type": "object" + }, + "EnumValue": { + "description": "Enum value definition.", + "id": "EnumValue", + "properties": { + "name": { + "description": "Enum value name.", + "type": "string" + }, + "number": { + "description": "Enum value number.", + "format": "int32", + "type": "integer" + }, + "options": { + "description": "Protocol buffer options.", + "items": { + "$ref": "Option" + }, + "type": "array" + } + }, + "type": "object" + }, + "Experimental": { + "description": "Experimental service configuration. These configuration options can\nonly be used by whitelisted users.", + "id": "Experimental", + "properties": { + "authorization": { + "$ref": "AuthorizationConfig", + "description": "Authorization configuration." } }, - "id": "Monitoring", - "description": "Monitoring configuration of the service.\n\nThe example below shows how to configure monitored resources and metrics\nfor monitoring. In the example, a monitored resource and two metrics are\ndefined. The `library.googleapis.com/book/returned_count` metric is sent\nto both producer and consumer projects, whereas the\n`library.googleapis.com/book/overdue_count` metric is only sent to the\nconsumer project.\n\n monitored_resources:\n - type: library.googleapis.com/branch\n labels:\n - key: /city\n description: The city where the library branch is located in.\n - key: /name\n description: The name of the branch.\n metrics:\n - name: library.googleapis.com/book/returned_count\n metric_kind: DELTA\n value_type: INT64\n labels:\n - key: /customer_id\n - name: library.googleapis.com/book/overdue_count\n metric_kind: GAUGE\n value_type: INT64\n labels:\n - key: /customer_id\n monitoring:\n producer_destinations:\n - monitored_resource: library.googleapis.com/branch\n metrics:\n - library.googleapis.com/book/returned_count\n consumer_destinations:\n - monitored_resource: library.googleapis.com/branch\n metrics:\n - library.googleapis.com/book/returned_count\n - library.googleapis.com/book/overdue_count", "type": "object" }, "Field": { + "description": "A single field of a message type.", + "id": "Field", "properties": { + "cardinality": { + "description": "The field cardinality.", + "enum": [ + "CARDINALITY_UNKNOWN", + "CARDINALITY_OPTIONAL", + "CARDINALITY_REQUIRED", + "CARDINALITY_REPEATED" + ], + "enumDescriptions": [ + "For fields with unknown cardinality.", + "For optional fields.", + "For required fields. Proto2 syntax only.", + "For repeated fields." + ], + "type": "string" + }, + "defaultValue": { + "description": "The string value of the default value of this field. Proto2 syntax only.", + "type": "string" + }, "jsonName": { "description": "The field JSON name.", "type": "string" }, "kind": { - "enumDescriptions": [ - "Field type unknown.", - "Field type double.", - "Field type float.", - "Field type int64.", - "Field type uint64.", - "Field type int32.", - "Field type fixed64.", - "Field type fixed32.", - "Field type bool.", - "Field type string.", - "Field type group. Proto2 syntax only, and deprecated.", - "Field type message.", - "Field type bytes.", - "Field type uint32.", - "Field type enum.", - "Field type sfixed32.", - "Field type sfixed64.", - "Field type sint32.", - "Field type sint64." - ], + "description": "The field type.", "enum": [ "TYPE_UNKNOWN", "TYPE_DOUBLE", @@ -354,480 +835,184 @@ "TYPE_SINT32", "TYPE_SINT64" ], - "description": "The field type.", - "type": "string" - }, - "options": { - "description": "The protocol buffer options.", - "type": "array", - "items": { - "$ref": "Option" - } - }, - "oneofIndex": { - "description": "The index of the field type in `Type.oneofs`, for message or enumeration\ntypes. The first type has index 1; zero means the type is not in the list.", - "format": "int32", - "type": "integer" - }, - "cardinality": { - "enum": [ - "CARDINALITY_UNKNOWN", - "CARDINALITY_OPTIONAL", - "CARDINALITY_REQUIRED", - "CARDINALITY_REPEATED" - ], - "description": "The field cardinality.", - "type": "string", "enumDescriptions": [ - "For fields with unknown cardinality.", - "For optional fields.", - "For required fields. Proto2 syntax only.", - "For repeated fields." - ] - }, - "packed": { - "description": "Whether to use alternative packed wire representation.", - "type": "boolean" - }, - "defaultValue": { - "description": "The string value of the default value of this field. Proto2 syntax only.", + "Field type unknown.", + "Field type double.", + "Field type float.", + "Field type int64.", + "Field type uint64.", + "Field type int32.", + "Field type fixed64.", + "Field type fixed32.", + "Field type bool.", + "Field type string.", + "Field type group. Proto2 syntax only, and deprecated.", + "Field type message.", + "Field type bytes.", + "Field type uint32.", + "Field type enum.", + "Field type sfixed32.", + "Field type sfixed64.", + "Field type sint32.", + "Field type sint64." + ], "type": "string" }, "name": { "description": "The field name.", "type": "string" }, - "typeUrl": { - "description": "The field type URL, without the scheme, for message or enumeration\ntypes. Example: `\"type.googleapis.com/google.protobuf.Timestamp\"`.", - "type": "string" - }, "number": { "description": "The field number.", "format": "int32", "type": "integer" - } - }, - "id": "Field", - "description": "A single field of a message type.", - "type": "object" - }, - "Enum": { - "properties": { - "sourceContext": { - "description": "The source context.", - "$ref": "SourceContext" }, - "syntax": { - "enum": [ - "SYNTAX_PROTO2", - "SYNTAX_PROTO3" - ], - "description": "The source syntax.", - "type": "string", - "enumDescriptions": [ - "Syntax `proto2`.", - "Syntax `proto3`." - ] - }, - "name": { - "description": "Enum type name.", - "type": "string" - }, - "enumvalue": { - "description": "Enum value definitions.", - "type": "array", - "items": { - "$ref": "EnumValue" - } + "oneofIndex": { + "description": "The index of the field type in `Type.oneofs`, for message or enumeration\ntypes. The first type has index 1; zero means the type is not in the list.", + "format": "int32", + "type": "integer" }, "options": { - "description": "Protocol buffer options.", - "type": "array", + "description": "The protocol buffer options.", "items": { "$ref": "Option" - } + }, + "type": "array" + }, + "packed": { + "description": "Whether to use alternative packed wire representation.", + "type": "boolean" + }, + "typeUrl": { + "description": "The field type URL, without the scheme, for message or enumeration\ntypes. Example: `\"type.googleapis.com/google.protobuf.Timestamp\"`.", + "type": "string" } }, - "id": "Enum", - "description": "Enum type definition.", "type": "object" }, - "EnableServiceRequest": { - "description": "Request message for EnableService method.", - "type": "object", - "properties": {}, - "id": "EnableServiceRequest" + "Http": { + "description": "Defines the HTTP configuration for an API service. It contains a list of\nHttpRule, each specifying the mapping of an RPC method\nto one or more HTTP REST API methods.", + "id": "Http", + "properties": { + "fullyDecodeReservedExpansion": { + "description": "When set to true, URL path parmeters will be fully URI-decoded except in\ncases of single segment matches in reserved expansion, where \"%2F\" will be\nleft encoded.\n\nThe default behavior is to not decode RFC 6570 reserved characters in multi\nsegment matches.", + "type": "boolean" + }, + "rules": { + "description": "A list of HTTP configuration rules that apply to individual API methods.\n\n**NOTE:** All service configuration rules follow \"last one wins\" order.", + "items": { + "$ref": "HttpRule" + }, + "type": "array" + } + }, + "type": "object" + }, + "HttpRule": { + "description": "`HttpRule` defines the mapping of an RPC method to one or more HTTP\nREST API methods. The mapping specifies how different portions of the RPC\nrequest message are mapped to URL path, URL query parameters, and\nHTTP request body. The mapping is typically specified as an\n`google.api.http` annotation on the RPC method,\nsee \"google/api/annotations.proto\" for details.\n\nThe mapping consists of a field specifying the path template and\nmethod kind. The path template can refer to fields in the request\nmessage, as in the example below which describes a REST GET\noperation on a resource collection of messages:\n\n\n service Messaging {\n rpc GetMessage(GetMessageRequest) returns (Message) {\n option (google.api.http).get = \"/v1/messages/{message_id}/{sub.subfield}\";\n }\n }\n message GetMessageRequest {\n message SubMessage {\n string subfield = 1;\n }\n string message_id = 1; // mapped to the URL\n SubMessage sub = 2; // `sub.subfield` is url-mapped\n }\n message Message {\n string text = 1; // content of the resource\n }\n\nThe same http annotation can alternatively be expressed inside the\n`GRPC API Configuration` YAML file.\n\n http:\n rules:\n - selector: \u003cproto_package_name\u003e.Messaging.GetMessage\n get: /v1/messages/{message_id}/{sub.subfield}\n\nThis definition enables an automatic, bidrectional mapping of HTTP\nJSON to RPC. Example:\n\nHTTP | RPC\n-----|-----\n`GET /v1/messages/123456/foo` | `GetMessage(message_id: \"123456\" sub: SubMessage(subfield: \"foo\"))`\n\nIn general, not only fields but also field paths can be referenced\nfrom a path pattern. Fields mapped to the path pattern cannot be\nrepeated and must have a primitive (non-message) type.\n\nAny fields in the request message which are not bound by the path\npattern automatically become (optional) HTTP query\nparameters. Assume the following definition of the request message:\n\n\n service Messaging {\n rpc GetMessage(GetMessageRequest) returns (Message) {\n option (google.api.http).get = \"/v1/messages/{message_id}\";\n }\n }\n message GetMessageRequest {\n message SubMessage {\n string subfield = 1;\n }\n string message_id = 1; // mapped to the URL\n int64 revision = 2; // becomes a parameter\n SubMessage sub = 3; // `sub.subfield` becomes a parameter\n }\n\n\nThis enables a HTTP JSON to RPC mapping as below:\n\nHTTP | RPC\n-----|-----\n`GET /v1/messages/123456?revision=2\u0026sub.subfield=foo` | `GetMessage(message_id: \"123456\" revision: 2 sub: SubMessage(subfield: \"foo\"))`\n\nNote that fields which are mapped to HTTP parameters must have a\nprimitive type or a repeated primitive type. Message types are not\nallowed. In the case of a repeated type, the parameter can be\nrepeated in the URL, as in `...?param=A\u0026param=B`.\n\nFor HTTP method kinds which allow a request body, the `body` field\nspecifies the mapping. Consider a REST update method on the\nmessage resource collection:\n\n\n service Messaging {\n rpc UpdateMessage(UpdateMessageRequest) returns (Message) {\n option (google.api.http) = {\n put: \"/v1/messages/{message_id}\"\n body: \"message\"\n };\n }\n }\n message UpdateMessageRequest {\n string message_id = 1; // mapped to the URL\n Message message = 2; // mapped to the body\n }\n\n\nThe following HTTP JSON to RPC mapping is enabled, where the\nrepresentation of the JSON in the request body is determined by\nprotos JSON encoding:\n\nHTTP | RPC\n-----|-----\n`PUT /v1/messages/123456 { \"text\": \"Hi!\" }` | `UpdateMessage(message_id: \"123456\" message { text: \"Hi!\" })`\n\nThe special name `*` can be used in the body mapping to define that\nevery field not bound by the path template should be mapped to the\nrequest body. This enables the following alternative definition of\nthe update method:\n\n service Messaging {\n rpc UpdateMessage(Message) returns (Message) {\n option (google.api.http) = {\n put: \"/v1/messages/{message_id}\"\n body: \"*\"\n };\n }\n }\n message Message {\n string message_id = 1;\n string text = 2;\n }\n\n\nThe following HTTP JSON to RPC mapping is enabled:\n\nHTTP | RPC\n-----|-----\n`PUT /v1/messages/123456 { \"text\": \"Hi!\" }` | `UpdateMessage(message_id: \"123456\" text: \"Hi!\")`\n\nNote that when using `*` in the body mapping, it is not possible to\nhave HTTP parameters, as all fields not bound by the path end in\nthe body. This makes this option more rarely used in practice of\ndefining REST APIs. The common usage of `*` is in custom methods\nwhich don't use the URL at all for transferring data.\n\nIt is possible to define multiple HTTP methods for one RPC by using\nthe `additional_bindings` option. Example:\n\n service Messaging {\n rpc GetMessage(GetMessageRequest) returns (Message) {\n option (google.api.http) = {\n get: \"/v1/messages/{message_id}\"\n additional_bindings {\n get: \"/v1/users/{user_id}/messages/{message_id}\"\n }\n };\n }\n }\n message GetMessageRequest {\n string message_id = 1;\n string user_id = 2;\n }\n\n\nThis enables the following two alternative HTTP JSON to RPC\nmappings:\n\nHTTP | RPC\n-----|-----\n`GET /v1/messages/123456` | `GetMessage(message_id: \"123456\")`\n`GET /v1/users/me/messages/123456` | `GetMessage(user_id: \"me\" message_id: \"123456\")`\n\n# Rules for HTTP mapping\n\nThe rules for mapping HTTP path, query parameters, and body fields\nto the request message are as follows:\n\n1. The `body` field specifies either `*` or a field path, or is\n omitted. If omitted, it indicates there is no HTTP request body.\n2. Leaf fields (recursive expansion of nested messages in the\n request) can be classified into three types:\n (a) Matched in the URL template.\n (b) Covered by body (if body is `*`, everything except (a) fields;\n else everything under the body field)\n (c) All other fields.\n3. URL query parameters found in the HTTP request are mapped to (c) fields.\n4. Any body sent with an HTTP request can contain only (b) fields.\n\nThe syntax of the path template is as follows:\n\n Template = \"/\" Segments [ Verb ] ;\n Segments = Segment { \"/\" Segment } ;\n Segment = \"*\" | \"**\" | LITERAL | Variable ;\n Variable = \"{\" FieldPath [ \"=\" Segments ] \"}\" ;\n FieldPath = IDENT { \".\" IDENT } ;\n Verb = \":\" LITERAL ;\n\nThe syntax `*` matches a single path segment. The syntax `**` matches zero\nor more path segments, which must be the last part of the path except the\n`Verb`. The syntax `LITERAL` matches literal text in the path.\n\nThe syntax `Variable` matches part of the URL path as specified by its\ntemplate. A variable template must not contain other variables. If a variable\nmatches a single path segment, its template may be omitted, e.g. `{var}`\nis equivalent to `{var=*}`.\n\nIf a variable contains exactly one path segment, such as `\"{var}\"` or\n`\"{var=*}\"`, when such a variable is expanded into a URL path, all characters\nexcept `[-_.~0-9a-zA-Z]` are percent-encoded. Such variables show up in the\nDiscovery Document as `{var}`.\n\nIf a variable contains one or more path segments, such as `\"{var=foo/*}\"`\nor `\"{var=**}\"`, when such a variable is expanded into a URL path, all\ncharacters except `[-_.~/0-9a-zA-Z]` are percent-encoded. Such variables\nshow up in the Discovery Document as `{+var}`.\n\nNOTE: While the single segment variable matches the semantics of\n[RFC 6570](https://tools.ietf.org/html/rfc6570) Section 3.2.2\nSimple String Expansion, the multi segment variable **does not** match\nRFC 6570 Reserved Expansion. The reason is that the Reserved Expansion\ndoes not expand special characters like `?` and `#`, which would lead\nto invalid URLs.\n\nNOTE: the field paths in variables and in the `body` must not refer to\nrepeated fields or map fields.", + "id": "HttpRule", + "properties": { + "additionalBindings": { + "description": "Additional HTTP bindings for the selector. Nested bindings must\nnot contain an `additional_bindings` field themselves (that is,\nthe nesting may only be one level deep).", + "items": { + "$ref": "HttpRule" + }, + "type": "array" + }, + "body": { + "description": "The name of the request field whose value is mapped to the HTTP body, or\n`*` for mapping all fields not captured by the path pattern to the HTTP\nbody. NOTE: the referred field must not be a repeated field and must be\npresent at the top-level of request message type.", + "type": "string" + }, + "custom": { + "$ref": "CustomHttpPattern", + "description": "The custom pattern is used for specifying an HTTP method that is not\nincluded in the `pattern` field, such as HEAD, or \"*\" to leave the\nHTTP method unspecified for this rule. The wild-card rule is useful\nfor services that provide content to Web (HTML) clients." + }, + "delete": { + "description": "Used for deleting a resource.", + "type": "string" + }, + "get": { + "description": "Used for listing and getting information about resources.", + "type": "string" + }, + "mediaDownload": { + "$ref": "MediaDownload", + "description": "Use this only for Scotty Requests. Do not use this for bytestream methods.\nFor media support, add instead [][google.bytestream.RestByteStream] as an\nAPI to your configuration." + }, + "mediaUpload": { + "$ref": "MediaUpload", + "description": "Use this only for Scotty Requests. Do not use this for media support using\nBytestream, add instead\n[][google.bytestream.RestByteStream] as an API to your\nconfiguration for Bytestream methods." + }, + "patch": { + "description": "Used for updating a resource.", + "type": "string" + }, + "post": { + "description": "Used for creating a resource.", + "type": "string" + }, + "put": { + "description": "Used for updating a resource.", + "type": "string" + }, + "selector": { + "description": "Selects methods to which this rule applies.\n\nRefer to selector for syntax details.", + "type": "string" + } + }, + "type": "object" }, "LabelDescriptor": { "description": "A description of a label.", - "type": "object", + "id": "LabelDescriptor", "properties": { - "key": { - "description": "The label key.", - "type": "string" - }, "description": { "description": "A human-readable description for the label.", "type": "string" }, + "key": { + "description": "The label key.", + "type": "string" + }, "valueType": { - "enumDescriptions": [ - "A variable-length string. This is the default.", - "Boolean; true or false.", - "A 64-bit signed integer." - ], + "description": "The type of data that can be assigned to the label.", "enum": [ "STRING", "BOOL", "INT64" ], - "description": "The type of data that can be assigned to the label.", - "type": "string" - } - }, - "id": "LabelDescriptor" - }, - "Type": { - "description": "A protocol buffer message type.", - "type": "object", - "properties": { - "fields": { - "description": "The list of fields.", - "type": "array", - "items": { - "$ref": "Field" - } - }, - "name": { - "description": "The fully qualified message name.", - "type": "string" - }, - "oneofs": { - "description": "The list of types appearing in `oneof` definitions in this type.", - "type": "array", - "items": { - "type": "string" - } - }, - "syntax": { "enumDescriptions": [ - "Syntax `proto2`.", - "Syntax `proto3`." + "A variable-length string. This is the default.", + "Boolean; true or false.", + "A 64-bit signed integer." ], - "enum": [ - "SYNTAX_PROTO2", - "SYNTAX_PROTO3" - ], - "description": "The source syntax.", - "type": "string" - }, - "sourceContext": { - "$ref": "SourceContext", - "description": "The source context." - }, - "options": { - "description": "The protocol buffer options.", - "type": "array", - "items": { - "$ref": "Option" - } - } - }, - "id": "Type" - }, - "Experimental": { - "description": "Experimental service configuration. These configuration options can\nonly be used by whitelisted users.", - "type": "object", - "properties": { - "authorization": { - "$ref": "AuthorizationConfig", - "description": "Authorization configuration." - } - }, - "id": "Experimental" - }, - "Backend": { - "description": "`Backend` defines the backend configuration for a service.", - "type": "object", - "properties": { - "rules": { - "description": "A list of API backend rules that apply to individual API methods.\n\n**NOTE:** All service configuration rules follow \"last one wins\" order.", - "type": "array", - "items": { - "$ref": "BackendRule" - } - } - }, - "id": "Backend" - }, - "AuthorizationConfig": { - "description": "Configuration of authorization.\n\nThis section determines the authorization provider, if unspecified, then no\nauthorization check will be done.\n\nExample:\n\n experimental:\n authorization:\n provider: firebaserules.googleapis.com", - "type": "object", - "properties": { - "provider": { - "description": "The name of the authorization provider, such as\nfirebaserules.googleapis.com.", "type": "string" } }, - "id": "AuthorizationConfig" - }, - "DocumentationRule": { - "description": "A documentation rule provides information about individual API elements.", - "type": "object", - "properties": { - "description": { - "description": "Description of the selected API(s).", - "type": "string" - }, - "deprecationDescription": { - "description": "Deprecation description of the selected element(s). It can be provided if an\nelement is marked as `deprecated`.", - "type": "string" - }, - "selector": { - "description": "The selector is a comma-separated list of patterns. Each pattern is a\nqualified name of the element which may end in \"*\", indicating a wildcard.\nWildcards are only allowed at the end and for a whole component of the\nqualified name, i.e. \"foo.*\" is ok, but not \"foo.b*\" or \"foo.*.bar\". To\nspecify a default for all applicable elements, the whole pattern \"*\"\nis used.", - "type": "string" - } - }, - "id": "DocumentationRule" - }, - "ContextRule": { - "description": "A context rule provides information about the context for an individual API\nelement.", - "type": "object", - "properties": { - "selector": { - "description": "Selects the methods to which this rule applies.\n\nRefer to selector for syntax details.", - "type": "string" - }, - "provided": { - "description": "A list of full type names of provided contexts.", - "type": "array", - "items": { - "type": "string" - } - }, - "requested": { - "description": "A list of full type names of requested contexts.", - "type": "array", - "items": { - "type": "string" - } - } - }, - "id": "ContextRule" - }, - "Billing": { - "properties": { - "consumerDestinations": { - "description": "Billing configurations for sending metrics to the consumer project.\nThere can be multiple consumer destinations per service, each one must have\na different monitored resource type. A metric can be used in at most\none consumer destination.", - "type": "array", - "items": { - "$ref": "BillingDestination" - } - } - }, - "id": "Billing", - "description": "Billing related configuration of the service.\n\nThe following example shows how to configure monitored resources and metrics\nfor billing:\n\n monitored_resources:\n - type: library.googleapis.com/branch\n labels:\n - key: /city\n description: The city where the library branch is located in.\n - key: /name\n description: The name of the branch.\n metrics:\n - name: library.googleapis.com/book/borrowed_count\n metric_kind: DELTA\n value_type: INT64\n billing:\n consumer_destinations:\n - monitored_resource: library.googleapis.com/branch\n metrics:\n - library.googleapis.com/book/borrowed_count", - "type": "object" - }, - "MetricDescriptor": { - "properties": { - "name": { - "description": "The resource name of the metric descriptor.", - "type": "string" - }, - "type": { - "description": "The metric type, including its DNS name prefix. The type is not\nURL-encoded. All user-defined custom metric types have the DNS name\n`custom.googleapis.com`. Metric types should use a natural hierarchical\ngrouping. For example:\n\n \"custom.googleapis.com/invoice/paid/amount\"\n \"appengine.googleapis.com/http/server/response_latencies\"", - "type": "string" - }, - "valueType": { - "enumDescriptions": [ - "Do not use this default value.", - "The value is a boolean.\nThis value type can be used only if the metric kind is `GAUGE`.", - "The value is a signed 64-bit integer.", - "The value is a double precision floating point number.", - "The value is a text string.\nThis value type can be used only if the metric kind is `GAUGE`.", - "The value is a `Distribution`.", - "The value is money." - ], - "enum": [ - "VALUE_TYPE_UNSPECIFIED", - "BOOL", - "INT64", - "DOUBLE", - "STRING", - "DISTRIBUTION", - "MONEY" - ], - "description": "Whether the measurement is an integer, a floating-point number, etc.\nSome combinations of `metric_kind` and `value_type` might not be supported.", - "type": "string" - }, - "metricKind": { - "enum": [ - "METRIC_KIND_UNSPECIFIED", - "GAUGE", - "DELTA", - "CUMULATIVE" - ], - "description": "Whether the metric records instantaneous values, changes to a value, etc.\nSome combinations of `metric_kind` and `value_type` might not be supported.", - "type": "string", - "enumDescriptions": [ - "Do not use this default value.", - "An instantaneous measurement of a value.", - "The change in a value during a time interval.", - "A value accumulated over a time interval. Cumulative\nmeasurements in a time series should have the same start time\nand increasing end times, until an event resets the cumulative\nvalue to zero and sets a new start time for the following\npoints." - ] - }, - "description": { - "description": "A detailed description of the metric, which can be used in documentation.", - "type": "string" - }, - "displayName": { - "description": "A concise name for the metric, which can be displayed in user interfaces.\nUse sentence case without an ending period, for example \"Request count\".\nThis field is optional but it is recommended to be set for any metrics\nassociated with user-visible concepts, such as Quota.", - "type": "string" - }, - "unit": { - "description": "The unit in which the metric value is reported. It is only applicable\nif the `value_type` is `INT64`, `DOUBLE`, or `DISTRIBUTION`. The\nsupported units are a subset of [The Unified Code for Units of\nMeasure](http://unitsofmeasure.org/ucum.html) standard:\n\n**Basic units (UNIT)**\n\n* `bit` bit\n* `By` byte\n* `s` second\n* `min` minute\n* `h` hour\n* `d` day\n\n**Prefixes (PREFIX)**\n\n* `k` kilo (10**3)\n* `M` mega (10**6)\n* `G` giga (10**9)\n* `T` tera (10**12)\n* `P` peta (10**15)\n* `E` exa (10**18)\n* `Z` zetta (10**21)\n* `Y` yotta (10**24)\n* `m` milli (10**-3)\n* `u` micro (10**-6)\n* `n` nano (10**-9)\n* `p` pico (10**-12)\n* `f` femto (10**-15)\n* `a` atto (10**-18)\n* `z` zepto (10**-21)\n* `y` yocto (10**-24)\n* `Ki` kibi (2**10)\n* `Mi` mebi (2**20)\n* `Gi` gibi (2**30)\n* `Ti` tebi (2**40)\n\n**Grammar**\n\nThe grammar includes the dimensionless unit `1`, such as `1/s`.\n\nThe grammar also includes these connectors:\n\n* `/` division (as an infix operator, e.g. `1/s`).\n* `.` multiplication (as an infix operator, e.g. `GBy.d`)\n\nThe grammar for a unit is as follows:\n\n Expression = Component { \".\" Component } { \"/\" Component } ;\n\n Component = [ PREFIX ] UNIT [ Annotation ]\n | Annotation\n | \"1\"\n ;\n\n Annotation = \"{\" NAME \"}\" ;\n\nNotes:\n\n* `Annotation` is just a comment if it follows a `UNIT` and is\n equivalent to `1` if it is used alone. For examples,\n `{requests}/s == 1/s`, `By{transmitted}/s == By/s`.\n* `NAME` is a sequence of non-blank printable ASCII characters not\n containing '{' or '}'.", - "type": "string" - }, - "labels": { - "description": "The set of labels that can be used to describe a specific\ninstance of this metric type. For example, the\n`appengine.googleapis.com/http/server/response_latencies` metric\ntype has a label for the HTTP response code, `response_code`, so\nyou can look at latencies for successful responses or just\nfor responses that failed.", - "type": "array", - "items": { - "$ref": "LabelDescriptor" - } - } - }, - "id": "MetricDescriptor", - "description": "Defines a metric type and its schema. Once a metric descriptor is created,\ndeleting or altering it stops data collection and makes the metric type's\nexisting data unusable.", - "type": "object" - }, - "SourceContext": { - "properties": { - "fileName": { - "description": "The path-qualified name of the .proto file that contained the associated\nprotobuf element. For example: `\"google/protobuf/source_context.proto\"`.", - "type": "string" - } - }, - "id": "SourceContext", - "description": "`SourceContext` represents information about the source of a\nprotobuf element, like the file in which it is defined.", - "type": "object" - }, - "Endpoint": { - "properties": { - "name": { - "description": "The canonical name of this endpoint.", - "type": "string" - }, - "target": { - "description": "The specification of an Internet routable address of API frontend that will\nhandle requests to this [API Endpoint](https://cloud.google.com/apis/design/glossary).\nIt should be either a valid IPv4 address or a fully-qualified domain name.\nFor example, \"8.8.8.8\" or \"myservice.appspot.com\".", - "type": "string" - }, - "aliases": { - "description": "DEPRECATED: This field is no longer supported. Instead of using aliases,\nplease specify multiple google.api.Endpoint for each of the intended\naliases.\n\nAdditional names that this endpoint will be hosted on.", - "type": "array", - "items": { - "type": "string" - } - }, - "features": { - "description": "The list of features enabled on this endpoint.", - "type": "array", - "items": { - "type": "string" - } - }, - "allowCors": { - "description": "Allowing\n[CORS](https://en.wikipedia.org/wiki/Cross-origin_resource_sharing), aka\ncross-domain traffic, would allow the backends served from this endpoint to\nreceive and respond to HTTP OPTIONS requests. The response will be used by\nthe browser to determine whether the subsequent cross-origin request is\nallowed to proceed.", - "type": "boolean" - } - }, - "id": "Endpoint", - "description": "`Endpoint` describes a network endpoint that serves a set of APIs.\nA service may expose any number of endpoints, and all endpoints share the\nsame service configuration, such as quota configuration and monitoring\nconfiguration.\n\nExample service configuration:\n\n name: library-example.googleapis.com\n endpoints:\n # Below entry makes 'google.example.library.v1.Library'\n # API be served from endpoint address library-example.googleapis.com.\n # It also allows HTTP OPTIONS calls to be passed to the backend, for\n # it to decide whether the subsequent cross-origin request is\n # allowed to proceed.\n - name: library-example.googleapis.com\n allow_cors: true", "type": "object" }, "ListEnabledServicesResponse": { + "description": "Response message for `ListEnabledServices` method.", + "id": "ListEnabledServicesResponse", "properties": { - "services": { - "description": "Services enabled for the specified parent.", - "type": "array", - "items": { - "$ref": "PublishedService" - } - }, "nextPageToken": { "description": "Token that can be passed to `ListEnabledServices` to resume a paginated\nquery.", "type": "string" - } - }, - "id": "ListEnabledServicesResponse", - "description": "Response message for `ListEnabledServices` method.", - "type": "object" - }, - "OAuthRequirements": { - "properties": { - "canonicalScopes": { - "description": "The list of publicly documented OAuth scopes that are allowed access. An\nOAuth token containing any of these scopes will be accepted.\n\nExample:\n\n canonical_scopes: https://www.googleapis.com/auth/calendar,\n https://www.googleapis.com/auth/calendar.read", - "type": "string" - } - }, - "id": "OAuthRequirements", - "description": "OAuth scopes are a way to define data and permissions on data. For example,\nthere are scopes defined for \"Read-only access to Google Calendar\" and\n\"Access to Cloud Platform\". Users can consent to a scope for an application,\ngiving it permission to access that data on their behalf.\n\nOAuth scope specifications should be fairly coarse grained; a user will need\nto see and understand the text description of what your scope means.\n\nIn most cases: use one or at most two OAuth scopes for an entire family of\nproducts. If your product has multiple APIs, you should probably be sharing\nthe OAuth scope across all of those APIs.\n\nWhen you need finer grained OAuth consent screens: talk with your product\nmanagement about how developers will use them in practice.\n\nPlease note that even though each of the canonical scopes is enough for a\nrequest to be accepted and passed to the backend, a request can still fail\ndue to the backend requiring additional scopes or permissions.", - "type": "object" - }, - "Usage": { - "properties": { - "producerNotificationChannel": { - "description": "The full resource name of a channel used for sending notifications to the\nservice producer.\n\nGoogle Service Management currently only supports\n[Google Cloud Pub/Sub](https://cloud.google.com/pubsub) as a notification\nchannel. To use Google Cloud Pub/Sub as the channel, this must be the name\nof a Cloud Pub/Sub topic that uses the Cloud Pub/Sub topic name format\ndocumented in https://cloud.google.com/pubsub/docs/overview.", - "type": "string" }, - "rules": { - "description": "A list of usage rules that apply to individual API methods.\n\n**NOTE:** All service configuration rules follow \"last one wins\" order.", - "type": "array", + "services": { + "description": "Services enabled for the specified parent.", "items": { - "$ref": "UsageRule" - } - }, - "requirements": { - "description": "Requirements that must be satisfied before a consumer project can use the\nservice. Each requirement is of the form \u003cservice.name\u003e/\u003crequirement-id\u003e;\nfor example 'serviceusage.googleapis.com/billing-enabled'.", - "type": "array", - "items": { - "type": "string" - } + "$ref": "PublishedService" + }, + "type": "array" } }, - "id": "Usage", - "description": "Configuration controlling usage of a service.", - "type": "object" - }, - "Context": { - "properties": { - "rules": { - "description": "A list of RPC context rules that apply to individual API methods.\n\n**NOTE:** All service configuration rules follow \"last one wins\" order.", - "type": "array", - "items": { - "$ref": "ContextRule" - } - } - }, - "id": "Context", - "description": "`Context` defines which contexts an API requests.\n\nExample:\n\n context:\n rules:\n - selector: \"*\"\n requested:\n - google.rpc.context.ProjectContext\n - google.rpc.context.OriginContext\n\nThe above specifies that all methods in the API request\n`google.rpc.context.ProjectContext` and\n`google.rpc.context.OriginContext`.\n\nAvailable context types are defined in package\n`google.rpc.context`.", "type": "object" }, "LogDescriptor": { "description": "A description of a log type. Example in YAML format:\n\n - name: library.googleapis.com/activity_history\n description: The history of borrowing and returning library items.\n display_name: Activity\n labels:\n - key: /customer_id\n description: Identifier of a library customer", - "type": "object", + "id": "LogDescriptor", "properties": { - "labels": { - "description": "The set of labels that are available to describe a specific log entry.\nRuntime requests that contain labels not specified here are\nconsidered invalid.", - "type": "array", - "items": { - "$ref": "LabelDescriptor" - } - }, - "name": { - "description": "The name of the log. It must be less than 512 characters long and can\ninclude the following characters: upper- and lower-case alphanumeric\ncharacters [A-Za-z0-9], and punctuation characters including\nslash, underscore, hyphen, period [/_-.].", - "type": "string" - }, "description": { "description": "A human-readable description of this log. This information appears in\nthe documentation and can contain details.", "type": "string" @@ -835,84 +1020,80 @@ "displayName": { "description": "The human-readable name for this log. This information appears on\nthe user interface and should be concise.", "type": "string" - } - }, - "id": "LogDescriptor" - }, - "MonitoredResourceDescriptor": { - "description": "An object that describes the schema of a MonitoredResource object using a\ntype name and a set of labels. For example, the monitored resource\ndescriptor for Google Compute Engine VM instances has a type of\n`\"gce_instance\"` and specifies the use of the labels `\"instance_id\"` and\n`\"zone\"` to identify particular VM instances.\n\nDifferent APIs can support different monitored resource types. APIs generally\nprovide a `list` method that returns the monitored resource descriptors used\nby the API.", - "type": "object", - "properties": { - "name": { - "description": "Optional. The resource name of the monitored resource descriptor:\n`\"projects/{project_id}/monitoredResourceDescriptors/{type}\"` where\n{type} is the value of the `type` field in this object and\n{project_id} is a project ID that provides API-specific context for\naccessing the type. APIs that do not use project information can use the\nresource name format `\"monitoredResourceDescriptors/{type}\"`.", - "type": "string" - }, - "displayName": { - "description": "Optional. A concise name for the monitored resource type that might be\ndisplayed in user interfaces. It should be a Title Cased Noun Phrase,\nwithout any article or other determiners. For example,\n`\"Google Cloud SQL Database\"`.", - "type": "string" - }, - "description": { - "description": "Optional. A detailed description of the monitored resource type that might\nbe used in documentation.", - "type": "string" - }, - "type": { - "description": "Required. The monitored resource type. For example, the type\n`\"cloudsql_database\"` represents databases in Google Cloud SQL.\nThe maximum length of this value is 256 characters.", - "type": "string" }, "labels": { - "description": "Required. A set of labels used to describe instances of this monitored\nresource type. For example, an individual Google Cloud SQL database is\nidentified by values for the labels `\"database_id\"` and `\"zone\"`.", - "type": "array", + "description": "The set of labels that are available to describe a specific log entry.\nRuntime requests that contain labels not specified here are\nconsidered invalid.", "items": { "$ref": "LabelDescriptor" - } - } - }, - "id": "MonitoredResourceDescriptor" - }, - "CustomErrorRule": { - "properties": { - "isErrorType": { - "description": "Mark this message as possible payload in error response. Otherwise,\nobjects of this type will be filtered when they appear in error payload.", - "type": "boolean" + }, + "type": "array" }, - "selector": { - "description": "Selects messages to which this rule applies.\n\nRefer to selector for syntax details.", + "name": { + "description": "The name of the log. It must be less than 512 characters long and can\ninclude the following characters: upper- and lower-case alphanumeric\ncharacters [A-Za-z0-9], and punctuation characters including\nslash, underscore, hyphen, period [/_-.].", "type": "string" } }, - "id": "CustomErrorRule", - "description": "A custom error rule.", "type": "object" }, - "CustomAuthRequirements": { + "Logging": { + "description": "Logging configuration of the service.\n\nThe following example shows how to configure logs to be sent to the\nproducer and consumer projects. In the example, the `activity_history`\nlog is sent to both the producer and consumer projects, whereas the\n`purchase_history` log is only sent to the producer project.\n\n monitored_resources:\n - type: library.googleapis.com/branch\n labels:\n - key: /city\n description: The city where the library branch is located in.\n - key: /name\n description: The name of the branch.\n logs:\n - name: activity_history\n labels:\n - key: /customer_id\n - name: purchase_history\n logging:\n producer_destinations:\n - monitored_resource: library.googleapis.com/branch\n logs:\n - activity_history\n - purchase_history\n consumer_destinations:\n - monitored_resource: library.googleapis.com/branch\n logs:\n - activity_history", + "id": "Logging", "properties": { - "provider": { - "description": "A configuration string containing connection information for the\nauthentication provider, typically formatted as a SmartService string\n(go/smartservice).", + "consumerDestinations": { + "description": "Logging configurations for sending logs to the consumer project.\nThere can be multiple consumer destinations, each one must have a\ndifferent monitored resource type. A log can be used in at most\none consumer destination.", + "items": { + "$ref": "LoggingDestination" + }, + "type": "array" + }, + "producerDestinations": { + "description": "Logging configurations for sending logs to the producer project.\nThere can be multiple producer destinations, each one must have a\ndifferent monitored resource type. A log can be used in at most\none producer destination.", + "items": { + "$ref": "LoggingDestination" + }, + "type": "array" + } + }, + "type": "object" + }, + "LoggingDestination": { + "description": "Configuration of a specific logging destination (the producer project\nor the consumer project).", + "id": "LoggingDestination", + "properties": { + "logs": { + "description": "Names of the logs to be sent to this destination. Each name must\nbe defined in the Service.logs section. If the log name is\nnot a domain scoped name, it will be automatically prefixed with\nthe service name followed by \"/\".", + "items": { + "type": "string" + }, + "type": "array" + }, + "monitoredResource": { + "description": "The monitored resource type. The type must be defined in the\nService.monitored_resources section.", "type": "string" } }, - "id": "CustomAuthRequirements", - "description": "Configuration for a custom authentication provider.", "type": "object" }, "MediaDownload": { + "description": "Defines the Media configuration for a service in case of a download.\nUse this only for Scotty Requests. Do not use this for media support using\nBytestream, add instead [][google.bytestream.RestByteStream] as an API to\nyour configuration for Bytestream methods.", + "id": "MediaDownload", "properties": { - "enabled": { - "description": "Whether download is enabled.", + "completeNotification": { + "description": "A boolean that determines whether a notification for the completion of a\ndownload should be sent to the backend.", "type": "boolean" }, "downloadService": { "description": "DO NOT USE FIELDS BELOW THIS LINE UNTIL THIS WARNING IS REMOVED.\n\nSpecify name of the download service if one is used for download.", "type": "string" }, - "completeNotification": { - "description": "A boolean that determines whether a notification for the completion of a\ndownload should be sent to the backend.", - "type": "boolean" - }, "dropzone": { "description": "Name of the Scotty dropzone to use for the current API.", "type": "string" }, + "enabled": { + "description": "Whether download is enabled.", + "type": "boolean" + }, "maxDirectDownloadSize": { "description": "Optional maximum acceptable size for direct download.\nThe size is specified in bytes.", "format": "int64", @@ -923,46 +1104,24 @@ "type": "boolean" } }, - "id": "MediaDownload", - "description": "Defines the Media configuration for a service in case of a download.\nUse this only for Scotty Requests. Do not use this for media support using\nBytestream, add instead [][google.bytestream.RestByteStream] as an API to\nyour configuration for Bytestream methods.", - "type": "object" - }, - "DisableServiceRequest": { - "properties": {}, - "id": "DisableServiceRequest", - "description": "Request message for DisableService method.", - "type": "object" - }, - "SearchServicesResponse": { - "properties": { - "services": { - "description": "Services available publicly or available to the authenticated caller.", - "type": "array", - "items": { - "$ref": "PublishedService" - } - }, - "nextPageToken": { - "description": "Token that can be passed to `ListAvailableServices` to resume a paginated\nquery.", - "type": "string" - } - }, - "id": "SearchServicesResponse", - "description": "Response message for SearchServices method.", "type": "object" }, "MediaUpload": { "description": "Defines the Media configuration for a service in case of an upload.\nUse this only for Scotty Requests. Do not use this for media support using\nBytestream, add instead [][google.bytestream.RestByteStream] as an API to\nyour configuration for Bytestream methods.", - "type": "object", + "id": "MediaUpload", "properties": { - "startNotification": { - "description": "Whether to receive a notification on the start of media upload.", + "completeNotification": { + "description": "A boolean that determines whether a notification for the completion of an\nupload should be sent to the backend. These notifications will not be seen\nby the client and will not consume quota.", "type": "boolean" }, - "uploadService": { - "description": "DO NOT USE FIELDS BELOW THIS LINE UNTIL THIS WARNING IS REMOVED.\n\nSpecify name of the upload service if one is used for upload.", + "dropzone": { + "description": "Name of the Scotty dropzone to use for the current API.", "type": "string" }, + "enabled": { + "description": "Whether upload is enabled.", + "type": "boolean" + }, "maxSize": { "description": "Optional maximum acceptable size for an upload.\nThe size is specified in bytes.", "format": "int64", @@ -970,230 +1129,148 @@ }, "mimeTypes": { "description": "An array of mimetype patterns. Esf will only accept uploads that match one\nof the given patterns.", - "type": "array", "items": { "type": "string" - } - }, - "completeNotification": { - "description": "A boolean that determines whether a notification for the completion of an\nupload should be sent to the backend. These notifications will not be seen\nby the client and will not consume quota.", - "type": "boolean" + }, + "type": "array" }, "progressNotification": { "description": "Whether to receive a notification for progress changes of media upload.", "type": "boolean" }, - "enabled": { - "description": "Whether upload is enabled.", + "startNotification": { + "description": "Whether to receive a notification on the start of media upload.", "type": "boolean" }, - "dropzone": { - "description": "Name of the Scotty dropzone to use for the current API.", + "uploadService": { + "description": "DO NOT USE FIELDS BELOW THIS LINE UNTIL THIS WARNING IS REMOVED.\n\nSpecify name of the upload service if one is used for upload.", "type": "string" } }, - "id": "MediaUpload" - }, - "BillingDestination": { - "properties": { - "monitoredResource": { - "description": "The monitored resource type. The type must be defined in\nService.monitored_resources section.", - "type": "string" - }, - "metrics": { - "description": "Names of the metrics to report to this billing destination.\nEach name must be defined in Service.metrics section.", - "type": "array", - "items": { - "type": "string" - } - } - }, - "id": "BillingDestination", - "description": "Configuration of a specific billing destination (Currently only support\nbill against consumer project).", "type": "object" }, - "UsageRule": { - "description": "Usage configuration rules for the service.\n\nNOTE: Under development.\n\n\nUse this rule to configure unregistered calls for the service. Unregistered\ncalls are calls that do not contain consumer project identity.\n(Example: calls that do not contain an API key).\nBy default, API methods do not allow unregistered calls, and each method call\nmust be identified by a consumer project identity. Use this rule to\nallow/disallow unregistered calls.\n\nExample of an API that wants to allow unregistered calls for entire service.\n\n usage:\n rules:\n - selector: \"*\"\n allow_unregistered_calls: true\n\nExample of a method that wants to allow unregistered calls.\n\n usage:\n rules:\n - selector: \"google.example.library.v1.LibraryService.CreateBook\"\n allow_unregistered_calls: true", - "type": "object", + "Method": { + "description": "Method represents a method of an API interface.", + "id": "Method", "properties": { - "selector": { - "description": "Selects the methods to which this rule applies. Use '*' to indicate all\nmethods in all APIs.\n\nRefer to selector for syntax details.", + "name": { + "description": "The simple name of this method.", "type": "string" }, - "skipServiceControl": { - "description": "If true, the selected method should skip service control and the control\nplane features, such as quota and billing, will not be available.\nThis flag is used by Google Cloud Endpoints to bypass checks for internal\nmethods, such as service health check methods.", + "options": { + "description": "Any metadata attached to the method.", + "items": { + "$ref": "Option" + }, + "type": "array" + }, + "requestStreaming": { + "description": "If true, the request is streamed.", "type": "boolean" }, - "allowUnregisteredCalls": { - "description": "If true, the selected method allows unregistered calls, e.g. calls\nthat don't identify any user or application.", + "requestTypeUrl": { + "description": "A URL of the input message type.", + "type": "string" + }, + "responseStreaming": { + "description": "If true, the response is streamed.", "type": "boolean" - } - }, - "id": "UsageRule" - }, - "AuthRequirement": { - "description": "User-defined authentication requirements, including support for\n[JSON Web Token (JWT)](https://tools.ietf.org/html/draft-ietf-oauth-json-web-token-32).", - "type": "object", - "properties": { - "providerId": { - "description": "id from authentication provider.\n\nExample:\n\n provider_id: bookstore_auth", + }, + "responseTypeUrl": { + "description": "The URL of the output message type.", "type": "string" }, - "audiences": { - "description": "NOTE: This will be deprecated soon, once AuthProvider.audiences is\nimplemented and accepted in all the runtime components.\n\nThe list of JWT\n[audiences](https://tools.ietf.org/html/draft-ietf-oauth-json-web-token-32#section-4.1.3).\nthat are allowed to access. A JWT containing any of these audiences will\nbe accepted. When this setting is absent, only JWTs with audience\n\"https://Service_name/API_name\"\nwill be accepted. For example, if no audiences are in the setting,\nLibraryService API will only accept JWTs with the following audience\n\"https://library-example.googleapis.com/google.example.library.v1.LibraryService\".\n\nExample:\n\n audiences: bookstore_android.apps.googleusercontent.com,\n bookstore_web.apps.googleusercontent.com", - "type": "string" - } - }, - "id": "AuthRequirement" - }, - "Documentation": { - "description": "`Documentation` provides the information for describing a service.\n\nExample:\n\u003cpre\u003e\u003ccode\u003edocumentation:\n summary: \u003e\n The Google Calendar API gives access\n to most calendar features.\n pages:\n - name: Overview\n content: (== include google/foo/overview.md ==)\n - name: Tutorial\n content: (== include google/foo/tutorial.md ==)\n subpages;\n - name: Java\n content: (== include google/foo/tutorial_java.md ==)\n rules:\n - selector: google.calendar.Calendar.Get\n description: \u003e\n ...\n - selector: google.calendar.Calendar.Put\n description: \u003e\n ...\n\u003c/code\u003e\u003c/pre\u003e\nDocumentation is provided in markdown syntax. In addition to\nstandard markdown features, definition lists, tables and fenced\ncode blocks are supported. Section headers can be provided and are\ninterpreted relative to the section nesting of the context where\na documentation fragment is embedded.\n\nDocumentation from the IDL is merged with documentation defined\nvia the config at normalization time, where documentation provided\nby config rules overrides IDL provided.\n\nA number of constructs specific to the API platform are supported\nin documentation text.\n\nIn order to reference a proto element, the following\nnotation can be used:\n\u003cpre\u003e\u003ccode\u003e[fully.qualified.proto.name][]\u003c/code\u003e\u003c/pre\u003e\nTo override the display text used for the link, this can be used:\n\u003cpre\u003e\u003ccode\u003e[display text][fully.qualified.proto.name]\u003c/code\u003e\u003c/pre\u003e\nText can be excluded from doc using the following notation:\n\u003cpre\u003e\u003ccode\u003e(-- internal comment --)\u003c/code\u003e\u003c/pre\u003e\nComments can be made conditional using a visibility label. The below\ntext will be only rendered if the `BETA` label is available:\n\u003cpre\u003e\u003ccode\u003e(--BETA: comment for BETA users --)\u003c/code\u003e\u003c/pre\u003e\nA few directives are available in documentation. Note that\ndirectives must appear on a single line to be properly\nidentified. The `include` directive includes a markdown file from\nan external source:\n\u003cpre\u003e\u003ccode\u003e(== include path/to/file ==)\u003c/code\u003e\u003c/pre\u003e\nThe `resource_for` directive marks a message to be the resource of\na collection in REST view. If it is not specified, tools attempt\nto infer the resource from the operations in a collection:\n\u003cpre\u003e\u003ccode\u003e(== resource_for v1.shelves.books ==)\u003c/code\u003e\u003c/pre\u003e\nThe directive `suppress_warning` does not directly affect documentation\nand is documented together with service config validation.", - "type": "object", - "properties": { - "summary": { - "description": "A short summary of what the service does. Can only be provided by\nplain text.", - "type": "string" - }, - "documentationRootUrl": { - "description": "The URL to the root of documentation.", - "type": "string" - }, - "rules": { - "description": "A list of documentation rules that apply to individual API elements.\n\n**NOTE:** All service configuration rules follow \"last one wins\" order.", - "type": "array", - "items": { - "$ref": "DocumentationRule" - } - }, - "overview": { - "description": "Declares a single overview page. For example:\n\u003cpre\u003e\u003ccode\u003edocumentation:\n summary: ...\n overview: (== include overview.md ==)\n\u003c/code\u003e\u003c/pre\u003e\nThis is a shortcut for the following declaration (using pages style):\n\u003cpre\u003e\u003ccode\u003edocumentation:\n summary: ...\n pages:\n - name: Overview\n content: (== include overview.md ==)\n\u003c/code\u003e\u003c/pre\u003e\nNote: you cannot specify both `overview` field and `pages` field.", - "type": "string" - }, - "pages": { - "description": "The top level pages for the documentation set.", - "type": "array", - "items": { - "$ref": "Page" - } - } - }, - "id": "Documentation" - }, - "AuthenticationRule": { - "properties": { - "oauth": { - "$ref": "OAuthRequirements", - "description": "The requirements for OAuth credentials." - }, - "customAuth": { - "$ref": "CustomAuthRequirements", - "description": "Configuration for custom authentication." - }, - "requirements": { - "description": "Requirements for additional authentication providers.", - "type": "array", - "items": { - "$ref": "AuthRequirement" - } - }, - "selector": { - "description": "Selects the methods to which this rule applies.\n\nRefer to selector for syntax details.", - "type": "string" - }, - "allowWithoutCredential": { - "description": "Whether to allow requests without a credential. The credential can be\nan OAuth token, Google cookies (first-party auth) or EndUserCreds.\n\nFor requests without credentials, if the service control environment is\nspecified, each incoming request **must** be associated with a service\nconsumer. This can be done by passing an API key that belongs to a consumer\nproject.", - "type": "boolean" - } - }, - "id": "AuthenticationRule", - "description": "Authentication rules for the service.\n\nBy default, if a method has any authentication requirements, every request\nmust include a valid credential matching one of the requirements.\nIt's an error to include more than one kind of credential in a single\nrequest.\n\nIf a method doesn't have any auth requirements, request credentials will be\nignored.", - "type": "object" - }, - "BackendRule": { - "properties": { - "address": { - "description": "The address of the API backend.", - "type": "string" - }, - "selector": { - "description": "Selects the methods to which this rule applies.\n\nRefer to selector for syntax details.", - "type": "string" - }, - "deadline": { - "description": "The number of seconds to wait for a response from a request. The default\ndeadline for gRPC is infinite (no deadline) and HTTP requests is 5 seconds.", - "format": "double", - "type": "number" - }, - "minDeadline": { - "description": "Minimum deadline in seconds needed for this method. Calls having deadline\nvalue lower than this will be rejected.", - "format": "double", - "type": "number" - } - }, - "id": "BackendRule", - "description": "A backend rule provides configuration for an individual API element.", - "type": "object" - }, - "Api": { - "properties": { "syntax": { + "description": "The source syntax of this method.", "enum": [ "SYNTAX_PROTO2", "SYNTAX_PROTO3" ], - "description": "The source syntax of the service.", - "type": "string", "enumDescriptions": [ "Syntax `proto2`.", "Syntax `proto3`." - ] - }, - "sourceContext": { - "$ref": "SourceContext", - "description": "Source context for the protocol buffer service represented by this\nmessage." - }, - "version": { - "description": "A version string for this interface. If specified, must have the form\n`major-version.minor-version`, as in `1.10`. If the minor version is\nomitted, it defaults to zero. If the entire version field is empty, the\nmajor version is derived from the package name, as outlined below. If the\nfield is not empty, the version in the package name will be verified to be\nconsistent with what is provided here.\n\nThe versioning schema uses [semantic\nversioning](http://semver.org) where the major version number\nindicates a breaking change and the minor version an additive,\nnon-breaking change. Both version numbers are signals to users\nwhat to expect from different versions, and should be carefully\nchosen based on the product plan.\n\nThe major version is also reflected in the package name of the\ninterface, which must end in `v\u003cmajor-version\u003e`, as in\n`google.feature.v1`. For major versions 0 and 1, the suffix can\nbe omitted. Zero major versions must only be used for\nexperimental, non-GA interfaces.\n", - "type": "string" - }, - "mixins": { - "description": "Included interfaces. See Mixin.", - "type": "array", - "items": { - "$ref": "Mixin" - } - }, - "options": { - "description": "Any metadata attached to the interface.", - "type": "array", - "items": { - "$ref": "Option" - } - }, - "methods": { - "description": "The methods of this interface, in unspecified order.", - "type": "array", - "items": { - "$ref": "Method" - } - }, - "name": { - "description": "The fully qualified name of this interface, including package name\nfollowed by the interface's simple name.", + ], + "type": "string" + } + }, + "type": "object" + }, + "MetricDescriptor": { + "description": "Defines a metric type and its schema. Once a metric descriptor is created,\ndeleting or altering it stops data collection and makes the metric type's\nexisting data unusable.", + "id": "MetricDescriptor", + "properties": { + "description": { + "description": "A detailed description of the metric, which can be used in documentation.", + "type": "string" + }, + "displayName": { + "description": "A concise name for the metric, which can be displayed in user interfaces.\nUse sentence case without an ending period, for example \"Request count\".\nThis field is optional but it is recommended to be set for any metrics\nassociated with user-visible concepts, such as Quota.", + "type": "string" + }, + "labels": { + "description": "The set of labels that can be used to describe a specific\ninstance of this metric type. For example, the\n`appengine.googleapis.com/http/server/response_latencies` metric\ntype has a label for the HTTP response code, `response_code`, so\nyou can look at latencies for successful responses or just\nfor responses that failed.", + "items": { + "$ref": "LabelDescriptor" + }, + "type": "array" + }, + "metricKind": { + "description": "Whether the metric records instantaneous values, changes to a value, etc.\nSome combinations of `metric_kind` and `value_type` might not be supported.", + "enum": [ + "METRIC_KIND_UNSPECIFIED", + "GAUGE", + "DELTA", + "CUMULATIVE" + ], + "enumDescriptions": [ + "Do not use this default value.", + "An instantaneous measurement of a value.", + "The change in a value during a time interval.", + "A value accumulated over a time interval. Cumulative\nmeasurements in a time series should have the same start time\nand increasing end times, until an event resets the cumulative\nvalue to zero and sets a new start time for the following\npoints." + ], + "type": "string" + }, + "name": { + "description": "The resource name of the metric descriptor.", + "type": "string" + }, + "type": { + "description": "The metric type, including its DNS name prefix. The type is not\nURL-encoded. All user-defined custom metric types have the DNS name\n`custom.googleapis.com`. Metric types should use a natural hierarchical\ngrouping. For example:\n\n \"custom.googleapis.com/invoice/paid/amount\"\n \"appengine.googleapis.com/http/server/response_latencies\"", + "type": "string" + }, + "unit": { + "description": "The unit in which the metric value is reported. It is only applicable\nif the `value_type` is `INT64`, `DOUBLE`, or `DISTRIBUTION`. The\nsupported units are a subset of [The Unified Code for Units of\nMeasure](http://unitsofmeasure.org/ucum.html) standard:\n\n**Basic units (UNIT)**\n\n* `bit` bit\n* `By` byte\n* `s` second\n* `min` minute\n* `h` hour\n* `d` day\n\n**Prefixes (PREFIX)**\n\n* `k` kilo (10**3)\n* `M` mega (10**6)\n* `G` giga (10**9)\n* `T` tera (10**12)\n* `P` peta (10**15)\n* `E` exa (10**18)\n* `Z` zetta (10**21)\n* `Y` yotta (10**24)\n* `m` milli (10**-3)\n* `u` micro (10**-6)\n* `n` nano (10**-9)\n* `p` pico (10**-12)\n* `f` femto (10**-15)\n* `a` atto (10**-18)\n* `z` zepto (10**-21)\n* `y` yocto (10**-24)\n* `Ki` kibi (2**10)\n* `Mi` mebi (2**20)\n* `Gi` gibi (2**30)\n* `Ti` tebi (2**40)\n\n**Grammar**\n\nThe grammar also includes these connectors:\n\n* `/` division (as an infix operator, e.g. `1/s`).\n* `.` multiplication (as an infix operator, e.g. `GBy.d`)\n\nThe grammar for a unit is as follows:\n\n Expression = Component { \".\" Component } { \"/\" Component } ;\n\n Component = ( [ PREFIX ] UNIT | \"%\" ) [ Annotation ]\n | Annotation\n | \"1\"\n ;\n\n Annotation = \"{\" NAME \"}\" ;\n\nNotes:\n\n* `Annotation` is just a comment if it follows a `UNIT` and is\n equivalent to `1` if it is used alone. For examples,\n `{requests}/s == 1/s`, `By{transmitted}/s == By/s`.\n* `NAME` is a sequence of non-blank printable ASCII characters not\n containing '{' or '}'.\n* `1` represents dimensionless value 1, such as in `1/s`.\n* `%` represents dimensionless value 1/100, and annotates values giving\n a percentage.", + "type": "string" + }, + "valueType": { + "description": "Whether the measurement is an integer, a floating-point number, etc.\nSome combinations of `metric_kind` and `value_type` might not be supported.", + "enum": [ + "VALUE_TYPE_UNSPECIFIED", + "BOOL", + "INT64", + "DOUBLE", + "STRING", + "DISTRIBUTION", + "MONEY" + ], + "enumDescriptions": [ + "Do not use this default value.", + "The value is a boolean.\nThis value type can be used only if the metric kind is `GAUGE`.", + "The value is a signed 64-bit integer.", + "The value is a double precision floating point number.", + "The value is a text string.\nThis value type can be used only if the metric kind is `GAUGE`.", + "The value is a `Distribution`.", + "The value is money." + ], "type": "string" } }, - "id": "Api", - "description": "Api is a light-weight descriptor for an API Interface.\n\nInterfaces are also described as \"protocol buffer services\" in some contexts,\nsuch as by the \"service\" keyword in a .proto file, but they are different\nfrom API Services, which represent a concrete implementation of an interface\nas opposed to simply a description of methods and bindings. They are also\nsometimes simply referred to as \"APIs\" in other contexts, such as the name of\nthis message itself. See https://cloud.google.com/apis/design/glossary for\ndetailed terminology.", "type": "object" }, "MetricRule": { "description": "Bind API methods to metrics. Binding a method to a metric causes that\nmetric's configured quota behaviors to apply to the method call.", - "type": "object", + "id": "MetricRule", "properties": { - "selector": { - "description": "Selects the methods to which this rule applies.\n\nRefer to selector for syntax details.", - "type": "string" - }, "metricCosts": { "additionalProperties": { "format": "int64", @@ -1201,51 +1278,117 @@ }, "description": "Metrics to update when the selected methods are called, and the associated\ncost applied to each metric.\n\nThe key of the map is the metric name, and the values are the amount\nincreased for the metric against which the quota limits are defined.\nThe value must not be negative.", "type": "object" - } - }, - "id": "MetricRule" - }, - "Authentication": { - "description": "`Authentication` defines the authentication configuration for an API.\n\nExample for an API targeted for external use:\n\n name: calendar.googleapis.com\n authentication:\n providers:\n - id: google_calendar_auth\n jwks_uri: https://www.googleapis.com/oauth2/v1/certs\n issuer: https://securetoken.google.com\n rules:\n - selector: \"*\"\n requirements:\n provider_id: google_calendar_auth", - "type": "object", - "properties": { - "rules": { - "description": "A list of authentication rules that apply to individual API methods.\n\n**NOTE:** All service configuration rules follow \"last one wins\" order.", - "type": "array", - "items": { - "$ref": "AuthenticationRule" - } }, - "providers": { - "description": "Defines a set of authentication providers that a service supports.", - "type": "array", - "items": { - "$ref": "AuthProvider" - } + "selector": { + "description": "Selects the methods to which this rule applies.\n\nRefer to selector for syntax details.", + "type": "string" } }, - "id": "Authentication" + "type": "object" + }, + "Mixin": { + "description": "Declares an API Interface to be included in this interface. The including\ninterface must redeclare all the methods from the included interface, but\ndocumentation and options are inherited as follows:\n\n- If after comment and whitespace stripping, the documentation\n string of the redeclared method is empty, it will be inherited\n from the original method.\n\n- Each annotation belonging to the service config (http,\n visibility) which is not set in the redeclared method will be\n inherited.\n\n- If an http annotation is inherited, the path pattern will be\n modified as follows. Any version prefix will be replaced by the\n version of the including interface plus the root path if\n specified.\n\nExample of a simple mixin:\n\n package google.acl.v1;\n service AccessControl {\n // Get the underlying ACL object.\n rpc GetAcl(GetAclRequest) returns (Acl) {\n option (google.api.http).get = \"/v1/{resource=**}:getAcl\";\n }\n }\n\n package google.storage.v2;\n service Storage {\n // rpc GetAcl(GetAclRequest) returns (Acl);\n\n // Get a data record.\n rpc GetData(GetDataRequest) returns (Data) {\n option (google.api.http).get = \"/v2/{resource=**}\";\n }\n }\n\nExample of a mixin configuration:\n\n apis:\n - name: google.storage.v2.Storage\n mixins:\n - name: google.acl.v1.AccessControl\n\nThe mixin construct implies that all methods in `AccessControl` are\nalso declared with same name and request/response types in\n`Storage`. A documentation generator or annotation processor will\nsee the effective `Storage.GetAcl` method after inherting\ndocumentation and annotations as follows:\n\n service Storage {\n // Get the underlying ACL object.\n rpc GetAcl(GetAclRequest) returns (Acl) {\n option (google.api.http).get = \"/v2/{resource=**}:getAcl\";\n }\n ...\n }\n\nNote how the version in the path pattern changed from `v1` to `v2`.\n\nIf the `root` field in the mixin is specified, it should be a\nrelative path under which inherited HTTP paths are placed. Example:\n\n apis:\n - name: google.storage.v2.Storage\n mixins:\n - name: google.acl.v1.AccessControl\n root: acls\n\nThis implies the following inherited HTTP annotation:\n\n service Storage {\n // Get the underlying ACL object.\n rpc GetAcl(GetAclRequest) returns (Acl) {\n option (google.api.http).get = \"/v2/acls/{resource=**}:getAcl\";\n }\n ...\n }", + "id": "Mixin", + "properties": { + "name": { + "description": "The fully qualified name of the interface which is included.", + "type": "string" + }, + "root": { + "description": "If non-empty specifies a path under which inherited HTTP paths\nare rooted.", + "type": "string" + } + }, + "type": "object" + }, + "MonitoredResourceDescriptor": { + "description": "An object that describes the schema of a MonitoredResource object using a\ntype name and a set of labels. For example, the monitored resource\ndescriptor for Google Compute Engine VM instances has a type of\n`\"gce_instance\"` and specifies the use of the labels `\"instance_id\"` and\n`\"zone\"` to identify particular VM instances.\n\nDifferent APIs can support different monitored resource types. APIs generally\nprovide a `list` method that returns the monitored resource descriptors used\nby the API.", + "id": "MonitoredResourceDescriptor", + "properties": { + "description": { + "description": "Optional. A detailed description of the monitored resource type that might\nbe used in documentation.", + "type": "string" + }, + "displayName": { + "description": "Optional. A concise name for the monitored resource type that might be\ndisplayed in user interfaces. It should be a Title Cased Noun Phrase,\nwithout any article or other determiners. For example,\n`\"Google Cloud SQL Database\"`.", + "type": "string" + }, + "labels": { + "description": "Required. A set of labels used to describe instances of this monitored\nresource type. For example, an individual Google Cloud SQL database is\nidentified by values for the labels `\"database_id\"` and `\"zone\"`.", + "items": { + "$ref": "LabelDescriptor" + }, + "type": "array" + }, + "name": { + "description": "Optional. The resource name of the monitored resource descriptor:\n`\"projects/{project_id}/monitoredResourceDescriptors/{type}\"` where\n{type} is the value of the `type` field in this object and\n{project_id} is a project ID that provides API-specific context for\naccessing the type. APIs that do not use project information can use the\nresource name format `\"monitoredResourceDescriptors/{type}\"`.", + "type": "string" + }, + "type": { + "description": "Required. The monitored resource type. For example, the type\n`\"cloudsql_database\"` represents databases in Google Cloud SQL.\nThe maximum length of this value is 256 characters.", + "type": "string" + } + }, + "type": "object" + }, + "Monitoring": { + "description": "Monitoring configuration of the service.\n\nThe example below shows how to configure monitored resources and metrics\nfor monitoring. In the example, a monitored resource and two metrics are\ndefined. The `library.googleapis.com/book/returned_count` metric is sent\nto both producer and consumer projects, whereas the\n`library.googleapis.com/book/overdue_count` metric is only sent to the\nconsumer project.\n\n monitored_resources:\n - type: library.googleapis.com/branch\n labels:\n - key: /city\n description: The city where the library branch is located in.\n - key: /name\n description: The name of the branch.\n metrics:\n - name: library.googleapis.com/book/returned_count\n metric_kind: DELTA\n value_type: INT64\n labels:\n - key: /customer_id\n - name: library.googleapis.com/book/overdue_count\n metric_kind: GAUGE\n value_type: INT64\n labels:\n - key: /customer_id\n monitoring:\n producer_destinations:\n - monitored_resource: library.googleapis.com/branch\n metrics:\n - library.googleapis.com/book/returned_count\n consumer_destinations:\n - monitored_resource: library.googleapis.com/branch\n metrics:\n - library.googleapis.com/book/returned_count\n - library.googleapis.com/book/overdue_count", + "id": "Monitoring", + "properties": { + "consumerDestinations": { + "description": "Monitoring configurations for sending metrics to the consumer project.\nThere can be multiple consumer destinations, each one must have a\ndifferent monitored resource type. A metric can be used in at most\none consumer destination.", + "items": { + "$ref": "MonitoringDestination" + }, + "type": "array" + }, + "producerDestinations": { + "description": "Monitoring configurations for sending metrics to the producer project.\nThere can be multiple producer destinations, each one must have a\ndifferent monitored resource type. A metric can be used in at most\none producer destination.", + "items": { + "$ref": "MonitoringDestination" + }, + "type": "array" + } + }, + "type": "object" + }, + "MonitoringDestination": { + "description": "Configuration of a specific monitoring destination (the producer project\nor the consumer project).", + "id": "MonitoringDestination", + "properties": { + "metrics": { + "description": "Names of the metrics to report to this monitoring destination.\nEach name must be defined in Service.metrics section.", + "items": { + "type": "string" + }, + "type": "array" + }, + "monitoredResource": { + "description": "The monitored resource type. The type must be defined in\nService.monitored_resources section.", + "type": "string" + } + }, + "type": "object" + }, + "OAuthRequirements": { + "description": "OAuth scopes are a way to define data and permissions on data. For example,\nthere are scopes defined for \"Read-only access to Google Calendar\" and\n\"Access to Cloud Platform\". Users can consent to a scope for an application,\ngiving it permission to access that data on their behalf.\n\nOAuth scope specifications should be fairly coarse grained; a user will need\nto see and understand the text description of what your scope means.\n\nIn most cases: use one or at most two OAuth scopes for an entire family of\nproducts. If your product has multiple APIs, you should probably be sharing\nthe OAuth scope across all of those APIs.\n\nWhen you need finer grained OAuth consent screens: talk with your product\nmanagement about how developers will use them in practice.\n\nPlease note that even though each of the canonical scopes is enough for a\nrequest to be accepted and passed to the backend, a request can still fail\ndue to the backend requiring additional scopes or permissions.", + "id": "OAuthRequirements", + "properties": { + "canonicalScopes": { + "description": "The list of publicly documented OAuth scopes that are allowed access. An\nOAuth token containing any of these scopes will be accepted.\n\nExample:\n\n canonical_scopes: https://www.googleapis.com/auth/calendar,\n https://www.googleapis.com/auth/calendar.read", + "type": "string" + } + }, + "type": "object" }, "Operation": { "description": "This resource represents a long-running operation that is the result of a\nnetwork API call.", - "type": "object", + "id": "Operation", "properties": { "done": { "description": "If the value is `false`, it means the operation is still in progress.\nIf `true`, the operation is completed, and either `error` or `response` is\navailable.", "type": "boolean" }, - "response": { - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - }, - "description": "The normal response of the operation in case of success. If the original\nmethod returns no data on success, such as `Delete`, the response is\n`google.protobuf.Empty`. If the original method is standard\n`Get`/`Create`/`Update`, the response should be the resource. For other\nmethods, the response should have the type `XxxResponse`, where `Xxx`\nis the original method name. For example, if the original method name\nis `TakeSnapshot()`, the inferred response type is\n`TakeSnapshotResponse`.", - "type": "object" - }, - "name": { - "description": "The server-assigned name, which is only unique within the same service that\noriginally returns it. If you use the default HTTP mapping, the\n`name` should have the format of `operations/some/unique/name`.", - "type": "string" - }, "error": { "$ref": "Status", "description": "The error result of the operation in case of failure or cancellation." @@ -1257,524 +1400,56 @@ }, "description": "Service-specific metadata associated with the operation. It typically\ncontains progress information and common metadata such as create time.\nSome services might not provide such metadata. Any method that returns a\nlong-running operation should document the metadata type, if any.", "type": "object" - } - }, - "id": "Operation" - }, - "Page": { - "properties": { + }, "name": { - "description": "The name of the page. It will be used as an identity of the page to\ngenerate URI of the page, text of the link to this page in navigation,\netc. The full page name (start from the root page name to this page\nconcatenated with `.`) can be used as reference to the page in your\ndocumentation. For example:\n\u003cpre\u003e\u003ccode\u003epages:\n- name: Tutorial\n content: (== include tutorial.md ==)\n subpages:\n - name: Java\n content: (== include tutorial_java.md ==)\n\u003c/code\u003e\u003c/pre\u003e\nYou can reference `Java` page using Markdown reference link syntax:\n`Java`.", + "description": "The server-assigned name, which is only unique within the same service that\noriginally returns it. If you use the default HTTP mapping, the\n`name` should have the format of `operations/some/unique/name`.", "type": "string" }, - "content": { - "description": "The Markdown content of the page. You can use \u003ccode\u003e(== include {path} ==)\u003c/code\u003e\nto include content from a Markdown file.", - "type": "string" - }, - "subpages": { - "description": "Subpages of this page. The order of subpages specified here will be\nhonored in the generated docset.", - "type": "array", - "items": { - "$ref": "Page" - } + "response": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "description": "The normal response of the operation in case of success. If the original\nmethod returns no data on success, such as `Delete`, the response is\n`google.protobuf.Empty`. If the original method is standard\n`Get`/`Create`/`Update`, the response should be the resource. For other\nmethods, the response should have the type `XxxResponse`, where `Xxx`\nis the original method name. For example, if the original method name\nis `TakeSnapshot()`, the inferred response type is\n`TakeSnapshotResponse`.", + "type": "object" } }, - "id": "Page", - "description": "Represents a documentation page. A page can contain subpages to represent\nnested documentation set structure.", "type": "object" }, - "Status": { - "description": "The `Status` type defines a logical error model that is suitable for different\nprogramming environments, including REST APIs and RPC APIs. It is used by\n[gRPC](https://github.com/grpc). The error model is designed to be:\n\n- Simple to use and understand for most users\n- Flexible enough to meet unexpected needs\n\n# Overview\n\nThe `Status` message contains three pieces of data: error code, error message,\nand error details. The error code should be an enum value of\ngoogle.rpc.Code, but it may accept additional error codes if needed. The\nerror message should be a developer-facing English message that helps\ndevelopers *understand* and *resolve* the error. If a localized user-facing\nerror message is needed, put the localized message in the error details or\nlocalize it in the client. The optional error details may contain arbitrary\ninformation about the error. There is a predefined set of error detail types\nin the package `google.rpc` that can be used for common error conditions.\n\n# Language mapping\n\nThe `Status` message is the logical representation of the error model, but it\nis not necessarily the actual wire format. When the `Status` message is\nexposed in different client libraries and different wire protocols, it can be\nmapped differently. For example, it will likely be mapped to some exceptions\nin Java, but more likely mapped to some error codes in C.\n\n# Other uses\n\nThe error model and the `Status` message can be used in a variety of\nenvironments, either with or without APIs, to provide a\nconsistent developer experience across different environments.\n\nExample uses of this error model include:\n\n- Partial errors. If a service needs to return partial errors to the client,\n it may embed the `Status` in the normal response to indicate the partial\n errors.\n\n- Workflow errors. A typical workflow has multiple steps. Each step may\n have a `Status` message for error reporting.\n\n- Batch operations. If a client uses batch request and batch response, the\n `Status` message should be used directly inside batch response, one for\n each error sub-response.\n\n- Asynchronous operations. If an API call embeds asynchronous operation\n results in its response, the status of those operations should be\n represented directly using the `Status` message.\n\n- Logging. If some API errors are stored in logs, the message `Status` could\n be used directly after any stripping needed for security/privacy reasons.", - "type": "object", - "properties": { - "details": { - "description": "A list of messages that carry the error details. There is a common set of\nmessage types for APIs to use.", - "type": "array", - "items": { - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - }, - "type": "object" - } - }, - "code": { - "description": "The status code, which should be an enum value of google.rpc.Code.", - "format": "int32", - "type": "integer" - }, - "message": { - "description": "A developer-facing error message, which should be in English. Any\nuser-facing error message should be localized and sent in the\ngoogle.rpc.Status.details field, or localized by the client.", - "type": "string" - } - }, - "id": "Status" - }, - "AuthProvider": { - "description": "Configuration for an anthentication provider, including support for\n[JSON Web Token (JWT)](https://tools.ietf.org/html/draft-ietf-oauth-json-web-token-32).", - "type": "object", - "properties": { - "id": { - "description": "The unique identifier of the auth provider. It will be referred to by\n`AuthRequirement.provider_id`.\n\nExample: \"bookstore_auth\".", - "type": "string" - }, - "issuer": { - "description": "Identifies the principal that issued the JWT. See\nhttps://tools.ietf.org/html/draft-ietf-oauth-json-web-token-32#section-4.1.1\nUsually a URL or an email address.\n\nExample: https://securetoken.google.com\nExample: 1234567-compute@developer.gserviceaccount.com", - "type": "string" - }, - "authorizationUrl": { - "description": "Redirect URL if JWT token is required but no present or is expired.\nImplement authorizationUrl of securityDefinitions in OpenAPI spec.", - "type": "string" - }, - "jwksUri": { - "description": "URL of the provider's public key set to validate signature of the JWT. See\n[OpenID Discovery](https://openid.net/specs/openid-connect-discovery-1_0.html#ProviderMetadata).\nOptional if the key set document:\n - can be retrieved from\n [OpenID Discovery](https://openid.net/specs/openid-connect-discovery-1_0.html\n of the issuer.\n - can be inferred from the email domain of the issuer (e.g. a Google service account).\n\nExample: https://www.googleapis.com/oauth2/v1/certs", - "type": "string" - }, - "audiences": { - "description": "The list of JWT\n[audiences](https://tools.ietf.org/html/draft-ietf-oauth-json-web-token-32#section-4.1.3).\nthat are allowed to access. A JWT containing any of these audiences will\nbe accepted. When this setting is absent, only JWTs with audience\n\"https://Service_name/API_name\"\nwill be accepted. For example, if no audiences are in the setting,\nLibraryService API will only accept JWTs with the following audience\n\"https://library-example.googleapis.com/google.example.library.v1.LibraryService\".\n\nExample:\n\n audiences: bookstore_android.apps.googleusercontent.com,\n bookstore_web.apps.googleusercontent.com", - "type": "string" - } - }, - "id": "AuthProvider" - }, - "Service": { - "properties": { - "sourceInfo": { - "$ref": "SourceInfo", - "description": "Output only. The source information for this configuration if available." - }, - "http": { - "$ref": "Http", - "description": "HTTP configuration." - }, - "backend": { - "$ref": "Backend", - "description": "API backend configuration." - }, - "systemParameters": { - "$ref": "SystemParameters", - "description": "System parameter configuration." - }, - "documentation": { - "$ref": "Documentation", - "description": "Additional API documentation." - }, - "logging": { - "description": "Logging configuration.", - "$ref": "Logging" - }, - "monitoredResources": { - "description": "Defines the monitored resources used by this service. This is required\nby the Service.monitoring and Service.logging configurations.", - "type": "array", - "items": { - "$ref": "MonitoredResourceDescriptor" - } - }, - "enums": { - "description": "A list of all enum types included in this API service. Enums\nreferenced directly or indirectly by the `apis` are automatically\nincluded. Enums which are not referenced but shall be included\nshould be listed here by name. Example:\n\n enums:\n - name: google.someapi.v1.SomeEnum", - "type": "array", - "items": { - "$ref": "Enum" - } - }, - "context": { - "description": "Context configuration.", - "$ref": "Context" - }, - "id": { - "description": "A unique ID for a specific instance of this message, typically assigned\nby the client for tracking purpose. If empty, the server may choose to\ngenerate one instead.", - "type": "string" - }, - "usage": { - "$ref": "Usage", - "description": "Configuration controlling usage of this service." - }, - "metrics": { - "description": "Defines the metrics used by this service.", - "type": "array", - "items": { - "$ref": "MetricDescriptor" - } - }, - "authentication": { - "description": "Auth configuration.", - "$ref": "Authentication" - }, - "experimental": { - "description": "Experimental configuration.", - "$ref": "Experimental" - }, - "control": { - "$ref": "Control", - "description": "Configuration for the service control plane." - }, - "configVersion": { - "description": "The semantic version of the service configuration. The config version\naffects the interpretation of the service configuration. For example,\ncertain features are enabled by default for certain config versions.\nThe latest config version is `3`.", - "format": "uint32", - "type": "integer" - }, - "monitoring": { - "$ref": "Monitoring", - "description": "Monitoring configuration." - }, - "producerProjectId": { - "description": "The Google project that owns this service.", - "type": "string" - }, - "systemTypes": { - "description": "A list of all proto message types included in this API service.\nIt serves similar purpose as [google.api.Service.types], except that\nthese types are not needed by user-defined APIs. Therefore, they will not\nshow up in the generated discovery doc. This field should only be used\nto define system APIs in ESF.", - "type": "array", - "items": { - "$ref": "Type" - } - }, - "visibility": { - "description": "API visibility configuration.", - "$ref": "Visibility" - }, - "quota": { - "$ref": "Quota", - "description": "Quota configuration." - }, - "billing": { - "$ref": "Billing", - "description": "Billing configuration." - }, - "name": { - "description": "The DNS address at which this service is available,\ne.g. `calendar.googleapis.com`.", - "type": "string" - }, - "customError": { - "$ref": "CustomError", - "description": "Custom error configuration." - }, - "title": { - "description": "The product title for this service.", - "type": "string" - }, - "endpoints": { - "description": "Configuration for network endpoints. If this is empty, then an endpoint\nwith the same name as the service is automatically generated to service all\ndefined APIs.", - "type": "array", - "items": { - "$ref": "Endpoint" - } - }, - "apis": { - "description": "A list of API interfaces exported by this service. Only the `name` field\nof the google.protobuf.Api needs to be provided by the configuration\nauthor, as the remaining fields will be derived from the IDL during the\nnormalization process. It is an error to specify an API interface here\nwhich cannot be resolved against the associated IDL files.", - "type": "array", - "items": { - "$ref": "Api" - } - }, - "logs": { - "description": "Defines the logs used by this service.", - "type": "array", - "items": { - "$ref": "LogDescriptor" - } - }, - "types": { - "description": "A list of all proto message types included in this API service.\nTypes referenced directly or indirectly by the `apis` are\nautomatically included. Messages which are not referenced but\nshall be included, such as types used by the `google.protobuf.Any` type,\nshould be listed here by name. Example:\n\n types:\n - name: google.protobuf.Int32", - "type": "array", - "items": { - "$ref": "Type" - } - } - }, - "id": "Service", - "description": "`Service` is the root object of Google service configuration schema. It\ndescribes basic information about a service, such as the name and the\ntitle, and delegates other aspects to sub-sections. Each sub-section is\neither a proto message or a repeated proto message that configures a\nspecific aspect, such as auth. See each proto message definition for details.\n\nExample:\n\n type: google.api.Service\n config_version: 3\n name: calendar.googleapis.com\n title: Google Calendar API\n apis:\n - name: google.calendar.v3.Calendar\n authentication:\n providers:\n - id: google_calendar_auth\n jwks_uri: https://www.googleapis.com/oauth2/v1/certs\n issuer: https://securetoken.google.com\n rules:\n - selector: \"*\"\n requirements:\n provider_id: google_calendar_auth", - "type": "object" - }, - "EnumValue": { - "description": "Enum value definition.", - "type": "object", - "properties": { - "name": { - "description": "Enum value name.", - "type": "string" - }, - "options": { - "description": "Protocol buffer options.", - "type": "array", - "items": { - "$ref": "Option" - } - }, - "number": { - "description": "Enum value number.", - "format": "int32", - "type": "integer" - } - }, - "id": "EnumValue" - }, - "CustomHttpPattern": { - "description": "A custom pattern is used for defining custom HTTP verb.", - "type": "object", - "properties": { - "path": { - "description": "The path matched by this custom verb.", - "type": "string" - }, - "kind": { - "description": "The name of this custom HTTP verb.", - "type": "string" - } - }, - "id": "CustomHttpPattern" - }, "OperationMetadata": { + "description": "The metadata associated with a long running operation resource.", + "id": "OperationMetadata", "properties": { + "progressPercentage": { + "description": "Percentage of completion of this operation, ranging from 0 to 100.", + "format": "int32", + "type": "integer" + }, + "resourceNames": { + "description": "The full name of the resources that this operation is directly\nassociated with.", + "items": { + "type": "string" + }, + "type": "array" + }, "startTime": { "description": "The start time of the operation.", "format": "google-datetime", "type": "string" }, - "resourceNames": { - "description": "The full name of the resources that this operation is directly\nassociated with.", - "type": "array", - "items": { - "type": "string" - } - }, "steps": { "description": "Detailed status information for each step. The order is undetermined.", - "type": "array", "items": { "$ref": "Step" - } - }, - "progressPercentage": { - "description": "Percentage of completion of this operation, ranging from 0 to 100.", - "format": "int32", - "type": "integer" + }, + "type": "array" } }, - "id": "OperationMetadata", - "description": "The metadata associated with a long running operation resource.", - "type": "object" - }, - "PublishedService": { - "description": "The published version of a Service that is managed by\nGoogle Service Management.", - "type": "object", - "properties": { - "service": { - "$ref": "Service", - "description": "The service's published configuration." - }, - "name": { - "description": "The resource name of the service.\n\nA valid name would be:\n- services/serviceuser.googleapis.com", - "type": "string" - } - }, - "id": "PublishedService" - }, - "SystemParameterRule": { - "properties": { - "parameters": { - "description": "Define parameters. Multiple names may be defined for a parameter.\nFor a given method call, only one of them should be used. If multiple\nnames are used the behavior is implementation-dependent.\nIf none of the specified names are present the behavior is\nparameter-dependent.", - "type": "array", - "items": { - "$ref": "SystemParameter" - } - }, - "selector": { - "description": "Selects the methods to which this rule applies. Use '*' to indicate all\nmethods in all APIs.\n\nRefer to selector for syntax details.", - "type": "string" - } - }, - "id": "SystemParameterRule", - "description": "Define a system parameter rule mapping system parameter definitions to\nmethods.", - "type": "object" - }, - "VisibilityRule": { - "properties": { - "restriction": { - "description": "A comma-separated list of visibility labels that apply to the `selector`.\nAny of the listed labels can be used to grant the visibility.\n\nIf a rule has multiple labels, removing one of the labels but not all of\nthem can break clients.\n\nExample:\n\n visibility:\n rules:\n - selector: google.calendar.Calendar.EnhancedSearch\n restriction: GOOGLE_INTERNAL, TRUSTED_TESTER\n\nRemoving GOOGLE_INTERNAL from this restriction will break clients that\nrely on this method and only had access to it through GOOGLE_INTERNAL.", - "type": "string" - }, - "selector": { - "description": "Selects methods, messages, fields, enums, etc. to which this rule applies.\n\nRefer to selector for syntax details.", - "type": "string" - } - }, - "id": "VisibilityRule", - "description": "A visibility rule provides visibility configuration for an individual API\nelement.", - "type": "object" - }, - "HttpRule": { - "description": "`HttpRule` defines the mapping of an RPC method to one or more HTTP\nREST API methods. The mapping specifies how different portions of the RPC\nrequest message are mapped to URL path, URL query parameters, and\nHTTP request body. The mapping is typically specified as an\n`google.api.http` annotation on the RPC method,\nsee \"google/api/annotations.proto\" for details.\n\nThe mapping consists of a field specifying the path template and\nmethod kind. The path template can refer to fields in the request\nmessage, as in the example below which describes a REST GET\noperation on a resource collection of messages:\n\n\n service Messaging {\n rpc GetMessage(GetMessageRequest) returns (Message) {\n option (google.api.http).get = \"/v1/messages/{message_id}/{sub.subfield}\";\n }\n }\n message GetMessageRequest {\n message SubMessage {\n string subfield = 1;\n }\n string message_id = 1; // mapped to the URL\n SubMessage sub = 2; // `sub.subfield` is url-mapped\n }\n message Message {\n string text = 1; // content of the resource\n }\n\nThe same http annotation can alternatively be expressed inside the\n`GRPC API Configuration` YAML file.\n\n http:\n rules:\n - selector: \u003cproto_package_name\u003e.Messaging.GetMessage\n get: /v1/messages/{message_id}/{sub.subfield}\n\nThis definition enables an automatic, bidrectional mapping of HTTP\nJSON to RPC. Example:\n\nHTTP | RPC\n-----|-----\n`GET /v1/messages/123456/foo` | `GetMessage(message_id: \"123456\" sub: SubMessage(subfield: \"foo\"))`\n\nIn general, not only fields but also field paths can be referenced\nfrom a path pattern. Fields mapped to the path pattern cannot be\nrepeated and must have a primitive (non-message) type.\n\nAny fields in the request message which are not bound by the path\npattern automatically become (optional) HTTP query\nparameters. Assume the following definition of the request message:\n\n\n service Messaging {\n rpc GetMessage(GetMessageRequest) returns (Message) {\n option (google.api.http).get = \"/v1/messages/{message_id}\";\n }\n }\n message GetMessageRequest {\n message SubMessage {\n string subfield = 1;\n }\n string message_id = 1; // mapped to the URL\n int64 revision = 2; // becomes a parameter\n SubMessage sub = 3; // `sub.subfield` becomes a parameter\n }\n\n\nThis enables a HTTP JSON to RPC mapping as below:\n\nHTTP | RPC\n-----|-----\n`GET /v1/messages/123456?revision=2&sub.subfield=foo` | `GetMessage(message_id: \"123456\" revision: 2 sub: SubMessage(subfield: \"foo\"))`\n\nNote that fields which are mapped to HTTP parameters must have a\nprimitive type or a repeated primitive type. Message types are not\nallowed. In the case of a repeated type, the parameter can be\nrepeated in the URL, as in `...?param=A¶m=B`.\n\nFor HTTP method kinds which allow a request body, the `body` field\nspecifies the mapping. Consider a REST update method on the\nmessage resource collection:\n\n\n service Messaging {\n rpc UpdateMessage(UpdateMessageRequest) returns (Message) {\n option (google.api.http) = {\n put: \"/v1/messages/{message_id}\"\n body: \"message\"\n };\n }\n }\n message UpdateMessageRequest {\n string message_id = 1; // mapped to the URL\n Message message = 2; // mapped to the body\n }\n\n\nThe following HTTP JSON to RPC mapping is enabled, where the\nrepresentation of the JSON in the request body is determined by\nprotos JSON encoding:\n\nHTTP | RPC\n-----|-----\n`PUT /v1/messages/123456 { \"text\": \"Hi!\" }` | `UpdateMessage(message_id: \"123456\" message { text: \"Hi!\" })`\n\nThe special name `*` can be used in the body mapping to define that\nevery field not bound by the path template should be mapped to the\nrequest body. This enables the following alternative definition of\nthe update method:\n\n service Messaging {\n rpc UpdateMessage(Message) returns (Message) {\n option (google.api.http) = {\n put: \"/v1/messages/{message_id}\"\n body: \"*\"\n };\n }\n }\n message Message {\n string message_id = 1;\n string text = 2;\n }\n\n\nThe following HTTP JSON to RPC mapping is enabled:\n\nHTTP | RPC\n-----|-----\n`PUT /v1/messages/123456 { \"text\": \"Hi!\" }` | `UpdateMessage(message_id: \"123456\" text: \"Hi!\")`\n\nNote that when using `*` in the body mapping, it is not possible to\nhave HTTP parameters, as all fields not bound by the path end in\nthe body. This makes this option more rarely used in practice of\ndefining REST APIs. The common usage of `*` is in custom methods\nwhich don't use the URL at all for transferring data.\n\nIt is possible to define multiple HTTP methods for one RPC by using\nthe `additional_bindings` option. Example:\n\n service Messaging {\n rpc GetMessage(GetMessageRequest) returns (Message) {\n option (google.api.http) = {\n get: \"/v1/messages/{message_id}\"\n additional_bindings {\n get: \"/v1/users/{user_id}/messages/{message_id}\"\n }\n };\n }\n }\n message GetMessageRequest {\n string message_id = 1;\n string user_id = 2;\n }\n\n\nThis enables the following two alternative HTTP JSON to RPC\nmappings:\n\nHTTP | RPC\n-----|-----\n`GET /v1/messages/123456` | `GetMessage(message_id: \"123456\")`\n`GET /v1/users/me/messages/123456` | `GetMessage(user_id: \"me\" message_id: \"123456\")`\n\n# Rules for HTTP mapping\n\nThe rules for mapping HTTP path, query parameters, and body fields\nto the request message are as follows:\n\n1. The `body` field specifies either `*` or a field path, or is\n omitted. If omitted, it indicates there is no HTTP request body.\n2. Leaf fields (recursive expansion of nested messages in the\n request) can be classified into three types:\n (a) Matched in the URL template.\n (b) Covered by body (if body is `*`, everything except (a) fields;\n else everything under the body field)\n (c) All other fields.\n3. URL query parameters found in the HTTP request are mapped to (c) fields.\n4. Any body sent with an HTTP request can contain only (b) fields.\n\nThe syntax of the path template is as follows:\n\n Template = \"/\" Segments [ Verb ] ;\n Segments = Segment { \"/\" Segment } ;\n Segment = \"*\" | \"**\" | LITERAL | Variable ;\n Variable = \"{\" FieldPath [ \"=\" Segments ] \"}\" ;\n FieldPath = IDENT { \".\" IDENT } ;\n Verb = \":\" LITERAL ;\n\nThe syntax `*` matches a single path segment. The syntax `**` matches zero\nor more path segments, which must be the last part of the path except the\n`Verb`. The syntax `LITERAL` matches literal text in the path.\n\nThe syntax `Variable` matches part of the URL path as specified by its\ntemplate. A variable template must not contain other variables. If a variable\nmatches a single path segment, its template may be omitted, e.g. `{var}`\nis equivalent to `{var=*}`.\n\nIf a variable contains exactly one path segment, such as `\"{var}\"` or\n`\"{var=*}\"`, when such a variable is expanded into a URL path, all characters\nexcept `[-_.~0-9a-zA-Z]` are percent-encoded. Such variables show up in the\nDiscovery Document as `{var}`.\n\nIf a variable contains one or more path segments, such as `\"{var=foo/*}\"`\nor `\"{var=**}\"`, when such a variable is expanded into a URL path, all\ncharacters except `[-_.~/0-9a-zA-Z]` are percent-encoded. Such variables\nshow up in the Discovery Document as `{+var}`.\n\nNOTE: While the single segment variable matches the semantics of\n[RFC 6570](https://tools.ietf.org/html/rfc6570) Section 3.2.2\nSimple String Expansion, the multi segment variable **does not** match\nRFC 6570 Reserved Expansion. The reason is that the Reserved Expansion\ndoes not expand special characters like `?` and `#`, which would lead\nto invalid URLs.\n\nNOTE: the field paths in variables and in the `body` must not refer to\nrepeated fields or map fields.", - "type": "object", - "properties": { - "put": { - "description": "Used for updating a resource.", - "type": "string" - }, - "additionalBindings": { - "description": "Additional HTTP bindings for the selector. Nested bindings must\nnot contain an `additional_bindings` field themselves (that is,\nthe nesting may only be one level deep).", - "type": "array", - "items": { - "$ref": "HttpRule" - } - }, - "delete": { - "description": "Used for deleting a resource.", - "type": "string" - }, - "body": { - "description": "The name of the request field whose value is mapped to the HTTP body, or\n`*` for mapping all fields not captured by the path pattern to the HTTP\nbody. NOTE: the referred field must not be a repeated field and must be\npresent at the top-level of request message type.", - "type": "string" - }, - "mediaUpload": { - "$ref": "MediaUpload", - "description": "Use this only for Scotty Requests. Do not use this for media support using\nBytestream, add instead\n[][google.bytestream.RestByteStream] as an API to your\nconfiguration for Bytestream methods." - }, - "selector": { - "description": "Selects methods to which this rule applies.\n\nRefer to selector for syntax details.", - "type": "string" - }, - "post": { - "description": "Used for creating a resource.", - "type": "string" - }, - "custom": { - "description": "The custom pattern is used for specifying an HTTP method that is not\nincluded in the `pattern` field, such as HEAD, or \"*\" to leave the\nHTTP method unspecified for this rule. The wild-card rule is useful\nfor services that provide content to Web (HTML) clients.", - "$ref": "CustomHttpPattern" - }, - "mediaDownload": { - "description": "Use this only for Scotty Requests. Do not use this for bytestream methods.\nFor media support, add instead [][google.bytestream.RestByteStream] as an\nAPI to your configuration.", - "$ref": "MediaDownload" - }, - "patch": { - "description": "Used for updating a resource.", - "type": "string" - }, - "get": { - "description": "Used for listing and getting information about resources.", - "type": "string" - } - }, - "id": "HttpRule" - }, - "MonitoringDestination": { - "description": "Configuration of a specific monitoring destination (the producer project\nor the consumer project).", - "type": "object", - "properties": { - "monitoredResource": { - "description": "The monitored resource type. The type must be defined in\nService.monitored_resources section.", - "type": "string" - }, - "metrics": { - "description": "Names of the metrics to report to this monitoring destination.\nEach name must be defined in Service.metrics section.", - "type": "array", - "items": { - "type": "string" - } - } - }, - "id": "MonitoringDestination" - }, - "Visibility": { - "description": "`Visibility` defines restrictions for the visibility of service\nelements. Restrictions are specified using visibility labels\n(e.g., TRUSTED_TESTER) that are elsewhere linked to users and projects.\n\nUsers and projects can have access to more than one visibility label. The\neffective visibility for multiple labels is the union of each label's\nelements, plus any unrestricted elements.\n\nIf an element and its parents have no restrictions, visibility is\nunconditionally granted.\n\nExample:\n\n visibility:\n rules:\n - selector: google.calendar.Calendar.EnhancedSearch\n restriction: TRUSTED_TESTER\n - selector: google.calendar.Calendar.Delegate\n restriction: GOOGLE_INTERNAL\n\nHere, all methods are publicly visible except for the restricted methods\nEnhancedSearch and Delegate.", - "type": "object", - "properties": { - "rules": { - "description": "A list of visibility rules that apply to individual API elements.\n\n**NOTE:** All service configuration rules follow \"last one wins\" order.", - "type": "array", - "items": { - "$ref": "VisibilityRule" - } - } - }, - "id": "Visibility" - }, - "SystemParameters": { - "properties": { - "rules": { - "description": "Define system parameters.\n\nThe parameters defined here will override the default parameters\nimplemented by the system. If this field is missing from the service\nconfig, default system parameters will be used. Default system parameters\nand names is implementation-dependent.\n\nExample: define api key for all methods\n\n system_parameters\n rules:\n - selector: \"*\"\n parameters:\n - name: api_key\n url_query_parameter: api_key\n\n\nExample: define 2 api key names for a specific method.\n\n system_parameters\n rules:\n - selector: \"/ListShelves\"\n parameters:\n - name: api_key\n http_header: Api-Key1\n - name: api_key\n http_header: Api-Key2\n\n**NOTE:** All service configuration rules follow \"last one wins\" order.", - "type": "array", - "items": { - "$ref": "SystemParameterRule" - } - } - }, - "id": "SystemParameters", - "description": "### System parameter configuration\n\nA system parameter is a special kind of parameter defined by the API\nsystem, not by an individual API. It is typically mapped to an HTTP header\nand/or a URL query parameter. This configuration specifies which methods\nchange the names of the system parameters.", - "type": "object" - }, - "Quota": { - "properties": { - "limits": { - "description": "List of `QuotaLimit` definitions for the service.", - "type": "array", - "items": { - "$ref": "QuotaLimit" - } - }, - "metricRules": { - "description": "List of `MetricRule` definitions, each one mapping a selected method to one\nor more metrics.", - "type": "array", - "items": { - "$ref": "MetricRule" - } - } - }, - "id": "Quota", - "description": "Quota configuration helps to achieve fairness and budgeting in service\nusage.\n\nThe quota configuration works this way:\n- The service configuration defines a set of metrics.\n- For API calls, the quota.metric_rules maps methods to metrics with\n corresponding costs.\n- The quota.limits defines limits on the metrics, which will be used for\n quota checks at runtime.\n\nAn example quota configuration in yaml format:\n\n quota:\n\n - name: apiWriteQpsPerProject\n metric: library.googleapis.com/write_calls\n unit: \"1/min/{project}\" # rate limit for consumer projects\n values:\n STANDARD: 10000\n\n\n # The metric rules bind all methods to the read_calls metric,\n # except for the UpdateBook and DeleteBook methods. These two methods\n # are mapped to the write_calls metric, with the UpdateBook method\n # consuming at twice rate as the DeleteBook method.\n metric_rules:\n - selector: \"*\"\n metric_costs:\n library.googleapis.com/read_calls: 1\n - selector: google.example.library.v1.LibraryService.UpdateBook\n metric_costs:\n library.googleapis.com/write_calls: 2\n - selector: google.example.library.v1.LibraryService.DeleteBook\n metric_costs:\n library.googleapis.com/write_calls: 1\n\n Corresponding Metric definition:\n\n metrics:\n - name: library.googleapis.com/read_calls\n display_name: Read requests\n metric_kind: DELTA\n value_type: INT64\n\n - name: library.googleapis.com/write_calls\n display_name: Write requests\n metric_kind: DELTA\n value_type: INT64", - "type": "object" - }, - "Step": { - "description": "Represents the status of one operation step.", - "type": "object", - "properties": { - "status": { - "enumDescriptions": [ - "Unspecifed code.", - "The operation or step has completed without errors.", - "The operation or step has not started yet.", - "The operation or step is in progress.", - "The operation or step has completed with errors. If the operation is\nrollbackable, the rollback completed with errors too.", - "The operation or step has completed with cancellation." - ], - "enum": [ - "STATUS_UNSPECIFIED", - "DONE", - "NOT_STARTED", - "IN_PROGRESS", - "FAILED", - "CANCELLED" - ], - "description": "The status code.", - "type": "string" - }, - "description": { - "description": "The short description of the step.", - "type": "string" - } - }, - "id": "Step" - }, - "LoggingDestination": { - "properties": { - "logs": { - "description": "Names of the logs to be sent to this destination. Each name must\nbe defined in the Service.logs section. If the log name is\nnot a domain scoped name, it will be automatically prefixed with\nthe service name followed by \"/\".", - "type": "array", - "items": { - "type": "string" - } - }, - "monitoredResource": { - "description": "The monitored resource type. The type must be defined in the\nService.monitored_resources section.", - "type": "string" - } - }, - "id": "LoggingDestination", - "description": "Configuration of a specific logging destination (the producer project\nor the consumer project).", "type": "object" }, "Option": { "description": "A protocol buffer option, which can be attached to a message, field,\nenumeration, etc.", - "type": "object", + "id": "Option", "properties": { "name": { "description": "The option's name. For protobuf built-in options (options defined in\ndescriptor.proto), this is the short name. For example, `\"map_entry\"`.\nFor custom options, it should be the fully-qualified name. For example,\n`\"google.api.http\"`.", @@ -1789,88 +1464,85 @@ "type": "object" } }, - "id": "Option" - }, - "Logging": { - "properties": { - "consumerDestinations": { - "description": "Logging configurations for sending logs to the consumer project.\nThere can be multiple consumer destinations, each one must have a\ndifferent monitored resource type. A log can be used in at most\none consumer destination.", - "type": "array", - "items": { - "$ref": "LoggingDestination" - } - }, - "producerDestinations": { - "description": "Logging configurations for sending logs to the producer project.\nThere can be multiple producer destinations, each one must have a\ndifferent monitored resource type. A log can be used in at most\none producer destination.", - "type": "array", - "items": { - "$ref": "LoggingDestination" - } - } - }, - "id": "Logging", - "description": "Logging configuration of the service.\n\nThe following example shows how to configure logs to be sent to the\nproducer and consumer projects. In the example, the `activity_history`\nlog is sent to both the producer and consumer projects, whereas the\n`purchase_history` log is only sent to the producer project.\n\n monitored_resources:\n - type: library.googleapis.com/branch\n labels:\n - key: /city\n description: The city where the library branch is located in.\n - key: /name\n description: The name of the branch.\n logs:\n - name: activity_history\n labels:\n - key: /customer_id\n - name: purchase_history\n logging:\n producer_destinations:\n - monitored_resource: library.googleapis.com/branch\n logs:\n - activity_history\n - purchase_history\n consumer_destinations:\n - monitored_resource: library.googleapis.com/branch\n logs:\n - activity_history", "type": "object" }, - "Method": { - "description": "Method represents a method of an API interface.", - "type": "object", + "Page": { + "description": "Represents a documentation page. A page can contain subpages to represent\nnested documentation set structure.", + "id": "Page", "properties": { - "syntax": { - "enumDescriptions": [ - "Syntax `proto2`.", - "Syntax `proto3`." - ], - "enum": [ - "SYNTAX_PROTO2", - "SYNTAX_PROTO3" - ], - "description": "The source syntax of this method.", + "content": { + "description": "The Markdown content of the page. You can use \u003ccode\u003e\u0026#40;== include {path} ==\u0026#41;\u003c/code\u003e\nto include content from a Markdown file.", "type": "string" }, - "responseTypeUrl": { - "description": "The URL of the output message type.", - "type": "string" - }, - "options": { - "description": "Any metadata attached to the method.", - "type": "array", - "items": { - "$ref": "Option" - } - }, - "responseStreaming": { - "description": "If true, the response is streamed.", - "type": "boolean" - }, "name": { - "description": "The simple name of this method.", + "description": "The name of the page. It will be used as an identity of the page to\ngenerate URI of the page, text of the link to this page in navigation,\netc. The full page name (start from the root page name to this page\nconcatenated with `.`) can be used as reference to the page in your\ndocumentation. For example:\n\u003cpre\u003e\u003ccode\u003epages:\n- name: Tutorial\n content: \u0026#40;== include tutorial.md ==\u0026#41;\n subpages:\n - name: Java\n content: \u0026#40;== include tutorial_java.md ==\u0026#41;\n\u003c/code\u003e\u003c/pre\u003e\nYou can reference `Java` page using Markdown reference link syntax:\n`Java`.", "type": "string" }, - "requestTypeUrl": { - "description": "A URL of the input message type.", - "type": "string" - }, - "requestStreaming": { - "description": "If true, the request is streamed.", - "type": "boolean" + "subpages": { + "description": "Subpages of this page. The order of subpages specified here will be\nhonored in the generated docset.", + "items": { + "$ref": "Page" + }, + "type": "array" } }, - "id": "Method" + "type": "object" }, - "QuotaLimit": { + "PublishedService": { + "description": "The published version of a Service that is managed by\nGoogle Service Management.", + "id": "PublishedService", "properties": { - "unit": { - "description": "Specify the unit of the quota limit. It uses the same syntax as\nMetric.unit. The supported unit kinds are determined by the quota\nbackend system.\n\nHere are some examples:\n* \"1/min/{project}\" for quota per minute per project.\n\nNote: the order of unit components is insignificant.\nThe \"1\" at the beginning is required to follow the metric unit syntax.", + "name": { + "description": "The resource name of the service.\n\nA valid name would be:\n- services/serviceuser.googleapis.com", "type": "string" }, - "maxLimit": { - "description": "Maximum number of tokens that can be consumed during the specified\nduration. Client application developers can override the default limit up\nto this maximum. If specified, this value cannot be set to a value less\nthan the default limit. If not specified, it is set to the default limit.\n\nTo allow clients to apply overrides with no upper bound, set this to -1,\nindicating unlimited maximum quota.\n\nUsed by group-based quotas only.", + "service": { + "$ref": "Service", + "description": "The service's published configuration." + } + }, + "type": "object" + }, + "Quota": { + "description": "Quota configuration helps to achieve fairness and budgeting in service\nusage.\n\nThe quota configuration works this way:\n- The service configuration defines a set of metrics.\n- For API calls, the quota.metric_rules maps methods to metrics with\n corresponding costs.\n- The quota.limits defines limits on the metrics, which will be used for\n quota checks at runtime.\n\nAn example quota configuration in yaml format:\n\n quota:\n\n - name: apiWriteQpsPerProject\n metric: library.googleapis.com/write_calls\n unit: \"1/min/{project}\" # rate limit for consumer projects\n values:\n STANDARD: 10000\n\n\n # The metric rules bind all methods to the read_calls metric,\n # except for the UpdateBook and DeleteBook methods. These two methods\n # are mapped to the write_calls metric, with the UpdateBook method\n # consuming at twice rate as the DeleteBook method.\n metric_rules:\n - selector: \"*\"\n metric_costs:\n library.googleapis.com/read_calls: 1\n - selector: google.example.library.v1.LibraryService.UpdateBook\n metric_costs:\n library.googleapis.com/write_calls: 2\n - selector: google.example.library.v1.LibraryService.DeleteBook\n metric_costs:\n library.googleapis.com/write_calls: 1\n\n Corresponding Metric definition:\n\n metrics:\n - name: library.googleapis.com/read_calls\n display_name: Read requests\n metric_kind: DELTA\n value_type: INT64\n\n - name: library.googleapis.com/write_calls\n display_name: Write requests\n metric_kind: DELTA\n value_type: INT64", + "id": "Quota", + "properties": { + "limits": { + "description": "List of `QuotaLimit` definitions for the service.", + "items": { + "$ref": "QuotaLimit" + }, + "type": "array" + }, + "metricRules": { + "description": "List of `MetricRule` definitions, each one mapping a selected method to one\nor more metrics.", + "items": { + "$ref": "MetricRule" + }, + "type": "array" + } + }, + "type": "object" + }, + "QuotaLimit": { + "description": "`QuotaLimit` defines a specific limit that applies over a specified duration\nfor a limit type. There can be at most one limit for a duration and limit\ntype combination defined within a `QuotaGroup`.", + "id": "QuotaLimit", + "properties": { + "defaultLimit": { + "description": "Default number of tokens that can be consumed during the specified\nduration. This is the number of tokens assigned when a client\napplication developer activates the service for his/her project.\n\nSpecifying a value of 0 will block all requests. This can be used if you\nare provisioning quota to selected consumers and blocking others.\nSimilarly, a value of -1 will indicate an unlimited quota. No other\nnegative values are allowed.\n\nUsed by group-based quotas only.", "format": "int64", "type": "string" }, - "name": { - "description": "Name of the quota limit.\n\nThe name must be provided, and it must be unique within the service. The\nname can only include alphanumeric characters as well as '-'.\n\nThe maximum length of the limit name is 64 characters.", + "description": { + "description": "Optional. User-visible, extended description for this quota limit.\nShould be used only when more context is needed to understand this limit\nthan provided by the limit's display name (see: `display_name`).", + "type": "string" + }, + "displayName": { + "description": "User-visible display name for this limit.\nOptional. If not set, the UI will provide a default display name based on\nthe quota configuration. This field can be used to override the default\ndisplay name generated from the configuration.", + "type": "string" + }, + "duration": { + "description": "Duration of this limit in textual notation. Example: \"100s\", \"24h\", \"1d\".\nFor duration longer than a day, only multiple of days is supported. We\nsupport only \"100s\" and \"1d\" for now. Additional support will be added in\nthe future. \"0\" indicates indefinite duration.\n\nUsed by group-based quotas only.", "type": "string" }, "freeTier": { @@ -1878,25 +1550,21 @@ "format": "int64", "type": "string" }, - "duration": { - "description": "Duration of this limit in textual notation. Example: \"100s\", \"24h\", \"1d\".\nFor duration longer than a day, only multiple of days is supported. We\nsupport only \"100s\" and \"1d\" for now. Additional support will be added in\nthe future. \"0\" indicates indefinite duration.\n\nUsed by group-based quotas only.", - "type": "string" - }, - "defaultLimit": { - "description": "Default number of tokens that can be consumed during the specified\nduration. This is the number of tokens assigned when a client\napplication developer activates the service for his/her project.\n\nSpecifying a value of 0 will block all requests. This can be used if you\nare provisioning quota to selected consumers and blocking others.\nSimilarly, a value of -1 will indicate an unlimited quota. No other\nnegative values are allowed.\n\nUsed by group-based quotas only.", + "maxLimit": { + "description": "Maximum number of tokens that can be consumed during the specified\nduration. Client application developers can override the default limit up\nto this maximum. If specified, this value cannot be set to a value less\nthan the default limit. If not specified, it is set to the default limit.\n\nTo allow clients to apply overrides with no upper bound, set this to -1,\nindicating unlimited maximum quota.\n\nUsed by group-based quotas only.", "format": "int64", "type": "string" }, - "displayName": { - "description": "User-visible display name for this limit.\nOptional. If not set, the UI will provide a default display name based on\nthe quota configuration. This field can be used to override the default\ndisplay name generated from the configuration.", - "type": "string" - }, "metric": { "description": "The name of the metric this quota limit applies to. The quota limits with\nthe same metric will be checked together during runtime. The metric must be\ndefined within the service config.", "type": "string" }, - "description": { - "description": "Optional. User-visible, extended description for this quota limit.\nShould be used only when more context is needed to understand this limit\nthan provided by the limit's display name (see: `display_name`).", + "name": { + "description": "Name of the quota limit.\n\nThe name must be provided, and it must be unique within the service. The\nname can only include alphanumeric characters as well as '-'.\n\nThe maximum length of the limit name is 64 characters.", + "type": "string" + }, + "unit": { + "description": "Specify the unit of the quota limit. It uses the same syntax as\nMetric.unit. The supported unit kinds are determined by the quota\nbackend system.\n\nHere are some examples:\n* \"1/min/{project}\" for quota per minute per project.\n\nNote: the order of unit components is insignificant.\nThe \"1\" at the beginning is required to follow the metric unit syntax.", "type": "string" }, "values": { @@ -1908,90 +1576,403 @@ "type": "object" } }, - "id": "QuotaLimit", - "description": "`QuotaLimit` defines a specific limit that applies over a specified duration\nfor a limit type. There can be at most one limit for a duration and limit\ntype combination defined within a `QuotaGroup`.", "type": "object" }, - "Mixin": { + "SearchServicesResponse": { + "description": "Response message for SearchServices method.", + "id": "SearchServicesResponse", "properties": { - "name": { - "description": "The fully qualified name of the interface which is included.", + "nextPageToken": { + "description": "Token that can be passed to `ListAvailableServices` to resume a paginated\nquery.", "type": "string" }, - "root": { - "description": "If non-empty specifies a path under which inherited HTTP paths\nare rooted.", + "services": { + "description": "Services available publicly or available to the authenticated caller.", + "items": { + "$ref": "PublishedService" + }, + "type": "array" + } + }, + "type": "object" + }, + "Service": { + "description": "`Service` is the root object of Google service configuration schema. It\ndescribes basic information about a service, such as the name and the\ntitle, and delegates other aspects to sub-sections. Each sub-section is\neither a proto message or a repeated proto message that configures a\nspecific aspect, such as auth. See each proto message definition for details.\n\nExample:\n\n type: google.api.Service\n config_version: 3\n name: calendar.googleapis.com\n title: Google Calendar API\n apis:\n - name: google.calendar.v3.Calendar\n authentication:\n providers:\n - id: google_calendar_auth\n jwks_uri: https://www.googleapis.com/oauth2/v1/certs\n issuer: https://securetoken.google.com\n rules:\n - selector: \"*\"\n requirements:\n provider_id: google_calendar_auth", + "id": "Service", + "properties": { + "apis": { + "description": "A list of API interfaces exported by this service. Only the `name` field\nof the google.protobuf.Api needs to be provided by the configuration\nauthor, as the remaining fields will be derived from the IDL during the\nnormalization process. It is an error to specify an API interface here\nwhich cannot be resolved against the associated IDL files.", + "items": { + "$ref": "Api" + }, + "type": "array" + }, + "authentication": { + "$ref": "Authentication", + "description": "Auth configuration." + }, + "backend": { + "$ref": "Backend", + "description": "API backend configuration." + }, + "billing": { + "$ref": "Billing", + "description": "Billing configuration." + }, + "configVersion": { + "description": "The semantic version of the service configuration. The config version\naffects the interpretation of the service configuration. For example,\ncertain features are enabled by default for certain config versions.\nThe latest config version is `3`.", + "format": "uint32", + "type": "integer" + }, + "context": { + "$ref": "Context", + "description": "Context configuration." + }, + "control": { + "$ref": "Control", + "description": "Configuration for the service control plane." + }, + "customError": { + "$ref": "CustomError", + "description": "Custom error configuration." + }, + "documentation": { + "$ref": "Documentation", + "description": "Additional API documentation." + }, + "endpoints": { + "description": "Configuration for network endpoints. If this is empty, then an endpoint\nwith the same name as the service is automatically generated to service all\ndefined APIs.", + "items": { + "$ref": "Endpoint" + }, + "type": "array" + }, + "enums": { + "description": "A list of all enum types included in this API service. Enums\nreferenced directly or indirectly by the `apis` are automatically\nincluded. Enums which are not referenced but shall be included\nshould be listed here by name. Example:\n\n enums:\n - name: google.someapi.v1.SomeEnum", + "items": { + "$ref": "Enum" + }, + "type": "array" + }, + "experimental": { + "$ref": "Experimental", + "description": "Experimental configuration." + }, + "http": { + "$ref": "Http", + "description": "HTTP configuration." + }, + "id": { + "description": "A unique ID for a specific instance of this message, typically assigned\nby the client for tracking purpose. If empty, the server may choose to\ngenerate one instead.", + "type": "string" + }, + "logging": { + "$ref": "Logging", + "description": "Logging configuration." + }, + "logs": { + "description": "Defines the logs used by this service.", + "items": { + "$ref": "LogDescriptor" + }, + "type": "array" + }, + "metrics": { + "description": "Defines the metrics used by this service.", + "items": { + "$ref": "MetricDescriptor" + }, + "type": "array" + }, + "monitoredResources": { + "description": "Defines the monitored resources used by this service. This is required\nby the Service.monitoring and Service.logging configurations.", + "items": { + "$ref": "MonitoredResourceDescriptor" + }, + "type": "array" + }, + "monitoring": { + "$ref": "Monitoring", + "description": "Monitoring configuration." + }, + "name": { + "description": "The DNS address at which this service is available,\ne.g. `calendar.googleapis.com`.", + "type": "string" + }, + "producerProjectId": { + "description": "The Google project that owns this service.", + "type": "string" + }, + "quota": { + "$ref": "Quota", + "description": "Quota configuration." + }, + "sourceInfo": { + "$ref": "SourceInfo", + "description": "Output only. The source information for this configuration if available." + }, + "systemParameters": { + "$ref": "SystemParameters", + "description": "System parameter configuration." + }, + "systemTypes": { + "description": "A list of all proto message types included in this API service.\nIt serves similar purpose as [google.api.Service.types], except that\nthese types are not needed by user-defined APIs. Therefore, they will not\nshow up in the generated discovery doc. This field should only be used\nto define system APIs in ESF.", + "items": { + "$ref": "Type" + }, + "type": "array" + }, + "title": { + "description": "The product title for this service.", + "type": "string" + }, + "types": { + "description": "A list of all proto message types included in this API service.\nTypes referenced directly or indirectly by the `apis` are\nautomatically included. Messages which are not referenced but\nshall be included, such as types used by the `google.protobuf.Any` type,\nshould be listed here by name. Example:\n\n types:\n - name: google.protobuf.Int32", + "items": { + "$ref": "Type" + }, + "type": "array" + }, + "usage": { + "$ref": "Usage", + "description": "Configuration controlling usage of this service." + } + }, + "type": "object" + }, + "SourceContext": { + "description": "`SourceContext` represents information about the source of a\nprotobuf element, like the file in which it is defined.", + "id": "SourceContext", + "properties": { + "fileName": { + "description": "The path-qualified name of the .proto file that contained the associated\nprotobuf element. For example: `\"google/protobuf/source_context.proto\"`.", "type": "string" } }, - "id": "Mixin", - "description": "Declares an API Interface to be included in this interface. The including\ninterface must redeclare all the methods from the included interface, but\ndocumentation and options are inherited as follows:\n\n- If after comment and whitespace stripping, the documentation\n string of the redeclared method is empty, it will be inherited\n from the original method.\n\n- Each annotation belonging to the service config (http,\n visibility) which is not set in the redeclared method will be\n inherited.\n\n- If an http annotation is inherited, the path pattern will be\n modified as follows. Any version prefix will be replaced by the\n version of the including interface plus the root path if\n specified.\n\nExample of a simple mixin:\n\n package google.acl.v1;\n service AccessControl {\n // Get the underlying ACL object.\n rpc GetAcl(GetAclRequest) returns (Acl) {\n option (google.api.http).get = \"/v1/{resource=**}:getAcl\";\n }\n }\n\n package google.storage.v2;\n service Storage {\n // rpc GetAcl(GetAclRequest) returns (Acl);\n\n // Get a data record.\n rpc GetData(GetDataRequest) returns (Data) {\n option (google.api.http).get = \"/v2/{resource=**}\";\n }\n }\n\nExample of a mixin configuration:\n\n apis:\n - name: google.storage.v2.Storage\n mixins:\n - name: google.acl.v1.AccessControl\n\nThe mixin construct implies that all methods in `AccessControl` are\nalso declared with same name and request/response types in\n`Storage`. A documentation generator or annotation processor will\nsee the effective `Storage.GetAcl` method after inherting\ndocumentation and annotations as follows:\n\n service Storage {\n // Get the underlying ACL object.\n rpc GetAcl(GetAclRequest) returns (Acl) {\n option (google.api.http).get = \"/v2/{resource=**}:getAcl\";\n }\n ...\n }\n\nNote how the version in the path pattern changed from `v1` to `v2`.\n\nIf the `root` field in the mixin is specified, it should be a\nrelative path under which inherited HTTP paths are placed. Example:\n\n apis:\n - name: google.storage.v2.Storage\n mixins:\n - name: google.acl.v1.AccessControl\n root: acls\n\nThis implies the following inherited HTTP annotation:\n\n service Storage {\n // Get the underlying ACL object.\n rpc GetAcl(GetAclRequest) returns (Acl) {\n option (google.api.http).get = \"/v2/acls/{resource=**}:getAcl\";\n }\n ...\n }", "type": "object" }, - "CustomError": { + "SourceInfo": { + "description": "Source information used to create a Service Config", + "id": "SourceInfo", "properties": { - "types": { - "description": "The list of custom error detail types, e.g. 'google.foo.v1.CustomError'.", - "type": "array", + "sourceFiles": { + "description": "All files used during config generation.", + "items": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "type": "object" + }, + "type": "array" + } + }, + "type": "object" + }, + "Status": { + "description": "The `Status` type defines a logical error model that is suitable for different\nprogramming environments, including REST APIs and RPC APIs. It is used by\n[gRPC](https://github.com/grpc). The error model is designed to be:\n\n- Simple to use and understand for most users\n- Flexible enough to meet unexpected needs\n\n# Overview\n\nThe `Status` message contains three pieces of data: error code, error message,\nand error details. The error code should be an enum value of\ngoogle.rpc.Code, but it may accept additional error codes if needed. The\nerror message should be a developer-facing English message that helps\ndevelopers *understand* and *resolve* the error. If a localized user-facing\nerror message is needed, put the localized message in the error details or\nlocalize it in the client. The optional error details may contain arbitrary\ninformation about the error. There is a predefined set of error detail types\nin the package `google.rpc` that can be used for common error conditions.\n\n# Language mapping\n\nThe `Status` message is the logical representation of the error model, but it\nis not necessarily the actual wire format. When the `Status` message is\nexposed in different client libraries and different wire protocols, it can be\nmapped differently. For example, it will likely be mapped to some exceptions\nin Java, but more likely mapped to some error codes in C.\n\n# Other uses\n\nThe error model and the `Status` message can be used in a variety of\nenvironments, either with or without APIs, to provide a\nconsistent developer experience across different environments.\n\nExample uses of this error model include:\n\n- Partial errors. If a service needs to return partial errors to the client,\n it may embed the `Status` in the normal response to indicate the partial\n errors.\n\n- Workflow errors. A typical workflow has multiple steps. Each step may\n have a `Status` message for error reporting.\n\n- Batch operations. If a client uses batch request and batch response, the\n `Status` message should be used directly inside batch response, one for\n each error sub-response.\n\n- Asynchronous operations. If an API call embeds asynchronous operation\n results in its response, the status of those operations should be\n represented directly using the `Status` message.\n\n- Logging. If some API errors are stored in logs, the message `Status` could\n be used directly after any stripping needed for security/privacy reasons.", + "id": "Status", + "properties": { + "code": { + "description": "The status code, which should be an enum value of google.rpc.Code.", + "format": "int32", + "type": "integer" + }, + "details": { + "description": "A list of messages that carry the error details. There is a common set of\nmessage types for APIs to use.", + "items": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "A developer-facing error message, which should be in English. Any\nuser-facing error message should be localized and sent in the\ngoogle.rpc.Status.details field, or localized by the client.", + "type": "string" + } + }, + "type": "object" + }, + "Step": { + "description": "Represents the status of one operation step.", + "id": "Step", + "properties": { + "description": { + "description": "The short description of the step.", + "type": "string" + }, + "status": { + "description": "The status code.", + "enum": [ + "STATUS_UNSPECIFIED", + "DONE", + "NOT_STARTED", + "IN_PROGRESS", + "FAILED", + "CANCELLED" + ], + "enumDescriptions": [ + "Unspecifed code.", + "The operation or step has completed without errors.", + "The operation or step has not started yet.", + "The operation or step is in progress.", + "The operation or step has completed with errors. If the operation is\nrollbackable, the rollback completed with errors too.", + "The operation or step has completed with cancellation." + ], + "type": "string" + } + }, + "type": "object" + }, + "SystemParameter": { + "description": "Define a parameter's name and location. The parameter may be passed as either\nan HTTP header or a URL query parameter, and if both are passed the behavior\nis implementation-dependent.", + "id": "SystemParameter", + "properties": { + "httpHeader": { + "description": "Define the HTTP header name to use for the parameter. It is case\ninsensitive.", + "type": "string" + }, + "name": { + "description": "Define the name of the parameter, such as \"api_key\" . It is case sensitive.", + "type": "string" + }, + "urlQueryParameter": { + "description": "Define the URL query parameter name to use for the parameter. It is case\nsensitive.", + "type": "string" + } + }, + "type": "object" + }, + "SystemParameterRule": { + "description": "Define a system parameter rule mapping system parameter definitions to\nmethods.", + "id": "SystemParameterRule", + "properties": { + "parameters": { + "description": "Define parameters. Multiple names may be defined for a parameter.\nFor a given method call, only one of them should be used. If multiple\nnames are used the behavior is implementation-dependent.\nIf none of the specified names are present the behavior is\nparameter-dependent.", + "items": { + "$ref": "SystemParameter" + }, + "type": "array" + }, + "selector": { + "description": "Selects the methods to which this rule applies. Use '*' to indicate all\nmethods in all APIs.\n\nRefer to selector for syntax details.", + "type": "string" + } + }, + "type": "object" + }, + "SystemParameters": { + "description": "### System parameter configuration\n\nA system parameter is a special kind of parameter defined by the API\nsystem, not by an individual API. It is typically mapped to an HTTP header\nand/or a URL query parameter. This configuration specifies which methods\nchange the names of the system parameters.", + "id": "SystemParameters", + "properties": { + "rules": { + "description": "Define system parameters.\n\nThe parameters defined here will override the default parameters\nimplemented by the system. If this field is missing from the service\nconfig, default system parameters will be used. Default system parameters\nand names is implementation-dependent.\n\nExample: define api key for all methods\n\n system_parameters\n rules:\n - selector: \"*\"\n parameters:\n - name: api_key\n url_query_parameter: api_key\n\n\nExample: define 2 api key names for a specific method.\n\n system_parameters\n rules:\n - selector: \"/ListShelves\"\n parameters:\n - name: api_key\n http_header: Api-Key1\n - name: api_key\n http_header: Api-Key2\n\n**NOTE:** All service configuration rules follow \"last one wins\" order.", + "items": { + "$ref": "SystemParameterRule" + }, + "type": "array" + } + }, + "type": "object" + }, + "Type": { + "description": "A protocol buffer message type.", + "id": "Type", + "properties": { + "fields": { + "description": "The list of fields.", + "items": { + "$ref": "Field" + }, + "type": "array" + }, + "name": { + "description": "The fully qualified message name.", + "type": "string" + }, + "oneofs": { + "description": "The list of types appearing in `oneof` definitions in this type.", "items": { "type": "string" - } + }, + "type": "array" }, - "rules": { - "description": "The list of custom error rules that apply to individual API messages.\n\n**NOTE:** All service configuration rules follow \"last one wins\" order.", - "type": "array", + "options": { + "description": "The protocol buffer options.", "items": { - "$ref": "CustomErrorRule" - } + "$ref": "Option" + }, + "type": "array" + }, + "sourceContext": { + "$ref": "SourceContext", + "description": "The source context." + }, + "syntax": { + "description": "The source syntax.", + "enum": [ + "SYNTAX_PROTO2", + "SYNTAX_PROTO3" + ], + "enumDescriptions": [ + "Syntax `proto2`.", + "Syntax `proto3`." + ], + "type": "string" } }, - "id": "CustomError", - "description": "Customize service error responses. For example, list any service\nspecific protobuf types that can appear in error detail lists of\nerror responses.\n\nExample:\n\n custom_error:\n types:\n - google.foo.v1.CustomError\n - google.foo.v1.AnotherError", "type": "object" }, - "Http": { + "Usage": { + "description": "Configuration controlling usage of a service.", + "id": "Usage", "properties": { - "fullyDecodeReservedExpansion": { - "description": "When set to true, URL path parmeters will be fully URI-decoded except in\ncases of single segment matches in reserved expansion, where \"%2F\" will be\nleft encoded.\n\nThe default behavior is to not decode RFC 6570 reserved characters in multi\nsegment matches.", - "type": "boolean" + "producerNotificationChannel": { + "description": "The full resource name of a channel used for sending notifications to the\nservice producer.\n\nGoogle Service Management currently only supports\n[Google Cloud Pub/Sub](https://cloud.google.com/pubsub) as a notification\nchannel. To use Google Cloud Pub/Sub as the channel, this must be the name\nof a Cloud Pub/Sub topic that uses the Cloud Pub/Sub topic name format\ndocumented in https://cloud.google.com/pubsub/docs/overview.", + "type": "string" + }, + "requirements": { + "description": "Requirements that must be satisfied before a consumer project can use the\nservice. Each requirement is of the form \u003cservice.name\u003e/\u003crequirement-id\u003e;\nfor example 'serviceusage.googleapis.com/billing-enabled'.", + "items": { + "type": "string" + }, + "type": "array" }, "rules": { - "description": "A list of HTTP configuration rules that apply to individual API methods.\n\n**NOTE:** All service configuration rules follow \"last one wins\" order.", - "type": "array", + "description": "A list of usage rules that apply to individual API methods.\n\n**NOTE:** All service configuration rules follow \"last one wins\" order.", "items": { - "$ref": "HttpRule" - } + "$ref": "UsageRule" + }, + "type": "array" + } + }, + "type": "object" + }, + "UsageRule": { + "description": "Usage configuration rules for the service.\n\nNOTE: Under development.\n\n\nUse this rule to configure unregistered calls for the service. Unregistered\ncalls are calls that do not contain consumer project identity.\n(Example: calls that do not contain an API key).\nBy default, API methods do not allow unregistered calls, and each method call\nmust be identified by a consumer project identity. Use this rule to\nallow/disallow unregistered calls.\n\nExample of an API that wants to allow unregistered calls for entire service.\n\n usage:\n rules:\n - selector: \"*\"\n allow_unregistered_calls: true\n\nExample of a method that wants to allow unregistered calls.\n\n usage:\n rules:\n - selector: \"google.example.library.v1.LibraryService.CreateBook\"\n allow_unregistered_calls: true", + "id": "UsageRule", + "properties": { + "allowUnregisteredCalls": { + "description": "If true, the selected method allows unregistered calls, e.g. calls\nthat don't identify any user or application.", + "type": "boolean" + }, + "selector": { + "description": "Selects the methods to which this rule applies. Use '*' to indicate all\nmethods in all APIs.\n\nRefer to selector for syntax details.", + "type": "string" + }, + "skipServiceControl": { + "description": "If true, the selected method should skip service control and the control\nplane features, such as quota and billing, will not be available.\nThis flag is used by Google Cloud Endpoints to bypass checks for internal\nmethods, such as service health check methods.", + "type": "boolean" } }, - "id": "Http", - "description": "Defines the HTTP configuration for an API service. It contains a list of\nHttpRule, each specifying the mapping of an RPC method\nto one or more HTTP REST API methods.", "type": "object" } }, - "icons": { - "x32": "http://www.google.com/images/icons/product/search-32.gif", - "x16": "http://www.google.com/images/icons/product/search-16.gif" - }, - "protocol": "rest", - "canonicalName": "Service User", - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/cloud-platform": { - "description": "View and manage your data across Google Cloud Platform services" - }, - "https://www.googleapis.com/auth/service.management": { - "description": "Manage your Google API service configuration" - }, - "https://www.googleapis.com/auth/cloud-platform.read-only": { - "description": "View your data across Google Cloud Platform services" - } - } - } - }, - "rootUrl": "https://serviceuser.googleapis.com/", - "ownerDomain": "google.com", - "name": "serviceuser", - "batchPath": "batch", - "title": "Google Service User API", - "ownerName": "Google" -} + "servicePath": "", + "title": "Service User API", + "version": "v1", + "version_module": true +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/serviceuser/v1/serviceuser-gen.go b/vendor/google.golang.org/api/serviceuser/v1/serviceuser-gen.go index 9aaebc2ab..7d9d8c973 100644 --- a/vendor/google.golang.org/api/serviceuser/v1/serviceuser-gen.go +++ b/vendor/google.golang.org/api/serviceuser/v1/serviceuser-gen.go @@ -1,4 +1,4 @@ -// Package serviceuser provides access to the Google Service User API. +// Package serviceuser provides access to the Service User API. // // See https://cloud.google.com/service-management/ // @@ -727,8 +727,35 @@ func (s *BillingDestination) MarshalJSON() ([]byte, error) { // and // `google.rpc.context.OriginContext`. // -// Available context types are defined in package +// Available context types are defined in +// package // `google.rpc.context`. +// +// This also provides mechanism to whitelist any protobuf message +// extension that +// can be sent in grpc metadata using +// “x-goog-ext--bin” +// and +// “x-goog-ext--jspb” format. For example, list any +// service +// specific protobuf types that can appear in grpc metadata as follows +// in your +// yaml file: +// +// Example: +// +// context: +// rules: +// - selector: +// "google.example.library.v1.LibraryService.CreateBook" +// allowed_request_extensions: +// - google.foo.v1.NewExtension +// allowed_response_extensions: +// - google.foo.v1.NewExtension +// +// You can also specify extension ID instead of fully qualified +// extension name +// here. type Context struct { // Rules: A list of RPC context rules that apply to individual API // methods. @@ -764,6 +791,16 @@ func (s *Context) MarshalJSON() ([]byte, error) { // for an individual API // element. type ContextRule struct { + // AllowedRequestExtensions: A list of full type names or extension IDs + // of extensions allowed in grpc + // side channel from client to backend. + AllowedRequestExtensions []string `json:"allowedRequestExtensions,omitempty"` + + // AllowedResponseExtensions: A list of full type names or extension IDs + // of extensions allowed in grpc + // side channel from backend to client. + AllowedResponseExtensions []string `json:"allowedResponseExtensions,omitempty"` + // Provided: A list of full type names of provided contexts. Provided []string `json:"provided,omitempty"` @@ -775,20 +812,22 @@ type ContextRule struct { // Refer to selector for syntax details. Selector string `json:"selector,omitempty"` - // ForceSendFields is a list of field names (e.g. "Provided") to - // unconditionally include in API requests. By default, fields with - // empty values are omitted from API requests. However, any non-pointer, - // non-interface field appearing in ForceSendFields will be sent to the - // server regardless of whether the field is empty or not. This may be - // used to include empty fields in Patch requests. + // ForceSendFields is a list of field names (e.g. + // "AllowedRequestExtensions") to unconditionally include in API + // requests. By default, fields with empty values are omitted from API + // requests. However, any non-pointer, non-interface field appearing in + // ForceSendFields will be sent to the server regardless of whether the + // field is empty or not. This may be used to include empty fields in + // Patch requests. ForceSendFields []string `json:"-"` - // NullFields is a list of field names (e.g. "Provided") to include in - // API requests with the JSON null value. By default, fields with empty - // values are omitted from API requests. However, any field with an - // empty value appearing in NullFields will be sent to the server as - // null. It is an error if a field in this list has a non-empty value. - // This may be used to include null fields in Patch requests. + // NullFields is a list of field names (e.g. "AllowedRequestExtensions") + // to include in API requests with the JSON null value. By default, + // fields with empty values are omitted from API requests. However, any + // field with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. NullFields []string `json:"-"` } @@ -1034,11 +1073,7 @@ type DisableServiceRequest struct { // Text can be excluded from doc using the following // notation: //
(-- internal comment --)
-// Comments can be made conditional using a visibility label. The -// below -// text will be only rendered if the `BETA` label is -// available: -//
(--BETA: comment for BETA users --)
+// // A few directives are available in documentation. Note that // directives must appear on a single line to be properly // identified. The `include` directive includes a markdown file from @@ -2377,8 +2412,6 @@ type MetricDescriptor struct { // // **Grammar** // - // The grammar includes the dimensionless unit `1`, such as `1/s`. - // // The grammar also includes these connectors: // // * `/` division (as an infix operator, e.g. `1/s`). @@ -2388,7 +2421,7 @@ type MetricDescriptor struct { // // Expression = Component { "." Component } { "/" Component } ; // - // Component = [ PREFIX ] UNIT [ Annotation ] + // Component = ( [ PREFIX ] UNIT | "%" ) [ Annotation ] // | Annotation // | "1" // ; @@ -2402,6 +2435,10 @@ type MetricDescriptor struct { // `{requests}/s == 1/s`, `By{transmitted}/s == By/s`. // * `NAME` is a sequence of non-blank printable ASCII characters not // containing '{' or '}'. + // * `1` represents dimensionless value 1, such as in `1/s`. + // * `%` represents dimensionless value 1/100, and annotates values + // giving + // a percentage. Unit string `json:"unit,omitempty"` // ValueType: Whether the measurement is an integer, a floating-point @@ -3557,9 +3594,6 @@ type Service struct { // Usage: Configuration controlling usage of this service. Usage *Usage `json:"usage,omitempty"` - // Visibility: API visibility configuration. - Visibility *Visibility `json:"visibility,omitempty"` - // ForceSendFields is a list of field names (e.g. "Apis") to // unconditionally include in API requests. By default, fields with // empty values are omitted from API requests. However, any non-pointer, @@ -4141,119 +4175,6 @@ func (s *UsageRule) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -// Visibility: `Visibility` defines restrictions for the visibility of -// service -// elements. Restrictions are specified using visibility labels -// (e.g., TRUSTED_TESTER) that are elsewhere linked to users and -// projects. -// -// Users and projects can have access to more than one visibility label. -// The -// effective visibility for multiple labels is the union of each -// label's -// elements, plus any unrestricted elements. -// -// If an element and its parents have no restrictions, visibility -// is -// unconditionally granted. -// -// Example: -// -// visibility: -// rules: -// - selector: google.calendar.Calendar.EnhancedSearch -// restriction: TRUSTED_TESTER -// - selector: google.calendar.Calendar.Delegate -// restriction: GOOGLE_INTERNAL -// -// Here, all methods are publicly visible except for the restricted -// methods -// EnhancedSearch and Delegate. -type Visibility struct { - // Rules: A list of visibility rules that apply to individual API - // elements. - // - // **NOTE:** All service configuration rules follow "last one wins" - // order. - Rules []*VisibilityRule `json:"rules,omitempty"` - - // ForceSendFields is a list of field names (e.g. "Rules") to - // unconditionally include in API requests. By default, fields with - // empty values are omitted from API requests. However, any non-pointer, - // non-interface field appearing in ForceSendFields will be sent to the - // server regardless of whether the field is empty or not. This may be - // used to include empty fields in Patch requests. - ForceSendFields []string `json:"-"` - - // NullFields is a list of field names (e.g. "Rules") to include in API - // requests with the JSON null value. By default, fields with empty - // values are omitted from API requests. However, any field with an - // empty value appearing in NullFields will be sent to the server as - // null. It is an error if a field in this list has a non-empty value. - // This may be used to include null fields in Patch requests. - NullFields []string `json:"-"` -} - -func (s *Visibility) MarshalJSON() ([]byte, error) { - type NoMethod Visibility - raw := NoMethod(*s) - return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) -} - -// VisibilityRule: A visibility rule provides visibility configuration -// for an individual API -// element. -type VisibilityRule struct { - // Restriction: A comma-separated list of visibility labels that apply - // to the `selector`. - // Any of the listed labels can be used to grant the visibility. - // - // If a rule has multiple labels, removing one of the labels but not all - // of - // them can break clients. - // - // Example: - // - // visibility: - // rules: - // - selector: google.calendar.Calendar.EnhancedSearch - // restriction: GOOGLE_INTERNAL, TRUSTED_TESTER - // - // Removing GOOGLE_INTERNAL from this restriction will break clients - // that - // rely on this method and only had access to it through - // GOOGLE_INTERNAL. - Restriction string `json:"restriction,omitempty"` - - // Selector: Selects methods, messages, fields, enums, etc. to which - // this rule applies. - // - // Refer to selector for syntax details. - Selector string `json:"selector,omitempty"` - - // ForceSendFields is a list of field names (e.g. "Restriction") to - // unconditionally include in API requests. By default, fields with - // empty values are omitted from API requests. However, any non-pointer, - // non-interface field appearing in ForceSendFields will be sent to the - // server regardless of whether the field is empty or not. This may be - // used to include empty fields in Patch requests. - ForceSendFields []string `json:"-"` - - // NullFields is a list of field names (e.g. "Restriction") to include - // in API requests with the JSON null value. By default, fields with - // empty values are omitted from API requests. However, any field with - // an empty value appearing in NullFields will be sent to the server as - // null. It is an error if a field in this list has a non-empty value. - // This may be used to include null fields in Patch requests. - NullFields []string `json:"-"` -} - -func (s *VisibilityRule) MarshalJSON() ([]byte, error) { - type NoMethod VisibilityRule - raw := NoMethod(*s) - return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) -} - // method id "serviceuser.projects.services.disable": type ProjectsServicesDisableCall struct { diff --git a/vendor/google.golang.org/api/sheets/v4/sheets-api.json b/vendor/google.golang.org/api/sheets/v4/sheets-api.json index a99d01e7e..92bae3a88 100644 --- a/vendor/google.golang.org/api/sheets/v4/sheets-api.json +++ b/vendor/google.golang.org/api/sheets/v4/sheets-api.json @@ -1,15 +1,1653 @@ { - "version_module": true, + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/drive": { + "description": "View and manage the files in your Google Drive" + }, + "https://www.googleapis.com/auth/drive.file": { + "description": "View and manage Google Drive files and folders that you have opened or created with this app" + }, + "https://www.googleapis.com/auth/drive.readonly": { + "description": "View the files in your Google Drive" + }, + "https://www.googleapis.com/auth/spreadsheets": { + "description": "View and manage your spreadsheets in Google Drive" + }, + "https://www.googleapis.com/auth/spreadsheets.readonly": { + "description": "View your Google Spreadsheets" + } + } + } + }, + "basePath": "", + "baseUrl": "https://sheets.googleapis.com/", + "batchPath": "batch", + "canonicalName": "Sheets", + "description": "Reads and writes Google Sheets.", + "discoveryVersion": "v1", + "documentationLink": "https://developers.google.com/sheets/", + "icons": { + "x16": "http://www.google.com/images/icons/product/search-16.gif", + "x32": "http://www.google.com/images/icons/product/search-32.gif" + }, + "id": "sheets:v4", + "kind": "discovery#restDescription", + "name": "sheets", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "$.xgafv": { + "description": "V1 error format.", + "enum": [ + "1", + "2" + ], + "enumDescriptions": [ + "v1 error format", + "v2 error format" + ], + "location": "query", + "type": "string" + }, + "access_token": { + "description": "OAuth access token.", + "location": "query", + "type": "string" + }, + "alt": { + "default": "json", + "description": "Data format for response.", + "enum": [ + "json", + "media", + "proto" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json", + "Media download with context-dependent Content-Type", + "Responses with Content-Type of application/x-protobuf" + ], + "location": "query", + "type": "string" + }, + "bearer_token": { + "description": "OAuth bearer token.", + "location": "query", + "type": "string" + }, + "callback": { + "description": "JSONP", + "location": "query", + "type": "string" + }, + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "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.", + "location": "query", + "type": "string" + }, + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "pp": { + "default": "true", + "description": "Pretty-print response.", + "location": "query", + "type": "boolean" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", + "location": "query", + "type": "string" + }, + "uploadType": { + "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", + "location": "query", + "type": "string" + }, + "upload_protocol": { + "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", + "location": "query", + "type": "string" + } + }, + "protocol": "rest", + "resources": { + "spreadsheets": { + "methods": { + "batchUpdate": { + "description": "Applies one or more updates to the spreadsheet.\n\nEach request is validated before\nbeing applied. If any request is not valid then the entire request will\nfail and nothing will be applied.\n\nSome requests have replies to\ngive you some information about how\nthey are applied. The replies will mirror the requests. For example,\nif you applied 4 updates and the 3rd one had a reply, then the\nresponse will have 2 empty replies, the actual reply, and another empty\nreply, in that order.\n\nDue to the collaborative nature of spreadsheets, it is not guaranteed that\nthe spreadsheet will reflect exactly your changes after this completes,\nhowever it is guaranteed that the updates in the request will be\napplied together atomically. Your changes may be altered with respect to\ncollaborator changes. If there are no collaborators, the spreadsheet\nshould reflect your changes.", + "flatPath": "v4/spreadsheets/{spreadsheetId}:batchUpdate", + "httpMethod": "POST", + "id": "sheets.spreadsheets.batchUpdate", + "parameterOrder": [ + "spreadsheetId" + ], + "parameters": { + "spreadsheetId": { + "description": "The spreadsheet to apply the updates to.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v4/spreadsheets/{spreadsheetId}:batchUpdate", + "request": { + "$ref": "BatchUpdateSpreadsheetRequest" + }, + "response": { + "$ref": "BatchUpdateSpreadsheetResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/drive", + "https://www.googleapis.com/auth/drive.file", + "https://www.googleapis.com/auth/spreadsheets" + ] + }, + "create": { + "description": "Creates a spreadsheet, returning the newly created spreadsheet.", + "flatPath": "v4/spreadsheets", + "httpMethod": "POST", + "id": "sheets.spreadsheets.create", + "parameterOrder": [], + "parameters": {}, + "path": "v4/spreadsheets", + "request": { + "$ref": "Spreadsheet" + }, + "response": { + "$ref": "Spreadsheet" + }, + "scopes": [ + "https://www.googleapis.com/auth/drive", + "https://www.googleapis.com/auth/drive.file", + "https://www.googleapis.com/auth/spreadsheets" + ] + }, + "get": { + "description": "Returns the spreadsheet at the given ID.\nThe caller must specify the spreadsheet ID.\n\nBy default, data within grids will not be returned.\nYou can include grid data one of two ways:\n\n* Specify a field mask listing your desired fields using the `fields` URL\nparameter in HTTP\n\n* Set the includeGridData\nURL parameter to true. If a field mask is set, the `includeGridData`\nparameter is ignored\n\nFor large spreadsheets, it is recommended to retrieve only the specific\nfields of the spreadsheet that you want.\n\nTo retrieve only subsets of the spreadsheet, use the\nranges URL parameter.\nMultiple ranges can be specified. Limiting the range will\nreturn only the portions of the spreadsheet that intersect the requested\nranges. Ranges are specified using A1 notation.", + "flatPath": "v4/spreadsheets/{spreadsheetId}", + "httpMethod": "GET", + "id": "sheets.spreadsheets.get", + "parameterOrder": [ + "spreadsheetId" + ], + "parameters": { + "includeGridData": { + "description": "True if grid data should be returned.\nThis parameter is ignored if a field mask was set in the request.", + "location": "query", + "type": "boolean" + }, + "ranges": { + "description": "The ranges to retrieve from the spreadsheet.", + "location": "query", + "repeated": true, + "type": "string" + }, + "spreadsheetId": { + "description": "The spreadsheet to request.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v4/spreadsheets/{spreadsheetId}", + "response": { + "$ref": "Spreadsheet" + }, + "scopes": [ + "https://www.googleapis.com/auth/drive", + "https://www.googleapis.com/auth/drive.file", + "https://www.googleapis.com/auth/drive.readonly", + "https://www.googleapis.com/auth/spreadsheets", + "https://www.googleapis.com/auth/spreadsheets.readonly" + ] + }, + "getByDataFilter": { + "description": "Returns the spreadsheet at the given ID.\nThe caller must specify the spreadsheet ID.\n\nThis method differs from GetSpreadsheet in that it allows selecting\nwhich subsets of spreadsheet data to return by specifying a\ndataFilters parameter.\nMultiple DataFilters can be specified. Specifying one or\nmore data filters will return the portions of the spreadsheet that\nintersect ranges matched by any of the filters.\n\nBy default, data within grids will not be returned.\nYou can include grid data one of two ways:\n\n* Specify a field mask listing your desired fields using the `fields` URL\nparameter in HTTP\n\n* Set the includeGridData\nparameter to true. If a field mask is set, the `includeGridData`\nparameter is ignored\n\nFor large spreadsheets, it is recommended to retrieve only the specific\nfields of the spreadsheet that you want.", + "flatPath": "v4/spreadsheets/{spreadsheetId}:getByDataFilter", + "httpMethod": "POST", + "id": "sheets.spreadsheets.getByDataFilter", + "parameterOrder": [ + "spreadsheetId" + ], + "parameters": { + "spreadsheetId": { + "description": "The spreadsheet to request.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v4/spreadsheets/{spreadsheetId}:getByDataFilter", + "request": { + "$ref": "GetSpreadsheetByDataFilterRequest" + }, + "response": { + "$ref": "Spreadsheet" + }, + "scopes": [ + "https://www.googleapis.com/auth/drive", + "https://www.googleapis.com/auth/drive.file", + "https://www.googleapis.com/auth/spreadsheets" + ] + } + }, + "resources": { + "developerMetadata": { + "methods": { + "get": { + "description": "Returns the developer metadata with the specified ID.\nThe caller must specify the spreadsheet ID and the developer metadata's\nunique metadataId.", + "flatPath": "v4/spreadsheets/{spreadsheetId}/developerMetadata/{metadataId}", + "httpMethod": "GET", + "id": "sheets.spreadsheets.developerMetadata.get", + "parameterOrder": [ + "spreadsheetId", + "metadataId" + ], + "parameters": { + "metadataId": { + "description": "The ID of the developer metadata to retrieve.", + "format": "int32", + "location": "path", + "required": true, + "type": "integer" + }, + "spreadsheetId": { + "description": "The ID of the spreadsheet to retrieve metadata from.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v4/spreadsheets/{spreadsheetId}/developerMetadata/{metadataId}", + "response": { + "$ref": "DeveloperMetadata" + }, + "scopes": [ + "https://www.googleapis.com/auth/drive", + "https://www.googleapis.com/auth/drive.file", + "https://www.googleapis.com/auth/spreadsheets" + ] + }, + "search": { + "description": "Returns all developer metadata matching the specified DataFilter.\nIf the provided DataFilter represents a DeveloperMetadataLookup object,\nthis will return all DeveloperMetadata entries selected by it. If the\nDataFilter represents a location in a spreadsheet, this will return all\ndeveloper metadata associated with locations intersecting that region.", + "flatPath": "v4/spreadsheets/{spreadsheetId}/developerMetadata:search", + "httpMethod": "POST", + "id": "sheets.spreadsheets.developerMetadata.search", + "parameterOrder": [ + "spreadsheetId" + ], + "parameters": { + "spreadsheetId": { + "description": "The ID of the spreadsheet to retrieve metadata from.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v4/spreadsheets/{spreadsheetId}/developerMetadata:search", + "request": { + "$ref": "SearchDeveloperMetadataRequest" + }, + "response": { + "$ref": "SearchDeveloperMetadataResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/drive", + "https://www.googleapis.com/auth/drive.file", + "https://www.googleapis.com/auth/spreadsheets" + ] + } + } + }, + "sheets": { + "methods": { + "copyTo": { + "description": "Copies a single sheet from a spreadsheet to another spreadsheet.\nReturns the properties of the newly created sheet.", + "flatPath": "v4/spreadsheets/{spreadsheetId}/sheets/{sheetId}:copyTo", + "httpMethod": "POST", + "id": "sheets.spreadsheets.sheets.copyTo", + "parameterOrder": [ + "spreadsheetId", + "sheetId" + ], + "parameters": { + "sheetId": { + "description": "The ID of the sheet to copy.", + "format": "int32", + "location": "path", + "required": true, + "type": "integer" + }, + "spreadsheetId": { + "description": "The ID of the spreadsheet containing the sheet to copy.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v4/spreadsheets/{spreadsheetId}/sheets/{sheetId}:copyTo", + "request": { + "$ref": "CopySheetToAnotherSpreadsheetRequest" + }, + "response": { + "$ref": "SheetProperties" + }, + "scopes": [ + "https://www.googleapis.com/auth/drive", + "https://www.googleapis.com/auth/drive.file", + "https://www.googleapis.com/auth/spreadsheets" + ] + } + } + }, + "values": { + "methods": { + "append": { + "description": "Appends values to a spreadsheet. The input range is used to search for\nexisting data and find a \"table\" within that range. Values will be\nappended to the next row of the table, starting with the first column of\nthe table. See the\n[guide](/sheets/api/guides/values#appending_values)\nand\n[sample code](/sheets/api/samples/writing#append_values)\nfor specific details of how tables are detected and data is appended.\n\nThe caller must specify the spreadsheet ID, range, and\na valueInputOption. The `valueInputOption` only\ncontrols how the input data will be added to the sheet (column-wise or\nrow-wise), it does not influence what cell the data starts being written\nto.", + "flatPath": "v4/spreadsheets/{spreadsheetId}/values/{range}:append", + "httpMethod": "POST", + "id": "sheets.spreadsheets.values.append", + "parameterOrder": [ + "spreadsheetId", + "range" + ], + "parameters": { + "includeValuesInResponse": { + "description": "Determines if the update response should include the values\nof the cells that were appended. By default, responses\ndo not include the updated values.", + "location": "query", + "type": "boolean" + }, + "insertDataOption": { + "description": "How the input data should be inserted.", + "enum": [ + "OVERWRITE", + "INSERT_ROWS" + ], + "location": "query", + "type": "string" + }, + "range": { + "description": "The A1 notation of a range to search for a logical table of data.\nValues will be appended after the last row of the table.", + "location": "path", + "required": true, + "type": "string" + }, + "responseDateTimeRenderOption": { + "description": "Determines how dates, times, and durations in the response should be\nrendered. This is ignored if response_value_render_option is\nFORMATTED_VALUE.\nThe default dateTime render option is [DateTimeRenderOption.SERIAL_NUMBER].", + "enum": [ + "SERIAL_NUMBER", + "FORMATTED_STRING" + ], + "location": "query", + "type": "string" + }, + "responseValueRenderOption": { + "description": "Determines how values in the response should be rendered.\nThe default render option is ValueRenderOption.FORMATTED_VALUE.", + "enum": [ + "FORMATTED_VALUE", + "UNFORMATTED_VALUE", + "FORMULA" + ], + "location": "query", + "type": "string" + }, + "spreadsheetId": { + "description": "The ID of the spreadsheet to update.", + "location": "path", + "required": true, + "type": "string" + }, + "valueInputOption": { + "description": "How the input data should be interpreted.", + "enum": [ + "INPUT_VALUE_OPTION_UNSPECIFIED", + "RAW", + "USER_ENTERED" + ], + "location": "query", + "type": "string" + } + }, + "path": "v4/spreadsheets/{spreadsheetId}/values/{range}:append", + "request": { + "$ref": "ValueRange" + }, + "response": { + "$ref": "AppendValuesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/drive", + "https://www.googleapis.com/auth/drive.file", + "https://www.googleapis.com/auth/spreadsheets" + ] + }, + "batchClear": { + "description": "Clears one or more ranges of values from a spreadsheet.\nThe caller must specify the spreadsheet ID and one or more ranges.\nOnly values are cleared -- all other properties of the cell (such as\nformatting, data validation, etc..) are kept.", + "flatPath": "v4/spreadsheets/{spreadsheetId}/values:batchClear", + "httpMethod": "POST", + "id": "sheets.spreadsheets.values.batchClear", + "parameterOrder": [ + "spreadsheetId" + ], + "parameters": { + "spreadsheetId": { + "description": "The ID of the spreadsheet to update.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v4/spreadsheets/{spreadsheetId}/values:batchClear", + "request": { + "$ref": "BatchClearValuesRequest" + }, + "response": { + "$ref": "BatchClearValuesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/drive", + "https://www.googleapis.com/auth/drive.file", + "https://www.googleapis.com/auth/spreadsheets" + ] + }, + "batchClearByDataFilter": { + "description": "Clears one or more ranges of values from a spreadsheet.\nThe caller must specify the spreadsheet ID and one or more\nDataFilters. Ranges matching any of the specified data\nfilters will be cleared. Only values are cleared -- all other properties\nof the cell (such as formatting, data validation, etc..) are kept.", + "flatPath": "v4/spreadsheets/{spreadsheetId}/values:batchClearByDataFilter", + "httpMethod": "POST", + "id": "sheets.spreadsheets.values.batchClearByDataFilter", + "parameterOrder": [ + "spreadsheetId" + ], + "parameters": { + "spreadsheetId": { + "description": "The ID of the spreadsheet to update.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v4/spreadsheets/{spreadsheetId}/values:batchClearByDataFilter", + "request": { + "$ref": "BatchClearValuesByDataFilterRequest" + }, + "response": { + "$ref": "BatchClearValuesByDataFilterResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/drive", + "https://www.googleapis.com/auth/drive.file", + "https://www.googleapis.com/auth/spreadsheets" + ] + }, + "batchGet": { + "description": "Returns one or more ranges of values from a spreadsheet.\nThe caller must specify the spreadsheet ID and one or more ranges.", + "flatPath": "v4/spreadsheets/{spreadsheetId}/values:batchGet", + "httpMethod": "GET", + "id": "sheets.spreadsheets.values.batchGet", + "parameterOrder": [ + "spreadsheetId" + ], + "parameters": { + "dateTimeRenderOption": { + "description": "How dates, times, and durations should be represented in the output.\nThis is ignored if value_render_option is\nFORMATTED_VALUE.\nThe default dateTime render option is [DateTimeRenderOption.SERIAL_NUMBER].", + "enum": [ + "SERIAL_NUMBER", + "FORMATTED_STRING" + ], + "location": "query", + "type": "string" + }, + "majorDimension": { + "description": "The major dimension that results should use.\n\nFor example, if the spreadsheet data is: `A1=1,B1=2,A2=3,B2=4`,\nthen requesting `range=A1:B2,majorDimension=ROWS` will return\n`[[1,2],[3,4]]`,\nwhereas requesting `range=A1:B2,majorDimension=COLUMNS` will return\n`[[1,3],[2,4]]`.", + "enum": [ + "DIMENSION_UNSPECIFIED", + "ROWS", + "COLUMNS" + ], + "location": "query", + "type": "string" + }, + "ranges": { + "description": "The A1 notation of the values to retrieve.", + "location": "query", + "repeated": true, + "type": "string" + }, + "spreadsheetId": { + "description": "The ID of the spreadsheet to retrieve data from.", + "location": "path", + "required": true, + "type": "string" + }, + "valueRenderOption": { + "description": "How values should be represented in the output.\nThe default render option is ValueRenderOption.FORMATTED_VALUE.", + "enum": [ + "FORMATTED_VALUE", + "UNFORMATTED_VALUE", + "FORMULA" + ], + "location": "query", + "type": "string" + } + }, + "path": "v4/spreadsheets/{spreadsheetId}/values:batchGet", + "response": { + "$ref": "BatchGetValuesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/drive", + "https://www.googleapis.com/auth/drive.file", + "https://www.googleapis.com/auth/drive.readonly", + "https://www.googleapis.com/auth/spreadsheets", + "https://www.googleapis.com/auth/spreadsheets.readonly" + ] + }, + "batchGetByDataFilter": { + "description": "Returns one or more ranges of values that match the specified data filters.\nThe caller must specify the spreadsheet ID and one or more\nDataFilters. Ranges that match any of the data filters in\nthe request will be returned.", + "flatPath": "v4/spreadsheets/{spreadsheetId}/values:batchGetByDataFilter", + "httpMethod": "POST", + "id": "sheets.spreadsheets.values.batchGetByDataFilter", + "parameterOrder": [ + "spreadsheetId" + ], + "parameters": { + "spreadsheetId": { + "description": "The ID of the spreadsheet to retrieve data from.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v4/spreadsheets/{spreadsheetId}/values:batchGetByDataFilter", + "request": { + "$ref": "BatchGetValuesByDataFilterRequest" + }, + "response": { + "$ref": "BatchGetValuesByDataFilterResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/drive", + "https://www.googleapis.com/auth/drive.file", + "https://www.googleapis.com/auth/spreadsheets" + ] + }, + "batchUpdate": { + "description": "Sets values in one or more ranges of a spreadsheet.\nThe caller must specify the spreadsheet ID,\na valueInputOption, and one or more\nValueRanges.", + "flatPath": "v4/spreadsheets/{spreadsheetId}/values:batchUpdate", + "httpMethod": "POST", + "id": "sheets.spreadsheets.values.batchUpdate", + "parameterOrder": [ + "spreadsheetId" + ], + "parameters": { + "spreadsheetId": { + "description": "The ID of the spreadsheet to update.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v4/spreadsheets/{spreadsheetId}/values:batchUpdate", + "request": { + "$ref": "BatchUpdateValuesRequest" + }, + "response": { + "$ref": "BatchUpdateValuesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/drive", + "https://www.googleapis.com/auth/drive.file", + "https://www.googleapis.com/auth/spreadsheets" + ] + }, + "batchUpdateByDataFilter": { + "description": "Sets values in one or more ranges of a spreadsheet.\nThe caller must specify the spreadsheet ID,\na valueInputOption, and one or more\nDataFilterValueRanges.", + "flatPath": "v4/spreadsheets/{spreadsheetId}/values:batchUpdateByDataFilter", + "httpMethod": "POST", + "id": "sheets.spreadsheets.values.batchUpdateByDataFilter", + "parameterOrder": [ + "spreadsheetId" + ], + "parameters": { + "spreadsheetId": { + "description": "The ID of the spreadsheet to update.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v4/spreadsheets/{spreadsheetId}/values:batchUpdateByDataFilter", + "request": { + "$ref": "BatchUpdateValuesByDataFilterRequest" + }, + "response": { + "$ref": "BatchUpdateValuesByDataFilterResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/drive", + "https://www.googleapis.com/auth/drive.file", + "https://www.googleapis.com/auth/spreadsheets" + ] + }, + "clear": { + "description": "Clears values from a spreadsheet.\nThe caller must specify the spreadsheet ID and range.\nOnly values are cleared -- all other properties of the cell (such as\nformatting, data validation, etc..) are kept.", + "flatPath": "v4/spreadsheets/{spreadsheetId}/values/{range}:clear", + "httpMethod": "POST", + "id": "sheets.spreadsheets.values.clear", + "parameterOrder": [ + "spreadsheetId", + "range" + ], + "parameters": { + "range": { + "description": "The A1 notation of the values to clear.", + "location": "path", + "required": true, + "type": "string" + }, + "spreadsheetId": { + "description": "The ID of the spreadsheet to update.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v4/spreadsheets/{spreadsheetId}/values/{range}:clear", + "request": { + "$ref": "ClearValuesRequest" + }, + "response": { + "$ref": "ClearValuesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/drive", + "https://www.googleapis.com/auth/drive.file", + "https://www.googleapis.com/auth/spreadsheets" + ] + }, + "get": { + "description": "Returns a range of values from a spreadsheet.\nThe caller must specify the spreadsheet ID and a range.", + "flatPath": "v4/spreadsheets/{spreadsheetId}/values/{range}", + "httpMethod": "GET", + "id": "sheets.spreadsheets.values.get", + "parameterOrder": [ + "spreadsheetId", + "range" + ], + "parameters": { + "dateTimeRenderOption": { + "description": "How dates, times, and durations should be represented in the output.\nThis is ignored if value_render_option is\nFORMATTED_VALUE.\nThe default dateTime render option is [DateTimeRenderOption.SERIAL_NUMBER].", + "enum": [ + "SERIAL_NUMBER", + "FORMATTED_STRING" + ], + "location": "query", + "type": "string" + }, + "majorDimension": { + "description": "The major dimension that results should use.\n\nFor example, if the spreadsheet data is: `A1=1,B1=2,A2=3,B2=4`,\nthen requesting `range=A1:B2,majorDimension=ROWS` will return\n`[[1,2],[3,4]]`,\nwhereas requesting `range=A1:B2,majorDimension=COLUMNS` will return\n`[[1,3],[2,4]]`.", + "enum": [ + "DIMENSION_UNSPECIFIED", + "ROWS", + "COLUMNS" + ], + "location": "query", + "type": "string" + }, + "range": { + "description": "The A1 notation of the values to retrieve.", + "location": "path", + "required": true, + "type": "string" + }, + "spreadsheetId": { + "description": "The ID of the spreadsheet to retrieve data from.", + "location": "path", + "required": true, + "type": "string" + }, + "valueRenderOption": { + "description": "How values should be represented in the output.\nThe default render option is ValueRenderOption.FORMATTED_VALUE.", + "enum": [ + "FORMATTED_VALUE", + "UNFORMATTED_VALUE", + "FORMULA" + ], + "location": "query", + "type": "string" + } + }, + "path": "v4/spreadsheets/{spreadsheetId}/values/{range}", + "response": { + "$ref": "ValueRange" + }, + "scopes": [ + "https://www.googleapis.com/auth/drive", + "https://www.googleapis.com/auth/drive.file", + "https://www.googleapis.com/auth/drive.readonly", + "https://www.googleapis.com/auth/spreadsheets", + "https://www.googleapis.com/auth/spreadsheets.readonly" + ] + }, + "update": { + "description": "Sets values in a range of a spreadsheet.\nThe caller must specify the spreadsheet ID, range, and\na valueInputOption.", + "flatPath": "v4/spreadsheets/{spreadsheetId}/values/{range}", + "httpMethod": "PUT", + "id": "sheets.spreadsheets.values.update", + "parameterOrder": [ + "spreadsheetId", + "range" + ], + "parameters": { + "includeValuesInResponse": { + "description": "Determines if the update response should include the values\nof the cells that were updated. By default, responses\ndo not include the updated values.\nIf the range to write was larger than than the range actually written,\nthe response will include all values in the requested range (excluding\ntrailing empty rows and columns).", + "location": "query", + "type": "boolean" + }, + "range": { + "description": "The A1 notation of the values to update.", + "location": "path", + "required": true, + "type": "string" + }, + "responseDateTimeRenderOption": { + "description": "Determines how dates, times, and durations in the response should be\nrendered. This is ignored if response_value_render_option is\nFORMATTED_VALUE.\nThe default dateTime render option is [DateTimeRenderOption.SERIAL_NUMBER].", + "enum": [ + "SERIAL_NUMBER", + "FORMATTED_STRING" + ], + "location": "query", + "type": "string" + }, + "responseValueRenderOption": { + "description": "Determines how values in the response should be rendered.\nThe default render option is ValueRenderOption.FORMATTED_VALUE.", + "enum": [ + "FORMATTED_VALUE", + "UNFORMATTED_VALUE", + "FORMULA" + ], + "location": "query", + "type": "string" + }, + "spreadsheetId": { + "description": "The ID of the spreadsheet to update.", + "location": "path", + "required": true, + "type": "string" + }, + "valueInputOption": { + "description": "How the input data should be interpreted.", + "enum": [ + "INPUT_VALUE_OPTION_UNSPECIFIED", + "RAW", + "USER_ENTERED" + ], + "location": "query", + "type": "string" + } + }, + "path": "v4/spreadsheets/{spreadsheetId}/values/{range}", + "request": { + "$ref": "ValueRange" + }, + "response": { + "$ref": "UpdateValuesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/drive", + "https://www.googleapis.com/auth/drive.file", + "https://www.googleapis.com/auth/spreadsheets" + ] + } + } + } + } + } + }, + "revision": "20180313", + "rootUrl": "https://sheets.googleapis.com/", "schemas": { - "BatchUpdateValuesByDataFilterResponse": { - "description": "The response when updating a range of values in a spreadsheet.", - "type": "object", + "AddBandingRequest": { + "description": "Adds a new banded range to the spreadsheet.", + "id": "AddBandingRequest", "properties": { - "totalUpdatedSheets": { - "description": "The total number of sheets where at least one cell in the sheet was\nupdated.", + "bandedRange": { + "$ref": "BandedRange", + "description": "The banded range to add. The bandedRangeId\nfield is optional; if one is not set, an id will be randomly generated. (It\nis an error to specify the ID of a range that already exists.)" + } + }, + "type": "object" + }, + "AddBandingResponse": { + "description": "The result of adding a banded range.", + "id": "AddBandingResponse", + "properties": { + "bandedRange": { + "$ref": "BandedRange", + "description": "The banded range that was added." + } + }, + "type": "object" + }, + "AddChartRequest": { + "description": "Adds a chart to a sheet in the spreadsheet.", + "id": "AddChartRequest", + "properties": { + "chart": { + "$ref": "EmbeddedChart", + "description": "The chart that should be added to the spreadsheet, including the position\nwhere it should be placed. The chartId\nfield is optional; if one is not set, an id will be randomly generated. (It\nis an error to specify the ID of a chart that already exists.)" + } + }, + "type": "object" + }, + "AddChartResponse": { + "description": "The result of adding a chart to a spreadsheet.", + "id": "AddChartResponse", + "properties": { + "chart": { + "$ref": "EmbeddedChart", + "description": "The newly added chart." + } + }, + "type": "object" + }, + "AddConditionalFormatRuleRequest": { + "description": "Adds a new conditional format rule at the given index.\nAll subsequent rules' indexes are incremented.", + "id": "AddConditionalFormatRuleRequest", + "properties": { + "index": { + "description": "The zero-based index where the rule should be inserted.", "format": "int32", "type": "integer" }, + "rule": { + "$ref": "ConditionalFormatRule", + "description": "The rule to add." + } + }, + "type": "object" + }, + "AddFilterViewRequest": { + "description": "Adds a filter view.", + "id": "AddFilterViewRequest", + "properties": { + "filter": { + "$ref": "FilterView", + "description": "The filter to add. The filterViewId\nfield is optional; if one is not set, an id will be randomly generated. (It\nis an error to specify the ID of a filter that already exists.)" + } + }, + "type": "object" + }, + "AddFilterViewResponse": { + "description": "The result of adding a filter view.", + "id": "AddFilterViewResponse", + "properties": { + "filter": { + "$ref": "FilterView", + "description": "The newly added filter view." + } + }, + "type": "object" + }, + "AddNamedRangeRequest": { + "description": "Adds a named range to the spreadsheet.", + "id": "AddNamedRangeRequest", + "properties": { + "namedRange": { + "$ref": "NamedRange", + "description": "The named range to add. The namedRangeId\nfield is optional; if one is not set, an id will be randomly generated. (It\nis an error to specify the ID of a range that already exists.)" + } + }, + "type": "object" + }, + "AddNamedRangeResponse": { + "description": "The result of adding a named range.", + "id": "AddNamedRangeResponse", + "properties": { + "namedRange": { + "$ref": "NamedRange", + "description": "The named range to add." + } + }, + "type": "object" + }, + "AddProtectedRangeRequest": { + "description": "Adds a new protected range.", + "id": "AddProtectedRangeRequest", + "properties": { + "protectedRange": { + "$ref": "ProtectedRange", + "description": "The protected range to be added. The\nprotectedRangeId field is optional; if\none is not set, an id will be randomly generated. (It is an error to\nspecify the ID of a range that already exists.)" + } + }, + "type": "object" + }, + "AddProtectedRangeResponse": { + "description": "The result of adding a new protected range.", + "id": "AddProtectedRangeResponse", + "properties": { + "protectedRange": { + "$ref": "ProtectedRange", + "description": "The newly added protected range." + } + }, + "type": "object" + }, + "AddSheetRequest": { + "description": "Adds a new sheet.\nWhen a sheet is added at a given index,\nall subsequent sheets' indexes are incremented.\nTo add an object sheet, use AddChartRequest instead and specify\nEmbeddedObjectPosition.sheetId or\nEmbeddedObjectPosition.newSheet.", + "id": "AddSheetRequest", + "properties": { + "properties": { + "$ref": "SheetProperties", + "description": "The properties the new sheet should have.\nAll properties are optional.\nThe sheetId field is optional; if one is not\nset, an id will be randomly generated. (It is an error to specify the ID\nof a sheet that already exists.)" + } + }, + "type": "object" + }, + "AddSheetResponse": { + "description": "The result of adding a sheet.", + "id": "AddSheetResponse", + "properties": { + "properties": { + "$ref": "SheetProperties", + "description": "The properties of the newly added sheet." + } + }, + "type": "object" + }, + "AppendCellsRequest": { + "description": "Adds new cells after the last row with data in a sheet,\ninserting new rows into the sheet if necessary.", + "id": "AppendCellsRequest", + "properties": { + "fields": { + "description": "The fields of CellData that should be updated.\nAt least one field must be specified.\nThe root is the CellData; 'row.values.' should not be specified.\nA single `\"*\"` can be used as short-hand for listing every field.", + "format": "google-fieldmask", + "type": "string" + }, + "rows": { + "description": "The data to append.", + "items": { + "$ref": "RowData" + }, + "type": "array" + }, + "sheetId": { + "description": "The sheet ID to append the data to.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "AppendDimensionRequest": { + "description": "Appends rows or columns to the end of a sheet.", + "id": "AppendDimensionRequest", + "properties": { + "dimension": { + "description": "Whether rows or columns should be appended.", + "enum": [ + "DIMENSION_UNSPECIFIED", + "ROWS", + "COLUMNS" + ], + "enumDescriptions": [ + "The default value, do not use.", + "Operates on the rows of a sheet.", + "Operates on the columns of a sheet." + ], + "type": "string" + }, + "length": { + "description": "The number of rows or columns to append.", + "format": "int32", + "type": "integer" + }, + "sheetId": { + "description": "The sheet to append rows or columns to.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "AppendValuesResponse": { + "description": "The response when updating a range of values in a spreadsheet.", + "id": "AppendValuesResponse", + "properties": { + "spreadsheetId": { + "description": "The spreadsheet the updates were applied to.", + "type": "string" + }, + "tableRange": { + "description": "The range (in A1 notation) of the table that values are being appended to\n(before the values were appended).\nEmpty if no table was found.", + "type": "string" + }, + "updates": { + "$ref": "UpdateValuesResponse", + "description": "Information about the updates that were applied." + } + }, + "type": "object" + }, + "AutoFillRequest": { + "description": "Fills in more data based on existing data.", + "id": "AutoFillRequest", + "properties": { + "range": { + "$ref": "GridRange", + "description": "The range to autofill. This will examine the range and detect\nthe location that has data and automatically fill that data\nin to the rest of the range." + }, + "sourceAndDestination": { + "$ref": "SourceAndDestination", + "description": "The source and destination areas to autofill.\nThis explicitly lists the source of the autofill and where to\nextend that data." + }, + "useAlternateSeries": { + "description": "True if we should generate data with the \"alternate\" series.\nThis differs based on the type and amount of source data.", + "type": "boolean" + } + }, + "type": "object" + }, + "AutoResizeDimensionsRequest": { + "description": "Automatically resizes one or more dimensions based on the contents\nof the cells in that dimension.", + "id": "AutoResizeDimensionsRequest", + "properties": { + "dimensions": { + "$ref": "DimensionRange", + "description": "The dimensions to automatically resize." + } + }, + "type": "object" + }, + "BandedRange": { + "description": "A banded (alternating colors) range in a sheet.", + "id": "BandedRange", + "properties": { + "bandedRangeId": { + "description": "The id of the banded range.", + "format": "int32", + "type": "integer" + }, + "columnProperties": { + "$ref": "BandingProperties", + "description": "Properties for column bands. These properties will be applied on a column-\nby-column basis throughout all the columns in the range. At least one of\nrow_properties or column_properties must be specified." + }, + "range": { + "$ref": "GridRange", + "description": "The range over which these properties are applied." + }, + "rowProperties": { + "$ref": "BandingProperties", + "description": "Properties for row bands. These properties will be applied on a row-by-row\nbasis throughout all the rows in the range. At least one of\nrow_properties or column_properties must be specified." + } + }, + "type": "object" + }, + "BandingProperties": { + "description": "Properties referring a single dimension (either row or column). If both\nBandedRange.row_properties and BandedRange.column_properties are\nset, the fill colors are applied to cells according to the following rules:\n\n* header_color and footer_color take priority over band colors.\n* first_band_color takes priority over second_band_color.\n* row_properties takes priority over column_properties.\n\nFor example, the first row color takes priority over the first column\ncolor, but the first column color takes priority over the second row color.\nSimilarly, the row header takes priority over the column header in the\ntop left cell, but the column header takes priority over the first row\ncolor if the row header is not set.", + "id": "BandingProperties", + "properties": { + "firstBandColor": { + "$ref": "Color", + "description": "The first color that is alternating. (Required)" + }, + "footerColor": { + "$ref": "Color", + "description": "The color of the last row or column. If this field is not set, the last\nrow or column will be filled with either first_band_color or\nsecond_band_color, depending on the color of the previous row or\ncolumn." + }, + "headerColor": { + "$ref": "Color", + "description": "The color of the first row or column. If this field is set, the first\nrow or column will be filled with this color and the colors will\nalternate between first_band_color and second_band_color starting\nfrom the second row or column. Otherwise, the first row or column will be\nfilled with first_band_color and the colors will proceed to alternate\nas they normally would." + }, + "secondBandColor": { + "$ref": "Color", + "description": "The second color that is alternating. (Required)" + } + }, + "type": "object" + }, + "BasicChartAxis": { + "description": "An axis of the chart.\nA chart may not have more than one axis per\naxis position.", + "id": "BasicChartAxis", + "properties": { + "format": { + "$ref": "TextFormat", + "description": "The format of the title.\nOnly valid if the axis is not associated with the domain." + }, + "position": { + "description": "The position of this axis.", + "enum": [ + "BASIC_CHART_AXIS_POSITION_UNSPECIFIED", + "BOTTOM_AXIS", + "LEFT_AXIS", + "RIGHT_AXIS" + ], + "enumDescriptions": [ + "Default value, do not use.", + "The axis rendered at the bottom of a chart.\nFor most charts, this is the standard major axis.\nFor bar charts, this is a minor axis.", + "The axis rendered at the left of a chart.\nFor most charts, this is a minor axis.\nFor bar charts, this is the standard major axis.", + "The axis rendered at the right of a chart.\nFor most charts, this is a minor axis.\nFor bar charts, this is an unusual major axis." + ], + "type": "string" + }, + "title": { + "description": "The title of this axis. If set, this overrides any title inferred\nfrom headers of the data.", + "type": "string" + }, + "titleTextPosition": { + "$ref": "TextPosition", + "description": "The axis title text position." + } + }, + "type": "object" + }, + "BasicChartDomain": { + "description": "The domain of a chart.\nFor example, if charting stock prices over time, this would be the date.", + "id": "BasicChartDomain", + "properties": { + "domain": { + "$ref": "ChartData", + "description": "The data of the domain. For example, if charting stock prices over time,\nthis is the data representing the dates." + }, + "reversed": { + "description": "True to reverse the order of the domain values (horizontal axis).", + "type": "boolean" + } + }, + "type": "object" + }, + "BasicChartSeries": { + "description": "A single series of data in a chart.\nFor example, if charting stock prices over time, multiple series may exist,\none for the \"Open Price\", \"High Price\", \"Low Price\" and \"Close Price\".", + "id": "BasicChartSeries", + "properties": { + "lineStyle": { + "$ref": "LineStyle", + "description": "The line style of this series. Valid only if the\nchartType is AREA,\nLINE, or SCATTER.\nCOMBO charts are also supported if the\nseries chart type is\nAREA or LINE." + }, + "series": { + "$ref": "ChartData", + "description": "The data being visualized in this chart series." + }, + "targetAxis": { + "description": "The minor axis that will specify the range of values for this series.\nFor example, if charting stocks over time, the \"Volume\" series\nmay want to be pinned to the right with the prices pinned to the left,\nbecause the scale of trading volume is different than the scale of\nprices.\nIt is an error to specify an axis that isn't a valid minor axis\nfor the chart's type.", + "enum": [ + "BASIC_CHART_AXIS_POSITION_UNSPECIFIED", + "BOTTOM_AXIS", + "LEFT_AXIS", + "RIGHT_AXIS" + ], + "enumDescriptions": [ + "Default value, do not use.", + "The axis rendered at the bottom of a chart.\nFor most charts, this is the standard major axis.\nFor bar charts, this is a minor axis.", + "The axis rendered at the left of a chart.\nFor most charts, this is a minor axis.\nFor bar charts, this is the standard major axis.", + "The axis rendered at the right of a chart.\nFor most charts, this is a minor axis.\nFor bar charts, this is an unusual major axis." + ], + "type": "string" + }, + "type": { + "description": "The type of this series. Valid only if the\nchartType is\nCOMBO.\nDifferent types will change the way the series is visualized.\nOnly LINE, AREA,\nand COLUMN are supported.", + "enum": [ + "BASIC_CHART_TYPE_UNSPECIFIED", + "BAR", + "LINE", + "AREA", + "COLUMN", + "SCATTER", + "COMBO", + "STEPPED_AREA" + ], + "enumDescriptions": [ + "Default value, do not use.", + "A \u003ca href=\"/chart/interactive/docs/gallery/barchart\"\u003ebar chart\u003c/a\u003e.", + "A \u003ca href=\"/chart/interactive/docs/gallery/linechart\"\u003eline chart\u003c/a\u003e.", + "An \u003ca href=\"/chart/interactive/docs/gallery/areachart\"\u003earea chart\u003c/a\u003e.", + "A \u003ca href=\"/chart/interactive/docs/gallery/columnchart\"\u003ecolumn chart\u003c/a\u003e.", + "A \u003ca href=\"/chart/interactive/docs/gallery/scatterchart\"\u003escatter chart\u003c/a\u003e.", + "A \u003ca href=\"/chart/interactive/docs/gallery/combochart\"\u003ecombo chart\u003c/a\u003e.", + "A \u003ca href=\"/chart/interactive/docs/gallery/steppedareachart\"\u003estepped area chart\u003c/a\u003e." + ], + "type": "string" + } + }, + "type": "object" + }, + "BasicChartSpec": { + "description": "The specification for a basic chart. See BasicChartType for the list\nof charts this supports.", + "id": "BasicChartSpec", + "properties": { + "axis": { + "description": "The axis on the chart.", + "items": { + "$ref": "BasicChartAxis" + }, + "type": "array" + }, + "chartType": { + "description": "The type of the chart.", + "enum": [ + "BASIC_CHART_TYPE_UNSPECIFIED", + "BAR", + "LINE", + "AREA", + "COLUMN", + "SCATTER", + "COMBO", + "STEPPED_AREA" + ], + "enumDescriptions": [ + "Default value, do not use.", + "A \u003ca href=\"/chart/interactive/docs/gallery/barchart\"\u003ebar chart\u003c/a\u003e.", + "A \u003ca href=\"/chart/interactive/docs/gallery/linechart\"\u003eline chart\u003c/a\u003e.", + "An \u003ca href=\"/chart/interactive/docs/gallery/areachart\"\u003earea chart\u003c/a\u003e.", + "A \u003ca href=\"/chart/interactive/docs/gallery/columnchart\"\u003ecolumn chart\u003c/a\u003e.", + "A \u003ca href=\"/chart/interactive/docs/gallery/scatterchart\"\u003escatter chart\u003c/a\u003e.", + "A \u003ca href=\"/chart/interactive/docs/gallery/combochart\"\u003ecombo chart\u003c/a\u003e.", + "A \u003ca href=\"/chart/interactive/docs/gallery/steppedareachart\"\u003estepped area chart\u003c/a\u003e." + ], + "type": "string" + }, + "compareMode": { + "description": "The behavior of tooltips and data highlighting when hovering on data and\nchart area.", + "enum": [ + "BASIC_CHART_COMPARE_MODE_UNSPECIFIED", + "DATUM", + "CATEGORY" + ], + "enumDescriptions": [ + "Default value, do not use.", + "Only the focused data element is highlighted and shown in the tooltip.", + "All data elements with the same category (e.g., domain value) are\nhighlighted and shown in the tooltip." + ], + "type": "string" + }, + "domains": { + "description": "The domain of data this is charting.\nOnly a single domain is supported.", + "items": { + "$ref": "BasicChartDomain" + }, + "type": "array" + }, + "headerCount": { + "description": "The number of rows or columns in the data that are \"headers\".\nIf not set, Google Sheets will guess how many rows are headers based\non the data.\n\n(Note that BasicChartAxis.title may override the axis title\n inferred from the header values.)", + "format": "int32", + "type": "integer" + }, + "interpolateNulls": { + "description": "If some values in a series are missing, gaps may appear in the chart (e.g,\nsegments of lines in a line chart will be missing). To eliminate these\ngaps set this to true.\nApplies to Line, Area, and Combo charts.", + "type": "boolean" + }, + "legendPosition": { + "description": "The position of the chart legend.", + "enum": [ + "BASIC_CHART_LEGEND_POSITION_UNSPECIFIED", + "BOTTOM_LEGEND", + "LEFT_LEGEND", + "RIGHT_LEGEND", + "TOP_LEGEND", + "NO_LEGEND" + ], + "enumDescriptions": [ + "Default value, do not use.", + "The legend is rendered on the bottom of the chart.", + "The legend is rendered on the left of the chart.", + "The legend is rendered on the right of the chart.", + "The legend is rendered on the top of the chart.", + "No legend is rendered." + ], + "type": "string" + }, + "lineSmoothing": { + "description": "Gets whether all lines should be rendered smooth or straight by default.\nApplies to Line charts.", + "type": "boolean" + }, + "series": { + "description": "The data this chart is visualizing.", + "items": { + "$ref": "BasicChartSeries" + }, + "type": "array" + }, + "stackedType": { + "description": "The stacked type for charts that support vertical stacking.\nApplies to Area, Bar, Column, Combo, and Stepped Area charts.", + "enum": [ + "BASIC_CHART_STACKED_TYPE_UNSPECIFIED", + "NOT_STACKED", + "STACKED", + "PERCENT_STACKED" + ], + "enumDescriptions": [ + "Default value, do not use.", + "Series are not stacked.", + "Series values are stacked, each value is rendered vertically beginning\nfrom the top of the value below it.", + "Vertical stacks are stretched to reach the top of the chart, with\nvalues laid out as percentages of each other." + ], + "type": "string" + }, + "threeDimensional": { + "description": "True to make the chart 3D.\nApplies to Bar and Column charts.", + "type": "boolean" + } + }, + "type": "object" + }, + "BasicFilter": { + "description": "The default filter associated with a sheet.", + "id": "BasicFilter", + "properties": { + "criteria": { + "additionalProperties": { + "$ref": "FilterCriteria" + }, + "description": "The criteria for showing/hiding values per column.\nThe map's key is the column index, and the value is the criteria for\nthat column.", + "type": "object" + }, + "range": { + "$ref": "GridRange", + "description": "The range the filter covers." + }, + "sortSpecs": { + "description": "The sort order per column. Later specifications are used when values\nare equal in the earlier specifications.", + "items": { + "$ref": "SortSpec" + }, + "type": "array" + } + }, + "type": "object" + }, + "BatchClearValuesByDataFilterRequest": { + "description": "The request for clearing more than one range selected by a\nDataFilter in a spreadsheet.", + "id": "BatchClearValuesByDataFilterRequest", + "properties": { + "dataFilters": { + "description": "The DataFilters used to determine which ranges to clear.", + "items": { + "$ref": "DataFilter" + }, + "type": "array" + } + }, + "type": "object" + }, + "BatchClearValuesByDataFilterResponse": { + "description": "The response when clearing a range of values selected with\nDataFilters in a spreadsheet.", + "id": "BatchClearValuesByDataFilterResponse", + "properties": { + "clearedRanges": { + "description": "The ranges that were cleared, in A1 notation.\n(If the requests were for an unbounded range or a ranger larger\n than the bounds of the sheet, this will be the actual ranges\n that were cleared, bounded to the sheet's limits.)", + "items": { + "type": "string" + }, + "type": "array" + }, + "spreadsheetId": { + "description": "The spreadsheet the updates were applied to.", + "type": "string" + } + }, + "type": "object" + }, + "BatchClearValuesRequest": { + "description": "The request for clearing more than one range of values in a spreadsheet.", + "id": "BatchClearValuesRequest", + "properties": { + "ranges": { + "description": "The ranges to clear, in A1 notation.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "BatchClearValuesResponse": { + "description": "The response when clearing a range of values in a spreadsheet.", + "id": "BatchClearValuesResponse", + "properties": { + "clearedRanges": { + "description": "The ranges that were cleared, in A1 notation.\n(If the requests were for an unbounded range or a ranger larger\n than the bounds of the sheet, this will be the actual ranges\n that were cleared, bounded to the sheet's limits.)", + "items": { + "type": "string" + }, + "type": "array" + }, + "spreadsheetId": { + "description": "The spreadsheet the updates were applied to.", + "type": "string" + } + }, + "type": "object" + }, + "BatchGetValuesByDataFilterRequest": { + "description": "The request for retrieving a range of values in a spreadsheet selected by a\nset of DataFilters.", + "id": "BatchGetValuesByDataFilterRequest", + "properties": { + "dataFilters": { + "description": "The data filters used to match the ranges of values to retrieve. Ranges\nthat match any of the specified data filters will be included in the\nresponse.", + "items": { + "$ref": "DataFilter" + }, + "type": "array" + }, + "dateTimeRenderOption": { + "description": "How dates, times, and durations should be represented in the output.\nThis is ignored if value_render_option is\nFORMATTED_VALUE.\nThe default dateTime render option is [DateTimeRenderOption.SERIAL_NUMBER].", + "enum": [ + "SERIAL_NUMBER", + "FORMATTED_STRING" + ], + "enumDescriptions": [ + "Instructs date, time, datetime, and duration fields to be output\nas doubles in \"serial number\" format, as popularized by Lotus 1-2-3.\nThe whole number portion of the value (left of the decimal) counts\nthe days since December 30th 1899. The fractional portion (right of\nthe decimal) counts the time as a fraction of the day. For example,\nJanuary 1st 1900 at noon would be 2.5, 2 because it's 2 days after\nDecember 30st 1899, and .5 because noon is half a day. February 1st\n1900 at 3pm would be 33.625. This correctly treats the year 1900 as\nnot a leap year.", + "Instructs date, time, datetime, and duration fields to be output\nas strings in their given number format (which is dependent\non the spreadsheet locale)." + ], + "type": "string" + }, + "majorDimension": { + "description": "The major dimension that results should use.\n\nFor example, if the spreadsheet data is: `A1=1,B1=2,A2=3,B2=4`,\nthen a request that selects that range and sets `majorDimension=ROWS` will\nreturn `[[1,2],[3,4]]`,\nwhereas a request that sets `majorDimension=COLUMNS` will return\n`[[1,3],[2,4]]`.", + "enum": [ + "DIMENSION_UNSPECIFIED", + "ROWS", + "COLUMNS" + ], + "enumDescriptions": [ + "The default value, do not use.", + "Operates on the rows of a sheet.", + "Operates on the columns of a sheet." + ], + "type": "string" + }, + "valueRenderOption": { + "description": "How values should be represented in the output.\nThe default render option is ValueRenderOption.FORMATTED_VALUE.", + "enum": [ + "FORMATTED_VALUE", + "UNFORMATTED_VALUE", + "FORMULA" + ], + "enumDescriptions": [ + "Values will be calculated \u0026 formatted in the reply according to the\ncell's formatting. Formatting is based on the spreadsheet's locale,\nnot the requesting user's locale.\nFor example, if `A1` is `1.23` and `A2` is `=A1` and formatted as currency,\nthen `A2` would return `\"$1.23\"`.", + "Values will be calculated, but not formatted in the reply.\nFor example, if `A1` is `1.23` and `A2` is `=A1` and formatted as currency,\nthen `A2` would return the number `1.23`.", + "Values will not be calculated. The reply will include the formulas.\nFor example, if `A1` is `1.23` and `A2` is `=A1` and formatted as currency,\nthen A2 would return `\"=A1\"`." + ], + "type": "string" + } + }, + "type": "object" + }, + "BatchGetValuesByDataFilterResponse": { + "description": "The response when retrieving more than one range of values in a spreadsheet\nselected by DataFilters.", + "id": "BatchGetValuesByDataFilterResponse", + "properties": { + "spreadsheetId": { + "description": "The ID of the spreadsheet the data was retrieved from.", + "type": "string" + }, + "valueRanges": { + "description": "The requested values with the list of data filters that matched them.", + "items": { + "$ref": "MatchedValueRange" + }, + "type": "array" + } + }, + "type": "object" + }, + "BatchGetValuesResponse": { + "description": "The response when retrieving more than one range of values in a spreadsheet.", + "id": "BatchGetValuesResponse", + "properties": { + "spreadsheetId": { + "description": "The ID of the spreadsheet the data was retrieved from.", + "type": "string" + }, + "valueRanges": { + "description": "The requested values. The order of the ValueRanges is the same as the\norder of the requested ranges.", + "items": { + "$ref": "ValueRange" + }, + "type": "array" + } + }, + "type": "object" + }, + "BatchUpdateSpreadsheetRequest": { + "description": "The request for updating any aspect of a spreadsheet.", + "id": "BatchUpdateSpreadsheetRequest", + "properties": { + "includeSpreadsheetInResponse": { + "description": "Determines if the update response should include the spreadsheet\nresource.", + "type": "boolean" + }, + "requests": { + "description": "A list of updates to apply to the spreadsheet.\nRequests will be applied in the order they are specified.\nIf any request is not valid, no requests will be applied.", + "items": { + "$ref": "Request" + }, + "type": "array" + }, + "responseIncludeGridData": { + "description": "True if grid data should be returned. Meaningful only if\nif include_spreadsheet_in_response is 'true'.\nThis parameter is ignored if a field mask was set in the request.", + "type": "boolean" + }, + "responseRanges": { + "description": "Limits the ranges included in the response spreadsheet.\nMeaningful only if include_spreadsheet_response is 'true'.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "BatchUpdateSpreadsheetResponse": { + "description": "The reply for batch updating a spreadsheet.", + "id": "BatchUpdateSpreadsheetResponse", + "properties": { + "replies": { + "description": "The reply of the updates. This maps 1:1 with the updates, although\nreplies to some requests may be empty.", + "items": { + "$ref": "Response" + }, + "type": "array" + }, + "spreadsheetId": { + "description": "The spreadsheet the updates were applied to.", + "type": "string" + }, + "updatedSpreadsheet": { + "$ref": "Spreadsheet", + "description": "The spreadsheet after updates were applied. This is only set if\n[BatchUpdateSpreadsheetRequest.include_spreadsheet_in_response] is `true`." + } + }, + "type": "object" + }, + "BatchUpdateValuesByDataFilterRequest": { + "description": "The request for updating more than one range of values in a spreadsheet.", + "id": "BatchUpdateValuesByDataFilterRequest", + "properties": { + "data": { + "description": "The new values to apply to the spreadsheet. If more than one range is\nmatched by the specified DataFilter the specified values will be\napplied to all of those ranges.", + "items": { + "$ref": "DataFilterValueRange" + }, + "type": "array" + }, + "includeValuesInResponse": { + "description": "Determines if the update response should include the values\nof the cells that were updated. By default, responses\ndo not include the updated values. The `updatedData` field within\neach of the BatchUpdateValuesResponse.responses will contain\nthe updated values. If the range to write was larger than than the range\nactually written, the response will include all values in the requested\nrange (excluding trailing empty rows and columns).", + "type": "boolean" + }, + "responseDateTimeRenderOption": { + "description": "Determines how dates, times, and durations in the response should be\nrendered. This is ignored if response_value_render_option is\nFORMATTED_VALUE.\nThe default dateTime render option is\nDateTimeRenderOption.SERIAL_NUMBER.", + "enum": [ + "SERIAL_NUMBER", + "FORMATTED_STRING" + ], + "enumDescriptions": [ + "Instructs date, time, datetime, and duration fields to be output\nas doubles in \"serial number\" format, as popularized by Lotus 1-2-3.\nThe whole number portion of the value (left of the decimal) counts\nthe days since December 30th 1899. The fractional portion (right of\nthe decimal) counts the time as a fraction of the day. For example,\nJanuary 1st 1900 at noon would be 2.5, 2 because it's 2 days after\nDecember 30st 1899, and .5 because noon is half a day. February 1st\n1900 at 3pm would be 33.625. This correctly treats the year 1900 as\nnot a leap year.", + "Instructs date, time, datetime, and duration fields to be output\nas strings in their given number format (which is dependent\non the spreadsheet locale)." + ], + "type": "string" + }, + "responseValueRenderOption": { + "description": "Determines how values in the response should be rendered.\nThe default render option is ValueRenderOption.FORMATTED_VALUE.", + "enum": [ + "FORMATTED_VALUE", + "UNFORMATTED_VALUE", + "FORMULA" + ], + "enumDescriptions": [ + "Values will be calculated \u0026 formatted in the reply according to the\ncell's formatting. Formatting is based on the spreadsheet's locale,\nnot the requesting user's locale.\nFor example, if `A1` is `1.23` and `A2` is `=A1` and formatted as currency,\nthen `A2` would return `\"$1.23\"`.", + "Values will be calculated, but not formatted in the reply.\nFor example, if `A1` is `1.23` and `A2` is `=A1` and formatted as currency,\nthen `A2` would return the number `1.23`.", + "Values will not be calculated. The reply will include the formulas.\nFor example, if `A1` is `1.23` and `A2` is `=A1` and formatted as currency,\nthen A2 would return `\"=A1\"`." + ], + "type": "string" + }, + "valueInputOption": { + "description": "How the input data should be interpreted.", + "enum": [ + "INPUT_VALUE_OPTION_UNSPECIFIED", + "RAW", + "USER_ENTERED" + ], + "enumDescriptions": [ + "Default input value. This value must not be used.", + "The values the user has entered will not be parsed and will be stored\nas-is.", + "The values will be parsed as if the user typed them into the UI.\nNumbers will stay as numbers, but strings may be converted to numbers,\ndates, etc. following the same rules that are applied when entering\ntext into a cell via the Google Sheets UI." + ], + "type": "string" + } + }, + "type": "object" + }, + "BatchUpdateValuesByDataFilterResponse": { + "description": "The response when updating a range of values in a spreadsheet.", + "id": "BatchUpdateValuesByDataFilterResponse", + "properties": { + "responses": { + "description": "The response for each range updated.", + "items": { + "$ref": "UpdateValuesByDataFilterResponse" + }, + "type": "array" + }, + "spreadsheetId": { + "description": "The spreadsheet the updates were applied to.", + "type": "string" + }, "totalUpdatedCells": { "description": "The total number of cells updated.", "format": "int32", @@ -20,988 +1658,121 @@ "format": "int32", "type": "integer" }, + "totalUpdatedRows": { + "description": "The total number of rows where at least one cell in the row was updated.", + "format": "int32", + "type": "integer" + }, + "totalUpdatedSheets": { + "description": "The total number of sheets where at least one cell in the sheet was\nupdated.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "BatchUpdateValuesRequest": { + "description": "The request for updating more than one range of values in a spreadsheet.", + "id": "BatchUpdateValuesRequest", + "properties": { + "data": { + "description": "The new values to apply to the spreadsheet.", + "items": { + "$ref": "ValueRange" + }, + "type": "array" + }, + "includeValuesInResponse": { + "description": "Determines if the update response should include the values\nof the cells that were updated. By default, responses\ndo not include the updated values. The `updatedData` field within\neach of the BatchUpdateValuesResponse.responses will contain\nthe updated values. If the range to write was larger than than the range\nactually written, the response will include all values in the requested\nrange (excluding trailing empty rows and columns).", + "type": "boolean" + }, + "responseDateTimeRenderOption": { + "description": "Determines how dates, times, and durations in the response should be\nrendered. This is ignored if response_value_render_option is\nFORMATTED_VALUE.\nThe default dateTime render option is\nDateTimeRenderOption.SERIAL_NUMBER.", + "enum": [ + "SERIAL_NUMBER", + "FORMATTED_STRING" + ], + "enumDescriptions": [ + "Instructs date, time, datetime, and duration fields to be output\nas doubles in \"serial number\" format, as popularized by Lotus 1-2-3.\nThe whole number portion of the value (left of the decimal) counts\nthe days since December 30th 1899. The fractional portion (right of\nthe decimal) counts the time as a fraction of the day. For example,\nJanuary 1st 1900 at noon would be 2.5, 2 because it's 2 days after\nDecember 30st 1899, and .5 because noon is half a day. February 1st\n1900 at 3pm would be 33.625. This correctly treats the year 1900 as\nnot a leap year.", + "Instructs date, time, datetime, and duration fields to be output\nas strings in their given number format (which is dependent\non the spreadsheet locale)." + ], + "type": "string" + }, + "responseValueRenderOption": { + "description": "Determines how values in the response should be rendered.\nThe default render option is ValueRenderOption.FORMATTED_VALUE.", + "enum": [ + "FORMATTED_VALUE", + "UNFORMATTED_VALUE", + "FORMULA" + ], + "enumDescriptions": [ + "Values will be calculated \u0026 formatted in the reply according to the\ncell's formatting. Formatting is based on the spreadsheet's locale,\nnot the requesting user's locale.\nFor example, if `A1` is `1.23` and `A2` is `=A1` and formatted as currency,\nthen `A2` would return `\"$1.23\"`.", + "Values will be calculated, but not formatted in the reply.\nFor example, if `A1` is `1.23` and `A2` is `=A1` and formatted as currency,\nthen `A2` would return the number `1.23`.", + "Values will not be calculated. The reply will include the formulas.\nFor example, if `A1` is `1.23` and `A2` is `=A1` and formatted as currency,\nthen A2 would return `\"=A1\"`." + ], + "type": "string" + }, + "valueInputOption": { + "description": "How the input data should be interpreted.", + "enum": [ + "INPUT_VALUE_OPTION_UNSPECIFIED", + "RAW", + "USER_ENTERED" + ], + "enumDescriptions": [ + "Default input value. This value must not be used.", + "The values the user has entered will not be parsed and will be stored\nas-is.", + "The values will be parsed as if the user typed them into the UI.\nNumbers will stay as numbers, but strings may be converted to numbers,\ndates, etc. following the same rules that are applied when entering\ntext into a cell via the Google Sheets UI." + ], + "type": "string" + } + }, + "type": "object" + }, + "BatchUpdateValuesResponse": { + "description": "The response when updating a range of values in a spreadsheet.", + "id": "BatchUpdateValuesResponse", + "properties": { + "responses": { + "description": "One UpdateValuesResponse per requested range, in the same order as\nthe requests appeared.", + "items": { + "$ref": "UpdateValuesResponse" + }, + "type": "array" + }, "spreadsheetId": { "description": "The spreadsheet the updates were applied to.", "type": "string" }, + "totalUpdatedCells": { + "description": "The total number of cells updated.", + "format": "int32", + "type": "integer" + }, + "totalUpdatedColumns": { + "description": "The total number of columns where at least one cell in the column was\nupdated.", + "format": "int32", + "type": "integer" + }, "totalUpdatedRows": { "description": "The total number of rows where at least one cell in the row was updated.", "format": "int32", "type": "integer" }, - "responses": { - "description": "The response for each range updated.", - "type": "array", - "items": { - "$ref": "UpdateValuesByDataFilterResponse" - } + "totalUpdatedSheets": { + "description": "The total number of sheets where at least one cell in the sheet was\nupdated.", + "format": "int32", + "type": "integer" } }, - "id": "BatchUpdateValuesByDataFilterResponse" - }, - "RowData": { - "id": "RowData", - "description": "Data about each cell in a row.", - "type": "object", - "properties": { - "values": { - "description": "The values in the row, one per column.", - "type": "array", - "items": { - "$ref": "CellData" - } - } - } - }, - "GridData": { - "description": "Data in the grid, as well as metadata about the dimensions.", - "type": "object", - "properties": { - "rowData": { - "description": "The data in the grid, one entry per row,\nstarting with the row in startRow.\nThe values in RowData will correspond to columns starting\nat start_column.", - "type": "array", - "items": { - "$ref": "RowData" - } - }, - "startRow": { - "description": "The first row this GridData refers to, zero-based.", - "format": "int32", - "type": "integer" - }, - "columnMetadata": { - "description": "Metadata about the requested columns in the grid, starting with the column\nin start_column.", - "type": "array", - "items": { - "$ref": "DimensionProperties" - } - }, - "startColumn": { - "description": "The first column this GridData refers to, zero-based.", - "format": "int32", - "type": "integer" - }, - "rowMetadata": { - "description": "Metadata about the requested rows in the grid, starting with the row\nin start_row.", - "type": "array", - "items": { - "$ref": "DimensionProperties" - } - } - }, - "id": "GridData" - }, - "Border": { - "id": "Border", - "description": "A border along a cell.", - "type": "object", - "properties": { - "color": { - "$ref": "Color", - "description": "The color of the border." - }, - "width": { - "description": "The width of the border, in pixels.\nDeprecated; the width is determined by the \"style\" field.", - "format": "int32", - "type": "integer" - }, - "style": { - "enumDescriptions": [ - "The style is not specified. Do not use this.", - "The border is dotted.", - "The border is dashed.", - "The border is a thin solid line.", - "The border is a medium solid line.", - "The border is a thick solid line.", - "No border.\nUsed only when updating a border in order to erase it.", - "The border is two solid lines." - ], - "enum": [ - "STYLE_UNSPECIFIED", - "DOTTED", - "DASHED", - "SOLID", - "SOLID_MEDIUM", - "SOLID_THICK", - "NONE", - "DOUBLE" - ], - "description": "The style of the border.", - "type": "string" - } - } - }, - "FindReplaceRequest": { - "description": "Finds and replaces data in cells over a range, sheet, or all sheets.", - "type": "object", - "properties": { - "replacement": { - "description": "The value to use as the replacement.", - "type": "string" - }, - "range": { - "description": "The range to find/replace over.", - "$ref": "GridRange" - }, - "sheetId": { - "description": "The sheet to find/replace over.", - "format": "int32", - "type": "integer" - }, - "matchCase": { - "description": "True if the search is case sensitive.", - "type": "boolean" - }, - "allSheets": { - "description": "True to find/replace over all sheets.", - "type": "boolean" - }, - "includeFormulas": { - "description": "True if the search should include cells with formulas.\nFalse to skip cells with formulas.", - "type": "boolean" - }, - "matchEntireCell": { - "description": "True if the find value should match the entire cell.", - "type": "boolean" - }, - "find": { - "description": "The value to search.", - "type": "string" - }, - "searchByRegex": { - "description": "True if the find value is a regex.\nThe regular expression and replacement should follow Java regex rules\nat https://docs.oracle.com/javase/8/docs/api/java/util/regex/Pattern.html.\nThe replacement string is allowed to refer to capturing groups.\nFor example, if one cell has the contents `\"Google Sheets\"` and another\nhas `\"Google Docs\"`, then searching for `\"o.* (.*)\"` with a replacement of\n`\"$1 Rocks\"` would change the contents of the cells to\n`\"GSheets Rocks\"` and `\"GDocs Rocks\"` respectively.", - "type": "boolean" - } - }, - "id": "FindReplaceRequest" - }, - "UpdateNamedRangeRequest": { - "id": "UpdateNamedRangeRequest", - "description": "Updates properties of the named range with the specified\nnamedRangeId.", - "type": "object", - "properties": { - "namedRange": { - "description": "The named range to update with the new properties.", - "$ref": "NamedRange" - }, - "fields": { - "description": "The fields that should be updated. At least one field must be specified.\nThe root `namedRange` is implied and should not be specified.\nA single `\"*\"` can be used as short-hand for listing every field.", - "format": "google-fieldmask", - "type": "string" - } - } - }, - "AddSheetRequest": { - "id": "AddSheetRequest", - "description": "Adds a new sheet.\nWhen a sheet is added at a given index,\nall subsequent sheets' indexes are incremented.\nTo add an object sheet, use AddChartRequest instead and specify\nEmbeddedObjectPosition.sheetId or\nEmbeddedObjectPosition.newSheet.", - "type": "object", - "properties": { - "properties": { - "$ref": "SheetProperties", - "description": "The properties the new sheet should have.\nAll properties are optional.\nThe sheetId field is optional; if one is not\nset, an id will be randomly generated. (It is an error to specify the ID\nof a sheet that already exists.)" - } - } - }, - "UpdateCellsRequest": { - "id": "UpdateCellsRequest", - "description": "Updates all cells in a range with new data.", - "type": "object", - "properties": { - "range": { - "description": "The range to write data to.\n\nIf the data in rows does not cover the entire requested range,\nthe fields matching those set in fields will be cleared.", - "$ref": "GridRange" - }, - "rows": { - "description": "The data to write.", - "type": "array", - "items": { - "$ref": "RowData" - } - }, - "fields": { - "description": "The fields of CellData that should be updated.\nAt least one field must be specified.\nThe root is the CellData; 'row.values.' should not be specified.\nA single `\"*\"` can be used as short-hand for listing every field.", - "format": "google-fieldmask", - "type": "string" - }, - "start": { - "$ref": "GridCoordinate", - "description": "The coordinate to start writing data at.\nAny number of rows and columns (including a different number of\ncolumns per row) may be written." - } - } - }, - "RandomizeRangeRequest": { - "id": "RandomizeRangeRequest", - "description": "Randomizes the order of the rows in a range.", - "type": "object", - "properties": { - "range": { - "description": "The range to randomize.", - "$ref": "GridRange" - } - } - }, - "DeleteConditionalFormatRuleResponse": { - "id": "DeleteConditionalFormatRuleResponse", - "description": "The result of deleting a conditional format rule.", - "type": "object", - "properties": { - "rule": { - "$ref": "ConditionalFormatRule", - "description": "The rule that was deleted." - } - } - }, - "DeleteRangeRequest": { - "description": "Deletes a range of cells, shifting other cells into the deleted area.", - "type": "object", - "properties": { - "shiftDimension": { - "enumDescriptions": [ - "The default value, do not use.", - "Operates on the rows of a sheet.", - "Operates on the columns of a sheet." - ], - "enum": [ - "DIMENSION_UNSPECIFIED", - "ROWS", - "COLUMNS" - ], - "description": "The dimension from which deleted cells will be replaced with.\nIf ROWS, existing cells will be shifted upward to\nreplace the deleted cells. If COLUMNS, existing cells\nwill be shifted left to replace the deleted cells.", - "type": "string" - }, - "range": { - "$ref": "GridRange", - "description": "The range of cells to delete." - } - }, - "id": "DeleteRangeRequest" - }, - "GridCoordinate": { - "id": "GridCoordinate", - "description": "A coordinate in a sheet.\nAll indexes are zero-based.", - "type": "object", - "properties": { - "rowIndex": { - "description": "The row index of the coordinate.", - "format": "int32", - "type": "integer" - }, - "columnIndex": { - "description": "The column index of the coordinate.", - "format": "int32", - "type": "integer" - }, - "sheetId": { - "description": "The sheet this coordinate is on.", - "format": "int32", - "type": "integer" - } - } - }, - "UpdateSheetPropertiesRequest": { - "id": "UpdateSheetPropertiesRequest", - "description": "Updates properties of the sheet with the specified\nsheetId.", - "type": "object", - "properties": { - "properties": { - "$ref": "SheetProperties", - "description": "The properties to update." - }, - "fields": { - "description": "The fields that should be updated. At least one field must be specified.\nThe root `properties` is implied and should not be specified.\nA single `\"*\"` can be used as short-hand for listing every field.", - "format": "google-fieldmask", - "type": "string" - } - } - }, - "GridProperties": { - "id": "GridProperties", - "description": "Properties of a grid.", - "type": "object", - "properties": { - "rowCount": { - "description": "The number of rows in the grid.", - "format": "int32", - "type": "integer" - }, - "frozenRowCount": { - "description": "The number of rows that are frozen in the grid.", - "format": "int32", - "type": "integer" - }, - "hideGridlines": { - "description": "True if the grid isn't showing gridlines in the UI.", - "type": "boolean" - }, - "columnCount": { - "description": "The number of columns in the grid.", - "format": "int32", - "type": "integer" - }, - "frozenColumnCount": { - "description": "The number of columns that are frozen in the grid.", - "format": "int32", - "type": "integer" - } - } - }, - "UnmergeCellsRequest": { - "id": "UnmergeCellsRequest", - "description": "Unmerges cells in the given range.", - "type": "object", - "properties": { - "range": { - "$ref": "GridRange", - "description": "The range within which all cells should be unmerged.\nIf the range spans multiple merges, all will be unmerged.\nThe range must not partially span any merge." - } - } - }, - "SortSpec": { - "description": "A sort order associated with a specific column or row.", - "type": "object", - "properties": { - "dimensionIndex": { - "description": "The dimension the sort should be applied to.", - "format": "int32", - "type": "integer" - }, - "sortOrder": { - "description": "The order data should be sorted.", - "type": "string", - "enumDescriptions": [ - "Default value, do not use this.", - "Sort ascending.", - "Sort descending." - ], - "enum": [ - "SORT_ORDER_UNSPECIFIED", - "ASCENDING", - "DESCENDING" - ] - } - }, - "id": "SortSpec" - }, - "Sheet": { - "description": "A sheet in a spreadsheet.", - "type": "object", - "properties": { - "filterViews": { - "description": "The filter views in this sheet.", - "type": "array", - "items": { - "$ref": "FilterView" - } - }, - "developerMetadata": { - "description": "The developer metadata associated with a sheet.", - "type": "array", - "items": { - "$ref": "DeveloperMetadata" - } - }, - "protectedRanges": { - "description": "The protected ranges in this sheet.", - "type": "array", - "items": { - "$ref": "ProtectedRange" - } - }, - "conditionalFormats": { - "description": "The conditional format rules in this sheet.", - "type": "array", - "items": { - "$ref": "ConditionalFormatRule" - } - }, - "basicFilter": { - "description": "The filter on this sheet, if any.", - "$ref": "BasicFilter" - }, - "merges": { - "description": "The ranges that are merged together.", - "type": "array", - "items": { - "$ref": "GridRange" - } - }, - "data": { - "description": "Data in the grid, if this is a grid sheet.\nThe number of GridData objects returned is dependent on the number of\nranges requested on this sheet. For example, if this is representing\n`Sheet1`, and the spreadsheet was requested with ranges\n`Sheet1!A1:C10` and `Sheet1!D15:E20`, then the first GridData will have a\nstartRow/startColumn of `0`,\nwhile the second one will have `startRow 14` (zero-based row 15),\nand `startColumn 3` (zero-based column D).", - "type": "array", - "items": { - "$ref": "GridData" - } - }, - "bandedRanges": { - "description": "The banded (i.e. alternating colors) ranges on this sheet.", - "type": "array", - "items": { - "$ref": "BandedRange" - } - }, - "properties": { - "$ref": "SheetProperties", - "description": "The properties of the sheet." - }, - "charts": { - "description": "The specifications of every chart on this sheet.", - "type": "array", - "items": { - "$ref": "EmbeddedChart" - } - } - }, - "id": "Sheet" - }, - "UpdateEmbeddedObjectPositionResponse": { - "description": "The result of updating an embedded object's position.", - "type": "object", - "properties": { - "position": { - "$ref": "EmbeddedObjectPosition", - "description": "The new position of the embedded object." - } - }, - "id": "UpdateEmbeddedObjectPositionResponse" - }, - "BooleanRule": { - "id": "BooleanRule", - "description": "A rule that may or may not match, depending on the condition.", - "type": "object", - "properties": { - "format": { - "$ref": "CellFormat", - "description": "The format to apply.\nConditional formatting can only apply a subset of formatting:\nbold, italic,\nstrikethrough,\nforeground color &\nbackground color." - }, - "condition": { - "$ref": "BooleanCondition", - "description": "The condition of the rule. If the condition evaluates to true,\nthe format will be applied." - } - } - }, - "FilterCriteria": { - "id": "FilterCriteria", - "description": "Criteria for showing/hiding rows in a filter or filter view.", - "type": "object", - "properties": { - "hiddenValues": { - "description": "Values that should be hidden.", - "type": "array", - "items": { - "type": "string" - } - }, - "condition": { - "description": "A condition that must be true for values to be shown.\n(This does not override hiddenValues -- if a value is listed there,\n it will still be hidden.)", - "$ref": "BooleanCondition" - } - } - }, - "PivotGroupValueMetadata": { - "description": "Metadata about a value in a pivot grouping.", - "type": "object", - "properties": { - "value": { - "description": "The calculated value the metadata corresponds to.\n(Note that formulaValue is not valid,\n because the values will be calculated.)", - "$ref": "ExtendedValue" - }, - "collapsed": { - "description": "True if the data corresponding to the value is collapsed.", - "type": "boolean" - } - }, - "id": "PivotGroupValueMetadata" - }, - "WaterfallChartSpec": { - "id": "WaterfallChartSpec", - "description": "A waterfall chart.", - "type": "object", - "properties": { - "firstValueIsTotal": { - "description": "True to interpret the first value as a total.", - "type": "boolean" - }, - "stackedType": { - "enumDescriptions": [ - "Default value, do not use.", - "Values corresponding to the same domain (horizontal axis) value will be\nstacked vertically.", - "Series will spread out along the horizontal axis." - ], - "enum": [ - "WATERFALL_STACKED_TYPE_UNSPECIFIED", - "STACKED", - "SEQUENTIAL" - ], - "description": "The stacked type.", - "type": "string" - }, - "hideConnectorLines": { - "description": "True to hide connector lines between columns.", - "type": "boolean" - }, - "series": { - "description": "The data this waterfall chart is visualizing.", - "type": "array", - "items": { - "$ref": "WaterfallChartSeries" - } - }, - "connectorLineStyle": { - "description": "The line style for the connector lines.", - "$ref": "LineStyle" - }, - "domain": { - "$ref": "WaterfallChartDomain", - "description": "The domain data (horizontal axis) for the waterfall chart." - } - } - }, - "Editors": { - "id": "Editors", - "description": "The editors of a protected range.", - "type": "object", - "properties": { - "users": { - "description": "The email addresses of users with edit access to the protected range.", - "type": "array", - "items": { - "type": "string" - } - }, - "groups": { - "description": "The email addresses of groups with edit access to the protected range.", - "type": "array", - "items": { - "type": "string" - } - }, - "domainUsersCanEdit": { - "description": "True if anyone in the document's domain has edit access to the protected\nrange. Domain protection is only supported on documents within a domain.", - "type": "boolean" - } - } - }, - "UpdateConditionalFormatRuleRequest": { - "id": "UpdateConditionalFormatRuleRequest", - "description": "Updates a conditional format rule at the given index,\nor moves a conditional format rule to another index.", - "type": "object", - "properties": { - "sheetId": { - "description": "The sheet of the rule to move. Required if new_index is set,\nunused otherwise.", - "format": "int32", - "type": "integer" - }, - "newIndex": { - "description": "The zero-based new index the rule should end up at.", - "format": "int32", - "type": "integer" - }, - "rule": { - "description": "The rule that should replace the rule at the given index.", - "$ref": "ConditionalFormatRule" - }, - "index": { - "description": "The zero-based index of the rule that should be replaced or moved.", - "format": "int32", - "type": "integer" - } - } - }, - "BasicChartDomain": { - "description": "The domain of a chart.\nFor example, if charting stock prices over time, this would be the date.", - "type": "object", - "properties": { - "domain": { - "description": "The data of the domain. For example, if charting stock prices over time,\nthis is the data representing the dates.", - "$ref": "ChartData" - }, - "reversed": { - "description": "True to reverse the order of the domain values (horizontal axis).", - "type": "boolean" - } - }, - "id": "BasicChartDomain" - }, - "DataValidationRule": { - "description": "A data validation rule.", - "type": "object", - "properties": { - "showCustomUi": { - "description": "True if the UI should be customized based on the kind of condition.\nIf true, \"List\" conditions will show a dropdown.", - "type": "boolean" - }, - "strict": { - "description": "True if invalid data should be rejected.", - "type": "boolean" - }, - "inputMessage": { - "description": "A message to show the user when adding data to the cell.", - "type": "string" - }, - "condition": { - "description": "The condition that data in the cell must match.", - "$ref": "BooleanCondition" - } - }, - "id": "DataValidationRule" - }, - "PasteDataRequest": { - "id": "PasteDataRequest", - "description": "Inserts data into the spreadsheet starting at the specified coordinate.", - "type": "object", - "properties": { - "coordinate": { - "description": "The coordinate at which the data should start being inserted.", - "$ref": "GridCoordinate" - }, - "data": { - "description": "The data to insert.", - "type": "string" - }, - "delimiter": { - "description": "The delimiter in the data.", - "type": "string" - }, - "type": { - "enumDescriptions": [ - "Paste values, formulas, formats, and merges.", - "Paste the values ONLY without formats, formulas, or merges.", - "Paste the format and data validation only.", - "Like PASTE_NORMAL but without borders.", - "Paste the formulas only.", - "Paste the data validation only.", - "Paste the conditional formatting rules only." - ], - "enum": [ - "PASTE_NORMAL", - "PASTE_VALUES", - "PASTE_FORMAT", - "PASTE_NO_BORDERS", - "PASTE_FORMULA", - "PASTE_DATA_VALIDATION", - "PASTE_CONDITIONAL_FORMATTING" - ], - "description": "How the data should be pasted.", - "type": "string" - }, - "html": { - "description": "True if the data is HTML.", - "type": "boolean" - } - } - }, - "UpdateDeveloperMetadataResponse": { - "id": "UpdateDeveloperMetadataResponse", - "description": "The response from updating developer metadata.", - "type": "object", - "properties": { - "developerMetadata": { - "description": "The updated developer metadata.", - "type": "array", - "items": { - "$ref": "DeveloperMetadata" - } - } - } - }, - "AppendDimensionRequest": { - "id": "AppendDimensionRequest", - "description": "Appends rows or columns to the end of a sheet.", - "type": "object", - "properties": { - "sheetId": { - "description": "The sheet to append rows or columns to.", - "format": "int32", - "type": "integer" - }, - "dimension": { - "description": "Whether rows or columns should be appended.", - "type": "string", - "enumDescriptions": [ - "The default value, do not use.", - "Operates on the rows of a sheet.", - "Operates on the columns of a sheet." - ], - "enum": [ - "DIMENSION_UNSPECIFIED", - "ROWS", - "COLUMNS" - ] - }, - "length": { - "description": "The number of rows or columns to append.", - "format": "int32", - "type": "integer" - } - } - }, - "AddNamedRangeRequest": { - "description": "Adds a named range to the spreadsheet.", - "type": "object", - "properties": { - "namedRange": { - "$ref": "NamedRange", - "description": "The named range to add. The namedRangeId\nfield is optional; if one is not set, an id will be randomly generated. (It\nis an error to specify the ID of a range that already exists.)" - } - }, - "id": "AddNamedRangeRequest" - }, - "CreateDeveloperMetadataResponse": { - "id": "CreateDeveloperMetadataResponse", - "description": "The response from creating developer metadata.", - "type": "object", - "properties": { - "developerMetadata": { - "description": "The developer metadata that was created.", - "$ref": "DeveloperMetadata" - } - } - }, - "UpdateEmbeddedObjectPositionRequest": { - "id": "UpdateEmbeddedObjectPositionRequest", - "description": "Update an embedded object's position (such as a moving or resizing a\nchart or image).", - "type": "object", - "properties": { - "newPosition": { - "$ref": "EmbeddedObjectPosition", - "description": "An explicit position to move the embedded object to.\nIf newPosition.sheetId is set,\na new sheet with that ID will be created.\nIf newPosition.newSheet is set to true,\na new sheet will be created with an ID that will be chosen for you." - }, - "fields": { - "description": "The fields of OverlayPosition\nthat should be updated when setting a new position. Used only if\nnewPosition.overlayPosition\nis set, in which case at least one field must\nbe specified. The root `newPosition.overlayPosition` is implied and\nshould not be specified.\nA single `\"*\"` can be used as short-hand for listing every field.", - "format": "google-fieldmask", - "type": "string" - }, - "objectId": { - "description": "The ID of the object to moved.", - "format": "int32", - "type": "integer" - } - } - }, - "TextRotation": { - "id": "TextRotation", - "description": "The rotation applied to text in a cell.", - "type": "object", - "properties": { - "angle": { - "description": "The angle between the standard orientation and the desired orientation.\nMeasured in degrees. Valid values are between -90 and 90. Positive\nangles are angled upwards, negative are angled downwards.\n\nNote: For LTR text direction positive angles are in the counterclockwise\ndirection, whereas for RTL they are in the clockwise direction", - "format": "int32", - "type": "integer" - }, - "vertical": { - "description": "If true, text reads top to bottom, but the orientation of individual\ncharacters is unchanged.\nFor example:\n\n | V |\n | e |\n | r |\n | t |\n | i |\n | c |\n | a |\n | l |", - "type": "boolean" - } - } - }, - "PieChartSpec": { - "description": "A \u003ca href=\"/chart/interactive/docs/gallery/piechart\"\u003epie chart\u003c/a\u003e.", - "type": "object", - "properties": { - "domain": { - "$ref": "ChartData", - "description": "The data that covers the domain of the pie chart." - }, - "threeDimensional": { - "description": "True if the pie is three dimensional.", - "type": "boolean" - }, - "series": { - "description": "The data that covers the one and only series of the pie chart.", - "$ref": "ChartData" - }, - "legendPosition": { - "description": "Where the legend of the pie chart should be drawn.", - "type": "string", - "enumDescriptions": [ - "Default value, do not use.", - "The legend is rendered on the bottom of the chart.", - "The legend is rendered on the left of the chart.", - "The legend is rendered on the right of the chart.", - "The legend is rendered on the top of the chart.", - "No legend is rendered.", - "Each pie slice has a label attached to it." - ], - "enum": [ - "PIE_CHART_LEGEND_POSITION_UNSPECIFIED", - "BOTTOM_LEGEND", - "LEFT_LEGEND", - "RIGHT_LEGEND", - "TOP_LEGEND", - "NO_LEGEND", - "LABELED_LEGEND" - ] - }, - "pieHole": { - "description": "The size of the hole in the pie chart.", - "format": "double", - "type": "number" - } - }, - "id": "PieChartSpec" - }, - "UpdateDeveloperMetadataRequest": { - "description": "A request to update properties of developer metadata.\nUpdates the properties of the developer metadata selected by the filters to\nthe values provided in the DeveloperMetadata resource. Callers must\nspecify the properties they wish to update in the fields parameter, as well\nas specify at least one DataFilter matching the metadata they wish to\nupdate.", - "type": "object", - "properties": { - "developerMetadata": { - "description": "The value that all metadata matched by the data filters will be updated to.", - "$ref": "DeveloperMetadata" - }, - "dataFilters": { - "description": "The filters matching the developer metadata entries to update.", - "type": "array", - "items": { - "$ref": "DataFilter" - } - }, - "fields": { - "description": "The fields that should be updated. At least one field must be specified.\nThe root `developerMetadata` is implied and should not be specified.\nA single `\"*\"` can be used as short-hand for listing every field.", - "format": "google-fieldmask", - "type": "string" - } - }, - "id": "UpdateDeveloperMetadataRequest" - }, - "WaterfallChartColumnStyle": { - "description": "Styles for a waterfall chart column.", - "type": "object", - "properties": { - "color": { - "$ref": "Color", - "description": "The color of the column." - }, - "label": { - "description": "The label of the column's legend.", - "type": "string" - } - }, - "id": "WaterfallChartColumnStyle" - }, - "UpdateFilterViewRequest": { - "description": "Updates properties of the filter view.", - "type": "object", - "properties": { - "filter": { - "description": "The new properties of the filter view.", - "$ref": "FilterView" - }, - "fields": { - "description": "The fields that should be updated. At least one field must be specified.\nThe root `filter` is implied and should not be specified.\nA single `\"*\"` can be used as short-hand for listing every field.", - "format": "google-fieldmask", - "type": "string" - } - }, - "id": "UpdateFilterViewRequest" - }, - "ConditionalFormatRule": { - "id": "ConditionalFormatRule", - "description": "A rule describing a conditional format.", - "type": "object", - "properties": { - "ranges": { - "description": "The ranges that will be formatted if the condition is true.\nAll the ranges must be on the same grid.", - "type": "array", - "items": { - "$ref": "GridRange" - } - }, - "gradientRule": { - "description": "The formatting will vary based on the gradients in the rule.", - "$ref": "GradientRule" - }, - "booleanRule": { - "description": "The formatting is either \"on\" or \"off\" according to the rule.", - "$ref": "BooleanRule" - } - } - }, - "CopyPasteRequest": { - "id": "CopyPasteRequest", - "description": "Copies data from the source to the destination.", - "type": "object", - "properties": { - "destination": { - "description": "The location to paste to. If the range covers a span that's\na multiple of the source's height or width, then the\ndata will be repeated to fill in the destination range.\nIf the range is smaller than the source range, the entire\nsource data will still be copied (beyond the end of the destination range).", - "$ref": "GridRange" - }, - "pasteOrientation": { - "description": "How that data should be oriented when pasting.", - "type": "string", - "enumDescriptions": [ - "Paste normally.", - "Paste transposed, where all rows become columns and vice versa." - ], - "enum": [ - "NORMAL", - "TRANSPOSE" - ] - }, - "source": { - "$ref": "GridRange", - "description": "The source range to copy." - }, - "pasteType": { - "enumDescriptions": [ - "Paste values, formulas, formats, and merges.", - "Paste the values ONLY without formats, formulas, or merges.", - "Paste the format and data validation only.", - "Like PASTE_NORMAL but without borders.", - "Paste the formulas only.", - "Paste the data validation only.", - "Paste the conditional formatting rules only." - ], - "enum": [ - "PASTE_NORMAL", - "PASTE_VALUES", - "PASTE_FORMAT", - "PASTE_NO_BORDERS", - "PASTE_FORMULA", - "PASTE_DATA_VALIDATION", - "PASTE_CONDITIONAL_FORMATTING" - ], - "description": "What kind of data to paste.", - "type": "string" - } - } + "type": "object" }, "BooleanCondition": { - "id": "BooleanCondition", "description": "A condition that can evaluate to true or false.\nBooleanConditions are used by conditional formatting,\ndata validation, and the criteria in filters.", - "type": "object", + "id": "BooleanCondition", "properties": { "type": { - "enumDescriptions": [ - "The default value, do not use.", - "The cell's value must be greater than the condition's value.\nSupported by data validation, conditional formatting and filters.\nRequires a single ConditionValue.", - "The cell's value must be greater than or equal to the condition's value.\nSupported by data validation, conditional formatting and filters.\nRequires a single ConditionValue.", - "The cell's value must be less than the condition's value.\nSupported by data validation, conditional formatting and filters.\nRequires a single ConditionValue.", - "The cell's value must be less than or equal to the condition's value.\nSupported by data validation, conditional formatting and filters.\nRequires a single ConditionValue.", - "The cell's value must be equal to the condition's value.\nSupported by data validation, conditional formatting and filters.\nRequires a single ConditionValue.", - "The cell's value must be not equal to the condition's value.\nSupported by data validation, conditional formatting and filters.\nRequires a single ConditionValue.", - "The cell's value must be between the two condition values.\nSupported by data validation, conditional formatting and filters.\nRequires exactly two ConditionValues.", - "The cell's value must not be between the two condition values.\nSupported by data validation, conditional formatting and filters.\nRequires exactly two ConditionValues.", - "The cell's value must contain the condition's value.\nSupported by data validation, conditional formatting and filters.\nRequires a single ConditionValue.", - "The cell's value must not contain the condition's value.\nSupported by data validation, conditional formatting and filters.\nRequires a single ConditionValue.", - "The cell's value must start with the condition's value.\nSupported by conditional formatting and filters.\nRequires a single ConditionValue.", - "The cell's value must end with the condition's value.\nSupported by conditional formatting and filters.\nRequires a single ConditionValue.", - "The cell's value must be exactly the condition's value.\nSupported by data validation, conditional formatting and filters.\nRequires a single ConditionValue.", - "The cell's value must be a valid email address.\nSupported by data validation.\nRequires no ConditionValues.", - "The cell's value must be a valid URL.\nSupported by data validation.\nRequires no ConditionValues.", - "The cell's value must be the same date as the condition's value.\nSupported by data validation, conditional formatting and filters.\nRequires a single ConditionValue.", - "The cell's value must be before the date of the condition's value.\nSupported by data validation, conditional formatting and filters.\nRequires a single ConditionValue\nthat may be a relative date.", - "The cell's value must be after the date of the condition's value.\nSupported by data validation, conditional formatting and filters.\nRequires a single ConditionValue\nthat may be a relative date.", - "The cell's value must be on or before the date of the condition's value.\nSupported by data validation.\nRequires a single ConditionValue\nthat may be a relative date.", - "The cell's value must be on or after the date of the condition's value.\nSupported by data validation.\nRequires a single ConditionValue\nthat may be a relative date.", - "The cell's value must be between the dates of the two condition values.\nSupported by data validation.\nRequires exactly two ConditionValues.", - "The cell's value must be outside the dates of the two condition values.\nSupported by data validation.\nRequires exactly two ConditionValues.", - "The cell's value must be a date.\nSupported by data validation.\nRequires no ConditionValues.", - "The cell's value must be listed in the grid in condition value's range.\nSupported by data validation.\nRequires a single ConditionValue,\nand the value must be a valid range in A1 notation.", - "The cell's value must in the list of condition values.\nSupported by data validation.\nSupports any number of condition values,\none per item in the list.\nFormulas are not supported in the values.", - "The cell's value must be empty.\nSupported by conditional formatting and filters.\nRequires no ConditionValues.", - "The cell's value must not be empty.\nSupported by conditional formatting and filters.\nRequires no ConditionValues.", - "The condition's formula must evaluate to true.\nSupported by data validation, conditional formatting and filters.\nRequires a single ConditionValue." - ], + "description": "The type of condition.", "enum": [ "CONDITION_TYPE_UNSPECIFIED", "NUMBER_GREATER", @@ -1033,453 +1804,181 @@ "NOT_BLANK", "CUSTOM_FORMULA" ], - "description": "The type of condition.", + "enumDescriptions": [ + "The default value, do not use.", + "The cell's value must be greater than the condition's value.\nSupported by data validation, conditional formatting and filters.\nRequires a single ConditionValue.", + "The cell's value must be greater than or equal to the condition's value.\nSupported by data validation, conditional formatting and filters.\nRequires a single ConditionValue.", + "The cell's value must be less than the condition's value.\nSupported by data validation, conditional formatting and filters.\nRequires a single ConditionValue.", + "The cell's value must be less than or equal to the condition's value.\nSupported by data validation, conditional formatting and filters.\nRequires a single ConditionValue.", + "The cell's value must be equal to the condition's value.\nSupported by data validation, conditional formatting and filters.\nRequires a single ConditionValue.", + "The cell's value must be not equal to the condition's value.\nSupported by data validation, conditional formatting and filters.\nRequires a single ConditionValue.", + "The cell's value must be between the two condition values.\nSupported by data validation, conditional formatting and filters.\nRequires exactly two ConditionValues.", + "The cell's value must not be between the two condition values.\nSupported by data validation, conditional formatting and filters.\nRequires exactly two ConditionValues.", + "The cell's value must contain the condition's value.\nSupported by data validation, conditional formatting and filters.\nRequires a single ConditionValue.", + "The cell's value must not contain the condition's value.\nSupported by data validation, conditional formatting and filters.\nRequires a single ConditionValue.", + "The cell's value must start with the condition's value.\nSupported by conditional formatting and filters.\nRequires a single ConditionValue.", + "The cell's value must end with the condition's value.\nSupported by conditional formatting and filters.\nRequires a single ConditionValue.", + "The cell's value must be exactly the condition's value.\nSupported by data validation, conditional formatting and filters.\nRequires a single ConditionValue.", + "The cell's value must be a valid email address.\nSupported by data validation.\nRequires no ConditionValues.", + "The cell's value must be a valid URL.\nSupported by data validation.\nRequires no ConditionValues.", + "The cell's value must be the same date as the condition's value.\nSupported by data validation, conditional formatting and filters.\nRequires a single ConditionValue.", + "The cell's value must be before the date of the condition's value.\nSupported by data validation, conditional formatting and filters.\nRequires a single ConditionValue\nthat may be a relative date.", + "The cell's value must be after the date of the condition's value.\nSupported by data validation, conditional formatting and filters.\nRequires a single ConditionValue\nthat may be a relative date.", + "The cell's value must be on or before the date of the condition's value.\nSupported by data validation.\nRequires a single ConditionValue\nthat may be a relative date.", + "The cell's value must be on or after the date of the condition's value.\nSupported by data validation.\nRequires a single ConditionValue\nthat may be a relative date.", + "The cell's value must be between the dates of the two condition values.\nSupported by data validation.\nRequires exactly two ConditionValues.", + "The cell's value must be outside the dates of the two condition values.\nSupported by data validation.\nRequires exactly two ConditionValues.", + "The cell's value must be a date.\nSupported by data validation.\nRequires no ConditionValues.", + "The cell's value must be listed in the grid in condition value's range.\nSupported by data validation.\nRequires a single ConditionValue,\nand the value must be a valid range in A1 notation.", + "The cell's value must in the list of condition values.\nSupported by data validation.\nSupports any number of condition values,\none per item in the list.\nFormulas are not supported in the values.", + "The cell's value must be empty.\nSupported by conditional formatting and filters.\nRequires no ConditionValues.", + "The cell's value must not be empty.\nSupported by conditional formatting and filters.\nRequires no ConditionValues.", + "The condition's formula must evaluate to true.\nSupported by data validation, conditional formatting and filters.\nRequires a single ConditionValue." + ], "type": "string" }, "values": { "description": "The values of the condition. The number of supported values depends\non the condition type. Some support zero values,\nothers one or two values,\nand ConditionType.ONE_OF_LIST supports an arbitrary number of values.", - "type": "array", "items": { "$ref": "ConditionValue" - } - } - } - }, - "Request": { - "id": "Request", - "description": "A single kind of update to apply to a spreadsheet.", - "type": "object", - "properties": { - "deleteNamedRange": { - "description": "Deletes a named range.", - "$ref": "DeleteNamedRangeRequest" - }, - "addProtectedRange": { - "description": "Adds a protected range.", - "$ref": "AddProtectedRangeRequest" - }, - "duplicateSheet": { - "$ref": "DuplicateSheetRequest", - "description": "Duplicates a sheet." - }, - "unmergeCells": { - "$ref": "UnmergeCellsRequest", - "description": "Unmerges merged cells." - }, - "deleteSheet": { - "description": "Deletes a sheet.", - "$ref": "DeleteSheetRequest" - }, - "updateEmbeddedObjectPosition": { - "$ref": "UpdateEmbeddedObjectPositionRequest", - "description": "Updates an embedded object's (e.g. chart, image) position." - }, - "updateDeveloperMetadata": { - "description": "Updates an existing developer metadata entry", - "$ref": "UpdateDeveloperMetadataRequest" - }, - "updateDimensionProperties": { - "description": "Updates dimensions' properties.", - "$ref": "UpdateDimensionPropertiesRequest" - }, - "pasteData": { - "description": "Pastes data (HTML or delimited) into a sheet.", - "$ref": "PasteDataRequest" - }, - "setBasicFilter": { - "$ref": "SetBasicFilterRequest", - "description": "Sets the basic filter on a sheet." - }, - "addConditionalFormatRule": { - "description": "Adds a new conditional format rule.", - "$ref": "AddConditionalFormatRuleRequest" - }, - "updateCells": { - "description": "Updates many cells at once.", - "$ref": "UpdateCellsRequest" - }, - "addNamedRange": { - "description": "Adds a named range.", - "$ref": "AddNamedRangeRequest" - }, - "updateSpreadsheetProperties": { - "description": "Updates the spreadsheet's properties.", - "$ref": "UpdateSpreadsheetPropertiesRequest" - }, - "deleteEmbeddedObject": { - "description": "Deletes an embedded object (e.g, chart, image) in a sheet.", - "$ref": "DeleteEmbeddedObjectRequest" - }, - "updateFilterView": { - "description": "Updates the properties of a filter view.", - "$ref": "UpdateFilterViewRequest" - }, - "addBanding": { - "description": "Adds a new banded range", - "$ref": "AddBandingRequest" - }, - "appendCells": { - "description": "Appends cells after the last row with data in a sheet.", - "$ref": "AppendCellsRequest" - }, - "autoResizeDimensions": { - "$ref": "AutoResizeDimensionsRequest", - "description": "Automatically resizes one or more dimensions based on the contents\nof the cells in that dimension." - }, - "cutPaste": { - "$ref": "CutPasteRequest", - "description": "Cuts data from one area and pastes it to another." - }, - "mergeCells": { - "$ref": "MergeCellsRequest", - "description": "Merges cells together." - }, - "updateNamedRange": { - "$ref": "UpdateNamedRangeRequest", - "description": "Updates a named range." - }, - "updateSheetProperties": { - "description": "Updates a sheet's properties.", - "$ref": "UpdateSheetPropertiesRequest" - }, - "autoFill": { - "description": "Automatically fills in more data based on existing data.", - "$ref": "AutoFillRequest" - }, - "deleteDimension": { - "description": "Deletes rows or columns in a sheet.", - "$ref": "DeleteDimensionRequest" - }, - "sortRange": { - "description": "Sorts data in a range.", - "$ref": "SortRangeRequest" - }, - "deleteProtectedRange": { - "description": "Deletes a protected range.", - "$ref": "DeleteProtectedRangeRequest" - }, - "duplicateFilterView": { - "description": "Duplicates a filter view.", - "$ref": "DuplicateFilterViewRequest" - }, - "addChart": { - "description": "Adds a chart.", - "$ref": "AddChartRequest" - }, - "findReplace": { - "$ref": "FindReplaceRequest", - "description": "Finds and replaces occurrences of some text with other text." - }, - "textToColumns": { - "description": "Converts a column of text into many columns of text.", - "$ref": "TextToColumnsRequest" - }, - "updateChartSpec": { - "description": "Updates a chart's specifications.", - "$ref": "UpdateChartSpecRequest" - }, - "addSheet": { - "$ref": "AddSheetRequest", - "description": "Adds a sheet." - }, - "updateProtectedRange": { - "$ref": "UpdateProtectedRangeRequest", - "description": "Updates a protected range." - }, - "deleteFilterView": { - "description": "Deletes a filter view from a sheet.", - "$ref": "DeleteFilterViewRequest" - }, - "copyPaste": { - "description": "Copies data from one area and pastes it to another.", - "$ref": "CopyPasteRequest" - }, - "insertDimension": { - "description": "Inserts new rows or columns in a sheet.", - "$ref": "InsertDimensionRequest" - }, - "deleteRange": { - "description": "Deletes a range of cells from a sheet, shifting the remaining cells.", - "$ref": "DeleteRangeRequest" - }, - "deleteBanding": { - "$ref": "DeleteBandingRequest", - "description": "Removes a banded range" - }, - "addFilterView": { - "description": "Adds a filter view.", - "$ref": "AddFilterViewRequest" - }, - "setDataValidation": { - "description": "Sets data validation for one or more cells.", - "$ref": "SetDataValidationRequest" - }, - "updateBorders": { - "description": "Updates the borders in a range of cells.", - "$ref": "UpdateBordersRequest" - }, - "deleteConditionalFormatRule": { - "$ref": "DeleteConditionalFormatRuleRequest", - "description": "Deletes an existing conditional format rule." - }, - "repeatCell": { - "$ref": "RepeatCellRequest", - "description": "Repeats a single cell across a range." - }, - "clearBasicFilter": { - "description": "Clears the basic filter on a sheet.", - "$ref": "ClearBasicFilterRequest" - }, - "appendDimension": { - "$ref": "AppendDimensionRequest", - "description": "Appends dimensions to the end of a sheet." - }, - "updateConditionalFormatRule": { - "description": "Updates an existing conditional format rule.", - "$ref": "UpdateConditionalFormatRuleRequest" - }, - "createDeveloperMetadata": { - "description": "Creates new developer metadata", - "$ref": "CreateDeveloperMetadataRequest" - }, - "insertRange": { - "$ref": "InsertRangeRequest", - "description": "Inserts new cells in a sheet, shifting the existing cells." - }, - "deleteDeveloperMetadata": { - "$ref": "DeleteDeveloperMetadataRequest", - "description": "Deletes developer metadata" - }, - "moveDimension": { - "$ref": "MoveDimensionRequest", - "description": "Moves rows or columns to another location in a sheet." - }, - "randomizeRange": { - "$ref": "RandomizeRangeRequest", - "description": "Randomizes the order of the rows in a range." - }, - "updateBanding": { - "description": "Updates a banded range", - "$ref": "UpdateBandingRequest" - } - } - }, - "WaterfallChartDomain": { - "id": "WaterfallChartDomain", - "description": "The domain of a waterfall chart.", - "type": "object", - "properties": { - "data": { - "description": "The data of the WaterfallChartDomain.", - "$ref": "ChartData" - }, - "reversed": { - "description": "True to reverse the order of the domain values (horizontal axis).", - "type": "boolean" - } - } - }, - "GridRange": { - "id": "GridRange", - "description": "A range on a sheet.\nAll indexes are zero-based.\nIndexes are half open, e.g the start index is inclusive\nand the end index is exclusive -- [start_index, end_index).\nMissing indexes indicate the range is unbounded on that side.\n\nFor example, if `\"Sheet1\"` is sheet ID 0, then:\n\n `Sheet1!A1:A1 == sheet_id: 0,\n start_row_index: 0, end_row_index: 1,\n start_column_index: 0, end_column_index: 1`\n\n `Sheet1!A3:B4 == sheet_id: 0,\n start_row_index: 2, end_row_index: 4,\n start_column_index: 0, end_column_index: 2`\n\n `Sheet1!A:B == sheet_id: 0,\n start_column_index: 0, end_column_index: 2`\n\n `Sheet1!A5:B == sheet_id: 0,\n start_row_index: 4,\n start_column_index: 0, end_column_index: 2`\n\n `Sheet1 == sheet_id:0`\n\nThe start index must always be less than or equal to the end index.\nIf the start index equals the end index, then the range is empty.\nEmpty ranges are typically not meaningful and are usually rendered in the\nUI as `#REF!`.", - "type": "object", - "properties": { - "sheetId": { - "description": "The sheet this range is on.", - "format": "int32", - "type": "integer" - }, - "endRowIndex": { - "description": "The end row (exclusive) of the range, or not set if unbounded.", - "format": "int32", - "type": "integer" - }, - "endColumnIndex": { - "description": "The end column (exclusive) of the range, or not set if unbounded.", - "format": "int32", - "type": "integer" - }, - "startRowIndex": { - "description": "The start row (inclusive) of the range, or not set if unbounded.", - "format": "int32", - "type": "integer" - }, - "startColumnIndex": { - "description": "The start column (inclusive) of the range, or not set if unbounded.", - "format": "int32", - "type": "integer" - } - } - }, - "BasicChartSpec": { - "description": "The specification for a basic chart. See BasicChartType for the list\nof charts this supports.", - "type": "object", - "properties": { - "domains": { - "description": "The domain of data this is charting.\nOnly a single domain is supported.", - "type": "array", - "items": { - "$ref": "BasicChartDomain" - } - }, - "lineSmoothing": { - "description": "Gets whether all lines should be rendered smooth or straight by default.\nApplies to Line charts.", - "type": "boolean" - }, - "headerCount": { - "description": "The number of rows or columns in the data that are \"headers\".\nIf not set, Google Sheets will guess how many rows are headers based\non the data.\n\n(Note that BasicChartAxis.title may override the axis title\n inferred from the header values.)", - "format": "int32", - "type": "integer" - }, - "stackedType": { - "description": "The stacked type for charts that support vertical stacking.\nApplies to Area, Bar, Column, and Stepped Area charts.", - "type": "string", - "enumDescriptions": [ - "Default value, do not use.", - "Series are not stacked.", - "Series values are stacked, each value is rendered vertically beginning\nfrom the top of the value below it.", - "Vertical stacks are stretched to reach the top of the chart, with\nvalues laid out as percentages of each other." - ], - "enum": [ - "BASIC_CHART_STACKED_TYPE_UNSPECIFIED", - "NOT_STACKED", - "STACKED", - "PERCENT_STACKED" - ] - }, - "threeDimensional": { - "description": "True to make the chart 3D.\nApplies to Bar and Column charts.", - "type": "boolean" - }, - "axis": { - "description": "The axis on the chart.", - "type": "array", - "items": { - "$ref": "BasicChartAxis" - } - }, - "chartType": { - "description": "The type of the chart.", - "type": "string", - "enumDescriptions": [ - "Default value, do not use.", - "A \u003ca href=\"/chart/interactive/docs/gallery/barchart\"\u003ebar chart\u003c/a\u003e.", - "A \u003ca href=\"/chart/interactive/docs/gallery/linechart\"\u003eline chart\u003c/a\u003e.", - "An \u003ca href=\"/chart/interactive/docs/gallery/areachart\"\u003earea chart\u003c/a\u003e.", - "A \u003ca href=\"/chart/interactive/docs/gallery/columnchart\"\u003ecolumn chart\u003c/a\u003e.", - "A \u003ca href=\"/chart/interactive/docs/gallery/scatterchart\"\u003escatter chart\u003c/a\u003e.", - "A \u003ca href=\"/chart/interactive/docs/gallery/combochart\"\u003ecombo chart\u003c/a\u003e.", - "A \u003ca href=\"/chart/interactive/docs/gallery/steppedareachart\"\u003estepped area chart\u003c/a\u003e." - ], - "enum": [ - "BASIC_CHART_TYPE_UNSPECIFIED", - "BAR", - "LINE", - "AREA", - "COLUMN", - "SCATTER", - "COMBO", - "STEPPED_AREA" - ] - }, - "interpolateNulls": { - "description": "If some values in a series are missing, gaps may appear in the chart (e.g,\nsegments of lines in a line chart will be missing). To eliminate these\ngaps set this to true.\nApplies to Line, Area, and Combo charts.", - "type": "boolean" - }, - "series": { - "description": "The data this chart is visualizing.", - "type": "array", - "items": { - "$ref": "BasicChartSeries" - } - }, - "legendPosition": { - "description": "The position of the chart legend.", - "type": "string", - "enumDescriptions": [ - "Default value, do not use.", - "The legend is rendered on the bottom of the chart.", - "The legend is rendered on the left of the chart.", - "The legend is rendered on the right of the chart.", - "The legend is rendered on the top of the chart.", - "No legend is rendered." - ], - "enum": [ - "BASIC_CHART_LEGEND_POSITION_UNSPECIFIED", - "BOTTOM_LEGEND", - "LEFT_LEGEND", - "RIGHT_LEGEND", - "TOP_LEGEND", - "NO_LEGEND" - ] - }, - "compareMode": { - "description": "The behavior of tooltips and data highlighting when hovering on data and\nchart area.", - "type": "string", - "enumDescriptions": [ - "Default value, do not use.", - "Only the focused data element is highlighted and shown in the tooltip.", - "All data elements with the same category (e.g., domain value) are\nhighlighted and shown in the tooltip." - ], - "enum": [ - "BASIC_CHART_COMPARE_MODE_UNSPECIFIED", - "DATUM", - "CATEGORY" - ] + }, + "type": "array" } }, - "id": "BasicChartSpec" + "type": "object" + }, + "BooleanRule": { + "description": "A rule that may or may not match, depending on the condition.", + "id": "BooleanRule", + "properties": { + "condition": { + "$ref": "BooleanCondition", + "description": "The condition of the rule. If the condition evaluates to true,\nthe format will be applied." + }, + "format": { + "$ref": "CellFormat", + "description": "The format to apply.\nConditional formatting can only apply a subset of formatting:\nbold, italic,\nstrikethrough,\nforeground color \u0026\nbackground color." + } + }, + "type": "object" + }, + "Border": { + "description": "A border along a cell.", + "id": "Border", + "properties": { + "color": { + "$ref": "Color", + "description": "The color of the border." + }, + "style": { + "description": "The style of the border.", + "enum": [ + "STYLE_UNSPECIFIED", + "DOTTED", + "DASHED", + "SOLID", + "SOLID_MEDIUM", + "SOLID_THICK", + "NONE", + "DOUBLE" + ], + "enumDescriptions": [ + "The style is not specified. Do not use this.", + "The border is dotted.", + "The border is dashed.", + "The border is a thin solid line.", + "The border is a medium solid line.", + "The border is a thick solid line.", + "No border.\nUsed only when updating a border in order to erase it.", + "The border is two solid lines." + ], + "type": "string" + }, + "width": { + "description": "The width of the border, in pixels.\nDeprecated; the width is determined by the \"style\" field.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "Borders": { + "description": "The borders of the cell.", + "id": "Borders", + "properties": { + "bottom": { + "$ref": "Border", + "description": "The bottom border of the cell." + }, + "left": { + "$ref": "Border", + "description": "The left border of the cell." + }, + "right": { + "$ref": "Border", + "description": "The right border of the cell." + }, + "top": { + "$ref": "Border", + "description": "The top border of the cell." + } + }, + "type": "object" }, "BubbleChartSpec": { "description": "A \u003ca href=\"/chart/interactive/docs/gallery/bubblechart\"\u003ebubble chart\u003c/a\u003e.", - "type": "object", + "id": "BubbleChartSpec", "properties": { - "bubbleOpacity": { - "description": "The opacity of the bubbles between 0 and 1.0.\n0 is fully transparent and 1 is fully opaque.", - "format": "float", - "type": "number" - }, - "bubbleSizes": { - "description": "The data contianing the bubble sizes. Bubble sizes are used to draw\nthe bubbles at different sizes relative to each other.\nIf specified, group_ids must also be specified. This field is\noptional.", - "$ref": "ChartData" - }, - "domain": { - "$ref": "ChartData", - "description": "The data containing the bubble x-values. These values locate the bubbles\nin the chart horizontally." - }, - "bubbleTextStyle": { - "description": "The format of the text inside the bubbles.\nUnderline and Strikethrough are not supported.", - "$ref": "TextFormat" - }, "bubbleBorderColor": { "$ref": "Color", "description": "The bubble border color." }, - "groupIds": { - "$ref": "ChartData", - "description": "The data containing the bubble group IDs. All bubbles with the same group\nID will be drawn in the same color. If bubble_sizes is specified then\nthis field must also be specified but may contain blank values.\nThis field is optional." - }, "bubbleLabels": { "$ref": "ChartData", "description": "The data containing the bubble labels. These do not need to be unique." }, - "bubbleMinRadiusSize": { - "description": "The minimum radius size of the bubbles, in pixels.\nIf specific, the field must be a positive value.", - "format": "int32", - "type": "integer" - }, "bubbleMaxRadiusSize": { "description": "The max radius size of the bubbles, in pixels.\nIf specified, the field must be a positive value.", "format": "int32", "type": "integer" }, - "series": { + "bubbleMinRadiusSize": { + "description": "The minimum radius size of the bubbles, in pixels.\nIf specific, the field must be a positive value.", + "format": "int32", + "type": "integer" + }, + "bubbleOpacity": { + "description": "The opacity of the bubbles between 0 and 1.0.\n0 is fully transparent and 1 is fully opaque.", + "format": "float", + "type": "number" + }, + "bubbleSizes": { "$ref": "ChartData", - "description": "The data contianing the bubble y-values. These values locate the bubbles\nin the chart vertically." + "description": "The data contianing the bubble sizes. Bubble sizes are used to draw\nthe bubbles at different sizes relative to each other.\nIf specified, group_ids must also be specified. This field is\noptional." + }, + "bubbleTextStyle": { + "$ref": "TextFormat", + "description": "The format of the text inside the bubbles.\nUnderline and Strikethrough are not supported." + }, + "domain": { + "$ref": "ChartData", + "description": "The data containing the bubble x-values. These values locate the bubbles\nin the chart horizontally." + }, + "groupIds": { + "$ref": "ChartData", + "description": "The data containing the bubble group IDs. All bubbles with the same group\nID will be drawn in the same color. If bubble_sizes is specified then\nthis field must also be specified but may contain blank values.\nThis field is optional." }, "legendPosition": { "description": "Where the legend of the chart should be drawn.", - "type": "string", + "enum": [ + "BUBBLE_CHART_LEGEND_POSITION_UNSPECIFIED", + "BOTTOM_LEGEND", + "LEFT_LEGEND", + "RIGHT_LEGEND", + "TOP_LEGEND", + "NO_LEGEND", + "INSIDE_LEGEND" + ], "enumDescriptions": [ "Default value, do not use.", "The legend is rendered on the bottom of the chart.", @@ -1489,53 +1988,93 @@ "No legend is rendered.", "The legend is rendered inside the chart area." ], - "enum": [ - "BUBBLE_CHART_LEGEND_POSITION_UNSPECIFIED", - "BOTTOM_LEGEND", - "LEFT_LEGEND", - "RIGHT_LEGEND", - "TOP_LEGEND", - "NO_LEGEND", - "INSIDE_LEGEND" - ] - } - }, - "id": "BubbleChartSpec" - }, - "SetDataValidationRequest": { - "description": "Sets a data validation rule to every cell in the range.\nTo clear validation in a range, call this with no rule specified.", - "type": "object", - "properties": { - "rule": { - "$ref": "DataValidationRule", - "description": "The data validation rule to set on each cell in the range,\nor empty to clear the data validation in the range." + "type": "string" }, - "range": { - "$ref": "GridRange", - "description": "The range the data validation rule should apply to." + "series": { + "$ref": "ChartData", + "description": "The data contianing the bubble y-values. These values locate the bubbles\nin the chart vertically." } }, - "id": "SetDataValidationRequest" + "type": "object" + }, + "CandlestickChartSpec": { + "description": "A \u003ca href=\"/chart/interactive/docs/gallery/candlestickchart\"\u003ecandlestick chart\u003c/a\u003e.", + "id": "CandlestickChartSpec", + "properties": { + "data": { + "description": "The Candlestick chart data.\nOnly one CandlestickData is supported.", + "items": { + "$ref": "CandlestickData" + }, + "type": "array" + }, + "domain": { + "$ref": "CandlestickDomain", + "description": "The domain data (horizontal axis) for the candlestick chart. String data\nwill be treated as discrete labels, other data will be treated as\ncontinuous values." + } + }, + "type": "object" + }, + "CandlestickData": { + "description": "The Candlestick chart data, each containing the low, open, close, and high\nvalues for a series.", + "id": "CandlestickData", + "properties": { + "closeSeries": { + "$ref": "CandlestickSeries", + "description": "The range data (vertical axis) for the close/final value for each candle.\nThis is the top of the candle body. If greater than the open value the\ncandle will be filled. Otherwise the candle will be hollow." + }, + "highSeries": { + "$ref": "CandlestickSeries", + "description": "The range data (vertical axis) for the high/maximum value for each\ncandle. This is the top of the candle's center line." + }, + "lowSeries": { + "$ref": "CandlestickSeries", + "description": "The range data (vertical axis) for the low/minimum value for each candle.\nThis is the bottom of the candle's center line." + }, + "openSeries": { + "$ref": "CandlestickSeries", + "description": "The range data (vertical axis) for the open/initial value for each\ncandle. This is the bottom of the candle body. If less than the close\nvalue the candle will be filled. Otherwise the candle will be hollow." + } + }, + "type": "object" + }, + "CandlestickDomain": { + "description": "The domain of a CandlestickChart.", + "id": "CandlestickDomain", + "properties": { + "data": { + "$ref": "ChartData", + "description": "The data of the CandlestickDomain." + }, + "reversed": { + "description": "True to reverse the order of the domain values (horizontal axis).", + "type": "boolean" + } + }, + "type": "object" + }, + "CandlestickSeries": { + "description": "The series of a CandlestickData.", + "id": "CandlestickSeries", + "properties": { + "data": { + "$ref": "ChartData", + "description": "The data of the CandlestickSeries." + } + }, + "type": "object" }, "CellData": { "description": "Data about a specific cell.", - "type": "object", + "id": "CellData", "properties": { - "note": { - "description": "Any note on the cell.", - "type": "string" - }, - "effectiveFormat": { - "description": "The effective format being used by the cell.\nThis includes the results of applying any conditional formatting and,\nif the cell contains a formula, the computed number format.\nIf the effective format is the default format, effective format will\nnot be written.\nThis field is read-only.", - "$ref": "CellFormat" - }, "dataValidation": { "$ref": "DataValidationRule", "description": "A data validation rule on the cell, if any.\n\nWhen writing, the new data validation rule will overwrite any prior rule." }, - "userEnteredValue": { - "description": "The value the user entered in the cell. e.g, `1234`, `'Hello'`, or `=NOW()`\nNote: Dates, Times and DateTimes are represented as doubles in\nserial number format.", - "$ref": "ExtendedValue" + "effectiveFormat": { + "$ref": "CellFormat", + "description": "The effective format being used by the cell.\nThis includes the results of applying any conditional formatting and,\nif the cell contains a formula, the computed number format.\nIf the effective format is the default format, effective format will\nnot be written.\nThis field is read-only." }, "effectiveValue": { "$ref": "ExtendedValue", @@ -1545,675 +2084,200 @@ "description": "The formatted value of the cell.\nThis is the value as it's shown to the user.\nThis field is read-only.", "type": "string" }, - "textFormatRuns": { - "description": "Runs of rich text applied to subsections of the cell. Runs are only valid\non user entered strings, not formulas, bools, or numbers.\nRuns start at specific indexes in the text and continue until the next\nrun. Properties of a run will continue unless explicitly changed\nin a subsequent run (and properties of the first run will continue\nthe properties of the cell unless explicitly changed).\n\nWhen writing, the new runs will overwrite any prior runs. When writing a\nnew user_entered_value, previous runs will be erased.", - "type": "array", - "items": { - "$ref": "TextFormatRun" - } - }, "hyperlink": { "description": "A hyperlink this cell points to, if any.\nThis field is read-only. (To set it, use a `=HYPERLINK` formula\nin the userEnteredValue.formulaValue\nfield.)", "type": "string" }, + "note": { + "description": "Any note on the cell.", + "type": "string" + }, "pivotTable": { "$ref": "PivotTable", "description": "A pivot table anchored at this cell. The size of pivot table itself\nis computed dynamically based on its data, grouping, filters, values,\netc. Only the top-left cell of the pivot table contains the pivot table\ndefinition. The other cells will contain the calculated values of the\nresults of the pivot in their effective_value fields." }, + "textFormatRuns": { + "description": "Runs of rich text applied to subsections of the cell. Runs are only valid\non user entered strings, not formulas, bools, or numbers.\nRuns start at specific indexes in the text and continue until the next\nrun. Properties of a run will continue unless explicitly changed\nin a subsequent run (and properties of the first run will continue\nthe properties of the cell unless explicitly changed).\n\nWhen writing, the new runs will overwrite any prior runs. When writing a\nnew user_entered_value, previous runs will be erased.", + "items": { + "$ref": "TextFormatRun" + }, + "type": "array" + }, "userEnteredFormat": { "$ref": "CellFormat", "description": "The format the user entered for the cell.\n\nWhen writing, the new format will be merged with the existing format." + }, + "userEnteredValue": { + "$ref": "ExtendedValue", + "description": "The value the user entered in the cell. e.g, `1234`, `'Hello'`, or `=NOW()`\nNote: Dates, Times and DateTimes are represented as doubles in\nserial number format." } }, - "id": "CellData" + "type": "object" }, - "TextPosition": { - "id": "TextPosition", - "description": "Position settings for text.", - "type": "object", + "CellFormat": { + "description": "The format of a cell.", + "id": "CellFormat", "properties": { + "backgroundColor": { + "$ref": "Color", + "description": "The background color of the cell." + }, + "borders": { + "$ref": "Borders", + "description": "The borders of the cell." + }, "horizontalAlignment": { - "enumDescriptions": [ - "The horizontal alignment is not specified. Do not use this.", - "The text is explicitly aligned to the left of the cell.", - "The text is explicitly aligned to the center of the cell.", - "The text is explicitly aligned to the right of the cell." - ], + "description": "The horizontal alignment of the value in the cell.", "enum": [ "HORIZONTAL_ALIGN_UNSPECIFIED", "LEFT", "CENTER", "RIGHT" ], - "description": "Horizontal alignment setting for the piece of text.", - "type": "string" - } - } - }, - "BatchUpdateValuesByDataFilterRequest": { - "id": "BatchUpdateValuesByDataFilterRequest", - "description": "The request for updating more than one range of values in a spreadsheet.", - "type": "object", - "properties": { - "responseDateTimeRenderOption": { "enumDescriptions": [ - "Instructs date, time, datetime, and duration fields to be output\nas doubles in \"serial number\" format, as popularized by Lotus 1-2-3.\nThe whole number portion of the value (left of the decimal) counts\nthe days since December 30th 1899. The fractional portion (right of\nthe decimal) counts the time as a fraction of the day. For example,\nJanuary 1st 1900 at noon would be 2.5, 2 because it's 2 days after\nDecember 30st 1899, and .5 because noon is half a day. February 1st\n1900 at 3pm would be 33.625. This correctly treats the year 1900 as\nnot a leap year.", - "Instructs date, time, datetime, and duration fields to be output\nas strings in their given number format (which is dependent\non the spreadsheet locale)." + "The horizontal alignment is not specified. Do not use this.", + "The text is explicitly aligned to the left of the cell.", + "The text is explicitly aligned to the center of the cell.", + "The text is explicitly aligned to the right of the cell." ], - "enum": [ - "SERIAL_NUMBER", - "FORMATTED_STRING" - ], - "description": "Determines how dates, times, and durations in the response should be\nrendered. This is ignored if response_value_render_option is\nFORMATTED_VALUE.\nThe default dateTime render option is\nDateTimeRenderOption.SERIAL_NUMBER.", "type": "string" }, - "responseValueRenderOption": { - "description": "Determines how values in the response should be rendered.\nThe default render option is ValueRenderOption.FORMATTED_VALUE.", - "type": "string", - "enumDescriptions": [ - "Values will be calculated & formatted in the reply according to the\ncell's formatting. Formatting is based on the spreadsheet's locale,\nnot the requesting user's locale.\nFor example, if `A1` is `1.23` and `A2` is `=A1` and formatted as currency,\nthen `A2` would return `\"$1.23\"`.", - "Values will be calculated, but not formatted in the reply.\nFor example, if `A1` is `1.23` and `A2` is `=A1` and formatted as currency,\nthen `A2` would return the number `1.23`.", - "Values will not be calculated. The reply will include the formulas.\nFor example, if `A1` is `1.23` and `A2` is `=A1` and formatted as currency,\nthen A2 would return `\"=A1\"`." - ], + "hyperlinkDisplayType": { + "description": "How a hyperlink, if it exists, should be displayed in the cell.", "enum": [ - "FORMATTED_VALUE", - "UNFORMATTED_VALUE", - "FORMULA" - ] - }, - "includeValuesInResponse": { - "description": "Determines if the update response should include the values\nof the cells that were updated. By default, responses\ndo not include the updated values. The `updatedData` field within\neach of the BatchUpdateValuesResponse.responses will contain\nthe updated values. If the range to write was larger than than the range\nactually written, the response will include all values in the requested\nrange (excluding trailing empty rows and columns).", - "type": "boolean" - }, - "valueInputOption": { - "description": "How the input data should be interpreted.", - "type": "string", + "HYPERLINK_DISPLAY_TYPE_UNSPECIFIED", + "LINKED", + "PLAIN_TEXT" + ], "enumDescriptions": [ - "Default input value. This value must not be used.", - "The values the user has entered will not be parsed and will be stored\nas-is.", - "The values will be parsed as if the user typed them into the UI.\nNumbers will stay as numbers, but strings may be converted to numbers,\ndates, etc. following the same rules that are applied when entering\ntext into a cell via the Google Sheets UI." + "The default value: the hyperlink is rendered. Do not use this.", + "A hyperlink should be explicitly rendered.", + "A hyperlink should not be rendered." ], - "enum": [ - "INPUT_VALUE_OPTION_UNSPECIFIED", - "RAW", - "USER_ENTERED" - ] - }, - "data": { - "description": "The new values to apply to the spreadsheet. If more than one range is\nmatched by the specified DataFilter the specified values will be\napplied to all of those ranges.", - "type": "array", - "items": { - "$ref": "DataFilterValueRange" - } - } - } - }, - "BatchUpdateSpreadsheetRequest": { - "description": "The request for updating any aspect of a spreadsheet.", - "type": "object", - "properties": { - "requests": { - "description": "A list of updates to apply to the spreadsheet.\nRequests will be applied in the order they are specified.\nIf any request is not valid, no requests will be applied.", - "type": "array", - "items": { - "$ref": "Request" - } - }, - "includeSpreadsheetInResponse": { - "description": "Determines if the update response should include the spreadsheet\nresource.", - "type": "boolean" - }, - "responseRanges": { - "description": "Limits the ranges included in the response spreadsheet.\nMeaningful only if include_spreadsheet_response is 'true'.", - "type": "array", - "items": { - "type": "string" - } - }, - "responseIncludeGridData": { - "description": "True if grid data should be returned. Meaningful only if\nif include_spreadsheet_response is 'true'.\nThis parameter is ignored if a field mask was set in the request.", - "type": "boolean" - } - }, - "id": "BatchUpdateSpreadsheetRequest" - }, - "BasicChartAxis": { - "description": "An axis of the chart.\nA chart may not have more than one axis per\naxis position.", - "type": "object", - "properties": { - "position": { - "enumDescriptions": [ - "Default value, do not use.", - "The axis rendered at the bottom of a chart.\nFor most charts, this is the standard major axis.\nFor bar charts, this is a minor axis.", - "The axis rendered at the left of a chart.\nFor most charts, this is a minor axis.\nFor bar charts, this is the standard major axis.", - "The axis rendered at the right of a chart.\nFor most charts, this is a minor axis.\nFor bar charts, this is an unusual major axis." - ], - "enum": [ - "BASIC_CHART_AXIS_POSITION_UNSPECIFIED", - "BOTTOM_AXIS", - "LEFT_AXIS", - "RIGHT_AXIS" - ], - "description": "The position of this axis.", "type": "string" }, - "title": { - "description": "The title of this axis. If set, this overrides any title inferred\nfrom headers of the data.", + "numberFormat": { + "$ref": "NumberFormat", + "description": "A format describing how number values should be represented to the user." + }, + "padding": { + "$ref": "Padding", + "description": "The padding of the cell." + }, + "textDirection": { + "description": "The direction of the text in the cell.", + "enum": [ + "TEXT_DIRECTION_UNSPECIFIED", + "LEFT_TO_RIGHT", + "RIGHT_TO_LEFT" + ], + "enumDescriptions": [ + "The text direction is not specified. Do not use this.", + "The text direction of left-to-right was set by the user.", + "The text direction of right-to-left was set by the user." + ], "type": "string" }, - "titleTextPosition": { - "$ref": "TextPosition", - "description": "The axis title text position." - }, - "format": { + "textFormat": { "$ref": "TextFormat", - "description": "The format of the title.\nOnly valid if the axis is not associated with the domain." - } - }, - "id": "BasicChartAxis" - }, - "Padding": { - "description": "The amount of padding around the cell, in pixels.\nWhen updating padding, every field must be specified.", - "type": "object", - "properties": { - "top": { - "description": "The top padding of the cell.", - "format": "int32", - "type": "integer" + "description": "The format of the text in the cell (unless overridden by a format run)." }, - "left": { - "description": "The left padding of the cell.", - "format": "int32", - "type": "integer" + "textRotation": { + "$ref": "TextRotation", + "description": "The rotation applied to text in a cell" }, - "right": { - "description": "The right padding of the cell.", - "format": "int32", - "type": "integer" - }, - "bottom": { - "description": "The bottom padding of the cell.", - "format": "int32", - "type": "integer" - } - }, - "id": "Padding" - }, - "DeleteDimensionRequest": { - "description": "Deletes the dimensions from the sheet.", - "type": "object", - "properties": { - "range": { - "description": "The dimensions to delete from the sheet.", - "$ref": "DimensionRange" - } - }, - "id": "DeleteDimensionRequest" - }, - "UpdateChartSpecRequest": { - "id": "UpdateChartSpecRequest", - "description": "Updates a chart's specifications.\n(This does not move or resize a chart. To move or resize a chart, use\n UpdateEmbeddedObjectPositionRequest.)", - "type": "object", - "properties": { - "chartId": { - "description": "The ID of the chart to update.", - "format": "int32", - "type": "integer" - }, - "spec": { - "$ref": "ChartSpec", - "description": "The specification to apply to the chart." - } - } - }, - "DeleteFilterViewRequest": { - "description": "Deletes a particular filter view.", - "type": "object", - "properties": { - "filterId": { - "description": "The ID of the filter to delete.", - "format": "int32", - "type": "integer" - } - }, - "id": "DeleteFilterViewRequest" - }, - "BatchGetValuesByDataFilterRequest": { - "description": "The request for retrieving a range of values in a spreadsheet selected by a\nset of DataFilters.", - "type": "object", - "properties": { - "dataFilters": { - "description": "The data filters used to match the ranges of values to retrieve. Ranges\nthat match any of the specified data filters will be included in the\nresponse.", - "type": "array", - "items": { - "$ref": "DataFilter" - } - }, - "valueRenderOption": { - "enumDescriptions": [ - "Values will be calculated & formatted in the reply according to the\ncell's formatting. Formatting is based on the spreadsheet's locale,\nnot the requesting user's locale.\nFor example, if `A1` is `1.23` and `A2` is `=A1` and formatted as currency,\nthen `A2` would return `\"$1.23\"`.", - "Values will be calculated, but not formatted in the reply.\nFor example, if `A1` is `1.23` and `A2` is `=A1` and formatted as currency,\nthen `A2` would return the number `1.23`.", - "Values will not be calculated. The reply will include the formulas.\nFor example, if `A1` is `1.23` and `A2` is `=A1` and formatted as currency,\nthen A2 would return `\"=A1\"`." - ], + "verticalAlignment": { + "description": "The vertical alignment of the value in the cell.", "enum": [ - "FORMATTED_VALUE", - "UNFORMATTED_VALUE", - "FORMULA" + "VERTICAL_ALIGN_UNSPECIFIED", + "TOP", + "MIDDLE", + "BOTTOM" + ], + "enumDescriptions": [ + "The vertical alignment is not specified. Do not use this.", + "The text is explicitly aligned to the top of the cell.", + "The text is explicitly aligned to the middle of the cell.", + "The text is explicitly aligned to the bottom of the cell." ], - "description": "How values should be represented in the output.\nThe default render option is ValueRenderOption.FORMATTED_VALUE.", "type": "string" }, - "dateTimeRenderOption": { - "description": "How dates, times, and durations should be represented in the output.\nThis is ignored if value_render_option is\nFORMATTED_VALUE.\nThe default dateTime render option is [DateTimeRenderOption.SERIAL_NUMBER].", - "type": "string", - "enumDescriptions": [ - "Instructs date, time, datetime, and duration fields to be output\nas doubles in \"serial number\" format, as popularized by Lotus 1-2-3.\nThe whole number portion of the value (left of the decimal) counts\nthe days since December 30th 1899. The fractional portion (right of\nthe decimal) counts the time as a fraction of the day. For example,\nJanuary 1st 1900 at noon would be 2.5, 2 because it's 2 days after\nDecember 30st 1899, and .5 because noon is half a day. February 1st\n1900 at 3pm would be 33.625. This correctly treats the year 1900 as\nnot a leap year.", - "Instructs date, time, datetime, and duration fields to be output\nas strings in their given number format (which is dependent\non the spreadsheet locale)." - ], + "wrapStrategy": { + "description": "The wrap strategy for the value in the cell.", "enum": [ - "SERIAL_NUMBER", - "FORMATTED_STRING" - ] - }, - "majorDimension": { - "description": "The major dimension that results should use.\n\nFor example, if the spreadsheet data is: `A1=1,B1=2,A2=3,B2=4`,\nthen a request that selects that range and sets `majorDimension=ROWS` will\nreturn `[[1,2],[3,4]]`,\nwhereas a request that sets `majorDimension=COLUMNS` will return\n`[[1,3],[2,4]]`.", - "type": "string", + "WRAP_STRATEGY_UNSPECIFIED", + "OVERFLOW_CELL", + "LEGACY_WRAP", + "CLIP", + "WRAP" + ], "enumDescriptions": [ "The default value, do not use.", - "Operates on the rows of a sheet.", - "Operates on the columns of a sheet." + "Lines that are longer than the cell width will be written in the next\ncell over, so long as that cell is empty. If the next cell over is\nnon-empty, this behaves the same as CLIP. The text will never wrap\nto the next line unless the user manually inserts a new line.\nExample:\n\n | First sentence. |\n | Manual newline that is very long. \u003c- Text continues into next cell\n | Next newline. |", + "This wrap strategy represents the old Google Sheets wrap strategy where\nwords that are longer than a line are clipped rather than broken. This\nstrategy is not supported on all platforms and is being phased out.\nExample:\n\n | Cell has a |\n | loooooooooo| \u003c- Word is clipped.\n | word. |", + "Lines that are longer than the cell width will be clipped.\nThe text will never wrap to the next line unless the user manually\ninserts a new line.\nExample:\n\n | First sentence. |\n | Manual newline t| \u003c- Text is clipped\n | Next newline. |", + "Words that are longer than a line are wrapped at the character level\nrather than clipped.\nExample:\n\n | Cell has a |\n | loooooooooo| \u003c- Word is broken.\n | ong word. |" ], - "enum": [ - "DIMENSION_UNSPECIFIED", - "ROWS", - "COLUMNS" - ] + "type": "string" } }, - "id": "BatchGetValuesByDataFilterRequest" + "type": "object" }, - "DeleteDeveloperMetadataResponse": { - "description": "The response from deleting developer metadata.", - "type": "object", + "ChartData": { + "description": "The data included in a domain or series.", + "id": "ChartData", "properties": { - "deletedDeveloperMetadata": { - "description": "The metadata that was deleted.", - "type": "array", + "sourceRange": { + "$ref": "ChartSourceRange", + "description": "The source ranges of the data." + } + }, + "type": "object" + }, + "ChartSourceRange": { + "description": "Source ranges for a chart.", + "id": "ChartSourceRange", + "properties": { + "sources": { + "description": "The ranges of data for a series or domain.\nExactly one dimension must have a length of 1,\nand all sources in the list must have the same dimension\nwith length 1.\nThe domain (if it exists) \u0026 all series must have the same number\nof source ranges. If using more than one source range, then the source\nrange at a given offset must be contiguous across the domain and series.\n\nFor example, these are valid configurations:\n\n domain sources: A1:A5\n series1 sources: B1:B5\n series2 sources: D6:D10\n\n domain sources: A1:A5, C10:C12\n series1 sources: B1:B5, D10:D12\n series2 sources: C1:C5, E10:E12", "items": { - "$ref": "DeveloperMetadata" - } + "$ref": "GridRange" + }, + "type": "array" } }, - "id": "DeleteDeveloperMetadataResponse" - }, - "BatchUpdateValuesResponse": { - "id": "BatchUpdateValuesResponse", - "description": "The response when updating a range of values in a spreadsheet.", - "type": "object", - "properties": { - "totalUpdatedCells": { - "description": "The total number of cells updated.", - "format": "int32", - "type": "integer" - }, - "totalUpdatedColumns": { - "description": "The total number of columns where at least one cell in the column was\nupdated.", - "format": "int32", - "type": "integer" - }, - "spreadsheetId": { - "description": "The spreadsheet the updates were applied to.", - "type": "string" - }, - "totalUpdatedRows": { - "description": "The total number of rows where at least one cell in the row was updated.", - "format": "int32", - "type": "integer" - }, - "responses": { - "description": "One UpdateValuesResponse per requested range, in the same order as\nthe requests appeared.", - "type": "array", - "items": { - "$ref": "UpdateValuesResponse" - } - }, - "totalUpdatedSheets": { - "description": "The total number of sheets where at least one cell in the sheet was\nupdated.", - "format": "int32", - "type": "integer" - } - } - }, - "SortRangeRequest": { - "description": "Sorts data in rows based on a sort order per column.", - "type": "object", - "properties": { - "range": { - "description": "The range to sort.", - "$ref": "GridRange" - }, - "sortSpecs": { - "description": "The sort order per column. Later specifications are used when values\nare equal in the earlier specifications.", - "type": "array", - "items": { - "$ref": "SortSpec" - } - } - }, - "id": "SortRangeRequest" - }, - "MatchedDeveloperMetadata": { - "description": "A developer metadata entry and the data filters specified in the original\nrequest that matched it.", - "type": "object", - "properties": { - "dataFilters": { - "description": "All filters matching the returned developer metadata.", - "type": "array", - "items": { - "$ref": "DataFilter" - } - }, - "developerMetadata": { - "description": "The developer metadata matching the specified filters.", - "$ref": "DeveloperMetadata" - } - }, - "id": "MatchedDeveloperMetadata" - }, - "MergeCellsRequest": { - "id": "MergeCellsRequest", - "description": "Merges all cells in the range.", - "type": "object", - "properties": { - "mergeType": { - "description": "How the cells should be merged.", - "type": "string", - "enumDescriptions": [ - "Create a single merge from the range", - "Create a merge for each column in the range", - "Create a merge for each row in the range" - ], - "enum": [ - "MERGE_ALL", - "MERGE_COLUMNS", - "MERGE_ROWS" - ] - }, - "range": { - "description": "The range of cells to merge.", - "$ref": "GridRange" - } - } - }, - "AddProtectedRangeRequest": { - "id": "AddProtectedRangeRequest", - "description": "Adds a new protected range.", - "type": "object", - "properties": { - "protectedRange": { - "$ref": "ProtectedRange", - "description": "The protected range to be added. The\nprotectedRangeId field is optional; if\none is not set, an id will be randomly generated. (It is an error to\nspecify the ID of a range that already exists.)" - } - } - }, - "BatchClearValuesRequest": { - "description": "The request for clearing more than one range of values in a spreadsheet.", - "type": "object", - "properties": { - "ranges": { - "description": "The ranges to clear, in A1 notation.", - "type": "array", - "items": { - "type": "string" - } - } - }, - "id": "BatchClearValuesRequest" - }, - "DeveloperMetadata": { - "description": "Developer metadata associated with a location or object in a spreadsheet.\nDeveloper metadata may be used to associate arbitrary data with various\nparts of a spreadsheet and will remain associated at those locations as they\nmove around and the spreadsheet is edited. For example, if developer\nmetadata is associated with row 5 and another row is then subsequently\ninserted above row 5, that original metadata will still be associated with\nthe row it was first associated with (what is now row 6). If the associated\nobject is deleted its metadata will be deleted too.", - "type": "object", - "properties": { - "metadataValue": { - "description": "Data associated with the metadata's key.", - "type": "string" - }, - "metadataKey": { - "description": "The metadata key. There may be multiple metadata in a spreadsheet with the\nsame key. Developer metadata must always have a key specified.", - "type": "string" - }, - "metadataId": { - "description": "The spreadsheet-scoped unique ID that identifies the metadata. IDs may be\nspecified when metadata is created, otherwise one will be randomly\ngenerated and assigned. Must be positive.", - "format": "int32", - "type": "integer" - }, - "location": { - "$ref": "DeveloperMetadataLocation", - "description": "The location where the metadata is associated." - }, - "visibility": { - "description": "The metadata visibility. Developer metadata must always have a visibility\nspecified.", - "type": "string", - "enumDescriptions": [ - "Default value.", - "Document-visible metadata is accessible from any developer project with\naccess to the document.", - "Project-visible metadata is only visible to and accessible by the developer\nproject that created the metadata." - ], - "enum": [ - "DEVELOPER_METADATA_VISIBILITY_UNSPECIFIED", - "DOCUMENT", - "PROJECT" - ] - } - }, - "id": "DeveloperMetadata" - }, - "DuplicateFilterViewResponse": { - "id": "DuplicateFilterViewResponse", - "description": "The result of a filter view being duplicated.", - "type": "object", - "properties": { - "filter": { - "$ref": "FilterView", - "description": "The newly created filter." - } - } - }, - "DuplicateSheetResponse": { - "description": "The result of duplicating a sheet.", - "type": "object", - "properties": { - "properties": { - "$ref": "SheetProperties", - "description": "The properties of the duplicate sheet." - } - }, - "id": "DuplicateSheetResponse" - }, - "ClearBasicFilterRequest": { - "id": "ClearBasicFilterRequest", - "description": "Clears the basic filter, if any exists on the sheet.", - "type": "object", - "properties": { - "sheetId": { - "description": "The sheet ID on which the basic filter should be cleared.", - "format": "int32", - "type": "integer" - } - } - }, - "TextToColumnsRequest": { - "description": "Splits a column of text into multiple columns,\nbased on a delimiter in each cell.", - "type": "object", - "properties": { - "source": { - "description": "The source data range. This must span exactly one column.", - "$ref": "GridRange" - }, - "delimiterType": { - "enumDescriptions": [ - "Default value. This value must not be used.", - "\",\"", - "\";\"", - "\".\"", - "\" \"", - "A custom value as defined in delimiter.", - "Automatically detect columns." - ], - "enum": [ - "DELIMITER_TYPE_UNSPECIFIED", - "COMMA", - "SEMICOLON", - "PERIOD", - "SPACE", - "CUSTOM", - "AUTODETECT" - ], - "description": "The delimiter type to use.", - "type": "string" - }, - "delimiter": { - "description": "The delimiter to use. Used only if delimiterType is\nCUSTOM.", - "type": "string" - } - }, - "id": "TextToColumnsRequest" - }, - "DeleteBandingRequest": { - "description": "Removes the banded range with the given ID from the spreadsheet.", - "type": "object", - "properties": { - "bandedRangeId": { - "description": "The ID of the banded range to delete.", - "format": "int32", - "type": "integer" - } - }, - "id": "DeleteBandingRequest" - }, - "BatchUpdateSpreadsheetResponse": { - "id": "BatchUpdateSpreadsheetResponse", - "description": "The reply for batch updating a spreadsheet.", - "type": "object", - "properties": { - "replies": { - "description": "The reply of the updates. This maps 1:1 with the updates, although\nreplies to some requests may be empty.", - "type": "array", - "items": { - "$ref": "Response" - } - }, - "updatedSpreadsheet": { - "$ref": "Spreadsheet", - "description": "The spreadsheet after updates were applied. This is only set if\n[BatchUpdateSpreadsheetRequest.include_spreadsheet_in_response] is `true`." - }, - "spreadsheetId": { - "description": "The spreadsheet the updates were applied to.", - "type": "string" - } - } - }, - "AppendValuesResponse": { - "id": "AppendValuesResponse", - "description": "The response when updating a range of values in a spreadsheet.", - "type": "object", - "properties": { - "spreadsheetId": { - "description": "The spreadsheet the updates were applied to.", - "type": "string" - }, - "updates": { - "$ref": "UpdateValuesResponse", - "description": "Information about the updates that were applied." - }, - "tableRange": { - "description": "The range (in A1 notation) of the table that values are being appended to\n(before the values were appended).\nEmpty if no table was found.", - "type": "string" - } - } - }, - "PivotFilterCriteria": { - "id": "PivotFilterCriteria", - "description": "Criteria for showing/hiding rows in a pivot table.", - "type": "object", - "properties": { - "visibleValues": { - "description": "Values that should be included. Values not listed here are excluded.", - "type": "array", - "items": { - "type": "string" - } - } - } - }, - "AddFilterViewRequest": { - "description": "Adds a filter view.", - "type": "object", - "properties": { - "filter": { - "description": "The filter to add. The filterViewId\nfield is optional; if one is not set, an id will be randomly generated. (It\nis an error to specify the ID of a filter that already exists.)", - "$ref": "FilterView" - } - }, - "id": "AddFilterViewRequest" - }, - "MoveDimensionRequest": { - "id": "MoveDimensionRequest", - "description": "Moves one or more rows or columns.", - "type": "object", - "properties": { - "destinationIndex": { - "description": "The zero-based start index of where to move the source data to,\nbased on the coordinates *before* the source data is removed\nfrom the grid. Existing data will be shifted down or right\n(depending on the dimension) to make room for the moved dimensions.\nThe source dimensions are removed from the grid, so the\nthe data may end up in a different index than specified.\n\nFor example, given `A1..A5` of `0, 1, 2, 3, 4` and wanting to move\n`\"1\"` and `\"2\"` to between `\"3\"` and `\"4\"`, the source would be\n`ROWS [1..3)`,and the destination index would be `\"4\"`\n(the zero-based index of row 5).\nThe end result would be `A1..A5` of `0, 3, 1, 2, 4`.", - "format": "int32", - "type": "integer" - }, - "source": { - "description": "The source dimensions to move.", - "$ref": "DimensionRange" - } - } - }, - "AddConditionalFormatRuleRequest": { - "description": "Adds a new conditional format rule at the given index.\nAll subsequent rules' indexes are incremented.", - "type": "object", - "properties": { - "rule": { - "$ref": "ConditionalFormatRule", - "description": "The rule to add." - }, - "index": { - "description": "The zero-based index where the rule should be inserted.", - "format": "int32", - "type": "integer" - } - }, - "id": "AddConditionalFormatRuleRequest" + "type": "object" }, "ChartSpec": { - "id": "ChartSpec", "description": "The specifications of a chart.", - "type": "object", + "id": "ChartSpec", "properties": { - "waterfallChart": { - "$ref": "WaterfallChartSpec", - "description": "A waterfall chart specification." + "altText": { + "description": "The alternative text that describes the chart. This is often used\nfor accessibility.", + "type": "string" + }, + "backgroundColor": { + "$ref": "Color", + "description": "The background color of the entire chart.\nNot applicable to Org charts." + }, + "basicChart": { + "$ref": "BasicChartSpec", + "description": "A basic chart specification, can be one of many kinds of charts.\nSee BasicChartType for the list of all\ncharts this supports." + }, + "bubbleChart": { + "$ref": "BubbleChartSpec", + "description": "A bubble chart specification." + }, + "candlestickChart": { + "$ref": "CandlestickChartSpec", + "description": "A candlestick chart specification." }, "fontName": { "description": "The name of the font to use by default for all chart text (e.g. title,\naxis labels, legend). If a font is specified for a specific part of the\nchart it will override this font name.", "type": "string" }, - "maximized": { - "description": "True to make a chart fill the entire space in which it's rendered with\nminimum padding. False to use the default padding.\n(Not applicable to Geo and Org charts.)", - "type": "boolean" - }, "hiddenDimensionStrategy": { - "enumDescriptions": [ - "Default value, do not use.", - "Charts will skip hidden rows and columns.", - "Charts will skip hidden rows only.", - "Charts will skip hidden columns only.", - "Charts will not skip any hidden rows or columns." - ], + "description": "Determines how the charts will use hidden rows or columns.", "enum": [ "CHART_HIDDEN_DIMENSION_STRATEGY_UNSPECIFIED", "SKIP_HIDDEN_ROWS_AND_COLUMNS", @@ -2221,28 +2285,22 @@ "SKIP_HIDDEN_COLUMNS", "SHOW_ALL" ], - "description": "Determines how the charts will use hidden rows or columns.", + "enumDescriptions": [ + "Default value, do not use.", + "Charts will skip hidden rows and columns.", + "Charts will skip hidden rows only.", + "Charts will skip hidden columns only.", + "Charts will not skip any hidden rows or columns." + ], "type": "string" }, - "subtitleTextFormat": { - "description": "The subtitle text format.\nStrikethrough and underline are not supported.", - "$ref": "TextFormat" + "histogramChart": { + "$ref": "HistogramChartSpec", + "description": "A histogram chart specification." }, - "subtitle": { - "description": "The subtitle of the chart.", - "type": "string" - }, - "subtitleTextPosition": { - "description": "The subtitle text position.\nThis field is optional.", - "$ref": "TextPosition" - }, - "backgroundColor": { - "$ref": "Color", - "description": "The background color of the entire chart.\nNot applicable to Org charts." - }, - "basicChart": { - "description": "A basic chart specification, can be one of many kinds of charts.\nSee BasicChartType for the list of all\ncharts this supports.", - "$ref": "BasicChartSpec" + "maximized": { + "description": "True to make a chart fill the entire space in which it's rendered with\nminimum padding. False to use the default padding.\n(Not applicable to Geo and Org charts.)", + "type": "boolean" }, "orgChart": { "$ref": "OrgChartSpec", @@ -2252,602 +2310,849 @@ "$ref": "PieChartSpec", "description": "A pie chart specification." }, - "titleTextFormat": { + "subtitle": { + "description": "The subtitle of the chart.", + "type": "string" + }, + "subtitleTextFormat": { "$ref": "TextFormat", - "description": "The title text format.\nStrikethrough and underline are not supported." + "description": "The subtitle text format.\nStrikethrough and underline are not supported." + }, + "subtitleTextPosition": { + "$ref": "TextPosition", + "description": "The subtitle text position.\nThis field is optional." }, "title": { "description": "The title of the chart.", "type": "string" }, - "altText": { - "description": "The alternative text that describes the chart. This is often used\nfor accessibility.", - "type": "string" + "titleTextFormat": { + "$ref": "TextFormat", + "description": "The title text format.\nStrikethrough and underline are not supported." }, "titleTextPosition": { "$ref": "TextPosition", "description": "The title text position.\nThis field is optional." }, - "histogramChart": { - "description": "A histogram chart specification.", - "$ref": "HistogramChartSpec" + "treemapChart": { + "$ref": "TreemapChartSpec", + "description": "A treemap chart specification." }, - "candlestickChart": { - "$ref": "CandlestickChartSpec", - "description": "A candlestick chart specification." - }, - "bubbleChart": { - "description": "A bubble chart specification.", - "$ref": "BubbleChartSpec" + "waterfallChart": { + "$ref": "WaterfallChartSpec", + "description": "A waterfall chart specification." } - } + }, + "type": "object" + }, + "ClearBasicFilterRequest": { + "description": "Clears the basic filter, if any exists on the sheet.", + "id": "ClearBasicFilterRequest", + "properties": { + "sheetId": { + "description": "The sheet ID on which the basic filter should be cleared.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "ClearValuesRequest": { + "description": "The request for clearing a range of values in a spreadsheet.", + "id": "ClearValuesRequest", + "properties": {}, + "type": "object" + }, + "ClearValuesResponse": { + "description": "The response when clearing a range of values in a spreadsheet.", + "id": "ClearValuesResponse", + "properties": { + "clearedRange": { + "description": "The range (in A1 notation) that was cleared.\n(If the request was for an unbounded range or a ranger larger\n than the bounds of the sheet, this will be the actual range\n that was cleared, bounded to the sheet's limits.)", + "type": "string" + }, + "spreadsheetId": { + "description": "The spreadsheet the updates were applied to.", + "type": "string" + } + }, + "type": "object" + }, + "Color": { + "description": "Represents a color in the RGBA color space. This representation is designed\nfor simplicity of conversion to/from color representations in various\nlanguages over compactness; for example, the fields of this representation\ncan be trivially provided to the constructor of \"java.awt.Color\" in Java; it\ncan also be trivially provided to UIColor's \"+colorWithRed:green:blue:alpha\"\nmethod in iOS; and, with just a little work, it can be easily formatted into\na CSS \"rgba()\" string in JavaScript, as well. Here are some examples:\n\nExample (Java):\n\n import com.google.type.Color;\n\n // ...\n public static java.awt.Color fromProto(Color protocolor) {\n float alpha = protocolor.hasAlpha()\n ? protocolor.getAlpha().getValue()\n : 1.0;\n\n return new java.awt.Color(\n protocolor.getRed(),\n protocolor.getGreen(),\n protocolor.getBlue(),\n alpha);\n }\n\n public static Color toProto(java.awt.Color color) {\n float red = (float) color.getRed();\n float green = (float) color.getGreen();\n float blue = (float) color.getBlue();\n float denominator = 255.0;\n Color.Builder resultBuilder =\n Color\n .newBuilder()\n .setRed(red / denominator)\n .setGreen(green / denominator)\n .setBlue(blue / denominator);\n int alpha = color.getAlpha();\n if (alpha != 255) {\n result.setAlpha(\n FloatValue\n .newBuilder()\n .setValue(((float) alpha) / denominator)\n .build());\n }\n return resultBuilder.build();\n }\n // ...\n\nExample (iOS / Obj-C):\n\n // ...\n static UIColor* fromProto(Color* protocolor) {\n float red = [protocolor red];\n float green = [protocolor green];\n float blue = [protocolor blue];\n FloatValue* alpha_wrapper = [protocolor alpha];\n float alpha = 1.0;\n if (alpha_wrapper != nil) {\n alpha = [alpha_wrapper value];\n }\n return [UIColor colorWithRed:red green:green blue:blue alpha:alpha];\n }\n\n static Color* toProto(UIColor* color) {\n CGFloat red, green, blue, alpha;\n if (![color getRed:\u0026red green:\u0026green blue:\u0026blue alpha:\u0026alpha]) {\n return nil;\n }\n Color* result = [Color alloc] init];\n [result setRed:red];\n [result setGreen:green];\n [result setBlue:blue];\n if (alpha \u003c= 0.9999) {\n [result setAlpha:floatWrapperWithValue(alpha)];\n }\n [result autorelease];\n return result;\n }\n // ...\n\n Example (JavaScript):\n\n // ...\n\n var protoToCssColor = function(rgb_color) {\n var redFrac = rgb_color.red || 0.0;\n var greenFrac = rgb_color.green || 0.0;\n var blueFrac = rgb_color.blue || 0.0;\n var red = Math.floor(redFrac * 255);\n var green = Math.floor(greenFrac * 255);\n var blue = Math.floor(blueFrac * 255);\n\n if (!('alpha' in rgb_color)) {\n return rgbToCssColor_(red, green, blue);\n }\n\n var alphaFrac = rgb_color.alpha.value || 0.0;\n var rgbParams = [red, green, blue].join(',');\n return ['rgba(', rgbParams, ',', alphaFrac, ')'].join('');\n };\n\n var rgbToCssColor_ = function(red, green, blue) {\n var rgbNumber = new Number((red \u003c\u003c 16) | (green \u003c\u003c 8) | blue);\n var hexString = rgbNumber.toString(16);\n var missingZeros = 6 - hexString.length;\n var resultBuilder = ['#'];\n for (var i = 0; i \u003c missingZeros; i++) {\n resultBuilder.push('0');\n }\n resultBuilder.push(hexString);\n return resultBuilder.join('');\n };\n\n // ...", + "id": "Color", + "properties": { + "alpha": { + "description": "The fraction of this color that should be applied to the pixel. That is,\nthe final pixel color is defined by the equation:\n\n pixel color = alpha * (this color) + (1.0 - alpha) * (background color)\n\nThis means that a value of 1.0 corresponds to a solid color, whereas\na value of 0.0 corresponds to a completely transparent color. This\nuses a wrapper message rather than a simple float scalar so that it is\npossible to distinguish between a default value and the value being unset.\nIf omitted, this color object is to be rendered as a solid color\n(as if the alpha value had been explicitly given with a value of 1.0).", + "format": "float", + "type": "number" + }, + "blue": { + "description": "The amount of blue in the color as a value in the interval [0, 1].", + "format": "float", + "type": "number" + }, + "green": { + "description": "The amount of green in the color as a value in the interval [0, 1].", + "format": "float", + "type": "number" + }, + "red": { + "description": "The amount of red in the color as a value in the interval [0, 1].", + "format": "float", + "type": "number" + } + }, + "type": "object" + }, + "ConditionValue": { + "description": "The value of the condition.", + "id": "ConditionValue", + "properties": { + "relativeDate": { + "description": "A relative date (based on the current date).\nValid only if the type is\nDATE_BEFORE,\nDATE_AFTER,\nDATE_ON_OR_BEFORE or\nDATE_ON_OR_AFTER.\n\nRelative dates are not supported in data validation.\nThey are supported only in conditional formatting and\nconditional filters.", + "enum": [ + "RELATIVE_DATE_UNSPECIFIED", + "PAST_YEAR", + "PAST_MONTH", + "PAST_WEEK", + "YESTERDAY", + "TODAY", + "TOMORROW" + ], + "enumDescriptions": [ + "Default value, do not use.", + "The value is one year before today.", + "The value is one month before today.", + "The value is one week before today.", + "The value is yesterday.", + "The value is today.", + "The value is tomorrow." + ], + "type": "string" + }, + "userEnteredValue": { + "description": "A value the condition is based on.\nThe value will be parsed as if the user typed into a cell.\nFormulas are supported (and must begin with an `=`).", + "type": "string" + } + }, + "type": "object" + }, + "ConditionalFormatRule": { + "description": "A rule describing a conditional format.", + "id": "ConditionalFormatRule", + "properties": { + "booleanRule": { + "$ref": "BooleanRule", + "description": "The formatting is either \"on\" or \"off\" according to the rule." + }, + "gradientRule": { + "$ref": "GradientRule", + "description": "The formatting will vary based on the gradients in the rule." + }, + "ranges": { + "description": "The ranges that will be formatted if the condition is true.\nAll the ranges must be on the same grid.", + "items": { + "$ref": "GridRange" + }, + "type": "array" + } + }, + "type": "object" + }, + "CopyPasteRequest": { + "description": "Copies data from the source to the destination.", + "id": "CopyPasteRequest", + "properties": { + "destination": { + "$ref": "GridRange", + "description": "The location to paste to. If the range covers a span that's\na multiple of the source's height or width, then the\ndata will be repeated to fill in the destination range.\nIf the range is smaller than the source range, the entire\nsource data will still be copied (beyond the end of the destination range)." + }, + "pasteOrientation": { + "description": "How that data should be oriented when pasting.", + "enum": [ + "NORMAL", + "TRANSPOSE" + ], + "enumDescriptions": [ + "Paste normally.", + "Paste transposed, where all rows become columns and vice versa." + ], + "type": "string" + }, + "pasteType": { + "description": "What kind of data to paste.", + "enum": [ + "PASTE_NORMAL", + "PASTE_VALUES", + "PASTE_FORMAT", + "PASTE_NO_BORDERS", + "PASTE_FORMULA", + "PASTE_DATA_VALIDATION", + "PASTE_CONDITIONAL_FORMATTING" + ], + "enumDescriptions": [ + "Paste values, formulas, formats, and merges.", + "Paste the values ONLY without formats, formulas, or merges.", + "Paste the format and data validation only.", + "Like PASTE_NORMAL but without borders.", + "Paste the formulas only.", + "Paste the data validation only.", + "Paste the conditional formatting rules only." + ], + "type": "string" + }, + "source": { + "$ref": "GridRange", + "description": "The source range to copy." + } + }, + "type": "object" + }, + "CopySheetToAnotherSpreadsheetRequest": { + "description": "The request to copy a sheet across spreadsheets.", + "id": "CopySheetToAnotherSpreadsheetRequest", + "properties": { + "destinationSpreadsheetId": { + "description": "The ID of the spreadsheet to copy the sheet to.", + "type": "string" + } + }, + "type": "object" }, "CreateDeveloperMetadataRequest": { "description": "A request to create developer metadata.", - "type": "object", + "id": "CreateDeveloperMetadataRequest", "properties": { "developerMetadata": { "$ref": "DeveloperMetadata", "description": "The developer metadata to create." } }, - "id": "CreateDeveloperMetadataRequest" + "type": "object" }, - "BatchGetValuesByDataFilterResponse": { - "id": "BatchGetValuesByDataFilterResponse", - "description": "The response when retrieving more than one range of values in a spreadsheet\nselected by DataFilters.", - "type": "object", + "CreateDeveloperMetadataResponse": { + "description": "The response from creating developer metadata.", + "id": "CreateDeveloperMetadataResponse", "properties": { - "valueRanges": { - "description": "The requested values with the list of data filters that matched them.", - "type": "array", - "items": { - "$ref": "MatchedValueRange" - } - }, - "spreadsheetId": { - "description": "The ID of the spreadsheet the data was retrieved from.", - "type": "string" - } - } - }, - "LineStyle": { - "description": "Properties that describe the style of a line.", - "type": "object", - "properties": { - "type": { - "enumDescriptions": [ - "Default value, do not use.", - "No dash type, which is equivalent to a non-visible line.", - "A custom dash for a line. Modifying the exact custom dash style is\ncurrently unsupported.", - "A solid line.", - "A dotted line.", - "A dashed line where the dashes have \"medium\" length.", - "A line that alternates between a \"medium\" dash and a dot.", - "A dashed line where the dashes have \"long\" length.", - "A line that alternates between a \"long\" dash and a dot." - ], - "enum": [ - "LINE_DASH_TYPE_UNSPECIFIED", - "INVISIBLE", - "CUSTOM", - "SOLID", - "DOTTED", - "MEDIUM_DASHED", - "MEDIUM_DASHED_DOTTED", - "LONG_DASHED", - "LONG_DASHED_DOTTED" - ], - "description": "The dash type of the line.", - "type": "string" - }, - "width": { - "description": "The thickness of the line, in px.", - "format": "int32", - "type": "integer" + "developerMetadata": { + "$ref": "DeveloperMetadata", + "description": "The developer metadata that was created." } }, - "id": "LineStyle" + "type": "object" + }, + "CutPasteRequest": { + "description": "Moves data from the source to the destination.", + "id": "CutPasteRequest", + "properties": { + "destination": { + "$ref": "GridCoordinate", + "description": "The top-left coordinate where the data should be pasted." + }, + "pasteType": { + "description": "What kind of data to paste. All the source data will be cut, regardless\nof what is pasted.", + "enum": [ + "PASTE_NORMAL", + "PASTE_VALUES", + "PASTE_FORMAT", + "PASTE_NO_BORDERS", + "PASTE_FORMULA", + "PASTE_DATA_VALIDATION", + "PASTE_CONDITIONAL_FORMATTING" + ], + "enumDescriptions": [ + "Paste values, formulas, formats, and merges.", + "Paste the values ONLY without formats, formulas, or merges.", + "Paste the format and data validation only.", + "Like PASTE_NORMAL but without borders.", + "Paste the formulas only.", + "Paste the data validation only.", + "Paste the conditional formatting rules only." + ], + "type": "string" + }, + "source": { + "$ref": "GridRange", + "description": "The source data to cut." + } + }, + "type": "object" + }, + "DataFilter": { + "description": "Filter that describes what data should be selected or returned from a\nrequest.", + "id": "DataFilter", + "properties": { + "a1Range": { + "description": "Selects data that matches the specified A1 range.", + "type": "string" + }, + "developerMetadataLookup": { + "$ref": "DeveloperMetadataLookup", + "description": "Selects data associated with the developer metadata matching the criteria\ndescribed by this DeveloperMetadataLookup." + }, + "gridRange": { + "$ref": "GridRange", + "description": "Selects data that matches the range described by the GridRange." + } + }, + "type": "object" }, "DataFilterValueRange": { - "id": "DataFilterValueRange", "description": "A range of values whose location is specified by a DataFilter.", - "type": "object", + "id": "DataFilterValueRange", "properties": { + "dataFilter": { + "$ref": "DataFilter", + "description": "The data filter describing the location of the values in the spreadsheet." + }, "majorDimension": { - "enumDescriptions": [ - "The default value, do not use.", - "Operates on the rows of a sheet.", - "Operates on the columns of a sheet." - ], + "description": "The major dimension of the values.", "enum": [ "DIMENSION_UNSPECIFIED", "ROWS", "COLUMNS" ], - "description": "The major dimension of the values.", + "enumDescriptions": [ + "The default value, do not use.", + "Operates on the rows of a sheet.", + "Operates on the columns of a sheet." + ], "type": "string" }, "values": { "description": "The data to be written. If the provided values exceed any of the ranges\nmatched by the data filter then the request will fail. If the provided\nvalues are less than the matched ranges only the specified values will be\nwritten, existing values in the matched ranges will remain unaffected.", - "type": "array", "items": { - "type": "array", "items": { "type": "any" - } - } - }, - "dataFilter": { - "$ref": "DataFilter", - "description": "The data filter describing the location of the values in the spreadsheet." + }, + "type": "array" + }, + "type": "array" } - } + }, + "type": "object" }, - "NumberFormat": { - "id": "NumberFormat", - "description": "The number format of a cell.", - "type": "object", + "DataValidationRule": { + "description": "A data validation rule.", + "id": "DataValidationRule", "properties": { - "pattern": { - "description": "Pattern string used for formatting. If not set, a default pattern based on\nthe user's locale will be used if necessary for the given type.\nSee the [Date and Number Formats guide](/sheets/api/guides/formats) for more\ninformation about the supported patterns.", + "condition": { + "$ref": "BooleanCondition", + "description": "The condition that data in the cell must match." + }, + "inputMessage": { + "description": "A message to show the user when adding data to the cell.", "type": "string" }, - "type": { - "description": "The type of the number format.\nWhen writing, this field must be set.", - "type": "string", - "enumDescriptions": [ - "The number format is not specified\nand is based on the contents of the cell.\nDo not explicitly use this.", - "Text formatting, e.g `1000.12`", - "Number formatting, e.g, `1,000.12`", - "Percent formatting, e.g `10.12%`", - "Currency formatting, e.g `$1,000.12`", - "Date formatting, e.g `9/26/2008`", - "Time formatting, e.g `3:59:00 PM`", - "Date+Time formatting, e.g `9/26/08 15:59:00`", - "Scientific number formatting, e.g `1.01E+03`" - ], - "enum": [ - "NUMBER_FORMAT_TYPE_UNSPECIFIED", - "TEXT", - "NUMBER", - "PERCENT", - "CURRENCY", - "DATE", - "TIME", - "DATE_TIME", - "SCIENTIFIC" - ] - } - } - }, - "CandlestickDomain": { - "id": "CandlestickDomain", - "description": "The domain of a CandlestickChart.", - "type": "object", - "properties": { - "data": { - "description": "The data of the CandlestickDomain.", - "$ref": "ChartData" + "showCustomUi": { + "description": "True if the UI should be customized based on the kind of condition.\nIf true, \"List\" conditions will show a dropdown.", + "type": "boolean" }, - "reversed": { - "description": "True to reverse the order of the domain values (horizontal axis).", + "strict": { + "description": "True if invalid data should be rejected.", "type": "boolean" } - } + }, + "type": "object" }, - "SheetProperties": { - "description": "Properties of a sheet.", - "type": "object", + "DeleteBandingRequest": { + "description": "Removes the banded range with the given ID from the spreadsheet.", + "id": "DeleteBandingRequest", + "properties": { + "bandedRangeId": { + "description": "The ID of the banded range to delete.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "DeleteConditionalFormatRuleRequest": { + "description": "Deletes a conditional format rule at the given index.\nAll subsequent rules' indexes are decremented.", + "id": "DeleteConditionalFormatRuleRequest", "properties": { - "title": { - "description": "The name of the sheet.", - "type": "string" - }, - "tabColor": { - "description": "The color of the tab in the UI.", - "$ref": "Color" - }, "index": { - "description": "The index of the sheet within the spreadsheet.\nWhen adding or updating sheet properties, if this field\nis excluded then the sheet will be added or moved to the end\nof the sheet list. When updating sheet indices or inserting\nsheets, movement is considered in \"before the move\" indexes.\nFor example, if there were 3 sheets (S1, S2, S3) in order to\nmove S1 ahead of S2 the index would have to be set to 2. A sheet\nindex update request will be ignored if the requested index is\nidentical to the sheets current index or if the requested new\nindex is equal to the current sheet index + 1.", + "description": "The zero-based index of the rule to be deleted.", "format": "int32", "type": "integer" }, "sheetId": { - "description": "The ID of the sheet. Must be non-negative.\nThis field cannot be changed once set.", + "description": "The sheet the rule is being deleted from.", "format": "int32", "type": "integer" - }, - "rightToLeft": { - "description": "True if the sheet is an RTL sheet instead of an LTR sheet.", - "type": "boolean" - }, - "hidden": { - "description": "True if the sheet is hidden in the UI, false if it's visible.", - "type": "boolean" - }, - "sheetType": { - "enumDescriptions": [ - "Default value, do not use.", - "The sheet is a grid.", - "The sheet has no grid and instead has an object like a chart or image." - ], - "enum": [ - "SHEET_TYPE_UNSPECIFIED", - "GRID", - "OBJECT" - ], - "description": "The type of sheet. Defaults to GRID.\nThis field cannot be changed once set.", - "type": "string" - }, - "gridProperties": { - "$ref": "GridProperties", - "description": "Additional properties of the sheet if this sheet is a grid.\n(If the sheet is an object sheet, containing a chart or image, then\nthis field will be absent.)\nWhen writing it is an error to set any grid properties on non-grid sheets." } }, - "id": "SheetProperties" + "type": "object" }, - "UpdateDimensionPropertiesRequest": { - "description": "Updates properties of dimensions within the specified range.", - "type": "object", + "DeleteConditionalFormatRuleResponse": { + "description": "The result of deleting a conditional format rule.", + "id": "DeleteConditionalFormatRuleResponse", + "properties": { + "rule": { + "$ref": "ConditionalFormatRule", + "description": "The rule that was deleted." + } + }, + "type": "object" + }, + "DeleteDeveloperMetadataRequest": { + "description": "A request to delete developer metadata.", + "id": "DeleteDeveloperMetadataRequest", + "properties": { + "dataFilter": { + "$ref": "DataFilter", + "description": "The data filter describing the criteria used to select which developer\nmetadata entry to delete." + } + }, + "type": "object" + }, + "DeleteDeveloperMetadataResponse": { + "description": "The response from deleting developer metadata.", + "id": "DeleteDeveloperMetadataResponse", + "properties": { + "deletedDeveloperMetadata": { + "description": "The metadata that was deleted.", + "items": { + "$ref": "DeveloperMetadata" + }, + "type": "array" + } + }, + "type": "object" + }, + "DeleteDimensionRequest": { + "description": "Deletes the dimensions from the sheet.", + "id": "DeleteDimensionRequest", "properties": { "range": { - "description": "The rows or columns to update.", - "$ref": "DimensionRange" - }, - "fields": { - "description": "The fields that should be updated. At least one field must be specified.\nThe root `properties` is implied and should not be specified.\nA single `\"*\"` can be used as short-hand for listing every field.", - "format": "google-fieldmask", - "type": "string" - }, - "properties": { - "$ref": "DimensionProperties", - "description": "Properties to update." + "$ref": "DimensionRange", + "description": "The dimensions to delete from the sheet." } }, - "id": "UpdateDimensionPropertiesRequest" + "type": "object" }, - "SourceAndDestination": { - "description": "A combination of a source range and how to extend that source.", - "type": "object", + "DeleteEmbeddedObjectRequest": { + "description": "Deletes the embedded object with the given ID.", + "id": "DeleteEmbeddedObjectRequest", "properties": { - "fillLength": { - "description": "The number of rows or columns that data should be filled into.\nPositive numbers expand beyond the last row or last column\nof the source. Negative numbers expand before the first row\nor first column of the source.", + "objectId": { + "description": "The ID of the embedded object to delete.", "format": "int32", "type": "integer" + } + }, + "type": "object" + }, + "DeleteFilterViewRequest": { + "description": "Deletes a particular filter view.", + "id": "DeleteFilterViewRequest", + "properties": { + "filterId": { + "description": "The ID of the filter to delete.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "DeleteNamedRangeRequest": { + "description": "Removes the named range with the given ID from the spreadsheet.", + "id": "DeleteNamedRangeRequest", + "properties": { + "namedRangeId": { + "description": "The ID of the named range to delete.", + "type": "string" + } + }, + "type": "object" + }, + "DeleteProtectedRangeRequest": { + "description": "Deletes the protected range with the given ID.", + "id": "DeleteProtectedRangeRequest", + "properties": { + "protectedRangeId": { + "description": "The ID of the protected range to delete.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "DeleteRangeRequest": { + "description": "Deletes a range of cells, shifting other cells into the deleted area.", + "id": "DeleteRangeRequest", + "properties": { + "range": { + "$ref": "GridRange", + "description": "The range of cells to delete." }, - "source": { - "description": "The location of the data to use as the source of the autofill.", - "$ref": "GridRange" - }, - "dimension": { - "description": "The dimension that data should be filled into.", - "type": "string", + "shiftDimension": { + "description": "The dimension from which deleted cells will be replaced with.\nIf ROWS, existing cells will be shifted upward to\nreplace the deleted cells. If COLUMNS, existing cells\nwill be shifted left to replace the deleted cells.", + "enum": [ + "DIMENSION_UNSPECIFIED", + "ROWS", + "COLUMNS" + ], "enumDescriptions": [ "The default value, do not use.", "Operates on the rows of a sheet.", "Operates on the columns of a sheet." ], + "type": "string" + } + }, + "type": "object" + }, + "DeleteSheetRequest": { + "description": "Deletes the requested sheet.", + "id": "DeleteSheetRequest", + "properties": { + "sheetId": { + "description": "The ID of the sheet to delete.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "DeveloperMetadata": { + "description": "Developer metadata associated with a location or object in a spreadsheet.\nDeveloper metadata may be used to associate arbitrary data with various\nparts of a spreadsheet and will remain associated at those locations as they\nmove around and the spreadsheet is edited. For example, if developer\nmetadata is associated with row 5 and another row is then subsequently\ninserted above row 5, that original metadata will still be associated with\nthe row it was first associated with (what is now row 6). If the associated\nobject is deleted its metadata will be deleted too.", + "id": "DeveloperMetadata", + "properties": { + "location": { + "$ref": "DeveloperMetadataLocation", + "description": "The location where the metadata is associated." + }, + "metadataId": { + "description": "The spreadsheet-scoped unique ID that identifies the metadata. IDs may be\nspecified when metadata is created, otherwise one will be randomly\ngenerated and assigned. Must be positive.", + "format": "int32", + "type": "integer" + }, + "metadataKey": { + "description": "The metadata key. There may be multiple metadata in a spreadsheet with the\nsame key. Developer metadata must always have a key specified.", + "type": "string" + }, + "metadataValue": { + "description": "Data associated with the metadata's key.", + "type": "string" + }, + "visibility": { + "description": "The metadata visibility. Developer metadata must always have a visibility\nspecified.", + "enum": [ + "DEVELOPER_METADATA_VISIBILITY_UNSPECIFIED", + "DOCUMENT", + "PROJECT" + ], + "enumDescriptions": [ + "Default value.", + "Document-visible metadata is accessible from any developer project with\naccess to the document.", + "Project-visible metadata is only visible to and accessible by the developer\nproject that created the metadata." + ], + "type": "string" + } + }, + "type": "object" + }, + "DeveloperMetadataLocation": { + "description": "A location where metadata may be associated in a spreadsheet.", + "id": "DeveloperMetadataLocation", + "properties": { + "dimensionRange": { + "$ref": "DimensionRange", + "description": "Represents the row or column when metadata is associated with\na dimension. The specified DimensionRange must represent a single row\nor column; it cannot be unbounded or span multiple rows or columns." + }, + "locationType": { + "description": "The type of location this object represents. This field is read-only.", + "enum": [ + "DEVELOPER_METADATA_LOCATION_TYPE_UNSPECIFIED", + "ROW", + "COLUMN", + "SHEET", + "SPREADSHEET" + ], + "enumDescriptions": [ + "Default value.", + "Developer metadata associated on an entire row dimension.", + "Developer metadata associated on an entire column dimension.", + "Developer metadata associated on an entire sheet.", + "Developer metadata associated on the entire spreadsheet." + ], + "type": "string" + }, + "sheetId": { + "description": "The ID of the sheet when metadata is associated with an entire sheet.", + "format": "int32", + "type": "integer" + }, + "spreadsheet": { + "description": "True when metadata is associated with an entire spreadsheet.", + "type": "boolean" + } + }, + "type": "object" + }, + "DeveloperMetadataLookup": { + "description": "Selects DeveloperMetadata that matches all of the specified fields. For\nexample, if only a metadata ID is specified this considers the\nDeveloperMetadata with that particular unique ID. If a metadata key is\nspecified, this considers all developer metadata with that key. If a\nkey, visibility, and location type are all specified, this considers all\ndeveloper metadata with that key and visibility that are associated with a\nlocation of that type. In general, this\nselects all DeveloperMetadata that matches the intersection of all the\nspecified fields; any field or combination of fields may be specified.", + "id": "DeveloperMetadataLookup", + "properties": { + "locationMatchingStrategy": { + "description": "Determines how this lookup matches the location. If this field is\nspecified as EXACT, only developer metadata associated on the exact\nlocation specified is matched. If this field is specified to INTERSECTING,\ndeveloper metadata associated on intersecting locations is also\nmatched. If left unspecified, this field assumes a default value of\nINTERSECTING.\nIf this field is specified, a metadataLocation\nmust also be specified.", + "enum": [ + "DEVELOPER_METADATA_LOCATION_MATCHING_STRATEGY_UNSPECIFIED", + "EXACT_LOCATION", + "INTERSECTING_LOCATION" + ], + "enumDescriptions": [ + "Default value. This value must not be used.", + "Indicates that a specified location should be matched exactly. For\nexample, if row three were specified as a location this matching strategy\nwould only match developer metadata also associated on row three. Metadata\nassociated on other locations would not be considered.", + "Indicates that a specified location should match that exact location as\nwell as any intersecting locations. For example, if row three were\nspecified as a location this matching strategy would match developer\nmetadata associated on row three as well as metadata associated on\nlocations that intersect row three. If, for instance, there was developer\nmetadata associated on column B, this matching strategy would also match\nthat location because column B intersects row three." + ], + "type": "string" + }, + "locationType": { + "description": "Limits the selected developer metadata to those entries which are\nassociated with locations of the specified type. For example, when this\nfield is specified as ROW this lookup\nonly considers developer metadata associated on rows. If the field is left\nunspecified, all location types are considered. This field cannot be\nspecified as SPREADSHEET when\nthe locationMatchingStrategy\nis specified as INTERSECTING or when the\nmetadataLocation is specified as a\nnon-spreadsheet location: spreadsheet metadata cannot intersect any other\ndeveloper metadata location. This field also must be left unspecified when\nthe locationMatchingStrategy\nis specified as EXACT.", + "enum": [ + "DEVELOPER_METADATA_LOCATION_TYPE_UNSPECIFIED", + "ROW", + "COLUMN", + "SHEET", + "SPREADSHEET" + ], + "enumDescriptions": [ + "Default value.", + "Developer metadata associated on an entire row dimension.", + "Developer metadata associated on an entire column dimension.", + "Developer metadata associated on an entire sheet.", + "Developer metadata associated on the entire spreadsheet." + ], + "type": "string" + }, + "metadataId": { + "description": "Limits the selected developer metadata to that which has a matching\nDeveloperMetadata.metadata_id.", + "format": "int32", + "type": "integer" + }, + "metadataKey": { + "description": "Limits the selected developer metadata to that which has a matching\nDeveloperMetadata.metadata_key.", + "type": "string" + }, + "metadataLocation": { + "$ref": "DeveloperMetadataLocation", + "description": "Limits the selected developer metadata to those entries associated with\nthe specified location. This field either matches exact locations or all\nintersecting locations according the specified\nlocationMatchingStrategy." + }, + "metadataValue": { + "description": "Limits the selected developer metadata to that which has a matching\nDeveloperMetadata.metadata_value.", + "type": "string" + }, + "visibility": { + "description": "Limits the selected developer metadata to that which has a matching\nDeveloperMetadata.visibility. If left unspecified, all developer\nmetadata visibile to the requesting project is considered.", + "enum": [ + "DEVELOPER_METADATA_VISIBILITY_UNSPECIFIED", + "DOCUMENT", + "PROJECT" + ], + "enumDescriptions": [ + "Default value.", + "Document-visible metadata is accessible from any developer project with\naccess to the document.", + "Project-visible metadata is only visible to and accessible by the developer\nproject that created the metadata." + ], + "type": "string" + } + }, + "type": "object" + }, + "DimensionProperties": { + "description": "Properties about a dimension.", + "id": "DimensionProperties", + "properties": { + "developerMetadata": { + "description": "The developer metadata associated with a single row or column.", + "items": { + "$ref": "DeveloperMetadata" + }, + "type": "array" + }, + "hiddenByFilter": { + "description": "True if this dimension is being filtered.\nThis field is read-only.", + "type": "boolean" + }, + "hiddenByUser": { + "description": "True if this dimension is explicitly hidden.", + "type": "boolean" + }, + "pixelSize": { + "description": "The height (if a row) or width (if a column) of the dimension in pixels.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "DimensionRange": { + "description": "A range along a single dimension on a sheet.\nAll indexes are zero-based.\nIndexes are half open: the start index is inclusive\nand the end index is exclusive.\nMissing indexes indicate the range is unbounded on that side.", + "id": "DimensionRange", + "properties": { + "dimension": { + "description": "The dimension of the span.", "enum": [ "DIMENSION_UNSPECIFIED", "ROWS", "COLUMNS" - ] - } - }, - "id": "SourceAndDestination" - }, - "FilterView": { - "description": "A filter view.", - "type": "object", - "properties": { - "namedRangeId": { - "description": "The named range this filter view is backed by, if any.\n\nWhen writing, only one of range or named_range_id\nmay be set.", + ], + "enumDescriptions": [ + "The default value, do not use.", + "Operates on the rows of a sheet.", + "Operates on the columns of a sheet." + ], "type": "string" }, - "filterViewId": { - "description": "The ID of the filter view.", + "endIndex": { + "description": "The end (exclusive) of the span, or not set if unbounded.", "format": "int32", "type": "integer" }, - "criteria": { - "additionalProperties": { - "$ref": "FilterCriteria" - }, - "description": "The criteria for showing/hiding values per column.\nThe map's key is the column index, and the value is the criteria for\nthat column.", - "type": "object" + "sheetId": { + "description": "The sheet this span is on.", + "format": "int32", + "type": "integer" }, - "title": { - "description": "The name of the filter view.", + "startIndex": { + "description": "The start (inclusive) of the span, or not set if unbounded.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "DuplicateFilterViewRequest": { + "description": "Duplicates a particular filter view.", + "id": "DuplicateFilterViewRequest", + "properties": { + "filterId": { + "description": "The ID of the filter being duplicated.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "DuplicateFilterViewResponse": { + "description": "The result of a filter view being duplicated.", + "id": "DuplicateFilterViewResponse", + "properties": { + "filter": { + "$ref": "FilterView", + "description": "The newly created filter." + } + }, + "type": "object" + }, + "DuplicateSheetRequest": { + "description": "Duplicates the contents of a sheet.", + "id": "DuplicateSheetRequest", + "properties": { + "insertSheetIndex": { + "description": "The zero-based index where the new sheet should be inserted.\nThe index of all sheets after this are incremented.", + "format": "int32", + "type": "integer" + }, + "newSheetId": { + "description": "If set, the ID of the new sheet. If not set, an ID is chosen.\nIf set, the ID must not conflict with any existing sheet ID.\nIf set, it must be non-negative.", + "format": "int32", + "type": "integer" + }, + "newSheetName": { + "description": "The name of the new sheet. If empty, a new name is chosen for you.", "type": "string" }, - "range": { - "$ref": "GridRange", - "description": "The range this filter view covers.\n\nWhen writing, only one of range or named_range_id\nmay be set." - }, - "sortSpecs": { - "description": "The sort order per column. Later specifications are used when values\nare equal in the earlier specifications.", - "type": "array", - "items": { - "$ref": "SortSpec" - } + "sourceSheetId": { + "description": "The sheet to duplicate.", + "format": "int32", + "type": "integer" } }, - "id": "FilterView" + "type": "object" }, - "OrgChartSpec": { - "description": "An \u003ca href=\"/chart/interactive/docs/gallery/orgchart\"\u003eorg chart\u003c/a\u003e.\nOrg charts require a unique set of labels in labels and may\noptionally include parent_labels and tooltips.\nparent_labels contain, for each node, the label identifying the parent\nnode. tooltips contain, for each node, an optional tooltip.\n\nFor example, to describe an OrgChart with Alice as the CEO, Bob as the\nPresident (reporting to Alice) and Cathy as VP of Sales (also reporting to\nAlice), have labels contain \"Alice\", \"Bob\", \"Cathy\",\nparent_labels contain \"\", \"Alice\", \"Alice\" and tooltips contain\n\"CEO\", \"President\", \"VP Sales\".", - "type": "object", + "DuplicateSheetResponse": { + "description": "The result of duplicating a sheet.", + "id": "DuplicateSheetResponse", "properties": { - "tooltips": { - "$ref": "ChartData", - "description": "The data containing the tooltip for the corresponding node. A blank value\nresults in no tooltip being displayed for the node.\nThis field is optional." - }, - "selectedNodeColor": { - "$ref": "Color", - "description": "The color of the selected org chart nodes." - }, - "parentLabels": { - "description": "The data containing the label of the parent for the corresponding node.\nA blank value indicates that the node has no parent and is a top-level\nnode.\nThis field is optional.", - "$ref": "ChartData" - }, - "nodeSize": { - "enumDescriptions": [ - "Default value, do not use.", - "The small org chart node size.", - "The medium org chart node size.", - "The large org chart node size." - ], - "enum": [ - "ORG_CHART_LABEL_SIZE_UNSPECIFIED", - "SMALL", - "MEDIUM", - "LARGE" - ], - "description": "The size of the org chart nodes.", - "type": "string" - }, - "labels": { - "$ref": "ChartData", - "description": "The data containing the labels for all the nodes in the chart. Labels\nmust be unique." - }, - "nodeColor": { - "$ref": "Color", - "description": "The color of the org chart nodes." + "properties": { + "$ref": "SheetProperties", + "description": "The properties of the duplicate sheet." } }, - "id": "OrgChartSpec" + "type": "object" }, - "SearchDeveloperMetadataRequest": { - "description": "A request to retrieve all developer metadata matching the set of specified\ncriteria.", - "type": "object", + "Editors": { + "description": "The editors of a protected range.", + "id": "Editors", "properties": { - "dataFilters": { - "description": "The data filters describing the criteria used to determine which\nDeveloperMetadata entries to return. DeveloperMetadata matching any of the\nspecified filters will be included in the response.", - "type": "array", - "items": { - "$ref": "DataFilter" - } - } - }, - "id": "SearchDeveloperMetadataRequest" - }, - "BandingProperties": { - "id": "BandingProperties", - "description": "Properties referring a single dimension (either row or column). If both\nBandedRange.row_properties and BandedRange.column_properties are\nset, the fill colors are applied to cells according to the following rules:\n\n* header_color and footer_color take priority over band colors.\n* first_band_color takes priority over second_band_color.\n* row_properties takes priority over column_properties.\n\nFor example, the first row color takes priority over the first column\ncolor, but the first column color takes priority over the second row color.\nSimilarly, the row header takes priority over the column header in the\ntop left cell, but the column header takes priority over the first row\ncolor if the row header is not set.", - "type": "object", - "properties": { - "secondBandColor": { - "$ref": "Color", - "description": "The second color that is alternating. (Required)" - }, - "footerColor": { - "$ref": "Color", - "description": "The color of the last row or column. If this field is not set, the last\nrow or column will be filled with either first_band_color or\nsecond_band_color, depending on the color of the previous row or\ncolumn." - }, - "headerColor": { - "description": "The color of the first row or column. If this field is set, the first\nrow or column will be filled with this color and the colors will\nalternate between first_band_color and second_band_color starting\nfrom the second row or column. Otherwise, the first row or column will be\nfilled with first_band_color and the colors will proceed to alternate\nas they normally would.", - "$ref": "Color" - }, - "firstBandColor": { - "description": "The first color that is alternating. (Required)", - "$ref": "Color" - } - } - }, - "CandlestickSeries": { - "description": "The series of a CandlestickData.", - "type": "object", - "properties": { - "data": { - "$ref": "ChartData", - "description": "The data of the CandlestickSeries." - } - }, - "id": "CandlestickSeries" - }, - "BasicFilter": { - "id": "BasicFilter", - "description": "The default filter associated with a sheet.", - "type": "object", - "properties": { - "range": { - "$ref": "GridRange", - "description": "The range the filter covers." - }, - "criteria": { - "description": "The criteria for showing/hiding values per column.\nThe map's key is the column index, and the value is the criteria for\nthat column.", - "type": "object", - "additionalProperties": { - "$ref": "FilterCriteria" - } - }, - "sortSpecs": { - "description": "The sort order per column. Later specifications are used when values\nare equal in the earlier specifications.", - "type": "array", - "items": { - "$ref": "SortSpec" - } - } - } - }, - "AddProtectedRangeResponse": { - "id": "AddProtectedRangeResponse", - "description": "The result of adding a new protected range.", - "type": "object", - "properties": { - "protectedRange": { - "description": "The newly added protected range.", - "$ref": "ProtectedRange" - } - } - }, - "HistogramChartSpec": { - "id": "HistogramChartSpec", - "description": "A \u003ca href=\"/chart/interactive/docs/gallery/histogram\"\u003ehistogram chart\u003c/a\u003e.\nA histogram chart groups data items into bins, displaying each bin as a\ncolumn of stacked items. Histograms are used to display the distribution\nof a dataset. Each column of items represents a range into which those\nitems fall. The number of bins can be chosen automatically or specified\nexplicitly.", - "type": "object", - "properties": { - "outlierPercentile": { - "description": "The outlier percentile is used to ensure that outliers do not adversely\naffect the calculation of bucket sizes. For example, setting an outlier\npercentile of 0.05 indicates that the top and bottom 5% of values when\ncalculating buckets. The values are still included in the chart, they will\nbe added to the first or last buckets instead of their own buckets.\nMust be between 0.0 and 0.5.", - "format": "double", - "type": "number" - }, - "showItemDividers": { - "description": "Whether horizontal divider lines should be displayed between items in each\ncolumn.", + "domainUsersCanEdit": { + "description": "True if anyone in the document's domain has edit access to the protected\nrange. Domain protection is only supported on documents within a domain.", "type": "boolean" }, - "series": { - "description": "The series for a histogram may be either a single series of values to be\nbucketed or multiple series, each of the same length, containing the name\nof the series followed by the values to be bucketed for that series.", - "type": "array", + "groups": { + "description": "The email addresses of groups with edit access to the protected range.", "items": { - "$ref": "HistogramSeries" - } + "type": "string" + }, + "type": "array" }, - "legendPosition": { - "enumDescriptions": [ - "Default value, do not use.", - "The legend is rendered on the bottom of the chart.", - "The legend is rendered on the left of the chart.", - "The legend is rendered on the right of the chart.", - "The legend is rendered on the top of the chart.", - "No legend is rendered.", - "The legend is rendered inside the chart area." - ], - "enum": [ - "HISTOGRAM_CHART_LEGEND_POSITION_UNSPECIFIED", - "BOTTOM_LEGEND", - "LEFT_LEGEND", - "RIGHT_LEGEND", - "TOP_LEGEND", - "NO_LEGEND", - "INSIDE_LEGEND" - ], - "description": "The position of the chart legend.", - "type": "string" - }, - "bucketSize": { - "description": "By default the bucket size (the range of values stacked in a single\ncolumn) is chosen automatically, but it may be overridden here.\nE.g., A bucket size of 1.5 results in buckets from 0 - 1.5, 1.5 - 3.0, etc.\nCannot be negative.\nThis field is optional.", - "format": "double", - "type": "number" + "users": { + "description": "The email addresses of users with edit access to the protected range.", + "items": { + "type": "string" + }, + "type": "array" } - } + }, + "type": "object" }, - "UpdateValuesResponse": { - "description": "The response when updating a range of values in a spreadsheet.", - "type": "object", + "EmbeddedChart": { + "description": "A chart embedded in a sheet.", + "id": "EmbeddedChart", "properties": { - "updatedData": { - "description": "The values of the cells after updates were applied.\nThis is only included if the request's `includeValuesInResponse` field\nwas `true`.", - "$ref": "ValueRange" - }, - "updatedRows": { - "description": "The number of rows where at least one cell in the row was updated.", + "chartId": { + "description": "The ID of the chart.", "format": "int32", "type": "integer" }, - "updatedColumns": { - "description": "The number of columns where at least one cell in the column was updated.", - "format": "int32", - "type": "integer" + "position": { + "$ref": "EmbeddedObjectPosition", + "description": "The position of the chart." }, - "spreadsheetId": { - "description": "The spreadsheet the updates were applied to.", - "type": "string" + "spec": { + "$ref": "ChartSpec", + "description": "The specification of the chart." + } + }, + "type": "object" + }, + "EmbeddedObjectPosition": { + "description": "The position of an embedded object such as a chart.", + "id": "EmbeddedObjectPosition", + "properties": { + "newSheet": { + "description": "If true, the embedded object will be put on a new sheet whose ID\nis chosen for you. Used only when writing.", + "type": "boolean" }, - "updatedRange": { - "description": "The range (in A1 notation) that updates were applied to.", - "type": "string" + "overlayPosition": { + "$ref": "OverlayPosition", + "description": "The position at which the object is overlaid on top of a grid." }, - "updatedCells": { - "description": "The number of cells updated.", + "sheetId": { + "description": "The sheet this is on. Set only if the embedded object\nis on its own sheet. Must be non-negative.", "format": "int32", "type": "integer" } }, - "id": "UpdateValuesResponse" - }, - "PivotValue": { - "id": "PivotValue", - "description": "The definition of how a value in a pivot table should be calculated.", - "type": "object", - "properties": { - "name": { - "description": "A name to use for the value.", - "type": "string" - }, - "formula": { - "description": "A custom formula to calculate the value. The formula must start\nwith an `=` character.", - "type": "string" - }, - "summarizeFunction": { - "description": "A function to summarize the value.\nIf formula is set, the only supported values are\nSUM and\nCUSTOM.\nIf sourceColumnOffset is set, then `CUSTOM`\nis not supported.", - "type": "string", - "enumDescriptions": [ - "The default, do not use.", - "Corresponds to the `SUM` function.", - "Corresponds to the `COUNTA` function.", - "Corresponds to the `COUNT` function.", - "Corresponds to the `COUNTUNIQUE` function.", - "Corresponds to the `AVERAGE` function.", - "Corresponds to the `MAX` function.", - "Corresponds to the `MIN` function.", - "Corresponds to the `MEDIAN` function.", - "Corresponds to the `PRODUCT` function.", - "Corresponds to the `STDEV` function.", - "Corresponds to the `STDEVP` function.", - "Corresponds to the `VAR` function.", - "Corresponds to the `VARP` function.", - "Indicates the formula should be used as-is.\nOnly valid if PivotValue.formula was set." - ], - "enum": [ - "PIVOT_STANDARD_VALUE_FUNCTION_UNSPECIFIED", - "SUM", - "COUNTA", - "COUNT", - "COUNTUNIQUE", - "AVERAGE", - "MAX", - "MIN", - "MEDIAN", - "PRODUCT", - "STDEV", - "STDEVP", - "VAR", - "VARP", - "CUSTOM" - ] - }, - "sourceColumnOffset": { - "description": "The column offset of the source range that this value reads from.\n\nFor example, if the source was `C10:E15`, a `sourceColumnOffset` of `0`\nmeans this value refers to column `C`, whereas the offset `1` would\nrefer to column `D`.", - "format": "int32", - "type": "integer" - } - } + "type": "object" }, "ErrorValue": { - "id": "ErrorValue", "description": "An error in a cell.", - "type": "object", + "id": "ErrorValue", "properties": { "message": { "description": "A message with more information about the error\n(in the spreadsheet's locale).", @@ -2855,7 +3160,18 @@ }, "type": { "description": "The type of error.", - "type": "string", + "enum": [ + "ERROR_TYPE_UNSPECIFIED", + "ERROR", + "NULL_VALUE", + "DIVIDE_BY_ZERO", + "VALUE", + "REF", + "NAME", + "NUM", + "N_A", + "LOADING" + ], "enumDescriptions": [ "The default error type, do not use this.", "Corresponds to the `#ERROR!` error.", @@ -2868,405 +3184,148 @@ "Corresponds to the `#N/A` error.", "Corresponds to the `Loading...` state." ], - "enum": [ - "ERROR_TYPE_UNSPECIFIED", - "ERROR", - "NULL_VALUE", - "DIVIDE_BY_ZERO", - "VALUE", - "REF", - "NAME", - "NUM", - "N_A", - "LOADING" - ] - } - } - }, - "CopySheetToAnotherSpreadsheetRequest": { - "id": "CopySheetToAnotherSpreadsheetRequest", - "description": "The request to copy a sheet across spreadsheets.", - "type": "object", - "properties": { - "destinationSpreadsheetId": { - "description": "The ID of the spreadsheet to copy the sheet to.", "type": "string" } - } - }, - "PivotGroupSortValueBucket": { - "description": "Information about which values in a pivot group should be used for sorting.", - "type": "object", - "properties": { - "buckets": { - "description": "Determines the bucket from which values are chosen to sort.\n\nFor example, in a pivot table with one row group & two column groups,\nthe row group can list up to two values. The first value corresponds\nto a value within the first column group, and the second value\ncorresponds to a value in the second column group. If no values\nare listed, this would indicate that the row should be sorted according\nto the \"Grand Total\" over the column groups. If a single value is listed,\nthis would correspond to using the \"Total\" of that bucket.", - "type": "array", - "items": { - "$ref": "ExtendedValue" - } - }, - "valuesIndex": { - "description": "The offset in the PivotTable.values list which the values in this\ngrouping should be sorted by.", - "format": "int32", - "type": "integer" - } }, - "id": "PivotGroupSortValueBucket" + "type": "object" }, - "WaterfallChartSeries": { - "description": "A single series of data for a waterfall chart.", - "type": "object", + "ExtendedValue": { + "description": "The kinds of value that a cell in a spreadsheet can have.", + "id": "ExtendedValue", "properties": { - "positiveColumnsStyle": { - "$ref": "WaterfallChartColumnStyle", - "description": "Styles for all columns in this series with positive values." - }, - "hideTrailingSubtotal": { - "description": "True to hide the subtotal column from the end of the series. By default,\na subtotal column will appear at the end of each series. Setting this\nfield to true will hide that subtotal column for this series.", + "boolValue": { + "description": "Represents a boolean value.", "type": "boolean" }, - "data": { - "description": "The data being visualized in this series.", - "$ref": "ChartData" + "errorValue": { + "$ref": "ErrorValue", + "description": "Represents an error.\nThis field is read-only." }, - "negativeColumnsStyle": { - "description": "Styles for all columns in this series with negative values.", - "$ref": "WaterfallChartColumnStyle" - }, - "customSubtotals": { - "description": "Custom subtotal columns appearing in this series. The order in which\nsubtotals are defined is not significant. Only one subtotal may be\ndefined for each data point.", - "type": "array", - "items": { - "$ref": "WaterfallChartCustomSubtotal" - } - }, - "subtotalColumnsStyle": { - "description": "Styles for all subtotal columns in this series.", - "$ref": "WaterfallChartColumnStyle" - } - }, - "id": "WaterfallChartSeries" - }, - "DeleteDeveloperMetadataRequest": { - "description": "A request to delete developer metadata.", - "type": "object", - "properties": { - "dataFilter": { - "$ref": "DataFilter", - "description": "The data filter describing the criteria used to select which developer\nmetadata entry to delete." - } - }, - "id": "DeleteDeveloperMetadataRequest" - }, - "CandlestickChartSpec": { - "description": "A \u003ca href=\"/chart/interactive/docs/gallery/candlestickchart\"\u003ecandlestick chart\u003c/a\u003e.", - "type": "object", - "properties": { - "domain": { - "$ref": "CandlestickDomain", - "description": "The domain data (horizontal axis) for the candlestick chart. String data\nwill be treated as discrete labels, other data will be treated as\ncontinuous values." - }, - "data": { - "description": "The Candlestick chart data.\nOnly one CandlestickData is supported.", - "type": "array", - "items": { - "$ref": "CandlestickData" - } - } - }, - "id": "CandlestickChartSpec" - }, - "BatchClearValuesByDataFilterResponse": { - "description": "The response when clearing a range of values selected with\nDataFilters in a spreadsheet.", - "type": "object", - "properties": { - "spreadsheetId": { - "description": "The spreadsheet the updates were applied to.", + "formulaValue": { + "description": "Represents a formula.", "type": "string" }, - "clearedRanges": { - "description": "The ranges that were cleared, in A1 notation.\n(If the requests were for an unbounded range or a ranger larger\n than the bounds of the sheet, this will be the actual ranges\n that were cleared, bounded to the sheet's limits.)", - "type": "array", - "items": { - "type": "string" - } + "numberValue": { + "description": "Represents a double value.\nNote: Dates, Times and DateTimes are represented as doubles in\n\"serial number\" format.", + "format": "double", + "type": "number" + }, + "stringValue": { + "description": "Represents a string value.\nLeading single quotes are not included. For example, if the user typed\n`'123` into the UI, this would be represented as a `stringValue` of\n`\"123\"`.", + "type": "string" } }, - "id": "BatchClearValuesByDataFilterResponse" + "type": "object" }, - "CandlestickData": { - "id": "CandlestickData", - "description": "The Candlestick chart data, each containing the low, open, close, and high\nvalues for a series.", - "type": "object", + "FilterCriteria": { + "description": "Criteria for showing/hiding rows in a filter or filter view.", + "id": "FilterCriteria", "properties": { - "highSeries": { - "$ref": "CandlestickSeries", - "description": "The range data (vertical axis) for the high/maximum value for each\ncandle. This is the top of the candle's center line." + "condition": { + "$ref": "BooleanCondition", + "description": "A condition that must be true for values to be shown.\n(This does not override hiddenValues -- if a value is listed there,\n it will still be hidden.)" }, - "lowSeries": { - "description": "The range data (vertical axis) for the low/minimum value for each candle.\nThis is the bottom of the candle's center line.", - "$ref": "CandlestickSeries" - }, - "closeSeries": { - "description": "The range data (vertical axis) for the close/final value for each candle.\nThis is the top of the candle body. If greater than the open value the\ncandle will be filled. Otherwise the candle will be hollow.", - "$ref": "CandlestickSeries" - }, - "openSeries": { - "description": "The range data (vertical axis) for the open/initial value for each\ncandle. This is the bottom of the candle body. If less than the close\nvalue the candle will be filled. Otherwise the candle will be hollow.", - "$ref": "CandlestickSeries" + "hiddenValues": { + "description": "Values that should be hidden.", + "items": { + "type": "string" + }, + "type": "array" } - } + }, + "type": "object" }, - "EmbeddedObjectPosition": { - "description": "The position of an embedded object such as a chart.", - "type": "object", + "FilterView": { + "description": "A filter view.", + "id": "FilterView", "properties": { - "newSheet": { - "description": "If true, the embedded object will be put on a new sheet whose ID\nis chosen for you. Used only when writing.", + "criteria": { + "additionalProperties": { + "$ref": "FilterCriteria" + }, + "description": "The criteria for showing/hiding values per column.\nThe map's key is the column index, and the value is the criteria for\nthat column.", + "type": "object" + }, + "filterViewId": { + "description": "The ID of the filter view.", + "format": "int32", + "type": "integer" + }, + "namedRangeId": { + "description": "The named range this filter view is backed by, if any.\n\nWhen writing, only one of range or named_range_id\nmay be set.", + "type": "string" + }, + "range": { + "$ref": "GridRange", + "description": "The range this filter view covers.\n\nWhen writing, only one of range or named_range_id\nmay be set." + }, + "sortSpecs": { + "description": "The sort order per column. Later specifications are used when values\nare equal in the earlier specifications.", + "items": { + "$ref": "SortSpec" + }, + "type": "array" + }, + "title": { + "description": "The name of the filter view.", + "type": "string" + } + }, + "type": "object" + }, + "FindReplaceRequest": { + "description": "Finds and replaces data in cells over a range, sheet, or all sheets.", + "id": "FindReplaceRequest", + "properties": { + "allSheets": { + "description": "True to find/replace over all sheets.", + "type": "boolean" + }, + "find": { + "description": "The value to search.", + "type": "string" + }, + "includeFormulas": { + "description": "True if the search should include cells with formulas.\nFalse to skip cells with formulas.", + "type": "boolean" + }, + "matchCase": { + "description": "True if the search is case sensitive.", + "type": "boolean" + }, + "matchEntireCell": { + "description": "True if the find value should match the entire cell.", + "type": "boolean" + }, + "range": { + "$ref": "GridRange", + "description": "The range to find/replace over." + }, + "replacement": { + "description": "The value to use as the replacement.", + "type": "string" + }, + "searchByRegex": { + "description": "True if the find value is a regex.\nThe regular expression and replacement should follow Java regex rules\nat https://docs.oracle.com/javase/8/docs/api/java/util/regex/Pattern.html.\nThe replacement string is allowed to refer to capturing groups.\nFor example, if one cell has the contents `\"Google Sheets\"` and another\nhas `\"Google Docs\"`, then searching for `\"o.* (.*)\"` with a replacement of\n`\"$1 Rocks\"` would change the contents of the cells to\n`\"GSheets Rocks\"` and `\"GDocs Rocks\"` respectively.", "type": "boolean" }, "sheetId": { - "description": "The sheet this is on. Set only if the embedded object\nis on its own sheet. Must be non-negative.", - "format": "int32", - "type": "integer" - }, - "overlayPosition": { - "$ref": "OverlayPosition", - "description": "The position at which the object is overlaid on top of a grid." - } - }, - "id": "EmbeddedObjectPosition" - }, - "DeleteProtectedRangeRequest": { - "description": "Deletes the protected range with the given ID.", - "type": "object", - "properties": { - "protectedRangeId": { - "description": "The ID of the protected range to delete.", + "description": "The sheet to find/replace over.", "format": "int32", "type": "integer" } }, - "id": "DeleteProtectedRangeRequest" - }, - "DeveloperMetadataLookup": { - "id": "DeveloperMetadataLookup", - "description": "Selects DeveloperMetadata that matches all of the specified fields. For\nexample, if only a metadata ID is specified this considers the\nDeveloperMetadata with that particular unique ID. If a metadata key is\nspecified, this considers all developer metadata with that key. If a\nkey, visibility, and location type are all specified, this considers all\ndeveloper metadata with that key and visibility that are associated with a\nlocation of that type. In general, this\nselects all DeveloperMetadata that matches the intersection of all the\nspecified fields; any field or combination of fields may be specified.", - "type": "object", - "properties": { - "metadataLocation": { - "$ref": "DeveloperMetadataLocation", - "description": "Limits the selected developer metadata to those entries associated with\nthe specified location. This field either matches exact locations or all\nintersecting locations according the specified\nlocationMatchingStrategy." - }, - "locationMatchingStrategy": { - "description": "Determines how this lookup matches the location. If this field is\nspecified as EXACT, only developer metadata associated on the exact\nlocation specified is matched. If this field is specified to INTERSECTING,\ndeveloper metadata associated on intersecting locations is also\nmatched. If left unspecified, this field assumes a default value of\nINTERSECTING.\nIf this field is specified, a metadataLocation\nmust also be specified.", - "type": "string", - "enumDescriptions": [ - "Default value. This value must not be used.", - "Indicates that a specified location should be matched exactly. For\nexample, if row three were specified as a location this matching strategy\nwould only match developer metadata also associated on row three. Metadata\nassociated on other locations would not be considered.", - "Indicates that a specified location should match that exact location as\nwell as any intersecting locations. For example, if row three were\nspecified as a location this matching strategy would match developer\nmetadata associated on row three as well as metadata associated on\nlocations that intersect row three. If, for instance, there was developer\nmetadata associated on column B, this matching strategy would also match\nthat location because column B intersects row three." - ], - "enum": [ - "DEVELOPER_METADATA_LOCATION_MATCHING_STRATEGY_UNSPECIFIED", - "EXACT_LOCATION", - "INTERSECTING_LOCATION" - ] - }, - "locationType": { - "description": "Limits the selected developer metadata to those entries which are\nassociated with locations of the specified type. For example, when this\nfield is specified as ROW this lookup\nonly considers developer metadata associated on rows. If the field is left\nunspecified, all location types are considered. This field cannot be\nspecified as SPREADSHEET when\nthe locationMatchingStrategy\nis specified as INTERSECTING or when the\nmetadataLocation is specified as a\nnon-spreadsheet location: spreadsheet metadata cannot intersect any other\ndeveloper metadata location. This field also must be left unspecified when\nthe locationMatchingStrategy\nis specified as EXACT.", - "type": "string", - "enumDescriptions": [ - "Default value.", - "Developer metadata associated on an entire row dimension.", - "Developer metadata associated on an entire column dimension.", - "Developer metadata associated on an entire sheet.", - "Developer metadata associated on the entire spreadsheet." - ], - "enum": [ - "DEVELOPER_METADATA_LOCATION_TYPE_UNSPECIFIED", - "ROW", - "COLUMN", - "SHEET", - "SPREADSHEET" - ] - }, - "metadataKey": { - "description": "Limits the selected developer metadata to that which has a matching\nDeveloperMetadata.metadata_key.", - "type": "string" - }, - "metadataId": { - "description": "Limits the selected developer metadata to that which has a matching\nDeveloperMetadata.metadata_id.", - "format": "int32", - "type": "integer" - }, - "visibility": { - "description": "Limits the selected developer metadata to that which has a matching\nDeveloperMetadata.visibility. If left unspecified, all developer\nmetadata visibile to the requesting project is considered.", - "type": "string", - "enumDescriptions": [ - "Default value.", - "Document-visible metadata is accessible from any developer project with\naccess to the document.", - "Project-visible metadata is only visible to and accessible by the developer\nproject that created the metadata." - ], - "enum": [ - "DEVELOPER_METADATA_VISIBILITY_UNSPECIFIED", - "DOCUMENT", - "PROJECT" - ] - }, - "metadataValue": { - "description": "Limits the selected developer metadata to that which has a matching\nDeveloperMetadata.metadata_value.", - "type": "string" - } - } - }, - "AutoFillRequest": { - "description": "Fills in more data based on existing data.", - "type": "object", - "properties": { - "range": { - "$ref": "GridRange", - "description": "The range to autofill. This will examine the range and detect\nthe location that has data and automatically fill that data\nin to the rest of the range." - }, - "useAlternateSeries": { - "description": "True if we should generate data with the \"alternate\" series.\nThis differs based on the type and amount of source data.", - "type": "boolean" - }, - "sourceAndDestination": { - "$ref": "SourceAndDestination", - "description": "The source and destination areas to autofill.\nThis explicitly lists the source of the autofill and where to\nextend that data." - } - }, - "id": "AutoFillRequest" - }, - "GradientRule": { - "description": "A rule that applies a gradient color scale format, based on\nthe interpolation points listed. The format of a cell will vary\nbased on its contents as compared to the values of the interpolation\npoints.", - "type": "object", - "properties": { - "minpoint": { - "description": "The starting interpolation point.", - "$ref": "InterpolationPoint" - }, - "maxpoint": { - "$ref": "InterpolationPoint", - "description": "The final interpolation point." - }, - "midpoint": { - "$ref": "InterpolationPoint", - "description": "An optional midway interpolation point." - } - }, - "id": "GradientRule" - }, - "ClearValuesRequest": { - "id": "ClearValuesRequest", - "description": "The request for clearing a range of values in a spreadsheet.", - "type": "object", - "properties": {} - }, - "SetBasicFilterRequest": { - "id": "SetBasicFilterRequest", - "description": "Sets the basic filter associated with a sheet.", - "type": "object", - "properties": { - "filter": { - "description": "The filter to set.", - "$ref": "BasicFilter" - } - } - }, - "InterpolationPoint": { - "description": "A single interpolation point on a gradient conditional format.\nThese pin the gradient color scale according to the color,\ntype and value chosen.", - "type": "object", - "properties": { - "color": { - "$ref": "Color", - "description": "The color this interpolation point should use." - }, - "type": { - "description": "How the value should be interpreted.", - "type": "string", - "enumDescriptions": [ - "The default value, do not use.", - "The interpolation point will use the minimum value in the\ncells over the range of the conditional format.", - "The interpolation point will use the maximum value in the\ncells over the range of the conditional format.", - "The interpolation point will use exactly the value in\nInterpolationPoint.value.", - "The interpolation point will be the given percentage over\nall the cells in the range of the conditional format.\nThis is equivalent to NUMBER if the value was:\n`=(MAX(FLATTEN(range)) * (value / 100))\n + (MIN(FLATTEN(range)) * (1 - (value / 100)))`\n(where errors in the range are ignored when flattening).", - "The interpolation point will be the given percentile\nover all the cells in the range of the conditional format.\nThis is equivalent to NUMBER if the value was:\n`=PERCENTILE(FLATTEN(range), value / 100)`\n(where errors in the range are ignored when flattening)." - ], - "enum": [ - "INTERPOLATION_POINT_TYPE_UNSPECIFIED", - "MIN", - "MAX", - "NUMBER", - "PERCENT", - "PERCENTILE" - ] - }, - "value": { - "description": "The value this interpolation point uses. May be a formula.\nUnused if type is MIN or\nMAX.", - "type": "string" - } - }, - "id": "InterpolationPoint" - }, - "BatchClearValuesByDataFilterRequest": { - "description": "The request for clearing more than one range selected by a\nDataFilter in a spreadsheet.", - "type": "object", - "properties": { - "dataFilters": { - "description": "The DataFilters used to determine which ranges to clear.", - "type": "array", - "items": { - "$ref": "DataFilter" - } - } - }, - "id": "BatchClearValuesByDataFilterRequest" - }, - "GetSpreadsheetByDataFilterRequest": { - "description": "The request for retrieving a Spreadsheet.", - "type": "object", - "properties": { - "includeGridData": { - "description": "True if grid data should be returned.\nThis parameter is ignored if a field mask was set in the request.", - "type": "boolean" - }, - "dataFilters": { - "description": "The DataFilters used to select which ranges to retrieve from\nthe spreadsheet.", - "type": "array", - "items": { - "$ref": "DataFilter" - } - } - }, - "id": "GetSpreadsheetByDataFilterRequest" - }, - "DeleteEmbeddedObjectRequest": { - "description": "Deletes the embedded object with the given ID.", - "type": "object", - "properties": { - "objectId": { - "description": "The ID of the embedded object to delete.", - "format": "int32", - "type": "integer" - } - }, - "id": "DeleteEmbeddedObjectRequest" + "type": "object" }, "FindReplaceResponse": { "description": "The result of the find/replace.", - "type": "object", + "id": "FindReplaceResponse", "properties": { "formulasChanged": { "description": "The number of formula cells changed.", "format": "int32", "type": "integer" }, - "valuesChanged": { - "description": "The number of non-formula cells changed.", - "format": "int32", - "type": "integer" - }, "occurrencesChanged": { "description": "The number of occurrences (possibly multiple within a cell) changed.\nFor example, if replacing `\"e\"` with `\"o\"` in `\"Google Sheets\"`, this would\nbe `\"3\"` because `\"Google Sheets\"` -\u003e `\"Googlo Shoots\"`.", "format": "int32", @@ -3281,240 +3340,250 @@ "description": "The number of sheets changed.", "format": "int32", "type": "integer" - } - }, - "id": "FindReplaceResponse" - }, - "UpdateValuesByDataFilterResponse": { - "description": "The response when updating a range of values by a data filter in a\nspreadsheet.", - "type": "object", - "properties": { - "updatedData": { - "$ref": "ValueRange", - "description": "The values of the cells in the range matched by the dataFilter after all\nupdates were applied. This is only included if the request's\n`includeValuesInResponse` field was `true`." }, - "updatedRows": { - "description": "The number of rows where at least one cell in the row was updated.", - "format": "int32", - "type": "integer" - }, - "updatedColumns": { - "description": "The number of columns where at least one cell in the column was updated.", - "format": "int32", - "type": "integer" - }, - "updatedRange": { - "description": "The range (in A1 notation) that updates were applied to.", - "type": "string" - }, - "updatedCells": { - "description": "The number of cells updated.", - "format": "int32", - "type": "integer" - }, - "dataFilter": { - "$ref": "DataFilter", - "description": "The data filter that selected the range that was updated." - } - }, - "id": "UpdateValuesByDataFilterResponse" - }, - "DeleteSheetRequest": { - "id": "DeleteSheetRequest", - "description": "Deletes the requested sheet.", - "type": "object", - "properties": { - "sheetId": { - "description": "The ID of the sheet to delete.", - "format": "int32", - "type": "integer" - } - } - }, - "DuplicateFilterViewRequest": { - "description": "Duplicates a particular filter view.", - "type": "object", - "properties": { - "filterId": { - "description": "The ID of the filter being duplicated.", + "valuesChanged": { + "description": "The number of non-formula cells changed.", "format": "int32", "type": "integer" } }, - "id": "DuplicateFilterViewRequest" + "type": "object" }, - "MatchedValueRange": { - "description": "A value range that was matched by one or more data filers.", - "type": "object", + "GetSpreadsheetByDataFilterRequest": { + "description": "The request for retrieving a Spreadsheet.", + "id": "GetSpreadsheetByDataFilterRequest", "properties": { - "valueRange": { - "$ref": "ValueRange", - "description": "The values matched by the DataFilter." - }, "dataFilters": { - "description": "The DataFilters from the request that matched the range of\nvalues.", - "type": "array", + "description": "The DataFilters used to select which ranges to retrieve from\nthe spreadsheet.", "items": { "$ref": "DataFilter" - } + }, + "type": "array" + }, + "includeGridData": { + "description": "True if grid data should be returned.\nThis parameter is ignored if a field mask was set in the request.", + "type": "boolean" } }, - "id": "MatchedValueRange" + "type": "object" }, - "DeveloperMetadataLocation": { - "id": "DeveloperMetadataLocation", - "description": "A location where metadata may be associated in a spreadsheet.", - "type": "object", + "GradientRule": { + "description": "A rule that applies a gradient color scale format, based on\nthe interpolation points listed. The format of a cell will vary\nbased on its contents as compared to the values of the interpolation\npoints.", + "id": "GradientRule", "properties": { - "spreadsheet": { - "description": "True when metadata is associated with an entire spreadsheet.", - "type": "boolean" + "maxpoint": { + "$ref": "InterpolationPoint", + "description": "The final interpolation point." + }, + "midpoint": { + "$ref": "InterpolationPoint", + "description": "An optional midway interpolation point." + }, + "minpoint": { + "$ref": "InterpolationPoint", + "description": "The starting interpolation point." + } + }, + "type": "object" + }, + "GridCoordinate": { + "description": "A coordinate in a sheet.\nAll indexes are zero-based.", + "id": "GridCoordinate", + "properties": { + "columnIndex": { + "description": "The column index of the coordinate.", + "format": "int32", + "type": "integer" + }, + "rowIndex": { + "description": "The row index of the coordinate.", + "format": "int32", + "type": "integer" }, "sheetId": { - "description": "The ID of the sheet when metadata is associated with an entire sheet.", - "format": "int32", - "type": "integer" - }, - "locationType": { - "enumDescriptions": [ - "Default value.", - "Developer metadata associated on an entire row dimension.", - "Developer metadata associated on an entire column dimension.", - "Developer metadata associated on an entire sheet.", - "Developer metadata associated on the entire spreadsheet." - ], - "enum": [ - "DEVELOPER_METADATA_LOCATION_TYPE_UNSPECIFIED", - "ROW", - "COLUMN", - "SHEET", - "SPREADSHEET" - ], - "description": "The type of location this object represents. This field is read-only.", - "type": "string" - }, - "dimensionRange": { - "description": "Represents the row or column when metadata is associated with\na dimension. The specified DimensionRange must represent a single row\nor column; it cannot be unbounded or span multiple rows or columns.", - "$ref": "DimensionRange" - } - } - }, - "UpdateConditionalFormatRuleResponse": { - "description": "The result of updating a conditional format rule.", - "type": "object", - "properties": { - "newIndex": { - "description": "The index of the new rule.", - "format": "int32", - "type": "integer" - }, - "oldIndex": { - "description": "The old index of the rule. Not set if a rule was replaced\n(because it is the same as new_index).", - "format": "int32", - "type": "integer" - }, - "newRule": { - "$ref": "ConditionalFormatRule", - "description": "The new rule that replaced the old rule (if replacing),\nor the rule that was moved (if moved)" - }, - "oldRule": { - "$ref": "ConditionalFormatRule", - "description": "The old (deleted) rule. Not set if a rule was moved\n(because it is the same as new_rule)." - } - }, - "id": "UpdateConditionalFormatRuleResponse" - }, - "ConditionValue": { - "id": "ConditionValue", - "description": "The value of the condition.", - "type": "object", - "properties": { - "relativeDate": { - "description": "A relative date (based on the current date).\nValid only if the type is\nDATE_BEFORE,\nDATE_AFTER,\nDATE_ON_OR_BEFORE or\nDATE_ON_OR_AFTER.\n\nRelative dates are not supported in data validation.\nThey are supported only in conditional formatting and\nconditional filters.", - "type": "string", - "enumDescriptions": [ - "Default value, do not use.", - "The value is one year before today.", - "The value is one month before today.", - "The value is one week before today.", - "The value is yesterday.", - "The value is today.", - "The value is tomorrow." - ], - "enum": [ - "RELATIVE_DATE_UNSPECIFIED", - "PAST_YEAR", - "PAST_MONTH", - "PAST_WEEK", - "YESTERDAY", - "TODAY", - "TOMORROW" - ] - }, - "userEnteredValue": { - "description": "A value the condition is based on.\nThe value will be parsed as if the user typed into a cell.\nFormulas are supported (and must begin with an `=`).", - "type": "string" - } - } - }, - "DuplicateSheetRequest": { - "description": "Duplicates the contents of a sheet.", - "type": "object", - "properties": { - "newSheetId": { - "description": "If set, the ID of the new sheet. If not set, an ID is chosen.\nIf set, the ID must not conflict with any existing sheet ID.\nIf set, it must be non-negative.", - "format": "int32", - "type": "integer" - }, - "insertSheetIndex": { - "description": "The zero-based index where the new sheet should be inserted.\nThe index of all sheets after this are incremented.", - "format": "int32", - "type": "integer" - }, - "newSheetName": { - "description": "The name of the new sheet. If empty, a new name is chosen for you.", - "type": "string" - }, - "sourceSheetId": { - "description": "The sheet to duplicate.", + "description": "The sheet this coordinate is on.", "format": "int32", "type": "integer" } }, - "id": "DuplicateSheetRequest" + "type": "object" }, - "ExtendedValue": { - "id": "ExtendedValue", - "description": "The kinds of value that a cell in a spreadsheet can have.", - "type": "object", + "GridData": { + "description": "Data in the grid, as well as metadata about the dimensions.", + "id": "GridData", "properties": { - "numberValue": { - "description": "Represents a double value.\nNote: Dates, Times and DateTimes are represented as doubles in\n\"serial number\" format.", + "columnMetadata": { + "description": "Metadata about the requested columns in the grid, starting with the column\nin start_column.", + "items": { + "$ref": "DimensionProperties" + }, + "type": "array" + }, + "rowData": { + "description": "The data in the grid, one entry per row,\nstarting with the row in startRow.\nThe values in RowData will correspond to columns starting\nat start_column.", + "items": { + "$ref": "RowData" + }, + "type": "array" + }, + "rowMetadata": { + "description": "Metadata about the requested rows in the grid, starting with the row\nin start_row.", + "items": { + "$ref": "DimensionProperties" + }, + "type": "array" + }, + "startColumn": { + "description": "The first column this GridData refers to, zero-based.", + "format": "int32", + "type": "integer" + }, + "startRow": { + "description": "The first row this GridData refers to, zero-based.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "GridProperties": { + "description": "Properties of a grid.", + "id": "GridProperties", + "properties": { + "columnCount": { + "description": "The number of columns in the grid.", + "format": "int32", + "type": "integer" + }, + "frozenColumnCount": { + "description": "The number of columns that are frozen in the grid.", + "format": "int32", + "type": "integer" + }, + "frozenRowCount": { + "description": "The number of rows that are frozen in the grid.", + "format": "int32", + "type": "integer" + }, + "hideGridlines": { + "description": "True if the grid isn't showing gridlines in the UI.", + "type": "boolean" + }, + "rowCount": { + "description": "The number of rows in the grid.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "GridRange": { + "description": "A range on a sheet.\nAll indexes are zero-based.\nIndexes are half open, e.g the start index is inclusive\nand the end index is exclusive -- [start_index, end_index).\nMissing indexes indicate the range is unbounded on that side.\n\nFor example, if `\"Sheet1\"` is sheet ID 0, then:\n\n `Sheet1!A1:A1 == sheet_id: 0,\n start_row_index: 0, end_row_index: 1,\n start_column_index: 0, end_column_index: 1`\n\n `Sheet1!A3:B4 == sheet_id: 0,\n start_row_index: 2, end_row_index: 4,\n start_column_index: 0, end_column_index: 2`\n\n `Sheet1!A:B == sheet_id: 0,\n start_column_index: 0, end_column_index: 2`\n\n `Sheet1!A5:B == sheet_id: 0,\n start_row_index: 4,\n start_column_index: 0, end_column_index: 2`\n\n `Sheet1 == sheet_id:0`\n\nThe start index must always be less than or equal to the end index.\nIf the start index equals the end index, then the range is empty.\nEmpty ranges are typically not meaningful and are usually rendered in the\nUI as `#REF!`.", + "id": "GridRange", + "properties": { + "endColumnIndex": { + "description": "The end column (exclusive) of the range, or not set if unbounded.", + "format": "int32", + "type": "integer" + }, + "endRowIndex": { + "description": "The end row (exclusive) of the range, or not set if unbounded.", + "format": "int32", + "type": "integer" + }, + "sheetId": { + "description": "The sheet this range is on.", + "format": "int32", + "type": "integer" + }, + "startColumnIndex": { + "description": "The start column (inclusive) of the range, or not set if unbounded.", + "format": "int32", + "type": "integer" + }, + "startRowIndex": { + "description": "The start row (inclusive) of the range, or not set if unbounded.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "HistogramChartSpec": { + "description": "A \u003ca href=\"/chart/interactive/docs/gallery/histogram\"\u003ehistogram chart\u003c/a\u003e.\nA histogram chart groups data items into bins, displaying each bin as a\ncolumn of stacked items. Histograms are used to display the distribution\nof a dataset. Each column of items represents a range into which those\nitems fall. The number of bins can be chosen automatically or specified\nexplicitly.", + "id": "HistogramChartSpec", + "properties": { + "bucketSize": { + "description": "By default the bucket size (the range of values stacked in a single\ncolumn) is chosen automatically, but it may be overridden here.\nE.g., A bucket size of 1.5 results in buckets from 0 - 1.5, 1.5 - 3.0, etc.\nCannot be negative.\nThis field is optional.", "format": "double", "type": "number" }, - "errorValue": { - "$ref": "ErrorValue", - "description": "Represents an error.\nThis field is read-only." - }, - "stringValue": { - "description": "Represents a string value.\nLeading single quotes are not included. For example, if the user typed\n`'123` into the UI, this would be represented as a `stringValue` of\n`\"123\"`.", + "legendPosition": { + "description": "The position of the chart legend.", + "enum": [ + "HISTOGRAM_CHART_LEGEND_POSITION_UNSPECIFIED", + "BOTTOM_LEGEND", + "LEFT_LEGEND", + "RIGHT_LEGEND", + "TOP_LEGEND", + "NO_LEGEND", + "INSIDE_LEGEND" + ], + "enumDescriptions": [ + "Default value, do not use.", + "The legend is rendered on the bottom of the chart.", + "The legend is rendered on the left of the chart.", + "The legend is rendered on the right of the chart.", + "The legend is rendered on the top of the chart.", + "No legend is rendered.", + "The legend is rendered inside the chart area." + ], "type": "string" }, - "boolValue": { - "description": "Represents a boolean value.", + "outlierPercentile": { + "description": "The outlier percentile is used to ensure that outliers do not adversely\naffect the calculation of bucket sizes. For example, setting an outlier\npercentile of 0.05 indicates that the top and bottom 5% of values when\ncalculating buckets. The values are still included in the chart, they will\nbe added to the first or last buckets instead of their own buckets.\nMust be between 0.0 and 0.5.", + "format": "double", + "type": "number" + }, + "series": { + "description": "The series for a histogram may be either a single series of values to be\nbucketed or multiple series, each of the same length, containing the name\nof the series followed by the values to be bucketed for that series.", + "items": { + "$ref": "HistogramSeries" + }, + "type": "array" + }, + "showItemDividers": { + "description": "Whether horizontal divider lines should be displayed between items in each\ncolumn.", "type": "boolean" - }, - "formulaValue": { - "description": "Represents a formula.", - "type": "string" } - } + }, + "type": "object" + }, + "HistogramRule": { + "description": "Allows you to organize the numeric values in a source data column into\nbuckets of a constant size. All values from HistogramRule.start to\nHistogramRule.end will be placed into groups of size\nHistogramRule.interval. In addition, all values below\nHistogramRule.start will be placed in one group, and all values above\nHistogramRule.end will be placed in another. Only\nHistogramRule.interval is required, though if HistogramRule.start\nand HistogramRule.end are both provided, HistogramRule.start must\nbe less than HistogramRule.end. For example, a pivot table showing\naverage purchase amount by age that has 50+ rows:\n\n +-----+-------------------+\n | Age | AVERAGE of Amount |\n +-----+-------------------+\n | 16 | $27.13 |\n | 17 | $5.24 |\n | 18 | $20.15 |\n ...\n +-----+-------------------+\ncould be turned into a pivot table that looks like the one below by\napplying a histogram group rule with a HistogramRule.start of 25,\nan HistogramRule.interval of 20, and an HistogramRule.end\nof 65.\n\n +-------------+-------------------+\n | Grouped Age | AVERAGE of Amount |\n +-------------+-------------------+\n | \u003c 25 | $19.34 |\n | 25-45 | $31.43 |\n | 45-65 | $35.87 |\n | \u003e 65 | $27.55 |\n +-------------+-------------------+\n | Grand Total | $29.12 |\n +-------------+-------------------+", + "id": "HistogramRule", + "properties": { + "end": { + "description": "Optional. The maximum value at which items will be placed into buckets\nof constant size. Values above end will be lumped into a single bucket.", + "format": "double", + "type": "number" + }, + "interval": { + "description": "Required. The size of the buckets that will be created. Must be positive.", + "format": "double", + "type": "number" + }, + "start": { + "description": "Optional. The minimum value at which items will be placed into buckets\nof constant size. Values below start will be lumped into a single bucket.", + "format": "double", + "type": "number" + } + }, + "type": "object" }, "HistogramSeries": { - "id": "HistogramSeries", "description": "A histogram series containing the series color and data.", - "type": "object", + "id": "HistogramSeries", "properties": { "barColor": { "$ref": "Color", @@ -3524,197 +3593,87 @@ "$ref": "ChartData", "description": "The data for this histogram series." } - } + }, + "type": "object" }, - "BatchClearValuesResponse": { - "id": "BatchClearValuesResponse", - "description": "The response when clearing a range of values in a spreadsheet.", - "type": "object", + "InsertDimensionRequest": { + "description": "Inserts rows or columns in a sheet at a particular index.", + "id": "InsertDimensionRequest", "properties": { - "spreadsheetId": { - "description": "The spreadsheet the updates were applied to.", - "type": "string" + "inheritFromBefore": { + "description": "Whether dimension properties should be extended from the dimensions\nbefore or after the newly inserted dimensions.\nTrue to inherit from the dimensions before (in which case the start\nindex must be greater than 0), and false to inherit from the dimensions\nafter.\n\nFor example, if row index 0 has red background and row index 1\nhas a green background, then inserting 2 rows at index 1 can inherit\neither the green or red background. If `inheritFromBefore` is true,\nthe two new rows will be red (because the row before the insertion point\nwas red), whereas if `inheritFromBefore` is false, the two new rows will\nbe green (because the row after the insertion point was green).", + "type": "boolean" }, - "clearedRanges": { - "description": "The ranges that were cleared, in A1 notation.\n(If the requests were for an unbounded range or a ranger larger\n than the bounds of the sheet, this will be the actual ranges\n that were cleared, bounded to the sheet's limits.)", - "type": "array", - "items": { - "type": "string" - } + "range": { + "$ref": "DimensionRange", + "description": "The dimensions to insert. Both the start and end indexes must be bounded." } - } + }, + "type": "object" }, - "Spreadsheet": { - "id": "Spreadsheet", - "description": "Resource that represents a spreadsheet.", - "type": "object", - "properties": { - "sheets": { - "description": "The sheets that are part of a spreadsheet.", - "type": "array", - "items": { - "$ref": "Sheet" - } - }, - "spreadsheetUrl": { - "description": "The url of the spreadsheet.\nThis field is read-only.", - "type": "string" - }, - "properties": { - "description": "Overall properties of a spreadsheet.", - "$ref": "SpreadsheetProperties" - }, - "namedRanges": { - "description": "The named ranges defined in a spreadsheet.", - "type": "array", - "items": { - "$ref": "NamedRange" - } - }, - "spreadsheetId": { - "description": "The ID of the spreadsheet.\nThis field is read-only.", - "type": "string" - }, - "developerMetadata": { - "description": "The developer metadata associated with a spreadsheet.", - "type": "array", - "items": { - "$ref": "DeveloperMetadata" - } - } - } - }, - "BandedRange": { - "id": "BandedRange", - "description": "A banded (alternating colors) range in a sheet.", - "type": "object", + "InsertRangeRequest": { + "description": "Inserts cells into a range, shifting the existing cells over or down.", + "id": "InsertRangeRequest", "properties": { "range": { "$ref": "GridRange", - "description": "The range over which these properties are applied." + "description": "The range to insert new cells into." }, - "bandedRangeId": { - "description": "The id of the banded range.", - "format": "int32", - "type": "integer" - }, - "rowProperties": { - "description": "Properties for row bands. These properties will be applied on a row-by-row\nbasis throughout all the rows in the range. At least one of\nrow_properties or column_properties must be specified.", - "$ref": "BandingProperties" - }, - "columnProperties": { - "$ref": "BandingProperties", - "description": "Properties for column bands. These properties will be applied on a column-\nby-column basis throughout all the columns in the range. At least one of\nrow_properties or column_properties must be specified." - } - } - }, - "AddChartRequest": { - "description": "Adds a chart to a sheet in the spreadsheet.", - "type": "object", - "properties": { - "chart": { - "description": "The chart that should be added to the spreadsheet, including the position\nwhere it should be placed. The chartId\nfield is optional; if one is not set, an id will be randomly generated. (It\nis an error to specify the ID of a chart that already exists.)", - "$ref": "EmbeddedChart" - } - }, - "id": "AddChartRequest" - }, - "UpdateProtectedRangeRequest": { - "id": "UpdateProtectedRangeRequest", - "description": "Updates an existing protected range with the specified\nprotectedRangeId.", - "type": "object", - "properties": { - "protectedRange": { - "description": "The protected range to update with the new properties.", - "$ref": "ProtectedRange" - }, - "fields": { - "description": "The fields that should be updated. At least one field must be specified.\nThe root `protectedRange` is implied and should not be specified.\nA single `\"*\"` can be used as short-hand for listing every field.", - "format": "google-fieldmask", - "type": "string" - } - } - }, - "DataFilter": { - "description": "Filter that describes what data should be selected or returned from a\nrequest.", - "type": "object", - "properties": { - "gridRange": { - "description": "Selects data that matches the range described by the GridRange.", - "$ref": "GridRange" - }, - "developerMetadataLookup": { - "description": "Selects data associated with the developer metadata matching the criteria\ndescribed by this DeveloperMetadataLookup.", - "$ref": "DeveloperMetadataLookup" - }, - "a1Range": { - "description": "Selects data that matches the specified A1 range.", + "shiftDimension": { + "description": "The dimension which will be shifted when inserting cells.\nIf ROWS, existing cells will be shifted down.\nIf COLUMNS, existing cells will be shifted right.", + "enum": [ + "DIMENSION_UNSPECIFIED", + "ROWS", + "COLUMNS" + ], + "enumDescriptions": [ + "The default value, do not use.", + "Operates on the rows of a sheet.", + "Operates on the columns of a sheet." + ], "type": "string" } }, - "id": "DataFilter" + "type": "object" }, - "TextFormat": { - "id": "TextFormat", - "description": "The format of a run of text in a cell.\nAbsent values indicate that the field isn't specified.", - "type": "object", + "InterpolationPoint": { + "description": "A single interpolation point on a gradient conditional format.\nThese pin the gradient color scale according to the color,\ntype and value chosen.", + "id": "InterpolationPoint", "properties": { - "strikethrough": { - "description": "True if the text has a strikethrough.", - "type": "boolean" - }, - "italic": { - "description": "True if the text is italicized.", - "type": "boolean" - }, - "fontSize": { - "description": "The size of the font.", - "format": "int32", - "type": "integer" - }, - "underline": { - "description": "True if the text is underlined.", - "type": "boolean" - }, - "foregroundColor": { + "color": { "$ref": "Color", - "description": "The foreground color of the text." + "description": "The color this interpolation point should use." }, - "bold": { - "description": "True if the text is bold.", - "type": "boolean" + "type": { + "description": "How the value should be interpreted.", + "enum": [ + "INTERPOLATION_POINT_TYPE_UNSPECIFIED", + "MIN", + "MAX", + "NUMBER", + "PERCENT", + "PERCENTILE" + ], + "enumDescriptions": [ + "The default value, do not use.", + "The interpolation point will use the minimum value in the\ncells over the range of the conditional format.", + "The interpolation point will use the maximum value in the\ncells over the range of the conditional format.", + "The interpolation point will use exactly the value in\nInterpolationPoint.value.", + "The interpolation point will be the given percentage over\nall the cells in the range of the conditional format.\nThis is equivalent to NUMBER if the value was:\n`=(MAX(FLATTEN(range)) * (value / 100))\n + (MIN(FLATTEN(range)) * (1 - (value / 100)))`\n(where errors in the range are ignored when flattening).", + "The interpolation point will be the given percentile\nover all the cells in the range of the conditional format.\nThis is equivalent to NUMBER if the value was:\n`=PERCENTILE(FLATTEN(range), value / 100)`\n(where errors in the range are ignored when flattening)." + ], + "type": "string" }, - "fontFamily": { - "description": "The font family.", + "value": { + "description": "The value this interpolation point uses. May be a formula.\nUnused if type is MIN or\nMAX.", "type": "string" } - } - }, - "AddSheetResponse": { - "id": "AddSheetResponse", - "description": "The result of adding a sheet.", - "type": "object", - "properties": { - "properties": { - "$ref": "SheetProperties", - "description": "The properties of the newly added sheet." - } - } - }, - "AddFilterViewResponse": { - "id": "AddFilterViewResponse", - "description": "The result of adding a filter view.", - "type": "object", - "properties": { - "filter": { - "description": "The newly added filter view.", - "$ref": "FilterView" - } - } + }, + "type": "object" }, "IterativeCalculationSettings": { "description": "Settings to control how circular dependencies are resolved with iterative\ncalculation.", - "type": "object", + "id": "IterativeCalculationSettings", "properties": { "convergenceThreshold": { "description": "When iterative calculation is enabled and successive results differ by\nless than this threshold value, the calculation rounds stop.", @@ -3727,276 +3686,158 @@ "type": "integer" } }, - "id": "IterativeCalculationSettings" + "type": "object" }, - "SpreadsheetProperties": { - "description": "Properties of a spreadsheet.", - "type": "object", + "LineStyle": { + "description": "Properties that describe the style of a line.", + "id": "LineStyle", "properties": { - "timeZone": { - "description": "The time zone of the spreadsheet, in CLDR format such as\n`America/New_York`. If the time zone isn't recognized, this may\nbe a custom time zone such as `GMT-07:00`.", - "type": "string" - }, - "title": { - "description": "The title of the spreadsheet.", - "type": "string" - }, - "locale": { - "description": "The locale of the spreadsheet in one of the following formats:\n\n* an ISO 639-1 language code such as `en`\n\n* an ISO 639-2 language code such as `fil`, if no 639-1 code exists\n\n* a combination of the ISO language code and country code, such as `en_US`\n\nNote: when updating this field, not all locales/languages are supported.", - "type": "string" - }, - "iterativeCalculationSettings": { - "description": "Determines whether and how circular references are resolved with iterative\ncalculation. Absence of this field means that circular references will\nresult in calculation errors.", - "$ref": "IterativeCalculationSettings" - }, - "autoRecalc": { - "enumDescriptions": [ - "Default value. This value must not be used.", - "Volatile functions are updated on every change.", - "Volatile functions are updated on every change and every minute.", - "Volatile functions are updated on every change and hourly." - ], + "type": { + "description": "The dash type of the line.", "enum": [ - "RECALCULATION_INTERVAL_UNSPECIFIED", - "ON_CHANGE", - "MINUTE", - "HOUR" + "LINE_DASH_TYPE_UNSPECIFIED", + "INVISIBLE", + "CUSTOM", + "SOLID", + "DOTTED", + "MEDIUM_DASHED", + "MEDIUM_DASHED_DOTTED", + "LONG_DASHED", + "LONG_DASHED_DOTTED" ], - "description": "The amount of time to wait before volatile functions are recalculated.", - "type": "string" - }, - "defaultFormat": { - "description": "The default format of all cells in the spreadsheet.\nCellData.effectiveFormat will not be set if the\ncell's format is equal to this default format.\nThis field is read-only.", - "$ref": "CellFormat" - } - }, - "id": "SpreadsheetProperties" - }, - "OverlayPosition": { - "id": "OverlayPosition", - "description": "The location an object is overlaid on top of a grid.", - "type": "object", - "properties": { - "offsetXPixels": { - "description": "The horizontal offset, in pixels, that the object is offset\nfrom the anchor cell.", - "format": "int32", - "type": "integer" - }, - "anchorCell": { - "description": "The cell the object is anchored to.", - "$ref": "GridCoordinate" - }, - "offsetYPixels": { - "description": "The vertical offset, in pixels, that the object is offset\nfrom the anchor cell.", - "format": "int32", - "type": "integer" - }, - "heightPixels": { - "description": "The height of the object, in pixels. Defaults to 371.", - "format": "int32", - "type": "integer" - }, - "widthPixels": { - "description": "The width of the object, in pixels. Defaults to 600.", - "format": "int32", - "type": "integer" - } - } - }, - "RepeatCellRequest": { - "description": "Updates all cells in the range to the values in the given Cell object.\nOnly the fields listed in the fields field are updated; others are\nunchanged.\n\nIf writing a cell with a formula, the formula's ranges will automatically\nincrement for each field in the range.\nFor example, if writing a cell with formula `=A1` into range B2:C4,\nB2 would be `=A1`, B3 would be `=A2`, B4 would be `=A3`,\nC2 would be `=B1`, C3 would be `=B2`, C4 would be `=B3`.\n\nTo keep the formula's ranges static, use the `$` indicator.\nFor example, use the formula `=$A$1` to prevent both the row and the\ncolumn from incrementing.", - "type": "object", - "properties": { - "cell": { - "description": "The data to write.", - "$ref": "CellData" - }, - "range": { - "$ref": "GridRange", - "description": "The range to repeat the cell in." - }, - "fields": { - "description": "The fields that should be updated. At least one field must be specified.\nThe root `cell` is implied and should not be specified.\nA single `\"*\"` can be used as short-hand for listing every field.", - "format": "google-fieldmask", - "type": "string" - } - }, - "id": "RepeatCellRequest" - }, - "AddChartResponse": { - "description": "The result of adding a chart to a spreadsheet.", - "type": "object", - "properties": { - "chart": { - "description": "The newly added chart.", - "$ref": "EmbeddedChart" - } - }, - "id": "AddChartResponse" - }, - "InsertDimensionRequest": { - "id": "InsertDimensionRequest", - "description": "Inserts rows or columns in a sheet at a particular index.", - "type": "object", - "properties": { - "range": { - "description": "The dimensions to insert. Both the start and end indexes must be bounded.", - "$ref": "DimensionRange" - }, - "inheritFromBefore": { - "description": "Whether dimension properties should be extended from the dimensions\nbefore or after the newly inserted dimensions.\nTrue to inherit from the dimensions before (in which case the start\nindex must be greater than 0), and false to inherit from the dimensions\nafter.\n\nFor example, if row index 0 has red background and row index 1\nhas a green background, then inserting 2 rows at index 1 can inherit\neither the green or red background. If `inheritFromBefore` is true,\nthe two new rows will be red (because the row before the insertion point\nwas red), whereas if `inheritFromBefore` is false, the two new rows will\nbe green (because the row after the insertion point was green).", - "type": "boolean" - } - } - }, - "UpdateSpreadsheetPropertiesRequest": { - "description": "Updates properties of a spreadsheet.", - "type": "object", - "properties": { - "fields": { - "description": "The fields that should be updated. At least one field must be specified.\nThe root 'properties' is implied and should not be specified.\nA single `\"*\"` can be used as short-hand for listing every field.", - "format": "google-fieldmask", - "type": "string" - }, - "properties": { - "$ref": "SpreadsheetProperties", - "description": "The properties to update." - } - }, - "id": "UpdateSpreadsheetPropertiesRequest" - }, - "BatchUpdateValuesRequest": { - "id": "BatchUpdateValuesRequest", - "description": "The request for updating more than one range of values in a spreadsheet.", - "type": "object", - "properties": { - "responseValueRenderOption": { - "description": "Determines how values in the response should be rendered.\nThe default render option is ValueRenderOption.FORMATTED_VALUE.", - "type": "string", "enumDescriptions": [ - "Values will be calculated & formatted in the reply according to the\ncell's formatting. Formatting is based on the spreadsheet's locale,\nnot the requesting user's locale.\nFor example, if `A1` is `1.23` and `A2` is `=A1` and formatted as currency,\nthen `A2` would return `\"$1.23\"`.", - "Values will be calculated, but not formatted in the reply.\nFor example, if `A1` is `1.23` and `A2` is `=A1` and formatted as currency,\nthen `A2` would return the number `1.23`.", - "Values will not be calculated. The reply will include the formulas.\nFor example, if `A1` is `1.23` and `A2` is `=A1` and formatted as currency,\nthen A2 would return `\"=A1\"`." + "Default value, do not use.", + "No dash type, which is equivalent to a non-visible line.", + "A custom dash for a line. Modifying the exact custom dash style is\ncurrently unsupported.", + "A solid line.", + "A dotted line.", + "A dashed line where the dashes have \"medium\" length.", + "A line that alternates between a \"medium\" dash and a dot.", + "A dashed line where the dashes have \"long\" length.", + "A line that alternates between a \"long\" dash and a dot." ], - "enum": [ - "FORMATTED_VALUE", - "UNFORMATTED_VALUE", - "FORMULA" - ] - }, - "includeValuesInResponse": { - "description": "Determines if the update response should include the values\nof the cells that were updated. By default, responses\ndo not include the updated values. The `updatedData` field within\neach of the BatchUpdateValuesResponse.responses will contain\nthe updated values. If the range to write was larger than than the range\nactually written, the response will include all values in the requested\nrange (excluding trailing empty rows and columns).", - "type": "boolean" - }, - "valueInputOption": { - "enumDescriptions": [ - "Default input value. This value must not be used.", - "The values the user has entered will not be parsed and will be stored\nas-is.", - "The values will be parsed as if the user typed them into the UI.\nNumbers will stay as numbers, but strings may be converted to numbers,\ndates, etc. following the same rules that are applied when entering\ntext into a cell via the Google Sheets UI." - ], - "enum": [ - "INPUT_VALUE_OPTION_UNSPECIFIED", - "RAW", - "USER_ENTERED" - ], - "description": "How the input data should be interpreted.", "type": "string" }, - "data": { - "description": "The new values to apply to the spreadsheet.", - "type": "array", + "width": { + "description": "The thickness of the line, in px.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "ManualRule": { + "description": "Allows you to manually organize the values in a source data column into\nbuckets with names of your choosing. For example, a pivot table that\naggregates population by state:\n\n +-------+-------------------+\n | State | SUM of Population |\n +-------+-------------------+\n | AK | 0.7 |\n | AL | 4.8 |\n | AR | 2.9 |\n ...\n +-------+-------------------+\ncould be turned into a pivot table that aggregates population by time zone\nby providing a list of groups (e.g. groupName = 'Central',\nitems = ['AL', 'AR', 'IA', ...]) to a manual group rule.\nNote that a similar effect could be achieved by adding a time zone column\nto the source data and adjusting the pivot table.\n\n +-----------+-------------------+\n | Time Zone | SUM of Population |\n +-----------+-------------------+\n | Central | 106.3 |\n | Eastern | 151.9 |\n | Mountain | 17.4 |\n ...\n +-----------+-------------------+", + "id": "ManualRule", + "properties": { + "groups": { + "description": "The list of group names and the corresponding items from the source data\nthat map to each group name.", "items": { - "$ref": "ValueRange" - } - }, - "responseDateTimeRenderOption": { - "description": "Determines how dates, times, and durations in the response should be\nrendered. This is ignored if response_value_render_option is\nFORMATTED_VALUE.\nThe default dateTime render option is\nDateTimeRenderOption.SERIAL_NUMBER.", - "type": "string", - "enumDescriptions": [ - "Instructs date, time, datetime, and duration fields to be output\nas doubles in \"serial number\" format, as popularized by Lotus 1-2-3.\nThe whole number portion of the value (left of the decimal) counts\nthe days since December 30th 1899. The fractional portion (right of\nthe decimal) counts the time as a fraction of the day. For example,\nJanuary 1st 1900 at noon would be 2.5, 2 because it's 2 days after\nDecember 30st 1899, and .5 because noon is half a day. February 1st\n1900 at 3pm would be 33.625. This correctly treats the year 1900 as\nnot a leap year.", - "Instructs date, time, datetime, and duration fields to be output\nas strings in their given number format (which is dependent\non the spreadsheet locale)." - ], - "enum": [ - "SERIAL_NUMBER", - "FORMATTED_STRING" - ] + "$ref": "ManualRuleGroup" + }, + "type": "array" } - } + }, + "type": "object" }, - "ProtectedRange": { - "id": "ProtectedRange", - "description": "A protected range.", - "type": "object", + "ManualRuleGroup": { + "description": "A group name and a list of items from the source data that should be placed\nin the group with this name.", + "id": "ManualRuleGroup", "properties": { - "warningOnly": { - "description": "True if this protected range will show a warning when editing.\nWarning-based protection means that every user can edit data in the\nprotected range, except editing will prompt a warning asking the user\nto confirm the edit.\n\nWhen writing: if this field is true, then editors is ignored.\nAdditionally, if this field is changed from true to false and the\n`editors` field is not set (nor included in the field mask), then\nthe editors will be set to all the editors in the document.", - "type": "boolean" + "groupName": { + "$ref": "ExtendedValue", + "description": "The group name, which must be a string. Each group in a given\nManualRule must have a unique group name." }, - "requestingUserCanEdit": { - "description": "True if the user who requested this protected range can edit the\nprotected area.\nThis field is read-only.", - "type": "boolean" - }, - "range": { - "$ref": "GridRange", - "description": "The range that is being protected.\nThe range may be fully unbounded, in which case this is considered\na protected sheet.\n\nWhen writing, only one of range or named_range_id\nmay be set." - }, - "editors": { - "description": "The users and groups with edit access to the protected range.\nThis field is only visible to users with edit access to the protected\nrange and the document.\nEditors are not supported with warning_only protection.", - "$ref": "Editors" - }, - "description": { - "description": "The description of this protected range.", - "type": "string" - }, - "unprotectedRanges": { - "description": "The list of unprotected ranges within a protected sheet.\nUnprotected ranges are only supported on protected sheets.", - "type": "array", + "items": { + "description": "The items in the source data that should be placed into this group. Each\nitem may be a string, number, or boolean. Items may appear in at most one\ngroup within a given ManualRule. Items that do not appear in any\ngroup will appear on their own.", "items": { - "$ref": "GridRange" - } - }, - "namedRangeId": { - "description": "The named range this protected range is backed by, if any.\n\nWhen writing, only one of range or named_range_id\nmay be set.", - "type": "string" - }, - "protectedRangeId": { - "description": "The ID of the protected range.\nThis field is read-only.", - "format": "int32", - "type": "integer" + "$ref": "ExtendedValue" + }, + "type": "array" } - } + }, + "type": "object" }, - "DimensionProperties": { - "description": "Properties about a dimension.", - "type": "object", + "MatchedDeveloperMetadata": { + "description": "A developer metadata entry and the data filters specified in the original\nrequest that matched it.", + "id": "MatchedDeveloperMetadata", "properties": { + "dataFilters": { + "description": "All filters matching the returned developer metadata.", + "items": { + "$ref": "DataFilter" + }, + "type": "array" + }, "developerMetadata": { - "description": "The developer metadata associated with a single row or column.", - "type": "array", + "$ref": "DeveloperMetadata", + "description": "The developer metadata matching the specified filters." + } + }, + "type": "object" + }, + "MatchedValueRange": { + "description": "A value range that was matched by one or more data filers.", + "id": "MatchedValueRange", + "properties": { + "dataFilters": { + "description": "The DataFilters from the request that matched the range of\nvalues.", "items": { - "$ref": "DeveloperMetadata" - } + "$ref": "DataFilter" + }, + "type": "array" }, - "pixelSize": { - "description": "The height (if a row) or width (if a column) of the dimension in pixels.", + "valueRange": { + "$ref": "ValueRange", + "description": "The values matched by the DataFilter." + } + }, + "type": "object" + }, + "MergeCellsRequest": { + "description": "Merges all cells in the range.", + "id": "MergeCellsRequest", + "properties": { + "mergeType": { + "description": "How the cells should be merged.", + "enum": [ + "MERGE_ALL", + "MERGE_COLUMNS", + "MERGE_ROWS" + ], + "enumDescriptions": [ + "Create a single merge from the range", + "Create a merge for each column in the range", + "Create a merge for each row in the range" + ], + "type": "string" + }, + "range": { + "$ref": "GridRange", + "description": "The range of cells to merge." + } + }, + "type": "object" + }, + "MoveDimensionRequest": { + "description": "Moves one or more rows or columns.", + "id": "MoveDimensionRequest", + "properties": { + "destinationIndex": { + "description": "The zero-based start index of where to move the source data to,\nbased on the coordinates *before* the source data is removed\nfrom the grid. Existing data will be shifted down or right\n(depending on the dimension) to make room for the moved dimensions.\nThe source dimensions are removed from the grid, so the\nthe data may end up in a different index than specified.\n\nFor example, given `A1..A5` of `0, 1, 2, 3, 4` and wanting to move\n`\"1\"` and `\"2\"` to between `\"3\"` and `\"4\"`, the source would be\n`ROWS [1..3)`,and the destination index would be `\"4\"`\n(the zero-based index of row 5).\nThe end result would be `A1..A5` of `0, 3, 1, 2, 4`.", "format": "int32", "type": "integer" }, - "hiddenByFilter": { - "description": "True if this dimension is being filtered.\nThis field is read-only.", - "type": "boolean" - }, - "hiddenByUser": { - "description": "True if this dimension is explicitly hidden.", - "type": "boolean" + "source": { + "$ref": "DimensionRange", + "description": "The source dimensions to move." } }, - "id": "DimensionProperties" + "type": "object" }, "NamedRange": { - "id": "NamedRange", "description": "A named range.", - "type": "object", + "id": "NamedRange", "properties": { "name": { "description": "The name of the named range.", @@ -4007,70 +3848,172 @@ "type": "string" }, "range": { - "description": "The range this represents.", - "$ref": "GridRange" + "$ref": "GridRange", + "description": "The range this represents." } - } + }, + "type": "object" }, - "DimensionRange": { - "description": "A range along a single dimension on a sheet.\nAll indexes are zero-based.\nIndexes are half open: the start index is inclusive\nand the end index is exclusive.\nMissing indexes indicate the range is unbounded on that side.", - "type": "object", + "NumberFormat": { + "description": "The number format of a cell.", + "id": "NumberFormat", "properties": { - "dimension": { - "enumDescriptions": [ - "The default value, do not use.", - "Operates on the rows of a sheet.", - "Operates on the columns of a sheet." - ], - "enum": [ - "DIMENSION_UNSPECIFIED", - "ROWS", - "COLUMNS" - ], - "description": "The dimension of the span.", + "pattern": { + "description": "Pattern string used for formatting. If not set, a default pattern based on\nthe user's locale will be used if necessary for the given type.\nSee the [Date and Number Formats guide](/sheets/api/guides/formats) for more\ninformation about the supported patterns.", "type": "string" }, - "startIndex": { - "description": "The start (inclusive) of the span, or not set if unbounded.", + "type": { + "description": "The type of the number format.\nWhen writing, this field must be set.", + "enum": [ + "NUMBER_FORMAT_TYPE_UNSPECIFIED", + "TEXT", + "NUMBER", + "PERCENT", + "CURRENCY", + "DATE", + "TIME", + "DATE_TIME", + "SCIENTIFIC" + ], + "enumDescriptions": [ + "The number format is not specified\nand is based on the contents of the cell.\nDo not explicitly use this.", + "Text formatting, e.g `1000.12`", + "Number formatting, e.g, `1,000.12`", + "Percent formatting, e.g `10.12%`", + "Currency formatting, e.g `$1,000.12`", + "Date formatting, e.g `9/26/2008`", + "Time formatting, e.g `3:59:00 PM`", + "Date+Time formatting, e.g `9/26/08 15:59:00`", + "Scientific number formatting, e.g `1.01E+03`" + ], + "type": "string" + } + }, + "type": "object" + }, + "OrgChartSpec": { + "description": "An \u003ca href=\"/chart/interactive/docs/gallery/orgchart\"\u003eorg chart\u003c/a\u003e.\nOrg charts require a unique set of labels in labels and may\noptionally include parent_labels and tooltips.\nparent_labels contain, for each node, the label identifying the parent\nnode. tooltips contain, for each node, an optional tooltip.\n\nFor example, to describe an OrgChart with Alice as the CEO, Bob as the\nPresident (reporting to Alice) and Cathy as VP of Sales (also reporting to\nAlice), have labels contain \"Alice\", \"Bob\", \"Cathy\",\nparent_labels contain \"\", \"Alice\", \"Alice\" and tooltips contain\n\"CEO\", \"President\", \"VP Sales\".", + "id": "OrgChartSpec", + "properties": { + "labels": { + "$ref": "ChartData", + "description": "The data containing the labels for all the nodes in the chart. Labels\nmust be unique." + }, + "nodeColor": { + "$ref": "Color", + "description": "The color of the org chart nodes." + }, + "nodeSize": { + "description": "The size of the org chart nodes.", + "enum": [ + "ORG_CHART_LABEL_SIZE_UNSPECIFIED", + "SMALL", + "MEDIUM", + "LARGE" + ], + "enumDescriptions": [ + "Default value, do not use.", + "The small org chart node size.", + "The medium org chart node size.", + "The large org chart node size." + ], + "type": "string" + }, + "parentLabels": { + "$ref": "ChartData", + "description": "The data containing the label of the parent for the corresponding node.\nA blank value indicates that the node has no parent and is a top-level\nnode.\nThis field is optional." + }, + "selectedNodeColor": { + "$ref": "Color", + "description": "The color of the selected org chart nodes." + }, + "tooltips": { + "$ref": "ChartData", + "description": "The data containing the tooltip for the corresponding node. A blank value\nresults in no tooltip being displayed for the node.\nThis field is optional." + } + }, + "type": "object" + }, + "OverlayPosition": { + "description": "The location an object is overlaid on top of a grid.", + "id": "OverlayPosition", + "properties": { + "anchorCell": { + "$ref": "GridCoordinate", + "description": "The cell the object is anchored to." + }, + "heightPixels": { + "description": "The height of the object, in pixels. Defaults to 371.", "format": "int32", "type": "integer" }, - "endIndex": { - "description": "The end (exclusive) of the span, or not set if unbounded.", + "offsetXPixels": { + "description": "The horizontal offset, in pixels, that the object is offset\nfrom the anchor cell.", "format": "int32", "type": "integer" }, - "sheetId": { - "description": "The sheet this span is on.", + "offsetYPixels": { + "description": "The vertical offset, in pixels, that the object is offset\nfrom the anchor cell.", + "format": "int32", + "type": "integer" + }, + "widthPixels": { + "description": "The width of the object, in pixels. Defaults to 600.", "format": "int32", "type": "integer" } }, - "id": "DimensionRange" + "type": "object" }, - "CutPasteRequest": { - "id": "CutPasteRequest", - "description": "Moves data from the source to the destination.", - "type": "object", + "Padding": { + "description": "The amount of padding around the cell, in pixels.\nWhen updating padding, every field must be specified.", + "id": "Padding", "properties": { - "destination": { - "description": "The top-left coordinate where the data should be pasted.", - "$ref": "GridCoordinate" + "bottom": { + "description": "The bottom padding of the cell.", + "format": "int32", + "type": "integer" }, - "source": { - "$ref": "GridRange", - "description": "The source data to cut." + "left": { + "description": "The left padding of the cell.", + "format": "int32", + "type": "integer" }, - "pasteType": { - "enumDescriptions": [ - "Paste values, formulas, formats, and merges.", - "Paste the values ONLY without formats, formulas, or merges.", - "Paste the format and data validation only.", - "Like PASTE_NORMAL but without borders.", - "Paste the formulas only.", - "Paste the data validation only.", - "Paste the conditional formatting rules only." - ], + "right": { + "description": "The right padding of the cell.", + "format": "int32", + "type": "integer" + }, + "top": { + "description": "The top padding of the cell.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "PasteDataRequest": { + "description": "Inserts data into the spreadsheet starting at the specified coordinate.", + "id": "PasteDataRequest", + "properties": { + "coordinate": { + "$ref": "GridCoordinate", + "description": "The coordinate at which the data should start being inserted." + }, + "data": { + "description": "The data to insert.", + "type": "string" + }, + "delimiter": { + "description": "The delimiter in the data.", + "type": "string" + }, + "html": { + "description": "True if the data is HTML.", + "type": "boolean" + }, + "type": { + "description": "How the data should be pasted.", "enum": [ "PASTE_NORMAL", "PASTE_VALUES", @@ -4080,350 +4023,1238 @@ "PASTE_DATA_VALIDATION", "PASTE_CONDITIONAL_FORMATTING" ], - "description": "What kind of data to paste. All the source data will be cut, regardless\nof what is pasted.", + "enumDescriptions": [ + "Paste values, formulas, formats, and merges.", + "Paste the values ONLY without formats, formulas, or merges.", + "Paste the format and data validation only.", + "Like PASTE_NORMAL but without borders.", + "Paste the formulas only.", + "Paste the data validation only.", + "Paste the conditional formatting rules only." + ], "type": "string" } - } - }, - "Borders": { - "description": "The borders of the cell.", - "type": "object", - "properties": { - "top": { - "$ref": "Border", - "description": "The top border of the cell." - }, - "left": { - "$ref": "Border", - "description": "The left border of the cell." - }, - "right": { - "$ref": "Border", - "description": "The right border of the cell." - }, - "bottom": { - "description": "The bottom border of the cell.", - "$ref": "Border" - } }, - "id": "Borders" + "type": "object" }, - "BasicChartSeries": { - "id": "BasicChartSeries", - "description": "A single series of data in a chart.\nFor example, if charting stock prices over time, multiple series may exist,\none for the \"Open Price\", \"High Price\", \"Low Price\" and \"Close Price\".", - "type": "object", + "PieChartSpec": { + "description": "A \u003ca href=\"/chart/interactive/docs/gallery/piechart\"\u003epie chart\u003c/a\u003e.", + "id": "PieChartSpec", "properties": { - "lineStyle": { - "description": "The line style of this series. Valid only if the\nchartType is AREA,\nLINE, or SCATTER.\nCOMBO charts are also supported if the\nseries chart type is\nAREA or LINE.", - "$ref": "LineStyle" + "domain": { + "$ref": "ChartData", + "description": "The data that covers the domain of the pie chart." + }, + "legendPosition": { + "description": "Where the legend of the pie chart should be drawn.", + "enum": [ + "PIE_CHART_LEGEND_POSITION_UNSPECIFIED", + "BOTTOM_LEGEND", + "LEFT_LEGEND", + "RIGHT_LEGEND", + "TOP_LEGEND", + "NO_LEGEND", + "LABELED_LEGEND" + ], + "enumDescriptions": [ + "Default value, do not use.", + "The legend is rendered on the bottom of the chart.", + "The legend is rendered on the left of the chart.", + "The legend is rendered on the right of the chart.", + "The legend is rendered on the top of the chart.", + "No legend is rendered.", + "Each pie slice has a label attached to it." + ], + "type": "string" + }, + "pieHole": { + "description": "The size of the hole in the pie chart.", + "format": "double", + "type": "number" }, "series": { "$ref": "ChartData", - "description": "The data being visualized in this chart series." + "description": "The data that covers the one and only series of the pie chart." }, - "type": { - "description": "The type of this series. Valid only if the\nchartType is\nCOMBO.\nDifferent types will change the way the series is visualized.\nOnly LINE, AREA,\nand COLUMN are supported.", - "type": "string", + "threeDimensional": { + "description": "True if the pie is three dimensional.", + "type": "boolean" + } + }, + "type": "object" + }, + "PivotFilterCriteria": { + "description": "Criteria for showing/hiding rows in a pivot table.", + "id": "PivotFilterCriteria", + "properties": { + "visibleValues": { + "description": "Values that should be included. Values not listed here are excluded.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "PivotGroup": { + "description": "A single grouping (either row or column) in a pivot table.", + "id": "PivotGroup", + "properties": { + "groupRule": { + "$ref": "PivotGroupRule", + "description": "The group rule to apply to this row/column group." + }, + "label": { + "description": "The labels to use for the row/column groups which can be customized. For\nexample, in the following pivot table, the row label is `Region` (which\ncould be renamed to `State`) and the column label is `Product` (which\ncould be renamed `Item`). Pivot tables created before December 2017 do\nnot have header labels. If you'd like to add header labels to an existing\npivot table, please delete the existing pivot table and then create a new\npivot table with same parameters.\n\n +--------------+---------+-------+\n | SUM of Units | Product | |\n | Region | Pen | Paper |\n +--------------+---------+-------+\n | New York | 345 | 98 |\n | Oregon | 234 | 123 |\n | Tennessee | 531 | 415 |\n +--------------+---------+-------+\n | Grand Total | 1110 | 636 |\n +--------------+---------+-------+", + "type": "string" + }, + "repeatHeadings": { + "description": "True if the headings in this pivot group should be repeated.\nThis is only valid for row groupings and will be ignored by columns.\n\nBy default, we minimize repitition of headings by not showing higher\nlevel headings where they are the same. For example, even though the\nthird row below corresponds to \"Q1 Mar\", \"Q1\" is not shown because\nit is redundant with previous rows. Setting repeat_headings to true\nwould cause \"Q1\" to be repeated for \"Feb\" and \"Mar\".\n\n +--------------+\n | Q1 | Jan |\n | | Feb |\n | | Mar |\n +--------+-----+\n | Q1 Total |\n +--------------+", + "type": "boolean" + }, + "showTotals": { + "description": "True if the pivot table should include the totals for this grouping.", + "type": "boolean" + }, + "sortOrder": { + "description": "The order the values in this group should be sorted.", + "enum": [ + "SORT_ORDER_UNSPECIFIED", + "ASCENDING", + "DESCENDING" + ], + "enumDescriptions": [ + "Default value, do not use this.", + "Sort ascending.", + "Sort descending." + ], + "type": "string" + }, + "sourceColumnOffset": { + "description": "The column offset of the source range that this grouping is based on.\n\nFor example, if the source was `C10:E15`, a `sourceColumnOffset` of `0`\nmeans this group refers to column `C`, whereas the offset `1` would refer\nto column `D`.", + "format": "int32", + "type": "integer" + }, + "valueBucket": { + "$ref": "PivotGroupSortValueBucket", + "description": "The bucket of the opposite pivot group to sort by.\nIf not specified, sorting is alphabetical by this group's values." + }, + "valueMetadata": { + "description": "Metadata about values in the grouping.", + "items": { + "$ref": "PivotGroupValueMetadata" + }, + "type": "array" + } + }, + "type": "object" + }, + "PivotGroupRule": { + "description": "An optional setting on a PivotGroup that defines buckets for the values\nin the source data column rather than breaking out each individual value.\nOnly one PivotGroup with a group rule may be added for each column in\nthe source data, though on any given column you may add both a\nPivotGroup that has a rule and a PivotGroup that does not.", + "id": "PivotGroupRule", + "properties": { + "histogramRule": { + "$ref": "HistogramRule", + "description": "A HistogramRule." + }, + "manualRule": { + "$ref": "ManualRule", + "description": "A ManualRule." + } + }, + "type": "object" + }, + "PivotGroupSortValueBucket": { + "description": "Information about which values in a pivot group should be used for sorting.", + "id": "PivotGroupSortValueBucket", + "properties": { + "buckets": { + "description": "Determines the bucket from which values are chosen to sort.\n\nFor example, in a pivot table with one row group \u0026 two column groups,\nthe row group can list up to two values. The first value corresponds\nto a value within the first column group, and the second value\ncorresponds to a value in the second column group. If no values\nare listed, this would indicate that the row should be sorted according\nto the \"Grand Total\" over the column groups. If a single value is listed,\nthis would correspond to using the \"Total\" of that bucket.", + "items": { + "$ref": "ExtendedValue" + }, + "type": "array" + }, + "valuesIndex": { + "description": "The offset in the PivotTable.values list which the values in this\ngrouping should be sorted by.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "PivotGroupValueMetadata": { + "description": "Metadata about a value in a pivot grouping.", + "id": "PivotGroupValueMetadata", + "properties": { + "collapsed": { + "description": "True if the data corresponding to the value is collapsed.", + "type": "boolean" + }, + "value": { + "$ref": "ExtendedValue", + "description": "The calculated value the metadata corresponds to.\n(Note that formulaValue is not valid,\n because the values will be calculated.)" + } + }, + "type": "object" + }, + "PivotTable": { + "description": "A pivot table.", + "id": "PivotTable", + "properties": { + "columns": { + "description": "Each column grouping in the pivot table.", + "items": { + "$ref": "PivotGroup" + }, + "type": "array" + }, + "criteria": { + "additionalProperties": { + "$ref": "PivotFilterCriteria" + }, + "description": "An optional mapping of filters per source column offset.\n\nThe filters will be applied before aggregating data into the pivot table.\nThe map's key is the column offset of the source range that you want to\nfilter, and the value is the criteria for that column.\n\nFor example, if the source was `C10:E15`, a key of `0` will have the filter\nfor column `C`, whereas the key `1` is for column `D`.", + "type": "object" + }, + "rows": { + "description": "Each row grouping in the pivot table.", + "items": { + "$ref": "PivotGroup" + }, + "type": "array" + }, + "source": { + "$ref": "GridRange", + "description": "The range the pivot table is reading data from." + }, + "valueLayout": { + "description": "Whether values should be listed horizontally (as columns)\nor vertically (as rows).", + "enum": [ + "HORIZONTAL", + "VERTICAL" + ], + "enumDescriptions": [ + "Values are laid out horizontally (as columns).", + "Values are laid out vertically (as rows)." + ], + "type": "string" + }, + "values": { + "description": "A list of values to include in the pivot table.", + "items": { + "$ref": "PivotValue" + }, + "type": "array" + } + }, + "type": "object" + }, + "PivotValue": { + "description": "The definition of how a value in a pivot table should be calculated.", + "id": "PivotValue", + "properties": { + "calculatedDisplayType": { + "description": "If specified, indicates that pivot values should be displayed as\nthe result of a calculation with another pivot value. For example, if\ncalculated_display_type is specified as PERCENT_OF_GRAND_TOTAL, all the\npivot values will be displayed as the percentage of the grand total. In\nthe Sheets UI, this is referred to as \"Show As\" in the value section of a\npivot table.", + "enum": [ + "PIVOT_VALUE_CALCULATED_DISPLAY_TYPE_UNSPECIFIED", + "PERCENT_OF_ROW_TOTAL", + "PERCENT_OF_COLUMN_TOTAL", + "PERCENT_OF_GRAND_TOTAL" + ], "enumDescriptions": [ "Default value, do not use.", - "A \u003ca href=\"/chart/interactive/docs/gallery/barchart\"\u003ebar chart\u003c/a\u003e.", - "A \u003ca href=\"/chart/interactive/docs/gallery/linechart\"\u003eline chart\u003c/a\u003e.", - "An \u003ca href=\"/chart/interactive/docs/gallery/areachart\"\u003earea chart\u003c/a\u003e.", - "A \u003ca href=\"/chart/interactive/docs/gallery/columnchart\"\u003ecolumn chart\u003c/a\u003e.", - "A \u003ca href=\"/chart/interactive/docs/gallery/scatterchart\"\u003escatter chart\u003c/a\u003e.", - "A \u003ca href=\"/chart/interactive/docs/gallery/combochart\"\u003ecombo chart\u003c/a\u003e.", - "A \u003ca href=\"/chart/interactive/docs/gallery/steppedareachart\"\u003estepped area chart\u003c/a\u003e." + "Shows the pivot values as percentage of the row total values.", + "Shows the pivot values as percentage of the column total values.", + "Shows the pivot values as percentage of the grand total values." ], - "enum": [ - "BASIC_CHART_TYPE_UNSPECIFIED", - "BAR", - "LINE", - "AREA", - "COLUMN", - "SCATTER", - "COMBO", - "STEPPED_AREA" - ] + "type": "string" }, - "targetAxis": { - "description": "The minor axis that will specify the range of values for this series.\nFor example, if charting stocks over time, the \"Volume\" series\nmay want to be pinned to the right with the prices pinned to the left,\nbecause the scale of trading volume is different than the scale of\nprices.\nIt is an error to specify an axis that isn't a valid minor axis\nfor the chart's type.", - "type": "string", + "formula": { + "description": "A custom formula to calculate the value. The formula must start\nwith an `=` character.", + "type": "string" + }, + "name": { + "description": "A name to use for the value.", + "type": "string" + }, + "sourceColumnOffset": { + "description": "The column offset of the source range that this value reads from.\n\nFor example, if the source was `C10:E15`, a `sourceColumnOffset` of `0`\nmeans this value refers to column `C`, whereas the offset `1` would\nrefer to column `D`.", + "format": "int32", + "type": "integer" + }, + "summarizeFunction": { + "description": "A function to summarize the value.\nIf formula is set, the only supported values are\nSUM and\nCUSTOM.\nIf sourceColumnOffset is set, then `CUSTOM`\nis not supported.", + "enum": [ + "PIVOT_STANDARD_VALUE_FUNCTION_UNSPECIFIED", + "SUM", + "COUNTA", + "COUNT", + "COUNTUNIQUE", + "AVERAGE", + "MAX", + "MIN", + "MEDIAN", + "PRODUCT", + "STDEV", + "STDEVP", + "VAR", + "VARP", + "CUSTOM" + ], "enumDescriptions": [ - "Default value, do not use.", - "The axis rendered at the bottom of a chart.\nFor most charts, this is the standard major axis.\nFor bar charts, this is a minor axis.", - "The axis rendered at the left of a chart.\nFor most charts, this is a minor axis.\nFor bar charts, this is the standard major axis.", - "The axis rendered at the right of a chart.\nFor most charts, this is a minor axis.\nFor bar charts, this is an unusual major axis." + "The default, do not use.", + "Corresponds to the `SUM` function.", + "Corresponds to the `COUNTA` function.", + "Corresponds to the `COUNT` function.", + "Corresponds to the `COUNTUNIQUE` function.", + "Corresponds to the `AVERAGE` function.", + "Corresponds to the `MAX` function.", + "Corresponds to the `MIN` function.", + "Corresponds to the `MEDIAN` function.", + "Corresponds to the `PRODUCT` function.", + "Corresponds to the `STDEV` function.", + "Corresponds to the `STDEVP` function.", + "Corresponds to the `VAR` function.", + "Corresponds to the `VARP` function.", + "Indicates the formula should be used as-is.\nOnly valid if PivotValue.formula was set." ], - "enum": [ - "BASIC_CHART_AXIS_POSITION_UNSPECIFIED", - "BOTTOM_AXIS", - "LEFT_AXIS", - "RIGHT_AXIS" - ] + "type": "string" } - } + }, + "type": "object" }, - "AutoResizeDimensionsRequest": { - "id": "AutoResizeDimensionsRequest", - "description": "Automatically resizes one or more dimensions based on the contents\nof the cells in that dimension.", - "type": "object", + "ProtectedRange": { + "description": "A protected range.", + "id": "ProtectedRange", "properties": { - "dimensions": { - "description": "The dimensions to automatically resize.", - "$ref": "DimensionRange" - } - } - }, - "UpdateBordersRequest": { - "description": "Updates the borders of a range.\nIf a field is not set in the request, that means the border remains as-is.\nFor example, with two subsequent UpdateBordersRequest:\n\n 1. range: A1:A5 `{ top: RED, bottom: WHITE }`\n 2. range: A1:A5 `{ left: BLUE }`\n\nThat would result in A1:A5 having a borders of\n`{ top: RED, bottom: WHITE, left: BLUE }`.\nIf you want to clear a border, explicitly set the style to\nNONE.", - "type": "object", - "properties": { - "bottom": { - "$ref": "Border", - "description": "The border to put at the bottom of the range." + "description": { + "description": "The description of this protected range.", + "type": "string" }, - "innerVertical": { - "description": "The vertical border to put within the range.", - "$ref": "Border" + "editors": { + "$ref": "Editors", + "description": "The users and groups with edit access to the protected range.\nThis field is only visible to users with edit access to the protected\nrange and the document.\nEditors are not supported with warning_only protection." }, - "right": { - "$ref": "Border", - "description": "The border to put at the right of the range." + "namedRangeId": { + "description": "The named range this protected range is backed by, if any.\n\nWhen writing, only one of range or named_range_id\nmay be set.", + "type": "string" + }, + "protectedRangeId": { + "description": "The ID of the protected range.\nThis field is read-only.", + "format": "int32", + "type": "integer" }, "range": { "$ref": "GridRange", - "description": "The range whose borders should be updated." + "description": "The range that is being protected.\nThe range may be fully unbounded, in which case this is considered\na protected sheet.\n\nWhen writing, only one of range or named_range_id\nmay be set." }, - "innerHorizontal": { - "$ref": "Border", - "description": "The horizontal border to put within the range." + "requestingUserCanEdit": { + "description": "True if the user who requested this protected range can edit the\nprotected area.\nThis field is read-only.", + "type": "boolean" }, - "top": { - "description": "The border to put at the top of the range.", - "$ref": "Border" + "unprotectedRanges": { + "description": "The list of unprotected ranges within a protected sheet.\nUnprotected ranges are only supported on protected sheets.", + "items": { + "$ref": "GridRange" + }, + "type": "array" }, - "left": { - "$ref": "Border", - "description": "The border to put at the left of the range." + "warningOnly": { + "description": "True if this protected range will show a warning when editing.\nWarning-based protection means that every user can edit data in the\nprotected range, except editing will prompt a warning asking the user\nto confirm the edit.\n\nWhen writing: if this field is true, then editors is ignored.\nAdditionally, if this field is changed from true to false and the\n`editors` field is not set (nor included in the field mask), then\nthe editors will be set to all the editors in the document.", + "type": "boolean" } }, - "id": "UpdateBordersRequest" + "type": "object" }, - "CellFormat": { - "id": "CellFormat", - "description": "The format of a cell.", - "type": "object", + "RandomizeRangeRequest": { + "description": "Randomizes the order of the rows in a range.", + "id": "RandomizeRangeRequest", "properties": { - "numberFormat": { - "description": "A format describing how number values should be represented to the user.", - "$ref": "NumberFormat" + "range": { + "$ref": "GridRange", + "description": "The range to randomize." + } + }, + "type": "object" + }, + "RepeatCellRequest": { + "description": "Updates all cells in the range to the values in the given Cell object.\nOnly the fields listed in the fields field are updated; others are\nunchanged.\n\nIf writing a cell with a formula, the formula's ranges will automatically\nincrement for each field in the range.\nFor example, if writing a cell with formula `=A1` into range B2:C4,\nB2 would be `=A1`, B3 would be `=A2`, B4 would be `=A3`,\nC2 would be `=B1`, C3 would be `=B2`, C4 would be `=B3`.\n\nTo keep the formula's ranges static, use the `$` indicator.\nFor example, use the formula `=$A$1` to prevent both the row and the\ncolumn from incrementing.", + "id": "RepeatCellRequest", + "properties": { + "cell": { + "$ref": "CellData", + "description": "The data to write." }, - "hyperlinkDisplayType": { - "enumDescriptions": [ - "The default value: the hyperlink is rendered. Do not use this.", - "A hyperlink should be explicitly rendered.", - "A hyperlink should not be rendered." - ], - "enum": [ - "HYPERLINK_DISPLAY_TYPE_UNSPECIFIED", - "LINKED", - "PLAIN_TEXT" - ], - "description": "How a hyperlink, if it exists, should be displayed in the cell.", + "fields": { + "description": "The fields that should be updated. At least one field must be specified.\nThe root `cell` is implied and should not be specified.\nA single `\"*\"` can be used as short-hand for listing every field.", + "format": "google-fieldmask", "type": "string" }, + "range": { + "$ref": "GridRange", + "description": "The range to repeat the cell in." + } + }, + "type": "object" + }, + "Request": { + "description": "A single kind of update to apply to a spreadsheet.", + "id": "Request", + "properties": { + "addBanding": { + "$ref": "AddBandingRequest", + "description": "Adds a new banded range" + }, + "addChart": { + "$ref": "AddChartRequest", + "description": "Adds a chart." + }, + "addConditionalFormatRule": { + "$ref": "AddConditionalFormatRuleRequest", + "description": "Adds a new conditional format rule." + }, + "addFilterView": { + "$ref": "AddFilterViewRequest", + "description": "Adds a filter view." + }, + "addNamedRange": { + "$ref": "AddNamedRangeRequest", + "description": "Adds a named range." + }, + "addProtectedRange": { + "$ref": "AddProtectedRangeRequest", + "description": "Adds a protected range." + }, + "addSheet": { + "$ref": "AddSheetRequest", + "description": "Adds a sheet." + }, + "appendCells": { + "$ref": "AppendCellsRequest", + "description": "Appends cells after the last row with data in a sheet." + }, + "appendDimension": { + "$ref": "AppendDimensionRequest", + "description": "Appends dimensions to the end of a sheet." + }, + "autoFill": { + "$ref": "AutoFillRequest", + "description": "Automatically fills in more data based on existing data." + }, + "autoResizeDimensions": { + "$ref": "AutoResizeDimensionsRequest", + "description": "Automatically resizes one or more dimensions based on the contents\nof the cells in that dimension." + }, + "clearBasicFilter": { + "$ref": "ClearBasicFilterRequest", + "description": "Clears the basic filter on a sheet." + }, + "copyPaste": { + "$ref": "CopyPasteRequest", + "description": "Copies data from one area and pastes it to another." + }, + "createDeveloperMetadata": { + "$ref": "CreateDeveloperMetadataRequest", + "description": "Creates new developer metadata" + }, + "cutPaste": { + "$ref": "CutPasteRequest", + "description": "Cuts data from one area and pastes it to another." + }, + "deleteBanding": { + "$ref": "DeleteBandingRequest", + "description": "Removes a banded range" + }, + "deleteConditionalFormatRule": { + "$ref": "DeleteConditionalFormatRuleRequest", + "description": "Deletes an existing conditional format rule." + }, + "deleteDeveloperMetadata": { + "$ref": "DeleteDeveloperMetadataRequest", + "description": "Deletes developer metadata" + }, + "deleteDimension": { + "$ref": "DeleteDimensionRequest", + "description": "Deletes rows or columns in a sheet." + }, + "deleteEmbeddedObject": { + "$ref": "DeleteEmbeddedObjectRequest", + "description": "Deletes an embedded object (e.g, chart, image) in a sheet." + }, + "deleteFilterView": { + "$ref": "DeleteFilterViewRequest", + "description": "Deletes a filter view from a sheet." + }, + "deleteNamedRange": { + "$ref": "DeleteNamedRangeRequest", + "description": "Deletes a named range." + }, + "deleteProtectedRange": { + "$ref": "DeleteProtectedRangeRequest", + "description": "Deletes a protected range." + }, + "deleteRange": { + "$ref": "DeleteRangeRequest", + "description": "Deletes a range of cells from a sheet, shifting the remaining cells." + }, + "deleteSheet": { + "$ref": "DeleteSheetRequest", + "description": "Deletes a sheet." + }, + "duplicateFilterView": { + "$ref": "DuplicateFilterViewRequest", + "description": "Duplicates a filter view." + }, + "duplicateSheet": { + "$ref": "DuplicateSheetRequest", + "description": "Duplicates a sheet." + }, + "findReplace": { + "$ref": "FindReplaceRequest", + "description": "Finds and replaces occurrences of some text with other text." + }, + "insertDimension": { + "$ref": "InsertDimensionRequest", + "description": "Inserts new rows or columns in a sheet." + }, + "insertRange": { + "$ref": "InsertRangeRequest", + "description": "Inserts new cells in a sheet, shifting the existing cells." + }, + "mergeCells": { + "$ref": "MergeCellsRequest", + "description": "Merges cells together." + }, + "moveDimension": { + "$ref": "MoveDimensionRequest", + "description": "Moves rows or columns to another location in a sheet." + }, + "pasteData": { + "$ref": "PasteDataRequest", + "description": "Pastes data (HTML or delimited) into a sheet." + }, + "randomizeRange": { + "$ref": "RandomizeRangeRequest", + "description": "Randomizes the order of the rows in a range." + }, + "repeatCell": { + "$ref": "RepeatCellRequest", + "description": "Repeats a single cell across a range." + }, + "setBasicFilter": { + "$ref": "SetBasicFilterRequest", + "description": "Sets the basic filter on a sheet." + }, + "setDataValidation": { + "$ref": "SetDataValidationRequest", + "description": "Sets data validation for one or more cells." + }, + "sortRange": { + "$ref": "SortRangeRequest", + "description": "Sorts data in a range." + }, + "textToColumns": { + "$ref": "TextToColumnsRequest", + "description": "Converts a column of text into many columns of text." + }, + "unmergeCells": { + "$ref": "UnmergeCellsRequest", + "description": "Unmerges merged cells." + }, + "updateBanding": { + "$ref": "UpdateBandingRequest", + "description": "Updates a banded range" + }, + "updateBorders": { + "$ref": "UpdateBordersRequest", + "description": "Updates the borders in a range of cells." + }, + "updateCells": { + "$ref": "UpdateCellsRequest", + "description": "Updates many cells at once." + }, + "updateChartSpec": { + "$ref": "UpdateChartSpecRequest", + "description": "Updates a chart's specifications." + }, + "updateConditionalFormatRule": { + "$ref": "UpdateConditionalFormatRuleRequest", + "description": "Updates an existing conditional format rule." + }, + "updateDeveloperMetadata": { + "$ref": "UpdateDeveloperMetadataRequest", + "description": "Updates an existing developer metadata entry" + }, + "updateDimensionProperties": { + "$ref": "UpdateDimensionPropertiesRequest", + "description": "Updates dimensions' properties." + }, + "updateEmbeddedObjectPosition": { + "$ref": "UpdateEmbeddedObjectPositionRequest", + "description": "Updates an embedded object's (e.g. chart, image) position." + }, + "updateFilterView": { + "$ref": "UpdateFilterViewRequest", + "description": "Updates the properties of a filter view." + }, + "updateNamedRange": { + "$ref": "UpdateNamedRangeRequest", + "description": "Updates a named range." + }, + "updateProtectedRange": { + "$ref": "UpdateProtectedRangeRequest", + "description": "Updates a protected range." + }, + "updateSheetProperties": { + "$ref": "UpdateSheetPropertiesRequest", + "description": "Updates a sheet's properties." + }, + "updateSpreadsheetProperties": { + "$ref": "UpdateSpreadsheetPropertiesRequest", + "description": "Updates the spreadsheet's properties." + } + }, + "type": "object" + }, + "Response": { + "description": "A single response from an update.", + "id": "Response", + "properties": { + "addBanding": { + "$ref": "AddBandingResponse", + "description": "A reply from adding a banded range." + }, + "addChart": { + "$ref": "AddChartResponse", + "description": "A reply from adding a chart." + }, + "addFilterView": { + "$ref": "AddFilterViewResponse", + "description": "A reply from adding a filter view." + }, + "addNamedRange": { + "$ref": "AddNamedRangeResponse", + "description": "A reply from adding a named range." + }, + "addProtectedRange": { + "$ref": "AddProtectedRangeResponse", + "description": "A reply from adding a protected range." + }, + "addSheet": { + "$ref": "AddSheetResponse", + "description": "A reply from adding a sheet." + }, + "createDeveloperMetadata": { + "$ref": "CreateDeveloperMetadataResponse", + "description": "A reply from creating a developer metadata entry." + }, + "deleteConditionalFormatRule": { + "$ref": "DeleteConditionalFormatRuleResponse", + "description": "A reply from deleting a conditional format rule." + }, + "deleteDeveloperMetadata": { + "$ref": "DeleteDeveloperMetadataResponse", + "description": "A reply from deleting a developer metadata entry." + }, + "duplicateFilterView": { + "$ref": "DuplicateFilterViewResponse", + "description": "A reply from duplicating a filter view." + }, + "duplicateSheet": { + "$ref": "DuplicateSheetResponse", + "description": "A reply from duplicating a sheet." + }, + "findReplace": { + "$ref": "FindReplaceResponse", + "description": "A reply from doing a find/replace." + }, + "updateConditionalFormatRule": { + "$ref": "UpdateConditionalFormatRuleResponse", + "description": "A reply from updating a conditional format rule." + }, + "updateDeveloperMetadata": { + "$ref": "UpdateDeveloperMetadataResponse", + "description": "A reply from updating a developer metadata entry." + }, + "updateEmbeddedObjectPosition": { + "$ref": "UpdateEmbeddedObjectPositionResponse", + "description": "A reply from updating an embedded object's position." + } + }, + "type": "object" + }, + "RowData": { + "description": "Data about each cell in a row.", + "id": "RowData", + "properties": { + "values": { + "description": "The values in the row, one per column.", + "items": { + "$ref": "CellData" + }, + "type": "array" + } + }, + "type": "object" + }, + "SearchDeveloperMetadataRequest": { + "description": "A request to retrieve all developer metadata matching the set of specified\ncriteria.", + "id": "SearchDeveloperMetadataRequest", + "properties": { + "dataFilters": { + "description": "The data filters describing the criteria used to determine which\nDeveloperMetadata entries to return. DeveloperMetadata matching any of the\nspecified filters will be included in the response.", + "items": { + "$ref": "DataFilter" + }, + "type": "array" + } + }, + "type": "object" + }, + "SearchDeveloperMetadataResponse": { + "description": "A reply to a developer metadata search request.", + "id": "SearchDeveloperMetadataResponse", + "properties": { + "matchedDeveloperMetadata": { + "description": "The metadata matching the criteria of the search request.", + "items": { + "$ref": "MatchedDeveloperMetadata" + }, + "type": "array" + } + }, + "type": "object" + }, + "SetBasicFilterRequest": { + "description": "Sets the basic filter associated with a sheet.", + "id": "SetBasicFilterRequest", + "properties": { + "filter": { + "$ref": "BasicFilter", + "description": "The filter to set." + } + }, + "type": "object" + }, + "SetDataValidationRequest": { + "description": "Sets a data validation rule to every cell in the range.\nTo clear validation in a range, call this with no rule specified.", + "id": "SetDataValidationRequest", + "properties": { + "range": { + "$ref": "GridRange", + "description": "The range the data validation rule should apply to." + }, + "rule": { + "$ref": "DataValidationRule", + "description": "The data validation rule to set on each cell in the range,\nor empty to clear the data validation in the range." + } + }, + "type": "object" + }, + "Sheet": { + "description": "A sheet in a spreadsheet.", + "id": "Sheet", + "properties": { + "bandedRanges": { + "description": "The banded (i.e. alternating colors) ranges on this sheet.", + "items": { + "$ref": "BandedRange" + }, + "type": "array" + }, + "basicFilter": { + "$ref": "BasicFilter", + "description": "The filter on this sheet, if any." + }, + "charts": { + "description": "The specifications of every chart on this sheet.", + "items": { + "$ref": "EmbeddedChart" + }, + "type": "array" + }, + "conditionalFormats": { + "description": "The conditional format rules in this sheet.", + "items": { + "$ref": "ConditionalFormatRule" + }, + "type": "array" + }, + "data": { + "description": "Data in the grid, if this is a grid sheet.\nThe number of GridData objects returned is dependent on the number of\nranges requested on this sheet. For example, if this is representing\n`Sheet1`, and the spreadsheet was requested with ranges\n`Sheet1!A1:C10` and `Sheet1!D15:E20`, then the first GridData will have a\nstartRow/startColumn of `0`,\nwhile the second one will have `startRow 14` (zero-based row 15),\nand `startColumn 3` (zero-based column D).", + "items": { + "$ref": "GridData" + }, + "type": "array" + }, + "developerMetadata": { + "description": "The developer metadata associated with a sheet.", + "items": { + "$ref": "DeveloperMetadata" + }, + "type": "array" + }, + "filterViews": { + "description": "The filter views in this sheet.", + "items": { + "$ref": "FilterView" + }, + "type": "array" + }, + "merges": { + "description": "The ranges that are merged together.", + "items": { + "$ref": "GridRange" + }, + "type": "array" + }, + "properties": { + "$ref": "SheetProperties", + "description": "The properties of the sheet." + }, + "protectedRanges": { + "description": "The protected ranges in this sheet.", + "items": { + "$ref": "ProtectedRange" + }, + "type": "array" + } + }, + "type": "object" + }, + "SheetProperties": { + "description": "Properties of a sheet.", + "id": "SheetProperties", + "properties": { + "gridProperties": { + "$ref": "GridProperties", + "description": "Additional properties of the sheet if this sheet is a grid.\n(If the sheet is an object sheet, containing a chart or image, then\nthis field will be absent.)\nWhen writing it is an error to set any grid properties on non-grid sheets." + }, + "hidden": { + "description": "True if the sheet is hidden in the UI, false if it's visible.", + "type": "boolean" + }, + "index": { + "description": "The index of the sheet within the spreadsheet.\nWhen adding or updating sheet properties, if this field\nis excluded then the sheet will be added or moved to the end\nof the sheet list. When updating sheet indices or inserting\nsheets, movement is considered in \"before the move\" indexes.\nFor example, if there were 3 sheets (S1, S2, S3) in order to\nmove S1 ahead of S2 the index would have to be set to 2. A sheet\nindex update request will be ignored if the requested index is\nidentical to the sheets current index or if the requested new\nindex is equal to the current sheet index + 1.", + "format": "int32", + "type": "integer" + }, + "rightToLeft": { + "description": "True if the sheet is an RTL sheet instead of an LTR sheet.", + "type": "boolean" + }, + "sheetId": { + "description": "The ID of the sheet. Must be non-negative.\nThis field cannot be changed once set.", + "format": "int32", + "type": "integer" + }, + "sheetType": { + "description": "The type of sheet. Defaults to GRID.\nThis field cannot be changed once set.", + "enum": [ + "SHEET_TYPE_UNSPECIFIED", + "GRID", + "OBJECT" + ], + "enumDescriptions": [ + "Default value, do not use.", + "The sheet is a grid.", + "The sheet has no grid and instead has an object like a chart or image." + ], + "type": "string" + }, + "tabColor": { + "$ref": "Color", + "description": "The color of the tab in the UI." + }, + "title": { + "description": "The name of the sheet.", + "type": "string" + } + }, + "type": "object" + }, + "SortRangeRequest": { + "description": "Sorts data in rows based on a sort order per column.", + "id": "SortRangeRequest", + "properties": { + "range": { + "$ref": "GridRange", + "description": "The range to sort." + }, + "sortSpecs": { + "description": "The sort order per column. Later specifications are used when values\nare equal in the earlier specifications.", + "items": { + "$ref": "SortSpec" + }, + "type": "array" + } + }, + "type": "object" + }, + "SortSpec": { + "description": "A sort order associated with a specific column or row.", + "id": "SortSpec", + "properties": { + "dimensionIndex": { + "description": "The dimension the sort should be applied to.", + "format": "int32", + "type": "integer" + }, + "sortOrder": { + "description": "The order data should be sorted.", + "enum": [ + "SORT_ORDER_UNSPECIFIED", + "ASCENDING", + "DESCENDING" + ], + "enumDescriptions": [ + "Default value, do not use this.", + "Sort ascending.", + "Sort descending." + ], + "type": "string" + } + }, + "type": "object" + }, + "SourceAndDestination": { + "description": "A combination of a source range and how to extend that source.", + "id": "SourceAndDestination", + "properties": { + "dimension": { + "description": "The dimension that data should be filled into.", + "enum": [ + "DIMENSION_UNSPECIFIED", + "ROWS", + "COLUMNS" + ], + "enumDescriptions": [ + "The default value, do not use.", + "Operates on the rows of a sheet.", + "Operates on the columns of a sheet." + ], + "type": "string" + }, + "fillLength": { + "description": "The number of rows or columns that data should be filled into.\nPositive numbers expand beyond the last row or last column\nof the source. Negative numbers expand before the first row\nor first column of the source.", + "format": "int32", + "type": "integer" + }, + "source": { + "$ref": "GridRange", + "description": "The location of the data to use as the source of the autofill." + } + }, + "type": "object" + }, + "Spreadsheet": { + "description": "Resource that represents a spreadsheet.", + "id": "Spreadsheet", + "properties": { + "developerMetadata": { + "description": "The developer metadata associated with a spreadsheet.", + "items": { + "$ref": "DeveloperMetadata" + }, + "type": "array" + }, + "namedRanges": { + "description": "The named ranges defined in a spreadsheet.", + "items": { + "$ref": "NamedRange" + }, + "type": "array" + }, + "properties": { + "$ref": "SpreadsheetProperties", + "description": "Overall properties of a spreadsheet." + }, + "sheets": { + "description": "The sheets that are part of a spreadsheet.", + "items": { + "$ref": "Sheet" + }, + "type": "array" + }, + "spreadsheetId": { + "description": "The ID of the spreadsheet.\nThis field is read-only.", + "type": "string" + }, + "spreadsheetUrl": { + "description": "The url of the spreadsheet.\nThis field is read-only.", + "type": "string" + } + }, + "type": "object" + }, + "SpreadsheetProperties": { + "description": "Properties of a spreadsheet.", + "id": "SpreadsheetProperties", + "properties": { + "autoRecalc": { + "description": "The amount of time to wait before volatile functions are recalculated.", + "enum": [ + "RECALCULATION_INTERVAL_UNSPECIFIED", + "ON_CHANGE", + "MINUTE", + "HOUR" + ], + "enumDescriptions": [ + "Default value. This value must not be used.", + "Volatile functions are updated on every change.", + "Volatile functions are updated on every change and every minute.", + "Volatile functions are updated on every change and hourly." + ], + "type": "string" + }, + "defaultFormat": { + "$ref": "CellFormat", + "description": "The default format of all cells in the spreadsheet.\nCellData.effectiveFormat will not be set if\nthe cell's format is equal to this default format. This field is read-only." + }, + "iterativeCalculationSettings": { + "$ref": "IterativeCalculationSettings", + "description": "Determines whether and how circular references are resolved with iterative\ncalculation. Absence of this field means that circular references will\nresult in calculation errors." + }, + "locale": { + "description": "The locale of the spreadsheet in one of the following formats:\n\n* an ISO 639-1 language code such as `en`\n\n* an ISO 639-2 language code such as `fil`, if no 639-1 code exists\n\n* a combination of the ISO language code and country code, such as `en_US`\n\nNote: when updating this field, not all locales/languages are supported.", + "type": "string" + }, + "timeZone": { + "description": "The time zone of the spreadsheet, in CLDR format such as\n`America/New_York`. If the time zone isn't recognized, this may\nbe a custom time zone such as `GMT-07:00`.", + "type": "string" + }, + "title": { + "description": "The title of the spreadsheet.", + "type": "string" + } + }, + "type": "object" + }, + "TextFormat": { + "description": "The format of a run of text in a cell.\nAbsent values indicate that the field isn't specified.", + "id": "TextFormat", + "properties": { + "bold": { + "description": "True if the text is bold.", + "type": "boolean" + }, + "fontFamily": { + "description": "The font family.", + "type": "string" + }, + "fontSize": { + "description": "The size of the font.", + "format": "int32", + "type": "integer" + }, + "foregroundColor": { + "$ref": "Color", + "description": "The foreground color of the text." + }, + "italic": { + "description": "True if the text is italicized.", + "type": "boolean" + }, + "strikethrough": { + "description": "True if the text has a strikethrough.", + "type": "boolean" + }, + "underline": { + "description": "True if the text is underlined.", + "type": "boolean" + } + }, + "type": "object" + }, + "TextFormatRun": { + "description": "A run of a text format. The format of this run continues until the start\nindex of the next run.\nWhen updating, all fields must be set.", + "id": "TextFormatRun", + "properties": { + "format": { + "$ref": "TextFormat", + "description": "The format of this run. Absent values inherit the cell's format." + }, + "startIndex": { + "description": "The character index where this run starts.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "TextPosition": { + "description": "Position settings for text.", + "id": "TextPosition", + "properties": { "horizontalAlignment": { - "description": "The horizontal alignment of the value in the cell.", - "type": "string", + "description": "Horizontal alignment setting for the piece of text.", + "enum": [ + "HORIZONTAL_ALIGN_UNSPECIFIED", + "LEFT", + "CENTER", + "RIGHT" + ], "enumDescriptions": [ "The horizontal alignment is not specified. Do not use this.", "The text is explicitly aligned to the left of the cell.", "The text is explicitly aligned to the center of the cell.", "The text is explicitly aligned to the right of the cell." ], + "type": "string" + } + }, + "type": "object" + }, + "TextRotation": { + "description": "The rotation applied to text in a cell.", + "id": "TextRotation", + "properties": { + "angle": { + "description": "The angle between the standard orientation and the desired orientation.\nMeasured in degrees. Valid values are between -90 and 90. Positive\nangles are angled upwards, negative are angled downwards.\n\nNote: For LTR text direction positive angles are in the counterclockwise\ndirection, whereas for RTL they are in the clockwise direction", + "format": "int32", + "type": "integer" + }, + "vertical": { + "description": "If true, text reads top to bottom, but the orientation of individual\ncharacters is unchanged.\nFor example:\n\n | V |\n | e |\n | r |\n | t |\n | i |\n | c |\n | a |\n | l |", + "type": "boolean" + } + }, + "type": "object" + }, + "TextToColumnsRequest": { + "description": "Splits a column of text into multiple columns,\nbased on a delimiter in each cell.", + "id": "TextToColumnsRequest", + "properties": { + "delimiter": { + "description": "The delimiter to use. Used only if delimiterType is\nCUSTOM.", + "type": "string" + }, + "delimiterType": { + "description": "The delimiter type to use.", "enum": [ - "HORIZONTAL_ALIGN_UNSPECIFIED", - "LEFT", - "CENTER", - "RIGHT" - ] + "DELIMITER_TYPE_UNSPECIFIED", + "COMMA", + "SEMICOLON", + "PERIOD", + "SPACE", + "CUSTOM", + "AUTODETECT" + ], + "enumDescriptions": [ + "Default value. This value must not be used.", + "\",\"", + "\";\"", + "\".\"", + "\" \"", + "A custom value as defined in delimiter.", + "Automatically detect columns." + ], + "type": "string" }, - "textFormat": { - "description": "The format of the text in the cell (unless overridden by a format run).", - "$ref": "TextFormat" - }, - "backgroundColor": { + "source": { + "$ref": "GridRange", + "description": "The source data range. This must span exactly one column." + } + }, + "type": "object" + }, + "TreemapChartColorScale": { + "description": "A color scale for a treemap chart.", + "id": "TreemapChartColorScale", + "properties": { + "maxValueColor": { "$ref": "Color", - "description": "The background color of the cell." + "description": "The background color for cells with a color value greater than or equal\nto maxValue. Defaults to #109618 if not\nspecified." }, - "padding": { - "description": "The padding of the cell.", - "$ref": "Padding" + "midValueColor": { + "$ref": "Color", + "description": "The background color for cells with a color value at the midpoint between\nminValue and\nmaxValue. Defaults to #efe6dc if not\nspecified." }, - "verticalAlignment": { - "enumDescriptions": [ - "The vertical alignment is not specified. Do not use this.", - "The text is explicitly aligned to the top of the cell.", - "The text is explicitly aligned to the middle of the cell.", - "The text is explicitly aligned to the bottom of the cell." - ], - "enum": [ - "VERTICAL_ALIGN_UNSPECIFIED", - "TOP", - "MIDDLE", - "BOTTOM" - ], - "description": "The vertical alignment of the value in the cell.", - "type": "string" + "minValueColor": { + "$ref": "Color", + "description": "The background color for cells with a color value less than or equal to\nminValue. Defaults to #dc3912 if not\nspecified." }, - "borders": { - "$ref": "Borders", - "description": "The borders of the cell." - }, - "textDirection": { - "description": "The direction of the text in the cell.", - "type": "string", - "enumDescriptions": [ - "The text direction is not specified. Do not use this.", - "The text direction of left-to-right was set by the user.", - "The text direction of right-to-left was set by the user." - ], - "enum": [ - "TEXT_DIRECTION_UNSPECIFIED", - "LEFT_TO_RIGHT", - "RIGHT_TO_LEFT" - ] - }, - "wrapStrategy": { - "description": "The wrap strategy for the value in the cell.", - "type": "string", - "enumDescriptions": [ - "The default value, do not use.", - "Lines that are longer than the cell width will be written in the next\ncell over, so long as that cell is empty. If the next cell over is\nnon-empty, this behaves the same as CLIP. The text will never wrap\nto the next line unless the user manually inserts a new line.\nExample:\n\n | First sentence. |\n | Manual newline that is very long. \u003c- Text continues into next cell\n | Next newline. |", - "This wrap strategy represents the old Google Sheets wrap strategy where\nwords that are longer than a line are clipped rather than broken. This\nstrategy is not supported on all platforms and is being phased out.\nExample:\n\n | Cell has a |\n | loooooooooo| \u003c- Word is clipped.\n | word. |", - "Lines that are longer than the cell width will be clipped.\nThe text will never wrap to the next line unless the user manually\ninserts a new line.\nExample:\n\n | First sentence. |\n | Manual newline t| \u003c- Text is clipped\n | Next newline. |", - "Words that are longer than a line are wrapped at the character level\nrather than clipped.\nExample:\n\n | Cell has a |\n | loooooooooo| \u003c- Word is broken.\n | ong word. |" - ], - "enum": [ - "WRAP_STRATEGY_UNSPECIFIED", - "OVERFLOW_CELL", - "LEGACY_WRAP", - "CLIP", - "WRAP" - ] - }, - "textRotation": { - "$ref": "TextRotation", - "description": "The rotation applied to text in a cell" - } - } - }, - "ClearValuesResponse": { - "id": "ClearValuesResponse", - "description": "The response when clearing a range of values in a spreadsheet.", - "type": "object", - "properties": { - "spreadsheetId": { - "description": "The spreadsheet the updates were applied to.", - "type": "string" - }, - "clearedRange": { - "description": "The range (in A1 notation) that was cleared.\n(If the request was for an unbounded range or a ranger larger\n than the bounds of the sheet, this will be the actual range\n that was cleared, bounded to the sheet's limits.)", - "type": "string" - } - } - }, - "DeleteConditionalFormatRuleRequest": { - "description": "Deletes a conditional format rule at the given index.\nAll subsequent rules' indexes are decremented.", - "type": "object", - "properties": { - "sheetId": { - "description": "The sheet the rule is being deleted from.", - "format": "int32", - "type": "integer" - }, - "index": { - "description": "The zero-based index of the rule to be deleted.", - "format": "int32", - "type": "integer" + "noDataColor": { + "$ref": "Color", + "description": "The background color for cells that have no color data associated with\nthem. Defaults to #000000 if not specified." } }, - "id": "DeleteConditionalFormatRuleRequest" + "type": "object" }, - "AddBandingResponse": { - "id": "AddBandingResponse", - "description": "The result of adding a banded range.", - "type": "object", + "TreemapChartSpec": { + "description": "A \u003ca href=\"/chart/interactive/docs/gallery/treemap\"\u003eTreemap chart\u003c/a\u003e.", + "id": "TreemapChartSpec", "properties": { - "bandedRange": { - "$ref": "BandedRange", - "description": "The banded range that was added." - } - } - }, - "DeleteNamedRangeRequest": { - "description": "Removes the named range with the given ID from the spreadsheet.", - "type": "object", - "properties": { - "namedRangeId": { - "description": "The ID of the named range to delete.", - "type": "string" - } - }, - "id": "DeleteNamedRangeRequest" - }, - "WaterfallChartCustomSubtotal": { - "id": "WaterfallChartCustomSubtotal", - "description": "A custom subtotal column for a waterfall chart series.", - "type": "object", - "properties": { - "subtotalIndex": { - "description": "The 0-based index of a data point within the series. If\ndata_is_subtotal is true, the data point at this index is the\nsubtotal. Otherwise, the subtotal appears after the data point with\nthis index. A series can have multiple subtotals at arbitrary indices,\nbut subtotals do not affect the indices of the data points. For\nexample, if a series has 3 data points, their indices will always be 0,\n1, and 2, regardless of how many subtotals exist on the series or what\ndata points they are associated with.", - "format": "int32", - "type": "integer" + "colorData": { + "$ref": "ChartData", + "description": "The data that determines the background color of each treemap data cell.\nThis field is optional. If not specified, size_data will be used to\ndetermine background colors. If specified, the data is expected to be\nnumeric. color_scale will determine how the values in this data map to\ndata cell background colors." }, - "dataIsSubtotal": { - "description": "True if the data point at subtotal_index is the subtotal. If false,\nthe subtotal will be computed and appear after the data point.", + "colorScale": { + "$ref": "TreemapChartColorScale", + "description": "The color scale for data cells in the treemap chart. Data cells are\nassigned colors based on their color values. These color values come from\ncolor_data, or from size_data if color_data is not specified.\nCells with color values less than or equal to min_value will\nhave minValueColor as their\nbackground color. Cells with color values greater than or equal to\nmax_value will have\nmaxValueColor as their background\ncolor. Cells with color values between min_value and max_value will\nhave background colors on a gradient between\nminValueColor and\nmaxValueColor, the midpoint of\nthe gradient being midValueColor.\nCells with missing or non-numeric color values will have\nnoDataColor as their background\ncolor." + }, + "headerColor": { + "$ref": "Color", + "description": "The background color for header cells." + }, + "hideTooltips": { + "description": "True to hide tooltips.", "type": "boolean" }, - "label": { - "description": "A label for the subtotal column.", - "type": "string" - } - } - }, - "ChartData": { - "id": "ChartData", - "description": "The data included in a domain or series.", - "type": "object", - "properties": { - "sourceRange": { - "description": "The source ranges of the data.", - "$ref": "ChartSourceRange" - } - } - }, - "BatchGetValuesResponse": { - "id": "BatchGetValuesResponse", - "description": "The response when retrieving more than one range of values in a spreadsheet.", - "type": "object", - "properties": { - "valueRanges": { - "description": "The requested values. The order of the ValueRanges is the same as the\norder of the requested ranges.", - "type": "array", - "items": { - "$ref": "ValueRange" - } + "hintedLevels": { + "description": "The number of additional data levels beyond the labeled levels to be shown\non the treemap chart. These levels are not interactive and are shown\nwithout their labels. Defaults to 0 if not specified.", + "format": "int32", + "type": "integer" }, - "spreadsheetId": { - "description": "The ID of the spreadsheet the data was retrieved from.", - "type": "string" + "labels": { + "$ref": "ChartData", + "description": "The data that contains the treemap cell labels." + }, + "levels": { + "description": "The number of data levels to show on the treemap chart. These levels are\ninteractive and are shown with their labels. Defaults to 2 if not\nspecified.", + "format": "int32", + "type": "integer" + }, + "maxValue": { + "description": "The maximum possible data value. Cells with values greater than this will\nhave the same color as cells with this value. If not specified, defaults\nto the actual maximum value from color_data, or the maximum value from\nsize_data if color_data is not specified.", + "format": "double", + "type": "number" + }, + "minValue": { + "description": "The minimum possible data value. Cells with values less than this will\nhave the same color as cells with this value. If not specified, defaults\nto the actual minimum value from color_data, or the minimum value from\nsize_data if color_data is not specified.", + "format": "double", + "type": "number" + }, + "parentLabels": { + "$ref": "ChartData", + "description": "The data the contains the treemap cells' parent labels." + }, + "sizeData": { + "$ref": "ChartData", + "description": "The data that determines the size of each treemap data cell. This data is\nexpected to be numeric. The cells corresponding to non-numeric or missing\ndata will not be rendered. If color_data is not specified, this data\nwill be used to determine data cell background colors as well." + }, + "textFormat": { + "$ref": "TextFormat", + "description": "The text format for all labels on the chart." } - } + }, + "type": "object" + }, + "UnmergeCellsRequest": { + "description": "Unmerges cells in the given range.", + "id": "UnmergeCellsRequest", + "properties": { + "range": { + "$ref": "GridRange", + "description": "The range within which all cells should be unmerged.\nIf the range spans multiple merges, all will be unmerged.\nThe range must not partially span any merge." + } + }, + "type": "object" }, "UpdateBandingRequest": { "description": "Updates properties of the supplied banded range.", - "type": "object", + "id": "UpdateBandingRequest", "properties": { "bandedRange": { "$ref": "BandedRange", @@ -4435,1188 +5266,540 @@ "type": "string" } }, - "id": "UpdateBandingRequest" + "type": "object" }, - "Color": { - "description": "Represents a color in the RGBA color space. This representation is designed\nfor simplicity of conversion to/from color representations in various\nlanguages over compactness; for example, the fields of this representation\ncan be trivially provided to the constructor of \"java.awt.Color\" in Java; it\ncan also be trivially provided to UIColor's \"+colorWithRed:green:blue:alpha\"\nmethod in iOS; and, with just a little work, it can be easily formatted into\na CSS \"rgba()\" string in JavaScript, as well. Here are some examples:\n\nExample (Java):\n\n import com.google.type.Color;\n\n // ...\n public static java.awt.Color fromProto(Color protocolor) {\n float alpha = protocolor.hasAlpha()\n ? protocolor.getAlpha().getValue()\n : 1.0;\n\n return new java.awt.Color(\n protocolor.getRed(),\n protocolor.getGreen(),\n protocolor.getBlue(),\n alpha);\n }\n\n public static Color toProto(java.awt.Color color) {\n float red = (float) color.getRed();\n float green = (float) color.getGreen();\n float blue = (float) color.getBlue();\n float denominator = 255.0;\n Color.Builder resultBuilder =\n Color\n .newBuilder()\n .setRed(red / denominator)\n .setGreen(green / denominator)\n .setBlue(blue / denominator);\n int alpha = color.getAlpha();\n if (alpha != 255) {\n result.setAlpha(\n FloatValue\n .newBuilder()\n .setValue(((float) alpha) / denominator)\n .build());\n }\n return resultBuilder.build();\n }\n // ...\n\nExample (iOS / Obj-C):\n\n // ...\n static UIColor* fromProto(Color* protocolor) {\n float red = [protocolor red];\n float green = [protocolor green];\n float blue = [protocolor blue];\n FloatValue* alpha_wrapper = [protocolor alpha];\n float alpha = 1.0;\n if (alpha_wrapper != nil) {\n alpha = [alpha_wrapper value];\n }\n return [UIColor colorWithRed:red green:green blue:blue alpha:alpha];\n }\n\n static Color* toProto(UIColor* color) {\n CGFloat red, green, blue, alpha;\n if (![color getRed:&red green:&green blue:&blue alpha:&alpha]) {\n return nil;\n }\n Color* result = [Color alloc] init];\n [result setRed:red];\n [result setGreen:green];\n [result setBlue:blue];\n if (alpha \u003c= 0.9999) {\n [result setAlpha:floatWrapperWithValue(alpha)];\n }\n [result autorelease];\n return result;\n }\n // ...\n\n Example (JavaScript):\n\n // ...\n\n var protoToCssColor = function(rgb_color) {\n var redFrac = rgb_color.red || 0.0;\n var greenFrac = rgb_color.green || 0.0;\n var blueFrac = rgb_color.blue || 0.0;\n var red = Math.floor(redFrac * 255);\n var green = Math.floor(greenFrac * 255);\n var blue = Math.floor(blueFrac * 255);\n\n if (!('alpha' in rgb_color)) {\n return rgbToCssColor_(red, green, blue);\n }\n\n var alphaFrac = rgb_color.alpha.value || 0.0;\n var rgbParams = [red, green, blue].join(',');\n return ['rgba(', rgbParams, ',', alphaFrac, ')'].join('');\n };\n\n var rgbToCssColor_ = function(red, green, blue) {\n var rgbNumber = new Number((red \u003c\u003c 16) | (green \u003c\u003c 8) | blue);\n var hexString = rgbNumber.toString(16);\n var missingZeros = 6 - hexString.length;\n var resultBuilder = ['#'];\n for (var i = 0; i \u003c missingZeros; i++) {\n resultBuilder.push('0');\n }\n resultBuilder.push(hexString);\n return resultBuilder.join('');\n };\n\n // ...", - "type": "object", + "UpdateBordersRequest": { + "description": "Updates the borders of a range.\nIf a field is not set in the request, that means the border remains as-is.\nFor example, with two subsequent UpdateBordersRequest:\n\n 1. range: A1:A5 `{ top: RED, bottom: WHITE }`\n 2. range: A1:A5 `{ left: BLUE }`\n\nThat would result in A1:A5 having a borders of\n`{ top: RED, bottom: WHITE, left: BLUE }`.\nIf you want to clear a border, explicitly set the style to\nNONE.", + "id": "UpdateBordersRequest", "properties": { - "green": { - "description": "The amount of green in the color as a value in the interval [0, 1].", - "format": "float", - "type": "number" + "bottom": { + "$ref": "Border", + "description": "The border to put at the bottom of the range." }, - "blue": { - "description": "The amount of blue in the color as a value in the interval [0, 1].", - "format": "float", - "type": "number" + "innerHorizontal": { + "$ref": "Border", + "description": "The horizontal border to put within the range." }, - "alpha": { - "description": "The fraction of this color that should be applied to the pixel. That is,\nthe final pixel color is defined by the equation:\n\n pixel color = alpha * (this color) + (1.0 - alpha) * (background color)\n\nThis means that a value of 1.0 corresponds to a solid color, whereas\na value of 0.0 corresponds to a completely transparent color. This\nuses a wrapper message rather than a simple float scalar so that it is\npossible to distinguish between a default value and the value being unset.\nIf omitted, this color object is to be rendered as a solid color\n(as if the alpha value had been explicitly given with a value of 1.0).", - "format": "float", - "type": "number" + "innerVertical": { + "$ref": "Border", + "description": "The vertical border to put within the range." }, - "red": { - "description": "The amount of red in the color as a value in the interval [0, 1].", - "format": "float", - "type": "number" - } - }, - "id": "Color" - }, - "PivotGroup": { - "description": "A single grouping (either row or column) in a pivot table.", - "type": "object", - "properties": { - "sortOrder": { - "enumDescriptions": [ - "Default value, do not use this.", - "Sort ascending.", - "Sort descending." - ], - "enum": [ - "SORT_ORDER_UNSPECIFIED", - "ASCENDING", - "DESCENDING" - ], - "description": "The order the values in this group should be sorted.", - "type": "string" + "left": { + "$ref": "Border", + "description": "The border to put at the left of the range." }, - "valueBucket": { - "description": "The bucket of the opposite pivot group to sort by.\nIf not specified, sorting is alphabetical by this group's values.", - "$ref": "PivotGroupSortValueBucket" - }, - "sourceColumnOffset": { - "description": "The column offset of the source range that this grouping is based on.\n\nFor example, if the source was `C10:E15`, a `sourceColumnOffset` of `0`\nmeans this group refers to column `C`, whereas the offset `1` would refer\nto column `D`.", - "format": "int32", - "type": "integer" - }, - "showTotals": { - "description": "True if the pivot table should include the totals for this grouping.", - "type": "boolean" - }, - "valueMetadata": { - "description": "Metadata about values in the grouping.", - "type": "array", - "items": { - "$ref": "PivotGroupValueMetadata" - } - } - }, - "id": "PivotGroup" - }, - "PivotTable": { - "id": "PivotTable", - "description": "A pivot table.", - "type": "object", - "properties": { - "criteria": { - "additionalProperties": { - "$ref": "PivotFilterCriteria" - }, - "description": "An optional mapping of filters per source column offset.\n\nThe filters will be applied before aggregating data into the pivot table.\nThe map's key is the column offset of the source range that you want to\nfilter, and the value is the criteria for that column.\n\nFor example, if the source was `C10:E15`, a key of `0` will have the filter\nfor column `C`, whereas the key `1` is for column `D`.", - "type": "object" - }, - "rows": { - "description": "Each row grouping in the pivot table.", - "type": "array", - "items": { - "$ref": "PivotGroup" - } - }, - "valueLayout": { - "description": "Whether values should be listed horizontally (as columns)\nor vertically (as rows).", - "type": "string", - "enumDescriptions": [ - "Values are laid out horizontally (as columns).", - "Values are laid out vertically (as rows)." - ], - "enum": [ - "HORIZONTAL", - "VERTICAL" - ] - }, - "values": { - "description": "A list of values to include in the pivot table.", - "type": "array", - "items": { - "$ref": "PivotValue" - } - }, - "source": { + "range": { "$ref": "GridRange", - "description": "The range the pivot table is reading data from." + "description": "The range whose borders should be updated." }, - "columns": { - "description": "Each column grouping in the pivot table.", - "type": "array", - "items": { - "$ref": "PivotGroup" - } - } - } - }, - "ChartSourceRange": { - "id": "ChartSourceRange", - "description": "Source ranges for a chart.", - "type": "object", - "properties": { - "sources": { - "description": "The ranges of data for a series or domain.\nExactly one dimension must have a length of 1,\nand all sources in the list must have the same dimension\nwith length 1.\nThe domain (if it exists) & all series must have the same number\nof source ranges. If using more than one source range, then the source\nrange at a given offset must be contiguous across the domain and series.\n\nFor example, these are valid configurations:\n\n domain sources: A1:A5\n series1 sources: B1:B5\n series2 sources: D6:D10\n\n domain sources: A1:A5, C10:C12\n series1 sources: B1:B5, D10:D12\n series2 sources: C1:C5, E10:E12", - "type": "array", - "items": { - "$ref": "GridRange" - } - } - } - }, - "SearchDeveloperMetadataResponse": { - "id": "SearchDeveloperMetadataResponse", - "description": "A reply to a developer metadata search request.", - "type": "object", - "properties": { - "matchedDeveloperMetadata": { - "description": "The metadata matching the criteria of the search request.", - "type": "array", - "items": { - "$ref": "MatchedDeveloperMetadata" - } - } - } - }, - "AppendCellsRequest": { - "description": "Adds new cells after the last row with data in a sheet,\ninserting new rows into the sheet if necessary.", - "type": "object", - "properties": { - "sheetId": { - "description": "The sheet ID to append the data to.", - "format": "int32", - "type": "integer" - }, - "rows": { - "description": "The data to append.", - "type": "array", - "items": { - "$ref": "RowData" - } + "right": { + "$ref": "Border", + "description": "The border to put at the right of the range." }, + "top": { + "$ref": "Border", + "description": "The border to put at the top of the range." + } + }, + "type": "object" + }, + "UpdateCellsRequest": { + "description": "Updates all cells in a range with new data.", + "id": "UpdateCellsRequest", + "properties": { "fields": { "description": "The fields of CellData that should be updated.\nAt least one field must be specified.\nThe root is the CellData; 'row.values.' should not be specified.\nA single `\"*\"` can be used as short-hand for listing every field.", "format": "google-fieldmask", "type": "string" + }, + "range": { + "$ref": "GridRange", + "description": "The range to write data to.\n\nIf the data in rows does not cover the entire requested range,\nthe fields matching those set in fields will be cleared." + }, + "rows": { + "description": "The data to write.", + "items": { + "$ref": "RowData" + }, + "type": "array" + }, + "start": { + "$ref": "GridCoordinate", + "description": "The coordinate to start writing data at.\nAny number of rows and columns (including a different number of\ncolumns per row) may be written." } }, - "id": "AppendCellsRequest" + "type": "object" + }, + "UpdateChartSpecRequest": { + "description": "Updates a chart's specifications.\n(This does not move or resize a chart. To move or resize a chart, use\n UpdateEmbeddedObjectPositionRequest.)", + "id": "UpdateChartSpecRequest", + "properties": { + "chartId": { + "description": "The ID of the chart to update.", + "format": "int32", + "type": "integer" + }, + "spec": { + "$ref": "ChartSpec", + "description": "The specification to apply to the chart." + } + }, + "type": "object" + }, + "UpdateConditionalFormatRuleRequest": { + "description": "Updates a conditional format rule at the given index,\nor moves a conditional format rule to another index.", + "id": "UpdateConditionalFormatRuleRequest", + "properties": { + "index": { + "description": "The zero-based index of the rule that should be replaced or moved.", + "format": "int32", + "type": "integer" + }, + "newIndex": { + "description": "The zero-based new index the rule should end up at.", + "format": "int32", + "type": "integer" + }, + "rule": { + "$ref": "ConditionalFormatRule", + "description": "The rule that should replace the rule at the given index." + }, + "sheetId": { + "description": "The sheet of the rule to move. Required if new_index is set,\nunused otherwise.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "UpdateConditionalFormatRuleResponse": { + "description": "The result of updating a conditional format rule.", + "id": "UpdateConditionalFormatRuleResponse", + "properties": { + "newIndex": { + "description": "The index of the new rule.", + "format": "int32", + "type": "integer" + }, + "newRule": { + "$ref": "ConditionalFormatRule", + "description": "The new rule that replaced the old rule (if replacing),\nor the rule that was moved (if moved)" + }, + "oldIndex": { + "description": "The old index of the rule. Not set if a rule was replaced\n(because it is the same as new_index).", + "format": "int32", + "type": "integer" + }, + "oldRule": { + "$ref": "ConditionalFormatRule", + "description": "The old (deleted) rule. Not set if a rule was moved\n(because it is the same as new_rule)." + } + }, + "type": "object" + }, + "UpdateDeveloperMetadataRequest": { + "description": "A request to update properties of developer metadata.\nUpdates the properties of the developer metadata selected by the filters to\nthe values provided in the DeveloperMetadata resource. Callers must\nspecify the properties they wish to update in the fields parameter, as well\nas specify at least one DataFilter matching the metadata they wish to\nupdate.", + "id": "UpdateDeveloperMetadataRequest", + "properties": { + "dataFilters": { + "description": "The filters matching the developer metadata entries to update.", + "items": { + "$ref": "DataFilter" + }, + "type": "array" + }, + "developerMetadata": { + "$ref": "DeveloperMetadata", + "description": "The value that all metadata matched by the data filters will be updated to." + }, + "fields": { + "description": "The fields that should be updated. At least one field must be specified.\nThe root `developerMetadata` is implied and should not be specified.\nA single `\"*\"` can be used as short-hand for listing every field.", + "format": "google-fieldmask", + "type": "string" + } + }, + "type": "object" + }, + "UpdateDeveloperMetadataResponse": { + "description": "The response from updating developer metadata.", + "id": "UpdateDeveloperMetadataResponse", + "properties": { + "developerMetadata": { + "description": "The updated developer metadata.", + "items": { + "$ref": "DeveloperMetadata" + }, + "type": "array" + } + }, + "type": "object" + }, + "UpdateDimensionPropertiesRequest": { + "description": "Updates properties of dimensions within the specified range.", + "id": "UpdateDimensionPropertiesRequest", + "properties": { + "fields": { + "description": "The fields that should be updated. At least one field must be specified.\nThe root `properties` is implied and should not be specified.\nA single `\"*\"` can be used as short-hand for listing every field.", + "format": "google-fieldmask", + "type": "string" + }, + "properties": { + "$ref": "DimensionProperties", + "description": "Properties to update." + }, + "range": { + "$ref": "DimensionRange", + "description": "The rows or columns to update." + } + }, + "type": "object" + }, + "UpdateEmbeddedObjectPositionRequest": { + "description": "Update an embedded object's position (such as a moving or resizing a\nchart or image).", + "id": "UpdateEmbeddedObjectPositionRequest", + "properties": { + "fields": { + "description": "The fields of OverlayPosition\nthat should be updated when setting a new position. Used only if\nnewPosition.overlayPosition\nis set, in which case at least one field must\nbe specified. The root `newPosition.overlayPosition` is implied and\nshould not be specified.\nA single `\"*\"` can be used as short-hand for listing every field.", + "format": "google-fieldmask", + "type": "string" + }, + "newPosition": { + "$ref": "EmbeddedObjectPosition", + "description": "An explicit position to move the embedded object to.\nIf newPosition.sheetId is set,\na new sheet with that ID will be created.\nIf newPosition.newSheet is set to true,\na new sheet will be created with an ID that will be chosen for you." + }, + "objectId": { + "description": "The ID of the object to moved.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "UpdateEmbeddedObjectPositionResponse": { + "description": "The result of updating an embedded object's position.", + "id": "UpdateEmbeddedObjectPositionResponse", + "properties": { + "position": { + "$ref": "EmbeddedObjectPosition", + "description": "The new position of the embedded object." + } + }, + "type": "object" + }, + "UpdateFilterViewRequest": { + "description": "Updates properties of the filter view.", + "id": "UpdateFilterViewRequest", + "properties": { + "fields": { + "description": "The fields that should be updated. At least one field must be specified.\nThe root `filter` is implied and should not be specified.\nA single `\"*\"` can be used as short-hand for listing every field.", + "format": "google-fieldmask", + "type": "string" + }, + "filter": { + "$ref": "FilterView", + "description": "The new properties of the filter view." + } + }, + "type": "object" + }, + "UpdateNamedRangeRequest": { + "description": "Updates properties of the named range with the specified\nnamedRangeId.", + "id": "UpdateNamedRangeRequest", + "properties": { + "fields": { + "description": "The fields that should be updated. At least one field must be specified.\nThe root `namedRange` is implied and should not be specified.\nA single `\"*\"` can be used as short-hand for listing every field.", + "format": "google-fieldmask", + "type": "string" + }, + "namedRange": { + "$ref": "NamedRange", + "description": "The named range to update with the new properties." + } + }, + "type": "object" + }, + "UpdateProtectedRangeRequest": { + "description": "Updates an existing protected range with the specified\nprotectedRangeId.", + "id": "UpdateProtectedRangeRequest", + "properties": { + "fields": { + "description": "The fields that should be updated. At least one field must be specified.\nThe root `protectedRange` is implied and should not be specified.\nA single `\"*\"` can be used as short-hand for listing every field.", + "format": "google-fieldmask", + "type": "string" + }, + "protectedRange": { + "$ref": "ProtectedRange", + "description": "The protected range to update with the new properties." + } + }, + "type": "object" + }, + "UpdateSheetPropertiesRequest": { + "description": "Updates properties of the sheet with the specified\nsheetId.", + "id": "UpdateSheetPropertiesRequest", + "properties": { + "fields": { + "description": "The fields that should be updated. At least one field must be specified.\nThe root `properties` is implied and should not be specified.\nA single `\"*\"` can be used as short-hand for listing every field.", + "format": "google-fieldmask", + "type": "string" + }, + "properties": { + "$ref": "SheetProperties", + "description": "The properties to update." + } + }, + "type": "object" + }, + "UpdateSpreadsheetPropertiesRequest": { + "description": "Updates properties of a spreadsheet.", + "id": "UpdateSpreadsheetPropertiesRequest", + "properties": { + "fields": { + "description": "The fields that should be updated. At least one field must be specified.\nThe root 'properties' is implied and should not be specified.\nA single `\"*\"` can be used as short-hand for listing every field.", + "format": "google-fieldmask", + "type": "string" + }, + "properties": { + "$ref": "SpreadsheetProperties", + "description": "The properties to update." + } + }, + "type": "object" + }, + "UpdateValuesByDataFilterResponse": { + "description": "The response when updating a range of values by a data filter in a\nspreadsheet.", + "id": "UpdateValuesByDataFilterResponse", + "properties": { + "dataFilter": { + "$ref": "DataFilter", + "description": "The data filter that selected the range that was updated." + }, + "updatedCells": { + "description": "The number of cells updated.", + "format": "int32", + "type": "integer" + }, + "updatedColumns": { + "description": "The number of columns where at least one cell in the column was updated.", + "format": "int32", + "type": "integer" + }, + "updatedData": { + "$ref": "ValueRange", + "description": "The values of the cells in the range matched by the dataFilter after all\nupdates were applied. This is only included if the request's\n`includeValuesInResponse` field was `true`." + }, + "updatedRange": { + "description": "The range (in A1 notation) that updates were applied to.", + "type": "string" + }, + "updatedRows": { + "description": "The number of rows where at least one cell in the row was updated.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "UpdateValuesResponse": { + "description": "The response when updating a range of values in a spreadsheet.", + "id": "UpdateValuesResponse", + "properties": { + "spreadsheetId": { + "description": "The spreadsheet the updates were applied to.", + "type": "string" + }, + "updatedCells": { + "description": "The number of cells updated.", + "format": "int32", + "type": "integer" + }, + "updatedColumns": { + "description": "The number of columns where at least one cell in the column was updated.", + "format": "int32", + "type": "integer" + }, + "updatedData": { + "$ref": "ValueRange", + "description": "The values of the cells after updates were applied.\nThis is only included if the request's `includeValuesInResponse` field\nwas `true`." + }, + "updatedRange": { + "description": "The range (in A1 notation) that updates were applied to.", + "type": "string" + }, + "updatedRows": { + "description": "The number of rows where at least one cell in the row was updated.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" }, "ValueRange": { - "id": "ValueRange", "description": "Data within a range of the spreadsheet.", - "type": "object", + "id": "ValueRange", "properties": { + "majorDimension": { + "description": "The major dimension of the values.\n\nFor output, if the spreadsheet data is: `A1=1,B1=2,A2=3,B2=4`,\nthen requesting `range=A1:B2,majorDimension=ROWS` will return\n`[[1,2],[3,4]]`,\nwhereas requesting `range=A1:B2,majorDimension=COLUMNS` will return\n`[[1,3],[2,4]]`.\n\nFor input, with `range=A1:B2,majorDimension=ROWS` then `[[1,2],[3,4]]`\nwill set `A1=1,B1=2,A2=3,B2=4`. With `range=A1:B2,majorDimension=COLUMNS`\nthen `[[1,2],[3,4]]` will set `A1=1,B1=3,A2=2,B2=4`.\n\nWhen writing, if this field is not set, it defaults to ROWS.", + "enum": [ + "DIMENSION_UNSPECIFIED", + "ROWS", + "COLUMNS" + ], + "enumDescriptions": [ + "The default value, do not use.", + "Operates on the rows of a sheet.", + "Operates on the columns of a sheet." + ], + "type": "string" + }, "range": { "description": "The range the values cover, in A1 notation.\nFor output, this range indicates the entire requested range,\neven though the values will exclude trailing rows and columns.\nWhen appending values, this field represents the range to search for a\ntable, after which values will be appended.", "type": "string" }, - "majorDimension": { - "description": "The major dimension of the values.\n\nFor output, if the spreadsheet data is: `A1=1,B1=2,A2=3,B2=4`,\nthen requesting `range=A1:B2,majorDimension=ROWS` will return\n`[[1,2],[3,4]]`,\nwhereas requesting `range=A1:B2,majorDimension=COLUMNS` will return\n`[[1,3],[2,4]]`.\n\nFor input, with `range=A1:B2,majorDimension=ROWS` then `[[1,2],[3,4]]`\nwill set `A1=1,B1=2,A2=3,B2=4`. With `range=A1:B2,majorDimension=COLUMNS`\nthen `[[1,2],[3,4]]` will set `A1=1,B1=3,A2=2,B2=4`.\n\nWhen writing, if this field is not set, it defaults to ROWS.", - "type": "string", - "enumDescriptions": [ - "The default value, do not use.", - "Operates on the rows of a sheet.", - "Operates on the columns of a sheet." - ], - "enum": [ - "DIMENSION_UNSPECIFIED", - "ROWS", - "COLUMNS" - ] - }, "values": { "description": "The data that was read or to be written. This is an array of arrays,\nthe outer array representing all the data and each inner array\nrepresenting a major dimension. Each item in the inner array\ncorresponds with one cell.\n\nFor output, empty trailing rows and columns will not be included.\n\nFor input, supported value types are: bool, string, and double.\nNull values will be skipped.\nTo set a cell to an empty value, set the string value to an empty string.", - "type": "array", "items": { - "type": "array", "items": { "type": "any" - } - } + }, + "type": "array" + }, + "type": "array" } - } + }, + "type": "object" }, - "AddBandingRequest": { - "id": "AddBandingRequest", - "description": "Adds a new banded range to the spreadsheet.", - "type": "object", + "WaterfallChartColumnStyle": { + "description": "Styles for a waterfall chart column.", + "id": "WaterfallChartColumnStyle", "properties": { - "bandedRange": { - "$ref": "BandedRange", - "description": "The banded range to add. The bandedRangeId\nfield is optional; if one is not set, an id will be randomly generated. (It\nis an error to specify the ID of a range that already exists.)" + "color": { + "$ref": "Color", + "description": "The color of the column." + }, + "label": { + "description": "The label of the column's legend.", + "type": "string" } - } + }, + "type": "object" }, - "Response": { - "id": "Response", - "description": "A single response from an update.", - "type": "object", + "WaterfallChartCustomSubtotal": { + "description": "A custom subtotal column for a waterfall chart series.", + "id": "WaterfallChartCustomSubtotal", "properties": { - "deleteDeveloperMetadata": { - "description": "A reply from deleting a developer metadata entry.", - "$ref": "DeleteDeveloperMetadataResponse" + "dataIsSubtotal": { + "description": "True if the data point at subtotal_index is the subtotal. If false,\nthe subtotal will be computed and appear after the data point.", + "type": "boolean" }, - "addFilterView": { - "description": "A reply from adding a filter view.", - "$ref": "AddFilterViewResponse" - }, - "addBanding": { - "description": "A reply from adding a banded range.", - "$ref": "AddBandingResponse" - }, - "addProtectedRange": { - "description": "A reply from adding a protected range.", - "$ref": "AddProtectedRangeResponse" - }, - "duplicateSheet": { - "$ref": "DuplicateSheetResponse", - "description": "A reply from duplicating a sheet." - }, - "updateEmbeddedObjectPosition": { - "$ref": "UpdateEmbeddedObjectPositionResponse", - "description": "A reply from updating an embedded object's position." - }, - "deleteConditionalFormatRule": { - "description": "A reply from deleting a conditional format rule.", - "$ref": "DeleteConditionalFormatRuleResponse" - }, - "duplicateFilterView": { - "$ref": "DuplicateFilterViewResponse", - "description": "A reply from duplicating a filter view." - }, - "addChart": { - "description": "A reply from adding a chart.", - "$ref": "AddChartResponse" - }, - "updateDeveloperMetadata": { - "description": "A reply from updating a developer metadata entry.", - "$ref": "UpdateDeveloperMetadataResponse" - }, - "findReplace": { - "description": "A reply from doing a find/replace.", - "$ref": "FindReplaceResponse" - }, - "addSheet": { - "description": "A reply from adding a sheet.", - "$ref": "AddSheetResponse" - }, - "updateConditionalFormatRule": { - "$ref": "UpdateConditionalFormatRuleResponse", - "description": "A reply from updating a conditional format rule." - }, - "createDeveloperMetadata": { - "description": "A reply from creating a developer metadata entry.", - "$ref": "CreateDeveloperMetadataResponse" - }, - "addNamedRange": { - "description": "A reply from adding a named range.", - "$ref": "AddNamedRangeResponse" - } - } - }, - "InsertRangeRequest": { - "description": "Inserts cells into a range, shifting the existing cells over or down.", - "type": "object", - "properties": { - "shiftDimension": { - "enumDescriptions": [ - "The default value, do not use.", - "Operates on the rows of a sheet.", - "Operates on the columns of a sheet." - ], - "enum": [ - "DIMENSION_UNSPECIFIED", - "ROWS", - "COLUMNS" - ], - "description": "The dimension which will be shifted when inserting cells.\nIf ROWS, existing cells will be shifted down.\nIf COLUMNS, existing cells will be shifted right.", + "label": { + "description": "A label for the subtotal column.", "type": "string" }, - "range": { - "$ref": "GridRange", - "description": "The range to insert new cells into." - } - }, - "id": "InsertRangeRequest" - }, - "TextFormatRun": { - "description": "A run of a text format. The format of this run continues until the start\nindex of the next run.\nWhen updating, all fields must be set.", - "type": "object", - "properties": { - "startIndex": { - "description": "The character index where this run starts.", + "subtotalIndex": { + "description": "The 0-based index of a data point within the series. If\ndata_is_subtotal is true, the data point at this index is the\nsubtotal. Otherwise, the subtotal appears after the data point with\nthis index. A series can have multiple subtotals at arbitrary indices,\nbut subtotals do not affect the indices of the data points. For\nexample, if a series has 3 data points, their indices will always be 0,\n1, and 2, regardless of how many subtotals exist on the series or what\ndata points they are associated with.", "format": "int32", "type": "integer" - }, - "format": { - "description": "The format of this run. Absent values inherit the cell's format.", - "$ref": "TextFormat" } }, - "id": "TextFormatRun" + "type": "object" }, - "EmbeddedChart": { - "id": "EmbeddedChart", - "description": "A chart embedded in a sheet.", - "type": "object", + "WaterfallChartDomain": { + "description": "The domain of a waterfall chart.", + "id": "WaterfallChartDomain", "properties": { - "chartId": { - "description": "The ID of the chart.", - "format": "int32", - "type": "integer" + "data": { + "$ref": "ChartData", + "description": "The data of the WaterfallChartDomain." }, - "position": { - "$ref": "EmbeddedObjectPosition", - "description": "The position of the chart." - }, - "spec": { - "$ref": "ChartSpec", - "description": "The specification of the chart." + "reversed": { + "description": "True to reverse the order of the domain values (horizontal axis).", + "type": "boolean" } - } + }, + "type": "object" }, - "AddNamedRangeResponse": { - "description": "The result of adding a named range.", - "type": "object", + "WaterfallChartSeries": { + "description": "A single series of data for a waterfall chart.", + "id": "WaterfallChartSeries", "properties": { - "namedRange": { - "$ref": "NamedRange", - "description": "The named range to add." + "customSubtotals": { + "description": "Custom subtotal columns appearing in this series. The order in which\nsubtotals are defined is not significant. Only one subtotal may be\ndefined for each data point.", + "items": { + "$ref": "WaterfallChartCustomSubtotal" + }, + "type": "array" + }, + "data": { + "$ref": "ChartData", + "description": "The data being visualized in this series." + }, + "hideTrailingSubtotal": { + "description": "True to hide the subtotal column from the end of the series. By default,\na subtotal column will appear at the end of each series. Setting this\nfield to true will hide that subtotal column for this series.", + "type": "boolean" + }, + "negativeColumnsStyle": { + "$ref": "WaterfallChartColumnStyle", + "description": "Styles for all columns in this series with negative values." + }, + "positiveColumnsStyle": { + "$ref": "WaterfallChartColumnStyle", + "description": "Styles for all columns in this series with positive values." + }, + "subtotalColumnsStyle": { + "$ref": "WaterfallChartColumnStyle", + "description": "Styles for all subtotal columns in this series." } }, - "id": "AddNamedRangeResponse" - } - }, - "icons": { - "x16": "http://www.google.com/images/icons/product/search-16.gif", - "x32": "http://www.google.com/images/icons/product/search-32.gif" - }, - "protocol": "rest", - "canonicalName": "Sheets", - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/drive.file": { - "description": "View and manage Google Drive files and folders that you have opened or created with this app" + "type": "object" + }, + "WaterfallChartSpec": { + "description": "A waterfall chart.", + "id": "WaterfallChartSpec", + "properties": { + "connectorLineStyle": { + "$ref": "LineStyle", + "description": "The line style for the connector lines." }, - "https://www.googleapis.com/auth/drive": { - "description": "View and manage the files in your Google Drive" + "domain": { + "$ref": "WaterfallChartDomain", + "description": "The domain data (horizontal axis) for the waterfall chart." }, - "https://www.googleapis.com/auth/drive.readonly": { - "description": "View the files in your Google Drive" + "firstValueIsTotal": { + "description": "True to interpret the first value as a total.", + "type": "boolean" }, - "https://www.googleapis.com/auth/spreadsheets.readonly": { - "description": "View your Google Spreadsheets" + "hideConnectorLines": { + "description": "True to hide connector lines between columns.", + "type": "boolean" }, - "https://www.googleapis.com/auth/spreadsheets": { - "description": "View and manage your spreadsheets in Google Drive" - } - } - } - }, - "rootUrl": "https://sheets.googleapis.com/", - "ownerDomain": "google.com", - "name": "sheets", - "batchPath": "batch", - "title": "Google Sheets API", - "ownerName": "Google", - "resources": { - "spreadsheets": { - "methods": { - "get": { - "scopes": [ - "https://www.googleapis.com/auth/drive", - "https://www.googleapis.com/auth/drive.file", - "https://www.googleapis.com/auth/drive.readonly", - "https://www.googleapis.com/auth/spreadsheets", - "https://www.googleapis.com/auth/spreadsheets.readonly" - ], - "parameters": { - "spreadsheetId": { - "description": "The spreadsheet to request.", - "required": true, - "type": "string", - "location": "path" - }, - "ranges": { - "description": "The ranges to retrieve from the spreadsheet.", - "type": "string", - "repeated": true, - "location": "query" - }, - "includeGridData": { - "description": "True if grid data should be returned.\nThis parameter is ignored if a field mask was set in the request.", - "type": "boolean", - "location": "query" - } + "series": { + "description": "The data this waterfall chart is visualizing.", + "items": { + "$ref": "WaterfallChartSeries" }, - "flatPath": "v4/spreadsheets/{spreadsheetId}", - "path": "v4/spreadsheets/{spreadsheetId}", - "id": "sheets.spreadsheets.get", - "description": "Returns the spreadsheet at the given ID.\nThe caller must specify the spreadsheet ID.\n\nBy default, data within grids will not be returned.\nYou can include grid data one of two ways:\n\n* Specify a field mask listing your desired fields using the `fields` URL\nparameter in HTTP\n\n* Set the includeGridData\nURL parameter to true. If a field mask is set, the `includeGridData`\nparameter is ignored\n\nFor large spreadsheets, it is recommended to retrieve only the specific\nfields of the spreadsheet that you want.\n\nTo retrieve only subsets of the spreadsheet, use the\nranges URL parameter.\nMultiple ranges can be specified. Limiting the range will\nreturn only the portions of the spreadsheet that intersect the requested\nranges. Ranges are specified using A1 notation.", - "response": { - "$ref": "Spreadsheet" - }, - "parameterOrder": [ - "spreadsheetId" - ], - "httpMethod": "GET" + "type": "array" }, - "getByDataFilter": { - "request": { - "$ref": "GetSpreadsheetByDataFilterRequest" - }, - "description": "Returns the spreadsheet at the given ID.\nThe caller must specify the spreadsheet ID.\n\nThis method differs from GetSpreadsheet in that it allows selecting\nwhich subsets of spreadsheet data to return by specifying a\ndataFilters parameter.\nMultiple DataFilters can be specified. Specifying one or\nmore data filters will return the portions of the spreadsheet that\nintersect ranges matched by any of the filters.\n\nBy default, data within grids will not be returned.\nYou can include grid data one of two ways:\n\n* Specify a field mask listing your desired fields using the `fields` URL\nparameter in HTTP\n\n* Set the includeGridData\nparameter to true. If a field mask is set, the `includeGridData`\nparameter is ignored\n\nFor large spreadsheets, it is recommended to retrieve only the specific\nfields of the spreadsheet that you want.", - "response": { - "$ref": "Spreadsheet" - }, - "parameterOrder": [ - "spreadsheetId" + "stackedType": { + "description": "The stacked type.", + "enum": [ + "WATERFALL_STACKED_TYPE_UNSPECIFIED", + "STACKED", + "SEQUENTIAL" ], - "httpMethod": "POST", - "parameters": { - "spreadsheetId": { - "location": "path", - "description": "The spreadsheet to request.", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/drive", - "https://www.googleapis.com/auth/drive.file", - "https://www.googleapis.com/auth/spreadsheets" + "enumDescriptions": [ + "Default value, do not use.", + "Values corresponding to the same domain (horizontal axis) value will be\nstacked vertically.", + "Series will spread out along the horizontal axis." ], - "flatPath": "v4/spreadsheets/{spreadsheetId}:getByDataFilter", - "path": "v4/spreadsheets/{spreadsheetId}:getByDataFilter", - "id": "sheets.spreadsheets.getByDataFilter" - }, - "create": { - "scopes": [ - "https://www.googleapis.com/auth/drive", - "https://www.googleapis.com/auth/drive.file", - "https://www.googleapis.com/auth/spreadsheets" - ], - "parameters": {}, - "flatPath": "v4/spreadsheets", - "path": "v4/spreadsheets", - "id": "sheets.spreadsheets.create", - "description": "Creates a spreadsheet, returning the newly created spreadsheet.", - "request": { - "$ref": "Spreadsheet" - }, - "response": { - "$ref": "Spreadsheet" - }, - "parameterOrder": [], - "httpMethod": "POST" - }, - "batchUpdate": { - "path": "v4/spreadsheets/{spreadsheetId}:batchUpdate", - "id": "sheets.spreadsheets.batchUpdate", - "description": "Applies one or more updates to the spreadsheet.\n\nEach request is validated before\nbeing applied. If any request is not valid then the entire request will\nfail and nothing will be applied.\n\nSome requests have replies to\ngive you some information about how\nthey are applied. The replies will mirror the requests. For example,\nif you applied 4 updates and the 3rd one had a reply, then the\nresponse will have 2 empty replies, the actual reply, and another empty\nreply, in that order.\n\nDue to the collaborative nature of spreadsheets, it is not guaranteed that\nthe spreadsheet will reflect exactly your changes after this completes,\nhowever it is guaranteed that the updates in the request will be\napplied together atomically. Your changes may be altered with respect to\ncollaborator changes. If there are no collaborators, the spreadsheet\nshould reflect your changes.", - "request": { - "$ref": "BatchUpdateSpreadsheetRequest" - }, - "response": { - "$ref": "BatchUpdateSpreadsheetResponse" - }, - "parameterOrder": [ - "spreadsheetId" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/drive", - "https://www.googleapis.com/auth/drive.file", - "https://www.googleapis.com/auth/spreadsheets" - ], - "parameters": { - "spreadsheetId": { - "location": "path", - "description": "The spreadsheet to apply the updates to.", - "required": true, - "type": "string" - } - }, - "flatPath": "v4/spreadsheets/{spreadsheetId}:batchUpdate" + "type": "string" } }, - "resources": { - "sheets": { - "methods": { - "copyTo": { - "description": "Copies a single sheet from a spreadsheet to another spreadsheet.\nReturns the properties of the newly created sheet.", - "request": { - "$ref": "CopySheetToAnotherSpreadsheetRequest" - }, - "response": { - "$ref": "SheetProperties" - }, - "parameterOrder": [ - "spreadsheetId", - "sheetId" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/drive", - "https://www.googleapis.com/auth/drive.file", - "https://www.googleapis.com/auth/spreadsheets" - ], - "parameters": { - "sheetId": { - "location": "path", - "description": "The ID of the sheet to copy.", - "format": "int32", - "required": true, - "type": "integer" - }, - "spreadsheetId": { - "location": "path", - "description": "The ID of the spreadsheet containing the sheet to copy.", - "required": true, - "type": "string" - } - }, - "flatPath": "v4/spreadsheets/{spreadsheetId}/sheets/{sheetId}:copyTo", - "path": "v4/spreadsheets/{spreadsheetId}/sheets/{sheetId}:copyTo", - "id": "sheets.spreadsheets.sheets.copyTo" - } - } - }, - "developerMetadata": { - "methods": { - "search": { - "scopes": [ - "https://www.googleapis.com/auth/drive", - "https://www.googleapis.com/auth/drive.file", - "https://www.googleapis.com/auth/spreadsheets" - ], - "parameters": { - "spreadsheetId": { - "location": "path", - "description": "The ID of the spreadsheet to retrieve metadata from.", - "required": true, - "type": "string" - } - }, - "flatPath": "v4/spreadsheets/{spreadsheetId}/developerMetadata:search", - "path": "v4/spreadsheets/{spreadsheetId}/developerMetadata:search", - "id": "sheets.spreadsheets.developerMetadata.search", - "description": "Returns all developer metadata matching the specified DataFilter.\nIf the provided DataFilter represents a DeveloperMetadataLookup object,\nthis will return all DeveloperMetadata entries selected by it. If the\nDataFilter represents a location in a spreadsheet, this will return all\ndeveloper metadata associated with locations intersecting that region.", - "request": { - "$ref": "SearchDeveloperMetadataRequest" - }, - "response": { - "$ref": "SearchDeveloperMetadataResponse" - }, - "parameterOrder": [ - "spreadsheetId" - ], - "httpMethod": "POST" - }, - "get": { - "response": { - "$ref": "DeveloperMetadata" - }, - "parameterOrder": [ - "spreadsheetId", - "metadataId" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/drive", - "https://www.googleapis.com/auth/drive.file", - "https://www.googleapis.com/auth/spreadsheets" - ], - "parameters": { - "spreadsheetId": { - "description": "The ID of the spreadsheet to retrieve metadata from.", - "required": true, - "type": "string", - "location": "path" - }, - "metadataId": { - "description": "The ID of the developer metadata to retrieve.", - "format": "int32", - "required": true, - "type": "integer", - "location": "path" - } - }, - "flatPath": "v4/spreadsheets/{spreadsheetId}/developerMetadata/{metadataId}", - "path": "v4/spreadsheets/{spreadsheetId}/developerMetadata/{metadataId}", - "id": "sheets.spreadsheets.developerMetadata.get", - "description": "Returns the developer metadata with the specified ID.\nThe caller must specify the spreadsheet ID and the developer metadata's\nunique metadataId." - } - } - }, - "values": { - "methods": { - "batchGet": { - "description": "Returns one or more ranges of values from a spreadsheet.\nThe caller must specify the spreadsheet ID and one or more ranges.", - "httpMethod": "GET", - "response": { - "$ref": "BatchGetValuesResponse" - }, - "parameterOrder": [ - "spreadsheetId" - ], - "parameters": { - "spreadsheetId": { - "location": "path", - "description": "The ID of the spreadsheet to retrieve data from.", - "required": true, - "type": "string" - }, - "valueRenderOption": { - "description": "How values should be represented in the output.\nThe default render option is ValueRenderOption.FORMATTED_VALUE.", - "type": "string", - "location": "query", - "enum": [ - "FORMATTED_VALUE", - "UNFORMATTED_VALUE", - "FORMULA" - ] - }, - "dateTimeRenderOption": { - "location": "query", - "enum": [ - "SERIAL_NUMBER", - "FORMATTED_STRING" - ], - "description": "How dates, times, and durations should be represented in the output.\nThis is ignored if value_render_option is\nFORMATTED_VALUE.\nThe default dateTime render option is [DateTimeRenderOption.SERIAL_NUMBER].", - "type": "string" - }, - "ranges": { - "repeated": true, - "location": "query", - "description": "The A1 notation of the values to retrieve.", - "type": "string" - }, - "majorDimension": { - "location": "query", - "enum": [ - "DIMENSION_UNSPECIFIED", - "ROWS", - "COLUMNS" - ], - "description": "The major dimension that results should use.\n\nFor example, if the spreadsheet data is: `A1=1,B1=2,A2=3,B2=4`,\nthen requesting `range=A1:B2,majorDimension=ROWS` will return\n`[[1,2],[3,4]]`,\nwhereas requesting `range=A1:B2,majorDimension=COLUMNS` will return\n`[[1,3],[2,4]]`.", - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/drive", - "https://www.googleapis.com/auth/drive.file", - "https://www.googleapis.com/auth/drive.readonly", - "https://www.googleapis.com/auth/spreadsheets", - "https://www.googleapis.com/auth/spreadsheets.readonly" - ], - "flatPath": "v4/spreadsheets/{spreadsheetId}/values:batchGet", - "id": "sheets.spreadsheets.values.batchGet", - "path": "v4/spreadsheets/{spreadsheetId}/values:batchGet" - }, - "clear": { - "response": { - "$ref": "ClearValuesResponse" - }, - "parameterOrder": [ - "spreadsheetId", - "range" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/drive", - "https://www.googleapis.com/auth/drive.file", - "https://www.googleapis.com/auth/spreadsheets" - ], - "parameters": { - "spreadsheetId": { - "description": "The ID of the spreadsheet to update.", - "required": true, - "type": "string", - "location": "path" - }, - "range": { - "location": "path", - "description": "The A1 notation of the values to clear.", - "required": true, - "type": "string" - } - }, - "flatPath": "v4/spreadsheets/{spreadsheetId}/values/{range}:clear", - "path": "v4/spreadsheets/{spreadsheetId}/values/{range}:clear", - "id": "sheets.spreadsheets.values.clear", - "description": "Clears values from a spreadsheet.\nThe caller must specify the spreadsheet ID and range.\nOnly values are cleared -- all other properties of the cell (such as\nformatting, data validation, etc..) are kept.", - "request": { - "$ref": "ClearValuesRequest" - } - }, - "batchClearByDataFilter": { - "parameters": { - "spreadsheetId": { - "location": "path", - "description": "The ID of the spreadsheet to update.", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/drive", - "https://www.googleapis.com/auth/drive.file", - "https://www.googleapis.com/auth/spreadsheets" - ], - "flatPath": "v4/spreadsheets/{spreadsheetId}/values:batchClearByDataFilter", - "id": "sheets.spreadsheets.values.batchClearByDataFilter", - "path": "v4/spreadsheets/{spreadsheetId}/values:batchClearByDataFilter", - "request": { - "$ref": "BatchClearValuesByDataFilterRequest" - }, - "description": "Clears one or more ranges of values from a spreadsheet.\nThe caller must specify the spreadsheet ID and one or more\nDataFilters. Ranges matching any of the specified data\nfilters will be cleared. Only values are cleared -- all other properties\nof the cell (such as formatting, data validation, etc..) are kept.", - "httpMethod": "POST", - "parameterOrder": [ - "spreadsheetId" - ], - "response": { - "$ref": "BatchClearValuesByDataFilterResponse" - } - }, - "append": { - "path": "v4/spreadsheets/{spreadsheetId}/values/{range}:append", - "id": "sheets.spreadsheets.values.append", - "request": { - "$ref": "ValueRange" - }, - "description": "Appends values to a spreadsheet. The input range is used to search for\nexisting data and find a \"table\" within that range. Values will be\nappended to the next row of the table, starting with the first column of\nthe table. See the\n[guide](/sheets/api/guides/values#appending_values)\nand\n[sample code](/sheets/api/samples/writing#append_values)\nfor specific details of how tables are detected and data is appended.\n\nThe caller must specify the spreadsheet ID, range, and\na valueInputOption. The `valueInputOption` only\ncontrols how the input data will be added to the sheet (column-wise or\nrow-wise), it does not influence what cell the data starts being written\nto.", - "response": { - "$ref": "AppendValuesResponse" - }, - "parameterOrder": [ - "spreadsheetId", - "range" - ], - "httpMethod": "POST", - "parameters": { - "spreadsheetId": { - "description": "The ID of the spreadsheet to update.", - "required": true, - "type": "string", - "location": "path" - }, - "responseValueRenderOption": { - "location": "query", - "enum": [ - "FORMATTED_VALUE", - "UNFORMATTED_VALUE", - "FORMULA" - ], - "description": "Determines how values in the response should be rendered.\nThe default render option is ValueRenderOption.FORMATTED_VALUE.", - "type": "string" - }, - "insertDataOption": { - "description": "How the input data should be inserted.", - "type": "string", - "location": "query", - "enum": [ - "OVERWRITE", - "INSERT_ROWS" - ] - }, - "valueInputOption": { - "location": "query", - "enum": [ - "INPUT_VALUE_OPTION_UNSPECIFIED", - "RAW", - "USER_ENTERED" - ], - "description": "How the input data should be interpreted.", - "type": "string" - }, - "responseDateTimeRenderOption": { - "location": "query", - "enum": [ - "SERIAL_NUMBER", - "FORMATTED_STRING" - ], - "description": "Determines how dates, times, and durations in the response should be\nrendered. This is ignored if response_value_render_option is\nFORMATTED_VALUE.\nThe default dateTime render option is [DateTimeRenderOption.SERIAL_NUMBER].", - "type": "string" - }, - "range": { - "location": "path", - "description": "The A1 notation of a range to search for a logical table of data.\nValues will be appended after the last row of the table.", - "required": true, - "type": "string" - }, - "includeValuesInResponse": { - "description": "Determines if the update response should include the values\nof the cells that were appended. By default, responses\ndo not include the updated values.", - "type": "boolean", - "location": "query" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/drive", - "https://www.googleapis.com/auth/drive.file", - "https://www.googleapis.com/auth/spreadsheets" - ], - "flatPath": "v4/spreadsheets/{spreadsheetId}/values/{range}:append" - }, - "batchGetByDataFilter": { - "parameters": { - "spreadsheetId": { - "location": "path", - "description": "The ID of the spreadsheet to retrieve data from.", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/drive", - "https://www.googleapis.com/auth/drive.file", - "https://www.googleapis.com/auth/spreadsheets" - ], - "flatPath": "v4/spreadsheets/{spreadsheetId}/values:batchGetByDataFilter", - "path": "v4/spreadsheets/{spreadsheetId}/values:batchGetByDataFilter", - "id": "sheets.spreadsheets.values.batchGetByDataFilter", - "request": { - "$ref": "BatchGetValuesByDataFilterRequest" - }, - "description": "Returns one or more ranges of values that match the specified data filters.\nThe caller must specify the spreadsheet ID and one or more\nDataFilters. Ranges that match any of the data filters in\nthe request will be returned.", - "response": { - "$ref": "BatchGetValuesByDataFilterResponse" - }, - "parameterOrder": [ - "spreadsheetId" - ], - "httpMethod": "POST" - }, - "batchClear": { - "description": "Clears one or more ranges of values from a spreadsheet.\nThe caller must specify the spreadsheet ID and one or more ranges.\nOnly values are cleared -- all other properties of the cell (such as\nformatting, data validation, etc..) are kept.", - "request": { - "$ref": "BatchClearValuesRequest" - }, - "response": { - "$ref": "BatchClearValuesResponse" - }, - "parameterOrder": [ - "spreadsheetId" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/drive", - "https://www.googleapis.com/auth/drive.file", - "https://www.googleapis.com/auth/spreadsheets" - ], - "parameters": { - "spreadsheetId": { - "location": "path", - "description": "The ID of the spreadsheet to update.", - "required": true, - "type": "string" - } - }, - "flatPath": "v4/spreadsheets/{spreadsheetId}/values:batchClear", - "path": "v4/spreadsheets/{spreadsheetId}/values:batchClear", - "id": "sheets.spreadsheets.values.batchClear" - }, - "get": { - "httpMethod": "GET", - "response": { - "$ref": "ValueRange" - }, - "parameterOrder": [ - "spreadsheetId", - "range" - ], - "parameters": { - "majorDimension": { - "location": "query", - "enum": [ - "DIMENSION_UNSPECIFIED", - "ROWS", - "COLUMNS" - ], - "description": "The major dimension that results should use.\n\nFor example, if the spreadsheet data is: `A1=1,B1=2,A2=3,B2=4`,\nthen requesting `range=A1:B2,majorDimension=ROWS` will return\n`[[1,2],[3,4]]`,\nwhereas requesting `range=A1:B2,majorDimension=COLUMNS` will return\n`[[1,3],[2,4]]`.", - "type": "string" - }, - "spreadsheetId": { - "location": "path", - "description": "The ID of the spreadsheet to retrieve data from.", - "required": true, - "type": "string" - }, - "range": { - "location": "path", - "description": "The A1 notation of the values to retrieve.", - "required": true, - "type": "string" - }, - "valueRenderOption": { - "description": "How values should be represented in the output.\nThe default render option is ValueRenderOption.FORMATTED_VALUE.", - "type": "string", - "location": "query", - "enum": [ - "FORMATTED_VALUE", - "UNFORMATTED_VALUE", - "FORMULA" - ] - }, - "dateTimeRenderOption": { - "description": "How dates, times, and durations should be represented in the output.\nThis is ignored if value_render_option is\nFORMATTED_VALUE.\nThe default dateTime render option is [DateTimeRenderOption.SERIAL_NUMBER].", - "type": "string", - "location": "query", - "enum": [ - "SERIAL_NUMBER", - "FORMATTED_STRING" - ] - } - }, - "scopes": [ - "https://www.googleapis.com/auth/drive", - "https://www.googleapis.com/auth/drive.file", - "https://www.googleapis.com/auth/drive.readonly", - "https://www.googleapis.com/auth/spreadsheets", - "https://www.googleapis.com/auth/spreadsheets.readonly" - ], - "flatPath": "v4/spreadsheets/{spreadsheetId}/values/{range}", - "id": "sheets.spreadsheets.values.get", - "path": "v4/spreadsheets/{spreadsheetId}/values/{range}", - "description": "Returns a range of values from a spreadsheet.\nThe caller must specify the spreadsheet ID and a range." - }, - "batchUpdateByDataFilter": { - "path": "v4/spreadsheets/{spreadsheetId}/values:batchUpdateByDataFilter", - "id": "sheets.spreadsheets.values.batchUpdateByDataFilter", - "request": { - "$ref": "BatchUpdateValuesByDataFilterRequest" - }, - "description": "Sets values in one or more ranges of a spreadsheet.\nThe caller must specify the spreadsheet ID,\na valueInputOption, and one or more\nDataFilterValueRanges.", - "response": { - "$ref": "BatchUpdateValuesByDataFilterResponse" - }, - "parameterOrder": [ - "spreadsheetId" - ], - "httpMethod": "POST", - "parameters": { - "spreadsheetId": { - "location": "path", - "description": "The ID of the spreadsheet to update.", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/drive", - "https://www.googleapis.com/auth/drive.file", - "https://www.googleapis.com/auth/spreadsheets" - ], - "flatPath": "v4/spreadsheets/{spreadsheetId}/values:batchUpdateByDataFilter" - }, - "update": { - "request": { - "$ref": "ValueRange" - }, - "description": "Sets values in a range of a spreadsheet.\nThe caller must specify the spreadsheet ID, range, and\na valueInputOption.", - "response": { - "$ref": "UpdateValuesResponse" - }, - "parameterOrder": [ - "spreadsheetId", - "range" - ], - "httpMethod": "PUT", - "parameters": { - "responseDateTimeRenderOption": { - "description": "Determines how dates, times, and durations in the response should be\nrendered. This is ignored if response_value_render_option is\nFORMATTED_VALUE.\nThe default dateTime render option is [DateTimeRenderOption.SERIAL_NUMBER].", - "type": "string", - "location": "query", - "enum": [ - "SERIAL_NUMBER", - "FORMATTED_STRING" - ] - }, - "range": { - "description": "The A1 notation of the values to update.", - "required": true, - "type": "string", - "location": "path" - }, - "includeValuesInResponse": { - "description": "Determines if the update response should include the values\nof the cells that were updated. By default, responses\ndo not include the updated values.\nIf the range to write was larger than than the range actually written,\nthe response will include all values in the requested range (excluding\ntrailing empty rows and columns).", - "type": "boolean", - "location": "query" - }, - "spreadsheetId": { - "location": "path", - "description": "The ID of the spreadsheet to update.", - "required": true, - "type": "string" - }, - "responseValueRenderOption": { - "description": "Determines how values in the response should be rendered.\nThe default render option is ValueRenderOption.FORMATTED_VALUE.", - "type": "string", - "location": "query", - "enum": [ - "FORMATTED_VALUE", - "UNFORMATTED_VALUE", - "FORMULA" - ] - }, - "valueInputOption": { - "location": "query", - "enum": [ - "INPUT_VALUE_OPTION_UNSPECIFIED", - "RAW", - "USER_ENTERED" - ], - "description": "How the input data should be interpreted.", - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/drive", - "https://www.googleapis.com/auth/drive.file", - "https://www.googleapis.com/auth/spreadsheets" - ], - "flatPath": "v4/spreadsheets/{spreadsheetId}/values/{range}", - "path": "v4/spreadsheets/{spreadsheetId}/values/{range}", - "id": "sheets.spreadsheets.values.update" - }, - "batchUpdate": { - "path": "v4/spreadsheets/{spreadsheetId}/values:batchUpdate", - "id": "sheets.spreadsheets.values.batchUpdate", - "description": "Sets values in one or more ranges of a spreadsheet.\nThe caller must specify the spreadsheet ID,\na valueInputOption, and one or more\nValueRanges.", - "request": { - "$ref": "BatchUpdateValuesRequest" - }, - "response": { - "$ref": "BatchUpdateValuesResponse" - }, - "parameterOrder": [ - "spreadsheetId" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/drive", - "https://www.googleapis.com/auth/drive.file", - "https://www.googleapis.com/auth/spreadsheets" - ], - "parameters": { - "spreadsheetId": { - "description": "The ID of the spreadsheet to update.", - "required": true, - "type": "string", - "location": "path" - } - }, - "flatPath": "v4/spreadsheets/{spreadsheetId}/values:batchUpdate" - } - } - } - } + "type": "object" } }, - "parameters": { - "prettyPrint": { - "location": "query", - "description": "Returns response with indentations and line breaks.", - "type": "boolean", - "default": "true" - }, - "uploadType": { - "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", - "type": "string", - "location": "query" - }, - "fields": { - "location": "query", - "description": "Selector specifying which fields to include in a partial response.", - "type": "string" - }, - "callback": { - "description": "JSONP", - "type": "string", - "location": "query" - }, - "$.xgafv": { - "description": "V1 error format.", - "type": "string", - "enumDescriptions": [ - "v1 error format", - "v2 error format" - ], - "location": "query", - "enum": [ - "1", - "2" - ] - }, - "alt": { - "type": "string", - "enumDescriptions": [ - "Responses with Content-Type of application/json", - "Media download with context-dependent Content-Type", - "Responses with Content-Type of application/x-protobuf" - ], - "location": "query", - "description": "Data format for response.", - "default": "json", - "enum": [ - "json", - "media", - "proto" - ] - }, - "key": { - "location": "query", - "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.", - "type": "string" - }, - "access_token": { - "location": "query", - "description": "OAuth access token.", - "type": "string" - }, - "quotaUser": { - "location": "query", - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", - "type": "string" - }, - "pp": { - "description": "Pretty-print response.", - "type": "boolean", - "default": "true", - "location": "query" - }, - "bearer_token": { - "description": "OAuth bearer token.", - "type": "string", - "location": "query" - }, - "oauth_token": { - "description": "OAuth 2.0 token for the current user.", - "type": "string", - "location": "query" - }, - "upload_protocol": { - "location": "query", - "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", - "type": "string" - } - }, - "version": "v4", - "baseUrl": "https://sheets.googleapis.com/", - "kind": "discovery#restDescription", - "description": "Reads and writes Google Sheets.", "servicePath": "", - "basePath": "", - "revision": "20180118", - "documentationLink": "https://developers.google.com/sheets/", - "id": "sheets:v4", - "discoveryVersion": "v1" -} + "title": "Google Sheets API", + "version": "v4", + "version_module": true +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/sheets/v4/sheets-gen.go b/vendor/google.golang.org/api/sheets/v4/sheets-gen.go index 69428b2fc..1a9761367 100644 --- a/vendor/google.golang.org/api/sheets/v4/sheets-gen.go +++ b/vendor/google.golang.org/api/sheets/v4/sheets-gen.go @@ -1114,7 +1114,7 @@ type BasicChartSpec struct { // StackedType: The stacked type for charts that support vertical // stacking. - // Applies to Area, Bar, Column, and Stepped Area charts. + // Applies to Area, Bar, Column, Combo, and Stepped Area charts. // // Possible values: // "BASIC_CHART_STACKED_TYPE_UNSPECIFIED" - Default value, do not use. @@ -1528,7 +1528,7 @@ type BatchUpdateSpreadsheetRequest struct { // ResponseIncludeGridData: True if grid data should be returned. // Meaningful only if - // if include_spreadsheet_response is 'true'. + // if include_spreadsheet_in_response is 'true'. // This parameter is ignored if a field mask was set in the request. ResponseIncludeGridData bool `json:"responseIncludeGridData,omitempty"` @@ -2895,6 +2895,9 @@ type ChartSpec struct { // This field is optional. TitleTextPosition *TextPosition `json:"titleTextPosition,omitempty"` + // TreemapChart: A treemap chart specification. + TreemapChart *TreemapChartSpec `json:"treemapChart,omitempty"` + // WaterfallChart: A waterfall chart specification. WaterfallChart *WaterfallChartSpec `json:"waterfallChart,omitempty"` @@ -5267,6 +5270,106 @@ func (s *HistogramChartSpec) UnmarshalJSON(data []byte) error { return nil } +// HistogramRule: Allows you to organize the numeric values in a source +// data column into +// buckets of a constant size. All values from HistogramRule.start +// to +// HistogramRule.end will be placed into groups of +// size +// HistogramRule.interval. In addition, all values +// below +// HistogramRule.start will be placed in one group, and all values +// above +// HistogramRule.end will be placed in another. +// Only +// HistogramRule.interval is required, though if HistogramRule.start +// and HistogramRule.end are both provided, HistogramRule.start must +// be less than HistogramRule.end. For example, a pivot table +// showing +// average purchase amount by age that has 50+ rows: +// +// +-----+-------------------+ +// | Age | AVERAGE of Amount | +// +-----+-------------------+ +// | 16 | $27.13 | +// | 17 | $5.24 | +// | 18 | $20.15 | +// ... +// +-----+-------------------+ +// could be turned into a pivot table that looks like the one below +// by +// applying a histogram group rule with a HistogramRule.start of 25, +// an HistogramRule.interval of 20, and an HistogramRule.end +// of 65. +// +// +-------------+-------------------+ +// | Grouped Age | AVERAGE of Amount | +// +-------------+-------------------+ +// | < 25 | $19.34 | +// | 25-45 | $31.43 | +// | 45-65 | $35.87 | +// | > 65 | $27.55 | +// +-------------+-------------------+ +// | Grand Total | $29.12 | +// +-------------+-------------------+ +type HistogramRule struct { + // End: Optional. The maximum value at which items will be placed into + // buckets + // of constant size. Values above end will be lumped into a single + // bucket. + End float64 `json:"end,omitempty"` + + // Interval: Required. The size of the buckets that will be created. + // Must be positive. + Interval float64 `json:"interval,omitempty"` + + // Start: Optional. The minimum value at which items will be placed into + // buckets + // of constant size. Values below start will be lumped into a single + // bucket. + Start float64 `json:"start,omitempty"` + + // ForceSendFields is a list of field names (e.g. "End") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "End") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *HistogramRule) MarshalJSON() ([]byte, error) { + type NoMethod HistogramRule + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +func (s *HistogramRule) UnmarshalJSON(data []byte) error { + type NoMethod HistogramRule + var s1 struct { + End gensupport.JSONFloat64 `json:"end"` + Interval gensupport.JSONFloat64 `json:"interval"` + Start gensupport.JSONFloat64 `json:"start"` + *NoMethod + } + s1.NoMethod = (*NoMethod)(s) + if err := json.Unmarshal(data, &s1); err != nil { + return err + } + s.End = float64(s1.End) + s.Interval = float64(s1.Interval) + s.Start = float64(s1.Start) + return nil +} + // HistogramSeries: A histogram series containing the series color and // data. type HistogramSeries struct { @@ -5561,6 +5664,106 @@ func (s *LineStyle) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// ManualRule: Allows you to manually organize the values in a source +// data column into +// buckets with names of your choosing. For example, a pivot table +// that +// aggregates population by state: +// +// +-------+-------------------+ +// | State | SUM of Population | +// +-------+-------------------+ +// | AK | 0.7 | +// | AL | 4.8 | +// | AR | 2.9 | +// ... +// +-------+-------------------+ +// could be turned into a pivot table that aggregates population by time +// zone +// by providing a list of groups (e.g. groupName = 'Central', +// items = ['AL', 'AR', 'IA', ...]) to a manual group rule. +// Note that a similar effect could be achieved by adding a time zone +// column +// to the source data and adjusting the pivot table. +// +// +-----------+-------------------+ +// | Time Zone | SUM of Population | +// +-----------+-------------------+ +// | Central | 106.3 | +// | Eastern | 151.9 | +// | Mountain | 17.4 | +// ... +// +-----------+-------------------+ +type ManualRule struct { + // Groups: The list of group names and the corresponding items from the + // source data + // that map to each group name. + Groups []*ManualRuleGroup `json:"groups,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Groups") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Groups") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *ManualRule) MarshalJSON() ([]byte, error) { + type NoMethod ManualRule + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// ManualRuleGroup: A group name and a list of items from the source +// data that should be placed +// in the group with this name. +type ManualRuleGroup struct { + // GroupName: The group name, which must be a string. Each group in a + // given + // ManualRule must have a unique group name. + GroupName *ExtendedValue `json:"groupName,omitempty"` + + // Items: The items in the source data that should be placed into this + // group. Each + // item may be a string, number, or boolean. Items may appear in at most + // one + // group within a given ManualRule. Items that do not appear in + // any + // group will appear on their own. + Items []*ExtendedValue `json:"items,omitempty"` + + // ForceSendFields is a list of field names (e.g. "GroupName") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "GroupName") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *ManualRuleGroup) MarshalJSON() ([]byte, error) { + type NoMethod ManualRuleGroup + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // MatchedDeveloperMetadata: A developer metadata entry and the data // filters specified in the original // request that matched it. @@ -6107,6 +6310,58 @@ func (s *PivotFilterCriteria) MarshalJSON() ([]byte, error) { // PivotGroup: A single grouping (either row or column) in a pivot // table. type PivotGroup struct { + // GroupRule: The group rule to apply to this row/column group. + GroupRule *PivotGroupRule `json:"groupRule,omitempty"` + + // Label: The labels to use for the row/column groups which can be + // customized. For + // example, in the following pivot table, the row label is `Region` + // (which + // could be renamed to `State`) and the column label is `Product` + // (which + // could be renamed `Item`). Pivot tables created before December 2017 + // do + // not have header labels. If you'd like to add header labels to an + // existing + // pivot table, please delete the existing pivot table and then create a + // new + // pivot table with same parameters. + // + // +--------------+---------+-------+ + // | SUM of Units | Product | | + // | Region | Pen | Paper | + // +--------------+---------+-------+ + // | New York | 345 | 98 | + // | Oregon | 234 | 123 | + // | Tennessee | 531 | 415 | + // +--------------+---------+-------+ + // | Grand Total | 1110 | 636 | + // +--------------+---------+-------+ + Label string `json:"label,omitempty"` + + // RepeatHeadings: True if the headings in this pivot group should be + // repeated. + // This is only valid for row groupings and will be ignored by + // columns. + // + // By default, we minimize repitition of headings by not showing + // higher + // level headings where they are the same. For example, even though + // the + // third row below corresponds to "Q1 Mar", "Q1" is not shown because + // it is redundant with previous rows. Setting repeat_headings to + // true + // would cause "Q1" to be repeated for "Feb" and "Mar". + // + // +--------------+ + // | Q1 | Jan | + // | | Feb | + // | | Mar | + // +--------+-----+ + // | Q1 Total | + // +--------------+ + RepeatHeadings bool `json:"repeatHeadings,omitempty"` + // ShowTotals: True if the pivot table should include the totals for // this grouping. ShowTotals bool `json:"showTotals,omitempty"` @@ -6136,7 +6391,7 @@ type PivotGroup struct { // ValueMetadata: Metadata about values in the grouping. ValueMetadata []*PivotGroupValueMetadata `json:"valueMetadata,omitempty"` - // ForceSendFields is a list of field names (e.g. "ShowTotals") to + // ForceSendFields is a list of field names (e.g. "GroupRule") to // unconditionally include in API requests. By default, fields with // empty values are omitted from API requests. However, any non-pointer, // non-interface field appearing in ForceSendFields will be sent to the @@ -6144,7 +6399,7 @@ type PivotGroup struct { // used to include empty fields in Patch requests. ForceSendFields []string `json:"-"` - // NullFields is a list of field names (e.g. "ShowTotals") to include in + // NullFields is a list of field names (e.g. "GroupRule") to include in // API requests with the JSON null value. By default, fields with empty // values are omitted from API requests. However, any field with an // empty value appearing in NullFields will be sent to the server as @@ -6159,6 +6414,45 @@ func (s *PivotGroup) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// PivotGroupRule: An optional setting on a PivotGroup that defines +// buckets for the values +// in the source data column rather than breaking out each individual +// value. +// Only one PivotGroup with a group rule may be added for each column +// in +// the source data, though on any given column you may add both +// a +// PivotGroup that has a rule and a PivotGroup that does not. +type PivotGroupRule struct { + // HistogramRule: A HistogramRule. + HistogramRule *HistogramRule `json:"histogramRule,omitempty"` + + // ManualRule: A ManualRule. + ManualRule *ManualRule `json:"manualRule,omitempty"` + + // ForceSendFields is a list of field names (e.g. "HistogramRule") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "HistogramRule") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *PivotGroupRule) MarshalJSON() ([]byte, error) { + type NoMethod PivotGroupRule + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // PivotGroupSortValueBucket: Information about which values in a pivot // group should be used for sorting. type PivotGroupSortValueBucket struct { @@ -6303,6 +6597,29 @@ func (s *PivotTable) MarshalJSON() ([]byte, error) { // PivotValue: The definition of how a value in a pivot table should be // calculated. type PivotValue struct { + // CalculatedDisplayType: If specified, indicates that pivot values + // should be displayed as + // the result of a calculation with another pivot value. For example, + // if + // calculated_display_type is specified as PERCENT_OF_GRAND_TOTAL, all + // the + // pivot values will be displayed as the percentage of the grand total. + // In + // the Sheets UI, this is referred to as "Show As" in the value section + // of a + // pivot table. + // + // Possible values: + // "PIVOT_VALUE_CALCULATED_DISPLAY_TYPE_UNSPECIFIED" - Default value, + // do not use. + // "PERCENT_OF_ROW_TOTAL" - Shows the pivot values as percentage of + // the row total values. + // "PERCENT_OF_COLUMN_TOTAL" - Shows the pivot values as percentage of + // the column total values. + // "PERCENT_OF_GRAND_TOTAL" - Shows the pivot values as percentage of + // the grand total values. + CalculatedDisplayType string `json:"calculatedDisplayType,omitempty"` + // Formula: A custom formula to calculate the value. The formula must // start // with an `=` character. @@ -6348,20 +6665,22 @@ type PivotValue struct { // Only valid if PivotValue.formula was set. SummarizeFunction string `json:"summarizeFunction,omitempty"` - // ForceSendFields is a list of field names (e.g. "Formula") to - // unconditionally include in API requests. By default, fields with - // empty values are omitted from API requests. However, any non-pointer, - // non-interface field appearing in ForceSendFields will be sent to the - // server regardless of whether the field is empty or not. This may be - // used to include empty fields in Patch requests. + // ForceSendFields is a list of field names (e.g. + // "CalculatedDisplayType") to unconditionally include in API requests. + // By default, fields with empty values are omitted from API requests. + // However, any non-pointer, non-interface field appearing in + // ForceSendFields will be sent to the server regardless of whether the + // field is empty or not. This may be used to include empty fields in + // Patch requests. ForceSendFields []string `json:"-"` - // NullFields is a list of field names (e.g. "Formula") to include in - // API requests with the JSON null value. By default, fields with empty - // values are omitted from API requests. However, any field with an - // empty value appearing in NullFields will be sent to the server as - // null. It is an error if a field in this list has a non-empty value. - // This may be used to include null fields in Patch requests. + // NullFields is a list of field names (e.g. "CalculatedDisplayType") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. NullFields []string `json:"-"` } @@ -7294,9 +7613,9 @@ type SpreadsheetProperties struct { // DefaultFormat: The default format of all cells in the // spreadsheet. - // CellData.effectiveFormat will not be set if the - // cell's format is equal to this default format. - // This field is read-only. + // CellData.effectiveFormat will not be set if + // the cell's format is equal to this default format. This field is + // read-only. DefaultFormat *CellFormat `json:"defaultFormat,omitempty"` // IterativeCalculationSettings: Determines whether and how circular @@ -7572,6 +7891,186 @@ func (s *TextToColumnsRequest) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// TreemapChartColorScale: A color scale for a treemap chart. +type TreemapChartColorScale struct { + // MaxValueColor: The background color for cells with a color value + // greater than or equal + // to maxValue. Defaults to #109618 if not + // specified. + MaxValueColor *Color `json:"maxValueColor,omitempty"` + + // MidValueColor: The background color for cells with a color value at + // the midpoint between + // minValue and + // maxValue. Defaults to #efe6dc if not + // specified. + MidValueColor *Color `json:"midValueColor,omitempty"` + + // MinValueColor: The background color for cells with a color value less + // than or equal to + // minValue. Defaults to #dc3912 if not + // specified. + MinValueColor *Color `json:"minValueColor,omitempty"` + + // NoDataColor: The background color for cells that have no color data + // associated with + // them. Defaults to #000000 if not specified. + NoDataColor *Color `json:"noDataColor,omitempty"` + + // ForceSendFields is a list of field names (e.g. "MaxValueColor") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "MaxValueColor") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *TreemapChartColorScale) MarshalJSON() ([]byte, error) { + type NoMethod TreemapChartColorScale + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// TreemapChartSpec: A Treemap chart. +type TreemapChartSpec struct { + // ColorData: The data that determines the background color of each + // treemap data cell. + // This field is optional. If not specified, size_data will be used + // to + // determine background colors. If specified, the data is expected to + // be + // numeric. color_scale will determine how the values in this data map + // to + // data cell background colors. + ColorData *ChartData `json:"colorData,omitempty"` + + // ColorScale: The color scale for data cells in the treemap chart. Data + // cells are + // assigned colors based on their color values. These color values come + // from + // color_data, or from size_data if color_data is not specified. + // Cells with color values less than or equal to min_value will + // have minValueColor as their + // background color. Cells with color values greater than or equal + // to + // max_value will have + // maxValueColor as their background + // color. Cells with color values between min_value and max_value + // will + // have background colors on a gradient between + // minValueColor and + // maxValueColor, the midpoint of + // the gradient being midValueColor. + // Cells with missing or non-numeric color values will have + // noDataColor as their background + // color. + ColorScale *TreemapChartColorScale `json:"colorScale,omitempty"` + + // HeaderColor: The background color for header cells. + HeaderColor *Color `json:"headerColor,omitempty"` + + // HideTooltips: True to hide tooltips. + HideTooltips bool `json:"hideTooltips,omitempty"` + + // HintedLevels: The number of additional data levels beyond the labeled + // levels to be shown + // on the treemap chart. These levels are not interactive and are + // shown + // without their labels. Defaults to 0 if not specified. + HintedLevels int64 `json:"hintedLevels,omitempty"` + + // Labels: The data that contains the treemap cell labels. + Labels *ChartData `json:"labels,omitempty"` + + // Levels: The number of data levels to show on the treemap chart. These + // levels are + // interactive and are shown with their labels. Defaults to 2 if + // not + // specified. + Levels int64 `json:"levels,omitempty"` + + // MaxValue: The maximum possible data value. Cells with values greater + // than this will + // have the same color as cells with this value. If not specified, + // defaults + // to the actual maximum value from color_data, or the maximum value + // from + // size_data if color_data is not specified. + MaxValue float64 `json:"maxValue,omitempty"` + + // MinValue: The minimum possible data value. Cells with values less + // than this will + // have the same color as cells with this value. If not specified, + // defaults + // to the actual minimum value from color_data, or the minimum value + // from + // size_data if color_data is not specified. + MinValue float64 `json:"minValue,omitempty"` + + // ParentLabels: The data the contains the treemap cells' parent labels. + ParentLabels *ChartData `json:"parentLabels,omitempty"` + + // SizeData: The data that determines the size of each treemap data + // cell. This data is + // expected to be numeric. The cells corresponding to non-numeric or + // missing + // data will not be rendered. If color_data is not specified, this + // data + // will be used to determine data cell background colors as well. + SizeData *ChartData `json:"sizeData,omitempty"` + + // TextFormat: The text format for all labels on the chart. + TextFormat *TextFormat `json:"textFormat,omitempty"` + + // ForceSendFields is a list of field names (e.g. "ColorData") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "ColorData") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *TreemapChartSpec) MarshalJSON() ([]byte, error) { + type NoMethod TreemapChartSpec + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +func (s *TreemapChartSpec) UnmarshalJSON(data []byte) error { + type NoMethod TreemapChartSpec + var s1 struct { + MaxValue gensupport.JSONFloat64 `json:"maxValue"` + MinValue gensupport.JSONFloat64 `json:"minValue"` + *NoMethod + } + s1.NoMethod = (*NoMethod)(s) + if err := json.Unmarshal(data, &s1); err != nil { + return err + } + s.MaxValue = float64(s1.MaxValue) + s.MinValue = float64(s1.MinValue) + return nil +} + // UnmergeCellsRequest: Unmerges cells in the given range. type UnmergeCellsRequest struct { // Range: The range within which all cells should be unmerged. diff --git a/vendor/google.golang.org/api/siteverification/v1/siteverification-api.json b/vendor/google.golang.org/api/siteverification/v1/siteverification-api.json index 566f04686..1137cb8f0 100644 --- a/vendor/google.golang.org/api/siteverification/v1/siteverification-api.json +++ b/vendor/google.golang.org/api/siteverification/v1/siteverification-api.json @@ -1,321 +1,321 @@ { - "kind": "discovery#restDescription", - "etag": "\"YWOzh2SDasdU84ArJnpYek-OMdg/91cCbhq1cUXIPKUTmb8zwBITGqo\"", - "discoveryVersion": "v1", - "id": "siteVerification:v1", - "name": "siteVerification", - "version": "v1", - "revision": "20161114", - "title": "Google Site Verification API", - "description": "Verifies ownership of websites or domains with Google.", - "ownerDomain": "google.com", - "ownerName": "Google", - "icons": { - "x16": "https://www.gstatic.com/images/branding/product/1x/googleg_16dp.png", - "x32": "https://www.gstatic.com/images/branding/product/1x/googleg_32dp.png" - }, - "documentationLink": "https://developers.google.com/site-verification/", - "protocol": "rest", - "baseUrl": "https://www.googleapis.com/siteVerification/v1/", - "basePath": "/siteVerification/v1/", - "rootUrl": "https://www.googleapis.com/", - "servicePath": "siteVerification/v1/", - "batchPath": "batch/siteVerification/v1", - "parameters": { - "alt": { - "type": "string", - "description": "Data format for the response.", - "default": "json", - "enum": [ - "json" - ], - "enumDescriptions": [ - "Responses with Content-Type of application/json" - ], - "location": "query" - }, - "fields": { - "type": "string", - "description": "Selector specifying which fields to include in a partial response.", - "location": "query" - }, - "key": { - "type": "string", - "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" - }, - "oauth_token": { - "type": "string", - "description": "OAuth 2.0 token for the current user.", - "location": "query" - }, - "prettyPrint": { - "type": "boolean", - "description": "Returns response with indentations and line breaks.", - "default": "false", - "location": "query" - }, - "quotaUser": { - "type": "string", - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", - "location": "query" - }, - "userIp": { - "type": "string", - "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", - "location": "query" - } - }, - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/siteverification": { - "description": "Manage the list of sites and domains you control" - }, - "https://www.googleapis.com/auth/siteverification.verify_only": { - "description": "Manage your new site verifications with Google" - } - } - } - }, - "schemas": { - "SiteVerificationWebResourceGettokenRequest": { - "id": "SiteVerificationWebResourceGettokenRequest", - "type": "object", - "properties": { - "site": { - "type": "object", - "description": "The site for which a verification token will be generated.", - "properties": { - "identifier": { - "type": "string", - "description": "The site identifier. If the type is set to SITE, the identifier is a URL. If the type is set to INET_DOMAIN, the site identifier is a domain name." - }, - "type": { - "type": "string", - "description": "The type of resource to be verified. Can be SITE or INET_DOMAIN (domain name)." + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/siteverification": { + "description": "Manage the list of sites and domains you control" + }, + "https://www.googleapis.com/auth/siteverification.verify_only": { + "description": "Manage your new site verifications with Google" + } } - } - }, - "verificationMethod": { - "type": "string", - "description": "The verification method that will be used to verify this site. For sites, 'FILE' or 'META' methods may be used. For domains, only 'DNS' may be used." } - } }, - "SiteVerificationWebResourceGettokenResponse": { - "id": "SiteVerificationWebResourceGettokenResponse", - "type": "object", - "properties": { - "method": { - "type": "string", - "description": "The verification method to use in conjunction with this token. For FILE, the token should be placed in the top-level directory of the site, stored inside a file of the same name. For META, the token should be placed in the HEAD tag of the default page that is loaded for the site. For DNS, the token should be placed in a TXT record of the domain." - }, - "token": { - "type": "string", - "description": "The verification token. The token must be placed appropriately in order for verification to succeed." - } - } + "basePath": "/siteVerification/v1/", + "baseUrl": "https://www.googleapis.com/siteVerification/v1/", + "batchPath": "batch/siteVerification/v1", + "description": "Verifies ownership of websites or domains with Google.", + "discoveryVersion": "v1", + "documentationLink": "https://developers.google.com/site-verification/", + "etag": "\"-iA1DTNe4s-I6JZXPt1t1Ypy8IU/91cCbhq1cUXIPKUTmb8zwBITGqo\"", + "icons": { + "x16": "https://www.gstatic.com/images/branding/product/1x/googleg_16dp.png", + "x32": "https://www.gstatic.com/images/branding/product/1x/googleg_32dp.png" }, - "SiteVerificationWebResourceListResponse": { - "id": "SiteVerificationWebResourceListResponse", - "type": "object", - "properties": { - "items": { - "type": "array", - "description": "The list of sites that are owned by the authenticated user.", - "items": { - "$ref": "SiteVerificationWebResourceResource" - } - } - } - }, - "SiteVerificationWebResourceResource": { - "id": "SiteVerificationWebResourceResource", - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "The string used to identify this site. This value should be used in the \"id\" portion of the REST URL for the Get, Update, and Delete operations." - }, - "owners": { - "type": "array", - "description": "The email addresses of all verified owners.", - "items": { + "id": "siteVerification:v1", + "kind": "discovery#restDescription", + "name": "siteVerification", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "alt": { + "default": "json", + "description": "Data format for the response.", + "enum": [ + "json" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json" + ], + "location": "query", "type": "string" - } }, - "site": { - "type": "object", - "description": "The address and type of a site that is verified or will be verified.", - "properties": { - "identifier": { - "type": "string", - "description": "The site identifier. If the type is set to SITE, the identifier is a URL. If the type is set to INET_DOMAIN, the site identifier is a domain name." + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "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.", + "location": "query", + "type": "string" + }, + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "prettyPrint": { + "default": "false", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", + "location": "query", + "type": "string" + }, + "userIp": { + "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", + "location": "query", + "type": "string" + } + }, + "protocol": "rest", + "resources": { + "webResource": { + "methods": { + "delete": { + "description": "Relinquish ownership of a website or domain.", + "httpMethod": "DELETE", + "id": "siteVerification.webResource.delete", + "parameterOrder": [ + "id" + ], + "parameters": { + "id": { + "description": "The id of a verified site or domain.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "webResource/{id}", + "scopes": [ + "https://www.googleapis.com/auth/siteverification" + ] + }, + "get": { + "description": "Get the most current data for a website or domain.", + "httpMethod": "GET", + "id": "siteVerification.webResource.get", + "parameterOrder": [ + "id" + ], + "parameters": { + "id": { + "description": "The id of a verified site or domain.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "webResource/{id}", + "response": { + "$ref": "SiteVerificationWebResourceResource" + }, + "scopes": [ + "https://www.googleapis.com/auth/siteverification" + ] + }, + "getToken": { + "description": "Get a verification token for placing on a website or domain.", + "httpMethod": "POST", + "id": "siteVerification.webResource.getToken", + "path": "token", + "request": { + "$ref": "SiteVerificationWebResourceGettokenRequest" + }, + "response": { + "$ref": "SiteVerificationWebResourceGettokenResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/siteverification", + "https://www.googleapis.com/auth/siteverification.verify_only" + ] + }, + "insert": { + "description": "Attempt verification of a website or domain.", + "httpMethod": "POST", + "id": "siteVerification.webResource.insert", + "parameterOrder": [ + "verificationMethod" + ], + "parameters": { + "verificationMethod": { + "description": "The method to use for verifying a site or domain.", + "location": "query", + "required": true, + "type": "string" + } + }, + "path": "webResource", + "request": { + "$ref": "SiteVerificationWebResourceResource" + }, + "response": { + "$ref": "SiteVerificationWebResourceResource" + }, + "scopes": [ + "https://www.googleapis.com/auth/siteverification", + "https://www.googleapis.com/auth/siteverification.verify_only" + ] + }, + "list": { + "description": "Get the list of your verified websites and domains.", + "httpMethod": "GET", + "id": "siteVerification.webResource.list", + "path": "webResource", + "response": { + "$ref": "SiteVerificationWebResourceListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/siteverification" + ] + }, + "patch": { + "description": "Modify the list of owners for your website or domain. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "siteVerification.webResource.patch", + "parameterOrder": [ + "id" + ], + "parameters": { + "id": { + "description": "The id of a verified site or domain.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "webResource/{id}", + "request": { + "$ref": "SiteVerificationWebResourceResource" + }, + "response": { + "$ref": "SiteVerificationWebResourceResource" + }, + "scopes": [ + "https://www.googleapis.com/auth/siteverification" + ] + }, + "update": { + "description": "Modify the list of owners for your website or domain.", + "httpMethod": "PUT", + "id": "siteVerification.webResource.update", + "parameterOrder": [ + "id" + ], + "parameters": { + "id": { + "description": "The id of a verified site or domain.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "webResource/{id}", + "request": { + "$ref": "SiteVerificationWebResourceResource" + }, + "response": { + "$ref": "SiteVerificationWebResourceResource" + }, + "scopes": [ + "https://www.googleapis.com/auth/siteverification" + ] + } + } + } + }, + "revision": "20161114", + "rootUrl": "https://www.googleapis.com/", + "schemas": { + "SiteVerificationWebResourceGettokenRequest": { + "id": "SiteVerificationWebResourceGettokenRequest", + "properties": { + "site": { + "description": "The site for which a verification token will be generated.", + "properties": { + "identifier": { + "description": "The site identifier. If the type is set to SITE, the identifier is a URL. If the type is set to INET_DOMAIN, the site identifier is a domain name.", + "type": "string" + }, + "type": { + "description": "The type of resource to be verified. Can be SITE or INET_DOMAIN (domain name).", + "type": "string" + } + }, + "type": "object" + }, + "verificationMethod": { + "description": "The verification method that will be used to verify this site. For sites, 'FILE' or 'META' methods may be used. For domains, only 'DNS' may be used.", + "type": "string" + } }, - "type": { - "type": "string", - "description": "The site type. Can be SITE or INET_DOMAIN (domain name)." - } - } + "type": "object" + }, + "SiteVerificationWebResourceGettokenResponse": { + "id": "SiteVerificationWebResourceGettokenResponse", + "properties": { + "method": { + "description": "The verification method to use in conjunction with this token. For FILE, the token should be placed in the top-level directory of the site, stored inside a file of the same name. For META, the token should be placed in the HEAD tag of the default page that is loaded for the site. For DNS, the token should be placed in a TXT record of the domain.", + "type": "string" + }, + "token": { + "description": "The verification token. The token must be placed appropriately in order for verification to succeed.", + "type": "string" + } + }, + "type": "object" + }, + "SiteVerificationWebResourceListResponse": { + "id": "SiteVerificationWebResourceListResponse", + "properties": { + "items": { + "description": "The list of sites that are owned by the authenticated user.", + "items": { + "$ref": "SiteVerificationWebResourceResource" + }, + "type": "array" + } + }, + "type": "object" + }, + "SiteVerificationWebResourceResource": { + "id": "SiteVerificationWebResourceResource", + "properties": { + "id": { + "description": "The string used to identify this site. This value should be used in the \"id\" portion of the REST URL for the Get, Update, and Delete operations.", + "type": "string" + }, + "owners": { + "description": "The email addresses of all verified owners.", + "items": { + "type": "string" + }, + "type": "array" + }, + "site": { + "description": "The address and type of a site that is verified or will be verified.", + "properties": { + "identifier": { + "description": "The site identifier. If the type is set to SITE, the identifier is a URL. If the type is set to INET_DOMAIN, the site identifier is a domain name.", + "type": "string" + }, + "type": { + "description": "The site type. Can be SITE or INET_DOMAIN (domain name).", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" } - } - } - }, - "resources": { - "webResource": { - "methods": { - "delete": { - "id": "siteVerification.webResource.delete", - "path": "webResource/{id}", - "httpMethod": "DELETE", - "description": "Relinquish ownership of a website or domain.", - "parameters": { - "id": { - "type": "string", - "description": "The id of a verified site or domain.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "id" - ], - "scopes": [ - "https://www.googleapis.com/auth/siteverification" - ] - }, - "get": { - "id": "siteVerification.webResource.get", - "path": "webResource/{id}", - "httpMethod": "GET", - "description": "Get the most current data for a website or domain.", - "parameters": { - "id": { - "type": "string", - "description": "The id of a verified site or domain.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "id" - ], - "response": { - "$ref": "SiteVerificationWebResourceResource" - }, - "scopes": [ - "https://www.googleapis.com/auth/siteverification" - ] - }, - "getToken": { - "id": "siteVerification.webResource.getToken", - "path": "token", - "httpMethod": "POST", - "description": "Get a verification token for placing on a website or domain.", - "request": { - "$ref": "SiteVerificationWebResourceGettokenRequest" - }, - "response": { - "$ref": "SiteVerificationWebResourceGettokenResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/siteverification", - "https://www.googleapis.com/auth/siteverification.verify_only" - ] - }, - "insert": { - "id": "siteVerification.webResource.insert", - "path": "webResource", - "httpMethod": "POST", - "description": "Attempt verification of a website or domain.", - "parameters": { - "verificationMethod": { - "type": "string", - "description": "The method to use for verifying a site or domain.", - "required": true, - "location": "query" - } - }, - "parameterOrder": [ - "verificationMethod" - ], - "request": { - "$ref": "SiteVerificationWebResourceResource" - }, - "response": { - "$ref": "SiteVerificationWebResourceResource" - }, - "scopes": [ - "https://www.googleapis.com/auth/siteverification", - "https://www.googleapis.com/auth/siteverification.verify_only" - ] - }, - "list": { - "id": "siteVerification.webResource.list", - "path": "webResource", - "httpMethod": "GET", - "description": "Get the list of your verified websites and domains.", - "response": { - "$ref": "SiteVerificationWebResourceListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/siteverification" - ] - }, - "patch": { - "id": "siteVerification.webResource.patch", - "path": "webResource/{id}", - "httpMethod": "PATCH", - "description": "Modify the list of owners for your website or domain. This method supports patch semantics.", - "parameters": { - "id": { - "type": "string", - "description": "The id of a verified site or domain.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "id" - ], - "request": { - "$ref": "SiteVerificationWebResourceResource" - }, - "response": { - "$ref": "SiteVerificationWebResourceResource" - }, - "scopes": [ - "https://www.googleapis.com/auth/siteverification" - ] - }, - "update": { - "id": "siteVerification.webResource.update", - "path": "webResource/{id}", - "httpMethod": "PUT", - "description": "Modify the list of owners for your website or domain.", - "parameters": { - "id": { - "type": "string", - "description": "The id of a verified site or domain.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "id" - ], - "request": { - "$ref": "SiteVerificationWebResourceResource" - }, - "response": { - "$ref": "SiteVerificationWebResourceResource" - }, - "scopes": [ - "https://www.googleapis.com/auth/siteverification" - ] - } - } - } - } -} + }, + "servicePath": "siteVerification/v1/", + "title": "Google Site Verification API", + "version": "v1" +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/slides/v1/slides-api.json b/vendor/google.golang.org/api/slides/v1/slides-api.json index 2e702f9fc..dab840b9d 100644 --- a/vendor/google.golang.org/api/slides/v1/slides-api.json +++ b/vendor/google.golang.org/api/slides/v1/slides-api.json @@ -1,511 +1,1152 @@ { - "revision": "20180117", - "documentationLink": "https://developers.google.com/slides/", - "id": "slides:v1", - "discoveryVersion": "v1", - "version_module": true, - "schemas": { - "UpdateImagePropertiesRequest": { - "description": "Update the properties of an Image.", - "type": "object", - "properties": { - "fields": { - "description": "The fields that should be updated.\n\nAt least one field must be specified. The root `imageProperties` is\nimplied and should not be specified. A single `\"*\"` can be used as\nshort-hand for listing every field.\n\nFor example to update the image outline color, set `fields` to\n`\"outline.outlineFill.solidFill.color\"`.\n\nTo reset a property to its default value, include its field name in the\nfield mask but leave the field itself unset.", - "format": "google-fieldmask", - "type": "string" + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/drive": { + "description": "View and manage the files in your Google Drive" }, - "imageProperties": { - "$ref": "ImageProperties", - "description": "The image properties to update." + "https://www.googleapis.com/auth/drive.file": { + "description": "View and manage Google Drive files and folders that you have opened or created with this app" }, - "objectId": { - "description": "The object ID of the image the updates are applied to.", - "type": "string" - } - }, - "id": "UpdateImagePropertiesRequest" - }, - "ParagraphStyle": { - "id": "ParagraphStyle", - "description": "Styles that apply to a whole paragraph.\n\nIf this text is contained in a shape with a parent placeholder, then these paragraph styles may be\ninherited from the parent. Which paragraph styles are inherited depend on the\nnesting level of lists:\n\n* A paragraph not in a list will inherit its paragraph style from the\n paragraph at the 0 nesting level of the list inside the parent placeholder.\n* A paragraph in a list will inherit its paragraph style from the paragraph\n at its corresponding nesting level of the list inside the parent\n placeholder.\n\nInherited paragraph styles are represented as unset fields in this message.", - "type": "object", - "properties": { - "spaceBelow": { - "$ref": "Dimension", - "description": "The amount of extra space above the paragraph. If unset, the value is\ninherited from the parent." + "https://www.googleapis.com/auth/drive.readonly": { + "description": "View the files in your Google Drive" }, - "direction": { - "description": "The text direction of this paragraph. If unset, the value defaults to\nLEFT_TO_RIGHT since\ntext direction is not inherited.", - "type": "string", - "enumDescriptions": [ - "The text direction is inherited from the parent.", - "The text goes from left to right.", - "The text goes from right to left." - ], - "enum": [ - "TEXT_DIRECTION_UNSPECIFIED", - "LEFT_TO_RIGHT", - "RIGHT_TO_LEFT" - ] + "https://www.googleapis.com/auth/presentations": { + "description": "View and manage your Google Slides presentations" }, - "indentEnd": { - "$ref": "Dimension", - "description": "The amount indentation for the paragraph on the side that corresponds to\nthe end of the text, based on the current text direction. If unset, the\nvalue is inherited from the parent." + "https://www.googleapis.com/auth/presentations.readonly": { + "description": "View your Google Slides presentations" }, - "spacingMode": { - "enum": [ - "SPACING_MODE_UNSPECIFIED", - "NEVER_COLLAPSE", - "COLLAPSE_LISTS" - ], - "description": "The spacing mode for the paragraph.", - "type": "string", - "enumDescriptions": [ - "The spacing mode is inherited from the parent.", - "Paragraph spacing is always rendered.", - "Paragraph spacing is skipped between list elements." - ] + "https://www.googleapis.com/auth/spreadsheets": { + "description": "View and manage your spreadsheets in Google Drive" }, - "indentStart": { - "$ref": "Dimension", - "description": "The amount indentation for the paragraph on the side that corresponds to\nthe start of the text, based on the current text direction. If unset, the\nvalue is inherited from the parent." - }, - "spaceAbove": { - "$ref": "Dimension", - "description": "The amount of extra space above the paragraph. If unset, the value is\ninherited from the parent." - }, - "indentFirstLine": { - "$ref": "Dimension", - "description": "The amount of indentation for the start of the first line of the paragraph.\nIf unset, the value is inherited from the parent." - }, - "lineSpacing": { - "description": "The amount of space between lines, as a percentage of normal, where normal\nis represented as 100.0. If unset, the value is inherited from the parent.", - "format": "float", - "type": "number" - }, - "alignment": { - "enumDescriptions": [ - "The paragraph alignment is inherited from the parent.", - "The paragraph is aligned to the start of the line. Left-aligned for\nLTR text, right-aligned otherwise.", - "The paragraph is centered.", - "The paragraph is aligned to the end of the line. Right-aligned for\nLTR text, left-aligned otherwise.", - "The paragraph is justified." - ], - "enum": [ - "ALIGNMENT_UNSPECIFIED", - "START", - "CENTER", - "END", - "JUSTIFIED" - ], - "description": "The text alignment for this paragraph.", - "type": "string" + "https://www.googleapis.com/auth/spreadsheets.readonly": { + "description": "View your Google Spreadsheets" } } + } + }, + "basePath": "", + "baseUrl": "https://slides.googleapis.com/", + "batchPath": "batch", + "canonicalName": "Slides", + "description": "An API for creating and editing Google Slides presentations.", + "discoveryVersion": "v1", + "documentationLink": "https://developers.google.com/slides/", + "icons": { + "x16": "http://www.google.com/images/icons/product/search-16.gif", + "x32": "http://www.google.com/images/icons/product/search-32.gif" + }, + "id": "slides:v1", + "kind": "discovery#restDescription", + "name": "slides", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "$.xgafv": { + "description": "V1 error format.", + "enum": [ + "1", + "2" + ], + "enumDescriptions": [ + "v1 error format", + "v2 error format" + ], + "location": "query", + "type": "string" }, - "UpdateTableRowPropertiesRequest": { - "description": "Updates the properties of a Table row.", - "type": "object", - "properties": { - "rowIndices": { - "description": "The list of zero-based indices specifying which rows to update. If no\nindices are provided, all rows in the table will be updated.", - "type": "array", - "items": { - "format": "int32", - "type": "integer" - } - }, - "fields": { - "description": "The fields that should be updated.\n\nAt least one field must be specified. The root `tableRowProperties` is\nimplied and should not be specified. A single `\"*\"` can be used as\nshort-hand for listing every field.\n\nFor example to update the minimum row height, set `fields` to\n`\"min_row_height\"`.\n\nIf '\"min_row_height\"' is included in the field mask but the property is\nleft unset, the minimum row height will default to 0.", - "format": "google-fieldmask", - "type": "string" - }, - "tableRowProperties": { - "$ref": "TableRowProperties", - "description": "The table row properties to update." - }, - "objectId": { - "description": "The object ID of the table.", - "type": "string" - } - }, - "id": "UpdateTableRowPropertiesRequest" + "access_token": { + "description": "OAuth access token.", + "location": "query", + "type": "string" }, - "ReplaceAllShapesWithSheetsChartResponse": { - "description": "The result of replacing shapes with a Google Sheets chart.", - "type": "object", - "properties": { - "occurrencesChanged": { - "description": "The number of shapes replaced with charts.", - "format": "int32", - "type": "integer" - } - }, - "id": "ReplaceAllShapesWithSheetsChartResponse" + "alt": { + "default": "json", + "description": "Data format for response.", + "enum": [ + "json", + "media", + "proto" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json", + "Media download with context-dependent Content-Type", + "Responses with Content-Type of application/x-protobuf" + ], + "location": "query", + "type": "string" }, - "TableCellProperties": { - "properties": { - "tableCellBackgroundFill": { - "$ref": "TableCellBackgroundFill", - "description": "The background fill of the table cell. The default fill matches the fill\nfor newly created table cells in the Slides editor." - }, - "contentAlignment": { - "enum": [ - "CONTENT_ALIGNMENT_UNSPECIFIED", - "CONTENT_ALIGNMENT_UNSUPPORTED", - "TOP", - "MIDDLE", - "BOTTOM" + "bearer_token": { + "description": "OAuth bearer token.", + "location": "query", + "type": "string" + }, + "callback": { + "description": "JSONP", + "location": "query", + "type": "string" + }, + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "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.", + "location": "query", + "type": "string" + }, + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "pp": { + "default": "true", + "description": "Pretty-print response.", + "location": "query", + "type": "boolean" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", + "location": "query", + "type": "string" + }, + "uploadType": { + "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", + "location": "query", + "type": "string" + }, + "upload_protocol": { + "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", + "location": "query", + "type": "string" + } + }, + "protocol": "rest", + "resources": { + "presentations": { + "methods": { + "batchUpdate": { + "description": "Applies one or more updates to the presentation.\n\nEach request is validated before\nbeing applied. If any request is not valid, then the entire request will\nfail and nothing will be applied.\n\nSome requests have replies to\ngive you some information about how they are applied. Other requests do\nnot need to return information; these each return an empty reply.\nThe order of replies matches that of the requests.\n\nFor example, suppose you call batchUpdate with four updates, and only the\nthird one returns information. The response would have two empty replies:\nthe reply to the third request, and another empty reply, in that order.\n\nBecause other users may be editing the presentation, the presentation\nmight not exactly reflect your changes: your changes may\nbe altered with respect to collaborator changes. If there are no\ncollaborators, the presentation should reflect your changes. In any case,\nthe updates in your request are guaranteed to be applied together\natomically.", + "flatPath": "v1/presentations/{presentationId}:batchUpdate", + "httpMethod": "POST", + "id": "slides.presentations.batchUpdate", + "parameterOrder": [ + "presentationId" ], - "description": "The alignment of the content in the table cell. The default alignment\nmatches the alignment for newly created table cells in the Slides editor.", - "type": "string", - "enumDescriptions": [ - "An unspecified content alignment. The content alignment is inherited from\nthe parent if it exists.", - "An unsupported content alignment.", - "An alignment that aligns the content to the top of the content holder.\nCorresponds to ECMA-376 ST_TextAnchoringType 't'.", - "An alignment that aligns the content to the middle of the content\nholder. Corresponds to ECMA-376 ST_TextAnchoringType 'ctr'.", - "An alignment that aligns the content to the bottom of the content\nholder. Corresponds to ECMA-376 ST_TextAnchoringType 'b'." + "parameters": { + "presentationId": { + "description": "The presentation to apply the updates to.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/presentations/{presentationId}:batchUpdate", + "request": { + "$ref": "BatchUpdatePresentationRequest" + }, + "response": { + "$ref": "BatchUpdatePresentationResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/drive", + "https://www.googleapis.com/auth/drive.file", + "https://www.googleapis.com/auth/drive.readonly", + "https://www.googleapis.com/auth/presentations", + "https://www.googleapis.com/auth/spreadsheets", + "https://www.googleapis.com/auth/spreadsheets.readonly" + ] + }, + "create": { + "description": "Creates a new presentation using the title given in the request. If a\npresentationId is provided, uses it as the ID of the new presentation.\nOtherwise, a new presentationId is generated.\nReturns the created presentation.", + "flatPath": "v1/presentations", + "httpMethod": "POST", + "id": "slides.presentations.create", + "parameterOrder": [], + "parameters": {}, + "path": "v1/presentations", + "request": { + "$ref": "Presentation" + }, + "response": { + "$ref": "Presentation" + }, + "scopes": [ + "https://www.googleapis.com/auth/drive", + "https://www.googleapis.com/auth/drive.file", + "https://www.googleapis.com/auth/presentations" + ] + }, + "get": { + "description": "Gets the latest version of the specified presentation.", + "flatPath": "v1/presentations/{presentationsId}", + "httpMethod": "GET", + "id": "slides.presentations.get", + "parameterOrder": [ + "presentationId" + ], + "parameters": { + "presentationId": { + "description": "The ID of the presentation to retrieve.", + "location": "path", + "pattern": "^[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/presentations/{+presentationId}", + "response": { + "$ref": "Presentation" + }, + "scopes": [ + "https://www.googleapis.com/auth/drive", + "https://www.googleapis.com/auth/drive.file", + "https://www.googleapis.com/auth/drive.readonly", + "https://www.googleapis.com/auth/presentations", + "https://www.googleapis.com/auth/presentations.readonly" ] } }, - "id": "TableCellProperties", - "description": "The properties of the TableCell.", - "type": "object" - }, - "Outline": { - "description": "The outline of a PageElement.\n\nIf these fields are unset, they may be inherited from a parent placeholder\nif it exists. If there is no parent, the fields will default to the value\nused for new page elements created in the Slides editor, which may depend on\nthe page element kind.", - "type": "object", - "properties": { - "weight": { - "description": "The thickness of the outline.", - "$ref": "Dimension" - }, - "dashStyle": { - "enumDescriptions": [ - "Unspecified dash style.", - "Solid line. Corresponds to ECMA-376 ST_PresetLineDashVal value 'solid'.\nThis is the default dash style.", - "Dotted line. Corresponds to ECMA-376 ST_PresetLineDashVal value 'dot'.", - "Dashed line. Corresponds to ECMA-376 ST_PresetLineDashVal value 'dash'.", - "Alternating dashes and dots. Corresponds to ECMA-376 ST_PresetLineDashVal\nvalue 'dashDot'.", - "Line with large dashes. Corresponds to ECMA-376 ST_PresetLineDashVal\nvalue 'lgDash'.", - "Alternating large dashes and dots. Corresponds to ECMA-376\nST_PresetLineDashVal value 'lgDashDot'." - ], - "enum": [ - "DASH_STYLE_UNSPECIFIED", - "SOLID", - "DOT", - "DASH", - "DASH_DOT", - "LONG_DASH", - "LONG_DASH_DOT" - ], - "description": "The dash style of the outline.", - "type": "string" - }, - "propertyState": { - "type": "string", - "enumDescriptions": [ - "If a property's state is RENDERED, then the element has the corresponding\nproperty when rendered on a page. If the element is a placeholder shape as\ndetermined by the placeholder\nfield, and it inherits from a placeholder shape, the corresponding field\nmay be unset, meaning that the property value is inherited from a parent\nplaceholder. If the element does not inherit, then the field will contain\nthe rendered value. This is the default value.", - "If a property's state is NOT_RENDERED, then the element does not have the\ncorresponding property when rendered on a page. However, the field may\nstill be set so it can be inherited by child shapes. To remove a property\nfrom a rendered element, set its property_state to NOT_RENDERED.", - "If a property's state is INHERIT, then the property state uses the value of\ncorresponding `property_state` field on the parent shape. Elements that do\nnot inherit will never have an INHERIT property state." - ], - "enum": [ - "RENDERED", - "NOT_RENDERED", - "INHERIT" - ], - "description": "The outline property state.\n\nUpdating the outline on a page element will implicitly update this field\nto `RENDERED`, unless another value is specified in the same request. To\nhave no outline on a page element, set this field to `NOT_RENDERED`. In\nthis case, any other outline fields set in the same request will be\nignored." - }, - "outlineFill": { - "$ref": "OutlineFill", - "description": "The fill of the outline." - } - }, - "id": "Outline" - }, - "RefreshSheetsChartRequest": { - "description": "Refreshes an embedded Google Sheets chart by replacing it with the latest\nversion of the chart from Google Sheets.\n\nNOTE: Refreshing charts requires at least one of the spreadsheets.readonly,\nspreadsheets, drive.readonly, or drive OAuth scopes.", - "type": "object", - "properties": { - "objectId": { - "description": "The object ID of the chart to refresh.", - "type": "string" - } - }, - "id": "RefreshSheetsChartRequest" - }, - "NotesProperties": { - "properties": { - "speakerNotesObjectId": { - "description": "The object ID of the shape on this notes page that contains the speaker\nnotes for the corresponding slide.\nThe actual shape may not always exist on the notes page. Inserting text\nusing this object ID will automatically create the shape. In this case, the\nactual shape may have different object ID. The `GetPresentation` or\n`GetPage` action will always return the latest object ID.", - "type": "string" - } - }, - "id": "NotesProperties", - "description": "The properties of Page that are only\nrelevant for pages with page_type NOTES.", - "type": "object" - }, - "ShapeProperties": { - "description": "The properties of a Shape.\n\nIf the shape is a placeholder shape as determined by the\nplaceholder field, then these\nproperties may be inherited from a parent placeholder shape.\nDetermining the rendered value of the property depends on the corresponding\nproperty_state field value.", - "type": "object", - "properties": { - "outline": { - "description": "The outline of the shape. If unset, the outline is inherited from a\nparent placeholder if it exists. If the shape has no parent, then the\ndefault outline depends on the shape type, matching the defaults for\nnew shapes created in the Slides editor.", - "$ref": "Outline" - }, - "shapeBackgroundFill": { - "$ref": "ShapeBackgroundFill", - "description": "The background fill of the shape. If unset, the background fill is\ninherited from a parent placeholder if it exists. If the shape has no\nparent, then the default background fill depends on the shape type,\nmatching the defaults for new shapes created in the Slides editor." - }, - "shadow": { - "description": "The shadow properties of the shape. If unset, the shadow is inherited from\na parent placeholder if it exists. If the shape has no parent, then the\ndefault shadow matches the defaults for new shapes created in the Slides\neditor. This property is read-only.", - "$ref": "Shadow" - }, - "contentAlignment": { - "enum": [ - "CONTENT_ALIGNMENT_UNSPECIFIED", - "CONTENT_ALIGNMENT_UNSUPPORTED", - "TOP", - "MIDDLE", - "BOTTOM" - ], - "description": "The alignment of the content in the shape. If unspecified,\nthe alignment is inherited from a parent placeholder if it exists. If the\nshape has no parent, the default alignment matches the alignment for new\nshapes created in the Slides editor.", - "type": "string", - "enumDescriptions": [ - "An unspecified content alignment. The content alignment is inherited from\nthe parent if it exists.", - "An unsupported content alignment.", - "An alignment that aligns the content to the top of the content holder.\nCorresponds to ECMA-376 ST_TextAnchoringType 't'.", - "An alignment that aligns the content to the middle of the content\nholder. Corresponds to ECMA-376 ST_TextAnchoringType 'ctr'.", - "An alignment that aligns the content to the bottom of the content\nholder. Corresponds to ECMA-376 ST_TextAnchoringType 'b'." - ] - }, - "link": { - "description": "The hyperlink destination of the shape. If unset, there is no link. Links\nare not inherited from parent placeholders.", - "$ref": "Link" - } - }, - "id": "ShapeProperties" - }, - "TableColumnProperties": { - "properties": { - "columnWidth": { - "$ref": "Dimension", - "description": "Width of a column." - } - }, - "id": "TableColumnProperties", - "description": "Properties of each column in a table.", - "type": "object" - }, - "TableRow": { - "description": "Properties and contents of each row in a table.", - "type": "object", - "properties": { - "tableRowProperties": { - "description": "Properties of the row.", - "$ref": "TableRowProperties" - }, - "rowHeight": { - "$ref": "Dimension", - "description": "Height of a row." - }, - "tableCells": { - "description": "Properties and contents of each cell.\n\nCells that span multiple columns are represented only once with a\ncolumn_span greater\nthan 1. As a result, the length of this collection does not always match\nthe number of columns of the entire table.", - "type": "array", - "items": { - "$ref": "TableCell" + "resources": { + "pages": { + "methods": { + "get": { + "description": "Gets the latest version of the specified page in the presentation.", + "flatPath": "v1/presentations/{presentationId}/pages/{pageObjectId}", + "httpMethod": "GET", + "id": "slides.presentations.pages.get", + "parameterOrder": [ + "presentationId", + "pageObjectId" + ], + "parameters": { + "pageObjectId": { + "description": "The object ID of the page to retrieve.", + "location": "path", + "required": true, + "type": "string" + }, + "presentationId": { + "description": "The ID of the presentation to retrieve.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/presentations/{presentationId}/pages/{pageObjectId}", + "response": { + "$ref": "Page" + }, + "scopes": [ + "https://www.googleapis.com/auth/drive", + "https://www.googleapis.com/auth/drive.file", + "https://www.googleapis.com/auth/drive.readonly", + "https://www.googleapis.com/auth/presentations", + "https://www.googleapis.com/auth/presentations.readonly" + ] + }, + "getThumbnail": { + "description": "Generates a thumbnail of the latest version of the specified page in the\npresentation and returns a URL to the thumbnail image.\n\nThis request counts as an [expensive read request](/slides/limits) for\nquota purposes.", + "flatPath": "v1/presentations/{presentationId}/pages/{pageObjectId}/thumbnail", + "httpMethod": "GET", + "id": "slides.presentations.pages.getThumbnail", + "parameterOrder": [ + "presentationId", + "pageObjectId" + ], + "parameters": { + "pageObjectId": { + "description": "The object ID of the page whose thumbnail to retrieve.", + "location": "path", + "required": true, + "type": "string" + }, + "presentationId": { + "description": "The ID of the presentation to retrieve.", + "location": "path", + "required": true, + "type": "string" + }, + "thumbnailProperties.mimeType": { + "description": "The optional mime type of the thumbnail image.\n\nIf you don't specify the mime type, the default mime type will be PNG.", + "enum": [ + "PNG" + ], + "location": "query", + "type": "string" + }, + "thumbnailProperties.thumbnailSize": { + "description": "The optional thumbnail image size.\n\nIf you don't specify the size, the server chooses a default size of the\nimage.", + "enum": [ + "THUMBNAIL_SIZE_UNSPECIFIED", + "LARGE" + ], + "location": "query", + "type": "string" + } + }, + "path": "v1/presentations/{presentationId}/pages/{pageObjectId}/thumbnail", + "response": { + "$ref": "Thumbnail" + }, + "scopes": [ + "https://www.googleapis.com/auth/drive", + "https://www.googleapis.com/auth/drive.file", + "https://www.googleapis.com/auth/drive.readonly", + "https://www.googleapis.com/auth/presentations", + "https://www.googleapis.com/auth/presentations.readonly" + ] + } } } - }, - "id": "TableRow" - }, - "UpdateTableCellPropertiesRequest": { - "description": "Update the properties of a TableCell.", - "type": "object", + } + } + }, + "revision": "20180312", + "rootUrl": "https://slides.googleapis.com/", + "schemas": { + "AffineTransform": { + "description": "AffineTransform uses a 3x3 matrix with an implied last row of [ 0 0 1 ]\nto transform source coordinates (x,y) into destination coordinates (x', y')\naccording to:\n\n x' x = shear_y scale_y translate_y \n 1 [ 1 ]\n\nAfter transformation,\n\n x' = scale_x * x + shear_x * y + translate_x;\n y' = scale_y * y + shear_y * x + translate_y;\n\nThis message is therefore composed of these six matrix elements.", + "id": "AffineTransform", "properties": { - "tableCellProperties": { - "$ref": "TableCellProperties", - "description": "The table cell properties to update." + "scaleX": { + "description": "The X coordinate scaling element.", + "format": "double", + "type": "number" }, - "fields": { - "description": "The fields that should be updated.\n\nAt least one field must be specified. The root `tableCellProperties` is\nimplied and should not be specified. A single `\"*\"` can be used as\nshort-hand for listing every field.\n\nFor example to update the table cell background solid fill color, set\n`fields` to `\"tableCellBackgroundFill.solidFill.color\"`.\n\nTo reset a property to its default value, include its field name in the\nfield mask but leave the field itself unset.", - "format": "google-fieldmask", + "scaleY": { + "description": "The Y coordinate scaling element.", + "format": "double", + "type": "number" + }, + "shearX": { + "description": "The X coordinate shearing element.", + "format": "double", + "type": "number" + }, + "shearY": { + "description": "The Y coordinate shearing element.", + "format": "double", + "type": "number" + }, + "translateX": { + "description": "The X coordinate translation element.", + "format": "double", + "type": "number" + }, + "translateY": { + "description": "The Y coordinate translation element.", + "format": "double", + "type": "number" + }, + "unit": { + "description": "The units for translate elements.", + "enum": [ + "UNIT_UNSPECIFIED", + "EMU", + "PT" + ], + "enumDescriptions": [ + "The units are unknown.", + "An English Metric Unit (EMU) is defined as 1/360,000 of a centimeter\nand thus there are 914,400 EMUs per inch, and 12,700 EMUs per point.", + "A point, 1/72 of an inch." + ], "type": "string" - }, - "objectId": { - "description": "The object ID of the table.", - "type": "string" - }, - "tableRange": { - "$ref": "TableRange", - "description": "The table range representing the subset of the table to which the updates\nare applied. If a table range is not specified, the updates will apply to\nthe entire table." } }, - "id": "UpdateTableCellPropertiesRequest" + "type": "object" }, - "CreateSlideRequest": { - "type": "object", + "AutoText": { + "description": "A TextElement kind that represents auto text.", + "id": "AutoText", "properties": { - "placeholderIdMappings": { - "description": "An optional list of object ID mappings from the placeholder(s) on the layout to the placeholder(s)\nthat will be created on the new slide from that specified layout. Can only\nbe used when `slide_layout_reference` is specified.", - "type": "array", - "items": { - "$ref": "LayoutPlaceholderIdMapping" - } - }, - "slideLayoutReference": { - "$ref": "LayoutReference", - "description": "Layout reference of the slide to be inserted, based on the *current\nmaster*, which is one of the following:\n\n- The master of the previous slide index.\n- The master of the first slide, if the insertion_index is zero.\n- The first master in the presentation, if there are no slides.\n\nIf the LayoutReference is not found in the current master, a 400 bad\nrequest error is returned.\n\nIf you don't specify a layout reference, then the new slide will use the\npredefined layout `BLANK`." - }, - "objectId": { - "description": "A user-supplied object ID.\n\nIf you specify an ID, it must be unique among all pages and page elements\nin the presentation. The ID must start with an alphanumeric character or an\nunderscore (matches regex `[a-zA-Z0-9_]`); remaining characters\nmay include those as well as a hyphen or colon (matches regex\n`[a-zA-Z0-9_-:]`).\nThe length of the ID must not be less than 5 or greater than 50.\n\nIf you don't specify an ID, a unique one is generated.", + "content": { + "description": "The rendered content of this auto text, if available.", "type": "string" }, - "insertionIndex": { - "description": "The optional zero-based index indicating where to insert the slides.\n\nIf you don't specify an index, the new slide is created at the end.", - "format": "int32", - "type": "integer" + "style": { + "$ref": "TextStyle", + "description": "The styling applied to this auto text." + }, + "type": { + "description": "The type of this auto text.", + "enum": [ + "TYPE_UNSPECIFIED", + "SLIDE_NUMBER" + ], + "enumDescriptions": [ + "An unspecified autotext type.", + "Type for autotext that represents the current slide number." + ], + "type": "string" } }, - "id": "CreateSlideRequest", - "description": "Creates a new slide." + "type": "object" }, "BatchUpdatePresentationRequest": { + "description": "Request message for PresentationsService.BatchUpdatePresentation.", + "id": "BatchUpdatePresentationRequest", "properties": { "requests": { "description": "A list of updates to apply to the presentation.", - "type": "array", "items": { "$ref": "Request" - } + }, + "type": "array" }, "writeControl": { "$ref": "WriteControl", "description": "Provides control over how write requests are executed." } }, - "id": "BatchUpdatePresentationRequest", - "description": "Request message for PresentationsService.BatchUpdatePresentation.", "type": "object" }, - "TableRowProperties": { - "description": "Properties of each row in a table.", - "type": "object", + "BatchUpdatePresentationResponse": { + "description": "Response message from a batch update.", + "id": "BatchUpdatePresentationResponse", "properties": { - "minRowHeight": { - "$ref": "Dimension", - "description": "Minimum height of the row. The row will be rendered in the Slides editor at\na height equal to or greater than this value in order to show all the text\nin the row's cell(s)." + "presentationId": { + "description": "The presentation the updates were applied to.", + "type": "string" + }, + "replies": { + "description": "The reply of the updates. This maps 1:1 with the updates, although\nreplies to some requests may be empty.", + "items": { + "$ref": "Response" + }, + "type": "array" + }, + "writeControl": { + "$ref": "WriteControl", + "description": "The updated write control after applying the request." } }, - "id": "TableRowProperties" + "type": "object" }, - "GroupObjectsResponse": { + "Bullet": { + "description": "Describes the bullet of a paragraph.", + "id": "Bullet", + "properties": { + "bulletStyle": { + "$ref": "TextStyle", + "description": "The paragraph specific text style applied to this bullet." + }, + "glyph": { + "description": "The rendered bullet glyph for this paragraph.", + "type": "string" + }, + "listId": { + "description": "The ID of the list this paragraph belongs to.", + "type": "string" + }, + "nestingLevel": { + "description": "The nesting level of this paragraph in the list.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "ColorScheme": { + "description": "The palette of predefined colors for a page.", + "id": "ColorScheme", + "properties": { + "colors": { + "description": "The ThemeColorType and corresponding concrete color pairs.", + "items": { + "$ref": "ThemeColorPair" + }, + "type": "array" + } + }, + "type": "object" + }, + "ColorStop": { + "description": "A color and position in a gradient band.", + "id": "ColorStop", + "properties": { + "alpha": { + "description": "The alpha value of this color in the gradient band. Defaults to 1.0,\nfully opaque.", + "format": "float", + "type": "number" + }, + "color": { + "$ref": "OpaqueColor", + "description": "The color of the gradient stop." + }, + "position": { + "description": "The relative position of the color stop in the gradient band measured\nin percentage. The value should be in the interval [0.0, 1.0].", + "format": "float", + "type": "number" + } + }, + "type": "object" + }, + "CreateImageRequest": { + "description": "Creates an image.", + "id": "CreateImageRequest", + "properties": { + "elementProperties": { + "$ref": "PageElementProperties", + "description": "The element properties for the image.\n\nWhen the aspect ratio of the provided size does not match the image aspect\nratio, the image is scaled and centered with respect to the size in order\nto maintain aspect ratio. The provided transform is applied after this\noperation.\n\nThe PageElementProperties.size property is\noptional. If you don't specify the size, the default size of the image is\nused.\n\nThe PageElementProperties.transform property is\noptional. If you don't specify a transform, the image will be placed at the\ntop left corner of the page." + }, + "objectId": { + "description": "A user-supplied object ID.\n\nIf you specify an ID, it must be unique among all pages and page elements\nin the presentation. The ID must start with an alphanumeric character or an\nunderscore (matches regex `[a-zA-Z0-9_]`); remaining characters\nmay include those as well as a hyphen or colon (matches regex\n`[a-zA-Z0-9_-:]`).\nThe length of the ID must not be less than 5 or greater than 50.\n\nIf you don't specify an ID, a unique one is generated.", + "type": "string" + }, + "url": { + "description": "The image URL.\n\nThe image is fetched once at insertion time and a copy is stored for\ndisplay inside the presentation. Images must be less than 50MB in size,\ncannot exceed 25 megapixels, and must be in one of PNG, JPEG, or GIF\nformat.\n\nThe provided URL can be at most 2 kB in length.", + "type": "string" + } + }, + "type": "object" + }, + "CreateImageResponse": { + "description": "The result of creating an image.", + "id": "CreateImageResponse", "properties": { "objectId": { - "description": "The object ID of the created group.", + "description": "The object ID of the created image.", "type": "string" } }, - "id": "GroupObjectsResponse", - "description": "The result of grouping objects.", "type": "object" }, - "TextContent": { - "description": "The general text content. The text must reside in a compatible shape (e.g.\ntext box or rectangle) or a table cell in a page.", - "type": "object", + "CreateLineRequest": { + "description": "Creates a line.", + "id": "CreateLineRequest", "properties": { - "lists": { - "additionalProperties": { - "$ref": "List" - }, - "description": "The bulleted lists contained in this text, keyed by list ID.", - "type": "object" + "elementProperties": { + "$ref": "PageElementProperties", + "description": "The element properties for the line." }, - "textElements": { - "description": "The text contents broken down into its component parts, including styling\ninformation. This property is read-only.", - "type": "array", - "items": { - "$ref": "TextElement" - } - } - }, - "id": "TextContent" - }, - "TableBorderCell": { - "properties": { - "location": { - "$ref": "TableCellLocation", - "description": "The location of the border within the border table." - }, - "tableBorderProperties": { - "$ref": "TableBorderProperties", - "description": "The border properties." - } - }, - "id": "TableBorderCell", - "description": "The properties of each border cell.", - "type": "object" - }, - "TableBorderProperties": { - "description": "The border styling properties of the\nTableBorderCell.", - "type": "object", - "properties": { - "tableBorderFill": { - "description": "The fill of the table border.", - "$ref": "TableBorderFill" - }, - "dashStyle": { - "enumDescriptions": [ - "Unspecified dash style.", - "Solid line. Corresponds to ECMA-376 ST_PresetLineDashVal value 'solid'.\nThis is the default dash style.", - "Dotted line. Corresponds to ECMA-376 ST_PresetLineDashVal value 'dot'.", - "Dashed line. Corresponds to ECMA-376 ST_PresetLineDashVal value 'dash'.", - "Alternating dashes and dots. Corresponds to ECMA-376 ST_PresetLineDashVal\nvalue 'dashDot'.", - "Line with large dashes. Corresponds to ECMA-376 ST_PresetLineDashVal\nvalue 'lgDash'.", - "Alternating large dashes and dots. Corresponds to ECMA-376\nST_PresetLineDashVal value 'lgDashDot'." - ], + "lineCategory": { + "description": "The category of line to be created.", "enum": [ - "DASH_STYLE_UNSPECIFIED", - "SOLID", - "DOT", - "DASH", - "DASH_DOT", - "LONG_DASH", - "LONG_DASH_DOT" + "STRAIGHT", + "BENT", + "CURVED" + ], + "enumDescriptions": [ + "Straight connectors, including straight connector 1. The is the default\ncategory when one is not specified.", + "Bent connectors, including bent connector 2 to 5.", + "Curved connectors, including curved connector 2 to 5." ], - "description": "The dash style of the border.", "type": "string" }, - "weight": { - "$ref": "Dimension", - "description": "The thickness of the border." + "objectId": { + "description": "A user-supplied object ID.\n\nIf you specify an ID, it must be unique among all pages and page elements\nin the presentation. The ID must start with an alphanumeric character or an\nunderscore (matches regex `[a-zA-Z0-9_]`); remaining characters\nmay include those as well as a hyphen or colon (matches regex\n`[a-zA-Z0-9_-:]`).\nThe length of the ID must not be less than 5 or greater than 50.\n\nIf you don't specify an ID, a unique one is generated.", + "type": "string" } }, - "id": "TableBorderProperties" + "type": "object" + }, + "CreateLineResponse": { + "description": "The result of creating a line.", + "id": "CreateLineResponse", + "properties": { + "objectId": { + "description": "The object ID of the created line.", + "type": "string" + } + }, + "type": "object" + }, + "CreateParagraphBulletsRequest": { + "description": "Creates bullets for all of the paragraphs that overlap with the given\ntext index range.\n\nThe nesting level of each paragraph will be determined by counting leading\ntabs in front of each paragraph. To avoid excess space between the bullet and\nthe corresponding paragraph, these leading tabs are removed by this request.\nThis may change the indices of parts of the text.\n\nIf the paragraph immediately before paragraphs being updated is in a list\nwith a matching preset, the paragraphs being updated are added to that\npreceding list.", + "id": "CreateParagraphBulletsRequest", + "properties": { + "bulletPreset": { + "description": "The kinds of bullet glyphs to be used. Defaults to the\n`BULLET_DISC_CIRCLE_SQUARE` preset.", + "enum": [ + "BULLET_DISC_CIRCLE_SQUARE", + "BULLET_DIAMONDX_ARROW3D_SQUARE", + "BULLET_CHECKBOX", + "BULLET_ARROW_DIAMOND_DISC", + "BULLET_STAR_CIRCLE_SQUARE", + "BULLET_ARROW3D_CIRCLE_SQUARE", + "BULLET_LEFTTRIANGLE_DIAMOND_DISC", + "BULLET_DIAMONDX_HOLLOWDIAMOND_SQUARE", + "BULLET_DIAMOND_CIRCLE_SQUARE", + "NUMBERED_DIGIT_ALPHA_ROMAN", + "NUMBERED_DIGIT_ALPHA_ROMAN_PARENS", + "NUMBERED_DIGIT_NESTED", + "NUMBERED_UPPERALPHA_ALPHA_ROMAN", + "NUMBERED_UPPERROMAN_UPPERALPHA_DIGIT", + "NUMBERED_ZERODIGIT_ALPHA_ROMAN" + ], + "enumDescriptions": [ + "A bulleted list with a `DISC`, `CIRCLE` and `SQUARE` bullet glyph for the\nfirst 3 list nesting levels.", + "A bulleted list with a `DIAMONDX`, `ARROW3D` and `SQUARE` bullet glyph for\nthe first 3 list nesting levels.", + "A bulleted list with `CHECKBOX` bullet glyphs for all list nesting levels.", + "A bulleted list with a `ARROW`, `DIAMOND` and `DISC` bullet glyph for\nthe first 3 list nesting levels.", + "A bulleted list with a `STAR`, `CIRCLE` and `SQUARE` bullet glyph for\nthe first 3 list nesting levels.", + "A bulleted list with a `ARROW3D`, `CIRCLE` and `SQUARE` bullet glyph for\nthe first 3 list nesting levels.", + "A bulleted list with a `LEFTTRIANGLE`, `DIAMOND` and `DISC` bullet glyph\nfor the first 3 list nesting levels.", + "A bulleted list with a `DIAMONDX`, `HOLLOWDIAMOND` and `SQUARE` bullet\nglyph for the first 3 list nesting levels.", + "A bulleted list with a `DIAMOND`, `CIRCLE` and `SQUARE` bullet glyph\nfor the first 3 list nesting levels.", + "A numbered list with `DIGIT`, `ALPHA` and `ROMAN` numeric glyphs for\nthe first 3 list nesting levels, followed by periods.", + "A numbered list with `DIGIT`, `ALPHA` and `ROMAN` numeric glyphs for\nthe first 3 list nesting levels, followed by parenthesis.", + "A numbered list with `DIGIT` numeric glyphs separated by periods, where\neach nesting level uses the previous nesting level's glyph as a prefix.\nFor example: '1.', '1.1.', '2.', '2.2.'.", + "A numbered list with `UPPERALPHA`, `ALPHA` and `ROMAN` numeric glyphs for\nthe first 3 list nesting levels, followed by periods.", + "A numbered list with `UPPERROMAN`, `UPPERALPHA` and `DIGIT` numeric glyphs\nfor the first 3 list nesting levels, followed by periods.", + "A numbered list with `ZERODIGIT`, `ALPHA` and `ROMAN` numeric glyphs for\nthe first 3 list nesting levels, followed by periods." + ], + "type": "string" + }, + "cellLocation": { + "$ref": "TableCellLocation", + "description": "The optional table cell location if the text to be modified is in a table\ncell. If present, the object_id must refer to a table." + }, + "objectId": { + "description": "The object ID of the shape or table containing the text to add bullets to.", + "type": "string" + }, + "textRange": { + "$ref": "Range", + "description": "The range of text to apply the bullet presets to, based on TextElement indexes." + } + }, + "type": "object" + }, + "CreateShapeRequest": { + "description": "Creates a new shape.", + "id": "CreateShapeRequest", + "properties": { + "elementProperties": { + "$ref": "PageElementProperties", + "description": "The element properties for the shape." + }, + "objectId": { + "description": "A user-supplied object ID.\n\nIf you specify an ID, it must be unique among all pages and page elements\nin the presentation. The ID must start with an alphanumeric character or an\nunderscore (matches regex `[a-zA-Z0-9_]`); remaining characters\nmay include those as well as a hyphen or colon (matches regex\n`[a-zA-Z0-9_-:]`).\nThe length of the ID must not be less than 5 or greater than 50.\nIf empty, a unique identifier will be generated.", + "type": "string" + }, + "shapeType": { + "description": "The shape type.", + "enum": [ + "TYPE_UNSPECIFIED", + "TEXT_BOX", + "RECTANGLE", + "ROUND_RECTANGLE", + "ELLIPSE", + "ARC", + "BENT_ARROW", + "BENT_UP_ARROW", + "BEVEL", + "BLOCK_ARC", + "BRACE_PAIR", + "BRACKET_PAIR", + "CAN", + "CHEVRON", + "CHORD", + "CLOUD", + "CORNER", + "CUBE", + "CURVED_DOWN_ARROW", + "CURVED_LEFT_ARROW", + "CURVED_RIGHT_ARROW", + "CURVED_UP_ARROW", + "DECAGON", + "DIAGONAL_STRIPE", + "DIAMOND", + "DODECAGON", + "DONUT", + "DOUBLE_WAVE", + "DOWN_ARROW", + "DOWN_ARROW_CALLOUT", + "FOLDED_CORNER", + "FRAME", + "HALF_FRAME", + "HEART", + "HEPTAGON", + "HEXAGON", + "HOME_PLATE", + "HORIZONTAL_SCROLL", + "IRREGULAR_SEAL_1", + "IRREGULAR_SEAL_2", + "LEFT_ARROW", + "LEFT_ARROW_CALLOUT", + "LEFT_BRACE", + "LEFT_BRACKET", + "LEFT_RIGHT_ARROW", + "LEFT_RIGHT_ARROW_CALLOUT", + "LEFT_RIGHT_UP_ARROW", + "LEFT_UP_ARROW", + "LIGHTNING_BOLT", + "MATH_DIVIDE", + "MATH_EQUAL", + "MATH_MINUS", + "MATH_MULTIPLY", + "MATH_NOT_EQUAL", + "MATH_PLUS", + "MOON", + "NO_SMOKING", + "NOTCHED_RIGHT_ARROW", + "OCTAGON", + "PARALLELOGRAM", + "PENTAGON", + "PIE", + "PLAQUE", + "PLUS", + "QUAD_ARROW", + "QUAD_ARROW_CALLOUT", + "RIBBON", + "RIBBON_2", + "RIGHT_ARROW", + "RIGHT_ARROW_CALLOUT", + "RIGHT_BRACE", + "RIGHT_BRACKET", + "ROUND_1_RECTANGLE", + "ROUND_2_DIAGONAL_RECTANGLE", + "ROUND_2_SAME_RECTANGLE", + "RIGHT_TRIANGLE", + "SMILEY_FACE", + "SNIP_1_RECTANGLE", + "SNIP_2_DIAGONAL_RECTANGLE", + "SNIP_2_SAME_RECTANGLE", + "SNIP_ROUND_RECTANGLE", + "STAR_10", + "STAR_12", + "STAR_16", + "STAR_24", + "STAR_32", + "STAR_4", + "STAR_5", + "STAR_6", + "STAR_7", + "STAR_8", + "STRIPED_RIGHT_ARROW", + "SUN", + "TRAPEZOID", + "TRIANGLE", + "UP_ARROW", + "UP_ARROW_CALLOUT", + "UP_DOWN_ARROW", + "UTURN_ARROW", + "VERTICAL_SCROLL", + "WAVE", + "WEDGE_ELLIPSE_CALLOUT", + "WEDGE_RECTANGLE_CALLOUT", + "WEDGE_ROUND_RECTANGLE_CALLOUT", + "FLOW_CHART_ALTERNATE_PROCESS", + "FLOW_CHART_COLLATE", + "FLOW_CHART_CONNECTOR", + "FLOW_CHART_DECISION", + "FLOW_CHART_DELAY", + "FLOW_CHART_DISPLAY", + "FLOW_CHART_DOCUMENT", + "FLOW_CHART_EXTRACT", + "FLOW_CHART_INPUT_OUTPUT", + "FLOW_CHART_INTERNAL_STORAGE", + "FLOW_CHART_MAGNETIC_DISK", + "FLOW_CHART_MAGNETIC_DRUM", + "FLOW_CHART_MAGNETIC_TAPE", + "FLOW_CHART_MANUAL_INPUT", + "FLOW_CHART_MANUAL_OPERATION", + "FLOW_CHART_MERGE", + "FLOW_CHART_MULTIDOCUMENT", + "FLOW_CHART_OFFLINE_STORAGE", + "FLOW_CHART_OFFPAGE_CONNECTOR", + "FLOW_CHART_ONLINE_STORAGE", + "FLOW_CHART_OR", + "FLOW_CHART_PREDEFINED_PROCESS", + "FLOW_CHART_PREPARATION", + "FLOW_CHART_PROCESS", + "FLOW_CHART_PUNCHED_CARD", + "FLOW_CHART_PUNCHED_TAPE", + "FLOW_CHART_SORT", + "FLOW_CHART_SUMMING_JUNCTION", + "FLOW_CHART_TERMINATOR", + "ARROW_EAST", + "ARROW_NORTH_EAST", + "ARROW_NORTH", + "SPEECH", + "STARBURST", + "TEARDROP", + "ELLIPSE_RIBBON", + "ELLIPSE_RIBBON_2", + "CLOUD_CALLOUT", + "CUSTOM" + ], + "enumDescriptions": [ + "The shape type that is not predefined.", + "Text box shape.", + "Rectangle shape. Corresponds to ECMA-376 ST_ShapeType 'rect'.", + "Round corner rectangle shape. Corresponds to ECMA-376 ST_ShapeType\n'roundRect'", + "Ellipse shape. Corresponds to ECMA-376 ST_ShapeType 'ellipse'", + "Curved arc shape. Corresponds to ECMA-376 ST_ShapeType 'arc'", + "Bent arrow shape. Corresponds to ECMA-376 ST_ShapeType 'bentArrow'", + "Bent up arrow shape. Corresponds to ECMA-376 ST_ShapeType 'bentUpArrow'", + "Bevel shape. Corresponds to ECMA-376 ST_ShapeType 'bevel'", + "Block arc shape. Corresponds to ECMA-376 ST_ShapeType 'blockArc'", + "Brace pair shape. Corresponds to ECMA-376 ST_ShapeType 'bracePair'", + "Bracket pair shape. Corresponds to ECMA-376 ST_ShapeType 'bracketPair'", + "Can shape. Corresponds to ECMA-376 ST_ShapeType 'can'", + "Chevron shape. Corresponds to ECMA-376 ST_ShapeType 'chevron'", + "Chord shape. Corresponds to ECMA-376 ST_ShapeType 'chord'", + "Cloud shape. Corresponds to ECMA-376 ST_ShapeType 'cloud'", + "Corner shape. Corresponds to ECMA-376 ST_ShapeType 'corner'", + "Cube shape. Corresponds to ECMA-376 ST_ShapeType 'cube'", + "Curved down arrow shape. Corresponds to ECMA-376 ST_ShapeType\n'curvedDownArrow'", + "Curved left arrow shape. Corresponds to ECMA-376 ST_ShapeType\n'curvedLeftArrow'", + "Curved right arrow shape. Corresponds to ECMA-376 ST_ShapeType\n'curvedRightArrow'", + "Curved up arrow shape. Corresponds to ECMA-376 ST_ShapeType\n'curvedUpArrow'", + "Decagon shape. Corresponds to ECMA-376 ST_ShapeType 'decagon'", + "Diagonal stripe shape. Corresponds to ECMA-376 ST_ShapeType 'diagStripe'", + "Diamond shape. Corresponds to ECMA-376 ST_ShapeType 'diamond'", + "Dodecagon shape. Corresponds to ECMA-376 ST_ShapeType 'dodecagon'", + "Donut shape. Corresponds to ECMA-376 ST_ShapeType 'donut'", + "Double wave shape. Corresponds to ECMA-376 ST_ShapeType 'doubleWave'", + "Down arrow shape. Corresponds to ECMA-376 ST_ShapeType 'downArrow'", + "Callout down arrow shape. Corresponds to ECMA-376 ST_ShapeType\n'downArrowCallout'", + "Folded corner shape. Corresponds to ECMA-376 ST_ShapeType 'foldedCorner'", + "Frame shape. Corresponds to ECMA-376 ST_ShapeType 'frame'", + "Half frame shape. Corresponds to ECMA-376 ST_ShapeType 'halfFrame'", + "Heart shape. Corresponds to ECMA-376 ST_ShapeType 'heart'", + "Heptagon shape. Corresponds to ECMA-376 ST_ShapeType 'heptagon'", + "Hexagon shape. Corresponds to ECMA-376 ST_ShapeType 'hexagon'", + "Home plate shape. Corresponds to ECMA-376 ST_ShapeType 'homePlate'", + "Horizontal scroll shape. Corresponds to ECMA-376 ST_ShapeType\n'horizontalScroll'", + "Irregular seal 1 shape. Corresponds to ECMA-376 ST_ShapeType\n'irregularSeal1'", + "Irregular seal 2 shape. Corresponds to ECMA-376 ST_ShapeType\n'irregularSeal2'", + "Left arrow shape. Corresponds to ECMA-376 ST_ShapeType 'leftArrow'", + "Callout left arrow shape. Corresponds to ECMA-376 ST_ShapeType\n'leftArrowCallout'", + "Left brace shape. Corresponds to ECMA-376 ST_ShapeType 'leftBrace'", + "Left bracket shape. Corresponds to ECMA-376 ST_ShapeType 'leftBracket'", + "Left right arrow shape. Corresponds to ECMA-376 ST_ShapeType\n'leftRightArrow'", + "Callout left right arrow shape. Corresponds to ECMA-376 ST_ShapeType\n'leftRightArrowCallout'", + "Left right up arrow shape. Corresponds to ECMA-376 ST_ShapeType\n'leftRightUpArrow'", + "Left up arrow shape. Corresponds to ECMA-376 ST_ShapeType 'leftUpArrow'", + "Lightning bolt shape. Corresponds to ECMA-376 ST_ShapeType\n'lightningBolt'", + "Divide math shape. Corresponds to ECMA-376 ST_ShapeType 'mathDivide'", + "Equal math shape. Corresponds to ECMA-376 ST_ShapeType 'mathEqual'", + "Minus math shape. Corresponds to ECMA-376 ST_ShapeType 'mathMinus'", + "Multiply math shape. Corresponds to ECMA-376 ST_ShapeType 'mathMultiply'", + "Not equal math shape. Corresponds to ECMA-376 ST_ShapeType 'mathNotEqual'", + "Plus math shape. Corresponds to ECMA-376 ST_ShapeType 'mathPlus'", + "Moon shape. Corresponds to ECMA-376 ST_ShapeType 'moon'", + "No smoking shape. Corresponds to ECMA-376 ST_ShapeType 'noSmoking'", + "Notched right arrow shape. Corresponds to ECMA-376 ST_ShapeType\n'notchedRightArrow'", + "Octagon shape. Corresponds to ECMA-376 ST_ShapeType 'octagon'", + "Parallelogram shape. Corresponds to ECMA-376 ST_ShapeType 'parallelogram'", + "Pentagon shape. Corresponds to ECMA-376 ST_ShapeType 'pentagon'", + "Pie shape. Corresponds to ECMA-376 ST_ShapeType 'pie'", + "Plaque shape. Corresponds to ECMA-376 ST_ShapeType 'plaque'", + "Plus shape. Corresponds to ECMA-376 ST_ShapeType 'plus'", + "Quad-arrow shape. Corresponds to ECMA-376 ST_ShapeType 'quadArrow'", + "Callout quad-arrow shape. Corresponds to ECMA-376 ST_ShapeType\n'quadArrowCallout'", + "Ribbon shape. Corresponds to ECMA-376 ST_ShapeType 'ribbon'", + "Ribbon 2 shape. Corresponds to ECMA-376 ST_ShapeType 'ribbon2'", + "Right arrow shape. Corresponds to ECMA-376 ST_ShapeType 'rightArrow'", + "Callout right arrow shape. Corresponds to ECMA-376 ST_ShapeType\n'rightArrowCallout'", + "Right brace shape. Corresponds to ECMA-376 ST_ShapeType 'rightBrace'", + "Right bracket shape. Corresponds to ECMA-376 ST_ShapeType 'rightBracket'", + "One round corner rectangle shape. Corresponds to ECMA-376 ST_ShapeType\n'round1Rect'", + "Two diagonal round corner rectangle shape. Corresponds to ECMA-376\nST_ShapeType 'round2DiagRect'", + "Two same-side round corner rectangle shape. Corresponds to ECMA-376\nST_ShapeType 'round2SameRect'", + "Right triangle shape. Corresponds to ECMA-376 ST_ShapeType 'rtTriangle'", + "Smiley face shape. Corresponds to ECMA-376 ST_ShapeType 'smileyFace'", + "One snip corner rectangle shape. Corresponds to ECMA-376 ST_ShapeType\n'snip1Rect'", + "Two diagonal snip corner rectangle shape. Corresponds to ECMA-376\nST_ShapeType 'snip2DiagRect'", + "Two same-side snip corner rectangle shape. Corresponds to ECMA-376\nST_ShapeType 'snip2SameRect'", + "One snip one round corner rectangle shape. Corresponds to ECMA-376\nST_ShapeType 'snipRoundRect'", + "Ten pointed star shape. Corresponds to ECMA-376 ST_ShapeType 'star10'", + "Twelve pointed star shape. Corresponds to ECMA-376 ST_ShapeType 'star12'", + "Sixteen pointed star shape. Corresponds to ECMA-376 ST_ShapeType 'star16'", + "Twenty four pointed star shape. Corresponds to ECMA-376 ST_ShapeType\n'star24'", + "Thirty two pointed star shape. Corresponds to ECMA-376 ST_ShapeType\n'star32'", + "Four pointed star shape. Corresponds to ECMA-376 ST_ShapeType 'star4'", + "Five pointed star shape. Corresponds to ECMA-376 ST_ShapeType 'star5'", + "Six pointed star shape. Corresponds to ECMA-376 ST_ShapeType 'star6'", + "Seven pointed star shape. Corresponds to ECMA-376 ST_ShapeType 'star7'", + "Eight pointed star shape. Corresponds to ECMA-376 ST_ShapeType 'star8'", + "Striped right arrow shape. Corresponds to ECMA-376 ST_ShapeType\n'stripedRightArrow'", + "Sun shape. Corresponds to ECMA-376 ST_ShapeType 'sun'", + "Trapezoid shape. Corresponds to ECMA-376 ST_ShapeType 'trapezoid'", + "Triangle shape. Corresponds to ECMA-376 ST_ShapeType 'triangle'", + "Up arrow shape. Corresponds to ECMA-376 ST_ShapeType 'upArrow'", + "Callout up arrow shape. Corresponds to ECMA-376 ST_ShapeType\n'upArrowCallout'", + "Up down arrow shape. Corresponds to ECMA-376 ST_ShapeType 'upDownArrow'", + "U-turn arrow shape. Corresponds to ECMA-376 ST_ShapeType 'uturnArrow'", + "Vertical scroll shape. Corresponds to ECMA-376 ST_ShapeType\n'verticalScroll'", + "Wave shape. Corresponds to ECMA-376 ST_ShapeType 'wave'", + "Callout wedge ellipse shape. Corresponds to ECMA-376 ST_ShapeType\n'wedgeEllipseCallout'", + "Callout wedge rectangle shape. Corresponds to ECMA-376 ST_ShapeType\n'wedgeRectCallout'", + "Callout wedge round rectangle shape. Corresponds to ECMA-376 ST_ShapeType\n'wedgeRoundRectCallout'", + "Alternate process flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartAlternateProcess'", + "Collate flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartCollate'", + "Connector flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartConnector'", + "Decision flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartDecision'", + "Delay flow shape. Corresponds to ECMA-376 ST_ShapeType 'flowChartDelay'", + "Display flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartDisplay'", + "Document flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartDocument'", + "Extract flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartExtract'", + "Input output flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartInputOutput'", + "Internal storage flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartInternalStorage'", + "Magnetic disk flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartMagneticDisk'", + "Magnetic drum flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartMagneticDrum'", + "Magnetic tape flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartMagneticTape'", + "Manual input flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartManualInput'", + "Manual operation flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartManualOperation'", + "Merge flow shape. Corresponds to ECMA-376 ST_ShapeType 'flowChartMerge'", + "Multi-document flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartMultidocument'", + "Offline storage flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartOfflineStorage'", + "Off-page connector flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartOffpageConnector'", + "Online storage flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartOnlineStorage'", + "Or flow shape. Corresponds to ECMA-376 ST_ShapeType 'flowChartOr'", + "Predefined process flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartPredefinedProcess'", + "Preparation flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartPreparation'", + "Process flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartProcess'", + "Punched card flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartPunchedCard'", + "Punched tape flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartPunchedTape'", + "Sort flow shape. Corresponds to ECMA-376 ST_ShapeType 'flowChartSort'", + "Summing junction flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartSummingJunction'", + "Terminator flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartTerminator'", + "East arrow shape.", + "Northeast arrow shape.", + "North arrow shape.", + "Speech shape.", + "Star burst shape.", + "Teardrop shape. Corresponds to ECMA-376 ST_ShapeType 'teardrop'", + "Ellipse ribbon shape. Corresponds to ECMA-376 ST_ShapeType\n'ellipseRibbon'", + "Ellipse ribbon 2 shape. Corresponds to ECMA-376 ST_ShapeType\n'ellipseRibbon2'", + "Callout cloud shape. Corresponds to ECMA-376 ST_ShapeType 'cloudCallout'", + "Custom shape." + ], + "type": "string" + } + }, + "type": "object" + }, + "CreateShapeResponse": { + "description": "The result of creating a shape.", + "id": "CreateShapeResponse", + "properties": { + "objectId": { + "description": "The object ID of the created shape.", + "type": "string" + } + }, + "type": "object" + }, + "CreateSheetsChartRequest": { + "description": "Creates an embedded Google Sheets chart.\n\nNOTE: Chart creation requires at least one of the spreadsheets.readonly,\nspreadsheets, drive.readonly, or drive OAuth scopes.", + "id": "CreateSheetsChartRequest", + "properties": { + "chartId": { + "description": "The ID of the specific chart in the Google Sheets spreadsheet.", + "format": "int32", + "type": "integer" + }, + "elementProperties": { + "$ref": "PageElementProperties", + "description": "The element properties for the chart.\n\nWhen the aspect ratio of the provided size does not match the chart aspect\nratio, the chart is scaled and centered with respect to the size in order\nto maintain aspect ratio. The provided transform is applied after this\noperation." + }, + "linkingMode": { + "description": "The mode with which the chart is linked to the source spreadsheet. When\nnot specified, the chart will be an image that is not linked.", + "enum": [ + "NOT_LINKED_IMAGE", + "LINKED" + ], + "enumDescriptions": [ + "The chart is not associated with the source spreadsheet and cannot be\nupdated. A chart that is not linked will be inserted as an image.", + "Linking the chart allows it to be updated, and other collaborators will\nsee a link to the spreadsheet." + ], + "type": "string" + }, + "objectId": { + "description": "A user-supplied object ID.\n\nIf specified, the ID must be unique among all pages and page elements in\nthe presentation. The ID should start with a word character [a-zA-Z0-9_]\nand then followed by any number of the following characters [a-zA-Z0-9_-:].\nThe length of the ID should not be less than 5 or greater than 50.\nIf empty, a unique identifier will be generated.", + "type": "string" + }, + "spreadsheetId": { + "description": "The ID of the Google Sheets spreadsheet that contains the chart.", + "type": "string" + } + }, + "type": "object" }, "CreateSheetsChartResponse": { "description": "The result of creating an embedded Google Sheets chart.", - "type": "object", + "id": "CreateSheetsChartResponse", "properties": { "objectId": { - "type": "string", - "description": "The object ID of the created chart." - } - }, - "id": "CreateSheetsChartResponse" - }, - "WriteControl": { - "description": "Provides control over how write requests are executed.", - "type": "object", - "properties": { - "requiredRevisionId": { - "description": "The revision ID of the presentation required for the write request. If\nspecified and the `required_revision_id` doesn't exactly match the\npresentation's current `revision_id`, the request will not be processed and\nwill return a 400 bad request error.", + "description": "The object ID of the created chart.", "type": "string" } }, - "id": "WriteControl" + "type": "object" + }, + "CreateSlideRequest": { + "description": "Creates a new slide.", + "id": "CreateSlideRequest", + "properties": { + "insertionIndex": { + "description": "The optional zero-based index indicating where to insert the slides.\n\nIf you don't specify an index, the new slide is created at the end.", + "format": "int32", + "type": "integer" + }, + "objectId": { + "description": "A user-supplied object ID.\n\nIf you specify an ID, it must be unique among all pages and page elements\nin the presentation. The ID must start with an alphanumeric character or an\nunderscore (matches regex `[a-zA-Z0-9_]`); remaining characters\nmay include those as well as a hyphen or colon (matches regex\n`[a-zA-Z0-9_-:]`).\nThe length of the ID must not be less than 5 or greater than 50.\n\nIf you don't specify an ID, a unique one is generated.", + "type": "string" + }, + "placeholderIdMappings": { + "description": "An optional list of object ID mappings from the placeholder(s) on the layout to the placeholder(s)\nthat will be created on the new slide from that specified layout. Can only\nbe used when `slide_layout_reference` is specified.", + "items": { + "$ref": "LayoutPlaceholderIdMapping" + }, + "type": "array" + }, + "slideLayoutReference": { + "$ref": "LayoutReference", + "description": "Layout reference of the slide to be inserted, based on the *current\nmaster*, which is one of the following:\n\n- The master of the previous slide index.\n- The master of the first slide, if the insertion_index is zero.\n- The first master in the presentation, if there are no slides.\n\nIf the LayoutReference is not found in the current master, a 400 bad\nrequest error is returned.\n\nIf you don't specify a layout reference, then the new slide will use the\npredefined layout `BLANK`." + } + }, + "type": "object" + }, + "CreateSlideResponse": { + "description": "The result of creating a slide.", + "id": "CreateSlideResponse", + "properties": { + "objectId": { + "description": "The object ID of the created slide.", + "type": "string" + } + }, + "type": "object" + }, + "CreateTableRequest": { + "description": "Creates a new table.", + "id": "CreateTableRequest", + "properties": { + "columns": { + "description": "Number of columns in the table.", + "format": "int32", + "type": "integer" + }, + "elementProperties": { + "$ref": "PageElementProperties", + "description": "The element properties for the table.\n\nThe table will be created at the provided size, subject to a minimum size.\nIf no size is provided, the table will be automatically sized.\n\nTable transforms must have a scale of 1 and no shear components. If no\ntransform is provided, the table will be centered on the page." + }, + "objectId": { + "description": "A user-supplied object ID.\n\nIf you specify an ID, it must be unique among all pages and page elements\nin the presentation. The ID must start with an alphanumeric character or an\nunderscore (matches regex `[a-zA-Z0-9_]`); remaining characters\nmay include those as well as a hyphen or colon (matches regex\n`[a-zA-Z0-9_-:]`).\nThe length of the ID must not be less than 5 or greater than 50.\n\nIf you don't specify an ID, a unique one is generated.", + "type": "string" + }, + "rows": { + "description": "Number of rows in the table.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "CreateTableResponse": { + "description": "The result of creating a table.", + "id": "CreateTableResponse", + "properties": { + "objectId": { + "description": "The object ID of the created table.", + "type": "string" + } + }, + "type": "object" + }, + "CreateVideoRequest": { + "description": "Creates a video.", + "id": "CreateVideoRequest", + "properties": { + "elementProperties": { + "$ref": "PageElementProperties", + "description": "The element properties for the video.\n\nThe PageElementProperties.size property is\noptional. If you don't specify a size, a default size is chosen by the\nserver.\n\nThe PageElementProperties.transform property is\noptional. The transform must not have shear components.\nIf you don't specify a transform, the video will be placed at the top left\ncorner of the page." + }, + "id": { + "description": "The video source's unique identifier for this video.\n\ne.g. For YouTube video https://www.youtube.com/watch?v=7U3axjORYZ0,\nthe ID is 7U3axjORYZ0.", + "type": "string" + }, + "objectId": { + "description": "A user-supplied object ID.\n\nIf you specify an ID, it must be unique among all pages and page elements\nin the presentation. The ID must start with an alphanumeric character or an\nunderscore (matches regex `[a-zA-Z0-9_]`); remaining characters\nmay include those as well as a hyphen or colon (matches regex\n`[a-zA-Z0-9_-:]`).\nThe length of the ID must not be less than 5 or greater than 50.\n\nIf you don't specify an ID, a unique one is generated.", + "type": "string" + }, + "source": { + "description": "The video source.", + "enum": [ + "SOURCE_UNSPECIFIED", + "YOUTUBE" + ], + "enumDescriptions": [ + "The video source is unspecified.", + "The video source is YouTube." + ], + "type": "string" + } + }, + "type": "object" + }, + "CreateVideoResponse": { + "description": "The result of creating a video.", + "id": "CreateVideoResponse", + "properties": { + "objectId": { + "description": "The object ID of the created video.", + "type": "string" + } + }, + "type": "object" + }, + "CropProperties": { + "description": "The crop properties of an object enclosed in a container. For example, an\nImage.\n\nThe crop properties is represented by the offsets of four edges which define\na crop rectangle. The offsets are measured in percentage from the\ncorresponding edges of the object's original bounding rectangle towards\ninside, relative to the object's original dimensions.\n\n- If the offset is in the interval (0, 1), the corresponding edge of crop\nrectangle is positioned inside of the object's original bounding rectangle.\n- If the offset is negative or greater than 1, the corresponding edge of crop\nrectangle is positioned outside of the object's original bounding rectangle.\n- If the left edge of the crop rectangle is on the right side of its right\nedge, the object will be flipped horizontally.\n- If the top edge of the crop rectangle is below its bottom edge, the object\nwill be flipped vertically.\n- If all offsets and rotation angle is 0, the object is not cropped.\n\nAfter cropping, the content in the crop rectangle will be stretched to fit\nits container.", + "id": "CropProperties", + "properties": { + "angle": { + "description": "The rotation angle of the crop window around its center, in radians.\nRotation angle is applied after the offset.", + "format": "float", + "type": "number" + }, + "bottomOffset": { + "description": "The offset specifies the bottom edge of the crop rectangle that is located\nabove the original bounding rectangle bottom edge, relative to the object's\noriginal height.", + "format": "float", + "type": "number" + }, + "leftOffset": { + "description": "The offset specifies the left edge of the crop rectangle that is located to\nthe right of the original bounding rectangle left edge, relative to the\nobject's original width.", + "format": "float", + "type": "number" + }, + "rightOffset": { + "description": "The offset specifies the right edge of the crop rectangle that is located\nto the left of the original bounding rectangle right edge, relative to the\nobject's original width.", + "format": "float", + "type": "number" + }, + "topOffset": { + "description": "The offset specifies the top edge of the crop rectangle that is located\nbelow the original bounding rectangle top edge, relative to the object's\noriginal height.", + "format": "float", + "type": "number" + } + }, + "type": "object" + }, + "DeleteObjectRequest": { + "description": "Deletes an object, either pages or\npage elements, from the\npresentation.", + "id": "DeleteObjectRequest", + "properties": { + "objectId": { + "description": "The object ID of the page or page element to delete.\n\nIf after a delete operation a group contains\nonly 1 or no page elements, the group is also deleted.\n\nIf a placeholder is deleted on a layout, any empty inheriting shapes are\nalso deleted.", + "type": "string" + } + }, + "type": "object" }, "DeleteParagraphBulletsRequest": { + "description": "Deletes bullets from all of the paragraphs that overlap with the given text\nindex range.\n\nThe nesting level of each paragraph will be visually preserved by adding\nindent to the start of the corresponding paragraph.", + "id": "DeleteParagraphBulletsRequest", "properties": { "cellLocation": { "$ref": "TableCellLocation", @@ -516,240 +1157,1178 @@ "type": "string" }, "textRange": { - "description": "The range of text to delete bullets from, based on TextElement indexes.", - "$ref": "Range" + "$ref": "Range", + "description": "The range of text to delete bullets from, based on TextElement indexes." } }, - "id": "DeleteParagraphBulletsRequest", - "description": "Deletes bullets from all of the paragraphs that overlap with the given text\nindex range.\n\nThe nesting level of each paragraph will be visually preserved by adding\nindent to the start of the corresponding paragraph.", "type": "object" }, - "ParagraphMarker": { - "description": "A TextElement kind that represents the beginning of a new paragraph.", - "type": "object", + "DeleteTableColumnRequest": { + "description": "Deletes a column from a table.", + "id": "DeleteTableColumnRequest", "properties": { - "style": { - "$ref": "ParagraphStyle", - "description": "The paragraph's style" + "cellLocation": { + "$ref": "TableCellLocation", + "description": "The reference table cell location from which a column will be deleted.\n\nThe column this cell spans will be deleted. If this is a merged cell,\nmultiple columns will be deleted. If no columns remain in the table after\nthis deletion, the whole table is deleted." }, - "bullet": { - "description": "The bullet for this paragraph. If not present, the paragraph does not\nbelong to a list.", - "$ref": "Bullet" + "tableObjectId": { + "description": "The table to delete columns from.", + "type": "string" } }, - "id": "ParagraphMarker" + "type": "object" }, - "Thumbnail": { - "description": "The thumbnail of a page.", - "type": "object", + "DeleteTableRowRequest": { + "description": "Deletes a row from a table.", + "id": "DeleteTableRowRequest", "properties": { - "contentUrl": { - "description": "The content URL of the thumbnail image.\n\nThe URL to the image has a default lifetime of 30 minutes.\nThis URL is tagged with the account of the requester. Anyone with the URL\neffectively accesses the image as the original requester. Access to the\nimage may be lost if the presentation's sharing settings change.\nThe mime type of the thumbnail image is the same as specified in the\n`GetPageThumbnailRequest`.", + "cellLocation": { + "$ref": "TableCellLocation", + "description": "The reference table cell location from which a row will be deleted.\n\nThe row this cell spans will be deleted. If this is a merged cell, multiple\nrows will be deleted. If no rows remain in the table after this deletion,\nthe whole table is deleted." + }, + "tableObjectId": { + "description": "The table to delete rows from.", + "type": "string" + } + }, + "type": "object" + }, + "DeleteTextRequest": { + "description": "Deletes text from a shape or a table cell.", + "id": "DeleteTextRequest", + "properties": { + "cellLocation": { + "$ref": "TableCellLocation", + "description": "The optional table cell location if the text is to be deleted from a table\ncell. If present, the object_id must refer to a table." + }, + "objectId": { + "description": "The object ID of the shape or table from which the text will be deleted.", "type": "string" }, - "width": { - "description": "The positive width in pixels of the thumbnail image.", - "format": "int32", - "type": "integer" - }, - "height": { - "description": "The positive height in pixels of the thumbnail image.", - "format": "int32", - "type": "integer" + "textRange": { + "$ref": "Range", + "description": "The range of text to delete, based on TextElement indexes.\n\nThere is always an implicit newline character at the end of a shape's or\ntable cell's text that cannot be deleted. `Range.Type.ALL` will use the\ncorrect bounds, but care must be taken when specifying explicit bounds for\nrange types `FROM_START_INDEX` and `FIXED_RANGE`. For example, if the text\nis \"ABC\", followed by an implicit newline, then the maximum value is 2 for\n`text_range.start_index` and 3 for `text_range.end_index`.\n\nDeleting text that crosses a paragraph boundary may result in changes\nto paragraph styles and lists as the two paragraphs are merged.\n\nRanges that include only one code unit of a surrogate pair are expanded to\ninclude both code units." } }, - "id": "Thumbnail" + "type": "object" + }, + "Dimension": { + "description": "A magnitude in a single direction in the specified units.", + "id": "Dimension", + "properties": { + "magnitude": { + "description": "The magnitude.", + "format": "double", + "type": "number" + }, + "unit": { + "description": "The units for magnitude.", + "enum": [ + "UNIT_UNSPECIFIED", + "EMU", + "PT" + ], + "enumDescriptions": [ + "The units are unknown.", + "An English Metric Unit (EMU) is defined as 1/360,000 of a centimeter\nand thus there are 914,400 EMUs per inch, and 12,700 EMUs per point.", + "A point, 1/72 of an inch." + ], + "type": "string" + } + }, + "type": "object" + }, + "DuplicateObjectRequest": { + "description": "Duplicates a slide or page element.\n\nWhen duplicating a slide, the duplicate slide will be created immediately\nfollowing the specified slide. When duplicating a page element, the duplicate\nwill be placed on the same page at the same position as the original.", + "id": "DuplicateObjectRequest", + "properties": { + "objectId": { + "description": "The ID of the object to duplicate.", + "type": "string" + }, + "objectIds": { + "additionalProperties": { + "type": "string" + }, + "description": "The object being duplicated may contain other objects, for example when\nduplicating a slide or a group page element. This map defines how the IDs\nof duplicated objects are generated: the keys are the IDs of the original\nobjects and its values are the IDs that will be assigned to the\ncorresponding duplicate object. The ID of the source object's duplicate\nmay be specified in this map as well, using the same value of the\n`object_id` field as a key and the newly desired ID as the value.\n\nAll keys must correspond to existing IDs in the presentation. All values\nmust be unique in the presentation and must start with an alphanumeric\ncharacter or an underscore (matches regex `[a-zA-Z0-9_]`); remaining\ncharacters may include those as well as a hyphen or colon (matches regex\n`[a-zA-Z0-9_-:]`). The length of the new ID must not be less than 5 or\ngreater than 50.\n\nIf any IDs of source objects are omitted from the map, a new random ID will\nbe assigned. If the map is empty or unset, all duplicate objects will\nreceive a new random ID.", + "type": "object" + } + }, + "type": "object" + }, + "DuplicateObjectResponse": { + "description": "The response of duplicating an object.", + "id": "DuplicateObjectResponse", + "properties": { + "objectId": { + "description": "The ID of the new duplicate object.", + "type": "string" + } + }, + "type": "object" + }, + "Group": { + "description": "A PageElement kind representing a\njoined collection of PageElements.", + "id": "Group", + "properties": { + "children": { + "description": "The collection of elements in the group. The minimum size of a group is 2.", + "items": { + "$ref": "PageElement" + }, + "type": "array" + } + }, + "type": "object" + }, + "GroupObjectsRequest": { + "description": "Groups objects to create an object group. For example, groups PageElements to create a Group on the same page as all the children.", + "id": "GroupObjectsRequest", + "properties": { + "childrenObjectIds": { + "description": "The object IDs of the objects to group.\n\nOnly page elements can be grouped. There should be at least two page\nelements on the same page that are not already in another group. Some page\nelements, such as videos, tables and placeholder shapes cannot be grouped.", + "items": { + "type": "string" + }, + "type": "array" + }, + "groupObjectId": { + "description": "A user-supplied object ID for the group to be created.\n\nIf you specify an ID, it must be unique among all pages and page elements\nin the presentation. The ID must start with an alphanumeric character or an\nunderscore (matches regex `[a-zA-Z0-9_]`); remaining characters\nmay include those as well as a hyphen or colon (matches regex\n`[a-zA-Z0-9_-:]`).\nThe length of the ID must not be less than 5 or greater than 50.\n\nIf you don't specify an ID, a unique one is generated.", + "type": "string" + } + }, + "type": "object" + }, + "GroupObjectsResponse": { + "description": "The result of grouping objects.", + "id": "GroupObjectsResponse", + "properties": { + "objectId": { + "description": "The object ID of the created group.", + "type": "string" + } + }, + "type": "object" + }, + "Image": { + "description": "A PageElement kind representing an\nimage.", + "id": "Image", + "properties": { + "contentUrl": { + "description": "An URL to an image with a default lifetime of 30 minutes.\nThis URL is tagged with the account of the requester. Anyone with the URL\neffectively accesses the image as the original requester. Access to the\nimage may be lost if the presentation's sharing settings change.", + "type": "string" + }, + "imageProperties": { + "$ref": "ImageProperties", + "description": "The properties of the image." + }, + "sourceUrl": { + "description": "The source URL is the URL used to insert the image. The source URL can be\nempty.", + "type": "string" + } + }, + "type": "object" + }, + "ImageProperties": { + "description": "The properties of the Image.", + "id": "ImageProperties", + "properties": { + "brightness": { + "description": "The brightness effect of the image. The value should be in the interval\n[-1.0, 1.0], where 0 means no effect. This property is read-only.", + "format": "float", + "type": "number" + }, + "contrast": { + "description": "The contrast effect of the image. The value should be in the interval\n[-1.0, 1.0], where 0 means no effect. This property is read-only.", + "format": "float", + "type": "number" + }, + "cropProperties": { + "$ref": "CropProperties", + "description": "The crop properties of the image. If not set, the image is not cropped.\nThis property is read-only." + }, + "link": { + "$ref": "Link", + "description": "The hyperlink destination of the image. If unset, there is no link." + }, + "outline": { + "$ref": "Outline", + "description": "The outline of the image. If not set, the image has no outline." + }, + "recolor": { + "$ref": "Recolor", + "description": "The recolor effect of the image. If not set, the image is not recolored.\nThis property is read-only." + }, + "shadow": { + "$ref": "Shadow", + "description": "The shadow of the image. If not set, the image has no shadow. This property\nis read-only." + }, + "transparency": { + "description": "The transparency effect of the image. The value should be in the interval\n[0.0, 1.0], where 0 means no effect and 1 means completely transparent.\nThis property is read-only.", + "format": "float", + "type": "number" + } + }, + "type": "object" }, "InsertTableColumnsRequest": { "description": "Inserts columns into a table.\n\nOther columns in the table will be resized to fit the new column.", - "type": "object", + "id": "InsertTableColumnsRequest", "properties": { + "cellLocation": { + "$ref": "TableCellLocation", + "description": "The reference table cell location from which columns will be inserted.\n\nA new column will be inserted to the left (or right) of the column where\nthe reference cell is. If the reference cell is a merged cell, a new\ncolumn will be inserted to the left (or right) of the merged cell." + }, "insertRight": { "description": "Whether to insert new columns to the right of the reference cell location.\n\n- `True`: insert to the right.\n- `False`: insert to the left.", "type": "boolean" }, - "tableObjectId": { - "type": "string", - "description": "The table to insert columns into." - }, "number": { "description": "The number of columns to be inserted. Maximum 20 per request.", "format": "int32", "type": "integer" }, - "cellLocation": { - "$ref": "TableCellLocation", - "description": "The reference table cell location from which columns will be inserted.\n\nA new column will be inserted to the left (or right) of the column where\nthe reference cell is. If the reference cell is a merged cell, a new\ncolumn will be inserted to the left (or right) of the merged cell." + "tableObjectId": { + "description": "The table to insert columns into.", + "type": "string" } }, - "id": "InsertTableColumnsRequest" + "type": "object" + }, + "InsertTableRowsRequest": { + "description": "Inserts rows into a table.", + "id": "InsertTableRowsRequest", + "properties": { + "cellLocation": { + "$ref": "TableCellLocation", + "description": "The reference table cell location from which rows will be inserted.\n\nA new row will be inserted above (or below) the row where the reference\ncell is. If the reference cell is a merged cell, a new row will be\ninserted above (or below) the merged cell." + }, + "insertBelow": { + "description": "Whether to insert new rows below the reference cell location.\n\n- `True`: insert below the cell.\n- `False`: insert above the cell.", + "type": "boolean" + }, + "number": { + "description": "The number of rows to be inserted. Maximum 20 per request.", + "format": "int32", + "type": "integer" + }, + "tableObjectId": { + "description": "The table to insert rows into.", + "type": "string" + } + }, + "type": "object" + }, + "InsertTextRequest": { + "description": "Inserts text into a shape or a table cell.", + "id": "InsertTextRequest", + "properties": { + "cellLocation": { + "$ref": "TableCellLocation", + "description": "The optional table cell location if the text is to be inserted into a table\ncell. If present, the object_id must refer to a table." + }, + "insertionIndex": { + "description": "The index where the text will be inserted, in Unicode code units, based\non TextElement indexes.\n\nThe index is zero-based and is computed from the start of the string.\nThe index may be adjusted to prevent insertions inside Unicode grapheme\nclusters. In these cases, the text will be inserted immediately after the\ngrapheme cluster.", + "format": "int32", + "type": "integer" + }, + "objectId": { + "description": "The object ID of the shape or table where the text will be inserted.", + "type": "string" + }, + "text": { + "description": "The text to be inserted.\n\nInserting a newline character will implicitly create a new\nParagraphMarker at that index.\nThe paragraph style of the new paragraph will be copied from the paragraph\nat the current insertion index, including lists and bullets.\n\nText styles for inserted text will be determined automatically, generally\npreserving the styling of neighboring text. In most cases, the text will be\nadded to the TextRun that exists at the\ninsertion index.\n\nSome control characters (U+0000-U+0008, U+000C-U+001F) and characters\nfrom the Unicode Basic Multilingual Plane Private Use Area (U+E000-U+F8FF)\nwill be stripped out of the inserted text.", + "type": "string" + } + }, + "type": "object" }, "LayoutPlaceholderIdMapping": { "description": "The user-specified ID mapping for a placeholder that will be created on a\nslide from a specified layout.", - "type": "object", + "id": "LayoutPlaceholderIdMapping", "properties": { "layoutPlaceholder": { "$ref": "Placeholder", "description": "The placeholder on a layout that will be applied to a slide. Only type and index are needed. For example, a\npredefined `TITLE_AND_BODY` layout may usually have a TITLE placeholder\nwith index 0 and a BODY placeholder with index 0." }, "layoutPlaceholderObjectId": { - "type": "string", - "description": "The object ID of the placeholder on a layout that will be applied\nto a slide." + "description": "The object ID of the placeholder on a layout that will be applied\nto a slide.", + "type": "string" }, "objectId": { "description": "A user-supplied object ID for the placeholder identified above that to be\ncreated onto a slide.\n\nIf you specify an ID, it must be unique among all pages and page elements\nin the presentation. The ID must start with an alphanumeric character or an\nunderscore (matches regex `[a-zA-Z0-9_]`); remaining characters\nmay include those as well as a hyphen or colon (matches regex\n`[a-zA-Z0-9_-:]`).\nThe length of the ID must not be less than 5 or greater than 50.\n\nIf you don't specify an ID, a unique one is generated.", "type": "string" } }, - "id": "LayoutPlaceholderIdMapping" + "type": "object" }, - "UpdateTableBorderPropertiesRequest": { - "description": "Updates the properties of the table borders in a Table.", - "type": "object", + "LayoutProperties": { + "description": "The properties of Page are only\nrelevant for pages with page_type LAYOUT.", + "id": "LayoutProperties", "properties": { - "borderPosition": { - "enumDescriptions": [ - "All borders in the range.", - "Borders at the bottom of the range.", - "Borders on the inside of the range.", - "Horizontal borders on the inside of the range.", - "Vertical borders on the inside of the range.", - "Borders at the left of the range.", - "Borders along the outside of the range.", - "Borders at the right of the range.", - "Borders at the top of the range." - ], + "displayName": { + "description": "The human-readable name of the layout.", + "type": "string" + }, + "masterObjectId": { + "description": "The object ID of the master that this layout is based on.", + "type": "string" + }, + "name": { + "description": "The name of the layout.", + "type": "string" + } + }, + "type": "object" + }, + "LayoutReference": { + "description": "Slide layout reference. This may reference either:\n\n- A predefined layout\n- One of the layouts in the presentation.", + "id": "LayoutReference", + "properties": { + "layoutId": { + "description": "Layout ID: the object ID of one of the layouts in the presentation.", + "type": "string" + }, + "predefinedLayout": { + "description": "Predefined layout.", "enum": [ - "ALL", - "BOTTOM", - "INNER", - "INNER_HORIZONTAL", - "INNER_VERTICAL", - "LEFT", - "OUTER", - "RIGHT", - "TOP" + "PREDEFINED_LAYOUT_UNSPECIFIED", + "BLANK", + "CAPTION_ONLY", + "TITLE", + "TITLE_AND_BODY", + "TITLE_AND_TWO_COLUMNS", + "TITLE_ONLY", + "SECTION_HEADER", + "SECTION_TITLE_AND_DESCRIPTION", + "ONE_COLUMN_TEXT", + "MAIN_POINT", + "BIG_NUMBER" + ], + "enumDescriptions": [ + "Unspecified layout.", + "Blank layout, with no placeholders.", + "Layout with a caption at the bottom.", + "Layout with a title and a subtitle.", + "Layout with a title and body.", + "Layout with a title and two columns.", + "Layout with only a title.", + "Layout with a section title.", + "Layout with a title and subtitle on one side and description on the other.", + "Layout with one title and one body, arranged in a single column.", + "Layout with a main point.", + "Layout with a big number heading." + ], + "type": "string" + } + }, + "type": "object" + }, + "Line": { + "description": "A PageElement kind representing a\nline, curved connector, or bent connector.", + "id": "Line", + "properties": { + "lineProperties": { + "$ref": "LineProperties", + "description": "The properties of the line." + }, + "lineType": { + "description": "The type of the line.", + "enum": [ + "TYPE_UNSPECIFIED", + "STRAIGHT_CONNECTOR_1", + "BENT_CONNECTOR_2", + "BENT_CONNECTOR_3", + "BENT_CONNECTOR_4", + "BENT_CONNECTOR_5", + "CURVED_CONNECTOR_2", + "CURVED_CONNECTOR_3", + "CURVED_CONNECTOR_4", + "CURVED_CONNECTOR_5" + ], + "enumDescriptions": [ + "An unspecified line type.", + "Straight connector 1 form. Corresponds to ECMA-376 ST_ShapeType\n'straightConnector1'.", + "Bent connector 2 form. Corresponds to ECMA-376 ST_ShapeType\n'bentConnector2'.", + "Bent connector 3 form. Corresponds to ECMA-376 ST_ShapeType\n'bentConnector3'.", + "Bent connector 4 form. Corresponds to ECMA-376 ST_ShapeType\n'bentConnector4'.", + "Bent connector 5 form. Corresponds to ECMA-376 ST_ShapeType\n'bentConnector5'.", + "Curved connector 2 form. Corresponds to ECMA-376 ST_ShapeType\n'curvedConnector2'.", + "Curved connector 3 form. Corresponds to ECMA-376 ST_ShapeType\n'curvedConnector3'.", + "Curved connector 4 form. Corresponds to ECMA-376 ST_ShapeType\n'curvedConnector4'.", + "Curved connector 5 form. Corresponds to ECMA-376 ST_ShapeType\n'curvedConnector5'." + ], + "type": "string" + } + }, + "type": "object" + }, + "LineFill": { + "description": "The fill of the line.", + "id": "LineFill", + "properties": { + "solidFill": { + "$ref": "SolidFill", + "description": "Solid color fill." + } + }, + "type": "object" + }, + "LineProperties": { + "description": "The properties of the Line.\n\nWhen unset, these fields default to values that match the appearance of\nnew lines created in the Slides editor.", + "id": "LineProperties", + "properties": { + "dashStyle": { + "description": "The dash style of the line.", + "enum": [ + "DASH_STYLE_UNSPECIFIED", + "SOLID", + "DOT", + "DASH", + "DASH_DOT", + "LONG_DASH", + "LONG_DASH_DOT" + ], + "enumDescriptions": [ + "Unspecified dash style.", + "Solid line. Corresponds to ECMA-376 ST_PresetLineDashVal value 'solid'.\nThis is the default dash style.", + "Dotted line. Corresponds to ECMA-376 ST_PresetLineDashVal value 'dot'.", + "Dashed line. Corresponds to ECMA-376 ST_PresetLineDashVal value 'dash'.", + "Alternating dashes and dots. Corresponds to ECMA-376 ST_PresetLineDashVal\nvalue 'dashDot'.", + "Line with large dashes. Corresponds to ECMA-376 ST_PresetLineDashVal\nvalue 'lgDash'.", + "Alternating large dashes and dots. Corresponds to ECMA-376\nST_PresetLineDashVal value 'lgDashDot'." ], - "description": "The border position in the table range the updates should apply to. If a\nborder position is not specified, the updates will apply to all borders in\nthe table range.", "type": "string" }, - "fields": { - "description": "The fields that should be updated.\n\nAt least one field must be specified. The root `tableBorderProperties` is\nimplied and should not be specified. A single `\"*\"` can be used as\nshort-hand for listing every field.\n\nFor example to update the table border solid fill color, set\n`fields` to `\"tableBorderFill.solidFill.color\"`.\n\nTo reset a property to its default value, include its field name in the\nfield mask but leave the field itself unset.", - "format": "google-fieldmask", + "endArrow": { + "description": "The style of the arrow at the end of the line.", + "enum": [ + "ARROW_STYLE_UNSPECIFIED", + "NONE", + "STEALTH_ARROW", + "FILL_ARROW", + "FILL_CIRCLE", + "FILL_SQUARE", + "FILL_DIAMOND", + "OPEN_ARROW", + "OPEN_CIRCLE", + "OPEN_SQUARE", + "OPEN_DIAMOND" + ], + "enumDescriptions": [ + "An unspecified arrow style.", + "No arrow.", + "Arrow with notched back. Corresponds to ECMA-376 ST_LineEndType value\n'stealth'.", + "Filled arrow. Corresponds to ECMA-376 ST_LineEndType value 'triangle'.", + "Filled circle. Corresponds to ECMA-376 ST_LineEndType value 'oval'.", + "Filled square.", + "Filled diamond. Corresponds to ECMA-376 ST_LineEndType value 'diamond'.", + "Hollow arrow.", + "Hollow circle.", + "Hollow square.", + "Hollow diamond." + ], "type": "string" }, + "lineFill": { + "$ref": "LineFill", + "description": "The fill of the line. The default line fill matches the defaults for new\nlines created in the Slides editor." + }, + "link": { + "$ref": "Link", + "description": "The hyperlink destination of the line. If unset, there is no link." + }, + "startArrow": { + "description": "The style of the arrow at the beginning of the line.", + "enum": [ + "ARROW_STYLE_UNSPECIFIED", + "NONE", + "STEALTH_ARROW", + "FILL_ARROW", + "FILL_CIRCLE", + "FILL_SQUARE", + "FILL_DIAMOND", + "OPEN_ARROW", + "OPEN_CIRCLE", + "OPEN_SQUARE", + "OPEN_DIAMOND" + ], + "enumDescriptions": [ + "An unspecified arrow style.", + "No arrow.", + "Arrow with notched back. Corresponds to ECMA-376 ST_LineEndType value\n'stealth'.", + "Filled arrow. Corresponds to ECMA-376 ST_LineEndType value 'triangle'.", + "Filled circle. Corresponds to ECMA-376 ST_LineEndType value 'oval'.", + "Filled square.", + "Filled diamond. Corresponds to ECMA-376 ST_LineEndType value 'diamond'.", + "Hollow arrow.", + "Hollow circle.", + "Hollow square.", + "Hollow diamond." + ], + "type": "string" + }, + "weight": { + "$ref": "Dimension", + "description": "The thickness of the line." + } + }, + "type": "object" + }, + "Link": { + "description": "A hypertext link.", + "id": "Link", + "properties": { + "pageObjectId": { + "description": "If set, indicates this is a link to the specific page in this\npresentation with this ID. A page with this ID may not exist.", + "type": "string" + }, + "relativeLink": { + "description": "If set, indicates this is a link to a slide in this presentation,\naddressed by its position.", + "enum": [ + "RELATIVE_SLIDE_LINK_UNSPECIFIED", + "NEXT_SLIDE", + "PREVIOUS_SLIDE", + "FIRST_SLIDE", + "LAST_SLIDE" + ], + "enumDescriptions": [ + "An unspecified relative slide link.", + "A link to the next slide.", + "A link to the previous slide.", + "A link to the first slide in the presentation.", + "A link to the last slide in the presentation." + ], + "type": "string" + }, + "slideIndex": { + "description": "If set, indicates this is a link to the slide at this zero-based index\nin the presentation. There may not be a slide at this index.", + "format": "int32", + "type": "integer" + }, + "url": { + "description": "If set, indicates this is a link to the external web page at this URL.", + "type": "string" + } + }, + "type": "object" + }, + "List": { + "description": "A List describes the look and feel of bullets belonging to paragraphs\nassociated with a list. A paragraph that is part of a list has an implicit\nreference to that list's ID.", + "id": "List", + "properties": { + "listId": { + "description": "The ID of the list.", + "type": "string" + }, + "nestingLevel": { + "additionalProperties": { + "$ref": "NestingLevel" + }, + "description": "A map of nesting levels to the properties of bullets at the associated\nlevel. A list has at most nine levels of nesting, so the possible values\nfor the keys of this map are 0 through 8, inclusive.", + "type": "object" + } + }, + "type": "object" + }, + "MasterProperties": { + "description": "The properties of Page that are only\nrelevant for pages with page_type MASTER.", + "id": "MasterProperties", + "properties": { + "displayName": { + "description": "The human-readable name of the master.", + "type": "string" + } + }, + "type": "object" + }, + "MergeTableCellsRequest": { + "description": "Merges cells in a Table.", + "id": "MergeTableCellsRequest", + "properties": { "objectId": { "description": "The object ID of the table.", "type": "string" }, "tableRange": { "$ref": "TableRange", - "description": "The table range representing the subset of the table to which the updates\nare applied. If a table range is not specified, the updates will apply to\nthe entire table." - }, - "tableBorderProperties": { - "$ref": "TableBorderProperties", - "description": "The table border properties to update." + "description": "The table range specifying which cells of the table to merge.\n\nAny text in the cells being merged will be concatenated and stored in the\nupper-left (\"head\") cell of the range. If the range is non-rectangular\n(which can occur in some cases where the range covers cells that are\nalready merged), a 400 bad request error is returned." } }, - "id": "UpdateTableBorderPropertiesRequest" + "type": "object" }, - "UpdateShapePropertiesRequest": { - "description": "Update the properties of a Shape.", - "type": "object", + "NestingLevel": { + "description": "Contains properties describing the look and feel of a list bullet at a given\nlevel of nesting.", + "id": "NestingLevel", "properties": { - "objectId": { - "description": "The object ID of the shape the updates are applied to.", - "type": "string" - }, - "shapeProperties": { - "$ref": "ShapeProperties", - "description": "The shape properties to update." - }, - "fields": { - "type": "string", - "description": "The fields that should be updated.\n\nAt least one field must be specified. The root `shapeProperties` is\nimplied and should not be specified. A single `\"*\"` can be used as\nshort-hand for listing every field.\n\nFor example to update the shape background solid fill color, set `fields`\nto `\"shapeBackgroundFill.solidFill.color\"`.\n\nTo reset a property to its default value, include its field name in the\nfield mask but leave the field itself unset.", - "format": "google-fieldmask" + "bulletStyle": { + "$ref": "TextStyle", + "description": "The style of a bullet at this level of nesting." } }, - "id": "UpdateShapePropertiesRequest" + "type": "object" }, - "WordArt": { - "type": "object", + "NotesProperties": { + "description": "The properties of Page that are only\nrelevant for pages with page_type NOTES.", + "id": "NotesProperties", "properties": { - "renderedText": { - "description": "The text rendered as word art.", + "speakerNotesObjectId": { + "description": "The object ID of the shape on this notes page that contains the speaker\nnotes for the corresponding slide.\nThe actual shape may not always exist on the notes page. Inserting text\nusing this object ID will automatically create the shape. In this case, the\nactual shape may have different object ID. The `GetPresentation` or\n`GetPage` action will always return the latest object ID.", "type": "string" } }, - "id": "WordArt", - "description": "A PageElement kind representing\nword art." + "type": "object" }, - "UpdateTableColumnPropertiesRequest": { - "description": "Updates the properties of a Table column.", - "type": "object", + "OpaqueColor": { + "description": "A themeable solid color value.", + "id": "OpaqueColor", "properties": { - "fields": { - "description": "The fields that should be updated.\n\nAt least one field must be specified. The root `tableColumnProperties` is\nimplied and should not be specified. A single `\"*\"` can be used as\nshort-hand for listing every field.\n\nFor example to update the column width, set `fields` to `\"column_width\"`.\n\nIf '\"column_width\"' is included in the field mask but the property is left\nunset, the column width will default to 406,400 EMU (32 points).", - "format": "google-fieldmask", + "rgbColor": { + "$ref": "RgbColor", + "description": "An opaque RGB color." + }, + "themeColor": { + "description": "An opaque theme color.", + "enum": [ + "THEME_COLOR_TYPE_UNSPECIFIED", + "DARK1", + "LIGHT1", + "DARK2", + "LIGHT2", + "ACCENT1", + "ACCENT2", + "ACCENT3", + "ACCENT4", + "ACCENT5", + "ACCENT6", + "HYPERLINK", + "FOLLOWED_HYPERLINK", + "TEXT1", + "BACKGROUND1", + "TEXT2", + "BACKGROUND2" + ], + "enumDescriptions": [ + "Unspecified theme color. This value should not be used.", + "Represents the first dark color.", + "Represents the first light color.", + "Represents the second dark color.", + "Represents the second light color.", + "Represents the first accent color.", + "Represents the second accent color.", + "Represents the third accent color.", + "Represents the fourth accent color.", + "Represents the fifth accent color.", + "Represents the sixth accent color.", + "Represents the color to use for hyperlinks.", + "Represents the color to use for visited hyperlinks.", + "Represents the first text color.", + "Represents the first background color.", + "Represents the second text color.", + "Represents the second background color." + ], "type": "string" + } + }, + "type": "object" + }, + "OptionalColor": { + "description": "A color that can either be fully opaque or fully transparent.", + "id": "OptionalColor", + "properties": { + "opaqueColor": { + "$ref": "OpaqueColor", + "description": "If set, this will be used as an opaque color. If unset, this represents\na transparent color." + } + }, + "type": "object" + }, + "Outline": { + "description": "The outline of a PageElement.\n\nIf these fields are unset, they may be inherited from a parent placeholder\nif it exists. If there is no parent, the fields will default to the value\nused for new page elements created in the Slides editor, which may depend on\nthe page element kind.", + "id": "Outline", + "properties": { + "dashStyle": { + "description": "The dash style of the outline.", + "enum": [ + "DASH_STYLE_UNSPECIFIED", + "SOLID", + "DOT", + "DASH", + "DASH_DOT", + "LONG_DASH", + "LONG_DASH_DOT" + ], + "enumDescriptions": [ + "Unspecified dash style.", + "Solid line. Corresponds to ECMA-376 ST_PresetLineDashVal value 'solid'.\nThis is the default dash style.", + "Dotted line. Corresponds to ECMA-376 ST_PresetLineDashVal value 'dot'.", + "Dashed line. Corresponds to ECMA-376 ST_PresetLineDashVal value 'dash'.", + "Alternating dashes and dots. Corresponds to ECMA-376 ST_PresetLineDashVal\nvalue 'dashDot'.", + "Line with large dashes. Corresponds to ECMA-376 ST_PresetLineDashVal\nvalue 'lgDash'.", + "Alternating large dashes and dots. Corresponds to ECMA-376\nST_PresetLineDashVal value 'lgDashDot'." + ], + "type": "string" + }, + "outlineFill": { + "$ref": "OutlineFill", + "description": "The fill of the outline." + }, + "propertyState": { + "description": "The outline property state.\n\nUpdating the outline on a page element will implicitly update this field\nto `RENDERED`, unless another value is specified in the same request. To\nhave no outline on a page element, set this field to `NOT_RENDERED`. In\nthis case, any other outline fields set in the same request will be\nignored.", + "enum": [ + "RENDERED", + "NOT_RENDERED", + "INHERIT" + ], + "enumDescriptions": [ + "If a property's state is RENDERED, then the element has the corresponding\nproperty when rendered on a page. If the element is a placeholder shape as\ndetermined by the placeholder\nfield, and it inherits from a placeholder shape, the corresponding field\nmay be unset, meaning that the property value is inherited from a parent\nplaceholder. If the element does not inherit, then the field will contain\nthe rendered value. This is the default value.", + "If a property's state is NOT_RENDERED, then the element does not have the\ncorresponding property when rendered on a page. However, the field may\nstill be set so it can be inherited by child shapes. To remove a property\nfrom a rendered element, set its property_state to NOT_RENDERED.", + "If a property's state is INHERIT, then the property state uses the value of\ncorresponding `property_state` field on the parent shape. Elements that do\nnot inherit will never have an INHERIT property state." + ], + "type": "string" + }, + "weight": { + "$ref": "Dimension", + "description": "The thickness of the outline." + } + }, + "type": "object" + }, + "OutlineFill": { + "description": "The fill of the outline.", + "id": "OutlineFill", + "properties": { + "solidFill": { + "$ref": "SolidFill", + "description": "Solid color fill." + } + }, + "type": "object" + }, + "Page": { + "description": "A page in a presentation.", + "id": "Page", + "properties": { + "layoutProperties": { + "$ref": "LayoutProperties", + "description": "Layout specific properties. Only set if page_type = LAYOUT." + }, + "masterProperties": { + "$ref": "MasterProperties", + "description": "Master specific properties. Only set if page_type = MASTER." + }, + "notesProperties": { + "$ref": "NotesProperties", + "description": "Notes specific properties. Only set if page_type = NOTES." }, "objectId": { - "description": "The object ID of the table.", + "description": "The object ID for this page. Object IDs used by\nPage and\nPageElement share the same namespace.", "type": "string" }, - "columnIndices": { - "description": "The list of zero-based indices specifying which columns to update. If no\nindices are provided, all columns in the table will be updated.", - "type": "array", + "pageElements": { + "description": "The page elements rendered on the page.", "items": { - "format": "int32", - "type": "integer" - } + "$ref": "PageElement" + }, + "type": "array" }, - "tableColumnProperties": { - "$ref": "TableColumnProperties", - "description": "The table column properties to update.\n\nIf the value of `table_column_properties#column_width` in the request is\nless than 406,400 EMU (32 points), a 400 bad request error is returned." + "pageProperties": { + "$ref": "PageProperties", + "description": "The properties of the page." + }, + "pageType": { + "description": "The type of the page.", + "enum": [ + "SLIDE", + "MASTER", + "LAYOUT", + "NOTES", + "NOTES_MASTER" + ], + "enumDescriptions": [ + "A slide page.", + "A master slide page.", + "A layout page.", + "A notes page.", + "A notes master page." + ], + "type": "string" + }, + "revisionId": { + "description": "The revision ID of the presentation containing this page. Can be used in\nupdate requests to assert that the presentation revision hasn't changed\nsince the last read operation. Only populated if the user has edit access\nto the presentation.\n\nThe format of the revision ID may change over time, so it should be treated\nopaquely. A returned revision ID is only guaranteed to be valid for 24\nhours after it has been returned and cannot be shared across users. If the\nrevision ID is unchanged between calls, then the presentation has not\nchanged. Conversely, a changed ID (for the same presentation and user)\nusually means the presentation has been updated; however, a changed ID can\nalso be due to internal factors such as ID format changes.", + "type": "string" + }, + "slideProperties": { + "$ref": "SlideProperties", + "description": "Slide specific properties. Only set if page_type = SLIDE." } }, - "id": "UpdateTableColumnPropertiesRequest" + "type": "object" + }, + "PageBackgroundFill": { + "description": "The page background fill.", + "id": "PageBackgroundFill", + "properties": { + "propertyState": { + "description": "The background fill property state.\n\nUpdating the fill on a page will implicitly update this field to\n`RENDERED`, unless another value is specified in the same request. To\nhave no fill on a page, set this field to `NOT_RENDERED`. In this case,\nany other fill fields set in the same request will be ignored.", + "enum": [ + "RENDERED", + "NOT_RENDERED", + "INHERIT" + ], + "enumDescriptions": [ + "If a property's state is RENDERED, then the element has the corresponding\nproperty when rendered on a page. If the element is a placeholder shape as\ndetermined by the placeholder\nfield, and it inherits from a placeholder shape, the corresponding field\nmay be unset, meaning that the property value is inherited from a parent\nplaceholder. If the element does not inherit, then the field will contain\nthe rendered value. This is the default value.", + "If a property's state is NOT_RENDERED, then the element does not have the\ncorresponding property when rendered on a page. However, the field may\nstill be set so it can be inherited by child shapes. To remove a property\nfrom a rendered element, set its property_state to NOT_RENDERED.", + "If a property's state is INHERIT, then the property state uses the value of\ncorresponding `property_state` field on the parent shape. Elements that do\nnot inherit will never have an INHERIT property state." + ], + "type": "string" + }, + "solidFill": { + "$ref": "SolidFill", + "description": "Solid color fill." + }, + "stretchedPictureFill": { + "$ref": "StretchedPictureFill", + "description": "Stretched picture fill." + } + }, + "type": "object" + }, + "PageElement": { + "description": "A visual element rendered on a page.", + "id": "PageElement", + "properties": { + "description": { + "description": "The description of the page element. Combined with title to display alt\ntext.", + "type": "string" + }, + "elementGroup": { + "$ref": "Group", + "description": "A collection of page elements joined as a single unit." + }, + "image": { + "$ref": "Image", + "description": "An image page element." + }, + "line": { + "$ref": "Line", + "description": "A line page element." + }, + "objectId": { + "description": "The object ID for this page element. Object IDs used by\ngoogle.apps.slides.v1.Page and\ngoogle.apps.slides.v1.PageElement share the same namespace.", + "type": "string" + }, + "shape": { + "$ref": "Shape", + "description": "A generic shape." + }, + "sheetsChart": { + "$ref": "SheetsChart", + "description": "A linked chart embedded from Google Sheets. Unlinked charts are\nrepresented as images." + }, + "size": { + "$ref": "Size", + "description": "The size of the page element." + }, + "table": { + "$ref": "Table", + "description": "A table page element." + }, + "title": { + "description": "The title of the page element. Combined with description to display alt\ntext.", + "type": "string" + }, + "transform": { + "$ref": "AffineTransform", + "description": "The transform of the page element.\n\nThe visual appearance of the page element is determined by its absolute\ntransform. To compute the absolute transform, preconcatenate a page\nelement's transform with the transforms of all of its parent groups. If the\npage element is not in a group, its absolute transform is the same as the\nvalue in this field.\n\nThe initial transform for the newly created Group is always the identity transform." + }, + "video": { + "$ref": "Video", + "description": "A video page element." + }, + "wordArt": { + "$ref": "WordArt", + "description": "A word art page element." + } + }, + "type": "object" + }, + "PageElementProperties": { + "description": "Common properties for a page element.\n\nNote: When you initially create a\nPageElement, the API may modify\nthe values of both `size` and `transform`, but the\nvisual size will be unchanged.", + "id": "PageElementProperties", + "properties": { + "pageObjectId": { + "description": "The object ID of the page where the element is located.", + "type": "string" + }, + "size": { + "$ref": "Size", + "description": "The size of the element." + }, + "transform": { + "$ref": "AffineTransform", + "description": "The transform for the element." + } + }, + "type": "object" + }, + "PageProperties": { + "description": "The properties of the Page.\n\nThe page will inherit properties from the parent page. Depending on the page\ntype the hierarchy is defined in either\nSlideProperties or\nLayoutProperties.", + "id": "PageProperties", + "properties": { + "colorScheme": { + "$ref": "ColorScheme", + "description": "The color scheme of the page. If unset, the color scheme is inherited from\na parent page. If the page has no parent, the color scheme uses a default\nSlides color scheme. This field is read-only." + }, + "pageBackgroundFill": { + "$ref": "PageBackgroundFill", + "description": "The background fill of the page. If unset, the background fill is inherited\nfrom a parent page if it exists. If the page has no parent, then the\nbackground fill defaults to the corresponding fill in the Slides editor." + } + }, + "type": "object" + }, + "ParagraphMarker": { + "description": "A TextElement kind that represents the beginning of a new paragraph.", + "id": "ParagraphMarker", + "properties": { + "bullet": { + "$ref": "Bullet", + "description": "The bullet for this paragraph. If not present, the paragraph does not\nbelong to a list." + }, + "style": { + "$ref": "ParagraphStyle", + "description": "The paragraph's style" + } + }, + "type": "object" + }, + "ParagraphStyle": { + "description": "Styles that apply to a whole paragraph.\n\nIf this text is contained in a shape with a parent placeholder, then these paragraph styles may be\ninherited from the parent. Which paragraph styles are inherited depend on the\nnesting level of lists:\n\n* A paragraph not in a list will inherit its paragraph style from the\n paragraph at the 0 nesting level of the list inside the parent placeholder.\n* A paragraph in a list will inherit its paragraph style from the paragraph\n at its corresponding nesting level of the list inside the parent\n placeholder.\n\nInherited paragraph styles are represented as unset fields in this message.", + "id": "ParagraphStyle", + "properties": { + "alignment": { + "description": "The text alignment for this paragraph.", + "enum": [ + "ALIGNMENT_UNSPECIFIED", + "START", + "CENTER", + "END", + "JUSTIFIED" + ], + "enumDescriptions": [ + "The paragraph alignment is inherited from the parent.", + "The paragraph is aligned to the start of the line. Left-aligned for\nLTR text, right-aligned otherwise.", + "The paragraph is centered.", + "The paragraph is aligned to the end of the line. Right-aligned for\nLTR text, left-aligned otherwise.", + "The paragraph is justified." + ], + "type": "string" + }, + "direction": { + "description": "The text direction of this paragraph. If unset, the value defaults to\nLEFT_TO_RIGHT since\ntext direction is not inherited.", + "enum": [ + "TEXT_DIRECTION_UNSPECIFIED", + "LEFT_TO_RIGHT", + "RIGHT_TO_LEFT" + ], + "enumDescriptions": [ + "The text direction is inherited from the parent.", + "The text goes from left to right.", + "The text goes from right to left." + ], + "type": "string" + }, + "indentEnd": { + "$ref": "Dimension", + "description": "The amount indentation for the paragraph on the side that corresponds to\nthe end of the text, based on the current text direction. If unset, the\nvalue is inherited from the parent." + }, + "indentFirstLine": { + "$ref": "Dimension", + "description": "The amount of indentation for the start of the first line of the paragraph.\nIf unset, the value is inherited from the parent." + }, + "indentStart": { + "$ref": "Dimension", + "description": "The amount indentation for the paragraph on the side that corresponds to\nthe start of the text, based on the current text direction. If unset, the\nvalue is inherited from the parent." + }, + "lineSpacing": { + "description": "The amount of space between lines, as a percentage of normal, where normal\nis represented as 100.0. If unset, the value is inherited from the parent.", + "format": "float", + "type": "number" + }, + "spaceAbove": { + "$ref": "Dimension", + "description": "The amount of extra space above the paragraph. If unset, the value is\ninherited from the parent." + }, + "spaceBelow": { + "$ref": "Dimension", + "description": "The amount of extra space above the paragraph. If unset, the value is\ninherited from the parent." + }, + "spacingMode": { + "description": "The spacing mode for the paragraph.", + "enum": [ + "SPACING_MODE_UNSPECIFIED", + "NEVER_COLLAPSE", + "COLLAPSE_LISTS" + ], + "enumDescriptions": [ + "The spacing mode is inherited from the parent.", + "Paragraph spacing is always rendered.", + "Paragraph spacing is skipped between list elements." + ], + "type": "string" + } + }, + "type": "object" + }, + "Placeholder": { + "description": "The placeholder information that uniquely identifies a placeholder shape.", + "id": "Placeholder", + "properties": { + "index": { + "description": "The index of the placeholder. If the same placeholder types are present in\nthe same page, they would have different index values.", + "format": "int32", + "type": "integer" + }, + "parentObjectId": { + "description": "The object ID of this shape's parent placeholder.\nIf unset, the parent placeholder shape does not exist, so the shape does\nnot inherit properties from any other shape.", + "type": "string" + }, + "type": { + "description": "The type of the placeholder.", + "enum": [ + "NONE", + "BODY", + "CHART", + "CLIP_ART", + "CENTERED_TITLE", + "DIAGRAM", + "DATE_AND_TIME", + "FOOTER", + "HEADER", + "MEDIA", + "OBJECT", + "PICTURE", + "SLIDE_NUMBER", + "SUBTITLE", + "TABLE", + "TITLE", + "SLIDE_IMAGE" + ], + "enumDescriptions": [ + "Default value, signifies it is not a placeholder.", + "Body text.", + "Chart or graph.", + "Clip art image.", + "Title centered.", + "Diagram.", + "Date and time.", + "Footer text.", + "Header text.", + "Multimedia.", + "Any content type.", + "Picture.", + "Number of a slide.", + "Subtitle.", + "Table.", + "Slide title.", + "Slide image." + ], + "type": "string" + } + }, + "type": "object" + }, + "Presentation": { + "description": "A Google Slides presentation.", + "id": "Presentation", + "properties": { + "layouts": { + "description": "The layouts in the presentation. A layout is a template that determines\nhow content is arranged and styled on the slides that inherit from that\nlayout.", + "items": { + "$ref": "Page" + }, + "type": "array" + }, + "locale": { + "description": "The locale of the presentation, as an IETF BCP 47 language tag.", + "type": "string" + }, + "masters": { + "description": "The slide masters in the presentation. A slide master contains all common\npage elements and the common properties for a set of layouts. They serve\nthree purposes:\n\n- Placeholder shapes on a master contain the default text styles and shape\n properties of all placeholder shapes on pages that use that master.\n- The master page properties define the common page properties inherited by\n its layouts.\n- Any other shapes on the master slide will appear on all slides using that\n master, regardless of their layout.", + "items": { + "$ref": "Page" + }, + "type": "array" + }, + "notesMaster": { + "$ref": "Page", + "description": "The notes master in the presentation. It serves three purposes:\n\n- Placeholder shapes on a notes master contain the default text styles and\n shape properties of all placeholder shapes on notes pages. Specifically,\n a `SLIDE_IMAGE` placeholder shape contains the slide thumbnail, and a\n `BODY` placeholder shape contains the speaker notes.\n- The notes master page properties define the common page properties\n inherited by all notes pages.\n- Any other shapes on the notes master will appear on all notes pages.\n\nThe notes master is read-only." + }, + "pageSize": { + "$ref": "Size", + "description": "The size of pages in the presentation." + }, + "presentationId": { + "description": "The ID of the presentation.", + "type": "string" + }, + "revisionId": { + "description": "The revision ID of the presentation. Can be used in update requests\nto assert that the presentation revision hasn't changed since the last\nread operation. Only populated if the user has edit access to the\npresentation.\n\nThe format of the revision ID may change over time, so it should be treated\nopaquely. A returned revision ID is only guaranteed to be valid for 24\nhours after it has been returned and cannot be shared across users. If the\nrevision ID is unchanged between calls, then the presentation has not\nchanged. Conversely, a changed ID (for the same presentation and user)\nusually means the presentation has been updated; however, a changed ID can\nalso be due to internal factors such as ID format changes.", + "type": "string" + }, + "slides": { + "description": "The slides in the presentation.\nA slide inherits properties from a slide layout.", + "items": { + "$ref": "Page" + }, + "type": "array" + }, + "title": { + "description": "The title of the presentation.", + "type": "string" + } + }, + "type": "object" + }, + "Range": { + "description": "Specifies a contiguous range of an indexed collection, such as characters in\ntext.", + "id": "Range", + "properties": { + "endIndex": { + "description": "The optional zero-based index of the end of the collection.\nRequired for `FIXED_RANGE` ranges.", + "format": "int32", + "type": "integer" + }, + "startIndex": { + "description": "The optional zero-based index of the beginning of the collection.\nRequired for `FIXED_RANGE` and `FROM_START_INDEX` ranges.", + "format": "int32", + "type": "integer" + }, + "type": { + "description": "The type of range.", + "enum": [ + "RANGE_TYPE_UNSPECIFIED", + "FIXED_RANGE", + "FROM_START_INDEX", + "ALL" + ], + "enumDescriptions": [ + "Unspecified range type. This value must not be used.", + "A fixed range. Both the `start_index` and\n`end_index` must be specified.", + "Starts the range at `start_index` and continues until the\nend of the collection. The `end_index` must not be specified.", + "Sets the range to be the whole length of the collection. Both the\n`start_index` and the `end_index` must not be\nspecified." + ], + "type": "string" + } + }, + "type": "object" }, "Recolor": { - "type": "object", + "description": "A recolor effect applied on an image.", + "id": "Recolor", "properties": { - "recolorStops": { - "description": "The recolor effect is represented by a gradient, which is a list of color\nstops.\n\nThe colors in the gradient will replace the corresponding colors at\nthe same position in the color palette and apply to the image. This\nproperty is read-only.", - "type": "array", - "items": { - "$ref": "ColorStop" - } - }, "name": { - "enumDescriptions": [ - "No recolor effect. The default value.", - "A recolor effect that lightens the image using the page's first available\ncolor from its color scheme.", - "A recolor effect that lightens the image using the page's second\navailable color from its color scheme.", - "A recolor effect that lightens the image using the page's third available\ncolor from its color scheme.", - "A recolor effect that lightens the image using the page's forth available\ncolor from its color scheme.", - "A recolor effect that lightens the image using the page's fifth available\ncolor from its color scheme.", - "A recolor effect that lightens the image using the page's sixth available\ncolor from its color scheme.", - "A recolor effect that lightens the image using the page's seventh\navailable color from its color scheme.e.", - "A recolor effect that lightens the image using the page's eighth\navailable color from its color scheme.", - "A recolor effect that lightens the image using the page's ninth available\ncolor from its color scheme.", - "A recolor effect that lightens the image using the page's tenth available\ncolor from its color scheme.", - "A recolor effect that darkens the image using the page's first available\ncolor from its color scheme.", - "A recolor effect that darkens the image using the page's second available\ncolor from its color scheme.", - "A recolor effect that darkens the image using the page's third available\ncolor from its color scheme.", - "A recolor effect that darkens the image using the page's fourth available\ncolor from its color scheme.", - "A recolor effect that darkens the image using the page's fifth available\ncolor from its color scheme.", - "A recolor effect that darkens the image using the page's sixth available\ncolor from its color scheme.", - "A recolor effect that darkens the image using the page's seventh\navailable color from its color scheme.", - "A recolor effect that darkens the image using the page's eighth available\ncolor from its color scheme.", - "A recolor effect that darkens the image using the page's ninth available\ncolor from its color scheme.", - "A recolor effect that darkens the image using the page's tenth available\ncolor from its color scheme.", - "A recolor effect that recolors the image to grayscale.", - "A recolor effect that recolors the image to negative grayscale.", - "A recolor effect that recolors the image using the sepia color.", - "Custom recolor effect. Refer to `recolor_stops` for the concrete\ngradient." - ], + "description": "The name of the recolor effect.\n\nThe name is determined from the `recolor_stops` by matching the gradient\nagainst the colors in the page's current color scheme. This property is\nread-only.", "enum": [ "NONE", "LIGHT1", @@ -777,60 +2356,463 @@ "SEPIA", "CUSTOM" ], - "description": "The name of the recolor effect.\n\nThe name is determined from the `recolor_stops` by matching the gradient\nagainst the colors in the page's current color scheme. This property is\nread-only.", + "enumDescriptions": [ + "No recolor effect. The default value.", + "A recolor effect that lightens the image using the page's first available\ncolor from its color scheme.", + "A recolor effect that lightens the image using the page's second\navailable color from its color scheme.", + "A recolor effect that lightens the image using the page's third available\ncolor from its color scheme.", + "A recolor effect that lightens the image using the page's forth available\ncolor from its color scheme.", + "A recolor effect that lightens the image using the page's fifth available\ncolor from its color scheme.", + "A recolor effect that lightens the image using the page's sixth available\ncolor from its color scheme.", + "A recolor effect that lightens the image using the page's seventh\navailable color from its color scheme.e.", + "A recolor effect that lightens the image using the page's eighth\navailable color from its color scheme.", + "A recolor effect that lightens the image using the page's ninth available\ncolor from its color scheme.", + "A recolor effect that lightens the image using the page's tenth available\ncolor from its color scheme.", + "A recolor effect that darkens the image using the page's first available\ncolor from its color scheme.", + "A recolor effect that darkens the image using the page's second available\ncolor from its color scheme.", + "A recolor effect that darkens the image using the page's third available\ncolor from its color scheme.", + "A recolor effect that darkens the image using the page's fourth available\ncolor from its color scheme.", + "A recolor effect that darkens the image using the page's fifth available\ncolor from its color scheme.", + "A recolor effect that darkens the image using the page's sixth available\ncolor from its color scheme.", + "A recolor effect that darkens the image using the page's seventh\navailable color from its color scheme.", + "A recolor effect that darkens the image using the page's eighth available\ncolor from its color scheme.", + "A recolor effect that darkens the image using the page's ninth available\ncolor from its color scheme.", + "A recolor effect that darkens the image using the page's tenth available\ncolor from its color scheme.", + "A recolor effect that recolors the image to grayscale.", + "A recolor effect that recolors the image to negative grayscale.", + "A recolor effect that recolors the image using the sepia color.", + "Custom recolor effect. Refer to `recolor_stops` for the concrete\ngradient." + ], + "type": "string" + }, + "recolorStops": { + "description": "The recolor effect is represented by a gradient, which is a list of color\nstops.\n\nThe colors in the gradient will replace the corresponding colors at\nthe same position in the color palette and apply to the image. This\nproperty is read-only.", + "items": { + "$ref": "ColorStop" + }, + "type": "array" + } + }, + "type": "object" + }, + "RefreshSheetsChartRequest": { + "description": "Refreshes an embedded Google Sheets chart by replacing it with the latest\nversion of the chart from Google Sheets.\n\nNOTE: Refreshing charts requires at least one of the spreadsheets.readonly,\nspreadsheets, drive.readonly, or drive OAuth scopes.", + "id": "RefreshSheetsChartRequest", + "properties": { + "objectId": { + "description": "The object ID of the chart to refresh.", "type": "string" } }, - "id": "Recolor", - "description": "A recolor effect applied on an image." + "type": "object" }, - "Link": { - "description": "A hypertext link.", - "type": "object", + "ReplaceAllShapesWithImageRequest": { + "description": "Replaces all shapes that match the given criteria with the provided image.", + "id": "ReplaceAllShapesWithImageRequest", "properties": { - "url": { - "description": "If set, indicates this is a link to the external web page at this URL.", - "type": "string" + "containsText": { + "$ref": "SubstringMatchCriteria", + "description": "If set, this request will replace all of the shapes that contain the\ngiven text." }, - "relativeLink": { - "enumDescriptions": [ - "An unspecified relative slide link.", - "A link to the next slide.", - "A link to the previous slide.", - "A link to the first slide in the presentation.", - "A link to the last slide in the presentation." - ], + "imageReplaceMethod": { + "description": "The image replace method.\n\nIf you specify both a `replace_method` and an `image_replace_method`, the\n`image_replace_method` takes precedence.\n\nIf you do not specify a value for `image_replace_method`, but specify a\nvalue for `replace_method`, then the specified `replace_method` value is\nused.\n\nIf you do not specify either, then CENTER_INSIDE is used.", "enum": [ - "RELATIVE_SLIDE_LINK_UNSPECIFIED", - "NEXT_SLIDE", - "PREVIOUS_SLIDE", - "FIRST_SLIDE", - "LAST_SLIDE" + "IMAGE_REPLACE_METHOD_UNSPECIFIED", + "CENTER_INSIDE", + "CENTER_CROP" + ], + "enumDescriptions": [ + "Unspecified image replace method. This value must not be used.", + "Scales and centers the image to fit within the bounds of the original\nshape and maintains the image's aspect ratio. The rendered size of the\nimage may be smaller than the size of the shape. This is the default\nmethod when one is not specified.", + "Scales and centers the image to fill the bounds of the original shape.\nThe image may be cropped in order to fill the shape. The rendered size of\nthe image will be the same as that of the original shape." ], - "description": "If set, indicates this is a link to a slide in this presentation,\naddressed by its position.", "type": "string" }, - "slideIndex": { - "description": "If set, indicates this is a link to the slide at this zero-based index\nin the presentation. There may not be a slide at this index.", + "imageUrl": { + "description": "The image URL.\n\nThe image is fetched once at insertion time and a copy is stored for\ndisplay inside the presentation. Images must be less than 50MB in size,\ncannot exceed 25 megapixels, and must be in one of PNG, JPEG, or GIF\nformat.\n\nThe provided URL can be at most 2 kB in length.", + "type": "string" + }, + "pageObjectIds": { + "description": "If non-empty, limits the matches to page elements only on the given pages.\n\nReturns a 400 bad request error if given the page object ID of a\nnotes page or a\nnotes master, or if a\npage with that object ID doesn't exist in the presentation.", + "items": { + "type": "string" + }, + "type": "array" + }, + "replaceMethod": { + "description": "The replace method.\nDeprecated: use `image_replace_method` instead.\n\nIf you specify both a `replace_method` and an `image_replace_method`, the\n`image_replace_method` takes precedence.", + "enum": [ + "CENTER_INSIDE", + "CENTER_CROP" + ], + "enumDescriptions": [ + "Scales and centers the image to fit within the bounds of the original\nshape and maintains the image's aspect ratio. The rendered size of the\nimage may be smaller than the size of the shape. This is the default\nmethod when one is not specified.", + "Scales and centers the image to fill the bounds of the original shape.\nThe image may be cropped in order to fill the shape. The rendered size of\nthe image will be the same as that of the original shape." + ], + "type": "string" + } + }, + "type": "object" + }, + "ReplaceAllShapesWithImageResponse": { + "description": "The result of replacing shapes with an image.", + "id": "ReplaceAllShapesWithImageResponse", + "properties": { + "occurrencesChanged": { + "description": "The number of shapes replaced with images.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "ReplaceAllShapesWithSheetsChartRequest": { + "description": "Replaces all shapes that match the given criteria with the provided Google\nSheets chart. The chart will be scaled and centered to fit within the bounds\nof the original shape.\n\nNOTE: Replacing shapes with a chart requires at least one of the\nspreadsheets.readonly, spreadsheets, drive.readonly, or drive OAuth scopes.", + "id": "ReplaceAllShapesWithSheetsChartRequest", + "properties": { + "chartId": { + "description": "The ID of the specific chart in the Google Sheets spreadsheet.", "format": "int32", "type": "integer" }, - "pageObjectId": { - "description": "If set, indicates this is a link to the specific page in this\npresentation with this ID. A page with this ID may not exist.", + "containsText": { + "$ref": "SubstringMatchCriteria", + "description": "The criteria that the shapes must match in order to be replaced. The\nrequest will replace all of the shapes that contain the given text." + }, + "linkingMode": { + "description": "The mode with which the chart is linked to the source spreadsheet. When\nnot specified, the chart will be an image that is not linked.", + "enum": [ + "NOT_LINKED_IMAGE", + "LINKED" + ], + "enumDescriptions": [ + "The chart is not associated with the source spreadsheet and cannot be\nupdated. A chart that is not linked will be inserted as an image.", + "Linking the chart allows it to be updated, and other collaborators will\nsee a link to the spreadsheet." + ], + "type": "string" + }, + "pageObjectIds": { + "description": "If non-empty, limits the matches to page elements only on the given pages.\n\nReturns a 400 bad request error if given the page object ID of a\nnotes page or a\nnotes master, or if a\npage with that object ID doesn't exist in the presentation.", + "items": { + "type": "string" + }, + "type": "array" + }, + "spreadsheetId": { + "description": "The ID of the Google Sheets spreadsheet that contains the chart.", "type": "string" } }, - "id": "Link" + "type": "object" + }, + "ReplaceAllShapesWithSheetsChartResponse": { + "description": "The result of replacing shapes with a Google Sheets chart.", + "id": "ReplaceAllShapesWithSheetsChartResponse", + "properties": { + "occurrencesChanged": { + "description": "The number of shapes replaced with charts.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "ReplaceAllTextRequest": { + "description": "Replaces all instances of text matching a criteria with replace text.", + "id": "ReplaceAllTextRequest", + "properties": { + "containsText": { + "$ref": "SubstringMatchCriteria", + "description": "Finds text in a shape matching this substring." + }, + "pageObjectIds": { + "description": "If non-empty, limits the matches to page elements only on the given pages.\n\nReturns a 400 bad request error if given the page object ID of a\nnotes master,\nor if a page with that object ID doesn't exist in the presentation.", + "items": { + "type": "string" + }, + "type": "array" + }, + "replaceText": { + "description": "The text that will replace the matched text.", + "type": "string" + } + }, + "type": "object" + }, + "ReplaceAllTextResponse": { + "description": "The result of replacing text.", + "id": "ReplaceAllTextResponse", + "properties": { + "occurrencesChanged": { + "description": "The number of occurrences changed by replacing all text.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "ReplaceImageRequest": { + "description": "Replaces an existing image with a new image.\n\nReplacing an image removes some image effects from the existing image.", + "id": "ReplaceImageRequest", + "properties": { + "imageObjectId": { + "description": "The ID of the existing image that will be replaced.", + "type": "string" + }, + "imageReplaceMethod": { + "description": "The replacement method.", + "enum": [ + "IMAGE_REPLACE_METHOD_UNSPECIFIED", + "CENTER_INSIDE", + "CENTER_CROP" + ], + "enumDescriptions": [ + "Unspecified image replace method. This value must not be used.", + "Scales and centers the image to fit within the bounds of the original\nshape and maintains the image's aspect ratio. The rendered size of the\nimage may be smaller than the size of the shape. This is the default\nmethod when one is not specified.", + "Scales and centers the image to fill the bounds of the original shape.\nThe image may be cropped in order to fill the shape. The rendered size of\nthe image will be the same as that of the original shape." + ], + "type": "string" + }, + "url": { + "description": "The URL of the new image.\n\nThe image is fetched once at insertion time and a copy is stored for\ndisplay inside the presentation. Images must be less than 50MB in size,\ncannot exceed 25 megapixels, and must be in one of PNG, JPEG, or GIF\nformat.\n\nThe provided URL can be at most 2 kB in length.", + "type": "string" + } + }, + "type": "object" + }, + "Request": { + "description": "A single kind of update to apply to a presentation.", + "id": "Request", + "properties": { + "createImage": { + "$ref": "CreateImageRequest", + "description": "Creates an image." + }, + "createLine": { + "$ref": "CreateLineRequest", + "description": "Creates a line." + }, + "createParagraphBullets": { + "$ref": "CreateParagraphBulletsRequest", + "description": "Creates bullets for paragraphs." + }, + "createShape": { + "$ref": "CreateShapeRequest", + "description": "Creates a new shape." + }, + "createSheetsChart": { + "$ref": "CreateSheetsChartRequest", + "description": "Creates an embedded Google Sheets chart." + }, + "createSlide": { + "$ref": "CreateSlideRequest", + "description": "Creates a new slide." + }, + "createTable": { + "$ref": "CreateTableRequest", + "description": "Creates a new table." + }, + "createVideo": { + "$ref": "CreateVideoRequest", + "description": "Creates a video." + }, + "deleteObject": { + "$ref": "DeleteObjectRequest", + "description": "Deletes a page or page element from the presentation." + }, + "deleteParagraphBullets": { + "$ref": "DeleteParagraphBulletsRequest", + "description": "Deletes bullets from paragraphs." + }, + "deleteTableColumn": { + "$ref": "DeleteTableColumnRequest", + "description": "Deletes a column from a table." + }, + "deleteTableRow": { + "$ref": "DeleteTableRowRequest", + "description": "Deletes a row from a table." + }, + "deleteText": { + "$ref": "DeleteTextRequest", + "description": "Deletes text from a shape or a table cell." + }, + "duplicateObject": { + "$ref": "DuplicateObjectRequest", + "description": "Duplicates a slide or page element." + }, + "groupObjects": { + "$ref": "GroupObjectsRequest", + "description": "Groups objects, such as page elements." + }, + "insertTableColumns": { + "$ref": "InsertTableColumnsRequest", + "description": "Inserts columns into a table." + }, + "insertTableRows": { + "$ref": "InsertTableRowsRequest", + "description": "Inserts rows into a table." + }, + "insertText": { + "$ref": "InsertTextRequest", + "description": "Inserts text into a shape or table cell." + }, + "mergeTableCells": { + "$ref": "MergeTableCellsRequest", + "description": "Merges cells in a Table." + }, + "refreshSheetsChart": { + "$ref": "RefreshSheetsChartRequest", + "description": "Refreshes a Google Sheets chart." + }, + "replaceAllShapesWithImage": { + "$ref": "ReplaceAllShapesWithImageRequest", + "description": "Replaces all shapes matching some criteria with an image." + }, + "replaceAllShapesWithSheetsChart": { + "$ref": "ReplaceAllShapesWithSheetsChartRequest", + "description": "Replaces all shapes matching some criteria with a Google Sheets chart." + }, + "replaceAllText": { + "$ref": "ReplaceAllTextRequest", + "description": "Replaces all instances of specified text." + }, + "replaceImage": { + "$ref": "ReplaceImageRequest", + "description": "Replaces an existing image with a new image." + }, + "ungroupObjects": { + "$ref": "UngroupObjectsRequest", + "description": "Ungroups objects, such as groups." + }, + "unmergeTableCells": { + "$ref": "UnmergeTableCellsRequest", + "description": "Unmerges cells in a Table." + }, + "updateImageProperties": { + "$ref": "UpdateImagePropertiesRequest", + "description": "Updates the properties of an Image." + }, + "updateLineProperties": { + "$ref": "UpdateLinePropertiesRequest", + "description": "Updates the properties of a Line." + }, + "updatePageElementAltText": { + "$ref": "UpdatePageElementAltTextRequest", + "description": "Updates the alt text title and/or description of a\npage element." + }, + "updatePageElementTransform": { + "$ref": "UpdatePageElementTransformRequest", + "description": "Updates the transform of a page element." + }, + "updatePageProperties": { + "$ref": "UpdatePagePropertiesRequest", + "description": "Updates the properties of a Page." + }, + "updateParagraphStyle": { + "$ref": "UpdateParagraphStyleRequest", + "description": "Updates the styling of paragraphs within a Shape or Table." + }, + "updateShapeProperties": { + "$ref": "UpdateShapePropertiesRequest", + "description": "Updates the properties of a Shape." + }, + "updateSlidesPosition": { + "$ref": "UpdateSlidesPositionRequest", + "description": "Updates the position of a set of slides in the presentation." + }, + "updateTableBorderProperties": { + "$ref": "UpdateTableBorderPropertiesRequest", + "description": "Updates the properties of the table borders in a Table." + }, + "updateTableCellProperties": { + "$ref": "UpdateTableCellPropertiesRequest", + "description": "Updates the properties of a TableCell." + }, + "updateTableColumnProperties": { + "$ref": "UpdateTableColumnPropertiesRequest", + "description": "Updates the properties of a Table\ncolumn." + }, + "updateTableRowProperties": { + "$ref": "UpdateTableRowPropertiesRequest", + "description": "Updates the properties of a Table row." + }, + "updateTextStyle": { + "$ref": "UpdateTextStyleRequest", + "description": "Updates the styling of text within a Shape or Table." + }, + "updateVideoProperties": { + "$ref": "UpdateVideoPropertiesRequest", + "description": "Updates the properties of a Video." + } + }, + "type": "object" + }, + "Response": { + "description": "A single response from an update.", + "id": "Response", + "properties": { + "createImage": { + "$ref": "CreateImageResponse", + "description": "The result of creating an image." + }, + "createLine": { + "$ref": "CreateLineResponse", + "description": "The result of creating a line." + }, + "createShape": { + "$ref": "CreateShapeResponse", + "description": "The result of creating a shape." + }, + "createSheetsChart": { + "$ref": "CreateSheetsChartResponse", + "description": "The result of creating a Google Sheets chart." + }, + "createSlide": { + "$ref": "CreateSlideResponse", + "description": "The result of creating a slide." + }, + "createTable": { + "$ref": "CreateTableResponse", + "description": "The result of creating a table." + }, + "createVideo": { + "$ref": "CreateVideoResponse", + "description": "The result of creating a video." + }, + "duplicateObject": { + "$ref": "DuplicateObjectResponse", + "description": "The result of duplicating an object." + }, + "groupObjects": { + "$ref": "GroupObjectsResponse", + "description": "The result of grouping objects." + }, + "replaceAllShapesWithImage": { + "$ref": "ReplaceAllShapesWithImageResponse", + "description": "The result of replacing all shapes matching some criteria with an\nimage." + }, + "replaceAllShapesWithSheetsChart": { + "$ref": "ReplaceAllShapesWithSheetsChartResponse", + "description": "The result of replacing all shapes matching some criteria with a Google\nSheets chart." + }, + "replaceAllText": { + "$ref": "ReplaceAllTextResponse", + "description": "The result of replacing text." + } + }, + "type": "object" }, "RgbColor": { + "description": "An RGB color.", + "id": "RgbColor", "properties": { - "green": { - "description": "The green component of the color, from 0.0 to 1.0.", + "blue": { + "description": "The blue component of the color, from 0.0 to 1.0.", "format": "float", "type": "number" }, - "blue": { - "description": "The blue component of the color, from 0.0 to 1.0.", + "green": { + "description": "The green component of the color, from 0.0 to 1.0.", "format": "float", "type": "number" }, @@ -840,1034 +2822,14 @@ "type": "number" } }, - "id": "RgbColor", - "description": "An RGB color.", "type": "object" }, - "CreateShapeResponse": { - "type": "object", - "properties": { - "objectId": { - "description": "The object ID of the created shape.", - "type": "string" - } - }, - "id": "CreateShapeResponse", - "description": "The result of creating a shape." - }, - "CreateLineRequest": { - "description": "Creates a line.", - "type": "object", - "properties": { - "objectId": { - "type": "string", - "description": "A user-supplied object ID.\n\nIf you specify an ID, it must be unique among all pages and page elements\nin the presentation. The ID must start with an alphanumeric character or an\nunderscore (matches regex `[a-zA-Z0-9_]`); remaining characters\nmay include those as well as a hyphen or colon (matches regex\n`[a-zA-Z0-9_-:]`).\nThe length of the ID must not be less than 5 or greater than 50.\n\nIf you don't specify an ID, a unique one is generated." - }, - "elementProperties": { - "$ref": "PageElementProperties", - "description": "The element properties for the line." - }, - "lineCategory": { - "enumDescriptions": [ - "Straight connectors, including straight connector 1. The is the default\ncategory when one is not specified.", - "Bent connectors, including bent connector 2 to 5.", - "Curved connectors, including curved connector 2 to 5." - ], - "enum": [ - "STRAIGHT", - "BENT", - "CURVED" - ], - "description": "The category of line to be created.", - "type": "string" - } - }, - "id": "CreateLineRequest" - }, - "CreateSlideResponse": { - "description": "The result of creating a slide.", - "type": "object", - "properties": { - "objectId": { - "description": "The object ID of the created slide.", - "type": "string" - } - }, - "id": "CreateSlideResponse" - }, - "CreateShapeRequest": { - "description": "Creates a new shape.", - "type": "object", - "properties": { - "elementProperties": { - "$ref": "PageElementProperties", - "description": "The element properties for the shape." - }, - "objectId": { - "description": "A user-supplied object ID.\n\nIf you specify an ID, it must be unique among all pages and page elements\nin the presentation. The ID must start with an alphanumeric character or an\nunderscore (matches regex `[a-zA-Z0-9_]`); remaining characters\nmay include those as well as a hyphen or colon (matches regex\n`[a-zA-Z0-9_-:]`).\nThe length of the ID must not be less than 5 or greater than 50.\nIf empty, a unique identifier will be generated.", - "type": "string" - }, - "shapeType": { - "enum": [ - "TYPE_UNSPECIFIED", - "TEXT_BOX", - "RECTANGLE", - "ROUND_RECTANGLE", - "ELLIPSE", - "ARC", - "BENT_ARROW", - "BENT_UP_ARROW", - "BEVEL", - "BLOCK_ARC", - "BRACE_PAIR", - "BRACKET_PAIR", - "CAN", - "CHEVRON", - "CHORD", - "CLOUD", - "CORNER", - "CUBE", - "CURVED_DOWN_ARROW", - "CURVED_LEFT_ARROW", - "CURVED_RIGHT_ARROW", - "CURVED_UP_ARROW", - "DECAGON", - "DIAGONAL_STRIPE", - "DIAMOND", - "DODECAGON", - "DONUT", - "DOUBLE_WAVE", - "DOWN_ARROW", - "DOWN_ARROW_CALLOUT", - "FOLDED_CORNER", - "FRAME", - "HALF_FRAME", - "HEART", - "HEPTAGON", - "HEXAGON", - "HOME_PLATE", - "HORIZONTAL_SCROLL", - "IRREGULAR_SEAL_1", - "IRREGULAR_SEAL_2", - "LEFT_ARROW", - "LEFT_ARROW_CALLOUT", - "LEFT_BRACE", - "LEFT_BRACKET", - "LEFT_RIGHT_ARROW", - "LEFT_RIGHT_ARROW_CALLOUT", - "LEFT_RIGHT_UP_ARROW", - "LEFT_UP_ARROW", - "LIGHTNING_BOLT", - "MATH_DIVIDE", - "MATH_EQUAL", - "MATH_MINUS", - "MATH_MULTIPLY", - "MATH_NOT_EQUAL", - "MATH_PLUS", - "MOON", - "NO_SMOKING", - "NOTCHED_RIGHT_ARROW", - "OCTAGON", - "PARALLELOGRAM", - "PENTAGON", - "PIE", - "PLAQUE", - "PLUS", - "QUAD_ARROW", - "QUAD_ARROW_CALLOUT", - "RIBBON", - "RIBBON_2", - "RIGHT_ARROW", - "RIGHT_ARROW_CALLOUT", - "RIGHT_BRACE", - "RIGHT_BRACKET", - "ROUND_1_RECTANGLE", - "ROUND_2_DIAGONAL_RECTANGLE", - "ROUND_2_SAME_RECTANGLE", - "RIGHT_TRIANGLE", - "SMILEY_FACE", - "SNIP_1_RECTANGLE", - "SNIP_2_DIAGONAL_RECTANGLE", - "SNIP_2_SAME_RECTANGLE", - "SNIP_ROUND_RECTANGLE", - "STAR_10", - "STAR_12", - "STAR_16", - "STAR_24", - "STAR_32", - "STAR_4", - "STAR_5", - "STAR_6", - "STAR_7", - "STAR_8", - "STRIPED_RIGHT_ARROW", - "SUN", - "TRAPEZOID", - "TRIANGLE", - "UP_ARROW", - "UP_ARROW_CALLOUT", - "UP_DOWN_ARROW", - "UTURN_ARROW", - "VERTICAL_SCROLL", - "WAVE", - "WEDGE_ELLIPSE_CALLOUT", - "WEDGE_RECTANGLE_CALLOUT", - "WEDGE_ROUND_RECTANGLE_CALLOUT", - "FLOW_CHART_ALTERNATE_PROCESS", - "FLOW_CHART_COLLATE", - "FLOW_CHART_CONNECTOR", - "FLOW_CHART_DECISION", - "FLOW_CHART_DELAY", - "FLOW_CHART_DISPLAY", - "FLOW_CHART_DOCUMENT", - "FLOW_CHART_EXTRACT", - "FLOW_CHART_INPUT_OUTPUT", - "FLOW_CHART_INTERNAL_STORAGE", - "FLOW_CHART_MAGNETIC_DISK", - "FLOW_CHART_MAGNETIC_DRUM", - "FLOW_CHART_MAGNETIC_TAPE", - "FLOW_CHART_MANUAL_INPUT", - "FLOW_CHART_MANUAL_OPERATION", - "FLOW_CHART_MERGE", - "FLOW_CHART_MULTIDOCUMENT", - "FLOW_CHART_OFFLINE_STORAGE", - "FLOW_CHART_OFFPAGE_CONNECTOR", - "FLOW_CHART_ONLINE_STORAGE", - "FLOW_CHART_OR", - "FLOW_CHART_PREDEFINED_PROCESS", - "FLOW_CHART_PREPARATION", - "FLOW_CHART_PROCESS", - "FLOW_CHART_PUNCHED_CARD", - "FLOW_CHART_PUNCHED_TAPE", - "FLOW_CHART_SORT", - "FLOW_CHART_SUMMING_JUNCTION", - "FLOW_CHART_TERMINATOR", - "ARROW_EAST", - "ARROW_NORTH_EAST", - "ARROW_NORTH", - "SPEECH", - "STARBURST", - "TEARDROP", - "ELLIPSE_RIBBON", - "ELLIPSE_RIBBON_2", - "CLOUD_CALLOUT", - "CUSTOM" - ], - "description": "The shape type.", - "type": "string", - "enumDescriptions": [ - "The shape type that is not predefined.", - "Text box shape.", - "Rectangle shape. Corresponds to ECMA-376 ST_ShapeType 'rect'.", - "Round corner rectangle shape. Corresponds to ECMA-376 ST_ShapeType\n'roundRect'", - "Ellipse shape. Corresponds to ECMA-376 ST_ShapeType 'ellipse'", - "Curved arc shape. Corresponds to ECMA-376 ST_ShapeType 'arc'", - "Bent arrow shape. Corresponds to ECMA-376 ST_ShapeType 'bentArrow'", - "Bent up arrow shape. Corresponds to ECMA-376 ST_ShapeType 'bentUpArrow'", - "Bevel shape. Corresponds to ECMA-376 ST_ShapeType 'bevel'", - "Block arc shape. Corresponds to ECMA-376 ST_ShapeType 'blockArc'", - "Brace pair shape. Corresponds to ECMA-376 ST_ShapeType 'bracePair'", - "Bracket pair shape. Corresponds to ECMA-376 ST_ShapeType 'bracketPair'", - "Can shape. Corresponds to ECMA-376 ST_ShapeType 'can'", - "Chevron shape. Corresponds to ECMA-376 ST_ShapeType 'chevron'", - "Chord shape. Corresponds to ECMA-376 ST_ShapeType 'chord'", - "Cloud shape. Corresponds to ECMA-376 ST_ShapeType 'cloud'", - "Corner shape. Corresponds to ECMA-376 ST_ShapeType 'corner'", - "Cube shape. Corresponds to ECMA-376 ST_ShapeType 'cube'", - "Curved down arrow shape. Corresponds to ECMA-376 ST_ShapeType\n'curvedDownArrow'", - "Curved left arrow shape. Corresponds to ECMA-376 ST_ShapeType\n'curvedLeftArrow'", - "Curved right arrow shape. Corresponds to ECMA-376 ST_ShapeType\n'curvedRightArrow'", - "Curved up arrow shape. Corresponds to ECMA-376 ST_ShapeType\n'curvedUpArrow'", - "Decagon shape. Corresponds to ECMA-376 ST_ShapeType 'decagon'", - "Diagonal stripe shape. Corresponds to ECMA-376 ST_ShapeType 'diagStripe'", - "Diamond shape. Corresponds to ECMA-376 ST_ShapeType 'diamond'", - "Dodecagon shape. Corresponds to ECMA-376 ST_ShapeType 'dodecagon'", - "Donut shape. Corresponds to ECMA-376 ST_ShapeType 'donut'", - "Double wave shape. Corresponds to ECMA-376 ST_ShapeType 'doubleWave'", - "Down arrow shape. Corresponds to ECMA-376 ST_ShapeType 'downArrow'", - "Callout down arrow shape. Corresponds to ECMA-376 ST_ShapeType\n'downArrowCallout'", - "Folded corner shape. Corresponds to ECMA-376 ST_ShapeType 'foldedCorner'", - "Frame shape. Corresponds to ECMA-376 ST_ShapeType 'frame'", - "Half frame shape. Corresponds to ECMA-376 ST_ShapeType 'halfFrame'", - "Heart shape. Corresponds to ECMA-376 ST_ShapeType 'heart'", - "Heptagon shape. Corresponds to ECMA-376 ST_ShapeType 'heptagon'", - "Hexagon shape. Corresponds to ECMA-376 ST_ShapeType 'hexagon'", - "Home plate shape. Corresponds to ECMA-376 ST_ShapeType 'homePlate'", - "Horizontal scroll shape. Corresponds to ECMA-376 ST_ShapeType\n'horizontalScroll'", - "Irregular seal 1 shape. Corresponds to ECMA-376 ST_ShapeType\n'irregularSeal1'", - "Irregular seal 2 shape. Corresponds to ECMA-376 ST_ShapeType\n'irregularSeal2'", - "Left arrow shape. Corresponds to ECMA-376 ST_ShapeType 'leftArrow'", - "Callout left arrow shape. Corresponds to ECMA-376 ST_ShapeType\n'leftArrowCallout'", - "Left brace shape. Corresponds to ECMA-376 ST_ShapeType 'leftBrace'", - "Left bracket shape. Corresponds to ECMA-376 ST_ShapeType 'leftBracket'", - "Left right arrow shape. Corresponds to ECMA-376 ST_ShapeType\n'leftRightArrow'", - "Callout left right arrow shape. Corresponds to ECMA-376 ST_ShapeType\n'leftRightArrowCallout'", - "Left right up arrow shape. Corresponds to ECMA-376 ST_ShapeType\n'leftRightUpArrow'", - "Left up arrow shape. Corresponds to ECMA-376 ST_ShapeType 'leftUpArrow'", - "Lightning bolt shape. Corresponds to ECMA-376 ST_ShapeType\n'lightningBolt'", - "Divide math shape. Corresponds to ECMA-376 ST_ShapeType 'mathDivide'", - "Equal math shape. Corresponds to ECMA-376 ST_ShapeType 'mathEqual'", - "Minus math shape. Corresponds to ECMA-376 ST_ShapeType 'mathMinus'", - "Multiply math shape. Corresponds to ECMA-376 ST_ShapeType 'mathMultiply'", - "Not equal math shape. Corresponds to ECMA-376 ST_ShapeType 'mathNotEqual'", - "Plus math shape. Corresponds to ECMA-376 ST_ShapeType 'mathPlus'", - "Moon shape. Corresponds to ECMA-376 ST_ShapeType 'moon'", - "No smoking shape. Corresponds to ECMA-376 ST_ShapeType 'noSmoking'", - "Notched right arrow shape. Corresponds to ECMA-376 ST_ShapeType\n'notchedRightArrow'", - "Octagon shape. Corresponds to ECMA-376 ST_ShapeType 'octagon'", - "Parallelogram shape. Corresponds to ECMA-376 ST_ShapeType 'parallelogram'", - "Pentagon shape. Corresponds to ECMA-376 ST_ShapeType 'pentagon'", - "Pie shape. Corresponds to ECMA-376 ST_ShapeType 'pie'", - "Plaque shape. Corresponds to ECMA-376 ST_ShapeType 'plaque'", - "Plus shape. Corresponds to ECMA-376 ST_ShapeType 'plus'", - "Quad-arrow shape. Corresponds to ECMA-376 ST_ShapeType 'quadArrow'", - "Callout quad-arrow shape. Corresponds to ECMA-376 ST_ShapeType\n'quadArrowCallout'", - "Ribbon shape. Corresponds to ECMA-376 ST_ShapeType 'ribbon'", - "Ribbon 2 shape. Corresponds to ECMA-376 ST_ShapeType 'ribbon2'", - "Right arrow shape. Corresponds to ECMA-376 ST_ShapeType 'rightArrow'", - "Callout right arrow shape. Corresponds to ECMA-376 ST_ShapeType\n'rightArrowCallout'", - "Right brace shape. Corresponds to ECMA-376 ST_ShapeType 'rightBrace'", - "Right bracket shape. Corresponds to ECMA-376 ST_ShapeType 'rightBracket'", - "One round corner rectangle shape. Corresponds to ECMA-376 ST_ShapeType\n'round1Rect'", - "Two diagonal round corner rectangle shape. Corresponds to ECMA-376\nST_ShapeType 'round2DiagRect'", - "Two same-side round corner rectangle shape. Corresponds to ECMA-376\nST_ShapeType 'round2SameRect'", - "Right triangle shape. Corresponds to ECMA-376 ST_ShapeType 'rtTriangle'", - "Smiley face shape. Corresponds to ECMA-376 ST_ShapeType 'smileyFace'", - "One snip corner rectangle shape. Corresponds to ECMA-376 ST_ShapeType\n'snip1Rect'", - "Two diagonal snip corner rectangle shape. Corresponds to ECMA-376\nST_ShapeType 'snip2DiagRect'", - "Two same-side snip corner rectangle shape. Corresponds to ECMA-376\nST_ShapeType 'snip2SameRect'", - "One snip one round corner rectangle shape. Corresponds to ECMA-376\nST_ShapeType 'snipRoundRect'", - "Ten pointed star shape. Corresponds to ECMA-376 ST_ShapeType 'star10'", - "Twelve pointed star shape. Corresponds to ECMA-376 ST_ShapeType 'star12'", - "Sixteen pointed star shape. Corresponds to ECMA-376 ST_ShapeType 'star16'", - "Twenty four pointed star shape. Corresponds to ECMA-376 ST_ShapeType\n'star24'", - "Thirty two pointed star shape. Corresponds to ECMA-376 ST_ShapeType\n'star32'", - "Four pointed star shape. Corresponds to ECMA-376 ST_ShapeType 'star4'", - "Five pointed star shape. Corresponds to ECMA-376 ST_ShapeType 'star5'", - "Six pointed star shape. Corresponds to ECMA-376 ST_ShapeType 'star6'", - "Seven pointed star shape. Corresponds to ECMA-376 ST_ShapeType 'star7'", - "Eight pointed star shape. Corresponds to ECMA-376 ST_ShapeType 'star8'", - "Striped right arrow shape. Corresponds to ECMA-376 ST_ShapeType\n'stripedRightArrow'", - "Sun shape. Corresponds to ECMA-376 ST_ShapeType 'sun'", - "Trapezoid shape. Corresponds to ECMA-376 ST_ShapeType 'trapezoid'", - "Triangle shape. Corresponds to ECMA-376 ST_ShapeType 'triangle'", - "Up arrow shape. Corresponds to ECMA-376 ST_ShapeType 'upArrow'", - "Callout up arrow shape. Corresponds to ECMA-376 ST_ShapeType\n'upArrowCallout'", - "Up down arrow shape. Corresponds to ECMA-376 ST_ShapeType 'upDownArrow'", - "U-turn arrow shape. Corresponds to ECMA-376 ST_ShapeType 'uturnArrow'", - "Vertical scroll shape. Corresponds to ECMA-376 ST_ShapeType\n'verticalScroll'", - "Wave shape. Corresponds to ECMA-376 ST_ShapeType 'wave'", - "Callout wedge ellipse shape. Corresponds to ECMA-376 ST_ShapeType\n'wedgeEllipseCallout'", - "Callout wedge rectangle shape. Corresponds to ECMA-376 ST_ShapeType\n'wedgeRectCallout'", - "Callout wedge round rectangle shape. Corresponds to ECMA-376 ST_ShapeType\n'wedgeRoundRectCallout'", - "Alternate process flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartAlternateProcess'", - "Collate flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartCollate'", - "Connector flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartConnector'", - "Decision flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartDecision'", - "Delay flow shape. Corresponds to ECMA-376 ST_ShapeType 'flowChartDelay'", - "Display flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartDisplay'", - "Document flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartDocument'", - "Extract flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartExtract'", - "Input output flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartInputOutput'", - "Internal storage flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartInternalStorage'", - "Magnetic disk flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartMagneticDisk'", - "Magnetic drum flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartMagneticDrum'", - "Magnetic tape flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartMagneticTape'", - "Manual input flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartManualInput'", - "Manual operation flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartManualOperation'", - "Merge flow shape. Corresponds to ECMA-376 ST_ShapeType 'flowChartMerge'", - "Multi-document flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartMultidocument'", - "Offline storage flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartOfflineStorage'", - "Off-page connector flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartOffpageConnector'", - "Online storage flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartOnlineStorage'", - "Or flow shape. Corresponds to ECMA-376 ST_ShapeType 'flowChartOr'", - "Predefined process flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartPredefinedProcess'", - "Preparation flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartPreparation'", - "Process flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartProcess'", - "Punched card flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartPunchedCard'", - "Punched tape flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartPunchedTape'", - "Sort flow shape. Corresponds to ECMA-376 ST_ShapeType 'flowChartSort'", - "Summing junction flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartSummingJunction'", - "Terminator flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartTerminator'", - "East arrow shape.", - "Northeast arrow shape.", - "North arrow shape.", - "Speech shape.", - "Star burst shape.", - "Teardrop shape. Corresponds to ECMA-376 ST_ShapeType 'teardrop'", - "Ellipse ribbon shape. Corresponds to ECMA-376 ST_ShapeType\n'ellipseRibbon'", - "Ellipse ribbon 2 shape. Corresponds to ECMA-376 ST_ShapeType\n'ellipseRibbon2'", - "Callout cloud shape. Corresponds to ECMA-376 ST_ShapeType 'cloudCallout'", - "Custom shape." - ] - } - }, - "id": "CreateShapeRequest" - }, - "Video": { - "properties": { - "source": { - "enumDescriptions": [ - "The video source is unspecified.", - "The video source is YouTube." - ], - "enum": [ - "SOURCE_UNSPECIFIED", - "YOUTUBE" - ], - "description": "The video source.", - "type": "string" - }, - "url": { - "description": "An URL to a video. The URL is valid as long as the source video\nexists and sharing settings do not change.", - "type": "string" - }, - "id": { - "description": "The video source's unique identifier for this video.", - "type": "string" - }, - "videoProperties": { - "$ref": "VideoProperties", - "description": "The properties of the video." - } - }, - "id": "Video", - "description": "A PageElement kind representing a\nvideo.", - "type": "object" - }, - "PageProperties": { - "description": "The properties of the Page.\n\nThe page will inherit properties from the parent page. Depending on the page\ntype the hierarchy is defined in either\nSlideProperties or\nLayoutProperties.", - "type": "object", - "properties": { - "pageBackgroundFill": { - "$ref": "PageBackgroundFill", - "description": "The background fill of the page. If unset, the background fill is inherited\nfrom a parent page if it exists. If the page has no parent, then the\nbackground fill defaults to the corresponding fill in the Slides editor." - }, - "colorScheme": { - "$ref": "ColorScheme", - "description": "The color scheme of the page. If unset, the color scheme is inherited from\na parent page. If the page has no parent, the color scheme uses a default\nSlides color scheme. This field is read-only." - } - }, - "id": "PageProperties" - }, - "NestingLevel": { - "description": "Contains properties describing the look and feel of a list bullet at a given\nlevel of nesting.", - "type": "object", - "properties": { - "bulletStyle": { - "$ref": "TextStyle", - "description": "The style of a bullet at this level of nesting." - } - }, - "id": "NestingLevel" - }, - "TableCell": { - "description": "Properties and contents of each table cell.", - "type": "object", - "properties": { - "tableCellProperties": { - "$ref": "TableCellProperties", - "description": "The properties of the table cell." - }, - "location": { - "$ref": "TableCellLocation", - "description": "The location of the cell within the table." - }, - "rowSpan": { - "description": "Row span of the cell.", - "format": "int32", - "type": "integer" - }, - "columnSpan": { - "description": "Column span of the cell.", - "format": "int32", - "type": "integer" - }, - "text": { - "$ref": "TextContent", - "description": "The text content of the cell." - } - }, - "id": "TableCell" - }, - "UpdateLinePropertiesRequest": { - "type": "object", - "properties": { - "objectId": { - "description": "The object ID of the line the update is applied to.", - "type": "string" - }, - "lineProperties": { - "$ref": "LineProperties", - "description": "The line properties to update." - }, - "fields": { - "description": "The fields that should be updated.\n\nAt least one field must be specified. The root `lineProperties` is\nimplied and should not be specified. A single `\"*\"` can be used as\nshort-hand for listing every field.\n\nFor example to update the line solid fill color, set `fields` to\n`\"lineFill.solidFill.color\"`.\n\nTo reset a property to its default value, include its field name in the\nfield mask but leave the field itself unset.", - "format": "google-fieldmask", - "type": "string" - } - }, - "id": "UpdateLinePropertiesRequest", - "description": "Updates the properties of a Line." - }, - "UpdatePageElementAltTextRequest": { - "description": "Updates the alt text title and/or description of a\npage element.", - "type": "object", - "properties": { - "title": { - "description": "The updated alt text title of the page element. If unset the\nexisting value will be maintained. The title is exposed to screen readers\nand other accessibility interfaces. Only use human readable values related\nto the content of the page element.", - "type": "string" - }, - "description": { - "description": "The updated alt text description of the page element. If unset the existing\nvalue will be maintained. The description is exposed to screen readers\nand other accessibility interfaces. Only use human readable values related\nto the content of the page element.", - "type": "string" - }, - "objectId": { - "type": "string", - "description": "The object ID of the page element the updates are applied to." - } - }, - "id": "UpdatePageElementAltTextRequest" - }, - "UpdateSlidesPositionRequest": { - "description": "Updates the position of slides in the presentation.", - "type": "object", - "properties": { - "insertionIndex": { - "description": "The index where the slides should be inserted, based on the slide\narrangement before the move takes place. Must be between zero and the\nnumber of slides in the presentation, inclusive.", - "format": "int32", - "type": "integer" - }, - "slideObjectIds": { - "description": "The IDs of the slides in the presentation that should be moved.\nThe slides in this list must be in existing presentation order, without\nduplicates.", - "type": "array", - "items": { - "type": "string" - } - } - }, - "id": "UpdateSlidesPositionRequest" - }, - "TableCellBackgroundFill": { - "description": "The table cell background fill.", - "type": "object", - "properties": { - "propertyState": { - "description": "The background fill property state.\n\nUpdating the fill on a table cell will implicitly update this field\nto `RENDERED`, unless another value is specified in the same request. To\nhave no fill on a table cell, set this field to `NOT_RENDERED`. In this\ncase, any other fill fields set in the same request will be ignored.", - "type": "string", - "enumDescriptions": [ - "If a property's state is RENDERED, then the element has the corresponding\nproperty when rendered on a page. If the element is a placeholder shape as\ndetermined by the placeholder\nfield, and it inherits from a placeholder shape, the corresponding field\nmay be unset, meaning that the property value is inherited from a parent\nplaceholder. If the element does not inherit, then the field will contain\nthe rendered value. This is the default value.", - "If a property's state is NOT_RENDERED, then the element does not have the\ncorresponding property when rendered on a page. However, the field may\nstill be set so it can be inherited by child shapes. To remove a property\nfrom a rendered element, set its property_state to NOT_RENDERED.", - "If a property's state is INHERIT, then the property state uses the value of\ncorresponding `property_state` field on the parent shape. Elements that do\nnot inherit will never have an INHERIT property state." - ], - "enum": [ - "RENDERED", - "NOT_RENDERED", - "INHERIT" - ] - }, - "solidFill": { - "description": "Solid color fill.", - "$ref": "SolidFill" - } - }, - "id": "TableCellBackgroundFill" - }, - "UpdatePagePropertiesRequest": { - "description": "Updates the properties of a Page.", - "type": "object", - "properties": { - "objectId": { - "description": "The object ID of the page the update is applied to.", - "type": "string" - }, - "pageProperties": { - "description": "The page properties to update.", - "$ref": "PageProperties" - }, - "fields": { - "description": "The fields that should be updated.\n\nAt least one field must be specified. The root `pageProperties` is\nimplied and should not be specified. A single `\"*\"` can be used as\nshort-hand for listing every field.\n\nFor example to update the page background solid fill color, set `fields`\nto `\"pageBackgroundFill.solidFill.color\"`.\n\nTo reset a property to its default value, include its field name in the\nfield mask but leave the field itself unset.", - "format": "google-fieldmask", - "type": "string" - } - }, - "id": "UpdatePagePropertiesRequest" - }, - "Group": { - "properties": { - "children": { - "description": "The collection of elements in the group. The minimum size of a group is 2.", - "type": "array", - "items": { - "$ref": "PageElement" - } - } - }, - "id": "Group", - "description": "A PageElement kind representing a\njoined collection of PageElements.", - "type": "object" - }, - "Placeholder": { - "description": "The placeholder information that uniquely identifies a placeholder shape.", - "type": "object", - "properties": { - "parentObjectId": { - "description": "The object ID of this shape's parent placeholder.\nIf unset, the parent placeholder shape does not exist, so the shape does\nnot inherit properties from any other shape.", - "type": "string" - }, - "index": { - "description": "The index of the placeholder. If the same placeholder types are present in\nthe same page, they would have different index values.", - "format": "int32", - "type": "integer" - }, - "type": { - "description": "The type of the placeholder.", - "type": "string", - "enumDescriptions": [ - "Default value, signifies it is not a placeholder.", - "Body text.", - "Chart or graph.", - "Clip art image.", - "Title centered.", - "Diagram.", - "Date and time.", - "Footer text.", - "Header text.", - "Multimedia.", - "Any content type.", - "Picture.", - "Number of a slide.", - "Subtitle.", - "Table.", - "Slide title.", - "Slide image." - ], - "enum": [ - "NONE", - "BODY", - "CHART", - "CLIP_ART", - "CENTERED_TITLE", - "DIAGRAM", - "DATE_AND_TIME", - "FOOTER", - "HEADER", - "MEDIA", - "OBJECT", - "PICTURE", - "SLIDE_NUMBER", - "SUBTITLE", - "TABLE", - "TITLE", - "SLIDE_IMAGE" - ] - } - }, - "id": "Placeholder" - }, - "DuplicateObjectRequest": { - "type": "object", - "properties": { - "objectId": { - "description": "The ID of the object to duplicate.", - "type": "string" - }, - "objectIds": { - "description": "The object being duplicated may contain other objects, for example when\nduplicating a slide or a group page element. This map defines how the IDs\nof duplicated objects are generated: the keys are the IDs of the original\nobjects and its values are the IDs that will be assigned to the\ncorresponding duplicate object. The ID of the source object's duplicate\nmay be specified in this map as well, using the same value of the\n`object_id` field as a key and the newly desired ID as the value.\n\nAll keys must correspond to existing IDs in the presentation. All values\nmust be unique in the presentation and must start with an alphanumeric\ncharacter or an underscore (matches regex `[a-zA-Z0-9_]`); remaining\ncharacters may include those as well as a hyphen or colon (matches regex\n`[a-zA-Z0-9_-:]`). The length of the new ID must not be less than 5 or\ngreater than 50.\n\nIf any IDs of source objects are omitted from the map, a new random ID will\nbe assigned. If the map is empty or unset, all duplicate objects will\nreceive a new random ID.", - "type": "object", - "additionalProperties": { - "type": "string" - } - } - }, - "id": "DuplicateObjectRequest", - "description": "Duplicates a slide or page element.\n\nWhen duplicating a slide, the duplicate slide will be created immediately\nfollowing the specified slide. When duplicating a page element, the duplicate\nwill be placed on the same page at the same position as the original." - }, - "ReplaceAllTextRequest": { - "type": "object", - "properties": { - "replaceText": { - "description": "The text that will replace the matched text.", - "type": "string" - }, - "pageObjectIds": { - "description": "If non-empty, limits the matches to page elements only on the given pages.\n\nReturns a 400 bad request error if given the page object ID of a\nnotes master,\nor if a page with that object ID doesn't exist in the presentation.", - "type": "array", - "items": { - "type": "string" - } - }, - "containsText": { - "$ref": "SubstringMatchCriteria", - "description": "Finds text in a shape matching this substring." - } - }, - "id": "ReplaceAllTextRequest", - "description": "Replaces all instances of text matching a criteria with replace text." - }, - "UnmergeTableCellsRequest": { - "description": "Unmerges cells in a Table.", - "type": "object", - "properties": { - "objectId": { - "description": "The object ID of the table.", - "type": "string" - }, - "tableRange": { - "$ref": "TableRange", - "description": "The table range specifying which cells of the table to unmerge.\n\nAll merged cells in this range will be unmerged, and cells that are already\nunmerged will not be affected. If the range has no merged cells, the\nrequest will do nothing. If there is text in any of the merged cells, the\ntext will remain in the upper-left (\"head\") cell of the resulting block of\nunmerged cells." - } - }, - "id": "UnmergeTableCellsRequest" - }, - "Page": { - "description": "A page in a presentation.", - "type": "object", - "properties": { - "objectId": { - "description": "The object ID for this page. Object IDs used by\nPage and\nPageElement share the same namespace.", - "type": "string" - }, - "revisionId": { - "description": "The revision ID of the presentation containing this page. Can be used in\nupdate requests to assert that the presentation revision hasn't changed\nsince the last read operation. Only populated if the user has edit access\nto the presentation.\n\nThe format of the revision ID may change over time, so it should be treated\nopaquely. A returned revision ID is only guaranteed to be valid for 24\nhours after it has been returned and cannot be shared across users. If the\nrevision ID is unchanged between calls, then the presentation has not\nchanged. Conversely, a changed ID (for the same presentation and user)\nusually means the presentation has been updated; however, a changed ID can\nalso be due to internal factors such as ID format changes.", - "type": "string" - }, - "layoutProperties": { - "$ref": "LayoutProperties", - "description": "Layout specific properties. Only set if page_type = LAYOUT." - }, - "pageElements": { - "description": "The page elements rendered on the page.", - "type": "array", - "items": { - "$ref": "PageElement" - } - }, - "pageType": { - "enum": [ - "SLIDE", - "MASTER", - "LAYOUT", - "NOTES", - "NOTES_MASTER" - ], - "description": "The type of the page.", - "type": "string", - "enumDescriptions": [ - "A slide page.", - "A master slide page.", - "A layout page.", - "A notes page.", - "A notes master page." - ] - }, - "notesProperties": { - "$ref": "NotesProperties", - "description": "Notes specific properties. Only set if page_type = NOTES." - }, - "pageProperties": { - "description": "The properties of the page.", - "$ref": "PageProperties" - }, - "slideProperties": { - "description": "Slide specific properties. Only set if page_type = SLIDE.", - "$ref": "SlideProperties" - }, - "masterProperties": { - "$ref": "MasterProperties", - "description": "Master specific properties. Only set if page_type = MASTER." - } - }, - "id": "Page" - }, - "ShapeBackgroundFill": { - "description": "The shape background fill.", - "type": "object", - "properties": { - "propertyState": { - "description": "The background fill property state.\n\nUpdating the fill on a shape will implicitly update this field to\n`RENDERED`, unless another value is specified in the same request. To\nhave no fill on a shape, set this field to `NOT_RENDERED`. In this case,\nany other fill fields set in the same request will be ignored.", - "type": "string", - "enumDescriptions": [ - "If a property's state is RENDERED, then the element has the corresponding\nproperty when rendered on a page. If the element is a placeholder shape as\ndetermined by the placeholder\nfield, and it inherits from a placeholder shape, the corresponding field\nmay be unset, meaning that the property value is inherited from a parent\nplaceholder. If the element does not inherit, then the field will contain\nthe rendered value. This is the default value.", - "If a property's state is NOT_RENDERED, then the element does not have the\ncorresponding property when rendered on a page. However, the field may\nstill be set so it can be inherited by child shapes. To remove a property\nfrom a rendered element, set its property_state to NOT_RENDERED.", - "If a property's state is INHERIT, then the property state uses the value of\ncorresponding `property_state` field on the parent shape. Elements that do\nnot inherit will never have an INHERIT property state." - ], - "enum": [ - "RENDERED", - "NOT_RENDERED", - "INHERIT" - ] - }, - "solidFill": { - "description": "Solid color fill.", - "$ref": "SolidFill" - } - }, - "id": "ShapeBackgroundFill" - }, - "CropProperties": { - "description": "The crop properties of an object enclosed in a container. For example, an\nImage.\n\nThe crop properties is represented by the offsets of four edges which define\na crop rectangle. The offsets are measured in percentage from the\ncorresponding edges of the object's original bounding rectangle towards\ninside, relative to the object's original dimensions.\n\n- If the offset is in the interval (0, 1), the corresponding edge of crop\nrectangle is positioned inside of the object's original bounding rectangle.\n- If the offset is negative or greater than 1, the corresponding edge of crop\nrectangle is positioned outside of the object's original bounding rectangle.\n- If the left edge of the crop rectangle is on the right side of its right\nedge, the object will be flipped horizontally.\n- If the top edge of the crop rectangle is below its bottom edge, the object\nwill be flipped vertically.\n- If all offsets and rotation angle is 0, the object is not cropped.\n\nAfter cropping, the content in the crop rectangle will be stretched to fit\nits container.", - "type": "object", - "properties": { - "topOffset": { - "description": "The offset specifies the top edge of the crop rectangle that is located\nbelow the original bounding rectangle top edge, relative to the object's\noriginal height.", - "format": "float", - "type": "number" - }, - "leftOffset": { - "description": "The offset specifies the left edge of the crop rectangle that is located to\nthe right of the original bounding rectangle left edge, relative to the\nobject's original width.", - "format": "float", - "type": "number" - }, - "rightOffset": { - "description": "The offset specifies the right edge of the crop rectangle that is located\nto the left of the original bounding rectangle right edge, relative to the\nobject's original width.", - "format": "float", - "type": "number" - }, - "bottomOffset": { - "description": "The offset specifies the bottom edge of the crop rectangle that is located\nabove the original bounding rectangle bottom edge, relative to the object's\noriginal height.", - "format": "float", - "type": "number" - }, - "angle": { - "description": "The rotation angle of the crop window around its center, in radians.\nRotation angle is applied after the offset.", - "format": "float", - "type": "number" - } - }, - "id": "CropProperties" - }, - "ReplaceAllShapesWithSheetsChartRequest": { - "description": "Replaces all shapes that match the given criteria with the provided Google\nSheets chart. The chart will be scaled and centered to fit within the bounds\nof the original shape.\n\nNOTE: Replacing shapes with a chart requires at least one of the\nspreadsheets.readonly, spreadsheets, drive.readonly, or drive OAuth scopes.", - "type": "object", - "properties": { - "spreadsheetId": { - "description": "The ID of the Google Sheets spreadsheet that contains the chart.", - "type": "string" - }, - "linkingMode": { - "description": "The mode with which the chart is linked to the source spreadsheet. When\nnot specified, the chart will be an image that is not linked.", - "type": "string", - "enumDescriptions": [ - "The chart is not associated with the source spreadsheet and cannot be\nupdated. A chart that is not linked will be inserted as an image.", - "Linking the chart allows it to be updated, and other collaborators will\nsee a link to the spreadsheet." - ], - "enum": [ - "NOT_LINKED_IMAGE", - "LINKED" - ] - }, - "containsText": { - "description": "The criteria that the shapes must match in order to be replaced. The\nrequest will replace all of the shapes that contain the given text.", - "$ref": "SubstringMatchCriteria" - }, - "chartId": { - "description": "The ID of the specific chart in the Google Sheets spreadsheet.", - "format": "int32", - "type": "integer" - }, - "pageObjectIds": { - "description": "If non-empty, limits the matches to page elements only on the given pages.\n\nReturns a 400 bad request error if given the page object ID of a\nnotes page or a\nnotes master, or if a\npage with that object ID doesn't exist in the presentation.", - "type": "array", - "items": { - "type": "string" - } - } - }, - "id": "ReplaceAllShapesWithSheetsChartRequest" - }, - "ColorStop": { - "description": "A color and position in a gradient band.", - "type": "object", - "properties": { - "color": { - "description": "The color of the gradient stop.", - "$ref": "OpaqueColor" - }, - "alpha": { - "description": "The alpha value of this color in the gradient band. Defaults to 1.0,\nfully opaque.", - "format": "float", - "type": "number" - }, - "position": { - "description": "The relative position of the color stop in the gradient band measured\nin percentage. The value should be in the interval [0.0, 1.0].", - "format": "float", - "type": "number" - } - }, - "id": "ColorStop" - }, - "Range": { - "properties": { - "startIndex": { - "description": "The optional zero-based index of the beginning of the collection.\nRequired for `FIXED_RANGE` and `FROM_START_INDEX` ranges.", - "format": "int32", - "type": "integer" - }, - "endIndex": { - "description": "The optional zero-based index of the end of the collection.\nRequired for `FIXED_RANGE` ranges.", - "format": "int32", - "type": "integer" - }, - "type": { - "description": "The type of range.", - "type": "string", - "enumDescriptions": [ - "Unspecified range type. This value must not be used.", - "A fixed range. Both the `start_index` and\n`end_index` must be specified.", - "Starts the range at `start_index` and continues until the\nend of the collection. The `end_index` must not be specified.", - "Sets the range to be the whole length of the collection. Both the\n`start_index` and the `end_index` must not be\nspecified." - ], - "enum": [ - "RANGE_TYPE_UNSPECIFIED", - "FIXED_RANGE", - "FROM_START_INDEX", - "ALL" - ] - } - }, - "id": "Range", - "description": "Specifies a contiguous range of an indexed collection, such as characters in\ntext.", - "type": "object" - }, - "CreateVideoRequest": { - "description": "Creates a video.", - "type": "object", - "properties": { - "objectId": { - "description": "A user-supplied object ID.\n\nIf you specify an ID, it must be unique among all pages and page elements\nin the presentation. The ID must start with an alphanumeric character or an\nunderscore (matches regex `[a-zA-Z0-9_]`); remaining characters\nmay include those as well as a hyphen or colon (matches regex\n`[a-zA-Z0-9_-:]`).\nThe length of the ID must not be less than 5 or greater than 50.\n\nIf you don't specify an ID, a unique one is generated.", - "type": "string" - }, - "source": { - "enumDescriptions": [ - "The video source is unspecified.", - "The video source is YouTube." - ], - "enum": [ - "SOURCE_UNSPECIFIED", - "YOUTUBE" - ], - "description": "The video source.", - "type": "string" - }, - "elementProperties": { - "description": "The element properties for the video.\n\nThe PageElementProperties.size property is\noptional. If you don't specify a size, a default size is chosen by the\nserver.\n\nThe PageElementProperties.transform property is\noptional. The transform must not have shear components.\nIf you don't specify a transform, the video will be placed at the top left\ncorner of the page.", - "$ref": "PageElementProperties" - }, - "id": { - "description": "The video source's unique identifier for this video.\n\ne.g. For YouTube video https://www.youtube.com/watch?v=7U3axjORYZ0,\nthe ID is 7U3axjORYZ0.", - "type": "string" - } - }, - "id": "CreateVideoRequest" - }, - "DuplicateObjectResponse": { - "type": "object", - "properties": { - "objectId": { - "description": "The ID of the new duplicate object.", - "type": "string" - } - }, - "id": "DuplicateObjectResponse", - "description": "The response of duplicating an object." - }, - "ReplaceAllShapesWithImageRequest": { - "description": "Replaces all shapes that match the given criteria with the provided image.", - "type": "object", - "properties": { - "imageUrl": { - "description": "The image URL.\n\nThe image is fetched once at insertion time and a copy is stored for\ndisplay inside the presentation. Images must be less than 50MB in size,\ncannot exceed 25 megapixels, and must be in either in PNG, JPEG, or GIF\nformat.\n\nThe provided URL can be at most 2 kB in length.", - "type": "string" - }, - "replaceMethod": { - "enum": [ - "CENTER_INSIDE", - "CENTER_CROP" - ], - "description": "The replace method.", - "type": "string", - "enumDescriptions": [ - "Scales and centers the image to fit within the bounds of the original\nshape and maintains the image's aspect ratio. The rendered size of the\nimage may be smaller than the size of the shape. This is the default\nmethod when one is not specified.", - "Scales and centers the image to fill the bounds of the original shape.\nThe image may be cropped in order to fill the shape. The rendered size of\nthe image will be the same as that of the original shape." - ] - }, - "containsText": { - "$ref": "SubstringMatchCriteria", - "description": "If set, this request will replace all of the shapes that contain the\ngiven text." - }, - "pageObjectIds": { - "description": "If non-empty, limits the matches to page elements only on the given pages.\n\nReturns a 400 bad request error if given the page object ID of a\nnotes page or a\nnotes master, or if a\npage with that object ID doesn't exist in the presentation.", - "type": "array", - "items": { - "type": "string" - } - } - }, - "id": "ReplaceAllShapesWithImageRequest" - }, - "MergeTableCellsRequest": { - "properties": { - "objectId": { - "description": "The object ID of the table.", - "type": "string" - }, - "tableRange": { - "description": "The table range specifying which cells of the table to merge.\n\nAny text in the cells being merged will be concatenated and stored in the\nupper-left (\"head\") cell of the range. If the range is non-rectangular\n(which can occur in some cases where the range covers cells that are\nalready merged), a 400 bad request error is returned.", - "$ref": "TableRange" - } - }, - "id": "MergeTableCellsRequest", - "description": "Merges cells in a Table.", - "type": "object" - }, - "UngroupObjectsRequest": { - "description": "Ungroups objects, such as groups.", - "type": "object", - "properties": { - "objectIds": { - "description": "The object IDs of the objects to ungroup.\n\nOnly groups that are not inside other\ngroups can be ungrouped. All the groups\nshould be on the same page. The group itself is deleted. The visual sizes\nand positions of all the children are preserved.", - "type": "array", - "items": { - "type": "string" - } - } - }, - "id": "UngroupObjectsRequest" - }, "Shadow": { "description": "The shadow properties of a page element.\n\nIf these fields are unset, they may be inherited from a parent placeholder\nif it exists. If there is no parent, the fields will default to the value\nused for new page elements created in the Slides editor, which may depend on\nthe page element kind.", - "type": "object", + "id": "Shadow", "properties": { - "transform": { - "description": "Transform that encodes the translate, scale, and skew of the shadow,\nrelative to the alignment position.", - "$ref": "AffineTransform" - }, - "type": { - "enumDescriptions": [ - "Unspecified shadow type.", - "Outer shadow." - ], - "enum": [ - "SHADOW_TYPE_UNSPECIFIED", - "OUTER" - ], - "description": "The type of the shadow.", - "type": "string" - }, "alignment": { - "enumDescriptions": [ - "Unspecified.", - "Top left.", - "Top center.", - "Top right.", - "Left center.", - "Center.", - "Right center.", - "Bottom left.", - "Bottom center.", - "Bottom right." - ], + "description": "The alignment point of the shadow, that sets the origin for translate,\nscale and skew of the shadow.", "enum": [ "RECTANGLE_POSITION_UNSPECIFIED", "TOP_LEFT", @@ -1880,7 +2842,18 @@ "BOTTOM_CENTER", "BOTTOM_RIGHT" ], - "description": "The alignment point of the shadow, that sets the origin for translate,\nscale and skew of the shadow.", + "enumDescriptions": [ + "Unspecified.", + "Top left.", + "Top center.", + "Top right.", + "Left center.", + "Center.", + "Right center.", + "Bottom left.", + "Bottom center.", + "Bottom right." + ], "type": "string" }, "alpha": { @@ -1888,329 +2861,65 @@ "format": "float", "type": "number" }, + "blurRadius": { + "$ref": "Dimension", + "description": "The radius of the shadow blur. The larger the radius, the more diffuse the\nshadow becomes." + }, "color": { "$ref": "OpaqueColor", "description": "The shadow color value." }, - "rotateWithShape": { - "description": "Whether the shadow should rotate with the shape.", - "type": "boolean" - }, "propertyState": { "description": "The shadow property state.\n\nUpdating the shadow on a page element will implicitly update this field to\n`RENDERED`, unless another value is specified in the same request. To have\nno shadow on a page element, set this field to `NOT_RENDERED`. In this\ncase, any other shadow fields set in the same request will be ignored.", - "type": "string", + "enum": [ + "RENDERED", + "NOT_RENDERED", + "INHERIT" + ], "enumDescriptions": [ "If a property's state is RENDERED, then the element has the corresponding\nproperty when rendered on a page. If the element is a placeholder shape as\ndetermined by the placeholder\nfield, and it inherits from a placeholder shape, the corresponding field\nmay be unset, meaning that the property value is inherited from a parent\nplaceholder. If the element does not inherit, then the field will contain\nthe rendered value. This is the default value.", "If a property's state is NOT_RENDERED, then the element does not have the\ncorresponding property when rendered on a page. However, the field may\nstill be set so it can be inherited by child shapes. To remove a property\nfrom a rendered element, set its property_state to NOT_RENDERED.", "If a property's state is INHERIT, then the property state uses the value of\ncorresponding `property_state` field on the parent shape. Elements that do\nnot inherit will never have an INHERIT property state." ], + "type": "string" + }, + "rotateWithShape": { + "description": "Whether the shadow should rotate with the shape.", + "type": "boolean" + }, + "transform": { + "$ref": "AffineTransform", + "description": "Transform that encodes the translate, scale, and skew of the shadow,\nrelative to the alignment position." + }, + "type": { + "description": "The type of the shadow.", "enum": [ - "RENDERED", - "NOT_RENDERED", - "INHERIT" - ] - }, - "blurRadius": { - "description": "The radius of the shadow blur. The larger the radius, the more diffuse the\nshadow becomes.", - "$ref": "Dimension" - } - }, - "id": "Shadow" - }, - "DeleteTableRowRequest": { - "description": "Deletes a row from a table.", - "type": "object", - "properties": { - "cellLocation": { - "$ref": "TableCellLocation", - "description": "The reference table cell location from which a row will be deleted.\n\nThe row this cell spans will be deleted. If this is a merged cell, multiple\nrows will be deleted. If no rows remain in the table after this deletion,\nthe whole table is deleted." - }, - "tableObjectId": { - "description": "The table to delete rows from.", + "SHADOW_TYPE_UNSPECIFIED", + "OUTER" + ], + "enumDescriptions": [ + "Unspecified shadow type.", + "Outer shadow." + ], "type": "string" } }, - "id": "DeleteTableRowRequest" - }, - "Bullet": { - "description": "Describes the bullet of a paragraph.", - "type": "object", - "properties": { - "listId": { - "description": "The ID of the list this paragraph belongs to.", - "type": "string" - }, - "glyph": { - "description": "The rendered bullet glyph for this paragraph.", - "type": "string" - }, - "nestingLevel": { - "description": "The nesting level of this paragraph in the list.", - "format": "int32", - "type": "integer" - }, - "bulletStyle": { - "description": "The paragraph specific text style applied to this bullet.", - "$ref": "TextStyle" - } - }, - "id": "Bullet" - }, - "OutlineFill": { - "description": "The fill of the outline.", - "type": "object", - "properties": { - "solidFill": { - "description": "Solid color fill.", - "$ref": "SolidFill" - } - }, - "id": "OutlineFill" - }, - "CreateLineResponse": { - "description": "The result of creating a line.", - "type": "object", - "properties": { - "objectId": { - "description": "The object ID of the created line.", - "type": "string" - } - }, - "id": "CreateLineResponse" - }, - "TableCellLocation": { - "type": "object", - "properties": { - "rowIndex": { - "description": "The 0-based row index.", - "format": "int32", - "type": "integer" - }, - "columnIndex": { - "description": "The 0-based column index.", - "format": "int32", - "type": "integer" - } - }, - "id": "TableCellLocation", - "description": "A location of a single table cell within a table." - }, - "ReplaceAllTextResponse": { - "properties": { - "occurrencesChanged": { - "description": "The number of occurrences changed by replacing all text.", - "format": "int32", - "type": "integer" - } - }, - "id": "ReplaceAllTextResponse", - "description": "The result of replacing text.", "type": "object" }, - "TableBorderFill": { - "description": "The fill of the border.", - "type": "object", - "properties": { - "solidFill": { - "$ref": "SolidFill", - "description": "Solid fill." - } - }, - "id": "TableBorderFill" - }, - "UpdateParagraphStyleRequest": { - "description": "Updates the styling for all of the paragraphs within a Shape or Table that\noverlap with the given text index range.", - "type": "object", - "properties": { - "fields": { - "type": "string", - "description": "The fields that should be updated.\n\nAt least one field must be specified. The root `style` is implied and\nshould not be specified. A single `\"*\"` can be used as short-hand for\nlisting every field.\n\nFor example, to update the paragraph alignment, set `fields` to\n`\"alignment\"`.\n\nTo reset a property to its default value, include its field name in the\nfield mask but leave the field itself unset.", - "format": "google-fieldmask" - }, - "objectId": { - "description": "The object ID of the shape or table with the text to be styled.", - "type": "string" - }, - "textRange": { - "$ref": "Range", - "description": "The range of text containing the paragraph(s) to style." - }, - "cellLocation": { - "description": "The location of the cell in the table containing the paragraph(s) to\nstyle. If `object_id` refers to a table, `cell_location` must have a value.\nOtherwise, it must not.", - "$ref": "TableCellLocation" - }, - "style": { - "description": "The paragraph's style.", - "$ref": "ParagraphStyle" - } - }, - "id": "UpdateParagraphStyleRequest" - }, - "ColorScheme": { - "description": "The palette of predefined colors for a page.", - "type": "object", - "properties": { - "colors": { - "description": "The ThemeColorType and corresponding concrete color pairs.", - "type": "array", - "items": { - "$ref": "ThemeColorPair" - } - } - }, - "id": "ColorScheme" - }, "Shape": { - "id": "Shape", "description": "A PageElement kind representing a\ngeneric shape that does not have a more specific classification.", - "type": "object", + "id": "Shape", "properties": { + "placeholder": { + "$ref": "Placeholder", + "description": "Placeholders are shapes that are inherit from corresponding placeholders on\nlayouts and masters.\n\nIf set, the shape is a placeholder shape and any inherited properties\ncan be resolved by looking at the parent placeholder identified by the\nPlaceholder.parent_object_id field." + }, + "shapeProperties": { + "$ref": "ShapeProperties", + "description": "The properties of the shape." + }, "shapeType": { - "enumDescriptions": [ - "The shape type that is not predefined.", - "Text box shape.", - "Rectangle shape. Corresponds to ECMA-376 ST_ShapeType 'rect'.", - "Round corner rectangle shape. Corresponds to ECMA-376 ST_ShapeType\n'roundRect'", - "Ellipse shape. Corresponds to ECMA-376 ST_ShapeType 'ellipse'", - "Curved arc shape. Corresponds to ECMA-376 ST_ShapeType 'arc'", - "Bent arrow shape. Corresponds to ECMA-376 ST_ShapeType 'bentArrow'", - "Bent up arrow shape. Corresponds to ECMA-376 ST_ShapeType 'bentUpArrow'", - "Bevel shape. Corresponds to ECMA-376 ST_ShapeType 'bevel'", - "Block arc shape. Corresponds to ECMA-376 ST_ShapeType 'blockArc'", - "Brace pair shape. Corresponds to ECMA-376 ST_ShapeType 'bracePair'", - "Bracket pair shape. Corresponds to ECMA-376 ST_ShapeType 'bracketPair'", - "Can shape. Corresponds to ECMA-376 ST_ShapeType 'can'", - "Chevron shape. Corresponds to ECMA-376 ST_ShapeType 'chevron'", - "Chord shape. Corresponds to ECMA-376 ST_ShapeType 'chord'", - "Cloud shape. Corresponds to ECMA-376 ST_ShapeType 'cloud'", - "Corner shape. Corresponds to ECMA-376 ST_ShapeType 'corner'", - "Cube shape. Corresponds to ECMA-376 ST_ShapeType 'cube'", - "Curved down arrow shape. Corresponds to ECMA-376 ST_ShapeType\n'curvedDownArrow'", - "Curved left arrow shape. Corresponds to ECMA-376 ST_ShapeType\n'curvedLeftArrow'", - "Curved right arrow shape. Corresponds to ECMA-376 ST_ShapeType\n'curvedRightArrow'", - "Curved up arrow shape. Corresponds to ECMA-376 ST_ShapeType\n'curvedUpArrow'", - "Decagon shape. Corresponds to ECMA-376 ST_ShapeType 'decagon'", - "Diagonal stripe shape. Corresponds to ECMA-376 ST_ShapeType 'diagStripe'", - "Diamond shape. Corresponds to ECMA-376 ST_ShapeType 'diamond'", - "Dodecagon shape. Corresponds to ECMA-376 ST_ShapeType 'dodecagon'", - "Donut shape. Corresponds to ECMA-376 ST_ShapeType 'donut'", - "Double wave shape. Corresponds to ECMA-376 ST_ShapeType 'doubleWave'", - "Down arrow shape. Corresponds to ECMA-376 ST_ShapeType 'downArrow'", - "Callout down arrow shape. Corresponds to ECMA-376 ST_ShapeType\n'downArrowCallout'", - "Folded corner shape. Corresponds to ECMA-376 ST_ShapeType 'foldedCorner'", - "Frame shape. Corresponds to ECMA-376 ST_ShapeType 'frame'", - "Half frame shape. Corresponds to ECMA-376 ST_ShapeType 'halfFrame'", - "Heart shape. Corresponds to ECMA-376 ST_ShapeType 'heart'", - "Heptagon shape. Corresponds to ECMA-376 ST_ShapeType 'heptagon'", - "Hexagon shape. Corresponds to ECMA-376 ST_ShapeType 'hexagon'", - "Home plate shape. Corresponds to ECMA-376 ST_ShapeType 'homePlate'", - "Horizontal scroll shape. Corresponds to ECMA-376 ST_ShapeType\n'horizontalScroll'", - "Irregular seal 1 shape. Corresponds to ECMA-376 ST_ShapeType\n'irregularSeal1'", - "Irregular seal 2 shape. Corresponds to ECMA-376 ST_ShapeType\n'irregularSeal2'", - "Left arrow shape. Corresponds to ECMA-376 ST_ShapeType 'leftArrow'", - "Callout left arrow shape. Corresponds to ECMA-376 ST_ShapeType\n'leftArrowCallout'", - "Left brace shape. Corresponds to ECMA-376 ST_ShapeType 'leftBrace'", - "Left bracket shape. Corresponds to ECMA-376 ST_ShapeType 'leftBracket'", - "Left right arrow shape. Corresponds to ECMA-376 ST_ShapeType\n'leftRightArrow'", - "Callout left right arrow shape. Corresponds to ECMA-376 ST_ShapeType\n'leftRightArrowCallout'", - "Left right up arrow shape. Corresponds to ECMA-376 ST_ShapeType\n'leftRightUpArrow'", - "Left up arrow shape. Corresponds to ECMA-376 ST_ShapeType 'leftUpArrow'", - "Lightning bolt shape. Corresponds to ECMA-376 ST_ShapeType\n'lightningBolt'", - "Divide math shape. Corresponds to ECMA-376 ST_ShapeType 'mathDivide'", - "Equal math shape. Corresponds to ECMA-376 ST_ShapeType 'mathEqual'", - "Minus math shape. Corresponds to ECMA-376 ST_ShapeType 'mathMinus'", - "Multiply math shape. Corresponds to ECMA-376 ST_ShapeType 'mathMultiply'", - "Not equal math shape. Corresponds to ECMA-376 ST_ShapeType 'mathNotEqual'", - "Plus math shape. Corresponds to ECMA-376 ST_ShapeType 'mathPlus'", - "Moon shape. Corresponds to ECMA-376 ST_ShapeType 'moon'", - "No smoking shape. Corresponds to ECMA-376 ST_ShapeType 'noSmoking'", - "Notched right arrow shape. Corresponds to ECMA-376 ST_ShapeType\n'notchedRightArrow'", - "Octagon shape. Corresponds to ECMA-376 ST_ShapeType 'octagon'", - "Parallelogram shape. Corresponds to ECMA-376 ST_ShapeType 'parallelogram'", - "Pentagon shape. Corresponds to ECMA-376 ST_ShapeType 'pentagon'", - "Pie shape. Corresponds to ECMA-376 ST_ShapeType 'pie'", - "Plaque shape. Corresponds to ECMA-376 ST_ShapeType 'plaque'", - "Plus shape. Corresponds to ECMA-376 ST_ShapeType 'plus'", - "Quad-arrow shape. Corresponds to ECMA-376 ST_ShapeType 'quadArrow'", - "Callout quad-arrow shape. Corresponds to ECMA-376 ST_ShapeType\n'quadArrowCallout'", - "Ribbon shape. Corresponds to ECMA-376 ST_ShapeType 'ribbon'", - "Ribbon 2 shape. Corresponds to ECMA-376 ST_ShapeType 'ribbon2'", - "Right arrow shape. Corresponds to ECMA-376 ST_ShapeType 'rightArrow'", - "Callout right arrow shape. Corresponds to ECMA-376 ST_ShapeType\n'rightArrowCallout'", - "Right brace shape. Corresponds to ECMA-376 ST_ShapeType 'rightBrace'", - "Right bracket shape. Corresponds to ECMA-376 ST_ShapeType 'rightBracket'", - "One round corner rectangle shape. Corresponds to ECMA-376 ST_ShapeType\n'round1Rect'", - "Two diagonal round corner rectangle shape. Corresponds to ECMA-376\nST_ShapeType 'round2DiagRect'", - "Two same-side round corner rectangle shape. Corresponds to ECMA-376\nST_ShapeType 'round2SameRect'", - "Right triangle shape. Corresponds to ECMA-376 ST_ShapeType 'rtTriangle'", - "Smiley face shape. Corresponds to ECMA-376 ST_ShapeType 'smileyFace'", - "One snip corner rectangle shape. Corresponds to ECMA-376 ST_ShapeType\n'snip1Rect'", - "Two diagonal snip corner rectangle shape. Corresponds to ECMA-376\nST_ShapeType 'snip2DiagRect'", - "Two same-side snip corner rectangle shape. Corresponds to ECMA-376\nST_ShapeType 'snip2SameRect'", - "One snip one round corner rectangle shape. Corresponds to ECMA-376\nST_ShapeType 'snipRoundRect'", - "Ten pointed star shape. Corresponds to ECMA-376 ST_ShapeType 'star10'", - "Twelve pointed star shape. Corresponds to ECMA-376 ST_ShapeType 'star12'", - "Sixteen pointed star shape. Corresponds to ECMA-376 ST_ShapeType 'star16'", - "Twenty four pointed star shape. Corresponds to ECMA-376 ST_ShapeType\n'star24'", - "Thirty two pointed star shape. Corresponds to ECMA-376 ST_ShapeType\n'star32'", - "Four pointed star shape. Corresponds to ECMA-376 ST_ShapeType 'star4'", - "Five pointed star shape. Corresponds to ECMA-376 ST_ShapeType 'star5'", - "Six pointed star shape. Corresponds to ECMA-376 ST_ShapeType 'star6'", - "Seven pointed star shape. Corresponds to ECMA-376 ST_ShapeType 'star7'", - "Eight pointed star shape. Corresponds to ECMA-376 ST_ShapeType 'star8'", - "Striped right arrow shape. Corresponds to ECMA-376 ST_ShapeType\n'stripedRightArrow'", - "Sun shape. Corresponds to ECMA-376 ST_ShapeType 'sun'", - "Trapezoid shape. Corresponds to ECMA-376 ST_ShapeType 'trapezoid'", - "Triangle shape. Corresponds to ECMA-376 ST_ShapeType 'triangle'", - "Up arrow shape. Corresponds to ECMA-376 ST_ShapeType 'upArrow'", - "Callout up arrow shape. Corresponds to ECMA-376 ST_ShapeType\n'upArrowCallout'", - "Up down arrow shape. Corresponds to ECMA-376 ST_ShapeType 'upDownArrow'", - "U-turn arrow shape. Corresponds to ECMA-376 ST_ShapeType 'uturnArrow'", - "Vertical scroll shape. Corresponds to ECMA-376 ST_ShapeType\n'verticalScroll'", - "Wave shape. Corresponds to ECMA-376 ST_ShapeType 'wave'", - "Callout wedge ellipse shape. Corresponds to ECMA-376 ST_ShapeType\n'wedgeEllipseCallout'", - "Callout wedge rectangle shape. Corresponds to ECMA-376 ST_ShapeType\n'wedgeRectCallout'", - "Callout wedge round rectangle shape. Corresponds to ECMA-376 ST_ShapeType\n'wedgeRoundRectCallout'", - "Alternate process flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartAlternateProcess'", - "Collate flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartCollate'", - "Connector flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartConnector'", - "Decision flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartDecision'", - "Delay flow shape. Corresponds to ECMA-376 ST_ShapeType 'flowChartDelay'", - "Display flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartDisplay'", - "Document flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartDocument'", - "Extract flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartExtract'", - "Input output flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartInputOutput'", - "Internal storage flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartInternalStorage'", - "Magnetic disk flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartMagneticDisk'", - "Magnetic drum flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartMagneticDrum'", - "Magnetic tape flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartMagneticTape'", - "Manual input flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartManualInput'", - "Manual operation flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartManualOperation'", - "Merge flow shape. Corresponds to ECMA-376 ST_ShapeType 'flowChartMerge'", - "Multi-document flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartMultidocument'", - "Offline storage flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartOfflineStorage'", - "Off-page connector flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartOffpageConnector'", - "Online storage flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartOnlineStorage'", - "Or flow shape. Corresponds to ECMA-376 ST_ShapeType 'flowChartOr'", - "Predefined process flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartPredefinedProcess'", - "Preparation flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartPreparation'", - "Process flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartProcess'", - "Punched card flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartPunchedCard'", - "Punched tape flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartPunchedTape'", - "Sort flow shape. Corresponds to ECMA-376 ST_ShapeType 'flowChartSort'", - "Summing junction flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartSummingJunction'", - "Terminator flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartTerminator'", - "East arrow shape.", - "Northeast arrow shape.", - "North arrow shape.", - "Speech shape.", - "Star burst shape.", - "Teardrop shape. Corresponds to ECMA-376 ST_ShapeType 'teardrop'", - "Ellipse ribbon shape. Corresponds to ECMA-376 ST_ShapeType\n'ellipseRibbon'", - "Ellipse ribbon 2 shape. Corresponds to ECMA-376 ST_ShapeType\n'ellipseRibbon2'", - "Callout cloud shape. Corresponds to ECMA-376 ST_ShapeType 'cloudCallout'", - "Custom shape." - ], + "description": "The type of the shape.", "enum": [ "TYPE_UNSPECIFIED", "TEXT_BOX", @@ -2356,698 +3065,279 @@ "CLOUD_CALLOUT", "CUSTOM" ], - "description": "The type of the shape.", + "enumDescriptions": [ + "The shape type that is not predefined.", + "Text box shape.", + "Rectangle shape. Corresponds to ECMA-376 ST_ShapeType 'rect'.", + "Round corner rectangle shape. Corresponds to ECMA-376 ST_ShapeType\n'roundRect'", + "Ellipse shape. Corresponds to ECMA-376 ST_ShapeType 'ellipse'", + "Curved arc shape. Corresponds to ECMA-376 ST_ShapeType 'arc'", + "Bent arrow shape. Corresponds to ECMA-376 ST_ShapeType 'bentArrow'", + "Bent up arrow shape. Corresponds to ECMA-376 ST_ShapeType 'bentUpArrow'", + "Bevel shape. Corresponds to ECMA-376 ST_ShapeType 'bevel'", + "Block arc shape. Corresponds to ECMA-376 ST_ShapeType 'blockArc'", + "Brace pair shape. Corresponds to ECMA-376 ST_ShapeType 'bracePair'", + "Bracket pair shape. Corresponds to ECMA-376 ST_ShapeType 'bracketPair'", + "Can shape. Corresponds to ECMA-376 ST_ShapeType 'can'", + "Chevron shape. Corresponds to ECMA-376 ST_ShapeType 'chevron'", + "Chord shape. Corresponds to ECMA-376 ST_ShapeType 'chord'", + "Cloud shape. Corresponds to ECMA-376 ST_ShapeType 'cloud'", + "Corner shape. Corresponds to ECMA-376 ST_ShapeType 'corner'", + "Cube shape. Corresponds to ECMA-376 ST_ShapeType 'cube'", + "Curved down arrow shape. Corresponds to ECMA-376 ST_ShapeType\n'curvedDownArrow'", + "Curved left arrow shape. Corresponds to ECMA-376 ST_ShapeType\n'curvedLeftArrow'", + "Curved right arrow shape. Corresponds to ECMA-376 ST_ShapeType\n'curvedRightArrow'", + "Curved up arrow shape. Corresponds to ECMA-376 ST_ShapeType\n'curvedUpArrow'", + "Decagon shape. Corresponds to ECMA-376 ST_ShapeType 'decagon'", + "Diagonal stripe shape. Corresponds to ECMA-376 ST_ShapeType 'diagStripe'", + "Diamond shape. Corresponds to ECMA-376 ST_ShapeType 'diamond'", + "Dodecagon shape. Corresponds to ECMA-376 ST_ShapeType 'dodecagon'", + "Donut shape. Corresponds to ECMA-376 ST_ShapeType 'donut'", + "Double wave shape. Corresponds to ECMA-376 ST_ShapeType 'doubleWave'", + "Down arrow shape. Corresponds to ECMA-376 ST_ShapeType 'downArrow'", + "Callout down arrow shape. Corresponds to ECMA-376 ST_ShapeType\n'downArrowCallout'", + "Folded corner shape. Corresponds to ECMA-376 ST_ShapeType 'foldedCorner'", + "Frame shape. Corresponds to ECMA-376 ST_ShapeType 'frame'", + "Half frame shape. Corresponds to ECMA-376 ST_ShapeType 'halfFrame'", + "Heart shape. Corresponds to ECMA-376 ST_ShapeType 'heart'", + "Heptagon shape. Corresponds to ECMA-376 ST_ShapeType 'heptagon'", + "Hexagon shape. Corresponds to ECMA-376 ST_ShapeType 'hexagon'", + "Home plate shape. Corresponds to ECMA-376 ST_ShapeType 'homePlate'", + "Horizontal scroll shape. Corresponds to ECMA-376 ST_ShapeType\n'horizontalScroll'", + "Irregular seal 1 shape. Corresponds to ECMA-376 ST_ShapeType\n'irregularSeal1'", + "Irregular seal 2 shape. Corresponds to ECMA-376 ST_ShapeType\n'irregularSeal2'", + "Left arrow shape. Corresponds to ECMA-376 ST_ShapeType 'leftArrow'", + "Callout left arrow shape. Corresponds to ECMA-376 ST_ShapeType\n'leftArrowCallout'", + "Left brace shape. Corresponds to ECMA-376 ST_ShapeType 'leftBrace'", + "Left bracket shape. Corresponds to ECMA-376 ST_ShapeType 'leftBracket'", + "Left right arrow shape. Corresponds to ECMA-376 ST_ShapeType\n'leftRightArrow'", + "Callout left right arrow shape. Corresponds to ECMA-376 ST_ShapeType\n'leftRightArrowCallout'", + "Left right up arrow shape. Corresponds to ECMA-376 ST_ShapeType\n'leftRightUpArrow'", + "Left up arrow shape. Corresponds to ECMA-376 ST_ShapeType 'leftUpArrow'", + "Lightning bolt shape. Corresponds to ECMA-376 ST_ShapeType\n'lightningBolt'", + "Divide math shape. Corresponds to ECMA-376 ST_ShapeType 'mathDivide'", + "Equal math shape. Corresponds to ECMA-376 ST_ShapeType 'mathEqual'", + "Minus math shape. Corresponds to ECMA-376 ST_ShapeType 'mathMinus'", + "Multiply math shape. Corresponds to ECMA-376 ST_ShapeType 'mathMultiply'", + "Not equal math shape. Corresponds to ECMA-376 ST_ShapeType 'mathNotEqual'", + "Plus math shape. Corresponds to ECMA-376 ST_ShapeType 'mathPlus'", + "Moon shape. Corresponds to ECMA-376 ST_ShapeType 'moon'", + "No smoking shape. Corresponds to ECMA-376 ST_ShapeType 'noSmoking'", + "Notched right arrow shape. Corresponds to ECMA-376 ST_ShapeType\n'notchedRightArrow'", + "Octagon shape. Corresponds to ECMA-376 ST_ShapeType 'octagon'", + "Parallelogram shape. Corresponds to ECMA-376 ST_ShapeType 'parallelogram'", + "Pentagon shape. Corresponds to ECMA-376 ST_ShapeType 'pentagon'", + "Pie shape. Corresponds to ECMA-376 ST_ShapeType 'pie'", + "Plaque shape. Corresponds to ECMA-376 ST_ShapeType 'plaque'", + "Plus shape. Corresponds to ECMA-376 ST_ShapeType 'plus'", + "Quad-arrow shape. Corresponds to ECMA-376 ST_ShapeType 'quadArrow'", + "Callout quad-arrow shape. Corresponds to ECMA-376 ST_ShapeType\n'quadArrowCallout'", + "Ribbon shape. Corresponds to ECMA-376 ST_ShapeType 'ribbon'", + "Ribbon 2 shape. Corresponds to ECMA-376 ST_ShapeType 'ribbon2'", + "Right arrow shape. Corresponds to ECMA-376 ST_ShapeType 'rightArrow'", + "Callout right arrow shape. Corresponds to ECMA-376 ST_ShapeType\n'rightArrowCallout'", + "Right brace shape. Corresponds to ECMA-376 ST_ShapeType 'rightBrace'", + "Right bracket shape. Corresponds to ECMA-376 ST_ShapeType 'rightBracket'", + "One round corner rectangle shape. Corresponds to ECMA-376 ST_ShapeType\n'round1Rect'", + "Two diagonal round corner rectangle shape. Corresponds to ECMA-376\nST_ShapeType 'round2DiagRect'", + "Two same-side round corner rectangle shape. Corresponds to ECMA-376\nST_ShapeType 'round2SameRect'", + "Right triangle shape. Corresponds to ECMA-376 ST_ShapeType 'rtTriangle'", + "Smiley face shape. Corresponds to ECMA-376 ST_ShapeType 'smileyFace'", + "One snip corner rectangle shape. Corresponds to ECMA-376 ST_ShapeType\n'snip1Rect'", + "Two diagonal snip corner rectangle shape. Corresponds to ECMA-376\nST_ShapeType 'snip2DiagRect'", + "Two same-side snip corner rectangle shape. Corresponds to ECMA-376\nST_ShapeType 'snip2SameRect'", + "One snip one round corner rectangle shape. Corresponds to ECMA-376\nST_ShapeType 'snipRoundRect'", + "Ten pointed star shape. Corresponds to ECMA-376 ST_ShapeType 'star10'", + "Twelve pointed star shape. Corresponds to ECMA-376 ST_ShapeType 'star12'", + "Sixteen pointed star shape. Corresponds to ECMA-376 ST_ShapeType 'star16'", + "Twenty four pointed star shape. Corresponds to ECMA-376 ST_ShapeType\n'star24'", + "Thirty two pointed star shape. Corresponds to ECMA-376 ST_ShapeType\n'star32'", + "Four pointed star shape. Corresponds to ECMA-376 ST_ShapeType 'star4'", + "Five pointed star shape. Corresponds to ECMA-376 ST_ShapeType 'star5'", + "Six pointed star shape. Corresponds to ECMA-376 ST_ShapeType 'star6'", + "Seven pointed star shape. Corresponds to ECMA-376 ST_ShapeType 'star7'", + "Eight pointed star shape. Corresponds to ECMA-376 ST_ShapeType 'star8'", + "Striped right arrow shape. Corresponds to ECMA-376 ST_ShapeType\n'stripedRightArrow'", + "Sun shape. Corresponds to ECMA-376 ST_ShapeType 'sun'", + "Trapezoid shape. Corresponds to ECMA-376 ST_ShapeType 'trapezoid'", + "Triangle shape. Corresponds to ECMA-376 ST_ShapeType 'triangle'", + "Up arrow shape. Corresponds to ECMA-376 ST_ShapeType 'upArrow'", + "Callout up arrow shape. Corresponds to ECMA-376 ST_ShapeType\n'upArrowCallout'", + "Up down arrow shape. Corresponds to ECMA-376 ST_ShapeType 'upDownArrow'", + "U-turn arrow shape. Corresponds to ECMA-376 ST_ShapeType 'uturnArrow'", + "Vertical scroll shape. Corresponds to ECMA-376 ST_ShapeType\n'verticalScroll'", + "Wave shape. Corresponds to ECMA-376 ST_ShapeType 'wave'", + "Callout wedge ellipse shape. Corresponds to ECMA-376 ST_ShapeType\n'wedgeEllipseCallout'", + "Callout wedge rectangle shape. Corresponds to ECMA-376 ST_ShapeType\n'wedgeRectCallout'", + "Callout wedge round rectangle shape. Corresponds to ECMA-376 ST_ShapeType\n'wedgeRoundRectCallout'", + "Alternate process flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartAlternateProcess'", + "Collate flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartCollate'", + "Connector flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartConnector'", + "Decision flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartDecision'", + "Delay flow shape. Corresponds to ECMA-376 ST_ShapeType 'flowChartDelay'", + "Display flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartDisplay'", + "Document flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartDocument'", + "Extract flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartExtract'", + "Input output flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartInputOutput'", + "Internal storage flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartInternalStorage'", + "Magnetic disk flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartMagneticDisk'", + "Magnetic drum flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartMagneticDrum'", + "Magnetic tape flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartMagneticTape'", + "Manual input flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartManualInput'", + "Manual operation flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartManualOperation'", + "Merge flow shape. Corresponds to ECMA-376 ST_ShapeType 'flowChartMerge'", + "Multi-document flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartMultidocument'", + "Offline storage flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartOfflineStorage'", + "Off-page connector flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartOffpageConnector'", + "Online storage flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartOnlineStorage'", + "Or flow shape. Corresponds to ECMA-376 ST_ShapeType 'flowChartOr'", + "Predefined process flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartPredefinedProcess'", + "Preparation flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartPreparation'", + "Process flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartProcess'", + "Punched card flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartPunchedCard'", + "Punched tape flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartPunchedTape'", + "Sort flow shape. Corresponds to ECMA-376 ST_ShapeType 'flowChartSort'", + "Summing junction flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartSummingJunction'", + "Terminator flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartTerminator'", + "East arrow shape.", + "Northeast arrow shape.", + "North arrow shape.", + "Speech shape.", + "Star burst shape.", + "Teardrop shape. Corresponds to ECMA-376 ST_ShapeType 'teardrop'", + "Ellipse ribbon shape. Corresponds to ECMA-376 ST_ShapeType\n'ellipseRibbon'", + "Ellipse ribbon 2 shape. Corresponds to ECMA-376 ST_ShapeType\n'ellipseRibbon2'", + "Callout cloud shape. Corresponds to ECMA-376 ST_ShapeType 'cloudCallout'", + "Custom shape." + ], "type": "string" }, "text": { "$ref": "TextContent", "description": "The text content of the shape." - }, - "placeholder": { - "$ref": "Placeholder", - "description": "Placeholders are shapes that are inherit from corresponding placeholders on\nlayouts and masters.\n\nIf set, the shape is a placeholder shape and any inherited properties\ncan be resolved by looking at the parent placeholder identified by the\nPlaceholder.parent_object_id field." - }, - "shapeProperties": { - "description": "The properties of the shape.", - "$ref": "ShapeProperties" - } - } - }, - "Image": { - "description": "A PageElement kind representing an\nimage.", - "type": "object", - "properties": { - "imageProperties": { - "$ref": "ImageProperties", - "description": "The properties of the image." - }, - "contentUrl": { - "description": "An URL to an image with a default lifetime of 30 minutes.\nThis URL is tagged with the account of the requester. Anyone with the URL\neffectively accesses the image as the original requester. Access to the\nimage may be lost if the presentation's sharing settings change.", - "type": "string" } }, - "id": "Image" - }, - "AffineTransform": { - "type": "object", - "properties": { - "scaleX": { - "description": "The X coordinate scaling element.", - "format": "double", - "type": "number" - }, - "shearX": { - "description": "The X coordinate shearing element.", - "format": "double", - "type": "number" - }, - "scaleY": { - "description": "The Y coordinate scaling element.", - "format": "double", - "type": "number" - }, - "translateY": { - "description": "The Y coordinate translation element.", - "format": "double", - "type": "number" - }, - "translateX": { - "description": "The X coordinate translation element.", - "format": "double", - "type": "number" - }, - "shearY": { - "description": "The Y coordinate shearing element.", - "format": "double", - "type": "number" - }, - "unit": { - "enumDescriptions": [ - "The units are unknown.", - "An English Metric Unit (EMU) is defined as 1/360,000 of a centimeter\nand thus there are 914,400 EMUs per inch, and 12,700 EMUs per point.", - "A point, 1/72 of an inch." - ], - "enum": [ - "UNIT_UNSPECIFIED", - "EMU", - "PT" - ], - "description": "The units for translate elements.", - "type": "string" - } - }, - "id": "AffineTransform", - "description": "AffineTransform uses a 3x3 matrix with an implied last row of [ 0 0 1 ]\nto transform source coordinates (x,y) into destination coordinates (x', y')\naccording to:\n\n x' x = shear_y scale_y translate_y \n 1 [ 1 ]\n\nAfter transformation,\n\n x' = scale_x * x + shear_x * y + translate_x;\n y' = scale_y * y + shear_y * x + translate_y;\n\nThis message is therefore composed of these six matrix elements." - }, - "InsertTextRequest": { - "type": "object", - "properties": { - "objectId": { - "description": "The object ID of the shape or table where the text will be inserted.", - "type": "string" - }, - "text": { - "description": "The text to be inserted.\n\nInserting a newline character will implicitly create a new\nParagraphMarker at that index.\nThe paragraph style of the new paragraph will be copied from the paragraph\nat the current insertion index, including lists and bullets.\n\nText styles for inserted text will be determined automatically, generally\npreserving the styling of neighboring text. In most cases, the text will be\nadded to the TextRun that exists at the\ninsertion index.\n\nSome control characters (U+0000-U+0008, U+000C-U+001F) and characters\nfrom the Unicode Basic Multilingual Plane Private Use Area (U+E000-U+F8FF)\nwill be stripped out of the inserted text.", - "type": "string" - }, - "insertionIndex": { - "description": "The index where the text will be inserted, in Unicode code units, based\non TextElement indexes.\n\nThe index is zero-based and is computed from the start of the string.\nThe index may be adjusted to prevent insertions inside Unicode grapheme\nclusters. In these cases, the text will be inserted immediately after the\ngrapheme cluster.", - "format": "int32", - "type": "integer" - }, - "cellLocation": { - "$ref": "TableCellLocation", - "description": "The optional table cell location if the text is to be inserted into a table\ncell. If present, the object_id must refer to a table." - } - }, - "id": "InsertTextRequest", - "description": "Inserts text into a shape or a table cell." - }, - "AutoText": { - "type": "object", - "properties": { - "type": { - "enumDescriptions": [ - "An unspecified autotext type.", - "Type for autotext that represents the current slide number." - ], - "enum": [ - "TYPE_UNSPECIFIED", - "SLIDE_NUMBER" - ], - "description": "The type of this auto text.", - "type": "string" - }, - "content": { - "description": "The rendered content of this auto text, if available.", - "type": "string" - }, - "style": { - "description": "The styling applied to this auto text.", - "$ref": "TextStyle" - } - }, - "id": "AutoText", - "description": "A TextElement kind that represents auto text." - }, - "CreateVideoResponse": { - "description": "The result of creating a video.", - "type": "object", - "properties": { - "objectId": { - "description": "The object ID of the created video.", - "type": "string" - } - }, - "id": "CreateVideoResponse" - }, - "UpdatePageElementTransformRequest": { - "description": "Updates the transform of a page element.\n\nUpdating the transform of a group will change the absolute transform of the\npage elements in that group, which can change their visual appearance. See\nthe documentation for PageElement.transform for more details.", - "type": "object", - "properties": { - "objectId": { - "description": "The object ID of the page element to update.", - "type": "string" - }, - "transform": { - "$ref": "AffineTransform", - "description": "The input transform matrix used to update the page element." - }, - "applyMode": { - "type": "string", - "enumDescriptions": [ - "Unspecified mode.", - "Applies the new AffineTransform matrix to the existing one, and\nreplaces the existing one with the resulting concatenation.", - "Replaces the existing AffineTransform matrix with the new one." - ], - "enum": [ - "APPLY_MODE_UNSPECIFIED", - "RELATIVE", - "ABSOLUTE" - ], - "description": "The apply mode of the transform update." - } - }, - "id": "UpdatePageElementTransformRequest" - }, - "DeleteTextRequest": { - "description": "Deletes text from a shape or a table cell.", - "type": "object", - "properties": { - "cellLocation": { - "$ref": "TableCellLocation", - "description": "The optional table cell location if the text is to be deleted from a table\ncell. If present, the object_id must refer to a table." - }, - "objectId": { - "description": "The object ID of the shape or table from which the text will be deleted.", - "type": "string" - }, - "textRange": { - "$ref": "Range", - "description": "The range of text to delete, based on TextElement indexes.\n\nThere is always an implicit newline character at the end of a shape's or\ntable cell's text that cannot be deleted. `Range.Type.ALL` will use the\ncorrect bounds, but care must be taken when specifying explicit bounds for\nrange types `FROM_START_INDEX` and `FIXED_RANGE`. For example, if the text\nis \"ABC\", followed by an implicit newline, then the maximum value is 2 for\n`text_range.start_index` and 3 for `text_range.end_index`.\n\nDeleting text that crosses a paragraph boundary may result in changes\nto paragraph styles and lists as the two paragraphs are merged.\n\nRanges that include only one code unit of a surrogate pair are expanded to\ninclude both code units." - } - }, - "id": "DeleteTextRequest" - }, - "DeleteObjectRequest": { - "description": "Deletes an object, either pages or\npage elements, from the\npresentation.", - "type": "object", - "properties": { - "objectId": { - "description": "The object ID of the page or page element to delete.\n\nIf after a delete operation a group contains\nonly 1 or no page elements, the group is also deleted.\n\nIf a placeholder is deleted on a layout, any empty inheriting shapes are\nalso deleted.", - "type": "string" - } - }, - "id": "DeleteObjectRequest" - }, - "TextElement": { - "properties": { - "textRun": { - "$ref": "TextRun", - "description": "A TextElement representing a run of text where all of the characters\nin the run have the same TextStyle.\n\nThe `start_index` and `end_index` of TextRuns will always be fully\ncontained in the index range of a single `paragraph_marker` TextElement.\nIn other words, a TextRun will never span multiple paragraphs." - }, - "autoText": { - "$ref": "AutoText", - "description": "A TextElement representing a spot in the text that is dynamically\nreplaced with content that can change over time." - }, - "paragraphMarker": { - "$ref": "ParagraphMarker", - "description": "A marker representing the beginning of a new paragraph.\n\nThe `start_index` and `end_index` of this TextElement represent the\nrange of the paragraph. Other TextElements with an index range contained\ninside this paragraph's range are considered to be part of this\nparagraph. The range of indices of two separate paragraphs will never\noverlap." - }, - "startIndex": { - "description": "The zero-based start index of this text element, in Unicode code units.", - "format": "int32", - "type": "integer" - }, - "endIndex": { - "description": "The zero-based end index of this text element, exclusive, in Unicode code\nunits.", - "format": "int32", - "type": "integer" - } - }, - "id": "TextElement", - "description": "A TextElement describes the content of a range of indices in the text content\nof a Shape or TableCell.", "type": "object" }, - "Dimension": { - "type": "object", + "ShapeBackgroundFill": { + "description": "The shape background fill.", + "id": "ShapeBackgroundFill", "properties": { - "unit": { - "enumDescriptions": [ - "The units are unknown.", - "An English Metric Unit (EMU) is defined as 1/360,000 of a centimeter\nand thus there are 914,400 EMUs per inch, and 12,700 EMUs per point.", - "A point, 1/72 of an inch." - ], + "propertyState": { + "description": "The background fill property state.\n\nUpdating the fill on a shape will implicitly update this field to\n`RENDERED`, unless another value is specified in the same request. To\nhave no fill on a shape, set this field to `NOT_RENDERED`. In this case,\nany other fill fields set in the same request will be ignored.", "enum": [ - "UNIT_UNSPECIFIED", - "EMU", - "PT" + "RENDERED", + "NOT_RENDERED", + "INHERIT" + ], + "enumDescriptions": [ + "If a property's state is RENDERED, then the element has the corresponding\nproperty when rendered on a page. If the element is a placeholder shape as\ndetermined by the placeholder\nfield, and it inherits from a placeholder shape, the corresponding field\nmay be unset, meaning that the property value is inherited from a parent\nplaceholder. If the element does not inherit, then the field will contain\nthe rendered value. This is the default value.", + "If a property's state is NOT_RENDERED, then the element does not have the\ncorresponding property when rendered on a page. However, the field may\nstill be set so it can be inherited by child shapes. To remove a property\nfrom a rendered element, set its property_state to NOT_RENDERED.", + "If a property's state is INHERIT, then the property state uses the value of\ncorresponding `property_state` field on the parent shape. Elements that do\nnot inherit will never have an INHERIT property state." ], - "description": "The units for magnitude.", "type": "string" }, - "magnitude": { - "description": "The magnitude.", - "format": "double", - "type": "number" - } - }, - "id": "Dimension", - "description": "A magnitude in a single direction in the specified units." - }, - "LineFill": { - "description": "The fill of the line.", - "type": "object", - "properties": { "solidFill": { "$ref": "SolidFill", "description": "Solid color fill." } }, - "id": "LineFill" + "type": "object" }, - "VideoProperties": { - "description": "The properties of the Video.", - "type": "object", + "ShapeProperties": { + "description": "The properties of a Shape.\n\nIf the shape is a placeholder shape as determined by the\nplaceholder field, then these\nproperties may be inherited from a parent placeholder shape.\nDetermining the rendered value of the property depends on the corresponding\nproperty_state field value.", + "id": "ShapeProperties", "properties": { - "outline": { - "$ref": "Outline", - "description": "The outline of the video. The default outline matches the defaults for new\nvideos created in the Slides editor." - } - }, - "id": "VideoProperties" - }, - "InsertTableRowsRequest": { - "id": "InsertTableRowsRequest", - "description": "Inserts rows into a table.", - "type": "object", - "properties": { - "number": { - "description": "The number of rows to be inserted. Maximum 20 per request.", - "format": "int32", - "type": "integer" - }, - "cellLocation": { - "$ref": "TableCellLocation", - "description": "The reference table cell location from which rows will be inserted.\n\nA new row will be inserted above (or below) the row where the reference\ncell is. If the reference cell is a merged cell, a new row will be\ninserted above (or below) the merged cell." - }, - "tableObjectId": { - "description": "The table to insert rows into.", - "type": "string" - }, - "insertBelow": { - "description": "Whether to insert new rows below the reference cell location.\n\n- `True`: insert below the cell.\n- `False`: insert above the cell.", - "type": "boolean" - } - } - }, - "LayoutProperties": { - "description": "The properties of Page are only\nrelevant for pages with page_type LAYOUT.", - "type": "object", - "properties": { - "displayName": { - "type": "string", - "description": "The human-readable name of the layout." - }, - "masterObjectId": { - "description": "The object ID of the master that this layout is based on.", - "type": "string" - }, - "name": { - "description": "The name of the layout.", - "type": "string" - } - }, - "id": "LayoutProperties" - }, - "LineProperties": { - "description": "The properties of the Line.\n\nWhen unset, these fields default to values that match the appearance of\nnew lines created in the Slides editor.", - "type": "object", - "properties": { - "startArrow": { + "contentAlignment": { + "description": "The alignment of the content in the shape. If unspecified,\nthe alignment is inherited from a parent placeholder if it exists. If the\nshape has no parent, the default alignment matches the alignment for new\nshapes created in the Slides editor.", "enum": [ - "ARROW_STYLE_UNSPECIFIED", - "NONE", - "STEALTH_ARROW", - "FILL_ARROW", - "FILL_CIRCLE", - "FILL_SQUARE", - "FILL_DIAMOND", - "OPEN_ARROW", - "OPEN_CIRCLE", - "OPEN_SQUARE", - "OPEN_DIAMOND" + "CONTENT_ALIGNMENT_UNSPECIFIED", + "CONTENT_ALIGNMENT_UNSUPPORTED", + "TOP", + "MIDDLE", + "BOTTOM" ], - "description": "The style of the arrow at the beginning of the line.", - "type": "string", "enumDescriptions": [ - "An unspecified arrow style.", - "No arrow.", - "Arrow with notched back. Corresponds to ECMA-376 ST_LineEndType value\n'stealth'.", - "Filled arrow. Corresponds to ECMA-376 ST_LineEndType value 'triangle'.", - "Filled circle. Corresponds to ECMA-376 ST_LineEndType value 'oval'.", - "Filled square.", - "Filled diamond. Corresponds to ECMA-376 ST_LineEndType value 'diamond'.", - "Hollow arrow.", - "Hollow circle.", - "Hollow square.", - "Hollow diamond." - ] - }, - "endArrow": { - "enum": [ - "ARROW_STYLE_UNSPECIFIED", - "NONE", - "STEALTH_ARROW", - "FILL_ARROW", - "FILL_CIRCLE", - "FILL_SQUARE", - "FILL_DIAMOND", - "OPEN_ARROW", - "OPEN_CIRCLE", - "OPEN_SQUARE", - "OPEN_DIAMOND" + "An unspecified content alignment. The content alignment is inherited from\nthe parent if it exists.", + "An unsupported content alignment.", + "An alignment that aligns the content to the top of the content holder.\nCorresponds to ECMA-376 ST_TextAnchoringType 't'.", + "An alignment that aligns the content to the middle of the content\nholder. Corresponds to ECMA-376 ST_TextAnchoringType 'ctr'.", + "An alignment that aligns the content to the bottom of the content\nholder. Corresponds to ECMA-376 ST_TextAnchoringType 'b'." ], - "description": "The style of the arrow at the end of the line.", - "type": "string", - "enumDescriptions": [ - "An unspecified arrow style.", - "No arrow.", - "Arrow with notched back. Corresponds to ECMA-376 ST_LineEndType value\n'stealth'.", - "Filled arrow. Corresponds to ECMA-376 ST_LineEndType value 'triangle'.", - "Filled circle. Corresponds to ECMA-376 ST_LineEndType value 'oval'.", - "Filled square.", - "Filled diamond. Corresponds to ECMA-376 ST_LineEndType value 'diamond'.", - "Hollow arrow.", - "Hollow circle.", - "Hollow square.", - "Hollow diamond." - ] - }, - "weight": { - "$ref": "Dimension", - "description": "The thickness of the line." - }, - "lineFill": { - "$ref": "LineFill", - "description": "The fill of the line. The default line fill matches the defaults for new\nlines created in the Slides editor." - }, - "link": { - "description": "The hyperlink destination of the line. If unset, there is no link.", - "$ref": "Link" - }, - "dashStyle": { - "enum": [ - "DASH_STYLE_UNSPECIFIED", - "SOLID", - "DOT", - "DASH", - "DASH_DOT", - "LONG_DASH", - "LONG_DASH_DOT" - ], - "description": "The dash style of the line.", - "type": "string", - "enumDescriptions": [ - "Unspecified dash style.", - "Solid line. Corresponds to ECMA-376 ST_PresetLineDashVal value 'solid'.\nThis is the default dash style.", - "Dotted line. Corresponds to ECMA-376 ST_PresetLineDashVal value 'dot'.", - "Dashed line. Corresponds to ECMA-376 ST_PresetLineDashVal value 'dash'.", - "Alternating dashes and dots. Corresponds to ECMA-376 ST_PresetLineDashVal\nvalue 'dashDot'.", - "Line with large dashes. Corresponds to ECMA-376 ST_PresetLineDashVal\nvalue 'lgDash'.", - "Alternating large dashes and dots. Corresponds to ECMA-376\nST_PresetLineDashVal value 'lgDashDot'." - ] - } - }, - "id": "LineProperties" - }, - "Presentation": { - "description": "A Google Slides presentation.", - "type": "object", - "properties": { - "presentationId": { - "description": "The ID of the presentation.", "type": "string" }, - "slides": { - "description": "The slides in the presentation.\nA slide inherits properties from a slide layout.", - "type": "array", - "items": { - "$ref": "Page" - } - }, - "revisionId": { - "description": "The revision ID of the presentation. Can be used in update requests\nto assert that the presentation revision hasn't changed since the last\nread operation. Only populated if the user has edit access to the\npresentation.\n\nThe format of the revision ID may change over time, so it should be treated\nopaquely. A returned revision ID is only guaranteed to be valid for 24\nhours after it has been returned and cannot be shared across users. If the\nrevision ID is unchanged between calls, then the presentation has not\nchanged. Conversely, a changed ID (for the same presentation and user)\nusually means the presentation has been updated; however, a changed ID can\nalso be due to internal factors such as ID format changes.", - "type": "string" - }, - "notesMaster": { - "$ref": "Page", - "description": "The notes master in the presentation. It serves three purposes:\n\n- Placeholder shapes on a notes master contain the default text styles and\n shape properties of all placeholder shapes on notes pages. Specifically,\n a `SLIDE_IMAGE` placeholder shape contains the slide thumbnail, and a\n `BODY` placeholder shape contains the speaker notes.\n- The notes master page properties define the common page properties\n inherited by all notes pages.\n- Any other shapes on the notes master will appear on all notes pages.\n\nThe notes master is read-only." - }, - "title": { - "description": "The title of the presentation.", - "type": "string" - }, - "layouts": { - "description": "The layouts in the presentation. A layout is a template that determines\nhow content is arranged and styled on the slides that inherit from that\nlayout.", - "type": "array", - "items": { - "$ref": "Page" - } - }, - "masters": { - "description": "The slide masters in the presentation. A slide master contains all common\npage elements and the common properties for a set of layouts. They serve\nthree purposes:\n\n- Placeholder shapes on a master contain the default text styles and shape\n properties of all placeholder shapes on pages that use that master.\n- The master page properties define the common page properties inherited by\n its layouts.\n- Any other shapes on the master slide will appear on all slides using that\n master, regardless of their layout.", - "type": "array", - "items": { - "$ref": "Page" - } - }, - "locale": { - "description": "The locale of the presentation, as an IETF BCP 47 language tag.", - "type": "string" - }, - "pageSize": { - "$ref": "Size", - "description": "The size of pages in the presentation." - } - }, - "id": "Presentation" - }, - "OpaqueColor": { - "description": "A themeable solid color value.", - "type": "object", - "properties": { - "rgbColor": { - "$ref": "RgbColor", - "description": "An opaque RGB color." - }, - "themeColor": { - "enum": [ - "THEME_COLOR_TYPE_UNSPECIFIED", - "DARK1", - "LIGHT1", - "DARK2", - "LIGHT2", - "ACCENT1", - "ACCENT2", - "ACCENT3", - "ACCENT4", - "ACCENT5", - "ACCENT6", - "HYPERLINK", - "FOLLOWED_HYPERLINK", - "TEXT1", - "BACKGROUND1", - "TEXT2", - "BACKGROUND2" - ], - "description": "An opaque theme color.", - "type": "string", - "enumDescriptions": [ - "Unspecified theme color. This value should not be used.", - "Represents the first dark color.", - "Represents the first light color.", - "Represents the second dark color.", - "Represents the second light color.", - "Represents the first accent color.", - "Represents the second accent color.", - "Represents the third accent color.", - "Represents the fourth accent color.", - "Represents the fifth accent color.", - "Represents the sixth accent color.", - "Represents the color to use for hyperlinks.", - "Represents the color to use for visited hyperlinks.", - "Represents the first text color.", - "Represents the first background color.", - "Represents the second text color.", - "Represents the second background color." - ] - } - }, - "id": "OpaqueColor" - }, - "ImageProperties": { - "properties": { - "shadow": { - "$ref": "Shadow", - "description": "The shadow of the image. If not set, the image has no shadow. This property\nis read-only." - }, - "contrast": { - "description": "The contrast effect of the image. The value should be in the interval\n[-1.0, 1.0], where 0 means no effect. This property is read-only.", - "format": "float", - "type": "number" - }, "link": { "$ref": "Link", - "description": "The hyperlink destination of the image. If unset, there is no link." - }, - "recolor": { - "$ref": "Recolor", - "description": "The recolor effect of the image. If not set, the image is not recolored.\nThis property is read-only." - }, - "cropProperties": { - "$ref": "CropProperties", - "description": "The crop properties of the image. If not set, the image is not cropped.\nThis property is read-only." + "description": "The hyperlink destination of the shape. If unset, there is no link. Links\nare not inherited from parent placeholders." }, "outline": { "$ref": "Outline", - "description": "The outline of the image. If not set, the image has no outline." + "description": "The outline of the shape. If unset, the outline is inherited from a\nparent placeholder if it exists. If the shape has no parent, then the\ndefault outline depends on the shape type, matching the defaults for\nnew shapes created in the Slides editor." }, - "brightness": { - "description": "The brightness effect of the image. The value should be in the interval\n[-1.0, 1.0], where 0 means no effect. This property is read-only.", - "format": "float", - "type": "number" + "shadow": { + "$ref": "Shadow", + "description": "The shadow properties of the shape. If unset, the shadow is inherited from\na parent placeholder if it exists. If the shape has no parent, then the\ndefault shadow matches the defaults for new shapes created in the Slides\neditor. This property is read-only." }, - "transparency": { - "description": "The transparency effect of the image. The value should be in the interval\n[0.0, 1.0], where 0 means no effect and 1 means completely transparent.\nThis property is read-only.", - "format": "float", - "type": "number" + "shapeBackgroundFill": { + "$ref": "ShapeBackgroundFill", + "description": "The background fill of the shape. If unset, the background fill is\ninherited from a parent placeholder if it exists. If the shape has no\nparent, then the default background fill depends on the shape type,\nmatching the defaults for new shapes created in the Slides editor." } }, - "id": "ImageProperties", - "description": "The properties of the Image.", "type": "object" }, - "ReplaceAllShapesWithImageResponse": { - "id": "ReplaceAllShapesWithImageResponse", - "description": "The result of replacing shapes with an image.", - "type": "object", + "SheetsChart": { + "description": "A PageElement kind representing\na linked chart embedded from Google Sheets.", + "id": "SheetsChart", "properties": { - "occurrencesChanged": { - "description": "The number of shapes replaced with images.", + "chartId": { + "description": "The ID of the specific chart in the Google Sheets spreadsheet that is\nembedded.", "format": "int32", "type": "integer" - } - } - }, - "Line": { - "description": "A PageElement kind representing a\nline, curved connector, or bent connector.", - "type": "object", - "properties": { - "lineType": { - "enum": [ - "TYPE_UNSPECIFIED", - "STRAIGHT_CONNECTOR_1", - "BENT_CONNECTOR_2", - "BENT_CONNECTOR_3", - "BENT_CONNECTOR_4", - "BENT_CONNECTOR_5", - "CURVED_CONNECTOR_2", - "CURVED_CONNECTOR_3", - "CURVED_CONNECTOR_4", - "CURVED_CONNECTOR_5" - ], - "description": "The type of the line.", - "type": "string", - "enumDescriptions": [ - "An unspecified line type.", - "Straight connector 1 form. Corresponds to ECMA-376 ST_ShapeType\n'straightConnector1'.", - "Bent connector 2 form. Corresponds to ECMA-376 ST_ShapeType\n'bentConnector2'.", - "Bent connector 3 form. Corresponds to ECMA-376 ST_ShapeType\n'bentConnector3'.", - "Bent connector 4 form. Corresponds to ECMA-376 ST_ShapeType\n'bentConnector4'.", - "Bent connector 5 form. Corresponds to ECMA-376 ST_ShapeType\n'bentConnector5'.", - "Curved connector 2 form. Corresponds to ECMA-376 ST_ShapeType\n'curvedConnector2'.", - "Curved connector 3 form. Corresponds to ECMA-376 ST_ShapeType\n'curvedConnector3'.", - "Curved connector 4 form. Corresponds to ECMA-376 ST_ShapeType\n'curvedConnector4'.", - "Curved connector 5 form. Corresponds to ECMA-376 ST_ShapeType\n'curvedConnector5'." - ] }, - "lineProperties": { - "$ref": "LineProperties", - "description": "The properties of the line." - } - }, - "id": "Line" - }, - "BatchUpdatePresentationResponse": { - "properties": { - "presentationId": { - "description": "The presentation the updates were applied to.", + "contentUrl": { + "description": "The URL of an image of the embedded chart, with a default lifetime of 30\nminutes. This URL is tagged with the account of the requester. Anyone with\nthe URL effectively accesses the image as the original requester. Access to\nthe image may be lost if the presentation's sharing settings change.", "type": "string" }, - "replies": { - "description": "The reply of the updates. This maps 1:1 with the updates, although\nreplies to some requests may be empty.", - "type": "array", - "items": { - "$ref": "Response" - } - } - }, - "id": "BatchUpdatePresentationResponse", - "description": "Response message from a batch update.", - "type": "object" - }, - "CreateSheetsChartRequest": { - "properties": { - "objectId": { - "description": "A user-supplied object ID.\n\nIf specified, the ID must be unique among all pages and page elements in\nthe presentation. The ID should start with a word character [a-zA-Z0-9_]\nand then followed by any number of the following characters [a-zA-Z0-9_-:].\nThe length of the ID should not be less than 5 or greater than 50.\nIf empty, a unique identifier will be generated.", - "type": "string" - }, - "elementProperties": { - "$ref": "PageElementProperties", - "description": "The element properties for the chart.\n\nWhen the aspect ratio of the provided size does not match the chart aspect\nratio, the chart is scaled and centered with respect to the size in order\nto maintain aspect ratio. The provided transform is applied after this\noperation." + "sheetsChartProperties": { + "$ref": "SheetsChartProperties", + "description": "The properties of the Sheets chart." }, "spreadsheetId": { - "description": "The ID of the Google Sheets spreadsheet that contains the chart.", + "description": "The ID of the Google Sheets spreadsheet that contains the source chart.", "type": "string" - }, - "linkingMode": { - "enum": [ - "NOT_LINKED_IMAGE", - "LINKED" - ], - "description": "The mode with which the chart is linked to the source spreadsheet. When\nnot specified, the chart will be an image that is not linked.", - "type": "string", - "enumDescriptions": [ - "The chart is not associated with the source spreadsheet and cannot be\nupdated. A chart that is not linked will be inserted as an image.", - "Linking the chart allows it to be updated, and other collaborators will\nsee a link to the spreadsheet." - ] - }, - "chartId": { - "description": "The ID of the specific chart in the Google Sheets spreadsheet.", - "format": "int32", - "type": "integer" } }, - "id": "CreateSheetsChartRequest", - "description": "Creates an embedded Google Sheets chart.\n\nNOTE: Chart creation requires at least one of the spreadsheets.readonly,\nspreadsheets, drive.readonly, or drive OAuth scopes.", "type": "object" }, - "CreateImageResponse": { - "id": "CreateImageResponse", - "description": "The result of creating an image.", - "type": "object", + "SheetsChartProperties": { + "description": "The properties of the SheetsChart.", + "id": "SheetsChartProperties", "properties": { - "objectId": { - "description": "The object ID of the created image.", - "type": "string" + "chartImageProperties": { + "$ref": "ImageProperties", + "description": "The properties of the embedded chart image." } - } + }, + "type": "object" + }, + "Size": { + "description": "A width and height.", + "id": "Size", + "properties": { + "height": { + "$ref": "Dimension", + "description": "The height of the object." + }, + "width": { + "$ref": "Dimension", + "description": "The width of the object." + } + }, + "type": "object" }, "SlideProperties": { - "id": "SlideProperties", "description": "The properties of Page that are only\nrelevant for pages with page_type SLIDE.", - "type": "object", + "id": "SlideProperties", "properties": { "layoutObjectId": { "description": "The object ID of the layout that this slide is based on.", @@ -3061,337 +3351,12 @@ "$ref": "Page", "description": "The notes page that this slide is associated with. It defines the visual\nappearance of a notes page when printing or exporting slides with speaker\nnotes. A notes page inherits properties from the\nnotes master.\nThe placeholder shape with type BODY on the notes page contains the speaker\nnotes for this slide. The ID of this shape is identified by the\nspeakerNotesObjectId field.\nThe notes page is read-only except for the text content and styles of the\nspeaker notes shape." } - } - }, - "Response": { - "description": "A single response from an update.", - "type": "object", - "properties": { - "duplicateObject": { - "description": "The result of duplicating an object.", - "$ref": "DuplicateObjectResponse" - }, - "createLine": { - "$ref": "CreateLineResponse", - "description": "The result of creating a line." - }, - "createImage": { - "$ref": "CreateImageResponse", - "description": "The result of creating an image." - }, - "createVideo": { - "$ref": "CreateVideoResponse", - "description": "The result of creating a video." - }, - "createSheetsChart": { - "description": "The result of creating a Google Sheets chart.", - "$ref": "CreateSheetsChartResponse" - }, - "replaceAllShapesWithSheetsChart": { - "$ref": "ReplaceAllShapesWithSheetsChartResponse", - "description": "The result of replacing all shapes matching some criteria with a Google\nSheets chart." - }, - "groupObjects": { - "$ref": "GroupObjectsResponse", - "description": "The result of grouping objects." - }, - "createShape": { - "$ref": "CreateShapeResponse", - "description": "The result of creating a shape." - }, - "replaceAllShapesWithImage": { - "$ref": "ReplaceAllShapesWithImageResponse", - "description": "The result of replacing all shapes matching some criteria with an\nimage." - }, - "createTable": { - "$ref": "CreateTableResponse", - "description": "The result of creating a table." - }, - "replaceAllText": { - "description": "The result of replacing text.", - "$ref": "ReplaceAllTextResponse" - }, - "createSlide": { - "$ref": "CreateSlideResponse", - "description": "The result of creating a slide." - } }, - "id": "Response" - }, - "MasterProperties": { - "description": "The properties of Page that are only\nrelevant for pages with page_type MASTER.", - "type": "object", - "properties": { - "displayName": { - "description": "The human-readable name of the master.", - "type": "string" - } - }, - "id": "MasterProperties" - }, - "SubstringMatchCriteria": { - "properties": { - "text": { - "description": "The text to search for in the shape or table.", - "type": "string" - }, - "matchCase": { - "description": "Indicates whether the search should respect case:\n\n- `True`: the search is case sensitive.\n- `False`: the search is case insensitive.", - "type": "boolean" - } - }, - "id": "SubstringMatchCriteria", - "description": "A criteria that matches a specific string of text in a shape or table.", "type": "object" }, - "LayoutReference": { - "description": "Slide layout reference. This may reference either:\n\n- A predefined layout\n- One of the layouts in the presentation.", - "type": "object", - "properties": { - "layoutId": { - "description": "Layout ID: the object ID of one of the layouts in the presentation.", - "type": "string" - }, - "predefinedLayout": { - "enum": [ - "PREDEFINED_LAYOUT_UNSPECIFIED", - "BLANK", - "CAPTION_ONLY", - "TITLE", - "TITLE_AND_BODY", - "TITLE_AND_TWO_COLUMNS", - "TITLE_ONLY", - "SECTION_HEADER", - "SECTION_TITLE_AND_DESCRIPTION", - "ONE_COLUMN_TEXT", - "MAIN_POINT", - "BIG_NUMBER" - ], - "description": "Predefined layout.", - "type": "string", - "enumDescriptions": [ - "Unspecified layout.", - "Blank layout, with no placeholders.", - "Layout with a caption at the bottom.", - "Layout with a title and a subtitle.", - "Layout with a title and body.", - "Layout with a title and two columns.", - "Layout with only a title.", - "Layout with a section title.", - "Layout with a title and subtitle on one side and description on the other.", - "Layout with one title and one body, arranged in a single column.", - "Layout with a main point.", - "Layout with a big number heading." - ] - } - }, - "id": "LayoutReference" - }, - "TextRun": { - "description": "A TextElement kind that represents a run of text that all has the same\nstyling.", - "type": "object", - "properties": { - "content": { - "description": "The text of this run.", - "type": "string" - }, - "style": { - "$ref": "TextStyle", - "description": "The styling applied to this run." - } - }, - "id": "TextRun" - }, - "TableRange": { - "description": "A table range represents a reference to a subset of a table.\n\nIt's important to note that the cells specified by a table range do not\nnecessarily form a rectangle. For example, let's say we have a 3 x 3 table\nwhere all the cells of the last row are merged together. The table looks\nlike this:\n\n \n [ ]\n\nA table range with location = (0, 0), row span = 3 and column span = 2\nspecifies the following cells:\n\n x x \n [ x ]", - "type": "object", - "properties": { - "location": { - "$ref": "TableCellLocation", - "description": "The starting location of the table range." - }, - "rowSpan": { - "description": "The row span of the table range.", - "format": "int32", - "type": "integer" - }, - "columnSpan": { - "description": "The column span of the table range.", - "format": "int32", - "type": "integer" - } - }, - "id": "TableRange" - }, - "CreateTableRequest": { - "type": "object", - "properties": { - "rows": { - "description": "Number of rows in the table.", - "format": "int32", - "type": "integer" - }, - "objectId": { - "type": "string", - "description": "A user-supplied object ID.\n\nIf you specify an ID, it must be unique among all pages and page elements\nin the presentation. The ID must start with an alphanumeric character or an\nunderscore (matches regex `[a-zA-Z0-9_]`); remaining characters\nmay include those as well as a hyphen or colon (matches regex\n`[a-zA-Z0-9_-:]`).\nThe length of the ID must not be less than 5 or greater than 50.\n\nIf you don't specify an ID, a unique one is generated." - }, - "columns": { - "description": "Number of columns in the table.", - "format": "int32", - "type": "integer" - }, - "elementProperties": { - "$ref": "PageElementProperties", - "description": "The element properties for the table.\n\nThe table will be created at the provided size, subject to a minimum size.\nIf no size is provided, the table will be automatically sized.\n\nTable transforms must have a scale of 1 and no shear components. If no\ntransform is provided, the table will be centered on the page." - } - }, - "id": "CreateTableRequest", - "description": "Creates a new table." - }, - "CreateTableResponse": { - "description": "The result of creating a table.", - "type": "object", - "properties": { - "objectId": { - "description": "The object ID of the created table.", - "type": "string" - } - }, - "id": "CreateTableResponse" - }, - "Table": { - "description": "A PageElement kind representing a\ntable.", - "type": "object", - "properties": { - "columns": { - "description": "Number of columns in the table.", - "format": "int32", - "type": "integer" - }, - "tableRows": { - "description": "Properties and contents of each row.\n\nCells that span multiple rows are contained in only one of these rows and\nhave a row_span greater\nthan 1.", - "type": "array", - "items": { - "$ref": "TableRow" - } - }, - "horizontalBorderRows": { - "description": "Properties of horizontal cell borders.\n\nA table's horizontal cell borders are represented as a grid. The grid has\none more row than the number of rows in the table and the same number of\ncolumns as the table. For example, if the table is 3 x 3, its horizontal\nborders will be represented as a grid with 4 rows and 3 columns.", - "type": "array", - "items": { - "$ref": "TableBorderRow" - } - }, - "verticalBorderRows": { - "description": "Properties of vertical cell borders.\n\nA table's vertical cell borders are represented as a grid. The grid has the\nsame number of rows as the table and one more column than the number of\ncolumns in the table. For example, if the table is 3 x 3, its vertical\nborders will be represented as a grid with 3 rows and 4 columns.", - "type": "array", - "items": { - "$ref": "TableBorderRow" - } - }, - "rows": { - "description": "Number of rows in the table.", - "format": "int32", - "type": "integer" - }, - "tableColumns": { - "description": "Properties of each column.", - "type": "array", - "items": { - "$ref": "TableColumnProperties" - } - } - }, - "id": "Table" - }, - "GroupObjectsRequest": { - "properties": { - "groupObjectId": { - "description": "A user-supplied object ID for the group to be created.\n\nIf you specify an ID, it must be unique among all pages and page elements\nin the presentation. The ID must start with an alphanumeric character or an\nunderscore (matches regex `[a-zA-Z0-9_]`); remaining characters\nmay include those as well as a hyphen or colon (matches regex\n`[a-zA-Z0-9_-:]`).\nThe length of the ID must not be less than 5 or greater than 50.\n\nIf you don't specify an ID, a unique one is generated.", - "type": "string" - }, - "childrenObjectIds": { - "description": "The object IDs of the objects to group.\n\nOnly page elements can be grouped. There should be at least two page\nelements on the same page that are not already in another group. Some page\nelements, such as videos, tables and placeholder shapes cannot be grouped.", - "type": "array", - "items": { - "type": "string" - } - } - }, - "id": "GroupObjectsRequest", - "description": "Groups objects to create an object group. For example, groups PageElements to create a Group on the same page as all the children.", - "type": "object" - }, - "TableBorderRow": { - "description": "Contents of each border row in a table.", - "type": "object", - "properties": { - "tableBorderCells": { - "description": "Properties of each border cell. When a border's adjacent table cells are\nmerged, it is not included in the response.", - "type": "array", - "items": { - "$ref": "TableBorderCell" - } - } - }, - "id": "TableBorderRow" - }, - "PageBackgroundFill": { - "properties": { - "propertyState": { - "enumDescriptions": [ - "If a property's state is RENDERED, then the element has the corresponding\nproperty when rendered on a page. If the element is a placeholder shape as\ndetermined by the placeholder\nfield, and it inherits from a placeholder shape, the corresponding field\nmay be unset, meaning that the property value is inherited from a parent\nplaceholder. If the element does not inherit, then the field will contain\nthe rendered value. This is the default value.", - "If a property's state is NOT_RENDERED, then the element does not have the\ncorresponding property when rendered on a page. However, the field may\nstill be set so it can be inherited by child shapes. To remove a property\nfrom a rendered element, set its property_state to NOT_RENDERED.", - "If a property's state is INHERIT, then the property state uses the value of\ncorresponding `property_state` field on the parent shape. Elements that do\nnot inherit will never have an INHERIT property state." - ], - "enum": [ - "RENDERED", - "NOT_RENDERED", - "INHERIT" - ], - "description": "The background fill property state.\n\nUpdating the fill on a page will implicitly update this field to\n`RENDERED`, unless another value is specified in the same request. To\nhave no fill on a page, set this field to `NOT_RENDERED`. In this case,\nany other fill fields set in the same request will be ignored.", - "type": "string" - }, - "stretchedPictureFill": { - "$ref": "StretchedPictureFill", - "description": "Stretched picture fill." - }, - "solidFill": { - "description": "Solid color fill.", - "$ref": "SolidFill" - } - }, - "id": "PageBackgroundFill", - "description": "The page background fill.", - "type": "object" - }, - "SheetsChart": { - "description": "A PageElement kind representing\na linked chart embedded from Google Sheets.", - "type": "object", - "properties": { - "spreadsheetId": { - "description": "The ID of the Google Sheets spreadsheet that contains the source chart.", - "type": "string" - }, - "chartId": { - "description": "The ID of the specific chart in the Google Sheets spreadsheet that is\nembedded.", - "format": "int32", - "type": "integer" - }, - "sheetsChartProperties": { - "$ref": "SheetsChartProperties", - "description": "The properties of the Sheets chart." - }, - "contentUrl": { - "description": "The URL of an image of the embedded chart, with a default lifetime of 30\nminutes. This URL is tagged with the account of the requester. Anyone with\nthe URL effectively accesses the image as the original requester. Access to\nthe image may be lost if the presentation's sharing settings change.", - "type": "string" - } - }, - "id": "SheetsChart" - }, "SolidFill": { "description": "A solid color fill. The page or page element is filled entirely with the\nspecified color value.\n\nIf any field is unset, its value may be inherited from a parent placeholder\nif it exists.", - "type": "object", + "id": "SolidFill", "properties": { "alpha": { "description": "The fraction of this `color` that should be applied to the pixel.\nThat is, the final pixel color is defined by the equation:\n\n pixel color = alpha * (color) + (1.0 - alpha) * (background color)\n\nThis means that a value of 1.0 corresponds to a solid color, whereas\na value of 0.0 corresponds to a completely transparent color.", @@ -3403,15 +3368,467 @@ "description": "The color value of the solid fill." } }, - "id": "SolidFill" + "type": "object" + }, + "StretchedPictureFill": { + "description": "The stretched picture fill. The page or page element is filled entirely with\nthe specified picture. The picture is stretched to fit its container.", + "id": "StretchedPictureFill", + "properties": { + "contentUrl": { + "description": "Reading the content_url:\n\nAn URL to a picture with a default lifetime of 30 minutes.\nThis URL is tagged with the account of the requester. Anyone with the URL\neffectively accesses the picture as the original requester. Access to the\npicture may be lost if the presentation's sharing settings change.\n\nWriting the content_url:\n\nThe picture is fetched once at insertion time and a copy is stored for\ndisplay inside the presentation. Pictures must be less than 50MB in size,\ncannot exceed 25 megapixels, and must be in one of PNG, JPEG, or GIF\nformat.\n\nThe provided URL can be at most 2 kB in length.", + "type": "string" + }, + "size": { + "$ref": "Size", + "description": "The original size of the picture fill. This field is read-only." + } + }, + "type": "object" + }, + "SubstringMatchCriteria": { + "description": "A criteria that matches a specific string of text in a shape or table.", + "id": "SubstringMatchCriteria", + "properties": { + "matchCase": { + "description": "Indicates whether the search should respect case:\n\n- `True`: the search is case sensitive.\n- `False`: the search is case insensitive.", + "type": "boolean" + }, + "text": { + "description": "The text to search for in the shape or table.", + "type": "string" + } + }, + "type": "object" + }, + "Table": { + "description": "A PageElement kind representing a\ntable.", + "id": "Table", + "properties": { + "columns": { + "description": "Number of columns in the table.", + "format": "int32", + "type": "integer" + }, + "horizontalBorderRows": { + "description": "Properties of horizontal cell borders.\n\nA table's horizontal cell borders are represented as a grid. The grid has\none more row than the number of rows in the table and the same number of\ncolumns as the table. For example, if the table is 3 x 3, its horizontal\nborders will be represented as a grid with 4 rows and 3 columns.", + "items": { + "$ref": "TableBorderRow" + }, + "type": "array" + }, + "rows": { + "description": "Number of rows in the table.", + "format": "int32", + "type": "integer" + }, + "tableColumns": { + "description": "Properties of each column.", + "items": { + "$ref": "TableColumnProperties" + }, + "type": "array" + }, + "tableRows": { + "description": "Properties and contents of each row.\n\nCells that span multiple rows are contained in only one of these rows and\nhave a row_span greater\nthan 1.", + "items": { + "$ref": "TableRow" + }, + "type": "array" + }, + "verticalBorderRows": { + "description": "Properties of vertical cell borders.\n\nA table's vertical cell borders are represented as a grid. The grid has the\nsame number of rows as the table and one more column than the number of\ncolumns in the table. For example, if the table is 3 x 3, its vertical\nborders will be represented as a grid with 3 rows and 4 columns.", + "items": { + "$ref": "TableBorderRow" + }, + "type": "array" + } + }, + "type": "object" + }, + "TableBorderCell": { + "description": "The properties of each border cell.", + "id": "TableBorderCell", + "properties": { + "location": { + "$ref": "TableCellLocation", + "description": "The location of the border within the border table." + }, + "tableBorderProperties": { + "$ref": "TableBorderProperties", + "description": "The border properties." + } + }, + "type": "object" + }, + "TableBorderFill": { + "description": "The fill of the border.", + "id": "TableBorderFill", + "properties": { + "solidFill": { + "$ref": "SolidFill", + "description": "Solid fill." + } + }, + "type": "object" + }, + "TableBorderProperties": { + "description": "The border styling properties of the\nTableBorderCell.", + "id": "TableBorderProperties", + "properties": { + "dashStyle": { + "description": "The dash style of the border.", + "enum": [ + "DASH_STYLE_UNSPECIFIED", + "SOLID", + "DOT", + "DASH", + "DASH_DOT", + "LONG_DASH", + "LONG_DASH_DOT" + ], + "enumDescriptions": [ + "Unspecified dash style.", + "Solid line. Corresponds to ECMA-376 ST_PresetLineDashVal value 'solid'.\nThis is the default dash style.", + "Dotted line. Corresponds to ECMA-376 ST_PresetLineDashVal value 'dot'.", + "Dashed line. Corresponds to ECMA-376 ST_PresetLineDashVal value 'dash'.", + "Alternating dashes and dots. Corresponds to ECMA-376 ST_PresetLineDashVal\nvalue 'dashDot'.", + "Line with large dashes. Corresponds to ECMA-376 ST_PresetLineDashVal\nvalue 'lgDash'.", + "Alternating large dashes and dots. Corresponds to ECMA-376\nST_PresetLineDashVal value 'lgDashDot'." + ], + "type": "string" + }, + "tableBorderFill": { + "$ref": "TableBorderFill", + "description": "The fill of the table border." + }, + "weight": { + "$ref": "Dimension", + "description": "The thickness of the border." + } + }, + "type": "object" + }, + "TableBorderRow": { + "description": "Contents of each border row in a table.", + "id": "TableBorderRow", + "properties": { + "tableBorderCells": { + "description": "Properties of each border cell. When a border's adjacent table cells are\nmerged, it is not included in the response.", + "items": { + "$ref": "TableBorderCell" + }, + "type": "array" + } + }, + "type": "object" + }, + "TableCell": { + "description": "Properties and contents of each table cell.", + "id": "TableCell", + "properties": { + "columnSpan": { + "description": "Column span of the cell.", + "format": "int32", + "type": "integer" + }, + "location": { + "$ref": "TableCellLocation", + "description": "The location of the cell within the table." + }, + "rowSpan": { + "description": "Row span of the cell.", + "format": "int32", + "type": "integer" + }, + "tableCellProperties": { + "$ref": "TableCellProperties", + "description": "The properties of the table cell." + }, + "text": { + "$ref": "TextContent", + "description": "The text content of the cell." + } + }, + "type": "object" + }, + "TableCellBackgroundFill": { + "description": "The table cell background fill.", + "id": "TableCellBackgroundFill", + "properties": { + "propertyState": { + "description": "The background fill property state.\n\nUpdating the fill on a table cell will implicitly update this field\nto `RENDERED`, unless another value is specified in the same request. To\nhave no fill on a table cell, set this field to `NOT_RENDERED`. In this\ncase, any other fill fields set in the same request will be ignored.", + "enum": [ + "RENDERED", + "NOT_RENDERED", + "INHERIT" + ], + "enumDescriptions": [ + "If a property's state is RENDERED, then the element has the corresponding\nproperty when rendered on a page. If the element is a placeholder shape as\ndetermined by the placeholder\nfield, and it inherits from a placeholder shape, the corresponding field\nmay be unset, meaning that the property value is inherited from a parent\nplaceholder. If the element does not inherit, then the field will contain\nthe rendered value. This is the default value.", + "If a property's state is NOT_RENDERED, then the element does not have the\ncorresponding property when rendered on a page. However, the field may\nstill be set so it can be inherited by child shapes. To remove a property\nfrom a rendered element, set its property_state to NOT_RENDERED.", + "If a property's state is INHERIT, then the property state uses the value of\ncorresponding `property_state` field on the parent shape. Elements that do\nnot inherit will never have an INHERIT property state." + ], + "type": "string" + }, + "solidFill": { + "$ref": "SolidFill", + "description": "Solid color fill." + } + }, + "type": "object" + }, + "TableCellLocation": { + "description": "A location of a single table cell within a table.", + "id": "TableCellLocation", + "properties": { + "columnIndex": { + "description": "The 0-based column index.", + "format": "int32", + "type": "integer" + }, + "rowIndex": { + "description": "The 0-based row index.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "TableCellProperties": { + "description": "The properties of the TableCell.", + "id": "TableCellProperties", + "properties": { + "contentAlignment": { + "description": "The alignment of the content in the table cell. The default alignment\nmatches the alignment for newly created table cells in the Slides editor.", + "enum": [ + "CONTENT_ALIGNMENT_UNSPECIFIED", + "CONTENT_ALIGNMENT_UNSUPPORTED", + "TOP", + "MIDDLE", + "BOTTOM" + ], + "enumDescriptions": [ + "An unspecified content alignment. The content alignment is inherited from\nthe parent if it exists.", + "An unsupported content alignment.", + "An alignment that aligns the content to the top of the content holder.\nCorresponds to ECMA-376 ST_TextAnchoringType 't'.", + "An alignment that aligns the content to the middle of the content\nholder. Corresponds to ECMA-376 ST_TextAnchoringType 'ctr'.", + "An alignment that aligns the content to the bottom of the content\nholder. Corresponds to ECMA-376 ST_TextAnchoringType 'b'." + ], + "type": "string" + }, + "tableCellBackgroundFill": { + "$ref": "TableCellBackgroundFill", + "description": "The background fill of the table cell. The default fill matches the fill\nfor newly created table cells in the Slides editor." + } + }, + "type": "object" + }, + "TableColumnProperties": { + "description": "Properties of each column in a table.", + "id": "TableColumnProperties", + "properties": { + "columnWidth": { + "$ref": "Dimension", + "description": "Width of a column." + } + }, + "type": "object" + }, + "TableRange": { + "description": "A table range represents a reference to a subset of a table.\n\nIt's important to note that the cells specified by a table range do not\nnecessarily form a rectangle. For example, let's say we have a 3 x 3 table\nwhere all the cells of the last row are merged together. The table looks\nlike this:\n\n \n [ ]\n\nA table range with location = (0, 0), row span = 3 and column span = 2\nspecifies the following cells:\n\n x x \n [ x ]", + "id": "TableRange", + "properties": { + "columnSpan": { + "description": "The column span of the table range.", + "format": "int32", + "type": "integer" + }, + "location": { + "$ref": "TableCellLocation", + "description": "The starting location of the table range." + }, + "rowSpan": { + "description": "The row span of the table range.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "TableRow": { + "description": "Properties and contents of each row in a table.", + "id": "TableRow", + "properties": { + "rowHeight": { + "$ref": "Dimension", + "description": "Height of a row." + }, + "tableCells": { + "description": "Properties and contents of each cell.\n\nCells that span multiple columns are represented only once with a\ncolumn_span greater\nthan 1. As a result, the length of this collection does not always match\nthe number of columns of the entire table.", + "items": { + "$ref": "TableCell" + }, + "type": "array" + }, + "tableRowProperties": { + "$ref": "TableRowProperties", + "description": "Properties of the row." + } + }, + "type": "object" + }, + "TableRowProperties": { + "description": "Properties of each row in a table.", + "id": "TableRowProperties", + "properties": { + "minRowHeight": { + "$ref": "Dimension", + "description": "Minimum height of the row. The row will be rendered in the Slides editor at\na height equal to or greater than this value in order to show all the text\nin the row's cell(s)." + } + }, + "type": "object" + }, + "TextContent": { + "description": "The general text content. The text must reside in a compatible shape (e.g.\ntext box or rectangle) or a table cell in a page.", + "id": "TextContent", + "properties": { + "lists": { + "additionalProperties": { + "$ref": "List" + }, + "description": "The bulleted lists contained in this text, keyed by list ID.", + "type": "object" + }, + "textElements": { + "description": "The text contents broken down into its component parts, including styling\ninformation. This property is read-only.", + "items": { + "$ref": "TextElement" + }, + "type": "array" + } + }, + "type": "object" + }, + "TextElement": { + "description": "A TextElement describes the content of a range of indices in the text content\nof a Shape or TableCell.", + "id": "TextElement", + "properties": { + "autoText": { + "$ref": "AutoText", + "description": "A TextElement representing a spot in the text that is dynamically\nreplaced with content that can change over time." + }, + "endIndex": { + "description": "The zero-based end index of this text element, exclusive, in Unicode code\nunits.", + "format": "int32", + "type": "integer" + }, + "paragraphMarker": { + "$ref": "ParagraphMarker", + "description": "A marker representing the beginning of a new paragraph.\n\nThe `start_index` and `end_index` of this TextElement represent the\nrange of the paragraph. Other TextElements with an index range contained\ninside this paragraph's range are considered to be part of this\nparagraph. The range of indices of two separate paragraphs will never\noverlap." + }, + "startIndex": { + "description": "The zero-based start index of this text element, in Unicode code units.", + "format": "int32", + "type": "integer" + }, + "textRun": { + "$ref": "TextRun", + "description": "A TextElement representing a run of text where all of the characters\nin the run have the same TextStyle.\n\nThe `start_index` and `end_index` of TextRuns will always be fully\ncontained in the index range of a single `paragraph_marker` TextElement.\nIn other words, a TextRun will never span multiple paragraphs." + } + }, + "type": "object" + }, + "TextRun": { + "description": "A TextElement kind that represents a run of text that all has the same\nstyling.", + "id": "TextRun", + "properties": { + "content": { + "description": "The text of this run.", + "type": "string" + }, + "style": { + "$ref": "TextStyle", + "description": "The styling applied to this run." + } + }, + "type": "object" + }, + "TextStyle": { + "description": "Represents the styling that can be applied to a TextRun.\n\nIf this text is contained in a shape with a parent placeholder, then these text styles may be\ninherited from the parent. Which text styles are inherited depend on the\nnesting level of lists:\n\n* A text run in a paragraph that is not in a list will inherit its text style\n from the the newline character in the paragraph at the 0 nesting level of\n the list inside the parent placeholder.\n* A text run in a paragraph that is in a list will inherit its text style\n from the newline character in the paragraph at its corresponding nesting\n level of the list inside the parent placeholder.\n\nInherited text styles are represented as unset fields in this message. If\ntext is contained in a shape without a parent placeholder, unsetting these\nfields will revert the style to a value matching the defaults in the Slides\neditor.", + "id": "TextStyle", + "properties": { + "backgroundColor": { + "$ref": "OptionalColor", + "description": "The background color of the text. If set, the color is either opaque or\ntransparent, depending on if the `opaque_color` field in it is set." + }, + "baselineOffset": { + "description": "The text's vertical offset from its normal position.\n\nText with `SUPERSCRIPT` or `SUBSCRIPT` baseline offsets is automatically\nrendered in a smaller font size, computed based on the `font_size` field.\nThe `font_size` itself is not affected by changes in this field.", + "enum": [ + "BASELINE_OFFSET_UNSPECIFIED", + "NONE", + "SUPERSCRIPT", + "SUBSCRIPT" + ], + "enumDescriptions": [ + "The text's baseline offset is inherited from the parent.", + "The text is not vertically offset.", + "The text is vertically offset upwards (superscript).", + "The text is vertically offset downwards (subscript)." + ], + "type": "string" + }, + "bold": { + "description": "Whether or not the text is rendered as bold.", + "type": "boolean" + }, + "fontFamily": { + "description": "The font family of the text.\n\nThe font family can be any font from the Font menu in Slides or from\n[Google Fonts] (https://fonts.google.com/). If the font name is\nunrecognized, the text is rendered in `Arial`.\n\nSome fonts can affect the weight of the text. If an update request\nspecifies values for both `font_family` and `bold`, the explicitly-set\n`bold` value is used.", + "type": "string" + }, + "fontSize": { + "$ref": "Dimension", + "description": "The size of the text's font. When read, the `font_size` will specified in\npoints." + }, + "foregroundColor": { + "$ref": "OptionalColor", + "description": "The color of the text itself. If set, the color is either opaque or\ntransparent, depending on if the `opaque_color` field in it is set." + }, + "italic": { + "description": "Whether or not the text is italicized.", + "type": "boolean" + }, + "link": { + "$ref": "Link", + "description": "The hyperlink destination of the text. If unset, there is no link. Links\nare not inherited from parent text.\n\nChanging the link in an update request causes some other changes to the\ntext style of the range:\n\n* When setting a link, the text foreground color will be set to\n ThemeColorType.HYPERLINK and the text will\n be underlined. If these fields are modified in the same\n request, those values will be used instead of the link defaults.\n* Setting a link on a text range that overlaps with an existing link will\n also update the existing link to point to the new URL.\n* Links are not settable on newline characters. As a result, setting a link\n on a text range that crosses a paragraph boundary, such as `\"ABC\\n123\"`,\n will separate the newline character(s) into their own text runs. The\n link will be applied separately to the runs before and after the newline.\n* Removing a link will update the text style of the range to match the\n style of the preceding text (or the default text styles if the preceding\n text is another link) unless different styles are being set in the same\n request." + }, + "smallCaps": { + "description": "Whether or not the text is in small capital letters.", + "type": "boolean" + }, + "strikethrough": { + "description": "Whether or not the text is struck through.", + "type": "boolean" + }, + "underline": { + "description": "Whether or not the text is underlined.", + "type": "boolean" + }, + "weightedFontFamily": { + "$ref": "WeightedFontFamily", + "description": "The font family and rendered weight of the text.\n\nThis field is an extension of `font_family` meant to support explicit font\nweights without breaking backwards compatibility. As such, when reading the\nstyle of a range of text, the value of `weighted_font_family#font_family`\nwill always be equal to that of `font_family`. However, when writing, if\nboth fields are included in the field mask (either explicitly or through\nthe wildcard `\"*\"`), their values are reconciled as follows:\n\n* If `font_family` is set and `weighted_font_family` is not, the value of\n `font_family` is applied with weight `400` (\"normal\").\n* If both fields are set, the value of `font_family` must match that of\n `weighted_font_family#font_family`. If so, the font family and weight of\n `weighted_font_family` is applied. Otherwise, a 400 bad request error is\n returned.\n* If `weighted_font_family` is set and `font_family` is not, the font\n family and weight of `weighted_font_family` is applied.\n* If neither field is set, the font family and weight of the text inherit\n from the parent. Note that these properties cannot inherit separately\n from each other.\n\nIf an update request specifies values for both `weighted_font_family` and\n`bold`, the `weighted_font_family` is applied first, then `bold`.\n\nIf `weighted_font_family#weight` is not set, it defaults to `400`.\n\nIf `weighted_font_family` is set, then `weighted_font_family#font_family`\nmust also be set with a non-empty value. Otherwise, a 400 bad request error\nis returned." + } + }, + "type": "object" }, "ThemeColorPair": { + "description": "A pair mapping a theme color type to the concrete color it represents.", + "id": "ThemeColorPair", "properties": { "color": { "$ref": "RgbColor", "description": "The concrete color corresponding to the theme color type above." }, "type": { + "description": "The type of the theme color.", "enum": [ "THEME_COLOR_TYPE_UNSPECIFIED", "DARK1", @@ -3431,8 +3848,6 @@ "TEXT2", "BACKGROUND2" ], - "description": "The type of the theme color.", - "type": "string", "enumDescriptions": [ "Unspecified theme color. This value should not be used.", "Represents the first dark color.", @@ -3451,97 +3866,375 @@ "Represents the first background color.", "Represents the second text color.", "Represents the second background color." - ] + ], + "type": "string" } }, - "id": "ThemeColorPair", - "description": "A pair mapping a theme color type to the concrete color it represents.", "type": "object" }, - "OptionalColor": { - "description": "A color that can either be fully opaque or fully transparent.", - "type": "object", + "Thumbnail": { + "description": "The thumbnail of a page.", + "id": "Thumbnail", "properties": { - "opaqueColor": { - "$ref": "OpaqueColor", - "description": "If set, this will be used as an opaque color. If unset, this represents\na transparent color." + "contentUrl": { + "description": "The content URL of the thumbnail image.\n\nThe URL to the image has a default lifetime of 30 minutes.\nThis URL is tagged with the account of the requester. Anyone with the URL\neffectively accesses the image as the original requester. Access to the\nimage may be lost if the presentation's sharing settings change.\nThe mime type of the thumbnail image is the same as specified in the\n`GetPageThumbnailRequest`.", + "type": "string" + }, + "height": { + "description": "The positive height in pixels of the thumbnail image.", + "format": "int32", + "type": "integer" + }, + "width": { + "description": "The positive width in pixels of the thumbnail image.", + "format": "int32", + "type": "integer" } }, - "id": "OptionalColor" + "type": "object" }, - "PageElementProperties": { - "description": "Common properties for a page element.\n\nNote: When you initially create a\nPageElement, the API may modify\nthe values of both `size` and `transform`, but the\nvisual size will be unchanged.", - "type": "object", + "UngroupObjectsRequest": { + "description": "Ungroups objects, such as groups.", + "id": "UngroupObjectsRequest", "properties": { + "objectIds": { + "description": "The object IDs of the objects to ungroup.\n\nOnly groups that are not inside other\ngroups can be ungrouped. All the groups\nshould be on the same page. The group itself is deleted. The visual sizes\nand positions of all the children are preserved.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "UnmergeTableCellsRequest": { + "description": "Unmerges cells in a Table.", + "id": "UnmergeTableCellsRequest", + "properties": { + "objectId": { + "description": "The object ID of the table.", + "type": "string" + }, + "tableRange": { + "$ref": "TableRange", + "description": "The table range specifying which cells of the table to unmerge.\n\nAll merged cells in this range will be unmerged, and cells that are already\nunmerged will not be affected. If the range has no merged cells, the\nrequest will do nothing. If there is text in any of the merged cells, the\ntext will remain in the upper-left (\"head\") cell of the resulting block of\nunmerged cells." + } + }, + "type": "object" + }, + "UpdateImagePropertiesRequest": { + "description": "Update the properties of an Image.", + "id": "UpdateImagePropertiesRequest", + "properties": { + "fields": { + "description": "The fields that should be updated.\n\nAt least one field must be specified. The root `imageProperties` is\nimplied and should not be specified. A single `\"*\"` can be used as\nshort-hand for listing every field.\n\nFor example to update the image outline color, set `fields` to\n`\"outline.outlineFill.solidFill.color\"`.\n\nTo reset a property to its default value, include its field name in the\nfield mask but leave the field itself unset.", + "format": "google-fieldmask", + "type": "string" + }, + "imageProperties": { + "$ref": "ImageProperties", + "description": "The image properties to update." + }, + "objectId": { + "description": "The object ID of the image the updates are applied to.", + "type": "string" + } + }, + "type": "object" + }, + "UpdateLinePropertiesRequest": { + "description": "Updates the properties of a Line.", + "id": "UpdateLinePropertiesRequest", + "properties": { + "fields": { + "description": "The fields that should be updated.\n\nAt least one field must be specified. The root `lineProperties` is\nimplied and should not be specified. A single `\"*\"` can be used as\nshort-hand for listing every field.\n\nFor example to update the line solid fill color, set `fields` to\n`\"lineFill.solidFill.color\"`.\n\nTo reset a property to its default value, include its field name in the\nfield mask but leave the field itself unset.", + "format": "google-fieldmask", + "type": "string" + }, + "lineProperties": { + "$ref": "LineProperties", + "description": "The line properties to update." + }, + "objectId": { + "description": "The object ID of the line the update is applied to.", + "type": "string" + } + }, + "type": "object" + }, + "UpdatePageElementAltTextRequest": { + "description": "Updates the alt text title and/or description of a\npage element.", + "id": "UpdatePageElementAltTextRequest", + "properties": { + "description": { + "description": "The updated alt text description of the page element. If unset the existing\nvalue will be maintained. The description is exposed to screen readers\nand other accessibility interfaces. Only use human readable values related\nto the content of the page element.", + "type": "string" + }, + "objectId": { + "description": "The object ID of the page element the updates are applied to.", + "type": "string" + }, + "title": { + "description": "The updated alt text title of the page element. If unset the\nexisting value will be maintained. The title is exposed to screen readers\nand other accessibility interfaces. Only use human readable values related\nto the content of the page element.", + "type": "string" + } + }, + "type": "object" + }, + "UpdatePageElementTransformRequest": { + "description": "Updates the transform of a page element.\n\nUpdating the transform of a group will change the absolute transform of the\npage elements in that group, which can change their visual appearance. See\nthe documentation for PageElement.transform for more details.", + "id": "UpdatePageElementTransformRequest", + "properties": { + "applyMode": { + "description": "The apply mode of the transform update.", + "enum": [ + "APPLY_MODE_UNSPECIFIED", + "RELATIVE", + "ABSOLUTE" + ], + "enumDescriptions": [ + "Unspecified mode.", + "Applies the new AffineTransform matrix to the existing one, and\nreplaces the existing one with the resulting concatenation.", + "Replaces the existing AffineTransform matrix with the new one." + ], + "type": "string" + }, + "objectId": { + "description": "The object ID of the page element to update.", + "type": "string" + }, "transform": { "$ref": "AffineTransform", - "description": "The transform for the element." - }, - "pageObjectId": { - "description": "The object ID of the page where the element is located.", + "description": "The input transform matrix used to update the page element." + } + }, + "type": "object" + }, + "UpdatePagePropertiesRequest": { + "description": "Updates the properties of a Page.", + "id": "UpdatePagePropertiesRequest", + "properties": { + "fields": { + "description": "The fields that should be updated.\n\nAt least one field must be specified. The root `pageProperties` is\nimplied and should not be specified. A single `\"*\"` can be used as\nshort-hand for listing every field.\n\nFor example to update the page background solid fill color, set `fields`\nto `\"pageBackgroundFill.solidFill.color\"`.\n\nTo reset a property to its default value, include its field name in the\nfield mask but leave the field itself unset.", + "format": "google-fieldmask", "type": "string" }, - "size": { - "$ref": "Size", - "description": "The size of the element." - } - }, - "id": "PageElementProperties" - }, - "SheetsChartProperties": { - "type": "object", - "properties": { - "chartImageProperties": { - "$ref": "ImageProperties", - "description": "The properties of the embedded chart image." - } - }, - "id": "SheetsChartProperties", - "description": "The properties of the SheetsChart." - }, - "StretchedPictureFill": { - "description": "The stretched picture fill. The page or page element is filled entirely with\nthe specified picture. The picture is stretched to fit its container.", - "type": "object", - "properties": { - "size": { - "$ref": "Size", - "description": "The original size of the picture fill. This field is read-only." - }, - "contentUrl": { - "description": "Reading the content_url:\n\nAn URL to a picture with a default lifetime of 30 minutes.\nThis URL is tagged with the account of the requester. Anyone with the URL\neffectively accesses the picture as the original requester. Access to the\npicture may be lost if the presentation's sharing settings change.\n\nWriting the content_url:\n\nThe picture is fetched once at insertion time and a copy is stored for\ndisplay inside the presentation. Pictures must be less than 50MB in size,\ncannot exceed 25 megapixels, and must be in either in PNG, JPEG, or GIF\nformat.\n\nThe provided URL can be at most 2 kB in length.", + "objectId": { + "description": "The object ID of the page the update is applied to.", "type": "string" + }, + "pageProperties": { + "$ref": "PageProperties", + "description": "The page properties to update." } }, - "id": "StretchedPictureFill" + "type": "object" }, - "DeleteTableColumnRequest": { - "description": "Deletes a column from a table.", - "type": "object", + "UpdateParagraphStyleRequest": { + "description": "Updates the styling for all of the paragraphs within a Shape or Table that\noverlap with the given text index range.", + "id": "UpdateParagraphStyleRequest", "properties": { - "tableObjectId": { - "type": "string", - "description": "The table to delete columns from." - }, "cellLocation": { - "description": "The reference table cell location from which a column will be deleted.\n\nThe column this cell spans will be deleted. If this is a merged cell,\nmultiple columns will be deleted. If no columns remain in the table after\nthis deletion, the whole table is deleted.", - "$ref": "TableCellLocation" + "$ref": "TableCellLocation", + "description": "The location of the cell in the table containing the paragraph(s) to\nstyle. If `object_id` refers to a table, `cell_location` must have a value.\nOtherwise, it must not." + }, + "fields": { + "description": "The fields that should be updated.\n\nAt least one field must be specified. The root `style` is implied and\nshould not be specified. A single `\"*\"` can be used as short-hand for\nlisting every field.\n\nFor example, to update the paragraph alignment, set `fields` to\n`\"alignment\"`.\n\nTo reset a property to its default value, include its field name in the\nfield mask but leave the field itself unset.", + "format": "google-fieldmask", + "type": "string" + }, + "objectId": { + "description": "The object ID of the shape or table with the text to be styled.", + "type": "string" + }, + "style": { + "$ref": "ParagraphStyle", + "description": "The paragraph's style." + }, + "textRange": { + "$ref": "Range", + "description": "The range of text containing the paragraph(s) to style." } }, - "id": "DeleteTableColumnRequest" + "type": "object" + }, + "UpdateShapePropertiesRequest": { + "description": "Update the properties of a Shape.", + "id": "UpdateShapePropertiesRequest", + "properties": { + "fields": { + "description": "The fields that should be updated.\n\nAt least one field must be specified. The root `shapeProperties` is\nimplied and should not be specified. A single `\"*\"` can be used as\nshort-hand for listing every field.\n\nFor example to update the shape background solid fill color, set `fields`\nto `\"shapeBackgroundFill.solidFill.color\"`.\n\nTo reset a property to its default value, include its field name in the\nfield mask but leave the field itself unset.", + "format": "google-fieldmask", + "type": "string" + }, + "objectId": { + "description": "The object ID of the shape the updates are applied to.", + "type": "string" + }, + "shapeProperties": { + "$ref": "ShapeProperties", + "description": "The shape properties to update." + } + }, + "type": "object" + }, + "UpdateSlidesPositionRequest": { + "description": "Updates the position of slides in the presentation.", + "id": "UpdateSlidesPositionRequest", + "properties": { + "insertionIndex": { + "description": "The index where the slides should be inserted, based on the slide\narrangement before the move takes place. Must be between zero and the\nnumber of slides in the presentation, inclusive.", + "format": "int32", + "type": "integer" + }, + "slideObjectIds": { + "description": "The IDs of the slides in the presentation that should be moved.\nThe slides in this list must be in existing presentation order, without\nduplicates.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "UpdateTableBorderPropertiesRequest": { + "description": "Updates the properties of the table borders in a Table.", + "id": "UpdateTableBorderPropertiesRequest", + "properties": { + "borderPosition": { + "description": "The border position in the table range the updates should apply to. If a\nborder position is not specified, the updates will apply to all borders in\nthe table range.", + "enum": [ + "ALL", + "BOTTOM", + "INNER", + "INNER_HORIZONTAL", + "INNER_VERTICAL", + "LEFT", + "OUTER", + "RIGHT", + "TOP" + ], + "enumDescriptions": [ + "All borders in the range.", + "Borders at the bottom of the range.", + "Borders on the inside of the range.", + "Horizontal borders on the inside of the range.", + "Vertical borders on the inside of the range.", + "Borders at the left of the range.", + "Borders along the outside of the range.", + "Borders at the right of the range.", + "Borders at the top of the range." + ], + "type": "string" + }, + "fields": { + "description": "The fields that should be updated.\n\nAt least one field must be specified. The root `tableBorderProperties` is\nimplied and should not be specified. A single `\"*\"` can be used as\nshort-hand for listing every field.\n\nFor example to update the table border solid fill color, set\n`fields` to `\"tableBorderFill.solidFill.color\"`.\n\nTo reset a property to its default value, include its field name in the\nfield mask but leave the field itself unset.", + "format": "google-fieldmask", + "type": "string" + }, + "objectId": { + "description": "The object ID of the table.", + "type": "string" + }, + "tableBorderProperties": { + "$ref": "TableBorderProperties", + "description": "The table border properties to update." + }, + "tableRange": { + "$ref": "TableRange", + "description": "The table range representing the subset of the table to which the updates\nare applied. If a table range is not specified, the updates will apply to\nthe entire table." + } + }, + "type": "object" + }, + "UpdateTableCellPropertiesRequest": { + "description": "Update the properties of a TableCell.", + "id": "UpdateTableCellPropertiesRequest", + "properties": { + "fields": { + "description": "The fields that should be updated.\n\nAt least one field must be specified. The root `tableCellProperties` is\nimplied and should not be specified. A single `\"*\"` can be used as\nshort-hand for listing every field.\n\nFor example to update the table cell background solid fill color, set\n`fields` to `\"tableCellBackgroundFill.solidFill.color\"`.\n\nTo reset a property to its default value, include its field name in the\nfield mask but leave the field itself unset.", + "format": "google-fieldmask", + "type": "string" + }, + "objectId": { + "description": "The object ID of the table.", + "type": "string" + }, + "tableCellProperties": { + "$ref": "TableCellProperties", + "description": "The table cell properties to update." + }, + "tableRange": { + "$ref": "TableRange", + "description": "The table range representing the subset of the table to which the updates\nare applied. If a table range is not specified, the updates will apply to\nthe entire table." + } + }, + "type": "object" + }, + "UpdateTableColumnPropertiesRequest": { + "description": "Updates the properties of a Table column.", + "id": "UpdateTableColumnPropertiesRequest", + "properties": { + "columnIndices": { + "description": "The list of zero-based indices specifying which columns to update. If no\nindices are provided, all columns in the table will be updated.", + "items": { + "format": "int32", + "type": "integer" + }, + "type": "array" + }, + "fields": { + "description": "The fields that should be updated.\n\nAt least one field must be specified. The root `tableColumnProperties` is\nimplied and should not be specified. A single `\"*\"` can be used as\nshort-hand for listing every field.\n\nFor example to update the column width, set `fields` to `\"column_width\"`.\n\nIf '\"column_width\"' is included in the field mask but the property is left\nunset, the column width will default to 406,400 EMU (32 points).", + "format": "google-fieldmask", + "type": "string" + }, + "objectId": { + "description": "The object ID of the table.", + "type": "string" + }, + "tableColumnProperties": { + "$ref": "TableColumnProperties", + "description": "The table column properties to update.\n\nIf the value of `table_column_properties#column_width` in the request is\nless than 406,400 EMU (32 points), a 400 bad request error is returned." + } + }, + "type": "object" + }, + "UpdateTableRowPropertiesRequest": { + "description": "Updates the properties of a Table row.", + "id": "UpdateTableRowPropertiesRequest", + "properties": { + "fields": { + "description": "The fields that should be updated.\n\nAt least one field must be specified. The root `tableRowProperties` is\nimplied and should not be specified. A single `\"*\"` can be used as\nshort-hand for listing every field.\n\nFor example to update the minimum row height, set `fields` to\n`\"min_row_height\"`.\n\nIf '\"min_row_height\"' is included in the field mask but the property is\nleft unset, the minimum row height will default to 0.", + "format": "google-fieldmask", + "type": "string" + }, + "objectId": { + "description": "The object ID of the table.", + "type": "string" + }, + "rowIndices": { + "description": "The list of zero-based indices specifying which rows to update. If no\nindices are provided, all rows in the table will be updated.", + "items": { + "format": "int32", + "type": "integer" + }, + "type": "array" + }, + "tableRowProperties": { + "$ref": "TableRowProperties", + "description": "The table row properties to update." + } + }, + "type": "object" }, "UpdateTextStyleRequest": { - "id": "UpdateTextStyleRequest", "description": "Update the styling of text in a Shape or\nTable.", - "type": "object", + "id": "UpdateTextStyleRequest", "properties": { "cellLocation": { "$ref": "TableCellLocation", "description": "The location of the cell in the table containing the text to style. If\n`object_id` refers to a table, `cell_location` must have a value.\nOtherwise, it must not." }, - "style": { - "description": "The style(s) to set on the text.\n\nIf the value for a particular style matches that of the parent, that style\nwill be set to inherit.\n\nCertain text style changes may cause other changes meant to mirror the\nbehavior of the Slides editor. See the documentation of\nTextStyle for more information.", - "$ref": "TextStyle" - }, "fields": { "description": "The fields that should be updated.\n\nAt least one field must be specified. The root `style` is implied and\nshould not be specified. A single `\"*\"` can be used as short-hand for\nlisting every field.\n\nFor example, to update the text style to bold, set `fields` to `\"bold\"`.\n\nTo reset a property to its default value, include its field name in the\nfield mask but leave the field itself unset.", "format": "google-fieldmask", @@ -3551,264 +4244,20 @@ "description": "The object ID of the shape or table with the text to be styled.", "type": "string" }, + "style": { + "$ref": "TextStyle", + "description": "The style(s) to set on the text.\n\nIf the value for a particular style matches that of the parent, that style\nwill be set to inherit.\n\nCertain text style changes may cause other changes meant to mirror the\nbehavior of the Slides editor. See the documentation of\nTextStyle for more information." + }, "textRange": { "$ref": "Range", "description": "The range of text to style.\n\nThe range may be extended to include adjacent newlines.\n\nIf the range fully contains a paragraph belonging to a list, the\nparagraph's bullet is also updated with the matching text style." } - } - }, - "List": { - "type": "object", - "properties": { - "listId": { - "description": "The ID of the list.", - "type": "string" - }, - "nestingLevel": { - "additionalProperties": { - "$ref": "NestingLevel" - }, - "description": "A map of nesting levels to the properties of bullets at the associated\nlevel. A list has at most nine levels of nesting, so the possible values\nfor the keys of this map are 0 through 8, inclusive.", - "type": "object" - } }, - "id": "List", - "description": "A List describes the look and feel of bullets belonging to paragraphs\nassociated with a list. A paragraph that is part of a list has an implicit\nreference to that list's ID." - }, - "WeightedFontFamily": { - "description": "Represents a font family and weight used to style a TextRun.", - "type": "object", - "properties": { - "fontFamily": { - "description": "The font family of the text.\n\nThe font family can be any font from the Font menu in Slides or from\n[Google Fonts] (https://fonts.google.com/). If the font name is\nunrecognized, the text is rendered in `Arial`.", - "type": "string" - }, - "weight": { - "description": "The rendered weight of the text. This field can have any value that is a\nmultiple of `100` between `100` and `900`, inclusive. This range\ncorresponds to the numerical values described in the CSS 2.1\nSpecification, [section 15.6](https://www.w3.org/TR/CSS21/fonts.html#font-boldness),\nwith non-numerical values disallowed. Weights greater than or equal to\n`700` are considered bold, and weights less than `700`are not bold. The\ndefault value is `400` (\"normal\").", - "format": "int32", - "type": "integer" - } - }, - "id": "WeightedFontFamily" - }, - "PageElement": { - "type": "object", - "properties": { - "line": { - "$ref": "Line", - "description": "A line page element." - }, - "description": { - "type": "string", - "description": "The description of the page element. Combined with title to display alt\ntext." - }, - "elementGroup": { - "$ref": "Group", - "description": "A collection of page elements joined as a single unit." - }, - "image": { - "$ref": "Image", - "description": "An image page element." - }, - "size": { - "$ref": "Size", - "description": "The size of the page element." - }, - "sheetsChart": { - "description": "A linked chart embedded from Google Sheets. Unlinked charts are\nrepresented as images.", - "$ref": "SheetsChart" - }, - "title": { - "description": "The title of the page element. Combined with description to display alt\ntext.", - "type": "string" - }, - "video": { - "description": "A video page element.", - "$ref": "Video" - }, - "wordArt": { - "$ref": "WordArt", - "description": "A word art page element." - }, - "table": { - "$ref": "Table", - "description": "A table page element." - }, - "objectId": { - "description": "The object ID for this page element. Object IDs used by\ngoogle.apps.slides.v1.Page and\ngoogle.apps.slides.v1.PageElement share the same namespace.", - "type": "string" - }, - "transform": { - "description": "The transform of the page element.\n\nThe visual appearance of the page element is determined by its absolute\ntransform. To compute the absolute transform, preconcatenate a page\nelement's transform with the transforms of all of its parent groups. If the\npage element is not in a group, its absolute transform is the same as the\nvalue in this field.\n\nThe initial transform for the newly created Group is always the identity transform.", - "$ref": "AffineTransform" - }, - "shape": { - "$ref": "Shape", - "description": "A generic shape." - } - }, - "id": "PageElement", - "description": "A visual element rendered on a page." - }, - "CreateImageRequest": { - "description": "Creates an image.", - "type": "object", - "properties": { - "objectId": { - "description": "A user-supplied object ID.\n\nIf you specify an ID, it must be unique among all pages and page elements\nin the presentation. The ID must start with an alphanumeric character or an\nunderscore (matches regex `[a-zA-Z0-9_]`); remaining characters\nmay include those as well as a hyphen or colon (matches regex\n`[a-zA-Z0-9_-:]`).\nThe length of the ID must not be less than 5 or greater than 50.\n\nIf you don't specify an ID, a unique one is generated.", - "type": "string" - }, - "elementProperties": { - "description": "The element properties for the image.\n\nWhen the aspect ratio of the provided size does not match the image aspect\nratio, the image is scaled and centered with respect to the size in order\nto maintain aspect ratio. The provided transform is applied after this\noperation.\n\nThe PageElementProperties.size property is\noptional. If you don't specify the size, the default size of the image is\nused.\n\nThe PageElementProperties.transform property is\noptional. If you don't specify a transform, the image will be placed at the\ntop left corner of the page.", - "$ref": "PageElementProperties" - }, - "url": { - "description": "The image URL.\n\nThe image is fetched once at insertion time and a copy is stored for\ndisplay inside the presentation. Images must be less than 50MB in size,\ncannot exceed 25 megapixels, and must be in either in PNG, JPEG, or GIF\nformat.\n\nThe provided URL can be at most 2 kB in length.", - "type": "string" - } - }, - "id": "CreateImageRequest" - }, - "CreateParagraphBulletsRequest": { - "type": "object", - "properties": { - "cellLocation": { - "description": "The optional table cell location if the text to be modified is in a table\ncell. If present, the object_id must refer to a table.", - "$ref": "TableCellLocation" - }, - "objectId": { - "description": "The object ID of the shape or table containing the text to add bullets to.", - "type": "string" - }, - "textRange": { - "$ref": "Range", - "description": "The range of text to apply the bullet presets to, based on TextElement indexes." - }, - "bulletPreset": { - "description": "The kinds of bullet glyphs to be used. Defaults to the\n`BULLET_DISC_CIRCLE_SQUARE` preset.", - "type": "string", - "enumDescriptions": [ - "A bulleted list with a `DISC`, `CIRCLE` and `SQUARE` bullet glyph for the\nfirst 3 list nesting levels.", - "A bulleted list with a `DIAMONDX`, `ARROW3D` and `SQUARE` bullet glyph for\nthe first 3 list nesting levels.", - "A bulleted list with `CHECKBOX` bullet glyphs for all list nesting levels.", - "A bulleted list with a `ARROW`, `DIAMOND` and `DISC` bullet glyph for\nthe first 3 list nesting levels.", - "A bulleted list with a `STAR`, `CIRCLE` and `SQUARE` bullet glyph for\nthe first 3 list nesting levels.", - "A bulleted list with a `ARROW3D`, `CIRCLE` and `SQUARE` bullet glyph for\nthe first 3 list nesting levels.", - "A bulleted list with a `LEFTTRIANGLE`, `DIAMOND` and `DISC` bullet glyph\nfor the first 3 list nesting levels.", - "A bulleted list with a `DIAMONDX`, `HOLLOWDIAMOND` and `SQUARE` bullet\nglyph for the first 3 list nesting levels.", - "A bulleted list with a `DIAMOND`, `CIRCLE` and `SQUARE` bullet glyph\nfor the first 3 list nesting levels.", - "A numbered list with `DIGIT`, `ALPHA` and `ROMAN` numeric glyphs for\nthe first 3 list nesting levels, followed by periods.", - "A numbered list with `DIGIT`, `ALPHA` and `ROMAN` numeric glyphs for\nthe first 3 list nesting levels, followed by parenthesis.", - "A numbered list with `DIGIT` numeric glyphs separated by periods, where\neach nesting level uses the previous nesting level's glyph as a prefix.\nFor example: '1.', '1.1.', '2.', '2.2.'.", - "A numbered list with `UPPERALPHA`, `ALPHA` and `ROMAN` numeric glyphs for\nthe first 3 list nesting levels, followed by periods.", - "A numbered list with `UPPERROMAN`, `UPPERALPHA` and `DIGIT` numeric glyphs\nfor the first 3 list nesting levels, followed by periods.", - "A numbered list with `ZERODIGIT`, `ALPHA` and `ROMAN` numeric glyphs for\nthe first 3 list nesting levels, followed by periods." - ], - "enum": [ - "BULLET_DISC_CIRCLE_SQUARE", - "BULLET_DIAMONDX_ARROW3D_SQUARE", - "BULLET_CHECKBOX", - "BULLET_ARROW_DIAMOND_DISC", - "BULLET_STAR_CIRCLE_SQUARE", - "BULLET_ARROW3D_CIRCLE_SQUARE", - "BULLET_LEFTTRIANGLE_DIAMOND_DISC", - "BULLET_DIAMONDX_HOLLOWDIAMOND_SQUARE", - "BULLET_DIAMOND_CIRCLE_SQUARE", - "NUMBERED_DIGIT_ALPHA_ROMAN", - "NUMBERED_DIGIT_ALPHA_ROMAN_PARENS", - "NUMBERED_DIGIT_NESTED", - "NUMBERED_UPPERALPHA_ALPHA_ROMAN", - "NUMBERED_UPPERROMAN_UPPERALPHA_DIGIT", - "NUMBERED_ZERODIGIT_ALPHA_ROMAN" - ] - } - }, - "id": "CreateParagraphBulletsRequest", - "description": "Creates bullets for all of the paragraphs that overlap with the given\ntext index range.\n\nThe nesting level of each paragraph will be determined by counting leading\ntabs in front of each paragraph. To avoid excess space between the bullet and\nthe corresponding paragraph, these leading tabs are removed by this request.\nThis may change the indices of parts of the text.\n\nIf the paragraph immediately before paragraphs being updated is in a list\nwith a matching preset, the paragraphs being updated are added to that\npreceding list." - }, - "TextStyle": { - "description": "Represents the styling that can be applied to a TextRun.\n\nIf this text is contained in a shape with a parent placeholder, then these text styles may be\ninherited from the parent. Which text styles are inherited depend on the\nnesting level of lists:\n\n* A text run in a paragraph that is not in a list will inherit its text style\n from the the newline character in the paragraph at the 0 nesting level of\n the list inside the parent placeholder.\n* A text run in a paragraph that is in a list will inherit its text style\n from the newline character in the paragraph at its corresponding nesting\n level of the list inside the parent placeholder.\n\nInherited text styles are represented as unset fields in this message. If\ntext is contained in a shape without a parent placeholder, unsetting these\nfields will revert the style to a value matching the defaults in the Slides\neditor.", - "type": "object", - "properties": { - "bold": { - "description": "Whether or not the text is rendered as bold.", - "type": "boolean" - }, - "foregroundColor": { - "$ref": "OptionalColor", - "description": "The color of the text itself. If set, the color is either opaque or\ntransparent, depending on if the `opaque_color` field in it is set." - }, - "fontFamily": { - "description": "The font family of the text.\n\nThe font family can be any font from the Font menu in Slides or from\n[Google Fonts] (https://fonts.google.com/). If the font name is\nunrecognized, the text is rendered in `Arial`.\n\nSome fonts can affect the weight of the text. If an update request\nspecifies values for both `font_family` and `bold`, the explicitly-set\n`bold` value is used.", - "type": "string" - }, - "italic": { - "description": "Whether or not the text is italicized.", - "type": "boolean" - }, - "strikethrough": { - "description": "Whether or not the text is struck through.", - "type": "boolean" - }, - "fontSize": { - "$ref": "Dimension", - "description": "The size of the text's font. When read, the `font_size` will specified in\npoints." - }, - "baselineOffset": { - "enum": [ - "BASELINE_OFFSET_UNSPECIFIED", - "NONE", - "SUPERSCRIPT", - "SUBSCRIPT" - ], - "description": "The text's vertical offset from its normal position.\n\nText with `SUPERSCRIPT` or `SUBSCRIPT` baseline offsets is automatically\nrendered in a smaller font size, computed based on the `font_size` field.\nThe `font_size` itself is not affected by changes in this field.", - "type": "string", - "enumDescriptions": [ - "The text's baseline offset is inherited from the parent.", - "The text is not vertically offset.", - "The text is vertically offset upwards (superscript).", - "The text is vertically offset downwards (subscript)." - ] - }, - "weightedFontFamily": { - "$ref": "WeightedFontFamily", - "description": "The font family and rendered weight of the text.\n\nThis field is an extension of `font_family` meant to support explicit font\nweights without breaking backwards compatibility. As such, when reading the\nstyle of a range of text, the value of `weighted_font_family#font_family`\nwill always be equal to that of `font_family`. However, when writing, if\nboth fields are included in the field mask (either explicitly or through\nthe wildcard `\"*\"`), their values are reconciled as follows:\n\n* If `font_family` is set and `weighted_font_family` is not, the value of\n `font_family` is applied with weight `400` (\"normal\").\n* If both fields are set, the value of `font_family` must match that of\n `weighted_font_family#font_family`. If so, the font family and weight of\n `weighted_font_family` is applied. Otherwise, a 400 bad request error is\n returned.\n* If `weighted_font_family` is set and `font_family` is not, the font\n family and weight of `weighted_font_family` is applied.\n* If neither field is set, the font family and weight of the text inherit\n from the parent. Note that these properties cannot inherit separately\n from each other.\n\nIf an update request specifies values for both `weighted_font_family` and\n`bold`, the `weighted_font_family` is applied first, then `bold`.\n\nIf `weighted_font_family#weight` is not set, it defaults to `400`.\n\nIf `weighted_font_family` is set, then `weighted_font_family#font_family`\nmust also be set with a non-empty value. Otherwise, a 400 bad request error\nis returned." - }, - "smallCaps": { - "description": "Whether or not the text is in small capital letters.", - "type": "boolean" - }, - "backgroundColor": { - "$ref": "OptionalColor", - "description": "The background color of the text. If set, the color is either opaque or\ntransparent, depending on if the `opaque_color` field in it is set." - }, - "underline": { - "description": "Whether or not the text is underlined.", - "type": "boolean" - }, - "link": { - "$ref": "Link", - "description": "The hyperlink destination of the text. If unset, there is no link. Links\nare not inherited from parent text.\n\nChanging the link in an update request causes some other changes to the\ntext style of the range:\n\n* When setting a link, the text foreground color will be set to\n ThemeColorType.HYPERLINK and the text will\n be underlined. If these fields are modified in the same\n request, those values will be used instead of the link defaults.\n* Setting a link on a text range that overlaps with an existing link will\n also update the existing link to point to the new URL.\n* Links are not settable on newline characters. As a result, setting a link\n on a text range that crosses a paragraph boundary, such as `\"ABC\\n123\"`,\n will separate the newline character(s) into their own text runs. The\n link will be applied separately to the runs before and after the newline.\n* Removing a link will update the text style of the range to match the\n style of the preceding text (or the default text styles if the preceding\n text is another link) unless different styles are being set in the same\n request." - } - }, - "id": "TextStyle" - }, - "Size": { - "properties": { - "height": { - "$ref": "Dimension", - "description": "The height of the object." - }, - "width": { - "description": "The width of the object.", - "$ref": "Dimension" - } - }, - "id": "Size", - "description": "A width and height.", "type": "object" }, "UpdateVideoPropertiesRequest": { + "description": "Update the properties of a Video.", + "id": "UpdateVideoPropertiesRequest", "properties": { "fields": { "description": "The fields that should be updated.\n\nAt least one field must be specified. The root `videoProperties` is\nimplied and should not be specified. A single `\"*\"` can be used as\nshort-hand for listing every field.\n\nFor example to update the video outline color, set `fields` to\n`\"outline.outlineFill.solidFill.color\"`.\n\nTo reset a property to its default value, include its field name in the\nfield mask but leave the field itself unset.", @@ -3824,485 +4273,109 @@ "description": "The video properties to update." } }, - "id": "UpdateVideoPropertiesRequest", - "description": "Update the properties of a Video.", "type": "object" }, - "Request": { - "description": "A single kind of update to apply to a presentation.", - "type": "object", + "Video": { + "description": "A PageElement kind representing a\nvideo.", + "id": "Video", "properties": { - "updateLineProperties": { - "$ref": "UpdateLinePropertiesRequest", - "description": "Updates the properties of a Line." + "id": { + "description": "The video source's unique identifier for this video.", + "type": "string" }, - "updateSlidesPosition": { - "$ref": "UpdateSlidesPositionRequest", - "description": "Updates the position of a set of slides in the presentation." + "source": { + "description": "The video source.", + "enum": [ + "SOURCE_UNSPECIFIED", + "YOUTUBE" + ], + "enumDescriptions": [ + "The video source is unspecified.", + "The video source is YouTube." + ], + "type": "string" }, - "deleteTableRow": { - "description": "Deletes a row from a table.", - "$ref": "DeleteTableRowRequest" + "url": { + "description": "An URL to a video. The URL is valid as long as the source video\nexists and sharing settings do not change.", + "type": "string" }, - "updateShapeProperties": { - "description": "Updates the properties of a Shape.", - "$ref": "UpdateShapePropertiesRequest" - }, - "ungroupObjects": { - "$ref": "UngroupObjectsRequest", - "description": "Ungroups objects, such as groups." - }, - "groupObjects": { - "$ref": "GroupObjectsRequest", - "description": "Groups objects, such as page elements." - }, - "insertText": { - "description": "Inserts text into a shape or table cell.", - "$ref": "InsertTextRequest" - }, - "updateTableColumnProperties": { - "description": "Updates the properties of a Table\ncolumn.", - "$ref": "UpdateTableColumnPropertiesRequest" - }, - "deleteText": { - "$ref": "DeleteTextRequest", - "description": "Deletes text from a shape or a table cell." - }, - "updatePageProperties": { - "description": "Updates the properties of a Page.", - "$ref": "UpdatePagePropertiesRequest" - }, - "deleteParagraphBullets": { - "$ref": "DeleteParagraphBulletsRequest", - "description": "Deletes bullets from paragraphs." - }, - "createShape": { - "$ref": "CreateShapeRequest", - "description": "Creates a new shape." - }, - "updatePageElementAltText": { - "description": "Updates the alt text title and/or description of a\npage element.", - "$ref": "UpdatePageElementAltTextRequest" - }, - "updateTableBorderProperties": { - "description": "Updates the properties of the table borders in a Table.", - "$ref": "UpdateTableBorderPropertiesRequest" - }, - "insertTableColumns": { - "$ref": "InsertTableColumnsRequest", - "description": "Inserts columns into a table." - }, - "mergeTableCells": { - "$ref": "MergeTableCellsRequest", - "description": "Merges cells in a Table." - }, - "refreshSheetsChart": { - "$ref": "RefreshSheetsChartRequest", - "description": "Refreshes a Google Sheets chart." - }, - "updateTableCellProperties": { - "$ref": "UpdateTableCellPropertiesRequest", - "description": "Updates the properties of a TableCell." - }, - "createTable": { - "description": "Creates a new table.", - "$ref": "CreateTableRequest" - }, - "deleteObject": { - "description": "Deletes a page or page element from the presentation.", - "$ref": "DeleteObjectRequest" - }, - "updateParagraphStyle": { - "$ref": "UpdateParagraphStyleRequest", - "description": "Updates the styling of paragraphs within a Shape or Table." - }, - "deleteTableColumn": { - "$ref": "DeleteTableColumnRequest", - "description": "Deletes a column from a table." - }, - "duplicateObject": { - "$ref": "DuplicateObjectRequest", - "description": "Duplicates a slide or page element." - }, - "updateVideoProperties": { - "$ref": "UpdateVideoPropertiesRequest", - "description": "Updates the properties of a Video." - }, - "createLine": { - "$ref": "CreateLineRequest", - "description": "Creates a line." - }, - "createImage": { - "$ref": "CreateImageRequest", - "description": "Creates an image." - }, - "createParagraphBullets": { - "description": "Creates bullets for paragraphs.", - "$ref": "CreateParagraphBulletsRequest" - }, - "createVideo": { - "$ref": "CreateVideoRequest", - "description": "Creates a video." - }, - "createSheetsChart": { - "$ref": "CreateSheetsChartRequest", - "description": "Creates an embedded Google Sheets chart." - }, - "replaceAllShapesWithSheetsChart": { - "$ref": "ReplaceAllShapesWithSheetsChartRequest", - "description": "Replaces all shapes matching some criteria with a Google Sheets chart." - }, - "unmergeTableCells": { - "$ref": "UnmergeTableCellsRequest", - "description": "Unmerges cells in a Table." - }, - "updatePageElementTransform": { - "description": "Updates the transform of a page element.", - "$ref": "UpdatePageElementTransformRequest" - }, - "updateTextStyle": { - "$ref": "UpdateTextStyleRequest", - "description": "Updates the styling of text within a Shape or Table." - }, - "updateTableRowProperties": { - "description": "Updates the properties of a Table row.", - "$ref": "UpdateTableRowPropertiesRequest" - }, - "replaceAllShapesWithImage": { - "$ref": "ReplaceAllShapesWithImageRequest", - "description": "Replaces all shapes matching some criteria with an image." - }, - "replaceAllText": { - "$ref": "ReplaceAllTextRequest", - "description": "Replaces all instances of specified text." - }, - "updateImageProperties": { - "$ref": "UpdateImagePropertiesRequest", - "description": "Updates the properties of an Image." - }, - "insertTableRows": { - "$ref": "InsertTableRowsRequest", - "description": "Inserts rows into a table." - }, - "createSlide": { - "$ref": "CreateSlideRequest", - "description": "Creates a new slide." + "videoProperties": { + "$ref": "VideoProperties", + "description": "The properties of the video." } }, - "id": "Request" - } - }, - "icons": { - "x16": "http://www.google.com/images/icons/product/search-16.gif", - "x32": "http://www.google.com/images/icons/product/search-32.gif" - }, - "protocol": "rest", - "canonicalName": "Slides", - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/spreadsheets": { - "description": "View and manage your spreadsheets in Google Drive" + "type": "object" + }, + "VideoProperties": { + "description": "The properties of the Video.", + "id": "VideoProperties", + "properties": { + "autoPlay": { + "description": "Whether to enable video autoplay when the page is displayed in present\nmode. Defaults to false.", + "type": "boolean" }, - "https://www.googleapis.com/auth/presentations": { - "description": "View and manage your Google Slides presentations" + "end": { + "description": "The time at which to end playback, measured in seconds from the beginning\nof the video.\nIf set, the end time should be after the start time.\nIf not set or if you set this to a value that exceeds the video's length,\nthe video will be played until its end.", + "format": "uint32", + "type": "integer" }, - "https://www.googleapis.com/auth/presentations.readonly": { - "description": "View your Google Slides presentations" + "mute": { + "description": "Whether to mute the audio during video playback. Defaults to false.", + "type": "boolean" }, - "https://www.googleapis.com/auth/drive.file": { - "description": "View and manage Google Drive files and folders that you have opened or created with this app" + "outline": { + "$ref": "Outline", + "description": "The outline of the video. The default outline matches the defaults for new\nvideos created in the Slides editor." }, - "https://www.googleapis.com/auth/spreadsheets.readonly": { - "description": "View your Google Spreadsheets" - }, - "https://www.googleapis.com/auth/drive": { - "description": "View and manage the files in your Google Drive" - }, - "https://www.googleapis.com/auth/drive.readonly": { - "description": "View the files in your Google Drive" - } - } - } - }, - "rootUrl": "https://slides.googleapis.com/", - "ownerDomain": "google.com", - "name": "slides", - "batchPath": "batch", - "title": "Google Slides API", - "ownerName": "Google", - "resources": { - "presentations": { - "methods": { - "get": { - "flatPath": "v1/presentations/{presentationsId}", - "path": "v1/presentations/{+presentationId}", - "id": "slides.presentations.get", - "description": "Gets the latest version of the specified presentation.", - "response": { - "$ref": "Presentation" - }, - "parameterOrder": [ - "presentationId" - ], - "httpMethod": "GET", - "parameters": { - "presentationId": { - "pattern": "^[^/]+$", - "location": "path", - "description": "The ID of the presentation to retrieve.", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/drive", - "https://www.googleapis.com/auth/drive.file", - "https://www.googleapis.com/auth/drive.readonly", - "https://www.googleapis.com/auth/presentations", - "https://www.googleapis.com/auth/presentations.readonly" - ] - }, - "create": { - "flatPath": "v1/presentations", - "path": "v1/presentations", - "id": "slides.presentations.create", - "description": "Creates a new presentation using the title given in the request. Other\nfields in the request are ignored.\nReturns the created presentation.", - "request": { - "$ref": "Presentation" - }, - "response": { - "$ref": "Presentation" - }, - "parameterOrder": [], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/drive", - "https://www.googleapis.com/auth/drive.file", - "https://www.googleapis.com/auth/presentations" - ], - "parameters": {} - }, - "batchUpdate": { - "response": { - "$ref": "BatchUpdatePresentationResponse" - }, - "parameterOrder": [ - "presentationId" - ], - "httpMethod": "POST", - "parameters": { - "presentationId": { - "description": "The presentation to apply the updates to.", - "required": true, - "type": "string", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/drive", - "https://www.googleapis.com/auth/drive.file", - "https://www.googleapis.com/auth/drive.readonly", - "https://www.googleapis.com/auth/presentations", - "https://www.googleapis.com/auth/spreadsheets", - "https://www.googleapis.com/auth/spreadsheets.readonly" - ], - "flatPath": "v1/presentations/{presentationId}:batchUpdate", - "path": "v1/presentations/{presentationId}:batchUpdate", - "id": "slides.presentations.batchUpdate", - "request": { - "$ref": "BatchUpdatePresentationRequest" - }, - "description": "Applies one or more updates to the presentation.\n\nEach request is validated before\nbeing applied. If any request is not valid, then the entire request will\nfail and nothing will be applied.\n\nSome requests have replies to\ngive you some information about how they are applied. Other requests do\nnot need to return information; these each return an empty reply.\nThe order of replies matches that of the requests.\n\nFor example, suppose you call batchUpdate with four updates, and only the\nthird one returns information. The response would have two empty replies:\nthe reply to the third request, and another empty reply, in that order.\n\nBecause other users may be editing the presentation, the presentation\nmight not exactly reflect your changes: your changes may\nbe altered with respect to collaborator changes. If there are no\ncollaborators, the presentation should reflect your changes. In any case,\nthe updates in your request are guaranteed to be applied together\natomically." + "start": { + "description": "The time at which to start playback, measured in seconds from the beginning\nof the video.\nIf set, the start time should be before the end time.\nIf you set this to a value that exceeds the video's length in seconds, the\nvideo will be played from the last second.\nIf not set, the video will be played from the beginning.", + "format": "uint32", + "type": "integer" } }, - "resources": { - "pages": { - "methods": { - "get": { - "description": "Gets the latest version of the specified page in the presentation.", - "httpMethod": "GET", - "parameterOrder": [ - "presentationId", - "pageObjectId" - ], - "response": { - "$ref": "Page" - }, - "scopes": [ - "https://www.googleapis.com/auth/drive", - "https://www.googleapis.com/auth/drive.file", - "https://www.googleapis.com/auth/drive.readonly", - "https://www.googleapis.com/auth/presentations", - "https://www.googleapis.com/auth/presentations.readonly" - ], - "parameters": { - "pageObjectId": { - "location": "path", - "description": "The object ID of the page to retrieve.", - "required": true, - "type": "string" - }, - "presentationId": { - "location": "path", - "description": "The ID of the presentation to retrieve.", - "required": true, - "type": "string" - } - }, - "flatPath": "v1/presentations/{presentationId}/pages/{pageObjectId}", - "id": "slides.presentations.pages.get", - "path": "v1/presentations/{presentationId}/pages/{pageObjectId}" - }, - "getThumbnail": { - "response": { - "$ref": "Thumbnail" - }, - "parameterOrder": [ - "presentationId", - "pageObjectId" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/drive", - "https://www.googleapis.com/auth/drive.file", - "https://www.googleapis.com/auth/drive.readonly", - "https://www.googleapis.com/auth/presentations", - "https://www.googleapis.com/auth/presentations.readonly" - ], - "parameters": { - "thumbnailProperties.mimeType": { - "description": "The optional mime type of the thumbnail image.\n\nIf you don't specify the mime type, the default mime type will be PNG.", - "type": "string", - "location": "query", - "enum": [ - "PNG" - ] - }, - "thumbnailProperties.thumbnailSize": { - "location": "query", - "enum": [ - "THUMBNAIL_SIZE_UNSPECIFIED", - "LARGE" - ], - "description": "The optional thumbnail image size.\n\nIf you don't specify the size, the server chooses a default size of the\nimage.", - "type": "string" - }, - "presentationId": { - "location": "path", - "description": "The ID of the presentation to retrieve.", - "required": true, - "type": "string" - }, - "pageObjectId": { - "location": "path", - "description": "The object ID of the page whose thumbnail to retrieve.", - "required": true, - "type": "string" - } - }, - "flatPath": "v1/presentations/{presentationId}/pages/{pageObjectId}/thumbnail", - "path": "v1/presentations/{presentationId}/pages/{pageObjectId}/thumbnail", - "id": "slides.presentations.pages.getThumbnail", - "description": "Generates a thumbnail of the latest version of the specified page in the\npresentation and returns a URL to the thumbnail image." - } - } + "type": "object" + }, + "WeightedFontFamily": { + "description": "Represents a font family and weight used to style a TextRun.", + "id": "WeightedFontFamily", + "properties": { + "fontFamily": { + "description": "The font family of the text.\n\nThe font family can be any font from the Font menu in Slides or from\n[Google Fonts] (https://fonts.google.com/). If the font name is\nunrecognized, the text is rendered in `Arial`.", + "type": "string" + }, + "weight": { + "description": "The rendered weight of the text. This field can have any value that is a\nmultiple of `100` between `100` and `900`, inclusive. This range\ncorresponds to the numerical values described in the CSS 2.1\nSpecification, [section 15.6](https://www.w3.org/TR/CSS21/fonts.html#font-boldness),\nwith non-numerical values disallowed. Weights greater than or equal to\n`700` are considered bold, and weights less than `700`are not bold. The\ndefault value is `400` (\"normal\").", + "format": "int32", + "type": "integer" } - } + }, + "type": "object" + }, + "WordArt": { + "description": "A PageElement kind representing\nword art.", + "id": "WordArt", + "properties": { + "renderedText": { + "description": "The text rendered as word art.", + "type": "string" + } + }, + "type": "object" + }, + "WriteControl": { + "description": "Provides control over how write requests are executed.", + "id": "WriteControl", + "properties": { + "requiredRevisionId": { + "description": "The revision ID of the presentation required for the write request. If\nspecified and the `required_revision_id` doesn't exactly match the\npresentation's current `revision_id`, the request will not be processed and\nwill return a 400 bad request error.", + "type": "string" + } + }, + "type": "object" } }, - "parameters": { - "pp": { - "location": "query", - "description": "Pretty-print response.", - "type": "boolean", - "default": "true" - }, - "bearer_token": { - "description": "OAuth bearer token.", - "type": "string", - "location": "query" - }, - "oauth_token": { - "description": "OAuth 2.0 token for the current user.", - "type": "string", - "location": "query" - }, - "upload_protocol": { - "type": "string", - "location": "query", - "description": "Upload protocol for media (e.g. \"raw\", \"multipart\")." - }, - "prettyPrint": { - "location": "query", - "description": "Returns response with indentations and line breaks.", - "type": "boolean", - "default": "true" - }, - "uploadType": { - "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", - "type": "string", - "location": "query" - }, - "fields": { - "location": "query", - "description": "Selector specifying which fields to include in a partial response.", - "type": "string" - }, - "callback": { - "location": "query", - "description": "JSONP", - "type": "string" - }, - "$.xgafv": { - "location": "query", - "enum": [ - "1", - "2" - ], - "description": "V1 error format.", - "type": "string", - "enumDescriptions": [ - "v1 error format", - "v2 error format" - ] - }, - "alt": { - "type": "string", - "enumDescriptions": [ - "Responses with Content-Type of application/json", - "Media download with context-dependent Content-Type", - "Responses with Content-Type of application/x-protobuf" - ], - "location": "query", - "description": "Data format for response.", - "default": "json", - "enum": [ - "json", - "media", - "proto" - ] - }, - "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.", - "type": "string", - "location": "query" - }, - "access_token": { - "location": "query", - "description": "OAuth access token.", - "type": "string" - }, - "quotaUser": { - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", - "type": "string", - "location": "query" - } - }, - "version": "v1", - "baseUrl": "https://slides.googleapis.com/", "servicePath": "", - "description": "An API for creating and editing Google Slides presentations.", - "kind": "discovery#restDescription", - "basePath": "" -} + "title": "Google Slides API", + "version": "v1", + "version_module": true +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/slides/v1/slides-gen.go b/vendor/google.golang.org/api/slides/v1/slides-gen.go index 44625f746..e01fc7117 100644 --- a/vendor/google.golang.org/api/slides/v1/slides-gen.go +++ b/vendor/google.golang.org/api/slides/v1/slides-gen.go @@ -288,6 +288,9 @@ type BatchUpdatePresentationResponse struct { // replies to some requests may be empty. Replies []*Response `json:"replies,omitempty"` + // WriteControl: The updated write control after applying the request. + WriteControl *WriteControl `json:"writeControl,omitempty"` + // ServerResponse contains the HTTP response code and headers from the // server. googleapi.ServerResponse `json:"-"` @@ -480,7 +483,7 @@ type CreateImageRequest struct { // for // display inside the presentation. Images must be less than 50MB in // size, - // cannot exceed 25 megapixels, and must be in either in PNG, JPEG, or + // cannot exceed 25 megapixels, and must be in one of PNG, JPEG, or // GIF // format. // @@ -2115,6 +2118,11 @@ type Image struct { // ImageProperties: The properties of the image. ImageProperties *ImageProperties `json:"imageProperties,omitempty"` + // SourceUrl: The source URL is the URL used to insert the image. The + // source URL can be + // empty. + SourceUrl string `json:"sourceUrl,omitempty"` + // ForceSendFields is a list of field names (e.g. "ContentUrl") to // unconditionally include in API requests. By default, fields with // empty values are omitted from API requests. However, any non-pointer, @@ -4047,13 +4055,44 @@ type ReplaceAllShapesWithImageRequest struct { // given text. ContainsText *SubstringMatchCriteria `json:"containsText,omitempty"` + // ImageReplaceMethod: The image replace method. + // + // If you specify both a `replace_method` and an `image_replace_method`, + // the + // `image_replace_method` takes precedence. + // + // If you do not specify a value for `image_replace_method`, but specify + // a + // value for `replace_method`, then the specified `replace_method` value + // is + // used. + // + // If you do not specify either, then CENTER_INSIDE is used. + // + // Possible values: + // "IMAGE_REPLACE_METHOD_UNSPECIFIED" - Unspecified image replace + // method. This value must not be used. + // "CENTER_INSIDE" - Scales and centers the image to fit within the + // bounds of the original + // shape and maintains the image's aspect ratio. The rendered size of + // the + // image may be smaller than the size of the shape. This is the + // default + // method when one is not specified. + // "CENTER_CROP" - Scales and centers the image to fill the bounds of + // the original shape. + // The image may be cropped in order to fill the shape. The rendered + // size of + // the image will be the same as that of the original shape. + ImageReplaceMethod string `json:"imageReplaceMethod,omitempty"` + // ImageUrl: The image URL. // // The image is fetched once at insertion time and a copy is stored // for // display inside the presentation. Images must be less than 50MB in // size, - // cannot exceed 25 megapixels, and must be in either in PNG, JPEG, or + // cannot exceed 25 megapixels, and must be in one of PNG, JPEG, or // GIF // format. // @@ -4071,6 +4110,11 @@ type ReplaceAllShapesWithImageRequest struct { PageObjectIds []string `json:"pageObjectIds,omitempty"` // ReplaceMethod: The replace method. + // Deprecated: use `image_replace_method` instead. + // + // If you specify both a `replace_method` and an `image_replace_method`, + // the + // `image_replace_method` takes precedence. // // Possible values: // "CENTER_INSIDE" - Scales and centers the image to fit within the @@ -4311,6 +4355,70 @@ func (s *ReplaceAllTextResponse) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// ReplaceImageRequest: Replaces an existing image with a new +// image. +// +// Replacing an image removes some image effects from the existing +// image. +type ReplaceImageRequest struct { + // ImageObjectId: The ID of the existing image that will be replaced. + ImageObjectId string `json:"imageObjectId,omitempty"` + + // ImageReplaceMethod: The replacement method. + // + // Possible values: + // "IMAGE_REPLACE_METHOD_UNSPECIFIED" - Unspecified image replace + // method. This value must not be used. + // "CENTER_INSIDE" - Scales and centers the image to fit within the + // bounds of the original + // shape and maintains the image's aspect ratio. The rendered size of + // the + // image may be smaller than the size of the shape. This is the + // default + // method when one is not specified. + // "CENTER_CROP" - Scales and centers the image to fill the bounds of + // the original shape. + // The image may be cropped in order to fill the shape. The rendered + // size of + // the image will be the same as that of the original shape. + ImageReplaceMethod string `json:"imageReplaceMethod,omitempty"` + + // Url: The URL of the new image. + // + // The image is fetched once at insertion time and a copy is stored + // for + // display inside the presentation. Images must be less than 50MB in + // size, + // cannot exceed 25 megapixels, and must be in one of PNG, JPEG, or + // GIF + // format. + // + // The provided URL can be at most 2 kB in length. + Url string `json:"url,omitempty"` + + // ForceSendFields is a list of field names (e.g. "ImageObjectId") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "ImageObjectId") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *ReplaceImageRequest) MarshalJSON() ([]byte, error) { + type NoMethod ReplaceImageRequest + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // Request: A single kind of update to apply to a presentation. type Request struct { // CreateImage: Creates an image. @@ -4384,6 +4492,9 @@ type Request struct { // ReplaceAllText: Replaces all instances of specified text. ReplaceAllText *ReplaceAllTextRequest `json:"replaceAllText,omitempty"` + // ReplaceImage: Replaces an existing image with a new image. + ReplaceImage *ReplaceImageRequest `json:"replaceImage,omitempty"` + // UngroupObjects: Ungroups objects, such as groups. UngroupObjects *UngroupObjectsRequest `json:"ungroupObjects,omitempty"` @@ -5473,7 +5584,7 @@ type StretchedPictureFill struct { // for // display inside the presentation. Pictures must be less than 50MB in // size, - // cannot exceed 25 megapixels, and must be in either in PNG, JPEG, or + // cannot exceed 25 megapixels, and must be in one of PNG, JPEG, or // GIF // format. // @@ -7404,12 +7515,40 @@ func (s *Video) MarshalJSON() ([]byte, error) { // VideoProperties: The properties of the Video. type VideoProperties struct { + // AutoPlay: Whether to enable video autoplay when the page is displayed + // in present + // mode. Defaults to false. + AutoPlay bool `json:"autoPlay,omitempty"` + + // End: The time at which to end playback, measured in seconds from the + // beginning + // of the video. + // If set, the end time should be after the start time. + // If not set or if you set this to a value that exceeds the video's + // length, + // the video will be played until its end. + End int64 `json:"end,omitempty"` + + // Mute: Whether to mute the audio during video playback. Defaults to + // false. + Mute bool `json:"mute,omitempty"` + // Outline: The outline of the video. The default outline matches the // defaults for new // videos created in the Slides editor. Outline *Outline `json:"outline,omitempty"` - // ForceSendFields is a list of field names (e.g. "Outline") to + // Start: The time at which to start playback, measured in seconds from + // the beginning + // of the video. + // If set, the start time should be before the end time. + // If you set this to a value that exceeds the video's length in + // seconds, the + // video will be played from the last second. + // If not set, the video will be played from the beginning. + Start int64 `json:"start,omitempty"` + + // ForceSendFields is a list of field names (e.g. "AutoPlay") to // unconditionally include in API requests. By default, fields with // empty values are omitted from API requests. However, any non-pointer, // non-interface field appearing in ForceSendFields will be sent to the @@ -7417,7 +7556,7 @@ type VideoProperties struct { // used to include empty fields in Patch requests. ForceSendFields []string `json:"-"` - // NullFields is a list of field names (e.g. "Outline") to include in + // NullFields is a list of field names (e.g. "AutoPlay") to include in // API requests with the JSON null value. By default, fields with empty // values are omitted from API requests. However, any field with an // empty value appearing in NullFields will be sent to the server as @@ -7725,8 +7864,10 @@ type PresentationsCreateCall struct { } // Create: Creates a new presentation using the title given in the -// request. Other -// fields in the request are ignored. +// request. If a +// presentationId is provided, uses it as the ID of the new +// presentation. +// Otherwise, a new presentationId is generated. // Returns the created presentation. func (r *PresentationsService) Create(presentation *Presentation) *PresentationsCreateCall { c := &PresentationsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)} @@ -7817,7 +7958,7 @@ func (c *PresentationsCreateCall) Do(opts ...googleapi.CallOption) (*Presentatio } return ret, nil // { - // "description": "Creates a new presentation using the title given in the request. Other\nfields in the request are ignored.\nReturns the created presentation.", + // "description": "Creates a new presentation using the title given in the request. If a\npresentationId is provided, uses it as the ID of the new presentation.\nOtherwise, a new presentationId is generated.\nReturns the created presentation.", // "flatPath": "v1/presentations", // "httpMethod": "POST", // "id": "slides.presentations.create", @@ -8150,6 +8291,10 @@ type PresentationsPagesGetThumbnailCall struct { // GetThumbnail: Generates a thumbnail of the latest version of the // specified page in the // presentation and returns a URL to the thumbnail image. +// +// This request counts as an [expensive read request](/slides/limits) +// for +// quota purposes. func (r *PresentationsPagesService) GetThumbnail(presentationId string, pageObjectId string) *PresentationsPagesGetThumbnailCall { c := &PresentationsPagesGetThumbnailCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.presentationId = presentationId @@ -8282,7 +8427,7 @@ func (c *PresentationsPagesGetThumbnailCall) Do(opts ...googleapi.CallOption) (* } return ret, nil // { - // "description": "Generates a thumbnail of the latest version of the specified page in the\npresentation and returns a URL to the thumbnail image.", + // "description": "Generates a thumbnail of the latest version of the specified page in the\npresentation and returns a URL to the thumbnail image.\n\nThis request counts as an [expensive read request](/slides/limits) for\nquota purposes.", // "flatPath": "v1/presentations/{presentationId}/pages/{pageObjectId}/thumbnail", // "httpMethod": "GET", // "id": "slides.presentations.pages.getThumbnail", diff --git a/vendor/google.golang.org/api/sourcerepo/v1/sourcerepo-api.json b/vendor/google.golang.org/api/sourcerepo/v1/sourcerepo-api.json index d6e8ada66..f09fc4999 100644 --- a/vendor/google.golang.org/api/sourcerepo/v1/sourcerepo-api.json +++ b/vendor/google.golang.org/api/sourcerepo/v1/sourcerepo-api.json @@ -1,127 +1,482 @@ { - "kind": "discovery#restDescription", - "description": "Access source code repositories hosted by Google.", - "servicePath": "", + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/cloud-platform": { + "description": "View and manage your data across Google Cloud Platform services" + }, + "https://www.googleapis.com/auth/source.full_control": { + "description": "Manage your source code repositories" + }, + "https://www.googleapis.com/auth/source.read_only": { + "description": "View the contents of your source code repositories" + }, + "https://www.googleapis.com/auth/source.read_write": { + "description": "Manage the contents of your source code repositories" + } + } + } + }, "basePath": "", - "revision": "20171215", - "documentationLink": "https://cloud.google.com/source-repositories/docs/apis", - "id": "sourcerepo:v1", + "baseUrl": "https://sourcerepo.googleapis.com/", + "batchPath": "batch", + "canonicalName": "Cloud Source Repositories", + "description": "Access source code repositories hosted by Google.", "discoveryVersion": "v1", - "version_module": true, - "schemas": { - "Repo": { - "description": "A repository (or repo) is a Git repository storing versioned source content.", - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "Resource name of the repository, of the form\n`projects/\u003cproject\u003e/repos/\u003crepo\u003e`. The repo name may contain slashes.\neg, `projects/myproject/repos/name/with/slash`" - }, - "mirrorConfig": { - "$ref": "MirrorConfig", - "description": "How this repository mirrors a repository managed by another service.\nRead-only field." - }, - "url": { - "description": "URL to clone the repository from Google Cloud Source Repositories.\nRead-only field.", - "type": "string" - }, - "size": { - "type": "string", - "description": "The disk usage of the repo, in bytes. Read-only field. Size is only\nreturned by GetRepo.", - "format": "int64" - } - }, - "id": "Repo" + "documentationLink": "https://cloud.google.com/source-repositories/docs/apis", + "icons": { + "x16": "http://www.google.com/images/icons/product/search-16.gif", + "x32": "http://www.google.com/images/icons/product/search-32.gif" + }, + "id": "sourcerepo:v1", + "kind": "discovery#restDescription", + "name": "sourcerepo", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "$.xgafv": { + "description": "V1 error format.", + "enum": [ + "1", + "2" + ], + "enumDescriptions": [ + "v1 error format", + "v2 error format" + ], + "location": "query", + "type": "string" }, - "TestIamPermissionsResponse": { - "type": "object", - "properties": { - "permissions": { - "description": "A subset of `TestPermissionsRequest.permissions` that the caller is\nallowed.", - "type": "array", - "items": { - "type": "string" - } - } - }, - "id": "TestIamPermissionsResponse", - "description": "Response message for `TestIamPermissions` method." + "access_token": { + "description": "OAuth access token.", + "location": "query", + "type": "string" }, - "ListReposResponse": { - "type": "object", - "properties": { + "alt": { + "default": "json", + "description": "Data format for response.", + "enum": [ + "json", + "media", + "proto" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json", + "Media download with context-dependent Content-Type", + "Responses with Content-Type of application/x-protobuf" + ], + "location": "query", + "type": "string" + }, + "bearer_token": { + "description": "OAuth bearer token.", + "location": "query", + "type": "string" + }, + "callback": { + "description": "JSONP", + "location": "query", + "type": "string" + }, + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "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.", + "location": "query", + "type": "string" + }, + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "pp": { + "default": "true", + "description": "Pretty-print response.", + "location": "query", + "type": "boolean" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", + "location": "query", + "type": "string" + }, + "uploadType": { + "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", + "location": "query", + "type": "string" + }, + "upload_protocol": { + "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", + "location": "query", + "type": "string" + } + }, + "protocol": "rest", + "resources": { + "projects": { + "resources": { "repos": { - "description": "The listed repos.", - "type": "array", - "items": { - "$ref": "Repo" + "methods": { + "create": { + "description": "Creates a repo in the given project with the given name.\n\nIf the named repository already exists, `CreateRepo` returns\n`ALREADY_EXISTS`.", + "flatPath": "v1/projects/{projectsId}/repos", + "httpMethod": "POST", + "id": "sourcerepo.projects.repos.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "The project in which to create the repo. Values are of the form\n`projects/\u003cproject\u003e`.", + "location": "path", + "pattern": "^projects/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+parent}/repos", + "request": { + "$ref": "Repo" + }, + "response": { + "$ref": "Repo" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/source.full_control", + "https://www.googleapis.com/auth/source.read_only", + "https://www.googleapis.com/auth/source.read_write" + ] + }, + "delete": { + "description": "Deletes a repo.", + "flatPath": "v1/projects/{projectsId}/repos/{reposId}", + "httpMethod": "DELETE", + "id": "sourcerepo.projects.repos.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the repo to delete. Values are of the form\n`projects/\u003cproject\u003e/repos/\u003crepo\u003e`.", + "location": "path", + "pattern": "^projects/[^/]+/repos/.+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/source.full_control", + "https://www.googleapis.com/auth/source.read_only", + "https://www.googleapis.com/auth/source.read_write" + ] + }, + "get": { + "description": "Returns information about a repo.", + "flatPath": "v1/projects/{projectsId}/repos/{reposId}", + "httpMethod": "GET", + "id": "sourcerepo.projects.repos.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the requested repository. Values are of the form\n`projects/\u003cproject\u003e/repos/\u003crepo\u003e`.", + "location": "path", + "pattern": "^projects/[^/]+/repos/.+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "Repo" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/source.full_control", + "https://www.googleapis.com/auth/source.read_only", + "https://www.googleapis.com/auth/source.read_write" + ] + }, + "getIamPolicy": { + "description": "Gets the access control policy for a resource.\nReturns an empty policy if the resource exists and does not have a policy\nset.", + "flatPath": "v1/projects/{projectsId}/repos/{reposId}:getIamPolicy", + "httpMethod": "GET", + "id": "sourcerepo.projects.repos.getIamPolicy", + "parameterOrder": [ + "resource" + ], + "parameters": { + "resource": { + "description": "REQUIRED: The resource for which the policy is being requested.\nSee the operation documentation for the appropriate value for this field.", + "location": "path", + "pattern": "^projects/[^/]+/repos/.+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+resource}:getIamPolicy", + "response": { + "$ref": "Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/source.full_control", + "https://www.googleapis.com/auth/source.read_only", + "https://www.googleapis.com/auth/source.read_write" + ] + }, + "list": { + "description": "Returns all repos belonging to a project. The sizes of the repos are\nnot set by ListRepos. To get the size of a repo, use GetRepo.", + "flatPath": "v1/projects/{projectsId}/repos", + "httpMethod": "GET", + "id": "sourcerepo.projects.repos.list", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The project ID whose repos should be listed. Values are of the form\n`projects/\u003cproject\u003e`.", + "location": "path", + "pattern": "^projects/[^/]+$", + "required": true, + "type": "string" + }, + "pageSize": { + "description": "Maximum number of repositories to return; between 1 and 500.\nIf not set or zero, defaults to 100 at the server.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Resume listing repositories where a prior ListReposResponse\nleft off. This is an opaque token that must be obtained from\na recent, prior ListReposResponse's next_page_token field.", + "location": "query", + "type": "string" + } + }, + "path": "v1/{+name}/repos", + "response": { + "$ref": "ListReposResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/source.full_control", + "https://www.googleapis.com/auth/source.read_only", + "https://www.googleapis.com/auth/source.read_write" + ] + }, + "setIamPolicy": { + "description": "Sets the access control policy on the specified resource. Replaces any\nexisting policy.", + "flatPath": "v1/projects/{projectsId}/repos/{reposId}:setIamPolicy", + "httpMethod": "POST", + "id": "sourcerepo.projects.repos.setIamPolicy", + "parameterOrder": [ + "resource" + ], + "parameters": { + "resource": { + "description": "REQUIRED: The resource for which the policy is being specified.\nSee the operation documentation for the appropriate value for this field.", + "location": "path", + "pattern": "^projects/[^/]+/repos/.+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+resource}:setIamPolicy", + "request": { + "$ref": "SetIamPolicyRequest" + }, + "response": { + "$ref": "Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/source.full_control", + "https://www.googleapis.com/auth/source.read_only", + "https://www.googleapis.com/auth/source.read_write" + ] + }, + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource.\nIf the resource does not exist, this will return an empty set of\npermissions, not a NOT_FOUND error.", + "flatPath": "v1/projects/{projectsId}/repos/{reposId}:testIamPermissions", + "httpMethod": "POST", + "id": "sourcerepo.projects.repos.testIamPermissions", + "parameterOrder": [ + "resource" + ], + "parameters": { + "resource": { + "description": "REQUIRED: The resource for which the policy detail is being requested.\nSee the operation documentation for the appropriate value for this field.", + "location": "path", + "pattern": "^projects/[^/]+/repos/.+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+resource}:testIamPermissions", + "request": { + "$ref": "TestIamPermissionsRequest" + }, + "response": { + "$ref": "TestIamPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/source.full_control", + "https://www.googleapis.com/auth/source.read_only", + "https://www.googleapis.com/auth/source.read_write" + ] + } } + } + } + } + }, + "revision": "20180226", + "rootUrl": "https://sourcerepo.googleapis.com/", + "schemas": { + "AuditConfig": { + "description": "Specifies the audit configuration for a service.\nThe configuration determines which permission types are logged, and what\nidentities, if any, are exempted from logging.\nAn AuditConfig must have one or more AuditLogConfigs.\n\nIf there are AuditConfigs for both `allServices` and a specific service,\nthe union of the two AuditConfigs is used for that service: the log_types\nspecified in each AuditConfig are enabled, and the exempted_members in each\nAuditLogConfig are exempted.\n\nExample Policy with multiple AuditConfigs:\n\n {\n \"audit_configs\": [\n {\n \"service\": \"allServices\"\n \"audit_log_configs\": [\n {\n \"log_type\": \"DATA_READ\",\n \"exempted_members\": [\n \"user:foo@gmail.com\"\n ]\n },\n {\n \"log_type\": \"DATA_WRITE\",\n },\n {\n \"log_type\": \"ADMIN_READ\",\n }\n ]\n },\n {\n \"service\": \"fooservice.googleapis.com\"\n \"audit_log_configs\": [\n {\n \"log_type\": \"DATA_READ\",\n },\n {\n \"log_type\": \"DATA_WRITE\",\n \"exempted_members\": [\n \"user:bar@gmail.com\"\n ]\n }\n ]\n }\n ]\n }\n\nFor fooservice, this policy enables DATA_READ, DATA_WRITE and ADMIN_READ\nlogging. It also exempts foo@gmail.com from DATA_READ logging, and\nbar@gmail.com from DATA_WRITE logging.", + "id": "AuditConfig", + "properties": { + "auditLogConfigs": { + "description": "The configuration for logging of each type of permission.\nNext ID: 4", + "items": { + "$ref": "AuditLogConfig" + }, + "type": "array" }, - "nextPageToken": { - "description": "If non-empty, additional repositories exist within the project. These\ncan be retrieved by including this value in the next ListReposRequest's\npage_token field.", + "service": { + "description": "Specifies a service that will be enabled for audit logging.\nFor example, `storage.googleapis.com`, `cloudsql.googleapis.com`.\n`allServices` is a special value that covers all services.", "type": "string" } }, - "id": "ListReposResponse", - "description": "Response for ListRepos. The size is not set in the returned repositories." + "type": "object" }, "AuditLogConfig": { "description": "Provides the configuration for logging a type of permissions.\nExample:\n\n {\n \"audit_log_configs\": [\n {\n \"log_type\": \"DATA_READ\",\n \"exempted_members\": [\n \"user:foo@gmail.com\"\n ]\n },\n {\n \"log_type\": \"DATA_WRITE\",\n }\n ]\n }\n\nThis enables 'DATA_READ' and 'DATA_WRITE' logging, while exempting\nfoo@gmail.com from DATA_READ logging.", - "type": "object", + "id": "AuditLogConfig", "properties": { "exemptedMembers": { "description": "Specifies the identities that do not cause logging for this type of\npermission.\nFollows the same format of Binding.members.", - "type": "array", "items": { "type": "string" - } + }, + "type": "array" }, "logType": { - "type": "string", - "enumDescriptions": [ - "Default case. Should never be this.", - "Admin reads. Example: CloudIAM getIamPolicy", - "Data writes. Example: CloudSQL Users create", - "Data reads. Example: CloudSQL Users list" - ], + "description": "The log type that this config enables.", "enum": [ "LOG_TYPE_UNSPECIFIED", "ADMIN_READ", "DATA_WRITE", "DATA_READ" ], - "description": "The log type that this config enables." + "enumDescriptions": [ + "Default case. Should never be this.", + "Admin reads. Example: CloudIAM getIamPolicy", + "Data writes. Example: CloudSQL Users create", + "Data reads. Example: CloudSQL Users list" + ], + "type": "string" } }, - "id": "AuditLogConfig" + "type": "object" }, - "TestIamPermissionsRequest": { - "type": "object", + "Binding": { + "description": "Associates `members` with a `role`.", + "id": "Binding", "properties": { - "permissions": { - "type": "array", + "members": { + "description": "Specifies the identities requesting access for a Cloud Platform resource.\n`members` can have the following values:\n\n* `allUsers`: A special identifier that represents anyone who is\n on the internet; with or without a Google account.\n\n* `allAuthenticatedUsers`: A special identifier that represents anyone\n who is authenticated with a Google account or a service account.\n\n* `user:{emailid}`: An email address that represents a specific Google\n account. For example, `alice@gmail.com` or `joe@example.com`.\n\n\n* `serviceAccount:{emailid}`: An email address that represents a service\n account. For example, `my-other-app@appspot.gserviceaccount.com`.\n\n* `group:{emailid}`: An email address that represents a Google group.\n For example, `admins@example.com`.\n\n\n* `domain:{domain}`: A Google Apps domain name that represents all the\n users of that domain. For example, `google.com` or `example.com`.\n\n", "items": { "type": "string" }, - "description": "The set of permissions to check for the `resource`. Permissions with\nwildcards (such as '*' or 'storage.*') are not allowed. For more\ninformation see\n[IAM Overview](https://cloud.google.com/iam/docs/overview#permissions)." + "type": "array" + }, + "role": { + "description": "Role that is assigned to `members`.\nFor example, `roles/viewer`, `roles/editor`, or `roles/owner`.\nRequired", + "type": "string" } }, - "id": "TestIamPermissionsRequest", - "description": "Request message for `TestIamPermissions` method." + "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" + }, + "ListReposResponse": { + "description": "Response for ListRepos. The size is not set in the returned repositories.", + "id": "ListReposResponse", + "properties": { + "nextPageToken": { + "description": "If non-empty, additional repositories exist within the project. These\ncan be retrieved by including this value in the next ListReposRequest's\npage_token field.", + "type": "string" + }, + "repos": { + "description": "The listed repos.", + "items": { + "$ref": "Repo" + }, + "type": "array" + } + }, + "type": "object" + }, + "MirrorConfig": { + "description": "Configuration to automatically mirror a repository from another\nhosting service, for example GitHub or Bitbucket.", + "id": "MirrorConfig", + "properties": { + "deployKeyId": { + "description": "ID of the SSH deploy key at the other hosting service.\nRemoving this key from the other service would deauthorize\nGoogle Cloud Source Repositories from mirroring.", + "type": "string" + }, + "url": { + "description": "URL of the main repository at the other hosting service.", + "type": "string" + }, + "webhookId": { + "description": "ID of the webhook listening to updates to trigger mirroring.\nRemoving this webhook from the other hosting service will stop\nGoogle Cloud Source Repositories from receiving notifications,\nand thereby disabling mirroring.", + "type": "string" + } + }, + "type": "object" }, "Policy": { - "description": "Defines an Identity and Access Management (IAM) policy. It is used to\nspecify access control policies for Cloud Platform resources.\n\n\nA `Policy` consists of a list of `bindings`. A `Binding` binds a list of\n`members` to a `role`, where the members can be user accounts, Google groups,\nGoogle domains, and service accounts. A `role` is a named list of permissions\ndefined by IAM.\n\n**Example**\n\n {\n \"bindings\": [\n {\n \"role\": \"roles/owner\",\n \"members\": [\n \"user:mike@example.com\",\n \"group:admins@example.com\",\n \"domain:google.com\",\n \"serviceAccount:my-other-app@appspot.gserviceaccount.com\",\n ]\n },\n {\n \"role\": \"roles/viewer\",\n \"members\": [\"user:sean@example.com\"]\n }\n ]\n }\n\nFor a description of IAM and its features, see the\n[IAM developer's guide](https://cloud.google.com/iam).", - "type": "object", + "description": "Defines an Identity and Access Management (IAM) policy. It is used to\nspecify access control policies for Cloud Platform resources.\n\n\nA `Policy` consists of a list of `bindings`. A `Binding` binds a list of\n`members` to a `role`, where the members can be user accounts, Google groups,\nGoogle domains, and service accounts. A `role` is a named list of permissions\ndefined by IAM.\n\n**Example**\n\n {\n \"bindings\": [\n {\n \"role\": \"roles/owner\",\n \"members\": [\n \"user:mike@example.com\",\n \"group:admins@example.com\",\n \"domain:google.com\",\n \"serviceAccount:my-other-app@appspot.gserviceaccount.com\",\n ]\n },\n {\n \"role\": \"roles/viewer\",\n \"members\": [\"user:sean@example.com\"]\n }\n ]\n }\n\nFor a description of IAM and its features, see the\n[IAM developer's guide](https://cloud.google.com/iam/docs).", + "id": "Policy", "properties": { + "auditConfigs": { + "description": "Specifies cloud audit logging configuration for this policy.", + "items": { + "$ref": "AuditConfig" + }, + "type": "array" + }, "bindings": { "description": "Associates a list of `members` to a `role`.\n`bindings` with no members will result in an error.", - "type": "array", "items": { "$ref": "Binding" - } - }, - "iamOwned": { - "type": "boolean" + }, + "type": "array" }, "etag": { "description": "`etag` is used for optimistic concurrency control as a way to help\nprevent simultaneous updates of a policy from overwriting each other.\nIt is strongly suggested that systems make use of the `etag` in the\nread-modify-write cycle to perform policy updates in order to avoid race\nconditions: An `etag` is returned in the response to `getIamPolicy`, and\nsystems are expected to put that etag in the request to `setIamPolicy` to\nensure that their change will be applied to the same version of the policy.\n\nIf no `etag` is provided in the call to `setIamPolicy`, then the existing\npolicy is overwritten blindly.", @@ -129,46 +484,40 @@ "type": "string" }, "version": { - "type": "integer", - "description": "Version of the `Policy`. The default version is 0.", - "format": "int32" - }, - "auditConfigs": { - "type": "array", - "items": { - "$ref": "AuditConfig" - }, - "description": "Specifies cloud audit logging configuration for this policy." + "description": "Deprecated.", + "format": "int32", + "type": "integer" } }, - "id": "Policy" + "type": "object" }, - "AuditConfig": { - "type": "object", + "Repo": { + "description": "A repository (or repo) is a Git repository storing versioned source content.", + "id": "Repo", "properties": { - "service": { - "type": "string", - "description": "Specifies a service that will be enabled for audit logging.\nFor example, `storage.googleapis.com`, `cloudsql.googleapis.com`.\n`allServices` is a special value that covers all services." + "mirrorConfig": { + "$ref": "MirrorConfig", + "description": "How this repository mirrors a repository managed by another service.\nRead-only field." }, - "auditLogConfigs": { - "description": "The configuration for logging of each type of permission.\nNext ID: 4", - "type": "array", - "items": { - "$ref": "AuditLogConfig" - } + "name": { + "description": "Resource name of the repository, of the form\n`projects/\u003cproject\u003e/repos/\u003crepo\u003e`. The repo name may contain slashes.\neg, `projects/myproject/repos/name/with/slash`", + "type": "string" }, - "exemptedMembers": { - "type": "array", - "items": { - "type": "string" - } + "size": { + "description": "The disk usage of the repo, in bytes. Read-only field. Size is only\nreturned by GetRepo.", + "format": "int64", + "type": "string" + }, + "url": { + "description": "URL to clone the repository from Google Cloud Source Repositories.\nRead-only field.", + "type": "string" } }, - "id": "AuditConfig", - "description": "Specifies the audit configuration for a service.\nThe configuration determines which permission types are logged, and what\nidentities, if any, are exempted from logging.\nAn AuditConfig must have one or more AuditLogConfigs.\n\nIf there are AuditConfigs for both `allServices` and a specific service,\nthe union of the two AuditConfigs is used for that service: the log_types\nspecified in each AuditConfig are enabled, and the exempted_members in each\nAuditConfig are exempted.\n\nExample Policy with multiple AuditConfigs:\n\n {\n \"audit_configs\": [\n {\n \"service\": \"allServices\"\n \"audit_log_configs\": [\n {\n \"log_type\": \"DATA_READ\",\n \"exempted_members\": [\n \"user:foo@gmail.com\"\n ]\n },\n {\n \"log_type\": \"DATA_WRITE\",\n },\n {\n \"log_type\": \"ADMIN_READ\",\n }\n ]\n },\n {\n \"service\": \"fooservice.googleapis.com\"\n \"audit_log_configs\": [\n {\n \"log_type\": \"DATA_READ\",\n },\n {\n \"log_type\": \"DATA_WRITE\",\n \"exempted_members\": [\n \"user:bar@gmail.com\"\n ]\n }\n ]\n }\n ]\n }\n\nFor fooservice, this policy enables DATA_READ, DATA_WRITE and ADMIN_READ\nlogging. It also exempts foo@gmail.com from DATA_READ logging, and\nbar@gmail.com from DATA_WRITE logging." + "type": "object" }, "SetIamPolicyRequest": { - "type": "object", + "description": "Request message for `SetIamPolicy` method.", + "id": "SetIamPolicyRequest", "properties": { "policy": { "$ref": "Policy", @@ -180,424 +529,39 @@ "type": "string" } }, - "id": "SetIamPolicyRequest", - "description": "Request message for `SetIamPolicy` method." + "type": "object" }, - "Binding": { - "description": "Associates `members` with a `role`.", - "type": "object", + "TestIamPermissionsRequest": { + "description": "Request message for `TestIamPermissions` method.", + "id": "TestIamPermissionsRequest", "properties": { - "condition": { - "$ref": "Expr", - "description": "The condition that is associated with this binding.\nNOTE: an unsatisfied condition will not allow user access via current\nbinding. Different bindings, including their conditions, are examined\nindependently.\nThis field is GOOGLE_INTERNAL." - }, - "members": { - "description": "Specifies the identities requesting access for a Cloud Platform resource.\n`members` can have the following values:\n\n* `allUsers`: A special identifier that represents anyone who is\n on the internet; with or without a Google account.\n\n* `allAuthenticatedUsers`: A special identifier that represents anyone\n who is authenticated with a Google account or a service account.\n\n* `user:{emailid}`: An email address that represents a specific Google\n account. For example, `alice@gmail.com` or `joe@example.com`.\n\n\n* `serviceAccount:{emailid}`: An email address that represents a service\n account. For example, `my-other-app@appspot.gserviceaccount.com`.\n\n* `group:{emailid}`: An email address that represents a Google group.\n For example, `admins@example.com`.\n\n\n* `domain:{domain}`: A Google Apps domain name that represents all the\n users of that domain. For example, `google.com` or `example.com`.\n\n", - "type": "array", + "permissions": { + "description": "The set of permissions to check for the `resource`. Permissions with\nwildcards (such as '*' or 'storage.*') are not allowed. For more\ninformation see\n[IAM Overview](https://cloud.google.com/iam/docs/overview#permissions).", "items": { "type": "string" - } - }, - "role": { - "description": "Role that is assigned to `members`.\nFor example, `roles/viewer`, `roles/editor`, or `roles/owner`.\nRequired", - "type": "string" + }, + "type": "array" } }, - "id": "Binding" + "type": "object" }, - "Expr": { - "description": "Represents an expression text. Example:\n\n title: \"User account presence\"\n description: \"Determines whether the request has a user account\"\n expression: \"size(request.user) \u003e 0\"", - "type": "object", + "TestIamPermissionsResponse": { + "description": "Response message for `TestIamPermissions` method.", + "id": "TestIamPermissionsResponse", "properties": { - "title": { - "description": "An optional title for the expression, i.e. a short string describing\nits purpose. This can be used e.g. in UIs which allow to enter the\nexpression.", - "type": "string" - }, - "location": { - "type": "string", - "description": "An optional string indicating the location of the expression for error\nreporting, e.g. a file name and a position in the file." - }, - "description": { - "type": "string", - "description": "An optional description of the expression. This is a longer text which\ndescribes the expression, e.g. when hovered over it in a UI." - }, - "expression": { - "description": "Textual representation of an expression in\nCommon Expression Language syntax.\n\nThe application context of the containing message determines which\nwell-known feature set of CEL is supported.", - "type": "string" + "permissions": { + "description": "A subset of `TestPermissionsRequest.permissions` that the caller is\nallowed.", + "items": { + "type": "string" + }, + "type": "array" } }, - "id": "Expr" - }, - "MirrorConfig": { - "type": "object", - "properties": { - "webhookId": { - "type": "string", - "description": "ID of the webhook listening to updates to trigger mirroring.\nRemoving this webhook from the other hosting service will stop\nGoogle Cloud Source Repositories from receiving notifications,\nand thereby disabling mirroring." - }, - "deployKeyId": { - "description": "ID of the SSH deploy key at the other hosting service.\nRemoving this key from the other service would deauthorize\nGoogle Cloud Source Repositories from mirroring.", - "type": "string" - }, - "url": { - "description": "URL of the main repository at the other hosting service.", - "type": "string" - } - }, - "id": "MirrorConfig", - "description": "Configuration to automatically mirror a repository from another\nhosting service, for example GitHub or Bitbucket." - }, - "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 `{}`.", - "type": "object", - "properties": {}, - "id": "Empty" + "type": "object" } }, - "icons": { - "x32": "http://www.google.com/images/icons/product/search-32.gif", - "x16": "http://www.google.com/images/icons/product/search-16.gif" - }, - "protocol": "rest", - "canonicalName": "Cloud Source Repositories", - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/source.read_write": { - "description": "Manage the contents of your source code repositories" - }, - "https://www.googleapis.com/auth/cloud-platform": { - "description": "View and manage your data across Google Cloud Platform services" - }, - "https://www.googleapis.com/auth/source.full_control": { - "description": "Manage your source code repositories" - }, - "https://www.googleapis.com/auth/source.read_only": { - "description": "View the contents of your source code repositories" - } - } - } - }, - "rootUrl": "https://sourcerepo.googleapis.com/", - "ownerDomain": "google.com", - "name": "sourcerepo", - "batchPath": "batch", + "servicePath": "", "title": "Cloud Source Repositories API", - "ownerName": "Google", - "resources": { - "projects": { - "resources": { - "repos": { - "methods": { - "list": { - "response": { - "$ref": "ListReposResponse" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "GET", - "parameters": { - "name": { - "required": true, - "type": "string", - "pattern": "^projects/[^/]+$", - "location": "path", - "description": "The project ID whose repos should be listed. Values are of the form\n`projects/\u003cproject\u003e`." - }, - "pageToken": { - "type": "string", - "location": "query", - "description": "Resume listing repositories where a prior ListReposResponse\nleft off. This is an opaque token that must be obtained from\na recent, prior ListReposResponse's next_page_token field." - }, - "pageSize": { - "type": "integer", - "location": "query", - "description": "Maximum number of repositories to return; between 1 and 500.\nIf not set or zero, defaults to 100 at the server.", - "format": "int32" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/source.full_control", - "https://www.googleapis.com/auth/source.read_only", - "https://www.googleapis.com/auth/source.read_write" - ], - "flatPath": "v1/projects/{projectsId}/repos", - "path": "v1/{+name}/repos", - "id": "sourcerepo.projects.repos.list", - "description": "Returns all repos belonging to a project. The sizes of the repos are\nnot set by ListRepos. To get the size of a repo, use GetRepo." - }, - "create": { - "response": { - "$ref": "Repo" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/source.full_control", - "https://www.googleapis.com/auth/source.read_only", - "https://www.googleapis.com/auth/source.read_write" - ], - "parameters": { - "parent": { - "location": "path", - "description": "The project in which to create the repo. Values are of the form\n`projects/\u003cproject\u003e`.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+$" - } - }, - "flatPath": "v1/projects/{projectsId}/repos", - "path": "v1/{+parent}/repos", - "id": "sourcerepo.projects.repos.create", - "description": "Creates a repo in the given project with the given name.\n\nIf the named repository already exists, `CreateRepo` returns\n`ALREADY_EXISTS`.", - "request": { - "$ref": "Repo" - } - }, - "setIamPolicy": { - "request": { - "$ref": "SetIamPolicyRequest" - }, - "description": "Sets the access control policy on the specified resource. Replaces any\nexisting policy.", - "httpMethod": "POST", - "parameterOrder": [ - "resource" - ], - "response": { - "$ref": "Policy" - }, - "parameters": { - "resource": { - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/repos/.+$", - "location": "path", - "description": "REQUIRED: The resource for which the policy is being specified.\nSee the operation documentation for the appropriate value for this field." - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/source.full_control", - "https://www.googleapis.com/auth/source.read_only", - "https://www.googleapis.com/auth/source.read_write" - ], - "flatPath": "v1/projects/{projectsId}/repos/{reposId}:setIamPolicy", - "id": "sourcerepo.projects.repos.setIamPolicy", - "path": "v1/{+resource}:setIamPolicy" - }, - "getIamPolicy": { - "httpMethod": "GET", - "parameterOrder": [ - "resource" - ], - "response": { - "$ref": "Policy" - }, - "parameters": { - "resource": { - "location": "path", - "description": "REQUIRED: The resource for which the policy is being requested.\nSee the operation documentation for the appropriate value for this field.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/repos/.+$" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/source.full_control", - "https://www.googleapis.com/auth/source.read_only", - "https://www.googleapis.com/auth/source.read_write" - ], - "flatPath": "v1/projects/{projectsId}/repos/{reposId}:getIamPolicy", - "id": "sourcerepo.projects.repos.getIamPolicy", - "path": "v1/{+resource}:getIamPolicy", - "description": "Gets the access control policy for a resource.\nReturns an empty policy if the resource exists and does not have a policy\nset." - }, - "get": { - "response": { - "$ref": "Repo" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "GET", - "parameters": { - "name": { - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/repos/.+$", - "location": "path", - "description": "The name of the requested repository. Values are of the form\n`projects/\u003cproject\u003e/repos/\u003crepo\u003e`." - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/source.full_control", - "https://www.googleapis.com/auth/source.read_only", - "https://www.googleapis.com/auth/source.read_write" - ], - "flatPath": "v1/projects/{projectsId}/repos/{reposId}", - "path": "v1/{+name}", - "id": "sourcerepo.projects.repos.get", - "description": "Returns information about a repo." - }, - "testIamPermissions": { - "request": { - "$ref": "TestIamPermissionsRequest" - }, - "description": "Returns permissions that a caller has on the specified resource.\nIf the resource does not exist, this will return an empty set of\npermissions, not a NOT_FOUND error.", - "response": { - "$ref": "TestIamPermissionsResponse" - }, - "parameterOrder": [ - "resource" - ], - "httpMethod": "POST", - "parameters": { - "resource": { - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/repos/.+$", - "location": "path", - "description": "REQUIRED: The resource for which the policy detail is being requested.\nSee the operation documentation for the appropriate value for this field." - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/source.full_control", - "https://www.googleapis.com/auth/source.read_only", - "https://www.googleapis.com/auth/source.read_write" - ], - "flatPath": "v1/projects/{projectsId}/repos/{reposId}:testIamPermissions", - "path": "v1/{+resource}:testIamPermissions", - "id": "sourcerepo.projects.repos.testIamPermissions" - }, - "delete": { - "httpMethod": "DELETE", - "parameterOrder": [ - "name" - ], - "response": { - "$ref": "Empty" - }, - "parameters": { - "name": { - "location": "path", - "description": "The name of the repo to delete. Values are of the form\n`projects/\u003cproject\u003e/repos/\u003crepo\u003e`.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/repos/.+$" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/source.full_control", - "https://www.googleapis.com/auth/source.read_only", - "https://www.googleapis.com/auth/source.read_write" - ], - "flatPath": "v1/projects/{projectsId}/repos/{reposId}", - "id": "sourcerepo.projects.repos.delete", - "path": "v1/{+name}", - "description": "Deletes a repo." - } - } - } - } - } - }, - "parameters": { - "pp": { - "type": "boolean", - "default": "true", - "location": "query", - "description": "Pretty-print response." - }, - "oauth_token": { - "type": "string", - "location": "query", - "description": "OAuth 2.0 token for the current user." - }, - "bearer_token": { - "type": "string", - "location": "query", - "description": "OAuth bearer token." - }, - "upload_protocol": { - "location": "query", - "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", - "type": "string" - }, - "prettyPrint": { - "location": "query", - "description": "Returns response with indentations and line breaks.", - "type": "boolean", - "default": "true" - }, - "fields": { - "type": "string", - "location": "query", - "description": "Selector specifying which fields to include in a partial response." - }, - "uploadType": { - "location": "query", - "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", - "type": "string" - }, - "$.xgafv": { - "type": "string", - "enumDescriptions": [ - "v1 error format", - "v2 error format" - ], - "location": "query", - "enum": [ - "1", - "2" - ], - "description": "V1 error format." - }, - "callback": { - "type": "string", - "location": "query", - "description": "JSONP" - }, - "alt": { - "type": "string", - "enumDescriptions": [ - "Responses with Content-Type of application/json", - "Media download with context-dependent Content-Type", - "Responses with Content-Type of application/x-protobuf" - ], - "location": "query", - "description": "Data format for response.", - "default": "json", - "enum": [ - "json", - "media", - "proto" - ] - }, - "access_token": { - "location": "query", - "description": "OAuth access token.", - "type": "string" - }, - "key": { - "type": "string", - "location": "query", - "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." - }, - "quotaUser": { - "type": "string", - "location": "query", - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters." - } - }, "version": "v1", - "baseUrl": "https://sourcerepo.googleapis.com/" -} + "version_module": true +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/sourcerepo/v1/sourcerepo-gen.go b/vendor/google.golang.org/api/sourcerepo/v1/sourcerepo-gen.go index b90cc79c3..d69c06810 100644 --- a/vendor/google.golang.org/api/sourcerepo/v1/sourcerepo-gen.go +++ b/vendor/google.golang.org/api/sourcerepo/v1/sourcerepo-gen.go @@ -117,7 +117,7 @@ type ProjectsReposService struct { // log_types // specified in each AuditConfig are enabled, and the exempted_members // in each -// AuditConfig are exempted. +// AuditLogConfig are exempted. // // Example Policy with multiple AuditConfigs: // @@ -168,8 +168,6 @@ type AuditConfig struct { // Next ID: 4 AuditLogConfigs []*AuditLogConfig `json:"auditLogConfigs,omitempty"` - ExemptedMembers []string `json:"exemptedMembers,omitempty"` - // Service: Specifies a service that will be enabled for audit // logging. // For example, `storage.googleapis.com`, @@ -264,15 +262,6 @@ func (s *AuditLogConfig) MarshalJSON() ([]byte, error) { // Binding: Associates `members` with a `role`. type Binding struct { - // Condition: The condition that is associated with this binding. - // NOTE: an unsatisfied condition will not allow user access via - // current - // binding. Different bindings, including their conditions, are - // examined - // independently. - // This field is GOOGLE_INTERNAL. - Condition *Expr `json:"condition,omitempty"` - // Members: Specifies the identities requesting access for a Cloud // Platform resource. // `members` can have the following values: @@ -314,7 +303,7 @@ type Binding struct { // Required Role string `json:"role,omitempty"` - // ForceSendFields is a list of field names (e.g. "Condition") to + // ForceSendFields is a list of field names (e.g. "Members") to // unconditionally include in API requests. By default, fields with // empty values are omitted from API requests. However, any non-pointer, // non-interface field appearing in ForceSendFields will be sent to the @@ -322,7 +311,7 @@ type Binding struct { // used to include empty fields in Patch requests. ForceSendFields []string `json:"-"` - // NullFields is a list of field names (e.g. "Condition") to include in + // NullFields is a list of field names (e.g. "Members") to include in // API requests with the JSON null value. By default, fields with empty // values are omitted from API requests. However, any field with an // empty value appearing in NullFields will be sent to the server as @@ -355,60 +344,6 @@ type Empty struct { googleapi.ServerResponse `json:"-"` } -// Expr: Represents an expression text. Example: -// -// title: "User account presence" -// description: "Determines whether the request has a user account" -// expression: "size(request.user) > 0" -type Expr struct { - // Description: An optional description of the expression. This is a - // longer text which - // describes the expression, e.g. when hovered over it in a UI. - Description string `json:"description,omitempty"` - - // Expression: Textual representation of an expression in - // Common Expression Language syntax. - // - // The application context of the containing message determines - // which - // well-known feature set of CEL is supported. - Expression string `json:"expression,omitempty"` - - // Location: An optional string indicating the location of the - // expression for error - // reporting, e.g. a file name and a position in the file. - Location string `json:"location,omitempty"` - - // Title: An optional title for the expression, i.e. a short string - // describing - // its purpose. This can be used e.g. in UIs which allow to enter - // the - // expression. - Title string `json:"title,omitempty"` - - // ForceSendFields is a list of field names (e.g. "Description") to - // unconditionally include in API requests. By default, fields with - // empty values are omitted from API requests. However, any non-pointer, - // non-interface field appearing in ForceSendFields will be sent to the - // server regardless of whether the field is empty or not. This may be - // used to include empty fields in Patch requests. - ForceSendFields []string `json:"-"` - - // NullFields is a list of field names (e.g. "Description") to include - // in API requests with the JSON null value. By default, fields with - // empty values are omitted from API requests. However, any field with - // an empty value appearing in NullFields will be sent to the server as - // null. It is an error if a field in this list has a non-empty value. - // This may be used to include null fields in Patch requests. - NullFields []string `json:"-"` -} - -func (s *Expr) MarshalJSON() ([]byte, error) { - type NoMethod Expr - raw := NoMethod(*s) - return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) -} - // ListReposResponse: Response for ListRepos. The size is not set in // the returned repositories. type ListReposResponse struct { @@ -527,7 +462,7 @@ func (s *MirrorConfig) MarshalJSON() ([]byte, error) { // } // // For a description of IAM and its features, see the -// [IAM developer's guide](https://cloud.google.com/iam). +// [IAM developer's guide](https://cloud.google.com/iam/docs). type Policy struct { // AuditConfigs: Specifies cloud audit logging configuration for this // policy. @@ -557,9 +492,7 @@ type Policy struct { // policy is overwritten blindly. Etag string `json:"etag,omitempty"` - IamOwned bool `json:"iamOwned,omitempty"` - - // Version: Version of the `Policy`. The default version is 0. + // Version: Deprecated. Version int64 `json:"version,omitempty"` // ServerResponse contains the HTTP response code and headers from the diff --git a/vendor/google.golang.org/api/spanner/v1/spanner-api.json b/vendor/google.golang.org/api/spanner/v1/spanner-api.json index 29c492786..6ded698aa 100644 --- a/vendor/google.golang.org/api/spanner/v1/spanner-api.json +++ b/vendor/google.golang.org/api/spanner/v1/spanner-api.json @@ -1,729 +1,1211 @@ { - "ownerDomain": "google.com", - "name": "spanner", + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/cloud-platform": { + "description": "View and manage your data across Google Cloud Platform services" + }, + "https://www.googleapis.com/auth/spanner.admin": { + "description": "Administer your Spanner databases" + }, + "https://www.googleapis.com/auth/spanner.data": { + "description": "View and manage the contents of your Spanner databases" + } + } + } + }, + "basePath": "", + "baseUrl": "https://spanner.googleapis.com/", "batchPath": "batch", - "title": "Cloud Spanner API", + "canonicalName": "Spanner", + "description": "Cloud Spanner is a managed, mission-critical, globally consistent and scalable relational database service.", + "discoveryVersion": "v1", + "documentationLink": "https://cloud.google.com/spanner/", + "fullyEncodeReservedExpansion": true, + "icons": { + "x16": "http://www.google.com/images/icons/product/search-16.gif", + "x32": "http://www.google.com/images/icons/product/search-32.gif" + }, + "id": "spanner:v1", + "kind": "discovery#restDescription", + "name": "spanner", + "ownerDomain": "google.com", "ownerName": "Google", + "parameters": { + "$.xgafv": { + "description": "V1 error format.", + "enum": [ + "1", + "2" + ], + "enumDescriptions": [ + "v1 error format", + "v2 error format" + ], + "location": "query", + "type": "string" + }, + "access_token": { + "description": "OAuth access token.", + "location": "query", + "type": "string" + }, + "alt": { + "default": "json", + "description": "Data format for response.", + "enum": [ + "json", + "media", + "proto" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json", + "Media download with context-dependent Content-Type", + "Responses with Content-Type of application/x-protobuf" + ], + "location": "query", + "type": "string" + }, + "bearer_token": { + "description": "OAuth bearer token.", + "location": "query", + "type": "string" + }, + "callback": { + "description": "JSONP", + "location": "query", + "type": "string" + }, + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "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.", + "location": "query", + "type": "string" + }, + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "pp": { + "default": "true", + "description": "Pretty-print response.", + "location": "query", + "type": "boolean" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", + "location": "query", + "type": "string" + }, + "uploadType": { + "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", + "location": "query", + "type": "string" + }, + "upload_protocol": { + "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", + "location": "query", + "type": "string" + } + }, + "protocol": "rest", "resources": { "projects": { "resources": { + "instanceConfigs": { + "methods": { + "get": { + "description": "Gets information about a particular instance configuration.", + "flatPath": "v1/projects/{projectsId}/instanceConfigs/{instanceConfigsId}", + "httpMethod": "GET", + "id": "spanner.projects.instanceConfigs.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the requested instance configuration. Values are of\nthe form `projects/\u003cproject\u003e/instanceConfigs/\u003cconfig\u003e`.", + "location": "path", + "pattern": "^projects/[^/]+/instanceConfigs/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "InstanceConfig" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/spanner.admin" + ] + }, + "list": { + "description": "Lists the supported instance configurations for a given project.", + "flatPath": "v1/projects/{projectsId}/instanceConfigs", + "httpMethod": "GET", + "id": "spanner.projects.instanceConfigs.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "pageSize": { + "description": "Number of instance configurations to be returned in the response. If 0 or\nless, defaults to the server's maximum allowed page size.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "If non-empty, `page_token` should contain a\nnext_page_token\nfrom a previous ListInstanceConfigsResponse.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The name of the project for which a list of supported instance\nconfigurations is requested. Values are of the form\n`projects/\u003cproject\u003e`.", + "location": "path", + "pattern": "^projects/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+parent}/instanceConfigs", + "response": { + "$ref": "ListInstanceConfigsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/spanner.admin" + ] + } + } + }, "instances": { + "methods": { + "create": { + "description": "Creates an instance and begins preparing it to begin serving. The\nreturned long-running operation\ncan be used to track the progress of preparing the new\ninstance. The instance name is assigned by the caller. If the\nnamed instance already exists, `CreateInstance` returns\n`ALREADY_EXISTS`.\n\nImmediately upon completion of this request:\n\n * The instance is readable via the API, with all requested attributes\n but no allocated resources. Its state is `CREATING`.\n\nUntil completion of the returned operation:\n\n * Cancelling the operation renders the instance immediately unreadable\n via the API.\n * The instance can be deleted.\n * All other attempts to modify the instance are rejected.\n\nUpon completion of the returned operation:\n\n * Billing for all successfully-allocated resources begins (some types\n may have lower than the requested levels).\n * Databases can be created in the instance.\n * The instance's allocated resource levels are readable via the API.\n * The instance's state becomes `READY`.\n\nThe returned long-running operation will\nhave a name of the format `\u003cinstance_name\u003e/operations/\u003coperation_id\u003e` and\ncan be used to track creation of the instance. The\nmetadata field type is\nCreateInstanceMetadata.\nThe response field type is\nInstance, if successful.", + "flatPath": "v1/projects/{projectsId}/instances", + "httpMethod": "POST", + "id": "spanner.projects.instances.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. The name of the project in which to create the instance. Values\nare of the form `projects/\u003cproject\u003e`.", + "location": "path", + "pattern": "^projects/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+parent}/instances", + "request": { + "$ref": "CreateInstanceRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/spanner.admin" + ] + }, + "delete": { + "description": "Deletes an instance.\n\nImmediately upon completion of the request:\n\n * Billing ceases for all of the instance's reserved resources.\n\nSoon afterward:\n\n * The instance and *all of its databases* immediately and\n irrevocably disappear from the API. All data in the databases\n is permanently deleted.", + "flatPath": "v1/projects/{projectsId}/instances/{instancesId}", + "httpMethod": "DELETE", + "id": "spanner.projects.instances.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the instance to be deleted. Values are of the form\n`projects/\u003cproject\u003e/instances/\u003cinstance\u003e`", + "location": "path", + "pattern": "^projects/[^/]+/instances/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/spanner.admin" + ] + }, + "get": { + "description": "Gets information about a particular instance.", + "flatPath": "v1/projects/{projectsId}/instances/{instancesId}", + "httpMethod": "GET", + "id": "spanner.projects.instances.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the requested instance. Values are of the form\n`projects/\u003cproject\u003e/instances/\u003cinstance\u003e`.", + "location": "path", + "pattern": "^projects/[^/]+/instances/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "Instance" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/spanner.admin" + ] + }, + "getIamPolicy": { + "description": "Gets the access control policy for an instance resource. Returns an empty\npolicy if an instance exists but does not have a policy set.\n\nAuthorization requires `spanner.instances.getIamPolicy` on\nresource.", + "flatPath": "v1/projects/{projectsId}/instances/{instancesId}:getIamPolicy", + "httpMethod": "POST", + "id": "spanner.projects.instances.getIamPolicy", + "parameterOrder": [ + "resource" + ], + "parameters": { + "resource": { + "description": "REQUIRED: The Cloud Spanner resource for which the policy is being retrieved. The format is `projects/\u003cproject ID\u003e/instances/\u003cinstance ID\u003e` for instance resources and `projects/\u003cproject ID\u003e/instances/\u003cinstance ID\u003e/databases/\u003cdatabase ID\u003e` for database resources.", + "location": "path", + "pattern": "^projects/[^/]+/instances/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+resource}:getIamPolicy", + "request": { + "$ref": "GetIamPolicyRequest" + }, + "response": { + "$ref": "Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/spanner.admin" + ] + }, + "list": { + "description": "Lists all instances in the given project.", + "flatPath": "v1/projects/{projectsId}/instances", + "httpMethod": "GET", + "id": "spanner.projects.instances.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "filter": { + "description": "An expression for filtering the results of the request. Filter rules are\ncase insensitive. The fields eligible for filtering are:\n\n * `name`\n * `display_name`\n * `labels.key` where key is the name of a label\n\nSome examples of using filters are:\n\n * `name:*` --\u003e The instance has a name.\n * `name:Howl` --\u003e The instance's name contains the string \"howl\".\n * `name:HOWL` --\u003e Equivalent to above.\n * `NAME:howl` --\u003e Equivalent to above.\n * `labels.env:*` --\u003e The instance has the label \"env\".\n * `labels.env:dev` --\u003e The instance has the label \"env\" and the value of\n the label contains the string \"dev\".\n * `name:howl labels.env:dev` --\u003e The instance's name contains \"howl\" and\n it has the label \"env\" with its value\n containing \"dev\".", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "Number of instances to be returned in the response. If 0 or less, defaults\nto the server's maximum allowed page size.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "If non-empty, `page_token` should contain a\nnext_page_token from a\nprevious ListInstancesResponse.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The name of the project for which a list of instances is\nrequested. Values are of the form `projects/\u003cproject\u003e`.", + "location": "path", + "pattern": "^projects/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+parent}/instances", + "response": { + "$ref": "ListInstancesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/spanner.admin" + ] + }, + "patch": { + "description": "Updates an instance, and begins allocating or releasing resources\nas requested. The returned long-running\noperation can be used to track the\nprogress of updating the instance. If the named instance does not\nexist, returns `NOT_FOUND`.\n\nImmediately upon completion of this request:\n\n * For resource types for which a decrease in the instance's allocation\n has been requested, billing is based on the newly-requested level.\n\nUntil completion of the returned operation:\n\n * Cancelling the operation sets its metadata's\n cancel_time, and begins\n restoring resources to their pre-request values. The operation\n is guaranteed to succeed at undoing all resource changes,\n after which point it terminates with a `CANCELLED` status.\n * All other attempts to modify the instance are rejected.\n * Reading the instance via the API continues to give the pre-request\n resource levels.\n\nUpon completion of the returned operation:\n\n * Billing begins for all successfully-allocated resources (some types\n may have lower than the requested levels).\n * All newly-reserved resources are available for serving the instance's\n tables.\n * The instance's new resource levels are readable via the API.\n\nThe returned long-running operation will\nhave a name of the format `\u003cinstance_name\u003e/operations/\u003coperation_id\u003e` and\ncan be used to track the instance modification. The\nmetadata field type is\nUpdateInstanceMetadata.\nThe response field type is\nInstance, if successful.\n\nAuthorization requires `spanner.instances.update` permission on\nresource name.", + "flatPath": "v1/projects/{projectsId}/instances/{instancesId}", + "httpMethod": "PATCH", + "id": "spanner.projects.instances.patch", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. A unique identifier for the instance, which cannot be changed\nafter the instance is created. Values are of the form\n`projects/\u003cproject\u003e/instances/a-z*[a-z0-9]`. The final\nsegment of the name must be between 6 and 30 characters in length.", + "location": "path", + "pattern": "^projects/[^/]+/instances/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "request": { + "$ref": "UpdateInstanceRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/spanner.admin" + ] + }, + "setIamPolicy": { + "description": "Sets the access control policy on an instance resource. Replaces any\nexisting policy.\n\nAuthorization requires `spanner.instances.setIamPolicy` on\nresource.", + "flatPath": "v1/projects/{projectsId}/instances/{instancesId}:setIamPolicy", + "httpMethod": "POST", + "id": "spanner.projects.instances.setIamPolicy", + "parameterOrder": [ + "resource" + ], + "parameters": { + "resource": { + "description": "REQUIRED: The Cloud Spanner resource for which the policy is being set. The format is `projects/\u003cproject ID\u003e/instances/\u003cinstance ID\u003e` for instance resources and `projects/\u003cproject ID\u003e/instances/\u003cinstance ID\u003e/databases/\u003cdatabase ID\u003e` for databases resources.", + "location": "path", + "pattern": "^projects/[^/]+/instances/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+resource}:setIamPolicy", + "request": { + "$ref": "SetIamPolicyRequest" + }, + "response": { + "$ref": "Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/spanner.admin" + ] + }, + "testIamPermissions": { + "description": "Returns permissions that the caller has on the specified instance resource.\n\nAttempting this RPC on a non-existent Cloud Spanner instance resource will\nresult in a NOT_FOUND error if the user has `spanner.instances.list`\npermission on the containing Google Cloud Project. Otherwise returns an\nempty set of permissions.", + "flatPath": "v1/projects/{projectsId}/instances/{instancesId}:testIamPermissions", + "httpMethod": "POST", + "id": "spanner.projects.instances.testIamPermissions", + "parameterOrder": [ + "resource" + ], + "parameters": { + "resource": { + "description": "REQUIRED: The Cloud Spanner resource for which permissions are being tested. The format is `projects/\u003cproject ID\u003e/instances/\u003cinstance ID\u003e` for instance resources and `projects/\u003cproject ID\u003e/instances/\u003cinstance ID\u003e/databases/\u003cdatabase ID\u003e` for database resources.", + "location": "path", + "pattern": "^projects/[^/]+/instances/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+resource}:testIamPermissions", + "request": { + "$ref": "TestIamPermissionsRequest" + }, + "response": { + "$ref": "TestIamPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/spanner.admin" + ] + } + }, "resources": { "databases": { "methods": { - "getIamPolicy": { - "request": { - "$ref": "GetIamPolicyRequest" - }, - "description": "Gets the access control policy for a database resource. Returns an empty\npolicy if a database exists but does not have a policy set.\n\nAuthorization requires `spanner.databases.getIamPolicy` permission on\nresource.", - "response": { - "$ref": "Policy" - }, - "parameterOrder": [ - "resource" - ], + "create": { + "description": "Creates a new Cloud Spanner database and starts to prepare it for serving.\nThe returned long-running operation will\nhave a name of the format `\u003cdatabase_name\u003e/operations/\u003coperation_id\u003e` and\ncan be used to track preparation of the database. The\nmetadata field type is\nCreateDatabaseMetadata. The\nresponse field type is\nDatabase, if successful.", + "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases", "httpMethod": "POST", - "parameters": { - "resource": { - "location": "path", - "description": "REQUIRED: The Cloud Spanner resource for which the policy is being retrieved. The format is `projects/\u003cproject ID\u003e/instances/\u003cinstance ID\u003e` for instance resources and `projects/\u003cproject ID\u003e/instances/\u003cinstance ID\u003e/databases/\u003cdatabase ID\u003e` for database resources.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/instances/[^/]+/databases/[^/]+$" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/spanner.admin" - ], - "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases/{databasesId}:getIamPolicy", - "path": "v1/{+resource}:getIamPolicy", - "id": "spanner.projects.instances.databases.getIamPolicy" - }, - "get": { - "response": { - "$ref": "Database" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "GET", - "parameters": { - "name": { - "location": "path", - "description": "Required. The name of the requested database. Values are of the form\n`projects/\u003cproject\u003e/instances/\u003cinstance\u003e/databases/\u003cdatabase\u003e`.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/instances/[^/]+/databases/[^/]+$" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/spanner.admin" - ], - "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases/{databasesId}", - "path": "v1/{+name}", - "id": "spanner.projects.instances.databases.get", - "description": "Gets the state of a Cloud Spanner database." - }, - "dropDatabase": { - "httpMethod": "DELETE", - "parameterOrder": [ - "database" - ], - "response": { - "$ref": "Empty" - }, - "parameters": { - "database": { - "pattern": "^projects/[^/]+/instances/[^/]+/databases/[^/]+$", - "location": "path", - "description": "Required. The database to be dropped.", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/spanner.admin" - ], - "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases/{databasesId}", - "id": "spanner.projects.instances.databases.dropDatabase", - "path": "v1/{+database}", - "description": "Drops (aka deletes) a Cloud Spanner database." - }, - "updateDdl": { - "description": "Updates the schema of a Cloud Spanner database by\ncreating/altering/dropping tables, columns, indexes, etc. The returned\nlong-running operation will have a name of\nthe format `\u003cdatabase_name\u003e/operations/\u003coperation_id\u003e` and can be used to\ntrack execution of the schema change(s). The\nmetadata field type is\nUpdateDatabaseDdlMetadata. The operation has no response.", - "request": { - "$ref": "UpdateDatabaseDdlRequest" - }, - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "database" - ], - "httpMethod": "PATCH", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/spanner.admin" - ], - "parameters": { - "database": { - "description": "Required. The database to update.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/instances/[^/]+/databases/[^/]+$", - "location": "path" - } - }, - "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases/{databasesId}/ddl", - "path": "v1/{+database}/ddl", - "id": "spanner.projects.instances.databases.updateDdl" - }, - "testIamPermissions": { - "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases/{databasesId}:testIamPermissions", - "path": "v1/{+resource}:testIamPermissions", - "id": "spanner.projects.instances.databases.testIamPermissions", - "description": "Returns permissions that the caller has on the specified database resource.\n\nAttempting this RPC on a non-existent Cloud Spanner database will result in\na NOT_FOUND error if the user has `spanner.databases.list` permission on\nthe containing Cloud Spanner instance. Otherwise returns an empty set of\npermissions.", - "request": { - "$ref": "TestIamPermissionsRequest" - }, - "response": { - "$ref": "TestIamPermissionsResponse" - }, - "parameterOrder": [ - "resource" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/spanner.admin" - ], - "parameters": { - "resource": { - "pattern": "^projects/[^/]+/instances/[^/]+/databases/[^/]+$", - "location": "path", - "description": "REQUIRED: The Cloud Spanner resource for which permissions are being tested. The format is `projects/\u003cproject ID\u003e/instances/\u003cinstance ID\u003e` for instance resources and `projects/\u003cproject ID\u003e/instances/\u003cinstance ID\u003e/databases/\u003cdatabase ID\u003e` for database resources.", - "required": true, - "type": "string" - } - } - }, - "getDdl": { - "response": { - "$ref": "GetDatabaseDdlResponse" - }, - "parameterOrder": [ - "database" - ], - "httpMethod": "GET", - "parameters": { - "database": { - "pattern": "^projects/[^/]+/instances/[^/]+/databases/[^/]+$", - "location": "path", - "description": "Required. The database whose schema we wish to get.", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/spanner.admin" - ], - "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases/{databasesId}/ddl", - "path": "v1/{+database}/ddl", - "id": "spanner.projects.instances.databases.getDdl", - "description": "Returns the schema of a Cloud Spanner database as a list of formatted\nDDL statements. This method does not show pending schema updates, those may\nbe queried using the Operations API." - }, - "list": { - "response": { - "$ref": "ListDatabasesResponse" - }, + "id": "spanner.projects.instances.databases.create", "parameterOrder": [ "parent" ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/spanner.admin" - ], "parameters": { "parent": { - "description": "Required. The instance whose databases should be listed.\nValues are of the form `projects/\u003cproject\u003e/instances/\u003cinstance\u003e`.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/instances/[^/]+$", - "location": "path" - }, - "pageToken": { - "location": "query", - "description": "If non-empty, `page_token` should contain a\nnext_page_token from a\nprevious ListDatabasesResponse.", - "type": "string" - }, - "pageSize": { - "location": "query", - "description": "Number of databases to be returned in the response. If 0 or less,\ndefaults to the server's maximum allowed page size.", - "format": "int32", - "type": "integer" - } - }, - "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases", - "path": "v1/{+parent}/databases", - "id": "spanner.projects.instances.databases.list", - "description": "Lists Cloud Spanner databases." - }, - "setIamPolicy": { - "request": { - "$ref": "SetIamPolicyRequest" - }, - "description": "Sets the access control policy on a database resource. Replaces any\nexisting policy.\n\nAuthorization requires `spanner.databases.setIamPolicy` permission on\nresource.", - "response": { - "$ref": "Policy" - }, - "parameterOrder": [ - "resource" - ], - "httpMethod": "POST", - "parameters": { - "resource": { - "pattern": "^projects/[^/]+/instances/[^/]+/databases/[^/]+$", + "description": "Required. The name of the instance that will serve the new database.\nValues are of the form `projects/\u003cproject\u003e/instances/\u003cinstance\u003e`.", "location": "path", - "description": "REQUIRED: The Cloud Spanner resource for which the policy is being set. The format is `projects/\u003cproject ID\u003e/instances/\u003cinstance ID\u003e` for instance resources and `projects/\u003cproject ID\u003e/instances/\u003cinstance ID\u003e/databases/\u003cdatabase ID\u003e` for databases resources.", + "pattern": "^projects/[^/]+/instances/[^/]+$", "required": true, "type": "string" } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/spanner.admin" - ], - "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases/{databasesId}:setIamPolicy", - "path": "v1/{+resource}:setIamPolicy", - "id": "spanner.projects.instances.databases.setIamPolicy" - }, - "create": { - "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases", "path": "v1/{+parent}/databases", - "id": "spanner.projects.instances.databases.create", - "description": "Creates a new Cloud Spanner database and starts to prepare it for serving.\nThe returned long-running operation will\nhave a name of the format `\u003cdatabase_name\u003e/operations/\u003coperation_id\u003e` and\ncan be used to track preparation of the database. The\nmetadata field type is\nCreateDatabaseMetadata. The\nresponse field type is\nDatabase, if successful.", "request": { "$ref": "CreateDatabaseRequest" }, "response": { "$ref": "Operation" }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "POST", "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/spanner.admin" + ] + }, + "dropDatabase": { + "description": "Drops (aka deletes) a Cloud Spanner database.", + "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases/{databasesId}", + "httpMethod": "DELETE", + "id": "spanner.projects.instances.databases.dropDatabase", + "parameterOrder": [ + "database" ], "parameters": { - "parent": { + "database": { + "description": "Required. The database to be dropped.", "location": "path", - "description": "Required. The name of the instance that will serve the new database.\nValues are of the form `projects/\u003cproject\u003e/instances/\u003cinstance\u003e`.", + "pattern": "^projects/[^/]+/instances/[^/]+/databases/[^/]+$", "required": true, - "type": "string", - "pattern": "^projects/[^/]+/instances/[^/]+$" + "type": "string" } - } + }, + "path": "v1/{+database}", + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/spanner.admin" + ] + }, + "get": { + "description": "Gets the state of a Cloud Spanner database.", + "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases/{databasesId}", + "httpMethod": "GET", + "id": "spanner.projects.instances.databases.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the requested database. Values are of the form\n`projects/\u003cproject\u003e/instances/\u003cinstance\u003e/databases/\u003cdatabase\u003e`.", + "location": "path", + "pattern": "^projects/[^/]+/instances/[^/]+/databases/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "Database" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/spanner.admin" + ] + }, + "getDdl": { + "description": "Returns the schema of a Cloud Spanner database as a list of formatted\nDDL statements. This method does not show pending schema updates, those may\nbe queried using the Operations API.", + "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases/{databasesId}/ddl", + "httpMethod": "GET", + "id": "spanner.projects.instances.databases.getDdl", + "parameterOrder": [ + "database" + ], + "parameters": { + "database": { + "description": "Required. The database whose schema we wish to get.", + "location": "path", + "pattern": "^projects/[^/]+/instances/[^/]+/databases/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+database}/ddl", + "response": { + "$ref": "GetDatabaseDdlResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/spanner.admin" + ] + }, + "getIamPolicy": { + "description": "Gets the access control policy for a database resource. Returns an empty\npolicy if a database exists but does not have a policy set.\n\nAuthorization requires `spanner.databases.getIamPolicy` permission on\nresource.", + "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases/{databasesId}:getIamPolicy", + "httpMethod": "POST", + "id": "spanner.projects.instances.databases.getIamPolicy", + "parameterOrder": [ + "resource" + ], + "parameters": { + "resource": { + "description": "REQUIRED: The Cloud Spanner resource for which the policy is being retrieved. The format is `projects/\u003cproject ID\u003e/instances/\u003cinstance ID\u003e` for instance resources and `projects/\u003cproject ID\u003e/instances/\u003cinstance ID\u003e/databases/\u003cdatabase ID\u003e` for database resources.", + "location": "path", + "pattern": "^projects/[^/]+/instances/[^/]+/databases/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+resource}:getIamPolicy", + "request": { + "$ref": "GetIamPolicyRequest" + }, + "response": { + "$ref": "Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/spanner.admin" + ] + }, + "list": { + "description": "Lists Cloud Spanner databases.", + "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases", + "httpMethod": "GET", + "id": "spanner.projects.instances.databases.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "pageSize": { + "description": "Number of databases to be returned in the response. If 0 or less,\ndefaults to the server's maximum allowed page size.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "If non-empty, `page_token` should contain a\nnext_page_token from a\nprevious ListDatabasesResponse.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The instance whose databases should be listed.\nValues are of the form `projects/\u003cproject\u003e/instances/\u003cinstance\u003e`.", + "location": "path", + "pattern": "^projects/[^/]+/instances/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+parent}/databases", + "response": { + "$ref": "ListDatabasesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/spanner.admin" + ] + }, + "setIamPolicy": { + "description": "Sets the access control policy on a database resource. Replaces any\nexisting policy.\n\nAuthorization requires `spanner.databases.setIamPolicy` permission on\nresource.", + "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases/{databasesId}:setIamPolicy", + "httpMethod": "POST", + "id": "spanner.projects.instances.databases.setIamPolicy", + "parameterOrder": [ + "resource" + ], + "parameters": { + "resource": { + "description": "REQUIRED: The Cloud Spanner resource for which the policy is being set. The format is `projects/\u003cproject ID\u003e/instances/\u003cinstance ID\u003e` for instance resources and `projects/\u003cproject ID\u003e/instances/\u003cinstance ID\u003e/databases/\u003cdatabase ID\u003e` for databases resources.", + "location": "path", + "pattern": "^projects/[^/]+/instances/[^/]+/databases/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+resource}:setIamPolicy", + "request": { + "$ref": "SetIamPolicyRequest" + }, + "response": { + "$ref": "Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/spanner.admin" + ] + }, + "testIamPermissions": { + "description": "Returns permissions that the caller has on the specified database resource.\n\nAttempting this RPC on a non-existent Cloud Spanner database will result in\na NOT_FOUND error if the user has `spanner.databases.list` permission on\nthe containing Cloud Spanner instance. Otherwise returns an empty set of\npermissions.", + "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases/{databasesId}:testIamPermissions", + "httpMethod": "POST", + "id": "spanner.projects.instances.databases.testIamPermissions", + "parameterOrder": [ + "resource" + ], + "parameters": { + "resource": { + "description": "REQUIRED: The Cloud Spanner resource for which permissions are being tested. The format is `projects/\u003cproject ID\u003e/instances/\u003cinstance ID\u003e` for instance resources and `projects/\u003cproject ID\u003e/instances/\u003cinstance ID\u003e/databases/\u003cdatabase ID\u003e` for database resources.", + "location": "path", + "pattern": "^projects/[^/]+/instances/[^/]+/databases/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+resource}:testIamPermissions", + "request": { + "$ref": "TestIamPermissionsRequest" + }, + "response": { + "$ref": "TestIamPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/spanner.admin" + ] + }, + "updateDdl": { + "description": "Updates the schema of a Cloud Spanner database by\ncreating/altering/dropping tables, columns, indexes, etc. The returned\nlong-running operation will have a name of\nthe format `\u003cdatabase_name\u003e/operations/\u003coperation_id\u003e` and can be used to\ntrack execution of the schema change(s). The\nmetadata field type is\nUpdateDatabaseDdlMetadata. The operation has no response.", + "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases/{databasesId}/ddl", + "httpMethod": "PATCH", + "id": "spanner.projects.instances.databases.updateDdl", + "parameterOrder": [ + "database" + ], + "parameters": { + "database": { + "description": "Required. The database to update.", + "location": "path", + "pattern": "^projects/[^/]+/instances/[^/]+/databases/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+database}/ddl", + "request": { + "$ref": "UpdateDatabaseDdlRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/spanner.admin" + ] } }, "resources": { "operations": { "methods": { "cancel": { - "id": "spanner.projects.instances.databases.operations.cancel", - "path": "v1/{+name}:cancel", "description": "Starts asynchronous cancellation on a long-running operation. The server\nmakes a best effort to cancel the operation, but success is not\nguaranteed. If the server doesn't support this method, it returns\n`google.rpc.Code.UNIMPLEMENTED`. Clients can use\nOperations.GetOperation or\nother methods to check whether the cancellation succeeded or whether the\noperation completed despite cancellation. On successful cancellation,\nthe operation is not deleted; instead, it becomes an operation with\nan Operation.error value with a google.rpc.Status.code of 1,\ncorresponding to `Code.CANCELLED`.", + "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases/{databasesId}/operations/{operationsId}:cancel", "httpMethod": "POST", + "id": "spanner.projects.instances.databases.operations.cancel", "parameterOrder": [ "name" ], - "response": { - "$ref": "Empty" - }, "parameters": { "name": { "description": "The name of the operation resource to be cancelled.", - "required": true, - "type": "string", + "location": "path", "pattern": "^projects/[^/]+/instances/[^/]+/databases/[^/]+/operations/[^/]+$", - "location": "path" + "required": true, + "type": "string" } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/spanner.admin" - ], - "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases/{databasesId}/operations/{operationsId}:cancel" - }, - "delete": { - "description": "Deletes a long-running operation. This method indicates that the client is\nno longer interested in the operation result. It does not cancel the\noperation. If the server doesn't support this method, it returns\n`google.rpc.Code.UNIMPLEMENTED`.", + "path": "v1/{+name}:cancel", "response": { "$ref": "Empty" }, - "parameterOrder": [ - "name" - ], - "httpMethod": "DELETE", "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/spanner.admin" + ] + }, + "delete": { + "description": "Deletes a long-running operation. This method indicates that the client is\nno longer interested in the operation result. It does not cancel the\noperation. If the server doesn't support this method, it returns\n`google.rpc.Code.UNIMPLEMENTED`.", + "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases/{databasesId}/operations/{operationsId}", + "httpMethod": "DELETE", + "id": "spanner.projects.instances.databases.operations.delete", + "parameterOrder": [ + "name" ], "parameters": { "name": { "description": "The name of the operation resource to be deleted.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/instances/[^/]+/databases/[^/]+/operations/[^/]+$", - "location": "path" - } - }, - "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases/{databasesId}/operations/{operationsId}", - "path": "v1/{+name}", - "id": "spanner.projects.instances.databases.operations.delete" - }, - "list": { - "description": "Lists operations that match the specified filter in the request. If the\nserver doesn't support this method, it returns `UNIMPLEMENTED`.\n\nNOTE: the `name` binding allows API services to override the binding\nto use different resource name schemes, such as `users/*/operations`. To\noverride the binding, API services can add a binding such as\n`\"/v1/{name=users/*}/operations\"` to their service configuration.\nFor backwards compatibility, the default name includes the operations\ncollection id, however overriding users must ensure the name binding\nis the parent resource, without the operations collection id.", - "response": { - "$ref": "ListOperationsResponse" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "GET", - "parameters": { - "filter": { - "description": "The standard list filter.", - "type": "string", - "location": "query" - }, - "name": { "location": "path", - "description": "The name of the operation's parent resource.", + "pattern": "^projects/[^/]+/instances/[^/]+/databases/[^/]+/operations/[^/]+$", "required": true, - "type": "string", - "pattern": "^projects/[^/]+/instances/[^/]+/databases/[^/]+/operations$" - }, - "pageToken": { - "location": "query", - "description": "The standard list page token.", "type": "string" - }, - "pageSize": { - "location": "query", - "description": "The standard list page size.", - "format": "int32", - "type": "integer" } }, + "path": "v1/{+name}", + "response": { + "$ref": "Empty" + }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/spanner.admin" - ], - "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases/{databasesId}/operations", - "path": "v1/{+name}", - "id": "spanner.projects.instances.databases.operations.list" + ] }, "get": { - "response": { - "$ref": "Operation" - }, + "description": "Gets the latest state of a long-running operation. Clients can use this\nmethod to poll the operation result at intervals as recommended by the API\nservice.", + "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases/{databasesId}/operations/{operationsId}", + "httpMethod": "GET", + "id": "spanner.projects.instances.databases.operations.get", "parameterOrder": [ "name" ], - "httpMethod": "GET", "parameters": { "name": { "description": "The name of the operation resource.", - "required": true, - "type": "string", + "location": "path", "pattern": "^projects/[^/]+/instances/[^/]+/databases/[^/]+/operations/[^/]+$", - "location": "path" + "required": true, + "type": "string" } }, + "path": "v1/{+name}", + "response": { + "$ref": "Operation" + }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/spanner.admin" + ] + }, + "list": { + "description": "Lists operations that match the specified filter in the request. If the\nserver doesn't support this method, it returns `UNIMPLEMENTED`.\n\nNOTE: the `name` binding allows API services to override the binding\nto use different resource name schemes, such as `users/*/operations`. To\noverride the binding, API services can add a binding such as\n`\"/v1/{name=users/*}/operations\"` to their service configuration.\nFor backwards compatibility, the default name includes the operations\ncollection id, however overriding users must ensure the name binding\nis the parent resource, without the operations collection id.", + "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases/{databasesId}/operations", + "httpMethod": "GET", + "id": "spanner.projects.instances.databases.operations.list", + "parameterOrder": [ + "name" ], - "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases/{databasesId}/operations/{operationsId}", + "parameters": { + "filter": { + "description": "The standard list filter.", + "location": "query", + "type": "string" + }, + "name": { + "description": "The name of the operation's parent resource.", + "location": "path", + "pattern": "^projects/[^/]+/instances/[^/]+/databases/[^/]+/operations$", + "required": true, + "type": "string" + }, + "pageSize": { + "description": "The standard list page size.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "The standard list page token.", + "location": "query", + "type": "string" + } + }, "path": "v1/{+name}", - "id": "spanner.projects.instances.databases.operations.get", - "description": "Gets the latest state of a long-running operation. Clients can use this\nmethod to poll the operation result at intervals as recommended by the API\nservice." + "response": { + "$ref": "ListOperationsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/spanner.admin" + ] } } }, "sessions": { "methods": { - "rollback": { - "request": { - "$ref": "RollbackRequest" - }, - "description": "Rolls back a transaction, releasing any locks it holds. It is a good\nidea to call this for any transaction that includes one or more\nRead or ExecuteSql requests and\nultimately decides not to commit.\n\n`Rollback` returns `OK` if it successfully aborts the transaction, the\ntransaction was already aborted, or the transaction is not\nfound. `Rollback` never returns `ABORTED`.", - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "session" - ], - "httpMethod": "POST", - "parameters": { - "session": { - "location": "path", - "description": "Required. The session in which the transaction to roll back is running.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/instances/[^/]+/databases/[^/]+/sessions/[^/]+$" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/spanner.data" - ], - "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases/{databasesId}/sessions/{sessionsId}:rollback", - "path": "v1/{+session}:rollback", - "id": "spanner.projects.instances.databases.sessions.rollback" - }, - "streamingRead": { - "response": { - "$ref": "PartialResultSet" - }, - "parameterOrder": [ - "session" - ], - "httpMethod": "POST", - "parameters": { - "session": { - "description": "Required. The session in which the read should be performed.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/instances/[^/]+/databases/[^/]+/sessions/[^/]+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/spanner.data" - ], - "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases/{databasesId}/sessions/{sessionsId}:streamingRead", - "path": "v1/{+session}:streamingRead", - "id": "spanner.projects.instances.databases.sessions.streamingRead", - "request": { - "$ref": "ReadRequest" - }, - "description": "Like Read, except returns the result set as a\nstream. Unlike Read, there is no limit on the\nsize of the returned result set. However, no individual row in\nthe result set can exceed 100 MiB, and no column value can exceed\n10 MiB." - }, - "create": { - "request": { - "$ref": "CreateSessionRequest" - }, - "description": "Creates a new session. A session can be used to perform\ntransactions that read and/or modify data in a Cloud Spanner database.\nSessions are meant to be reused for many consecutive\ntransactions.\n\nSessions can only execute one transaction at a time. To execute\nmultiple concurrent read-write/write-only transactions, create\nmultiple sessions. Note that standalone reads and queries use a\ntransaction internally, and count toward the one transaction\nlimit.\n\nCloud Spanner limits the number of sessions that can exist at any given\ntime; thus, it is a good idea to delete idle and/or unneeded sessions.\nAside from explicit deletes, Cloud Spanner can delete sessions for which no\noperations are sent for more than an hour. If a session is deleted,\nrequests to it return `NOT_FOUND`.\n\nIdle sessions can be kept alive by sending a trivial SQL query\nperiodically, e.g., `\"SELECT 1\"`.", - "response": { - "$ref": "Session" - }, - "parameterOrder": [ - "database" - ], - "httpMethod": "POST", - "parameters": { - "database": { - "pattern": "^projects/[^/]+/instances/[^/]+/databases/[^/]+$", - "location": "path", - "description": "Required. The database in which the new session is created.", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/spanner.data" - ], - "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases/{databasesId}/sessions", - "path": "v1/{+database}/sessions", - "id": "spanner.projects.instances.databases.sessions.create" - }, - "read": { - "path": "v1/{+session}:read", - "id": "spanner.projects.instances.databases.sessions.read", - "request": { - "$ref": "ReadRequest" - }, - "description": "Reads rows from the database using key lookups and scans, as a\nsimple key/value style alternative to\nExecuteSql. This method cannot be used to\nreturn a result set larger than 10 MiB; if the read matches more\ndata than that, the read fails with a `FAILED_PRECONDITION`\nerror.\n\nReads inside read-write transactions might return `ABORTED`. If\nthis occurs, the application should restart the transaction from\nthe beginning. See Transaction for more details.\n\nLarger result sets can be yielded in streaming fashion by calling\nStreamingRead instead.", - "response": { - "$ref": "ResultSet" - }, - "parameterOrder": [ - "session" - ], - "httpMethod": "POST", - "parameters": { - "session": { - "description": "Required. The session in which the read should be performed.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/instances/[^/]+/databases/[^/]+/sessions/[^/]+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/spanner.data" - ], - "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases/{databasesId}/sessions/{sessionsId}:read" - }, - "get": { - "description": "Gets a session. Returns `NOT_FOUND` if the session does not exist.\nThis is mainly useful for determining whether a session is still\nalive.", - "response": { - "$ref": "Session" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/spanner.data" - ], - "parameters": { - "name": { - "pattern": "^projects/[^/]+/instances/[^/]+/databases/[^/]+/sessions/[^/]+$", - "location": "path", - "description": "Required. The name of the session to retrieve.", - "required": true, - "type": "string" - } - }, - "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases/{databasesId}/sessions/{sessionsId}", - "path": "v1/{+name}", - "id": "spanner.projects.instances.databases.sessions.get" - }, - "delete": { - "httpMethod": "DELETE", - "parameterOrder": [ - "name" - ], - "response": { - "$ref": "Empty" - }, - "parameters": { - "name": { - "pattern": "^projects/[^/]+/instances/[^/]+/databases/[^/]+/sessions/[^/]+$", - "location": "path", - "description": "Required. The name of the session to delete.", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/spanner.data" - ], - "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases/{databasesId}/sessions/{sessionsId}", - "id": "spanner.projects.instances.databases.sessions.delete", - "path": "v1/{+name}", - "description": "Ends a session, releasing server resources associated with it." - }, - "executeStreamingSql": { - "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases/{databasesId}/sessions/{sessionsId}:executeStreamingSql", - "path": "v1/{+session}:executeStreamingSql", - "id": "spanner.projects.instances.databases.sessions.executeStreamingSql", - "description": "Like ExecuteSql, except returns the result\nset as a stream. Unlike ExecuteSql, there\nis no limit on the size of the returned result set. However, no\nindividual row in the result set can exceed 100 MiB, and no\ncolumn value can exceed 10 MiB.", - "request": { - "$ref": "ExecuteSqlRequest" - }, - "response": { - "$ref": "PartialResultSet" - }, - "parameterOrder": [ - "session" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/spanner.data" - ], - "parameters": { - "session": { - "pattern": "^projects/[^/]+/instances/[^/]+/databases/[^/]+/sessions/[^/]+$", - "location": "path", - "description": "Required. The session in which the SQL query should be performed.", - "required": true, - "type": "string" - } - } - }, "beginTransaction": { - "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases/{databasesId}/sessions/{sessionsId}:beginTransaction", - "path": "v1/{+session}:beginTransaction", - "id": "spanner.projects.instances.databases.sessions.beginTransaction", "description": "Begins a new transaction. This step can often be skipped:\nRead, ExecuteSql and\nCommit can begin a new transaction as a\nside-effect.", + "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases/{databasesId}/sessions/{sessionsId}:beginTransaction", + "httpMethod": "POST", + "id": "spanner.projects.instances.databases.sessions.beginTransaction", + "parameterOrder": [ + "session" + ], + "parameters": { + "session": { + "description": "Required. The session in which the transaction runs.", + "location": "path", + "pattern": "^projects/[^/]+/instances/[^/]+/databases/[^/]+/sessions/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+session}:beginTransaction", "request": { "$ref": "BeginTransactionRequest" }, "response": { "$ref": "Transaction" }, - "parameterOrder": [ - "session" - ], - "httpMethod": "POST", "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/spanner.data" + ] + }, + "commit": { + "description": "Commits a transaction. The request includes the mutations to be\napplied to rows in the database.\n\n`Commit` might return an `ABORTED` error. This can occur at any time;\ncommonly, the cause is conflicts with concurrent\ntransactions. However, it can also happen for a variety of other\nreasons. If `Commit` returns `ABORTED`, the caller should re-attempt\nthe transaction from the beginning, re-using the same session.", + "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases/{databasesId}/sessions/{sessionsId}:commit", + "httpMethod": "POST", + "id": "spanner.projects.instances.databases.sessions.commit", + "parameterOrder": [ + "session" ], "parameters": { "session": { + "description": "Required. The session in which the transaction to be committed is running.", "location": "path", - "description": "Required. The session in which the transaction runs.", + "pattern": "^projects/[^/]+/instances/[^/]+/databases/[^/]+/sessions/[^/]+$", "required": true, - "type": "string", - "pattern": "^projects/[^/]+/instances/[^/]+/databases/[^/]+/sessions/[^/]+$" + "type": "string" } - } - }, - "commit": { - "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases/{databasesId}/sessions/{sessionsId}:commit", - "id": "spanner.projects.instances.databases.sessions.commit", + }, "path": "v1/{+session}:commit", "request": { "$ref": "CommitRequest" }, - "description": "Commits a transaction. The request includes the mutations to be\napplied to rows in the database.\n\n`Commit` might return an `ABORTED` error. This can occur at any time;\ncommonly, the cause is conflicts with concurrent\ntransactions. However, it can also happen for a variety of other\nreasons. If `Commit` returns `ABORTED`, the caller should re-attempt\nthe transaction from the beginning, re-using the same session.", - "httpMethod": "POST", - "parameterOrder": [ - "session" - ], "response": { "$ref": "CommitResponse" }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/spanner.data" + ] + }, + "create": { + "description": "Creates a new session. A session can be used to perform\ntransactions that read and/or modify data in a Cloud Spanner database.\nSessions are meant to be reused for many consecutive\ntransactions.\n\nSessions can only execute one transaction at a time. To execute\nmultiple concurrent read-write/write-only transactions, create\nmultiple sessions. Note that standalone reads and queries use a\ntransaction internally, and count toward the one transaction\nlimit.\n\nCloud Spanner limits the number of sessions that can exist at any given\ntime; thus, it is a good idea to delete idle and/or unneeded sessions.\nAside from explicit deletes, Cloud Spanner can delete sessions for which no\noperations are sent for more than an hour. If a session is deleted,\nrequests to it return `NOT_FOUND`.\n\nIdle sessions can be kept alive by sending a trivial SQL query\nperiodically, e.g., `\"SELECT 1\"`.", + "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases/{databasesId}/sessions", + "httpMethod": "POST", + "id": "spanner.projects.instances.databases.sessions.create", + "parameterOrder": [ + "database" + ], "parameters": { - "session": { + "database": { + "description": "Required. The database in which the new session is created.", "location": "path", - "description": "Required. The session in which the transaction to be committed is running.", + "pattern": "^projects/[^/]+/instances/[^/]+/databases/[^/]+$", "required": true, - "type": "string", - "pattern": "^projects/[^/]+/instances/[^/]+/databases/[^/]+/sessions/[^/]+$" + "type": "string" } }, + "path": "v1/{+database}/sessions", + "request": { + "$ref": "CreateSessionRequest" + }, + "response": { + "$ref": "Session" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/spanner.data" + ] + }, + "delete": { + "description": "Ends a session, releasing server resources associated with it.", + "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases/{databasesId}/sessions/{sessionsId}", + "httpMethod": "DELETE", + "id": "spanner.projects.instances.databases.sessions.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the session to delete.", + "location": "path", + "pattern": "^projects/[^/]+/instances/[^/]+/databases/[^/]+/sessions/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "Empty" + }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/spanner.data" ] }, "executeSql": { + "description": "Executes an SQL query, returning all rows in a single reply. This\nmethod cannot be used to return a result set larger than 10 MiB;\nif the query yields more data than that, the query fails with\na `FAILED_PRECONDITION` error.\n\nQueries inside read-write transactions might return `ABORTED`. If\nthis occurs, the application should restart the transaction from\nthe beginning. See Transaction for more details.\n\nLarger result sets can be fetched in streaming fashion by calling\nExecuteStreamingSql instead.", + "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases/{databasesId}/sessions/{sessionsId}:executeSql", + "httpMethod": "POST", "id": "spanner.projects.instances.databases.sessions.executeSql", + "parameterOrder": [ + "session" + ], + "parameters": { + "session": { + "description": "Required. The session in which the SQL query should be performed.", + "location": "path", + "pattern": "^projects/[^/]+/instances/[^/]+/databases/[^/]+/sessions/[^/]+$", + "required": true, + "type": "string" + } + }, "path": "v1/{+session}:executeSql", "request": { "$ref": "ExecuteSqlRequest" }, - "description": "Executes an SQL query, returning all rows in a single reply. This\nmethod cannot be used to return a result set larger than 10 MiB;\nif the query yields more data than that, the query fails with\na `FAILED_PRECONDITION` error.\n\nQueries inside read-write transactions might return `ABORTED`. If\nthis occurs, the application should restart the transaction from\nthe beginning. See Transaction for more details.\n\nLarger result sets can be fetched in streaming fashion by calling\nExecuteStreamingSql instead.", - "httpMethod": "POST", - "parameterOrder": [ - "session" - ], "response": { "$ref": "ResultSet" }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/spanner.data" + ] + }, + "executeStreamingSql": { + "description": "Like ExecuteSql, except returns the result\nset as a stream. Unlike ExecuteSql, there\nis no limit on the size of the returned result set. However, no\nindividual row in the result set can exceed 100 MiB, and no\ncolumn value can exceed 10 MiB.", + "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases/{databasesId}/sessions/{sessionsId}:executeStreamingSql", + "httpMethod": "POST", + "id": "spanner.projects.instances.databases.sessions.executeStreamingSql", + "parameterOrder": [ + "session" + ], "parameters": { "session": { "description": "Required. The session in which the SQL query should be performed.", - "required": true, - "type": "string", + "location": "path", "pattern": "^projects/[^/]+/instances/[^/]+/databases/[^/]+/sessions/[^/]+$", - "location": "path" + "required": true, + "type": "string" } }, + "path": "v1/{+session}:executeStreamingSql", + "request": { + "$ref": "ExecuteSqlRequest" + }, + "response": { + "$ref": "PartialResultSet" + }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/spanner.data" + ] + }, + "get": { + "description": "Gets a session. Returns `NOT_FOUND` if the session does not exist.\nThis is mainly useful for determining whether a session is still\nalive.", + "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases/{databasesId}/sessions/{sessionsId}", + "httpMethod": "GET", + "id": "spanner.projects.instances.databases.sessions.get", + "parameterOrder": [ + "name" ], - "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases/{databasesId}/sessions/{sessionsId}:executeSql" + "parameters": { + "name": { + "description": "Required. The name of the session to retrieve.", + "location": "path", + "pattern": "^projects/[^/]+/instances/[^/]+/databases/[^/]+/sessions/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "Session" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/spanner.data" + ] }, "list": { "description": "Lists all sessions in a given database.", - "response": { - "$ref": "ListSessionsResponse" - }, + "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases/{databasesId}/sessions", + "httpMethod": "GET", + "id": "spanner.projects.instances.databases.sessions.list", "parameterOrder": [ "database" ], - "httpMethod": "GET", "parameters": { "database": { "description": "Required. The database in which to list sessions.", - "required": true, - "type": "string", + "location": "path", "pattern": "^projects/[^/]+/instances/[^/]+/databases/[^/]+$", - "location": "path" - }, - "filter": { - "location": "query", - "description": "An expression for filtering the results of the request. Filter rules are\ncase insensitive. The fields eligible for filtering are:\n\n * `labels.key` where key is the name of a label\n\nSome examples of using filters are:\n\n * `labels.env:*` --\u003e The session has the label \"env\".\n * `labels.env:dev` --\u003e The session has the label \"env\" and the value of\n the label contains the string \"dev\".", + "required": true, "type": "string" }, - "pageToken": { + "filter": { + "description": "An expression for filtering the results of the request. Filter rules are\ncase insensitive. The fields eligible for filtering are:\n\n * `labels.key` where key is the name of a label\n\nSome examples of using filters are:\n\n * `labels.env:*` --\u003e The session has the label \"env\".\n * `labels.env:dev` --\u003e The session has the label \"env\" and the value of\n the label contains the string \"dev\".", "location": "query", - "description": "If non-empty, `page_token` should contain a\nnext_page_token from a previous\nListSessionsResponse.", "type": "string" }, "pageSize": { - "location": "query", "description": "Number of sessions to be returned in the response. If 0 or less, defaults\nto the server's maximum allowed page size.", "format": "int32", + "location": "query", "type": "integer" + }, + "pageToken": { + "description": "If non-empty, `page_token` should contain a\nnext_page_token from a previous\nListSessionsResponse.", + "location": "query", + "type": "string" } }, + "path": "v1/{+database}/sessions", + "response": { + "$ref": "ListSessionsResponse" + }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/spanner.data" + ] + }, + "partitionQuery": { + "description": "Creates a set of partition tokens that can be used to execute a query\noperation in parallel. Each of the returned partition tokens can be used\nby ExecuteStreamingSql to specify a subset\nof the query result to read. The same session and read-only transaction\nmust be used by the PartitionQueryRequest used to create the\npartition tokens and the ExecuteSqlRequests that use the partition tokens.\nPartition tokens become invalid when the session used to create them\nis deleted or begins a new transaction.", + "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases/{databasesId}/sessions/{sessionsId}:partitionQuery", + "httpMethod": "POST", + "id": "spanner.projects.instances.databases.sessions.partitionQuery", + "parameterOrder": [ + "session" ], - "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases/{databasesId}/sessions", - "path": "v1/{+database}/sessions", - "id": "spanner.projects.instances.databases.sessions.list" + "parameters": { + "session": { + "description": "Required. The session used to create the partitions.", + "location": "path", + "pattern": "^projects/[^/]+/instances/[^/]+/databases/[^/]+/sessions/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+session}:partitionQuery", + "request": { + "$ref": "PartitionQueryRequest" + }, + "response": { + "$ref": "PartitionResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/spanner.data" + ] + }, + "partitionRead": { + "description": "Creates a set of partition tokens that can be used to execute a read\noperation in parallel. Each of the returned partition tokens can be used\nby StreamingRead to specify a subset of the read\nresult to read. The same session and read-only transaction must be used by\nthe PartitionReadRequest used to create the partition tokens and the\nReadRequests that use the partition tokens.\nPartition tokens become invalid when the session used to create them\nis deleted or begins a new transaction.", + "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases/{databasesId}/sessions/{sessionsId}:partitionRead", + "httpMethod": "POST", + "id": "spanner.projects.instances.databases.sessions.partitionRead", + "parameterOrder": [ + "session" + ], + "parameters": { + "session": { + "description": "Required. The session used to create the partitions.", + "location": "path", + "pattern": "^projects/[^/]+/instances/[^/]+/databases/[^/]+/sessions/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+session}:partitionRead", + "request": { + "$ref": "PartitionReadRequest" + }, + "response": { + "$ref": "PartitionResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/spanner.data" + ] + }, + "read": { + "description": "Reads rows from the database using key lookups and scans, as a\nsimple key/value style alternative to\nExecuteSql. This method cannot be used to\nreturn a result set larger than 10 MiB; if the read matches more\ndata than that, the read fails with a `FAILED_PRECONDITION`\nerror.\n\nReads inside read-write transactions might return `ABORTED`. If\nthis occurs, the application should restart the transaction from\nthe beginning. See Transaction for more details.\n\nLarger result sets can be yielded in streaming fashion by calling\nStreamingRead instead.", + "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases/{databasesId}/sessions/{sessionsId}:read", + "httpMethod": "POST", + "id": "spanner.projects.instances.databases.sessions.read", + "parameterOrder": [ + "session" + ], + "parameters": { + "session": { + "description": "Required. The session in which the read should be performed.", + "location": "path", + "pattern": "^projects/[^/]+/instances/[^/]+/databases/[^/]+/sessions/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+session}:read", + "request": { + "$ref": "ReadRequest" + }, + "response": { + "$ref": "ResultSet" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/spanner.data" + ] + }, + "rollback": { + "description": "Rolls back a transaction, releasing any locks it holds. It is a good\nidea to call this for any transaction that includes one or more\nRead or ExecuteSql requests and\nultimately decides not to commit.\n\n`Rollback` returns `OK` if it successfully aborts the transaction, the\ntransaction was already aborted, or the transaction is not\nfound. `Rollback` never returns `ABORTED`.", + "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases/{databasesId}/sessions/{sessionsId}:rollback", + "httpMethod": "POST", + "id": "spanner.projects.instances.databases.sessions.rollback", + "parameterOrder": [ + "session" + ], + "parameters": { + "session": { + "description": "Required. The session in which the transaction to roll back is running.", + "location": "path", + "pattern": "^projects/[^/]+/instances/[^/]+/databases/[^/]+/sessions/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+session}:rollback", + "request": { + "$ref": "RollbackRequest" + }, + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/spanner.data" + ] + }, + "streamingRead": { + "description": "Like Read, except returns the result set as a\nstream. Unlike Read, there is no limit on the\nsize of the returned result set. However, no individual row in\nthe result set can exceed 100 MiB, and no column value can exceed\n10 MiB.", + "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases/{databasesId}/sessions/{sessionsId}:streamingRead", + "httpMethod": "POST", + "id": "spanner.projects.instances.databases.sessions.streamingRead", + "parameterOrder": [ + "session" + ], + "parameters": { + "session": { + "description": "Required. The session in which the read should be performed.", + "location": "path", + "pattern": "^projects/[^/]+/instances/[^/]+/databases/[^/]+/sessions/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+session}:streamingRead", + "request": { + "$ref": "ReadRequest" + }, + "response": { + "$ref": "PartialResultSet" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/spanner.data" + ] } } } @@ -732,921 +1214,210 @@ "operations": { "methods": { "cancel": { - "response": { - "$ref": "Empty" - }, + "description": "Starts asynchronous cancellation on a long-running operation. The server\nmakes a best effort to cancel the operation, but success is not\nguaranteed. If the server doesn't support this method, it returns\n`google.rpc.Code.UNIMPLEMENTED`. Clients can use\nOperations.GetOperation or\nother methods to check whether the cancellation succeeded or whether the\noperation completed despite cancellation. On successful cancellation,\nthe operation is not deleted; instead, it becomes an operation with\nan Operation.error value with a google.rpc.Status.code of 1,\ncorresponding to `Code.CANCELLED`.", + "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/operations/{operationsId}:cancel", + "httpMethod": "POST", + "id": "spanner.projects.instances.operations.cancel", "parameterOrder": [ "name" ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/spanner.admin" - ], "parameters": { "name": { "description": "The name of the operation resource to be cancelled.", - "required": true, - "type": "string", + "location": "path", "pattern": "^projects/[^/]+/instances/[^/]+/operations/[^/]+$", - "location": "path" + "required": true, + "type": "string" } }, - "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/operations/{operationsId}:cancel", "path": "v1/{+name}:cancel", - "id": "spanner.projects.instances.operations.cancel", - "description": "Starts asynchronous cancellation on a long-running operation. The server\nmakes a best effort to cancel the operation, but success is not\nguaranteed. If the server doesn't support this method, it returns\n`google.rpc.Code.UNIMPLEMENTED`. Clients can use\nOperations.GetOperation or\nother methods to check whether the cancellation succeeded or whether the\noperation completed despite cancellation. On successful cancellation,\nthe operation is not deleted; instead, it becomes an operation with\nan Operation.error value with a google.rpc.Status.code of 1,\ncorresponding to `Code.CANCELLED`." - }, - "delete": { "response": { "$ref": "Empty" }, - "parameterOrder": [ - "name" - ], - "httpMethod": "DELETE", "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/spanner.admin" + ] + }, + "delete": { + "description": "Deletes a long-running operation. This method indicates that the client is\nno longer interested in the operation result. It does not cancel the\noperation. If the server doesn't support this method, it returns\n`google.rpc.Code.UNIMPLEMENTED`.", + "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/operations/{operationsId}", + "httpMethod": "DELETE", + "id": "spanner.projects.instances.operations.delete", + "parameterOrder": [ + "name" ], "parameters": { "name": { "description": "The name of the operation resource to be deleted.", - "required": true, - "type": "string", + "location": "path", "pattern": "^projects/[^/]+/instances/[^/]+/operations/[^/]+$", - "location": "path" + "required": true, + "type": "string" } }, - "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/operations/{operationsId}", "path": "v1/{+name}", - "id": "spanner.projects.instances.operations.delete", - "description": "Deletes a long-running operation. This method indicates that the client is\nno longer interested in the operation result. It does not cancel the\noperation. If the server doesn't support this method, it returns\n`google.rpc.Code.UNIMPLEMENTED`." - }, - "list": { - "path": "v1/{+name}", - "id": "spanner.projects.instances.operations.list", - "description": "Lists operations that match the specified filter in the request. If the\nserver doesn't support this method, it returns `UNIMPLEMENTED`.\n\nNOTE: the `name` binding allows API services to override the binding\nto use different resource name schemes, such as `users/*/operations`. To\noverride the binding, API services can add a binding such as\n`\"/v1/{name=users/*}/operations\"` to their service configuration.\nFor backwards compatibility, the default name includes the operations\ncollection id, however overriding users must ensure the name binding\nis the parent resource, without the operations collection id.", "response": { - "$ref": "ListOperationsResponse" + "$ref": "Empty" }, - "parameterOrder": [ - "name" - ], - "httpMethod": "GET", "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/spanner.admin" + ] + }, + "get": { + "description": "Gets the latest state of a long-running operation. Clients can use this\nmethod to poll the operation result at intervals as recommended by the API\nservice.", + "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/operations/{operationsId}", + "httpMethod": "GET", + "id": "spanner.projects.instances.operations.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource.", + "location": "path", + "pattern": "^projects/[^/]+/instances/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/spanner.admin" + ] + }, + "list": { + "description": "Lists operations that match the specified filter in the request. If the\nserver doesn't support this method, it returns `UNIMPLEMENTED`.\n\nNOTE: the `name` binding allows API services to override the binding\nto use different resource name schemes, such as `users/*/operations`. To\noverride the binding, API services can add a binding such as\n`\"/v1/{name=users/*}/operations\"` to their service configuration.\nFor backwards compatibility, the default name includes the operations\ncollection id, however overriding users must ensure the name binding\nis the parent resource, without the operations collection id.", + "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/operations", + "httpMethod": "GET", + "id": "spanner.projects.instances.operations.list", + "parameterOrder": [ + "name" ], "parameters": { "filter": { "description": "The standard list filter.", - "type": "string", - "location": "query" + "location": "query", + "type": "string" }, "name": { "description": "The name of the operation's parent resource.", - "required": true, - "type": "string", + "location": "path", "pattern": "^projects/[^/]+/instances/[^/]+/operations$", - "location": "path" - }, - "pageToken": { - "description": "The standard list page token.", - "type": "string", - "location": "query" + "required": true, + "type": "string" }, "pageSize": { "description": "The standard list page size.", "format": "int32", - "type": "integer", - "location": "query" + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "The standard list page token.", + "location": "query", + "type": "string" } }, - "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/operations" - }, - "get": { - "description": "Gets the latest state of a long-running operation. Clients can use this\nmethod to poll the operation result at intervals as recommended by the API\nservice.", + "path": "v1/{+name}", "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "GET", - "parameters": { - "name": { - "description": "The name of the operation resource.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/instances/[^/]+/operations/[^/]+$", - "location": "path" - } + "$ref": "ListOperationsResponse" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/spanner.admin" - ], - "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/operations/{operationsId}", - "path": "v1/{+name}", - "id": "spanner.projects.instances.operations.get" + ] } } } - }, - "methods": { - "list": { - "response": { - "$ref": "ListInstancesResponse" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/spanner.admin" - ], - "parameters": { - "parent": { - "description": "Required. The name of the project for which a list of instances is\nrequested. Values are of the form `projects/\u003cproject\u003e`.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+$", - "location": "path" - }, - "filter": { - "location": "query", - "description": "An expression for filtering the results of the request. Filter rules are\ncase insensitive. The fields eligible for filtering are:\n\n * `name`\n * `display_name`\n * `labels.key` where key is the name of a label\n\nSome examples of using filters are:\n\n * `name:*` --\u003e The instance has a name.\n * `name:Howl` --\u003e The instance's name contains the string \"howl\".\n * `name:HOWL` --\u003e Equivalent to above.\n * `NAME:howl` --\u003e Equivalent to above.\n * `labels.env:*` --\u003e The instance has the label \"env\".\n * `labels.env:dev` --\u003e The instance has the label \"env\" and the value of\n the label contains the string \"dev\".\n * `name:howl labels.env:dev` --\u003e The instance's name contains \"howl\" and\n it has the label \"env\" with its value\n containing \"dev\".", - "type": "string" - }, - "pageToken": { - "description": "If non-empty, `page_token` should contain a\nnext_page_token from a\nprevious ListInstancesResponse.", - "type": "string", - "location": "query" - }, - "pageSize": { - "description": "Number of instances to be returned in the response. If 0 or less, defaults\nto the server's maximum allowed page size.", - "format": "int32", - "type": "integer", - "location": "query" - } - }, - "flatPath": "v1/projects/{projectsId}/instances", - "path": "v1/{+parent}/instances", - "id": "spanner.projects.instances.list", - "description": "Lists all instances in the given project." - }, - "create": { - "httpMethod": "POST", - "parameterOrder": [ - "parent" - ], - "response": { - "$ref": "Operation" - }, - "parameters": { - "parent": { - "pattern": "^projects/[^/]+$", - "location": "path", - "description": "Required. The name of the project in which to create the instance. Values\nare of the form `projects/\u003cproject\u003e`.", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/spanner.admin" - ], - "flatPath": "v1/projects/{projectsId}/instances", - "id": "spanner.projects.instances.create", - "path": "v1/{+parent}/instances", - "request": { - "$ref": "CreateInstanceRequest" - }, - "description": "Creates an instance and begins preparing it to begin serving. The\nreturned long-running operation\ncan be used to track the progress of preparing the new\ninstance. The instance name is assigned by the caller. If the\nnamed instance already exists, `CreateInstance` returns\n`ALREADY_EXISTS`.\n\nImmediately upon completion of this request:\n\n * The instance is readable via the API, with all requested attributes\n but no allocated resources. Its state is `CREATING`.\n\nUntil completion of the returned operation:\n\n * Cancelling the operation renders the instance immediately unreadable\n via the API.\n * The instance can be deleted.\n * All other attempts to modify the instance are rejected.\n\nUpon completion of the returned operation:\n\n * Billing for all successfully-allocated resources begins (some types\n may have lower than the requested levels).\n * Databases can be created in the instance.\n * The instance's allocated resource levels are readable via the API.\n * The instance's state becomes `READY`.\n\nThe returned long-running operation will\nhave a name of the format `\u003cinstance_name\u003e/operations/\u003coperation_id\u003e` and\ncan be used to track creation of the instance. The\nmetadata field type is\nCreateInstanceMetadata.\nThe response field type is\nInstance, if successful." - }, - "setIamPolicy": { - "description": "Sets the access control policy on an instance resource. Replaces any\nexisting policy.\n\nAuthorization requires `spanner.instances.setIamPolicy` on\nresource.", - "request": { - "$ref": "SetIamPolicyRequest" - }, - "response": { - "$ref": "Policy" - }, - "parameterOrder": [ - "resource" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/spanner.admin" - ], - "parameters": { - "resource": { - "description": "REQUIRED: The Cloud Spanner resource for which the policy is being set. The format is `projects/\u003cproject ID\u003e/instances/\u003cinstance ID\u003e` for instance resources and `projects/\u003cproject ID\u003e/instances/\u003cinstance ID\u003e/databases/\u003cdatabase ID\u003e` for databases resources.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/instances/[^/]+$", - "location": "path" - } - }, - "flatPath": "v1/projects/{projectsId}/instances/{instancesId}:setIamPolicy", - "path": "v1/{+resource}:setIamPolicy", - "id": "spanner.projects.instances.setIamPolicy" - }, - "getIamPolicy": { - "path": "v1/{+resource}:getIamPolicy", - "id": "spanner.projects.instances.getIamPolicy", - "description": "Gets the access control policy for an instance resource. Returns an empty\npolicy if an instance exists but does not have a policy set.\n\nAuthorization requires `spanner.instances.getIamPolicy` on\nresource.", - "request": { - "$ref": "GetIamPolicyRequest" - }, - "response": { - "$ref": "Policy" - }, - "parameterOrder": [ - "resource" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/spanner.admin" - ], - "parameters": { - "resource": { - "description": "REQUIRED: The Cloud Spanner resource for which the policy is being retrieved. The format is `projects/\u003cproject ID\u003e/instances/\u003cinstance ID\u003e` for instance resources and `projects/\u003cproject ID\u003e/instances/\u003cinstance ID\u003e/databases/\u003cdatabase ID\u003e` for database resources.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/instances/[^/]+$", - "location": "path" - } - }, - "flatPath": "v1/projects/{projectsId}/instances/{instancesId}:getIamPolicy" - }, - "get": { - "flatPath": "v1/projects/{projectsId}/instances/{instancesId}", - "path": "v1/{+name}", - "id": "spanner.projects.instances.get", - "description": "Gets information about a particular instance.", - "response": { - "$ref": "Instance" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/spanner.admin" - ], - "parameters": { - "name": { - "pattern": "^projects/[^/]+/instances/[^/]+$", - "location": "path", - "description": "Required. The name of the requested instance. Values are of the form\n`projects/\u003cproject\u003e/instances/\u003cinstance\u003e`.", - "required": true, - "type": "string" - } - } - }, - "patch": { - "request": { - "$ref": "UpdateInstanceRequest" - }, - "description": "Updates an instance, and begins allocating or releasing resources\nas requested. The returned long-running\noperation can be used to track the\nprogress of updating the instance. If the named instance does not\nexist, returns `NOT_FOUND`.\n\nImmediately upon completion of this request:\n\n * For resource types for which a decrease in the instance's allocation\n has been requested, billing is based on the newly-requested level.\n\nUntil completion of the returned operation:\n\n * Cancelling the operation sets its metadata's\n cancel_time, and begins\n restoring resources to their pre-request values. The operation\n is guaranteed to succeed at undoing all resource changes,\n after which point it terminates with a `CANCELLED` status.\n * All other attempts to modify the instance are rejected.\n * Reading the instance via the API continues to give the pre-request\n resource levels.\n\nUpon completion of the returned operation:\n\n * Billing begins for all successfully-allocated resources (some types\n may have lower than the requested levels).\n * All newly-reserved resources are available for serving the instance's\n tables.\n * The instance's new resource levels are readable via the API.\n\nThe returned long-running operation will\nhave a name of the format `\u003cinstance_name\u003e/operations/\u003coperation_id\u003e` and\ncan be used to track the instance modification. The\nmetadata field type is\nUpdateInstanceMetadata.\nThe response field type is\nInstance, if successful.\n\nAuthorization requires `spanner.instances.update` permission on\nresource name.", - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "PATCH", - "parameters": { - "name": { - "location": "path", - "description": "Required. A unique identifier for the instance, which cannot be changed\nafter the instance is created. Values are of the form\n`projects/\u003cproject\u003e/instances/a-z*[a-z0-9]`. The final\nsegment of the name must be between 6 and 30 characters in length.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/instances/[^/]+$" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/spanner.admin" - ], - "flatPath": "v1/projects/{projectsId}/instances/{instancesId}", - "path": "v1/{+name}", - "id": "spanner.projects.instances.patch" - }, - "testIamPermissions": { - "response": { - "$ref": "TestIamPermissionsResponse" - }, - "parameterOrder": [ - "resource" - ], - "httpMethod": "POST", - "parameters": { - "resource": { - "description": "REQUIRED: The Cloud Spanner resource for which permissions are being tested. The format is `projects/\u003cproject ID\u003e/instances/\u003cinstance ID\u003e` for instance resources and `projects/\u003cproject ID\u003e/instances/\u003cinstance ID\u003e/databases/\u003cdatabase ID\u003e` for database resources.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/instances/[^/]+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/spanner.admin" - ], - "flatPath": "v1/projects/{projectsId}/instances/{instancesId}:testIamPermissions", - "path": "v1/{+resource}:testIamPermissions", - "id": "spanner.projects.instances.testIamPermissions", - "request": { - "$ref": "TestIamPermissionsRequest" - }, - "description": "Returns permissions that the caller has on the specified instance resource.\n\nAttempting this RPC on a non-existent Cloud Spanner instance resource will\nresult in a NOT_FOUND error if the user has `spanner.instances.list`\npermission on the containing Google Cloud Project. Otherwise returns an\nempty set of permissions." - }, - "delete": { - "description": "Deletes an instance.\n\nImmediately upon completion of the request:\n\n * Billing ceases for all of the instance's reserved resources.\n\nSoon afterward:\n\n * The instance and *all of its databases* immediately and\n irrevocably disappear from the API. All data in the databases\n is permanently deleted.", - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "DELETE", - "parameters": { - "name": { - "location": "path", - "description": "Required. The name of the instance to be deleted. Values are of the form\n`projects/\u003cproject\u003e/instances/\u003cinstance\u003e`", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/instances/[^/]+$" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/spanner.admin" - ], - "flatPath": "v1/projects/{projectsId}/instances/{instancesId}", - "path": "v1/{+name}", - "id": "spanner.projects.instances.delete" - } - } - }, - "instanceConfigs": { - "methods": { - "list": { - "httpMethod": "GET", - "response": { - "$ref": "ListInstanceConfigsResponse" - }, - "parameterOrder": [ - "parent" - ], - "parameters": { - "pageSize": { - "location": "query", - "description": "Number of instance configurations to be returned in the response. If 0 or\nless, defaults to the server's maximum allowed page size.", - "format": "int32", - "type": "integer" - }, - "parent": { - "pattern": "^projects/[^/]+$", - "location": "path", - "description": "Required. The name of the project for which a list of supported instance\nconfigurations is requested. Values are of the form\n`projects/\u003cproject\u003e`.", - "required": true, - "type": "string" - }, - "pageToken": { - "location": "query", - "description": "If non-empty, `page_token` should contain a\nnext_page_token\nfrom a previous ListInstanceConfigsResponse.", - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/spanner.admin" - ], - "flatPath": "v1/projects/{projectsId}/instanceConfigs", - "id": "spanner.projects.instanceConfigs.list", - "path": "v1/{+parent}/instanceConfigs", - "description": "Lists the supported instance configurations for a given project." - }, - "get": { - "response": { - "$ref": "InstanceConfig" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/spanner.admin" - ], - "parameters": { - "name": { - "description": "Required. The name of the requested instance configuration. Values are of\nthe form `projects/\u003cproject\u003e/instanceConfigs/\u003cconfig\u003e`.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/instanceConfigs/[^/]+$", - "location": "path" - } - }, - "flatPath": "v1/projects/{projectsId}/instanceConfigs/{instanceConfigsId}", - "path": "v1/{+name}", - "id": "spanner.projects.instanceConfigs.get", - "description": "Gets information about a particular instance configuration." - } } } } } }, - "parameters": { - "upload_protocol": { - "location": "query", - "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", - "type": "string" - }, - "prettyPrint": { - "location": "query", - "description": "Returns response with indentations and line breaks.", - "type": "boolean", - "default": "true" - }, - "uploadType": { - "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", - "type": "string", - "location": "query" - }, - "fields": { - "description": "Selector specifying which fields to include in a partial response.", - "type": "string", - "location": "query" - }, - "$.xgafv": { - "description": "V1 error format.", - "type": "string", - "enumDescriptions": [ - "v1 error format", - "v2 error format" - ], - "location": "query", - "enum": [ - "1", - "2" - ] - }, - "callback": { - "description": "JSONP", - "type": "string", - "location": "query" - }, - "alt": { - "description": "Data format for response.", - "default": "json", - "enum": [ - "json", - "media", - "proto" - ], - "type": "string", - "enumDescriptions": [ - "Responses with Content-Type of application/json", - "Media download with context-dependent Content-Type", - "Responses with Content-Type of application/x-protobuf" - ], - "location": "query" - }, - "key": { - "location": "query", - "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.", - "type": "string" - }, - "access_token": { - "location": "query", - "description": "OAuth access token.", - "type": "string" - }, - "quotaUser": { - "location": "query", - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", - "type": "string" - }, - "pp": { - "location": "query", - "description": "Pretty-print response.", - "type": "boolean", - "default": "true" - }, - "oauth_token": { - "location": "query", - "description": "OAuth 2.0 token for the current user.", - "type": "string" - }, - "bearer_token": { - "location": "query", - "description": "OAuth bearer token.", - "type": "string" - } - }, - "version": "v1", - "baseUrl": "https://spanner.googleapis.com/", - "kind": "discovery#restDescription", - "description": "Cloud Spanner is a managed, mission-critical, globally consistent and scalable relational database service.", - "servicePath": "", - "basePath": "", - "revision": "20171204", - "documentationLink": "https://cloud.google.com/spanner/", - "id": "spanner:v1", - "discoveryVersion": "v1", - "version_module": true, + "revision": "20180228", + "rootUrl": "https://spanner.googleapis.com/", "schemas": { - "ListOperationsResponse": { - "description": "The response message for Operations.ListOperations.", - "type": "object", + "BeginTransactionRequest": { + "description": "The request for BeginTransaction.", + "id": "BeginTransactionRequest", "properties": { - "operations": { - "description": "A list of operations that matches the specified filter in the request.", - "type": "array", - "items": { - "$ref": "Operation" - } - }, - "nextPageToken": { - "description": "The standard List next-page token.", - "type": "string" + "options": { + "$ref": "TransactionOptions", + "description": "Required. Options for the new transaction." } }, - "id": "ListOperationsResponse" - }, - "UpdateInstanceMetadata": { - "description": "Metadata type for the operation returned by\nUpdateInstance.", - "type": "object", - "properties": { - "cancelTime": { - "description": "The time at which this operation was cancelled. If set, this operation is\nin the process of undoing itself (which is guaranteed to succeed) and\ncannot be cancelled again.", - "format": "google-datetime", - "type": "string" - }, - "endTime": { - "description": "The time at which this operation failed or was completed successfully.", - "format": "google-datetime", - "type": "string" - }, - "instance": { - "description": "The desired end state of the update.", - "$ref": "Instance" - }, - "startTime": { - "description": "The time at which UpdateInstance\nrequest was received.", - "format": "google-datetime", - "type": "string" - } - }, - "id": "UpdateInstanceMetadata" - }, - "ResultSetMetadata": { - "description": "Metadata about a ResultSet or PartialResultSet.", - "type": "object", - "properties": { - "rowType": { - "description": "Indicates the field names and types for the rows in the result\nset. For example, a SQL query like `\"SELECT UserId, UserName FROM\nUsers\"` could return a `row_type` value like:\n\n \"fields\": [\n { \"name\": \"UserId\", \"type\": { \"code\": \"INT64\" } },\n { \"name\": \"UserName\", \"type\": { \"code\": \"STRING\" } },\n ]", - "$ref": "StructType" - }, - "transaction": { - "$ref": "Transaction", - "description": "If the read or SQL query began a transaction as a side-effect, the\ninformation about the new transaction is yielded here." - } - }, - "id": "ResultSetMetadata" - }, - "TransactionSelector": { - "description": "This message is used to select the transaction in which a\nRead or\nExecuteSql call runs.\n\nSee TransactionOptions for more information about transactions.", - "type": "object", - "properties": { - "singleUse": { - "description": "Execute the read or SQL query in a temporary transaction.\nThis is the most efficient way to execute a transaction that\nconsists of a single SQL query.", - "$ref": "TransactionOptions" - }, - "begin": { - "description": "Begin a new transaction and execute this read or SQL query in\nit. The transaction ID of the new transaction is returned in\nResultSetMetadata.transaction, which is a Transaction.", - "$ref": "TransactionOptions" - }, - "id": { - "description": "Execute the read or SQL query in a previously-started transaction.", - "format": "byte", - "type": "string" - } - }, - "id": "TransactionSelector" - }, - "Mutation": { - "description": "A modification to one or more Cloud Spanner rows. Mutations can be\napplied to a Cloud Spanner database by sending them in a\nCommit call.", - "type": "object", - "properties": { - "delete": { - "description": "Delete rows from a table. Succeeds whether or not the named\nrows were present.", - "$ref": "Delete" - }, - "insert": { - "$ref": "Write", - "description": "Insert new rows in a table. If any of the rows already exist,\nthe write or transaction fails with error `ALREADY_EXISTS`." - }, - "insertOrUpdate": { - "description": "Like insert, except that if the row already exists, then\nits column values are overwritten with the ones provided. Any\ncolumn values not explicitly written are preserved.", - "$ref": "Write" - }, - "update": { - "$ref": "Write", - "description": "Update existing rows in a table. If any of the rows does not\nalready exist, the transaction fails with error `NOT_FOUND`." - }, - "replace": { - "description": "Like insert, except that if the row already exists, it is\ndeleted, and the column values provided are inserted\ninstead. Unlike insert_or_update, this means any values not\nexplicitly written become `NULL`.", - "$ref": "Write" - } - }, - "id": "Mutation" - }, - "KeySet": { - "description": "`KeySet` defines a collection of Cloud Spanner keys and/or key ranges. All\nthe keys are expected to be in the same table or index. The keys need\nnot be sorted in any particular way.\n\nIf the same key is specified multiple times in the set (for example\nif two ranges, two keys, or a key and a range overlap), Cloud Spanner\nbehaves as if the key were only specified once.", - "type": "object", - "properties": { - "keys": { - "description": "A list of specific keys. Entries in `keys` should have exactly as\nmany elements as there are columns in the primary or index key\nwith which this `KeySet` is used. Individual key values are\nencoded as described here.", - "type": "array", - "items": { - "type": "array", - "items": { - "type": "any" - } - } - }, - "all": { - "description": "For convenience `all` can be set to `true` to indicate that this\n`KeySet` matches all keys in the table or index. Note that any keys\nspecified in `keys` or `ranges` are only yielded once.", - "type": "boolean" - }, - "ranges": { - "description": "A list of key ranges. See KeyRange for more information about\nkey range specifications.", - "type": "array", - "items": { - "$ref": "KeyRange" - } - } - }, - "id": "KeySet" - }, - "GetDatabaseDdlResponse": { - "description": "The response for GetDatabaseDdl.", - "type": "object", - "properties": { - "statements": { - "description": "A list of formatted DDL statements defining the schema of the database\nspecified in the request.", - "type": "array", - "items": { - "type": "string" - } - } - }, - "id": "GetDatabaseDdlResponse" - }, - "Database": { - "properties": { - "state": { - "enum": [ - "STATE_UNSPECIFIED", - "CREATING", - "READY" - ], - "description": "Output only. The current database state.", - "type": "string", - "enumDescriptions": [ - "Not specified.", - "The database is still being created. Operations on the database may fail\nwith `FAILED_PRECONDITION` in this state.", - "The database is fully created and ready for use." - ] - }, - "name": { - "description": "Required. The name of the database. Values are of the form\n`projects/\u003cproject\u003e/instances/\u003cinstance\u003e/databases/\u003cdatabase\u003e`,\nwhere `\u003cdatabase\u003e` is as specified in the `CREATE DATABASE`\nstatement. This name can be passed to other API methods to\nidentify the database.", - "type": "string" - } - }, - "id": "Database", - "description": "A Cloud Spanner database.", "type": "object" }, - "SetIamPolicyRequest": { - "description": "Request message for `SetIamPolicy` method.", - "type": "object", + "Binding": { + "description": "Associates `members` with a `role`.", + "id": "Binding", "properties": { - "policy": { - "$ref": "Policy", - "description": "REQUIRED: The complete policy to be applied to the `resource`. The size of\nthe policy is limited to a few 10s of KB. An empty policy is a\nvalid policy but certain Cloud Platform services (such as Projects)\nmight reject them." - } - }, - "id": "SetIamPolicyRequest" - }, - "ListDatabasesResponse": { - "description": "The response for ListDatabases.", - "type": "object", - "properties": { - "nextPageToken": { - "description": "`next_page_token` can be sent in a subsequent\nListDatabases call to fetch more\nof the matching databases.", - "type": "string" - }, - "databases": { - "description": "Databases that matched the request.", - "type": "array", + "members": { + "description": "Specifies the identities requesting access for a Cloud Platform resource.\n`members` can have the following values:\n\n* `allUsers`: A special identifier that represents anyone who is\n on the internet; with or without a Google account.\n\n* `allAuthenticatedUsers`: A special identifier that represents anyone\n who is authenticated with a Google account or a service account.\n\n* `user:{emailid}`: An email address that represents a specific Google\n account. For example, `alice@gmail.com` or `joe@example.com`.\n\n\n* `serviceAccount:{emailid}`: An email address that represents a service\n account. For example, `my-other-app@appspot.gserviceaccount.com`.\n\n* `group:{emailid}`: An email address that represents a Google group.\n For example, `admins@example.com`.\n\n\n* `domain:{domain}`: A Google Apps domain name that represents all the\n users of that domain. For example, `google.com` or `example.com`.\n\n", "items": { - "$ref": "Database" - } + "type": "string" + }, + "type": "array" + }, + "role": { + "description": "Role that is assigned to `members`.\nFor example, `roles/viewer`, `roles/editor`, or `roles/owner`.\nRequired", + "type": "string" } }, - "id": "ListDatabasesResponse" + "type": "object" }, - "Instance": { - "description": "An isolated set of Cloud Spanner resources on which databases can be hosted.", - "type": "object", + "ChildLink": { + "description": "Metadata associated with a parent-child relationship appearing in a\nPlanNode.", + "id": "ChildLink", "properties": { - "displayName": { - "description": "Required. The descriptive name for this instance as it appears in UIs.\nMust be unique per project and between 4 and 30 characters in length.", - "type": "string" - }, - "nodeCount": { - "description": "Required. The number of nodes allocated to this instance. This may be zero\nin API responses for instances that are not yet in state `READY`.\n\nSee [the documentation](https://cloud.google.com/spanner/docs/instances#node_count)\nfor more information about nodes.", + "childIndex": { + "description": "The node to which the link points.", "format": "int32", "type": "integer" }, - "labels": { - "description": "Cloud Labels are a flexible and lightweight mechanism for organizing cloud\nresources into groups that reflect a customer's organizational needs and\ndeployment strategies. Cloud Labels can be used to filter collections of\nresources. They can be used to control how resource metrics are aggregated.\nAnd they can be used as arguments to policy management rules (e.g. route,\nfirewall, load balancing, etc.).\n\n * Label keys must be between 1 and 63 characters long and must conform to\n the following regular expression: `[a-z]([-a-z0-9]*[a-z0-9])?`.\n * Label values must be between 0 and 63 characters long and must conform\n to the regular expression `([a-z]([-a-z0-9]*[a-z0-9])?)?`.\n * No more than 64 labels can be associated with a given resource.\n\nSee https://goo.gl/xmQnxf for more information on and examples of labels.\n\nIf you plan to use labels in your own code, please note that additional\ncharacters may be allowed in the future. And so you are advised to use an\ninternal label representation, such as JSON, which doesn't rely upon\nspecific characters being disallowed. For example, representing labels\nas the string: name + \"_\" + value would prove problematic if we were to\nallow \"_\" in a future release.", - "type": "object", - "additionalProperties": { - "type": "string" - } - }, - "config": { - "description": "Required. The name of the instance's configuration. Values are of the form\n`projects/\u003cproject\u003e/instanceConfigs/\u003cconfiguration\u003e`. See\nalso InstanceConfig and\nListInstanceConfigs.", - "type": "string" - }, - "state": { - "description": "Output only. The current instance state. For\nCreateInstance, the state must be\neither omitted or set to `CREATING`. For\nUpdateInstance, the state must be\neither omitted or set to `READY`.", - "type": "string", - "enumDescriptions": [ - "Not specified.", - "The instance is still being created. Resources may not be\navailable yet, and operations such as database creation may not\nwork.", - "The instance is fully created and ready to do work such as\ncreating databases." - ], - "enum": [ - "STATE_UNSPECIFIED", - "CREATING", - "READY" - ] - }, - "name": { - "description": "Required. A unique identifier for the instance, which cannot be changed\nafter the instance is created. Values are of the form\n`projects/\u003cproject\u003e/instances/a-z*[a-z0-9]`. The final\nsegment of the name must be between 6 and 30 characters in length.", - "type": "string" - } - }, - "id": "Instance" - }, - "RollbackRequest": { - "description": "The request for Rollback.", - "type": "object", - "properties": { - "transactionId": { - "description": "Required. The transaction to roll back.", - "format": "byte", - "type": "string" - } - }, - "id": "RollbackRequest" - }, - "Transaction": { - "properties": { - "readTimestamp": { - "description": "For snapshot read-only transactions, the read timestamp chosen\nfor the transaction. Not returned by default: see\nTransactionOptions.ReadOnly.return_read_timestamp.\n\nA timestamp in RFC3339 UTC \\\"Zulu\\\" format, accurate to nanoseconds.\nExample: `\"2014-10-02T15:01:23.045123456Z\"`.", - "format": "google-datetime", - "type": "string" - }, - "id": { - "description": "`id` may be used to identify the transaction in subsequent\nRead,\nExecuteSql,\nCommit, or\nRollback calls.\n\nSingle-use read-only transactions do not have IDs, because\nsingle-use transactions do not support multiple requests.", - "format": "byte", - "type": "string" - } - }, - "id": "Transaction", - "description": "A transaction.", - "type": "object" - }, - "UpdateDatabaseDdlMetadata": { - "properties": { - "database": { - "description": "The database being modified.", - "type": "string" - }, - "statements": { - "description": "For an update this list contains all the statements. For an\nindividual statement, this list contains only that statement.", - "type": "array", - "items": { - "type": "string" - } - }, - "commitTimestamps": { - "description": "Reports the commit timestamps of all statements that have\nsucceeded so far, where `commit_timestamps[i]` is the commit\ntimestamp for the statement `statements[i]`.", - "type": "array", - "items": { - "format": "google-datetime", - "type": "string" - } - } - }, - "id": "UpdateDatabaseDdlMetadata", - "description": "Metadata type for the operation returned by\nUpdateDatabaseDdl.", - "type": "object" - }, - "StructType": { - "properties": { - "fields": { - "description": "The list of fields that make up this struct. Order is\nsignificant, because values of this struct type are represented as\nlists, where the order of field values matches the order of\nfields in the StructType. In turn, the order of fields\nmatches the order of columns in a read request, or the order of\nfields in the `SELECT` clause of a query.", - "type": "array", - "items": { - "$ref": "Field" - } - } - }, - "id": "StructType", - "description": "`StructType` defines the fields of a STRUCT type.", - "type": "object" - }, - "QueryPlan": { - "description": "Contains an ordered list of nodes appearing in the query plan.", - "type": "object", - "properties": { - "planNodes": { - "description": "The nodes in the query plan. Plan nodes are returned in pre-order starting\nwith the plan root. Each PlanNode's `id` corresponds to its index in\n`plan_nodes`.", - "type": "array", - "items": { - "$ref": "PlanNode" - } - } - }, - "id": "QueryPlan" - }, - "Field": { - "description": "Message representing a single field of a struct.", - "type": "object", - "properties": { - "name": { - "description": "The name of the field. For reads, this is the column name. For\nSQL queries, it is the column alias (e.g., `\"Word\"` in the\nquery `\"SELECT 'hello' AS Word\"`), or the column name (e.g.,\n`\"ColName\"` in the query `\"SELECT ColName FROM Table\"`). Some\ncolumns might have an empty name (e.g., !\"SELECT\nUPPER(ColName)\"`). Note that a query result can contain\nmultiple fields with the same name.", - "type": "string" - }, "type": { - "$ref": "Type", - "description": "The type of the field." - } - }, - "id": "Field" - }, - "TestIamPermissionsRequest": { - "description": "Request message for `TestIamPermissions` method.", - "type": "object", - "properties": { - "permissions": { - "description": "REQUIRED: The set of permissions to check for 'resource'.\nPermissions with wildcards (such as '*', 'spanner.*', 'spanner.instances.*') are not allowed.", - "type": "array", - "items": { - "type": "string" - } - } - }, - "id": "TestIamPermissionsRequest" - }, - "ResultSetStats": { - "description": "Additional statistics about a ResultSet or PartialResultSet.", - "type": "object", - "properties": { - "queryPlan": { - "$ref": "QueryPlan", - "description": "QueryPlan for the query associated with this result." + "description": "The type of the link. For example, in Hash Joins this could be used to\ndistinguish between the build child and the probe child, or in the case\nof the child being an output variable, to represent the tag associated\nwith the output variable.", + "type": "string" }, - "queryStats": { - "description": "Aggregated statistics from the execution of the query. Only present when\nthe query is profiled. For example, a query could return the statistics as\nfollows:\n\n {\n \"rows_returned\": \"3\",\n \"elapsed_time\": \"1.22 secs\",\n \"cpu_time\": \"1.19 secs\"\n }", - "type": "object", - "additionalProperties": { - "description": "Properties of the object.", - "type": "any" - } + "variable": { + "description": "Only present if the child node is SCALAR and corresponds\nto an output variable of the parent node. The field carries the name of\nthe output variable.\nFor example, a `TableScan` operator that reads rows from a table will\nhave child links to the `SCALAR` nodes representing the output variables\ncreated for each column that is read by the operator. The corresponding\n`variable` fields will be set to the variable names assigned to the\ncolumns.", + "type": "string" } }, - "id": "ResultSetStats" + "type": "object" + }, + "CommitRequest": { + "description": "The request for Commit.", + "id": "CommitRequest", + "properties": { + "mutations": { + "description": "The mutations to be executed when this transaction commits. All\nmutations are applied atomically, in the order they appear in\nthis list.", + "items": { + "$ref": "Mutation" + }, + "type": "array" + }, + "singleUseTransaction": { + "$ref": "TransactionOptions", + "description": "Execute mutations in a temporary transaction. Note that unlike\ncommit of a previously-started transaction, commit with a\ntemporary transaction is non-idempotent. That is, if the\n`CommitRequest` is sent to Cloud Spanner more than once (for\ninstance, due to retries in the application, or in the\ntransport library), it is possible that the mutations are\nexecuted more than once. If this is undesirable, use\nBeginTransaction and\nCommit instead." + }, + "transactionId": { + "description": "Commit a previously-started transaction.", + "format": "byte", + "type": "string" + } + }, + "type": "object" }, "CommitResponse": { "description": "The response for Commit.", - "type": "object", + "id": "CommitResponse", "properties": { "commitTimestamp": { "description": "The Cloud Spanner timestamp at which the transaction committed.", @@ -1654,111 +1425,40 @@ "type": "string" } }, - "id": "CommitResponse" - }, - "Type": { - "properties": { - "structType": { - "$ref": "StructType", - "description": "If code == STRUCT, then `struct_type`\nprovides type information for the struct's fields." - }, - "arrayElementType": { - "description": "If code == ARRAY, then `array_element_type`\nis the type of the array elements.", - "$ref": "Type" - }, - "code": { - "description": "Required. The TypeCode for this type.", - "type": "string", - "enumDescriptions": [ - "Not specified.", - "Encoded as JSON `true` or `false`.", - "Encoded as `string`, in decimal format.", - "Encoded as `number`, or the strings `\"NaN\"`, `\"Infinity\"`, or\n`\"-Infinity\"`.", - "Encoded as `string` in RFC 3339 timestamp format. The time zone\nmust be present, and must be `\"Z\"`.", - "Encoded as `string` in RFC 3339 date format.", - "Encoded as `string`.", - "Encoded as a base64-encoded `string`, as described in RFC 4648,\nsection 4.", - "Encoded as `list`, where the list elements are represented\naccording to array_element_type.", - "Encoded as `list`, where list element `i` is represented according\nto [struct_type.fields[i]][google.spanner.v1.StructType.fields]." - ], - "enum": [ - "TYPE_CODE_UNSPECIFIED", - "BOOL", - "INT64", - "FLOAT64", - "TIMESTAMP", - "DATE", - "STRING", - "BYTES", - "ARRAY", - "STRUCT" - ] - } - }, - "id": "Type", - "description": "`Type` indicates the type of a Cloud Spanner value, as might be stored in a\ntable cell or returned from an SQL query.", "type": "object" }, - "PlanNode": { + "CreateDatabaseMetadata": { + "description": "Metadata type for the operation returned by\nCreateDatabase.", + "id": "CreateDatabaseMetadata", "properties": { - "displayName": { - "description": "The display name for the node.", + "database": { + "description": "The database being created.", "type": "string" - }, - "kind": { - "enum": [ - "KIND_UNSPECIFIED", - "RELATIONAL", - "SCALAR" - ], - "description": "Used to determine the type of node. May be needed for visualizing\ndifferent kinds of nodes differently. For example, If the node is a\nSCALAR node, it will have a condensed representation\nwhich can be used to directly embed a description of the node in its\nparent.", - "type": "string", - "enumDescriptions": [ - "Not specified.", - "Denotes a Relational operator node in the expression tree. Relational\noperators represent iterative processing of rows during query execution.\nFor example, a `TableScan` operation that reads rows from a table.", - "Denotes a Scalar node in the expression tree. Scalar nodes represent\nnon-iterable entities in the query plan. For example, constants or\narithmetic operators appearing inside predicate expressions or references\nto column names." - ] - }, - "childLinks": { - "description": "List of child node `index`es and their relationship to this parent.", - "type": "array", - "items": { - "$ref": "ChildLink" - } - }, - "metadata": { - "additionalProperties": { - "description": "Properties of the object.", - "type": "any" - }, - "description": "Attributes relevant to the node contained in a group of key-value pairs.\nFor example, a Parameter Reference node could have the following\ninformation in its metadata:\n\n {\n \"parameter_reference\": \"param1\",\n \"parameter_type\": \"array\"\n }", - "type": "object" - }, - "executionStats": { - "additionalProperties": { - "description": "Properties of the object.", - "type": "any" - }, - "description": "The execution statistics associated with the node, contained in a group of\nkey-value pairs. Only present if the plan was returned as a result of a\nprofile query. For example, number of executions, number of rows/time per\nexecution etc.", - "type": "object" - }, - "shortRepresentation": { - "$ref": "ShortRepresentation", - "description": "Condensed representation for SCALAR nodes." - }, - "index": { - "description": "The `PlanNode`'s index in node list.", - "format": "int32", - "type": "integer" } }, - "id": "PlanNode", - "description": "Node information for nodes appearing in a QueryPlan.plan_nodes.", + "type": "object" + }, + "CreateDatabaseRequest": { + "description": "The request for CreateDatabase.", + "id": "CreateDatabaseRequest", + "properties": { + "createStatement": { + "description": "Required. A `CREATE DATABASE` statement, which specifies the ID of the\nnew database. The database ID must conform to the regular expression\n`a-z*[a-z0-9]` and be between 2 and 30 characters in length.\nIf the database ID is a reserved word or if it contains a hyphen, the\ndatabase ID must be enclosed in backticks (`` ` ``).", + "type": "string" + }, + "extraStatements": { + "description": "An optional list of DDL statements to run inside the newly created\ndatabase. Statements can create tables, indexes, etc. These\nstatements execute atomically with the creation of the database:\nif there is an error in any statement, the database is not created.", + "items": { + "type": "string" + }, + "type": "array" + } + }, "type": "object" }, "CreateInstanceMetadata": { "description": "Metadata type for the operation returned by\nCreateInstance.", - "type": "object", + "id": "CreateInstanceMetadata", "properties": { "cancelTime": { "description": "The time at which this operation was cancelled. If set, this operation is\nin the process of undoing itself (which is guaranteed to succeed) and\ncannot be cancelled again.", @@ -1780,129 +1480,367 @@ "type": "string" } }, - "id": "CreateInstanceMetadata" + "type": "object" }, - "ChildLink": { + "CreateInstanceRequest": { + "description": "The request for CreateInstance.", + "id": "CreateInstanceRequest", "properties": { - "childIndex": { - "description": "The node to which the link points.", - "format": "int32", - "type": "integer" + "instance": { + "$ref": "Instance", + "description": "Required. The instance to create. The name may be omitted, but if\nspecified must be `\u003cparent\u003e/instances/\u003cinstance_id\u003e`." }, - "variable": { - "description": "Only present if the child node is SCALAR and corresponds\nto an output variable of the parent node. The field carries the name of\nthe output variable.\nFor example, a `TableScan` operator that reads rows from a table will\nhave child links to the `SCALAR` nodes representing the output variables\ncreated for each column that is read by the operator. The corresponding\n`variable` fields will be set to the variable names assigned to the\ncolumns.", - "type": "string" - }, - "type": { - "description": "The type of the link. For example, in Hash Joins this could be used to\ndistinguish between the build child and the probe child, or in the case\nof the child being an output variable, to represent the tag associated\nwith the output variable.", + "instanceId": { + "description": "Required. The ID of the instance to create. Valid identifiers are of the\nform `a-z*[a-z0-9]` and must be between 6 and 30 characters in\nlength.", + "type": "string" + } + }, + "type": "object" + }, + "CreateSessionRequest": { + "description": "The request for CreateSession.", + "id": "CreateSessionRequest", + "properties": { + "session": { + "$ref": "Session", + "description": "The session to create." + } + }, + "type": "object" + }, + "Database": { + "description": "A Cloud Spanner database.", + "id": "Database", + "properties": { + "name": { + "description": "Required. The name of the database. Values are of the form\n`projects/\u003cproject\u003e/instances/\u003cinstance\u003e/databases/\u003cdatabase\u003e`,\nwhere `\u003cdatabase\u003e` is as specified in the `CREATE DATABASE`\nstatement. This name can be passed to other API methods to\nidentify the database.", + "type": "string" + }, + "state": { + "description": "Output only. The current database state.", + "enum": [ + "STATE_UNSPECIFIED", + "CREATING", + "READY" + ], + "enumDescriptions": [ + "Not specified.", + "The database is still being created. Operations on the database may fail\nwith `FAILED_PRECONDITION` in this state.", + "The database is fully created and ready for use." + ], "type": "string" } }, - "id": "ChildLink", - "description": "Metadata associated with a parent-child relationship appearing in a\nPlanNode.", "type": "object" }, "Delete": { + "description": "Arguments to delete operations.", + "id": "Delete", "properties": { "keySet": { - "description": "Required. The primary keys of the rows within table to delete.", - "$ref": "KeySet" + "$ref": "KeySet", + "description": "Required. The primary keys of the rows within table to delete.\nDelete is idempotent. The transaction will succeed even if some or all\nrows do not exist." }, "table": { "description": "Required. The table whose rows will be deleted.", "type": "string" } }, - "id": "Delete", - "description": "Arguments to delete operations.", "type": "object" }, - "ListInstanceConfigsResponse": { - "description": "The response for ListInstanceConfigs.", - "type": "object", - "properties": { - "nextPageToken": { - "description": "`next_page_token` can be sent in a subsequent\nListInstanceConfigs call to\nfetch more of the matching instance configurations.", - "type": "string" - }, - "instanceConfigs": { - "description": "The list of requested instance configurations.", - "type": "array", - "items": { - "$ref": "InstanceConfig" - } - } - }, - "id": "ListInstanceConfigsResponse" + "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" }, - "BeginTransactionRequest": { - "description": "The request for BeginTransaction.", - "type": "object", + "ExecuteSqlRequest": { + "description": "The request for ExecuteSql and\nExecuteStreamingSql.", + "id": "ExecuteSqlRequest", "properties": { - "options": { - "$ref": "TransactionOptions", - "description": "Required. Options for the new transaction." - } - }, - "id": "BeginTransactionRequest" - }, - "CommitRequest": { - "description": "The request for Commit.", - "type": "object", - "properties": { - "singleUseTransaction": { - "description": "Execute mutations in a temporary transaction. Note that unlike\ncommit of a previously-started transaction, commit with a\ntemporary transaction is non-idempotent. That is, if the\n`CommitRequest` is sent to Cloud Spanner more than once (for\ninstance, due to retries in the application, or in the\ntransport library), it is possible that the mutations are\nexecuted more than once. If this is undesirable, use\nBeginTransaction and\nCommit instead.", - "$ref": "TransactionOptions" + "paramTypes": { + "additionalProperties": { + "$ref": "Type" + }, + "description": "It is not always possible for Cloud Spanner to infer the right SQL type\nfrom a JSON value. For example, values of type `BYTES` and values\nof type `STRING` both appear in params as JSON strings.\n\nIn these cases, `param_types` can be used to specify the exact\nSQL type for some or all of the SQL query parameters. See the\ndefinition of Type for more information\nabout SQL types.", + "type": "object" }, - "mutations": { - "description": "The mutations to be executed when this transaction commits. All\nmutations are applied atomically, in the order they appear in\nthis list.", - "type": "array", - "items": { - "$ref": "Mutation" - } + "params": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "description": "The SQL query string can contain parameter placeholders. A parameter\nplaceholder consists of `'@'` followed by the parameter\nname. Parameter names consist of any combination of letters,\nnumbers, and underscores.\n\nParameters can appear anywhere that a literal value is expected. The same\nparameter name can be used more than once, for example:\n `\"WHERE id \u003e @msg_id AND id \u003c @msg_id + 100\"`\n\nIt is an error to execute an SQL query with unbound parameters.\n\nParameter values are specified using `params`, which is a JSON\nobject whose keys are parameter names, and whose values are the\ncorresponding parameter values.", + "type": "object" }, - "transactionId": { - "description": "Commit a previously-started transaction.", + "partitionToken": { + "description": "If present, results will be restricted to the specified partition\npreviously created using PartitionQuery(). There must be an exact\nmatch for the values of fields common to this message and the\nPartitionQueryRequest message used to create this partition_token.", "format": "byte", "type": "string" + }, + "queryMode": { + "description": "Used to control the amount of debugging information returned in\nResultSetStats. If partition_token is set, query_mode can only\nbe set to QueryMode.NORMAL.", + "enum": [ + "NORMAL", + "PLAN", + "PROFILE" + ], + "enumDescriptions": [ + "The default mode where only the query result, without any information\nabout the query plan is returned.", + "This mode returns only the query plan, without any result rows or\nexecution statistics information.", + "This mode returns both the query plan and the execution statistics along\nwith the result rows." + ], + "type": "string" + }, + "resumeToken": { + "description": "If this request is resuming a previously interrupted SQL query\nexecution, `resume_token` should be copied from the last\nPartialResultSet yielded before the interruption. Doing this\nenables the new SQL query execution to resume where the last one left\noff. The rest of the request parameters must exactly match the\nrequest that yielded this token.", + "format": "byte", + "type": "string" + }, + "sql": { + "description": "Required. The SQL query string.", + "type": "string" + }, + "transaction": { + "$ref": "TransactionSelector", + "description": "The transaction to use. If none is provided, the default is a\ntemporary read-only transaction with strong concurrency." } }, - "id": "CommitRequest" + "type": "object" }, - "TestIamPermissionsResponse": { + "Field": { + "description": "Message representing a single field of a struct.", + "id": "Field", "properties": { - "permissions": { - "description": "A subset of `TestPermissionsRequest.permissions` that the caller is\nallowed.", - "type": "array", + "name": { + "description": "The name of the field. For reads, this is the column name. For\nSQL queries, it is the column alias (e.g., `\"Word\"` in the\nquery `\"SELECT 'hello' AS Word\"`), or the column name (e.g.,\n`\"ColName\"` in the query `\"SELECT ColName FROM Table\"`). Some\ncolumns might have an empty name (e.g., !\"SELECT\nUPPER(ColName)\"`). Note that a query result can contain\nmultiple fields with the same name.", + "type": "string" + }, + "type": { + "$ref": "Type", + "description": "The type of the field." + } + }, + "type": "object" + }, + "GetDatabaseDdlResponse": { + "description": "The response for GetDatabaseDdl.", + "id": "GetDatabaseDdlResponse", + "properties": { + "statements": { + "description": "A list of formatted DDL statements defining the schema of the database\nspecified in the request.", "items": { "type": "string" - } + }, + "type": "array" } }, - "id": "TestIamPermissionsResponse", - "description": "Response message for `TestIamPermissions` method.", "type": "object" }, "GetIamPolicyRequest": { "description": "Request message for `GetIamPolicy` method.", - "type": "object", + "id": "GetIamPolicyRequest", "properties": {}, - "id": "GetIamPolicyRequest" + "type": "object" }, - "CreateDatabaseMetadata": { - "description": "Metadata type for the operation returned by\nCreateDatabase.", - "type": "object", + "Instance": { + "description": "An isolated set of Cloud Spanner resources on which databases can be hosted.", + "id": "Instance", "properties": { - "database": { - "description": "The database being created.", + "config": { + "description": "Required. The name of the instance's configuration. Values are of the form\n`projects/\u003cproject\u003e/instanceConfigs/\u003cconfiguration\u003e`. See\nalso InstanceConfig and\nListInstanceConfigs.", + "type": "string" + }, + "displayName": { + "description": "Required. The descriptive name for this instance as it appears in UIs.\nMust be unique per project and between 4 and 30 characters in length.", + "type": "string" + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Cloud Labels are a flexible and lightweight mechanism for organizing cloud\nresources into groups that reflect a customer's organizational needs and\ndeployment strategies. Cloud Labels can be used to filter collections of\nresources. They can be used to control how resource metrics are aggregated.\nAnd they can be used as arguments to policy management rules (e.g. route,\nfirewall, load balancing, etc.).\n\n * Label keys must be between 1 and 63 characters long and must conform to\n the following regular expression: `[a-z]([-a-z0-9]*[a-z0-9])?`.\n * Label values must be between 0 and 63 characters long and must conform\n to the regular expression `([a-z]([-a-z0-9]*[a-z0-9])?)?`.\n * No more than 64 labels can be associated with a given resource.\n\nSee https://goo.gl/xmQnxf for more information on and examples of labels.\n\nIf you plan to use labels in your own code, please note that additional\ncharacters may be allowed in the future. And so you are advised to use an\ninternal label representation, such as JSON, which doesn't rely upon\nspecific characters being disallowed. For example, representing labels\nas the string: name + \"_\" + value would prove problematic if we were to\nallow \"_\" in a future release.", + "type": "object" + }, + "name": { + "description": "Required. A unique identifier for the instance, which cannot be changed\nafter the instance is created. Values are of the form\n`projects/\u003cproject\u003e/instances/a-z*[a-z0-9]`. The final\nsegment of the name must be between 6 and 30 characters in length.", + "type": "string" + }, + "nodeCount": { + "description": "Required. The number of nodes allocated to this instance. This may be zero\nin API responses for instances that are not yet in state `READY`.\n\nSee [the documentation](https://cloud.google.com/spanner/docs/instances#node_count)\nfor more information about nodes.", + "format": "int32", + "type": "integer" + }, + "state": { + "description": "Output only. The current instance state. For\nCreateInstance, the state must be\neither omitted or set to `CREATING`. For\nUpdateInstance, the state must be\neither omitted or set to `READY`.", + "enum": [ + "STATE_UNSPECIFIED", + "CREATING", + "READY" + ], + "enumDescriptions": [ + "Not specified.", + "The instance is still being created. Resources may not be\navailable yet, and operations such as database creation may not\nwork.", + "The instance is fully created and ready to do work such as\ncreating databases." + ], "type": "string" } }, - "id": "CreateDatabaseMetadata" + "type": "object" + }, + "InstanceConfig": { + "description": "A possible configuration for a Cloud Spanner instance. Configurations\ndefine the geographic placement of nodes and their replication.", + "id": "InstanceConfig", + "properties": { + "displayName": { + "description": "The name of this instance configuration as it appears in UIs.", + "type": "string" + }, + "name": { + "description": "A unique identifier for the instance configuration. Values\nare of the form\n`projects/\u003cproject\u003e/instanceConfigs/a-z*`", + "type": "string" + } + }, + "type": "object" + }, + "KeyRange": { + "description": "KeyRange represents a range of rows in a table or index.\n\nA range has a start key and an end key. These keys can be open or\nclosed, indicating if the range includes rows with that key.\n\nKeys are represented by lists, where the ith value in the list\ncorresponds to the ith component of the table or index primary key.\nIndividual values are encoded as described here.\n\nFor example, consider the following table definition:\n\n CREATE TABLE UserEvents (\n UserName STRING(MAX),\n EventDate STRING(10)\n ) PRIMARY KEY(UserName, EventDate);\n\nThe following keys name rows in this table:\n\n \"Bob\", \"2014-09-23\"\n\nSince the `UserEvents` table's `PRIMARY KEY` clause names two\ncolumns, each `UserEvents` key has two elements; the first is the\n`UserName`, and the second is the `EventDate`.\n\nKey ranges with multiple components are interpreted\nlexicographically by component using the table or index key's declared\nsort order. For example, the following range returns all events for\nuser `\"Bob\"` that occurred in the year 2015:\n\n \"start_closed\": [\"Bob\", \"2015-01-01\"]\n \"end_closed\": [\"Bob\", \"2015-12-31\"]\n\nStart and end keys can omit trailing key components. This affects the\ninclusion and exclusion of rows that exactly match the provided key\ncomponents: if the key is closed, then rows that exactly match the\nprovided components are included; if the key is open, then rows\nthat exactly match are not included.\n\nFor example, the following range includes all events for `\"Bob\"` that\noccurred during and after the year 2000:\n\n \"start_closed\": [\"Bob\", \"2000-01-01\"]\n \"end_closed\": [\"Bob\"]\n\nThe next example retrieves all events for `\"Bob\"`:\n\n \"start_closed\": [\"Bob\"]\n \"end_closed\": [\"Bob\"]\n\nTo retrieve events before the year 2000:\n\n \"start_closed\": [\"Bob\"]\n \"end_open\": [\"Bob\", \"2000-01-01\"]\n\nThe following range includes all rows in the table:\n\n \"start_closed\": []\n \"end_closed\": []\n\nThis range returns all users whose `UserName` begins with any\ncharacter from A to C:\n\n \"start_closed\": [\"A\"]\n \"end_open\": [\"D\"]\n\nThis range returns all users whose `UserName` begins with B:\n\n \"start_closed\": [\"B\"]\n \"end_open\": [\"C\"]\n\nKey ranges honor column sort order. For example, suppose a table is\ndefined as follows:\n\n CREATE TABLE DescendingSortedTable {\n Key INT64,\n ...\n ) PRIMARY KEY(Key DESC);\n\nThe following range retrieves all rows with key values between 1\nand 100 inclusive:\n\n \"start_closed\": [\"100\"]\n \"end_closed\": [\"1\"]\n\nNote that 100 is passed as the start, and 1 is passed as the end,\nbecause `Key` is a descending column in the schema.", + "id": "KeyRange", + "properties": { + "endClosed": { + "description": "If the end is closed, then the range includes all rows whose\nfirst `len(end_closed)` key columns exactly match `end_closed`.", + "items": { + "type": "any" + }, + "type": "array" + }, + "endOpen": { + "description": "If the end is open, then the range excludes rows whose first\n`len(end_open)` key columns exactly match `end_open`.", + "items": { + "type": "any" + }, + "type": "array" + }, + "startClosed": { + "description": "If the start is closed, then the range includes all rows whose\nfirst `len(start_closed)` key columns exactly match `start_closed`.", + "items": { + "type": "any" + }, + "type": "array" + }, + "startOpen": { + "description": "If the start is open, then the range excludes rows whose first\n`len(start_open)` key columns exactly match `start_open`.", + "items": { + "type": "any" + }, + "type": "array" + } + }, + "type": "object" + }, + "KeySet": { + "description": "`KeySet` defines a collection of Cloud Spanner keys and/or key ranges. All\nthe keys are expected to be in the same table or index. The keys need\nnot be sorted in any particular way.\n\nIf the same key is specified multiple times in the set (for example\nif two ranges, two keys, or a key and a range overlap), Cloud Spanner\nbehaves as if the key were only specified once.", + "id": "KeySet", + "properties": { + "all": { + "description": "For convenience `all` can be set to `true` to indicate that this\n`KeySet` matches all keys in the table or index. Note that any keys\nspecified in `keys` or `ranges` are only yielded once.", + "type": "boolean" + }, + "keys": { + "description": "A list of specific keys. Entries in `keys` should have exactly as\nmany elements as there are columns in the primary or index key\nwith which this `KeySet` is used. Individual key values are\nencoded as described here.", + "items": { + "items": { + "type": "any" + }, + "type": "array" + }, + "type": "array" + }, + "ranges": { + "description": "A list of key ranges. See KeyRange for more information about\nkey range specifications.", + "items": { + "$ref": "KeyRange" + }, + "type": "array" + } + }, + "type": "object" + }, + "ListDatabasesResponse": { + "description": "The response for ListDatabases.", + "id": "ListDatabasesResponse", + "properties": { + "databases": { + "description": "Databases that matched the request.", + "items": { + "$ref": "Database" + }, + "type": "array" + }, + "nextPageToken": { + "description": "`next_page_token` can be sent in a subsequent\nListDatabases call to fetch more\nof the matching databases.", + "type": "string" + } + }, + "type": "object" + }, + "ListInstanceConfigsResponse": { + "description": "The response for ListInstanceConfigs.", + "id": "ListInstanceConfigsResponse", + "properties": { + "instanceConfigs": { + "description": "The list of requested instance configurations.", + "items": { + "$ref": "InstanceConfig" + }, + "type": "array" + }, + "nextPageToken": { + "description": "`next_page_token` can be sent in a subsequent\nListInstanceConfigs call to\nfetch more of the matching instance configurations.", + "type": "string" + } + }, + "type": "object" + }, + "ListInstancesResponse": { + "description": "The response for ListInstances.", + "id": "ListInstancesResponse", + "properties": { + "instances": { + "description": "The list of requested instances.", + "items": { + "$ref": "Instance" + }, + "type": "array" + }, + "nextPageToken": { + "description": "`next_page_token` can be sent in a subsequent\nListInstances call to fetch more\nof the matching instances.", + "type": "string" + } + }, + "type": "object" + }, + "ListOperationsResponse": { + "description": "The response message for Operations.ListOperations.", + "id": "ListOperationsResponse", + "properties": { + "nextPageToken": { + "description": "The standard List next-page token.", + "type": "string" + }, + "operations": { + "description": "A list of operations that matches the specified filter in the request.", + "items": { + "$ref": "Operation" + }, + "type": "array" + } + }, + "type": "object" }, "ListSessionsResponse": { "description": "The response for ListSessions.", - "type": "object", + "id": "ListSessionsResponse", "properties": { "nextPageToken": { "description": "`next_page_token` can be sent in a subsequent\nListSessions call to fetch more of the matching\nsessions.", @@ -1910,18 +1848,488 @@ }, "sessions": { "description": "The list of requested sessions.", - "type": "array", "items": { "$ref": "Session" - } + }, + "type": "array" } }, - "id": "ListSessionsResponse" + "type": "object" + }, + "Mutation": { + "description": "A modification to one or more Cloud Spanner rows. Mutations can be\napplied to a Cloud Spanner database by sending them in a\nCommit call.", + "id": "Mutation", + "properties": { + "delete": { + "$ref": "Delete", + "description": "Delete rows from a table. Succeeds whether or not the named\nrows were present." + }, + "insert": { + "$ref": "Write", + "description": "Insert new rows in a table. If any of the rows already exist,\nthe write or transaction fails with error `ALREADY_EXISTS`." + }, + "insertOrUpdate": { + "$ref": "Write", + "description": "Like insert, except that if the row already exists, then\nits column values are overwritten with the ones provided. Any\ncolumn values not explicitly written are preserved." + }, + "replace": { + "$ref": "Write", + "description": "Like insert, except that if the row already exists, it is\ndeleted, and the column values provided are inserted\ninstead. Unlike insert_or_update, this means any values not\nexplicitly written become `NULL`." + }, + "update": { + "$ref": "Write", + "description": "Update existing rows in a table. If any of the rows does not\nalready exist, the transaction fails with error `NOT_FOUND`." + } + }, + "type": "object" + }, + "Operation": { + "description": "This resource represents a long-running operation that is the result of a\nnetwork API call.", + "id": "Operation", + "properties": { + "done": { + "description": "If the value is `false`, it means the operation is still in progress.\nIf `true`, the operation is completed, and either `error` or `response` is\navailable.", + "type": "boolean" + }, + "error": { + "$ref": "Status", + "description": "The error result of the operation in case of failure or cancellation." + }, + "metadata": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "description": "Service-specific metadata associated with the operation. It typically\ncontains progress information and common metadata such as create time.\nSome services might not provide such metadata. Any method that returns a\nlong-running operation should document the metadata type, if any.", + "type": "object" + }, + "name": { + "description": "The server-assigned name, which is only unique within the same service that\noriginally returns it. If you use the default HTTP mapping, the\n`name` should have the format of `operations/some/unique/name`.", + "type": "string" + }, + "response": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "description": "The normal response of the operation in case of success. If the original\nmethod returns no data on success, such as `Delete`, the response is\n`google.protobuf.Empty`. If the original method is standard\n`Get`/`Create`/`Update`, the response should be the resource. For other\nmethods, the response should have the type `XxxResponse`, where `Xxx`\nis the original method name. For example, if the original method name\nis `TakeSnapshot()`, the inferred response type is\n`TakeSnapshotResponse`.", + "type": "object" + } + }, + "type": "object" + }, + "PartialResultSet": { + "description": "Partial results from a streaming read or SQL query. Streaming reads and\nSQL queries better tolerate large result sets, large rows, and large\nvalues, but are a little trickier to consume.", + "id": "PartialResultSet", + "properties": { + "chunkedValue": { + "description": "If true, then the final value in values is chunked, and must\nbe combined with more values from subsequent `PartialResultSet`s\nto obtain a complete field value.", + "type": "boolean" + }, + "metadata": { + "$ref": "ResultSetMetadata", + "description": "Metadata about the result set, such as row type information.\nOnly present in the first response." + }, + "resumeToken": { + "description": "Streaming calls might be interrupted for a variety of reasons, such\nas TCP connection loss. If this occurs, the stream of results can\nbe resumed by re-sending the original request and including\n`resume_token`. Note that executing any other transaction in the\nsame session invalidates the token.", + "format": "byte", + "type": "string" + }, + "stats": { + "$ref": "ResultSetStats", + "description": "Query plan and execution statistics for the query that produced this\nstreaming result set. These can be requested by setting\nExecuteSqlRequest.query_mode and are sent\nonly once with the last response in the stream." + }, + "values": { + "description": "A streamed result set consists of a stream of values, which might\nbe split into many `PartialResultSet` messages to accommodate\nlarge rows and/or large values. Every N complete values defines a\nrow, where N is equal to the number of entries in\nmetadata.row_type.fields.\n\nMost values are encoded based on type as described\nhere.\n\nIt is possible that the last value in values is \"chunked\",\nmeaning that the rest of the value is sent in subsequent\n`PartialResultSet`(s). This is denoted by the chunked_value\nfield. Two or more chunked values can be merged to form a\ncomplete value as follows:\n\n * `bool/number/null`: cannot be chunked\n * `string`: concatenate the strings\n * `list`: concatenate the lists. If the last element in a list is a\n `string`, `list`, or `object`, merge it with the first element in\n the next list by applying these rules recursively.\n * `object`: concatenate the (field name, field value) pairs. If a\n field name is duplicated, then apply these rules recursively\n to merge the field values.\n\nSome examples of merging:\n\n # Strings are concatenated.\n \"foo\", \"bar\" =\u003e \"foobar\"\n\n # Lists of non-strings are concatenated.\n [2, 3], [4] =\u003e [2, 3, 4]\n\n # Lists are concatenated, but the last and first elements are merged\n # because they are strings.\n [\"a\", \"b\"], [\"c\", \"d\"] =\u003e [\"a\", \"bc\", \"d\"]\n\n # Lists are concatenated, but the last and first elements are merged\n # because they are lists. Recursively, the last and first elements\n # of the inner lists are merged because they are strings.\n [\"a\", [\"b\", \"c\"]], [[\"d\"], \"e\"] =\u003e [\"a\", [\"b\", \"cd\"], \"e\"]\n\n # Non-overlapping object fields are combined.\n {\"a\": \"1\"}, {\"b\": \"2\"} =\u003e {\"a\": \"1\", \"b\": 2\"}\n\n # Overlapping object fields are merged.\n {\"a\": \"1\"}, {\"a\": \"2\"} =\u003e {\"a\": \"12\"}\n\n # Examples of merging objects containing lists of strings.\n {\"a\": [\"1\"]}, {\"a\": [\"2\"]} =\u003e {\"a\": [\"12\"]}\n\nFor a more complete example, suppose a streaming SQL query is\nyielding a result set whose rows contain a single string\nfield. The following `PartialResultSet`s might be yielded:\n\n {\n \"metadata\": { ... }\n \"values\": [\"Hello\", \"W\"]\n \"chunked_value\": true\n \"resume_token\": \"Af65...\"\n }\n {\n \"values\": [\"orl\"]\n \"chunked_value\": true\n \"resume_token\": \"Bqp2...\"\n }\n {\n \"values\": [\"d\"]\n \"resume_token\": \"Zx1B...\"\n }\n\nThis sequence of `PartialResultSet`s encodes two rows, one\ncontaining the field value `\"Hello\"`, and a second containing the\nfield value `\"World\" = \"W\" + \"orl\" + \"d\"`.", + "items": { + "type": "any" + }, + "type": "array" + } + }, + "type": "object" + }, + "Partition": { + "description": "Information returned for each partition returned in a\nPartitionResponse.", + "id": "Partition", + "properties": { + "partitionToken": { + "description": "This token can be passed to Read, StreamingRead, ExecuteSql, or\nExecuteStreamingSql requests to restrict the results to those identified by\nthis partition token.", + "format": "byte", + "type": "string" + } + }, + "type": "object" + }, + "PartitionOptions": { + "description": "Options for a PartitionQueryRequest and\nPartitionReadRequest.", + "id": "PartitionOptions", + "properties": { + "maxPartitions": { + "description": "**Note:** This hint is currently ignored by PartitionQuery and\nPartitionRead requests.\n\nThe desired maximum number of partitions to return. For example, this may\nbe set to the number of workers available. The default for this option\nis currently 10,000. The maximum value is currently 200,000. This is only\na hint. The actual number of partitions returned may be smaller or larger\nthan this maximum count request.", + "format": "int64", + "type": "string" + }, + "partitionSizeBytes": { + "description": "**Note:** This hint is currently ignored by PartitionQuery and\nPartitionRead requests.\n\nThe desired data size for each partition generated. The default for this\noption is currently 1 GiB. This is only a hint. The actual size of each\npartition may be smaller or larger than this size request.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "PartitionQueryRequest": { + "description": "The request for PartitionQuery", + "id": "PartitionQueryRequest", + "properties": { + "paramTypes": { + "additionalProperties": { + "$ref": "Type" + }, + "description": "It is not always possible for Cloud Spanner to infer the right SQL type\nfrom a JSON value. For example, values of type `BYTES` and values\nof type `STRING` both appear in params as JSON strings.\n\nIn these cases, `param_types` can be used to specify the exact\nSQL type for some or all of the SQL query parameters. See the\ndefinition of Type for more information\nabout SQL types.", + "type": "object" + }, + "params": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "description": "The SQL query string can contain parameter placeholders. A parameter\nplaceholder consists of `'@'` followed by the parameter\nname. Parameter names consist of any combination of letters,\nnumbers, and underscores.\n\nParameters can appear anywhere that a literal value is expected. The same\nparameter name can be used more than once, for example:\n `\"WHERE id \u003e @msg_id AND id \u003c @msg_id + 100\"`\n\nIt is an error to execute an SQL query with unbound parameters.\n\nParameter values are specified using `params`, which is a JSON\nobject whose keys are parameter names, and whose values are the\ncorresponding parameter values.", + "type": "object" + }, + "partitionOptions": { + "$ref": "PartitionOptions", + "description": "Additional options that affect how many partitions are created." + }, + "sql": { + "description": "The query request to generate partitions for. The request will fail if\nthe query is not root partitionable. The query plan of a root\npartitionable query has a single distributed union operator. A distributed\nunion operator conceptually divides one or more tables into multiple\nsplits, remotely evaluates a subquery independently on each split, and\nthen unions all results.", + "type": "string" + }, + "transaction": { + "$ref": "TransactionSelector", + "description": "Read only snapshot transactions are supported, read/write and single use\ntransactions are not." + } + }, + "type": "object" + }, + "PartitionReadRequest": { + "description": "The request for PartitionRead", + "id": "PartitionReadRequest", + "properties": { + "columns": { + "description": "The columns of table to be returned for each row matching\nthis request.", + "items": { + "type": "string" + }, + "type": "array" + }, + "index": { + "description": "If non-empty, the name of an index on table. This index is\nused instead of the table primary key when interpreting key_set\nand sorting result rows. See key_set for further information.", + "type": "string" + }, + "keySet": { + "$ref": "KeySet", + "description": "Required. `key_set` identifies the rows to be yielded. `key_set` names the\nprimary keys of the rows in table to be yielded, unless index\nis present. If index is present, then key_set instead names\nindex keys in index.\n\nIt is not an error for the `key_set` to name rows that do not\nexist in the database. Read yields nothing for nonexistent rows." + }, + "partitionOptions": { + "$ref": "PartitionOptions", + "description": "Additional options that affect how many partitions are created." + }, + "table": { + "description": "Required. The name of the table in the database to be read.", + "type": "string" + }, + "transaction": { + "$ref": "TransactionSelector", + "description": "Read only snapshot transactions are supported, read/write and single use\ntransactions are not." + } + }, + "type": "object" + }, + "PartitionResponse": { + "description": "The response for PartitionQuery\nor PartitionRead", + "id": "PartitionResponse", + "properties": { + "partitions": { + "description": "Partitions created by this request.", + "items": { + "$ref": "Partition" + }, + "type": "array" + }, + "transaction": { + "$ref": "Transaction", + "description": "Transaction created by this request." + } + }, + "type": "object" + }, + "PlanNode": { + "description": "Node information for nodes appearing in a QueryPlan.plan_nodes.", + "id": "PlanNode", + "properties": { + "childLinks": { + "description": "List of child node `index`es and their relationship to this parent.", + "items": { + "$ref": "ChildLink" + }, + "type": "array" + }, + "displayName": { + "description": "The display name for the node.", + "type": "string" + }, + "executionStats": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "description": "The execution statistics associated with the node, contained in a group of\nkey-value pairs. Only present if the plan was returned as a result of a\nprofile query. For example, number of executions, number of rows/time per\nexecution etc.", + "type": "object" + }, + "index": { + "description": "The `PlanNode`'s index in node list.", + "format": "int32", + "type": "integer" + }, + "kind": { + "description": "Used to determine the type of node. May be needed for visualizing\ndifferent kinds of nodes differently. For example, If the node is a\nSCALAR node, it will have a condensed representation\nwhich can be used to directly embed a description of the node in its\nparent.", + "enum": [ + "KIND_UNSPECIFIED", + "RELATIONAL", + "SCALAR" + ], + "enumDescriptions": [ + "Not specified.", + "Denotes a Relational operator node in the expression tree. Relational\noperators represent iterative processing of rows during query execution.\nFor example, a `TableScan` operation that reads rows from a table.", + "Denotes a Scalar node in the expression tree. Scalar nodes represent\nnon-iterable entities in the query plan. For example, constants or\narithmetic operators appearing inside predicate expressions or references\nto column names." + ], + "type": "string" + }, + "metadata": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "description": "Attributes relevant to the node contained in a group of key-value pairs.\nFor example, a Parameter Reference node could have the following\ninformation in its metadata:\n\n {\n \"parameter_reference\": \"param1\",\n \"parameter_type\": \"array\"\n }", + "type": "object" + }, + "shortRepresentation": { + "$ref": "ShortRepresentation", + "description": "Condensed representation for SCALAR nodes." + } + }, + "type": "object" + }, + "Policy": { + "description": "Defines an Identity and Access Management (IAM) policy. It is used to\nspecify access control policies for Cloud Platform resources.\n\n\nA `Policy` consists of a list of `bindings`. A `Binding` binds a list of\n`members` to a `role`, where the members can be user accounts, Google groups,\nGoogle domains, and service accounts. A `role` is a named list of permissions\ndefined by IAM.\n\n**Example**\n\n {\n \"bindings\": [\n {\n \"role\": \"roles/owner\",\n \"members\": [\n \"user:mike@example.com\",\n \"group:admins@example.com\",\n \"domain:google.com\",\n \"serviceAccount:my-other-app@appspot.gserviceaccount.com\",\n ]\n },\n {\n \"role\": \"roles/viewer\",\n \"members\": [\"user:sean@example.com\"]\n }\n ]\n }\n\nFor a description of IAM and its features, see the\n[IAM developer's guide](https://cloud.google.com/iam/docs).", + "id": "Policy", + "properties": { + "bindings": { + "description": "Associates a list of `members` to a `role`.\n`bindings` with no members will result in an error.", + "items": { + "$ref": "Binding" + }, + "type": "array" + }, + "etag": { + "description": "`etag` is used for optimistic concurrency control as a way to help\nprevent simultaneous updates of a policy from overwriting each other.\nIt is strongly suggested that systems make use of the `etag` in the\nread-modify-write cycle to perform policy updates in order to avoid race\nconditions: An `etag` is returned in the response to `getIamPolicy`, and\nsystems are expected to put that etag in the request to `setIamPolicy` to\nensure that their change will be applied to the same version of the policy.\n\nIf no `etag` is provided in the call to `setIamPolicy`, then the existing\npolicy is overwritten blindly.", + "format": "byte", + "type": "string" + }, + "version": { + "description": "Deprecated.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "QueryPlan": { + "description": "Contains an ordered list of nodes appearing in the query plan.", + "id": "QueryPlan", + "properties": { + "planNodes": { + "description": "The nodes in the query plan. Plan nodes are returned in pre-order starting\nwith the plan root. Each PlanNode's `id` corresponds to its index in\n`plan_nodes`.", + "items": { + "$ref": "PlanNode" + }, + "type": "array" + } + }, + "type": "object" + }, + "ReadOnly": { + "description": "Message type to initiate a read-only transaction.", + "id": "ReadOnly", + "properties": { + "exactStaleness": { + "description": "Executes all reads at a timestamp that is `exact_staleness`\nold. The timestamp is chosen soon after the read is started.\n\nGuarantees that all writes that have committed more than the\nspecified number of seconds ago are visible. Because Cloud Spanner\nchooses the exact timestamp, this mode works even if the client's\nlocal clock is substantially skewed from Cloud Spanner commit\ntimestamps.\n\nUseful for reading at nearby replicas without the distributed\ntimestamp negotiation overhead of `max_staleness`.", + "format": "google-duration", + "type": "string" + }, + "maxStaleness": { + "description": "Read data at a timestamp \u003e= `NOW - max_staleness`\nseconds. Guarantees that all writes that have committed more\nthan the specified number of seconds ago are visible. Because\nCloud Spanner chooses the exact timestamp, this mode works even if\nthe client's local clock is substantially skewed from Cloud Spanner\ncommit timestamps.\n\nUseful for reading the freshest data available at a nearby\nreplica, while bounding the possible staleness if the local\nreplica has fallen behind.\n\nNote that this option can only be used in single-use\ntransactions.", + "format": "google-duration", + "type": "string" + }, + "minReadTimestamp": { + "description": "Executes all reads at a timestamp \u003e= `min_read_timestamp`.\n\nThis is useful for requesting fresher data than some previous\nread, or data that is fresh enough to observe the effects of some\npreviously committed transaction whose timestamp is known.\n\nNote that this option can only be used in single-use transactions.\n\nA timestamp in RFC3339 UTC \\\"Zulu\\\" format, accurate to nanoseconds.\nExample: `\"2014-10-02T15:01:23.045123456Z\"`.", + "format": "google-datetime", + "type": "string" + }, + "readTimestamp": { + "description": "Executes all reads at the given timestamp. Unlike other modes,\nreads at a specific timestamp are repeatable; the same read at\nthe same timestamp always returns the same data. If the\ntimestamp is in the future, the read will block until the\nspecified timestamp, modulo the read's deadline.\n\nUseful for large scale consistent reads such as mapreduces, or\nfor coordinating many reads against a consistent snapshot of the\ndata.\n\nA timestamp in RFC3339 UTC \\\"Zulu\\\" format, accurate to nanoseconds.\nExample: `\"2014-10-02T15:01:23.045123456Z\"`.", + "format": "google-datetime", + "type": "string" + }, + "returnReadTimestamp": { + "description": "If true, the Cloud Spanner-selected read timestamp is included in\nthe Transaction message that describes the transaction.", + "type": "boolean" + }, + "strong": { + "description": "Read at a timestamp where all previously committed transactions\nare visible.", + "type": "boolean" + } + }, + "type": "object" + }, + "ReadRequest": { + "description": "The request for Read and\nStreamingRead.", + "id": "ReadRequest", + "properties": { + "columns": { + "description": "The columns of table to be returned for each row matching\nthis request.", + "items": { + "type": "string" + }, + "type": "array" + }, + "index": { + "description": "If non-empty, the name of an index on table. This index is\nused instead of the table primary key when interpreting key_set\nand sorting result rows. See key_set for further information.", + "type": "string" + }, + "keySet": { + "$ref": "KeySet", + "description": "Required. `key_set` identifies the rows to be yielded. `key_set` names the\nprimary keys of the rows in table to be yielded, unless index\nis present. If index is present, then key_set instead names\nindex keys in index.\n\nIf the partition_token field is empty, rows are yielded\nin table primary key order (if index is empty) or index key order\n(if index is non-empty). If the partition_token field is not\nempty, rows will be yielded in an unspecified order.\n\nIt is not an error for the `key_set` to name rows that do not\nexist in the database. Read yields nothing for nonexistent rows." + }, + "limit": { + "description": "If greater than zero, only the first `limit` rows are yielded. If `limit`\nis zero, the default is no limit. A limit cannot be specified if\n`partition_token` is set.", + "format": "int64", + "type": "string" + }, + "partitionToken": { + "description": "If present, results will be restricted to the specified partition\npreviously created using PartitionRead(). There must be an exact\nmatch for the values of fields common to this message and the\nPartitionReadRequest message used to create this partition_token.", + "format": "byte", + "type": "string" + }, + "resumeToken": { + "description": "If this request is resuming a previously interrupted read,\n`resume_token` should be copied from the last\nPartialResultSet yielded before the interruption. Doing this\nenables the new read to resume where the last read left off. The\nrest of the request parameters must exactly match the request\nthat yielded this token.", + "format": "byte", + "type": "string" + }, + "table": { + "description": "Required. The name of the table in the database to be read.", + "type": "string" + }, + "transaction": { + "$ref": "TransactionSelector", + "description": "The transaction to use. If none is provided, the default is a\ntemporary read-only transaction with strong concurrency." + } + }, + "type": "object" + }, + "ReadWrite": { + "description": "Message type to initiate a read-write transaction. Currently this\ntransaction type has no options.", + "id": "ReadWrite", + "properties": {}, + "type": "object" + }, + "ResultSet": { + "description": "Results from Read or\nExecuteSql.", + "id": "ResultSet", + "properties": { + "metadata": { + "$ref": "ResultSetMetadata", + "description": "Metadata about the result set, such as row type information." + }, + "rows": { + "description": "Each element in `rows` is a row whose format is defined by\nmetadata.row_type. The ith element\nin each row matches the ith field in\nmetadata.row_type. Elements are\nencoded based on type as described\nhere.", + "items": { + "items": { + "type": "any" + }, + "type": "array" + }, + "type": "array" + }, + "stats": { + "$ref": "ResultSetStats", + "description": "Query plan and execution statistics for the query that produced this\nresult set. These can be requested by setting\nExecuteSqlRequest.query_mode." + } + }, + "type": "object" + }, + "ResultSetMetadata": { + "description": "Metadata about a ResultSet or PartialResultSet.", + "id": "ResultSetMetadata", + "properties": { + "rowType": { + "$ref": "StructType", + "description": "Indicates the field names and types for the rows in the result\nset. For example, a SQL query like `\"SELECT UserId, UserName FROM\nUsers\"` could return a `row_type` value like:\n\n \"fields\": [\n { \"name\": \"UserId\", \"type\": { \"code\": \"INT64\" } },\n { \"name\": \"UserName\", \"type\": { \"code\": \"STRING\" } },\n ]" + }, + "transaction": { + "$ref": "Transaction", + "description": "If the read or SQL query began a transaction as a side-effect, the\ninformation about the new transaction is yielded here." + } + }, + "type": "object" + }, + "ResultSetStats": { + "description": "Additional statistics about a ResultSet or PartialResultSet.", + "id": "ResultSetStats", + "properties": { + "queryPlan": { + "$ref": "QueryPlan", + "description": "QueryPlan for the query associated with this result." + }, + "queryStats": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "description": "Aggregated statistics from the execution of the query. Only present when\nthe query is profiled. For example, a query could return the statistics as\nfollows:\n\n {\n \"rows_returned\": \"3\",\n \"elapsed_time\": \"1.22 secs\",\n \"cpu_time\": \"1.19 secs\"\n }", + "type": "object" + } + }, + "type": "object" + }, + "RollbackRequest": { + "description": "The request for Rollback.", + "id": "RollbackRequest", + "properties": { + "transactionId": { + "description": "Required. The transaction to roll back.", + "format": "byte", + "type": "string" + } + }, + "type": "object" }, "Session": { "description": "A session in the Cloud Spanner API.", - "type": "object", + "id": "Session", "properties": { + "approximateLastUseTime": { + "description": "Output only. The approximate timestamp when the session is last used. It is\ntypically earlier than the actual last use time.", + "format": "google-datetime", + "type": "string" + }, + "createTime": { + "description": "Output only. The timestamp when the session is created.", + "format": "google-datetime", + "type": "string" + }, "labels": { "additionalProperties": { "type": "string" @@ -1929,79 +2337,27 @@ "description": "The labels for the session.\n\n * Label keys must be between 1 and 63 characters long and must conform to\n the following regular expression: `[a-z]([-a-z0-9]*[a-z0-9])?`.\n * Label values must be between 0 and 63 characters long and must conform\n to the regular expression `([a-z]([-a-z0-9]*[a-z0-9])?)?`.\n * No more than 64 labels can be associated with a given session.\n\nSee https://goo.gl/xmQnxf for more information on and examples of labels.", "type": "object" }, - "createTime": { - "description": "Output only. The timestamp when the session is created.", - "format": "google-datetime", - "type": "string" - }, "name": { "description": "The name of the session. This is always system-assigned; values provided\nwhen creating a session are ignored.", "type": "string" - }, - "approximateLastUseTime": { - "description": "Output only. The approximate timestamp when the session is last used. It is\ntypically earlier than the actual last use time.", - "format": "google-datetime", - "type": "string" } }, - "id": "Session" + "type": "object" }, - "ListInstancesResponse": { - "description": "The response for ListInstances.", - "type": "object", + "SetIamPolicyRequest": { + "description": "Request message for `SetIamPolicy` method.", + "id": "SetIamPolicyRequest", "properties": { - "nextPageToken": { - "description": "`next_page_token` can be sent in a subsequent\nListInstances call to fetch more\nof the matching instances.", - "type": "string" - }, - "instances": { - "description": "The list of requested instances.", - "type": "array", - "items": { - "$ref": "Instance" - } + "policy": { + "$ref": "Policy", + "description": "REQUIRED: The complete policy to be applied to the `resource`. The size of\nthe policy is limited to a few 10s of KB. An empty policy is a\nvalid policy but certain Cloud Platform services (such as Projects)\nmight reject them." } }, - "id": "ListInstancesResponse" - }, - "KeyRange": { - "description": "KeyRange represents a range of rows in a table or index.\n\nA range has a start key and an end key. These keys can be open or\nclosed, indicating if the range includes rows with that key.\n\nKeys are represented by lists, where the ith value in the list\ncorresponds to the ith component of the table or index primary key.\nIndividual values are encoded as described here.\n\nFor example, consider the following table definition:\n\n CREATE TABLE UserEvents (\n UserName STRING(MAX),\n EventDate STRING(10)\n ) PRIMARY KEY(UserName, EventDate);\n\nThe following keys name rows in this table:\n\n \"Bob\", \"2014-09-23\"\n\nSince the `UserEvents` table's `PRIMARY KEY` clause names two\ncolumns, each `UserEvents` key has two elements; the first is the\n`UserName`, and the second is the `EventDate`.\n\nKey ranges with multiple components are interpreted\nlexicographically by component using the table or index key's declared\nsort order. For example, the following range returns all events for\nuser `\"Bob\"` that occurred in the year 2015:\n\n \"start_closed\": [\"Bob\", \"2015-01-01\"]\n \"end_closed\": [\"Bob\", \"2015-12-31\"]\n\nStart and end keys can omit trailing key components. This affects the\ninclusion and exclusion of rows that exactly match the provided key\ncomponents: if the key is closed, then rows that exactly match the\nprovided components are included; if the key is open, then rows\nthat exactly match are not included.\n\nFor example, the following range includes all events for `\"Bob\"` that\noccurred during and after the year 2000:\n\n \"start_closed\": [\"Bob\", \"2000-01-01\"]\n \"end_closed\": [\"Bob\"]\n\nThe next example retrieves all events for `\"Bob\"`:\n\n \"start_closed\": [\"Bob\"]\n \"end_closed\": [\"Bob\"]\n\nTo retrieve events before the year 2000:\n\n \"start_closed\": [\"Bob\"]\n \"end_open\": [\"Bob\", \"2000-01-01\"]\n\nThe following range includes all rows in the table:\n\n \"start_closed\": []\n \"end_closed\": []\n\nThis range returns all users whose `UserName` begins with any\ncharacter from A to C:\n\n \"start_closed\": [\"A\"]\n \"end_open\": [\"D\"]\n\nThis range returns all users whose `UserName` begins with B:\n\n \"start_closed\": [\"B\"]\n \"end_open\": [\"C\"]\n\nKey ranges honor column sort order. For example, suppose a table is\ndefined as follows:\n\n CREATE TABLE DescendingSortedTable {\n Key INT64,\n ...\n ) PRIMARY KEY(Key DESC);\n\nThe following range retrieves all rows with key values between 1\nand 100 inclusive:\n\n \"start_closed\": [\"100\"]\n \"end_closed\": [\"1\"]\n\nNote that 100 is passed as the start, and 1 is passed as the end,\nbecause `Key` is a descending column in the schema.", - "type": "object", - "properties": { - "startClosed": { - "description": "If the start is closed, then the range includes all rows whose\nfirst `len(start_closed)` key columns exactly match `start_closed`.", - "type": "array", - "items": { - "type": "any" - } - }, - "startOpen": { - "description": "If the start is open, then the range excludes rows whose first\n`len(start_open)` key columns exactly match `start_open`.", - "type": "array", - "items": { - "type": "any" - } - }, - "endOpen": { - "description": "If the end is open, then the range excludes rows whose first\n`len(end_open)` key columns exactly match `end_open`.", - "type": "array", - "items": { - "type": "any" - } - }, - "endClosed": { - "description": "If the end is closed, then the range includes all rows whose\nfirst `len(end_closed)` key columns exactly match `end_closed`.", - "type": "array", - "items": { - "type": "any" - } - } - }, - "id": "KeyRange" + "type": "object" }, "ShortRepresentation": { "description": "Condensed representation of a node and its subtree. Only present for\n`SCALAR` PlanNode(s).", - "type": "object", + "id": "ShortRepresentation", "properties": { "description": { "description": "A string representation of the expression subtree rooted at this node.", @@ -2016,394 +2372,201 @@ "type": "object" } }, - "id": "ShortRepresentation" - }, - "InstanceConfig": { - "properties": { - "name": { - "description": "A unique identifier for the instance configuration. Values\nare of the form\n`projects/\u003cproject\u003e/instanceConfigs/a-z*`", - "type": "string" - }, - "displayName": { - "description": "The name of this instance configuration as it appears in UIs.", - "type": "string" - } - }, - "id": "InstanceConfig", - "description": "A possible configuration for a Cloud Spanner instance. Configurations\ndefine the geographic placement of nodes and their replication.", "type": "object" }, - "UpdateInstanceRequest": { - "properties": { - "instance": { - "$ref": "Instance", - "description": "Required. The instance to update, which must always include the instance\nname. Otherwise, only fields mentioned in [][google.spanner.admin.instance.v1.UpdateInstanceRequest.field_mask] need be included." - }, - "fieldMask": { - "description": "Required. A mask specifying which fields in [][google.spanner.admin.instance.v1.UpdateInstanceRequest.instance] should be updated.\nThe field mask must always be specified; this prevents any future fields in\n[][google.spanner.admin.instance.v1.Instance] from being erased accidentally by clients that do not know\nabout them.", - "format": "google-fieldmask", - "type": "string" - } - }, - "id": "UpdateInstanceRequest", - "description": "The request for UpdateInstance.", - "type": "object" - }, - "Empty": { - "properties": {}, - "id": "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 `{}`.", - "type": "object" - }, - "TransactionOptions": { - "description": "# Transactions\n\n\nEach session can have at most one active transaction at a time. After the\nactive transaction is completed, the session can immediately be\nre-used for the next transaction. It is not necessary to create a\nnew session for each transaction.\n\n# Transaction Modes\n\nCloud Spanner supports two transaction modes:\n\n 1. Locking read-write. This type of transaction is the only way\n to write data into Cloud Spanner. These transactions rely on\n pessimistic locking and, if necessary, two-phase commit.\n Locking read-write transactions may abort, requiring the\n application to retry.\n\n 2. Snapshot read-only. This transaction type provides guaranteed\n consistency across several reads, but does not allow\n writes. Snapshot read-only transactions can be configured to\n read at timestamps in the past. Snapshot read-only\n transactions do not need to be committed.\n\nFor transactions that only read, snapshot read-only transactions\nprovide simpler semantics and are almost always faster. In\nparticular, read-only transactions do not take locks, so they do\nnot conflict with read-write transactions. As a consequence of not\ntaking locks, they also do not abort, so retry loops are not needed.\n\nTransactions may only read/write data in a single database. They\nmay, however, read/write data in different tables within that\ndatabase.\n\n## Locking Read-Write Transactions\n\nLocking transactions may be used to atomically read-modify-write\ndata anywhere in a database. This type of transaction is externally\nconsistent.\n\nClients should attempt to minimize the amount of time a transaction\nis active. Faster transactions commit with higher probability\nand cause less contention. Cloud Spanner attempts to keep read locks\nactive as long as the transaction continues to do reads, and the\ntransaction has not been terminated by\nCommit or\nRollback. Long periods of\ninactivity at the client may cause Cloud Spanner to release a\ntransaction's locks and abort it.\n\nReads performed within a transaction acquire locks on the data\nbeing read. Writes can only be done at commit time, after all reads\nhave been completed.\nConceptually, a read-write transaction consists of zero or more\nreads or SQL queries followed by\nCommit. At any time before\nCommit, the client can send a\nRollback request to abort the\ntransaction.\n\n### Semantics\n\nCloud Spanner can commit the transaction if all read locks it acquired\nare still valid at commit time, and it is able to acquire write\nlocks for all writes. Cloud Spanner can abort the transaction for any\nreason. If a commit attempt returns `ABORTED`, Cloud Spanner guarantees\nthat the transaction has not modified any user data in Cloud Spanner.\n\nUnless the transaction commits, Cloud Spanner makes no guarantees about\nhow long the transaction's locks were held for. It is an error to\nuse Cloud Spanner locks for any sort of mutual exclusion other than\nbetween Cloud Spanner transactions themselves.\n\n### Retrying Aborted Transactions\n\nWhen a transaction aborts, the application can choose to retry the\nwhole transaction again. To maximize the chances of successfully\ncommitting the retry, the client should execute the retry in the\nsame session as the original attempt. The original session's lock\npriority increases with each consecutive abort, meaning that each\nattempt has a slightly better chance of success than the previous.\n\nUnder some circumstances (e.g., many transactions attempting to\nmodify the same row(s)), a transaction can abort many times in a\nshort period before successfully committing. Thus, it is not a good\nidea to cap the number of retries a transaction can attempt;\ninstead, it is better to limit the total amount of wall time spent\nretrying.\n\n### Idle Transactions\n\nA transaction is considered idle if it has no outstanding reads or\nSQL queries and has not started a read or SQL query within the last 10\nseconds. Idle transactions can be aborted by Cloud Spanner so that they\ndon't hold on to locks indefinitely. In that case, the commit will\nfail with error `ABORTED`.\n\nIf this behavior is undesirable, periodically executing a simple\nSQL query in the transaction (e.g., `SELECT 1`) prevents the\ntransaction from becoming idle.\n\n## Snapshot Read-Only Transactions\n\nSnapshot read-only transactions provides a simpler method than\nlocking read-write transactions for doing several consistent\nreads. However, this type of transaction does not support writes.\n\nSnapshot transactions do not take locks. Instead, they work by\nchoosing a Cloud Spanner timestamp, then executing all reads at that\ntimestamp. Since they do not acquire locks, they do not block\nconcurrent read-write transactions.\n\nUnlike locking read-write transactions, snapshot read-only\ntransactions never abort. They can fail if the chosen read\ntimestamp is garbage collected; however, the default garbage\ncollection policy is generous enough that most applications do not\nneed to worry about this in practice.\n\nSnapshot read-only transactions do not need to call\nCommit or\nRollback (and in fact are not\npermitted to do so).\n\nTo execute a snapshot transaction, the client specifies a timestamp\nbound, which tells Cloud Spanner how to choose a read timestamp.\n\nThe types of timestamp bound are:\n\n - Strong (the default).\n - Bounded staleness.\n - Exact staleness.\n\nIf the Cloud Spanner database to be read is geographically distributed,\nstale read-only transactions can execute more quickly than strong\nor read-write transaction, because they are able to execute far\nfrom the leader replica.\n\nEach type of timestamp bound is discussed in detail below.\n\n### Strong\n\nStrong reads are guaranteed to see the effects of all transactions\nthat have committed before the start of the read. Furthermore, all\nrows yielded by a single read are consistent with each other -- if\nany part of the read observes a transaction, all parts of the read\nsee the transaction.\n\nStrong reads are not repeatable: two consecutive strong read-only\ntransactions might return inconsistent results if there are\nconcurrent writes. If consistency across reads is required, the\nreads should be executed within a transaction or at an exact read\ntimestamp.\n\nSee TransactionOptions.ReadOnly.strong.\n\n### Exact Staleness\n\nThese timestamp bounds execute reads at a user-specified\ntimestamp. Reads at a timestamp are guaranteed to see a consistent\nprefix of the global transaction history: they observe\nmodifications done by all transactions with a commit timestamp \u003c=\nthe read timestamp, and observe none of the modifications done by\ntransactions with a larger commit timestamp. They will block until\nall conflicting transactions that may be assigned commit timestamps\n\u003c= the read timestamp have finished.\n\nThe timestamp can either be expressed as an absolute Cloud Spanner commit\ntimestamp or a staleness relative to the current time.\n\nThese modes do not require a \"negotiation phase\" to pick a\ntimestamp. As a result, they execute slightly faster than the\nequivalent boundedly stale concurrency modes. On the other hand,\nboundedly stale reads usually return fresher results.\n\nSee TransactionOptions.ReadOnly.read_timestamp and\nTransactionOptions.ReadOnly.exact_staleness.\n\n### Bounded Staleness\n\nBounded staleness modes allow Cloud Spanner to pick the read timestamp,\nsubject to a user-provided staleness bound. Cloud Spanner chooses the\nnewest timestamp within the staleness bound that allows execution\nof the reads at the closest available replica without blocking.\n\nAll rows yielded are consistent with each other -- if any part of\nthe read observes a transaction, all parts of the read see the\ntransaction. Boundedly stale reads are not repeatable: two stale\nreads, even if they use the same staleness bound, can execute at\ndifferent timestamps and thus return inconsistent results.\n\nBoundedly stale reads execute in two phases: the first phase\nnegotiates a timestamp among all replicas needed to serve the\nread. In the second phase, reads are executed at the negotiated\ntimestamp.\n\nAs a result of the two phase execution, bounded staleness reads are\nusually a little slower than comparable exact staleness\nreads. However, they are typically able to return fresher\nresults, and are more likely to execute at the closest replica.\n\nBecause the timestamp negotiation requires up-front knowledge of\nwhich rows will be read, it can only be used with single-use\nread-only transactions.\n\nSee TransactionOptions.ReadOnly.max_staleness and\nTransactionOptions.ReadOnly.min_read_timestamp.\n\n### Old Read Timestamps and Garbage Collection\n\nCloud Spanner continuously garbage collects deleted and overwritten data\nin the background to reclaim storage space. This process is known\nas \"version GC\". By default, version GC reclaims versions after they\nare one hour old. Because of this, Cloud Spanner cannot perform reads\nat read timestamps more than one hour in the past. This\nrestriction also applies to in-progress reads and/or SQL queries whose\ntimestamp become too old while executing. Reads and SQL queries with\ntoo-old read timestamps fail with the error `FAILED_PRECONDITION`.", - "type": "object", - "properties": { - "readWrite": { - "$ref": "ReadWrite", - "description": "Transaction may write.\n\nAuthorization to begin a read-write transaction requires\n`spanner.databases.beginOrRollbackReadWriteTransaction` permission\non the `session` resource." - }, - "readOnly": { - "description": "Transaction will not write.\n\nAuthorization to begin a read-only transaction requires\n`spanner.databases.beginReadOnlyTransaction` permission\non the `session` resource.", - "$ref": "ReadOnly" - } - }, - "id": "TransactionOptions" - }, - "CreateDatabaseRequest": { - "description": "The request for CreateDatabase.", - "type": "object", - "properties": { - "extraStatements": { - "description": "An optional list of DDL statements to run inside the newly created\ndatabase. Statements can create tables, indexes, etc. These\nstatements execute atomically with the creation of the database:\nif there is an error in any statement, the database is not created.", - "type": "array", - "items": { - "type": "string" - } - }, - "createStatement": { - "description": "Required. A `CREATE DATABASE` statement, which specifies the ID of the\nnew database. The database ID must conform to the regular expression\n`a-z*[a-z0-9]` and be between 2 and 30 characters in length.\nIf the database ID is a reserved word or if it contains a hyphen, the\ndatabase ID must be enclosed in backticks (`` ` ``).", - "type": "string" - } - }, - "id": "CreateDatabaseRequest" - }, - "CreateInstanceRequest": { - "properties": { - "instanceId": { - "description": "Required. The ID of the instance to create. Valid identifiers are of the\nform `a-z*[a-z0-9]` and must be between 6 and 30 characters in\nlength.", - "type": "string" - }, - "instance": { - "description": "Required. The instance to create. The name may be omitted, but if\nspecified must be `\u003cparent\u003e/instances/\u003cinstance_id\u003e`.", - "$ref": "Instance" - } - }, - "id": "CreateInstanceRequest", - "description": "The request for CreateInstance.", - "type": "object" - }, - "ReadOnly": { - "properties": { - "strong": { - "description": "Read at a timestamp where all previously committed transactions\nare visible.", - "type": "boolean" - }, - "minReadTimestamp": { - "description": "Executes all reads at a timestamp \u003e= `min_read_timestamp`.\n\nThis is useful for requesting fresher data than some previous\nread, or data that is fresh enough to observe the effects of some\npreviously committed transaction whose timestamp is known.\n\nNote that this option can only be used in single-use transactions.\n\nA timestamp in RFC3339 UTC \\\"Zulu\\\" format, accurate to nanoseconds.\nExample: `\"2014-10-02T15:01:23.045123456Z\"`.", - "format": "google-datetime", - "type": "string" - }, - "maxStaleness": { - "description": "Read data at a timestamp \u003e= `NOW - max_staleness`\nseconds. Guarantees that all writes that have committed more\nthan the specified number of seconds ago are visible. Because\nCloud Spanner chooses the exact timestamp, this mode works even if\nthe client's local clock is substantially skewed from Cloud Spanner\ncommit timestamps.\n\nUseful for reading the freshest data available at a nearby\nreplica, while bounding the possible staleness if the local\nreplica has fallen behind.\n\nNote that this option can only be used in single-use\ntransactions.", - "format": "google-duration", - "type": "string" - }, - "readTimestamp": { - "description": "Executes all reads at the given timestamp. Unlike other modes,\nreads at a specific timestamp are repeatable; the same read at\nthe same timestamp always returns the same data. If the\ntimestamp is in the future, the read will block until the\nspecified timestamp, modulo the read's deadline.\n\nUseful for large scale consistent reads such as mapreduces, or\nfor coordinating many reads against a consistent snapshot of the\ndata.\n\nA timestamp in RFC3339 UTC \\\"Zulu\\\" format, accurate to nanoseconds.\nExample: `\"2014-10-02T15:01:23.045123456Z\"`.", - "format": "google-datetime", - "type": "string" - }, - "returnReadTimestamp": { - "description": "If true, the Cloud Spanner-selected read timestamp is included in\nthe Transaction message that describes the transaction.", - "type": "boolean" - }, - "exactStaleness": { - "description": "Executes all reads at a timestamp that is `exact_staleness`\nold. The timestamp is chosen soon after the read is started.\n\nGuarantees that all writes that have committed more than the\nspecified number of seconds ago are visible. Because Cloud Spanner\nchooses the exact timestamp, this mode works even if the client's\nlocal clock is substantially skewed from Cloud Spanner commit\ntimestamps.\n\nUseful for reading at nearby replicas without the distributed\ntimestamp negotiation overhead of `max_staleness`.", - "format": "google-duration", - "type": "string" - } - }, - "id": "ReadOnly", - "description": "Message type to initiate a read-only transaction.", - "type": "object" - }, - "ExecuteSqlRequest": { - "description": "The request for ExecuteSql and\nExecuteStreamingSql.", - "type": "object", - "properties": { - "queryMode": { - "enumDescriptions": [ - "The default mode where only the query result, without any information\nabout the query plan is returned.", - "This mode returns only the query plan, without any result rows or\nexecution statistics information.", - "This mode returns both the query plan and the execution statistics along\nwith the result rows." - ], - "enum": [ - "NORMAL", - "PLAN", - "PROFILE" - ], - "description": "Used to control the amount of debugging information returned in\nResultSetStats.", - "type": "string" - }, - "transaction": { - "description": "The transaction to use. If none is provided, the default is a\ntemporary read-only transaction with strong concurrency.", - "$ref": "TransactionSelector" - }, - "resumeToken": { - "description": "If this request is resuming a previously interrupted SQL query\nexecution, `resume_token` should be copied from the last\nPartialResultSet yielded before the interruption. Doing this\nenables the new SQL query execution to resume where the last one left\noff. The rest of the request parameters must exactly match the\nrequest that yielded this token.", - "format": "byte", - "type": "string" - }, - "paramTypes": { - "description": "It is not always possible for Cloud Spanner to infer the right SQL type\nfrom a JSON value. For example, values of type `BYTES` and values\nof type `STRING` both appear in params as JSON strings.\n\nIn these cases, `param_types` can be used to specify the exact\nSQL type for some or all of the SQL query parameters. See the\ndefinition of Type for more information\nabout SQL types.", - "type": "object", - "additionalProperties": { - "$ref": "Type" - } - }, - "sql": { - "description": "Required. The SQL query string.", - "type": "string" - }, - "params": { - "additionalProperties": { - "description": "Properties of the object.", - "type": "any" - }, - "description": "The SQL query string can contain parameter placeholders. A parameter\nplaceholder consists of `'@'` followed by the parameter\nname. Parameter names consist of any combination of letters,\nnumbers, and underscores.\n\nParameters can appear anywhere that a literal value is expected. The same\nparameter name can be used more than once, for example:\n `\"WHERE id \u003e @msg_id AND id \u003c @msg_id + 100\"`\n\nIt is an error to execute an SQL query with unbound parameters.\n\nParameter values are specified using `params`, which is a JSON\nobject whose keys are parameter names, and whose values are the\ncorresponding parameter values.", - "type": "object" - } - }, - "id": "ExecuteSqlRequest" - }, - "Policy": { - "description": "Defines an Identity and Access Management (IAM) policy. It is used to\nspecify access control policies for Cloud Platform resources.\n\n\nA `Policy` consists of a list of `bindings`. A `Binding` binds a list of\n`members` to a `role`, where the members can be user accounts, Google groups,\nGoogle domains, and service accounts. A `role` is a named list of permissions\ndefined by IAM.\n\n**Example**\n\n {\n \"bindings\": [\n {\n \"role\": \"roles/owner\",\n \"members\": [\n \"user:mike@example.com\",\n \"group:admins@example.com\",\n \"domain:google.com\",\n \"serviceAccount:my-other-app@appspot.gserviceaccount.com\",\n ]\n },\n {\n \"role\": \"roles/viewer\",\n \"members\": [\"user:sean@example.com\"]\n }\n ]\n }\n\nFor a description of IAM and its features, see the\n[IAM developer's guide](https://cloud.google.com/iam).", - "type": "object", - "properties": { - "bindings": { - "description": "Associates a list of `members` to a `role`.\n`bindings` with no members will result in an error.", - "type": "array", - "items": { - "$ref": "Binding" - } - }, - "etag": { - "description": "`etag` is used for optimistic concurrency control as a way to help\nprevent simultaneous updates of a policy from overwriting each other.\nIt is strongly suggested that systems make use of the `etag` in the\nread-modify-write cycle to perform policy updates in order to avoid race\nconditions: An `etag` is returned in the response to `getIamPolicy`, and\nsystems are expected to put that etag in the request to `setIamPolicy` to\nensure that their change will be applied to the same version of the policy.\n\nIf no `etag` is provided in the call to `setIamPolicy`, then the existing\npolicy is overwritten blindly.", - "format": "byte", - "type": "string" - }, - "version": { - "description": "Version of the `Policy`. The default version is 0.", - "format": "int32", - "type": "integer" - } - }, - "id": "Policy" - }, - "ReadRequest": { - "description": "The request for Read and\nStreamingRead.", - "type": "object", - "properties": { - "transaction": { - "$ref": "TransactionSelector", - "description": "The transaction to use. If none is provided, the default is a\ntemporary read-only transaction with strong concurrency." - }, - "resumeToken": { - "description": "If this request is resuming a previously interrupted read,\n`resume_token` should be copied from the last\nPartialResultSet yielded before the interruption. Doing this\nenables the new read to resume where the last read left off. The\nrest of the request parameters must exactly match the request\nthat yielded this token.", - "format": "byte", - "type": "string" - }, - "table": { - "description": "Required. The name of the table in the database to be read.", - "type": "string" - }, - "limit": { - "description": "If greater than zero, only the first `limit` rows are yielded. If `limit`\nis zero, the default is no limit.", - "format": "int64", - "type": "string" - }, - "index": { - "description": "If non-empty, the name of an index on table. This index is\nused instead of the table primary key when interpreting key_set\nand sorting result rows. See key_set for further information.", - "type": "string" - }, - "keySet": { - "$ref": "KeySet", - "description": "Required. `key_set` identifies the rows to be yielded. `key_set` names the\nprimary keys of the rows in table to be yielded, unless index\nis present. If index is present, then key_set instead names\nindex keys in index.\n\nRows are yielded in table primary key order (if index is empty)\nor index key order (if index is non-empty).\n\nIt is not an error for the `key_set` to name rows that do not\nexist in the database. Read yields nothing for nonexistent rows." - }, - "columns": { - "description": "The columns of table to be returned for each row matching\nthis request.", - "type": "array", - "items": { - "type": "string" - } - } - }, - "id": "ReadRequest" - }, - "Write": { - "description": "Arguments to insert, update, insert_or_update, and\nreplace operations.", - "type": "object", - "properties": { - "table": { - "description": "Required. The table whose rows will be written.", - "type": "string" - }, - "columns": { - "description": "The names of the columns in table to be written.\n\nThe list of columns must contain enough columns to allow\nCloud Spanner to derive values for all primary key columns in the\nrow(s) to be modified.", - "type": "array", - "items": { - "type": "string" - } - }, - "values": { - "description": "The values to be written. `values` can contain more than one\nlist of values. If it does, then multiple rows are written, one\nfor each entry in `values`. Each list in `values` must have\nexactly as many entries as there are entries in columns\nabove. Sending multiple lists is equivalent to sending multiple\n`Mutation`s, each containing one `values` entry and repeating\ntable and columns. Individual values in each list are\nencoded as described here.", - "type": "array", - "items": { - "type": "array", - "items": { - "type": "any" - } - } - } - }, - "id": "Write" - }, - "ReadWrite": { - "properties": {}, - "id": "ReadWrite", - "description": "Message type to initiate a read-write transaction. Currently this\ntransaction type has no options.", - "type": "object" - }, - "Operation": { - "description": "This resource represents a long-running operation that is the result of a\nnetwork API call.", - "type": "object", - "properties": { - "done": { - "description": "If the value is `false`, it means the operation is still in progress.\nIf `true`, the operation is completed, and either `error` or `response` is\navailable.", - "type": "boolean" - }, - "response": { - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - }, - "description": "The normal response of the operation in case of success. If the original\nmethod returns no data on success, such as `Delete`, the response is\n`google.protobuf.Empty`. If the original method is standard\n`Get`/`Create`/`Update`, the response should be the resource. For other\nmethods, the response should have the type `XxxResponse`, where `Xxx`\nis the original method name. For example, if the original method name\nis `TakeSnapshot()`, the inferred response type is\n`TakeSnapshotResponse`.", - "type": "object" - }, - "name": { - "description": "The server-assigned name, which is only unique within the same service that\noriginally returns it. If you use the default HTTP mapping, the\n`name` should have the format of `operations/some/unique/name`.", - "type": "string" - }, - "error": { - "description": "The error result of the operation in case of failure or cancellation.", - "$ref": "Status" - }, - "metadata": { - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - }, - "description": "Service-specific metadata associated with the operation. It typically\ncontains progress information and common metadata such as create time.\nSome services might not provide such metadata. Any method that returns a\nlong-running operation should document the metadata type, if any.", - "type": "object" - } - }, - "id": "Operation" - }, - "CreateSessionRequest": { - "description": "The request for CreateSession.", - "type": "object", - "properties": { - "session": { - "$ref": "Session", - "description": "The session to create." - } - }, - "id": "CreateSessionRequest" - }, "Status": { "description": "The `Status` type defines a logical error model that is suitable for different\nprogramming environments, including REST APIs and RPC APIs. It is used by\n[gRPC](https://github.com/grpc). The error model is designed to be:\n\n- Simple to use and understand for most users\n- Flexible enough to meet unexpected needs\n\n# Overview\n\nThe `Status` message contains three pieces of data: error code, error message,\nand error details. The error code should be an enum value of\ngoogle.rpc.Code, but it may accept additional error codes if needed. The\nerror message should be a developer-facing English message that helps\ndevelopers *understand* and *resolve* the error. If a localized user-facing\nerror message is needed, put the localized message in the error details or\nlocalize it in the client. The optional error details may contain arbitrary\ninformation about the error. There is a predefined set of error detail types\nin the package `google.rpc` that can be used for common error conditions.\n\n# Language mapping\n\nThe `Status` message is the logical representation of the error model, but it\nis not necessarily the actual wire format. When the `Status` message is\nexposed in different client libraries and different wire protocols, it can be\nmapped differently. For example, it will likely be mapped to some exceptions\nin Java, but more likely mapped to some error codes in C.\n\n# Other uses\n\nThe error model and the `Status` message can be used in a variety of\nenvironments, either with or without APIs, to provide a\nconsistent developer experience across different environments.\n\nExample uses of this error model include:\n\n- Partial errors. If a service needs to return partial errors to the client,\n it may embed the `Status` in the normal response to indicate the partial\n errors.\n\n- Workflow errors. A typical workflow has multiple steps. Each step may\n have a `Status` message for error reporting.\n\n- Batch operations. If a client uses batch request and batch response, the\n `Status` message should be used directly inside batch response, one for\n each error sub-response.\n\n- Asynchronous operations. If an API call embeds asynchronous operation\n results in its response, the status of those operations should be\n represented directly using the `Status` message.\n\n- Logging. If some API errors are stored in logs, the message `Status` could\n be used directly after any stripping needed for security/privacy reasons.", - "type": "object", + "id": "Status", "properties": { + "code": { + "description": "The status code, which should be an enum value of google.rpc.Code.", + "format": "int32", + "type": "integer" + }, "details": { "description": "A list of messages that carry the error details. There is a common set of\nmessage types for APIs to use.", - "type": "array", "items": { "additionalProperties": { "description": "Properties of the object. Contains field @type with type URL.", "type": "any" }, "type": "object" - } - }, - "code": { - "description": "The status code, which should be an enum value of google.rpc.Code.", - "format": "int32", - "type": "integer" + }, + "type": "array" }, "message": { "description": "A developer-facing error message, which should be in English. Any\nuser-facing error message should be localized and sent in the\ngoogle.rpc.Status.details field, or localized by the client.", "type": "string" } }, - "id": "Status" - }, - "ResultSet": { - "properties": { - "metadata": { - "description": "Metadata about the result set, such as row type information.", - "$ref": "ResultSetMetadata" - }, - "stats": { - "description": "Query plan and execution statistics for the query that produced this\nresult set. These can be requested by setting\nExecuteSqlRequest.query_mode.", - "$ref": "ResultSetStats" - }, - "rows": { - "description": "Each element in `rows` is a row whose format is defined by\nmetadata.row_type. The ith element\nin each row matches the ith field in\nmetadata.row_type. Elements are\nencoded based on type as described\nhere.", - "type": "array", - "items": { - "type": "array", - "items": { - "type": "any" - } - } - } - }, - "id": "ResultSet", - "description": "Results from Read or\nExecuteSql.", "type": "object" }, - "Binding": { - "description": "Associates `members` with a `role`.", - "type": "object", + "StructType": { + "description": "`StructType` defines the fields of a STRUCT type.", + "id": "StructType", "properties": { - "members": { - "description": "Specifies the identities requesting access for a Cloud Platform resource.\n`members` can have the following values:\n\n* `allUsers`: A special identifier that represents anyone who is\n on the internet; with or without a Google account.\n\n* `allAuthenticatedUsers`: A special identifier that represents anyone\n who is authenticated with a Google account or a service account.\n\n* `user:{emailid}`: An email address that represents a specific Google\n account. For example, `alice@gmail.com` or `joe@example.com`.\n\n\n* `serviceAccount:{emailid}`: An email address that represents a service\n account. For example, `my-other-app@appspot.gserviceaccount.com`.\n\n* `group:{emailid}`: An email address that represents a Google group.\n For example, `admins@example.com`.\n\n\n* `domain:{domain}`: A Google Apps domain name that represents all the\n users of that domain. For example, `google.com` or `example.com`.\n\n", - "type": "array", + "fields": { + "description": "The list of fields that make up this struct. Order is\nsignificant, because values of this struct type are represented as\nlists, where the order of field values matches the order of\nfields in the StructType. In turn, the order of fields\nmatches the order of columns in a read request, or the order of\nfields in the `SELECT` clause of a query.", + "items": { + "$ref": "Field" + }, + "type": "array" + } + }, + "type": "object" + }, + "TestIamPermissionsRequest": { + "description": "Request message for `TestIamPermissions` method.", + "id": "TestIamPermissionsRequest", + "properties": { + "permissions": { + "description": "REQUIRED: The set of permissions to check for 'resource'.\nPermissions with wildcards (such as '*', 'spanner.*', 'spanner.instances.*') are not allowed.", "items": { "type": "string" - } + }, + "type": "array" + } + }, + "type": "object" + }, + "TestIamPermissionsResponse": { + "description": "Response message for `TestIamPermissions` method.", + "id": "TestIamPermissionsResponse", + "properties": { + "permissions": { + "description": "A subset of `TestPermissionsRequest.permissions` that the caller is\nallowed.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "Transaction": { + "description": "A transaction.", + "id": "Transaction", + "properties": { + "id": { + "description": "`id` may be used to identify the transaction in subsequent\nRead,\nExecuteSql,\nCommit, or\nRollback calls.\n\nSingle-use read-only transactions do not have IDs, because\nsingle-use transactions do not support multiple requests.", + "format": "byte", + "type": "string" }, - "role": { - "description": "Role that is assigned to `members`.\nFor example, `roles/viewer`, `roles/editor`, or `roles/owner`.\nRequired", + "readTimestamp": { + "description": "For snapshot read-only transactions, the read timestamp chosen\nfor the transaction. Not returned by default: see\nTransactionOptions.ReadOnly.return_read_timestamp.\n\nA timestamp in RFC3339 UTC \\\"Zulu\\\" format, accurate to nanoseconds.\nExample: `\"2014-10-02T15:01:23.045123456Z\"`.", + "format": "google-datetime", "type": "string" } }, - "id": "Binding" + "type": "object" + }, + "TransactionOptions": { + "description": "# Transactions\n\n\nEach session can have at most one active transaction at a time. After the\nactive transaction is completed, the session can immediately be\nre-used for the next transaction. It is not necessary to create a\nnew session for each transaction.\n\n# Transaction Modes\n\nCloud Spanner supports two transaction modes:\n\n 1. Locking read-write. This type of transaction is the only way\n to write data into Cloud Spanner. These transactions rely on\n pessimistic locking and, if necessary, two-phase commit.\n Locking read-write transactions may abort, requiring the\n application to retry.\n\n 2. Snapshot read-only. This transaction type provides guaranteed\n consistency across several reads, but does not allow\n writes. Snapshot read-only transactions can be configured to\n read at timestamps in the past. Snapshot read-only\n transactions do not need to be committed.\n\nFor transactions that only read, snapshot read-only transactions\nprovide simpler semantics and are almost always faster. In\nparticular, read-only transactions do not take locks, so they do\nnot conflict with read-write transactions. As a consequence of not\ntaking locks, they also do not abort, so retry loops are not needed.\n\nTransactions may only read/write data in a single database. They\nmay, however, read/write data in different tables within that\ndatabase.\n\n## Locking Read-Write Transactions\n\nLocking transactions may be used to atomically read-modify-write\ndata anywhere in a database. This type of transaction is externally\nconsistent.\n\nClients should attempt to minimize the amount of time a transaction\nis active. Faster transactions commit with higher probability\nand cause less contention. Cloud Spanner attempts to keep read locks\nactive as long as the transaction continues to do reads, and the\ntransaction has not been terminated by\nCommit or\nRollback. Long periods of\ninactivity at the client may cause Cloud Spanner to release a\ntransaction's locks and abort it.\n\nReads performed within a transaction acquire locks on the data\nbeing read. Writes can only be done at commit time, after all reads\nhave been completed.\nConceptually, a read-write transaction consists of zero or more\nreads or SQL queries followed by\nCommit. At any time before\nCommit, the client can send a\nRollback request to abort the\ntransaction.\n\n### Semantics\n\nCloud Spanner can commit the transaction if all read locks it acquired\nare still valid at commit time, and it is able to acquire write\nlocks for all writes. Cloud Spanner can abort the transaction for any\nreason. If a commit attempt returns `ABORTED`, Cloud Spanner guarantees\nthat the transaction has not modified any user data in Cloud Spanner.\n\nUnless the transaction commits, Cloud Spanner makes no guarantees about\nhow long the transaction's locks were held for. It is an error to\nuse Cloud Spanner locks for any sort of mutual exclusion other than\nbetween Cloud Spanner transactions themselves.\n\n### Retrying Aborted Transactions\n\nWhen a transaction aborts, the application can choose to retry the\nwhole transaction again. To maximize the chances of successfully\ncommitting the retry, the client should execute the retry in the\nsame session as the original attempt. The original session's lock\npriority increases with each consecutive abort, meaning that each\nattempt has a slightly better chance of success than the previous.\n\nUnder some circumstances (e.g., many transactions attempting to\nmodify the same row(s)), a transaction can abort many times in a\nshort period before successfully committing. Thus, it is not a good\nidea to cap the number of retries a transaction can attempt;\ninstead, it is better to limit the total amount of wall time spent\nretrying.\n\n### Idle Transactions\n\nA transaction is considered idle if it has no outstanding reads or\nSQL queries and has not started a read or SQL query within the last 10\nseconds. Idle transactions can be aborted by Cloud Spanner so that they\ndon't hold on to locks indefinitely. In that case, the commit will\nfail with error `ABORTED`.\n\nIf this behavior is undesirable, periodically executing a simple\nSQL query in the transaction (e.g., `SELECT 1`) prevents the\ntransaction from becoming idle.\n\n## Snapshot Read-Only Transactions\n\nSnapshot read-only transactions provides a simpler method than\nlocking read-write transactions for doing several consistent\nreads. However, this type of transaction does not support writes.\n\nSnapshot transactions do not take locks. Instead, they work by\nchoosing a Cloud Spanner timestamp, then executing all reads at that\ntimestamp. Since they do not acquire locks, they do not block\nconcurrent read-write transactions.\n\nUnlike locking read-write transactions, snapshot read-only\ntransactions never abort. They can fail if the chosen read\ntimestamp is garbage collected; however, the default garbage\ncollection policy is generous enough that most applications do not\nneed to worry about this in practice.\n\nSnapshot read-only transactions do not need to call\nCommit or\nRollback (and in fact are not\npermitted to do so).\n\nTo execute a snapshot transaction, the client specifies a timestamp\nbound, which tells Cloud Spanner how to choose a read timestamp.\n\nThe types of timestamp bound are:\n\n - Strong (the default).\n - Bounded staleness.\n - Exact staleness.\n\nIf the Cloud Spanner database to be read is geographically distributed,\nstale read-only transactions can execute more quickly than strong\nor read-write transaction, because they are able to execute far\nfrom the leader replica.\n\nEach type of timestamp bound is discussed in detail below.\n\n### Strong\n\nStrong reads are guaranteed to see the effects of all transactions\nthat have committed before the start of the read. Furthermore, all\nrows yielded by a single read are consistent with each other -- if\nany part of the read observes a transaction, all parts of the read\nsee the transaction.\n\nStrong reads are not repeatable: two consecutive strong read-only\ntransactions might return inconsistent results if there are\nconcurrent writes. If consistency across reads is required, the\nreads should be executed within a transaction or at an exact read\ntimestamp.\n\nSee TransactionOptions.ReadOnly.strong.\n\n### Exact Staleness\n\nThese timestamp bounds execute reads at a user-specified\ntimestamp. Reads at a timestamp are guaranteed to see a consistent\nprefix of the global transaction history: they observe\nmodifications done by all transactions with a commit timestamp \u003c=\nthe read timestamp, and observe none of the modifications done by\ntransactions with a larger commit timestamp. They will block until\nall conflicting transactions that may be assigned commit timestamps\n\u003c= the read timestamp have finished.\n\nThe timestamp can either be expressed as an absolute Cloud Spanner commit\ntimestamp or a staleness relative to the current time.\n\nThese modes do not require a \"negotiation phase\" to pick a\ntimestamp. As a result, they execute slightly faster than the\nequivalent boundedly stale concurrency modes. On the other hand,\nboundedly stale reads usually return fresher results.\n\nSee TransactionOptions.ReadOnly.read_timestamp and\nTransactionOptions.ReadOnly.exact_staleness.\n\n### Bounded Staleness\n\nBounded staleness modes allow Cloud Spanner to pick the read timestamp,\nsubject to a user-provided staleness bound. Cloud Spanner chooses the\nnewest timestamp within the staleness bound that allows execution\nof the reads at the closest available replica without blocking.\n\nAll rows yielded are consistent with each other -- if any part of\nthe read observes a transaction, all parts of the read see the\ntransaction. Boundedly stale reads are not repeatable: two stale\nreads, even if they use the same staleness bound, can execute at\ndifferent timestamps and thus return inconsistent results.\n\nBoundedly stale reads execute in two phases: the first phase\nnegotiates a timestamp among all replicas needed to serve the\nread. In the second phase, reads are executed at the negotiated\ntimestamp.\n\nAs a result of the two phase execution, bounded staleness reads are\nusually a little slower than comparable exact staleness\nreads. However, they are typically able to return fresher\nresults, and are more likely to execute at the closest replica.\n\nBecause the timestamp negotiation requires up-front knowledge of\nwhich rows will be read, it can only be used with single-use\nread-only transactions.\n\nSee TransactionOptions.ReadOnly.max_staleness and\nTransactionOptions.ReadOnly.min_read_timestamp.\n\n### Old Read Timestamps and Garbage Collection\n\nCloud Spanner continuously garbage collects deleted and overwritten data\nin the background to reclaim storage space. This process is known\nas \"version GC\". By default, version GC reclaims versions after they\nare one hour old. Because of this, Cloud Spanner cannot perform reads\nat read timestamps more than one hour in the past. This\nrestriction also applies to in-progress reads and/or SQL queries whose\ntimestamp become too old while executing. Reads and SQL queries with\ntoo-old read timestamps fail with the error `FAILED_PRECONDITION`.", + "id": "TransactionOptions", + "properties": { + "readOnly": { + "$ref": "ReadOnly", + "description": "Transaction will not write.\n\nAuthorization to begin a read-only transaction requires\n`spanner.databases.beginReadOnlyTransaction` permission\non the `session` resource." + }, + "readWrite": { + "$ref": "ReadWrite", + "description": "Transaction may write.\n\nAuthorization to begin a read-write transaction requires\n`spanner.databases.beginOrRollbackReadWriteTransaction` permission\non the `session` resource." + } + }, + "type": "object" + }, + "TransactionSelector": { + "description": "This message is used to select the transaction in which a\nRead or\nExecuteSql call runs.\n\nSee TransactionOptions for more information about transactions.", + "id": "TransactionSelector", + "properties": { + "begin": { + "$ref": "TransactionOptions", + "description": "Begin a new transaction and execute this read or SQL query in\nit. The transaction ID of the new transaction is returned in\nResultSetMetadata.transaction, which is a Transaction." + }, + "id": { + "description": "Execute the read or SQL query in a previously-started transaction.", + "format": "byte", + "type": "string" + }, + "singleUse": { + "$ref": "TransactionOptions", + "description": "Execute the read or SQL query in a temporary transaction.\nThis is the most efficient way to execute a transaction that\nconsists of a single SQL query." + } + }, + "type": "object" + }, + "Type": { + "description": "`Type` indicates the type of a Cloud Spanner value, as might be stored in a\ntable cell or returned from an SQL query.", + "id": "Type", + "properties": { + "arrayElementType": { + "$ref": "Type", + "description": "If code == ARRAY, then `array_element_type`\nis the type of the array elements." + }, + "code": { + "description": "Required. The TypeCode for this type.", + "enum": [ + "TYPE_CODE_UNSPECIFIED", + "BOOL", + "INT64", + "FLOAT64", + "TIMESTAMP", + "DATE", + "STRING", + "BYTES", + "ARRAY", + "STRUCT" + ], + "enumDescriptions": [ + "Not specified.", + "Encoded as JSON `true` or `false`.", + "Encoded as `string`, in decimal format.", + "Encoded as `number`, or the strings `\"NaN\"`, `\"Infinity\"`, or\n`\"-Infinity\"`.", + "Encoded as `string` in RFC 3339 timestamp format. The time zone\nmust be present, and must be `\"Z\"`.", + "Encoded as `string` in RFC 3339 date format.", + "Encoded as `string`.", + "Encoded as a base64-encoded `string`, as described in RFC 4648,\nsection 4.", + "Encoded as `list`, where the list elements are represented\naccording to array_element_type.", + "Encoded as `list`, where list element `i` is represented according\nto [struct_type.fields[i]][google.spanner.v1.StructType.fields]." + ], + "type": "string" + }, + "structType": { + "$ref": "StructType", + "description": "If code == STRUCT, then `struct_type`\nprovides type information for the struct's fields." + } + }, + "type": "object" + }, + "UpdateDatabaseDdlMetadata": { + "description": "Metadata type for the operation returned by\nUpdateDatabaseDdl.", + "id": "UpdateDatabaseDdlMetadata", + "properties": { + "commitTimestamps": { + "description": "Reports the commit timestamps of all statements that have\nsucceeded so far, where `commit_timestamps[i]` is the commit\ntimestamp for the statement `statements[i]`.", + "items": { + "format": "google-datetime", + "type": "string" + }, + "type": "array" + }, + "database": { + "description": "The database being modified.", + "type": "string" + }, + "statements": { + "description": "For an update this list contains all the statements. For an\nindividual statement, this list contains only that statement.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" }, "UpdateDatabaseDdlRequest": { "description": "Enqueues the given DDL statements to be applied, in order but not\nnecessarily all at once, to the database schema at some point (or\npoints) in the future. The server checks that the statements\nare executable (syntactically valid, name tables that exist, etc.)\nbefore enqueueing them, but they may still fail upon\nlater execution (e.g., if a statement from another batch of\nstatements is applied first and it conflicts in some way, or if\nthere is some data-related problem like a `NULL` value in a column to\nwhich `NOT NULL` would be added). If a statement fails, all\nsubsequent statements in the batch are automatically cancelled.\n\nEach batch of statements is assigned a name which can be used with\nthe Operations API to monitor\nprogress. See the\noperation_id field for more\ndetails.", - "type": "object", + "id": "UpdateDatabaseDdlRequest", "properties": { "operationId": { "description": "If empty, the new update request is assigned an\nautomatically-generated operation ID. Otherwise, `operation_id`\nis used to construct the name of the resulting\nOperation.\n\nSpecifying an explicit operation ID simplifies determining\nwhether the statements were executed in the event that the\nUpdateDatabaseDdl call is replayed,\nor the return value is otherwise lost: the database and\n`operation_id` fields can be combined to form the\nname of the resulting\nlongrunning.Operation: `\u003cdatabase\u003e/operations/\u003coperation_id\u003e`.\n\n`operation_id` should be unique within the database, and must be\na valid identifier: `a-z*`. Note that\nautomatically-generated operation IDs always begin with an\nunderscore. If the named operation already exists,\nUpdateDatabaseDdl returns\n`ALREADY_EXISTS`.", @@ -2411,66 +2574,87 @@ }, "statements": { "description": "DDL statements to be applied to the database.", - "type": "array", "items": { "type": "string" - } + }, + "type": "array" } }, - "id": "UpdateDatabaseDdlRequest" + "type": "object" }, - "PartialResultSet": { - "description": "Partial results from a streaming read or SQL query. Streaming reads and\nSQL queries better tolerate large result sets, large rows, and large\nvalues, but are a little trickier to consume.", - "type": "object", + "UpdateInstanceMetadata": { + "description": "Metadata type for the operation returned by\nUpdateInstance.", + "id": "UpdateInstanceMetadata", "properties": { - "resumeToken": { - "description": "Streaming calls might be interrupted for a variety of reasons, such\nas TCP connection loss. If this occurs, the stream of results can\nbe resumed by re-sending the original request and including\n`resume_token`. Note that executing any other transaction in the\nsame session invalidates the token.", - "format": "byte", + "cancelTime": { + "description": "The time at which this operation was cancelled. If set, this operation is\nin the process of undoing itself (which is guaranteed to succeed) and\ncannot be cancelled again.", + "format": "google-datetime", "type": "string" }, - "stats": { - "$ref": "ResultSetStats", - "description": "Query plan and execution statistics for the query that produced this\nstreaming result set. These can be requested by setting\nExecuteSqlRequest.query_mode and are sent\nonly once with the last response in the stream." + "endTime": { + "description": "The time at which this operation failed or was completed successfully.", + "format": "google-datetime", + "type": "string" }, - "chunkedValue": { - "description": "If true, then the final value in values is chunked, and must\nbe combined with more values from subsequent `PartialResultSet`s\nto obtain a complete field value.", - "type": "boolean" + "instance": { + "$ref": "Instance", + "description": "The desired end state of the update." }, - "metadata": { - "$ref": "ResultSetMetadata", - "description": "Metadata about the result set, such as row type information.\nOnly present in the first response." - }, - "values": { - "description": "A streamed result set consists of a stream of values, which might\nbe split into many `PartialResultSet` messages to accommodate\nlarge rows and/or large values. Every N complete values defines a\nrow, where N is equal to the number of entries in\nmetadata.row_type.fields.\n\nMost values are encoded based on type as described\nhere.\n\nIt is possible that the last value in values is \"chunked\",\nmeaning that the rest of the value is sent in subsequent\n`PartialResultSet`(s). This is denoted by the chunked_value\nfield. Two or more chunked values can be merged to form a\ncomplete value as follows:\n\n * `bool/number/null`: cannot be chunked\n * `string`: concatenate the strings\n * `list`: concatenate the lists. If the last element in a list is a\n `string`, `list`, or `object`, merge it with the first element in\n the next list by applying these rules recursively.\n * `object`: concatenate the (field name, field value) pairs. If a\n field name is duplicated, then apply these rules recursively\n to merge the field values.\n\nSome examples of merging:\n\n # Strings are concatenated.\n \"foo\", \"bar\" =\u003e \"foobar\"\n\n # Lists of non-strings are concatenated.\n [2, 3], [4] =\u003e [2, 3, 4]\n\n # Lists are concatenated, but the last and first elements are merged\n # because they are strings.\n [\"a\", \"b\"], [\"c\", \"d\"] =\u003e [\"a\", \"bc\", \"d\"]\n\n # Lists are concatenated, but the last and first elements are merged\n # because they are lists. Recursively, the last and first elements\n # of the inner lists are merged because they are strings.\n [\"a\", [\"b\", \"c\"]], [[\"d\"], \"e\"] =\u003e [\"a\", [\"b\", \"cd\"], \"e\"]\n\n # Non-overlapping object fields are combined.\n {\"a\": \"1\"}, {\"b\": \"2\"} =\u003e {\"a\": \"1\", \"b\": 2\"}\n\n # Overlapping object fields are merged.\n {\"a\": \"1\"}, {\"a\": \"2\"} =\u003e {\"a\": \"12\"}\n\n # Examples of merging objects containing lists of strings.\n {\"a\": [\"1\"]}, {\"a\": [\"2\"]} =\u003e {\"a\": [\"12\"]}\n\nFor a more complete example, suppose a streaming SQL query is\nyielding a result set whose rows contain a single string\nfield. The following `PartialResultSet`s might be yielded:\n\n {\n \"metadata\": { ... }\n \"values\": [\"Hello\", \"W\"]\n \"chunked_value\": true\n \"resume_token\": \"Af65...\"\n }\n {\n \"values\": [\"orl\"]\n \"chunked_value\": true\n \"resume_token\": \"Bqp2...\"\n }\n {\n \"values\": [\"d\"]\n \"resume_token\": \"Zx1B...\"\n }\n\nThis sequence of `PartialResultSet`s encodes two rows, one\ncontaining the field value `\"Hello\"`, and a second containing the\nfield value `\"World\" = \"W\" + \"orl\" + \"d\"`.", - "type": "array", - "items": { - "type": "any" - } + "startTime": { + "description": "The time at which UpdateInstance\nrequest was received.", + "format": "google-datetime", + "type": "string" } }, - "id": "PartialResultSet" - } - }, - "icons": { - "x32": "http://www.google.com/images/icons/product/search-32.gif", - "x16": "http://www.google.com/images/icons/product/search-16.gif" - }, - "protocol": "rest", - "canonicalName": "Spanner", - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/cloud-platform": { - "description": "View and manage your data across Google Cloud Platform services" + "type": "object" + }, + "UpdateInstanceRequest": { + "description": "The request for UpdateInstance.", + "id": "UpdateInstanceRequest", + "properties": { + "fieldMask": { + "description": "Required. A mask specifying which fields in [][google.spanner.admin.instance.v1.UpdateInstanceRequest.instance] should be updated.\nThe field mask must always be specified; this prevents any future fields in\n[][google.spanner.admin.instance.v1.Instance] from being erased accidentally by clients that do not know\nabout them.", + "format": "google-fieldmask", + "type": "string" }, - "https://www.googleapis.com/auth/spanner.admin": { - "description": "Administer your Spanner databases" - }, - "https://www.googleapis.com/auth/spanner.data": { - "description": "View and manage the contents of your Spanner databases" + "instance": { + "$ref": "Instance", + "description": "Required. The instance to update, which must always include the instance\nname. Otherwise, only fields mentioned in [][google.spanner.admin.instance.v1.UpdateInstanceRequest.field_mask] need be included." } - } + }, + "type": "object" + }, + "Write": { + "description": "Arguments to insert, update, insert_or_update, and\nreplace operations.", + "id": "Write", + "properties": { + "columns": { + "description": "The names of the columns in table to be written.\n\nThe list of columns must contain enough columns to allow\nCloud Spanner to derive values for all primary key columns in the\nrow(s) to be modified.", + "items": { + "type": "string" + }, + "type": "array" + }, + "table": { + "description": "Required. The table whose rows will be written.", + "type": "string" + }, + "values": { + "description": "The values to be written. `values` can contain more than one\nlist of values. If it does, then multiple rows are written, one\nfor each entry in `values`. Each list in `values` must have\nexactly as many entries as there are entries in columns\nabove. Sending multiple lists is equivalent to sending multiple\n`Mutation`s, each containing one `values` entry and repeating\ntable and columns. Individual values in each list are\nencoded as described here.", + "items": { + "items": { + "type": "any" + }, + "type": "array" + }, + "type": "array" + } + }, + "type": "object" } }, - "rootUrl": "https://spanner.googleapis.com/" -} + "servicePath": "", + "title": "Cloud Spanner API", + "version": "v1", + "version_module": true +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/spanner/v1/spanner-gen.go b/vendor/google.golang.org/api/spanner/v1/spanner-gen.go index 5505509a5..806678eeb 100644 --- a/vendor/google.golang.org/api/spanner/v1/spanner-gen.go +++ b/vendor/google.golang.org/api/spanner/v1/spanner-gen.go @@ -629,6 +629,9 @@ func (s *Database) MarshalJSON() ([]byte, error) { type Delete struct { // KeySet: Required. The primary keys of the rows within table to // delete. + // Delete is idempotent. The transaction will succeed even if some or + // all + // rows do not exist. KeySet *KeySet `json:"keySet,omitempty"` // Table: Required. The table whose rows will be deleted. @@ -711,9 +714,19 @@ type ExecuteSqlRequest struct { // corresponding parameter values. Params googleapi.RawMessage `json:"params,omitempty"` + // PartitionToken: If present, results will be restricted to the + // specified partition + // previously created using PartitionQuery(). There must be an + // exact + // match for the values of fields common to this message and + // the + // PartitionQueryRequest message used to create this partition_token. + PartitionToken string `json:"partitionToken,omitempty"` + // QueryMode: Used to control the amount of debugging information // returned in - // ResultSetStats. + // ResultSetStats. If partition_token is set, query_mode can only + // be set to QueryMode.NORMAL. // // Possible values: // "NORMAL" - The default mode where only the query result, without @@ -1669,6 +1682,267 @@ func (s *PartialResultSet) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// Partition: Information returned for each partition returned in +// a +// PartitionResponse. +type Partition struct { + // PartitionToken: This token can be passed to Read, StreamingRead, + // ExecuteSql, or + // ExecuteStreamingSql requests to restrict the results to those + // identified by + // this partition token. + PartitionToken string `json:"partitionToken,omitempty"` + + // ForceSendFields is a list of field names (e.g. "PartitionToken") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "PartitionToken") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *Partition) MarshalJSON() ([]byte, error) { + type NoMethod Partition + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// PartitionOptions: Options for a PartitionQueryRequest +// and +// PartitionReadRequest. +type PartitionOptions struct { + // MaxPartitions: **Note:** This hint is currently ignored by + // PartitionQuery and + // PartitionRead requests. + // + // The desired maximum number of partitions to return. For example, + // this may + // be set to the number of workers available. The default for this + // option + // is currently 10,000. The maximum value is currently 200,000. This is + // only + // a hint. The actual number of partitions returned may be smaller or + // larger + // than this maximum count request. + MaxPartitions int64 `json:"maxPartitions,omitempty,string"` + + // PartitionSizeBytes: **Note:** This hint is currently ignored by + // PartitionQuery and + // PartitionRead requests. + // + // The desired data size for each partition generated. The default for + // this + // option is currently 1 GiB. This is only a hint. The actual size of + // each + // partition may be smaller or larger than this size request. + PartitionSizeBytes int64 `json:"partitionSizeBytes,omitempty,string"` + + // ForceSendFields is a list of field names (e.g. "MaxPartitions") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "MaxPartitions") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *PartitionOptions) MarshalJSON() ([]byte, error) { + type NoMethod PartitionOptions + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// PartitionQueryRequest: The request for PartitionQuery +type PartitionQueryRequest struct { + // ParamTypes: It is not always possible for Cloud Spanner to infer the + // right SQL type + // from a JSON value. For example, values of type `BYTES` and values + // of type `STRING` both appear in params as JSON strings. + // + // In these cases, `param_types` can be used to specify the exact + // SQL type for some or all of the SQL query parameters. See + // the + // definition of Type for more information + // about SQL types. + ParamTypes map[string]Type `json:"paramTypes,omitempty"` + + // Params: The SQL query string can contain parameter placeholders. A + // parameter + // placeholder consists of `'@'` followed by the parameter + // name. Parameter names consist of any combination of letters, + // numbers, and underscores. + // + // Parameters can appear anywhere that a literal value is expected. The + // same + // parameter name can be used more than once, for example: + // "WHERE id > @msg_id AND id < @msg_id + 100" + // + // It is an error to execute an SQL query with unbound + // parameters. + // + // Parameter values are specified using `params`, which is a JSON + // object whose keys are parameter names, and whose values are + // the + // corresponding parameter values. + Params googleapi.RawMessage `json:"params,omitempty"` + + // PartitionOptions: Additional options that affect how many partitions + // are created. + PartitionOptions *PartitionOptions `json:"partitionOptions,omitempty"` + + // Sql: The query request to generate partitions for. The request will + // fail if + // the query is not root partitionable. The query plan of a + // root + // partitionable query has a single distributed union operator. A + // distributed + // union operator conceptually divides one or more tables into + // multiple + // splits, remotely evaluates a subquery independently on each split, + // and + // then unions all results. + Sql string `json:"sql,omitempty"` + + // Transaction: Read only snapshot transactions are supported, + // read/write and single use + // transactions are not. + Transaction *TransactionSelector `json:"transaction,omitempty"` + + // ForceSendFields is a list of field names (e.g. "ParamTypes") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "ParamTypes") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *PartitionQueryRequest) MarshalJSON() ([]byte, error) { + type NoMethod PartitionQueryRequest + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// PartitionReadRequest: The request for PartitionRead +type PartitionReadRequest struct { + // Columns: The columns of table to be returned for each row + // matching + // this request. + Columns []string `json:"columns,omitempty"` + + // Index: If non-empty, the name of an index on table. This index + // is + // used instead of the table primary key when interpreting key_set + // and sorting result rows. See key_set for further information. + Index string `json:"index,omitempty"` + + // KeySet: Required. `key_set` identifies the rows to be yielded. + // `key_set` names the + // primary keys of the rows in table to be yielded, unless index + // is present. If index is present, then key_set instead names + // index keys in index. + // + // It is not an error for the `key_set` to name rows that do not + // exist in the database. Read yields nothing for nonexistent rows. + KeySet *KeySet `json:"keySet,omitempty"` + + // PartitionOptions: Additional options that affect how many partitions + // are created. + PartitionOptions *PartitionOptions `json:"partitionOptions,omitempty"` + + // Table: Required. The name of the table in the database to be read. + Table string `json:"table,omitempty"` + + // Transaction: Read only snapshot transactions are supported, + // read/write and single use + // transactions are not. + Transaction *TransactionSelector `json:"transaction,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Columns") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Columns") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *PartitionReadRequest) MarshalJSON() ([]byte, error) { + type NoMethod PartitionReadRequest + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// PartitionResponse: The response for PartitionQuery +// or PartitionRead +type PartitionResponse struct { + // Partitions: Partitions created by this request. + Partitions []*Partition `json:"partitions,omitempty"` + + // Transaction: Transaction created by this request. + Transaction *Transaction `json:"transaction,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "Partitions") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Partitions") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *PartitionResponse) MarshalJSON() ([]byte, error) { + type NoMethod PartitionResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // PlanNode: Node information for nodes appearing in a // QueryPlan.plan_nodes. type PlanNode struct { @@ -1789,7 +2063,7 @@ func (s *PlanNode) MarshalJSON() ([]byte, error) { // } // // For a description of IAM and its features, see the -// [IAM developer's guide](https://cloud.google.com/iam). +// [IAM developer's guide](https://cloud.google.com/iam/docs). type Policy struct { // Bindings: Associates a list of `members` to a `role`. // `bindings` with no members will result in an error. @@ -1815,7 +2089,7 @@ type Policy struct { // policy is overwritten blindly. Etag string `json:"etag,omitempty"` - // Version: Version of the `Policy`. The default version is 0. + // Version: Deprecated. Version int64 `json:"version,omitempty"` // ServerResponse contains the HTTP response code and headers from the @@ -2004,8 +2278,10 @@ type ReadRequest struct { // is present. If index is present, then key_set instead names // index keys in index. // - // Rows are yielded in table primary key order (if index is empty) - // or index key order (if index is non-empty). + // If the partition_token field is empty, rows are yielded + // in table primary key order (if index is empty) or index key order + // (if index is non-empty). If the partition_token field is not + // empty, rows will be yielded in an unspecified order. // // It is not an error for the `key_set` to name rows that do not // exist in the database. Read yields nothing for nonexistent rows. @@ -2013,9 +2289,20 @@ type ReadRequest struct { // Limit: If greater than zero, only the first `limit` rows are yielded. // If `limit` - // is zero, the default is no limit. + // is zero, the default is no limit. A limit cannot be specified + // if + // `partition_token` is set. Limit int64 `json:"limit,omitempty,string"` + // PartitionToken: If present, results will be restricted to the + // specified partition + // previously created using PartitionRead(). There must be an + // exact + // match for the values of fields common to this message and + // the + // PartitionReadRequest message used to create this partition_token. + PartitionToken string `json:"partitionToken,omitempty"` + // ResumeToken: If this request is resuming a previously interrupted // read, // `resume_token` should be copied from the last @@ -8120,6 +8407,303 @@ func (c *ProjectsInstancesDatabasesSessionsListCall) Pages(ctx context.Context, } } +// method id "spanner.projects.instances.databases.sessions.partitionQuery": + +type ProjectsInstancesDatabasesSessionsPartitionQueryCall struct { + s *Service + session string + partitionqueryrequest *PartitionQueryRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// PartitionQuery: Creates a set of partition tokens that can be used to +// execute a query +// operation in parallel. Each of the returned partition tokens can be +// used +// by ExecuteStreamingSql to specify a subset +// of the query result to read. The same session and read-only +// transaction +// must be used by the PartitionQueryRequest used to create +// the +// partition tokens and the ExecuteSqlRequests that use the partition +// tokens. +// Partition tokens become invalid when the session used to create +// them +// is deleted or begins a new transaction. +func (r *ProjectsInstancesDatabasesSessionsService) PartitionQuery(session string, partitionqueryrequest *PartitionQueryRequest) *ProjectsInstancesDatabasesSessionsPartitionQueryCall { + c := &ProjectsInstancesDatabasesSessionsPartitionQueryCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.session = session + c.partitionqueryrequest = partitionqueryrequest + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsInstancesDatabasesSessionsPartitionQueryCall) Fields(s ...googleapi.Field) *ProjectsInstancesDatabasesSessionsPartitionQueryCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsInstancesDatabasesSessionsPartitionQueryCall) Context(ctx context.Context) *ProjectsInstancesDatabasesSessionsPartitionQueryCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsInstancesDatabasesSessionsPartitionQueryCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsInstancesDatabasesSessionsPartitionQueryCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.partitionqueryrequest) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+session}:partitionQuery") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("POST", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "session": c.session, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "spanner.projects.instances.databases.sessions.partitionQuery" call. +// Exactly one of *PartitionResponse or error will be non-nil. Any +// non-2xx status code is an error. Response headers are in either +// *PartitionResponse.ServerResponse.Header or (if a response was +// returned at all) in error.(*googleapi.Error).Header. Use +// googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *ProjectsInstancesDatabasesSessionsPartitionQueryCall) Do(opts ...googleapi.CallOption) (*PartitionResponse, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &PartitionResponse{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Creates a set of partition tokens that can be used to execute a query\noperation in parallel. Each of the returned partition tokens can be used\nby ExecuteStreamingSql to specify a subset\nof the query result to read. The same session and read-only transaction\nmust be used by the PartitionQueryRequest used to create the\npartition tokens and the ExecuteSqlRequests that use the partition tokens.\nPartition tokens become invalid when the session used to create them\nis deleted or begins a new transaction.", + // "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases/{databasesId}/sessions/{sessionsId}:partitionQuery", + // "httpMethod": "POST", + // "id": "spanner.projects.instances.databases.sessions.partitionQuery", + // "parameterOrder": [ + // "session" + // ], + // "parameters": { + // "session": { + // "description": "Required. The session used to create the partitions.", + // "location": "path", + // "pattern": "^projects/[^/]+/instances/[^/]+/databases/[^/]+/sessions/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1/{+session}:partitionQuery", + // "request": { + // "$ref": "PartitionQueryRequest" + // }, + // "response": { + // "$ref": "PartitionResponse" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform", + // "https://www.googleapis.com/auth/spanner.data" + // ] + // } + +} + +// method id "spanner.projects.instances.databases.sessions.partitionRead": + +type ProjectsInstancesDatabasesSessionsPartitionReadCall struct { + s *Service + session string + partitionreadrequest *PartitionReadRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// PartitionRead: Creates a set of partition tokens that can be used to +// execute a read +// operation in parallel. Each of the returned partition tokens can be +// used +// by StreamingRead to specify a subset of the read +// result to read. The same session and read-only transaction must be +// used by +// the PartitionReadRequest used to create the partition tokens and +// the +// ReadRequests that use the partition tokens. +// Partition tokens become invalid when the session used to create +// them +// is deleted or begins a new transaction. +func (r *ProjectsInstancesDatabasesSessionsService) PartitionRead(session string, partitionreadrequest *PartitionReadRequest) *ProjectsInstancesDatabasesSessionsPartitionReadCall { + c := &ProjectsInstancesDatabasesSessionsPartitionReadCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.session = session + c.partitionreadrequest = partitionreadrequest + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsInstancesDatabasesSessionsPartitionReadCall) Fields(s ...googleapi.Field) *ProjectsInstancesDatabasesSessionsPartitionReadCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsInstancesDatabasesSessionsPartitionReadCall) Context(ctx context.Context) *ProjectsInstancesDatabasesSessionsPartitionReadCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsInstancesDatabasesSessionsPartitionReadCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsInstancesDatabasesSessionsPartitionReadCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.partitionreadrequest) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+session}:partitionRead") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("POST", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "session": c.session, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "spanner.projects.instances.databases.sessions.partitionRead" call. +// Exactly one of *PartitionResponse or error will be non-nil. Any +// non-2xx status code is an error. Response headers are in either +// *PartitionResponse.ServerResponse.Header or (if a response was +// returned at all) in error.(*googleapi.Error).Header. Use +// googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *ProjectsInstancesDatabasesSessionsPartitionReadCall) Do(opts ...googleapi.CallOption) (*PartitionResponse, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &PartitionResponse{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Creates a set of partition tokens that can be used to execute a read\noperation in parallel. Each of the returned partition tokens can be used\nby StreamingRead to specify a subset of the read\nresult to read. The same session and read-only transaction must be used by\nthe PartitionReadRequest used to create the partition tokens and the\nReadRequests that use the partition tokens.\nPartition tokens become invalid when the session used to create them\nis deleted or begins a new transaction.", + // "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases/{databasesId}/sessions/{sessionsId}:partitionRead", + // "httpMethod": "POST", + // "id": "spanner.projects.instances.databases.sessions.partitionRead", + // "parameterOrder": [ + // "session" + // ], + // "parameters": { + // "session": { + // "description": "Required. The session used to create the partitions.", + // "location": "path", + // "pattern": "^projects/[^/]+/instances/[^/]+/databases/[^/]+/sessions/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1/{+session}:partitionRead", + // "request": { + // "$ref": "PartitionReadRequest" + // }, + // "response": { + // "$ref": "PartitionResponse" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform", + // "https://www.googleapis.com/auth/spanner.data" + // ] + // } + +} + // method id "spanner.projects.instances.databases.sessions.read": type ProjectsInstancesDatabasesSessionsReadCall struct { diff --git a/vendor/google.golang.org/api/spectrum/v1explorer/spectrum-api.json b/vendor/google.golang.org/api/spectrum/v1explorer/spectrum-api.json index e10b41ce8..4c4d84091 100644 --- a/vendor/google.golang.org/api/spectrum/v1explorer/spectrum-api.json +++ b/vendor/google.golang.org/api/spectrum/v1explorer/spectrum-api.json @@ -1,992 +1,992 @@ { - "kind": "discovery#restDescription", - "etag": "\"YWOzh2SDasdU84ArJnpYek-OMdg/wuXXb8IGofo72qEZZoPGmfkdIx0\"", - "discoveryVersion": "v1", - "id": "spectrum:v1explorer", - "name": "spectrum", - "version": "v1explorer", - "revision": "20170306", - "title": "Google Spectrum Database API", - "description": "API for spectrum-management functions.", - "ownerDomain": "google.com", - "ownerName": "Google", - "icons": { - "x16": "https://www.gstatic.com/images/branding/product/1x/googleg_16dp.png", - "x32": "https://www.gstatic.com/images/branding/product/1x/googleg_32dp.png" - }, - "documentationLink": "http://developers.google.com/spectrum", - "protocol": "rest", - "baseUrl": "https://www.googleapis.com/spectrum/v1explorer/paws/", - "basePath": "/spectrum/v1explorer/paws/", - "rootUrl": "https://www.googleapis.com/", - "servicePath": "spectrum/v1explorer/paws/", - "batchPath": "batch/spectrum/v1explorer", - "parameters": { - "alt": { - "type": "string", - "description": "Data format for the response.", - "default": "json", - "enum": [ - "csv", - "json" - ], - "enumDescriptions": [ - "Responses with Content-Type of text/csv", - "Responses with Content-Type of application/json" - ], - "location": "query" + "basePath": "/spectrum/v1explorer/paws/", + "baseUrl": "https://www.googleapis.com/spectrum/v1explorer/paws/", + "batchPath": "batch/spectrum/v1explorer", + "description": "API for spectrum-management functions.", + "discoveryVersion": "v1", + "documentationLink": "http://developers.google.com/spectrum", + "etag": "\"-iA1DTNe4s-I6JZXPt1t1Ypy8IU/GtAUOiiWd9DdIaTnQ54PJcsVX7s\"", + "icons": { + "x16": "https://www.gstatic.com/images/branding/product/1x/googleg_16dp.png", + "x32": "https://www.gstatic.com/images/branding/product/1x/googleg_32dp.png" }, - "fields": { - "type": "string", - "description": "Selector specifying which fields to include in a partial response.", - "location": "query" - }, - "key": { - "type": "string", - "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" - }, - "oauth_token": { - "type": "string", - "description": "OAuth 2.0 token for the current user.", - "location": "query" - }, - "prettyPrint": { - "type": "boolean", - "description": "Returns response with indentations and line breaks.", - "default": "true", - "location": "query" - }, - "quotaUser": { - "type": "string", - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", - "location": "query" - }, - "userIp": { - "type": "string", - "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", - "location": "query" - } - }, - "schemas": { - "AntennaCharacteristics": { - "id": "AntennaCharacteristics", - "type": "object", - "description": "Antenna characteristics provide additional information, such as the antenna height, antenna type, etc. Whether antenna characteristics must be provided in a request depends on the device type and regulatory domain.", - "properties": { - "height": { - "type": "number", - "description": "The antenna height in meters. Whether the antenna height is required depends on the device type and the regulatory domain. Note that the height may be negative.", - "format": "double" - }, - "heightType": { - "type": "string", - "description": "If the height is required, then the height type (AGL for above ground level or AMSL for above mean sea level) is also required. The default is AGL." - }, - "heightUncertainty": { - "type": "number", - "description": "The height uncertainty in meters. Whether this is required depends on the regulatory domain.", - "format": "double" - } - } - }, - "DatabaseSpec": { - "id": "DatabaseSpec", - "type": "object", - "description": "This message contains the name and URI of a database.", - "properties": { - "name": { - "type": "string", - "description": "The display name for a database." - }, - "uri": { - "type": "string", - "description": "The corresponding URI of the database." - } - } - }, - "DbUpdateSpec": { - "id": "DbUpdateSpec", - "type": "object", - "description": "This message is provided by the database to notify devices of an upcoming change to the database URI.", - "properties": { - "databases": { - "type": "array", - "description": "A required list of one or more databases. A device should update its preconfigured list of databases to replace (only) the database that provided the response with the specified entries.", - "items": { - "$ref": "DatabaseSpec" - } - } - } - }, - "DeviceCapabilities": { - "id": "DeviceCapabilities", - "type": "object", - "description": "Device capabilities provide additional information that may be used by a device to provide additional information to the database that may help it to determine available spectrum. If the database does not support device capabilities it will ignore the parameter altogether.", - "properties": { - "frequencyRanges": { - "type": "array", - "description": "An optional list of frequency ranges supported by the device. Each element must contain start and stop frequencies in which the device can operate. Channel identifiers are optional. When specified, the database should not return available spectrum that falls outside these ranges or channel IDs.", - "items": { - "$ref": "FrequencyRange" - } - } - } - }, - "DeviceDescriptor": { - "id": "DeviceDescriptor", - "type": "object", - "description": "The device descriptor contains parameters that identify the specific device, such as its manufacturer serial number, regulatory-specific identifier (e.g., FCC ID), and any other device characteristics required by regulatory domains.", - "properties": { - "etsiEnDeviceCategory": { - "type": "string", - "description": "Specifies the ETSI white space device category. Valid values are the strings master and slave. This field is case-insensitive. Consult the ETSI documentation for details about the device types." - }, - "etsiEnDeviceEmissionsClass": { - "type": "string", - "description": "Specifies the ETSI white space device emissions class. The values are represented by numeric strings, such as 1, 2, etc. Consult the ETSI documentation for details about the device types." - }, - "etsiEnDeviceType": { - "type": "string", - "description": "Specifies the ETSI white space device type. Valid values are single-letter strings, such as A, B, etc. Consult the ETSI documentation for details about the device types." - }, - "etsiEnTechnologyId": { - "type": "string", - "description": "Specifies the ETSI white space device technology identifier. The string value must not exceed 64 characters in length. Consult the ETSI documentation for details about the device types." - }, - "fccId": { - "type": "string", - "description": "Specifies the device's FCC certification identifier. The value is an identifier string whose length should not exceed 32 characters. Note that, in practice, a valid FCC ID may be limited to 19 characters." - }, - "fccTvbdDeviceType": { - "type": "string", - "description": "Specifies the TV Band White Space device type, as defined by the FCC. Valid values are FIXED, MODE_1, MODE_2." - }, - "manufacturerId": { - "type": "string", - "description": "The manufacturer's ID may be required by the regulatory domain. This should represent the name of the device manufacturer, should be consistent across all devices from the same manufacturer, and should be distinct from that of other manufacturers. The string value must not exceed 64 characters in length." - }, - "modelId": { - "type": "string", - "description": "The device's model ID may be required by the regulatory domain. The string value must not exceed 64 characters in length." - }, - "rulesetIds": { - "type": "array", - "description": "The list of identifiers for rulesets supported by the device. A database may require that the device provide this list before servicing the device requests. If the database does not support any of the rulesets specified in the list, the database may refuse to service the device requests. If present, the list must contain at least one entry.\n\nFor information about the valid requests, see section 9.2 of the PAWS specification. Currently, FccTvBandWhiteSpace-2010 is the only supported ruleset.", - "items": { + "id": "spectrum:v1explorer", + "kind": "discovery#restDescription", + "name": "spectrum", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "alt": { + "default": "json", + "description": "Data format for the response.", + "enum": [ + "csv", + "json" + ], + "enumDescriptions": [ + "Responses with Content-Type of text/csv", + "Responses with Content-Type of application/json" + ], + "location": "query", "type": "string" - } }, - "serialNumber": { - "type": "string", - "description": "The manufacturer's device serial number; required by the applicable regulatory domain. The length of the value must not exceed 64 characters." - } - } - }, - "DeviceOwner": { - "id": "DeviceOwner", - "type": "object", - "description": "This parameter contains device-owner information required as part of device registration. The regulatory domains may require additional parameters.\n\nAll contact information must be expressed using the structure defined by the vCard format specification. Only the contact fields of vCard are supported: \n- fn: Full name of an individual \n- org: Name of the organization \n- adr: Address fields \n- tel: Telephone numbers \n- email: Email addresses \n\nNote that the vCard specification defines maximum lengths for each field.", - "properties": { - "operator": { - "$ref": "Vcard", - "description": "The vCard contact information for the device operator is optional, but may be required by specific regulatory domains." - }, - "owner": { - "$ref": "Vcard", - "description": "The vCard contact information for the individual or business that owns the device is required." - } - } - }, - "DeviceValidity": { - "id": "DeviceValidity", - "type": "object", - "description": "The device validity element describes whether a particular device is valid to operate in the regulatory domain.", - "properties": { - "deviceDesc": { - "$ref": "DeviceDescriptor", - "description": "The descriptor of the device for which the validity check was requested. It will always be present." - }, - "isValid": { - "type": "boolean", - "description": "The validity status: true if the device is valid for operation, false otherwise. It will always be present." - }, - "reason": { - "type": "string", - "description": "If the device identifier is not valid, the database may include a reason. The reason may be in any language. The length of the value should not exceed 128 characters." - } - } - }, - "EventTime": { - "id": "EventTime", - "type": "object", - "description": "The start and stop times of an event. This is used to indicate the time period for which a spectrum profile is valid.\n\nBoth times are expressed using the format, YYYY-MM-DDThh:mm:ssZ, as defined in RFC3339. The times must be expressed using UTC.", - "properties": { - "startTime": { - "type": "string", - "description": "The inclusive start of the event. It will be present." - }, - "stopTime": { - "type": "string", - "description": "The exclusive end of the event. It will be present." - } - } - }, - "FrequencyRange": { - "id": "FrequencyRange", - "type": "object", - "description": "A specific range of frequencies together with the associated maximum power level and channel identifier.", - "properties": { - "channelId": { - "type": "string", - "description": "The database may include a channel identifier, when applicable. When it is included, the device should treat it as informative. The length of the identifier should not exceed 16 characters." - }, - "maxPowerDBm": { - "type": "number", - "description": "The maximum total power level (EIRP)—computed over the corresponding operating bandwidth—that is permitted within the frequency range. Depending on the context in which the frequency-range element appears, this value may be required. For example, it is required in the available-spectrum response, available-spectrum-batch response, and spectrum-use notification message, but it should not be present (it is not applicable) when the frequency range appears inside a device-capabilities message.", - "format": "double" - }, - "startHz": { - "type": "number", - "description": "The required inclusive start of the frequency range (in Hertz).", - "format": "double" - }, - "stopHz": { - "type": "number", - "description": "The required exclusive end of the frequency range (in Hertz).", - "format": "double" - } - } - }, - "GeoLocation": { - "id": "GeoLocation", - "type": "object", - "description": "This parameter is used to specify the geolocation of the device.", - "properties": { - "confidence": { - "type": "integer", - "description": "The location confidence level, as an integer percentage, may be required, depending on the regulatory domain. When the parameter is optional and not provided, its value is assumed to be 95. Valid values range from 0 to 99, since, in practice, 100-percent confidence is not achievable. The confidence value is meaningful only when geolocation refers to a point with uncertainty.", - "format": "int32" - }, - "point": { - "$ref": "GeoLocationEllipse", - "description": "If present, indicates that the geolocation represents a point. Paradoxically, a point is parameterized using an ellipse, where the center represents the location of the point and the distances along the major and minor axes represent the uncertainty. The uncertainty values may be required, depending on the regulatory domain." - }, - "region": { - "$ref": "GeoLocationPolygon", - "description": "If present, indicates that the geolocation represents a region. Database support for regions is optional." - } - } - }, - "GeoLocationEllipse": { - "id": "GeoLocationEllipse", - "type": "object", - "description": "A \"point\" with uncertainty is represented using the Ellipse shape.", - "properties": { - "center": { - "$ref": "GeoLocationPoint", - "description": "A required geo-spatial point representing the center of the ellipse." - }, - "orientation": { - "type": "number", - "description": "A floating-point number that expresses the orientation of the ellipse, representing the rotation, in degrees, of the semi-major axis from North towards the East. For example, when the uncertainty is greatest along the North-South direction, orientation is 0 degrees; conversely, if the uncertainty is greatest along the East-West direction, orientation is 90 degrees. When orientation is not present, the orientation is assumed to be 0.", - "format": "double" - }, - "semiMajorAxis": { - "type": "number", - "description": "A floating-point number that expresses the location uncertainty along the major axis of the ellipse. May be required by the regulatory domain. When the uncertainty is optional, the default value is 0.", - "format": "double" - }, - "semiMinorAxis": { - "type": "number", - "description": "A floating-point number that expresses the location uncertainty along the minor axis of the ellipse. May be required by the regulatory domain. When the uncertainty is optional, the default value is 0.", - "format": "double" - } - } - }, - "GeoLocationPoint": { - "id": "GeoLocationPoint", - "type": "object", - "description": "A single geolocation on the globe.", - "properties": { - "latitude": { - "type": "number", - "description": "A required floating-point number that expresses the latitude in degrees using the WGS84 datum. For details on this encoding, see the National Imagery and Mapping Agency's Technical Report TR8350.2.", - "format": "double" - }, - "longitude": { - "type": "number", - "description": "A required floating-point number that expresses the longitude in degrees using the WGS84 datum. For details on this encoding, see the National Imagery and Mapping Agency's Technical Report TR8350.2.", - "format": "double" - } - } - }, - "GeoLocationPolygon": { - "id": "GeoLocationPolygon", - "type": "object", - "description": "A region is represented using the polygonal shape.", - "properties": { - "exterior": { - "type": "array", - "description": "When the geolocation describes a region, the exterior field refers to a list of latitude/longitude points that represent the vertices of a polygon. The first and last points must be the same. Thus, a minimum of four points is required. The following polygon restrictions from RFC5491 apply: \n- A connecting line shall not cross another connecting line of the same polygon. \n- The vertices must be defined in a counterclockwise order. \n- The edges of a polygon are defined by the shortest path between two points in space (not a geodesic curve). Consequently, the length between two adjacent vertices should be restricted to a maximum of 130 km. \n- All vertices are assumed to be at the same altitude. \n- Polygon shapes should be restricted to a maximum of 15 vertices (16 points that include the repeated vertex).", - "items": { - "$ref": "GeoLocationPoint" - } - } - } - }, - "GeoSpectrumSchedule": { - "id": "GeoSpectrumSchedule", - "type": "object", - "description": "The schedule of spectrum profiles available at a particular geolocation.", - "properties": { - "location": { - "$ref": "GeoLocation", - "description": "The geolocation identifies the location at which the spectrum schedule applies. It will always be present." - }, - "spectrumSchedules": { - "type": "array", - "description": "A list of available spectrum profiles and associated times. It will always be present, and at least one schedule must be included (though it may be empty if there is no available spectrum). More than one schedule may be included to represent future changes to the available spectrum.", - "items": { - "$ref": "SpectrumSchedule" - } - } - } - }, - "PawsGetSpectrumBatchRequest": { - "id": "PawsGetSpectrumBatchRequest", - "type": "object", - "description": "The request message for a batch available spectrum query protocol.", - "properties": { - "antenna": { - "$ref": "AntennaCharacteristics", - "description": "Depending on device type and regulatory domain, antenna characteristics may be required." - }, - "capabilities": { - "$ref": "DeviceCapabilities", - "description": "The master device may include its device capabilities to limit the available-spectrum batch response to the spectrum that is compatible with its capabilities. The database should not return spectrum that is incompatible with the specified capabilities." - }, - "deviceDesc": { - "$ref": "DeviceDescriptor", - "description": "When the available spectrum request is made on behalf of a specific device (a master or slave device), device descriptor information for the device on whose behalf the request is made is required (in such cases, the requestType parameter must be empty). When a requestType value is specified, device descriptor information may be optional or required according to the rules of the applicable regulatory domain." - }, - "locations": { - "type": "array", - "description": "A geolocation list is required. This allows a device to specify its current location plus additional anticipated locations when allowed by the regulatory domain. At least one location must be included. Geolocation must be given as the location of the radiation center of the device's antenna. If a location specifies a region, rather than a point, the database may return an UNIMPLEMENTED error if it does not support query by region.\n\nThere is no upper limit on the number of locations included in a available spectrum batch request, but the database may restrict the number of locations it supports by returning a response with fewer locations than specified in the batch request. Note that geolocations must be those of the master device (a device with geolocation capability that makes an available spectrum batch request), whether the master device is making the request on its own behalf or on behalf of a slave device (one without geolocation capability).", - "items": { - "$ref": "GeoLocation" - } - }, - "masterDeviceDesc": { - "$ref": "DeviceDescriptor", - "description": "When an available spectrum batch request is made by the master device (a device with geolocation capability) on behalf of a slave device (a device without geolocation capability), the rules of the applicable regulatory domain may require the master device to provide its own device descriptor information (in addition to device descriptor information for the slave device in a separate parameter)." - }, - "owner": { - "$ref": "DeviceOwner", - "description": "Depending on device type and regulatory domain, device owner information may be included in an available spectrum batch request. This allows the device to register and get spectrum-availability information in a single request." - }, - "requestType": { - "type": "string", - "description": "The request type parameter is an optional parameter that can be used to modify an available spectrum batch request, but its use depends on applicable regulatory rules. For example, It may be used to request generic slave device parameters without having to specify the device descriptor for a specific device. When the requestType parameter is missing, the request is for a specific device (master or slave), and the device descriptor parameter for the device on whose behalf the batch request is made is required." - }, - "type": { - "type": "string", - "description": "The message type (e.g., INIT_REQ, AVAIL_SPECTRUM_REQ, ...).\n\nRequired field." - }, - "version": { - "type": "string", - "description": "The PAWS version. Must be exactly 1.0.\n\nRequired field." - } - } - }, - "PawsGetSpectrumBatchResponse": { - "id": "PawsGetSpectrumBatchResponse", - "type": "object", - "description": "The response message for the batch available spectrum query contains a schedule of available spectrum for the device at multiple locations.", - "properties": { - "databaseChange": { - "$ref": "DbUpdateSpec", - "description": "A database may include the databaseChange parameter to notify a device of a change to its database URI, providing one or more alternate database URIs. The device should use this information to update its list of pre-configured databases by (only) replacing its entry for the responding database with the list of alternate URIs." - }, - "deviceDesc": { - "$ref": "DeviceDescriptor", - "description": "The database must return in its available spectrum response the device descriptor information it received in the master device's available spectrum batch request." - }, - "geoSpectrumSchedules": { - "type": "array", - "description": "The available spectrum batch response must contain a geo-spectrum schedule list, The list may be empty if spectrum is not available. The database may return more than one geo-spectrum schedule to represent future changes to the available spectrum. How far in advance a schedule may be provided depends upon the applicable regulatory domain. The database may return available spectrum for fewer geolocations than requested. The device must not make assumptions about the order of the entries in the list, and must use the geolocation value in each geo-spectrum schedule entry to match available spectrum to a location.", - "items": { - "$ref": "GeoSpectrumSchedule" - } - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"spectrum#pawsGetSpectrumBatchResponse\".", - "default": "spectrum#pawsGetSpectrumBatchResponse" - }, - "maxContiguousBwHz": { - "type": "number", - "description": "The database may return a constraint on the allowed maximum contiguous bandwidth (in Hertz). A regulatory domain may require the database to return this parameter. When this parameter is present in the response, the device must apply this constraint to its spectrum-selection logic to ensure that no single block of spectrum has bandwidth that exceeds this value.", - "format": "double" - }, - "maxTotalBwHz": { - "type": "number", - "description": "The database may return a constraint on the allowed maximum total bandwidth (in Hertz), which does not need to be contiguous. A regulatory domain may require the database to return this parameter. When this parameter is present in the available spectrum batch response, the device must apply this constraint to its spectrum-selection logic to ensure that total bandwidth does not exceed this value.", - "format": "double" - }, - "needsSpectrumReport": { - "type": "boolean", - "description": "For regulatory domains that require a spectrum-usage report from devices, the database must return true for this parameter if the geo-spectrum schedules list is not empty; otherwise, the database should either return false or omit this parameter. If this parameter is present and its value is true, the device must send a spectrum use notify message to the database; otherwise, the device should not send the notification." - }, - "rulesetInfo": { - "$ref": "RulesetInfo", - "description": "The database should return ruleset information, which identifies the applicable regulatory authority and ruleset for the available spectrum batch response. If included, the device must use the corresponding ruleset to interpret the response. Values provided in the returned ruleset information, such as maxLocationChange, take precedence over any conflicting values provided in the ruleset information returned in a prior initialization response sent by the database to the device." - }, - "timestamp": { - "type": "string", - "description": "The database includes a timestamp of the form, YYYY-MM-DDThh:mm:ssZ (Internet timestamp format per RFC3339), in its available spectrum batch response. The timestamp should be used by the device as a reference for the start and stop times specified in the response spectrum schedules." - }, - "type": { - "type": "string", - "description": "The message type (e.g., INIT_REQ, AVAIL_SPECTRUM_REQ, ...).\n\nRequired field." - }, - "version": { - "type": "string", - "description": "The PAWS version. Must be exactly 1.0.\n\nRequired field." - } - } - }, - "PawsGetSpectrumRequest": { - "id": "PawsGetSpectrumRequest", - "type": "object", - "description": "The request message for the available spectrum query protocol which must include the device's geolocation.", - "properties": { - "antenna": { - "$ref": "AntennaCharacteristics", - "description": "Depending on device type and regulatory domain, the characteristics of the antenna may be required." - }, - "capabilities": { - "$ref": "DeviceCapabilities", - "description": "The master device may include its device capabilities to limit the available-spectrum response to the spectrum that is compatible with its capabilities. The database should not return spectrum that is incompatible with the specified capabilities." - }, - "deviceDesc": { - "$ref": "DeviceDescriptor", - "description": "When the available spectrum request is made on behalf of a specific device (a master or slave device), device descriptor information for that device is required (in such cases, the requestType parameter must be empty). When a requestType value is specified, device descriptor information may be optional or required according to the rules of the applicable regulatory domain." - }, - "location": { - "$ref": "GeoLocation", - "description": "The geolocation of the master device (a device with geolocation capability that makes an available spectrum request) is required whether the master device is making the request on its own behalf or on behalf of a slave device (one without geolocation capability). The location must be the location of the radiation center of the master device's antenna. To support mobile devices, a regulatory domain may allow the anticipated position of the master device to be given instead. If the location specifies a region, rather than a point, the database may return an UNIMPLEMENTED error code if it does not support query by region." - }, - "masterDeviceDesc": { - "$ref": "DeviceDescriptor", - "description": "When an available spectrum request is made by the master device (a device with geolocation capability) on behalf of a slave device (a device without geolocation capability), the rules of the applicable regulatory domain may require the master device to provide its own device descriptor information (in addition to device descriptor information for the slave device, which is provided in a separate parameter)." - }, - "owner": { - "$ref": "DeviceOwner", - "description": "Depending on device type and regulatory domain, device owner information may be included in an available spectrum request. This allows the device to register and get spectrum-availability information in a single request." - }, - "requestType": { - "type": "string", - "description": "The request type parameter is an optional parameter that can be used to modify an available spectrum request, but its use depends on applicable regulatory rules. It may be used, for example, to request generic slave device parameters without having to specify the device descriptor for a specific device. When the requestType parameter is missing, the request is for a specific device (master or slave), and the deviceDesc parameter for the device on whose behalf the request is made is required." - }, - "type": { - "type": "string", - "description": "The message type (e.g., INIT_REQ, AVAIL_SPECTRUM_REQ, ...).\n\nRequired field." - }, - "version": { - "type": "string", - "description": "The PAWS version. Must be exactly 1.0.\n\nRequired field." - } - } - }, - "PawsGetSpectrumResponse": { - "id": "PawsGetSpectrumResponse", - "type": "object", - "description": "The response message for the available spectrum query which contains a schedule of available spectrum for the device.", - "properties": { - "databaseChange": { - "$ref": "DbUpdateSpec", - "description": "A database may include the databaseChange parameter to notify a device of a change to its database URI, providing one or more alternate database URIs. The device should use this information to update its list of pre-configured databases by (only) replacing its entry for the responding database with the list of alternate URIs." - }, - "deviceDesc": { - "$ref": "DeviceDescriptor", - "description": "The database must return, in its available spectrum response, the device descriptor information it received in the master device's available spectrum request." - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"spectrum#pawsGetSpectrumResponse\".", - "default": "spectrum#pawsGetSpectrumResponse" - }, - "maxContiguousBwHz": { - "type": "number", - "description": "The database may return a constraint on the allowed maximum contiguous bandwidth (in Hertz). A regulatory domain may require the database to return this parameter. When this parameter is present in the response, the device must apply this constraint to its spectrum-selection logic to ensure that no single block of spectrum has bandwidth that exceeds this value.", - "format": "double" - }, - "maxTotalBwHz": { - "type": "number", - "description": "The database may return a constraint on the allowed maximum total bandwidth (in Hertz), which need not be contiguous. A regulatory domain may require the database to return this parameter. When this parameter is present in the available spectrum response, the device must apply this constraint to its spectrum-selection logic to ensure that total bandwidth does not exceed this value.", - "format": "double" - }, - "needsSpectrumReport": { - "type": "boolean", - "description": "For regulatory domains that require a spectrum-usage report from devices, the database must return true for this parameter if the spectrum schedule list is not empty; otherwise, the database will either return false or omit this parameter. If this parameter is present and its value is true, the device must send a spectrum use notify message to the database; otherwise, the device must not send the notification." - }, - "rulesetInfo": { - "$ref": "RulesetInfo", - "description": "The database should return ruleset information, which identifies the applicable regulatory authority and ruleset for the available spectrum response. If included, the device must use the corresponding ruleset to interpret the response. Values provided in the returned ruleset information, such as maxLocationChange, take precedence over any conflicting values provided in the ruleset information returned in a prior initialization response sent by the database to the device." - }, - "spectrumSchedules": { - "type": "array", - "description": "The available spectrum response must contain a spectrum schedule list. The list may be empty if spectrum is not available. The database may return more than one spectrum schedule to represent future changes to the available spectrum. How far in advance a schedule may be provided depends on the applicable regulatory domain.", - "items": { - "$ref": "SpectrumSchedule" - } - }, - "timestamp": { - "type": "string", - "description": "The database includes a timestamp of the form YYYY-MM-DDThh:mm:ssZ (Internet timestamp format per RFC3339) in its available spectrum response. The timestamp should be used by the device as a reference for the start and stop times specified in the response spectrum schedules." - }, - "type": { - "type": "string", - "description": "The message type (e.g., INIT_REQ, AVAIL_SPECTRUM_REQ, ...).\n\nRequired field." - }, - "version": { - "type": "string", - "description": "The PAWS version. Must be exactly 1.0.\n\nRequired field." - } - } - }, - "PawsInitRequest": { - "id": "PawsInitRequest", - "type": "object", - "description": "The initialization request message allows the master device to initiate exchange of capabilities with the database.", - "properties": { - "deviceDesc": { - "$ref": "DeviceDescriptor", - "description": "The DeviceDescriptor parameter is required. If the database does not support the device or any of the rulesets specified in the device descriptor, it must return an UNSUPPORTED error code in the error response." - }, - "location": { - "$ref": "GeoLocation", - "description": "A device's geolocation is required." - }, - "type": { - "type": "string", - "description": "The message type (e.g., INIT_REQ, AVAIL_SPECTRUM_REQ, ...).\n\nRequired field." - }, - "version": { - "type": "string", - "description": "The PAWS version. Must be exactly 1.0.\n\nRequired field." - } - } - }, - "PawsInitResponse": { - "id": "PawsInitResponse", - "type": "object", - "description": "The initialization response message communicates database parameters to the requesting device.", - "properties": { - "databaseChange": { - "$ref": "DbUpdateSpec", - "description": "A database may include the databaseChange parameter to notify a device of a change to its database URI, providing one or more alternate database URIs. The device should use this information to update its list of pre-configured databases by (only) replacing its entry for the responding database with the list of alternate URIs." - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"spectrum#pawsInitResponse\".", - "default": "spectrum#pawsInitResponse" - }, - "rulesetInfo": { - "$ref": "RulesetInfo", - "description": "The rulesetInfo parameter must be included in the response. This parameter specifies the regulatory domain and parameters applicable to that domain. The database must include the authority field, which defines the regulatory domain for the location specified in the INIT_REQ message." - }, - "type": { - "type": "string", - "description": "The message type (e.g., INIT_REQ, AVAIL_SPECTRUM_REQ, ...).\n\nRequired field." - }, - "version": { - "type": "string", - "description": "The PAWS version. Must be exactly 1.0.\n\nRequired field." - } - } - }, - "PawsNotifySpectrumUseRequest": { - "id": "PawsNotifySpectrumUseRequest", - "type": "object", - "description": "The spectrum-use notification message which must contain the geolocation of the Device and parameters required by the regulatory domain.", - "properties": { - "deviceDesc": { - "$ref": "DeviceDescriptor", - "description": "Device descriptor information is required in the spectrum-use notification message." - }, - "location": { - "$ref": "GeoLocation", - "description": "The geolocation of the master device (the device that is sending the spectrum-use notification) to the database is required in the spectrum-use notification message." - }, - "spectra": { - "type": "array", - "description": "A spectrum list is required in the spectrum-use notification. The list specifies the spectrum that the device expects to use, which includes frequency ranges and maximum power levels. The list may be empty if the device decides not to use any of spectrum. For consistency, the psdBandwidthHz value should match that from one of the spectrum elements in the corresponding available spectrum response previously sent to the device by the database. Note that maximum power levels in the spectrum element must be expressed as power spectral density over the specified psdBandwidthHz value. The actual bandwidth to be used (as computed from the start and stop frequencies) may be different from the psdBandwidthHz value. As an example, when regulatory rules express maximum power spectral density in terms of maximum power over any 100 kHz band, then the psdBandwidthHz value should be set to 100 kHz, even though the actual bandwidth used can be 20 kHz.", - "items": { - "$ref": "SpectrumMessage" - } - }, - "type": { - "type": "string", - "description": "The message type (e.g., INIT_REQ, AVAIL_SPECTRUM_REQ, ...).\n\nRequired field." - }, - "version": { - "type": "string", - "description": "The PAWS version. Must be exactly 1.0.\n\nRequired field." - } - } - }, - "PawsNotifySpectrumUseResponse": { - "id": "PawsNotifySpectrumUseResponse", - "type": "object", - "description": "An empty response to the notification.", - "properties": { - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"spectrum#pawsNotifySpectrumUseResponse\".", - "default": "spectrum#pawsNotifySpectrumUseResponse" - }, - "type": { - "type": "string", - "description": "The message type (e.g., INIT_REQ, AVAIL_SPECTRUM_REQ, ...).\n\nRequired field." - }, - "version": { - "type": "string", - "description": "The PAWS version. Must be exactly 1.0.\n\nRequired field." - } - } - }, - "PawsRegisterRequest": { - "id": "PawsRegisterRequest", - "type": "object", - "description": "The registration request message contains the required registration parameters.", - "properties": { - "antenna": { - "$ref": "AntennaCharacteristics", - "description": "Antenna characteristics, including its height and height type." - }, - "deviceDesc": { - "$ref": "DeviceDescriptor", - "description": "A DeviceDescriptor is required." - }, - "deviceOwner": { - "$ref": "DeviceOwner", - "description": "Device owner information is required." - }, - "location": { - "$ref": "GeoLocation", - "description": "A device's geolocation is required." - }, - "type": { - "type": "string", - "description": "The message type (e.g., INIT_REQ, AVAIL_SPECTRUM_REQ, ...).\n\nRequired field." - }, - "version": { - "type": "string", - "description": "The PAWS version. Must be exactly 1.0.\n\nRequired field." - } - } - }, - "PawsRegisterResponse": { - "id": "PawsRegisterResponse", - "type": "object", - "description": "The registration response message simply acknowledges receipt of the request and is otherwise empty.", - "properties": { - "databaseChange": { - "$ref": "DbUpdateSpec", - "description": "A database may include the databaseChange parameter to notify a device of a change to its database URI, providing one or more alternate database URIs. The device should use this information to update its list of pre-configured databases by (only) replacing its entry for the responding database with the list of alternate URIs." - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"spectrum#pawsRegisterResponse\".", - "default": "spectrum#pawsRegisterResponse" - }, - "type": { - "type": "string", - "description": "The message type (e.g., INIT_REQ, AVAIL_SPECTRUM_REQ, ...).\n\nRequired field." - }, - "version": { - "type": "string", - "description": "The PAWS version. Must be exactly 1.0.\n\nRequired field." - } - } - }, - "PawsVerifyDeviceRequest": { - "id": "PawsVerifyDeviceRequest", - "type": "object", - "description": "The device validation request message.", - "properties": { - "deviceDescs": { - "type": "array", - "description": "A list of device descriptors, which specifies the slave devices to be validated, is required.", - "items": { - "$ref": "DeviceDescriptor" - } - }, - "type": { - "type": "string", - "description": "The message type (e.g., INIT_REQ, AVAIL_SPECTRUM_REQ, ...).\n\nRequired field." - }, - "version": { - "type": "string", - "description": "The PAWS version. Must be exactly 1.0.\n\nRequired field." - } - } - }, - "PawsVerifyDeviceResponse": { - "id": "PawsVerifyDeviceResponse", - "type": "object", - "description": "The device validation response message.", - "properties": { - "databaseChange": { - "$ref": "DbUpdateSpec", - "description": "A database may include the databaseChange parameter to notify a device of a change to its database URI, providing one or more alternate database URIs. The device should use this information to update its list of pre-configured databases by (only) replacing its entry for the responding database with the list of alternate URIs." - }, - "deviceValidities": { - "type": "array", - "description": "A device validities list is required in the device validation response to report whether each slave device listed in a previous device validation request is valid. The number of entries must match the number of device descriptors listed in the previous device validation request.", - "items": { - "$ref": "DeviceValidity" - } - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"spectrum#pawsVerifyDeviceResponse\".", - "default": "spectrum#pawsVerifyDeviceResponse" - }, - "type": { - "type": "string", - "description": "The message type (e.g., INIT_REQ, AVAIL_SPECTRUM_REQ, ...).\n\nRequired field." - }, - "version": { - "type": "string", - "description": "The PAWS version. Must be exactly 1.0.\n\nRequired field." - } - } - }, - "RulesetInfo": { - "id": "RulesetInfo", - "type": "object", - "description": "This contains parameters for the ruleset of a regulatory domain that is communicated using the initialization and available-spectrum processes.", - "properties": { - "authority": { - "type": "string", - "description": "The regulatory domain to which the ruleset belongs is required. It must be a 2-letter country code. The device should use this to determine additional device behavior required by the associated regulatory domain." - }, - "maxLocationChange": { - "type": "number", - "description": "The maximum location change in meters is required in the initialization response, but optional otherwise. When the device changes location by more than this specified distance, it must contact the database to get the available spectrum for the new location. If the device is using spectrum that is no longer available, it must immediately cease use of the spectrum under rules for database-managed spectrum. If this value is provided within the context of an available-spectrum response, it takes precedence over the value within the initialization response.", - "format": "double" - }, - "maxPollingSecs": { - "type": "integer", - "description": "The maximum duration, in seconds, between requests for available spectrum. It is required in the initialization response, but optional otherwise. The device must contact the database to get available spectrum no less frequently than this duration. If the new spectrum information indicates that the device is using spectrum that is no longer available, it must immediately cease use of those frequencies under rules for database-managed spectrum. If this value is provided within the context of an available-spectrum response, it takes precedence over the value within the initialization response.", - "format": "int32" - }, - "rulesetIds": { - "type": "array", - "description": "The identifiers of the rulesets supported for the device's location. The database should include at least one applicable ruleset in the initialization response. The device may use the ruleset identifiers to determine parameters to include in subsequent requests. Within the context of the available-spectrum responses, the database should include the identifier of the ruleset that it used to determine the available-spectrum response. If included, the device must use the specified ruleset to interpret the response. If the device does not support the indicated ruleset, it must not operate in the spectrum governed by the ruleset.", - "items": { + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "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.", + "location": "query", + "type": "string" + }, + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", + "location": "query", + "type": "string" + }, + "userIp": { + "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", + "location": "query", "type": "string" - } } - } }, - "SpectrumMessage": { - "id": "SpectrumMessage", - "type": "object", - "description": "Available spectrum can be logically characterized by a list of frequency ranges and permissible power levels for each range.", - "properties": { - "bandwidth": { - "type": "number", - "description": "The bandwidth (in Hertz) for which permissible power levels are specified. For example, FCC regulation would require only one spectrum specification at 6MHz bandwidth, but Ofcom regulation would require two specifications, at 0.1MHz and 8MHz. This parameter may be empty if there is no available spectrum. It will be present otherwise.", - "format": "double" - }, - "frequencyRanges": { - "type": "array", - "description": "The list of frequency ranges and permissible power levels. The list may be empty if there is no available spectrum, otherwise it will be present.", - "items": { - "$ref": "FrequencyRange" - } + "protocol": "rest", + "resources": { + "paws": { + "methods": { + "getSpectrum": { + "description": "Requests information about the available spectrum for a device at a location. Requests from a fixed-mode device must include owner information so the device can be registered with the database.", + "httpMethod": "POST", + "id": "spectrum.paws.getSpectrum", + "path": "getSpectrum", + "request": { + "$ref": "PawsGetSpectrumRequest" + }, + "response": { + "$ref": "PawsGetSpectrumResponse" + } + }, + "getSpectrumBatch": { + "description": "The Google Spectrum Database does not support batch requests, so this method always yields an UNIMPLEMENTED error.", + "httpMethod": "POST", + "id": "spectrum.paws.getSpectrumBatch", + "path": "getSpectrumBatch", + "request": { + "$ref": "PawsGetSpectrumBatchRequest" + }, + "response": { + "$ref": "PawsGetSpectrumBatchResponse" + } + }, + "init": { + "description": "Initializes the connection between a white space device and the database.", + "httpMethod": "POST", + "id": "spectrum.paws.init", + "path": "init", + "request": { + "$ref": "PawsInitRequest" + }, + "response": { + "$ref": "PawsInitResponse" + } + }, + "notifySpectrumUse": { + "description": "Notifies the database that the device has selected certain frequency ranges for transmission. Only to be invoked when required by the regulator. The Google Spectrum Database does not operate in domains that require notification, so this always yields an UNIMPLEMENTED error.", + "httpMethod": "POST", + "id": "spectrum.paws.notifySpectrumUse", + "path": "notifySpectrumUse", + "request": { + "$ref": "PawsNotifySpectrumUseRequest" + }, + "response": { + "$ref": "PawsNotifySpectrumUseResponse" + } + }, + "register": { + "description": "The Google Spectrum Database implements registration in the getSpectrum method. As such this always returns an UNIMPLEMENTED error.", + "httpMethod": "POST", + "id": "spectrum.paws.register", + "path": "register", + "request": { + "$ref": "PawsRegisterRequest" + }, + "response": { + "$ref": "PawsRegisterResponse" + } + }, + "verifyDevice": { + "description": "Validates a device for white space use in accordance with regulatory rules. The Google Spectrum Database does not support master/slave configurations, so this always yields an UNIMPLEMENTED error.", + "httpMethod": "POST", + "id": "spectrum.paws.verifyDevice", + "path": "verifyDevice", + "request": { + "$ref": "PawsVerifyDeviceRequest" + }, + "response": { + "$ref": "PawsVerifyDeviceResponse" + } + } + } } - } }, - "SpectrumSchedule": { - "id": "SpectrumSchedule", - "type": "object", - "description": "The spectrum schedule element combines an event time with spectrum profile to define a time period in which the profile is valid.", - "properties": { - "eventTime": { - "$ref": "EventTime", - "description": "The event time expresses when the spectrum profile is valid. It will always be present." + "revision": "20180202", + "rootUrl": "https://www.googleapis.com/", + "schemas": { + "AntennaCharacteristics": { + "description": "Antenna characteristics provide additional information, such as the antenna height, antenna type, etc. Whether antenna characteristics must be provided in a request depends on the device type and regulatory domain.", + "id": "AntennaCharacteristics", + "properties": { + "height": { + "description": "The antenna height in meters. Whether the antenna height is required depends on the device type and the regulatory domain. Note that the height may be negative.", + "format": "double", + "type": "number" + }, + "heightType": { + "description": "If the height is required, then the height type (AGL for above ground level or AMSL for above mean sea level) is also required. The default is AGL.", + "type": "string" + }, + "heightUncertainty": { + "description": "The height uncertainty in meters. Whether this is required depends on the regulatory domain.", + "format": "double", + "type": "number" + } + }, + "type": "object" }, - "spectra": { - "type": "array", - "description": "A list of spectrum messages representing the usable profile. It will always be present, but may be empty when there is no available spectrum.", - "items": { - "$ref": "SpectrumMessage" - } + "DatabaseSpec": { + "description": "This message contains the name and URI of a database.", + "id": "DatabaseSpec", + "properties": { + "name": { + "description": "The display name for a database.", + "type": "string" + }, + "uri": { + "description": "The corresponding URI of the database.", + "type": "string" + } + }, + "type": "object" + }, + "DbUpdateSpec": { + "description": "This message is provided by the database to notify devices of an upcoming change to the database URI.", + "id": "DbUpdateSpec", + "properties": { + "databases": { + "description": "A required list of one or more databases. A device should update its preconfigured list of databases to replace (only) the database that provided the response with the specified entries.", + "items": { + "$ref": "DatabaseSpec" + }, + "type": "array" + } + }, + "type": "object" + }, + "DeviceCapabilities": { + "description": "Device capabilities provide additional information that may be used by a device to provide additional information to the database that may help it to determine available spectrum. If the database does not support device capabilities it will ignore the parameter altogether.", + "id": "DeviceCapabilities", + "properties": { + "frequencyRanges": { + "description": "An optional list of frequency ranges supported by the device. Each element must contain start and stop frequencies in which the device can operate. Channel identifiers are optional. When specified, the database should not return available spectrum that falls outside these ranges or channel IDs.", + "items": { + "$ref": "FrequencyRange" + }, + "type": "array" + } + }, + "type": "object" + }, + "DeviceDescriptor": { + "description": "The device descriptor contains parameters that identify the specific device, such as its manufacturer serial number, regulatory-specific identifier (e.g., FCC ID), and any other device characteristics required by regulatory domains.", + "id": "DeviceDescriptor", + "properties": { + "etsiEnDeviceCategory": { + "description": "Specifies the ETSI white space device category. Valid values are the strings master and slave. This field is case-insensitive. Consult the ETSI documentation for details about the device types.", + "type": "string" + }, + "etsiEnDeviceEmissionsClass": { + "description": "Specifies the ETSI white space device emissions class. The values are represented by numeric strings, such as 1, 2, etc. Consult the ETSI documentation for details about the device types.", + "type": "string" + }, + "etsiEnDeviceType": { + "description": "Specifies the ETSI white space device type. Valid values are single-letter strings, such as A, B, etc. Consult the ETSI documentation for details about the device types.", + "type": "string" + }, + "etsiEnTechnologyId": { + "description": "Specifies the ETSI white space device technology identifier. The string value must not exceed 64 characters in length. Consult the ETSI documentation for details about the device types.", + "type": "string" + }, + "fccId": { + "description": "Specifies the device's FCC certification identifier. The value is an identifier string whose length should not exceed 32 characters. Note that, in practice, a valid FCC ID may be limited to 19 characters.", + "type": "string" + }, + "fccTvbdDeviceType": { + "description": "Specifies the TV Band White Space device type, as defined by the FCC. Valid values are FIXED, MODE_1, MODE_2.", + "type": "string" + }, + "manufacturerId": { + "description": "The manufacturer's ID may be required by the regulatory domain. This should represent the name of the device manufacturer, should be consistent across all devices from the same manufacturer, and should be distinct from that of other manufacturers. The string value must not exceed 64 characters in length.", + "type": "string" + }, + "modelId": { + "description": "The device's model ID may be required by the regulatory domain. The string value must not exceed 64 characters in length.", + "type": "string" + }, + "rulesetIds": { + "description": "The list of identifiers for rulesets supported by the device. A database may require that the device provide this list before servicing the device requests. If the database does not support any of the rulesets specified in the list, the database may refuse to service the device requests. If present, the list must contain at least one entry.\n\nFor information about the valid requests, see section 9.2 of the PAWS specification. Currently, FccTvBandWhiteSpace-2010 is the only supported ruleset.", + "items": { + "type": "string" + }, + "type": "array" + }, + "serialNumber": { + "description": "The manufacturer's device serial number; required by the applicable regulatory domain. The length of the value must not exceed 64 characters.", + "type": "string" + } + }, + "type": "object" + }, + "DeviceOwner": { + "description": "This parameter contains device-owner information required as part of device registration. The regulatory domains may require additional parameters.\n\nAll contact information must be expressed using the structure defined by the vCard format specification. Only the contact fields of vCard are supported: \n- fn: Full name of an individual \n- org: Name of the organization \n- adr: Address fields \n- tel: Telephone numbers \n- email: Email addresses \n\nNote that the vCard specification defines maximum lengths for each field.", + "id": "DeviceOwner", + "properties": { + "operator": { + "$ref": "Vcard", + "description": "The vCard contact information for the device operator is optional, but may be required by specific regulatory domains." + }, + "owner": { + "$ref": "Vcard", + "description": "The vCard contact information for the individual or business that owns the device is required." + } + }, + "type": "object" + }, + "DeviceValidity": { + "description": "The device validity element describes whether a particular device is valid to operate in the regulatory domain.", + "id": "DeviceValidity", + "properties": { + "deviceDesc": { + "$ref": "DeviceDescriptor", + "description": "The descriptor of the device for which the validity check was requested. It will always be present." + }, + "isValid": { + "description": "The validity status: true if the device is valid for operation, false otherwise. It will always be present.", + "type": "boolean" + }, + "reason": { + "description": "If the device identifier is not valid, the database may include a reason. The reason may be in any language. The length of the value should not exceed 128 characters.", + "type": "string" + } + }, + "type": "object" + }, + "EventTime": { + "description": "The start and stop times of an event. This is used to indicate the time period for which a spectrum profile is valid.\n\nBoth times are expressed using the format, YYYY-MM-DDThh:mm:ssZ, as defined in RFC3339. The times must be expressed using UTC.", + "id": "EventTime", + "properties": { + "startTime": { + "description": "The inclusive start of the event. It will be present.", + "type": "string" + }, + "stopTime": { + "description": "The exclusive end of the event. It will be present.", + "type": "string" + } + }, + "type": "object" + }, + "FrequencyRange": { + "description": "A specific range of frequencies together with the associated maximum power level and channel identifier.", + "id": "FrequencyRange", + "properties": { + "channelId": { + "description": "The database may include a channel identifier, when applicable. When it is included, the device should treat it as informative. The length of the identifier should not exceed 16 characters.", + "type": "string" + }, + "maxPowerDBm": { + "description": "The maximum total power level (EIRP)—computed over the corresponding operating bandwidth—that is permitted within the frequency range. Depending on the context in which the frequency-range element appears, this value may be required. For example, it is required in the available-spectrum response, available-spectrum-batch response, and spectrum-use notification message, but it should not be present (it is not applicable) when the frequency range appears inside a device-capabilities message.", + "format": "double", + "type": "number" + }, + "startHz": { + "description": "The required inclusive start of the frequency range (in Hertz).", + "format": "double", + "type": "number" + }, + "stopHz": { + "description": "The required exclusive end of the frequency range (in Hertz).", + "format": "double", + "type": "number" + } + }, + "type": "object" + }, + "GeoLocation": { + "description": "This parameter is used to specify the geolocation of the device.", + "id": "GeoLocation", + "properties": { + "confidence": { + "description": "The location confidence level, as an integer percentage, may be required, depending on the regulatory domain. When the parameter is optional and not provided, its value is assumed to be 95. Valid values range from 0 to 99, since, in practice, 100-percent confidence is not achievable. The confidence value is meaningful only when geolocation refers to a point with uncertainty.", + "format": "int32", + "type": "integer" + }, + "point": { + "$ref": "GeoLocationEllipse", + "description": "If present, indicates that the geolocation represents a point. Paradoxically, a point is parameterized using an ellipse, where the center represents the location of the point and the distances along the major and minor axes represent the uncertainty. The uncertainty values may be required, depending on the regulatory domain." + }, + "region": { + "$ref": "GeoLocationPolygon", + "description": "If present, indicates that the geolocation represents a region. Database support for regions is optional." + } + }, + "type": "object" + }, + "GeoLocationEllipse": { + "description": "A \"point\" with uncertainty is represented using the Ellipse shape.", + "id": "GeoLocationEllipse", + "properties": { + "center": { + "$ref": "GeoLocationPoint", + "description": "A required geo-spatial point representing the center of the ellipse." + }, + "orientation": { + "description": "A floating-point number that expresses the orientation of the ellipse, representing the rotation, in degrees, of the semi-major axis from North towards the East. For example, when the uncertainty is greatest along the North-South direction, orientation is 0 degrees; conversely, if the uncertainty is greatest along the East-West direction, orientation is 90 degrees. When orientation is not present, the orientation is assumed to be 0.", + "format": "double", + "type": "number" + }, + "semiMajorAxis": { + "description": "A floating-point number that expresses the location uncertainty along the major axis of the ellipse. May be required by the regulatory domain. When the uncertainty is optional, the default value is 0.", + "format": "double", + "type": "number" + }, + "semiMinorAxis": { + "description": "A floating-point number that expresses the location uncertainty along the minor axis of the ellipse. May be required by the regulatory domain. When the uncertainty is optional, the default value is 0.", + "format": "double", + "type": "number" + } + }, + "type": "object" + }, + "GeoLocationPoint": { + "description": "A single geolocation on the globe.", + "id": "GeoLocationPoint", + "properties": { + "latitude": { + "description": "A required floating-point number that expresses the latitude in degrees using the WGS84 datum. For details on this encoding, see the National Imagery and Mapping Agency's Technical Report TR8350.2.", + "format": "double", + "type": "number" + }, + "longitude": { + "description": "A required floating-point number that expresses the longitude in degrees using the WGS84 datum. For details on this encoding, see the National Imagery and Mapping Agency's Technical Report TR8350.2.", + "format": "double", + "type": "number" + } + }, + "type": "object" + }, + "GeoLocationPolygon": { + "description": "A region is represented using the polygonal shape.", + "id": "GeoLocationPolygon", + "properties": { + "exterior": { + "description": "When the geolocation describes a region, the exterior field refers to a list of latitude/longitude points that represent the vertices of a polygon. The first and last points must be the same. Thus, a minimum of four points is required. The following polygon restrictions from RFC5491 apply: \n- A connecting line shall not cross another connecting line of the same polygon. \n- The vertices must be defined in a counterclockwise order. \n- The edges of a polygon are defined by the shortest path between two points in space (not a geodesic curve). Consequently, the length between two adjacent vertices should be restricted to a maximum of 130 km. \n- All vertices are assumed to be at the same altitude. \n- Polygon shapes should be restricted to a maximum of 15 vertices (16 points that include the repeated vertex).", + "items": { + "$ref": "GeoLocationPoint" + }, + "type": "array" + } + }, + "type": "object" + }, + "GeoSpectrumSchedule": { + "description": "The schedule of spectrum profiles available at a particular geolocation.", + "id": "GeoSpectrumSchedule", + "properties": { + "location": { + "$ref": "GeoLocation", + "description": "The geolocation identifies the location at which the spectrum schedule applies. It will always be present." + }, + "spectrumSchedules": { + "description": "A list of available spectrum profiles and associated times. It will always be present, and at least one schedule must be included (though it may be empty if there is no available spectrum). More than one schedule may be included to represent future changes to the available spectrum.", + "items": { + "$ref": "SpectrumSchedule" + }, + "type": "array" + } + }, + "type": "object" + }, + "PawsGetSpectrumBatchRequest": { + "description": "The request message for a batch available spectrum query protocol.", + "id": "PawsGetSpectrumBatchRequest", + "properties": { + "antenna": { + "$ref": "AntennaCharacteristics", + "description": "Depending on device type and regulatory domain, antenna characteristics may be required." + }, + "capabilities": { + "$ref": "DeviceCapabilities", + "description": "The master device may include its device capabilities to limit the available-spectrum batch response to the spectrum that is compatible with its capabilities. The database should not return spectrum that is incompatible with the specified capabilities." + }, + "deviceDesc": { + "$ref": "DeviceDescriptor", + "description": "When the available spectrum request is made on behalf of a specific device (a master or slave device), device descriptor information for the device on whose behalf the request is made is required (in such cases, the requestType parameter must be empty). When a requestType value is specified, device descriptor information may be optional or required according to the rules of the applicable regulatory domain." + }, + "locations": { + "description": "A geolocation list is required. This allows a device to specify its current location plus additional anticipated locations when allowed by the regulatory domain. At least one location must be included. Geolocation must be given as the location of the radiation center of the device's antenna. If a location specifies a region, rather than a point, the database may return an UNIMPLEMENTED error if it does not support query by region.\n\nThere is no upper limit on the number of locations included in a available spectrum batch request, but the database may restrict the number of locations it supports by returning a response with fewer locations than specified in the batch request. Note that geolocations must be those of the master device (a device with geolocation capability that makes an available spectrum batch request), whether the master device is making the request on its own behalf or on behalf of a slave device (one without geolocation capability).", + "items": { + "$ref": "GeoLocation" + }, + "type": "array" + }, + "masterDeviceDesc": { + "$ref": "DeviceDescriptor", + "description": "When an available spectrum batch request is made by the master device (a device with geolocation capability) on behalf of a slave device (a device without geolocation capability), the rules of the applicable regulatory domain may require the master device to provide its own device descriptor information (in addition to device descriptor information for the slave device in a separate parameter)." + }, + "owner": { + "$ref": "DeviceOwner", + "description": "Depending on device type and regulatory domain, device owner information may be included in an available spectrum batch request. This allows the device to register and get spectrum-availability information in a single request." + }, + "requestType": { + "description": "The request type parameter is an optional parameter that can be used to modify an available spectrum batch request, but its use depends on applicable regulatory rules. For example, It may be used to request generic slave device parameters without having to specify the device descriptor for a specific device. When the requestType parameter is missing, the request is for a specific device (master or slave), and the device descriptor parameter for the device on whose behalf the batch request is made is required.", + "type": "string" + }, + "type": { + "description": "The message type (e.g., INIT_REQ, AVAIL_SPECTRUM_REQ, ...).\n\nRequired field.", + "type": "string" + }, + "version": { + "description": "The PAWS version. Must be exactly 1.0.\n\nRequired field.", + "type": "string" + } + }, + "type": "object" + }, + "PawsGetSpectrumBatchResponse": { + "description": "The response message for the batch available spectrum query contains a schedule of available spectrum for the device at multiple locations.", + "id": "PawsGetSpectrumBatchResponse", + "properties": { + "databaseChange": { + "$ref": "DbUpdateSpec", + "description": "A database may include the databaseChange parameter to notify a device of a change to its database URI, providing one or more alternate database URIs. The device should use this information to update its list of pre-configured databases by (only) replacing its entry for the responding database with the list of alternate URIs." + }, + "deviceDesc": { + "$ref": "DeviceDescriptor", + "description": "The database must return in its available spectrum response the device descriptor information it received in the master device's available spectrum batch request." + }, + "geoSpectrumSchedules": { + "description": "The available spectrum batch response must contain a geo-spectrum schedule list, The list may be empty if spectrum is not available. The database may return more than one geo-spectrum schedule to represent future changes to the available spectrum. How far in advance a schedule may be provided depends upon the applicable regulatory domain. The database may return available spectrum for fewer geolocations than requested. The device must not make assumptions about the order of the entries in the list, and must use the geolocation value in each geo-spectrum schedule entry to match available spectrum to a location.", + "items": { + "$ref": "GeoSpectrumSchedule" + }, + "type": "array" + }, + "kind": { + "default": "spectrum#pawsGetSpectrumBatchResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"spectrum#pawsGetSpectrumBatchResponse\".", + "type": "string" + }, + "maxContiguousBwHz": { + "description": "The database may return a constraint on the allowed maximum contiguous bandwidth (in Hertz). A regulatory domain may require the database to return this parameter. When this parameter is present in the response, the device must apply this constraint to its spectrum-selection logic to ensure that no single block of spectrum has bandwidth that exceeds this value.", + "format": "double", + "type": "number" + }, + "maxTotalBwHz": { + "description": "The database may return a constraint on the allowed maximum total bandwidth (in Hertz), which does not need to be contiguous. A regulatory domain may require the database to return this parameter. When this parameter is present in the available spectrum batch response, the device must apply this constraint to its spectrum-selection logic to ensure that total bandwidth does not exceed this value.", + "format": "double", + "type": "number" + }, + "needsSpectrumReport": { + "description": "For regulatory domains that require a spectrum-usage report from devices, the database must return true for this parameter if the geo-spectrum schedules list is not empty; otherwise, the database should either return false or omit this parameter. If this parameter is present and its value is true, the device must send a spectrum use notify message to the database; otherwise, the device should not send the notification.", + "type": "boolean" + }, + "rulesetInfo": { + "$ref": "RulesetInfo", + "description": "The database should return ruleset information, which identifies the applicable regulatory authority and ruleset for the available spectrum batch response. If included, the device must use the corresponding ruleset to interpret the response. Values provided in the returned ruleset information, such as maxLocationChange, take precedence over any conflicting values provided in the ruleset information returned in a prior initialization response sent by the database to the device." + }, + "timestamp": { + "description": "The database includes a timestamp of the form, YYYY-MM-DDThh:mm:ssZ (Internet timestamp format per RFC3339), in its available spectrum batch response. The timestamp should be used by the device as a reference for the start and stop times specified in the response spectrum schedules.", + "type": "string" + }, + "type": { + "description": "The message type (e.g., INIT_REQ, AVAIL_SPECTRUM_REQ, ...).\n\nRequired field.", + "type": "string" + }, + "version": { + "description": "The PAWS version. Must be exactly 1.0.\n\nRequired field.", + "type": "string" + } + }, + "type": "object" + }, + "PawsGetSpectrumRequest": { + "description": "The request message for the available spectrum query protocol which must include the device's geolocation.", + "id": "PawsGetSpectrumRequest", + "properties": { + "antenna": { + "$ref": "AntennaCharacteristics", + "description": "Depending on device type and regulatory domain, the characteristics of the antenna may be required." + }, + "capabilities": { + "$ref": "DeviceCapabilities", + "description": "The master device may include its device capabilities to limit the available-spectrum response to the spectrum that is compatible with its capabilities. The database should not return spectrum that is incompatible with the specified capabilities." + }, + "deviceDesc": { + "$ref": "DeviceDescriptor", + "description": "When the available spectrum request is made on behalf of a specific device (a master or slave device), device descriptor information for that device is required (in such cases, the requestType parameter must be empty). When a requestType value is specified, device descriptor information may be optional or required according to the rules of the applicable regulatory domain." + }, + "location": { + "$ref": "GeoLocation", + "description": "The geolocation of the master device (a device with geolocation capability that makes an available spectrum request) is required whether the master device is making the request on its own behalf or on behalf of a slave device (one without geolocation capability). The location must be the location of the radiation center of the master device's antenna. To support mobile devices, a regulatory domain may allow the anticipated position of the master device to be given instead. If the location specifies a region, rather than a point, the database may return an UNIMPLEMENTED error code if it does not support query by region." + }, + "masterDeviceDesc": { + "$ref": "DeviceDescriptor", + "description": "When an available spectrum request is made by the master device (a device with geolocation capability) on behalf of a slave device (a device without geolocation capability), the rules of the applicable regulatory domain may require the master device to provide its own device descriptor information (in addition to device descriptor information for the slave device, which is provided in a separate parameter)." + }, + "owner": { + "$ref": "DeviceOwner", + "description": "Depending on device type and regulatory domain, device owner information may be included in an available spectrum request. This allows the device to register and get spectrum-availability information in a single request." + }, + "requestType": { + "description": "The request type parameter is an optional parameter that can be used to modify an available spectrum request, but its use depends on applicable regulatory rules. It may be used, for example, to request generic slave device parameters without having to specify the device descriptor for a specific device. When the requestType parameter is missing, the request is for a specific device (master or slave), and the deviceDesc parameter for the device on whose behalf the request is made is required.", + "type": "string" + }, + "type": { + "description": "The message type (e.g., INIT_REQ, AVAIL_SPECTRUM_REQ, ...).\n\nRequired field.", + "type": "string" + }, + "version": { + "description": "The PAWS version. Must be exactly 1.0.\n\nRequired field.", + "type": "string" + } + }, + "type": "object" + }, + "PawsGetSpectrumResponse": { + "description": "The response message for the available spectrum query which contains a schedule of available spectrum for the device.", + "id": "PawsGetSpectrumResponse", + "properties": { + "databaseChange": { + "$ref": "DbUpdateSpec", + "description": "A database may include the databaseChange parameter to notify a device of a change to its database URI, providing one or more alternate database URIs. The device should use this information to update its list of pre-configured databases by (only) replacing its entry for the responding database with the list of alternate URIs." + }, + "deviceDesc": { + "$ref": "DeviceDescriptor", + "description": "The database must return, in its available spectrum response, the device descriptor information it received in the master device's available spectrum request." + }, + "kind": { + "default": "spectrum#pawsGetSpectrumResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"spectrum#pawsGetSpectrumResponse\".", + "type": "string" + }, + "maxContiguousBwHz": { + "description": "The database may return a constraint on the allowed maximum contiguous bandwidth (in Hertz). A regulatory domain may require the database to return this parameter. When this parameter is present in the response, the device must apply this constraint to its spectrum-selection logic to ensure that no single block of spectrum has bandwidth that exceeds this value.", + "format": "double", + "type": "number" + }, + "maxTotalBwHz": { + "description": "The database may return a constraint on the allowed maximum total bandwidth (in Hertz), which need not be contiguous. A regulatory domain may require the database to return this parameter. When this parameter is present in the available spectrum response, the device must apply this constraint to its spectrum-selection logic to ensure that total bandwidth does not exceed this value.", + "format": "double", + "type": "number" + }, + "needsSpectrumReport": { + "description": "For regulatory domains that require a spectrum-usage report from devices, the database must return true for this parameter if the spectrum schedule list is not empty; otherwise, the database will either return false or omit this parameter. If this parameter is present and its value is true, the device must send a spectrum use notify message to the database; otherwise, the device must not send the notification.", + "type": "boolean" + }, + "rulesetInfo": { + "$ref": "RulesetInfo", + "description": "The database should return ruleset information, which identifies the applicable regulatory authority and ruleset for the available spectrum response. If included, the device must use the corresponding ruleset to interpret the response. Values provided in the returned ruleset information, such as maxLocationChange, take precedence over any conflicting values provided in the ruleset information returned in a prior initialization response sent by the database to the device." + }, + "spectrumSchedules": { + "description": "The available spectrum response must contain a spectrum schedule list. The list may be empty if spectrum is not available. The database may return more than one spectrum schedule to represent future changes to the available spectrum. How far in advance a schedule may be provided depends on the applicable regulatory domain.", + "items": { + "$ref": "SpectrumSchedule" + }, + "type": "array" + }, + "timestamp": { + "description": "The database includes a timestamp of the form YYYY-MM-DDThh:mm:ssZ (Internet timestamp format per RFC3339) in its available spectrum response. The timestamp should be used by the device as a reference for the start and stop times specified in the response spectrum schedules.", + "type": "string" + }, + "type": { + "description": "The message type (e.g., INIT_REQ, AVAIL_SPECTRUM_REQ, ...).\n\nRequired field.", + "type": "string" + }, + "version": { + "description": "The PAWS version. Must be exactly 1.0.\n\nRequired field.", + "type": "string" + } + }, + "type": "object" + }, + "PawsInitRequest": { + "description": "The initialization request message allows the master device to initiate exchange of capabilities with the database.", + "id": "PawsInitRequest", + "properties": { + "deviceDesc": { + "$ref": "DeviceDescriptor", + "description": "The DeviceDescriptor parameter is required. If the database does not support the device or any of the rulesets specified in the device descriptor, it must return an UNSUPPORTED error code in the error response." + }, + "location": { + "$ref": "GeoLocation", + "description": "A device's geolocation is required." + }, + "type": { + "description": "The message type (e.g., INIT_REQ, AVAIL_SPECTRUM_REQ, ...).\n\nRequired field.", + "type": "string" + }, + "version": { + "description": "The PAWS version. Must be exactly 1.0.\n\nRequired field.", + "type": "string" + } + }, + "type": "object" + }, + "PawsInitResponse": { + "description": "The initialization response message communicates database parameters to the requesting device.", + "id": "PawsInitResponse", + "properties": { + "databaseChange": { + "$ref": "DbUpdateSpec", + "description": "A database may include the databaseChange parameter to notify a device of a change to its database URI, providing one or more alternate database URIs. The device should use this information to update its list of pre-configured databases by (only) replacing its entry for the responding database with the list of alternate URIs." + }, + "kind": { + "default": "spectrum#pawsInitResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"spectrum#pawsInitResponse\".", + "type": "string" + }, + "rulesetInfo": { + "$ref": "RulesetInfo", + "description": "The rulesetInfo parameter must be included in the response. This parameter specifies the regulatory domain and parameters applicable to that domain. The database must include the authority field, which defines the regulatory domain for the location specified in the INIT_REQ message." + }, + "type": { + "description": "The message type (e.g., INIT_REQ, AVAIL_SPECTRUM_REQ, ...).\n\nRequired field.", + "type": "string" + }, + "version": { + "description": "The PAWS version. Must be exactly 1.0.\n\nRequired field.", + "type": "string" + } + }, + "type": "object" + }, + "PawsNotifySpectrumUseRequest": { + "description": "The spectrum-use notification message which must contain the geolocation of the Device and parameters required by the regulatory domain.", + "id": "PawsNotifySpectrumUseRequest", + "properties": { + "deviceDesc": { + "$ref": "DeviceDescriptor", + "description": "Device descriptor information is required in the spectrum-use notification message." + }, + "location": { + "$ref": "GeoLocation", + "description": "The geolocation of the master device (the device that is sending the spectrum-use notification) to the database is required in the spectrum-use notification message." + }, + "spectra": { + "description": "A spectrum list is required in the spectrum-use notification. The list specifies the spectrum that the device expects to use, which includes frequency ranges and maximum power levels. The list may be empty if the device decides not to use any of spectrum. For consistency, the psdBandwidthHz value should match that from one of the spectrum elements in the corresponding available spectrum response previously sent to the device by the database. Note that maximum power levels in the spectrum element must be expressed as power spectral density over the specified psdBandwidthHz value. The actual bandwidth to be used (as computed from the start and stop frequencies) may be different from the psdBandwidthHz value. As an example, when regulatory rules express maximum power spectral density in terms of maximum power over any 100 kHz band, then the psdBandwidthHz value should be set to 100 kHz, even though the actual bandwidth used can be 20 kHz.", + "items": { + "$ref": "SpectrumMessage" + }, + "type": "array" + }, + "type": { + "description": "The message type (e.g., INIT_REQ, AVAIL_SPECTRUM_REQ, ...).\n\nRequired field.", + "type": "string" + }, + "version": { + "description": "The PAWS version. Must be exactly 1.0.\n\nRequired field.", + "type": "string" + } + }, + "type": "object" + }, + "PawsNotifySpectrumUseResponse": { + "description": "An empty response to the notification.", + "id": "PawsNotifySpectrumUseResponse", + "properties": { + "kind": { + "default": "spectrum#pawsNotifySpectrumUseResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"spectrum#pawsNotifySpectrumUseResponse\".", + "type": "string" + }, + "type": { + "description": "The message type (e.g., INIT_REQ, AVAIL_SPECTRUM_REQ, ...).\n\nRequired field.", + "type": "string" + }, + "version": { + "description": "The PAWS version. Must be exactly 1.0.\n\nRequired field.", + "type": "string" + } + }, + "type": "object" + }, + "PawsRegisterRequest": { + "description": "The registration request message contains the required registration parameters.", + "id": "PawsRegisterRequest", + "properties": { + "antenna": { + "$ref": "AntennaCharacteristics", + "description": "Antenna characteristics, including its height and height type." + }, + "deviceDesc": { + "$ref": "DeviceDescriptor", + "description": "A DeviceDescriptor is required." + }, + "deviceOwner": { + "$ref": "DeviceOwner", + "description": "Device owner information is required." + }, + "location": { + "$ref": "GeoLocation", + "description": "A device's geolocation is required." + }, + "type": { + "description": "The message type (e.g., INIT_REQ, AVAIL_SPECTRUM_REQ, ...).\n\nRequired field.", + "type": "string" + }, + "version": { + "description": "The PAWS version. Must be exactly 1.0.\n\nRequired field.", + "type": "string" + } + }, + "type": "object" + }, + "PawsRegisterResponse": { + "description": "The registration response message simply acknowledges receipt of the request and is otherwise empty.", + "id": "PawsRegisterResponse", + "properties": { + "databaseChange": { + "$ref": "DbUpdateSpec", + "description": "A database may include the databaseChange parameter to notify a device of a change to its database URI, providing one or more alternate database URIs. The device should use this information to update its list of pre-configured databases by (only) replacing its entry for the responding database with the list of alternate URIs." + }, + "kind": { + "default": "spectrum#pawsRegisterResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"spectrum#pawsRegisterResponse\".", + "type": "string" + }, + "type": { + "description": "The message type (e.g., INIT_REQ, AVAIL_SPECTRUM_REQ, ...).\n\nRequired field.", + "type": "string" + }, + "version": { + "description": "The PAWS version. Must be exactly 1.0.\n\nRequired field.", + "type": "string" + } + }, + "type": "object" + }, + "PawsVerifyDeviceRequest": { + "description": "The device validation request message.", + "id": "PawsVerifyDeviceRequest", + "properties": { + "deviceDescs": { + "description": "A list of device descriptors, which specifies the slave devices to be validated, is required.", + "items": { + "$ref": "DeviceDescriptor" + }, + "type": "array" + }, + "type": { + "description": "The message type (e.g., INIT_REQ, AVAIL_SPECTRUM_REQ, ...).\n\nRequired field.", + "type": "string" + }, + "version": { + "description": "The PAWS version. Must be exactly 1.0.\n\nRequired field.", + "type": "string" + } + }, + "type": "object" + }, + "PawsVerifyDeviceResponse": { + "description": "The device validation response message.", + "id": "PawsVerifyDeviceResponse", + "properties": { + "databaseChange": { + "$ref": "DbUpdateSpec", + "description": "A database may include the databaseChange parameter to notify a device of a change to its database URI, providing one or more alternate database URIs. The device should use this information to update its list of pre-configured databases by (only) replacing its entry for the responding database with the list of alternate URIs." + }, + "deviceValidities": { + "description": "A device validities list is required in the device validation response to report whether each slave device listed in a previous device validation request is valid. The number of entries must match the number of device descriptors listed in the previous device validation request.", + "items": { + "$ref": "DeviceValidity" + }, + "type": "array" + }, + "kind": { + "default": "spectrum#pawsVerifyDeviceResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"spectrum#pawsVerifyDeviceResponse\".", + "type": "string" + }, + "type": { + "description": "The message type (e.g., INIT_REQ, AVAIL_SPECTRUM_REQ, ...).\n\nRequired field.", + "type": "string" + }, + "version": { + "description": "The PAWS version. Must be exactly 1.0.\n\nRequired field.", + "type": "string" + } + }, + "type": "object" + }, + "RulesetInfo": { + "description": "This contains parameters for the ruleset of a regulatory domain that is communicated using the initialization and available-spectrum processes.", + "id": "RulesetInfo", + "properties": { + "authority": { + "description": "The regulatory domain to which the ruleset belongs is required. It must be a 2-letter country code. The device should use this to determine additional device behavior required by the associated regulatory domain.", + "type": "string" + }, + "maxLocationChange": { + "description": "The maximum location change in meters is required in the initialization response, but optional otherwise. When the device changes location by more than this specified distance, it must contact the database to get the available spectrum for the new location. If the device is using spectrum that is no longer available, it must immediately cease use of the spectrum under rules for database-managed spectrum. If this value is provided within the context of an available-spectrum response, it takes precedence over the value within the initialization response.", + "format": "double", + "type": "number" + }, + "maxPollingSecs": { + "description": "The maximum duration, in seconds, between requests for available spectrum. It is required in the initialization response, but optional otherwise. The device must contact the database to get available spectrum no less frequently than this duration. If the new spectrum information indicates that the device is using spectrum that is no longer available, it must immediately cease use of those frequencies under rules for database-managed spectrum. If this value is provided within the context of an available-spectrum response, it takes precedence over the value within the initialization response.", + "format": "int32", + "type": "integer" + }, + "rulesetIds": { + "description": "The identifiers of the rulesets supported for the device's location. The database should include at least one applicable ruleset in the initialization response. The device may use the ruleset identifiers to determine parameters to include in subsequent requests. Within the context of the available-spectrum responses, the database should include the identifier of the ruleset that it used to determine the available-spectrum response. If included, the device must use the specified ruleset to interpret the response. If the device does not support the indicated ruleset, it must not operate in the spectrum governed by the ruleset.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "SpectrumMessage": { + "description": "Available spectrum can be logically characterized by a list of frequency ranges and permissible power levels for each range.", + "id": "SpectrumMessage", + "properties": { + "bandwidth": { + "description": "The bandwidth (in Hertz) for which permissible power levels are specified. For example, FCC regulation would require only one spectrum specification at 6MHz bandwidth, but Ofcom regulation would require two specifications, at 0.1MHz and 8MHz. This parameter may be empty if there is no available spectrum. It will be present otherwise.", + "format": "double", + "type": "number" + }, + "frequencyRanges": { + "description": "The list of frequency ranges and permissible power levels. The list may be empty if there is no available spectrum, otherwise it will be present.", + "items": { + "$ref": "FrequencyRange" + }, + "type": "array" + } + }, + "type": "object" + }, + "SpectrumSchedule": { + "description": "The spectrum schedule element combines an event time with spectrum profile to define a time period in which the profile is valid.", + "id": "SpectrumSchedule", + "properties": { + "eventTime": { + "$ref": "EventTime", + "description": "The event time expresses when the spectrum profile is valid. It will always be present." + }, + "spectra": { + "description": "A list of spectrum messages representing the usable profile. It will always be present, but may be empty when there is no available spectrum.", + "items": { + "$ref": "SpectrumMessage" + }, + "type": "array" + } + }, + "type": "object" + }, + "Vcard": { + "description": "A vCard-in-JSON message that contains only the fields needed for PAWS: \n- fn: Full name of an individual \n- org: Name of the organization \n- adr: Address fields \n- tel: Telephone numbers \n- email: Email addresses", + "id": "Vcard", + "properties": { + "adr": { + "$ref": "VcardAddress", + "description": "The street address of the entity." + }, + "email": { + "$ref": "VcardTypedText", + "description": "An email address that can be used to reach the contact." + }, + "fn": { + "description": "The full name of the contact person. For example: John A. Smith.", + "type": "string" + }, + "org": { + "$ref": "VcardTypedText", + "description": "The organization associated with the registering entity." + }, + "tel": { + "$ref": "VcardTelephone", + "description": "A telephone number that can be used to call the contact." + } + }, + "type": "object" + }, + "VcardAddress": { + "description": "The structure used to represent a street address.", + "id": "VcardAddress", + "properties": { + "code": { + "description": "The postal code associated with the address. For example: 94423.", + "type": "string" + }, + "country": { + "description": "The country name. For example: US.", + "type": "string" + }, + "locality": { + "description": "The city or local equivalent portion of the address. For example: San Jose.", + "type": "string" + }, + "pobox": { + "description": "An optional post office box number.", + "type": "string" + }, + "region": { + "description": "The state or local equivalent portion of the address. For example: CA.", + "type": "string" + }, + "street": { + "description": "The street number and name. For example: 123 Any St.", + "type": "string" + } + }, + "type": "object" + }, + "VcardTelephone": { + "description": "The structure used to represent a telephone number.", + "id": "VcardTelephone", + "properties": { + "uri": { + "description": "A nested telephone URI of the form: tel:+1-123-456-7890.", + "type": "string" + } + }, + "type": "object" + }, + "VcardTypedText": { + "description": "The structure used to represent an organization and an email address.", + "id": "VcardTypedText", + "properties": { + "text": { + "description": "The text string associated with this item. For example, for an org field: ACME, inc. For an email field: smith@example.com.", + "type": "string" + } + }, + "type": "object" } - } }, - "Vcard": { - "id": "Vcard", - "type": "object", - "description": "A vCard-in-JSON message that contains only the fields needed for PAWS: \n- fn: Full name of an individual \n- org: Name of the organization \n- adr: Address fields \n- tel: Telephone numbers \n- email: Email addresses", - "properties": { - "adr": { - "$ref": "VcardAddress", - "description": "The street address of the entity." - }, - "email": { - "$ref": "VcardTypedText", - "description": "An email address that can be used to reach the contact." - }, - "fn": { - "type": "string", - "description": "The full name of the contact person. For example: John A. Smith." - }, - "org": { - "$ref": "VcardTypedText", - "description": "The organization associated with the registering entity." - }, - "tel": { - "$ref": "VcardTelephone", - "description": "A telephone number that can be used to call the contact." - } - } - }, - "VcardAddress": { - "id": "VcardAddress", - "type": "object", - "description": "The structure used to represent a street address.", - "properties": { - "code": { - "type": "string", - "description": "The postal code associated with the address. For example: 94423." - }, - "country": { - "type": "string", - "description": "The country name. For example: US." - }, - "locality": { - "type": "string", - "description": "The city or local equivalent portion of the address. For example: San Jose." - }, - "pobox": { - "type": "string", - "description": "An optional post office box number." - }, - "region": { - "type": "string", - "description": "The state or local equivalent portion of the address. For example: CA." - }, - "street": { - "type": "string", - "description": "The street number and name. For example: 123 Any St." - } - } - }, - "VcardTelephone": { - "id": "VcardTelephone", - "type": "object", - "description": "The structure used to represent a telephone number.", - "properties": { - "uri": { - "type": "string", - "description": "A nested telephone URI of the form: tel:+1-123-456-7890." - } - } - }, - "VcardTypedText": { - "id": "VcardTypedText", - "type": "object", - "description": "The structure used to represent an organization and an email address.", - "properties": { - "text": { - "type": "string", - "description": "The text string associated with this item. For example, for an org field: ACME, inc. For an email field: smith@example.com." - } - } - } - }, - "resources": { - "paws": { - "methods": { - "getSpectrum": { - "id": "spectrum.paws.getSpectrum", - "path": "getSpectrum", - "httpMethod": "POST", - "description": "Requests information about the available spectrum for a device at a location. Requests from a fixed-mode device must include owner information so the device can be registered with the database.", - "request": { - "$ref": "PawsGetSpectrumRequest" - }, - "response": { - "$ref": "PawsGetSpectrumResponse" - } - }, - "getSpectrumBatch": { - "id": "spectrum.paws.getSpectrumBatch", - "path": "getSpectrumBatch", - "httpMethod": "POST", - "description": "The Google Spectrum Database does not support batch requests, so this method always yields an UNIMPLEMENTED error.", - "request": { - "$ref": "PawsGetSpectrumBatchRequest" - }, - "response": { - "$ref": "PawsGetSpectrumBatchResponse" - } - }, - "init": { - "id": "spectrum.paws.init", - "path": "init", - "httpMethod": "POST", - "description": "Initializes the connection between a white space device and the database.", - "request": { - "$ref": "PawsInitRequest" - }, - "response": { - "$ref": "PawsInitResponse" - } - }, - "notifySpectrumUse": { - "id": "spectrum.paws.notifySpectrumUse", - "path": "notifySpectrumUse", - "httpMethod": "POST", - "description": "Notifies the database that the device has selected certain frequency ranges for transmission. Only to be invoked when required by the regulator. The Google Spectrum Database does not operate in domains that require notification, so this always yields an UNIMPLEMENTED error.", - "request": { - "$ref": "PawsNotifySpectrumUseRequest" - }, - "response": { - "$ref": "PawsNotifySpectrumUseResponse" - } - }, - "register": { - "id": "spectrum.paws.register", - "path": "register", - "httpMethod": "POST", - "description": "The Google Spectrum Database implements registration in the getSpectrum method. As such this always returns an UNIMPLEMENTED error.", - "request": { - "$ref": "PawsRegisterRequest" - }, - "response": { - "$ref": "PawsRegisterResponse" - } - }, - "verifyDevice": { - "id": "spectrum.paws.verifyDevice", - "path": "verifyDevice", - "httpMethod": "POST", - "description": "Validates a device for white space use in accordance with regulatory rules. The Google Spectrum Database does not support master/slave configurations, so this always yields an UNIMPLEMENTED error.", - "request": { - "$ref": "PawsVerifyDeviceRequest" - }, - "response": { - "$ref": "PawsVerifyDeviceResponse" - } - } - } - } - } -} + "servicePath": "spectrum/v1explorer/paws/", + "title": "Google Spectrum Database API", + "version": "v1explorer" +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/speech/v1/speech-api.json b/vendor/google.golang.org/api/speech/v1/speech-api.json index 8dfec2420..d6702ed8b 100644 --- a/vendor/google.golang.org/api/speech/v1/speech-api.json +++ b/vendor/google.golang.org/api/speech/v1/speech-api.json @@ -1,207 +1,215 @@ { - "documentationLink": "https://cloud.google.com/speech/", - "revision": "20180116", - "id": "speech:v1", + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/cloud-platform": { + "description": "View and manage your data across Google Cloud Platform services" + } + } + } + }, + "basePath": "", + "baseUrl": "https://speech.googleapis.com/", + "batchPath": "batch", + "canonicalName": "Speech", + "description": "Converts audio to text by applying powerful neural network models.", "discoveryVersion": "v1", - "version_module": true, - "schemas": { - "RecognitionConfig": { - "description": "Provides information to the recognizer that specifies how to process the\nrequest.", - "type": "object", - "properties": { - "sampleRateHertz": { - "description": "*Required* Sample rate in Hertz of the audio data sent in all\n`RecognitionAudio` messages. Valid values are: 8000-48000.\n16000 is optimal. For best results, set the sampling rate of the audio\nsource to 16000 Hz. If that's not possible, use the native sample rate of\nthe audio source (instead of re-sampling).", - "format": "int32", - "type": "integer" - }, - "enableWordTimeOffsets": { - "description": "*Optional* If `true`, the top result includes a list of words and\nthe start and end time offsets (timestamps) for those words. If\n`false`, no word-level time offset information is returned. The default is\n`false`.", - "type": "boolean" - }, - "maxAlternatives": { - "description": "*Optional* Maximum number of recognition hypotheses to be returned.\nSpecifically, the maximum number of `SpeechRecognitionAlternative` messages\nwithin each `SpeechRecognitionResult`.\nThe server may return fewer than `max_alternatives`.\nValid values are `0`-`30`. A value of `0` or `1` will return a maximum of\none. If omitted, will return a maximum of one.", - "format": "int32", - "type": "integer" - }, - "languageCode": { - "description": "*Required* The language of the supplied audio as a\n[BCP-47](https://www.rfc-editor.org/rfc/bcp/bcp47.txt) language tag.\nExample: \"en-US\".\nSee [Language Support](https://cloud.google.com/speech/docs/languages)\nfor a list of the currently supported language codes.", - "type": "string" - }, - "profanityFilter": { - "description": "*Optional* If set to `true`, the server will attempt to filter out\nprofanities, replacing all but the initial character in each filtered word\nwith asterisks, e.g. \"f***\". If set to `false` or omitted, profanities\nwon't be filtered out.", - "type": "boolean" - }, - "encoding": { - "enumDescriptions": [ - "Not specified.", - "Uncompressed 16-bit signed little-endian samples (Linear PCM).", - "[`FLAC`](https://xiph.org/flac/documentation.html) (Free Lossless Audio\nCodec) is the recommended encoding because it is\nlossless--therefore recognition is not compromised--and\nrequires only about half the bandwidth of `LINEAR16`. `FLAC` stream\nencoding supports 16-bit and 24-bit samples, however, not all fields in\n`STREAMINFO` are supported.", - "8-bit samples that compand 14-bit audio samples using G.711 PCMU/mu-law.", - "Adaptive Multi-Rate Narrowband codec. `sample_rate_hertz` must be 8000.", - "Adaptive Multi-Rate Wideband codec. `sample_rate_hertz` must be 16000.", - "Opus encoded audio frames in Ogg container\n([OggOpus](https://wiki.xiph.org/OggOpus)).\n`sample_rate_hertz` must be one of 8000, 12000, 16000, 24000, or 48000.", - "Although the use of lossy encodings is not recommended, if a very low\nbitrate encoding is required, `OGG_OPUS` is highly preferred over\nSpeex encoding. The [Speex](https://speex.org/) encoding supported by\nCloud Speech API has a header byte in each block, as in MIME type\n`audio/x-speex-with-header-byte`.\nIt is a variant of the RTP Speex encoding defined in\n[RFC 5574](https://tools.ietf.org/html/rfc5574).\nThe stream is a sequence of blocks, one block per RTP packet. Each block\nstarts with a byte containing the length of the block, in bytes, followed\nby one or more frames of Speex data, padded to an integral number of\nbytes (octets) as specified in RFC 5574. In other words, each RTP header\nis replaced with a single byte containing the block length. Only Speex\nwideband is supported. `sample_rate_hertz` must be 16000." + "documentationLink": "https://cloud.google.com/speech/", + "fullyEncodeReservedExpansion": true, + "icons": { + "x16": "http://www.google.com/images/icons/product/search-16.gif", + "x32": "http://www.google.com/images/icons/product/search-32.gif" + }, + "id": "speech:v1", + "kind": "discovery#restDescription", + "name": "speech", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "$.xgafv": { + "description": "V1 error format.", + "enum": [ + "1", + "2" + ], + "enumDescriptions": [ + "v1 error format", + "v2 error format" + ], + "location": "query", + "type": "string" + }, + "access_token": { + "description": "OAuth access token.", + "location": "query", + "type": "string" + }, + "alt": { + "default": "json", + "description": "Data format for response.", + "enum": [ + "json", + "media", + "proto" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json", + "Media download with context-dependent Content-Type", + "Responses with Content-Type of application/x-protobuf" + ], + "location": "query", + "type": "string" + }, + "bearer_token": { + "description": "OAuth bearer token.", + "location": "query", + "type": "string" + }, + "callback": { + "description": "JSONP", + "location": "query", + "type": "string" + }, + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "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.", + "location": "query", + "type": "string" + }, + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "pp": { + "default": "true", + "description": "Pretty-print response.", + "location": "query", + "type": "boolean" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", + "location": "query", + "type": "string" + }, + "uploadType": { + "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", + "location": "query", + "type": "string" + }, + "upload_protocol": { + "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", + "location": "query", + "type": "string" + } + }, + "protocol": "rest", + "resources": { + "operations": { + "methods": { + "get": { + "description": "Gets the latest state of a long-running operation. Clients can use this\nmethod to poll the operation result at intervals as recommended by the API\nservice.", + "flatPath": "v1/operations/{operationsId}", + "httpMethod": "GET", + "id": "speech.operations.get", + "parameterOrder": [ + "name" ], - "enum": [ - "ENCODING_UNSPECIFIED", - "LINEAR16", - "FLAC", - "MULAW", - "AMR", - "AMR_WB", - "OGG_OPUS", - "SPEEX_WITH_HEADER_BYTE" - ], - "description": "*Required* Encoding of audio data sent in all `RecognitionAudio` messages.", - "type": "string" - }, - "speechContexts": { - "type": "array", - "items": { - "$ref": "SpeechContext" - }, - "description": "*Optional* A means to provide context to assist the speech recognition." - } - }, - "id": "RecognitionConfig" - }, - "WordInfo": { - "description": "Word-specific information for recognized words. Word information is only\nincluded in the response when certain request parameters are set, such\nas `enable_word_time_offsets`.", - "type": "object", - "properties": { - "word": { - "description": "*Output-only* The word corresponding to this set of information.", - "type": "string" - }, - "endTime": { - "type": "string", - "description": "*Output-only* Time offset relative to the beginning of the audio,\nand corresponding to the end of the spoken word.\nThis field is only set if `enable_word_time_offsets=true` and only\nin the top hypothesis.\nThis is an experimental feature and the accuracy of the time offset can\nvary.", - "format": "google-duration" - }, - "startTime": { - "description": "*Output-only* Time offset relative to the beginning of the audio,\nand corresponding to the start of the spoken word.\nThis field is only set if `enable_word_time_offsets=true` and only\nin the top hypothesis.\nThis is an experimental feature and the accuracy of the time offset can\nvary.", - "format": "google-duration", - "type": "string" - } - }, - "id": "WordInfo" - }, - "RecognitionAudio": { - "type": "object", - "properties": { - "content": { - "description": "The audio data bytes encoded as specified in\n`RecognitionConfig`. Note: as with all bytes fields, protobuffers use a\npure binary representation, whereas JSON representations use base64.", - "format": "byte", - "type": "string" - }, - "uri": { - "description": "URI that points to a file that contains audio data bytes as specified in\n`RecognitionConfig`. Currently, only Google Cloud Storage URIs are\nsupported, which must be specified in the following format:\n`gs://bucket_name/object_name` (other URI formats return\ngoogle.rpc.Code.INVALID_ARGUMENT). For more information, see\n[Request URIs](https://cloud.google.com/storage/docs/reference-uris).", - "type": "string" - } - }, - "id": "RecognitionAudio", - "description": "Contains audio data in the encoding specified in the `RecognitionConfig`.\nEither `content` or `uri` must be supplied. Supplying both or neither\nreturns google.rpc.Code.INVALID_ARGUMENT. See\n[audio limits](https://cloud.google.com/speech/limits#content)." - }, - "Status": { - "properties": { - "message": { - "description": "A developer-facing error message, which should be in English. Any\nuser-facing error message should be localized and sent in the\ngoogle.rpc.Status.details field, or localized by the client.", - "type": "string" - }, - "details": { - "description": "A list of messages that carry the error details. There is a common set of\nmessage types for APIs to use.", - "type": "array", - "items": { - "type": "object", - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" + "parameters": { + "name": { + "description": "The name of the operation resource.", + "location": "path", + "pattern": "^[^/]+$", + "required": true, + "type": "string" } - } - }, - "code": { - "type": "integer", - "description": "The status code, which should be an enum value of google.rpc.Code.", - "format": "int32" + }, + "path": "v1/operations/{+name}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] } - }, - "id": "Status", - "description": "The `Status` type defines a logical error model that is suitable for different\nprogramming environments, including REST APIs and RPC APIs. It is used by\n[gRPC](https://github.com/grpc). The error model is designed to be:\n\n- Simple to use and understand for most users\n- Flexible enough to meet unexpected needs\n\n# Overview\n\nThe `Status` message contains three pieces of data: error code, error message,\nand error details. The error code should be an enum value of\ngoogle.rpc.Code, but it may accept additional error codes if needed. The\nerror message should be a developer-facing English message that helps\ndevelopers *understand* and *resolve* the error. If a localized user-facing\nerror message is needed, put the localized message in the error details or\nlocalize it in the client. The optional error details may contain arbitrary\ninformation about the error. There is a predefined set of error detail types\nin the package `google.rpc` that can be used for common error conditions.\n\n# Language mapping\n\nThe `Status` message is the logical representation of the error model, but it\nis not necessarily the actual wire format. When the `Status` message is\nexposed in different client libraries and different wire protocols, it can be\nmapped differently. For example, it will likely be mapped to some exceptions\nin Java, but more likely mapped to some error codes in C.\n\n# Other uses\n\nThe error model and the `Status` message can be used in a variety of\nenvironments, either with or without APIs, to provide a\nconsistent developer experience across different environments.\n\nExample uses of this error model include:\n\n- Partial errors. If a service needs to return partial errors to the client,\n it may embed the `Status` in the normal response to indicate the partial\n errors.\n\n- Workflow errors. A typical workflow has multiple steps. Each step may\n have a `Status` message for error reporting.\n\n- Batch operations. If a client uses batch request and batch response, the\n `Status` message should be used directly inside batch response, one for\n each error sub-response.\n\n- Asynchronous operations. If an API call embeds asynchronous operation\n results in its response, the status of those operations should be\n represented directly using the `Status` message.\n\n- Logging. If some API errors are stored in logs, the message `Status` could\n be used directly after any stripping needed for security/privacy reasons.", - "type": "object" + } }, + "speech": { + "methods": { + "longrunningrecognize": { + "description": "Performs asynchronous speech recognition: receive results via the\ngoogle.longrunning.Operations interface. Returns either an\n`Operation.error` or an `Operation.response` which contains\na `LongRunningRecognizeResponse` message.", + "flatPath": "v1/speech:longrunningrecognize", + "httpMethod": "POST", + "id": "speech.speech.longrunningrecognize", + "parameterOrder": [], + "parameters": {}, + "path": "v1/speech:longrunningrecognize", + "request": { + "$ref": "LongRunningRecognizeRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "recognize": { + "description": "Performs synchronous speech recognition: receive results after all audio\nhas been sent and processed.", + "flatPath": "v1/speech:recognize", + "httpMethod": "POST", + "id": "speech.speech.recognize", + "parameterOrder": [], + "parameters": {}, + "path": "v1/speech:recognize", + "request": { + "$ref": "RecognizeRequest" + }, + "response": { + "$ref": "RecognizeResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + } + }, + "revision": "20180326", + "rootUrl": "https://speech.googleapis.com/", + "schemas": { "LongRunningRecognizeRequest": { "description": "The top-level message sent by the client for the `LongRunningRecognize`\nmethod.", - "type": "object", + "id": "LongRunningRecognizeRequest", "properties": { - "config": { - "description": "*Required* Provides information to the recognizer that specifies how to\nprocess the request.", - "$ref": "RecognitionConfig" - }, "audio": { - "description": "*Required* The audio data to be recognized.", - "$ref": "RecognitionAudio" - } - }, - "id": "LongRunningRecognizeRequest" - }, - "RecognizeResponse": { - "description": "The only message returned to the client by the `Recognize` method. It\ncontains the result as zero or more sequential `SpeechRecognitionResult`\nmessages.", - "type": "object", - "properties": { - "results": { - "description": "*Output-only* Sequential list of transcription results corresponding to\nsequential portions of audio.", - "type": "array", - "items": { - "$ref": "SpeechRecognitionResult" - } - } - }, - "id": "RecognizeResponse" - }, - "RecognizeRequest": { - "description": "The top-level message sent by the client for the `Recognize` method.", - "type": "object", - "properties": { + "$ref": "RecognitionAudio", + "description": "*Required* The audio data to be recognized." + }, "config": { "$ref": "RecognitionConfig", "description": "*Required* Provides information to the recognizer that specifies how to\nprocess the request." - }, - "audio": { - "description": "*Required* The audio data to be recognized.", - "$ref": "RecognitionAudio" } }, - "id": "RecognizeRequest" - }, - "SpeechContext": { - "type": "object", - "properties": { - "phrases": { - "description": "*Optional* A list of strings containing words and phrases \"hints\" so that\nthe speech recognition is more likely to recognize them. This can be used\nto improve the accuracy for specific words and phrases, for example, if\nspecific commands are typically spoken by the user. This can also be used\nto add additional words to the vocabulary of the recognizer. See\n[usage limits](https://cloud.google.com/speech/limits#content).", - "type": "array", - "items": { - "type": "string" - } - } - }, - "id": "SpeechContext", - "description": "Provides \"hints\" to the speech recognizer to favor specific words and phrases\nin the results." + "type": "object" }, "Operation": { "description": "This resource represents a long-running operation that is the result of a\nnetwork API call.", - "type": "object", + "id": "Operation", "properties": { - "response": { - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - }, - "description": "The normal response of the operation in case of success. If the original\nmethod returns no data on success, such as `Delete`, the response is\n`google.protobuf.Empty`. If the original method is standard\n`Get`/`Create`/`Update`, the response should be the resource. For other\nmethods, the response should have the type `XxxResponse`, where `Xxx`\nis the original method name. For example, if the original method name\nis `TakeSnapshot()`, the inferred response type is\n`TakeSnapshotResponse`.", - "type": "object" - }, - "name": { - "description": "The server-assigned name, which is only unique within the same service that\noriginally returns it. If you use the default HTTP mapping, the\n`name` should have the format of `operations/some/unique/name`.", - "type": "string" + "done": { + "description": "If the value is `false`, it means the operation is still in progress.\nIf `true`, the operation is completed, and either `error` or `response` is\navailable.", + "type": "boolean" }, "error": { "$ref": "Status", @@ -215,235 +223,228 @@ "description": "Service-specific metadata associated with the operation. It typically\ncontains progress information and common metadata such as create time.\nSome services might not provide such metadata. Any method that returns a\nlong-running operation should document the metadata type, if any.", "type": "object" }, - "done": { - "description": "If the value is `false`, it means the operation is still in progress.\nIf `true`, the operation is completed, and either `error` or `response` is\navailable.", - "type": "boolean" + "name": { + "description": "The server-assigned name, which is only unique within the same service that\noriginally returns it. If you use the default HTTP mapping, the\n`name` should have the format of `operations/some/unique/name`.", + "type": "string" + }, + "response": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "description": "The normal response of the operation in case of success. If the original\nmethod returns no data on success, such as `Delete`, the response is\n`google.protobuf.Empty`. If the original method is standard\n`Get`/`Create`/`Update`, the response should be the resource. For other\nmethods, the response should have the type `XxxResponse`, where `Xxx`\nis the original method name. For example, if the original method name\nis `TakeSnapshot()`, the inferred response type is\n`TakeSnapshotResponse`.", + "type": "object" } }, - "id": "Operation" + "type": "object" + }, + "RecognitionAudio": { + "description": "Contains audio data in the encoding specified in the `RecognitionConfig`.\nEither `content` or `uri` must be supplied. Supplying both or neither\nreturns google.rpc.Code.INVALID_ARGUMENT. See\n[audio limits](https://cloud.google.com/speech/limits#content).", + "id": "RecognitionAudio", + "properties": { + "content": { + "description": "The audio data bytes encoded as specified in\n`RecognitionConfig`. Note: as with all bytes fields, protobuffers use a\npure binary representation, whereas JSON representations use base64.", + "format": "byte", + "type": "string" + }, + "uri": { + "description": "URI that points to a file that contains audio data bytes as specified in\n`RecognitionConfig`. Currently, only Google Cloud Storage URIs are\nsupported, which must be specified in the following format:\n`gs://bucket_name/object_name` (other URI formats return\ngoogle.rpc.Code.INVALID_ARGUMENT). For more information, see\n[Request URIs](https://cloud.google.com/storage/docs/reference-uris).", + "type": "string" + } + }, + "type": "object" + }, + "RecognitionConfig": { + "description": "Provides information to the recognizer that specifies how to process the\nrequest.", + "id": "RecognitionConfig", + "properties": { + "enableWordTimeOffsets": { + "description": "*Optional* If `true`, the top result includes a list of words and\nthe start and end time offsets (timestamps) for those words. If\n`false`, no word-level time offset information is returned. The default is\n`false`.", + "type": "boolean" + }, + "encoding": { + "description": "Encoding of audio data sent in all `RecognitionAudio` messages.\nThis field is optional for `FLAC` and `WAV` audio files and required\nfor all other audio formats. For details, see AudioEncoding.", + "enum": [ + "ENCODING_UNSPECIFIED", + "LINEAR16", + "FLAC", + "MULAW", + "AMR", + "AMR_WB", + "OGG_OPUS", + "SPEEX_WITH_HEADER_BYTE" + ], + "enumDescriptions": [ + "Not specified.", + "Uncompressed 16-bit signed little-endian samples (Linear PCM).", + "`FLAC` (Free Lossless Audio\nCodec) is the recommended encoding because it is\nlossless--therefore recognition is not compromised--and\nrequires only about half the bandwidth of `LINEAR16`. `FLAC` stream\nencoding supports 16-bit and 24-bit samples, however, not all fields in\n`STREAMINFO` are supported.", + "8-bit samples that compand 14-bit audio samples using G.711 PCMU/mu-law.", + "Adaptive Multi-Rate Narrowband codec. `sample_rate_hertz` must be 8000.", + "Adaptive Multi-Rate Wideband codec. `sample_rate_hertz` must be 16000.", + "Opus encoded audio frames in Ogg container\n([OggOpus](https://wiki.xiph.org/OggOpus)).\n`sample_rate_hertz` must be one of 8000, 12000, 16000, 24000, or 48000.", + "Although the use of lossy encodings is not recommended, if a very low\nbitrate encoding is required, `OGG_OPUS` is highly preferred over\nSpeex encoding. The [Speex](https://speex.org/) encoding supported by\nCloud Speech API has a header byte in each block, as in MIME type\n`audio/x-speex-with-header-byte`.\nIt is a variant of the RTP Speex encoding defined in\n[RFC 5574](https://tools.ietf.org/html/rfc5574).\nThe stream is a sequence of blocks, one block per RTP packet. Each block\nstarts with a byte containing the length of the block, in bytes, followed\nby one or more frames of Speex data, padded to an integral number of\nbytes (octets) as specified in RFC 5574. In other words, each RTP header\nis replaced with a single byte containing the block length. Only Speex\nwideband is supported. `sample_rate_hertz` must be 16000." + ], + "type": "string" + }, + "languageCode": { + "description": "*Required* The language of the supplied audio as a\n[BCP-47](https://www.rfc-editor.org/rfc/bcp/bcp47.txt) language tag.\nExample: \"en-US\".\nSee [Language Support](https://cloud.google.com/speech/docs/languages)\nfor a list of the currently supported language codes.", + "type": "string" + }, + "maxAlternatives": { + "description": "*Optional* Maximum number of recognition hypotheses to be returned.\nSpecifically, the maximum number of `SpeechRecognitionAlternative` messages\nwithin each `SpeechRecognitionResult`.\nThe server may return fewer than `max_alternatives`.\nValid values are `0`-`30`. A value of `0` or `1` will return a maximum of\none. If omitted, will return a maximum of one.", + "format": "int32", + "type": "integer" + }, + "profanityFilter": { + "description": "*Optional* If set to `true`, the server will attempt to filter out\nprofanities, replacing all but the initial character in each filtered word\nwith asterisks, e.g. \"f***\". If set to `false` or omitted, profanities\nwon't be filtered out.", + "type": "boolean" + }, + "sampleRateHertz": { + "description": "Sample rate in Hertz of the audio data sent in all\n`RecognitionAudio` messages. Valid values are: 8000-48000.\n16000 is optimal. For best results, set the sampling rate of the audio\nsource to 16000 Hz. If that's not possible, use the native sample rate of\nthe audio source (instead of re-sampling).\nThis field is optional for `FLAC` and `WAV` audio files and required\nfor all other audio formats. For details, see AudioEncoding.", + "format": "int32", + "type": "integer" + }, + "speechContexts": { + "description": "*Optional* A means to provide context to assist the speech recognition.", + "items": { + "$ref": "SpeechContext" + }, + "type": "array" + } + }, + "type": "object" + }, + "RecognizeRequest": { + "description": "The top-level message sent by the client for the `Recognize` method.", + "id": "RecognizeRequest", + "properties": { + "audio": { + "$ref": "RecognitionAudio", + "description": "*Required* The audio data to be recognized." + }, + "config": { + "$ref": "RecognitionConfig", + "description": "*Required* Provides information to the recognizer that specifies how to\nprocess the request." + } + }, + "type": "object" + }, + "RecognizeResponse": { + "description": "The only message returned to the client by the `Recognize` method. It\ncontains the result as zero or more sequential `SpeechRecognitionResult`\nmessages.", + "id": "RecognizeResponse", + "properties": { + "results": { + "description": "Output only. Sequential list of transcription results corresponding to\nsequential portions of audio.", + "items": { + "$ref": "SpeechRecognitionResult" + }, + "type": "array" + } + }, + "type": "object" + }, + "SpeechContext": { + "description": "Provides \"hints\" to the speech recognizer to favor specific words and phrases\nin the results.", + "id": "SpeechContext", + "properties": { + "phrases": { + "description": "*Optional* A list of strings containing words and phrases \"hints\" so that\nthe speech recognition is more likely to recognize them. This can be used\nto improve the accuracy for specific words and phrases, for example, if\nspecific commands are typically spoken by the user. This can also be used\nto add additional words to the vocabulary of the recognizer. See\n[usage limits](https://cloud.google.com/speech/limits#content).", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" }, "SpeechRecognitionAlternative": { + "description": "Alternative hypotheses (a.k.a. n-best list).", + "id": "SpeechRecognitionAlternative", "properties": { + "confidence": { + "description": "Output only. The confidence estimate between 0.0 and 1.0. A higher number\nindicates an estimated greater likelihood that the recognized words are\ncorrect. This field is set only for the top alternative of a non-streaming\nresult or, of a streaming result where `is_final=true`.\nThis field is not guaranteed to be accurate and users should not rely on it\nto be always provided.\nThe default of 0.0 is a sentinel value indicating `confidence` was not set.", + "format": "float", + "type": "number" + }, "transcript": { - "description": "*Output-only* Transcript text representing the words that the user spoke.", + "description": "Output only. Transcript text representing the words that the user spoke.", "type": "string" }, "words": { - "type": "array", + "description": "Output only. A list of word-specific information for each recognized word.", "items": { "$ref": "WordInfo" }, - "description": "*Output-only* A list of word-specific information for each recognized word." - }, - "confidence": { - "description": "*Output-only* The confidence estimate between 0.0 and 1.0. A higher number\nindicates an estimated greater likelihood that the recognized words are\ncorrect. This field is typically provided only for the top hypothesis, and\nonly for `is_final=true` results. Clients should not rely on the\n`confidence` field as it is not guaranteed to be accurate, or even set, in\nany of the results.\nThe default of 0.0 is a sentinel value indicating `confidence` was not set.", - "format": "float", - "type": "number" + "type": "array" } }, - "id": "SpeechRecognitionAlternative", - "description": "Alternative hypotheses (a.k.a. n-best list).", "type": "object" }, "SpeechRecognitionResult": { - "id": "SpeechRecognitionResult", "description": "A speech recognition result corresponding to a portion of the audio.", - "type": "object", + "id": "SpeechRecognitionResult", "properties": { "alternatives": { - "description": "*Output-only* May contain one or more recognition hypotheses (up to the\nmaximum specified in `max_alternatives`).\nThese alternatives are ordered in terms of accuracy, with the top (first)\nalternative being the most probable, as ranked by the recognizer.", - "type": "array", + "description": "Output only. May contain one or more recognition hypotheses (up to the\nmaximum specified in `max_alternatives`).\nThese alternatives are ordered in terms of accuracy, with the top (first)\nalternative being the most probable, as ranked by the recognizer.", "items": { "$ref": "SpeechRecognitionAlternative" - } - } - } - } - }, - "icons": { - "x32": "http://www.google.com/images/icons/product/search-32.gif", - "x16": "http://www.google.com/images/icons/product/search-16.gif" - }, - "protocol": "rest", - "canonicalName": "Speech", - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/cloud-platform": { - "description": "View and manage your data across Google Cloud Platform services" - } - } - } - }, - "rootUrl": "https://speech.googleapis.com/", - "ownerDomain": "google.com", - "name": "speech", - "batchPath": "batch", - "title": "Google Cloud Speech API", - "ownerName": "Google", - "resources": { - "operations": { - "methods": { - "get": { - "flatPath": "v1/operations/{operationsId}", - "path": "v1/operations/{+name}", - "id": "speech.operations.get", - "description": "Gets the latest state of a long-running operation. Clients can use this\nmethod to poll the operation result at intervals as recommended by the API\nservice.", - "response": { - "$ref": "Operation" }, - "parameterOrder": [ - "name" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "name": { - "pattern": "^[^/]+$", - "location": "path", - "description": "The name of the operation resource.", - "required": true, - "type": "string" - } - } + "type": "array" } - } + }, + "type": "object" }, - "speech": { - "methods": { - "recognize": { - "response": { - "$ref": "RecognizeResponse" - }, - "parameterOrder": [], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": {}, - "flatPath": "v1/speech:recognize", - "path": "v1/speech:recognize", - "id": "speech.speech.recognize", - "description": "Performs synchronous speech recognition: receive results after all audio\nhas been sent and processed.", - "request": { - "$ref": "RecognizeRequest" - } + "Status": { + "description": "The `Status` type defines a logical error model that is suitable for different\nprogramming environments, including REST APIs and RPC APIs. It is used by\n[gRPC](https://github.com/grpc). The error model is designed to be:\n\n- Simple to use and understand for most users\n- Flexible enough to meet unexpected needs\n\n# Overview\n\nThe `Status` message contains three pieces of data: error code, error message,\nand error details. The error code should be an enum value of\ngoogle.rpc.Code, but it may accept additional error codes if needed. The\nerror message should be a developer-facing English message that helps\ndevelopers *understand* and *resolve* the error. If a localized user-facing\nerror message is needed, put the localized message in the error details or\nlocalize it in the client. The optional error details may contain arbitrary\ninformation about the error. There is a predefined set of error detail types\nin the package `google.rpc` that can be used for common error conditions.\n\n# Language mapping\n\nThe `Status` message is the logical representation of the error model, but it\nis not necessarily the actual wire format. When the `Status` message is\nexposed in different client libraries and different wire protocols, it can be\nmapped differently. For example, it will likely be mapped to some exceptions\nin Java, but more likely mapped to some error codes in C.\n\n# Other uses\n\nThe error model and the `Status` message can be used in a variety of\nenvironments, either with or without APIs, to provide a\nconsistent developer experience across different environments.\n\nExample uses of this error model include:\n\n- Partial errors. If a service needs to return partial errors to the client,\n it may embed the `Status` in the normal response to indicate the partial\n errors.\n\n- Workflow errors. A typical workflow has multiple steps. Each step may\n have a `Status` message for error reporting.\n\n- Batch operations. If a client uses batch request and batch response, the\n `Status` message should be used directly inside batch response, one for\n each error sub-response.\n\n- Asynchronous operations. If an API call embeds asynchronous operation\n results in its response, the status of those operations should be\n represented directly using the `Status` message.\n\n- Logging. If some API errors are stored in logs, the message `Status` could\n be used directly after any stripping needed for security/privacy reasons.", + "id": "Status", + "properties": { + "code": { + "description": "The status code, which should be an enum value of google.rpc.Code.", + "format": "int32", + "type": "integer" }, - "longrunningrecognize": { - "flatPath": "v1/speech:longrunningrecognize", - "path": "v1/speech:longrunningrecognize", - "id": "speech.speech.longrunningrecognize", - "request": { - "$ref": "LongRunningRecognizeRequest" + "details": { + "description": "A list of messages that carry the error details. There is a common set of\nmessage types for APIs to use.", + "items": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "type": "object" }, - "description": "Performs asynchronous speech recognition: receive results via the\ngoogle.longrunning.Operations interface. Returns either an\n`Operation.error` or an `Operation.response` which contains\na `LongRunningRecognizeResponse` message.", - "response": { - "$ref": "Operation" - }, - "parameterOrder": [], - "httpMethod": "POST", - "parameters": {}, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] + "type": "array" + }, + "message": { + "description": "A developer-facing error message, which should be in English. Any\nuser-facing error message should be localized and sent in the\ngoogle.rpc.Status.details field, or localized by the client.", + "type": "string" } - } + }, + "type": "object" + }, + "WordInfo": { + "description": "Word-specific information for recognized words.", + "id": "WordInfo", + "properties": { + "endTime": { + "description": "Output only. Time offset relative to the beginning of the audio,\nand corresponding to the end of the spoken word.\nThis field is only set if `enable_word_time_offsets=true` and only\nin the top hypothesis.\nThis is an experimental feature and the accuracy of the time offset can\nvary.", + "format": "google-duration", + "type": "string" + }, + "startTime": { + "description": "Output only. Time offset relative to the beginning of the audio,\nand corresponding to the start of the spoken word.\nThis field is only set if `enable_word_time_offsets=true` and only\nin the top hypothesis.\nThis is an experimental feature and the accuracy of the time offset can\nvary.", + "format": "google-duration", + "type": "string" + }, + "word": { + "description": "Output only. The word corresponding to this set of information.", + "type": "string" + } + }, + "type": "object" } }, - "parameters": { - "fields": { - "location": "query", - "description": "Selector specifying which fields to include in a partial response.", - "type": "string" - }, - "uploadType": { - "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", - "type": "string", - "location": "query" - }, - "$.xgafv": { - "description": "V1 error format.", - "type": "string", - "enumDescriptions": [ - "v1 error format", - "v2 error format" - ], - "location": "query", - "enum": [ - "1", - "2" - ] - }, - "callback": { - "type": "string", - "location": "query", - "description": "JSONP" - }, - "alt": { - "enumDescriptions": [ - "Responses with Content-Type of application/json", - "Media download with context-dependent Content-Type", - "Responses with Content-Type of application/x-protobuf" - ], - "location": "query", - "description": "Data format for response.", - "default": "json", - "enum": [ - "json", - "media", - "proto" - ], - "type": "string" - }, - "access_token": { - "description": "OAuth access token.", - "type": "string", - "location": "query" - }, - "key": { - "location": "query", - "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.", - "type": "string" - }, - "quotaUser": { - "type": "string", - "location": "query", - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters." - }, - "pp": { - "location": "query", - "description": "Pretty-print response.", - "type": "boolean", - "default": "true" - }, - "oauth_token": { - "location": "query", - "description": "OAuth 2.0 token for the current user.", - "type": "string" - }, - "bearer_token": { - "location": "query", - "description": "OAuth bearer token.", - "type": "string" - }, - "upload_protocol": { - "location": "query", - "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", - "type": "string" - }, - "prettyPrint": { - "type": "boolean", - "default": "true", - "location": "query", - "description": "Returns response with indentations and line breaks." - } - }, - "version": "v1", - "baseUrl": "https://speech.googleapis.com/", "servicePath": "", - "description": "Converts audio to text by applying powerful neural network models.", - "kind": "discovery#restDescription", - "basePath": "" -} + "title": "Cloud Speech API", + "version": "v1", + "version_module": true +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/speech/v1/speech-gen.go b/vendor/google.golang.org/api/speech/v1/speech-gen.go index d9341e2d4..00348081f 100644 --- a/vendor/google.golang.org/api/speech/v1/speech-gen.go +++ b/vendor/google.golang.org/api/speech/v1/speech-gen.go @@ -1,4 +1,4 @@ -// Package speech provides access to the Google Cloud Speech API. +// Package speech provides access to the Cloud Speech API. // // See https://cloud.google.com/speech/ // @@ -268,15 +268,17 @@ type RecognitionConfig struct { // `false`. EnableWordTimeOffsets bool `json:"enableWordTimeOffsets,omitempty"` - // Encoding: *Required* Encoding of audio data sent in all - // `RecognitionAudio` messages. + // Encoding: Encoding of audio data sent in all `RecognitionAudio` + // messages. + // This field is optional for `FLAC` and `WAV` audio files and + // required + // for all other audio formats. For details, see AudioEncoding. // // Possible values: // "ENCODING_UNSPECIFIED" - Not specified. // "LINEAR16" - Uncompressed 16-bit signed little-endian samples // (Linear PCM). - // "FLAC" - [`FLAC`](https://xiph.org/flac/documentation.html) (Free - // Lossless Audio + // "FLAC" - `FLAC` (Free Lossless Audio // Codec) is the recommended encoding because it is // lossless--therefore recognition is not compromised--and // requires only about half the bandwidth of `LINEAR16`. `FLAC` @@ -349,14 +351,17 @@ type RecognitionConfig struct { // won't be filtered out. ProfanityFilter bool `json:"profanityFilter,omitempty"` - // SampleRateHertz: *Required* Sample rate in Hertz of the audio data - // sent in all + // SampleRateHertz: Sample rate in Hertz of the audio data sent in + // all // `RecognitionAudio` messages. Valid values are: 8000-48000. // 16000 is optimal. For best results, set the sampling rate of the // audio // source to 16000 Hz. If that's not possible, use the native sample // rate of // the audio source (instead of re-sampling). + // This field is optional for `FLAC` and `WAV` audio files and + // required + // for all other audio formats. For details, see AudioEncoding. SampleRateHertz int64 `json:"sampleRateHertz,omitempty"` // SpeechContexts: *Optional* A means to provide context to assist the @@ -428,7 +433,7 @@ func (s *RecognizeRequest) MarshalJSON() ([]byte, error) { // `SpeechRecognitionResult` // messages. type RecognizeResponse struct { - // Results: *Output-only* Sequential list of transcription results + // Results: Output only. Sequential list of transcription results // corresponding to // sequential portions of audio. Results []*SpeechRecognitionResult `json:"results,omitempty"` @@ -503,26 +508,25 @@ func (s *SpeechContext) MarshalJSON() ([]byte, error) { // SpeechRecognitionAlternative: Alternative hypotheses (a.k.a. n-best // list). type SpeechRecognitionAlternative struct { - // Confidence: *Output-only* The confidence estimate between 0.0 and - // 1.0. A higher number + // Confidence: Output only. The confidence estimate between 0.0 and 1.0. + // A higher number // indicates an estimated greater likelihood that the recognized words // are - // correct. This field is typically provided only for the top - // hypothesis, and - // only for `is_final=true` results. Clients should not rely on - // the - // `confidence` field as it is not guaranteed to be accurate, or even - // set, in - // any of the results. + // correct. This field is set only for the top alternative of a + // non-streaming + // result or, of a streaming result where `is_final=true`. + // This field is not guaranteed to be accurate and users should not rely + // on it + // to be always provided. // The default of 0.0 is a sentinel value indicating `confidence` was // not set. Confidence float64 `json:"confidence,omitempty"` - // Transcript: *Output-only* Transcript text representing the words that + // Transcript: Output only. Transcript text representing the words that // the user spoke. Transcript string `json:"transcript,omitempty"` - // Words: *Output-only* A list of word-specific information for each + // Words: Output only. A list of word-specific information for each // recognized word. Words []*WordInfo `json:"words,omitempty"` @@ -566,7 +570,7 @@ func (s *SpeechRecognitionAlternative) UnmarshalJSON(data []byte) error { // SpeechRecognitionResult: A speech recognition result corresponding to // a portion of the audio. type SpeechRecognitionResult struct { - // Alternatives: *Output-only* May contain one or more recognition + // Alternatives: Output only. May contain one or more recognition // hypotheses (up to the // maximum specified in `max_alternatives`). // These alternatives are ordered in terms of accuracy, with the top @@ -716,13 +720,9 @@ func (s *Status) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -// WordInfo: Word-specific information for recognized words. Word -// information is only -// included in the response when certain request parameters are set, -// such -// as `enable_word_time_offsets`. +// WordInfo: Word-specific information for recognized words. type WordInfo struct { - // EndTime: *Output-only* Time offset relative to the beginning of the + // EndTime: Output only. Time offset relative to the beginning of the // audio, // and corresponding to the end of the spoken word. // This field is only set if `enable_word_time_offsets=true` and only @@ -732,7 +732,7 @@ type WordInfo struct { // vary. EndTime string `json:"endTime,omitempty"` - // StartTime: *Output-only* Time offset relative to the beginning of the + // StartTime: Output only. Time offset relative to the beginning of the // audio, // and corresponding to the start of the spoken word. // This field is only set if `enable_word_time_offsets=true` and only @@ -742,8 +742,7 @@ type WordInfo struct { // vary. StartTime string `json:"startTime,omitempty"` - // Word: *Output-only* The word corresponding to this set of - // information. + // Word: Output only. The word corresponding to this set of information. Word string `json:"word,omitempty"` // ForceSendFields is a list of field names (e.g. "EndTime") to diff --git a/vendor/google.golang.org/api/speech/v1beta1/speech-api.json b/vendor/google.golang.org/api/speech/v1beta1/speech-api.json index 8590aab42..0678b8884 100644 --- a/vendor/google.golang.org/api/speech/v1beta1/speech-api.json +++ b/vendor/google.golang.org/api/speech/v1beta1/speech-api.json @@ -1,45 +1,215 @@ { - "kind": "discovery#restDescription", - "description": "Converts audio to text by applying powerful neural network models.", - "servicePath": "", + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/cloud-platform": { + "description": "View and manage your data across Google Cloud Platform services" + } + } + } + }, "basePath": "", - "revision": "20180116", - "documentationLink": "https://cloud.google.com/speech/", - "id": "speech:v1beta1", + "baseUrl": "https://speech.googleapis.com/", + "batchPath": "batch", + "canonicalName": "Speech", + "description": "Converts audio to text by applying powerful neural network models.", "discoveryVersion": "v1", - "version_module": true, - "schemas": { - "SpeechRecognitionAlternative": { - "description": "Alternative hypotheses (a.k.a. n-best list).", - "type": "object", - "properties": { - "confidence": { - "description": "*Output-only* The confidence estimate between 0.0 and 1.0. A higher number\nindicates an estimated greater likelihood that the recognized words are\ncorrect. This field is typically provided only for the top hypothesis, and\nonly for `is_final=true` results. Clients should not rely on the\n`confidence` field as it is not guaranteed to be accurate, or even set, in\nany of the results.\nThe default of 0.0 is a sentinel value indicating `confidence` was not set.", - "format": "float", - "type": "number" + "documentationLink": "https://cloud.google.com/speech/", + "fullyEncodeReservedExpansion": true, + "icons": { + "x16": "http://www.google.com/images/icons/product/search-16.gif", + "x32": "http://www.google.com/images/icons/product/search-32.gif" + }, + "id": "speech:v1beta1", + "kind": "discovery#restDescription", + "name": "speech", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "$.xgafv": { + "description": "V1 error format.", + "enum": [ + "1", + "2" + ], + "enumDescriptions": [ + "v1 error format", + "v2 error format" + ], + "location": "query", + "type": "string" + }, + "access_token": { + "description": "OAuth access token.", + "location": "query", + "type": "string" + }, + "alt": { + "default": "json", + "description": "Data format for response.", + "enum": [ + "json", + "media", + "proto" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json", + "Media download with context-dependent Content-Type", + "Responses with Content-Type of application/x-protobuf" + ], + "location": "query", + "type": "string" + }, + "bearer_token": { + "description": "OAuth bearer token.", + "location": "query", + "type": "string" + }, + "callback": { + "description": "JSONP", + "location": "query", + "type": "string" + }, + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "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.", + "location": "query", + "type": "string" + }, + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "pp": { + "default": "true", + "description": "Pretty-print response.", + "location": "query", + "type": "boolean" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", + "location": "query", + "type": "string" + }, + "uploadType": { + "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", + "location": "query", + "type": "string" + }, + "upload_protocol": { + "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", + "location": "query", + "type": "string" + } + }, + "protocol": "rest", + "resources": { + "operations": { + "methods": { + "get": { + "description": "Gets the latest state of a long-running operation. Clients can use this\nmethod to poll the operation result at intervals as recommended by the API\nservice.", + "flatPath": "v1beta1/operations/{operationsId}", + "httpMethod": "GET", + "id": "speech.operations.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource.", + "location": "path", + "pattern": "^[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/operations/{+name}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + }, + "speech": { + "methods": { + "asyncrecognize": { + "description": "Performs asynchronous speech recognition: receive results via the\n[google.longrunning.Operations]\n(/speech/reference/rest/v1beta1/operations#Operation)\ninterface. Returns either an\n`Operation.error` or an `Operation.response` which contains\nan `AsyncRecognizeResponse` message.", + "flatPath": "v1beta1/speech:asyncrecognize", + "httpMethod": "POST", + "id": "speech.speech.asyncrecognize", + "parameterOrder": [], + "parameters": {}, + "path": "v1beta1/speech:asyncrecognize", + "request": { + "$ref": "AsyncRecognizeRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] }, - "transcript": { - "description": "*Output-only* Transcript text representing the words that the user spoke.", - "type": "string" + "syncrecognize": { + "description": "Performs synchronous speech recognition: receive results after all audio\nhas been sent and processed.", + "flatPath": "v1beta1/speech:syncrecognize", + "httpMethod": "POST", + "id": "speech.speech.syncrecognize", + "parameterOrder": [], + "parameters": {}, + "path": "v1beta1/speech:syncrecognize", + "request": { + "$ref": "SyncRecognizeRequest" + }, + "response": { + "$ref": "SyncRecognizeResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + } + }, + "revision": "20180312", + "rootUrl": "https://speech.googleapis.com/", + "schemas": { + "AsyncRecognizeRequest": { + "description": "The top-level message sent by the client for the `AsyncRecognize` method.", + "id": "AsyncRecognizeRequest", + "properties": { + "audio": { + "$ref": "RecognitionAudio", + "description": "*Required* The audio data to be recognized." + }, + "config": { + "$ref": "RecognitionConfig", + "description": "*Required* Provides information to the recognizer that specifies how to\nprocess the request." } }, - "id": "SpeechRecognitionAlternative" + "type": "object" }, "Operation": { "description": "This resource represents a long-running operation that is the result of a\nnetwork API call.", - "type": "object", + "id": "Operation", "properties": { - "response": { - "description": "The normal response of the operation in case of success. If the original\nmethod returns no data on success, such as `Delete`, the response is\n`google.protobuf.Empty`. If the original method is standard\n`Get`/`Create`/`Update`, the response should be the resource. For other\nmethods, the response should have the type `XxxResponse`, where `Xxx`\nis the original method name. For example, if the original method name\nis `TakeSnapshot()`, the inferred response type is\n`TakeSnapshotResponse`.", - "type": "object", - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - } - }, - "name": { - "description": "The server-assigned name, which is only unique within the same service that\noriginally returns it. If you use the default HTTP mapping, the\n`name` should have the format of `operations/some/unique/name`.", - "type": "string" + "done": { + "description": "If the value is `false`, it means the operation is still in progress.\nIf `true`, the operation is completed, and either `error` or `response` is\navailable.", + "type": "boolean" }, "error": { "$ref": "Status", @@ -47,113 +217,30 @@ }, "metadata": { "additionalProperties": { - "type": "any", - "description": "Properties of the object. Contains field @type with type URL." + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" }, "description": "Service-specific metadata associated with the operation. It typically\ncontains progress information and common metadata such as create time.\nSome services might not provide such metadata. Any method that returns a\nlong-running operation should document the metadata type, if any.", "type": "object" }, - "done": { - "description": "If the value is `false`, it means the operation is still in progress.\nIf `true`, the operation is completed, and either `error` or `response` is\navailable.", - "type": "boolean" - } - }, - "id": "Operation" - }, - "SpeechContext": { - "description": "Provides \"hints\" to the speech recognizer to favor specific words and phrases\nin the results.", - "type": "object", - "properties": { - "phrases": { - "type": "array", - "items": { - "type": "string" - }, - "description": "*Optional* A list of strings containing words and phrases \"hints\" so that\nthe speech recognition is more likely to recognize them. This can be used\nto improve the accuracy for specific words and phrases, for example, if\nspecific commands are typically spoken by the user. This can also be used\nto add additional words to the vocabulary of the recognizer. See\n[usage limits](https://cloud.google.com/speech/limits#content)." - } - }, - "id": "SpeechContext" - }, - "SpeechRecognitionResult": { - "description": "A speech recognition result corresponding to a portion of the audio.", - "type": "object", - "properties": { - "alternatives": { - "description": "*Output-only* May contain one or more recognition hypotheses (up to the\nmaximum specified in `max_alternatives`).", - "type": "array", - "items": { - "$ref": "SpeechRecognitionAlternative" - } - } - }, - "id": "SpeechRecognitionResult" - }, - "RecognitionConfig": { - "description": "Provides information to the recognizer that specifies how to process the\nrequest.", - "type": "object", - "properties": { - "maxAlternatives": { - "description": "*Optional* Maximum number of recognition hypotheses to be returned.\nSpecifically, the maximum number of `SpeechRecognitionAlternative` messages\nwithin each `SpeechRecognitionResult`.\nThe server may return fewer than `max_alternatives`.\nValid values are `0`-`30`. A value of `0` or `1` will return a maximum of\none. If omitted, will return a maximum of one.", - "format": "int32", - "type": "integer" - }, - "sampleRate": { - "description": "*Required* Sample rate in Hertz of the audio data sent in all\n`RecognitionAudio` messages. Valid values are: 8000-48000.\n16000 is optimal. For best results, set the sampling rate of the audio\nsource to 16000 Hz. If that's not possible, use the native sample rate of\nthe audio source (instead of re-sampling).", - "format": "int32", - "type": "integer" - }, - "languageCode": { - "description": "*Optional* The language of the supplied audio as a BCP-47 language tag.\nExample: \"en-GB\" https://www.rfc-editor.org/rfc/bcp/bcp47.txt\nIf omitted, defaults to \"en-US\". See\n[Language Support](https://cloud.google.com/speech/docs/languages)\nfor a list of the currently supported language codes.", + "name": { + "description": "The server-assigned name, which is only unique within the same service that\noriginally returns it. If you use the default HTTP mapping, the\n`name` should have the format of `operations/some/unique/name`.", "type": "string" }, - "profanityFilter": { - "description": "*Optional* If set to `true`, the server will attempt to filter out\nprofanities, replacing all but the initial character in each filtered word\nwith asterisks, e.g. \"f***\". If set to `false` or omitted, profanities\nwon't be filtered out.", - "type": "boolean" - }, - "speechContext": { - "description": "*Optional* A means to provide context to assist the speech recognition.", - "$ref": "SpeechContext" - }, - "encoding": { - "enum": [ - "ENCODING_UNSPECIFIED", - "LINEAR16", - "FLAC", - "MULAW", - "AMR", - "AMR_WB" - ], - "description": "*Required* Encoding of audio data sent in all `RecognitionAudio` messages.", - "type": "string", - "enumDescriptions": [ - "Not specified. Will return result google.rpc.Code.INVALID_ARGUMENT.", - "Uncompressed 16-bit signed little-endian samples (Linear PCM).\nThis is the only encoding that may be used by `AsyncRecognize`.", - "This is the recommended encoding for `SyncRecognize` and\n`StreamingRecognize` because it uses lossless compression; therefore\nrecognition accuracy is not compromised by a lossy codec.\n\nThe stream FLAC (Free Lossless Audio Codec) encoding is specified at:\nhttp://flac.sourceforge.net/documentation.html.\n16-bit and 24-bit samples are supported.\nNot all fields in STREAMINFO are supported.", - "8-bit samples that compand 14-bit audio samples using G.711 PCMU/mu-law.", - "Adaptive Multi-Rate Narrowband codec. `sample_rate` must be 8000 Hz.", - "Adaptive Multi-Rate Wideband codec. `sample_rate` must be 16000 Hz." - ] + "response": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "description": "The normal response of the operation in case of success. If the original\nmethod returns no data on success, such as `Delete`, the response is\n`google.protobuf.Empty`. If the original method is standard\n`Get`/`Create`/`Update`, the response should be the resource. For other\nmethods, the response should have the type `XxxResponse`, where `Xxx`\nis the original method name. For example, if the original method name\nis `TakeSnapshot()`, the inferred response type is\n`TakeSnapshotResponse`.", + "type": "object" } }, - "id": "RecognitionConfig" - }, - "SyncRecognizeRequest": { - "description": "The top-level message sent by the client for the `SyncRecognize` method.", - "type": "object", - "properties": { - "config": { - "description": "*Required* Provides information to the recognizer that specifies how to\nprocess the request.", - "$ref": "RecognitionConfig" - }, - "audio": { - "$ref": "RecognitionAudio", - "description": "*Required* The audio data to be recognized." - } - }, - "id": "SyncRecognizeRequest" + "type": "object" }, "RecognitionAudio": { - "type": "object", + "description": "Contains audio data in the encoding specified in the `RecognitionConfig`.\nEither `content` or `uri` must be supplied. Supplying both or neither\nreturns google.rpc.Code.INVALID_ARGUMENT. See\n[audio limits](https://cloud.google.com/speech/limits#content).", + "id": "RecognitionAudio", "properties": { "content": { "description": "The audio data bytes encoded as specified in\n`RecognitionConfig`. Note: as with all bytes fields, protobuffers use a\npure binary representation, whereas JSON representations use base64.", @@ -165,246 +252,160 @@ "type": "string" } }, - "id": "RecognitionAudio", - "description": "Contains audio data in the encoding specified in the `RecognitionConfig`.\nEither `content` or `uri` must be supplied. Supplying both or neither\nreturns google.rpc.Code.INVALID_ARGUMENT. See\n[audio limits](https://cloud.google.com/speech/limits#content)." + "type": "object" }, - "AsyncRecognizeRequest": { + "RecognitionConfig": { + "description": "Provides information to the recognizer that specifies how to process the\nrequest.", + "id": "RecognitionConfig", "properties": { - "config": { - "$ref": "RecognitionConfig", - "description": "*Required* Provides information to the recognizer that specifies how to\nprocess the request." + "encoding": { + "description": "*Required* Encoding of audio data sent in all `RecognitionAudio` messages.", + "enum": [ + "ENCODING_UNSPECIFIED", + "LINEAR16", + "FLAC", + "MULAW", + "AMR", + "AMR_WB" + ], + "enumDescriptions": [ + "Not specified. Will return result google.rpc.Code.INVALID_ARGUMENT.", + "Uncompressed 16-bit signed little-endian samples (Linear PCM).\nThis is the only encoding that may be used by `AsyncRecognize`.", + "This is the recommended encoding for `SyncRecognize` and\n`StreamingRecognize` because it uses lossless compression; therefore\nrecognition accuracy is not compromised by a lossy codec.\n\nThe stream FLAC (Free Lossless Audio Codec) encoding is specified at:\nhttp://flac.sourceforge.net/documentation.html.\n16-bit and 24-bit samples are supported.\nNot all fields in STREAMINFO are supported.", + "8-bit samples that compand 14-bit audio samples using G.711 PCMU/mu-law.", + "Adaptive Multi-Rate Narrowband codec. `sample_rate` must be 8000 Hz.", + "Adaptive Multi-Rate Wideband codec. `sample_rate` must be 16000 Hz." + ], + "type": "string" }, - "audio": { - "$ref": "RecognitionAudio", - "description": "*Required* The audio data to be recognized." + "languageCode": { + "description": "*Optional* The language of the supplied audio as a BCP-47 language tag.\nExample: \"en-GB\" https://www.rfc-editor.org/rfc/bcp/bcp47.txt\nIf omitted, defaults to \"en-US\". See\n[Language Support](https://cloud.google.com/speech/docs/languages)\nfor a list of the currently supported language codes.", + "type": "string" + }, + "maxAlternatives": { + "description": "*Optional* Maximum number of recognition hypotheses to be returned.\nSpecifically, the maximum number of `SpeechRecognitionAlternative` messages\nwithin each `SpeechRecognitionResult`.\nThe server may return fewer than `max_alternatives`.\nValid values are `0`-`30`. A value of `0` or `1` will return a maximum of\none. If omitted, will return a maximum of one.", + "format": "int32", + "type": "integer" + }, + "profanityFilter": { + "description": "*Optional* If set to `true`, the server will attempt to filter out\nprofanities, replacing all but the initial character in each filtered word\nwith asterisks, e.g. \"f***\". If set to `false` or omitted, profanities\nwon't be filtered out.", + "type": "boolean" + }, + "sampleRate": { + "description": "*Required* Sample rate in Hertz of the audio data sent in all\n`RecognitionAudio` messages. Valid values are: 8000-48000.\n16000 is optimal. For best results, set the sampling rate of the audio\nsource to 16000 Hz. If that's not possible, use the native sample rate of\nthe audio source (instead of re-sampling).", + "format": "int32", + "type": "integer" + }, + "speechContext": { + "$ref": "SpeechContext", + "description": "*Optional* A means to provide context to assist the speech recognition." + } + }, + "type": "object" + }, + "SpeechContext": { + "description": "Provides \"hints\" to the speech recognizer to favor specific words and phrases\nin the results.", + "id": "SpeechContext", + "properties": { + "phrases": { + "description": "*Optional* A list of strings containing words and phrases \"hints\" so that\nthe speech recognition is more likely to recognize them. This can be used\nto improve the accuracy for specific words and phrases, for example, if\nspecific commands are typically spoken by the user. This can also be used\nto add additional words to the vocabulary of the recognizer. See\n[usage limits](https://cloud.google.com/speech/limits#content).", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "SpeechRecognitionAlternative": { + "description": "Alternative hypotheses (a.k.a. n-best list).", + "id": "SpeechRecognitionAlternative", + "properties": { + "confidence": { + "description": "*Output-only* The confidence estimate between 0.0 and 1.0. A higher number\nindicates an estimated greater likelihood that the recognized words are\ncorrect. This field is typically provided only for the top hypothesis, and\nonly for `is_final=true` results. Clients should not rely on the\n`confidence` field as it is not guaranteed to be accurate, or even set, in\nany of the results.\nThe default of 0.0 is a sentinel value indicating `confidence` was not set.", + "format": "float", + "type": "number" + }, + "transcript": { + "description": "*Output-only* Transcript text representing the words that the user spoke.", + "type": "string" + } + }, + "type": "object" + }, + "SpeechRecognitionResult": { + "description": "A speech recognition result corresponding to a portion of the audio.", + "id": "SpeechRecognitionResult", + "properties": { + "alternatives": { + "description": "*Output-only* May contain one or more recognition hypotheses (up to the\nmaximum specified in `max_alternatives`).", + "items": { + "$ref": "SpeechRecognitionAlternative" + }, + "type": "array" } }, - "id": "AsyncRecognizeRequest", - "description": "The top-level message sent by the client for the `AsyncRecognize` method.", "type": "object" }, "Status": { "description": "The `Status` type defines a logical error model that is suitable for different\nprogramming environments, including REST APIs and RPC APIs. It is used by\n[gRPC](https://github.com/grpc). The error model is designed to be:\n\n- Simple to use and understand for most users\n- Flexible enough to meet unexpected needs\n\n# Overview\n\nThe `Status` message contains three pieces of data: error code, error message,\nand error details. The error code should be an enum value of\ngoogle.rpc.Code, but it may accept additional error codes if needed. The\nerror message should be a developer-facing English message that helps\ndevelopers *understand* and *resolve* the error. If a localized user-facing\nerror message is needed, put the localized message in the error details or\nlocalize it in the client. The optional error details may contain arbitrary\ninformation about the error. There is a predefined set of error detail types\nin the package `google.rpc` that can be used for common error conditions.\n\n# Language mapping\n\nThe `Status` message is the logical representation of the error model, but it\nis not necessarily the actual wire format. When the `Status` message is\nexposed in different client libraries and different wire protocols, it can be\nmapped differently. For example, it will likely be mapped to some exceptions\nin Java, but more likely mapped to some error codes in C.\n\n# Other uses\n\nThe error model and the `Status` message can be used in a variety of\nenvironments, either with or without APIs, to provide a\nconsistent developer experience across different environments.\n\nExample uses of this error model include:\n\n- Partial errors. If a service needs to return partial errors to the client,\n it may embed the `Status` in the normal response to indicate the partial\n errors.\n\n- Workflow errors. A typical workflow has multiple steps. Each step may\n have a `Status` message for error reporting.\n\n- Batch operations. If a client uses batch request and batch response, the\n `Status` message should be used directly inside batch response, one for\n each error sub-response.\n\n- Asynchronous operations. If an API call embeds asynchronous operation\n results in its response, the status of those operations should be\n represented directly using the `Status` message.\n\n- Logging. If some API errors are stored in logs, the message `Status` could\n be used directly after any stripping needed for security/privacy reasons.", - "type": "object", + "id": "Status", "properties": { + "code": { + "description": "The status code, which should be an enum value of google.rpc.Code.", + "format": "int32", + "type": "integer" + }, "details": { "description": "A list of messages that carry the error details. There is a common set of\nmessage types for APIs to use.", - "type": "array", "items": { "additionalProperties": { "description": "Properties of the object. Contains field @type with type URL.", "type": "any" }, "type": "object" - } - }, - "code": { - "description": "The status code, which should be an enum value of google.rpc.Code.", - "format": "int32", - "type": "integer" + }, + "type": "array" }, "message": { "description": "A developer-facing error message, which should be in English. Any\nuser-facing error message should be localized and sent in the\ngoogle.rpc.Status.details field, or localized by the client.", "type": "string" } }, - "id": "Status" + "type": "object" + }, + "SyncRecognizeRequest": { + "description": "The top-level message sent by the client for the `SyncRecognize` method.", + "id": "SyncRecognizeRequest", + "properties": { + "audio": { + "$ref": "RecognitionAudio", + "description": "*Required* The audio data to be recognized." + }, + "config": { + "$ref": "RecognitionConfig", + "description": "*Required* Provides information to the recognizer that specifies how to\nprocess the request." + } + }, + "type": "object" }, "SyncRecognizeResponse": { "description": "The only message returned to the client by `SyncRecognize`. method. It\ncontains the result as zero or more sequential `SpeechRecognitionResult`\nmessages.", - "type": "object", + "id": "SyncRecognizeResponse", "properties": { "results": { "description": "*Output-only* Sequential list of transcription results corresponding to\nsequential portions of audio.", - "type": "array", "items": { "$ref": "SpeechRecognitionResult" - } + }, + "type": "array" } }, - "id": "SyncRecognizeResponse" - } - }, - "protocol": "rest", - "icons": { - "x16": "http://www.google.com/images/icons/product/search-16.gif", - "x32": "http://www.google.com/images/icons/product/search-32.gif" - }, - "canonicalName": "Speech", - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/cloud-platform": { - "description": "View and manage your data across Google Cloud Platform services" - } - } - } - }, - "rootUrl": "https://speech.googleapis.com/", - "ownerDomain": "google.com", - "name": "speech", - "batchPath": "batch", - "title": "Google Cloud Speech API", - "ownerName": "Google", - "resources": { - "operations": { - "methods": { - "get": { - "description": "Gets the latest state of a long-running operation. Clients can use this\nmethod to poll the operation result at intervals as recommended by the API\nservice.", - "httpMethod": "GET", - "parameterOrder": [ - "name" - ], - "response": { - "$ref": "Operation" - }, - "parameters": { - "name": { - "pattern": "^[^/]+$", - "location": "path", - "description": "The name of the operation resource.", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta1/operations/{operationsId}", - "id": "speech.operations.get", - "path": "v1beta1/operations/{+name}" - } - } - }, - "speech": { - "methods": { - "asyncrecognize": { - "request": { - "$ref": "AsyncRecognizeRequest" - }, - "description": "Performs asynchronous speech recognition: receive results via the\n[google.longrunning.Operations]\n(/speech/reference/rest/v1beta1/operations#Operation)\ninterface. Returns either an\n`Operation.error` or an `Operation.response` which contains\nan `AsyncRecognizeResponse` message.", - "httpMethod": "POST", - "parameterOrder": [], - "response": { - "$ref": "Operation" - }, - "parameters": {}, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta1/speech:asyncrecognize", - "id": "speech.speech.asyncrecognize", - "path": "v1beta1/speech:asyncrecognize" - }, - "syncrecognize": { - "response": { - "$ref": "SyncRecognizeResponse" - }, - "parameterOrder": [], - "httpMethod": "POST", - "parameters": {}, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta1/speech:syncrecognize", - "path": "v1beta1/speech:syncrecognize", - "id": "speech.speech.syncrecognize", - "request": { - "$ref": "SyncRecognizeRequest" - }, - "description": "Performs synchronous speech recognition: receive results after all audio\nhas been sent and processed." - } - } - } - }, - "parameters": { - "alt": { - "type": "string", - "enumDescriptions": [ - "Responses with Content-Type of application/json", - "Media download with context-dependent Content-Type", - "Responses with Content-Type of application/x-protobuf" - ], - "location": "query", - "description": "Data format for response.", - "default": "json", - "enum": [ - "json", - "media", - "proto" - ] - }, - "key": { - "location": "query", - "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.", - "type": "string" - }, - "access_token": { - "location": "query", - "description": "OAuth access token.", - "type": "string" - }, - "quotaUser": { - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", - "type": "string", - "location": "query" - }, - "pp": { - "location": "query", - "description": "Pretty-print response.", - "type": "boolean", - "default": "true" - }, - "oauth_token": { - "type": "string", - "location": "query", - "description": "OAuth 2.0 token for the current user." - }, - "bearer_token": { - "location": "query", - "description": "OAuth bearer token.", - "type": "string" - }, - "upload_protocol": { - "location": "query", - "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", - "type": "string" - }, - "prettyPrint": { - "location": "query", - "description": "Returns response with indentations and line breaks.", - "type": "boolean", - "default": "true" - }, - "uploadType": { - "location": "query", - "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", - "type": "string" - }, - "fields": { - "description": "Selector specifying which fields to include in a partial response.", - "type": "string", - "location": "query" - }, - "$.xgafv": { - "enum": [ - "1", - "2" - ], - "description": "V1 error format.", - "type": "string", - "enumDescriptions": [ - "v1 error format", - "v2 error format" - ], - "location": "query" - }, - "callback": { - "description": "JSONP", - "type": "string", - "location": "query" + "type": "object" } }, + "servicePath": "", + "title": "Cloud Speech API", "version": "v1beta1", - "baseUrl": "https://speech.googleapis.com/" -} + "version_module": true +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/speech/v1beta1/speech-gen.go b/vendor/google.golang.org/api/speech/v1beta1/speech-gen.go index 9f56ca477..132b22695 100644 --- a/vendor/google.golang.org/api/speech/v1beta1/speech-gen.go +++ b/vendor/google.golang.org/api/speech/v1beta1/speech-gen.go @@ -1,4 +1,4 @@ -// Package speech provides access to the Google Cloud Speech API. +// Package speech provides access to the Cloud Speech API. // // See https://cloud.google.com/speech/ // diff --git a/vendor/google.golang.org/api/sqladmin/v1beta3/sqladmin-api.json b/vendor/google.golang.org/api/sqladmin/v1beta3/sqladmin-api.json index 0a1fa96be..990a82605 100644 --- a/vendor/google.golang.org/api/sqladmin/v1beta3/sqladmin-api.json +++ b/vendor/google.golang.org/api/sqladmin/v1beta3/sqladmin-api.json @@ -1,1970 +1,1979 @@ { - "kind": "discovery#restDescription", - "etag": "\"YWOzh2SDasdU84ArJnpYek-OMdg/lsRSA9rF-4KQu4xYN0id-kYxBtA\"", - "discoveryVersion": "v1", - "id": "sqladmin:v1beta3", - "name": "sqladmin", - "canonicalName": "SQL Admin", - "version": "v1beta3", - "revision": "20170807", - "title": "Cloud SQL Administration API", - "description": "Creates and configures Cloud SQL instances, which provide fully-managed MySQL databases.", - "ownerDomain": "google.com", - "ownerName": "Google", - "icons": { - "x16": "https://www.gstatic.com/images/branding/product/1x/googleg_16dp.png", - "x32": "https://www.gstatic.com/images/branding/product/1x/googleg_32dp.png" - }, - "documentationLink": "https://cloud.google.com/sql/docs/reference/latest", - "protocol": "rest", - "baseUrl": "https://www.googleapis.com/sql/v1beta3/", - "basePath": "/sql/v1beta3/", - "rootUrl": "https://www.googleapis.com/", - "servicePath": "sql/v1beta3/", - "batchPath": "batch/sqladmin/v1beta3", - "parameters": { - "alt": { - "type": "string", - "description": "Data format for the response.", - "default": "json", - "enum": [ - "json" - ], - "enumDescriptions": [ - "Responses with Content-Type of application/json" - ], - "location": "query" - }, - "fields": { - "type": "string", - "description": "Selector specifying which fields to include in a partial response.", - "location": "query" - }, - "key": { - "type": "string", - "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" - }, - "oauth_token": { - "type": "string", - "description": "OAuth 2.0 token for the current user.", - "location": "query" - }, - "prettyPrint": { - "type": "boolean", - "description": "Returns response with indentations and line breaks.", - "default": "true", - "location": "query" - }, - "quotaUser": { - "type": "string", - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", - "location": "query" - }, - "userIp": { - "type": "string", - "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", - "location": "query" - } - }, - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/cloud-platform": { - "description": "View and manage your data across Google Cloud Platform services" - }, - "https://www.googleapis.com/auth/sqlservice.admin": { - "description": "Manage your Google SQL Service instances" + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/cloud-platform": { + "description": "View and manage your data across Google Cloud Platform services" + }, + "https://www.googleapis.com/auth/sqlservice.admin": { + "description": "Manage your Google SQL Service instances" + } + } } - } - } - }, - "schemas": { - "BackupConfiguration": { - "id": "BackupConfiguration", - "type": "object", - "description": "Database instance backup configuration.", - "properties": { - "binaryLogEnabled": { - "type": "boolean", - "description": "Whether binary log is enabled. If backup configuration is disabled, binary log must be disabled as well." - }, - "enabled": { - "type": "boolean", - "description": "Whether this configuration is enabled." - }, - "id": { - "type": "string", - "description": "Identifier for this configuration. This gets generated automatically when a backup configuration is created." - }, - "kind": { - "type": "string", - "description": "This is always sql#backupConfiguration.", - "default": "sql#backupConfiguration" - }, - "startTime": { - "type": "string", - "description": "Start time for the daily backup configuration in UTC timezone in the 24 hour format - HH:MM." - } - } }, - "BackupRun": { - "id": "BackupRun", - "type": "object", - "description": "A database instance backup run resource.", - "properties": { - "backupConfiguration": { - "type": "string", - "description": "Backup Configuration identifier." - }, - "dueTime": { - "type": "string", - "description": "The due time of this run in UTC timezone in RFC 3339 format, for example 2012-11-15T16:19:00.094Z.", - "format": "date-time" - }, - "endTime": { - "type": "string", - "description": "The time the backup operation completed in UTC timezone in RFC 3339 format, for example 2012-11-15T16:19:00.094Z.", - "format": "date-time" - }, - "enqueuedTime": { - "type": "string", - "description": "The time the run was enqueued in UTC timezone in RFC 3339 format, for example 2012-11-15T16:19:00.094Z.", - "format": "date-time" - }, - "error": { - "$ref": "OperationError", - "description": "Information about why the backup operation failed. This is only present if the run has the FAILED status." - }, - "instance": { - "type": "string", - "description": "Name of the database instance." - }, - "kind": { - "type": "string", - "description": "This is always sql#backupRun.", - "default": "sql#backupRun" - }, - "startTime": { - "type": "string", - "description": "The time the backup operation actually started in UTC timezone in RFC 3339 format, for example 2012-11-15T16:19:00.094Z.", - "format": "date-time" - }, - "status": { - "type": "string", - "description": "The status of this run." - } - } + "basePath": "/sql/v1beta3/", + "baseUrl": "https://www.googleapis.com/sql/v1beta3/", + "batchPath": "batch/sqladmin/v1beta3", + "canonicalName": "SQL Admin", + "description": "Creates and configures Cloud SQL instances, which provide fully-managed MySQL databases.", + "discoveryVersion": "v1", + "documentationLink": "https://cloud.google.com/sql/docs/reference/latest", + "etag": "\"-iA1DTNe4s-I6JZXPt1t1Ypy8IU/EHk4rp8xy9W88y5wezvrHDWf9Y4\"", + "icons": { + "x16": "https://www.gstatic.com/images/branding/product/1x/googleg_16dp.png", + "x32": "https://www.gstatic.com/images/branding/product/1x/googleg_32dp.png" }, - "BackupRunsListResponse": { - "id": "BackupRunsListResponse", - "type": "object", - "description": "Backup run list results.", - "properties": { - "items": { - "type": "array", - "description": "A list of backup runs in reverse chronological order of the enqueued time.", - "items": { - "$ref": "BackupRun" - } - }, - "kind": { - "type": "string", - "description": "This is always sql#backupRunsList.", - "default": "sql#backupRunsList" - }, - "nextPageToken": { - "type": "string", - "description": "The continuation token, used to page through large result sets. Provide this value in a subsequent request to return the next page of results." - } - } - }, - "BinLogCoordinates": { - "id": "BinLogCoordinates", - "type": "object", - "description": "Binary log coordinates.", - "properties": { - "binLogFileName": { - "type": "string", - "description": "Name of the binary log file for a Cloud SQL instance." - }, - "binLogPosition": { - "type": "string", - "description": "Position (offset) within the binary log file.", - "format": "int64" - }, - "kind": { - "type": "string", - "description": "This is always sql#binLogCoordinates.", - "default": "sql#binLogCoordinates" - } - } - }, - "CloneContext": { - "id": "CloneContext", - "type": "object", - "description": "Database instance clone context.", - "properties": { - "binLogCoordinates": { - "$ref": "BinLogCoordinates", - "description": "Binary log coordinates, if specified, indentify the position up to which the source instance should be cloned. If not specified, the source instance is cloned up to the most recent binary log coordinates." - }, - "destinationInstanceName": { - "type": "string", - "description": "Name of the Cloud SQL instance to be created as a clone." - }, - "kind": { - "type": "string", - "description": "This is always sql#cloneContext.", - "default": "sql#cloneContext" - }, - "sourceInstanceName": { - "type": "string", - "description": "Name of the Cloud SQL instance to be cloned." - } - } - }, - "DatabaseFlags": { - "id": "DatabaseFlags", - "type": "object", - "description": "MySQL flags for Cloud SQL instances.", - "properties": { - "name": { - "type": "string", - "description": "The name of the flag. These flags are passed at instance startup, so include both MySQL server options and MySQL system variables. Flags should be specified with underscores, not hyphens. For more information, see Configuring MySQL Flags in the Google Cloud SQL documentation, as well as the official MySQL documentation for server options and system variables." - }, - "value": { - "type": "string", - "description": "The value of the flag. Booleans should be set to on for true and off for false. This field must be omitted if the flag doesn't take a value." - } - } - }, - "DatabaseInstance": { - "id": "DatabaseInstance", - "type": "object", - "description": "A Cloud SQL instance resource.", - "properties": { - "connectionName": { - "type": "string", - "description": "Connection name of the Cloud SQL instance used in connection strings." - }, - "currentDiskSize": { - "type": "string", - "description": "The current disk usage of the instance in bytes.", - "format": "int64" - }, - "databaseVersion": { - "type": "string", - "description": "The database engine type and version. Can be MYSQL_5_5 or MYSQL_5_6. Defaults to MYSQL_5_5. The databaseVersion cannot be changed after instance creation." - }, - "etag": { - "type": "string", - "description": "HTTP 1.1 Entity tag for the resource." - }, - "instance": { - "type": "string", - "description": "Name of the Cloud SQL instance. This does not include the project ID.", - "annotations": { - "required": [ - "sql.instances.insert", - "sql.instances.update" - ] - } - }, - "instanceType": { - "type": "string", - "description": "The instance type. This can be one of the following.\nCLOUD_SQL_INSTANCE: Regular Cloud SQL instance.\nREAD_REPLICA_INSTANCE: Cloud SQL instance acting as a read-replica." - }, - "ipAddresses": { - "type": "array", - "description": "The assigned IP addresses for the instance.", - "items": { - "$ref": "IpMapping" - } - }, - "ipv6Address": { - "type": "string", - "description": "The IPv6 address assigned to the instance." - }, - "kind": { - "type": "string", - "description": "This is always sql#instance.", - "default": "sql#instance" - }, - "masterInstanceName": { - "type": "string", - "description": "The name of the instance which will act as master in the replication setup." - }, - "maxDiskSize": { - "type": "string", - "description": "The maximum disk size of the instance in bytes.", - "format": "int64" - }, - "project": { - "type": "string", - "description": "The project ID of the project containing the Cloud SQL instance. The Google apps domain is prefixed if applicable.", - "annotations": { - "required": [ - "sql.instances.insert", - "sql.instances.update" - ] - } - }, - "region": { - "type": "string", - "description": "The geographical region. Can be us-central, asia-east1 or europe-west1. Defaults to us-central. The region can not be changed after instance creation." - }, - "replicaNames": { - "type": "array", - "description": "The replicas of the instance.", - "items": { + "id": "sqladmin:v1beta3", + "kind": "discovery#restDescription", + "name": "sqladmin", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "alt": { + "default": "json", + "description": "Data format for the response.", + "enum": [ + "json" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json" + ], + "location": "query", "type": "string" - } }, - "serverCaCert": { - "$ref": "SslCert", - "description": "SSL configuration." - }, - "serviceAccountEmailAddress": { - "type": "string", - "description": "The service account email address assigned to the instance." - }, - "settings": { - "$ref": "Settings", - "description": "The user settings." - }, - "state": { - "type": "string", - "description": "The current serving state of the Cloud SQL instance. This can be one of the following.\nRUNNABLE: The instance is running, or is ready to run when accessed.\nSUSPENDED: The instance is not available, for example due to problems with billing.\nPENDING_CREATE: The instance is being created.\nMAINTENANCE: The instance is down for maintenance.\nUNKNOWN_STATE: The state of the instance is unknown." - } - } - }, - "ExportContext": { - "id": "ExportContext", - "type": "object", - "description": "Database instance export context.", - "properties": { - "database": { - "type": "array", - "description": "Databases (for example, guestbook) from which the export is made. If unspecified, all databases are exported.", - "items": { + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "location": "query", "type": "string" - } }, - "kind": { - "type": "string", - "description": "This is always sql#exportContext.", - "default": "sql#exportContext" - }, - "table": { - "type": "array", - "description": "Tables to export, or that were exported, from the specified database. If you specify tables, specify one and only one database.", - "items": { + "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" - } }, - "uri": { - "type": "string", - "description": "The path to the file in Google Cloud Storage where the export will be stored, or where it was already stored. The URI is in the form gs://bucketName/fileName. If the file already exists, the operation fails. If the filename ends with .gz, the contents are compressed." - } - } - }, - "Flag": { - "id": "Flag", - "type": "object", - "description": "A Google Cloud SQL service flag resource.", - "properties": { - "allowedStringValues": { - "type": "array", - "description": "For STRING flags, a list of strings that the value can be set to.", - "items": { + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", "type": "string" - } }, - "appliesTo": { - "type": "array", - "description": "The database version this flag applies to. Currently this can only be [MYSQL_5_5].", - "items": { + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", + "location": "query", "type": "string" - } }, - "kind": { - "type": "string", - "description": "This is always sql#flag.", - "default": "sql#flag" - }, - "maxValue": { - "type": "string", - "description": "For INTEGER flags, the maximum allowed value.", - "format": "int64" - }, - "minValue": { - "type": "string", - "description": "For INTEGER flags, the minimum allowed value.", - "format": "int64" - }, - "name": { - "type": "string", - "description": "This is the name of the flag. Flag names always use underscores, not hyphens, e.g. max_allowed_packet" - }, - "type": { - "type": "string", - "description": "The type of the flag. Flags are typed to being BOOLEAN, STRING, INTEGER or NONE. NONE is used for flags which do not take a value, such as skip_grant_tables." - } - } - }, - "FlagsListResponse": { - "id": "FlagsListResponse", - "type": "object", - "description": "Flags list response.", - "properties": { - "items": { - "type": "array", - "description": "List of flags.", - "items": { - "$ref": "Flag" - } - }, - "kind": { - "type": "string", - "description": "This is always sql#flagsList.", - "default": "sql#flagsList" - } - } - }, - "ImportContext": { - "id": "ImportContext", - "type": "object", - "description": "Database instance import context.", - "properties": { - "database": { - "type": "string", - "description": "The database (for example, guestbook) to which the import is made. If not set, it is assumed that the database is specified in the file to be imported." - }, - "kind": { - "type": "string", - "description": "This is always sql#importContext.", - "default": "sql#importContext" - }, - "uri": { - "type": "array", - "description": "A path to the MySQL dump file in Google Cloud Storage from which the import is made. The URI is in the form gs://bucketName/fileName. Compressed gzip files (.gz) are also supported.", - "items": { + "userIp": { + "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", + "location": "query", "type": "string" - } } - } }, - "InstanceOperation": { - "id": "InstanceOperation", - "type": "object", - "description": "An Operations resource contains information about database instance operations such as create, delete, and restart. Operations resources are created in response to operations that were initiated; you never create them directly.", - "properties": { - "endTime": { - "type": "string", - "description": "The time this operation finished in UTC timezone in RFC 3339 format, for example 2012-11-15T16:19:00.094Z.", - "format": "date-time" - }, - "enqueuedTime": { - "type": "string", - "description": "The time this operation was enqueued in UTC timezone in RFC 3339 format, for example 2012-11-15T16:19:00.094Z.", - "format": "date-time" - }, - "error": { - "type": "array", - "description": "The error(s) encountered by this operation. Only set if the operation results in an error.", - "items": { - "$ref": "OperationError" - } - }, - "exportContext": { - "$ref": "ExportContext", - "description": "The context for export operation, if applicable." - }, - "importContext": { - "$ref": "ImportContext", - "description": "The context for import operation, if applicable." - }, - "instance": { - "type": "string", - "description": "Name of the database instance." - }, - "kind": { - "type": "string", - "description": "This is always sql#instanceOperation.", - "default": "sql#instanceOperation" - }, - "operation": { - "type": "string", - "description": "An identifier that uniquely identifies the operation. You can use this identifier to retrieve the Operations resource that has information about the operation." - }, - "operationType": { - "type": "string", - "description": "The type of the operation. Valid values are CREATE, DELETE, UPDATE, RESTART, IMPORT, EXPORT, BACKUP_VOLUME, RESTORE_VOLUME." - }, - "startTime": { - "type": "string", - "description": "The time this operation actually started in UTC timezone in RFC 3339 format, for example 2012-11-15T16:19:00.094Z.", - "format": "date-time" - }, - "state": { - "type": "string", - "description": "The state of an operation. Valid values are PENDING, RUNNING, DONE, UNKNOWN." - }, - "userEmailAddress": { - "type": "string", - "description": "The email address of the user who initiated this operation." - } - } - }, - "InstanceSetRootPasswordRequest": { - "id": "InstanceSetRootPasswordRequest", - "type": "object", - "description": "Database instance set root password request.", - "properties": { - "setRootPasswordContext": { - "$ref": "SetRootPasswordContext", - "description": "Set Root Password Context." - } - } - }, - "InstancesCloneRequest": { - "id": "InstancesCloneRequest", - "type": "object", - "description": "Database instance clone request.", - "properties": { - "cloneContext": { - "$ref": "CloneContext", - "description": "Contains details about the clone operation." - } - } - }, - "InstancesCloneResponse": { - "id": "InstancesCloneResponse", - "type": "object", - "description": "Database instance clone response.", - "properties": { - "kind": { - "type": "string", - "description": "This is always sql#instancesClone.", - "default": "sql#instancesClone" - }, - "operation": { - "type": "string", - "description": "An unique identifier for the operation associated with the cloned instance. You can use this identifier to retrieve the Operations resource, which has information about the operation." - } - } - }, - "InstancesDeleteResponse": { - "id": "InstancesDeleteResponse", - "type": "object", - "description": "Database instance delete response.", - "properties": { - "kind": { - "type": "string", - "description": "This is always sql#instancesDelete.", - "default": "sql#instancesDelete" - }, - "operation": { - "type": "string", - "description": "An identifier that uniquely identifies the operation. You can use this identifier to retrieve the Operations resource that has information about the operation." - } - } - }, - "InstancesExportRequest": { - "id": "InstancesExportRequest", - "type": "object", - "description": "Database instance export request.", - "properties": { - "exportContext": { - "$ref": "ExportContext", - "description": "Contains details about the export operation." - } - } - }, - "InstancesExportResponse": { - "id": "InstancesExportResponse", - "type": "object", - "description": "Database instance export response.", - "properties": { - "kind": { - "type": "string", - "description": "This is always sql#instancesExport.", - "default": "sql#instancesExport" - }, - "operation": { - "type": "string", - "description": "An identifier that uniquely identifies the operation. You can use this identifier to retrieve the Operations resource that has information about the operation." - } - } - }, - "InstancesImportRequest": { - "id": "InstancesImportRequest", - "type": "object", - "description": "Database instance import request.", - "properties": { - "importContext": { - "$ref": "ImportContext", - "description": "Contains details about the import operation." - } - } - }, - "InstancesImportResponse": { - "id": "InstancesImportResponse", - "type": "object", - "description": "Database instance import response.", - "properties": { - "kind": { - "type": "string", - "description": "This is always sql#instancesImport.", - "default": "sql#instancesImport" - }, - "operation": { - "type": "string", - "description": "An identifier that uniquely identifies the operation. You can use this identifier to retrieve the Operations resource that has information about the operation." - } - } - }, - "InstancesInsertResponse": { - "id": "InstancesInsertResponse", - "type": "object", - "description": "Database instance insert response.", - "properties": { - "kind": { - "type": "string", - "description": "This is always sql#instancesInsert.", - "default": "sql#instancesInsert" - }, - "operation": { - "type": "string", - "description": "An identifier that uniquely identifies the operation. You can use this identifier to retrieve the Operations resource that has information about the operation." - } - } - }, - "InstancesListResponse": { - "id": "InstancesListResponse", - "type": "object", - "description": "Database instances list response.", - "properties": { - "items": { - "type": "array", - "description": "List of database instance resources.", - "items": { - "$ref": "DatabaseInstance" - } - }, - "kind": { - "type": "string", - "description": "This is always sql#instancesList.", - "default": "sql#instancesList" - }, - "nextPageToken": { - "type": "string", - "description": "The continuation token, used to page through large result sets. Provide this value in a subsequent request to return the next page of results." - } - } - }, - "InstancesPromoteReplicaResponse": { - "id": "InstancesPromoteReplicaResponse", - "type": "object", - "description": "Database promote read replica response.", - "properties": { - "kind": { - "type": "string", - "description": "This is always sql#instancesPromoteReplica.", - "default": "sql#instancesPromoteReplica" - }, - "operation": { - "type": "string", - "description": "An identifier that uniquely identifies the operation. You can use this identifier to retrieve the Operations resource that has information about the operation." - } - } - }, - "InstancesResetSslConfigResponse": { - "id": "InstancesResetSslConfigResponse", - "type": "object", - "description": "Database instance resetSslConfig response.", - "properties": { - "kind": { - "type": "string", - "description": "This is always sql#instancesResetSslConfig.", - "default": "sql#instancesResetSslConfig" - }, - "operation": { - "type": "string", - "description": "An identifier that uniquely identifies the operation. You can use this identifier to retrieve the Operations resource that has information about the operation. All ssl client certificates will be deleted and a new server certificate will be created. Does not take effect until the next instance restart." - } - } - }, - "InstancesRestartResponse": { - "id": "InstancesRestartResponse", - "type": "object", - "description": "Database instance restart response.", - "properties": { - "kind": { - "type": "string", - "description": "This is always sql#instancesRestart.", - "default": "sql#instancesRestart" - }, - "operation": { - "type": "string", - "description": "An identifier that uniquely identifies the operation. You can use this identifier to retrieve the Operations resource that has information about the operation." - } - } - }, - "InstancesRestoreBackupResponse": { - "id": "InstancesRestoreBackupResponse", - "type": "object", - "description": "Database instance restore backup response.", - "properties": { - "kind": { - "type": "string", - "description": "This is always sql#instancesRestoreBackup.", - "default": "sql#instancesRestoreBackup" - }, - "operation": { - "type": "string", - "description": "An identifier that uniquely identifies the operation. You can use this identifier to retrieve the Operations resource that has information about the operation." - } - } - }, - "InstancesSetRootPasswordResponse": { - "id": "InstancesSetRootPasswordResponse", - "type": "object", - "description": "Database instance set root password response.", - "properties": { - "kind": { - "type": "string", - "description": "This is always sql#instancesSetRootPassword.", - "default": "sql#instancesSetRootPassword" - }, - "operation": { - "type": "string", - "description": "An identifier that uniquely identifies the operation. You can use this identifier to retrieve the Operations resource that has information about the operation." - } - } - }, - "InstancesUpdateResponse": { - "id": "InstancesUpdateResponse", - "type": "object", - "description": "Database instance update response.", - "properties": { - "kind": { - "type": "string", - "description": "This is always sql#instancesUpdate.", - "default": "sql#instancesUpdate" - }, - "operation": { - "type": "string", - "description": "An identifier that uniquely identifies the operation. You can use this identifier to retrieve information about the operation." - } - } - }, - "IpConfiguration": { - "id": "IpConfiguration", - "type": "object", - "description": "IP Management configuration.", - "properties": { - "authorizedNetworks": { - "type": "array", - "description": "The list of external networks that are allowed to connect to the instance using the IP. In CIDR notation, also known as 'slash' notation (e.g. 192.168.100.0/24).", - "items": { - "type": "string" - } - }, - "enabled": { - "type": "boolean", - "description": "Whether the instance should be assigned an IP address or not." - }, - "kind": { - "type": "string", - "description": "This is always sql#ipConfiguration.", - "default": "sql#ipConfiguration" - }, - "requireSsl": { - "type": "boolean", - "description": "Whether SSL connections over IP should be enforced or not." - } - } - }, - "IpMapping": { - "id": "IpMapping", - "type": "object", - "description": "Database instance IP Mapping.", - "properties": { - "ipAddress": { - "type": "string", - "description": "The IP address assigned." - }, - "timeToRetire": { - "type": "string", - "description": "The due time for this IP to be retired in RFC 3339 format, for example 2012-11-15T16:19:00.094Z. This field is only available when the IP is scheduled to be retired.", - "format": "date-time" - } - } - }, - "LocationPreference": { - "id": "LocationPreference", - "type": "object", - "description": "Preferred location. This specifies where a Cloud SQL instance should preferably be located, either in a specific Compute Engine zone, or co-located with an App Engine application. Note that if the preferred location is not available, the instance will be located as close as possible within the region. Only one location may be specified.", - "properties": { - "followGaeApplication": { - "type": "string", - "description": "The App Engine application to follow, it must be in the same region as the Cloud SQL instance." - }, - "kind": { - "type": "string", - "description": "This is always sql#locationPreference.", - "default": "sql#locationPreference" - }, - "zone": { - "type": "string", - "description": "The preferred Compute Engine zone (e.g. us-centra1-a, us-central1-b, etc.)." - } - } - }, - "OperationError": { - "id": "OperationError", - "type": "object", - "description": "Database instance operation error.", - "properties": { - "code": { - "type": "string", - "description": "Identifies the specific error that occurred." - }, - "kind": { - "type": "string", - "description": "This is always sql#operationError.", - "default": "sql#operationError" - } - } - }, - "OperationsListResponse": { - "id": "OperationsListResponse", - "type": "object", - "description": "Database instance list operations response.", - "properties": { - "items": { - "type": "array", - "description": "List of operation resources.", - "items": { - "$ref": "InstanceOperation" - } - }, - "kind": { - "type": "string", - "description": "This is always sql#operationsList.", - "default": "sql#operationsList" - }, - "nextPageToken": { - "type": "string", - "description": "The continuation token, used to page through large result sets. Provide this value in a subsequent request to return the next page of results." - } - } - }, - "SetRootPasswordContext": { - "id": "SetRootPasswordContext", - "type": "object", - "description": "Database instance set root password context.", - "properties": { - "kind": { - "type": "string", - "description": "This is always sql#setRootUserContext.", - "default": "sql#setRootUserContext" - }, - "password": { - "type": "string", - "description": "The password for the root user." - } - } - }, - "Settings": { - "id": "Settings", - "type": "object", - "description": "Database instance settings.", - "properties": { - "activationPolicy": { - "type": "string", - "description": "The activation policy for this instance. This specifies when the instance should be activated and is applicable only when the instance state is RUNNABLE. This can be one of the following.\nALWAYS: The instance should always be active.\nNEVER: The instance should never be activated.\nON_DEMAND: The instance is activated upon receiving requests." - }, - "authorizedGaeApplications": { - "type": "array", - "description": "The App Engine app IDs that can access this instance.", - "items": { - "type": "string" - } - }, - "backupConfiguration": { - "type": "array", - "description": "The daily backup configuration for the instance.", - "items": { - "$ref": "BackupConfiguration" - } - }, - "databaseFlags": { - "type": "array", - "description": "The database flags passed to the instance at startup.", - "items": { - "$ref": "DatabaseFlags" - } - }, - "databaseReplicationEnabled": { - "type": "boolean", - "description": "Configuration specific to read replica instance. Indicates whether replication is enabled or not." - }, - "ipConfiguration": { - "$ref": "IpConfiguration", - "description": "The settings for IP Management. This allows to enable or disable the instance IP and manage which external networks can connect to the instance." - }, - "kind": { - "type": "string", - "description": "This is always sql#settings.", - "default": "sql#settings" - }, - "locationPreference": { - "$ref": "LocationPreference", - "description": "The location preference settings. This allows the instance to be located as near as possible to either an App Engine app or GCE zone for better performance." - }, - "pricingPlan": { - "type": "string", - "description": "The pricing plan for this instance. This can be either PER_USE or PACKAGE." - }, - "replicationType": { - "type": "string", - "description": "The type of replication this instance uses. This can be either ASYNCHRONOUS or SYNCHRONOUS." - }, - "settingsVersion": { - "type": "string", - "description": "The version of instance settings. This is a required field for update method to make sure concurrent updates are handled properly. During update, use the most recent settingsVersion value for this instance and do not try to update this value.", - "format": "int64", - "annotations": { - "required": [ - "sql.instances.update" - ] - } - }, - "tier": { - "type": "string", - "description": "The tier of service for this instance, for example D1, D2. For more information, see pricing.", - "annotations": { - "required": [ - "sql.instances.insert", - "sql.instances.update" - ] - } - } - } - }, - "SslCert": { - "id": "SslCert", - "type": "object", - "description": "SslCerts Resource", - "properties": { - "cert": { - "type": "string", - "description": "PEM representation." - }, - "certSerialNumber": { - "type": "string", - "description": "Serial number, as extracted from the certificate." - }, - "commonName": { - "type": "string", - "description": "User supplied name. Constrained to [a-zA-Z.-_ ]+." - }, - "createTime": { - "type": "string", - "description": "Time when the certificate was created.", - "format": "date-time" - }, - "expirationTime": { - "type": "string", - "description": "Time when the certificate expires.", - "format": "date-time" - }, - "instance": { - "type": "string", - "description": "Name of the database instance." - }, - "kind": { - "type": "string", - "description": "This is always sql#sslCert.", - "default": "sql#sslCert" - }, - "sha1Fingerprint": { - "type": "string", - "description": "Sha1 Fingerprint." - } - } - }, - "SslCertDetail": { - "id": "SslCertDetail", - "type": "object", - "description": "SslCertDetail.", - "properties": { - "certInfo": { - "$ref": "SslCert", - "description": "The public information about the cert." - }, - "certPrivateKey": { - "type": "string", - "description": "The private key for the client cert, in pem format. Keep private in order to protect your security." - } - } - }, - "SslCertsDeleteResponse": { - "id": "SslCertsDeleteResponse", - "type": "object", - "description": "SslCert delete response.", - "properties": { - "kind": { - "type": "string", - "description": "This is always sql#sslCertsDelete.", - "default": "sql#sslCertsDelete" - }, - "operation": { - "type": "string", - "description": "An identifier that uniquely identifies the operation. You can use this identifier to retrieve the Operations resource that has information about the operation." - } - } - }, - "SslCertsInsertRequest": { - "id": "SslCertsInsertRequest", - "type": "object", - "description": "SslCerts insert request.", - "properties": { - "commonName": { - "type": "string", - "description": "User supplied name. Must be a distinct name from the other certificates for this instance. New certificates will not be usable until the instance is restarted." - } - } - }, - "SslCertsInsertResponse": { - "id": "SslCertsInsertResponse", - "type": "object", - "description": "SslCert insert response.", - "properties": { - "clientCert": { - "$ref": "SslCertDetail", - "description": "The new client certificate and private key. The new certificate will not work until the instance is restarted." - }, - "kind": { - "type": "string", - "description": "This is always sql#sslCertsInsert.", - "default": "sql#sslCertsInsert" - }, - "serverCaCert": { - "$ref": "SslCert", - "description": "The server Certificate Authority's certificate. If this is missing you can force a new one to be generated by calling resetSslConfig method on instances resource.." - } - } - }, - "SslCertsListResponse": { - "id": "SslCertsListResponse", - "type": "object", - "description": "SslCerts list response.", - "properties": { - "items": { - "type": "array", - "description": "List of client certificates for the instance.", - "items": { - "$ref": "SslCert" - } - }, - "kind": { - "type": "string", - "description": "This is always sql#sslCertsList.", - "default": "sql#sslCertsList" - } - } - }, - "Tier": { - "id": "Tier", - "type": "object", - "description": "A Google Cloud SQL service tier resource.", - "properties": { - "DiskQuota": { - "type": "string", - "description": "The maximum disk size of this tier in bytes.", - "format": "int64" - }, - "RAM": { - "type": "string", - "description": "The maximum RAM usage of this tier in bytes.", - "format": "int64" - }, - "kind": { - "type": "string", - "description": "This is always sql#tier.", - "default": "sql#tier" - }, - "region": { - "type": "array", - "description": "The applicable regions for this tier.", - "items": { - "type": "string" - } - }, - "tier": { - "type": "string", - "description": "An identifier for the service tier, for example D1, D2 etc. For related information, see Pricing." - } - } - }, - "TiersListResponse": { - "id": "TiersListResponse", - "type": "object", - "description": "Tiers list response.", - "properties": { - "items": { - "type": "array", - "description": "List of tiers.", - "items": { - "$ref": "Tier" - } - }, - "kind": { - "type": "string", - "description": "This is always sql#tiersList.", - "default": "sql#tiersList" - } - } - } - }, - "resources": { - "backupRuns": { - "methods": { - "get": { - "id": "sql.backupRuns.get", - "path": "projects/{project}/instances/{instance}/backupRuns/{backupConfiguration}", - "httpMethod": "GET", - "description": "Retrieves information about a specified backup run for a Cloud SQL instance.", - "parameters": { - "backupConfiguration": { - "type": "string", - "description": "Identifier for the backup configuration. This gets generated automatically when a backup configuration is created.", - "required": true, - "location": "path" - }, - "dueTime": { - "type": "string", - "description": "The start time of the four-hour backup window. The backup can occur any time in the window. The time is in RFC 3339 format, for example 2012-11-15T16:19:00.094Z.", - "required": true, - "location": "query" - }, - "instance": { - "type": "string", - "description": "Cloud SQL instance ID. This does not include the project ID.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID of the project that contains the instance.", - "required": true, - "location": "path" + "protocol": "rest", + "resources": { + "backupRuns": { + "methods": { + "get": { + "description": "Retrieves information about a specified backup run for a Cloud SQL instance.", + "httpMethod": "GET", + "id": "sql.backupRuns.get", + "parameterOrder": [ + "project", + "instance", + "backupConfiguration", + "dueTime" + ], + "parameters": { + "backupConfiguration": { + "description": "Identifier for the backup configuration. This gets generated automatically when a backup configuration is created.", + "location": "path", + "required": true, + "type": "string" + }, + "dueTime": { + "description": "The start time of the four-hour backup window. The backup can occur any time in the window. The time is in RFC 3339 format, for example 2012-11-15T16:19:00.094Z.", + "location": "query", + "required": true, + "type": "string" + }, + "instance": { + "description": "Cloud SQL instance ID. This does not include the project ID.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID of the project that contains the instance.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/instances/{instance}/backupRuns/{backupConfiguration}", + "response": { + "$ref": "BackupRun" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/sqlservice.admin" + ] + }, + "list": { + "description": "Lists all backup runs associated with a Cloud SQL instance.", + "httpMethod": "GET", + "id": "sql.backupRuns.list", + "parameterOrder": [ + "project", + "instance", + "backupConfiguration" + ], + "parameters": { + "backupConfiguration": { + "description": "Identifier for the backup configuration. This gets generated automatically when a backup configuration is created.", + "location": "query", + "required": true, + "type": "string" + }, + "instance": { + "description": "Cloud SQL instance ID. This does not include the project ID.", + "location": "path", + "required": true, + "type": "string" + }, + "maxResults": { + "description": "Maximum number of backup runs per response.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "A previously-returned page token representing part of the larger set of results to view.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID of the project that contains the instance.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/instances/{instance}/backupRuns", + "response": { + "$ref": "BackupRunsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/sqlservice.admin" + ] + } } - }, - "parameterOrder": [ - "project", - "instance", - "backupConfiguration", - "dueTime" - ], - "response": { - "$ref": "BackupRun" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/sqlservice.admin" - ] }, - "list": { - "id": "sql.backupRuns.list", - "path": "projects/{project}/instances/{instance}/backupRuns", - "httpMethod": "GET", - "description": "Lists all backup runs associated with a Cloud SQL instance.", - "parameters": { - "backupConfiguration": { - "type": "string", - "description": "Identifier for the backup configuration. This gets generated automatically when a backup configuration is created.", - "required": true, - "location": "query" - }, - "instance": { - "type": "string", - "description": "Cloud SQL instance ID. This does not include the project ID.", - "required": true, - "location": "path" - }, - "maxResults": { - "type": "integer", - "description": "Maximum number of backup runs per response.", - "format": "int32", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "A previously-returned page token representing part of the larger set of results to view.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID of the project that contains the instance.", - "required": true, - "location": "path" + "flags": { + "methods": { + "list": { + "description": "Lists all database flags that can be set for Google Cloud SQL instances.", + "httpMethod": "GET", + "id": "sql.flags.list", + "path": "flags", + "response": { + "$ref": "FlagsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/sqlservice.admin" + ] + } + } + }, + "instances": { + "methods": { + "clone": { + "description": "Creates a Cloud SQL instance as a clone of a source instance.", + "httpMethod": "POST", + "id": "sql.instances.clone", + "parameterOrder": [ + "project" + ], + "parameters": { + "project": { + "description": "Project ID of the source as well as the clone Cloud SQL instance.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/instances/clone", + "request": { + "$ref": "InstancesCloneRequest" + }, + "response": { + "$ref": "InstancesCloneResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/sqlservice.admin" + ] + }, + "delete": { + "description": "Deletes a Cloud SQL instance.", + "httpMethod": "DELETE", + "id": "sql.instances.delete", + "parameterOrder": [ + "project", + "instance" + ], + "parameters": { + "instance": { + "description": "Cloud SQL instance ID. This does not include the project ID.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID of the project that contains the instance to be deleted.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/instances/{instance}", + "response": { + "$ref": "InstancesDeleteResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/sqlservice.admin" + ] + }, + "export": { + "description": "Exports data from a Cloud SQL instance to a Google Cloud Storage bucket as a MySQL dump file.", + "httpMethod": "POST", + "id": "sql.instances.export", + "parameterOrder": [ + "project", + "instance" + ], + "parameters": { + "instance": { + "description": "Cloud SQL instance ID. This does not include the project ID.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID of the project that contains the instance to be exported.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/instances/{instance}/export", + "request": { + "$ref": "InstancesExportRequest" + }, + "response": { + "$ref": "InstancesExportResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Retrieves information about a Cloud SQL instance.", + "httpMethod": "GET", + "id": "sql.instances.get", + "parameterOrder": [ + "project", + "instance" + ], + "parameters": { + "instance": { + "description": "Database instance ID. This does not include the project ID.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID of the project that contains the instance.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/instances/{instance}", + "response": { + "$ref": "DatabaseInstance" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/sqlservice.admin" + ] + }, + "import": { + "description": "Imports data into a Cloud SQL instance from a MySQL dump file stored in a Google Cloud Storage bucket.", + "httpMethod": "POST", + "id": "sql.instances.import", + "parameterOrder": [ + "project", + "instance" + ], + "parameters": { + "instance": { + "description": "Cloud SQL instance ID. This does not include the project ID.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID of the project that contains the instance.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/instances/{instance}/import", + "request": { + "$ref": "InstancesImportRequest" + }, + "response": { + "$ref": "InstancesImportResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "insert": { + "description": "Creates a new Cloud SQL instance.", + "httpMethod": "POST", + "id": "sql.instances.insert", + "parameterOrder": [ + "project" + ], + "parameters": { + "project": { + "description": "Project ID of the project to which the newly created Cloud SQL instances should belong.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/instances", + "request": { + "$ref": "DatabaseInstance" + }, + "response": { + "$ref": "InstancesInsertResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/sqlservice.admin" + ] + }, + "list": { + "description": "Lists instances for a given project, in alphabetical order by instance name.", + "httpMethod": "GET", + "id": "sql.instances.list", + "parameterOrder": [ + "project" + ], + "parameters": { + "maxResults": { + "description": "The maximum number of results to return per response.", + "format": "uint32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "A previously-returned page token representing part of the larger set of results to view.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID of the project for which to list Cloud SQL instances.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/instances", + "response": { + "$ref": "InstancesListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/sqlservice.admin" + ] + }, + "patch": { + "description": "Updates the settings of a Cloud SQL instance. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "sql.instances.patch", + "parameterOrder": [ + "project", + "instance" + ], + "parameters": { + "instance": { + "description": "Cloud SQL instance ID. This does not include the project ID.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID of the project that contains the instance.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/instances/{instance}", + "request": { + "$ref": "DatabaseInstance" + }, + "response": { + "$ref": "InstancesUpdateResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/sqlservice.admin" + ] + }, + "promoteReplica": { + "description": "Promotes the read replica instance to be a stand-alone Cloud SQL instance.", + "httpMethod": "POST", + "id": "sql.instances.promoteReplica", + "parameterOrder": [ + "project", + "instance" + ], + "parameters": { + "instance": { + "description": "Cloud SQL read replica instance name.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "ID of the project that contains the read replica.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/instances/{instance}/promoteReplica", + "response": { + "$ref": "InstancesPromoteReplicaResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/sqlservice.admin" + ] + }, + "resetSslConfig": { + "description": "Deletes all client certificates and generates a new server SSL certificate for a Cloud SQL instance.", + "httpMethod": "POST", + "id": "sql.instances.resetSslConfig", + "parameterOrder": [ + "project", + "instance" + ], + "parameters": { + "instance": { + "description": "Cloud SQL instance ID. This does not include the project ID.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID of the project that contains the instance.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/instances/{instance}/resetSslConfig", + "response": { + "$ref": "InstancesResetSslConfigResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/sqlservice.admin" + ] + }, + "restart": { + "description": "Restarts a Cloud SQL instance.", + "httpMethod": "POST", + "id": "sql.instances.restart", + "parameterOrder": [ + "project", + "instance" + ], + "parameters": { + "instance": { + "description": "Cloud SQL instance ID. This does not include the project ID.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID of the project that contains the instance to be restarted.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/instances/{instance}/restart", + "response": { + "$ref": "InstancesRestartResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/sqlservice.admin" + ] + }, + "restoreBackup": { + "description": "Restores a backup of a Cloud SQL instance.", + "httpMethod": "POST", + "id": "sql.instances.restoreBackup", + "parameterOrder": [ + "project", + "instance", + "backupConfiguration", + "dueTime" + ], + "parameters": { + "backupConfiguration": { + "description": "The identifier of the backup configuration. This gets generated automatically when a backup configuration is created.", + "location": "query", + "required": true, + "type": "string" + }, + "dueTime": { + "description": "The start time of the four-hour backup window. The backup can occur any time in the window. The time is in RFC 3339 format, for example 2012-11-15T16:19:00.094Z.", + "location": "query", + "required": true, + "type": "string" + }, + "instance": { + "description": "Cloud SQL instance ID. This does not include the project ID.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID of the project that contains the instance.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/instances/{instance}/restoreBackup", + "response": { + "$ref": "InstancesRestoreBackupResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/sqlservice.admin" + ] + }, + "setRootPassword": { + "description": "Sets the password for the root user of the specified Cloud SQL instance.", + "httpMethod": "POST", + "id": "sql.instances.setRootPassword", + "parameterOrder": [ + "project", + "instance" + ], + "parameters": { + "instance": { + "description": "Cloud SQL instance ID. This does not include the project ID.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID of the project that contains the instance.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/instances/{instance}/setRootPassword", + "request": { + "$ref": "InstanceSetRootPasswordRequest" + }, + "response": { + "$ref": "InstancesSetRootPasswordResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/sqlservice.admin" + ] + }, + "update": { + "description": "Updates the settings of a Cloud SQL instance.", + "etagRequired": true, + "httpMethod": "PUT", + "id": "sql.instances.update", + "parameterOrder": [ + "project", + "instance" + ], + "parameters": { + "instance": { + "description": "Cloud SQL instance ID. This does not include the project ID.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID of the project that contains the instance.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/instances/{instance}", + "request": { + "$ref": "DatabaseInstance" + }, + "response": { + "$ref": "InstancesUpdateResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/sqlservice.admin" + ] + } + } + }, + "operations": { + "methods": { + "get": { + "description": "Retrieves information about a specific operation that was performed on a Cloud SQL instance.", + "httpMethod": "GET", + "id": "sql.operations.get", + "parameterOrder": [ + "project", + "instance", + "operation" + ], + "parameters": { + "instance": { + "description": "Cloud SQL instance ID. This does not include the project ID.", + "location": "path", + "required": true, + "type": "string" + }, + "operation": { + "description": "Instance operation ID.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID of the project that contains the instance.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/instances/{instance}/operations/{operation}", + "response": { + "$ref": "InstanceOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/sqlservice.admin" + ] + }, + "list": { + "description": "Lists all operations that have been performed on a Cloud SQL instance.", + "httpMethod": "GET", + "id": "sql.operations.list", + "parameterOrder": [ + "project", + "instance" + ], + "parameters": { + "instance": { + "description": "Cloud SQL instance ID. This does not include the project ID.", + "location": "path", + "required": true, + "type": "string" + }, + "maxResults": { + "description": "Maximum number of operations per response.", + "format": "uint32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "A previously-returned page token representing part of the larger set of results to view.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID of the project that contains the instance.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/instances/{instance}/operations", + "response": { + "$ref": "OperationsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/sqlservice.admin" + ] + } + } + }, + "sslCerts": { + "methods": { + "delete": { + "description": "Deletes an SSL certificate from a Cloud SQL instance.", + "httpMethod": "DELETE", + "id": "sql.sslCerts.delete", + "parameterOrder": [ + "project", + "instance", + "sha1Fingerprint" + ], + "parameters": { + "instance": { + "description": "Cloud SQL instance ID. This does not include the project ID.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID of the project that contains the instance to be deleted.", + "location": "path", + "required": true, + "type": "string" + }, + "sha1Fingerprint": { + "description": "Sha1 FingerPrint.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/instances/{instance}/sslCerts/{sha1Fingerprint}", + "response": { + "$ref": "SslCertsDeleteResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/sqlservice.admin" + ] + }, + "get": { + "description": "Retrieves an SSL certificate as specified by its SHA-1 fingerprint.", + "httpMethod": "GET", + "id": "sql.sslCerts.get", + "parameterOrder": [ + "project", + "instance", + "sha1Fingerprint" + ], + "parameters": { + "instance": { + "description": "Cloud SQL instance ID. This does not include the project ID.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID of the project that contains the instance.", + "location": "path", + "required": true, + "type": "string" + }, + "sha1Fingerprint": { + "description": "Sha1 FingerPrint.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/instances/{instance}/sslCerts/{sha1Fingerprint}", + "response": { + "$ref": "SslCert" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/sqlservice.admin" + ] + }, + "insert": { + "description": "Creates an SSL certificate and returns the certificate, the associated private key, and the server certificate authority.", + "httpMethod": "POST", + "id": "sql.sslCerts.insert", + "parameterOrder": [ + "project", + "instance" + ], + "parameters": { + "instance": { + "description": "Cloud SQL instance ID. This does not include the project ID.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID of the project to which the newly created Cloud SQL instances should belong.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/instances/{instance}/sslCerts", + "request": { + "$ref": "SslCertsInsertRequest" + }, + "response": { + "$ref": "SslCertsInsertResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/sqlservice.admin" + ] + }, + "list": { + "description": "Lists all of the current SSL certificates defined for a Cloud SQL instance.", + "httpMethod": "GET", + "id": "sql.sslCerts.list", + "parameterOrder": [ + "project", + "instance" + ], + "parameters": { + "instance": { + "description": "Cloud SQL instance ID. This does not include the project ID.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID of the project for which to list Cloud SQL instances.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/instances/{instance}/sslCerts", + "response": { + "$ref": "SslCertsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/sqlservice.admin" + ] + } + } + }, + "tiers": { + "methods": { + "list": { + "description": "Lists service tiers that can be used to create Google Cloud SQL instances.", + "httpMethod": "GET", + "id": "sql.tiers.list", + "parameterOrder": [ + "project" + ], + "parameters": { + "project": { + "description": "Project ID of the project for which to list tiers.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/tiers", + "response": { + "$ref": "TiersListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/sqlservice.admin" + ] + } } - }, - "parameterOrder": [ - "project", - "instance", - "backupConfiguration" - ], - "response": { - "$ref": "BackupRunsListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/sqlservice.admin" - ] } - } }, - "flags": { - "methods": { - "list": { - "id": "sql.flags.list", - "path": "flags", - "httpMethod": "GET", - "description": "Lists all database flags that can be set for Google Cloud SQL instances.", - "response": { - "$ref": "FlagsListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/sqlservice.admin" - ] + "revision": "20180124", + "rootUrl": "https://www.googleapis.com/", + "schemas": { + "BackupConfiguration": { + "description": "Database instance backup configuration.", + "id": "BackupConfiguration", + "properties": { + "binaryLogEnabled": { + "description": "Whether binary log is enabled. If backup configuration is disabled, binary log must be disabled as well.", + "type": "boolean" + }, + "enabled": { + "description": "Whether this configuration is enabled.", + "type": "boolean" + }, + "id": { + "description": "Identifier for this configuration. This gets generated automatically when a backup configuration is created.", + "type": "string" + }, + "kind": { + "default": "sql#backupConfiguration", + "description": "This is always sql#backupConfiguration.", + "type": "string" + }, + "replicationLogArchivingEnabled": { + "description": "Whether replication log archiving is enabled. Replication log archiving is required for the point-in-time recovery (PITR) feature. PostgreSQL instances only.", + "type": "boolean" + }, + "startTime": { + "description": "Start time for the daily backup configuration in UTC timezone in the 24 hour format - HH:MM.", + "type": "string" + } + }, + "type": "object" + }, + "BackupRun": { + "description": "A database instance backup run resource.", + "id": "BackupRun", + "properties": { + "backupConfiguration": { + "description": "Backup Configuration identifier.", + "type": "string" + }, + "dueTime": { + "description": "The due time of this run in UTC timezone in RFC 3339 format, for example 2012-11-15T16:19:00.094Z.", + "format": "date-time", + "type": "string" + }, + "endTime": { + "description": "The time the backup operation completed in UTC timezone in RFC 3339 format, for example 2012-11-15T16:19:00.094Z.", + "format": "date-time", + "type": "string" + }, + "enqueuedTime": { + "description": "The time the run was enqueued in UTC timezone in RFC 3339 format, for example 2012-11-15T16:19:00.094Z.", + "format": "date-time", + "type": "string" + }, + "error": { + "$ref": "OperationError", + "description": "Information about why the backup operation failed. This is only present if the run has the FAILED status." + }, + "instance": { + "description": "Name of the database instance.", + "type": "string" + }, + "kind": { + "default": "sql#backupRun", + "description": "This is always sql#backupRun.", + "type": "string" + }, + "startTime": { + "description": "The time the backup operation actually started in UTC timezone in RFC 3339 format, for example 2012-11-15T16:19:00.094Z.", + "format": "date-time", + "type": "string" + }, + "status": { + "description": "The status of this run.", + "type": "string" + } + }, + "type": "object" + }, + "BackupRunsListResponse": { + "description": "Backup run list results.", + "id": "BackupRunsListResponse", + "properties": { + "items": { + "description": "A list of backup runs in reverse chronological order of the enqueued time.", + "items": { + "$ref": "BackupRun" + }, + "type": "array" + }, + "kind": { + "default": "sql#backupRunsList", + "description": "This is always sql#backupRunsList.", + "type": "string" + }, + "nextPageToken": { + "description": "The continuation token, used to page through large result sets. Provide this value in a subsequent request to return the next page of results.", + "type": "string" + } + }, + "type": "object" + }, + "BinLogCoordinates": { + "description": "Binary log coordinates.", + "id": "BinLogCoordinates", + "properties": { + "binLogFileName": { + "description": "Name of the binary log file for a Cloud SQL instance.", + "type": "string" + }, + "binLogPosition": { + "description": "Position (offset) within the binary log file.", + "format": "int64", + "type": "string" + }, + "kind": { + "default": "sql#binLogCoordinates", + "description": "This is always sql#binLogCoordinates.", + "type": "string" + } + }, + "type": "object" + }, + "CloneContext": { + "description": "Database instance clone context.", + "id": "CloneContext", + "properties": { + "binLogCoordinates": { + "$ref": "BinLogCoordinates", + "description": "Binary log coordinates, if specified, indentify the position up to which the source instance should be cloned. If not specified, the source instance is cloned up to the most recent binary log coordinates." + }, + "destinationInstanceName": { + "description": "Name of the Cloud SQL instance to be created as a clone.", + "type": "string" + }, + "kind": { + "default": "sql#cloneContext", + "description": "This is always sql#cloneContext.", + "type": "string" + }, + "pitrTimestampMs": { + "description": "The epoch timestamp, in milliseconds, of the time to which a point-in-time recovery (PITR) is performed. PostgreSQL instances only. For MySQL instances, use the binLogCoordinates property.", + "format": "int64", + "type": "string" + }, + "sourceInstanceName": { + "description": "Name of the Cloud SQL instance to be cloned.", + "type": "string" + } + }, + "type": "object" + }, + "DatabaseFlags": { + "description": "MySQL flags for Cloud SQL instances.", + "id": "DatabaseFlags", + "properties": { + "name": { + "description": "The name of the flag. These flags are passed at instance startup, so include both MySQL server options and MySQL system variables. Flags should be specified with underscores, not hyphens. For more information, see Configuring MySQL Flags in the Google Cloud SQL documentation, as well as the official MySQL documentation for server options and system variables.", + "type": "string" + }, + "value": { + "description": "The value of the flag. Booleans should be set to on for true and off for false. This field must be omitted if the flag doesn't take a value.", + "type": "string" + } + }, + "type": "object" + }, + "DatabaseInstance": { + "description": "A Cloud SQL instance resource.", + "id": "DatabaseInstance", + "properties": { + "connectionName": { + "description": "Connection name of the Cloud SQL instance used in connection strings.", + "type": "string" + }, + "currentDiskSize": { + "description": "The current disk usage of the instance in bytes.", + "format": "int64", + "type": "string" + }, + "databaseVersion": { + "description": "The database engine type and version. Can be MYSQL_5_5 or MYSQL_5_6. Defaults to MYSQL_5_5. The databaseVersion cannot be changed after instance creation.", + "type": "string" + }, + "etag": { + "description": "HTTP 1.1 Entity tag for the resource.", + "type": "string" + }, + "instance": { + "annotations": { + "required": [ + "sql.instances.insert", + "sql.instances.update" + ] + }, + "description": "Name of the Cloud SQL instance. This does not include the project ID.", + "type": "string" + }, + "instanceType": { + "description": "The instance type. This can be one of the following.\nCLOUD_SQL_INSTANCE: Regular Cloud SQL instance.\nREAD_REPLICA_INSTANCE: Cloud SQL instance acting as a read-replica.", + "type": "string" + }, + "ipAddresses": { + "description": "The assigned IP addresses for the instance.", + "items": { + "$ref": "IpMapping" + }, + "type": "array" + }, + "ipv6Address": { + "description": "The IPv6 address assigned to the instance.", + "type": "string" + }, + "kind": { + "default": "sql#instance", + "description": "This is always sql#instance.", + "type": "string" + }, + "masterInstanceName": { + "description": "The name of the instance which will act as master in the replication setup.", + "type": "string" + }, + "maxDiskSize": { + "description": "The maximum disk size of the instance in bytes.", + "format": "int64", + "type": "string" + }, + "project": { + "annotations": { + "required": [ + "sql.instances.insert", + "sql.instances.update" + ] + }, + "description": "The project ID of the project containing the Cloud SQL instance. The Google apps domain is prefixed if applicable.", + "type": "string" + }, + "region": { + "description": "The geographical region. Can be us-central, asia-east1 or europe-west1. Defaults to us-central. The region can not be changed after instance creation.", + "type": "string" + }, + "replicaNames": { + "description": "The replicas of the instance.", + "items": { + "type": "string" + }, + "type": "array" + }, + "serverCaCert": { + "$ref": "SslCert", + "description": "SSL configuration." + }, + "serviceAccountEmailAddress": { + "description": "The service account email address assigned to the instance.", + "type": "string" + }, + "settings": { + "$ref": "Settings", + "description": "The user settings." + }, + "state": { + "description": "The current serving state of the Cloud SQL instance. This can be one of the following.\nRUNNABLE: The instance is running, or is ready to run when accessed.\nSUSPENDED: The instance is not available, for example due to problems with billing.\nPENDING_CREATE: The instance is being created.\nMAINTENANCE: The instance is down for maintenance.\nUNKNOWN_STATE: The state of the instance is unknown.", + "type": "string" + } + }, + "type": "object" + }, + "ExportContext": { + "description": "Database instance export context.", + "id": "ExportContext", + "properties": { + "database": { + "description": "Databases (for example, guestbook) from which the export is made. If unspecified, all databases are exported.", + "items": { + "type": "string" + }, + "type": "array" + }, + "kind": { + "default": "sql#exportContext", + "description": "This is always sql#exportContext.", + "type": "string" + }, + "table": { + "description": "Tables to export, or that were exported, from the specified database. If you specify tables, specify one and only one database.", + "items": { + "type": "string" + }, + "type": "array" + }, + "uri": { + "description": "The path to the file in Google Cloud Storage where the export will be stored, or where it was already stored. The URI is in the form gs://bucketName/fileName. If the file already exists, the operation fails. If the filename ends with .gz, the contents are compressed.", + "type": "string" + } + }, + "type": "object" + }, + "Flag": { + "description": "A Google Cloud SQL service flag resource.", + "id": "Flag", + "properties": { + "allowedStringValues": { + "description": "For STRING flags, a list of strings that the value can be set to.", + "items": { + "type": "string" + }, + "type": "array" + }, + "appliesTo": { + "description": "The database version this flag applies to. Currently this can only be [MYSQL_5_5].", + "items": { + "type": "string" + }, + "type": "array" + }, + "kind": { + "default": "sql#flag", + "description": "This is always sql#flag.", + "type": "string" + }, + "maxValue": { + "description": "For INTEGER flags, the maximum allowed value.", + "format": "int64", + "type": "string" + }, + "minValue": { + "description": "For INTEGER flags, the minimum allowed value.", + "format": "int64", + "type": "string" + }, + "name": { + "description": "This is the name of the flag. Flag names always use underscores, not hyphens, e.g. max_allowed_packet", + "type": "string" + }, + "type": { + "description": "The type of the flag. Flags are typed to being BOOLEAN, STRING, INTEGER or NONE. NONE is used for flags which do not take a value, such as skip_grant_tables.", + "type": "string" + } + }, + "type": "object" + }, + "FlagsListResponse": { + "description": "Flags list response.", + "id": "FlagsListResponse", + "properties": { + "items": { + "description": "List of flags.", + "items": { + "$ref": "Flag" + }, + "type": "array" + }, + "kind": { + "default": "sql#flagsList", + "description": "This is always sql#flagsList.", + "type": "string" + } + }, + "type": "object" + }, + "ImportContext": { + "description": "Database instance import context.", + "id": "ImportContext", + "properties": { + "database": { + "description": "The database (for example, guestbook) to which the import is made. If not set, it is assumed that the database is specified in the file to be imported.", + "type": "string" + }, + "kind": { + "default": "sql#importContext", + "description": "This is always sql#importContext.", + "type": "string" + }, + "uri": { + "description": "A path to the MySQL dump file in Google Cloud Storage from which the import is made. The URI is in the form gs://bucketName/fileName. Compressed gzip files (.gz) are also supported.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "InstanceOperation": { + "description": "An Operations resource contains information about database instance operations such as create, delete, and restart. Operations resources are created in response to operations that were initiated; you never create them directly.", + "id": "InstanceOperation", + "properties": { + "endTime": { + "description": "The time this operation finished in UTC timezone in RFC 3339 format, for example 2012-11-15T16:19:00.094Z.", + "format": "date-time", + "type": "string" + }, + "enqueuedTime": { + "description": "The time this operation was enqueued in UTC timezone in RFC 3339 format, for example 2012-11-15T16:19:00.094Z.", + "format": "date-time", + "type": "string" + }, + "error": { + "description": "The error(s) encountered by this operation. Only set if the operation results in an error.", + "items": { + "$ref": "OperationError" + }, + "type": "array" + }, + "exportContext": { + "$ref": "ExportContext", + "description": "The context for export operation, if applicable." + }, + "importContext": { + "$ref": "ImportContext", + "description": "The context for import operation, if applicable." + }, + "instance": { + "description": "Name of the database instance.", + "type": "string" + }, + "kind": { + "default": "sql#instanceOperation", + "description": "This is always sql#instanceOperation.", + "type": "string" + }, + "operation": { + "description": "An identifier that uniquely identifies the operation. You can use this identifier to retrieve the Operations resource that has information about the operation.", + "type": "string" + }, + "operationType": { + "description": "The type of the operation. Valid values are CREATE, DELETE, UPDATE, RESTART, IMPORT, EXPORT, BACKUP_VOLUME, RESTORE_VOLUME.", + "type": "string" + }, + "startTime": { + "description": "The time this operation actually started in UTC timezone in RFC 3339 format, for example 2012-11-15T16:19:00.094Z.", + "format": "date-time", + "type": "string" + }, + "state": { + "description": "The state of an operation. Valid values are PENDING, RUNNING, DONE, UNKNOWN.", + "type": "string" + }, + "userEmailAddress": { + "description": "The email address of the user who initiated this operation.", + "type": "string" + } + }, + "type": "object" + }, + "InstanceSetRootPasswordRequest": { + "description": "Database instance set root password request.", + "id": "InstanceSetRootPasswordRequest", + "properties": { + "setRootPasswordContext": { + "$ref": "SetRootPasswordContext", + "description": "Set Root Password Context." + } + }, + "type": "object" + }, + "InstancesCloneRequest": { + "description": "Database instance clone request.", + "id": "InstancesCloneRequest", + "properties": { + "cloneContext": { + "$ref": "CloneContext", + "description": "Contains details about the clone operation." + } + }, + "type": "object" + }, + "InstancesCloneResponse": { + "description": "Database instance clone response.", + "id": "InstancesCloneResponse", + "properties": { + "kind": { + "default": "sql#instancesClone", + "description": "This is always sql#instancesClone.", + "type": "string" + }, + "operation": { + "description": "An unique identifier for the operation associated with the cloned instance. You can use this identifier to retrieve the Operations resource, which has information about the operation.", + "type": "string" + } + }, + "type": "object" + }, + "InstancesDeleteResponse": { + "description": "Database instance delete response.", + "id": "InstancesDeleteResponse", + "properties": { + "kind": { + "default": "sql#instancesDelete", + "description": "This is always sql#instancesDelete.", + "type": "string" + }, + "operation": { + "description": "An identifier that uniquely identifies the operation. You can use this identifier to retrieve the Operations resource that has information about the operation.", + "type": "string" + } + }, + "type": "object" + }, + "InstancesExportRequest": { + "description": "Database instance export request.", + "id": "InstancesExportRequest", + "properties": { + "exportContext": { + "$ref": "ExportContext", + "description": "Contains details about the export operation." + } + }, + "type": "object" + }, + "InstancesExportResponse": { + "description": "Database instance export response.", + "id": "InstancesExportResponse", + "properties": { + "kind": { + "default": "sql#instancesExport", + "description": "This is always sql#instancesExport.", + "type": "string" + }, + "operation": { + "description": "An identifier that uniquely identifies the operation. You can use this identifier to retrieve the Operations resource that has information about the operation.", + "type": "string" + } + }, + "type": "object" + }, + "InstancesImportRequest": { + "description": "Database instance import request.", + "id": "InstancesImportRequest", + "properties": { + "importContext": { + "$ref": "ImportContext", + "description": "Contains details about the import operation." + } + }, + "type": "object" + }, + "InstancesImportResponse": { + "description": "Database instance import response.", + "id": "InstancesImportResponse", + "properties": { + "kind": { + "default": "sql#instancesImport", + "description": "This is always sql#instancesImport.", + "type": "string" + }, + "operation": { + "description": "An identifier that uniquely identifies the operation. You can use this identifier to retrieve the Operations resource that has information about the operation.", + "type": "string" + } + }, + "type": "object" + }, + "InstancesInsertResponse": { + "description": "Database instance insert response.", + "id": "InstancesInsertResponse", + "properties": { + "kind": { + "default": "sql#instancesInsert", + "description": "This is always sql#instancesInsert.", + "type": "string" + }, + "operation": { + "description": "An identifier that uniquely identifies the operation. You can use this identifier to retrieve the Operations resource that has information about the operation.", + "type": "string" + } + }, + "type": "object" + }, + "InstancesListResponse": { + "description": "Database instances list response.", + "id": "InstancesListResponse", + "properties": { + "items": { + "description": "List of database instance resources.", + "items": { + "$ref": "DatabaseInstance" + }, + "type": "array" + }, + "kind": { + "default": "sql#instancesList", + "description": "This is always sql#instancesList.", + "type": "string" + }, + "nextPageToken": { + "description": "The continuation token, used to page through large result sets. Provide this value in a subsequent request to return the next page of results.", + "type": "string" + } + }, + "type": "object" + }, + "InstancesPromoteReplicaResponse": { + "description": "Database promote read replica response.", + "id": "InstancesPromoteReplicaResponse", + "properties": { + "kind": { + "default": "sql#instancesPromoteReplica", + "description": "This is always sql#instancesPromoteReplica.", + "type": "string" + }, + "operation": { + "description": "An identifier that uniquely identifies the operation. You can use this identifier to retrieve the Operations resource that has information about the operation.", + "type": "string" + } + }, + "type": "object" + }, + "InstancesResetSslConfigResponse": { + "description": "Database instance resetSslConfig response.", + "id": "InstancesResetSslConfigResponse", + "properties": { + "kind": { + "default": "sql#instancesResetSslConfig", + "description": "This is always sql#instancesResetSslConfig.", + "type": "string" + }, + "operation": { + "description": "An identifier that uniquely identifies the operation. You can use this identifier to retrieve the Operations resource that has information about the operation. All ssl client certificates will be deleted and a new server certificate will be created. Does not take effect until the next instance restart.", + "type": "string" + } + }, + "type": "object" + }, + "InstancesRestartResponse": { + "description": "Database instance restart response.", + "id": "InstancesRestartResponse", + "properties": { + "kind": { + "default": "sql#instancesRestart", + "description": "This is always sql#instancesRestart.", + "type": "string" + }, + "operation": { + "description": "An identifier that uniquely identifies the operation. You can use this identifier to retrieve the Operations resource that has information about the operation.", + "type": "string" + } + }, + "type": "object" + }, + "InstancesRestoreBackupResponse": { + "description": "Database instance restore backup response.", + "id": "InstancesRestoreBackupResponse", + "properties": { + "kind": { + "default": "sql#instancesRestoreBackup", + "description": "This is always sql#instancesRestoreBackup.", + "type": "string" + }, + "operation": { + "description": "An identifier that uniquely identifies the operation. You can use this identifier to retrieve the Operations resource that has information about the operation.", + "type": "string" + } + }, + "type": "object" + }, + "InstancesSetRootPasswordResponse": { + "description": "Database instance set root password response.", + "id": "InstancesSetRootPasswordResponse", + "properties": { + "kind": { + "default": "sql#instancesSetRootPassword", + "description": "This is always sql#instancesSetRootPassword.", + "type": "string" + }, + "operation": { + "description": "An identifier that uniquely identifies the operation. You can use this identifier to retrieve the Operations resource that has information about the operation.", + "type": "string" + } + }, + "type": "object" + }, + "InstancesUpdateResponse": { + "description": "Database instance update response.", + "id": "InstancesUpdateResponse", + "properties": { + "kind": { + "default": "sql#instancesUpdate", + "description": "This is always sql#instancesUpdate.", + "type": "string" + }, + "operation": { + "description": "An identifier that uniquely identifies the operation. You can use this identifier to retrieve information about the operation.", + "type": "string" + } + }, + "type": "object" + }, + "IpConfiguration": { + "description": "IP Management configuration.", + "id": "IpConfiguration", + "properties": { + "authorizedNetworks": { + "description": "The list of external networks that are allowed to connect to the instance using the IP. In CIDR notation, also known as 'slash' notation (e.g. 192.168.100.0/24).", + "items": { + "type": "string" + }, + "type": "array" + }, + "enabled": { + "description": "Whether the instance should be assigned an IP address or not.", + "type": "boolean" + }, + "kind": { + "default": "sql#ipConfiguration", + "description": "This is always sql#ipConfiguration.", + "type": "string" + }, + "requireSsl": { + "description": "Whether SSL connections over IP should be enforced or not.", + "type": "boolean" + } + }, + "type": "object" + }, + "IpMapping": { + "description": "Database instance IP Mapping.", + "id": "IpMapping", + "properties": { + "ipAddress": { + "description": "The IP address assigned.", + "type": "string" + }, + "timeToRetire": { + "description": "The due time for this IP to be retired in RFC 3339 format, for example 2012-11-15T16:19:00.094Z. This field is only available when the IP is scheduled to be retired.", + "format": "date-time", + "type": "string" + } + }, + "type": "object" + }, + "LocationPreference": { + "description": "Preferred location. This specifies where a Cloud SQL instance should preferably be located, either in a specific Compute Engine zone, or co-located with an App Engine application. Note that if the preferred location is not available, the instance will be located as close as possible within the region. Only one location may be specified.", + "id": "LocationPreference", + "properties": { + "followGaeApplication": { + "description": "The App Engine application to follow, it must be in the same region as the Cloud SQL instance.", + "type": "string" + }, + "kind": { + "default": "sql#locationPreference", + "description": "This is always sql#locationPreference.", + "type": "string" + }, + "zone": { + "description": "The preferred Compute Engine zone (e.g. us-centra1-a, us-central1-b, etc.).", + "type": "string" + } + }, + "type": "object" + }, + "OperationError": { + "description": "Database instance operation error.", + "id": "OperationError", + "properties": { + "code": { + "description": "Identifies the specific error that occurred.", + "type": "string" + }, + "kind": { + "default": "sql#operationError", + "description": "This is always sql#operationError.", + "type": "string" + } + }, + "type": "object" + }, + "OperationsListResponse": { + "description": "Database instance list operations response.", + "id": "OperationsListResponse", + "properties": { + "items": { + "description": "List of operation resources.", + "items": { + "$ref": "InstanceOperation" + }, + "type": "array" + }, + "kind": { + "default": "sql#operationsList", + "description": "This is always sql#operationsList.", + "type": "string" + }, + "nextPageToken": { + "description": "The continuation token, used to page through large result sets. Provide this value in a subsequent request to return the next page of results.", + "type": "string" + } + }, + "type": "object" + }, + "SetRootPasswordContext": { + "description": "Database instance set root password context.", + "id": "SetRootPasswordContext", + "properties": { + "kind": { + "default": "sql#setRootUserContext", + "description": "This is always sql#setRootUserContext.", + "type": "string" + }, + "password": { + "description": "The password for the root user.", + "type": "string" + } + }, + "type": "object" + }, + "Settings": { + "description": "Database instance settings.", + "id": "Settings", + "properties": { + "activationPolicy": { + "description": "The activation policy for this instance. This specifies when the instance should be activated and is applicable only when the instance state is RUNNABLE. This can be one of the following.\nALWAYS: The instance should always be active.\nNEVER: The instance should never be activated.\nON_DEMAND: The instance is activated upon receiving requests.", + "type": "string" + }, + "authorizedGaeApplications": { + "description": "The App Engine app IDs that can access this instance.", + "items": { + "type": "string" + }, + "type": "array" + }, + "backupConfiguration": { + "description": "The daily backup configuration for the instance.", + "items": { + "$ref": "BackupConfiguration" + }, + "type": "array" + }, + "databaseFlags": { + "description": "The database flags passed to the instance at startup.", + "items": { + "$ref": "DatabaseFlags" + }, + "type": "array" + }, + "databaseReplicationEnabled": { + "description": "Configuration specific to read replica instance. Indicates whether replication is enabled or not.", + "type": "boolean" + }, + "ipConfiguration": { + "$ref": "IpConfiguration", + "description": "The settings for IP Management. This allows to enable or disable the instance IP and manage which external networks can connect to the instance." + }, + "kind": { + "default": "sql#settings", + "description": "This is always sql#settings.", + "type": "string" + }, + "locationPreference": { + "$ref": "LocationPreference", + "description": "The location preference settings. This allows the instance to be located as near as possible to either an App Engine app or GCE zone for better performance." + }, + "pricingPlan": { + "description": "The pricing plan for this instance. This can be either PER_USE or PACKAGE.", + "type": "string" + }, + "replicationType": { + "description": "The type of replication this instance uses. This can be either ASYNCHRONOUS or SYNCHRONOUS.", + "type": "string" + }, + "settingsVersion": { + "annotations": { + "required": [ + "sql.instances.update" + ] + }, + "description": "The version of instance settings. This is a required field for update method to make sure concurrent updates are handled properly. During update, use the most recent settingsVersion value for this instance and do not try to update this value.", + "format": "int64", + "type": "string" + }, + "tier": { + "annotations": { + "required": [ + "sql.instances.insert", + "sql.instances.update" + ] + }, + "description": "The tier of service for this instance, for example D1, D2. For more information, see pricing.", + "type": "string" + } + }, + "type": "object" + }, + "SslCert": { + "description": "SslCerts Resource", + "id": "SslCert", + "properties": { + "cert": { + "description": "PEM representation.", + "type": "string" + }, + "certSerialNumber": { + "description": "Serial number, as extracted from the certificate.", + "type": "string" + }, + "commonName": { + "description": "User supplied name. Constrained to [a-zA-Z.-_ ]+.", + "type": "string" + }, + "createTime": { + "description": "Time when the certificate was created.", + "format": "date-time", + "type": "string" + }, + "expirationTime": { + "description": "Time when the certificate expires.", + "format": "date-time", + "type": "string" + }, + "instance": { + "description": "Name of the database instance.", + "type": "string" + }, + "kind": { + "default": "sql#sslCert", + "description": "This is always sql#sslCert.", + "type": "string" + }, + "sha1Fingerprint": { + "description": "Sha1 Fingerprint.", + "type": "string" + } + }, + "type": "object" + }, + "SslCertDetail": { + "description": "SslCertDetail.", + "id": "SslCertDetail", + "properties": { + "certInfo": { + "$ref": "SslCert", + "description": "The public information about the cert." + }, + "certPrivateKey": { + "description": "The private key for the client cert, in pem format. Keep private in order to protect your security.", + "type": "string" + } + }, + "type": "object" + }, + "SslCertsDeleteResponse": { + "description": "SslCert delete response.", + "id": "SslCertsDeleteResponse", + "properties": { + "kind": { + "default": "sql#sslCertsDelete", + "description": "This is always sql#sslCertsDelete.", + "type": "string" + }, + "operation": { + "description": "An identifier that uniquely identifies the operation. You can use this identifier to retrieve the Operations resource that has information about the operation.", + "type": "string" + } + }, + "type": "object" + }, + "SslCertsInsertRequest": { + "description": "SslCerts insert request.", + "id": "SslCertsInsertRequest", + "properties": { + "commonName": { + "description": "User supplied name. Must be a distinct name from the other certificates for this instance. New certificates will not be usable until the instance is restarted.", + "type": "string" + } + }, + "type": "object" + }, + "SslCertsInsertResponse": { + "description": "SslCert insert response.", + "id": "SslCertsInsertResponse", + "properties": { + "clientCert": { + "$ref": "SslCertDetail", + "description": "The new client certificate and private key. The new certificate will not work until the instance is restarted." + }, + "kind": { + "default": "sql#sslCertsInsert", + "description": "This is always sql#sslCertsInsert.", + "type": "string" + }, + "serverCaCert": { + "$ref": "SslCert", + "description": "The server Certificate Authority's certificate. If this is missing you can force a new one to be generated by calling resetSslConfig method on instances resource.." + } + }, + "type": "object" + }, + "SslCertsListResponse": { + "description": "SslCerts list response.", + "id": "SslCertsListResponse", + "properties": { + "items": { + "description": "List of client certificates for the instance.", + "items": { + "$ref": "SslCert" + }, + "type": "array" + }, + "kind": { + "default": "sql#sslCertsList", + "description": "This is always sql#sslCertsList.", + "type": "string" + } + }, + "type": "object" + }, + "Tier": { + "description": "A Google Cloud SQL service tier resource.", + "id": "Tier", + "properties": { + "DiskQuota": { + "description": "The maximum disk size of this tier in bytes.", + "format": "int64", + "type": "string" + }, + "RAM": { + "description": "The maximum RAM usage of this tier in bytes.", + "format": "int64", + "type": "string" + }, + "kind": { + "default": "sql#tier", + "description": "This is always sql#tier.", + "type": "string" + }, + "region": { + "description": "The applicable regions for this tier.", + "items": { + "type": "string" + }, + "type": "array" + }, + "tier": { + "description": "An identifier for the service tier, for example D1, D2 etc. For related information, see Pricing.", + "type": "string" + } + }, + "type": "object" + }, + "TiersListResponse": { + "description": "Tiers list response.", + "id": "TiersListResponse", + "properties": { + "items": { + "description": "List of tiers.", + "items": { + "$ref": "Tier" + }, + "type": "array" + }, + "kind": { + "default": "sql#tiersList", + "description": "This is always sql#tiersList.", + "type": "string" + } + }, + "type": "object" } - } }, - "instances": { - "methods": { - "clone": { - "id": "sql.instances.clone", - "path": "projects/{project}/instances/clone", - "httpMethod": "POST", - "description": "Creates a Cloud SQL instance as a clone of a source instance.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID of the source as well as the clone Cloud SQL instance.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "request": { - "$ref": "InstancesCloneRequest" - }, - "response": { - "$ref": "InstancesCloneResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/sqlservice.admin" - ] - }, - "delete": { - "id": "sql.instances.delete", - "path": "projects/{project}/instances/{instance}", - "httpMethod": "DELETE", - "description": "Deletes a Cloud SQL instance.", - "parameters": { - "instance": { - "type": "string", - "description": "Cloud SQL instance ID. This does not include the project ID.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID of the project that contains the instance to be deleted.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "instance" - ], - "response": { - "$ref": "InstancesDeleteResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/sqlservice.admin" - ] - }, - "export": { - "id": "sql.instances.export", - "path": "projects/{project}/instances/{instance}/export", - "httpMethod": "POST", - "description": "Exports data from a Cloud SQL instance to a Google Cloud Storage bucket as a MySQL dump file.", - "parameters": { - "instance": { - "type": "string", - "description": "Cloud SQL instance ID. This does not include the project ID.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID of the project that contains the instance to be exported.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "instance" - ], - "request": { - "$ref": "InstancesExportRequest" - }, - "response": { - "$ref": "InstancesExportResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "get": { - "id": "sql.instances.get", - "path": "projects/{project}/instances/{instance}", - "httpMethod": "GET", - "description": "Retrieves information about a Cloud SQL instance.", - "parameters": { - "instance": { - "type": "string", - "description": "Database instance ID. This does not include the project ID.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID of the project that contains the instance.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "instance" - ], - "response": { - "$ref": "DatabaseInstance" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/sqlservice.admin" - ] - }, - "import": { - "id": "sql.instances.import", - "path": "projects/{project}/instances/{instance}/import", - "httpMethod": "POST", - "description": "Imports data into a Cloud SQL instance from a MySQL dump file stored in a Google Cloud Storage bucket.", - "parameters": { - "instance": { - "type": "string", - "description": "Cloud SQL instance ID. This does not include the project ID.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID of the project that contains the instance.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "instance" - ], - "request": { - "$ref": "InstancesImportRequest" - }, - "response": { - "$ref": "InstancesImportResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "insert": { - "id": "sql.instances.insert", - "path": "projects/{project}/instances", - "httpMethod": "POST", - "description": "Creates a new Cloud SQL instance.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID of the project to which the newly created Cloud SQL instances should belong.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "request": { - "$ref": "DatabaseInstance" - }, - "response": { - "$ref": "InstancesInsertResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/sqlservice.admin" - ] - }, - "list": { - "id": "sql.instances.list", - "path": "projects/{project}/instances", - "httpMethod": "GET", - "description": "Lists instances for a given project, in alphabetical order by instance name.", - "parameters": { - "maxResults": { - "type": "integer", - "description": "The maximum number of results to return per response.", - "format": "uint32", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "A previously-returned page token representing part of the larger set of results to view.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID of the project for which to list Cloud SQL instances.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "InstancesListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/sqlservice.admin" - ] - }, - "patch": { - "id": "sql.instances.patch", - "path": "projects/{project}/instances/{instance}", - "httpMethod": "PATCH", - "description": "Updates the settings of a Cloud SQL instance. This method supports patch semantics.", - "parameters": { - "instance": { - "type": "string", - "description": "Cloud SQL instance ID. This does not include the project ID.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID of the project that contains the instance.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "instance" - ], - "request": { - "$ref": "DatabaseInstance" - }, - "response": { - "$ref": "InstancesUpdateResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/sqlservice.admin" - ] - }, - "promoteReplica": { - "id": "sql.instances.promoteReplica", - "path": "projects/{project}/instances/{instance}/promoteReplica", - "httpMethod": "POST", - "description": "Promotes the read replica instance to be a stand-alone Cloud SQL instance.", - "parameters": { - "instance": { - "type": "string", - "description": "Cloud SQL read replica instance name.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "ID of the project that contains the read replica.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "instance" - ], - "response": { - "$ref": "InstancesPromoteReplicaResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/sqlservice.admin" - ] - }, - "resetSslConfig": { - "id": "sql.instances.resetSslConfig", - "path": "projects/{project}/instances/{instance}/resetSslConfig", - "httpMethod": "POST", - "description": "Deletes all client certificates and generates a new server SSL certificate for a Cloud SQL instance.", - "parameters": { - "instance": { - "type": "string", - "description": "Cloud SQL instance ID. This does not include the project ID.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID of the project that contains the instance.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "instance" - ], - "response": { - "$ref": "InstancesResetSslConfigResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/sqlservice.admin" - ] - }, - "restart": { - "id": "sql.instances.restart", - "path": "projects/{project}/instances/{instance}/restart", - "httpMethod": "POST", - "description": "Restarts a Cloud SQL instance.", - "parameters": { - "instance": { - "type": "string", - "description": "Cloud SQL instance ID. This does not include the project ID.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID of the project that contains the instance to be restarted.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "instance" - ], - "response": { - "$ref": "InstancesRestartResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/sqlservice.admin" - ] - }, - "restoreBackup": { - "id": "sql.instances.restoreBackup", - "path": "projects/{project}/instances/{instance}/restoreBackup", - "httpMethod": "POST", - "description": "Restores a backup of a Cloud SQL instance.", - "parameters": { - "backupConfiguration": { - "type": "string", - "description": "The identifier of the backup configuration. This gets generated automatically when a backup configuration is created.", - "required": true, - "location": "query" - }, - "dueTime": { - "type": "string", - "description": "The start time of the four-hour backup window. The backup can occur any time in the window. The time is in RFC 3339 format, for example 2012-11-15T16:19:00.094Z.", - "required": true, - "location": "query" - }, - "instance": { - "type": "string", - "description": "Cloud SQL instance ID. This does not include the project ID.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID of the project that contains the instance.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "instance", - "backupConfiguration", - "dueTime" - ], - "response": { - "$ref": "InstancesRestoreBackupResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/sqlservice.admin" - ] - }, - "setRootPassword": { - "id": "sql.instances.setRootPassword", - "path": "projects/{project}/instances/{instance}/setRootPassword", - "httpMethod": "POST", - "description": "Sets the password for the root user of the specified Cloud SQL instance.", - "parameters": { - "instance": { - "type": "string", - "description": "Cloud SQL instance ID. This does not include the project ID.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID of the project that contains the instance.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "instance" - ], - "request": { - "$ref": "InstanceSetRootPasswordRequest" - }, - "response": { - "$ref": "InstancesSetRootPasswordResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/sqlservice.admin" - ] - }, - "update": { - "id": "sql.instances.update", - "path": "projects/{project}/instances/{instance}", - "httpMethod": "PUT", - "description": "Updates the settings of a Cloud SQL instance.", - "parameters": { - "instance": { - "type": "string", - "description": "Cloud SQL instance ID. This does not include the project ID.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID of the project that contains the instance.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "instance" - ], - "etagRequired": true, - "request": { - "$ref": "DatabaseInstance" - }, - "response": { - "$ref": "InstancesUpdateResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/sqlservice.admin" - ] - } - } - }, - "operations": { - "methods": { - "get": { - "id": "sql.operations.get", - "path": "projects/{project}/instances/{instance}/operations/{operation}", - "httpMethod": "GET", - "description": "Retrieves information about a specific operation that was performed on a Cloud SQL instance.", - "parameters": { - "instance": { - "type": "string", - "description": "Cloud SQL instance ID. This does not include the project ID.", - "required": true, - "location": "path" - }, - "operation": { - "type": "string", - "description": "Instance operation ID.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID of the project that contains the instance.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "instance", - "operation" - ], - "response": { - "$ref": "InstanceOperation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/sqlservice.admin" - ] - }, - "list": { - "id": "sql.operations.list", - "path": "projects/{project}/instances/{instance}/operations", - "httpMethod": "GET", - "description": "Lists all operations that have been performed on a Cloud SQL instance.", - "parameters": { - "instance": { - "type": "string", - "description": "Cloud SQL instance ID. This does not include the project ID.", - "required": true, - "location": "path" - }, - "maxResults": { - "type": "integer", - "description": "Maximum number of operations per response.", - "format": "uint32", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "A previously-returned page token representing part of the larger set of results to view.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID of the project that contains the instance.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "instance" - ], - "response": { - "$ref": "OperationsListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/sqlservice.admin" - ] - } - } - }, - "sslCerts": { - "methods": { - "delete": { - "id": "sql.sslCerts.delete", - "path": "projects/{project}/instances/{instance}/sslCerts/{sha1Fingerprint}", - "httpMethod": "DELETE", - "description": "Deletes an SSL certificate from a Cloud SQL instance.", - "parameters": { - "instance": { - "type": "string", - "description": "Cloud SQL instance ID. This does not include the project ID.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID of the project that contains the instance to be deleted.", - "required": true, - "location": "path" - }, - "sha1Fingerprint": { - "type": "string", - "description": "Sha1 FingerPrint.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "instance", - "sha1Fingerprint" - ], - "response": { - "$ref": "SslCertsDeleteResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/sqlservice.admin" - ] - }, - "get": { - "id": "sql.sslCerts.get", - "path": "projects/{project}/instances/{instance}/sslCerts/{sha1Fingerprint}", - "httpMethod": "GET", - "description": "Retrieves an SSL certificate as specified by its SHA-1 fingerprint.", - "parameters": { - "instance": { - "type": "string", - "description": "Cloud SQL instance ID. This does not include the project ID.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID of the project that contains the instance.", - "required": true, - "location": "path" - }, - "sha1Fingerprint": { - "type": "string", - "description": "Sha1 FingerPrint.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "instance", - "sha1Fingerprint" - ], - "response": { - "$ref": "SslCert" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/sqlservice.admin" - ] - }, - "insert": { - "id": "sql.sslCerts.insert", - "path": "projects/{project}/instances/{instance}/sslCerts", - "httpMethod": "POST", - "description": "Creates an SSL certificate and returns the certificate, the associated private key, and the server certificate authority.", - "parameters": { - "instance": { - "type": "string", - "description": "Cloud SQL instance ID. This does not include the project ID.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID of the project to which the newly created Cloud SQL instances should belong.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "instance" - ], - "request": { - "$ref": "SslCertsInsertRequest" - }, - "response": { - "$ref": "SslCertsInsertResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/sqlservice.admin" - ] - }, - "list": { - "id": "sql.sslCerts.list", - "path": "projects/{project}/instances/{instance}/sslCerts", - "httpMethod": "GET", - "description": "Lists all of the current SSL certificates defined for a Cloud SQL instance.", - "parameters": { - "instance": { - "type": "string", - "description": "Cloud SQL instance ID. This does not include the project ID.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID of the project for which to list Cloud SQL instances.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "instance" - ], - "response": { - "$ref": "SslCertsListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/sqlservice.admin" - ] - } - } - }, - "tiers": { - "methods": { - "list": { - "id": "sql.tiers.list", - "path": "projects/{project}/tiers", - "httpMethod": "GET", - "description": "Lists service tiers that can be used to create Google Cloud SQL instances.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID of the project for which to list tiers.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "TiersListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/sqlservice.admin" - ] - } - } - } - } -} + "servicePath": "sql/v1beta3/", + "title": "Cloud SQL Administration API", + "version": "v1beta3" +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/sqladmin/v1beta3/sqladmin-gen.go b/vendor/google.golang.org/api/sqladmin/v1beta3/sqladmin-gen.go index b48f8f238..57fd43dff 100644 --- a/vendor/google.golang.org/api/sqladmin/v1beta3/sqladmin-gen.go +++ b/vendor/google.golang.org/api/sqladmin/v1beta3/sqladmin-gen.go @@ -163,6 +163,11 @@ type BackupConfiguration struct { // Kind: This is always sql#backupConfiguration. Kind string `json:"kind,omitempty"` + // ReplicationLogArchivingEnabled: Whether replication log archiving is + // enabled. Replication log archiving is required for the point-in-time + // recovery (PITR) feature. PostgreSQL instances only. + ReplicationLogArchivingEnabled bool `json:"replicationLogArchivingEnabled,omitempty"` + // StartTime: Start time for the daily backup configuration in UTC // timezone in the 24 hour format - HH:MM. StartTime string `json:"startTime,omitempty"` @@ -344,6 +349,12 @@ type CloneContext struct { // Kind: This is always sql#cloneContext. Kind string `json:"kind,omitempty"` + // PitrTimestampMs: The epoch timestamp, in milliseconds, of the time to + // which a point-in-time recovery (PITR) is performed. PostgreSQL + // instances only. For MySQL instances, use the binLogCoordinates + // property. + PitrTimestampMs int64 `json:"pitrTimestampMs,omitempty,string"` + // SourceInstanceName: Name of the Cloud SQL instance to be cloned. SourceInstanceName string `json:"sourceInstanceName,omitempty"` diff --git a/vendor/google.golang.org/api/sqladmin/v1beta4/sqladmin-api.json b/vendor/google.golang.org/api/sqladmin/v1beta4/sqladmin-api.json index 7b4a2f4e9..b2c914010 100644 --- a/vendor/google.golang.org/api/sqladmin/v1beta4/sqladmin-api.json +++ b/vendor/google.golang.org/api/sqladmin/v1beta4/sqladmin-api.json @@ -1,2988 +1,3002 @@ { - "kind": "discovery#restDescription", - "etag": "\"YWOzh2SDasdU84ArJnpYek-OMdg/qGR3q9t_cRz9md0zXxOmhlJ1eX0\"", - "discoveryVersion": "v1", - "id": "sqladmin:v1beta4", - "name": "sqladmin", - "canonicalName": "SQL Admin", - "version": "v1beta4", - "revision": "20171011", - "title": "Cloud SQL Administration API", - "description": "Creates and configures Cloud SQL instances, which provide fully-managed MySQL databases.", - "ownerDomain": "google.com", - "ownerName": "Google", - "icons": { - "x16": "https://www.gstatic.com/images/branding/product/1x/googleg_16dp.png", - "x32": "https://www.gstatic.com/images/branding/product/1x/googleg_32dp.png" - }, - "documentationLink": "https://cloud.google.com/sql/docs/reference/latest", - "protocol": "rest", - "baseUrl": "https://www.googleapis.com/sql/v1beta4/", - "basePath": "/sql/v1beta4/", - "rootUrl": "https://www.googleapis.com/", - "servicePath": "sql/v1beta4/", - "batchPath": "batch/sqladmin/v1beta4", - "parameters": { - "alt": { - "type": "string", - "description": "Data format for the response.", - "default": "json", - "enum": [ - "json" - ], - "enumDescriptions": [ - "Responses with Content-Type of application/json" - ], - "location": "query" - }, - "fields": { - "type": "string", - "description": "Selector specifying which fields to include in a partial response.", - "location": "query" - }, - "key": { - "type": "string", - "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" - }, - "oauth_token": { - "type": "string", - "description": "OAuth 2.0 token for the current user.", - "location": "query" - }, - "prettyPrint": { - "type": "boolean", - "description": "Returns response with indentations and line breaks.", - "default": "true", - "location": "query" - }, - "quotaUser": { - "type": "string", - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", - "location": "query" - }, - "userIp": { - "type": "string", - "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", - "location": "query" - } - }, - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/cloud-platform": { - "description": "View and manage your data across Google Cloud Platform services" - }, - "https://www.googleapis.com/auth/sqlservice.admin": { - "description": "Manage your Google SQL Service instances" - } - } - } - }, - "schemas": { - "AclEntry": { - "id": "AclEntry", - "type": "object", - "description": "An entry for an Access Control list.", - "properties": { - "expirationTime": { - "type": "string", - "description": "The time when this access control entry expires in RFC 3339 format, for example 2012-11-15T16:19:00.094Z.", - "format": "date-time" - }, - "kind": { - "type": "string", - "description": "This is always sql#aclEntry.", - "default": "sql#aclEntry" - }, - "name": { - "type": "string", - "description": "An optional label to identify this entry." - }, - "value": { - "type": "string", - "description": "The whitelisted value for the access control list." - } - } - }, - "BackupConfiguration": { - "id": "BackupConfiguration", - "type": "object", - "description": "Database instance backup configuration.", - "properties": { - "binaryLogEnabled": { - "type": "boolean", - "description": "Whether binary log is enabled. If backup configuration is disabled, binary log must be disabled as well." - }, - "enabled": { - "type": "boolean", - "description": "Whether this configuration is enabled." - }, - "kind": { - "type": "string", - "description": "This is always sql#backupConfiguration.", - "default": "sql#backupConfiguration" - }, - "startTime": { - "type": "string", - "description": "Start time for the daily backup configuration in UTC timezone in the 24 hour format - HH:MM." - } - } - }, - "BackupRun": { - "id": "BackupRun", - "type": "object", - "description": "A database instance backup run resource.", - "properties": { - "description": { - "type": "string", - "description": "The description of this run, only applicable to on-demand backups." - }, - "endTime": { - "type": "string", - "description": "The time the backup operation completed in UTC timezone in RFC 3339 format, for example 2012-11-15T16:19:00.094Z.", - "format": "date-time" - }, - "enqueuedTime": { - "type": "string", - "description": "The time the run was enqueued in UTC timezone in RFC 3339 format, for example 2012-11-15T16:19:00.094Z.", - "format": "date-time" - }, - "error": { - "$ref": "OperationError", - "description": "Information about why the backup operation failed. This is only present if the run has the FAILED status." - }, - "id": { - "type": "string", - "description": "A unique identifier for this backup run. Note that this is unique only within the scope of a particular Cloud SQL instance.", - "format": "int64" - }, - "instance": { - "type": "string", - "description": "Name of the database instance." - }, - "kind": { - "type": "string", - "description": "This is always sql#backupRun.", - "default": "sql#backupRun" - }, - "selfLink": { - "type": "string", - "description": "The URI of this resource." - }, - "startTime": { - "type": "string", - "description": "The time the backup operation actually started in UTC timezone in RFC 3339 format, for example 2012-11-15T16:19:00.094Z.", - "format": "date-time" - }, - "status": { - "type": "string", - "description": "The status of this run." - }, - "type": { - "type": "string", - "description": "The type of this run; can be either \"AUTOMATED\" or \"ON_DEMAND\"." - }, - "windowStartTime": { - "type": "string", - "description": "The start time of the backup window during which this the backup was attempted in RFC 3339 format, for example 2012-11-15T16:19:00.094Z.", - "format": "date-time" - } - } - }, - "BackupRunsListResponse": { - "id": "BackupRunsListResponse", - "type": "object", - "description": "Backup run list results.", - "properties": { - "items": { - "type": "array", - "description": "A list of backup runs in reverse chronological order of the enqueued time.", - "items": { - "$ref": "BackupRun" - } - }, - "kind": { - "type": "string", - "description": "This is always sql#backupRunsList.", - "default": "sql#backupRunsList" - }, - "nextPageToken": { - "type": "string", - "description": "The continuation token, used to page through large result sets. Provide this value in a subsequent request to return the next page of results." - } - } - }, - "BinLogCoordinates": { - "id": "BinLogCoordinates", - "type": "object", - "description": "Binary log coordinates.", - "properties": { - "binLogFileName": { - "type": "string", - "description": "Name of the binary log file for a Cloud SQL instance." - }, - "binLogPosition": { - "type": "string", - "description": "Position (offset) within the binary log file.", - "format": "int64" - }, - "kind": { - "type": "string", - "description": "This is always sql#binLogCoordinates.", - "default": "sql#binLogCoordinates" - } - } - }, - "CloneContext": { - "id": "CloneContext", - "type": "object", - "description": "Database instance clone context.", - "properties": { - "binLogCoordinates": { - "$ref": "BinLogCoordinates", - "description": "Binary log coordinates, if specified, indentify the the position up to which the source instance should be cloned. If not specified, the source instance is cloned up to the most recent binary log coordintes." - }, - "destinationInstanceName": { - "type": "string", - "description": "Name of the Cloud SQL instance to be created as a clone." - }, - "kind": { - "type": "string", - "description": "This is always sql#cloneContext.", - "default": "sql#cloneContext" - } - } - }, - "Database": { - "id": "Database", - "type": "object", - "description": "A database resource inside a Cloud SQL instance.", - "properties": { - "charset": { - "type": "string", - "description": "The MySQL charset value." - }, - "collation": { - "type": "string", - "description": "The MySQL collation value." - }, - "etag": { - "type": "string", - "description": "HTTP 1.1 Entity tag for the resource." - }, - "instance": { - "type": "string", - "description": "The name of the Cloud SQL instance. This does not include the project ID.", - "annotations": { - "required": [ - "sql.databases.insert" - ] - } - }, - "kind": { - "type": "string", - "description": "This is always sql#database.", - "default": "sql#database" - }, - "name": { - "type": "string", - "description": "The name of the database in the Cloud SQL instance. This does not include the project ID or instance name.", - "annotations": { - "required": [ - "sql.databases.insert" - ] - } - }, - "project": { - "type": "string", - "description": "The project ID of the project containing the Cloud SQL database. The Google apps domain is prefixed if applicable.", - "annotations": { - "required": [ - "sql.databases.insert" - ] - } - }, - "selfLink": { - "type": "string", - "description": "The URI of this resource." - } - } - }, - "DatabaseFlags": { - "id": "DatabaseFlags", - "type": "object", - "description": "MySQL flags for Cloud SQL instances.", - "properties": { - "name": { - "type": "string", - "description": "The name of the flag. These flags are passed at instance startup, so include both MySQL server options and MySQL system variables. Flags should be specified with underscores, not hyphens. For more information, see Configuring MySQL Flags in the Google Cloud SQL documentation, as well as the official MySQL documentation for server options and system variables." - }, - "value": { - "type": "string", - "description": "The value of the flag. Booleans should be set to on for true and off for false. This field must be omitted if the flag doesn't take a value." - } - } - }, - "DatabaseInstance": { - "id": "DatabaseInstance", - "type": "object", - "description": "A Cloud SQL instance resource.", - "properties": { - "backendType": { - "type": "string", - "description": "FIRST_GEN: Basic Cloud SQL instance that runs in a Google-managed container.\nSECOND_GEN: A newer Cloud SQL backend that runs in a Compute Engine VM.\nEXTERNAL: A MySQL server that is not managed by Google." - }, - "connectionName": { - "type": "string", - "description": "Connection name of the Cloud SQL instance used in connection strings." - }, - "currentDiskSize": { - "type": "string", - "description": "The current disk usage of the instance in bytes. This property has been deprecated. Users should use the \"cloudsql.googleapis.com/database/disk/bytes_used\" metric in Cloud Monitoring API instead. Please see https://groups.google.com/d/msg/google-cloud-sql-announce/I_7-F9EBhT0/BtvFtdFeAgAJ for details.", - "format": "int64" - }, - "databaseVersion": { - "type": "string", - "description": "The database engine type and version. The databaseVersion field can not be changed after instance creation. MySQL Second Generation instances: MYSQL_5_7 (default) or MYSQL_5_6. PostgreSQL instances: POSTGRES_9_6 MySQL First Generation instances: MYSQL_5_6 (default) or MYSQL_5_5" - }, - "etag": { - "type": "string", - "description": "HTTP 1.1 Entity tag for the resource." - }, - "failoverReplica": { - "type": "object", - "description": "The name and status of the failover replica. This property is applicable only to Second Generation instances.", - "properties": { - "available": { - "type": "boolean", - "description": "The availability status of the failover replica. A false status indicates that the failover replica is out of sync. The master can only failover to the falover replica when the status is true." - }, - "name": { - "type": "string", - "description": "The name of the failover replica. If specified at instance creation, a failover replica is created for the instance. The name doesn't include the project ID. This property is applicable only to Second Generation instances." + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/cloud-platform": { + "description": "View and manage your data across Google Cloud Platform services" + }, + "https://www.googleapis.com/auth/sqlservice.admin": { + "description": "Manage your Google SQL Service instances" + } } - } - }, - "gceZone": { - "type": "string", - "description": "The GCE zone that the instance is serving from. In case when the instance is failed over to standby zone, this value may be different with what user specified in the settings." - }, - "instanceType": { - "type": "string", - "description": "The instance type. This can be one of the following.\nCLOUD_SQL_INSTANCE: A Cloud SQL instance that is not replicating from a master.\nON_PREMISES_INSTANCE: An instance running on the customer's premises.\nREAD_REPLICA_INSTANCE: A Cloud SQL instance configured as a read-replica." - }, - "ipAddresses": { - "type": "array", - "description": "The assigned IP addresses for the instance.", - "items": { - "$ref": "IpMapping" - } - }, - "ipv6Address": { - "type": "string", - "description": "The IPv6 address assigned to the instance. This property is applicable only to First Generation instances." - }, - "kind": { - "type": "string", - "description": "This is always sql#instance.", - "default": "sql#instance" - }, - "masterInstanceName": { - "type": "string", - "description": "The name of the instance which will act as master in the replication setup." - }, - "maxDiskSize": { - "type": "string", - "description": "The maximum disk size of the instance in bytes.", - "format": "int64" - }, - "name": { - "type": "string", - "description": "Name of the Cloud SQL instance. This does not include the project ID.", - "annotations": { - "required": [ - "sql.instances.insert" - ] - } - }, - "onPremisesConfiguration": { - "$ref": "OnPremisesConfiguration", - "description": "Configuration specific to on-premises instances." - }, - "project": { - "type": "string", - "description": "The project ID of the project containing the Cloud SQL instance. The Google apps domain is prefixed if applicable." - }, - "region": { - "type": "string", - "description": "The geographical region. Can be us-central (FIRST_GEN instances only), us-central1 (SECOND_GEN instances only), asia-east1 or europe-west1. Defaults to us-central or us-central1 depending on the instance type (First Generation or Second Generation). The region can not be changed after instance creation." - }, - "replicaConfiguration": { - "$ref": "ReplicaConfiguration", - "description": "Configuration specific to read-replicas replicating from on-premises masters." - }, - "replicaNames": { - "type": "array", - "description": "The replicas of the instance.", - "items": { + } + }, + "basePath": "/sql/v1beta4/", + "baseUrl": "https://www.googleapis.com/sql/v1beta4/", + "batchPath": "batch/sqladmin/v1beta4", + "canonicalName": "SQL Admin", + "description": "Creates and configures Cloud SQL instances, which provide fully-managed MySQL databases.", + "discoveryVersion": "v1", + "documentationLink": "https://cloud.google.com/sql/docs/reference/latest", + "etag": "\"-iA1DTNe4s-I6JZXPt1t1Ypy8IU/FsDAXvP1EaK5M44tzgwKdZouc_s\"", + "icons": { + "x16": "https://www.gstatic.com/images/branding/product/1x/googleg_16dp.png", + "x32": "https://www.gstatic.com/images/branding/product/1x/googleg_32dp.png" + }, + "id": "sqladmin:v1beta4", + "kind": "discovery#restDescription", + "name": "sqladmin", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "alt": { + "default": "json", + "description": "Data format for the response.", + "enum": [ + "json" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json" + ], + "location": "query", "type": "string" - } }, - "selfLink": { - "type": "string", - "description": "The URI of this resource." - }, - "serverCaCert": { - "$ref": "SslCert", - "description": "SSL configuration." - }, - "serviceAccountEmailAddress": { - "type": "string", - "description": "The service account email address assigned to the instance. This property is applicable only to Second Generation instances." - }, - "settings": { - "$ref": "Settings", - "description": "The user settings.", - "annotations": { - "required": [ - "sql.instances.insert", - "sql.instances.update" - ] - } - }, - "state": { - "type": "string", - "description": "The current serving state of the Cloud SQL instance. This can be one of the following.\nRUNNABLE: The instance is running, or is ready to run when accessed.\nSUSPENDED: The instance is not available, for example due to problems with billing.\nPENDING_CREATE: The instance is being created.\nMAINTENANCE: The instance is down for maintenance.\nFAILED: The instance creation failed.\nUNKNOWN_STATE: The state of the instance is unknown." - }, - "suspensionReason": { - "type": "array", - "description": "If the instance state is SUSPENDED, the reason for the suspension.", - "items": { + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "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.", + "location": "query", + "type": "string" + }, + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", + "location": "query", + "type": "string" + }, + "userIp": { + "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", + "location": "query", "type": "string" - } } - } }, - "DatabasesListResponse": { - "id": "DatabasesListResponse", - "type": "object", - "description": "Database list response.", - "properties": { - "items": { - "type": "array", - "description": "List of database resources in the instance.", - "items": { - "$ref": "Database" - } - }, - "kind": { - "type": "string", - "description": "This is always sql#databasesList.", - "default": "sql#databasesList" - } - } - }, - "DemoteMasterConfiguration": { - "id": "DemoteMasterConfiguration", - "type": "object", - "description": "Read-replica configuration for connecting to the on-premises master.", - "properties": { - "kind": { - "type": "string", - "description": "This is always sql#demoteMasterConfiguration.", - "default": "sql#demoteMasterConfiguration" - }, - "mysqlReplicaConfiguration": { - "$ref": "DemoteMasterMySqlReplicaConfiguration", - "description": "MySQL specific configuration when replicating from a MySQL on-premises master. Replication configuration information such as the username, password, certificates, and keys are not stored in the instance metadata. The configuration information is used only to set up the replication connection and is stored by MySQL in a file named master.info in the data directory." - } - } - }, - "DemoteMasterContext": { - "id": "DemoteMasterContext", - "type": "object", - "description": "Database instance demote master context.", - "properties": { - "kind": { - "type": "string", - "description": "This is always sql#demoteMasterContext.", - "default": "sql#demoteMasterContext" - }, - "masterInstanceName": { - "type": "string", - "description": "The name of the instance which will act as on-premises master in the replication setup." - }, - "replicaConfiguration": { - "$ref": "DemoteMasterConfiguration", - "description": "Configuration specific to read-replicas replicating from the on-premises master." - } - } - }, - "DemoteMasterMySqlReplicaConfiguration": { - "id": "DemoteMasterMySqlReplicaConfiguration", - "type": "object", - "description": "Read-replica configuration specific to MySQL databases.", - "properties": { - "caCertificate": { - "type": "string", - "description": "PEM representation of the trusted CA's x509 certificate." - }, - "clientCertificate": { - "type": "string", - "description": "PEM representation of the slave's x509 certificate." - }, - "clientKey": { - "type": "string", - "description": "PEM representation of the slave's private key. The corresponsing public key is encoded in the client's certificate. The format of the slave's private key can be either PKCS #1 or PKCS #8." - }, - "kind": { - "type": "string", - "description": "This is always sql#demoteMasterMysqlReplicaConfiguration.", - "default": "sql#demoteMasterMysqlReplicaConfiguration" - }, - "password": { - "type": "string", - "description": "The password for the replication connection." - }, - "username": { - "type": "string", - "description": "The username for the replication connection." - } - } - }, - "ExportContext": { - "id": "ExportContext", - "type": "object", - "description": "Database instance export context.", - "properties": { - "csvExportOptions": { - "type": "object", - "description": "Options for exporting data as CSV.", - "properties": { - "selectQuery": { - "type": "string", - "description": "The select query used to extract the data." + "protocol": "rest", + "resources": { + "backupRuns": { + "methods": { + "delete": { + "description": "Deletes the backup taken by a backup run.", + "httpMethod": "DELETE", + "id": "sql.backupRuns.delete", + "parameterOrder": [ + "project", + "instance", + "id" + ], + "parameters": { + "id": { + "description": "The ID of the Backup Run to delete. To find a Backup Run ID, use the list method.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "instance": { + "description": "Cloud SQL instance ID. This does not include the project ID.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID of the project that contains the instance.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/instances/{instance}/backupRuns/{id}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/sqlservice.admin" + ] + }, + "get": { + "description": "Retrieves a resource containing information about a backup run.", + "httpMethod": "GET", + "id": "sql.backupRuns.get", + "parameterOrder": [ + "project", + "instance", + "id" + ], + "parameters": { + "id": { + "description": "The ID of this Backup Run.", + "format": "int64", + "location": "path", + "required": true, + "type": "string" + }, + "instance": { + "description": "Cloud SQL instance ID. This does not include the project ID.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID of the project that contains the instance.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/instances/{instance}/backupRuns/{id}", + "response": { + "$ref": "BackupRun" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/sqlservice.admin" + ] + }, + "insert": { + "description": "Creates a new backup run on demand. This method is applicable only to Second Generation instances.", + "httpMethod": "POST", + "id": "sql.backupRuns.insert", + "parameterOrder": [ + "project", + "instance" + ], + "parameters": { + "instance": { + "description": "Cloud SQL instance ID. This does not include the project ID.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID of the project that contains the instance.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/instances/{instance}/backupRuns", + "request": { + "$ref": "BackupRun" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/sqlservice.admin" + ] + }, + "list": { + "description": "Lists all backup runs associated with a given instance and configuration in the reverse chronological order of the enqueued time.", + "httpMethod": "GET", + "id": "sql.backupRuns.list", + "parameterOrder": [ + "project", + "instance" + ], + "parameters": { + "instance": { + "description": "Cloud SQL instance ID. This does not include the project ID.", + "location": "path", + "required": true, + "type": "string" + }, + "maxResults": { + "description": "Maximum number of backup runs per response.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "A previously-returned page token representing part of the larger set of results to view.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID of the project that contains the instance.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/instances/{instance}/backupRuns", + "response": { + "$ref": "BackupRunsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/sqlservice.admin" + ] + } } - } }, "databases": { - "type": "array", - "description": "Databases (for example, guestbook) from which the export is made. If fileType is SQL and no database is specified, all databases are exported. If fileType is CSV, you can optionally specify at most one database to export. If csvExportOptions.selectQuery also specifies the database, this field will be ignored.", - "items": { - "type": "string" - } - }, - "fileType": { - "type": "string", - "description": "The file type for the specified uri.\nSQL: The file contains SQL statements.\nCSV: The file contains CSV data." - }, - "kind": { - "type": "string", - "description": "This is always sql#exportContext.", - "default": "sql#exportContext" - }, - "sqlExportOptions": { - "type": "object", - "description": "Options for exporting data as SQL statements.", - "properties": { - "schemaOnly": { - "type": "boolean", - "description": "Export only schemas." - }, - "tables": { - "type": "array", - "description": "Tables to export, or that were exported, from the specified database. If you specify tables, specify one and only one database.", - "items": { - "type": "string" - } + "methods": { + "delete": { + "description": "Deletes a database from a Cloud SQL instance.", + "httpMethod": "DELETE", + "id": "sql.databases.delete", + "parameterOrder": [ + "project", + "instance", + "database" + ], + "parameters": { + "database": { + "description": "Name of the database to be deleted in the instance.", + "location": "path", + "required": true, + "type": "string" + }, + "instance": { + "description": "Database instance ID. This does not include the project ID.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID of the project that contains the instance.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/instances/{instance}/databases/{database}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/sqlservice.admin" + ] + }, + "get": { + "description": "Retrieves a resource containing information about a database inside a Cloud SQL instance.", + "httpMethod": "GET", + "id": "sql.databases.get", + "parameterOrder": [ + "project", + "instance", + "database" + ], + "parameters": { + "database": { + "description": "Name of the database in the instance.", + "location": "path", + "required": true, + "type": "string" + }, + "instance": { + "description": "Database instance ID. This does not include the project ID.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID of the project that contains the instance.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/instances/{instance}/databases/{database}", + "response": { + "$ref": "Database" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/sqlservice.admin" + ] + }, + "insert": { + "description": "Inserts a resource containing information about a database inside a Cloud SQL instance.", + "httpMethod": "POST", + "id": "sql.databases.insert", + "parameterOrder": [ + "project", + "instance" + ], + "parameters": { + "instance": { + "description": "Database instance ID. This does not include the project ID.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID of the project that contains the instance.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/instances/{instance}/databases", + "request": { + "$ref": "Database" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/sqlservice.admin" + ] + }, + "list": { + "description": "Lists databases in the specified Cloud SQL instance.", + "httpMethod": "GET", + "id": "sql.databases.list", + "parameterOrder": [ + "project", + "instance" + ], + "parameters": { + "instance": { + "description": "Cloud SQL instance ID. This does not include the project ID.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID of the project for which to list Cloud SQL instances.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/instances/{instance}/databases", + "response": { + "$ref": "DatabasesListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/sqlservice.admin" + ] + }, + "patch": { + "description": "Updates a resource containing information about a database inside a Cloud SQL instance. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "sql.databases.patch", + "parameterOrder": [ + "project", + "instance", + "database" + ], + "parameters": { + "database": { + "description": "Name of the database to be updated in the instance.", + "location": "path", + "required": true, + "type": "string" + }, + "instance": { + "description": "Database instance ID. This does not include the project ID.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID of the project that contains the instance.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/instances/{instance}/databases/{database}", + "request": { + "$ref": "Database" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/sqlservice.admin" + ] + }, + "update": { + "description": "Updates a resource containing information about a database inside a Cloud SQL instance.", + "httpMethod": "PUT", + "id": "sql.databases.update", + "parameterOrder": [ + "project", + "instance", + "database" + ], + "parameters": { + "database": { + "description": "Name of the database to be updated in the instance.", + "location": "path", + "required": true, + "type": "string" + }, + "instance": { + "description": "Database instance ID. This does not include the project ID.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID of the project that contains the instance.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/instances/{instance}/databases/{database}", + "request": { + "$ref": "Database" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/sqlservice.admin" + ] + } } - } }, - "uri": { - "type": "string", - "description": "The path to the file in Google Cloud Storage where the export will be stored. The URI is in the form gs://bucketName/fileName. If the file already exists, the operation fails. If fileType is SQL and the filename ends with .gz, the contents are compressed." - } - } - }, - "FailoverContext": { - "id": "FailoverContext", - "type": "object", - "description": "Database instance failover context.", - "properties": { - "kind": { - "type": "string", - "description": "This is always sql#failoverContext.", - "default": "sql#failoverContext" - }, - "settingsVersion": { - "type": "string", - "description": "The current settings version of this instance. Request will be rejected if this version doesn't match the current settings version.", - "format": "int64" - } - } - }, - "Flag": { - "id": "Flag", - "type": "object", - "description": "A Google Cloud SQL service flag resource.", - "properties": { - "allowedStringValues": { - "type": "array", - "description": "For STRING flags, a list of strings that the value can be set to.", - "items": { - "type": "string" - } - }, - "appliesTo": { - "type": "array", - "description": "The database version this flag applies to. Can be MYSQL_5_5, MYSQL_5_6, or MYSQL_5_7. MYSQL_5_7 is applicable only to Second Generation instances.", - "items": { - "type": "string" - } - }, - "kind": { - "type": "string", - "description": "This is always sql#flag.", - "default": "sql#flag" - }, - "maxValue": { - "type": "string", - "description": "For INTEGER flags, the maximum allowed value.", - "format": "int64" - }, - "minValue": { - "type": "string", - "description": "For INTEGER flags, the minimum allowed value.", - "format": "int64" - }, - "name": { - "type": "string", - "description": "This is the name of the flag. Flag names always use underscores, not hyphens, e.g. max_allowed_packet" - }, - "requiresRestart": { - "type": "boolean", - "description": "Indicates whether changing this flag will trigger a database restart. Only applicable to Second Generation instances." - }, - "type": { - "type": "string", - "description": "The type of the flag. Flags are typed to being BOOLEAN, STRING, INTEGER or NONE. NONE is used for flags which do not take a value, such as skip_grant_tables." - } - } - }, - "FlagsListResponse": { - "id": "FlagsListResponse", - "type": "object", - "description": "Flags list response.", - "properties": { - "items": { - "type": "array", - "description": "List of flags.", - "items": { - "$ref": "Flag" - } - }, - "kind": { - "type": "string", - "description": "This is always sql#flagsList.", - "default": "sql#flagsList" - } - } - }, - "ImportContext": { - "id": "ImportContext", - "type": "object", - "description": "Database instance import context.", - "properties": { - "csvImportOptions": { - "type": "object", - "description": "Options for importing data as CSV.", - "properties": { - "columns": { - "type": "array", - "description": "The columns to which CSV data is imported. If not specified, all columns of the database table are loaded with CSV data.", - "items": { - "type": "string" - } - }, - "table": { - "type": "string", - "description": "The table to which CSV data is imported." + "flags": { + "methods": { + "list": { + "description": "List all available database flags for Google Cloud SQL instances.", + "httpMethod": "GET", + "id": "sql.flags.list", + "parameters": { + "databaseVersion": { + "description": "Database version for flag retrieval. Flags are specific to the database version.", + "location": "query", + "type": "string" + } + }, + "path": "flags", + "response": { + "$ref": "FlagsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/sqlservice.admin" + ] + } } - } }, - "database": { - "type": "string", - "description": "The database (for example, guestbook) to which the import is made. If fileType is SQL and no database is specified, it is assumed that the database is specified in the file to be imported. If fileType is CSV, it must be specified." + "instances": { + "methods": { + "clone": { + "description": "Creates a Cloud SQL instance as a clone of the source instance. The API is not ready for Second Generation instances yet.", + "httpMethod": "POST", + "id": "sql.instances.clone", + "parameterOrder": [ + "project", + "instance" + ], + "parameters": { + "instance": { + "description": "The ID of the Cloud SQL instance to be cloned (source). This does not include the project ID.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID of the source as well as the clone Cloud SQL instance.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/instances/{instance}/clone", + "request": { + "$ref": "InstancesCloneRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/sqlservice.admin" + ] + }, + "delete": { + "description": "Deletes a Cloud SQL instance.", + "httpMethod": "DELETE", + "id": "sql.instances.delete", + "parameterOrder": [ + "project", + "instance" + ], + "parameters": { + "instance": { + "description": "Cloud SQL instance ID. This does not include the project ID.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID of the project that contains the instance to be deleted.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/instances/{instance}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/sqlservice.admin" + ] + }, + "demoteMaster": { + "description": "Reserved for future use.", + "httpMethod": "POST", + "id": "sql.instances.demoteMaster", + "parameterOrder": [ + "project", + "instance" + ], + "parameters": { + "instance": { + "description": "Cloud SQL instance name.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "ID of the project that contains the instance.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/instances/{instance}/demoteMaster", + "request": { + "$ref": "InstancesDemoteMasterRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/sqlservice.admin" + ] + }, + "export": { + "description": "Exports data from a Cloud SQL instance to a Google Cloud Storage bucket as a MySQL dump file.", + "httpMethod": "POST", + "id": "sql.instances.export", + "parameterOrder": [ + "project", + "instance" + ], + "parameters": { + "instance": { + "description": "Cloud SQL instance ID. This does not include the project ID.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID of the project that contains the instance to be exported.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/instances/{instance}/export", + "request": { + "$ref": "InstancesExportRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "failover": { + "description": "Failover the instance to its failover replica instance.", + "httpMethod": "POST", + "id": "sql.instances.failover", + "parameterOrder": [ + "project", + "instance" + ], + "parameters": { + "instance": { + "description": "Cloud SQL instance ID. This does not include the project ID.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "ID of the project that contains the read replica.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/instances/{instance}/failover", + "request": { + "$ref": "InstancesFailoverRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/sqlservice.admin" + ] + }, + "get": { + "description": "Retrieves a resource containing information about a Cloud SQL instance.", + "httpMethod": "GET", + "id": "sql.instances.get", + "parameterOrder": [ + "project", + "instance" + ], + "parameters": { + "instance": { + "description": "Database instance ID. This does not include the project ID.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID of the project that contains the instance.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/instances/{instance}", + "response": { + "$ref": "DatabaseInstance" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/sqlservice.admin" + ] + }, + "import": { + "description": "Imports data into a Cloud SQL instance from a MySQL dump file in Google Cloud Storage.", + "httpMethod": "POST", + "id": "sql.instances.import", + "parameterOrder": [ + "project", + "instance" + ], + "parameters": { + "instance": { + "description": "Cloud SQL instance ID. This does not include the project ID.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID of the project that contains the instance.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/instances/{instance}/import", + "request": { + "$ref": "InstancesImportRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "insert": { + "description": "Creates a new Cloud SQL instance.", + "httpMethod": "POST", + "id": "sql.instances.insert", + "parameterOrder": [ + "project" + ], + "parameters": { + "project": { + "description": "Project ID of the project to which the newly created Cloud SQL instances should belong.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/instances", + "request": { + "$ref": "DatabaseInstance" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/sqlservice.admin" + ] + }, + "list": { + "description": "Lists instances under a given project in the alphabetical order of the instance name.", + "httpMethod": "GET", + "id": "sql.instances.list", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "An expression for filtering the results of the request, such as by name or label.", + "location": "query", + "type": "string" + }, + "maxResults": { + "description": "The maximum number of results to return per response.", + "format": "uint32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "A previously-returned page token representing part of the larger set of results to view.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID of the project for which to list Cloud SQL instances.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/instances", + "response": { + "$ref": "InstancesListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/sqlservice.admin" + ] + }, + "patch": { + "description": "Updates settings of a Cloud SQL instance. Caution: This is not a partial update, so you must include values for all the settings that you want to retain. For partial updates, use patch.. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "sql.instances.patch", + "parameterOrder": [ + "project", + "instance" + ], + "parameters": { + "instance": { + "description": "Cloud SQL instance ID. This does not include the project ID.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID of the project that contains the instance.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/instances/{instance}", + "request": { + "$ref": "DatabaseInstance" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/sqlservice.admin" + ] + }, + "promoteReplica": { + "description": "Promotes the read replica instance to be a stand-alone Cloud SQL instance.", + "httpMethod": "POST", + "id": "sql.instances.promoteReplica", + "parameterOrder": [ + "project", + "instance" + ], + "parameters": { + "instance": { + "description": "Cloud SQL read replica instance name.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "ID of the project that contains the read replica.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/instances/{instance}/promoteReplica", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/sqlservice.admin" + ] + }, + "resetSslConfig": { + "description": "Deletes all client certificates and generates a new server SSL certificate for the instance. The changes will not take effect until the instance is restarted. Existing instances without a server certificate will need to call this once to set a server certificate.", + "httpMethod": "POST", + "id": "sql.instances.resetSslConfig", + "parameterOrder": [ + "project", + "instance" + ], + "parameters": { + "instance": { + "description": "Cloud SQL instance ID. This does not include the project ID.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID of the project that contains the instance.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/instances/{instance}/resetSslConfig", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/sqlservice.admin" + ] + }, + "restart": { + "description": "Restarts a Cloud SQL instance.", + "httpMethod": "POST", + "id": "sql.instances.restart", + "parameterOrder": [ + "project", + "instance" + ], + "parameters": { + "instance": { + "description": "Cloud SQL instance ID. This does not include the project ID.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID of the project that contains the instance to be restarted.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/instances/{instance}/restart", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/sqlservice.admin" + ] + }, + "restoreBackup": { + "description": "Restores a backup of a Cloud SQL instance.", + "httpMethod": "POST", + "id": "sql.instances.restoreBackup", + "parameterOrder": [ + "project", + "instance" + ], + "parameters": { + "instance": { + "description": "Cloud SQL instance ID. This does not include the project ID.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID of the project that contains the instance.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/instances/{instance}/restoreBackup", + "request": { + "$ref": "InstancesRestoreBackupRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/sqlservice.admin" + ] + }, + "startReplica": { + "description": "Starts the replication in the read replica instance.", + "httpMethod": "POST", + "id": "sql.instances.startReplica", + "parameterOrder": [ + "project", + "instance" + ], + "parameters": { + "instance": { + "description": "Cloud SQL read replica instance name.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "ID of the project that contains the read replica.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/instances/{instance}/startReplica", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/sqlservice.admin" + ] + }, + "stopReplica": { + "description": "Stops the replication in the read replica instance.", + "httpMethod": "POST", + "id": "sql.instances.stopReplica", + "parameterOrder": [ + "project", + "instance" + ], + "parameters": { + "instance": { + "description": "Cloud SQL read replica instance name.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "ID of the project that contains the read replica.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/instances/{instance}/stopReplica", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/sqlservice.admin" + ] + }, + "truncateLog": { + "description": "Truncate MySQL general and slow query log tables", + "httpMethod": "POST", + "id": "sql.instances.truncateLog", + "parameterOrder": [ + "project", + "instance" + ], + "parameters": { + "instance": { + "description": "Cloud SQL instance ID. This does not include the project ID.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID of the Cloud SQL project.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/instances/{instance}/truncateLog", + "request": { + "$ref": "InstancesTruncateLogRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/sqlservice.admin" + ] + }, + "update": { + "description": "Updates settings of a Cloud SQL instance. Caution: This is not a partial update, so you must include values for all the settings that you want to retain. For partial updates, use patch.", + "etagRequired": true, + "httpMethod": "PUT", + "id": "sql.instances.update", + "parameterOrder": [ + "project", + "instance" + ], + "parameters": { + "instance": { + "description": "Cloud SQL instance ID. This does not include the project ID.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID of the project that contains the instance.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/instances/{instance}", + "request": { + "$ref": "DatabaseInstance" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/sqlservice.admin" + ] + } + } }, - "fileType": { - "type": "string", - "description": "The file type for the specified uri.\nSQL: The file contains SQL statements.\nCSV: The file contains CSV data." + "operations": { + "methods": { + "get": { + "description": "Retrieves an instance operation that has been performed on an instance.", + "httpMethod": "GET", + "id": "sql.operations.get", + "parameterOrder": [ + "project", + "operation" + ], + "parameters": { + "operation": { + "description": "Instance operation ID.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID of the project that contains the instance.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/operations/{operation}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/sqlservice.admin" + ] + }, + "list": { + "description": "Lists all instance operations that have been performed on the given Cloud SQL instance in the reverse chronological order of the start time.", + "httpMethod": "GET", + "id": "sql.operations.list", + "parameterOrder": [ + "project", + "instance" + ], + "parameters": { + "instance": { + "description": "Cloud SQL instance ID. This does not include the project ID.", + "location": "query", + "required": true, + "type": "string" + }, + "maxResults": { + "description": "Maximum number of operations per response.", + "format": "uint32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "A previously-returned page token representing part of the larger set of results to view.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID of the project that contains the instance.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/operations", + "response": { + "$ref": "OperationsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/sqlservice.admin" + ] + } + } }, - "importUser": { - "type": "string", - "description": "The PostgreSQL user for this import operation. Defaults to cloudsqlsuperuser. Used only for PostgreSQL instances." + "sslCerts": { + "methods": { + "createEphemeral": { + "description": "Generates a short-lived X509 certificate containing the provided public key and signed by a private key specific to the target instance. Users may use the certificate to authenticate as themselves when connecting to the database.", + "httpMethod": "POST", + "id": "sql.sslCerts.createEphemeral", + "parameterOrder": [ + "project", + "instance" + ], + "parameters": { + "instance": { + "description": "Cloud SQL instance ID. This does not include the project ID.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID of the Cloud SQL project.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/instances/{instance}/createEphemeral", + "request": { + "$ref": "SslCertsCreateEphemeralRequest" + }, + "response": { + "$ref": "SslCert" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/sqlservice.admin" + ] + }, + "delete": { + "description": "Deletes the SSL certificate. The change will not take effect until the instance is restarted.", + "httpMethod": "DELETE", + "id": "sql.sslCerts.delete", + "parameterOrder": [ + "project", + "instance", + "sha1Fingerprint" + ], + "parameters": { + "instance": { + "description": "Cloud SQL instance ID. This does not include the project ID.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID of the project that contains the instance to be deleted.", + "location": "path", + "required": true, + "type": "string" + }, + "sha1Fingerprint": { + "description": "Sha1 FingerPrint.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/instances/{instance}/sslCerts/{sha1Fingerprint}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/sqlservice.admin" + ] + }, + "get": { + "description": "Retrieves a particular SSL certificate. Does not include the private key (required for usage). The private key must be saved from the response to initial creation.", + "httpMethod": "GET", + "id": "sql.sslCerts.get", + "parameterOrder": [ + "project", + "instance", + "sha1Fingerprint" + ], + "parameters": { + "instance": { + "description": "Cloud SQL instance ID. This does not include the project ID.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID of the project that contains the instance.", + "location": "path", + "required": true, + "type": "string" + }, + "sha1Fingerprint": { + "description": "Sha1 FingerPrint.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/instances/{instance}/sslCerts/{sha1Fingerprint}", + "response": { + "$ref": "SslCert" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/sqlservice.admin" + ] + }, + "insert": { + "description": "Creates an SSL certificate and returns it along with the private key and server certificate authority. The new certificate will not be usable until the instance is restarted.", + "httpMethod": "POST", + "id": "sql.sslCerts.insert", + "parameterOrder": [ + "project", + "instance" + ], + "parameters": { + "instance": { + "description": "Cloud SQL instance ID. This does not include the project ID.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID of the project to which the newly created Cloud SQL instances should belong.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/instances/{instance}/sslCerts", + "request": { + "$ref": "SslCertsInsertRequest" + }, + "response": { + "$ref": "SslCertsInsertResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/sqlservice.admin" + ] + }, + "list": { + "description": "Lists all of the current SSL certificates for the instance.", + "httpMethod": "GET", + "id": "sql.sslCerts.list", + "parameterOrder": [ + "project", + "instance" + ], + "parameters": { + "instance": { + "description": "Cloud SQL instance ID. This does not include the project ID.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID of the project for which to list Cloud SQL instances.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/instances/{instance}/sslCerts", + "response": { + "$ref": "SslCertsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/sqlservice.admin" + ] + } + } }, - "kind": { - "type": "string", - "description": "This is always sql#importContext.", - "default": "sql#importContext" + "tiers": { + "methods": { + "list": { + "description": "Lists all available service tiers for Google Cloud SQL, for example D1, D2. For related information, see Pricing.", + "httpMethod": "GET", + "id": "sql.tiers.list", + "parameterOrder": [ + "project" + ], + "parameters": { + "project": { + "description": "Project ID of the project for which to list tiers.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/tiers", + "response": { + "$ref": "TiersListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/sqlservice.admin" + ] + } + } }, - "uri": { - "type": "string", - "description": "A path to the file in Google Cloud Storage from which the import is made. The URI is in the form gs://bucketName/fileName. Compressed gzip files (.gz) are supported when fileType is SQL." + "users": { + "methods": { + "delete": { + "description": "Deletes a user from a Cloud SQL instance.", + "httpMethod": "DELETE", + "id": "sql.users.delete", + "parameterOrder": [ + "project", + "instance", + "host", + "name" + ], + "parameters": { + "host": { + "description": "Host of the user in the instance.", + "location": "query", + "required": true, + "type": "string" + }, + "instance": { + "description": "Database instance ID. This does not include the project ID.", + "location": "path", + "required": true, + "type": "string" + }, + "name": { + "description": "Name of the user in the instance.", + "location": "query", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID of the project that contains the instance.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/instances/{instance}/users", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/sqlservice.admin" + ] + }, + "insert": { + "description": "Creates a new user in a Cloud SQL instance.", + "httpMethod": "POST", + "id": "sql.users.insert", + "parameterOrder": [ + "project", + "instance" + ], + "parameters": { + "instance": { + "description": "Database instance ID. This does not include the project ID.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID of the project that contains the instance.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/instances/{instance}/users", + "request": { + "$ref": "User" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/sqlservice.admin" + ] + }, + "list": { + "description": "Lists users in the specified Cloud SQL instance.", + "httpMethod": "GET", + "id": "sql.users.list", + "parameterOrder": [ + "project", + "instance" + ], + "parameters": { + "instance": { + "description": "Database instance ID. This does not include the project ID.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID of the project that contains the instance.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/instances/{instance}/users", + "response": { + "$ref": "UsersListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/sqlservice.admin" + ] + }, + "update": { + "description": "Updates an existing user in a Cloud SQL instance.", + "httpMethod": "PUT", + "id": "sql.users.update", + "parameterOrder": [ + "project", + "instance", + "host", + "name" + ], + "parameters": { + "host": { + "description": "Host of the user in the instance.", + "location": "query", + "required": true, + "type": "string" + }, + "instance": { + "description": "Database instance ID. This does not include the project ID.", + "location": "path", + "required": true, + "type": "string" + }, + "name": { + "description": "Name of the user in the instance.", + "location": "query", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID of the project that contains the instance.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/instances/{instance}/users", + "request": { + "$ref": "User" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/sqlservice.admin" + ] + } + } } - } }, - "InstancesCloneRequest": { - "id": "InstancesCloneRequest", - "type": "object", - "description": "Database instance clone request.", - "properties": { - "cloneContext": { - "$ref": "CloneContext", - "description": "Contains details about the clone operation." + "revision": "20180314", + "rootUrl": "https://www.googleapis.com/", + "schemas": { + "AclEntry": { + "description": "An entry for an Access Control list.", + "id": "AclEntry", + "properties": { + "expirationTime": { + "description": "The time when this access control entry expires in RFC 3339 format, for example 2012-11-15T16:19:00.094Z.", + "format": "date-time", + "type": "string" + }, + "kind": { + "default": "sql#aclEntry", + "description": "This is always sql#aclEntry.", + "type": "string" + }, + "name": { + "description": "An optional label to identify this entry.", + "type": "string" + }, + "value": { + "description": "The whitelisted value for the access control list.", + "type": "string" + } + }, + "type": "object" + }, + "BackupConfiguration": { + "description": "Database instance backup configuration.", + "id": "BackupConfiguration", + "properties": { + "binaryLogEnabled": { + "description": "Whether binary log is enabled. If backup configuration is disabled, binary log must be disabled as well.", + "type": "boolean" + }, + "enabled": { + "description": "Whether this configuration is enabled.", + "type": "boolean" + }, + "kind": { + "default": "sql#backupConfiguration", + "description": "This is always sql#backupConfiguration.", + "type": "string" + }, + "replicationLogArchivingEnabled": { + "description": "Reserved for future use.", + "type": "boolean" + }, + "startTime": { + "description": "Start time for the daily backup configuration in UTC timezone in the 24 hour format - HH:MM.", + "type": "string" + } + }, + "type": "object" + }, + "BackupRun": { + "description": "A database instance backup run resource.", + "id": "BackupRun", + "properties": { + "description": { + "description": "The description of this run, only applicable to on-demand backups.", + "type": "string" + }, + "endTime": { + "description": "The time the backup operation completed in UTC timezone in RFC 3339 format, for example 2012-11-15T16:19:00.094Z.", + "format": "date-time", + "type": "string" + }, + "enqueuedTime": { + "description": "The time the run was enqueued in UTC timezone in RFC 3339 format, for example 2012-11-15T16:19:00.094Z.", + "format": "date-time", + "type": "string" + }, + "error": { + "$ref": "OperationError", + "description": "Information about why the backup operation failed. This is only present if the run has the FAILED status." + }, + "id": { + "description": "A unique identifier for this backup run. Note that this is unique only within the scope of a particular Cloud SQL instance.", + "format": "int64", + "type": "string" + }, + "instance": { + "description": "Name of the database instance.", + "type": "string" + }, + "kind": { + "default": "sql#backupRun", + "description": "This is always sql#backupRun.", + "type": "string" + }, + "selfLink": { + "description": "The URI of this resource.", + "type": "string" + }, + "startTime": { + "description": "The time the backup operation actually started in UTC timezone in RFC 3339 format, for example 2012-11-15T16:19:00.094Z.", + "format": "date-time", + "type": "string" + }, + "status": { + "description": "The status of this run.", + "type": "string" + }, + "type": { + "description": "The type of this run; can be either \"AUTOMATED\" or \"ON_DEMAND\".", + "type": "string" + }, + "windowStartTime": { + "description": "The start time of the backup window during which this the backup was attempted in RFC 3339 format, for example 2012-11-15T16:19:00.094Z.", + "format": "date-time", + "type": "string" + } + }, + "type": "object" + }, + "BackupRunsListResponse": { + "description": "Backup run list results.", + "id": "BackupRunsListResponse", + "properties": { + "items": { + "description": "A list of backup runs in reverse chronological order of the enqueued time.", + "items": { + "$ref": "BackupRun" + }, + "type": "array" + }, + "kind": { + "default": "sql#backupRunsList", + "description": "This is always sql#backupRunsList.", + "type": "string" + }, + "nextPageToken": { + "description": "The continuation token, used to page through large result sets. Provide this value in a subsequent request to return the next page of results.", + "type": "string" + } + }, + "type": "object" + }, + "BinLogCoordinates": { + "description": "Binary log coordinates.", + "id": "BinLogCoordinates", + "properties": { + "binLogFileName": { + "description": "Name of the binary log file for a Cloud SQL instance.", + "type": "string" + }, + "binLogPosition": { + "description": "Position (offset) within the binary log file.", + "format": "int64", + "type": "string" + }, + "kind": { + "default": "sql#binLogCoordinates", + "description": "This is always sql#binLogCoordinates.", + "type": "string" + } + }, + "type": "object" + }, + "CloneContext": { + "description": "Database instance clone context.", + "id": "CloneContext", + "properties": { + "binLogCoordinates": { + "$ref": "BinLogCoordinates", + "description": "Binary log coordinates, if specified, indentify the the position up to which the source instance should be cloned. If not specified, the source instance is cloned up to the most recent binary log coordintes." + }, + "destinationInstanceName": { + "description": "Name of the Cloud SQL instance to be created as a clone.", + "type": "string" + }, + "kind": { + "default": "sql#cloneContext", + "description": "This is always sql#cloneContext.", + "type": "string" + }, + "pitrTimestampMs": { + "description": "Reserved for future use.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "Database": { + "description": "A database resource inside a Cloud SQL instance.", + "id": "Database", + "properties": { + "charset": { + "description": "The MySQL charset value.", + "type": "string" + }, + "collation": { + "description": "The MySQL collation value.", + "type": "string" + }, + "etag": { + "description": "HTTP 1.1 Entity tag for the resource.", + "type": "string" + }, + "instance": { + "annotations": { + "required": [ + "sql.databases.insert" + ] + }, + "description": "The name of the Cloud SQL instance. This does not include the project ID.", + "type": "string" + }, + "kind": { + "default": "sql#database", + "description": "This is always sql#database.", + "type": "string" + }, + "name": { + "annotations": { + "required": [ + "sql.databases.insert" + ] + }, + "description": "The name of the database in the Cloud SQL instance. This does not include the project ID or instance name.", + "type": "string" + }, + "project": { + "annotations": { + "required": [ + "sql.databases.insert" + ] + }, + "description": "The project ID of the project containing the Cloud SQL database. The Google apps domain is prefixed if applicable.", + "type": "string" + }, + "selfLink": { + "description": "The URI of this resource.", + "type": "string" + } + }, + "type": "object" + }, + "DatabaseFlags": { + "description": "MySQL flags for Cloud SQL instances.", + "id": "DatabaseFlags", + "properties": { + "name": { + "description": "The name of the flag. These flags are passed at instance startup, so include both MySQL server options and MySQL system variables. Flags should be specified with underscores, not hyphens. For more information, see Configuring MySQL Flags in the Google Cloud SQL documentation, as well as the official MySQL documentation for server options and system variables.", + "type": "string" + }, + "value": { + "description": "The value of the flag. Booleans should be set to on for true and off for false. This field must be omitted if the flag doesn't take a value.", + "type": "string" + } + }, + "type": "object" + }, + "DatabaseInstance": { + "description": "A Cloud SQL instance resource.", + "id": "DatabaseInstance", + "properties": { + "backendType": { + "description": "FIRST_GEN: Basic Cloud SQL instance that runs in a Google-managed container.\nSECOND_GEN: A newer Cloud SQL backend that runs in a Compute Engine VM.\nEXTERNAL: A MySQL server that is not managed by Google.", + "type": "string" + }, + "connectionName": { + "description": "Connection name of the Cloud SQL instance used in connection strings.", + "type": "string" + }, + "currentDiskSize": { + "description": "The current disk usage of the instance in bytes. This property has been deprecated. Users should use the \"cloudsql.googleapis.com/database/disk/bytes_used\" metric in Cloud Monitoring API instead. Please see https://groups.google.com/d/msg/google-cloud-sql-announce/I_7-F9EBhT0/BtvFtdFeAgAJ for details.", + "format": "int64", + "type": "string" + }, + "databaseVersion": { + "description": "The database engine type and version. The databaseVersion field can not be changed after instance creation. MySQL Second Generation instances: MYSQL_5_7 (default) or MYSQL_5_6. PostgreSQL instances: POSTGRES_9_6 MySQL First Generation instances: MYSQL_5_6 (default) or MYSQL_5_5", + "type": "string" + }, + "etag": { + "description": "HTTP 1.1 Entity tag for the resource.", + "type": "string" + }, + "failoverReplica": { + "description": "The name and status of the failover replica. This property is applicable only to Second Generation instances.", + "properties": { + "available": { + "description": "The availability status of the failover replica. A false status indicates that the failover replica is out of sync. The master can only failover to the falover replica when the status is true.", + "type": "boolean" + }, + "name": { + "description": "The name of the failover replica. If specified at instance creation, a failover replica is created for the instance. The name doesn't include the project ID. This property is applicable only to Second Generation instances.", + "type": "string" + } + }, + "type": "object" + }, + "gceZone": { + "description": "The Compute Engine zone that the instance is currently serving from. This value could be different from the zone that was specified when the instance was created if the instance has failed over to its secondary zone.", + "type": "string" + }, + "instanceType": { + "description": "The instance type. This can be one of the following.\nCLOUD_SQL_INSTANCE: A Cloud SQL instance that is not replicating from a master.\nON_PREMISES_INSTANCE: An instance running on the customer's premises.\nREAD_REPLICA_INSTANCE: A Cloud SQL instance configured as a read-replica.", + "type": "string" + }, + "ipAddresses": { + "description": "The assigned IP addresses for the instance.", + "items": { + "$ref": "IpMapping" + }, + "type": "array" + }, + "ipv6Address": { + "description": "The IPv6 address assigned to the instance. This property is applicable only to First Generation instances.", + "type": "string" + }, + "kind": { + "default": "sql#instance", + "description": "This is always sql#instance.", + "type": "string" + }, + "masterInstanceName": { + "description": "The name of the instance which will act as master in the replication setup.", + "type": "string" + }, + "maxDiskSize": { + "description": "The maximum disk size of the instance in bytes.", + "format": "int64", + "type": "string" + }, + "name": { + "annotations": { + "required": [ + "sql.instances.insert" + ] + }, + "description": "Name of the Cloud SQL instance. This does not include the project ID.", + "type": "string" + }, + "onPremisesConfiguration": { + "$ref": "OnPremisesConfiguration", + "description": "Configuration specific to on-premises instances." + }, + "project": { + "description": "The project ID of the project containing the Cloud SQL instance. The Google apps domain is prefixed if applicable.", + "type": "string" + }, + "region": { + "description": "The geographical region. Can be us-central (FIRST_GEN instances only), us-central1 (SECOND_GEN instances only), asia-east1 or europe-west1. Defaults to us-central or us-central1 depending on the instance type (First Generation or Second Generation). The region can not be changed after instance creation.", + "type": "string" + }, + "replicaConfiguration": { + "$ref": "ReplicaConfiguration", + "description": "Configuration specific to read-replicas replicating from on-premises masters." + }, + "replicaNames": { + "description": "The replicas of the instance.", + "items": { + "type": "string" + }, + "type": "array" + }, + "selfLink": { + "description": "The URI of this resource.", + "type": "string" + }, + "serverCaCert": { + "$ref": "SslCert", + "description": "SSL configuration." + }, + "serviceAccountEmailAddress": { + "description": "The service account email address assigned to the instance. This property is applicable only to Second Generation instances.", + "type": "string" + }, + "settings": { + "$ref": "Settings", + "annotations": { + "required": [ + "sql.instances.insert", + "sql.instances.update" + ] + }, + "description": "The user settings." + }, + "state": { + "description": "The current serving state of the Cloud SQL instance. This can be one of the following.\nRUNNABLE: The instance is running, or is ready to run when accessed.\nSUSPENDED: The instance is not available, for example due to problems with billing.\nPENDING_CREATE: The instance is being created.\nMAINTENANCE: The instance is down for maintenance.\nFAILED: The instance creation failed.\nUNKNOWN_STATE: The state of the instance is unknown.", + "type": "string" + }, + "suspensionReason": { + "description": "If the instance state is SUSPENDED, the reason for the suspension.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "DatabasesListResponse": { + "description": "Database list response.", + "id": "DatabasesListResponse", + "properties": { + "items": { + "description": "List of database resources in the instance.", + "items": { + "$ref": "Database" + }, + "type": "array" + }, + "kind": { + "default": "sql#databasesList", + "description": "This is always sql#databasesList.", + "type": "string" + } + }, + "type": "object" + }, + "DemoteMasterConfiguration": { + "description": "Read-replica configuration for connecting to the on-premises master.", + "id": "DemoteMasterConfiguration", + "properties": { + "kind": { + "default": "sql#demoteMasterConfiguration", + "description": "This is always sql#demoteMasterConfiguration.", + "type": "string" + }, + "mysqlReplicaConfiguration": { + "$ref": "DemoteMasterMySqlReplicaConfiguration", + "description": "MySQL specific configuration when replicating from a MySQL on-premises master. Replication configuration information such as the username, password, certificates, and keys are not stored in the instance metadata. The configuration information is used only to set up the replication connection and is stored by MySQL in a file named master.info in the data directory." + } + }, + "type": "object" + }, + "DemoteMasterContext": { + "description": "Database instance demote master context.", + "id": "DemoteMasterContext", + "properties": { + "kind": { + "default": "sql#demoteMasterContext", + "description": "This is always sql#demoteMasterContext.", + "type": "string" + }, + "masterInstanceName": { + "description": "The name of the instance which will act as on-premises master in the replication setup.", + "type": "string" + }, + "replicaConfiguration": { + "$ref": "DemoteMasterConfiguration", + "description": "Configuration specific to read-replicas replicating from the on-premises master." + }, + "verifyGtidConsistency": { + "description": "Verify GTID consistency for demote operation. Default value: True. Second Generation instances only. Setting this flag to false enables you to bypass GTID consistency check between on-premises master and Cloud SQL instance during the demotion operation but also exposes you to the risk of future replication failures. Change the value only if you know the reason for the GTID divergence and are confident that doing so will not cause any replication issues.", + "type": "boolean" + } + }, + "type": "object" + }, + "DemoteMasterMySqlReplicaConfiguration": { + "description": "Read-replica configuration specific to MySQL databases.", + "id": "DemoteMasterMySqlReplicaConfiguration", + "properties": { + "caCertificate": { + "description": "PEM representation of the trusted CA's x509 certificate.", + "type": "string" + }, + "clientCertificate": { + "description": "PEM representation of the slave's x509 certificate.", + "type": "string" + }, + "clientKey": { + "description": "PEM representation of the slave's private key. The corresponsing public key is encoded in the client's certificate. The format of the slave's private key can be either PKCS #1 or PKCS #8.", + "type": "string" + }, + "kind": { + "default": "sql#demoteMasterMysqlReplicaConfiguration", + "description": "This is always sql#demoteMasterMysqlReplicaConfiguration.", + "type": "string" + }, + "password": { + "description": "The password for the replication connection.", + "type": "string" + }, + "username": { + "description": "The username for the replication connection.", + "type": "string" + } + }, + "type": "object" + }, + "ExportContext": { + "description": "Database instance export context.", + "id": "ExportContext", + "properties": { + "csvExportOptions": { + "description": "Options for exporting data as CSV.", + "properties": { + "selectQuery": { + "description": "The select query used to extract the data.", + "type": "string" + } + }, + "type": "object" + }, + "databases": { + "description": "Databases (for example, guestbook) from which the export is made. If fileType is SQL and no database is specified, all databases are exported. If fileType is CSV, you can optionally specify at most one database to export. If csvExportOptions.selectQuery also specifies the database, this field will be ignored.", + "items": { + "type": "string" + }, + "type": "array" + }, + "fileType": { + "description": "The file type for the specified uri.\nSQL: The file contains SQL statements.\nCSV: The file contains CSV data.", + "type": "string" + }, + "kind": { + "default": "sql#exportContext", + "description": "This is always sql#exportContext.", + "type": "string" + }, + "sqlExportOptions": { + "description": "Options for exporting data as SQL statements.", + "properties": { + "schemaOnly": { + "description": "Export only schemas.", + "type": "boolean" + }, + "tables": { + "description": "Tables to export, or that were exported, from the specified database. If you specify tables, specify one and only one database.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "uri": { + "description": "The path to the file in Google Cloud Storage where the export will be stored. The URI is in the form gs://bucketName/fileName. If the file already exists, the requests succeeds, but the operation fails. If fileType is SQL and the filename ends with .gz, the contents are compressed.", + "type": "string" + } + }, + "type": "object" + }, + "FailoverContext": { + "description": "Database instance failover context.", + "id": "FailoverContext", + "properties": { + "kind": { + "default": "sql#failoverContext", + "description": "This is always sql#failoverContext.", + "type": "string" + }, + "settingsVersion": { + "description": "The current settings version of this instance. Request will be rejected if this version doesn't match the current settings version.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "Flag": { + "description": "A Google Cloud SQL service flag resource.", + "id": "Flag", + "properties": { + "allowedStringValues": { + "description": "For STRING flags, a list of strings that the value can be set to.", + "items": { + "type": "string" + }, + "type": "array" + }, + "appliesTo": { + "description": "The database version this flag applies to. Can be MYSQL_5_5, MYSQL_5_6, or MYSQL_5_7. MYSQL_5_7 is applicable only to Second Generation instances.", + "items": { + "type": "string" + }, + "type": "array" + }, + "kind": { + "default": "sql#flag", + "description": "This is always sql#flag.", + "type": "string" + }, + "maxValue": { + "description": "For INTEGER flags, the maximum allowed value.", + "format": "int64", + "type": "string" + }, + "minValue": { + "description": "For INTEGER flags, the minimum allowed value.", + "format": "int64", + "type": "string" + }, + "name": { + "description": "This is the name of the flag. Flag names always use underscores, not hyphens, e.g. max_allowed_packet", + "type": "string" + }, + "requiresRestart": { + "description": "Indicates whether changing this flag will trigger a database restart. Only applicable to Second Generation instances.", + "type": "boolean" + }, + "type": { + "description": "The type of the flag. Flags are typed to being BOOLEAN, STRING, INTEGER or NONE. NONE is used for flags which do not take a value, such as skip_grant_tables.", + "type": "string" + } + }, + "type": "object" + }, + "FlagsListResponse": { + "description": "Flags list response.", + "id": "FlagsListResponse", + "properties": { + "items": { + "description": "List of flags.", + "items": { + "$ref": "Flag" + }, + "type": "array" + }, + "kind": { + "default": "sql#flagsList", + "description": "This is always sql#flagsList.", + "type": "string" + } + }, + "type": "object" + }, + "ImportContext": { + "description": "Database instance import context.", + "id": "ImportContext", + "properties": { + "csvImportOptions": { + "description": "Options for importing data as CSV.", + "properties": { + "columns": { + "description": "The columns to which CSV data is imported. If not specified, all columns of the database table are loaded with CSV data.", + "items": { + "type": "string" + }, + "type": "array" + }, + "table": { + "description": "The table to which CSV data is imported.", + "type": "string" + } + }, + "type": "object" + }, + "database": { + "description": "The database (for example, guestbook) to which the import is made. If fileType is SQL and no database is specified, it is assumed that the database is specified in the file to be imported. If fileType is CSV, it must be specified.", + "type": "string" + }, + "fileType": { + "description": "The file type for the specified uri.\nSQL: The file contains SQL statements.\nCSV: The file contains CSV data.", + "type": "string" + }, + "importUser": { + "description": "The PostgreSQL user for this import operation. Defaults to cloudsqlsuperuser. Used only for PostgreSQL instances.", + "type": "string" + }, + "kind": { + "default": "sql#importContext", + "description": "This is always sql#importContext.", + "type": "string" + }, + "uri": { + "description": "A path to the file in Google Cloud Storage from which the import is made. The URI is in the form gs://bucketName/fileName. Compressed gzip files (.gz) are supported when fileType is SQL.", + "type": "string" + } + }, + "type": "object" + }, + "InstancesCloneRequest": { + "description": "Database instance clone request.", + "id": "InstancesCloneRequest", + "properties": { + "cloneContext": { + "$ref": "CloneContext", + "description": "Contains details about the clone operation." + } + }, + "type": "object" + }, + "InstancesDemoteMasterRequest": { + "description": "Database demote master request.", + "id": "InstancesDemoteMasterRequest", + "properties": { + "demoteMasterContext": { + "$ref": "DemoteMasterContext", + "description": "Contains details about the demoteMaster operation." + } + }, + "type": "object" + }, + "InstancesExportRequest": { + "description": "Database instance export request.", + "id": "InstancesExportRequest", + "properties": { + "exportContext": { + "$ref": "ExportContext", + "description": "Contains details about the export operation." + } + }, + "type": "object" + }, + "InstancesFailoverRequest": { + "description": "Instance failover request.", + "id": "InstancesFailoverRequest", + "properties": { + "failoverContext": { + "$ref": "FailoverContext", + "description": "Failover Context." + } + }, + "type": "object" + }, + "InstancesImportRequest": { + "description": "Database instance import request.", + "id": "InstancesImportRequest", + "properties": { + "importContext": { + "$ref": "ImportContext", + "description": "Contains details about the import operation." + } + }, + "type": "object" + }, + "InstancesListResponse": { + "description": "Database instances list response.", + "id": "InstancesListResponse", + "properties": { + "items": { + "description": "List of database instance resources.", + "items": { + "$ref": "DatabaseInstance" + }, + "type": "array" + }, + "kind": { + "default": "sql#instancesList", + "description": "This is always sql#instancesList.", + "type": "string" + }, + "nextPageToken": { + "description": "The continuation token, used to page through large result sets. Provide this value in a subsequent request to return the next page of results.", + "type": "string" + } + }, + "type": "object" + }, + "InstancesRestoreBackupRequest": { + "description": "Database instance restore backup request.", + "id": "InstancesRestoreBackupRequest", + "properties": { + "restoreBackupContext": { + "$ref": "RestoreBackupContext", + "description": "Parameters required to perform the restore backup operation." + } + }, + "type": "object" + }, + "InstancesTruncateLogRequest": { + "description": "Instance truncate log request.", + "id": "InstancesTruncateLogRequest", + "properties": { + "truncateLogContext": { + "$ref": "TruncateLogContext", + "description": "Contains details about the truncate log operation." + } + }, + "type": "object" + }, + "IpConfiguration": { + "description": "IP Management configuration.", + "id": "IpConfiguration", + "properties": { + "authorizedNetworks": { + "description": "The list of external networks that are allowed to connect to the instance using the IP. In CIDR notation, also known as 'slash' notation (e.g. 192.168.100.0/24).", + "items": { + "$ref": "AclEntry" + }, + "type": "array" + }, + "ipv4Enabled": { + "description": "Whether the instance should be assigned an IP address or not.", + "type": "boolean" + }, + "requireSsl": { + "description": "Whether SSL connections over IP should be enforced or not.", + "type": "boolean" + } + }, + "type": "object" + }, + "IpMapping": { + "description": "Database instance IP Mapping.", + "id": "IpMapping", + "properties": { + "ipAddress": { + "description": "The IP address assigned.", + "type": "string" + }, + "timeToRetire": { + "description": "The due time for this IP to be retired in RFC 3339 format, for example 2012-11-15T16:19:00.094Z. This field is only available when the IP is scheduled to be retired.", + "format": "date-time", + "type": "string" + }, + "type": { + "description": "The type of this IP address. A PRIMARY address is an address that can accept incoming connections. An OUTGOING address is the source address of connections originating from the instance, if supported.", + "type": "string" + } + }, + "type": "object" + }, + "LocationPreference": { + "description": "Preferred location. This specifies where a Cloud SQL instance should preferably be located, either in a specific Compute Engine zone, or co-located with an App Engine application. Note that if the preferred location is not available, the instance will be located as close as possible within the region. Only one location may be specified.", + "id": "LocationPreference", + "properties": { + "followGaeApplication": { + "description": "The AppEngine application to follow, it must be in the same region as the Cloud SQL instance.", + "type": "string" + }, + "kind": { + "default": "sql#locationPreference", + "description": "This is always sql#locationPreference.", + "type": "string" + }, + "zone": { + "description": "The preferred Compute Engine zone (e.g. us-centra1-a, us-central1-b, etc.).", + "type": "string" + } + }, + "type": "object" + }, + "MaintenanceWindow": { + "description": "Maintenance window. This specifies when a v2 Cloud SQL instance should preferably be restarted for system maintenance puruposes.", + "id": "MaintenanceWindow", + "properties": { + "day": { + "description": "day of week (1-7), starting on Monday.", + "format": "int32", + "type": "integer" + }, + "hour": { + "description": "hour of day - 0 to 23.", + "format": "int32", + "type": "integer" + }, + "kind": { + "default": "sql#maintenanceWindow", + "description": "This is always sql#maintenanceWindow.", + "type": "string" + }, + "updateTrack": { + "description": "Maintenance timing setting: canary (Earlier) or stable (Later).\n Learn more.", + "type": "string" + } + }, + "type": "object" + }, + "MySqlReplicaConfiguration": { + "description": "Read-replica configuration specific to MySQL databases.", + "id": "MySqlReplicaConfiguration", + "properties": { + "caCertificate": { + "description": "PEM representation of the trusted CA's x509 certificate.", + "type": "string" + }, + "clientCertificate": { + "description": "PEM representation of the slave's x509 certificate.", + "type": "string" + }, + "clientKey": { + "description": "PEM representation of the slave's private key. The corresponsing public key is encoded in the client's certificate.", + "type": "string" + }, + "connectRetryInterval": { + "description": "Seconds to wait between connect retries. MySQL's default is 60 seconds.", + "format": "int32", + "type": "integer" + }, + "dumpFilePath": { + "description": "Path to a SQL dump file in Google Cloud Storage from which the slave instance is to be created. The URI is in the form gs://bucketName/fileName. Compressed gzip files (.gz) are also supported. Dumps should have the binlog co-ordinates from which replication should begin. This can be accomplished by setting --master-data to 1 when using mysqldump.", + "type": "string" + }, + "kind": { + "default": "sql#mysqlReplicaConfiguration", + "description": "This is always sql#mysqlReplicaConfiguration.", + "type": "string" + }, + "masterHeartbeatPeriod": { + "description": "Interval in milliseconds between replication heartbeats.", + "format": "int64", + "type": "string" + }, + "password": { + "description": "The password for the replication connection.", + "type": "string" + }, + "sslCipher": { + "description": "A list of permissible ciphers to use for SSL encryption.", + "type": "string" + }, + "username": { + "description": "The username for the replication connection.", + "type": "string" + }, + "verifyServerCertificate": { + "description": "Whether or not to check the master's Common Name value in the certificate that it sends during the SSL handshake.", + "type": "boolean" + } + }, + "type": "object" + }, + "OnPremisesConfiguration": { + "description": "On-premises instance configuration.", + "id": "OnPremisesConfiguration", + "properties": { + "hostPort": { + "description": "The host and port of the on-premises instance in host:port format", + "type": "string" + }, + "kind": { + "default": "sql#onPremisesConfiguration", + "description": "This is always sql#onPremisesConfiguration.", + "type": "string" + } + }, + "type": "object" + }, + "Operation": { + "description": "An Operations resource contains information about database instance operations such as create, delete, and restart. Operations resources are created in response to operations that were initiated; you never create them directly.", + "id": "Operation", + "properties": { + "endTime": { + "description": "The time this operation finished in UTC timezone in RFC 3339 format, for example 2012-11-15T16:19:00.094Z.", + "format": "date-time", + "type": "string" + }, + "error": { + "$ref": "OperationErrors", + "description": "If errors occurred during processing of this operation, this field will be populated." + }, + "exportContext": { + "$ref": "ExportContext", + "description": "The context for export operation, if applicable." + }, + "importContext": { + "$ref": "ImportContext", + "description": "The context for import operation, if applicable." + }, + "insertTime": { + "description": "The time this operation was enqueued in UTC timezone in RFC 3339 format, for example 2012-11-15T16:19:00.094Z.", + "format": "date-time", + "type": "string" + }, + "kind": { + "default": "sql#operation", + "description": "This is always sql#operation.", + "type": "string" + }, + "name": { + "description": "An identifier that uniquely identifies the operation. You can use this identifier to retrieve the Operations resource that has information about the operation.", + "type": "string" + }, + "operationType": { + "description": "The type of the operation. Valid values are CREATE, DELETE, UPDATE, RESTART, IMPORT, EXPORT, BACKUP_VOLUME, RESTORE_VOLUME, CREATE_USER, DELETE_USER, CREATE_DATABASE, DELETE_DATABASE .", + "type": "string" + }, + "selfLink": { + "description": "The URI of this resource.", + "type": "string" + }, + "startTime": { + "description": "The time this operation actually started in UTC timezone in RFC 3339 format, for example 2012-11-15T16:19:00.094Z.", + "format": "date-time", + "type": "string" + }, + "status": { + "description": "The status of an operation. Valid values are PENDING, RUNNING, DONE, UNKNOWN.", + "type": "string" + }, + "targetId": { + "description": "Name of the database instance related to this operation.", + "type": "string" + }, + "targetLink": { + "type": "string" + }, + "targetProject": { + "description": "The project ID of the target instance related to this operation.", + "type": "string" + }, + "user": { + "description": "The email address of the user who initiated this operation.", + "type": "string" + } + }, + "type": "object" + }, + "OperationError": { + "description": "Database instance operation error.", + "id": "OperationError", + "properties": { + "code": { + "description": "Identifies the specific error that occurred.", + "type": "string" + }, + "kind": { + "default": "sql#operationError", + "description": "This is always sql#operationError.", + "type": "string" + }, + "message": { + "description": "Additional information about the error encountered.", + "type": "string" + } + }, + "type": "object" + }, + "OperationErrors": { + "description": "Database instance operation errors list wrapper.", + "id": "OperationErrors", + "properties": { + "errors": { + "description": "The list of errors encountered while processing this operation.", + "items": { + "$ref": "OperationError" + }, + "type": "array" + }, + "kind": { + "default": "sql#operationErrors", + "description": "This is always sql#operationErrors.", + "type": "string" + } + }, + "type": "object" + }, + "OperationsListResponse": { + "description": "Database instance list operations response.", + "id": "OperationsListResponse", + "properties": { + "items": { + "description": "List of operation resources.", + "items": { + "$ref": "Operation" + }, + "type": "array" + }, + "kind": { + "default": "sql#operationsList", + "description": "This is always sql#operationsList.", + "type": "string" + }, + "nextPageToken": { + "description": "The continuation token, used to page through large result sets. Provide this value in a subsequent request to return the next page of results.", + "type": "string" + } + }, + "type": "object" + }, + "ReplicaConfiguration": { + "description": "Read-replica configuration for connecting to the master.", + "id": "ReplicaConfiguration", + "properties": { + "failoverTarget": { + "description": "Specifies if the replica is the failover target. If the field is set to true the replica will be designated as a failover replica. In case the master instance fails, the replica instance will be promoted as the new master instance.\nOnly one replica can be specified as failover target, and the replica has to be in different zone with the master instance.", + "type": "boolean" + }, + "kind": { + "default": "sql#replicaConfiguration", + "description": "This is always sql#replicaConfiguration.", + "type": "string" + }, + "mysqlReplicaConfiguration": { + "$ref": "MySqlReplicaConfiguration", + "description": "MySQL specific configuration when replicating from a MySQL on-premises master. Replication configuration information such as the username, password, certificates, and keys are not stored in the instance metadata. The configuration information is used only to set up the replication connection and is stored by MySQL in a file named master.info in the data directory." + } + }, + "type": "object" + }, + "RestoreBackupContext": { + "description": "Database instance restore from backup context.", + "id": "RestoreBackupContext", + "properties": { + "backupRunId": { + "annotations": { + "required": [ + "sql.instances.restoreBackup" + ] + }, + "description": "The ID of the backup run to restore from.", + "format": "int64", + "type": "string" + }, + "instanceId": { + "description": "The ID of the instance that the backup was taken from.", + "type": "string" + }, + "kind": { + "default": "sql#restoreBackupContext", + "description": "This is always sql#restoreBackupContext.", + "type": "string" + } + }, + "type": "object" + }, + "Settings": { + "description": "Database instance settings.", + "id": "Settings", + "properties": { + "activationPolicy": { + "description": "The activation policy specifies when the instance is activated; it is applicable only when the instance state is RUNNABLE. Valid values:\nALWAYS: The instance is on, and remains so even in the absence of connection requests.\nNEVER: The instance is off; it is not activated, even if a connection request arrives.\nON_DEMAND: First Generation instances only. The instance responds to incoming requests, and turns itself off when not in use. Instances with PER_USE pricing turn off after 15 minutes of inactivity. Instances with PER_PACKAGE pricing turn off after 12 hours of inactivity.", + "type": "string" + }, + "authorizedGaeApplications": { + "description": "The App Engine app IDs that can access this instance. This property is only applicable to First Generation instances.", + "items": { + "type": "string" + }, + "type": "array" + }, + "availabilityType": { + "description": "Availability type (PostgreSQL instances only). Potential values:\nZONAL: The instance serves data from only one zone. Outages in that zone affect data accessibility.\nREGIONAL: The instance can serve data from more than one zone in a region (it is highly available).\nFor more information, see Overview of the High Availability Configuration.", + "type": "string" + }, + "backupConfiguration": { + "$ref": "BackupConfiguration", + "description": "The daily backup configuration for the instance." + }, + "crashSafeReplicationEnabled": { + "description": "Configuration specific to read replica instances. Indicates whether database flags for crash-safe replication are enabled. This property is only applicable to First Generation instances.", + "type": "boolean" + }, + "dataDiskSizeGb": { + "description": "The size of data disk, in GB. The data disk size minimum is 10GB. Applies only to Second Generation instances.", + "format": "int64", + "type": "string" + }, + "dataDiskType": { + "description": "The type of data disk. Only supported for Second Generation instances. The default type is PD_SSD. Applies only to Second Generation instances.", + "type": "string" + }, + "databaseFlags": { + "description": "The database flags passed to the instance at startup.", + "items": { + "$ref": "DatabaseFlags" + }, + "type": "array" + }, + "databaseReplicationEnabled": { + "description": "Configuration specific to read replica instances. Indicates whether replication is enabled or not.", + "type": "boolean" + }, + "ipConfiguration": { + "$ref": "IpConfiguration", + "description": "The settings for IP Management. This allows to enable or disable the instance IP and manage which external networks can connect to the instance. The IPv4 address cannot be disabled for Second Generation instances." + }, + "kind": { + "default": "sql#settings", + "description": "This is always sql#settings.", + "type": "string" + }, + "locationPreference": { + "$ref": "LocationPreference", + "description": "The location preference settings. This allows the instance to be located as near as possible to either an App Engine app or Compute Engine zone for better performance. App Engine co-location is only applicable to First Generation instances." + }, + "maintenanceWindow": { + "$ref": "MaintenanceWindow", + "description": "The maintenance window for this instance. This specifies when the instance may be restarted for maintenance purposes. Applies only to Second Generation instances." + }, + "pricingPlan": { + "description": "The pricing plan for this instance. This can be either PER_USE or PACKAGE. Only PER_USE is supported for Second Generation instances.", + "type": "string" + }, + "replicationType": { + "description": "The type of replication this instance uses. This can be either ASYNCHRONOUS or SYNCHRONOUS. This property is only applicable to First Generation instances.", + "type": "string" + }, + "settingsVersion": { + "annotations": { + "required": [ + "sql.instances.update" + ] + }, + "description": "The version of instance settings. This is a required field for update method to make sure concurrent updates are handled properly. During update, use the most recent settingsVersion value for this instance and do not try to update this value.", + "format": "int64", + "type": "string" + }, + "storageAutoResize": { + "description": "Configuration to increase storage size automatically. The default value is true. Applies only to Second Generation instances.", + "type": "boolean" + }, + "storageAutoResizeLimit": { + "description": "The maximum size to which storage capacity can be automatically increased. The default value is 0, which specifies that there is no limit. Applies only to Second Generation instances.", + "format": "int64", + "type": "string" + }, + "tier": { + "annotations": { + "required": [ + "sql.instances.insert", + "sql.instances.update" + ] + }, + "description": "The tier of service for this instance, for example D1, D2. For more information, see pricing.", + "type": "string" + }, + "userLabels": { + "additionalProperties": { + "description": "An individual label entry, composed of a key and a value.", + "type": "string" + }, + "description": "User-provided labels, represented as a dictionary where each label is a single key value pair.", + "type": "object" + } + }, + "type": "object" + }, + "SslCert": { + "description": "SslCerts Resource", + "id": "SslCert", + "properties": { + "cert": { + "description": "PEM representation.", + "type": "string" + }, + "certSerialNumber": { + "description": "Serial number, as extracted from the certificate.", + "type": "string" + }, + "commonName": { + "description": "User supplied name. Constrained to [a-zA-Z.-_ ]+.", + "type": "string" + }, + "createTime": { + "description": "The time when the certificate was created in RFC 3339 format, for example 2012-11-15T16:19:00.094Z", + "format": "date-time", + "type": "string" + }, + "expirationTime": { + "description": "The time when the certificate expires in RFC 3339 format, for example 2012-11-15T16:19:00.094Z.", + "format": "date-time", + "type": "string" + }, + "instance": { + "description": "Name of the database instance.", + "type": "string" + }, + "kind": { + "default": "sql#sslCert", + "description": "This is always sql#sslCert.", + "type": "string" + }, + "selfLink": { + "description": "The URI of this resource.", + "type": "string" + }, + "sha1Fingerprint": { + "description": "Sha1 Fingerprint.", + "type": "string" + } + }, + "type": "object" + }, + "SslCertDetail": { + "description": "SslCertDetail.", + "id": "SslCertDetail", + "properties": { + "certInfo": { + "$ref": "SslCert", + "description": "The public information about the cert." + }, + "certPrivateKey": { + "description": "The private key for the client cert, in pem format. Keep private in order to protect your security.", + "type": "string" + } + }, + "type": "object" + }, + "SslCertsCreateEphemeralRequest": { + "description": "SslCerts create ephemeral certificate request.", + "id": "SslCertsCreateEphemeralRequest", + "properties": { + "public_key": { + "description": "PEM encoded public key to include in the signed certificate.", + "type": "string" + } + }, + "type": "object" + }, + "SslCertsInsertRequest": { + "description": "SslCerts insert request.", + "id": "SslCertsInsertRequest", + "properties": { + "commonName": { + "description": "User supplied name. Must be a distinct name from the other certificates for this instance. New certificates will not be usable until the instance is restarted.", + "type": "string" + } + }, + "type": "object" + }, + "SslCertsInsertResponse": { + "description": "SslCert insert response.", + "id": "SslCertsInsertResponse", + "properties": { + "clientCert": { + "$ref": "SslCertDetail", + "description": "The new client certificate and private key. For First Generation instances, the new certificate does not take effect until the instance is restarted." + }, + "kind": { + "default": "sql#sslCertsInsert", + "description": "This is always sql#sslCertsInsert.", + "type": "string" + }, + "operation": { + "$ref": "Operation", + "description": "The operation to track the ssl certs insert request." + }, + "serverCaCert": { + "$ref": "SslCert", + "description": "The server Certificate Authority's certificate. If this is missing you can force a new one to be generated by calling resetSslConfig method on instances resource." + } + }, + "type": "object" + }, + "SslCertsListResponse": { + "description": "SslCerts list response.", + "id": "SslCertsListResponse", + "properties": { + "items": { + "description": "List of client certificates for the instance.", + "items": { + "$ref": "SslCert" + }, + "type": "array" + }, + "kind": { + "default": "sql#sslCertsList", + "description": "This is always sql#sslCertsList.", + "type": "string" + } + }, + "type": "object" + }, + "Tier": { + "description": "A Google Cloud SQL service tier resource.", + "id": "Tier", + "properties": { + "DiskQuota": { + "description": "The maximum disk size of this tier in bytes.", + "format": "int64", + "type": "string" + }, + "RAM": { + "description": "The maximum RAM usage of this tier in bytes.", + "format": "int64", + "type": "string" + }, + "kind": { + "default": "sql#tier", + "description": "This is always sql#tier.", + "type": "string" + }, + "region": { + "description": "The applicable regions for this tier.", + "items": { + "type": "string" + }, + "type": "array" + }, + "tier": { + "description": "An identifier for the service tier, for example D1, D2 etc. For related information, see Pricing.", + "type": "string" + } + }, + "type": "object" + }, + "TiersListResponse": { + "description": "Tiers list response.", + "id": "TiersListResponse", + "properties": { + "items": { + "description": "List of tiers.", + "items": { + "$ref": "Tier" + }, + "type": "array" + }, + "kind": { + "default": "sql#tiersList", + "description": "This is always sql#tiersList.", + "type": "string" + } + }, + "type": "object" + }, + "TruncateLogContext": { + "description": "Database Instance truncate log context.", + "id": "TruncateLogContext", + "properties": { + "kind": { + "default": "sql#truncateLogContext", + "description": "This is always sql#truncateLogContext.", + "type": "string" + }, + "logType": { + "description": "The type of log to truncate. Valid values are MYSQL_GENERAL_TABLE and MYSQL_SLOW_TABLE.", + "type": "string" + } + }, + "type": "object" + }, + "User": { + "description": "A Cloud SQL user resource.", + "id": "User", + "properties": { + "etag": { + "description": "HTTP 1.1 Entity tag for the resource.", + "type": "string" + }, + "host": { + "description": "The host name from which the user can connect. For insert operations, host defaults to an empty string. For update operations, host is specified as part of the request URL. The host name cannot be updated after insertion.", + "type": "string" + }, + "instance": { + "description": "The name of the Cloud SQL instance. This does not include the project ID. Can be omitted for update since it is already specified on the URL.", + "type": "string" + }, + "kind": { + "default": "sql#user", + "description": "This is always sql#user.", + "type": "string" + }, + "name": { + "description": "The name of the user in the Cloud SQL instance. Can be omitted for update since it is already specified on the URL.", + "type": "string" + }, + "password": { + "description": "The password for the user.", + "type": "string" + }, + "project": { + "description": "The project ID of the project containing the Cloud SQL database. The Google apps domain is prefixed if applicable. Can be omitted for update since it is already specified on the URL.", + "type": "string" + } + }, + "type": "object" + }, + "UsersListResponse": { + "description": "User list response.", + "id": "UsersListResponse", + "properties": { + "items": { + "description": "List of user resources in the instance.", + "items": { + "$ref": "User" + }, + "type": "array" + }, + "kind": { + "default": "sql#usersList", + "description": "This is always sql#usersList.", + "type": "string" + }, + "nextPageToken": { + "description": "An identifier that uniquely identifies the operation. You can use this identifier to retrieve the Operations resource that has information about the operation.", + "type": "string" + } + }, + "type": "object" } - } }, - "InstancesDemoteMasterRequest": { - "id": "InstancesDemoteMasterRequest", - "type": "object", - "description": "Database demote master request.", - "properties": { - "demoteMasterContext": { - "$ref": "DemoteMasterContext", - "description": "Contains details about the demoteMaster operation." - } - } - }, - "InstancesExportRequest": { - "id": "InstancesExportRequest", - "type": "object", - "description": "Database instance export request.", - "properties": { - "exportContext": { - "$ref": "ExportContext", - "description": "Contains details about the export operation." - } - } - }, - "InstancesFailoverRequest": { - "id": "InstancesFailoverRequest", - "type": "object", - "description": "Instance failover request.", - "properties": { - "failoverContext": { - "$ref": "FailoverContext", - "description": "Failover Context." - } - } - }, - "InstancesImportRequest": { - "id": "InstancesImportRequest", - "type": "object", - "description": "Database instance import request.", - "properties": { - "importContext": { - "$ref": "ImportContext", - "description": "Contains details about the import operation." - } - } - }, - "InstancesListResponse": { - "id": "InstancesListResponse", - "type": "object", - "description": "Database instances list response.", - "properties": { - "items": { - "type": "array", - "description": "List of database instance resources.", - "items": { - "$ref": "DatabaseInstance" - } - }, - "kind": { - "type": "string", - "description": "This is always sql#instancesList.", - "default": "sql#instancesList" - }, - "nextPageToken": { - "type": "string", - "description": "The continuation token, used to page through large result sets. Provide this value in a subsequent request to return the next page of results." - } - } - }, - "InstancesRestoreBackupRequest": { - "id": "InstancesRestoreBackupRequest", - "type": "object", - "description": "Database instance restore backup request.", - "properties": { - "restoreBackupContext": { - "$ref": "RestoreBackupContext", - "description": "Parameters required to perform the restore backup operation." - } - } - }, - "InstancesTruncateLogRequest": { - "id": "InstancesTruncateLogRequest", - "type": "object", - "description": "Instance truncate log request.", - "properties": { - "truncateLogContext": { - "$ref": "TruncateLogContext", - "description": "Contains details about the truncate log operation." - } - } - }, - "IpConfiguration": { - "id": "IpConfiguration", - "type": "object", - "description": "IP Management configuration.", - "properties": { - "authorizedNetworks": { - "type": "array", - "description": "The list of external networks that are allowed to connect to the instance using the IP. In CIDR notation, also known as 'slash' notation (e.g. 192.168.100.0/24).", - "items": { - "$ref": "AclEntry" - } - }, - "ipv4Enabled": { - "type": "boolean", - "description": "Whether the instance should be assigned an IP address or not." - }, - "requireSsl": { - "type": "boolean", - "description": "Whether SSL connections over IP should be enforced or not." - } - } - }, - "IpMapping": { - "id": "IpMapping", - "type": "object", - "description": "Database instance IP Mapping.", - "properties": { - "ipAddress": { - "type": "string", - "description": "The IP address assigned." - }, - "timeToRetire": { - "type": "string", - "description": "The due time for this IP to be retired in RFC 3339 format, for example 2012-11-15T16:19:00.094Z. This field is only available when the IP is scheduled to be retired.", - "format": "date-time" - }, - "type": { - "type": "string", - "description": "The type of this IP address. A PRIMARY address is an address that can accept incoming connections. An OUTGOING address is the source address of connections originating from the instance, if supported." - } - } - }, - "LocationPreference": { - "id": "LocationPreference", - "type": "object", - "description": "Preferred location. This specifies where a Cloud SQL instance should preferably be located, either in a specific Compute Engine zone, or co-located with an App Engine application. Note that if the preferred location is not available, the instance will be located as close as possible within the region. Only one location may be specified.", - "properties": { - "followGaeApplication": { - "type": "string", - "description": "The AppEngine application to follow, it must be in the same region as the Cloud SQL instance." - }, - "kind": { - "type": "string", - "description": "This is always sql#locationPreference.", - "default": "sql#locationPreference" - }, - "zone": { - "type": "string", - "description": "The preferred Compute Engine zone (e.g. us-centra1-a, us-central1-b, etc.)." - } - } - }, - "MaintenanceWindow": { - "id": "MaintenanceWindow", - "type": "object", - "description": "Maintenance window. This specifies when a v2 Cloud SQL instance should preferably be restarted for system maintenance puruposes.", - "properties": { - "day": { - "type": "integer", - "description": "day of week (1-7), starting on Monday.", - "format": "int32" - }, - "hour": { - "type": "integer", - "description": "hour of day - 0 to 23.", - "format": "int32" - }, - "kind": { - "type": "string", - "description": "This is always sql#maintenanceWindow.", - "default": "sql#maintenanceWindow" - }, - "updateTrack": { - "type": "string" - } - } - }, - "MySqlReplicaConfiguration": { - "id": "MySqlReplicaConfiguration", - "type": "object", - "description": "Read-replica configuration specific to MySQL databases.", - "properties": { - "caCertificate": { - "type": "string", - "description": "PEM representation of the trusted CA's x509 certificate." - }, - "clientCertificate": { - "type": "string", - "description": "PEM representation of the slave's x509 certificate." - }, - "clientKey": { - "type": "string", - "description": "PEM representation of the slave's private key. The corresponsing public key is encoded in the client's certificate." - }, - "connectRetryInterval": { - "type": "integer", - "description": "Seconds to wait between connect retries. MySQL's default is 60 seconds.", - "format": "int32" - }, - "dumpFilePath": { - "type": "string", - "description": "Path to a SQL dump file in Google Cloud Storage from which the slave instance is to be created. The URI is in the form gs://bucketName/fileName. Compressed gzip files (.gz) are also supported. Dumps should have the binlog co-ordinates from which replication should begin. This can be accomplished by setting --master-data to 1 when using mysqldump." - }, - "kind": { - "type": "string", - "description": "This is always sql#mysqlReplicaConfiguration.", - "default": "sql#mysqlReplicaConfiguration" - }, - "masterHeartbeatPeriod": { - "type": "string", - "description": "Interval in milliseconds between replication heartbeats.", - "format": "int64" - }, - "password": { - "type": "string", - "description": "The password for the replication connection." - }, - "sslCipher": { - "type": "string", - "description": "A list of permissible ciphers to use for SSL encryption." - }, - "username": { - "type": "string", - "description": "The username for the replication connection." - }, - "verifyServerCertificate": { - "type": "boolean", - "description": "Whether or not to check the master's Common Name value in the certificate that it sends during the SSL handshake." - } - } - }, - "OnPremisesConfiguration": { - "id": "OnPremisesConfiguration", - "type": "object", - "description": "On-premises instance configuration.", - "properties": { - "hostPort": { - "type": "string", - "description": "The host and port of the on-premises instance in host:port format" - }, - "kind": { - "type": "string", - "description": "This is always sql#onPremisesConfiguration.", - "default": "sql#onPremisesConfiguration" - } - } - }, - "Operation": { - "id": "Operation", - "type": "object", - "description": "An Operations resource contains information about database instance operations such as create, delete, and restart. Operations resources are created in response to operations that were initiated; you never create them directly.", - "properties": { - "endTime": { - "type": "string", - "description": "The time this operation finished in UTC timezone in RFC 3339 format, for example 2012-11-15T16:19:00.094Z.", - "format": "date-time" - }, - "error": { - "$ref": "OperationErrors", - "description": "If errors occurred during processing of this operation, this field will be populated." - }, - "exportContext": { - "$ref": "ExportContext", - "description": "The context for export operation, if applicable." - }, - "importContext": { - "$ref": "ImportContext", - "description": "The context for import operation, if applicable." - }, - "insertTime": { - "type": "string", - "description": "The time this operation was enqueued in UTC timezone in RFC 3339 format, for example 2012-11-15T16:19:00.094Z.", - "format": "date-time" - }, - "kind": { - "type": "string", - "description": "This is always sql#operation.", - "default": "sql#operation" - }, - "name": { - "type": "string", - "description": "An identifier that uniquely identifies the operation. You can use this identifier to retrieve the Operations resource that has information about the operation." - }, - "operationType": { - "type": "string", - "description": "The type of the operation. Valid values are CREATE, DELETE, UPDATE, RESTART, IMPORT, EXPORT, BACKUP_VOLUME, RESTORE_VOLUME, CREATE_USER, DELETE_USER, CREATE_DATABASE, DELETE_DATABASE ." - }, - "selfLink": { - "type": "string", - "description": "The URI of this resource." - }, - "startTime": { - "type": "string", - "description": "The time this operation actually started in UTC timezone in RFC 3339 format, for example 2012-11-15T16:19:00.094Z.", - "format": "date-time" - }, - "status": { - "type": "string", - "description": "The status of an operation. Valid values are PENDING, RUNNING, DONE, UNKNOWN." - }, - "targetId": { - "type": "string", - "description": "Name of the database instance related to this operation." - }, - "targetLink": { - "type": "string" - }, - "targetProject": { - "type": "string", - "description": "The project ID of the target instance related to this operation." - }, - "user": { - "type": "string", - "description": "The email address of the user who initiated this operation." - } - } - }, - "OperationError": { - "id": "OperationError", - "type": "object", - "description": "Database instance operation error.", - "properties": { - "code": { - "type": "string", - "description": "Identifies the specific error that occurred." - }, - "kind": { - "type": "string", - "description": "This is always sql#operationError.", - "default": "sql#operationError" - }, - "message": { - "type": "string", - "description": "Additional information about the error encountered." - } - } - }, - "OperationErrors": { - "id": "OperationErrors", - "type": "object", - "description": "Database instance operation errors list wrapper.", - "properties": { - "errors": { - "type": "array", - "description": "The list of errors encountered while processing this operation.", - "items": { - "$ref": "OperationError" - } - }, - "kind": { - "type": "string", - "description": "This is always sql#operationErrors.", - "default": "sql#operationErrors" - } - } - }, - "OperationsListResponse": { - "id": "OperationsListResponse", - "type": "object", - "description": "Database instance list operations response.", - "properties": { - "items": { - "type": "array", - "description": "List of operation resources.", - "items": { - "$ref": "Operation" - } - }, - "kind": { - "type": "string", - "description": "This is always sql#operationsList.", - "default": "sql#operationsList" - }, - "nextPageToken": { - "type": "string", - "description": "The continuation token, used to page through large result sets. Provide this value in a subsequent request to return the next page of results." - } - } - }, - "ReplicaConfiguration": { - "id": "ReplicaConfiguration", - "type": "object", - "description": "Read-replica configuration for connecting to the master.", - "properties": { - "failoverTarget": { - "type": "boolean", - "description": "Specifies if the replica is the failover target. If the field is set to true the replica will be designated as a failover replica. In case the master instance fails, the replica instance will be promoted as the new master instance.\nOnly one replica can be specified as failover target, and the replica has to be in different zone with the master instance." - }, - "kind": { - "type": "string", - "description": "This is always sql#replicaConfiguration.", - "default": "sql#replicaConfiguration" - }, - "mysqlReplicaConfiguration": { - "$ref": "MySqlReplicaConfiguration", - "description": "MySQL specific configuration when replicating from a MySQL on-premises master. Replication configuration information such as the username, password, certificates, and keys are not stored in the instance metadata. The configuration information is used only to set up the replication connection and is stored by MySQL in a file named master.info in the data directory." - } - } - }, - "RestoreBackupContext": { - "id": "RestoreBackupContext", - "type": "object", - "description": "Database instance restore from backup context.", - "properties": { - "backupRunId": { - "type": "string", - "description": "The ID of the backup run to restore from.", - "format": "int64", - "annotations": { - "required": [ - "sql.instances.restoreBackup" - ] - } - }, - "instanceId": { - "type": "string", - "description": "The ID of the instance that the backup was taken from." - }, - "kind": { - "type": "string", - "description": "This is always sql#restoreBackupContext.", - "default": "sql#restoreBackupContext" - } - } - }, - "Settings": { - "id": "Settings", - "type": "object", - "description": "Database instance settings.", - "properties": { - "activationPolicy": { - "type": "string", - "description": "The activation policy specifies when the instance is activated; it is applicable only when the instance state is RUNNABLE. The activation policy cannot be updated together with other settings for Second Generation instances. Valid values:\nALWAYS: The instance is on; it is not deactivated by inactivity.\nNEVER: The instance is off; it is not activated, even if a connection request arrives.\nON_DEMAND: The instance responds to incoming requests, and turns itself off when not in use. Instances with PER_USE pricing turn off after 15 minutes of inactivity. Instances with PER_PACKAGE pricing turn off after 12 hours of inactivity." - }, - "authorizedGaeApplications": { - "type": "array", - "description": "The App Engine app IDs that can access this instance. This property is only applicable to First Generation instances.", - "items": { - "type": "string" - } - }, - "availabilityType": { - "type": "string", - "description": "Reserved for future use." - }, - "backupConfiguration": { - "$ref": "BackupConfiguration", - "description": "The daily backup configuration for the instance." - }, - "crashSafeReplicationEnabled": { - "type": "boolean", - "description": "Configuration specific to read replica instances. Indicates whether database flags for crash-safe replication are enabled. This property is only applicable to First Generation instances." - }, - "dataDiskSizeGb": { - "type": "string", - "description": "The size of data disk, in GB. The data disk size minimum is 10GB. Applies only to Second Generation instances.", - "format": "int64" - }, - "dataDiskType": { - "type": "string", - "description": "The type of data disk. Only supported for Second Generation instances. The default type is PD_SSD. Applies only to Second Generation instances." - }, - "databaseFlags": { - "type": "array", - "description": "The database flags passed to the instance at startup.", - "items": { - "$ref": "DatabaseFlags" - } - }, - "databaseReplicationEnabled": { - "type": "boolean", - "description": "Configuration specific to read replica instances. Indicates whether replication is enabled or not." - }, - "ipConfiguration": { - "$ref": "IpConfiguration", - "description": "The settings for IP Management. This allows to enable or disable the instance IP and manage which external networks can connect to the instance. The IPv4 address cannot be disabled for Second Generation instances." - }, - "kind": { - "type": "string", - "description": "This is always sql#settings.", - "default": "sql#settings" - }, - "locationPreference": { - "$ref": "LocationPreference", - "description": "The location preference settings. This allows the instance to be located as near as possible to either an App Engine app or GCE zone for better performance. App Engine co-location is only applicable to First Generation instances." - }, - "maintenanceWindow": { - "$ref": "MaintenanceWindow", - "description": "The maintenance window for this instance. This specifies when the instance may be restarted for maintenance purposes. Applies only to Second Generation instances." - }, - "pricingPlan": { - "type": "string", - "description": "The pricing plan for this instance. This can be either PER_USE or PACKAGE. Only PER_USE is supported for Second Generation instances." - }, - "replicationType": { - "type": "string", - "description": "The type of replication this instance uses. This can be either ASYNCHRONOUS or SYNCHRONOUS. This property is only applicable to First Generation instances." - }, - "settingsVersion": { - "type": "string", - "description": "The version of instance settings. This is a required field for update method to make sure concurrent updates are handled properly. During update, use the most recent settingsVersion value for this instance and do not try to update this value.", - "format": "int64", - "annotations": { - "required": [ - "sql.instances.update" - ] - } - }, - "storageAutoResize": { - "type": "boolean", - "description": "Configuration to increase storage size automatically. The default value is true. Applies only to Second Generation instances." - }, - "storageAutoResizeLimit": { - "type": "string", - "description": "The maximum size to which storage capacity can be automatically increased. The default value is 0, which specifies that there is no limit. Applies only to Second Generation instances.", - "format": "int64" - }, - "tier": { - "type": "string", - "description": "The tier of service for this instance, for example D1, D2. For more information, see pricing.", - "annotations": { - "required": [ - "sql.instances.insert", - "sql.instances.update" - ] - } - }, - "userLabels": { - "type": "object", - "description": "User-provided labels, represented as a dictionary where each label is a single key value pair.", - "additionalProperties": { - "type": "string", - "description": "An individual label entry, composed of a key and a value." - } - } - } - }, - "SslCert": { - "id": "SslCert", - "type": "object", - "description": "SslCerts Resource", - "properties": { - "cert": { - "type": "string", - "description": "PEM representation." - }, - "certSerialNumber": { - "type": "string", - "description": "Serial number, as extracted from the certificate." - }, - "commonName": { - "type": "string", - "description": "User supplied name. Constrained to [a-zA-Z.-_ ]+." - }, - "createTime": { - "type": "string", - "description": "The time when the certificate was created in RFC 3339 format, for example 2012-11-15T16:19:00.094Z", - "format": "date-time" - }, - "expirationTime": { - "type": "string", - "description": "The time when the certificate expires in RFC 3339 format, for example 2012-11-15T16:19:00.094Z.", - "format": "date-time" - }, - "instance": { - "type": "string", - "description": "Name of the database instance." - }, - "kind": { - "type": "string", - "description": "This is always sql#sslCert.", - "default": "sql#sslCert" - }, - "selfLink": { - "type": "string", - "description": "The URI of this resource." - }, - "sha1Fingerprint": { - "type": "string", - "description": "Sha1 Fingerprint." - } - } - }, - "SslCertDetail": { - "id": "SslCertDetail", - "type": "object", - "description": "SslCertDetail.", - "properties": { - "certInfo": { - "$ref": "SslCert", - "description": "The public information about the cert." - }, - "certPrivateKey": { - "type": "string", - "description": "The private key for the client cert, in pem format. Keep private in order to protect your security." - } - } - }, - "SslCertsCreateEphemeralRequest": { - "id": "SslCertsCreateEphemeralRequest", - "type": "object", - "description": "SslCerts create ephemeral certificate request.", - "properties": { - "public_key": { - "type": "string", - "description": "PEM encoded public key to include in the signed certificate." - } - } - }, - "SslCertsInsertRequest": { - "id": "SslCertsInsertRequest", - "type": "object", - "description": "SslCerts insert request.", - "properties": { - "commonName": { - "type": "string", - "description": "User supplied name. Must be a distinct name from the other certificates for this instance. New certificates will not be usable until the instance is restarted." - } - } - }, - "SslCertsInsertResponse": { - "id": "SslCertsInsertResponse", - "type": "object", - "description": "SslCert insert response.", - "properties": { - "clientCert": { - "$ref": "SslCertDetail", - "description": "The new client certificate and private key. The new certificate will not work until the instance is restarted for First Generation instances." - }, - "kind": { - "type": "string", - "description": "This is always sql#sslCertsInsert.", - "default": "sql#sslCertsInsert" - }, - "operation": { - "$ref": "Operation", - "description": "The operation to track the ssl certs insert request." - }, - "serverCaCert": { - "$ref": "SslCert", - "description": "The server Certificate Authority's certificate. If this is missing you can force a new one to be generated by calling resetSslConfig method on instances resource." - } - } - }, - "SslCertsListResponse": { - "id": "SslCertsListResponse", - "type": "object", - "description": "SslCerts list response.", - "properties": { - "items": { - "type": "array", - "description": "List of client certificates for the instance.", - "items": { - "$ref": "SslCert" - } - }, - "kind": { - "type": "string", - "description": "This is always sql#sslCertsList.", - "default": "sql#sslCertsList" - } - } - }, - "Tier": { - "id": "Tier", - "type": "object", - "description": "A Google Cloud SQL service tier resource.", - "properties": { - "DiskQuota": { - "type": "string", - "description": "The maximum disk size of this tier in bytes.", - "format": "int64" - }, - "RAM": { - "type": "string", - "description": "The maximum RAM usage of this tier in bytes.", - "format": "int64" - }, - "kind": { - "type": "string", - "description": "This is always sql#tier.", - "default": "sql#tier" - }, - "region": { - "type": "array", - "description": "The applicable regions for this tier.", - "items": { - "type": "string" - } - }, - "tier": { - "type": "string", - "description": "An identifier for the service tier, for example D1, D2 etc. For related information, see Pricing." - } - } - }, - "TiersListResponse": { - "id": "TiersListResponse", - "type": "object", - "description": "Tiers list response.", - "properties": { - "items": { - "type": "array", - "description": "List of tiers.", - "items": { - "$ref": "Tier" - } - }, - "kind": { - "type": "string", - "description": "This is always sql#tiersList.", - "default": "sql#tiersList" - } - } - }, - "TruncateLogContext": { - "id": "TruncateLogContext", - "type": "object", - "description": "Database Instance truncate log context.", - "properties": { - "kind": { - "type": "string", - "description": "This is always sql#truncateLogContext.", - "default": "sql#truncateLogContext" - }, - "logType": { - "type": "string", - "description": "The type of log to truncate. Valid values are MYSQL_GENERAL_TABLE and MYSQL_SLOW_TABLE." - } - } - }, - "User": { - "id": "User", - "type": "object", - "description": "A Cloud SQL user resource.", - "properties": { - "etag": { - "type": "string", - "description": "HTTP 1.1 Entity tag for the resource." - }, - "host": { - "type": "string", - "description": "The host name from which the user can connect. For insert operations, host defaults to an empty string. For update operations, host is specified as part of the request URL. The host name cannot be updated after insertion." - }, - "instance": { - "type": "string", - "description": "The name of the Cloud SQL instance. This does not include the project ID. Can be omitted for update since it is already specified on the URL." - }, - "kind": { - "type": "string", - "description": "This is always sql#user.", - "default": "sql#user" - }, - "name": { - "type": "string", - "description": "The name of the user in the Cloud SQL instance. Can be omitted for update since it is already specified on the URL." - }, - "password": { - "type": "string", - "description": "The password for the user." - }, - "project": { - "type": "string", - "description": "The project ID of the project containing the Cloud SQL database. The Google apps domain is prefixed if applicable. Can be omitted for update since it is already specified on the URL." - } - } - }, - "UsersListResponse": { - "id": "UsersListResponse", - "type": "object", - "description": "User list response.", - "properties": { - "items": { - "type": "array", - "description": "List of user resources in the instance.", - "items": { - "$ref": "User" - } - }, - "kind": { - "type": "string", - "description": "This is always sql#usersList.", - "default": "sql#usersList" - }, - "nextPageToken": { - "type": "string", - "description": "An identifier that uniquely identifies the operation. You can use this identifier to retrieve the Operations resource that has information about the operation." - } - } - } - }, - "resources": { - "backupRuns": { - "methods": { - "delete": { - "id": "sql.backupRuns.delete", - "path": "projects/{project}/instances/{instance}/backupRuns/{id}", - "httpMethod": "DELETE", - "description": "Deletes the backup taken by a backup run.", - "parameters": { - "id": { - "type": "string", - "description": "The ID of the Backup Run to delete. To find a Backup Run ID, use the list method.", - "required": true, - "format": "int64", - "location": "path" - }, - "instance": { - "type": "string", - "description": "Cloud SQL instance ID. This does not include the project ID.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID of the project that contains the instance.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "instance", - "id" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/sqlservice.admin" - ] - }, - "get": { - "id": "sql.backupRuns.get", - "path": "projects/{project}/instances/{instance}/backupRuns/{id}", - "httpMethod": "GET", - "description": "Retrieves a resource containing information about a backup run.", - "parameters": { - "id": { - "type": "string", - "description": "The ID of this Backup Run.", - "required": true, - "format": "int64", - "location": "path" - }, - "instance": { - "type": "string", - "description": "Cloud SQL instance ID. This does not include the project ID.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID of the project that contains the instance.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "instance", - "id" - ], - "response": { - "$ref": "BackupRun" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/sqlservice.admin" - ] - }, - "insert": { - "id": "sql.backupRuns.insert", - "path": "projects/{project}/instances/{instance}/backupRuns", - "httpMethod": "POST", - "description": "Creates a new backup run on demand. This method is applicable only to Second Generation instances.", - "parameters": { - "instance": { - "type": "string", - "description": "Cloud SQL instance ID. This does not include the project ID.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID of the project that contains the instance.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "instance" - ], - "request": { - "$ref": "BackupRun" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/sqlservice.admin" - ] - }, - "list": { - "id": "sql.backupRuns.list", - "path": "projects/{project}/instances/{instance}/backupRuns", - "httpMethod": "GET", - "description": "Lists all backup runs associated with a given instance and configuration in the reverse chronological order of the enqueued time.", - "parameters": { - "instance": { - "type": "string", - "description": "Cloud SQL instance ID. This does not include the project ID.", - "required": true, - "location": "path" - }, - "maxResults": { - "type": "integer", - "description": "Maximum number of backup runs per response.", - "format": "int32", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "A previously-returned page token representing part of the larger set of results to view.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID of the project that contains the instance.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "instance" - ], - "response": { - "$ref": "BackupRunsListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/sqlservice.admin" - ] - } - } - }, - "databases": { - "methods": { - "delete": { - "id": "sql.databases.delete", - "path": "projects/{project}/instances/{instance}/databases/{database}", - "httpMethod": "DELETE", - "description": "Deletes a database from a Cloud SQL instance.", - "parameters": { - "database": { - "type": "string", - "description": "Name of the database to be deleted in the instance.", - "required": true, - "location": "path" - }, - "instance": { - "type": "string", - "description": "Database instance ID. This does not include the project ID.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID of the project that contains the instance.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "instance", - "database" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/sqlservice.admin" - ] - }, - "get": { - "id": "sql.databases.get", - "path": "projects/{project}/instances/{instance}/databases/{database}", - "httpMethod": "GET", - "description": "Retrieves a resource containing information about a database inside a Cloud SQL instance.", - "parameters": { - "database": { - "type": "string", - "description": "Name of the database in the instance.", - "required": true, - "location": "path" - }, - "instance": { - "type": "string", - "description": "Database instance ID. This does not include the project ID.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID of the project that contains the instance.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "instance", - "database" - ], - "response": { - "$ref": "Database" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/sqlservice.admin" - ] - }, - "insert": { - "id": "sql.databases.insert", - "path": "projects/{project}/instances/{instance}/databases", - "httpMethod": "POST", - "description": "Inserts a resource containing information about a database inside a Cloud SQL instance.", - "parameters": { - "instance": { - "type": "string", - "description": "Database instance ID. This does not include the project ID.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID of the project that contains the instance.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "instance" - ], - "request": { - "$ref": "Database" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/sqlservice.admin" - ] - }, - "list": { - "id": "sql.databases.list", - "path": "projects/{project}/instances/{instance}/databases", - "httpMethod": "GET", - "description": "Lists databases in the specified Cloud SQL instance.", - "parameters": { - "instance": { - "type": "string", - "description": "Cloud SQL instance ID. This does not include the project ID.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID of the project for which to list Cloud SQL instances.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "instance" - ], - "response": { - "$ref": "DatabasesListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/sqlservice.admin" - ] - }, - "patch": { - "id": "sql.databases.patch", - "path": "projects/{project}/instances/{instance}/databases/{database}", - "httpMethod": "PATCH", - "description": "Updates a resource containing information about a database inside a Cloud SQL instance. This method supports patch semantics.", - "parameters": { - "database": { - "type": "string", - "description": "Name of the database to be updated in the instance.", - "required": true, - "location": "path" - }, - "instance": { - "type": "string", - "description": "Database instance ID. This does not include the project ID.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID of the project that contains the instance.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "instance", - "database" - ], - "request": { - "$ref": "Database" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/sqlservice.admin" - ] - }, - "update": { - "id": "sql.databases.update", - "path": "projects/{project}/instances/{instance}/databases/{database}", - "httpMethod": "PUT", - "description": "Updates a resource containing information about a database inside a Cloud SQL instance.", - "parameters": { - "database": { - "type": "string", - "description": "Name of the database to be updated in the instance.", - "required": true, - "location": "path" - }, - "instance": { - "type": "string", - "description": "Database instance ID. This does not include the project ID.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID of the project that contains the instance.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "instance", - "database" - ], - "request": { - "$ref": "Database" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/sqlservice.admin" - ] - } - } - }, - "flags": { - "methods": { - "list": { - "id": "sql.flags.list", - "path": "flags", - "httpMethod": "GET", - "description": "List all available database flags for Google Cloud SQL instances.", - "parameters": { - "databaseVersion": { - "type": "string", - "description": "Database version for flag retrieval. Flags are specific to the database version.", - "location": "query" - } - }, - "response": { - "$ref": "FlagsListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/sqlservice.admin" - ] - } - } - }, - "instances": { - "methods": { - "clone": { - "id": "sql.instances.clone", - "path": "projects/{project}/instances/{instance}/clone", - "httpMethod": "POST", - "description": "Creates a Cloud SQL instance as a clone of the source instance. The API is not ready for Second Generation instances yet.", - "parameters": { - "instance": { - "type": "string", - "description": "The ID of the Cloud SQL instance to be cloned (source). This does not include the project ID.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID of the source as well as the clone Cloud SQL instance.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "instance" - ], - "request": { - "$ref": "InstancesCloneRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/sqlservice.admin" - ] - }, - "delete": { - "id": "sql.instances.delete", - "path": "projects/{project}/instances/{instance}", - "httpMethod": "DELETE", - "description": "Deletes a Cloud SQL instance.", - "parameters": { - "instance": { - "type": "string", - "description": "Cloud SQL instance ID. This does not include the project ID.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID of the project that contains the instance to be deleted.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "instance" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/sqlservice.admin" - ] - }, - "demoteMaster": { - "id": "sql.instances.demoteMaster", - "path": "projects/{project}/instances/{instance}/demoteMaster", - "httpMethod": "POST", - "description": "Demotes the standalone instance to be a read replica Cloud SQL instance of an on-premises master.", - "parameters": { - "instance": { - "type": "string", - "description": "Cloud SQL instance name.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "ID of the project that contains the instance.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "instance" - ], - "request": { - "$ref": "InstancesDemoteMasterRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/sqlservice.admin" - ] - }, - "export": { - "id": "sql.instances.export", - "path": "projects/{project}/instances/{instance}/export", - "httpMethod": "POST", - "description": "Exports data from a Cloud SQL instance to a Google Cloud Storage bucket as a MySQL dump file.", - "parameters": { - "instance": { - "type": "string", - "description": "Cloud SQL instance ID. This does not include the project ID.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID of the project that contains the instance to be exported.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "instance" - ], - "request": { - "$ref": "InstancesExportRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "failover": { - "id": "sql.instances.failover", - "path": "projects/{project}/instances/{instance}/failover", - "httpMethod": "POST", - "description": "Failover the instance to its failover replica instance.", - "parameters": { - "instance": { - "type": "string", - "description": "Cloud SQL instance ID. This does not include the project ID.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "ID of the project that contains the read replica.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "instance" - ], - "request": { - "$ref": "InstancesFailoverRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/sqlservice.admin" - ] - }, - "get": { - "id": "sql.instances.get", - "path": "projects/{project}/instances/{instance}", - "httpMethod": "GET", - "description": "Retrieves a resource containing information about a Cloud SQL instance.", - "parameters": { - "instance": { - "type": "string", - "description": "Database instance ID. This does not include the project ID.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID of the project that contains the instance.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "instance" - ], - "response": { - "$ref": "DatabaseInstance" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/sqlservice.admin" - ] - }, - "import": { - "id": "sql.instances.import", - "path": "projects/{project}/instances/{instance}/import", - "httpMethod": "POST", - "description": "Imports data into a Cloud SQL instance from a MySQL dump file in Google Cloud Storage.", - "parameters": { - "instance": { - "type": "string", - "description": "Cloud SQL instance ID. This does not include the project ID.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID of the project that contains the instance.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "instance" - ], - "request": { - "$ref": "InstancesImportRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "insert": { - "id": "sql.instances.insert", - "path": "projects/{project}/instances", - "httpMethod": "POST", - "description": "Creates a new Cloud SQL instance.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID of the project to which the newly created Cloud SQL instances should belong.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "request": { - "$ref": "DatabaseInstance" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/sqlservice.admin" - ] - }, - "list": { - "id": "sql.instances.list", - "path": "projects/{project}/instances", - "httpMethod": "GET", - "description": "Lists instances under a given project in the alphabetical order of the instance name.", - "parameters": { - "filter": { - "type": "string", - "description": "An expression for filtering the results of the request, such as by name or label.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maximum number of results to return per response.", - "format": "uint32", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "A previously-returned page token representing part of the larger set of results to view.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID of the project for which to list Cloud SQL instances.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "InstancesListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/sqlservice.admin" - ] - }, - "patch": { - "id": "sql.instances.patch", - "path": "projects/{project}/instances/{instance}", - "httpMethod": "PATCH", - "description": "Updates settings of a Cloud SQL instance. Caution: This is not a partial update, so you must include values for all the settings that you want to retain. For partial updates, use patch.. This method supports patch semantics.", - "parameters": { - "instance": { - "type": "string", - "description": "Cloud SQL instance ID. This does not include the project ID.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID of the project that contains the instance.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "instance" - ], - "request": { - "$ref": "DatabaseInstance" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/sqlservice.admin" - ] - }, - "promoteReplica": { - "id": "sql.instances.promoteReplica", - "path": "projects/{project}/instances/{instance}/promoteReplica", - "httpMethod": "POST", - "description": "Promotes the read replica instance to be a stand-alone Cloud SQL instance.", - "parameters": { - "instance": { - "type": "string", - "description": "Cloud SQL read replica instance name.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "ID of the project that contains the read replica.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "instance" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/sqlservice.admin" - ] - }, - "resetSslConfig": { - "id": "sql.instances.resetSslConfig", - "path": "projects/{project}/instances/{instance}/resetSslConfig", - "httpMethod": "POST", - "description": "Deletes all client certificates and generates a new server SSL certificate for the instance. The changes will not take effect until the instance is restarted. Existing instances without a server certificate will need to call this once to set a server certificate.", - "parameters": { - "instance": { - "type": "string", - "description": "Cloud SQL instance ID. This does not include the project ID.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID of the project that contains the instance.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "instance" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/sqlservice.admin" - ] - }, - "restart": { - "id": "sql.instances.restart", - "path": "projects/{project}/instances/{instance}/restart", - "httpMethod": "POST", - "description": "Restarts a Cloud SQL instance.", - "parameters": { - "instance": { - "type": "string", - "description": "Cloud SQL instance ID. This does not include the project ID.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID of the project that contains the instance to be restarted.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "instance" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/sqlservice.admin" - ] - }, - "restoreBackup": { - "id": "sql.instances.restoreBackup", - "path": "projects/{project}/instances/{instance}/restoreBackup", - "httpMethod": "POST", - "description": "Restores a backup of a Cloud SQL instance.", - "parameters": { - "instance": { - "type": "string", - "description": "Cloud SQL instance ID. This does not include the project ID.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID of the project that contains the instance.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "instance" - ], - "request": { - "$ref": "InstancesRestoreBackupRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/sqlservice.admin" - ] - }, - "startReplica": { - "id": "sql.instances.startReplica", - "path": "projects/{project}/instances/{instance}/startReplica", - "httpMethod": "POST", - "description": "Starts the replication in the read replica instance.", - "parameters": { - "instance": { - "type": "string", - "description": "Cloud SQL read replica instance name.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "ID of the project that contains the read replica.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "instance" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/sqlservice.admin" - ] - }, - "stopReplica": { - "id": "sql.instances.stopReplica", - "path": "projects/{project}/instances/{instance}/stopReplica", - "httpMethod": "POST", - "description": "Stops the replication in the read replica instance.", - "parameters": { - "instance": { - "type": "string", - "description": "Cloud SQL read replica instance name.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "ID of the project that contains the read replica.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "instance" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/sqlservice.admin" - ] - }, - "truncateLog": { - "id": "sql.instances.truncateLog", - "path": "projects/{project}/instances/{instance}/truncateLog", - "httpMethod": "POST", - "description": "Truncate MySQL general and slow query log tables", - "parameters": { - "instance": { - "type": "string", - "description": "Cloud SQL instance ID. This does not include the project ID.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID of the Cloud SQL project.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "instance" - ], - "request": { - "$ref": "InstancesTruncateLogRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/sqlservice.admin" - ] - }, - "update": { - "id": "sql.instances.update", - "path": "projects/{project}/instances/{instance}", - "httpMethod": "PUT", - "description": "Updates settings of a Cloud SQL instance. Caution: This is not a partial update, so you must include values for all the settings that you want to retain. For partial updates, use patch.", - "parameters": { - "instance": { - "type": "string", - "description": "Cloud SQL instance ID. This does not include the project ID.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID of the project that contains the instance.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "instance" - ], - "etagRequired": true, - "request": { - "$ref": "DatabaseInstance" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/sqlservice.admin" - ] - } - } - }, - "operations": { - "methods": { - "get": { - "id": "sql.operations.get", - "path": "projects/{project}/operations/{operation}", - "httpMethod": "GET", - "description": "Retrieves an instance operation that has been performed on an instance.", - "parameters": { - "operation": { - "type": "string", - "description": "Instance operation ID.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID of the project that contains the instance.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "operation" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/sqlservice.admin" - ] - }, - "list": { - "id": "sql.operations.list", - "path": "projects/{project}/operations", - "httpMethod": "GET", - "description": "Lists all instance operations that have been performed on the given Cloud SQL instance in the reverse chronological order of the start time.", - "parameters": { - "instance": { - "type": "string", - "description": "Cloud SQL instance ID. This does not include the project ID.", - "required": true, - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "Maximum number of operations per response.", - "format": "uint32", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "A previously-returned page token representing part of the larger set of results to view.", - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID of the project that contains the instance.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "instance" - ], - "response": { - "$ref": "OperationsListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/sqlservice.admin" - ] - } - } - }, - "sslCerts": { - "methods": { - "createEphemeral": { - "id": "sql.sslCerts.createEphemeral", - "path": "projects/{project}/instances/{instance}/createEphemeral", - "httpMethod": "POST", - "description": "Generates a short-lived X509 certificate containing the provided public key and signed by a private key specific to the target instance. Users may use the certificate to authenticate as themselves when connecting to the database.", - "parameters": { - "instance": { - "type": "string", - "description": "Cloud SQL instance ID. This does not include the project ID.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID of the Cloud SQL project.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "instance" - ], - "request": { - "$ref": "SslCertsCreateEphemeralRequest" - }, - "response": { - "$ref": "SslCert" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/sqlservice.admin" - ] - }, - "delete": { - "id": "sql.sslCerts.delete", - "path": "projects/{project}/instances/{instance}/sslCerts/{sha1Fingerprint}", - "httpMethod": "DELETE", - "description": "Deletes the SSL certificate. The change will not take effect until the instance is restarted.", - "parameters": { - "instance": { - "type": "string", - "description": "Cloud SQL instance ID. This does not include the project ID.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID of the project that contains the instance to be deleted.", - "required": true, - "location": "path" - }, - "sha1Fingerprint": { - "type": "string", - "description": "Sha1 FingerPrint.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "instance", - "sha1Fingerprint" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/sqlservice.admin" - ] - }, - "get": { - "id": "sql.sslCerts.get", - "path": "projects/{project}/instances/{instance}/sslCerts/{sha1Fingerprint}", - "httpMethod": "GET", - "description": "Retrieves a particular SSL certificate. Does not include the private key (required for usage). The private key must be saved from the response to initial creation.", - "parameters": { - "instance": { - "type": "string", - "description": "Cloud SQL instance ID. This does not include the project ID.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID of the project that contains the instance.", - "required": true, - "location": "path" - }, - "sha1Fingerprint": { - "type": "string", - "description": "Sha1 FingerPrint.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "instance", - "sha1Fingerprint" - ], - "response": { - "$ref": "SslCert" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/sqlservice.admin" - ] - }, - "insert": { - "id": "sql.sslCerts.insert", - "path": "projects/{project}/instances/{instance}/sslCerts", - "httpMethod": "POST", - "description": "Creates an SSL certificate and returns it along with the private key and server certificate authority. The new certificate will not be usable until the instance is restarted.", - "parameters": { - "instance": { - "type": "string", - "description": "Cloud SQL instance ID. This does not include the project ID.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID of the project to which the newly created Cloud SQL instances should belong.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "instance" - ], - "request": { - "$ref": "SslCertsInsertRequest" - }, - "response": { - "$ref": "SslCertsInsertResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/sqlservice.admin" - ] - }, - "list": { - "id": "sql.sslCerts.list", - "path": "projects/{project}/instances/{instance}/sslCerts", - "httpMethod": "GET", - "description": "Lists all of the current SSL certificates for the instance.", - "parameters": { - "instance": { - "type": "string", - "description": "Cloud SQL instance ID. This does not include the project ID.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID of the project for which to list Cloud SQL instances.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "instance" - ], - "response": { - "$ref": "SslCertsListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/sqlservice.admin" - ] - } - } - }, - "tiers": { - "methods": { - "list": { - "id": "sql.tiers.list", - "path": "projects/{project}/tiers", - "httpMethod": "GET", - "description": "Lists all available service tiers for Google Cloud SQL, for example D1, D2. For related information, see Pricing.", - "parameters": { - "project": { - "type": "string", - "description": "Project ID of the project for which to list tiers.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "TiersListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/sqlservice.admin" - ] - } - } - }, - "users": { - "methods": { - "delete": { - "id": "sql.users.delete", - "path": "projects/{project}/instances/{instance}/users", - "httpMethod": "DELETE", - "description": "Deletes a user from a Cloud SQL instance.", - "parameters": { - "host": { - "type": "string", - "description": "Host of the user in the instance.", - "required": true, - "location": "query" - }, - "instance": { - "type": "string", - "description": "Database instance ID. This does not include the project ID.", - "required": true, - "location": "path" - }, - "name": { - "type": "string", - "description": "Name of the user in the instance.", - "required": true, - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID of the project that contains the instance.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "instance", - "host", - "name" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/sqlservice.admin" - ] - }, - "insert": { - "id": "sql.users.insert", - "path": "projects/{project}/instances/{instance}/users", - "httpMethod": "POST", - "description": "Creates a new user in a Cloud SQL instance.", - "parameters": { - "instance": { - "type": "string", - "description": "Database instance ID. This does not include the project ID.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID of the project that contains the instance.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "instance" - ], - "request": { - "$ref": "User" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/sqlservice.admin" - ] - }, - "list": { - "id": "sql.users.list", - "path": "projects/{project}/instances/{instance}/users", - "httpMethod": "GET", - "description": "Lists users in the specified Cloud SQL instance.", - "parameters": { - "instance": { - "type": "string", - "description": "Database instance ID. This does not include the project ID.", - "required": true, - "location": "path" - }, - "project": { - "type": "string", - "description": "Project ID of the project that contains the instance.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "instance" - ], - "response": { - "$ref": "UsersListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/sqlservice.admin" - ] - }, - "update": { - "id": "sql.users.update", - "path": "projects/{project}/instances/{instance}/users", - "httpMethod": "PUT", - "description": "Updates an existing user in a Cloud SQL instance.", - "parameters": { - "host": { - "type": "string", - "description": "Host of the user in the instance.", - "required": true, - "location": "query" - }, - "instance": { - "type": "string", - "description": "Database instance ID. This does not include the project ID.", - "required": true, - "location": "path" - }, - "name": { - "type": "string", - "description": "Name of the user in the instance.", - "required": true, - "location": "query" - }, - "project": { - "type": "string", - "description": "Project ID of the project that contains the instance.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "instance", - "host", - "name" - ], - "request": { - "$ref": "User" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/sqlservice.admin" - ] - } - } - } - } -} + "servicePath": "sql/v1beta4/", + "title": "Cloud SQL Administration API", + "version": "v1beta4" +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/sqladmin/v1beta4/sqladmin-gen.go b/vendor/google.golang.org/api/sqladmin/v1beta4/sqladmin-gen.go index 146818746..38abb7a7a 100644 --- a/vendor/google.golang.org/api/sqladmin/v1beta4/sqladmin-gen.go +++ b/vendor/google.golang.org/api/sqladmin/v1beta4/sqladmin-gen.go @@ -222,6 +222,9 @@ type BackupConfiguration struct { // Kind: This is always sql#backupConfiguration. Kind string `json:"kind,omitempty"` + // ReplicationLogArchivingEnabled: Reserved for future use. + ReplicationLogArchivingEnabled bool `json:"replicationLogArchivingEnabled,omitempty"` + // StartTime: Start time for the daily backup configuration in UTC // timezone in the 24 hour format - HH:MM. StartTime string `json:"startTime,omitempty"` @@ -414,6 +417,9 @@ type CloneContext struct { // Kind: This is always sql#cloneContext. Kind string `json:"kind,omitempty"` + // PitrTimestampMs: Reserved for future use. + PitrTimestampMs int64 `json:"pitrTimestampMs,omitempty,string"` + // ForceSendFields is a list of field names (e.g. "BinLogCoordinates") // to unconditionally include in API requests. By default, fields with // empty values are omitted from API requests. However, any non-pointer, @@ -567,9 +573,10 @@ type DatabaseInstance struct { // property is applicable only to Second Generation instances. FailoverReplica *DatabaseInstanceFailoverReplica `json:"failoverReplica,omitempty"` - // GceZone: The GCE zone that the instance is serving from. In case when - // the instance is failed over to standby zone, this value may be - // different with what user specified in the settings. + // GceZone: The Compute Engine zone that the instance is currently + // serving from. This value could be different from the zone that was + // specified when the instance was created if the instance has failed + // over to its secondary zone. GceZone string `json:"gceZone,omitempty"` // InstanceType: The instance type. This can be one of the @@ -806,6 +813,16 @@ type DemoteMasterContext struct { // replicating from the on-premises master. ReplicaConfiguration *DemoteMasterConfiguration `json:"replicaConfiguration,omitempty"` + // VerifyGtidConsistency: Verify GTID consistency for demote operation. + // Default value: True. Second Generation instances only. Setting this + // flag to false enables you to bypass GTID consistency check between + // on-premises master and Cloud SQL instance during the demotion + // operation but also exposes you to the risk of future replication + // failures. Change the value only if you know the reason for the GTID + // divergence and are confident that doing so will not cause any + // replication issues. + VerifyGtidConsistency bool `json:"verifyGtidConsistency,omitempty"` + // ForceSendFields is a list of field names (e.g. "Kind") to // unconditionally include in API requests. By default, fields with // empty values are omitted from API requests. However, any non-pointer, @@ -903,8 +920,9 @@ type ExportContext struct { // Uri: The path to the file in Google Cloud Storage where the export // will be stored. The URI is in the form gs://bucketName/fileName. If - // the file already exists, the operation fails. If fileType is SQL and - // the filename ends with .gz, the contents are compressed. + // the file already exists, the requests succeeds, but the operation + // fails. If fileType is SQL and the filename ends with .gz, the + // contents are compressed. Uri string `json:"uri,omitempty"` // ForceSendFields is a list of field names (e.g. "CsvExportOptions") to @@ -1580,6 +1598,9 @@ type MaintenanceWindow struct { // Kind: This is always sql#maintenanceWindow. Kind string `json:"kind,omitempty"` + // UpdateTrack: Maintenance timing setting: canary (Earlier) or stable + // (Later). + // Learn more. UpdateTrack string `json:"updateTrack,omitempty"` // ForceSendFields is a list of field names (e.g. "Day") to @@ -1985,16 +2006,16 @@ func (s *RestoreBackupContext) MarshalJSON() ([]byte, error) { type Settings struct { // ActivationPolicy: The activation policy specifies when the instance // is activated; it is applicable only when the instance state is - // RUNNABLE. The activation policy cannot be updated together with other - // settings for Second Generation instances. Valid values: - // ALWAYS: The instance is on; it is not deactivated by - // inactivity. + // RUNNABLE. Valid values: + // ALWAYS: The instance is on, and remains so even in the absence of + // connection requests. // NEVER: The instance is off; it is not activated, even if a connection // request arrives. - // ON_DEMAND: The instance responds to incoming requests, and turns - // itself off when not in use. Instances with PER_USE pricing turn off - // after 15 minutes of inactivity. Instances with PER_PACKAGE pricing - // turn off after 12 hours of inactivity. + // ON_DEMAND: First Generation instances only. The instance responds to + // incoming requests, and turns itself off when not in use. Instances + // with PER_USE pricing turn off after 15 minutes of inactivity. + // Instances with PER_PACKAGE pricing turn off after 12 hours of + // inactivity. ActivationPolicy string `json:"activationPolicy,omitempty"` // AuthorizedGaeApplications: The App Engine app IDs that can access @@ -2002,7 +2023,14 @@ type Settings struct { // instances. AuthorizedGaeApplications []string `json:"authorizedGaeApplications,omitempty"` - // AvailabilityType: Reserved for future use. + // AvailabilityType: Availability type (PostgreSQL instances only). + // Potential values: + // ZONAL: The instance serves data from only one zone. Outages in that + // zone affect data accessibility. + // REGIONAL: The instance can serve data from more than one zone in a + // region (it is highly available). + // For more information, see Overview of the High Availability + // Configuration. AvailabilityType string `json:"availabilityType,omitempty"` // BackupConfiguration: The daily backup configuration for the instance. @@ -2041,8 +2069,8 @@ type Settings struct { // LocationPreference: The location preference settings. This allows the // instance to be located as near as possible to either an App Engine - // app or GCE zone for better performance. App Engine co-location is - // only applicable to First Generation instances. + // app or Compute Engine zone for better performance. App Engine + // co-location is only applicable to First Generation instances. LocationPreference *LocationPreference `json:"locationPreference,omitempty"` // MaintenanceWindow: The maintenance window for this instance. This @@ -2261,9 +2289,9 @@ func (s *SslCertsInsertRequest) MarshalJSON() ([]byte, error) { // SslCertsInsertResponse: SslCert insert response. type SslCertsInsertResponse struct { - // ClientCert: The new client certificate and private key. The new - // certificate will not work until the instance is restarted for First - // Generation instances. + // ClientCert: The new client certificate and private key. For First + // Generation instances, the new certificate does not take effect until + // the instance is restarted. ClientCert *SslCertDetail `json:"clientCert,omitempty"` // Kind: This is always sql#sslCertsInsert. @@ -4522,8 +4550,7 @@ type InstancesDemoteMasterCall struct { header_ http.Header } -// DemoteMaster: Demotes the standalone instance to be a read replica -// Cloud SQL instance of an on-premises master. +// DemoteMaster: Reserved for future use. func (r *InstancesService) DemoteMaster(project string, instance string, instancesdemotemasterrequest *InstancesDemoteMasterRequest) *InstancesDemoteMasterCall { c := &InstancesDemoteMasterCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.project = project @@ -4619,7 +4646,7 @@ func (c *InstancesDemoteMasterCall) Do(opts ...googleapi.CallOption) (*Operation } return ret, nil // { - // "description": "Demotes the standalone instance to be a read replica Cloud SQL instance of an on-premises master.", + // "description": "Reserved for future use.", // "httpMethod": "POST", // "id": "sql.instances.demoteMaster", // "parameterOrder": [ diff --git a/vendor/google.golang.org/api/storage/v1/storage-api.json b/vendor/google.golang.org/api/storage/v1/storage-api.json index 595989a7d..2d23f028b 100644 --- a/vendor/google.golang.org/api/storage/v1/storage-api.json +++ b/vendor/google.golang.org/api/storage/v1/storage-api.json @@ -1,3784 +1,3784 @@ { - "kind": "discovery#restDescription", - "etag": "\"YWOzh2SDasdU84ArJnpYek-OMdg/aE5XnXblJMQy68d2aZIGrlTQ05U\"", - "discoveryVersion": "v1", - "id": "storage:v1", - "name": "storage", - "version": "v1", - "revision": "20171212", - "title": "Cloud Storage JSON API", - "description": "Stores and retrieves potentially large, immutable data objects.", - "ownerDomain": "google.com", - "ownerName": "Google", - "icons": { - "x16": "https://www.google.com/images/icons/product/cloud_storage-16.png", - "x32": "https://www.google.com/images/icons/product/cloud_storage-32.png" - }, - "documentationLink": "https://developers.google.com/storage/docs/json_api/", - "labels": [ - "labs" - ], - "protocol": "rest", - "baseUrl": "https://www.googleapis.com/storage/v1/", - "basePath": "/storage/v1/", - "rootUrl": "https://www.googleapis.com/", - "servicePath": "storage/v1/", - "batchPath": "batch/storage/v1", - "parameters": { - "alt": { - "type": "string", - "description": "Data format for the response.", - "default": "json", - "enum": [ - "json" - ], - "enumDescriptions": [ - "Responses with Content-Type of application/json" - ], - "location": "query" - }, - "fields": { - "type": "string", - "description": "Selector specifying which fields to include in a partial response.", - "location": "query" - }, - "key": { - "type": "string", - "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" - }, - "oauth_token": { - "type": "string", - "description": "OAuth 2.0 token for the current user.", - "location": "query" - }, - "prettyPrint": { - "type": "boolean", - "description": "Returns response with indentations and line breaks.", - "default": "true", - "location": "query" - }, - "quotaUser": { - "type": "string", - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", - "location": "query" - }, - "userIp": { - "type": "string", - "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", - "location": "query" - } - }, - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/cloud-platform": { - "description": "View and manage your data across Google Cloud Platform services" - }, - "https://www.googleapis.com/auth/cloud-platform.read-only": { - "description": "View your data across Google Cloud Platform services" - }, - "https://www.googleapis.com/auth/devstorage.full_control": { - "description": "Manage your data and permissions in Google Cloud Storage" - }, - "https://www.googleapis.com/auth/devstorage.read_only": { - "description": "View your data in Google Cloud Storage" - }, - "https://www.googleapis.com/auth/devstorage.read_write": { - "description": "Manage your data in Google Cloud Storage" - } - } - } - }, - "schemas": { - "Bucket": { - "id": "Bucket", - "type": "object", - "description": "A bucket.", - "properties": { - "acl": { - "type": "array", - "description": "Access controls on the bucket.", - "items": { - "$ref": "BucketAccessControl" - }, - "annotations": { - "required": [ - "storage.buckets.update" - ] - } - }, - "billing": { - "type": "object", - "description": "The bucket's billing configuration.", - "properties": { - "requesterPays": { - "type": "boolean", - "description": "When set to true, Requester Pays is enabled for this bucket." - } - } - }, - "cors": { - "type": "array", - "description": "The bucket's Cross-Origin Resource Sharing (CORS) configuration.", - "items": { - "type": "object", - "properties": { - "maxAgeSeconds": { - "type": "integer", - "description": "The value, in seconds, to return in the Access-Control-Max-Age header used in preflight responses.", - "format": "int32" - }, - "method": { - "type": "array", - "description": "The list of HTTP methods on which to include CORS response headers, (GET, OPTIONS, POST, etc) Note: \"*\" is permitted in the list of methods, and means \"any method\".", - "items": { - "type": "string" - } - }, - "origin": { - "type": "array", - "description": "The list of Origins eligible to receive CORS response headers. Note: \"*\" is permitted in the list of origins, and means \"any Origin\".", - "items": { - "type": "string" - } - }, - "responseHeader": { - "type": "array", - "description": "The list of HTTP headers other than the simple response headers to give permission for the user-agent to share across domains.", - "items": { - "type": "string" - } - } - } - } - }, - "defaultEventBasedHold": { - "type": "boolean", - "description": "Defines the default value for Event-Based hold on newly created objects in this bucket. Event-Based hold is a way to retain objects indefinitely until an event occurs, signified by the hold's release. After being released, such objects will be subject to bucket-level retention (if any). One sample use case of this flag is for banks to hold loan documents for at least 3 years after loan is paid in full. Here bucket-level retention is 3 years and the event is loan being paid in full. In this example these objects will be held intact for any number of years until the event has occurred (hold is released) and then 3 more years after that. Objects under Event-Based hold cannot be deleted, overwritten or archived until the hold is removed." - }, - "defaultObjectAcl": { - "type": "array", - "description": "Default access controls to apply to new objects when no ACL is provided.", - "items": { - "$ref": "ObjectAccessControl" - } - }, - "encryption": { - "type": "object", - "description": "Encryption configuration used by default for newly inserted objects, when no encryption config is specified.", - "properties": { - "defaultKmsKeyName": { - "type": "string", - "description": "A Cloud KMS key that will be used to encrypt objects inserted into this bucket, if no encryption method is specified. Limited availability; usable only by enabled projects." - } - } - }, - "etag": { - "type": "string", - "description": "HTTP 1.1 Entity tag for the bucket." - }, - "id": { - "type": "string", - "description": "The ID of the bucket. For buckets, the id and name properties are the same." - }, - "kind": { - "type": "string", - "description": "The kind of item this is. For buckets, this is always storage#bucket.", - "default": "storage#bucket" - }, - "labels": { - "type": "object", - "description": "User-provided labels, in key/value pairs.", - "additionalProperties": { - "type": "string", - "description": "An individual label entry." - } - }, - "lifecycle": { - "type": "object", - "description": "The bucket's lifecycle configuration. See lifecycle management for more information.", - "properties": { - "rule": { - "type": "array", - "description": "A lifecycle management rule, which is made of an action to take and the condition(s) under which the action will be taken.", - "items": { - "type": "object", - "properties": { - "action": { - "type": "object", - "description": "The action to take.", - "properties": { - "storageClass": { - "type": "string", - "description": "Target storage class. Required iff the type of the action is SetStorageClass." - }, - "type": { - "type": "string", - "description": "Type of the action. Currently, only Delete and SetStorageClass are supported." - } - } - }, - "condition": { - "type": "object", - "description": "The condition(s) under which the action will be taken.", - "properties": { - "age": { - "type": "integer", - "description": "Age of an object (in days). This condition is satisfied when an object reaches the specified age.", - "format": "int32" - }, - "createdBefore": { - "type": "string", - "description": "A date in RFC 3339 format with only the date part (for instance, \"2013-01-15\"). This condition is satisfied when an object is created before midnight of the specified date in UTC.", - "format": "date" - }, - "isLive": { - "type": "boolean", - "description": "Relevant only for versioned objects. If the value is true, this condition matches live objects; if the value is false, it matches archived objects." - }, - "matchesStorageClass": { - "type": "array", - "description": "Objects having any of the storage classes specified by this condition will be matched. Values include MULTI_REGIONAL, REGIONAL, NEARLINE, COLDLINE, STANDARD, and DURABLE_REDUCED_AVAILABILITY.", - "items": { - "type": "string" - } - }, - "numNewerVersions": { - "type": "integer", - "description": "Relevant only for versioned objects. If the value is N, this condition is satisfied when there are at least N versions (including the live version) newer than this version of the object.", - "format": "int32" - } - } - } - } - } - } - } - }, - "location": { - "type": "string", - "description": "The location of the bucket. Object data for objects in the bucket resides in physical storage within this region. Defaults to US. See the developer's guide for the authoritative list." - }, - "logging": { - "type": "object", - "description": "The bucket's logging configuration, which defines the destination bucket and optional name prefix for the current bucket's logs.", - "properties": { - "logBucket": { - "type": "string", - "description": "The destination bucket where the current bucket's logs should be placed." - }, - "logObjectPrefix": { - "type": "string", - "description": "A prefix for log object names." - } - } - }, - "metageneration": { - "type": "string", - "description": "The metadata generation of this bucket.", - "format": "int64" - }, - "name": { - "type": "string", - "description": "The name of the bucket.", - "annotations": { - "required": [ - "storage.buckets.insert" - ] - } - }, - "owner": { - "type": "object", - "description": "The owner of the bucket. This is always the project team's owner group.", - "properties": { - "entity": { - "type": "string", - "description": "The entity, in the form project-owner-projectId." - }, - "entityId": { - "type": "string", - "description": "The ID for the entity." - } - } - }, - "projectNumber": { - "type": "string", - "description": "The project number of the project the bucket belongs to.", - "format": "uint64" - }, - "retentionPolicy": { - "type": "object", - "description": "Defines the retention policy for a bucket. The Retention policy enforces a minimum retention time for all objects contained in the bucket, based on their creation time. Any attempt to overwrite or delete objects younger than the retention period will result in a PERMISSION_DENIED error. An unlocked retention policy can be modified or removed from the bucket via the UpdateBucketMetadata RPC. A locked retention policy cannot be removed or shortened in duration for the lifetime of the bucket. Attempting to remove or decrease period of a locked retention policy will result in a PERMISSION_DENIED error.", - "properties": { - "effectiveTime": { - "type": "string", - "description": "The time from which policy was enforced and effective. RFC 3339 format.", - "format": "date-time" - }, - "isLocked": { - "type": "boolean", - "description": "Once locked, an object retention policy cannot be modified." - }, - "retentionPeriod": { - "type": "string", - "description": "Specifies the duration that objects need to be retained. Retention duration must be greater than zero and less than 100 years. Note that enforcement of retention periods less than a day is not guaranteed. Such periods should only be used for testing purposes.", - "format": "int64" - } - } - }, - "selfLink": { - "type": "string", - "description": "The URI of this bucket." - }, - "storageClass": { - "type": "string", - "description": "The bucket's default storage class, used whenever no storageClass is specified for a newly-created object. This defines how objects in the bucket are stored and determines the SLA and the cost of storage. Values include MULTI_REGIONAL, REGIONAL, STANDARD, NEARLINE, COLDLINE, and DURABLE_REDUCED_AVAILABILITY. If this value is not specified when the bucket is created, it will default to STANDARD. For more information, see storage classes." - }, - "timeCreated": { - "type": "string", - "description": "The creation time of the bucket in RFC 3339 format.", - "format": "date-time" - }, - "updated": { - "type": "string", - "description": "The modification time of the bucket in RFC 3339 format.", - "format": "date-time" - }, - "versioning": { - "type": "object", - "description": "The bucket's versioning configuration.", - "properties": { - "enabled": { - "type": "boolean", - "description": "While set to true, versioning is fully enabled for this bucket." - } - } - }, - "website": { - "type": "object", - "description": "The bucket's website configuration, controlling how the service behaves when accessing bucket contents as a web site. See the Static Website Examples for more information.", - "properties": { - "mainPageSuffix": { - "type": "string", - "description": "If the requested object path is missing, the service will ensure the path has a trailing '/', append this suffix, and attempt to retrieve the resulting object. This allows the creation of index.html objects to represent directory pages." - }, - "notFoundPage": { - "type": "string", - "description": "If the requested object path is missing, and any mainPageSuffix object is missing, if applicable, the service will return the named object from this bucket as the content for a 404 Not Found result." - } - } - } - } - }, - "BucketAccessControl": { - "id": "BucketAccessControl", - "type": "object", - "description": "An access-control entry.", - "properties": { - "bucket": { - "type": "string", - "description": "The name of the bucket." - }, - "domain": { - "type": "string", - "description": "The domain associated with the entity, if any." - }, - "email": { - "type": "string", - "description": "The email address associated with the entity, if any." - }, - "entity": { - "type": "string", - "description": "The entity holding the permission, in one of the following forms: \n- user-userId \n- user-email \n- group-groupId \n- group-email \n- domain-domain \n- project-team-projectId \n- allUsers \n- allAuthenticatedUsers Examples: \n- The user liz@example.com would be user-liz@example.com. \n- The group example@googlegroups.com would be group-example@googlegroups.com. \n- To refer to all members of the Google Apps for Business domain example.com, the entity would be domain-example.com.", - "annotations": { - "required": [ - "storage.bucketAccessControls.insert" - ] - } - }, - "entityId": { - "type": "string", - "description": "The ID for the entity, if any." - }, - "etag": { - "type": "string", - "description": "HTTP 1.1 Entity tag for the access-control entry." - }, - "id": { - "type": "string", - "description": "The ID of the access-control entry." - }, - "kind": { - "type": "string", - "description": "The kind of item this is. For bucket access control entries, this is always storage#bucketAccessControl.", - "default": "storage#bucketAccessControl" - }, - "projectTeam": { - "type": "object", - "description": "The project team associated with the entity, if any.", - "properties": { - "projectNumber": { - "type": "string", - "description": "The project number." - }, - "team": { - "type": "string", - "description": "The team." - } - } - }, - "role": { - "type": "string", - "description": "The access permission for the entity.", - "annotations": { - "required": [ - "storage.bucketAccessControls.insert" - ] - } - }, - "selfLink": { - "type": "string", - "description": "The link to this access-control entry." - } - } - }, - "BucketAccessControls": { - "id": "BucketAccessControls", - "type": "object", - "description": "An access-control list.", - "properties": { - "items": { - "type": "array", - "description": "The list of items.", - "items": { - "$ref": "BucketAccessControl" - } - }, - "kind": { - "type": "string", - "description": "The kind of item this is. For lists of bucket access control entries, this is always storage#bucketAccessControls.", - "default": "storage#bucketAccessControls" - } - } - }, - "Buckets": { - "id": "Buckets", - "type": "object", - "description": "A list of buckets.", - "properties": { - "items": { - "type": "array", - "description": "The list of items.", - "items": { - "$ref": "Bucket" - } - }, - "kind": { - "type": "string", - "description": "The kind of item this is. For lists of buckets, this is always storage#buckets.", - "default": "storage#buckets" - }, - "nextPageToken": { - "type": "string", - "description": "The continuation token, used to page through large result sets. Provide this value in a subsequent request to return the next page of results." - } - } - }, - "Channel": { - "id": "Channel", - "type": "object", - "description": "An notification channel used to watch for resource changes.", - "properties": { - "address": { - "type": "string", - "description": "The address where notifications are delivered for this channel." - }, - "expiration": { - "type": "string", - "description": "Date and time of notification channel expiration, expressed as a Unix timestamp, in milliseconds. Optional.", - "format": "int64" - }, - "id": { - "type": "string", - "description": "A UUID or similar unique string that identifies this channel." - }, - "kind": { - "type": "string", - "description": "Identifies this as a notification channel used to watch for changes to a resource. Value: the fixed string \"api#channel\".", - "default": "api#channel" - }, - "params": { - "type": "object", - "description": "Additional parameters controlling delivery channel behavior. Optional.", - "additionalProperties": { - "type": "string", - "description": "Declares a new parameter by name." - } - }, - "payload": { - "type": "boolean", - "description": "A Boolean value to indicate whether payload is wanted. Optional." - }, - "resourceId": { - "type": "string", - "description": "An opaque ID that identifies the resource being watched on this channel. Stable across different API versions." - }, - "resourceUri": { - "type": "string", - "description": "A version-specific identifier for the watched resource." - }, - "token": { - "type": "string", - "description": "An arbitrary string delivered to the target address with each notification delivered over this channel. Optional." - }, - "type": { - "type": "string", - "description": "The type of delivery mechanism used for this channel." - } - } - }, - "ComposeRequest": { - "id": "ComposeRequest", - "type": "object", - "description": "A Compose request.", - "properties": { - "destination": { - "$ref": "Object", - "description": "Properties of the resulting object." - }, - "kind": { - "type": "string", - "description": "The kind of item this is.", - "default": "storage#composeRequest" - }, - "sourceObjects": { - "type": "array", - "description": "The list of source objects that will be concatenated into a single object.", - "items": { - "type": "object", - "properties": { - "generation": { - "type": "string", - "description": "The generation of this object to use as the source.", - "format": "int64" - }, - "name": { - "type": "string", - "description": "The source object's name. The source object's bucket is implicitly the destination bucket.", - "annotations": { - "required": [ - "storage.objects.compose" - ] - } - }, - "objectPreconditions": { - "type": "object", - "description": "Conditions that must be met for this operation to execute.", - "properties": { - "ifGenerationMatch": { - "type": "string", - "description": "Only perform the composition if the generation of the source object that would be used matches this value. If this value and a generation are both specified, they must be the same value or the call will fail.", - "format": "int64" - } - } - } - } - }, - "annotations": { - "required": [ - "storage.objects.compose" - ] - } - } - } - }, - "Notification": { - "id": "Notification", - "type": "object", - "description": "A subscription to receive Google PubSub notifications.", - "properties": { - "custom_attributes": { - "type": "object", - "description": "An optional list of additional attributes to attach to each Cloud PubSub message published for this notification subscription.", - "additionalProperties": { - "type": "string" - } - }, - "etag": { - "type": "string", - "description": "HTTP 1.1 Entity tag for this subscription notification." - }, - "event_types": { - "type": "array", - "description": "If present, only send notifications about listed event types. If empty, sent notifications for all event types.", - "items": { - "type": "string" - } - }, - "id": { - "type": "string", - "description": "The ID of the notification." - }, - "kind": { - "type": "string", - "description": "The kind of item this is. For notifications, this is always storage#notification.", - "default": "storage#notification" - }, - "object_name_prefix": { - "type": "string", - "description": "If present, only apply this notification configuration to object names that begin with this prefix." - }, - "payload_format": { - "type": "string", - "description": "The desired content of the Payload.", - "default": "JSON_API_V1", - "annotations": { - "required": [ - "storage.notifications.insert" - ] - } - }, - "selfLink": { - "type": "string", - "description": "The canonical URL of this notification." - }, - "topic": { - "type": "string", - "description": "The Cloud PubSub topic to which this subscription publishes. Formatted as: '//pubsub.googleapis.com/projects/{project-identifier}/topics/{my-topic}'", - "annotations": { - "required": [ - "storage.notifications.insert" - ] - } - } - } - }, - "Notifications": { - "id": "Notifications", - "type": "object", - "description": "A list of notification subscriptions.", - "properties": { - "items": { - "type": "array", - "description": "The list of items.", - "items": { - "$ref": "Notification" - } - }, - "kind": { - "type": "string", - "description": "The kind of item this is. For lists of notifications, this is always storage#notifications.", - "default": "storage#notifications" - } - } - }, - "Object": { - "id": "Object", - "type": "object", - "description": "An object.", - "properties": { - "acl": { - "type": "array", - "description": "Access controls on the object.", - "items": { - "$ref": "ObjectAccessControl" - }, - "annotations": { - "required": [ - "storage.objects.update" - ] - } - }, - "bucket": { - "type": "string", - "description": "The name of the bucket containing this object." - }, - "cacheControl": { - "type": "string", - "description": "Cache-Control directive for the object data. If omitted, and the object is accessible to all anonymous users, the default will be public, max-age=3600." - }, - "componentCount": { - "type": "integer", - "description": "Number of underlying components that make up this object. Components are accumulated by compose operations.", - "format": "int32" - }, - "contentDisposition": { - "type": "string", - "description": "Content-Disposition of the object data." - }, - "contentEncoding": { - "type": "string", - "description": "Content-Encoding of the object data." - }, - "contentLanguage": { - "type": "string", - "description": "Content-Language of the object data." - }, - "contentType": { - "type": "string", - "description": "Content-Type of the object data. If an object is stored without a Content-Type, it is served as application/octet-stream." - }, - "crc32c": { - "type": "string", - "description": "CRC32c checksum, as described in RFC 4960, Appendix B; encoded using base64 in big-endian byte order. For more information about using the CRC32c checksum, see Hashes and ETags: Best Practices." - }, - "customerEncryption": { - "type": "object", - "description": "Metadata of customer-supplied encryption key, if the object is encrypted by such a key.", - "properties": { - "encryptionAlgorithm": { - "type": "string", - "description": "The encryption algorithm." - }, - "keySha256": { - "type": "string", - "description": "SHA256 hash value of the encryption key." - } - } - }, - "etag": { - "type": "string", - "description": "HTTP 1.1 Entity tag for the object." - }, - "eventBasedHold": { - "type": "boolean", - "description": "Defines the Event-Based hold for an object. Event-Based hold is a way to retain objects indefinitely until an event occurs, signified by the hold's release. After being released, such objects will be subject to bucket-level retention (if any). One sample use case of this flag is for banks to hold loan documents for at least 3 years after loan is paid in full. Here bucket-level retention is 3 years and the event is loan being paid in full. In this example these objects will be held intact for any number of years until the event has occurred (hold is released) and then 3 more years after that." - }, - "generation": { - "type": "string", - "description": "The content generation of this object. Used for object versioning.", - "format": "int64" - }, - "id": { - "type": "string", - "description": "The ID of the object, including the bucket name, object name, and generation number." - }, - "kind": { - "type": "string", - "description": "The kind of item this is. For objects, this is always storage#object.", - "default": "storage#object" - }, - "kmsKeyName": { - "type": "string", - "description": "Cloud KMS Key used to encrypt this object, if the object is encrypted by such a key. Limited availability; usable only by enabled projects." - }, - "md5Hash": { - "type": "string", - "description": "MD5 hash of the data; encoded using base64. For more information about using the MD5 hash, see Hashes and ETags: Best Practices." - }, - "mediaLink": { - "type": "string", - "description": "Media download link." - }, - "metadata": { - "type": "object", - "description": "User-provided metadata, in key/value pairs.", - "additionalProperties": { - "type": "string", - "description": "An individual metadata entry." - } - }, - "metageneration": { - "type": "string", - "description": "The version of the metadata for this object at this generation. Used for preconditions and for detecting changes in metadata. A metageneration number is only meaningful in the context of a particular generation of a particular object.", - "format": "int64" - }, - "name": { - "type": "string", - "description": "The name of the object. Required if not specified by URL parameter." - }, - "owner": { - "type": "object", - "description": "The owner of the object. This will always be the uploader of the object.", - "properties": { - "entity": { - "type": "string", - "description": "The entity, in the form user-userId." - }, - "entityId": { - "type": "string", - "description": "The ID for the entity." - } - } - }, - "retentionExpirationTime": { - "type": "string", - "description": "Specifies the earliest time that the object's retention period expires. This value is server-determined and is in RFC 3339 format. Note 1: This field is not provided for objects with an active Event-Based hold, since retention expiration is unknown until the hold is removed. Note 2: This value can be provided even when TemporaryHold is set (so that the user can reason about policy without having to first unset the TemporaryHold).", - "format": "date-time" - }, - "selfLink": { - "type": "string", - "description": "The link to this object." - }, - "size": { - "type": "string", - "description": "Content-Length of the data in bytes.", - "format": "uint64" - }, - "storageClass": { - "type": "string", - "description": "Storage class of the object." - }, - "temporaryHold": { - "type": "boolean", - "description": "Defines the temporary hold for an object. This flag is used to enforce a temporary hold on an object. While it is set to true, the object is protected against deletion and overwrites. A common use case of this flag is regulatory investigations where objects need to be retained while the investigation is ongoing." - }, - "timeCreated": { - "type": "string", - "description": "The creation time of the object in RFC 3339 format.", - "format": "date-time" - }, - "timeDeleted": { - "type": "string", - "description": "The deletion time of the object in RFC 3339 format. Will be returned if and only if this version of the object has been deleted.", - "format": "date-time" - }, - "timeStorageClassUpdated": { - "type": "string", - "description": "The time at which the object's storage class was last changed. When the object is initially created, it will be set to timeCreated.", - "format": "date-time" - }, - "updated": { - "type": "string", - "description": "The modification time of the object metadata in RFC 3339 format.", - "format": "date-time" - } - } - }, - "ObjectAccessControl": { - "id": "ObjectAccessControl", - "type": "object", - "description": "An access-control entry.", - "properties": { - "bucket": { - "type": "string", - "description": "The name of the bucket." - }, - "domain": { - "type": "string", - "description": "The domain associated with the entity, if any." - }, - "email": { - "type": "string", - "description": "The email address associated with the entity, if any." - }, - "entity": { - "type": "string", - "description": "The entity holding the permission, in one of the following forms: \n- user-userId \n- user-email \n- group-groupId \n- group-email \n- domain-domain \n- project-team-projectId \n- allUsers \n- allAuthenticatedUsers Examples: \n- The user liz@example.com would be user-liz@example.com. \n- The group example@googlegroups.com would be group-example@googlegroups.com. \n- To refer to all members of the Google Apps for Business domain example.com, the entity would be domain-example.com.", - "annotations": { - "required": [ - "storage.defaultObjectAccessControls.insert", - "storage.objectAccessControls.insert" - ] - } - }, - "entityId": { - "type": "string", - "description": "The ID for the entity, if any." - }, - "etag": { - "type": "string", - "description": "HTTP 1.1 Entity tag for the access-control entry." - }, - "generation": { - "type": "string", - "description": "The content generation of the object, if applied to an object.", - "format": "int64" - }, - "id": { - "type": "string", - "description": "The ID of the access-control entry." - }, - "kind": { - "type": "string", - "description": "The kind of item this is. For object access control entries, this is always storage#objectAccessControl.", - "default": "storage#objectAccessControl" - }, - "object": { - "type": "string", - "description": "The name of the object, if applied to an object." - }, - "projectTeam": { - "type": "object", - "description": "The project team associated with the entity, if any.", - "properties": { - "projectNumber": { - "type": "string", - "description": "The project number." - }, - "team": { - "type": "string", - "description": "The team." - } - } - }, - "role": { - "type": "string", - "description": "The access permission for the entity.", - "annotations": { - "required": [ - "storage.defaultObjectAccessControls.insert", - "storage.objectAccessControls.insert" - ] - } - }, - "selfLink": { - "type": "string", - "description": "The link to this access-control entry." - } - } - }, - "ObjectAccessControls": { - "id": "ObjectAccessControls", - "type": "object", - "description": "An access-control list.", - "properties": { - "items": { - "type": "array", - "description": "The list of items.", - "items": { - "$ref": "ObjectAccessControl" - } - }, - "kind": { - "type": "string", - "description": "The kind of item this is. For lists of object access control entries, this is always storage#objectAccessControls.", - "default": "storage#objectAccessControls" - } - } - }, - "Objects": { - "id": "Objects", - "type": "object", - "description": "A list of objects.", - "properties": { - "items": { - "type": "array", - "description": "The list of items.", - "items": { - "$ref": "Object" - } - }, - "kind": { - "type": "string", - "description": "The kind of item this is. For lists of objects, this is always storage#objects.", - "default": "storage#objects" - }, - "nextPageToken": { - "type": "string", - "description": "The continuation token, used to page through large result sets. Provide this value in a subsequent request to return the next page of results." - }, - "prefixes": { - "type": "array", - "description": "The list of prefixes of objects matching-but-not-listed up to and including the requested delimiter.", - "items": { - "type": "string" - } - } - } - }, - "Policy": { - "id": "Policy", - "type": "object", - "description": "A bucket/object IAM policy.", - "properties": { - "bindings": { - "type": "array", - "description": "An association between a role, which comes with a set of permissions, and members who may assume that role.", - "items": { - "type": "object", - "properties": { - "condition": { - "type": "any" - }, - "members": { - "type": "array", - "description": "A collection of identifiers for members who may assume the provided role. Recognized identifiers are as follows: \n- allUsers — A special identifier that represents anyone on the internet; with or without a Google account. \n- allAuthenticatedUsers — A special identifier that represents anyone who is authenticated with a Google account or a service account. \n- user:emailid — An email address that represents a specific account. For example, user:alice@gmail.com or user:joe@example.com. \n- serviceAccount:emailid — An email address that represents a service account. For example, serviceAccount:my-other-app@appspot.gserviceaccount.com . \n- group:emailid — An email address that represents a Google group. For example, group:admins@example.com. \n- domain:domain — A Google Apps domain name that represents all the users of that domain. For example, domain:google.com or domain:example.com. \n- projectOwner:projectid — Owners of the given project. For example, projectOwner:my-example-project \n- projectEditor:projectid — Editors of the given project. For example, projectEditor:my-example-project \n- projectViewer:projectid — Viewers of the given project. For example, projectViewer:my-example-project", - "items": { - "type": "string" + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/cloud-platform": { + "description": "View and manage your data across Google Cloud Platform services" }, - "annotations": { - "required": [ - "storage.buckets.setIamPolicy", - "storage.objects.setIamPolicy" - ] + "https://www.googleapis.com/auth/cloud-platform.read-only": { + "description": "View your data across Google Cloud Platform services" + }, + "https://www.googleapis.com/auth/devstorage.full_control": { + "description": "Manage your data and permissions in Google Cloud Storage" + }, + "https://www.googleapis.com/auth/devstorage.read_only": { + "description": "View your data in Google Cloud Storage" + }, + "https://www.googleapis.com/auth/devstorage.read_write": { + "description": "Manage your data in Google Cloud Storage" } - }, - "role": { - "type": "string", - "description": "The role to which members belong. Two types of roles are supported: new IAM roles, which grant permissions that do not map directly to those provided by ACLs, and legacy IAM roles, which do map directly to ACL permissions. All roles are of the format roles/storage.specificRole.\nThe new IAM roles are: \n- roles/storage.admin — Full control of Google Cloud Storage resources. \n- roles/storage.objectViewer — Read-Only access to Google Cloud Storage objects. \n- roles/storage.objectCreator — Access to create objects in Google Cloud Storage. \n- roles/storage.objectAdmin — Full control of Google Cloud Storage objects. The legacy IAM roles are: \n- roles/storage.legacyObjectReader — Read-only access to objects without listing. Equivalent to an ACL entry on an object with the READER role. \n- roles/storage.legacyObjectOwner — Read/write access to existing objects without listing. Equivalent to an ACL entry on an object with the OWNER role. \n- roles/storage.legacyBucketReader — Read access to buckets with object listing. Equivalent to an ACL entry on a bucket with the READER role. \n- roles/storage.legacyBucketWriter — Read access to buckets with object listing/creation/deletion. Equivalent to an ACL entry on a bucket with the WRITER role. \n- roles/storage.legacyBucketOwner — Read and write access to existing buckets with object listing/creation/deletion. Equivalent to an ACL entry on a bucket with the OWNER role.", - "annotations": { - "required": [ - "storage.buckets.setIamPolicy", - "storage.objects.setIamPolicy" - ] - } - } } - }, - "annotations": { - "required": [ - "storage.buckets.setIamPolicy", - "storage.objects.setIamPolicy" - ] - } - }, - "etag": { - "type": "string", - "description": "HTTP 1.1 Entity tag for the policy.", - "format": "byte" - }, - "kind": { - "type": "string", - "description": "The kind of item this is. For policies, this is always storage#policy. This field is ignored on input.", - "default": "storage#policy" - }, - "resourceId": { - "type": "string", - "description": "The ID of the resource to which this policy belongs. Will be of the form projects/_/buckets/bucket for buckets, and projects/_/buckets/bucket/objects/object for objects. A specific generation may be specified by appending #generationNumber to the end of the object name, e.g. projects/_/buckets/my-bucket/objects/data.txt#17. The current generation can be denoted with #0. This field is ignored on input." } - } }, - "RewriteResponse": { - "id": "RewriteResponse", - "type": "object", - "description": "A rewrite response.", - "properties": { - "done": { - "type": "boolean", - "description": "true if the copy is finished; otherwise, false if the copy is in progress. This property is always present in the response." - }, - "kind": { - "type": "string", - "description": "The kind of item this is.", - "default": "storage#rewriteResponse" - }, - "objectSize": { - "type": "string", - "description": "The total size of the object being copied in bytes. This property is always present in the response.", - "format": "int64" - }, - "resource": { - "$ref": "Object", - "description": "A resource containing the metadata for the copied-to object. This property is present in the response only when copying completes." - }, - "rewriteToken": { - "type": "string", - "description": "A token to use in subsequent requests to continue copying data. This token is present in the response only when there is more data to copy." - }, - "totalBytesRewritten": { - "type": "string", - "description": "The total bytes written so far, which can be used to provide a waiting user with a progress indicator. This property is always present in the response.", - "format": "int64" - } - } + "basePath": "/storage/v1/", + "baseUrl": "https://www.googleapis.com/storage/v1/", + "batchPath": "batch/storage/v1", + "description": "Stores and retrieves potentially large, immutable data objects.", + "discoveryVersion": "v1", + "documentationLink": "https://developers.google.com/storage/docs/json_api/", + "etag": "\"-iA1DTNe4s-I6JZXPt1t1Ypy8IU/nD7tyZqYOGFELa4QRBOZJ8raFKA\"", + "icons": { + "x16": "https://www.google.com/images/icons/product/cloud_storage-16.png", + "x32": "https://www.google.com/images/icons/product/cloud_storage-32.png" }, - "ServiceAccount": { - "id": "ServiceAccount", - "type": "object", - "description": "A subscription to receive Google PubSub notifications.", - "properties": { - "email_address": { - "type": "string", - "description": "The ID of the notification." - }, - "kind": { - "type": "string", - "description": "The kind of item this is. For notifications, this is always storage#notification.", - "default": "storage#serviceAccount" - } - } - }, - "TestIamPermissionsResponse": { - "id": "TestIamPermissionsResponse", - "type": "object", - "description": "A storage.(buckets|objects).testIamPermissions response.", - "properties": { - "kind": { - "type": "string", - "description": "The kind of item this is.", - "default": "storage#testIamPermissionsResponse" - }, - "permissions": { - "type": "array", - "description": "The permissions held by the caller. Permissions are always of the format storage.resource.capability, where resource is one of buckets or objects. The supported permissions are as follows: \n- storage.buckets.delete — Delete bucket. \n- storage.buckets.get — Read bucket metadata. \n- storage.buckets.getIamPolicy — Read bucket IAM policy. \n- storage.buckets.create — Create bucket. \n- storage.buckets.list — List buckets. \n- storage.buckets.setIamPolicy — Update bucket IAM policy. \n- storage.buckets.update — Update bucket metadata. \n- storage.objects.delete — Delete object. \n- storage.objects.get — Read object data and metadata. \n- storage.objects.getIamPolicy — Read object IAM policy. \n- storage.objects.create — Create object. \n- storage.objects.list — List objects. \n- storage.objects.setIamPolicy — Update object IAM policy. \n- storage.objects.update — Update object metadata.", - "items": { - "type": "string" - } - } - } - } - }, - "resources": { - "bucketAccessControls": { - "methods": { - "delete": { - "id": "storage.bucketAccessControls.delete", - "path": "b/{bucket}/acl/{entity}", - "httpMethod": "DELETE", - "description": "Permanently deletes the ACL entry for the specified entity on the specified bucket.", - "parameters": { - "bucket": { - "type": "string", - "description": "Name of a bucket.", - "required": true, - "location": "path" - }, - "entity": { - "type": "string", - "description": "The entity holding the permission. Can be user-userId, user-emailAddress, group-groupId, group-emailAddress, allUsers, or allAuthenticatedUsers.", - "required": true, - "location": "path" - }, - "userProject": { - "type": "string", - "description": "The project to be billed for this request. Required for Requester Pays buckets.", - "location": "query" - } - }, - "parameterOrder": [ - "bucket", - "entity" - ], - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/devstorage.full_control" - ] - }, - "get": { - "id": "storage.bucketAccessControls.get", - "path": "b/{bucket}/acl/{entity}", - "httpMethod": "GET", - "description": "Returns the ACL entry for the specified entity on the specified bucket.", - "parameters": { - "bucket": { - "type": "string", - "description": "Name of a bucket.", - "required": true, - "location": "path" - }, - "entity": { - "type": "string", - "description": "The entity holding the permission. Can be user-userId, user-emailAddress, group-groupId, group-emailAddress, allUsers, or allAuthenticatedUsers.", - "required": true, - "location": "path" - }, - "userProject": { - "type": "string", - "description": "The project to be billed for this request. Required for Requester Pays buckets.", - "location": "query" - } - }, - "parameterOrder": [ - "bucket", - "entity" - ], - "response": { - "$ref": "BucketAccessControl" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/devstorage.full_control" - ] - }, - "insert": { - "id": "storage.bucketAccessControls.insert", - "path": "b/{bucket}/acl", - "httpMethod": "POST", - "description": "Creates a new ACL entry on the specified bucket.", - "parameters": { - "bucket": { - "type": "string", - "description": "Name of a bucket.", - "required": true, - "location": "path" - }, - "userProject": { - "type": "string", - "description": "The project to be billed for this request. Required for Requester Pays buckets.", - "location": "query" - } - }, - "parameterOrder": [ - "bucket" - ], - "request": { - "$ref": "BucketAccessControl" - }, - "response": { - "$ref": "BucketAccessControl" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/devstorage.full_control" - ] - }, - "list": { - "id": "storage.bucketAccessControls.list", - "path": "b/{bucket}/acl", - "httpMethod": "GET", - "description": "Retrieves ACL entries on the specified bucket.", - "parameters": { - "bucket": { - "type": "string", - "description": "Name of a bucket.", - "required": true, - "location": "path" - }, - "userProject": { - "type": "string", - "description": "The project to be billed for this request. Required for Requester Pays buckets.", - "location": "query" - } - }, - "parameterOrder": [ - "bucket" - ], - "response": { - "$ref": "BucketAccessControls" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/devstorage.full_control" - ] - }, - "patch": { - "id": "storage.bucketAccessControls.patch", - "path": "b/{bucket}/acl/{entity}", - "httpMethod": "PATCH", - "description": "Updates an ACL entry on the specified bucket. This method supports patch semantics.", - "parameters": { - "bucket": { - "type": "string", - "description": "Name of a bucket.", - "required": true, - "location": "path" - }, - "entity": { - "type": "string", - "description": "The entity holding the permission. Can be user-userId, user-emailAddress, group-groupId, group-emailAddress, allUsers, or allAuthenticatedUsers.", - "required": true, - "location": "path" - }, - "userProject": { - "type": "string", - "description": "The project to be billed for this request. Required for Requester Pays buckets.", - "location": "query" - } - }, - "parameterOrder": [ - "bucket", - "entity" - ], - "request": { - "$ref": "BucketAccessControl" - }, - "response": { - "$ref": "BucketAccessControl" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/devstorage.full_control" - ] - }, - "update": { - "id": "storage.bucketAccessControls.update", - "path": "b/{bucket}/acl/{entity}", - "httpMethod": "PUT", - "description": "Updates an ACL entry on the specified bucket.", - "parameters": { - "bucket": { - "type": "string", - "description": "Name of a bucket.", - "required": true, - "location": "path" - }, - "entity": { - "type": "string", - "description": "The entity holding the permission. Can be user-userId, user-emailAddress, group-groupId, group-emailAddress, allUsers, or allAuthenticatedUsers.", - "required": true, - "location": "path" - }, - "userProject": { - "type": "string", - "description": "The project to be billed for this request. Required for Requester Pays buckets.", - "location": "query" - } - }, - "parameterOrder": [ - "bucket", - "entity" - ], - "request": { - "$ref": "BucketAccessControl" - }, - "response": { - "$ref": "BucketAccessControl" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/devstorage.full_control" - ] - } - } - }, - "buckets": { - "methods": { - "delete": { - "id": "storage.buckets.delete", - "path": "b/{bucket}", - "httpMethod": "DELETE", - "description": "Permanently deletes an empty bucket.", - "parameters": { - "bucket": { - "type": "string", - "description": "Name of a bucket.", - "required": true, - "location": "path" - }, - "ifMetagenerationMatch": { - "type": "string", - "description": "If set, only deletes the bucket if its metageneration matches this value.", - "format": "int64", - "location": "query" - }, - "ifMetagenerationNotMatch": { - "type": "string", - "description": "If set, only deletes the bucket if its metageneration does not match this value.", - "format": "int64", - "location": "query" - }, - "userProject": { - "type": "string", - "description": "The project to be billed for this request. Required for Requester Pays buckets.", - "location": "query" - } - }, - "parameterOrder": [ - "bucket" - ], - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/devstorage.full_control", - "https://www.googleapis.com/auth/devstorage.read_write" - ] - }, - "get": { - "id": "storage.buckets.get", - "path": "b/{bucket}", - "httpMethod": "GET", - "description": "Returns metadata for the specified bucket.", - "parameters": { - "bucket": { - "type": "string", - "description": "Name of a bucket.", - "required": true, - "location": "path" - }, - "ifMetagenerationMatch": { - "type": "string", - "description": "Makes the return of the bucket metadata conditional on whether the bucket's current metageneration matches the given value.", - "format": "int64", - "location": "query" - }, - "ifMetagenerationNotMatch": { - "type": "string", - "description": "Makes the return of the bucket metadata conditional on whether the bucket's current metageneration does not match the given value.", - "format": "int64", - "location": "query" - }, - "projection": { - "type": "string", - "description": "Set of properties to return. Defaults to noAcl.", - "enum": [ - "full", - "noAcl" - ], - "enumDescriptions": [ - "Include all properties.", - "Omit owner, acl and defaultObjectAcl properties." - ], - "location": "query" - }, - "userProject": { - "type": "string", - "description": "The project to be billed for this request. Required for Requester Pays buckets.", - "location": "query" - } - }, - "parameterOrder": [ - "bucket" - ], - "response": { - "$ref": "Bucket" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/devstorage.full_control", - "https://www.googleapis.com/auth/devstorage.read_only", - "https://www.googleapis.com/auth/devstorage.read_write" - ] - }, - "getIamPolicy": { - "id": "storage.buckets.getIamPolicy", - "path": "b/{bucket}/iam", - "httpMethod": "GET", - "description": "Returns an IAM policy for the specified bucket.", - "parameters": { - "bucket": { - "type": "string", - "description": "Name of a bucket.", - "required": true, - "location": "path" - }, - "userProject": { - "type": "string", - "description": "The project to be billed for this request. Required for Requester Pays buckets.", - "location": "query" - } - }, - "parameterOrder": [ - "bucket" - ], - "response": { - "$ref": "Policy" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/devstorage.full_control", - "https://www.googleapis.com/auth/devstorage.read_only", - "https://www.googleapis.com/auth/devstorage.read_write" - ] - }, - "insert": { - "id": "storage.buckets.insert", - "path": "b", - "httpMethod": "POST", - "description": "Creates a new bucket.", - "parameters": { - "predefinedAcl": { - "type": "string", - "description": "Apply a predefined set of access controls to this bucket.", - "enum": [ - "authenticatedRead", - "private", - "projectPrivate", - "publicRead", - "publicReadWrite" - ], - "enumDescriptions": [ - "Project team owners get OWNER access, and allAuthenticatedUsers get READER access.", - "Project team owners get OWNER access.", - "Project team members get access according to their roles.", - "Project team owners get OWNER access, and allUsers get READER access.", - "Project team owners get OWNER access, and allUsers get WRITER access." - ], - "location": "query" - }, - "predefinedDefaultObjectAcl": { - "type": "string", - "description": "Apply a predefined set of default object access controls to this bucket.", - "enum": [ - "authenticatedRead", - "bucketOwnerFullControl", - "bucketOwnerRead", - "private", - "projectPrivate", - "publicRead" - ], - "enumDescriptions": [ - "Object owner gets OWNER access, and allAuthenticatedUsers get READER access.", - "Object owner gets OWNER access, and project team owners get OWNER access.", - "Object owner gets OWNER access, and project team owners get READER access.", - "Object owner gets OWNER access.", - "Object owner gets OWNER access, and project team members get access according to their roles.", - "Object owner gets OWNER access, and allUsers get READER access." - ], - "location": "query" - }, - "project": { - "type": "string", - "description": "A valid API project identifier.", - "required": true, - "location": "query" - }, - "projection": { - "type": "string", - "description": "Set of properties to return. Defaults to noAcl, unless the bucket resource specifies acl or defaultObjectAcl properties, when it defaults to full.", - "enum": [ - "full", - "noAcl" - ], - "enumDescriptions": [ - "Include all properties.", - "Omit owner, acl and defaultObjectAcl properties." - ], - "location": "query" - }, - "userProject": { - "type": "string", - "description": "The project to be billed for this request.", - "location": "query" - } - }, - "parameterOrder": [ - "project" - ], - "request": { - "$ref": "Bucket" - }, - "response": { - "$ref": "Bucket" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/devstorage.full_control", - "https://www.googleapis.com/auth/devstorage.read_write" - ] - }, - "list": { - "id": "storage.buckets.list", - "path": "b", - "httpMethod": "GET", - "description": "Retrieves a list of buckets for a given project.", - "parameters": { - "maxResults": { - "type": "integer", - "description": "Maximum number of buckets to return in a single response. The service will use this parameter or 1,000 items, whichever is smaller.", - "default": "1000", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "A previously-returned page token representing part of the larger set of results to view.", - "location": "query" - }, - "prefix": { - "type": "string", - "description": "Filter results to buckets whose names begin with this prefix.", - "location": "query" - }, - "project": { - "type": "string", - "description": "A valid API project identifier.", - "required": true, - "location": "query" - }, - "projection": { - "type": "string", - "description": "Set of properties to return. Defaults to noAcl.", - "enum": [ - "full", - "noAcl" - ], - "enumDescriptions": [ - "Include all properties.", - "Omit owner, acl and defaultObjectAcl properties." - ], - "location": "query" - }, - "userProject": { - "type": "string", - "description": "The project to be billed for this request.", - "location": "query" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "Buckets" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/devstorage.full_control", - "https://www.googleapis.com/auth/devstorage.read_only", - "https://www.googleapis.com/auth/devstorage.read_write" - ] - }, - "lockRetentionPolicy": { - "id": "storage.buckets.lockRetentionPolicy", - "path": "b/{bucket}/lockRetentionPolicy", - "httpMethod": "POST", - "description": "Locks retention policy on a bucket.", - "parameters": { - "bucket": { - "type": "string", - "description": "Name of a bucket.", - "required": true, - "location": "path" - }, - "ifMetagenerationMatch": { - "type": "string", - "description": "Makes the operation conditional on whether bucket's current metageneration matches the given value.", - "required": true, - "format": "int64", - "location": "query" - }, - "userProject": { - "type": "string", - "description": "The project to be billed for this request. Required for Requester Pays buckets.", - "location": "query" - } - }, - "parameterOrder": [ - "bucket", - "ifMetagenerationMatch" - ], - "response": { - "$ref": "Bucket" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/devstorage.full_control", - "https://www.googleapis.com/auth/devstorage.read_write" - ] - }, - "patch": { - "id": "storage.buckets.patch", - "path": "b/{bucket}", - "httpMethod": "PATCH", - "description": "Updates a bucket. Changes to the bucket will be readable immediately after writing, but configuration changes may take time to propagate. This method supports patch semantics.", - "parameters": { - "bucket": { - "type": "string", - "description": "Name of a bucket.", - "required": true, - "location": "path" - }, - "ifMetagenerationMatch": { - "type": "string", - "description": "Makes the return of the bucket metadata conditional on whether the bucket's current metageneration matches the given value.", - "format": "int64", - "location": "query" - }, - "ifMetagenerationNotMatch": { - "type": "string", - "description": "Makes the return of the bucket metadata conditional on whether the bucket's current metageneration does not match the given value.", - "format": "int64", - "location": "query" - }, - "predefinedAcl": { - "type": "string", - "description": "Apply a predefined set of access controls to this bucket.", - "enum": [ - "authenticatedRead", - "private", - "projectPrivate", - "publicRead", - "publicReadWrite" - ], - "enumDescriptions": [ - "Project team owners get OWNER access, and allAuthenticatedUsers get READER access.", - "Project team owners get OWNER access.", - "Project team members get access according to their roles.", - "Project team owners get OWNER access, and allUsers get READER access.", - "Project team owners get OWNER access, and allUsers get WRITER access." - ], - "location": "query" - }, - "predefinedDefaultObjectAcl": { - "type": "string", - "description": "Apply a predefined set of default object access controls to this bucket.", - "enum": [ - "authenticatedRead", - "bucketOwnerFullControl", - "bucketOwnerRead", - "private", - "projectPrivate", - "publicRead" - ], - "enumDescriptions": [ - "Object owner gets OWNER access, and allAuthenticatedUsers get READER access.", - "Object owner gets OWNER access, and project team owners get OWNER access.", - "Object owner gets OWNER access, and project team owners get READER access.", - "Object owner gets OWNER access.", - "Object owner gets OWNER access, and project team members get access according to their roles.", - "Object owner gets OWNER access, and allUsers get READER access." - ], - "location": "query" - }, - "projection": { - "type": "string", - "description": "Set of properties to return. Defaults to full.", - "enum": [ - "full", - "noAcl" - ], - "enumDescriptions": [ - "Include all properties.", - "Omit owner, acl and defaultObjectAcl properties." - ], - "location": "query" - }, - "userProject": { - "type": "string", - "description": "The project to be billed for this request. Required for Requester Pays buckets.", - "location": "query" - } - }, - "parameterOrder": [ - "bucket" - ], - "request": { - "$ref": "Bucket" - }, - "response": { - "$ref": "Bucket" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/devstorage.full_control" - ] - }, - "setIamPolicy": { - "id": "storage.buckets.setIamPolicy", - "path": "b/{bucket}/iam", - "httpMethod": "PUT", - "description": "Updates an IAM policy for the specified bucket.", - "parameters": { - "bucket": { - "type": "string", - "description": "Name of a bucket.", - "required": true, - "location": "path" - }, - "userProject": { - "type": "string", - "description": "The project to be billed for this request. Required for Requester Pays buckets.", - "location": "query" - } - }, - "parameterOrder": [ - "bucket" - ], - "request": { - "$ref": "Policy" - }, - "response": { - "$ref": "Policy" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/devstorage.full_control", - "https://www.googleapis.com/auth/devstorage.read_write" - ] - }, - "testIamPermissions": { - "id": "storage.buckets.testIamPermissions", - "path": "b/{bucket}/iam/testPermissions", - "httpMethod": "GET", - "description": "Tests a set of permissions on the given bucket to see which, if any, are held by the caller.", - "parameters": { - "bucket": { - "type": "string", - "description": "Name of a bucket.", - "required": true, - "location": "path" - }, - "permissions": { - "type": "string", - "description": "Permissions to test.", - "required": true, - "repeated": true, - "location": "query" - }, - "userProject": { - "type": "string", - "description": "The project to be billed for this request. Required for Requester Pays buckets.", - "location": "query" - } - }, - "parameterOrder": [ - "bucket", - "permissions" - ], - "response": { - "$ref": "TestIamPermissionsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/devstorage.full_control", - "https://www.googleapis.com/auth/devstorage.read_only", - "https://www.googleapis.com/auth/devstorage.read_write" - ] - }, - "update": { - "id": "storage.buckets.update", - "path": "b/{bucket}", - "httpMethod": "PUT", - "description": "Updates a bucket. Changes to the bucket will be readable immediately after writing, but configuration changes may take time to propagate.", - "parameters": { - "bucket": { - "type": "string", - "description": "Name of a bucket.", - "required": true, - "location": "path" - }, - "ifMetagenerationMatch": { - "type": "string", - "description": "Makes the return of the bucket metadata conditional on whether the bucket's current metageneration matches the given value.", - "format": "int64", - "location": "query" - }, - "ifMetagenerationNotMatch": { - "type": "string", - "description": "Makes the return of the bucket metadata conditional on whether the bucket's current metageneration does not match the given value.", - "format": "int64", - "location": "query" - }, - "predefinedAcl": { - "type": "string", - "description": "Apply a predefined set of access controls to this bucket.", - "enum": [ - "authenticatedRead", - "private", - "projectPrivate", - "publicRead", - "publicReadWrite" - ], - "enumDescriptions": [ - "Project team owners get OWNER access, and allAuthenticatedUsers get READER access.", - "Project team owners get OWNER access.", - "Project team members get access according to their roles.", - "Project team owners get OWNER access, and allUsers get READER access.", - "Project team owners get OWNER access, and allUsers get WRITER access." - ], - "location": "query" - }, - "predefinedDefaultObjectAcl": { - "type": "string", - "description": "Apply a predefined set of default object access controls to this bucket.", - "enum": [ - "authenticatedRead", - "bucketOwnerFullControl", - "bucketOwnerRead", - "private", - "projectPrivate", - "publicRead" - ], - "enumDescriptions": [ - "Object owner gets OWNER access, and allAuthenticatedUsers get READER access.", - "Object owner gets OWNER access, and project team owners get OWNER access.", - "Object owner gets OWNER access, and project team owners get READER access.", - "Object owner gets OWNER access.", - "Object owner gets OWNER access, and project team members get access according to their roles.", - "Object owner gets OWNER access, and allUsers get READER access." - ], - "location": "query" - }, - "projection": { - "type": "string", - "description": "Set of properties to return. Defaults to full.", - "enum": [ - "full", - "noAcl" - ], - "enumDescriptions": [ - "Include all properties.", - "Omit owner, acl and defaultObjectAcl properties." - ], - "location": "query" - }, - "userProject": { - "type": "string", - "description": "The project to be billed for this request. Required for Requester Pays buckets.", - "location": "query" - } - }, - "parameterOrder": [ - "bucket" - ], - "request": { - "$ref": "Bucket" - }, - "response": { - "$ref": "Bucket" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/devstorage.full_control" - ] - } - } - }, - "channels": { - "methods": { - "stop": { - "id": "storage.channels.stop", - "path": "channels/stop", - "httpMethod": "POST", - "description": "Stop watching resources through this channel", - "request": { - "$ref": "Channel", - "parameterName": "resource" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/devstorage.full_control", - "https://www.googleapis.com/auth/devstorage.read_only", - "https://www.googleapis.com/auth/devstorage.read_write" - ] - } - } - }, - "defaultObjectAccessControls": { - "methods": { - "delete": { - "id": "storage.defaultObjectAccessControls.delete", - "path": "b/{bucket}/defaultObjectAcl/{entity}", - "httpMethod": "DELETE", - "description": "Permanently deletes the default object ACL entry for the specified entity on the specified bucket.", - "parameters": { - "bucket": { - "type": "string", - "description": "Name of a bucket.", - "required": true, - "location": "path" - }, - "entity": { - "type": "string", - "description": "The entity holding the permission. Can be user-userId, user-emailAddress, group-groupId, group-emailAddress, allUsers, or allAuthenticatedUsers.", - "required": true, - "location": "path" - }, - "userProject": { - "type": "string", - "description": "The project to be billed for this request. Required for Requester Pays buckets.", - "location": "query" - } - }, - "parameterOrder": [ - "bucket", - "entity" - ], - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/devstorage.full_control" - ] - }, - "get": { - "id": "storage.defaultObjectAccessControls.get", - "path": "b/{bucket}/defaultObjectAcl/{entity}", - "httpMethod": "GET", - "description": "Returns the default object ACL entry for the specified entity on the specified bucket.", - "parameters": { - "bucket": { - "type": "string", - "description": "Name of a bucket.", - "required": true, - "location": "path" - }, - "entity": { - "type": "string", - "description": "The entity holding the permission. Can be user-userId, user-emailAddress, group-groupId, group-emailAddress, allUsers, or allAuthenticatedUsers.", - "required": true, - "location": "path" - }, - "userProject": { - "type": "string", - "description": "The project to be billed for this request. Required for Requester Pays buckets.", - "location": "query" - } - }, - "parameterOrder": [ - "bucket", - "entity" - ], - "response": { - "$ref": "ObjectAccessControl" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/devstorage.full_control" - ] - }, - "insert": { - "id": "storage.defaultObjectAccessControls.insert", - "path": "b/{bucket}/defaultObjectAcl", - "httpMethod": "POST", - "description": "Creates a new default object ACL entry on the specified bucket.", - "parameters": { - "bucket": { - "type": "string", - "description": "Name of a bucket.", - "required": true, - "location": "path" - }, - "userProject": { - "type": "string", - "description": "The project to be billed for this request. Required for Requester Pays buckets.", - "location": "query" - } - }, - "parameterOrder": [ - "bucket" - ], - "request": { - "$ref": "ObjectAccessControl" - }, - "response": { - "$ref": "ObjectAccessControl" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/devstorage.full_control" - ] - }, - "list": { - "id": "storage.defaultObjectAccessControls.list", - "path": "b/{bucket}/defaultObjectAcl", - "httpMethod": "GET", - "description": "Retrieves default object ACL entries on the specified bucket.", - "parameters": { - "bucket": { - "type": "string", - "description": "Name of a bucket.", - "required": true, - "location": "path" - }, - "ifMetagenerationMatch": { - "type": "string", - "description": "If present, only return default ACL listing if the bucket's current metageneration matches this value.", - "format": "int64", - "location": "query" - }, - "ifMetagenerationNotMatch": { - "type": "string", - "description": "If present, only return default ACL listing if the bucket's current metageneration does not match the given value.", - "format": "int64", - "location": "query" - }, - "userProject": { - "type": "string", - "description": "The project to be billed for this request. Required for Requester Pays buckets.", - "location": "query" - } - }, - "parameterOrder": [ - "bucket" - ], - "response": { - "$ref": "ObjectAccessControls" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/devstorage.full_control" - ] - }, - "patch": { - "id": "storage.defaultObjectAccessControls.patch", - "path": "b/{bucket}/defaultObjectAcl/{entity}", - "httpMethod": "PATCH", - "description": "Updates a default object ACL entry on the specified bucket. This method supports patch semantics.", - "parameters": { - "bucket": { - "type": "string", - "description": "Name of a bucket.", - "required": true, - "location": "path" - }, - "entity": { - "type": "string", - "description": "The entity holding the permission. Can be user-userId, user-emailAddress, group-groupId, group-emailAddress, allUsers, or allAuthenticatedUsers.", - "required": true, - "location": "path" - }, - "userProject": { - "type": "string", - "description": "The project to be billed for this request. Required for Requester Pays buckets.", - "location": "query" - } - }, - "parameterOrder": [ - "bucket", - "entity" - ], - "request": { - "$ref": "ObjectAccessControl" - }, - "response": { - "$ref": "ObjectAccessControl" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/devstorage.full_control" - ] - }, - "update": { - "id": "storage.defaultObjectAccessControls.update", - "path": "b/{bucket}/defaultObjectAcl/{entity}", - "httpMethod": "PUT", - "description": "Updates a default object ACL entry on the specified bucket.", - "parameters": { - "bucket": { - "type": "string", - "description": "Name of a bucket.", - "required": true, - "location": "path" - }, - "entity": { - "type": "string", - "description": "The entity holding the permission. Can be user-userId, user-emailAddress, group-groupId, group-emailAddress, allUsers, or allAuthenticatedUsers.", - "required": true, - "location": "path" - }, - "userProject": { - "type": "string", - "description": "The project to be billed for this request. Required for Requester Pays buckets.", - "location": "query" - } - }, - "parameterOrder": [ - "bucket", - "entity" - ], - "request": { - "$ref": "ObjectAccessControl" - }, - "response": { - "$ref": "ObjectAccessControl" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/devstorage.full_control" - ] - } - } - }, - "notifications": { - "methods": { - "delete": { - "id": "storage.notifications.delete", - "path": "b/{bucket}/notificationConfigs/{notification}", - "httpMethod": "DELETE", - "description": "Permanently deletes a notification subscription.", - "parameters": { - "bucket": { - "type": "string", - "description": "The parent bucket of the notification.", - "required": true, - "location": "path" - }, - "notification": { - "type": "string", - "description": "ID of the notification to delete.", - "required": true, - "location": "path" - }, - "userProject": { - "type": "string", - "description": "The project to be billed for this request. Required for Requester Pays buckets.", - "location": "query" - } - }, - "parameterOrder": [ - "bucket", - "notification" - ], - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/devstorage.full_control", - "https://www.googleapis.com/auth/devstorage.read_write" - ] - }, - "get": { - "id": "storage.notifications.get", - "path": "b/{bucket}/notificationConfigs/{notification}", - "httpMethod": "GET", - "description": "View a notification configuration.", - "parameters": { - "bucket": { - "type": "string", - "description": "The parent bucket of the notification.", - "required": true, - "location": "path" - }, - "notification": { - "type": "string", - "description": "Notification ID", - "required": true, - "location": "path" - }, - "userProject": { - "type": "string", - "description": "The project to be billed for this request. Required for Requester Pays buckets.", - "location": "query" - } - }, - "parameterOrder": [ - "bucket", - "notification" - ], - "response": { - "$ref": "Notification" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/devstorage.full_control", - "https://www.googleapis.com/auth/devstorage.read_only", - "https://www.googleapis.com/auth/devstorage.read_write" - ] - }, - "insert": { - "id": "storage.notifications.insert", - "path": "b/{bucket}/notificationConfigs", - "httpMethod": "POST", - "description": "Creates a notification subscription for a given bucket.", - "parameters": { - "bucket": { - "type": "string", - "description": "The parent bucket of the notification.", - "required": true, - "location": "path" - }, - "userProject": { - "type": "string", - "description": "The project to be billed for this request. Required for Requester Pays buckets.", - "location": "query" - } - }, - "parameterOrder": [ - "bucket" - ], - "request": { - "$ref": "Notification" - }, - "response": { - "$ref": "Notification" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/devstorage.full_control", - "https://www.googleapis.com/auth/devstorage.read_write" - ] - }, - "list": { - "id": "storage.notifications.list", - "path": "b/{bucket}/notificationConfigs", - "httpMethod": "GET", - "description": "Retrieves a list of notification subscriptions for a given bucket.", - "parameters": { - "bucket": { - "type": "string", - "description": "Name of a Google Cloud Storage bucket.", - "required": true, - "location": "path" - }, - "userProject": { - "type": "string", - "description": "The project to be billed for this request. Required for Requester Pays buckets.", - "location": "query" - } - }, - "parameterOrder": [ - "bucket" - ], - "response": { - "$ref": "Notifications" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/devstorage.full_control", - "https://www.googleapis.com/auth/devstorage.read_only", - "https://www.googleapis.com/auth/devstorage.read_write" - ] - } - } - }, - "objectAccessControls": { - "methods": { - "delete": { - "id": "storage.objectAccessControls.delete", - "path": "b/{bucket}/o/{object}/acl/{entity}", - "httpMethod": "DELETE", - "description": "Permanently deletes the ACL entry for the specified entity on the specified object.", - "parameters": { - "bucket": { - "type": "string", - "description": "Name of a bucket.", - "required": true, - "location": "path" - }, - "entity": { - "type": "string", - "description": "The entity holding the permission. Can be user-userId, user-emailAddress, group-groupId, group-emailAddress, allUsers, or allAuthenticatedUsers.", - "required": true, - "location": "path" - }, - "generation": { - "type": "string", - "description": "If present, selects a specific revision of this object (as opposed to the latest version, the default).", - "format": "int64", - "location": "query" - }, - "object": { - "type": "string", - "description": "Name of the object. For information about how to URL encode object names to be path safe, see Encoding URI Path Parts.", - "required": true, - "location": "path" - }, - "userProject": { - "type": "string", - "description": "The project to be billed for this request. Required for Requester Pays buckets.", - "location": "query" - } - }, - "parameterOrder": [ - "bucket", - "object", - "entity" - ], - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/devstorage.full_control" - ] - }, - "get": { - "id": "storage.objectAccessControls.get", - "path": "b/{bucket}/o/{object}/acl/{entity}", - "httpMethod": "GET", - "description": "Returns the ACL entry for the specified entity on the specified object.", - "parameters": { - "bucket": { - "type": "string", - "description": "Name of a bucket.", - "required": true, - "location": "path" - }, - "entity": { - "type": "string", - "description": "The entity holding the permission. Can be user-userId, user-emailAddress, group-groupId, group-emailAddress, allUsers, or allAuthenticatedUsers.", - "required": true, - "location": "path" - }, - "generation": { - "type": "string", - "description": "If present, selects a specific revision of this object (as opposed to the latest version, the default).", - "format": "int64", - "location": "query" - }, - "object": { - "type": "string", - "description": "Name of the object. For information about how to URL encode object names to be path safe, see Encoding URI Path Parts.", - "required": true, - "location": "path" - }, - "userProject": { - "type": "string", - "description": "The project to be billed for this request. Required for Requester Pays buckets.", - "location": "query" - } - }, - "parameterOrder": [ - "bucket", - "object", - "entity" - ], - "response": { - "$ref": "ObjectAccessControl" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/devstorage.full_control" - ] - }, - "insert": { - "id": "storage.objectAccessControls.insert", - "path": "b/{bucket}/o/{object}/acl", - "httpMethod": "POST", - "description": "Creates a new ACL entry on the specified object.", - "parameters": { - "bucket": { - "type": "string", - "description": "Name of a bucket.", - "required": true, - "location": "path" - }, - "generation": { - "type": "string", - "description": "If present, selects a specific revision of this object (as opposed to the latest version, the default).", - "format": "int64", - "location": "query" - }, - "object": { - "type": "string", - "description": "Name of the object. For information about how to URL encode object names to be path safe, see Encoding URI Path Parts.", - "required": true, - "location": "path" - }, - "userProject": { - "type": "string", - "description": "The project to be billed for this request. Required for Requester Pays buckets.", - "location": "query" - } - }, - "parameterOrder": [ - "bucket", - "object" - ], - "request": { - "$ref": "ObjectAccessControl" - }, - "response": { - "$ref": "ObjectAccessControl" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/devstorage.full_control" - ] - }, - "list": { - "id": "storage.objectAccessControls.list", - "path": "b/{bucket}/o/{object}/acl", - "httpMethod": "GET", - "description": "Retrieves ACL entries on the specified object.", - "parameters": { - "bucket": { - "type": "string", - "description": "Name of a bucket.", - "required": true, - "location": "path" - }, - "generation": { - "type": "string", - "description": "If present, selects a specific revision of this object (as opposed to the latest version, the default).", - "format": "int64", - "location": "query" - }, - "object": { - "type": "string", - "description": "Name of the object. For information about how to URL encode object names to be path safe, see Encoding URI Path Parts.", - "required": true, - "location": "path" - }, - "userProject": { - "type": "string", - "description": "The project to be billed for this request. Required for Requester Pays buckets.", - "location": "query" - } - }, - "parameterOrder": [ - "bucket", - "object" - ], - "response": { - "$ref": "ObjectAccessControls" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/devstorage.full_control" - ] - }, - "patch": { - "id": "storage.objectAccessControls.patch", - "path": "b/{bucket}/o/{object}/acl/{entity}", - "httpMethod": "PATCH", - "description": "Updates an ACL entry on the specified object. This method supports patch semantics.", - "parameters": { - "bucket": { - "type": "string", - "description": "Name of a bucket.", - "required": true, - "location": "path" - }, - "entity": { - "type": "string", - "description": "The entity holding the permission. Can be user-userId, user-emailAddress, group-groupId, group-emailAddress, allUsers, or allAuthenticatedUsers.", - "required": true, - "location": "path" - }, - "generation": { - "type": "string", - "description": "If present, selects a specific revision of this object (as opposed to the latest version, the default).", - "format": "int64", - "location": "query" - }, - "object": { - "type": "string", - "description": "Name of the object. For information about how to URL encode object names to be path safe, see Encoding URI Path Parts.", - "required": true, - "location": "path" - }, - "userProject": { - "type": "string", - "description": "The project to be billed for this request. Required for Requester Pays buckets.", - "location": "query" - } - }, - "parameterOrder": [ - "bucket", - "object", - "entity" - ], - "request": { - "$ref": "ObjectAccessControl" - }, - "response": { - "$ref": "ObjectAccessControl" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/devstorage.full_control" - ] - }, - "update": { - "id": "storage.objectAccessControls.update", - "path": "b/{bucket}/o/{object}/acl/{entity}", - "httpMethod": "PUT", - "description": "Updates an ACL entry on the specified object.", - "parameters": { - "bucket": { - "type": "string", - "description": "Name of a bucket.", - "required": true, - "location": "path" - }, - "entity": { - "type": "string", - "description": "The entity holding the permission. Can be user-userId, user-emailAddress, group-groupId, group-emailAddress, allUsers, or allAuthenticatedUsers.", - "required": true, - "location": "path" - }, - "generation": { - "type": "string", - "description": "If present, selects a specific revision of this object (as opposed to the latest version, the default).", - "format": "int64", - "location": "query" - }, - "object": { - "type": "string", - "description": "Name of the object. For information about how to URL encode object names to be path safe, see Encoding URI Path Parts.", - "required": true, - "location": "path" - }, - "userProject": { - "type": "string", - "description": "The project to be billed for this request. Required for Requester Pays buckets.", - "location": "query" - } - }, - "parameterOrder": [ - "bucket", - "object", - "entity" - ], - "request": { - "$ref": "ObjectAccessControl" - }, - "response": { - "$ref": "ObjectAccessControl" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/devstorage.full_control" - ] - } - } - }, - "objects": { - "methods": { - "compose": { - "id": "storage.objects.compose", - "path": "b/{destinationBucket}/o/{destinationObject}/compose", - "httpMethod": "POST", - "description": "Concatenates a list of existing objects into a new object in the same bucket.", - "parameters": { - "destinationBucket": { - "type": "string", - "description": "Name of the bucket in which to store the new object.", - "required": true, - "location": "path" - }, - "destinationObject": { - "type": "string", - "description": "Name of the new object. For information about how to URL encode object names to be path safe, see Encoding URI Path Parts.", - "required": true, - "location": "path" - }, - "destinationPredefinedAcl": { - "type": "string", - "description": "Apply a predefined set of access controls to the destination object.", - "enum": [ - "authenticatedRead", - "bucketOwnerFullControl", - "bucketOwnerRead", - "private", - "projectPrivate", - "publicRead" - ], - "enumDescriptions": [ - "Object owner gets OWNER access, and allAuthenticatedUsers get READER access.", - "Object owner gets OWNER access, and project team owners get OWNER access.", - "Object owner gets OWNER access, and project team owners get READER access.", - "Object owner gets OWNER access.", - "Object owner gets OWNER access, and project team members get access according to their roles.", - "Object owner gets OWNER access, and allUsers get READER access." - ], - "location": "query" - }, - "ifGenerationMatch": { - "type": "string", - "description": "Makes the operation conditional on whether the object's current generation matches the given value. Setting to 0 makes the operation succeed only if there are no live versions of the object.", - "format": "int64", - "location": "query" - }, - "ifMetagenerationMatch": { - "type": "string", - "description": "Makes the operation conditional on whether the object's current metageneration matches the given value.", - "format": "int64", - "location": "query" - }, - "kmsKeyName": { - "type": "string", - "description": "Resource name of the Cloud KMS key, of the form projects/my-project/locations/global/keyRings/my-kr/cryptoKeys/my-key, that will be used to encrypt the object. Overrides the object metadata's kms_key_name value, if any.", - "location": "query" - }, - "userProject": { - "type": "string", - "description": "The project to be billed for this request. Required for Requester Pays buckets.", - "location": "query" - } - }, - "parameterOrder": [ - "destinationBucket", - "destinationObject" - ], - "request": { - "$ref": "ComposeRequest" - }, - "response": { - "$ref": "Object" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/devstorage.full_control", - "https://www.googleapis.com/auth/devstorage.read_write" - ] - }, - "copy": { - "id": "storage.objects.copy", - "path": "b/{sourceBucket}/o/{sourceObject}/copyTo/b/{destinationBucket}/o/{destinationObject}", - "httpMethod": "POST", - "description": "Copies a source object to a destination object. Optionally overrides metadata.", - "parameters": { - "destinationBucket": { - "type": "string", - "description": "Name of the bucket in which to store the new object. Overrides the provided object metadata's bucket value, if any.For information about how to URL encode object names to be path safe, see Encoding URI Path Parts.", - "required": true, - "location": "path" - }, - "destinationObject": { - "type": "string", - "description": "Name of the new object. Required when the object metadata is not otherwise provided. Overrides the object metadata's name value, if any.", - "required": true, - "location": "path" - }, - "destinationPredefinedAcl": { - "type": "string", - "description": "Apply a predefined set of access controls to the destination object.", - "enum": [ - "authenticatedRead", - "bucketOwnerFullControl", - "bucketOwnerRead", - "private", - "projectPrivate", - "publicRead" - ], - "enumDescriptions": [ - "Object owner gets OWNER access, and allAuthenticatedUsers get READER access.", - "Object owner gets OWNER access, and project team owners get OWNER access.", - "Object owner gets OWNER access, and project team owners get READER access.", - "Object owner gets OWNER access.", - "Object owner gets OWNER access, and project team members get access according to their roles.", - "Object owner gets OWNER access, and allUsers get READER access." - ], - "location": "query" - }, - "ifGenerationMatch": { - "type": "string", - "description": "Makes the operation conditional on whether the destination object's current generation matches the given value. Setting to 0 makes the operation succeed only if there are no live versions of the object.", - "format": "int64", - "location": "query" - }, - "ifGenerationNotMatch": { - "type": "string", - "description": "Makes the operation conditional on whether the destination object's current generation does not match the given value. If no live object exists, the precondition fails. Setting to 0 makes the operation succeed only if there is a live version of the object.", - "format": "int64", - "location": "query" - }, - "ifMetagenerationMatch": { - "type": "string", - "description": "Makes the operation conditional on whether the destination object's current metageneration matches the given value.", - "format": "int64", - "location": "query" - }, - "ifMetagenerationNotMatch": { - "type": "string", - "description": "Makes the operation conditional on whether the destination object's current metageneration does not match the given value.", - "format": "int64", - "location": "query" - }, - "ifSourceGenerationMatch": { - "type": "string", - "description": "Makes the operation conditional on whether the source object's current generation matches the given value.", - "format": "int64", - "location": "query" - }, - "ifSourceGenerationNotMatch": { - "type": "string", - "description": "Makes the operation conditional on whether the source object's current generation does not match the given value.", - "format": "int64", - "location": "query" - }, - "ifSourceMetagenerationMatch": { - "type": "string", - "description": "Makes the operation conditional on whether the source object's current metageneration matches the given value.", - "format": "int64", - "location": "query" - }, - "ifSourceMetagenerationNotMatch": { - "type": "string", - "description": "Makes the operation conditional on whether the source object's current metageneration does not match the given value.", - "format": "int64", - "location": "query" - }, - "projection": { - "type": "string", - "description": "Set of properties to return. Defaults to noAcl, unless the object resource specifies the acl property, when it defaults to full.", - "enum": [ - "full", - "noAcl" - ], - "enumDescriptions": [ - "Include all properties.", - "Omit the owner, acl property." - ], - "location": "query" - }, - "sourceBucket": { - "type": "string", - "description": "Name of the bucket in which to find the source object.", - "required": true, - "location": "path" - }, - "sourceGeneration": { - "type": "string", - "description": "If present, selects a specific revision of the source object (as opposed to the latest version, the default).", - "format": "int64", - "location": "query" - }, - "sourceObject": { - "type": "string", - "description": "Name of the source object. For information about how to URL encode object names to be path safe, see Encoding URI Path Parts.", - "required": true, - "location": "path" - }, - "userProject": { - "type": "string", - "description": "The project to be billed for this request. Required for Requester Pays buckets.", - "location": "query" - } - }, - "parameterOrder": [ - "sourceBucket", - "sourceObject", - "destinationBucket", - "destinationObject" - ], - "request": { - "$ref": "Object" - }, - "response": { - "$ref": "Object" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/devstorage.full_control", - "https://www.googleapis.com/auth/devstorage.read_write" - ] - }, - "delete": { - "id": "storage.objects.delete", - "path": "b/{bucket}/o/{object}", - "httpMethod": "DELETE", - "description": "Deletes an object and its metadata. Deletions are permanent if versioning is not enabled for the bucket, or if the generation parameter is used.", - "parameters": { - "bucket": { - "type": "string", - "description": "Name of the bucket in which the object resides.", - "required": true, - "location": "path" - }, - "generation": { - "type": "string", - "description": "If present, permanently deletes a specific revision of this object (as opposed to the latest version, the default).", - "format": "int64", - "location": "query" - }, - "ifGenerationMatch": { - "type": "string", - "description": "Makes the operation conditional on whether the object's current generation matches the given value. Setting to 0 makes the operation succeed only if there are no live versions of the object.", - "format": "int64", - "location": "query" - }, - "ifGenerationNotMatch": { - "type": "string", - "description": "Makes the operation conditional on whether the object's current generation does not match the given value. If no live object exists, the precondition fails. Setting to 0 makes the operation succeed only if there is a live version of the object.", - "format": "int64", - "location": "query" - }, - "ifMetagenerationMatch": { - "type": "string", - "description": "Makes the operation conditional on whether the object's current metageneration matches the given value.", - "format": "int64", - "location": "query" - }, - "ifMetagenerationNotMatch": { - "type": "string", - "description": "Makes the operation conditional on whether the object's current metageneration does not match the given value.", - "format": "int64", - "location": "query" - }, - "object": { - "type": "string", - "description": "Name of the object. For information about how to URL encode object names to be path safe, see Encoding URI Path Parts.", - "required": true, - "location": "path" - }, - "userProject": { - "type": "string", - "description": "The project to be billed for this request. Required for Requester Pays buckets.", - "location": "query" - } - }, - "parameterOrder": [ - "bucket", - "object" - ], - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/devstorage.full_control", - "https://www.googleapis.com/auth/devstorage.read_write" - ] - }, - "get": { - "id": "storage.objects.get", - "path": "b/{bucket}/o/{object}", - "httpMethod": "GET", - "description": "Retrieves an object or its metadata.", - "parameters": { - "bucket": { - "type": "string", - "description": "Name of the bucket in which the object resides.", - "required": true, - "location": "path" - }, - "generation": { - "type": "string", - "description": "If present, selects a specific revision of this object (as opposed to the latest version, the default).", - "format": "int64", - "location": "query" - }, - "ifGenerationMatch": { - "type": "string", - "description": "Makes the operation conditional on whether the object's current generation matches the given value. Setting to 0 makes the operation succeed only if there are no live versions of the object.", - "format": "int64", - "location": "query" - }, - "ifGenerationNotMatch": { - "type": "string", - "description": "Makes the operation conditional on whether the object's current generation does not match the given value. If no live object exists, the precondition fails. Setting to 0 makes the operation succeed only if there is a live version of the object.", - "format": "int64", - "location": "query" - }, - "ifMetagenerationMatch": { - "type": "string", - "description": "Makes the operation conditional on whether the object's current metageneration matches the given value.", - "format": "int64", - "location": "query" - }, - "ifMetagenerationNotMatch": { - "type": "string", - "description": "Makes the operation conditional on whether the object's current metageneration does not match the given value.", - "format": "int64", - "location": "query" - }, - "object": { - "type": "string", - "description": "Name of the object. For information about how to URL encode object names to be path safe, see Encoding URI Path Parts.", - "required": true, - "location": "path" - }, - "projection": { - "type": "string", - "description": "Set of properties to return. Defaults to noAcl.", - "enum": [ - "full", - "noAcl" - ], - "enumDescriptions": [ - "Include all properties.", - "Omit the owner, acl property." - ], - "location": "query" - }, - "userProject": { - "type": "string", - "description": "The project to be billed for this request. Required for Requester Pays buckets.", - "location": "query" - } - }, - "parameterOrder": [ - "bucket", - "object" - ], - "response": { - "$ref": "Object" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/devstorage.full_control", - "https://www.googleapis.com/auth/devstorage.read_only", - "https://www.googleapis.com/auth/devstorage.read_write" - ], - "supportsMediaDownload": true, - "useMediaDownloadService": true - }, - "getIamPolicy": { - "id": "storage.objects.getIamPolicy", - "path": "b/{bucket}/o/{object}/iam", - "httpMethod": "GET", - "description": "Returns an IAM policy for the specified object.", - "parameters": { - "bucket": { - "type": "string", - "description": "Name of the bucket in which the object resides.", - "required": true, - "location": "path" - }, - "generation": { - "type": "string", - "description": "If present, selects a specific revision of this object (as opposed to the latest version, the default).", - "format": "int64", - "location": "query" - }, - "object": { - "type": "string", - "description": "Name of the object. For information about how to URL encode object names to be path safe, see Encoding URI Path Parts.", - "required": true, - "location": "path" - }, - "userProject": { - "type": "string", - "description": "The project to be billed for this request. Required for Requester Pays buckets.", - "location": "query" - } - }, - "parameterOrder": [ - "bucket", - "object" - ], - "response": { - "$ref": "Policy" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/devstorage.full_control", - "https://www.googleapis.com/auth/devstorage.read_only", - "https://www.googleapis.com/auth/devstorage.read_write" - ] - }, - "insert": { - "id": "storage.objects.insert", - "path": "b/{bucket}/o", - "httpMethod": "POST", - "description": "Stores a new object and metadata.", - "parameters": { - "bucket": { - "type": "string", - "description": "Name of the bucket in which to store the new object. Overrides the provided object metadata's bucket value, if any.", - "required": true, - "location": "path" - }, - "contentEncoding": { - "type": "string", - "description": "If set, sets the contentEncoding property of the final object to this value. Setting this parameter is equivalent to setting the contentEncoding metadata property. This can be useful when uploading an object with uploadType=media to indicate the encoding of the content being uploaded.", - "location": "query" - }, - "ifGenerationMatch": { - "type": "string", - "description": "Makes the operation conditional on whether the object's current generation matches the given value. Setting to 0 makes the operation succeed only if there are no live versions of the object.", - "format": "int64", - "location": "query" - }, - "ifGenerationNotMatch": { - "type": "string", - "description": "Makes the operation conditional on whether the object's current generation does not match the given value. If no live object exists, the precondition fails. Setting to 0 makes the operation succeed only if there is a live version of the object.", - "format": "int64", - "location": "query" - }, - "ifMetagenerationMatch": { - "type": "string", - "description": "Makes the operation conditional on whether the object's current metageneration matches the given value.", - "format": "int64", - "location": "query" - }, - "ifMetagenerationNotMatch": { - "type": "string", - "description": "Makes the operation conditional on whether the object's current metageneration does not match the given value.", - "format": "int64", - "location": "query" - }, - "kmsKeyName": { - "type": "string", - "description": "Resource name of the Cloud KMS key, of the form projects/my-project/locations/global/keyRings/my-kr/cryptoKeys/my-key, that will be used to encrypt the object. Overrides the object metadata's kms_key_name value, if any. Limited availability; usable only by enabled projects.", - "location": "query" - }, - "name": { - "type": "string", - "description": "Name of the object. Required when the object metadata is not otherwise provided. Overrides the object metadata's name value, if any. For information about how to URL encode object names to be path safe, see Encoding URI Path Parts.", - "location": "query" - }, - "predefinedAcl": { - "type": "string", - "description": "Apply a predefined set of access controls to this object.", - "enum": [ - "authenticatedRead", - "bucketOwnerFullControl", - "bucketOwnerRead", - "private", - "projectPrivate", - "publicRead" - ], - "enumDescriptions": [ - "Object owner gets OWNER access, and allAuthenticatedUsers get READER access.", - "Object owner gets OWNER access, and project team owners get OWNER access.", - "Object owner gets OWNER access, and project team owners get READER access.", - "Object owner gets OWNER access.", - "Object owner gets OWNER access, and project team members get access according to their roles.", - "Object owner gets OWNER access, and allUsers get READER access." - ], - "location": "query" - }, - "projection": { - "type": "string", - "description": "Set of properties to return. Defaults to noAcl, unless the object resource specifies the acl property, when it defaults to full.", - "enum": [ - "full", - "noAcl" - ], - "enumDescriptions": [ - "Include all properties.", - "Omit the owner, acl property." - ], - "location": "query" - }, - "userProject": { - "type": "string", - "description": "The project to be billed for this request. Required for Requester Pays buckets.", - "location": "query" - } - }, - "parameterOrder": [ - "bucket" - ], - "request": { - "$ref": "Object" - }, - "response": { - "$ref": "Object" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/devstorage.full_control", - "https://www.googleapis.com/auth/devstorage.read_write" - ], - "supportsMediaUpload": true, - "mediaUpload": { - "accept": [ - "*/*" + "id": "storage:v1", + "kind": "discovery#restDescription", + "labels": [ + "labs" + ], + "name": "storage", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "alt": { + "default": "json", + "description": "Data format for the response.", + "enum": [ + "json" ], - "protocols": { - "simple": { - "multipart": true, - "path": "/upload/storage/v1/b/{bucket}/o" - }, - "resumable": { - "multipart": true, - "path": "/resumable/upload/storage/v1/b/{bucket}/o" - } - } - } + "enumDescriptions": [ + "Responses with Content-Type of application/json" + ], + "location": "query", + "type": "string" }, - "list": { - "id": "storage.objects.list", - "path": "b/{bucket}/o", - "httpMethod": "GET", - "description": "Retrieves a list of objects matching the criteria.", - "parameters": { - "bucket": { - "type": "string", - "description": "Name of the bucket in which to look for objects.", - "required": true, - "location": "path" - }, - "delimiter": { - "type": "string", - "description": "Returns results in a directory-like mode. items will contain only objects whose names, aside from the prefix, do not contain delimiter. Objects whose names, aside from the prefix, contain delimiter will have their name, truncated after the delimiter, returned in prefixes. Duplicate prefixes are omitted.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "Maximum number of items plus prefixes to return in a single page of responses. As duplicate prefixes are omitted, fewer total results may be returned than requested. The service will use this parameter or 1,000 items, whichever is smaller.", - "default": "1000", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "A previously-returned page token representing part of the larger set of results to view.", - "location": "query" - }, - "prefix": { - "type": "string", - "description": "Filter results to objects whose names begin with this prefix.", - "location": "query" - }, - "projection": { - "type": "string", - "description": "Set of properties to return. Defaults to noAcl.", - "enum": [ - "full", - "noAcl" - ], - "enumDescriptions": [ - "Include all properties.", - "Omit the owner, acl property." - ], - "location": "query" - }, - "userProject": { - "type": "string", - "description": "The project to be billed for this request. Required for Requester Pays buckets.", - "location": "query" - }, - "versions": { - "type": "boolean", - "description": "If true, lists all versions of an object as distinct results. The default is false. For more information, see Object Versioning.", - "location": "query" - } - }, - "parameterOrder": [ - "bucket" - ], - "response": { - "$ref": "Objects" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/devstorage.full_control", - "https://www.googleapis.com/auth/devstorage.read_only", - "https://www.googleapis.com/auth/devstorage.read_write" - ], - "supportsSubscription": true + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "location": "query", + "type": "string" }, - "patch": { - "id": "storage.objects.patch", - "path": "b/{bucket}/o/{object}", - "httpMethod": "PATCH", - "description": "Patches an object's metadata.", - "parameters": { - "bucket": { - "type": "string", - "description": "Name of the bucket in which the object resides.", - "required": true, - "location": "path" - }, - "generation": { - "type": "string", - "description": "If present, selects a specific revision of this object (as opposed to the latest version, the default).", - "format": "int64", - "location": "query" - }, - "ifGenerationMatch": { - "type": "string", - "description": "Makes the operation conditional on whether the object's current generation matches the given value. Setting to 0 makes the operation succeed only if there are no live versions of the object.", - "format": "int64", - "location": "query" - }, - "ifGenerationNotMatch": { - "type": "string", - "description": "Makes the operation conditional on whether the object's current generation does not match the given value. If no live object exists, the precondition fails. Setting to 0 makes the operation succeed only if there is a live version of the object.", - "format": "int64", - "location": "query" - }, - "ifMetagenerationMatch": { - "type": "string", - "description": "Makes the operation conditional on whether the object's current metageneration matches the given value.", - "format": "int64", - "location": "query" - }, - "ifMetagenerationNotMatch": { - "type": "string", - "description": "Makes the operation conditional on whether the object's current metageneration does not match the given value.", - "format": "int64", - "location": "query" - }, - "object": { - "type": "string", - "description": "Name of the object. For information about how to URL encode object names to be path safe, see Encoding URI Path Parts.", - "required": true, - "location": "path" - }, - "predefinedAcl": { - "type": "string", - "description": "Apply a predefined set of access controls to this object.", - "enum": [ - "authenticatedRead", - "bucketOwnerFullControl", - "bucketOwnerRead", - "private", - "projectPrivate", - "publicRead" - ], - "enumDescriptions": [ - "Object owner gets OWNER access, and allAuthenticatedUsers get READER access.", - "Object owner gets OWNER access, and project team owners get OWNER access.", - "Object owner gets OWNER access, and project team owners get READER access.", - "Object owner gets OWNER access.", - "Object owner gets OWNER access, and project team members get access according to their roles.", - "Object owner gets OWNER access, and allUsers get READER access." - ], - "location": "query" - }, - "projection": { - "type": "string", - "description": "Set of properties to return. Defaults to full.", - "enum": [ - "full", - "noAcl" - ], - "enumDescriptions": [ - "Include all properties.", - "Omit the owner, acl property." - ], - "location": "query" - }, - "userProject": { - "type": "string", - "description": "The project to be billed for this request, for Requester Pays buckets.", - "location": "query" - } - }, - "parameterOrder": [ - "bucket", - "object" - ], - "request": { - "$ref": "Object" - }, - "response": { - "$ref": "Object" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/devstorage.full_control" - ] + "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" }, - "rewrite": { - "id": "storage.objects.rewrite", - "path": "b/{sourceBucket}/o/{sourceObject}/rewriteTo/b/{destinationBucket}/o/{destinationObject}", - "httpMethod": "POST", - "description": "Rewrites a source object to a destination object. Optionally overrides metadata.", - "parameters": { - "destinationBucket": { - "type": "string", - "description": "Name of the bucket in which to store the new object. Overrides the provided object metadata's bucket value, if any.", - "required": true, - "location": "path" - }, - "destinationKmsKeyName": { - "type": "string", - "description": "Resource name of the Cloud KMS key, of the form projects/my-project/locations/global/keyRings/my-kr/cryptoKeys/my-key, that will be used to encrypt the object. Overrides the object metadata's kms_key_name value, if any.", - "location": "query" - }, - "destinationObject": { - "type": "string", - "description": "Name of the new object. Required when the object metadata is not otherwise provided. Overrides the object metadata's name value, if any. For information about how to URL encode object names to be path safe, see Encoding URI Path Parts.", - "required": true, - "location": "path" - }, - "destinationPredefinedAcl": { - "type": "string", - "description": "Apply a predefined set of access controls to the destination object.", - "enum": [ - "authenticatedRead", - "bucketOwnerFullControl", - "bucketOwnerRead", - "private", - "projectPrivate", - "publicRead" - ], - "enumDescriptions": [ - "Object owner gets OWNER access, and allAuthenticatedUsers get READER access.", - "Object owner gets OWNER access, and project team owners get OWNER access.", - "Object owner gets OWNER access, and project team owners get READER access.", - "Object owner gets OWNER access.", - "Object owner gets OWNER access, and project team members get access according to their roles.", - "Object owner gets OWNER access, and allUsers get READER access." - ], - "location": "query" - }, - "ifGenerationMatch": { - "type": "string", - "description": "Makes the operation conditional on whether the object's current generation matches the given value. Setting to 0 makes the operation succeed only if there are no live versions of the object.", - "format": "int64", - "location": "query" - }, - "ifGenerationNotMatch": { - "type": "string", - "description": "Makes the operation conditional on whether the object's current generation does not match the given value. If no live object exists, the precondition fails. Setting to 0 makes the operation succeed only if there is a live version of the object.", - "format": "int64", - "location": "query" - }, - "ifMetagenerationMatch": { - "type": "string", - "description": "Makes the operation conditional on whether the destination object's current metageneration matches the given value.", - "format": "int64", - "location": "query" - }, - "ifMetagenerationNotMatch": { - "type": "string", - "description": "Makes the operation conditional on whether the destination object's current metageneration does not match the given value.", - "format": "int64", - "location": "query" - }, - "ifSourceGenerationMatch": { - "type": "string", - "description": "Makes the operation conditional on whether the source object's current generation matches the given value.", - "format": "int64", - "location": "query" - }, - "ifSourceGenerationNotMatch": { - "type": "string", - "description": "Makes the operation conditional on whether the source object's current generation does not match the given value.", - "format": "int64", - "location": "query" - }, - "ifSourceMetagenerationMatch": { - "type": "string", - "description": "Makes the operation conditional on whether the source object's current metageneration matches the given value.", - "format": "int64", - "location": "query" - }, - "ifSourceMetagenerationNotMatch": { - "type": "string", - "description": "Makes the operation conditional on whether the source object's current metageneration does not match the given value.", - "format": "int64", - "location": "query" - }, - "maxBytesRewrittenPerCall": { - "type": "string", - "description": "The maximum number of bytes that will be rewritten per rewrite request. Most callers shouldn't need to specify this parameter - it is primarily in place to support testing. If specified the value must be an integral multiple of 1 MiB (1048576). Also, this only applies to requests where the source and destination span locations and/or storage classes. Finally, this value must not change across rewrite calls else you'll get an error that the rewriteToken is invalid.", - "format": "int64", - "location": "query" - }, - "projection": { - "type": "string", - "description": "Set of properties to return. Defaults to noAcl, unless the object resource specifies the acl property, when it defaults to full.", - "enum": [ - "full", - "noAcl" - ], - "enumDescriptions": [ - "Include all properties.", - "Omit the owner, acl property." - ], - "location": "query" - }, - "rewriteToken": { - "type": "string", - "description": "Include this field (from the previous rewrite response) on each rewrite request after the first one, until the rewrite response 'done' flag is true. Calls that provide a rewriteToken can omit all other request fields, but if included those fields must match the values provided in the first rewrite request.", - "location": "query" - }, - "sourceBucket": { - "type": "string", - "description": "Name of the bucket in which to find the source object.", - "required": true, - "location": "path" - }, - "sourceGeneration": { - "type": "string", - "description": "If present, selects a specific revision of the source object (as opposed to the latest version, the default).", - "format": "int64", - "location": "query" - }, - "sourceObject": { - "type": "string", - "description": "Name of the source object. For information about how to URL encode object names to be path safe, see Encoding URI Path Parts.", - "required": true, - "location": "path" - }, - "userProject": { - "type": "string", - "description": "The project to be billed for this request. Required for Requester Pays buckets.", - "location": "query" - } - }, - "parameterOrder": [ - "sourceBucket", - "sourceObject", - "destinationBucket", - "destinationObject" - ], - "request": { - "$ref": "Object" - }, - "response": { - "$ref": "RewriteResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/devstorage.full_control", - "https://www.googleapis.com/auth/devstorage.read_write" - ] + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" }, - "setIamPolicy": { - "id": "storage.objects.setIamPolicy", - "path": "b/{bucket}/o/{object}/iam", - "httpMethod": "PUT", - "description": "Updates an IAM policy for the specified object.", - "parameters": { - "bucket": { - "type": "string", - "description": "Name of the bucket in which the object resides.", - "required": true, - "location": "path" - }, - "generation": { - "type": "string", - "description": "If present, selects a specific revision of this object (as opposed to the latest version, the default).", - "format": "int64", - "location": "query" - }, - "object": { - "type": "string", - "description": "Name of the object. For information about how to URL encode object names to be path safe, see Encoding URI Path Parts.", - "required": true, - "location": "path" - }, - "userProject": { - "type": "string", - "description": "The project to be billed for this request. Required for Requester Pays buckets.", - "location": "query" - } - }, - "parameterOrder": [ - "bucket", - "object" - ], - "request": { - "$ref": "Policy" - }, - "response": { - "$ref": "Policy" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/devstorage.full_control", - "https://www.googleapis.com/auth/devstorage.read_write" - ] + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" }, - "testIamPermissions": { - "id": "storage.objects.testIamPermissions", - "path": "b/{bucket}/o/{object}/iam/testPermissions", - "httpMethod": "GET", - "description": "Tests a set of permissions on the given object to see which, if any, are held by the caller.", - "parameters": { - "bucket": { - "type": "string", - "description": "Name of the bucket in which the object resides.", - "required": true, - "location": "path" - }, - "generation": { - "type": "string", - "description": "If present, selects a specific revision of this object (as opposed to the latest version, the default).", - "format": "int64", - "location": "query" - }, - "object": { - "type": "string", - "description": "Name of the object. For information about how to URL encode object names to be path safe, see Encoding URI Path Parts.", - "required": true, - "location": "path" - }, - "permissions": { - "type": "string", - "description": "Permissions to test.", - "required": true, - "repeated": true, - "location": "query" - }, - "userProject": { - "type": "string", - "description": "The project to be billed for this request. Required for Requester Pays buckets.", - "location": "query" - } - }, - "parameterOrder": [ - "bucket", - "object", - "permissions" - ], - "response": { - "$ref": "TestIamPermissionsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/devstorage.full_control", - "https://www.googleapis.com/auth/devstorage.read_only", - "https://www.googleapis.com/auth/devstorage.read_write" - ] + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", + "location": "query", + "type": "string" }, - "update": { - "id": "storage.objects.update", - "path": "b/{bucket}/o/{object}", - "httpMethod": "PUT", - "description": "Updates an object's metadata.", - "parameters": { - "bucket": { - "type": "string", - "description": "Name of the bucket in which the object resides.", - "required": true, - "location": "path" - }, - "generation": { - "type": "string", - "description": "If present, selects a specific revision of this object (as opposed to the latest version, the default).", - "format": "int64", - "location": "query" - }, - "ifGenerationMatch": { - "type": "string", - "description": "Makes the operation conditional on whether the object's current generation matches the given value. Setting to 0 makes the operation succeed only if there are no live versions of the object.", - "format": "int64", - "location": "query" - }, - "ifGenerationNotMatch": { - "type": "string", - "description": "Makes the operation conditional on whether the object's current generation does not match the given value. If no live object exists, the precondition fails. Setting to 0 makes the operation succeed only if there is a live version of the object.", - "format": "int64", - "location": "query" - }, - "ifMetagenerationMatch": { - "type": "string", - "description": "Makes the operation conditional on whether the object's current metageneration matches the given value.", - "format": "int64", - "location": "query" - }, - "ifMetagenerationNotMatch": { - "type": "string", - "description": "Makes the operation conditional on whether the object's current metageneration does not match the given value.", - "format": "int64", - "location": "query" - }, - "object": { - "type": "string", - "description": "Name of the object. For information about how to URL encode object names to be path safe, see Encoding URI Path Parts.", - "required": true, - "location": "path" - }, - "predefinedAcl": { - "type": "string", - "description": "Apply a predefined set of access controls to this object.", - "enum": [ - "authenticatedRead", - "bucketOwnerFullControl", - "bucketOwnerRead", - "private", - "projectPrivate", - "publicRead" - ], - "enumDescriptions": [ - "Object owner gets OWNER access, and allAuthenticatedUsers get READER access.", - "Object owner gets OWNER access, and project team owners get OWNER access.", - "Object owner gets OWNER access, and project team owners get READER access.", - "Object owner gets OWNER access.", - "Object owner gets OWNER access, and project team members get access according to their roles.", - "Object owner gets OWNER access, and allUsers get READER access." - ], - "location": "query" - }, - "projection": { - "type": "string", - "description": "Set of properties to return. Defaults to full.", - "enum": [ - "full", - "noAcl" - ], - "enumDescriptions": [ - "Include all properties.", - "Omit the owner, acl property." - ], - "location": "query" - }, - "userProject": { - "type": "string", - "description": "The project to be billed for this request. Required for Requester Pays buckets.", - "location": "query" - } - }, - "parameterOrder": [ - "bucket", - "object" - ], - "request": { - "$ref": "Object" - }, - "response": { - "$ref": "Object" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/devstorage.full_control" - ] - }, - "watchAll": { - "id": "storage.objects.watchAll", - "path": "b/{bucket}/o/watch", - "httpMethod": "POST", - "description": "Watch for changes on all objects in a bucket.", - "parameters": { - "bucket": { - "type": "string", - "description": "Name of the bucket in which to look for objects.", - "required": true, - "location": "path" - }, - "delimiter": { - "type": "string", - "description": "Returns results in a directory-like mode. items will contain only objects whose names, aside from the prefix, do not contain delimiter. Objects whose names, aside from the prefix, contain delimiter will have their name, truncated after the delimiter, returned in prefixes. Duplicate prefixes are omitted.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "Maximum number of items plus prefixes to return in a single page of responses. As duplicate prefixes are omitted, fewer total results may be returned than requested. The service will use this parameter or 1,000 items, whichever is smaller.", - "default": "1000", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "A previously-returned page token representing part of the larger set of results to view.", - "location": "query" - }, - "prefix": { - "type": "string", - "description": "Filter results to objects whose names begin with this prefix.", - "location": "query" - }, - "projection": { - "type": "string", - "description": "Set of properties to return. Defaults to noAcl.", - "enum": [ - "full", - "noAcl" - ], - "enumDescriptions": [ - "Include all properties.", - "Omit the owner, acl property." - ], - "location": "query" - }, - "userProject": { - "type": "string", - "description": "The project to be billed for this request. Required for Requester Pays buckets.", - "location": "query" - }, - "versions": { - "type": "boolean", - "description": "If true, lists all versions of an object as distinct results. The default is false. For more information, see Object Versioning.", - "location": "query" - } - }, - "parameterOrder": [ - "bucket" - ], - "request": { - "$ref": "Channel", - "parameterName": "resource" - }, - "response": { - "$ref": "Channel" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/devstorage.full_control", - "https://www.googleapis.com/auth/devstorage.read_only", - "https://www.googleapis.com/auth/devstorage.read_write" - ], - "supportsSubscription": true + "userIp": { + "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", + "location": "query", + "type": "string" } - } }, - "projects": { - "resources": { - "serviceAccount": { - "methods": { - "get": { - "id": "storage.projects.serviceAccount.get", - "path": "projects/{projectId}/serviceAccount", - "httpMethod": "GET", - "description": "Get the email address of this project's Google Cloud Storage service account.", - "parameters": { - "projectId": { - "type": "string", - "description": "Project ID", - "required": true, - "location": "path" + "protocol": "rest", + "resources": { + "bucketAccessControls": { + "methods": { + "delete": { + "description": "Permanently deletes the ACL entry for the specified entity on the specified bucket.", + "httpMethod": "DELETE", + "id": "storage.bucketAccessControls.delete", + "parameterOrder": [ + "bucket", + "entity" + ], + "parameters": { + "bucket": { + "description": "Name of a bucket.", + "location": "path", + "required": true, + "type": "string" + }, + "entity": { + "description": "The entity holding the permission. Can be user-userId, user-emailAddress, group-groupId, group-emailAddress, allUsers, or allAuthenticatedUsers.", + "location": "path", + "required": true, + "type": "string" + }, + "userProject": { + "description": "The project to be billed for this request. Required for Requester Pays buckets.", + "location": "query", + "type": "string" + } + }, + "path": "b/{bucket}/acl/{entity}", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/devstorage.full_control" + ] }, - "userProject": { - "type": "string", - "description": "The project to be billed for this request.", - "location": "query" + "get": { + "description": "Returns the ACL entry for the specified entity on the specified bucket.", + "httpMethod": "GET", + "id": "storage.bucketAccessControls.get", + "parameterOrder": [ + "bucket", + "entity" + ], + "parameters": { + "bucket": { + "description": "Name of a bucket.", + "location": "path", + "required": true, + "type": "string" + }, + "entity": { + "description": "The entity holding the permission. Can be user-userId, user-emailAddress, group-groupId, group-emailAddress, allUsers, or allAuthenticatedUsers.", + "location": "path", + "required": true, + "type": "string" + }, + "userProject": { + "description": "The project to be billed for this request. Required for Requester Pays buckets.", + "location": "query", + "type": "string" + } + }, + "path": "b/{bucket}/acl/{entity}", + "response": { + "$ref": "BucketAccessControl" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/devstorage.full_control" + ] + }, + "insert": { + "description": "Creates a new ACL entry on the specified bucket.", + "httpMethod": "POST", + "id": "storage.bucketAccessControls.insert", + "parameterOrder": [ + "bucket" + ], + "parameters": { + "bucket": { + "description": "Name of a bucket.", + "location": "path", + "required": true, + "type": "string" + }, + "userProject": { + "description": "The project to be billed for this request. Required for Requester Pays buckets.", + "location": "query", + "type": "string" + } + }, + "path": "b/{bucket}/acl", + "request": { + "$ref": "BucketAccessControl" + }, + "response": { + "$ref": "BucketAccessControl" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/devstorage.full_control" + ] + }, + "list": { + "description": "Retrieves ACL entries on the specified bucket.", + "httpMethod": "GET", + "id": "storage.bucketAccessControls.list", + "parameterOrder": [ + "bucket" + ], + "parameters": { + "bucket": { + "description": "Name of a bucket.", + "location": "path", + "required": true, + "type": "string" + }, + "userProject": { + "description": "The project to be billed for this request. Required for Requester Pays buckets.", + "location": "query", + "type": "string" + } + }, + "path": "b/{bucket}/acl", + "response": { + "$ref": "BucketAccessControls" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/devstorage.full_control" + ] + }, + "patch": { + "description": "Patches an ACL entry on the specified bucket.", + "httpMethod": "PATCH", + "id": "storage.bucketAccessControls.patch", + "parameterOrder": [ + "bucket", + "entity" + ], + "parameters": { + "bucket": { + "description": "Name of a bucket.", + "location": "path", + "required": true, + "type": "string" + }, + "entity": { + "description": "The entity holding the permission. Can be user-userId, user-emailAddress, group-groupId, group-emailAddress, allUsers, or allAuthenticatedUsers.", + "location": "path", + "required": true, + "type": "string" + }, + "userProject": { + "description": "The project to be billed for this request. Required for Requester Pays buckets.", + "location": "query", + "type": "string" + } + }, + "path": "b/{bucket}/acl/{entity}", + "request": { + "$ref": "BucketAccessControl" + }, + "response": { + "$ref": "BucketAccessControl" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/devstorage.full_control" + ] + }, + "update": { + "description": "Updates an ACL entry on the specified bucket.", + "httpMethod": "PUT", + "id": "storage.bucketAccessControls.update", + "parameterOrder": [ + "bucket", + "entity" + ], + "parameters": { + "bucket": { + "description": "Name of a bucket.", + "location": "path", + "required": true, + "type": "string" + }, + "entity": { + "description": "The entity holding the permission. Can be user-userId, user-emailAddress, group-groupId, group-emailAddress, allUsers, or allAuthenticatedUsers.", + "location": "path", + "required": true, + "type": "string" + }, + "userProject": { + "description": "The project to be billed for this request. Required for Requester Pays buckets.", + "location": "query", + "type": "string" + } + }, + "path": "b/{bucket}/acl/{entity}", + "request": { + "$ref": "BucketAccessControl" + }, + "response": { + "$ref": "BucketAccessControl" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/devstorage.full_control" + ] + } + } + }, + "buckets": { + "methods": { + "delete": { + "description": "Permanently deletes an empty bucket.", + "httpMethod": "DELETE", + "id": "storage.buckets.delete", + "parameterOrder": [ + "bucket" + ], + "parameters": { + "bucket": { + "description": "Name of a bucket.", + "location": "path", + "required": true, + "type": "string" + }, + "ifMetagenerationMatch": { + "description": "If set, only deletes the bucket if its metageneration matches this value.", + "format": "int64", + "location": "query", + "type": "string" + }, + "ifMetagenerationNotMatch": { + "description": "If set, only deletes the bucket if its metageneration does not match this value.", + "format": "int64", + "location": "query", + "type": "string" + }, + "userProject": { + "description": "The project to be billed for this request. Required for Requester Pays buckets.", + "location": "query", + "type": "string" + } + }, + "path": "b/{bucket}", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/devstorage.full_control", + "https://www.googleapis.com/auth/devstorage.read_write" + ] + }, + "get": { + "description": "Returns metadata for the specified bucket.", + "httpMethod": "GET", + "id": "storage.buckets.get", + "parameterOrder": [ + "bucket" + ], + "parameters": { + "bucket": { + "description": "Name of a bucket.", + "location": "path", + "required": true, + "type": "string" + }, + "ifMetagenerationMatch": { + "description": "Makes the return of the bucket metadata conditional on whether the bucket's current metageneration matches the given value.", + "format": "int64", + "location": "query", + "type": "string" + }, + "ifMetagenerationNotMatch": { + "description": "Makes the return of the bucket metadata conditional on whether the bucket's current metageneration does not match the given value.", + "format": "int64", + "location": "query", + "type": "string" + }, + "projection": { + "description": "Set of properties to return. Defaults to noAcl.", + "enum": [ + "full", + "noAcl" + ], + "enumDescriptions": [ + "Include all properties.", + "Omit owner, acl and defaultObjectAcl properties." + ], + "location": "query", + "type": "string" + }, + "userProject": { + "description": "The project to be billed for this request. Required for Requester Pays buckets.", + "location": "query", + "type": "string" + } + }, + "path": "b/{bucket}", + "response": { + "$ref": "Bucket" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/devstorage.full_control", + "https://www.googleapis.com/auth/devstorage.read_only", + "https://www.googleapis.com/auth/devstorage.read_write" + ] + }, + "getIamPolicy": { + "description": "Returns an IAM policy for the specified bucket.", + "httpMethod": "GET", + "id": "storage.buckets.getIamPolicy", + "parameterOrder": [ + "bucket" + ], + "parameters": { + "bucket": { + "description": "Name of a bucket.", + "location": "path", + "required": true, + "type": "string" + }, + "userProject": { + "description": "The project to be billed for this request. Required for Requester Pays buckets.", + "location": "query", + "type": "string" + } + }, + "path": "b/{bucket}/iam", + "response": { + "$ref": "Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/devstorage.full_control", + "https://www.googleapis.com/auth/devstorage.read_only", + "https://www.googleapis.com/auth/devstorage.read_write" + ] + }, + "insert": { + "description": "Creates a new bucket.", + "httpMethod": "POST", + "id": "storage.buckets.insert", + "parameterOrder": [ + "project" + ], + "parameters": { + "predefinedAcl": { + "description": "Apply a predefined set of access controls to this bucket.", + "enum": [ + "authenticatedRead", + "private", + "projectPrivate", + "publicRead", + "publicReadWrite" + ], + "enumDescriptions": [ + "Project team owners get OWNER access, and allAuthenticatedUsers get READER access.", + "Project team owners get OWNER access.", + "Project team members get access according to their roles.", + "Project team owners get OWNER access, and allUsers get READER access.", + "Project team owners get OWNER access, and allUsers get WRITER access." + ], + "location": "query", + "type": "string" + }, + "predefinedDefaultObjectAcl": { + "description": "Apply a predefined set of default object access controls to this bucket.", + "enum": [ + "authenticatedRead", + "bucketOwnerFullControl", + "bucketOwnerRead", + "private", + "projectPrivate", + "publicRead" + ], + "enumDescriptions": [ + "Object owner gets OWNER access, and allAuthenticatedUsers get READER access.", + "Object owner gets OWNER access, and project team owners get OWNER access.", + "Object owner gets OWNER access, and project team owners get READER access.", + "Object owner gets OWNER access.", + "Object owner gets OWNER access, and project team members get access according to their roles.", + "Object owner gets OWNER access, and allUsers get READER access." + ], + "location": "query", + "type": "string" + }, + "project": { + "description": "A valid API project identifier.", + "location": "query", + "required": true, + "type": "string" + }, + "projection": { + "description": "Set of properties to return. Defaults to noAcl, unless the bucket resource specifies acl or defaultObjectAcl properties, when it defaults to full.", + "enum": [ + "full", + "noAcl" + ], + "enumDescriptions": [ + "Include all properties.", + "Omit owner, acl and defaultObjectAcl properties." + ], + "location": "query", + "type": "string" + }, + "userProject": { + "description": "The project to be billed for this request.", + "location": "query", + "type": "string" + } + }, + "path": "b", + "request": { + "$ref": "Bucket" + }, + "response": { + "$ref": "Bucket" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/devstorage.full_control", + "https://www.googleapis.com/auth/devstorage.read_write" + ] + }, + "list": { + "description": "Retrieves a list of buckets for a given project.", + "httpMethod": "GET", + "id": "storage.buckets.list", + "parameterOrder": [ + "project" + ], + "parameters": { + "maxResults": { + "default": "1000", + "description": "Maximum number of buckets to return in a single response. The service will use this parameter or 1,000 items, whichever is smaller.", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "pageToken": { + "description": "A previously-returned page token representing part of the larger set of results to view.", + "location": "query", + "type": "string" + }, + "prefix": { + "description": "Filter results to buckets whose names begin with this prefix.", + "location": "query", + "type": "string" + }, + "project": { + "description": "A valid API project identifier.", + "location": "query", + "required": true, + "type": "string" + }, + "projection": { + "description": "Set of properties to return. Defaults to noAcl.", + "enum": [ + "full", + "noAcl" + ], + "enumDescriptions": [ + "Include all properties.", + "Omit owner, acl and defaultObjectAcl properties." + ], + "location": "query", + "type": "string" + }, + "userProject": { + "description": "The project to be billed for this request.", + "location": "query", + "type": "string" + } + }, + "path": "b", + "response": { + "$ref": "Buckets" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/devstorage.full_control", + "https://www.googleapis.com/auth/devstorage.read_only", + "https://www.googleapis.com/auth/devstorage.read_write" + ] + }, + "lockRetentionPolicy": { + "description": "Locks retention policy on a bucket.", + "httpMethod": "POST", + "id": "storage.buckets.lockRetentionPolicy", + "parameterOrder": [ + "bucket", + "ifMetagenerationMatch" + ], + "parameters": { + "bucket": { + "description": "Name of a bucket.", + "location": "path", + "required": true, + "type": "string" + }, + "ifMetagenerationMatch": { + "description": "Makes the operation conditional on whether bucket's current metageneration matches the given value.", + "format": "int64", + "location": "query", + "required": true, + "type": "string" + }, + "userProject": { + "description": "The project to be billed for this request. Required for Requester Pays buckets.", + "location": "query", + "type": "string" + } + }, + "path": "b/{bucket}/lockRetentionPolicy", + "response": { + "$ref": "Bucket" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/devstorage.full_control", + "https://www.googleapis.com/auth/devstorage.read_write" + ] + }, + "patch": { + "description": "Updates a bucket. Changes to the bucket will be readable immediately after writing, but configuration changes may take time to propagate. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "storage.buckets.patch", + "parameterOrder": [ + "bucket" + ], + "parameters": { + "bucket": { + "description": "Name of a bucket.", + "location": "path", + "required": true, + "type": "string" + }, + "ifMetagenerationMatch": { + "description": "Makes the return of the bucket metadata conditional on whether the bucket's current metageneration matches the given value.", + "format": "int64", + "location": "query", + "type": "string" + }, + "ifMetagenerationNotMatch": { + "description": "Makes the return of the bucket metadata conditional on whether the bucket's current metageneration does not match the given value.", + "format": "int64", + "location": "query", + "type": "string" + }, + "predefinedAcl": { + "description": "Apply a predefined set of access controls to this bucket.", + "enum": [ + "authenticatedRead", + "private", + "projectPrivate", + "publicRead", + "publicReadWrite" + ], + "enumDescriptions": [ + "Project team owners get OWNER access, and allAuthenticatedUsers get READER access.", + "Project team owners get OWNER access.", + "Project team members get access according to their roles.", + "Project team owners get OWNER access, and allUsers get READER access.", + "Project team owners get OWNER access, and allUsers get WRITER access." + ], + "location": "query", + "type": "string" + }, + "predefinedDefaultObjectAcl": { + "description": "Apply a predefined set of default object access controls to this bucket.", + "enum": [ + "authenticatedRead", + "bucketOwnerFullControl", + "bucketOwnerRead", + "private", + "projectPrivate", + "publicRead" + ], + "enumDescriptions": [ + "Object owner gets OWNER access, and allAuthenticatedUsers get READER access.", + "Object owner gets OWNER access, and project team owners get OWNER access.", + "Object owner gets OWNER access, and project team owners get READER access.", + "Object owner gets OWNER access.", + "Object owner gets OWNER access, and project team members get access according to their roles.", + "Object owner gets OWNER access, and allUsers get READER access." + ], + "location": "query", + "type": "string" + }, + "projection": { + "description": "Set of properties to return. Defaults to full.", + "enum": [ + "full", + "noAcl" + ], + "enumDescriptions": [ + "Include all properties.", + "Omit owner, acl and defaultObjectAcl properties." + ], + "location": "query", + "type": "string" + }, + "userProject": { + "description": "The project to be billed for this request. Required for Requester Pays buckets.", + "location": "query", + "type": "string" + } + }, + "path": "b/{bucket}", + "request": { + "$ref": "Bucket" + }, + "response": { + "$ref": "Bucket" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/devstorage.full_control" + ] + }, + "setIamPolicy": { + "description": "Updates an IAM policy for the specified bucket.", + "httpMethod": "PUT", + "id": "storage.buckets.setIamPolicy", + "parameterOrder": [ + "bucket" + ], + "parameters": { + "bucket": { + "description": "Name of a bucket.", + "location": "path", + "required": true, + "type": "string" + }, + "userProject": { + "description": "The project to be billed for this request. Required for Requester Pays buckets.", + "location": "query", + "type": "string" + } + }, + "path": "b/{bucket}/iam", + "request": { + "$ref": "Policy" + }, + "response": { + "$ref": "Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/devstorage.full_control", + "https://www.googleapis.com/auth/devstorage.read_write" + ] + }, + "testIamPermissions": { + "description": "Tests a set of permissions on the given bucket to see which, if any, are held by the caller.", + "httpMethod": "GET", + "id": "storage.buckets.testIamPermissions", + "parameterOrder": [ + "bucket", + "permissions" + ], + "parameters": { + "bucket": { + "description": "Name of a bucket.", + "location": "path", + "required": true, + "type": "string" + }, + "permissions": { + "description": "Permissions to test.", + "location": "query", + "repeated": true, + "required": true, + "type": "string" + }, + "userProject": { + "description": "The project to be billed for this request. Required for Requester Pays buckets.", + "location": "query", + "type": "string" + } + }, + "path": "b/{bucket}/iam/testPermissions", + "response": { + "$ref": "TestIamPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/devstorage.full_control", + "https://www.googleapis.com/auth/devstorage.read_only", + "https://www.googleapis.com/auth/devstorage.read_write" + ] + }, + "update": { + "description": "Updates a bucket. Changes to the bucket will be readable immediately after writing, but configuration changes may take time to propagate.", + "httpMethod": "PUT", + "id": "storage.buckets.update", + "parameterOrder": [ + "bucket" + ], + "parameters": { + "bucket": { + "description": "Name of a bucket.", + "location": "path", + "required": true, + "type": "string" + }, + "ifMetagenerationMatch": { + "description": "Makes the return of the bucket metadata conditional on whether the bucket's current metageneration matches the given value.", + "format": "int64", + "location": "query", + "type": "string" + }, + "ifMetagenerationNotMatch": { + "description": "Makes the return of the bucket metadata conditional on whether the bucket's current metageneration does not match the given value.", + "format": "int64", + "location": "query", + "type": "string" + }, + "predefinedAcl": { + "description": "Apply a predefined set of access controls to this bucket.", + "enum": [ + "authenticatedRead", + "private", + "projectPrivate", + "publicRead", + "publicReadWrite" + ], + "enumDescriptions": [ + "Project team owners get OWNER access, and allAuthenticatedUsers get READER access.", + "Project team owners get OWNER access.", + "Project team members get access according to their roles.", + "Project team owners get OWNER access, and allUsers get READER access.", + "Project team owners get OWNER access, and allUsers get WRITER access." + ], + "location": "query", + "type": "string" + }, + "predefinedDefaultObjectAcl": { + "description": "Apply a predefined set of default object access controls to this bucket.", + "enum": [ + "authenticatedRead", + "bucketOwnerFullControl", + "bucketOwnerRead", + "private", + "projectPrivate", + "publicRead" + ], + "enumDescriptions": [ + "Object owner gets OWNER access, and allAuthenticatedUsers get READER access.", + "Object owner gets OWNER access, and project team owners get OWNER access.", + "Object owner gets OWNER access, and project team owners get READER access.", + "Object owner gets OWNER access.", + "Object owner gets OWNER access, and project team members get access according to their roles.", + "Object owner gets OWNER access, and allUsers get READER access." + ], + "location": "query", + "type": "string" + }, + "projection": { + "description": "Set of properties to return. Defaults to full.", + "enum": [ + "full", + "noAcl" + ], + "enumDescriptions": [ + "Include all properties.", + "Omit owner, acl and defaultObjectAcl properties." + ], + "location": "query", + "type": "string" + }, + "userProject": { + "description": "The project to be billed for this request. Required for Requester Pays buckets.", + "location": "query", + "type": "string" + } + }, + "path": "b/{bucket}", + "request": { + "$ref": "Bucket" + }, + "response": { + "$ref": "Bucket" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/devstorage.full_control" + ] + } + } + }, + "channels": { + "methods": { + "stop": { + "description": "Stop watching resources through this channel", + "httpMethod": "POST", + "id": "storage.channels.stop", + "path": "channels/stop", + "request": { + "$ref": "Channel", + "parameterName": "resource" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/devstorage.full_control", + "https://www.googleapis.com/auth/devstorage.read_only", + "https://www.googleapis.com/auth/devstorage.read_write" + ] + } + } + }, + "defaultObjectAccessControls": { + "methods": { + "delete": { + "description": "Permanently deletes the default object ACL entry for the specified entity on the specified bucket.", + "httpMethod": "DELETE", + "id": "storage.defaultObjectAccessControls.delete", + "parameterOrder": [ + "bucket", + "entity" + ], + "parameters": { + "bucket": { + "description": "Name of a bucket.", + "location": "path", + "required": true, + "type": "string" + }, + "entity": { + "description": "The entity holding the permission. Can be user-userId, user-emailAddress, group-groupId, group-emailAddress, allUsers, or allAuthenticatedUsers.", + "location": "path", + "required": true, + "type": "string" + }, + "userProject": { + "description": "The project to be billed for this request. Required for Requester Pays buckets.", + "location": "query", + "type": "string" + } + }, + "path": "b/{bucket}/defaultObjectAcl/{entity}", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/devstorage.full_control" + ] + }, + "get": { + "description": "Returns the default object ACL entry for the specified entity on the specified bucket.", + "httpMethod": "GET", + "id": "storage.defaultObjectAccessControls.get", + "parameterOrder": [ + "bucket", + "entity" + ], + "parameters": { + "bucket": { + "description": "Name of a bucket.", + "location": "path", + "required": true, + "type": "string" + }, + "entity": { + "description": "The entity holding the permission. Can be user-userId, user-emailAddress, group-groupId, group-emailAddress, allUsers, or allAuthenticatedUsers.", + "location": "path", + "required": true, + "type": "string" + }, + "userProject": { + "description": "The project to be billed for this request. Required for Requester Pays buckets.", + "location": "query", + "type": "string" + } + }, + "path": "b/{bucket}/defaultObjectAcl/{entity}", + "response": { + "$ref": "ObjectAccessControl" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/devstorage.full_control" + ] + }, + "insert": { + "description": "Creates a new default object ACL entry on the specified bucket.", + "httpMethod": "POST", + "id": "storage.defaultObjectAccessControls.insert", + "parameterOrder": [ + "bucket" + ], + "parameters": { + "bucket": { + "description": "Name of a bucket.", + "location": "path", + "required": true, + "type": "string" + }, + "userProject": { + "description": "The project to be billed for this request. Required for Requester Pays buckets.", + "location": "query", + "type": "string" + } + }, + "path": "b/{bucket}/defaultObjectAcl", + "request": { + "$ref": "ObjectAccessControl" + }, + "response": { + "$ref": "ObjectAccessControl" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/devstorage.full_control" + ] + }, + "list": { + "description": "Retrieves default object ACL entries on the specified bucket.", + "httpMethod": "GET", + "id": "storage.defaultObjectAccessControls.list", + "parameterOrder": [ + "bucket" + ], + "parameters": { + "bucket": { + "description": "Name of a bucket.", + "location": "path", + "required": true, + "type": "string" + }, + "ifMetagenerationMatch": { + "description": "If present, only return default ACL listing if the bucket's current metageneration matches this value.", + "format": "int64", + "location": "query", + "type": "string" + }, + "ifMetagenerationNotMatch": { + "description": "If present, only return default ACL listing if the bucket's current metageneration does not match the given value.", + "format": "int64", + "location": "query", + "type": "string" + }, + "userProject": { + "description": "The project to be billed for this request. Required for Requester Pays buckets.", + "location": "query", + "type": "string" + } + }, + "path": "b/{bucket}/defaultObjectAcl", + "response": { + "$ref": "ObjectAccessControls" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/devstorage.full_control" + ] + }, + "patch": { + "description": "Patches a default object ACL entry on the specified bucket.", + "httpMethod": "PATCH", + "id": "storage.defaultObjectAccessControls.patch", + "parameterOrder": [ + "bucket", + "entity" + ], + "parameters": { + "bucket": { + "description": "Name of a bucket.", + "location": "path", + "required": true, + "type": "string" + }, + "entity": { + "description": "The entity holding the permission. Can be user-userId, user-emailAddress, group-groupId, group-emailAddress, allUsers, or allAuthenticatedUsers.", + "location": "path", + "required": true, + "type": "string" + }, + "userProject": { + "description": "The project to be billed for this request. Required for Requester Pays buckets.", + "location": "query", + "type": "string" + } + }, + "path": "b/{bucket}/defaultObjectAcl/{entity}", + "request": { + "$ref": "ObjectAccessControl" + }, + "response": { + "$ref": "ObjectAccessControl" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/devstorage.full_control" + ] + }, + "update": { + "description": "Updates a default object ACL entry on the specified bucket.", + "httpMethod": "PUT", + "id": "storage.defaultObjectAccessControls.update", + "parameterOrder": [ + "bucket", + "entity" + ], + "parameters": { + "bucket": { + "description": "Name of a bucket.", + "location": "path", + "required": true, + "type": "string" + }, + "entity": { + "description": "The entity holding the permission. Can be user-userId, user-emailAddress, group-groupId, group-emailAddress, allUsers, or allAuthenticatedUsers.", + "location": "path", + "required": true, + "type": "string" + }, + "userProject": { + "description": "The project to be billed for this request. Required for Requester Pays buckets.", + "location": "query", + "type": "string" + } + }, + "path": "b/{bucket}/defaultObjectAcl/{entity}", + "request": { + "$ref": "ObjectAccessControl" + }, + "response": { + "$ref": "ObjectAccessControl" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/devstorage.full_control" + ] + } + } + }, + "notifications": { + "methods": { + "delete": { + "description": "Permanently deletes a notification subscription.", + "httpMethod": "DELETE", + "id": "storage.notifications.delete", + "parameterOrder": [ + "bucket", + "notification" + ], + "parameters": { + "bucket": { + "description": "The parent bucket of the notification.", + "location": "path", + "required": true, + "type": "string" + }, + "notification": { + "description": "ID of the notification to delete.", + "location": "path", + "required": true, + "type": "string" + }, + "userProject": { + "description": "The project to be billed for this request. Required for Requester Pays buckets.", + "location": "query", + "type": "string" + } + }, + "path": "b/{bucket}/notificationConfigs/{notification}", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/devstorage.full_control", + "https://www.googleapis.com/auth/devstorage.read_write" + ] + }, + "get": { + "description": "View a notification configuration.", + "httpMethod": "GET", + "id": "storage.notifications.get", + "parameterOrder": [ + "bucket", + "notification" + ], + "parameters": { + "bucket": { + "description": "The parent bucket of the notification.", + "location": "path", + "required": true, + "type": "string" + }, + "notification": { + "description": "Notification ID", + "location": "path", + "required": true, + "type": "string" + }, + "userProject": { + "description": "The project to be billed for this request. Required for Requester Pays buckets.", + "location": "query", + "type": "string" + } + }, + "path": "b/{bucket}/notificationConfigs/{notification}", + "response": { + "$ref": "Notification" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/devstorage.full_control", + "https://www.googleapis.com/auth/devstorage.read_only", + "https://www.googleapis.com/auth/devstorage.read_write" + ] + }, + "insert": { + "description": "Creates a notification subscription for a given bucket.", + "httpMethod": "POST", + "id": "storage.notifications.insert", + "parameterOrder": [ + "bucket" + ], + "parameters": { + "bucket": { + "description": "The parent bucket of the notification.", + "location": "path", + "required": true, + "type": "string" + }, + "userProject": { + "description": "The project to be billed for this request. Required for Requester Pays buckets.", + "location": "query", + "type": "string" + } + }, + "path": "b/{bucket}/notificationConfigs", + "request": { + "$ref": "Notification" + }, + "response": { + "$ref": "Notification" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/devstorage.full_control", + "https://www.googleapis.com/auth/devstorage.read_write" + ] + }, + "list": { + "description": "Retrieves a list of notification subscriptions for a given bucket.", + "httpMethod": "GET", + "id": "storage.notifications.list", + "parameterOrder": [ + "bucket" + ], + "parameters": { + "bucket": { + "description": "Name of a Google Cloud Storage bucket.", + "location": "path", + "required": true, + "type": "string" + }, + "userProject": { + "description": "The project to be billed for this request. Required for Requester Pays buckets.", + "location": "query", + "type": "string" + } + }, + "path": "b/{bucket}/notificationConfigs", + "response": { + "$ref": "Notifications" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/devstorage.full_control", + "https://www.googleapis.com/auth/devstorage.read_only", + "https://www.googleapis.com/auth/devstorage.read_write" + ] + } + } + }, + "objectAccessControls": { + "methods": { + "delete": { + "description": "Permanently deletes the ACL entry for the specified entity on the specified object.", + "httpMethod": "DELETE", + "id": "storage.objectAccessControls.delete", + "parameterOrder": [ + "bucket", + "object", + "entity" + ], + "parameters": { + "bucket": { + "description": "Name of a bucket.", + "location": "path", + "required": true, + "type": "string" + }, + "entity": { + "description": "The entity holding the permission. Can be user-userId, user-emailAddress, group-groupId, group-emailAddress, allUsers, or allAuthenticatedUsers.", + "location": "path", + "required": true, + "type": "string" + }, + "generation": { + "description": "If present, selects a specific revision of this object (as opposed to the latest version, the default).", + "format": "int64", + "location": "query", + "type": "string" + }, + "object": { + "description": "Name of the object. For information about how to URL encode object names to be path safe, see Encoding URI Path Parts.", + "location": "path", + "required": true, + "type": "string" + }, + "userProject": { + "description": "The project to be billed for this request. Required for Requester Pays buckets.", + "location": "query", + "type": "string" + } + }, + "path": "b/{bucket}/o/{object}/acl/{entity}", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/devstorage.full_control" + ] + }, + "get": { + "description": "Returns the ACL entry for the specified entity on the specified object.", + "httpMethod": "GET", + "id": "storage.objectAccessControls.get", + "parameterOrder": [ + "bucket", + "object", + "entity" + ], + "parameters": { + "bucket": { + "description": "Name of a bucket.", + "location": "path", + "required": true, + "type": "string" + }, + "entity": { + "description": "The entity holding the permission. Can be user-userId, user-emailAddress, group-groupId, group-emailAddress, allUsers, or allAuthenticatedUsers.", + "location": "path", + "required": true, + "type": "string" + }, + "generation": { + "description": "If present, selects a specific revision of this object (as opposed to the latest version, the default).", + "format": "int64", + "location": "query", + "type": "string" + }, + "object": { + "description": "Name of the object. For information about how to URL encode object names to be path safe, see Encoding URI Path Parts.", + "location": "path", + "required": true, + "type": "string" + }, + "userProject": { + "description": "The project to be billed for this request. Required for Requester Pays buckets.", + "location": "query", + "type": "string" + } + }, + "path": "b/{bucket}/o/{object}/acl/{entity}", + "response": { + "$ref": "ObjectAccessControl" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/devstorage.full_control" + ] + }, + "insert": { + "description": "Creates a new ACL entry on the specified object.", + "httpMethod": "POST", + "id": "storage.objectAccessControls.insert", + "parameterOrder": [ + "bucket", + "object" + ], + "parameters": { + "bucket": { + "description": "Name of a bucket.", + "location": "path", + "required": true, + "type": "string" + }, + "generation": { + "description": "If present, selects a specific revision of this object (as opposed to the latest version, the default).", + "format": "int64", + "location": "query", + "type": "string" + }, + "object": { + "description": "Name of the object. For information about how to URL encode object names to be path safe, see Encoding URI Path Parts.", + "location": "path", + "required": true, + "type": "string" + }, + "userProject": { + "description": "The project to be billed for this request. Required for Requester Pays buckets.", + "location": "query", + "type": "string" + } + }, + "path": "b/{bucket}/o/{object}/acl", + "request": { + "$ref": "ObjectAccessControl" + }, + "response": { + "$ref": "ObjectAccessControl" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/devstorage.full_control" + ] + }, + "list": { + "description": "Retrieves ACL entries on the specified object.", + "httpMethod": "GET", + "id": "storage.objectAccessControls.list", + "parameterOrder": [ + "bucket", + "object" + ], + "parameters": { + "bucket": { + "description": "Name of a bucket.", + "location": "path", + "required": true, + "type": "string" + }, + "generation": { + "description": "If present, selects a specific revision of this object (as opposed to the latest version, the default).", + "format": "int64", + "location": "query", + "type": "string" + }, + "object": { + "description": "Name of the object. For information about how to URL encode object names to be path safe, see Encoding URI Path Parts.", + "location": "path", + "required": true, + "type": "string" + }, + "userProject": { + "description": "The project to be billed for this request. Required for Requester Pays buckets.", + "location": "query", + "type": "string" + } + }, + "path": "b/{bucket}/o/{object}/acl", + "response": { + "$ref": "ObjectAccessControls" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/devstorage.full_control" + ] + }, + "patch": { + "description": "Patches an ACL entry on the specified object.", + "httpMethod": "PATCH", + "id": "storage.objectAccessControls.patch", + "parameterOrder": [ + "bucket", + "object", + "entity" + ], + "parameters": { + "bucket": { + "description": "Name of a bucket.", + "location": "path", + "required": true, + "type": "string" + }, + "entity": { + "description": "The entity holding the permission. Can be user-userId, user-emailAddress, group-groupId, group-emailAddress, allUsers, or allAuthenticatedUsers.", + "location": "path", + "required": true, + "type": "string" + }, + "generation": { + "description": "If present, selects a specific revision of this object (as opposed to the latest version, the default).", + "format": "int64", + "location": "query", + "type": "string" + }, + "object": { + "description": "Name of the object. For information about how to URL encode object names to be path safe, see Encoding URI Path Parts.", + "location": "path", + "required": true, + "type": "string" + }, + "userProject": { + "description": "The project to be billed for this request. Required for Requester Pays buckets.", + "location": "query", + "type": "string" + } + }, + "path": "b/{bucket}/o/{object}/acl/{entity}", + "request": { + "$ref": "ObjectAccessControl" + }, + "response": { + "$ref": "ObjectAccessControl" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/devstorage.full_control" + ] + }, + "update": { + "description": "Updates an ACL entry on the specified object.", + "httpMethod": "PUT", + "id": "storage.objectAccessControls.update", + "parameterOrder": [ + "bucket", + "object", + "entity" + ], + "parameters": { + "bucket": { + "description": "Name of a bucket.", + "location": "path", + "required": true, + "type": "string" + }, + "entity": { + "description": "The entity holding the permission. Can be user-userId, user-emailAddress, group-groupId, group-emailAddress, allUsers, or allAuthenticatedUsers.", + "location": "path", + "required": true, + "type": "string" + }, + "generation": { + "description": "If present, selects a specific revision of this object (as opposed to the latest version, the default).", + "format": "int64", + "location": "query", + "type": "string" + }, + "object": { + "description": "Name of the object. For information about how to URL encode object names to be path safe, see Encoding URI Path Parts.", + "location": "path", + "required": true, + "type": "string" + }, + "userProject": { + "description": "The project to be billed for this request. Required for Requester Pays buckets.", + "location": "query", + "type": "string" + } + }, + "path": "b/{bucket}/o/{object}/acl/{entity}", + "request": { + "$ref": "ObjectAccessControl" + }, + "response": { + "$ref": "ObjectAccessControl" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/devstorage.full_control" + ] + } + } + }, + "objects": { + "methods": { + "compose": { + "description": "Concatenates a list of existing objects into a new object in the same bucket.", + "httpMethod": "POST", + "id": "storage.objects.compose", + "parameterOrder": [ + "destinationBucket", + "destinationObject" + ], + "parameters": { + "destinationBucket": { + "description": "Name of the bucket in which to store the new object.", + "location": "path", + "required": true, + "type": "string" + }, + "destinationObject": { + "description": "Name of the new object. For information about how to URL encode object names to be path safe, see Encoding URI Path Parts.", + "location": "path", + "required": true, + "type": "string" + }, + "destinationPredefinedAcl": { + "description": "Apply a predefined set of access controls to the destination object.", + "enum": [ + "authenticatedRead", + "bucketOwnerFullControl", + "bucketOwnerRead", + "private", + "projectPrivate", + "publicRead" + ], + "enumDescriptions": [ + "Object owner gets OWNER access, and allAuthenticatedUsers get READER access.", + "Object owner gets OWNER access, and project team owners get OWNER access.", + "Object owner gets OWNER access, and project team owners get READER access.", + "Object owner gets OWNER access.", + "Object owner gets OWNER access, and project team members get access according to their roles.", + "Object owner gets OWNER access, and allUsers get READER access." + ], + "location": "query", + "type": "string" + }, + "ifGenerationMatch": { + "description": "Makes the operation conditional on whether the object's current generation matches the given value. Setting to 0 makes the operation succeed only if there are no live versions of the object.", + "format": "int64", + "location": "query", + "type": "string" + }, + "ifMetagenerationMatch": { + "description": "Makes the operation conditional on whether the object's current metageneration matches the given value.", + "format": "int64", + "location": "query", + "type": "string" + }, + "kmsKeyName": { + "description": "Resource name of the Cloud KMS key, of the form projects/my-project/locations/global/keyRings/my-kr/cryptoKeys/my-key, that will be used to encrypt the object. Overrides the object metadata's kms_key_name value, if any.", + "location": "query", + "type": "string" + }, + "userProject": { + "description": "The project to be billed for this request. Required for Requester Pays buckets.", + "location": "query", + "type": "string" + } + }, + "path": "b/{destinationBucket}/o/{destinationObject}/compose", + "request": { + "$ref": "ComposeRequest" + }, + "response": { + "$ref": "Object" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/devstorage.full_control", + "https://www.googleapis.com/auth/devstorage.read_write" + ] + }, + "copy": { + "description": "Copies a source object to a destination object. Optionally overrides metadata.", + "httpMethod": "POST", + "id": "storage.objects.copy", + "parameterOrder": [ + "sourceBucket", + "sourceObject", + "destinationBucket", + "destinationObject" + ], + "parameters": { + "destinationBucket": { + "description": "Name of the bucket in which to store the new object. Overrides the provided object metadata's bucket value, if any.For information about how to URL encode object names to be path safe, see Encoding URI Path Parts.", + "location": "path", + "required": true, + "type": "string" + }, + "destinationObject": { + "description": "Name of the new object. Required when the object metadata is not otherwise provided. Overrides the object metadata's name value, if any.", + "location": "path", + "required": true, + "type": "string" + }, + "destinationPredefinedAcl": { + "description": "Apply a predefined set of access controls to the destination object.", + "enum": [ + "authenticatedRead", + "bucketOwnerFullControl", + "bucketOwnerRead", + "private", + "projectPrivate", + "publicRead" + ], + "enumDescriptions": [ + "Object owner gets OWNER access, and allAuthenticatedUsers get READER access.", + "Object owner gets OWNER access, and project team owners get OWNER access.", + "Object owner gets OWNER access, and project team owners get READER access.", + "Object owner gets OWNER access.", + "Object owner gets OWNER access, and project team members get access according to their roles.", + "Object owner gets OWNER access, and allUsers get READER access." + ], + "location": "query", + "type": "string" + }, + "ifGenerationMatch": { + "description": "Makes the operation conditional on whether the destination object's current generation matches the given value. Setting to 0 makes the operation succeed only if there are no live versions of the object.", + "format": "int64", + "location": "query", + "type": "string" + }, + "ifGenerationNotMatch": { + "description": "Makes the operation conditional on whether the destination object's current generation does not match the given value. If no live object exists, the precondition fails. Setting to 0 makes the operation succeed only if there is a live version of the object.", + "format": "int64", + "location": "query", + "type": "string" + }, + "ifMetagenerationMatch": { + "description": "Makes the operation conditional on whether the destination object's current metageneration matches the given value.", + "format": "int64", + "location": "query", + "type": "string" + }, + "ifMetagenerationNotMatch": { + "description": "Makes the operation conditional on whether the destination object's current metageneration does not match the given value.", + "format": "int64", + "location": "query", + "type": "string" + }, + "ifSourceGenerationMatch": { + "description": "Makes the operation conditional on whether the source object's current generation matches the given value.", + "format": "int64", + "location": "query", + "type": "string" + }, + "ifSourceGenerationNotMatch": { + "description": "Makes the operation conditional on whether the source object's current generation does not match the given value.", + "format": "int64", + "location": "query", + "type": "string" + }, + "ifSourceMetagenerationMatch": { + "description": "Makes the operation conditional on whether the source object's current metageneration matches the given value.", + "format": "int64", + "location": "query", + "type": "string" + }, + "ifSourceMetagenerationNotMatch": { + "description": "Makes the operation conditional on whether the source object's current metageneration does not match the given value.", + "format": "int64", + "location": "query", + "type": "string" + }, + "projection": { + "description": "Set of properties to return. Defaults to noAcl, unless the object resource specifies the acl property, when it defaults to full.", + "enum": [ + "full", + "noAcl" + ], + "enumDescriptions": [ + "Include all properties.", + "Omit the owner, acl property." + ], + "location": "query", + "type": "string" + }, + "sourceBucket": { + "description": "Name of the bucket in which to find the source object.", + "location": "path", + "required": true, + "type": "string" + }, + "sourceGeneration": { + "description": "If present, selects a specific revision of the source object (as opposed to the latest version, the default).", + "format": "int64", + "location": "query", + "type": "string" + }, + "sourceObject": { + "description": "Name of the source object. For information about how to URL encode object names to be path safe, see Encoding URI Path Parts.", + "location": "path", + "required": true, + "type": "string" + }, + "userProject": { + "description": "The project to be billed for this request. Required for Requester Pays buckets.", + "location": "query", + "type": "string" + } + }, + "path": "b/{sourceBucket}/o/{sourceObject}/copyTo/b/{destinationBucket}/o/{destinationObject}", + "request": { + "$ref": "Object" + }, + "response": { + "$ref": "Object" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/devstorage.full_control", + "https://www.googleapis.com/auth/devstorage.read_write" + ] + }, + "delete": { + "description": "Deletes an object and its metadata. Deletions are permanent if versioning is not enabled for the bucket, or if the generation parameter is used.", + "httpMethod": "DELETE", + "id": "storage.objects.delete", + "parameterOrder": [ + "bucket", + "object" + ], + "parameters": { + "bucket": { + "description": "Name of the bucket in which the object resides.", + "location": "path", + "required": true, + "type": "string" + }, + "generation": { + "description": "If present, permanently deletes a specific revision of this object (as opposed to the latest version, the default).", + "format": "int64", + "location": "query", + "type": "string" + }, + "ifGenerationMatch": { + "description": "Makes the operation conditional on whether the object's current generation matches the given value. Setting to 0 makes the operation succeed only if there are no live versions of the object.", + "format": "int64", + "location": "query", + "type": "string" + }, + "ifGenerationNotMatch": { + "description": "Makes the operation conditional on whether the object's current generation does not match the given value. If no live object exists, the precondition fails. Setting to 0 makes the operation succeed only if there is a live version of the object.", + "format": "int64", + "location": "query", + "type": "string" + }, + "ifMetagenerationMatch": { + "description": "Makes the operation conditional on whether the object's current metageneration matches the given value.", + "format": "int64", + "location": "query", + "type": "string" + }, + "ifMetagenerationNotMatch": { + "description": "Makes the operation conditional on whether the object's current metageneration does not match the given value.", + "format": "int64", + "location": "query", + "type": "string" + }, + "object": { + "description": "Name of the object. For information about how to URL encode object names to be path safe, see Encoding URI Path Parts.", + "location": "path", + "required": true, + "type": "string" + }, + "userProject": { + "description": "The project to be billed for this request. Required for Requester Pays buckets.", + "location": "query", + "type": "string" + } + }, + "path": "b/{bucket}/o/{object}", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/devstorage.full_control", + "https://www.googleapis.com/auth/devstorage.read_write" + ] + }, + "get": { + "description": "Retrieves an object or its metadata.", + "httpMethod": "GET", + "id": "storage.objects.get", + "parameterOrder": [ + "bucket", + "object" + ], + "parameters": { + "bucket": { + "description": "Name of the bucket in which the object resides.", + "location": "path", + "required": true, + "type": "string" + }, + "generation": { + "description": "If present, selects a specific revision of this object (as opposed to the latest version, the default).", + "format": "int64", + "location": "query", + "type": "string" + }, + "ifGenerationMatch": { + "description": "Makes the operation conditional on whether the object's current generation matches the given value. Setting to 0 makes the operation succeed only if there are no live versions of the object.", + "format": "int64", + "location": "query", + "type": "string" + }, + "ifGenerationNotMatch": { + "description": "Makes the operation conditional on whether the object's current generation does not match the given value. If no live object exists, the precondition fails. Setting to 0 makes the operation succeed only if there is a live version of the object.", + "format": "int64", + "location": "query", + "type": "string" + }, + "ifMetagenerationMatch": { + "description": "Makes the operation conditional on whether the object's current metageneration matches the given value.", + "format": "int64", + "location": "query", + "type": "string" + }, + "ifMetagenerationNotMatch": { + "description": "Makes the operation conditional on whether the object's current metageneration does not match the given value.", + "format": "int64", + "location": "query", + "type": "string" + }, + "object": { + "description": "Name of the object. For information about how to URL encode object names to be path safe, see Encoding URI Path Parts.", + "location": "path", + "required": true, + "type": "string" + }, + "projection": { + "description": "Set of properties to return. Defaults to noAcl.", + "enum": [ + "full", + "noAcl" + ], + "enumDescriptions": [ + "Include all properties.", + "Omit the owner, acl property." + ], + "location": "query", + "type": "string" + }, + "userProject": { + "description": "The project to be billed for this request. Required for Requester Pays buckets.", + "location": "query", + "type": "string" + } + }, + "path": "b/{bucket}/o/{object}", + "response": { + "$ref": "Object" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/devstorage.full_control", + "https://www.googleapis.com/auth/devstorage.read_only", + "https://www.googleapis.com/auth/devstorage.read_write" + ], + "supportsMediaDownload": true, + "useMediaDownloadService": true + }, + "getIamPolicy": { + "description": "Returns an IAM policy for the specified object.", + "httpMethod": "GET", + "id": "storage.objects.getIamPolicy", + "parameterOrder": [ + "bucket", + "object" + ], + "parameters": { + "bucket": { + "description": "Name of the bucket in which the object resides.", + "location": "path", + "required": true, + "type": "string" + }, + "generation": { + "description": "If present, selects a specific revision of this object (as opposed to the latest version, the default).", + "format": "int64", + "location": "query", + "type": "string" + }, + "object": { + "description": "Name of the object. For information about how to URL encode object names to be path safe, see Encoding URI Path Parts.", + "location": "path", + "required": true, + "type": "string" + }, + "userProject": { + "description": "The project to be billed for this request. Required for Requester Pays buckets.", + "location": "query", + "type": "string" + } + }, + "path": "b/{bucket}/o/{object}/iam", + "response": { + "$ref": "Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/devstorage.full_control", + "https://www.googleapis.com/auth/devstorage.read_only", + "https://www.googleapis.com/auth/devstorage.read_write" + ] + }, + "insert": { + "description": "Stores a new object and metadata.", + "httpMethod": "POST", + "id": "storage.objects.insert", + "mediaUpload": { + "accept": [ + "*/*" + ], + "protocols": { + "resumable": { + "multipart": true, + "path": "/resumable/upload/storage/v1/b/{bucket}/o" + }, + "simple": { + "multipart": true, + "path": "/upload/storage/v1/b/{bucket}/o" + } + } + }, + "parameterOrder": [ + "bucket" + ], + "parameters": { + "bucket": { + "description": "Name of the bucket in which to store the new object. Overrides the provided object metadata's bucket value, if any.", + "location": "path", + "required": true, + "type": "string" + }, + "contentEncoding": { + "description": "If set, sets the contentEncoding property of the final object to this value. Setting this parameter is equivalent to setting the contentEncoding metadata property. This can be useful when uploading an object with uploadType=media to indicate the encoding of the content being uploaded.", + "location": "query", + "type": "string" + }, + "ifGenerationMatch": { + "description": "Makes the operation conditional on whether the object's current generation matches the given value. Setting to 0 makes the operation succeed only if there are no live versions of the object.", + "format": "int64", + "location": "query", + "type": "string" + }, + "ifGenerationNotMatch": { + "description": "Makes the operation conditional on whether the object's current generation does not match the given value. If no live object exists, the precondition fails. Setting to 0 makes the operation succeed only if there is a live version of the object.", + "format": "int64", + "location": "query", + "type": "string" + }, + "ifMetagenerationMatch": { + "description": "Makes the operation conditional on whether the object's current metageneration matches the given value.", + "format": "int64", + "location": "query", + "type": "string" + }, + "ifMetagenerationNotMatch": { + "description": "Makes the operation conditional on whether the object's current metageneration does not match the given value.", + "format": "int64", + "location": "query", + "type": "string" + }, + "kmsKeyName": { + "description": "Resource name of the Cloud KMS key, of the form projects/my-project/locations/global/keyRings/my-kr/cryptoKeys/my-key, that will be used to encrypt the object. Overrides the object metadata's kms_key_name value, if any. Limited availability; usable only by enabled projects.", + "location": "query", + "type": "string" + }, + "name": { + "description": "Name of the object. Required when the object metadata is not otherwise provided. Overrides the object metadata's name value, if any. For information about how to URL encode object names to be path safe, see Encoding URI Path Parts.", + "location": "query", + "type": "string" + }, + "predefinedAcl": { + "description": "Apply a predefined set of access controls to this object.", + "enum": [ + "authenticatedRead", + "bucketOwnerFullControl", + "bucketOwnerRead", + "private", + "projectPrivate", + "publicRead" + ], + "enumDescriptions": [ + "Object owner gets OWNER access, and allAuthenticatedUsers get READER access.", + "Object owner gets OWNER access, and project team owners get OWNER access.", + "Object owner gets OWNER access, and project team owners get READER access.", + "Object owner gets OWNER access.", + "Object owner gets OWNER access, and project team members get access according to their roles.", + "Object owner gets OWNER access, and allUsers get READER access." + ], + "location": "query", + "type": "string" + }, + "projection": { + "description": "Set of properties to return. Defaults to noAcl, unless the object resource specifies the acl property, when it defaults to full.", + "enum": [ + "full", + "noAcl" + ], + "enumDescriptions": [ + "Include all properties.", + "Omit the owner, acl property." + ], + "location": "query", + "type": "string" + }, + "userProject": { + "description": "The project to be billed for this request. Required for Requester Pays buckets.", + "location": "query", + "type": "string" + } + }, + "path": "b/{bucket}/o", + "request": { + "$ref": "Object" + }, + "response": { + "$ref": "Object" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/devstorage.full_control", + "https://www.googleapis.com/auth/devstorage.read_write" + ], + "supportsMediaUpload": true + }, + "list": { + "description": "Retrieves a list of objects matching the criteria.", + "httpMethod": "GET", + "id": "storage.objects.list", + "parameterOrder": [ + "bucket" + ], + "parameters": { + "bucket": { + "description": "Name of the bucket in which to look for objects.", + "location": "path", + "required": true, + "type": "string" + }, + "delimiter": { + "description": "Returns results in a directory-like mode. items will contain only objects whose names, aside from the prefix, do not contain delimiter. Objects whose names, aside from the prefix, contain delimiter will have their name, truncated after the delimiter, returned in prefixes. Duplicate prefixes are omitted.", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "1000", + "description": "Maximum number of items plus prefixes to return in a single page of responses. As duplicate prefixes are omitted, fewer total results may be returned than requested. The service will use this parameter or 1,000 items, whichever is smaller.", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "pageToken": { + "description": "A previously-returned page token representing part of the larger set of results to view.", + "location": "query", + "type": "string" + }, + "prefix": { + "description": "Filter results to objects whose names begin with this prefix.", + "location": "query", + "type": "string" + }, + "projection": { + "description": "Set of properties to return. Defaults to noAcl.", + "enum": [ + "full", + "noAcl" + ], + "enumDescriptions": [ + "Include all properties.", + "Omit the owner, acl property." + ], + "location": "query", + "type": "string" + }, + "userProject": { + "description": "The project to be billed for this request. Required for Requester Pays buckets.", + "location": "query", + "type": "string" + }, + "versions": { + "description": "If true, lists all versions of an object as distinct results. The default is false. For more information, see Object Versioning.", + "location": "query", + "type": "boolean" + } + }, + "path": "b/{bucket}/o", + "response": { + "$ref": "Objects" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/devstorage.full_control", + "https://www.googleapis.com/auth/devstorage.read_only", + "https://www.googleapis.com/auth/devstorage.read_write" + ], + "supportsSubscription": true + }, + "patch": { + "description": "Patches an object's metadata.", + "httpMethod": "PATCH", + "id": "storage.objects.patch", + "parameterOrder": [ + "bucket", + "object" + ], + "parameters": { + "bucket": { + "description": "Name of the bucket in which the object resides.", + "location": "path", + "required": true, + "type": "string" + }, + "generation": { + "description": "If present, selects a specific revision of this object (as opposed to the latest version, the default).", + "format": "int64", + "location": "query", + "type": "string" + }, + "ifGenerationMatch": { + "description": "Makes the operation conditional on whether the object's current generation matches the given value. Setting to 0 makes the operation succeed only if there are no live versions of the object.", + "format": "int64", + "location": "query", + "type": "string" + }, + "ifGenerationNotMatch": { + "description": "Makes the operation conditional on whether the object's current generation does not match the given value. If no live object exists, the precondition fails. Setting to 0 makes the operation succeed only if there is a live version of the object.", + "format": "int64", + "location": "query", + "type": "string" + }, + "ifMetagenerationMatch": { + "description": "Makes the operation conditional on whether the object's current metageneration matches the given value.", + "format": "int64", + "location": "query", + "type": "string" + }, + "ifMetagenerationNotMatch": { + "description": "Makes the operation conditional on whether the object's current metageneration does not match the given value.", + "format": "int64", + "location": "query", + "type": "string" + }, + "object": { + "description": "Name of the object. For information about how to URL encode object names to be path safe, see Encoding URI Path Parts.", + "location": "path", + "required": true, + "type": "string" + }, + "predefinedAcl": { + "description": "Apply a predefined set of access controls to this object.", + "enum": [ + "authenticatedRead", + "bucketOwnerFullControl", + "bucketOwnerRead", + "private", + "projectPrivate", + "publicRead" + ], + "enumDescriptions": [ + "Object owner gets OWNER access, and allAuthenticatedUsers get READER access.", + "Object owner gets OWNER access, and project team owners get OWNER access.", + "Object owner gets OWNER access, and project team owners get READER access.", + "Object owner gets OWNER access.", + "Object owner gets OWNER access, and project team members get access according to their roles.", + "Object owner gets OWNER access, and allUsers get READER access." + ], + "location": "query", + "type": "string" + }, + "projection": { + "description": "Set of properties to return. Defaults to full.", + "enum": [ + "full", + "noAcl" + ], + "enumDescriptions": [ + "Include all properties.", + "Omit the owner, acl property." + ], + "location": "query", + "type": "string" + }, + "userProject": { + "description": "The project to be billed for this request, for Requester Pays buckets.", + "location": "query", + "type": "string" + } + }, + "path": "b/{bucket}/o/{object}", + "request": { + "$ref": "Object" + }, + "response": { + "$ref": "Object" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/devstorage.full_control" + ] + }, + "rewrite": { + "description": "Rewrites a source object to a destination object. Optionally overrides metadata.", + "httpMethod": "POST", + "id": "storage.objects.rewrite", + "parameterOrder": [ + "sourceBucket", + "sourceObject", + "destinationBucket", + "destinationObject" + ], + "parameters": { + "destinationBucket": { + "description": "Name of the bucket in which to store the new object. Overrides the provided object metadata's bucket value, if any.", + "location": "path", + "required": true, + "type": "string" + }, + "destinationKmsKeyName": { + "description": "Resource name of the Cloud KMS key, of the form projects/my-project/locations/global/keyRings/my-kr/cryptoKeys/my-key, that will be used to encrypt the object. Overrides the object metadata's kms_key_name value, if any.", + "location": "query", + "type": "string" + }, + "destinationObject": { + "description": "Name of the new object. Required when the object metadata is not otherwise provided. Overrides the object metadata's name value, if any. For information about how to URL encode object names to be path safe, see Encoding URI Path Parts.", + "location": "path", + "required": true, + "type": "string" + }, + "destinationPredefinedAcl": { + "description": "Apply a predefined set of access controls to the destination object.", + "enum": [ + "authenticatedRead", + "bucketOwnerFullControl", + "bucketOwnerRead", + "private", + "projectPrivate", + "publicRead" + ], + "enumDescriptions": [ + "Object owner gets OWNER access, and allAuthenticatedUsers get READER access.", + "Object owner gets OWNER access, and project team owners get OWNER access.", + "Object owner gets OWNER access, and project team owners get READER access.", + "Object owner gets OWNER access.", + "Object owner gets OWNER access, and project team members get access according to their roles.", + "Object owner gets OWNER access, and allUsers get READER access." + ], + "location": "query", + "type": "string" + }, + "ifGenerationMatch": { + "description": "Makes the operation conditional on whether the object's current generation matches the given value. Setting to 0 makes the operation succeed only if there are no live versions of the object.", + "format": "int64", + "location": "query", + "type": "string" + }, + "ifGenerationNotMatch": { + "description": "Makes the operation conditional on whether the object's current generation does not match the given value. If no live object exists, the precondition fails. Setting to 0 makes the operation succeed only if there is a live version of the object.", + "format": "int64", + "location": "query", + "type": "string" + }, + "ifMetagenerationMatch": { + "description": "Makes the operation conditional on whether the destination object's current metageneration matches the given value.", + "format": "int64", + "location": "query", + "type": "string" + }, + "ifMetagenerationNotMatch": { + "description": "Makes the operation conditional on whether the destination object's current metageneration does not match the given value.", + "format": "int64", + "location": "query", + "type": "string" + }, + "ifSourceGenerationMatch": { + "description": "Makes the operation conditional on whether the source object's current generation matches the given value.", + "format": "int64", + "location": "query", + "type": "string" + }, + "ifSourceGenerationNotMatch": { + "description": "Makes the operation conditional on whether the source object's current generation does not match the given value.", + "format": "int64", + "location": "query", + "type": "string" + }, + "ifSourceMetagenerationMatch": { + "description": "Makes the operation conditional on whether the source object's current metageneration matches the given value.", + "format": "int64", + "location": "query", + "type": "string" + }, + "ifSourceMetagenerationNotMatch": { + "description": "Makes the operation conditional on whether the source object's current metageneration does not match the given value.", + "format": "int64", + "location": "query", + "type": "string" + }, + "maxBytesRewrittenPerCall": { + "description": "The maximum number of bytes that will be rewritten per rewrite request. Most callers shouldn't need to specify this parameter - it is primarily in place to support testing. If specified the value must be an integral multiple of 1 MiB (1048576). Also, this only applies to requests where the source and destination span locations and/or storage classes. Finally, this value must not change across rewrite calls else you'll get an error that the rewriteToken is invalid.", + "format": "int64", + "location": "query", + "type": "string" + }, + "projection": { + "description": "Set of properties to return. Defaults to noAcl, unless the object resource specifies the acl property, when it defaults to full.", + "enum": [ + "full", + "noAcl" + ], + "enumDescriptions": [ + "Include all properties.", + "Omit the owner, acl property." + ], + "location": "query", + "type": "string" + }, + "rewriteToken": { + "description": "Include this field (from the previous rewrite response) on each rewrite request after the first one, until the rewrite response 'done' flag is true. Calls that provide a rewriteToken can omit all other request fields, but if included those fields must match the values provided in the first rewrite request.", + "location": "query", + "type": "string" + }, + "sourceBucket": { + "description": "Name of the bucket in which to find the source object.", + "location": "path", + "required": true, + "type": "string" + }, + "sourceGeneration": { + "description": "If present, selects a specific revision of the source object (as opposed to the latest version, the default).", + "format": "int64", + "location": "query", + "type": "string" + }, + "sourceObject": { + "description": "Name of the source object. For information about how to URL encode object names to be path safe, see Encoding URI Path Parts.", + "location": "path", + "required": true, + "type": "string" + }, + "userProject": { + "description": "The project to be billed for this request. Required for Requester Pays buckets.", + "location": "query", + "type": "string" + } + }, + "path": "b/{sourceBucket}/o/{sourceObject}/rewriteTo/b/{destinationBucket}/o/{destinationObject}", + "request": { + "$ref": "Object" + }, + "response": { + "$ref": "RewriteResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/devstorage.full_control", + "https://www.googleapis.com/auth/devstorage.read_write" + ] + }, + "setIamPolicy": { + "description": "Updates an IAM policy for the specified object.", + "httpMethod": "PUT", + "id": "storage.objects.setIamPolicy", + "parameterOrder": [ + "bucket", + "object" + ], + "parameters": { + "bucket": { + "description": "Name of the bucket in which the object resides.", + "location": "path", + "required": true, + "type": "string" + }, + "generation": { + "description": "If present, selects a specific revision of this object (as opposed to the latest version, the default).", + "format": "int64", + "location": "query", + "type": "string" + }, + "object": { + "description": "Name of the object. For information about how to URL encode object names to be path safe, see Encoding URI Path Parts.", + "location": "path", + "required": true, + "type": "string" + }, + "userProject": { + "description": "The project to be billed for this request. Required for Requester Pays buckets.", + "location": "query", + "type": "string" + } + }, + "path": "b/{bucket}/o/{object}/iam", + "request": { + "$ref": "Policy" + }, + "response": { + "$ref": "Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/devstorage.full_control", + "https://www.googleapis.com/auth/devstorage.read_write" + ] + }, + "testIamPermissions": { + "description": "Tests a set of permissions on the given object to see which, if any, are held by the caller.", + "httpMethod": "GET", + "id": "storage.objects.testIamPermissions", + "parameterOrder": [ + "bucket", + "object", + "permissions" + ], + "parameters": { + "bucket": { + "description": "Name of the bucket in which the object resides.", + "location": "path", + "required": true, + "type": "string" + }, + "generation": { + "description": "If present, selects a specific revision of this object (as opposed to the latest version, the default).", + "format": "int64", + "location": "query", + "type": "string" + }, + "object": { + "description": "Name of the object. For information about how to URL encode object names to be path safe, see Encoding URI Path Parts.", + "location": "path", + "required": true, + "type": "string" + }, + "permissions": { + "description": "Permissions to test.", + "location": "query", + "repeated": true, + "required": true, + "type": "string" + }, + "userProject": { + "description": "The project to be billed for this request. Required for Requester Pays buckets.", + "location": "query", + "type": "string" + } + }, + "path": "b/{bucket}/o/{object}/iam/testPermissions", + "response": { + "$ref": "TestIamPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/devstorage.full_control", + "https://www.googleapis.com/auth/devstorage.read_only", + "https://www.googleapis.com/auth/devstorage.read_write" + ] + }, + "update": { + "description": "Updates an object's metadata.", + "httpMethod": "PUT", + "id": "storage.objects.update", + "parameterOrder": [ + "bucket", + "object" + ], + "parameters": { + "bucket": { + "description": "Name of the bucket in which the object resides.", + "location": "path", + "required": true, + "type": "string" + }, + "generation": { + "description": "If present, selects a specific revision of this object (as opposed to the latest version, the default).", + "format": "int64", + "location": "query", + "type": "string" + }, + "ifGenerationMatch": { + "description": "Makes the operation conditional on whether the object's current generation matches the given value. Setting to 0 makes the operation succeed only if there are no live versions of the object.", + "format": "int64", + "location": "query", + "type": "string" + }, + "ifGenerationNotMatch": { + "description": "Makes the operation conditional on whether the object's current generation does not match the given value. If no live object exists, the precondition fails. Setting to 0 makes the operation succeed only if there is a live version of the object.", + "format": "int64", + "location": "query", + "type": "string" + }, + "ifMetagenerationMatch": { + "description": "Makes the operation conditional on whether the object's current metageneration matches the given value.", + "format": "int64", + "location": "query", + "type": "string" + }, + "ifMetagenerationNotMatch": { + "description": "Makes the operation conditional on whether the object's current metageneration does not match the given value.", + "format": "int64", + "location": "query", + "type": "string" + }, + "object": { + "description": "Name of the object. For information about how to URL encode object names to be path safe, see Encoding URI Path Parts.", + "location": "path", + "required": true, + "type": "string" + }, + "predefinedAcl": { + "description": "Apply a predefined set of access controls to this object.", + "enum": [ + "authenticatedRead", + "bucketOwnerFullControl", + "bucketOwnerRead", + "private", + "projectPrivate", + "publicRead" + ], + "enumDescriptions": [ + "Object owner gets OWNER access, and allAuthenticatedUsers get READER access.", + "Object owner gets OWNER access, and project team owners get OWNER access.", + "Object owner gets OWNER access, and project team owners get READER access.", + "Object owner gets OWNER access.", + "Object owner gets OWNER access, and project team members get access according to their roles.", + "Object owner gets OWNER access, and allUsers get READER access." + ], + "location": "query", + "type": "string" + }, + "projection": { + "description": "Set of properties to return. Defaults to full.", + "enum": [ + "full", + "noAcl" + ], + "enumDescriptions": [ + "Include all properties.", + "Omit the owner, acl property." + ], + "location": "query", + "type": "string" + }, + "userProject": { + "description": "The project to be billed for this request. Required for Requester Pays buckets.", + "location": "query", + "type": "string" + } + }, + "path": "b/{bucket}/o/{object}", + "request": { + "$ref": "Object" + }, + "response": { + "$ref": "Object" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/devstorage.full_control" + ] + }, + "watchAll": { + "description": "Watch for changes on all objects in a bucket.", + "httpMethod": "POST", + "id": "storage.objects.watchAll", + "parameterOrder": [ + "bucket" + ], + "parameters": { + "bucket": { + "description": "Name of the bucket in which to look for objects.", + "location": "path", + "required": true, + "type": "string" + }, + "delimiter": { + "description": "Returns results in a directory-like mode. items will contain only objects whose names, aside from the prefix, do not contain delimiter. Objects whose names, aside from the prefix, contain delimiter will have their name, truncated after the delimiter, returned in prefixes. Duplicate prefixes are omitted.", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "1000", + "description": "Maximum number of items plus prefixes to return in a single page of responses. As duplicate prefixes are omitted, fewer total results may be returned than requested. The service will use this parameter or 1,000 items, whichever is smaller.", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "pageToken": { + "description": "A previously-returned page token representing part of the larger set of results to view.", + "location": "query", + "type": "string" + }, + "prefix": { + "description": "Filter results to objects whose names begin with this prefix.", + "location": "query", + "type": "string" + }, + "projection": { + "description": "Set of properties to return. Defaults to noAcl.", + "enum": [ + "full", + "noAcl" + ], + "enumDescriptions": [ + "Include all properties.", + "Omit the owner, acl property." + ], + "location": "query", + "type": "string" + }, + "userProject": { + "description": "The project to be billed for this request. Required for Requester Pays buckets.", + "location": "query", + "type": "string" + }, + "versions": { + "description": "If true, lists all versions of an object as distinct results. The default is false. For more information, see Object Versioning.", + "location": "query", + "type": "boolean" + } + }, + "path": "b/{bucket}/o/watch", + "request": { + "$ref": "Channel", + "parameterName": "resource" + }, + "response": { + "$ref": "Channel" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/devstorage.full_control", + "https://www.googleapis.com/auth/devstorage.read_only", + "https://www.googleapis.com/auth/devstorage.read_write" + ], + "supportsSubscription": true + } + } + }, + "projects": { + "resources": { + "serviceAccount": { + "methods": { + "get": { + "description": "Get the email address of this project's Google Cloud Storage service account.", + "httpMethod": "GET", + "id": "storage.projects.serviceAccount.get", + "parameterOrder": [ + "projectId" + ], + "parameters": { + "projectId": { + "description": "Project ID", + "location": "path", + "required": true, + "type": "string" + }, + "userProject": { + "description": "The project to be billed for this request.", + "location": "query", + "type": "string" + } + }, + "path": "projects/{projectId}/serviceAccount", + "response": { + "$ref": "ServiceAccount" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/devstorage.full_control", + "https://www.googleapis.com/auth/devstorage.read_only", + "https://www.googleapis.com/auth/devstorage.read_write" + ] + } + } } - }, - "parameterOrder": [ - "projectId" - ], - "response": { - "$ref": "ServiceAccount" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/devstorage.full_control", - "https://www.googleapis.com/auth/devstorage.read_only", - "https://www.googleapis.com/auth/devstorage.read_write" - ] } - } } - } - } - } -} + }, + "revision": "20180305", + "rootUrl": "https://www.googleapis.com/", + "schemas": { + "Bucket": { + "description": "A bucket.", + "id": "Bucket", + "properties": { + "acl": { + "annotations": { + "required": [ + "storage.buckets.update" + ] + }, + "description": "Access controls on the bucket.", + "items": { + "$ref": "BucketAccessControl" + }, + "type": "array" + }, + "billing": { + "description": "The bucket's billing configuration.", + "properties": { + "requesterPays": { + "description": "When set to true, Requester Pays is enabled for this bucket.", + "type": "boolean" + } + }, + "type": "object" + }, + "cors": { + "description": "The bucket's Cross-Origin Resource Sharing (CORS) configuration.", + "items": { + "properties": { + "maxAgeSeconds": { + "description": "The value, in seconds, to return in the Access-Control-Max-Age header used in preflight responses.", + "format": "int32", + "type": "integer" + }, + "method": { + "description": "The list of HTTP methods on which to include CORS response headers, (GET, OPTIONS, POST, etc) Note: \"*\" is permitted in the list of methods, and means \"any method\".", + "items": { + "type": "string" + }, + "type": "array" + }, + "origin": { + "description": "The list of Origins eligible to receive CORS response headers. Note: \"*\" is permitted in the list of origins, and means \"any Origin\".", + "items": { + "type": "string" + }, + "type": "array" + }, + "responseHeader": { + "description": "The list of HTTP headers other than the simple response headers to give permission for the user-agent to share across domains.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "type": "array" + }, + "defaultEventBasedHold": { + "description": "Defines the default value for Event-Based hold on newly created objects in this bucket. Event-Based hold is a way to retain objects indefinitely until an event occurs, signified by the hold's release. After being released, such objects will be subject to bucket-level retention (if any). One sample use case of this flag is for banks to hold loan documents for at least 3 years after loan is paid in full. Here bucket-level retention is 3 years and the event is loan being paid in full. In this example these objects will be held intact for any number of years until the event has occurred (hold is released) and then 3 more years after that. Objects under Event-Based hold cannot be deleted, overwritten or archived until the hold is removed.", + "type": "boolean" + }, + "defaultObjectAcl": { + "description": "Default access controls to apply to new objects when no ACL is provided.", + "items": { + "$ref": "ObjectAccessControl" + }, + "type": "array" + }, + "encryption": { + "description": "Encryption configuration used by default for newly inserted objects, when no encryption config is specified.", + "properties": { + "defaultKmsKeyName": { + "description": "A Cloud KMS key that will be used to encrypt objects inserted into this bucket, if no encryption method is specified. Limited availability; usable only by enabled projects.", + "type": "string" + } + }, + "type": "object" + }, + "etag": { + "description": "HTTP 1.1 Entity tag for the bucket.", + "type": "string" + }, + "id": { + "description": "The ID of the bucket. For buckets, the id and name properties are the same.", + "type": "string" + }, + "kind": { + "default": "storage#bucket", + "description": "The kind of item this is. For buckets, this is always storage#bucket.", + "type": "string" + }, + "labels": { + "additionalProperties": { + "description": "An individual label entry.", + "type": "string" + }, + "description": "User-provided labels, in key/value pairs.", + "type": "object" + }, + "lifecycle": { + "description": "The bucket's lifecycle configuration. See lifecycle management for more information.", + "properties": { + "rule": { + "description": "A lifecycle management rule, which is made of an action to take and the condition(s) under which the action will be taken.", + "items": { + "properties": { + "action": { + "description": "The action to take.", + "properties": { + "storageClass": { + "description": "Target storage class. Required iff the type of the action is SetStorageClass.", + "type": "string" + }, + "type": { + "description": "Type of the action. Currently, only Delete and SetStorageClass are supported.", + "type": "string" + } + }, + "type": "object" + }, + "condition": { + "description": "The condition(s) under which the action will be taken.", + "properties": { + "age": { + "description": "Age of an object (in days). This condition is satisfied when an object reaches the specified age.", + "format": "int32", + "type": "integer" + }, + "createdBefore": { + "description": "A date in RFC 3339 format with only the date part (for instance, \"2013-01-15\"). This condition is satisfied when an object is created before midnight of the specified date in UTC.", + "format": "date", + "type": "string" + }, + "isLive": { + "description": "Relevant only for versioned objects. If the value is true, this condition matches live objects; if the value is false, it matches archived objects.", + "type": "boolean" + }, + "matchesStorageClass": { + "description": "Objects having any of the storage classes specified by this condition will be matched. Values include MULTI_REGIONAL, REGIONAL, NEARLINE, COLDLINE, STANDARD, and DURABLE_REDUCED_AVAILABILITY.", + "items": { + "type": "string" + }, + "type": "array" + }, + "numNewerVersions": { + "description": "Relevant only for versioned objects. If the value is N, this condition is satisfied when there are at least N versions (including the live version) newer than this version of the object.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "type": "array" + } + }, + "type": "object" + }, + "location": { + "description": "The location of the bucket. Object data for objects in the bucket resides in physical storage within this region. Defaults to US. See the developer's guide for the authoritative list.", + "type": "string" + }, + "logging": { + "description": "The bucket's logging configuration, which defines the destination bucket and optional name prefix for the current bucket's logs.", + "properties": { + "logBucket": { + "description": "The destination bucket where the current bucket's logs should be placed.", + "type": "string" + }, + "logObjectPrefix": { + "description": "A prefix for log object names.", + "type": "string" + } + }, + "type": "object" + }, + "metageneration": { + "description": "The metadata generation of this bucket.", + "format": "int64", + "type": "string" + }, + "name": { + "annotations": { + "required": [ + "storage.buckets.insert" + ] + }, + "description": "The name of the bucket.", + "type": "string" + }, + "owner": { + "description": "The owner of the bucket. This is always the project team's owner group.", + "properties": { + "entity": { + "description": "The entity, in the form project-owner-projectId.", + "type": "string" + }, + "entityId": { + "description": "The ID for the entity.", + "type": "string" + } + }, + "type": "object" + }, + "projectNumber": { + "description": "The project number of the project the bucket belongs to.", + "format": "uint64", + "type": "string" + }, + "retentionPolicy": { + "description": "Defines the retention policy for a bucket. The Retention policy enforces a minimum retention time for all objects contained in the bucket, based on their creation time. Any attempt to overwrite or delete objects younger than the retention period will result in a PERMISSION_DENIED error. An unlocked retention policy can be modified or removed from the bucket via the UpdateBucketMetadata RPC. A locked retention policy cannot be removed or shortened in duration for the lifetime of the bucket. Attempting to remove or decrease period of a locked retention policy will result in a PERMISSION_DENIED error.", + "properties": { + "effectiveTime": { + "description": "The time from which policy was enforced and effective. RFC 3339 format.", + "format": "date-time", + "type": "string" + }, + "isLocked": { + "description": "Once locked, an object retention policy cannot be modified.", + "type": "boolean" + }, + "retentionPeriod": { + "description": "Specifies the duration that objects need to be retained. Retention duration must be greater than zero and less than 100 years. Note that enforcement of retention periods less than a day is not guaranteed. Such periods should only be used for testing purposes.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "selfLink": { + "description": "The URI of this bucket.", + "type": "string" + }, + "storageClass": { + "description": "The bucket's default storage class, used whenever no storageClass is specified for a newly-created object. This defines how objects in the bucket are stored and determines the SLA and the cost of storage. Values include MULTI_REGIONAL, REGIONAL, STANDARD, NEARLINE, COLDLINE, and DURABLE_REDUCED_AVAILABILITY. If this value is not specified when the bucket is created, it will default to STANDARD. For more information, see storage classes.", + "type": "string" + }, + "timeCreated": { + "description": "The creation time of the bucket in RFC 3339 format.", + "format": "date-time", + "type": "string" + }, + "updated": { + "description": "The modification time of the bucket in RFC 3339 format.", + "format": "date-time", + "type": "string" + }, + "versioning": { + "description": "The bucket's versioning configuration.", + "properties": { + "enabled": { + "description": "While set to true, versioning is fully enabled for this bucket.", + "type": "boolean" + } + }, + "type": "object" + }, + "website": { + "description": "The bucket's website configuration, controlling how the service behaves when accessing bucket contents as a web site. See the Static Website Examples for more information.", + "properties": { + "mainPageSuffix": { + "description": "If the requested object path is missing, the service will ensure the path has a trailing '/', append this suffix, and attempt to retrieve the resulting object. This allows the creation of index.html objects to represent directory pages.", + "type": "string" + }, + "notFoundPage": { + "description": "If the requested object path is missing, and any mainPageSuffix object is missing, if applicable, the service will return the named object from this bucket as the content for a 404 Not Found result.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "BucketAccessControl": { + "description": "An access-control entry.", + "id": "BucketAccessControl", + "properties": { + "bucket": { + "description": "The name of the bucket.", + "type": "string" + }, + "domain": { + "description": "The domain associated with the entity, if any.", + "type": "string" + }, + "email": { + "description": "The email address associated with the entity, if any.", + "type": "string" + }, + "entity": { + "annotations": { + "required": [ + "storage.bucketAccessControls.insert" + ] + }, + "description": "The entity holding the permission, in one of the following forms: \n- user-userId \n- user-email \n- group-groupId \n- group-email \n- domain-domain \n- project-team-projectId \n- allUsers \n- allAuthenticatedUsers Examples: \n- The user liz@example.com would be user-liz@example.com. \n- The group example@googlegroups.com would be group-example@googlegroups.com. \n- To refer to all members of the Google Apps for Business domain example.com, the entity would be domain-example.com.", + "type": "string" + }, + "entityId": { + "description": "The ID for the entity, if any.", + "type": "string" + }, + "etag": { + "description": "HTTP 1.1 Entity tag for the access-control entry.", + "type": "string" + }, + "id": { + "description": "The ID of the access-control entry.", + "type": "string" + }, + "kind": { + "default": "storage#bucketAccessControl", + "description": "The kind of item this is. For bucket access control entries, this is always storage#bucketAccessControl.", + "type": "string" + }, + "projectTeam": { + "description": "The project team associated with the entity, if any.", + "properties": { + "projectNumber": { + "description": "The project number.", + "type": "string" + }, + "team": { + "description": "The team.", + "type": "string" + } + }, + "type": "object" + }, + "role": { + "annotations": { + "required": [ + "storage.bucketAccessControls.insert" + ] + }, + "description": "The access permission for the entity.", + "type": "string" + }, + "selfLink": { + "description": "The link to this access-control entry.", + "type": "string" + } + }, + "type": "object" + }, + "BucketAccessControls": { + "description": "An access-control list.", + "id": "BucketAccessControls", + "properties": { + "items": { + "description": "The list of items.", + "items": { + "$ref": "BucketAccessControl" + }, + "type": "array" + }, + "kind": { + "default": "storage#bucketAccessControls", + "description": "The kind of item this is. For lists of bucket access control entries, this is always storage#bucketAccessControls.", + "type": "string" + } + }, + "type": "object" + }, + "Buckets": { + "description": "A list of buckets.", + "id": "Buckets", + "properties": { + "items": { + "description": "The list of items.", + "items": { + "$ref": "Bucket" + }, + "type": "array" + }, + "kind": { + "default": "storage#buckets", + "description": "The kind of item this is. For lists of buckets, this is always storage#buckets.", + "type": "string" + }, + "nextPageToken": { + "description": "The continuation token, used to page through large result sets. Provide this value in a subsequent request to return the next page of results.", + "type": "string" + } + }, + "type": "object" + }, + "Channel": { + "description": "An notification channel used to watch for resource changes.", + "id": "Channel", + "properties": { + "address": { + "description": "The address where notifications are delivered for this channel.", + "type": "string" + }, + "expiration": { + "description": "Date and time of notification channel expiration, expressed as a Unix timestamp, in milliseconds. Optional.", + "format": "int64", + "type": "string" + }, + "id": { + "description": "A UUID or similar unique string that identifies this channel.", + "type": "string" + }, + "kind": { + "default": "api#channel", + "description": "Identifies this as a notification channel used to watch for changes to a resource. Value: the fixed string \"api#channel\".", + "type": "string" + }, + "params": { + "additionalProperties": { + "description": "Declares a new parameter by name.", + "type": "string" + }, + "description": "Additional parameters controlling delivery channel behavior. Optional.", + "type": "object" + }, + "payload": { + "description": "A Boolean value to indicate whether payload is wanted. Optional.", + "type": "boolean" + }, + "resourceId": { + "description": "An opaque ID that identifies the resource being watched on this channel. Stable across different API versions.", + "type": "string" + }, + "resourceUri": { + "description": "A version-specific identifier for the watched resource.", + "type": "string" + }, + "token": { + "description": "An arbitrary string delivered to the target address with each notification delivered over this channel. Optional.", + "type": "string" + }, + "type": { + "description": "The type of delivery mechanism used for this channel.", + "type": "string" + } + }, + "type": "object" + }, + "ComposeRequest": { + "description": "A Compose request.", + "id": "ComposeRequest", + "properties": { + "destination": { + "$ref": "Object", + "description": "Properties of the resulting object." + }, + "kind": { + "default": "storage#composeRequest", + "description": "The kind of item this is.", + "type": "string" + }, + "sourceObjects": { + "annotations": { + "required": [ + "storage.objects.compose" + ] + }, + "description": "The list of source objects that will be concatenated into a single object.", + "items": { + "properties": { + "generation": { + "description": "The generation of this object to use as the source.", + "format": "int64", + "type": "string" + }, + "name": { + "annotations": { + "required": [ + "storage.objects.compose" + ] + }, + "description": "The source object's name. The source object's bucket is implicitly the destination bucket.", + "type": "string" + }, + "objectPreconditions": { + "description": "Conditions that must be met for this operation to execute.", + "properties": { + "ifGenerationMatch": { + "description": "Only perform the composition if the generation of the source object that would be used matches this value. If this value and a generation are both specified, they must be the same value or the call will fail.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "type": "array" + } + }, + "type": "object" + }, + "Notification": { + "description": "A subscription to receive Google PubSub notifications.", + "id": "Notification", + "properties": { + "custom_attributes": { + "additionalProperties": { + "type": "string" + }, + "description": "An optional list of additional attributes to attach to each Cloud PubSub message published for this notification subscription.", + "type": "object" + }, + "etag": { + "description": "HTTP 1.1 Entity tag for this subscription notification.", + "type": "string" + }, + "event_types": { + "description": "If present, only send notifications about listed event types. If empty, sent notifications for all event types.", + "items": { + "type": "string" + }, + "type": "array" + }, + "id": { + "description": "The ID of the notification.", + "type": "string" + }, + "kind": { + "default": "storage#notification", + "description": "The kind of item this is. For notifications, this is always storage#notification.", + "type": "string" + }, + "object_name_prefix": { + "description": "If present, only apply this notification configuration to object names that begin with this prefix.", + "type": "string" + }, + "payload_format": { + "annotations": { + "required": [ + "storage.notifications.insert" + ] + }, + "default": "JSON_API_V1", + "description": "The desired content of the Payload.", + "type": "string" + }, + "selfLink": { + "description": "The canonical URL of this notification.", + "type": "string" + }, + "topic": { + "annotations": { + "required": [ + "storage.notifications.insert" + ] + }, + "description": "The Cloud PubSub topic to which this subscription publishes. Formatted as: '//pubsub.googleapis.com/projects/{project-identifier}/topics/{my-topic}'", + "type": "string" + } + }, + "type": "object" + }, + "Notifications": { + "description": "A list of notification subscriptions.", + "id": "Notifications", + "properties": { + "items": { + "description": "The list of items.", + "items": { + "$ref": "Notification" + }, + "type": "array" + }, + "kind": { + "default": "storage#notifications", + "description": "The kind of item this is. For lists of notifications, this is always storage#notifications.", + "type": "string" + } + }, + "type": "object" + }, + "Object": { + "description": "An object.", + "id": "Object", + "properties": { + "acl": { + "annotations": { + "required": [ + "storage.objects.update" + ] + }, + "description": "Access controls on the object.", + "items": { + "$ref": "ObjectAccessControl" + }, + "type": "array" + }, + "bucket": { + "description": "The name of the bucket containing this object.", + "type": "string" + }, + "cacheControl": { + "description": "Cache-Control directive for the object data. If omitted, and the object is accessible to all anonymous users, the default will be public, max-age=3600.", + "type": "string" + }, + "componentCount": { + "description": "Number of underlying components that make up this object. Components are accumulated by compose operations.", + "format": "int32", + "type": "integer" + }, + "contentDisposition": { + "description": "Content-Disposition of the object data.", + "type": "string" + }, + "contentEncoding": { + "description": "Content-Encoding of the object data.", + "type": "string" + }, + "contentLanguage": { + "description": "Content-Language of the object data.", + "type": "string" + }, + "contentType": { + "description": "Content-Type of the object data. If an object is stored without a Content-Type, it is served as application/octet-stream.", + "type": "string" + }, + "crc32c": { + "description": "CRC32c checksum, as described in RFC 4960, Appendix B; encoded using base64 in big-endian byte order. For more information about using the CRC32c checksum, see Hashes and ETags: Best Practices.", + "type": "string" + }, + "customerEncryption": { + "description": "Metadata of customer-supplied encryption key, if the object is encrypted by such a key.", + "properties": { + "encryptionAlgorithm": { + "description": "The encryption algorithm.", + "type": "string" + }, + "keySha256": { + "description": "SHA256 hash value of the encryption key.", + "type": "string" + } + }, + "type": "object" + }, + "etag": { + "description": "HTTP 1.1 Entity tag for the object.", + "type": "string" + }, + "eventBasedHold": { + "description": "Defines the Event-Based hold for an object. Event-Based hold is a way to retain objects indefinitely until an event occurs, signified by the hold's release. After being released, such objects will be subject to bucket-level retention (if any). One sample use case of this flag is for banks to hold loan documents for at least 3 years after loan is paid in full. Here bucket-level retention is 3 years and the event is loan being paid in full. In this example these objects will be held intact for any number of years until the event has occurred (hold is released) and then 3 more years after that.", + "type": "boolean" + }, + "generation": { + "description": "The content generation of this object. Used for object versioning.", + "format": "int64", + "type": "string" + }, + "id": { + "description": "The ID of the object, including the bucket name, object name, and generation number.", + "type": "string" + }, + "kind": { + "default": "storage#object", + "description": "The kind of item this is. For objects, this is always storage#object.", + "type": "string" + }, + "kmsKeyName": { + "description": "Cloud KMS Key used to encrypt this object, if the object is encrypted by such a key. Limited availability; usable only by enabled projects.", + "type": "string" + }, + "md5Hash": { + "description": "MD5 hash of the data; encoded using base64. For more information about using the MD5 hash, see Hashes and ETags: Best Practices.", + "type": "string" + }, + "mediaLink": { + "description": "Media download link.", + "type": "string" + }, + "metadata": { + "additionalProperties": { + "description": "An individual metadata entry.", + "type": "string" + }, + "description": "User-provided metadata, in key/value pairs.", + "type": "object" + }, + "metageneration": { + "description": "The version of the metadata for this object at this generation. Used for preconditions and for detecting changes in metadata. A metageneration number is only meaningful in the context of a particular generation of a particular object.", + "format": "int64", + "type": "string" + }, + "name": { + "description": "The name of the object. Required if not specified by URL parameter.", + "type": "string" + }, + "owner": { + "description": "The owner of the object. This will always be the uploader of the object.", + "properties": { + "entity": { + "description": "The entity, in the form user-userId.", + "type": "string" + }, + "entityId": { + "description": "The ID for the entity.", + "type": "string" + } + }, + "type": "object" + }, + "retentionExpirationTime": { + "description": "Specifies the earliest time that the object's retention period expires. This value is server-determined and is in RFC 3339 format. Note 1: This field is not provided for objects with an active Event-Based hold, since retention expiration is unknown until the hold is removed. Note 2: This value can be provided even when TemporaryHold is set (so that the user can reason about policy without having to first unset the TemporaryHold).", + "format": "date-time", + "type": "string" + }, + "selfLink": { + "description": "The link to this object.", + "type": "string" + }, + "size": { + "description": "Content-Length of the data in bytes.", + "format": "uint64", + "type": "string" + }, + "storageClass": { + "description": "Storage class of the object.", + "type": "string" + }, + "temporaryHold": { + "description": "Defines the temporary hold for an object. This flag is used to enforce a temporary hold on an object. While it is set to true, the object is protected against deletion and overwrites. A common use case of this flag is regulatory investigations where objects need to be retained while the investigation is ongoing.", + "type": "boolean" + }, + "timeCreated": { + "description": "The creation time of the object in RFC 3339 format.", + "format": "date-time", + "type": "string" + }, + "timeDeleted": { + "description": "The deletion time of the object in RFC 3339 format. Will be returned if and only if this version of the object has been deleted.", + "format": "date-time", + "type": "string" + }, + "timeStorageClassUpdated": { + "description": "The time at which the object's storage class was last changed. When the object is initially created, it will be set to timeCreated.", + "format": "date-time", + "type": "string" + }, + "updated": { + "description": "The modification time of the object metadata in RFC 3339 format.", + "format": "date-time", + "type": "string" + } + }, + "type": "object" + }, + "ObjectAccessControl": { + "description": "An access-control entry.", + "id": "ObjectAccessControl", + "properties": { + "bucket": { + "description": "The name of the bucket.", + "type": "string" + }, + "domain": { + "description": "The domain associated with the entity, if any.", + "type": "string" + }, + "email": { + "description": "The email address associated with the entity, if any.", + "type": "string" + }, + "entity": { + "annotations": { + "required": [ + "storage.defaultObjectAccessControls.insert", + "storage.objectAccessControls.insert" + ] + }, + "description": "The entity holding the permission, in one of the following forms: \n- user-userId \n- user-email \n- group-groupId \n- group-email \n- domain-domain \n- project-team-projectId \n- allUsers \n- allAuthenticatedUsers Examples: \n- The user liz@example.com would be user-liz@example.com. \n- The group example@googlegroups.com would be group-example@googlegroups.com. \n- To refer to all members of the Google Apps for Business domain example.com, the entity would be domain-example.com.", + "type": "string" + }, + "entityId": { + "description": "The ID for the entity, if any.", + "type": "string" + }, + "etag": { + "description": "HTTP 1.1 Entity tag for the access-control entry.", + "type": "string" + }, + "generation": { + "description": "The content generation of the object, if applied to an object.", + "format": "int64", + "type": "string" + }, + "id": { + "description": "The ID of the access-control entry.", + "type": "string" + }, + "kind": { + "default": "storage#objectAccessControl", + "description": "The kind of item this is. For object access control entries, this is always storage#objectAccessControl.", + "type": "string" + }, + "object": { + "description": "The name of the object, if applied to an object.", + "type": "string" + }, + "projectTeam": { + "description": "The project team associated with the entity, if any.", + "properties": { + "projectNumber": { + "description": "The project number.", + "type": "string" + }, + "team": { + "description": "The team.", + "type": "string" + } + }, + "type": "object" + }, + "role": { + "annotations": { + "required": [ + "storage.defaultObjectAccessControls.insert", + "storage.objectAccessControls.insert" + ] + }, + "description": "The access permission for the entity.", + "type": "string" + }, + "selfLink": { + "description": "The link to this access-control entry.", + "type": "string" + } + }, + "type": "object" + }, + "ObjectAccessControls": { + "description": "An access-control list.", + "id": "ObjectAccessControls", + "properties": { + "items": { + "description": "The list of items.", + "items": { + "$ref": "ObjectAccessControl" + }, + "type": "array" + }, + "kind": { + "default": "storage#objectAccessControls", + "description": "The kind of item this is. For lists of object access control entries, this is always storage#objectAccessControls.", + "type": "string" + } + }, + "type": "object" + }, + "Objects": { + "description": "A list of objects.", + "id": "Objects", + "properties": { + "items": { + "description": "The list of items.", + "items": { + "$ref": "Object" + }, + "type": "array" + }, + "kind": { + "default": "storage#objects", + "description": "The kind of item this is. For lists of objects, this is always storage#objects.", + "type": "string" + }, + "nextPageToken": { + "description": "The continuation token, used to page through large result sets. Provide this value in a subsequent request to return the next page of results.", + "type": "string" + }, + "prefixes": { + "description": "The list of prefixes of objects matching-but-not-listed up to and including the requested delimiter.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "Policy": { + "description": "A bucket/object IAM policy.", + "id": "Policy", + "properties": { + "bindings": { + "annotations": { + "required": [ + "storage.buckets.setIamPolicy", + "storage.objects.setIamPolicy" + ] + }, + "description": "An association between a role, which comes with a set of permissions, and members who may assume that role.", + "items": { + "properties": { + "condition": { + "type": "any" + }, + "members": { + "annotations": { + "required": [ + "storage.buckets.setIamPolicy", + "storage.objects.setIamPolicy" + ] + }, + "description": "A collection of identifiers for members who may assume the provided role. Recognized identifiers are as follows: \n- allUsers — A special identifier that represents anyone on the internet; with or without a Google account. \n- allAuthenticatedUsers — A special identifier that represents anyone who is authenticated with a Google account or a service account. \n- user:emailid — An email address that represents a specific account. For example, user:alice@gmail.com or user:joe@example.com. \n- serviceAccount:emailid — An email address that represents a service account. For example, serviceAccount:my-other-app@appspot.gserviceaccount.com . \n- group:emailid — An email address that represents a Google group. For example, group:admins@example.com. \n- domain:domain — A Google Apps domain name that represents all the users of that domain. For example, domain:google.com or domain:example.com. \n- projectOwner:projectid — Owners of the given project. For example, projectOwner:my-example-project \n- projectEditor:projectid — Editors of the given project. For example, projectEditor:my-example-project \n- projectViewer:projectid — Viewers of the given project. For example, projectViewer:my-example-project", + "items": { + "type": "string" + }, + "type": "array" + }, + "role": { + "annotations": { + "required": [ + "storage.buckets.setIamPolicy", + "storage.objects.setIamPolicy" + ] + }, + "description": "The role to which members belong. Two types of roles are supported: new IAM roles, which grant permissions that do not map directly to those provided by ACLs, and legacy IAM roles, which do map directly to ACL permissions. All roles are of the format roles/storage.specificRole.\nThe new IAM roles are: \n- roles/storage.admin — Full control of Google Cloud Storage resources. \n- roles/storage.objectViewer — Read-Only access to Google Cloud Storage objects. \n- roles/storage.objectCreator — Access to create objects in Google Cloud Storage. \n- roles/storage.objectAdmin — Full control of Google Cloud Storage objects. The legacy IAM roles are: \n- roles/storage.legacyObjectReader — Read-only access to objects without listing. Equivalent to an ACL entry on an object with the READER role. \n- roles/storage.legacyObjectOwner — Read/write access to existing objects without listing. Equivalent to an ACL entry on an object with the OWNER role. \n- roles/storage.legacyBucketReader — Read access to buckets with object listing. Equivalent to an ACL entry on a bucket with the READER role. \n- roles/storage.legacyBucketWriter — Read access to buckets with object listing/creation/deletion. Equivalent to an ACL entry on a bucket with the WRITER role. \n- roles/storage.legacyBucketOwner — Read and write access to existing buckets with object listing/creation/deletion. Equivalent to an ACL entry on a bucket with the OWNER role.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "etag": { + "description": "HTTP 1.1 Entity tag for the policy.", + "format": "byte", + "type": "string" + }, + "kind": { + "default": "storage#policy", + "description": "The kind of item this is. For policies, this is always storage#policy. This field is ignored on input.", + "type": "string" + }, + "resourceId": { + "description": "The ID of the resource to which this policy belongs. Will be of the form projects/_/buckets/bucket for buckets, and projects/_/buckets/bucket/objects/object for objects. A specific generation may be specified by appending #generationNumber to the end of the object name, e.g. projects/_/buckets/my-bucket/objects/data.txt#17. The current generation can be denoted with #0. This field is ignored on input.", + "type": "string" + } + }, + "type": "object" + }, + "RewriteResponse": { + "description": "A rewrite response.", + "id": "RewriteResponse", + "properties": { + "done": { + "description": "true if the copy is finished; otherwise, false if the copy is in progress. This property is always present in the response.", + "type": "boolean" + }, + "kind": { + "default": "storage#rewriteResponse", + "description": "The kind of item this is.", + "type": "string" + }, + "objectSize": { + "description": "The total size of the object being copied in bytes. This property is always present in the response.", + "format": "int64", + "type": "string" + }, + "resource": { + "$ref": "Object", + "description": "A resource containing the metadata for the copied-to object. This property is present in the response only when copying completes." + }, + "rewriteToken": { + "description": "A token to use in subsequent requests to continue copying data. This token is present in the response only when there is more data to copy.", + "type": "string" + }, + "totalBytesRewritten": { + "description": "The total bytes written so far, which can be used to provide a waiting user with a progress indicator. This property is always present in the response.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "ServiceAccount": { + "description": "A subscription to receive Google PubSub notifications.", + "id": "ServiceAccount", + "properties": { + "email_address": { + "description": "The ID of the notification.", + "type": "string" + }, + "kind": { + "default": "storage#serviceAccount", + "description": "The kind of item this is. For notifications, this is always storage#notification.", + "type": "string" + } + }, + "type": "object" + }, + "TestIamPermissionsResponse": { + "description": "A storage.(buckets|objects).testIamPermissions response.", + "id": "TestIamPermissionsResponse", + "properties": { + "kind": { + "default": "storage#testIamPermissionsResponse", + "description": "The kind of item this is.", + "type": "string" + }, + "permissions": { + "description": "The permissions held by the caller. Permissions are always of the format storage.resource.capability, where resource is one of buckets or objects. The supported permissions are as follows: \n- storage.buckets.delete — Delete bucket. \n- storage.buckets.get — Read bucket metadata. \n- storage.buckets.getIamPolicy — Read bucket IAM policy. \n- storage.buckets.create — Create bucket. \n- storage.buckets.list — List buckets. \n- storage.buckets.setIamPolicy — Update bucket IAM policy. \n- storage.buckets.update — Update bucket metadata. \n- storage.objects.delete — Delete object. \n- storage.objects.get — Read object data and metadata. \n- storage.objects.getIamPolicy — Read object IAM policy. \n- storage.objects.create — Create object. \n- storage.objects.list — List objects. \n- storage.objects.setIamPolicy — Update object IAM policy. \n- storage.objects.update — Update object metadata.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + } + }, + "servicePath": "storage/v1/", + "title": "Cloud Storage JSON API", + "version": "v1" +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/storage/v1/storage-gen.go b/vendor/google.golang.org/api/storage/v1/storage-gen.go index 283f55cb2..36846eb54 100644 --- a/vendor/google.golang.org/api/storage/v1/storage-gen.go +++ b/vendor/google.golang.org/api/storage/v1/storage-gen.go @@ -2513,8 +2513,7 @@ type BucketAccessControlsPatchCall struct { header_ http.Header } -// Patch: Updates an ACL entry on the specified bucket. This method -// supports patch semantics. +// Patch: Patches an ACL entry on the specified bucket. func (r *BucketAccessControlsService) Patch(bucket string, entity string, bucketaccesscontrol *BucketAccessControl) *BucketAccessControlsPatchCall { c := &BucketAccessControlsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.bucket = bucket @@ -2617,7 +2616,7 @@ func (c *BucketAccessControlsPatchCall) Do(opts ...googleapi.CallOption) (*Bucke } return ret, nil // { - // "description": "Updates an ACL entry on the specified bucket. This method supports patch semantics.", + // "description": "Patches an ACL entry on the specified bucket.", // "httpMethod": "PATCH", // "id": "storage.bucketAccessControls.patch", // "parameterOrder": [ @@ -5524,8 +5523,7 @@ type DefaultObjectAccessControlsPatchCall struct { header_ http.Header } -// Patch: Updates a default object ACL entry on the specified bucket. -// This method supports patch semantics. +// Patch: Patches a default object ACL entry on the specified bucket. func (r *DefaultObjectAccessControlsService) Patch(bucket string, entity string, objectaccesscontrol *ObjectAccessControl) *DefaultObjectAccessControlsPatchCall { c := &DefaultObjectAccessControlsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.bucket = bucket @@ -5628,7 +5626,7 @@ func (c *DefaultObjectAccessControlsPatchCall) Do(opts ...googleapi.CallOption) } return ret, nil // { - // "description": "Updates a default object ACL entry on the specified bucket. This method supports patch semantics.", + // "description": "Patches a default object ACL entry on the specified bucket.", // "httpMethod": "PATCH", // "id": "storage.defaultObjectAccessControls.patch", // "parameterOrder": [ @@ -7093,8 +7091,7 @@ type ObjectAccessControlsPatchCall struct { header_ http.Header } -// Patch: Updates an ACL entry on the specified object. This method -// supports patch semantics. +// Patch: Patches an ACL entry on the specified object. func (r *ObjectAccessControlsService) Patch(bucket string, object string, entity string, objectaccesscontrol *ObjectAccessControl) *ObjectAccessControlsPatchCall { c := &ObjectAccessControlsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.bucket = bucket @@ -7207,7 +7204,7 @@ func (c *ObjectAccessControlsPatchCall) Do(opts ...googleapi.CallOption) (*Objec } return ret, nil // { - // "description": "Updates an ACL entry on the specified object. This method supports patch semantics.", + // "description": "Patches an ACL entry on the specified object.", // "httpMethod": "PATCH", // "id": "storage.objectAccessControls.patch", // "parameterOrder": [ @@ -8931,11 +8928,12 @@ func (c *ObjectsInsertCall) doRequest(alt string) (*http.Response, error) { body = new(bytes.Buffer) reqHeaders.Set("Content-Type", "application/json") } - body, cleanup := c.mediaInfo_.UploadRequest(reqHeaders, body) + body, getBody, cleanup := c.mediaInfo_.UploadRequest(reqHeaders, body) defer cleanup() urls += "?" + c.urlParams_.Encode() req, _ := http.NewRequest("POST", urls, body) req.Header = reqHeaders + gensupport.SetGetBody(req, getBody) googleapi.Expand(req.URL, map[string]string{ "bucket": c.bucket, }) diff --git a/vendor/google.golang.org/api/storage/v1beta1/storage-api.json b/vendor/google.golang.org/api/storage/v1beta1/storage-api.json index 0749ed39a..2a55826fd 100644 --- a/vendor/google.golang.org/api/storage/v1beta1/storage-api.json +++ b/vendor/google.golang.org/api/storage/v1beta1/storage-api.json @@ -1,1427 +1,1427 @@ { - "kind": "discovery#restDescription", - "etag": "\"YWOzh2SDasdU84ArJnpYek-OMdg/MFBsd0cpXUnMtbb1xXb83mhHiCc\"", - "discoveryVersion": "v1", - "id": "storage:v1beta1", - "name": "storage", - "version": "v1beta1", - "revision": "20171212", - "title": "Cloud Storage JSON API", - "description": "Lets you store and retrieve potentially-large, immutable data objects.", - "ownerDomain": "google.com", - "ownerName": "Google", - "icons": { - "x16": "https://www.google.com/images/icons/product/cloud_storage-16.png", - "x32": "https://www.google.com/images/icons/product/cloud_storage-32.png" - }, - "documentationLink": "https://developers.google.com/storage/docs/json_api/", - "labels": [ - "labs" - ], - "protocol": "rest", - "baseUrl": "https://www.googleapis.com/storage/v1beta1/", - "basePath": "/storage/v1beta1/", - "rootUrl": "https://www.googleapis.com/", - "servicePath": "storage/v1beta1/", - "batchPath": "batch/storage/v1beta1", - "parameters": { - "alt": { - "type": "string", - "description": "Data format for the response.", - "default": "json", - "enum": [ - "json" - ], - "enumDescriptions": [ - "Responses with Content-Type of application/json" - ], - "location": "query" - }, - "fields": { - "type": "string", - "description": "Selector specifying which fields to include in a partial response.", - "location": "query" - }, - "key": { - "type": "string", - "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" - }, - "oauth_token": { - "type": "string", - "description": "OAuth 2.0 token for the current user.", - "location": "query" - }, - "prettyPrint": { - "type": "boolean", - "description": "Returns response with indentations and line breaks.", - "default": "true", - "location": "query" - }, - "quotaUser": { - "type": "string", - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", - "location": "query" - }, - "userIp": { - "type": "string", - "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", - "location": "query" - } - }, - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/devstorage.full_control": { - "description": "Manage your data and permissions in Google Cloud Storage" - }, - "https://www.googleapis.com/auth/devstorage.read_only": { - "description": "View your data in Google Cloud Storage" - }, - "https://www.googleapis.com/auth/devstorage.read_write": { - "description": "Manage your data in Google Cloud Storage" + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/devstorage.full_control": { + "description": "Manage your data and permissions in Google Cloud Storage" + }, + "https://www.googleapis.com/auth/devstorage.read_only": { + "description": "View your data in Google Cloud Storage" + }, + "https://www.googleapis.com/auth/devstorage.read_write": { + "description": "Manage your data in Google Cloud Storage" + } + } } - } - } - }, - "schemas": { - "Bucket": { - "id": "Bucket", - "type": "object", - "description": "A bucket.", - "properties": { - "acl": { - "type": "array", - "description": "Access controls on the bucket.", - "items": { - "$ref": "BucketAccessControl" - }, - "annotations": { - "required": [ - "storage.buckets.update" - ] - } - }, - "defaultObjectAcl": { - "type": "array", - "description": "Default access controls to apply to new objects when no ACL is provided.", - "items": { - "$ref": "ObjectAccessControl" - } - }, - "id": { - "type": "string", - "description": "The name of the bucket.", - "annotations": { - "required": [ - "storage.buckets.insert" - ] - } - }, - "kind": { - "type": "string", - "description": "The kind of item this is. For buckets, this is always storage#bucket.", - "default": "storage#bucket" - }, - "location": { - "type": "string", - "description": "The location of the bucket. Object data for objects in the bucket resides in physical storage in this location. Can be US or EU. Defaults to US." - }, - "owner": { - "type": "object", - "description": "The owner of the bucket. This will always be the project team's owner group.", - "properties": { - "entity": { - "type": "string", - "description": "The entity, in the form group-groupId." - }, - "entityId": { - "type": "string", - "description": "The ID for the entity." - } - } - }, - "projectId": { - "type": "string", - "description": "The project the bucket belongs to.", - "format": "uint64", - "annotations": { - "required": [ - "storage.buckets.insert" - ] - } - }, - "selfLink": { - "type": "string", - "description": "The URI of this bucket." - }, - "timeCreated": { - "type": "string", - "description": "Creation time of the bucket in RFC 3339 format.", - "format": "date-time" - }, - "website": { - "type": "object", - "description": "The bucket's website configuration.", - "properties": { - "mainPageSuffix": { - "type": "string", - "description": "Behaves as the bucket's directory index where missing objects are treated as potential directories." - }, - "notFoundPage": { - "type": "string", - "description": "The custom object to return when a requested resource is not found." - } - } - } - } }, - "BucketAccessControl": { - "id": "BucketAccessControl", - "type": "object", - "description": "An access-control entry.", - "properties": { - "bucket": { - "type": "string", - "description": "The name of the bucket." - }, - "domain": { - "type": "string", - "description": "The domain associated with the entity, if any." - }, - "email": { - "type": "string", - "description": "The email address associated with the entity, if any." - }, - "entity": { - "type": "string", - "description": "The entity holding the permission, in one of the following forms: \n- user-userId \n- user-email \n- group-groupId \n- group-email \n- domain-domain \n- allUsers \n- allAuthenticatedUsers Examples: \n- The user liz@example.com would be user-liz@example.com. \n- The group example@googlegroups.com would be group-example@googlegroups.com. \n- To refer to all members of the Google Apps for Business domain example.com, the entity would be domain-example.com.", - "annotations": { - "required": [ - "storage.bucketAccessControls.insert" - ] - } - }, - "entityId": { - "type": "string", - "description": "The ID for the entity, if any." - }, - "id": { - "type": "string", - "description": "The ID of the access-control entry." - }, - "kind": { - "type": "string", - "description": "The kind of item this is. For bucket access control entries, this is always storage#bucketAccessControl.", - "default": "storage#bucketAccessControl" - }, - "role": { - "type": "string", - "description": "The access permission for the entity. Can be READER, WRITER, or OWNER.", - "annotations": { - "required": [ - "storage.bucketAccessControls.insert" - ] - } - }, - "selfLink": { - "type": "string", - "description": "The link to this access-control entry." - } - } + "basePath": "/storage/v1beta1/", + "baseUrl": "https://www.googleapis.com/storage/v1beta1/", + "batchPath": "batch/storage/v1beta1", + "description": "Lets you store and retrieve potentially-large, immutable data objects.", + "discoveryVersion": "v1", + "documentationLink": "https://developers.google.com/storage/docs/json_api/", + "etag": "\"-iA1DTNe4s-I6JZXPt1t1Ypy8IU/KpCt-XuTAM17VmdjS5gtVk9Os3I\"", + "icons": { + "x16": "https://www.google.com/images/icons/product/cloud_storage-16.png", + "x32": "https://www.google.com/images/icons/product/cloud_storage-32.png" }, - "BucketAccessControls": { - "id": "BucketAccessControls", - "type": "object", - "description": "An access-control list.", - "properties": { - "items": { - "type": "array", - "description": "The list of items.", - "items": { - "$ref": "BucketAccessControl" - } - }, - "kind": { - "type": "string", - "description": "The kind of item this is. For lists of bucket access control entries, this is always storage#bucketAccessControls.", - "default": "storage#bucketAccessControls" - } - } - }, - "Buckets": { - "id": "Buckets", - "type": "object", - "description": "A list of buckets.", - "properties": { - "items": { - "type": "array", - "description": "The list of items.", - "items": { - "$ref": "Bucket" - } - }, - "kind": { - "type": "string", - "description": "The kind of item this is. For lists of buckets, this is always storage#buckets.", - "default": "storage#buckets" - }, - "nextPageToken": { - "type": "string", - "description": "The continuation token, used to page through large result sets. Provide this value in a subsequent request to return the next page of results." - } - } - }, - "Object": { - "id": "Object", - "type": "object", - "description": "An object.", - "properties": { - "acl": { - "type": "array", - "description": "Access controls on the object.", - "items": { - "$ref": "ObjectAccessControl" - }, - "annotations": { - "required": [ - "storage.objects.update" - ] - } - }, - "bucket": { - "type": "string", - "description": "The bucket containing this object." - }, - "cacheControl": { - "type": "string", - "description": "Cache-Control directive for the object data." - }, - "contentDisposition": { - "type": "string", - "description": "Content-Disposition of the object data." - }, - "contentEncoding": { - "type": "string", - "description": "Content-Encoding of the object data." - }, - "contentLanguage": { - "type": "string", - "description": "Content-Language of the object data." - }, - "id": { - "type": "string", - "description": "The ID of the object." - }, - "kind": { - "type": "string", - "description": "The kind of item this is. For objects, this is always storage#object.", - "default": "storage#object" - }, - "media": { - "type": "object", - "description": "Object media data. Provided on your behalf when uploading raw media or multipart/related with an auxiliary media part.", - "properties": { - "algorithm": { - "type": "string", - "description": "Hash algorithm used. Currently only MD5 is supported. Required if a hash is provided.", - "default": "MD5" - }, - "contentType": { - "type": "string", - "description": "Content-Type of the object data.", - "annotations": { - "required": [ - "storage.objects.insert", - "storage.objects.update" - ] - } - }, - "data": { - "type": "string", - "description": "URL-safe Base64-encoded data. This property can be used to insert objects under 64KB in size, and will only be returned in response to the get method for objects so created. When this resource is returned in response to the list method, this property is omitted.", - "format": "byte", - "annotations": { - "required": [ - "storage.objects.insert" - ] - } - }, - "hash": { - "type": "string", - "description": "Hash of the data. Required if a hash algorithm is provided." - }, - "length": { - "type": "string", - "description": "Content-Length of the data in bytes.", - "format": "uint64" - }, - "link": { - "type": "string", - "description": "Media download link." - }, - "timeCreated": { - "type": "string", - "description": "Creation time of the data in RFC 3339 format.", - "format": "date-time" - } - } - }, - "metadata": { - "type": "object", - "description": "User-provided metadata, in key/value pairs.", - "additionalProperties": { - "type": "string", - "description": "An individual metadata entry." - } - }, - "name": { - "type": "string", - "description": "The name of this object. Required if not specified by URL parameter." - }, - "owner": { - "type": "object", - "description": "The owner of the object. This will always be the uploader of the object.", - "properties": { - "entity": { - "type": "string", - "description": "The entity, in the form user-userId." - }, - "entityId": { - "type": "string", - "description": "The ID for the entity." - } - } - }, - "selfLink": { - "type": "string", - "description": "The link to this object." - } - } - }, - "ObjectAccessControl": { - "id": "ObjectAccessControl", - "type": "object", - "description": "An access-control entry.", - "properties": { - "bucket": { - "type": "string", - "description": "The name of the bucket." - }, - "domain": { - "type": "string", - "description": "The domain associated with the entity, if any." - }, - "email": { - "type": "string", - "description": "The email address associated with the entity, if any." - }, - "entity": { - "type": "string", - "description": "The entity holding the permission, in one of the following forms: \n- user-userId \n- user-email \n- group-groupId \n- group-email \n- domain-domain \n- allUsers \n- allAuthenticatedUsers Examples: \n- The user liz@example.com would be user-liz@example.com. \n- The group example@googlegroups.com would be group-example@googlegroups.com. \n- To refer to all members of the Google Apps for Business domain example.com, the entity would be domain-example.com.", - "annotations": { - "required": [ - "storage.objectAccessControls.insert" - ] - } - }, - "entityId": { - "type": "string", - "description": "The ID for the entity, if any." - }, - "id": { - "type": "string", - "description": "The ID of the access-control entry." - }, - "kind": { - "type": "string", - "description": "The kind of item this is. For object access control entries, this is always storage#objectAccessControl.", - "default": "storage#objectAccessControl" - }, - "object": { - "type": "string", - "description": "The name of the object." - }, - "role": { - "type": "string", - "description": "The access permission for the entity. Can be READER or OWNER.", - "annotations": { - "required": [ - "storage.objectAccessControls.insert" - ] - } - }, - "selfLink": { - "type": "string", - "description": "The link to this access-control entry." - } - } - }, - "ObjectAccessControls": { - "id": "ObjectAccessControls", - "type": "object", - "description": "An access-control list.", - "properties": { - "items": { - "type": "array", - "description": "The list of items.", - "items": { - "$ref": "ObjectAccessControl" - } - }, - "kind": { - "type": "string", - "description": "The kind of item this is. For lists of object access control entries, this is always storage#objectAccessControls.", - "default": "storage#objectAccessControls" - } - } - }, - "Objects": { - "id": "Objects", - "type": "object", - "description": "A list of objects.", - "properties": { - "items": { - "type": "array", - "description": "The list of items.", - "items": { - "$ref": "Object" - } - }, - "kind": { - "type": "string", - "description": "The kind of item this is. For lists of objects, this is always storage#objects.", - "default": "storage#objects" - }, - "nextPageToken": { - "type": "string", - "description": "The continuation token, used to page through large result sets. Provide this value in a subsequent request to return the next page of results." - }, - "prefixes": { - "type": "array", - "description": "The list of prefixes of objects matching-but-not-listed up to and including the requested delimiter.", - "items": { - "type": "string" - } - } - } - } - }, - "resources": { - "bucketAccessControls": { - "methods": { - "delete": { - "id": "storage.bucketAccessControls.delete", - "path": "b/{bucket}/acl/{entity}", - "httpMethod": "DELETE", - "description": "Deletes the ACL entry for the specified entity on the specified bucket.", - "parameters": { - "bucket": { - "type": "string", - "description": "Name of a bucket.", - "required": true, - "location": "path" - }, - "entity": { - "type": "string", - "description": "The entity holding the permission. Can be user-userId, user-emailAddress, group-groupId, group-emailAddress, allUsers, or allAuthenticatedUsers.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "bucket", - "entity" - ], - "scopes": [ - "https://www.googleapis.com/auth/devstorage.full_control" - ] - }, - "get": { - "id": "storage.bucketAccessControls.get", - "path": "b/{bucket}/acl/{entity}", - "httpMethod": "GET", - "description": "Returns the ACL entry for the specified entity on the specified bucket.", - "parameters": { - "bucket": { - "type": "string", - "description": "Name of a bucket.", - "required": true, - "location": "path" - }, - "entity": { - "type": "string", - "description": "The entity holding the permission. Can be user-userId, user-emailAddress, group-groupId, group-emailAddress, allUsers, or allAuthenticatedUsers.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "bucket", - "entity" - ], - "response": { - "$ref": "BucketAccessControl" - }, - "scopes": [ - "https://www.googleapis.com/auth/devstorage.full_control" - ] - }, - "insert": { - "id": "storage.bucketAccessControls.insert", - "path": "b/{bucket}/acl", - "httpMethod": "POST", - "description": "Creates a new ACL entry on the specified bucket.", - "parameters": { - "bucket": { - "type": "string", - "description": "Name of a bucket.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "bucket" - ], - "request": { - "$ref": "BucketAccessControl" - }, - "response": { - "$ref": "BucketAccessControl" - }, - "scopes": [ - "https://www.googleapis.com/auth/devstorage.full_control" - ] - }, - "list": { - "id": "storage.bucketAccessControls.list", - "path": "b/{bucket}/acl", - "httpMethod": "GET", - "description": "Retrieves ACL entries on the specified bucket.", - "parameters": { - "bucket": { - "type": "string", - "description": "Name of a bucket.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "bucket" - ], - "response": { - "$ref": "BucketAccessControls" - }, - "scopes": [ - "https://www.googleapis.com/auth/devstorage.full_control" - ] - }, - "patch": { - "id": "storage.bucketAccessControls.patch", - "path": "b/{bucket}/acl/{entity}", - "httpMethod": "PATCH", - "description": "Updates an ACL entry on the specified bucket. This method supports patch semantics.", - "parameters": { - "bucket": { - "type": "string", - "description": "Name of a bucket.", - "required": true, - "location": "path" - }, - "entity": { - "type": "string", - "description": "The entity holding the permission. Can be user-userId, user-emailAddress, group-groupId, group-emailAddress, allUsers, or allAuthenticatedUsers.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "bucket", - "entity" - ], - "request": { - "$ref": "BucketAccessControl" - }, - "response": { - "$ref": "BucketAccessControl" - }, - "scopes": [ - "https://www.googleapis.com/auth/devstorage.full_control" - ] - }, - "update": { - "id": "storage.bucketAccessControls.update", - "path": "b/{bucket}/acl/{entity}", - "httpMethod": "PUT", - "description": "Updates an ACL entry on the specified bucket.", - "parameters": { - "bucket": { - "type": "string", - "description": "Name of a bucket.", - "required": true, - "location": "path" - }, - "entity": { - "type": "string", - "description": "The entity holding the permission. Can be user-userId, user-emailAddress, group-groupId, group-emailAddress, allUsers, or allAuthenticatedUsers.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "bucket", - "entity" - ], - "request": { - "$ref": "BucketAccessControl" - }, - "response": { - "$ref": "BucketAccessControl" - }, - "scopes": [ - "https://www.googleapis.com/auth/devstorage.full_control" - ] - } - } - }, - "buckets": { - "methods": { - "delete": { - "id": "storage.buckets.delete", - "path": "b/{bucket}", - "httpMethod": "DELETE", - "description": "Deletes an empty bucket.", - "parameters": { - "bucket": { - "type": "string", - "description": "Name of a bucket.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "bucket" - ], - "scopes": [ - "https://www.googleapis.com/auth/devstorage.full_control", - "https://www.googleapis.com/auth/devstorage.read_write" - ] - }, - "get": { - "id": "storage.buckets.get", - "path": "b/{bucket}", - "httpMethod": "GET", - "description": "Returns metadata for the specified bucket.", - "parameters": { - "bucket": { - "type": "string", - "description": "Name of a bucket.", - "required": true, - "location": "path" - }, - "projection": { - "type": "string", - "description": "Set of properties to return. Defaults to no_acl.", - "enum": [ - "full", - "no_acl" - ], - "enumDescriptions": [ - "Include all properties.", - "Omit acl and defaultObjectAcl properties." - ], - "location": "query" - } - }, - "parameterOrder": [ - "bucket" - ], - "response": { - "$ref": "Bucket" - }, - "scopes": [ - "https://www.googleapis.com/auth/devstorage.full_control", - "https://www.googleapis.com/auth/devstorage.read_only", - "https://www.googleapis.com/auth/devstorage.read_write" - ] - }, - "insert": { - "id": "storage.buckets.insert", - "path": "b", - "httpMethod": "POST", - "description": "Creates a new bucket.", - "parameters": { - "projection": { - "type": "string", - "description": "Set of properties to return. Defaults to no_acl, unless the bucket resource specifies acl or defaultObjectAcl properties, when it defaults to full.", - "enum": [ - "full", - "no_acl" - ], - "enumDescriptions": [ - "Include all properties.", - "Omit acl and defaultObjectAcl properties." - ], - "location": "query" - } - }, - "request": { - "$ref": "Bucket" - }, - "response": { - "$ref": "Bucket" - }, - "scopes": [ - "https://www.googleapis.com/auth/devstorage.full_control", - "https://www.googleapis.com/auth/devstorage.read_write" - ] - }, - "list": { - "id": "storage.buckets.list", - "path": "b", - "httpMethod": "GET", - "description": "Retrieves a list of buckets for a given project.", - "parameters": { - "max-results": { - "type": "integer", - "description": "Maximum number of buckets to return.", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "A previously-returned page token representing part of the larger set of results to view.", - "location": "query" - }, - "projectId": { - "type": "string", - "description": "A valid API project identifier.", - "required": true, - "format": "uint64", - "location": "query" - }, - "projection": { - "type": "string", - "description": "Set of properties to return. Defaults to no_acl.", - "enum": [ - "full", - "no_acl" - ], - "enumDescriptions": [ - "Include all properties.", - "Omit acl and defaultObjectAcl properties." - ], - "location": "query" - } - }, - "parameterOrder": [ - "projectId" - ], - "response": { - "$ref": "Buckets" - }, - "scopes": [ - "https://www.googleapis.com/auth/devstorage.full_control", - "https://www.googleapis.com/auth/devstorage.read_only", - "https://www.googleapis.com/auth/devstorage.read_write" - ] - }, - "patch": { - "id": "storage.buckets.patch", - "path": "b/{bucket}", - "httpMethod": "PATCH", - "description": "Updates a bucket. This method supports patch semantics.", - "parameters": { - "bucket": { - "type": "string", - "description": "Name of a bucket.", - "required": true, - "location": "path" - }, - "projection": { - "type": "string", - "description": "Set of properties to return. Defaults to full.", - "enum": [ - "full", - "no_acl" - ], - "enumDescriptions": [ - "Include all properties.", - "Omit acl and defaultObjectAcl properties." - ], - "location": "query" - } - }, - "parameterOrder": [ - "bucket" - ], - "request": { - "$ref": "Bucket" - }, - "response": { - "$ref": "Bucket" - }, - "scopes": [ - "https://www.googleapis.com/auth/devstorage.full_control", - "https://www.googleapis.com/auth/devstorage.read_write" - ] - }, - "update": { - "id": "storage.buckets.update", - "path": "b/{bucket}", - "httpMethod": "PUT", - "description": "Updates a bucket.", - "parameters": { - "bucket": { - "type": "string", - "description": "Name of a bucket.", - "required": true, - "location": "path" - }, - "projection": { - "type": "string", - "description": "Set of properties to return. Defaults to full.", - "enum": [ - "full", - "no_acl" - ], - "enumDescriptions": [ - "Include all properties.", - "Omit acl and defaultObjectAcl properties." - ], - "location": "query" - } - }, - "parameterOrder": [ - "bucket" - ], - "request": { - "$ref": "Bucket" - }, - "response": { - "$ref": "Bucket" - }, - "scopes": [ - "https://www.googleapis.com/auth/devstorage.full_control", - "https://www.googleapis.com/auth/devstorage.read_write" - ] - } - } - }, - "objectAccessControls": { - "methods": { - "delete": { - "id": "storage.objectAccessControls.delete", - "path": "b/{bucket}/o/{object}/acl/{entity}", - "httpMethod": "DELETE", - "description": "Deletes the ACL entry for the specified entity on the specified object.", - "parameters": { - "bucket": { - "type": "string", - "description": "Name of a bucket.", - "required": true, - "location": "path" - }, - "entity": { - "type": "string", - "description": "The entity holding the permission. Can be user-userId, user-emailAddress, group-groupId, group-emailAddress, allUsers, or allAuthenticatedUsers.", - "required": true, - "location": "path" - }, - "object": { - "type": "string", - "description": "Name of the object.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "bucket", - "object", - "entity" - ], - "scopes": [ - "https://www.googleapis.com/auth/devstorage.full_control" - ] - }, - "get": { - "id": "storage.objectAccessControls.get", - "path": "b/{bucket}/o/{object}/acl/{entity}", - "httpMethod": "GET", - "description": "Returns the ACL entry for the specified entity on the specified object.", - "parameters": { - "bucket": { - "type": "string", - "description": "Name of a bucket.", - "required": true, - "location": "path" - }, - "entity": { - "type": "string", - "description": "The entity holding the permission. Can be user-userId, user-emailAddress, group-groupId, group-emailAddress, allUsers, or allAuthenticatedUsers.", - "required": true, - "location": "path" - }, - "object": { - "type": "string", - "description": "Name of the object.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "bucket", - "object", - "entity" - ], - "response": { - "$ref": "ObjectAccessControl" - }, - "scopes": [ - "https://www.googleapis.com/auth/devstorage.full_control" - ] - }, - "insert": { - "id": "storage.objectAccessControls.insert", - "path": "b/{bucket}/o/{object}/acl", - "httpMethod": "POST", - "description": "Creates a new ACL entry on the specified object.", - "parameters": { - "bucket": { - "type": "string", - "description": "Name of a bucket.", - "required": true, - "location": "path" - }, - "object": { - "type": "string", - "description": "Name of the object.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "bucket", - "object" - ], - "request": { - "$ref": "ObjectAccessControl" - }, - "response": { - "$ref": "ObjectAccessControl" - }, - "scopes": [ - "https://www.googleapis.com/auth/devstorage.full_control" - ] - }, - "list": { - "id": "storage.objectAccessControls.list", - "path": "b/{bucket}/o/{object}/acl", - "httpMethod": "GET", - "description": "Retrieves ACL entries on the specified object.", - "parameters": { - "bucket": { - "type": "string", - "description": "Name of a bucket.", - "required": true, - "location": "path" - }, - "object": { - "type": "string", - "description": "Name of the object.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "bucket", - "object" - ], - "response": { - "$ref": "ObjectAccessControls" - }, - "scopes": [ - "https://www.googleapis.com/auth/devstorage.full_control" - ] - }, - "patch": { - "id": "storage.objectAccessControls.patch", - "path": "b/{bucket}/o/{object}/acl/{entity}", - "httpMethod": "PATCH", - "description": "Updates an ACL entry on the specified object. This method supports patch semantics.", - "parameters": { - "bucket": { - "type": "string", - "description": "Name of a bucket.", - "required": true, - "location": "path" - }, - "entity": { - "type": "string", - "description": "The entity holding the permission. Can be user-userId, user-emailAddress, group-groupId, group-emailAddress, allUsers, or allAuthenticatedUsers.", - "required": true, - "location": "path" - }, - "object": { - "type": "string", - "description": "Name of the object.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "bucket", - "object", - "entity" - ], - "request": { - "$ref": "ObjectAccessControl" - }, - "response": { - "$ref": "ObjectAccessControl" - }, - "scopes": [ - "https://www.googleapis.com/auth/devstorage.full_control" - ] - }, - "update": { - "id": "storage.objectAccessControls.update", - "path": "b/{bucket}/o/{object}/acl/{entity}", - "httpMethod": "PUT", - "description": "Updates an ACL entry on the specified object.", - "parameters": { - "bucket": { - "type": "string", - "description": "Name of a bucket.", - "required": true, - "location": "path" - }, - "entity": { - "type": "string", - "description": "The entity holding the permission. Can be user-userId, user-emailAddress, group-groupId, group-emailAddress, allUsers, or allAuthenticatedUsers.", - "required": true, - "location": "path" - }, - "object": { - "type": "string", - "description": "Name of the object.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "bucket", - "object", - "entity" - ], - "request": { - "$ref": "ObjectAccessControl" - }, - "response": { - "$ref": "ObjectAccessControl" - }, - "scopes": [ - "https://www.googleapis.com/auth/devstorage.full_control" - ] - } - } - }, - "objects": { - "methods": { - "delete": { - "id": "storage.objects.delete", - "path": "b/{bucket}/o/{object}", - "httpMethod": "DELETE", - "description": "Deletes data blobs and associated metadata.", - "parameters": { - "bucket": { - "type": "string", - "description": "Name of the bucket in which the object resides.", - "required": true, - "location": "path" - }, - "object": { - "type": "string", - "description": "Name of the object.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "bucket", - "object" - ], - "scopes": [ - "https://www.googleapis.com/auth/devstorage.full_control", - "https://www.googleapis.com/auth/devstorage.read_write" - ] - }, - "get": { - "id": "storage.objects.get", - "path": "b/{bucket}/o/{object}", - "httpMethod": "GET", - "description": "Retrieves objects or their associated metadata.", - "parameters": { - "bucket": { - "type": "string", - "description": "Name of the bucket in which the object resides.", - "required": true, - "location": "path" - }, - "object": { - "type": "string", - "description": "Name of the object.", - "required": true, - "location": "path" - }, - "projection": { - "type": "string", - "description": "Set of properties to return. Defaults to no_acl.", - "enum": [ - "full", - "no_acl" - ], - "enumDescriptions": [ - "Include all properties.", - "Omit the acl property." - ], - "location": "query" - } - }, - "parameterOrder": [ - "bucket", - "object" - ], - "response": { - "$ref": "Object" - }, - "scopes": [ - "https://www.googleapis.com/auth/devstorage.full_control", - "https://www.googleapis.com/auth/devstorage.read_only", - "https://www.googleapis.com/auth/devstorage.read_write" - ], - "supportsMediaDownload": true - }, - "insert": { - "id": "storage.objects.insert", - "path": "b/{bucket}/o", - "httpMethod": "POST", - "description": "Stores new data blobs and associated metadata.", - "parameters": { - "bucket": { - "type": "string", - "description": "Name of the bucket in which to store the new object. Overrides the provided object metadata's bucket value, if any.", - "required": true, - "location": "path" - }, - "name": { - "type": "string", - "description": "Name of the object. Required when the object metadata is not otherwise provided. Overrides the object metadata's name value, if any.", - "location": "query" - }, - "projection": { - "type": "string", - "description": "Set of properties to return. Defaults to no_acl, unless the object resource specifies the acl property, when it defaults to full.", - "enum": [ - "full", - "no_acl" - ], - "enumDescriptions": [ - "Include all properties.", - "Omit the acl property." - ], - "location": "query" - } - }, - "parameterOrder": [ - "bucket" - ], - "request": { - "$ref": "Object" - }, - "response": { - "$ref": "Object" - }, - "scopes": [ - "https://www.googleapis.com/auth/devstorage.full_control", - "https://www.googleapis.com/auth/devstorage.read_write" - ], - "supportsMediaDownload": true, - "supportsMediaUpload": true, - "mediaUpload": { - "accept": [ - "*/*" + "id": "storage:v1beta1", + "kind": "discovery#restDescription", + "labels": [ + "labs" + ], + "name": "storage", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "alt": { + "default": "json", + "description": "Data format for the response.", + "enum": [ + "json" ], - "protocols": { - "simple": { - "multipart": true, - "path": "/upload/storage/v1beta1/b/{bucket}/o" - }, - "resumable": { - "multipart": true, - "path": "/resumable/upload/storage/v1beta1/b/{bucket}/o" - } - } - } + "enumDescriptions": [ + "Responses with Content-Type of application/json" + ], + "location": "query", + "type": "string" }, - "list": { - "id": "storage.objects.list", - "path": "b/{bucket}/o", - "httpMethod": "GET", - "description": "Retrieves a list of objects matching the criteria.", - "parameters": { - "bucket": { - "type": "string", - "description": "Name of the bucket in which to look for objects.", - "required": true, - "location": "path" - }, - "delimiter": { - "type": "string", - "description": "Returns results in a directory-like mode. items will contain only objects whose names, aside from the prefix, do not contain delimiter. Objects whose names, aside from the prefix, contain delimiter will have their name, truncated after the delimiter, returned in prefixes. Duplicate prefixes are omitted.", - "location": "query" - }, - "max-results": { - "type": "integer", - "description": "Maximum number of items plus prefixes to return. As duplicate prefixes are omitted, fewer total results may be returned than requested.", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "A previously-returned page token representing part of the larger set of results to view.", - "location": "query" - }, - "prefix": { - "type": "string", - "description": "Filter results to objects whose names begin with this prefix.", - "location": "query" - }, - "projection": { - "type": "string", - "description": "Set of properties to return. Defaults to no_acl.", - "enum": [ - "full", - "no_acl" - ], - "enumDescriptions": [ - "Include all properties.", - "Omit the acl property." - ], - "location": "query" - } - }, - "parameterOrder": [ - "bucket" - ], - "response": { - "$ref": "Objects" - }, - "scopes": [ - "https://www.googleapis.com/auth/devstorage.full_control", - "https://www.googleapis.com/auth/devstorage.read_only", - "https://www.googleapis.com/auth/devstorage.read_write" - ], - "supportsSubscription": true + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "location": "query", + "type": "string" }, - "patch": { - "id": "storage.objects.patch", - "path": "b/{bucket}/o/{object}", - "httpMethod": "PATCH", - "description": "Updates a data blob's associated metadata. This method supports patch semantics.", - "parameters": { - "bucket": { - "type": "string", - "description": "Name of the bucket in which the object resides.", - "required": true, - "location": "path" - }, - "object": { - "type": "string", - "description": "Name of the object.", - "required": true, - "location": "path" - }, - "projection": { - "type": "string", - "description": "Set of properties to return. Defaults to full.", - "enum": [ - "full", - "no_acl" - ], - "enumDescriptions": [ - "Include all properties.", - "Omit the acl property." - ], - "location": "query" - } - }, - "parameterOrder": [ - "bucket", - "object" - ], - "request": { - "$ref": "Object" - }, - "response": { - "$ref": "Object" - }, - "scopes": [ - "https://www.googleapis.com/auth/devstorage.full_control", - "https://www.googleapis.com/auth/devstorage.read_write" - ] + "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" }, - "update": { - "id": "storage.objects.update", - "path": "b/{bucket}/o/{object}", - "httpMethod": "PUT", - "description": "Updates a data blob's associated metadata.", - "parameters": { - "bucket": { - "type": "string", - "description": "Name of the bucket in which the object resides.", - "required": true, - "location": "path" - }, - "object": { - "type": "string", - "description": "Name of the object.", - "required": true, - "location": "path" - }, - "projection": { - "type": "string", - "description": "Set of properties to return. Defaults to full.", - "enum": [ - "full", - "no_acl" - ], - "enumDescriptions": [ - "Include all properties.", - "Omit the acl property." - ], - "location": "query" - } - }, - "parameterOrder": [ - "bucket", - "object" - ], - "request": { - "$ref": "Object" - }, - "response": { - "$ref": "Object" - }, - "scopes": [ - "https://www.googleapis.com/auth/devstorage.full_control", - "https://www.googleapis.com/auth/devstorage.read_write" - ], - "supportsMediaDownload": true + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", + "location": "query", + "type": "string" + }, + "userIp": { + "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", + "location": "query", + "type": "string" } - } - } - } -} + }, + "protocol": "rest", + "resources": { + "bucketAccessControls": { + "methods": { + "delete": { + "description": "Deletes the ACL entry for the specified entity on the specified bucket.", + "httpMethod": "DELETE", + "id": "storage.bucketAccessControls.delete", + "parameterOrder": [ + "bucket", + "entity" + ], + "parameters": { + "bucket": { + "description": "Name of a bucket.", + "location": "path", + "required": true, + "type": "string" + }, + "entity": { + "description": "The entity holding the permission. Can be user-userId, user-emailAddress, group-groupId, group-emailAddress, allUsers, or allAuthenticatedUsers.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "b/{bucket}/acl/{entity}", + "scopes": [ + "https://www.googleapis.com/auth/devstorage.full_control" + ] + }, + "get": { + "description": "Returns the ACL entry for the specified entity on the specified bucket.", + "httpMethod": "GET", + "id": "storage.bucketAccessControls.get", + "parameterOrder": [ + "bucket", + "entity" + ], + "parameters": { + "bucket": { + "description": "Name of a bucket.", + "location": "path", + "required": true, + "type": "string" + }, + "entity": { + "description": "The entity holding the permission. Can be user-userId, user-emailAddress, group-groupId, group-emailAddress, allUsers, or allAuthenticatedUsers.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "b/{bucket}/acl/{entity}", + "response": { + "$ref": "BucketAccessControl" + }, + "scopes": [ + "https://www.googleapis.com/auth/devstorage.full_control" + ] + }, + "insert": { + "description": "Creates a new ACL entry on the specified bucket.", + "httpMethod": "POST", + "id": "storage.bucketAccessControls.insert", + "parameterOrder": [ + "bucket" + ], + "parameters": { + "bucket": { + "description": "Name of a bucket.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "b/{bucket}/acl", + "request": { + "$ref": "BucketAccessControl" + }, + "response": { + "$ref": "BucketAccessControl" + }, + "scopes": [ + "https://www.googleapis.com/auth/devstorage.full_control" + ] + }, + "list": { + "description": "Retrieves ACL entries on the specified bucket.", + "httpMethod": "GET", + "id": "storage.bucketAccessControls.list", + "parameterOrder": [ + "bucket" + ], + "parameters": { + "bucket": { + "description": "Name of a bucket.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "b/{bucket}/acl", + "response": { + "$ref": "BucketAccessControls" + }, + "scopes": [ + "https://www.googleapis.com/auth/devstorage.full_control" + ] + }, + "patch": { + "description": "Updates an ACL entry on the specified bucket. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "storage.bucketAccessControls.patch", + "parameterOrder": [ + "bucket", + "entity" + ], + "parameters": { + "bucket": { + "description": "Name of a bucket.", + "location": "path", + "required": true, + "type": "string" + }, + "entity": { + "description": "The entity holding the permission. Can be user-userId, user-emailAddress, group-groupId, group-emailAddress, allUsers, or allAuthenticatedUsers.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "b/{bucket}/acl/{entity}", + "request": { + "$ref": "BucketAccessControl" + }, + "response": { + "$ref": "BucketAccessControl" + }, + "scopes": [ + "https://www.googleapis.com/auth/devstorage.full_control" + ] + }, + "update": { + "description": "Updates an ACL entry on the specified bucket.", + "httpMethod": "PUT", + "id": "storage.bucketAccessControls.update", + "parameterOrder": [ + "bucket", + "entity" + ], + "parameters": { + "bucket": { + "description": "Name of a bucket.", + "location": "path", + "required": true, + "type": "string" + }, + "entity": { + "description": "The entity holding the permission. Can be user-userId, user-emailAddress, group-groupId, group-emailAddress, allUsers, or allAuthenticatedUsers.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "b/{bucket}/acl/{entity}", + "request": { + "$ref": "BucketAccessControl" + }, + "response": { + "$ref": "BucketAccessControl" + }, + "scopes": [ + "https://www.googleapis.com/auth/devstorage.full_control" + ] + } + } + }, + "buckets": { + "methods": { + "delete": { + "description": "Deletes an empty bucket.", + "httpMethod": "DELETE", + "id": "storage.buckets.delete", + "parameterOrder": [ + "bucket" + ], + "parameters": { + "bucket": { + "description": "Name of a bucket.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "b/{bucket}", + "scopes": [ + "https://www.googleapis.com/auth/devstorage.full_control", + "https://www.googleapis.com/auth/devstorage.read_write" + ] + }, + "get": { + "description": "Returns metadata for the specified bucket.", + "httpMethod": "GET", + "id": "storage.buckets.get", + "parameterOrder": [ + "bucket" + ], + "parameters": { + "bucket": { + "description": "Name of a bucket.", + "location": "path", + "required": true, + "type": "string" + }, + "projection": { + "description": "Set of properties to return. Defaults to no_acl.", + "enum": [ + "full", + "no_acl" + ], + "enumDescriptions": [ + "Include all properties.", + "Omit acl and defaultObjectAcl properties." + ], + "location": "query", + "type": "string" + } + }, + "path": "b/{bucket}", + "response": { + "$ref": "Bucket" + }, + "scopes": [ + "https://www.googleapis.com/auth/devstorage.full_control", + "https://www.googleapis.com/auth/devstorage.read_only", + "https://www.googleapis.com/auth/devstorage.read_write" + ] + }, + "insert": { + "description": "Creates a new bucket.", + "httpMethod": "POST", + "id": "storage.buckets.insert", + "parameters": { + "projection": { + "description": "Set of properties to return. Defaults to no_acl, unless the bucket resource specifies acl or defaultObjectAcl properties, when it defaults to full.", + "enum": [ + "full", + "no_acl" + ], + "enumDescriptions": [ + "Include all properties.", + "Omit acl and defaultObjectAcl properties." + ], + "location": "query", + "type": "string" + } + }, + "path": "b", + "request": { + "$ref": "Bucket" + }, + "response": { + "$ref": "Bucket" + }, + "scopes": [ + "https://www.googleapis.com/auth/devstorage.full_control", + "https://www.googleapis.com/auth/devstorage.read_write" + ] + }, + "list": { + "description": "Retrieves a list of buckets for a given project.", + "httpMethod": "GET", + "id": "storage.buckets.list", + "parameterOrder": [ + "projectId" + ], + "parameters": { + "max-results": { + "description": "Maximum number of buckets to return.", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "pageToken": { + "description": "A previously-returned page token representing part of the larger set of results to view.", + "location": "query", + "type": "string" + }, + "projectId": { + "description": "A valid API project identifier.", + "format": "uint64", + "location": "query", + "required": true, + "type": "string" + }, + "projection": { + "description": "Set of properties to return. Defaults to no_acl.", + "enum": [ + "full", + "no_acl" + ], + "enumDescriptions": [ + "Include all properties.", + "Omit acl and defaultObjectAcl properties." + ], + "location": "query", + "type": "string" + } + }, + "path": "b", + "response": { + "$ref": "Buckets" + }, + "scopes": [ + "https://www.googleapis.com/auth/devstorage.full_control", + "https://www.googleapis.com/auth/devstorage.read_only", + "https://www.googleapis.com/auth/devstorage.read_write" + ] + }, + "patch": { + "description": "Updates a bucket. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "storage.buckets.patch", + "parameterOrder": [ + "bucket" + ], + "parameters": { + "bucket": { + "description": "Name of a bucket.", + "location": "path", + "required": true, + "type": "string" + }, + "projection": { + "description": "Set of properties to return. Defaults to full.", + "enum": [ + "full", + "no_acl" + ], + "enumDescriptions": [ + "Include all properties.", + "Omit acl and defaultObjectAcl properties." + ], + "location": "query", + "type": "string" + } + }, + "path": "b/{bucket}", + "request": { + "$ref": "Bucket" + }, + "response": { + "$ref": "Bucket" + }, + "scopes": [ + "https://www.googleapis.com/auth/devstorage.full_control", + "https://www.googleapis.com/auth/devstorage.read_write" + ] + }, + "update": { + "description": "Updates a bucket.", + "httpMethod": "PUT", + "id": "storage.buckets.update", + "parameterOrder": [ + "bucket" + ], + "parameters": { + "bucket": { + "description": "Name of a bucket.", + "location": "path", + "required": true, + "type": "string" + }, + "projection": { + "description": "Set of properties to return. Defaults to full.", + "enum": [ + "full", + "no_acl" + ], + "enumDescriptions": [ + "Include all properties.", + "Omit acl and defaultObjectAcl properties." + ], + "location": "query", + "type": "string" + } + }, + "path": "b/{bucket}", + "request": { + "$ref": "Bucket" + }, + "response": { + "$ref": "Bucket" + }, + "scopes": [ + "https://www.googleapis.com/auth/devstorage.full_control", + "https://www.googleapis.com/auth/devstorage.read_write" + ] + } + } + }, + "objectAccessControls": { + "methods": { + "delete": { + "description": "Deletes the ACL entry for the specified entity on the specified object.", + "httpMethod": "DELETE", + "id": "storage.objectAccessControls.delete", + "parameterOrder": [ + "bucket", + "object", + "entity" + ], + "parameters": { + "bucket": { + "description": "Name of a bucket.", + "location": "path", + "required": true, + "type": "string" + }, + "entity": { + "description": "The entity holding the permission. Can be user-userId, user-emailAddress, group-groupId, group-emailAddress, allUsers, or allAuthenticatedUsers.", + "location": "path", + "required": true, + "type": "string" + }, + "object": { + "description": "Name of the object.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "b/{bucket}/o/{object}/acl/{entity}", + "scopes": [ + "https://www.googleapis.com/auth/devstorage.full_control" + ] + }, + "get": { + "description": "Returns the ACL entry for the specified entity on the specified object.", + "httpMethod": "GET", + "id": "storage.objectAccessControls.get", + "parameterOrder": [ + "bucket", + "object", + "entity" + ], + "parameters": { + "bucket": { + "description": "Name of a bucket.", + "location": "path", + "required": true, + "type": "string" + }, + "entity": { + "description": "The entity holding the permission. Can be user-userId, user-emailAddress, group-groupId, group-emailAddress, allUsers, or allAuthenticatedUsers.", + "location": "path", + "required": true, + "type": "string" + }, + "object": { + "description": "Name of the object.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "b/{bucket}/o/{object}/acl/{entity}", + "response": { + "$ref": "ObjectAccessControl" + }, + "scopes": [ + "https://www.googleapis.com/auth/devstorage.full_control" + ] + }, + "insert": { + "description": "Creates a new ACL entry on the specified object.", + "httpMethod": "POST", + "id": "storage.objectAccessControls.insert", + "parameterOrder": [ + "bucket", + "object" + ], + "parameters": { + "bucket": { + "description": "Name of a bucket.", + "location": "path", + "required": true, + "type": "string" + }, + "object": { + "description": "Name of the object.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "b/{bucket}/o/{object}/acl", + "request": { + "$ref": "ObjectAccessControl" + }, + "response": { + "$ref": "ObjectAccessControl" + }, + "scopes": [ + "https://www.googleapis.com/auth/devstorage.full_control" + ] + }, + "list": { + "description": "Retrieves ACL entries on the specified object.", + "httpMethod": "GET", + "id": "storage.objectAccessControls.list", + "parameterOrder": [ + "bucket", + "object" + ], + "parameters": { + "bucket": { + "description": "Name of a bucket.", + "location": "path", + "required": true, + "type": "string" + }, + "object": { + "description": "Name of the object.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "b/{bucket}/o/{object}/acl", + "response": { + "$ref": "ObjectAccessControls" + }, + "scopes": [ + "https://www.googleapis.com/auth/devstorage.full_control" + ] + }, + "patch": { + "description": "Updates an ACL entry on the specified object. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "storage.objectAccessControls.patch", + "parameterOrder": [ + "bucket", + "object", + "entity" + ], + "parameters": { + "bucket": { + "description": "Name of a bucket.", + "location": "path", + "required": true, + "type": "string" + }, + "entity": { + "description": "The entity holding the permission. Can be user-userId, user-emailAddress, group-groupId, group-emailAddress, allUsers, or allAuthenticatedUsers.", + "location": "path", + "required": true, + "type": "string" + }, + "object": { + "description": "Name of the object.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "b/{bucket}/o/{object}/acl/{entity}", + "request": { + "$ref": "ObjectAccessControl" + }, + "response": { + "$ref": "ObjectAccessControl" + }, + "scopes": [ + "https://www.googleapis.com/auth/devstorage.full_control" + ] + }, + "update": { + "description": "Updates an ACL entry on the specified object.", + "httpMethod": "PUT", + "id": "storage.objectAccessControls.update", + "parameterOrder": [ + "bucket", + "object", + "entity" + ], + "parameters": { + "bucket": { + "description": "Name of a bucket.", + "location": "path", + "required": true, + "type": "string" + }, + "entity": { + "description": "The entity holding the permission. Can be user-userId, user-emailAddress, group-groupId, group-emailAddress, allUsers, or allAuthenticatedUsers.", + "location": "path", + "required": true, + "type": "string" + }, + "object": { + "description": "Name of the object.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "b/{bucket}/o/{object}/acl/{entity}", + "request": { + "$ref": "ObjectAccessControl" + }, + "response": { + "$ref": "ObjectAccessControl" + }, + "scopes": [ + "https://www.googleapis.com/auth/devstorage.full_control" + ] + } + } + }, + "objects": { + "methods": { + "delete": { + "description": "Deletes data blobs and associated metadata.", + "httpMethod": "DELETE", + "id": "storage.objects.delete", + "parameterOrder": [ + "bucket", + "object" + ], + "parameters": { + "bucket": { + "description": "Name of the bucket in which the object resides.", + "location": "path", + "required": true, + "type": "string" + }, + "object": { + "description": "Name of the object.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "b/{bucket}/o/{object}", + "scopes": [ + "https://www.googleapis.com/auth/devstorage.full_control", + "https://www.googleapis.com/auth/devstorage.read_write" + ] + }, + "get": { + "description": "Retrieves objects or their associated metadata.", + "httpMethod": "GET", + "id": "storage.objects.get", + "parameterOrder": [ + "bucket", + "object" + ], + "parameters": { + "bucket": { + "description": "Name of the bucket in which the object resides.", + "location": "path", + "required": true, + "type": "string" + }, + "object": { + "description": "Name of the object.", + "location": "path", + "required": true, + "type": "string" + }, + "projection": { + "description": "Set of properties to return. Defaults to no_acl.", + "enum": [ + "full", + "no_acl" + ], + "enumDescriptions": [ + "Include all properties.", + "Omit the acl property." + ], + "location": "query", + "type": "string" + } + }, + "path": "b/{bucket}/o/{object}", + "response": { + "$ref": "Object" + }, + "scopes": [ + "https://www.googleapis.com/auth/devstorage.full_control", + "https://www.googleapis.com/auth/devstorage.read_only", + "https://www.googleapis.com/auth/devstorage.read_write" + ], + "supportsMediaDownload": true + }, + "insert": { + "description": "Stores new data blobs and associated metadata.", + "httpMethod": "POST", + "id": "storage.objects.insert", + "mediaUpload": { + "accept": [ + "*/*" + ], + "protocols": { + "resumable": { + "multipart": true, + "path": "/resumable/upload/storage/v1beta1/b/{bucket}/o" + }, + "simple": { + "multipart": true, + "path": "/upload/storage/v1beta1/b/{bucket}/o" + } + } + }, + "parameterOrder": [ + "bucket" + ], + "parameters": { + "bucket": { + "description": "Name of the bucket in which to store the new object. Overrides the provided object metadata's bucket value, if any.", + "location": "path", + "required": true, + "type": "string" + }, + "name": { + "description": "Name of the object. Required when the object metadata is not otherwise provided. Overrides the object metadata's name value, if any.", + "location": "query", + "type": "string" + }, + "projection": { + "description": "Set of properties to return. Defaults to no_acl, unless the object resource specifies the acl property, when it defaults to full.", + "enum": [ + "full", + "no_acl" + ], + "enumDescriptions": [ + "Include all properties.", + "Omit the acl property." + ], + "location": "query", + "type": "string" + } + }, + "path": "b/{bucket}/o", + "request": { + "$ref": "Object" + }, + "response": { + "$ref": "Object" + }, + "scopes": [ + "https://www.googleapis.com/auth/devstorage.full_control", + "https://www.googleapis.com/auth/devstorage.read_write" + ], + "supportsMediaDownload": true, + "supportsMediaUpload": true + }, + "list": { + "description": "Retrieves a list of objects matching the criteria.", + "httpMethod": "GET", + "id": "storage.objects.list", + "parameterOrder": [ + "bucket" + ], + "parameters": { + "bucket": { + "description": "Name of the bucket in which to look for objects.", + "location": "path", + "required": true, + "type": "string" + }, + "delimiter": { + "description": "Returns results in a directory-like mode. items will contain only objects whose names, aside from the prefix, do not contain delimiter. Objects whose names, aside from the prefix, contain delimiter will have their name, truncated after the delimiter, returned in prefixes. Duplicate prefixes are omitted.", + "location": "query", + "type": "string" + }, + "max-results": { + "description": "Maximum number of items plus prefixes to return. As duplicate prefixes are omitted, fewer total results may be returned than requested.", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "pageToken": { + "description": "A previously-returned page token representing part of the larger set of results to view.", + "location": "query", + "type": "string" + }, + "prefix": { + "description": "Filter results to objects whose names begin with this prefix.", + "location": "query", + "type": "string" + }, + "projection": { + "description": "Set of properties to return. Defaults to no_acl.", + "enum": [ + "full", + "no_acl" + ], + "enumDescriptions": [ + "Include all properties.", + "Omit the acl property." + ], + "location": "query", + "type": "string" + } + }, + "path": "b/{bucket}/o", + "response": { + "$ref": "Objects" + }, + "scopes": [ + "https://www.googleapis.com/auth/devstorage.full_control", + "https://www.googleapis.com/auth/devstorage.read_only", + "https://www.googleapis.com/auth/devstorage.read_write" + ], + "supportsSubscription": true + }, + "patch": { + "description": "Updates a data blob's associated metadata. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "storage.objects.patch", + "parameterOrder": [ + "bucket", + "object" + ], + "parameters": { + "bucket": { + "description": "Name of the bucket in which the object resides.", + "location": "path", + "required": true, + "type": "string" + }, + "object": { + "description": "Name of the object.", + "location": "path", + "required": true, + "type": "string" + }, + "projection": { + "description": "Set of properties to return. Defaults to full.", + "enum": [ + "full", + "no_acl" + ], + "enumDescriptions": [ + "Include all properties.", + "Omit the acl property." + ], + "location": "query", + "type": "string" + } + }, + "path": "b/{bucket}/o/{object}", + "request": { + "$ref": "Object" + }, + "response": { + "$ref": "Object" + }, + "scopes": [ + "https://www.googleapis.com/auth/devstorage.full_control", + "https://www.googleapis.com/auth/devstorage.read_write" + ] + }, + "update": { + "description": "Updates a data blob's associated metadata.", + "httpMethod": "PUT", + "id": "storage.objects.update", + "parameterOrder": [ + "bucket", + "object" + ], + "parameters": { + "bucket": { + "description": "Name of the bucket in which the object resides.", + "location": "path", + "required": true, + "type": "string" + }, + "object": { + "description": "Name of the object.", + "location": "path", + "required": true, + "type": "string" + }, + "projection": { + "description": "Set of properties to return. Defaults to full.", + "enum": [ + "full", + "no_acl" + ], + "enumDescriptions": [ + "Include all properties.", + "Omit the acl property." + ], + "location": "query", + "type": "string" + } + }, + "path": "b/{bucket}/o/{object}", + "request": { + "$ref": "Object" + }, + "response": { + "$ref": "Object" + }, + "scopes": [ + "https://www.googleapis.com/auth/devstorage.full_control", + "https://www.googleapis.com/auth/devstorage.read_write" + ], + "supportsMediaDownload": true + } + } + } + }, + "revision": "20180118", + "rootUrl": "https://www.googleapis.com/", + "schemas": { + "Bucket": { + "description": "A bucket.", + "id": "Bucket", + "properties": { + "acl": { + "annotations": { + "required": [ + "storage.buckets.update" + ] + }, + "description": "Access controls on the bucket.", + "items": { + "$ref": "BucketAccessControl" + }, + "type": "array" + }, + "defaultObjectAcl": { + "description": "Default access controls to apply to new objects when no ACL is provided.", + "items": { + "$ref": "ObjectAccessControl" + }, + "type": "array" + }, + "id": { + "annotations": { + "required": [ + "storage.buckets.insert" + ] + }, + "description": "The name of the bucket.", + "type": "string" + }, + "kind": { + "default": "storage#bucket", + "description": "The kind of item this is. For buckets, this is always storage#bucket.", + "type": "string" + }, + "location": { + "description": "The location of the bucket. Object data for objects in the bucket resides in physical storage in this location. Can be US or EU. Defaults to US.", + "type": "string" + }, + "owner": { + "description": "The owner of the bucket. This will always be the project team's owner group.", + "properties": { + "entity": { + "description": "The entity, in the form group-groupId.", + "type": "string" + }, + "entityId": { + "description": "The ID for the entity.", + "type": "string" + } + }, + "type": "object" + }, + "projectId": { + "annotations": { + "required": [ + "storage.buckets.insert" + ] + }, + "description": "The project the bucket belongs to.", + "format": "uint64", + "type": "string" + }, + "selfLink": { + "description": "The URI of this bucket.", + "type": "string" + }, + "timeCreated": { + "description": "Creation time of the bucket in RFC 3339 format.", + "format": "date-time", + "type": "string" + }, + "website": { + "description": "The bucket's website configuration.", + "properties": { + "mainPageSuffix": { + "description": "Behaves as the bucket's directory index where missing objects are treated as potential directories.", + "type": "string" + }, + "notFoundPage": { + "description": "The custom object to return when a requested resource is not found.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "BucketAccessControl": { + "description": "An access-control entry.", + "id": "BucketAccessControl", + "properties": { + "bucket": { + "description": "The name of the bucket.", + "type": "string" + }, + "domain": { + "description": "The domain associated with the entity, if any.", + "type": "string" + }, + "email": { + "description": "The email address associated with the entity, if any.", + "type": "string" + }, + "entity": { + "annotations": { + "required": [ + "storage.bucketAccessControls.insert" + ] + }, + "description": "The entity holding the permission, in one of the following forms: \n- user-userId \n- user-email \n- group-groupId \n- group-email \n- domain-domain \n- allUsers \n- allAuthenticatedUsers Examples: \n- The user liz@example.com would be user-liz@example.com. \n- The group example@googlegroups.com would be group-example@googlegroups.com. \n- To refer to all members of the Google Apps for Business domain example.com, the entity would be domain-example.com.", + "type": "string" + }, + "entityId": { + "description": "The ID for the entity, if any.", + "type": "string" + }, + "id": { + "description": "The ID of the access-control entry.", + "type": "string" + }, + "kind": { + "default": "storage#bucketAccessControl", + "description": "The kind of item this is. For bucket access control entries, this is always storage#bucketAccessControl.", + "type": "string" + }, + "role": { + "annotations": { + "required": [ + "storage.bucketAccessControls.insert" + ] + }, + "description": "The access permission for the entity. Can be READER, WRITER, or OWNER.", + "type": "string" + }, + "selfLink": { + "description": "The link to this access-control entry.", + "type": "string" + } + }, + "type": "object" + }, + "BucketAccessControls": { + "description": "An access-control list.", + "id": "BucketAccessControls", + "properties": { + "items": { + "description": "The list of items.", + "items": { + "$ref": "BucketAccessControl" + }, + "type": "array" + }, + "kind": { + "default": "storage#bucketAccessControls", + "description": "The kind of item this is. For lists of bucket access control entries, this is always storage#bucketAccessControls.", + "type": "string" + } + }, + "type": "object" + }, + "Buckets": { + "description": "A list of buckets.", + "id": "Buckets", + "properties": { + "items": { + "description": "The list of items.", + "items": { + "$ref": "Bucket" + }, + "type": "array" + }, + "kind": { + "default": "storage#buckets", + "description": "The kind of item this is. For lists of buckets, this is always storage#buckets.", + "type": "string" + }, + "nextPageToken": { + "description": "The continuation token, used to page through large result sets. Provide this value in a subsequent request to return the next page of results.", + "type": "string" + } + }, + "type": "object" + }, + "Object": { + "description": "An object.", + "id": "Object", + "properties": { + "acl": { + "annotations": { + "required": [ + "storage.objects.update" + ] + }, + "description": "Access controls on the object.", + "items": { + "$ref": "ObjectAccessControl" + }, + "type": "array" + }, + "bucket": { + "description": "The bucket containing this object.", + "type": "string" + }, + "cacheControl": { + "description": "Cache-Control directive for the object data.", + "type": "string" + }, + "contentDisposition": { + "description": "Content-Disposition of the object data.", + "type": "string" + }, + "contentEncoding": { + "description": "Content-Encoding of the object data.", + "type": "string" + }, + "contentLanguage": { + "description": "Content-Language of the object data.", + "type": "string" + }, + "id": { + "description": "The ID of the object.", + "type": "string" + }, + "kind": { + "default": "storage#object", + "description": "The kind of item this is. For objects, this is always storage#object.", + "type": "string" + }, + "media": { + "description": "Object media data. Provided on your behalf when uploading raw media or multipart/related with an auxiliary media part.", + "properties": { + "algorithm": { + "default": "MD5", + "description": "Hash algorithm used. Currently only MD5 is supported. Required if a hash is provided.", + "type": "string" + }, + "contentType": { + "annotations": { + "required": [ + "storage.objects.insert", + "storage.objects.update" + ] + }, + "description": "Content-Type of the object data.", + "type": "string" + }, + "data": { + "annotations": { + "required": [ + "storage.objects.insert" + ] + }, + "description": "URL-safe Base64-encoded data. This property can be used to insert objects under 64KB in size, and will only be returned in response to the get method for objects so created. When this resource is returned in response to the list method, this property is omitted.", + "format": "byte", + "type": "string" + }, + "hash": { + "description": "Hash of the data. Required if a hash algorithm is provided.", + "type": "string" + }, + "length": { + "description": "Content-Length of the data in bytes.", + "format": "uint64", + "type": "string" + }, + "link": { + "description": "Media download link.", + "type": "string" + }, + "timeCreated": { + "description": "Creation time of the data in RFC 3339 format.", + "format": "date-time", + "type": "string" + } + }, + "type": "object" + }, + "metadata": { + "additionalProperties": { + "description": "An individual metadata entry.", + "type": "string" + }, + "description": "User-provided metadata, in key/value pairs.", + "type": "object" + }, + "name": { + "description": "The name of this object. Required if not specified by URL parameter.", + "type": "string" + }, + "owner": { + "description": "The owner of the object. This will always be the uploader of the object.", + "properties": { + "entity": { + "description": "The entity, in the form user-userId.", + "type": "string" + }, + "entityId": { + "description": "The ID for the entity.", + "type": "string" + } + }, + "type": "object" + }, + "selfLink": { + "description": "The link to this object.", + "type": "string" + } + }, + "type": "object" + }, + "ObjectAccessControl": { + "description": "An access-control entry.", + "id": "ObjectAccessControl", + "properties": { + "bucket": { + "description": "The name of the bucket.", + "type": "string" + }, + "domain": { + "description": "The domain associated with the entity, if any.", + "type": "string" + }, + "email": { + "description": "The email address associated with the entity, if any.", + "type": "string" + }, + "entity": { + "annotations": { + "required": [ + "storage.objectAccessControls.insert" + ] + }, + "description": "The entity holding the permission, in one of the following forms: \n- user-userId \n- user-email \n- group-groupId \n- group-email \n- domain-domain \n- allUsers \n- allAuthenticatedUsers Examples: \n- The user liz@example.com would be user-liz@example.com. \n- The group example@googlegroups.com would be group-example@googlegroups.com. \n- To refer to all members of the Google Apps for Business domain example.com, the entity would be domain-example.com.", + "type": "string" + }, + "entityId": { + "description": "The ID for the entity, if any.", + "type": "string" + }, + "id": { + "description": "The ID of the access-control entry.", + "type": "string" + }, + "kind": { + "default": "storage#objectAccessControl", + "description": "The kind of item this is. For object access control entries, this is always storage#objectAccessControl.", + "type": "string" + }, + "object": { + "description": "The name of the object.", + "type": "string" + }, + "role": { + "annotations": { + "required": [ + "storage.objectAccessControls.insert" + ] + }, + "description": "The access permission for the entity. Can be READER or OWNER.", + "type": "string" + }, + "selfLink": { + "description": "The link to this access-control entry.", + "type": "string" + } + }, + "type": "object" + }, + "ObjectAccessControls": { + "description": "An access-control list.", + "id": "ObjectAccessControls", + "properties": { + "items": { + "description": "The list of items.", + "items": { + "$ref": "ObjectAccessControl" + }, + "type": "array" + }, + "kind": { + "default": "storage#objectAccessControls", + "description": "The kind of item this is. For lists of object access control entries, this is always storage#objectAccessControls.", + "type": "string" + } + }, + "type": "object" + }, + "Objects": { + "description": "A list of objects.", + "id": "Objects", + "properties": { + "items": { + "description": "The list of items.", + "items": { + "$ref": "Object" + }, + "type": "array" + }, + "kind": { + "default": "storage#objects", + "description": "The kind of item this is. For lists of objects, this is always storage#objects.", + "type": "string" + }, + "nextPageToken": { + "description": "The continuation token, used to page through large result sets. Provide this value in a subsequent request to return the next page of results.", + "type": "string" + }, + "prefixes": { + "description": "The list of prefixes of objects matching-but-not-listed up to and including the requested delimiter.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + } + }, + "servicePath": "storage/v1beta1/", + "title": "Cloud Storage JSON API", + "version": "v1beta1" +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/storage/v1beta1/storage-gen.go b/vendor/google.golang.org/api/storage/v1beta1/storage-gen.go index dcfb74525..4ff78ab5a 100644 --- a/vendor/google.golang.org/api/storage/v1beta1/storage-gen.go +++ b/vendor/google.golang.org/api/storage/v1beta1/storage-gen.go @@ -3747,11 +3747,12 @@ func (c *ObjectsInsertCall) doRequest(alt string) (*http.Response, error) { body = new(bytes.Buffer) reqHeaders.Set("Content-Type", "application/json") } - body, cleanup := c.mediaInfo_.UploadRequest(reqHeaders, body) + body, getBody, cleanup := c.mediaInfo_.UploadRequest(reqHeaders, body) defer cleanup() urls += "?" + c.urlParams_.Encode() req, _ := http.NewRequest("POST", urls, body) req.Header = reqHeaders + gensupport.SetGetBody(req, getBody) googleapi.Expand(req.URL, map[string]string{ "bucket": c.bucket, }) diff --git a/vendor/google.golang.org/api/storage/v1beta2/storage-api.json b/vendor/google.golang.org/api/storage/v1beta2/storage-api.json index ce75c97be..eba9af89e 100644 --- a/vendor/google.golang.org/api/storage/v1beta2/storage-api.json +++ b/vendor/google.golang.org/api/storage/v1beta2/storage-api.json @@ -1,2345 +1,2345 @@ { - "kind": "discovery#restDescription", - "etag": "\"YWOzh2SDasdU84ArJnpYek-OMdg/jNAmDp5ax698Gc_lJBs4IFA1034\"", - "discoveryVersion": "v1", - "id": "storage:v1beta2", - "name": "storage", - "version": "v1beta2", - "revision": "20171212", - "title": "Cloud Storage JSON API", - "description": "Lets you store and retrieve potentially-large, immutable data objects.", - "ownerDomain": "google.com", - "ownerName": "Google", - "icons": { - "x16": "https://www.google.com/images/icons/product/cloud_storage-16.png", - "x32": "https://www.google.com/images/icons/product/cloud_storage-32.png" - }, - "documentationLink": "https://developers.google.com/storage/docs/json_api/", - "labels": [ - "labs" - ], - "protocol": "rest", - "baseUrl": "https://www.googleapis.com/storage/v1beta2/", - "basePath": "/storage/v1beta2/", - "rootUrl": "https://www.googleapis.com/", - "servicePath": "storage/v1beta2/", - "batchPath": "batch/storage/v1beta2", - "parameters": { - "alt": { - "type": "string", - "description": "Data format for the response.", - "default": "json", - "enum": [ - "json" - ], - "enumDescriptions": [ - "Responses with Content-Type of application/json" - ], - "location": "query" - }, - "fields": { - "type": "string", - "description": "Selector specifying which fields to include in a partial response.", - "location": "query" - }, - "key": { - "type": "string", - "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" - }, - "oauth_token": { - "type": "string", - "description": "OAuth 2.0 token for the current user.", - "location": "query" - }, - "prettyPrint": { - "type": "boolean", - "description": "Returns response with indentations and line breaks.", - "default": "true", - "location": "query" - }, - "quotaUser": { - "type": "string", - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", - "location": "query" - }, - "userIp": { - "type": "string", - "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", - "location": "query" - } - }, - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/devstorage.full_control": { - "description": "Manage your data and permissions in Google Cloud Storage" - }, - "https://www.googleapis.com/auth/devstorage.read_only": { - "description": "View your data in Google Cloud Storage" - }, - "https://www.googleapis.com/auth/devstorage.read_write": { - "description": "Manage your data in Google Cloud Storage" - } - } - } - }, - "schemas": { - "Bucket": { - "id": "Bucket", - "type": "object", - "description": "A bucket.", - "properties": { - "acl": { - "type": "array", - "description": "Access controls on the bucket.", - "items": { - "$ref": "BucketAccessControl" - }, - "annotations": { - "required": [ - "storage.buckets.update" - ] - } - }, - "cors": { - "type": "array", - "description": "The bucket's Cross-Origin Resource Sharing (CORS) configuration.", - "items": { - "type": "object", - "properties": { - "maxAgeSeconds": { - "type": "integer", - "description": "The value, in seconds, to return in the Access-Control-Max-Age header used in preflight responses.", - "format": "int32" - }, - "method": { - "type": "array", - "description": "The list of HTTP methods on which to include CORS response headers: GET, OPTIONS, POST, etc. Note, \"*\" is permitted in the list of methods, and means \"any method\".", - "items": { - "type": "string" + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/devstorage.full_control": { + "description": "Manage your data and permissions in Google Cloud Storage" + }, + "https://www.googleapis.com/auth/devstorage.read_only": { + "description": "View your data in Google Cloud Storage" + }, + "https://www.googleapis.com/auth/devstorage.read_write": { + "description": "Manage your data in Google Cloud Storage" } - }, - "origin": { - "type": "array", - "description": "The list of Origins eligible to receive CORS response headers. Note: \"*\" is permitted in the list of origins, and means \"any Origin\".", - "items": { - "type": "string" - } - }, - "responseHeader": { - "type": "array", - "description": "The list of HTTP headers other than the simple response headers to give permission for the user-agent to share across domains.", - "items": { - "type": "string" - } - } } - } - }, - "defaultObjectAcl": { - "type": "array", - "description": "Default access controls to apply to new objects when no ACL is provided.", - "items": { - "$ref": "ObjectAccessControl" - } - }, - "etag": { - "type": "string", - "description": "HTTP 1.1 Entity tag for the bucket." - }, - "id": { - "type": "string", - "description": "The ID of the bucket." - }, - "kind": { - "type": "string", - "description": "The kind of item this is. For buckets, this is always storage#bucket.", - "default": "storage#bucket" - }, - "lifecycle": { - "type": "object", - "description": "The bucket's lifecycle configuration. See object lifecycle management for more information.", - "properties": { - "rule": { - "type": "array", - "description": "A lifecycle management rule, which is made of an action to take and the condition(s) under which the action will be taken.", - "items": { - "type": "object", - "properties": { - "action": { - "type": "object", - "description": "The action to take.", - "properties": { - "type": { - "type": "string", - "description": "Type of the action. Currently only Delete is supported." - } - } - }, - "condition": { - "type": "object", - "description": "The condition(s) under which the action will be taken.", - "properties": { - "age": { - "type": "integer", - "description": "Age of an object (in days). This condition is satisfied when an object reaches the specified age.", - "format": "int32" - }, - "createdBefore": { - "type": "string", - "description": "A date in RFC 3339 format with only the date part, e.g. \"2013-01-15\". This condition is satisfied when an object is created before midnight of the specified date in UTC.", - "format": "date" - }, - "isLive": { - "type": "boolean", - "description": "Relevant only for versioned objects. If the value is true, this condition matches live objects; if the value is false, it matches archived objects." - }, - "numNewerVersions": { - "type": "integer", - "description": "Relevant only for versioned objects. If the value is N, this condition is satisfied when there are at least N versions (including the live version) newer than this version of the object.", - "format": "int32" - } - } - } - } - } - } - } - }, - "location": { - "type": "string", - "description": "The location of the bucket. Object data for objects in the bucket resides in physical storage within this region. Typical values are US and EU. Defaults to US. See the developer's guide for the authoritative list." - }, - "logging": { - "type": "object", - "description": "The bucket's logging configuration, which defines the destination bucket and optional name prefix for the current bucket's logs.", - "properties": { - "logBucket": { - "type": "string", - "description": "The destination bucket where the current bucket's logs should be placed." - }, - "logObjectPrefix": { - "type": "string", - "description": "A prefix for log object names." - } - } - }, - "metageneration": { - "type": "string", - "description": "The metadata generation of this bucket.", - "format": "int64" - }, - "name": { - "type": "string", - "description": "The name of the bucket.", - "annotations": { - "required": [ - "storage.buckets.insert" - ] - } - }, - "owner": { - "type": "object", - "description": "The owner of the bucket. This is always the project team's owner group.", - "properties": { - "entity": { - "type": "string", - "description": "The entity, in the form group-groupId." - }, - "entityId": { - "type": "string", - "description": "The ID for the entity." - } - } - }, - "selfLink": { - "type": "string", - "description": "The URI of this bucket." - }, - "storageClass": { - "type": "string", - "description": "The bucket's storage class. This defines how objects in the bucket are stored and determines the SLA and the cost of storage. Typical values are STANDARD and DURABLE_REDUCED_AVAILABILITY. Defaults to STANDARD. See the developer's guide for the authoritative list." - }, - "timeCreated": { - "type": "string", - "description": "Creation time of the bucket in RFC 3339 format.", - "format": "date-time" - }, - "versioning": { - "type": "object", - "description": "The bucket's versioning configuration.", - "properties": { - "enabled": { - "type": "boolean", - "description": "While set to true, versioning is fully enabled for this bucket." - } - } - }, - "website": { - "type": "object", - "description": "The bucket's website configuration.", - "properties": { - "mainPageSuffix": { - "type": "string", - "description": "Behaves as the bucket's directory index where missing objects are treated as potential directories." - }, - "notFoundPage": { - "type": "string", - "description": "The custom object to return when a requested resource is not found." - } - } } - } }, - "BucketAccessControl": { - "id": "BucketAccessControl", - "type": "object", - "description": "An access-control entry.", - "properties": { - "bucket": { - "type": "string", - "description": "The name of the bucket." - }, - "domain": { - "type": "string", - "description": "The domain associated with the entity, if any." - }, - "email": { - "type": "string", - "description": "The email address associated with the entity, if any." - }, - "entity": { - "type": "string", - "description": "The entity holding the permission, in one of the following forms: \n- user-userId \n- user-email \n- group-groupId \n- group-email \n- domain-domain \n- allUsers \n- allAuthenticatedUsers Examples: \n- The user liz@example.com would be user-liz@example.com. \n- The group example@googlegroups.com would be group-example@googlegroups.com. \n- To refer to all members of the Google Apps for Business domain example.com, the entity would be domain-example.com.", - "annotations": { - "required": [ - "storage.bucketAccessControls.insert" - ] - } - }, - "entityId": { - "type": "string", - "description": "The ID for the entity, if any." - }, - "etag": { - "type": "string", - "description": "HTTP 1.1 Entity tag for the access-control entry." - }, - "id": { - "type": "string", - "description": "The ID of the access-control entry." - }, - "kind": { - "type": "string", - "description": "The kind of item this is. For bucket access control entries, this is always storage#bucketAccessControl.", - "default": "storage#bucketAccessControl" - }, - "role": { - "type": "string", - "description": "The access permission for the entity. Can be READER, WRITER, or OWNER.", - "annotations": { - "required": [ - "storage.bucketAccessControls.insert" - ] - } - }, - "selfLink": { - "type": "string", - "description": "The link to this access-control entry." - } - } + "basePath": "/storage/v1beta2/", + "baseUrl": "https://www.googleapis.com/storage/v1beta2/", + "batchPath": "batch/storage/v1beta2", + "description": "Lets you store and retrieve potentially-large, immutable data objects.", + "discoveryVersion": "v1", + "documentationLink": "https://developers.google.com/storage/docs/json_api/", + "etag": "\"-iA1DTNe4s-I6JZXPt1t1Ypy8IU/u2INMVvKXtKBMHv0AbMxN_8SDSM\"", + "icons": { + "x16": "https://www.google.com/images/icons/product/cloud_storage-16.png", + "x32": "https://www.google.com/images/icons/product/cloud_storage-32.png" }, - "BucketAccessControls": { - "id": "BucketAccessControls", - "type": "object", - "description": "An access-control list.", - "properties": { - "items": { - "type": "array", - "description": "The list of items.", - "items": { - "$ref": "BucketAccessControl" - } - }, - "kind": { - "type": "string", - "description": "The kind of item this is. For lists of bucket access control entries, this is always storage#bucketAccessControls.", - "default": "storage#bucketAccessControls" - } - } - }, - "Buckets": { - "id": "Buckets", - "type": "object", - "description": "A list of buckets.", - "properties": { - "items": { - "type": "array", - "description": "The list of items.", - "items": { - "$ref": "Bucket" - } - }, - "kind": { - "type": "string", - "description": "The kind of item this is. For lists of buckets, this is always storage#buckets.", - "default": "storage#buckets" - }, - "nextPageToken": { - "type": "string", - "description": "The continuation token, used to page through large result sets. Provide this value in a subsequent request to return the next page of results." - } - } - }, - "Channel": { - "id": "Channel", - "type": "object", - "description": "An notification channel used to watch for resource changes.", - "properties": { - "address": { - "type": "string", - "description": "The address where notifications are delivered for this channel." - }, - "expiration": { - "type": "string", - "description": "Date and time of notification channel expiration, expressed as a Unix timestamp, in milliseconds. Optional.", - "format": "int64" - }, - "id": { - "type": "string", - "description": "A UUID or similar unique string that identifies this channel." - }, - "kind": { - "type": "string", - "description": "Identifies this as a notification channel used to watch for changes to a resource. Value: the fixed string \"api#channel\".", - "default": "api#channel" - }, - "params": { - "type": "object", - "description": "Additional parameters controlling delivery channel behavior. Optional.", - "additionalProperties": { - "type": "string", - "description": "Declares a new parameter by name." - } - }, - "payload": { - "type": "boolean", - "description": "A Boolean value to indicate whether payload is wanted. Optional." - }, - "resourceId": { - "type": "string", - "description": "An opaque ID that identifies the resource being watched on this channel. Stable across different API versions." - }, - "resourceUri": { - "type": "string", - "description": "A version-specific identifier for the watched resource." - }, - "token": { - "type": "string", - "description": "An arbitrary string delivered to the target address with each notification delivered over this channel. Optional." - }, - "type": { - "type": "string", - "description": "The type of delivery mechanism used for this channel." - } - } - }, - "ComposeRequest": { - "id": "ComposeRequest", - "type": "object", - "description": "A Compose request.", - "properties": { - "destination": { - "$ref": "Object", - "description": "Properties of the resulting object" - }, - "kind": { - "type": "string", - "description": "The kind of item this is.", - "default": "storage#composeRequest" - }, - "sourceObjects": { - "type": "array", - "description": "The list of source objects that will be concatenated into a single object.", - "items": { - "type": "object", - "properties": { - "generation": { - "type": "string", - "description": "The generation of this object to use as the source.", - "format": "int64" - }, - "name": { - "type": "string", - "description": "The source object's name. The source object's bucket is implicitly the destination bucket.", - "annotations": { - "required": [ - "storage.objects.compose" - ] - } - }, - "objectPreconditions": { - "type": "object", - "description": "Conditions that must be met for this operation to execute.", - "properties": { - "ifGenerationMatch": { - "type": "string", - "description": "Only perform the composition if the generation of the source object that would be used matches this value. If this value and a generation are both specified, they must be the same value or the call will fail.", - "format": "int64" - } - } - } - } - }, - "annotations": { - "required": [ - "storage.objects.compose" - ] - } - } - } - }, - "Object": { - "id": "Object", - "type": "object", - "description": "An object.", - "properties": { - "acl": { - "type": "array", - "description": "Access controls on the object.", - "items": { - "$ref": "ObjectAccessControl" - }, - "annotations": { - "required": [ - "storage.objects.update" - ] - } - }, - "bucket": { - "type": "string", - "description": "The bucket containing this object." - }, - "cacheControl": { - "type": "string", - "description": "Cache-Control directive for the object data." - }, - "componentCount": { - "type": "integer", - "description": "Number of underlying components that make up this object. Components are accumulated by compose operations and are limited to a count of 32.", - "format": "int32" - }, - "contentDisposition": { - "type": "string", - "description": "Content-Disposition of the object data." - }, - "contentEncoding": { - "type": "string", - "description": "Content-Encoding of the object data." - }, - "contentLanguage": { - "type": "string", - "description": "Content-Language of the object data." - }, - "contentType": { - "type": "string", - "description": "Content-Type of the object data.", - "annotations": { - "required": [ - "storage.objects.update" - ] - } - }, - "crc32c": { - "type": "string", - "description": "CRC32c checksum, as described in RFC 4960, Appendix B; encoded using base64." - }, - "etag": { - "type": "string", - "description": "HTTP 1.1 Entity tag for the object." - }, - "generation": { - "type": "string", - "description": "The content generation of this object. Used for object versioning.", - "format": "int64" - }, - "id": { - "type": "string", - "description": "The ID of the object." - }, - "kind": { - "type": "string", - "description": "The kind of item this is. For objects, this is always storage#object.", - "default": "storage#object" - }, - "md5Hash": { - "type": "string", - "description": "MD5 hash of the data; encoded using base64." - }, - "mediaLink": { - "type": "string", - "description": "Media download link." - }, - "metadata": { - "type": "object", - "description": "User-provided metadata, in key/value pairs.", - "additionalProperties": { - "type": "string", - "description": "An individual metadata entry." - } - }, - "metageneration": { - "type": "string", - "description": "The generation of the metadata for this object at this generation. Used for metadata versioning. Has no meaning outside of the context of this generation.", - "format": "int64" - }, - "name": { - "type": "string", - "description": "The name of this object. Required if not specified by URL parameter." - }, - "owner": { - "type": "object", - "description": "The owner of the object. This will always be the uploader of the object.", - "properties": { - "entity": { - "type": "string", - "description": "The entity, in the form user-userId." - }, - "entityId": { - "type": "string", - "description": "The ID for the entity." - } - } - }, - "selfLink": { - "type": "string", - "description": "The link to this object." - }, - "size": { - "type": "string", - "description": "Content-Length of the data in bytes.", - "format": "uint64" - }, - "storageClass": { - "type": "string", - "description": "Storage class of the object." - }, - "timeDeleted": { - "type": "string", - "description": "Deletion time of the object in RFC 3339 format. Will be returned if and only if this version of the object has been deleted.", - "format": "date-time" - }, - "updated": { - "type": "string", - "description": "Modification time of the object metadata in RFC 3339 format.", - "format": "date-time" - } - } - }, - "ObjectAccessControl": { - "id": "ObjectAccessControl", - "type": "object", - "description": "An access-control entry.", - "properties": { - "bucket": { - "type": "string", - "description": "The name of the bucket." - }, - "domain": { - "type": "string", - "description": "The domain associated with the entity, if any." - }, - "email": { - "type": "string", - "description": "The email address associated with the entity, if any." - }, - "entity": { - "type": "string", - "description": "The entity holding the permission, in one of the following forms: \n- user-userId \n- user-email \n- group-groupId \n- group-email \n- domain-domain \n- allUsers \n- allAuthenticatedUsers Examples: \n- The user liz@example.com would be user-liz@example.com. \n- The group example@googlegroups.com would be group-example@googlegroups.com. \n- To refer to all members of the Google Apps for Business domain example.com, the entity would be domain-example.com." - }, - "entityId": { - "type": "string", - "description": "The ID for the entity, if any." - }, - "etag": { - "type": "string", - "description": "HTTP 1.1 Entity tag for the access-control entry." - }, - "generation": { - "type": "string", - "description": "The content generation of the object.", - "format": "int64" - }, - "id": { - "type": "string", - "description": "The ID of the access-control entry." - }, - "kind": { - "type": "string", - "description": "The kind of item this is. For object access control entries, this is always storage#objectAccessControl.", - "default": "storage#objectAccessControl" - }, - "object": { - "type": "string", - "description": "The name of the object." - }, - "role": { - "type": "string", - "description": "The access permission for the entity. Can be READER or OWNER." - }, - "selfLink": { - "type": "string", - "description": "The link to this access-control entry." - } - } - }, - "ObjectAccessControls": { - "id": "ObjectAccessControls", - "type": "object", - "description": "An access-control list.", - "properties": { - "items": { - "type": "array", - "description": "The list of items.", - "items": { - "type": "any" - } - }, - "kind": { - "type": "string", - "description": "The kind of item this is. For lists of object access control entries, this is always storage#objectAccessControls.", - "default": "storage#objectAccessControls" - } - } - }, - "Objects": { - "id": "Objects", - "type": "object", - "description": "A list of objects.", - "properties": { - "items": { - "type": "array", - "description": "The list of items.", - "items": { - "$ref": "Object" - } - }, - "kind": { - "type": "string", - "description": "The kind of item this is. For lists of objects, this is always storage#objects.", - "default": "storage#objects" - }, - "nextPageToken": { - "type": "string", - "description": "The continuation token, used to page through large result sets. Provide this value in a subsequent request to return the next page of results." - }, - "prefixes": { - "type": "array", - "description": "The list of prefixes of objects matching-but-not-listed up to and including the requested delimiter.", - "items": { - "type": "string" - } - } - } - } - }, - "resources": { - "bucketAccessControls": { - "methods": { - "delete": { - "id": "storage.bucketAccessControls.delete", - "path": "b/{bucket}/acl/{entity}", - "httpMethod": "DELETE", - "description": "Permanently deletes the ACL entry for the specified entity on the specified bucket.", - "parameters": { - "bucket": { - "type": "string", - "description": "Name of a bucket.", - "required": true, - "location": "path" - }, - "entity": { - "type": "string", - "description": "The entity holding the permission. Can be user-userId, user-emailAddress, group-groupId, group-emailAddress, allUsers, or allAuthenticatedUsers.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "bucket", - "entity" - ], - "scopes": [ - "https://www.googleapis.com/auth/devstorage.full_control" - ] - }, - "get": { - "id": "storage.bucketAccessControls.get", - "path": "b/{bucket}/acl/{entity}", - "httpMethod": "GET", - "description": "Returns the ACL entry for the specified entity on the specified bucket.", - "parameters": { - "bucket": { - "type": "string", - "description": "Name of a bucket.", - "required": true, - "location": "path" - }, - "entity": { - "type": "string", - "description": "The entity holding the permission. Can be user-userId, user-emailAddress, group-groupId, group-emailAddress, allUsers, or allAuthenticatedUsers.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "bucket", - "entity" - ], - "response": { - "$ref": "BucketAccessControl" - }, - "scopes": [ - "https://www.googleapis.com/auth/devstorage.full_control" - ] - }, - "insert": { - "id": "storage.bucketAccessControls.insert", - "path": "b/{bucket}/acl", - "httpMethod": "POST", - "description": "Creates a new ACL entry on the specified bucket.", - "parameters": { - "bucket": { - "type": "string", - "description": "Name of a bucket.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "bucket" - ], - "request": { - "$ref": "BucketAccessControl" - }, - "response": { - "$ref": "BucketAccessControl" - }, - "scopes": [ - "https://www.googleapis.com/auth/devstorage.full_control" - ] - }, - "list": { - "id": "storage.bucketAccessControls.list", - "path": "b/{bucket}/acl", - "httpMethod": "GET", - "description": "Retrieves ACL entries on the specified bucket.", - "parameters": { - "bucket": { - "type": "string", - "description": "Name of a bucket.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "bucket" - ], - "response": { - "$ref": "BucketAccessControls" - }, - "scopes": [ - "https://www.googleapis.com/auth/devstorage.full_control" - ] - }, - "patch": { - "id": "storage.bucketAccessControls.patch", - "path": "b/{bucket}/acl/{entity}", - "httpMethod": "PATCH", - "description": "Updates an ACL entry on the specified bucket. This method supports patch semantics.", - "parameters": { - "bucket": { - "type": "string", - "description": "Name of a bucket.", - "required": true, - "location": "path" - }, - "entity": { - "type": "string", - "description": "The entity holding the permission. Can be user-userId, user-emailAddress, group-groupId, group-emailAddress, allUsers, or allAuthenticatedUsers.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "bucket", - "entity" - ], - "request": { - "$ref": "BucketAccessControl" - }, - "response": { - "$ref": "BucketAccessControl" - }, - "scopes": [ - "https://www.googleapis.com/auth/devstorage.full_control" - ] - }, - "update": { - "id": "storage.bucketAccessControls.update", - "path": "b/{bucket}/acl/{entity}", - "httpMethod": "PUT", - "description": "Updates an ACL entry on the specified bucket.", - "parameters": { - "bucket": { - "type": "string", - "description": "Name of a bucket.", - "required": true, - "location": "path" - }, - "entity": { - "type": "string", - "description": "The entity holding the permission. Can be user-userId, user-emailAddress, group-groupId, group-emailAddress, allUsers, or allAuthenticatedUsers.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "bucket", - "entity" - ], - "request": { - "$ref": "BucketAccessControl" - }, - "response": { - "$ref": "BucketAccessControl" - }, - "scopes": [ - "https://www.googleapis.com/auth/devstorage.full_control" - ] - } - } - }, - "buckets": { - "methods": { - "delete": { - "id": "storage.buckets.delete", - "path": "b/{bucket}", - "httpMethod": "DELETE", - "description": "Permanently deletes an empty bucket.", - "parameters": { - "bucket": { - "type": "string", - "description": "Name of a bucket.", - "required": true, - "location": "path" - }, - "ifMetagenerationMatch": { - "type": "string", - "description": "Makes the return of the bucket metadata conditional on whether the bucket's current metageneration matches the given value.", - "format": "uint64", - "location": "query" - }, - "ifMetagenerationNotMatch": { - "type": "string", - "description": "Makes the return of the bucket metadata conditional on whether the bucket's current metageneration does not match the given value.", - "format": "uint64", - "location": "query" - } - }, - "parameterOrder": [ - "bucket" - ], - "scopes": [ - "https://www.googleapis.com/auth/devstorage.full_control", - "https://www.googleapis.com/auth/devstorage.read_write" - ] - }, - "get": { - "id": "storage.buckets.get", - "path": "b/{bucket}", - "httpMethod": "GET", - "description": "Returns metadata for the specified bucket.", - "parameters": { - "bucket": { - "type": "string", - "description": "Name of a bucket.", - "required": true, - "location": "path" - }, - "ifMetagenerationMatch": { - "type": "string", - "description": "Makes the return of the bucket metadata conditional on whether the bucket's current metageneration matches the given value.", - "format": "uint64", - "location": "query" - }, - "ifMetagenerationNotMatch": { - "type": "string", - "description": "Makes the return of the bucket metadata conditional on whether the bucket's current metageneration does not match the given value.", - "format": "uint64", - "location": "query" - }, - "projection": { - "type": "string", - "description": "Set of properties to return. Defaults to noAcl.", - "enum": [ - "full", - "noAcl" - ], - "enumDescriptions": [ - "Include all properties.", - "Omit acl and defaultObjectAcl properties." - ], - "location": "query" - } - }, - "parameterOrder": [ - "bucket" - ], - "response": { - "$ref": "Bucket" - }, - "scopes": [ - "https://www.googleapis.com/auth/devstorage.full_control", - "https://www.googleapis.com/auth/devstorage.read_only", - "https://www.googleapis.com/auth/devstorage.read_write" - ] - }, - "insert": { - "id": "storage.buckets.insert", - "path": "b", - "httpMethod": "POST", - "description": "Creates a new bucket.", - "parameters": { - "project": { - "type": "string", - "description": "A valid API project identifier.", - "required": true, - "location": "query" - }, - "projection": { - "type": "string", - "description": "Set of properties to return. Defaults to noAcl, unless the bucket resource specifies acl or defaultObjectAcl properties, when it defaults to full.", - "enum": [ - "full", - "noAcl" - ], - "enumDescriptions": [ - "Include all properties.", - "Omit acl and defaultObjectAcl properties." - ], - "location": "query" - } - }, - "parameterOrder": [ - "project" - ], - "request": { - "$ref": "Bucket" - }, - "response": { - "$ref": "Bucket" - }, - "scopes": [ - "https://www.googleapis.com/auth/devstorage.full_control", - "https://www.googleapis.com/auth/devstorage.read_write" - ] - }, - "list": { - "id": "storage.buckets.list", - "path": "b", - "httpMethod": "GET", - "description": "Retrieves a list of buckets for a given project.", - "parameters": { - "maxResults": { - "type": "integer", - "description": "Maximum number of buckets to return.", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "A previously-returned page token representing part of the larger set of results to view.", - "location": "query" - }, - "project": { - "type": "string", - "description": "A valid API project identifier.", - "required": true, - "location": "query" - }, - "projection": { - "type": "string", - "description": "Set of properties to return. Defaults to noAcl.", - "enum": [ - "full", - "noAcl" - ], - "enumDescriptions": [ - "Include all properties.", - "Omit acl and defaultObjectAcl properties." - ], - "location": "query" - } - }, - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "Buckets" - }, - "scopes": [ - "https://www.googleapis.com/auth/devstorage.full_control", - "https://www.googleapis.com/auth/devstorage.read_only", - "https://www.googleapis.com/auth/devstorage.read_write" - ] - }, - "patch": { - "id": "storage.buckets.patch", - "path": "b/{bucket}", - "httpMethod": "PATCH", - "description": "Updates a bucket. This method supports patch semantics.", - "parameters": { - "bucket": { - "type": "string", - "description": "Name of a bucket.", - "required": true, - "location": "path" - }, - "ifMetagenerationMatch": { - "type": "string", - "description": "Makes the return of the bucket metadata conditional on whether the bucket's current metageneration matches the given value.", - "format": "uint64", - "location": "query" - }, - "ifMetagenerationNotMatch": { - "type": "string", - "description": "Makes the return of the bucket metadata conditional on whether the bucket's current metageneration does not match the given value.", - "format": "uint64", - "location": "query" - }, - "projection": { - "type": "string", - "description": "Set of properties to return. Defaults to full.", - "enum": [ - "full", - "noAcl" - ], - "enumDescriptions": [ - "Include all properties.", - "Omit acl and defaultObjectAcl properties." - ], - "location": "query" - } - }, - "parameterOrder": [ - "bucket" - ], - "request": { - "$ref": "Bucket" - }, - "response": { - "$ref": "Bucket" - }, - "scopes": [ - "https://www.googleapis.com/auth/devstorage.full_control", - "https://www.googleapis.com/auth/devstorage.read_write" - ] - }, - "update": { - "id": "storage.buckets.update", - "path": "b/{bucket}", - "httpMethod": "PUT", - "description": "Updates a bucket.", - "parameters": { - "bucket": { - "type": "string", - "description": "Name of a bucket.", - "required": true, - "location": "path" - }, - "ifMetagenerationMatch": { - "type": "string", - "description": "Makes the return of the bucket metadata conditional on whether the bucket's current metageneration matches the given value.", - "format": "uint64", - "location": "query" - }, - "ifMetagenerationNotMatch": { - "type": "string", - "description": "Makes the return of the bucket metadata conditional on whether the bucket's current metageneration does not match the given value.", - "format": "uint64", - "location": "query" - }, - "projection": { - "type": "string", - "description": "Set of properties to return. Defaults to full.", - "enum": [ - "full", - "noAcl" - ], - "enumDescriptions": [ - "Include all properties.", - "Omit acl and defaultObjectAcl properties." - ], - "location": "query" - } - }, - "parameterOrder": [ - "bucket" - ], - "request": { - "$ref": "Bucket" - }, - "response": { - "$ref": "Bucket" - }, - "scopes": [ - "https://www.googleapis.com/auth/devstorage.full_control", - "https://www.googleapis.com/auth/devstorage.read_write" - ] - } - } - }, - "channels": { - "methods": { - "stop": { - "id": "storage.channels.stop", - "path": "channels/stop", - "httpMethod": "POST", - "description": "Stop watching resources through this channel", - "request": { - "$ref": "Channel", - "parameterName": "resource" - }, - "scopes": [ - "https://www.googleapis.com/auth/devstorage.full_control", - "https://www.googleapis.com/auth/devstorage.read_only", - "https://www.googleapis.com/auth/devstorage.read_write" - ] - } - } - }, - "defaultObjectAccessControls": { - "methods": { - "delete": { - "id": "storage.defaultObjectAccessControls.delete", - "path": "b/{bucket}/defaultObjectAcl/{entity}", - "httpMethod": "DELETE", - "description": "Permanently deletes the default object ACL entry for the specified entity on the specified bucket.", - "parameters": { - "bucket": { - "type": "string", - "description": "Name of a bucket.", - "required": true, - "location": "path" - }, - "entity": { - "type": "string", - "description": "The entity holding the permission. Can be user-userId, user-emailAddress, group-groupId, group-emailAddress, allUsers, or allAuthenticatedUsers.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "bucket", - "entity" - ], - "scopes": [ - "https://www.googleapis.com/auth/devstorage.full_control" - ] - }, - "get": { - "id": "storage.defaultObjectAccessControls.get", - "path": "b/{bucket}/defaultObjectAcl/{entity}", - "httpMethod": "GET", - "description": "Returns the default object ACL entry for the specified entity on the specified bucket.", - "parameters": { - "bucket": { - "type": "string", - "description": "Name of a bucket.", - "required": true, - "location": "path" - }, - "entity": { - "type": "string", - "description": "The entity holding the permission. Can be user-userId, user-emailAddress, group-groupId, group-emailAddress, allUsers, or allAuthenticatedUsers.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "bucket", - "entity" - ], - "response": { - "$ref": "ObjectAccessControl" - }, - "scopes": [ - "https://www.googleapis.com/auth/devstorage.full_control" - ] - }, - "insert": { - "id": "storage.defaultObjectAccessControls.insert", - "path": "b/{bucket}/defaultObjectAcl", - "httpMethod": "POST", - "description": "Creates a new default object ACL entry on the specified bucket.", - "parameters": { - "bucket": { - "type": "string", - "description": "Name of a bucket.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "bucket" - ], - "request": { - "$ref": "ObjectAccessControl" - }, - "response": { - "$ref": "ObjectAccessControl" - }, - "scopes": [ - "https://www.googleapis.com/auth/devstorage.full_control" - ] - }, - "list": { - "id": "storage.defaultObjectAccessControls.list", - "path": "b/{bucket}/defaultObjectAcl", - "httpMethod": "GET", - "description": "Retrieves default object ACL entries on the specified bucket.", - "parameters": { - "bucket": { - "type": "string", - "description": "Name of a bucket.", - "required": true, - "location": "path" - }, - "ifMetagenerationMatch": { - "type": "string", - "description": "If present, only return default ACL listing if the bucket's current metageneration matches this value.", - "format": "int64", - "location": "query" - }, - "ifMetagenerationNotMatch": { - "type": "string", - "description": "If present, only return default ACL listing if the bucket's current metageneration does not match the given value.", - "format": "int64", - "location": "query" - } - }, - "parameterOrder": [ - "bucket" - ], - "response": { - "$ref": "ObjectAccessControls" - }, - "scopes": [ - "https://www.googleapis.com/auth/devstorage.full_control" - ] - }, - "patch": { - "id": "storage.defaultObjectAccessControls.patch", - "path": "b/{bucket}/defaultObjectAcl/{entity}", - "httpMethod": "PATCH", - "description": "Updates a default object ACL entry on the specified bucket. This method supports patch semantics.", - "parameters": { - "bucket": { - "type": "string", - "description": "Name of a bucket.", - "required": true, - "location": "path" - }, - "entity": { - "type": "string", - "description": "The entity holding the permission. Can be user-userId, user-emailAddress, group-groupId, group-emailAddress, allUsers, or allAuthenticatedUsers.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "bucket", - "entity" - ], - "request": { - "$ref": "ObjectAccessControl" - }, - "response": { - "$ref": "ObjectAccessControl" - }, - "scopes": [ - "https://www.googleapis.com/auth/devstorage.full_control" - ] - }, - "update": { - "id": "storage.defaultObjectAccessControls.update", - "path": "b/{bucket}/defaultObjectAcl/{entity}", - "httpMethod": "PUT", - "description": "Updates a default object ACL entry on the specified bucket.", - "parameters": { - "bucket": { - "type": "string", - "description": "Name of a bucket.", - "required": true, - "location": "path" - }, - "entity": { - "type": "string", - "description": "The entity holding the permission. Can be user-userId, user-emailAddress, group-groupId, group-emailAddress, allUsers, or allAuthenticatedUsers.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "bucket", - "entity" - ], - "request": { - "$ref": "ObjectAccessControl" - }, - "response": { - "$ref": "ObjectAccessControl" - }, - "scopes": [ - "https://www.googleapis.com/auth/devstorage.full_control" - ] - } - } - }, - "objectAccessControls": { - "methods": { - "delete": { - "id": "storage.objectAccessControls.delete", - "path": "b/{bucket}/o/{object}/acl/{entity}", - "httpMethod": "DELETE", - "description": "Permanently deletes the ACL entry for the specified entity on the specified object.", - "parameters": { - "bucket": { - "type": "string", - "description": "Name of a bucket.", - "required": true, - "location": "path" - }, - "entity": { - "type": "string", - "description": "The entity holding the permission. Can be user-userId, user-emailAddress, group-groupId, group-emailAddress, allUsers, or allAuthenticatedUsers.", - "required": true, - "location": "path" - }, - "generation": { - "type": "string", - "description": "If present, selects a specific revision of this object (as opposed to the latest version, the default).", - "format": "uint64", - "location": "query" - }, - "object": { - "type": "string", - "description": "Name of the object.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "bucket", - "object", - "entity" - ], - "scopes": [ - "https://www.googleapis.com/auth/devstorage.full_control" - ] - }, - "get": { - "id": "storage.objectAccessControls.get", - "path": "b/{bucket}/o/{object}/acl/{entity}", - "httpMethod": "GET", - "description": "Returns the ACL entry for the specified entity on the specified object.", - "parameters": { - "bucket": { - "type": "string", - "description": "Name of a bucket.", - "required": true, - "location": "path" - }, - "entity": { - "type": "string", - "description": "The entity holding the permission. Can be user-userId, user-emailAddress, group-groupId, group-emailAddress, allUsers, or allAuthenticatedUsers.", - "required": true, - "location": "path" - }, - "generation": { - "type": "string", - "description": "If present, selects a specific revision of this object (as opposed to the latest version, the default).", - "format": "uint64", - "location": "query" - }, - "object": { - "type": "string", - "description": "Name of the object.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "bucket", - "object", - "entity" - ], - "response": { - "$ref": "ObjectAccessControl" - }, - "scopes": [ - "https://www.googleapis.com/auth/devstorage.full_control" - ] - }, - "insert": { - "id": "storage.objectAccessControls.insert", - "path": "b/{bucket}/o/{object}/acl", - "httpMethod": "POST", - "description": "Creates a new ACL entry on the specified object.", - "parameters": { - "bucket": { - "type": "string", - "description": "Name of a bucket.", - "required": true, - "location": "path" - }, - "generation": { - "type": "string", - "description": "If present, selects a specific revision of this object (as opposed to the latest version, the default).", - "format": "uint64", - "location": "query" - }, - "object": { - "type": "string", - "description": "Name of the object.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "bucket", - "object" - ], - "request": { - "$ref": "ObjectAccessControl" - }, - "response": { - "$ref": "ObjectAccessControl" - }, - "scopes": [ - "https://www.googleapis.com/auth/devstorage.full_control" - ] - }, - "list": { - "id": "storage.objectAccessControls.list", - "path": "b/{bucket}/o/{object}/acl", - "httpMethod": "GET", - "description": "Retrieves ACL entries on the specified object.", - "parameters": { - "bucket": { - "type": "string", - "description": "Name of a bucket.", - "required": true, - "location": "path" - }, - "generation": { - "type": "string", - "description": "If present, selects a specific revision of this object (as opposed to the latest version, the default).", - "format": "uint64", - "location": "query" - }, - "object": { - "type": "string", - "description": "Name of the object.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "bucket", - "object" - ], - "response": { - "$ref": "ObjectAccessControls" - }, - "scopes": [ - "https://www.googleapis.com/auth/devstorage.full_control" - ] - }, - "patch": { - "id": "storage.objectAccessControls.patch", - "path": "b/{bucket}/o/{object}/acl/{entity}", - "httpMethod": "PATCH", - "description": "Updates an ACL entry on the specified object. This method supports patch semantics.", - "parameters": { - "bucket": { - "type": "string", - "description": "Name of a bucket.", - "required": true, - "location": "path" - }, - "entity": { - "type": "string", - "description": "The entity holding the permission. Can be user-userId, user-emailAddress, group-groupId, group-emailAddress, allUsers, or allAuthenticatedUsers.", - "required": true, - "location": "path" - }, - "generation": { - "type": "string", - "description": "If present, selects a specific revision of this object (as opposed to the latest version, the default).", - "format": "uint64", - "location": "query" - }, - "object": { - "type": "string", - "description": "Name of the object.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "bucket", - "object", - "entity" - ], - "request": { - "$ref": "ObjectAccessControl" - }, - "response": { - "$ref": "ObjectAccessControl" - }, - "scopes": [ - "https://www.googleapis.com/auth/devstorage.full_control" - ] - }, - "update": { - "id": "storage.objectAccessControls.update", - "path": "b/{bucket}/o/{object}/acl/{entity}", - "httpMethod": "PUT", - "description": "Updates an ACL entry on the specified object.", - "parameters": { - "bucket": { - "type": "string", - "description": "Name of a bucket.", - "required": true, - "location": "path" - }, - "entity": { - "type": "string", - "description": "The entity holding the permission. Can be user-userId, user-emailAddress, group-groupId, group-emailAddress, allUsers, or allAuthenticatedUsers.", - "required": true, - "location": "path" - }, - "generation": { - "type": "string", - "description": "If present, selects a specific revision of this object (as opposed to the latest version, the default).", - "format": "uint64", - "location": "query" - }, - "object": { - "type": "string", - "description": "Name of the object.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "bucket", - "object", - "entity" - ], - "request": { - "$ref": "ObjectAccessControl" - }, - "response": { - "$ref": "ObjectAccessControl" - }, - "scopes": [ - "https://www.googleapis.com/auth/devstorage.full_control" - ] - } - } - }, - "objects": { - "methods": { - "compose": { - "id": "storage.objects.compose", - "path": "b/{destinationBucket}/o/{destinationObject}/compose", - "httpMethod": "POST", - "description": "Concatenates a list of existing objects into a new object in the same bucket.", - "parameters": { - "destinationBucket": { - "type": "string", - "description": "Name of the bucket in which to store the new object.", - "required": true, - "location": "path" - }, - "destinationObject": { - "type": "string", - "description": "Name of the new object.", - "required": true, - "location": "path" - }, - "ifGenerationMatch": { - "type": "string", - "description": "Makes the operation conditional on whether the object's current generation matches the given value.", - "format": "uint64", - "location": "query" - }, - "ifMetagenerationMatch": { - "type": "string", - "description": "Makes the operation conditional on whether the object's current metageneration matches the given value.", - "format": "uint64", - "location": "query" - } - }, - "parameterOrder": [ - "destinationBucket", - "destinationObject" - ], - "request": { - "$ref": "ComposeRequest" - }, - "response": { - "$ref": "Object" - }, - "scopes": [ - "https://www.googleapis.com/auth/devstorage.full_control", - "https://www.googleapis.com/auth/devstorage.read_write" - ], - "supportsMediaDownload": true - }, - "copy": { - "id": "storage.objects.copy", - "path": "b/{sourceBucket}/o/{sourceObject}/copyTo/b/{destinationBucket}/o/{destinationObject}", - "httpMethod": "POST", - "description": "Copies an object to a destination in the same location. Optionally overrides metadata.", - "parameters": { - "destinationBucket": { - "type": "string", - "description": "Name of the bucket in which to store the new object. Overrides the provided object metadata's bucket value, if any.", - "required": true, - "location": "path" - }, - "destinationObject": { - "type": "string", - "description": "Name of the new object. Required when the object metadata is not otherwise provided. Overrides the object metadata's name value, if any.", - "required": true, - "location": "path" - }, - "ifGenerationMatch": { - "type": "string", - "description": "Makes the operation conditional on whether the destination object's current generation matches the given value.", - "format": "uint64", - "location": "query" - }, - "ifGenerationNotMatch": { - "type": "string", - "description": "Makes the operation conditional on whether the destination object's current generation does not match the given value.", - "format": "uint64", - "location": "query" - }, - "ifMetagenerationMatch": { - "type": "string", - "description": "Makes the operation conditional on whether the destination object's current metageneration matches the given value.", - "format": "uint64", - "location": "query" - }, - "ifMetagenerationNotMatch": { - "type": "string", - "description": "Makes the operation conditional on whether the destination object's current metageneration does not match the given value.", - "format": "uint64", - "location": "query" - }, - "ifSourceGenerationMatch": { - "type": "string", - "description": "Makes the operation conditional on whether the source object's generation matches the given value.", - "format": "uint64", - "location": "query" - }, - "ifSourceGenerationNotMatch": { - "type": "string", - "description": "Makes the operation conditional on whether the source object's generation does not match the given value.", - "format": "uint64", - "location": "query" - }, - "ifSourceMetagenerationMatch": { - "type": "string", - "description": "Makes the operation conditional on whether the source object's current metageneration matches the given value.", - "format": "uint64", - "location": "query" - }, - "ifSourceMetagenerationNotMatch": { - "type": "string", - "description": "Makes the operation conditional on whether the source object's current metageneration does not match the given value.", - "format": "uint64", - "location": "query" - }, - "projection": { - "type": "string", - "description": "Set of properties to return. Defaults to noAcl, unless the object resource specifies the acl property, when it defaults to full.", - "enum": [ - "full", - "noAcl" - ], - "enumDescriptions": [ - "Include all properties.", - "Omit the acl property." - ], - "location": "query" - }, - "sourceBucket": { - "type": "string", - "description": "Name of the bucket in which to find the source object.", - "required": true, - "location": "path" - }, - "sourceGeneration": { - "type": "string", - "description": "If present, selects a specific revision of the source object (as opposed to the latest version, the default).", - "format": "uint64", - "location": "query" - }, - "sourceObject": { - "type": "string", - "description": "Name of the source object.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "sourceBucket", - "sourceObject", - "destinationBucket", - "destinationObject" - ], - "request": { - "$ref": "Object" - }, - "response": { - "$ref": "Object" - }, - "scopes": [ - "https://www.googleapis.com/auth/devstorage.full_control", - "https://www.googleapis.com/auth/devstorage.read_write" - ], - "supportsMediaDownload": true - }, - "delete": { - "id": "storage.objects.delete", - "path": "b/{bucket}/o/{object}", - "httpMethod": "DELETE", - "description": "Deletes data blobs and associated metadata. Deletions are permanent if versioning is not enabled for the bucket, or if the generation parameter is used.", - "parameters": { - "bucket": { - "type": "string", - "description": "Name of the bucket in which the object resides.", - "required": true, - "location": "path" - }, - "generation": { - "type": "string", - "description": "If present, permanently deletes a specific revision of this object (as opposed to the latest version, the default).", - "format": "uint64", - "location": "query" - }, - "ifGenerationMatch": { - "type": "string", - "description": "Makes the operation conditional on whether the object's current generation matches the given value.", - "format": "uint64", - "location": "query" - }, - "ifGenerationNotMatch": { - "type": "string", - "description": "Makes the operation conditional on whether the object's current generation does not match the given value.", - "format": "uint64", - "location": "query" - }, - "ifMetagenerationMatch": { - "type": "string", - "description": "Makes the operation conditional on whether the object's current metageneration matches the given value.", - "format": "uint64", - "location": "query" - }, - "ifMetagenerationNotMatch": { - "type": "string", - "description": "Makes the operation conditional on whether the object's current metageneration does not match the given value.", - "format": "uint64", - "location": "query" - }, - "object": { - "type": "string", - "description": "Name of the object.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "bucket", - "object" - ], - "scopes": [ - "https://www.googleapis.com/auth/devstorage.full_control", - "https://www.googleapis.com/auth/devstorage.read_write" - ] - }, - "get": { - "id": "storage.objects.get", - "path": "b/{bucket}/o/{object}", - "httpMethod": "GET", - "description": "Retrieves objects or their associated metadata.", - "parameters": { - "bucket": { - "type": "string", - "description": "Name of the bucket in which the object resides.", - "required": true, - "location": "path" - }, - "generation": { - "type": "string", - "description": "If present, selects a specific revision of this object (as opposed to the latest version, the default).", - "format": "uint64", - "location": "query" - }, - "ifGenerationMatch": { - "type": "string", - "description": "Makes the operation conditional on whether the object's generation matches the given value.", - "format": "uint64", - "location": "query" - }, - "ifGenerationNotMatch": { - "type": "string", - "description": "Makes the operation conditional on whether the object's generation does not match the given value.", - "format": "uint64", - "location": "query" - }, - "ifMetagenerationMatch": { - "type": "string", - "description": "Makes the operation conditional on whether the object's current metageneration matches the given value.", - "format": "uint64", - "location": "query" - }, - "ifMetagenerationNotMatch": { - "type": "string", - "description": "Makes the operation conditional on whether the object's current metageneration does not match the given value.", - "format": "uint64", - "location": "query" - }, - "object": { - "type": "string", - "description": "Name of the object.", - "required": true, - "location": "path" - }, - "projection": { - "type": "string", - "description": "Set of properties to return. Defaults to noAcl.", - "enum": [ - "full", - "noAcl" - ], - "enumDescriptions": [ - "Include all properties.", - "Omit the acl property." - ], - "location": "query" - } - }, - "parameterOrder": [ - "bucket", - "object" - ], - "response": { - "$ref": "Object" - }, - "scopes": [ - "https://www.googleapis.com/auth/devstorage.full_control", - "https://www.googleapis.com/auth/devstorage.read_only", - "https://www.googleapis.com/auth/devstorage.read_write" - ], - "supportsMediaDownload": true - }, - "insert": { - "id": "storage.objects.insert", - "path": "b/{bucket}/o", - "httpMethod": "POST", - "description": "Stores new data blobs and associated metadata.", - "parameters": { - "bucket": { - "type": "string", - "description": "Name of the bucket in which to store the new object. Overrides the provided object metadata's bucket value, if any.", - "required": true, - "location": "path" - }, - "ifGenerationMatch": { - "type": "string", - "description": "Makes the operation conditional on whether the object's current generation matches the given value.", - "format": "uint64", - "location": "query" - }, - "ifGenerationNotMatch": { - "type": "string", - "description": "Makes the operation conditional on whether the object's current generation does not match the given value.", - "format": "uint64", - "location": "query" - }, - "ifMetagenerationMatch": { - "type": "string", - "description": "Makes the operation conditional on whether the object's current metageneration matches the given value.", - "format": "uint64", - "location": "query" - }, - "ifMetagenerationNotMatch": { - "type": "string", - "description": "Makes the operation conditional on whether the object's current metageneration does not match the given value.", - "format": "uint64", - "location": "query" - }, - "name": { - "type": "string", - "description": "Name of the object. Required when the object metadata is not otherwise provided. Overrides the object metadata's name value, if any.", - "location": "query" - }, - "projection": { - "type": "string", - "description": "Set of properties to return. Defaults to noAcl, unless the object resource specifies the acl property, when it defaults to full.", - "enum": [ - "full", - "noAcl" - ], - "enumDescriptions": [ - "Include all properties.", - "Omit the acl property." - ], - "location": "query" - } - }, - "parameterOrder": [ - "bucket" - ], - "request": { - "$ref": "Object" - }, - "response": { - "$ref": "Object" - }, - "scopes": [ - "https://www.googleapis.com/auth/devstorage.full_control", - "https://www.googleapis.com/auth/devstorage.read_write" - ], - "supportsMediaDownload": true, - "supportsMediaUpload": true, - "mediaUpload": { - "accept": [ - "*/*" + "id": "storage:v1beta2", + "kind": "discovery#restDescription", + "labels": [ + "labs" + ], + "name": "storage", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "alt": { + "default": "json", + "description": "Data format for the response.", + "enum": [ + "json" ], - "protocols": { - "simple": { - "multipart": true, - "path": "/upload/storage/v1beta2/b/{bucket}/o" - }, - "resumable": { - "multipart": true, - "path": "/resumable/upload/storage/v1beta2/b/{bucket}/o" - } - } - } + "enumDescriptions": [ + "Responses with Content-Type of application/json" + ], + "location": "query", + "type": "string" }, - "list": { - "id": "storage.objects.list", - "path": "b/{bucket}/o", - "httpMethod": "GET", - "description": "Retrieves a list of objects matching the criteria.", - "parameters": { - "bucket": { - "type": "string", - "description": "Name of the bucket in which to look for objects.", - "required": true, - "location": "path" - }, - "delimiter": { - "type": "string", - "description": "Returns results in a directory-like mode. items will contain only objects whose names, aside from the prefix, do not contain delimiter. Objects whose names, aside from the prefix, contain delimiter will have their name, truncated after the delimiter, returned in prefixes. Duplicate prefixes are omitted.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "Maximum number of items plus prefixes to return. As duplicate prefixes are omitted, fewer total results may be returned than requested.", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "A previously-returned page token representing part of the larger set of results to view.", - "location": "query" - }, - "prefix": { - "type": "string", - "description": "Filter results to objects whose names begin with this prefix.", - "location": "query" - }, - "projection": { - "type": "string", - "description": "Set of properties to return. Defaults to noAcl.", - "enum": [ - "full", - "noAcl" - ], - "enumDescriptions": [ - "Include all properties.", - "Omit the acl property." - ], - "location": "query" - }, - "versions": { - "type": "boolean", - "description": "If true, lists all versions of a file as distinct results.", - "location": "query" - } - }, - "parameterOrder": [ - "bucket" - ], - "response": { - "$ref": "Objects" - }, - "scopes": [ - "https://www.googleapis.com/auth/devstorage.full_control", - "https://www.googleapis.com/auth/devstorage.read_only", - "https://www.googleapis.com/auth/devstorage.read_write" - ], - "supportsSubscription": true + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "location": "query", + "type": "string" }, - "patch": { - "id": "storage.objects.patch", - "path": "b/{bucket}/o/{object}", - "httpMethod": "PATCH", - "description": "Updates a data blob's associated metadata. This method supports patch semantics.", - "parameters": { - "bucket": { - "type": "string", - "description": "Name of the bucket in which the object resides.", - "required": true, - "location": "path" - }, - "generation": { - "type": "string", - "description": "If present, selects a specific revision of this object (as opposed to the latest version, the default).", - "format": "uint64", - "location": "query" - }, - "ifGenerationMatch": { - "type": "string", - "description": "Makes the operation conditional on whether the object's current generation matches the given value.", - "format": "uint64", - "location": "query" - }, - "ifGenerationNotMatch": { - "type": "string", - "description": "Makes the operation conditional on whether the object's current generation does not match the given value.", - "format": "uint64", - "location": "query" - }, - "ifMetagenerationMatch": { - "type": "string", - "description": "Makes the operation conditional on whether the object's current metageneration matches the given value.", - "format": "uint64", - "location": "query" - }, - "ifMetagenerationNotMatch": { - "type": "string", - "description": "Makes the operation conditional on whether the object's current metageneration does not match the given value.", - "format": "uint64", - "location": "query" - }, - "object": { - "type": "string", - "description": "Name of the object.", - "required": true, - "location": "path" - }, - "projection": { - "type": "string", - "description": "Set of properties to return. Defaults to full.", - "enum": [ - "full", - "noAcl" - ], - "enumDescriptions": [ - "Include all properties.", - "Omit the acl property." - ], - "location": "query" - } - }, - "parameterOrder": [ - "bucket", - "object" - ], - "request": { - "$ref": "Object" - }, - "response": { - "$ref": "Object" - }, - "scopes": [ - "https://www.googleapis.com/auth/devstorage.full_control", - "https://www.googleapis.com/auth/devstorage.read_write" - ] + "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" }, - "update": { - "id": "storage.objects.update", - "path": "b/{bucket}/o/{object}", - "httpMethod": "PUT", - "description": "Updates a data blob's associated metadata.", - "parameters": { - "bucket": { - "type": "string", - "description": "Name of the bucket in which the object resides.", - "required": true, - "location": "path" - }, - "generation": { - "type": "string", - "description": "If present, selects a specific revision of this object (as opposed to the latest version, the default).", - "format": "uint64", - "location": "query" - }, - "ifGenerationMatch": { - "type": "string", - "description": "Makes the operation conditional on whether the object's current generation matches the given value.", - "format": "uint64", - "location": "query" - }, - "ifGenerationNotMatch": { - "type": "string", - "description": "Makes the operation conditional on whether the object's current generation does not match the given value.", - "format": "uint64", - "location": "query" - }, - "ifMetagenerationMatch": { - "type": "string", - "description": "Makes the operation conditional on whether the object's current metageneration matches the given value.", - "format": "uint64", - "location": "query" - }, - "ifMetagenerationNotMatch": { - "type": "string", - "description": "Makes the operation conditional on whether the object's current metageneration does not match the given value.", - "format": "uint64", - "location": "query" - }, - "object": { - "type": "string", - "description": "Name of the object.", - "required": true, - "location": "path" - }, - "projection": { - "type": "string", - "description": "Set of properties to return. Defaults to full.", - "enum": [ - "full", - "noAcl" - ], - "enumDescriptions": [ - "Include all properties.", - "Omit the acl property." - ], - "location": "query" - } - }, - "parameterOrder": [ - "bucket", - "object" - ], - "request": { - "$ref": "Object" - }, - "response": { - "$ref": "Object" - }, - "scopes": [ - "https://www.googleapis.com/auth/devstorage.full_control", - "https://www.googleapis.com/auth/devstorage.read_write" - ], - "supportsMediaDownload": true + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" }, - "watchAll": { - "id": "storage.objects.watchAll", - "path": "b/{bucket}/o/watch", - "httpMethod": "POST", - "description": "Watch for changes on all objects in a bucket.", - "parameters": { - "bucket": { - "type": "string", - "description": "Name of the bucket in which to look for objects.", - "required": true, - "location": "path" - }, - "delimiter": { - "type": "string", - "description": "Returns results in a directory-like mode. items will contain only objects whose names, aside from the prefix, do not contain delimiter. Objects whose names, aside from the prefix, contain delimiter will have their name, truncated after the delimiter, returned in prefixes. Duplicate prefixes are omitted.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "Maximum number of items plus prefixes to return. As duplicate prefixes are omitted, fewer total results may be returned than requested.", - "format": "uint32", - "minimum": "0", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "A previously-returned page token representing part of the larger set of results to view.", - "location": "query" - }, - "prefix": { - "type": "string", - "description": "Filter results to objects whose names begin with this prefix.", - "location": "query" - }, - "projection": { - "type": "string", - "description": "Set of properties to return. Defaults to noAcl.", - "enum": [ - "full", - "noAcl" - ], - "enumDescriptions": [ - "Include all properties.", - "Omit the acl property." - ], - "location": "query" - }, - "versions": { - "type": "boolean", - "description": "If true, lists all versions of a file as distinct results.", - "location": "query" - } - }, - "parameterOrder": [ - "bucket" - ], - "request": { - "$ref": "Channel", - "parameterName": "resource" - }, - "response": { - "$ref": "Channel" - }, - "scopes": [ - "https://www.googleapis.com/auth/devstorage.full_control", - "https://www.googleapis.com/auth/devstorage.read_only", - "https://www.googleapis.com/auth/devstorage.read_write" - ], - "supportsSubscription": true + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", + "location": "query", + "type": "string" + }, + "userIp": { + "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", + "location": "query", + "type": "string" } - } - } - } -} + }, + "protocol": "rest", + "resources": { + "bucketAccessControls": { + "methods": { + "delete": { + "description": "Permanently deletes the ACL entry for the specified entity on the specified bucket.", + "httpMethod": "DELETE", + "id": "storage.bucketAccessControls.delete", + "parameterOrder": [ + "bucket", + "entity" + ], + "parameters": { + "bucket": { + "description": "Name of a bucket.", + "location": "path", + "required": true, + "type": "string" + }, + "entity": { + "description": "The entity holding the permission. Can be user-userId, user-emailAddress, group-groupId, group-emailAddress, allUsers, or allAuthenticatedUsers.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "b/{bucket}/acl/{entity}", + "scopes": [ + "https://www.googleapis.com/auth/devstorage.full_control" + ] + }, + "get": { + "description": "Returns the ACL entry for the specified entity on the specified bucket.", + "httpMethod": "GET", + "id": "storage.bucketAccessControls.get", + "parameterOrder": [ + "bucket", + "entity" + ], + "parameters": { + "bucket": { + "description": "Name of a bucket.", + "location": "path", + "required": true, + "type": "string" + }, + "entity": { + "description": "The entity holding the permission. Can be user-userId, user-emailAddress, group-groupId, group-emailAddress, allUsers, or allAuthenticatedUsers.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "b/{bucket}/acl/{entity}", + "response": { + "$ref": "BucketAccessControl" + }, + "scopes": [ + "https://www.googleapis.com/auth/devstorage.full_control" + ] + }, + "insert": { + "description": "Creates a new ACL entry on the specified bucket.", + "httpMethod": "POST", + "id": "storage.bucketAccessControls.insert", + "parameterOrder": [ + "bucket" + ], + "parameters": { + "bucket": { + "description": "Name of a bucket.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "b/{bucket}/acl", + "request": { + "$ref": "BucketAccessControl" + }, + "response": { + "$ref": "BucketAccessControl" + }, + "scopes": [ + "https://www.googleapis.com/auth/devstorage.full_control" + ] + }, + "list": { + "description": "Retrieves ACL entries on the specified bucket.", + "httpMethod": "GET", + "id": "storage.bucketAccessControls.list", + "parameterOrder": [ + "bucket" + ], + "parameters": { + "bucket": { + "description": "Name of a bucket.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "b/{bucket}/acl", + "response": { + "$ref": "BucketAccessControls" + }, + "scopes": [ + "https://www.googleapis.com/auth/devstorage.full_control" + ] + }, + "patch": { + "description": "Updates an ACL entry on the specified bucket. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "storage.bucketAccessControls.patch", + "parameterOrder": [ + "bucket", + "entity" + ], + "parameters": { + "bucket": { + "description": "Name of a bucket.", + "location": "path", + "required": true, + "type": "string" + }, + "entity": { + "description": "The entity holding the permission. Can be user-userId, user-emailAddress, group-groupId, group-emailAddress, allUsers, or allAuthenticatedUsers.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "b/{bucket}/acl/{entity}", + "request": { + "$ref": "BucketAccessControl" + }, + "response": { + "$ref": "BucketAccessControl" + }, + "scopes": [ + "https://www.googleapis.com/auth/devstorage.full_control" + ] + }, + "update": { + "description": "Updates an ACL entry on the specified bucket.", + "httpMethod": "PUT", + "id": "storage.bucketAccessControls.update", + "parameterOrder": [ + "bucket", + "entity" + ], + "parameters": { + "bucket": { + "description": "Name of a bucket.", + "location": "path", + "required": true, + "type": "string" + }, + "entity": { + "description": "The entity holding the permission. Can be user-userId, user-emailAddress, group-groupId, group-emailAddress, allUsers, or allAuthenticatedUsers.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "b/{bucket}/acl/{entity}", + "request": { + "$ref": "BucketAccessControl" + }, + "response": { + "$ref": "BucketAccessControl" + }, + "scopes": [ + "https://www.googleapis.com/auth/devstorage.full_control" + ] + } + } + }, + "buckets": { + "methods": { + "delete": { + "description": "Permanently deletes an empty bucket.", + "httpMethod": "DELETE", + "id": "storage.buckets.delete", + "parameterOrder": [ + "bucket" + ], + "parameters": { + "bucket": { + "description": "Name of a bucket.", + "location": "path", + "required": true, + "type": "string" + }, + "ifMetagenerationMatch": { + "description": "Makes the return of the bucket metadata conditional on whether the bucket's current metageneration matches the given value.", + "format": "uint64", + "location": "query", + "type": "string" + }, + "ifMetagenerationNotMatch": { + "description": "Makes the return of the bucket metadata conditional on whether the bucket's current metageneration does not match the given value.", + "format": "uint64", + "location": "query", + "type": "string" + } + }, + "path": "b/{bucket}", + "scopes": [ + "https://www.googleapis.com/auth/devstorage.full_control", + "https://www.googleapis.com/auth/devstorage.read_write" + ] + }, + "get": { + "description": "Returns metadata for the specified bucket.", + "httpMethod": "GET", + "id": "storage.buckets.get", + "parameterOrder": [ + "bucket" + ], + "parameters": { + "bucket": { + "description": "Name of a bucket.", + "location": "path", + "required": true, + "type": "string" + }, + "ifMetagenerationMatch": { + "description": "Makes the return of the bucket metadata conditional on whether the bucket's current metageneration matches the given value.", + "format": "uint64", + "location": "query", + "type": "string" + }, + "ifMetagenerationNotMatch": { + "description": "Makes the return of the bucket metadata conditional on whether the bucket's current metageneration does not match the given value.", + "format": "uint64", + "location": "query", + "type": "string" + }, + "projection": { + "description": "Set of properties to return. Defaults to noAcl.", + "enum": [ + "full", + "noAcl" + ], + "enumDescriptions": [ + "Include all properties.", + "Omit acl and defaultObjectAcl properties." + ], + "location": "query", + "type": "string" + } + }, + "path": "b/{bucket}", + "response": { + "$ref": "Bucket" + }, + "scopes": [ + "https://www.googleapis.com/auth/devstorage.full_control", + "https://www.googleapis.com/auth/devstorage.read_only", + "https://www.googleapis.com/auth/devstorage.read_write" + ] + }, + "insert": { + "description": "Creates a new bucket.", + "httpMethod": "POST", + "id": "storage.buckets.insert", + "parameterOrder": [ + "project" + ], + "parameters": { + "project": { + "description": "A valid API project identifier.", + "location": "query", + "required": true, + "type": "string" + }, + "projection": { + "description": "Set of properties to return. Defaults to noAcl, unless the bucket resource specifies acl or defaultObjectAcl properties, when it defaults to full.", + "enum": [ + "full", + "noAcl" + ], + "enumDescriptions": [ + "Include all properties.", + "Omit acl and defaultObjectAcl properties." + ], + "location": "query", + "type": "string" + } + }, + "path": "b", + "request": { + "$ref": "Bucket" + }, + "response": { + "$ref": "Bucket" + }, + "scopes": [ + "https://www.googleapis.com/auth/devstorage.full_control", + "https://www.googleapis.com/auth/devstorage.read_write" + ] + }, + "list": { + "description": "Retrieves a list of buckets for a given project.", + "httpMethod": "GET", + "id": "storage.buckets.list", + "parameterOrder": [ + "project" + ], + "parameters": { + "maxResults": { + "description": "Maximum number of buckets to return.", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "pageToken": { + "description": "A previously-returned page token representing part of the larger set of results to view.", + "location": "query", + "type": "string" + }, + "project": { + "description": "A valid API project identifier.", + "location": "query", + "required": true, + "type": "string" + }, + "projection": { + "description": "Set of properties to return. Defaults to noAcl.", + "enum": [ + "full", + "noAcl" + ], + "enumDescriptions": [ + "Include all properties.", + "Omit acl and defaultObjectAcl properties." + ], + "location": "query", + "type": "string" + } + }, + "path": "b", + "response": { + "$ref": "Buckets" + }, + "scopes": [ + "https://www.googleapis.com/auth/devstorage.full_control", + "https://www.googleapis.com/auth/devstorage.read_only", + "https://www.googleapis.com/auth/devstorage.read_write" + ] + }, + "patch": { + "description": "Updates a bucket. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "storage.buckets.patch", + "parameterOrder": [ + "bucket" + ], + "parameters": { + "bucket": { + "description": "Name of a bucket.", + "location": "path", + "required": true, + "type": "string" + }, + "ifMetagenerationMatch": { + "description": "Makes the return of the bucket metadata conditional on whether the bucket's current metageneration matches the given value.", + "format": "uint64", + "location": "query", + "type": "string" + }, + "ifMetagenerationNotMatch": { + "description": "Makes the return of the bucket metadata conditional on whether the bucket's current metageneration does not match the given value.", + "format": "uint64", + "location": "query", + "type": "string" + }, + "projection": { + "description": "Set of properties to return. Defaults to full.", + "enum": [ + "full", + "noAcl" + ], + "enumDescriptions": [ + "Include all properties.", + "Omit acl and defaultObjectAcl properties." + ], + "location": "query", + "type": "string" + } + }, + "path": "b/{bucket}", + "request": { + "$ref": "Bucket" + }, + "response": { + "$ref": "Bucket" + }, + "scopes": [ + "https://www.googleapis.com/auth/devstorage.full_control", + "https://www.googleapis.com/auth/devstorage.read_write" + ] + }, + "update": { + "description": "Updates a bucket.", + "httpMethod": "PUT", + "id": "storage.buckets.update", + "parameterOrder": [ + "bucket" + ], + "parameters": { + "bucket": { + "description": "Name of a bucket.", + "location": "path", + "required": true, + "type": "string" + }, + "ifMetagenerationMatch": { + "description": "Makes the return of the bucket metadata conditional on whether the bucket's current metageneration matches the given value.", + "format": "uint64", + "location": "query", + "type": "string" + }, + "ifMetagenerationNotMatch": { + "description": "Makes the return of the bucket metadata conditional on whether the bucket's current metageneration does not match the given value.", + "format": "uint64", + "location": "query", + "type": "string" + }, + "projection": { + "description": "Set of properties to return. Defaults to full.", + "enum": [ + "full", + "noAcl" + ], + "enumDescriptions": [ + "Include all properties.", + "Omit acl and defaultObjectAcl properties." + ], + "location": "query", + "type": "string" + } + }, + "path": "b/{bucket}", + "request": { + "$ref": "Bucket" + }, + "response": { + "$ref": "Bucket" + }, + "scopes": [ + "https://www.googleapis.com/auth/devstorage.full_control", + "https://www.googleapis.com/auth/devstorage.read_write" + ] + } + } + }, + "channels": { + "methods": { + "stop": { + "description": "Stop watching resources through this channel", + "httpMethod": "POST", + "id": "storage.channels.stop", + "path": "channels/stop", + "request": { + "$ref": "Channel", + "parameterName": "resource" + }, + "scopes": [ + "https://www.googleapis.com/auth/devstorage.full_control", + "https://www.googleapis.com/auth/devstorage.read_only", + "https://www.googleapis.com/auth/devstorage.read_write" + ] + } + } + }, + "defaultObjectAccessControls": { + "methods": { + "delete": { + "description": "Permanently deletes the default object ACL entry for the specified entity on the specified bucket.", + "httpMethod": "DELETE", + "id": "storage.defaultObjectAccessControls.delete", + "parameterOrder": [ + "bucket", + "entity" + ], + "parameters": { + "bucket": { + "description": "Name of a bucket.", + "location": "path", + "required": true, + "type": "string" + }, + "entity": { + "description": "The entity holding the permission. Can be user-userId, user-emailAddress, group-groupId, group-emailAddress, allUsers, or allAuthenticatedUsers.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "b/{bucket}/defaultObjectAcl/{entity}", + "scopes": [ + "https://www.googleapis.com/auth/devstorage.full_control" + ] + }, + "get": { + "description": "Returns the default object ACL entry for the specified entity on the specified bucket.", + "httpMethod": "GET", + "id": "storage.defaultObjectAccessControls.get", + "parameterOrder": [ + "bucket", + "entity" + ], + "parameters": { + "bucket": { + "description": "Name of a bucket.", + "location": "path", + "required": true, + "type": "string" + }, + "entity": { + "description": "The entity holding the permission. Can be user-userId, user-emailAddress, group-groupId, group-emailAddress, allUsers, or allAuthenticatedUsers.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "b/{bucket}/defaultObjectAcl/{entity}", + "response": { + "$ref": "ObjectAccessControl" + }, + "scopes": [ + "https://www.googleapis.com/auth/devstorage.full_control" + ] + }, + "insert": { + "description": "Creates a new default object ACL entry on the specified bucket.", + "httpMethod": "POST", + "id": "storage.defaultObjectAccessControls.insert", + "parameterOrder": [ + "bucket" + ], + "parameters": { + "bucket": { + "description": "Name of a bucket.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "b/{bucket}/defaultObjectAcl", + "request": { + "$ref": "ObjectAccessControl" + }, + "response": { + "$ref": "ObjectAccessControl" + }, + "scopes": [ + "https://www.googleapis.com/auth/devstorage.full_control" + ] + }, + "list": { + "description": "Retrieves default object ACL entries on the specified bucket.", + "httpMethod": "GET", + "id": "storage.defaultObjectAccessControls.list", + "parameterOrder": [ + "bucket" + ], + "parameters": { + "bucket": { + "description": "Name of a bucket.", + "location": "path", + "required": true, + "type": "string" + }, + "ifMetagenerationMatch": { + "description": "If present, only return default ACL listing if the bucket's current metageneration matches this value.", + "format": "int64", + "location": "query", + "type": "string" + }, + "ifMetagenerationNotMatch": { + "description": "If present, only return default ACL listing if the bucket's current metageneration does not match the given value.", + "format": "int64", + "location": "query", + "type": "string" + } + }, + "path": "b/{bucket}/defaultObjectAcl", + "response": { + "$ref": "ObjectAccessControls" + }, + "scopes": [ + "https://www.googleapis.com/auth/devstorage.full_control" + ] + }, + "patch": { + "description": "Updates a default object ACL entry on the specified bucket. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "storage.defaultObjectAccessControls.patch", + "parameterOrder": [ + "bucket", + "entity" + ], + "parameters": { + "bucket": { + "description": "Name of a bucket.", + "location": "path", + "required": true, + "type": "string" + }, + "entity": { + "description": "The entity holding the permission. Can be user-userId, user-emailAddress, group-groupId, group-emailAddress, allUsers, or allAuthenticatedUsers.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "b/{bucket}/defaultObjectAcl/{entity}", + "request": { + "$ref": "ObjectAccessControl" + }, + "response": { + "$ref": "ObjectAccessControl" + }, + "scopes": [ + "https://www.googleapis.com/auth/devstorage.full_control" + ] + }, + "update": { + "description": "Updates a default object ACL entry on the specified bucket.", + "httpMethod": "PUT", + "id": "storage.defaultObjectAccessControls.update", + "parameterOrder": [ + "bucket", + "entity" + ], + "parameters": { + "bucket": { + "description": "Name of a bucket.", + "location": "path", + "required": true, + "type": "string" + }, + "entity": { + "description": "The entity holding the permission. Can be user-userId, user-emailAddress, group-groupId, group-emailAddress, allUsers, or allAuthenticatedUsers.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "b/{bucket}/defaultObjectAcl/{entity}", + "request": { + "$ref": "ObjectAccessControl" + }, + "response": { + "$ref": "ObjectAccessControl" + }, + "scopes": [ + "https://www.googleapis.com/auth/devstorage.full_control" + ] + } + } + }, + "objectAccessControls": { + "methods": { + "delete": { + "description": "Permanently deletes the ACL entry for the specified entity on the specified object.", + "httpMethod": "DELETE", + "id": "storage.objectAccessControls.delete", + "parameterOrder": [ + "bucket", + "object", + "entity" + ], + "parameters": { + "bucket": { + "description": "Name of a bucket.", + "location": "path", + "required": true, + "type": "string" + }, + "entity": { + "description": "The entity holding the permission. Can be user-userId, user-emailAddress, group-groupId, group-emailAddress, allUsers, or allAuthenticatedUsers.", + "location": "path", + "required": true, + "type": "string" + }, + "generation": { + "description": "If present, selects a specific revision of this object (as opposed to the latest version, the default).", + "format": "uint64", + "location": "query", + "type": "string" + }, + "object": { + "description": "Name of the object.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "b/{bucket}/o/{object}/acl/{entity}", + "scopes": [ + "https://www.googleapis.com/auth/devstorage.full_control" + ] + }, + "get": { + "description": "Returns the ACL entry for the specified entity on the specified object.", + "httpMethod": "GET", + "id": "storage.objectAccessControls.get", + "parameterOrder": [ + "bucket", + "object", + "entity" + ], + "parameters": { + "bucket": { + "description": "Name of a bucket.", + "location": "path", + "required": true, + "type": "string" + }, + "entity": { + "description": "The entity holding the permission. Can be user-userId, user-emailAddress, group-groupId, group-emailAddress, allUsers, or allAuthenticatedUsers.", + "location": "path", + "required": true, + "type": "string" + }, + "generation": { + "description": "If present, selects a specific revision of this object (as opposed to the latest version, the default).", + "format": "uint64", + "location": "query", + "type": "string" + }, + "object": { + "description": "Name of the object.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "b/{bucket}/o/{object}/acl/{entity}", + "response": { + "$ref": "ObjectAccessControl" + }, + "scopes": [ + "https://www.googleapis.com/auth/devstorage.full_control" + ] + }, + "insert": { + "description": "Creates a new ACL entry on the specified object.", + "httpMethod": "POST", + "id": "storage.objectAccessControls.insert", + "parameterOrder": [ + "bucket", + "object" + ], + "parameters": { + "bucket": { + "description": "Name of a bucket.", + "location": "path", + "required": true, + "type": "string" + }, + "generation": { + "description": "If present, selects a specific revision of this object (as opposed to the latest version, the default).", + "format": "uint64", + "location": "query", + "type": "string" + }, + "object": { + "description": "Name of the object.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "b/{bucket}/o/{object}/acl", + "request": { + "$ref": "ObjectAccessControl" + }, + "response": { + "$ref": "ObjectAccessControl" + }, + "scopes": [ + "https://www.googleapis.com/auth/devstorage.full_control" + ] + }, + "list": { + "description": "Retrieves ACL entries on the specified object.", + "httpMethod": "GET", + "id": "storage.objectAccessControls.list", + "parameterOrder": [ + "bucket", + "object" + ], + "parameters": { + "bucket": { + "description": "Name of a bucket.", + "location": "path", + "required": true, + "type": "string" + }, + "generation": { + "description": "If present, selects a specific revision of this object (as opposed to the latest version, the default).", + "format": "uint64", + "location": "query", + "type": "string" + }, + "object": { + "description": "Name of the object.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "b/{bucket}/o/{object}/acl", + "response": { + "$ref": "ObjectAccessControls" + }, + "scopes": [ + "https://www.googleapis.com/auth/devstorage.full_control" + ] + }, + "patch": { + "description": "Updates an ACL entry on the specified object. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "storage.objectAccessControls.patch", + "parameterOrder": [ + "bucket", + "object", + "entity" + ], + "parameters": { + "bucket": { + "description": "Name of a bucket.", + "location": "path", + "required": true, + "type": "string" + }, + "entity": { + "description": "The entity holding the permission. Can be user-userId, user-emailAddress, group-groupId, group-emailAddress, allUsers, or allAuthenticatedUsers.", + "location": "path", + "required": true, + "type": "string" + }, + "generation": { + "description": "If present, selects a specific revision of this object (as opposed to the latest version, the default).", + "format": "uint64", + "location": "query", + "type": "string" + }, + "object": { + "description": "Name of the object.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "b/{bucket}/o/{object}/acl/{entity}", + "request": { + "$ref": "ObjectAccessControl" + }, + "response": { + "$ref": "ObjectAccessControl" + }, + "scopes": [ + "https://www.googleapis.com/auth/devstorage.full_control" + ] + }, + "update": { + "description": "Updates an ACL entry on the specified object.", + "httpMethod": "PUT", + "id": "storage.objectAccessControls.update", + "parameterOrder": [ + "bucket", + "object", + "entity" + ], + "parameters": { + "bucket": { + "description": "Name of a bucket.", + "location": "path", + "required": true, + "type": "string" + }, + "entity": { + "description": "The entity holding the permission. Can be user-userId, user-emailAddress, group-groupId, group-emailAddress, allUsers, or allAuthenticatedUsers.", + "location": "path", + "required": true, + "type": "string" + }, + "generation": { + "description": "If present, selects a specific revision of this object (as opposed to the latest version, the default).", + "format": "uint64", + "location": "query", + "type": "string" + }, + "object": { + "description": "Name of the object.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "b/{bucket}/o/{object}/acl/{entity}", + "request": { + "$ref": "ObjectAccessControl" + }, + "response": { + "$ref": "ObjectAccessControl" + }, + "scopes": [ + "https://www.googleapis.com/auth/devstorage.full_control" + ] + } + } + }, + "objects": { + "methods": { + "compose": { + "description": "Concatenates a list of existing objects into a new object in the same bucket.", + "httpMethod": "POST", + "id": "storage.objects.compose", + "parameterOrder": [ + "destinationBucket", + "destinationObject" + ], + "parameters": { + "destinationBucket": { + "description": "Name of the bucket in which to store the new object.", + "location": "path", + "required": true, + "type": "string" + }, + "destinationObject": { + "description": "Name of the new object.", + "location": "path", + "required": true, + "type": "string" + }, + "ifGenerationMatch": { + "description": "Makes the operation conditional on whether the object's current generation matches the given value.", + "format": "uint64", + "location": "query", + "type": "string" + }, + "ifMetagenerationMatch": { + "description": "Makes the operation conditional on whether the object's current metageneration matches the given value.", + "format": "uint64", + "location": "query", + "type": "string" + } + }, + "path": "b/{destinationBucket}/o/{destinationObject}/compose", + "request": { + "$ref": "ComposeRequest" + }, + "response": { + "$ref": "Object" + }, + "scopes": [ + "https://www.googleapis.com/auth/devstorage.full_control", + "https://www.googleapis.com/auth/devstorage.read_write" + ], + "supportsMediaDownload": true + }, + "copy": { + "description": "Copies an object to a destination in the same location. Optionally overrides metadata.", + "httpMethod": "POST", + "id": "storage.objects.copy", + "parameterOrder": [ + "sourceBucket", + "sourceObject", + "destinationBucket", + "destinationObject" + ], + "parameters": { + "destinationBucket": { + "description": "Name of the bucket in which to store the new object. Overrides the provided object metadata's bucket value, if any.", + "location": "path", + "required": true, + "type": "string" + }, + "destinationObject": { + "description": "Name of the new object. Required when the object metadata is not otherwise provided. Overrides the object metadata's name value, if any.", + "location": "path", + "required": true, + "type": "string" + }, + "ifGenerationMatch": { + "description": "Makes the operation conditional on whether the destination object's current generation matches the given value.", + "format": "uint64", + "location": "query", + "type": "string" + }, + "ifGenerationNotMatch": { + "description": "Makes the operation conditional on whether the destination object's current generation does not match the given value.", + "format": "uint64", + "location": "query", + "type": "string" + }, + "ifMetagenerationMatch": { + "description": "Makes the operation conditional on whether the destination object's current metageneration matches the given value.", + "format": "uint64", + "location": "query", + "type": "string" + }, + "ifMetagenerationNotMatch": { + "description": "Makes the operation conditional on whether the destination object's current metageneration does not match the given value.", + "format": "uint64", + "location": "query", + "type": "string" + }, + "ifSourceGenerationMatch": { + "description": "Makes the operation conditional on whether the source object's generation matches the given value.", + "format": "uint64", + "location": "query", + "type": "string" + }, + "ifSourceGenerationNotMatch": { + "description": "Makes the operation conditional on whether the source object's generation does not match the given value.", + "format": "uint64", + "location": "query", + "type": "string" + }, + "ifSourceMetagenerationMatch": { + "description": "Makes the operation conditional on whether the source object's current metageneration matches the given value.", + "format": "uint64", + "location": "query", + "type": "string" + }, + "ifSourceMetagenerationNotMatch": { + "description": "Makes the operation conditional on whether the source object's current metageneration does not match the given value.", + "format": "uint64", + "location": "query", + "type": "string" + }, + "projection": { + "description": "Set of properties to return. Defaults to noAcl, unless the object resource specifies the acl property, when it defaults to full.", + "enum": [ + "full", + "noAcl" + ], + "enumDescriptions": [ + "Include all properties.", + "Omit the acl property." + ], + "location": "query", + "type": "string" + }, + "sourceBucket": { + "description": "Name of the bucket in which to find the source object.", + "location": "path", + "required": true, + "type": "string" + }, + "sourceGeneration": { + "description": "If present, selects a specific revision of the source object (as opposed to the latest version, the default).", + "format": "uint64", + "location": "query", + "type": "string" + }, + "sourceObject": { + "description": "Name of the source object.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "b/{sourceBucket}/o/{sourceObject}/copyTo/b/{destinationBucket}/o/{destinationObject}", + "request": { + "$ref": "Object" + }, + "response": { + "$ref": "Object" + }, + "scopes": [ + "https://www.googleapis.com/auth/devstorage.full_control", + "https://www.googleapis.com/auth/devstorage.read_write" + ], + "supportsMediaDownload": true + }, + "delete": { + "description": "Deletes data blobs and associated metadata. Deletions are permanent if versioning is not enabled for the bucket, or if the generation parameter is used.", + "httpMethod": "DELETE", + "id": "storage.objects.delete", + "parameterOrder": [ + "bucket", + "object" + ], + "parameters": { + "bucket": { + "description": "Name of the bucket in which the object resides.", + "location": "path", + "required": true, + "type": "string" + }, + "generation": { + "description": "If present, permanently deletes a specific revision of this object (as opposed to the latest version, the default).", + "format": "uint64", + "location": "query", + "type": "string" + }, + "ifGenerationMatch": { + "description": "Makes the operation conditional on whether the object's current generation matches the given value.", + "format": "uint64", + "location": "query", + "type": "string" + }, + "ifGenerationNotMatch": { + "description": "Makes the operation conditional on whether the object's current generation does not match the given value.", + "format": "uint64", + "location": "query", + "type": "string" + }, + "ifMetagenerationMatch": { + "description": "Makes the operation conditional on whether the object's current metageneration matches the given value.", + "format": "uint64", + "location": "query", + "type": "string" + }, + "ifMetagenerationNotMatch": { + "description": "Makes the operation conditional on whether the object's current metageneration does not match the given value.", + "format": "uint64", + "location": "query", + "type": "string" + }, + "object": { + "description": "Name of the object.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "b/{bucket}/o/{object}", + "scopes": [ + "https://www.googleapis.com/auth/devstorage.full_control", + "https://www.googleapis.com/auth/devstorage.read_write" + ] + }, + "get": { + "description": "Retrieves objects or their associated metadata.", + "httpMethod": "GET", + "id": "storage.objects.get", + "parameterOrder": [ + "bucket", + "object" + ], + "parameters": { + "bucket": { + "description": "Name of the bucket in which the object resides.", + "location": "path", + "required": true, + "type": "string" + }, + "generation": { + "description": "If present, selects a specific revision of this object (as opposed to the latest version, the default).", + "format": "uint64", + "location": "query", + "type": "string" + }, + "ifGenerationMatch": { + "description": "Makes the operation conditional on whether the object's generation matches the given value.", + "format": "uint64", + "location": "query", + "type": "string" + }, + "ifGenerationNotMatch": { + "description": "Makes the operation conditional on whether the object's generation does not match the given value.", + "format": "uint64", + "location": "query", + "type": "string" + }, + "ifMetagenerationMatch": { + "description": "Makes the operation conditional on whether the object's current metageneration matches the given value.", + "format": "uint64", + "location": "query", + "type": "string" + }, + "ifMetagenerationNotMatch": { + "description": "Makes the operation conditional on whether the object's current metageneration does not match the given value.", + "format": "uint64", + "location": "query", + "type": "string" + }, + "object": { + "description": "Name of the object.", + "location": "path", + "required": true, + "type": "string" + }, + "projection": { + "description": "Set of properties to return. Defaults to noAcl.", + "enum": [ + "full", + "noAcl" + ], + "enumDescriptions": [ + "Include all properties.", + "Omit the acl property." + ], + "location": "query", + "type": "string" + } + }, + "path": "b/{bucket}/o/{object}", + "response": { + "$ref": "Object" + }, + "scopes": [ + "https://www.googleapis.com/auth/devstorage.full_control", + "https://www.googleapis.com/auth/devstorage.read_only", + "https://www.googleapis.com/auth/devstorage.read_write" + ], + "supportsMediaDownload": true + }, + "insert": { + "description": "Stores new data blobs and associated metadata.", + "httpMethod": "POST", + "id": "storage.objects.insert", + "mediaUpload": { + "accept": [ + "*/*" + ], + "protocols": { + "resumable": { + "multipart": true, + "path": "/resumable/upload/storage/v1beta2/b/{bucket}/o" + }, + "simple": { + "multipart": true, + "path": "/upload/storage/v1beta2/b/{bucket}/o" + } + } + }, + "parameterOrder": [ + "bucket" + ], + "parameters": { + "bucket": { + "description": "Name of the bucket in which to store the new object. Overrides the provided object metadata's bucket value, if any.", + "location": "path", + "required": true, + "type": "string" + }, + "ifGenerationMatch": { + "description": "Makes the operation conditional on whether the object's current generation matches the given value.", + "format": "uint64", + "location": "query", + "type": "string" + }, + "ifGenerationNotMatch": { + "description": "Makes the operation conditional on whether the object's current generation does not match the given value.", + "format": "uint64", + "location": "query", + "type": "string" + }, + "ifMetagenerationMatch": { + "description": "Makes the operation conditional on whether the object's current metageneration matches the given value.", + "format": "uint64", + "location": "query", + "type": "string" + }, + "ifMetagenerationNotMatch": { + "description": "Makes the operation conditional on whether the object's current metageneration does not match the given value.", + "format": "uint64", + "location": "query", + "type": "string" + }, + "name": { + "description": "Name of the object. Required when the object metadata is not otherwise provided. Overrides the object metadata's name value, if any.", + "location": "query", + "type": "string" + }, + "projection": { + "description": "Set of properties to return. Defaults to noAcl, unless the object resource specifies the acl property, when it defaults to full.", + "enum": [ + "full", + "noAcl" + ], + "enumDescriptions": [ + "Include all properties.", + "Omit the acl property." + ], + "location": "query", + "type": "string" + } + }, + "path": "b/{bucket}/o", + "request": { + "$ref": "Object" + }, + "response": { + "$ref": "Object" + }, + "scopes": [ + "https://www.googleapis.com/auth/devstorage.full_control", + "https://www.googleapis.com/auth/devstorage.read_write" + ], + "supportsMediaDownload": true, + "supportsMediaUpload": true + }, + "list": { + "description": "Retrieves a list of objects matching the criteria.", + "httpMethod": "GET", + "id": "storage.objects.list", + "parameterOrder": [ + "bucket" + ], + "parameters": { + "bucket": { + "description": "Name of the bucket in which to look for objects.", + "location": "path", + "required": true, + "type": "string" + }, + "delimiter": { + "description": "Returns results in a directory-like mode. items will contain only objects whose names, aside from the prefix, do not contain delimiter. Objects whose names, aside from the prefix, contain delimiter will have their name, truncated after the delimiter, returned in prefixes. Duplicate prefixes are omitted.", + "location": "query", + "type": "string" + }, + "maxResults": { + "description": "Maximum number of items plus prefixes to return. As duplicate prefixes are omitted, fewer total results may be returned than requested.", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "pageToken": { + "description": "A previously-returned page token representing part of the larger set of results to view.", + "location": "query", + "type": "string" + }, + "prefix": { + "description": "Filter results to objects whose names begin with this prefix.", + "location": "query", + "type": "string" + }, + "projection": { + "description": "Set of properties to return. Defaults to noAcl.", + "enum": [ + "full", + "noAcl" + ], + "enumDescriptions": [ + "Include all properties.", + "Omit the acl property." + ], + "location": "query", + "type": "string" + }, + "versions": { + "description": "If true, lists all versions of a file as distinct results.", + "location": "query", + "type": "boolean" + } + }, + "path": "b/{bucket}/o", + "response": { + "$ref": "Objects" + }, + "scopes": [ + "https://www.googleapis.com/auth/devstorage.full_control", + "https://www.googleapis.com/auth/devstorage.read_only", + "https://www.googleapis.com/auth/devstorage.read_write" + ], + "supportsSubscription": true + }, + "patch": { + "description": "Updates a data blob's associated metadata. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "storage.objects.patch", + "parameterOrder": [ + "bucket", + "object" + ], + "parameters": { + "bucket": { + "description": "Name of the bucket in which the object resides.", + "location": "path", + "required": true, + "type": "string" + }, + "generation": { + "description": "If present, selects a specific revision of this object (as opposed to the latest version, the default).", + "format": "uint64", + "location": "query", + "type": "string" + }, + "ifGenerationMatch": { + "description": "Makes the operation conditional on whether the object's current generation matches the given value.", + "format": "uint64", + "location": "query", + "type": "string" + }, + "ifGenerationNotMatch": { + "description": "Makes the operation conditional on whether the object's current generation does not match the given value.", + "format": "uint64", + "location": "query", + "type": "string" + }, + "ifMetagenerationMatch": { + "description": "Makes the operation conditional on whether the object's current metageneration matches the given value.", + "format": "uint64", + "location": "query", + "type": "string" + }, + "ifMetagenerationNotMatch": { + "description": "Makes the operation conditional on whether the object's current metageneration does not match the given value.", + "format": "uint64", + "location": "query", + "type": "string" + }, + "object": { + "description": "Name of the object.", + "location": "path", + "required": true, + "type": "string" + }, + "projection": { + "description": "Set of properties to return. Defaults to full.", + "enum": [ + "full", + "noAcl" + ], + "enumDescriptions": [ + "Include all properties.", + "Omit the acl property." + ], + "location": "query", + "type": "string" + } + }, + "path": "b/{bucket}/o/{object}", + "request": { + "$ref": "Object" + }, + "response": { + "$ref": "Object" + }, + "scopes": [ + "https://www.googleapis.com/auth/devstorage.full_control", + "https://www.googleapis.com/auth/devstorage.read_write" + ] + }, + "update": { + "description": "Updates a data blob's associated metadata.", + "httpMethod": "PUT", + "id": "storage.objects.update", + "parameterOrder": [ + "bucket", + "object" + ], + "parameters": { + "bucket": { + "description": "Name of the bucket in which the object resides.", + "location": "path", + "required": true, + "type": "string" + }, + "generation": { + "description": "If present, selects a specific revision of this object (as opposed to the latest version, the default).", + "format": "uint64", + "location": "query", + "type": "string" + }, + "ifGenerationMatch": { + "description": "Makes the operation conditional on whether the object's current generation matches the given value.", + "format": "uint64", + "location": "query", + "type": "string" + }, + "ifGenerationNotMatch": { + "description": "Makes the operation conditional on whether the object's current generation does not match the given value.", + "format": "uint64", + "location": "query", + "type": "string" + }, + "ifMetagenerationMatch": { + "description": "Makes the operation conditional on whether the object's current metageneration matches the given value.", + "format": "uint64", + "location": "query", + "type": "string" + }, + "ifMetagenerationNotMatch": { + "description": "Makes the operation conditional on whether the object's current metageneration does not match the given value.", + "format": "uint64", + "location": "query", + "type": "string" + }, + "object": { + "description": "Name of the object.", + "location": "path", + "required": true, + "type": "string" + }, + "projection": { + "description": "Set of properties to return. Defaults to full.", + "enum": [ + "full", + "noAcl" + ], + "enumDescriptions": [ + "Include all properties.", + "Omit the acl property." + ], + "location": "query", + "type": "string" + } + }, + "path": "b/{bucket}/o/{object}", + "request": { + "$ref": "Object" + }, + "response": { + "$ref": "Object" + }, + "scopes": [ + "https://www.googleapis.com/auth/devstorage.full_control", + "https://www.googleapis.com/auth/devstorage.read_write" + ], + "supportsMediaDownload": true + }, + "watchAll": { + "description": "Watch for changes on all objects in a bucket.", + "httpMethod": "POST", + "id": "storage.objects.watchAll", + "parameterOrder": [ + "bucket" + ], + "parameters": { + "bucket": { + "description": "Name of the bucket in which to look for objects.", + "location": "path", + "required": true, + "type": "string" + }, + "delimiter": { + "description": "Returns results in a directory-like mode. items will contain only objects whose names, aside from the prefix, do not contain delimiter. Objects whose names, aside from the prefix, contain delimiter will have their name, truncated after the delimiter, returned in prefixes. Duplicate prefixes are omitted.", + "location": "query", + "type": "string" + }, + "maxResults": { + "description": "Maximum number of items plus prefixes to return. As duplicate prefixes are omitted, fewer total results may be returned than requested.", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "pageToken": { + "description": "A previously-returned page token representing part of the larger set of results to view.", + "location": "query", + "type": "string" + }, + "prefix": { + "description": "Filter results to objects whose names begin with this prefix.", + "location": "query", + "type": "string" + }, + "projection": { + "description": "Set of properties to return. Defaults to noAcl.", + "enum": [ + "full", + "noAcl" + ], + "enumDescriptions": [ + "Include all properties.", + "Omit the acl property." + ], + "location": "query", + "type": "string" + }, + "versions": { + "description": "If true, lists all versions of a file as distinct results.", + "location": "query", + "type": "boolean" + } + }, + "path": "b/{bucket}/o/watch", + "request": { + "$ref": "Channel", + "parameterName": "resource" + }, + "response": { + "$ref": "Channel" + }, + "scopes": [ + "https://www.googleapis.com/auth/devstorage.full_control", + "https://www.googleapis.com/auth/devstorage.read_only", + "https://www.googleapis.com/auth/devstorage.read_write" + ], + "supportsSubscription": true + } + } + } + }, + "revision": "20180118", + "rootUrl": "https://www.googleapis.com/", + "schemas": { + "Bucket": { + "description": "A bucket.", + "id": "Bucket", + "properties": { + "acl": { + "annotations": { + "required": [ + "storage.buckets.update" + ] + }, + "description": "Access controls on the bucket.", + "items": { + "$ref": "BucketAccessControl" + }, + "type": "array" + }, + "cors": { + "description": "The bucket's Cross-Origin Resource Sharing (CORS) configuration.", + "items": { + "properties": { + "maxAgeSeconds": { + "description": "The value, in seconds, to return in the Access-Control-Max-Age header used in preflight responses.", + "format": "int32", + "type": "integer" + }, + "method": { + "description": "The list of HTTP methods on which to include CORS response headers: GET, OPTIONS, POST, etc. Note, \"*\" is permitted in the list of methods, and means \"any method\".", + "items": { + "type": "string" + }, + "type": "array" + }, + "origin": { + "description": "The list of Origins eligible to receive CORS response headers. Note: \"*\" is permitted in the list of origins, and means \"any Origin\".", + "items": { + "type": "string" + }, + "type": "array" + }, + "responseHeader": { + "description": "The list of HTTP headers other than the simple response headers to give permission for the user-agent to share across domains.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "type": "array" + }, + "defaultObjectAcl": { + "description": "Default access controls to apply to new objects when no ACL is provided.", + "items": { + "$ref": "ObjectAccessControl" + }, + "type": "array" + }, + "etag": { + "description": "HTTP 1.1 Entity tag for the bucket.", + "type": "string" + }, + "id": { + "description": "The ID of the bucket.", + "type": "string" + }, + "kind": { + "default": "storage#bucket", + "description": "The kind of item this is. For buckets, this is always storage#bucket.", + "type": "string" + }, + "lifecycle": { + "description": "The bucket's lifecycle configuration. See object lifecycle management for more information.", + "properties": { + "rule": { + "description": "A lifecycle management rule, which is made of an action to take and the condition(s) under which the action will be taken.", + "items": { + "properties": { + "action": { + "description": "The action to take.", + "properties": { + "type": { + "description": "Type of the action. Currently only Delete is supported.", + "type": "string" + } + }, + "type": "object" + }, + "condition": { + "description": "The condition(s) under which the action will be taken.", + "properties": { + "age": { + "description": "Age of an object (in days). This condition is satisfied when an object reaches the specified age.", + "format": "int32", + "type": "integer" + }, + "createdBefore": { + "description": "A date in RFC 3339 format with only the date part, e.g. \"2013-01-15\". This condition is satisfied when an object is created before midnight of the specified date in UTC.", + "format": "date", + "type": "string" + }, + "isLive": { + "description": "Relevant only for versioned objects. If the value is true, this condition matches live objects; if the value is false, it matches archived objects.", + "type": "boolean" + }, + "numNewerVersions": { + "description": "Relevant only for versioned objects. If the value is N, this condition is satisfied when there are at least N versions (including the live version) newer than this version of the object.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "type": "array" + } + }, + "type": "object" + }, + "location": { + "description": "The location of the bucket. Object data for objects in the bucket resides in physical storage within this region. Typical values are US and EU. Defaults to US. See the developer's guide for the authoritative list.", + "type": "string" + }, + "logging": { + "description": "The bucket's logging configuration, which defines the destination bucket and optional name prefix for the current bucket's logs.", + "properties": { + "logBucket": { + "description": "The destination bucket where the current bucket's logs should be placed.", + "type": "string" + }, + "logObjectPrefix": { + "description": "A prefix for log object names.", + "type": "string" + } + }, + "type": "object" + }, + "metageneration": { + "description": "The metadata generation of this bucket.", + "format": "int64", + "type": "string" + }, + "name": { + "annotations": { + "required": [ + "storage.buckets.insert" + ] + }, + "description": "The name of the bucket.", + "type": "string" + }, + "owner": { + "description": "The owner of the bucket. This is always the project team's owner group.", + "properties": { + "entity": { + "description": "The entity, in the form group-groupId.", + "type": "string" + }, + "entityId": { + "description": "The ID for the entity.", + "type": "string" + } + }, + "type": "object" + }, + "selfLink": { + "description": "The URI of this bucket.", + "type": "string" + }, + "storageClass": { + "description": "The bucket's storage class. This defines how objects in the bucket are stored and determines the SLA and the cost of storage. Typical values are STANDARD and DURABLE_REDUCED_AVAILABILITY. Defaults to STANDARD. See the developer's guide for the authoritative list.", + "type": "string" + }, + "timeCreated": { + "description": "Creation time of the bucket in RFC 3339 format.", + "format": "date-time", + "type": "string" + }, + "versioning": { + "description": "The bucket's versioning configuration.", + "properties": { + "enabled": { + "description": "While set to true, versioning is fully enabled for this bucket.", + "type": "boolean" + } + }, + "type": "object" + }, + "website": { + "description": "The bucket's website configuration.", + "properties": { + "mainPageSuffix": { + "description": "Behaves as the bucket's directory index where missing objects are treated as potential directories.", + "type": "string" + }, + "notFoundPage": { + "description": "The custom object to return when a requested resource is not found.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "BucketAccessControl": { + "description": "An access-control entry.", + "id": "BucketAccessControl", + "properties": { + "bucket": { + "description": "The name of the bucket.", + "type": "string" + }, + "domain": { + "description": "The domain associated with the entity, if any.", + "type": "string" + }, + "email": { + "description": "The email address associated with the entity, if any.", + "type": "string" + }, + "entity": { + "annotations": { + "required": [ + "storage.bucketAccessControls.insert" + ] + }, + "description": "The entity holding the permission, in one of the following forms: \n- user-userId \n- user-email \n- group-groupId \n- group-email \n- domain-domain \n- allUsers \n- allAuthenticatedUsers Examples: \n- The user liz@example.com would be user-liz@example.com. \n- The group example@googlegroups.com would be group-example@googlegroups.com. \n- To refer to all members of the Google Apps for Business domain example.com, the entity would be domain-example.com.", + "type": "string" + }, + "entityId": { + "description": "The ID for the entity, if any.", + "type": "string" + }, + "etag": { + "description": "HTTP 1.1 Entity tag for the access-control entry.", + "type": "string" + }, + "id": { + "description": "The ID of the access-control entry.", + "type": "string" + }, + "kind": { + "default": "storage#bucketAccessControl", + "description": "The kind of item this is. For bucket access control entries, this is always storage#bucketAccessControl.", + "type": "string" + }, + "role": { + "annotations": { + "required": [ + "storage.bucketAccessControls.insert" + ] + }, + "description": "The access permission for the entity. Can be READER, WRITER, or OWNER.", + "type": "string" + }, + "selfLink": { + "description": "The link to this access-control entry.", + "type": "string" + } + }, + "type": "object" + }, + "BucketAccessControls": { + "description": "An access-control list.", + "id": "BucketAccessControls", + "properties": { + "items": { + "description": "The list of items.", + "items": { + "$ref": "BucketAccessControl" + }, + "type": "array" + }, + "kind": { + "default": "storage#bucketAccessControls", + "description": "The kind of item this is. For lists of bucket access control entries, this is always storage#bucketAccessControls.", + "type": "string" + } + }, + "type": "object" + }, + "Buckets": { + "description": "A list of buckets.", + "id": "Buckets", + "properties": { + "items": { + "description": "The list of items.", + "items": { + "$ref": "Bucket" + }, + "type": "array" + }, + "kind": { + "default": "storage#buckets", + "description": "The kind of item this is. For lists of buckets, this is always storage#buckets.", + "type": "string" + }, + "nextPageToken": { + "description": "The continuation token, used to page through large result sets. Provide this value in a subsequent request to return the next page of results.", + "type": "string" + } + }, + "type": "object" + }, + "Channel": { + "description": "An notification channel used to watch for resource changes.", + "id": "Channel", + "properties": { + "address": { + "description": "The address where notifications are delivered for this channel.", + "type": "string" + }, + "expiration": { + "description": "Date and time of notification channel expiration, expressed as a Unix timestamp, in milliseconds. Optional.", + "format": "int64", + "type": "string" + }, + "id": { + "description": "A UUID or similar unique string that identifies this channel.", + "type": "string" + }, + "kind": { + "default": "api#channel", + "description": "Identifies this as a notification channel used to watch for changes to a resource. Value: the fixed string \"api#channel\".", + "type": "string" + }, + "params": { + "additionalProperties": { + "description": "Declares a new parameter by name.", + "type": "string" + }, + "description": "Additional parameters controlling delivery channel behavior. Optional.", + "type": "object" + }, + "payload": { + "description": "A Boolean value to indicate whether payload is wanted. Optional.", + "type": "boolean" + }, + "resourceId": { + "description": "An opaque ID that identifies the resource being watched on this channel. Stable across different API versions.", + "type": "string" + }, + "resourceUri": { + "description": "A version-specific identifier for the watched resource.", + "type": "string" + }, + "token": { + "description": "An arbitrary string delivered to the target address with each notification delivered over this channel. Optional.", + "type": "string" + }, + "type": { + "description": "The type of delivery mechanism used for this channel.", + "type": "string" + } + }, + "type": "object" + }, + "ComposeRequest": { + "description": "A Compose request.", + "id": "ComposeRequest", + "properties": { + "destination": { + "$ref": "Object", + "description": "Properties of the resulting object" + }, + "kind": { + "default": "storage#composeRequest", + "description": "The kind of item this is.", + "type": "string" + }, + "sourceObjects": { + "annotations": { + "required": [ + "storage.objects.compose" + ] + }, + "description": "The list of source objects that will be concatenated into a single object.", + "items": { + "properties": { + "generation": { + "description": "The generation of this object to use as the source.", + "format": "int64", + "type": "string" + }, + "name": { + "annotations": { + "required": [ + "storage.objects.compose" + ] + }, + "description": "The source object's name. The source object's bucket is implicitly the destination bucket.", + "type": "string" + }, + "objectPreconditions": { + "description": "Conditions that must be met for this operation to execute.", + "properties": { + "ifGenerationMatch": { + "description": "Only perform the composition if the generation of the source object that would be used matches this value. If this value and a generation are both specified, they must be the same value or the call will fail.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "type": "array" + } + }, + "type": "object" + }, + "Object": { + "description": "An object.", + "id": "Object", + "properties": { + "acl": { + "annotations": { + "required": [ + "storage.objects.update" + ] + }, + "description": "Access controls on the object.", + "items": { + "$ref": "ObjectAccessControl" + }, + "type": "array" + }, + "bucket": { + "description": "The bucket containing this object.", + "type": "string" + }, + "cacheControl": { + "description": "Cache-Control directive for the object data.", + "type": "string" + }, + "componentCount": { + "description": "Number of underlying components that make up this object. Components are accumulated by compose operations and are limited to a count of 32.", + "format": "int32", + "type": "integer" + }, + "contentDisposition": { + "description": "Content-Disposition of the object data.", + "type": "string" + }, + "contentEncoding": { + "description": "Content-Encoding of the object data.", + "type": "string" + }, + "contentLanguage": { + "description": "Content-Language of the object data.", + "type": "string" + }, + "contentType": { + "annotations": { + "required": [ + "storage.objects.update" + ] + }, + "description": "Content-Type of the object data.", + "type": "string" + }, + "crc32c": { + "description": "CRC32c checksum, as described in RFC 4960, Appendix B; encoded using base64.", + "type": "string" + }, + "etag": { + "description": "HTTP 1.1 Entity tag for the object.", + "type": "string" + }, + "generation": { + "description": "The content generation of this object. Used for object versioning.", + "format": "int64", + "type": "string" + }, + "id": { + "description": "The ID of the object.", + "type": "string" + }, + "kind": { + "default": "storage#object", + "description": "The kind of item this is. For objects, this is always storage#object.", + "type": "string" + }, + "md5Hash": { + "description": "MD5 hash of the data; encoded using base64.", + "type": "string" + }, + "mediaLink": { + "description": "Media download link.", + "type": "string" + }, + "metadata": { + "additionalProperties": { + "description": "An individual metadata entry.", + "type": "string" + }, + "description": "User-provided metadata, in key/value pairs.", + "type": "object" + }, + "metageneration": { + "description": "The generation of the metadata for this object at this generation. Used for metadata versioning. Has no meaning outside of the context of this generation.", + "format": "int64", + "type": "string" + }, + "name": { + "description": "The name of this object. Required if not specified by URL parameter.", + "type": "string" + }, + "owner": { + "description": "The owner of the object. This will always be the uploader of the object.", + "properties": { + "entity": { + "description": "The entity, in the form user-userId.", + "type": "string" + }, + "entityId": { + "description": "The ID for the entity.", + "type": "string" + } + }, + "type": "object" + }, + "selfLink": { + "description": "The link to this object.", + "type": "string" + }, + "size": { + "description": "Content-Length of the data in bytes.", + "format": "uint64", + "type": "string" + }, + "storageClass": { + "description": "Storage class of the object.", + "type": "string" + }, + "timeDeleted": { + "description": "Deletion time of the object in RFC 3339 format. Will be returned if and only if this version of the object has been deleted.", + "format": "date-time", + "type": "string" + }, + "updated": { + "description": "Modification time of the object metadata in RFC 3339 format.", + "format": "date-time", + "type": "string" + } + }, + "type": "object" + }, + "ObjectAccessControl": { + "description": "An access-control entry.", + "id": "ObjectAccessControl", + "properties": { + "bucket": { + "description": "The name of the bucket.", + "type": "string" + }, + "domain": { + "description": "The domain associated with the entity, if any.", + "type": "string" + }, + "email": { + "description": "The email address associated with the entity, if any.", + "type": "string" + }, + "entity": { + "description": "The entity holding the permission, in one of the following forms: \n- user-userId \n- user-email \n- group-groupId \n- group-email \n- domain-domain \n- allUsers \n- allAuthenticatedUsers Examples: \n- The user liz@example.com would be user-liz@example.com. \n- The group example@googlegroups.com would be group-example@googlegroups.com. \n- To refer to all members of the Google Apps for Business domain example.com, the entity would be domain-example.com.", + "type": "string" + }, + "entityId": { + "description": "The ID for the entity, if any.", + "type": "string" + }, + "etag": { + "description": "HTTP 1.1 Entity tag for the access-control entry.", + "type": "string" + }, + "generation": { + "description": "The content generation of the object.", + "format": "int64", + "type": "string" + }, + "id": { + "description": "The ID of the access-control entry.", + "type": "string" + }, + "kind": { + "default": "storage#objectAccessControl", + "description": "The kind of item this is. For object access control entries, this is always storage#objectAccessControl.", + "type": "string" + }, + "object": { + "description": "The name of the object.", + "type": "string" + }, + "role": { + "description": "The access permission for the entity. Can be READER or OWNER.", + "type": "string" + }, + "selfLink": { + "description": "The link to this access-control entry.", + "type": "string" + } + }, + "type": "object" + }, + "ObjectAccessControls": { + "description": "An access-control list.", + "id": "ObjectAccessControls", + "properties": { + "items": { + "description": "The list of items.", + "items": { + "type": "any" + }, + "type": "array" + }, + "kind": { + "default": "storage#objectAccessControls", + "description": "The kind of item this is. For lists of object access control entries, this is always storage#objectAccessControls.", + "type": "string" + } + }, + "type": "object" + }, + "Objects": { + "description": "A list of objects.", + "id": "Objects", + "properties": { + "items": { + "description": "The list of items.", + "items": { + "$ref": "Object" + }, + "type": "array" + }, + "kind": { + "default": "storage#objects", + "description": "The kind of item this is. For lists of objects, this is always storage#objects.", + "type": "string" + }, + "nextPageToken": { + "description": "The continuation token, used to page through large result sets. Provide this value in a subsequent request to return the next page of results.", + "type": "string" + }, + "prefixes": { + "description": "The list of prefixes of objects matching-but-not-listed up to and including the requested delimiter.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + } + }, + "servicePath": "storage/v1beta2/", + "title": "Cloud Storage JSON API", + "version": "v1beta2" +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/storage/v1beta2/storage-gen.go b/vendor/google.golang.org/api/storage/v1beta2/storage-gen.go index 095c2fdb1..a99d16ac4 100644 --- a/vendor/google.golang.org/api/storage/v1beta2/storage-gen.go +++ b/vendor/google.golang.org/api/storage/v1beta2/storage-gen.go @@ -6060,11 +6060,12 @@ func (c *ObjectsInsertCall) doRequest(alt string) (*http.Response, error) { body = new(bytes.Buffer) reqHeaders.Set("Content-Type", "application/json") } - body, cleanup := c.mediaInfo_.UploadRequest(reqHeaders, body) + body, getBody, cleanup := c.mediaInfo_.UploadRequest(reqHeaders, body) defer cleanup() urls += "?" + c.urlParams_.Encode() req, _ := http.NewRequest("POST", urls, body) req.Header = reqHeaders + gensupport.SetGetBody(req, getBody) googleapi.Expand(req.URL, map[string]string{ "bucket": c.bucket, }) diff --git a/vendor/google.golang.org/api/storagetransfer/v1/storagetransfer-api.json b/vendor/google.golang.org/api/storagetransfer/v1/storagetransfer-api.json index 1df1adf1c..3b8f85b27 100644 --- a/vendor/google.golang.org/api/storagetransfer/v1/storagetransfer-api.json +++ b/vendor/google.golang.org/api/storagetransfer/v1/storagetransfer-api.json @@ -1,424 +1,472 @@ { - "title": "Google Storage Transfer API", + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/cloud-platform": { + "description": "View and manage your data across Google Cloud Platform services" + } + } + } + }, + "basePath": "", + "baseUrl": "https://storagetransfer.googleapis.com/", + "batchPath": "batch", + "description": "Transfers data from external data sources to a Google Cloud Storage bucket or between Google Cloud Storage buckets.", "discoveryVersion": "v1", + "documentationLink": "https://cloud.google.com/storage/transfer", + "icons": { + "x16": "http://www.google.com/images/icons/product/search-16.gif", + "x32": "http://www.google.com/images/icons/product/search-32.gif" + }, + "id": "storagetransfer:v1", + "kind": "discovery#restDescription", + "name": "storagetransfer", + "ownerDomain": "google.com", "ownerName": "Google", - "version_module": true, + "parameters": { + "$.xgafv": { + "description": "V1 error format.", + "enum": [ + "1", + "2" + ], + "enumDescriptions": [ + "v1 error format", + "v2 error format" + ], + "location": "query", + "type": "string" + }, + "access_token": { + "description": "OAuth access token.", + "location": "query", + "type": "string" + }, + "alt": { + "default": "json", + "description": "Data format for response.", + "enum": [ + "json", + "media", + "proto" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json", + "Media download with context-dependent Content-Type", + "Responses with Content-Type of application/x-protobuf" + ], + "location": "query", + "type": "string" + }, + "bearer_token": { + "description": "OAuth bearer token.", + "location": "query", + "type": "string" + }, + "callback": { + "description": "JSONP", + "location": "query", + "type": "string" + }, + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "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.", + "location": "query", + "type": "string" + }, + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "pp": { + "default": "true", + "description": "Pretty-print response.", + "location": "query", + "type": "boolean" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", + "location": "query", + "type": "string" + }, + "uploadType": { + "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", + "location": "query", + "type": "string" + }, + "upload_protocol": { + "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", + "location": "query", + "type": "string" + } + }, + "protocol": "rest", "resources": { "googleServiceAccounts": { "methods": { "get": { - "response": { - "$ref": "GoogleServiceAccount" - }, + "description": "Returns the Google service account that is used by Storage Transfer\nService to access buckets in the project where transfers\nrun or in other projects. Each Google service account is associated\nwith one Google Cloud Platform Console project. Users\nshould add this service account to the Google Cloud Storage bucket\nACLs to grant access to Storage Transfer Service. This service\naccount is created and owned by Storage Transfer Service and can\nonly be used by Storage Transfer Service.", + "flatPath": "v1/googleServiceAccounts/{projectId}", + "httpMethod": "GET", + "id": "storagetransfer.googleServiceAccounts.get", "parameterOrder": [ "projectId" ], - "httpMethod": "GET", "parameters": { "projectId": { - "required": true, - "type": "string", + "description": "The ID of the Google Cloud Platform Console project that the Google service\naccount is associated with.\nRequired.", "location": "path", - "description": "The ID of the Google Cloud Platform Console project that the Google service\naccount is associated with.\nRequired." + "required": true, + "type": "string" } }, + "path": "v1/googleServiceAccounts/{projectId}", + "response": { + "$ref": "GoogleServiceAccount" + }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/googleServiceAccounts/{projectId}", - "path": "v1/googleServiceAccounts/{projectId}", - "id": "storagetransfer.googleServiceAccounts.get", - "description": "Returns the Google service account that is used by Storage Transfer\nService to access buckets in the project where transfers\nrun or in other projects. Each Google service account is associated\nwith one Google Cloud Platform Console project. Users\nshould add this service account to the Google Cloud Storage bucket\nACLs to grant access to Storage Transfer Service. This service\naccount is created and owned by Storage Transfer Service and can\nonly be used by Storage Transfer Service." + ] } } }, "transferJobs": { "methods": { - "patch": { - "httpMethod": "PATCH", - "parameterOrder": [ - "jobName" - ], - "response": { + "create": { + "description": "Creates a transfer job that runs periodically.", + "flatPath": "v1/transferJobs", + "httpMethod": "POST", + "id": "storagetransfer.transferJobs.create", + "parameterOrder": [], + "parameters": {}, + "path": "v1/transferJobs", + "request": { "$ref": "TransferJob" }, - "parameters": { - "jobName": { - "location": "path", - "description": "The name of job to update.\nRequired.", - "required": true, - "type": "string", - "pattern": "^transferJobs/.+$" - } + "response": { + "$ref": "TransferJob" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/transferJobs/{transferJobsId}", - "id": "storagetransfer.transferJobs.patch", - "path": "v1/{+jobName}", - "request": { - "$ref": "UpdateTransferJobRequest" - }, - "description": "Updates a transfer job. Updating a job's transfer spec does not affect\ntransfer operations that are running already. Updating the scheduling\nof a job is not allowed." + ] }, "get": { - "flatPath": "v1/transferJobs/{transferJobsId}", - "path": "v1/{+jobName}", - "id": "storagetransfer.transferJobs.get", "description": "Gets a transfer job.", - "response": { - "$ref": "TransferJob" - }, + "flatPath": "v1/transferJobs/{transferJobsId}", + "httpMethod": "GET", + "id": "storagetransfer.transferJobs.get", "parameterOrder": [ "jobName" ], - "httpMethod": "GET", "parameters": { "jobName": { - "required": true, - "type": "string", - "pattern": "^transferJobs/.+$", + "description": "The job to get.\nRequired.", "location": "path", - "description": "The job to get.\nRequired." + "pattern": "^transferJobs/.+$", + "required": true, + "type": "string" }, "projectId": { - "type": "string", + "description": "The ID of the Google Cloud Platform Console project that owns the job.\nRequired.", "location": "query", - "description": "The ID of the Google Cloud Platform Console project that owns the job.\nRequired." + "type": "string" } }, + "path": "v1/{+jobName}", + "response": { + "$ref": "TransferJob" + }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ] }, "list": { - "response": { - "$ref": "ListTransferJobsResponse" - }, - "parameterOrder": [], + "description": "Lists transfer jobs.", + "flatPath": "v1/transferJobs", "httpMethod": "GET", + "id": "storagetransfer.transferJobs.list", + "parameterOrder": [], "parameters": { - "pageToken": { - "type": "string", + "filter": { + "description": "A list of query parameters specified as JSON text in the form of\n{\"project_id\":\"my_project_id\",\n\"job_names\":[\"jobid1\",\"jobid2\",...],\n\"job_statuses\":[\"status1\",\"status2\",...]}.\nSince `job_names` and `job_statuses` support multiple values, their values\nmust be specified with array notation. `project_id` is required. `job_names`\nand `job_statuses` are optional. The valid values for `job_statuses` are\ncase-insensitive: `ENABLED`, `DISABLED`, and `DELETED`.", "location": "query", - "description": "The list page token." + "type": "string" }, "pageSize": { - "type": "integer", - "location": "query", "description": "The list page size. The max allowed value is 256.", - "format": "int32" - }, - "filter": { + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "The list page token.", "location": "query", - "description": "A list of query parameters specified as JSON text in the form of\n{\"project_id\":\"my_project_id\",\n\"job_names\":[\"jobid1\",\"jobid2\",...],\n\"job_statuses\":[\"status1\",\"status2\",...]}.\nSince `job_names` and `job_statuses` support multiple values, their values\nmust be specified with array notation. `project_id` is required. `job_names`\nand `job_statuses` are optional. The valid values for `job_statuses` are\ncase-insensitive: `ENABLED`, `DISABLED`, and `DELETED`.", "type": "string" } }, + "path": "v1/transferJobs", + "response": { + "$ref": "ListTransferJobsResponse" + }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/transferJobs", - "path": "v1/transferJobs", - "id": "storagetransfer.transferJobs.list", - "description": "Lists transfer jobs." + ] }, - "create": { + "patch": { + "description": "Updates a transfer job. Updating a job's transfer spec does not affect\ntransfer operations that are running already. Updating the scheduling\nof a job is not allowed.", + "flatPath": "v1/transferJobs/{transferJobsId}", + "httpMethod": "PATCH", + "id": "storagetransfer.transferJobs.patch", + "parameterOrder": [ + "jobName" + ], + "parameters": { + "jobName": { + "description": "The name of job to update.\nRequired.", + "location": "path", + "pattern": "^transferJobs/.+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+jobName}", + "request": { + "$ref": "UpdateTransferJobRequest" + }, "response": { "$ref": "TransferJob" }, - "parameterOrder": [], - "httpMethod": "POST", - "parameters": {}, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/transferJobs", - "path": "v1/transferJobs", - "id": "storagetransfer.transferJobs.create", - "request": { - "$ref": "TransferJob" - }, - "description": "Creates a transfer job that runs periodically." + ] } } }, "transferOperations": { "methods": { - "pause": { - "response": { - "$ref": "Empty" - }, + "cancel": { + "description": "Cancels a transfer. Use the get method to check whether the cancellation succeeded or whether the operation completed despite cancellation.", + "flatPath": "v1/transferOperations/{transferOperationsId}:cancel", + "httpMethod": "POST", + "id": "storagetransfer.transferOperations.cancel", "parameterOrder": [ "name" ], - "httpMethod": "POST", "parameters": { "name": { - "required": true, - "type": "string", - "pattern": "^transferOperations/.+$", + "description": "The name of the operation resource to be cancelled.", "location": "path", - "description": "The name of the transfer operation.\nRequired." + "pattern": "^transferOperations/.+$", + "required": true, + "type": "string" } }, + "path": "v1/{+name}:cancel", + "response": { + "$ref": "Empty" + }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/transferOperations/{transferOperationsId}:pause", - "path": "v1/{+name}:pause", - "id": "storagetransfer.transferOperations.pause", - "request": { - "$ref": "PauseTransferOperationRequest" - }, - "description": "Pauses a transfer operation." + ] }, "delete": { - "flatPath": "v1/transferOperations/{transferOperationsId}", - "path": "v1/{+name}", - "id": "storagetransfer.transferOperations.delete", "description": "This method is not supported and the server returns `UNIMPLEMENTED`.", - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "name" - ], + "flatPath": "v1/transferOperations/{transferOperationsId}", "httpMethod": "DELETE", - "parameters": { - "name": { - "required": true, - "type": "string", - "pattern": "^transferOperations/.+$", - "location": "path", - "description": "The name of the operation resource to be deleted." - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "list": { - "response": { - "$ref": "ListOperationsResponse" - }, + "id": "storagetransfer.transferOperations.delete", "parameterOrder": [ "name" ], - "httpMethod": "GET", "parameters": { "name": { + "description": "The name of the operation resource to be deleted.", "location": "path", - "description": "The value `transferOperations`.", + "pattern": "^transferOperations/.+$", "required": true, - "type": "string", - "pattern": "^transferOperations$" - }, - "pageToken": { - "location": "query", - "description": "The list page token.", "type": "string" - }, - "pageSize": { - "type": "integer", - "location": "query", - "description": "The list page size. The max allowed value is 256.", - "format": "int32" - }, - "filter": { - "type": "string", - "location": "query", - "description": "A list of query parameters specified as JSON text in the form of {\\\"project_id\\\" : \\\"my_project_id\\\", \\\"job_names\\\" : [\\\"jobid1\\\", \\\"jobid2\\\",...], \\\"operation_names\\\" : [\\\"opid1\\\", \\\"opid2\\\",...], \\\"transfer_statuses\\\":[\\\"status1\\\", \\\"status2\\\",...]}. Since `job_names`, `operation_names`, and `transfer_statuses` support multiple values, they must be specified with array notation. `job_names`, `operation_names`, and `transfer_statuses` are optional." } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/transferOperations", "path": "v1/{+name}", - "id": "storagetransfer.transferOperations.list", - "description": "Lists operations that match the specified filter in the request. If the\nserver doesn't support this method, it returns `UNIMPLEMENTED`.\n\nNOTE: the `name` binding allows API services to override the binding\nto use different resource name schemes, such as `users/*/operations`. To\noverride the binding, API services can add a binding such as\n`\"/v1/{name=users/*}/operations\"` to their service configuration.\nFor backwards compatibility, the default name includes the operations\ncollection id, however overriding users must ensure the name binding\nis the parent resource, without the operations collection id." - }, - "resume": { - "flatPath": "v1/transferOperations/{transferOperationsId}:resume", - "path": "v1/{+name}:resume", - "id": "storagetransfer.transferOperations.resume", - "request": { - "$ref": "ResumeTransferOperationRequest" - }, - "description": "Resumes a transfer operation that is paused.", "response": { "$ref": "Empty" }, - "parameterOrder": [ - "name" - ], - "httpMethod": "POST", - "parameters": { - "name": { - "required": true, - "type": "string", - "pattern": "^transferOperations/.+$", - "location": "path", - "description": "The name of the transfer operation.\nRequired." - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "cancel": { - "flatPath": "v1/transferOperations/{transferOperationsId}:cancel", - "path": "v1/{+name}:cancel", - "id": "storagetransfer.transferOperations.cancel", - "description": "Cancels a transfer. Use the get method to check whether the cancellation succeeded or whether the operation completed despite cancellation.", - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "POST", - "parameters": { - "name": { - "required": true, - "type": "string", - "pattern": "^transferOperations/.+$", - "location": "path", - "description": "The name of the operation resource to be cancelled." - } - }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ] }, "get": { "description": "Gets the latest state of a long-running operation. Clients can use this\nmethod to poll the operation result at intervals as recommended by the API\nservice.", - "response": { - "$ref": "Operation" - }, + "flatPath": "v1/transferOperations/{transferOperationsId}", + "httpMethod": "GET", + "id": "storagetransfer.transferOperations.get", "parameterOrder": [ "name" ], - "httpMethod": "GET", "parameters": { "name": { - "required": true, - "type": "string", - "pattern": "^transferOperations/.+$", + "description": "The name of the operation resource.", "location": "path", - "description": "The name of the operation resource." + "pattern": "^transferOperations/.+$", + "required": true, + "type": "string" } }, + "path": "v1/{+name}", + "response": { + "$ref": "Operation" + }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists operations that match the specified filter in the request. If the\nserver doesn't support this method, it returns `UNIMPLEMENTED`.\n\nNOTE: the `name` binding allows API services to override the binding\nto use different resource name schemes, such as `users/*/operations`. To\noverride the binding, API services can add a binding such as\n`\"/v1/{name=users/*}/operations\"` to their service configuration.\nFor backwards compatibility, the default name includes the operations\ncollection id, however overriding users must ensure the name binding\nis the parent resource, without the operations collection id.", + "flatPath": "v1/transferOperations", + "httpMethod": "GET", + "id": "storagetransfer.transferOperations.list", + "parameterOrder": [ + "name" ], - "flatPath": "v1/transferOperations/{transferOperationsId}", + "parameters": { + "filter": { + "description": "A list of query parameters specified as JSON text in the form of {\\\"project_id\\\" : \\\"my_project_id\\\", \\\"job_names\\\" : [\\\"jobid1\\\", \\\"jobid2\\\",...], \\\"operation_names\\\" : [\\\"opid1\\\", \\\"opid2\\\",...], \\\"transfer_statuses\\\":[\\\"status1\\\", \\\"status2\\\",...]}. Since `job_names`, `operation_names`, and `transfer_statuses` support multiple values, they must be specified with array notation. `job_names`, `operation_names`, and `transfer_statuses` are optional.", + "location": "query", + "type": "string" + }, + "name": { + "description": "The value `transferOperations`.", + "location": "path", + "pattern": "^transferOperations$", + "required": true, + "type": "string" + }, + "pageSize": { + "description": "The list page size. The max allowed value is 256.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "The list page token.", + "location": "query", + "type": "string" + } + }, "path": "v1/{+name}", - "id": "storagetransfer.transferOperations.get" + "response": { + "$ref": "ListOperationsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "pause": { + "description": "Pauses a transfer operation.", + "flatPath": "v1/transferOperations/{transferOperationsId}:pause", + "httpMethod": "POST", + "id": "storagetransfer.transferOperations.pause", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the transfer operation.\nRequired.", + "location": "path", + "pattern": "^transferOperations/.+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}:pause", + "request": { + "$ref": "PauseTransferOperationRequest" + }, + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "resume": { + "description": "Resumes a transfer operation that is paused.", + "flatPath": "v1/transferOperations/{transferOperationsId}:resume", + "httpMethod": "POST", + "id": "storagetransfer.transferOperations.resume", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the transfer operation.\nRequired.", + "location": "path", + "pattern": "^transferOperations/.+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}:resume", + "request": { + "$ref": "ResumeTransferOperationRequest" + }, + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] } } } }, - "parameters": { - "quotaUser": { - "type": "string", - "location": "query", - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters." - }, - "pp": { - "location": "query", - "description": "Pretty-print response.", - "type": "boolean", - "default": "true" - }, - "oauth_token": { - "type": "string", - "location": "query", - "description": "OAuth 2.0 token for the current user." - }, - "bearer_token": { - "type": "string", - "location": "query", - "description": "OAuth bearer token." - }, - "upload_protocol": { - "type": "string", - "location": "query", - "description": "Upload protocol for media (e.g. \"raw\", \"multipart\")." - }, - "prettyPrint": { - "type": "boolean", - "default": "true", - "location": "query", - "description": "Returns response with indentations and line breaks." - }, - "uploadType": { - "type": "string", - "location": "query", - "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\")." - }, - "fields": { - "location": "query", - "description": "Selector specifying which fields to include in a partial response.", - "type": "string" - }, - "$.xgafv": { - "type": "string", - "enumDescriptions": [ - "v1 error format", - "v2 error format" - ], - "location": "query", - "enum": [ - "1", - "2" - ], - "description": "V1 error format." - }, - "callback": { - "location": "query", - "description": "JSONP", - "type": "string" - }, - "alt": { - "enum": [ - "json", - "media", - "proto" - ], - "type": "string", - "enumDescriptions": [ - "Responses with Content-Type of application/json", - "Media download with context-dependent Content-Type", - "Responses with Content-Type of application/x-protobuf" - ], - "location": "query", - "description": "Data format for response.", - "default": "json" - }, - "key": { - "type": "string", - "location": "query", - "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": { - "location": "query", - "description": "OAuth access token.", - "type": "string" - } - }, + "revision": "20180319", + "rootUrl": "https://storagetransfer.googleapis.com/", "schemas": { + "AwsAccessKey": { + "description": "AWS access key (see\n[AWS Security Credentials](http://docs.aws.amazon.com/general/latest/gr/aws-security-credentials.html)).", + "id": "AwsAccessKey", + "properties": { + "accessKeyId": { + "description": "AWS access key ID.\nRequired.", + "type": "string" + }, + "secretAccessKey": { + "description": "AWS secret access key. This field is not returned in RPC responses.\nRequired.", + "type": "string" + } + }, + "type": "object" + }, + "AwsS3Data": { + "description": "An AwsS3Data can be a data source, but not a data sink.\nIn an AwsS3Data, an object's name is the S3 object's key name.", + "id": "AwsS3Data", + "properties": { + "awsAccessKey": { + "$ref": "AwsAccessKey", + "description": "AWS access key used to sign the API requests to the AWS S3 bucket.\nPermissions on the bucket must be granted to the access ID of the\nAWS access key.\nRequired." + }, + "bucketName": { + "description": "S3 Bucket name (see\n[Creating a bucket](http://docs.aws.amazon.com/AmazonS3/latest/dev/create-bucket-get-location-example.html)).\nRequired.", + "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`.", - "type": "object", + "id": "Date", "properties": { - "year": { - "type": "integer", - "description": "Year of date. Must be from 1 to 9999, or 0 if specifying a date without\na year.", - "format": "int32" - }, "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", @@ -428,208 +476,45 @@ "description": "Month of year. Must be from 1 to 12.", "format": "int32", "type": "integer" + }, + "year": { + "description": "Year of date. Must be from 1 to 9999, or 0 if specifying a date without\na year.", + "format": "int32", + "type": "integer" } }, - "id": "Date" - }, - "TransferOperation": { - "description": "A description of the execution of a transfer.", - "type": "object", - "properties": { - "transferJobName": { - "type": "string", - "description": "The name of the transfer job that triggers this transfer operation." - }, - "transferSpec": { - "$ref": "TransferSpec", - "description": "Transfer specification.\nRequired." - }, - "counters": { - "$ref": "TransferCounters", - "description": "Information about the progress of the transfer operation." - }, - "status": { - "enum": [ - "STATUS_UNSPECIFIED", - "IN_PROGRESS", - "PAUSED", - "SUCCESS", - "FAILED", - "ABORTED" - ], - "description": "Status of the transfer operation.", - "type": "string", - "enumDescriptions": [ - "Zero is an illegal value.", - "In progress.", - "Paused.", - "Completed successfully.", - "Terminated due to an unrecoverable failure.", - "Aborted by the user." - ] - }, - "errorBreakdowns": { - "description": "Summarizes errors encountered with sample error log entries.", - "type": "array", - "items": { - "$ref": "ErrorSummary" - } - }, - "name": { - "type": "string", - "description": "A globally unique ID assigned by the system." - }, - "projectId": { - "type": "string", - "description": "The ID of the Google Cloud Platform Console project that owns the operation.\nRequired." - }, - "endTime": { - "type": "string", - "description": "End time of this transfer execution.", - "format": "google-datetime" - }, - "startTime": { - "type": "string", - "description": "Start time of this transfer execution.", - "format": "google-datetime" - } - }, - "id": "TransferOperation" - }, - "AwsS3Data": { - "description": "An AwsS3Data can be a data source, but not a data sink.\nIn an AwsS3Data, an object's name is the S3 object's key name.", - "type": "object", - "properties": { - "bucketName": { - "description": "S3 Bucket name (see\n[Creating a bucket](http://docs.aws.amazon.com/AmazonS3/latest/dev/create-bucket-get-location-example.html)).\nRequired.", - "type": "string" - }, - "awsAccessKey": { - "$ref": "AwsAccessKey", - "description": "AWS access key used to sign the API requests to the AWS S3 bucket.\nPermissions on the bucket must be granted to the access ID of the\nAWS access key.\nRequired." - } - }, - "id": "AwsS3Data" + "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 `{}`.", - "type": "object", + "id": "Empty", "properties": {}, - "id": "Empty" + "type": "object" }, - "AwsAccessKey": { - "type": "object", + "ErrorLogEntry": { + "description": "An entry describing an error that has occurred.", + "id": "ErrorLogEntry", "properties": { - "accessKeyId": { - "type": "string", - "description": "AWS access key ID.\nRequired." + "errorDetails": { + "description": "A list of messages that carry the error details.", + "items": { + "type": "string" + }, + "type": "array" }, - "secretAccessKey": { - "type": "string", - "description": "AWS secret access key. This field is not returned in RPC responses.\nRequired." - } - }, - "id": "AwsAccessKey", - "description": "AWS access key (see\n[AWS Security Credentials](http://docs.aws.amazon.com/general/latest/gr/aws-security-credentials.html))." - }, - "PauseTransferOperationRequest": { - "type": "object", - "properties": {}, - "id": "PauseTransferOperationRequest", - "description": "Request passed to PauseTransferOperation." - }, - "TransferCounters": { - "description": "A collection of counters that report the progress of a transfer operation.", - "type": "object", - "properties": { - "bytesFoundFromSource": { - "description": "Bytes found in the data source that are scheduled to be transferred,\nexcluding any that are filtered based on object conditions or skipped due\nto sync.", - "format": "int64", - "type": "string" - }, - "objectsFromSourceSkippedBySync": { - "type": "string", - "description": "Objects in the data source that are not transferred because they already\nexist in the data sink.", - "format": "int64" - }, - "bytesDeletedFromSource": { - "type": "string", - "description": "Bytes that are deleted from the data source.", - "format": "int64" - }, - "objectsFoundFromSource": { - "type": "string", - "description": "Objects found in the data source that are scheduled to be transferred,\nexcluding any that are filtered based on object conditions or skipped due\nto sync.", - "format": "int64" - }, - "objectsFailedToDeleteFromSink": { - "description": "Objects that failed to be deleted from the data sink.", - "format": "int64", - "type": "string" - }, - "objectsFoundOnlyFromSink": { - "type": "string", - "description": "Objects found only in the data sink that are scheduled to be deleted.", - "format": "int64" - }, - "objectsDeletedFromSink": { - "description": "Objects that are deleted from the data sink.", - "format": "int64", - "type": "string" - }, - "bytesFromSourceSkippedBySync": { - "type": "string", - "description": "Bytes in the data source that are not transferred because they already\nexist in the data sink.", - "format": "int64" - }, - "bytesFailedToDeleteFromSink": { - "description": "Bytes that failed to be deleted from the data sink.", - "format": "int64", - "type": "string" - }, - "bytesDeletedFromSink": { - "description": "Bytes that are deleted from the data sink.", - "format": "int64", - "type": "string" - }, - "bytesFromSourceFailed": { - "description": "Bytes in the data source that failed to be transferred or that failed to\nbe deleted after being transferred.", - "format": "int64", - "type": "string" - }, - "objectsCopiedToSink": { - "description": "Objects that are copied to the data sink.", - "format": "int64", - "type": "string" - }, - "objectsFromSourceFailed": { - "type": "string", - "description": "Objects in the data source that failed to be transferred or that failed\nto be deleted after being transferred.", - "format": "int64" - }, - "bytesFoundOnlyFromSink": { - "description": "Bytes found only in the data sink that are scheduled to be deleted.", - "format": "int64", - "type": "string" - }, - "objectsDeletedFromSource": { - "type": "string", - "description": "Objects that are deleted from the data source.", - "format": "int64" - }, - "bytesCopiedToSink": { - "description": "Bytes that are copied to the data sink.", - "format": "int64", + "url": { + "description": "A URL that refers to the target (a data source, a data sink,\nor an object) with which the error is associated.\nRequired.", "type": "string" } }, - "id": "TransferCounters" + "type": "object" }, "ErrorSummary": { "description": "A summary of errors by error code, plus a count and sample error log\nentries.", - "type": "object", + "id": "ErrorSummary", "properties": { "errorCode": { + "description": "Required.", "enum": [ "OK", "CANCELLED", @@ -649,8 +534,6 @@ "UNAVAILABLE", "DATA_LOSS" ], - "description": "Required.", - "type": "string", "enumDescriptions": [ "Not an error; returned on success\n\nHTTP Mapping: 200 OK", "The operation was cancelled, typically by the caller.\n\nHTTP Mapping: 499 Client Closed Request", @@ -669,117 +552,136 @@ "Internal errors. This means that some invariants expected by the\nunderlying system have been broken. This error code is reserved\nfor serious errors.\n\nHTTP Mapping: 500 Internal Server Error", "The service is currently unavailable. This is most likely a\ntransient condition, which can be corrected by retrying with\na backoff.\n\nSee the guidelines above for deciding between `FAILED_PRECONDITION`,\n`ABORTED`, and `UNAVAILABLE`.\n\nHTTP Mapping: 503 Service Unavailable", "Unrecoverable data loss or corruption.\n\nHTTP Mapping: 500 Internal Server Error" - ] + ], + "type": "string" }, "errorCount": { - "type": "string", "description": "Count of this type of error.\nRequired.", - "format": "int64" + "format": "int64", + "type": "string" }, "errorLogEntries": { "description": "Error samples.", - "type": "array", "items": { "$ref": "ErrorLogEntry" - } + }, + "type": "array" } }, - "id": "ErrorSummary" - }, - "HttpData": { - "description": "An HttpData specifies a list of objects on the web to be transferred over\nHTTP. The information of the objects to be transferred is contained in a\nfile referenced by a URL. The first line in the file must be\n\"TsvHttpData-1.0\", which specifies the format of the file. Subsequent lines\nspecify the information of the list of objects, one object per list entry.\nEach entry has the following tab-delimited fields:\n\n* HTTP URL - The location of the object.\n\n* Length - The size of the object in bytes.\n\n* MD5 - The base64-encoded MD5 hash of the object.\n\nFor an example of a valid TSV file, see\n[Transferring data from URLs](https://cloud.google.com/storage/transfer/create-url-list).\n\nWhen transferring data based on a URL list, keep the following in mind:\n\n* When an object located at `http(s)://hostname:port/\u003cURL-path\u003e` is transferred\nto a data sink, the name of the object at the data sink is\n`\u003chostname\u003e/\u003cURL-path\u003e`.\n\n* If the specified size of an object does not match the actual size of the\nobject fetched, the object will not be transferred.\n\n* If the specified MD5 does not match the MD5 computed from the transferred\nbytes, the object transfer will fail. For more information, see\n[Generating MD5 hashes](https://cloud.google.com/storage/transfer/#md5)\n\n* Ensure that each URL you specify is publicly accessible. For\nexample, in Google Cloud Storage you can\n[share an object publicly]\n(https://cloud.google.com/storage/docs/cloud-console#_sharingdata) and get\na link to it.\n\n* Storage Transfer Service obeys `robots.txt` rules and requires the source\nHTTP server to support `Range` requests and to return a `Content-Length`\nheader in each response.\n\n* [ObjectConditions](#ObjectConditions) have no effect when filtering objects\nto transfer.", - "type": "object", - "properties": { - "listUrl": { - "type": "string", - "description": "The URL that points to the file that stores the object list entries.\nThis file must allow public access. Currently, only URLs with HTTP and\nHTTPS schemes are supported.\nRequired." - } - }, - "id": "HttpData" + "type": "object" }, "GcsData": { "description": "In a GcsData, an object's name is the Google Cloud Storage object's name and\nits `lastModificationTime` refers to the object's updated time, which changes\nwhen the content or the metadata of the object is updated.", - "type": "object", + "id": "GcsData", "properties": { "bucketName": { "description": "Google Cloud Storage bucket name (see\n[Bucket Name Requirements](https://cloud.google.com/storage/docs/bucket-naming#requirements)).\nRequired.", "type": "string" } }, - "id": "GcsData" + "type": "object" }, - "ListTransferJobsResponse": { - "type": "object", + "GoogleServiceAccount": { + "description": "Google service account", + "id": "GoogleServiceAccount", + "properties": { + "accountEmail": { + "description": "Required.", + "type": "string" + } + }, + "type": "object" + }, + "HttpData": { + "description": "An HttpData specifies a list of objects on the web to be transferred over\nHTTP. The information of the objects to be transferred is contained in a\nfile referenced by a URL. The first line in the file must be\n\"TsvHttpData-1.0\", which specifies the format of the file. Subsequent lines\nspecify the information of the list of objects, one object per list entry.\nEach entry has the following tab-delimited fields:\n\n* HTTP URL - The location of the object.\n\n* Length - The size of the object in bytes.\n\n* MD5 - The base64-encoded MD5 hash of the object.\n\nFor an example of a valid TSV file, see\n[Transferring data from URLs](https://cloud.google.com/storage/transfer/create-url-list).\n\nWhen transferring data based on a URL list, keep the following in mind:\n\n* When an object located at `http(s)://hostname:port/\u003cURL-path\u003e` is transferred\nto a data sink, the name of the object at the data sink is\n`\u003chostname\u003e/\u003cURL-path\u003e`.\n\n* If the specified size of an object does not match the actual size of the\nobject fetched, the object will not be transferred.\n\n* If the specified MD5 does not match the MD5 computed from the transferred\nbytes, the object transfer will fail. For more information, see\n[Generating MD5 hashes](https://cloud.google.com/storage/transfer/#md5)\n\n* Ensure that each URL you specify is publicly accessible. For\nexample, in Google Cloud Storage you can\n[share an object publicly]\n(https://cloud.google.com/storage/docs/cloud-console#_sharingdata) and get\na link to it.\n\n* Storage Transfer Service obeys `robots.txt` rules and requires the source\nHTTP server to support `Range` requests and to return a `Content-Length`\nheader in each response.\n\n* [ObjectConditions](#ObjectConditions) have no effect when filtering objects\nto transfer.", + "id": "HttpData", + "properties": { + "listUrl": { + "description": "The URL that points to the file that stores the object list entries.\nThis file must allow public access. Currently, only URLs with HTTP and\nHTTPS schemes are supported.\nRequired.", + "type": "string" + } + }, + "type": "object" + }, + "ListOperationsResponse": { + "description": "The response message for Operations.ListOperations.", + "id": "ListOperationsResponse", "properties": { "nextPageToken": { - "type": "string", - "description": "The list next page token." + "description": "The standard List next-page token.", + "type": "string" + }, + "operations": { + "description": "A list of operations that matches the specified filter in the request.", + "items": { + "$ref": "Operation" + }, + "type": "array" + } + }, + "type": "object" + }, + "ListTransferJobsResponse": { + "description": "Response from ListTransferJobs.", + "id": "ListTransferJobsResponse", + "properties": { + "nextPageToken": { + "description": "The list next page token.", + "type": "string" }, "transferJobs": { "description": "A list of transfer jobs.", - "type": "array", "items": { "$ref": "TransferJob" - } + }, + "type": "array" } }, - "id": "ListTransferJobsResponse", - "description": "Response from ListTransferJobs." - }, - "UpdateTransferJobRequest": { - "type": "object", - "properties": { - "projectId": { - "type": "string", - "description": "The ID of the Google Cloud Platform Console project that owns the job.\nRequired." - }, - "updateTransferJobFieldMask": { - "type": "string", - "description": "The field mask of the fields in `transferJob` that are to be updated in\nthis request. Fields in `transferJob` that can be updated are:\n`description`, `transferSpec`, and `status`. To update the `transferSpec`\nof the job, a complete transfer specification has to be provided. An\nincomplete specification which misses any required fields will be rejected\nwith the error `INVALID_ARGUMENT`.", - "format": "google-fieldmask" - }, - "transferJob": { - "$ref": "TransferJob", - "description": "The job to update. `transferJob` is expected to specify only three fields:\n`description`, `transferSpec`, and `status`. An UpdateTransferJobRequest\nthat specifies other fields will be rejected with an error\n`INVALID_ARGUMENT`.\nRequired." - } - }, - "id": "UpdateTransferJobRequest", - "description": "Request passed to UpdateTransferJob." + "type": "object" }, "ObjectConditions": { - "type": "object", + "description": "Conditions that determine which objects will be transferred.", + "id": "ObjectConditions", "properties": { + "excludePrefixes": { + "description": "`excludePrefixes` must follow the requirements described for\n`includePrefixes`.\n\nThe max size of `excludePrefixes` is 1000.", + "items": { + "type": "string" + }, + "type": "array" + }, + "includePrefixes": { + "description": "If `includePrefixes` is specified, objects that satisfy the object\nconditions must have names that start with one of the `includePrefixes`\nand that do not start with any of the `excludePrefixes`. If `includePrefixes`\nis not specified, all objects except those that have names starting with\none of the `excludePrefixes` must satisfy the object conditions.\n\nRequirements:\n\n * Each include-prefix and exclude-prefix can contain any sequence of\n Unicode characters, of max length 1024 bytes when UTF8-encoded, and\n must not contain Carriage Return or Line Feed characters. Wildcard\n matching and regular expression matching are not supported.\n\n * Each include-prefix and exclude-prefix must omit the leading slash.\n For example, to include the `requests.gz` object in a transfer from\n `s3://my-aws-bucket/logs/y=2015/requests.gz`, specify the include\n prefix as `logs/y=2015/requests.gz`.\n\n * None of the include-prefix or the exclude-prefix values can be empty,\n if specified.\n\n * Each include-prefix must include a distinct portion of the object\n namespace, i.e., no include-prefix may be a prefix of another\n include-prefix.\n\n * Each exclude-prefix must exclude a distinct portion of the object\n namespace, i.e., no exclude-prefix may be a prefix of another\n exclude-prefix.\n\n * If `includePrefixes` is specified, then each exclude-prefix must start\n with the value of a path explicitly included by `includePrefixes`.\n\nThe max size of `includePrefixes` is 1000.", + "items": { + "type": "string" + }, + "type": "array" + }, + "maxTimeElapsedSinceLastModification": { + "description": "`maxTimeElapsedSinceLastModification` is the complement to\n`minTimeElapsedSinceLastModification`.", + "format": "google-duration", + "type": "string" + }, "minTimeElapsedSinceLastModification": { "description": "If unspecified, `minTimeElapsedSinceLastModification` takes a zero value\nand `maxTimeElapsedSinceLastModification` takes the maximum possible\nvalue of Duration. Objects that satisfy the object conditions\nmust either have a `lastModificationTime` greater or equal to\n`NOW` - `maxTimeElapsedSinceLastModification` and less than\n`NOW` - `minTimeElapsedSinceLastModification`, or not have a\n`lastModificationTime`.", "format": "google-duration", "type": "string" - }, - "excludePrefixes": { - "description": "`excludePrefixes` must follow the requirements described for\n`includePrefixes`.\n\nThe max size of `excludePrefixes` is 1000.", - "type": "array", - "items": { - "type": "string" - } - }, - "maxTimeElapsedSinceLastModification": { - "type": "string", - "description": "`maxTimeElapsedSinceLastModification` is the complement to\n`minTimeElapsedSinceLastModification`.", - "format": "google-duration" - }, - "includePrefixes": { - "description": "If `includePrefixes` is specified, objects that satisfy the object\nconditions must have names that start with one of the `includePrefixes`\nand that do not start with any of the `excludePrefixes`. If `includePrefixes`\nis not specified, all objects except those that have names starting with\none of the `excludePrefixes` must satisfy the object conditions.\n\nRequirements:\n\n * Each include-prefix and exclude-prefix can contain any sequence of\n Unicode characters, of max length 1024 bytes when UTF8-encoded, and\n must not contain Carriage Return or Line Feed characters. Wildcard\n matching and regular expression matching are not supported.\n\n * Each include-prefix and exclude-prefix must omit the leading slash.\n For example, to include the `requests.gz` object in a transfer from\n `s3://my-aws-bucket/logs/y=2015/requests.gz`, specify the include\n prefix as `logs/y=2015/requests.gz`.\n\n * None of the include-prefix or the exclude-prefix values can be empty,\n if specified.\n\n * Each include-prefix must include a distinct portion of the object\n namespace, i.e., no include-prefix may be a prefix of another\n include-prefix.\n\n * Each exclude-prefix must exclude a distinct portion of the object\n namespace, i.e., no exclude-prefix may be a prefix of another\n exclude-prefix.\n\n * If `includePrefixes` is specified, then each exclude-prefix must start\n with the value of a path explicitly included by `includePrefixes`.\n\nThe max size of `includePrefixes` is 1000.", - "type": "array", - "items": { - "type": "string" - } } }, - "id": "ObjectConditions", - "description": "Conditions that determine which objects will be transferred." + "type": "object" }, "Operation": { - "type": "object", + "description": "This resource represents a long-running operation that is the result of a\nnetwork API call.", + "id": "Operation", "properties": { + "done": { + "description": "If the value is `false`, it means the operation is still in progress.\nIf `true`, the operation is completed, and either `error` or `response` is\navailable.", + "type": "boolean" + }, + "error": { + "$ref": "Status", + "description": "The error result of the operation in case of failure or cancellation." + }, "metadata": { "additionalProperties": { "description": "Properties of the object. Contains field @type with type URL.", @@ -788,64 +690,350 @@ "description": "Represents the transfer operation object.", "type": "object" }, - "done": { - "description": "If the value is `false`, it means the operation is still in progress.\nIf `true`, the operation is completed, and either `error` or `response` is\navailable.", - "type": "boolean" - }, - "response": { - "type": "object", - "additionalProperties": { - "type": "any", - "description": "Properties of the object. Contains field @type with type URL." - }, - "description": "The normal response of the operation in case of success. If the original\nmethod returns no data on success, such as `Delete`, the response is\n`google.protobuf.Empty`. If the original method is standard\n`Get`/`Create`/`Update`, the response should be the resource. For other\nmethods, the response should have the type `XxxResponse`, where `Xxx`\nis the original method name. For example, if the original method name\nis `TakeSnapshot()`, the inferred response type is\n`TakeSnapshotResponse`." - }, "name": { "description": "The server-assigned name, which is only unique within the same service that originally returns it. If you use the default HTTP mapping, the `name` should have the format of `transferOperations/some/unique/name`.", "type": "string" }, - "error": { - "$ref": "Status", - "description": "The error result of the operation in case of failure or cancellation." + "response": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "description": "The normal response of the operation in case of success. If the original\nmethod returns no data on success, such as `Delete`, the response is\n`google.protobuf.Empty`. If the original method is standard\n`Get`/`Create`/`Update`, the response should be the resource. For other\nmethods, the response should have the type `XxxResponse`, where `Xxx`\nis the original method name. For example, if the original method name\nis `TakeSnapshot()`, the inferred response type is\n`TakeSnapshotResponse`.", + "type": "object" } }, - "id": "Operation", - "description": "This resource represents a long-running operation that is the result of a\nnetwork API call." + "type": "object" + }, + "PauseTransferOperationRequest": { + "description": "Request passed to PauseTransferOperation.", + "id": "PauseTransferOperationRequest", + "properties": {}, + "type": "object" + }, + "ResumeTransferOperationRequest": { + "description": "Request passed to ResumeTransferOperation.", + "id": "ResumeTransferOperationRequest", + "properties": {}, + "type": "object" + }, + "Schedule": { + "description": "Transfers can be scheduled to recur or to run just once.", + "id": "Schedule", + "properties": { + "scheduleEndDate": { + "$ref": "Date", + "description": "The last day the recurring transfer will be run. If `scheduleEndDate`\nis the same as `scheduleStartDate`, the transfer will be executed only\nonce." + }, + "scheduleStartDate": { + "$ref": "Date", + "description": "The first day the recurring transfer is scheduled to run. If\n`scheduleStartDate` is in the past, the transfer will run for the first\ntime on the following day.\nRequired." + }, + "startTimeOfDay": { + "$ref": "TimeOfDay", + "description": "The time in UTC at which the transfer will be scheduled to start in a day.\nTransfers may start later than this time. If not specified, recurring and\none-time transfers that are scheduled to run today will run immediately;\nrecurring transfers that are scheduled to run on a future date will start\nat approximately midnight UTC on that date. Note that when configuring a\ntransfer with the Cloud Platform Console, the transfer's start time in a\nday is specified in your local timezone." + } + }, + "type": "object" + }, + "Status": { + "description": "The `Status` type defines a logical error model that is suitable for different\nprogramming environments, including REST APIs and RPC APIs. It is used by\n[gRPC](https://github.com/grpc). The error model is designed to be:\n\n- Simple to use and understand for most users\n- Flexible enough to meet unexpected needs\n\n# Overview\n\nThe `Status` message contains three pieces of data: error code, error message,\nand error details. The error code should be an enum value of\ngoogle.rpc.Code, but it may accept additional error codes if needed. The\nerror message should be a developer-facing English message that helps\ndevelopers *understand* and *resolve* the error. If a localized user-facing\nerror message is needed, put the localized message in the error details or\nlocalize it in the client. The optional error details may contain arbitrary\ninformation about the error. There is a predefined set of error detail types\nin the package `google.rpc` that can be used for common error conditions.\n\n# Language mapping\n\nThe `Status` message is the logical representation of the error model, but it\nis not necessarily the actual wire format. When the `Status` message is\nexposed in different client libraries and different wire protocols, it can be\nmapped differently. For example, it will likely be mapped to some exceptions\nin Java, but more likely mapped to some error codes in C.\n\n# Other uses\n\nThe error model and the `Status` message can be used in a variety of\nenvironments, either with or without APIs, to provide a\nconsistent developer experience across different environments.\n\nExample uses of this error model include:\n\n- Partial errors. If a service needs to return partial errors to the client,\n it may embed the `Status` in the normal response to indicate the partial\n errors.\n\n- Workflow errors. A typical workflow has multiple steps. Each step may\n have a `Status` message for error reporting.\n\n- Batch operations. If a client uses batch request and batch response, the\n `Status` message should be used directly inside batch response, one for\n each error sub-response.\n\n- Asynchronous operations. If an API call embeds asynchronous operation\n results in its response, the status of those operations should be\n represented directly using the `Status` message.\n\n- Logging. If some API errors are stored in logs, the message `Status` could\n be used directly after any stripping needed for security/privacy reasons.", + "id": "Status", + "properties": { + "code": { + "description": "The status code, which should be an enum value of google.rpc.Code.", + "format": "int32", + "type": "integer" + }, + "details": { + "description": "A list of messages that carry the error details. There is a common set of\nmessage types for APIs to use.", + "items": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "A developer-facing error message, which should be in English. Any\nuser-facing error message should be localized and sent in the\ngoogle.rpc.Status.details field, or localized by the client.", + "type": "string" + } + }, + "type": "object" + }, + "TimeOfDay": { + "description": "Represents a time of day. The date and time zone are either not significant\nor are specified elsewhere. An API may choose to allow leap seconds. Related\ntypes are google.type.Date and `google.protobuf.Timestamp`.", + "id": "TimeOfDay", + "properties": { + "hours": { + "description": "Hours of day in 24 hour format. Should be from 0 to 23. An API may choose\nto allow the value \"24:00:00\" for scenarios like business closing time.", + "format": "int32", + "type": "integer" + }, + "minutes": { + "description": "Minutes of hour of day. Must be from 0 to 59.", + "format": "int32", + "type": "integer" + }, + "nanos": { + "description": "Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999.", + "format": "int32", + "type": "integer" + }, + "seconds": { + "description": "Seconds of minutes of the time. Must normally be from 0 to 59. An API may\nallow the value 60 if it allows leap-seconds.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "TransferCounters": { + "description": "A collection of counters that report the progress of a transfer operation.", + "id": "TransferCounters", + "properties": { + "bytesCopiedToSink": { + "description": "Bytes that are copied to the data sink.", + "format": "int64", + "type": "string" + }, + "bytesDeletedFromSink": { + "description": "Bytes that are deleted from the data sink.", + "format": "int64", + "type": "string" + }, + "bytesDeletedFromSource": { + "description": "Bytes that are deleted from the data source.", + "format": "int64", + "type": "string" + }, + "bytesFailedToDeleteFromSink": { + "description": "Bytes that failed to be deleted from the data sink.", + "format": "int64", + "type": "string" + }, + "bytesFoundFromSource": { + "description": "Bytes found in the data source that are scheduled to be transferred,\nexcluding any that are filtered based on object conditions or skipped due\nto sync.", + "format": "int64", + "type": "string" + }, + "bytesFoundOnlyFromSink": { + "description": "Bytes found only in the data sink that are scheduled to be deleted.", + "format": "int64", + "type": "string" + }, + "bytesFromSourceFailed": { + "description": "Bytes in the data source that failed to be transferred or that failed to\nbe deleted after being transferred.", + "format": "int64", + "type": "string" + }, + "bytesFromSourceSkippedBySync": { + "description": "Bytes in the data source that are not transferred because they already\nexist in the data sink.", + "format": "int64", + "type": "string" + }, + "objectsCopiedToSink": { + "description": "Objects that are copied to the data sink.", + "format": "int64", + "type": "string" + }, + "objectsDeletedFromSink": { + "description": "Objects that are deleted from the data sink.", + "format": "int64", + "type": "string" + }, + "objectsDeletedFromSource": { + "description": "Objects that are deleted from the data source.", + "format": "int64", + "type": "string" + }, + "objectsFailedToDeleteFromSink": { + "description": "Objects that failed to be deleted from the data sink.", + "format": "int64", + "type": "string" + }, + "objectsFoundFromSource": { + "description": "Objects found in the data source that are scheduled to be transferred,\nexcluding any that are filtered based on object conditions or skipped due\nto sync.", + "format": "int64", + "type": "string" + }, + "objectsFoundOnlyFromSink": { + "description": "Objects found only in the data sink that are scheduled to be deleted.", + "format": "int64", + "type": "string" + }, + "objectsFromSourceFailed": { + "description": "Objects in the data source that failed to be transferred or that failed\nto be deleted after being transferred.", + "format": "int64", + "type": "string" + }, + "objectsFromSourceSkippedBySync": { + "description": "Objects in the data source that are not transferred because they already\nexist in the data sink.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "TransferJob": { + "description": "This resource represents the configuration of a transfer job that runs\nperiodically.", + "id": "TransferJob", + "properties": { + "creationTime": { + "description": "This field cannot be changed by user requests.", + "format": "google-datetime", + "type": "string" + }, + "deletionTime": { + "description": "This field cannot be changed by user requests.", + "format": "google-datetime", + "type": "string" + }, + "description": { + "description": "A description provided by the user for the job. Its max length is 1024\nbytes when Unicode-encoded.", + "type": "string" + }, + "lastModificationTime": { + "description": "This field cannot be changed by user requests.", + "format": "google-datetime", + "type": "string" + }, + "name": { + "description": "A globally unique name assigned by Storage Transfer Service when the\njob is created. This field should be left empty in requests to create a new\ntransfer job; otherwise, the requests result in an `INVALID_ARGUMENT`\nerror.", + "type": "string" + }, + "projectId": { + "description": "The ID of the Google Cloud Platform Console project that owns the job.", + "type": "string" + }, + "schedule": { + "$ref": "Schedule", + "description": "Schedule specification." + }, + "status": { + "description": "Status of the job. This value MUST be specified for\n`CreateTransferJobRequests`.\n\nNOTE: The effect of the new job status takes place during a subsequent job\nrun. For example, if you change the job status from `ENABLED` to\n`DISABLED`, and an operation spawned by the transfer is running, the status\nchange would not affect the current operation.", + "enum": [ + "STATUS_UNSPECIFIED", + "ENABLED", + "DISABLED", + "DELETED" + ], + "enumDescriptions": [ + "Zero is an illegal value.", + "New transfers will be performed based on the schedule.", + "New transfers will not be scheduled.", + "This is a soft delete state. After a transfer job is set to this\nstate, the job and all the transfer executions are subject to\ngarbage collection. Transfer jobs become eligible for garbage collection\n30 days after their status is set to `DELETED`." + ], + "type": "string" + }, + "transferSpec": { + "$ref": "TransferSpec", + "description": "Transfer specification." + } + }, + "type": "object" + }, + "TransferOperation": { + "description": "A description of the execution of a transfer.", + "id": "TransferOperation", + "properties": { + "counters": { + "$ref": "TransferCounters", + "description": "Information about the progress of the transfer operation." + }, + "endTime": { + "description": "End time of this transfer execution.", + "format": "google-datetime", + "type": "string" + }, + "errorBreakdowns": { + "description": "Summarizes errors encountered with sample error log entries.", + "items": { + "$ref": "ErrorSummary" + }, + "type": "array" + }, + "name": { + "description": "A globally unique ID assigned by the system.", + "type": "string" + }, + "projectId": { + "description": "The ID of the Google Cloud Platform Console project that owns the operation.\nRequired.", + "type": "string" + }, + "startTime": { + "description": "Start time of this transfer execution.", + "format": "google-datetime", + "type": "string" + }, + "status": { + "description": "Status of the transfer operation.", + "enum": [ + "STATUS_UNSPECIFIED", + "IN_PROGRESS", + "PAUSED", + "SUCCESS", + "FAILED", + "ABORTED" + ], + "enumDescriptions": [ + "Zero is an illegal value.", + "In progress.", + "Paused.", + "Completed successfully.", + "Terminated due to an unrecoverable failure.", + "Aborted by the user." + ], + "type": "string" + }, + "transferJobName": { + "description": "The name of the transfer job that triggers this transfer operation.", + "type": "string" + }, + "transferSpec": { + "$ref": "TransferSpec", + "description": "Transfer specification.\nRequired." + } + }, + "type": "object" }, "TransferOptions": { - "type": "object", + "description": "TransferOptions uses three boolean parameters to define the actions\nto be performed on objects in a transfer.", + "id": "TransferOptions", "properties": { "deleteObjectsFromSourceAfterTransfer": { - "type": "boolean", - "description": "Whether objects should be deleted from the source after they are\ntransferred to the sink. Note that this option and\n`deleteObjectsUniqueInSink` are mutually exclusive." + "description": "Whether objects should be deleted from the source after they are\ntransferred to the sink. Note that this option and\n`deleteObjectsUniqueInSink` are mutually exclusive.", + "type": "boolean" }, "deleteObjectsUniqueInSink": { - "type": "boolean", - "description": "Whether objects that exist only in the sink should be deleted. Note that\nthis option and `deleteObjectsFromSourceAfterTransfer` are mutually\nexclusive." + "description": "Whether objects that exist only in the sink should be deleted. Note that\nthis option and `deleteObjectsFromSourceAfterTransfer` are mutually\nexclusive.", + "type": "boolean" }, "overwriteObjectsAlreadyExistingInSink": { - "type": "boolean", - "description": "Whether overwriting objects that already exist in the sink is allowed." + "description": "Whether overwriting objects that already exist in the sink is allowed.", + "type": "boolean" } }, - "id": "TransferOptions", - "description": "TransferOptions uses three boolean parameters to define the actions\nto be performed on objects in a transfer." + "type": "object" }, "TransferSpec": { - "type": "object", + "description": "Configuration for running a transfer.", + "id": "TransferSpec", "properties": { - "gcsDataSource": { - "$ref": "GcsData", - "description": "A Google Cloud Storage data source." - }, - "transferOptions": { - "$ref": "TransferOptions", - "description": "If the option `deleteObjectsUniqueInSink` is `true`, object conditions\nbased on objects' `lastModificationTime` are ignored and do not exclude\nobjects in a data source or a data sink." - }, "awsS3DataSource": { "$ref": "AwsS3Data", "description": "An AWS S3 data source." }, + "gcsDataSink": { + "$ref": "GcsData", + "description": "A Google Cloud Storage data sink." + }, + "gcsDataSource": { + "$ref": "GcsData", + "description": "A Google Cloud Storage data source." + }, "httpDataSource": { "$ref": "HttpData", "description": "An HTTP URL data source." @@ -854,224 +1042,36 @@ "$ref": "ObjectConditions", "description": "Only objects that satisfy these object conditions are included in the set\nof data source and data sink objects. Object conditions based on\nobjects' `lastModificationTime` do not exclude objects in a data sink." }, - "gcsDataSink": { - "$ref": "GcsData", - "description": "A Google Cloud Storage data sink." + "transferOptions": { + "$ref": "TransferOptions", + "description": "If the option `deleteObjectsUniqueInSink` is `true`, object conditions\nbased on objects' `lastModificationTime` are ignored and do not exclude\nobjects in a data source or a data sink." } }, - "id": "TransferSpec", - "description": "Configuration for running a transfer." + "type": "object" }, - "ResumeTransferOperationRequest": { - "description": "Request passed to ResumeTransferOperation.", - "type": "object", - "properties": {}, - "id": "ResumeTransferOperationRequest" - }, - "Status": { - "type": "object", + "UpdateTransferJobRequest": { + "description": "Request passed to UpdateTransferJob.", + "id": "UpdateTransferJobRequest", "properties": { - "code": { - "type": "integer", - "description": "The status code, which should be an enum value of google.rpc.Code.", - "format": "int32" - }, - "message": { - "description": "A developer-facing error message, which should be in English. Any\nuser-facing error message should be localized and sent in the\ngoogle.rpc.Status.details field, or localized by the client.", - "type": "string" - }, - "details": { - "description": "A list of messages that carry the error details. There is a common set of\nmessage types for APIs to use.", - "type": "array", - "items": { - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - }, - "type": "object" - } - } - }, - "id": "Status", - "description": "The `Status` type defines a logical error model that is suitable for different\nprogramming environments, including REST APIs and RPC APIs. It is used by\n[gRPC](https://github.com/grpc). The error model is designed to be:\n\n- Simple to use and understand for most users\n- Flexible enough to meet unexpected needs\n\n# Overview\n\nThe `Status` message contains three pieces of data: error code, error message,\nand error details. The error code should be an enum value of\ngoogle.rpc.Code, but it may accept additional error codes if needed. The\nerror message should be a developer-facing English message that helps\ndevelopers *understand* and *resolve* the error. If a localized user-facing\nerror message is needed, put the localized message in the error details or\nlocalize it in the client. The optional error details may contain arbitrary\ninformation about the error. There is a predefined set of error detail types\nin the package `google.rpc` that can be used for common error conditions.\n\n# Language mapping\n\nThe `Status` message is the logical representation of the error model, but it\nis not necessarily the actual wire format. When the `Status` message is\nexposed in different client libraries and different wire protocols, it can be\nmapped differently. For example, it will likely be mapped to some exceptions\nin Java, but more likely mapped to some error codes in C.\n\n# Other uses\n\nThe error model and the `Status` message can be used in a variety of\nenvironments, either with or without APIs, to provide a\nconsistent developer experience across different environments.\n\nExample uses of this error model include:\n\n- Partial errors. If a service needs to return partial errors to the client,\n it may embed the `Status` in the normal response to indicate the partial\n errors.\n\n- Workflow errors. A typical workflow has multiple steps. Each step may\n have a `Status` message for error reporting.\n\n- Batch operations. If a client uses batch request and batch response, the\n `Status` message should be used directly inside batch response, one for\n each error sub-response.\n\n- Asynchronous operations. If an API call embeds asynchronous operation\n results in its response, the status of those operations should be\n represented directly using the `Status` message.\n\n- Logging. If some API errors are stored in logs, the message `Status` could\n be used directly after any stripping needed for security/privacy reasons." - }, - "ListOperationsResponse": { - "description": "The response message for Operations.ListOperations.", - "type": "object", - "properties": { - "operations": { - "description": "A list of operations that matches the specified filter in the request.", - "type": "array", - "items": { - "$ref": "Operation" - } - }, - "nextPageToken": { - "type": "string", - "description": "The standard List next-page token." - } - }, - "id": "ListOperationsResponse" - }, - "GoogleServiceAccount": { - "type": "object", - "properties": { - "accountEmail": { - "type": "string", - "description": "Required." - } - }, - "id": "GoogleServiceAccount", - "description": "Google service account" - }, - "TimeOfDay": { - "type": "object", - "properties": { - "seconds": { - "type": "integer", - "description": "Seconds of minutes of the time. Must normally be from 0 to 59. An API may\nallow the value 60 if it allows leap-seconds.", - "format": "int32" - }, - "minutes": { - "description": "Minutes of hour of day. Must be from 0 to 59.", - "format": "int32", - "type": "integer" - }, - "hours": { - "description": "Hours of day in 24 hour format. Should be from 0 to 23. An API may choose\nto allow the value \"24:00:00\" for scenarios like business closing time.", - "format": "int32", - "type": "integer" - }, - "nanos": { - "type": "integer", - "description": "Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999.", - "format": "int32" - } - }, - "id": "TimeOfDay", - "description": "Represents a time of day. The date and time zone are either not significant\nor are specified elsewhere. An API may choose to allow leap seconds. Related\ntypes are google.type.Date and `google.protobuf.Timestamp`." - }, - "ErrorLogEntry": { - "type": "object", - "properties": { - "url": { - "type": "string", - "description": "A URL that refers to the target (a data source, a data sink,\nor an object) with which the error is associated.\nRequired." - }, - "errorDetails": { - "description": "A list of messages that carry the error details.", - "type": "array", - "items": { - "type": "string" - } - } - }, - "id": "ErrorLogEntry", - "description": "An entry describing an error that has occurred." - }, - "TransferJob": { - "type": "object", - "properties": { - "status": { - "type": "string", - "enumDescriptions": [ - "Zero is an illegal value.", - "New transfers will be performed based on the schedule.", - "New transfers will not be scheduled.", - "This is a soft delete state. After a transfer job is set to this\nstate, the job and all the transfer executions are subject to\ngarbage collection." - ], - "enum": [ - "STATUS_UNSPECIFIED", - "ENABLED", - "DISABLED", - "DELETED" - ], - "description": "Status of the job. This value MUST be specified for\n`CreateTransferJobRequests`.\n\nNOTE: The effect of the new job status takes place during a subsequent job\nrun. For example, if you change the job status from `ENABLED` to\n`DISABLED`, and an operation spawned by the transfer is running, the status\nchange would not affect the current operation." - }, - "schedule": { - "$ref": "Schedule", - "description": "Schedule specification." - }, - "name": { - "type": "string", - "description": "A globally unique name assigned by Storage Transfer Service when the\njob is created. This field should be left empty in requests to create a new\ntransfer job; otherwise, the requests result in an `INVALID_ARGUMENT`\nerror." - }, - "deletionTime": { - "type": "string", - "description": "This field cannot be changed by user requests.", - "format": "google-datetime" - }, "projectId": { - "description": "The ID of the Google Cloud Platform Console project that owns the job.", + "description": "The ID of the Google Cloud Platform Console project that owns the job.\nRequired.", "type": "string" }, - "lastModificationTime": { - "description": "This field cannot be changed by user requests.", - "format": "google-datetime", - "type": "string" + "transferJob": { + "$ref": "TransferJob", + "description": "The job to update. `transferJob` is expected to specify only three fields:\n`description`, `transferSpec`, and `status`. An UpdateTransferJobRequest\nthat specifies other fields will be rejected with an error\n`INVALID_ARGUMENT`.\nRequired." }, - "description": { - "description": "A description provided by the user for the job. Its max length is 1024\nbytes when Unicode-encoded.", + "updateTransferJobFieldMask": { + "description": "The field mask of the fields in `transferJob` that are to be updated in\nthis request. Fields in `transferJob` that can be updated are:\n`description`, `transferSpec`, and `status`. To update the `transferSpec`\nof the job, a complete transfer specification has to be provided. An\nincomplete specification which misses any required fields will be rejected\nwith the error `INVALID_ARGUMENT`.", + "format": "google-fieldmask", "type": "string" - }, - "creationTime": { - "description": "This field cannot be changed by user requests.", - "format": "google-datetime", - "type": "string" - }, - "transferSpec": { - "$ref": "TransferSpec", - "description": "Transfer specification." } }, - "id": "TransferJob", - "description": "This resource represents the configuration of a transfer job that runs\nperiodically." - }, - "Schedule": { - "type": "object", - "properties": { - "scheduleEndDate": { - "$ref": "Date", - "description": "The last day the recurring transfer will be run. If `scheduleEndDate`\nis the same as `scheduleStartDate`, the transfer will be executed only\nonce." - }, - "startTimeOfDay": { - "$ref": "TimeOfDay", - "description": "The time in UTC at which the transfer will be scheduled to start in a day.\nTransfers may start later than this time. If not specified, recurring and\none-time transfers that are scheduled to run today will run immediately;\nrecurring transfers that are scheduled to run on a future date will start\nat approximately midnight UTC on that date. Note that when configuring a\ntransfer with the Cloud Platform Console, the transfer's start time in a\nday is specified in your local timezone." - }, - "scheduleStartDate": { - "$ref": "Date", - "description": "The first day the recurring transfer is scheduled to run. If\n`scheduleStartDate` is in the past, the transfer will run for the first\ntime on the following day.\nRequired." - } - }, - "id": "Schedule", - "description": "Transfers can be scheduled to recur or to run just once." + "type": "object" } }, - "protocol": "rest", - "icons": { - "x32": "http://www.google.com/images/icons/product/search-32.gif", - "x16": "http://www.google.com/images/icons/product/search-16.gif" - }, - "version": "v1", - "baseUrl": "https://storagetransfer.googleapis.com/", - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/cloud-platform": { - "description": "View and manage your data across Google Cloud Platform services" - } - } - } - }, - "kind": "discovery#restDescription", - "description": "Transfers data from external data sources to a Google Cloud Storage bucket or between Google Cloud Storage buckets.", "servicePath": "", - "rootUrl": "https://storagetransfer.googleapis.com/", - "basePath": "", - "ownerDomain": "google.com", - "name": "storagetransfer", - "batchPath": "batch", - "revision": "20180118", - "documentationLink": "https://cloud.google.com/storage/transfer", - "id": "storagetransfer:v1" -} + "title": "Storage Transfer API", + "version": "v1", + "version_module": true +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/storagetransfer/v1/storagetransfer-gen.go b/vendor/google.golang.org/api/storagetransfer/v1/storagetransfer-gen.go index ab8f6916c..4973e4870 100644 --- a/vendor/google.golang.org/api/storagetransfer/v1/storagetransfer-gen.go +++ b/vendor/google.golang.org/api/storagetransfer/v1/storagetransfer-gen.go @@ -1,4 +1,4 @@ -// Package storagetransfer provides access to the Google Storage Transfer API. +// Package storagetransfer provides access to the Storage Transfer API. // // See https://cloud.google.com/storage/transfer // @@ -1263,7 +1263,9 @@ type TransferJob struct { // "DELETED" - This is a soft delete state. After a transfer job is // set to this // state, the job and all the transfer executions are subject to - // garbage collection. + // garbage collection. Transfer jobs become eligible for garbage + // collection + // 30 days after their status is set to `DELETED`. Status string `json:"status,omitempty"` // TransferSpec: Transfer specification. diff --git a/vendor/google.golang.org/api/streetviewpublish/v1/streetviewpublish-api.json b/vendor/google.golang.org/api/streetviewpublish/v1/streetviewpublish-api.json index 36600f4ae..3960e3b39 100644 --- a/vendor/google.golang.org/api/streetviewpublish/v1/streetviewpublish-api.json +++ b/vendor/google.golang.org/api/streetviewpublish/v1/streetviewpublish-api.json @@ -1,157 +1,456 @@ { - "version": "v1", - "baseUrl": "https://streetviewpublish.googleapis.com/", - "servicePath": "", - "description": "Publishes 360 photos to Google Maps, along with position, orientation, and connectivity metadata. Apps can offer an interface for positioning, connecting, and uploading user-generated Street View images.\n", - "kind": "discovery#restDescription", + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/streetviewpublish": { + "description": "Publish and manage your 360 photos on Google Street View" + } + } + } + }, "basePath": "", - "documentationLink": "https://developers.google.com/streetview/publish/", - "id": "streetviewpublish:v1", - "revision": "20180120", + "baseUrl": "https://streetviewpublish.googleapis.com/", + "batchPath": "batch", + "canonicalName": "Street View Publish", + "description": "Publishes 360 photos to Google Maps, along with position, orientation, and connectivity metadata. Apps can offer an interface for positioning, connecting, and uploading user-generated Street View images.\n", "discoveryVersion": "v1", - "version_module": true, + "documentationLink": "https://developers.google.com/streetview/publish/", + "fullyEncodeReservedExpansion": true, + "icons": { + "x16": "http://www.google.com/images/icons/product/search-16.gif", + "x32": "http://www.google.com/images/icons/product/search-32.gif" + }, + "id": "streetviewpublish:v1", + "kind": "discovery#restDescription", + "name": "streetviewpublish", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "$.xgafv": { + "description": "V1 error format.", + "enum": [ + "1", + "2" + ], + "enumDescriptions": [ + "v1 error format", + "v2 error format" + ], + "location": "query", + "type": "string" + }, + "access_token": { + "description": "OAuth access token.", + "location": "query", + "type": "string" + }, + "alt": { + "default": "json", + "description": "Data format for response.", + "enum": [ + "json", + "media", + "proto" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json", + "Media download with context-dependent Content-Type", + "Responses with Content-Type of application/x-protobuf" + ], + "location": "query", + "type": "string" + }, + "bearer_token": { + "description": "OAuth bearer token.", + "location": "query", + "type": "string" + }, + "callback": { + "description": "JSONP", + "location": "query", + "type": "string" + }, + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "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.", + "location": "query", + "type": "string" + }, + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "pp": { + "default": "true", + "description": "Pretty-print response.", + "location": "query", + "type": "boolean" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", + "location": "query", + "type": "string" + }, + "uploadType": { + "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", + "location": "query", + "type": "string" + }, + "upload_protocol": { + "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", + "location": "query", + "type": "string" + } + }, + "protocol": "rest", + "resources": { + "photo": { + "methods": { + "create": { + "description": "After the client finishes uploading the photo with the returned\nUploadRef,\nCreatePhoto\npublishes the uploaded Photo to\nStreet View on Google Maps.\n\nCurrently, the only way to set heading, pitch, and roll in CreatePhoto is\nthrough the [Photo Sphere XMP\nmetadata](https://developers.google.com/streetview/spherical-metadata) in\nthe photo bytes. The `pose.heading`, `pose.pitch`, `pose.roll`,\n`pose.altitude`, and `pose.level` fields in Pose are ignored for\nCreatePhoto.\n\nThis method returns the following error codes:\n\n* google.rpc.Code.INVALID_ARGUMENT if the request is malformed or if\nthe uploaded photo is not a 360 photo.\n* google.rpc.Code.NOT_FOUND if the upload reference does not exist.\n* google.rpc.Code.RESOURCE_EXHAUSTED if the account has reached the\nstorage limit.", + "flatPath": "v1/photo", + "httpMethod": "POST", + "id": "streetviewpublish.photo.create", + "parameterOrder": [], + "parameters": {}, + "path": "v1/photo", + "request": { + "$ref": "Photo" + }, + "response": { + "$ref": "Photo" + }, + "scopes": [ + "https://www.googleapis.com/auth/streetviewpublish" + ] + }, + "delete": { + "description": "Deletes a Photo and its metadata.\n\nThis method returns the following error codes:\n\n* google.rpc.Code.PERMISSION_DENIED if the requesting user did not\ncreate the requested photo.\n* google.rpc.Code.NOT_FOUND if the photo ID does not exist.", + "flatPath": "v1/photo/{photoId}", + "httpMethod": "DELETE", + "id": "streetviewpublish.photo.delete", + "parameterOrder": [ + "photoId" + ], + "parameters": { + "photoId": { + "description": "Required. ID of the Photo.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/photo/{photoId}", + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/streetviewpublish" + ] + }, + "get": { + "description": "Gets the metadata of the specified\nPhoto.\n\nThis method returns the following error codes:\n\n* google.rpc.Code.PERMISSION_DENIED if the requesting user did not\ncreate the requested Photo.\n* google.rpc.Code.NOT_FOUND if the requested\nPhoto does not exist.\n* google.rpc.Code.UNAVAILABLE if the requested\nPhoto is still being indexed.", + "flatPath": "v1/photo/{photoId}", + "httpMethod": "GET", + "id": "streetviewpublish.photo.get", + "parameterOrder": [ + "photoId" + ], + "parameters": { + "photoId": { + "description": "Required. ID of the Photo.", + "location": "path", + "required": true, + "type": "string" + }, + "view": { + "description": "Specifies if a download URL for the photo bytes should be returned in the\nPhoto response.", + "enum": [ + "BASIC", + "INCLUDE_DOWNLOAD_URL" + ], + "location": "query", + "type": "string" + } + }, + "path": "v1/photo/{photoId}", + "response": { + "$ref": "Photo" + }, + "scopes": [ + "https://www.googleapis.com/auth/streetviewpublish" + ] + }, + "startUpload": { + "description": "Creates an upload session to start uploading photo bytes. The upload URL of\nthe returned UploadRef is used to\nupload the bytes for the Photo.\n\nIn addition to the photo requirements shown in\nhttps://support.google.com/maps/answer/7012050?hl=en\u0026ref_topic=6275604,\nthe photo must also meet the following requirements:\n\n* Photo Sphere XMP metadata must be included in the photo medadata. See\nhttps://developers.google.com/streetview/spherical-metadata for the\nrequired fields.\n* The pixel size of the photo must meet the size requirements listed in\nhttps://support.google.com/maps/answer/7012050?hl=en\u0026ref_topic=6275604, and\nthe photo must be a full 360 horizontally.\n\nAfter the upload is complete, the\nUploadRef is used with\nCreatePhoto\nto create the Photo object entry.", + "flatPath": "v1/photo:startUpload", + "httpMethod": "POST", + "id": "streetviewpublish.photo.startUpload", + "parameterOrder": [], + "parameters": {}, + "path": "v1/photo:startUpload", + "request": { + "$ref": "Empty" + }, + "response": { + "$ref": "UploadRef" + }, + "scopes": [ + "https://www.googleapis.com/auth/streetviewpublish" + ] + }, + "update": { + "description": "Updates the metadata of a Photo, such\nas pose, place association, connections, etc. Changing the pixels of a\nphoto is not supported.\n\nOnly the fields specified in the\nupdateMask\nfield are used. If `updateMask` is not present, the update applies to all\nfields.\n\n\u003caside class=\"note\"\u003e\u003cb\u003eNote:\u003c/b\u003e To update\nPose.altitude,\nPose.latLngPair has to be\nfilled as well. Otherwise, the request will fail.\u003c/aside\u003e\n\nThis method returns the following error codes:\n\n* google.rpc.Code.PERMISSION_DENIED if the requesting user did not\ncreate the requested photo.\n* google.rpc.Code.INVALID_ARGUMENT if the request is malformed.\n* google.rpc.Code.NOT_FOUND if the requested photo does not exist.\n* google.rpc.Code.UNAVAILABLE if the requested\nPhoto is still being indexed.", + "flatPath": "v1/photo/{id}", + "httpMethod": "PUT", + "id": "streetviewpublish.photo.update", + "parameterOrder": [ + "id" + ], + "parameters": { + "id": { + "description": "Required. A unique identifier for a photo.", + "location": "path", + "required": true, + "type": "string" + }, + "updateMask": { + "description": "Mask that identifies fields on the photo metadata to update.\nIf not present, the old Photo\nmetadata will be entirely replaced with the\nnew Photo metadata in this request.\nThe update fails if invalid fields are specified. Multiple fields can be\nspecified in a comma-delimited list.\n\nThe following fields are valid:\n\n* `pose.heading`\n* `pose.latLngPair`\n* `pose.pitch`\n* `pose.roll`\n* `pose.level`\n* `pose.altitude`\n* `connections`\n* `places`\n\n\n\u003caside class=\"note\"\u003e\u003cb\u003eNote:\u003c/b\u003e Repeated fields in\nupdateMask\nmean the entire set of repeated values will be replaced with the new\ncontents. For example, if\nupdateMask\ncontains `connections` and `UpdatePhotoRequest.photo.connections` is empty,\nall connections will be removed.\u003c/aside\u003e", + "format": "google-fieldmask", + "location": "query", + "type": "string" + } + }, + "path": "v1/photo/{id}", + "request": { + "$ref": "Photo" + }, + "response": { + "$ref": "Photo" + }, + "scopes": [ + "https://www.googleapis.com/auth/streetviewpublish" + ] + } + } + }, + "photos": { + "methods": { + "batchDelete": { + "description": "Deletes a list of Photos and their\nmetadata.\n\nNote that if\nBatchDeletePhotos\nfails, either critical fields are missing or there was an authentication\nerror. Even if\nBatchDeletePhotos\nsucceeds, there may have been failures for single photos in the batch.\nThese failures will be specified in each\nPhotoResponse.status\nin\nBatchDeletePhotosResponse.results.\nSee\nDeletePhoto\nfor specific failures that can occur per photo.", + "flatPath": "v1/photos:batchDelete", + "httpMethod": "POST", + "id": "streetviewpublish.photos.batchDelete", + "parameterOrder": [], + "parameters": {}, + "path": "v1/photos:batchDelete", + "request": { + "$ref": "BatchDeletePhotosRequest" + }, + "response": { + "$ref": "BatchDeletePhotosResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/streetviewpublish" + ] + }, + "batchGet": { + "description": "Gets the metadata of the specified\nPhoto batch.\n\nNote that if\nBatchGetPhotos\nfails, either critical fields are missing or there was an authentication\nerror. Even if\nBatchGetPhotos\nsucceeds, there may have been failures for single photos in the batch.\nThese failures will be specified in each\nPhotoResponse.status\nin\nBatchGetPhotosResponse.results.\nSee\nGetPhoto\nfor specific failures that can occur per photo.", + "flatPath": "v1/photos:batchGet", + "httpMethod": "GET", + "id": "streetviewpublish.photos.batchGet", + "parameterOrder": [], + "parameters": { + "photoIds": { + "description": "Required. IDs of the Photos. For HTTP\nGET requests, the URL query parameter should be\n`photoIds=\u003cid1\u003e\u0026photoIds=\u003cid2\u003e\u0026...`.", + "location": "query", + "repeated": true, + "type": "string" + }, + "view": { + "description": "Specifies if a download URL for the photo bytes should be returned in the\nPhoto response.", + "enum": [ + "BASIC", + "INCLUDE_DOWNLOAD_URL" + ], + "location": "query", + "type": "string" + } + }, + "path": "v1/photos:batchGet", + "response": { + "$ref": "BatchGetPhotosResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/streetviewpublish" + ] + }, + "batchUpdate": { + "description": "Updates the metadata of Photos, such\nas pose, place association, connections, etc. Changing the pixels of photos\nis not supported.\n\nNote that if\nBatchUpdatePhotos\nfails, either critical fields are missing or there was an authentication\nerror. Even if\nBatchUpdatePhotos\nsucceeds, there may have been failures for single photos in the batch.\nThese failures will be specified in each\nPhotoResponse.status\nin\nBatchUpdatePhotosResponse.results.\nSee\nUpdatePhoto\nfor specific failures that can occur per photo.\n\nOnly the fields specified in\nupdateMask\nfield are used. If `updateMask` is not present, the update applies to all\nfields.\n\n\u003caside class=\"note\"\u003e\u003cb\u003eNote:\u003c/b\u003e To update\nPose.altitude,\nPose.latLngPair has to be\nfilled as well. Otherwise, the request will fail.\u003c/aside\u003e", + "flatPath": "v1/photos:batchUpdate", + "httpMethod": "POST", + "id": "streetviewpublish.photos.batchUpdate", + "parameterOrder": [], + "parameters": {}, + "path": "v1/photos:batchUpdate", + "request": { + "$ref": "BatchUpdatePhotosRequest" + }, + "response": { + "$ref": "BatchUpdatePhotosResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/streetviewpublish" + ] + }, + "list": { + "description": "Lists all the Photos that belong to\nthe user.\n\n\u003caside class=\"note\"\u003e\u003cb\u003eNote:\u003c/b\u003e Recently created photos that are still\nbeing indexed are not returned in the response.\u003c/aside\u003e", + "flatPath": "v1/photos", + "httpMethod": "GET", + "id": "streetviewpublish.photos.list", + "parameterOrder": [], + "parameters": { + "filter": { + "description": "The filter expression. For example: `placeId=ChIJj61dQgK6j4AR4GeTYWZsKWw`.\n\nThe only filter supported at the moment is `placeId`.", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "The maximum number of photos to return.\n`pageSize` must be non-negative. If `pageSize` is zero or is not provided,\nthe default page size of 100 will be used.\nThe number of photos returned in the response may be less than `pageSize`\nif the number of photos that belong to the user is less than `pageSize`.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "The\nnextPageToken\nvalue returned from a previous\nListPhotos\nrequest, if any.", + "location": "query", + "type": "string" + }, + "view": { + "description": "Specifies if a download URL for the photos bytes should be returned in the\nPhotos response.", + "enum": [ + "BASIC", + "INCLUDE_DOWNLOAD_URL" + ], + "location": "query", + "type": "string" + } + }, + "path": "v1/photos", + "response": { + "$ref": "ListPhotosResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/streetviewpublish" + ] + } + } + } + }, + "revision": "20180205", + "rootUrl": "https://streetviewpublish.googleapis.com/", "schemas": { + "BatchDeletePhotosRequest": { + "description": "Request to delete multiple Photos.", + "id": "BatchDeletePhotosRequest", + "properties": { + "photoIds": { + "description": "Required. IDs of the Photos. For HTTP\nGET requests, the URL query parameter should be\n`photoIds=\u003cid1\u003e\u0026photoIds=\u003cid2\u003e\u0026...`.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "BatchDeletePhotosResponse": { + "description": "Response to batch delete of one or more\nPhotos.", + "id": "BatchDeletePhotosResponse", + "properties": { + "status": { + "description": "The status for the operation to delete a single\nPhoto in the batch request.", + "items": { + "$ref": "Status" + }, + "type": "array" + } + }, + "type": "object" + }, + "BatchGetPhotosResponse": { + "description": "Response to batch get of Photos.", + "id": "BatchGetPhotosResponse", + "properties": { + "results": { + "description": "List of results for each individual\nPhoto requested, in the same order as\nthe requests in\nBatchGetPhotos.", + "items": { + "$ref": "PhotoResponse" + }, + "type": "array" + } + }, + "type": "object" + }, + "BatchUpdatePhotosRequest": { + "description": "Request to update the metadata of photos.\nUpdating the pixels of photos is not supported.", + "id": "BatchUpdatePhotosRequest", + "properties": { + "updatePhotoRequests": { + "description": "Required. List of\nUpdatePhotoRequests.", + "items": { + "$ref": "UpdatePhotoRequest" + }, + "type": "array" + } + }, + "type": "object" + }, + "BatchUpdatePhotosResponse": { + "description": "Response to batch update of metadata of one or more\nPhotos.", + "id": "BatchUpdatePhotosResponse", + "properties": { + "results": { + "description": "List of results for each individual\nPhoto updated, in the same order as\nthe request.", + "items": { + "$ref": "PhotoResponse" + }, + "type": "array" + } + }, + "type": "object" + }, "Connection": { "description": "A connection is the link from a source photo to a destination photo.", - "type": "object", + "id": "Connection", "properties": { "target": { "$ref": "PhotoId", "description": "Required. The destination of the connection from the containing photo to\nanother photo." } }, - "id": "Connection" - }, - "BatchUpdatePhotosResponse": { - "description": "Response to batch update of metadata of one or more\nPhotos.", - "type": "object", - "properties": { - "results": { - "type": "array", - "items": { - "$ref": "PhotoResponse" - }, - "description": "List of results for each individual\nPhoto updated, in the same order as\nthe request." - } - }, - "id": "BatchUpdatePhotosResponse" - }, - "Status": { - "type": "object", - "properties": { - "code": { - "type": "integer", - "description": "The status code, which should be an enum value of google.rpc.Code.", - "format": "int32" - }, - "message": { - "description": "A developer-facing error message, which should be in English. Any\nuser-facing error message should be localized and sent in the\ngoogle.rpc.Status.details field, or localized by the client.", - "type": "string" - }, - "details": { - "description": "A list of messages that carry the error details. There is a common set of\nmessage types for APIs to use.", - "type": "array", - "items": { - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - }, - "type": "object" - } - } - }, - "id": "Status", - "description": "The `Status` type defines a logical error model that is suitable for different\nprogramming environments, including REST APIs and RPC APIs. It is used by\n[gRPC](https://github.com/grpc). The error model is designed to be:\n\n- Simple to use and understand for most users\n- Flexible enough to meet unexpected needs\n\n# Overview\n\nThe `Status` message contains three pieces of data: error code, error message,\nand error details. The error code should be an enum value of\ngoogle.rpc.Code, but it may accept additional error codes if needed. The\nerror message should be a developer-facing English message that helps\ndevelopers *understand* and *resolve* the error. If a localized user-facing\nerror message is needed, put the localized message in the error details or\nlocalize it in the client. The optional error details may contain arbitrary\ninformation about the error. There is a predefined set of error detail types\nin the package `google.rpc` that can be used for common error conditions.\n\n# Language mapping\n\nThe `Status` message is the logical representation of the error model, but it\nis not necessarily the actual wire format. When the `Status` message is\nexposed in different client libraries and different wire protocols, it can be\nmapped differently. For example, it will likely be mapped to some exceptions\nin Java, but more likely mapped to some error codes in C.\n\n# Other uses\n\nThe error model and the `Status` message can be used in a variety of\nenvironments, either with or without APIs, to provide a\nconsistent developer experience across different environments.\n\nExample uses of this error model include:\n\n- Partial errors. If a service needs to return partial errors to the client,\n it may embed the `Status` in the normal response to indicate the partial\n errors.\n\n- Workflow errors. A typical workflow has multiple steps. Each step may\n have a `Status` message for error reporting.\n\n- Batch operations. If a client uses batch request and batch response, the\n `Status` message should be used directly inside batch response, one for\n each error sub-response.\n\n- Asynchronous operations. If an API call embeds asynchronous operation\n results in its response, the status of those operations should be\n represented directly using the `Status` message.\n\n- Logging. If some API errors are stored in logs, the message `Status` could\n be used directly after any stripping needed for security/privacy reasons." - }, - "BatchDeletePhotosResponse": { - "id": "BatchDeletePhotosResponse", - "description": "Response to batch delete of one or more\nPhotos.", - "type": "object", - "properties": { - "status": { - "description": "The status for the operation to delete a single\nPhoto in the batch request.", - "type": "array", - "items": { - "$ref": "Status" - } - } - } - }, - "Level": { - "type": "object", - "properties": { - "number": { - "description": "Floor number, used for ordering. 0 indicates the ground level, 1 indicates\nthe first level above ground level, -1 indicates the first level under\nground level. Non-integer values are OK.", - "format": "double", - "type": "number" - }, - "name": { - "description": "Required. A name assigned to this Level, restricted to 3 characters.\nConsider how the elevator buttons would be labeled for this level if there\nwas an elevator.", - "type": "string" - } - }, - "id": "Level", - "description": "Level information containing level number and its corresponding name." + "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 `{}`.", - "type": "object", + "id": "Empty", "properties": {}, - "id": "Empty" - }, - "UploadRef": { - "properties": { - "uploadUrl": { - "description": "Required. An upload reference should be unique for each user. It follows\nthe form:\n\"https://streetviewpublish.googleapis.com/media/user/{account_id}/photo/{upload_reference}\"", - "type": "string" - } - }, - "id": "UploadRef", - "description": "Upload reference for media files.", "type": "object" }, - "Place": { - "description": "Place metadata for an entity.", - "type": "object", - "properties": { - "placeId": { - "type": "string", - "description": "Place identifier, as described in\nhttps://developers.google.com/places/place-id." - } - }, - "id": "Place" - }, - "BatchGetPhotosResponse": { - "description": "Response to batch get of Photos.", - "type": "object", - "properties": { - "results": { - "description": "List of results for each individual\nPhoto requested, in the same order as\nthe requests in\nBatchGetPhotos.", - "type": "array", - "items": { - "$ref": "PhotoResponse" - } - } - }, - "id": "BatchGetPhotosResponse" - }, - "BatchDeletePhotosRequest": { - "description": "Request to delete multiple Photos.", - "type": "object", - "properties": { - "photoIds": { - "description": "Required. IDs of the Photos. For HTTP\nGET requests, the URL query parameter should be\n`photoIds=\u003cid1\u003e&photoIds=\u003cid2\u003e&...`.", - "type": "array", - "items": { - "type": "string" - } - } - }, - "id": "BatchDeletePhotosRequest" - }, "LatLng": { "description": "An object representing a latitude/longitude pair. This is expressed as a pair\nof doubles representing degrees latitude and degrees longitude. Unless\nspecified otherwise, this must conform to the\n\u003ca href=\"http://www.unoosa.org/pdf/icg/2012/template/WGS_84.pdf\"\u003eWGS84\nstandard\u003c/a\u003e. Values must be within normalized ranges.", - "type": "object", + "id": "LatLng", "properties": { "latitude": { "description": "The latitude in degrees. It must be in the range [-90.0, +90.0].", @@ -164,164 +463,66 @@ "type": "number" } }, - "id": "LatLng" + "type": "object" }, - "UpdatePhotoRequest": { - "description": "Request to update the metadata of a\nPhoto. Updating the pixels of a photo\nis not supported.", - "type": "object", + "Level": { + "description": "Level information containing level number and its corresponding name.", + "id": "Level", "properties": { - "updateMask": { - "description": "Mask that identifies fields on the photo metadata to update.\nIf not present, the old Photo\nmetadata will be entirely replaced with the\nnew Photo metadata in this request.\nThe update fails if invalid fields are specified. Multiple fields can be\nspecified in a comma-delimited list.\n\nThe following fields are valid:\n\n* `pose.heading`\n* `pose.latLngPair`\n* `pose.pitch`\n* `pose.roll`\n* `pose.level`\n* `pose.altitude`\n* `connections`\n* `places`\n\n\n\u003caside class=\"note\"\u003e\u003cb\u003eNote:\u003c/b\u003e Repeated fields in\nupdateMask\nmean the entire set of repeated values will be replaced with the new\ncontents. For example, if\nupdateMask\ncontains `connections` and `UpdatePhotoRequest.photo.connections` is empty,\nall connections will be removed.\u003c/aside\u003e", - "format": "google-fieldmask", + "name": { + "description": "Required. A name assigned to this Level, restricted to 3 characters.\nConsider how the elevator buttons would be labeled for this level if there\nwas an elevator.", "type": "string" }, - "photo": { - "$ref": "Photo", - "description": "Required. Photo object containing the\nnew metadata." - } - }, - "id": "UpdatePhotoRequest" - }, - "PhotoId": { - "id": "PhotoId", - "description": "Identifier for a Photo.", - "type": "object", - "properties": { - "id": { - "description": "Required. A unique identifier for a photo.", - "type": "string" - } - } - }, - "Pose": { - "description": "Raw pose measurement for an entity.", - "type": "object", - "properties": { - "latLngPair": { - "description": "Latitude and longitude pair of the pose, as explained here:\nhttps://cloud.google.com/datastore/docs/reference/rest/Shared.Types/LatLng\nWhen creating a Photo, if the\nlatitude and longitude pair are not provided here, the geolocation from the\nexif header will be used. If the latitude and longitude pair is not\nprovided and cannot be found in the exif header, the create photo process\nwill fail.", - "$ref": "LatLng" - }, - "roll": { - "description": "Roll, measured in degrees. Value must be \u003e= 0 and \u003c360. A value of 0\nmeans level with the horizon.\nNaN indicates an unmeasured quantity.", - "format": "double", - "type": "number" - }, - "level": { - "$ref": "Level", - "description": "Level (the floor in a building) used to configure vertical navigation." - }, - "heading": { - "type": "number", - "description": "Compass heading, measured at the center of the photo in degrees clockwise\nfrom North. Value must be \u003e=0 and \u003c360.\nNaN indicates an unmeasured quantity.", - "format": "double" - }, - "altitude": { - "description": "Altitude of the pose in meters above WGS84 ellipsoid.\nNaN indicates an unmeasured quantity.", - "format": "double", - "type": "number" - }, - "pitch": { - "description": "Pitch, measured at the center of the photo in degrees. Value must be \u003e=-90\nand \u003c= 90. A value of -90 means looking directly down, and a value of 90\nmeans looking directly up.\nNaN indicates an unmeasured quantity.", + "number": { + "description": "Floor number, used for ordering. 0 indicates the ground level, 1 indicates\nthe first level above ground level, -1 indicates the first level under\nground level. Non-integer values are OK.", "format": "double", "type": "number" } }, - "id": "Pose" - }, - "BatchUpdatePhotosRequest": { - "properties": { - "updatePhotoRequests": { - "description": "Required. List of\nUpdatePhotoRequests.", - "type": "array", - "items": { - "$ref": "UpdatePhotoRequest" - } - } - }, - "id": "BatchUpdatePhotosRequest", - "description": "Request to update the metadata of photos.\nUpdating the pixels of photos is not supported.", "type": "object" }, "ListPhotosResponse": { - "type": "object", + "description": "Response to list all photos that belong to a user.", + "id": "ListPhotosResponse", "properties": { - "photos": { - "description": "List of photos. The maximum number of items returned is based on the\npageSize field\nin the request.", - "type": "array", - "items": { - "$ref": "Photo" - } - }, "nextPageToken": { "description": "Token to retrieve the next page of results, or empty if there are no more\nresults in the list.", "type": "string" + }, + "photos": { + "description": "List of photos. The maximum number of items returned is based on the\npageSize field\nin the request.", + "items": { + "$ref": "Photo" + }, + "type": "array" } }, - "id": "ListPhotosResponse", - "description": "Response to list all photos that belong to a user." - }, - "Photo": { - "description": "Photo is used to store 360 photos along with photo metadata.", - "type": "object", - "properties": { - "thumbnailUrl": { - "description": "Output only. The thumbnail URL for showing a preview of the given photo.", - "type": "string" - }, - "captureTime": { - "type": "string", - "description": "Absolute time when the photo was captured.\nWhen the photo has no exif timestamp, this is used to set a timestamp in\nthe photo metadata.", - "format": "google-datetime" - }, - "viewCount": { - "description": "Output only. View count of the photo.", - "format": "int64", - "type": "string" - }, - "downloadUrl": { - "description": "Output only. The download URL for the photo bytes. This field is set only\nwhen\nGetPhotoRequest.view\nis set to\nPhotoView.INCLUDE_DOWNLOAD_URL.", - "type": "string" - }, - "connections": { - "description": "Connections to other photos. A connection represents the link from this\nphoto to another photo.", - "type": "array", - "items": { - "$ref": "Connection" - } - }, - "places": { - "description": "Places where this photo belongs.", - "type": "array", - "items": { - "$ref": "Place" - } - }, - "pose": { - "$ref": "Pose", - "description": "Pose of the photo." - }, - "photoId": { - "description": "Required when updating a photo. Output only when creating a photo.\nIdentifier for the photo, which is unique among all photos in\nGoogle.", - "$ref": "PhotoId" - }, - "uploadReference": { - "$ref": "UploadRef", - "description": "Required when creating a photo. Input only. The resource URL where the\nphoto bytes are uploaded to." - }, - "shareLink": { - "description": "Output only. The share link for the photo.", - "type": "string" - } - }, - "id": "Photo" + "type": "object" }, "Operation": { - "type": "object", + "description": "This resource represents a long-running operation that is the result of a\nnetwork API call.", + "id": "Operation", "properties": { "done": { "description": "If the value is `false`, it means the operation is still in progress.\nIf `true`, the operation is completed, and either `error` or `response` is\navailable.", "type": "boolean" }, + "error": { + "$ref": "Status", + "description": "The error result of the operation in case of failure or cancellation." + }, + "metadata": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "description": "Service-specific metadata associated with the operation. It typically\ncontains progress information and common metadata such as create time.\nSome services might not provide such metadata. Any method that returns a\nlong-running operation should document the metadata type, if any.", + "type": "object" + }, + "name": { + "description": "The server-assigned name, which is only unique within the same service that\noriginally returns it. If you use the default HTTP mapping, the\n`name` should have the format of `operations/some/unique/name`.", + "type": "string" + }, "response": { "additionalProperties": { "description": "Properties of the object. Contains field @type with type URL.", @@ -329,395 +530,194 @@ }, "description": "The normal response of the operation in case of success. If the original\nmethod returns no data on success, such as `Delete`, the response is\n`google.protobuf.Empty`. If the original method is standard\n`Get`/`Create`/`Update`, the response should be the resource. For other\nmethods, the response should have the type `XxxResponse`, where `Xxx`\nis the original method name. For example, if the original method name\nis `TakeSnapshot()`, the inferred response type is\n`TakeSnapshotResponse`.", "type": "object" - }, - "name": { - "description": "The server-assigned name, which is only unique within the same service that\noriginally returns it. If you use the default HTTP mapping, the\n`name` should have the format of `operations/some/unique/name`.", - "type": "string" - }, - "error": { - "description": "The error result of the operation in case of failure or cancellation.", - "$ref": "Status" - }, - "metadata": { - "additionalProperties": { - "type": "any", - "description": "Properties of the object. Contains field @type with type URL." - }, - "description": "Service-specific metadata associated with the operation. It typically\ncontains progress information and common metadata such as create time.\nSome services might not provide such metadata. Any method that returns a\nlong-running operation should document the metadata type, if any.", - "type": "object" } }, - "id": "Operation", - "description": "This resource represents a long-running operation that is the result of a\nnetwork API call." + "type": "object" + }, + "Photo": { + "description": "Photo is used to store 360 photos along with photo metadata.", + "id": "Photo", + "properties": { + "captureTime": { + "description": "Absolute time when the photo was captured.\nWhen the photo has no exif timestamp, this is used to set a timestamp in\nthe photo metadata.", + "format": "google-datetime", + "type": "string" + }, + "connections": { + "description": "Connections to other photos. A connection represents the link from this\nphoto to another photo.", + "items": { + "$ref": "Connection" + }, + "type": "array" + }, + "downloadUrl": { + "description": "Output only. The download URL for the photo bytes. This field is set only\nwhen\nGetPhotoRequest.view\nis set to\nPhotoView.INCLUDE_DOWNLOAD_URL.", + "type": "string" + }, + "photoId": { + "$ref": "PhotoId", + "description": "Required when updating a photo. Output only when creating a photo.\nIdentifier for the photo, which is unique among all photos in\nGoogle." + }, + "places": { + "description": "Places where this photo belongs.", + "items": { + "$ref": "Place" + }, + "type": "array" + }, + "pose": { + "$ref": "Pose", + "description": "Pose of the photo." + }, + "shareLink": { + "description": "Output only. The share link for the photo.", + "type": "string" + }, + "thumbnailUrl": { + "description": "Output only. The thumbnail URL for showing a preview of the given photo.", + "type": "string" + }, + "uploadReference": { + "$ref": "UploadRef", + "description": "Required when creating a photo. Input only. The resource URL where the\nphoto bytes are uploaded to." + }, + "viewCount": { + "description": "Output only. View count of the photo.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "PhotoId": { + "description": "Identifier for a Photo.", + "id": "PhotoId", + "properties": { + "id": { + "description": "Required. A unique identifier for a photo.", + "type": "string" + } + }, + "type": "object" }, "PhotoResponse": { "description": "Response payload for a single\nPhoto\nin batch operations including\nBatchGetPhotos\nand\nBatchUpdatePhotos.", - "type": "object", + "id": "PhotoResponse", "properties": { - "status": { - "description": "The status for the operation to get or update a single photo in the batch\nrequest.", - "$ref": "Status" - }, "photo": { "$ref": "Photo", "description": "The Photo resource, if the request\nwas successful." + }, + "status": { + "$ref": "Status", + "description": "The status for the operation to get or update a single photo in the batch\nrequest." } }, - "id": "PhotoResponse" - } - }, - "protocol": "rest", - "icons": { - "x32": "http://www.google.com/images/icons/product/search-32.gif", - "x16": "http://www.google.com/images/icons/product/search-16.gif" - }, - "canonicalName": "Street View Publish", - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/streetviewpublish": { - "description": "Publish and manage your 360 photos on Google Street View" + "type": "object" + }, + "Place": { + "description": "Place metadata for an entity.", + "id": "Place", + "properties": { + "placeId": { + "description": "Place identifier, as described in\nhttps://developers.google.com/places/place-id.", + "type": "string" } - } + }, + "type": "object" + }, + "Pose": { + "description": "Raw pose measurement for an entity.", + "id": "Pose", + "properties": { + "altitude": { + "description": "Altitude of the pose in meters above WGS84 ellipsoid.\nNaN indicates an unmeasured quantity.", + "format": "double", + "type": "number" + }, + "heading": { + "description": "Compass heading, measured at the center of the photo in degrees clockwise\nfrom North. Value must be \u003e=0 and \u003c360.\nNaN indicates an unmeasured quantity.", + "format": "double", + "type": "number" + }, + "latLngPair": { + "$ref": "LatLng", + "description": "Latitude and longitude pair of the pose, as explained here:\nhttps://cloud.google.com/datastore/docs/reference/rest/Shared.Types/LatLng\nWhen creating a Photo, if the\nlatitude and longitude pair are not provided here, the geolocation from the\nexif header will be used. If the latitude and longitude pair is not\nprovided and cannot be found in the exif header, the create photo process\nwill fail." + }, + "level": { + "$ref": "Level", + "description": "Level (the floor in a building) used to configure vertical navigation." + }, + "pitch": { + "description": "Pitch, measured at the center of the photo in degrees. Value must be \u003e=-90\nand \u003c= 90. A value of -90 means looking directly down, and a value of 90\nmeans looking directly up.\nNaN indicates an unmeasured quantity.", + "format": "double", + "type": "number" + }, + "roll": { + "description": "Roll, measured in degrees. Value must be \u003e= 0 and \u003c360. A value of 0\nmeans level with the horizon.\nNaN indicates an unmeasured quantity.", + "format": "double", + "type": "number" + } + }, + "type": "object" + }, + "Status": { + "description": "The `Status` type defines a logical error model that is suitable for different\nprogramming environments, including REST APIs and RPC APIs. It is used by\n[gRPC](https://github.com/grpc). The error model is designed to be:\n\n- Simple to use and understand for most users\n- Flexible enough to meet unexpected needs\n\n# Overview\n\nThe `Status` message contains three pieces of data: error code, error message,\nand error details. The error code should be an enum value of\ngoogle.rpc.Code, but it may accept additional error codes if needed. The\nerror message should be a developer-facing English message that helps\ndevelopers *understand* and *resolve* the error. If a localized user-facing\nerror message is needed, put the localized message in the error details or\nlocalize it in the client. The optional error details may contain arbitrary\ninformation about the error. There is a predefined set of error detail types\nin the package `google.rpc` that can be used for common error conditions.\n\n# Language mapping\n\nThe `Status` message is the logical representation of the error model, but it\nis not necessarily the actual wire format. When the `Status` message is\nexposed in different client libraries and different wire protocols, it can be\nmapped differently. For example, it will likely be mapped to some exceptions\nin Java, but more likely mapped to some error codes in C.\n\n# Other uses\n\nThe error model and the `Status` message can be used in a variety of\nenvironments, either with or without APIs, to provide a\nconsistent developer experience across different environments.\n\nExample uses of this error model include:\n\n- Partial errors. If a service needs to return partial errors to the client,\n it may embed the `Status` in the normal response to indicate the partial\n errors.\n\n- Workflow errors. A typical workflow has multiple steps. Each step may\n have a `Status` message for error reporting.\n\n- Batch operations. If a client uses batch request and batch response, the\n `Status` message should be used directly inside batch response, one for\n each error sub-response.\n\n- Asynchronous operations. If an API call embeds asynchronous operation\n results in its response, the status of those operations should be\n represented directly using the `Status` message.\n\n- Logging. If some API errors are stored in logs, the message `Status` could\n be used directly after any stripping needed for security/privacy reasons.", + "id": "Status", + "properties": { + "code": { + "description": "The status code, which should be an enum value of google.rpc.Code.", + "format": "int32", + "type": "integer" + }, + "details": { + "description": "A list of messages that carry the error details. There is a common set of\nmessage types for APIs to use.", + "items": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "A developer-facing error message, which should be in English. Any\nuser-facing error message should be localized and sent in the\ngoogle.rpc.Status.details field, or localized by the client.", + "type": "string" + } + }, + "type": "object" + }, + "UpdatePhotoRequest": { + "description": "Request to update the metadata of a\nPhoto. Updating the pixels of a photo\nis not supported.", + "id": "UpdatePhotoRequest", + "properties": { + "photo": { + "$ref": "Photo", + "description": "Required. Photo object containing the\nnew metadata." + }, + "updateMask": { + "description": "Mask that identifies fields on the photo metadata to update.\nIf not present, the old Photo\nmetadata will be entirely replaced with the\nnew Photo metadata in this request.\nThe update fails if invalid fields are specified. Multiple fields can be\nspecified in a comma-delimited list.\n\nThe following fields are valid:\n\n* `pose.heading`\n* `pose.latLngPair`\n* `pose.pitch`\n* `pose.roll`\n* `pose.level`\n* `pose.altitude`\n* `connections`\n* `places`\n\n\n\u003caside class=\"note\"\u003e\u003cb\u003eNote:\u003c/b\u003e Repeated fields in\nupdateMask\nmean the entire set of repeated values will be replaced with the new\ncontents. For example, if\nupdateMask\ncontains `connections` and `UpdatePhotoRequest.photo.connections` is empty,\nall connections will be removed.\u003c/aside\u003e", + "format": "google-fieldmask", + "type": "string" + } + }, + "type": "object" + }, + "UploadRef": { + "description": "Upload reference for media files.", + "id": "UploadRef", + "properties": { + "uploadUrl": { + "description": "Required. An upload reference should be unique for each user. It follows\nthe form:\n\"https://streetviewpublish.googleapis.com/media/user/{account_id}/photo/{upload_reference}\"", + "type": "string" + } + }, + "type": "object" } }, - "rootUrl": "https://streetviewpublish.googleapis.com/", - "ownerDomain": "google.com", - "name": "streetviewpublish", - "batchPath": "batch", - "fullyEncodeReservedExpansion": true, + "servicePath": "", "title": "Street View Publish API", - "ownerName": "Google", - "resources": { - "photos": { - "methods": { - "list": { - "flatPath": "v1/photos", - "id": "streetviewpublish.photos.list", - "path": "v1/photos", - "description": "Lists all the Photos that belong to\nthe user.\n\n\u003caside class=\"note\"\u003e\u003cb\u003eNote:\u003c/b\u003e Recently created photos that are still\nbeing indexed are not returned in the response.\u003c/aside\u003e", - "httpMethod": "GET", - "parameterOrder": [], - "response": { - "$ref": "ListPhotosResponse" - }, - "parameters": { - "filter": { - "type": "string", - "location": "query", - "description": "The filter expression. For example: `placeId=ChIJj61dQgK6j4AR4GeTYWZsKWw`.\n\nThe only filter supported at the moment is `placeId`." - }, - "pageToken": { - "description": "The\nnextPageToken\nvalue returned from a previous\nListPhotos\nrequest, if any.", - "type": "string", - "location": "query" - }, - "pageSize": { - "location": "query", - "description": "The maximum number of photos to return.\n`pageSize` must be non-negative. If `pageSize` is zero or is not provided,\nthe default page size of 100 will be used.\nThe number of photos returned in the response may be less than `pageSize`\nif the number of photos that belong to the user is less than `pageSize`.", - "format": "int32", - "type": "integer" - }, - "view": { - "type": "string", - "location": "query", - "enum": [ - "BASIC", - "INCLUDE_DOWNLOAD_URL" - ], - "description": "Specifies if a download URL for the photos bytes should be returned in the\nPhotos response." - } - }, - "scopes": [ - "https://www.googleapis.com/auth/streetviewpublish" - ] - }, - "batchUpdate": { - "description": "Updates the metadata of Photos, such\nas pose, place association, connections, etc. Changing the pixels of photos\nis not supported.\n\nNote that if\nBatchUpdatePhotos\nfails, either critical fields are missing or there was an authentication\nerror. Even if\nBatchUpdatePhotos\nsucceeds, there may have been failures for single photos in the batch.\nThese failures will be specified in each\nPhotoResponse.status\nin\nBatchUpdatePhotosResponse.results.\nSee\nUpdatePhoto\nfor specific failures that can occur per photo.\n\nOnly the fields specified in\nupdateMask\nfield are used. If `updateMask` is not present, the update applies to all\nfields.\n\n\u003caside class=\"note\"\u003e\u003cb\u003eNote:\u003c/b\u003e To update\nPose.altitude,\nPose.latLngPair has to be\nfilled as well. Otherwise, the request will fail.\u003c/aside\u003e", - "request": { - "$ref": "BatchUpdatePhotosRequest" - }, - "response": { - "$ref": "BatchUpdatePhotosResponse" - }, - "parameterOrder": [], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/streetviewpublish" - ], - "parameters": {}, - "flatPath": "v1/photos:batchUpdate", - "path": "v1/photos:batchUpdate", - "id": "streetviewpublish.photos.batchUpdate" - }, - "batchDelete": { - "response": { - "$ref": "BatchDeletePhotosResponse" - }, - "parameterOrder": [], - "httpMethod": "POST", - "parameters": {}, - "scopes": [ - "https://www.googleapis.com/auth/streetviewpublish" - ], - "flatPath": "v1/photos:batchDelete", - "path": "v1/photos:batchDelete", - "id": "streetviewpublish.photos.batchDelete", - "request": { - "$ref": "BatchDeletePhotosRequest" - }, - "description": "Deletes a list of Photos and their\nmetadata.\n\nNote that if\nBatchDeletePhotos\nfails, either critical fields are missing or there was an authentication\nerror. Even if\nBatchDeletePhotos\nsucceeds, there may have been failures for single photos in the batch.\nThese failures will be specified in each\nPhotoResponse.status\nin\nBatchDeletePhotosResponse.results.\nSee\nDeletePhoto\nfor specific failures that can occur per photo." - }, - "batchGet": { - "description": "Gets the metadata of the specified\nPhoto batch.\n\nNote that if\nBatchGetPhotos\nfails, either critical fields are missing or there was an authentication\nerror. Even if\nBatchGetPhotos\nsucceeds, there may have been failures for single photos in the batch.\nThese failures will be specified in each\nPhotoResponse.status\nin\nBatchGetPhotosResponse.results.\nSee\nGetPhoto\nfor specific failures that can occur per photo.", - "response": { - "$ref": "BatchGetPhotosResponse" - }, - "parameterOrder": [], - "httpMethod": "GET", - "parameters": { - "photoIds": { - "type": "string", - "repeated": true, - "location": "query", - "description": "Required. IDs of the Photos. For HTTP\nGET requests, the URL query parameter should be\n`photoIds=\u003cid1\u003e&photoIds=\u003cid2\u003e&...`." - }, - "view": { - "type": "string", - "location": "query", - "enum": [ - "BASIC", - "INCLUDE_DOWNLOAD_URL" - ], - "description": "Specifies if a download URL for the photo bytes should be returned in the\nPhoto response." - } - }, - "scopes": [ - "https://www.googleapis.com/auth/streetviewpublish" - ], - "flatPath": "v1/photos:batchGet", - "path": "v1/photos:batchGet", - "id": "streetviewpublish.photos.batchGet" - } - } - }, - "photo": { - "methods": { - "startUpload": { - "path": "v1/photo:startUpload", - "id": "streetviewpublish.photo.startUpload", - "description": "Creates an upload session to start uploading photo bytes. The upload URL of\nthe returned UploadRef is used to\nupload the bytes for the Photo.\n\nIn addition to the photo requirements shown in\nhttps://support.google.com/maps/answer/7012050?hl=en&ref_topic=6275604,\nthe photo must also meet the following requirements:\n\n* Photo Sphere XMP metadata must be included in the photo medadata. See\nhttps://developers.google.com/streetview/spherical-metadata for the\nrequired fields.\n* The pixel size of the photo must meet the size requirements listed in\nhttps://support.google.com/maps/answer/7012050?hl=en&ref_topic=6275604, and\nthe photo must be a full 360 horizontally.\n\nAfter the upload is complete, the\nUploadRef is used with\nCreatePhoto\nto create the Photo object entry.", - "request": { - "$ref": "Empty" - }, - "response": { - "$ref": "UploadRef" - }, - "parameterOrder": [], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/streetviewpublish" - ], - "parameters": {}, - "flatPath": "v1/photo:startUpload" - }, - "delete": { - "flatPath": "v1/photo/{photoId}", - "path": "v1/photo/{photoId}", - "id": "streetviewpublish.photo.delete", - "description": "Deletes a Photo and its metadata.\n\nThis method returns the following error codes:\n\n* google.rpc.Code.PERMISSION_DENIED if the requesting user did not\ncreate the requested photo.\n* google.rpc.Code.NOT_FOUND if the photo ID does not exist.", - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "photoId" - ], - "httpMethod": "DELETE", - "scopes": [ - "https://www.googleapis.com/auth/streetviewpublish" - ], - "parameters": { - "photoId": { - "description": "Required. ID of the Photo.", - "required": true, - "type": "string", - "location": "path" - } - } - }, - "get": { - "path": "v1/photo/{photoId}", - "id": "streetviewpublish.photo.get", - "description": "Gets the metadata of the specified\nPhoto.\n\nThis method returns the following error codes:\n\n* google.rpc.Code.PERMISSION_DENIED if the requesting user did not\ncreate the requested Photo.\n* google.rpc.Code.NOT_FOUND if the requested\nPhoto does not exist.\n* google.rpc.Code.UNAVAILABLE if the requested\nPhoto is still being indexed.", - "response": { - "$ref": "Photo" - }, - "parameterOrder": [ - "photoId" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/streetviewpublish" - ], - "parameters": { - "photoId": { - "description": "Required. ID of the Photo.", - "required": true, - "type": "string", - "location": "path" - }, - "view": { - "enum": [ - "BASIC", - "INCLUDE_DOWNLOAD_URL" - ], - "description": "Specifies if a download URL for the photo bytes should be returned in the\nPhoto response.", - "type": "string", - "location": "query" - } - }, - "flatPath": "v1/photo/{photoId}" - }, - "update": { - "response": { - "$ref": "Photo" - }, - "parameterOrder": [ - "id" - ], - "httpMethod": "PUT", - "scopes": [ - "https://www.googleapis.com/auth/streetviewpublish" - ], - "parameters": { - "id": { - "required": true, - "type": "string", - "location": "path", - "description": "Required. A unique identifier for a photo." - }, - "updateMask": { - "location": "query", - "description": "Mask that identifies fields on the photo metadata to update.\nIf not present, the old Photo\nmetadata will be entirely replaced with the\nnew Photo metadata in this request.\nThe update fails if invalid fields are specified. Multiple fields can be\nspecified in a comma-delimited list.\n\nThe following fields are valid:\n\n* `pose.heading`\n* `pose.latLngPair`\n* `pose.pitch`\n* `pose.roll`\n* `pose.level`\n* `pose.altitude`\n* `connections`\n* `places`\n\n\n\u003caside class=\"note\"\u003e\u003cb\u003eNote:\u003c/b\u003e Repeated fields in\nupdateMask\nmean the entire set of repeated values will be replaced with the new\ncontents. For example, if\nupdateMask\ncontains `connections` and `UpdatePhotoRequest.photo.connections` is empty,\nall connections will be removed.\u003c/aside\u003e", - "format": "google-fieldmask", - "type": "string" - } - }, - "flatPath": "v1/photo/{id}", - "path": "v1/photo/{id}", - "id": "streetviewpublish.photo.update", - "description": "Updates the metadata of a Photo, such\nas pose, place association, connections, etc. Changing the pixels of a\nphoto is not supported.\n\nOnly the fields specified in the\nupdateMask\nfield are used. If `updateMask` is not present, the update applies to all\nfields.\n\n\u003caside class=\"note\"\u003e\u003cb\u003eNote:\u003c/b\u003e To update\nPose.altitude,\nPose.latLngPair has to be\nfilled as well. Otherwise, the request will fail.\u003c/aside\u003e\n\nThis method returns the following error codes:\n\n* google.rpc.Code.PERMISSION_DENIED if the requesting user did not\ncreate the requested photo.\n* google.rpc.Code.INVALID_ARGUMENT if the request is malformed.\n* google.rpc.Code.NOT_FOUND if the requested photo does not exist.\n* google.rpc.Code.UNAVAILABLE if the requested\nPhoto is still being indexed.", - "request": { - "$ref": "Photo" - } - }, - "create": { - "response": { - "$ref": "Photo" - }, - "parameterOrder": [], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/streetviewpublish" - ], - "parameters": {}, - "flatPath": "v1/photo", - "path": "v1/photo", - "id": "streetviewpublish.photo.create", - "description": "After the client finishes uploading the photo with the returned\nUploadRef,\nCreatePhoto\npublishes the uploaded Photo to\nStreet View on Google Maps.\n\nCurrently, the only way to set heading, pitch, and roll in CreatePhoto is\nthrough the [Photo Sphere XMP\nmetadata](https://developers.google.com/streetview/spherical-metadata) in\nthe photo bytes. The `pose.heading`, `pose.pitch`, `pose.roll`,\n`pose.altitude`, and `pose.level` fields in Pose are ignored for\nCreatePhoto.\n\nThis method returns the following error codes:\n\n* google.rpc.Code.INVALID_ARGUMENT if the request is malformed or if\nthe uploaded photo is not a 360 photo.\n* google.rpc.Code.NOT_FOUND if the upload reference does not exist.\n* google.rpc.Code.RESOURCE_EXHAUSTED if the account has reached the\nstorage limit.", - "request": { - "$ref": "Photo" - } - } - } - } - }, - "parameters": { - "$.xgafv": { - "location": "query", - "enum": [ - "1", - "2" - ], - "description": "V1 error format.", - "type": "string", - "enumDescriptions": [ - "v1 error format", - "v2 error format" - ] - }, - "callback": { - "description": "JSONP", - "type": "string", - "location": "query" - }, - "alt": { - "enum": [ - "json", - "media", - "proto" - ], - "type": "string", - "enumDescriptions": [ - "Responses with Content-Type of application/json", - "Media download with context-dependent Content-Type", - "Responses with Content-Type of application/x-protobuf" - ], - "location": "query", - "description": "Data format for response.", - "default": "json" - }, - "access_token": { - "description": "OAuth access token.", - "type": "string", - "location": "query" - }, - "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.", - "type": "string", - "location": "query" - }, - "quotaUser": { - "type": "string", - "location": "query", - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters." - }, - "pp": { - "location": "query", - "description": "Pretty-print response.", - "type": "boolean", - "default": "true" - }, - "oauth_token": { - "location": "query", - "description": "OAuth 2.0 token for the current user.", - "type": "string" - }, - "bearer_token": { - "location": "query", - "description": "OAuth bearer token.", - "type": "string" - }, - "upload_protocol": { - "location": "query", - "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", - "type": "string" - }, - "prettyPrint": { - "description": "Returns response with indentations and line breaks.", - "type": "boolean", - "default": "true", - "location": "query" - }, - "fields": { - "description": "Selector specifying which fields to include in a partial response.", - "type": "string", - "location": "query" - }, - "uploadType": { - "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", - "type": "string", - "location": "query" - } - } -} + "version": "v1", + "version_module": true +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/support/bundler/bundler.go b/vendor/google.golang.org/api/support/bundler/bundler.go index c4e4c9a8c..8d8fb7f04 100644 --- a/vendor/google.golang.org/api/support/bundler/bundler.go +++ b/vendor/google.golang.org/api/support/bundler/bundler.go @@ -23,6 +23,7 @@ package bundler import ( "errors" + "math" "reflect" "sync" "time" @@ -71,6 +72,10 @@ type Bundler struct { // returning ErrOverflow. The default is DefaultBufferedByteLimit. BufferedByteLimit int + // The maximum number of handler invocations that can be running at once. + // The default is 1. + HandlerLimit int + handler func(interface{}) // called to handle a bundle itemSliceZero reflect.Value // nil (zero value) for slice of items flushTimer *time.Timer // implements DelayThreshold @@ -78,8 +83,22 @@ type Bundler struct { mu sync.Mutex sem *semaphore.Weighted // enforces BufferedByteLimit semOnce sync.Once - curBundle bundle // incoming items added to this bundle - handlingc <-chan struct{} // set to non-nil while a handler is running; closed when it returns + curBundle bundle // incoming items added to this bundle + + // Each bundle is assigned a unique ticket that determines the order in which the + // handler is called. The ticket is assigned with mu locked, but waiting for tickets + // to be handled is done via mu2 and cond, below. + nextTicket uint64 // next ticket to be assigned + + mu2 sync.Mutex + cond *sync.Cond + nextHandled uint64 // next ticket to be handled + + // In this implementation, active uses space proportional to HandlerLimit, and + // waitUntilAllHandled takes time proportional to HandlerLimit each time an acquire + // or release occurs, so large values of HandlerLimit max may cause performance + // issues. + active map[uint64]bool // tickets of bundles actively being handled } type bundle struct { @@ -104,21 +123,23 @@ func NewBundler(itemExample interface{}, handler func(interface{})) *Bundler { BundleCountThreshold: DefaultBundleCountThreshold, BundleByteThreshold: DefaultBundleByteThreshold, BufferedByteLimit: DefaultBufferedByteLimit, + HandlerLimit: 1, handler: handler, itemSliceZero: reflect.Zero(reflect.SliceOf(reflect.TypeOf(itemExample))), + active: map[uint64]bool{}, } b.curBundle.items = b.itemSliceZero + b.cond = sync.NewCond(&b.mu2) return b } -func (b *Bundler) sema() *semaphore.Weighted { - // Create the semaphore lazily, because the user may set BufferedByteLimit +func (b *Bundler) initSemaphores() { + // Create the semaphores lazily, because the user may set limits // after NewBundler. b.semOnce.Do(func() { b.sem = semaphore.NewWeighted(int64(b.BufferedByteLimit)) }) - return b.sem } // Add adds item to the current bundle. It marks the bundle for handling and @@ -142,7 +163,8 @@ func (b *Bundler) Add(item interface{}, size int) error { // footprint, we can't accept it. // (TryAcquire also returns false if anything is waiting on the semaphore, // so calls to Add and AddWait shouldn't be mixed.) - if !b.sema().TryAcquire(int64(size)) { + b.initSemaphores() + if !b.sem.TryAcquire(int64(size)) { return ErrOverflow } b.add(item, size) @@ -202,7 +224,8 @@ func (b *Bundler) AddWait(ctx context.Context, item interface{}, size int) error // If adding this item would exceed our allotted memory footprint, block // until space is available. The semaphore is FIFO, so there will be no // starvation. - if err := b.sema().Acquire(ctx, int64(size)); err != nil { + b.initSemaphores() + if err := b.sem.Acquire(ctx, int64(size)); err != nil { return err } // Here, we've reserved space for item. Other goroutines can call AddWait @@ -218,12 +241,13 @@ func (b *Bundler) AddWait(ctx context.Context, item interface{}, size int) error func (b *Bundler) Flush() { b.mu.Lock() b.startFlushLocked() - done := b.handlingc + // Here, all bundles with tickets < b.nextTicket are + // either finished or active. Those are the ones + // we want to wait for. + t := b.nextTicket b.mu.Unlock() - - if done != nil { - <-done - } + b.initSemaphores() + b.waitUntilAllHandled(t) } func (b *Bundler) startFlushLocked() { @@ -231,28 +255,95 @@ func (b *Bundler) startFlushLocked() { b.flushTimer.Stop() b.flushTimer = nil } - if b.curBundle.items.Len() == 0 { return } + // Here, both semaphores must have been initialized. bun := b.curBundle b.curBundle = bundle{items: b.itemSliceZero} - - done := make(chan struct{}) - var running <-chan struct{} - running, b.handlingc = b.handlingc, done - + ticket := b.nextTicket + b.nextTicket++ go func() { defer func() { b.sem.Release(int64(bun.size)) - close(done) + b.release(ticket) }() - - if running != nil { - // Wait for our turn to call the handler. - <-running - } - + b.acquire(ticket) b.handler(bun.items.Interface()) }() } + +// acquire blocks until ticket is the next to be served, then returns. In order for N +// acquire calls to return, the tickets must be in the range [0, N). A ticket must +// not be presented to acquire more than once. +func (b *Bundler) acquire(ticket uint64) { + b.mu2.Lock() + defer b.mu2.Unlock() + if ticket < b.nextHandled { + panic("bundler: acquire: arg too small") + } + for !(ticket == b.nextHandled && len(b.active) < b.HandlerLimit) { + b.cond.Wait() + } + // Here, + // ticket == b.nextHandled: the caller is the next one to be handled; + // and len(b.active) < b.HandlerLimit: there is space available. + b.active[ticket] = true + b.nextHandled++ + // Broadcast, not Signal: although at most one acquire waiter can make progress, + // there might be waiters in waitUntilAllHandled. + b.cond.Broadcast() +} + +// If a ticket is used for a call to acquire, it must later be passed to release. A +// ticket must not be presented to release more than once. +func (b *Bundler) release(ticket uint64) { + b.mu2.Lock() + defer b.mu2.Unlock() + if !b.active[ticket] { + panic("bundler: release: not an active ticket") + } + delete(b.active, ticket) + b.cond.Broadcast() +} + +// waitUntilAllHandled blocks until all tickets < n have called release, meaning +// all bundles with tickets < n have been handled. +func (b *Bundler) waitUntilAllHandled(n uint64) { + // Proof of correctness of this function. + // "N is acquired" means acquire(N) has returned. + // "N is released" means release(N) has returned. + // 1. If N is acquired, N-1 is acquired. + // Follows from the loop test in acquire, and the fact + // that nextHandled is incremented by 1. + // 2. If nextHandled >= N, then N-1 is acquired. + // Because we only increment nextHandled to N after N-1 is acquired. + // 3. If nextHandled >= N, then all n < N is acquired. + // Follows from #1 and #2. + // 4. If N is acquired and N is not in active, then N is released. + // Because we put N in active before acquire returns, and only + // remove it when it is released. + // Let min(active) be the smallest member of active, or infinity if active is empty. + // 5. If nextHandled >= N and N <= min(active), then all n < N is released. + // From nextHandled >= N and #3, all n < N is acquired. + // N <= min(active) implies n < min(active) for all n < N. So all n < N is not in active. + // So from #4, all n < N is released. + // The loop test below is the antecedent of #5. + b.mu2.Lock() + defer b.mu2.Unlock() + for !(b.nextHandled >= n && n <= min(b.active)) { + b.cond.Wait() + } +} + +// min returns the minimum value of the set s, or the largest uint64 if +// s is empty. +func min(s map[uint64]bool) uint64 { + var m uint64 = math.MaxUint64 + for n := range s { + if n < m { + m = n + } + } + return m +} diff --git a/vendor/google.golang.org/api/support/bundler/bundler_test.go b/vendor/google.golang.org/api/support/bundler/bundler_test.go index 45efd5244..bce22236a 100644 --- a/vendor/google.golang.org/api/support/bundler/bundler_test.go +++ b/vendor/google.golang.org/api/support/bundler/bundler_test.go @@ -223,6 +223,88 @@ func TestBundlerErrors(t *testing.T) { } } +// Check that no more than HandlerLimit handlers are active at once. +func TestConcurrentHandlersMax(t *testing.T) { + const handlerLimit = 10 + var ( + mu sync.Mutex + active int + maxHandlers int + ) + b := NewBundler(int(0), func(s interface{}) { + mu.Lock() + active++ + if active > maxHandlers { + maxHandlers = active + } + if maxHandlers > handlerLimit { + t.Errorf("too many handlers running (got %d; want %d)", maxHandlers, handlerLimit) + } + mu.Unlock() + time.Sleep(1 * time.Millisecond) // let the scheduler work + mu.Lock() + active-- + mu.Unlock() + }) + b.BundleCountThreshold = 5 + b.HandlerLimit = 10 + defer b.Flush() + + more := 0 // extra iterations past saturation + for i := 0; more == 0 || i < more; i++ { + mu.Lock() + m := maxHandlers + mu.Unlock() + if m >= handlerLimit && more == 0 { + // Run past saturation to check that we don't exceed the max. + more = 2 * i + } + b.Add(i, 1) + } +} + +// Check that Flush doesn't return until all prior items have been handled. +func TestConcurrentFlush(t *testing.T) { + var ( + mu sync.Mutex + items = make(map[int]bool) + ) + b := NewBundler(int(0), func(s interface{}) { + mu.Lock() + for _, i := range s.([]int) { + items[i] = true + } + mu.Unlock() + time.Sleep(10 * time.Millisecond) + }) + b.BundleCountThreshold = 5 + b.HandlerLimit = 10 + defer b.Flush() + + var wg sync.WaitGroup + defer wg.Wait() + for i := 0; i < 5000; i++ { + b.Add(i, 1) + if i%100 == 0 { + i := i + wg.Add(1) + go func() { + defer wg.Done() + b.Flush() + mu.Lock() + defer mu.Unlock() + for j := 0; j <= i; j++ { + if !items[j] { + // Cannot use Fatal, since we're in a non-test goroutine. + t.Errorf("flush(%d): item %d not handled", i, j) + break + } + } + }() + } + } +} + type testHandler struct { mu sync.Mutex b [][]int diff --git a/vendor/google.golang.org/api/surveys/v2/surveys-api.json b/vendor/google.golang.org/api/surveys/v2/surveys-api.json index e540b831f..e149de8ff 100644 --- a/vendor/google.golang.org/api/surveys/v2/surveys-api.json +++ b/vendor/google.golang.org/api/surveys/v2/surveys-api.json @@ -1,864 +1,864 @@ { - "kind": "discovery#restDescription", - "etag": "\"YWOzh2SDasdU84ArJnpYek-OMdg/v4y1albctEEy0b5g9DBMxLokUPs\"", - "discoveryVersion": "v1", - "id": "surveys:v2", - "name": "surveys", - "canonicalName": "Surveys", - "version": "v2", - "revision": "20170407", - "title": "Surveys API", - "description": "Creates and conducts surveys, lists the surveys that an authenticated user owns, and retrieves survey results and information about specified surveys.", - "ownerDomain": "google.com", - "ownerName": "Google", - "icons": { - "x16": "https://www.gstatic.com/images/branding/product/1x/googleg_16dp.png", - "x32": "https://www.gstatic.com/images/branding/product/1x/googleg_32dp.png" - }, - "protocol": "rest", - "baseUrl": "https://www.googleapis.com/surveys/v2/", - "basePath": "/surveys/v2/", - "rootUrl": "https://www.googleapis.com/", - "servicePath": "surveys/v2/", - "batchPath": "batch/surveys/v2", - "parameters": { - "alt": { - "type": "string", - "description": "Data format for the response.", - "default": "json", - "enum": [ - "json" - ], - "enumDescriptions": [ - "Responses with Content-Type of application/json" - ], - "location": "query" - }, - "fields": { - "type": "string", - "description": "Selector specifying which fields to include in a partial response.", - "location": "query" - }, - "key": { - "type": "string", - "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" - }, - "oauth_token": { - "type": "string", - "description": "OAuth 2.0 token for the current user.", - "location": "query" - }, - "prettyPrint": { - "type": "boolean", - "description": "Returns response with indentations and line breaks.", - "default": "true", - "location": "query" - }, - "quotaUser": { - "type": "string", - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", - "location": "query" - }, - "userIp": { - "type": "string", - "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", - "location": "query" - } - }, - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/surveys": { - "description": "View and manage your surveys and results" - }, - "https://www.googleapis.com/auth/surveys.readonly": { - "description": "View your surveys and survey results" - }, - "https://www.googleapis.com/auth/userinfo.email": { - "description": "View your email address" + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/surveys": { + "description": "View and manage your surveys and results" + }, + "https://www.googleapis.com/auth/surveys.readonly": { + "description": "View your surveys and survey results" + }, + "https://www.googleapis.com/auth/userinfo.email": { + "description": "View your email address" + } + } } - } - } - }, - "schemas": { - "FieldMask": { - "id": "FieldMask", - "type": "object", - "properties": { + }, + "basePath": "/surveys/v2/", + "baseUrl": "https://www.googleapis.com/surveys/v2/", + "batchPath": "batch/surveys/v2", + "canonicalName": "Surveys", + "description": "Creates and conducts surveys, lists the surveys that an authenticated user owns, and retrieves survey results and information about specified surveys.", + "discoveryVersion": "v1", + "etag": "\"-iA1DTNe4s-I6JZXPt1t1Ypy8IU/v4y1albctEEy0b5g9DBMxLokUPs\"", + "icons": { + "x16": "https://www.gstatic.com/images/branding/product/1x/googleg_16dp.png", + "x32": "https://www.gstatic.com/images/branding/product/1x/googleg_32dp.png" + }, + "id": "surveys:v2", + "kind": "discovery#restDescription", + "name": "surveys", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "alt": { + "default": "json", + "description": "Data format for the response.", + "enum": [ + "json" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json" + ], + "location": "query", + "type": "string" + }, "fields": { - "type": "array", - "items": { - "$ref": "FieldMask" - } - }, - "id": { - "type": "integer", - "format": "int32" - } - } - }, - "MobileAppPanel": { - "id": "MobileAppPanel", - "type": "object", - "description": "Representation of an individual pre-defined panel object defining a targeted audience of opinion rewards mobile app users.", - "properties": { - "country": { - "type": "string", - "description": "Country code for the country of the users that the panel contains. Uses standard ISO 3166-1 2-character language codes. For instance, 'US' for the United States, and 'GB' for the United Kingdom. Any survey created targeting this panel must also target the corresponding country." - }, - "isPublicPanel": { - "type": "boolean", - "description": "Whether or not the panel is accessible to all API users." - }, - "language": { - "type": "string", - "description": "Language code that the panel can target. For instance, 'en-US'. Uses standard BCP47 language codes. See specification. Any survey created targeting this panel must also target the corresponding language." - }, - "mobileAppPanelId": { - "type": "string", - "description": "Unique panel ID string. This corresponds to the mobile_app_panel_id used in Survey Insert requests." - }, - "name": { - "type": "string", - "description": "Human readable name of the audience panel." - }, - "owners": { - "type": "array", - "description": "List of email addresses for users who can target members of this panel. Must contain at least the address of the user making the API call for panels that are not public. This field will be empty for public panels.", - "items": { + "description": "Selector specifying which fields to include in a partial response.", + "location": "query", "type": "string" - } - } - } - }, - "MobileAppPanelsListResponse": { - "id": "MobileAppPanelsListResponse", - "type": "object", - "properties": { - "pageInfo": { - "$ref": "PageInfo" }, - "requestId": { - "type": "string", - "description": "Unique request ID used for logging and debugging. Please include in any error reporting or troubleshooting requests." - }, - "resources": { - "type": "array", - "description": "An individual predefined panel of Opinion Rewards mobile users.", - "items": { - "$ref": "MobileAppPanel" - } - }, - "tokenPagination": { - "$ref": "TokenPagination" - } - } - }, - "PageInfo": { - "id": "PageInfo", - "type": "object", - "properties": { - "resultPerPage": { - "type": "integer", - "format": "int32" - }, - "startIndex": { - "type": "integer", - "format": "int32" - }, - "totalResults": { - "type": "integer", - "format": "int32" - } - } - }, - "ResultsGetRequest": { - "id": "ResultsGetRequest", - "type": "object", - "properties": { - "resultMask": { - "$ref": "ResultsMask" - } - } - }, - "ResultsMask": { - "id": "ResultsMask", - "type": "object", - "properties": { - "fields": { - "type": "array", - "items": { - "$ref": "FieldMask" - } - }, - "projection": { - "type": "string" - } - } - }, - "Survey": { - "id": "Survey", - "type": "object", - "description": "Representation of an individual survey object.", - "properties": { - "audience": { - "$ref": "SurveyAudience", - "description": "Targeting-criteria message containing demographic information" - }, - "cost": { - "$ref": "SurveyCost", - "description": "Cost to run the survey and collect the necessary number of responses." - }, - "customerData": { - "type": "string", - "description": "Additional information to store on behalf of the API consumer and associate with this question. This binary blob is treated as opaque. This field is limited to 64K bytes.", - "format": "byte" - }, - "description": { - "type": "string", - "description": "Text description of the survey." - }, - "owners": { - "type": "array", - "description": "List of email addresses for survey owners. Must contain at least the address of the user making the API call.", - "items": { + "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" - }, - "annotations": { - "required": [ - "surveys.surveys.insert" - ] - } }, - "questions": { - "type": "array", - "description": "List of questions defining the survey.", - "items": { - "$ref": "SurveyQuestion" - }, - "annotations": { - "required": [ - "surveys.surveys.insert" - ] - } - }, - "rejectionReason": { - "$ref": "SurveyRejection", - "description": "Reason for the survey being rejected. Only present if the survey state is rejected." - }, - "state": { - "type": "string", - "description": "State that the survey is in." - }, - "surveyUrlId": { - "type": "string", - "description": "Unique survey ID, that is viewable in the URL of the Survey Creator UI" - }, - "title": { - "type": "string", - "description": "Optional name that will be given to the survey." - }, - "wantedResponseCount": { - "type": "integer", - "description": "Number of responses desired for the survey.", - "format": "int32" - } - } - }, - "SurveyAudience": { - "id": "SurveyAudience", - "type": "object", - "description": "Specifications for the target audience of a survey run through the API.", - "properties": { - "ages": { - "type": "array", - "description": "Optional list of age buckets to target. Supported age buckets are: ['18-24', '25-34', '35-44', '45-54', '55-64', '65+']", - "items": { + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", "type": "string" - } }, - "country": { - "type": "string", - "description": "Required country code that surveys should be targeted to. Accepts standard ISO 3166-1 2 character language codes. For instance, 'US' for the United States, and 'GB' for the United Kingdom.", - "annotations": { - "required": [ - "surveys.surveys.insert" - ] - } + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" }, - "countrySubdivision": { - "type": "string", - "description": "Country subdivision (states/provinces/etc) that surveys should be targeted to. For all countries except GB, ISO-3166-2 subdivision code is required (eg. 'US-OH' for Ohio, United States). For GB, NUTS 1 statistical region codes for the United Kingdom is required (eg. 'UK-UKC' for North East England)." - }, - "gender": { - "type": "string", - "description": "Optional gender to target." - }, - "languages": { - "type": "array", - "description": "Language code that surveys should be targeted to. For instance, 'en-US'. Surveys may target bilingual users by specifying a list of language codes (for example, 'de' and 'en-US'). In that case, all languages will be used for targeting users but the survey content (which is displayed) must match the first language listed. Accepts standard BCP47 language codes. See specification.", - "items": { + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", + "location": "query", "type": "string" - }, - "annotations": { - "required": [ - "surveys.surveys.insert" - ] - } }, - "mobileAppPanelId": { - "type": "string", - "description": "Key for predefined panel that causes survey to be sent to a predefined set of Opinion Rewards App users. You must set PopulationSource to ANDROID_APP_PANEL to use this field." - }, - "populationSource": { - "type": "string", - "description": "Online population source where the respondents are sampled from." - } - } - }, - "SurveyCost": { - "id": "SurveyCost", - "type": "object", - "description": "Message defining the cost to run a given survey through API.", - "properties": { - "costPerResponseNanos": { - "type": "string", - "description": "Cost per survey response in nano units of the given currency. To get the total cost for a survey, multiply this value by wanted_response_count.", - "format": "int64" - }, - "currencyCode": { - "type": "string", - "description": "Currency code that the cost is given in." - }, - "maxCostPerResponseNanos": { - "type": "string", - "description": "Threshold to start a survey automatically if the quoted price is at most this value. When a survey has a Screener (threshold) question, it must go through an incidence pricing test to determine the final cost per response. Typically you will have to make a followup call to start the survey giving the final computed cost per response. If the survey has no threshold_answers, setting this property will return an error. By specifying this property, you indicate the max price per response you are willing to pay in advance of the incidence test. If the price turns out to be lower than the specified value, the survey will begin immediately and you will be charged at the rate determined by the incidence pricing test. If the price turns out to be greater than the specified value the survey will not be started and you will instead be notified what price was determined by the incidence test. At that point, you must raise the value of this property to be greater than or equal to that cost before attempting to start the survey again. This will immediately start the survey as long the incidence test was run within the last 21 days.", - "format": "int64" - }, - "nanos": { - "type": "string", - "description": "Cost of survey in nano units of the given currency. DEPRECATED in favor of cost_per_response_nanos", - "format": "int64" - } - } - }, - "SurveyQuestion": { - "id": "SurveyQuestion", - "type": "object", - "description": "Message defining the question specifications.", - "properties": { - "answerOrder": { - "type": "string", - "description": "The randomization option for multiple choice and multi-select questions. If not specified, this option defaults to randomize." - }, - "answers": { - "type": "array", - "description": "Required list of answer options for a question.", - "items": { + "userIp": { + "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", + "location": "query", "type": "string" - } - }, - "hasOther": { - "type": "boolean", - "description": "Option to allow open-ended text box for Single Answer and Multiple Answer question types. This can be used with SINGLE_ANSWER, SINGLE_ANSWER_WITH_IMAGE, MULTIPLE_ANSWERS, and MULTIPLE_ANSWERS_WITH_IMAGE question types." - }, - "highValueLabel": { - "type": "string", - "description": "For rating questions, the text for the higher end of the scale, such as 'Best'. For numeric questions, a string representing a floating-point that is the maximum allowed number for a response." - }, - "images": { - "type": "array", - "items": { - "$ref": "SurveyQuestionImage" - } - }, - "lastAnswerPositionPinned": { - "type": "boolean", - "description": "Currently only support pinning an answer option to the last position." - }, - "lowValueLabel": { - "type": "string", - "description": "For rating questions, the text for the lower end of the scale, such as 'Worst'. For numeric questions, a string representing a floating-point that is the minimum allowed number for a response." - }, - "mustPickSuggestion": { - "type": "boolean", - "description": "Option to force the user to pick one of the open text suggestions. This requires that suggestions are provided for this question." - }, - "numStars": { - "type": "string", - "description": "Number of stars to use for ratings questions." - }, - "openTextPlaceholder": { - "type": "string", - "description": "Placeholder text for an open text question." - }, - "openTextSuggestions": { - "type": "array", - "description": "A list of suggested answers for open text question auto-complete. This is only valid if single_line_response is true.", - "items": { - "type": "string" - } - }, - "question": { - "type": "string", - "description": "Required question text shown to the respondent." - }, - "sentimentText": { - "type": "string", - "description": "Used by the Rating Scale with Text question type. This text goes along with the question field that is presented to the respondent, and is the actual text that the respondent is asked to rate." - }, - "singleLineResponse": { - "type": "boolean", - "description": "Option to allow multiple line open text responses instead of a single line response. Note that we don't show auto-complete suggestions with multiple line responses." - }, - "thresholdAnswers": { - "type": "array", - "description": "The threshold/screener answer options, which will screen a user into the rest of the survey. These will be a subset of the answer option strings.", - "items": { - "type": "string" - } - }, - "type": { - "type": "string", - "description": "Required field defining the question type. For details about configuring different type of questions, consult the question configuration guide.", - "annotations": { - "required": [ - "surveys.surveys.insert" - ] - } - }, - "unitOfMeasurementLabel": { - "type": "string", - "description": "Optional unit of measurement for display (for example: hours, people, miles)." - }, - "videoId": { - "type": "string", - "description": "The YouTube video ID to be show in video questions." } - } }, - "SurveyQuestionImage": { - "id": "SurveyQuestionImage", - "type": "object", - "description": "Container object for image data and alt_text.", - "properties": { - "altText": { - "type": "string", - "description": "The alt text property used in image tags is required for all images." - }, - "data": { - "type": "string", - "description": "Inline jpeg, gif, tiff, bmp, or png image raw bytes for an image question types.", - "format": "byte" - }, - "url": { - "type": "string", - "description": "The read-only URL for the hosted images." - } - } - }, - "SurveyRejection": { - "id": "SurveyRejection", - "type": "object", - "description": "Message representing why the survey was rejected from review, if it was.", - "properties": { - "explanation": { - "type": "string", - "description": "A human-readable explanation of what was wrong with the survey." - }, - "type": { - "type": "string", - "description": "Which category of rejection this was. See the Google Surveys Help Center for additional details on each category." - } - } - }, - "SurveyResults": { - "id": "SurveyResults", - "type": "object", - "description": "Reference to the current results for a given survey.", - "properties": { - "status": { - "type": "string", - "description": "Human readable string describing the status of the request." - }, - "surveyUrlId": { - "type": "string", - "description": "External survey ID as viewable by survey owners in the editor view." - } - } - }, - "SurveysDeleteResponse": { - "id": "SurveysDeleteResponse", - "type": "object", - "properties": { - "requestId": { - "type": "string", - "description": "Unique request ID used for logging and debugging. Please include in any error reporting or troubleshooting requests." - } - } - }, - "SurveysListResponse": { - "id": "SurveysListResponse", - "type": "object", - "properties": { - "pageInfo": { - "$ref": "PageInfo" - }, - "requestId": { - "type": "string", - "description": "Unique request ID used for logging and debugging. Please include in any error reporting or troubleshooting requests." - }, - "resources": { - "type": "array", - "description": "An individual survey resource.", - "items": { - "$ref": "Survey" - } - }, - "tokenPagination": { - "$ref": "TokenPagination" - } - } - }, - "SurveysStartRequest": { - "id": "SurveysStartRequest", - "type": "object", - "properties": { - "maxCostPerResponseNanos": { - "type": "string", - "description": "Threshold to start a survey automically if the quoted prices is less than or equal to this value. See Survey.Cost for more details.", - "format": "int64" - } - } - }, - "SurveysStartResponse": { - "id": "SurveysStartResponse", - "type": "object", - "properties": { - "requestId": { - "type": "string", - "description": "Unique request ID used for logging and debugging. Please include in any error reporting or troubleshooting requests." - } - } - }, - "SurveysStopResponse": { - "id": "SurveysStopResponse", - "type": "object", - "properties": { - "requestId": { - "type": "string", - "description": "Unique request ID used for logging and debugging. Please include in any error reporting or troubleshooting requests." - } - } - }, - "TokenPagination": { - "id": "TokenPagination", - "type": "object", - "properties": { - "nextPageToken": { - "type": "string" - }, - "previousPageToken": { - "type": "string" - } - } - } - }, - "resources": { - "mobileapppanels": { - "methods": { - "get": { - "id": "surveys.mobileapppanels.get", - "path": "mobileAppPanels/{panelId}", - "httpMethod": "GET", - "description": "Retrieves a MobileAppPanel that is available to the authenticated user.", - "parameters": { - "panelId": { - "type": "string", - "description": "External URL ID for the panel.", - "required": true, - "location": "path" + "protocol": "rest", + "resources": { + "mobileapppanels": { + "methods": { + "get": { + "description": "Retrieves a MobileAppPanel that is available to the authenticated user.", + "httpMethod": "GET", + "id": "surveys.mobileapppanels.get", + "parameterOrder": [ + "panelId" + ], + "parameters": { + "panelId": { + "description": "External URL ID for the panel.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "mobileAppPanels/{panelId}", + "response": { + "$ref": "MobileAppPanel" + }, + "scopes": [ + "https://www.googleapis.com/auth/surveys", + "https://www.googleapis.com/auth/surveys.readonly", + "https://www.googleapis.com/auth/userinfo.email" + ] + }, + "list": { + "description": "Lists the MobileAppPanels available to the authenticated user.", + "httpMethod": "GET", + "id": "surveys.mobileapppanels.list", + "parameters": { + "maxResults": { + "format": "uint32", + "location": "query", + "type": "integer" + }, + "startIndex": { + "format": "uint32", + "location": "query", + "type": "integer" + }, + "token": { + "location": "query", + "type": "string" + } + }, + "path": "mobileAppPanels", + "response": { + "$ref": "MobileAppPanelsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/surveys", + "https://www.googleapis.com/auth/surveys.readonly", + "https://www.googleapis.com/auth/userinfo.email" + ] + }, + "update": { + "description": "Updates a MobileAppPanel. Currently the only property that can be updated is the owners property.", + "httpMethod": "PUT", + "id": "surveys.mobileapppanels.update", + "parameterOrder": [ + "panelId" + ], + "parameters": { + "panelId": { + "description": "External URL ID for the panel.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "mobileAppPanels/{panelId}", + "request": { + "$ref": "MobileAppPanel" + }, + "response": { + "$ref": "MobileAppPanel" + }, + "scopes": [ + "https://www.googleapis.com/auth/surveys", + "https://www.googleapis.com/auth/userinfo.email" + ] + } } - }, - "parameterOrder": [ - "panelId" - ], - "response": { - "$ref": "MobileAppPanel" - }, - "scopes": [ - "https://www.googleapis.com/auth/surveys", - "https://www.googleapis.com/auth/surveys.readonly", - "https://www.googleapis.com/auth/userinfo.email" - ] }, - "list": { - "id": "surveys.mobileapppanels.list", - "path": "mobileAppPanels", - "httpMethod": "GET", - "description": "Lists the MobileAppPanels available to the authenticated user.", - "parameters": { - "maxResults": { - "type": "integer", - "format": "uint32", - "location": "query" + "results": { + "methods": { + "get": { + "description": "Retrieves any survey results that have been produced so far. Results are formatted as an Excel file. You must add \"?alt=media\" to the URL as an argument to get results.", + "httpMethod": "GET", + "id": "surveys.results.get", + "parameterOrder": [ + "surveyUrlId" + ], + "parameters": { + "surveyUrlId": { + "description": "External URL ID for the survey.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "surveys/{surveyUrlId}/results", + "request": { + "$ref": "ResultsGetRequest" + }, + "response": { + "$ref": "SurveyResults" + }, + "scopes": [ + "https://www.googleapis.com/auth/surveys", + "https://www.googleapis.com/auth/surveys.readonly", + "https://www.googleapis.com/auth/userinfo.email" + ], + "supportsMediaDownload": true + } + } + }, + "surveys": { + "methods": { + "delete": { + "description": "Removes a survey from view in all user GET requests.", + "httpMethod": "DELETE", + "id": "surveys.surveys.delete", + "parameterOrder": [ + "surveyUrlId" + ], + "parameters": { + "surveyUrlId": { + "description": "External URL ID for the survey.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "surveys/{surveyUrlId}", + "response": { + "$ref": "SurveysDeleteResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/surveys", + "https://www.googleapis.com/auth/userinfo.email" + ] + }, + "get": { + "description": "Retrieves information about the specified survey.", + "httpMethod": "GET", + "id": "surveys.surveys.get", + "parameterOrder": [ + "surveyUrlId" + ], + "parameters": { + "surveyUrlId": { + "description": "External URL ID for the survey.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "surveys/{surveyUrlId}", + "response": { + "$ref": "Survey" + }, + "scopes": [ + "https://www.googleapis.com/auth/surveys", + "https://www.googleapis.com/auth/surveys.readonly", + "https://www.googleapis.com/auth/userinfo.email" + ] + }, + "insert": { + "description": "Creates a survey.", + "httpMethod": "POST", + "id": "surveys.surveys.insert", + "path": "surveys", + "request": { + "$ref": "Survey" + }, + "response": { + "$ref": "Survey" + }, + "scopes": [ + "https://www.googleapis.com/auth/surveys", + "https://www.googleapis.com/auth/userinfo.email" + ] + }, + "list": { + "description": "Lists the surveys owned by the authenticated user.", + "httpMethod": "GET", + "id": "surveys.surveys.list", + "parameters": { + "maxResults": { + "format": "uint32", + "location": "query", + "type": "integer" + }, + "startIndex": { + "format": "uint32", + "location": "query", + "type": "integer" + }, + "token": { + "location": "query", + "type": "string" + } + }, + "path": "surveys", + "response": { + "$ref": "SurveysListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/surveys", + "https://www.googleapis.com/auth/surveys.readonly", + "https://www.googleapis.com/auth/userinfo.email" + ] + }, + "start": { + "description": "Begins running a survey.", + "httpMethod": "POST", + "id": "surveys.surveys.start", + "parameterOrder": [ + "resourceId" + ], + "parameters": { + "resourceId": { + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "surveys/{resourceId}/start", + "request": { + "$ref": "SurveysStartRequest" + }, + "response": { + "$ref": "SurveysStartResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/surveys", + "https://www.googleapis.com/auth/userinfo.email" + ] + }, + "stop": { + "description": "Stops a running survey.", + "httpMethod": "POST", + "id": "surveys.surveys.stop", + "parameterOrder": [ + "resourceId" + ], + "parameters": { + "resourceId": { + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "surveys/{resourceId}/stop", + "response": { + "$ref": "SurveysStopResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/surveys", + "https://www.googleapis.com/auth/userinfo.email" + ] + }, + "update": { + "description": "Updates a survey. Currently the only property that can be updated is the owners property.", + "httpMethod": "PUT", + "id": "surveys.surveys.update", + "parameterOrder": [ + "surveyUrlId" + ], + "parameters": { + "surveyUrlId": { + "description": "External URL ID for the survey.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "surveys/{surveyUrlId}", + "request": { + "$ref": "Survey" + }, + "response": { + "$ref": "Survey" + }, + "scopes": [ + "https://www.googleapis.com/auth/surveys", + "https://www.googleapis.com/auth/userinfo.email" + ] + } + } + } + }, + "revision": "20170407", + "rootUrl": "https://www.googleapis.com/", + "schemas": { + "FieldMask": { + "id": "FieldMask", + "properties": { + "fields": { + "items": { + "$ref": "FieldMask" + }, + "type": "array" + }, + "id": { + "format": "int32", + "type": "integer" + } }, - "startIndex": { - "type": "integer", - "format": "uint32", - "location": "query" - }, - "token": { - "type": "string", - "location": "query" - } - }, - "response": { - "$ref": "MobileAppPanelsListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/surveys", - "https://www.googleapis.com/auth/surveys.readonly", - "https://www.googleapis.com/auth/userinfo.email" - ] + "type": "object" }, - "update": { - "id": "surveys.mobileapppanels.update", - "path": "mobileAppPanels/{panelId}", - "httpMethod": "PUT", - "description": "Updates a MobileAppPanel. Currently the only property that can be updated is the owners property.", - "parameters": { - "panelId": { - "type": "string", - "description": "External URL ID for the panel.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "panelId" - ], - "request": { - "$ref": "MobileAppPanel" - }, - "response": { - "$ref": "MobileAppPanel" - }, - "scopes": [ - "https://www.googleapis.com/auth/surveys", - "https://www.googleapis.com/auth/userinfo.email" - ] + "MobileAppPanel": { + "description": "Representation of an individual pre-defined panel object defining a targeted audience of opinion rewards mobile app users.", + "id": "MobileAppPanel", + "properties": { + "country": { + "description": "Country code for the country of the users that the panel contains. Uses standard ISO 3166-1 2-character language codes. For instance, 'US' for the United States, and 'GB' for the United Kingdom. Any survey created targeting this panel must also target the corresponding country.", + "type": "string" + }, + "isPublicPanel": { + "description": "Whether or not the panel is accessible to all API users.", + "type": "boolean" + }, + "language": { + "description": "Language code that the panel can target. For instance, 'en-US'. Uses standard BCP47 language codes. See specification. Any survey created targeting this panel must also target the corresponding language.", + "type": "string" + }, + "mobileAppPanelId": { + "description": "Unique panel ID string. This corresponds to the mobile_app_panel_id used in Survey Insert requests.", + "type": "string" + }, + "name": { + "description": "Human readable name of the audience panel.", + "type": "string" + }, + "owners": { + "description": "List of email addresses for users who can target members of this panel. Must contain at least the address of the user making the API call for panels that are not public. This field will be empty for public panels.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "MobileAppPanelsListResponse": { + "id": "MobileAppPanelsListResponse", + "properties": { + "pageInfo": { + "$ref": "PageInfo" + }, + "requestId": { + "description": "Unique request ID used for logging and debugging. Please include in any error reporting or troubleshooting requests.", + "type": "string" + }, + "resources": { + "description": "An individual predefined panel of Opinion Rewards mobile users.", + "items": { + "$ref": "MobileAppPanel" + }, + "type": "array" + }, + "tokenPagination": { + "$ref": "TokenPagination" + } + }, + "type": "object" + }, + "PageInfo": { + "id": "PageInfo", + "properties": { + "resultPerPage": { + "format": "int32", + "type": "integer" + }, + "startIndex": { + "format": "int32", + "type": "integer" + }, + "totalResults": { + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "ResultsGetRequest": { + "id": "ResultsGetRequest", + "properties": { + "resultMask": { + "$ref": "ResultsMask" + } + }, + "type": "object" + }, + "ResultsMask": { + "id": "ResultsMask", + "properties": { + "fields": { + "items": { + "$ref": "FieldMask" + }, + "type": "array" + }, + "projection": { + "type": "string" + } + }, + "type": "object" + }, + "Survey": { + "description": "Representation of an individual survey object.", + "id": "Survey", + "properties": { + "audience": { + "$ref": "SurveyAudience", + "description": "Targeting-criteria message containing demographic information" + }, + "cost": { + "$ref": "SurveyCost", + "description": "Cost to run the survey and collect the necessary number of responses." + }, + "customerData": { + "description": "Additional information to store on behalf of the API consumer and associate with this question. This binary blob is treated as opaque. This field is limited to 64K bytes.", + "format": "byte", + "type": "string" + }, + "description": { + "description": "Text description of the survey.", + "type": "string" + }, + "owners": { + "annotations": { + "required": [ + "surveys.surveys.insert" + ] + }, + "description": "List of email addresses for survey owners. Must contain at least the address of the user making the API call.", + "items": { + "type": "string" + }, + "type": "array" + }, + "questions": { + "annotations": { + "required": [ + "surveys.surveys.insert" + ] + }, + "description": "List of questions defining the survey.", + "items": { + "$ref": "SurveyQuestion" + }, + "type": "array" + }, + "rejectionReason": { + "$ref": "SurveyRejection", + "description": "Reason for the survey being rejected. Only present if the survey state is rejected." + }, + "state": { + "description": "State that the survey is in.", + "type": "string" + }, + "surveyUrlId": { + "description": "Unique survey ID, that is viewable in the URL of the Survey Creator UI", + "type": "string" + }, + "title": { + "description": "Optional name that will be given to the survey.", + "type": "string" + }, + "wantedResponseCount": { + "description": "Number of responses desired for the survey.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "SurveyAudience": { + "description": "Specifications for the target audience of a survey run through the API.", + "id": "SurveyAudience", + "properties": { + "ages": { + "description": "Optional list of age buckets to target. Supported age buckets are: ['18-24', '25-34', '35-44', '45-54', '55-64', '65+']", + "items": { + "type": "string" + }, + "type": "array" + }, + "country": { + "annotations": { + "required": [ + "surveys.surveys.insert" + ] + }, + "description": "Required country code that surveys should be targeted to. Accepts standard ISO 3166-1 2 character language codes. For instance, 'US' for the United States, and 'GB' for the United Kingdom.", + "type": "string" + }, + "countrySubdivision": { + "description": "Country subdivision (states/provinces/etc) that surveys should be targeted to. For all countries except GB, ISO-3166-2 subdivision code is required (eg. 'US-OH' for Ohio, United States). For GB, NUTS 1 statistical region codes for the United Kingdom is required (eg. 'UK-UKC' for North East England).", + "type": "string" + }, + "gender": { + "description": "Optional gender to target.", + "type": "string" + }, + "languages": { + "annotations": { + "required": [ + "surveys.surveys.insert" + ] + }, + "description": "Language code that surveys should be targeted to. For instance, 'en-US'. Surveys may target bilingual users by specifying a list of language codes (for example, 'de' and 'en-US'). In that case, all languages will be used for targeting users but the survey content (which is displayed) must match the first language listed. Accepts standard BCP47 language codes. See specification.", + "items": { + "type": "string" + }, + "type": "array" + }, + "mobileAppPanelId": { + "description": "Key for predefined panel that causes survey to be sent to a predefined set of Opinion Rewards App users. You must set PopulationSource to ANDROID_APP_PANEL to use this field.", + "type": "string" + }, + "populationSource": { + "description": "Online population source where the respondents are sampled from.", + "type": "string" + } + }, + "type": "object" + }, + "SurveyCost": { + "description": "Message defining the cost to run a given survey through API.", + "id": "SurveyCost", + "properties": { + "costPerResponseNanos": { + "description": "Cost per survey response in nano units of the given currency. To get the total cost for a survey, multiply this value by wanted_response_count.", + "format": "int64", + "type": "string" + }, + "currencyCode": { + "description": "Currency code that the cost is given in.", + "type": "string" + }, + "maxCostPerResponseNanos": { + "description": "Threshold to start a survey automatically if the quoted price is at most this value. When a survey has a Screener (threshold) question, it must go through an incidence pricing test to determine the final cost per response. Typically you will have to make a followup call to start the survey giving the final computed cost per response. If the survey has no threshold_answers, setting this property will return an error. By specifying this property, you indicate the max price per response you are willing to pay in advance of the incidence test. If the price turns out to be lower than the specified value, the survey will begin immediately and you will be charged at the rate determined by the incidence pricing test. If the price turns out to be greater than the specified value the survey will not be started and you will instead be notified what price was determined by the incidence test. At that point, you must raise the value of this property to be greater than or equal to that cost before attempting to start the survey again. This will immediately start the survey as long the incidence test was run within the last 21 days.", + "format": "int64", + "type": "string" + }, + "nanos": { + "description": "Cost of survey in nano units of the given currency. DEPRECATED in favor of cost_per_response_nanos", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "SurveyQuestion": { + "description": "Message defining the question specifications.", + "id": "SurveyQuestion", + "properties": { + "answerOrder": { + "description": "The randomization option for multiple choice and multi-select questions. If not specified, this option defaults to randomize.", + "type": "string" + }, + "answers": { + "description": "Required list of answer options for a question.", + "items": { + "type": "string" + }, + "type": "array" + }, + "hasOther": { + "description": "Option to allow open-ended text box for Single Answer and Multiple Answer question types. This can be used with SINGLE_ANSWER, SINGLE_ANSWER_WITH_IMAGE, MULTIPLE_ANSWERS, and MULTIPLE_ANSWERS_WITH_IMAGE question types.", + "type": "boolean" + }, + "highValueLabel": { + "description": "For rating questions, the text for the higher end of the scale, such as 'Best'. For numeric questions, a string representing a floating-point that is the maximum allowed number for a response.", + "type": "string" + }, + "images": { + "items": { + "$ref": "SurveyQuestionImage" + }, + "type": "array" + }, + "lastAnswerPositionPinned": { + "description": "Currently only support pinning an answer option to the last position.", + "type": "boolean" + }, + "lowValueLabel": { + "description": "For rating questions, the text for the lower end of the scale, such as 'Worst'. For numeric questions, a string representing a floating-point that is the minimum allowed number for a response.", + "type": "string" + }, + "mustPickSuggestion": { + "description": "Option to force the user to pick one of the open text suggestions. This requires that suggestions are provided for this question.", + "type": "boolean" + }, + "numStars": { + "description": "Number of stars to use for ratings questions.", + "type": "string" + }, + "openTextPlaceholder": { + "description": "Placeholder text for an open text question.", + "type": "string" + }, + "openTextSuggestions": { + "description": "A list of suggested answers for open text question auto-complete. This is only valid if single_line_response is true.", + "items": { + "type": "string" + }, + "type": "array" + }, + "question": { + "description": "Required question text shown to the respondent.", + "type": "string" + }, + "sentimentText": { + "description": "Used by the Rating Scale with Text question type. This text goes along with the question field that is presented to the respondent, and is the actual text that the respondent is asked to rate.", + "type": "string" + }, + "singleLineResponse": { + "description": "Option to allow multiple line open text responses instead of a single line response. Note that we don't show auto-complete suggestions with multiple line responses.", + "type": "boolean" + }, + "thresholdAnswers": { + "description": "The threshold/screener answer options, which will screen a user into the rest of the survey. These will be a subset of the answer option strings.", + "items": { + "type": "string" + }, + "type": "array" + }, + "type": { + "annotations": { + "required": [ + "surveys.surveys.insert" + ] + }, + "description": "Required field defining the question type. For details about configuring different type of questions, consult the question configuration guide.", + "type": "string" + }, + "unitOfMeasurementLabel": { + "description": "Optional unit of measurement for display (for example: hours, people, miles).", + "type": "string" + }, + "videoId": { + "description": "The YouTube video ID to be show in video questions.", + "type": "string" + } + }, + "type": "object" + }, + "SurveyQuestionImage": { + "description": "Container object for image data and alt_text.", + "id": "SurveyQuestionImage", + "properties": { + "altText": { + "description": "The alt text property used in image tags is required for all images.", + "type": "string" + }, + "data": { + "description": "Inline jpeg, gif, tiff, bmp, or png image raw bytes for an image question types.", + "format": "byte", + "type": "string" + }, + "url": { + "description": "The read-only URL for the hosted images.", + "type": "string" + } + }, + "type": "object" + }, + "SurveyRejection": { + "description": "Message representing why the survey was rejected from review, if it was.", + "id": "SurveyRejection", + "properties": { + "explanation": { + "description": "A human-readable explanation of what was wrong with the survey.", + "type": "string" + }, + "type": { + "description": "Which category of rejection this was. See the Google Surveys Help Center for additional details on each category.", + "type": "string" + } + }, + "type": "object" + }, + "SurveyResults": { + "description": "Reference to the current results for a given survey.", + "id": "SurveyResults", + "properties": { + "status": { + "description": "Human readable string describing the status of the request.", + "type": "string" + }, + "surveyUrlId": { + "description": "External survey ID as viewable by survey owners in the editor view.", + "type": "string" + } + }, + "type": "object" + }, + "SurveysDeleteResponse": { + "id": "SurveysDeleteResponse", + "properties": { + "requestId": { + "description": "Unique request ID used for logging and debugging. Please include in any error reporting or troubleshooting requests.", + "type": "string" + } + }, + "type": "object" + }, + "SurveysListResponse": { + "id": "SurveysListResponse", + "properties": { + "pageInfo": { + "$ref": "PageInfo" + }, + "requestId": { + "description": "Unique request ID used for logging and debugging. Please include in any error reporting or troubleshooting requests.", + "type": "string" + }, + "resources": { + "description": "An individual survey resource.", + "items": { + "$ref": "Survey" + }, + "type": "array" + }, + "tokenPagination": { + "$ref": "TokenPagination" + } + }, + "type": "object" + }, + "SurveysStartRequest": { + "id": "SurveysStartRequest", + "properties": { + "maxCostPerResponseNanos": { + "description": "Threshold to start a survey automically if the quoted prices is less than or equal to this value. See Survey.Cost for more details.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "SurveysStartResponse": { + "id": "SurveysStartResponse", + "properties": { + "requestId": { + "description": "Unique request ID used for logging and debugging. Please include in any error reporting or troubleshooting requests.", + "type": "string" + } + }, + "type": "object" + }, + "SurveysStopResponse": { + "id": "SurveysStopResponse", + "properties": { + "requestId": { + "description": "Unique request ID used for logging and debugging. Please include in any error reporting or troubleshooting requests.", + "type": "string" + } + }, + "type": "object" + }, + "TokenPagination": { + "id": "TokenPagination", + "properties": { + "nextPageToken": { + "type": "string" + }, + "previousPageToken": { + "type": "string" + } + }, + "type": "object" } - } }, - "results": { - "methods": { - "get": { - "id": "surveys.results.get", - "path": "surveys/{surveyUrlId}/results", - "httpMethod": "GET", - "description": "Retrieves any survey results that have been produced so far. Results are formatted as an Excel file. You must add \"?alt=media\" to the URL as an argument to get results.", - "parameters": { - "surveyUrlId": { - "type": "string", - "description": "External URL ID for the survey.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "surveyUrlId" - ], - "request": { - "$ref": "ResultsGetRequest" - }, - "response": { - "$ref": "SurveyResults" - }, - "scopes": [ - "https://www.googleapis.com/auth/surveys", - "https://www.googleapis.com/auth/surveys.readonly", - "https://www.googleapis.com/auth/userinfo.email" - ], - "supportsMediaDownload": true - } - } - }, - "surveys": { - "methods": { - "delete": { - "id": "surveys.surveys.delete", - "path": "surveys/{surveyUrlId}", - "httpMethod": "DELETE", - "description": "Removes a survey from view in all user GET requests.", - "parameters": { - "surveyUrlId": { - "type": "string", - "description": "External URL ID for the survey.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "surveyUrlId" - ], - "response": { - "$ref": "SurveysDeleteResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/surveys", - "https://www.googleapis.com/auth/userinfo.email" - ] - }, - "get": { - "id": "surveys.surveys.get", - "path": "surveys/{surveyUrlId}", - "httpMethod": "GET", - "description": "Retrieves information about the specified survey.", - "parameters": { - "surveyUrlId": { - "type": "string", - "description": "External URL ID for the survey.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "surveyUrlId" - ], - "response": { - "$ref": "Survey" - }, - "scopes": [ - "https://www.googleapis.com/auth/surveys", - "https://www.googleapis.com/auth/surveys.readonly", - "https://www.googleapis.com/auth/userinfo.email" - ] - }, - "insert": { - "id": "surveys.surveys.insert", - "path": "surveys", - "httpMethod": "POST", - "description": "Creates a survey.", - "request": { - "$ref": "Survey" - }, - "response": { - "$ref": "Survey" - }, - "scopes": [ - "https://www.googleapis.com/auth/surveys", - "https://www.googleapis.com/auth/userinfo.email" - ] - }, - "list": { - "id": "surveys.surveys.list", - "path": "surveys", - "httpMethod": "GET", - "description": "Lists the surveys owned by the authenticated user.", - "parameters": { - "maxResults": { - "type": "integer", - "format": "uint32", - "location": "query" - }, - "startIndex": { - "type": "integer", - "format": "uint32", - "location": "query" - }, - "token": { - "type": "string", - "location": "query" - } - }, - "response": { - "$ref": "SurveysListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/surveys", - "https://www.googleapis.com/auth/surveys.readonly", - "https://www.googleapis.com/auth/userinfo.email" - ] - }, - "start": { - "id": "surveys.surveys.start", - "path": "surveys/{resourceId}/start", - "httpMethod": "POST", - "description": "Begins running a survey.", - "parameters": { - "resourceId": { - "type": "string", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "resourceId" - ], - "request": { - "$ref": "SurveysStartRequest" - }, - "response": { - "$ref": "SurveysStartResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/surveys", - "https://www.googleapis.com/auth/userinfo.email" - ] - }, - "stop": { - "id": "surveys.surveys.stop", - "path": "surveys/{resourceId}/stop", - "httpMethod": "POST", - "description": "Stops a running survey.", - "parameters": { - "resourceId": { - "type": "string", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "resourceId" - ], - "response": { - "$ref": "SurveysStopResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/surveys", - "https://www.googleapis.com/auth/userinfo.email" - ] - }, - "update": { - "id": "surveys.surveys.update", - "path": "surveys/{surveyUrlId}", - "httpMethod": "PUT", - "description": "Updates a survey. Currently the only property that can be updated is the owners property.", - "parameters": { - "surveyUrlId": { - "type": "string", - "description": "External URL ID for the survey.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "surveyUrlId" - ], - "request": { - "$ref": "Survey" - }, - "response": { - "$ref": "Survey" - }, - "scopes": [ - "https://www.googleapis.com/auth/surveys", - "https://www.googleapis.com/auth/userinfo.email" - ] - } - } - } - } -} + "servicePath": "surveys/v2/", + "title": "Surveys API", + "version": "v2" +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/tagmanager/v1/tagmanager-api.json b/vendor/google.golang.org/api/tagmanager/v1/tagmanager-api.json index 9d060e375..a4f576148 100644 --- a/vendor/google.golang.org/api/tagmanager/v1/tagmanager-api.json +++ b/vendor/google.golang.org/api/tagmanager/v1/tagmanager-api.json @@ -1,3433 +1,3433 @@ { - "kind": "discovery#restDescription", - "etag": "\"YWOzh2SDasdU84ArJnpYek-OMdg/V5whA3DADpXWbKdtajaJL7JmgE0\"", - "discoveryVersion": "v1", - "id": "tagmanager:v1", - "name": "tagmanager", - "canonicalName": "Tag Manager", - "version": "v1", - "revision": "20171108", - "title": "Tag Manager API", - "description": "Accesses Tag Manager accounts and containers.", - "ownerDomain": "google.com", - "ownerName": "Google", - "icons": { - "x16": "https://www.gstatic.com/images/branding/product/1x/googleg_16dp.png", - "x32": "https://www.gstatic.com/images/branding/product/1x/googleg_32dp.png" - }, - "documentationLink": "https://developers.google.com/tag-manager/api/v1/", - "protocol": "rest", - "baseUrl": "https://www.googleapis.com/tagmanager/v1/", - "basePath": "/tagmanager/v1/", - "rootUrl": "https://www.googleapis.com/", - "servicePath": "tagmanager/v1/", - "batchPath": "batch/tagmanager/v1", - "parameters": { - "alt": { - "type": "string", - "description": "Data format for the response.", - "default": "json", - "enum": [ - "json" - ], - "enumDescriptions": [ - "Responses with Content-Type of application/json" - ], - "location": "query" - }, - "fields": { - "type": "string", - "description": "Selector specifying which fields to include in a partial response.", - "location": "query" - }, - "key": { - "type": "string", - "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" - }, - "oauth_token": { - "type": "string", - "description": "OAuth 2.0 token for the current user.", - "location": "query" - }, - "prettyPrint": { - "type": "boolean", - "description": "Returns response with indentations and line breaks.", - "default": "true", - "location": "query" - }, - "quotaUser": { - "type": "string", - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", - "location": "query" - }, - "userIp": { - "type": "string", - "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", - "location": "query" - } - }, - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/tagmanager.delete.containers": { - "description": "Delete your Google Tag Manager containers" - }, - "https://www.googleapis.com/auth/tagmanager.edit.containers": { - "description": "Manage your Google Tag Manager container and its subcomponents, excluding versioning and publishing" - }, - "https://www.googleapis.com/auth/tagmanager.edit.containerversions": { - "description": "Manage your Google Tag Manager container versions" - }, - "https://www.googleapis.com/auth/tagmanager.manage.accounts": { - "description": "View and manage your Google Tag Manager accounts" - }, - "https://www.googleapis.com/auth/tagmanager.manage.users": { - "description": "Manage user permissions of your Google Tag Manager account and container" - }, - "https://www.googleapis.com/auth/tagmanager.publish": { - "description": "Publish your Google Tag Manager container versions" - }, - "https://www.googleapis.com/auth/tagmanager.readonly": { - "description": "View your Google Tag Manager container and its subcomponents" + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/tagmanager.delete.containers": { + "description": "Delete your Google Tag Manager containers" + }, + "https://www.googleapis.com/auth/tagmanager.edit.containers": { + "description": "Manage your Google Tag Manager container and its subcomponents, excluding versioning and publishing" + }, + "https://www.googleapis.com/auth/tagmanager.edit.containerversions": { + "description": "Manage your Google Tag Manager container versions" + }, + "https://www.googleapis.com/auth/tagmanager.manage.accounts": { + "description": "View and manage your Google Tag Manager accounts" + }, + "https://www.googleapis.com/auth/tagmanager.manage.users": { + "description": "Manage user permissions of your Google Tag Manager account and container" + }, + "https://www.googleapis.com/auth/tagmanager.publish": { + "description": "Publish your Google Tag Manager container versions" + }, + "https://www.googleapis.com/auth/tagmanager.readonly": { + "description": "View your Google Tag Manager container and its subcomponents" + } + } } - } - } - }, - "schemas": { - "Account": { - "id": "Account", - "type": "object", - "description": "Represents a Google Tag Manager Account.", - "properties": { - "accountId": { - "type": "string", - "description": "The Account ID uniquely identifies the GTM Account." - }, - "fingerprint": { - "type": "string", - "description": "The fingerprint of the GTM Account as computed at storage time. This value is recomputed whenever the account is modified." - }, - "name": { - "type": "string", - "description": "Account display name." - }, - "shareData": { - "type": "boolean", - "description": "Whether the account shares data anonymously with Google and others." - } - } }, - "AccountAccess": { - "id": "AccountAccess", - "type": "object", - "description": "Defines the Google Tag Manager Account access permissions.", - "properties": { - "permission": { - "type": "array", - "description": "List of Account permissions. Valid account permissions are read and manage.", - "items": { - "type": "string", + "basePath": "/tagmanager/v1/", + "baseUrl": "https://www.googleapis.com/tagmanager/v1/", + "batchPath": "batch/tagmanager/v1", + "canonicalName": "Tag Manager", + "description": "Accesses Tag Manager accounts and containers.", + "discoveryVersion": "v1", + "documentationLink": "https://developers.google.com/tag-manager/api/v1/", + "etag": "\"-iA1DTNe4s-I6JZXPt1t1Ypy8IU/V5whA3DADpXWbKdtajaJL7JmgE0\"", + "icons": { + "x16": "https://www.gstatic.com/images/branding/product/1x/googleg_16dp.png", + "x32": "https://www.gstatic.com/images/branding/product/1x/googleg_32dp.png" + }, + "id": "tagmanager:v1", + "kind": "discovery#restDescription", + "name": "tagmanager", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "alt": { + "default": "json", + "description": "Data format for the response.", "enum": [ - "delete", - "edit", - "editWorkspace", - "manage", - "publish", - "read" + "json" ], "enumDescriptions": [ - "", - "", - "", - "", - "", - "" - ] - }, - "annotations": { - "required": [ - "tagmanager.accounts.permissions.create" - ] - } - } - } - }, - "Condition": { - "id": "Condition", - "type": "object", - "description": "Represents a predicate.", - "properties": { - "parameter": { - "type": "array", - "description": "A list of named parameters (key/value), depending on the condition's type. Notes: \n- For binary operators, include parameters named arg0 and arg1 for specifying the left and right operands, respectively. \n- At this time, the left operand (arg0) must be a reference to a variable. \n- For case-insensitive Regex matching, include a boolean parameter named ignore_case that is set to true. If not specified or set to any other value, the matching will be case sensitive. \n- To negate an operator, include a boolean parameter named negate boolean parameter that is set to true.", - "items": { - "$ref": "Parameter" - }, - "annotations": { - "required": [ - "tagmanager.accounts.containers.triggers.create", - "tagmanager.accounts.containers.triggers.update" - ] - } - }, - "type": { - "type": "string", - "description": "The type of operator for this condition.", - "enum": [ - "contains", - "cssSelector", - "endsWith", - "equals", - "greater", - "greaterOrEquals", - "less", - "lessOrEquals", - "matchRegex", - "startsWith", - "urlMatches" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ], - "annotations": { - "required": [ - "tagmanager.accounts.containers.triggers.create", - "tagmanager.accounts.containers.triggers.update" - ] - } - } - } - }, - "Container": { - "id": "Container", - "type": "object", - "description": "Represents a Google Tag Manager Container.", - "properties": { - "accountId": { - "type": "string", - "description": "GTM Account ID." - }, - "containerId": { - "type": "string", - "description": "The Container ID uniquely identifies the GTM Container." - }, - "domainName": { - "type": "array", - "description": "Optional list of domain names associated with the Container.", - "items": { + "Responses with Content-Type of application/json" + ], + "location": "query", "type": "string" - } }, - "enabledBuiltInVariable": { - "type": "array", - "description": "List of enabled built-in variables. Valid values include: pageUrl, pageHostname, pagePath, referrer, event, clickElement, clickClasses, clickId, clickTarget, clickUrl, clickText, formElement, formClasses, formId, formTarget, formUrl, formText, errorMessage, errorUrl, errorLine, newHistoryFragment, oldHistoryFragment, newHistoryState, oldHistoryState, historySource, containerVersion, debugMode, randomNumber, containerId.", - "items": { - "type": "string", - "enum": [ - "advertiserId", - "advertisingTrackingEnabled", - "ampBrowserLanguage", - "ampCanonicalHost", - "ampCanonicalPath", - "ampCanonicalUrl", - "ampClientId", - "ampClientMaxScrollX", - "ampClientMaxScrollY", - "ampClientScreenHeight", - "ampClientScreenWidth", - "ampClientScrollX", - "ampClientScrollY", - "ampClientTimestamp", - "ampClientTimezone", - "ampGtmEvent", - "ampPageDownloadTime", - "ampPageLoadTime", - "ampPageViewId", - "ampReferrer", - "ampTitle", - "ampTotalEngagedTime", - "appId", - "appName", - "appVersionCode", - "appVersionName", - "clickClasses", - "clickElement", - "clickId", - "clickTarget", - "clickText", - "clickUrl", - "containerId", - "containerVersion", - "debugMode", - "deviceName", - "elementVisibilityFirstTime", - "elementVisibilityRatio", - "elementVisibilityRecentTime", - "elementVisibilityTime", - "environmentName", - "errorLine", - "errorMessage", - "errorUrl", - "event", - "eventName", - "firebaseEventParameterCampaign", - "firebaseEventParameterCampaignAclid", - "firebaseEventParameterCampaignAnid", - "firebaseEventParameterCampaignClickTimestamp", - "firebaseEventParameterCampaignContent", - "firebaseEventParameterCampaignCp1", - "firebaseEventParameterCampaignGclid", - "firebaseEventParameterCampaignSource", - "firebaseEventParameterCampaignTerm", - "firebaseEventParameterCurrency", - "firebaseEventParameterDynamicLinkAcceptTime", - "firebaseEventParameterDynamicLinkLinkid", - "firebaseEventParameterNotificationMessageDeviceTime", - "firebaseEventParameterNotificationMessageId", - "firebaseEventParameterNotificationMessageName", - "firebaseEventParameterNotificationMessageTime", - "firebaseEventParameterNotificationTopic", - "firebaseEventParameterPreviousAppVersion", - "firebaseEventParameterPreviousOsVersion", - "firebaseEventParameterPrice", - "firebaseEventParameterProductId", - "firebaseEventParameterQuantity", - "firebaseEventParameterValue", - "formClasses", - "formElement", - "formId", - "formTarget", - "formText", - "formUrl", - "historySource", - "htmlId", - "language", - "newHistoryFragment", - "newHistoryState", - "oldHistoryFragment", - "oldHistoryState", - "osVersion", - "pageHostname", - "pagePath", - "pageUrl", - "platform", - "randomNumber", - "referrer", - "resolution", - "scrollDepthDirection", - "scrollDepthThreshold", - "scrollDepthUnits", - "sdkVersion", - "videoCurrentTime", - "videoDuration", - "videoPercent", - "videoProvider", - "videoStatus", - "videoTitle", - "videoUrl", - "videoVisible" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - } - }, - "fingerprint": { - "type": "string", - "description": "The fingerprint of the GTM Container as computed at storage time. This value is recomputed whenever the account is modified." - }, - "name": { - "type": "string", - "description": "Container display name.", - "annotations": { - "required": [ - "tagmanager.accounts.containers.create" - ] - } - }, - "notes": { - "type": "string", - "description": "Container Notes." - }, - "publicId": { - "type": "string", - "description": "Container Public ID." - }, - "timeZoneCountryId": { - "type": "string", - "description": "Container Country ID.", - "annotations": { - "required": [ - "tagmanager.accounts.containers.create" - ] - } - }, - "timeZoneId": { - "type": "string", - "description": "Container Time Zone ID.", - "annotations": { - "required": [ - "tagmanager.accounts.containers.create" - ] - } - }, - "usageContext": { - "type": "array", - "description": "List of Usage Contexts for the Container. Valid values include: web, android, ios.", - "items": { - "type": "string", - "enum": [ - "amp", - "android", - "androidSdk5", - "ios", - "iosSdk5", - "web" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "" - ] - }, - "annotations": { - "required": [ - "tagmanager.accounts.containers.create" - ] - } - } - } - }, - "ContainerAccess": { - "id": "ContainerAccess", - "type": "object", - "description": "Defines the Google Tag Manager Container access permissions.", - "properties": { - "containerId": { - "type": "string", - "description": "GTM Container ID." - }, - "permission": { - "type": "array", - "description": "List of Container permissions. Valid container permissions are: read, edit, delete, publish.", - "items": { - "type": "string", - "enum": [ - "delete", - "edit", - "editWorkspace", - "manage", - "publish", - "read" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "" - ] - } - } - } - }, - "ContainerVersion": { - "id": "ContainerVersion", - "type": "object", - "description": "Represents a Google Tag Manager Container Version.", - "properties": { - "accountId": { - "type": "string", - "description": "GTM Account ID." - }, - "container": { - "$ref": "Container", - "description": "The container that this version was taken from." - }, - "containerId": { - "type": "string", - "description": "GTM Container ID." - }, - "containerVersionId": { - "type": "string", - "description": "The Container Version ID uniquely identifies the GTM Container Version." - }, - "deleted": { - "type": "boolean", - "description": "A value of true indicates this container version has been deleted." - }, - "fingerprint": { - "type": "string", - "description": "The fingerprint of the GTM Container Version as computed at storage time. This value is recomputed whenever the container version is modified." - }, - "folder": { - "type": "array", - "description": "The folders in the container that this version was taken from.", - "items": { - "$ref": "Folder" - } - }, - "macro": { - "type": "array", - "description": "The macros in the container that this version was taken from.", - "items": { - "$ref": "Macro" - } - }, - "name": { - "type": "string", - "description": "Container version display name." - }, - "notes": { - "type": "string", - "description": "User notes on how to apply this container version in the container." - }, - "rule": { - "type": "array", - "description": "The rules in the container that this version was taken from.", - "items": { - "$ref": "Rule" - } - }, - "tag": { - "type": "array", - "description": "The tags in the container that this version was taken from.", - "items": { - "$ref": "Tag" - } - }, - "trigger": { - "type": "array", - "description": "The triggers in the container that this version was taken from.", - "items": { - "$ref": "Trigger" - } - }, - "variable": { - "type": "array", - "description": "The variables in the container that this version was taken from.", - "items": { - "$ref": "Variable" - } - } - } - }, - "ContainerVersionHeader": { - "id": "ContainerVersionHeader", - "type": "object", - "description": "Represents a Google Tag Manager Container Version Header.", - "properties": { - "accountId": { - "type": "string", - "description": "GTM Account ID." - }, - "containerId": { - "type": "string", - "description": "GTM Container ID." - }, - "containerVersionId": { - "type": "string", - "description": "The Container Version ID uniquely identifies the GTM Container Version." - }, - "deleted": { - "type": "boolean", - "description": "A value of true indicates this container version has been deleted." - }, - "name": { - "type": "string", - "description": "Container version display name." - }, - "numMacros": { - "type": "string", - "description": "Number of macros in the container version." - }, - "numRules": { - "type": "string", - "description": "Number of rules in the container version." - }, - "numTags": { - "type": "string", - "description": "Number of tags in the container version." - }, - "numTriggers": { - "type": "string", - "description": "Number of triggers in the container version." - }, - "numVariables": { - "type": "string", - "description": "Number of variables in the container version." - } - } - }, - "CreateContainerVersionRequestVersionOptions": { - "id": "CreateContainerVersionRequestVersionOptions", - "type": "object", - "description": "Options for new container versions.", - "properties": { - "name": { - "type": "string", - "description": "The name of the container version to be created." - }, - "notes": { - "type": "string", - "description": "The notes of the container version to be created." - }, - "quickPreview": { - "type": "boolean", - "description": "The creation of this version may be for quick preview and shouldn't be saved." - } - } - }, - "CreateContainerVersionResponse": { - "id": "CreateContainerVersionResponse", - "type": "object", - "description": "Create container versions response.", - "properties": { - "compilerError": { - "type": "boolean", - "description": "Compiler errors or not." - }, - "containerVersion": { - "$ref": "ContainerVersion", - "description": "The container version created." - } - } - }, - "Environment": { - "id": "Environment", - "type": "object", - "description": "Represents a Google Tag Manager Environment. Note that a user can create, delete and update environments of type USER, but can only update the enable_debug and url fields of environments of other types.", - "properties": { - "accountId": { - "type": "string", - "description": "GTM Account ID." - }, - "authorizationCode": { - "type": "string", - "description": "The environment authorization code." - }, - "authorizationTimestampMs": { - "type": "string", - "description": "The last update time-stamp for the authorization code.", - "format": "int64" - }, - "containerId": { - "type": "string", - "description": "GTM Container ID." - }, - "containerVersionId": { - "type": "string", - "description": "" - }, - "description": { - "type": "string", - "description": "The environment description. Can be set or changed only on USER type environments." - }, - "enableDebug": { - "type": "boolean", - "description": "Whether or not to enable debug by default on for the environment." - }, - "environmentId": { - "type": "string", - "description": "GTM Environment ID uniquely identifies the GTM Environment." - }, - "fingerprint": { - "type": "string", - "description": "The fingerprint of the GTM environment as computed at storage time. This value is recomputed whenever the environment is modified." - }, - "name": { - "type": "string", - "description": "The environment display name. Can be set or changed only on USER type environments.", - "annotations": { - "required": [ - "tagmanager.accounts.containers.environments.create", - "tagmanager.accounts.containers.environments.update" - ] - } - }, - "type": { - "type": "string", - "description": "The type of this environment.", - "enum": [ - "draft", - "latest", - "live", - "user" - ], - "enumDescriptions": [ - "", - "", - "", - "" - ] - }, - "url": { - "type": "string", - "description": "Default preview page url for the environment." - } - } - }, - "Folder": { - "id": "Folder", - "type": "object", - "description": "Represents a Google Tag Manager Folder.", - "properties": { - "accountId": { - "type": "string", - "description": "GTM Account ID." - }, - "containerId": { - "type": "string", - "description": "GTM Container ID." - }, - "fingerprint": { - "type": "string", - "description": "The fingerprint of the GTM Folder as computed at storage time. This value is recomputed whenever the folder is modified." - }, - "folderId": { - "type": "string", - "description": "The Folder ID uniquely identifies the GTM Folder." - }, - "name": { - "type": "string", - "description": "Folder display name.", - "annotations": { - "required": [ - "tagmanager.accounts.containers.folders.create", - "tagmanager.accounts.containers.folders.update" - ] - } - } - } - }, - "FolderEntities": { - "id": "FolderEntities", - "type": "object", - "description": "Represents a Google Tag Manager Folder's contents.", - "properties": { - "tag": { - "type": "array", - "description": "The list of tags inside the folder.", - "items": { - "$ref": "Tag" - } - }, - "trigger": { - "type": "array", - "description": "The list of triggers inside the folder.", - "items": { - "$ref": "Trigger" - } - }, - "variable": { - "type": "array", - "description": "The list of variables inside the folder.", - "items": { - "$ref": "Variable" - } - } - } - }, - "ListAccountUsersResponse": { - "id": "ListAccountUsersResponse", - "type": "object", - "description": "List AccountUsers Response.", - "properties": { - "userAccess": { - "type": "array", - "description": "All GTM AccountUsers of a GTM Account.", - "items": { - "$ref": "UserAccess" - } - } - } - }, - "ListAccountsResponse": { - "id": "ListAccountsResponse", - "type": "object", - "description": "List Accounts Response.", - "properties": { - "accounts": { - "type": "array", - "description": "List of GTM Accounts that a user has access to.", - "items": { - "$ref": "Account" - } - } - } - }, - "ListContainerVersionsResponse": { - "id": "ListContainerVersionsResponse", - "type": "object", - "description": "List container versions response.", - "properties": { - "containerVersion": { - "type": "array", - "description": "All versions of a GTM Container.", - "items": { - "$ref": "ContainerVersion" - } - }, - "containerVersionHeader": { - "type": "array", - "description": "All container version headers of a GTM Container.", - "items": { - "$ref": "ContainerVersionHeader" - } - } - } - }, - "ListContainersResponse": { - "id": "ListContainersResponse", - "type": "object", - "description": "List Containers Response.", - "properties": { - "containers": { - "type": "array", - "description": "All Containers of a GTM Account.", - "items": { - "$ref": "Container" - } - } - } - }, - "ListEnvironmentsResponse": { - "id": "ListEnvironmentsResponse", - "type": "object", - "description": "List Environments Response.", - "properties": { - "environments": { - "type": "array", - "description": "All Environments of a GTM Container.", - "items": { - "$ref": "Environment" - } - } - } - }, - "ListFoldersResponse": { - "id": "ListFoldersResponse", - "type": "object", - "description": "List Folders Response.", - "properties": { - "folders": { - "type": "array", - "description": "All GTM Folders of a GTM Container.", - "items": { - "$ref": "Folder" - } - } - } - }, - "ListTagsResponse": { - "id": "ListTagsResponse", - "type": "object", - "description": "List Tags Response.", - "properties": { - "tags": { - "type": "array", - "description": "All GTM Tags of a GTM Container.", - "items": { - "$ref": "Tag" - } - } - } - }, - "ListTriggersResponse": { - "id": "ListTriggersResponse", - "type": "object", - "description": "List triggers response.", - "properties": { - "triggers": { - "type": "array", - "description": "All GTM Triggers of a GTM Container.", - "items": { - "$ref": "Trigger" - } - } - } - }, - "ListVariablesResponse": { - "id": "ListVariablesResponse", - "type": "object", - "description": "List Variables Response.", - "properties": { - "variables": { - "type": "array", - "description": "All GTM Variables of a GTM Container.", - "items": { - "$ref": "Variable" - } - } - } - }, - "Macro": { - "id": "Macro", - "type": "object", - "description": "Represents a Google Tag Manager Macro.", - "properties": { - "accountId": { - "type": "string", - "description": "GTM Account ID." - }, - "containerId": { - "type": "string", - "description": "GTM Container ID." - }, - "disablingRuleId": { - "type": "array", - "description": "For mobile containers only: A list of rule IDs for disabling conditional macros; the macro is enabled if one of the enabling rules is true while all the disabling rules are false. Treated as an unordered set.", - "items": { + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "location": "query", "type": "string" - } }, - "enablingRuleId": { - "type": "array", - "description": "For mobile containers only: A list of rule IDs for enabling conditional macros; the macro is enabled if one of the enabling rules is true while all the disabling rules are false. Treated as an unordered set.", - "items": { - "type": "string" - } - }, - "fingerprint": { - "type": "string", - "description": "The fingerprint of the GTM Macro as computed at storage time. This value is recomputed whenever the macro is modified." - }, - "macroId": { - "type": "string", - "description": "The Macro ID uniquely identifies the GTM Macro." - }, - "name": { - "type": "string", - "description": "Macro display name." - }, - "notes": { - "type": "string", - "description": "User notes on how to apply this macro in the container." - }, - "parameter": { - "type": "array", - "description": "The macro's parameters.", - "items": { - "$ref": "Parameter" - } - }, - "parentFolderId": { - "type": "string", - "description": "Parent folder id." - }, - "scheduleEndMs": { - "type": "string", - "description": "The end timestamp in milliseconds to schedule a macro.", - "format": "int64" - }, - "scheduleStartMs": { - "type": "string", - "description": "The start timestamp in milliseconds to schedule a macro.", - "format": "int64" - }, - "type": { - "type": "string", - "description": "GTM Macro Type." - } - } - }, - "Parameter": { - "id": "Parameter", - "type": "object", - "description": "Represents a Google Tag Manager Parameter.", - "properties": { "key": { - "type": "string", - "description": "The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values." - }, - "list": { - "type": "array", - "description": "This list parameter's parameters (keys will be ignored).", - "items": { - "$ref": "Parameter" - } - }, - "map": { - "type": "array", - "description": "This map parameter's parameters (must have keys; keys must be unique).", - "items": { - "$ref": "Parameter" - } - }, - "type": { - "type": "string", - "description": "The parameter type. Valid values are: \n- boolean: The value represents a boolean, represented as 'true' or 'false' \n- integer: The value represents a 64-bit signed integer value, in base 10 \n- list: A list of parameters should be specified \n- map: A map of parameters should be specified \n- template: The value represents any text; this can include variable references (even variable references that might return non-string types)", - "enum": [ - "boolean", - "integer", - "list", - "map", - "template" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "" - ], - "annotations": { - "required": [ - "tagmanager.accounts.containers.tags.create", - "tagmanager.accounts.containers.tags.update", - "tagmanager.accounts.containers.triggers.create", - "tagmanager.accounts.containers.triggers.update", - "tagmanager.accounts.containers.variables.create", - "tagmanager.accounts.containers.variables.update" - ] - } - }, - "value": { - "type": "string", - "description": "A parameter's value (may contain variable references such as \"{{myVariable}}\") as appropriate to the specified type." - } - } - }, - "PublishContainerVersionResponse": { - "id": "PublishContainerVersionResponse", - "type": "object", - "description": "Publish container version response.", - "properties": { - "compilerError": { - "type": "boolean", - "description": "Compiler errors or not." - }, - "containerVersion": { - "$ref": "ContainerVersion", - "description": "The container version created." - } - } - }, - "Rule": { - "id": "Rule", - "type": "object", - "description": "Represents a Google Tag Manager Rule.", - "properties": { - "accountId": { - "type": "string", - "description": "GTM Account ID." - }, - "condition": { - "type": "array", - "description": "The list of conditions that make up this rule (implicit AND between them).", - "items": { - "$ref": "Condition" - } - }, - "containerId": { - "type": "string", - "description": "GTM Container ID." - }, - "fingerprint": { - "type": "string", - "description": "The fingerprint of the GTM Rule as computed at storage time. This value is recomputed whenever the rule is modified." - }, - "name": { - "type": "string", - "description": "Rule display name." - }, - "notes": { - "type": "string", - "description": "User notes on how to apply this rule in the container." - }, - "ruleId": { - "type": "string", - "description": "The Rule ID uniquely identifies the GTM Rule." - } - } - }, - "SetupTag": { - "id": "SetupTag", - "type": "object", - "properties": { - "stopOnSetupFailure": { - "type": "boolean", - "description": "If true, fire the main tag if and only if the setup tag fires successfully. If false, fire the main tag regardless of setup tag firing status." - }, - "tagName": { - "type": "string", - "description": "The name of the setup tag." - } - } - }, - "Tag": { - "id": "Tag", - "type": "object", - "description": "Represents a Google Tag Manager Tag.", - "properties": { - "accountId": { - "type": "string", - "description": "GTM Account ID." - }, - "blockingRuleId": { - "type": "array", - "description": "Blocking rule IDs. If any of the listed rules evaluate to true, the tag will not fire.", - "items": { + "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" - } }, - "blockingTriggerId": { - "type": "array", - "description": "Blocking trigger IDs. If any of the listed triggers evaluate to true, the tag will not fire.", - "items": { + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", "type": "string" - } }, - "containerId": { - "type": "string", - "description": "GTM Container ID." + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" }, - "fingerprint": { - "type": "string", - "description": "The fingerprint of the GTM Tag as computed at storage time. This value is recomputed whenever the tag is modified." - }, - "firingRuleId": { - "type": "array", - "description": "Firing rule IDs. A tag will fire when any of the listed rules are true and all of its blockingRuleIds (if any specified) are false.", - "items": { + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", + "location": "query", "type": "string" - } }, - "firingTriggerId": { - "type": "array", - "description": "Firing trigger IDs. A tag will fire when any of the listed triggers are true and all of its blockingTriggerIds (if any specified) are false.", - "items": { + "userIp": { + "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", + "location": "query", "type": "string" - } - }, - "liveOnly": { - "type": "boolean", - "description": "If set to true, this tag will only fire in the live environment (e.g. not in preview or debug mode)." - }, - "name": { - "type": "string", - "description": "Tag display name.", - "annotations": { - "required": [ - "tagmanager.accounts.containers.tags.create", - "tagmanager.accounts.containers.tags.update" - ] - } - }, - "notes": { - "type": "string", - "description": "User notes on how to apply this tag in the container." - }, - "parameter": { - "type": "array", - "description": "The tag's parameters.", - "items": { - "$ref": "Parameter" - } - }, - "parentFolderId": { - "type": "string", - "description": "Parent folder id." - }, - "paused": { - "type": "boolean", - "description": "True if the tag is paused." - }, - "priority": { - "$ref": "Parameter", - "description": "User defined numeric priority of the tag. Tags are fired asynchronously in order of priority. Tags with higher numeric value fire first. A tag's priority can be a positive or negative value. The default value is 0." - }, - "scheduleEndMs": { - "type": "string", - "description": "The end timestamp in milliseconds to schedule a tag.", - "format": "int64" - }, - "scheduleStartMs": { - "type": "string", - "description": "The start timestamp in milliseconds to schedule a tag.", - "format": "int64" - }, - "setupTag": { - "type": "array", - "description": "The list of setup tags. Currently we only allow one.", - "items": { - "$ref": "SetupTag" - } - }, - "tagFiringOption": { - "type": "string", - "description": "Option to fire this tag.", - "enum": [ - "oncePerEvent", - "oncePerLoad", - "unlimited" - ], - "enumDescriptions": [ - "", - "", - "" - ] - }, - "tagId": { - "type": "string", - "description": "The Tag ID uniquely identifies the GTM Tag." - }, - "teardownTag": { - "type": "array", - "description": "The list of teardown tags. Currently we only allow one.", - "items": { - "$ref": "TeardownTag" - } - }, - "type": { - "type": "string", - "description": "GTM Tag Type.", - "annotations": { - "required": [ - "tagmanager.accounts.containers.tags.create" - ] - } } - } }, - "TeardownTag": { - "id": "TeardownTag", - "type": "object", - "properties": { - "stopTeardownOnFailure": { - "type": "boolean", - "description": "If true, fire the teardown tag if and only if the main tag fires successfully. If false, fire the teardown tag regardless of main tag firing status." - }, - "tagName": { - "type": "string", - "description": "The name of the teardown tag." - } - } - }, - "Trigger": { - "id": "Trigger", - "type": "object", - "description": "Represents a Google Tag Manager Trigger", - "properties": { - "accountId": { - "type": "string", - "description": "GTM Account ID." - }, - "autoEventFilter": { - "type": "array", - "description": "Used in the case of auto event tracking.", - "items": { - "$ref": "Condition" - } - }, - "checkValidation": { - "$ref": "Parameter", - "description": "Whether or not we should only fire tags if the form submit or link click event is not cancelled by some other event handler (e.g. because of validation). Only valid for Form Submission and Link Click triggers." - }, - "containerId": { - "type": "string", - "description": "GTM Container ID." - }, - "continuousTimeMinMilliseconds": { - "$ref": "Parameter", - "description": "A visibility trigger minimum continuous visible time (in milliseconds). Only valid for AMP Visibility trigger." - }, - "customEventFilter": { - "type": "array", - "description": "Used in the case of custom event, which is fired iff all Conditions are true.", - "items": { - "$ref": "Condition" - } - }, - "eventName": { - "$ref": "Parameter", - "description": "Name of the GTM event that is fired. Only valid for Timer triggers." - }, - "filter": { - "type": "array", - "description": "The trigger will only fire iff all Conditions are true.", - "items": { - "$ref": "Condition" - } - }, - "fingerprint": { - "type": "string", - "description": "The fingerprint of the GTM Trigger as computed at storage time. This value is recomputed whenever the trigger is modified." - }, - "horizontalScrollPercentageList": { - "$ref": "Parameter", - "description": "List of integer percentage values for scroll triggers. The trigger will fire when each percentage is reached when the view is scrolled horizontally. Only valid for AMP scroll triggers." - }, - "interval": { - "$ref": "Parameter", - "description": "Time between triggering recurring Timer Events (in milliseconds). Only valid for Timer triggers." - }, - "intervalSeconds": { - "$ref": "Parameter", - "description": "Time between Timer Events to fire (in seconds). Only valid for AMP Timer trigger." - }, - "limit": { - "$ref": "Parameter", - "description": "Limit of the number of GTM events this Timer Trigger will fire. If no limit is set, we will continue to fire GTM events until the user leaves the page. Only valid for Timer triggers." - }, - "maxTimerLengthSeconds": { - "$ref": "Parameter", - "description": "Max time to fire Timer Events (in seconds). Only valid for AMP Timer trigger." - }, - "name": { - "type": "string", - "description": "Trigger display name.", - "annotations": { - "required": [ - "tagmanager.accounts.containers.triggers.create", - "tagmanager.accounts.containers.triggers.update" - ] - } - }, - "parameter": { - "type": "array", - "description": "Additional parameters.", - "items": { - "$ref": "Parameter" - } - }, - "parentFolderId": { - "type": "string", - "description": "Parent folder id." - }, - "selector": { - "$ref": "Parameter", - "description": "A click trigger CSS selector (i.e. \"a\", \"button\" etc.). Only valid for AMP Click trigger." - }, - "totalTimeMinMilliseconds": { - "$ref": "Parameter", - "description": "A visibility trigger minimum total visible time (in milliseconds). Only valid for AMP Visibility trigger." - }, - "triggerId": { - "type": "string", - "description": "The Trigger ID uniquely identifies the GTM Trigger." - }, - "type": { - "type": "string", - "description": "Defines the data layer event that causes this trigger.", - "enum": [ - "always", - "ampClick", - "ampScroll", - "ampTimer", - "ampVisibility", - "click", - "customEvent", - "domReady", - "elementVisibility", - "formSubmission", - "historyChange", - "jsError", - "linkClick", - "pageview", - "scrollDepth", - "timer", - "windowLoaded", - "youTubeVideo" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ], - "annotations": { - "required": [ - "tagmanager.accounts.containers.triggers.create" - ] - } - }, - "uniqueTriggerId": { - "$ref": "Parameter", - "description": "Globally unique id of the trigger that auto-generates this (a Form Submit, Link Click or Timer listener) if any. Used to make incompatible auto-events work together with trigger filtering based on trigger ids. This value is populated during output generation since the tags implied by triggers don't exist until then. Only valid for Form Submit, Link Click and Timer triggers." - }, - "verticalScrollPercentageList": { - "$ref": "Parameter", - "description": "List of integer percentage values for scroll triggers. The trigger will fire when each percentage is reached when the view is scrolled vertically. Only valid for AMP scroll triggers." - }, - "visibilitySelector": { - "$ref": "Parameter", - "description": "A visibility trigger CSS selector (i.e. \"#id\"). Only valid for AMP Visibility trigger." - }, - "visiblePercentageMax": { - "$ref": "Parameter", - "description": "A visibility trigger maximum percent visibility. Only valid for AMP Visibility trigger." - }, - "visiblePercentageMin": { - "$ref": "Parameter", - "description": "A visibility trigger minimum percent visibility. Only valid for AMP Visibility trigger." - }, - "waitForTags": { - "$ref": "Parameter", - "description": "Whether or not we should delay the form submissions or link opening until all of the tags have fired (by preventing the default action and later simulating the default action). Only valid for Form Submission and Link Click triggers." - }, - "waitForTagsTimeout": { - "$ref": "Parameter", - "description": "How long to wait (in milliseconds) for tags to fire when 'waits_for_tags' above evaluates to true. Only valid for Form Submission and Link Click triggers." - } - } - }, - "UserAccess": { - "id": "UserAccess", - "type": "object", - "description": "Represents a user's permissions to an account and its container.", - "properties": { - "accountAccess": { - "$ref": "AccountAccess", - "description": "GTM Account access permissions.", - "annotations": { - "required": [ - "tagmanager.accounts.permissions.create" - ] - } - }, - "accountId": { - "type": "string", - "description": "GTM Account ID." - }, - "containerAccess": { - "type": "array", - "description": "GTM Container access permissions.", - "items": { - "$ref": "ContainerAccess" - } - }, - "emailAddress": { - "type": "string", - "description": "User's email address.", - "annotations": { - "required": [ - "tagmanager.accounts.permissions.create" - ] - } - }, - "permissionId": { - "type": "string", - "description": "Account Permission ID." - } - } - }, - "Variable": { - "id": "Variable", - "type": "object", - "description": "Represents a Google Tag Manager Variable.", - "properties": { - "accountId": { - "type": "string", - "description": "GTM Account ID." - }, - "containerId": { - "type": "string", - "description": "GTM Container ID." - }, - "disablingTriggerId": { - "type": "array", - "description": "For mobile containers only: A list of trigger IDs for disabling conditional variables; the variable is enabled if one of the enabling trigger is true while all the disabling trigger are false. Treated as an unordered set.", - "items": { - "type": "string" - } - }, - "enablingTriggerId": { - "type": "array", - "description": "For mobile containers only: A list of trigger IDs for enabling conditional variables; the variable is enabled if one of the enabling triggers is true while all the disabling triggers are false. Treated as an unordered set.", - "items": { - "type": "string" - } - }, - "fingerprint": { - "type": "string", - "description": "The fingerprint of the GTM Variable as computed at storage time. This value is recomputed whenever the variable is modified." - }, - "name": { - "type": "string", - "description": "Variable display name.", - "annotations": { - "required": [ - "tagmanager.accounts.containers.variables.create", - "tagmanager.accounts.containers.variables.update" - ] - } - }, - "notes": { - "type": "string", - "description": "User notes on how to apply this variable in the container." - }, - "parameter": { - "type": "array", - "description": "The variable's parameters.", - "items": { - "$ref": "Parameter" - } - }, - "parentFolderId": { - "type": "string", - "description": "Parent folder id." - }, - "scheduleEndMs": { - "type": "string", - "description": "The end timestamp in milliseconds to schedule a variable.", - "format": "int64" - }, - "scheduleStartMs": { - "type": "string", - "description": "The start timestamp in milliseconds to schedule a variable.", - "format": "int64" - }, - "type": { - "type": "string", - "description": "GTM Variable Type.", - "annotations": { - "required": [ - "tagmanager.accounts.containers.variables.create", - "tagmanager.accounts.containers.variables.update" - ] - } - }, - "variableId": { - "type": "string", - "description": "The Variable ID uniquely identifies the GTM Variable." - } - } - } - }, - "resources": { - "accounts": { - "methods": { - "get": { - "id": "tagmanager.accounts.get", - "path": "accounts/{accountId}", - "httpMethod": "GET", - "description": "Gets a GTM Account.", - "parameters": { - "accountId": { - "type": "string", - "description": "The GTM Account ID.", - "required": true, - "location": "path" + "protocol": "rest", + "resources": { + "accounts": { + "methods": { + "get": { + "description": "Gets a GTM Account.", + "httpMethod": "GET", + "id": "tagmanager.accounts.get", + "parameterOrder": [ + "accountId" + ], + "parameters": { + "accountId": { + "description": "The GTM Account ID.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "accounts/{accountId}", + "response": { + "$ref": "Account" + }, + "scopes": [ + "https://www.googleapis.com/auth/tagmanager.edit.containers", + "https://www.googleapis.com/auth/tagmanager.manage.accounts", + "https://www.googleapis.com/auth/tagmanager.readonly" + ] + }, + "list": { + "description": "Lists all GTM Accounts that a user has access to.", + "httpMethod": "GET", + "id": "tagmanager.accounts.list", + "path": "accounts", + "response": { + "$ref": "ListAccountsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/tagmanager.edit.containers", + "https://www.googleapis.com/auth/tagmanager.manage.accounts", + "https://www.googleapis.com/auth/tagmanager.readonly" + ] + }, + "update": { + "description": "Updates a GTM Account.", + "httpMethod": "PUT", + "id": "tagmanager.accounts.update", + "parameterOrder": [ + "accountId" + ], + "parameters": { + "accountId": { + "description": "The GTM Account ID.", + "location": "path", + "required": true, + "type": "string" + }, + "fingerprint": { + "description": "When provided, this fingerprint must match the fingerprint of the account in storage.", + "location": "query", + "type": "string" + } + }, + "path": "accounts/{accountId}", + "request": { + "$ref": "Account" + }, + "response": { + "$ref": "Account" + }, + "scopes": [ + "https://www.googleapis.com/auth/tagmanager.manage.accounts" + ] + } + }, + "resources": { + "containers": { + "methods": { + "create": { + "description": "Creates a Container.", + "httpMethod": "POST", + "id": "tagmanager.accounts.containers.create", + "parameterOrder": [ + "accountId" + ], + "parameters": { + "accountId": { + "description": "The GTM Account ID.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "accounts/{accountId}/containers", + "request": { + "$ref": "Container" + }, + "response": { + "$ref": "Container" + }, + "scopes": [ + "https://www.googleapis.com/auth/tagmanager.edit.containers" + ] + }, + "delete": { + "description": "Deletes a Container.", + "httpMethod": "DELETE", + "id": "tagmanager.accounts.containers.delete", + "parameterOrder": [ + "accountId", + "containerId" + ], + "parameters": { + "accountId": { + "description": "The GTM Account ID.", + "location": "path", + "required": true, + "type": "string" + }, + "containerId": { + "description": "The GTM Container ID.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "accounts/{accountId}/containers/{containerId}", + "scopes": [ + "https://www.googleapis.com/auth/tagmanager.delete.containers" + ] + }, + "get": { + "description": "Gets a Container.", + "httpMethod": "GET", + "id": "tagmanager.accounts.containers.get", + "parameterOrder": [ + "accountId", + "containerId" + ], + "parameters": { + "accountId": { + "description": "The GTM Account ID.", + "location": "path", + "required": true, + "type": "string" + }, + "containerId": { + "description": "The GTM Container ID.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "accounts/{accountId}/containers/{containerId}", + "response": { + "$ref": "Container" + }, + "scopes": [ + "https://www.googleapis.com/auth/tagmanager.edit.containers", + "https://www.googleapis.com/auth/tagmanager.readonly" + ] + }, + "list": { + "description": "Lists all Containers that belongs to a GTM Account.", + "httpMethod": "GET", + "id": "tagmanager.accounts.containers.list", + "parameterOrder": [ + "accountId" + ], + "parameters": { + "accountId": { + "description": "The GTM Account ID.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "accounts/{accountId}/containers", + "response": { + "$ref": "ListContainersResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/tagmanager.edit.containers", + "https://www.googleapis.com/auth/tagmanager.readonly" + ] + }, + "update": { + "description": "Updates a Container.", + "httpMethod": "PUT", + "id": "tagmanager.accounts.containers.update", + "parameterOrder": [ + "accountId", + "containerId" + ], + "parameters": { + "accountId": { + "description": "The GTM Account ID.", + "location": "path", + "required": true, + "type": "string" + }, + "containerId": { + "description": "The GTM Container ID.", + "location": "path", + "required": true, + "type": "string" + }, + "fingerprint": { + "description": "When provided, this fingerprint must match the fingerprint of the container in storage.", + "location": "query", + "type": "string" + } + }, + "path": "accounts/{accountId}/containers/{containerId}", + "request": { + "$ref": "Container" + }, + "response": { + "$ref": "Container" + }, + "scopes": [ + "https://www.googleapis.com/auth/tagmanager.edit.containers" + ] + } + }, + "resources": { + "environments": { + "methods": { + "create": { + "description": "Creates a GTM Environment.", + "httpMethod": "POST", + "id": "tagmanager.accounts.containers.environments.create", + "parameterOrder": [ + "accountId", + "containerId" + ], + "parameters": { + "accountId": { + "description": "The GTM Account ID.", + "location": "path", + "required": true, + "type": "string" + }, + "containerId": { + "description": "The GTM Container ID.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "accounts/{accountId}/containers/{containerId}/environments", + "request": { + "$ref": "Environment" + }, + "response": { + "$ref": "Environment" + }, + "scopes": [ + "https://www.googleapis.com/auth/tagmanager.edit.containers" + ] + }, + "delete": { + "description": "Deletes a GTM Environment.", + "httpMethod": "DELETE", + "id": "tagmanager.accounts.containers.environments.delete", + "parameterOrder": [ + "accountId", + "containerId", + "environmentId" + ], + "parameters": { + "accountId": { + "description": "The GTM Account ID.", + "location": "path", + "required": true, + "type": "string" + }, + "containerId": { + "description": "The GTM Container ID.", + "location": "path", + "required": true, + "type": "string" + }, + "environmentId": { + "description": "The GTM Environment ID.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "accounts/{accountId}/containers/{containerId}/environments/{environmentId}", + "scopes": [ + "https://www.googleapis.com/auth/tagmanager.edit.containers" + ] + }, + "get": { + "description": "Gets a GTM Environment.", + "httpMethod": "GET", + "id": "tagmanager.accounts.containers.environments.get", + "parameterOrder": [ + "accountId", + "containerId", + "environmentId" + ], + "parameters": { + "accountId": { + "description": "The GTM Account ID.", + "location": "path", + "required": true, + "type": "string" + }, + "containerId": { + "description": "The GTM Container ID.", + "location": "path", + "required": true, + "type": "string" + }, + "environmentId": { + "description": "The GTM Environment ID.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "accounts/{accountId}/containers/{containerId}/environments/{environmentId}", + "response": { + "$ref": "Environment" + }, + "scopes": [ + "https://www.googleapis.com/auth/tagmanager.edit.containers", + "https://www.googleapis.com/auth/tagmanager.readonly" + ] + }, + "list": { + "description": "Lists all GTM Environments of a GTM Container.", + "httpMethod": "GET", + "id": "tagmanager.accounts.containers.environments.list", + "parameterOrder": [ + "accountId", + "containerId" + ], + "parameters": { + "accountId": { + "description": "The GTM Account ID.", + "location": "path", + "required": true, + "type": "string" + }, + "containerId": { + "description": "The GTM Container ID.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "accounts/{accountId}/containers/{containerId}/environments", + "response": { + "$ref": "ListEnvironmentsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/tagmanager.edit.containers", + "https://www.googleapis.com/auth/tagmanager.readonly" + ] + }, + "patch": { + "description": "Updates a GTM Environment. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "tagmanager.accounts.containers.environments.patch", + "parameterOrder": [ + "accountId", + "containerId", + "environmentId" + ], + "parameters": { + "accountId": { + "description": "The GTM Account ID.", + "location": "path", + "required": true, + "type": "string" + }, + "containerId": { + "description": "The GTM Container ID.", + "location": "path", + "required": true, + "type": "string" + }, + "environmentId": { + "description": "The GTM Environment ID.", + "location": "path", + "required": true, + "type": "string" + }, + "fingerprint": { + "description": "When provided, this fingerprint must match the fingerprint of the environment in storage.", + "location": "query", + "type": "string" + } + }, + "path": "accounts/{accountId}/containers/{containerId}/environments/{environmentId}", + "request": { + "$ref": "Environment" + }, + "response": { + "$ref": "Environment" + }, + "scopes": [ + "https://www.googleapis.com/auth/tagmanager.edit.containers" + ] + }, + "update": { + "description": "Updates a GTM Environment.", + "httpMethod": "PUT", + "id": "tagmanager.accounts.containers.environments.update", + "parameterOrder": [ + "accountId", + "containerId", + "environmentId" + ], + "parameters": { + "accountId": { + "description": "The GTM Account ID.", + "location": "path", + "required": true, + "type": "string" + }, + "containerId": { + "description": "The GTM Container ID.", + "location": "path", + "required": true, + "type": "string" + }, + "environmentId": { + "description": "The GTM Environment ID.", + "location": "path", + "required": true, + "type": "string" + }, + "fingerprint": { + "description": "When provided, this fingerprint must match the fingerprint of the environment in storage.", + "location": "query", + "type": "string" + } + }, + "path": "accounts/{accountId}/containers/{containerId}/environments/{environmentId}", + "request": { + "$ref": "Environment" + }, + "response": { + "$ref": "Environment" + }, + "scopes": [ + "https://www.googleapis.com/auth/tagmanager.edit.containers" + ] + } + } + }, + "folders": { + "methods": { + "create": { + "description": "Creates a GTM Folder.", + "httpMethod": "POST", + "id": "tagmanager.accounts.containers.folders.create", + "parameterOrder": [ + "accountId", + "containerId" + ], + "parameters": { + "accountId": { + "description": "The GTM Account ID.", + "location": "path", + "required": true, + "type": "string" + }, + "containerId": { + "description": "The GTM Container ID.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "accounts/{accountId}/containers/{containerId}/folders", + "request": { + "$ref": "Folder" + }, + "response": { + "$ref": "Folder" + }, + "scopes": [ + "https://www.googleapis.com/auth/tagmanager.edit.containers" + ] + }, + "delete": { + "description": "Deletes a GTM Folder.", + "httpMethod": "DELETE", + "id": "tagmanager.accounts.containers.folders.delete", + "parameterOrder": [ + "accountId", + "containerId", + "folderId" + ], + "parameters": { + "accountId": { + "description": "The GTM Account ID.", + "location": "path", + "required": true, + "type": "string" + }, + "containerId": { + "description": "The GTM Container ID.", + "location": "path", + "required": true, + "type": "string" + }, + "folderId": { + "description": "The GTM Folder ID.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "accounts/{accountId}/containers/{containerId}/folders/{folderId}", + "scopes": [ + "https://www.googleapis.com/auth/tagmanager.edit.containers" + ] + }, + "get": { + "description": "Gets a GTM Folder.", + "httpMethod": "GET", + "id": "tagmanager.accounts.containers.folders.get", + "parameterOrder": [ + "accountId", + "containerId", + "folderId" + ], + "parameters": { + "accountId": { + "description": "The GTM Account ID.", + "location": "path", + "required": true, + "type": "string" + }, + "containerId": { + "description": "The GTM Container ID.", + "location": "path", + "required": true, + "type": "string" + }, + "folderId": { + "description": "The GTM Folder ID.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "accounts/{accountId}/containers/{containerId}/folders/{folderId}", + "response": { + "$ref": "Folder" + }, + "scopes": [ + "https://www.googleapis.com/auth/tagmanager.edit.containers", + "https://www.googleapis.com/auth/tagmanager.readonly" + ] + }, + "list": { + "description": "Lists all GTM Folders of a Container.", + "httpMethod": "GET", + "id": "tagmanager.accounts.containers.folders.list", + "parameterOrder": [ + "accountId", + "containerId" + ], + "parameters": { + "accountId": { + "description": "The GTM Account ID.", + "location": "path", + "required": true, + "type": "string" + }, + "containerId": { + "description": "The GTM Container ID.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "accounts/{accountId}/containers/{containerId}/folders", + "response": { + "$ref": "ListFoldersResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/tagmanager.edit.containers", + "https://www.googleapis.com/auth/tagmanager.readonly" + ] + }, + "update": { + "description": "Updates a GTM Folder.", + "httpMethod": "PUT", + "id": "tagmanager.accounts.containers.folders.update", + "parameterOrder": [ + "accountId", + "containerId", + "folderId" + ], + "parameters": { + "accountId": { + "description": "The GTM Account ID.", + "location": "path", + "required": true, + "type": "string" + }, + "containerId": { + "description": "The GTM Container ID.", + "location": "path", + "required": true, + "type": "string" + }, + "fingerprint": { + "description": "When provided, this fingerprint must match the fingerprint of the folder in storage.", + "location": "query", + "type": "string" + }, + "folderId": { + "description": "The GTM Folder ID.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "accounts/{accountId}/containers/{containerId}/folders/{folderId}", + "request": { + "$ref": "Folder" + }, + "response": { + "$ref": "Folder" + }, + "scopes": [ + "https://www.googleapis.com/auth/tagmanager.edit.containers" + ] + } + }, + "resources": { + "entities": { + "methods": { + "list": { + "description": "List all entities in a GTM Folder.", + "httpMethod": "GET", + "id": "tagmanager.accounts.containers.folders.entities.list", + "parameterOrder": [ + "accountId", + "containerId", + "folderId" + ], + "parameters": { + "accountId": { + "description": "The GTM Account ID.", + "location": "path", + "required": true, + "type": "string" + }, + "containerId": { + "description": "The GTM Container ID.", + "location": "path", + "required": true, + "type": "string" + }, + "folderId": { + "description": "The GTM Folder ID.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "accounts/{accountId}/containers/{containerId}/folders/{folderId}/entities", + "response": { + "$ref": "FolderEntities" + }, + "scopes": [ + "https://www.googleapis.com/auth/tagmanager.edit.containers", + "https://www.googleapis.com/auth/tagmanager.readonly" + ] + } + } + } + } + }, + "move_folders": { + "methods": { + "update": { + "description": "Moves entities to a GTM Folder.", + "httpMethod": "PUT", + "id": "tagmanager.accounts.containers.move_folders.update", + "parameterOrder": [ + "accountId", + "containerId", + "folderId" + ], + "parameters": { + "accountId": { + "description": "The GTM Account ID.", + "location": "path", + "required": true, + "type": "string" + }, + "containerId": { + "description": "The GTM Container ID.", + "location": "path", + "required": true, + "type": "string" + }, + "folderId": { + "description": "The GTM Folder ID.", + "location": "path", + "required": true, + "type": "string" + }, + "tagId": { + "description": "The tags to be moved to the folder.", + "location": "query", + "repeated": true, + "type": "string" + }, + "triggerId": { + "description": "The triggers to be moved to the folder.", + "location": "query", + "repeated": true, + "type": "string" + }, + "variableId": { + "description": "The variables to be moved to the folder.", + "location": "query", + "repeated": true, + "type": "string" + } + }, + "path": "accounts/{accountId}/containers/{containerId}/move_folders/{folderId}", + "request": { + "$ref": "Folder" + }, + "scopes": [ + "https://www.googleapis.com/auth/tagmanager.edit.containers" + ] + } + } + }, + "reauthorize_environments": { + "methods": { + "update": { + "description": "Re-generates the authorization code for a GTM Environment.", + "httpMethod": "PUT", + "id": "tagmanager.accounts.containers.reauthorize_environments.update", + "parameterOrder": [ + "accountId", + "containerId", + "environmentId" + ], + "parameters": { + "accountId": { + "description": "The GTM Account ID.", + "location": "path", + "required": true, + "type": "string" + }, + "containerId": { + "description": "The GTM Container ID.", + "location": "path", + "required": true, + "type": "string" + }, + "environmentId": { + "description": "The GTM Environment ID.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "accounts/{accountId}/containers/{containerId}/reauthorize_environments/{environmentId}", + "request": { + "$ref": "Environment" + }, + "response": { + "$ref": "Environment" + }, + "scopes": [ + "https://www.googleapis.com/auth/tagmanager.publish" + ] + } + } + }, + "tags": { + "methods": { + "create": { + "description": "Creates a GTM Tag.", + "httpMethod": "POST", + "id": "tagmanager.accounts.containers.tags.create", + "parameterOrder": [ + "accountId", + "containerId" + ], + "parameters": { + "accountId": { + "description": "The GTM Account ID.", + "location": "path", + "required": true, + "type": "string" + }, + "containerId": { + "description": "The GTM Container ID.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "accounts/{accountId}/containers/{containerId}/tags", + "request": { + "$ref": "Tag" + }, + "response": { + "$ref": "Tag" + }, + "scopes": [ + "https://www.googleapis.com/auth/tagmanager.edit.containers" + ] + }, + "delete": { + "description": "Deletes a GTM Tag.", + "httpMethod": "DELETE", + "id": "tagmanager.accounts.containers.tags.delete", + "parameterOrder": [ + "accountId", + "containerId", + "tagId" + ], + "parameters": { + "accountId": { + "description": "The GTM Account ID.", + "location": "path", + "required": true, + "type": "string" + }, + "containerId": { + "description": "The GTM Container ID.", + "location": "path", + "required": true, + "type": "string" + }, + "tagId": { + "description": "The GTM Tag ID.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "accounts/{accountId}/containers/{containerId}/tags/{tagId}", + "scopes": [ + "https://www.googleapis.com/auth/tagmanager.edit.containers" + ] + }, + "get": { + "description": "Gets a GTM Tag.", + "httpMethod": "GET", + "id": "tagmanager.accounts.containers.tags.get", + "parameterOrder": [ + "accountId", + "containerId", + "tagId" + ], + "parameters": { + "accountId": { + "description": "The GTM Account ID.", + "location": "path", + "required": true, + "type": "string" + }, + "containerId": { + "description": "The GTM Container ID.", + "location": "path", + "required": true, + "type": "string" + }, + "tagId": { + "description": "The GTM Tag ID.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "accounts/{accountId}/containers/{containerId}/tags/{tagId}", + "response": { + "$ref": "Tag" + }, + "scopes": [ + "https://www.googleapis.com/auth/tagmanager.edit.containers", + "https://www.googleapis.com/auth/tagmanager.readonly" + ] + }, + "list": { + "description": "Lists all GTM Tags of a Container.", + "httpMethod": "GET", + "id": "tagmanager.accounts.containers.tags.list", + "parameterOrder": [ + "accountId", + "containerId" + ], + "parameters": { + "accountId": { + "description": "The GTM Account ID.", + "location": "path", + "required": true, + "type": "string" + }, + "containerId": { + "description": "The GTM Container ID.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "accounts/{accountId}/containers/{containerId}/tags", + "response": { + "$ref": "ListTagsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/tagmanager.edit.containers", + "https://www.googleapis.com/auth/tagmanager.readonly" + ] + }, + "update": { + "description": "Updates a GTM Tag.", + "httpMethod": "PUT", + "id": "tagmanager.accounts.containers.tags.update", + "parameterOrder": [ + "accountId", + "containerId", + "tagId" + ], + "parameters": { + "accountId": { + "description": "The GTM Account ID.", + "location": "path", + "required": true, + "type": "string" + }, + "containerId": { + "description": "The GTM Container ID.", + "location": "path", + "required": true, + "type": "string" + }, + "fingerprint": { + "description": "When provided, this fingerprint must match the fingerprint of the tag in storage.", + "location": "query", + "type": "string" + }, + "tagId": { + "description": "The GTM Tag ID.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "accounts/{accountId}/containers/{containerId}/tags/{tagId}", + "request": { + "$ref": "Tag" + }, + "response": { + "$ref": "Tag" + }, + "scopes": [ + "https://www.googleapis.com/auth/tagmanager.edit.containers" + ] + } + } + }, + "triggers": { + "methods": { + "create": { + "description": "Creates a GTM Trigger.", + "httpMethod": "POST", + "id": "tagmanager.accounts.containers.triggers.create", + "parameterOrder": [ + "accountId", + "containerId" + ], + "parameters": { + "accountId": { + "description": "The GTM Account ID.", + "location": "path", + "required": true, + "type": "string" + }, + "containerId": { + "description": "The GTM Container ID.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "accounts/{accountId}/containers/{containerId}/triggers", + "request": { + "$ref": "Trigger" + }, + "response": { + "$ref": "Trigger" + }, + "scopes": [ + "https://www.googleapis.com/auth/tagmanager.edit.containers" + ] + }, + "delete": { + "description": "Deletes a GTM Trigger.", + "httpMethod": "DELETE", + "id": "tagmanager.accounts.containers.triggers.delete", + "parameterOrder": [ + "accountId", + "containerId", + "triggerId" + ], + "parameters": { + "accountId": { + "description": "The GTM Account ID.", + "location": "path", + "required": true, + "type": "string" + }, + "containerId": { + "description": "The GTM Container ID.", + "location": "path", + "required": true, + "type": "string" + }, + "triggerId": { + "description": "The GTM Trigger ID.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "accounts/{accountId}/containers/{containerId}/triggers/{triggerId}", + "scopes": [ + "https://www.googleapis.com/auth/tagmanager.edit.containers" + ] + }, + "get": { + "description": "Gets a GTM Trigger.", + "httpMethod": "GET", + "id": "tagmanager.accounts.containers.triggers.get", + "parameterOrder": [ + "accountId", + "containerId", + "triggerId" + ], + "parameters": { + "accountId": { + "description": "The GTM Account ID.", + "location": "path", + "required": true, + "type": "string" + }, + "containerId": { + "description": "The GTM Container ID.", + "location": "path", + "required": true, + "type": "string" + }, + "triggerId": { + "description": "The GTM Trigger ID.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "accounts/{accountId}/containers/{containerId}/triggers/{triggerId}", + "response": { + "$ref": "Trigger" + }, + "scopes": [ + "https://www.googleapis.com/auth/tagmanager.edit.containers", + "https://www.googleapis.com/auth/tagmanager.readonly" + ] + }, + "list": { + "description": "Lists all GTM Triggers of a Container.", + "httpMethod": "GET", + "id": "tagmanager.accounts.containers.triggers.list", + "parameterOrder": [ + "accountId", + "containerId" + ], + "parameters": { + "accountId": { + "description": "The GTM Account ID.", + "location": "path", + "required": true, + "type": "string" + }, + "containerId": { + "description": "The GTM Container ID.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "accounts/{accountId}/containers/{containerId}/triggers", + "response": { + "$ref": "ListTriggersResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/tagmanager.edit.containers", + "https://www.googleapis.com/auth/tagmanager.readonly" + ] + }, + "update": { + "description": "Updates a GTM Trigger.", + "httpMethod": "PUT", + "id": "tagmanager.accounts.containers.triggers.update", + "parameterOrder": [ + "accountId", + "containerId", + "triggerId" + ], + "parameters": { + "accountId": { + "description": "The GTM Account ID.", + "location": "path", + "required": true, + "type": "string" + }, + "containerId": { + "description": "The GTM Container ID.", + "location": "path", + "required": true, + "type": "string" + }, + "fingerprint": { + "description": "When provided, this fingerprint must match the fingerprint of the trigger in storage.", + "location": "query", + "type": "string" + }, + "triggerId": { + "description": "The GTM Trigger ID.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "accounts/{accountId}/containers/{containerId}/triggers/{triggerId}", + "request": { + "$ref": "Trigger" + }, + "response": { + "$ref": "Trigger" + }, + "scopes": [ + "https://www.googleapis.com/auth/tagmanager.edit.containers" + ] + } + } + }, + "variables": { + "methods": { + "create": { + "description": "Creates a GTM Variable.", + "httpMethod": "POST", + "id": "tagmanager.accounts.containers.variables.create", + "parameterOrder": [ + "accountId", + "containerId" + ], + "parameters": { + "accountId": { + "description": "The GTM Account ID.", + "location": "path", + "required": true, + "type": "string" + }, + "containerId": { + "description": "The GTM Container ID.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "accounts/{accountId}/containers/{containerId}/variables", + "request": { + "$ref": "Variable" + }, + "response": { + "$ref": "Variable" + }, + "scopes": [ + "https://www.googleapis.com/auth/tagmanager.edit.containers" + ] + }, + "delete": { + "description": "Deletes a GTM Variable.", + "httpMethod": "DELETE", + "id": "tagmanager.accounts.containers.variables.delete", + "parameterOrder": [ + "accountId", + "containerId", + "variableId" + ], + "parameters": { + "accountId": { + "description": "The GTM Account ID.", + "location": "path", + "required": true, + "type": "string" + }, + "containerId": { + "description": "The GTM Container ID.", + "location": "path", + "required": true, + "type": "string" + }, + "variableId": { + "description": "The GTM Variable ID.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "accounts/{accountId}/containers/{containerId}/variables/{variableId}", + "scopes": [ + "https://www.googleapis.com/auth/tagmanager.edit.containers" + ] + }, + "get": { + "description": "Gets a GTM Variable.", + "httpMethod": "GET", + "id": "tagmanager.accounts.containers.variables.get", + "parameterOrder": [ + "accountId", + "containerId", + "variableId" + ], + "parameters": { + "accountId": { + "description": "The GTM Account ID.", + "location": "path", + "required": true, + "type": "string" + }, + "containerId": { + "description": "The GTM Container ID.", + "location": "path", + "required": true, + "type": "string" + }, + "variableId": { + "description": "The GTM Variable ID.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "accounts/{accountId}/containers/{containerId}/variables/{variableId}", + "response": { + "$ref": "Variable" + }, + "scopes": [ + "https://www.googleapis.com/auth/tagmanager.edit.containers", + "https://www.googleapis.com/auth/tagmanager.readonly" + ] + }, + "list": { + "description": "Lists all GTM Variables of a Container.", + "httpMethod": "GET", + "id": "tagmanager.accounts.containers.variables.list", + "parameterOrder": [ + "accountId", + "containerId" + ], + "parameters": { + "accountId": { + "description": "The GTM Account ID.", + "location": "path", + "required": true, + "type": "string" + }, + "containerId": { + "description": "The GTM Container ID.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "accounts/{accountId}/containers/{containerId}/variables", + "response": { + "$ref": "ListVariablesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/tagmanager.edit.containers", + "https://www.googleapis.com/auth/tagmanager.readonly" + ] + }, + "update": { + "description": "Updates a GTM Variable.", + "httpMethod": "PUT", + "id": "tagmanager.accounts.containers.variables.update", + "parameterOrder": [ + "accountId", + "containerId", + "variableId" + ], + "parameters": { + "accountId": { + "description": "The GTM Account ID.", + "location": "path", + "required": true, + "type": "string" + }, + "containerId": { + "description": "The GTM Container ID.", + "location": "path", + "required": true, + "type": "string" + }, + "fingerprint": { + "description": "When provided, this fingerprint must match the fingerprint of the variable in storage.", + "location": "query", + "type": "string" + }, + "variableId": { + "description": "The GTM Variable ID.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "accounts/{accountId}/containers/{containerId}/variables/{variableId}", + "request": { + "$ref": "Variable" + }, + "response": { + "$ref": "Variable" + }, + "scopes": [ + "https://www.googleapis.com/auth/tagmanager.edit.containers" + ] + } + } + }, + "versions": { + "methods": { + "create": { + "description": "Creates a Container Version.", + "httpMethod": "POST", + "id": "tagmanager.accounts.containers.versions.create", + "parameterOrder": [ + "accountId", + "containerId" + ], + "parameters": { + "accountId": { + "description": "The GTM Account ID.", + "location": "path", + "required": true, + "type": "string" + }, + "containerId": { + "description": "The GTM Container ID.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "accounts/{accountId}/containers/{containerId}/versions", + "request": { + "$ref": "CreateContainerVersionRequestVersionOptions" + }, + "response": { + "$ref": "CreateContainerVersionResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/tagmanager.edit.containerversions" + ] + }, + "delete": { + "description": "Deletes a Container Version.", + "httpMethod": "DELETE", + "id": "tagmanager.accounts.containers.versions.delete", + "parameterOrder": [ + "accountId", + "containerId", + "containerVersionId" + ], + "parameters": { + "accountId": { + "description": "The GTM Account ID.", + "location": "path", + "required": true, + "type": "string" + }, + "containerId": { + "description": "The GTM Container ID.", + "location": "path", + "required": true, + "type": "string" + }, + "containerVersionId": { + "description": "The GTM Container Version ID.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "accounts/{accountId}/containers/{containerId}/versions/{containerVersionId}", + "scopes": [ + "https://www.googleapis.com/auth/tagmanager.edit.containerversions" + ] + }, + "get": { + "description": "Gets a Container Version.", + "httpMethod": "GET", + "id": "tagmanager.accounts.containers.versions.get", + "parameterOrder": [ + "accountId", + "containerId", + "containerVersionId" + ], + "parameters": { + "accountId": { + "description": "The GTM Account ID.", + "location": "path", + "required": true, + "type": "string" + }, + "containerId": { + "description": "The GTM Container ID.", + "location": "path", + "required": true, + "type": "string" + }, + "containerVersionId": { + "description": "The GTM Container Version ID. Specify published to retrieve the currently published version.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "accounts/{accountId}/containers/{containerId}/versions/{containerVersionId}", + "response": { + "$ref": "ContainerVersion" + }, + "scopes": [ + "https://www.googleapis.com/auth/tagmanager.edit.containers", + "https://www.googleapis.com/auth/tagmanager.edit.containerversions", + "https://www.googleapis.com/auth/tagmanager.readonly" + ] + }, + "list": { + "description": "Lists all Container Versions of a GTM Container.", + "httpMethod": "GET", + "id": "tagmanager.accounts.containers.versions.list", + "parameterOrder": [ + "accountId", + "containerId" + ], + "parameters": { + "accountId": { + "description": "The GTM Account ID.", + "location": "path", + "required": true, + "type": "string" + }, + "containerId": { + "description": "The GTM Container ID.", + "location": "path", + "required": true, + "type": "string" + }, + "headers": { + "default": "false", + "description": "Retrieve headers only when true.", + "location": "query", + "type": "boolean" + }, + "includeDeleted": { + "default": "false", + "description": "Also retrieve deleted (archived) versions when true.", + "location": "query", + "type": "boolean" + } + }, + "path": "accounts/{accountId}/containers/{containerId}/versions", + "response": { + "$ref": "ListContainerVersionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/tagmanager.edit.containers", + "https://www.googleapis.com/auth/tagmanager.edit.containerversions", + "https://www.googleapis.com/auth/tagmanager.readonly" + ] + }, + "publish": { + "description": "Publishes a Container Version.", + "httpMethod": "POST", + "id": "tagmanager.accounts.containers.versions.publish", + "parameterOrder": [ + "accountId", + "containerId", + "containerVersionId" + ], + "parameters": { + "accountId": { + "description": "The GTM Account ID.", + "location": "path", + "required": true, + "type": "string" + }, + "containerId": { + "description": "The GTM Container ID.", + "location": "path", + "required": true, + "type": "string" + }, + "containerVersionId": { + "description": "The GTM Container Version ID.", + "location": "path", + "required": true, + "type": "string" + }, + "fingerprint": { + "description": "When provided, this fingerprint must match the fingerprint of the container version in storage.", + "location": "query", + "type": "string" + } + }, + "path": "accounts/{accountId}/containers/{containerId}/versions/{containerVersionId}/publish", + "response": { + "$ref": "PublishContainerVersionResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/tagmanager.publish" + ] + }, + "restore": { + "description": "Restores a Container Version. This will overwrite the container's current configuration (including its variables, triggers and tags). The operation will not have any effect on the version that is being served (i.e. the published version).", + "httpMethod": "POST", + "id": "tagmanager.accounts.containers.versions.restore", + "parameterOrder": [ + "accountId", + "containerId", + "containerVersionId" + ], + "parameters": { + "accountId": { + "description": "The GTM Account ID.", + "location": "path", + "required": true, + "type": "string" + }, + "containerId": { + "description": "The GTM Container ID.", + "location": "path", + "required": true, + "type": "string" + }, + "containerVersionId": { + "description": "The GTM Container Version ID.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "accounts/{accountId}/containers/{containerId}/versions/{containerVersionId}/restore", + "response": { + "$ref": "ContainerVersion" + }, + "scopes": [ + "https://www.googleapis.com/auth/tagmanager.edit.containers" + ] + }, + "undelete": { + "description": "Undeletes a Container Version.", + "httpMethod": "POST", + "id": "tagmanager.accounts.containers.versions.undelete", + "parameterOrder": [ + "accountId", + "containerId", + "containerVersionId" + ], + "parameters": { + "accountId": { + "description": "The GTM Account ID.", + "location": "path", + "required": true, + "type": "string" + }, + "containerId": { + "description": "The GTM Container ID.", + "location": "path", + "required": true, + "type": "string" + }, + "containerVersionId": { + "description": "The GTM Container Version ID.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "accounts/{accountId}/containers/{containerId}/versions/{containerVersionId}/undelete", + "response": { + "$ref": "ContainerVersion" + }, + "scopes": [ + "https://www.googleapis.com/auth/tagmanager.edit.containerversions" + ] + }, + "update": { + "description": "Updates a Container Version.", + "httpMethod": "PUT", + "id": "tagmanager.accounts.containers.versions.update", + "parameterOrder": [ + "accountId", + "containerId", + "containerVersionId" + ], + "parameters": { + "accountId": { + "description": "The GTM Account ID.", + "location": "path", + "required": true, + "type": "string" + }, + "containerId": { + "description": "The GTM Container ID.", + "location": "path", + "required": true, + "type": "string" + }, + "containerVersionId": { + "description": "The GTM Container Version ID.", + "location": "path", + "required": true, + "type": "string" + }, + "fingerprint": { + "description": "When provided, this fingerprint must match the fingerprint of the container version in storage.", + "location": "query", + "type": "string" + } + }, + "path": "accounts/{accountId}/containers/{containerId}/versions/{containerVersionId}", + "request": { + "$ref": "ContainerVersion" + }, + "response": { + "$ref": "ContainerVersion" + }, + "scopes": [ + "https://www.googleapis.com/auth/tagmanager.edit.containerversions" + ] + } + } + } + } + }, + "permissions": { + "methods": { + "create": { + "description": "Creates a user's Account \u0026 Container Permissions.", + "httpMethod": "POST", + "id": "tagmanager.accounts.permissions.create", + "parameterOrder": [ + "accountId" + ], + "parameters": { + "accountId": { + "description": "The GTM Account ID.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "accounts/{accountId}/permissions", + "request": { + "$ref": "UserAccess" + }, + "response": { + "$ref": "UserAccess" + }, + "scopes": [ + "https://www.googleapis.com/auth/tagmanager.manage.users" + ] + }, + "delete": { + "description": "Removes a user from the account, revoking access to it and all of its containers.", + "httpMethod": "DELETE", + "id": "tagmanager.accounts.permissions.delete", + "parameterOrder": [ + "accountId", + "permissionId" + ], + "parameters": { + "accountId": { + "description": "The GTM Account ID.", + "location": "path", + "required": true, + "type": "string" + }, + "permissionId": { + "description": "The GTM User ID.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "accounts/{accountId}/permissions/{permissionId}", + "scopes": [ + "https://www.googleapis.com/auth/tagmanager.manage.users" + ] + }, + "get": { + "description": "Gets a user's Account \u0026 Container Permissions.", + "httpMethod": "GET", + "id": "tagmanager.accounts.permissions.get", + "parameterOrder": [ + "accountId", + "permissionId" + ], + "parameters": { + "accountId": { + "description": "The GTM Account ID.", + "location": "path", + "required": true, + "type": "string" + }, + "permissionId": { + "description": "The GTM User ID.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "accounts/{accountId}/permissions/{permissionId}", + "response": { + "$ref": "UserAccess" + }, + "scopes": [ + "https://www.googleapis.com/auth/tagmanager.manage.users" + ] + }, + "list": { + "description": "List all users that have access to the account along with Account and Container Permissions granted to each of them.", + "httpMethod": "GET", + "id": "tagmanager.accounts.permissions.list", + "parameterOrder": [ + "accountId" + ], + "parameters": { + "accountId": { + "description": "The GTM Account ID. @required tagmanager.accounts.permissions.list", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "accounts/{accountId}/permissions", + "response": { + "$ref": "ListAccountUsersResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/tagmanager.manage.users" + ] + }, + "update": { + "description": "Updates a user's Account \u0026 Container Permissions.", + "httpMethod": "PUT", + "id": "tagmanager.accounts.permissions.update", + "parameterOrder": [ + "accountId", + "permissionId" + ], + "parameters": { + "accountId": { + "description": "The GTM Account ID.", + "location": "path", + "required": true, + "type": "string" + }, + "permissionId": { + "description": "The GTM User ID.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "accounts/{accountId}/permissions/{permissionId}", + "request": { + "$ref": "UserAccess" + }, + "response": { + "$ref": "UserAccess" + }, + "scopes": [ + "https://www.googleapis.com/auth/tagmanager.manage.users" + ] + } + } + } } - }, - "parameterOrder": [ - "accountId" - ], - "response": { - "$ref": "Account" - }, - "scopes": [ - "https://www.googleapis.com/auth/tagmanager.edit.containers", - "https://www.googleapis.com/auth/tagmanager.manage.accounts", - "https://www.googleapis.com/auth/tagmanager.readonly" - ] - }, - "list": { - "id": "tagmanager.accounts.list", - "path": "accounts", - "httpMethod": "GET", - "description": "Lists all GTM Accounts that a user has access to.", - "response": { - "$ref": "ListAccountsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/tagmanager.edit.containers", - "https://www.googleapis.com/auth/tagmanager.manage.accounts", - "https://www.googleapis.com/auth/tagmanager.readonly" - ] - }, - "update": { - "id": "tagmanager.accounts.update", - "path": "accounts/{accountId}", - "httpMethod": "PUT", - "description": "Updates a GTM Account.", - "parameters": { - "accountId": { - "type": "string", - "description": "The GTM Account ID.", - "required": true, - "location": "path" - }, - "fingerprint": { - "type": "string", - "description": "When provided, this fingerprint must match the fingerprint of the account in storage.", - "location": "query" - } - }, - "parameterOrder": [ - "accountId" - ], - "request": { - "$ref": "Account" - }, - "response": { - "$ref": "Account" - }, - "scopes": [ - "https://www.googleapis.com/auth/tagmanager.manage.accounts" - ] } - }, - "resources": { - "containers": { - "methods": { - "create": { - "id": "tagmanager.accounts.containers.create", - "path": "accounts/{accountId}/containers", - "httpMethod": "POST", - "description": "Creates a Container.", - "parameters": { + }, + "revision": "20171108", + "rootUrl": "https://www.googleapis.com/", + "schemas": { + "Account": { + "description": "Represents a Google Tag Manager Account.", + "id": "Account", + "properties": { "accountId": { - "type": "string", - "description": "The GTM Account ID.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "accountId" - ], - "request": { - "$ref": "Container" - }, - "response": { - "$ref": "Container" - }, - "scopes": [ - "https://www.googleapis.com/auth/tagmanager.edit.containers" - ] - }, - "delete": { - "id": "tagmanager.accounts.containers.delete", - "path": "accounts/{accountId}/containers/{containerId}", - "httpMethod": "DELETE", - "description": "Deletes a Container.", - "parameters": { - "accountId": { - "type": "string", - "description": "The GTM Account ID.", - "required": true, - "location": "path" - }, - "containerId": { - "type": "string", - "description": "The GTM Container ID.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "accountId", - "containerId" - ], - "scopes": [ - "https://www.googleapis.com/auth/tagmanager.delete.containers" - ] - }, - "get": { - "id": "tagmanager.accounts.containers.get", - "path": "accounts/{accountId}/containers/{containerId}", - "httpMethod": "GET", - "description": "Gets a Container.", - "parameters": { - "accountId": { - "type": "string", - "description": "The GTM Account ID.", - "required": true, - "location": "path" - }, - "containerId": { - "type": "string", - "description": "The GTM Container ID.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "accountId", - "containerId" - ], - "response": { - "$ref": "Container" - }, - "scopes": [ - "https://www.googleapis.com/auth/tagmanager.edit.containers", - "https://www.googleapis.com/auth/tagmanager.readonly" - ] - }, - "list": { - "id": "tagmanager.accounts.containers.list", - "path": "accounts/{accountId}/containers", - "httpMethod": "GET", - "description": "Lists all Containers that belongs to a GTM Account.", - "parameters": { - "accountId": { - "type": "string", - "description": "The GTM Account ID.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "accountId" - ], - "response": { - "$ref": "ListContainersResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/tagmanager.edit.containers", - "https://www.googleapis.com/auth/tagmanager.readonly" - ] - }, - "update": { - "id": "tagmanager.accounts.containers.update", - "path": "accounts/{accountId}/containers/{containerId}", - "httpMethod": "PUT", - "description": "Updates a Container.", - "parameters": { - "accountId": { - "type": "string", - "description": "The GTM Account ID.", - "required": true, - "location": "path" - }, - "containerId": { - "type": "string", - "description": "The GTM Container ID.", - "required": true, - "location": "path" + "description": "The Account ID uniquely identifies the GTM Account.", + "type": "string" }, "fingerprint": { - "type": "string", - "description": "When provided, this fingerprint must match the fingerprint of the container in storage.", - "location": "query" + "description": "The fingerprint of the GTM Account as computed at storage time. This value is recomputed whenever the account is modified.", + "type": "string" + }, + "name": { + "description": "Account display name.", + "type": "string" + }, + "shareData": { + "description": "Whether the account shares data anonymously with Google and others.", + "type": "boolean" } - }, - "parameterOrder": [ - "accountId", - "containerId" - ], - "request": { - "$ref": "Container" - }, - "response": { - "$ref": "Container" - }, - "scopes": [ - "https://www.googleapis.com/auth/tagmanager.edit.containers" - ] - } - }, - "resources": { - "environments": { - "methods": { - "create": { - "id": "tagmanager.accounts.containers.environments.create", - "path": "accounts/{accountId}/containers/{containerId}/environments", - "httpMethod": "POST", - "description": "Creates a GTM Environment.", - "parameters": { - "accountId": { - "type": "string", - "description": "The GTM Account ID.", - "required": true, - "location": "path" - }, - "containerId": { - "type": "string", - "description": "The GTM Container ID.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "accountId", - "containerId" - ], - "request": { - "$ref": "Environment" - }, - "response": { - "$ref": "Environment" - }, - "scopes": [ - "https://www.googleapis.com/auth/tagmanager.edit.containers" - ] - }, - "delete": { - "id": "tagmanager.accounts.containers.environments.delete", - "path": "accounts/{accountId}/containers/{containerId}/environments/{environmentId}", - "httpMethod": "DELETE", - "description": "Deletes a GTM Environment.", - "parameters": { - "accountId": { - "type": "string", - "description": "The GTM Account ID.", - "required": true, - "location": "path" - }, - "containerId": { - "type": "string", - "description": "The GTM Container ID.", - "required": true, - "location": "path" - }, - "environmentId": { - "type": "string", - "description": "The GTM Environment ID.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "accountId", - "containerId", - "environmentId" - ], - "scopes": [ - "https://www.googleapis.com/auth/tagmanager.edit.containers" - ] - }, - "get": { - "id": "tagmanager.accounts.containers.environments.get", - "path": "accounts/{accountId}/containers/{containerId}/environments/{environmentId}", - "httpMethod": "GET", - "description": "Gets a GTM Environment.", - "parameters": { - "accountId": { - "type": "string", - "description": "The GTM Account ID.", - "required": true, - "location": "path" - }, - "containerId": { - "type": "string", - "description": "The GTM Container ID.", - "required": true, - "location": "path" - }, - "environmentId": { - "type": "string", - "description": "The GTM Environment ID.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "accountId", - "containerId", - "environmentId" - ], - "response": { - "$ref": "Environment" - }, - "scopes": [ - "https://www.googleapis.com/auth/tagmanager.edit.containers", - "https://www.googleapis.com/auth/tagmanager.readonly" - ] - }, - "list": { - "id": "tagmanager.accounts.containers.environments.list", - "path": "accounts/{accountId}/containers/{containerId}/environments", - "httpMethod": "GET", - "description": "Lists all GTM Environments of a GTM Container.", - "parameters": { - "accountId": { - "type": "string", - "description": "The GTM Account ID.", - "required": true, - "location": "path" - }, - "containerId": { - "type": "string", - "description": "The GTM Container ID.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "accountId", - "containerId" - ], - "response": { - "$ref": "ListEnvironmentsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/tagmanager.edit.containers", - "https://www.googleapis.com/auth/tagmanager.readonly" - ] - }, - "patch": { - "id": "tagmanager.accounts.containers.environments.patch", - "path": "accounts/{accountId}/containers/{containerId}/environments/{environmentId}", - "httpMethod": "PATCH", - "description": "Updates a GTM Environment. This method supports patch semantics.", - "parameters": { - "accountId": { - "type": "string", - "description": "The GTM Account ID.", - "required": true, - "location": "path" - }, - "containerId": { - "type": "string", - "description": "The GTM Container ID.", - "required": true, - "location": "path" - }, - "environmentId": { - "type": "string", - "description": "The GTM Environment ID.", - "required": true, - "location": "path" - }, - "fingerprint": { - "type": "string", - "description": "When provided, this fingerprint must match the fingerprint of the environment in storage.", - "location": "query" - } - }, - "parameterOrder": [ - "accountId", - "containerId", - "environmentId" - ], - "request": { - "$ref": "Environment" - }, - "response": { - "$ref": "Environment" - }, - "scopes": [ - "https://www.googleapis.com/auth/tagmanager.edit.containers" - ] - }, - "update": { - "id": "tagmanager.accounts.containers.environments.update", - "path": "accounts/{accountId}/containers/{containerId}/environments/{environmentId}", - "httpMethod": "PUT", - "description": "Updates a GTM Environment.", - "parameters": { - "accountId": { - "type": "string", - "description": "The GTM Account ID.", - "required": true, - "location": "path" - }, - "containerId": { - "type": "string", - "description": "The GTM Container ID.", - "required": true, - "location": "path" - }, - "environmentId": { - "type": "string", - "description": "The GTM Environment ID.", - "required": true, - "location": "path" - }, - "fingerprint": { - "type": "string", - "description": "When provided, this fingerprint must match the fingerprint of the environment in storage.", - "location": "query" - } - }, - "parameterOrder": [ - "accountId", - "containerId", - "environmentId" - ], - "request": { - "$ref": "Environment" - }, - "response": { - "$ref": "Environment" - }, - "scopes": [ - "https://www.googleapis.com/auth/tagmanager.edit.containers" - ] - } - } }, - "folders": { - "methods": { - "create": { - "id": "tagmanager.accounts.containers.folders.create", - "path": "accounts/{accountId}/containers/{containerId}/folders", - "httpMethod": "POST", - "description": "Creates a GTM Folder.", - "parameters": { - "accountId": { - "type": "string", - "description": "The GTM Account ID.", - "required": true, - "location": "path" - }, - "containerId": { - "type": "string", - "description": "The GTM Container ID.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "accountId", - "containerId" - ], - "request": { - "$ref": "Folder" - }, - "response": { - "$ref": "Folder" - }, - "scopes": [ - "https://www.googleapis.com/auth/tagmanager.edit.containers" - ] - }, - "delete": { - "id": "tagmanager.accounts.containers.folders.delete", - "path": "accounts/{accountId}/containers/{containerId}/folders/{folderId}", - "httpMethod": "DELETE", - "description": "Deletes a GTM Folder.", - "parameters": { - "accountId": { - "type": "string", - "description": "The GTM Account ID.", - "required": true, - "location": "path" - }, - "containerId": { - "type": "string", - "description": "The GTM Container ID.", - "required": true, - "location": "path" - }, - "folderId": { - "type": "string", - "description": "The GTM Folder ID.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "accountId", - "containerId", - "folderId" - ], - "scopes": [ - "https://www.googleapis.com/auth/tagmanager.edit.containers" - ] - }, - "get": { - "id": "tagmanager.accounts.containers.folders.get", - "path": "accounts/{accountId}/containers/{containerId}/folders/{folderId}", - "httpMethod": "GET", - "description": "Gets a GTM Folder.", - "parameters": { - "accountId": { - "type": "string", - "description": "The GTM Account ID.", - "required": true, - "location": "path" - }, - "containerId": { - "type": "string", - "description": "The GTM Container ID.", - "required": true, - "location": "path" - }, - "folderId": { - "type": "string", - "description": "The GTM Folder ID.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "accountId", - "containerId", - "folderId" - ], - "response": { - "$ref": "Folder" - }, - "scopes": [ - "https://www.googleapis.com/auth/tagmanager.edit.containers", - "https://www.googleapis.com/auth/tagmanager.readonly" - ] - }, - "list": { - "id": "tagmanager.accounts.containers.folders.list", - "path": "accounts/{accountId}/containers/{containerId}/folders", - "httpMethod": "GET", - "description": "Lists all GTM Folders of a Container.", - "parameters": { - "accountId": { - "type": "string", - "description": "The GTM Account ID.", - "required": true, - "location": "path" - }, - "containerId": { - "type": "string", - "description": "The GTM Container ID.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "accountId", - "containerId" - ], - "response": { - "$ref": "ListFoldersResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/tagmanager.edit.containers", - "https://www.googleapis.com/auth/tagmanager.readonly" - ] - }, - "update": { - "id": "tagmanager.accounts.containers.folders.update", - "path": "accounts/{accountId}/containers/{containerId}/folders/{folderId}", - "httpMethod": "PUT", - "description": "Updates a GTM Folder.", - "parameters": { - "accountId": { - "type": "string", - "description": "The GTM Account ID.", - "required": true, - "location": "path" - }, - "containerId": { - "type": "string", - "description": "The GTM Container ID.", - "required": true, - "location": "path" - }, - "fingerprint": { - "type": "string", - "description": "When provided, this fingerprint must match the fingerprint of the folder in storage.", - "location": "query" - }, - "folderId": { - "type": "string", - "description": "The GTM Folder ID.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "accountId", - "containerId", - "folderId" - ], - "request": { - "$ref": "Folder" - }, - "response": { - "$ref": "Folder" - }, - "scopes": [ - "https://www.googleapis.com/auth/tagmanager.edit.containers" - ] - } - }, - "resources": { - "entities": { - "methods": { - "list": { - "id": "tagmanager.accounts.containers.folders.entities.list", - "path": "accounts/{accountId}/containers/{containerId}/folders/{folderId}/entities", - "httpMethod": "GET", - "description": "List all entities in a GTM Folder.", - "parameters": { - "accountId": { - "type": "string", - "description": "The GTM Account ID.", - "required": true, - "location": "path" - }, - "containerId": { - "type": "string", - "description": "The GTM Container ID.", - "required": true, - "location": "path" - }, - "folderId": { - "type": "string", - "description": "The GTM Folder ID.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "accountId", - "containerId", - "folderId" - ], - "response": { - "$ref": "FolderEntities" - }, - "scopes": [ - "https://www.googleapis.com/auth/tagmanager.edit.containers", - "https://www.googleapis.com/auth/tagmanager.readonly" - ] - } - } - } - } - }, - "move_folders": { - "methods": { - "update": { - "id": "tagmanager.accounts.containers.move_folders.update", - "path": "accounts/{accountId}/containers/{containerId}/move_folders/{folderId}", - "httpMethod": "PUT", - "description": "Moves entities to a GTM Folder.", - "parameters": { - "accountId": { - "type": "string", - "description": "The GTM Account ID.", - "required": true, - "location": "path" - }, - "containerId": { - "type": "string", - "description": "The GTM Container ID.", - "required": true, - "location": "path" - }, - "folderId": { - "type": "string", - "description": "The GTM Folder ID.", - "required": true, - "location": "path" - }, - "tagId": { - "type": "string", - "description": "The tags to be moved to the folder.", - "repeated": true, - "location": "query" - }, - "triggerId": { - "type": "string", - "description": "The triggers to be moved to the folder.", - "repeated": true, - "location": "query" - }, - "variableId": { - "type": "string", - "description": "The variables to be moved to the folder.", - "repeated": true, - "location": "query" - } - }, - "parameterOrder": [ - "accountId", - "containerId", - "folderId" - ], - "request": { - "$ref": "Folder" - }, - "scopes": [ - "https://www.googleapis.com/auth/tagmanager.edit.containers" - ] - } - } - }, - "reauthorize_environments": { - "methods": { - "update": { - "id": "tagmanager.accounts.containers.reauthorize_environments.update", - "path": "accounts/{accountId}/containers/{containerId}/reauthorize_environments/{environmentId}", - "httpMethod": "PUT", - "description": "Re-generates the authorization code for a GTM Environment.", - "parameters": { - "accountId": { - "type": "string", - "description": "The GTM Account ID.", - "required": true, - "location": "path" - }, - "containerId": { - "type": "string", - "description": "The GTM Container ID.", - "required": true, - "location": "path" - }, - "environmentId": { - "type": "string", - "description": "The GTM Environment ID.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "accountId", - "containerId", - "environmentId" - ], - "request": { - "$ref": "Environment" - }, - "response": { - "$ref": "Environment" - }, - "scopes": [ - "https://www.googleapis.com/auth/tagmanager.publish" - ] - } - } - }, - "tags": { - "methods": { - "create": { - "id": "tagmanager.accounts.containers.tags.create", - "path": "accounts/{accountId}/containers/{containerId}/tags", - "httpMethod": "POST", - "description": "Creates a GTM Tag.", - "parameters": { - "accountId": { - "type": "string", - "description": "The GTM Account ID.", - "required": true, - "location": "path" - }, - "containerId": { - "type": "string", - "description": "The GTM Container ID.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "accountId", - "containerId" - ], - "request": { - "$ref": "Tag" - }, - "response": { - "$ref": "Tag" - }, - "scopes": [ - "https://www.googleapis.com/auth/tagmanager.edit.containers" - ] - }, - "delete": { - "id": "tagmanager.accounts.containers.tags.delete", - "path": "accounts/{accountId}/containers/{containerId}/tags/{tagId}", - "httpMethod": "DELETE", - "description": "Deletes a GTM Tag.", - "parameters": { - "accountId": { - "type": "string", - "description": "The GTM Account ID.", - "required": true, - "location": "path" - }, - "containerId": { - "type": "string", - "description": "The GTM Container ID.", - "required": true, - "location": "path" - }, - "tagId": { - "type": "string", - "description": "The GTM Tag ID.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "accountId", - "containerId", - "tagId" - ], - "scopes": [ - "https://www.googleapis.com/auth/tagmanager.edit.containers" - ] - }, - "get": { - "id": "tagmanager.accounts.containers.tags.get", - "path": "accounts/{accountId}/containers/{containerId}/tags/{tagId}", - "httpMethod": "GET", - "description": "Gets a GTM Tag.", - "parameters": { - "accountId": { - "type": "string", - "description": "The GTM Account ID.", - "required": true, - "location": "path" - }, - "containerId": { - "type": "string", - "description": "The GTM Container ID.", - "required": true, - "location": "path" - }, - "tagId": { - "type": "string", - "description": "The GTM Tag ID.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "accountId", - "containerId", - "tagId" - ], - "response": { - "$ref": "Tag" - }, - "scopes": [ - "https://www.googleapis.com/auth/tagmanager.edit.containers", - "https://www.googleapis.com/auth/tagmanager.readonly" - ] - }, - "list": { - "id": "tagmanager.accounts.containers.tags.list", - "path": "accounts/{accountId}/containers/{containerId}/tags", - "httpMethod": "GET", - "description": "Lists all GTM Tags of a Container.", - "parameters": { - "accountId": { - "type": "string", - "description": "The GTM Account ID.", - "required": true, - "location": "path" - }, - "containerId": { - "type": "string", - "description": "The GTM Container ID.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "accountId", - "containerId" - ], - "response": { - "$ref": "ListTagsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/tagmanager.edit.containers", - "https://www.googleapis.com/auth/tagmanager.readonly" - ] - }, - "update": { - "id": "tagmanager.accounts.containers.tags.update", - "path": "accounts/{accountId}/containers/{containerId}/tags/{tagId}", - "httpMethod": "PUT", - "description": "Updates a GTM Tag.", - "parameters": { - "accountId": { - "type": "string", - "description": "The GTM Account ID.", - "required": true, - "location": "path" - }, - "containerId": { - "type": "string", - "description": "The GTM Container ID.", - "required": true, - "location": "path" - }, - "fingerprint": { - "type": "string", - "description": "When provided, this fingerprint must match the fingerprint of the tag in storage.", - "location": "query" - }, - "tagId": { - "type": "string", - "description": "The GTM Tag ID.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "accountId", - "containerId", - "tagId" - ], - "request": { - "$ref": "Tag" - }, - "response": { - "$ref": "Tag" - }, - "scopes": [ - "https://www.googleapis.com/auth/tagmanager.edit.containers" - ] - } - } - }, - "triggers": { - "methods": { - "create": { - "id": "tagmanager.accounts.containers.triggers.create", - "path": "accounts/{accountId}/containers/{containerId}/triggers", - "httpMethod": "POST", - "description": "Creates a GTM Trigger.", - "parameters": { - "accountId": { - "type": "string", - "description": "The GTM Account ID.", - "required": true, - "location": "path" - }, - "containerId": { - "type": "string", - "description": "The GTM Container ID.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "accountId", - "containerId" - ], - "request": { - "$ref": "Trigger" - }, - "response": { - "$ref": "Trigger" - }, - "scopes": [ - "https://www.googleapis.com/auth/tagmanager.edit.containers" - ] - }, - "delete": { - "id": "tagmanager.accounts.containers.triggers.delete", - "path": "accounts/{accountId}/containers/{containerId}/triggers/{triggerId}", - "httpMethod": "DELETE", - "description": "Deletes a GTM Trigger.", - "parameters": { - "accountId": { - "type": "string", - "description": "The GTM Account ID.", - "required": true, - "location": "path" - }, - "containerId": { - "type": "string", - "description": "The GTM Container ID.", - "required": true, - "location": "path" - }, - "triggerId": { - "type": "string", - "description": "The GTM Trigger ID.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "accountId", - "containerId", - "triggerId" - ], - "scopes": [ - "https://www.googleapis.com/auth/tagmanager.edit.containers" - ] - }, - "get": { - "id": "tagmanager.accounts.containers.triggers.get", - "path": "accounts/{accountId}/containers/{containerId}/triggers/{triggerId}", - "httpMethod": "GET", - "description": "Gets a GTM Trigger.", - "parameters": { - "accountId": { - "type": "string", - "description": "The GTM Account ID.", - "required": true, - "location": "path" - }, - "containerId": { - "type": "string", - "description": "The GTM Container ID.", - "required": true, - "location": "path" - }, - "triggerId": { - "type": "string", - "description": "The GTM Trigger ID.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "accountId", - "containerId", - "triggerId" - ], - "response": { - "$ref": "Trigger" - }, - "scopes": [ - "https://www.googleapis.com/auth/tagmanager.edit.containers", - "https://www.googleapis.com/auth/tagmanager.readonly" - ] - }, - "list": { - "id": "tagmanager.accounts.containers.triggers.list", - "path": "accounts/{accountId}/containers/{containerId}/triggers", - "httpMethod": "GET", - "description": "Lists all GTM Triggers of a Container.", - "parameters": { - "accountId": { - "type": "string", - "description": "The GTM Account ID.", - "required": true, - "location": "path" - }, - "containerId": { - "type": "string", - "description": "The GTM Container ID.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "accountId", - "containerId" - ], - "response": { - "$ref": "ListTriggersResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/tagmanager.edit.containers", - "https://www.googleapis.com/auth/tagmanager.readonly" - ] - }, - "update": { - "id": "tagmanager.accounts.containers.triggers.update", - "path": "accounts/{accountId}/containers/{containerId}/triggers/{triggerId}", - "httpMethod": "PUT", - "description": "Updates a GTM Trigger.", - "parameters": { - "accountId": { - "type": "string", - "description": "The GTM Account ID.", - "required": true, - "location": "path" - }, - "containerId": { - "type": "string", - "description": "The GTM Container ID.", - "required": true, - "location": "path" - }, - "fingerprint": { - "type": "string", - "description": "When provided, this fingerprint must match the fingerprint of the trigger in storage.", - "location": "query" - }, - "triggerId": { - "type": "string", - "description": "The GTM Trigger ID.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "accountId", - "containerId", - "triggerId" - ], - "request": { - "$ref": "Trigger" - }, - "response": { - "$ref": "Trigger" - }, - "scopes": [ - "https://www.googleapis.com/auth/tagmanager.edit.containers" - ] - } - } - }, - "variables": { - "methods": { - "create": { - "id": "tagmanager.accounts.containers.variables.create", - "path": "accounts/{accountId}/containers/{containerId}/variables", - "httpMethod": "POST", - "description": "Creates a GTM Variable.", - "parameters": { - "accountId": { - "type": "string", - "description": "The GTM Account ID.", - "required": true, - "location": "path" - }, - "containerId": { - "type": "string", - "description": "The GTM Container ID.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "accountId", - "containerId" - ], - "request": { - "$ref": "Variable" - }, - "response": { - "$ref": "Variable" - }, - "scopes": [ - "https://www.googleapis.com/auth/tagmanager.edit.containers" - ] - }, - "delete": { - "id": "tagmanager.accounts.containers.variables.delete", - "path": "accounts/{accountId}/containers/{containerId}/variables/{variableId}", - "httpMethod": "DELETE", - "description": "Deletes a GTM Variable.", - "parameters": { - "accountId": { - "type": "string", - "description": "The GTM Account ID.", - "required": true, - "location": "path" - }, - "containerId": { - "type": "string", - "description": "The GTM Container ID.", - "required": true, - "location": "path" - }, - "variableId": { - "type": "string", - "description": "The GTM Variable ID.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "accountId", - "containerId", - "variableId" - ], - "scopes": [ - "https://www.googleapis.com/auth/tagmanager.edit.containers" - ] - }, - "get": { - "id": "tagmanager.accounts.containers.variables.get", - "path": "accounts/{accountId}/containers/{containerId}/variables/{variableId}", - "httpMethod": "GET", - "description": "Gets a GTM Variable.", - "parameters": { - "accountId": { - "type": "string", - "description": "The GTM Account ID.", - "required": true, - "location": "path" - }, - "containerId": { - "type": "string", - "description": "The GTM Container ID.", - "required": true, - "location": "path" - }, - "variableId": { - "type": "string", - "description": "The GTM Variable ID.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "accountId", - "containerId", - "variableId" - ], - "response": { - "$ref": "Variable" - }, - "scopes": [ - "https://www.googleapis.com/auth/tagmanager.edit.containers", - "https://www.googleapis.com/auth/tagmanager.readonly" - ] - }, - "list": { - "id": "tagmanager.accounts.containers.variables.list", - "path": "accounts/{accountId}/containers/{containerId}/variables", - "httpMethod": "GET", - "description": "Lists all GTM Variables of a Container.", - "parameters": { - "accountId": { - "type": "string", - "description": "The GTM Account ID.", - "required": true, - "location": "path" - }, - "containerId": { - "type": "string", - "description": "The GTM Container ID.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "accountId", - "containerId" - ], - "response": { - "$ref": "ListVariablesResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/tagmanager.edit.containers", - "https://www.googleapis.com/auth/tagmanager.readonly" - ] - }, - "update": { - "id": "tagmanager.accounts.containers.variables.update", - "path": "accounts/{accountId}/containers/{containerId}/variables/{variableId}", - "httpMethod": "PUT", - "description": "Updates a GTM Variable.", - "parameters": { - "accountId": { - "type": "string", - "description": "The GTM Account ID.", - "required": true, - "location": "path" - }, - "containerId": { - "type": "string", - "description": "The GTM Container ID.", - "required": true, - "location": "path" - }, - "fingerprint": { - "type": "string", - "description": "When provided, this fingerprint must match the fingerprint of the variable in storage.", - "location": "query" - }, - "variableId": { - "type": "string", - "description": "The GTM Variable ID.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "accountId", - "containerId", - "variableId" - ], - "request": { - "$ref": "Variable" - }, - "response": { - "$ref": "Variable" - }, - "scopes": [ - "https://www.googleapis.com/auth/tagmanager.edit.containers" - ] - } - } - }, - "versions": { - "methods": { - "create": { - "id": "tagmanager.accounts.containers.versions.create", - "path": "accounts/{accountId}/containers/{containerId}/versions", - "httpMethod": "POST", - "description": "Creates a Container Version.", - "parameters": { - "accountId": { - "type": "string", - "description": "The GTM Account ID.", - "required": true, - "location": "path" - }, - "containerId": { - "type": "string", - "description": "The GTM Container ID.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "accountId", - "containerId" - ], - "request": { - "$ref": "CreateContainerVersionRequestVersionOptions" - }, - "response": { - "$ref": "CreateContainerVersionResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/tagmanager.edit.containerversions" - ] - }, - "delete": { - "id": "tagmanager.accounts.containers.versions.delete", - "path": "accounts/{accountId}/containers/{containerId}/versions/{containerVersionId}", - "httpMethod": "DELETE", - "description": "Deletes a Container Version.", - "parameters": { - "accountId": { - "type": "string", - "description": "The GTM Account ID.", - "required": true, - "location": "path" - }, - "containerId": { - "type": "string", - "description": "The GTM Container ID.", - "required": true, - "location": "path" - }, - "containerVersionId": { - "type": "string", - "description": "The GTM Container Version ID.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "accountId", - "containerId", - "containerVersionId" - ], - "scopes": [ - "https://www.googleapis.com/auth/tagmanager.edit.containerversions" - ] - }, - "get": { - "id": "tagmanager.accounts.containers.versions.get", - "path": "accounts/{accountId}/containers/{containerId}/versions/{containerVersionId}", - "httpMethod": "GET", - "description": "Gets a Container Version.", - "parameters": { - "accountId": { - "type": "string", - "description": "The GTM Account ID.", - "required": true, - "location": "path" - }, - "containerId": { - "type": "string", - "description": "The GTM Container ID.", - "required": true, - "location": "path" - }, - "containerVersionId": { - "type": "string", - "description": "The GTM Container Version ID. Specify published to retrieve the currently published version.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "accountId", - "containerId", - "containerVersionId" - ], - "response": { - "$ref": "ContainerVersion" - }, - "scopes": [ - "https://www.googleapis.com/auth/tagmanager.edit.containers", - "https://www.googleapis.com/auth/tagmanager.edit.containerversions", - "https://www.googleapis.com/auth/tagmanager.readonly" - ] - }, - "list": { - "id": "tagmanager.accounts.containers.versions.list", - "path": "accounts/{accountId}/containers/{containerId}/versions", - "httpMethod": "GET", - "description": "Lists all Container Versions of a GTM Container.", - "parameters": { - "accountId": { - "type": "string", - "description": "The GTM Account ID.", - "required": true, - "location": "path" - }, - "containerId": { - "type": "string", - "description": "The GTM Container ID.", - "required": true, - "location": "path" - }, - "headers": { - "type": "boolean", - "description": "Retrieve headers only when true.", - "default": "false", - "location": "query" - }, - "includeDeleted": { - "type": "boolean", - "description": "Also retrieve deleted (archived) versions when true.", - "default": "false", - "location": "query" - } - }, - "parameterOrder": [ - "accountId", - "containerId" - ], - "response": { - "$ref": "ListContainerVersionsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/tagmanager.edit.containers", - "https://www.googleapis.com/auth/tagmanager.edit.containerversions", - "https://www.googleapis.com/auth/tagmanager.readonly" - ] - }, - "publish": { - "id": "tagmanager.accounts.containers.versions.publish", - "path": "accounts/{accountId}/containers/{containerId}/versions/{containerVersionId}/publish", - "httpMethod": "POST", - "description": "Publishes a Container Version.", - "parameters": { - "accountId": { - "type": "string", - "description": "The GTM Account ID.", - "required": true, - "location": "path" - }, - "containerId": { - "type": "string", - "description": "The GTM Container ID.", - "required": true, - "location": "path" - }, - "containerVersionId": { - "type": "string", - "description": "The GTM Container Version ID.", - "required": true, - "location": "path" - }, - "fingerprint": { - "type": "string", - "description": "When provided, this fingerprint must match the fingerprint of the container version in storage.", - "location": "query" - } - }, - "parameterOrder": [ - "accountId", - "containerId", - "containerVersionId" - ], - "response": { - "$ref": "PublishContainerVersionResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/tagmanager.publish" - ] - }, - "restore": { - "id": "tagmanager.accounts.containers.versions.restore", - "path": "accounts/{accountId}/containers/{containerId}/versions/{containerVersionId}/restore", - "httpMethod": "POST", - "description": "Restores a Container Version. This will overwrite the container's current configuration (including its variables, triggers and tags). The operation will not have any effect on the version that is being served (i.e. the published version).", - "parameters": { - "accountId": { - "type": "string", - "description": "The GTM Account ID.", - "required": true, - "location": "path" - }, - "containerId": { - "type": "string", - "description": "The GTM Container ID.", - "required": true, - "location": "path" - }, - "containerVersionId": { - "type": "string", - "description": "The GTM Container Version ID.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "accountId", - "containerId", - "containerVersionId" - ], - "response": { - "$ref": "ContainerVersion" - }, - "scopes": [ - "https://www.googleapis.com/auth/tagmanager.edit.containers" - ] - }, - "undelete": { - "id": "tagmanager.accounts.containers.versions.undelete", - "path": "accounts/{accountId}/containers/{containerId}/versions/{containerVersionId}/undelete", - "httpMethod": "POST", - "description": "Undeletes a Container Version.", - "parameters": { - "accountId": { - "type": "string", - "description": "The GTM Account ID.", - "required": true, - "location": "path" - }, - "containerId": { - "type": "string", - "description": "The GTM Container ID.", - "required": true, - "location": "path" - }, - "containerVersionId": { - "type": "string", - "description": "The GTM Container Version ID.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "accountId", - "containerId", - "containerVersionId" - ], - "response": { - "$ref": "ContainerVersion" - }, - "scopes": [ - "https://www.googleapis.com/auth/tagmanager.edit.containerversions" - ] - }, - "update": { - "id": "tagmanager.accounts.containers.versions.update", - "path": "accounts/{accountId}/containers/{containerId}/versions/{containerVersionId}", - "httpMethod": "PUT", - "description": "Updates a Container Version.", - "parameters": { - "accountId": { - "type": "string", - "description": "The GTM Account ID.", - "required": true, - "location": "path" - }, - "containerId": { - "type": "string", - "description": "The GTM Container ID.", - "required": true, - "location": "path" - }, - "containerVersionId": { - "type": "string", - "description": "The GTM Container Version ID.", - "required": true, - "location": "path" - }, - "fingerprint": { - "type": "string", - "description": "When provided, this fingerprint must match the fingerprint of the container version in storage.", - "location": "query" - } - }, - "parameterOrder": [ - "accountId", - "containerId", - "containerVersionId" - ], - "request": { - "$ref": "ContainerVersion" - }, - "response": { - "$ref": "ContainerVersion" - }, - "scopes": [ - "https://www.googleapis.com/auth/tagmanager.edit.containerversions" - ] - } - } - } - } + "type": "object" }, - "permissions": { - "methods": { - "create": { - "id": "tagmanager.accounts.permissions.create", - "path": "accounts/{accountId}/permissions", - "httpMethod": "POST", - "description": "Creates a user's Account & Container Permissions.", - "parameters": { - "accountId": { - "type": "string", - "description": "The GTM Account ID.", - "required": true, - "location": "path" + "AccountAccess": { + "description": "Defines the Google Tag Manager Account access permissions.", + "id": "AccountAccess", + "properties": { + "permission": { + "annotations": { + "required": [ + "tagmanager.accounts.permissions.create" + ] + }, + "description": "List of Account permissions. Valid account permissions are read and manage.", + "items": { + "enum": [ + "delete", + "edit", + "editWorkspace", + "manage", + "publish", + "read" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "type": "array" } - }, - "parameterOrder": [ - "accountId" - ], - "request": { - "$ref": "UserAccess" - }, - "response": { - "$ref": "UserAccess" - }, - "scopes": [ - "https://www.googleapis.com/auth/tagmanager.manage.users" - ] }, - "delete": { - "id": "tagmanager.accounts.permissions.delete", - "path": "accounts/{accountId}/permissions/{permissionId}", - "httpMethod": "DELETE", - "description": "Removes a user from the account, revoking access to it and all of its containers.", - "parameters": { + "type": "object" + }, + "Condition": { + "description": "Represents a predicate.", + "id": "Condition", + "properties": { + "parameter": { + "annotations": { + "required": [ + "tagmanager.accounts.containers.triggers.create", + "tagmanager.accounts.containers.triggers.update" + ] + }, + "description": "A list of named parameters (key/value), depending on the condition's type. Notes: \n- For binary operators, include parameters named arg0 and arg1 for specifying the left and right operands, respectively. \n- At this time, the left operand (arg0) must be a reference to a variable. \n- For case-insensitive Regex matching, include a boolean parameter named ignore_case that is set to true. If not specified or set to any other value, the matching will be case sensitive. \n- To negate an operator, include a boolean parameter named negate boolean parameter that is set to true.", + "items": { + "$ref": "Parameter" + }, + "type": "array" + }, + "type": { + "annotations": { + "required": [ + "tagmanager.accounts.containers.triggers.create", + "tagmanager.accounts.containers.triggers.update" + ] + }, + "description": "The type of operator for this condition.", + "enum": [ + "contains", + "cssSelector", + "endsWith", + "equals", + "greater", + "greaterOrEquals", + "less", + "lessOrEquals", + "matchRegex", + "startsWith", + "urlMatches" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "Container": { + "description": "Represents a Google Tag Manager Container.", + "id": "Container", + "properties": { "accountId": { - "type": "string", - "description": "The GTM Account ID.", - "required": true, - "location": "path" + "description": "GTM Account ID.", + "type": "string" + }, + "containerId": { + "description": "The Container ID uniquely identifies the GTM Container.", + "type": "string" + }, + "domainName": { + "description": "Optional list of domain names associated with the Container.", + "items": { + "type": "string" + }, + "type": "array" + }, + "enabledBuiltInVariable": { + "description": "List of enabled built-in variables. Valid values include: pageUrl, pageHostname, pagePath, referrer, event, clickElement, clickClasses, clickId, clickTarget, clickUrl, clickText, formElement, formClasses, formId, formTarget, formUrl, formText, errorMessage, errorUrl, errorLine, newHistoryFragment, oldHistoryFragment, newHistoryState, oldHistoryState, historySource, containerVersion, debugMode, randomNumber, containerId.", + "items": { + "enum": [ + "advertiserId", + "advertisingTrackingEnabled", + "ampBrowserLanguage", + "ampCanonicalHost", + "ampCanonicalPath", + "ampCanonicalUrl", + "ampClientId", + "ampClientMaxScrollX", + "ampClientMaxScrollY", + "ampClientScreenHeight", + "ampClientScreenWidth", + "ampClientScrollX", + "ampClientScrollY", + "ampClientTimestamp", + "ampClientTimezone", + "ampGtmEvent", + "ampPageDownloadTime", + "ampPageLoadTime", + "ampPageViewId", + "ampReferrer", + "ampTitle", + "ampTotalEngagedTime", + "appId", + "appName", + "appVersionCode", + "appVersionName", + "clickClasses", + "clickElement", + "clickId", + "clickTarget", + "clickText", + "clickUrl", + "containerId", + "containerVersion", + "debugMode", + "deviceName", + "elementVisibilityFirstTime", + "elementVisibilityRatio", + "elementVisibilityRecentTime", + "elementVisibilityTime", + "environmentName", + "errorLine", + "errorMessage", + "errorUrl", + "event", + "eventName", + "firebaseEventParameterCampaign", + "firebaseEventParameterCampaignAclid", + "firebaseEventParameterCampaignAnid", + "firebaseEventParameterCampaignClickTimestamp", + "firebaseEventParameterCampaignContent", + "firebaseEventParameterCampaignCp1", + "firebaseEventParameterCampaignGclid", + "firebaseEventParameterCampaignSource", + "firebaseEventParameterCampaignTerm", + "firebaseEventParameterCurrency", + "firebaseEventParameterDynamicLinkAcceptTime", + "firebaseEventParameterDynamicLinkLinkid", + "firebaseEventParameterNotificationMessageDeviceTime", + "firebaseEventParameterNotificationMessageId", + "firebaseEventParameterNotificationMessageName", + "firebaseEventParameterNotificationMessageTime", + "firebaseEventParameterNotificationTopic", + "firebaseEventParameterPreviousAppVersion", + "firebaseEventParameterPreviousOsVersion", + "firebaseEventParameterPrice", + "firebaseEventParameterProductId", + "firebaseEventParameterQuantity", + "firebaseEventParameterValue", + "formClasses", + "formElement", + "formId", + "formTarget", + "formText", + "formUrl", + "historySource", + "htmlId", + "language", + "newHistoryFragment", + "newHistoryState", + "oldHistoryFragment", + "oldHistoryState", + "osVersion", + "pageHostname", + "pagePath", + "pageUrl", + "platform", + "randomNumber", + "referrer", + "resolution", + "scrollDepthDirection", + "scrollDepthThreshold", + "scrollDepthUnits", + "sdkVersion", + "videoCurrentTime", + "videoDuration", + "videoPercent", + "videoProvider", + "videoStatus", + "videoTitle", + "videoUrl", + "videoVisible" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "type": "array" + }, + "fingerprint": { + "description": "The fingerprint of the GTM Container as computed at storage time. This value is recomputed whenever the account is modified.", + "type": "string" + }, + "name": { + "annotations": { + "required": [ + "tagmanager.accounts.containers.create" + ] + }, + "description": "Container display name.", + "type": "string" + }, + "notes": { + "description": "Container Notes.", + "type": "string" + }, + "publicId": { + "description": "Container Public ID.", + "type": "string" + }, + "timeZoneCountryId": { + "annotations": { + "required": [ + "tagmanager.accounts.containers.create" + ] + }, + "description": "Container Country ID.", + "type": "string" + }, + "timeZoneId": { + "annotations": { + "required": [ + "tagmanager.accounts.containers.create" + ] + }, + "description": "Container Time Zone ID.", + "type": "string" + }, + "usageContext": { + "annotations": { + "required": [ + "tagmanager.accounts.containers.create" + ] + }, + "description": "List of Usage Contexts for the Container. Valid values include: web, android, ios.", + "items": { + "enum": [ + "amp", + "android", + "androidSdk5", + "ios", + "iosSdk5", + "web" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "ContainerAccess": { + "description": "Defines the Google Tag Manager Container access permissions.", + "id": "ContainerAccess", + "properties": { + "containerId": { + "description": "GTM Container ID.", + "type": "string" + }, + "permission": { + "description": "List of Container permissions. Valid container permissions are: read, edit, delete, publish.", + "items": { + "enum": [ + "delete", + "edit", + "editWorkspace", + "manage", + "publish", + "read" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "ContainerVersion": { + "description": "Represents a Google Tag Manager Container Version.", + "id": "ContainerVersion", + "properties": { + "accountId": { + "description": "GTM Account ID.", + "type": "string" + }, + "container": { + "$ref": "Container", + "description": "The container that this version was taken from." + }, + "containerId": { + "description": "GTM Container ID.", + "type": "string" + }, + "containerVersionId": { + "description": "The Container Version ID uniquely identifies the GTM Container Version.", + "type": "string" + }, + "deleted": { + "description": "A value of true indicates this container version has been deleted.", + "type": "boolean" + }, + "fingerprint": { + "description": "The fingerprint of the GTM Container Version as computed at storage time. This value is recomputed whenever the container version is modified.", + "type": "string" + }, + "folder": { + "description": "The folders in the container that this version was taken from.", + "items": { + "$ref": "Folder" + }, + "type": "array" + }, + "macro": { + "description": "The macros in the container that this version was taken from.", + "items": { + "$ref": "Macro" + }, + "type": "array" + }, + "name": { + "description": "Container version display name.", + "type": "string" + }, + "notes": { + "description": "User notes on how to apply this container version in the container.", + "type": "string" + }, + "rule": { + "description": "The rules in the container that this version was taken from.", + "items": { + "$ref": "Rule" + }, + "type": "array" + }, + "tag": { + "description": "The tags in the container that this version was taken from.", + "items": { + "$ref": "Tag" + }, + "type": "array" + }, + "trigger": { + "description": "The triggers in the container that this version was taken from.", + "items": { + "$ref": "Trigger" + }, + "type": "array" + }, + "variable": { + "description": "The variables in the container that this version was taken from.", + "items": { + "$ref": "Variable" + }, + "type": "array" + } + }, + "type": "object" + }, + "ContainerVersionHeader": { + "description": "Represents a Google Tag Manager Container Version Header.", + "id": "ContainerVersionHeader", + "properties": { + "accountId": { + "description": "GTM Account ID.", + "type": "string" + }, + "containerId": { + "description": "GTM Container ID.", + "type": "string" + }, + "containerVersionId": { + "description": "The Container Version ID uniquely identifies the GTM Container Version.", + "type": "string" + }, + "deleted": { + "description": "A value of true indicates this container version has been deleted.", + "type": "boolean" + }, + "name": { + "description": "Container version display name.", + "type": "string" + }, + "numMacros": { + "description": "Number of macros in the container version.", + "type": "string" + }, + "numRules": { + "description": "Number of rules in the container version.", + "type": "string" + }, + "numTags": { + "description": "Number of tags in the container version.", + "type": "string" + }, + "numTriggers": { + "description": "Number of triggers in the container version.", + "type": "string" + }, + "numVariables": { + "description": "Number of variables in the container version.", + "type": "string" + } + }, + "type": "object" + }, + "CreateContainerVersionRequestVersionOptions": { + "description": "Options for new container versions.", + "id": "CreateContainerVersionRequestVersionOptions", + "properties": { + "name": { + "description": "The name of the container version to be created.", + "type": "string" + }, + "notes": { + "description": "The notes of the container version to be created.", + "type": "string" + }, + "quickPreview": { + "description": "The creation of this version may be for quick preview and shouldn't be saved.", + "type": "boolean" + } + }, + "type": "object" + }, + "CreateContainerVersionResponse": { + "description": "Create container versions response.", + "id": "CreateContainerVersionResponse", + "properties": { + "compilerError": { + "description": "Compiler errors or not.", + "type": "boolean" + }, + "containerVersion": { + "$ref": "ContainerVersion", + "description": "The container version created." + } + }, + "type": "object" + }, + "Environment": { + "description": "Represents a Google Tag Manager Environment. Note that a user can create, delete and update environments of type USER, but can only update the enable_debug and url fields of environments of other types.", + "id": "Environment", + "properties": { + "accountId": { + "description": "GTM Account ID.", + "type": "string" + }, + "authorizationCode": { + "description": "The environment authorization code.", + "type": "string" + }, + "authorizationTimestampMs": { + "description": "The last update time-stamp for the authorization code.", + "format": "int64", + "type": "string" + }, + "containerId": { + "description": "GTM Container ID.", + "type": "string" + }, + "containerVersionId": { + "description": "", + "type": "string" + }, + "description": { + "description": "The environment description. Can be set or changed only on USER type environments.", + "type": "string" + }, + "enableDebug": { + "description": "Whether or not to enable debug by default on for the environment.", + "type": "boolean" + }, + "environmentId": { + "description": "GTM Environment ID uniquely identifies the GTM Environment.", + "type": "string" + }, + "fingerprint": { + "description": "The fingerprint of the GTM environment as computed at storage time. This value is recomputed whenever the environment is modified.", + "type": "string" + }, + "name": { + "annotations": { + "required": [ + "tagmanager.accounts.containers.environments.create", + "tagmanager.accounts.containers.environments.update" + ] + }, + "description": "The environment display name. Can be set or changed only on USER type environments.", + "type": "string" + }, + "type": { + "description": "The type of this environment.", + "enum": [ + "draft", + "latest", + "live", + "user" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ], + "type": "string" + }, + "url": { + "description": "Default preview page url for the environment.", + "type": "string" + } + }, + "type": "object" + }, + "Folder": { + "description": "Represents a Google Tag Manager Folder.", + "id": "Folder", + "properties": { + "accountId": { + "description": "GTM Account ID.", + "type": "string" + }, + "containerId": { + "description": "GTM Container ID.", + "type": "string" + }, + "fingerprint": { + "description": "The fingerprint of the GTM Folder as computed at storage time. This value is recomputed whenever the folder is modified.", + "type": "string" + }, + "folderId": { + "description": "The Folder ID uniquely identifies the GTM Folder.", + "type": "string" + }, + "name": { + "annotations": { + "required": [ + "tagmanager.accounts.containers.folders.create", + "tagmanager.accounts.containers.folders.update" + ] + }, + "description": "Folder display name.", + "type": "string" + } + }, + "type": "object" + }, + "FolderEntities": { + "description": "Represents a Google Tag Manager Folder's contents.", + "id": "FolderEntities", + "properties": { + "tag": { + "description": "The list of tags inside the folder.", + "items": { + "$ref": "Tag" + }, + "type": "array" + }, + "trigger": { + "description": "The list of triggers inside the folder.", + "items": { + "$ref": "Trigger" + }, + "type": "array" + }, + "variable": { + "description": "The list of variables inside the folder.", + "items": { + "$ref": "Variable" + }, + "type": "array" + } + }, + "type": "object" + }, + "ListAccountUsersResponse": { + "description": "List AccountUsers Response.", + "id": "ListAccountUsersResponse", + "properties": { + "userAccess": { + "description": "All GTM AccountUsers of a GTM Account.", + "items": { + "$ref": "UserAccess" + }, + "type": "array" + } + }, + "type": "object" + }, + "ListAccountsResponse": { + "description": "List Accounts Response.", + "id": "ListAccountsResponse", + "properties": { + "accounts": { + "description": "List of GTM Accounts that a user has access to.", + "items": { + "$ref": "Account" + }, + "type": "array" + } + }, + "type": "object" + }, + "ListContainerVersionsResponse": { + "description": "List container versions response.", + "id": "ListContainerVersionsResponse", + "properties": { + "containerVersion": { + "description": "All versions of a GTM Container.", + "items": { + "$ref": "ContainerVersion" + }, + "type": "array" + }, + "containerVersionHeader": { + "description": "All container version headers of a GTM Container.", + "items": { + "$ref": "ContainerVersionHeader" + }, + "type": "array" + } + }, + "type": "object" + }, + "ListContainersResponse": { + "description": "List Containers Response.", + "id": "ListContainersResponse", + "properties": { + "containers": { + "description": "All Containers of a GTM Account.", + "items": { + "$ref": "Container" + }, + "type": "array" + } + }, + "type": "object" + }, + "ListEnvironmentsResponse": { + "description": "List Environments Response.", + "id": "ListEnvironmentsResponse", + "properties": { + "environments": { + "description": "All Environments of a GTM Container.", + "items": { + "$ref": "Environment" + }, + "type": "array" + } + }, + "type": "object" + }, + "ListFoldersResponse": { + "description": "List Folders Response.", + "id": "ListFoldersResponse", + "properties": { + "folders": { + "description": "All GTM Folders of a GTM Container.", + "items": { + "$ref": "Folder" + }, + "type": "array" + } + }, + "type": "object" + }, + "ListTagsResponse": { + "description": "List Tags Response.", + "id": "ListTagsResponse", + "properties": { + "tags": { + "description": "All GTM Tags of a GTM Container.", + "items": { + "$ref": "Tag" + }, + "type": "array" + } + }, + "type": "object" + }, + "ListTriggersResponse": { + "description": "List triggers response.", + "id": "ListTriggersResponse", + "properties": { + "triggers": { + "description": "All GTM Triggers of a GTM Container.", + "items": { + "$ref": "Trigger" + }, + "type": "array" + } + }, + "type": "object" + }, + "ListVariablesResponse": { + "description": "List Variables Response.", + "id": "ListVariablesResponse", + "properties": { + "variables": { + "description": "All GTM Variables of a GTM Container.", + "items": { + "$ref": "Variable" + }, + "type": "array" + } + }, + "type": "object" + }, + "Macro": { + "description": "Represents a Google Tag Manager Macro.", + "id": "Macro", + "properties": { + "accountId": { + "description": "GTM Account ID.", + "type": "string" + }, + "containerId": { + "description": "GTM Container ID.", + "type": "string" + }, + "disablingRuleId": { + "description": "For mobile containers only: A list of rule IDs for disabling conditional macros; the macro is enabled if one of the enabling rules is true while all the disabling rules are false. Treated as an unordered set.", + "items": { + "type": "string" + }, + "type": "array" + }, + "enablingRuleId": { + "description": "For mobile containers only: A list of rule IDs for enabling conditional macros; the macro is enabled if one of the enabling rules is true while all the disabling rules are false. Treated as an unordered set.", + "items": { + "type": "string" + }, + "type": "array" + }, + "fingerprint": { + "description": "The fingerprint of the GTM Macro as computed at storage time. This value is recomputed whenever the macro is modified.", + "type": "string" + }, + "macroId": { + "description": "The Macro ID uniquely identifies the GTM Macro.", + "type": "string" + }, + "name": { + "description": "Macro display name.", + "type": "string" + }, + "notes": { + "description": "User notes on how to apply this macro in the container.", + "type": "string" + }, + "parameter": { + "description": "The macro's parameters.", + "items": { + "$ref": "Parameter" + }, + "type": "array" + }, + "parentFolderId": { + "description": "Parent folder id.", + "type": "string" + }, + "scheduleEndMs": { + "description": "The end timestamp in milliseconds to schedule a macro.", + "format": "int64", + "type": "string" + }, + "scheduleStartMs": { + "description": "The start timestamp in milliseconds to schedule a macro.", + "format": "int64", + "type": "string" + }, + "type": { + "description": "GTM Macro Type.", + "type": "string" + } + }, + "type": "object" + }, + "Parameter": { + "description": "Represents a Google Tag Manager Parameter.", + "id": "Parameter", + "properties": { + "key": { + "description": "The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.", + "type": "string" + }, + "list": { + "description": "This list parameter's parameters (keys will be ignored).", + "items": { + "$ref": "Parameter" + }, + "type": "array" + }, + "map": { + "description": "This map parameter's parameters (must have keys; keys must be unique).", + "items": { + "$ref": "Parameter" + }, + "type": "array" + }, + "type": { + "annotations": { + "required": [ + "tagmanager.accounts.containers.tags.create", + "tagmanager.accounts.containers.tags.update", + "tagmanager.accounts.containers.triggers.create", + "tagmanager.accounts.containers.triggers.update", + "tagmanager.accounts.containers.variables.create", + "tagmanager.accounts.containers.variables.update" + ] + }, + "description": "The parameter type. Valid values are: \n- boolean: The value represents a boolean, represented as 'true' or 'false' \n- integer: The value represents a 64-bit signed integer value, in base 10 \n- list: A list of parameters should be specified \n- map: A map of parameters should be specified \n- template: The value represents any text; this can include variable references (even variable references that might return non-string types)", + "enum": [ + "boolean", + "integer", + "list", + "map", + "template" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "value": { + "description": "A parameter's value (may contain variable references such as \"{{myVariable}}\") as appropriate to the specified type.", + "type": "string" + } + }, + "type": "object" + }, + "PublishContainerVersionResponse": { + "description": "Publish container version response.", + "id": "PublishContainerVersionResponse", + "properties": { + "compilerError": { + "description": "Compiler errors or not.", + "type": "boolean" + }, + "containerVersion": { + "$ref": "ContainerVersion", + "description": "The container version created." + } + }, + "type": "object" + }, + "Rule": { + "description": "Represents a Google Tag Manager Rule.", + "id": "Rule", + "properties": { + "accountId": { + "description": "GTM Account ID.", + "type": "string" + }, + "condition": { + "description": "The list of conditions that make up this rule (implicit AND between them).", + "items": { + "$ref": "Condition" + }, + "type": "array" + }, + "containerId": { + "description": "GTM Container ID.", + "type": "string" + }, + "fingerprint": { + "description": "The fingerprint of the GTM Rule as computed at storage time. This value is recomputed whenever the rule is modified.", + "type": "string" + }, + "name": { + "description": "Rule display name.", + "type": "string" + }, + "notes": { + "description": "User notes on how to apply this rule in the container.", + "type": "string" + }, + "ruleId": { + "description": "The Rule ID uniquely identifies the GTM Rule.", + "type": "string" + } + }, + "type": "object" + }, + "SetupTag": { + "id": "SetupTag", + "properties": { + "stopOnSetupFailure": { + "description": "If true, fire the main tag if and only if the setup tag fires successfully. If false, fire the main tag regardless of setup tag firing status.", + "type": "boolean" + }, + "tagName": { + "description": "The name of the setup tag.", + "type": "string" + } + }, + "type": "object" + }, + "Tag": { + "description": "Represents a Google Tag Manager Tag.", + "id": "Tag", + "properties": { + "accountId": { + "description": "GTM Account ID.", + "type": "string" + }, + "blockingRuleId": { + "description": "Blocking rule IDs. If any of the listed rules evaluate to true, the tag will not fire.", + "items": { + "type": "string" + }, + "type": "array" + }, + "blockingTriggerId": { + "description": "Blocking trigger IDs. If any of the listed triggers evaluate to true, the tag will not fire.", + "items": { + "type": "string" + }, + "type": "array" + }, + "containerId": { + "description": "GTM Container ID.", + "type": "string" + }, + "fingerprint": { + "description": "The fingerprint of the GTM Tag as computed at storage time. This value is recomputed whenever the tag is modified.", + "type": "string" + }, + "firingRuleId": { + "description": "Firing rule IDs. A tag will fire when any of the listed rules are true and all of its blockingRuleIds (if any specified) are false.", + "items": { + "type": "string" + }, + "type": "array" + }, + "firingTriggerId": { + "description": "Firing trigger IDs. A tag will fire when any of the listed triggers are true and all of its blockingTriggerIds (if any specified) are false.", + "items": { + "type": "string" + }, + "type": "array" + }, + "liveOnly": { + "description": "If set to true, this tag will only fire in the live environment (e.g. not in preview or debug mode).", + "type": "boolean" + }, + "name": { + "annotations": { + "required": [ + "tagmanager.accounts.containers.tags.create", + "tagmanager.accounts.containers.tags.update" + ] + }, + "description": "Tag display name.", + "type": "string" + }, + "notes": { + "description": "User notes on how to apply this tag in the container.", + "type": "string" + }, + "parameter": { + "description": "The tag's parameters.", + "items": { + "$ref": "Parameter" + }, + "type": "array" + }, + "parentFolderId": { + "description": "Parent folder id.", + "type": "string" + }, + "paused": { + "description": "True if the tag is paused.", + "type": "boolean" + }, + "priority": { + "$ref": "Parameter", + "description": "User defined numeric priority of the tag. Tags are fired asynchronously in order of priority. Tags with higher numeric value fire first. A tag's priority can be a positive or negative value. The default value is 0." + }, + "scheduleEndMs": { + "description": "The end timestamp in milliseconds to schedule a tag.", + "format": "int64", + "type": "string" + }, + "scheduleStartMs": { + "description": "The start timestamp in milliseconds to schedule a tag.", + "format": "int64", + "type": "string" + }, + "setupTag": { + "description": "The list of setup tags. Currently we only allow one.", + "items": { + "$ref": "SetupTag" + }, + "type": "array" + }, + "tagFiringOption": { + "description": "Option to fire this tag.", + "enum": [ + "oncePerEvent", + "oncePerLoad", + "unlimited" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, + "tagId": { + "description": "The Tag ID uniquely identifies the GTM Tag.", + "type": "string" + }, + "teardownTag": { + "description": "The list of teardown tags. Currently we only allow one.", + "items": { + "$ref": "TeardownTag" + }, + "type": "array" + }, + "type": { + "annotations": { + "required": [ + "tagmanager.accounts.containers.tags.create" + ] + }, + "description": "GTM Tag Type.", + "type": "string" + } + }, + "type": "object" + }, + "TeardownTag": { + "id": "TeardownTag", + "properties": { + "stopTeardownOnFailure": { + "description": "If true, fire the teardown tag if and only if the main tag fires successfully. If false, fire the teardown tag regardless of main tag firing status.", + "type": "boolean" + }, + "tagName": { + "description": "The name of the teardown tag.", + "type": "string" + } + }, + "type": "object" + }, + "Trigger": { + "description": "Represents a Google Tag Manager Trigger", + "id": "Trigger", + "properties": { + "accountId": { + "description": "GTM Account ID.", + "type": "string" + }, + "autoEventFilter": { + "description": "Used in the case of auto event tracking.", + "items": { + "$ref": "Condition" + }, + "type": "array" + }, + "checkValidation": { + "$ref": "Parameter", + "description": "Whether or not we should only fire tags if the form submit or link click event is not cancelled by some other event handler (e.g. because of validation). Only valid for Form Submission and Link Click triggers." + }, + "containerId": { + "description": "GTM Container ID.", + "type": "string" + }, + "continuousTimeMinMilliseconds": { + "$ref": "Parameter", + "description": "A visibility trigger minimum continuous visible time (in milliseconds). Only valid for AMP Visibility trigger." + }, + "customEventFilter": { + "description": "Used in the case of custom event, which is fired iff all Conditions are true.", + "items": { + "$ref": "Condition" + }, + "type": "array" + }, + "eventName": { + "$ref": "Parameter", + "description": "Name of the GTM event that is fired. Only valid for Timer triggers." + }, + "filter": { + "description": "The trigger will only fire iff all Conditions are true.", + "items": { + "$ref": "Condition" + }, + "type": "array" + }, + "fingerprint": { + "description": "The fingerprint of the GTM Trigger as computed at storage time. This value is recomputed whenever the trigger is modified.", + "type": "string" + }, + "horizontalScrollPercentageList": { + "$ref": "Parameter", + "description": "List of integer percentage values for scroll triggers. The trigger will fire when each percentage is reached when the view is scrolled horizontally. Only valid for AMP scroll triggers." + }, + "interval": { + "$ref": "Parameter", + "description": "Time between triggering recurring Timer Events (in milliseconds). Only valid for Timer triggers." + }, + "intervalSeconds": { + "$ref": "Parameter", + "description": "Time between Timer Events to fire (in seconds). Only valid for AMP Timer trigger." + }, + "limit": { + "$ref": "Parameter", + "description": "Limit of the number of GTM events this Timer Trigger will fire. If no limit is set, we will continue to fire GTM events until the user leaves the page. Only valid for Timer triggers." + }, + "maxTimerLengthSeconds": { + "$ref": "Parameter", + "description": "Max time to fire Timer Events (in seconds). Only valid for AMP Timer trigger." + }, + "name": { + "annotations": { + "required": [ + "tagmanager.accounts.containers.triggers.create", + "tagmanager.accounts.containers.triggers.update" + ] + }, + "description": "Trigger display name.", + "type": "string" + }, + "parameter": { + "description": "Additional parameters.", + "items": { + "$ref": "Parameter" + }, + "type": "array" + }, + "parentFolderId": { + "description": "Parent folder id.", + "type": "string" + }, + "selector": { + "$ref": "Parameter", + "description": "A click trigger CSS selector (i.e. \"a\", \"button\" etc.). Only valid for AMP Click trigger." + }, + "totalTimeMinMilliseconds": { + "$ref": "Parameter", + "description": "A visibility trigger minimum total visible time (in milliseconds). Only valid for AMP Visibility trigger." + }, + "triggerId": { + "description": "The Trigger ID uniquely identifies the GTM Trigger.", + "type": "string" + }, + "type": { + "annotations": { + "required": [ + "tagmanager.accounts.containers.triggers.create" + ] + }, + "description": "Defines the data layer event that causes this trigger.", + "enum": [ + "always", + "ampClick", + "ampScroll", + "ampTimer", + "ampVisibility", + "click", + "customEvent", + "domReady", + "elementVisibility", + "formSubmission", + "historyChange", + "jsError", + "linkClick", + "pageview", + "scrollDepth", + "timer", + "windowLoaded", + "youTubeVideo" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "uniqueTriggerId": { + "$ref": "Parameter", + "description": "Globally unique id of the trigger that auto-generates this (a Form Submit, Link Click or Timer listener) if any. Used to make incompatible auto-events work together with trigger filtering based on trigger ids. This value is populated during output generation since the tags implied by triggers don't exist until then. Only valid for Form Submit, Link Click and Timer triggers." + }, + "verticalScrollPercentageList": { + "$ref": "Parameter", + "description": "List of integer percentage values for scroll triggers. The trigger will fire when each percentage is reached when the view is scrolled vertically. Only valid for AMP scroll triggers." + }, + "visibilitySelector": { + "$ref": "Parameter", + "description": "A visibility trigger CSS selector (i.e. \"#id\"). Only valid for AMP Visibility trigger." + }, + "visiblePercentageMax": { + "$ref": "Parameter", + "description": "A visibility trigger maximum percent visibility. Only valid for AMP Visibility trigger." + }, + "visiblePercentageMin": { + "$ref": "Parameter", + "description": "A visibility trigger minimum percent visibility. Only valid for AMP Visibility trigger." + }, + "waitForTags": { + "$ref": "Parameter", + "description": "Whether or not we should delay the form submissions or link opening until all of the tags have fired (by preventing the default action and later simulating the default action). Only valid for Form Submission and Link Click triggers." + }, + "waitForTagsTimeout": { + "$ref": "Parameter", + "description": "How long to wait (in milliseconds) for tags to fire when 'waits_for_tags' above evaluates to true. Only valid for Form Submission and Link Click triggers." + } + }, + "type": "object" + }, + "UserAccess": { + "description": "Represents a user's permissions to an account and its container.", + "id": "UserAccess", + "properties": { + "accountAccess": { + "$ref": "AccountAccess", + "annotations": { + "required": [ + "tagmanager.accounts.permissions.create" + ] + }, + "description": "GTM Account access permissions." + }, + "accountId": { + "description": "GTM Account ID.", + "type": "string" + }, + "containerAccess": { + "description": "GTM Container access permissions.", + "items": { + "$ref": "ContainerAccess" + }, + "type": "array" + }, + "emailAddress": { + "annotations": { + "required": [ + "tagmanager.accounts.permissions.create" + ] + }, + "description": "User's email address.", + "type": "string" }, "permissionId": { - "type": "string", - "description": "The GTM User ID.", - "required": true, - "location": "path" + "description": "Account Permission ID.", + "type": "string" } - }, - "parameterOrder": [ - "accountId", - "permissionId" - ], - "scopes": [ - "https://www.googleapis.com/auth/tagmanager.manage.users" - ] }, - "get": { - "id": "tagmanager.accounts.permissions.get", - "path": "accounts/{accountId}/permissions/{permissionId}", - "httpMethod": "GET", - "description": "Gets a user's Account & Container Permissions.", - "parameters": { + "type": "object" + }, + "Variable": { + "description": "Represents a Google Tag Manager Variable.", + "id": "Variable", + "properties": { "accountId": { - "type": "string", - "description": "The GTM Account ID.", - "required": true, - "location": "path" + "description": "GTM Account ID.", + "type": "string" }, - "permissionId": { - "type": "string", - "description": "The GTM User ID.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "accountId", - "permissionId" - ], - "response": { - "$ref": "UserAccess" - }, - "scopes": [ - "https://www.googleapis.com/auth/tagmanager.manage.users" - ] - }, - "list": { - "id": "tagmanager.accounts.permissions.list", - "path": "accounts/{accountId}/permissions", - "httpMethod": "GET", - "description": "List all users that have access to the account along with Account and Container Permissions granted to each of them.", - "parameters": { - "accountId": { - "type": "string", - "description": "The GTM Account ID. @required tagmanager.accounts.permissions.list", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "accountId" - ], - "response": { - "$ref": "ListAccountUsersResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/tagmanager.manage.users" - ] - }, - "update": { - "id": "tagmanager.accounts.permissions.update", - "path": "accounts/{accountId}/permissions/{permissionId}", - "httpMethod": "PUT", - "description": "Updates a user's Account & Container Permissions.", - "parameters": { - "accountId": { - "type": "string", - "description": "The GTM Account ID.", - "required": true, - "location": "path" + "containerId": { + "description": "GTM Container ID.", + "type": "string" }, - "permissionId": { - "type": "string", - "description": "The GTM User ID.", - "required": true, - "location": "path" + "disablingTriggerId": { + "description": "For mobile containers only: A list of trigger IDs for disabling conditional variables; the variable is enabled if one of the enabling trigger is true while all the disabling trigger are false. Treated as an unordered set.", + "items": { + "type": "string" + }, + "type": "array" + }, + "enablingTriggerId": { + "description": "For mobile containers only: A list of trigger IDs for enabling conditional variables; the variable is enabled if one of the enabling triggers is true while all the disabling triggers are false. Treated as an unordered set.", + "items": { + "type": "string" + }, + "type": "array" + }, + "fingerprint": { + "description": "The fingerprint of the GTM Variable as computed at storage time. This value is recomputed whenever the variable is modified.", + "type": "string" + }, + "name": { + "annotations": { + "required": [ + "tagmanager.accounts.containers.variables.create", + "tagmanager.accounts.containers.variables.update" + ] + }, + "description": "Variable display name.", + "type": "string" + }, + "notes": { + "description": "User notes on how to apply this variable in the container.", + "type": "string" + }, + "parameter": { + "description": "The variable's parameters.", + "items": { + "$ref": "Parameter" + }, + "type": "array" + }, + "parentFolderId": { + "description": "Parent folder id.", + "type": "string" + }, + "scheduleEndMs": { + "description": "The end timestamp in milliseconds to schedule a variable.", + "format": "int64", + "type": "string" + }, + "scheduleStartMs": { + "description": "The start timestamp in milliseconds to schedule a variable.", + "format": "int64", + "type": "string" + }, + "type": { + "annotations": { + "required": [ + "tagmanager.accounts.containers.variables.create", + "tagmanager.accounts.containers.variables.update" + ] + }, + "description": "GTM Variable Type.", + "type": "string" + }, + "variableId": { + "description": "The Variable ID uniquely identifies the GTM Variable.", + "type": "string" } - }, - "parameterOrder": [ - "accountId", - "permissionId" - ], - "request": { - "$ref": "UserAccess" - }, - "response": { - "$ref": "UserAccess" - }, - "scopes": [ - "https://www.googleapis.com/auth/tagmanager.manage.users" - ] - } - } + }, + "type": "object" } - } - } - } -} + }, + "servicePath": "tagmanager/v1/", + "title": "Tag Manager API", + "version": "v1" +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/tagmanager/v2/tagmanager-api.json b/vendor/google.golang.org/api/tagmanager/v2/tagmanager-api.json index e70b5c1ea..43d1f0fca 100644 --- a/vendor/google.golang.org/api/tagmanager/v2/tagmanager-api.json +++ b/vendor/google.golang.org/api/tagmanager/v2/tagmanager-api.json @@ -1,4914 +1,4914 @@ { - "kind": "discovery#restDescription", - "etag": "\"YWOzh2SDasdU84ArJnpYek-OMdg/haw81r2kBgXadQvfFtY6NHfr1P0\"", - "discoveryVersion": "v1", - "id": "tagmanager:v2", - "name": "tagmanager", - "canonicalName": "Tag Manager", - "version": "v2", - "revision": "20171108", - "title": "Tag Manager API", - "description": "Accesses Tag Manager accounts and containers.", - "ownerDomain": "google.com", - "ownerName": "Google", - "icons": { - "x16": "https://www.gstatic.com/images/branding/product/1x/googleg_16dp.png", - "x32": "https://www.gstatic.com/images/branding/product/1x/googleg_32dp.png" - }, - "documentationLink": "https://developers.google.com/tag-manager/api/v2/", - "protocol": "rest", - "baseUrl": "https://www.googleapis.com/tagmanager/v2/", - "basePath": "/tagmanager/v2/", - "rootUrl": "https://www.googleapis.com/", - "servicePath": "tagmanager/v2/", - "batchPath": "batch/tagmanager/v2", - "parameters": { - "alt": { - "type": "string", - "description": "Data format for the response.", - "default": "json", - "enum": [ - "json" - ], - "enumDescriptions": [ - "Responses with Content-Type of application/json" - ], - "location": "query" - }, - "fields": { - "type": "string", - "description": "Selector specifying which fields to include in a partial response.", - "location": "query" - }, - "key": { - "type": "string", - "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" - }, - "oauth_token": { - "type": "string", - "description": "OAuth 2.0 token for the current user.", - "location": "query" - }, - "prettyPrint": { - "type": "boolean", - "description": "Returns response with indentations and line breaks.", - "default": "true", - "location": "query" - }, - "quotaUser": { - "type": "string", - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", - "location": "query" - }, - "userIp": { - "type": "string", - "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", - "location": "query" - } - }, - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/tagmanager.delete.containers": { - "description": "Delete your Google Tag Manager containers" - }, - "https://www.googleapis.com/auth/tagmanager.edit.containers": { - "description": "Manage your Google Tag Manager container and its subcomponents, excluding versioning and publishing" - }, - "https://www.googleapis.com/auth/tagmanager.edit.containerversions": { - "description": "Manage your Google Tag Manager container versions" - }, - "https://www.googleapis.com/auth/tagmanager.manage.accounts": { - "description": "View and manage your Google Tag Manager accounts" - }, - "https://www.googleapis.com/auth/tagmanager.manage.users": { - "description": "Manage user permissions of your Google Tag Manager account and container" - }, - "https://www.googleapis.com/auth/tagmanager.publish": { - "description": "Publish your Google Tag Manager container versions" - }, - "https://www.googleapis.com/auth/tagmanager.readonly": { - "description": "View your Google Tag Manager container and its subcomponents" + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/tagmanager.delete.containers": { + "description": "Delete your Google Tag Manager containers" + }, + "https://www.googleapis.com/auth/tagmanager.edit.containers": { + "description": "Manage your Google Tag Manager container and its subcomponents, excluding versioning and publishing" + }, + "https://www.googleapis.com/auth/tagmanager.edit.containerversions": { + "description": "Manage your Google Tag Manager container versions" + }, + "https://www.googleapis.com/auth/tagmanager.manage.accounts": { + "description": "View and manage your Google Tag Manager accounts" + }, + "https://www.googleapis.com/auth/tagmanager.manage.users": { + "description": "Manage user permissions of your Google Tag Manager account and container" + }, + "https://www.googleapis.com/auth/tagmanager.publish": { + "description": "Publish your Google Tag Manager container versions" + }, + "https://www.googleapis.com/auth/tagmanager.readonly": { + "description": "View your Google Tag Manager container and its subcomponents" + } + } } - } - } - }, - "schemas": { - "Account": { - "id": "Account", - "type": "object", - "description": "Represents a Google Tag Manager Account.", - "properties": { - "accountId": { - "type": "string", - "description": "The Account ID uniquely identifies the GTM Account." - }, - "fingerprint": { - "type": "string", - "description": "The fingerprint of the GTM Account as computed at storage time. This value is recomputed whenever the account is modified." - }, - "name": { - "type": "string", - "description": "Account display name." - }, - "path": { - "type": "string", - "description": "GTM Account's API relative path." - }, - "shareData": { - "type": "boolean", - "description": "Whether the account shares data anonymously with Google and others. This flag enables benchmarking by sharing your data in an anonymous form. Google will remove all identifiable information about your website, combine the data with hundreds of other anonymous sites and report aggregate trends in the benchmarking service." - }, - "tagManagerUrl": { - "type": "string", - "description": "Auto generated link to the tag manager UI" - } - } }, - "AccountAccess": { - "id": "AccountAccess", - "type": "object", - "description": "Defines the Google Tag Manager Account access permissions.", - "properties": { - "permission": { - "type": "string", - "description": "Whether the user has no access, user access, or admin access to an account.", - "enum": [ - "accountPermissionUnspecified", - "admin", - "noAccess", - "user" - ], - "enumDescriptions": [ - "", - "", - "", - "" - ] - } - } + "basePath": "/tagmanager/v2/", + "baseUrl": "https://www.googleapis.com/tagmanager/v2/", + "batchPath": "batch/tagmanager/v2", + "canonicalName": "Tag Manager", + "description": "Accesses Tag Manager accounts and containers.", + "discoveryVersion": "v1", + "documentationLink": "https://developers.google.com/tag-manager/api/v2/", + "etag": "\"-iA1DTNe4s-I6JZXPt1t1Ypy8IU/haw81r2kBgXadQvfFtY6NHfr1P0\"", + "icons": { + "x16": "https://www.gstatic.com/images/branding/product/1x/googleg_16dp.png", + "x32": "https://www.gstatic.com/images/branding/product/1x/googleg_32dp.png" }, - "BuiltInVariable": { - "id": "BuiltInVariable", - "type": "object", - "description": "Built-in variables are a special category of variables that are pre-created and non-customizable. They provide common functionality like accessing propeties of the gtm data layer, monitoring clicks, or accessing elements of a page URL.", - "properties": { - "accountId": { - "type": "string", - "description": "GTM Account ID." - }, - "containerId": { - "type": "string", - "description": "GTM Container ID." - }, - "name": { - "type": "string", - "description": "Name of the built-in variable to be used to refer to the built-in variable." - }, - "path": { - "type": "string", - "description": "GTM BuiltInVariable's API relative path." - }, - "type": { - "type": "string", - "description": "Type of built-in variable.", - "enum": [ - "advertiserId", - "advertisingTrackingEnabled", - "ampBrowserLanguage", - "ampCanonicalHost", - "ampCanonicalPath", - "ampCanonicalUrl", - "ampClientId", - "ampClientMaxScrollX", - "ampClientMaxScrollY", - "ampClientScreenHeight", - "ampClientScreenWidth", - "ampClientScrollX", - "ampClientScrollY", - "ampClientTimestamp", - "ampClientTimezone", - "ampGtmEvent", - "ampPageDownloadTime", - "ampPageLoadTime", - "ampPageViewId", - "ampReferrer", - "ampTitle", - "ampTotalEngagedTime", - "appId", - "appName", - "appVersionCode", - "appVersionName", - "builtInVariableTypeUnspecified", - "clickClasses", - "clickElement", - "clickId", - "clickTarget", - "clickText", - "clickUrl", - "containerId", - "containerVersion", - "debugMode", - "deviceName", - "elementVisibilityFirstTime", - "elementVisibilityRatio", - "elementVisibilityRecentTime", - "elementVisibilityTime", - "environmentName", - "errorLine", - "errorMessage", - "errorUrl", - "event", - "eventName", - "firebaseEventParameterCampaign", - "firebaseEventParameterCampaignAclid", - "firebaseEventParameterCampaignAnid", - "firebaseEventParameterCampaignClickTimestamp", - "firebaseEventParameterCampaignContent", - "firebaseEventParameterCampaignCp1", - "firebaseEventParameterCampaignGclid", - "firebaseEventParameterCampaignSource", - "firebaseEventParameterCampaignTerm", - "firebaseEventParameterCurrency", - "firebaseEventParameterDynamicLinkAcceptTime", - "firebaseEventParameterDynamicLinkLinkid", - "firebaseEventParameterNotificationMessageDeviceTime", - "firebaseEventParameterNotificationMessageId", - "firebaseEventParameterNotificationMessageName", - "firebaseEventParameterNotificationMessageTime", - "firebaseEventParameterNotificationTopic", - "firebaseEventParameterPreviousAppVersion", - "firebaseEventParameterPreviousOsVersion", - "firebaseEventParameterPrice", - "firebaseEventParameterProductId", - "firebaseEventParameterQuantity", - "firebaseEventParameterValue", - "formClasses", - "formElement", - "formId", - "formTarget", - "formText", - "formUrl", - "historySource", - "htmlId", - "language", - "newHistoryFragment", - "newHistoryState", - "oldHistoryFragment", - "oldHistoryState", - "osVersion", - "pageHostname", - "pagePath", - "pageUrl", - "platform", - "randomNumber", - "referrer", - "resolution", - "scrollDepthDirection", - "scrollDepthThreshold", - "scrollDepthUnits", - "sdkVersion", - "videoCurrentTime", - "videoDuration", - "videoPercent", - "videoProvider", - "videoStatus", - "videoTitle", - "videoUrl", - "videoVisible" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "workspaceId": { - "type": "string", - "description": "GTM Workspace ID." - } - } - }, - "Condition": { - "id": "Condition", - "type": "object", - "description": "Represents a predicate.", - "properties": { - "parameter": { - "type": "array", - "description": "A list of named parameters (key/value), depending on the condition's type. Notes: \n- For binary operators, include parameters named arg0 and arg1 for specifying the left and right operands, respectively. \n- At this time, the left operand (arg0) must be a reference to a variable. \n- For case-insensitive Regex matching, include a boolean parameter named ignore_case that is set to true. If not specified or set to any other value, the matching will be case sensitive. \n- To negate an operator, include a boolean parameter named negate boolean parameter that is set to true.", - "items": { - "$ref": "Parameter" - }, - "annotations": { - "required": [ - "tagmanager.accounts.containers.workspaces.triggers.create", - "tagmanager.accounts.containers.workspaces.triggers.update" - ] - } - }, - "type": { - "type": "string", - "description": "The type of operator for this condition.", - "enum": [ - "conditionTypeUnspecified", - "contains", - "cssSelector", - "endsWith", - "equals", - "greater", - "greaterOrEquals", - "less", - "lessOrEquals", - "matchRegex", - "startsWith", - "urlMatches" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ], - "annotations": { - "required": [ - "tagmanager.accounts.containers.workspaces.triggers.create", - "tagmanager.accounts.containers.workspaces.triggers.update" - ] - } - } - } - }, - "Container": { - "id": "Container", - "type": "object", - "description": "Represents a Google Tag Manager Container, which specifies the platform tags will run on, manages workspaces, and retains container versions.", - "properties": { - "accountId": { - "type": "string", - "description": "GTM Account ID." - }, - "containerId": { - "type": "string", - "description": "The Container ID uniquely identifies the GTM Container." - }, - "domainName": { - "type": "array", - "description": "List of domain names associated with the Container.", - "items": { - "type": "string" - } - }, - "fingerprint": { - "type": "string", - "description": "The fingerprint of the GTM Container as computed at storage time. This value is recomputed whenever the account is modified." - }, - "name": { - "type": "string", - "description": "Container display name.", - "annotations": { - "required": [ - "tagmanager.accounts.containers.create" - ] - } - }, - "notes": { - "type": "string", - "description": "Container Notes." - }, - "path": { - "type": "string", - "description": "GTM Container's API relative path." - }, - "publicId": { - "type": "string", - "description": "Container Public ID." - }, - "tagManagerUrl": { - "type": "string", - "description": "Auto generated link to the tag manager UI" - }, - "usageContext": { - "type": "array", - "description": "List of Usage Contexts for the Container. Valid values include: web, android, or ios.", - "items": { - "type": "string", + "id": "tagmanager:v2", + "kind": "discovery#restDescription", + "name": "tagmanager", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "alt": { + "default": "json", + "description": "Data format for the response.", "enum": [ - "amp", - "android", - "androidSdk5", - "ios", - "iosSdk5", - "usageContextUnspecified", - "web" + "json" ], "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "" - ] - }, - "annotations": { - "required": [ - "tagmanager.accounts.containers.create" - ] - } - } - } - }, - "ContainerAccess": { - "id": "ContainerAccess", - "type": "object", - "description": "Defines the Google Tag Manager Container access permissions.", - "properties": { - "containerId": { - "type": "string", - "description": "GTM Container ID." + "Responses with Content-Type of application/json" + ], + "location": "query", + "type": "string" }, - "permission": { - "type": "string", - "description": "List of Container permissions.", - "enum": [ - "approve", - "containerPermissionUnspecified", - "edit", - "noAccess", - "publish", - "read" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "" - ] - } - } - }, - "ContainerVersion": { - "id": "ContainerVersion", - "type": "object", - "description": "Represents a Google Tag Manager Container Version.", - "properties": { - "accountId": { - "type": "string", - "description": "GTM Account ID." + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "location": "query", + "type": "string" }, - "builtInVariable": { - "type": "array", - "description": "The built-in variables in the container that this version was taken from.", - "items": { - "$ref": "BuiltInVariable" - } - }, - "container": { - "$ref": "Container", - "description": "The container that this version was taken from." - }, - "containerId": { - "type": "string", - "description": "GTM Container ID." - }, - "containerVersionId": { - "type": "string", - "description": "The Container Version ID uniquely identifies the GTM Container Version." - }, - "deleted": { - "type": "boolean", - "description": "A value of true indicates this container version has been deleted." - }, - "description": { - "type": "string", - "description": "Container version description." - }, - "fingerprint": { - "type": "string", - "description": "The fingerprint of the GTM Container Version as computed at storage time. This value is recomputed whenever the container version is modified." - }, - "folder": { - "type": "array", - "description": "The folders in the container that this version was taken from.", - "items": { - "$ref": "Folder" - } - }, - "name": { - "type": "string", - "description": "Container version display name." - }, - "path": { - "type": "string", - "description": "GTM ContainerVersions's API relative path." - }, - "tag": { - "type": "array", - "description": "The tags in the container that this version was taken from.", - "items": { - "$ref": "Tag" - } - }, - "tagManagerUrl": { - "type": "string", - "description": "Auto generated link to the tag manager UI" - }, - "trigger": { - "type": "array", - "description": "The triggers in the container that this version was taken from.", - "items": { - "$ref": "Trigger" - } - }, - "variable": { - "type": "array", - "description": "The variables in the container that this version was taken from.", - "items": { - "$ref": "Variable" - } - }, - "zone": { - "type": "array", - "description": "The zones in the container that this version was taken from.", - "items": { - "$ref": "Zone" - } - } - } - }, - "ContainerVersionHeader": { - "id": "ContainerVersionHeader", - "type": "object", - "description": "Represents a Google Tag Manager Container Version Header.", - "properties": { - "accountId": { - "type": "string", - "description": "GTM Account ID." - }, - "containerId": { - "type": "string", - "description": "GTM Container ID." - }, - "containerVersionId": { - "type": "string", - "description": "The Container Version ID uniquely identifies the GTM Container Version." - }, - "deleted": { - "type": "boolean", - "description": "A value of true indicates this container version has been deleted." - }, - "name": { - "type": "string", - "description": "Container version display name." - }, - "numMacros": { - "type": "string", - "description": "Number of macros in the container version." - }, - "numRules": { - "type": "string", - "description": "Number of rules in the container version." - }, - "numTags": { - "type": "string", - "description": "Number of tags in the container version." - }, - "numTriggers": { - "type": "string", - "description": "Number of triggers in the container version." - }, - "numVariables": { - "type": "string", - "description": "Number of variables in the container version." - }, - "numZones": { - "type": "string", - "description": "Number of zones in the container version." - }, - "path": { - "type": "string", - "description": "GTM Container Versions's API relative path." - } - } - }, - "CreateBuiltInVariableResponse": { - "id": "CreateBuiltInVariableResponse", - "type": "object", - "properties": { - "builtInVariable": { - "type": "array", - "description": "List of created built-in variables.", - "items": { - "$ref": "BuiltInVariable" - } - } - } - }, - "CreateContainerVersionRequestVersionOptions": { - "id": "CreateContainerVersionRequestVersionOptions", - "type": "object", - "description": "Options for new container versions.", - "properties": { - "name": { - "type": "string", - "description": "The name of the container version to be created." - }, - "notes": { - "type": "string", - "description": "The notes of the container version to be created." - } - } - }, - "CreateContainerVersionResponse": { - "id": "CreateContainerVersionResponse", - "type": "object", - "description": "Create container versions response.", - "properties": { - "compilerError": { - "type": "boolean", - "description": "Compiler errors or not." - }, - "containerVersion": { - "$ref": "ContainerVersion", - "description": "The container version created." - }, - "newWorkspacePath": { - "type": "string", - "description": "Auto generated workspace path created as a result of version creation. This field should only be populated if the created version was not a quick preview." - }, - "syncStatus": { - "$ref": "SyncStatus", - "description": "Whether version creation failed when syncing the workspace to the latest container version." - } - } - }, - "CreateWorkspaceProposalRequest": { - "id": "CreateWorkspaceProposalRequest", - "type": "object", - "description": "Creates a workspace proposal to start a review of a workspace.", - "properties": { - "initialComment": { - "$ref": "WorkspaceProposalHistoryComment", - "description": "If present, an initial comment to associate with the workspace proposal." - }, - "reviewers": { - "type": "array", - "description": "List of users to review the workspace proposal.", - "items": { - "$ref": "WorkspaceProposalUser" - } - } - } - }, - "Entity": { - "id": "Entity", - "type": "object", - "description": "A workspace entity that may represent a tag, trigger, variable, or folder in addition to its status in the workspace.", - "properties": { - "changeStatus": { - "type": "string", - "description": "Represents how the entity has been changed in the workspace.", - "enum": [ - "added", - "changeStatusUnspecified", - "deleted", - "none", - "updated" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "" - ] - }, - "folder": { - "$ref": "Folder", - "description": "The Folder being represented by the entity." - }, - "tag": { - "$ref": "Tag", - "description": "The tag being represented by the entity." - }, - "trigger": { - "$ref": "Trigger", - "description": "The trigger being represented by the entity." - }, - "variable": { - "$ref": "Variable", - "description": "The variable being represented by the entity." - } - } - }, - "Environment": { - "id": "Environment", - "type": "object", - "description": "Represents a Google Tag Manager Environment. Note that a user can create, delete and update environments of type USER, but can only update the enable_debug and url fields of environments of other types.", - "properties": { - "accountId": { - "type": "string", - "description": "GTM Account ID." - }, - "authorizationCode": { - "type": "string", - "description": "The environment authorization code." - }, - "authorizationTimestamp": { - "$ref": "Timestamp", - "description": "The last update time-stamp for the authorization code." - }, - "containerId": { - "type": "string", - "description": "GTM Container ID." - }, - "containerVersionId": { - "type": "string", - "description": "Represents a link to a container version." - }, - "description": { - "type": "string", - "description": "The environment description. Can be set or changed only on USER type environments." - }, - "enableDebug": { - "type": "boolean", - "description": "Whether or not to enable debug by default for the environment." - }, - "environmentId": { - "type": "string", - "description": "GTM Environment ID uniquely identifies the GTM Environment." - }, - "fingerprint": { - "type": "string", - "description": "The fingerprint of the GTM environment as computed at storage time. This value is recomputed whenever the environment is modified." - }, - "name": { - "type": "string", - "description": "The environment display name. Can be set or changed only on USER type environments.", - "annotations": { - "required": [ - "tagmanager.accounts.containers.environments.create", - "tagmanager.accounts.containers.environments.update" - ] - } - }, - "path": { - "type": "string", - "description": "GTM Environment's API relative path." - }, - "tagManagerUrl": { - "type": "string", - "description": "Auto generated link to the tag manager UI" - }, - "type": { - "type": "string", - "description": "The type of this environment.", - "enum": [ - "latest", - "live", - "user", - "workspace" - ], - "enumDescriptions": [ - "", - "", - "", - "" - ] - }, - "url": { - "type": "string", - "description": "Default preview page url for the environment." - }, - "workspaceId": { - "type": "string", - "description": "Represents a link to a quick preview of a workspace." - } - } - }, - "Folder": { - "id": "Folder", - "type": "object", - "description": "Represents a Google Tag Manager Folder.", - "properties": { - "accountId": { - "type": "string", - "description": "GTM Account ID." - }, - "containerId": { - "type": "string", - "description": "GTM Container ID." - }, - "fingerprint": { - "type": "string", - "description": "The fingerprint of the GTM Folder as computed at storage time. This value is recomputed whenever the folder is modified." - }, - "folderId": { - "type": "string", - "description": "The Folder ID uniquely identifies the GTM Folder." - }, - "name": { - "type": "string", - "description": "Folder display name.", - "annotations": { - "required": [ - "tagmanager.accounts.containers.workspaces.folders.create", - "tagmanager.accounts.containers.workspaces.folders.update" - ] - } - }, - "notes": { - "type": "string", - "description": "User notes on how to apply this folder in the container." - }, - "path": { - "type": "string", - "description": "GTM Folder's API relative path." - }, - "tagManagerUrl": { - "type": "string", - "description": "Auto generated link to the tag manager UI" - }, - "workspaceId": { - "type": "string", - "description": "GTM Workspace ID." - } - } - }, - "FolderEntities": { - "id": "FolderEntities", - "type": "object", - "description": "Represents a Google Tag Manager Folder's contents.", - "properties": { - "nextPageToken": { - "type": "string", - "description": "Continuation token for fetching the next page of results." - }, - "tag": { - "type": "array", - "description": "The list of tags inside the folder.", - "items": { - "$ref": "Tag" - } - }, - "trigger": { - "type": "array", - "description": "The list of triggers inside the folder.", - "items": { - "$ref": "Trigger" - } - }, - "variable": { - "type": "array", - "description": "The list of variables inside the folder.", - "items": { - "$ref": "Variable" - } - } - } - }, - "GetWorkspaceStatusResponse": { - "id": "GetWorkspaceStatusResponse", - "type": "object", - "description": "The changes that have occurred in the workspace since the base container version.", - "properties": { - "mergeConflict": { - "type": "array", - "description": "The merge conflict after sync.", - "items": { - "$ref": "MergeConflict" - } - }, - "workspaceChange": { - "type": "array", - "description": "Entities that have been changed in the workspace.", - "items": { - "$ref": "Entity" - } - } - } - }, - "ListAccountsResponse": { - "id": "ListAccountsResponse", - "type": "object", - "description": "List Accounts Response.", - "properties": { - "account": { - "type": "array", - "description": "List of GTM Accounts that a user has access to.", - "items": { - "$ref": "Account" - } - }, - "nextPageToken": { - "type": "string", - "description": "Continuation token for fetching the next page of results." - } - } - }, - "ListContainerVersionsResponse": { - "id": "ListContainerVersionsResponse", - "type": "object", - "description": "List container versions response.", - "properties": { - "containerVersionHeader": { - "type": "array", - "description": "All container version headers of a GTM Container.", - "items": { - "$ref": "ContainerVersionHeader" - } - }, - "nextPageToken": { - "type": "string", - "description": "Continuation token for fetching the next page of results." - } - } - }, - "ListContainersResponse": { - "id": "ListContainersResponse", - "type": "object", - "description": "List Containers Response.", - "properties": { - "container": { - "type": "array", - "description": "All Containers of a GTM Account.", - "items": { - "$ref": "Container" - } - }, - "nextPageToken": { - "type": "string", - "description": "Continuation token for fetching the next page of results." - } - } - }, - "ListEnabledBuiltInVariablesResponse": { - "id": "ListEnabledBuiltInVariablesResponse", - "type": "object", - "description": "A list of enabled built-in variables.", - "properties": { - "builtInVariable": { - "type": "array", - "description": "All GTM BuiltInVariables of a GTM container.", - "items": { - "$ref": "BuiltInVariable" - } - }, - "nextPageToken": { - "type": "string", - "description": "Continuation token for fetching the next page of results." - } - } - }, - "ListEnvironmentsResponse": { - "id": "ListEnvironmentsResponse", - "type": "object", - "description": "List Environments Response.", - "properties": { - "environment": { - "type": "array", - "description": "All Environments of a GTM Container.", - "items": { - "$ref": "Environment" - } - }, - "nextPageToken": { - "type": "string", - "description": "Continuation token for fetching the next page of results." - } - } - }, - "ListFoldersResponse": { - "id": "ListFoldersResponse", - "type": "object", - "description": "List Folders Response.", - "properties": { - "folder": { - "type": "array", - "description": "All GTM Folders of a GTM Container.", - "items": { - "$ref": "Folder" - } - }, - "nextPageToken": { - "type": "string", - "description": "Continuation token for fetching the next page of results." - } - } - }, - "ListTagsResponse": { - "id": "ListTagsResponse", - "type": "object", - "description": "List Tags Response.", - "properties": { - "nextPageToken": { - "type": "string", - "description": "Continuation token for fetching the next page of results." - }, - "tag": { - "type": "array", - "description": "All GTM Tags of a GTM Container.", - "items": { - "$ref": "Tag" - } - } - } - }, - "ListTriggersResponse": { - "id": "ListTriggersResponse", - "type": "object", - "description": "List triggers response.", - "properties": { - "nextPageToken": { - "type": "string", - "description": "Continuation token for fetching the next page of results." - }, - "trigger": { - "type": "array", - "description": "All GTM Triggers of a GTM Container.", - "items": { - "$ref": "Trigger" - } - } - } - }, - "ListUserPermissionsResponse": { - "id": "ListUserPermissionsResponse", - "type": "object", - "description": "List user permissions response.", - "properties": { - "nextPageToken": { - "type": "string", - "description": "Continuation token for fetching the next page of results." - }, - "userPermission": { - "type": "array", - "description": "All GTM UserPermissions of a GTM Account.", - "items": { - "$ref": "UserPermission" - } - } - } - }, - "ListVariablesResponse": { - "id": "ListVariablesResponse", - "type": "object", - "description": "List Variables Response.", - "properties": { - "nextPageToken": { - "type": "string", - "description": "Continuation token for fetching the next page of results." - }, - "variable": { - "type": "array", - "description": "All GTM Variables of a GTM Container.", - "items": { - "$ref": "Variable" - } - } - } - }, - "ListWorkspacesResponse": { - "id": "ListWorkspacesResponse", - "type": "object", - "description": "A list of workspaces in a container.", - "properties": { - "nextPageToken": { - "type": "string", - "description": "Continuation token for fetching the next page of results." - }, - "workspace": { - "type": "array", - "description": "All Workspaces of a GTM Container.", - "items": { - "$ref": "Workspace" - } - } - } - }, - "MergeConflict": { - "id": "MergeConflict", - "type": "object", - "description": "Represents a merge conflict.", - "properties": { - "entityInBaseVersion": { - "$ref": "Entity", - "description": "The base version entity (since the latest sync operation) that has conflicting changes compared to the workspace. If this field is missing, it means the workspace entity is deleted from the base version." - }, - "entityInWorkspace": { - "$ref": "Entity", - "description": "The workspace entity that has conflicting changes compared to the base version. If an entity is deleted in a workspace, it will still appear with a deleted change status." - } - } - }, - "Parameter": { - "id": "Parameter", - "type": "object", - "description": "Represents a Google Tag Manager Parameter.", - "properties": { "key": { - "type": "string", - "description": "The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values." - }, - "list": { - "type": "array", - "description": "This list parameter's parameters (keys will be ignored).", - "items": { - "$ref": "Parameter" - } - }, - "map": { - "type": "array", - "description": "This map parameter's parameters (must have keys; keys must be unique).", - "items": { - "$ref": "Parameter" - } - }, - "type": { - "type": "string", - "description": "The parameter type. Valid values are: \n- boolean: The value represents a boolean, represented as 'true' or 'false' \n- integer: The value represents a 64-bit signed integer value, in base 10 \n- list: A list of parameters should be specified \n- map: A map of parameters should be specified \n- template: The value represents any text; this can include variable references (even variable references that might return non-string types)", - "enum": [ - "boolean", - "integer", - "list", - "map", - "template", - "typeUnspecified" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "" - ], - "annotations": { - "required": [ - "tagmanager.accounts.containers.workspaces.tags.create", - "tagmanager.accounts.containers.workspaces.tags.update", - "tagmanager.accounts.containers.workspaces.triggers.create", - "tagmanager.accounts.containers.workspaces.triggers.update", - "tagmanager.accounts.containers.workspaces.variables.create", - "tagmanager.accounts.containers.workspaces.variables.update" - ] - } - }, - "value": { - "type": "string", - "description": "A parameter's value (may contain variable references such as \"{{myVariable}}\") as appropriate to the specified type." - } - } - }, - "PublishContainerVersionResponse": { - "id": "PublishContainerVersionResponse", - "type": "object", - "description": "Publish container version response.", - "properties": { - "compilerError": { - "type": "boolean", - "description": "Compiler errors or not." - }, - "containerVersion": { - "$ref": "ContainerVersion", - "description": "The container version created." - } - } - }, - "QuickPreviewResponse": { - "id": "QuickPreviewResponse", - "type": "object", - "description": "Response to quick previewing a workspace.", - "properties": { - "compilerError": { - "type": "boolean", - "description": "Were there compiler errors or not." - }, - "containerVersion": { - "$ref": "ContainerVersion", - "description": "The quick previewed container version." - }, - "syncStatus": { - "$ref": "SyncStatus", - "description": "Whether quick previewing failed when syncing the workspace to the latest container version." - } - } - }, - "RevertBuiltInVariableResponse": { - "id": "RevertBuiltInVariableResponse", - "type": "object", - "description": "The result of reverting a built-in variable in a workspace.", - "properties": { - "enabled": { - "type": "boolean", - "description": "Whether the built-in variable is enabled after reversion." - } - } - }, - "RevertFolderResponse": { - "id": "RevertFolderResponse", - "type": "object", - "description": "The result of reverting folder changes in a workspace.", - "properties": { - "folder": { - "$ref": "Folder", - "description": "Folder as it appears in the latest container version since the last workspace synchronization operation. If no folder is present, that means the folder was deleted in the latest container version." - } - } - }, - "RevertTagResponse": { - "id": "RevertTagResponse", - "type": "object", - "description": "The result of reverting a tag in a workspace.", - "properties": { - "tag": { - "$ref": "Tag", - "description": "Tag as it appears in the latest container version since the last workspace synchronization operation. If no tag is present, that means the tag was deleted in the latest container version." - } - } - }, - "RevertTriggerResponse": { - "id": "RevertTriggerResponse", - "type": "object", - "description": "The result of reverting a trigger in a workspace.", - "properties": { - "trigger": { - "$ref": "Trigger", - "description": "Trigger as it appears in the latest container version since the last workspace synchronization operation. If no trigger is present, that means the trigger was deleted in the latest container version." - } - } - }, - "RevertVariableResponse": { - "id": "RevertVariableResponse", - "type": "object", - "description": "The result of reverting a variable in a workspace.", - "properties": { - "variable": { - "$ref": "Variable", - "description": "Variable as it appears in the latest container version since the last workspace synchronization operation. If no variable is present, that means the variable was deleted in the latest container version." - } - } - }, - "SetupTag": { - "id": "SetupTag", - "type": "object", - "description": "Represents a reference to atag that fires before another tag in order to set up dependencies.", - "properties": { - "stopOnSetupFailure": { - "type": "boolean", - "description": "If true, fire the main tag if and only if the setup tag fires successfully. If false, fire the main tag regardless of setup tag firing status." - }, - "tagName": { - "type": "string", - "description": "The name of the setup tag." - } - } - }, - "SyncStatus": { - "id": "SyncStatus", - "type": "object", - "description": "The status of a workspace after synchronization.", - "properties": { - "mergeConflict": { - "type": "boolean", - "description": "Synchornization operation detected a merge conflict." - }, - "syncError": { - "type": "boolean", - "description": "An error occurred during the synchronization operation." - } - } - }, - "SyncWorkspaceResponse": { - "id": "SyncWorkspaceResponse", - "type": "object", - "description": "A response after synchronizing the workspace to the latest container version.", - "properties": { - "mergeConflict": { - "type": "array", - "description": "The merge conflict after sync. If this field is not empty, the sync is still treated as successful. But a version cannot be created until all conflicts are resolved.", - "items": { - "$ref": "MergeConflict" - } - }, - "syncStatus": { - "$ref": "SyncStatus", - "description": "Indicates whether synchronization caused a merge conflict or sync error." - } - } - }, - "Tag": { - "id": "Tag", - "type": "object", - "description": "Represents a Google Tag Manager Tag.", - "properties": { - "accountId": { - "type": "string", - "description": "GTM Account ID." - }, - "blockingRuleId": { - "type": "array", - "description": "Blocking rule IDs. If any of the listed rules evaluate to true, the tag will not fire.", - "items": { + "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" - } }, - "blockingTriggerId": { - "type": "array", - "description": "Blocking trigger IDs. If any of the listed triggers evaluate to true, the tag will not fire.", - "items": { + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", "type": "string" - } }, - "containerId": { - "type": "string", - "description": "GTM Container ID." + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" }, - "fingerprint": { - "type": "string", - "description": "The fingerprint of the GTM Tag as computed at storage time. This value is recomputed whenever the tag is modified." - }, - "firingRuleId": { - "type": "array", - "description": "Firing rule IDs. A tag will fire when any of the listed rules are true and all of its blockingRuleIds (if any specified) are false.", - "items": { + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", + "location": "query", "type": "string" - } }, - "firingTriggerId": { - "type": "array", - "description": "Firing trigger IDs. A tag will fire when any of the listed triggers are true and all of its blockingTriggerIds (if any specified) are false.", - "items": { + "userIp": { + "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", + "location": "query", "type": "string" - } - }, - "liveOnly": { - "type": "boolean", - "description": "If set to true, this tag will only fire in the live environment (e.g. not in preview or debug mode)." - }, - "name": { - "type": "string", - "description": "Tag display name.", - "annotations": { - "required": [ - "tagmanager.accounts.containers.workspaces.tags.create", - "tagmanager.accounts.containers.workspaces.tags.update" - ] - } - }, - "notes": { - "type": "string", - "description": "User notes on how to apply this tag in the container." - }, - "parameter": { - "type": "array", - "description": "The tag's parameters.", - "items": { - "$ref": "Parameter" - } - }, - "parentFolderId": { - "type": "string", - "description": "Parent folder id." - }, - "path": { - "type": "string", - "description": "GTM Tag's API relative path." - }, - "paused": { - "type": "boolean", - "description": "Indicates whether the tag is paused, which prevents the tag from firing." - }, - "priority": { - "$ref": "Parameter", - "description": "User defined numeric priority of the tag. Tags are fired asynchronously in order of priority. Tags with higher numeric value fire first. A tag's priority can be a positive or negative value. The default value is 0." - }, - "scheduleEndMs": { - "type": "string", - "description": "The end timestamp in milliseconds to schedule a tag.", - "format": "int64" - }, - "scheduleStartMs": { - "type": "string", - "description": "The start timestamp in milliseconds to schedule a tag.", - "format": "int64" - }, - "setupTag": { - "type": "array", - "description": "The list of setup tags. Currently we only allow one.", - "items": { - "$ref": "SetupTag" - } - }, - "tagFiringOption": { - "type": "string", - "description": "Option to fire this tag.", - "enum": [ - "oncePerEvent", - "oncePerLoad", - "tagFiringOptionUnspecified", - "unlimited" - ], - "enumDescriptions": [ - "", - "", - "", - "" - ] - }, - "tagId": { - "type": "string", - "description": "The Tag ID uniquely identifies the GTM Tag." - }, - "tagManagerUrl": { - "type": "string", - "description": "Auto generated link to the tag manager UI" - }, - "teardownTag": { - "type": "array", - "description": "The list of teardown tags. Currently we only allow one.", - "items": { - "$ref": "TeardownTag" - } - }, - "type": { - "type": "string", - "description": "GTM Tag Type.", - "annotations": { - "required": [ - "tagmanager.accounts.containers.workspaces.tags.create", - "tagmanager.accounts.containers.workspaces.tags.update" - ] - } - }, - "workspaceId": { - "type": "string", - "description": "GTM Workspace ID." } - } }, - "TeardownTag": { - "id": "TeardownTag", - "type": "object", - "description": "Represents a tag that fires after another tag in order to tear down dependencies.", - "properties": { - "stopTeardownOnFailure": { - "type": "boolean", - "description": "If true, fire the teardown tag if and only if the main tag fires successfully. If false, fire the teardown tag regardless of main tag firing status." - }, - "tagName": { - "type": "string", - "description": "The name of the teardown tag." - } - } - }, - "Timestamp": { - "id": "Timestamp", - "type": "object", - "description": "A Timestamp represents a point in time independent of any time zone or calendar, represented as seconds and fractions of seconds at nanosecond resolution in UTC Epoch time. It is encoded using the Proleptic Gregorian Calendar which extends the Gregorian calendar backwards to year one. It is encoded assuming all minutes are 60 seconds long, i.e. leap seconds are \"smeared\" so that no leap second table is needed for interpretation. Range is from 0001-01-01T00:00:00Z to 9999-12-31T23:59:59.999999999Z. By restricting to that range, we ensure that we can convert to and from RFC 3339 date strings. See [https://www.ietf.org/rfc/rfc3339.txt](https://www.ietf.org/rfc/rfc3339.txt).\n\n# Examples\n\nExample 1: Compute Timestamp from POSIX `time()`.\n\nTimestamp timestamp; timestamp.set_seconds(time(NULL)); timestamp.set_nanos(0);\n\nExample 2: Compute Timestamp from POSIX `gettimeofday()`.\n\nstruct timeval tv; gettimeofday(&tv, NULL);\n\nTimestamp timestamp; timestamp.set_seconds(tv.tv_sec); timestamp.set_nanos(tv.tv_usec * 1000);\n\nExample 3: Compute Timestamp from Win32 `GetSystemTimeAsFileTime()`.\n\nFILETIME ft; GetSystemTimeAsFileTime(&ft); UINT64 ticks = (((UINT64)ft.dwHighDateTime) \u003c\u003c 32) | ft.dwLowDateTime;\n\n// A Windows tick is 100 nanoseconds. Windows epoch 1601-01-01T00:00:00Z // is 11644473600 seconds before Unix epoch 1970-01-01T00:00:00Z. Timestamp timestamp; timestamp.set_seconds((INT64) ((ticks / 10000000) - 11644473600LL)); timestamp.set_nanos((INT32) ((ticks % 10000000) * 100));\n\nExample 4: Compute Timestamp from Java `System.currentTimeMillis()`.\n\nlong millis = System.currentTimeMillis();\n\nTimestamp timestamp = Timestamp.newBuilder().setSeconds(millis / 1000) .setNanos((int) ((millis % 1000) * 1000000)).build();\n\n\n\nExample 5: Compute Timestamp from current time in Python.\n\ntimestamp = Timestamp() timestamp.GetCurrentTime()\n\n# JSON Mapping\n\nIn JSON format, the Timestamp type is encoded as a string in the [RFC 3339](https://www.ietf.org/rfc/rfc3339.txt) format. That is, the format is \"{year}-{month}-{day}T{hour}:{min}:{sec}[.{frac_sec}]Z\" where {year} is always expressed using four digits while {month}, {day}, {hour}, {min}, and {sec} are zero-padded to two digits each. The fractional seconds, which can go up to 9 digits (i.e. up to 1 nanosecond resolution), are optional. The \"Z\" suffix indicates the timezone (\"UTC\"); the timezone is required, though only UTC (as indicated by \"Z\") is presently supported.\n\nFor example, \"2017-01-15T01:30:15.01Z\" encodes 15.01 seconds past 01:30 UTC on January 15, 2017.\n\nIn JavaScript, one can convert a Date object to this format using the standard [toISOString()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toISOString] method. In Python, a standard `datetime.datetime` object can be converted to this format using [`strftime`](https://docs.python.org/2/library/time.html#time.strftime) with the time format spec '%Y-%m-%dT%H:%M:%S.%fZ'. Likewise, in Java, one can use the Joda Time's [`ISODateTimeFormat.dateTime()`]( http://joda-time.sourceforge.net/apidocs/org/joda/time/format/ISODateTimeFormat.html#dateTime()) to obtain a formatter capable of generating timestamps in this format.", - "properties": { - "nanos": { - "type": "integer", - "description": "Non-negative fractions of a second at nanosecond resolution. Negative second values with fractions must still have non-negative nanos values that count forward in time. Must be from 0 to 999,999,999 inclusive.", - "format": "int32" - }, - "seconds": { - "type": "string", - "description": "Represents seconds of UTC time since Unix epoch 1970-01-01T00:00:00Z. Must be from 0001-01-01T00:00:00Z to 9999-12-31T23:59:59Z inclusive.", - "format": "int64" - } - } - }, - "Trigger": { - "id": "Trigger", - "type": "object", - "description": "Represents a Google Tag Manager Trigger", - "properties": { - "accountId": { - "type": "string", - "description": "GTM Account ID." - }, - "autoEventFilter": { - "type": "array", - "description": "Used in the case of auto event tracking.", - "items": { - "$ref": "Condition" - } - }, - "checkValidation": { - "$ref": "Parameter", - "description": "Whether or not we should only fire tags if the form submit or link click event is not cancelled by some other event handler (e.g. because of validation). Only valid for Form Submission and Link Click triggers." - }, - "containerId": { - "type": "string", - "description": "GTM Container ID." - }, - "continuousTimeMinMilliseconds": { - "$ref": "Parameter", - "description": "A visibility trigger minimum continuous visible time (in milliseconds). Only valid for AMP Visibility trigger." - }, - "customEventFilter": { - "type": "array", - "description": "Used in the case of custom event, which is fired iff all Conditions are true.", - "items": { - "$ref": "Condition" - } - }, - "eventName": { - "$ref": "Parameter", - "description": "Name of the GTM event that is fired. Only valid for Timer triggers." - }, - "filter": { - "type": "array", - "description": "The trigger will only fire iff all Conditions are true.", - "items": { - "$ref": "Condition" - } - }, - "fingerprint": { - "type": "string", - "description": "The fingerprint of the GTM Trigger as computed at storage time. This value is recomputed whenever the trigger is modified." - }, - "horizontalScrollPercentageList": { - "$ref": "Parameter", - "description": "List of integer percentage values for scroll triggers. The trigger will fire when each percentage is reached when the view is scrolled horizontally. Only valid for AMP scroll triggers." - }, - "interval": { - "$ref": "Parameter", - "description": "Time between triggering recurring Timer Events (in milliseconds). Only valid for Timer triggers." - }, - "intervalSeconds": { - "$ref": "Parameter", - "description": "Time between Timer Events to fire (in seconds). Only valid for AMP Timer trigger." - }, - "limit": { - "$ref": "Parameter", - "description": "Limit of the number of GTM events this Timer Trigger will fire. If no limit is set, we will continue to fire GTM events until the user leaves the page. Only valid for Timer triggers." - }, - "maxTimerLengthSeconds": { - "$ref": "Parameter", - "description": "Max time to fire Timer Events (in seconds). Only valid for AMP Timer trigger." - }, - "name": { - "type": "string", - "description": "Trigger display name.", - "annotations": { - "required": [ - "tagmanager.accounts.containers.workspaces.triggers.create", - "tagmanager.accounts.containers.workspaces.triggers.update" - ] - } - }, - "notes": { - "type": "string", - "description": "User notes on how to apply this trigger in the container." - }, - "parameter": { - "type": "array", - "description": "Additional parameters.", - "items": { - "$ref": "Parameter" - } - }, - "parentFolderId": { - "type": "string", - "description": "Parent folder id." - }, - "path": { - "type": "string", - "description": "GTM Trigger's API relative path." - }, - "selector": { - "$ref": "Parameter", - "description": "A click trigger CSS selector (i.e. \"a\", \"button\" etc.). Only valid for AMP Click trigger." - }, - "tagManagerUrl": { - "type": "string", - "description": "Auto generated link to the tag manager UI" - }, - "totalTimeMinMilliseconds": { - "$ref": "Parameter", - "description": "A visibility trigger minimum total visible time (in milliseconds). Only valid for AMP Visibility trigger." - }, - "triggerId": { - "type": "string", - "description": "The Trigger ID uniquely identifies the GTM Trigger." - }, - "type": { - "type": "string", - "description": "Defines the data layer event that causes this trigger.", - "enum": [ - "always", - "ampClick", - "ampScroll", - "ampTimer", - "ampVisibility", - "click", - "customEvent", - "domReady", - "elementVisibility", - "eventTypeUnspecified", - "firebaseAppException", - "firebaseAppUpdate", - "firebaseCampaign", - "firebaseFirstOpen", - "firebaseInAppPurchase", - "firebaseNotificationDismiss", - "firebaseNotificationForeground", - "firebaseNotificationOpen", - "firebaseNotificationReceive", - "firebaseOsUpdate", - "firebaseSessionStart", - "firebaseUserEngagement", - "formSubmission", - "historyChange", - "jsError", - "linkClick", - "pageview", - "scrollDepth", - "timer", - "windowLoaded", - "youTubeVideo" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ], - "annotations": { - "required": [ - "tagmanager.accounts.containers.workspaces.triggers.create" - ] - } - }, - "uniqueTriggerId": { - "$ref": "Parameter", - "description": "Globally unique id of the trigger that auto-generates this (a Form Submit, Link Click or Timer listener) if any. Used to make incompatible auto-events work together with trigger filtering based on trigger ids. This value is populated during output generation since the tags implied by triggers don't exist until then. Only valid for Form Submit, Link Click and Timer triggers." - }, - "verticalScrollPercentageList": { - "$ref": "Parameter", - "description": "List of integer percentage values for scroll triggers. The trigger will fire when each percentage is reached when the view is scrolled vertically. Only valid for AMP scroll triggers." - }, - "visibilitySelector": { - "$ref": "Parameter", - "description": "A visibility trigger CSS selector (i.e. \"#id\"). Only valid for AMP Visibility trigger." - }, - "visiblePercentageMax": { - "$ref": "Parameter", - "description": "A visibility trigger maximum percent visibility. Only valid for AMP Visibility trigger." - }, - "visiblePercentageMin": { - "$ref": "Parameter", - "description": "A visibility trigger minimum percent visibility. Only valid for AMP Visibility trigger." - }, - "waitForTags": { - "$ref": "Parameter", - "description": "Whether or not we should delay the form submissions or link opening until all of the tags have fired (by preventing the default action and later simulating the default action). Only valid for Form Submission and Link Click triggers." - }, - "waitForTagsTimeout": { - "$ref": "Parameter", - "description": "How long to wait (in milliseconds) for tags to fire when 'waits_for_tags' above evaluates to true. Only valid for Form Submission and Link Click triggers." - }, - "workspaceId": { - "type": "string", - "description": "GTM Workspace ID." - } - } - }, - "UpdateWorkspaceProposalRequest": { - "id": "UpdateWorkspaceProposalRequest", - "type": "object", - "description": "Updates a workspace proposal with patch-like semantics.", - "properties": { - "fingerprint": { - "type": "string", - "description": "When provided, this fingerprint must match the fingerprint of the proposal in storage." - }, - "newComment": { - "$ref": "WorkspaceProposalHistoryComment", - "description": "If present, a new comment is added to the workspace proposal history." - }, - "reviewers": { - "type": "array", - "description": "If present, the list of reviewers of the workspace proposal is updated.", - "items": { - "$ref": "WorkspaceProposalUser" - } - }, - "status": { - "type": "string", - "description": "If present, the status of the workspace proposal is updated.", - "enum": [ - "approved", - "cancelled", - "completed", - "requested", - "reviewed", - "statusUnspecified" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "" - ] - } - } - }, - "UserPermission": { - "id": "UserPermission", - "type": "object", - "description": "Represents a user's permissions to an account and its container.", - "properties": { - "accountAccess": { - "$ref": "AccountAccess", - "description": "GTM Account access permissions." - }, - "accountId": { - "type": "string", - "description": "The Account ID uniquely identifies the GTM Account." - }, - "containerAccess": { - "type": "array", - "description": "GTM Container access permissions.", - "items": { - "$ref": "ContainerAccess" - } - }, - "emailAddress": { - "type": "string", - "description": "User's email address." - }, - "path": { - "type": "string", - "description": "GTM UserPermission's API relative path." - } - } - }, - "Variable": { - "id": "Variable", - "type": "object", - "description": "Represents a Google Tag Manager Variable.", - "properties": { - "accountId": { - "type": "string", - "description": "GTM Account ID." - }, - "containerId": { - "type": "string", - "description": "GTM Container ID." - }, - "disablingTriggerId": { - "type": "array", - "description": "For mobile containers only: A list of trigger IDs for disabling conditional variables; the variable is enabled if one of the enabling trigger is true while all the disabling trigger are false. Treated as an unordered set.", - "items": { - "type": "string" - } - }, - "enablingTriggerId": { - "type": "array", - "description": "For mobile containers only: A list of trigger IDs for enabling conditional variables; the variable is enabled if one of the enabling triggers is true while all the disabling triggers are false. Treated as an unordered set.", - "items": { - "type": "string" - } - }, - "fingerprint": { - "type": "string", - "description": "The fingerprint of the GTM Variable as computed at storage time. This value is recomputed whenever the variable is modified." - }, - "name": { - "type": "string", - "description": "Variable display name.", - "annotations": { - "required": [ - "tagmanager.accounts.containers.workspaces.variables.create", - "tagmanager.accounts.containers.workspaces.variables.update" - ] - } - }, - "notes": { - "type": "string", - "description": "User notes on how to apply this variable in the container." - }, - "parameter": { - "type": "array", - "description": "The variable's parameters.", - "items": { - "$ref": "Parameter" - } - }, - "parentFolderId": { - "type": "string", - "description": "Parent folder id." - }, - "path": { - "type": "string", - "description": "GTM Variable's API relative path." - }, - "scheduleEndMs": { - "type": "string", - "description": "The end timestamp in milliseconds to schedule a variable.", - "format": "int64" - }, - "scheduleStartMs": { - "type": "string", - "description": "The start timestamp in milliseconds to schedule a variable.", - "format": "int64" - }, - "tagManagerUrl": { - "type": "string", - "description": "Auto generated link to the tag manager UI" - }, - "type": { - "type": "string", - "description": "GTM Variable Type.", - "annotations": { - "required": [ - "tagmanager.accounts.containers.workspaces.variables.create", - "tagmanager.accounts.containers.workspaces.variables.update" - ] - } - }, - "variableId": { - "type": "string", - "description": "The Variable ID uniquely identifies the GTM Variable." - }, - "workspaceId": { - "type": "string", - "description": "GTM Workspace ID." - } - } - }, - "Workspace": { - "id": "Workspace", - "type": "object", - "description": "Represents a Google Tag Manager Container Workspace.", - "properties": { - "accountId": { - "type": "string", - "description": "GTM Account ID." - }, - "containerId": { - "type": "string", - "description": "GTM Container ID." - }, - "description": { - "type": "string", - "description": "Workspace description." - }, - "fingerprint": { - "type": "string", - "description": "The fingerprint of the GTM Workspace as computed at storage time. This value is recomputed whenever the workspace is modified." - }, - "name": { - "type": "string", - "description": "Workspace display name.", - "annotations": { - "required": [ - "tagmanager.accounts.containers.workspaces.create", - "tagmanager.accounts.containers.workspaces.update" - ] - } - }, - "path": { - "type": "string", - "description": "GTM Workspace's API relative path." - }, - "tagManagerUrl": { - "type": "string", - "description": "Auto generated link to the tag manager UI" - }, - "workspaceId": { - "type": "string", - "description": "The Workspace ID uniquely identifies the GTM Workspace." - } - } - }, - "WorkspaceProposal": { - "id": "WorkspaceProposal", - "type": "object", - "description": "A workspace proposal represents an ongoing review of workspace changes in an effort to gain approval for container version creation.", - "properties": { - "authors": { - "type": "array", - "description": "List of authors for the workspace proposal.", - "items": { - "$ref": "WorkspaceProposalUser" - } - }, - "fingerprint": { - "type": "string", - "description": "The fingerprint of the GTM workspace proposal as computed at storage time. This value is recomputed whenever the proposal is modified." - }, - "history": { - "type": "array", - "description": "Records the history of comments and status changes.", - "items": { - "$ref": "WorkspaceProposalHistory" - } - }, - "path": { - "type": "string", - "description": "GTM workspace proposal's relative path." - }, - "reviewers": { - "type": "array", - "description": "Lists of reviewers for the workspace proposal.", - "items": { - "$ref": "WorkspaceProposalUser" - } - }, - "status": { - "type": "string", - "description": "The status of the workspace proposal as it goes through review.", - "enum": [ - "approved", - "cancelled", - "completed", - "requested", - "reviewed", - "statusUnspecified" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "" - ] - } - } - }, - "WorkspaceProposalHistory": { - "id": "WorkspaceProposalHistory", - "type": "object", - "description": "A history event that represents a comment or status change in the proposal.", - "properties": { - "comment": { - "$ref": "WorkspaceProposalHistoryComment", - "description": "A user or reviewer comment." - }, - "createdBy": { - "$ref": "WorkspaceProposalUser", - "description": "The party responsible for the change in history." - }, - "createdTimestamp": { - "$ref": "Timestamp", - "description": "When this history event was added to the workspace proposal." - }, - "statusChange": { - "$ref": "WorkspaceProposalHistoryStatusChange", - "description": "A change in the proposal's status." - }, - "type": { - "type": "string", - "description": "The history type distinguishing between comments and status changes.", - "enum": [ - "comment", - "statusChange", - "unspecified" - ], - "enumDescriptions": [ - "", - "", - "" - ] - } - } - }, - "WorkspaceProposalHistoryComment": { - "id": "WorkspaceProposalHistoryComment", - "type": "object", - "description": "A comment from the reviewer or author.", - "properties": { - "content": { - "type": "string", - "description": "The contents of the reviewer or author comment." - } - } - }, - "WorkspaceProposalHistoryStatusChange": { - "id": "WorkspaceProposalHistoryStatusChange", - "type": "object", - "description": "A change in the proposal's status.", - "properties": { - "newStatus": { - "type": "string", - "description": "The new proposal status after that status change.", - "enum": [ - "approved", - "cancelled", - "completed", - "requested", - "reviewed", - "statusUnspecified" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "" - ] - }, - "oldStatus": { - "type": "string", - "description": "The old proposal status before the status change.", - "enum": [ - "approved", - "cancelled", - "completed", - "requested", - "reviewed", - "statusUnspecified" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "" - ] - } - } - }, - "WorkspaceProposalUser": { - "id": "WorkspaceProposalUser", - "type": "object", - "description": "Represents an external user or internal Google Tag Manager system.", - "properties": { - "gaiaId": { - "type": "string", - "description": "Gaia id associated with a user, absent for the Google Tag Manager system.", - "format": "int64" - }, - "type": { - "type": "string", - "description": "User type distinguishes between a user and the Google Tag Manager system.", - "enum": [ - "gaiaId", - "system" - ], - "enumDescriptions": [ - "", - "" - ] - } - } - }, - "Zone": { - "id": "Zone", - "type": "object", - "description": "Represents a Google Tag Manager Zone's contents.", - "properties": { - "accountId": { - "type": "string", - "description": "GTM Account ID." - }, - "boundary": { - "$ref": "ZoneBoundary", - "description": "This Zone's boundary." - }, - "childContainer": { - "type": "array", - "description": "Containers that are children of this Zone.", - "items": { - "$ref": "ZoneChildContainer" - } - }, - "containerId": { - "type": "string", - "description": "GTM Container ID." - }, - "fingerprint": { - "type": "string", - "description": "The fingerprint of the GTM Zone as computed at storage time. This value is recomputed whenever the zone is modified." - }, - "name": { - "type": "string", - "description": "Zone display name." - }, - "notes": { - "type": "string", - "description": "User notes on how to apply this zone in the container." - }, - "path": { - "type": "string", - "description": "GTM Zone's API relative path." - }, - "tagManagerUrl": { - "type": "string", - "description": "Auto generated link to the tag manager UI" - }, - "typeRestriction": { - "$ref": "ZoneTypeRestriction", - "description": "This Zone's type restrictions." - }, - "workspaceId": { - "type": "string", - "description": "GTM Workspace ID." - }, - "zoneId": { - "type": "string", - "description": "The Zone ID uniquely identifies the GTM Zone." - } - } - }, - "ZoneBoundary": { - "id": "ZoneBoundary", - "type": "object", - "description": "Represents a Zone's boundaries.", - "properties": { - "condition": { - "type": "array", - "description": "The conditions that, when conjoined, make up the boundary.", - "items": { - "$ref": "Condition" - } - }, - "customEvaluationTriggerId": { - "type": "array", - "description": "Custom evaluation trigger IDs. A zone will evaluate its boundary conditions when any of the listed triggers are true.", - "items": { - "type": "string" - } - } - } - }, - "ZoneChildContainer": { - "id": "ZoneChildContainer", - "type": "object", - "description": "Represents a child container of a Zone.", - "properties": { - "nickname": { - "type": "string", - "description": "The zone's nickname for the child container." - }, - "publicId": { - "type": "string", - "description": "The child container's public id." - } - } - }, - "ZoneTypeRestriction": { - "id": "ZoneTypeRestriction", - "type": "object", - "description": "Represents a Zone's type restrictions.", - "properties": { - "enable": { - "type": "boolean", - "description": "True if type restrictions have been enabled for this Zone." - }, - "whitelistedTypeId": { - "type": "array", - "description": "List of type public ids that have been whitelisted for use in this Zone.", - "items": { - "type": "string" - } - } - } - } - }, - "resources": { - "accounts": { - "methods": { - "get": { - "id": "tagmanager.accounts.get", - "path": "{+path}", - "httpMethod": "GET", - "description": "Gets a GTM Account.", - "parameters": { - "path": { - "type": "string", - "description": "GTM Accounts's API relative path. Example: accounts/{account_id}", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "path" - ], - "response": { - "$ref": "Account" - }, - "scopes": [ - "https://www.googleapis.com/auth/tagmanager.edit.containers", - "https://www.googleapis.com/auth/tagmanager.manage.accounts", - "https://www.googleapis.com/auth/tagmanager.readonly" - ] - }, - "list": { - "id": "tagmanager.accounts.list", - "path": "accounts", - "httpMethod": "GET", - "description": "Lists all GTM Accounts that a user has access to.", - "parameters": { - "pageToken": { - "type": "string", - "description": "Continuation token for fetching the next page of results.", - "location": "query" - } - }, - "response": { - "$ref": "ListAccountsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/tagmanager.edit.containers", - "https://www.googleapis.com/auth/tagmanager.manage.accounts", - "https://www.googleapis.com/auth/tagmanager.readonly" - ] - }, - "update": { - "id": "tagmanager.accounts.update", - "path": "{+path}", - "httpMethod": "PUT", - "description": "Updates a GTM Account.", - "parameters": { - "fingerprint": { - "type": "string", - "description": "When provided, this fingerprint must match the fingerprint of the account in storage.", - "location": "query" - }, - "path": { - "type": "string", - "description": "GTM Accounts's API relative path. Example: accounts/{account_id}", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "path" - ], - "request": { - "$ref": "Account" - }, - "response": { - "$ref": "Account" - }, - "scopes": [ - "https://www.googleapis.com/auth/tagmanager.manage.accounts" - ] - } - }, - "resources": { - "containers": { - "methods": { - "create": { - "id": "tagmanager.accounts.containers.create", - "path": "{+parent}/containers", - "httpMethod": "POST", - "description": "Creates a Container.", - "parameters": { - "parent": { - "type": "string", - "description": "GTM Account's API relative path. Example: accounts/{account_id}.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "parent" - ], - "request": { - "$ref": "Container" - }, - "response": { - "$ref": "Container" - }, - "scopes": [ - "https://www.googleapis.com/auth/tagmanager.edit.containers" - ] - }, - "delete": { - "id": "tagmanager.accounts.containers.delete", - "path": "{+path}", - "httpMethod": "DELETE", - "description": "Deletes a Container.", - "parameters": { - "path": { - "type": "string", - "description": "GTM Container's API relative path. Example: accounts/{account_id}/containers/{container_id}", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "path" - ], - "scopes": [ - "https://www.googleapis.com/auth/tagmanager.delete.containers" - ] - }, - "get": { - "id": "tagmanager.accounts.containers.get", - "path": "{+path}", - "httpMethod": "GET", - "description": "Gets a Container.", - "parameters": { - "path": { - "type": "string", - "description": "GTM Container's API relative path. Example: accounts/{account_id}/containers/{container_id}", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "path" - ], - "response": { - "$ref": "Container" - }, - "scopes": [ - "https://www.googleapis.com/auth/tagmanager.edit.containers", - "https://www.googleapis.com/auth/tagmanager.readonly" - ] - }, - "list": { - "id": "tagmanager.accounts.containers.list", - "path": "{+parent}/containers", - "httpMethod": "GET", - "description": "Lists all Containers that belongs to a GTM Account.", - "parameters": { - "pageToken": { - "type": "string", - "description": "Continuation token for fetching the next page of results.", - "location": "query" + "protocol": "rest", + "resources": { + "accounts": { + "methods": { + "get": { + "description": "Gets a GTM Account.", + "httpMethod": "GET", + "id": "tagmanager.accounts.get", + "parameterOrder": [ + "path" + ], + "parameters": { + "path": { + "description": "GTM Accounts's API relative path. Example: accounts/{account_id}", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{+path}", + "response": { + "$ref": "Account" + }, + "scopes": [ + "https://www.googleapis.com/auth/tagmanager.edit.containers", + "https://www.googleapis.com/auth/tagmanager.manage.accounts", + "https://www.googleapis.com/auth/tagmanager.readonly" + ] }, - "parent": { - "type": "string", - "description": "GTM Accounts's API relative path. Example: accounts/{account_id}.", - "required": true, - "location": "path" + "list": { + "description": "Lists all GTM Accounts that a user has access to.", + "httpMethod": "GET", + "id": "tagmanager.accounts.list", + "parameters": { + "pageToken": { + "description": "Continuation token for fetching the next page of results.", + "location": "query", + "type": "string" + } + }, + "path": "accounts", + "response": { + "$ref": "ListAccountsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/tagmanager.edit.containers", + "https://www.googleapis.com/auth/tagmanager.manage.accounts", + "https://www.googleapis.com/auth/tagmanager.readonly" + ] + }, + "update": { + "description": "Updates a GTM Account.", + "httpMethod": "PUT", + "id": "tagmanager.accounts.update", + "parameterOrder": [ + "path" + ], + "parameters": { + "fingerprint": { + "description": "When provided, this fingerprint must match the fingerprint of the account in storage.", + "location": "query", + "type": "string" + }, + "path": { + "description": "GTM Accounts's API relative path. Example: accounts/{account_id}", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{+path}", + "request": { + "$ref": "Account" + }, + "response": { + "$ref": "Account" + }, + "scopes": [ + "https://www.googleapis.com/auth/tagmanager.manage.accounts" + ] } - }, - "parameterOrder": [ - "parent" - ], - "response": { - "$ref": "ListContainersResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/tagmanager.edit.containers", - "https://www.googleapis.com/auth/tagmanager.readonly" - ] }, - "update": { - "id": "tagmanager.accounts.containers.update", - "path": "{+path}", - "httpMethod": "PUT", - "description": "Updates a Container.", - "parameters": { + "resources": { + "containers": { + "methods": { + "create": { + "description": "Creates a Container.", + "httpMethod": "POST", + "id": "tagmanager.accounts.containers.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "GTM Account's API relative path. Example: accounts/{account_id}.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{+parent}/containers", + "request": { + "$ref": "Container" + }, + "response": { + "$ref": "Container" + }, + "scopes": [ + "https://www.googleapis.com/auth/tagmanager.edit.containers" + ] + }, + "delete": { + "description": "Deletes a Container.", + "httpMethod": "DELETE", + "id": "tagmanager.accounts.containers.delete", + "parameterOrder": [ + "path" + ], + "parameters": { + "path": { + "description": "GTM Container's API relative path. Example: accounts/{account_id}/containers/{container_id}", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{+path}", + "scopes": [ + "https://www.googleapis.com/auth/tagmanager.delete.containers" + ] + }, + "get": { + "description": "Gets a Container.", + "httpMethod": "GET", + "id": "tagmanager.accounts.containers.get", + "parameterOrder": [ + "path" + ], + "parameters": { + "path": { + "description": "GTM Container's API relative path. Example: accounts/{account_id}/containers/{container_id}", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{+path}", + "response": { + "$ref": "Container" + }, + "scopes": [ + "https://www.googleapis.com/auth/tagmanager.edit.containers", + "https://www.googleapis.com/auth/tagmanager.readonly" + ] + }, + "list": { + "description": "Lists all Containers that belongs to a GTM Account.", + "httpMethod": "GET", + "id": "tagmanager.accounts.containers.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "pageToken": { + "description": "Continuation token for fetching the next page of results.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "GTM Accounts's API relative path. Example: accounts/{account_id}.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{+parent}/containers", + "response": { + "$ref": "ListContainersResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/tagmanager.edit.containers", + "https://www.googleapis.com/auth/tagmanager.readonly" + ] + }, + "update": { + "description": "Updates a Container.", + "httpMethod": "PUT", + "id": "tagmanager.accounts.containers.update", + "parameterOrder": [ + "path" + ], + "parameters": { + "fingerprint": { + "description": "When provided, this fingerprint must match the fingerprint of the container in storage.", + "location": "query", + "type": "string" + }, + "path": { + "description": "GTM Container's API relative path. Example: accounts/{account_id}/containers/{container_id}", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{+path}", + "request": { + "$ref": "Container" + }, + "response": { + "$ref": "Container" + }, + "scopes": [ + "https://www.googleapis.com/auth/tagmanager.edit.containers" + ] + } + }, + "resources": { + "environments": { + "methods": { + "create": { + "description": "Creates a GTM Environment.", + "httpMethod": "POST", + "id": "tagmanager.accounts.containers.environments.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "GTM Container's API relative path. Example: accounts/{account_id}/containers/{container_id}", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{+parent}/environments", + "request": { + "$ref": "Environment" + }, + "response": { + "$ref": "Environment" + }, + "scopes": [ + "https://www.googleapis.com/auth/tagmanager.edit.containers" + ] + }, + "delete": { + "description": "Deletes a GTM Environment.", + "httpMethod": "DELETE", + "id": "tagmanager.accounts.containers.environments.delete", + "parameterOrder": [ + "path" + ], + "parameters": { + "path": { + "description": "GTM Environment's API relative path. Example: accounts/{account_id}/containers/{container_id}/environments/{environment_id}", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{+path}", + "scopes": [ + "https://www.googleapis.com/auth/tagmanager.edit.containers" + ] + }, + "get": { + "description": "Gets a GTM Environment.", + "httpMethod": "GET", + "id": "tagmanager.accounts.containers.environments.get", + "parameterOrder": [ + "path" + ], + "parameters": { + "path": { + "description": "GTM Environment's API relative path. Example: accounts/{account_id}/containers/{container_id}/environments/{environment_id}", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{+path}", + "response": { + "$ref": "Environment" + }, + "scopes": [ + "https://www.googleapis.com/auth/tagmanager.edit.containers", + "https://www.googleapis.com/auth/tagmanager.readonly" + ] + }, + "list": { + "description": "Lists all GTM Environments of a GTM Container.", + "httpMethod": "GET", + "id": "tagmanager.accounts.containers.environments.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "pageToken": { + "description": "Continuation token for fetching the next page of results.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "GTM Container's API relative path. Example: accounts/{account_id}/containers/{container_id}", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{+parent}/environments", + "response": { + "$ref": "ListEnvironmentsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/tagmanager.edit.containers", + "https://www.googleapis.com/auth/tagmanager.readonly" + ] + }, + "patch": { + "description": "Updates a GTM Environment. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "tagmanager.accounts.containers.environments.patch", + "parameterOrder": [ + "path" + ], + "parameters": { + "fingerprint": { + "description": "When provided, this fingerprint must match the fingerprint of the environment in storage.", + "location": "query", + "type": "string" + }, + "path": { + "description": "GTM Environment's API relative path. Example: accounts/{account_id}/containers/{container_id}/environments/{environment_id}", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{+path}", + "request": { + "$ref": "Environment" + }, + "response": { + "$ref": "Environment" + }, + "scopes": [ + "https://www.googleapis.com/auth/tagmanager.edit.containers" + ] + }, + "reauthorize": { + "description": "Re-generates the authorization code for a GTM Environment.", + "httpMethod": "POST", + "id": "tagmanager.accounts.containers.environments.reauthorize", + "parameterOrder": [ + "path" + ], + "parameters": { + "path": { + "description": "GTM Environment's API relative path. Example: accounts/{account_id}/containers/{container_id}/environments/{environment_id}", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{+path}:reauthorize", + "request": { + "$ref": "Environment" + }, + "response": { + "$ref": "Environment" + }, + "scopes": [ + "https://www.googleapis.com/auth/tagmanager.publish" + ] + }, + "update": { + "description": "Updates a GTM Environment.", + "httpMethod": "PUT", + "id": "tagmanager.accounts.containers.environments.update", + "parameterOrder": [ + "path" + ], + "parameters": { + "fingerprint": { + "description": "When provided, this fingerprint must match the fingerprint of the environment in storage.", + "location": "query", + "type": "string" + }, + "path": { + "description": "GTM Environment's API relative path. Example: accounts/{account_id}/containers/{container_id}/environments/{environment_id}", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{+path}", + "request": { + "$ref": "Environment" + }, + "response": { + "$ref": "Environment" + }, + "scopes": [ + "https://www.googleapis.com/auth/tagmanager.edit.containers" + ] + } + } + }, + "version_headers": { + "methods": { + "latest": { + "description": "Gets the latest container version header", + "httpMethod": "GET", + "id": "tagmanager.accounts.containers.version_headers.latest", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "GTM Container's API relative path. Example: accounts/{account_id}/containers/{container_id}", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{+parent}/version_headers:latest", + "response": { + "$ref": "ContainerVersionHeader" + }, + "scopes": [ + "https://www.googleapis.com/auth/tagmanager.edit.containers", + "https://www.googleapis.com/auth/tagmanager.readonly" + ] + }, + "list": { + "description": "Lists all Container Versions of a GTM Container.", + "httpMethod": "GET", + "id": "tagmanager.accounts.containers.version_headers.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "includeDeleted": { + "description": "Also retrieve deleted (archived) versions when true.", + "location": "query", + "type": "boolean" + }, + "pageToken": { + "description": "Continuation token for fetching the next page of results.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "GTM Container's API relative path. Example: accounts/{account_id}/containers/{container_id}", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{+parent}/version_headers", + "response": { + "$ref": "ListContainerVersionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/tagmanager.edit.containers", + "https://www.googleapis.com/auth/tagmanager.edit.containerversions", + "https://www.googleapis.com/auth/tagmanager.readonly" + ] + } + } + }, + "versions": { + "methods": { + "delete": { + "description": "Deletes a Container Version.", + "httpMethod": "DELETE", + "id": "tagmanager.accounts.containers.versions.delete", + "parameterOrder": [ + "path" + ], + "parameters": { + "path": { + "description": "GTM ContainerVersion's API relative path. Example: accounts/{account_id}/containers/{container_id}/versions/{version_id}", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{+path}", + "scopes": [ + "https://www.googleapis.com/auth/tagmanager.edit.containerversions" + ] + }, + "get": { + "description": "Gets a Container Version.", + "httpMethod": "GET", + "id": "tagmanager.accounts.containers.versions.get", + "parameterOrder": [ + "path" + ], + "parameters": { + "containerVersionId": { + "description": "The GTM ContainerVersion ID. Specify published to retrieve the currently published version.", + "location": "query", + "type": "string" + }, + "path": { + "description": "GTM ContainerVersion's API relative path. Example: accounts/{account_id}/containers/{container_id}/versions/{version_id}", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{+path}", + "response": { + "$ref": "ContainerVersion" + }, + "scopes": [ + "https://www.googleapis.com/auth/tagmanager.edit.containers", + "https://www.googleapis.com/auth/tagmanager.edit.containerversions", + "https://www.googleapis.com/auth/tagmanager.readonly" + ] + }, + "live": { + "description": "Gets the live (i.e. published) container version", + "httpMethod": "GET", + "id": "tagmanager.accounts.containers.versions.live", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "GTM Container's API relative path. Example: accounts/{account_id}/containers/{container_id}", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{+parent}/versions:live", + "response": { + "$ref": "ContainerVersion" + }, + "scopes": [ + "https://www.googleapis.com/auth/tagmanager.edit.containers", + "https://www.googleapis.com/auth/tagmanager.readonly" + ] + }, + "publish": { + "description": "Publishes a Container Version.", + "httpMethod": "POST", + "id": "tagmanager.accounts.containers.versions.publish", + "parameterOrder": [ + "path" + ], + "parameters": { + "fingerprint": { + "description": "When provided, this fingerprint must match the fingerprint of the container version in storage.", + "location": "query", + "type": "string" + }, + "path": { + "description": "GTM ContainerVersion's API relative path. Example: accounts/{account_id}/containers/{container_id}/versions/{version_id}", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{+path}:publish", + "response": { + "$ref": "PublishContainerVersionResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/tagmanager.publish" + ] + }, + "set_latest": { + "description": "Sets the latest version used for synchronization of workspaces when detecting conflicts and errors.", + "httpMethod": "POST", + "id": "tagmanager.accounts.containers.versions.set_latest", + "parameterOrder": [ + "path" + ], + "parameters": { + "path": { + "description": "GTM ContainerVersion's API relative path. Example: accounts/{account_id}/containers/{container_id}/versions/{version_id}", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{+path}:set_latest", + "response": { + "$ref": "ContainerVersion" + }, + "scopes": [ + "https://www.googleapis.com/auth/tagmanager.edit.containers" + ] + }, + "undelete": { + "description": "Undeletes a Container Version.", + "httpMethod": "POST", + "id": "tagmanager.accounts.containers.versions.undelete", + "parameterOrder": [ + "path" + ], + "parameters": { + "path": { + "description": "GTM ContainerVersion's API relative path. Example: accounts/{account_id}/containers/{container_id}/versions/{version_id}", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{+path}:undelete", + "response": { + "$ref": "ContainerVersion" + }, + "scopes": [ + "https://www.googleapis.com/auth/tagmanager.edit.containerversions" + ] + }, + "update": { + "description": "Updates a Container Version.", + "httpMethod": "PUT", + "id": "tagmanager.accounts.containers.versions.update", + "parameterOrder": [ + "path" + ], + "parameters": { + "fingerprint": { + "description": "When provided, this fingerprint must match the fingerprint of the container version in storage.", + "location": "query", + "type": "string" + }, + "path": { + "description": "GTM ContainerVersion's API relative path. Example: accounts/{account_id}/containers/{container_id}/versions/{version_id}", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{+path}", + "request": { + "$ref": "ContainerVersion" + }, + "response": { + "$ref": "ContainerVersion" + }, + "scopes": [ + "https://www.googleapis.com/auth/tagmanager.edit.containerversions" + ] + } + } + }, + "workspaces": { + "methods": { + "create": { + "description": "Creates a Workspace.", + "httpMethod": "POST", + "id": "tagmanager.accounts.containers.workspaces.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "GTM parent Container's API relative path. Example: accounts/{account_id}/containers/{container_id}", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{+parent}/workspaces", + "request": { + "$ref": "Workspace" + }, + "response": { + "$ref": "Workspace" + }, + "scopes": [ + "https://www.googleapis.com/auth/tagmanager.edit.containers" + ] + }, + "create_version": { + "description": "Creates a Container Version from the entities present in the workspace, deletes the workspace, and sets the base container version to the newly created version.", + "httpMethod": "POST", + "id": "tagmanager.accounts.containers.workspaces.create_version", + "parameterOrder": [ + "path" + ], + "parameters": { + "path": { + "description": "GTM Workspace's API relative path. Example: accounts/{account_id}/containers/{container_id}/workspaces/{workspace_id}", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{+path}:create_version", + "request": { + "$ref": "CreateContainerVersionRequestVersionOptions" + }, + "response": { + "$ref": "CreateContainerVersionResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/tagmanager.edit.containerversions" + ] + }, + "delete": { + "description": "Deletes a Workspace.", + "httpMethod": "DELETE", + "id": "tagmanager.accounts.containers.workspaces.delete", + "parameterOrder": [ + "path" + ], + "parameters": { + "path": { + "description": "GTM Workspace's API relative path. Example: accounts/{account_id}/containers/{container_id}/workspaces/{workspace_id}", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{+path}", + "scopes": [ + "https://www.googleapis.com/auth/tagmanager.delete.containers" + ] + }, + "get": { + "description": "Gets a Workspace.", + "httpMethod": "GET", + "id": "tagmanager.accounts.containers.workspaces.get", + "parameterOrder": [ + "path" + ], + "parameters": { + "path": { + "description": "GTM Workspace's API relative path. Example: accounts/{account_id}/containers/{container_id}/workspaces/{workspace_id}", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{+path}", + "response": { + "$ref": "Workspace" + }, + "scopes": [ + "https://www.googleapis.com/auth/tagmanager.edit.containers", + "https://www.googleapis.com/auth/tagmanager.readonly" + ] + }, + "getProposal": { + "description": "Gets a GTM Workspace Proposal.", + "httpMethod": "GET", + "id": "tagmanager.accounts.containers.workspaces.getProposal", + "parameterOrder": [ + "path" + ], + "parameters": { + "path": { + "description": "GTM workspace proposal's relative path: Example: accounts/{aid}/containers/{cid}/workspace/{wid}/workspace_proposal", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{+path}", + "response": { + "$ref": "WorkspaceProposal" + } + }, + "getStatus": { + "description": "Finds conflicting and modified entities in the workspace.", + "httpMethod": "GET", + "id": "tagmanager.accounts.containers.workspaces.getStatus", + "parameterOrder": [ + "path" + ], + "parameters": { + "path": { + "description": "GTM Workspace's API relative path. Example: accounts/{account_id}/containers/{container_id}/workspaces/{workspace_id}", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{+path}/status", + "response": { + "$ref": "GetWorkspaceStatusResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/tagmanager.edit.containers", + "https://www.googleapis.com/auth/tagmanager.readonly" + ] + }, + "list": { + "description": "Lists all Workspaces that belong to a GTM Container.", + "httpMethod": "GET", + "id": "tagmanager.accounts.containers.workspaces.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "pageToken": { + "description": "Continuation token for fetching the next page of results.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "GTM parent Container's API relative path. Example: accounts/{account_id}/containers/{container_id}", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{+parent}/workspaces", + "response": { + "$ref": "ListWorkspacesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/tagmanager.edit.containers", + "https://www.googleapis.com/auth/tagmanager.readonly" + ] + }, + "quick_preview": { + "description": "Quick previews a workspace by creating a fake container version from all entities in the provided workspace.", + "httpMethod": "POST", + "id": "tagmanager.accounts.containers.workspaces.quick_preview", + "parameterOrder": [ + "path" + ], + "parameters": { + "path": { + "description": "GTM Workspace's API relative path. Example: accounts/{account_id}/containers/{container_id}/workspaces/{workspace_id}", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{+path}:quick_preview", + "response": { + "$ref": "QuickPreviewResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/tagmanager.edit.containerversions" + ] + }, + "resolve_conflict": { + "description": "Resolves a merge conflict for a workspace entity by updating it to the resolved entity passed in the request.", + "httpMethod": "POST", + "id": "tagmanager.accounts.containers.workspaces.resolve_conflict", + "parameterOrder": [ + "path" + ], + "parameters": { + "fingerprint": { + "description": "When provided, this fingerprint must match the fingerprint of the entity_in_workspace in the merge conflict.", + "location": "query", + "type": "string" + }, + "path": { + "description": "GTM Workspace's API relative path. Example: accounts/{account_id}/containers/{container_id}/workspaces/{workspace_id}", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{+path}:resolve_conflict", + "request": { + "$ref": "Entity" + }, + "scopes": [ + "https://www.googleapis.com/auth/tagmanager.edit.containers" + ] + }, + "sync": { + "description": "Syncs a workspace to the latest container version by updating all unmodified workspace entities and displaying conflicts for modified entities.", + "httpMethod": "POST", + "id": "tagmanager.accounts.containers.workspaces.sync", + "parameterOrder": [ + "path" + ], + "parameters": { + "path": { + "description": "GTM Workspace's API relative path. Example: accounts/{account_id}/containers/{container_id}/workspaces/{workspace_id}", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{+path}:sync", + "response": { + "$ref": "SyncWorkspaceResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/tagmanager.edit.containers" + ] + }, + "update": { + "description": "Updates a Workspace.", + "httpMethod": "PUT", + "id": "tagmanager.accounts.containers.workspaces.update", + "parameterOrder": [ + "path" + ], + "parameters": { + "fingerprint": { + "description": "When provided, this fingerprint must match the fingerprint of the workspace in storage.", + "location": "query", + "type": "string" + }, + "path": { + "description": "GTM Workspace's API relative path. Example: accounts/{account_id}/containers/{container_id}/workspaces/{workspace_id}", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{+path}", + "request": { + "$ref": "Workspace" + }, + "response": { + "$ref": "Workspace" + }, + "scopes": [ + "https://www.googleapis.com/auth/tagmanager.edit.containers" + ] + }, + "updateProposal": { + "description": "Updates a GTM Workspace Proposal.", + "httpMethod": "PUT", + "id": "tagmanager.accounts.containers.workspaces.updateProposal", + "parameterOrder": [ + "path" + ], + "parameters": { + "path": { + "description": "GTM workspace proposal's relative path: Example: accounts/{aid}/containers/{cid}/workspace/{wid}/workspace_proposal", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{+path}", + "request": { + "$ref": "UpdateWorkspaceProposalRequest" + }, + "response": { + "$ref": "WorkspaceProposal" + } + } + }, + "resources": { + "built_in_variables": { + "methods": { + "create": { + "description": "Creates one or more GTM Built-In Variables.", + "httpMethod": "POST", + "id": "tagmanager.accounts.containers.workspaces.built_in_variables.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "GTM Workspace's API relative path. Example: accounts/{account_id}/containers/{container_id}/workspaces/{workspace_id}", + "location": "path", + "required": true, + "type": "string" + }, + "type": { + "description": "The types of built-in variables to enable.", + "enum": [ + "advertiserId", + "advertisingTrackingEnabled", + "ampBrowserLanguage", + "ampCanonicalHost", + "ampCanonicalPath", + "ampCanonicalUrl", + "ampClientId", + "ampClientMaxScrollX", + "ampClientMaxScrollY", + "ampClientScreenHeight", + "ampClientScreenWidth", + "ampClientScrollX", + "ampClientScrollY", + "ampClientTimestamp", + "ampClientTimezone", + "ampGtmEvent", + "ampPageDownloadTime", + "ampPageLoadTime", + "ampPageViewId", + "ampReferrer", + "ampTitle", + "ampTotalEngagedTime", + "appId", + "appName", + "appVersionCode", + "appVersionName", + "builtInVariableTypeUnspecified", + "clickClasses", + "clickElement", + "clickId", + "clickTarget", + "clickText", + "clickUrl", + "containerId", + "containerVersion", + "debugMode", + "deviceName", + "elementVisibilityFirstTime", + "elementVisibilityRatio", + "elementVisibilityRecentTime", + "elementVisibilityTime", + "environmentName", + "errorLine", + "errorMessage", + "errorUrl", + "event", + "eventName", + "firebaseEventParameterCampaign", + "firebaseEventParameterCampaignAclid", + "firebaseEventParameterCampaignAnid", + "firebaseEventParameterCampaignClickTimestamp", + "firebaseEventParameterCampaignContent", + "firebaseEventParameterCampaignCp1", + "firebaseEventParameterCampaignGclid", + "firebaseEventParameterCampaignSource", + "firebaseEventParameterCampaignTerm", + "firebaseEventParameterCurrency", + "firebaseEventParameterDynamicLinkAcceptTime", + "firebaseEventParameterDynamicLinkLinkid", + "firebaseEventParameterNotificationMessageDeviceTime", + "firebaseEventParameterNotificationMessageId", + "firebaseEventParameterNotificationMessageName", + "firebaseEventParameterNotificationMessageTime", + "firebaseEventParameterNotificationTopic", + "firebaseEventParameterPreviousAppVersion", + "firebaseEventParameterPreviousOsVersion", + "firebaseEventParameterPrice", + "firebaseEventParameterProductId", + "firebaseEventParameterQuantity", + "firebaseEventParameterValue", + "formClasses", + "formElement", + "formId", + "formTarget", + "formText", + "formUrl", + "historySource", + "htmlId", + "language", + "newHistoryFragment", + "newHistoryState", + "oldHistoryFragment", + "oldHistoryState", + "osVersion", + "pageHostname", + "pagePath", + "pageUrl", + "platform", + "randomNumber", + "referrer", + "resolution", + "scrollDepthDirection", + "scrollDepthThreshold", + "scrollDepthUnits", + "sdkVersion", + "videoCurrentTime", + "videoDuration", + "videoPercent", + "videoProvider", + "videoStatus", + "videoTitle", + "videoUrl", + "videoVisible" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "location": "query", + "repeated": true, + "type": "string" + } + }, + "path": "{+parent}/built_in_variables", + "response": { + "$ref": "CreateBuiltInVariableResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/tagmanager.edit.containers" + ] + }, + "delete": { + "description": "Deletes one or more GTM Built-In Variables.", + "httpMethod": "DELETE", + "id": "tagmanager.accounts.containers.workspaces.built_in_variables.delete", + "parameterOrder": [ + "path" + ], + "parameters": { + "path": { + "description": "GTM BuiltInVariable's API relative path. Example: accounts/{account_id}/containers/{container_id}/workspaces/{workspace_id}/built_in_variables", + "location": "path", + "required": true, + "type": "string" + }, + "type": { + "description": "The types of built-in variables to delete.", + "enum": [ + "advertiserId", + "advertisingTrackingEnabled", + "ampBrowserLanguage", + "ampCanonicalHost", + "ampCanonicalPath", + "ampCanonicalUrl", + "ampClientId", + "ampClientMaxScrollX", + "ampClientMaxScrollY", + "ampClientScreenHeight", + "ampClientScreenWidth", + "ampClientScrollX", + "ampClientScrollY", + "ampClientTimestamp", + "ampClientTimezone", + "ampGtmEvent", + "ampPageDownloadTime", + "ampPageLoadTime", + "ampPageViewId", + "ampReferrer", + "ampTitle", + "ampTotalEngagedTime", + "appId", + "appName", + "appVersionCode", + "appVersionName", + "builtInVariableTypeUnspecified", + "clickClasses", + "clickElement", + "clickId", + "clickTarget", + "clickText", + "clickUrl", + "containerId", + "containerVersion", + "debugMode", + "deviceName", + "elementVisibilityFirstTime", + "elementVisibilityRatio", + "elementVisibilityRecentTime", + "elementVisibilityTime", + "environmentName", + "errorLine", + "errorMessage", + "errorUrl", + "event", + "eventName", + "firebaseEventParameterCampaign", + "firebaseEventParameterCampaignAclid", + "firebaseEventParameterCampaignAnid", + "firebaseEventParameterCampaignClickTimestamp", + "firebaseEventParameterCampaignContent", + "firebaseEventParameterCampaignCp1", + "firebaseEventParameterCampaignGclid", + "firebaseEventParameterCampaignSource", + "firebaseEventParameterCampaignTerm", + "firebaseEventParameterCurrency", + "firebaseEventParameterDynamicLinkAcceptTime", + "firebaseEventParameterDynamicLinkLinkid", + "firebaseEventParameterNotificationMessageDeviceTime", + "firebaseEventParameterNotificationMessageId", + "firebaseEventParameterNotificationMessageName", + "firebaseEventParameterNotificationMessageTime", + "firebaseEventParameterNotificationTopic", + "firebaseEventParameterPreviousAppVersion", + "firebaseEventParameterPreviousOsVersion", + "firebaseEventParameterPrice", + "firebaseEventParameterProductId", + "firebaseEventParameterQuantity", + "firebaseEventParameterValue", + "formClasses", + "formElement", + "formId", + "formTarget", + "formText", + "formUrl", + "historySource", + "htmlId", + "language", + "newHistoryFragment", + "newHistoryState", + "oldHistoryFragment", + "oldHistoryState", + "osVersion", + "pageHostname", + "pagePath", + "pageUrl", + "platform", + "randomNumber", + "referrer", + "resolution", + "scrollDepthDirection", + "scrollDepthThreshold", + "scrollDepthUnits", + "sdkVersion", + "videoCurrentTime", + "videoDuration", + "videoPercent", + "videoProvider", + "videoStatus", + "videoTitle", + "videoUrl", + "videoVisible" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "location": "query", + "repeated": true, + "type": "string" + } + }, + "path": "{+path}", + "scopes": [ + "https://www.googleapis.com/auth/tagmanager.edit.containers" + ] + }, + "list": { + "description": "Lists all the enabled Built-In Variables of a GTM Container.", + "httpMethod": "GET", + "id": "tagmanager.accounts.containers.workspaces.built_in_variables.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "pageToken": { + "description": "Continuation token for fetching the next page of results.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "GTM Workspace's API relative path. Example: accounts/{account_id}/containers/{container_id}/workspaces/{workspace_id}", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{+parent}/built_in_variables", + "response": { + "$ref": "ListEnabledBuiltInVariablesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/tagmanager.edit.containers", + "https://www.googleapis.com/auth/tagmanager.readonly" + ] + }, + "revert": { + "description": "Reverts changes to a GTM Built-In Variables in a GTM Workspace.", + "httpMethod": "POST", + "id": "tagmanager.accounts.containers.workspaces.built_in_variables.revert", + "parameterOrder": [ + "path" + ], + "parameters": { + "path": { + "description": "GTM BuiltInVariable's API relative path. Example: accounts/{account_id}/containers/{container_id}/workspaces/{workspace_id}/built_in_variables", + "location": "path", + "required": true, + "type": "string" + }, + "type": { + "description": "The type of built-in variable to revert.", + "enum": [ + "advertiserId", + "advertisingTrackingEnabled", + "ampBrowserLanguage", + "ampCanonicalHost", + "ampCanonicalPath", + "ampCanonicalUrl", + "ampClientId", + "ampClientMaxScrollX", + "ampClientMaxScrollY", + "ampClientScreenHeight", + "ampClientScreenWidth", + "ampClientScrollX", + "ampClientScrollY", + "ampClientTimestamp", + "ampClientTimezone", + "ampGtmEvent", + "ampPageDownloadTime", + "ampPageLoadTime", + "ampPageViewId", + "ampReferrer", + "ampTitle", + "ampTotalEngagedTime", + "appId", + "appName", + "appVersionCode", + "appVersionName", + "builtInVariableTypeUnspecified", + "clickClasses", + "clickElement", + "clickId", + "clickTarget", + "clickText", + "clickUrl", + "containerId", + "containerVersion", + "debugMode", + "deviceName", + "elementVisibilityFirstTime", + "elementVisibilityRatio", + "elementVisibilityRecentTime", + "elementVisibilityTime", + "environmentName", + "errorLine", + "errorMessage", + "errorUrl", + "event", + "eventName", + "firebaseEventParameterCampaign", + "firebaseEventParameterCampaignAclid", + "firebaseEventParameterCampaignAnid", + "firebaseEventParameterCampaignClickTimestamp", + "firebaseEventParameterCampaignContent", + "firebaseEventParameterCampaignCp1", + "firebaseEventParameterCampaignGclid", + "firebaseEventParameterCampaignSource", + "firebaseEventParameterCampaignTerm", + "firebaseEventParameterCurrency", + "firebaseEventParameterDynamicLinkAcceptTime", + "firebaseEventParameterDynamicLinkLinkid", + "firebaseEventParameterNotificationMessageDeviceTime", + "firebaseEventParameterNotificationMessageId", + "firebaseEventParameterNotificationMessageName", + "firebaseEventParameterNotificationMessageTime", + "firebaseEventParameterNotificationTopic", + "firebaseEventParameterPreviousAppVersion", + "firebaseEventParameterPreviousOsVersion", + "firebaseEventParameterPrice", + "firebaseEventParameterProductId", + "firebaseEventParameterQuantity", + "firebaseEventParameterValue", + "formClasses", + "formElement", + "formId", + "formTarget", + "formText", + "formUrl", + "historySource", + "htmlId", + "language", + "newHistoryFragment", + "newHistoryState", + "oldHistoryFragment", + "oldHistoryState", + "osVersion", + "pageHostname", + "pagePath", + "pageUrl", + "platform", + "randomNumber", + "referrer", + "resolution", + "scrollDepthDirection", + "scrollDepthThreshold", + "scrollDepthUnits", + "sdkVersion", + "videoCurrentTime", + "videoDuration", + "videoPercent", + "videoProvider", + "videoStatus", + "videoTitle", + "videoUrl", + "videoVisible" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "location": "query", + "type": "string" + } + }, + "path": "{+path}/built_in_variables:revert", + "response": { + "$ref": "RevertBuiltInVariableResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/tagmanager.edit.containers" + ] + } + } + }, + "folders": { + "methods": { + "create": { + "description": "Creates a GTM Folder.", + "httpMethod": "POST", + "id": "tagmanager.accounts.containers.workspaces.folders.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "GTM Workspace's API relative path. Example: accounts/{account_id}/containers/{container_id}/workspaces/{workspace_id}", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{+parent}/folders", + "request": { + "$ref": "Folder" + }, + "response": { + "$ref": "Folder" + }, + "scopes": [ + "https://www.googleapis.com/auth/tagmanager.edit.containers" + ] + }, + "delete": { + "description": "Deletes a GTM Folder.", + "httpMethod": "DELETE", + "id": "tagmanager.accounts.containers.workspaces.folders.delete", + "parameterOrder": [ + "path" + ], + "parameters": { + "path": { + "description": "GTM Folder's API relative path. Example: accounts/{account_id}/containers/{container_id}/workspaces/{workspace_id}/folders/{folder_id}", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{+path}", + "scopes": [ + "https://www.googleapis.com/auth/tagmanager.edit.containers" + ] + }, + "entities": { + "description": "List all entities in a GTM Folder.", + "httpMethod": "POST", + "id": "tagmanager.accounts.containers.workspaces.folders.entities", + "parameterOrder": [ + "path" + ], + "parameters": { + "pageToken": { + "description": "Continuation token for fetching the next page of results.", + "location": "query", + "type": "string" + }, + "path": { + "description": "GTM Folder's API relative path. Example: accounts/{account_id}/containers/{container_id}/workspaces/{workspace_id}/folders/{folder_id}", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{+path}:entities", + "response": { + "$ref": "FolderEntities" + }, + "scopes": [ + "https://www.googleapis.com/auth/tagmanager.edit.containers", + "https://www.googleapis.com/auth/tagmanager.readonly" + ] + }, + "get": { + "description": "Gets a GTM Folder.", + "httpMethod": "GET", + "id": "tagmanager.accounts.containers.workspaces.folders.get", + "parameterOrder": [ + "path" + ], + "parameters": { + "path": { + "description": "GTM Folder's API relative path. Example: accounts/{account_id}/containers/{container_id}/workspaces/{workspace_id}/folders/{folder_id}", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{+path}", + "response": { + "$ref": "Folder" + }, + "scopes": [ + "https://www.googleapis.com/auth/tagmanager.edit.containers", + "https://www.googleapis.com/auth/tagmanager.readonly" + ] + }, + "list": { + "description": "Lists all GTM Folders of a Container.", + "httpMethod": "GET", + "id": "tagmanager.accounts.containers.workspaces.folders.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "pageToken": { + "description": "Continuation token for fetching the next page of results.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "GTM Workspace's API relative path. Example: accounts/{account_id}/containers/{container_id}/workspaces/{workspace_id}", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{+parent}/folders", + "response": { + "$ref": "ListFoldersResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/tagmanager.edit.containers", + "https://www.googleapis.com/auth/tagmanager.readonly" + ] + }, + "move_entities_to_folder": { + "description": "Moves entities to a GTM Folder.", + "httpMethod": "POST", + "id": "tagmanager.accounts.containers.workspaces.folders.move_entities_to_folder", + "parameterOrder": [ + "path" + ], + "parameters": { + "path": { + "description": "GTM Folder's API relative path. Example: accounts/{account_id}/containers/{container_id}/workspaces/{workspace_id}/folders/{folder_id}", + "location": "path", + "required": true, + "type": "string" + }, + "tagId": { + "description": "The tags to be moved to the folder.", + "location": "query", + "repeated": true, + "type": "string" + }, + "triggerId": { + "description": "The triggers to be moved to the folder.", + "location": "query", + "repeated": true, + "type": "string" + }, + "variableId": { + "description": "The variables to be moved to the folder.", + "location": "query", + "repeated": true, + "type": "string" + } + }, + "path": "{+path}:move_entities_to_folder", + "request": { + "$ref": "Folder" + }, + "scopes": [ + "https://www.googleapis.com/auth/tagmanager.edit.containers" + ] + }, + "revert": { + "description": "Reverts changes to a GTM Folder in a GTM Workspace.", + "httpMethod": "POST", + "id": "tagmanager.accounts.containers.workspaces.folders.revert", + "parameterOrder": [ + "path" + ], + "parameters": { + "fingerprint": { + "description": "When provided, this fingerprint must match the fingerprint of the tag in storage.", + "location": "query", + "type": "string" + }, + "path": { + "description": "GTM Folder's API relative path. Example: accounts/{account_id}/containers/{container_id}/workspaces/{workspace_id}/folders/{folder_id}", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{+path}:revert", + "response": { + "$ref": "RevertFolderResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/tagmanager.edit.containers" + ] + }, + "update": { + "description": "Updates a GTM Folder.", + "httpMethod": "PUT", + "id": "tagmanager.accounts.containers.workspaces.folders.update", + "parameterOrder": [ + "path" + ], + "parameters": { + "fingerprint": { + "description": "When provided, this fingerprint must match the fingerprint of the folder in storage.", + "location": "query", + "type": "string" + }, + "path": { + "description": "GTM Folder's API relative path. Example: accounts/{account_id}/containers/{container_id}/workspaces/{workspace_id}/folders/{folder_id}", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{+path}", + "request": { + "$ref": "Folder" + }, + "response": { + "$ref": "Folder" + }, + "scopes": [ + "https://www.googleapis.com/auth/tagmanager.edit.containers" + ] + } + } + }, + "proposal": { + "methods": { + "create": { + "description": "Creates a GTM Workspace Proposal.", + "httpMethod": "POST", + "id": "tagmanager.accounts.containers.workspaces.proposal.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "GTM Workspace's API relative path. Example: accounts/{aid}/containers/{cid}/workspace/{wid}", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{+parent}/proposal", + "request": { + "$ref": "CreateWorkspaceProposalRequest" + }, + "response": { + "$ref": "WorkspaceProposal" + } + }, + "delete": { + "description": "Deletes a GTM Workspace Proposal.", + "httpMethod": "DELETE", + "id": "tagmanager.accounts.containers.workspaces.proposal.delete", + "parameterOrder": [ + "path" + ], + "parameters": { + "path": { + "description": "GTM workspace proposal's relative path: Example: accounts/{aid}/containers/{cid}/workspace/{wid}/workspace_proposal", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{+path}" + } + } + }, + "tags": { + "methods": { + "create": { + "description": "Creates a GTM Tag.", + "httpMethod": "POST", + "id": "tagmanager.accounts.containers.workspaces.tags.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "GTM Workspace's API relative path. Example: accounts/{account_id}/containers/{container_id}/workspaces/{workspace_id}", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{+parent}/tags", + "request": { + "$ref": "Tag" + }, + "response": { + "$ref": "Tag" + }, + "scopes": [ + "https://www.googleapis.com/auth/tagmanager.edit.containers" + ] + }, + "delete": { + "description": "Deletes a GTM Tag.", + "httpMethod": "DELETE", + "id": "tagmanager.accounts.containers.workspaces.tags.delete", + "parameterOrder": [ + "path" + ], + "parameters": { + "path": { + "description": "GTM Tag's API relative path. Example: accounts/{account_id}/containers/{container_id}/workspaces/{workspace_id}/tags/{tag_id}", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{+path}", + "scopes": [ + "https://www.googleapis.com/auth/tagmanager.edit.containers" + ] + }, + "get": { + "description": "Gets a GTM Tag.", + "httpMethod": "GET", + "id": "tagmanager.accounts.containers.workspaces.tags.get", + "parameterOrder": [ + "path" + ], + "parameters": { + "path": { + "description": "GTM Tag's API relative path. Example: accounts/{account_id}/containers/{container_id}/workspaces/{workspace_id}/tags/{tag_id}", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{+path}", + "response": { + "$ref": "Tag" + }, + "scopes": [ + "https://www.googleapis.com/auth/tagmanager.edit.containers", + "https://www.googleapis.com/auth/tagmanager.readonly" + ] + }, + "list": { + "description": "Lists all GTM Tags of a Container.", + "httpMethod": "GET", + "id": "tagmanager.accounts.containers.workspaces.tags.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "pageToken": { + "description": "Continuation token for fetching the next page of results.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "GTM Workspace's API relative path. Example: accounts/{account_id}/containers/{container_id}/workspaces/{workspace_id}", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{+parent}/tags", + "response": { + "$ref": "ListTagsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/tagmanager.edit.containers", + "https://www.googleapis.com/auth/tagmanager.readonly" + ] + }, + "revert": { + "description": "Reverts changes to a GTM Tag in a GTM Workspace.", + "httpMethod": "POST", + "id": "tagmanager.accounts.containers.workspaces.tags.revert", + "parameterOrder": [ + "path" + ], + "parameters": { + "fingerprint": { + "description": "When provided, this fingerprint must match the fingerprint of thetag in storage.", + "location": "query", + "type": "string" + }, + "path": { + "description": "GTM Tag's API relative path. Example: accounts/{account_id}/containers/{container_id}/workspaces/{workspace_id}/tags/{tag_id}", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{+path}:revert", + "response": { + "$ref": "RevertTagResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/tagmanager.edit.containers" + ] + }, + "update": { + "description": "Updates a GTM Tag.", + "httpMethod": "PUT", + "id": "tagmanager.accounts.containers.workspaces.tags.update", + "parameterOrder": [ + "path" + ], + "parameters": { + "fingerprint": { + "description": "When provided, this fingerprint must match the fingerprint of the tag in storage.", + "location": "query", + "type": "string" + }, + "path": { + "description": "GTM Tag's API relative path. Example: accounts/{account_id}/containers/{container_id}/workspaces/{workspace_id}/tags/{tag_id}", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{+path}", + "request": { + "$ref": "Tag" + }, + "response": { + "$ref": "Tag" + }, + "scopes": [ + "https://www.googleapis.com/auth/tagmanager.edit.containers" + ] + } + } + }, + "triggers": { + "methods": { + "create": { + "description": "Creates a GTM Trigger.", + "httpMethod": "POST", + "id": "tagmanager.accounts.containers.workspaces.triggers.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "GTM Workspaces's API relative path. Example: accounts/{account_id}/containers/{container_id}/workspaces/{workspace_id}", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{+parent}/triggers", + "request": { + "$ref": "Trigger" + }, + "response": { + "$ref": "Trigger" + }, + "scopes": [ + "https://www.googleapis.com/auth/tagmanager.edit.containers" + ] + }, + "delete": { + "description": "Deletes a GTM Trigger.", + "httpMethod": "DELETE", + "id": "tagmanager.accounts.containers.workspaces.triggers.delete", + "parameterOrder": [ + "path" + ], + "parameters": { + "path": { + "description": "GTM Trigger's API relative path. Example: accounts/{account_id}/containers/{container_id}/workspaces/{workspace_id}/triggers/{trigger_id}", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{+path}", + "scopes": [ + "https://www.googleapis.com/auth/tagmanager.edit.containers" + ] + }, + "get": { + "description": "Gets a GTM Trigger.", + "httpMethod": "GET", + "id": "tagmanager.accounts.containers.workspaces.triggers.get", + "parameterOrder": [ + "path" + ], + "parameters": { + "path": { + "description": "GTM Trigger's API relative path. Example: accounts/{account_id}/containers/{container_id}/workspaces/{workspace_id}/triggers/{trigger_id}", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{+path}", + "response": { + "$ref": "Trigger" + }, + "scopes": [ + "https://www.googleapis.com/auth/tagmanager.edit.containers", + "https://www.googleapis.com/auth/tagmanager.readonly" + ] + }, + "list": { + "description": "Lists all GTM Triggers of a Container.", + "httpMethod": "GET", + "id": "tagmanager.accounts.containers.workspaces.triggers.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "pageToken": { + "description": "Continuation token for fetching the next page of results.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "GTM Workspaces's API relative path. Example: accounts/{account_id}/containers/{container_id}/workspaces/{workspace_id}", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{+parent}/triggers", + "response": { + "$ref": "ListTriggersResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/tagmanager.edit.containers", + "https://www.googleapis.com/auth/tagmanager.readonly" + ] + }, + "revert": { + "description": "Reverts changes to a GTM Trigger in a GTM Workspace.", + "httpMethod": "POST", + "id": "tagmanager.accounts.containers.workspaces.triggers.revert", + "parameterOrder": [ + "path" + ], + "parameters": { + "fingerprint": { + "description": "When provided, this fingerprint must match the fingerprint of the trigger in storage.", + "location": "query", + "type": "string" + }, + "path": { + "description": "GTM Trigger's API relative path. Example: accounts/{account_id}/containers/{container_id}/workspaces/{workspace_id}/triggers/{trigger_id}", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{+path}:revert", + "response": { + "$ref": "RevertTriggerResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/tagmanager.edit.containers" + ] + }, + "update": { + "description": "Updates a GTM Trigger.", + "httpMethod": "PUT", + "id": "tagmanager.accounts.containers.workspaces.triggers.update", + "parameterOrder": [ + "path" + ], + "parameters": { + "fingerprint": { + "description": "When provided, this fingerprint must match the fingerprint of the trigger in storage.", + "location": "query", + "type": "string" + }, + "path": { + "description": "GTM Trigger's API relative path. Example: accounts/{account_id}/containers/{container_id}/workspaces/{workspace_id}/triggers/{trigger_id}", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{+path}", + "request": { + "$ref": "Trigger" + }, + "response": { + "$ref": "Trigger" + }, + "scopes": [ + "https://www.googleapis.com/auth/tagmanager.edit.containers" + ] + } + } + }, + "variables": { + "methods": { + "create": { + "description": "Creates a GTM Variable.", + "httpMethod": "POST", + "id": "tagmanager.accounts.containers.workspaces.variables.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "GTM Workspace's API relative path. Example: accounts/{account_id}/containers/{container_id}/workspaces/{workspace_id}", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{+parent}/variables", + "request": { + "$ref": "Variable" + }, + "response": { + "$ref": "Variable" + }, + "scopes": [ + "https://www.googleapis.com/auth/tagmanager.edit.containers" + ] + }, + "delete": { + "description": "Deletes a GTM Variable.", + "httpMethod": "DELETE", + "id": "tagmanager.accounts.containers.workspaces.variables.delete", + "parameterOrder": [ + "path" + ], + "parameters": { + "path": { + "description": "GTM Variable's API relative path. Example: accounts/{account_id}/containers/{container_id}/workspaces/{workspace_id}/variables/{variable_id}", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{+path}", + "scopes": [ + "https://www.googleapis.com/auth/tagmanager.edit.containers" + ] + }, + "get": { + "description": "Gets a GTM Variable.", + "httpMethod": "GET", + "id": "tagmanager.accounts.containers.workspaces.variables.get", + "parameterOrder": [ + "path" + ], + "parameters": { + "path": { + "description": "GTM Variable's API relative path. Example: accounts/{account_id}/containers/{container_id}/workspaces/{workspace_id}/variables/{variable_id}", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{+path}", + "response": { + "$ref": "Variable" + }, + "scopes": [ + "https://www.googleapis.com/auth/tagmanager.edit.containers", + "https://www.googleapis.com/auth/tagmanager.readonly" + ] + }, + "list": { + "description": "Lists all GTM Variables of a Container.", + "httpMethod": "GET", + "id": "tagmanager.accounts.containers.workspaces.variables.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "pageToken": { + "description": "Continuation token for fetching the next page of results.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "GTM Workspace's API relative path. Example: accounts/{account_id}/containers/{container_id}/workspaces/{workspace_id}", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{+parent}/variables", + "response": { + "$ref": "ListVariablesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/tagmanager.edit.containers", + "https://www.googleapis.com/auth/tagmanager.readonly" + ] + }, + "revert": { + "description": "Reverts changes to a GTM Variable in a GTM Workspace.", + "httpMethod": "POST", + "id": "tagmanager.accounts.containers.workspaces.variables.revert", + "parameterOrder": [ + "path" + ], + "parameters": { + "fingerprint": { + "description": "When provided, this fingerprint must match the fingerprint of the variable in storage.", + "location": "query", + "type": "string" + }, + "path": { + "description": "GTM Variable's API relative path. Example: accounts/{account_id}/containers/{container_id}/workspaces/{workspace_id}/variables/{variable_id}", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{+path}:revert", + "response": { + "$ref": "RevertVariableResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/tagmanager.edit.containers" + ] + }, + "update": { + "description": "Updates a GTM Variable.", + "httpMethod": "PUT", + "id": "tagmanager.accounts.containers.workspaces.variables.update", + "parameterOrder": [ + "path" + ], + "parameters": { + "fingerprint": { + "description": "When provided, this fingerprint must match the fingerprint of the variable in storage.", + "location": "query", + "type": "string" + }, + "path": { + "description": "GTM Variable's API relative path. Example: accounts/{account_id}/containers/{container_id}/workspaces/{workspace_id}/variables/{variable_id}", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{+path}", + "request": { + "$ref": "Variable" + }, + "response": { + "$ref": "Variable" + }, + "scopes": [ + "https://www.googleapis.com/auth/tagmanager.edit.containers" + ] + } + } + } + } + } + } + }, + "user_permissions": { + "methods": { + "create": { + "description": "Creates a user's Account \u0026 Container access.", + "httpMethod": "POST", + "id": "tagmanager.accounts.user_permissions.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "GTM Account's API relative path. Example: accounts/{account_id}", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{+parent}/user_permissions", + "request": { + "$ref": "UserPermission" + }, + "response": { + "$ref": "UserPermission" + }, + "scopes": [ + "https://www.googleapis.com/auth/tagmanager.manage.users" + ] + }, + "delete": { + "description": "Removes a user from the account, revoking access to it and all of its containers.", + "httpMethod": "DELETE", + "id": "tagmanager.accounts.user_permissions.delete", + "parameterOrder": [ + "path" + ], + "parameters": { + "path": { + "description": "GTM UserPermission's API relative path. Example: accounts/{account_id}/user_permissions/{user_permission_id}", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{+path}", + "scopes": [ + "https://www.googleapis.com/auth/tagmanager.manage.users" + ] + }, + "get": { + "description": "Gets a user's Account \u0026 Container access.", + "httpMethod": "GET", + "id": "tagmanager.accounts.user_permissions.get", + "parameterOrder": [ + "path" + ], + "parameters": { + "path": { + "description": "GTM UserPermission's API relative path. Example: accounts/{account_id}/user_permissions/{user_permission_id}", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{+path}", + "response": { + "$ref": "UserPermission" + }, + "scopes": [ + "https://www.googleapis.com/auth/tagmanager.manage.users" + ] + }, + "list": { + "description": "List all users that have access to the account along with Account and Container user access granted to each of them.", + "httpMethod": "GET", + "id": "tagmanager.accounts.user_permissions.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "pageToken": { + "description": "Continuation token for fetching the next page of results.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "GTM Accounts's API relative path. Example: accounts/{account_id}", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{+parent}/user_permissions", + "response": { + "$ref": "ListUserPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/tagmanager.manage.users" + ] + }, + "update": { + "description": "Updates a user's Account \u0026 Container access.", + "httpMethod": "PUT", + "id": "tagmanager.accounts.user_permissions.update", + "parameterOrder": [ + "path" + ], + "parameters": { + "path": { + "description": "GTM UserPermission's API relative path. Example: accounts/{account_id}/user_permissions/{user_permission_id}", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{+path}", + "request": { + "$ref": "UserPermission" + }, + "response": { + "$ref": "UserPermission" + }, + "scopes": [ + "https://www.googleapis.com/auth/tagmanager.manage.users" + ] + } + } + } + } + } + }, + "revision": "20171108", + "rootUrl": "https://www.googleapis.com/", + "schemas": { + "Account": { + "description": "Represents a Google Tag Manager Account.", + "id": "Account", + "properties": { + "accountId": { + "description": "The Account ID uniquely identifies the GTM Account.", + "type": "string" + }, "fingerprint": { - "type": "string", - "description": "When provided, this fingerprint must match the fingerprint of the container in storage.", - "location": "query" + "description": "The fingerprint of the GTM Account as computed at storage time. This value is recomputed whenever the account is modified.", + "type": "string" + }, + "name": { + "description": "Account display name.", + "type": "string" }, "path": { - "type": "string", - "description": "GTM Container's API relative path. Example: accounts/{account_id}/containers/{container_id}", - "required": true, - "location": "path" + "description": "GTM Account's API relative path.", + "type": "string" + }, + "shareData": { + "description": "Whether the account shares data anonymously with Google and others. This flag enables benchmarking by sharing your data in an anonymous form. Google will remove all identifiable information about your website, combine the data with hundreds of other anonymous sites and report aggregate trends in the benchmarking service.", + "type": "boolean" + }, + "tagManagerUrl": { + "description": "Auto generated link to the tag manager UI", + "type": "string" } - }, - "parameterOrder": [ - "path" - ], - "request": { - "$ref": "Container" - }, - "response": { - "$ref": "Container" - }, - "scopes": [ - "https://www.googleapis.com/auth/tagmanager.edit.containers" - ] - } - }, - "resources": { - "environments": { - "methods": { - "create": { - "id": "tagmanager.accounts.containers.environments.create", - "path": "{+parent}/environments", - "httpMethod": "POST", - "description": "Creates a GTM Environment.", - "parameters": { - "parent": { - "type": "string", - "description": "GTM Container's API relative path. Example: accounts/{account_id}/containers/{container_id}", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "parent" - ], - "request": { - "$ref": "Environment" - }, - "response": { - "$ref": "Environment" - }, - "scopes": [ - "https://www.googleapis.com/auth/tagmanager.edit.containers" - ] - }, - "delete": { - "id": "tagmanager.accounts.containers.environments.delete", - "path": "{+path}", - "httpMethod": "DELETE", - "description": "Deletes a GTM Environment.", - "parameters": { - "path": { - "type": "string", - "description": "GTM Environment's API relative path. Example: accounts/{account_id}/containers/{container_id}/environments/{environment_id}", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "path" - ], - "scopes": [ - "https://www.googleapis.com/auth/tagmanager.edit.containers" - ] - }, - "get": { - "id": "tagmanager.accounts.containers.environments.get", - "path": "{+path}", - "httpMethod": "GET", - "description": "Gets a GTM Environment.", - "parameters": { - "path": { - "type": "string", - "description": "GTM Environment's API relative path. Example: accounts/{account_id}/containers/{container_id}/environments/{environment_id}", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "path" - ], - "response": { - "$ref": "Environment" - }, - "scopes": [ - "https://www.googleapis.com/auth/tagmanager.edit.containers", - "https://www.googleapis.com/auth/tagmanager.readonly" - ] - }, - "list": { - "id": "tagmanager.accounts.containers.environments.list", - "path": "{+parent}/environments", - "httpMethod": "GET", - "description": "Lists all GTM Environments of a GTM Container.", - "parameters": { - "pageToken": { - "type": "string", - "description": "Continuation token for fetching the next page of results.", - "location": "query" - }, - "parent": { - "type": "string", - "description": "GTM Container's API relative path. Example: accounts/{account_id}/containers/{container_id}", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "parent" - ], - "response": { - "$ref": "ListEnvironmentsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/tagmanager.edit.containers", - "https://www.googleapis.com/auth/tagmanager.readonly" - ] - }, - "patch": { - "id": "tagmanager.accounts.containers.environments.patch", - "path": "{+path}", - "httpMethod": "PATCH", - "description": "Updates a GTM Environment. This method supports patch semantics.", - "parameters": { - "fingerprint": { - "type": "string", - "description": "When provided, this fingerprint must match the fingerprint of the environment in storage.", - "location": "query" - }, - "path": { - "type": "string", - "description": "GTM Environment's API relative path. Example: accounts/{account_id}/containers/{container_id}/environments/{environment_id}", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "path" - ], - "request": { - "$ref": "Environment" - }, - "response": { - "$ref": "Environment" - }, - "scopes": [ - "https://www.googleapis.com/auth/tagmanager.edit.containers" - ] - }, - "reauthorize": { - "id": "tagmanager.accounts.containers.environments.reauthorize", - "path": "{+path}:reauthorize", - "httpMethod": "POST", - "description": "Re-generates the authorization code for a GTM Environment.", - "parameters": { - "path": { - "type": "string", - "description": "GTM Environment's API relative path. Example: accounts/{account_id}/containers/{container_id}/environments/{environment_id}", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "path" - ], - "request": { - "$ref": "Environment" - }, - "response": { - "$ref": "Environment" - }, - "scopes": [ - "https://www.googleapis.com/auth/tagmanager.publish" - ] - }, - "update": { - "id": "tagmanager.accounts.containers.environments.update", - "path": "{+path}", - "httpMethod": "PUT", - "description": "Updates a GTM Environment.", - "parameters": { - "fingerprint": { - "type": "string", - "description": "When provided, this fingerprint must match the fingerprint of the environment in storage.", - "location": "query" - }, - "path": { - "type": "string", - "description": "GTM Environment's API relative path. Example: accounts/{account_id}/containers/{container_id}/environments/{environment_id}", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "path" - ], - "request": { - "$ref": "Environment" - }, - "response": { - "$ref": "Environment" - }, - "scopes": [ - "https://www.googleapis.com/auth/tagmanager.edit.containers" - ] - } - } }, - "version_headers": { - "methods": { - "latest": { - "id": "tagmanager.accounts.containers.version_headers.latest", - "path": "{+parent}/version_headers:latest", - "httpMethod": "GET", - "description": "Gets the latest container version header", - "parameters": { - "parent": { - "type": "string", - "description": "GTM Container's API relative path. Example: accounts/{account_id}/containers/{container_id}", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "parent" - ], - "response": { - "$ref": "ContainerVersionHeader" - }, - "scopes": [ - "https://www.googleapis.com/auth/tagmanager.edit.containers", - "https://www.googleapis.com/auth/tagmanager.readonly" - ] - }, - "list": { - "id": "tagmanager.accounts.containers.version_headers.list", - "path": "{+parent}/version_headers", - "httpMethod": "GET", - "description": "Lists all Container Versions of a GTM Container.", - "parameters": { - "includeDeleted": { - "type": "boolean", - "description": "Also retrieve deleted (archived) versions when true.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Continuation token for fetching the next page of results.", - "location": "query" - }, - "parent": { - "type": "string", - "description": "GTM Container's API relative path. Example: accounts/{account_id}/containers/{container_id}", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "parent" - ], - "response": { - "$ref": "ListContainerVersionsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/tagmanager.edit.containers", - "https://www.googleapis.com/auth/tagmanager.edit.containerversions", - "https://www.googleapis.com/auth/tagmanager.readonly" - ] - } - } - }, - "versions": { - "methods": { - "delete": { - "id": "tagmanager.accounts.containers.versions.delete", - "path": "{+path}", - "httpMethod": "DELETE", - "description": "Deletes a Container Version.", - "parameters": { - "path": { - "type": "string", - "description": "GTM ContainerVersion's API relative path. Example: accounts/{account_id}/containers/{container_id}/versions/{version_id}", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "path" - ], - "scopes": [ - "https://www.googleapis.com/auth/tagmanager.edit.containerversions" - ] - }, - "get": { - "id": "tagmanager.accounts.containers.versions.get", - "path": "{+path}", - "httpMethod": "GET", - "description": "Gets a Container Version.", - "parameters": { - "containerVersionId": { - "type": "string", - "description": "The GTM ContainerVersion ID. Specify published to retrieve the currently published version.", - "location": "query" - }, - "path": { - "type": "string", - "description": "GTM ContainerVersion's API relative path. Example: accounts/{account_id}/containers/{container_id}/versions/{version_id}", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "path" - ], - "response": { - "$ref": "ContainerVersion" - }, - "scopes": [ - "https://www.googleapis.com/auth/tagmanager.edit.containers", - "https://www.googleapis.com/auth/tagmanager.edit.containerversions", - "https://www.googleapis.com/auth/tagmanager.readonly" - ] - }, - "live": { - "id": "tagmanager.accounts.containers.versions.live", - "path": "{+parent}/versions:live", - "httpMethod": "GET", - "description": "Gets the live (i.e. published) container version", - "parameters": { - "parent": { - "type": "string", - "description": "GTM Container's API relative path. Example: accounts/{account_id}/containers/{container_id}", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "parent" - ], - "response": { - "$ref": "ContainerVersion" - }, - "scopes": [ - "https://www.googleapis.com/auth/tagmanager.edit.containers", - "https://www.googleapis.com/auth/tagmanager.readonly" - ] - }, - "publish": { - "id": "tagmanager.accounts.containers.versions.publish", - "path": "{+path}:publish", - "httpMethod": "POST", - "description": "Publishes a Container Version.", - "parameters": { - "fingerprint": { - "type": "string", - "description": "When provided, this fingerprint must match the fingerprint of the container version in storage.", - "location": "query" - }, - "path": { - "type": "string", - "description": "GTM ContainerVersion's API relative path. Example: accounts/{account_id}/containers/{container_id}/versions/{version_id}", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "path" - ], - "response": { - "$ref": "PublishContainerVersionResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/tagmanager.publish" - ] - }, - "set_latest": { - "id": "tagmanager.accounts.containers.versions.set_latest", - "path": "{+path}:set_latest", - "httpMethod": "POST", - "description": "Sets the latest version used for synchronization of workspaces when detecting conflicts and errors.", - "parameters": { - "path": { - "type": "string", - "description": "GTM ContainerVersion's API relative path. Example: accounts/{account_id}/containers/{container_id}/versions/{version_id}", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "path" - ], - "response": { - "$ref": "ContainerVersion" - }, - "scopes": [ - "https://www.googleapis.com/auth/tagmanager.edit.containers" - ] - }, - "undelete": { - "id": "tagmanager.accounts.containers.versions.undelete", - "path": "{+path}:undelete", - "httpMethod": "POST", - "description": "Undeletes a Container Version.", - "parameters": { - "path": { - "type": "string", - "description": "GTM ContainerVersion's API relative path. Example: accounts/{account_id}/containers/{container_id}/versions/{version_id}", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "path" - ], - "response": { - "$ref": "ContainerVersion" - }, - "scopes": [ - "https://www.googleapis.com/auth/tagmanager.edit.containerversions" - ] - }, - "update": { - "id": "tagmanager.accounts.containers.versions.update", - "path": "{+path}", - "httpMethod": "PUT", - "description": "Updates a Container Version.", - "parameters": { - "fingerprint": { - "type": "string", - "description": "When provided, this fingerprint must match the fingerprint of the container version in storage.", - "location": "query" - }, - "path": { - "type": "string", - "description": "GTM ContainerVersion's API relative path. Example: accounts/{account_id}/containers/{container_id}/versions/{version_id}", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "path" - ], - "request": { - "$ref": "ContainerVersion" - }, - "response": { - "$ref": "ContainerVersion" - }, - "scopes": [ - "https://www.googleapis.com/auth/tagmanager.edit.containerversions" - ] - } - } - }, - "workspaces": { - "methods": { - "create": { - "id": "tagmanager.accounts.containers.workspaces.create", - "path": "{+parent}/workspaces", - "httpMethod": "POST", - "description": "Creates a Workspace.", - "parameters": { - "parent": { - "type": "string", - "description": "GTM parent Container's API relative path. Example: accounts/{account_id}/containers/{container_id}", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "parent" - ], - "request": { - "$ref": "Workspace" - }, - "response": { - "$ref": "Workspace" - }, - "scopes": [ - "https://www.googleapis.com/auth/tagmanager.edit.containers" - ] - }, - "create_version": { - "id": "tagmanager.accounts.containers.workspaces.create_version", - "path": "{+path}:create_version", - "httpMethod": "POST", - "description": "Creates a Container Version from the entities present in the workspace, deletes the workspace, and sets the base container version to the newly created version.", - "parameters": { - "path": { - "type": "string", - "description": "GTM Workspace's API relative path. Example: accounts/{account_id}/containers/{container_id}/workspaces/{workspace_id}", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "path" - ], - "request": { - "$ref": "CreateContainerVersionRequestVersionOptions" - }, - "response": { - "$ref": "CreateContainerVersionResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/tagmanager.edit.containerversions" - ] - }, - "delete": { - "id": "tagmanager.accounts.containers.workspaces.delete", - "path": "{+path}", - "httpMethod": "DELETE", - "description": "Deletes a Workspace.", - "parameters": { - "path": { - "type": "string", - "description": "GTM Workspace's API relative path. Example: accounts/{account_id}/containers/{container_id}/workspaces/{workspace_id}", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "path" - ], - "scopes": [ - "https://www.googleapis.com/auth/tagmanager.delete.containers" - ] - }, - "get": { - "id": "tagmanager.accounts.containers.workspaces.get", - "path": "{+path}", - "httpMethod": "GET", - "description": "Gets a Workspace.", - "parameters": { - "path": { - "type": "string", - "description": "GTM Workspace's API relative path. Example: accounts/{account_id}/containers/{container_id}/workspaces/{workspace_id}", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "path" - ], - "response": { - "$ref": "Workspace" - }, - "scopes": [ - "https://www.googleapis.com/auth/tagmanager.edit.containers", - "https://www.googleapis.com/auth/tagmanager.readonly" - ] - }, - "getProposal": { - "id": "tagmanager.accounts.containers.workspaces.getProposal", - "path": "{+path}", - "httpMethod": "GET", - "description": "Gets a GTM Workspace Proposal.", - "parameters": { - "path": { - "type": "string", - "description": "GTM workspace proposal's relative path: Example: accounts/{aid}/containers/{cid}/workspace/{wid}/workspace_proposal", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "path" - ], - "response": { - "$ref": "WorkspaceProposal" - } - }, - "getStatus": { - "id": "tagmanager.accounts.containers.workspaces.getStatus", - "path": "{+path}/status", - "httpMethod": "GET", - "description": "Finds conflicting and modified entities in the workspace.", - "parameters": { - "path": { - "type": "string", - "description": "GTM Workspace's API relative path. Example: accounts/{account_id}/containers/{container_id}/workspaces/{workspace_id}", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "path" - ], - "response": { - "$ref": "GetWorkspaceStatusResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/tagmanager.edit.containers", - "https://www.googleapis.com/auth/tagmanager.readonly" - ] - }, - "list": { - "id": "tagmanager.accounts.containers.workspaces.list", - "path": "{+parent}/workspaces", - "httpMethod": "GET", - "description": "Lists all Workspaces that belong to a GTM Container.", - "parameters": { - "pageToken": { - "type": "string", - "description": "Continuation token for fetching the next page of results.", - "location": "query" - }, - "parent": { - "type": "string", - "description": "GTM parent Container's API relative path. Example: accounts/{account_id}/containers/{container_id}", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "parent" - ], - "response": { - "$ref": "ListWorkspacesResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/tagmanager.edit.containers", - "https://www.googleapis.com/auth/tagmanager.readonly" - ] - }, - "quick_preview": { - "id": "tagmanager.accounts.containers.workspaces.quick_preview", - "path": "{+path}:quick_preview", - "httpMethod": "POST", - "description": "Quick previews a workspace by creating a fake container version from all entities in the provided workspace.", - "parameters": { - "path": { - "type": "string", - "description": "GTM Workspace's API relative path. Example: accounts/{account_id}/containers/{container_id}/workspaces/{workspace_id}", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "path" - ], - "response": { - "$ref": "QuickPreviewResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/tagmanager.edit.containerversions" - ] - }, - "resolve_conflict": { - "id": "tagmanager.accounts.containers.workspaces.resolve_conflict", - "path": "{+path}:resolve_conflict", - "httpMethod": "POST", - "description": "Resolves a merge conflict for a workspace entity by updating it to the resolved entity passed in the request.", - "parameters": { - "fingerprint": { - "type": "string", - "description": "When provided, this fingerprint must match the fingerprint of the entity_in_workspace in the merge conflict.", - "location": "query" - }, - "path": { - "type": "string", - "description": "GTM Workspace's API relative path. Example: accounts/{account_id}/containers/{container_id}/workspaces/{workspace_id}", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "path" - ], - "request": { - "$ref": "Entity" - }, - "scopes": [ - "https://www.googleapis.com/auth/tagmanager.edit.containers" - ] - }, - "sync": { - "id": "tagmanager.accounts.containers.workspaces.sync", - "path": "{+path}:sync", - "httpMethod": "POST", - "description": "Syncs a workspace to the latest container version by updating all unmodified workspace entities and displaying conflicts for modified entities.", - "parameters": { - "path": { - "type": "string", - "description": "GTM Workspace's API relative path. Example: accounts/{account_id}/containers/{container_id}/workspaces/{workspace_id}", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "path" - ], - "response": { - "$ref": "SyncWorkspaceResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/tagmanager.edit.containers" - ] - }, - "update": { - "id": "tagmanager.accounts.containers.workspaces.update", - "path": "{+path}", - "httpMethod": "PUT", - "description": "Updates a Workspace.", - "parameters": { - "fingerprint": { - "type": "string", - "description": "When provided, this fingerprint must match the fingerprint of the workspace in storage.", - "location": "query" - }, - "path": { - "type": "string", - "description": "GTM Workspace's API relative path. Example: accounts/{account_id}/containers/{container_id}/workspaces/{workspace_id}", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "path" - ], - "request": { - "$ref": "Workspace" - }, - "response": { - "$ref": "Workspace" - }, - "scopes": [ - "https://www.googleapis.com/auth/tagmanager.edit.containers" - ] - }, - "updateProposal": { - "id": "tagmanager.accounts.containers.workspaces.updateProposal", - "path": "{+path}", - "httpMethod": "PUT", - "description": "Updates a GTM Workspace Proposal.", - "parameters": { - "path": { - "type": "string", - "description": "GTM workspace proposal's relative path: Example: accounts/{aid}/containers/{cid}/workspace/{wid}/workspace_proposal", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "path" - ], - "request": { - "$ref": "UpdateWorkspaceProposalRequest" - }, - "response": { - "$ref": "WorkspaceProposal" - } - } - }, - "resources": { - "built_in_variables": { - "methods": { - "create": { - "id": "tagmanager.accounts.containers.workspaces.built_in_variables.create", - "path": "{+parent}/built_in_variables", - "httpMethod": "POST", - "description": "Creates one or more GTM Built-In Variables.", - "parameters": { - "parent": { - "type": "string", - "description": "GTM Workspace's API relative path. Example: accounts/{account_id}/containers/{container_id}/workspaces/{workspace_id}", - "required": true, - "location": "path" - }, - "type": { - "type": "string", - "description": "The types of built-in variables to enable.", - "enum": [ - "advertiserId", - "advertisingTrackingEnabled", - "ampBrowserLanguage", - "ampCanonicalHost", - "ampCanonicalPath", - "ampCanonicalUrl", - "ampClientId", - "ampClientMaxScrollX", - "ampClientMaxScrollY", - "ampClientScreenHeight", - "ampClientScreenWidth", - "ampClientScrollX", - "ampClientScrollY", - "ampClientTimestamp", - "ampClientTimezone", - "ampGtmEvent", - "ampPageDownloadTime", - "ampPageLoadTime", - "ampPageViewId", - "ampReferrer", - "ampTitle", - "ampTotalEngagedTime", - "appId", - "appName", - "appVersionCode", - "appVersionName", - "builtInVariableTypeUnspecified", - "clickClasses", - "clickElement", - "clickId", - "clickTarget", - "clickText", - "clickUrl", - "containerId", - "containerVersion", - "debugMode", - "deviceName", - "elementVisibilityFirstTime", - "elementVisibilityRatio", - "elementVisibilityRecentTime", - "elementVisibilityTime", - "environmentName", - "errorLine", - "errorMessage", - "errorUrl", - "event", - "eventName", - "firebaseEventParameterCampaign", - "firebaseEventParameterCampaignAclid", - "firebaseEventParameterCampaignAnid", - "firebaseEventParameterCampaignClickTimestamp", - "firebaseEventParameterCampaignContent", - "firebaseEventParameterCampaignCp1", - "firebaseEventParameterCampaignGclid", - "firebaseEventParameterCampaignSource", - "firebaseEventParameterCampaignTerm", - "firebaseEventParameterCurrency", - "firebaseEventParameterDynamicLinkAcceptTime", - "firebaseEventParameterDynamicLinkLinkid", - "firebaseEventParameterNotificationMessageDeviceTime", - "firebaseEventParameterNotificationMessageId", - "firebaseEventParameterNotificationMessageName", - "firebaseEventParameterNotificationMessageTime", - "firebaseEventParameterNotificationTopic", - "firebaseEventParameterPreviousAppVersion", - "firebaseEventParameterPreviousOsVersion", - "firebaseEventParameterPrice", - "firebaseEventParameterProductId", - "firebaseEventParameterQuantity", - "firebaseEventParameterValue", - "formClasses", - "formElement", - "formId", - "formTarget", - "formText", - "formUrl", - "historySource", - "htmlId", - "language", - "newHistoryFragment", - "newHistoryState", - "oldHistoryFragment", - "oldHistoryState", - "osVersion", - "pageHostname", - "pagePath", - "pageUrl", - "platform", - "randomNumber", - "referrer", - "resolution", - "scrollDepthDirection", - "scrollDepthThreshold", - "scrollDepthUnits", - "sdkVersion", - "videoCurrentTime", - "videoDuration", - "videoPercent", - "videoProvider", - "videoStatus", - "videoTitle", - "videoUrl", - "videoVisible" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ], - "repeated": true, - "location": "query" - } - }, - "parameterOrder": [ - "parent" - ], - "response": { - "$ref": "CreateBuiltInVariableResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/tagmanager.edit.containers" - ] - }, - "delete": { - "id": "tagmanager.accounts.containers.workspaces.built_in_variables.delete", - "path": "{+path}", - "httpMethod": "DELETE", - "description": "Deletes one or more GTM Built-In Variables.", - "parameters": { - "path": { - "type": "string", - "description": "GTM BuiltInVariable's API relative path. Example: accounts/{account_id}/containers/{container_id}/workspaces/{workspace_id}/built_in_variables", - "required": true, - "location": "path" - }, - "type": { - "type": "string", - "description": "The types of built-in variables to delete.", - "enum": [ - "advertiserId", - "advertisingTrackingEnabled", - "ampBrowserLanguage", - "ampCanonicalHost", - "ampCanonicalPath", - "ampCanonicalUrl", - "ampClientId", - "ampClientMaxScrollX", - "ampClientMaxScrollY", - "ampClientScreenHeight", - "ampClientScreenWidth", - "ampClientScrollX", - "ampClientScrollY", - "ampClientTimestamp", - "ampClientTimezone", - "ampGtmEvent", - "ampPageDownloadTime", - "ampPageLoadTime", - "ampPageViewId", - "ampReferrer", - "ampTitle", - "ampTotalEngagedTime", - "appId", - "appName", - "appVersionCode", - "appVersionName", - "builtInVariableTypeUnspecified", - "clickClasses", - "clickElement", - "clickId", - "clickTarget", - "clickText", - "clickUrl", - "containerId", - "containerVersion", - "debugMode", - "deviceName", - "elementVisibilityFirstTime", - "elementVisibilityRatio", - "elementVisibilityRecentTime", - "elementVisibilityTime", - "environmentName", - "errorLine", - "errorMessage", - "errorUrl", - "event", - "eventName", - "firebaseEventParameterCampaign", - "firebaseEventParameterCampaignAclid", - "firebaseEventParameterCampaignAnid", - "firebaseEventParameterCampaignClickTimestamp", - "firebaseEventParameterCampaignContent", - "firebaseEventParameterCampaignCp1", - "firebaseEventParameterCampaignGclid", - "firebaseEventParameterCampaignSource", - "firebaseEventParameterCampaignTerm", - "firebaseEventParameterCurrency", - "firebaseEventParameterDynamicLinkAcceptTime", - "firebaseEventParameterDynamicLinkLinkid", - "firebaseEventParameterNotificationMessageDeviceTime", - "firebaseEventParameterNotificationMessageId", - "firebaseEventParameterNotificationMessageName", - "firebaseEventParameterNotificationMessageTime", - "firebaseEventParameterNotificationTopic", - "firebaseEventParameterPreviousAppVersion", - "firebaseEventParameterPreviousOsVersion", - "firebaseEventParameterPrice", - "firebaseEventParameterProductId", - "firebaseEventParameterQuantity", - "firebaseEventParameterValue", - "formClasses", - "formElement", - "formId", - "formTarget", - "formText", - "formUrl", - "historySource", - "htmlId", - "language", - "newHistoryFragment", - "newHistoryState", - "oldHistoryFragment", - "oldHistoryState", - "osVersion", - "pageHostname", - "pagePath", - "pageUrl", - "platform", - "randomNumber", - "referrer", - "resolution", - "scrollDepthDirection", - "scrollDepthThreshold", - "scrollDepthUnits", - "sdkVersion", - "videoCurrentTime", - "videoDuration", - "videoPercent", - "videoProvider", - "videoStatus", - "videoTitle", - "videoUrl", - "videoVisible" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ], - "repeated": true, - "location": "query" - } - }, - "parameterOrder": [ - "path" - ], - "scopes": [ - "https://www.googleapis.com/auth/tagmanager.edit.containers" - ] - }, - "list": { - "id": "tagmanager.accounts.containers.workspaces.built_in_variables.list", - "path": "{+parent}/built_in_variables", - "httpMethod": "GET", - "description": "Lists all the enabled Built-In Variables of a GTM Container.", - "parameters": { - "pageToken": { - "type": "string", - "description": "Continuation token for fetching the next page of results.", - "location": "query" - }, - "parent": { - "type": "string", - "description": "GTM Workspace's API relative path. Example: accounts/{account_id}/containers/{container_id}/workspaces/{workspace_id}", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "parent" - ], - "response": { - "$ref": "ListEnabledBuiltInVariablesResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/tagmanager.edit.containers", - "https://www.googleapis.com/auth/tagmanager.readonly" - ] - }, - "revert": { - "id": "tagmanager.accounts.containers.workspaces.built_in_variables.revert", - "path": "{+path}/built_in_variables:revert", - "httpMethod": "POST", - "description": "Reverts changes to a GTM Built-In Variables in a GTM Workspace.", - "parameters": { - "path": { - "type": "string", - "description": "GTM BuiltInVariable's API relative path. Example: accounts/{account_id}/containers/{container_id}/workspaces/{workspace_id}/built_in_variables", - "required": true, - "location": "path" - }, - "type": { - "type": "string", - "description": "The type of built-in variable to revert.", - "enum": [ - "advertiserId", - "advertisingTrackingEnabled", - "ampBrowserLanguage", - "ampCanonicalHost", - "ampCanonicalPath", - "ampCanonicalUrl", - "ampClientId", - "ampClientMaxScrollX", - "ampClientMaxScrollY", - "ampClientScreenHeight", - "ampClientScreenWidth", - "ampClientScrollX", - "ampClientScrollY", - "ampClientTimestamp", - "ampClientTimezone", - "ampGtmEvent", - "ampPageDownloadTime", - "ampPageLoadTime", - "ampPageViewId", - "ampReferrer", - "ampTitle", - "ampTotalEngagedTime", - "appId", - "appName", - "appVersionCode", - "appVersionName", - "builtInVariableTypeUnspecified", - "clickClasses", - "clickElement", - "clickId", - "clickTarget", - "clickText", - "clickUrl", - "containerId", - "containerVersion", - "debugMode", - "deviceName", - "elementVisibilityFirstTime", - "elementVisibilityRatio", - "elementVisibilityRecentTime", - "elementVisibilityTime", - "environmentName", - "errorLine", - "errorMessage", - "errorUrl", - "event", - "eventName", - "firebaseEventParameterCampaign", - "firebaseEventParameterCampaignAclid", - "firebaseEventParameterCampaignAnid", - "firebaseEventParameterCampaignClickTimestamp", - "firebaseEventParameterCampaignContent", - "firebaseEventParameterCampaignCp1", - "firebaseEventParameterCampaignGclid", - "firebaseEventParameterCampaignSource", - "firebaseEventParameterCampaignTerm", - "firebaseEventParameterCurrency", - "firebaseEventParameterDynamicLinkAcceptTime", - "firebaseEventParameterDynamicLinkLinkid", - "firebaseEventParameterNotificationMessageDeviceTime", - "firebaseEventParameterNotificationMessageId", - "firebaseEventParameterNotificationMessageName", - "firebaseEventParameterNotificationMessageTime", - "firebaseEventParameterNotificationTopic", - "firebaseEventParameterPreviousAppVersion", - "firebaseEventParameterPreviousOsVersion", - "firebaseEventParameterPrice", - "firebaseEventParameterProductId", - "firebaseEventParameterQuantity", - "firebaseEventParameterValue", - "formClasses", - "formElement", - "formId", - "formTarget", - "formText", - "formUrl", - "historySource", - "htmlId", - "language", - "newHistoryFragment", - "newHistoryState", - "oldHistoryFragment", - "oldHistoryState", - "osVersion", - "pageHostname", - "pagePath", - "pageUrl", - "platform", - "randomNumber", - "referrer", - "resolution", - "scrollDepthDirection", - "scrollDepthThreshold", - "scrollDepthUnits", - "sdkVersion", - "videoCurrentTime", - "videoDuration", - "videoPercent", - "videoProvider", - "videoStatus", - "videoTitle", - "videoUrl", - "videoVisible" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ], - "location": "query" - } - }, - "parameterOrder": [ - "path" - ], - "response": { - "$ref": "RevertBuiltInVariableResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/tagmanager.edit.containers" - ] - } - } - }, - "folders": { - "methods": { - "create": { - "id": "tagmanager.accounts.containers.workspaces.folders.create", - "path": "{+parent}/folders", - "httpMethod": "POST", - "description": "Creates a GTM Folder.", - "parameters": { - "parent": { - "type": "string", - "description": "GTM Workspace's API relative path. Example: accounts/{account_id}/containers/{container_id}/workspaces/{workspace_id}", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "parent" - ], - "request": { - "$ref": "Folder" - }, - "response": { - "$ref": "Folder" - }, - "scopes": [ - "https://www.googleapis.com/auth/tagmanager.edit.containers" - ] - }, - "delete": { - "id": "tagmanager.accounts.containers.workspaces.folders.delete", - "path": "{+path}", - "httpMethod": "DELETE", - "description": "Deletes a GTM Folder.", - "parameters": { - "path": { - "type": "string", - "description": "GTM Folder's API relative path. Example: accounts/{account_id}/containers/{container_id}/workspaces/{workspace_id}/folders/{folder_id}", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "path" - ], - "scopes": [ - "https://www.googleapis.com/auth/tagmanager.edit.containers" - ] - }, - "entities": { - "id": "tagmanager.accounts.containers.workspaces.folders.entities", - "path": "{+path}:entities", - "httpMethod": "POST", - "description": "List all entities in a GTM Folder.", - "parameters": { - "pageToken": { - "type": "string", - "description": "Continuation token for fetching the next page of results.", - "location": "query" - }, - "path": { - "type": "string", - "description": "GTM Folder's API relative path. Example: accounts/{account_id}/containers/{container_id}/workspaces/{workspace_id}/folders/{folder_id}", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "path" - ], - "response": { - "$ref": "FolderEntities" - }, - "scopes": [ - "https://www.googleapis.com/auth/tagmanager.edit.containers", - "https://www.googleapis.com/auth/tagmanager.readonly" - ] - }, - "get": { - "id": "tagmanager.accounts.containers.workspaces.folders.get", - "path": "{+path}", - "httpMethod": "GET", - "description": "Gets a GTM Folder.", - "parameters": { - "path": { - "type": "string", - "description": "GTM Folder's API relative path. Example: accounts/{account_id}/containers/{container_id}/workspaces/{workspace_id}/folders/{folder_id}", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "path" - ], - "response": { - "$ref": "Folder" - }, - "scopes": [ - "https://www.googleapis.com/auth/tagmanager.edit.containers", - "https://www.googleapis.com/auth/tagmanager.readonly" - ] - }, - "list": { - "id": "tagmanager.accounts.containers.workspaces.folders.list", - "path": "{+parent}/folders", - "httpMethod": "GET", - "description": "Lists all GTM Folders of a Container.", - "parameters": { - "pageToken": { - "type": "string", - "description": "Continuation token for fetching the next page of results.", - "location": "query" - }, - "parent": { - "type": "string", - "description": "GTM Workspace's API relative path. Example: accounts/{account_id}/containers/{container_id}/workspaces/{workspace_id}", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "parent" - ], - "response": { - "$ref": "ListFoldersResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/tagmanager.edit.containers", - "https://www.googleapis.com/auth/tagmanager.readonly" - ] - }, - "move_entities_to_folder": { - "id": "tagmanager.accounts.containers.workspaces.folders.move_entities_to_folder", - "path": "{+path}:move_entities_to_folder", - "httpMethod": "POST", - "description": "Moves entities to a GTM Folder.", - "parameters": { - "path": { - "type": "string", - "description": "GTM Folder's API relative path. Example: accounts/{account_id}/containers/{container_id}/workspaces/{workspace_id}/folders/{folder_id}", - "required": true, - "location": "path" - }, - "tagId": { - "type": "string", - "description": "The tags to be moved to the folder.", - "repeated": true, - "location": "query" - }, - "triggerId": { - "type": "string", - "description": "The triggers to be moved to the folder.", - "repeated": true, - "location": "query" - }, - "variableId": { - "type": "string", - "description": "The variables to be moved to the folder.", - "repeated": true, - "location": "query" - } - }, - "parameterOrder": [ - "path" - ], - "request": { - "$ref": "Folder" - }, - "scopes": [ - "https://www.googleapis.com/auth/tagmanager.edit.containers" - ] - }, - "revert": { - "id": "tagmanager.accounts.containers.workspaces.folders.revert", - "path": "{+path}:revert", - "httpMethod": "POST", - "description": "Reverts changes to a GTM Folder in a GTM Workspace.", - "parameters": { - "fingerprint": { - "type": "string", - "description": "When provided, this fingerprint must match the fingerprint of the tag in storage.", - "location": "query" - }, - "path": { - "type": "string", - "description": "GTM Folder's API relative path. Example: accounts/{account_id}/containers/{container_id}/workspaces/{workspace_id}/folders/{folder_id}", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "path" - ], - "response": { - "$ref": "RevertFolderResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/tagmanager.edit.containers" - ] - }, - "update": { - "id": "tagmanager.accounts.containers.workspaces.folders.update", - "path": "{+path}", - "httpMethod": "PUT", - "description": "Updates a GTM Folder.", - "parameters": { - "fingerprint": { - "type": "string", - "description": "When provided, this fingerprint must match the fingerprint of the folder in storage.", - "location": "query" - }, - "path": { - "type": "string", - "description": "GTM Folder's API relative path. Example: accounts/{account_id}/containers/{container_id}/workspaces/{workspace_id}/folders/{folder_id}", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "path" - ], - "request": { - "$ref": "Folder" - }, - "response": { - "$ref": "Folder" - }, - "scopes": [ - "https://www.googleapis.com/auth/tagmanager.edit.containers" - ] - } - } - }, - "proposal": { - "methods": { - "create": { - "id": "tagmanager.accounts.containers.workspaces.proposal.create", - "path": "{+parent}/proposal", - "httpMethod": "POST", - "description": "Creates a GTM Workspace Proposal.", - "parameters": { - "parent": { - "type": "string", - "description": "GTM Workspace's API relative path. Example: accounts/{aid}/containers/{cid}/workspace/{wid}", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "parent" - ], - "request": { - "$ref": "CreateWorkspaceProposalRequest" - }, - "response": { - "$ref": "WorkspaceProposal" - } - }, - "delete": { - "id": "tagmanager.accounts.containers.workspaces.proposal.delete", - "path": "{+path}", - "httpMethod": "DELETE", - "description": "Deletes a GTM Workspace Proposal.", - "parameters": { - "path": { - "type": "string", - "description": "GTM workspace proposal's relative path: Example: accounts/{aid}/containers/{cid}/workspace/{wid}/workspace_proposal", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "path" - ] - } - } - }, - "tags": { - "methods": { - "create": { - "id": "tagmanager.accounts.containers.workspaces.tags.create", - "path": "{+parent}/tags", - "httpMethod": "POST", - "description": "Creates a GTM Tag.", - "parameters": { - "parent": { - "type": "string", - "description": "GTM Workspace's API relative path. Example: accounts/{account_id}/containers/{container_id}/workspaces/{workspace_id}", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "parent" - ], - "request": { - "$ref": "Tag" - }, - "response": { - "$ref": "Tag" - }, - "scopes": [ - "https://www.googleapis.com/auth/tagmanager.edit.containers" - ] - }, - "delete": { - "id": "tagmanager.accounts.containers.workspaces.tags.delete", - "path": "{+path}", - "httpMethod": "DELETE", - "description": "Deletes a GTM Tag.", - "parameters": { - "path": { - "type": "string", - "description": "GTM Tag's API relative path. Example: accounts/{account_id}/containers/{container_id}/workspaces/{workspace_id}/tags/{tag_id}", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "path" - ], - "scopes": [ - "https://www.googleapis.com/auth/tagmanager.edit.containers" - ] - }, - "get": { - "id": "tagmanager.accounts.containers.workspaces.tags.get", - "path": "{+path}", - "httpMethod": "GET", - "description": "Gets a GTM Tag.", - "parameters": { - "path": { - "type": "string", - "description": "GTM Tag's API relative path. Example: accounts/{account_id}/containers/{container_id}/workspaces/{workspace_id}/tags/{tag_id}", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "path" - ], - "response": { - "$ref": "Tag" - }, - "scopes": [ - "https://www.googleapis.com/auth/tagmanager.edit.containers", - "https://www.googleapis.com/auth/tagmanager.readonly" - ] - }, - "list": { - "id": "tagmanager.accounts.containers.workspaces.tags.list", - "path": "{+parent}/tags", - "httpMethod": "GET", - "description": "Lists all GTM Tags of a Container.", - "parameters": { - "pageToken": { - "type": "string", - "description": "Continuation token for fetching the next page of results.", - "location": "query" - }, - "parent": { - "type": "string", - "description": "GTM Workspace's API relative path. Example: accounts/{account_id}/containers/{container_id}/workspaces/{workspace_id}", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "parent" - ], - "response": { - "$ref": "ListTagsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/tagmanager.edit.containers", - "https://www.googleapis.com/auth/tagmanager.readonly" - ] - }, - "revert": { - "id": "tagmanager.accounts.containers.workspaces.tags.revert", - "path": "{+path}:revert", - "httpMethod": "POST", - "description": "Reverts changes to a GTM Tag in a GTM Workspace.", - "parameters": { - "fingerprint": { - "type": "string", - "description": "When provided, this fingerprint must match the fingerprint of thetag in storage.", - "location": "query" - }, - "path": { - "type": "string", - "description": "GTM Tag's API relative path. Example: accounts/{account_id}/containers/{container_id}/workspaces/{workspace_id}/tags/{tag_id}", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "path" - ], - "response": { - "$ref": "RevertTagResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/tagmanager.edit.containers" - ] - }, - "update": { - "id": "tagmanager.accounts.containers.workspaces.tags.update", - "path": "{+path}", - "httpMethod": "PUT", - "description": "Updates a GTM Tag.", - "parameters": { - "fingerprint": { - "type": "string", - "description": "When provided, this fingerprint must match the fingerprint of the tag in storage.", - "location": "query" - }, - "path": { - "type": "string", - "description": "GTM Tag's API relative path. Example: accounts/{account_id}/containers/{container_id}/workspaces/{workspace_id}/tags/{tag_id}", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "path" - ], - "request": { - "$ref": "Tag" - }, - "response": { - "$ref": "Tag" - }, - "scopes": [ - "https://www.googleapis.com/auth/tagmanager.edit.containers" - ] - } - } - }, - "triggers": { - "methods": { - "create": { - "id": "tagmanager.accounts.containers.workspaces.triggers.create", - "path": "{+parent}/triggers", - "httpMethod": "POST", - "description": "Creates a GTM Trigger.", - "parameters": { - "parent": { - "type": "string", - "description": "GTM Workspaces's API relative path. Example: accounts/{account_id}/containers/{container_id}/workspaces/{workspace_id}", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "parent" - ], - "request": { - "$ref": "Trigger" - }, - "response": { - "$ref": "Trigger" - }, - "scopes": [ - "https://www.googleapis.com/auth/tagmanager.edit.containers" - ] - }, - "delete": { - "id": "tagmanager.accounts.containers.workspaces.triggers.delete", - "path": "{+path}", - "httpMethod": "DELETE", - "description": "Deletes a GTM Trigger.", - "parameters": { - "path": { - "type": "string", - "description": "GTM Trigger's API relative path. Example: accounts/{account_id}/containers/{container_id}/workspaces/{workspace_id}/triggers/{trigger_id}", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "path" - ], - "scopes": [ - "https://www.googleapis.com/auth/tagmanager.edit.containers" - ] - }, - "get": { - "id": "tagmanager.accounts.containers.workspaces.triggers.get", - "path": "{+path}", - "httpMethod": "GET", - "description": "Gets a GTM Trigger.", - "parameters": { - "path": { - "type": "string", - "description": "GTM Trigger's API relative path. Example: accounts/{account_id}/containers/{container_id}/workspaces/{workspace_id}/triggers/{trigger_id}", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "path" - ], - "response": { - "$ref": "Trigger" - }, - "scopes": [ - "https://www.googleapis.com/auth/tagmanager.edit.containers", - "https://www.googleapis.com/auth/tagmanager.readonly" - ] - }, - "list": { - "id": "tagmanager.accounts.containers.workspaces.triggers.list", - "path": "{+parent}/triggers", - "httpMethod": "GET", - "description": "Lists all GTM Triggers of a Container.", - "parameters": { - "pageToken": { - "type": "string", - "description": "Continuation token for fetching the next page of results.", - "location": "query" - }, - "parent": { - "type": "string", - "description": "GTM Workspaces's API relative path. Example: accounts/{account_id}/containers/{container_id}/workspaces/{workspace_id}", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "parent" - ], - "response": { - "$ref": "ListTriggersResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/tagmanager.edit.containers", - "https://www.googleapis.com/auth/tagmanager.readonly" - ] - }, - "revert": { - "id": "tagmanager.accounts.containers.workspaces.triggers.revert", - "path": "{+path}:revert", - "httpMethod": "POST", - "description": "Reverts changes to a GTM Trigger in a GTM Workspace.", - "parameters": { - "fingerprint": { - "type": "string", - "description": "When provided, this fingerprint must match the fingerprint of the trigger in storage.", - "location": "query" - }, - "path": { - "type": "string", - "description": "GTM Trigger's API relative path. Example: accounts/{account_id}/containers/{container_id}/workspaces/{workspace_id}/triggers/{trigger_id}", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "path" - ], - "response": { - "$ref": "RevertTriggerResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/tagmanager.edit.containers" - ] - }, - "update": { - "id": "tagmanager.accounts.containers.workspaces.triggers.update", - "path": "{+path}", - "httpMethod": "PUT", - "description": "Updates a GTM Trigger.", - "parameters": { - "fingerprint": { - "type": "string", - "description": "When provided, this fingerprint must match the fingerprint of the trigger in storage.", - "location": "query" - }, - "path": { - "type": "string", - "description": "GTM Trigger's API relative path. Example: accounts/{account_id}/containers/{container_id}/workspaces/{workspace_id}/triggers/{trigger_id}", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "path" - ], - "request": { - "$ref": "Trigger" - }, - "response": { - "$ref": "Trigger" - }, - "scopes": [ - "https://www.googleapis.com/auth/tagmanager.edit.containers" - ] - } - } - }, - "variables": { - "methods": { - "create": { - "id": "tagmanager.accounts.containers.workspaces.variables.create", - "path": "{+parent}/variables", - "httpMethod": "POST", - "description": "Creates a GTM Variable.", - "parameters": { - "parent": { - "type": "string", - "description": "GTM Workspace's API relative path. Example: accounts/{account_id}/containers/{container_id}/workspaces/{workspace_id}", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "parent" - ], - "request": { - "$ref": "Variable" - }, - "response": { - "$ref": "Variable" - }, - "scopes": [ - "https://www.googleapis.com/auth/tagmanager.edit.containers" - ] - }, - "delete": { - "id": "tagmanager.accounts.containers.workspaces.variables.delete", - "path": "{+path}", - "httpMethod": "DELETE", - "description": "Deletes a GTM Variable.", - "parameters": { - "path": { - "type": "string", - "description": "GTM Variable's API relative path. Example: accounts/{account_id}/containers/{container_id}/workspaces/{workspace_id}/variables/{variable_id}", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "path" - ], - "scopes": [ - "https://www.googleapis.com/auth/tagmanager.edit.containers" - ] - }, - "get": { - "id": "tagmanager.accounts.containers.workspaces.variables.get", - "path": "{+path}", - "httpMethod": "GET", - "description": "Gets a GTM Variable.", - "parameters": { - "path": { - "type": "string", - "description": "GTM Variable's API relative path. Example: accounts/{account_id}/containers/{container_id}/workspaces/{workspace_id}/variables/{variable_id}", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "path" - ], - "response": { - "$ref": "Variable" - }, - "scopes": [ - "https://www.googleapis.com/auth/tagmanager.edit.containers", - "https://www.googleapis.com/auth/tagmanager.readonly" - ] - }, - "list": { - "id": "tagmanager.accounts.containers.workspaces.variables.list", - "path": "{+parent}/variables", - "httpMethod": "GET", - "description": "Lists all GTM Variables of a Container.", - "parameters": { - "pageToken": { - "type": "string", - "description": "Continuation token for fetching the next page of results.", - "location": "query" - }, - "parent": { - "type": "string", - "description": "GTM Workspace's API relative path. Example: accounts/{account_id}/containers/{container_id}/workspaces/{workspace_id}", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "parent" - ], - "response": { - "$ref": "ListVariablesResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/tagmanager.edit.containers", - "https://www.googleapis.com/auth/tagmanager.readonly" - ] - }, - "revert": { - "id": "tagmanager.accounts.containers.workspaces.variables.revert", - "path": "{+path}:revert", - "httpMethod": "POST", - "description": "Reverts changes to a GTM Variable in a GTM Workspace.", - "parameters": { - "fingerprint": { - "type": "string", - "description": "When provided, this fingerprint must match the fingerprint of the variable in storage.", - "location": "query" - }, - "path": { - "type": "string", - "description": "GTM Variable's API relative path. Example: accounts/{account_id}/containers/{container_id}/workspaces/{workspace_id}/variables/{variable_id}", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "path" - ], - "response": { - "$ref": "RevertVariableResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/tagmanager.edit.containers" - ] - }, - "update": { - "id": "tagmanager.accounts.containers.workspaces.variables.update", - "path": "{+path}", - "httpMethod": "PUT", - "description": "Updates a GTM Variable.", - "parameters": { - "fingerprint": { - "type": "string", - "description": "When provided, this fingerprint must match the fingerprint of the variable in storage.", - "location": "query" - }, - "path": { - "type": "string", - "description": "GTM Variable's API relative path. Example: accounts/{account_id}/containers/{container_id}/workspaces/{workspace_id}/variables/{variable_id}", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "path" - ], - "request": { - "$ref": "Variable" - }, - "response": { - "$ref": "Variable" - }, - "scopes": [ - "https://www.googleapis.com/auth/tagmanager.edit.containers" - ] - } - } - } - } - } - } + "type": "object" }, - "user_permissions": { - "methods": { - "create": { - "id": "tagmanager.accounts.user_permissions.create", - "path": "{+parent}/user_permissions", - "httpMethod": "POST", - "description": "Creates a user's Account & Container access.", - "parameters": { - "parent": { - "type": "string", - "description": "GTM Account's API relative path. Example: accounts/{account_id}", - "required": true, - "location": "path" + "AccountAccess": { + "description": "Defines the Google Tag Manager Account access permissions.", + "id": "AccountAccess", + "properties": { + "permission": { + "description": "Whether the user has no access, user access, or admin access to an account.", + "enum": [ + "accountPermissionUnspecified", + "admin", + "noAccess", + "user" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ], + "type": "string" } - }, - "parameterOrder": [ - "parent" - ], - "request": { - "$ref": "UserPermission" - }, - "response": { - "$ref": "UserPermission" - }, - "scopes": [ - "https://www.googleapis.com/auth/tagmanager.manage.users" - ] }, - "delete": { - "id": "tagmanager.accounts.user_permissions.delete", - "path": "{+path}", - "httpMethod": "DELETE", - "description": "Removes a user from the account, revoking access to it and all of its containers.", - "parameters": { - "path": { - "type": "string", - "description": "GTM UserPermission's API relative path. Example: accounts/{account_id}/user_permissions/{user_permission_id}", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "path" - ], - "scopes": [ - "https://www.googleapis.com/auth/tagmanager.manage.users" - ] - }, - "get": { - "id": "tagmanager.accounts.user_permissions.get", - "path": "{+path}", - "httpMethod": "GET", - "description": "Gets a user's Account & Container access.", - "parameters": { - "path": { - "type": "string", - "description": "GTM UserPermission's API relative path. Example: accounts/{account_id}/user_permissions/{user_permission_id}", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "path" - ], - "response": { - "$ref": "UserPermission" - }, - "scopes": [ - "https://www.googleapis.com/auth/tagmanager.manage.users" - ] - }, - "list": { - "id": "tagmanager.accounts.user_permissions.list", - "path": "{+parent}/user_permissions", - "httpMethod": "GET", - "description": "List all users that have access to the account along with Account and Container user access granted to each of them.", - "parameters": { - "pageToken": { - "type": "string", - "description": "Continuation token for fetching the next page of results.", - "location": "query" + "type": "object" + }, + "BuiltInVariable": { + "description": "Built-in variables are a special category of variables that are pre-created and non-customizable. They provide common functionality like accessing propeties of the gtm data layer, monitoring clicks, or accessing elements of a page URL.", + "id": "BuiltInVariable", + "properties": { + "accountId": { + "description": "GTM Account ID.", + "type": "string" + }, + "containerId": { + "description": "GTM Container ID.", + "type": "string" + }, + "name": { + "description": "Name of the built-in variable to be used to refer to the built-in variable.", + "type": "string" }, - "parent": { - "type": "string", - "description": "GTM Accounts's API relative path. Example: accounts/{account_id}", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "parent" - ], - "response": { - "$ref": "ListUserPermissionsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/tagmanager.manage.users" - ] - }, - "update": { - "id": "tagmanager.accounts.user_permissions.update", - "path": "{+path}", - "httpMethod": "PUT", - "description": "Updates a user's Account & Container access.", - "parameters": { "path": { - "type": "string", - "description": "GTM UserPermission's API relative path. Example: accounts/{account_id}/user_permissions/{user_permission_id}", - "required": true, - "location": "path" + "description": "GTM BuiltInVariable's API relative path.", + "type": "string" + }, + "type": { + "description": "Type of built-in variable.", + "enum": [ + "advertiserId", + "advertisingTrackingEnabled", + "ampBrowserLanguage", + "ampCanonicalHost", + "ampCanonicalPath", + "ampCanonicalUrl", + "ampClientId", + "ampClientMaxScrollX", + "ampClientMaxScrollY", + "ampClientScreenHeight", + "ampClientScreenWidth", + "ampClientScrollX", + "ampClientScrollY", + "ampClientTimestamp", + "ampClientTimezone", + "ampGtmEvent", + "ampPageDownloadTime", + "ampPageLoadTime", + "ampPageViewId", + "ampReferrer", + "ampTitle", + "ampTotalEngagedTime", + "appId", + "appName", + "appVersionCode", + "appVersionName", + "builtInVariableTypeUnspecified", + "clickClasses", + "clickElement", + "clickId", + "clickTarget", + "clickText", + "clickUrl", + "containerId", + "containerVersion", + "debugMode", + "deviceName", + "elementVisibilityFirstTime", + "elementVisibilityRatio", + "elementVisibilityRecentTime", + "elementVisibilityTime", + "environmentName", + "errorLine", + "errorMessage", + "errorUrl", + "event", + "eventName", + "firebaseEventParameterCampaign", + "firebaseEventParameterCampaignAclid", + "firebaseEventParameterCampaignAnid", + "firebaseEventParameterCampaignClickTimestamp", + "firebaseEventParameterCampaignContent", + "firebaseEventParameterCampaignCp1", + "firebaseEventParameterCampaignGclid", + "firebaseEventParameterCampaignSource", + "firebaseEventParameterCampaignTerm", + "firebaseEventParameterCurrency", + "firebaseEventParameterDynamicLinkAcceptTime", + "firebaseEventParameterDynamicLinkLinkid", + "firebaseEventParameterNotificationMessageDeviceTime", + "firebaseEventParameterNotificationMessageId", + "firebaseEventParameterNotificationMessageName", + "firebaseEventParameterNotificationMessageTime", + "firebaseEventParameterNotificationTopic", + "firebaseEventParameterPreviousAppVersion", + "firebaseEventParameterPreviousOsVersion", + "firebaseEventParameterPrice", + "firebaseEventParameterProductId", + "firebaseEventParameterQuantity", + "firebaseEventParameterValue", + "formClasses", + "formElement", + "formId", + "formTarget", + "formText", + "formUrl", + "historySource", + "htmlId", + "language", + "newHistoryFragment", + "newHistoryState", + "oldHistoryFragment", + "oldHistoryState", + "osVersion", + "pageHostname", + "pagePath", + "pageUrl", + "platform", + "randomNumber", + "referrer", + "resolution", + "scrollDepthDirection", + "scrollDepthThreshold", + "scrollDepthUnits", + "sdkVersion", + "videoCurrentTime", + "videoDuration", + "videoPercent", + "videoProvider", + "videoStatus", + "videoTitle", + "videoUrl", + "videoVisible" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "workspaceId": { + "description": "GTM Workspace ID.", + "type": "string" } - }, - "parameterOrder": [ - "path" - ], - "request": { - "$ref": "UserPermission" - }, - "response": { - "$ref": "UserPermission" - }, - "scopes": [ - "https://www.googleapis.com/auth/tagmanager.manage.users" - ] - } - } + }, + "type": "object" + }, + "Condition": { + "description": "Represents a predicate.", + "id": "Condition", + "properties": { + "parameter": { + "annotations": { + "required": [ + "tagmanager.accounts.containers.workspaces.triggers.create", + "tagmanager.accounts.containers.workspaces.triggers.update" + ] + }, + "description": "A list of named parameters (key/value), depending on the condition's type. Notes: \n- For binary operators, include parameters named arg0 and arg1 for specifying the left and right operands, respectively. \n- At this time, the left operand (arg0) must be a reference to a variable. \n- For case-insensitive Regex matching, include a boolean parameter named ignore_case that is set to true. If not specified or set to any other value, the matching will be case sensitive. \n- To negate an operator, include a boolean parameter named negate boolean parameter that is set to true.", + "items": { + "$ref": "Parameter" + }, + "type": "array" + }, + "type": { + "annotations": { + "required": [ + "tagmanager.accounts.containers.workspaces.triggers.create", + "tagmanager.accounts.containers.workspaces.triggers.update" + ] + }, + "description": "The type of operator for this condition.", + "enum": [ + "conditionTypeUnspecified", + "contains", + "cssSelector", + "endsWith", + "equals", + "greater", + "greaterOrEquals", + "less", + "lessOrEquals", + "matchRegex", + "startsWith", + "urlMatches" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "Container": { + "description": "Represents a Google Tag Manager Container, which specifies the platform tags will run on, manages workspaces, and retains container versions.", + "id": "Container", + "properties": { + "accountId": { + "description": "GTM Account ID.", + "type": "string" + }, + "containerId": { + "description": "The Container ID uniquely identifies the GTM Container.", + "type": "string" + }, + "domainName": { + "description": "List of domain names associated with the Container.", + "items": { + "type": "string" + }, + "type": "array" + }, + "fingerprint": { + "description": "The fingerprint of the GTM Container as computed at storage time. This value is recomputed whenever the account is modified.", + "type": "string" + }, + "name": { + "annotations": { + "required": [ + "tagmanager.accounts.containers.create" + ] + }, + "description": "Container display name.", + "type": "string" + }, + "notes": { + "description": "Container Notes.", + "type": "string" + }, + "path": { + "description": "GTM Container's API relative path.", + "type": "string" + }, + "publicId": { + "description": "Container Public ID.", + "type": "string" + }, + "tagManagerUrl": { + "description": "Auto generated link to the tag manager UI", + "type": "string" + }, + "usageContext": { + "annotations": { + "required": [ + "tagmanager.accounts.containers.create" + ] + }, + "description": "List of Usage Contexts for the Container. Valid values include: web, android, or ios.", + "items": { + "enum": [ + "amp", + "android", + "androidSdk5", + "ios", + "iosSdk5", + "usageContextUnspecified", + "web" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "ContainerAccess": { + "description": "Defines the Google Tag Manager Container access permissions.", + "id": "ContainerAccess", + "properties": { + "containerId": { + "description": "GTM Container ID.", + "type": "string" + }, + "permission": { + "description": "List of Container permissions.", + "enum": [ + "approve", + "containerPermissionUnspecified", + "edit", + "noAccess", + "publish", + "read" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "ContainerVersion": { + "description": "Represents a Google Tag Manager Container Version.", + "id": "ContainerVersion", + "properties": { + "accountId": { + "description": "GTM Account ID.", + "type": "string" + }, + "builtInVariable": { + "description": "The built-in variables in the container that this version was taken from.", + "items": { + "$ref": "BuiltInVariable" + }, + "type": "array" + }, + "container": { + "$ref": "Container", + "description": "The container that this version was taken from." + }, + "containerId": { + "description": "GTM Container ID.", + "type": "string" + }, + "containerVersionId": { + "description": "The Container Version ID uniquely identifies the GTM Container Version.", + "type": "string" + }, + "deleted": { + "description": "A value of true indicates this container version has been deleted.", + "type": "boolean" + }, + "description": { + "description": "Container version description.", + "type": "string" + }, + "fingerprint": { + "description": "The fingerprint of the GTM Container Version as computed at storage time. This value is recomputed whenever the container version is modified.", + "type": "string" + }, + "folder": { + "description": "The folders in the container that this version was taken from.", + "items": { + "$ref": "Folder" + }, + "type": "array" + }, + "name": { + "description": "Container version display name.", + "type": "string" + }, + "path": { + "description": "GTM ContainerVersions's API relative path.", + "type": "string" + }, + "tag": { + "description": "The tags in the container that this version was taken from.", + "items": { + "$ref": "Tag" + }, + "type": "array" + }, + "tagManagerUrl": { + "description": "Auto generated link to the tag manager UI", + "type": "string" + }, + "trigger": { + "description": "The triggers in the container that this version was taken from.", + "items": { + "$ref": "Trigger" + }, + "type": "array" + }, + "variable": { + "description": "The variables in the container that this version was taken from.", + "items": { + "$ref": "Variable" + }, + "type": "array" + }, + "zone": { + "description": "The zones in the container that this version was taken from.", + "items": { + "$ref": "Zone" + }, + "type": "array" + } + }, + "type": "object" + }, + "ContainerVersionHeader": { + "description": "Represents a Google Tag Manager Container Version Header.", + "id": "ContainerVersionHeader", + "properties": { + "accountId": { + "description": "GTM Account ID.", + "type": "string" + }, + "containerId": { + "description": "GTM Container ID.", + "type": "string" + }, + "containerVersionId": { + "description": "The Container Version ID uniquely identifies the GTM Container Version.", + "type": "string" + }, + "deleted": { + "description": "A value of true indicates this container version has been deleted.", + "type": "boolean" + }, + "name": { + "description": "Container version display name.", + "type": "string" + }, + "numMacros": { + "description": "Number of macros in the container version.", + "type": "string" + }, + "numRules": { + "description": "Number of rules in the container version.", + "type": "string" + }, + "numTags": { + "description": "Number of tags in the container version.", + "type": "string" + }, + "numTriggers": { + "description": "Number of triggers in the container version.", + "type": "string" + }, + "numVariables": { + "description": "Number of variables in the container version.", + "type": "string" + }, + "numZones": { + "description": "Number of zones in the container version.", + "type": "string" + }, + "path": { + "description": "GTM Container Versions's API relative path.", + "type": "string" + } + }, + "type": "object" + }, + "CreateBuiltInVariableResponse": { + "id": "CreateBuiltInVariableResponse", + "properties": { + "builtInVariable": { + "description": "List of created built-in variables.", + "items": { + "$ref": "BuiltInVariable" + }, + "type": "array" + } + }, + "type": "object" + }, + "CreateContainerVersionRequestVersionOptions": { + "description": "Options for new container versions.", + "id": "CreateContainerVersionRequestVersionOptions", + "properties": { + "name": { + "description": "The name of the container version to be created.", + "type": "string" + }, + "notes": { + "description": "The notes of the container version to be created.", + "type": "string" + } + }, + "type": "object" + }, + "CreateContainerVersionResponse": { + "description": "Create container versions response.", + "id": "CreateContainerVersionResponse", + "properties": { + "compilerError": { + "description": "Compiler errors or not.", + "type": "boolean" + }, + "containerVersion": { + "$ref": "ContainerVersion", + "description": "The container version created." + }, + "newWorkspacePath": { + "description": "Auto generated workspace path created as a result of version creation. This field should only be populated if the created version was not a quick preview.", + "type": "string" + }, + "syncStatus": { + "$ref": "SyncStatus", + "description": "Whether version creation failed when syncing the workspace to the latest container version." + } + }, + "type": "object" + }, + "CreateWorkspaceProposalRequest": { + "description": "Creates a workspace proposal to start a review of a workspace.", + "id": "CreateWorkspaceProposalRequest", + "properties": { + "initialComment": { + "$ref": "WorkspaceProposalHistoryComment", + "description": "If present, an initial comment to associate with the workspace proposal." + }, + "reviewers": { + "description": "List of users to review the workspace proposal.", + "items": { + "$ref": "WorkspaceProposalUser" + }, + "type": "array" + } + }, + "type": "object" + }, + "Entity": { + "description": "A workspace entity that may represent a tag, trigger, variable, or folder in addition to its status in the workspace.", + "id": "Entity", + "properties": { + "changeStatus": { + "description": "Represents how the entity has been changed in the workspace.", + "enum": [ + "added", + "changeStatusUnspecified", + "deleted", + "none", + "updated" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "folder": { + "$ref": "Folder", + "description": "The Folder being represented by the entity." + }, + "tag": { + "$ref": "Tag", + "description": "The tag being represented by the entity." + }, + "trigger": { + "$ref": "Trigger", + "description": "The trigger being represented by the entity." + }, + "variable": { + "$ref": "Variable", + "description": "The variable being represented by the entity." + } + }, + "type": "object" + }, + "Environment": { + "description": "Represents a Google Tag Manager Environment. Note that a user can create, delete and update environments of type USER, but can only update the enable_debug and url fields of environments of other types.", + "id": "Environment", + "properties": { + "accountId": { + "description": "GTM Account ID.", + "type": "string" + }, + "authorizationCode": { + "description": "The environment authorization code.", + "type": "string" + }, + "authorizationTimestamp": { + "$ref": "Timestamp", + "description": "The last update time-stamp for the authorization code." + }, + "containerId": { + "description": "GTM Container ID.", + "type": "string" + }, + "containerVersionId": { + "description": "Represents a link to a container version.", + "type": "string" + }, + "description": { + "description": "The environment description. Can be set or changed only on USER type environments.", + "type": "string" + }, + "enableDebug": { + "description": "Whether or not to enable debug by default for the environment.", + "type": "boolean" + }, + "environmentId": { + "description": "GTM Environment ID uniquely identifies the GTM Environment.", + "type": "string" + }, + "fingerprint": { + "description": "The fingerprint of the GTM environment as computed at storage time. This value is recomputed whenever the environment is modified.", + "type": "string" + }, + "name": { + "annotations": { + "required": [ + "tagmanager.accounts.containers.environments.create", + "tagmanager.accounts.containers.environments.update" + ] + }, + "description": "The environment display name. Can be set or changed only on USER type environments.", + "type": "string" + }, + "path": { + "description": "GTM Environment's API relative path.", + "type": "string" + }, + "tagManagerUrl": { + "description": "Auto generated link to the tag manager UI", + "type": "string" + }, + "type": { + "description": "The type of this environment.", + "enum": [ + "latest", + "live", + "user", + "workspace" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ], + "type": "string" + }, + "url": { + "description": "Default preview page url for the environment.", + "type": "string" + }, + "workspaceId": { + "description": "Represents a link to a quick preview of a workspace.", + "type": "string" + } + }, + "type": "object" + }, + "Folder": { + "description": "Represents a Google Tag Manager Folder.", + "id": "Folder", + "properties": { + "accountId": { + "description": "GTM Account ID.", + "type": "string" + }, + "containerId": { + "description": "GTM Container ID.", + "type": "string" + }, + "fingerprint": { + "description": "The fingerprint of the GTM Folder as computed at storage time. This value is recomputed whenever the folder is modified.", + "type": "string" + }, + "folderId": { + "description": "The Folder ID uniquely identifies the GTM Folder.", + "type": "string" + }, + "name": { + "annotations": { + "required": [ + "tagmanager.accounts.containers.workspaces.folders.create", + "tagmanager.accounts.containers.workspaces.folders.update" + ] + }, + "description": "Folder display name.", + "type": "string" + }, + "notes": { + "description": "User notes on how to apply this folder in the container.", + "type": "string" + }, + "path": { + "description": "GTM Folder's API relative path.", + "type": "string" + }, + "tagManagerUrl": { + "description": "Auto generated link to the tag manager UI", + "type": "string" + }, + "workspaceId": { + "description": "GTM Workspace ID.", + "type": "string" + } + }, + "type": "object" + }, + "FolderEntities": { + "description": "Represents a Google Tag Manager Folder's contents.", + "id": "FolderEntities", + "properties": { + "nextPageToken": { + "description": "Continuation token for fetching the next page of results.", + "type": "string" + }, + "tag": { + "description": "The list of tags inside the folder.", + "items": { + "$ref": "Tag" + }, + "type": "array" + }, + "trigger": { + "description": "The list of triggers inside the folder.", + "items": { + "$ref": "Trigger" + }, + "type": "array" + }, + "variable": { + "description": "The list of variables inside the folder.", + "items": { + "$ref": "Variable" + }, + "type": "array" + } + }, + "type": "object" + }, + "GetWorkspaceStatusResponse": { + "description": "The changes that have occurred in the workspace since the base container version.", + "id": "GetWorkspaceStatusResponse", + "properties": { + "mergeConflict": { + "description": "The merge conflict after sync.", + "items": { + "$ref": "MergeConflict" + }, + "type": "array" + }, + "workspaceChange": { + "description": "Entities that have been changed in the workspace.", + "items": { + "$ref": "Entity" + }, + "type": "array" + } + }, + "type": "object" + }, + "ListAccountsResponse": { + "description": "List Accounts Response.", + "id": "ListAccountsResponse", + "properties": { + "account": { + "description": "List of GTM Accounts that a user has access to.", + "items": { + "$ref": "Account" + }, + "type": "array" + }, + "nextPageToken": { + "description": "Continuation token for fetching the next page of results.", + "type": "string" + } + }, + "type": "object" + }, + "ListContainerVersionsResponse": { + "description": "List container versions response.", + "id": "ListContainerVersionsResponse", + "properties": { + "containerVersionHeader": { + "description": "All container version headers of a GTM Container.", + "items": { + "$ref": "ContainerVersionHeader" + }, + "type": "array" + }, + "nextPageToken": { + "description": "Continuation token for fetching the next page of results.", + "type": "string" + } + }, + "type": "object" + }, + "ListContainersResponse": { + "description": "List Containers Response.", + "id": "ListContainersResponse", + "properties": { + "container": { + "description": "All Containers of a GTM Account.", + "items": { + "$ref": "Container" + }, + "type": "array" + }, + "nextPageToken": { + "description": "Continuation token for fetching the next page of results.", + "type": "string" + } + }, + "type": "object" + }, + "ListEnabledBuiltInVariablesResponse": { + "description": "A list of enabled built-in variables.", + "id": "ListEnabledBuiltInVariablesResponse", + "properties": { + "builtInVariable": { + "description": "All GTM BuiltInVariables of a GTM container.", + "items": { + "$ref": "BuiltInVariable" + }, + "type": "array" + }, + "nextPageToken": { + "description": "Continuation token for fetching the next page of results.", + "type": "string" + } + }, + "type": "object" + }, + "ListEnvironmentsResponse": { + "description": "List Environments Response.", + "id": "ListEnvironmentsResponse", + "properties": { + "environment": { + "description": "All Environments of a GTM Container.", + "items": { + "$ref": "Environment" + }, + "type": "array" + }, + "nextPageToken": { + "description": "Continuation token for fetching the next page of results.", + "type": "string" + } + }, + "type": "object" + }, + "ListFoldersResponse": { + "description": "List Folders Response.", + "id": "ListFoldersResponse", + "properties": { + "folder": { + "description": "All GTM Folders of a GTM Container.", + "items": { + "$ref": "Folder" + }, + "type": "array" + }, + "nextPageToken": { + "description": "Continuation token for fetching the next page of results.", + "type": "string" + } + }, + "type": "object" + }, + "ListTagsResponse": { + "description": "List Tags Response.", + "id": "ListTagsResponse", + "properties": { + "nextPageToken": { + "description": "Continuation token for fetching the next page of results.", + "type": "string" + }, + "tag": { + "description": "All GTM Tags of a GTM Container.", + "items": { + "$ref": "Tag" + }, + "type": "array" + } + }, + "type": "object" + }, + "ListTriggersResponse": { + "description": "List triggers response.", + "id": "ListTriggersResponse", + "properties": { + "nextPageToken": { + "description": "Continuation token for fetching the next page of results.", + "type": "string" + }, + "trigger": { + "description": "All GTM Triggers of a GTM Container.", + "items": { + "$ref": "Trigger" + }, + "type": "array" + } + }, + "type": "object" + }, + "ListUserPermissionsResponse": { + "description": "List user permissions response.", + "id": "ListUserPermissionsResponse", + "properties": { + "nextPageToken": { + "description": "Continuation token for fetching the next page of results.", + "type": "string" + }, + "userPermission": { + "description": "All GTM UserPermissions of a GTM Account.", + "items": { + "$ref": "UserPermission" + }, + "type": "array" + } + }, + "type": "object" + }, + "ListVariablesResponse": { + "description": "List Variables Response.", + "id": "ListVariablesResponse", + "properties": { + "nextPageToken": { + "description": "Continuation token for fetching the next page of results.", + "type": "string" + }, + "variable": { + "description": "All GTM Variables of a GTM Container.", + "items": { + "$ref": "Variable" + }, + "type": "array" + } + }, + "type": "object" + }, + "ListWorkspacesResponse": { + "description": "A list of workspaces in a container.", + "id": "ListWorkspacesResponse", + "properties": { + "nextPageToken": { + "description": "Continuation token for fetching the next page of results.", + "type": "string" + }, + "workspace": { + "description": "All Workspaces of a GTM Container.", + "items": { + "$ref": "Workspace" + }, + "type": "array" + } + }, + "type": "object" + }, + "MergeConflict": { + "description": "Represents a merge conflict.", + "id": "MergeConflict", + "properties": { + "entityInBaseVersion": { + "$ref": "Entity", + "description": "The base version entity (since the latest sync operation) that has conflicting changes compared to the workspace. If this field is missing, it means the workspace entity is deleted from the base version." + }, + "entityInWorkspace": { + "$ref": "Entity", + "description": "The workspace entity that has conflicting changes compared to the base version. If an entity is deleted in a workspace, it will still appear with a deleted change status." + } + }, + "type": "object" + }, + "Parameter": { + "description": "Represents a Google Tag Manager Parameter.", + "id": "Parameter", + "properties": { + "key": { + "description": "The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.", + "type": "string" + }, + "list": { + "description": "This list parameter's parameters (keys will be ignored).", + "items": { + "$ref": "Parameter" + }, + "type": "array" + }, + "map": { + "description": "This map parameter's parameters (must have keys; keys must be unique).", + "items": { + "$ref": "Parameter" + }, + "type": "array" + }, + "type": { + "annotations": { + "required": [ + "tagmanager.accounts.containers.workspaces.tags.create", + "tagmanager.accounts.containers.workspaces.tags.update", + "tagmanager.accounts.containers.workspaces.triggers.create", + "tagmanager.accounts.containers.workspaces.triggers.update", + "tagmanager.accounts.containers.workspaces.variables.create", + "tagmanager.accounts.containers.workspaces.variables.update" + ] + }, + "description": "The parameter type. Valid values are: \n- boolean: The value represents a boolean, represented as 'true' or 'false' \n- integer: The value represents a 64-bit signed integer value, in base 10 \n- list: A list of parameters should be specified \n- map: A map of parameters should be specified \n- template: The value represents any text; this can include variable references (even variable references that might return non-string types)", + "enum": [ + "boolean", + "integer", + "list", + "map", + "template", + "typeUnspecified" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "value": { + "description": "A parameter's value (may contain variable references such as \"{{myVariable}}\") as appropriate to the specified type.", + "type": "string" + } + }, + "type": "object" + }, + "PublishContainerVersionResponse": { + "description": "Publish container version response.", + "id": "PublishContainerVersionResponse", + "properties": { + "compilerError": { + "description": "Compiler errors or not.", + "type": "boolean" + }, + "containerVersion": { + "$ref": "ContainerVersion", + "description": "The container version created." + } + }, + "type": "object" + }, + "QuickPreviewResponse": { + "description": "Response to quick previewing a workspace.", + "id": "QuickPreviewResponse", + "properties": { + "compilerError": { + "description": "Were there compiler errors or not.", + "type": "boolean" + }, + "containerVersion": { + "$ref": "ContainerVersion", + "description": "The quick previewed container version." + }, + "syncStatus": { + "$ref": "SyncStatus", + "description": "Whether quick previewing failed when syncing the workspace to the latest container version." + } + }, + "type": "object" + }, + "RevertBuiltInVariableResponse": { + "description": "The result of reverting a built-in variable in a workspace.", + "id": "RevertBuiltInVariableResponse", + "properties": { + "enabled": { + "description": "Whether the built-in variable is enabled after reversion.", + "type": "boolean" + } + }, + "type": "object" + }, + "RevertFolderResponse": { + "description": "The result of reverting folder changes in a workspace.", + "id": "RevertFolderResponse", + "properties": { + "folder": { + "$ref": "Folder", + "description": "Folder as it appears in the latest container version since the last workspace synchronization operation. If no folder is present, that means the folder was deleted in the latest container version." + } + }, + "type": "object" + }, + "RevertTagResponse": { + "description": "The result of reverting a tag in a workspace.", + "id": "RevertTagResponse", + "properties": { + "tag": { + "$ref": "Tag", + "description": "Tag as it appears in the latest container version since the last workspace synchronization operation. If no tag is present, that means the tag was deleted in the latest container version." + } + }, + "type": "object" + }, + "RevertTriggerResponse": { + "description": "The result of reverting a trigger in a workspace.", + "id": "RevertTriggerResponse", + "properties": { + "trigger": { + "$ref": "Trigger", + "description": "Trigger as it appears in the latest container version since the last workspace synchronization operation. If no trigger is present, that means the trigger was deleted in the latest container version." + } + }, + "type": "object" + }, + "RevertVariableResponse": { + "description": "The result of reverting a variable in a workspace.", + "id": "RevertVariableResponse", + "properties": { + "variable": { + "$ref": "Variable", + "description": "Variable as it appears in the latest container version since the last workspace synchronization operation. If no variable is present, that means the variable was deleted in the latest container version." + } + }, + "type": "object" + }, + "SetupTag": { + "description": "Represents a reference to atag that fires before another tag in order to set up dependencies.", + "id": "SetupTag", + "properties": { + "stopOnSetupFailure": { + "description": "If true, fire the main tag if and only if the setup tag fires successfully. If false, fire the main tag regardless of setup tag firing status.", + "type": "boolean" + }, + "tagName": { + "description": "The name of the setup tag.", + "type": "string" + } + }, + "type": "object" + }, + "SyncStatus": { + "description": "The status of a workspace after synchronization.", + "id": "SyncStatus", + "properties": { + "mergeConflict": { + "description": "Synchornization operation detected a merge conflict.", + "type": "boolean" + }, + "syncError": { + "description": "An error occurred during the synchronization operation.", + "type": "boolean" + } + }, + "type": "object" + }, + "SyncWorkspaceResponse": { + "description": "A response after synchronizing the workspace to the latest container version.", + "id": "SyncWorkspaceResponse", + "properties": { + "mergeConflict": { + "description": "The merge conflict after sync. If this field is not empty, the sync is still treated as successful. But a version cannot be created until all conflicts are resolved.", + "items": { + "$ref": "MergeConflict" + }, + "type": "array" + }, + "syncStatus": { + "$ref": "SyncStatus", + "description": "Indicates whether synchronization caused a merge conflict or sync error." + } + }, + "type": "object" + }, + "Tag": { + "description": "Represents a Google Tag Manager Tag.", + "id": "Tag", + "properties": { + "accountId": { + "description": "GTM Account ID.", + "type": "string" + }, + "blockingRuleId": { + "description": "Blocking rule IDs. If any of the listed rules evaluate to true, the tag will not fire.", + "items": { + "type": "string" + }, + "type": "array" + }, + "blockingTriggerId": { + "description": "Blocking trigger IDs. If any of the listed triggers evaluate to true, the tag will not fire.", + "items": { + "type": "string" + }, + "type": "array" + }, + "containerId": { + "description": "GTM Container ID.", + "type": "string" + }, + "fingerprint": { + "description": "The fingerprint of the GTM Tag as computed at storage time. This value is recomputed whenever the tag is modified.", + "type": "string" + }, + "firingRuleId": { + "description": "Firing rule IDs. A tag will fire when any of the listed rules are true and all of its blockingRuleIds (if any specified) are false.", + "items": { + "type": "string" + }, + "type": "array" + }, + "firingTriggerId": { + "description": "Firing trigger IDs. A tag will fire when any of the listed triggers are true and all of its blockingTriggerIds (if any specified) are false.", + "items": { + "type": "string" + }, + "type": "array" + }, + "liveOnly": { + "description": "If set to true, this tag will only fire in the live environment (e.g. not in preview or debug mode).", + "type": "boolean" + }, + "name": { + "annotations": { + "required": [ + "tagmanager.accounts.containers.workspaces.tags.create", + "tagmanager.accounts.containers.workspaces.tags.update" + ] + }, + "description": "Tag display name.", + "type": "string" + }, + "notes": { + "description": "User notes on how to apply this tag in the container.", + "type": "string" + }, + "parameter": { + "description": "The tag's parameters.", + "items": { + "$ref": "Parameter" + }, + "type": "array" + }, + "parentFolderId": { + "description": "Parent folder id.", + "type": "string" + }, + "path": { + "description": "GTM Tag's API relative path.", + "type": "string" + }, + "paused": { + "description": "Indicates whether the tag is paused, which prevents the tag from firing.", + "type": "boolean" + }, + "priority": { + "$ref": "Parameter", + "description": "User defined numeric priority of the tag. Tags are fired asynchronously in order of priority. Tags with higher numeric value fire first. A tag's priority can be a positive or negative value. The default value is 0." + }, + "scheduleEndMs": { + "description": "The end timestamp in milliseconds to schedule a tag.", + "format": "int64", + "type": "string" + }, + "scheduleStartMs": { + "description": "The start timestamp in milliseconds to schedule a tag.", + "format": "int64", + "type": "string" + }, + "setupTag": { + "description": "The list of setup tags. Currently we only allow one.", + "items": { + "$ref": "SetupTag" + }, + "type": "array" + }, + "tagFiringOption": { + "description": "Option to fire this tag.", + "enum": [ + "oncePerEvent", + "oncePerLoad", + "tagFiringOptionUnspecified", + "unlimited" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ], + "type": "string" + }, + "tagId": { + "description": "The Tag ID uniquely identifies the GTM Tag.", + "type": "string" + }, + "tagManagerUrl": { + "description": "Auto generated link to the tag manager UI", + "type": "string" + }, + "teardownTag": { + "description": "The list of teardown tags. Currently we only allow one.", + "items": { + "$ref": "TeardownTag" + }, + "type": "array" + }, + "type": { + "annotations": { + "required": [ + "tagmanager.accounts.containers.workspaces.tags.create", + "tagmanager.accounts.containers.workspaces.tags.update" + ] + }, + "description": "GTM Tag Type.", + "type": "string" + }, + "workspaceId": { + "description": "GTM Workspace ID.", + "type": "string" + } + }, + "type": "object" + }, + "TeardownTag": { + "description": "Represents a tag that fires after another tag in order to tear down dependencies.", + "id": "TeardownTag", + "properties": { + "stopTeardownOnFailure": { + "description": "If true, fire the teardown tag if and only if the main tag fires successfully. If false, fire the teardown tag regardless of main tag firing status.", + "type": "boolean" + }, + "tagName": { + "description": "The name of the teardown tag.", + "type": "string" + } + }, + "type": "object" + }, + "Timestamp": { + "description": "A Timestamp represents a point in time independent of any time zone or calendar, represented as seconds and fractions of seconds at nanosecond resolution in UTC Epoch time. It is encoded using the Proleptic Gregorian Calendar which extends the Gregorian calendar backwards to year one. It is encoded assuming all minutes are 60 seconds long, i.e. leap seconds are \"smeared\" so that no leap second table is needed for interpretation. Range is from 0001-01-01T00:00:00Z to 9999-12-31T23:59:59.999999999Z. By restricting to that range, we ensure that we can convert to and from RFC 3339 date strings. See [https://www.ietf.org/rfc/rfc3339.txt](https://www.ietf.org/rfc/rfc3339.txt).\n\n# Examples\n\nExample 1: Compute Timestamp from POSIX `time()`.\n\nTimestamp timestamp; timestamp.set_seconds(time(NULL)); timestamp.set_nanos(0);\n\nExample 2: Compute Timestamp from POSIX `gettimeofday()`.\n\nstruct timeval tv; gettimeofday(\u0026tv, NULL);\n\nTimestamp timestamp; timestamp.set_seconds(tv.tv_sec); timestamp.set_nanos(tv.tv_usec * 1000);\n\nExample 3: Compute Timestamp from Win32 `GetSystemTimeAsFileTime()`.\n\nFILETIME ft; GetSystemTimeAsFileTime(\u0026ft); UINT64 ticks = (((UINT64)ft.dwHighDateTime) \u003c\u003c 32) | ft.dwLowDateTime;\n\n// A Windows tick is 100 nanoseconds. Windows epoch 1601-01-01T00:00:00Z // is 11644473600 seconds before Unix epoch 1970-01-01T00:00:00Z. Timestamp timestamp; timestamp.set_seconds((INT64) ((ticks / 10000000) - 11644473600LL)); timestamp.set_nanos((INT32) ((ticks % 10000000) * 100));\n\nExample 4: Compute Timestamp from Java `System.currentTimeMillis()`.\n\nlong millis = System.currentTimeMillis();\n\nTimestamp timestamp = Timestamp.newBuilder().setSeconds(millis / 1000) .setNanos((int) ((millis % 1000) * 1000000)).build();\n\n\n\nExample 5: Compute Timestamp from current time in Python.\n\ntimestamp = Timestamp() timestamp.GetCurrentTime()\n\n# JSON Mapping\n\nIn JSON format, the Timestamp type is encoded as a string in the [RFC 3339](https://www.ietf.org/rfc/rfc3339.txt) format. That is, the format is \"{year}-{month}-{day}T{hour}:{min}:{sec}[.{frac_sec}]Z\" where {year} is always expressed using four digits while {month}, {day}, {hour}, {min}, and {sec} are zero-padded to two digits each. The fractional seconds, which can go up to 9 digits (i.e. up to 1 nanosecond resolution), are optional. The \"Z\" suffix indicates the timezone (\"UTC\"); the timezone is required, though only UTC (as indicated by \"Z\") is presently supported.\n\nFor example, \"2017-01-15T01:30:15.01Z\" encodes 15.01 seconds past 01:30 UTC on January 15, 2017.\n\nIn JavaScript, one can convert a Date object to this format using the standard [toISOString()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toISOString] method. In Python, a standard `datetime.datetime` object can be converted to this format using [`strftime`](https://docs.python.org/2/library/time.html#time.strftime) with the time format spec '%Y-%m-%dT%H:%M:%S.%fZ'. Likewise, in Java, one can use the Joda Time's [`ISODateTimeFormat.dateTime()`]( http://joda-time.sourceforge.net/apidocs/org/joda/time/format/ISODateTimeFormat.html#dateTime()) to obtain a formatter capable of generating timestamps in this format.", + "id": "Timestamp", + "properties": { + "nanos": { + "description": "Non-negative fractions of a second at nanosecond resolution. Negative second values with fractions must still have non-negative nanos values that count forward in time. Must be from 0 to 999,999,999 inclusive.", + "format": "int32", + "type": "integer" + }, + "seconds": { + "description": "Represents seconds of UTC time since Unix epoch 1970-01-01T00:00:00Z. Must be from 0001-01-01T00:00:00Z to 9999-12-31T23:59:59Z inclusive.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "Trigger": { + "description": "Represents a Google Tag Manager Trigger", + "id": "Trigger", + "properties": { + "accountId": { + "description": "GTM Account ID.", + "type": "string" + }, + "autoEventFilter": { + "description": "Used in the case of auto event tracking.", + "items": { + "$ref": "Condition" + }, + "type": "array" + }, + "checkValidation": { + "$ref": "Parameter", + "description": "Whether or not we should only fire tags if the form submit or link click event is not cancelled by some other event handler (e.g. because of validation). Only valid for Form Submission and Link Click triggers." + }, + "containerId": { + "description": "GTM Container ID.", + "type": "string" + }, + "continuousTimeMinMilliseconds": { + "$ref": "Parameter", + "description": "A visibility trigger minimum continuous visible time (in milliseconds). Only valid for AMP Visibility trigger." + }, + "customEventFilter": { + "description": "Used in the case of custom event, which is fired iff all Conditions are true.", + "items": { + "$ref": "Condition" + }, + "type": "array" + }, + "eventName": { + "$ref": "Parameter", + "description": "Name of the GTM event that is fired. Only valid for Timer triggers." + }, + "filter": { + "description": "The trigger will only fire iff all Conditions are true.", + "items": { + "$ref": "Condition" + }, + "type": "array" + }, + "fingerprint": { + "description": "The fingerprint of the GTM Trigger as computed at storage time. This value is recomputed whenever the trigger is modified.", + "type": "string" + }, + "horizontalScrollPercentageList": { + "$ref": "Parameter", + "description": "List of integer percentage values for scroll triggers. The trigger will fire when each percentage is reached when the view is scrolled horizontally. Only valid for AMP scroll triggers." + }, + "interval": { + "$ref": "Parameter", + "description": "Time between triggering recurring Timer Events (in milliseconds). Only valid for Timer triggers." + }, + "intervalSeconds": { + "$ref": "Parameter", + "description": "Time between Timer Events to fire (in seconds). Only valid for AMP Timer trigger." + }, + "limit": { + "$ref": "Parameter", + "description": "Limit of the number of GTM events this Timer Trigger will fire. If no limit is set, we will continue to fire GTM events until the user leaves the page. Only valid for Timer triggers." + }, + "maxTimerLengthSeconds": { + "$ref": "Parameter", + "description": "Max time to fire Timer Events (in seconds). Only valid for AMP Timer trigger." + }, + "name": { + "annotations": { + "required": [ + "tagmanager.accounts.containers.workspaces.triggers.create", + "tagmanager.accounts.containers.workspaces.triggers.update" + ] + }, + "description": "Trigger display name.", + "type": "string" + }, + "notes": { + "description": "User notes on how to apply this trigger in the container.", + "type": "string" + }, + "parameter": { + "description": "Additional parameters.", + "items": { + "$ref": "Parameter" + }, + "type": "array" + }, + "parentFolderId": { + "description": "Parent folder id.", + "type": "string" + }, + "path": { + "description": "GTM Trigger's API relative path.", + "type": "string" + }, + "selector": { + "$ref": "Parameter", + "description": "A click trigger CSS selector (i.e. \"a\", \"button\" etc.). Only valid for AMP Click trigger." + }, + "tagManagerUrl": { + "description": "Auto generated link to the tag manager UI", + "type": "string" + }, + "totalTimeMinMilliseconds": { + "$ref": "Parameter", + "description": "A visibility trigger minimum total visible time (in milliseconds). Only valid for AMP Visibility trigger." + }, + "triggerId": { + "description": "The Trigger ID uniquely identifies the GTM Trigger.", + "type": "string" + }, + "type": { + "annotations": { + "required": [ + "tagmanager.accounts.containers.workspaces.triggers.create" + ] + }, + "description": "Defines the data layer event that causes this trigger.", + "enum": [ + "always", + "ampClick", + "ampScroll", + "ampTimer", + "ampVisibility", + "click", + "customEvent", + "domReady", + "elementVisibility", + "eventTypeUnspecified", + "firebaseAppException", + "firebaseAppUpdate", + "firebaseCampaign", + "firebaseFirstOpen", + "firebaseInAppPurchase", + "firebaseNotificationDismiss", + "firebaseNotificationForeground", + "firebaseNotificationOpen", + "firebaseNotificationReceive", + "firebaseOsUpdate", + "firebaseSessionStart", + "firebaseUserEngagement", + "formSubmission", + "historyChange", + "jsError", + "linkClick", + "pageview", + "scrollDepth", + "timer", + "windowLoaded", + "youTubeVideo" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "uniqueTriggerId": { + "$ref": "Parameter", + "description": "Globally unique id of the trigger that auto-generates this (a Form Submit, Link Click or Timer listener) if any. Used to make incompatible auto-events work together with trigger filtering based on trigger ids. This value is populated during output generation since the tags implied by triggers don't exist until then. Only valid for Form Submit, Link Click and Timer triggers." + }, + "verticalScrollPercentageList": { + "$ref": "Parameter", + "description": "List of integer percentage values for scroll triggers. The trigger will fire when each percentage is reached when the view is scrolled vertically. Only valid for AMP scroll triggers." + }, + "visibilitySelector": { + "$ref": "Parameter", + "description": "A visibility trigger CSS selector (i.e. \"#id\"). Only valid for AMP Visibility trigger." + }, + "visiblePercentageMax": { + "$ref": "Parameter", + "description": "A visibility trigger maximum percent visibility. Only valid for AMP Visibility trigger." + }, + "visiblePercentageMin": { + "$ref": "Parameter", + "description": "A visibility trigger minimum percent visibility. Only valid for AMP Visibility trigger." + }, + "waitForTags": { + "$ref": "Parameter", + "description": "Whether or not we should delay the form submissions or link opening until all of the tags have fired (by preventing the default action and later simulating the default action). Only valid for Form Submission and Link Click triggers." + }, + "waitForTagsTimeout": { + "$ref": "Parameter", + "description": "How long to wait (in milliseconds) for tags to fire when 'waits_for_tags' above evaluates to true. Only valid for Form Submission and Link Click triggers." + }, + "workspaceId": { + "description": "GTM Workspace ID.", + "type": "string" + } + }, + "type": "object" + }, + "UpdateWorkspaceProposalRequest": { + "description": "Updates a workspace proposal with patch-like semantics.", + "id": "UpdateWorkspaceProposalRequest", + "properties": { + "fingerprint": { + "description": "When provided, this fingerprint must match the fingerprint of the proposal in storage.", + "type": "string" + }, + "newComment": { + "$ref": "WorkspaceProposalHistoryComment", + "description": "If present, a new comment is added to the workspace proposal history." + }, + "reviewers": { + "description": "If present, the list of reviewers of the workspace proposal is updated.", + "items": { + "$ref": "WorkspaceProposalUser" + }, + "type": "array" + }, + "status": { + "description": "If present, the status of the workspace proposal is updated.", + "enum": [ + "approved", + "cancelled", + "completed", + "requested", + "reviewed", + "statusUnspecified" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "UserPermission": { + "description": "Represents a user's permissions to an account and its container.", + "id": "UserPermission", + "properties": { + "accountAccess": { + "$ref": "AccountAccess", + "description": "GTM Account access permissions." + }, + "accountId": { + "description": "The Account ID uniquely identifies the GTM Account.", + "type": "string" + }, + "containerAccess": { + "description": "GTM Container access permissions.", + "items": { + "$ref": "ContainerAccess" + }, + "type": "array" + }, + "emailAddress": { + "description": "User's email address.", + "type": "string" + }, + "path": { + "description": "GTM UserPermission's API relative path.", + "type": "string" + } + }, + "type": "object" + }, + "Variable": { + "description": "Represents a Google Tag Manager Variable.", + "id": "Variable", + "properties": { + "accountId": { + "description": "GTM Account ID.", + "type": "string" + }, + "containerId": { + "description": "GTM Container ID.", + "type": "string" + }, + "disablingTriggerId": { + "description": "For mobile containers only: A list of trigger IDs for disabling conditional variables; the variable is enabled if one of the enabling trigger is true while all the disabling trigger are false. Treated as an unordered set.", + "items": { + "type": "string" + }, + "type": "array" + }, + "enablingTriggerId": { + "description": "For mobile containers only: A list of trigger IDs for enabling conditional variables; the variable is enabled if one of the enabling triggers is true while all the disabling triggers are false. Treated as an unordered set.", + "items": { + "type": "string" + }, + "type": "array" + }, + "fingerprint": { + "description": "The fingerprint of the GTM Variable as computed at storage time. This value is recomputed whenever the variable is modified.", + "type": "string" + }, + "name": { + "annotations": { + "required": [ + "tagmanager.accounts.containers.workspaces.variables.create", + "tagmanager.accounts.containers.workspaces.variables.update" + ] + }, + "description": "Variable display name.", + "type": "string" + }, + "notes": { + "description": "User notes on how to apply this variable in the container.", + "type": "string" + }, + "parameter": { + "description": "The variable's parameters.", + "items": { + "$ref": "Parameter" + }, + "type": "array" + }, + "parentFolderId": { + "description": "Parent folder id.", + "type": "string" + }, + "path": { + "description": "GTM Variable's API relative path.", + "type": "string" + }, + "scheduleEndMs": { + "description": "The end timestamp in milliseconds to schedule a variable.", + "format": "int64", + "type": "string" + }, + "scheduleStartMs": { + "description": "The start timestamp in milliseconds to schedule a variable.", + "format": "int64", + "type": "string" + }, + "tagManagerUrl": { + "description": "Auto generated link to the tag manager UI", + "type": "string" + }, + "type": { + "annotations": { + "required": [ + "tagmanager.accounts.containers.workspaces.variables.create", + "tagmanager.accounts.containers.workspaces.variables.update" + ] + }, + "description": "GTM Variable Type.", + "type": "string" + }, + "variableId": { + "description": "The Variable ID uniquely identifies the GTM Variable.", + "type": "string" + }, + "workspaceId": { + "description": "GTM Workspace ID.", + "type": "string" + } + }, + "type": "object" + }, + "Workspace": { + "description": "Represents a Google Tag Manager Container Workspace.", + "id": "Workspace", + "properties": { + "accountId": { + "description": "GTM Account ID.", + "type": "string" + }, + "containerId": { + "description": "GTM Container ID.", + "type": "string" + }, + "description": { + "description": "Workspace description.", + "type": "string" + }, + "fingerprint": { + "description": "The fingerprint of the GTM Workspace as computed at storage time. This value is recomputed whenever the workspace is modified.", + "type": "string" + }, + "name": { + "annotations": { + "required": [ + "tagmanager.accounts.containers.workspaces.create", + "tagmanager.accounts.containers.workspaces.update" + ] + }, + "description": "Workspace display name.", + "type": "string" + }, + "path": { + "description": "GTM Workspace's API relative path.", + "type": "string" + }, + "tagManagerUrl": { + "description": "Auto generated link to the tag manager UI", + "type": "string" + }, + "workspaceId": { + "description": "The Workspace ID uniquely identifies the GTM Workspace.", + "type": "string" + } + }, + "type": "object" + }, + "WorkspaceProposal": { + "description": "A workspace proposal represents an ongoing review of workspace changes in an effort to gain approval for container version creation.", + "id": "WorkspaceProposal", + "properties": { + "authors": { + "description": "List of authors for the workspace proposal.", + "items": { + "$ref": "WorkspaceProposalUser" + }, + "type": "array" + }, + "fingerprint": { + "description": "The fingerprint of the GTM workspace proposal as computed at storage time. This value is recomputed whenever the proposal is modified.", + "type": "string" + }, + "history": { + "description": "Records the history of comments and status changes.", + "items": { + "$ref": "WorkspaceProposalHistory" + }, + "type": "array" + }, + "path": { + "description": "GTM workspace proposal's relative path.", + "type": "string" + }, + "reviewers": { + "description": "Lists of reviewers for the workspace proposal.", + "items": { + "$ref": "WorkspaceProposalUser" + }, + "type": "array" + }, + "status": { + "description": "The status of the workspace proposal as it goes through review.", + "enum": [ + "approved", + "cancelled", + "completed", + "requested", + "reviewed", + "statusUnspecified" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "WorkspaceProposalHistory": { + "description": "A history event that represents a comment or status change in the proposal.", + "id": "WorkspaceProposalHistory", + "properties": { + "comment": { + "$ref": "WorkspaceProposalHistoryComment", + "description": "A user or reviewer comment." + }, + "createdBy": { + "$ref": "WorkspaceProposalUser", + "description": "The party responsible for the change in history." + }, + "createdTimestamp": { + "$ref": "Timestamp", + "description": "When this history event was added to the workspace proposal." + }, + "statusChange": { + "$ref": "WorkspaceProposalHistoryStatusChange", + "description": "A change in the proposal's status." + }, + "type": { + "description": "The history type distinguishing between comments and status changes.", + "enum": [ + "comment", + "statusChange", + "unspecified" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "WorkspaceProposalHistoryComment": { + "description": "A comment from the reviewer or author.", + "id": "WorkspaceProposalHistoryComment", + "properties": { + "content": { + "description": "The contents of the reviewer or author comment.", + "type": "string" + } + }, + "type": "object" + }, + "WorkspaceProposalHistoryStatusChange": { + "description": "A change in the proposal's status.", + "id": "WorkspaceProposalHistoryStatusChange", + "properties": { + "newStatus": { + "description": "The new proposal status after that status change.", + "enum": [ + "approved", + "cancelled", + "completed", + "requested", + "reviewed", + "statusUnspecified" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "oldStatus": { + "description": "The old proposal status before the status change.", + "enum": [ + "approved", + "cancelled", + "completed", + "requested", + "reviewed", + "statusUnspecified" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "WorkspaceProposalUser": { + "description": "Represents an external user or internal Google Tag Manager system.", + "id": "WorkspaceProposalUser", + "properties": { + "gaiaId": { + "description": "Gaia id associated with a user, absent for the Google Tag Manager system.", + "format": "int64", + "type": "string" + }, + "type": { + "description": "User type distinguishes between a user and the Google Tag Manager system.", + "enum": [ + "gaiaId", + "system" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "Zone": { + "description": "Represents a Google Tag Manager Zone's contents.", + "id": "Zone", + "properties": { + "accountId": { + "description": "GTM Account ID.", + "type": "string" + }, + "boundary": { + "$ref": "ZoneBoundary", + "description": "This Zone's boundary." + }, + "childContainer": { + "description": "Containers that are children of this Zone.", + "items": { + "$ref": "ZoneChildContainer" + }, + "type": "array" + }, + "containerId": { + "description": "GTM Container ID.", + "type": "string" + }, + "fingerprint": { + "description": "The fingerprint of the GTM Zone as computed at storage time. This value is recomputed whenever the zone is modified.", + "type": "string" + }, + "name": { + "description": "Zone display name.", + "type": "string" + }, + "notes": { + "description": "User notes on how to apply this zone in the container.", + "type": "string" + }, + "path": { + "description": "GTM Zone's API relative path.", + "type": "string" + }, + "tagManagerUrl": { + "description": "Auto generated link to the tag manager UI", + "type": "string" + }, + "typeRestriction": { + "$ref": "ZoneTypeRestriction", + "description": "This Zone's type restrictions." + }, + "workspaceId": { + "description": "GTM Workspace ID.", + "type": "string" + }, + "zoneId": { + "description": "The Zone ID uniquely identifies the GTM Zone.", + "type": "string" + } + }, + "type": "object" + }, + "ZoneBoundary": { + "description": "Represents a Zone's boundaries.", + "id": "ZoneBoundary", + "properties": { + "condition": { + "description": "The conditions that, when conjoined, make up the boundary.", + "items": { + "$ref": "Condition" + }, + "type": "array" + }, + "customEvaluationTriggerId": { + "description": "Custom evaluation trigger IDs. A zone will evaluate its boundary conditions when any of the listed triggers are true.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "ZoneChildContainer": { + "description": "Represents a child container of a Zone.", + "id": "ZoneChildContainer", + "properties": { + "nickname": { + "description": "The zone's nickname for the child container.", + "type": "string" + }, + "publicId": { + "description": "The child container's public id.", + "type": "string" + } + }, + "type": "object" + }, + "ZoneTypeRestriction": { + "description": "Represents a Zone's type restrictions.", + "id": "ZoneTypeRestriction", + "properties": { + "enable": { + "description": "True if type restrictions have been enabled for this Zone.", + "type": "boolean" + }, + "whitelistedTypeId": { + "description": "List of type public ids that have been whitelisted for use in this Zone.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" } - } - } - } -} + }, + "servicePath": "tagmanager/v2/", + "title": "Tag Manager API", + "version": "v2" +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/taskqueue/v1beta1/taskqueue-api.json b/vendor/google.golang.org/api/taskqueue/v1beta1/taskqueue-api.json index ec9b90100..31e4c3cd5 100644 --- a/vendor/google.golang.org/api/taskqueue/v1beta1/taskqueue-api.json +++ b/vendor/google.golang.org/api/taskqueue/v1beta1/taskqueue-api.json @@ -1,422 +1,422 @@ { - "kind": "discovery#restDescription", - "etag": "\"YWOzh2SDasdU84ArJnpYek-OMdg/UNHEtVyVE-POJmRW0SrDcBQE6KY\"", - "discoveryVersion": "v1", - "id": "taskqueue:v1beta1", - "name": "taskqueue", - "version": "v1beta1", - "revision": "20160428", - "title": "TaskQueue API", - "description": "Accesses a Google App Engine Pull Task Queue over REST.", - "ownerDomain": "google.com", - "ownerName": "Google", - "icons": { - "x16": "https://www.google.com/images/icons/product/app_engine-16.png", - "x32": "https://www.google.com/images/icons/product/app_engine-32.png" - }, - "documentationLink": "https://developers.google.com/appengine/docs/python/taskqueue/rest", - "protocol": "rest", - "baseUrl": "https://www.googleapis.com/taskqueue/v1beta1/projects/", - "basePath": "/taskqueue/v1beta1/projects/", - "rootUrl": "https://www.googleapis.com/", - "servicePath": "taskqueue/v1beta1/projects/", - "batchPath": "batch/taskqueue/v1beta1", - "parameters": { - "alt": { - "type": "string", - "description": "Data format for the response.", - "default": "json", - "enum": [ - "json" - ], - "enumDescriptions": [ - "Responses with Content-Type of application/json" - ], - "location": "query" - }, - "fields": { - "type": "string", - "description": "Selector specifying which fields to include in a partial response.", - "location": "query" - }, - "key": { - "type": "string", - "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" - }, - "oauth_token": { - "type": "string", - "description": "OAuth 2.0 token for the current user.", - "location": "query" - }, - "prettyPrint": { - "type": "boolean", - "description": "Returns response with indentations and line breaks.", - "default": "true", - "location": "query" - }, - "quotaUser": { - "type": "string", - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", - "location": "query" - }, - "userIp": { - "type": "string", - "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", - "location": "query" - } - }, - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/taskqueue": { - "description": "Manage your Tasks and Taskqueues" - }, - "https://www.googleapis.com/auth/taskqueue.consumer": { - "description": "Consume Tasks from your Taskqueues" - } - } - } - }, - "schemas": { - "Task": { - "id": "Task", - "type": "object", - "properties": { - "enqueueTimestamp": { - "type": "string", - "description": "Time (in seconds since the epoch) at which the task was enqueued.", - "format": "int64" - }, - "id": { - "type": "string", - "description": "Name of the task." - }, - "kind": { - "type": "string", - "description": "The kind of object returned, in this case set to task.", - "default": "taskqueues#task" - }, - "leaseTimestamp": { - "type": "string", - "description": "Time (in seconds since the epoch) at which the task lease will expire. This value is 0 if the task isnt currently leased out to a worker.", - "format": "int64" - }, - "payloadBase64": { - "type": "string", - "description": "A bag of bytes which is the task payload. The payload on the JSON side is always Base64 encoded." - }, - "queueName": { - "type": "string", - "description": "Name of the queue that the task is in." - } - } - }, - "TaskQueue": { - "id": "TaskQueue", - "type": "object", - "properties": { - "acl": { - "type": "object", - "description": "ACLs that are applicable to this TaskQueue object.", - "properties": { - "adminEmails": { - "type": "array", - "description": "Email addresses of users who are \"admins\" of the TaskQueue. This means they can control the queue, eg set ACLs for the queue.", - "items": { - "type": "string" - } - }, - "consumerEmails": { - "type": "array", - "description": "Email addresses of users who can \"consume\" tasks from the TaskQueue. This means they can Dequeue and Delete tasks from the queue.", - "items": { - "type": "string" - } - }, - "producerEmails": { - "type": "array", - "description": "Email addresses of users who can \"produce\" tasks into the TaskQueue. This means they can Insert tasks into the queue.", - "items": { - "type": "string" - } + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/taskqueue": { + "description": "Manage your Tasks and Taskqueues" + }, + "https://www.googleapis.com/auth/taskqueue.consumer": { + "description": "Consume Tasks from your Taskqueues" + } } - } - }, - "id": { - "type": "string", - "description": "Name of the taskqueue." - }, - "kind": { - "type": "string", - "description": "The kind of REST object returned, in this case taskqueue.", - "default": "taskqueues#taskqueue" - }, - "maxLeases": { - "type": "integer", - "description": "The number of times we should lease out tasks before giving up on them. If unset we lease them out forever until a worker deletes the task.", - "format": "int32" - }, - "stats": { - "type": "object", - "description": "Statistics for the TaskQueue object in question.", - "properties": { - "leasedLastHour": { - "type": "string", - "description": "Number of tasks leased in the last hour.", - "format": "int64" - }, - "leasedLastMinute": { - "type": "string", - "description": "Number of tasks leased in the last minute.", - "format": "int64" - }, - "oldestTask": { - "type": "string", - "description": "The timestamp (in seconds since the epoch) of the oldest unfinished task.", - "format": "int64" - }, - "totalTasks": { - "type": "integer", - "description": "Number of tasks in the queue.", - "format": "int32" - } - } } - } }, - "Tasks": { - "id": "Tasks", - "type": "object", - "properties": { - "items": { - "type": "array", - "description": "The actual list of tasks returned as a result of the lease operation.", - "items": { - "$ref": "Task" - } - }, - "kind": { - "type": "string", - "description": "The kind of object returned, a list of tasks.", - "default": "taskqueue#tasks" - } - } + "basePath": "/taskqueue/v1beta1/projects/", + "baseUrl": "https://www.googleapis.com/taskqueue/v1beta1/projects/", + "batchPath": "batch/taskqueue/v1beta1", + "description": "Accesses a Google App Engine Pull Task Queue over REST.", + "discoveryVersion": "v1", + "documentationLink": "https://developers.google.com/appengine/docs/python/taskqueue/rest", + "etag": "\"-iA1DTNe4s-I6JZXPt1t1Ypy8IU/UNHEtVyVE-POJmRW0SrDcBQE6KY\"", + "icons": { + "x16": "https://www.google.com/images/icons/product/app_engine-16.png", + "x32": "https://www.google.com/images/icons/product/app_engine-32.png" }, - "Tasks2": { - "id": "Tasks2", - "type": "object", - "properties": { - "items": { - "type": "array", - "description": "The actual list of tasks currently active in the TaskQueue.", - "items": { - "$ref": "Task" - } + "id": "taskqueue:v1beta1", + "kind": "discovery#restDescription", + "name": "taskqueue", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "alt": { + "default": "json", + "description": "Data format for the response.", + "enum": [ + "json" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json" + ], + "location": "query", + "type": "string" }, - "kind": { - "type": "string", - "description": "The kind of object returned, a list of tasks.", - "default": "taskqueues#tasks" + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "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.", + "location": "query", + "type": "string" + }, + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", + "location": "query", + "type": "string" + }, + "userIp": { + "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", + "location": "query", + "type": "string" } - } - } - }, - "resources": { - "taskqueues": { - "methods": { - "get": { - "id": "taskqueue.taskqueues.get", - "path": "{project}/taskqueues/{taskqueue}", - "httpMethod": "GET", - "description": "Get detailed information about a TaskQueue.", - "parameters": { - "getStats": { - "type": "boolean", - "description": "Whether to get stats. Optional.", - "location": "query" - }, - "project": { - "type": "string", - "description": "The project under which the queue lies.", - "required": true, - "location": "path" - }, - "taskqueue": { - "type": "string", - "description": "The id of the taskqueue to get the properties of.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "taskqueue" - ], - "response": { - "$ref": "TaskQueue" - }, - "scopes": [ - "https://www.googleapis.com/auth/taskqueue", - "https://www.googleapis.com/auth/taskqueue.consumer" - ] - } - } }, - "tasks": { - "methods": { - "delete": { - "id": "taskqueue.tasks.delete", - "path": "{project}/taskqueues/{taskqueue}/tasks/{task}", - "httpMethod": "DELETE", - "description": "Delete a task from a TaskQueue.", - "parameters": { - "project": { - "type": "string", - "description": "The project under which the queue lies.", - "required": true, - "location": "path" - }, - "task": { - "type": "string", - "description": "The id of the task to delete.", - "required": true, - "location": "path" - }, - "taskqueue": { - "type": "string", - "description": "The taskqueue to delete a task from.", - "required": true, - "location": "path" + "protocol": "rest", + "resources": { + "taskqueues": { + "methods": { + "get": { + "description": "Get detailed information about a TaskQueue.", + "httpMethod": "GET", + "id": "taskqueue.taskqueues.get", + "parameterOrder": [ + "project", + "taskqueue" + ], + "parameters": { + "getStats": { + "description": "Whether to get stats. Optional.", + "location": "query", + "type": "boolean" + }, + "project": { + "description": "The project under which the queue lies.", + "location": "path", + "required": true, + "type": "string" + }, + "taskqueue": { + "description": "The id of the taskqueue to get the properties of.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/taskqueues/{taskqueue}", + "response": { + "$ref": "TaskQueue" + }, + "scopes": [ + "https://www.googleapis.com/auth/taskqueue", + "https://www.googleapis.com/auth/taskqueue.consumer" + ] + } } - }, - "parameterOrder": [ - "project", - "taskqueue", - "task" - ], - "scopes": [ - "https://www.googleapis.com/auth/taskqueue", - "https://www.googleapis.com/auth/taskqueue.consumer" - ] }, - "get": { - "id": "taskqueue.tasks.get", - "path": "{project}/taskqueues/{taskqueue}/tasks/{task}", - "httpMethod": "GET", - "description": "Get a particular task from a TaskQueue.", - "parameters": { - "project": { - "type": "string", - "description": "The project under which the queue lies.", - "required": true, - "location": "path" - }, - "task": { - "type": "string", - "description": "The task to get properties of.", - "required": true, - "location": "path" - }, - "taskqueue": { - "type": "string", - "description": "The taskqueue in which the task belongs.", - "required": true, - "location": "path" + "tasks": { + "methods": { + "delete": { + "description": "Delete a task from a TaskQueue.", + "httpMethod": "DELETE", + "id": "taskqueue.tasks.delete", + "parameterOrder": [ + "project", + "taskqueue", + "task" + ], + "parameters": { + "project": { + "description": "The project under which the queue lies.", + "location": "path", + "required": true, + "type": "string" + }, + "task": { + "description": "The id of the task to delete.", + "location": "path", + "required": true, + "type": "string" + }, + "taskqueue": { + "description": "The taskqueue to delete a task from.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/taskqueues/{taskqueue}/tasks/{task}", + "scopes": [ + "https://www.googleapis.com/auth/taskqueue", + "https://www.googleapis.com/auth/taskqueue.consumer" + ] + }, + "get": { + "description": "Get a particular task from a TaskQueue.", + "httpMethod": "GET", + "id": "taskqueue.tasks.get", + "parameterOrder": [ + "project", + "taskqueue", + "task" + ], + "parameters": { + "project": { + "description": "The project under which the queue lies.", + "location": "path", + "required": true, + "type": "string" + }, + "task": { + "description": "The task to get properties of.", + "location": "path", + "required": true, + "type": "string" + }, + "taskqueue": { + "description": "The taskqueue in which the task belongs.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/taskqueues/{taskqueue}/tasks/{task}", + "response": { + "$ref": "Task" + }, + "scopes": [ + "https://www.googleapis.com/auth/taskqueue", + "https://www.googleapis.com/auth/taskqueue.consumer" + ] + }, + "lease": { + "description": "Lease 1 or more tasks from a TaskQueue.", + "httpMethod": "POST", + "id": "taskqueue.tasks.lease", + "parameterOrder": [ + "project", + "taskqueue", + "numTasks", + "leaseSecs" + ], + "parameters": { + "leaseSecs": { + "description": "The lease in seconds.", + "format": "int32", + "location": "query", + "required": true, + "type": "integer" + }, + "numTasks": { + "description": "The number of tasks to lease.", + "format": "int32", + "location": "query", + "required": true, + "type": "integer" + }, + "project": { + "description": "The project under which the queue lies.", + "location": "path", + "required": true, + "type": "string" + }, + "taskqueue": { + "description": "The taskqueue to lease a task from.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/taskqueues/{taskqueue}/tasks/lease", + "response": { + "$ref": "Tasks" + }, + "scopes": [ + "https://www.googleapis.com/auth/taskqueue", + "https://www.googleapis.com/auth/taskqueue.consumer" + ] + }, + "list": { + "description": "List Tasks in a TaskQueue", + "httpMethod": "GET", + "id": "taskqueue.tasks.list", + "parameterOrder": [ + "project", + "taskqueue" + ], + "parameters": { + "project": { + "description": "The project under which the queue lies.", + "location": "path", + "required": true, + "type": "string" + }, + "taskqueue": { + "description": "The id of the taskqueue to list tasks from.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/taskqueues/{taskqueue}/tasks", + "response": { + "$ref": "Tasks2" + }, + "scopes": [ + "https://www.googleapis.com/auth/taskqueue", + "https://www.googleapis.com/auth/taskqueue.consumer" + ] + } } - }, - "parameterOrder": [ - "project", - "taskqueue", - "task" - ], - "response": { - "$ref": "Task" - }, - "scopes": [ - "https://www.googleapis.com/auth/taskqueue", - "https://www.googleapis.com/auth/taskqueue.consumer" - ] - }, - "lease": { - "id": "taskqueue.tasks.lease", - "path": "{project}/taskqueues/{taskqueue}/tasks/lease", - "httpMethod": "POST", - "description": "Lease 1 or more tasks from a TaskQueue.", - "parameters": { - "leaseSecs": { - "type": "integer", - "description": "The lease in seconds.", - "required": true, - "format": "int32", - "location": "query" - }, - "numTasks": { - "type": "integer", - "description": "The number of tasks to lease.", - "required": true, - "format": "int32", - "location": "query" - }, - "project": { - "type": "string", - "description": "The project under which the queue lies.", - "required": true, - "location": "path" - }, - "taskqueue": { - "type": "string", - "description": "The taskqueue to lease a task from.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "taskqueue", - "numTasks", - "leaseSecs" - ], - "response": { - "$ref": "Tasks" - }, - "scopes": [ - "https://www.googleapis.com/auth/taskqueue", - "https://www.googleapis.com/auth/taskqueue.consumer" - ] - }, - "list": { - "id": "taskqueue.tasks.list", - "path": "{project}/taskqueues/{taskqueue}/tasks", - "httpMethod": "GET", - "description": "List Tasks in a TaskQueue", - "parameters": { - "project": { - "type": "string", - "description": "The project under which the queue lies.", - "required": true, - "location": "path" - }, - "taskqueue": { - "type": "string", - "description": "The id of the taskqueue to list tasks from.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "taskqueue" - ], - "response": { - "$ref": "Tasks2" - }, - "scopes": [ - "https://www.googleapis.com/auth/taskqueue", - "https://www.googleapis.com/auth/taskqueue.consumer" - ] } - } - } - } -} + }, + "revision": "20160428", + "rootUrl": "https://www.googleapis.com/", + "schemas": { + "Task": { + "id": "Task", + "properties": { + "enqueueTimestamp": { + "description": "Time (in seconds since the epoch) at which the task was enqueued.", + "format": "int64", + "type": "string" + }, + "id": { + "description": "Name of the task.", + "type": "string" + }, + "kind": { + "default": "taskqueues#task", + "description": "The kind of object returned, in this case set to task.", + "type": "string" + }, + "leaseTimestamp": { + "description": "Time (in seconds since the epoch) at which the task lease will expire. This value is 0 if the task isnt currently leased out to a worker.", + "format": "int64", + "type": "string" + }, + "payloadBase64": { + "description": "A bag of bytes which is the task payload. The payload on the JSON side is always Base64 encoded.", + "type": "string" + }, + "queueName": { + "description": "Name of the queue that the task is in.", + "type": "string" + } + }, + "type": "object" + }, + "TaskQueue": { + "id": "TaskQueue", + "properties": { + "acl": { + "description": "ACLs that are applicable to this TaskQueue object.", + "properties": { + "adminEmails": { + "description": "Email addresses of users who are \"admins\" of the TaskQueue. This means they can control the queue, eg set ACLs for the queue.", + "items": { + "type": "string" + }, + "type": "array" + }, + "consumerEmails": { + "description": "Email addresses of users who can \"consume\" tasks from the TaskQueue. This means they can Dequeue and Delete tasks from the queue.", + "items": { + "type": "string" + }, + "type": "array" + }, + "producerEmails": { + "description": "Email addresses of users who can \"produce\" tasks into the TaskQueue. This means they can Insert tasks into the queue.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "id": { + "description": "Name of the taskqueue.", + "type": "string" + }, + "kind": { + "default": "taskqueues#taskqueue", + "description": "The kind of REST object returned, in this case taskqueue.", + "type": "string" + }, + "maxLeases": { + "description": "The number of times we should lease out tasks before giving up on them. If unset we lease them out forever until a worker deletes the task.", + "format": "int32", + "type": "integer" + }, + "stats": { + "description": "Statistics for the TaskQueue object in question.", + "properties": { + "leasedLastHour": { + "description": "Number of tasks leased in the last hour.", + "format": "int64", + "type": "string" + }, + "leasedLastMinute": { + "description": "Number of tasks leased in the last minute.", + "format": "int64", + "type": "string" + }, + "oldestTask": { + "description": "The timestamp (in seconds since the epoch) of the oldest unfinished task.", + "format": "int64", + "type": "string" + }, + "totalTasks": { + "description": "Number of tasks in the queue.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "Tasks": { + "id": "Tasks", + "properties": { + "items": { + "description": "The actual list of tasks returned as a result of the lease operation.", + "items": { + "$ref": "Task" + }, + "type": "array" + }, + "kind": { + "default": "taskqueue#tasks", + "description": "The kind of object returned, a list of tasks.", + "type": "string" + } + }, + "type": "object" + }, + "Tasks2": { + "id": "Tasks2", + "properties": { + "items": { + "description": "The actual list of tasks currently active in the TaskQueue.", + "items": { + "$ref": "Task" + }, + "type": "array" + }, + "kind": { + "default": "taskqueues#tasks", + "description": "The kind of object returned, a list of tasks.", + "type": "string" + } + }, + "type": "object" + } + }, + "servicePath": "taskqueue/v1beta1/projects/", + "title": "TaskQueue API", + "version": "v1beta1" +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/taskqueue/v1beta2/taskqueue-api.json b/vendor/google.golang.org/api/taskqueue/v1beta2/taskqueue-api.json index dec04c5f7..815e18953 100644 --- a/vendor/google.golang.org/api/taskqueue/v1beta2/taskqueue-api.json +++ b/vendor/google.golang.org/api/taskqueue/v1beta2/taskqueue-api.json @@ -1,569 +1,569 @@ { - "kind": "discovery#restDescription", - "etag": "\"YWOzh2SDasdU84ArJnpYek-OMdg/rBU1z2tHcOAAx8ktsJNBvusBoYw\"", - "discoveryVersion": "v1", - "id": "taskqueue:v1beta2", - "name": "taskqueue", - "version": "v1beta2", - "revision": "20160428", - "title": "TaskQueue API", - "description": "Accesses a Google App Engine Pull Task Queue over REST.", - "ownerDomain": "google.com", - "ownerName": "Google", - "icons": { - "x16": "https://www.google.com/images/icons/product/app_engine-16.png", - "x32": "https://www.google.com/images/icons/product/app_engine-32.png" - }, - "documentationLink": "https://developers.google.com/appengine/docs/python/taskqueue/rest", - "protocol": "rest", - "baseUrl": "https://www.googleapis.com/taskqueue/v1beta2/projects/", - "basePath": "/taskqueue/v1beta2/projects/", - "rootUrl": "https://www.googleapis.com/", - "servicePath": "taskqueue/v1beta2/projects/", - "batchPath": "batch/taskqueue/v1beta2", - "parameters": { - "alt": { - "type": "string", - "description": "Data format for the response.", - "default": "json", - "enum": [ - "json" - ], - "enumDescriptions": [ - "Responses with Content-Type of application/json" - ], - "location": "query" - }, - "fields": { - "type": "string", - "description": "Selector specifying which fields to include in a partial response.", - "location": "query" - }, - "key": { - "type": "string", - "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" - }, - "oauth_token": { - "type": "string", - "description": "OAuth 2.0 token for the current user.", - "location": "query" - }, - "prettyPrint": { - "type": "boolean", - "description": "Returns response with indentations and line breaks.", - "default": "true", - "location": "query" - }, - "quotaUser": { - "type": "string", - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", - "location": "query" - }, - "userIp": { - "type": "string", - "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", - "location": "query" - } - }, - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/taskqueue": { - "description": "Manage your Tasks and Taskqueues" - }, - "https://www.googleapis.com/auth/taskqueue.consumer": { - "description": "Consume Tasks from your Taskqueues" + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/taskqueue": { + "description": "Manage your Tasks and Taskqueues" + }, + "https://www.googleapis.com/auth/taskqueue.consumer": { + "description": "Consume Tasks from your Taskqueues" + } + } } - } - } - }, - "schemas": { - "Task": { - "id": "Task", - "type": "object", - "properties": { - "enqueueTimestamp": { - "type": "string", - "description": "Time (in seconds since the epoch) at which the task was enqueued.", - "format": "int64" - }, - "id": { - "type": "string", - "description": "Name of the task." - }, - "kind": { - "type": "string", - "description": "The kind of object returned, in this case set to task.", - "default": "taskqueues#task" - }, - "leaseTimestamp": { - "type": "string", - "description": "Time (in seconds since the epoch) at which the task lease will expire. This value is 0 if the task isnt currently leased out to a worker.", - "format": "int64" - }, - "payloadBase64": { - "type": "string", - "description": "A bag of bytes which is the task payload. The payload on the JSON side is always Base64 encoded." - }, - "queueName": { - "type": "string", - "description": "Name of the queue that the task is in." - }, - "retry_count": { - "type": "integer", - "description": "The number of leases applied to this task.", - "format": "int32" - }, - "tag": { - "type": "string", - "description": "Tag for the task, could be used later to lease tasks grouped by a specific tag." - } - } }, - "TaskQueue": { - "id": "TaskQueue", - "type": "object", - "properties": { - "acl": { - "type": "object", - "description": "ACLs that are applicable to this TaskQueue object.", - "properties": { - "adminEmails": { - "type": "array", - "description": "Email addresses of users who are \"admins\" of the TaskQueue. This means they can control the queue, eg set ACLs for the queue.", - "items": { - "type": "string" - } - }, - "consumerEmails": { - "type": "array", - "description": "Email addresses of users who can \"consume\" tasks from the TaskQueue. This means they can Dequeue and Delete tasks from the queue.", - "items": { - "type": "string" - } - }, - "producerEmails": { - "type": "array", - "description": "Email addresses of users who can \"produce\" tasks into the TaskQueue. This means they can Insert tasks into the queue.", - "items": { - "type": "string" - } - } - } - }, - "id": { - "type": "string", - "description": "Name of the taskqueue." - }, - "kind": { - "type": "string", - "description": "The kind of REST object returned, in this case taskqueue.", - "default": "taskqueues#taskqueue" - }, - "maxLeases": { - "type": "integer", - "description": "The number of times we should lease out tasks before giving up on them. If unset we lease them out forever until a worker deletes the task.", - "format": "int32" - }, - "stats": { - "type": "object", - "description": "Statistics for the TaskQueue object in question.", - "properties": { - "leasedLastHour": { - "type": "string", - "description": "Number of tasks leased in the last hour.", - "format": "int64" - }, - "leasedLastMinute": { - "type": "string", - "description": "Number of tasks leased in the last minute.", - "format": "int64" - }, - "oldestTask": { - "type": "string", - "description": "The timestamp (in seconds since the epoch) of the oldest unfinished task.", - "format": "int64" - }, - "totalTasks": { - "type": "integer", - "description": "Number of tasks in the queue.", - "format": "int32" - } - } - } - } + "basePath": "/taskqueue/v1beta2/projects/", + "baseUrl": "https://www.googleapis.com/taskqueue/v1beta2/projects/", + "batchPath": "batch/taskqueue/v1beta2", + "description": "Accesses a Google App Engine Pull Task Queue over REST.", + "discoveryVersion": "v1", + "documentationLink": "https://developers.google.com/appengine/docs/python/taskqueue/rest", + "etag": "\"-iA1DTNe4s-I6JZXPt1t1Ypy8IU/rBU1z2tHcOAAx8ktsJNBvusBoYw\"", + "icons": { + "x16": "https://www.google.com/images/icons/product/app_engine-16.png", + "x32": "https://www.google.com/images/icons/product/app_engine-32.png" }, - "Tasks": { - "id": "Tasks", - "type": "object", - "properties": { - "items": { - "type": "array", - "description": "The actual list of tasks returned as a result of the lease operation.", - "items": { - "$ref": "Task" - } + "id": "taskqueue:v1beta2", + "kind": "discovery#restDescription", + "name": "taskqueue", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "alt": { + "default": "json", + "description": "Data format for the response.", + "enum": [ + "json" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json" + ], + "location": "query", + "type": "string" }, - "kind": { - "type": "string", - "description": "The kind of object returned, a list of tasks.", - "default": "taskqueue#tasks" + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "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.", + "location": "query", + "type": "string" + }, + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", + "location": "query", + "type": "string" + }, + "userIp": { + "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", + "location": "query", + "type": "string" } - } }, - "Tasks2": { - "id": "Tasks2", - "type": "object", - "properties": { - "items": { - "type": "array", - "description": "The actual list of tasks currently active in the TaskQueue.", - "items": { - "$ref": "Task" - } - }, - "kind": { - "type": "string", - "description": "The kind of object returned, a list of tasks.", - "default": "taskqueues#tasks" - } - } - } - }, - "resources": { - "taskqueues": { - "methods": { - "get": { - "id": "taskqueue.taskqueues.get", - "path": "{project}/taskqueues/{taskqueue}", - "httpMethod": "GET", - "description": "Get detailed information about a TaskQueue.", - "parameters": { - "getStats": { - "type": "boolean", - "description": "Whether to get stats. Optional.", - "location": "query" - }, - "project": { - "type": "string", - "description": "The project under which the queue lies.", - "required": true, - "location": "path" - }, - "taskqueue": { - "type": "string", - "description": "The id of the taskqueue to get the properties of.", - "required": true, - "location": "path" + "protocol": "rest", + "resources": { + "taskqueues": { + "methods": { + "get": { + "description": "Get detailed information about a TaskQueue.", + "httpMethod": "GET", + "id": "taskqueue.taskqueues.get", + "parameterOrder": [ + "project", + "taskqueue" + ], + "parameters": { + "getStats": { + "description": "Whether to get stats. Optional.", + "location": "query", + "type": "boolean" + }, + "project": { + "description": "The project under which the queue lies.", + "location": "path", + "required": true, + "type": "string" + }, + "taskqueue": { + "description": "The id of the taskqueue to get the properties of.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/taskqueues/{taskqueue}", + "response": { + "$ref": "TaskQueue" + }, + "scopes": [ + "https://www.googleapis.com/auth/taskqueue", + "https://www.googleapis.com/auth/taskqueue.consumer" + ] + } + } + }, + "tasks": { + "methods": { + "delete": { + "description": "Delete a task from a TaskQueue.", + "httpMethod": "DELETE", + "id": "taskqueue.tasks.delete", + "parameterOrder": [ + "project", + "taskqueue", + "task" + ], + "parameters": { + "project": { + "description": "The project under which the queue lies.", + "location": "path", + "required": true, + "type": "string" + }, + "task": { + "description": "The id of the task to delete.", + "location": "path", + "required": true, + "type": "string" + }, + "taskqueue": { + "description": "The taskqueue to delete a task from.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/taskqueues/{taskqueue}/tasks/{task}", + "scopes": [ + "https://www.googleapis.com/auth/taskqueue", + "https://www.googleapis.com/auth/taskqueue.consumer" + ] + }, + "get": { + "description": "Get a particular task from a TaskQueue.", + "httpMethod": "GET", + "id": "taskqueue.tasks.get", + "parameterOrder": [ + "project", + "taskqueue", + "task" + ], + "parameters": { + "project": { + "description": "The project under which the queue lies.", + "location": "path", + "required": true, + "type": "string" + }, + "task": { + "description": "The task to get properties of.", + "location": "path", + "required": true, + "type": "string" + }, + "taskqueue": { + "description": "The taskqueue in which the task belongs.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/taskqueues/{taskqueue}/tasks/{task}", + "response": { + "$ref": "Task" + }, + "scopes": [ + "https://www.googleapis.com/auth/taskqueue", + "https://www.googleapis.com/auth/taskqueue.consumer" + ] + }, + "insert": { + "description": "Insert a new task in a TaskQueue", + "httpMethod": "POST", + "id": "taskqueue.tasks.insert", + "parameterOrder": [ + "project", + "taskqueue" + ], + "parameters": { + "project": { + "description": "The project under which the queue lies", + "location": "path", + "required": true, + "type": "string" + }, + "taskqueue": { + "description": "The taskqueue to insert the task into", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/taskqueues/{taskqueue}/tasks", + "request": { + "$ref": "Task" + }, + "response": { + "$ref": "Task" + }, + "scopes": [ + "https://www.googleapis.com/auth/taskqueue", + "https://www.googleapis.com/auth/taskqueue.consumer" + ] + }, + "lease": { + "description": "Lease 1 or more tasks from a TaskQueue.", + "httpMethod": "POST", + "id": "taskqueue.tasks.lease", + "parameterOrder": [ + "project", + "taskqueue", + "numTasks", + "leaseSecs" + ], + "parameters": { + "groupByTag": { + "description": "When true, all returned tasks will have the same tag", + "location": "query", + "type": "boolean" + }, + "leaseSecs": { + "description": "The lease in seconds.", + "format": "int32", + "location": "query", + "required": true, + "type": "integer" + }, + "numTasks": { + "description": "The number of tasks to lease.", + "format": "int32", + "location": "query", + "required": true, + "type": "integer" + }, + "project": { + "description": "The project under which the queue lies.", + "location": "path", + "required": true, + "type": "string" + }, + "tag": { + "description": "The tag allowed for tasks in the response. Must only be specified if group_by_tag is true. If group_by_tag is true and tag is not specified the tag will be that of the oldest task by eta, i.e. the first available tag", + "location": "query", + "type": "string" + }, + "taskqueue": { + "description": "The taskqueue to lease a task from.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/taskqueues/{taskqueue}/tasks/lease", + "response": { + "$ref": "Tasks" + }, + "scopes": [ + "https://www.googleapis.com/auth/taskqueue", + "https://www.googleapis.com/auth/taskqueue.consumer" + ] + }, + "list": { + "description": "List Tasks in a TaskQueue", + "httpMethod": "GET", + "id": "taskqueue.tasks.list", + "parameterOrder": [ + "project", + "taskqueue" + ], + "parameters": { + "project": { + "description": "The project under which the queue lies.", + "location": "path", + "required": true, + "type": "string" + }, + "taskqueue": { + "description": "The id of the taskqueue to list tasks from.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/taskqueues/{taskqueue}/tasks", + "response": { + "$ref": "Tasks2" + }, + "scopes": [ + "https://www.googleapis.com/auth/taskqueue", + "https://www.googleapis.com/auth/taskqueue.consumer" + ] + }, + "patch": { + "description": "Update tasks that are leased out of a TaskQueue. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "taskqueue.tasks.patch", + "parameterOrder": [ + "project", + "taskqueue", + "task", + "newLeaseSeconds" + ], + "parameters": { + "newLeaseSeconds": { + "description": "The new lease in seconds.", + "format": "int32", + "location": "query", + "required": true, + "type": "integer" + }, + "project": { + "description": "The project under which the queue lies.", + "location": "path", + "required": true, + "type": "string" + }, + "task": { + "location": "path", + "required": true, + "type": "string" + }, + "taskqueue": { + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/taskqueues/{taskqueue}/tasks/{task}", + "request": { + "$ref": "Task" + }, + "response": { + "$ref": "Task" + }, + "scopes": [ + "https://www.googleapis.com/auth/taskqueue", + "https://www.googleapis.com/auth/taskqueue.consumer" + ] + }, + "update": { + "description": "Update tasks that are leased out of a TaskQueue.", + "httpMethod": "POST", + "id": "taskqueue.tasks.update", + "parameterOrder": [ + "project", + "taskqueue", + "task", + "newLeaseSeconds" + ], + "parameters": { + "newLeaseSeconds": { + "description": "The new lease in seconds.", + "format": "int32", + "location": "query", + "required": true, + "type": "integer" + }, + "project": { + "description": "The project under which the queue lies.", + "location": "path", + "required": true, + "type": "string" + }, + "task": { + "location": "path", + "required": true, + "type": "string" + }, + "taskqueue": { + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{project}/taskqueues/{taskqueue}/tasks/{task}", + "request": { + "$ref": "Task" + }, + "response": { + "$ref": "Task" + }, + "scopes": [ + "https://www.googleapis.com/auth/taskqueue", + "https://www.googleapis.com/auth/taskqueue.consumer" + ] + } } - }, - "parameterOrder": [ - "project", - "taskqueue" - ], - "response": { - "$ref": "TaskQueue" - }, - "scopes": [ - "https://www.googleapis.com/auth/taskqueue", - "https://www.googleapis.com/auth/taskqueue.consumer" - ] } - } }, - "tasks": { - "methods": { - "delete": { - "id": "taskqueue.tasks.delete", - "path": "{project}/taskqueues/{taskqueue}/tasks/{task}", - "httpMethod": "DELETE", - "description": "Delete a task from a TaskQueue.", - "parameters": { - "project": { - "type": "string", - "description": "The project under which the queue lies.", - "required": true, - "location": "path" + "revision": "20160428", + "rootUrl": "https://www.googleapis.com/", + "schemas": { + "Task": { + "id": "Task", + "properties": { + "enqueueTimestamp": { + "description": "Time (in seconds since the epoch) at which the task was enqueued.", + "format": "int64", + "type": "string" + }, + "id": { + "description": "Name of the task.", + "type": "string" + }, + "kind": { + "default": "taskqueues#task", + "description": "The kind of object returned, in this case set to task.", + "type": "string" + }, + "leaseTimestamp": { + "description": "Time (in seconds since the epoch) at which the task lease will expire. This value is 0 if the task isnt currently leased out to a worker.", + "format": "int64", + "type": "string" + }, + "payloadBase64": { + "description": "A bag of bytes which is the task payload. The payload on the JSON side is always Base64 encoded.", + "type": "string" + }, + "queueName": { + "description": "Name of the queue that the task is in.", + "type": "string" + }, + "retry_count": { + "description": "The number of leases applied to this task.", + "format": "int32", + "type": "integer" + }, + "tag": { + "description": "Tag for the task, could be used later to lease tasks grouped by a specific tag.", + "type": "string" + } }, - "task": { - "type": "string", - "description": "The id of the task to delete.", - "required": true, - "location": "path" - }, - "taskqueue": { - "type": "string", - "description": "The taskqueue to delete a task from.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "taskqueue", - "task" - ], - "scopes": [ - "https://www.googleapis.com/auth/taskqueue", - "https://www.googleapis.com/auth/taskqueue.consumer" - ] + "type": "object" }, - "get": { - "id": "taskqueue.tasks.get", - "path": "{project}/taskqueues/{taskqueue}/tasks/{task}", - "httpMethod": "GET", - "description": "Get a particular task from a TaskQueue.", - "parameters": { - "project": { - "type": "string", - "description": "The project under which the queue lies.", - "required": true, - "location": "path" + "TaskQueue": { + "id": "TaskQueue", + "properties": { + "acl": { + "description": "ACLs that are applicable to this TaskQueue object.", + "properties": { + "adminEmails": { + "description": "Email addresses of users who are \"admins\" of the TaskQueue. This means they can control the queue, eg set ACLs for the queue.", + "items": { + "type": "string" + }, + "type": "array" + }, + "consumerEmails": { + "description": "Email addresses of users who can \"consume\" tasks from the TaskQueue. This means they can Dequeue and Delete tasks from the queue.", + "items": { + "type": "string" + }, + "type": "array" + }, + "producerEmails": { + "description": "Email addresses of users who can \"produce\" tasks into the TaskQueue. This means they can Insert tasks into the queue.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "id": { + "description": "Name of the taskqueue.", + "type": "string" + }, + "kind": { + "default": "taskqueues#taskqueue", + "description": "The kind of REST object returned, in this case taskqueue.", + "type": "string" + }, + "maxLeases": { + "description": "The number of times we should lease out tasks before giving up on them. If unset we lease them out forever until a worker deletes the task.", + "format": "int32", + "type": "integer" + }, + "stats": { + "description": "Statistics for the TaskQueue object in question.", + "properties": { + "leasedLastHour": { + "description": "Number of tasks leased in the last hour.", + "format": "int64", + "type": "string" + }, + "leasedLastMinute": { + "description": "Number of tasks leased in the last minute.", + "format": "int64", + "type": "string" + }, + "oldestTask": { + "description": "The timestamp (in seconds since the epoch) of the oldest unfinished task.", + "format": "int64", + "type": "string" + }, + "totalTasks": { + "description": "Number of tasks in the queue.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + } }, - "task": { - "type": "string", - "description": "The task to get properties of.", - "required": true, - "location": "path" - }, - "taskqueue": { - "type": "string", - "description": "The taskqueue in which the task belongs.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "taskqueue", - "task" - ], - "response": { - "$ref": "Task" - }, - "scopes": [ - "https://www.googleapis.com/auth/taskqueue", - "https://www.googleapis.com/auth/taskqueue.consumer" - ] + "type": "object" }, - "insert": { - "id": "taskqueue.tasks.insert", - "path": "{project}/taskqueues/{taskqueue}/tasks", - "httpMethod": "POST", - "description": "Insert a new task in a TaskQueue", - "parameters": { - "project": { - "type": "string", - "description": "The project under which the queue lies", - "required": true, - "location": "path" + "Tasks": { + "id": "Tasks", + "properties": { + "items": { + "description": "The actual list of tasks returned as a result of the lease operation.", + "items": { + "$ref": "Task" + }, + "type": "array" + }, + "kind": { + "default": "taskqueue#tasks", + "description": "The kind of object returned, a list of tasks.", + "type": "string" + } }, - "taskqueue": { - "type": "string", - "description": "The taskqueue to insert the task into", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "taskqueue" - ], - "request": { - "$ref": "Task" - }, - "response": { - "$ref": "Task" - }, - "scopes": [ - "https://www.googleapis.com/auth/taskqueue", - "https://www.googleapis.com/auth/taskqueue.consumer" - ] + "type": "object" }, - "lease": { - "id": "taskqueue.tasks.lease", - "path": "{project}/taskqueues/{taskqueue}/tasks/lease", - "httpMethod": "POST", - "description": "Lease 1 or more tasks from a TaskQueue.", - "parameters": { - "groupByTag": { - "type": "boolean", - "description": "When true, all returned tasks will have the same tag", - "location": "query" + "Tasks2": { + "id": "Tasks2", + "properties": { + "items": { + "description": "The actual list of tasks currently active in the TaskQueue.", + "items": { + "$ref": "Task" + }, + "type": "array" + }, + "kind": { + "default": "taskqueues#tasks", + "description": "The kind of object returned, a list of tasks.", + "type": "string" + } }, - "leaseSecs": { - "type": "integer", - "description": "The lease in seconds.", - "required": true, - "format": "int32", - "location": "query" - }, - "numTasks": { - "type": "integer", - "description": "The number of tasks to lease.", - "required": true, - "format": "int32", - "location": "query" - }, - "project": { - "type": "string", - "description": "The project under which the queue lies.", - "required": true, - "location": "path" - }, - "tag": { - "type": "string", - "description": "The tag allowed for tasks in the response. Must only be specified if group_by_tag is true. If group_by_tag is true and tag is not specified the tag will be that of the oldest task by eta, i.e. the first available tag", - "location": "query" - }, - "taskqueue": { - "type": "string", - "description": "The taskqueue to lease a task from.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "taskqueue", - "numTasks", - "leaseSecs" - ], - "response": { - "$ref": "Tasks" - }, - "scopes": [ - "https://www.googleapis.com/auth/taskqueue", - "https://www.googleapis.com/auth/taskqueue.consumer" - ] - }, - "list": { - "id": "taskqueue.tasks.list", - "path": "{project}/taskqueues/{taskqueue}/tasks", - "httpMethod": "GET", - "description": "List Tasks in a TaskQueue", - "parameters": { - "project": { - "type": "string", - "description": "The project under which the queue lies.", - "required": true, - "location": "path" - }, - "taskqueue": { - "type": "string", - "description": "The id of the taskqueue to list tasks from.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "taskqueue" - ], - "response": { - "$ref": "Tasks2" - }, - "scopes": [ - "https://www.googleapis.com/auth/taskqueue", - "https://www.googleapis.com/auth/taskqueue.consumer" - ] - }, - "patch": { - "id": "taskqueue.tasks.patch", - "path": "{project}/taskqueues/{taskqueue}/tasks/{task}", - "httpMethod": "PATCH", - "description": "Update tasks that are leased out of a TaskQueue. This method supports patch semantics.", - "parameters": { - "newLeaseSeconds": { - "type": "integer", - "description": "The new lease in seconds.", - "required": true, - "format": "int32", - "location": "query" - }, - "project": { - "type": "string", - "description": "The project under which the queue lies.", - "required": true, - "location": "path" - }, - "task": { - "type": "string", - "required": true, - "location": "path" - }, - "taskqueue": { - "type": "string", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "taskqueue", - "task", - "newLeaseSeconds" - ], - "request": { - "$ref": "Task" - }, - "response": { - "$ref": "Task" - }, - "scopes": [ - "https://www.googleapis.com/auth/taskqueue", - "https://www.googleapis.com/auth/taskqueue.consumer" - ] - }, - "update": { - "id": "taskqueue.tasks.update", - "path": "{project}/taskqueues/{taskqueue}/tasks/{task}", - "httpMethod": "POST", - "description": "Update tasks that are leased out of a TaskQueue.", - "parameters": { - "newLeaseSeconds": { - "type": "integer", - "description": "The new lease in seconds.", - "required": true, - "format": "int32", - "location": "query" - }, - "project": { - "type": "string", - "description": "The project under which the queue lies.", - "required": true, - "location": "path" - }, - "task": { - "type": "string", - "required": true, - "location": "path" - }, - "taskqueue": { - "type": "string", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "project", - "taskqueue", - "task", - "newLeaseSeconds" - ], - "request": { - "$ref": "Task" - }, - "response": { - "$ref": "Task" - }, - "scopes": [ - "https://www.googleapis.com/auth/taskqueue", - "https://www.googleapis.com/auth/taskqueue.consumer" - ] + "type": "object" } - } - } - } -} + }, + "servicePath": "taskqueue/v1beta2/projects/", + "title": "TaskQueue API", + "version": "v1beta2" +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/tasks/v1/tasks-api.json b/vendor/google.golang.org/api/tasks/v1/tasks-api.json index 0d16db31b..7eb309477 100644 --- a/vendor/google.golang.org/api/tasks/v1/tasks-api.json +++ b/vendor/google.golang.org/api/tasks/v1/tasks-api.json @@ -1,696 +1,696 @@ { - "kind": "discovery#restDescription", - "etag": "\"YWOzh2SDasdU84ArJnpYek-OMdg/NWN6zUXbR398dbL3sE_mMEw339M\"", - "discoveryVersion": "v1", - "id": "tasks:v1", - "name": "tasks", - "version": "v1", - "revision": "20141121", - "title": "Tasks API", - "description": "Lets you manage your tasks and task lists.", - "ownerDomain": "google.com", - "ownerName": "Google", - "icons": { - "x16": "https://www.google.com/images/icons/product/tasks-16.png", - "x32": "https://www.google.com/images/icons/product/tasks-32.png" - }, - "documentationLink": "https://developers.google.com/google-apps/tasks/firstapp", - "protocol": "rest", - "baseUrl": "https://www.googleapis.com/tasks/v1/", - "basePath": "/tasks/v1/", - "rootUrl": "https://www.googleapis.com/", - "servicePath": "tasks/v1/", - "batchPath": "batch/tasks/v1", - "parameters": { - "alt": { - "type": "string", - "description": "Data format for the response.", - "default": "json", - "enum": [ - "json" - ], - "enumDescriptions": [ - "Responses with Content-Type of application/json" - ], - "location": "query" - }, - "fields": { - "type": "string", - "description": "Selector specifying which fields to include in a partial response.", - "location": "query" - }, - "key": { - "type": "string", - "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" - }, - "oauth_token": { - "type": "string", - "description": "OAuth 2.0 token for the current user.", - "location": "query" - }, - "prettyPrint": { - "type": "boolean", - "description": "Returns response with indentations and line breaks.", - "default": "true", - "location": "query" - }, - "quotaUser": { - "type": "string", - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", - "location": "query" - }, - "userIp": { - "type": "string", - "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", - "location": "query" - } - }, - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/tasks": { - "description": "Manage your tasks" - }, - "https://www.googleapis.com/auth/tasks.readonly": { - "description": "View your tasks" + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/tasks": { + "description": "Manage your tasks" + }, + "https://www.googleapis.com/auth/tasks.readonly": { + "description": "View your tasks" + } + } } - } - } - }, - "schemas": { - "Task": { - "id": "Task", - "type": "object", - "properties": { - "completed": { - "type": "string", - "description": "Completion date of the task (as a RFC 3339 timestamp). This field is omitted if the task has not been completed.", - "format": "date-time" + }, + "basePath": "/tasks/v1/", + "baseUrl": "https://www.googleapis.com/tasks/v1/", + "batchPath": "batch/tasks/v1", + "description": "Lets you manage your tasks and task lists.", + "discoveryVersion": "v1", + "documentationLink": "https://developers.google.com/google-apps/tasks/firstapp", + "etag": "\"-iA1DTNe4s-I6JZXPt1t1Ypy8IU/NWN6zUXbR398dbL3sE_mMEw339M\"", + "icons": { + "x16": "https://www.google.com/images/icons/product/tasks-16.png", + "x32": "https://www.google.com/images/icons/product/tasks-32.png" + }, + "id": "tasks:v1", + "kind": "discovery#restDescription", + "name": "tasks", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "alt": { + "default": "json", + "description": "Data format for the response.", + "enum": [ + "json" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json" + ], + "location": "query", + "type": "string" }, - "deleted": { - "type": "boolean", - "description": "Flag indicating whether the task has been deleted. The default if False." + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "location": "query", + "type": "string" }, - "due": { - "type": "string", - "description": "Due date of the task (as a RFC 3339 timestamp). Optional.", - "format": "date-time" + "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" }, - "etag": { - "type": "string", - "description": "ETag of the resource." + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" }, - "hidden": { - "type": "boolean", - "description": "Flag indicating whether the task is hidden. This is the case if the task had been marked completed when the task list was last cleared. The default is False. This field is read-only." + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" }, - "id": { - "type": "string", - "description": "Task identifier." + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", + "location": "query", + "type": "string" }, - "kind": { - "type": "string", - "description": "Type of the resource. This is always \"tasks#task\".", - "default": "tasks#task" + "userIp": { + "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", + "location": "query", + "type": "string" + } + }, + "protocol": "rest", + "resources": { + "tasklists": { + "methods": { + "delete": { + "description": "Deletes the authenticated user's specified task list.", + "httpMethod": "DELETE", + "id": "tasks.tasklists.delete", + "parameterOrder": [ + "tasklist" + ], + "parameters": { + "tasklist": { + "description": "Task list identifier.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "users/@me/lists/{tasklist}", + "scopes": [ + "https://www.googleapis.com/auth/tasks" + ] + }, + "get": { + "description": "Returns the authenticated user's specified task list.", + "httpMethod": "GET", + "id": "tasks.tasklists.get", + "parameterOrder": [ + "tasklist" + ], + "parameters": { + "tasklist": { + "description": "Task list identifier.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "users/@me/lists/{tasklist}", + "response": { + "$ref": "TaskList" + }, + "scopes": [ + "https://www.googleapis.com/auth/tasks", + "https://www.googleapis.com/auth/tasks.readonly" + ] + }, + "insert": { + "description": "Creates a new task list and adds it to the authenticated user's task lists.", + "httpMethod": "POST", + "id": "tasks.tasklists.insert", + "path": "users/@me/lists", + "request": { + "$ref": "TaskList" + }, + "response": { + "$ref": "TaskList" + }, + "scopes": [ + "https://www.googleapis.com/auth/tasks" + ] + }, + "list": { + "description": "Returns all the authenticated user's task lists.", + "httpMethod": "GET", + "id": "tasks.tasklists.list", + "parameters": { + "maxResults": { + "description": "Maximum number of task lists returned on one page. Optional. The default is 100.", + "format": "int64", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Token specifying the result page to return. Optional.", + "location": "query", + "type": "string" + } + }, + "path": "users/@me/lists", + "response": { + "$ref": "TaskLists" + }, + "scopes": [ + "https://www.googleapis.com/auth/tasks", + "https://www.googleapis.com/auth/tasks.readonly" + ] + }, + "patch": { + "description": "Updates the authenticated user's specified task list. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "tasks.tasklists.patch", + "parameterOrder": [ + "tasklist" + ], + "parameters": { + "tasklist": { + "description": "Task list identifier.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "users/@me/lists/{tasklist}", + "request": { + "$ref": "TaskList" + }, + "response": { + "$ref": "TaskList" + }, + "scopes": [ + "https://www.googleapis.com/auth/tasks" + ] + }, + "update": { + "description": "Updates the authenticated user's specified task list.", + "httpMethod": "PUT", + "id": "tasks.tasklists.update", + "parameterOrder": [ + "tasklist" + ], + "parameters": { + "tasklist": { + "description": "Task list identifier.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "users/@me/lists/{tasklist}", + "request": { + "$ref": "TaskList" + }, + "response": { + "$ref": "TaskList" + }, + "scopes": [ + "https://www.googleapis.com/auth/tasks" + ] + } + } }, - "links": { - "type": "array", - "description": "Collection of links. This collection is read-only.", - "items": { - "type": "object", + "tasks": { + "methods": { + "clear": { + "description": "Clears all completed tasks from the specified task list. The affected tasks will be marked as 'hidden' and no longer be returned by default when retrieving all tasks for a task list.", + "httpMethod": "POST", + "id": "tasks.tasks.clear", + "parameterOrder": [ + "tasklist" + ], + "parameters": { + "tasklist": { + "description": "Task list identifier.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "lists/{tasklist}/clear", + "scopes": [ + "https://www.googleapis.com/auth/tasks" + ] + }, + "delete": { + "description": "Deletes the specified task from the task list.", + "httpMethod": "DELETE", + "id": "tasks.tasks.delete", + "parameterOrder": [ + "tasklist", + "task" + ], + "parameters": { + "task": { + "description": "Task identifier.", + "location": "path", + "required": true, + "type": "string" + }, + "tasklist": { + "description": "Task list identifier.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "lists/{tasklist}/tasks/{task}", + "scopes": [ + "https://www.googleapis.com/auth/tasks" + ] + }, + "get": { + "description": "Returns the specified task.", + "httpMethod": "GET", + "id": "tasks.tasks.get", + "parameterOrder": [ + "tasklist", + "task" + ], + "parameters": { + "task": { + "description": "Task identifier.", + "location": "path", + "required": true, + "type": "string" + }, + "tasklist": { + "description": "Task list identifier.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "lists/{tasklist}/tasks/{task}", + "response": { + "$ref": "Task" + }, + "scopes": [ + "https://www.googleapis.com/auth/tasks", + "https://www.googleapis.com/auth/tasks.readonly" + ] + }, + "insert": { + "description": "Creates a new task on the specified task list.", + "httpMethod": "POST", + "id": "tasks.tasks.insert", + "parameterOrder": [ + "tasklist" + ], + "parameters": { + "parent": { + "description": "Parent task identifier. If the task is created at the top level, this parameter is omitted. Optional.", + "location": "query", + "type": "string" + }, + "previous": { + "description": "Previous sibling task identifier. If the task is created at the first position among its siblings, this parameter is omitted. Optional.", + "location": "query", + "type": "string" + }, + "tasklist": { + "description": "Task list identifier.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "lists/{tasklist}/tasks", + "request": { + "$ref": "Task" + }, + "response": { + "$ref": "Task" + }, + "scopes": [ + "https://www.googleapis.com/auth/tasks" + ] + }, + "list": { + "description": "Returns all tasks in the specified task list.", + "httpMethod": "GET", + "id": "tasks.tasks.list", + "parameterOrder": [ + "tasklist" + ], + "parameters": { + "completedMax": { + "description": "Upper bound for a task's completion date (as a RFC 3339 timestamp) to filter by. Optional. The default is not to filter by completion date.", + "location": "query", + "type": "string" + }, + "completedMin": { + "description": "Lower bound for a task's completion date (as a RFC 3339 timestamp) to filter by. Optional. The default is not to filter by completion date.", + "location": "query", + "type": "string" + }, + "dueMax": { + "description": "Upper bound for a task's due date (as a RFC 3339 timestamp) to filter by. Optional. The default is not to filter by due date.", + "location": "query", + "type": "string" + }, + "dueMin": { + "description": "Lower bound for a task's due date (as a RFC 3339 timestamp) to filter by. Optional. The default is not to filter by due date.", + "location": "query", + "type": "string" + }, + "maxResults": { + "description": "Maximum number of task lists returned on one page. Optional. The default is 100.", + "format": "int64", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Token specifying the result page to return. Optional.", + "location": "query", + "type": "string" + }, + "showCompleted": { + "description": "Flag indicating whether completed tasks are returned in the result. Optional. The default is True.", + "location": "query", + "type": "boolean" + }, + "showDeleted": { + "description": "Flag indicating whether deleted tasks are returned in the result. Optional. The default is False.", + "location": "query", + "type": "boolean" + }, + "showHidden": { + "description": "Flag indicating whether hidden tasks are returned in the result. Optional. The default is False.", + "location": "query", + "type": "boolean" + }, + "tasklist": { + "description": "Task list identifier.", + "location": "path", + "required": true, + "type": "string" + }, + "updatedMin": { + "description": "Lower bound for a task's last modification time (as a RFC 3339 timestamp) to filter by. Optional. The default is not to filter by last modification time.", + "location": "query", + "type": "string" + } + }, + "path": "lists/{tasklist}/tasks", + "response": { + "$ref": "Tasks" + }, + "scopes": [ + "https://www.googleapis.com/auth/tasks", + "https://www.googleapis.com/auth/tasks.readonly" + ] + }, + "move": { + "description": "Moves the specified task to another position in the task list. This can include putting it as a child task under a new parent and/or move it to a different position among its sibling tasks.", + "httpMethod": "POST", + "id": "tasks.tasks.move", + "parameterOrder": [ + "tasklist", + "task" + ], + "parameters": { + "parent": { + "description": "New parent task identifier. If the task is moved to the top level, this parameter is omitted. Optional.", + "location": "query", + "type": "string" + }, + "previous": { + "description": "New previous sibling task identifier. If the task is moved to the first position among its siblings, this parameter is omitted. Optional.", + "location": "query", + "type": "string" + }, + "task": { + "description": "Task identifier.", + "location": "path", + "required": true, + "type": "string" + }, + "tasklist": { + "description": "Task list identifier.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "lists/{tasklist}/tasks/{task}/move", + "response": { + "$ref": "Task" + }, + "scopes": [ + "https://www.googleapis.com/auth/tasks" + ] + }, + "patch": { + "description": "Updates the specified task. This method supports patch semantics.", + "httpMethod": "PATCH", + "id": "tasks.tasks.patch", + "parameterOrder": [ + "tasklist", + "task" + ], + "parameters": { + "task": { + "description": "Task identifier.", + "location": "path", + "required": true, + "type": "string" + }, + "tasklist": { + "description": "Task list identifier.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "lists/{tasklist}/tasks/{task}", + "request": { + "$ref": "Task" + }, + "response": { + "$ref": "Task" + }, + "scopes": [ + "https://www.googleapis.com/auth/tasks" + ] + }, + "update": { + "description": "Updates the specified task.", + "httpMethod": "PUT", + "id": "tasks.tasks.update", + "parameterOrder": [ + "tasklist", + "task" + ], + "parameters": { + "task": { + "description": "Task identifier.", + "location": "path", + "required": true, + "type": "string" + }, + "tasklist": { + "description": "Task list identifier.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "lists/{tasklist}/tasks/{task}", + "request": { + "$ref": "Task" + }, + "response": { + "$ref": "Task" + }, + "scopes": [ + "https://www.googleapis.com/auth/tasks" + ] + } + } + } + }, + "revision": "20141121", + "rootUrl": "https://www.googleapis.com/", + "schemas": { + "Task": { + "id": "Task", "properties": { - "description": { - "type": "string", - "description": "The description. In HTML speak: Everything between \u003ca\u003e and \u003c/a\u003e." - }, - "link": { - "type": "string", - "description": "The URL." - }, - "type": { - "type": "string", - "description": "Type of the link, e.g. \"email\"." - } - } - } + "completed": { + "description": "Completion date of the task (as a RFC 3339 timestamp). This field is omitted if the task has not been completed.", + "format": "date-time", + "type": "string" + }, + "deleted": { + "description": "Flag indicating whether the task has been deleted. The default if False.", + "type": "boolean" + }, + "due": { + "description": "Due date of the task (as a RFC 3339 timestamp). Optional.", + "format": "date-time", + "type": "string" + }, + "etag": { + "description": "ETag of the resource.", + "type": "string" + }, + "hidden": { + "description": "Flag indicating whether the task is hidden. This is the case if the task had been marked completed when the task list was last cleared. The default is False. This field is read-only.", + "type": "boolean" + }, + "id": { + "description": "Task identifier.", + "type": "string" + }, + "kind": { + "default": "tasks#task", + "description": "Type of the resource. This is always \"tasks#task\".", + "type": "string" + }, + "links": { + "description": "Collection of links. This collection is read-only.", + "items": { + "properties": { + "description": { + "description": "The description. In HTML speak: Everything between \u003ca\u003e and \u003c/a\u003e.", + "type": "string" + }, + "link": { + "description": "The URL.", + "type": "string" + }, + "type": { + "description": "Type of the link, e.g. \"email\".", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "notes": { + "description": "Notes describing the task. Optional.", + "type": "string" + }, + "parent": { + "description": "Parent task identifier. This field is omitted if it is a top-level task. This field is read-only. Use the \"move\" method to move the task under a different parent or to the top level.", + "type": "string" + }, + "position": { + "description": "String indicating the position of the task among its sibling tasks under the same parent task or at the top level. If this string is greater than another task's corresponding position string according to lexicographical ordering, the task is positioned after the other task under the same parent task (or at the top level). This field is read-only. Use the \"move\" method to move the task to another position.", + "type": "string" + }, + "selfLink": { + "description": "URL pointing to this task. Used to retrieve, update, or delete this task.", + "type": "string" + }, + "status": { + "description": "Status of the task. This is either \"needsAction\" or \"completed\".", + "type": "string" + }, + "title": { + "description": "Title of the task.", + "type": "string" + }, + "updated": { + "description": "Last modification time of the task (as a RFC 3339 timestamp).", + "format": "date-time", + "type": "string" + } + }, + "type": "object" }, - "notes": { - "type": "string", - "description": "Notes describing the task. Optional." + "TaskList": { + "id": "TaskList", + "properties": { + "etag": { + "description": "ETag of the resource.", + "type": "string" + }, + "id": { + "description": "Task list identifier.", + "type": "string" + }, + "kind": { + "default": "tasks#taskList", + "description": "Type of the resource. This is always \"tasks#taskList\".", + "type": "string" + }, + "selfLink": { + "description": "URL pointing to this task list. Used to retrieve, update, or delete this task list.", + "type": "string" + }, + "title": { + "description": "Title of the task list.", + "type": "string" + }, + "updated": { + "description": "Last modification time of the task list (as a RFC 3339 timestamp).", + "format": "date-time", + "type": "string" + } + }, + "type": "object" }, - "parent": { - "type": "string", - "description": "Parent task identifier. This field is omitted if it is a top-level task. This field is read-only. Use the \"move\" method to move the task under a different parent or to the top level." + "TaskLists": { + "id": "TaskLists", + "properties": { + "etag": { + "description": "ETag of the resource.", + "type": "string" + }, + "items": { + "description": "Collection of task lists.", + "items": { + "$ref": "TaskList" + }, + "type": "array" + }, + "kind": { + "default": "tasks#taskLists", + "description": "Type of the resource. This is always \"tasks#taskLists\".", + "type": "string" + }, + "nextPageToken": { + "description": "Token that can be used to request the next page of this result.", + "type": "string" + } + }, + "type": "object" }, - "position": { - "type": "string", - "description": "String indicating the position of the task among its sibling tasks under the same parent task or at the top level. If this string is greater than another task's corresponding position string according to lexicographical ordering, the task is positioned after the other task under the same parent task (or at the top level). This field is read-only. Use the \"move\" method to move the task to another position." - }, - "selfLink": { - "type": "string", - "description": "URL pointing to this task. Used to retrieve, update, or delete this task." - }, - "status": { - "type": "string", - "description": "Status of the task. This is either \"needsAction\" or \"completed\"." - }, - "title": { - "type": "string", - "description": "Title of the task." - }, - "updated": { - "type": "string", - "description": "Last modification time of the task (as a RFC 3339 timestamp).", - "format": "date-time" + "Tasks": { + "id": "Tasks", + "properties": { + "etag": { + "description": "ETag of the resource.", + "type": "string" + }, + "items": { + "description": "Collection of tasks.", + "items": { + "$ref": "Task" + }, + "type": "array" + }, + "kind": { + "default": "tasks#tasks", + "description": "Type of the resource. This is always \"tasks#tasks\".", + "type": "string" + }, + "nextPageToken": { + "description": "Token used to access the next page of this result.", + "type": "string" + } + }, + "type": "object" } - } }, - "TaskList": { - "id": "TaskList", - "type": "object", - "properties": { - "etag": { - "type": "string", - "description": "ETag of the resource." - }, - "id": { - "type": "string", - "description": "Task list identifier." - }, - "kind": { - "type": "string", - "description": "Type of the resource. This is always \"tasks#taskList\".", - "default": "tasks#taskList" - }, - "selfLink": { - "type": "string", - "description": "URL pointing to this task list. Used to retrieve, update, or delete this task list." - }, - "title": { - "type": "string", - "description": "Title of the task list." - }, - "updated": { - "type": "string", - "description": "Last modification time of the task list (as a RFC 3339 timestamp).", - "format": "date-time" - } - } - }, - "TaskLists": { - "id": "TaskLists", - "type": "object", - "properties": { - "etag": { - "type": "string", - "description": "ETag of the resource." - }, - "items": { - "type": "array", - "description": "Collection of task lists.", - "items": { - "$ref": "TaskList" - } - }, - "kind": { - "type": "string", - "description": "Type of the resource. This is always \"tasks#taskLists\".", - "default": "tasks#taskLists" - }, - "nextPageToken": { - "type": "string", - "description": "Token that can be used to request the next page of this result." - } - } - }, - "Tasks": { - "id": "Tasks", - "type": "object", - "properties": { - "etag": { - "type": "string", - "description": "ETag of the resource." - }, - "items": { - "type": "array", - "description": "Collection of tasks.", - "items": { - "$ref": "Task" - } - }, - "kind": { - "type": "string", - "description": "Type of the resource. This is always \"tasks#tasks\".", - "default": "tasks#tasks" - }, - "nextPageToken": { - "type": "string", - "description": "Token used to access the next page of this result." - } - } - } - }, - "resources": { - "tasklists": { - "methods": { - "delete": { - "id": "tasks.tasklists.delete", - "path": "users/@me/lists/{tasklist}", - "httpMethod": "DELETE", - "description": "Deletes the authenticated user's specified task list.", - "parameters": { - "tasklist": { - "type": "string", - "description": "Task list identifier.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "tasklist" - ], - "scopes": [ - "https://www.googleapis.com/auth/tasks" - ] - }, - "get": { - "id": "tasks.tasklists.get", - "path": "users/@me/lists/{tasklist}", - "httpMethod": "GET", - "description": "Returns the authenticated user's specified task list.", - "parameters": { - "tasklist": { - "type": "string", - "description": "Task list identifier.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "tasklist" - ], - "response": { - "$ref": "TaskList" - }, - "scopes": [ - "https://www.googleapis.com/auth/tasks", - "https://www.googleapis.com/auth/tasks.readonly" - ] - }, - "insert": { - "id": "tasks.tasklists.insert", - "path": "users/@me/lists", - "httpMethod": "POST", - "description": "Creates a new task list and adds it to the authenticated user's task lists.", - "request": { - "$ref": "TaskList" - }, - "response": { - "$ref": "TaskList" - }, - "scopes": [ - "https://www.googleapis.com/auth/tasks" - ] - }, - "list": { - "id": "tasks.tasklists.list", - "path": "users/@me/lists", - "httpMethod": "GET", - "description": "Returns all the authenticated user's task lists.", - "parameters": { - "maxResults": { - "type": "string", - "description": "Maximum number of task lists returned on one page. Optional. The default is 100.", - "format": "int64", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Token specifying the result page to return. Optional.", - "location": "query" - } - }, - "response": { - "$ref": "TaskLists" - }, - "scopes": [ - "https://www.googleapis.com/auth/tasks", - "https://www.googleapis.com/auth/tasks.readonly" - ] - }, - "patch": { - "id": "tasks.tasklists.patch", - "path": "users/@me/lists/{tasklist}", - "httpMethod": "PATCH", - "description": "Updates the authenticated user's specified task list. This method supports patch semantics.", - "parameters": { - "tasklist": { - "type": "string", - "description": "Task list identifier.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "tasklist" - ], - "request": { - "$ref": "TaskList" - }, - "response": { - "$ref": "TaskList" - }, - "scopes": [ - "https://www.googleapis.com/auth/tasks" - ] - }, - "update": { - "id": "tasks.tasklists.update", - "path": "users/@me/lists/{tasklist}", - "httpMethod": "PUT", - "description": "Updates the authenticated user's specified task list.", - "parameters": { - "tasklist": { - "type": "string", - "description": "Task list identifier.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "tasklist" - ], - "request": { - "$ref": "TaskList" - }, - "response": { - "$ref": "TaskList" - }, - "scopes": [ - "https://www.googleapis.com/auth/tasks" - ] - } - } - }, - "tasks": { - "methods": { - "clear": { - "id": "tasks.tasks.clear", - "path": "lists/{tasklist}/clear", - "httpMethod": "POST", - "description": "Clears all completed tasks from the specified task list. The affected tasks will be marked as 'hidden' and no longer be returned by default when retrieving all tasks for a task list.", - "parameters": { - "tasklist": { - "type": "string", - "description": "Task list identifier.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "tasklist" - ], - "scopes": [ - "https://www.googleapis.com/auth/tasks" - ] - }, - "delete": { - "id": "tasks.tasks.delete", - "path": "lists/{tasklist}/tasks/{task}", - "httpMethod": "DELETE", - "description": "Deletes the specified task from the task list.", - "parameters": { - "task": { - "type": "string", - "description": "Task identifier.", - "required": true, - "location": "path" - }, - "tasklist": { - "type": "string", - "description": "Task list identifier.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "tasklist", - "task" - ], - "scopes": [ - "https://www.googleapis.com/auth/tasks" - ] - }, - "get": { - "id": "tasks.tasks.get", - "path": "lists/{tasklist}/tasks/{task}", - "httpMethod": "GET", - "description": "Returns the specified task.", - "parameters": { - "task": { - "type": "string", - "description": "Task identifier.", - "required": true, - "location": "path" - }, - "tasklist": { - "type": "string", - "description": "Task list identifier.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "tasklist", - "task" - ], - "response": { - "$ref": "Task" - }, - "scopes": [ - "https://www.googleapis.com/auth/tasks", - "https://www.googleapis.com/auth/tasks.readonly" - ] - }, - "insert": { - "id": "tasks.tasks.insert", - "path": "lists/{tasklist}/tasks", - "httpMethod": "POST", - "description": "Creates a new task on the specified task list.", - "parameters": { - "parent": { - "type": "string", - "description": "Parent task identifier. If the task is created at the top level, this parameter is omitted. Optional.", - "location": "query" - }, - "previous": { - "type": "string", - "description": "Previous sibling task identifier. If the task is created at the first position among its siblings, this parameter is omitted. Optional.", - "location": "query" - }, - "tasklist": { - "type": "string", - "description": "Task list identifier.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "tasklist" - ], - "request": { - "$ref": "Task" - }, - "response": { - "$ref": "Task" - }, - "scopes": [ - "https://www.googleapis.com/auth/tasks" - ] - }, - "list": { - "id": "tasks.tasks.list", - "path": "lists/{tasklist}/tasks", - "httpMethod": "GET", - "description": "Returns all tasks in the specified task list.", - "parameters": { - "completedMax": { - "type": "string", - "description": "Upper bound for a task's completion date (as a RFC 3339 timestamp) to filter by. Optional. The default is not to filter by completion date.", - "location": "query" - }, - "completedMin": { - "type": "string", - "description": "Lower bound for a task's completion date (as a RFC 3339 timestamp) to filter by. Optional. The default is not to filter by completion date.", - "location": "query" - }, - "dueMax": { - "type": "string", - "description": "Upper bound for a task's due date (as a RFC 3339 timestamp) to filter by. Optional. The default is not to filter by due date.", - "location": "query" - }, - "dueMin": { - "type": "string", - "description": "Lower bound for a task's due date (as a RFC 3339 timestamp) to filter by. Optional. The default is not to filter by due date.", - "location": "query" - }, - "maxResults": { - "type": "string", - "description": "Maximum number of task lists returned on one page. Optional. The default is 100.", - "format": "int64", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "Token specifying the result page to return. Optional.", - "location": "query" - }, - "showCompleted": { - "type": "boolean", - "description": "Flag indicating whether completed tasks are returned in the result. Optional. The default is True.", - "location": "query" - }, - "showDeleted": { - "type": "boolean", - "description": "Flag indicating whether deleted tasks are returned in the result. Optional. The default is False.", - "location": "query" - }, - "showHidden": { - "type": "boolean", - "description": "Flag indicating whether hidden tasks are returned in the result. Optional. The default is False.", - "location": "query" - }, - "tasklist": { - "type": "string", - "description": "Task list identifier.", - "required": true, - "location": "path" - }, - "updatedMin": { - "type": "string", - "description": "Lower bound for a task's last modification time (as a RFC 3339 timestamp) to filter by. Optional. The default is not to filter by last modification time.", - "location": "query" - } - }, - "parameterOrder": [ - "tasklist" - ], - "response": { - "$ref": "Tasks" - }, - "scopes": [ - "https://www.googleapis.com/auth/tasks", - "https://www.googleapis.com/auth/tasks.readonly" - ] - }, - "move": { - "id": "tasks.tasks.move", - "path": "lists/{tasklist}/tasks/{task}/move", - "httpMethod": "POST", - "description": "Moves the specified task to another position in the task list. This can include putting it as a child task under a new parent and/or move it to a different position among its sibling tasks.", - "parameters": { - "parent": { - "type": "string", - "description": "New parent task identifier. If the task is moved to the top level, this parameter is omitted. Optional.", - "location": "query" - }, - "previous": { - "type": "string", - "description": "New previous sibling task identifier. If the task is moved to the first position among its siblings, this parameter is omitted. Optional.", - "location": "query" - }, - "task": { - "type": "string", - "description": "Task identifier.", - "required": true, - "location": "path" - }, - "tasklist": { - "type": "string", - "description": "Task list identifier.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "tasklist", - "task" - ], - "response": { - "$ref": "Task" - }, - "scopes": [ - "https://www.googleapis.com/auth/tasks" - ] - }, - "patch": { - "id": "tasks.tasks.patch", - "path": "lists/{tasklist}/tasks/{task}", - "httpMethod": "PATCH", - "description": "Updates the specified task. This method supports patch semantics.", - "parameters": { - "task": { - "type": "string", - "description": "Task identifier.", - "required": true, - "location": "path" - }, - "tasklist": { - "type": "string", - "description": "Task list identifier.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "tasklist", - "task" - ], - "request": { - "$ref": "Task" - }, - "response": { - "$ref": "Task" - }, - "scopes": [ - "https://www.googleapis.com/auth/tasks" - ] - }, - "update": { - "id": "tasks.tasks.update", - "path": "lists/{tasklist}/tasks/{task}", - "httpMethod": "PUT", - "description": "Updates the specified task.", - "parameters": { - "task": { - "type": "string", - "description": "Task identifier.", - "required": true, - "location": "path" - }, - "tasklist": { - "type": "string", - "description": "Task list identifier.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "tasklist", - "task" - ], - "request": { - "$ref": "Task" - }, - "response": { - "$ref": "Task" - }, - "scopes": [ - "https://www.googleapis.com/auth/tasks" - ] - } - } - } - } -} + "servicePath": "tasks/v1/", + "title": "Tasks API", + "version": "v1" +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/testing/v1/testing-api.json b/vendor/google.golang.org/api/testing/v1/testing-api.json index 1fa0bf800..80f1e64d9 100644 --- a/vendor/google.golang.org/api/testing/v1/testing-api.json +++ b/vendor/google.golang.org/api/testing/v1/testing-api.json @@ -1,52 +1,140 @@ { - "rootUrl": "https://testing.googleapis.com/", + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/cloud-platform": { + "description": "View and manage your data across Google Cloud Platform services" + }, + "https://www.googleapis.com/auth/cloud-platform.read-only": { + "description": "View your data across Google Cloud Platform services" + } + } + } + }, "basePath": "", - "ownerDomain": "google.com", - "name": "testing", + "baseUrl": "https://testing.googleapis.com/", "batchPath": "batch", - "revision": "20180117", - "id": "testing:v1", - "documentationLink": "https://developers.google.com/cloud-test-lab/", - "title": "Google Cloud Testing API", + "description": "Allows developers to run automated tests for their mobile applications on Google infrastructure.", "discoveryVersion": "v1", + "documentationLink": "https://developers.google.com/cloud-test-lab/", + "icons": { + "x16": "http://www.google.com/images/icons/product/search-16.gif", + "x32": "http://www.google.com/images/icons/product/search-32.gif" + }, + "id": "testing:v1", + "kind": "discovery#restDescription", + "name": "testing", + "ownerDomain": "google.com", "ownerName": "Google", + "parameters": { + "$.xgafv": { + "description": "V1 error format.", + "enum": [ + "1", + "2" + ], + "enumDescriptions": [ + "v1 error format", + "v2 error format" + ], + "location": "query", + "type": "string" + }, + "access_token": { + "description": "OAuth access token.", + "location": "query", + "type": "string" + }, + "alt": { + "default": "json", + "description": "Data format for response.", + "enum": [ + "json", + "media", + "proto" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json", + "Media download with context-dependent Content-Type", + "Responses with Content-Type of application/x-protobuf" + ], + "location": "query", + "type": "string" + }, + "bearer_token": { + "description": "OAuth bearer token.", + "location": "query", + "type": "string" + }, + "callback": { + "description": "JSONP", + "location": "query", + "type": "string" + }, + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "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.", + "location": "query", + "type": "string" + }, + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "pp": { + "default": "true", + "description": "Pretty-print response.", + "location": "query", + "type": "boolean" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", + "location": "query", + "type": "string" + }, + "uploadType": { + "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", + "location": "query", + "type": "string" + }, + "upload_protocol": { + "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", + "location": "query", + "type": "string" + } + }, + "protocol": "rest", "resources": { - "testEnvironmentCatalog": { + "applicationDetailService": { "methods": { - "get": { - "path": "v1/testEnvironmentCatalog/{environmentType}", - "id": "testing.testEnvironmentCatalog.get", - "description": "Get the catalog of supported test environments.\n\nMay return any of the following canonical error codes:\n\n- INVALID_ARGUMENT - if the request is malformed\n- NOT_FOUND - if the environment type does not exist\n- INTERNAL - if an internal error occurred", + "getApkDetails": { + "description": "Request the details of an Android application APK.", + "flatPath": "v1/applicationDetailService/getApkDetails", + "httpMethod": "POST", + "id": "testing.applicationDetailService.getApkDetails", + "parameterOrder": [], + "parameters": {}, + "path": "v1/applicationDetailService/getApkDetails", + "request": { + "$ref": "FileReference" + }, "response": { - "$ref": "TestEnvironmentCatalog" + "$ref": "GetApkDetailsResponse" }, - "parameterOrder": [ - "environmentType" - ], - "httpMethod": "GET", "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ], - "parameters": { - "projectId": { - "description": "For authorization, the cloud project requesting the TestEnvironmentCatalog.\nOptional", - "type": "string", - "location": "query" - }, - "environmentType": { - "location": "path", - "enum": [ - "ENVIRONMENT_TYPE_UNSPECIFIED", - "ANDROID", - "NETWORK_CONFIGURATION" - ], - "description": "The type of environment that should be listed.\nRequired", - "required": true, - "type": "string" - } - }, - "flatPath": "v1/testEnvironmentCatalog/{environmentType}" + "https://www.googleapis.com/auth/cloud-platform" + ] } } }, @@ -54,271 +142,597 @@ "resources": { "testMatrices": { "methods": { - "create": { + "cancel": { + "description": "Cancels unfinished test executions in a test matrix.\nThis call returns immediately and cancellation proceeds asychronously.\nIf the matrix is already final, this operation will have no effect.\n\nMay return any of the following canonical error codes:\n\n- PERMISSION_DENIED - if the user is not authorized to read project\n- INVALID_ARGUMENT - if the request is malformed\n- NOT_FOUND - if the Test Matrix does not exist", + "flatPath": "v1/projects/{projectId}/testMatrices/{testMatrixId}:cancel", "httpMethod": "POST", + "id": "testing.projects.testMatrices.cancel", + "parameterOrder": [ + "projectId", + "testMatrixId" + ], + "parameters": { + "projectId": { + "description": "Cloud project that owns the test.", + "location": "path", + "required": true, + "type": "string" + }, + "testMatrixId": { + "description": "Test matrix that will be canceled.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/projects/{projectId}/testMatrices/{testMatrixId}:cancel", + "response": { + "$ref": "CancelTestMatrixResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "create": { + "description": "Request to run a matrix of tests according to the given specifications.\nUnsupported environments will be returned in the state UNSUPPORTED.\nMatrices are limited to at most 200 supported executions.\n\nMay return any of the following canonical error codes:\n\n- PERMISSION_DENIED - if the user is not authorized to write to project\n- INVALID_ARGUMENT - if the request is malformed or if the matrix expands\n to more than 200 supported executions", + "flatPath": "v1/projects/{projectId}/testMatrices", + "httpMethod": "POST", + "id": "testing.projects.testMatrices.create", "parameterOrder": [ "projectId" ], - "response": { - "$ref": "TestMatrix" - }, "parameters": { "projectId": { - "location": "path", "description": "The GCE project under which this job will run.", + "location": "path", "required": true, "type": "string" }, "requestId": { - "location": "query", "description": "A string id used to detect duplicated requests.\nIds are automatically scoped to a project, so\nusers should ensure the ID is unique per-project.\nA UUID is recommended.\n\nOptional, but strongly recommended.", + "location": "query", "type": "string" } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/projects/{projectId}/testMatrices", - "id": "testing.projects.testMatrices.create", "path": "v1/projects/{projectId}/testMatrices", "request": { "$ref": "TestMatrix" }, - "description": "Request to run a matrix of tests according to the given specifications.\nUnsupported environments will be returned in the state UNSUPPORTED.\nMatrices are limited to at most 200 supported executions.\n\nMay return any of the following canonical error codes:\n\n- PERMISSION_DENIED - if the user is not authorized to write to project\n- INVALID_ARGUMENT - if the request is malformed or if the matrix expands\n to more than 200 supported executions" - }, - "cancel": { - "response": { - "$ref": "CancelTestMatrixResponse" - }, - "parameterOrder": [ - "projectId", - "testMatrixId" - ], - "httpMethod": "POST", - "parameters": { - "projectId": { - "description": "Cloud project that owns the test.", - "required": true, - "type": "string", - "location": "path" - }, - "testMatrixId": { - "description": "Test matrix that will be canceled.", - "required": true, - "type": "string", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/projects/{projectId}/testMatrices/{testMatrixId}:cancel", - "path": "v1/projects/{projectId}/testMatrices/{testMatrixId}:cancel", - "id": "testing.projects.testMatrices.cancel", - "description": "Cancels unfinished test executions in a test matrix.\nThis call returns immediately and cancellation proceeds asychronously.\nIf the matrix is already final, this operation will have no effect.\n\nMay return any of the following canonical error codes:\n\n- PERMISSION_DENIED - if the user is not authorized to read project\n- INVALID_ARGUMENT - if the request is malformed\n- NOT_FOUND - if the Test Matrix does not exist" - }, - "get": { "response": { "$ref": "TestMatrix" }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Check the status of a test matrix.\n\nMay return any of the following canonical error codes:\n\n- PERMISSION_DENIED - if the user is not authorized to read project\n- INVALID_ARGUMENT - if the request is malformed\n- NOT_FOUND - if the Test Matrix does not exist", + "flatPath": "v1/projects/{projectId}/testMatrices/{testMatrixId}", + "httpMethod": "GET", + "id": "testing.projects.testMatrices.get", "parameterOrder": [ "projectId", "testMatrixId" ], - "httpMethod": "GET", "parameters": { "projectId": { - "location": "path", "description": "Cloud project that owns the test matrix.", + "location": "path", "required": true, "type": "string" }, "testMatrixId": { - "location": "path", "description": "Unique test matrix id which was assigned by the service.", + "location": "path", "required": true, "type": "string" } }, + "path": "v1/projects/{projectId}/testMatrices/{testMatrixId}", + "response": { + "$ref": "TestMatrix" + }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/cloud-platform.read-only" - ], - "flatPath": "v1/projects/{projectId}/testMatrices/{testMatrixId}", - "path": "v1/projects/{projectId}/testMatrices/{testMatrixId}", - "id": "testing.projects.testMatrices.get", - "description": "Check the status of a test matrix.\n\nMay return any of the following canonical error codes:\n\n- PERMISSION_DENIED - if the user is not authorized to read project\n- INVALID_ARGUMENT - if the request is malformed\n- NOT_FOUND - if the Test Matrix does not exist" + ] } } } } + }, + "testEnvironmentCatalog": { + "methods": { + "get": { + "description": "Get the catalog of supported test environments.\n\nMay return any of the following canonical error codes:\n\n- INVALID_ARGUMENT - if the request is malformed\n- NOT_FOUND - if the environment type does not exist\n- INTERNAL - if an internal error occurred", + "flatPath": "v1/testEnvironmentCatalog/{environmentType}", + "httpMethod": "GET", + "id": "testing.testEnvironmentCatalog.get", + "parameterOrder": [ + "environmentType" + ], + "parameters": { + "environmentType": { + "description": "The type of environment that should be listed.\nRequired", + "enum": [ + "ENVIRONMENT_TYPE_UNSPECIFIED", + "ANDROID", + "NETWORK_CONFIGURATION" + ], + "location": "path", + "required": true, + "type": "string" + }, + "projectId": { + "description": "For authorization, the cloud project requesting the TestEnvironmentCatalog.\nOptional", + "location": "query", + "type": "string" + } + }, + "path": "v1/testEnvironmentCatalog/{environmentType}", + "response": { + "$ref": "TestEnvironmentCatalog" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + } + } } }, - "parameters": { - "pp": { - "description": "Pretty-print response.", - "type": "boolean", - "default": "true", - "location": "query" - }, - "bearer_token": { - "description": "OAuth bearer token.", - "type": "string", - "location": "query" - }, - "oauth_token": { - "location": "query", - "description": "OAuth 2.0 token for the current user.", - "type": "string" - }, - "upload_protocol": { - "location": "query", - "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", - "type": "string" - }, - "prettyPrint": { - "location": "query", - "description": "Returns response with indentations and line breaks.", - "type": "boolean", - "default": "true" - }, - "uploadType": { - "location": "query", - "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", - "type": "string" - }, - "fields": { - "location": "query", - "description": "Selector specifying which fields to include in a partial response.", - "type": "string" - }, - "callback": { - "description": "JSONP", - "type": "string", - "location": "query" - }, - "$.xgafv": { - "enum": [ - "1", - "2" - ], - "description": "V1 error format.", - "type": "string", - "enumDescriptions": [ - "v1 error format", - "v2 error format" - ], - "location": "query" - }, - "alt": { - "enumDescriptions": [ - "Responses with Content-Type of application/json", - "Media download with context-dependent Content-Type", - "Responses with Content-Type of application/x-protobuf" - ], - "location": "query", - "description": "Data format for response.", - "default": "json", - "enum": [ - "json", - "media", - "proto" - ], - "type": "string" - }, - "key": { - "location": "query", - "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.", - "type": "string" - }, - "access_token": { - "description": "OAuth access token.", - "type": "string", - "location": "query" - }, - "quotaUser": { - "location": "query", - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", - "type": "string" - } - }, + "revision": "20180316", + "rootUrl": "https://testing.googleapis.com/", "schemas": { - "DeviceFile": { - "description": "A single device file description.", - "type": "object", + "Account": { + "description": "Identifies an account and how to log into it", + "id": "Account", "properties": { - "obbFile": { - "$ref": "ObbFile", - "description": "A reference to an opaque binary blob file" + "googleAuto": { + "$ref": "GoogleAuto", + "description": "An automatic google login account" } }, - "id": "DeviceFile" + "type": "object" }, - "ClientInfoDetail": { - "description": "Key-value pair of detailed information about the client which invoked the\ntest. For example {'Version', '1.0'}, {'Release Track', 'BETA'}", - "type": "object", + "AndroidDevice": { + "description": "A single Android device.", + "id": "AndroidDevice", "properties": { - "key": { - "description": "The key of detailed client information.\nRequired", + "androidModelId": { + "description": "The id of the Android device to be used.\nUse the EnvironmentDiscoveryService to get supported options.\nRequired", "type": "string" }, - "value": { - "description": "The value of detailed client information.\nRequired", + "androidVersionId": { + "description": "The id of the Android OS version to be used.\nUse the EnvironmentDiscoveryService to get supported options.\nRequired", + "type": "string" + }, + "locale": { + "description": "The locale the test device used for testing.\nUse the EnvironmentDiscoveryService to get supported options.\nRequired", + "type": "string" + }, + "orientation": { + "description": "How the device is oriented during the test.\nUse the EnvironmentDiscoveryService to get supported options.\nRequired", "type": "string" } }, - "id": "ClientInfoDetail" + "type": "object" }, - "EnvironmentVariable": { - "description": "A key-value pair passed as an environment variable to the test", - "type": "object", + "AndroidDeviceCatalog": { + "description": "The currently supported Android devices.", + "id": "AndroidDeviceCatalog", "properties": { - "key": { - "description": "Key for the environment variable", + "models": { + "description": "The set of supported Android device models.\n@OutputOnly", + "items": { + "$ref": "AndroidModel" + }, + "type": "array" + }, + "runtimeConfiguration": { + "$ref": "AndroidRuntimeConfiguration", + "description": "The set of supported runtime configurations.\n@OutputOnly" + }, + "versions": { + "description": "The set of supported Android OS versions.\n@OutputOnly", + "items": { + "$ref": "AndroidVersion" + }, + "type": "array" + } + }, + "type": "object" + }, + "AndroidDeviceList": { + "description": "A list of Android device configurations in which the test is to be executed.", + "id": "AndroidDeviceList", + "properties": { + "androidDevices": { + "description": "A list of Android devices\nRequired", + "items": { + "$ref": "AndroidDevice" + }, + "type": "array" + } + }, + "type": "object" + }, + "AndroidInstrumentationTest": { + "description": "A test of an Android application that can control an Android component\nindependently of its normal lifecycle.\nAndroid instrumentation tests run an application APK and test APK inside the\nsame process on a virtual or physical AndroidDevice. They also specify\na test runner class, such as com.google.GoogleTestRunner, which can vary\non the specific instrumentation framework chosen.\n\nSee \u003chttp://developer.android.com/tools/testing/testing_android.html\u003e for\nmore information on types of Android tests.", + "id": "AndroidInstrumentationTest", + "properties": { + "appApk": { + "$ref": "FileReference", + "description": "The APK for the application under test.\nRequired" + }, + "appPackageId": { + "description": "The java package for the application under test.\nOptional, default is determined by examining the application's manifest.", "type": "string" }, - "value": { - "description": "Value for the environment variable", + "orchestratorOption": { + "description": "The option of whether running each test within its own invocation of\ninstrumentation with Android Test Orchestrator or not.\n** Orchestrator is only compatible with AndroidJUnitRunner version 1.0 or\nhigher! **\nOrchestrator offers the following benefits:\n - No shared state\n - Crashes are isolated\n - Logs are scoped per test\n\nSee\n\u003chttps://developer.android.com/training/testing/junit-runner.html#using-android-test-orchestrator\u003e\nfor more information about Android Test Orchestrator.\n\nOptional, if empty, test will be run without orchestrator.", + "enum": [ + "ORCHESTRATOR_OPTION_UNSPECIFIED", + "USE_ORCHESTRATOR", + "DO_NOT_USE_ORCHESTRATOR" + ], + "enumDescriptions": [ + "This means that the server should choose the mode. And test will be run\nwithout orchestrator.\nUsing orchestrator is highly encouraged because of all the benefits it\noffers. And in the future, all instrumentation tests will be run with\norchestrator by default if preference unspecified.", + "Run test using orchestrator.\n** Only compatible with AndroidJUnitRunner version 1.0 or higher! **\nRecommended.", + "Run test without using orchestrator." + ], + "type": "string" + }, + "testApk": { + "$ref": "FileReference", + "description": "The APK containing the test code to be executed.\nRequired" + }, + "testPackageId": { + "description": "The java package for the test to be executed.\nOptional, default is determined by examining the application's manifest.", + "type": "string" + }, + "testRunnerClass": { + "description": "The InstrumentationTestRunner class.\nOptional, default is determined by examining the application's manifest.", + "type": "string" + }, + "testTargets": { + "description": "Each target must be fully qualified with the package name or class name,\nin one of these formats:\n - \"package package_name\"\n - \"class package_name.class_name\"\n - \"class package_name.class_name#method_name\"\n\nOptional, if empty, all targets in the module will be run.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "AndroidMatrix": { + "description": "A set of Android device configuration permutations is defined by the\nthe cross-product of the given axes. Internally, the given AndroidMatrix\nwill be expanded into a set of AndroidDevices.\n\nOnly supported permutations will be instantiated. Invalid permutations\n(e.g., incompatible models/versions) are ignored.", + "id": "AndroidMatrix", + "properties": { + "androidModelIds": { + "description": "The ids of the set of Android device to be used.\nUse the EnvironmentDiscoveryService to get supported options.\nRequired", + "items": { + "type": "string" + }, + "type": "array" + }, + "androidVersionIds": { + "description": "The ids of the set of Android OS version to be used.\nUse the EnvironmentDiscoveryService to get supported options.\nRequired", + "items": { + "type": "string" + }, + "type": "array" + }, + "locales": { + "description": "The set of locales the test device will enable for testing.\nUse the EnvironmentDiscoveryService to get supported options.\nRequired", + "items": { + "type": "string" + }, + "type": "array" + }, + "orientations": { + "description": "The set of orientations to test with.\nUse the EnvironmentDiscoveryService to get supported options.\nRequired", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "AndroidModel": { + "description": "A description of an Android device tests may be run on.", + "id": "AndroidModel", + "properties": { + "brand": { + "description": "The company that this device is branded with.\nExample: \"Google\", \"Samsung\"\n@OutputOnly", + "type": "string" + }, + "codename": { + "description": "The name of the industrial design.\nThis corresponds to android.os.Build.DEVICE\n@OutputOnly", + "type": "string" + }, + "form": { + "description": "Whether this device is virtual or physical.\n@OutputOnly", + "enum": [ + "DEVICE_FORM_UNSPECIFIED", + "VIRTUAL", + "PHYSICAL" + ], + "enumDescriptions": [ + "Do not use. For proto versioning only.", + "A software stack that simulates the device", + "Actual hardware" + ], + "type": "string" + }, + "id": { + "description": "The unique opaque id for this model.\nUse this for invoking the TestExecutionService.\n@OutputOnly", + "type": "string" + }, + "manufacturer": { + "description": "The manufacturer of this device.\n@OutputOnly", + "type": "string" + }, + "name": { + "description": "The human-readable marketing name for this device model.\nExamples: \"Nexus 5\", \"Galaxy S5\"\n@OutputOnly", + "type": "string" + }, + "screenDensity": { + "description": "Screen density in DPI.\nThis corresponds to ro.sf.lcd_density\n@OutputOnly", + "format": "int32", + "type": "integer" + }, + "screenX": { + "description": "Screen size in the horizontal (X) dimension measured in pixels.\n@OutputOnly", + "format": "int32", + "type": "integer" + }, + "screenY": { + "description": "Screen size in the vertical (Y) dimension measured in pixels.\n@OutputOnly", + "format": "int32", + "type": "integer" + }, + "supportedAbis": { + "description": "The list of supported ABIs for this device.\nThis corresponds to either android.os.Build.SUPPORTED_ABIS (for API level\n21 and above) or android.os.Build.CPU_ABI/CPU_ABI2.\nThe most preferred ABI is the first element in the list.\n\nElements are optionally prefixed by \"version_id:\" (where version_id is\nthe id of an AndroidVersion), denoting an ABI that is supported only on\na particular version.\n@OutputOnly", + "items": { + "type": "string" + }, + "type": "array" + }, + "supportedVersionIds": { + "description": "The set of Android versions this device supports.\n@OutputOnly", + "items": { + "type": "string" + }, + "type": "array" + }, + "tags": { + "description": "Tags for this dimension.\nExamples: \"default\", \"preview\", \"deprecated\"", + "items": { + "type": "string" + }, + "type": "array" + }, + "videoRecordingNotSupported": { + "description": "True if and only if tests with this model DO NOT have video output.\nSee also TestSpecification.disable_video_recording\n@OutputOnly", + "type": "boolean" + } + }, + "type": "object" + }, + "AndroidRoboTest": { + "description": "A test of an android application that explores the application on a virtual\nor physical Android Device, finding culprits and crashes as it goes.", + "id": "AndroidRoboTest", + "properties": { + "appApk": { + "$ref": "FileReference", + "description": "The APK for the application under test.\nRequired" + }, + "appInitialActivity": { + "description": "The initial activity that should be used to start the app.\nOptional", + "type": "string" + }, + "appPackageId": { + "description": "The java package for the application under test.\nOptional, default is determined by examining the application's manifest.", + "type": "string" + }, + "maxDepth": { + "description": "The max depth of the traversal stack Robo can explore. Needs to be at least\n2 to make Robo explore the app beyond the first activity.\nDefault is 50.\nOptional", + "format": "int32", + "type": "integer" + }, + "maxSteps": { + "description": "The max number of steps Robo can execute.\nDefault is no limit.\nOptional", + "format": "int32", + "type": "integer" + }, + "roboDirectives": { + "description": "A set of directives Robo should apply during the crawl.\nThis allows users to customize the crawl. For example, the username and\npassword for a test account can be provided.\nOptional", + "items": { + "$ref": "RoboDirective" + }, + "type": "array" + }, + "roboScript": { + "$ref": "FileReference", + "description": "A JSON file with a sequence of actions Robo should perform as a prologue\nfor the crawl.\nOptional" + }, + "startingIntents": { + "description": "The intents used to launch the app for the crawl.\nIf none are provided, then the main launcher activity is launched.\nIf some are provided, then only those provided are launched (the main\nlauncher activity must be provided explicitly).", + "items": { + "$ref": "RoboStartingIntent" + }, + "type": "array" + } + }, + "type": "object" + }, + "AndroidRuntimeConfiguration": { + "description": "Configuration that can be selected at the time a test is run.", + "id": "AndroidRuntimeConfiguration", + "properties": { + "locales": { + "description": "The set of available locales.\n@OutputOnly", + "items": { + "$ref": "Locale" + }, + "type": "array" + }, + "orientations": { + "description": "The set of available orientations.\n@OutputOnly", + "items": { + "$ref": "Orientation" + }, + "type": "array" + } + }, + "type": "object" + }, + "AndroidTestLoop": { + "description": "A test of an Android Application with a Test Loop.\nThe intent \u003cintent-name\u003e will be implicitly added, since Games is the only\nuser of this api, for the time being.", + "id": "AndroidTestLoop", + "properties": { + "appApk": { + "$ref": "FileReference", + "description": "The APK for the application under test.\nRequired" + }, + "appPackageId": { + "description": "The java package for the application under test.\nOptional, default is determined by examining the application's manifest.", + "type": "string" + }, + "scenarioLabels": { + "description": "The list of scenario labels that should be run during the test.\nThe scenario labels should map to labels defined in the application's\nmanifest. For example, player_experience and\ncom.google.test.loops.player_experience add all of the loops labeled in the\nmanifest with the com.google.test.loops.player_experience name to the\nexecution.\nOptional. Scenarios can also be specified in the scenarios field.", + "items": { + "type": "string" + }, + "type": "array" + }, + "scenarios": { + "description": "The list of scenarios that should be run during the test.\nOptional, default is all test loops, derived from the application's\nmanifest.", + "items": { + "format": "int32", + "type": "integer" + }, + "type": "array" + } + }, + "type": "object" + }, + "AndroidVersion": { + "description": "A version of the Android OS", + "id": "AndroidVersion", + "properties": { + "apiLevel": { + "description": "The API level for this Android version.\nExamples: 18, 19\n@OutputOnly", + "format": "int32", + "type": "integer" + }, + "codeName": { + "description": "The code name for this Android version.\nExamples: \"JellyBean\", \"KitKat\"\n@OutputOnly", + "type": "string" + }, + "distribution": { + "$ref": "Distribution", + "description": "Market share for this version.\n@OutputOnly" + }, + "id": { + "description": "An opaque id for this Android version.\nUse this id to invoke the TestExecutionService.\n@OutputOnly", + "type": "string" + }, + "releaseDate": { + "$ref": "Date", + "description": "The date this Android version became available in the market.\n@OutputOnly" + }, + "tags": { + "description": "Tags for this dimension.\nExamples: \"default\", \"preview\", \"deprecated\"", + "items": { + "type": "string" + }, + "type": "array" + }, + "versionString": { + "description": "A string representing this version of the Android OS.\nExamples: \"4.3\", \"4.4\"\n@OutputOnly", "type": "string" } }, - "id": "EnvironmentVariable" + "type": "object" }, - "Environment": { - "description": "The environment in which the test is run.", - "type": "object", + "Apk": { + "description": "An Android package file to install.", + "id": "Apk", "properties": { - "androidDevice": { - "$ref": "AndroidDevice", - "description": "An Android device which must be used with an Android test." + "location": { + "$ref": "FileReference", + "description": "The path to an APK to be installed on the device before the test begins.\nOptional" + }, + "packageName": { + "description": "The java package for the APK to be installed.\nOptional, value is determined by examining the application's manifest.", + "type": "string" } }, - "id": "Environment" + "type": "object" }, - "TestExecution": { - "description": "Specifies a single test to be executed in a single environment.", - "type": "object", + "ApkDetail": { + "description": "Android application details based on application manifest and apk archive\ncontents", + "id": "ApkDetail", "properties": { - "timestamp": { - "description": "The time this test execution was initially created.\n@OutputOnly", - "format": "google-datetime", + "apkManifest": { + "$ref": "ApkManifest" + } + }, + "type": "object" + }, + "ApkManifest": { + "description": "An Android app manifest. See\nhttp://developer.android.com/guide/topics/manifest/manifest-intro.html", + "id": "ApkManifest", + "properties": { + "applicationLabel": { + "description": "User-readable name for the application.", "type": "string" }, - "testDetails": { - "$ref": "TestDetails", - "description": "Additional details about the running test.\n@OutputOnly" + "intentFilters": { + "items": { + "$ref": "IntentFilter" + }, + "type": "array" }, - "matrixId": { - "description": "Id of the containing TestMatrix.\n@OutputOnly", + "maxSdkVersion": { + "description": "Maximum API level on which the application is designed to run.", + "format": "int32", + "type": "integer" + }, + "minSdkVersion": { + "description": "Minimum API level required for the application to run.", + "format": "int32", + "type": "integer" + }, + "packageName": { + "description": "Full Java-style package name for this application, e.g.\n\"com.example.foo\".", "type": "string" - }, - "environment": { - "description": "How the host machine(s) are configured.\n@OutputOnly", - "$ref": "Environment" - }, - "state": { - "description": "Indicates the current progress of the test execution (e.g., FINISHED).\n@OutputOnly", - "type": "string", + } + }, + "type": "object" + }, + "CancelTestMatrixResponse": { + "description": "Response containing the current state of the specified test matrix.", + "id": "CancelTestMatrixResponse", + "properties": { + "testState": { + "description": "The current rolled-up state of the test matrix.\nIf this state is already final, then the cancelation request will\nhave no effect.", + "enum": [ + "TEST_STATE_UNSPECIFIED", + "VALIDATING", + "PENDING", + "RUNNING", + "FINISHED", + "ERROR", + "UNSUPPORTED_ENVIRONMENT", + "INCOMPATIBLE_ENVIRONMENT", + "INCOMPATIBLE_ARCHITECTURE", + "CANCELLED", + "INVALID" + ], "enumDescriptions": [ "Do not use. For proto versioning only.", "The execution or matrix is being validated.", @@ -332,6 +746,459 @@ "The user cancelled the execution.\n\nCan only be set on an execution.", "The execution or matrix was not run because the provided inputs are not\nvalid.\n\nExamples: input file is not of the expected type, is malformed/corrupt, or\nwas flagged as malware" ], + "type": "string" + } + }, + "type": "object" + }, + "ClientInfo": { + "description": "Information about the client which invoked the test.", + "id": "ClientInfo", + "properties": { + "clientInfoDetails": { + "description": "The list of detailed information about client.", + "items": { + "$ref": "ClientInfoDetail" + }, + "type": "array" + }, + "name": { + "description": "Client name, such as gcloud.\nRequired", + "type": "string" + } + }, + "type": "object" + }, + "ClientInfoDetail": { + "description": "Key-value pair of detailed information about the client which invoked the\ntest. For example {'Version', '1.0'}, {'Release Track', 'BETA'}", + "id": "ClientInfoDetail", + "properties": { + "key": { + "description": "The key of detailed client information.\nRequired", + "type": "string" + }, + "value": { + "description": "The value of detailed client information.\nRequired", + "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": { + "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" + }, + "month": { + "description": "Month of year. Must be from 1 to 12.", + "format": "int32", + "type": "integer" + }, + "year": { + "description": "Year of date. Must be from 1 to 9999, or 0 if specifying a date without\na year.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "DeviceFile": { + "description": "A single device file description.", + "id": "DeviceFile", + "properties": { + "obbFile": { + "$ref": "ObbFile", + "description": "A reference to an opaque binary blob file" + }, + "regularFile": { + "$ref": "RegularFile", + "description": "A reference to a regular file" + } + }, + "type": "object" + }, + "Distribution": { + "description": "Data about the relative number of devices running a\ngiven configuration of the Android platform.", + "id": "Distribution", + "properties": { + "marketShare": { + "description": "The estimated fraction (0-1) of the total market with this configuration.\n@OutputOnly", + "format": "double", + "type": "number" + }, + "measurementTime": { + "description": "The time this distribution was measured.\n@OutputOnly", + "format": "google-datetime", + "type": "string" + } + }, + "type": "object" + }, + "Environment": { + "description": "The environment in which the test is run.", + "id": "Environment", + "properties": { + "androidDevice": { + "$ref": "AndroidDevice", + "description": "An Android device which must be used with an Android test." + } + }, + "type": "object" + }, + "EnvironmentMatrix": { + "description": "The matrix of environments in which the test is to be executed.", + "id": "EnvironmentMatrix", + "properties": { + "androidDeviceList": { + "$ref": "AndroidDeviceList", + "description": "A list of Android devices; the test will be run only on the specified\ndevices." + }, + "androidMatrix": { + "$ref": "AndroidMatrix", + "description": "A matrix of Android devices." + } + }, + "type": "object" + }, + "EnvironmentVariable": { + "description": "A key-value pair passed as an environment variable to the test", + "id": "EnvironmentVariable", + "properties": { + "key": { + "description": "Key for the environment variable", + "type": "string" + }, + "value": { + "description": "Value for the environment variable", + "type": "string" + } + }, + "type": "object" + }, + "FileReference": { + "description": "A reference to a file, used for user inputs.", + "id": "FileReference", + "properties": { + "gcsPath": { + "description": "A path to a file in Google Cloud Storage.\nExample: gs://build-app-1414623860166/app-debug-unaligned.apk", + "type": "string" + } + }, + "type": "object" + }, + "GetApkDetailsResponse": { + "description": "Response containing the details of the specified Android application APK.", + "id": "GetApkDetailsResponse", + "properties": { + "apkDetail": { + "$ref": "ApkDetail", + "description": "Details of the Android APK." + } + }, + "type": "object" + }, + "GoogleAuto": { + "description": "Enables automatic Google account login.\nIf set, the service will automatically generate a Google test account and add\nit to the device, before executing the test. Note that test accounts might be\nreused.\nMany applications show their full set of functionalities when an account is\npresent on the device. Logging into the device with these generated accounts\nallows testing more functionalities.", + "id": "GoogleAuto", + "properties": {}, + "type": "object" + }, + "GoogleCloudStorage": { + "description": "A storage location within Google cloud storage (GCS).", + "id": "GoogleCloudStorage", + "properties": { + "gcsPath": { + "description": "The path to a directory in GCS that will\neventually contain the results for this test.\nThe requesting user must have write access on the bucket in the supplied\npath.\nRequired", + "type": "string" + } + }, + "type": "object" + }, + "IntentFilter": { + "description": "The \u003cintent-filter\u003e section of an \u003cactivity\u003e tag.\nhttps://developer.android.com/guide/topics/manifest/intent-filter-element.html", + "id": "IntentFilter", + "properties": { + "actionNames": { + "description": "The android:name value of the \u003caction\u003e tag", + "items": { + "type": "string" + }, + "type": "array" + }, + "categoryNames": { + "description": "The android:name value of the \u003ccategory\u003e tag", + "items": { + "type": "string" + }, + "type": "array" + }, + "mimeType": { + "description": "The android:mimeType value of the \u003cdata\u003e tag", + "type": "string" + } + }, + "type": "object" + }, + "LauncherActivityIntent": { + "description": "Specifies an intent that starts the main launcher activity.", + "id": "LauncherActivityIntent", + "properties": {}, + "type": "object" + }, + "Locale": { + "description": "A location/region designation for language.", + "id": "Locale", + "properties": { + "id": { + "description": "The id for this locale.\nExample: \"en_US\"\n@OutputOnly", + "type": "string" + }, + "name": { + "description": "A human-friendly name for this language/locale.\nExample: \"English\"\n@OutputOnly", + "type": "string" + }, + "region": { + "description": "A human-friendly string representing the region for this locale.\nExample: \"United States\"\nNot present for every locale.\n@OutputOnly", + "type": "string" + }, + "tags": { + "description": "Tags for this dimension.\nExamples: \"default\"", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "NetworkConfiguration": { + "id": "NetworkConfiguration", + "properties": { + "downRule": { + "$ref": "TrafficRule", + "description": "The emulation rule applying to the download traffic" + }, + "id": { + "description": "The unique opaque id for this network traffic configuration\n@OutputOnly", + "type": "string" + }, + "upRule": { + "$ref": "TrafficRule", + "description": "The emulation rule applying to the upload traffic" + } + }, + "type": "object" + }, + "NetworkConfigurationCatalog": { + "id": "NetworkConfigurationCatalog", + "properties": { + "configurations": { + "items": { + "$ref": "NetworkConfiguration" + }, + "type": "array" + } + }, + "type": "object" + }, + "ObbFile": { + "description": "An opaque binary blob file to install on the device before the test starts", + "id": "ObbFile", + "properties": { + "obb": { + "$ref": "FileReference", + "description": "Opaque Binary Blob (OBB) file(s) to install on the device\nRequired" + }, + "obbFileName": { + "description": "OBB file name which must conform to the format as specified by\nAndroid\ne.g. [main|patch].0300110.com.example.android.obb\nwhich will be installed into\n \u003cshared-storage\u003e/Android/obb/\u003cpackage-name\u003e/\non the device\nRequired", + "type": "string" + } + }, + "type": "object" + }, + "Orientation": { + "description": "Screen orientation of the device.", + "id": "Orientation", + "properties": { + "id": { + "description": "The id for this orientation.\nExample: \"portrait\"\n@OutputOnly", + "type": "string" + }, + "name": { + "description": "A human-friendly name for this orientation.\nExample: \"portrait\"\n@OutputOnly", + "type": "string" + }, + "tags": { + "description": "Tags for this dimension.\nExamples: \"default\"", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "RegularFile": { + "description": "A file or directory to install on the device before the test starts", + "id": "RegularFile", + "properties": { + "content": { + "$ref": "FileReference", + "description": "Required" + }, + "devicePath": { + "description": "Where to put the content on the device. Must be an absolute, whitelisted\npath. If the file exists, it will be replaced.\nThe following device-side directories and any of their subdirectories are\nwhitelisted:\n\u003cp\u003e${EXTERNAL_STORAGE}, or /sdcard\u003c/p\u003e\n\u003cp\u003e${ANDROID_DATA}/local/tmp, or /data/local/tmp\u003c/p\u003e\n\u003cp\u003eSpecifying a path outside of these directory trees is invalid.\n\n\u003cp\u003e The paths /sdcard and /data will be made available and treated as\nimplicit path substitutions. E.g. if /sdcard on a particular device does\nnot map to external storage, the system will replace it with the external\nstorage path prefix for that device and copy the file there.\n\n\u003cp\u003e It is strongly advised to use the \u003ca href=\n\"http://developer.android.com/reference/android/os/Environment.html\"\u003e\nEnvironment API\u003c/a\u003e in app and test code to access files on the device in a\nportable way.\nRequired", + "type": "string" + } + }, + "type": "object" + }, + "ResultStorage": { + "description": "Locations where the results of running the test are stored.", + "id": "ResultStorage", + "properties": { + "googleCloudStorage": { + "$ref": "GoogleCloudStorage", + "description": "Required." + }, + "toolResultsExecution": { + "$ref": "ToolResultsExecution", + "description": "The tool results execution that results are written to.\n@OutputOnly" + }, + "toolResultsHistory": { + "$ref": "ToolResultsHistory", + "description": "The tool results history that contains the tool results execution that\nresults are written to.\n\nOptional, if not provided the service will choose an appropriate value." + } + }, + "type": "object" + }, + "RoboDirective": { + "description": "Directs Robo to interact with a specific UI element if it is encountered\nduring the crawl. Currently, Robo can perform text entry or element click.", + "id": "RoboDirective", + "properties": { + "actionType": { + "description": "The type of action that Robo should perform on the specified element.\nRequired.", + "enum": [ + "ACTION_TYPE_UNSPECIFIED", + "SINGLE_CLICK", + "ENTER_TEXT" + ], + "enumDescriptions": [ + "DO NOT USE. For proto versioning only.", + "Direct Robo to click on the specified element. No-op if specified element\nis not clickable.", + "Direct Robo to enter text on the specified element. No-op if specified\nelement is not enabled or does not allow text entry." + ], + "type": "string" + }, + "inputText": { + "description": "The text that Robo is directed to set. If left empty, the directive will be\ntreated as a CLICK on the element matching the resource_name.\nOptional", + "type": "string" + }, + "resourceName": { + "description": "The android resource name of the target UI element\nFor example,\n in Java: R.string.foo\n in xml: @string/foo\nOnly the “foo” part is needed.\nReference doc:\nhttps://developer.android.com/guide/topics/resources/accessing-resources.html\nRequired", + "type": "string" + } + }, + "type": "object" + }, + "RoboStartingIntent": { + "description": "Message for specifying the start activities to crawl", + "id": "RoboStartingIntent", + "properties": { + "launcherActivity": { + "$ref": "LauncherActivityIntent" + }, + "startActivity": { + "$ref": "StartActivityIntent" + } + }, + "type": "object" + }, + "StartActivityIntent": { + "description": "A starting intent specified by an action, uri, and categories.", + "id": "StartActivityIntent", + "properties": { + "action": { + "description": "Action name.\nRequired for START_ACTIVITY.", + "type": "string" + }, + "categories": { + "description": "Intent categories to set on the intent.\nOptional.", + "items": { + "type": "string" + }, + "type": "array" + }, + "uri": { + "description": "URI for the action.\nOptional.", + "type": "string" + } + }, + "type": "object" + }, + "TestDetails": { + "description": "Additional details about the progress of the running test.", + "id": "TestDetails", + "properties": { + "errorMessage": { + "description": "If the TestState is ERROR, then this string will contain human-readable\ndetails about the error.\n@OutputOnly", + "type": "string" + }, + "progressMessages": { + "description": "Human-readable, detailed descriptions of the test's progress.\nFor example: \"Provisioning a device\", \"Starting Test\".\n\nDuring the course of execution new data may be appended\nto the end of progress_messages.\n@OutputOnly", + "items": { + "type": "string" + }, + "type": "array" + }, + "videoRecordingDisabled": { + "description": "Indicates that video will not be recorded for this execution either because\nthe user chose to disable it or the device does not support it.\nSee AndroidModel.video_recording_not_supported\n@OutputOnly", + "type": "boolean" + } + }, + "type": "object" + }, + "TestEnvironmentCatalog": { + "description": "A description of a test environment.", + "id": "TestEnvironmentCatalog", + "properties": { + "androidDeviceCatalog": { + "$ref": "AndroidDeviceCatalog", + "description": "Android devices suitable for running Android Instrumentation Tests." + }, + "networkConfigurationCatalog": { + "$ref": "NetworkConfigurationCatalog", + "description": "Supported network configurations" + } + }, + "type": "object" + }, + "TestExecution": { + "description": "Specifies a single test to be executed in a single environment.", + "id": "TestExecution", + "properties": { + "environment": { + "$ref": "Environment", + "description": "How the host machine(s) are configured.\n@OutputOnly" + }, + "id": { + "description": "Unique id set by the backend.\n@OutputOnly", + "type": "string" + }, + "matrixId": { + "description": "Id of the containing TestMatrix.\n@OutputOnly", + "type": "string" + }, + "projectId": { + "description": "The cloud project that owns the test execution.\n@OutputOnly", + "type": "string" + }, + "state": { + "description": "Indicates the current progress of the test execution (e.g., FINISHED).\n@OutputOnly", "enum": [ "TEST_STATE_UNSPECIFIED", "VALIDATING", @@ -344,340 +1211,56 @@ "INCOMPATIBLE_ARCHITECTURE", "CANCELLED", "INVALID" - ] + ], + "enumDescriptions": [ + "Do not use. For proto versioning only.", + "The execution or matrix is being validated.", + "The execution or matrix is waiting for resources to become available.", + "The execution is currently being processed.\n\nCan only be set on an execution.", + "The execution or matrix has terminated normally.\n\nOn a matrix this means that the matrix level processing completed normally,\nbut individual executions may be in an ERROR state.", + "The execution or matrix has stopped because it encountered an\ninfrastructure failure.", + "The execution was not run because it corresponds to a unsupported\nenvironment.\n\nCan only be set on an execution.", + "The execution was not run because the provided inputs are incompatible with\nthe requested environment.\n\nExample: requested AndroidVersion is lower than APK's minSdkVersion\n\nCan only be set on an execution.", + "The execution was not run because the provided inputs are incompatible with\nthe requested architecture.\n\nExample: requested device does not support running the native code in\nthe supplied APK\n\nCan only be set on an execution.", + "The user cancelled the execution.\n\nCan only be set on an execution.", + "The execution or matrix was not run because the provided inputs are not\nvalid.\n\nExamples: input file is not of the expected type, is malformed/corrupt, or\nwas flagged as malware" + ], + "type": "string" }, - "toolResultsStep": { - "description": "Where the results for this execution are written.\n@OutputOnly", - "$ref": "ToolResultsStep" + "testDetails": { + "$ref": "TestDetails", + "description": "Additional details about the running test.\n@OutputOnly" }, "testSpecification": { "$ref": "TestSpecification", "description": "How to run the test.\n@OutputOnly" }, - "projectId": { - "description": "The cloud project that owns the test execution.\n@OutputOnly", + "timestamp": { + "description": "The time this test execution was initially created.\n@OutputOnly", + "format": "google-datetime", "type": "string" }, - "id": { - "description": "Unique id set by the backend.\n@OutputOnly", - "type": "string" + "toolResultsStep": { + "$ref": "ToolResultsStep", + "description": "Where the results for this execution are written.\n@OutputOnly" } }, - "id": "TestExecution" - }, - "GoogleCloudStorage": { - "description": "A storage location within Google cloud storage (GCS).", - "type": "object", - "properties": { - "gcsPath": { - "description": "The path to a directory in GCS that will\neventually contain the results for this test.\nThe requesting user must have write access on the bucket in the supplied\npath.\nRequired", - "type": "string" - } - }, - "id": "GoogleCloudStorage" - }, - "RoboDirective": { - "description": "Directs Robo to interact with a specific UI element if it is encountered\nduring the crawl. Currently, Robo can perform text entry or element click.", - "type": "object", - "properties": { - "resourceName": { - "description": "The android resource name of the target UI element\nFor example,\n in Java: R.string.foo\n in xml: @string/foo\nOnly the “foo” part is needed.\nReference doc:\nhttps://developer.android.com/guide/topics/resources/accessing-resources.html\nRequired", - "type": "string" - }, - "inputText": { - "description": "The text that Robo is directed to set. If left empty, the directive will be\ntreated as a CLICK on the element matching the resource_name.\nOptional", - "type": "string" - }, - "actionType": { - "enumDescriptions": [ - "DO NOT USE. For proto versioning only.", - "Direct Robo to click on the specified element. No-op if specified element\nis not clickable.", - "Direct Robo to enter text on the specified element. No-op if specified\nelement is not enabled or does not allow text entry." - ], - "enum": [ - "ACTION_TYPE_UNSPECIFIED", - "SINGLE_CLICK", - "ENTER_TEXT" - ], - "description": "The type of action that Robo should perform on the specified element.\nRequired.", - "type": "string" - } - }, - "id": "RoboDirective" - }, - "AndroidMatrix": { - "description": "A set of Android device configuration permutations is defined by the\nthe cross-product of the given axes. Internally, the given AndroidMatrix\nwill be expanded into a set of AndroidDevices.\n\nOnly supported permutations will be instantiated. Invalid permutations\n(e.g., incompatible models/versions) are ignored.", - "type": "object", - "properties": { - "orientations": { - "description": "The set of orientations to test with.\nUse the EnvironmentDiscoveryService to get supported options.\nRequired", - "type": "array", - "items": { - "type": "string" - } - }, - "androidVersionIds": { - "description": "The ids of the set of Android OS version to be used.\nUse the EnvironmentDiscoveryService to get supported options.\nRequired", - "type": "array", - "items": { - "type": "string" - } - }, - "locales": { - "description": "The set of locales the test device will enable for testing.\nUse the EnvironmentDiscoveryService to get supported options.\nRequired", - "type": "array", - "items": { - "type": "string" - } - }, - "androidModelIds": { - "description": "The ids of the set of Android device to be used.\nUse the EnvironmentDiscoveryService to get supported options.\nRequired", - "type": "array", - "items": { - "type": "string" - } - } - }, - "id": "AndroidMatrix" - }, - "AndroidModel": { - "description": "A description of an Android device tests may be run on.", - "type": "object", - "properties": { - "name": { - "description": "The human-readable marketing name for this device model.\nExamples: \"Nexus 5\", \"Galaxy S5\"\n@OutputOnly", - "type": "string" - }, - "tags": { - "description": "Tags for this dimension.\nExamples: \"default\", \"preview\", \"deprecated\"", - "type": "array", - "items": { - "type": "string" - } - }, - "id": { - "description": "The unique opaque id for this model.\nUse this for invoking the TestExecutionService.\n@OutputOnly", - "type": "string" - }, - "manufacturer": { - "description": "The manufacturer of this device.\n@OutputOnly", - "type": "string" - }, - "brand": { - "description": "The company that this device is branded with.\nExample: \"Google\", \"Samsung\"\n@OutputOnly", - "type": "string" - }, - "screenX": { - "description": "Screen size in the horizontal (X) dimension measured in pixels.\n@OutputOnly", - "format": "int32", - "type": "integer" - }, - "codename": { - "description": "The name of the industrial design.\nThis corresponds to android.os.Build.DEVICE\n@OutputOnly", - "type": "string" - }, - "screenY": { - "description": "Screen size in the vertical (Y) dimension measured in pixels.\n@OutputOnly", - "format": "int32", - "type": "integer" - }, - "form": { - "enum": [ - "DEVICE_FORM_UNSPECIFIED", - "VIRTUAL", - "PHYSICAL" - ], - "description": "Whether this device is virtual or physical.\n@OutputOnly", - "type": "string", - "enumDescriptions": [ - "Do not use. For proto versioning only.", - "A software stack that simulates the device", - "Actual hardware" - ] - }, - "screenDensity": { - "description": "Screen density in DPI.\nThis corresponds to ro.sf.lcd_density\n@OutputOnly", - "format": "int32", - "type": "integer" - }, - "supportedVersionIds": { - "description": "The set of Android versions this device supports.\n@OutputOnly", - "type": "array", - "items": { - "type": "string" - } - }, - "supportedAbis": { - "description": "The list of supported ABIs for this device.\nThis corresponds to either android.os.Build.SUPPORTED_ABIS (for API level\n21 and above) or android.os.Build.CPU_ABI/CPU_ABI2.\nThe most preferred ABI is the first element in the list.\n\nElements are optionally prefixed by \"version_id:\" (where version_id is\nthe id of an AndroidVersion), denoting an ABI that is supported only on\na particular version.\n@OutputOnly", - "type": "array", - "items": { - "type": "string" - } - } - }, - "id": "AndroidModel" - }, - "TestSetup": { - "description": "A description of how to set up the device prior to running the test", - "type": "object", - "properties": { - "directoriesToPull": { - "description": "List of directories on the device to upload to GCS at the end of the test;\nthey must be absolute paths under /sdcard or /data/local/tmp.\nPath names are restricted to characters a-z A-Z 0-9 _ - . + and /\n\nNote: The paths /sdcard and /data will be made available and treated as\nimplicit path substitutions. E.g. if /sdcard on a particular device does\nnot map to external storage, the system will replace it with the external\nstorage path prefix for that device.\n\nOptional", - "type": "array", - "items": { - "type": "string" - } - }, - "filesToPush": { - "description": "List of files to push to the device before starting the test.\n\nOptional", - "type": "array", - "items": { - "$ref": "DeviceFile" - } - }, - "networkProfile": { - "description": "The network traffic profile used for running the test.\nOptional", - "type": "string" - }, - "environmentVariables": { - "description": "Environment variables to set for the test (only applicable for\ninstrumentation tests).", - "type": "array", - "items": { - "$ref": "EnvironmentVariable" - } - }, - "account": { - "description": "The device will be logged in on this account for the duration of the test.\nOptional", - "$ref": "Account" - } - }, - "id": "TestSetup" - }, - "TestSpecification": { - "properties": { - "autoGoogleLogin": { - "description": "Enables automatic Google account login.\nIf set, the service will automatically generate a Google test account and\nadd it to the device, before executing the test. Note that test accounts\nmight be reused.\nMany applications show their full set of functionalities when an account is\npresent on the device. Logging into the device with these generated\naccounts allows testing more functionalities.\nDefault is false.\nOptional", - "type": "boolean" - }, - "testSetup": { - "$ref": "TestSetup", - "description": "Test setup requirements e.g. files to install, bootstrap scripts\nOptional" - }, - "androidRoboTest": { - "$ref": "AndroidRoboTest", - "description": "An Android robo test." - }, - "androidTestLoop": { - "description": "An Android Application with a Test Loop", - "$ref": "AndroidTestLoop" - }, - "androidInstrumentationTest": { - "$ref": "AndroidInstrumentationTest", - "description": "An Android instrumentation test." - }, - "disablePerformanceMetrics": { - "description": "Disables performance metrics recording; may reduce test latency.", - "type": "boolean" - }, - "disableVideoRecording": { - "description": "Disables video recording; may reduce test latency.", - "type": "boolean" - }, - "testTimeout": { - "description": "Max time a test execution is allowed to run before it is\nautomatically cancelled.\nOptional, default is 5 min.", - "format": "google-duration", - "type": "string" - } - }, - "id": "TestSpecification", - "description": "A description of how to run the test.", "type": "object" }, - "ResultStorage": { - "description": "Locations where the results of running the test are stored.", - "type": "object", - "properties": { - "toolResultsHistory": { - "description": "The tool results history that contains the tool results execution that\nresults are written to.\n\nOptional, if not provided the service will choose an appropriate value.", - "$ref": "ToolResultsHistory" - }, - "googleCloudStorage": { - "$ref": "GoogleCloudStorage", - "description": "Required." - }, - "toolResultsExecution": { - "$ref": "ToolResultsExecution", - "description": "The tool results execution that results are written to.\n@OutputOnly" - } - }, - "id": "ResultStorage" - }, "TestMatrix": { "description": "A group of one or more TestExecutions, built by taking a\nproduct of values over a pre-defined set of axes.", - "type": "object", + "id": "TestMatrix", "properties": { - "projectId": { - "description": "The cloud project that owns the test matrix.\n@OutputOnly", - "type": "string" - }, - "testSpecification": { - "$ref": "TestSpecification", - "description": "How to run the test.\nRequired" - }, "clientInfo": { "$ref": "ClientInfo", "description": "Information about the client which invoked the test.\nOptional" }, - "testExecutions": { - "description": "The list of test executions that the service creates for this matrix.\n@OutputOnly", - "type": "array", - "items": { - "$ref": "TestExecution" - } - }, - "timestamp": { - "description": "The time this test matrix was initially created.\n@OutputOnly", - "format": "google-datetime", - "type": "string" - }, "environmentMatrix": { - "description": "How the host machine(s) are configured.\nRequired", - "$ref": "EnvironmentMatrix" - }, - "testMatrixId": { - "description": "Unique id set by the service.\n@OutputOnly", - "type": "string" - }, - "resultStorage": { - "description": "Where the results for the matrix are written.\nRequired", - "$ref": "ResultStorage" + "$ref": "EnvironmentMatrix", + "description": "How the host machine(s) are configured.\nRequired" }, "invalidMatrixDetails": { "description": "Describes why the matrix is considered invalid.\nOnly useful for matrices in the INVALID state.\n@OutputOnly", - "type": "string", - "enumDescriptions": [ - "Do not use. For proto versioning only.", - "The matrix is INVALID, but there are no further details available.", - "The input app APK could not be parsed.", - "The input test APK could not be parsed.", - "The AndroidManifest.xml could not be found.", - "The APK manifest does not declare a package name.", - "The test package and app package are the same.", - "The test apk does not declare an instrumentation.", - "The input app apk does not have a signature.", - "The test runner class specified by user or in the test APK's manifest file\nis not compatible with Android Test Orchestrator.\nOrchestrator is only compatible with AndroidJUnitRunner version 1.0 or\nhigher.\nOrchestrator can be disabled by using DO_NOT_USE_ORCHESTRATOR\nOrchestratorOption.", - "The test APK does not contain the test runner class specified by user or in\nthe manifest file.\nThis can be caused by either of the following reasons:\n- the user provided a runner class name that's incorrect, or\n- the test runner isn't built into the test APK (might be in the app APK\ninstead).", - "A main launcher activity could not be found.", - "The app declares one or more permissions that are not allowed.", - "There is a conflict in the provided robo_directives.", - "There there is no test loop intent filter, or the one that is given is\nnot formatted correctly.", - "The request contains a scenario label that was not declared in the\nmanifest.", - "There was an error when parsing a label's value.", - "The request contains a scenario number that was not declared in the\nmanifest.", - "Device administrator applications are not allowed.", - "The APK is marked as \"testOnly\".", - "The input IPA could not be parsed." - ], "enum": [ "INVALID_MATRIX_DETAILS_UNSPECIFIED", "DETAILS_UNAVAILABLE", @@ -699,10 +1282,43 @@ "SCENARIO_NOT_DECLARED", "DEVICE_ADMIN_RECEIVER", "TEST_ONLY_APK", - "MALFORMED_IPA" - ] + "NO_CODE_APK" + ], + "enumDescriptions": [ + "Do not use. For proto versioning only.", + "The matrix is INVALID, but there are no further details available.", + "The input app APK could not be parsed.", + "The input test APK could not be parsed.", + "The AndroidManifest.xml could not be found.", + "The APK manifest does not declare a package name.", + "The test package and app package are the same.", + "The test apk does not declare an instrumentation.", + "The input app apk does not have a signature.", + "The test runner class specified by user or in the test APK's manifest file\nis not compatible with Android Test Orchestrator.\nOrchestrator is only compatible with AndroidJUnitRunner version 1.0 or\nhigher.\nOrchestrator can be disabled by using DO_NOT_USE_ORCHESTRATOR\nOrchestratorOption.", + "The test APK does not contain the test runner class specified by user or in\nthe manifest file.\nThis can be caused by either of the following reasons:\n- the user provided a runner class name that's incorrect, or\n- the test runner isn't built into the test APK (might be in the app APK\ninstead).", + "A main launcher activity could not be found.", + "The app declares one or more permissions that are not allowed.", + "There is a conflict in the provided robo_directives.", + "There there is no test loop intent filter, or the one that is given is\nnot formatted correctly.", + "The request contains a scenario label that was not declared in the\nmanifest.", + "There was an error when parsing a label's value.", + "The request contains a scenario number that was not declared in the\nmanifest.", + "Device administrator applications are not allowed.", + "The APK is marked as \"testOnly\".\nNOT USED", + "APK contains no code.\nSee also\nhttps://developer.android.com/guide/topics/manifest/application-element.html#code" + ], + "type": "string" + }, + "projectId": { + "description": "The cloud project that owns the test matrix.\n@OutputOnly", + "type": "string" + }, + "resultStorage": { + "$ref": "ResultStorage", + "description": "Where the results for the matrix are written.\nRequired" }, "state": { + "description": "Indicates the current progress of the test matrix (e.g., FINISHED)\n@OutputOnly", "enum": [ "TEST_STATE_UNSPECIFIED", "VALIDATING", @@ -716,8 +1332,6 @@ "CANCELLED", "INVALID" ], - "description": "Indicates the current progress of the test matrix (e.g., FINISHED)\n@OutputOnly", - "type": "string", "enumDescriptions": [ "Do not use. For proto versioning only.", "The execution or matrix is being validated.", @@ -730,583 +1344,178 @@ "The execution was not run because the provided inputs are incompatible with\nthe requested architecture.\n\nExample: requested device does not support running the native code in\nthe supplied APK\n\nCan only be set on an execution.", "The user cancelled the execution.\n\nCan only be set on an execution.", "The execution or matrix was not run because the provided inputs are not\nvalid.\n\nExamples: input file is not of the expected type, is malformed/corrupt, or\nwas flagged as malware" - ] + ], + "type": "string" + }, + "testExecutions": { + "description": "The list of test executions that the service creates for this matrix.\n@OutputOnly", + "items": { + "$ref": "TestExecution" + }, + "type": "array" + }, + "testMatrixId": { + "description": "Unique id set by the service.\n@OutputOnly", + "type": "string" + }, + "testSpecification": { + "$ref": "TestSpecification", + "description": "How to run the test.\nRequired" + }, + "timestamp": { + "description": "The time this test matrix was initially created.\n@OutputOnly", + "format": "google-datetime", + "type": "string" } }, - "id": "TestMatrix" + "type": "object" }, - "AndroidVersion": { - "description": "A version of the Android OS", - "type": "object", + "TestSetup": { + "description": "A description of how to set up the Android device prior to running the test.", + "id": "TestSetup", "properties": { - "tags": { - "description": "Tags for this dimension.\nExamples: \"default\", \"preview\", \"deprecated\"", - "type": "array", + "account": { + "$ref": "Account", + "description": "The device will be logged in on this account for the duration of the test.\nOptional" + }, + "additionalApks": { + "description": "APKs to install in addition to those being directly tested.\nCurrently capped at 100.\nOptional", + "items": { + "$ref": "Apk" + }, + "type": "array" + }, + "directoriesToPull": { + "description": "List of directories on the device to upload to GCS at the end of the test;\nthey must be absolute paths under /sdcard or /data/local/tmp.\nPath names are restricted to characters a-z A-Z 0-9 _ - . + and /\n\nNote: The paths /sdcard and /data will be made available and treated as\nimplicit path substitutions. E.g. if /sdcard on a particular device does\nnot map to external storage, the system will replace it with the external\nstorage path prefix for that device.\n\nOptional", "items": { "type": "string" - } + }, + "type": "array" }, - "id": { - "description": "An opaque id for this Android version.\nUse this id to invoke the TestExecutionService.\n@OutputOnly", - "type": "string" - }, - "releaseDate": { - "$ref": "Date", - "description": "The date this Android version became available in the market.\n@OutputOnly" - }, - "versionString": { - "description": "A string representing this version of the Android OS.\nExamples: \"4.3\", \"4.4\"\n@OutputOnly", - "type": "string" - }, - "codeName": { - "description": "The code name for this Android version.\nExamples: \"JellyBean\", \"KitKat\"\n@OutputOnly", - "type": "string" - }, - "apiLevel": { - "description": "The API level for this Android version.\nExamples: 18, 19\n@OutputOnly", - "format": "int32", - "type": "integer" - }, - "distribution": { - "$ref": "Distribution", - "description": "Market share for this version.\n@OutputOnly" - } - }, - "id": "AndroidVersion" - }, - "FileReference": { - "description": "A reference to a file, used for user inputs.", - "type": "object", - "properties": { - "gcsPath": { - "description": "A path to a file in Google Cloud Storage.\nExample: gs://build-app-1414623860166/app-debug-unaligned.apk", - "type": "string" - } - }, - "id": "FileReference" - }, - "LauncherActivityIntent": { - "description": "Specifies an intent that starts the main launcher activity.", - "type": "object", - "properties": {}, - "id": "LauncherActivityIntent" - }, - "TestDetails": { - "properties": { - "errorMessage": { - "description": "If the TestState is ERROR, then this string will contain human-readable\ndetails about the error.\n@OutputOnly", - "type": "string" - }, - "progressMessages": { - "description": "Human-readable, detailed descriptions of the test's progress.\nFor example: \"Provisioning a device\", \"Starting Test\".\n\nDuring the course of execution new data may be appended\nto the end of progress_messages.\n@OutputOnly", - "type": "array", + "environmentVariables": { + "description": "Environment variables to set for the test (only applicable for\ninstrumentation tests).", "items": { - "type": "string" - } + "$ref": "EnvironmentVariable" + }, + "type": "array" + }, + "filesToPush": { + "description": "List of files to push to the device before starting the test.\n\nOptional", + "items": { + "$ref": "DeviceFile" + }, + "type": "array" + }, + "networkProfile": { + "description": "The network traffic profile used for running the test.\nOptional", + "type": "string" + } + }, + "type": "object" + }, + "TestSpecification": { + "description": "A description of how to run the test.", + "id": "TestSpecification", + "properties": { + "androidInstrumentationTest": { + "$ref": "AndroidInstrumentationTest", + "description": "An Android instrumentation test." + }, + "androidRoboTest": { + "$ref": "AndroidRoboTest", + "description": "An Android robo test." + }, + "androidTestLoop": { + "$ref": "AndroidTestLoop", + "description": "An Android Application with a Test Loop" + }, + "autoGoogleLogin": { + "description": "Enables automatic Google account login.\nIf set, the service will automatically generate a Google test account and\nadd it to the device, before executing the test. Note that test accounts\nmight be reused.\nMany applications show their full set of functionalities when an account is\npresent on the device. Logging into the device with these generated\naccounts allows testing more functionalities.\nDefault is false.\nOptional", + "type": "boolean" + }, + "disablePerformanceMetrics": { + "description": "Disables performance metrics recording; may reduce test latency.", + "type": "boolean" + }, + "disableVideoRecording": { + "description": "Disables video recording; may reduce test latency.", + "type": "boolean" + }, + "testSetup": { + "$ref": "TestSetup", + "description": "Test setup requirements for Android e.g. files to install, bootstrap\nscripts.\nOptional" + }, + "testTimeout": { + "description": "Max time a test execution is allowed to run before it is\nautomatically cancelled.\nOptional, default is 5 min.", + "format": "google-duration", + "type": "string" } }, - "id": "TestDetails", - "description": "Additional details about the progress of the running test.", "type": "object" }, "ToolResultsExecution": { "description": "Represents a tool results execution resource.\n\nThis has the results of a TestMatrix.", - "type": "object", + "id": "ToolResultsExecution", "properties": { "executionId": { "description": "A tool results execution ID.\n@OutputOnly", "type": "string" }, - "projectId": { - "description": "The cloud project that owns the tool results execution.\n@OutputOnly", - "type": "string" - }, "historyId": { "description": "A tool results history ID.\n@OutputOnly", "type": "string" - } - }, - "id": "ToolResultsExecution" - }, - "Distribution": { - "description": "Data about the relative number of devices running a\ngiven configuration of the Android platform.", - "type": "object", - "properties": { - "marketShare": { - "description": "The estimated fraction (0-1) of the total market with this configuration.\n@OutputOnly", - "format": "double", - "type": "number" }, - "measurementTime": { - "description": "The time this distribution was measured.\n@OutputOnly", - "format": "google-datetime", + "projectId": { + "description": "The cloud project that owns the tool results execution.\n@OutputOnly", "type": "string" } }, - "id": "Distribution" - }, - "AndroidRoboTest": { - "description": "A test of an android application that explores the application on a virtual\nor physical Android Device, finding culprits and crashes as it goes.", - "type": "object", - "properties": { - "appApk": { - "description": "The APK for the application under test.\nRequired", - "$ref": "FileReference" - }, - "appPackageId": { - "description": "The java package for the application under test.\nOptional, default is determined by examining the application's manifest.", - "type": "string" - }, - "startingIntents": { - "description": "The intents used to launch the app for the crawl.\nIf none are provided, then the main launcher activity is launched.\nIf some are provided, then only those provided are launched (the main\nlauncher activity must be provided explicitly).", - "type": "array", - "items": { - "$ref": "RoboStartingIntent" - } - }, - "maxSteps": { - "description": "The max number of steps Robo can execute.\nDefault is no limit.\nOptional", - "format": "int32", - "type": "integer" - }, - "appInitialActivity": { - "description": "The initial activity that should be used to start the app.\nOptional", - "type": "string" - }, - "roboDirectives": { - "description": "A set of directives Robo should apply during the crawl.\nThis allows users to customize the crawl. For example, the username and\npassword for a test account can be provided.\nOptional", - "type": "array", - "items": { - "$ref": "RoboDirective" - } - }, - "maxDepth": { - "description": "The max depth of the traversal stack Robo can explore. Needs to be at least\n2 to make Robo explore the app beyond the first activity.\nDefault is 50.\nOptional", - "format": "int32", - "type": "integer" - } - }, - "id": "AndroidRoboTest" + "type": "object" }, "ToolResultsHistory": { "description": "Represents a tool results history resource.", - "type": "object", + "id": "ToolResultsHistory", "properties": { - "projectId": { - "description": "The cloud project that owns the tool results history.\nRequired", - "type": "string" - }, "historyId": { "description": "A tool results history ID.\nRequired", "type": "string" + }, + "projectId": { + "description": "The cloud project that owns the tool results history.\nRequired", + "type": "string" } }, - "id": "ToolResultsHistory" - }, - "Orientation": { - "properties": { - "name": { - "description": "A human-friendly name for this orientation.\nExample: \"portrait\"\n@OutputOnly", - "type": "string" - }, - "id": { - "description": "The id for this orientation.\nExample: \"portrait\"\n@OutputOnly", - "type": "string" - }, - "tags": { - "description": "Tags for this dimension.\nExamples: \"default\"", - "type": "array", - "items": { - "type": "string" - } - } - }, - "id": "Orientation", - "description": "Screen orientation of the device.", "type": "object" }, - "AndroidTestLoop": { - "description": "A test of an Android Application with a Test Loop.\nThe intent \u003cintent-name\u003e will be implicitly added, since Games is the only\nuser of this api, for the time being.", - "type": "object", - "properties": { - "scenarios": { - "description": "The list of scenarios that should be run during the test.\nOptional, default is all test loops, derived from the application's\nmanifest.", - "type": "array", - "items": { - "format": "int32", - "type": "integer" - } - }, - "scenarioLabels": { - "description": "The list of scenario labels that should be run during the test.\nThe scenario labels should map to labels defined in the application's\nmanifest. For example, player_experience and\ncom.google.test.loops.player_experience add all of the loops labeled in the\nmanifest with the com.google.test.loops.player_experience name to the\nexecution.\nOptional. Scenarios can also be specified in the scenarios field.", - "type": "array", - "items": { - "type": "string" - } - }, - "appApk": { - "description": "The APK for the application under test.\nRequired", - "$ref": "FileReference" - }, - "appPackageId": { - "description": "The java package for the application under test.\nOptional, default is determined by examining the application's manifest.", - "type": "string" - } - }, - "id": "AndroidTestLoop" - }, - "NetworkConfigurationCatalog": { - "type": "object", - "properties": { - "configurations": { - "type": "array", - "items": { - "$ref": "NetworkConfiguration" - } - } - }, - "id": "NetworkConfigurationCatalog" - }, - "AndroidDeviceCatalog": { - "description": "The currently supported Android devices.", - "type": "object", - "properties": { - "versions": { - "description": "The set of supported Android OS versions.\n@OutputOnly", - "type": "array", - "items": { - "$ref": "AndroidVersion" - } - }, - "runtimeConfiguration": { - "$ref": "AndroidRuntimeConfiguration", - "description": "The set of supported runtime configurations.\n@OutputOnly" - }, - "models": { - "description": "The set of supported Android device models.\n@OutputOnly", - "type": "array", - "items": { - "$ref": "AndroidModel" - } - } - }, - "id": "AndroidDeviceCatalog" - }, - "GoogleAuto": { - "description": "Enables automatic Google account login.\nIf set, the service will automatically generate a Google test account and add\nit to the device, before executing the test. Note that test accounts might be\nreused.\nMany applications show their full set of functionalities when an account is\npresent on the device. Logging into the device with these generated accounts\nallows testing more functionalities.", - "type": "object", - "properties": {}, - "id": "GoogleAuto" - }, - "AndroidDeviceList": { - "description": "A list of Android device configurations in which the test is to be executed.", - "type": "object", - "properties": { - "androidDevices": { - "description": "A list of Android devices\nRequired", - "type": "array", - "items": { - "$ref": "AndroidDevice" - } - } - }, - "id": "AndroidDeviceList" - }, - "ClientInfo": { - "description": "Information about the client which invoked the test.", - "type": "object", - "properties": { - "clientInfoDetails": { - "description": "The list of detailed information about client.", - "type": "array", - "items": { - "$ref": "ClientInfoDetail" - } - }, - "name": { - "description": "Client name, such as gcloud.\nRequired", - "type": "string" - } - }, - "id": "ClientInfo" - }, - "EnvironmentMatrix": { - "properties": { - "androidDeviceList": { - "$ref": "AndroidDeviceList", - "description": "A list of Android devices; the test will be run only on the specified\ndevices." - }, - "androidMatrix": { - "description": "A matrix of Android devices.", - "$ref": "AndroidMatrix" - } - }, - "id": "EnvironmentMatrix", - "description": "The matrix of environments in which the test is to be executed.", - "type": "object" - }, - "CancelTestMatrixResponse": { - "properties": { - "testState": { - "enumDescriptions": [ - "Do not use. For proto versioning only.", - "The execution or matrix is being validated.", - "The execution or matrix is waiting for resources to become available.", - "The execution is currently being processed.\n\nCan only be set on an execution.", - "The execution or matrix has terminated normally.\n\nOn a matrix this means that the matrix level processing completed normally,\nbut individual executions may be in an ERROR state.", - "The execution or matrix has stopped because it encountered an\ninfrastructure failure.", - "The execution was not run because it corresponds to a unsupported\nenvironment.\n\nCan only be set on an execution.", - "The execution was not run because the provided inputs are incompatible with\nthe requested environment.\n\nExample: requested AndroidVersion is lower than APK's minSdkVersion\n\nCan only be set on an execution.", - "The execution was not run because the provided inputs are incompatible with\nthe requested architecture.\n\nExample: requested device does not support running the native code in\nthe supplied APK\n\nCan only be set on an execution.", - "The user cancelled the execution.\n\nCan only be set on an execution.", - "The execution or matrix was not run because the provided inputs are not\nvalid.\n\nExamples: input file is not of the expected type, is malformed/corrupt, or\nwas flagged as malware" - ], - "enum": [ - "TEST_STATE_UNSPECIFIED", - "VALIDATING", - "PENDING", - "RUNNING", - "FINISHED", - "ERROR", - "UNSUPPORTED_ENVIRONMENT", - "INCOMPATIBLE_ENVIRONMENT", - "INCOMPATIBLE_ARCHITECTURE", - "CANCELLED", - "INVALID" - ], - "description": "The current rolled-up state of the test matrix.\nIf this state is already final, then the cancelation request will\nhave no effect.", - "type": "string" - } - }, - "id": "CancelTestMatrixResponse", - "description": "Response containing the current state of the specified test matrix.", - "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`.", - "type": "object", - "properties": { - "year": { - "description": "Year of date. Must be from 1 to 9999, or 0 if specifying a date without\na year.", - "format": "int32", - "type": "integer" - }, - "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" - }, - "month": { - "description": "Month of year. Must be from 1 to 12.", - "format": "int32", - "type": "integer" - } - }, - "id": "Date" - }, - "RoboStartingIntent": { - "description": "Message for specifying the start activities to crawl", - "type": "object", - "properties": { - "startActivity": { - "$ref": "StartActivityIntent" - }, - "launcherActivity": { - "$ref": "LauncherActivityIntent" - } - }, - "id": "RoboStartingIntent" - }, - "StartActivityIntent": { - "description": "A starting intent specified by an action, uri, and categories.", - "type": "object", - "properties": { - "uri": { - "description": "URI for the action.\nOptional.", - "type": "string" - }, - "categories": { - "description": "Intent categories to set on the intent.\nOptional.", - "type": "array", - "items": { - "type": "string" - } - }, - "action": { - "description": "Action name.\nRequired for START_ACTIVITY.", - "type": "string" - } - }, - "id": "StartActivityIntent" - }, - "Account": { - "description": "Identifies an account and how to log into it", - "type": "object", - "properties": { - "googleAuto": { - "$ref": "GoogleAuto", - "description": "An automatic google login account" - } - }, - "id": "Account" - }, - "TestEnvironmentCatalog": { - "description": "A description of a test environment.", - "type": "object", - "properties": { - "androidDeviceCatalog": { - "description": "Android devices suitable for running Android Instrumentation Tests.", - "$ref": "AndroidDeviceCatalog" - }, - "networkConfigurationCatalog": { - "description": "Supported network configurations", - "$ref": "NetworkConfigurationCatalog" - } - }, - "id": "TestEnvironmentCatalog" - }, - "Locale": { - "description": "A location/region designation for language.", - "type": "object", - "properties": { - "name": { - "description": "A human-friendly name for this language/locale.\nExample: \"English\"\n@OutputOnly", - "type": "string" - }, - "id": { - "description": "The id for this locale.\nExample: \"en_US\"\n@OutputOnly", - "type": "string" - }, - "tags": { - "description": "Tags for this dimension.\nExamples: \"default\"", - "type": "array", - "items": { - "type": "string" - } - }, - "region": { - "description": "A human-friendly string representing the region for this locale.\nExample: \"United States\"\nNot present for every locale.\n@OutputOnly", - "type": "string" - } - }, - "id": "Locale" - }, - "ObbFile": { - "description": "An opaque binary blob file to install on the device before the test starts", - "type": "object", - "properties": { - "obb": { - "$ref": "FileReference", - "description": "Opaque Binary Blob (OBB) file(s) to install on the device\nRequired" - }, - "obbFileName": { - "description": "OBB file name which must conform to the format as specified by\nAndroid\ne.g. [main|patch].0300110.com.example.android.obb\nwhich will be installed into\n \u003cshared-storage\u003e/Android/obb/\u003cpackage-name\u003e/\non the device\nRequired", - "type": "string" - } - }, - "id": "ObbFile" - }, - "AndroidRuntimeConfiguration": { - "description": "Configuration that can be selected at the time a test is run.", - "type": "object", - "properties": { - "orientations": { - "description": "The set of available orientations.\n@OutputOnly", - "type": "array", - "items": { - "$ref": "Orientation" - } - }, - "locales": { - "description": "The set of available locales.\n@OutputOnly", - "type": "array", - "items": { - "$ref": "Locale" - } - } - }, - "id": "AndroidRuntimeConfiguration" - }, - "AndroidDevice": { - "description": "A single Android device.", - "type": "object", - "properties": { - "androidModelId": { - "description": "The id of the Android device to be used.\nUse the EnvironmentDiscoveryService to get supported options.\nRequired", - "type": "string" - }, - "androidVersionId": { - "description": "The id of the Android OS version to be used.\nUse the EnvironmentDiscoveryService to get supported options.\nRequired", - "type": "string" - }, - "orientation": { - "description": "How the device is oriented during the test.\nUse the EnvironmentDiscoveryService to get supported options.\nRequired", - "type": "string" - }, - "locale": { - "description": "The locale the test device used for testing.\nUse the EnvironmentDiscoveryService to get supported options.\nRequired", - "type": "string" - } - }, - "id": "AndroidDevice" - }, - "NetworkConfiguration": { - "type": "object", - "properties": { - "upRule": { - "description": "The emulation rule applying to the upload traffic", - "$ref": "TrafficRule" - }, - "downRule": { - "description": "The emulation rule applying to the download traffic", - "$ref": "TrafficRule" - }, - "id": { - "description": "The unique opaque id for this network traffic configuration\n@OutputOnly", - "type": "string" - } - }, - "id": "NetworkConfiguration" - }, "ToolResultsStep": { + "description": "Represents a tool results step resource.\n\nThis has the results of a TestExecution.", + "id": "ToolResultsStep", "properties": { "executionId": { "description": "A tool results execution ID.\n@OutputOnly", "type": "string" }, - "stepId": { - "description": "A tool results step ID.\n@OutputOnly", + "historyId": { + "description": "A tool results history ID.\n@OutputOnly", "type": "string" }, "projectId": { "description": "The cloud project that owns the tool results step.\n@OutputOnly", "type": "string" }, - "historyId": { - "description": "A tool results history ID.\n@OutputOnly", + "stepId": { + "description": "A tool results step ID.\n@OutputOnly", "type": "string" } }, - "id": "ToolResultsStep", - "description": "Represents a tool results step resource.\n\nThis has the results of a TestExecution.", "type": "object" }, "TrafficRule": { "description": "Network emulation parameters", - "type": "object", + "id": "TrafficRule", "properties": { - "packetDuplicationRatio": { - "description": "Packet duplication ratio (0.0 - 1.0)", - "format": "float", - "type": "number" - }, - "delay": { - "description": "Packet delay, must be \u003e= 0", - "format": "google-duration", - "type": "string" - }, - "packetLossRatio": { - "description": "Packet loss ratio (0.0 - 1.0)", + "bandwidth": { + "description": "Bandwidth in kbits/second", "format": "float", "type": "number" }, @@ -1315,83 +1524,26 @@ "format": "float", "type": "number" }, - "bandwidth": { - "description": "Bandwidth in kbits/second", + "delay": { + "description": "Packet delay, must be \u003e= 0", + "format": "google-duration", + "type": "string" + }, + "packetDuplicationRatio": { + "description": "Packet duplication ratio (0.0 - 1.0)", + "format": "float", + "type": "number" + }, + "packetLossRatio": { + "description": "Packet loss ratio (0.0 - 1.0)", "format": "float", "type": "number" } }, - "id": "TrafficRule" - }, - "AndroidInstrumentationTest": { - "description": "A test of an Android application that can control an Android component\nindependently of its normal lifecycle.\nAndroid instrumentation tests run an application APK and test APK inside the\nsame process on a virtual or physical AndroidDevice. They also specify\na test runner class, such as com.google.GoogleTestRunner, which can vary\non the specific instrumentation framework chosen.\n\nSee \u003chttp://developer.android.com/tools/testing/testing_android.html\u003e for\nmore information on types of Android tests.", - "type": "object", - "properties": { - "orchestratorOption": { - "enumDescriptions": [ - "This means that the server should choose the mode. And test will be run\nwithout orchestrator.\nUsing orchestrator is highly encouraged because of all the benefits it\noffers. And in the future, all instrumentation tests will be run with\norchestrator by default if preference unspecified.", - "Run test using orchestrator.\n** Only compatible with AndroidJUnitRunner version 1.0 or higher! **\nRecommended.", - "Run test without using orchestrator." - ], - "enum": [ - "ORCHESTRATOR_OPTION_UNSPECIFIED", - "USE_ORCHESTRATOR", - "DO_NOT_USE_ORCHESTRATOR" - ], - "description": "The option of whether running each test within its own invocation of\ninstrumentation with Android Test Orchestrator or not.\n** Orchestrator is only compatible with AndroidJUnitRunner version 1.0 or\nhigher! **\nOrchestrator offers the following benefits:\n - No shared state\n - Crashes are isolated\n - Logs are scoped per test\n\nSee\n\u003chttps://developer.android.com/training/testing/junit-runner.html#using-android-test-orchestrator\u003e\nfor more information about Android Test Orchestrator.\n\nOptional, if empty, test will be run without orchestrator.", - "type": "string" - }, - "testTargets": { - "description": "Each target must be fully qualified with the package name or class name,\nin one of these formats:\n - \"package package_name\"\n - \"class package_name.class_name\"\n - \"class package_name.class_name#method_name\"\n\nOptional, if empty, all targets in the module will be run.", - "type": "array", - "items": { - "type": "string" - } - }, - "testApk": { - "$ref": "FileReference", - "description": "The APK containing the test code to be executed.\nRequired" - }, - "testRunnerClass": { - "description": "The InstrumentationTestRunner class.\nOptional, default is determined by examining the application's manifest.", - "type": "string" - }, - "testPackageId": { - "description": "The java package for the test to be executed.\nOptional, default is determined by examining the application's manifest.", - "type": "string" - }, - "appPackageId": { - "description": "The java package for the application under test.\nOptional, default is determined by examining the application's manifest.", - "type": "string" - }, - "appApk": { - "description": "The APK for the application under test.\nRequired", - "$ref": "FileReference" - } - }, - "id": "AndroidInstrumentationTest" + "type": "object" } }, - "icons": { - "x16": "http://www.google.com/images/icons/product/search-16.gif", - "x32": "http://www.google.com/images/icons/product/search-32.gif" - }, - "protocol": "rest", - "version": "v1", - "baseUrl": "https://testing.googleapis.com/", - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/cloud-platform.read-only": { - "description": "View your data across Google Cloud Platform services" - }, - "https://www.googleapis.com/auth/cloud-platform": { - "description": "View and manage your data across Google Cloud Platform services" - } - } - } - }, - "kind": "discovery#restDescription", - "description": "Allows developers to run automated tests for their mobile applications on Google infrastructure.", - "servicePath": "" -} + "servicePath": "", + "title": "Google Cloud Testing API", + "version": "v1" +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/testing/v1/testing-gen.go b/vendor/google.golang.org/api/testing/v1/testing-gen.go index f41351234..9ed6c6d63 100644 --- a/vendor/google.golang.org/api/testing/v1/testing-gen.go +++ b/vendor/google.golang.org/api/testing/v1/testing-gen.go @@ -59,6 +59,7 @@ func New(client *http.Client) (*Service, error) { return nil, errors.New("client is nil") } s := &Service{client: client, BasePath: basePath} + s.ApplicationDetailService = NewApplicationDetailServiceService(s) s.Projects = NewProjectsService(s) s.TestEnvironmentCatalog = NewTestEnvironmentCatalogService(s) return s, nil @@ -69,6 +70,8 @@ type Service struct { BasePath string // API endpoint base URL UserAgent string // optional additional User-Agent fragment + ApplicationDetailService *ApplicationDetailServiceService + Projects *ProjectsService TestEnvironmentCatalog *TestEnvironmentCatalogService @@ -81,6 +84,15 @@ func (s *Service) userAgent() string { return googleapi.UserAgent + " " + s.UserAgent } +func NewApplicationDetailServiceService(s *Service) *ApplicationDetailServiceService { + rs := &ApplicationDetailServiceService{s: s} + return rs +} + +type ApplicationDetailServiceService struct { + s *Service +} + func NewProjectsService(s *Service) *ProjectsService { rs := &ProjectsService{s: s} rs.TestMatrices = NewProjectsTestMatricesService(s) @@ -500,6 +512,12 @@ type AndroidModel struct { // Examples: "default", "preview", "deprecated" Tags []string `json:"tags,omitempty"` + // VideoRecordingNotSupported: True if and only if tests with this model + // DO NOT have video output. + // See also TestSpecification.disable_video_recording + // @OutputOnly + VideoRecordingNotSupported bool `json:"videoRecordingNotSupported,omitempty"` + // ForceSendFields is a list of field names (e.g. "Brand") to // unconditionally include in API requests. By default, fields with // empty values are omitted from API requests. However, any non-pointer, @@ -562,6 +580,12 @@ type AndroidRoboTest struct { // Optional RoboDirectives []*RoboDirective `json:"roboDirectives,omitempty"` + // RoboScript: A JSON file with a sequence of actions Robo should + // perform as a prologue + // for the crawl. + // Optional + RoboScript *FileReference `json:"roboScript,omitempty"` + // StartingIntents: The intents used to launch the app for the crawl. // If none are provided, then the main launcher activity is launched. // If some are provided, then only those provided are launched (the @@ -745,6 +769,116 @@ func (s *AndroidVersion) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// Apk: An Android package file to install. +type Apk struct { + // Location: The path to an APK to be installed on the device before the + // test begins. + // Optional + Location *FileReference `json:"location,omitempty"` + + // PackageName: The java package for the APK to be installed. + // Optional, value is determined by examining the application's + // manifest. + PackageName string `json:"packageName,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Location") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Location") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *Apk) MarshalJSON() ([]byte, error) { + type NoMethod Apk + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// ApkDetail: Android application details based on application manifest +// and apk archive +// contents +type ApkDetail struct { + ApkManifest *ApkManifest `json:"apkManifest,omitempty"` + + // ForceSendFields is a list of field names (e.g. "ApkManifest") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "ApkManifest") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *ApkDetail) MarshalJSON() ([]byte, error) { + type NoMethod ApkDetail + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// ApkManifest: An Android app manifest. +// See +// http://developer.android.com/guide/topics/manifest/manifest-intro. +// html +type ApkManifest struct { + // ApplicationLabel: User-readable name for the application. + ApplicationLabel string `json:"applicationLabel,omitempty"` + + IntentFilters []*IntentFilter `json:"intentFilters,omitempty"` + + // MaxSdkVersion: Maximum API level on which the application is designed + // to run. + MaxSdkVersion int64 `json:"maxSdkVersion,omitempty"` + + // MinSdkVersion: Minimum API level required for the application to run. + MinSdkVersion int64 `json:"minSdkVersion,omitempty"` + + // PackageName: Full Java-style package name for this application, + // e.g. + // "com.example.foo". + PackageName string `json:"packageName,omitempty"` + + // ForceSendFields is a list of field names (e.g. "ApplicationLabel") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "ApplicationLabel") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *ApkManifest) MarshalJSON() ([]byte, error) { + type NoMethod ApkManifest + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // CancelTestMatrixResponse: Response containing the current state of // the specified test matrix. type CancelTestMatrixResponse struct { @@ -953,6 +1087,9 @@ type DeviceFile struct { // ObbFile: A reference to an opaque binary blob file ObbFile *ObbFile `json:"obbFile,omitempty"` + // RegularFile: A reference to a regular file + RegularFile *RegularFile `json:"regularFile,omitempty"` + // ForceSendFields is a list of field names (e.g. "ObbFile") to // unconditionally include in API requests. By default, fields with // empty values are omitted from API requests. However, any non-pointer, @@ -1151,6 +1288,39 @@ func (s *FileReference) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// GetApkDetailsResponse: Response containing the details of the +// specified Android application APK. +type GetApkDetailsResponse struct { + // ApkDetail: Details of the Android APK. + ApkDetail *ApkDetail `json:"apkDetail,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "ApkDetail") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "ApkDetail") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GetApkDetailsResponse) MarshalJSON() ([]byte, error) { + type NoMethod GetApkDetailsResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // GoogleAuto: Enables automatic Google account login. // If set, the service will automatically generate a Google test account // and add @@ -1199,6 +1369,43 @@ func (s *GoogleCloudStorage) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// IntentFilter: The section of an +// tag. +// https://developer.android.com/guide/topics/manifest/intent-filter +// -element.html +type IntentFilter struct { + // ActionNames: The android:name value of the tag + ActionNames []string `json:"actionNames,omitempty"` + + // CategoryNames: The android:name value of the tag + CategoryNames []string `json:"categoryNames,omitempty"` + + // MimeType: The android:mimeType value of the tag + MimeType string `json:"mimeType,omitempty"` + + // ForceSendFields is a list of field names (e.g. "ActionNames") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "ActionNames") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *IntentFilter) MarshalJSON() ([]byte, error) { + type NoMethod IntentFilter + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // LauncherActivityIntent: Specifies an intent that starts the main // launcher activity. type LauncherActivityIntent struct { @@ -1392,6 +1599,64 @@ func (s *Orientation) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// RegularFile: A file or directory to install on the device before the +// test starts +type RegularFile struct { + // Content: Required + Content *FileReference `json:"content,omitempty"` + + // DevicePath: Where to put the content on the device. Must be an + // absolute, whitelisted + // path. If the file exists, it will be replaced. + // The following device-side directories and any of their subdirectories + // are + // whitelisted: + //

${EXTERNAL_STORAGE}, or /sdcard

+ //

${ANDROID_DATA}/local/tmp, or /data/local/tmp

+ //

Specifying a path outside of these directory trees is + // invalid. + // + //

The paths /sdcard and /data will be made available and treated + // as + // implicit path substitutions. E.g. if /sdcard on a particular device + // does + // not map to external storage, the system will replace it with the + // external + // storage path prefix for that device and copy the file there. + // + //

It is strongly advised to use the + // Environment API in app and test code to access files on the + // device in a + // portable way. + // Required + DevicePath string `json:"devicePath,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Content") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Content") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *RegularFile) MarshalJSON() ([]byte, error) { + type NoMethod RegularFile + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // ResultStorage: Locations where the results of running the test are // stored. type ResultStorage struct { @@ -1583,6 +1848,13 @@ type TestDetails struct { // @OutputOnly ProgressMessages []string `json:"progressMessages,omitempty"` + // VideoRecordingDisabled: Indicates that video will not be recorded for + // this execution either because + // the user chose to disable it or the device does not support it. + // See AndroidModel.video_recording_not_supported + // @OutputOnly + VideoRecordingDisabled bool `json:"videoRecordingDisabled,omitempty"` + // ForceSendFields is a list of field names (e.g. "ErrorMessage") to // unconditionally include in API requests. By default, fields with // empty values are omitted from API requests. However, any non-pointer, @@ -1828,7 +2100,12 @@ type TestMatrix struct { // "DEVICE_ADMIN_RECEIVER" - Device administrator applications are not // allowed. // "TEST_ONLY_APK" - The APK is marked as "testOnly". - // "MALFORMED_IPA" - The input IPA could not be parsed. + // NOT USED + // "NO_CODE_APK" - APK contains no code. + // See + // also + // https://developer.android.com/guide/topics/manifest/application-e + // lement.html#code InvalidMatrixDetails string `json:"invalidMatrixDetails,omitempty"` // ProjectId: The cloud project that owns the test matrix. @@ -1938,14 +2215,20 @@ func (s *TestMatrix) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -// TestSetup: A description of how to set up the device prior to running -// the test +// TestSetup: A description of how to set up the Android device prior to +// running the test. type TestSetup struct { // Account: The device will be logged in on this account for the // duration of the test. // Optional Account *Account `json:"account,omitempty"` + // AdditionalApks: APKs to install in addition to those being directly + // tested. + // Currently capped at 100. + // Optional + AdditionalApks []*Apk `json:"additionalApks,omitempty"` + // DirectoriesToPull: List of directories on the device to upload to GCS // at the end of the test; // they must be absolute paths under /sdcard or /data/local/tmp. @@ -2036,8 +2319,9 @@ type TestSpecification struct { // latency. DisableVideoRecording bool `json:"disableVideoRecording,omitempty"` - // TestSetup: Test setup requirements e.g. files to install, bootstrap - // scripts + // TestSetup: Test setup requirements for Android e.g. files to install, + // bootstrap + // scripts. // Optional TestSetup *TestSetup `json:"testSetup,omitempty"` @@ -2251,6 +2535,126 @@ func (s *TrafficRule) UnmarshalJSON(data []byte) error { return nil } +// method id "testing.applicationDetailService.getApkDetails": + +type ApplicationDetailServiceGetApkDetailsCall struct { + s *Service + filereference *FileReference + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// GetApkDetails: Request the details of an Android application APK. +func (r *ApplicationDetailServiceService) GetApkDetails(filereference *FileReference) *ApplicationDetailServiceGetApkDetailsCall { + c := &ApplicationDetailServiceGetApkDetailsCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.filereference = filereference + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ApplicationDetailServiceGetApkDetailsCall) Fields(s ...googleapi.Field) *ApplicationDetailServiceGetApkDetailsCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ApplicationDetailServiceGetApkDetailsCall) Context(ctx context.Context) *ApplicationDetailServiceGetApkDetailsCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ApplicationDetailServiceGetApkDetailsCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ApplicationDetailServiceGetApkDetailsCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.filereference) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v1/applicationDetailService/getApkDetails") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("POST", urls, body) + req.Header = reqHeaders + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "testing.applicationDetailService.getApkDetails" call. +// Exactly one of *GetApkDetailsResponse or error will be non-nil. Any +// non-2xx status code is an error. Response headers are in either +// *GetApkDetailsResponse.ServerResponse.Header or (if a response was +// returned at all) in error.(*googleapi.Error).Header. Use +// googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *ApplicationDetailServiceGetApkDetailsCall) Do(opts ...googleapi.CallOption) (*GetApkDetailsResponse, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &GetApkDetailsResponse{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Request the details of an Android application APK.", + // "flatPath": "v1/applicationDetailService/getApkDetails", + // "httpMethod": "POST", + // "id": "testing.applicationDetailService.getApkDetails", + // "parameterOrder": [], + // "parameters": {}, + // "path": "v1/applicationDetailService/getApkDetails", + // "request": { + // "$ref": "FileReference" + // }, + // "response": { + // "$ref": "GetApkDetailsResponse" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + // method id "testing.projects.testMatrices.cancel": type ProjectsTestMatricesCancelCall struct { diff --git a/vendor/google.golang.org/api/texttospeech/v1beta1/texttospeech-api.json b/vendor/google.golang.org/api/texttospeech/v1beta1/texttospeech-api.json new file mode 100644 index 000000000..ddd702cd9 --- /dev/null +++ b/vendor/google.golang.org/api/texttospeech/v1beta1/texttospeech-api.json @@ -0,0 +1,347 @@ +{ + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/cloud-platform": { + "description": "View and manage your data across Google Cloud Platform services" + } + } + } + }, + "basePath": "", + "baseUrl": "https://texttospeech.googleapis.com/", + "batchPath": "batch", + "canonicalName": "Texttospeech", + "description": "Cloud Text-to-Speech API.", + "discoveryVersion": "v1", + "documentationLink": "http://cloud.google.com/speech/text-to-speech/", + "fullyEncodeReservedExpansion": true, + "icons": { + "x16": "http://www.google.com/images/icons/product/search-16.gif", + "x32": "http://www.google.com/images/icons/product/search-32.gif" + }, + "id": "texttospeech:v1beta1", + "kind": "discovery#restDescription", + "name": "texttospeech", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "$.xgafv": { + "description": "V1 error format.", + "enum": [ + "1", + "2" + ], + "enumDescriptions": [ + "v1 error format", + "v2 error format" + ], + "location": "query", + "type": "string" + }, + "access_token": { + "description": "OAuth access token.", + "location": "query", + "type": "string" + }, + "alt": { + "default": "json", + "description": "Data format for response.", + "enum": [ + "json", + "media", + "proto" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json", + "Media download with context-dependent Content-Type", + "Responses with Content-Type of application/x-protobuf" + ], + "location": "query", + "type": "string" + }, + "bearer_token": { + "description": "OAuth bearer token.", + "location": "query", + "type": "string" + }, + "callback": { + "description": "JSONP", + "location": "query", + "type": "string" + }, + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "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.", + "location": "query", + "type": "string" + }, + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "pp": { + "default": "true", + "description": "Pretty-print response.", + "location": "query", + "type": "boolean" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", + "location": "query", + "type": "string" + }, + "uploadType": { + "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", + "location": "query", + "type": "string" + }, + "upload_protocol": { + "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", + "location": "query", + "type": "string" + } + }, + "protocol": "rest", + "resources": { + "text": { + "methods": { + "synthesize": { + "description": "Synthesizes speech synchronously: receive results after all text input\nhas been processed.", + "flatPath": "v1beta1/text:synthesize", + "httpMethod": "POST", + "id": "texttospeech.text.synthesize", + "parameterOrder": [], + "parameters": {}, + "path": "v1beta1/text:synthesize", + "request": { + "$ref": "SynthesizeSpeechRequest" + }, + "response": { + "$ref": "SynthesizeSpeechResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + }, + "voices": { + "methods": { + "list": { + "description": "Returns a list of Voice\nsupported for synthesis.", + "flatPath": "v1beta1/voices", + "httpMethod": "GET", + "id": "texttospeech.voices.list", + "parameterOrder": [], + "parameters": { + "languageCode": { + "description": "Optional (but recommended)\n[BCP-47](https://www.rfc-editor.org/rfc/bcp/bcp47.txt) language tag. If\nspecified, the ListVoices call will only return voices that can be used to\nsynthesize this language_code. E.g. when specifying \"en-NZ\", you will get\nsupported \"en-*\" voices; when specifying \"no\", you will get supported\n\"no-*\" (Norwegian) and \"nb-*\" (Norwegian Bokmal) voices; specifying \"zh\"\nwill also get supported \"cmn-*\" voices; specifying \"zh-hk\" will also get\nsupported \"yue-*\" voices.", + "location": "query", + "type": "string" + } + }, + "path": "v1beta1/voices", + "response": { + "$ref": "ListVoicesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + } + }, + "revision": "20180323", + "rootUrl": "https://texttospeech.googleapis.com/", + "schemas": { + "AudioConfig": { + "description": "Description of audio data to be synthesized.", + "id": "AudioConfig", + "properties": { + "audioEncoding": { + "description": "Required. The format of the requested audio byte stream.", + "enum": [ + "AUDIO_ENCODING_UNSPECIFIED", + "LINEAR16", + "MP3", + "OGG_OPUS" + ], + "enumDescriptions": [ + "Not specified. Will return result google.rpc.Code.INVALID_ARGUMENT.", + "Uncompressed 16-bit signed little-endian samples (Linear PCM).\nAudio content returned as LINEAR16 also contains a WAV header.", + "MP3 audio.", + "Opus encoded audio wrapped in an ogg container. The result will be a\nfile which can be played natively on Android, and in browsers (at least\nChrome and Firefox). The quality of the encoding is considerably higher\nthan MP3 while using approximately the same bitrate." + ], + "type": "string" + }, + "pitch": { + "description": "Optional speaking pitch, in the range [-20.0, 20.0]. 20 means increase 20\nsemitones from the original pitch. -20 means decrease 20 semitones from the\noriginal pitch.", + "format": "double", + "type": "number" + }, + "sampleRateHertz": { + "description": "The synthesis sample rate (in hertz) for this audio. Optional. If this is\ndifferent from the voice's natural sample rate, then the synthesizer will\nhonor this request by converting to the desired sample rate (which might\nresult in worse audio quality), unless the specified sample rate is not\nsupported for the encoding chosen, in which case it will fail the request\nand return google.rpc.Code.INVALID_ARGUMENT.", + "format": "int32", + "type": "integer" + }, + "speakingRate": { + "description": "Optional speaking rate/speed, in the range [0.25, 4.0]. 1.0 is the normal\nnative speed supported by the specific voice. 2.0 is twice as fast, and\n0.5 is half as fast. If unset(0.0), defaults to the native 1.0 speed. Any\nother values \u003c 0.25 or \u003e 4.0 will return an error.", + "format": "double", + "type": "number" + }, + "volumeGainDb": { + "description": "Optional volume gain (in dB) of the normal native volume supported by the\nspecific voice, in the range [-96.0, 16.0]. If unset, or set to a value of\n0.0 (dB), will play at normal native signal amplitude. A value of -6.0 (dB)\nwill play at approximately half the amplitude of the normal native signal\namplitude. A value of +6.0 (dB) will play at approximately twice the\namplitude of the normal native signal amplitude. Strongly recommend not to\nexceed +10 (dB) as there's usually no effective increase in loudness for\nany value greater than that.", + "format": "double", + "type": "number" + } + }, + "type": "object" + }, + "ListVoicesResponse": { + "description": "The message returned to the client by the `ListVoices` method.", + "id": "ListVoicesResponse", + "properties": { + "voices": { + "description": "The list of voices.", + "items": { + "$ref": "Voice" + }, + "type": "array" + } + }, + "type": "object" + }, + "SynthesisInput": { + "description": "Contains text input to be synthesized. Either `text` or `ssml` must be\nsupplied. Supplying both or neither returns\ngoogle.rpc.Code.INVALID_ARGUMENT. The input size is limited to 5000\ncharacters.", + "id": "SynthesisInput", + "properties": { + "ssml": { + "description": "The SSML document to be synthesized. The SSML document must be valid\nand well-formed. Otherwise the RPC will fail and return\ngoogle.rpc.Code.INVALID_ARGUMENT. For more information, see\n[SSML](/speech/text-to-speech/docs/ssml).", + "type": "string" + }, + "text": { + "description": "The raw text to be synthesized.", + "type": "string" + } + }, + "type": "object" + }, + "SynthesizeSpeechRequest": { + "description": "The top-level message sent by the client for the `SynthesizeSpeech` method.", + "id": "SynthesizeSpeechRequest", + "properties": { + "audioConfig": { + "$ref": "AudioConfig", + "description": "Required. The configuration of the synthesized audio." + }, + "input": { + "$ref": "SynthesisInput", + "description": "Required. The Synthesizer requires either plain text or SSML as input." + }, + "voice": { + "$ref": "VoiceSelectionParams", + "description": "Required. The desired voice of the synthesized audio." + } + }, + "type": "object" + }, + "SynthesizeSpeechResponse": { + "description": "The message returned to the client by the `SynthesizeSpeech` method.", + "id": "SynthesizeSpeechResponse", + "properties": { + "audioContent": { + "description": "The audio data bytes encoded as specified in the request, including the\nheader (For LINEAR16 audio, we include the WAV header). Note: as\nwith all bytes fields, protobuffers use a pure binary representation,\nwhereas JSON representations use base64.", + "format": "byte", + "type": "string" + } + }, + "type": "object" + }, + "Voice": { + "description": "Description of a voice supported by the TTS service.", + "id": "Voice", + "properties": { + "languageCodes": { + "description": "The languages that this voice supports, expressed as\n[BCP-47](https://www.rfc-editor.org/rfc/bcp/bcp47.txt) language tags (e.g.\n\"en-US\", \"es-419\", \"cmn-tw\").", + "items": { + "type": "string" + }, + "type": "array" + }, + "name": { + "description": "The name of this voice. Each distinct voice has a unique name.", + "type": "string" + }, + "naturalSampleRateHertz": { + "description": "The natural sample rate (in hertz) for this voice.", + "format": "int32", + "type": "integer" + }, + "ssmlGender": { + "description": "The gender of this voice.", + "enum": [ + "SSML_VOICE_GENDER_UNSPECIFIED", + "MALE", + "FEMALE", + "NEUTRAL" + ], + "enumDescriptions": [ + "An unspecified gender.\nIn VoiceSelectionParams, this means that the client doesn't care which\ngender the selected voice will have. In the Voice field of\nListVoicesResponse, this may mean that the voice doesn't fit any of the\nother categories in this enum, or that the gender of the voice isn't known.", + "A male voice.", + "A female voice.", + "A gender-neutral voice." + ], + "type": "string" + } + }, + "type": "object" + }, + "VoiceSelectionParams": { + "description": "Description of which voice to use for a synthesis request.", + "id": "VoiceSelectionParams", + "properties": { + "languageCode": { + "description": "The language (and optionally also the region) of the voice expressed as a\n[BCP-47](https://www.rfc-editor.org/rfc/bcp/bcp47.txt) language tag, e.g.\n\"en-US\". Required. This should not include a script tag (e.g. use\n\"cmn-cn\" rather than \"cmn-Hant-cn\"), because the script will be inferred\nfrom the input provided in the SynthesisInput. The TTS service\nwill use this parameter to help choose an appropriate voice. Note that\nthe TTS service may choose a voice with a slightly different language code\nthan the one selected; it may substitute a different region\n(e.g. using en-US rather than en-CA if there isn't a Canadian voice\navailable), or even a different language, e.g. using \"nb\" (Norwegian\nBokmal) instead of \"no\" (Norwegian)\".", + "type": "string" + }, + "name": { + "description": "The name of the voice. Optional; if not set, the service will choose a\nvoice based on the other parameters such as language_code and gender.", + "type": "string" + }, + "ssmlGender": { + "description": "The preferred gender of the voice. Optional; if not set, the service will\nchoose a voice based on the other parameters such as language_code and\nname. Note that this is only a preference, not requirement; if a\nvoice of the appropriate gender is not available, the synthesizer should\nsubstitute a voice with a different gender rather than failing the request.", + "enum": [ + "SSML_VOICE_GENDER_UNSPECIFIED", + "MALE", + "FEMALE", + "NEUTRAL" + ], + "enumDescriptions": [ + "An unspecified gender.\nIn VoiceSelectionParams, this means that the client doesn't care which\ngender the selected voice will have. In the Voice field of\nListVoicesResponse, this may mean that the voice doesn't fit any of the\nother categories in this enum, or that the gender of the voice isn't known.", + "A male voice.", + "A female voice.", + "A gender-neutral voice." + ], + "type": "string" + } + }, + "type": "object" + } + }, + "servicePath": "", + "title": "Cloud Text-to-Speech API", + "version": "v1beta1", + "version_module": true +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/texttospeech/v1beta1/texttospeech-gen.go b/vendor/google.golang.org/api/texttospeech/v1beta1/texttospeech-gen.go new file mode 100644 index 000000000..1ea1a7c69 --- /dev/null +++ b/vendor/google.golang.org/api/texttospeech/v1beta1/texttospeech-gen.go @@ -0,0 +1,764 @@ +// Package texttospeech provides access to the Cloud Text-to-Speech API. +// +// See http://cloud.google.com/speech/text-to-speech/ +// +// Usage example: +// +// import "google.golang.org/api/texttospeech/v1beta1" +// ... +// texttospeechService, err := texttospeech.New(oauthHttpClient) +package texttospeech // import "google.golang.org/api/texttospeech/v1beta1" + +import ( + "bytes" + "encoding/json" + "errors" + "fmt" + context "golang.org/x/net/context" + ctxhttp "golang.org/x/net/context/ctxhttp" + gensupport "google.golang.org/api/gensupport" + googleapi "google.golang.org/api/googleapi" + "io" + "net/http" + "net/url" + "strconv" + "strings" +) + +// Always reference these packages, just in case the auto-generated code +// below doesn't. +var _ = bytes.NewBuffer +var _ = strconv.Itoa +var _ = fmt.Sprintf +var _ = json.NewDecoder +var _ = io.Copy +var _ = url.Parse +var _ = gensupport.MarshalJSON +var _ = googleapi.Version +var _ = errors.New +var _ = strings.Replace +var _ = context.Canceled +var _ = ctxhttp.Do + +const apiId = "texttospeech:v1beta1" +const apiName = "texttospeech" +const apiVersion = "v1beta1" +const basePath = "https://texttospeech.googleapis.com/" + +// OAuth2 scopes used by this API. +const ( + // View and manage your data across Google Cloud Platform services + CloudPlatformScope = "https://www.googleapis.com/auth/cloud-platform" +) + +func New(client *http.Client) (*Service, error) { + if client == nil { + return nil, errors.New("client is nil") + } + s := &Service{client: client, BasePath: basePath} + s.Text = NewTextService(s) + s.Voices = NewVoicesService(s) + return s, nil +} + +type Service struct { + client *http.Client + BasePath string // API endpoint base URL + UserAgent string // optional additional User-Agent fragment + + Text *TextService + + Voices *VoicesService +} + +func (s *Service) userAgent() string { + if s.UserAgent == "" { + return googleapi.UserAgent + } + return googleapi.UserAgent + " " + s.UserAgent +} + +func NewTextService(s *Service) *TextService { + rs := &TextService{s: s} + return rs +} + +type TextService struct { + s *Service +} + +func NewVoicesService(s *Service) *VoicesService { + rs := &VoicesService{s: s} + return rs +} + +type VoicesService struct { + s *Service +} + +// AudioConfig: Description of audio data to be synthesized. +type AudioConfig struct { + // AudioEncoding: Required. The format of the requested audio byte + // stream. + // + // Possible values: + // "AUDIO_ENCODING_UNSPECIFIED" - Not specified. Will return result + // google.rpc.Code.INVALID_ARGUMENT. + // "LINEAR16" - Uncompressed 16-bit signed little-endian samples + // (Linear PCM). + // Audio content returned as LINEAR16 also contains a WAV header. + // "MP3" - MP3 audio. + // "OGG_OPUS" - Opus encoded audio wrapped in an ogg container. The + // result will be a + // file which can be played natively on Android, and in browsers (at + // least + // Chrome and Firefox). The quality of the encoding is considerably + // higher + // than MP3 while using approximately the same bitrate. + AudioEncoding string `json:"audioEncoding,omitempty"` + + // Pitch: Optional speaking pitch, in the range [-20.0, 20.0]. 20 means + // increase 20 + // semitones from the original pitch. -20 means decrease 20 semitones + // from the + // original pitch. + Pitch float64 `json:"pitch,omitempty"` + + // SampleRateHertz: The synthesis sample rate (in hertz) for this audio. + // Optional. If this is + // different from the voice's natural sample rate, then the synthesizer + // will + // honor this request by converting to the desired sample rate (which + // might + // result in worse audio quality), unless the specified sample rate is + // not + // supported for the encoding chosen, in which case it will fail the + // request + // and return google.rpc.Code.INVALID_ARGUMENT. + SampleRateHertz int64 `json:"sampleRateHertz,omitempty"` + + // SpeakingRate: Optional speaking rate/speed, in the range [0.25, 4.0]. + // 1.0 is the normal + // native speed supported by the specific voice. 2.0 is twice as fast, + // and + // 0.5 is half as fast. If unset(0.0), defaults to the native 1.0 speed. + // Any + // other values < 0.25 or > 4.0 will return an error. + SpeakingRate float64 `json:"speakingRate,omitempty"` + + // VolumeGainDb: Optional volume gain (in dB) of the normal native + // volume supported by the + // specific voice, in the range [-96.0, 16.0]. If unset, or set to a + // value of + // 0.0 (dB), will play at normal native signal amplitude. A value of + // -6.0 (dB) + // will play at approximately half the amplitude of the normal native + // signal + // amplitude. A value of +6.0 (dB) will play at approximately twice + // the + // amplitude of the normal native signal amplitude. Strongly recommend + // not to + // exceed +10 (dB) as there's usually no effective increase in loudness + // for + // any value greater than that. + VolumeGainDb float64 `json:"volumeGainDb,omitempty"` + + // ForceSendFields is a list of field names (e.g. "AudioEncoding") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "AudioEncoding") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *AudioConfig) MarshalJSON() ([]byte, error) { + type NoMethod AudioConfig + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +func (s *AudioConfig) UnmarshalJSON(data []byte) error { + type NoMethod AudioConfig + var s1 struct { + Pitch gensupport.JSONFloat64 `json:"pitch"` + SpeakingRate gensupport.JSONFloat64 `json:"speakingRate"` + VolumeGainDb gensupport.JSONFloat64 `json:"volumeGainDb"` + *NoMethod + } + s1.NoMethod = (*NoMethod)(s) + if err := json.Unmarshal(data, &s1); err != nil { + return err + } + s.Pitch = float64(s1.Pitch) + s.SpeakingRate = float64(s1.SpeakingRate) + s.VolumeGainDb = float64(s1.VolumeGainDb) + return nil +} + +// ListVoicesResponse: The message returned to the client by the +// `ListVoices` method. +type ListVoicesResponse struct { + // Voices: The list of voices. + Voices []*Voice `json:"voices,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "Voices") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Voices") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *ListVoicesResponse) MarshalJSON() ([]byte, error) { + type NoMethod ListVoicesResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// SynthesisInput: Contains text input to be synthesized. Either `text` +// or `ssml` must be +// supplied. Supplying both or neither +// returns +// google.rpc.Code.INVALID_ARGUMENT. The input size is limited to +// 5000 +// characters. +type SynthesisInput struct { + // Ssml: The SSML document to be synthesized. The SSML document must be + // valid + // and well-formed. Otherwise the RPC will fail and + // return + // google.rpc.Code.INVALID_ARGUMENT. For more information, + // see + // [SSML](/speech/text-to-speech/docs/ssml). + Ssml string `json:"ssml,omitempty"` + + // Text: The raw text to be synthesized. + Text string `json:"text,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Ssml") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Ssml") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *SynthesisInput) MarshalJSON() ([]byte, error) { + type NoMethod SynthesisInput + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// SynthesizeSpeechRequest: The top-level message sent by the client for +// the `SynthesizeSpeech` method. +type SynthesizeSpeechRequest struct { + // AudioConfig: Required. The configuration of the synthesized audio. + AudioConfig *AudioConfig `json:"audioConfig,omitempty"` + + // Input: Required. The Synthesizer requires either plain text or SSML + // as input. + Input *SynthesisInput `json:"input,omitempty"` + + // Voice: Required. The desired voice of the synthesized audio. + Voice *VoiceSelectionParams `json:"voice,omitempty"` + + // ForceSendFields is a list of field names (e.g. "AudioConfig") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "AudioConfig") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *SynthesizeSpeechRequest) MarshalJSON() ([]byte, error) { + type NoMethod SynthesizeSpeechRequest + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// SynthesizeSpeechResponse: The message returned to the client by the +// `SynthesizeSpeech` method. +type SynthesizeSpeechResponse struct { + // AudioContent: The audio data bytes encoded as specified in the + // request, including the + // header (For LINEAR16 audio, we include the WAV header). Note: as + // with all bytes fields, protobuffers use a pure binary + // representation, + // whereas JSON representations use base64. + AudioContent string `json:"audioContent,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "AudioContent") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "AudioContent") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *SynthesizeSpeechResponse) MarshalJSON() ([]byte, error) { + type NoMethod SynthesizeSpeechResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// Voice: Description of a voice supported by the TTS service. +type Voice struct { + // LanguageCodes: The languages that this voice supports, expressed + // as + // [BCP-47](https://www.rfc-editor.org/rfc/bcp/bcp47.txt) language tags + // (e.g. + // "en-US", "es-419", "cmn-tw"). + LanguageCodes []string `json:"languageCodes,omitempty"` + + // Name: The name of this voice. Each distinct voice has a unique name. + Name string `json:"name,omitempty"` + + // NaturalSampleRateHertz: The natural sample rate (in hertz) for this + // voice. + NaturalSampleRateHertz int64 `json:"naturalSampleRateHertz,omitempty"` + + // SsmlGender: The gender of this voice. + // + // Possible values: + // "SSML_VOICE_GENDER_UNSPECIFIED" - An unspecified gender. + // In VoiceSelectionParams, this means that the client doesn't care + // which + // gender the selected voice will have. In the Voice field + // of + // ListVoicesResponse, this may mean that the voice doesn't fit any of + // the + // other categories in this enum, or that the gender of the voice isn't + // known. + // "MALE" - A male voice. + // "FEMALE" - A female voice. + // "NEUTRAL" - A gender-neutral voice. + SsmlGender string `json:"ssmlGender,omitempty"` + + // ForceSendFields is a list of field names (e.g. "LanguageCodes") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "LanguageCodes") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *Voice) MarshalJSON() ([]byte, error) { + type NoMethod Voice + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// VoiceSelectionParams: Description of which voice to use for a +// synthesis request. +type VoiceSelectionParams struct { + // LanguageCode: The language (and optionally also the region) of the + // voice expressed as + // a + // [BCP-47](https://www.rfc-editor.org/rfc/bcp/bcp47.txt) language tag, + // e.g. + // "en-US". Required. This should not include a script tag (e.g. + // use + // "cmn-cn" rather than "cmn-Hant-cn"), because the script will be + // inferred + // from the input provided in the SynthesisInput. The TTS service + // will use this parameter to help choose an appropriate voice. Note + // that + // the TTS service may choose a voice with a slightly different language + // code + // than the one selected; it may substitute a different region + // (e.g. using en-US rather than en-CA if there isn't a Canadian + // voice + // available), or even a different language, e.g. using "nb" + // (Norwegian + // Bokmal) instead of "no" (Norwegian)". + LanguageCode string `json:"languageCode,omitempty"` + + // Name: The name of the voice. Optional; if not set, the service will + // choose a + // voice based on the other parameters such as language_code and gender. + Name string `json:"name,omitempty"` + + // SsmlGender: The preferred gender of the voice. Optional; if not set, + // the service will + // choose a voice based on the other parameters such as language_code + // and + // name. Note that this is only a preference, not requirement; if + // a + // voice of the appropriate gender is not available, the synthesizer + // should + // substitute a voice with a different gender rather than failing the + // request. + // + // Possible values: + // "SSML_VOICE_GENDER_UNSPECIFIED" - An unspecified gender. + // In VoiceSelectionParams, this means that the client doesn't care + // which + // gender the selected voice will have. In the Voice field + // of + // ListVoicesResponse, this may mean that the voice doesn't fit any of + // the + // other categories in this enum, or that the gender of the voice isn't + // known. + // "MALE" - A male voice. + // "FEMALE" - A female voice. + // "NEUTRAL" - A gender-neutral voice. + SsmlGender string `json:"ssmlGender,omitempty"` + + // ForceSendFields is a list of field names (e.g. "LanguageCode") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "LanguageCode") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *VoiceSelectionParams) MarshalJSON() ([]byte, error) { + type NoMethod VoiceSelectionParams + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// method id "texttospeech.text.synthesize": + +type TextSynthesizeCall struct { + s *Service + synthesizespeechrequest *SynthesizeSpeechRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Synthesize: Synthesizes speech synchronously: receive results after +// all text input +// has been processed. +func (r *TextService) Synthesize(synthesizespeechrequest *SynthesizeSpeechRequest) *TextSynthesizeCall { + c := &TextSynthesizeCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.synthesizespeechrequest = synthesizespeechrequest + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *TextSynthesizeCall) Fields(s ...googleapi.Field) *TextSynthesizeCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *TextSynthesizeCall) Context(ctx context.Context) *TextSynthesizeCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *TextSynthesizeCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *TextSynthesizeCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.synthesizespeechrequest) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/text:synthesize") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("POST", urls, body) + req.Header = reqHeaders + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "texttospeech.text.synthesize" call. +// Exactly one of *SynthesizeSpeechResponse or error will be non-nil. +// Any non-2xx status code is an error. Response headers are in either +// *SynthesizeSpeechResponse.ServerResponse.Header or (if a response was +// returned at all) in error.(*googleapi.Error).Header. Use +// googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *TextSynthesizeCall) Do(opts ...googleapi.CallOption) (*SynthesizeSpeechResponse, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &SynthesizeSpeechResponse{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Synthesizes speech synchronously: receive results after all text input\nhas been processed.", + // "flatPath": "v1beta1/text:synthesize", + // "httpMethod": "POST", + // "id": "texttospeech.text.synthesize", + // "parameterOrder": [], + // "parameters": {}, + // "path": "v1beta1/text:synthesize", + // "request": { + // "$ref": "SynthesizeSpeechRequest" + // }, + // "response": { + // "$ref": "SynthesizeSpeechResponse" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "texttospeech.voices.list": + +type VoicesListCall struct { + s *Service + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// List: Returns a list of Voice +// supported for synthesis. +func (r *VoicesService) List() *VoicesListCall { + c := &VoicesListCall{s: r.s, urlParams_: make(gensupport.URLParams)} + return c +} + +// LanguageCode sets the optional parameter "languageCode": Optional +// (but +// recommended) +// [BCP-47](https://www.rfc-editor.org/rfc/bcp/bcp47.txt) language tag. +// If +// specified, the ListVoices call will only return voices that can be +// used to +// synthesize this language_code. E.g. when specifying "en-NZ", you will +// get +// supported "en-*" voices; when specifying "no", you will get +// supported +// "no-*" (Norwegian) and "nb-*" (Norwegian Bokmal) voices; specifying +// "zh" +// will also get supported "cmn-*" voices; specifying "zh-hk" will also +// get +// supported "yue-*" voices. +func (c *VoicesListCall) LanguageCode(languageCode string) *VoicesListCall { + c.urlParams_.Set("languageCode", languageCode) + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *VoicesListCall) Fields(s ...googleapi.Field) *VoicesListCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// IfNoneMatch sets the optional parameter which makes the operation +// fail if the object's ETag matches the given value. This is useful for +// getting updates only after the object has changed since the last +// request. Use googleapi.IsNotModified to check whether the response +// error from Do is the result of In-None-Match. +func (c *VoicesListCall) IfNoneMatch(entityTag string) *VoicesListCall { + c.ifNoneMatch_ = entityTag + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *VoicesListCall) Context(ctx context.Context) *VoicesListCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *VoicesListCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *VoicesListCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + if c.ifNoneMatch_ != "" { + reqHeaders.Set("If-None-Match", c.ifNoneMatch_) + } + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/voices") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("GET", urls, body) + req.Header = reqHeaders + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "texttospeech.voices.list" call. +// Exactly one of *ListVoicesResponse or error will be non-nil. Any +// non-2xx status code is an error. Response headers are in either +// *ListVoicesResponse.ServerResponse.Header or (if a response was +// returned at all) in error.(*googleapi.Error).Header. Use +// googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *VoicesListCall) Do(opts ...googleapi.CallOption) (*ListVoicesResponse, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &ListVoicesResponse{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Returns a list of Voice\nsupported for synthesis.", + // "flatPath": "v1beta1/voices", + // "httpMethod": "GET", + // "id": "texttospeech.voices.list", + // "parameterOrder": [], + // "parameters": { + // "languageCode": { + // "description": "Optional (but recommended)\n[BCP-47](https://www.rfc-editor.org/rfc/bcp/bcp47.txt) language tag. If\nspecified, the ListVoices call will only return voices that can be used to\nsynthesize this language_code. E.g. when specifying \"en-NZ\", you will get\nsupported \"en-*\" voices; when specifying \"no\", you will get supported\n\"no-*\" (Norwegian) and \"nb-*\" (Norwegian Bokmal) voices; specifying \"zh\"\nwill also get supported \"cmn-*\" voices; specifying \"zh-hk\" will also get\nsupported \"yue-*\" voices.", + // "location": "query", + // "type": "string" + // } + // }, + // "path": "v1beta1/voices", + // "response": { + // "$ref": "ListVoicesResponse" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} diff --git a/vendor/google.golang.org/api/toolresults/v1beta3/toolresults-api.json b/vendor/google.golang.org/api/toolresults/v1beta3/toolresults-api.json index bc3faa56c..7c9f5e1ae 100644 --- a/vendor/google.golang.org/api/toolresults/v1beta3/toolresults-api.json +++ b/vendor/google.golang.org/api/toolresults/v1beta3/toolresults-api.json @@ -1,2485 +1,2489 @@ { - "kind": "discovery#restDescription", - "etag": "\"YWOzh2SDasdU84ArJnpYek-OMdg/Yf3Z0mLn7GU4E3aNY8w0QjeYwBA\"", - "discoveryVersion": "v1", - "id": "toolresults:v1beta3", - "name": "toolresults", - "canonicalName": "Tool Results", - "version": "v1beta3", - "revision": "20171211", - "title": "Cloud Tool Results API", - "description": "Reads and publishes results from Firebase Test Lab.", - "ownerDomain": "google.com", - "ownerName": "Google", - "icons": { - "x16": "https://www.gstatic.com/images/branding/product/1x/googleg_16dp.png", - "x32": "https://www.gstatic.com/images/branding/product/1x/googleg_32dp.png" - }, - "documentationLink": "https://firebase.google.com/docs/test-lab/", - "protocol": "rest", - "baseUrl": "https://www.googleapis.com/toolresults/v1beta3/projects/", - "basePath": "/toolresults/v1beta3/projects/", - "rootUrl": "https://www.googleapis.com/", - "servicePath": "toolresults/v1beta3/projects/", - "batchPath": "batch/toolresults/v1beta3", - "parameters": { - "alt": { - "type": "string", - "description": "Data format for the response.", - "default": "json", - "enum": [ - "json" - ], - "enumDescriptions": [ - "Responses with Content-Type of application/json" - ], - "location": "query" - }, - "fields": { - "type": "string", - "description": "Selector specifying which fields to include in a partial response.", - "location": "query" - }, - "key": { - "type": "string", - "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" - }, - "oauth_token": { - "type": "string", - "description": "OAuth 2.0 token for the current user.", - "location": "query" - }, - "prettyPrint": { - "type": "boolean", - "description": "Returns response with indentations and line breaks.", - "default": "true", - "location": "query" - }, - "quotaUser": { - "type": "string", - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", - "location": "query" - }, - "userIp": { - "type": "string", - "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", - "location": "query" - } - }, - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/cloud-platform": { - "description": "View and manage your data across Google Cloud Platform services" + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/cloud-platform": { + "description": "View and manage your data across Google Cloud Platform services" + } + } } - } - } - }, - "schemas": { - "AndroidAppInfo": { - "id": "AndroidAppInfo", - "type": "object", - "description": "Android app information.", - "properties": { - "name": { - "type": "string", - "description": "The name of the app. Optional" - }, - "packageName": { - "type": "string", - "description": "The package name of the app. Required." - }, - "versionCode": { - "type": "string", - "description": "The internal version code of the app. Optional." - }, - "versionName": { - "type": "string", - "description": "The version name of the app. Optional." - } - } }, - "AndroidInstrumentationTest": { - "id": "AndroidInstrumentationTest", - "type": "object", - "description": "A test of an Android application that can control an Android component independently of its normal lifecycle.\n\nSee for more information on types of Android tests.", - "properties": { - "testPackageId": { - "type": "string", - "description": "The java package for the test to be executed. Required" - }, - "testRunnerClass": { - "type": "string", - "description": "The InstrumentationTestRunner class. Required" - }, - "testTargets": { - "type": "array", - "description": "Each target must be fully qualified with the package name or class name, in one of these formats: - \"package package_name\" - \"class package_name.class_name\" - \"class package_name.class_name#method_name\"\n\nIf empty, all targets in the module will be run.", - "items": { - "type": "string" - } - }, - "useOrchestrator": { - "type": "boolean", - "description": "The flag indicates whether Android Test Orchestrator will be used to run test or not." - } - } + "basePath": "/toolresults/v1beta3/projects/", + "baseUrl": "https://www.googleapis.com/toolresults/v1beta3/projects/", + "batchPath": "batch/toolresults/v1beta3", + "canonicalName": "Tool Results", + "description": "Reads and publishes results from Firebase Test Lab.", + "discoveryVersion": "v1", + "documentationLink": "https://firebase.google.com/docs/test-lab/", + "etag": "\"-iA1DTNe4s-I6JZXPt1t1Ypy8IU/2jJRzbiUma3M3ST-TMvZSfvHtoo\"", + "icons": { + "x16": "https://www.gstatic.com/images/branding/product/1x/googleg_16dp.png", + "x32": "https://www.gstatic.com/images/branding/product/1x/googleg_32dp.png" }, - "AndroidRoboTest": { - "id": "AndroidRoboTest", - "type": "object", - "description": "A test of an android application that explores the application on a virtual or physical Android device, finding culprits and crashes as it goes.", - "properties": { - "appInitialActivity": { - "type": "string", - "description": "The initial activity that should be used to start the app. Optional" - }, - "bootstrapPackageId": { - "type": "string", - "description": "The java package for the bootstrap. Optional" - }, - "bootstrapRunnerClass": { - "type": "string", - "description": "The runner class for the bootstrap. Optional" - }, - "maxDepth": { - "type": "integer", - "description": "The max depth of the traversal stack Robo can explore. Optional", - "format": "int32" - }, - "maxSteps": { - "type": "integer", - "description": "The max number of steps/actions Robo can execute. Default is no limit (0). Optional", - "format": "int32" - } - } - }, - "AndroidTest": { - "id": "AndroidTest", - "type": "object", - "description": "An Android mobile test specification.", - "properties": { - "androidAppInfo": { - "$ref": "AndroidAppInfo", - "description": "Infomation about the application under test." - }, - "androidInstrumentationTest": { - "$ref": "AndroidInstrumentationTest", - "description": "An Android instrumentation test." - }, - "androidRoboTest": { - "$ref": "AndroidRoboTest", - "description": "An Android robo test." - }, - "testTimeout": { - "$ref": "Duration", - "description": "Max time a test is allowed to run before it is automatically cancelled." - } - } - }, - "Any": { - "id": "Any", - "type": "object", - "description": "`Any` contains an arbitrary serialized protocol buffer message along with a URL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form of utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\nFoo foo = ...; Any any; any.PackFrom(foo); ... if (any.UnpackTo(&foo)) { ... }\n\nExample 2: Pack and unpack a message in Java.\n\nFoo foo = ...; Any any = Any.pack(foo); ... if (any.is(Foo.class)) { foo = any.unpack(Foo.class); }\n\nExample 3: Pack and unpack a message in Python.\n\nfoo = Foo(...) any = Any() any.Pack(foo) ... if any.Is(Foo.DESCRIPTOR): any.Unpack(foo) ...\n\nExample 4: Pack and unpack a message in Go\n\nfoo := &pb.Foo{...} any, err := ptypes.MarshalAny(foo) ... foo := &pb.Foo{} if err := ptypes.UnmarshalAny(any, foo); err != nil { ... }\n\nThe pack methods provided by protobuf library will by default use 'type.googleapis.com/full.type.name' as the type URL and the unpack methods only use the fully qualified type name after the last '/' in the type URL, for example \"foo.bar.com/x/y.z\" will yield type name \"y.z\".\n\n\n\nJSON ==== The JSON representation of an `Any` value uses the regular representation of the deserialized, embedded message, with an additional field `@type` which contains the type URL. Example:\n\npackage google.profile; message Person { string first_name = 1; string last_name = 2; }\n\n{ \"@type\": \"type.googleapis.com/google.profile.Person\", \"firstName\": , \"lastName\": }\n\nIf the embedded message type is well-known and has a custom JSON representation, that representation will be embedded adding a field `value` which holds the custom JSON in addition to the `@type` field. Example (for message [google.protobuf.Duration][]):\n\n{ \"@type\": \"type.googleapis.com/google.protobuf.Duration\", \"value\": \"1.212s\" }", - "properties": { - "typeUrl": { - "type": "string", - "description": "A URL/resource name that uniquely identifies the type of the serialized protocol buffer message. The last segment of the URL's path must represent the fully qualified name of the type (as in `path/google.protobuf.Duration`). The name should be in a canonical form (e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they expect it to use in the context of Any. However, for URLs which use the scheme `http`, `https`, or no scheme, one can optionally set up a type server that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed. * An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error. * Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)\n\nNote: this functionality is not currently available in the official protobuf release, and it is not used for type URLs beginning with type.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be used with implementation specific semantics." - }, - "value": { - "type": "string", - "description": "Must be a valid serialized protocol buffer of the above specified type.", - "format": "byte" - } - } - }, - "AppStartTime": { - "id": "AppStartTime", - "type": "object", - "properties": { - "fullyDrawnTime": { - "$ref": "Duration", - "description": "Optional. The time from app start to reaching the developer-reported \"fully drawn\" time. This is only stored if the app includes a call to Activity.reportFullyDrawn(). See https://developer.android.com/topic/performance/launch-time.html#time-full" - }, - "initialDisplayTime": { - "$ref": "Duration", - "description": "The time from app start to the first displayed activity being drawn, as reported in Logcat. See https://developer.android.com/topic/performance/launch-time.html#time-initial" - } - } - }, - "BasicPerfSampleSeries": { - "id": "BasicPerfSampleSeries", - "type": "object", - "description": "Encapsulates the metadata for basic sample series represented by a line chart", - "properties": { - "perfMetricType": { - "type": "string", - "enum": [ - "cpu", - "graphics", - "memory", - "network", - "perfMetricTypeUnspecified" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "" - ] - }, - "perfUnit": { - "type": "string", - "enum": [ - "byte", - "bytesPerSecond", - "framesPerSecond", - "kibibyte", - "percent", - "perfUnitUnspecified" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "" - ] - }, - "sampleSeriesLabel": { - "type": "string", - "enum": [ - "cpuKernel", - "cpuTotal", - "cpuUser", - "graphicsFrameRate", - "memoryRssPrivate", - "memoryRssShared", - "memoryRssTotal", - "memoryTotal", - "networkReceived", - "networkSent", - "ntBytesReceived", - "ntBytesTransferred", - "sampleSeriesTypeUnspecified" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - } - } - }, - "BatchCreatePerfSamplesRequest": { - "id": "BatchCreatePerfSamplesRequest", - "type": "object", - "description": "The request must provide up to a maximum of 5000 samples to be created; a larger sample size will cause an INVALID_ARGUMENT error", - "properties": { - "perfSamples": { - "type": "array", - "description": "The set of PerfSamples to create should not include existing timestamps", - "items": { - "$ref": "PerfSample" - } - } - } - }, - "BatchCreatePerfSamplesResponse": { - "id": "BatchCreatePerfSamplesResponse", - "type": "object", - "properties": { - "perfSamples": { - "type": "array", - "items": { - "$ref": "PerfSample" - } - } - } - }, - "CPUInfo": { - "id": "CPUInfo", - "type": "object", - "properties": { - "cpuProcessor": { - "type": "string", - "description": "description of the device processor ie '1.8 GHz hexa core 64-bit ARMv8-A'" - }, - "cpuSpeedInGhz": { - "type": "number", - "description": "the CPU clock speed in GHz", - "format": "float" - }, - "numberOfCores": { - "type": "integer", - "description": "the number of CPU cores", - "format": "int32" - } - } - }, - "Duration": { - "id": "Duration", - "type": "object", - "description": "A Duration represents a signed, fixed-length span of time represented as a count of seconds and fractions of seconds at nanosecond resolution. It is independent of any calendar and concepts like \"day\" or \"month\". It is related to Timestamp in that the difference between two Timestamp values is a Duration and it can be added or subtracted from a Timestamp. Range is approximately +-10,000 years.\n\n# Examples\n\nExample 1: Compute Duration from two Timestamps in pseudo code.\n\nTimestamp start = ...; Timestamp end = ...; Duration duration = ...;\n\nduration.seconds = end.seconds - start.seconds; duration.nanos = end.nanos - start.nanos;\n\nif (duration.seconds 0) { duration.seconds += 1; duration.nanos -= 1000000000; } else if (durations.seconds \u003e 0 && duration.nanos \u003c 0) { duration.seconds -= 1; duration.nanos += 1000000000; }\n\nExample 2: Compute Timestamp from Timestamp + Duration in pseudo code.\n\nTimestamp start = ...; Duration duration = ...; Timestamp end = ...;\n\nend.seconds = start.seconds + duration.seconds; end.nanos = start.nanos + duration.nanos;\n\nif (end.nanos = 1000000000) { end.seconds += 1; end.nanos -= 1000000000; }\n\nExample 3: Compute Duration from datetime.timedelta in Python.\n\ntd = datetime.timedelta(days=3, minutes=10) duration = Duration() duration.FromTimedelta(td)\n\n# JSON Mapping\n\nIn JSON format, the Duration type is encoded as a string rather than an object, where the string ends in the suffix \"s\" (indicating seconds) and is preceded by the number of seconds, with nanoseconds expressed as fractional seconds. For example, 3 seconds with 0 nanoseconds should be encoded in JSON format as \"3s\", while 3 seconds and 1 nanosecond should be expressed in JSON format as \"3.000000001s\", and 3 seconds and 1 microsecond should be expressed in JSON format as \"3.000001s\".", - "properties": { - "nanos": { - "type": "integer", - "description": "Signed fractions of a second at nanosecond resolution of the span of time. Durations less than one second are represented with a 0 `seconds` field and a positive or negative `nanos` field. For durations of one second or more, a non-zero value for the `nanos` field must be of the same sign as the `seconds` field. Must be from -999,999,999 to +999,999,999 inclusive.", - "format": "int32" - }, - "seconds": { - "type": "string", - "description": "Signed seconds of the span of time. Must be from -315,576,000,000 to +315,576,000,000 inclusive. Note: these bounds are computed from: 60 sec/min * 60 min/hr * 24 hr/day * 365.25 days/year * 10000 years", - "format": "int64" - } - } - }, - "Execution": { - "id": "Execution", - "type": "object", - "description": "An Execution represents a collection of Steps. For instance, it could represent: - a mobile test executed across a range of device configurations - a jenkins job with a build step followed by a test step\n\nThe maximum size of an execution message is 1 MiB.\n\nAn Execution can be updated until its state is set to COMPLETE at which point it becomes immutable.", - "properties": { - "completionTime": { - "$ref": "Timestamp", - "description": "The time when the Execution status transitioned to COMPLETE.\n\nThis value will be set automatically when state transitions to COMPLETE.\n\n- In response: set if the execution state is COMPLETE. - In create/update request: never set" - }, - "creationTime": { - "$ref": "Timestamp", - "description": "The time when the Execution was created.\n\nThis value will be set automatically when CreateExecution is called.\n\n- In response: always set - In create/update request: never set" - }, - "executionId": { - "type": "string", - "description": "A unique identifier within a History for this Execution.\n\nReturns INVALID_ARGUMENT if this field is set or overwritten by the caller.\n\n- In response always set - In create/update request: never set" - }, - "outcome": { - "$ref": "Outcome", - "description": "Classify the result, for example into SUCCESS or FAILURE\n\n- In response: present if set by create/update request - In create/update request: optional" - }, - "specification": { - "$ref": "Specification", - "description": "Lightweight information about execution request.\n\n- In response: present if set by create - In create: optional - In update: optional" - }, - "state": { - "type": "string", - "description": "The initial state is IN_PROGRESS.\n\nThe only legal state transitions is from IN_PROGRESS to COMPLETE.\n\nA PRECONDITION_FAILED will be returned if an invalid transition is requested.\n\nThe state can only be set to COMPLETE once. A FAILED_PRECONDITION will be returned if the state is set to COMPLETE multiple times.\n\nIf the state is set to COMPLETE, all the in-progress steps within the execution will be set as COMPLETE. If the outcome of the step is not set, the outcome will be set to INCONCLUSIVE.\n\n- In response always set - In create/update request: optional", - "enum": [ - "complete", - "inProgress", - "pending", - "unknownState" - ], - "enumDescriptions": [ - "", - "", - "", - "" - ] - }, - "testExecutionMatrixId": { - "type": "string", - "description": "TestExecution Matrix ID that the TestExecutionService uses.\n\n- In response: present if set by create - In create: optional - In update: never set" - } - } - }, - "FailureDetail": { - "id": "FailureDetail", - "type": "object", - "properties": { - "crashed": { - "type": "boolean", - "description": "If the failure was severe because the system (app) under test crashed." - }, - "notInstalled": { - "type": "boolean", - "description": "If an app is not installed and thus no test can be run with the app. This might be caused by trying to run a test on an unsupported platform." - }, - "otherNativeCrash": { - "type": "boolean", - "description": "If a native process (including any other than the app) crashed." - }, - "timedOut": { - "type": "boolean", - "description": "If the test overran some time limit, and that is why it failed." - }, - "unableToCrawl": { - "type": "boolean", - "description": "If the robo was unable to crawl the app; perhaps because the app did not start." - } - } - }, - "FileReference": { - "id": "FileReference", - "type": "object", - "description": "A reference to a file.", - "properties": { - "fileUri": { - "type": "string", - "description": "The URI of a file stored in Google Cloud Storage.\n\nFor example: http://storage.googleapis.com/mybucket/path/to/test.xml or in gsutil format: gs://mybucket/path/to/test.xml with version-specific info, gs://mybucket/path/to/test.xml#1360383693690000\n\nAn INVALID_ARGUMENT error will be returned if the URI format is not supported.\n\n- In response: always set - In create/update request: always set" - } - } - }, - "GraphicsStats": { - "id": "GraphicsStats", - "type": "object", - "description": "Graphics statistics for the App. The information is collected from 'adb shell dumpsys graphicsstats'. For more info see: https://developer.android.com/training/testing/performance.html Statistics will only be present for API 23+.", - "properties": { - "buckets": { - "type": "array", - "description": "Histogram of frame render times. There should be 154 buckets ranging from [5ms, 6ms) to [4950ms, infinity)", - "items": { - "$ref": "GraphicsStatsBucket" - } - }, - "highInputLatencyCount": { - "type": "string", - "description": "Total \"high input latency\" events.", - "format": "int64" - }, - "jankyFrames": { - "type": "string", - "description": "Total frames with slow render time. Should be \u003c= total_frames.", - "format": "int64" - }, - "missedVsyncCount": { - "type": "string", - "description": "Total \"missed vsync\" events.", - "format": "int64" - }, - "p50Millis": { - "type": "string", - "description": "50th percentile frame render time in milliseconds.", - "format": "int64" - }, - "p90Millis": { - "type": "string", - "description": "90th percentile frame render time in milliseconds.", - "format": "int64" - }, - "p95Millis": { - "type": "string", - "description": "95th percentile frame render time in milliseconds.", - "format": "int64" - }, - "p99Millis": { - "type": "string", - "description": "99th percentile frame render time in milliseconds.", - "format": "int64" - }, - "slowBitmapUploadCount": { - "type": "string", - "description": "Total \"slow bitmap upload\" events.", - "format": "int64" - }, - "slowDrawCount": { - "type": "string", - "description": "Total \"slow draw\" events.", - "format": "int64" - }, - "slowUiThreadCount": { - "type": "string", - "description": "Total \"slow UI thread\" events.", - "format": "int64" - }, - "totalFrames": { - "type": "string", - "description": "Total frames rendered by package.", - "format": "int64" - } - } - }, - "GraphicsStatsBucket": { - "id": "GraphicsStatsBucket", - "type": "object", - "properties": { - "frameCount": { - "type": "string", - "description": "Number of frames in the bucket.", - "format": "int64" - }, - "renderMillis": { - "type": "string", - "description": "Lower bound of render time in milliseconds.", - "format": "int64" - } - } - }, - "History": { - "id": "History", - "type": "object", - "description": "A History represents a sorted list of Executions ordered by the start_timestamp_millis field (descending). It can be used to group all the Executions of a continuous build.\n\nNote that the ordering only operates on one-dimension. If a repository has multiple branches, it means that multiple histories will need to be used in order to order Executions per branch.", - "properties": { - "displayName": { - "type": "string", - "description": "A short human-readable (plain text) name to display in the UI. Maximum of 100 characters.\n\n- In response: present if set during create. - In create request: optional" - }, - "historyId": { - "type": "string", - "description": "A unique identifier within a project for this History.\n\nReturns INVALID_ARGUMENT if this field is set or overwritten by the caller.\n\n- In response always set - In create request: never set" - }, - "name": { - "type": "string", - "description": "A name to uniquely identify a history within a project. Maximum of 100 characters.\n\n- In response always set - In create request: always set" - } - } - }, - "Image": { - "id": "Image", - "type": "object", - "description": "An image, with a link to the main image and a thumbnail.", - "properties": { - "error": { - "$ref": "Status", - "description": "An error explaining why the thumbnail could not be rendered." - }, - "sourceImage": { - "$ref": "ToolOutputReference", - "description": "A reference to the full-size, original image.\n\nThis is the same as the tool_outputs entry for the image under its Step.\n\nAlways set." - }, - "stepId": { - "type": "string", - "description": "The step to which the image is attached.\n\nAlways set." - }, - "thumbnail": { - "$ref": "Thumbnail", - "description": "The thumbnail." - } - } - }, - "InconclusiveDetail": { - "id": "InconclusiveDetail", - "type": "object", - "properties": { - "abortedByUser": { - "type": "boolean", - "description": "If the end user aborted the test execution before a pass or fail could be determined. For example, the user pressed ctrl-c which sent a kill signal to the test runner while the test was running." - }, - "infrastructureFailure": { - "type": "boolean", - "description": "If the test runner could not determine success or failure because the test depends on a component other than the system under test which failed.\n\nFor example, a mobile test requires provisioning a device where the test executes, and that provisioning can fail." - } - } - }, - "ListExecutionsResponse": { - "id": "ListExecutionsResponse", - "type": "object", - "properties": { - "executions": { - "type": "array", - "description": "Executions.\n\nAlways set.", - "items": { - "$ref": "Execution" - } - }, - "nextPageToken": { - "type": "string", - "description": "A continuation token to resume the query at the next item.\n\nWill only be set if there are more Executions to fetch." - } - } - }, - "ListHistoriesResponse": { - "id": "ListHistoriesResponse", - "type": "object", - "description": "Response message for HistoryService.List", - "properties": { - "histories": { - "type": "array", - "description": "Histories.", - "items": { - "$ref": "History" - } - }, - "nextPageToken": { - "type": "string", - "description": "A continuation token to resume the query at the next item.\n\nWill only be set if there are more histories to fetch.\n\nTokens are valid for up to one hour from the time of the first list request. For instance, if you make a list request at 1PM and use the token from this first request 10 minutes later, the token from this second response will only be valid for 50 minutes." - } - } - }, - "ListPerfSampleSeriesResponse": { - "id": "ListPerfSampleSeriesResponse", - "type": "object", - "properties": { - "perfSampleSeries": { - "type": "array", - "description": "The resulting PerfSampleSeries sorted by id", - "items": { - "$ref": "PerfSampleSeries" - } - } - } - }, - "ListPerfSamplesResponse": { - "id": "ListPerfSamplesResponse", - "type": "object", - "properties": { - "nextPageToken": { - "type": "string", - "description": "Optional, returned if result size exceeds the page size specified in the request (or the default page size, 500, if unspecified). It indicates the last sample timestamp to be used as page_token in subsequent request" - }, - "perfSamples": { - "type": "array", - "items": { - "$ref": "PerfSample" - } - } - } - }, - "ListScreenshotClustersResponse": { - "id": "ListScreenshotClustersResponse", - "type": "object", - "properties": { - "clusters": { - "type": "array", - "description": "The set of clustres associated with an execution Always set", - "items": { - "$ref": "ScreenshotCluster" - } - } - } - }, - "ListStepThumbnailsResponse": { - "id": "ListStepThumbnailsResponse", - "type": "object", - "description": "A response containing the thumbnails in a step.", - "properties": { - "nextPageToken": { - "type": "string", - "description": "A continuation token to resume the query at the next item.\n\nIf set, indicates that there are more thumbnails to read, by calling list again with this value in the page_token field." - }, - "thumbnails": { - "type": "array", - "description": "A list of image data.\n\nImages are returned in a deterministic order; they are ordered by these factors, in order of importance: * First, by their associated test case. Images without a test case are considered greater than images with one. * Second, by their creation time. Images without a creation time are greater than images with one. * Third, by the order in which they were added to the step (by calls to CreateStep or UpdateStep).", - "items": { - "$ref": "Image" - } - } - } - }, - "ListStepsResponse": { - "id": "ListStepsResponse", - "type": "object", - "description": "Response message for StepService.List.", - "properties": { - "nextPageToken": { - "type": "string", - "description": "A continuation token to resume the query at the next item.\n\nIf set, indicates that there are more steps to read, by calling list again with this value in the page_token field." - }, - "steps": { - "type": "array", - "description": "Steps.", - "items": { - "$ref": "Step" - } - } - } - }, - "MemoryInfo": { - "id": "MemoryInfo", - "type": "object", - "properties": { - "memoryCapInKibibyte": { - "type": "string", - "description": "Maximum memory that can be allocated to the process in KiB", - "format": "int64" - }, - "memoryTotalInKibibyte": { - "type": "string", - "description": "Total memory available on the device in KiB", - "format": "int64" - } - } - }, - "Outcome": { - "id": "Outcome", - "type": "object", - "description": "Interprets a result so that humans and machines can act on it.", - "properties": { - "failureDetail": { - "$ref": "FailureDetail", - "description": "More information about a FAILURE outcome.\n\nReturns INVALID_ARGUMENT if this field is set but the summary is not FAILURE.\n\nOptional" - }, - "inconclusiveDetail": { - "$ref": "InconclusiveDetail", - "description": "More information about an INCONCLUSIVE outcome.\n\nReturns INVALID_ARGUMENT if this field is set but the summary is not INCONCLUSIVE.\n\nOptional" - }, - "skippedDetail": { - "$ref": "SkippedDetail", - "description": "More information about a SKIPPED outcome.\n\nReturns INVALID_ARGUMENT if this field is set but the summary is not SKIPPED.\n\nOptional" - }, - "successDetail": { - "$ref": "SuccessDetail", - "description": "More information about a SUCCESS outcome.\n\nReturns INVALID_ARGUMENT if this field is set but the summary is not SUCCESS.\n\nOptional" - }, - "summary": { - "type": "string", - "description": "The simplest way to interpret a result.\n\nRequired", - "enum": [ - "failure", - "inconclusive", - "skipped", - "success", - "unset" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "" - ] - } - } - }, - "PerfEnvironment": { - "id": "PerfEnvironment", - "type": "object", - "description": "Encapsulates performance environment info", - "properties": { - "cpuInfo": { - "$ref": "CPUInfo", - "description": "CPU related environment info" - }, - "memoryInfo": { - "$ref": "MemoryInfo", - "description": "Memory related environment info" - } - } - }, - "PerfMetricsSummary": { - "id": "PerfMetricsSummary", - "type": "object", - "description": "A summary of perf metrics collected and performance environment info", - "properties": { - "appStartTime": { - "$ref": "AppStartTime" - }, - "executionId": { - "type": "string", - "description": "A tool results execution ID." - }, - "graphicsStats": { - "$ref": "GraphicsStats", - "description": "Graphics statistics for the entire run. Statistics are reset at the beginning of the run and collected at the end of the run." - }, - "historyId": { - "type": "string", - "description": "A tool results history ID." - }, - "perfEnvironment": { - "$ref": "PerfEnvironment", - "description": "Describes the environment in which the performance metrics were collected" - }, - "perfMetrics": { - "type": "array", - "description": "Set of resource collected", - "items": { - "type": "string", + "id": "toolresults:v1beta3", + "kind": "discovery#restDescription", + "name": "toolresults", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "alt": { + "default": "json", + "description": "Data format for the response.", "enum": [ - "cpu", - "graphics", - "memory", - "network", - "perfMetricTypeUnspecified" + "json" ], "enumDescriptions": [ - "", - "", - "", - "", - "" - ] - } - }, - "projectId": { - "type": "string", - "description": "The cloud project" - }, - "stepId": { - "type": "string", - "description": "A tool results step ID." - } - } - }, - "PerfSample": { - "id": "PerfSample", - "type": "object", - "description": "Resource representing a single performance measure or data point", - "properties": { - "sampleTime": { - "$ref": "Timestamp", - "description": "Timestamp of collection" - }, - "value": { - "type": "number", - "description": "Value observed", - "format": "double" - } - } - }, - "PerfSampleSeries": { - "id": "PerfSampleSeries", - "type": "object", - "description": "Resource representing a collection of performance samples (or data points)", - "properties": { - "basicPerfSampleSeries": { - "$ref": "BasicPerfSampleSeries", - "description": "Basic series represented by a line chart" - }, - "executionId": { - "type": "string", - "description": "A tool results execution ID." - }, - "historyId": { - "type": "string", - "description": "A tool results history ID." - }, - "projectId": { - "type": "string", - "description": "The cloud project" - }, - "sampleSeriesId": { - "type": "string", - "description": "A sample series id" - }, - "stepId": { - "type": "string", - "description": "A tool results step ID." - } - } - }, - "ProjectSettings": { - "id": "ProjectSettings", - "type": "object", - "description": "Per-project settings for the Tool Results service.", - "properties": { - "defaultBucket": { - "type": "string", - "description": "The name of the Google Cloud Storage bucket to which results are written.\n\nBy default, this is unset.\n\nIn update request: optional In response: optional" - }, - "name": { - "type": "string", - "description": "The name of the project's settings.\n\nAlways of the form: projects/{project-id}/settings\n\nIn update request: never set In response: always set" - } - } - }, - "PublishXunitXmlFilesRequest": { - "id": "PublishXunitXmlFilesRequest", - "type": "object", - "description": "Request message for StepService.PublishXunitXmlFiles.", - "properties": { - "xunitXmlFiles": { - "type": "array", - "description": "URI of the Xunit XML files to publish.\n\nThe maximum size of the file this reference is pointing to is 50MB.\n\nRequired.", - "items": { - "$ref": "FileReference" - } - } - } - }, - "Screen": { - "id": "Screen", - "type": "object", - "properties": { - "fileReference": { - "type": "string", - "description": "File reference of the png file. Required." - }, - "locale": { - "type": "string", - "description": "Locale of the device that the screenshot was taken on. Required." - }, - "model": { - "type": "string", - "description": "Model of the device that the screenshot was taken on. Required." - }, - "version": { - "type": "string", - "description": "OS version of the device that the screenshot was taken on. Required." - } - } - }, - "ScreenshotCluster": { - "id": "ScreenshotCluster", - "type": "object", - "properties": { - "activity": { - "type": "string", - "description": "A string that describes the activity of every screen in the cluster." - }, - "clusterId": { - "type": "string", - "description": "A unique identifier for the cluster." - }, - "keyScreen": { - "$ref": "Screen", - "description": "A singular screen that represents the cluster as a whole. This screen will act as the \"cover\" of the entire cluster. When users look at the clusters, only the key screen from each cluster will be shown. Which screen is the key screen is determined by the ClusteringAlgorithm" - }, - "screens": { - "type": "array", - "description": "Full list of screens.", - "items": { - "$ref": "Screen" - } - } - } - }, - "SkippedDetail": { - "id": "SkippedDetail", - "type": "object", - "properties": { - "incompatibleAppVersion": { - "type": "boolean", - "description": "If the App doesn't support the specific API level." - }, - "incompatibleArchitecture": { - "type": "boolean", - "description": "If the App doesn't run on the specific architecture, for example, x86." - }, - "incompatibleDevice": { - "type": "boolean", - "description": "If the requested OS version doesn't run on the specific device model." - } - } - }, - "Specification": { - "id": "Specification", - "type": "object", - "description": "The details about how to run the execution.", - "properties": { - "androidTest": { - "$ref": "AndroidTest", - "description": "An Android mobile test execution specification." - } - } - }, - "StackTrace": { - "id": "StackTrace", - "type": "object", - "description": "A stacktrace.", - "properties": { - "clusterId": { - "type": "string", - "description": "Exception cluster ID" - }, - "exception": { - "type": "string", - "description": "The stack trace message.\n\nRequired" - }, - "reportId": { - "type": "string", - "description": "Exception report ID" - } - } - }, - "Status": { - "id": "Status", - "type": "object", - "description": "The `Status` type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by [gRPC](https://github.com/grpc). The error model is designed to be:\n\n- Simple to use and understand for most users - Flexible enough to meet unexpected needs\n\n# Overview\n\nThe `Status` message contains three pieces of data: error code, error message, and error details. The error code should be an enum value of [google.rpc.Code][], but it may accept additional error codes if needed. The error message should be a developer-facing English message that helps developers *understand* and *resolve* the error. If a localized user-facing error message is needed, put the localized message in the error details or localize it in the client. The optional error details may contain arbitrary information about the error. There is a predefined set of error detail types in the package `google.rpc` that can be used for common error conditions.\n\n# Language mapping\n\nThe `Status` message is the logical representation of the error model, but it is not necessarily the actual wire format. When the `Status` message is exposed in different client libraries and different wire protocols, it can be mapped differently. For example, it will likely be mapped to some exceptions in Java, but more likely mapped to some error codes in C.\n\n# Other uses\n\nThe error model and the `Status` message can be used in a variety of environments, either with or without APIs, to provide a consistent developer experience across different environments.\n\nExample uses of this error model include:\n\n- Partial errors. If a service needs to return partial errors to the client, it may embed the `Status` in the normal response to indicate the partial errors.\n\n- Workflow errors. A typical workflow has multiple steps. Each step may have a `Status` message for error reporting.\n\n- Batch operations. If a client uses batch request and batch response, the `Status` message should be used directly inside batch response, one for each error sub-response.\n\n- Asynchronous operations. If an API call embeds asynchronous operation results in its response, the status of those operations should be represented directly using the `Status` message.\n\n- Logging. If some API errors are stored in logs, the message `Status` could be used directly after any stripping needed for security/privacy reasons.", - "properties": { - "code": { - "type": "integer", - "description": "The status code, which should be an enum value of [google.rpc.Code][].", - "format": "int32" - }, - "details": { - "type": "array", - "description": "A list of messages that carry the error details. There is a common set of message types for APIs to use.", - "items": { - "$ref": "Any" - } - }, - "message": { - "type": "string", - "description": "A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the [google.rpc.Status.details][] field, or localized by the client." - } - } - }, - "Step": { - "id": "Step", - "type": "object", - "description": "A Step represents a single operation performed as part of Execution. A step can be used to represent the execution of a tool ( for example a test runner execution or an execution of a compiler).\n\nSteps can overlap (for instance two steps might have the same start time if some operations are done in parallel).\n\nHere is an example, let's consider that we have a continuous build is executing a test runner for each iteration. The workflow would look like: - user creates a Execution with id 1 - user creates an TestExecutionStep with id 100 for Execution 1 - user update TestExecutionStep with id 100 to add a raw xml log + the service parses the xml logs and returns a TestExecutionStep with updated TestResult(s). - user update the status of TestExecutionStep with id 100 to COMPLETE\n\nA Step can be updated until its state is set to COMPLETE at which points it becomes immutable.", - "properties": { - "completionTime": { - "$ref": "Timestamp", - "description": "The time when the step status was set to complete.\n\nThis value will be set automatically when state transitions to COMPLETE.\n\n- In response: set if the execution state is COMPLETE. - In create/update request: never set" - }, - "creationTime": { - "$ref": "Timestamp", - "description": "The time when the step was created.\n\n- In response: always set - In create/update request: never set" - }, - "description": { - "type": "string", - "description": "A description of this tool For example: mvn clean package -D skipTests=true\n\n- In response: present if set by create/update request - In create/update request: optional" - }, - "deviceUsageDuration": { - "$ref": "Duration", - "description": "How much the device resource is used to perform the test.\n\nThis is the device usage used for billing purpose, which is different from the run_duration, for example, infrastructure failure won't be charged for device usage.\n\nPRECONDITION_FAILED will be returned if one attempts to set a device_usage on a step which already has this field set.\n\n- In response: present if previously set. - In create request: optional - In update request: optional" - }, - "dimensionValue": { - "type": "array", - "description": "If the execution containing this step has any dimension_definition set, then this field allows the child to specify the values of the dimensions.\n\nThe keys must exactly match the dimension_definition of the execution.\n\nFor example, if the execution has `dimension_definition = ['attempt', 'device']` then a step must define values for those dimensions, eg. `dimension_value = ['attempt': '1', 'device': 'Nexus 6']`\n\nIf a step does not participate in one dimension of the matrix, the value for that dimension should be empty string. For example, if one of the tests is executed by a runner which does not support retries, the step could have `dimension_value = ['attempt': '', 'device': 'Nexus 6']`\n\nIf the step does not participate in any dimensions of the matrix, it may leave dimension_value unset.\n\nA PRECONDITION_FAILED will be returned if any of the keys do not exist in the dimension_definition of the execution.\n\nA PRECONDITION_FAILED will be returned if another step in this execution already has the same name and dimension_value, but differs on other data fields, for example, step field is different.\n\nA PRECONDITION_FAILED will be returned if dimension_value is set, and there is a dimension_definition in the execution which is not specified as one of the keys.\n\n- In response: present if set by create - In create request: optional - In update request: never set", - "items": { - "$ref": "StepDimensionValueEntry" - } - }, - "hasImages": { - "type": "boolean", - "description": "Whether any of the outputs of this step are images whose thumbnails can be fetched with ListThumbnails.\n\n- In response: always set - In create/update request: never set" - }, - "labels": { - "type": "array", - "description": "Arbitrary user-supplied key/value pairs that are associated with the step.\n\nUsers are responsible for managing the key namespace such that keys don't accidentally collide.\n\nAn INVALID_ARGUMENT will be returned if the number of labels exceeds 100 or if the length of any of the keys or values exceeds 100 characters.\n\n- In response: always set - In create request: optional - In update request: optional; any new key/value pair will be added to the map, and any new value for an existing key will update that key's value", - "items": { - "$ref": "StepLabelsEntry" - } - }, - "name": { - "type": "string", - "description": "A short human-readable name to display in the UI. Maximum of 100 characters. For example: Clean build\n\nA PRECONDITION_FAILED will be returned upon creating a new step if it shares its name and dimension_value with an existing step. If two steps represent a similar action, but have different dimension values, they should share the same name. For instance, if the same set of tests is run on two different platforms, the two steps should have the same name.\n\n- In response: always set - In create request: always set - In update request: never set" - }, - "outcome": { - "$ref": "Outcome", - "description": "Classification of the result, for example into SUCCESS or FAILURE\n\n- In response: present if set by create/update request - In create/update request: optional" - }, - "runDuration": { - "$ref": "Duration", - "description": "How long it took for this step to run.\n\nIf unset, this is set to the difference between creation_time and completion_time when the step is set to the COMPLETE state. In some cases, it is appropriate to set this value separately: For instance, if a step is created, but the operation it represents is queued for a few minutes before it executes, it would be appropriate not to include the time spent queued in its run_duration.\n\nPRECONDITION_FAILED will be returned if one attempts to set a run_duration on a step which already has this field set.\n\n- In response: present if previously set; always present on COMPLETE step - In create request: optional - In update request: optional" - }, - "state": { - "type": "string", - "description": "The initial state is IN_PROGRESS. The only legal state transitions are * IN_PROGRESS -\u003e COMPLETE\n\nA PRECONDITION_FAILED will be returned if an invalid transition is requested.\n\nIt is valid to create Step with a state set to COMPLETE. The state can only be set to COMPLETE once. A PRECONDITION_FAILED will be returned if the state is set to COMPLETE multiple times.\n\n- In response: always set - In create/update request: optional", - "enum": [ - "complete", - "inProgress", - "pending", - "unknownState" - ], - "enumDescriptions": [ - "", - "", - "", - "" - ] - }, - "stepId": { - "type": "string", - "description": "A unique identifier within a Execution for this Step.\n\nReturns INVALID_ARGUMENT if this field is set or overwritten by the caller.\n\n- In response: always set - In create/update request: never set" - }, - "testExecutionStep": { - "$ref": "TestExecutionStep", - "description": "An execution of a test runner." - }, - "toolExecutionStep": { - "$ref": "ToolExecutionStep", - "description": "An execution of a tool (used for steps we don't explicitly support)." - } - } - }, - "StepDimensionValueEntry": { - "id": "StepDimensionValueEntry", - "type": "object", - "properties": { - "key": { - "type": "string" - }, - "value": { - "type": "string" - } - } - }, - "StepLabelsEntry": { - "id": "StepLabelsEntry", - "type": "object", - "properties": { - "key": { - "type": "string" - }, - "value": { - "type": "string" - } - } - }, - "SuccessDetail": { - "id": "SuccessDetail", - "type": "object", - "properties": { - "otherNativeCrash": { - "type": "boolean", - "description": "If a native process other than the app crashed." - } - } - }, - "TestCaseReference": { - "id": "TestCaseReference", - "type": "object", - "description": "A reference to a test case.\n\nTest case references are canonically ordered lexicographically by these three factors: * First, by test_suite_name. * Second, by class_name. * Third, by name.", - "properties": { - "className": { - "type": "string", - "description": "The name of the class." - }, - "name": { - "type": "string", - "description": "The name of the test case.\n\nRequired." - }, - "testSuiteName": { - "type": "string", - "description": "The name of the test suite to which this test case belongs." - } - } - }, - "TestExecutionStep": { - "id": "TestExecutionStep", - "type": "object", - "description": "A step that represents running tests.\n\nIt accepts ant-junit xml files which will be parsed into structured test results by the service. Xml file paths are updated in order to append more files, however they can't be deleted.\n\nUsers can also add test results manually by using the test_result field.", - "properties": { - "testIssues": { - "type": "array", - "description": "Issues observed during the test execution.\n\nFor example, if the mobile app under test crashed during the test, the error message and the stack trace content can be recorded here to assist debugging.\n\n- In response: present if set by create or update - In create/update request: optional", - "items": { - "$ref": "TestIssue" - } - }, - "testSuiteOverviews": { - "type": "array", - "description": "List of test suite overview contents. This could be parsed from xUnit XML log by server, or uploaded directly by user. This references should only be called when test suites are fully parsed or uploaded.\n\nThe maximum allowed number of test suite overviews per step is 1000.\n\n- In response: always set - In create request: optional - In update request: never (use publishXunitXmlFiles custom method instead)", - "items": { - "$ref": "TestSuiteOverview" - } - }, - "testTiming": { - "$ref": "TestTiming", - "description": "The timing break down of the test execution.\n\n- In response: present if set by create or update - In create/update request: optional" - }, - "toolExecution": { - "$ref": "ToolExecution", - "description": "Represents the execution of the test runner.\n\nThe exit code of this tool will be used to determine if the test passed.\n\n- In response: always set - In create/update request: optional" - } - } - }, - "TestIssue": { - "id": "TestIssue", - "type": "object", - "description": "An issue detected occurring during a test execution.", - "properties": { - "errorMessage": { - "type": "string", - "description": "A brief human-readable message describing the issue. Required." - }, - "severity": { - "type": "string", - "description": "Severity of issue. Required.", - "enum": [ - "info", - "severe", - "unspecifiedSeverity", - "warning" - ], - "enumDescriptions": [ - "", - "", - "", - "" - ] - }, - "stackTrace": { - "$ref": "StackTrace", - "description": "Deprecated in favor of stack trace fields inside specific warnings." - }, - "type": { - "type": "string", - "description": "Type of issue. Required.", - "enum": [ - "anr", - "compatibleWithOrchestrator", - "fatalException", - "launcherActivityNotFound", - "nativeCrash", - "startActivityNotFound", - "unspecifiedType", - "unusedRoboDirective" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "warning": { - "$ref": "Any", - "description": "Warning message with additional details of the issue. Should always be a message from com.google.devtools.toolresults.v1.warnings" - } - } - }, - "TestSuiteOverview": { - "id": "TestSuiteOverview", - "type": "object", - "description": "A summary of a test suite result either parsed from XML or uploaded directly by a user.\n\nNote: the API related comments are for StepService only. This message is also being used in ExecutionService in a read only mode for the corresponding step.", - "properties": { - "errorCount": { - "type": "integer", - "description": "Number of test cases in error, typically set by the service by parsing the xml_source.\n\n- In create/response: always set - In update request: never", - "format": "int32" - }, - "failureCount": { - "type": "integer", - "description": "Number of failed test cases, typically set by the service by parsing the xml_source. May also be set by the user.\n\n- In create/response: always set - In update request: never", - "format": "int32" - }, - "name": { - "type": "string", - "description": "The name of the test suite.\n\n- In create/response: always set - In update request: never" - }, - "skippedCount": { - "type": "integer", - "description": "Number of test cases not run, typically set by the service by parsing the xml_source.\n\n- In create/response: always set - In update request: never", - "format": "int32" - }, - "totalCount": { - "type": "integer", - "description": "Number of test cases, typically set by the service by parsing the xml_source.\n\n- In create/response: always set - In update request: never", - "format": "int32" - }, - "xmlSource": { - "$ref": "FileReference", - "description": "If this test suite was parsed from XML, this is the URI where the original XML file is stored.\n\nNote: Multiple test suites can share the same xml_source\n\nReturns INVALID_ARGUMENT if the uri format is not supported.\n\n- In create/response: optional - In update request: never" - } - } - }, - "TestTiming": { - "id": "TestTiming", - "type": "object", - "description": "Testing timing break down to know phases.", - "properties": { - "testProcessDuration": { - "$ref": "Duration", - "description": "How long it took to run the test process.\n\n- In response: present if previously set. - In create/update request: optional" - } - } - }, - "Thumbnail": { - "id": "Thumbnail", - "type": "object", - "description": "A single thumbnail, with its size and format.", - "properties": { - "contentType": { - "type": "string", - "description": "The thumbnail's content type, i.e. \"image/png\".\n\nAlways set." - }, - "data": { - "type": "string", - "description": "The thumbnail file itself.\n\nThat is, the bytes here are precisely the bytes that make up the thumbnail file; they can be served as an image as-is (with the appropriate content type.)\n\nAlways set.", - "format": "byte" - }, - "heightPx": { - "type": "integer", - "description": "The height of the thumbnail, in pixels.\n\nAlways set.", - "format": "int32" - }, - "widthPx": { - "type": "integer", - "description": "The width of the thumbnail, in pixels.\n\nAlways set.", - "format": "int32" - } - } - }, - "Timestamp": { - "id": "Timestamp", - "type": "object", - "description": "A Timestamp represents a point in time independent of any time zone or calendar, represented as seconds and fractions of seconds at nanosecond resolution in UTC Epoch time. It is encoded using the Proleptic Gregorian Calendar which extends the Gregorian calendar backwards to year one. It is encoded assuming all minutes are 60 seconds long, i.e. leap seconds are \"smeared\" so that no leap second table is needed for interpretation. Range is from 0001-01-01T00:00:00Z to 9999-12-31T23:59:59.999999999Z. By restricting to that range, we ensure that we can convert to and from RFC 3339 date strings. See [https://www.ietf.org/rfc/rfc3339.txt](https://www.ietf.org/rfc/rfc3339.txt).\n\n# Examples\n\nExample 1: Compute Timestamp from POSIX `time()`.\n\nTimestamp timestamp; timestamp.set_seconds(time(NULL)); timestamp.set_nanos(0);\n\nExample 2: Compute Timestamp from POSIX `gettimeofday()`.\n\nstruct timeval tv; gettimeofday(&tv, NULL);\n\nTimestamp timestamp; timestamp.set_seconds(tv.tv_sec); timestamp.set_nanos(tv.tv_usec * 1000);\n\nExample 3: Compute Timestamp from Win32 `GetSystemTimeAsFileTime()`.\n\nFILETIME ft; GetSystemTimeAsFileTime(&ft); UINT64 ticks = (((UINT64)ft.dwHighDateTime) \u003c\u003c 32) | ft.dwLowDateTime;\n\n// A Windows tick is 100 nanoseconds. Windows epoch 1601-01-01T00:00:00Z // is 11644473600 seconds before Unix epoch 1970-01-01T00:00:00Z. Timestamp timestamp; timestamp.set_seconds((INT64) ((ticks / 10000000) - 11644473600LL)); timestamp.set_nanos((INT32) ((ticks % 10000000) * 100));\n\nExample 4: Compute Timestamp from Java `System.currentTimeMillis()`.\n\nlong millis = System.currentTimeMillis();\n\nTimestamp timestamp = Timestamp.newBuilder().setSeconds(millis / 1000) .setNanos((int) ((millis % 1000) * 1000000)).build();\n\n\n\nExample 5: Compute Timestamp from current time in Python.\n\ntimestamp = Timestamp() timestamp.GetCurrentTime()\n\n# JSON Mapping\n\nIn JSON format, the Timestamp type is encoded as a string in the [RFC 3339](https://www.ietf.org/rfc/rfc3339.txt) format. That is, the format is \"{year}-{month}-{day}T{hour}:{min}:{sec}[.{frac_sec}]Z\" where {year} is always expressed using four digits while {month}, {day}, {hour}, {min}, and {sec} are zero-padded to two digits each. The fractional seconds, which can go up to 9 digits (i.e. up to 1 nanosecond resolution), are optional. The \"Z\" suffix indicates the timezone (\"UTC\"); the timezone is required, though only UTC (as indicated by \"Z\") is currently supported.\n\nFor example, \"2017-01-15T01:30:15.01Z\" encodes 15.01 seconds past 01:30 UTC on January 15, 2017.\n\nIn JavaScript, one can convert a Date object to this format using the standard [toISOString()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toISOString] method. In Python, a standard `datetime.datetime` object can be converted to this format using [`strftime`](https://docs.python.org/2/library/time.html#time.strftime) with the time format spec '%Y-%m-%dT%H:%M:%S.%fZ'. Likewise, in Java, one can use the Joda Time's [`ISODateTimeFormat.dateTime()`]( http://www.joda.org/joda-time/apidocs/org/joda/time/format/ISODateTimeFormat.html#dateTime-- ) to obtain a formatter capable of generating timestamps in this format.", - "properties": { - "nanos": { - "type": "integer", - "description": "Non-negative fractions of a second at nanosecond resolution. Negative second values with fractions must still have non-negative nanos values that count forward in time. Must be from 0 to 999,999,999 inclusive.", - "format": "int32" - }, - "seconds": { - "type": "string", - "description": "Represents seconds of UTC time since Unix epoch 1970-01-01T00:00:00Z. Must be from 0001-01-01T00:00:00Z to 9999-12-31T23:59:59Z inclusive.", - "format": "int64" - } - } - }, - "ToolExecution": { - "id": "ToolExecution", - "type": "object", - "description": "An execution of an arbitrary tool. It could be a test runner or a tool copying artifacts or deploying code.", - "properties": { - "commandLineArguments": { - "type": "array", - "description": "The full tokenized command line including the program name (equivalent to argv in a C program).\n\n- In response: present if set by create request - In create request: optional - In update request: never set", - "items": { + "Responses with Content-Type of application/json" + ], + "location": "query", "type": "string" - } }, - "exitCode": { - "$ref": "ToolExitCode", - "description": "Tool execution exit code. This field will be set once the tool has exited.\n\n- In response: present if set by create/update request - In create request: optional - In update request: optional, a FAILED_PRECONDITION error will be returned if an exit_code is already set." + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "location": "query", + "type": "string" }, - "toolLogs": { - "type": "array", - "description": "References to any plain text logs output the tool execution.\n\nThis field can be set before the tool has exited in order to be able to have access to a live view of the logs while the tool is running.\n\nThe maximum allowed number of tool logs per step is 1000.\n\n- In response: present if set by create/update request - In create request: optional - In update request: optional, any value provided will be appended to the existing list", - "items": { - "$ref": "FileReference" - } + "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" }, - "toolOutputs": { - "type": "array", - "description": "References to opaque files of any format output by the tool execution.\n\nThe maximum allowed number of tool outputs per step is 1000.\n\n- In response: present if set by create/update request - In create request: optional - In update request: optional, any value provided will be appended to the existing list", - "items": { - "$ref": "ToolOutputReference" - } + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", + "location": "query", + "type": "string" + }, + "userIp": { + "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", + "location": "query", + "type": "string" } - } }, - "ToolExecutionStep": { - "id": "ToolExecutionStep", - "type": "object", - "description": "Generic tool step to be used for binaries we do not explicitly support. For example: running cp to copy artifacts from one location to another.", - "properties": { - "toolExecution": { - "$ref": "ToolExecution", - "description": "A Tool execution.\n\n- In response: present if set by create/update request - In create/update request: optional" - } - } - }, - "ToolExitCode": { - "id": "ToolExitCode", - "type": "object", - "description": "Exit code from a tool execution.", - "properties": { - "number": { - "type": "integer", - "description": "Tool execution exit code. A value of 0 means that the execution was successful.\n\n- In response: always set - In create/update request: always set", - "format": "int32" - } - } - }, - "ToolOutputReference": { - "id": "ToolOutputReference", - "type": "object", - "description": "A reference to a ToolExecution output file.", - "properties": { - "creationTime": { - "$ref": "Timestamp", - "description": "The creation time of the file.\n\n- In response: present if set by create/update request - In create/update request: optional" - }, - "output": { - "$ref": "FileReference", - "description": "A FileReference to an output file.\n\n- In response: always set - In create/update request: always set" - }, - "testCase": { - "$ref": "TestCaseReference", - "description": "The test case to which this output file belongs.\n\n- In response: present if set by create/update request - In create/update request: optional" - } - } - } - }, - "resources": { - "projects": { - "methods": { - "getSettings": { - "id": "toolresults.projects.getSettings", - "path": "{projectId}/settings", - "httpMethod": "GET", - "description": "Gets the Tool Results settings for a project.\n\nMay return any of the following canonical error codes:\n\n- PERMISSION_DENIED - if the user is not authorized to read from project", - "parameters": { - "projectId": { - "type": "string", - "description": "A Project id.\n\nRequired.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "projectId" - ], - "response": { - "$ref": "ProjectSettings" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "initializeSettings": { - "id": "toolresults.projects.initializeSettings", - "path": "{projectId}:initializeSettings", - "httpMethod": "POST", - "description": "Creates resources for settings which have not yet been set.\n\nCurrently, this creates a single resource: a Google Cloud Storage bucket, to be used as the default bucket for this project. The bucket is created in an FTL-own storage project. Except for in rare cases, calling this method in parallel from multiple clients will only create a single bucket. In order to avoid unnecessary storage charges, the bucket is configured to automatically delete objects older than 90 days.\n\nThe bucket is created with the following permissions: - Owner access for owners of central storage project (FTL-owned) - Writer access for owners/editors of customer project - Reader access for viewers of customer project The default ACL on objects created in the bucket is: - Owner access for owners of central storage project - Reader access for owners/editors/viewers of customer project See Google Cloud Storage documentation for more details.\n\nIf there is already a default bucket set and the project can access the bucket, this call does nothing. However, if the project doesn't have the permission to access the bucket or the bucket is deleted, a new bucket will be created.\n\nMay return any canonical error codes, including the following:\n\n- PERMISSION_DENIED - if the user is not authorized to write to project - Any error code raised by Google Cloud Storage", - "parameters": { - "projectId": { - "type": "string", - "description": "A Project id.\n\nRequired.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "projectId" - ], - "response": { - "$ref": "ProjectSettings" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - } - }, - "resources": { - "histories": { - "methods": { - "create": { - "id": "toolresults.projects.histories.create", - "path": "{projectId}/histories", - "httpMethod": "POST", - "description": "Creates a History.\n\nThe returned History will have the id set.\n\nMay return any of the following canonical error codes:\n\n- PERMISSION_DENIED - if the user is not authorized to write to project - INVALID_ARGUMENT - if the request is malformed - NOT_FOUND - if the containing project does not exist", - "parameters": { - "projectId": { - "type": "string", - "description": "A Project id.\n\nRequired.", - "required": true, - "location": "path" + "protocol": "rest", + "resources": { + "projects": { + "methods": { + "getSettings": { + "description": "Gets the Tool Results settings for a project.\n\nMay return any of the following canonical error codes:\n\n- PERMISSION_DENIED - if the user is not authorized to read from project", + "httpMethod": "GET", + "id": "toolresults.projects.getSettings", + "parameterOrder": [ + "projectId" + ], + "parameters": { + "projectId": { + "description": "A Project id.\n\nRequired.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{projectId}/settings", + "response": { + "$ref": "ProjectSettings" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] }, - "requestId": { - "type": "string", - "description": "A unique request ID for server to detect duplicated requests. For example, a UUID.\n\nOptional, but strongly recommended.", - "location": "query" + "initializeSettings": { + "description": "Creates resources for settings which have not yet been set.\n\nCurrently, this creates a single resource: a Google Cloud Storage bucket, to be used as the default bucket for this project. The bucket is created in an FTL-own storage project. Except for in rare cases, calling this method in parallel from multiple clients will only create a single bucket. In order to avoid unnecessary storage charges, the bucket is configured to automatically delete objects older than 90 days.\n\nThe bucket is created with the following permissions: - Owner access for owners of central storage project (FTL-owned) - Writer access for owners/editors of customer project - Reader access for viewers of customer project The default ACL on objects created in the bucket is: - Owner access for owners of central storage project - Reader access for owners/editors/viewers of customer project See Google Cloud Storage documentation for more details.\n\nIf there is already a default bucket set and the project can access the bucket, this call does nothing. However, if the project doesn't have the permission to access the bucket or the bucket is deleted, a new bucket will be created.\n\nMay return any canonical error codes, including the following:\n\n- PERMISSION_DENIED - if the user is not authorized to write to project - Any error code raised by Google Cloud Storage", + "httpMethod": "POST", + "id": "toolresults.projects.initializeSettings", + "parameterOrder": [ + "projectId" + ], + "parameters": { + "projectId": { + "description": "A Project id.\n\nRequired.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{projectId}:initializeSettings", + "response": { + "$ref": "ProjectSettings" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] } - }, - "parameterOrder": [ - "projectId" - ], - "request": { - "$ref": "History" - }, - "response": { - "$ref": "History" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] }, - "get": { - "id": "toolresults.projects.histories.get", - "path": "{projectId}/histories/{historyId}", - "httpMethod": "GET", - "description": "Gets a History.\n\nMay return any of the following canonical error codes:\n\n- PERMISSION_DENIED - if the user is not authorized to read project - INVALID_ARGUMENT - if the request is malformed - NOT_FOUND - if the History does not exist", - "parameters": { - "historyId": { - "type": "string", - "description": "A History id.\n\nRequired.", - "required": true, - "location": "path" - }, - "projectId": { - "type": "string", - "description": "A Project id.\n\nRequired.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "projectId", - "historyId" - ], - "response": { - "$ref": "History" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "list": { - "id": "toolresults.projects.histories.list", - "path": "{projectId}/histories", - "httpMethod": "GET", - "description": "Lists Histories for a given Project.\n\nThe histories are sorted by modification time in descending order. The history_id key will be used to order the history with the same modification time.\n\nMay return any of the following canonical error codes:\n\n- PERMISSION_DENIED - if the user is not authorized to read project - INVALID_ARGUMENT - if the request is malformed - NOT_FOUND - if the History does not exist", - "parameters": { - "filterByName": { - "type": "string", - "description": "If set, only return histories with the given name.\n\nOptional.", - "location": "query" - }, - "pageSize": { - "type": "integer", - "description": "The maximum number of Histories to fetch.\n\nDefault value: 20. The server will use this default if the field is not set or has a value of 0. Any value greater than 100 will be treated as 100.\n\nOptional.", - "format": "int32", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "A continuation token to resume the query at the next item.\n\nOptional.", - "location": "query" - }, - "projectId": { - "type": "string", - "description": "A Project id.\n\nRequired.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "projectId" - ], - "response": { - "$ref": "ListHistoriesResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - } - }, - "resources": { - "executions": { - "methods": { - "create": { - "id": "toolresults.projects.histories.executions.create", - "path": "{projectId}/histories/{historyId}/executions", - "httpMethod": "POST", - "description": "Creates an Execution.\n\nThe returned Execution will have the id set.\n\nMay return any of the following canonical error codes:\n\n- PERMISSION_DENIED - if the user is not authorized to write to project - INVALID_ARGUMENT - if the request is malformed - NOT_FOUND - if the containing History does not exist", - "parameters": { - "historyId": { - "type": "string", - "description": "A History id.\n\nRequired.", - "required": true, - "location": "path" - }, - "projectId": { - "type": "string", - "description": "A Project id.\n\nRequired.", - "required": true, - "location": "path" - }, - "requestId": { - "type": "string", - "description": "A unique request ID for server to detect duplicated requests. For example, a UUID.\n\nOptional, but strongly recommended.", - "location": "query" - } - }, - "parameterOrder": [ - "projectId", - "historyId" - ], - "request": { - "$ref": "Execution" - }, - "response": { - "$ref": "Execution" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "get": { - "id": "toolresults.projects.histories.executions.get", - "path": "{projectId}/histories/{historyId}/executions/{executionId}", - "httpMethod": "GET", - "description": "Gets an Execution.\n\nMay return any of the following canonical error codes:\n\n- PERMISSION_DENIED - if the user is not authorized to write to project - INVALID_ARGUMENT - if the request is malformed - NOT_FOUND - if the Execution does not exist", - "parameters": { - "executionId": { - "type": "string", - "description": "An Execution id.\n\nRequired.", - "required": true, - "location": "path" - }, - "historyId": { - "type": "string", - "description": "A History id.\n\nRequired.", - "required": true, - "location": "path" - }, - "projectId": { - "type": "string", - "description": "A Project id.\n\nRequired.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "projectId", - "historyId", - "executionId" - ], - "response": { - "$ref": "Execution" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "list": { - "id": "toolresults.projects.histories.executions.list", - "path": "{projectId}/histories/{historyId}/executions", - "httpMethod": "GET", - "description": "Lists Histories for a given Project.\n\nThe executions are sorted by creation_time in descending order. The execution_id key will be used to order the executions with the same creation_time.\n\nMay return any of the following canonical error codes:\n\n- PERMISSION_DENIED - if the user is not authorized to read project - INVALID_ARGUMENT - if the request is malformed - NOT_FOUND - if the containing History does not exist", - "parameters": { - "historyId": { - "type": "string", - "description": "A History id.\n\nRequired.", - "required": true, - "location": "path" - }, - "pageSize": { - "type": "integer", - "description": "The maximum number of Executions to fetch.\n\nDefault value: 25. The server will use this default if the field is not set or has a value of 0.\n\nOptional.", - "format": "int32", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "A continuation token to resume the query at the next item.\n\nOptional.", - "location": "query" - }, - "projectId": { - "type": "string", - "description": "A Project id.\n\nRequired.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "projectId", - "historyId" - ], - "response": { - "$ref": "ListExecutionsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "patch": { - "id": "toolresults.projects.histories.executions.patch", - "path": "{projectId}/histories/{historyId}/executions/{executionId}", - "httpMethod": "PATCH", - "description": "Updates an existing Execution with the supplied partial entity.\n\nMay return any of the following canonical error codes:\n\n- PERMISSION_DENIED - if the user is not authorized to write to project - INVALID_ARGUMENT - if the request is malformed - FAILED_PRECONDITION - if the requested state transition is illegal - NOT_FOUND - if the containing History does not exist", - "parameters": { - "executionId": { - "type": "string", - "description": "Required.", - "required": true, - "location": "path" - }, - "historyId": { - "type": "string", - "description": "Required.", - "required": true, - "location": "path" - }, - "projectId": { - "type": "string", - "description": "A Project id. Required.", - "required": true, - "location": "path" - }, - "requestId": { - "type": "string", - "description": "A unique request ID for server to detect duplicated requests. For example, a UUID.\n\nOptional, but strongly recommended.", - "location": "query" - } - }, - "parameterOrder": [ - "projectId", - "historyId", - "executionId" - ], - "request": { - "$ref": "Execution" - }, - "response": { - "$ref": "Execution" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - } - }, - "resources": { - "clusters": { - "methods": { - "get": { - "id": "toolresults.projects.histories.executions.clusters.get", - "path": "{projectId}/histories/{historyId}/executions/{executionId}/clusters/{clusterId}", - "httpMethod": "GET", - "description": "Retrieves a single screenshot cluster by its ID", - "parameters": { - "clusterId": { - "type": "string", - "description": "A Cluster id\n\nRequired.", - "required": true, - "location": "path" - }, - "executionId": { - "type": "string", - "description": "An Execution id.\n\nRequired.", - "required": true, - "location": "path" - }, - "historyId": { - "type": "string", - "description": "A History id.\n\nRequired.", - "required": true, - "location": "path" - }, - "projectId": { - "type": "string", - "description": "A Project id.\n\nRequired.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "projectId", - "historyId", - "executionId", - "clusterId" - ], - "response": { - "$ref": "ScreenshotCluster" - } - }, - "list": { - "id": "toolresults.projects.histories.executions.clusters.list", - "path": "{projectId}/histories/{historyId}/executions/{executionId}/clusters", - "httpMethod": "GET", - "description": "Lists Screenshot Clusters\n\nReturns the list of screenshot clusters corresponding to an execution. Screenshot clusters are created after the execution is finished. Clusters are created from a set of screenshots. Between any two screenshots, a matching score is calculated based off their metadata that determines how similar they are. Screenshots are placed in the cluster that has screens which have the highest matching scores.", - "parameters": { - "executionId": { - "type": "string", - "description": "An Execution id.\n\nRequired.", - "required": true, - "location": "path" - }, - "historyId": { - "type": "string", - "description": "A History id.\n\nRequired.", - "required": true, - "location": "path" - }, - "projectId": { - "type": "string", - "description": "A Project id.\n\nRequired.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "projectId", - "historyId", - "executionId" - ], - "response": { - "$ref": "ListScreenshotClustersResponse" - } - } - } - }, - "steps": { - "methods": { - "create": { - "id": "toolresults.projects.histories.executions.steps.create", - "path": "{projectId}/histories/{historyId}/executions/{executionId}/steps", - "httpMethod": "POST", - "description": "Creates a Step.\n\nThe returned Step will have the id set.\n\nMay return any of the following canonical error codes:\n\n- PERMISSION_DENIED - if the user is not authorized to write to project - INVALID_ARGUMENT - if the request is malformed - FAILED_PRECONDITION - if the step is too large (more than 10Mib) - NOT_FOUND - if the containing Execution does not exist", - "parameters": { - "executionId": { - "type": "string", - "description": "A Execution id.\n\nRequired.", - "required": true, - "location": "path" - }, - "historyId": { - "type": "string", - "description": "A History id.\n\nRequired.", - "required": true, - "location": "path" - }, - "projectId": { - "type": "string", - "description": "A Project id.\n\nRequired.", - "required": true, - "location": "path" - }, - "requestId": { - "type": "string", - "description": "A unique request ID for server to detect duplicated requests. For example, a UUID.\n\nOptional, but strongly recommended.", - "location": "query" - } - }, - "parameterOrder": [ - "projectId", - "historyId", - "executionId" - ], - "request": { - "$ref": "Step" - }, - "response": { - "$ref": "Step" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "get": { - "id": "toolresults.projects.histories.executions.steps.get", - "path": "{projectId}/histories/{historyId}/executions/{executionId}/steps/{stepId}", - "httpMethod": "GET", - "description": "Gets a Step.\n\nMay return any of the following canonical error codes:\n\n- PERMISSION_DENIED - if the user is not authorized to read project - INVALID_ARGUMENT - if the request is malformed - NOT_FOUND - if the Step does not exist", - "parameters": { - "executionId": { - "type": "string", - "description": "A Execution id.\n\nRequired.", - "required": true, - "location": "path" - }, - "historyId": { - "type": "string", - "description": "A History id.\n\nRequired.", - "required": true, - "location": "path" - }, - "projectId": { - "type": "string", - "description": "A Project id.\n\nRequired.", - "required": true, - "location": "path" - }, - "stepId": { - "type": "string", - "description": "A Step id.\n\nRequired.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "projectId", - "historyId", - "executionId", - "stepId" - ], - "response": { - "$ref": "Step" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "getPerfMetricsSummary": { - "id": "toolresults.projects.histories.executions.steps.getPerfMetricsSummary", - "path": "{projectId}/histories/{historyId}/executions/{executionId}/steps/{stepId}/perfMetricsSummary", - "httpMethod": "GET", - "description": "Retrieves a PerfMetricsSummary.\n\nMay return any of the following error code(s): - NOT_FOUND - The specified PerfMetricsSummary does not exist", - "parameters": { - "executionId": { - "type": "string", - "description": "A tool results execution ID.", - "required": true, - "location": "path" - }, - "historyId": { - "type": "string", - "description": "A tool results history ID.", - "required": true, - "location": "path" - }, - "projectId": { - "type": "string", - "description": "The cloud project", - "required": true, - "location": "path" - }, - "stepId": { - "type": "string", - "description": "A tool results step ID.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "projectId", - "historyId", - "executionId", - "stepId" - ], - "response": { - "$ref": "PerfMetricsSummary" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "list": { - "id": "toolresults.projects.histories.executions.steps.list", - "path": "{projectId}/histories/{historyId}/executions/{executionId}/steps", - "httpMethod": "GET", - "description": "Lists Steps for a given Execution.\n\nThe steps are sorted by creation_time in descending order. The step_id key will be used to order the steps with the same creation_time.\n\nMay return any of the following canonical error codes:\n\n- PERMISSION_DENIED - if the user is not authorized to read project - INVALID_ARGUMENT - if the request is malformed - FAILED_PRECONDITION - if an argument in the request happens to be invalid; e.g. if an attempt is made to list the children of a nonexistent Step - NOT_FOUND - if the containing Execution does not exist", - "parameters": { - "executionId": { - "type": "string", - "description": "A Execution id.\n\nRequired.", - "required": true, - "location": "path" - }, - "historyId": { - "type": "string", - "description": "A History id.\n\nRequired.", - "required": true, - "location": "path" - }, - "pageSize": { - "type": "integer", - "description": "The maximum number of Steps to fetch.\n\nDefault value: 25. The server will use this default if the field is not set or has a value of 0.\n\nOptional.", - "format": "int32", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "A continuation token to resume the query at the next item.\n\nOptional.", - "location": "query" - }, - "projectId": { - "type": "string", - "description": "A Project id.\n\nRequired.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "projectId", - "historyId", - "executionId" - ], - "response": { - "$ref": "ListStepsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "patch": { - "id": "toolresults.projects.histories.executions.steps.patch", - "path": "{projectId}/histories/{historyId}/executions/{executionId}/steps/{stepId}", - "httpMethod": "PATCH", - "description": "Updates an existing Step with the supplied partial entity.\n\nMay return any of the following canonical error codes:\n\n- PERMISSION_DENIED - if the user is not authorized to write project - INVALID_ARGUMENT - if the request is malformed - FAILED_PRECONDITION - if the requested state transition is illegal (e.g try to upload a duplicate xml file), if the updated step is too large (more than 10Mib) - NOT_FOUND - if the containing Execution does not exist", - "parameters": { - "executionId": { - "type": "string", - "description": "A Execution id.\n\nRequired.", - "required": true, - "location": "path" - }, - "historyId": { - "type": "string", - "description": "A History id.\n\nRequired.", - "required": true, - "location": "path" - }, - "projectId": { - "type": "string", - "description": "A Project id.\n\nRequired.", - "required": true, - "location": "path" - }, - "requestId": { - "type": "string", - "description": "A unique request ID for server to detect duplicated requests. For example, a UUID.\n\nOptional, but strongly recommended.", - "location": "query" - }, - "stepId": { - "type": "string", - "description": "A Step id.\n\nRequired.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "projectId", - "historyId", - "executionId", - "stepId" - ], - "request": { - "$ref": "Step" - }, - "response": { - "$ref": "Step" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "publishXunitXmlFiles": { - "id": "toolresults.projects.histories.executions.steps.publishXunitXmlFiles", - "path": "{projectId}/histories/{historyId}/executions/{executionId}/steps/{stepId}:publishXunitXmlFiles", - "httpMethod": "POST", - "description": "Publish xml files to an existing Step.\n\nMay return any of the following canonical error codes:\n\n- PERMISSION_DENIED - if the user is not authorized to write project - INVALID_ARGUMENT - if the request is malformed - FAILED_PRECONDITION - if the requested state transition is illegal, e.g try to upload a duplicate xml file or a file too large. - NOT_FOUND - if the containing Execution does not exist", - "parameters": { - "executionId": { - "type": "string", - "description": "A Execution id.\n\nRequired.", - "required": true, - "location": "path" - }, - "historyId": { - "type": "string", - "description": "A History id.\n\nRequired.", - "required": true, - "location": "path" - }, - "projectId": { - "type": "string", - "description": "A Project id.\n\nRequired.", - "required": true, - "location": "path" - }, - "stepId": { - "type": "string", - "description": "A Step id. Note: This step must include a TestExecutionStep.\n\nRequired.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "projectId", - "historyId", - "executionId", - "stepId" - ], - "request": { - "$ref": "PublishXunitXmlFilesRequest" - }, - "response": { - "$ref": "Step" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - } - }, - "resources": { - "perfMetricsSummary": { - "methods": { + "resources": { + "histories": { + "methods": { "create": { - "id": "toolresults.projects.histories.executions.steps.perfMetricsSummary.create", - "path": "{projectId}/histories/{historyId}/executions/{executionId}/steps/{stepId}/perfMetricsSummary", - "httpMethod": "POST", - "description": "Creates a PerfMetricsSummary resource. Returns the existing one if it has already been created.\n\nMay return any of the following error code(s): - NOT_FOUND - The containing Step does not exist", - "parameters": { - "executionId": { - "type": "string", - "description": "A tool results execution ID.", - "required": true, - "location": "path" + "description": "Creates a History.\n\nThe returned History will have the id set.\n\nMay return any of the following canonical error codes:\n\n- PERMISSION_DENIED - if the user is not authorized to write to project - INVALID_ARGUMENT - if the request is malformed - NOT_FOUND - if the containing project does not exist", + "httpMethod": "POST", + "id": "toolresults.projects.histories.create", + "parameterOrder": [ + "projectId" + ], + "parameters": { + "projectId": { + "description": "A Project id.\n\nRequired.", + "location": "path", + "required": true, + "type": "string" + }, + "requestId": { + "description": "A unique request ID for server to detect duplicated requests. For example, a UUID.\n\nOptional, but strongly recommended.", + "location": "query", + "type": "string" + } }, - "historyId": { - "type": "string", - "description": "A tool results history ID.", - "required": true, - "location": "path" + "path": "{projectId}/histories", + "request": { + "$ref": "History" }, - "projectId": { - "type": "string", - "description": "The cloud project", - "required": true, - "location": "path" + "response": { + "$ref": "History" }, - "stepId": { - "type": "string", - "description": "A tool results step ID.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "projectId", - "historyId", - "executionId", - "stepId" - ], - "request": { - "$ref": "PerfMetricsSummary" - }, - "response": { - "$ref": "PerfMetricsSummary" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - } - } - }, - "perfSampleSeries": { - "methods": { - "create": { - "id": "toolresults.projects.histories.executions.steps.perfSampleSeries.create", - "path": "{projectId}/histories/{historyId}/executions/{executionId}/steps/{stepId}/perfSampleSeries", - "httpMethod": "POST", - "description": "Creates a PerfSampleSeries.\n\nMay return any of the following error code(s): - ALREADY_EXISTS - PerfMetricSummary already exists for the given Step - NOT_FOUND - The containing Step does not exist", - "parameters": { - "executionId": { - "type": "string", - "description": "A tool results execution ID.", - "required": true, - "location": "path" - }, - "historyId": { - "type": "string", - "description": "A tool results history ID.", - "required": true, - "location": "path" - }, - "projectId": { - "type": "string", - "description": "The cloud project", - "required": true, - "location": "path" - }, - "stepId": { - "type": "string", - "description": "A tool results step ID.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "projectId", - "historyId", - "executionId", - "stepId" - ], - "request": { - "$ref": "PerfSampleSeries" - }, - "response": { - "$ref": "PerfSampleSeries" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] }, "get": { - "id": "toolresults.projects.histories.executions.steps.perfSampleSeries.get", - "path": "{projectId}/histories/{historyId}/executions/{executionId}/steps/{stepId}/perfSampleSeries/{sampleSeriesId}", - "httpMethod": "GET", - "description": "Gets a PerfSampleSeries.\n\nMay return any of the following error code(s): - NOT_FOUND - The specified PerfSampleSeries does not exist", - "parameters": { - "executionId": { - "type": "string", - "description": "A tool results execution ID.", - "required": true, - "location": "path" + "description": "Gets a History.\n\nMay return any of the following canonical error codes:\n\n- PERMISSION_DENIED - if the user is not authorized to read project - INVALID_ARGUMENT - if the request is malformed - NOT_FOUND - if the History does not exist", + "httpMethod": "GET", + "id": "toolresults.projects.histories.get", + "parameterOrder": [ + "projectId", + "historyId" + ], + "parameters": { + "historyId": { + "description": "A History id.\n\nRequired.", + "location": "path", + "required": true, + "type": "string" + }, + "projectId": { + "description": "A Project id.\n\nRequired.", + "location": "path", + "required": true, + "type": "string" + } }, - "historyId": { - "type": "string", - "description": "A tool results history ID.", - "required": true, - "location": "path" + "path": "{projectId}/histories/{historyId}", + "response": { + "$ref": "History" }, - "projectId": { - "type": "string", - "description": "The cloud project", - "required": true, - "location": "path" - }, - "sampleSeriesId": { - "type": "string", - "description": "A sample series id", - "required": true, - "location": "path" - }, - "stepId": { - "type": "string", - "description": "A tool results step ID.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "projectId", - "historyId", - "executionId", - "stepId", - "sampleSeriesId" - ], - "response": { - "$ref": "PerfSampleSeries" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] }, "list": { - "id": "toolresults.projects.histories.executions.steps.perfSampleSeries.list", - "path": "{projectId}/histories/{historyId}/executions/{executionId}/steps/{stepId}/perfSampleSeries", - "httpMethod": "GET", - "description": "Lists PerfSampleSeries for a given Step.\n\nThe request provides an optional filter which specifies one or more PerfMetricsType to include in the result; if none returns all. The resulting PerfSampleSeries are sorted by ids.\n\nMay return any of the following canonical error codes: - NOT_FOUND - The containing Step does not exist", - "parameters": { - "executionId": { - "type": "string", - "description": "A tool results execution ID.", - "required": true, - "location": "path" - }, - "filter": { - "type": "string", - "description": "Specify one or more PerfMetricType values such as CPU to filter the result", - "enum": [ - "cpu", - "graphics", - "memory", - "network", - "perfMetricTypeUnspecified" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "" - ], - "repeated": true, - "location": "query" - }, - "historyId": { - "type": "string", - "description": "A tool results history ID.", - "required": true, - "location": "path" - }, - "projectId": { - "type": "string", - "description": "The cloud project", - "required": true, - "location": "path" - }, - "stepId": { - "type": "string", - "description": "A tool results step ID.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "projectId", - "historyId", - "executionId", - "stepId" - ], - "response": { - "$ref": "ListPerfSampleSeriesResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - } - }, - "resources": { - "samples": { - "methods": { - "batchCreate": { - "id": "toolresults.projects.histories.executions.steps.perfSampleSeries.samples.batchCreate", - "path": "{projectId}/histories/{historyId}/executions/{executionId}/steps/{stepId}/perfSampleSeries/{sampleSeriesId}/samples:batchCreate", - "httpMethod": "POST", - "description": "Creates a batch of PerfSamples - a client can submit multiple batches of Perf Samples through repeated calls to this method in order to split up a large request payload - duplicates and existing timestamp entries will be ignored. - the batch operation may partially succeed - the set of elements successfully inserted is returned in the response (omits items which already existed in the database).\n\nMay return any of the following canonical error codes: - NOT_FOUND - The containing PerfSampleSeries does not exist", - "parameters": { - "executionId": { - "type": "string", - "description": "A tool results execution ID.", - "required": true, - "location": "path" - }, - "historyId": { - "type": "string", - "description": "A tool results history ID.", - "required": true, - "location": "path" - }, - "projectId": { - "type": "string", - "description": "The cloud project", - "required": true, - "location": "path" - }, - "sampleSeriesId": { - "type": "string", - "description": "A sample series id", - "required": true, - "location": "path" - }, - "stepId": { - "type": "string", - "description": "A tool results step ID.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "projectId", - "historyId", - "executionId", - "stepId", - "sampleSeriesId" - ], - "request": { - "$ref": "BatchCreatePerfSamplesRequest" - }, - "response": { - "$ref": "BatchCreatePerfSamplesResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "list": { - "id": "toolresults.projects.histories.executions.steps.perfSampleSeries.samples.list", - "path": "{projectId}/histories/{historyId}/executions/{executionId}/steps/{stepId}/perfSampleSeries/{sampleSeriesId}/samples", - "httpMethod": "GET", - "description": "Lists the Performance Samples of a given Sample Series - The list results are sorted by timestamps ascending - The default page size is 500 samples; and maximum size allowed 5000 - The response token indicates the last returned PerfSample timestamp - When the results size exceeds the page size, submit a subsequent request including the page token to return the rest of the samples up to the page limit\n\nMay return any of the following canonical error codes: - OUT_OF_RANGE - The specified request page_token is out of valid range - NOT_FOUND - The containing PerfSampleSeries does not exist", - "parameters": { - "executionId": { - "type": "string", - "description": "A tool results execution ID.", - "required": true, - "location": "path" - }, - "historyId": { - "type": "string", - "description": "A tool results history ID.", - "required": true, - "location": "path" + "description": "Lists Histories for a given Project.\n\nThe histories are sorted by modification time in descending order. The history_id key will be used to order the history with the same modification time.\n\nMay return any of the following canonical error codes:\n\n- PERMISSION_DENIED - if the user is not authorized to read project - INVALID_ARGUMENT - if the request is malformed - NOT_FOUND - if the History does not exist", + "httpMethod": "GET", + "id": "toolresults.projects.histories.list", + "parameterOrder": [ + "projectId" + ], + "parameters": { + "filterByName": { + "description": "If set, only return histories with the given name.\n\nOptional.", + "location": "query", + "type": "string" }, "pageSize": { - "type": "integer", - "description": "The default page size is 500 samples, and the maximum size is 5000. If the page_size is greater than 5000, the effective page size will be 5000", - "format": "int32", - "location": "query" + "description": "The maximum number of Histories to fetch.\n\nDefault value: 20. The server will use this default if the field is not set or has a value of 0. Any value greater than 100 will be treated as 100.\n\nOptional.", + "format": "int32", + "location": "query", + "type": "integer" }, "pageToken": { - "type": "string", - "description": "Optional, the next_page_token returned in the previous response", - "location": "query" + "description": "A continuation token to resume the query at the next item.\n\nOptional.", + "location": "query", + "type": "string" }, "projectId": { - "type": "string", - "description": "The cloud project", - "required": true, - "location": "path" - }, - "sampleSeriesId": { - "type": "string", - "description": "A sample series id", - "required": true, - "location": "path" - }, - "stepId": { - "type": "string", - "description": "A tool results step ID.", - "required": true, - "location": "path" + "description": "A Project id.\n\nRequired.", + "location": "path", + "required": true, + "type": "string" } - }, - "parameterOrder": [ - "projectId", - "historyId", - "executionId", - "stepId", - "sampleSeriesId" - ], - "response": { - "$ref": "ListPerfSamplesResponse" - }, - "scopes": [ + }, + "path": "{projectId}/histories", + "response": { + "$ref": "ListHistoriesResponse" + }, + "scopes": [ "https://www.googleapis.com/auth/cloud-platform" - ] - } - } + ] } - } }, - "thumbnails": { - "methods": { - "list": { - "id": "toolresults.projects.histories.executions.steps.thumbnails.list", - "path": "{projectId}/histories/{historyId}/executions/{executionId}/steps/{stepId}/thumbnails", - "httpMethod": "GET", - "description": "Lists thumbnails of images attached to a step.\n\nMay return any of the following canonical error codes: - PERMISSION_DENIED - if the user is not authorized to read from the project, or from any of the images - INVALID_ARGUMENT - if the request is malformed - NOT_FOUND - if the step does not exist, or if any of the images do not exist", - "parameters": { - "executionId": { - "type": "string", - "description": "An Execution id.\n\nRequired.", - "required": true, - "location": "path" + "resources": { + "executions": { + "methods": { + "create": { + "description": "Creates an Execution.\n\nThe returned Execution will have the id set.\n\nMay return any of the following canonical error codes:\n\n- PERMISSION_DENIED - if the user is not authorized to write to project - INVALID_ARGUMENT - if the request is malformed - NOT_FOUND - if the containing History does not exist", + "httpMethod": "POST", + "id": "toolresults.projects.histories.executions.create", + "parameterOrder": [ + "projectId", + "historyId" + ], + "parameters": { + "historyId": { + "description": "A History id.\n\nRequired.", + "location": "path", + "required": true, + "type": "string" + }, + "projectId": { + "description": "A Project id.\n\nRequired.", + "location": "path", + "required": true, + "type": "string" + }, + "requestId": { + "description": "A unique request ID for server to detect duplicated requests. For example, a UUID.\n\nOptional, but strongly recommended.", + "location": "query", + "type": "string" + } + }, + "path": "{projectId}/histories/{historyId}/executions", + "request": { + "$ref": "Execution" + }, + "response": { + "$ref": "Execution" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Gets an Execution.\n\nMay return any of the following canonical error codes:\n\n- PERMISSION_DENIED - if the user is not authorized to write to project - INVALID_ARGUMENT - if the request is malformed - NOT_FOUND - if the Execution does not exist", + "httpMethod": "GET", + "id": "toolresults.projects.histories.executions.get", + "parameterOrder": [ + "projectId", + "historyId", + "executionId" + ], + "parameters": { + "executionId": { + "description": "An Execution id.\n\nRequired.", + "location": "path", + "required": true, + "type": "string" + }, + "historyId": { + "description": "A History id.\n\nRequired.", + "location": "path", + "required": true, + "type": "string" + }, + "projectId": { + "description": "A Project id.\n\nRequired.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{projectId}/histories/{historyId}/executions/{executionId}", + "response": { + "$ref": "Execution" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists Histories for a given Project.\n\nThe executions are sorted by creation_time in descending order. The execution_id key will be used to order the executions with the same creation_time.\n\nMay return any of the following canonical error codes:\n\n- PERMISSION_DENIED - if the user is not authorized to read project - INVALID_ARGUMENT - if the request is malformed - NOT_FOUND - if the containing History does not exist", + "httpMethod": "GET", + "id": "toolresults.projects.histories.executions.list", + "parameterOrder": [ + "projectId", + "historyId" + ], + "parameters": { + "historyId": { + "description": "A History id.\n\nRequired.", + "location": "path", + "required": true, + "type": "string" + }, + "pageSize": { + "description": "The maximum number of Executions to fetch.\n\nDefault value: 25. The server will use this default if the field is not set or has a value of 0.\n\nOptional.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "A continuation token to resume the query at the next item.\n\nOptional.", + "location": "query", + "type": "string" + }, + "projectId": { + "description": "A Project id.\n\nRequired.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{projectId}/histories/{historyId}/executions", + "response": { + "$ref": "ListExecutionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "patch": { + "description": "Updates an existing Execution with the supplied partial entity.\n\nMay return any of the following canonical error codes:\n\n- PERMISSION_DENIED - if the user is not authorized to write to project - INVALID_ARGUMENT - if the request is malformed - FAILED_PRECONDITION - if the requested state transition is illegal - NOT_FOUND - if the containing History does not exist", + "httpMethod": "PATCH", + "id": "toolresults.projects.histories.executions.patch", + "parameterOrder": [ + "projectId", + "historyId", + "executionId" + ], + "parameters": { + "executionId": { + "description": "Required.", + "location": "path", + "required": true, + "type": "string" + }, + "historyId": { + "description": "Required.", + "location": "path", + "required": true, + "type": "string" + }, + "projectId": { + "description": "A Project id. Required.", + "location": "path", + "required": true, + "type": "string" + }, + "requestId": { + "description": "A unique request ID for server to detect duplicated requests. For example, a UUID.\n\nOptional, but strongly recommended.", + "location": "query", + "type": "string" + } + }, + "path": "{projectId}/histories/{historyId}/executions/{executionId}", + "request": { + "$ref": "Execution" + }, + "response": { + "$ref": "Execution" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } }, - "historyId": { - "type": "string", - "description": "A History id.\n\nRequired.", - "required": true, - "location": "path" - }, - "pageSize": { - "type": "integer", - "description": "The maximum number of thumbnails to fetch.\n\nDefault value: 50. The server will use this default if the field is not set or has a value of 0.\n\nOptional.", - "format": "int32", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "A continuation token to resume the query at the next item.\n\nOptional.", - "location": "query" - }, - "projectId": { - "type": "string", - "description": "A Project id.\n\nRequired.", - "required": true, - "location": "path" - }, - "stepId": { - "type": "string", - "description": "A Step id.\n\nRequired.", - "required": true, - "location": "path" + "resources": { + "clusters": { + "methods": { + "get": { + "description": "Retrieves a single screenshot cluster by its ID", + "httpMethod": "GET", + "id": "toolresults.projects.histories.executions.clusters.get", + "parameterOrder": [ + "projectId", + "historyId", + "executionId", + "clusterId" + ], + "parameters": { + "clusterId": { + "description": "A Cluster id\n\nRequired.", + "location": "path", + "required": true, + "type": "string" + }, + "executionId": { + "description": "An Execution id.\n\nRequired.", + "location": "path", + "required": true, + "type": "string" + }, + "historyId": { + "description": "A History id.\n\nRequired.", + "location": "path", + "required": true, + "type": "string" + }, + "projectId": { + "description": "A Project id.\n\nRequired.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{projectId}/histories/{historyId}/executions/{executionId}/clusters/{clusterId}", + "response": { + "$ref": "ScreenshotCluster" + } + }, + "list": { + "description": "Lists Screenshot Clusters\n\nReturns the list of screenshot clusters corresponding to an execution. Screenshot clusters are created after the execution is finished. Clusters are created from a set of screenshots. Between any two screenshots, a matching score is calculated based off their metadata that determines how similar they are. Screenshots are placed in the cluster that has screens which have the highest matching scores.", + "httpMethod": "GET", + "id": "toolresults.projects.histories.executions.clusters.list", + "parameterOrder": [ + "projectId", + "historyId", + "executionId" + ], + "parameters": { + "executionId": { + "description": "An Execution id.\n\nRequired.", + "location": "path", + "required": true, + "type": "string" + }, + "historyId": { + "description": "A History id.\n\nRequired.", + "location": "path", + "required": true, + "type": "string" + }, + "projectId": { + "description": "A Project id.\n\nRequired.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{projectId}/histories/{historyId}/executions/{executionId}/clusters", + "response": { + "$ref": "ListScreenshotClustersResponse" + } + } + } + }, + "steps": { + "methods": { + "create": { + "description": "Creates a Step.\n\nThe returned Step will have the id set.\n\nMay return any of the following canonical error codes:\n\n- PERMISSION_DENIED - if the user is not authorized to write to project - INVALID_ARGUMENT - if the request is malformed - FAILED_PRECONDITION - if the step is too large (more than 10Mib) - NOT_FOUND - if the containing Execution does not exist", + "httpMethod": "POST", + "id": "toolresults.projects.histories.executions.steps.create", + "parameterOrder": [ + "projectId", + "historyId", + "executionId" + ], + "parameters": { + "executionId": { + "description": "A Execution id.\n\nRequired.", + "location": "path", + "required": true, + "type": "string" + }, + "historyId": { + "description": "A History id.\n\nRequired.", + "location": "path", + "required": true, + "type": "string" + }, + "projectId": { + "description": "A Project id.\n\nRequired.", + "location": "path", + "required": true, + "type": "string" + }, + "requestId": { + "description": "A unique request ID for server to detect duplicated requests. For example, a UUID.\n\nOptional, but strongly recommended.", + "location": "query", + "type": "string" + } + }, + "path": "{projectId}/histories/{historyId}/executions/{executionId}/steps", + "request": { + "$ref": "Step" + }, + "response": { + "$ref": "Step" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Gets a Step.\n\nMay return any of the following canonical error codes:\n\n- PERMISSION_DENIED - if the user is not authorized to read project - INVALID_ARGUMENT - if the request is malformed - NOT_FOUND - if the Step does not exist", + "httpMethod": "GET", + "id": "toolresults.projects.histories.executions.steps.get", + "parameterOrder": [ + "projectId", + "historyId", + "executionId", + "stepId" + ], + "parameters": { + "executionId": { + "description": "A Execution id.\n\nRequired.", + "location": "path", + "required": true, + "type": "string" + }, + "historyId": { + "description": "A History id.\n\nRequired.", + "location": "path", + "required": true, + "type": "string" + }, + "projectId": { + "description": "A Project id.\n\nRequired.", + "location": "path", + "required": true, + "type": "string" + }, + "stepId": { + "description": "A Step id.\n\nRequired.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{projectId}/histories/{historyId}/executions/{executionId}/steps/{stepId}", + "response": { + "$ref": "Step" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "getPerfMetricsSummary": { + "description": "Retrieves a PerfMetricsSummary.\n\nMay return any of the following error code(s): - NOT_FOUND - The specified PerfMetricsSummary does not exist", + "httpMethod": "GET", + "id": "toolresults.projects.histories.executions.steps.getPerfMetricsSummary", + "parameterOrder": [ + "projectId", + "historyId", + "executionId", + "stepId" + ], + "parameters": { + "executionId": { + "description": "A tool results execution ID.", + "location": "path", + "required": true, + "type": "string" + }, + "historyId": { + "description": "A tool results history ID.", + "location": "path", + "required": true, + "type": "string" + }, + "projectId": { + "description": "The cloud project", + "location": "path", + "required": true, + "type": "string" + }, + "stepId": { + "description": "A tool results step ID.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{projectId}/histories/{historyId}/executions/{executionId}/steps/{stepId}/perfMetricsSummary", + "response": { + "$ref": "PerfMetricsSummary" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists Steps for a given Execution.\n\nThe steps are sorted by creation_time in descending order. The step_id key will be used to order the steps with the same creation_time.\n\nMay return any of the following canonical error codes:\n\n- PERMISSION_DENIED - if the user is not authorized to read project - INVALID_ARGUMENT - if the request is malformed - FAILED_PRECONDITION - if an argument in the request happens to be invalid; e.g. if an attempt is made to list the children of a nonexistent Step - NOT_FOUND - if the containing Execution does not exist", + "httpMethod": "GET", + "id": "toolresults.projects.histories.executions.steps.list", + "parameterOrder": [ + "projectId", + "historyId", + "executionId" + ], + "parameters": { + "executionId": { + "description": "A Execution id.\n\nRequired.", + "location": "path", + "required": true, + "type": "string" + }, + "historyId": { + "description": "A History id.\n\nRequired.", + "location": "path", + "required": true, + "type": "string" + }, + "pageSize": { + "description": "The maximum number of Steps to fetch.\n\nDefault value: 25. The server will use this default if the field is not set or has a value of 0.\n\nOptional.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "A continuation token to resume the query at the next item.\n\nOptional.", + "location": "query", + "type": "string" + }, + "projectId": { + "description": "A Project id.\n\nRequired.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{projectId}/histories/{historyId}/executions/{executionId}/steps", + "response": { + "$ref": "ListStepsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "patch": { + "description": "Updates an existing Step with the supplied partial entity.\n\nMay return any of the following canonical error codes:\n\n- PERMISSION_DENIED - if the user is not authorized to write project - INVALID_ARGUMENT - if the request is malformed - FAILED_PRECONDITION - if the requested state transition is illegal (e.g try to upload a duplicate xml file), if the updated step is too large (more than 10Mib) - NOT_FOUND - if the containing Execution does not exist", + "httpMethod": "PATCH", + "id": "toolresults.projects.histories.executions.steps.patch", + "parameterOrder": [ + "projectId", + "historyId", + "executionId", + "stepId" + ], + "parameters": { + "executionId": { + "description": "A Execution id.\n\nRequired.", + "location": "path", + "required": true, + "type": "string" + }, + "historyId": { + "description": "A History id.\n\nRequired.", + "location": "path", + "required": true, + "type": "string" + }, + "projectId": { + "description": "A Project id.\n\nRequired.", + "location": "path", + "required": true, + "type": "string" + }, + "requestId": { + "description": "A unique request ID for server to detect duplicated requests. For example, a UUID.\n\nOptional, but strongly recommended.", + "location": "query", + "type": "string" + }, + "stepId": { + "description": "A Step id.\n\nRequired.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{projectId}/histories/{historyId}/executions/{executionId}/steps/{stepId}", + "request": { + "$ref": "Step" + }, + "response": { + "$ref": "Step" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "publishXunitXmlFiles": { + "description": "Publish xml files to an existing Step.\n\nMay return any of the following canonical error codes:\n\n- PERMISSION_DENIED - if the user is not authorized to write project - INVALID_ARGUMENT - if the request is malformed - FAILED_PRECONDITION - if the requested state transition is illegal, e.g try to upload a duplicate xml file or a file too large. - NOT_FOUND - if the containing Execution does not exist", + "httpMethod": "POST", + "id": "toolresults.projects.histories.executions.steps.publishXunitXmlFiles", + "parameterOrder": [ + "projectId", + "historyId", + "executionId", + "stepId" + ], + "parameters": { + "executionId": { + "description": "A Execution id.\n\nRequired.", + "location": "path", + "required": true, + "type": "string" + }, + "historyId": { + "description": "A History id.\n\nRequired.", + "location": "path", + "required": true, + "type": "string" + }, + "projectId": { + "description": "A Project id.\n\nRequired.", + "location": "path", + "required": true, + "type": "string" + }, + "stepId": { + "description": "A Step id. Note: This step must include a TestExecutionStep.\n\nRequired.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{projectId}/histories/{historyId}/executions/{executionId}/steps/{stepId}:publishXunitXmlFiles", + "request": { + "$ref": "PublishXunitXmlFilesRequest" + }, + "response": { + "$ref": "Step" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + }, + "resources": { + "perfMetricsSummary": { + "methods": { + "create": { + "description": "Creates a PerfMetricsSummary resource. Returns the existing one if it has already been created.\n\nMay return any of the following error code(s): - NOT_FOUND - The containing Step does not exist", + "httpMethod": "POST", + "id": "toolresults.projects.histories.executions.steps.perfMetricsSummary.create", + "parameterOrder": [ + "projectId", + "historyId", + "executionId", + "stepId" + ], + "parameters": { + "executionId": { + "description": "A tool results execution ID.", + "location": "path", + "required": true, + "type": "string" + }, + "historyId": { + "description": "A tool results history ID.", + "location": "path", + "required": true, + "type": "string" + }, + "projectId": { + "description": "The cloud project", + "location": "path", + "required": true, + "type": "string" + }, + "stepId": { + "description": "A tool results step ID.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{projectId}/histories/{historyId}/executions/{executionId}/steps/{stepId}/perfMetricsSummary", + "request": { + "$ref": "PerfMetricsSummary" + }, + "response": { + "$ref": "PerfMetricsSummary" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + }, + "perfSampleSeries": { + "methods": { + "create": { + "description": "Creates a PerfSampleSeries.\n\nMay return any of the following error code(s): - ALREADY_EXISTS - PerfMetricSummary already exists for the given Step - NOT_FOUND - The containing Step does not exist", + "httpMethod": "POST", + "id": "toolresults.projects.histories.executions.steps.perfSampleSeries.create", + "parameterOrder": [ + "projectId", + "historyId", + "executionId", + "stepId" + ], + "parameters": { + "executionId": { + "description": "A tool results execution ID.", + "location": "path", + "required": true, + "type": "string" + }, + "historyId": { + "description": "A tool results history ID.", + "location": "path", + "required": true, + "type": "string" + }, + "projectId": { + "description": "The cloud project", + "location": "path", + "required": true, + "type": "string" + }, + "stepId": { + "description": "A tool results step ID.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{projectId}/histories/{historyId}/executions/{executionId}/steps/{stepId}/perfSampleSeries", + "request": { + "$ref": "PerfSampleSeries" + }, + "response": { + "$ref": "PerfSampleSeries" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Gets a PerfSampleSeries.\n\nMay return any of the following error code(s): - NOT_FOUND - The specified PerfSampleSeries does not exist", + "httpMethod": "GET", + "id": "toolresults.projects.histories.executions.steps.perfSampleSeries.get", + "parameterOrder": [ + "projectId", + "historyId", + "executionId", + "stepId", + "sampleSeriesId" + ], + "parameters": { + "executionId": { + "description": "A tool results execution ID.", + "location": "path", + "required": true, + "type": "string" + }, + "historyId": { + "description": "A tool results history ID.", + "location": "path", + "required": true, + "type": "string" + }, + "projectId": { + "description": "The cloud project", + "location": "path", + "required": true, + "type": "string" + }, + "sampleSeriesId": { + "description": "A sample series id", + "location": "path", + "required": true, + "type": "string" + }, + "stepId": { + "description": "A tool results step ID.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{projectId}/histories/{historyId}/executions/{executionId}/steps/{stepId}/perfSampleSeries/{sampleSeriesId}", + "response": { + "$ref": "PerfSampleSeries" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists PerfSampleSeries for a given Step.\n\nThe request provides an optional filter which specifies one or more PerfMetricsType to include in the result; if none returns all. The resulting PerfSampleSeries are sorted by ids.\n\nMay return any of the following canonical error codes: - NOT_FOUND - The containing Step does not exist", + "httpMethod": "GET", + "id": "toolresults.projects.histories.executions.steps.perfSampleSeries.list", + "parameterOrder": [ + "projectId", + "historyId", + "executionId", + "stepId" + ], + "parameters": { + "executionId": { + "description": "A tool results execution ID.", + "location": "path", + "required": true, + "type": "string" + }, + "filter": { + "description": "Specify one or more PerfMetricType values such as CPU to filter the result", + "enum": [ + "cpu", + "graphics", + "memory", + "network", + "perfMetricTypeUnspecified" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "" + ], + "location": "query", + "repeated": true, + "type": "string" + }, + "historyId": { + "description": "A tool results history ID.", + "location": "path", + "required": true, + "type": "string" + }, + "projectId": { + "description": "The cloud project", + "location": "path", + "required": true, + "type": "string" + }, + "stepId": { + "description": "A tool results step ID.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{projectId}/histories/{historyId}/executions/{executionId}/steps/{stepId}/perfSampleSeries", + "response": { + "$ref": "ListPerfSampleSeriesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + }, + "resources": { + "samples": { + "methods": { + "batchCreate": { + "description": "Creates a batch of PerfSamples - a client can submit multiple batches of Perf Samples through repeated calls to this method in order to split up a large request payload - duplicates and existing timestamp entries will be ignored. - the batch operation may partially succeed - the set of elements successfully inserted is returned in the response (omits items which already existed in the database).\n\nMay return any of the following canonical error codes: - NOT_FOUND - The containing PerfSampleSeries does not exist", + "httpMethod": "POST", + "id": "toolresults.projects.histories.executions.steps.perfSampleSeries.samples.batchCreate", + "parameterOrder": [ + "projectId", + "historyId", + "executionId", + "stepId", + "sampleSeriesId" + ], + "parameters": { + "executionId": { + "description": "A tool results execution ID.", + "location": "path", + "required": true, + "type": "string" + }, + "historyId": { + "description": "A tool results history ID.", + "location": "path", + "required": true, + "type": "string" + }, + "projectId": { + "description": "The cloud project", + "location": "path", + "required": true, + "type": "string" + }, + "sampleSeriesId": { + "description": "A sample series id", + "location": "path", + "required": true, + "type": "string" + }, + "stepId": { + "description": "A tool results step ID.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{projectId}/histories/{historyId}/executions/{executionId}/steps/{stepId}/perfSampleSeries/{sampleSeriesId}/samples:batchCreate", + "request": { + "$ref": "BatchCreatePerfSamplesRequest" + }, + "response": { + "$ref": "BatchCreatePerfSamplesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists the Performance Samples of a given Sample Series - The list results are sorted by timestamps ascending - The default page size is 500 samples; and maximum size allowed 5000 - The response token indicates the last returned PerfSample timestamp - When the results size exceeds the page size, submit a subsequent request including the page token to return the rest of the samples up to the page limit\n\nMay return any of the following canonical error codes: - OUT_OF_RANGE - The specified request page_token is out of valid range - NOT_FOUND - The containing PerfSampleSeries does not exist", + "httpMethod": "GET", + "id": "toolresults.projects.histories.executions.steps.perfSampleSeries.samples.list", + "parameterOrder": [ + "projectId", + "historyId", + "executionId", + "stepId", + "sampleSeriesId" + ], + "parameters": { + "executionId": { + "description": "A tool results execution ID.", + "location": "path", + "required": true, + "type": "string" + }, + "historyId": { + "description": "A tool results history ID.", + "location": "path", + "required": true, + "type": "string" + }, + "pageSize": { + "description": "The default page size is 500 samples, and the maximum size is 5000. If the page_size is greater than 5000, the effective page size will be 5000", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional, the next_page_token returned in the previous response", + "location": "query", + "type": "string" + }, + "projectId": { + "description": "The cloud project", + "location": "path", + "required": true, + "type": "string" + }, + "sampleSeriesId": { + "description": "A sample series id", + "location": "path", + "required": true, + "type": "string" + }, + "stepId": { + "description": "A tool results step ID.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{projectId}/histories/{historyId}/executions/{executionId}/steps/{stepId}/perfSampleSeries/{sampleSeriesId}/samples", + "response": { + "$ref": "ListPerfSamplesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + } + } + }, + "thumbnails": { + "methods": { + "list": { + "description": "Lists thumbnails of images attached to a step.\n\nMay return any of the following canonical error codes: - PERMISSION_DENIED - if the user is not authorized to read from the project, or from any of the images - INVALID_ARGUMENT - if the request is malformed - NOT_FOUND - if the step does not exist, or if any of the images do not exist", + "httpMethod": "GET", + "id": "toolresults.projects.histories.executions.steps.thumbnails.list", + "parameterOrder": [ + "projectId", + "historyId", + "executionId", + "stepId" + ], + "parameters": { + "executionId": { + "description": "An Execution id.\n\nRequired.", + "location": "path", + "required": true, + "type": "string" + }, + "historyId": { + "description": "A History id.\n\nRequired.", + "location": "path", + "required": true, + "type": "string" + }, + "pageSize": { + "description": "The maximum number of thumbnails to fetch.\n\nDefault value: 50. The server will use this default if the field is not set or has a value of 0.\n\nOptional.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "A continuation token to resume the query at the next item.\n\nOptional.", + "location": "query", + "type": "string" + }, + "projectId": { + "description": "A Project id.\n\nRequired.", + "location": "path", + "required": true, + "type": "string" + }, + "stepId": { + "description": "A Step id.\n\nRequired.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "{projectId}/histories/{historyId}/executions/{executionId}/steps/{stepId}/thumbnails", + "response": { + "$ref": "ListStepThumbnailsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + } + } + } } - }, - "parameterOrder": [ - "projectId", - "historyId", - "executionId", - "stepId" - ], - "response": { - "$ref": "ListStepThumbnailsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] } - } } - } } - } } - } } - } - } - } -} + }, + "revision": "20180322", + "rootUrl": "https://www.googleapis.com/", + "schemas": { + "AndroidAppInfo": { + "description": "Android app information.", + "id": "AndroidAppInfo", + "properties": { + "name": { + "description": "The name of the app. Optional", + "type": "string" + }, + "packageName": { + "description": "The package name of the app. Required.", + "type": "string" + }, + "versionCode": { + "description": "The internal version code of the app. Optional.", + "type": "string" + }, + "versionName": { + "description": "The version name of the app. Optional.", + "type": "string" + } + }, + "type": "object" + }, + "AndroidInstrumentationTest": { + "description": "A test of an Android application that can control an Android component independently of its normal lifecycle.\n\nSee for more information on types of Android tests.", + "id": "AndroidInstrumentationTest", + "properties": { + "testPackageId": { + "description": "The java package for the test to be executed. Required", + "type": "string" + }, + "testRunnerClass": { + "description": "The InstrumentationTestRunner class. Required", + "type": "string" + }, + "testTargets": { + "description": "Each target must be fully qualified with the package name or class name, in one of these formats: - \"package package_name\" - \"class package_name.class_name\" - \"class package_name.class_name#method_name\"\n\nIf empty, all targets in the module will be run.", + "items": { + "type": "string" + }, + "type": "array" + }, + "useOrchestrator": { + "description": "The flag indicates whether Android Test Orchestrator will be used to run test or not.", + "type": "boolean" + } + }, + "type": "object" + }, + "AndroidRoboTest": { + "description": "A test of an android application that explores the application on a virtual or physical Android device, finding culprits and crashes as it goes.", + "id": "AndroidRoboTest", + "properties": { + "appInitialActivity": { + "description": "The initial activity that should be used to start the app. Optional", + "type": "string" + }, + "bootstrapPackageId": { + "description": "The java package for the bootstrap. Optional", + "type": "string" + }, + "bootstrapRunnerClass": { + "description": "The runner class for the bootstrap. Optional", + "type": "string" + }, + "maxDepth": { + "description": "The max depth of the traversal stack Robo can explore. Optional", + "format": "int32", + "type": "integer" + }, + "maxSteps": { + "description": "The max number of steps/actions Robo can execute. Default is no limit (0). Optional", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "AndroidTest": { + "description": "An Android mobile test specification.", + "id": "AndroidTest", + "properties": { + "androidAppInfo": { + "$ref": "AndroidAppInfo", + "description": "Information about the application under test." + }, + "androidInstrumentationTest": { + "$ref": "AndroidInstrumentationTest", + "description": "An Android instrumentation test." + }, + "androidRoboTest": { + "$ref": "AndroidRoboTest", + "description": "An Android robo test." + }, + "testTimeout": { + "$ref": "Duration", + "description": "Max time a test is allowed to run before it is automatically cancelled." + } + }, + "type": "object" + }, + "Any": { + "description": "`Any` contains an arbitrary serialized protocol buffer message along with a URL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form of utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\nFoo foo = ...; Any any; any.PackFrom(foo); ... if (any.UnpackTo(\u0026foo)) { ... }\n\nExample 2: Pack and unpack a message in Java.\n\nFoo foo = ...; Any any = Any.pack(foo); ... if (any.is(Foo.class)) { foo = any.unpack(Foo.class); }\n\nExample 3: Pack and unpack a message in Python.\n\nfoo = Foo(...) any = Any() any.Pack(foo) ... if any.Is(Foo.DESCRIPTOR): any.Unpack(foo) ...\n\nExample 4: Pack and unpack a message in Go\n\nfoo := \u0026pb.Foo{...} any, err := ptypes.MarshalAny(foo) ... foo := \u0026pb.Foo{} if err := ptypes.UnmarshalAny(any, foo); err != nil { ... }\n\nThe pack methods provided by protobuf library will by default use 'type.googleapis.com/full.type.name' as the type URL and the unpack methods only use the fully qualified type name after the last '/' in the type URL, for example \"foo.bar.com/x/y.z\" will yield type name \"y.z\".\n\n\n\nJSON ==== The JSON representation of an `Any` value uses the regular representation of the deserialized, embedded message, with an additional field `@type` which contains the type URL. Example:\n\npackage google.profile; message Person { string first_name = 1; string last_name = 2; }\n\n{ \"@type\": \"type.googleapis.com/google.profile.Person\", \"firstName\": , \"lastName\": }\n\nIf the embedded message type is well-known and has a custom JSON representation, that representation will be embedded adding a field `value` which holds the custom JSON in addition to the `@type` field. Example (for message [google.protobuf.Duration][]):\n\n{ \"@type\": \"type.googleapis.com/google.protobuf.Duration\", \"value\": \"1.212s\" }", + "id": "Any", + "properties": { + "typeUrl": { + "description": "A URL/resource name that uniquely identifies the type of the serialized protocol buffer message. The last segment of the URL's path must represent the fully qualified name of the type (as in `path/google.protobuf.Duration`). The name should be in a canonical form (e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they expect it to use in the context of Any. However, for URLs which use the scheme `http`, `https`, or no scheme, one can optionally set up a type server that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed. * An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error. * Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)\n\nNote: this functionality is not currently available in the official protobuf release, and it is not used for type URLs beginning with type.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be used with implementation specific semantics.", + "type": "string" + }, + "value": { + "description": "Must be a valid serialized protocol buffer of the above specified type.", + "format": "byte", + "type": "string" + } + }, + "type": "object" + }, + "AppStartTime": { + "id": "AppStartTime", + "properties": { + "fullyDrawnTime": { + "$ref": "Duration", + "description": "Optional. The time from app start to reaching the developer-reported \"fully drawn\" time. This is only stored if the app includes a call to Activity.reportFullyDrawn(). See https://developer.android.com/topic/performance/launch-time.html#time-full" + }, + "initialDisplayTime": { + "$ref": "Duration", + "description": "The time from app start to the first displayed activity being drawn, as reported in Logcat. See https://developer.android.com/topic/performance/launch-time.html#time-initial" + } + }, + "type": "object" + }, + "BasicPerfSampleSeries": { + "description": "Encapsulates the metadata for basic sample series represented by a line chart", + "id": "BasicPerfSampleSeries", + "properties": { + "perfMetricType": { + "enum": [ + "cpu", + "graphics", + "memory", + "network", + "perfMetricTypeUnspecified" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "perfUnit": { + "enum": [ + "byte", + "bytesPerSecond", + "framesPerSecond", + "kibibyte", + "percent", + "perfUnitUnspecified" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "sampleSeriesLabel": { + "enum": [ + "cpuKernel", + "cpuTotal", + "cpuUser", + "graphicsFrameRate", + "memoryRssPrivate", + "memoryRssShared", + "memoryRssTotal", + "memoryTotal", + "networkReceived", + "networkSent", + "ntBytesReceived", + "ntBytesTransferred", + "sampleSeriesTypeUnspecified" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "BatchCreatePerfSamplesRequest": { + "description": "The request must provide up to a maximum of 5000 samples to be created; a larger sample size will cause an INVALID_ARGUMENT error", + "id": "BatchCreatePerfSamplesRequest", + "properties": { + "perfSamples": { + "description": "The set of PerfSamples to create should not include existing timestamps", + "items": { + "$ref": "PerfSample" + }, + "type": "array" + } + }, + "type": "object" + }, + "BatchCreatePerfSamplesResponse": { + "id": "BatchCreatePerfSamplesResponse", + "properties": { + "perfSamples": { + "items": { + "$ref": "PerfSample" + }, + "type": "array" + } + }, + "type": "object" + }, + "CPUInfo": { + "id": "CPUInfo", + "properties": { + "cpuProcessor": { + "description": "description of the device processor ie '1.8 GHz hexa core 64-bit ARMv8-A'", + "type": "string" + }, + "cpuSpeedInGhz": { + "description": "the CPU clock speed in GHz", + "format": "float", + "type": "number" + }, + "numberOfCores": { + "description": "the number of CPU cores", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "Duration": { + "description": "A Duration represents a signed, fixed-length span of time represented as a count of seconds and fractions of seconds at nanosecond resolution. It is independent of any calendar and concepts like \"day\" or \"month\". It is related to Timestamp in that the difference between two Timestamp values is a Duration and it can be added or subtracted from a Timestamp. Range is approximately +-10,000 years.\n\n# Examples\n\nExample 1: Compute Duration from two Timestamps in pseudo code.\n\nTimestamp start = ...; Timestamp end = ...; Duration duration = ...;\n\nduration.seconds = end.seconds - start.seconds; duration.nanos = end.nanos - start.nanos;\n\nif (duration.seconds 0) { duration.seconds += 1; duration.nanos -= 1000000000; } else if (durations.seconds \u003e 0 \u0026\u0026 duration.nanos \u003c 0) { duration.seconds -= 1; duration.nanos += 1000000000; }\n\nExample 2: Compute Timestamp from Timestamp + Duration in pseudo code.\n\nTimestamp start = ...; Duration duration = ...; Timestamp end = ...;\n\nend.seconds = start.seconds + duration.seconds; end.nanos = start.nanos + duration.nanos;\n\nif (end.nanos = 1000000000) { end.seconds += 1; end.nanos -= 1000000000; }\n\nExample 3: Compute Duration from datetime.timedelta in Python.\n\ntd = datetime.timedelta(days=3, minutes=10) duration = Duration() duration.FromTimedelta(td)\n\n# JSON Mapping\n\nIn JSON format, the Duration type is encoded as a string rather than an object, where the string ends in the suffix \"s\" (indicating seconds) and is preceded by the number of seconds, with nanoseconds expressed as fractional seconds. For example, 3 seconds with 0 nanoseconds should be encoded in JSON format as \"3s\", while 3 seconds and 1 nanosecond should be expressed in JSON format as \"3.000000001s\", and 3 seconds and 1 microsecond should be expressed in JSON format as \"3.000001s\".", + "id": "Duration", + "properties": { + "nanos": { + "description": "Signed fractions of a second at nanosecond resolution of the span of time. Durations less than one second are represented with a 0 `seconds` field and a positive or negative `nanos` field. For durations of one second or more, a non-zero value for the `nanos` field must be of the same sign as the `seconds` field. Must be from -999,999,999 to +999,999,999 inclusive.", + "format": "int32", + "type": "integer" + }, + "seconds": { + "description": "Signed seconds of the span of time. Must be from -315,576,000,000 to +315,576,000,000 inclusive. Note: these bounds are computed from: 60 sec/min * 60 min/hr * 24 hr/day * 365.25 days/year * 10000 years", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "Execution": { + "description": "An Execution represents a collection of Steps. For instance, it could represent: - a mobile test executed across a range of device configurations - a jenkins job with a build step followed by a test step\n\nThe maximum size of an execution message is 1 MiB.\n\nAn Execution can be updated until its state is set to COMPLETE at which point it becomes immutable.", + "id": "Execution", + "properties": { + "completionTime": { + "$ref": "Timestamp", + "description": "The time when the Execution status transitioned to COMPLETE.\n\nThis value will be set automatically when state transitions to COMPLETE.\n\n- In response: set if the execution state is COMPLETE. - In create/update request: never set" + }, + "creationTime": { + "$ref": "Timestamp", + "description": "The time when the Execution was created.\n\nThis value will be set automatically when CreateExecution is called.\n\n- In response: always set - In create/update request: never set" + }, + "executionId": { + "description": "A unique identifier within a History for this Execution.\n\nReturns INVALID_ARGUMENT if this field is set or overwritten by the caller.\n\n- In response always set - In create/update request: never set", + "type": "string" + }, + "outcome": { + "$ref": "Outcome", + "description": "Classify the result, for example into SUCCESS or FAILURE\n\n- In response: present if set by create/update request - In create/update request: optional" + }, + "specification": { + "$ref": "Specification", + "description": "Lightweight information about execution request.\n\n- In response: present if set by create - In create: optional - In update: optional" + }, + "state": { + "description": "The initial state is IN_PROGRESS.\n\nThe only legal state transitions is from IN_PROGRESS to COMPLETE.\n\nA PRECONDITION_FAILED will be returned if an invalid transition is requested.\n\nThe state can only be set to COMPLETE once. A FAILED_PRECONDITION will be returned if the state is set to COMPLETE multiple times.\n\nIf the state is set to COMPLETE, all the in-progress steps within the execution will be set as COMPLETE. If the outcome of the step is not set, the outcome will be set to INCONCLUSIVE.\n\n- In response always set - In create/update request: optional", + "enum": [ + "complete", + "inProgress", + "pending", + "unknownState" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ], + "type": "string" + }, + "testExecutionMatrixId": { + "description": "TestExecution Matrix ID that the TestExecutionService uses.\n\n- In response: present if set by create - In create: optional - In update: never set", + "type": "string" + } + }, + "type": "object" + }, + "FailureDetail": { + "id": "FailureDetail", + "properties": { + "crashed": { + "description": "If the failure was severe because the system (app) under test crashed.", + "type": "boolean" + }, + "notInstalled": { + "description": "If an app is not installed and thus no test can be run with the app. This might be caused by trying to run a test on an unsupported platform.", + "type": "boolean" + }, + "otherNativeCrash": { + "description": "If a native process (including any other than the app) crashed.", + "type": "boolean" + }, + "timedOut": { + "description": "If the test overran some time limit, and that is why it failed.", + "type": "boolean" + }, + "unableToCrawl": { + "description": "If the robo was unable to crawl the app; perhaps because the app did not start.", + "type": "boolean" + } + }, + "type": "object" + }, + "FileReference": { + "description": "A reference to a file.", + "id": "FileReference", + "properties": { + "fileUri": { + "description": "The URI of a file stored in Google Cloud Storage.\n\nFor example: http://storage.googleapis.com/mybucket/path/to/test.xml or in gsutil format: gs://mybucket/path/to/test.xml with version-specific info, gs://mybucket/path/to/test.xml#1360383693690000\n\nAn INVALID_ARGUMENT error will be returned if the URI format is not supported.\n\n- In response: always set - In create/update request: always set", + "type": "string" + } + }, + "type": "object" + }, + "GraphicsStats": { + "description": "Graphics statistics for the App. The information is collected from 'adb shell dumpsys graphicsstats'. For more info see: https://developer.android.com/training/testing/performance.html Statistics will only be present for API 23+.", + "id": "GraphicsStats", + "properties": { + "buckets": { + "description": "Histogram of frame render times. There should be 154 buckets ranging from [5ms, 6ms) to [4950ms, infinity)", + "items": { + "$ref": "GraphicsStatsBucket" + }, + "type": "array" + }, + "highInputLatencyCount": { + "description": "Total \"high input latency\" events.", + "format": "int64", + "type": "string" + }, + "jankyFrames": { + "description": "Total frames with slow render time. Should be \u003c= total_frames.", + "format": "int64", + "type": "string" + }, + "missedVsyncCount": { + "description": "Total \"missed vsync\" events.", + "format": "int64", + "type": "string" + }, + "p50Millis": { + "description": "50th percentile frame render time in milliseconds.", + "format": "int64", + "type": "string" + }, + "p90Millis": { + "description": "90th percentile frame render time in milliseconds.", + "format": "int64", + "type": "string" + }, + "p95Millis": { + "description": "95th percentile frame render time in milliseconds.", + "format": "int64", + "type": "string" + }, + "p99Millis": { + "description": "99th percentile frame render time in milliseconds.", + "format": "int64", + "type": "string" + }, + "slowBitmapUploadCount": { + "description": "Total \"slow bitmap upload\" events.", + "format": "int64", + "type": "string" + }, + "slowDrawCount": { + "description": "Total \"slow draw\" events.", + "format": "int64", + "type": "string" + }, + "slowUiThreadCount": { + "description": "Total \"slow UI thread\" events.", + "format": "int64", + "type": "string" + }, + "totalFrames": { + "description": "Total frames rendered by package.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "GraphicsStatsBucket": { + "id": "GraphicsStatsBucket", + "properties": { + "frameCount": { + "description": "Number of frames in the bucket.", + "format": "int64", + "type": "string" + }, + "renderMillis": { + "description": "Lower bound of render time in milliseconds.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "History": { + "description": "A History represents a sorted list of Executions ordered by the start_timestamp_millis field (descending). It can be used to group all the Executions of a continuous build.\n\nNote that the ordering only operates on one-dimension. If a repository has multiple branches, it means that multiple histories will need to be used in order to order Executions per branch.", + "id": "History", + "properties": { + "displayName": { + "description": "A short human-readable (plain text) name to display in the UI. Maximum of 100 characters.\n\n- In response: present if set during create. - In create request: optional", + "type": "string" + }, + "historyId": { + "description": "A unique identifier within a project for this History.\n\nReturns INVALID_ARGUMENT if this field is set or overwritten by the caller.\n\n- In response always set - In create request: never set", + "type": "string" + }, + "name": { + "description": "A name to uniquely identify a history within a project. Maximum of 200 characters.\n\n- In response always set - In create request: always set", + "type": "string" + } + }, + "type": "object" + }, + "Image": { + "description": "An image, with a link to the main image and a thumbnail.", + "id": "Image", + "properties": { + "error": { + "$ref": "Status", + "description": "An error explaining why the thumbnail could not be rendered." + }, + "sourceImage": { + "$ref": "ToolOutputReference", + "description": "A reference to the full-size, original image.\n\nThis is the same as the tool_outputs entry for the image under its Step.\n\nAlways set." + }, + "stepId": { + "description": "The step to which the image is attached.\n\nAlways set.", + "type": "string" + }, + "thumbnail": { + "$ref": "Thumbnail", + "description": "The thumbnail." + } + }, + "type": "object" + }, + "InconclusiveDetail": { + "id": "InconclusiveDetail", + "properties": { + "abortedByUser": { + "description": "If the end user aborted the test execution before a pass or fail could be determined. For example, the user pressed ctrl-c which sent a kill signal to the test runner while the test was running.", + "type": "boolean" + }, + "infrastructureFailure": { + "description": "If the test runner could not determine success or failure because the test depends on a component other than the system under test which failed.\n\nFor example, a mobile test requires provisioning a device where the test executes, and that provisioning can fail.", + "type": "boolean" + } + }, + "type": "object" + }, + "ListExecutionsResponse": { + "id": "ListExecutionsResponse", + "properties": { + "executions": { + "description": "Executions.\n\nAlways set.", + "items": { + "$ref": "Execution" + }, + "type": "array" + }, + "nextPageToken": { + "description": "A continuation token to resume the query at the next item.\n\nWill only be set if there are more Executions to fetch.", + "type": "string" + } + }, + "type": "object" + }, + "ListHistoriesResponse": { + "description": "Response message for HistoryService.List", + "id": "ListHistoriesResponse", + "properties": { + "histories": { + "description": "Histories.", + "items": { + "$ref": "History" + }, + "type": "array" + }, + "nextPageToken": { + "description": "A continuation token to resume the query at the next item.\n\nWill only be set if there are more histories to fetch.\n\nTokens are valid for up to one hour from the time of the first list request. For instance, if you make a list request at 1PM and use the token from this first request 10 minutes later, the token from this second response will only be valid for 50 minutes.", + "type": "string" + } + }, + "type": "object" + }, + "ListPerfSampleSeriesResponse": { + "id": "ListPerfSampleSeriesResponse", + "properties": { + "perfSampleSeries": { + "description": "The resulting PerfSampleSeries sorted by id", + "items": { + "$ref": "PerfSampleSeries" + }, + "type": "array" + } + }, + "type": "object" + }, + "ListPerfSamplesResponse": { + "id": "ListPerfSamplesResponse", + "properties": { + "nextPageToken": { + "description": "Optional, returned if result size exceeds the page size specified in the request (or the default page size, 500, if unspecified). It indicates the last sample timestamp to be used as page_token in subsequent request", + "type": "string" + }, + "perfSamples": { + "items": { + "$ref": "PerfSample" + }, + "type": "array" + } + }, + "type": "object" + }, + "ListScreenshotClustersResponse": { + "id": "ListScreenshotClustersResponse", + "properties": { + "clusters": { + "description": "The set of clusters associated with an execution Always set", + "items": { + "$ref": "ScreenshotCluster" + }, + "type": "array" + } + }, + "type": "object" + }, + "ListStepThumbnailsResponse": { + "description": "A response containing the thumbnails in a step.", + "id": "ListStepThumbnailsResponse", + "properties": { + "nextPageToken": { + "description": "A continuation token to resume the query at the next item.\n\nIf set, indicates that there are more thumbnails to read, by calling list again with this value in the page_token field.", + "type": "string" + }, + "thumbnails": { + "description": "A list of image data.\n\nImages are returned in a deterministic order; they are ordered by these factors, in order of importance: * First, by their associated test case. Images without a test case are considered greater than images with one. * Second, by their creation time. Images without a creation time are greater than images with one. * Third, by the order in which they were added to the step (by calls to CreateStep or UpdateStep).", + "items": { + "$ref": "Image" + }, + "type": "array" + } + }, + "type": "object" + }, + "ListStepsResponse": { + "description": "Response message for StepService.List.", + "id": "ListStepsResponse", + "properties": { + "nextPageToken": { + "description": "A continuation token to resume the query at the next item.\n\nIf set, indicates that there are more steps to read, by calling list again with this value in the page_token field.", + "type": "string" + }, + "steps": { + "description": "Steps.", + "items": { + "$ref": "Step" + }, + "type": "array" + } + }, + "type": "object" + }, + "MemoryInfo": { + "id": "MemoryInfo", + "properties": { + "memoryCapInKibibyte": { + "description": "Maximum memory that can be allocated to the process in KiB", + "format": "int64", + "type": "string" + }, + "memoryTotalInKibibyte": { + "description": "Total memory available on the device in KiB", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "Outcome": { + "description": "Interprets a result so that humans and machines can act on it.", + "id": "Outcome", + "properties": { + "failureDetail": { + "$ref": "FailureDetail", + "description": "More information about a FAILURE outcome.\n\nReturns INVALID_ARGUMENT if this field is set but the summary is not FAILURE.\n\nOptional" + }, + "inconclusiveDetail": { + "$ref": "InconclusiveDetail", + "description": "More information about an INCONCLUSIVE outcome.\n\nReturns INVALID_ARGUMENT if this field is set but the summary is not INCONCLUSIVE.\n\nOptional" + }, + "skippedDetail": { + "$ref": "SkippedDetail", + "description": "More information about a SKIPPED outcome.\n\nReturns INVALID_ARGUMENT if this field is set but the summary is not SKIPPED.\n\nOptional" + }, + "successDetail": { + "$ref": "SuccessDetail", + "description": "More information about a SUCCESS outcome.\n\nReturns INVALID_ARGUMENT if this field is set but the summary is not SUCCESS.\n\nOptional" + }, + "summary": { + "description": "The simplest way to interpret a result.\n\nRequired", + "enum": [ + "failure", + "inconclusive", + "skipped", + "success", + "unset" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "PerfEnvironment": { + "description": "Encapsulates performance environment info", + "id": "PerfEnvironment", + "properties": { + "cpuInfo": { + "$ref": "CPUInfo", + "description": "CPU related environment info" + }, + "memoryInfo": { + "$ref": "MemoryInfo", + "description": "Memory related environment info" + } + }, + "type": "object" + }, + "PerfMetricsSummary": { + "description": "A summary of perf metrics collected and performance environment info", + "id": "PerfMetricsSummary", + "properties": { + "appStartTime": { + "$ref": "AppStartTime" + }, + "executionId": { + "description": "A tool results execution ID.", + "type": "string" + }, + "graphicsStats": { + "$ref": "GraphicsStats", + "description": "Graphics statistics for the entire run. Statistics are reset at the beginning of the run and collected at the end of the run." + }, + "historyId": { + "description": "A tool results history ID.", + "type": "string" + }, + "perfEnvironment": { + "$ref": "PerfEnvironment", + "description": "Describes the environment in which the performance metrics were collected" + }, + "perfMetrics": { + "description": "Set of resource collected", + "items": { + "enum": [ + "cpu", + "graphics", + "memory", + "network", + "perfMetricTypeUnspecified" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "type": "array" + }, + "projectId": { + "description": "The cloud project", + "type": "string" + }, + "stepId": { + "description": "A tool results step ID.", + "type": "string" + } + }, + "type": "object" + }, + "PerfSample": { + "description": "Resource representing a single performance measure or data point", + "id": "PerfSample", + "properties": { + "sampleTime": { + "$ref": "Timestamp", + "description": "Timestamp of collection" + }, + "value": { + "description": "Value observed", + "format": "double", + "type": "number" + } + }, + "type": "object" + }, + "PerfSampleSeries": { + "description": "Resource representing a collection of performance samples (or data points)", + "id": "PerfSampleSeries", + "properties": { + "basicPerfSampleSeries": { + "$ref": "BasicPerfSampleSeries", + "description": "Basic series represented by a line chart" + }, + "executionId": { + "description": "A tool results execution ID.", + "type": "string" + }, + "historyId": { + "description": "A tool results history ID.", + "type": "string" + }, + "projectId": { + "description": "The cloud project", + "type": "string" + }, + "sampleSeriesId": { + "description": "A sample series id", + "type": "string" + }, + "stepId": { + "description": "A tool results step ID.", + "type": "string" + } + }, + "type": "object" + }, + "ProjectSettings": { + "description": "Per-project settings for the Tool Results service.", + "id": "ProjectSettings", + "properties": { + "defaultBucket": { + "description": "The name of the Google Cloud Storage bucket to which results are written.\n\nBy default, this is unset.\n\nIn update request: optional In response: optional", + "type": "string" + }, + "name": { + "description": "The name of the project's settings.\n\nAlways of the form: projects/{project-id}/settings\n\nIn update request: never set In response: always set", + "type": "string" + } + }, + "type": "object" + }, + "PublishXunitXmlFilesRequest": { + "description": "Request message for StepService.PublishXunitXmlFiles.", + "id": "PublishXunitXmlFilesRequest", + "properties": { + "xunitXmlFiles": { + "description": "URI of the Xunit XML files to publish.\n\nThe maximum size of the file this reference is pointing to is 50MB.\n\nRequired.", + "items": { + "$ref": "FileReference" + }, + "type": "array" + } + }, + "type": "object" + }, + "Screen": { + "id": "Screen", + "properties": { + "fileReference": { + "description": "File reference of the png file. Required.", + "type": "string" + }, + "locale": { + "description": "Locale of the device that the screenshot was taken on. Required.", + "type": "string" + }, + "model": { + "description": "Model of the device that the screenshot was taken on. Required.", + "type": "string" + }, + "version": { + "description": "OS version of the device that the screenshot was taken on. Required.", + "type": "string" + } + }, + "type": "object" + }, + "ScreenshotCluster": { + "id": "ScreenshotCluster", + "properties": { + "activity": { + "description": "A string that describes the activity of every screen in the cluster.", + "type": "string" + }, + "clusterId": { + "description": "A unique identifier for the cluster.", + "type": "string" + }, + "keyScreen": { + "$ref": "Screen", + "description": "A singular screen that represents the cluster as a whole. This screen will act as the \"cover\" of the entire cluster. When users look at the clusters, only the key screen from each cluster will be shown. Which screen is the key screen is determined by the ClusteringAlgorithm" + }, + "screens": { + "description": "Full list of screens.", + "items": { + "$ref": "Screen" + }, + "type": "array" + } + }, + "type": "object" + }, + "SkippedDetail": { + "id": "SkippedDetail", + "properties": { + "incompatibleAppVersion": { + "description": "If the App doesn't support the specific API level.", + "type": "boolean" + }, + "incompatibleArchitecture": { + "description": "If the App doesn't run on the specific architecture, for example, x86.", + "type": "boolean" + }, + "incompatibleDevice": { + "description": "If the requested OS version doesn't run on the specific device model.", + "type": "boolean" + } + }, + "type": "object" + }, + "Specification": { + "description": "The details about how to run the execution.", + "id": "Specification", + "properties": { + "androidTest": { + "$ref": "AndroidTest", + "description": "An Android mobile test execution specification." + } + }, + "type": "object" + }, + "StackTrace": { + "description": "A stacktrace.", + "id": "StackTrace", + "properties": { + "clusterId": { + "description": "Exception cluster ID", + "type": "string" + }, + "exception": { + "description": "The stack trace message.\n\nRequired", + "type": "string" + }, + "reportId": { + "description": "Exception report ID", + "type": "string" + } + }, + "type": "object" + }, + "Status": { + "description": "The `Status` type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by [gRPC](https://github.com/grpc). The error model is designed to be:\n\n- Simple to use and understand for most users - Flexible enough to meet unexpected needs\n\n# Overview\n\nThe `Status` message contains three pieces of data: error code, error message, and error details. The error code should be an enum value of [google.rpc.Code][], but it may accept additional error codes if needed. The error message should be a developer-facing English message that helps developers *understand* and *resolve* the error. If a localized user-facing error message is needed, put the localized message in the error details or localize it in the client. The optional error details may contain arbitrary information about the error. There is a predefined set of error detail types in the package `google.rpc` that can be used for common error conditions.\n\n# Language mapping\n\nThe `Status` message is the logical representation of the error model, but it is not necessarily the actual wire format. When the `Status` message is exposed in different client libraries and different wire protocols, it can be mapped differently. For example, it will likely be mapped to some exceptions in Java, but more likely mapped to some error codes in C.\n\n# Other uses\n\nThe error model and the `Status` message can be used in a variety of environments, either with or without APIs, to provide a consistent developer experience across different environments.\n\nExample uses of this error model include:\n\n- Partial errors. If a service needs to return partial errors to the client, it may embed the `Status` in the normal response to indicate the partial errors.\n\n- Workflow errors. A typical workflow has multiple steps. Each step may have a `Status` message for error reporting.\n\n- Batch operations. If a client uses batch request and batch response, the `Status` message should be used directly inside batch response, one for each error sub-response.\n\n- Asynchronous operations. If an API call embeds asynchronous operation results in its response, the status of those operations should be represented directly using the `Status` message.\n\n- Logging. If some API errors are stored in logs, the message `Status` could be used directly after any stripping needed for security/privacy reasons.", + "id": "Status", + "properties": { + "code": { + "description": "The status code, which should be an enum value of [google.rpc.Code][].", + "format": "int32", + "type": "integer" + }, + "details": { + "description": "A list of messages that carry the error details. There is a common set of message types for APIs to use.", + "items": { + "$ref": "Any" + }, + "type": "array" + }, + "message": { + "description": "A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the [google.rpc.Status.details][] field, or localized by the client.", + "type": "string" + } + }, + "type": "object" + }, + "Step": { + "description": "A Step represents a single operation performed as part of Execution. A step can be used to represent the execution of a tool ( for example a test runner execution or an execution of a compiler).\n\nSteps can overlap (for instance two steps might have the same start time if some operations are done in parallel).\n\nHere is an example, let's consider that we have a continuous build is executing a test runner for each iteration. The workflow would look like: - user creates a Execution with id 1 - user creates an TestExecutionStep with id 100 for Execution 1 - user update TestExecutionStep with id 100 to add a raw xml log + the service parses the xml logs and returns a TestExecutionStep with updated TestResult(s). - user update the status of TestExecutionStep with id 100 to COMPLETE\n\nA Step can be updated until its state is set to COMPLETE at which points it becomes immutable.", + "id": "Step", + "properties": { + "completionTime": { + "$ref": "Timestamp", + "description": "The time when the step status was set to complete.\n\nThis value will be set automatically when state transitions to COMPLETE.\n\n- In response: set if the execution state is COMPLETE. - In create/update request: never set" + }, + "creationTime": { + "$ref": "Timestamp", + "description": "The time when the step was created.\n\n- In response: always set - In create/update request: never set" + }, + "description": { + "description": "A description of this tool For example: mvn clean package -D skipTests=true\n\n- In response: present if set by create/update request - In create/update request: optional", + "type": "string" + }, + "deviceUsageDuration": { + "$ref": "Duration", + "description": "How much the device resource is used to perform the test.\n\nThis is the device usage used for billing purpose, which is different from the run_duration, for example, infrastructure failure won't be charged for device usage.\n\nPRECONDITION_FAILED will be returned if one attempts to set a device_usage on a step which already has this field set.\n\n- In response: present if previously set. - In create request: optional - In update request: optional" + }, + "dimensionValue": { + "description": "If the execution containing this step has any dimension_definition set, then this field allows the child to specify the values of the dimensions.\n\nThe keys must exactly match the dimension_definition of the execution.\n\nFor example, if the execution has `dimension_definition = ['attempt', 'device']` then a step must define values for those dimensions, eg. `dimension_value = ['attempt': '1', 'device': 'Nexus 6']`\n\nIf a step does not participate in one dimension of the matrix, the value for that dimension should be empty string. For example, if one of the tests is executed by a runner which does not support retries, the step could have `dimension_value = ['attempt': '', 'device': 'Nexus 6']`\n\nIf the step does not participate in any dimensions of the matrix, it may leave dimension_value unset.\n\nA PRECONDITION_FAILED will be returned if any of the keys do not exist in the dimension_definition of the execution.\n\nA PRECONDITION_FAILED will be returned if another step in this execution already has the same name and dimension_value, but differs on other data fields, for example, step field is different.\n\nA PRECONDITION_FAILED will be returned if dimension_value is set, and there is a dimension_definition in the execution which is not specified as one of the keys.\n\n- In response: present if set by create - In create request: optional - In update request: never set", + "items": { + "$ref": "StepDimensionValueEntry" + }, + "type": "array" + }, + "hasImages": { + "description": "Whether any of the outputs of this step are images whose thumbnails can be fetched with ListThumbnails.\n\n- In response: always set - In create/update request: never set", + "type": "boolean" + }, + "labels": { + "description": "Arbitrary user-supplied key/value pairs that are associated with the step.\n\nUsers are responsible for managing the key namespace such that keys don't accidentally collide.\n\nAn INVALID_ARGUMENT will be returned if the number of labels exceeds 100 or if the length of any of the keys or values exceeds 100 characters.\n\n- In response: always set - In create request: optional - In update request: optional; any new key/value pair will be added to the map, and any new value for an existing key will update that key's value", + "items": { + "$ref": "StepLabelsEntry" + }, + "type": "array" + }, + "name": { + "description": "A short human-readable name to display in the UI. Maximum of 100 characters. For example: Clean build\n\nA PRECONDITION_FAILED will be returned upon creating a new step if it shares its name and dimension_value with an existing step. If two steps represent a similar action, but have different dimension values, they should share the same name. For instance, if the same set of tests is run on two different platforms, the two steps should have the same name.\n\n- In response: always set - In create request: always set - In update request: never set", + "type": "string" + }, + "outcome": { + "$ref": "Outcome", + "description": "Classification of the result, for example into SUCCESS or FAILURE\n\n- In response: present if set by create/update request - In create/update request: optional" + }, + "runDuration": { + "$ref": "Duration", + "description": "How long it took for this step to run.\n\nIf unset, this is set to the difference between creation_time and completion_time when the step is set to the COMPLETE state. In some cases, it is appropriate to set this value separately: For instance, if a step is created, but the operation it represents is queued for a few minutes before it executes, it would be appropriate not to include the time spent queued in its run_duration.\n\nPRECONDITION_FAILED will be returned if one attempts to set a run_duration on a step which already has this field set.\n\n- In response: present if previously set; always present on COMPLETE step - In create request: optional - In update request: optional" + }, + "state": { + "description": "The initial state is IN_PROGRESS. The only legal state transitions are * IN_PROGRESS -\u003e COMPLETE\n\nA PRECONDITION_FAILED will be returned if an invalid transition is requested.\n\nIt is valid to create Step with a state set to COMPLETE. The state can only be set to COMPLETE once. A PRECONDITION_FAILED will be returned if the state is set to COMPLETE multiple times.\n\n- In response: always set - In create/update request: optional", + "enum": [ + "complete", + "inProgress", + "pending", + "unknownState" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ], + "type": "string" + }, + "stepId": { + "description": "A unique identifier within a Execution for this Step.\n\nReturns INVALID_ARGUMENT if this field is set or overwritten by the caller.\n\n- In response: always set - In create/update request: never set", + "type": "string" + }, + "testExecutionStep": { + "$ref": "TestExecutionStep", + "description": "An execution of a test runner." + }, + "toolExecutionStep": { + "$ref": "ToolExecutionStep", + "description": "An execution of a tool (used for steps we don't explicitly support)." + } + }, + "type": "object" + }, + "StepDimensionValueEntry": { + "id": "StepDimensionValueEntry", + "properties": { + "key": { + "type": "string" + }, + "value": { + "type": "string" + } + }, + "type": "object" + }, + "StepLabelsEntry": { + "id": "StepLabelsEntry", + "properties": { + "key": { + "type": "string" + }, + "value": { + "type": "string" + } + }, + "type": "object" + }, + "SuccessDetail": { + "id": "SuccessDetail", + "properties": { + "otherNativeCrash": { + "description": "If a native process other than the app crashed.", + "type": "boolean" + } + }, + "type": "object" + }, + "TestCaseReference": { + "description": "A reference to a test case.\n\nTest case references are canonically ordered lexicographically by these three factors: * First, by test_suite_name. * Second, by class_name. * Third, by name.", + "id": "TestCaseReference", + "properties": { + "className": { + "description": "The name of the class.", + "type": "string" + }, + "name": { + "description": "The name of the test case.\n\nRequired.", + "type": "string" + }, + "testSuiteName": { + "description": "The name of the test suite to which this test case belongs.", + "type": "string" + } + }, + "type": "object" + }, + "TestExecutionStep": { + "description": "A step that represents running tests.\n\nIt accepts ant-junit xml files which will be parsed into structured test results by the service. Xml file paths are updated in order to append more files, however they can't be deleted.\n\nUsers can also add test results manually by using the test_result field.", + "id": "TestExecutionStep", + "properties": { + "testIssues": { + "description": "Issues observed during the test execution.\n\nFor example, if the mobile app under test crashed during the test, the error message and the stack trace content can be recorded here to assist debugging.\n\n- In response: present if set by create or update - In create/update request: optional", + "items": { + "$ref": "TestIssue" + }, + "type": "array" + }, + "testSuiteOverviews": { + "description": "List of test suite overview contents. This could be parsed from xUnit XML log by server, or uploaded directly by user. This references should only be called when test suites are fully parsed or uploaded.\n\nThe maximum allowed number of test suite overviews per step is 1000.\n\n- In response: always set - In create request: optional - In update request: never (use publishXunitXmlFiles custom method instead)", + "items": { + "$ref": "TestSuiteOverview" + }, + "type": "array" + }, + "testTiming": { + "$ref": "TestTiming", + "description": "The timing break down of the test execution.\n\n- In response: present if set by create or update - In create/update request: optional" + }, + "toolExecution": { + "$ref": "ToolExecution", + "description": "Represents the execution of the test runner.\n\nThe exit code of this tool will be used to determine if the test passed.\n\n- In response: always set - In create/update request: optional" + } + }, + "type": "object" + }, + "TestIssue": { + "description": "An issue detected occurring during a test execution.", + "id": "TestIssue", + "properties": { + "errorMessage": { + "description": "A brief human-readable message describing the issue. Required.", + "type": "string" + }, + "severity": { + "description": "Severity of issue. Required.", + "enum": [ + "info", + "severe", + "unspecifiedSeverity", + "warning" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ], + "type": "string" + }, + "stackTrace": { + "$ref": "StackTrace", + "description": "Deprecated in favor of stack trace fields inside specific warnings." + }, + "type": { + "description": "Type of issue. Required.", + "enum": [ + "anr", + "compatibleWithOrchestrator", + "completeRoboScriptExecution", + "fatalException", + "incompleteRoboScriptExecution", + "launcherActivityNotFound", + "nativeCrash", + "startActivityNotFound", + "unspecifiedType", + "unusedRoboDirective" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "warning": { + "$ref": "Any", + "description": "Warning message with additional details of the issue. Should always be a message from com.google.devtools.toolresults.v1.warnings" + } + }, + "type": "object" + }, + "TestSuiteOverview": { + "description": "A summary of a test suite result either parsed from XML or uploaded directly by a user.\n\nNote: the API related comments are for StepService only. This message is also being used in ExecutionService in a read only mode for the corresponding step.", + "id": "TestSuiteOverview", + "properties": { + "errorCount": { + "description": "Number of test cases in error, typically set by the service by parsing the xml_source.\n\n- In create/response: always set - In update request: never", + "format": "int32", + "type": "integer" + }, + "failureCount": { + "description": "Number of failed test cases, typically set by the service by parsing the xml_source. May also be set by the user.\n\n- In create/response: always set - In update request: never", + "format": "int32", + "type": "integer" + }, + "name": { + "description": "The name of the test suite.\n\n- In create/response: always set - In update request: never", + "type": "string" + }, + "skippedCount": { + "description": "Number of test cases not run, typically set by the service by parsing the xml_source.\n\n- In create/response: always set - In update request: never", + "format": "int32", + "type": "integer" + }, + "totalCount": { + "description": "Number of test cases, typically set by the service by parsing the xml_source.\n\n- In create/response: always set - In update request: never", + "format": "int32", + "type": "integer" + }, + "xmlSource": { + "$ref": "FileReference", + "description": "If this test suite was parsed from XML, this is the URI where the original XML file is stored.\n\nNote: Multiple test suites can share the same xml_source\n\nReturns INVALID_ARGUMENT if the uri format is not supported.\n\n- In create/response: optional - In update request: never" + } + }, + "type": "object" + }, + "TestTiming": { + "description": "Testing timing break down to know phases.", + "id": "TestTiming", + "properties": { + "testProcessDuration": { + "$ref": "Duration", + "description": "How long it took to run the test process.\n\n- In response: present if previously set. - In create/update request: optional" + } + }, + "type": "object" + }, + "Thumbnail": { + "description": "A single thumbnail, with its size and format.", + "id": "Thumbnail", + "properties": { + "contentType": { + "description": "The thumbnail's content type, i.e. \"image/png\".\n\nAlways set.", + "type": "string" + }, + "data": { + "description": "The thumbnail file itself.\n\nThat is, the bytes here are precisely the bytes that make up the thumbnail file; they can be served as an image as-is (with the appropriate content type.)\n\nAlways set.", + "format": "byte", + "type": "string" + }, + "heightPx": { + "description": "The height of the thumbnail, in pixels.\n\nAlways set.", + "format": "int32", + "type": "integer" + }, + "widthPx": { + "description": "The width of the thumbnail, in pixels.\n\nAlways set.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "Timestamp": { + "description": "A Timestamp represents a point in time independent of any time zone or calendar, represented as seconds and fractions of seconds at nanosecond resolution in UTC Epoch time. It is encoded using the Proleptic Gregorian Calendar which extends the Gregorian calendar backwards to year one. It is encoded assuming all minutes are 60 seconds long, i.e. leap seconds are \"smeared\" so that no leap second table is needed for interpretation. Range is from 0001-01-01T00:00:00Z to 9999-12-31T23:59:59.999999999Z. By restricting to that range, we ensure that we can convert to and from RFC 3339 date strings. See [https://www.ietf.org/rfc/rfc3339.txt](https://www.ietf.org/rfc/rfc3339.txt).\n\n# Examples\n\nExample 1: Compute Timestamp from POSIX `time()`.\n\nTimestamp timestamp; timestamp.set_seconds(time(NULL)); timestamp.set_nanos(0);\n\nExample 2: Compute Timestamp from POSIX `gettimeofday()`.\n\nstruct timeval tv; gettimeofday(\u0026tv, NULL);\n\nTimestamp timestamp; timestamp.set_seconds(tv.tv_sec); timestamp.set_nanos(tv.tv_usec * 1000);\n\nExample 3: Compute Timestamp from Win32 `GetSystemTimeAsFileTime()`.\n\nFILETIME ft; GetSystemTimeAsFileTime(\u0026ft); UINT64 ticks = (((UINT64)ft.dwHighDateTime) \u003c\u003c 32) | ft.dwLowDateTime;\n\n// A Windows tick is 100 nanoseconds. Windows epoch 1601-01-01T00:00:00Z // is 11644473600 seconds before Unix epoch 1970-01-01T00:00:00Z. Timestamp timestamp; timestamp.set_seconds((INT64) ((ticks / 10000000) - 11644473600LL)); timestamp.set_nanos((INT32) ((ticks % 10000000) * 100));\n\nExample 4: Compute Timestamp from Java `System.currentTimeMillis()`.\n\nlong millis = System.currentTimeMillis();\n\nTimestamp timestamp = Timestamp.newBuilder().setSeconds(millis / 1000) .setNanos((int) ((millis % 1000) * 1000000)).build();\n\n\n\nExample 5: Compute Timestamp from current time in Python.\n\ntimestamp = Timestamp() timestamp.GetCurrentTime()\n\n# JSON Mapping\n\nIn JSON format, the Timestamp type is encoded as a string in the [RFC 3339](https://www.ietf.org/rfc/rfc3339.txt) format. That is, the format is \"{year}-{month}-{day}T{hour}:{min}:{sec}[.{frac_sec}]Z\" where {year} is always expressed using four digits while {month}, {day}, {hour}, {min}, and {sec} are zero-padded to two digits each. The fractional seconds, which can go up to 9 digits (i.e. up to 1 nanosecond resolution), are optional. The \"Z\" suffix indicates the timezone (\"UTC\"); the timezone is required. A proto3 JSON serializer should always use UTC (as indicated by \"Z\") when printing the Timestamp type and a proto3 JSON parser should be able to accept both UTC and other timezones (as indicated by an offset).\n\nFor example, \"2017-01-15T01:30:15.01Z\" encodes 15.01 seconds past 01:30 UTC on January 15, 2017.\n\nIn JavaScript, one can convert a Date object to this format using the standard [toISOString()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toISOString] method. In Python, a standard `datetime.datetime` object can be converted to this format using [`strftime`](https://docs.python.org/2/library/time.html#time.strftime) with the time format spec '%Y-%m-%dT%H:%M:%S.%fZ'. Likewise, in Java, one can use the Joda Time's [`ISODateTimeFormat.dateTime()`]( http://www.joda.org/joda-time/apidocs/org/joda/time/format/ISODateTimeFormat.html#dateTime-- ) to obtain a formatter capable of generating timestamps in this format.", + "id": "Timestamp", + "properties": { + "nanos": { + "description": "Non-negative fractions of a second at nanosecond resolution. Negative second values with fractions must still have non-negative nanos values that count forward in time. Must be from 0 to 999,999,999 inclusive.", + "format": "int32", + "type": "integer" + }, + "seconds": { + "description": "Represents seconds of UTC time since Unix epoch 1970-01-01T00:00:00Z. Must be from 0001-01-01T00:00:00Z to 9999-12-31T23:59:59Z inclusive.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "ToolExecution": { + "description": "An execution of an arbitrary tool. It could be a test runner or a tool copying artifacts or deploying code.", + "id": "ToolExecution", + "properties": { + "commandLineArguments": { + "description": "The full tokenized command line including the program name (equivalent to argv in a C program).\n\n- In response: present if set by create request - In create request: optional - In update request: never set", + "items": { + "type": "string" + }, + "type": "array" + }, + "exitCode": { + "$ref": "ToolExitCode", + "description": "Tool execution exit code. This field will be set once the tool has exited.\n\n- In response: present if set by create/update request - In create request: optional - In update request: optional, a FAILED_PRECONDITION error will be returned if an exit_code is already set." + }, + "toolLogs": { + "description": "References to any plain text logs output the tool execution.\n\nThis field can be set before the tool has exited in order to be able to have access to a live view of the logs while the tool is running.\n\nThe maximum allowed number of tool logs per step is 1000.\n\n- In response: present if set by create/update request - In create request: optional - In update request: optional, any value provided will be appended to the existing list", + "items": { + "$ref": "FileReference" + }, + "type": "array" + }, + "toolOutputs": { + "description": "References to opaque files of any format output by the tool execution.\n\nThe maximum allowed number of tool outputs per step is 1000.\n\n- In response: present if set by create/update request - In create request: optional - In update request: optional, any value provided will be appended to the existing list", + "items": { + "$ref": "ToolOutputReference" + }, + "type": "array" + } + }, + "type": "object" + }, + "ToolExecutionStep": { + "description": "Generic tool step to be used for binaries we do not explicitly support. For example: running cp to copy artifacts from one location to another.", + "id": "ToolExecutionStep", + "properties": { + "toolExecution": { + "$ref": "ToolExecution", + "description": "A Tool execution.\n\n- In response: present if set by create/update request - In create/update request: optional" + } + }, + "type": "object" + }, + "ToolExitCode": { + "description": "Exit code from a tool execution.", + "id": "ToolExitCode", + "properties": { + "number": { + "description": "Tool execution exit code. A value of 0 means that the execution was successful.\n\n- In response: always set - In create/update request: always set", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "ToolOutputReference": { + "description": "A reference to a ToolExecution output file.", + "id": "ToolOutputReference", + "properties": { + "creationTime": { + "$ref": "Timestamp", + "description": "The creation time of the file.\n\n- In response: present if set by create/update request - In create/update request: optional" + }, + "output": { + "$ref": "FileReference", + "description": "A FileReference to an output file.\n\n- In response: always set - In create/update request: always set" + }, + "testCase": { + "$ref": "TestCaseReference", + "description": "The test case to which this output file belongs.\n\n- In response: present if set by create/update request - In create/update request: optional" + } + }, + "type": "object" + } + }, + "servicePath": "toolresults/v1beta3/projects/", + "title": "Cloud Tool Results API", + "version": "v1beta3" +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/toolresults/v1beta3/toolresults-gen.go b/vendor/google.golang.org/api/toolresults/v1beta3/toolresults-gen.go index 36f18a482..a9a2bfb84 100644 --- a/vendor/google.golang.org/api/toolresults/v1beta3/toolresults-gen.go +++ b/vendor/google.golang.org/api/toolresults/v1beta3/toolresults-gen.go @@ -312,7 +312,7 @@ func (s *AndroidRoboTest) MarshalJSON() ([]byte, error) { // AndroidTest: An Android mobile test specification. type AndroidTest struct { - // AndroidAppInfo: Infomation about the application under test. + // AndroidAppInfo: Information about the application under test. AndroidAppInfo *AndroidAppInfo `json:"androidAppInfo,omitempty"` // AndroidInstrumentationTest: An Android instrumentation test. @@ -1064,7 +1064,7 @@ type History struct { HistoryId string `json:"historyId,omitempty"` // Name: A name to uniquely identify a history within a project. Maximum - // of 100 characters. + // of 200 characters. // // - In response always set - In create request: always set Name string `json:"name,omitempty"` @@ -1329,7 +1329,7 @@ func (s *ListPerfSamplesResponse) MarshalJSON() ([]byte, error) { } type ListScreenshotClustersResponse struct { - // Clusters: The set of clustres associated with an execution Always set + // Clusters: The set of clusters associated with an execution Always set Clusters []*ScreenshotCluster `json:"clusters,omitempty"` // ServerResponse contains the HTTP response code and headers from the @@ -2527,7 +2527,9 @@ type TestIssue struct { // Possible values: // "anr" // "compatibleWithOrchestrator" + // "completeRoboScriptExecution" // "fatalException" + // "incompleteRoboScriptExecution" // "launcherActivityNotFound" // "nativeCrash" // "startActivityNotFound" @@ -2775,8 +2777,10 @@ func (s *Thumbnail) MarshalJSON() ([]byte, error) { // {day}, {hour}, {min}, and {sec} are zero-padded to two digits each. // The fractional seconds, which can go up to 9 digits (i.e. up to 1 // nanosecond resolution), are optional. The "Z" suffix indicates the -// timezone ("UTC"); the timezone is required, though only UTC (as -// indicated by "Z") is currently supported. +// timezone ("UTC"); the timezone is required. A proto3 JSON serializer +// should always use UTC (as indicated by "Z") when printing the +// Timestamp type and a proto3 JSON parser should be able to accept both +// UTC and other timezones (as indicated by an offset). // // For example, "2017-01-15T01:30:15.01Z" encodes 15.01 seconds past // 01:30 UTC on January 15, 2017. diff --git a/vendor/google.golang.org/api/toolresults/v1beta3firstparty/toolresults-gen.go b/vendor/google.golang.org/api/toolresults/v1beta3firstparty/toolresults-gen.go index ae8d2e542..6f4e532c2 100644 --- a/vendor/google.golang.org/api/toolresults/v1beta3firstparty/toolresults-gen.go +++ b/vendor/google.golang.org/api/toolresults/v1beta3firstparty/toolresults-gen.go @@ -206,8 +206,8 @@ type AndroidAppInfo struct { } func (s *AndroidAppInfo) MarshalJSON() ([]byte, error) { - type noMethod AndroidAppInfo - raw := noMethod(*s) + type NoMethod AndroidAppInfo + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -257,8 +257,8 @@ type AndroidInstrumentationTest struct { } func (s *AndroidInstrumentationTest) MarshalJSON() ([]byte, error) { - type noMethod AndroidInstrumentationTest - raw := noMethod(*s) + type NoMethod AndroidInstrumentationTest + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -303,8 +303,8 @@ type AndroidRoboTest struct { } func (s *AndroidRoboTest) MarshalJSON() ([]byte, error) { - type noMethod AndroidRoboTest - raw := noMethod(*s) + type NoMethod AndroidRoboTest + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -342,8 +342,8 @@ type AndroidTest struct { } func (s *AndroidTest) MarshalJSON() ([]byte, error) { - type noMethod AndroidTest - raw := noMethod(*s) + type NoMethod AndroidTest + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -446,8 +446,8 @@ type Any struct { } func (s *Any) MarshalJSON() ([]byte, error) { - type noMethod Any - raw := noMethod(*s) + type NoMethod Any + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -482,8 +482,8 @@ type AppStartTime struct { } func (s *AppStartTime) MarshalJSON() ([]byte, error) { - type noMethod AppStartTime - raw := noMethod(*s) + type NoMethod AppStartTime + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -542,8 +542,8 @@ type BasicPerfSampleSeries struct { } func (s *BasicPerfSampleSeries) MarshalJSON() ([]byte, error) { - type noMethod BasicPerfSampleSeries - raw := noMethod(*s) + type NoMethod BasicPerfSampleSeries + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -573,8 +573,8 @@ type BatchCreatePerfSamplesRequest struct { } func (s *BatchCreatePerfSamplesRequest) MarshalJSON() ([]byte, error) { - type noMethod BatchCreatePerfSamplesRequest - raw := noMethod(*s) + type NoMethod BatchCreatePerfSamplesRequest + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -603,8 +603,8 @@ type BatchCreatePerfSamplesResponse struct { } func (s *BatchCreatePerfSamplesResponse) MarshalJSON() ([]byte, error) { - type noMethod BatchCreatePerfSamplesResponse - raw := noMethod(*s) + type NoMethod BatchCreatePerfSamplesResponse + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -637,18 +637,18 @@ type CPUInfo struct { } func (s *CPUInfo) MarshalJSON() ([]byte, error) { - type noMethod CPUInfo - raw := noMethod(*s) + type NoMethod CPUInfo + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } func (s *CPUInfo) UnmarshalJSON(data []byte) error { - type noMethod CPUInfo + type NoMethod CPUInfo var s1 struct { CpuSpeedInGhz gensupport.JSONFloat64 `json:"cpuSpeedInGhz"` - *noMethod + *NoMethod } - s1.noMethod = (*noMethod)(s) + s1.NoMethod = (*NoMethod)(s) if err := json.Unmarshal(data, &s1); err != nil { return err } @@ -739,8 +739,8 @@ type Duration struct { } func (s *Duration) MarshalJSON() ([]byte, error) { - type noMethod Duration - raw := noMethod(*s) + type NoMethod Duration + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -846,8 +846,8 @@ type Execution struct { } func (s *Execution) MarshalJSON() ([]byte, error) { - type noMethod Execution - raw := noMethod(*s) + type NoMethod Execution + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -890,8 +890,8 @@ type FailureDetail struct { } func (s *FailureDetail) MarshalJSON() ([]byte, error) { - type noMethod FailureDetail - raw := noMethod(*s) + type NoMethod FailureDetail + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -928,8 +928,8 @@ type FileReference struct { } func (s *FileReference) MarshalJSON() ([]byte, error) { - type noMethod FileReference - raw := noMethod(*s) + type NoMethod FileReference + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -985,8 +985,8 @@ type History struct { } func (s *History) MarshalJSON() ([]byte, error) { - type noMethod History - raw := noMethod(*s) + type NoMethod History + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -1029,8 +1029,8 @@ type Image struct { } func (s *Image) MarshalJSON() ([]byte, error) { - type noMethod Image - raw := noMethod(*s) + type NoMethod Image + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -1067,8 +1067,8 @@ type InconclusiveDetail struct { } func (s *InconclusiveDetail) MarshalJSON() ([]byte, error) { - type noMethod InconclusiveDetail - raw := noMethod(*s) + type NoMethod InconclusiveDetail + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -1106,8 +1106,8 @@ type ListExecutionsResponse struct { } func (s *ListExecutionsResponse) MarshalJSON() ([]byte, error) { - type noMethod ListExecutionsResponse - raw := noMethod(*s) + type NoMethod ListExecutionsResponse + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -1149,8 +1149,8 @@ type ListHistoriesResponse struct { } func (s *ListHistoriesResponse) MarshalJSON() ([]byte, error) { - type noMethod ListHistoriesResponse - raw := noMethod(*s) + type NoMethod ListHistoriesResponse + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -1181,8 +1181,8 @@ type ListPerfSampleSeriesResponse struct { } func (s *ListPerfSampleSeriesResponse) MarshalJSON() ([]byte, error) { - type noMethod ListPerfSampleSeriesResponse - raw := noMethod(*s) + type NoMethod ListPerfSampleSeriesResponse + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -1217,8 +1217,8 @@ type ListPerfSamplesResponse struct { } func (s *ListPerfSamplesResponse) MarshalJSON() ([]byte, error) { - type noMethod ListPerfSamplesResponse - raw := noMethod(*s) + type NoMethod ListPerfSamplesResponse + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -1248,8 +1248,8 @@ type ListScreenshotClustersResponse struct { } func (s *ListScreenshotClustersResponse) MarshalJSON() ([]byte, error) { - type noMethod ListScreenshotClustersResponse - raw := noMethod(*s) + type NoMethod ListScreenshotClustersResponse + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -1296,8 +1296,8 @@ type ListStepThumbnailsResponse struct { } func (s *ListStepThumbnailsResponse) MarshalJSON() ([]byte, error) { - type noMethod ListStepThumbnailsResponse - raw := noMethod(*s) + type NoMethod ListStepThumbnailsResponse + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -1335,8 +1335,8 @@ type ListStepsResponse struct { } func (s *ListStepsResponse) MarshalJSON() ([]byte, error) { - type noMethod ListStepsResponse - raw := noMethod(*s) + type NoMethod ListStepsResponse + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -1367,8 +1367,8 @@ type MemoryInfo struct { } func (s *MemoryInfo) MarshalJSON() ([]byte, error) { - type noMethod MemoryInfo - raw := noMethod(*s) + type NoMethod MemoryInfo + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -1438,8 +1438,8 @@ type Outcome struct { } func (s *Outcome) MarshalJSON() ([]byte, error) { - type noMethod Outcome - raw := noMethod(*s) + type NoMethod Outcome + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -1469,8 +1469,8 @@ type PerfEnvironment struct { } func (s *PerfEnvironment) MarshalJSON() ([]byte, error) { - type noMethod PerfEnvironment - raw := noMethod(*s) + type NoMethod PerfEnvironment + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -1527,8 +1527,8 @@ type PerfMetricsSummary struct { } func (s *PerfMetricsSummary) MarshalJSON() ([]byte, error) { - type noMethod PerfMetricsSummary - raw := noMethod(*s) + type NoMethod PerfMetricsSummary + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -1559,18 +1559,18 @@ type PerfSample struct { } func (s *PerfSample) MarshalJSON() ([]byte, error) { - type noMethod PerfSample - raw := noMethod(*s) + type NoMethod PerfSample + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } func (s *PerfSample) UnmarshalJSON(data []byte) error { - type noMethod PerfSample + type NoMethod PerfSample var s1 struct { Value gensupport.JSONFloat64 `json:"value"` - *noMethod + *NoMethod } - s1.noMethod = (*noMethod)(s) + s1.NoMethod = (*NoMethod)(s) if err := json.Unmarshal(data, &s1); err != nil { return err } @@ -1623,8 +1623,8 @@ type PerfSampleSeries struct { } func (s *PerfSampleSeries) MarshalJSON() ([]byte, error) { - type noMethod PerfSampleSeries - raw := noMethod(*s) + type NoMethod PerfSampleSeries + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -1667,8 +1667,8 @@ type ProjectSettings struct { } func (s *ProjectSettings) MarshalJSON() ([]byte, error) { - type noMethod ProjectSettings - raw := noMethod(*s) + type NoMethod ProjectSettings + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -1701,8 +1701,8 @@ type PublishXunitXmlFilesRequest struct { } func (s *PublishXunitXmlFilesRequest) MarshalJSON() ([]byte, error) { - type noMethod PublishXunitXmlFilesRequest - raw := noMethod(*s) + type NoMethod PublishXunitXmlFilesRequest + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -1740,8 +1740,8 @@ type Screen struct { } func (s *Screen) MarshalJSON() ([]byte, error) { - type noMethod Screen - raw := noMethod(*s) + type NoMethod Screen + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -1785,8 +1785,8 @@ type ScreenshotCluster struct { } func (s *ScreenshotCluster) MarshalJSON() ([]byte, error) { - type noMethod ScreenshotCluster - raw := noMethod(*s) + type NoMethod ScreenshotCluster + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -1823,8 +1823,8 @@ type SkippedDetail struct { } func (s *SkippedDetail) MarshalJSON() ([]byte, error) { - type noMethod SkippedDetail - raw := noMethod(*s) + type NoMethod SkippedDetail + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -1851,8 +1851,8 @@ type Specification struct { } func (s *Specification) MarshalJSON() ([]byte, error) { - type noMethod Specification - raw := noMethod(*s) + type NoMethod Specification + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -1887,8 +1887,8 @@ type StackTrace struct { } func (s *StackTrace) MarshalJSON() ([]byte, error) { - type noMethod StackTrace - raw := noMethod(*s) + type NoMethod StackTrace + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -1981,8 +1981,8 @@ type Status struct { } func (s *Status) MarshalJSON() ([]byte, error) { - type noMethod Status - raw := noMethod(*s) + type NoMethod Status + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -2194,8 +2194,8 @@ type Step struct { } func (s *Step) MarshalJSON() ([]byte, error) { - type noMethod Step - raw := noMethod(*s) + type NoMethod Step + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -2222,8 +2222,8 @@ type StepDimensionValueEntry struct { } func (s *StepDimensionValueEntry) MarshalJSON() ([]byte, error) { - type noMethod StepDimensionValueEntry - raw := noMethod(*s) + type NoMethod StepDimensionValueEntry + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -2250,8 +2250,8 @@ type StepLabelsEntry struct { } func (s *StepLabelsEntry) MarshalJSON() ([]byte, error) { - type noMethod StepLabelsEntry - raw := noMethod(*s) + type NoMethod StepLabelsEntry + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -2278,8 +2278,8 @@ type SuccessDetail struct { } func (s *SuccessDetail) MarshalJSON() ([]byte, error) { - type noMethod SuccessDetail - raw := noMethod(*s) + type NoMethod SuccessDetail + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -2319,8 +2319,8 @@ type TestCaseReference struct { } func (s *TestCaseReference) MarshalJSON() ([]byte, error) { - type noMethod TestCaseReference - raw := noMethod(*s) + type NoMethod TestCaseReference + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -2387,8 +2387,8 @@ type TestExecutionStep struct { } func (s *TestExecutionStep) MarshalJSON() ([]byte, error) { - type noMethod TestExecutionStep - raw := noMethod(*s) + type NoMethod TestExecutionStep + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -2443,8 +2443,8 @@ type TestIssue struct { } func (s *TestIssue) MarshalJSON() ([]byte, error) { - type noMethod TestIssue - raw := noMethod(*s) + type NoMethod TestIssue + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -2512,8 +2512,8 @@ type TestSuiteOverview struct { } func (s *TestSuiteOverview) MarshalJSON() ([]byte, error) { - type noMethod TestSuiteOverview - raw := noMethod(*s) + type NoMethod TestSuiteOverview + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -2544,8 +2544,8 @@ type TestTiming struct { } func (s *TestTiming) MarshalJSON() ([]byte, error) { - type noMethod TestTiming - raw := noMethod(*s) + type NoMethod TestTiming + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -2593,8 +2593,8 @@ type Thumbnail struct { } func (s *Thumbnail) MarshalJSON() ([]byte, error) { - type noMethod Thumbnail - raw := noMethod(*s) + type NoMethod Thumbnail + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -2708,8 +2708,8 @@ type Timestamp struct { } func (s *Timestamp) MarshalJSON() ([]byte, error) { - type noMethod Timestamp - raw := noMethod(*s) + type NoMethod Timestamp + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -2776,8 +2776,8 @@ type ToolExecution struct { } func (s *ToolExecution) MarshalJSON() ([]byte, error) { - type noMethod ToolExecution - raw := noMethod(*s) + type NoMethod ToolExecution + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -2809,8 +2809,8 @@ type ToolExecutionStep struct { } func (s *ToolExecutionStep) MarshalJSON() ([]byte, error) { - type noMethod ToolExecutionStep - raw := noMethod(*s) + type NoMethod ToolExecutionStep + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -2840,8 +2840,8 @@ type ToolExitCode struct { } func (s *ToolExitCode) MarshalJSON() ([]byte, error) { - type noMethod ToolExitCode - raw := noMethod(*s) + type NoMethod ToolExitCode + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -2882,8 +2882,8 @@ type ToolOutputReference struct { } func (s *ToolOutputReference) MarshalJSON() ([]byte, error) { - type noMethod ToolOutputReference - raw := noMethod(*s) + type NoMethod ToolOutputReference + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -2999,7 +2999,7 @@ func (c *ProjectsGetSettingsCall) Do(opts ...googleapi.CallOption) (*ProjectSett }, } target := &ret - if err := json.NewDecoder(res.Body).Decode(target); err != nil { + if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil @@ -3146,7 +3146,7 @@ func (c *ProjectsInitializeSettingsCall) Do(opts ...googleapi.CallOption) (*Proj }, } target := &ret - if err := json.NewDecoder(res.Body).Decode(target); err != nil { + if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil @@ -3291,7 +3291,7 @@ func (c *ProjectsHistoriesCreateCall) Do(opts ...googleapi.CallOption) (*History }, } target := &ret - if err := json.NewDecoder(res.Body).Decode(target); err != nil { + if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil @@ -3442,7 +3442,7 @@ func (c *ProjectsHistoriesGetCall) Do(opts ...googleapi.CallOption) (*History, e }, } target := &ret - if err := json.NewDecoder(res.Body).Decode(target); err != nil { + if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil @@ -3618,7 +3618,7 @@ func (c *ProjectsHistoriesListCall) Do(opts ...googleapi.CallOption) (*ListHisto }, } target := &ret - if err := json.NewDecoder(res.Body).Decode(target); err != nil { + if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil @@ -3803,7 +3803,7 @@ func (c *ProjectsHistoriesExecutionsCreateCall) Do(opts ...googleapi.CallOption) }, } target := &ret - if err := json.NewDecoder(res.Body).Decode(target); err != nil { + if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil @@ -3964,7 +3964,7 @@ func (c *ProjectsHistoriesExecutionsGetCall) Do(opts ...googleapi.CallOption) (* }, } target := &ret - if err := json.NewDecoder(res.Body).Decode(target); err != nil { + if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil @@ -4142,7 +4142,7 @@ func (c *ProjectsHistoriesExecutionsListCall) Do(opts ...googleapi.CallOption) ( }, } target := &ret - if err := json.NewDecoder(res.Body).Decode(target); err != nil { + if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil @@ -4332,7 +4332,7 @@ func (c *ProjectsHistoriesExecutionsPatchCall) Do(opts ...googleapi.CallOption) }, } target := &ret - if err := json.NewDecoder(res.Body).Decode(target); err != nil { + if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil @@ -4497,7 +4497,7 @@ func (c *ProjectsHistoriesExecutionsClustersGetCall) Do(opts ...googleapi.CallOp }, } target := &ret - if err := json.NewDecoder(res.Body).Decode(target); err != nil { + if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil @@ -4666,7 +4666,7 @@ func (c *ProjectsHistoriesExecutionsClustersListCall) Do(opts ...googleapi.CallO }, } target := &ret - if err := json.NewDecoder(res.Body).Decode(target); err != nil { + if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil @@ -4832,7 +4832,7 @@ func (c *ProjectsHistoriesExecutionsStepsCreateCall) Do(opts ...googleapi.CallOp }, } target := &ret - if err := json.NewDecoder(res.Body).Decode(target); err != nil { + if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil @@ -5003,7 +5003,7 @@ func (c *ProjectsHistoriesExecutionsStepsGetCall) Do(opts ...googleapi.CallOptio }, } target := &ret - if err := json.NewDecoder(res.Body).Decode(target); err != nil { + if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil @@ -5170,7 +5170,7 @@ func (c *ProjectsHistoriesExecutionsStepsGetPerfMetricsSummaryCall) Do(opts ...g }, } target := &ret - if err := json.NewDecoder(res.Body).Decode(target); err != nil { + if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil @@ -5360,7 +5360,7 @@ func (c *ProjectsHistoriesExecutionsStepsListCall) Do(opts ...googleapi.CallOpti }, } target := &ret - if err := json.NewDecoder(res.Body).Decode(target); err != nil { + if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil @@ -5562,7 +5562,7 @@ func (c *ProjectsHistoriesExecutionsStepsPatchCall) Do(opts ...googleapi.CallOpt }, } target := &ret - if err := json.NewDecoder(res.Body).Decode(target); err != nil { + if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil @@ -5735,7 +5735,7 @@ func (c *ProjectsHistoriesExecutionsStepsPublishXunitXmlFilesCall) Do(opts ...go }, } target := &ret - if err := json.NewDecoder(res.Body).Decode(target); err != nil { + if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil @@ -5899,7 +5899,7 @@ func (c *ProjectsHistoriesExecutionsStepsPerfMetricsSummaryCreateCall) Do(opts . }, } target := &ret - if err := json.NewDecoder(res.Body).Decode(target); err != nil { + if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil @@ -6063,7 +6063,7 @@ func (c *ProjectsHistoriesExecutionsStepsPerfSampleSeriesCreateCall) Do(opts ... }, } target := &ret - if err := json.NewDecoder(res.Body).Decode(target); err != nil { + if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil @@ -6236,7 +6236,7 @@ func (c *ProjectsHistoriesExecutionsStepsPerfSampleSeriesGetCall) Do(opts ...goo }, } target := &ret - if err := json.NewDecoder(res.Body).Decode(target); err != nil { + if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil @@ -6428,7 +6428,7 @@ func (c *ProjectsHistoriesExecutionsStepsPerfSampleSeriesListCall) Do(opts ...go }, } target := &ret - if err := json.NewDecoder(res.Body).Decode(target); err != nil { + if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil @@ -6617,7 +6617,7 @@ func (c *ProjectsHistoriesExecutionsStepsPerfSampleSeriesSamplesBatchCreateCall) }, } target := &ret - if err := json.NewDecoder(res.Body).Decode(target); err != nil { + if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil @@ -6819,7 +6819,7 @@ func (c *ProjectsHistoriesExecutionsStepsPerfSampleSeriesSamplesListCall) Do(opt }, } target := &ret - if err := json.NewDecoder(res.Body).Decode(target); err != nil { + if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil @@ -7045,7 +7045,7 @@ func (c *ProjectsHistoriesExecutionsStepsThumbnailsListCall) Do(opts ...googleap }, } target := &ret - if err := json.NewDecoder(res.Body).Decode(target); err != nil { + if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil diff --git a/vendor/google.golang.org/api/tpu/v1alpha1/tpu-api.json b/vendor/google.golang.org/api/tpu/v1alpha1/tpu-api.json index d3352f85b..65b9b8795 100644 --- a/vendor/google.golang.org/api/tpu/v1alpha1/tpu-api.json +++ b/vendor/google.golang.org/api/tpu/v1alpha1/tpu-api.json @@ -1,379 +1,694 @@ { - "ownerDomain": "google.com", - "name": "tpu", + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/cloud-platform": { + "description": "View and manage your data across Google Cloud Platform services" + } + } + } + }, + "basePath": "", + "baseUrl": "https://content-tpu.googleapis.com/", "batchPath": "batch", + "canonicalName": "TPU", + "description": "TPU API provides customers with access to Google TPU technology.", + "discoveryVersion": "v1", + "documentationLink": "https://cloud.google.com/tpu/", "fullyEncodeReservedExpansion": true, - "title": "Cloud TPU API", + "icons": { + "x16": "http://www.google.com/images/icons/product/search-16.gif", + "x32": "http://www.google.com/images/icons/product/search-32.gif" + }, + "id": "tpu:v1alpha1", + "kind": "discovery#restDescription", + "name": "tpu", + "ownerDomain": "google.com", "ownerName": "Google", + "parameters": { + "$.xgafv": { + "description": "V1 error format.", + "enum": [ + "1", + "2" + ], + "enumDescriptions": [ + "v1 error format", + "v2 error format" + ], + "location": "query", + "type": "string" + }, + "access_token": { + "description": "OAuth access token.", + "location": "query", + "type": "string" + }, + "alt": { + "default": "json", + "description": "Data format for response.", + "enum": [ + "json", + "media", + "proto" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json", + "Media download with context-dependent Content-Type", + "Responses with Content-Type of application/x-protobuf" + ], + "location": "query", + "type": "string" + }, + "bearer_token": { + "description": "OAuth bearer token.", + "location": "query", + "type": "string" + }, + "callback": { + "description": "JSONP", + "location": "query", + "type": "string" + }, + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "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.", + "location": "query", + "type": "string" + }, + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "pp": { + "default": "true", + "description": "Pretty-print response.", + "location": "query", + "type": "boolean" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", + "location": "query", + "type": "string" + }, + "uploadType": { + "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", + "location": "query", + "type": "string" + }, + "upload_protocol": { + "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", + "location": "query", + "type": "string" + } + }, + "protocol": "rest", "resources": { "projects": { "resources": { "locations": { "methods": { - "list": { - "response": { - "$ref": "ListLocationsResponse" - }, + "get": { + "description": "Get information about a location.", + "flatPath": "v1alpha1/projects/{projectsId}/locations/{locationsId}", + "httpMethod": "GET", + "id": "tpu.projects.locations.get", "parameterOrder": [ "name" ], - "httpMethod": "GET", "parameters": { - "filter": { - "location": "query", - "description": "The standard list filter.", - "type": "string" - }, "name": { + "description": "Resource name for the location.", "location": "path", - "description": "The resource that owns the locations collection, if applicable.", + "pattern": "^projects/[^/]+/locations/[^/]+$", "required": true, - "type": "string", - "pattern": "^projects/[^/]+$" - }, - "pageToken": { - "type": "string", - "location": "query", - "description": "The standard list page token." - }, - "pageSize": { - "type": "integer", - "location": "query", - "description": "The standard list page size.", - "format": "int32" + "type": "string" } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1alpha1/projects/{projectsId}/locations", - "path": "v1alpha1/{+name}/locations", - "id": "tpu.projects.locations.list", - "description": "Lists information about the supported locations for this service." - }, - "get": { - "httpMethod": "GET", + "path": "v1alpha1/{+name}", "response": { "$ref": "Location" }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists information about the supported locations for this service.", + "flatPath": "v1alpha1/projects/{projectsId}/locations", + "httpMethod": "GET", + "id": "tpu.projects.locations.list", "parameterOrder": [ "name" ], "parameters": { + "filter": { + "description": "The standard list filter.", + "location": "query", + "type": "string" + }, "name": { - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+$", + "description": "The resource that owns the locations collection, if applicable.", "location": "path", - "description": "Resource name for the location." + "pattern": "^projects/[^/]+$", + "required": true, + "type": "string" + }, + "pageSize": { + "description": "The standard list page size.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "The standard list page token.", + "location": "query", + "type": "string" } }, + "path": "v1alpha1/{+name}/locations", + "response": { + "$ref": "ListLocationsResponse" + }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1alpha1/projects/{projectsId}/locations/{locationsId}", - "id": "tpu.projects.locations.get", - "path": "v1alpha1/{+name}", - "description": "Get information about a location." + ] } }, "resources": { - "operations": { + "acceleratorTypes": { "methods": { - "list": { - "response": { - "$ref": "ListOperationsResponse" - }, + "get": { + "description": "Gets AcceleratorType.", + "flatPath": "v1alpha1/projects/{projectsId}/locations/{locationsId}/acceleratorTypes/{acceleratorTypesId}", + "httpMethod": "GET", + "id": "tpu.projects.locations.acceleratorTypes.get", "parameterOrder": [ "name" ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], "parameters": { "name": { - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+$", + "description": "The resource name.", "location": "path", - "description": "The name of the operation's parent resource." - }, - "pageToken": { + "pattern": "^projects/[^/]+/locations/[^/]+/acceleratorTypes/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1alpha1/{+name}", + "response": { + "$ref": "AcceleratorType" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists accelerator types supported by this API.", + "flatPath": "v1alpha1/projects/{projectsId}/locations/{locationsId}/acceleratorTypes", + "httpMethod": "GET", + "id": "tpu.projects.locations.acceleratorTypes.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "filter": { + "description": "List filter.", + "location": "query", + "type": "string" + }, + "orderBy": { + "description": "Sort results.", "location": "query", - "description": "The standard list page token.", "type": "string" }, "pageSize": { - "location": "query", - "description": "The standard list page size.", + "description": "The maximum number of items to return.", "format": "int32", + "location": "query", "type": "integer" }, - "filter": { - "type": "string", + "pageToken": { + "description": "The next_page_token value returned from a previous List request, if any.", "location": "query", - "description": "The standard list filter." - } - }, - "flatPath": "v1alpha1/projects/{projectsId}/locations/{locationsId}/operations", - "path": "v1alpha1/{+name}/operations", - "id": "tpu.projects.locations.operations.list", - "description": "Lists operations that match the specified filter in the request. If the\nserver doesn't support this method, it returns `UNIMPLEMENTED`.\n\nNOTE: the `name` binding allows API services to override the binding\nto use different resource name schemes, such as `users/*/operations`. To\noverride the binding, API services can add a binding such as\n`\"/v1/{name=users/*}/operations\"` to their service configuration.\nFor backwards compatibility, the default name includes the operations\ncollection id, however overriding users must ensure the name binding\nis the parent resource, without the operations collection id." - }, - "get": { - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "GET", - "parameters": { - "name": { - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+/operations/[^/]+$", + "type": "string" + }, + "parent": { + "description": "The parent resource name.", "location": "path", - "description": "The name of the operation resource." + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" } }, + "path": "v1alpha1/{+parent}/acceleratorTypes", + "response": { + "$ref": "ListAcceleratorTypesResponse" + }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1alpha1/projects/{projectsId}/locations/{locationsId}/operations/{operationsId}", - "path": "v1alpha1/{+name}", - "id": "tpu.projects.locations.operations.get", - "description": "Gets the latest state of a long-running operation. Clients can use this\nmethod to poll the operation result at intervals as recommended by the API\nservice." - }, - "cancel": { - "description": "Starts asynchronous cancellation on a long-running operation. The server\nmakes a best effort to cancel the operation, but success is not\nguaranteed. If the server doesn't support this method, it returns\n`google.rpc.Code.UNIMPLEMENTED`. Clients can use\nOperations.GetOperation or\nother methods to check whether the cancellation succeeded or whether the\noperation completed despite cancellation. On successful cancellation,\nthe operation is not deleted; instead, it becomes an operation with\nan Operation.error value with a google.rpc.Status.code of 1,\ncorresponding to `Code.CANCELLED`.", - "httpMethod": "POST", - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "name" - ], - "parameters": { - "name": { - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+/operations/[^/]+$", - "location": "path", - "description": "The name of the operation resource to be cancelled." - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1alpha1/projects/{projectsId}/locations/{locationsId}/operations/{operationsId}:cancel", - "id": "tpu.projects.locations.operations.cancel", - "path": "v1alpha1/{+name}:cancel" - }, - "delete": { - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "DELETE", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "name": { - "location": "path", - "description": "The name of the operation resource to be deleted.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+/operations/[^/]+$" - } - }, - "flatPath": "v1alpha1/projects/{projectsId}/locations/{locationsId}/operations/{operationsId}", - "path": "v1alpha1/{+name}", - "id": "tpu.projects.locations.operations.delete", - "description": "Deletes a long-running operation. This method indicates that the client is\nno longer interested in the operation result. It does not cancel the\noperation. If the server doesn't support this method, it returns\n`google.rpc.Code.UNIMPLEMENTED`." + ] } } }, "nodes": { "methods": { - "delete": { + "create": { + "description": "Creates a node.", + "flatPath": "v1alpha1/projects/{projectsId}/locations/{locationsId}/nodes", + "httpMethod": "POST", + "id": "tpu.projects.locations.nodes.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "nodeId": { + "description": "The unqualified resource name.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "The parent resource name.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1alpha1/{+parent}/nodes", + "request": { + "$ref": "Node" + }, "response": { "$ref": "Operation" }, - "parameterOrder": [ - "name" - ], - "httpMethod": "DELETE", "scopes": [ "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "name": { - "location": "path", - "description": "The resource name.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+/nodes/[^/]+$" - } - }, - "flatPath": "v1alpha1/projects/{projectsId}/locations/{locationsId}/nodes/{nodesId}", - "path": "v1alpha1/{+name}", - "id": "tpu.projects.locations.nodes.delete", - "description": "Deletes a node." + ] }, - "reset": { - "flatPath": "v1alpha1/projects/{projectsId}/locations/{locationsId}/nodes/{nodesId}:reset", - "path": "v1alpha1/{+name}:reset", - "id": "tpu.projects.locations.nodes.reset", - "request": { - "$ref": "ResetNodeRequest" - }, - "description": "Resets a node, which stops and starts the VM.", - "response": { - "$ref": "Operation" - }, + "delete": { + "description": "Deletes a node.", + "flatPath": "v1alpha1/projects/{projectsId}/locations/{locationsId}/nodes/{nodesId}", + "httpMethod": "DELETE", + "id": "tpu.projects.locations.nodes.delete", "parameterOrder": [ "name" ], - "httpMethod": "POST", "parameters": { "name": { - "location": "path", "description": "The resource name.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/nodes/[^/]+$", "required": true, - "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+/nodes/[^/]+$" + "type": "string" } }, + "path": "v1alpha1/{+name}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Gets the details of a node.", + "flatPath": "v1alpha1/projects/{projectsId}/locations/{locationsId}/nodes/{nodesId}", + "httpMethod": "GET", + "id": "tpu.projects.locations.nodes.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The resource name.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/nodes/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1alpha1/{+name}", + "response": { + "$ref": "Node" + }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ] }, "list": { "description": "Lists nodes.", + "flatPath": "v1alpha1/projects/{projectsId}/locations/{locationsId}/nodes", + "httpMethod": "GET", + "id": "tpu.projects.locations.nodes.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "pageSize": { + "description": "The maximum number of items to return.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "The next_page_token value returned from a previous List request, if any.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "The parent resource name.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1alpha1/{+parent}/nodes", "response": { "$ref": "ListNodesResponse" }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "GET", "scopes": [ "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "pageToken": { - "location": "query", - "description": "The next_page_token value returned from a previous List request, if any.", - "type": "string" - }, - "pageSize": { - "location": "query", - "description": "The maximum number of items to return.", - "format": "int32", - "type": "integer" - }, - "parent": { - "location": "path", - "description": "The parent resource name.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+$" - } - }, - "flatPath": "v1alpha1/projects/{projectsId}/locations/{locationsId}/nodes", - "path": "v1alpha1/{+parent}/nodes", - "id": "tpu.projects.locations.nodes.list" - }, - "create": { - "httpMethod": "POST", - "parameterOrder": [ - "parent" - ], - "response": { - "$ref": "Operation" - }, - "parameters": { - "parent": { - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+$", - "location": "path", - "description": "The parent resource name." - }, - "nodeId": { - "type": "string", - "location": "query", - "description": "The unqualified resource name." - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1alpha1/projects/{projectsId}/locations/{locationsId}/nodes", - "id": "tpu.projects.locations.nodes.create", - "path": "v1alpha1/{+parent}/nodes", - "request": { - "$ref": "Node" - }, - "description": "Creates a node." + ] }, "reimage": { + "description": "Reimages a node's OS.", "flatPath": "v1alpha1/projects/{projectsId}/locations/{locationsId}/nodes/{nodesId}:reimage", - "path": "v1alpha1/{+name}:reimage", + "httpMethod": "POST", "id": "tpu.projects.locations.nodes.reimage", - "description": "Reimage a node's OS.", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The resource name.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/nodes/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1alpha1/{+name}:reimage", "request": { "$ref": "ReimageNodeRequest" }, "response": { "$ref": "Operation" }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "reset": { + "description": "Resets a node, which stops and starts the VM.", + "flatPath": "v1alpha1/projects/{projectsId}/locations/{locationsId}/nodes/{nodesId}:reset", + "httpMethod": "POST", + "id": "tpu.projects.locations.nodes.reset", "parameterOrder": [ "name" ], - "httpMethod": "POST", + "parameters": { + "name": { + "description": "The resource name.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/nodes/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1alpha1/{+name}:reset", + "request": { + "$ref": "ResetNodeRequest" + }, + "response": { + "$ref": "Operation" + }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "start": { + "description": "Starts a node.", + "flatPath": "v1alpha1/projects/{projectsId}/locations/{locationsId}/nodes/{nodesId}:start", + "httpMethod": "POST", + "id": "tpu.projects.locations.nodes.start", + "parameterOrder": [ + "name" ], "parameters": { "name": { - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+/nodes/[^/]+$", + "description": "The resource name.", "location": "path", - "description": "The resource name." + "pattern": "^projects/[^/]+/locations/[^/]+/nodes/[^/]+$", + "required": true, + "type": "string" } - } + }, + "path": "v1alpha1/{+name}:start", + "request": { + "$ref": "StartNodeRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "stop": { + "description": "Stops a node.", + "flatPath": "v1alpha1/projects/{projectsId}/locations/{locationsId}/nodes/{nodesId}:stop", + "httpMethod": "POST", + "id": "tpu.projects.locations.nodes.stop", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The resource name.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/nodes/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1alpha1/{+name}:stop", + "request": { + "$ref": "StopNodeRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + }, + "operations": { + "methods": { + "cancel": { + "description": "Starts asynchronous cancellation on a long-running operation. The server\nmakes a best effort to cancel the operation, but success is not\nguaranteed. If the server doesn't support this method, it returns\n`google.rpc.Code.UNIMPLEMENTED`. Clients can use\nOperations.GetOperation or\nother methods to check whether the cancellation succeeded or whether the\noperation completed despite cancellation. On successful cancellation,\nthe operation is not deleted; instead, it becomes an operation with\nan Operation.error value with a google.rpc.Status.code of 1,\ncorresponding to `Code.CANCELLED`.", + "flatPath": "v1alpha1/projects/{projectsId}/locations/{locationsId}/operations/{operationsId}:cancel", + "httpMethod": "POST", + "id": "tpu.projects.locations.operations.cancel", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource to be cancelled.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1alpha1/{+name}:cancel", + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Deletes a long-running operation. This method indicates that the client is\nno longer interested in the operation result. It does not cancel the\noperation. If the server doesn't support this method, it returns\n`google.rpc.Code.UNIMPLEMENTED`.", + "flatPath": "v1alpha1/projects/{projectsId}/locations/{locationsId}/operations/{operationsId}", + "httpMethod": "DELETE", + "id": "tpu.projects.locations.operations.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource to be deleted.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1alpha1/{+name}", + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] }, "get": { + "description": "Gets the latest state of a long-running operation. Clients can use this\nmethod to poll the operation result at intervals as recommended by the API\nservice.", + "flatPath": "v1alpha1/projects/{projectsId}/locations/{locationsId}/operations/{operationsId}", "httpMethod": "GET", - "response": { - "$ref": "Node" - }, + "id": "tpu.projects.locations.operations.get", "parameterOrder": [ "name" ], "parameters": { "name": { - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+/nodes/[^/]+$", + "description": "The name of the operation resource.", "location": "path", - "description": "The resource name." + "pattern": "^projects/[^/]+/locations/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" } }, + "path": "v1alpha1/{+name}", + "response": { + "$ref": "Operation" + }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists operations that match the specified filter in the request. If the\nserver doesn't support this method, it returns `UNIMPLEMENTED`.\n\nNOTE: the `name` binding allows API services to override the binding\nto use different resource name schemes, such as `users/*/operations`. To\noverride the binding, API services can add a binding such as\n`\"/v1/{name=users/*}/operations\"` to their service configuration.\nFor backwards compatibility, the default name includes the operations\ncollection id, however overriding users must ensure the name binding\nis the parent resource, without the operations collection id.", + "flatPath": "v1alpha1/projects/{projectsId}/locations/{locationsId}/operations", + "httpMethod": "GET", + "id": "tpu.projects.locations.operations.list", + "parameterOrder": [ + "name" ], - "flatPath": "v1alpha1/projects/{projectsId}/locations/{locationsId}/nodes/{nodesId}", - "id": "tpu.projects.locations.nodes.get", + "parameters": { + "filter": { + "description": "The standard list filter.", + "location": "query", + "type": "string" + }, + "name": { + "description": "The name of the operation's parent resource.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + }, + "pageSize": { + "description": "The standard list page size.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "The standard list page token.", + "location": "query", + "type": "string" + } + }, + "path": "v1alpha1/{+name}/operations", + "response": { + "$ref": "ListOperationsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + }, + "tensorflowVersions": { + "methods": { + "get": { + "description": "Gets TensorFlow Version.", + "flatPath": "v1alpha1/projects/{projectsId}/locations/{locationsId}/tensorflowVersions/{tensorflowVersionsId}", + "httpMethod": "GET", + "id": "tpu.projects.locations.tensorflowVersions.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The resource name.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/tensorflowVersions/[^/]+$", + "required": true, + "type": "string" + } + }, "path": "v1alpha1/{+name}", - "description": "Gets the details of a node." + "response": { + "$ref": "TensorFlowVersion" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists TensorFlow versions supported by this API.", + "flatPath": "v1alpha1/projects/{projectsId}/locations/{locationsId}/tensorflowVersions", + "httpMethod": "GET", + "id": "tpu.projects.locations.tensorflowVersions.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "filter": { + "description": "List filter.", + "location": "query", + "type": "string" + }, + "orderBy": { + "description": "Sort results.", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "The maximum number of items to return.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "The next_page_token value returned from a previous List request, if any.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "The parent resource name.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1alpha1/{+parent}/tensorflowVersions", + "response": { + "$ref": "ListTensorFlowVersionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] } } } @@ -382,230 +697,157 @@ } } }, - "parameters": { - "upload_protocol": { - "type": "string", - "location": "query", - "description": "Upload protocol for media (e.g. \"raw\", \"multipart\")." - }, - "prettyPrint": { - "location": "query", - "description": "Returns response with indentations and line breaks.", - "type": "boolean", - "default": "true" - }, - "uploadType": { - "type": "string", - "location": "query", - "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\")." - }, - "fields": { - "type": "string", - "location": "query", - "description": "Selector specifying which fields to include in a partial response." - }, - "callback": { - "location": "query", - "description": "JSONP", - "type": "string" - }, - "$.xgafv": { - "type": "string", - "enumDescriptions": [ - "v1 error format", - "v2 error format" - ], - "location": "query", - "enum": [ - "1", - "2" - ], - "description": "V1 error format." - }, - "alt": { - "enum": [ - "json", - "media", - "proto" - ], - "type": "string", - "enumDescriptions": [ - "Responses with Content-Type of application/json", - "Media download with context-dependent Content-Type", - "Responses with Content-Type of application/x-protobuf" - ], - "location": "query", - "description": "Data format for response.", - "default": "json" - }, - "key": { - "type": "string", - "location": "query", - "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": { - "type": "string", - "location": "query", - "description": "OAuth access token." - }, - "quotaUser": { - "location": "query", - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", - "type": "string" - }, - "pp": { - "location": "query", - "description": "Pretty-print response.", - "type": "boolean", - "default": "true" - }, - "bearer_token": { - "type": "string", - "location": "query", - "description": "OAuth bearer token." - }, - "oauth_token": { - "type": "string", - "location": "query", - "description": "OAuth 2.0 token for the current user." - } - }, - "version": "v1alpha1", - "baseUrl": "https://tpu.googleapis.com/", - "kind": "discovery#restDescription", - "description": "TPU API provides customers with access to Google TPU technology.", - "servicePath": "", - "basePath": "", - "revision": "20171218", - "documentationLink": "https://cloud.google.com/tpu/", - "id": "tpu:v1alpha1", - "discoveryVersion": "v1", - "version_module": true, + "revision": "20180303", + "rootUrl": "https://content-tpu.googleapis.com/", "schemas": { + "AcceleratorType": { + "description": "A accelerator type that a Node can be configured with.", + "id": "AcceleratorType", + "properties": { + "name": { + "description": "The resource name.", + "type": "string" + }, + "type": { + "description": "the accelerator type.", + "type": "string" + } + }, + "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" + }, + "ListAcceleratorTypesResponse": { + "description": "Response for ListAcceleratorTypes.", + "id": "ListAcceleratorTypesResponse", + "properties": { + "acceleratorTypes": { + "description": "The listed nodes.", + "items": { + "$ref": "AcceleratorType" + }, + "type": "array" + }, + "nextPageToken": { + "description": "The next page token or empty if none.", + "type": "string" + } + }, + "type": "object" + }, "ListLocationsResponse": { "description": "The response message for Locations.ListLocations.", - "type": "object", + "id": "ListLocationsResponse", "properties": { "locations": { "description": "A list of locations that matches the specified filter in the request.", - "type": "array", "items": { "$ref": "Location" - } + }, + "type": "array" }, "nextPageToken": { "description": "The standard List next-page token.", "type": "string" } }, - "id": "ListLocationsResponse" + "type": "object" }, - "ResetNodeRequest": { - "description": "Request for ResetNode.", - "type": "object", - "properties": {}, - "id": "ResetNodeRequest" - }, - "Node": { - "type": "object", + "ListNodesResponse": { + "description": "Response for ListNodes.", + "id": "ListNodesResponse", "properties": { - "healthDescription": { - "type": "string", - "description": "Output only.\nIf this field is populated, it contains a description of why the TPU Node\nis unhealthy." - }, - "network": { - "type": "string", - "description": "The name of a network they wish to peer the TPU node to. It must be a\npreexisting GCE network inside of the project on which this API has been\nactivated. If none is provided, \"default\" will be used." - }, - "health": { - "enum": [ - "HEALTH_UNSPECIFIED", - "HEALTHY", - "UNHEALTHY", - "TIMEOUT" - ], - "description": "The health status of the TPU node.", - "type": "string", - "enumDescriptions": [ - "Health status is unknown: not initialized or failed to retrieve.", - "The resource is healthy.", - "The resource is unhealthy.", - "The resource is unresponsive." - ] - }, - "ipAddress": { - "description": "Output only.\nDEPRECATED! Use network_endpoints instead.\nThe network address for the TPU Node as visible to GCE instances.", + "nextPageToken": { + "description": "The next page token or empty if none.", "type": "string" }, - "cidrBlock": { - "description": "The CIDR block that the TPU node will use when selecting //an IP address.\nThis CIDR block must be a /29 block; the GCE networks API forbids a smaller\nblock, and using a larger block would be wasteful (a node can only consume\none IP address). Errors will occur if the CIDR block has already been used\nfor a currently existing TPU node, the CIDR block conflicts with any\nsubnetworks in the user's provided network, or the provided network is\npeered with another network that is using that CIDR block.\nRequired.", - "type": "string" - }, - "createTime": { - "description": "Output only.\nThe time when the node was created.", - "format": "google-datetime", - "type": "string" - }, - "tensorflowVersion": { - "type": "string", - "description": "The version of Tensorflow running in the Node.\nRequired." - }, - "description": { - "description": "The user-supplied description of the TPU. Maximum of 512 characters.", - "type": "string" - }, - "networkEndpoints": { - "type": "array", + "nodes": { + "description": "The listed nodes.", "items": { - "$ref": "NetworkEndpoint" + "$ref": "Node" }, - "description": "Output only. The network endpoints where TPU workers can be accessed and sent work.\nIt is recommended that Tensorflow clients of the node reach out to the 0th\nentry in this map first." - }, - "state": { - "type": "string", - "enumDescriptions": [ - "TPU node state is not known/set.", - "TPU node is being created.", - "TPU node has been created and is fully usable.", - "TPU node is restarting.", - "TPU node is undergoing reimaging.", - "TPU node is being deleted.", - "TPU node is being repaired and may be unusable. Details can be\nfound in the `help_description` field." - ], - "enum": [ - "STATE_UNSPECIFIED", - "CREATING", - "READY", - "RESTARTING", - "REIMAGING", - "DELETING", - "REPAIRING" - ], - "description": "Output only.\nThe current state for the TPU Node." - }, - "acceleratorType": { - "description": "The type of hardware accelerators associated with this node.\nRequired.", - "type": "string" - }, - "name": { - "type": "string", - "description": "Output only.\nThe immutable name of the TPU" - }, - "port": { - "description": "Output only.\nDEPRECATED! Use network_endpoints instead.\nThe network port for the TPU Node as visible to GCE instances.", - "type": "string" - }, - "serviceAccount": { - "type": "string", - "description": "Output only.\nThe service account used to run the tensor flow services within the node.\nTo share resources, including Google Cloud Storage data, with the\nTensorflow job running in the Node, this account must have permissions to\nthat data." + "type": "array" } }, - "id": "Node", - "description": "A TPU instance." + "type": "object" + }, + "ListOperationsResponse": { + "description": "The response message for Operations.ListOperations.", + "id": "ListOperationsResponse", + "properties": { + "nextPageToken": { + "description": "The standard List next-page token.", + "type": "string" + }, + "operations": { + "description": "A list of operations that matches the specified filter in the request.", + "items": { + "$ref": "Operation" + }, + "type": "array" + } + }, + "type": "object" + }, + "ListTensorFlowVersionsResponse": { + "description": "Response for ListTensorFlowVersions.", + "id": "ListTensorFlowVersionsResponse", + "properties": { + "nextPageToken": { + "description": "The next page token or empty if none.", + "type": "string" + }, + "tensorflowVersions": { + "description": "The listed nodes.", + "items": { + "$ref": "TensorFlowVersion" + }, + "type": "array" + } + }, + "type": "object" + }, + "Location": { + "description": "A resource that represents Google Cloud Platform location.", + "id": "Location", + "properties": { + "displayName": { + "description": "The friendly name for this location, typically a nearby city name.\nFor example, \"Tokyo\".", + "type": "string" + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Cross-service attributes for the location. For example\n\n {\"cloud.googleapis.com/region\": \"us-east1\"}", + "type": "object" + }, + "locationId": { + "description": "The canonical id for this location. For example: `\"us-east1\"`.", + "type": "string" + }, + "metadata": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "description": "Service-specific metadata. For example the available capacity at the given\nlocation.", + "type": "object" + }, + "name": { + "description": "Resource name for the location, which may vary between implementations.\nFor example: `\"projects/example-project/locations/us-east1\"`", + "type": "string" + } + }, + "type": "object" }, "NetworkEndpoint": { "description": "A network endpoint over which a TPU worker can be reached.", - "type": "object", + "id": "NetworkEndpoint", "properties": { "ipAddress": { "description": "The IP address of this network endpoint.", @@ -617,23 +859,137 @@ "type": "integer" } }, - "id": "NetworkEndpoint" + "type": "object" + }, + "Node": { + "description": "A TPU instance.", + "id": "Node", + "properties": { + "acceleratorType": { + "description": "The type of hardware accelerators associated with this node.\nRequired.", + "type": "string" + }, + "cidrBlock": { + "description": "The CIDR block that the TPU node will use when selecting an IP address.\nThis CIDR block must be a /29 block; the Compute Engine networks API\nforbids a smaller block, and using a larger block would be wasteful (a\nnode can only consume one IP address). Errors will occur if the CIDR block\nhas already been used for a currently existing TPU node, the CIDR block\nconflicts with any subnetworks in the user's provided network, or the\nprovided network is peered with another network that is using that CIDR\nblock.\nRequired.", + "type": "string" + }, + "createTime": { + "description": "Output only.\nThe time when the node was created.", + "format": "google-datetime", + "type": "string" + }, + "description": { + "description": "The user-supplied description of the TPU. Maximum of 512 characters.", + "type": "string" + }, + "health": { + "description": "The health status of the TPU node.", + "enum": [ + "HEALTH_UNSPECIFIED", + "HEALTHY", + "UNHEALTHY", + "TIMEOUT" + ], + "enumDescriptions": [ + "Health status is unknown: not initialized or failed to retrieve.", + "The resource is healthy.", + "The resource is unhealthy.", + "The resource is unresponsive." + ], + "type": "string" + }, + "healthDescription": { + "description": "Output only.\nIf this field is populated, it contains a description of why the TPU Node\nis unhealthy.", + "type": "string" + }, + "ipAddress": { + "description": "Output only.\nDEPRECATED! Use network_endpoints instead.\nThe network address for the TPU Node as visible to Compute Engine\ninstances.", + "type": "string" + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Resource labels to represent user-provided metadata.", + "type": "object" + }, + "name": { + "description": "Output only.\nThe immutable name of the TPU", + "type": "string" + }, + "network": { + "description": "The name of a network they wish to peer the TPU node to. It must be a\npreexisting Compute Engine network inside of the project on which this API\nhas been activated. If none is provided, \"default\" will be used.", + "type": "string" + }, + "networkEndpoints": { + "description": "Output only. The network endpoints where TPU workers can be accessed and sent work.\nIt is recommended that Tensorflow clients of the node reach out to the 0th\nentry in this map first.", + "items": { + "$ref": "NetworkEndpoint" + }, + "type": "array" + }, + "port": { + "description": "Output only.\nDEPRECATED! Use network_endpoints instead.\nThe network port for the TPU Node as visible to Compute Engine instances.", + "type": "string" + }, + "serviceAccount": { + "description": "Output only.\nThe service account used to run the tensor flow services within the node.\nTo share resources, including Google Cloud Storage data, with the\nTensorflow job running in the Node, this account must have permissions to\nthat data.", + "type": "string" + }, + "state": { + "description": "Output only.\nThe current state for the TPU Node.", + "enum": [ + "STATE_UNSPECIFIED", + "CREATING", + "READY", + "RESTARTING", + "REIMAGING", + "DELETING", + "REPAIRING", + "STOPPED" + ], + "enumDescriptions": [ + "TPU node state is not known/set.", + "TPU node is being created.", + "TPU node has been created and is fully usable.", + "TPU node is restarting.", + "TPU node is undergoing reimaging.", + "TPU node is being deleted.", + "TPU node is being repaired and may be unusable. Details can be\nfound in the `help_description` field.", + "7 - Reserved. Was SUSPENDED.\nTPU node is stopped." + ], + "type": "string" + }, + "tensorflowVersion": { + "description": "The version of Tensorflow running in the Node.\nRequired.", + "type": "string" + } + }, + "type": "object" }, "Operation": { "description": "This resource represents a long-running operation that is the result of a\nnetwork API call.", - "type": "object", + "id": "Operation", "properties": { - "metadata": { - "type": "object", - "additionalProperties": { - "type": "any", - "description": "Properties of the object. Contains field @type with type URL." - }, - "description": "Service-specific metadata associated with the operation. It typically\ncontains progress information and common metadata such as create time.\nSome services might not provide such metadata. Any method that returns a\nlong-running operation should document the metadata type, if any." - }, "done": { - "type": "boolean", - "description": "If the value is `false`, it means the operation is still in progress.\nIf `true`, the operation is completed, and either `error` or `response` is\navailable." + "description": "If the value is `false`, it means the operation is still in progress.\nIf `true`, the operation is completed, and either `error` or `response` is\navailable.", + "type": "boolean" + }, + "error": { + "$ref": "Status", + "description": "The error result of the operation in case of failure or cancellation." + }, + "metadata": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "description": "Service-specific metadata associated with the operation. It typically\ncontains progress information and common metadata such as create time.\nSome services might not provide such metadata. Any method that returns a\nlong-running operation should document the metadata type, if any.", + "type": "object" + }, + "name": { + "description": "The server-assigned name, which is only unique within the same service that\noriginally returns it. If you use the default HTTP mapping, the\n`name` should have the format of `operations/some/unique/name`.", + "type": "string" }, "response": { "additionalProperties": { @@ -642,180 +998,121 @@ }, "description": "The normal response of the operation in case of success. If the original\nmethod returns no data on success, such as `Delete`, the response is\n`google.protobuf.Empty`. If the original method is standard\n`Get`/`Create`/`Update`, the response should be the resource. For other\nmethods, the response should have the type `XxxResponse`, where `Xxx`\nis the original method name. For example, if the original method name\nis `TakeSnapshot()`, the inferred response type is\n`TakeSnapshotResponse`.", "type": "object" - }, - "name": { - "type": "string", - "description": "The server-assigned name, which is only unique within the same service that\noriginally returns it. If you use the default HTTP mapping, the\n`name` should have the format of `operations/some/unique/name`." - }, - "error": { - "$ref": "Status", - "description": "The error result of the operation in case of failure or cancellation." } }, - "id": "Operation" - }, - "ListNodesResponse": { - "description": "Response for ListNodes.", - "type": "object", - "properties": { - "nodes": { - "description": "The listed nodes.", - "type": "array", - "items": { - "$ref": "Node" - } - }, - "nextPageToken": { - "type": "string", - "description": "The next page token or empty if none." - } - }, - "id": "ListNodesResponse" - }, - "Status": { - "type": "object", - "properties": { - "code": { - "description": "The status code, which should be an enum value of google.rpc.Code.", - "format": "int32", - "type": "integer" - }, - "message": { - "type": "string", - "description": "A developer-facing error message, which should be in English. Any\nuser-facing error message should be localized and sent in the\ngoogle.rpc.Status.details field, or localized by the client." - }, - "details": { - "type": "array", - "items": { - "type": "object", - "additionalProperties": { - "type": "any", - "description": "Properties of the object. Contains field @type with type URL." - } - }, - "description": "A list of messages that carry the error details. There is a common set of\nmessage types for APIs to use." - } - }, - "id": "Status", - "description": "The `Status` type defines a logical error model that is suitable for different\nprogramming environments, including REST APIs and RPC APIs. It is used by\n[gRPC](https://github.com/grpc). The error model is designed to be:\n\n- Simple to use and understand for most users\n- Flexible enough to meet unexpected needs\n\n# Overview\n\nThe `Status` message contains three pieces of data: error code, error message,\nand error details. The error code should be an enum value of\ngoogle.rpc.Code, but it may accept additional error codes if needed. The\nerror message should be a developer-facing English message that helps\ndevelopers *understand* and *resolve* the error. If a localized user-facing\nerror message is needed, put the localized message in the error details or\nlocalize it in the client. The optional error details may contain arbitrary\ninformation about the error. There is a predefined set of error detail types\nin the package `google.rpc` that can be used for common error conditions.\n\n# Language mapping\n\nThe `Status` message is the logical representation of the error model, but it\nis not necessarily the actual wire format. When the `Status` message is\nexposed in different client libraries and different wire protocols, it can be\nmapped differently. For example, it will likely be mapped to some exceptions\nin Java, but more likely mapped to some error codes in C.\n\n# Other uses\n\nThe error model and the `Status` message can be used in a variety of\nenvironments, either with or without APIs, to provide a\nconsistent developer experience across different environments.\n\nExample uses of this error model include:\n\n- Partial errors. If a service needs to return partial errors to the client,\n it may embed the `Status` in the normal response to indicate the partial\n errors.\n\n- Workflow errors. A typical workflow has multiple steps. Each step may\n have a `Status` message for error reporting.\n\n- Batch operations. If a client uses batch request and batch response, the\n `Status` message should be used directly inside batch response, one for\n each error sub-response.\n\n- Asynchronous operations. If an API call embeds asynchronous operation\n results in its response, the status of those operations should be\n represented directly using the `Status` message.\n\n- Logging. If some API errors are stored in logs, the message `Status` could\n be used directly after any stripping needed for security/privacy reasons." - }, - "Empty": { - "type": "object", - "properties": {}, - "id": "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 `{}`." - }, - "ReimageNodeRequest": { - "type": "object", - "properties": { - "tensorflowVersion": { - "type": "string", - "description": "The version for reimage to create." - } - }, - "id": "ReimageNodeRequest", - "description": "Request for ReimageNode." - }, - "Location": { - "description": "A resource that represents Google Cloud Platform location.", - "type": "object", - "properties": { - "metadata": { - "type": "object", - "additionalProperties": { - "type": "any", - "description": "Properties of the object. Contains field @type with type URL." - }, - "description": "Service-specific metadata. For example the available capacity at the given\nlocation." - }, - "labels": { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "description": "Cross-service attributes for the location. For example\n\n {\"cloud.googleapis.com/region\": \"us-east1\"}" - }, - "name": { - "description": "Resource name for the location, which may vary between implementations.\nFor example: `\"projects/example-project/locations/us-east1\"`", - "type": "string" - }, - "locationId": { - "type": "string", - "description": "The canonical id for this location. For example: `\"us-east1\"`." - } - }, - "id": "Location" - }, - "ListOperationsResponse": { - "type": "object", - "properties": { - "operations": { - "description": "A list of operations that matches the specified filter in the request.", - "type": "array", - "items": { - "$ref": "Operation" - } - }, - "nextPageToken": { - "description": "The standard List next-page token.", - "type": "string" - } - }, - "id": "ListOperationsResponse", - "description": "The response message for Operations.ListOperations." + "type": "object" }, "OperationMetadata": { - "type": "object", + "description": "Represents the metadata of the long-running operation.", + "id": "OperationMetadata", "properties": { + "apiVersion": { + "description": "[Output only] API version used to start the operation.", + "type": "string" + }, + "cancelRequested": { + "description": "[Output only] Identifies whether the user has requested cancellation\nof the operation. Operations that have successfully been cancelled\nhave Operation.error value with a google.rpc.Status.code of 1,\ncorresponding to `Code.CANCELLED`.", + "type": "boolean" + }, "createTime": { "description": "[Output only] The time the operation was created.", "format": "google-datetime", "type": "string" }, - "statusDetail": { - "description": "[Output only] Human-readable status of the operation, if any.", - "type": "string" - }, - "apiVersion": { - "type": "string", - "description": "[Output only] API version used to start the operation." - }, - "target": { - "description": "[Output only] Server-defined resource path for the target of the operation.", - "type": "string" - }, "endTime": { "description": "[Output only] The time the operation finished running.", "format": "google-datetime", "type": "string" }, - "cancelRequested": { - "description": "[Output only] Identifies whether the user has requested cancellation\nof the operation. Operations that have successfully been cancelled\nhave Operation.error value with a google.rpc.Status.code of 1,\ncorresponding to `Code.CANCELLED`.", - "type": "boolean" + "statusDetail": { + "description": "[Output only] Human-readable status of the operation, if any.", + "type": "string" + }, + "target": { + "description": "[Output only] Server-defined resource path for the target of the operation.", + "type": "string" }, "verb": { "description": "[Output only] Name of the verb executed by the operation.", "type": "string" } }, - "id": "OperationMetadata", - "description": "Represents the metadata of the long-running operation." - } - }, - "protocol": "rest", - "icons": { - "x32": "http://www.google.com/images/icons/product/search-32.gif", - "x16": "http://www.google.com/images/icons/product/search-16.gif" - }, - "canonicalName": "TPU", - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/cloud-platform": { - "description": "View and manage your data across Google Cloud Platform services" + "type": "object" + }, + "ReimageNodeRequest": { + "description": "Request for ReimageNode.", + "id": "ReimageNodeRequest", + "properties": { + "tensorflowVersion": { + "description": "The version for reimage to create.", + "type": "string" } - } + }, + "type": "object" + }, + "ResetNodeRequest": { + "description": "Request for ResetNode.", + "id": "ResetNodeRequest", + "properties": {}, + "type": "object" + }, + "StartNodeRequest": { + "description": "Request for StartNode.", + "id": "StartNodeRequest", + "properties": {}, + "type": "object" + }, + "Status": { + "description": "The `Status` type defines a logical error model that is suitable for different\nprogramming environments, including REST APIs and RPC APIs. It is used by\n[gRPC](https://github.com/grpc). The error model is designed to be:\n\n- Simple to use and understand for most users\n- Flexible enough to meet unexpected needs\n\n# Overview\n\nThe `Status` message contains three pieces of data: error code, error message,\nand error details. The error code should be an enum value of\ngoogle.rpc.Code, but it may accept additional error codes if needed. The\nerror message should be a developer-facing English message that helps\ndevelopers *understand* and *resolve* the error. If a localized user-facing\nerror message is needed, put the localized message in the error details or\nlocalize it in the client. The optional error details may contain arbitrary\ninformation about the error. There is a predefined set of error detail types\nin the package `google.rpc` that can be used for common error conditions.\n\n# Language mapping\n\nThe `Status` message is the logical representation of the error model, but it\nis not necessarily the actual wire format. When the `Status` message is\nexposed in different client libraries and different wire protocols, it can be\nmapped differently. For example, it will likely be mapped to some exceptions\nin Java, but more likely mapped to some error codes in C.\n\n# Other uses\n\nThe error model and the `Status` message can be used in a variety of\nenvironments, either with or without APIs, to provide a\nconsistent developer experience across different environments.\n\nExample uses of this error model include:\n\n- Partial errors. If a service needs to return partial errors to the client,\n it may embed the `Status` in the normal response to indicate the partial\n errors.\n\n- Workflow errors. A typical workflow has multiple steps. Each step may\n have a `Status` message for error reporting.\n\n- Batch operations. If a client uses batch request and batch response, the\n `Status` message should be used directly inside batch response, one for\n each error sub-response.\n\n- Asynchronous operations. If an API call embeds asynchronous operation\n results in its response, the status of those operations should be\n represented directly using the `Status` message.\n\n- Logging. If some API errors are stored in logs, the message `Status` could\n be used directly after any stripping needed for security/privacy reasons.", + "id": "Status", + "properties": { + "code": { + "description": "The status code, which should be an enum value of google.rpc.Code.", + "format": "int32", + "type": "integer" + }, + "details": { + "description": "A list of messages that carry the error details. There is a common set of\nmessage types for APIs to use.", + "items": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "A developer-facing error message, which should be in English. Any\nuser-facing error message should be localized and sent in the\ngoogle.rpc.Status.details field, or localized by the client.", + "type": "string" + } + }, + "type": "object" + }, + "StopNodeRequest": { + "description": "Request for StopNode.", + "id": "StopNodeRequest", + "properties": {}, + "type": "object" + }, + "TensorFlowVersion": { + "description": "A tensorflow version that a Node can be configured with.", + "id": "TensorFlowVersion", + "properties": { + "name": { + "description": "The resource name.", + "type": "string" + }, + "version": { + "description": "the tensorflow version.", + "type": "string" + } + }, + "type": "object" } }, - "rootUrl": "https://tpu.googleapis.com/" -} + "servicePath": "", + "title": "Cloud TPU API", + "version": "v1alpha1", + "version_module": true +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/tpu/v1alpha1/tpu-gen.go b/vendor/google.golang.org/api/tpu/v1alpha1/tpu-gen.go index c90d871c2..f65c55a6a 100644 --- a/vendor/google.golang.org/api/tpu/v1alpha1/tpu-gen.go +++ b/vendor/google.golang.org/api/tpu/v1alpha1/tpu-gen.go @@ -43,7 +43,7 @@ var _ = ctxhttp.Do const apiId = "tpu:v1alpha1" const apiName = "tpu" const apiVersion = "v1alpha1" -const basePath = "https://tpu.googleapis.com/" +const basePath = "https://content-tpu.googleapis.com/" // OAuth2 scopes used by this API. const ( @@ -89,17 +89,32 @@ type ProjectsService struct { func NewProjectsLocationsService(s *Service) *ProjectsLocationsService { rs := &ProjectsLocationsService{s: s} + rs.AcceleratorTypes = NewProjectsLocationsAcceleratorTypesService(s) rs.Nodes = NewProjectsLocationsNodesService(s) rs.Operations = NewProjectsLocationsOperationsService(s) + rs.TensorflowVersions = NewProjectsLocationsTensorflowVersionsService(s) return rs } type ProjectsLocationsService struct { s *Service + AcceleratorTypes *ProjectsLocationsAcceleratorTypesService + Nodes *ProjectsLocationsNodesService Operations *ProjectsLocationsOperationsService + + TensorflowVersions *ProjectsLocationsTensorflowVersionsService +} + +func NewProjectsLocationsAcceleratorTypesService(s *Service) *ProjectsLocationsAcceleratorTypesService { + rs := &ProjectsLocationsAcceleratorTypesService{s: s} + return rs +} + +type ProjectsLocationsAcceleratorTypesService struct { + s *Service } func NewProjectsLocationsNodesService(s *Service) *ProjectsLocationsNodesService { @@ -120,6 +135,51 @@ type ProjectsLocationsOperationsService struct { s *Service } +func NewProjectsLocationsTensorflowVersionsService(s *Service) *ProjectsLocationsTensorflowVersionsService { + rs := &ProjectsLocationsTensorflowVersionsService{s: s} + return rs +} + +type ProjectsLocationsTensorflowVersionsService struct { + s *Service +} + +// AcceleratorType: A accelerator type that a Node can be configured +// with. +type AcceleratorType struct { + // Name: The resource name. + Name string `json:"name,omitempty"` + + // Type: the accelerator type. + Type string `json:"type,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "Name") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Name") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *AcceleratorType) MarshalJSON() ([]byte, error) { + type NoMethod AcceleratorType + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // Empty: A generic empty message that you can re-use to avoid defining // duplicated // empty messages in your APIs. A typical example is to use it as the @@ -138,6 +198,42 @@ type Empty struct { googleapi.ServerResponse `json:"-"` } +// ListAcceleratorTypesResponse: Response for ListAcceleratorTypes. +type ListAcceleratorTypesResponse struct { + // AcceleratorTypes: The listed nodes. + AcceleratorTypes []*AcceleratorType `json:"acceleratorTypes,omitempty"` + + // NextPageToken: The next page token or empty if none. + NextPageToken string `json:"nextPageToken,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "AcceleratorTypes") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "AcceleratorTypes") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *ListAcceleratorTypesResponse) MarshalJSON() ([]byte, error) { + type NoMethod ListAcceleratorTypesResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // ListLocationsResponse: The response message for // Locations.ListLocations. type ListLocationsResponse struct { @@ -247,8 +343,48 @@ func (s *ListOperationsResponse) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// ListTensorFlowVersionsResponse: Response for ListTensorFlowVersions. +type ListTensorFlowVersionsResponse struct { + // NextPageToken: The next page token or empty if none. + NextPageToken string `json:"nextPageToken,omitempty"` + + // TensorflowVersions: The listed nodes. + TensorflowVersions []*TensorFlowVersion `json:"tensorflowVersions,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "NextPageToken") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "NextPageToken") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *ListTensorFlowVersionsResponse) MarshalJSON() ([]byte, error) { + type NoMethod ListTensorFlowVersionsResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // Location: A resource that represents Google Cloud Platform location. type Location struct { + // DisplayName: The friendly name for this location, typically a nearby + // city name. + // For example, "Tokyo". + DisplayName string `json:"displayName,omitempty"` + // Labels: Cross-service attributes for the location. For example // // {"cloud.googleapis.com/region": "us-east1"} @@ -272,7 +408,7 @@ type Location struct { // server. googleapi.ServerResponse `json:"-"` - // ForceSendFields is a list of field names (e.g. "Labels") to + // ForceSendFields is a list of field names (e.g. "DisplayName") to // unconditionally include in API requests. By default, fields with // empty values are omitted from API requests. However, any non-pointer, // non-interface field appearing in ForceSendFields will be sent to the @@ -280,10 +416,10 @@ type Location struct { // used to include empty fields in Patch requests. ForceSendFields []string `json:"-"` - // NullFields is a list of field names (e.g. "Labels") to include in API - // requests with the JSON null value. By default, fields with empty - // values are omitted from API requests. However, any field with an - // empty value appearing in NullFields will be sent to the server as + // NullFields is a list of field names (e.g. "DisplayName") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as // null. It is an error if a field in this list has a non-empty value. // This may be used to include null fields in Patch requests. NullFields []string `json:"-"` @@ -335,18 +471,20 @@ type Node struct { AcceleratorType string `json:"acceleratorType,omitempty"` // CidrBlock: The CIDR block that the TPU node will use when selecting - // //an IP address. - // This CIDR block must be a /29 block; the GCE networks API forbids a - // smaller - // block, and using a larger block would be wasteful (a node can only - // consume - // one IP address). Errors will occur if the CIDR block has already been - // used - // for a currently existing TPU node, the CIDR block conflicts with - // any - // subnetworks in the user's provided network, or the provided network - // is - // peered with another network that is using that CIDR block. + // an IP address. + // This CIDR block must be a /29 block; the Compute Engine networks + // API + // forbids a smaller block, and using a larger block would be wasteful + // (a + // node can only consume one IP address). Errors will occur if the CIDR + // block + // has already been used for a currently existing TPU node, the CIDR + // block + // conflicts with any subnetworks in the user's provided network, or + // the + // provided network is peered with another network that is using that + // CIDR + // block. // Required. CidrBlock string `json:"cidrBlock,omitempty"` @@ -376,18 +514,23 @@ type Node struct { // IpAddress: Output only. // DEPRECATED! Use network_endpoints instead. - // The network address for the TPU Node as visible to GCE instances. + // The network address for the TPU Node as visible to Compute + // Engine + // instances. IpAddress string `json:"ipAddress,omitempty"` + // Labels: Resource labels to represent user-provided metadata. + Labels map[string]string `json:"labels,omitempty"` + // Name: Output only. // The immutable name of the TPU Name string `json:"name,omitempty"` // Network: The name of a network they wish to peer the TPU node to. It // must be a - // preexisting GCE network inside of the project on which this API has - // been - // activated. If none is provided, "default" will be used. + // preexisting Compute Engine network inside of the project on which + // this API + // has been activated. If none is provided, "default" will be used. Network string `json:"network,omitempty"` // NetworkEndpoints: Output only. The network endpoints where TPU @@ -399,7 +542,8 @@ type Node struct { // Port: Output only. // DEPRECATED! Use network_endpoints instead. - // The network port for the TPU Node as visible to GCE instances. + // The network port for the TPU Node as visible to Compute Engine + // instances. Port string `json:"port,omitempty"` // ServiceAccount: Output only. @@ -425,6 +569,8 @@ type Node struct { // "REPAIRING" - TPU node is being repaired and may be unusable. // Details can be // found in the `help_description` field. + // "STOPPED" - 7 - Reserved. Was SUSPENDED. + // TPU node is stopped. State string `json:"state,omitempty"` // TensorflowVersion: The version of Tensorflow running in the @@ -623,6 +769,10 @@ func (s *ReimageNodeRequest) MarshalJSON() ([]byte, error) { type ResetNodeRequest struct { } +// StartNodeRequest: Request for StartNode. +type StartNodeRequest struct { +} + // Status: The `Status` type defines a logical error model that is // suitable for different // programming environments, including REST APIs and RPC APIs. It is @@ -742,6 +892,46 @@ func (s *Status) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// StopNodeRequest: Request for StopNode. +type StopNodeRequest struct { +} + +// TensorFlowVersion: A tensorflow version that a Node can be configured +// with. +type TensorFlowVersion struct { + // Name: The resource name. + Name string `json:"name,omitempty"` + + // Version: the tensorflow version. + Version string `json:"version,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "Name") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Name") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *TensorFlowVersion) MarshalJSON() ([]byte, error) { + type NoMethod TensorFlowVersion + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // method id "tpu.projects.locations.get": type ProjectsLocationsGetCall struct { @@ -1079,6 +1269,352 @@ func (c *ProjectsLocationsListCall) Pages(ctx context.Context, f func(*ListLocat } } +// method id "tpu.projects.locations.acceleratorTypes.get": + +type ProjectsLocationsAcceleratorTypesGetCall struct { + s *Service + name string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// Get: Gets AcceleratorType. +func (r *ProjectsLocationsAcceleratorTypesService) Get(name string) *ProjectsLocationsAcceleratorTypesGetCall { + c := &ProjectsLocationsAcceleratorTypesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsLocationsAcceleratorTypesGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsAcceleratorTypesGetCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// IfNoneMatch sets the optional parameter which makes the operation +// fail if the object's ETag matches the given value. This is useful for +// getting updates only after the object has changed since the last +// request. Use googleapi.IsNotModified to check whether the response +// error from Do is the result of In-None-Match. +func (c *ProjectsLocationsAcceleratorTypesGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsAcceleratorTypesGetCall { + c.ifNoneMatch_ = entityTag + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsLocationsAcceleratorTypesGetCall) Context(ctx context.Context) *ProjectsLocationsAcceleratorTypesGetCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsLocationsAcceleratorTypesGetCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsLocationsAcceleratorTypesGetCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + if c.ifNoneMatch_ != "" { + reqHeaders.Set("If-None-Match", c.ifNoneMatch_) + } + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v1alpha1/{+name}") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("GET", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "tpu.projects.locations.acceleratorTypes.get" call. +// Exactly one of *AcceleratorType or error will be non-nil. Any non-2xx +// status code is an error. Response headers are in either +// *AcceleratorType.ServerResponse.Header or (if a response was returned +// at all) in error.(*googleapi.Error).Header. Use +// googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *ProjectsLocationsAcceleratorTypesGetCall) Do(opts ...googleapi.CallOption) (*AcceleratorType, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &AcceleratorType{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Gets AcceleratorType.", + // "flatPath": "v1alpha1/projects/{projectsId}/locations/{locationsId}/acceleratorTypes/{acceleratorTypesId}", + // "httpMethod": "GET", + // "id": "tpu.projects.locations.acceleratorTypes.get", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "The resource name.", + // "location": "path", + // "pattern": "^projects/[^/]+/locations/[^/]+/acceleratorTypes/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1alpha1/{+name}", + // "response": { + // "$ref": "AcceleratorType" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "tpu.projects.locations.acceleratorTypes.list": + +type ProjectsLocationsAcceleratorTypesListCall struct { + s *Service + parent string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// List: Lists accelerator types supported by this API. +func (r *ProjectsLocationsAcceleratorTypesService) List(parent string) *ProjectsLocationsAcceleratorTypesListCall { + c := &ProjectsLocationsAcceleratorTypesListCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.parent = parent + return c +} + +// Filter sets the optional parameter "filter": List filter. +func (c *ProjectsLocationsAcceleratorTypesListCall) Filter(filter string) *ProjectsLocationsAcceleratorTypesListCall { + c.urlParams_.Set("filter", filter) + return c +} + +// OrderBy sets the optional parameter "orderBy": Sort results. +func (c *ProjectsLocationsAcceleratorTypesListCall) OrderBy(orderBy string) *ProjectsLocationsAcceleratorTypesListCall { + c.urlParams_.Set("orderBy", orderBy) + return c +} + +// PageSize sets the optional parameter "pageSize": The maximum number +// of items to return. +func (c *ProjectsLocationsAcceleratorTypesListCall) PageSize(pageSize int64) *ProjectsLocationsAcceleratorTypesListCall { + c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) + return c +} + +// PageToken sets the optional parameter "pageToken": The +// next_page_token value returned from a previous List request, if any. +func (c *ProjectsLocationsAcceleratorTypesListCall) PageToken(pageToken string) *ProjectsLocationsAcceleratorTypesListCall { + c.urlParams_.Set("pageToken", pageToken) + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsLocationsAcceleratorTypesListCall) Fields(s ...googleapi.Field) *ProjectsLocationsAcceleratorTypesListCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// IfNoneMatch sets the optional parameter which makes the operation +// fail if the object's ETag matches the given value. This is useful for +// getting updates only after the object has changed since the last +// request. Use googleapi.IsNotModified to check whether the response +// error from Do is the result of In-None-Match. +func (c *ProjectsLocationsAcceleratorTypesListCall) IfNoneMatch(entityTag string) *ProjectsLocationsAcceleratorTypesListCall { + c.ifNoneMatch_ = entityTag + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsLocationsAcceleratorTypesListCall) Context(ctx context.Context) *ProjectsLocationsAcceleratorTypesListCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsLocationsAcceleratorTypesListCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsLocationsAcceleratorTypesListCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + if c.ifNoneMatch_ != "" { + reqHeaders.Set("If-None-Match", c.ifNoneMatch_) + } + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v1alpha1/{+parent}/acceleratorTypes") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("GET", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "parent": c.parent, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "tpu.projects.locations.acceleratorTypes.list" call. +// Exactly one of *ListAcceleratorTypesResponse or error will be +// non-nil. Any non-2xx status code is an error. Response headers are in +// either *ListAcceleratorTypesResponse.ServerResponse.Header or (if a +// response was returned at all) in error.(*googleapi.Error).Header. Use +// googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *ProjectsLocationsAcceleratorTypesListCall) Do(opts ...googleapi.CallOption) (*ListAcceleratorTypesResponse, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &ListAcceleratorTypesResponse{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Lists accelerator types supported by this API.", + // "flatPath": "v1alpha1/projects/{projectsId}/locations/{locationsId}/acceleratorTypes", + // "httpMethod": "GET", + // "id": "tpu.projects.locations.acceleratorTypes.list", + // "parameterOrder": [ + // "parent" + // ], + // "parameters": { + // "filter": { + // "description": "List filter.", + // "location": "query", + // "type": "string" + // }, + // "orderBy": { + // "description": "Sort results.", + // "location": "query", + // "type": "string" + // }, + // "pageSize": { + // "description": "The maximum number of items to return.", + // "format": "int32", + // "location": "query", + // "type": "integer" + // }, + // "pageToken": { + // "description": "The next_page_token value returned from a previous List request, if any.", + // "location": "query", + // "type": "string" + // }, + // "parent": { + // "description": "The parent resource name.", + // "location": "path", + // "pattern": "^projects/[^/]+/locations/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1alpha1/{+parent}/acceleratorTypes", + // "response": { + // "$ref": "ListAcceleratorTypesResponse" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// Pages invokes f for each page of results. +// A non-nil error returned from f will halt the iteration. +// The provided context supersedes any context provided to the Context method. +func (c *ProjectsLocationsAcceleratorTypesListCall) Pages(ctx context.Context, f func(*ListAcceleratorTypesResponse) error) error { + c.ctx_ = ctx + defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point + for { + x, err := c.Do() + if err != nil { + return err + } + if err := f(x); err != nil { + return err + } + if x.NextPageToken == "" { + return nil + } + c.PageToken(x.NextPageToken) + } +} + // method id "tpu.projects.locations.nodes.create": type ProjectsLocationsNodesCreateCall struct { @@ -1686,7 +2222,7 @@ type ProjectsLocationsNodesReimageCall struct { header_ http.Header } -// Reimage: Reimage a node's OS. +// Reimage: Reimages a node's OS. func (r *ProjectsLocationsNodesService) Reimage(name string, reimagenoderequest *ReimageNodeRequest) *ProjectsLocationsNodesReimageCall { c := &ProjectsLocationsNodesReimageCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.name = name @@ -1780,7 +2316,7 @@ func (c *ProjectsLocationsNodesReimageCall) Do(opts ...googleapi.CallOption) (*O } return ret, nil // { - // "description": "Reimage a node's OS.", + // "description": "Reimages a node's OS.", // "flatPath": "v1alpha1/projects/{projectsId}/locations/{locationsId}/nodes/{nodesId}:reimage", // "httpMethod": "POST", // "id": "tpu.projects.locations.nodes.reimage", @@ -1945,6 +2481,276 @@ func (c *ProjectsLocationsNodesResetCall) Do(opts ...googleapi.CallOption) (*Ope } +// method id "tpu.projects.locations.nodes.start": + +type ProjectsLocationsNodesStartCall struct { + s *Service + name string + startnoderequest *StartNodeRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Start: Starts a node. +func (r *ProjectsLocationsNodesService) Start(name string, startnoderequest *StartNodeRequest) *ProjectsLocationsNodesStartCall { + c := &ProjectsLocationsNodesStartCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + c.startnoderequest = startnoderequest + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsLocationsNodesStartCall) Fields(s ...googleapi.Field) *ProjectsLocationsNodesStartCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsLocationsNodesStartCall) Context(ctx context.Context) *ProjectsLocationsNodesStartCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsLocationsNodesStartCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsLocationsNodesStartCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.startnoderequest) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v1alpha1/{+name}:start") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("POST", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "tpu.projects.locations.nodes.start" call. +// Exactly one of *Operation or error will be non-nil. Any non-2xx +// status code is an error. Response headers are in either +// *Operation.ServerResponse.Header or (if a response was returned at +// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified +// to check whether the returned error was because +// http.StatusNotModified was returned. +func (c *ProjectsLocationsNodesStartCall) Do(opts ...googleapi.CallOption) (*Operation, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &Operation{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Starts a node.", + // "flatPath": "v1alpha1/projects/{projectsId}/locations/{locationsId}/nodes/{nodesId}:start", + // "httpMethod": "POST", + // "id": "tpu.projects.locations.nodes.start", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "The resource name.", + // "location": "path", + // "pattern": "^projects/[^/]+/locations/[^/]+/nodes/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1alpha1/{+name}:start", + // "request": { + // "$ref": "StartNodeRequest" + // }, + // "response": { + // "$ref": "Operation" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "tpu.projects.locations.nodes.stop": + +type ProjectsLocationsNodesStopCall struct { + s *Service + name string + stopnoderequest *StopNodeRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Stop: Stops a node. +func (r *ProjectsLocationsNodesService) Stop(name string, stopnoderequest *StopNodeRequest) *ProjectsLocationsNodesStopCall { + c := &ProjectsLocationsNodesStopCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + c.stopnoderequest = stopnoderequest + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsLocationsNodesStopCall) Fields(s ...googleapi.Field) *ProjectsLocationsNodesStopCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsLocationsNodesStopCall) Context(ctx context.Context) *ProjectsLocationsNodesStopCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsLocationsNodesStopCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsLocationsNodesStopCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.stopnoderequest) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v1alpha1/{+name}:stop") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("POST", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "tpu.projects.locations.nodes.stop" call. +// Exactly one of *Operation or error will be non-nil. Any non-2xx +// status code is an error. Response headers are in either +// *Operation.ServerResponse.Header or (if a response was returned at +// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified +// to check whether the returned error was because +// http.StatusNotModified was returned. +func (c *ProjectsLocationsNodesStopCall) Do(opts ...googleapi.CallOption) (*Operation, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &Operation{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Stops a node.", + // "flatPath": "v1alpha1/projects/{projectsId}/locations/{locationsId}/nodes/{nodesId}:stop", + // "httpMethod": "POST", + // "id": "tpu.projects.locations.nodes.stop", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "The resource name.", + // "location": "path", + // "pattern": "^projects/[^/]+/locations/[^/]+/nodes/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1alpha1/{+name}:stop", + // "request": { + // "$ref": "StopNodeRequest" + // }, + // "response": { + // "$ref": "Operation" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + // method id "tpu.projects.locations.operations.cancel": type ProjectsLocationsOperationsCancelCall struct { @@ -2573,3 +3379,349 @@ func (c *ProjectsLocationsOperationsListCall) Pages(ctx context.Context, f func( c.PageToken(x.NextPageToken) } } + +// method id "tpu.projects.locations.tensorflowVersions.get": + +type ProjectsLocationsTensorflowVersionsGetCall struct { + s *Service + name string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// Get: Gets TensorFlow Version. +func (r *ProjectsLocationsTensorflowVersionsService) Get(name string) *ProjectsLocationsTensorflowVersionsGetCall { + c := &ProjectsLocationsTensorflowVersionsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsLocationsTensorflowVersionsGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsTensorflowVersionsGetCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// IfNoneMatch sets the optional parameter which makes the operation +// fail if the object's ETag matches the given value. This is useful for +// getting updates only after the object has changed since the last +// request. Use googleapi.IsNotModified to check whether the response +// error from Do is the result of In-None-Match. +func (c *ProjectsLocationsTensorflowVersionsGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsTensorflowVersionsGetCall { + c.ifNoneMatch_ = entityTag + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsLocationsTensorflowVersionsGetCall) Context(ctx context.Context) *ProjectsLocationsTensorflowVersionsGetCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsLocationsTensorflowVersionsGetCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsLocationsTensorflowVersionsGetCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + if c.ifNoneMatch_ != "" { + reqHeaders.Set("If-None-Match", c.ifNoneMatch_) + } + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v1alpha1/{+name}") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("GET", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "tpu.projects.locations.tensorflowVersions.get" call. +// Exactly one of *TensorFlowVersion or error will be non-nil. Any +// non-2xx status code is an error. Response headers are in either +// *TensorFlowVersion.ServerResponse.Header or (if a response was +// returned at all) in error.(*googleapi.Error).Header. Use +// googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *ProjectsLocationsTensorflowVersionsGetCall) Do(opts ...googleapi.CallOption) (*TensorFlowVersion, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &TensorFlowVersion{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Gets TensorFlow Version.", + // "flatPath": "v1alpha1/projects/{projectsId}/locations/{locationsId}/tensorflowVersions/{tensorflowVersionsId}", + // "httpMethod": "GET", + // "id": "tpu.projects.locations.tensorflowVersions.get", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "The resource name.", + // "location": "path", + // "pattern": "^projects/[^/]+/locations/[^/]+/tensorflowVersions/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1alpha1/{+name}", + // "response": { + // "$ref": "TensorFlowVersion" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "tpu.projects.locations.tensorflowVersions.list": + +type ProjectsLocationsTensorflowVersionsListCall struct { + s *Service + parent string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// List: Lists TensorFlow versions supported by this API. +func (r *ProjectsLocationsTensorflowVersionsService) List(parent string) *ProjectsLocationsTensorflowVersionsListCall { + c := &ProjectsLocationsTensorflowVersionsListCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.parent = parent + return c +} + +// Filter sets the optional parameter "filter": List filter. +func (c *ProjectsLocationsTensorflowVersionsListCall) Filter(filter string) *ProjectsLocationsTensorflowVersionsListCall { + c.urlParams_.Set("filter", filter) + return c +} + +// OrderBy sets the optional parameter "orderBy": Sort results. +func (c *ProjectsLocationsTensorflowVersionsListCall) OrderBy(orderBy string) *ProjectsLocationsTensorflowVersionsListCall { + c.urlParams_.Set("orderBy", orderBy) + return c +} + +// PageSize sets the optional parameter "pageSize": The maximum number +// of items to return. +func (c *ProjectsLocationsTensorflowVersionsListCall) PageSize(pageSize int64) *ProjectsLocationsTensorflowVersionsListCall { + c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) + return c +} + +// PageToken sets the optional parameter "pageToken": The +// next_page_token value returned from a previous List request, if any. +func (c *ProjectsLocationsTensorflowVersionsListCall) PageToken(pageToken string) *ProjectsLocationsTensorflowVersionsListCall { + c.urlParams_.Set("pageToken", pageToken) + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsLocationsTensorflowVersionsListCall) Fields(s ...googleapi.Field) *ProjectsLocationsTensorflowVersionsListCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// IfNoneMatch sets the optional parameter which makes the operation +// fail if the object's ETag matches the given value. This is useful for +// getting updates only after the object has changed since the last +// request. Use googleapi.IsNotModified to check whether the response +// error from Do is the result of In-None-Match. +func (c *ProjectsLocationsTensorflowVersionsListCall) IfNoneMatch(entityTag string) *ProjectsLocationsTensorflowVersionsListCall { + c.ifNoneMatch_ = entityTag + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsLocationsTensorflowVersionsListCall) Context(ctx context.Context) *ProjectsLocationsTensorflowVersionsListCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsLocationsTensorflowVersionsListCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsLocationsTensorflowVersionsListCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + if c.ifNoneMatch_ != "" { + reqHeaders.Set("If-None-Match", c.ifNoneMatch_) + } + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v1alpha1/{+parent}/tensorflowVersions") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("GET", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "parent": c.parent, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "tpu.projects.locations.tensorflowVersions.list" call. +// Exactly one of *ListTensorFlowVersionsResponse or error will be +// non-nil. Any non-2xx status code is an error. Response headers are in +// either *ListTensorFlowVersionsResponse.ServerResponse.Header or (if a +// response was returned at all) in error.(*googleapi.Error).Header. Use +// googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *ProjectsLocationsTensorflowVersionsListCall) Do(opts ...googleapi.CallOption) (*ListTensorFlowVersionsResponse, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &ListTensorFlowVersionsResponse{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Lists TensorFlow versions supported by this API.", + // "flatPath": "v1alpha1/projects/{projectsId}/locations/{locationsId}/tensorflowVersions", + // "httpMethod": "GET", + // "id": "tpu.projects.locations.tensorflowVersions.list", + // "parameterOrder": [ + // "parent" + // ], + // "parameters": { + // "filter": { + // "description": "List filter.", + // "location": "query", + // "type": "string" + // }, + // "orderBy": { + // "description": "Sort results.", + // "location": "query", + // "type": "string" + // }, + // "pageSize": { + // "description": "The maximum number of items to return.", + // "format": "int32", + // "location": "query", + // "type": "integer" + // }, + // "pageToken": { + // "description": "The next_page_token value returned from a previous List request, if any.", + // "location": "query", + // "type": "string" + // }, + // "parent": { + // "description": "The parent resource name.", + // "location": "path", + // "pattern": "^projects/[^/]+/locations/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1alpha1/{+parent}/tensorflowVersions", + // "response": { + // "$ref": "ListTensorFlowVersionsResponse" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// Pages invokes f for each page of results. +// A non-nil error returned from f will halt the iteration. +// The provided context supersedes any context provided to the Context method. +func (c *ProjectsLocationsTensorflowVersionsListCall) Pages(ctx context.Context, f func(*ListTensorFlowVersionsResponse) error) error { + c.ctx_ = ctx + defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point + for { + x, err := c.Do() + if err != nil { + return err + } + if err := f(x); err != nil { + return err + } + if x.NextPageToken == "" { + return nil + } + c.PageToken(x.NextPageToken) + } +} diff --git a/vendor/google.golang.org/api/tracing/v2/tracing-gen.go b/vendor/google.golang.org/api/tracing/v2/tracing-gen.go index 8312508f1..d81231d8f 100644 --- a/vendor/google.golang.org/api/tracing/v2/tracing-gen.go +++ b/vendor/google.golang.org/api/tracing/v2/tracing-gen.go @@ -146,8 +146,8 @@ type Annotation struct { } func (s *Annotation) MarshalJSON() ([]byte, error) { - type noMethod Annotation - raw := noMethod(*s) + type NoMethod Annotation + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -181,8 +181,8 @@ type AttributeValue struct { } func (s *AttributeValue) MarshalJSON() ([]byte, error) { - type noMethod AttributeValue - raw := noMethod(*s) + type NoMethod AttributeValue + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -230,8 +230,8 @@ type Attributes struct { } func (s *Attributes) MarshalJSON() ([]byte, error) { - type noMethod Attributes - raw := noMethod(*s) + type NoMethod Attributes + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -259,8 +259,8 @@ type BatchWriteSpansRequest struct { } func (s *BatchWriteSpansRequest) MarshalJSON() ([]byte, error) { - type noMethod BatchWriteSpansRequest - raw := noMethod(*s) + type NoMethod BatchWriteSpansRequest + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -333,8 +333,8 @@ type Link struct { } func (s *Link) MarshalJSON() ([]byte, error) { - type noMethod Link - raw := noMethod(*s) + type NoMethod Link + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -369,8 +369,8 @@ type Links struct { } func (s *Links) MarshalJSON() ([]byte, error) { - type noMethod Links - raw := noMethod(*s) + type NoMethod Links + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -408,8 +408,8 @@ type ListSpansResponse struct { } func (s *ListSpansResponse) MarshalJSON() ([]byte, error) { - type noMethod ListSpansResponse - raw := noMethod(*s) + type NoMethod ListSpansResponse + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -447,8 +447,8 @@ type ListTracesResponse struct { } func (s *ListTracesResponse) MarshalJSON() ([]byte, error) { - type noMethod ListTracesResponse - raw := noMethod(*s) + type NoMethod ListTracesResponse + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -481,8 +481,8 @@ type Module struct { } func (s *Module) MarshalJSON() ([]byte, error) { - type noMethod Module - raw := noMethod(*s) + type NoMethod Module + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -533,8 +533,8 @@ type NetworkEvent struct { } func (s *NetworkEvent) MarshalJSON() ([]byte, error) { - type noMethod NetworkEvent - raw := noMethod(*s) + type NoMethod NetworkEvent + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -649,8 +649,8 @@ type Span struct { } func (s *Span) MarshalJSON() ([]byte, error) { - type noMethod Span - raw := noMethod(*s) + type NoMethod Span + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -705,8 +705,8 @@ type StackFrame struct { } func (s *StackFrame) MarshalJSON() ([]byte, error) { - type noMethod StackFrame - raw := noMethod(*s) + type NoMethod StackFrame + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -740,8 +740,8 @@ type StackFrames struct { } func (s *StackFrames) MarshalJSON() ([]byte, error) { - type noMethod StackFrames - raw := noMethod(*s) + type NoMethod StackFrames + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -782,8 +782,8 @@ type StackTrace struct { } func (s *StackTrace) MarshalJSON() ([]byte, error) { - type noMethod StackTrace - raw := noMethod(*s) + type NoMethod StackTrace + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -901,8 +901,8 @@ type Status struct { } func (s *Status) MarshalJSON() ([]byte, error) { - type noMethod Status - raw := noMethod(*s) + type NoMethod Status + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -936,8 +936,8 @@ type TimeEvent struct { } func (s *TimeEvent) MarshalJSON() ([]byte, error) { - type noMethod TimeEvent - raw := noMethod(*s) + type NoMethod TimeEvent + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -980,8 +980,8 @@ type TimeEvents struct { } func (s *TimeEvents) MarshalJSON() ([]byte, error) { - type noMethod TimeEvents - raw := noMethod(*s) + type NoMethod TimeEvents + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -1017,8 +1017,8 @@ type Trace struct { } func (s *Trace) MarshalJSON() ([]byte, error) { - type noMethod Trace - raw := noMethod(*s) + type NoMethod Trace + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -1054,8 +1054,8 @@ type TruncatableString struct { } func (s *TruncatableString) MarshalJSON() ([]byte, error) { - type noMethod TruncatableString - raw := noMethod(*s) + type NoMethod TruncatableString + raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -1167,7 +1167,7 @@ func (c *ProjectsTracesBatchWriteCall) Do(opts ...googleapi.CallOption) (*Empty, }, } target := &ret - if err := json.NewDecoder(res.Body).Decode(target); err != nil { + if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil @@ -1377,7 +1377,7 @@ func (c *ProjectsTracesListCall) Do(opts ...googleapi.CallOption) (*ListTracesRe }, } target := &ret - if err := json.NewDecoder(res.Body).Decode(target); err != nil { + if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil @@ -1579,7 +1579,7 @@ func (c *ProjectsTracesListSpansCall) Do(opts ...googleapi.CallOption) (*ListSpa }, } target := &ret - if err := json.NewDecoder(res.Body).Decode(target); err != nil { + if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil @@ -1738,7 +1738,7 @@ func (c *ProjectsTracesSpansCreateCall) Do(opts ...googleapi.CallOption) (*Span, }, } target := &ret - if err := json.NewDecoder(res.Body).Decode(target); err != nil { + if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil diff --git a/vendor/google.golang.org/api/translate/v2/translate-api.json b/vendor/google.golang.org/api/translate/v2/translate-api.json index 01219473c..3762d96f3 100644 --- a/vendor/google.golang.org/api/translate/v2/translate-api.json +++ b/vendor/google.golang.org/api/translate/v2/translate-api.json @@ -1,5 +1,4 @@ { - "canonicalName": "Translate", "auth": { "oauth2": { "scopes": { @@ -12,303 +11,314 @@ } } }, - "rootUrl": "https://translation.googleapis.com/", - "ownerDomain": "google.com", - "name": "translate", + "basePath": "/language/translate/", + "baseUrl": "https://translation.googleapis.com/language/translate/", "batchPath": "batch/translate", + "canonicalName": "Translate", + "description": "The Google Cloud Translation API lets websites and programs integrate with\n Google Translate programmatically.", + "discoveryVersion": "v1", + "documentationLink": "https://code.google.com/apis/language/translate/v2/getting_started.html", "features": [ "dataWrapper" ], - "title": "Google Cloud Translation API", - "ownerName": "Google", - "resources": { - "detections": { - "methods": { - "list": { - "response": { - "$ref": "DetectionsListResponse" - }, - "parameterOrder": [ - "q" - ], - "httpMethod": "GET", - "parameters": { - "q": { - "type": "string", - "required": true, - "repeated": true, - "location": "query", - "description": "The input text upon which to perform language detection. Repeat this\nparameter to perform language detection on multiple text inputs." - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-translation", - "https://www.googleapis.com/auth/cloud-platform" - ], - "path": "v2/detect", - "id": "language.detections.list", - "description": "Detects the language of text within a request." - }, - "detect": { - "description": "Detects the language of text within a request.", - "request": { - "$ref": "DetectLanguageRequest" - }, - "response": { - "$ref": "DetectionsListResponse" - }, - "parameterOrder": [], - "httpMethod": "POST", - "parameters": {}, - "scopes": [ - "https://www.googleapis.com/auth/cloud-translation", - "https://www.googleapis.com/auth/cloud-platform" - ], - "path": "v2/detect", - "id": "language.detections.detect" - } - } - }, - "languages": { - "methods": { - "list": { - "response": { - "$ref": "LanguagesListResponse" - }, - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-translation", - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "model": { - "location": "query", - "description": "The model type for which supported languages should be returned.", - "type": "string" - }, - "target": { - "location": "query", - "description": "The language to use to return localized, human readable names of supported\nlanguages.", - "type": "string" - } - }, - "id": "language.languages.list", - "path": "v2/languages", - "description": "Returns a list of supported languages for translation." - } - } - }, - "translations": { - "methods": { - "translate": { - "request": { - "$ref": "TranslateTextRequest" - }, - "description": "Translates input text, returning translated text.", - "response": { - "$ref": "TranslationsListResponse" - }, - "parameterOrder": [], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-translation", - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": {}, - "path": "v2", - "id": "language.translations.translate" - }, - "list": { - "path": "v2", - "id": "language.translations.list", - "description": "Translates input text, returning translated text.", - "response": { - "$ref": "TranslationsListResponse" - }, - "parameterOrder": [ - "q", - "target" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-translation", - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "source": { - "location": "query", - "description": "The language of the source text, set to one of the language codes listed in\nLanguage Support. If the source language is not specified, the API will\nattempt to identify the source language automatically and return it within\nthe response.", - "type": "string" - }, - "cid": { - "type": "string", - "repeated": true, - "location": "query", - "description": "The customization id for translate" - }, - "target": { - "location": "query", - "description": "The language to use for translation of the input text, set to one of the\nlanguage codes listed in Language Support.", - "type": "string", - "required": true - }, - "format": { - "location": "query", - "enum": [ - "html", - "text" - ], - "description": "The format of the source text, in either HTML (default) or plain-text. A\nvalue of \"html\" indicates HTML and a value of \"text\" indicates plain-text.", - "type": "string", - "enumDescriptions": [ - "Specifies the input is in HTML", - "Specifies the input is in plain textual format" - ] - }, - "model": { - "type": "string", - "location": "query", - "description": "The `model` type requested for this translation. Valid values are\nlisted in public documentation." - }, - "q": { - "location": "query", - "description": "The input text to translate. Repeat this parameter to perform translation\noperations on multiple text inputs.", - "type": "string", - "required": true, - "repeated": true - } - } - } - } - } + "icons": { + "x16": "https://www.google.com/images/icons/product/translate-16.png", + "x32": "https://www.google.com/images/icons/product/translate-32.png" }, + "id": "translate:v2", + "kind": "discovery#restDescription", + "name": "translate", + "ownerDomain": "google.com", + "ownerName": "Google", "parameters": { - "upload_protocol": { - "location": "query", - "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", - "type": "string" - }, - "prettyPrint": { - "location": "query", - "description": "Returns response with indentations and line breaks.", - "type": "boolean", - "default": "true" - }, - "fields": { - "type": "string", - "location": "query", - "description": "Selector specifying which fields to include in a partial response." - }, - "uploadType": { - "type": "string", - "location": "query", - "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\")." - }, "$.xgafv": { - "location": "query", + "description": "V1 error format.", "enum": [ "1", "2" ], - "description": "V1 error format.", - "type": "string", "enumDescriptions": [ "v1 error format", "v2 error format" - ] - }, - "callback": { - "type": "string", + ], "location": "query", - "description": "JSONP" + "type": "string" + }, + "access_token": { + "description": "OAuth access token.", + "location": "query", + "type": "string" }, "alt": { - "type": "string", + "default": "json", + "description": "Data format for response.", + "enum": [ + "json", + "media", + "proto" + ], "enumDescriptions": [ "Responses with Content-Type of application/json", "Media download with context-dependent Content-Type", "Responses with Content-Type of application/x-protobuf" ], "location": "query", - "description": "Data format for response.", - "default": "json", - "enum": [ - "json", - "media", - "proto" - ] + "type": "string" }, - "access_token": { + "bearer_token": { + "description": "OAuth bearer token.", + "location": "query", + "type": "string" + }, + "callback": { + "description": "JSONP", + "location": "query", + "type": "string" + }, + "fields": { + "description": "Selector specifying which fields to include in a partial response.", "location": "query", - "description": "OAuth access token.", "type": "string" }, "key": { - "type": "string", + "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", - "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." - }, - "quotaUser": { - "location": "query", - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", - "type": "string" - }, - "pp": { - "location": "query", - "description": "Pretty-print response.", - "type": "boolean", - "default": "true" - }, - "bearer_token": { - "location": "query", - "description": "OAuth bearer token.", "type": "string" }, "oauth_token": { - "location": "query", "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "pp": { + "default": "true", + "description": "Pretty-print response.", + "location": "query", + "type": "boolean" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", + "location": "query", + "type": "string" + }, + "uploadType": { + "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", + "location": "query", + "type": "string" + }, + "upload_protocol": { + "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", + "location": "query", "type": "string" } }, - "version": "v2", - "baseUrl": "https://translation.googleapis.com/language/translate/", - "kind": "discovery#restDescription", - "description": "The Google Cloud Translation API lets websites and programs integrate with\n Google Translate programmatically.", - "servicePath": "language/translate/", - "basePath": "/language/translate/", + "protocol": "rest", + "resources": { + "detections": { + "methods": { + "detect": { + "description": "Detects the language of text within a request.", + "httpMethod": "POST", + "id": "language.detections.detect", + "parameterOrder": [], + "parameters": {}, + "path": "v2/detect", + "request": { + "$ref": "DetectLanguageRequest" + }, + "response": { + "$ref": "DetectionsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-translation", + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Detects the language of text within a request.", + "httpMethod": "GET", + "id": "language.detections.list", + "parameterOrder": [ + "q" + ], + "parameters": { + "q": { + "description": "The input text upon which to perform language detection. Repeat this\nparameter to perform language detection on multiple text inputs.", + "location": "query", + "repeated": true, + "required": true, + "type": "string" + } + }, + "path": "v2/detect", + "response": { + "$ref": "DetectionsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-translation", + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + }, + "languages": { + "methods": { + "list": { + "description": "Returns a list of supported languages for translation.", + "httpMethod": "GET", + "id": "language.languages.list", + "parameters": { + "model": { + "description": "The model type for which supported languages should be returned.", + "location": "query", + "type": "string" + }, + "target": { + "description": "The language to use to return localized, human readable names of supported\nlanguages.", + "location": "query", + "type": "string" + } + }, + "path": "v2/languages", + "response": { + "$ref": "LanguagesListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-translation", + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + }, + "translations": { + "methods": { + "list": { + "description": "Translates input text, returning translated text.", + "httpMethod": "GET", + "id": "language.translations.list", + "parameterOrder": [ + "q", + "target" + ], + "parameters": { + "cid": { + "description": "The customization id for translate", + "location": "query", + "repeated": true, + "type": "string" + }, + "format": { + "description": "The format of the source text, in either HTML (default) or plain-text. A\nvalue of \"html\" indicates HTML and a value of \"text\" indicates plain-text.", + "enum": [ + "html", + "text" + ], + "enumDescriptions": [ + "Specifies the input is in HTML", + "Specifies the input is in plain textual format" + ], + "location": "query", + "type": "string" + }, + "model": { + "description": "The `model` type requested for this translation. Valid values are\nlisted in public documentation.", + "location": "query", + "type": "string" + }, + "q": { + "description": "The input text to translate. Repeat this parameter to perform translation\noperations on multiple text inputs.", + "location": "query", + "repeated": true, + "required": true, + "type": "string" + }, + "source": { + "description": "The language of the source text, set to one of the language codes listed in\nLanguage Support. If the source language is not specified, the API will\nattempt to identify the source language automatically and return it within\nthe response.", + "location": "query", + "type": "string" + }, + "target": { + "description": "The language to use for translation of the input text, set to one of the\nlanguage codes listed in Language Support.", + "location": "query", + "required": true, + "type": "string" + } + }, + "path": "v2", + "response": { + "$ref": "TranslationsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-translation", + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "translate": { + "description": "Translates input text, returning translated text.", + "httpMethod": "POST", + "id": "language.translations.translate", + "parameterOrder": [], + "parameters": {}, + "path": "v2", + "request": { + "$ref": "TranslateTextRequest" + }, + "response": { + "$ref": "TranslationsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-translation", + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + } + }, "revision": "20170525", - "documentationLink": "https://code.google.com/apis/language/translate/v2/getting_started.html", - "id": "translate:v2", - "discoveryVersion": "v1", + "rootUrl": "https://translation.googleapis.com/", "schemas": { - "TranslationsResource": { - "type": "object", + "DetectLanguageRequest": { + "description": "The request message for language detection.", + "id": "DetectLanguageRequest", "properties": { - "model": { - "type": "string", - "description": "The `model` type used for this translation. Valid values are\nlisted in public documentation. Can be different from requested `model`.\nPresent only if specific model type was explicitly requested." - }, - "translatedText": { - "type": "string", - "description": "Text translated into the target language." - }, - "detectedSourceLanguage": { - "type": "string", - "description": "The source language of the initial request, detected automatically, if\nno source language was passed within the initial request. If the\nsource language was passed, auto-detection of the language will not\noccur and this field will be empty." + "q": { + "description": "The input text upon which to perform language detection. Repeat this\nparameter to perform language detection on multiple text inputs.", + "items": { + "type": "string" + }, + "type": "array" } }, - "id": "TranslationsResource" + "type": "object" + }, + "DetectionsListResponse": { + "id": "DetectionsListResponse", + "properties": { + "detections": { + "description": "A detections contains detection results of several text", + "items": { + "$ref": "DetectionsResource" + }, + "type": "array" + } + }, + "type": "object" }, "DetectionsResource": { "description": "An array of languages which we detect for the given text The most likely language list first.", - "type": "array", + "id": "DetectionsResource", "items": { - "type": "object", "properties": { "confidence": { - "type": "number", "description": "The confidence of the detection result of this language.", - "format": "float" + "format": "float", + "type": "number" }, "isReliable": { "description": "A boolean to indicate is the language detection result reliable.", @@ -318,123 +328,113 @@ "description": "The language we detected.", "type": "string" } - } - }, - "id": "DetectionsResource" - }, - "TranslationsListResponse": { - "type": "object", - "properties": { - "translations": { - "description": "Translations contains list of translation results of given text", - "type": "array", - "items": { - "$ref": "TranslationsResource" - } - } - }, - "id": "TranslationsListResponse", - "description": "The main language translation response message." - }, - "TranslateTextRequest": { - "description": "The main translation request message for the Cloud Translation API.", - "type": "object", - "properties": { - "source": { - "description": "The language of the source text, set to one of the language codes listed in\nLanguage Support. If the source language is not specified, the API will\nattempt to identify the source language automatically and return it within\nthe response.", - "type": "string" }, - "model": { - "description": "The `model` type requested for this translation. Valid values are\nlisted in public documentation.", - "type": "string" - }, - "target": { - "type": "string", - "description": "The language to use for translation of the input text, set to one of the\nlanguage codes listed in Language Support." - }, - "q": { - "description": "The input text to translate. Repeat this parameter to perform translation\noperations on multiple text inputs.", - "type": "array", - "items": { - "type": "string" - } - }, - "format": { - "description": "The format of the source text, in either HTML (default) or plain-text. A\nvalue of \"html\" indicates HTML and a value of \"text\" indicates plain-text.", - "type": "string" - } + "type": "object" }, - "id": "TranslateTextRequest" - }, - "DetectLanguageRequest": { - "description": "The request message for language detection.", - "type": "object", - "properties": { - "q": { - "type": "array", - "items": { - "type": "string" - }, - "description": "The input text upon which to perform language detection. Repeat this\nparameter to perform language detection on multiple text inputs." - } - }, - "id": "DetectLanguageRequest" - }, - "LanguagesResource": { - "type": "object", - "properties": { - "language": { - "description": "Supported language code, generally consisting of its ISO 639-1\nidentifier. (E.g. 'en', 'ja'). In certain cases, BCP-47 codes including\nlanguage + region identifiers are returned (e.g. 'zh-TW' and 'zh-CH')", - "type": "string" - }, - "name": { - "type": "string", - "description": "Human readable name of the language localized to the target language." - } - }, - "id": "LanguagesResource" - }, - "DetectionsListResponse": { - "type": "object", - "properties": { - "detections": { - "type": "array", - "items": { - "$ref": "DetectionsResource" - }, - "description": "A detections contains detection results of several text" - } - }, - "id": "DetectionsListResponse" + "type": "array" }, "GetSupportedLanguagesRequest": { - "type": "object", + "description": "The request message for discovering supported languages.", + "id": "GetSupportedLanguagesRequest", "properties": { "target": { "description": "The language to use to return localized, human readable names of supported\nlanguages.", "type": "string" } }, - "id": "GetSupportedLanguagesRequest", - "description": "The request message for discovering supported languages." + "type": "object" }, "LanguagesListResponse": { - "type": "object", + "id": "LanguagesListResponse", "properties": { "languages": { "description": "List of source/target languages supported by the translation API. If target parameter is unspecified, the list is sorted by the ASCII code point order of the language code. If target parameter is specified, the list is sorted by the collation order of the language name in the target language.", - "type": "array", "items": { "$ref": "LanguagesResource" - } + }, + "type": "array" } }, - "id": "LanguagesListResponse" + "type": "object" + }, + "LanguagesResource": { + "id": "LanguagesResource", + "properties": { + "language": { + "description": "Supported language code, generally consisting of its ISO 639-1\nidentifier. (E.g. 'en', 'ja'). In certain cases, BCP-47 codes including\nlanguage + region identifiers are returned (e.g. 'zh-TW' and 'zh-CH')", + "type": "string" + }, + "name": { + "description": "Human readable name of the language localized to the target language.", + "type": "string" + } + }, + "type": "object" + }, + "TranslateTextRequest": { + "description": "The main translation request message for the Cloud Translation API.", + "id": "TranslateTextRequest", + "properties": { + "format": { + "description": "The format of the source text, in either HTML (default) or plain-text. A\nvalue of \"html\" indicates HTML and a value of \"text\" indicates plain-text.", + "type": "string" + }, + "model": { + "description": "The `model` type requested for this translation. Valid values are\nlisted in public documentation.", + "type": "string" + }, + "q": { + "description": "The input text to translate. Repeat this parameter to perform translation\noperations on multiple text inputs.", + "items": { + "type": "string" + }, + "type": "array" + }, + "source": { + "description": "The language of the source text, set to one of the language codes listed in\nLanguage Support. If the source language is not specified, the API will\nattempt to identify the source language automatically and return it within\nthe response.", + "type": "string" + }, + "target": { + "description": "The language to use for translation of the input text, set to one of the\nlanguage codes listed in Language Support.", + "type": "string" + } + }, + "type": "object" + }, + "TranslationsListResponse": { + "description": "The main language translation response message.", + "id": "TranslationsListResponse", + "properties": { + "translations": { + "description": "Translations contains list of translation results of given text", + "items": { + "$ref": "TranslationsResource" + }, + "type": "array" + } + }, + "type": "object" + }, + "TranslationsResource": { + "id": "TranslationsResource", + "properties": { + "detectedSourceLanguage": { + "description": "The source language of the initial request, detected automatically, if\nno source language was passed within the initial request. If the\nsource language was passed, auto-detection of the language will not\noccur and this field will be empty.", + "type": "string" + }, + "model": { + "description": "The `model` type used for this translation. Valid values are\nlisted in public documentation. Can be different from requested `model`.\nPresent only if specific model type was explicitly requested.", + "type": "string" + }, + "translatedText": { + "description": "Text translated into the target language.", + "type": "string" + } + }, + "type": "object" } }, - "icons": { - "x32": "https://www.google.com/images/icons/product/translate-32.png", - "x16": "https://www.google.com/images/icons/product/translate-16.png" - }, - "protocol": "rest" -} + "servicePath": "language/translate/", + "title": "Google Cloud Translation API", + "version": "v2" +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/transport/bytestream/client_test.go b/vendor/google.golang.org/api/transport/bytestream/client_test.go index 74047fc3f..513e748df 100644 --- a/vendor/google.golang.org/api/transport/bytestream/client_test.go +++ b/vendor/google.golang.org/api/transport/bytestream/client_test.go @@ -145,7 +145,7 @@ func TestClientRead(t *testing.T) { doubleCheckBuf := make([]byte, bufSize) n2, err2 := r.Read(doubleCheckBuf) if err2 != io.EOF { - t.Errorf("%s: read and got EOF, double-check: read %d bytes got err=%v", n2, err2) + t.Errorf("%s: read and got EOF, double-check: read %d bytes got err=%v", tc.name, n2, err2) continue } } diff --git a/vendor/google.golang.org/api/transport/dial.go b/vendor/google.golang.org/api/transport/dial.go index 91d832575..c4c37191b 100644 --- a/vendor/google.golang.org/api/transport/dial.go +++ b/vendor/google.golang.org/api/transport/dial.go @@ -21,10 +21,8 @@ import ( "net/http" "golang.org/x/net/context" - "golang.org/x/oauth2/google" "google.golang.org/grpc" - "google.golang.org/api/internal" "google.golang.org/api/option" gtransport "google.golang.org/api/transport/grpc" htransport "google.golang.org/api/transport/http" @@ -49,13 +47,3 @@ func DialGRPC(ctx context.Context, opts ...option.ClientOption) (*grpc.ClientCon func DialGRPCInsecure(ctx context.Context, opts ...option.ClientOption) (*grpc.ClientConn, error) { return gtransport.DialInsecure(ctx, opts...) } - -// Creds constructs a google.DefaultCredentials from the information in the options, -// or obtains the default credentials in the same way as google.FindDefaultCredentials. -func Creds(ctx context.Context, opts ...option.ClientOption) (*google.DefaultCredentials, error) { - var ds internal.DialSettings - for _, opt := range opts { - opt.Apply(&ds) - } - return internal.Creds(ctx, &ds) -} diff --git a/vendor/google.golang.org/api/transport/go19.go b/vendor/google.golang.org/api/transport/go19.go new file mode 100644 index 000000000..0177e5600 --- /dev/null +++ b/vendor/google.golang.org/api/transport/go19.go @@ -0,0 +1,34 @@ +// Copyright 2018 Google Inc. All Rights Reserved. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +// +build go1.9 + +package transport + +import ( + "golang.org/x/net/context" + "golang.org/x/oauth2/google" + "google.golang.org/api/internal" + "google.golang.org/api/option" +) + +// Creds constructs a google.Credentials from the information in the options, +// or obtains the default credentials in the same way as google.FindDefaultCredentials. +func Creds(ctx context.Context, opts ...option.ClientOption) (*google.Credentials, error) { + var ds internal.DialSettings + for _, opt := range opts { + opt.Apply(&ds) + } + return internal.Creds(ctx, &ds) +} diff --git a/vendor/google.golang.org/api/transport/grpc/dial.go b/vendor/google.golang.org/api/transport/grpc/dial.go index 4d0c346f3..2b8ed6b0b 100644 --- a/vendor/google.golang.org/api/transport/grpc/dial.go +++ b/vendor/google.golang.org/api/transport/grpc/dial.go @@ -75,6 +75,10 @@ func dial(ctx context.Context, insecure bool, opts []option.ClientOption) (*grpc // Use the Socket API on App Engine. grpcOpts = append(grpcOpts, appengineDialerHook(ctx)) } + // Add tracing, but before the other options, so that clients can override the + // gRPC stats handler. + // This assumes that gRPC options are processed in order, left to right. + grpcOpts = addOCStatsHandler(grpcOpts) grpcOpts = append(grpcOpts, o.GRPCDialOpts...) if o.UserAgent != "" { grpcOpts = append(grpcOpts, grpc.WithUserAgent(o.UserAgent)) diff --git a/vendor/google.golang.org/api/transport/grpc/go18.go b/vendor/google.golang.org/api/transport/grpc/go18.go new file mode 100644 index 000000000..a4b4a9945 --- /dev/null +++ b/vendor/google.golang.org/api/transport/grpc/go18.go @@ -0,0 +1,26 @@ +// Copyright 2018 Google Inc. All Rights Reserved. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +// +build go1.8 + +package grpc + +import ( + "go.opencensus.io/plugin/ocgrpc" + "google.golang.org/grpc" +) + +func addOCStatsHandler(opts []grpc.DialOption) []grpc.DialOption { + return append(opts, grpc.WithStatsHandler(&ocgrpc.ClientHandler{})) +} diff --git a/vendor/google.golang.org/api/transport/grpc/not_go18.go b/vendor/google.golang.org/api/transport/grpc/not_go18.go new file mode 100644 index 000000000..f509d8636 --- /dev/null +++ b/vendor/google.golang.org/api/transport/grpc/not_go18.go @@ -0,0 +1,21 @@ +// Copyright 2018 Google Inc. All Rights Reserved. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +// +build !go1.8 + +package grpc + +import "google.golang.org/grpc" + +func addOCStatsHandler(opts []grpc.DialOption) []grpc.DialOption { return opts } diff --git a/vendor/google.golang.org/api/transport/http/dial.go b/vendor/google.golang.org/api/transport/http/dial.go index eda6e5edd..df34c6810 100644 --- a/vendor/google.golang.org/api/transport/http/dial.go +++ b/vendor/google.golang.org/api/transport/http/dial.go @@ -46,34 +46,31 @@ func NewClient(ctx context.Context, opts ...option.ClientOption) (*http.Client, if o.HTTPClient != nil { return o.HTTPClient, o.Endpoint, nil } - uat := userAgentTransport{ - base: baseTransport(ctx), + trans := baseTransport(ctx) + trans = userAgentTransport{ + base: trans, userAgent: o.UserAgent, } - var hc *http.Client + trans = addOCTransport(trans) switch { case o.NoAuth: - hc = &http.Client{Transport: uat} + // Do nothing. case o.APIKey != "": - hc = &http.Client{ - Transport: &transport.APIKey{ - Key: o.APIKey, - Transport: uat, - }, + trans = &transport.APIKey{ + Transport: trans, + Key: o.APIKey, } default: creds, err := internal.Creds(ctx, &o) if err != nil { return nil, "", err } - hc = &http.Client{ - Transport: &oauth2.Transport{ - Source: creds.TokenSource, - Base: uat, - }, + trans = &oauth2.Transport{ + Base: trans, + Source: creds.TokenSource, } } - return hc, o.Endpoint, nil + return &http.Client{Transport: trans}, o.Endpoint, nil } type userAgentTransport struct { diff --git a/vendor/google.golang.org/api/transport/http/go18.go b/vendor/google.golang.org/api/transport/http/go18.go new file mode 100644 index 000000000..1d4bb8e7f --- /dev/null +++ b/vendor/google.golang.org/api/transport/http/go18.go @@ -0,0 +1,31 @@ +// Copyright 2018 Google Inc. All Rights Reserved. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +// +build go1.8 + +package http + +import ( + "net/http" + + "go.opencensus.io/exporter/stackdriver/propagation" + "go.opencensus.io/plugin/ochttp" +) + +func addOCTransport(trans http.RoundTripper) http.RoundTripper { + return &ochttp.Transport{ + Base: trans, + Propagation: &propagation.HTTPFormat{}, + } +} diff --git a/vendor/google.golang.org/api/transport/http/not_go18.go b/vendor/google.golang.org/api/transport/http/not_go18.go new file mode 100644 index 000000000..628a21a84 --- /dev/null +++ b/vendor/google.golang.org/api/transport/http/not_go18.go @@ -0,0 +1,21 @@ +// Copyright 2018 Google Inc. All Rights Reserved. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +// +build !go1.8 + +package http + +import "net/http" + +func addOCTransport(trans http.RoundTripper) http.RoundTripper { return trans } diff --git a/vendor/google.golang.org/api/transport/not_go19.go b/vendor/google.golang.org/api/transport/not_go19.go new file mode 100644 index 000000000..4489bc9b6 --- /dev/null +++ b/vendor/google.golang.org/api/transport/not_go19.go @@ -0,0 +1,34 @@ +// Copyright 2018 Google Inc. All Rights Reserved. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +// +build !go1.9 + +package transport + +import ( + "golang.org/x/net/context" + "golang.org/x/oauth2/google" + "google.golang.org/api/internal" + "google.golang.org/api/option" +) + +// Creds constructs a google.DefaultCredentials from the information in the options, +// or obtains the default credentials in the same way as google.FindDefaultCredentials. +func Creds(ctx context.Context, opts ...option.ClientOption) (*google.DefaultCredentials, error) { + var ds internal.DialSettings + for _, opt := range opts { + opt.Apply(&ds) + } + return internal.Creds(ctx, &ds) +} diff --git a/vendor/google.golang.org/api/urlshortener/v1/urlshortener-api.json b/vendor/google.golang.org/api/urlshortener/v1/urlshortener-api.json index 9102c6297..df4612b28 100644 --- a/vendor/google.golang.org/api/urlshortener/v1/urlshortener-api.json +++ b/vendor/google.golang.org/api/urlshortener/v1/urlshortener-api.json @@ -1,319 +1,319 @@ { - "kind": "discovery#restDescription", - "etag": "\"YWOzh2SDasdU84ArJnpYek-OMdg/OETTXb_C37OrYG6Z2ykB_lpjNQE\"", - "discoveryVersion": "v1", - "id": "urlshortener:v1", - "name": "urlshortener", - "version": "v1", - "revision": "20150519", - "title": "URL Shortener API", - "description": "Lets you create, inspect, and manage goo.gl short URLs", - "ownerDomain": "google.com", - "ownerName": "Google", - "icons": { - "x16": "https://www.gstatic.com/images/branding/product/1x/googleg_16dp.png", - "x32": "https://www.gstatic.com/images/branding/product/1x/googleg_32dp.png" - }, - "documentationLink": "https://developers.google.com/url-shortener/v1/getting_started", - "protocol": "rest", - "baseUrl": "https://www.googleapis.com/urlshortener/v1/", - "basePath": "/urlshortener/v1/", - "rootUrl": "https://www.googleapis.com/", - "servicePath": "urlshortener/v1/", - "batchPath": "batch/urlshortener/v1", - "parameters": { - "alt": { - "type": "string", - "description": "Data format for the response.", - "default": "json", - "enum": [ - "json" - ], - "enumDescriptions": [ - "Responses with Content-Type of application/json" - ], - "location": "query" - }, - "fields": { - "type": "string", - "description": "Selector specifying which fields to include in a partial response.", - "location": "query" - }, - "key": { - "type": "string", - "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" - }, - "oauth_token": { - "type": "string", - "description": "OAuth 2.0 token for the current user.", - "location": "query" - }, - "prettyPrint": { - "type": "boolean", - "description": "Returns response with indentations and line breaks.", - "default": "true", - "location": "query" - }, - "quotaUser": { - "type": "string", - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", - "location": "query" - }, - "userIp": { - "type": "string", - "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", - "location": "query" - } - }, - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/urlshortener": { - "description": "Manage your goo.gl short URLs" - } - } - } - }, - "schemas": { - "AnalyticsSnapshot": { - "id": "AnalyticsSnapshot", - "type": "object", - "properties": { - "browsers": { - "type": "array", - "description": "Top browsers, e.g. \"Chrome\"; sorted by (descending) click counts. Only present if this data is available.", - "items": { - "$ref": "StringCount" - } - }, - "countries": { - "type": "array", - "description": "Top countries (expressed as country codes), e.g. \"US\" or \"DE\"; sorted by (descending) click counts. Only present if this data is available.", - "items": { - "$ref": "StringCount" - } - }, - "longUrlClicks": { - "type": "string", - "description": "Number of clicks on all goo.gl short URLs pointing to this long URL.", - "format": "int64" - }, - "platforms": { - "type": "array", - "description": "Top platforms or OSes, e.g. \"Windows\"; sorted by (descending) click counts. Only present if this data is available.", - "items": { - "$ref": "StringCount" - } - }, - "referrers": { - "type": "array", - "description": "Top referring hosts, e.g. \"www.google.com\"; sorted by (descending) click counts. Only present if this data is available.", - "items": { - "$ref": "StringCount" - } - }, - "shortUrlClicks": { - "type": "string", - "description": "Number of clicks on this short URL.", - "format": "int64" - } - } - }, - "AnalyticsSummary": { - "id": "AnalyticsSummary", - "type": "object", - "properties": { - "allTime": { - "$ref": "AnalyticsSnapshot", - "description": "Click analytics over all time." - }, - "day": { - "$ref": "AnalyticsSnapshot", - "description": "Click analytics over the last day." - }, - "month": { - "$ref": "AnalyticsSnapshot", - "description": "Click analytics over the last month." - }, - "twoHours": { - "$ref": "AnalyticsSnapshot", - "description": "Click analytics over the last two hours." - }, - "week": { - "$ref": "AnalyticsSnapshot", - "description": "Click analytics over the last week." - } - } - }, - "StringCount": { - "id": "StringCount", - "type": "object", - "properties": { - "count": { - "type": "string", - "description": "Number of clicks for this top entry, e.g. for this particular country or browser.", - "format": "int64" - }, - "id": { - "type": "string", - "description": "Label assigned to this top entry, e.g. \"US\" or \"Chrome\"." - } - } - }, - "Url": { - "id": "Url", - "type": "object", - "properties": { - "analytics": { - "$ref": "AnalyticsSummary", - "description": "A summary of the click analytics for the short and long URL. Might not be present if not requested or currently unavailable." - }, - "created": { - "type": "string", - "description": "Time the short URL was created; ISO 8601 representation using the yyyy-MM-dd'T'HH:mm:ss.SSSZZ format, e.g. \"2010-10-14T19:01:24.944+00:00\"." - }, - "id": { - "type": "string", - "description": "Short URL, e.g. \"http://goo.gl/l6MS\"." - }, - "kind": { - "type": "string", - "description": "The fixed string \"urlshortener#url\".", - "default": "urlshortener#url" - }, - "longUrl": { - "type": "string", - "description": "Long URL, e.g. \"http://www.google.com/\". Might not be present if the status is \"REMOVED\"." - }, - "status": { - "type": "string", - "description": "Status of the target URL. Possible values: \"OK\", \"MALWARE\", \"PHISHING\", or \"REMOVED\". A URL might be marked \"REMOVED\" if it was flagged as spam, for example." - } - } - }, - "UrlHistory": { - "id": "UrlHistory", - "type": "object", - "properties": { - "items": { - "type": "array", - "description": "A list of URL resources.", - "items": { - "$ref": "Url" - } - }, - "itemsPerPage": { - "type": "integer", - "description": "Number of items returned with each full \"page\" of results. Note that the last page could have fewer items than the \"itemsPerPage\" value.", - "format": "int32" - }, - "kind": { - "type": "string", - "description": "The fixed string \"urlshortener#urlHistory\".", - "default": "urlshortener#urlHistory" - }, - "nextPageToken": { - "type": "string", - "description": "A token to provide to get the next page of results." - }, - "totalItems": { - "type": "integer", - "description": "Total number of short URLs associated with this user (may be approximate).", - "format": "int32" - } - } - } - }, - "resources": { - "url": { - "methods": { - "get": { - "id": "urlshortener.url.get", - "path": "url", - "httpMethod": "GET", - "description": "Expands a short URL or gets creation time and analytics.", - "parameters": { - "projection": { - "type": "string", - "description": "Additional information to return.", - "enum": [ - "ANALYTICS_CLICKS", - "ANALYTICS_TOP_STRINGS", - "FULL" - ], - "enumDescriptions": [ - "Returns only click counts.", - "Returns only top string counts.", - "Returns the creation timestamp and all available analytics." - ], - "location": "query" - }, - "shortUrl": { - "type": "string", - "description": "The short URL, including the protocol.", - "required": true, - "location": "query" + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/urlshortener": { + "description": "Manage your goo.gl short URLs" + } } - }, - "parameterOrder": [ - "shortUrl" - ], - "response": { - "$ref": "Url" - }, - "scopes": [ - "https://www.googleapis.com/auth/urlshortener" - ] - }, - "insert": { - "id": "urlshortener.url.insert", - "path": "url", - "httpMethod": "POST", - "description": "Creates a new short URL.", - "request": { - "$ref": "Url" - }, - "response": { - "$ref": "Url" - }, - "scopes": [ - "https://www.googleapis.com/auth/urlshortener" - ] - }, - "list": { - "id": "urlshortener.url.list", - "path": "url/history", - "httpMethod": "GET", - "description": "Retrieves a list of URLs shortened by a user.", - "parameters": { - "projection": { - "type": "string", - "description": "Additional information to return.", - "enum": [ - "ANALYTICS_CLICKS", - "FULL" - ], - "enumDescriptions": [ - "Returns short URL click counts.", - "Returns short URL click counts." - ], - "location": "query" - }, - "start-token": { - "type": "string", - "description": "Token for requesting successive pages of results.", - "location": "query" - } - }, - "response": { - "$ref": "UrlHistory" - }, - "scopes": [ - "https://www.googleapis.com/auth/urlshortener" - ] } - } - } - } -} + }, + "basePath": "/urlshortener/v1/", + "baseUrl": "https://www.googleapis.com/urlshortener/v1/", + "batchPath": "batch/urlshortener/v1", + "description": "Lets you create, inspect, and manage goo.gl short URLs", + "discoveryVersion": "v1", + "documentationLink": "https://developers.google.com/url-shortener/v1/getting_started", + "etag": "\"-iA1DTNe4s-I6JZXPt1t1Ypy8IU/OETTXb_C37OrYG6Z2ykB_lpjNQE\"", + "icons": { + "x16": "https://www.gstatic.com/images/branding/product/1x/googleg_16dp.png", + "x32": "https://www.gstatic.com/images/branding/product/1x/googleg_32dp.png" + }, + "id": "urlshortener:v1", + "kind": "discovery#restDescription", + "name": "urlshortener", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "alt": { + "default": "json", + "description": "Data format for the response.", + "enum": [ + "json" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json" + ], + "location": "query", + "type": "string" + }, + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "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.", + "location": "query", + "type": "string" + }, + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", + "location": "query", + "type": "string" + }, + "userIp": { + "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", + "location": "query", + "type": "string" + } + }, + "protocol": "rest", + "resources": { + "url": { + "methods": { + "get": { + "description": "Expands a short URL or gets creation time and analytics.", + "httpMethod": "GET", + "id": "urlshortener.url.get", + "parameterOrder": [ + "shortUrl" + ], + "parameters": { + "projection": { + "description": "Additional information to return.", + "enum": [ + "ANALYTICS_CLICKS", + "ANALYTICS_TOP_STRINGS", + "FULL" + ], + "enumDescriptions": [ + "Returns only click counts.", + "Returns only top string counts.", + "Returns the creation timestamp and all available analytics." + ], + "location": "query", + "type": "string" + }, + "shortUrl": { + "description": "The short URL, including the protocol.", + "location": "query", + "required": true, + "type": "string" + } + }, + "path": "url", + "response": { + "$ref": "Url" + }, + "scopes": [ + "https://www.googleapis.com/auth/urlshortener" + ] + }, + "insert": { + "description": "Creates a new short URL.", + "httpMethod": "POST", + "id": "urlshortener.url.insert", + "path": "url", + "request": { + "$ref": "Url" + }, + "response": { + "$ref": "Url" + }, + "scopes": [ + "https://www.googleapis.com/auth/urlshortener" + ] + }, + "list": { + "description": "Retrieves a list of URLs shortened by a user.", + "httpMethod": "GET", + "id": "urlshortener.url.list", + "parameters": { + "projection": { + "description": "Additional information to return.", + "enum": [ + "ANALYTICS_CLICKS", + "FULL" + ], + "enumDescriptions": [ + "Returns short URL click counts.", + "Returns short URL click counts." + ], + "location": "query", + "type": "string" + }, + "start-token": { + "description": "Token for requesting successive pages of results.", + "location": "query", + "type": "string" + } + }, + "path": "url/history", + "response": { + "$ref": "UrlHistory" + }, + "scopes": [ + "https://www.googleapis.com/auth/urlshortener" + ] + } + } + } + }, + "revision": "20150519", + "rootUrl": "https://www.googleapis.com/", + "schemas": { + "AnalyticsSnapshot": { + "id": "AnalyticsSnapshot", + "properties": { + "browsers": { + "description": "Top browsers, e.g. \"Chrome\"; sorted by (descending) click counts. Only present if this data is available.", + "items": { + "$ref": "StringCount" + }, + "type": "array" + }, + "countries": { + "description": "Top countries (expressed as country codes), e.g. \"US\" or \"DE\"; sorted by (descending) click counts. Only present if this data is available.", + "items": { + "$ref": "StringCount" + }, + "type": "array" + }, + "longUrlClicks": { + "description": "Number of clicks on all goo.gl short URLs pointing to this long URL.", + "format": "int64", + "type": "string" + }, + "platforms": { + "description": "Top platforms or OSes, e.g. \"Windows\"; sorted by (descending) click counts. Only present if this data is available.", + "items": { + "$ref": "StringCount" + }, + "type": "array" + }, + "referrers": { + "description": "Top referring hosts, e.g. \"www.google.com\"; sorted by (descending) click counts. Only present if this data is available.", + "items": { + "$ref": "StringCount" + }, + "type": "array" + }, + "shortUrlClicks": { + "description": "Number of clicks on this short URL.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "AnalyticsSummary": { + "id": "AnalyticsSummary", + "properties": { + "allTime": { + "$ref": "AnalyticsSnapshot", + "description": "Click analytics over all time." + }, + "day": { + "$ref": "AnalyticsSnapshot", + "description": "Click analytics over the last day." + }, + "month": { + "$ref": "AnalyticsSnapshot", + "description": "Click analytics over the last month." + }, + "twoHours": { + "$ref": "AnalyticsSnapshot", + "description": "Click analytics over the last two hours." + }, + "week": { + "$ref": "AnalyticsSnapshot", + "description": "Click analytics over the last week." + } + }, + "type": "object" + }, + "StringCount": { + "id": "StringCount", + "properties": { + "count": { + "description": "Number of clicks for this top entry, e.g. for this particular country or browser.", + "format": "int64", + "type": "string" + }, + "id": { + "description": "Label assigned to this top entry, e.g. \"US\" or \"Chrome\".", + "type": "string" + } + }, + "type": "object" + }, + "Url": { + "id": "Url", + "properties": { + "analytics": { + "$ref": "AnalyticsSummary", + "description": "A summary of the click analytics for the short and long URL. Might not be present if not requested or currently unavailable." + }, + "created": { + "description": "Time the short URL was created; ISO 8601 representation using the yyyy-MM-dd'T'HH:mm:ss.SSSZZ format, e.g. \"2010-10-14T19:01:24.944+00:00\".", + "type": "string" + }, + "id": { + "description": "Short URL, e.g. \"http://goo.gl/l6MS\".", + "type": "string" + }, + "kind": { + "default": "urlshortener#url", + "description": "The fixed string \"urlshortener#url\".", + "type": "string" + }, + "longUrl": { + "description": "Long URL, e.g. \"http://www.google.com/\". Might not be present if the status is \"REMOVED\".", + "type": "string" + }, + "status": { + "description": "Status of the target URL. Possible values: \"OK\", \"MALWARE\", \"PHISHING\", or \"REMOVED\". A URL might be marked \"REMOVED\" if it was flagged as spam, for example.", + "type": "string" + } + }, + "type": "object" + }, + "UrlHistory": { + "id": "UrlHistory", + "properties": { + "items": { + "description": "A list of URL resources.", + "items": { + "$ref": "Url" + }, + "type": "array" + }, + "itemsPerPage": { + "description": "Number of items returned with each full \"page\" of results. Note that the last page could have fewer items than the \"itemsPerPage\" value.", + "format": "int32", + "type": "integer" + }, + "kind": { + "default": "urlshortener#urlHistory", + "description": "The fixed string \"urlshortener#urlHistory\".", + "type": "string" + }, + "nextPageToken": { + "description": "A token to provide to get the next page of results.", + "type": "string" + }, + "totalItems": { + "description": "Total number of short URLs associated with this user (may be approximate).", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + } + }, + "servicePath": "urlshortener/v1/", + "title": "URL Shortener API", + "version": "v1" +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/vault/v1/vault-api.json b/vendor/google.golang.org/api/vault/v1/vault-api.json index 4f985cae5..dbfecf501 100644 --- a/vendor/google.golang.org/api/vault/v1/vault-api.json +++ b/vendor/google.golang.org/api/vault/v1/vault-api.json @@ -1,1031 +1,4 @@ { - "title": "Google Vault API", - "ownerName": "Google", - "resources": { - "matters": { - "methods": { - "update": { - "path": "v1/matters/{matterId}", - "id": "vault.matters.update", - "description": "Updates the specified matter.\nThis updates only the name and description of the matter, identified by\nmatter id. Changes to any other fields are ignored.\nReturns the default view of the matter.", - "request": { - "$ref": "Matter" - }, - "response": { - "$ref": "Matter" - }, - "parameterOrder": [ - "matterId" - ], - "httpMethod": "PUT", - "scopes": [ - "https://www.googleapis.com/auth/ediscovery" - ], - "parameters": { - "matterId": { - "location": "path", - "description": "The matter ID.", - "required": true, - "type": "string" - } - }, - "flatPath": "v1/matters/{matterId}" - }, - "delete": { - "parameters": { - "matterId": { - "description": "The matter ID", - "required": true, - "type": "string", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/ediscovery" - ], - "flatPath": "v1/matters/{matterId}", - "id": "vault.matters.delete", - "path": "v1/matters/{matterId}", - "description": "Deletes the specified matter. Returns matter with updated state.", - "httpMethod": "DELETE", - "response": { - "$ref": "Matter" - }, - "parameterOrder": [ - "matterId" - ] - }, - "addPermissions": { - "response": { - "$ref": "MatterPermission" - }, - "parameterOrder": [ - "matterId" - ], - "httpMethod": "POST", - "parameters": { - "matterId": { - "required": true, - "type": "string", - "location": "path", - "description": "The matter ID." - } - }, - "scopes": [ - "https://www.googleapis.com/auth/ediscovery" - ], - "flatPath": "v1/matters/{matterId}:addPermissions", - "path": "v1/matters/{matterId}:addPermissions", - "id": "vault.matters.addPermissions", - "request": { - "$ref": "AddMatterPermissionsRequest" - }, - "description": "Adds an account as a matter collaborator." - }, - "list": { - "description": "Lists matters the user has access to.", - "httpMethod": "GET", - "parameterOrder": [], - "response": { - "$ref": "ListMattersResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/ediscovery", - "https://www.googleapis.com/auth/ediscovery.readonly" - ], - "parameters": { - "state": { - "location": "query", - "enum": [ - "STATE_UNSPECIFIED", - "OPEN", - "CLOSED", - "DELETED" - ], - "description": "If set, list only matters with that specific state. The default is listing\nmatters of all states.", - "type": "string" - }, - "pageToken": { - "type": "string", - "location": "query", - "description": "The pagination token as returned in the response." - }, - "pageSize": { - "location": "query", - "description": "The number of matters to return in the response.\nDefault and maximum are 100.", - "format": "int32", - "type": "integer" - }, - "view": { - "location": "query", - "enum": [ - "VIEW_UNSPECIFIED", - "BASIC", - "FULL" - ], - "description": "Specifies which parts of the matter to return in response.", - "type": "string" - } - }, - "flatPath": "v1/matters", - "id": "vault.matters.list", - "path": "v1/matters" - }, - "create": { - "parameters": {}, - "scopes": [ - "https://www.googleapis.com/auth/ediscovery" - ], - "flatPath": "v1/matters", - "path": "v1/matters", - "id": "vault.matters.create", - "request": { - "$ref": "Matter" - }, - "description": "Creates a new matter with the given name and description. The initial state\nis open, and the owner is the method caller. Returns the created matter\nwith default view.", - "response": { - "$ref": "Matter" - }, - "parameterOrder": [], - "httpMethod": "POST" - }, - "reopen": { - "response": { - "$ref": "ReopenMatterResponse" - }, - "parameterOrder": [ - "matterId" - ], - "httpMethod": "POST", - "parameters": { - "matterId": { - "location": "path", - "description": "The matter ID.", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/ediscovery" - ], - "flatPath": "v1/matters/{matterId}:reopen", - "path": "v1/matters/{matterId}:reopen", - "id": "vault.matters.reopen", - "request": { - "$ref": "ReopenMatterRequest" - }, - "description": "Reopens the specified matter. Returns matter with updated state." - }, - "removePermissions": { - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "matterId" - ], - "httpMethod": "POST", - "parameters": { - "matterId": { - "description": "The matter ID.", - "required": true, - "type": "string", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/ediscovery" - ], - "flatPath": "v1/matters/{matterId}:removePermissions", - "path": "v1/matters/{matterId}:removePermissions", - "id": "vault.matters.removePermissions", - "request": { - "$ref": "RemoveMatterPermissionsRequest" - }, - "description": "Removes an account as a matter collaborator." - }, - "close": { - "description": "Closes the specified matter. Returns matter with updated state.", - "request": { - "$ref": "CloseMatterRequest" - }, - "response": { - "$ref": "CloseMatterResponse" - }, - "parameterOrder": [ - "matterId" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/ediscovery" - ], - "parameters": { - "matterId": { - "location": "path", - "description": "The matter ID.", - "required": true, - "type": "string" - } - }, - "flatPath": "v1/matters/{matterId}:close", - "path": "v1/matters/{matterId}:close", - "id": "vault.matters.close" - }, - "undelete": { - "description": "Undeletes the specified matter. Returns matter with updated state.", - "request": { - "$ref": "UndeleteMatterRequest" - }, - "response": { - "$ref": "Matter" - }, - "parameterOrder": [ - "matterId" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/ediscovery" - ], - "parameters": { - "matterId": { - "description": "The matter ID.", - "required": true, - "type": "string", - "location": "path" - } - }, - "flatPath": "v1/matters/{matterId}:undelete", - "path": "v1/matters/{matterId}:undelete", - "id": "vault.matters.undelete" - }, - "get": { - "httpMethod": "GET", - "response": { - "$ref": "Matter" - }, - "parameterOrder": [ - "matterId" - ], - "parameters": { - "matterId": { - "description": "The matter ID.", - "required": true, - "type": "string", - "location": "path" - }, - "view": { - "type": "string", - "location": "query", - "enum": [ - "VIEW_UNSPECIFIED", - "BASIC", - "FULL" - ], - "description": "Specifies which parts of the Matter to return in the response." - } - }, - "scopes": [ - "https://www.googleapis.com/auth/ediscovery", - "https://www.googleapis.com/auth/ediscovery.readonly" - ], - "flatPath": "v1/matters/{matterId}", - "id": "vault.matters.get", - "path": "v1/matters/{matterId}", - "description": "Gets the specified matter." - } - }, - "resources": { - "holds": { - "methods": { - "get": { - "description": "Gets a hold by ID.", - "httpMethod": "GET", - "parameterOrder": [ - "matterId", - "holdId" - ], - "response": { - "$ref": "Hold" - }, - "parameters": { - "holdId": { - "location": "path", - "description": "The hold ID.", - "required": true, - "type": "string" - }, - "matterId": { - "description": "The matter ID.", - "required": true, - "type": "string", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/ediscovery", - "https://www.googleapis.com/auth/ediscovery.readonly" - ], - "flatPath": "v1/matters/{matterId}/holds/{holdId}", - "id": "vault.matters.holds.get", - "path": "v1/matters/{matterId}/holds/{holdId}" - }, - "list": { - "response": { - "$ref": "ListHoldsResponse" - }, - "parameterOrder": [ - "matterId" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/ediscovery", - "https://www.googleapis.com/auth/ediscovery.readonly" - ], - "parameters": { - "matterId": { - "required": true, - "type": "string", - "location": "path", - "description": "The matter ID." - }, - "pageToken": { - "description": "The pagination token as returned in the response.\nAn empty token means start from the beginning.", - "type": "string", - "location": "query" - }, - "pageSize": { - "location": "query", - "description": "The number of holds to return in the response, between 0 and 100 inclusive.\nLeaving this empty, or as 0, is the same as page_size = 100.", - "format": "int32", - "type": "integer" - } - }, - "flatPath": "v1/matters/{matterId}/holds", - "path": "v1/matters/{matterId}/holds", - "id": "vault.matters.holds.list", - "description": "Lists holds within a matter. An empty page token in ListHoldsResponse\ndenotes no more holds to list." - }, - "update": { - "request": { - "$ref": "Hold" - }, - "description": "Updates the OU and/or query parameters of a hold. You cannot add accounts\nto a hold that covers an OU, nor can you add OUs to a hold that covers\nindividual accounts. Accounts listed in the hold will be ignored.", - "httpMethod": "PUT", - "parameterOrder": [ - "matterId", - "holdId" - ], - "response": { - "$ref": "Hold" - }, - "parameters": { - "holdId": { - "location": "path", - "description": "The ID of the hold.", - "required": true, - "type": "string" - }, - "matterId": { - "description": "The matter ID.", - "required": true, - "type": "string", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/ediscovery" - ], - "flatPath": "v1/matters/{matterId}/holds/{holdId}", - "id": "vault.matters.holds.update", - "path": "v1/matters/{matterId}/holds/{holdId}" - }, - "create": { - "request": { - "$ref": "Hold" - }, - "description": "Creates a hold in the given matter.", - "response": { - "$ref": "Hold" - }, - "parameterOrder": [ - "matterId" - ], - "httpMethod": "POST", - "parameters": { - "matterId": { - "location": "path", - "description": "The matter ID.", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/ediscovery" - ], - "flatPath": "v1/matters/{matterId}/holds", - "path": "v1/matters/{matterId}/holds", - "id": "vault.matters.holds.create" - }, - "delete": { - "description": "Removes a hold by ID. This will release any HeldAccounts on this Hold.", - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "matterId", - "holdId" - ], - "httpMethod": "DELETE", - "parameters": { - "matterId": { - "location": "path", - "description": "The matter ID.", - "required": true, - "type": "string" - }, - "holdId": { - "description": "The hold ID.", - "required": true, - "type": "string", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/ediscovery" - ], - "flatPath": "v1/matters/{matterId}/holds/{holdId}", - "path": "v1/matters/{matterId}/holds/{holdId}", - "id": "vault.matters.holds.delete" - } - }, - "resources": { - "accounts": { - "methods": { - "delete": { - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "matterId", - "holdId", - "accountId" - ], - "httpMethod": "DELETE", - "scopes": [ - "https://www.googleapis.com/auth/ediscovery" - ], - "parameters": { - "holdId": { - "description": "The hold ID.", - "required": true, - "type": "string", - "location": "path" - }, - "accountId": { - "description": "The ID of the account to remove from the hold.", - "required": true, - "type": "string", - "location": "path" - }, - "matterId": { - "required": true, - "type": "string", - "location": "path", - "description": "The matter ID." - } - }, - "flatPath": "v1/matters/{matterId}/holds/{holdId}/accounts/{accountId}", - "path": "v1/matters/{matterId}/holds/{holdId}/accounts/{accountId}", - "id": "vault.matters.holds.accounts.delete", - "description": "Removes a HeldAccount from a hold. If this request leaves the hold with\nno held accounts, the hold will not apply to any accounts." - }, - "list": { - "description": "Lists HeldAccounts for a hold. This will only list individually specified\nheld accounts. If the hold is on an OU, then use\n\u003ca href=\"https://developers.google.com/admin-sdk/\"\u003eAdmin SDK\u003c/a\u003e\nto enumerate its members.", - "response": { - "$ref": "ListHeldAccountsResponse" - }, - "parameterOrder": [ - "matterId", - "holdId" - ], - "httpMethod": "GET", - "parameters": { - "holdId": { - "location": "path", - "description": "The hold ID.", - "required": true, - "type": "string" - }, - "matterId": { - "location": "path", - "description": "The matter ID.", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/ediscovery", - "https://www.googleapis.com/auth/ediscovery.readonly" - ], - "flatPath": "v1/matters/{matterId}/holds/{holdId}/accounts", - "path": "v1/matters/{matterId}/holds/{holdId}/accounts", - "id": "vault.matters.holds.accounts.list" - }, - "create": { - "request": { - "$ref": "HeldAccount" - }, - "description": "Adds a HeldAccount to a hold. Accounts can only be added to a hold that\nhas no held_org_unit set. Attempting to add an account to an OU-based\nhold will result in an error.", - "httpMethod": "POST", - "parameterOrder": [ - "matterId", - "holdId" - ], - "response": { - "$ref": "HeldAccount" - }, - "parameters": { - "holdId": { - "description": "The hold ID.", - "required": true, - "type": "string", - "location": "path" - }, - "matterId": { - "location": "path", - "description": "The matter ID.", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/ediscovery" - ], - "flatPath": "v1/matters/{matterId}/holds/{holdId}/accounts", - "id": "vault.matters.holds.accounts.create", - "path": "v1/matters/{matterId}/holds/{holdId}/accounts" - } - } - } - } - } - } - } - }, - "parameters": { - "key": { - "location": "query", - "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.", - "type": "string" - }, - "access_token": { - "description": "OAuth access token.", - "type": "string", - "location": "query" - }, - "quotaUser": { - "type": "string", - "location": "query", - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters." - }, - "pp": { - "location": "query", - "description": "Pretty-print response.", - "type": "boolean", - "default": "true" - }, - "oauth_token": { - "location": "query", - "description": "OAuth 2.0 token for the current user.", - "type": "string" - }, - "bearer_token": { - "location": "query", - "description": "OAuth bearer token.", - "type": "string" - }, - "upload_protocol": { - "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", - "type": "string", - "location": "query" - }, - "prettyPrint": { - "type": "boolean", - "default": "true", - "location": "query", - "description": "Returns response with indentations and line breaks." - }, - "uploadType": { - "location": "query", - "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", - "type": "string" - }, - "fields": { - "description": "Selector specifying which fields to include in a partial response.", - "type": "string", - "location": "query" - }, - "$.xgafv": { - "type": "string", - "enumDescriptions": [ - "v1 error format", - "v2 error format" - ], - "location": "query", - "enum": [ - "1", - "2" - ], - "description": "V1 error format." - }, - "callback": { - "location": "query", - "description": "JSONP", - "type": "string" - }, - "alt": { - "location": "query", - "description": "Data format for response.", - "default": "json", - "enum": [ - "json", - "media", - "proto" - ], - "type": "string", - "enumDescriptions": [ - "Responses with Content-Type of application/json", - "Media download with context-dependent Content-Type", - "Responses with Content-Type of application/x-protobuf" - ] - } - }, - "version": "v1", - "baseUrl": "https://vault.googleapis.com/", - "kind": "discovery#restDescription", - "description": "Archiving and eDiscovery for G Suite.", - "servicePath": "", - "basePath": "", - "revision": "20171026", - "documentationLink": "https://developers.google.com/vault", - "id": "vault:v1", - "discoveryVersion": "v1", - "version_module": true, - "schemas": { - "CloseMatterResponse": { - "description": "Response to a CloseMatterRequest.", - "type": "object", - "properties": { - "matter": { - "description": "The updated matter, with state CLOSED.", - "$ref": "Matter" - } - }, - "id": "CloseMatterResponse" - }, - "HeldDriveQuery": { - "description": "Query options for drive holds.", - "type": "object", - "properties": { - "includeTeamDriveFiles": { - "type": "boolean", - "description": "If true, include files in Team Drives in the hold." - } - }, - "id": "HeldDriveQuery" - }, - "HeldGroupsQuery": { - "type": "object", - "properties": { - "endTime": { - "description": "The end time range for the search query. These timestamps are in GMT and\nrounded down to the start of the given date.", - "format": "google-datetime", - "type": "string" - }, - "startTime": { - "description": "The start time range for the search query. These timestamps are in GMT and\nrounded down to the start of the given date.", - "format": "google-datetime", - "type": "string" - }, - "terms": { - "description": "The search terms for the hold.", - "type": "string" - } - }, - "id": "HeldGroupsQuery", - "description": "Query options for group holds." - }, - "HeldOrgUnit": { - "type": "object", - "properties": { - "holdTime": { - "type": "string", - "description": "When the org unit was put on hold. This property is immutable.", - "format": "google-datetime" - }, - "orgUnitId": { - "description": "The org unit's immutable ID as provided by the admin SDK.", - "type": "string" - } - }, - "id": "HeldOrgUnit", - "description": "A organizational unit being held in a particular hold.\nThis structure is immutable." - }, - "AddMatterPermissionsRequest": { - "id": "AddMatterPermissionsRequest", - "description": "Add an account with the permission specified. The role cannot be owner.\nIf an account already has a role in the matter, it will be\noverwritten.", - "type": "object", - "properties": { - "matterPermission": { - "$ref": "MatterPermission", - "description": "The MatterPermission to add." - }, - "ccMe": { - "description": "Only relevant if send_emails is true.\nTrue to CC requestor in the email message.\nFalse to not CC requestor.", - "type": "boolean" - }, - "sendEmails": { - "description": "True to send notification email to the added account.\nFalse to not send notification email.", - "type": "boolean" - } - } - }, - "Matter": { - "id": "Matter", - "description": "Represents a matter.", - "type": "object", - "properties": { - "state": { - "enumDescriptions": [ - "The matter has no specified state.", - "This matter is open.", - "This matter is closed.", - "This matter is deleted." - ], - "enum": [ - "STATE_UNSPECIFIED", - "OPEN", - "CLOSED", - "DELETED" - ], - "description": "The state of the matter.", - "type": "string" - }, - "name": { - "description": "The name of the matter.", - "type": "string" - }, - "matterPermissions": { - "description": "List of users and access to the matter. Currently there is no programmer\ndefined limit on the number of permissions a matter can have.", - "type": "array", - "items": { - "$ref": "MatterPermission" - } - }, - "description": { - "description": "The description of the matter.", - "type": "string" - }, - "matterId": { - "description": "The matter ID which is generated by the server.\nShould be blank when creating a new matter.", - "type": "string" - } - } - }, - "HeldAccount": { - "description": "An account being held in a particular hold. This structure is immutable.\nThis can be either a single user or a google group, depending on the corpus.", - "type": "object", - "properties": { - "accountId": { - "description": "The account's ID as provided by the\n\u003ca href=\"https://developers.google.com/admin-sdk/\"\u003eAdmin SDK\u003c/a\u003e.", - "type": "string" - }, - "holdTime": { - "description": "When the account was put on hold.", - "format": "google-datetime", - "type": "string" - } - }, - "id": "HeldAccount" - }, - "ReopenMatterResponse": { - "description": "Response to a ReopenMatterRequest.", - "type": "object", - "properties": { - "matter": { - "$ref": "Matter", - "description": "The updated matter, with state OPEN." - } - }, - "id": "ReopenMatterResponse" - }, - "CorpusQuery": { - "type": "object", - "properties": { - "mailQuery": { - "$ref": "HeldMailQuery", - "description": "Details pertaining to mail holds. If set, corpus must be mail." - }, - "groupsQuery": { - "description": "Details pertaining to Groups holds. If set, corpus must be Groups.", - "$ref": "HeldGroupsQuery" - }, - "driveQuery": { - "description": "Details pertaining to Drive holds. If set, corpus must be Drive.", - "$ref": "HeldDriveQuery" - } - }, - "id": "CorpusQuery", - "description": "Corpus specific queries." - }, - "Hold": { - "description": "Represents a hold within Vault. A hold restricts purging of\nartifacts based on the combination of the query and accounts restrictions.\nA hold can be configured to either apply to an explicitly configured set\nof accounts, or can be applied to all members of an organizational unit.", - "type": "object", - "properties": { - "updateTime": { - "description": "The last time this hold was modified.", - "format": "google-datetime", - "type": "string" - }, - "name": { - "description": "The name of the hold.", - "type": "string" - }, - "holdId": { - "description": "The unique immutable ID of the hold. Assigned during creation.", - "type": "string" - }, - "accounts": { - "description": "If set, the hold applies to the enumerated accounts and org_unit must be\nempty.", - "type": "array", - "items": { - "$ref": "HeldAccount" - } - }, - "query": { - "$ref": "CorpusQuery", - "description": "The corpus-specific query. If set, the corpusQuery must match corpus\ntype." - }, - "orgUnit": { - "$ref": "HeldOrgUnit", - "description": "If set, the hold applies to all members of the organizational unit and\naccounts must be empty. This property is mutable. For groups holds,\nset the accounts field." - }, - "corpus": { - "description": "The corpus to be searched.", - "type": "string", - "enumDescriptions": [ - "No corpus specified.", - "Drive.", - "Mail.", - "Groups." - ], - "enum": [ - "CORPUS_TYPE_UNSPECIFIED", - "DRIVE", - "MAIL", - "GROUPS" - ] - } - }, - "id": "Hold" - }, - "ListHoldsResponse": { - "description": "The holds for a matter.", - "type": "object", - "properties": { - "holds": { - "description": "The list of holds.", - "type": "array", - "items": { - "$ref": "Hold" - } - }, - "nextPageToken": { - "description": "Page token to retrieve the next page of results in the list.\nIf this is empty, then there are no more holds to list.", - "type": "string" - } - }, - "id": "ListHoldsResponse" - }, - "ListHeldAccountsResponse": { - "description": "Returns a list of held accounts for a hold.", - "type": "object", - "properties": { - "accounts": { - "description": "The held accounts on a hold.", - "type": "array", - "items": { - "$ref": "HeldAccount" - } - } - }, - "id": "ListHeldAccountsResponse" - }, - "UndeleteMatterRequest": { - "description": "Undelete a matter by ID.", - "type": "object", - "properties": {}, - "id": "UndeleteMatterRequest" - }, - "Empty": { - "properties": {}, - "id": "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 `{}`.", - "type": "object" - }, - "CloseMatterRequest": { - "description": "Close a matter by ID.", - "type": "object", - "properties": {}, - "id": "CloseMatterRequest" - }, - "ReopenMatterRequest": { - "id": "ReopenMatterRequest", - "description": "Reopen a matter by ID.", - "type": "object", - "properties": {} - }, - "RemoveMatterPermissionsRequest": { - "description": "Remove an account as a matter collaborator.", - "type": "object", - "properties": { - "accountId": { - "type": "string", - "description": "The account ID." - } - }, - "id": "RemoveMatterPermissionsRequest" - }, - "MatterPermission": { - "description": "Currently each matter only has one owner, and all others are collaborators.\nWhen an account is purged, its corresponding MatterPermission resources\ncease to exist.", - "type": "object", - "properties": { - "role": { - "enum": [ - "ROLE_UNSPECIFIED", - "COLLABORATOR", - "OWNER" - ], - "description": "The user's role in this matter.", - "type": "string", - "enumDescriptions": [ - "No role assigned.", - "A collaborator to the matter.", - "The owner of the matter." - ] - }, - "accountId": { - "description": "The account id, as provided by \u003ca href=\"https://developers.google.com/admin-sdk/\"\u003eAdmin SDK\u003c/a\u003e.", - "type": "string" - } - }, - "id": "MatterPermission" - }, - "ListMattersResponse": { - "description": "Provides the list of matters.", - "type": "object", - "properties": { - "nextPageToken": { - "description": "Page token to retrieve the next page of results in the list.", - "type": "string" - }, - "matters": { - "description": "List of matters.", - "type": "array", - "items": { - "$ref": "Matter" - } - } - }, - "id": "ListMattersResponse" - }, - "HeldMailQuery": { - "description": "Query options for mail holds.", - "type": "object", - "properties": { - "endTime": { - "description": "The end time range for the search query. These timestamps are in GMT and\nrounded down to the start of the given date.", - "format": "google-datetime", - "type": "string" - }, - "startTime": { - "description": "The start time range for the search query. These timestamps are in GMT and\nrounded down to the start of the given date.", - "format": "google-datetime", - "type": "string" - }, - "terms": { - "description": "The search terms for the hold.", - "type": "string" - } - }, - "id": "HeldMailQuery" - } - }, - "protocol": "rest", - "icons": { - "x32": "http://www.google.com/images/icons/product/search-32.gif", - "x16": "http://www.google.com/images/icons/product/search-16.gif" - }, - "canonicalName": "Vault", "auth": { "oauth2": { "scopes": { @@ -1038,9 +11,1073 @@ } } }, - "rootUrl": "https://vault.googleapis.com/", - "ownerDomain": "google.com", - "name": "vault", + "basePath": "", + "baseUrl": "https://vault.googleapis.com/", "batchPath": "batch", - "fullyEncodeReservedExpansion": true -} + "canonicalName": "Vault", + "description": "Archiving and eDiscovery for G Suite.", + "discoveryVersion": "v1", + "documentationLink": "https://developers.google.com/vault", + "fullyEncodeReservedExpansion": true, + "icons": { + "x16": "http://www.google.com/images/icons/product/search-16.gif", + "x32": "http://www.google.com/images/icons/product/search-32.gif" + }, + "id": "vault:v1", + "kind": "discovery#restDescription", + "name": "vault", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "$.xgafv": { + "description": "V1 error format.", + "enum": [ + "1", + "2" + ], + "enumDescriptions": [ + "v1 error format", + "v2 error format" + ], + "location": "query", + "type": "string" + }, + "access_token": { + "description": "OAuth access token.", + "location": "query", + "type": "string" + }, + "alt": { + "default": "json", + "description": "Data format for response.", + "enum": [ + "json", + "media", + "proto" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json", + "Media download with context-dependent Content-Type", + "Responses with Content-Type of application/x-protobuf" + ], + "location": "query", + "type": "string" + }, + "bearer_token": { + "description": "OAuth bearer token.", + "location": "query", + "type": "string" + }, + "callback": { + "description": "JSONP", + "location": "query", + "type": "string" + }, + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "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.", + "location": "query", + "type": "string" + }, + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "pp": { + "default": "true", + "description": "Pretty-print response.", + "location": "query", + "type": "boolean" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", + "location": "query", + "type": "string" + }, + "uploadType": { + "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", + "location": "query", + "type": "string" + }, + "upload_protocol": { + "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", + "location": "query", + "type": "string" + } + }, + "protocol": "rest", + "resources": { + "matters": { + "methods": { + "addPermissions": { + "description": "Adds an account as a matter collaborator.", + "flatPath": "v1/matters/{matterId}:addPermissions", + "httpMethod": "POST", + "id": "vault.matters.addPermissions", + "parameterOrder": [ + "matterId" + ], + "parameters": { + "matterId": { + "description": "The matter ID.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/matters/{matterId}:addPermissions", + "request": { + "$ref": "AddMatterPermissionsRequest" + }, + "response": { + "$ref": "MatterPermission" + }, + "scopes": [ + "https://www.googleapis.com/auth/ediscovery" + ] + }, + "close": { + "description": "Closes the specified matter. Returns matter with updated state.", + "flatPath": "v1/matters/{matterId}:close", + "httpMethod": "POST", + "id": "vault.matters.close", + "parameterOrder": [ + "matterId" + ], + "parameters": { + "matterId": { + "description": "The matter ID.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/matters/{matterId}:close", + "request": { + "$ref": "CloseMatterRequest" + }, + "response": { + "$ref": "CloseMatterResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/ediscovery" + ] + }, + "create": { + "description": "Creates a new matter with the given name and description. The initial state\nis open, and the owner is the method caller. Returns the created matter\nwith default view.", + "flatPath": "v1/matters", + "httpMethod": "POST", + "id": "vault.matters.create", + "parameterOrder": [], + "parameters": {}, + "path": "v1/matters", + "request": { + "$ref": "Matter" + }, + "response": { + "$ref": "Matter" + }, + "scopes": [ + "https://www.googleapis.com/auth/ediscovery" + ] + }, + "delete": { + "description": "Deletes the specified matter. Returns matter with updated state.", + "flatPath": "v1/matters/{matterId}", + "httpMethod": "DELETE", + "id": "vault.matters.delete", + "parameterOrder": [ + "matterId" + ], + "parameters": { + "matterId": { + "description": "The matter ID", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/matters/{matterId}", + "response": { + "$ref": "Matter" + }, + "scopes": [ + "https://www.googleapis.com/auth/ediscovery" + ] + }, + "get": { + "description": "Gets the specified matter.", + "flatPath": "v1/matters/{matterId}", + "httpMethod": "GET", + "id": "vault.matters.get", + "parameterOrder": [ + "matterId" + ], + "parameters": { + "matterId": { + "description": "The matter ID.", + "location": "path", + "required": true, + "type": "string" + }, + "view": { + "description": "Specifies which parts of the Matter to return in the response.", + "enum": [ + "VIEW_UNSPECIFIED", + "BASIC", + "FULL" + ], + "location": "query", + "type": "string" + } + }, + "path": "v1/matters/{matterId}", + "response": { + "$ref": "Matter" + }, + "scopes": [ + "https://www.googleapis.com/auth/ediscovery", + "https://www.googleapis.com/auth/ediscovery.readonly" + ] + }, + "list": { + "description": "Lists matters the user has access to.", + "flatPath": "v1/matters", + "httpMethod": "GET", + "id": "vault.matters.list", + "parameterOrder": [], + "parameters": { + "pageSize": { + "description": "The number of matters to return in the response.\nDefault and maximum are 100.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "The pagination token as returned in the response.", + "location": "query", + "type": "string" + }, + "state": { + "description": "If set, list only matters with that specific state. The default is listing\nmatters of all states.", + "enum": [ + "STATE_UNSPECIFIED", + "OPEN", + "CLOSED", + "DELETED" + ], + "location": "query", + "type": "string" + }, + "view": { + "description": "Specifies which parts of the matter to return in response.", + "enum": [ + "VIEW_UNSPECIFIED", + "BASIC", + "FULL" + ], + "location": "query", + "type": "string" + } + }, + "path": "v1/matters", + "response": { + "$ref": "ListMattersResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/ediscovery", + "https://www.googleapis.com/auth/ediscovery.readonly" + ] + }, + "removePermissions": { + "description": "Removes an account as a matter collaborator.", + "flatPath": "v1/matters/{matterId}:removePermissions", + "httpMethod": "POST", + "id": "vault.matters.removePermissions", + "parameterOrder": [ + "matterId" + ], + "parameters": { + "matterId": { + "description": "The matter ID.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/matters/{matterId}:removePermissions", + "request": { + "$ref": "RemoveMatterPermissionsRequest" + }, + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/ediscovery" + ] + }, + "reopen": { + "description": "Reopens the specified matter. Returns matter with updated state.", + "flatPath": "v1/matters/{matterId}:reopen", + "httpMethod": "POST", + "id": "vault.matters.reopen", + "parameterOrder": [ + "matterId" + ], + "parameters": { + "matterId": { + "description": "The matter ID.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/matters/{matterId}:reopen", + "request": { + "$ref": "ReopenMatterRequest" + }, + "response": { + "$ref": "ReopenMatterResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/ediscovery" + ] + }, + "undelete": { + "description": "Undeletes the specified matter. Returns matter with updated state.", + "flatPath": "v1/matters/{matterId}:undelete", + "httpMethod": "POST", + "id": "vault.matters.undelete", + "parameterOrder": [ + "matterId" + ], + "parameters": { + "matterId": { + "description": "The matter ID.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/matters/{matterId}:undelete", + "request": { + "$ref": "UndeleteMatterRequest" + }, + "response": { + "$ref": "Matter" + }, + "scopes": [ + "https://www.googleapis.com/auth/ediscovery" + ] + }, + "update": { + "description": "Updates the specified matter.\nThis updates only the name and description of the matter, identified by\nmatter id. Changes to any other fields are ignored.\nReturns the default view of the matter.", + "flatPath": "v1/matters/{matterId}", + "httpMethod": "PUT", + "id": "vault.matters.update", + "parameterOrder": [ + "matterId" + ], + "parameters": { + "matterId": { + "description": "The matter ID.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/matters/{matterId}", + "request": { + "$ref": "Matter" + }, + "response": { + "$ref": "Matter" + }, + "scopes": [ + "https://www.googleapis.com/auth/ediscovery" + ] + } + }, + "resources": { + "holds": { + "methods": { + "create": { + "description": "Creates a hold in the given matter.", + "flatPath": "v1/matters/{matterId}/holds", + "httpMethod": "POST", + "id": "vault.matters.holds.create", + "parameterOrder": [ + "matterId" + ], + "parameters": { + "matterId": { + "description": "The matter ID.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/matters/{matterId}/holds", + "request": { + "$ref": "Hold" + }, + "response": { + "$ref": "Hold" + }, + "scopes": [ + "https://www.googleapis.com/auth/ediscovery" + ] + }, + "delete": { + "description": "Removes a hold by ID. This will release any HeldAccounts on this Hold.", + "flatPath": "v1/matters/{matterId}/holds/{holdId}", + "httpMethod": "DELETE", + "id": "vault.matters.holds.delete", + "parameterOrder": [ + "matterId", + "holdId" + ], + "parameters": { + "holdId": { + "description": "The hold ID.", + "location": "path", + "required": true, + "type": "string" + }, + "matterId": { + "description": "The matter ID.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/matters/{matterId}/holds/{holdId}", + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/ediscovery" + ] + }, + "get": { + "description": "Gets a hold by ID.", + "flatPath": "v1/matters/{matterId}/holds/{holdId}", + "httpMethod": "GET", + "id": "vault.matters.holds.get", + "parameterOrder": [ + "matterId", + "holdId" + ], + "parameters": { + "holdId": { + "description": "The hold ID.", + "location": "path", + "required": true, + "type": "string" + }, + "matterId": { + "description": "The matter ID.", + "location": "path", + "required": true, + "type": "string" + }, + "view": { + "description": "Specifies which parts of the Hold to return.", + "enum": [ + "HOLD_VIEW_UNSPECIFIED", + "BASIC_HOLD", + "FULL_HOLD" + ], + "location": "query", + "type": "string" + } + }, + "path": "v1/matters/{matterId}/holds/{holdId}", + "response": { + "$ref": "Hold" + }, + "scopes": [ + "https://www.googleapis.com/auth/ediscovery", + "https://www.googleapis.com/auth/ediscovery.readonly" + ] + }, + "list": { + "description": "Lists holds within a matter. An empty page token in ListHoldsResponse\ndenotes no more holds to list.", + "flatPath": "v1/matters/{matterId}/holds", + "httpMethod": "GET", + "id": "vault.matters.holds.list", + "parameterOrder": [ + "matterId" + ], + "parameters": { + "matterId": { + "description": "The matter ID.", + "location": "path", + "required": true, + "type": "string" + }, + "pageSize": { + "description": "The number of holds to return in the response, between 0 and 100 inclusive.\nLeaving this empty, or as 0, is the same as page_size = 100.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "The pagination token as returned in the response.\nAn empty token means start from the beginning.", + "location": "query", + "type": "string" + }, + "view": { + "description": "Specifies which parts of the Hold to return.", + "enum": [ + "HOLD_VIEW_UNSPECIFIED", + "BASIC_HOLD", + "FULL_HOLD" + ], + "location": "query", + "type": "string" + } + }, + "path": "v1/matters/{matterId}/holds", + "response": { + "$ref": "ListHoldsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/ediscovery", + "https://www.googleapis.com/auth/ediscovery.readonly" + ] + }, + "update": { + "description": "Updates the OU and/or query parameters of a hold. You cannot add accounts\nto a hold that covers an OU, nor can you add OUs to a hold that covers\nindividual accounts. Accounts listed in the hold will be ignored.", + "flatPath": "v1/matters/{matterId}/holds/{holdId}", + "httpMethod": "PUT", + "id": "vault.matters.holds.update", + "parameterOrder": [ + "matterId", + "holdId" + ], + "parameters": { + "holdId": { + "description": "The ID of the hold.", + "location": "path", + "required": true, + "type": "string" + }, + "matterId": { + "description": "The matter ID.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/matters/{matterId}/holds/{holdId}", + "request": { + "$ref": "Hold" + }, + "response": { + "$ref": "Hold" + }, + "scopes": [ + "https://www.googleapis.com/auth/ediscovery" + ] + } + }, + "resources": { + "accounts": { + "methods": { + "create": { + "description": "Adds a HeldAccount to a hold. Accounts can only be added to a hold that\nhas no held_org_unit set. Attempting to add an account to an OU-based\nhold will result in an error.", + "flatPath": "v1/matters/{matterId}/holds/{holdId}/accounts", + "httpMethod": "POST", + "id": "vault.matters.holds.accounts.create", + "parameterOrder": [ + "matterId", + "holdId" + ], + "parameters": { + "holdId": { + "description": "The hold ID.", + "location": "path", + "required": true, + "type": "string" + }, + "matterId": { + "description": "The matter ID.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/matters/{matterId}/holds/{holdId}/accounts", + "request": { + "$ref": "HeldAccount" + }, + "response": { + "$ref": "HeldAccount" + }, + "scopes": [ + "https://www.googleapis.com/auth/ediscovery" + ] + }, + "delete": { + "description": "Removes a HeldAccount from a hold. If this request leaves the hold with\nno held accounts, the hold will not apply to any accounts.", + "flatPath": "v1/matters/{matterId}/holds/{holdId}/accounts/{accountId}", + "httpMethod": "DELETE", + "id": "vault.matters.holds.accounts.delete", + "parameterOrder": [ + "matterId", + "holdId", + "accountId" + ], + "parameters": { + "accountId": { + "description": "The ID of the account to remove from the hold.", + "location": "path", + "required": true, + "type": "string" + }, + "holdId": { + "description": "The hold ID.", + "location": "path", + "required": true, + "type": "string" + }, + "matterId": { + "description": "The matter ID.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/matters/{matterId}/holds/{holdId}/accounts/{accountId}", + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/ediscovery" + ] + }, + "list": { + "description": "Lists HeldAccounts for a hold. This will only list individually specified\nheld accounts. If the hold is on an OU, then use\n\u003ca href=\"https://developers.google.com/admin-sdk/\"\u003eAdmin SDK\u003c/a\u003e\nto enumerate its members.", + "flatPath": "v1/matters/{matterId}/holds/{holdId}/accounts", + "httpMethod": "GET", + "id": "vault.matters.holds.accounts.list", + "parameterOrder": [ + "matterId", + "holdId" + ], + "parameters": { + "holdId": { + "description": "The hold ID.", + "location": "path", + "required": true, + "type": "string" + }, + "matterId": { + "description": "The matter ID.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/matters/{matterId}/holds/{holdId}/accounts", + "response": { + "$ref": "ListHeldAccountsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/ediscovery", + "https://www.googleapis.com/auth/ediscovery.readonly" + ] + } + } + } + } + } + } + } + }, + "revision": "20180303", + "rootUrl": "https://vault.googleapis.com/", + "schemas": { + "AddMatterPermissionsRequest": { + "description": "Add an account with the permission specified. The role cannot be owner.\nIf an account already has a role in the matter, it will be\noverwritten.", + "id": "AddMatterPermissionsRequest", + "properties": { + "ccMe": { + "description": "Only relevant if send_emails is true.\nTrue to CC requestor in the email message.\nFalse to not CC requestor.", + "type": "boolean" + }, + "matterPermission": { + "$ref": "MatterPermission", + "description": "The MatterPermission to add." + }, + "sendEmails": { + "description": "True to send notification email to the added account.\nFalse to not send notification email.", + "type": "boolean" + } + }, + "type": "object" + }, + "CloseMatterRequest": { + "description": "Close a matter by ID.", + "id": "CloseMatterRequest", + "properties": {}, + "type": "object" + }, + "CloseMatterResponse": { + "description": "Response to a CloseMatterRequest.", + "id": "CloseMatterResponse", + "properties": { + "matter": { + "$ref": "Matter", + "description": "The updated matter, with state CLOSED." + } + }, + "type": "object" + }, + "CorpusQuery": { + "description": "Corpus specific queries.", + "id": "CorpusQuery", + "properties": { + "driveQuery": { + "$ref": "HeldDriveQuery", + "description": "Details pertaining to Drive holds. If set, corpus must be Drive." + }, + "groupsQuery": { + "$ref": "HeldGroupsQuery", + "description": "Details pertaining to Groups holds. If set, corpus must be Groups." + }, + "hangoutsChatQuery": { + "$ref": "HeldHangoutsChatQuery", + "description": "Details pertaining to Hangouts Chat holds. If set, corpus must be\nHangouts Chat." + }, + "mailQuery": { + "$ref": "HeldMailQuery", + "description": "Details pertaining to mail holds. If set, corpus must be mail." + } + }, + "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" + }, + "HeldAccount": { + "description": "An account being held in a particular hold. This structure is immutable.\nThis can be either a single user or a google group, depending on the corpus.", + "id": "HeldAccount", + "properties": { + "accountId": { + "description": "The account's ID as provided by the\n\u003ca href=\"https://developers.google.com/admin-sdk/\"\u003eAdmin SDK\u003c/a\u003e.", + "type": "string" + }, + "holdTime": { + "description": "When the account was put on hold.", + "format": "google-datetime", + "type": "string" + } + }, + "type": "object" + }, + "HeldDriveQuery": { + "description": "Query options for Drive holds.", + "id": "HeldDriveQuery", + "properties": { + "includeTeamDriveFiles": { + "description": "If true, include files in Team Drives in the hold.", + "type": "boolean" + } + }, + "type": "object" + }, + "HeldGroupsQuery": { + "description": "Query options for group holds.", + "id": "HeldGroupsQuery", + "properties": { + "endTime": { + "description": "The end time range for the search query. These timestamps are in GMT and\nrounded down to the start of the given date.", + "format": "google-datetime", + "type": "string" + }, + "startTime": { + "description": "The start time range for the search query. These timestamps are in GMT and\nrounded down to the start of the given date.", + "format": "google-datetime", + "type": "string" + }, + "terms": { + "description": "The search terms for the hold.", + "type": "string" + } + }, + "type": "object" + }, + "HeldHangoutsChatQuery": { + "description": "Query options for hangouts chat holds.", + "id": "HeldHangoutsChatQuery", + "properties": { + "includeRooms": { + "description": "If true, include rooms the user has participated in.", + "type": "boolean" + } + }, + "type": "object" + }, + "HeldMailQuery": { + "description": "Query options for mail holds.", + "id": "HeldMailQuery", + "properties": { + "endTime": { + "description": "The end time range for the search query. These timestamps are in GMT and\nrounded down to the start of the given date.", + "format": "google-datetime", + "type": "string" + }, + "startTime": { + "description": "The start time range for the search query. These timestamps are in GMT and\nrounded down to the start of the given date.", + "format": "google-datetime", + "type": "string" + }, + "terms": { + "description": "The search terms for the hold.", + "type": "string" + } + }, + "type": "object" + }, + "HeldOrgUnit": { + "description": "A organizational unit being held in a particular hold.\nThis structure is immutable.", + "id": "HeldOrgUnit", + "properties": { + "holdTime": { + "description": "When the org unit was put on hold. This property is immutable.", + "format": "google-datetime", + "type": "string" + }, + "orgUnitId": { + "description": "The org unit's immutable ID as provided by the Admin SDK.", + "type": "string" + } + }, + "type": "object" + }, + "Hold": { + "description": "Represents a hold within Vault. A hold restricts purging of\nartifacts based on the combination of the query and accounts restrictions.\nA hold can be configured to either apply to an explicitly configured set\nof accounts, or can be applied to all members of an organizational unit.", + "id": "Hold", + "properties": { + "accounts": { + "description": "If set, the hold applies to the enumerated accounts and org_unit must be\nempty.", + "items": { + "$ref": "HeldAccount" + }, + "type": "array" + }, + "corpus": { + "description": "The corpus to be searched.", + "enum": [ + "CORPUS_TYPE_UNSPECIFIED", + "DRIVE", + "MAIL", + "GROUPS", + "HANGOUTS_CHAT" + ], + "enumDescriptions": [ + "No corpus specified.", + "Drive.", + "Mail.", + "Groups.", + "Hangouts Chat." + ], + "type": "string" + }, + "holdId": { + "description": "The unique immutable ID of the hold. Assigned during creation.", + "type": "string" + }, + "name": { + "description": "The name of the hold.", + "type": "string" + }, + "orgUnit": { + "$ref": "HeldOrgUnit", + "description": "If set, the hold applies to all members of the organizational unit and\naccounts must be empty. This property is mutable. For groups holds,\nset the accounts field." + }, + "query": { + "$ref": "CorpusQuery", + "description": "The corpus-specific query. If set, the corpusQuery must match corpus\ntype." + }, + "updateTime": { + "description": "The last time this hold was modified.", + "format": "google-datetime", + "type": "string" + } + }, + "type": "object" + }, + "ListHeldAccountsResponse": { + "description": "Returns a list of held accounts for a hold.", + "id": "ListHeldAccountsResponse", + "properties": { + "accounts": { + "description": "The held accounts on a hold.", + "items": { + "$ref": "HeldAccount" + }, + "type": "array" + } + }, + "type": "object" + }, + "ListHoldsResponse": { + "description": "The holds for a matter.", + "id": "ListHoldsResponse", + "properties": { + "holds": { + "description": "The list of holds.", + "items": { + "$ref": "Hold" + }, + "type": "array" + }, + "nextPageToken": { + "description": "Page token to retrieve the next page of results in the list.\nIf this is empty, then there are no more holds to list.", + "type": "string" + } + }, + "type": "object" + }, + "ListMattersResponse": { + "description": "Provides the list of matters.", + "id": "ListMattersResponse", + "properties": { + "matters": { + "description": "List of matters.", + "items": { + "$ref": "Matter" + }, + "type": "array" + }, + "nextPageToken": { + "description": "Page token to retrieve the next page of results in the list.", + "type": "string" + } + }, + "type": "object" + }, + "Matter": { + "description": "Represents a matter.", + "id": "Matter", + "properties": { + "description": { + "description": "The description of the matter.", + "type": "string" + }, + "matterId": { + "description": "The matter ID which is generated by the server.\nShould be blank when creating a new matter.", + "type": "string" + }, + "matterPermissions": { + "description": "List of users and access to the matter. Currently there is no programmer\ndefined limit on the number of permissions a matter can have.", + "items": { + "$ref": "MatterPermission" + }, + "type": "array" + }, + "name": { + "description": "The name of the matter.", + "type": "string" + }, + "state": { + "description": "The state of the matter.", + "enum": [ + "STATE_UNSPECIFIED", + "OPEN", + "CLOSED", + "DELETED" + ], + "enumDescriptions": [ + "The matter has no specified state.", + "This matter is open.", + "This matter is closed.", + "This matter is deleted." + ], + "type": "string" + } + }, + "type": "object" + }, + "MatterPermission": { + "description": "Currently each matter only has one owner, and all others are collaborators.\nWhen an account is purged, its corresponding MatterPermission resources\ncease to exist.", + "id": "MatterPermission", + "properties": { + "accountId": { + "description": "The account id, as provided by \u003ca href=\"https://developers.google.com/admin-sdk/\"\u003eAdmin SDK\u003c/a\u003e.", + "type": "string" + }, + "role": { + "description": "The user's role in this matter.", + "enum": [ + "ROLE_UNSPECIFIED", + "COLLABORATOR", + "OWNER" + ], + "enumDescriptions": [ + "No role assigned.", + "A collaborator to the matter.", + "The owner of the matter." + ], + "type": "string" + } + }, + "type": "object" + }, + "RemoveMatterPermissionsRequest": { + "description": "Remove an account as a matter collaborator.", + "id": "RemoveMatterPermissionsRequest", + "properties": { + "accountId": { + "description": "The account ID.", + "type": "string" + } + }, + "type": "object" + }, + "ReopenMatterRequest": { + "description": "Reopen a matter by ID.", + "id": "ReopenMatterRequest", + "properties": {}, + "type": "object" + }, + "ReopenMatterResponse": { + "description": "Response to a ReopenMatterRequest.", + "id": "ReopenMatterResponse", + "properties": { + "matter": { + "$ref": "Matter", + "description": "The updated matter, with state OPEN." + } + }, + "type": "object" + }, + "UndeleteMatterRequest": { + "description": "Undelete a matter by ID.", + "id": "UndeleteMatterRequest", + "properties": {}, + "type": "object" + } + }, + "servicePath": "", + "title": "Google Vault API", + "version": "v1", + "version_module": true +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/vault/v1/vault-gen.go b/vendor/google.golang.org/api/vault/v1/vault-gen.go index ea92f0060..9af7f3631 100644 --- a/vendor/google.golang.org/api/vault/v1/vault-gen.go +++ b/vendor/google.golang.org/api/vault/v1/vault-gen.go @@ -199,6 +199,11 @@ type CorpusQuery struct { // be Groups. GroupsQuery *HeldGroupsQuery `json:"groupsQuery,omitempty"` + // HangoutsChatQuery: Details pertaining to Hangouts Chat holds. If set, + // corpus must be + // Hangouts Chat. + HangoutsChatQuery *HeldHangoutsChatQuery `json:"hangoutsChatQuery,omitempty"` + // MailQuery: Details pertaining to mail holds. If set, corpus must be // mail. MailQuery *HeldMailQuery `json:"mailQuery,omitempty"` @@ -283,7 +288,7 @@ func (s *HeldAccount) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -// HeldDriveQuery: Query options for drive holds. +// HeldDriveQuery: Query options for Drive holds. type HeldDriveQuery struct { // IncludeTeamDriveFiles: If true, include files in Team Drives in the // hold. @@ -352,6 +357,34 @@ func (s *HeldGroupsQuery) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// HeldHangoutsChatQuery: Query options for hangouts chat holds. +type HeldHangoutsChatQuery struct { + // IncludeRooms: If true, include rooms the user has participated in. + IncludeRooms bool `json:"includeRooms,omitempty"` + + // ForceSendFields is a list of field names (e.g. "IncludeRooms") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "IncludeRooms") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *HeldHangoutsChatQuery) MarshalJSON() ([]byte, error) { + type NoMethod HeldHangoutsChatQuery + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // HeldMailQuery: Query options for mail holds. type HeldMailQuery struct { // EndTime: The end time range for the search query. These timestamps @@ -398,7 +431,7 @@ type HeldOrgUnit struct { // immutable. HoldTime string `json:"holdTime,omitempty"` - // OrgUnitId: The org unit's immutable ID as provided by the admin SDK. + // OrgUnitId: The org unit's immutable ID as provided by the Admin SDK. OrgUnitId string `json:"orgUnitId,omitempty"` // ForceSendFields is a list of field names (e.g. "HoldTime") to @@ -445,6 +478,7 @@ type Hold struct { // "DRIVE" - Drive. // "MAIL" - Mail. // "GROUPS" - Groups. + // "HANGOUTS_CHAT" - Hangouts Chat. Corpus string `json:"corpus,omitempty"` // HoldId: The unique immutable ID of the hold. Assigned during @@ -2498,6 +2532,18 @@ func (r *MattersHoldsService) Get(matterId string, holdId string) *MattersHoldsG return c } +// View sets the optional parameter "view": Specifies which parts of the +// Hold to return. +// +// Possible values: +// "HOLD_VIEW_UNSPECIFIED" +// "BASIC_HOLD" +// "FULL_HOLD" +func (c *MattersHoldsGetCall) View(view string) *MattersHoldsGetCall { + c.urlParams_.Set("view", view) + return c +} + // Fields allows partial responses to be retrieved. See // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse // for more information. @@ -2613,6 +2659,16 @@ func (c *MattersHoldsGetCall) Do(opts ...googleapi.CallOption) (*Hold, error) { // "location": "path", // "required": true, // "type": "string" + // }, + // "view": { + // "description": "Specifies which parts of the Hold to return.", + // "enum": [ + // "HOLD_VIEW_UNSPECIFIED", + // "BASIC_HOLD", + // "FULL_HOLD" + // ], + // "location": "query", + // "type": "string" // } // }, // "path": "v1/matters/{matterId}/holds/{holdId}", @@ -2663,6 +2719,18 @@ func (c *MattersHoldsListCall) PageToken(pageToken string) *MattersHoldsListCall return c } +// View sets the optional parameter "view": Specifies which parts of the +// Hold to return. +// +// Possible values: +// "HOLD_VIEW_UNSPECIFIED" +// "BASIC_HOLD" +// "FULL_HOLD" +func (c *MattersHoldsListCall) View(view string) *MattersHoldsListCall { + c.urlParams_.Set("view", view) + return c +} + // Fields allows partial responses to be retrieved. See // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse // for more information. @@ -2781,6 +2849,16 @@ func (c *MattersHoldsListCall) Do(opts ...googleapi.CallOption) (*ListHoldsRespo // "description": "The pagination token as returned in the response.\nAn empty token means start from the beginning.", // "location": "query", // "type": "string" + // }, + // "view": { + // "description": "Specifies which parts of the Hold to return.", + // "enum": [ + // "HOLD_VIEW_UNSPECIFIED", + // "BASIC_HOLD", + // "FULL_HOLD" + // ], + // "location": "query", + // "type": "string" // } // }, // "path": "v1/matters/{matterId}/holds", diff --git a/vendor/google.golang.org/api/videointelligence/v1beta1/videointelligence-api.json b/vendor/google.golang.org/api/videointelligence/v1beta1/videointelligence-api.json index 3655e83db..0d636a689 100644 --- a/vendor/google.golang.org/api/videointelligence/v1beta1/videointelligence-api.json +++ b/vendor/google.golang.org/api/videointelligence/v1beta1/videointelligence-api.json @@ -1,47 +1,291 @@ { - "version": "v1beta1", - "baseUrl": "https://videointelligence.googleapis.com/", - "kind": "discovery#restDescription", - "description": "Cloud Video Intelligence API.", - "servicePath": "", + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/cloud-platform": { + "description": "View and manage your data across Google Cloud Platform services" + } + } + } + }, "basePath": "", - "revision": "20180116", - "documentationLink": "https://cloud.google.com/video-intelligence/docs/", - "id": "videointelligence:v1beta1", + "baseUrl": "https://videointelligence.googleapis.com/", + "batchPath": "batch", + "canonicalName": "Cloud Video Intelligence", + "description": "Cloud Video Intelligence API.", "discoveryVersion": "v1", - "version_module": true, + "documentationLink": "https://cloud.google.com/video-intelligence/docs/", + "fullyEncodeReservedExpansion": true, + "icons": { + "x16": "http://www.google.com/images/icons/product/search-16.gif", + "x32": "http://www.google.com/images/icons/product/search-32.gif" + }, + "id": "videointelligence:v1beta1", + "kind": "discovery#restDescription", + "name": "videointelligence", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "$.xgafv": { + "description": "V1 error format.", + "enum": [ + "1", + "2" + ], + "enumDescriptions": [ + "v1 error format", + "v2 error format" + ], + "location": "query", + "type": "string" + }, + "access_token": { + "description": "OAuth access token.", + "location": "query", + "type": "string" + }, + "alt": { + "default": "json", + "description": "Data format for response.", + "enum": [ + "json", + "media", + "proto" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json", + "Media download with context-dependent Content-Type", + "Responses with Content-Type of application/x-protobuf" + ], + "location": "query", + "type": "string" + }, + "bearer_token": { + "description": "OAuth bearer token.", + "location": "query", + "type": "string" + }, + "callback": { + "description": "JSONP", + "location": "query", + "type": "string" + }, + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "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.", + "location": "query", + "type": "string" + }, + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "pp": { + "default": "true", + "description": "Pretty-print response.", + "location": "query", + "type": "boolean" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", + "location": "query", + "type": "string" + }, + "uploadType": { + "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", + "location": "query", + "type": "string" + }, + "upload_protocol": { + "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", + "location": "query", + "type": "string" + } + }, + "protocol": "rest", + "resources": { + "videos": { + "methods": { + "annotate": { + "description": "Performs asynchronous video annotation. Progress and results can be\nretrieved through the `google.longrunning.Operations` interface.\n`Operation.metadata` contains `AnnotateVideoProgress` (progress).\n`Operation.response` contains `AnnotateVideoResponse` (results).", + "flatPath": "v1beta1/videos:annotate", + "httpMethod": "POST", + "id": "videointelligence.videos.annotate", + "parameterOrder": [], + "parameters": {}, + "path": "v1beta1/videos:annotate", + "request": { + "$ref": "GoogleCloudVideointelligenceV1beta1_AnnotateVideoRequest" + }, + "response": { + "$ref": "GoogleLongrunning_Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + } + }, + "revision": "20180306", + "rootUrl": "https://videointelligence.googleapis.com/", "schemas": { + "GoogleCloudVideointelligenceV1_AnnotateVideoProgress": { + "description": "Video annotation progress. Included in the `metadata`\nfield of the `Operation` returned by the `GetOperation`\ncall of the `google::longrunning::Operations` service.", + "id": "GoogleCloudVideointelligenceV1_AnnotateVideoProgress", + "properties": { + "annotationProgress": { + "description": "Progress metadata for all videos specified in `AnnotateVideoRequest`.", + "items": { + "$ref": "GoogleCloudVideointelligenceV1_VideoAnnotationProgress" + }, + "type": "array" + } + }, + "type": "object" + }, "GoogleCloudVideointelligenceV1_AnnotateVideoResponse": { "description": "Video annotation response. Included in the `response`\nfield of the `Operation` returned by the `GetOperation`\ncall of the `google::longrunning::Operations` service.", - "type": "object", + "id": "GoogleCloudVideointelligenceV1_AnnotateVideoResponse", "properties": { "annotationResults": { "description": "Annotation results for all videos specified in `AnnotateVideoRequest`.", - "type": "array", "items": { "$ref": "GoogleCloudVideointelligenceV1_VideoAnnotationResults" - } + }, + "type": "array" } }, - "id": "GoogleCloudVideointelligenceV1_AnnotateVideoResponse" + "type": "object" }, - "GoogleCloudVideointelligenceV1beta1_AnnotateVideoResponse": { - "description": "Video annotation response. Included in the `response`\nfield of the `Operation` returned by the `GetOperation`\ncall of the `google::longrunning::Operations` service.", - "type": "object", + "GoogleCloudVideointelligenceV1_Entity": { + "description": "Detected entity from video analysis.", + "id": "GoogleCloudVideointelligenceV1_Entity", "properties": { - "annotationResults": { - "description": "Annotation results for all videos specified in `AnnotateVideoRequest`.", - "type": "array", - "items": { - "$ref": "GoogleCloudVideointelligenceV1beta1_VideoAnnotationResults" - } + "description": { + "description": "Textual description, e.g. `Fixed-gear bicycle`.", + "type": "string" + }, + "entityId": { + "description": "Opaque entity ID. Some IDs may be available in\n[Google Knowledge Graph Search\nAPI](https://developers.google.com/knowledge-graph/).", + "type": "string" + }, + "languageCode": { + "description": "Language code for `description` in BCP-47 format.", + "type": "string" } }, - "id": "GoogleCloudVideointelligenceV1beta1_AnnotateVideoResponse" + "type": "object" + }, + "GoogleCloudVideointelligenceV1_ExplicitContentAnnotation": { + "description": "Explicit content annotation (based on per-frame visual signals only).\nIf no explicit content has been detected in a frame, no annotations are\npresent for that frame.", + "id": "GoogleCloudVideointelligenceV1_ExplicitContentAnnotation", + "properties": { + "frames": { + "description": "All video frames where explicit content was detected.", + "items": { + "$ref": "GoogleCloudVideointelligenceV1_ExplicitContentFrame" + }, + "type": "array" + } + }, + "type": "object" + }, + "GoogleCloudVideointelligenceV1_ExplicitContentFrame": { + "description": "Video frame level annotation results for explicit content.", + "id": "GoogleCloudVideointelligenceV1_ExplicitContentFrame", + "properties": { + "pornographyLikelihood": { + "description": "Likelihood of the pornography content..", + "enum": [ + "LIKELIHOOD_UNSPECIFIED", + "VERY_UNLIKELY", + "UNLIKELY", + "POSSIBLE", + "LIKELY", + "VERY_LIKELY" + ], + "enumDescriptions": [ + "Unspecified likelihood.", + "Very unlikely.", + "Unlikely.", + "Possible.", + "Likely.", + "Very likely." + ], + "type": "string" + }, + "timeOffset": { + "description": "Time-offset, relative to the beginning of the video, corresponding to the\nvideo frame for this location.", + "format": "google-duration", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudVideointelligenceV1_LabelAnnotation": { + "description": "Label annotation.", + "id": "GoogleCloudVideointelligenceV1_LabelAnnotation", + "properties": { + "categoryEntities": { + "description": "Common categories for the detected entity.\nE.g. when the label is `Terrier` the category is likely `dog`. And in some\ncases there might be more than one categories e.g. `Terrier` could also be\na `pet`.", + "items": { + "$ref": "GoogleCloudVideointelligenceV1_Entity" + }, + "type": "array" + }, + "entity": { + "$ref": "GoogleCloudVideointelligenceV1_Entity", + "description": "Detected entity." + }, + "frames": { + "description": "All video frames where a label was detected.", + "items": { + "$ref": "GoogleCloudVideointelligenceV1_LabelFrame" + }, + "type": "array" + }, + "segments": { + "description": "All video segments where a label was detected.", + "items": { + "$ref": "GoogleCloudVideointelligenceV1_LabelSegment" + }, + "type": "array" + } + }, + "type": "object" + }, + "GoogleCloudVideointelligenceV1_LabelFrame": { + "description": "Video frame level annotation results for label detection.", + "id": "GoogleCloudVideointelligenceV1_LabelFrame", + "properties": { + "confidence": { + "description": "Confidence that the label is accurate. Range: [0, 1].", + "format": "float", + "type": "number" + }, + "timeOffset": { + "description": "Time-offset, relative to the beginning of the video, corresponding to the\nvideo frame for this location.", + "format": "google-duration", + "type": "string" + } + }, + "type": "object" }, "GoogleCloudVideointelligenceV1_LabelSegment": { "description": "Video segment level annotation results for label detection.", - "type": "object", + "id": "GoogleCloudVideointelligenceV1_LabelSegment", "properties": { "confidence": { "description": "Confidence that the label is accurate. Range: [0, 1].", @@ -53,85 +297,124 @@ "description": "Video segment where a label was detected." } }, - "id": "GoogleCloudVideointelligenceV1_LabelSegment" + "type": "object" }, - "GoogleCloudVideointelligenceV1beta1_VideoAnnotationProgress": { + "GoogleCloudVideointelligenceV1_VideoAnnotationProgress": { "description": "Annotation progress for a single video.", - "type": "object", + "id": "GoogleCloudVideointelligenceV1_VideoAnnotationProgress", "properties": { + "inputUri": { + "description": "Video file location in\n[Google Cloud Storage](https://cloud.google.com/storage/).", + "type": "string" + }, "progressPercent": { "description": "Approximate percentage processed thus far.\nGuaranteed to be 100 when fully processed.", "format": "int32", "type": "integer" }, - "updateTime": { - "description": "Time of the most recent update.", - "format": "google-datetime", - "type": "string" - }, "startTime": { "description": "Time when the request was received.", "format": "google-datetime", "type": "string" }, - "inputUri": { - "description": "Video file location in\n[Google Cloud Storage](https://cloud.google.com/storage/).", + "updateTime": { + "description": "Time of the most recent update.", + "format": "google-datetime", "type": "string" } }, - "id": "GoogleCloudVideointelligenceV1beta1_VideoAnnotationProgress" + "type": "object" }, - "GoogleCloudVideointelligenceV1beta2_ExplicitContentFrame": { - "description": "Video frame level annotation results for explicit content.", - "type": "object", + "GoogleCloudVideointelligenceV1_VideoAnnotationResults": { + "description": "Annotation results for a single video.", + "id": "GoogleCloudVideointelligenceV1_VideoAnnotationResults", "properties": { - "pornographyLikelihood": { - "enumDescriptions": [ - "Unspecified likelihood.", - "Very unlikely.", - "Unlikely.", - "Possible.", - "Likely.", - "Very likely." - ], - "enum": [ - "LIKELIHOOD_UNSPECIFIED", - "VERY_UNLIKELY", - "UNLIKELY", - "POSSIBLE", - "LIKELY", - "VERY_LIKELY" - ], - "description": "Likelihood of the pornography content..", + "error": { + "$ref": "GoogleRpc_Status", + "description": "If set, indicates an error. Note that for a single `AnnotateVideoRequest`\nsome videos may succeed and some may fail." + }, + "explicitAnnotation": { + "$ref": "GoogleCloudVideointelligenceV1_ExplicitContentAnnotation", + "description": "Explicit content annotation." + }, + "frameLabelAnnotations": { + "description": "Label annotations on frame level.\nThere is exactly one element for each unique label.", + "items": { + "$ref": "GoogleCloudVideointelligenceV1_LabelAnnotation" + }, + "type": "array" + }, + "inputUri": { + "description": "Video file location in\n[Google Cloud Storage](https://cloud.google.com/storage/).", "type": "string" }, - "timeOffset": { - "description": "Time-offset, relative to the beginning of the video, corresponding to the\nvideo frame for this location.", + "segmentLabelAnnotations": { + "description": "Label annotations on video level or user specified segment level.\nThere is exactly one element for each unique label.", + "items": { + "$ref": "GoogleCloudVideointelligenceV1_LabelAnnotation" + }, + "type": "array" + }, + "shotAnnotations": { + "description": "Shot annotations. Each shot is represented as a video segment.", + "items": { + "$ref": "GoogleCloudVideointelligenceV1_VideoSegment" + }, + "type": "array" + }, + "shotLabelAnnotations": { + "description": "Label annotations on shot level.\nThere is exactly one element for each unique label.", + "items": { + "$ref": "GoogleCloudVideointelligenceV1_LabelAnnotation" + }, + "type": "array" + } + }, + "type": "object" + }, + "GoogleCloudVideointelligenceV1_VideoSegment": { + "description": "Video segment.", + "id": "GoogleCloudVideointelligenceV1_VideoSegment", + "properties": { + "endTimeOffset": { + "description": "Time-offset, relative to the beginning of the video,\ncorresponding to the end of the segment (inclusive).", + "format": "google-duration", + "type": "string" + }, + "startTimeOffset": { + "description": "Time-offset, relative to the beginning of the video,\ncorresponding to the start of the segment (inclusive).", "format": "google-duration", "type": "string" } }, - "id": "GoogleCloudVideointelligenceV1beta2_ExplicitContentFrame" + "type": "object" + }, + "GoogleCloudVideointelligenceV1beta1_AnnotateVideoProgress": { + "description": "Video annotation progress. Included in the `metadata`\nfield of the `Operation` returned by the `GetOperation`\ncall of the `google::longrunning::Operations` service.", + "id": "GoogleCloudVideointelligenceV1beta1_AnnotateVideoProgress", + "properties": { + "annotationProgress": { + "description": "Progress metadata for all videos specified in `AnnotateVideoRequest`.", + "items": { + "$ref": "GoogleCloudVideointelligenceV1beta1_VideoAnnotationProgress" + }, + "type": "array" + } + }, + "type": "object" }, "GoogleCloudVideointelligenceV1beta1_AnnotateVideoRequest": { "description": "Video annotation request.", - "type": "object", + "id": "GoogleCloudVideointelligenceV1beta1_AnnotateVideoRequest", "properties": { - "locationId": { - "description": "Optional cloud region where annotation should take place. Supported cloud\nregions: `us-east1`, `us-west1`, `europe-west1`, `asia-east1`. If no region\nis specified, a region will be determined based on video file location.", - "type": "string" - }, - "inputUri": { - "description": "Input video location. Currently, only\n[Google Cloud Storage](https://cloud.google.com/storage/) URIs are\nsupported, which must be specified in the following format:\n`gs://bucket-id/object-id` (other URI formats return\ngoogle.rpc.Code.INVALID_ARGUMENT). For more information, see\n[Request URIs](/storage/docs/reference-uris).\nA video URI may include wildcards in `object-id`, and thus identify\nmultiple videos. Supported wildcards: '*' to match 0 or more characters;\n'?' to match 1 character. If unset, the input video should be embedded\nin the request as `input_content`. If set, `input_content` should be unset.", - "type": "string" - }, - "inputContent": { - "description": "The video data bytes. Encoding: base64. If unset, the input video(s)\nshould be specified via `input_uri`. If set, `input_uri` should be unset.", - "type": "string" - }, "features": { "description": "Requested video annotation features.", - "type": "array", + "enumDescriptions": [ + "Unspecified.", + "Label detection. Detect objects, such as dog or flower.", + "Shot change detection.", + "Safe search detection." + ], "items": { "enum": [ "FEATURE_UNSPECIFIED", @@ -141,12 +424,19 @@ ], "type": "string" }, - "enumDescriptions": [ - "Unspecified.", - "Label detection. Detect objects, such as dog or flower.", - "Shot change detection.", - "Safe search detection." - ] + "type": "array" + }, + "inputContent": { + "description": "The video data bytes. Encoding: base64. If unset, the input video(s)\nshould be specified via `input_uri`. If set, `input_uri` should be unset.", + "type": "string" + }, + "inputUri": { + "description": "Input video location. Currently, only\n[Google Cloud Storage](https://cloud.google.com/storage/) URIs are\nsupported, which must be specified in the following format:\n`gs://bucket-id/object-id` (other URI formats return\ngoogle.rpc.Code.INVALID_ARGUMENT). For more information, see\n[Request URIs](/storage/docs/reference-uris).\nA video URI may include wildcards in `object-id`, and thus identify\nmultiple videos. Supported wildcards: '*' to match 0 or more characters;\n'?' to match 1 character. If unset, the input video should be embedded\nin the request as `input_content`. If set, `input_content` should be unset.", + "type": "string" + }, + "locationId": { + "description": "Optional cloud region where annotation should take place. Supported cloud\nregions: `us-east1`, `us-west1`, `europe-west1`, `asia-east1`. If no region\nis specified, a region will be determined based on video file location.", + "type": "string" }, "outputUri": { "description": "Optional location where the output (in JSON format) should be stored.\nCurrently, only [Google Cloud Storage](https://cloud.google.com/storage/)\nURIs are supported, which must be specified in the following format:\n`gs://bucket-id/object-id` (other URI formats return\ngoogle.rpc.Code.INVALID_ARGUMENT). For more information, see\n[Request URIs](/storage/docs/reference-uris).", @@ -157,11 +447,301 @@ "description": "Additional video context and/or feature-specific parameters." } }, - "id": "GoogleCloudVideointelligenceV1beta1_AnnotateVideoRequest" + "type": "object" + }, + "GoogleCloudVideointelligenceV1beta1_AnnotateVideoResponse": { + "description": "Video annotation response. Included in the `response`\nfield of the `Operation` returned by the `GetOperation`\ncall of the `google::longrunning::Operations` service.", + "id": "GoogleCloudVideointelligenceV1beta1_AnnotateVideoResponse", + "properties": { + "annotationResults": { + "description": "Annotation results for all videos specified in `AnnotateVideoRequest`.", + "items": { + "$ref": "GoogleCloudVideointelligenceV1beta1_VideoAnnotationResults" + }, + "type": "array" + } + }, + "type": "object" + }, + "GoogleCloudVideointelligenceV1beta1_LabelAnnotation": { + "description": "Label annotation.", + "id": "GoogleCloudVideointelligenceV1beta1_LabelAnnotation", + "properties": { + "description": { + "description": "Textual description, e.g. `Fixed-gear bicycle`.", + "type": "string" + }, + "languageCode": { + "description": "Language code for `description` in BCP-47 format.", + "type": "string" + }, + "locations": { + "description": "Where the label was detected and with what confidence.", + "items": { + "$ref": "GoogleCloudVideointelligenceV1beta1_LabelLocation" + }, + "type": "array" + } + }, + "type": "object" + }, + "GoogleCloudVideointelligenceV1beta1_LabelLocation": { + "description": "Label location.", + "id": "GoogleCloudVideointelligenceV1beta1_LabelLocation", + "properties": { + "confidence": { + "description": "Confidence that the label is accurate. Range: [0, 1].", + "format": "float", + "type": "number" + }, + "level": { + "description": "Label level.", + "enum": [ + "LABEL_LEVEL_UNSPECIFIED", + "VIDEO_LEVEL", + "SEGMENT_LEVEL", + "SHOT_LEVEL", + "FRAME_LEVEL" + ], + "enumDescriptions": [ + "Unspecified.", + "Video-level. Corresponds to the whole video.", + "Segment-level. Corresponds to one of `AnnotateSpec.segments`.", + "Shot-level. Corresponds to a single shot (i.e. a series of frames\nwithout a major camera position or background change).", + "Frame-level. Corresponds to a single video frame." + ], + "type": "string" + }, + "segment": { + "$ref": "GoogleCloudVideointelligenceV1beta1_VideoSegment", + "description": "Video segment. Set to [-1, -1] for video-level labels.\nSet to [timestamp, timestamp] for frame-level labels.\nOtherwise, corresponds to one of `AnnotateSpec.segments`\n(if specified) or to shot boundaries (if requested)." + } + }, + "type": "object" + }, + "GoogleCloudVideointelligenceV1beta1_SafeSearchAnnotation": { + "description": "Safe search annotation (based on per-frame visual signals only).\nIf no unsafe content has been detected in a frame, no annotations\nare present for that frame. If only some types of unsafe content\nhave been detected in a frame, the likelihood is set to `UNKNOWN`\nfor all other types of unsafe content.", + "id": "GoogleCloudVideointelligenceV1beta1_SafeSearchAnnotation", + "properties": { + "adult": { + "description": "Likelihood of adult content.", + "enum": [ + "UNKNOWN", + "VERY_UNLIKELY", + "UNLIKELY", + "POSSIBLE", + "LIKELY", + "VERY_LIKELY" + ], + "enumDescriptions": [ + "Unknown likelihood.", + "Very unlikely.", + "Unlikely.", + "Possible.", + "Likely.", + "Very likely." + ], + "type": "string" + }, + "medical": { + "description": "Likelihood of medical content.", + "enum": [ + "UNKNOWN", + "VERY_UNLIKELY", + "UNLIKELY", + "POSSIBLE", + "LIKELY", + "VERY_LIKELY" + ], + "enumDescriptions": [ + "Unknown likelihood.", + "Very unlikely.", + "Unlikely.", + "Possible.", + "Likely.", + "Very likely." + ], + "type": "string" + }, + "racy": { + "description": "Likelihood of racy content.", + "enum": [ + "UNKNOWN", + "VERY_UNLIKELY", + "UNLIKELY", + "POSSIBLE", + "LIKELY", + "VERY_LIKELY" + ], + "enumDescriptions": [ + "Unknown likelihood.", + "Very unlikely.", + "Unlikely.", + "Possible.", + "Likely.", + "Very likely." + ], + "type": "string" + }, + "spoof": { + "description": "Likelihood that an obvious modification was made to the original\nversion to make it appear funny or offensive.", + "enum": [ + "UNKNOWN", + "VERY_UNLIKELY", + "UNLIKELY", + "POSSIBLE", + "LIKELY", + "VERY_LIKELY" + ], + "enumDescriptions": [ + "Unknown likelihood.", + "Very unlikely.", + "Unlikely.", + "Possible.", + "Likely.", + "Very likely." + ], + "type": "string" + }, + "timeOffset": { + "description": "Video time offset in microseconds.", + "format": "int64", + "type": "string" + }, + "violent": { + "description": "Likelihood of violent content.", + "enum": [ + "UNKNOWN", + "VERY_UNLIKELY", + "UNLIKELY", + "POSSIBLE", + "LIKELY", + "VERY_LIKELY" + ], + "enumDescriptions": [ + "Unknown likelihood.", + "Very unlikely.", + "Unlikely.", + "Possible.", + "Likely.", + "Very likely." + ], + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudVideointelligenceV1beta1_VideoAnnotationProgress": { + "description": "Annotation progress for a single video.", + "id": "GoogleCloudVideointelligenceV1beta1_VideoAnnotationProgress", + "properties": { + "inputUri": { + "description": "Video file location in\n[Google Cloud Storage](https://cloud.google.com/storage/).", + "type": "string" + }, + "progressPercent": { + "description": "Approximate percentage processed thus far.\nGuaranteed to be 100 when fully processed.", + "format": "int32", + "type": "integer" + }, + "startTime": { + "description": "Time when the request was received.", + "format": "google-datetime", + "type": "string" + }, + "updateTime": { + "description": "Time of the most recent update.", + "format": "google-datetime", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudVideointelligenceV1beta1_VideoAnnotationResults": { + "description": "Annotation results for a single video.", + "id": "GoogleCloudVideointelligenceV1beta1_VideoAnnotationResults", + "properties": { + "error": { + "$ref": "GoogleRpc_Status", + "description": "If set, indicates an error. Note that for a single `AnnotateVideoRequest`\nsome videos may succeed and some may fail." + }, + "inputUri": { + "description": "Video file location in\n[Google Cloud Storage](https://cloud.google.com/storage/).", + "type": "string" + }, + "labelAnnotations": { + "description": "Label annotations. There is exactly one element for each unique label.", + "items": { + "$ref": "GoogleCloudVideointelligenceV1beta1_LabelAnnotation" + }, + "type": "array" + }, + "safeSearchAnnotations": { + "description": "Safe search annotations.", + "items": { + "$ref": "GoogleCloudVideointelligenceV1beta1_SafeSearchAnnotation" + }, + "type": "array" + }, + "shotAnnotations": { + "description": "Shot annotations. Each shot is represented as a video segment.", + "items": { + "$ref": "GoogleCloudVideointelligenceV1beta1_VideoSegment" + }, + "type": "array" + } + }, + "type": "object" + }, + "GoogleCloudVideointelligenceV1beta1_VideoContext": { + "description": "Video context and/or feature-specific parameters.", + "id": "GoogleCloudVideointelligenceV1beta1_VideoContext", + "properties": { + "labelDetectionMode": { + "description": "If label detection has been requested, what labels should be detected\nin addition to video-level labels or segment-level labels. If unspecified,\ndefaults to `SHOT_MODE`.", + "enum": [ + "LABEL_DETECTION_MODE_UNSPECIFIED", + "SHOT_MODE", + "FRAME_MODE", + "SHOT_AND_FRAME_MODE" + ], + "enumDescriptions": [ + "Unspecified.", + "Detect shot-level labels.", + "Detect frame-level labels.", + "Detect both shot-level and frame-level labels." + ], + "type": "string" + }, + "labelDetectionModel": { + "description": "Model to use for label detection.\nSupported values: \"latest\" and \"stable\" (the default).", + "type": "string" + }, + "safeSearchDetectionModel": { + "description": "Model to use for safe search detection.\nSupported values: \"latest\" and \"stable\" (the default).", + "type": "string" + }, + "segments": { + "description": "Video segments to annotate. The segments may overlap and are not required\nto be contiguous or span the whole video. If unspecified, each video\nis treated as a single segment.", + "items": { + "$ref": "GoogleCloudVideointelligenceV1beta1_VideoSegment" + }, + "type": "array" + }, + "shotChangeDetectionModel": { + "description": "Model to use for shot change detection.\nSupported values: \"latest\" and \"stable\" (the default).", + "type": "string" + }, + "stationaryCamera": { + "description": "Whether the video has been shot from a stationary (i.e. non-moving) camera.\nWhen set to true, might improve detection accuracy for moving objects.", + "type": "boolean" + } + }, + "type": "object" }, "GoogleCloudVideointelligenceV1beta1_VideoSegment": { "description": "Video segment.", - "type": "object", + "id": "GoogleCloudVideointelligenceV1beta1_VideoSegment", "properties": { "endTimeOffset": { "description": "End offset in microseconds (inclusive). Unset means 0.", @@ -174,578 +754,83 @@ "type": "string" } }, - "id": "GoogleCloudVideointelligenceV1beta1_VideoSegment" + "type": "object" }, - "GoogleCloudVideointelligenceV1beta2_LabelSegment": { - "description": "Video segment level annotation results for label detection.", - "type": "object", - "properties": { - "segment": { - "description": "Video segment where a label was detected.", - "$ref": "GoogleCloudVideointelligenceV1beta2_VideoSegment" - }, - "confidence": { - "description": "Confidence that the label is accurate. Range: [0, 1].", - "format": "float", - "type": "number" - } - }, - "id": "GoogleCloudVideointelligenceV1beta2_LabelSegment" - }, - "GoogleCloudVideointelligenceV1beta2_LabelAnnotation": { - "description": "Label annotation.", - "type": "object", - "properties": { - "entity": { - "description": "Detected entity.", - "$ref": "GoogleCloudVideointelligenceV1beta2_Entity" - }, - "frames": { - "description": "All video frames where a label was detected.", - "type": "array", - "items": { - "$ref": "GoogleCloudVideointelligenceV1beta2_LabelFrame" - } - }, - "segments": { - "description": "All video segments where a label was detected.", - "type": "array", - "items": { - "$ref": "GoogleCloudVideointelligenceV1beta2_LabelSegment" - } - }, - "categoryEntities": { - "description": "Common categories for the detected entity.\nE.g. when the label is `Terrier` the category is likely `dog`. And in some\ncases there might be more than one categories e.g. `Terrier` could also be\na `pet`.", - "type": "array", - "items": { - "$ref": "GoogleCloudVideointelligenceV1beta2_Entity" - } - } - }, - "id": "GoogleCloudVideointelligenceV1beta2_LabelAnnotation" - }, - "GoogleCloudVideointelligenceV1beta1_SafeSearchAnnotation": { - "description": "Safe search annotation (based on per-frame visual signals only).\nIf no unsafe content has been detected in a frame, no annotations\nare present for that frame. If only some types of unsafe content\nhave been detected in a frame, the likelihood is set to `UNKNOWN`\nfor all other types of unsafe content.", - "type": "object", - "properties": { - "adult": { - "enumDescriptions": [ - "Unknown likelihood.", - "Very unlikely.", - "Unlikely.", - "Possible.", - "Likely.", - "Very likely." - ], - "enum": [ - "UNKNOWN", - "VERY_UNLIKELY", - "UNLIKELY", - "POSSIBLE", - "LIKELY", - "VERY_LIKELY" - ], - "description": "Likelihood of adult content.", - "type": "string" - }, - "racy": { - "description": "Likelihood of racy content.", - "type": "string", - "enumDescriptions": [ - "Unknown likelihood.", - "Very unlikely.", - "Unlikely.", - "Possible.", - "Likely.", - "Very likely." - ], - "enum": [ - "UNKNOWN", - "VERY_UNLIKELY", - "UNLIKELY", - "POSSIBLE", - "LIKELY", - "VERY_LIKELY" - ] - }, - "timeOffset": { - "description": "Video time offset in microseconds.", - "format": "int64", - "type": "string" - }, - "violent": { - "enumDescriptions": [ - "Unknown likelihood.", - "Very unlikely.", - "Unlikely.", - "Possible.", - "Likely.", - "Very likely." - ], - "enum": [ - "UNKNOWN", - "VERY_UNLIKELY", - "UNLIKELY", - "POSSIBLE", - "LIKELY", - "VERY_LIKELY" - ], - "description": "Likelihood of violent content.", - "type": "string" - }, - "spoof": { - "description": "Likelihood that an obvious modification was made to the original\nversion to make it appear funny or offensive.", - "type": "string", - "enumDescriptions": [ - "Unknown likelihood.", - "Very unlikely.", - "Unlikely.", - "Possible.", - "Likely.", - "Very likely." - ], - "enum": [ - "UNKNOWN", - "VERY_UNLIKELY", - "UNLIKELY", - "POSSIBLE", - "LIKELY", - "VERY_LIKELY" - ] - }, - "medical": { - "description": "Likelihood of medical content.", - "type": "string", - "enumDescriptions": [ - "Unknown likelihood.", - "Very unlikely.", - "Unlikely.", - "Possible.", - "Likely.", - "Very likely." - ], - "enum": [ - "UNKNOWN", - "VERY_UNLIKELY", - "UNLIKELY", - "POSSIBLE", - "LIKELY", - "VERY_LIKELY" - ] - } - }, - "id": "GoogleCloudVideointelligenceV1beta1_SafeSearchAnnotation" - }, - "GoogleCloudVideointelligenceV1beta1_AnnotateVideoProgress": { + "GoogleCloudVideointelligenceV1beta2_AnnotateVideoProgress": { "description": "Video annotation progress. Included in the `metadata`\nfield of the `Operation` returned by the `GetOperation`\ncall of the `google::longrunning::Operations` service.", - "type": "object", + "id": "GoogleCloudVideointelligenceV1beta2_AnnotateVideoProgress", "properties": { "annotationProgress": { "description": "Progress metadata for all videos specified in `AnnotateVideoRequest`.", - "type": "array", "items": { - "$ref": "GoogleCloudVideointelligenceV1beta1_VideoAnnotationProgress" - } + "$ref": "GoogleCloudVideointelligenceV1beta2_VideoAnnotationProgress" + }, + "type": "array" } }, - "id": "GoogleCloudVideointelligenceV1beta1_AnnotateVideoProgress" - }, - "GoogleCloudVideointelligenceV1_Entity": { - "description": "Detected entity from video analysis.", - "type": "object", - "properties": { - "description": { - "description": "Textual description, e.g. `Fixed-gear bicycle`.", - "type": "string" - }, - "languageCode": { - "description": "Language code for `description` in BCP-47 format.", - "type": "string" - }, - "entityId": { - "description": "Opaque entity ID. Some IDs may be available in\n[Google Knowledge Graph Search\nAPI](https://developers.google.com/knowledge-graph/).", - "type": "string" - } - }, - "id": "GoogleCloudVideointelligenceV1_Entity" - }, - "GoogleCloudVideointelligenceV1beta2_Entity": { - "description": "Detected entity from video analysis.", - "type": "object", - "properties": { - "description": { - "description": "Textual description, e.g. `Fixed-gear bicycle`.", - "type": "string" - }, - "languageCode": { - "description": "Language code for `description` in BCP-47 format.", - "type": "string" - }, - "entityId": { - "description": "Opaque entity ID. Some IDs may be available in\n[Google Knowledge Graph Search\nAPI](https://developers.google.com/knowledge-graph/).", - "type": "string" - } - }, - "id": "GoogleCloudVideointelligenceV1beta2_Entity" - }, - "GoogleCloudVideointelligenceV1beta2_VideoSegment": { - "description": "Video segment.", - "type": "object", - "properties": { - "endTimeOffset": { - "description": "Time-offset, relative to the beginning of the video,\ncorresponding to the end of the segment (inclusive).", - "format": "google-duration", - "type": "string" - }, - "startTimeOffset": { - "description": "Time-offset, relative to the beginning of the video,\ncorresponding to the start of the segment (inclusive).", - "format": "google-duration", - "type": "string" - } - }, - "id": "GoogleCloudVideointelligenceV1beta2_VideoSegment" - }, - "GoogleCloudVideointelligenceV1_VideoAnnotationResults": { - "description": "Annotation results for a single video.", - "type": "object", - "properties": { - "error": { - "$ref": "GoogleRpc_Status", - "description": "If set, indicates an error. Note that for a single `AnnotateVideoRequest`\nsome videos may succeed and some may fail." - }, - "frameLabelAnnotations": { - "description": "Label annotations on frame level.\nThere is exactly one element for each unique label.", - "type": "array", - "items": { - "$ref": "GoogleCloudVideointelligenceV1_LabelAnnotation" - } - }, - "inputUri": { - "description": "Video file location in\n[Google Cloud Storage](https://cloud.google.com/storage/).", - "type": "string" - }, - "segmentLabelAnnotations": { - "description": "Label annotations on video level or user specified segment level.\nThere is exactly one element for each unique label.", - "type": "array", - "items": { - "$ref": "GoogleCloudVideointelligenceV1_LabelAnnotation" - } - }, - "explicitAnnotation": { - "description": "Explicit content annotation.", - "$ref": "GoogleCloudVideointelligenceV1_ExplicitContentAnnotation" - }, - "shotAnnotations": { - "description": "Shot annotations. Each shot is represented as a video segment.", - "type": "array", - "items": { - "$ref": "GoogleCloudVideointelligenceV1_VideoSegment" - } - }, - "shotLabelAnnotations": { - "description": "Label annotations on shot level.\nThere is exactly one element for each unique label.", - "type": "array", - "items": { - "$ref": "GoogleCloudVideointelligenceV1_LabelAnnotation" - } - } - }, - "id": "GoogleCloudVideointelligenceV1_VideoAnnotationResults" + "type": "object" }, "GoogleCloudVideointelligenceV1beta2_AnnotateVideoResponse": { "description": "Video annotation response. Included in the `response`\nfield of the `Operation` returned by the `GetOperation`\ncall of the `google::longrunning::Operations` service.", - "type": "object", + "id": "GoogleCloudVideointelligenceV1beta2_AnnotateVideoResponse", "properties": { "annotationResults": { "description": "Annotation results for all videos specified in `AnnotateVideoRequest`.", - "type": "array", "items": { "$ref": "GoogleCloudVideointelligenceV1beta2_VideoAnnotationResults" - } + }, + "type": "array" } }, - "id": "GoogleCloudVideointelligenceV1beta2_AnnotateVideoResponse" + "type": "object" }, - "GoogleCloudVideointelligenceV1beta1_LabelAnnotation": { - "description": "Label annotation.", - "type": "object", + "GoogleCloudVideointelligenceV1beta2_Entity": { + "description": "Detected entity from video analysis.", + "id": "GoogleCloudVideointelligenceV1beta2_Entity", "properties": { - "languageCode": { - "description": "Language code for `description` in BCP-47 format.", - "type": "string" - }, "description": { "description": "Textual description, e.g. `Fixed-gear bicycle`.", "type": "string" }, - "locations": { - "description": "Where the label was detected and with what confidence.", - "type": "array", - "items": { - "$ref": "GoogleCloudVideointelligenceV1beta1_LabelLocation" - } - } - }, - "id": "GoogleCloudVideointelligenceV1beta1_LabelAnnotation" - }, - "GoogleCloudVideointelligenceV1beta1_VideoContext": { - "description": "Video context and/or feature-specific parameters.", - "type": "object", - "properties": { - "safeSearchDetectionModel": { - "description": "Model to use for safe search detection.\nSupported values: \"latest\" and \"stable\" (the default).", + "entityId": { + "description": "Opaque entity ID. Some IDs may be available in\n[Google Knowledge Graph Search\nAPI](https://developers.google.com/knowledge-graph/).", "type": "string" }, - "segments": { - "description": "Video segments to annotate. The segments may overlap and are not required\nto be contiguous or span the whole video. If unspecified, each video\nis treated as a single segment.", - "type": "array", - "items": { - "$ref": "GoogleCloudVideointelligenceV1beta1_VideoSegment" - } - }, - "labelDetectionModel": { - "description": "Model to use for label detection.\nSupported values: \"latest\" and \"stable\" (the default).", - "type": "string" - }, - "shotChangeDetectionModel": { - "description": "Model to use for shot change detection.\nSupported values: \"latest\" and \"stable\" (the default).", - "type": "string" - }, - "labelDetectionMode": { - "description": "If label detection has been requested, what labels should be detected\nin addition to video-level labels or segment-level labels. If unspecified,\ndefaults to `SHOT_MODE`.", - "type": "string", - "enumDescriptions": [ - "Unspecified.", - "Detect shot-level labels.", - "Detect frame-level labels.", - "Detect both shot-level and frame-level labels." - ], - "enum": [ - "LABEL_DETECTION_MODE_UNSPECIFIED", - "SHOT_MODE", - "FRAME_MODE", - "SHOT_AND_FRAME_MODE" - ] - }, - "stationaryCamera": { - "description": "Whether the video has been shot from a stationary (i.e. non-moving) camera.\nWhen set to true, might improve detection accuracy for moving objects.", - "type": "boolean" - } - }, - "id": "GoogleCloudVideointelligenceV1beta1_VideoContext" - }, - "GoogleCloudVideointelligenceV1_LabelAnnotation": { - "description": "Label annotation.", - "type": "object", - "properties": { - "segments": { - "description": "All video segments where a label was detected.", - "type": "array", - "items": { - "$ref": "GoogleCloudVideointelligenceV1_LabelSegment" - } - }, - "categoryEntities": { - "description": "Common categories for the detected entity.\nE.g. when the label is `Terrier` the category is likely `dog`. And in some\ncases there might be more than one categories e.g. `Terrier` could also be\na `pet`.", - "type": "array", - "items": { - "$ref": "GoogleCloudVideointelligenceV1_Entity" - } - }, - "entity": { - "$ref": "GoogleCloudVideointelligenceV1_Entity", - "description": "Detected entity." - }, - "frames": { - "description": "All video frames where a label was detected.", - "type": "array", - "items": { - "$ref": "GoogleCloudVideointelligenceV1_LabelFrame" - } - } - }, - "id": "GoogleCloudVideointelligenceV1_LabelAnnotation" - }, - "GoogleRpc_Status": { - "description": "The `Status` type defines a logical error model that is suitable for different\nprogramming environments, including REST APIs and RPC APIs. It is used by\n[gRPC](https://github.com/grpc). The error model is designed to be:\n\n- Simple to use and understand for most users\n- Flexible enough to meet unexpected needs\n\n# Overview\n\nThe `Status` message contains three pieces of data: error code, error message,\nand error details. The error code should be an enum value of\ngoogle.rpc.Code, but it may accept additional error codes if needed. The\nerror message should be a developer-facing English message that helps\ndevelopers *understand* and *resolve* the error. If a localized user-facing\nerror message is needed, put the localized message in the error details or\nlocalize it in the client. The optional error details may contain arbitrary\ninformation about the error. There is a predefined set of error detail types\nin the package `google.rpc` that can be used for common error conditions.\n\n# Language mapping\n\nThe `Status` message is the logical representation of the error model, but it\nis not necessarily the actual wire format. When the `Status` message is\nexposed in different client libraries and different wire protocols, it can be\nmapped differently. For example, it will likely be mapped to some exceptions\nin Java, but more likely mapped to some error codes in C.\n\n# Other uses\n\nThe error model and the `Status` message can be used in a variety of\nenvironments, either with or without APIs, to provide a\nconsistent developer experience across different environments.\n\nExample uses of this error model include:\n\n- Partial errors. If a service needs to return partial errors to the client,\n it may embed the `Status` in the normal response to indicate the partial\n errors.\n\n- Workflow errors. A typical workflow has multiple steps. Each step may\n have a `Status` message for error reporting.\n\n- Batch operations. If a client uses batch request and batch response, the\n `Status` message should be used directly inside batch response, one for\n each error sub-response.\n\n- Asynchronous operations. If an API call embeds asynchronous operation\n results in its response, the status of those operations should be\n represented directly using the `Status` message.\n\n- Logging. If some API errors are stored in logs, the message `Status` could\n be used directly after any stripping needed for security/privacy reasons.", - "type": "object", - "properties": { - "details": { - "description": "A list of messages that carry the error details. There is a common set of\nmessage types for APIs to use.", - "type": "array", - "items": { - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - }, - "type": "object" - } - }, - "code": { - "description": "The status code, which should be an enum value of google.rpc.Code.", - "format": "int32", - "type": "integer" - }, - "message": { - "description": "A developer-facing error message, which should be in English. Any\nuser-facing error message should be localized and sent in the\ngoogle.rpc.Status.details field, or localized by the client.", + "languageCode": { + "description": "Language code for `description` in BCP-47 format.", "type": "string" } }, - "id": "GoogleRpc_Status" - }, - "GoogleCloudVideointelligenceV1_VideoSegment": { - "description": "Video segment.", - "type": "object", - "properties": { - "endTimeOffset": { - "description": "Time-offset, relative to the beginning of the video,\ncorresponding to the end of the segment (inclusive).", - "format": "google-duration", - "type": "string" - }, - "startTimeOffset": { - "description": "Time-offset, relative to the beginning of the video,\ncorresponding to the start of the segment (inclusive).", - "format": "google-duration", - "type": "string" - } - }, - "id": "GoogleCloudVideointelligenceV1_VideoSegment" - }, - "GoogleCloudVideointelligenceV1_LabelFrame": { - "description": "Video frame level annotation results for label detection.", - "type": "object", - "properties": { - "confidence": { - "description": "Confidence that the label is accurate. Range: [0, 1].", - "format": "float", - "type": "number" - }, - "timeOffset": { - "description": "Time-offset, relative to the beginning of the video, corresponding to the\nvideo frame for this location.", - "format": "google-duration", - "type": "string" - } - }, - "id": "GoogleCloudVideointelligenceV1_LabelFrame" - }, - "GoogleCloudVideointelligenceV1beta2_VideoAnnotationResults": { - "description": "Annotation results for a single video.", - "type": "object", - "properties": { - "shotAnnotations": { - "description": "Shot annotations. Each shot is represented as a video segment.", - "type": "array", - "items": { - "$ref": "GoogleCloudVideointelligenceV1beta2_VideoSegment" - } - }, - "shotLabelAnnotations": { - "description": "Label annotations on shot level.\nThere is exactly one element for each unique label.", - "type": "array", - "items": { - "$ref": "GoogleCloudVideointelligenceV1beta2_LabelAnnotation" - } - }, - "error": { - "description": "If set, indicates an error. Note that for a single `AnnotateVideoRequest`\nsome videos may succeed and some may fail.", - "$ref": "GoogleRpc_Status" - }, - "frameLabelAnnotations": { - "description": "Label annotations on frame level.\nThere is exactly one element for each unique label.", - "type": "array", - "items": { - "$ref": "GoogleCloudVideointelligenceV1beta2_LabelAnnotation" - } - }, - "inputUri": { - "description": "Video file location in\n[Google Cloud Storage](https://cloud.google.com/storage/).", - "type": "string" - }, - "explicitAnnotation": { - "$ref": "GoogleCloudVideointelligenceV1beta2_ExplicitContentAnnotation", - "description": "Explicit content annotation." - }, - "segmentLabelAnnotations": { - "description": "Label annotations on video level or user specified segment level.\nThere is exactly one element for each unique label.", - "type": "array", - "items": { - "$ref": "GoogleCloudVideointelligenceV1beta2_LabelAnnotation" - } - } - }, - "id": "GoogleCloudVideointelligenceV1beta2_VideoAnnotationResults" - }, - "GoogleCloudVideointelligenceV1beta1_LabelLocation": { - "description": "Label location.", - "type": "object", - "properties": { - "segment": { - "description": "Video segment. Set to [-1, -1] for video-level labels.\nSet to [timestamp, timestamp] for frame-level labels.\nOtherwise, corresponds to one of `AnnotateSpec.segments`\n(if specified) or to shot boundaries (if requested).", - "$ref": "GoogleCloudVideointelligenceV1beta1_VideoSegment" - }, - "level": { - "description": "Label level.", - "type": "string", - "enumDescriptions": [ - "Unspecified.", - "Video-level. Corresponds to the whole video.", - "Segment-level. Corresponds to one of `AnnotateSpec.segments`.", - "Shot-level. Corresponds to a single shot (i.e. a series of frames\nwithout a major camera position or background change).", - "Frame-level. Corresponds to a single video frame." - ], - "enum": [ - "LABEL_LEVEL_UNSPECIFIED", - "VIDEO_LEVEL", - "SEGMENT_LEVEL", - "SHOT_LEVEL", - "FRAME_LEVEL" - ] - }, - "confidence": { - "description": "Confidence that the label is accurate. Range: [0, 1].", - "format": "float", - "type": "number" - } - }, - "id": "GoogleCloudVideointelligenceV1beta1_LabelLocation" + "type": "object" }, "GoogleCloudVideointelligenceV1beta2_ExplicitContentAnnotation": { "description": "Explicit content annotation (based on per-frame visual signals only).\nIf no explicit content has been detected in a frame, no annotations are\npresent for that frame.", - "type": "object", + "id": "GoogleCloudVideointelligenceV1beta2_ExplicitContentAnnotation", "properties": { "frames": { "description": "All video frames where explicit content was detected.", - "type": "array", "items": { "$ref": "GoogleCloudVideointelligenceV1beta2_ExplicitContentFrame" - } + }, + "type": "array" } }, - "id": "GoogleCloudVideointelligenceV1beta2_ExplicitContentAnnotation" + "type": "object" }, - "GoogleCloudVideointelligenceV1beta2_LabelFrame": { - "description": "Video frame level annotation results for label detection.", - "type": "object", - "properties": { - "confidence": { - "description": "Confidence that the label is accurate. Range: [0, 1].", - "format": "float", - "type": "number" - }, - "timeOffset": { - "description": "Time-offset, relative to the beginning of the video, corresponding to the\nvideo frame for this location.", - "format": "google-duration", - "type": "string" - } - }, - "id": "GoogleCloudVideointelligenceV1beta2_LabelFrame" - }, - "GoogleCloudVideointelligenceV1_ExplicitContentFrame": { + "GoogleCloudVideointelligenceV1beta2_ExplicitContentFrame": { "description": "Video frame level annotation results for explicit content.", - "type": "object", + "id": "GoogleCloudVideointelligenceV1beta2_ExplicitContentFrame", "properties": { "pornographyLikelihood": { "description": "Likelihood of the pornography content..", - "type": "string", + "enum": [ + "LIKELIHOOD_UNSPECIFIED", + "VERY_UNLIKELY", + "UNLIKELY", + "POSSIBLE", + "LIKELY", + "VERY_LIKELY" + ], "enumDescriptions": [ "Unspecified likelihood.", "Very unlikely.", @@ -754,14 +839,7 @@ "Likely.", "Very likely." ], - "enum": [ - "LIKELIHOOD_UNSPECIFIED", - "VERY_UNLIKELY", - "UNLIKELY", - "POSSIBLE", - "LIKELY", - "VERY_LIKELY" - ] + "type": "string" }, "timeOffset": { "description": "Time-offset, relative to the beginning of the video, corresponding to the\nvideo frame for this location.", @@ -769,39 +847,76 @@ "type": "string" } }, - "id": "GoogleCloudVideointelligenceV1_ExplicitContentFrame" + "type": "object" }, - "GoogleCloudVideointelligenceV1_ExplicitContentAnnotation": { - "description": "Explicit content annotation (based on per-frame visual signals only).\nIf no explicit content has been detected in a frame, no annotations are\npresent for that frame.", - "type": "object", + "GoogleCloudVideointelligenceV1beta2_LabelAnnotation": { + "description": "Label annotation.", + "id": "GoogleCloudVideointelligenceV1beta2_LabelAnnotation", "properties": { + "categoryEntities": { + "description": "Common categories for the detected entity.\nE.g. when the label is `Terrier` the category is likely `dog`. And in some\ncases there might be more than one categories e.g. `Terrier` could also be\na `pet`.", + "items": { + "$ref": "GoogleCloudVideointelligenceV1beta2_Entity" + }, + "type": "array" + }, + "entity": { + "$ref": "GoogleCloudVideointelligenceV1beta2_Entity", + "description": "Detected entity." + }, "frames": { - "description": "All video frames where explicit content was detected.", - "type": "array", + "description": "All video frames where a label was detected.", "items": { - "$ref": "GoogleCloudVideointelligenceV1_ExplicitContentFrame" - } + "$ref": "GoogleCloudVideointelligenceV1beta2_LabelFrame" + }, + "type": "array" + }, + "segments": { + "description": "All video segments where a label was detected.", + "items": { + "$ref": "GoogleCloudVideointelligenceV1beta2_LabelSegment" + }, + "type": "array" } }, - "id": "GoogleCloudVideointelligenceV1_ExplicitContentAnnotation" + "type": "object" }, - "GoogleCloudVideointelligenceV1beta2_AnnotateVideoProgress": { - "description": "Video annotation progress. Included in the `metadata`\nfield of the `Operation` returned by the `GetOperation`\ncall of the `google::longrunning::Operations` service.", - "type": "object", + "GoogleCloudVideointelligenceV1beta2_LabelFrame": { + "description": "Video frame level annotation results for label detection.", + "id": "GoogleCloudVideointelligenceV1beta2_LabelFrame", "properties": { - "annotationProgress": { - "description": "Progress metadata for all videos specified in `AnnotateVideoRequest`.", - "type": "array", - "items": { - "$ref": "GoogleCloudVideointelligenceV1beta2_VideoAnnotationProgress" - } + "confidence": { + "description": "Confidence that the label is accurate. Range: [0, 1].", + "format": "float", + "type": "number" + }, + "timeOffset": { + "description": "Time-offset, relative to the beginning of the video, corresponding to the\nvideo frame for this location.", + "format": "google-duration", + "type": "string" } }, - "id": "GoogleCloudVideointelligenceV1beta2_AnnotateVideoProgress" + "type": "object" }, - "GoogleCloudVideointelligenceV1_VideoAnnotationProgress": { + "GoogleCloudVideointelligenceV1beta2_LabelSegment": { + "description": "Video segment level annotation results for label detection.", + "id": "GoogleCloudVideointelligenceV1beta2_LabelSegment", + "properties": { + "confidence": { + "description": "Confidence that the label is accurate. Range: [0, 1].", + "format": "float", + "type": "number" + }, + "segment": { + "$ref": "GoogleCloudVideointelligenceV1beta2_VideoSegment", + "description": "Video segment where a label was detected." + } + }, + "type": "object" + }, + "GoogleCloudVideointelligenceV1beta2_VideoAnnotationProgress": { "description": "Annotation progress for a single video.", - "type": "object", + "id": "GoogleCloudVideointelligenceV1beta2_VideoAnnotationProgress", "properties": { "inputUri": { "description": "Video file location in\n[Google Cloud Storage](https://cloud.google.com/storage/).", @@ -812,56 +927,558 @@ "format": "int32", "type": "integer" }, + "startTime": { + "description": "Time when the request was received.", + "format": "google-datetime", + "type": "string" + }, "updateTime": { "description": "Time of the most recent update.", "format": "google-datetime", "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudVideointelligenceV1beta2_VideoAnnotationResults": { + "description": "Annotation results for a single video.", + "id": "GoogleCloudVideointelligenceV1beta2_VideoAnnotationResults", + "properties": { + "error": { + "$ref": "GoogleRpc_Status", + "description": "If set, indicates an error. Note that for a single `AnnotateVideoRequest`\nsome videos may succeed and some may fail." + }, + "explicitAnnotation": { + "$ref": "GoogleCloudVideointelligenceV1beta2_ExplicitContentAnnotation", + "description": "Explicit content annotation." + }, + "frameLabelAnnotations": { + "description": "Label annotations on frame level.\nThere is exactly one element for each unique label.", + "items": { + "$ref": "GoogleCloudVideointelligenceV1beta2_LabelAnnotation" + }, + "type": "array" + }, + "inputUri": { + "description": "Video file location in\n[Google Cloud Storage](https://cloud.google.com/storage/).", + "type": "string" + }, + "segmentLabelAnnotations": { + "description": "Label annotations on video level or user specified segment level.\nThere is exactly one element for each unique label.", + "items": { + "$ref": "GoogleCloudVideointelligenceV1beta2_LabelAnnotation" + }, + "type": "array" + }, + "shotAnnotations": { + "description": "Shot annotations. Each shot is represented as a video segment.", + "items": { + "$ref": "GoogleCloudVideointelligenceV1beta2_VideoSegment" + }, + "type": "array" + }, + "shotLabelAnnotations": { + "description": "Label annotations on shot level.\nThere is exactly one element for each unique label.", + "items": { + "$ref": "GoogleCloudVideointelligenceV1beta2_LabelAnnotation" + }, + "type": "array" + } + }, + "type": "object" + }, + "GoogleCloudVideointelligenceV1beta2_VideoSegment": { + "description": "Video segment.", + "id": "GoogleCloudVideointelligenceV1beta2_VideoSegment", + "properties": { + "endTimeOffset": { + "description": "Time-offset, relative to the beginning of the video,\ncorresponding to the end of the segment (inclusive).", + "format": "google-duration", + "type": "string" + }, + "startTimeOffset": { + "description": "Time-offset, relative to the beginning of the video,\ncorresponding to the start of the segment (inclusive).", + "format": "google-duration", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudVideointelligenceV1p1beta1_AnnotateVideoProgress": { + "description": "Video annotation progress. Included in the `metadata`\nfield of the `Operation` returned by the `GetOperation`\ncall of the `google::longrunning::Operations` service.", + "id": "GoogleCloudVideointelligenceV1p1beta1_AnnotateVideoProgress", + "properties": { + "annotationProgress": { + "description": "Progress metadata for all videos specified in `AnnotateVideoRequest`.", + "items": { + "$ref": "GoogleCloudVideointelligenceV1p1beta1_VideoAnnotationProgress" + }, + "type": "array" + } + }, + "type": "object" + }, + "GoogleCloudVideointelligenceV1p1beta1_AnnotateVideoResponse": { + "description": "Video annotation response. Included in the `response`\nfield of the `Operation` returned by the `GetOperation`\ncall of the `google::longrunning::Operations` service.", + "id": "GoogleCloudVideointelligenceV1p1beta1_AnnotateVideoResponse", + "properties": { + "annotationResults": { + "description": "Annotation results for all videos specified in `AnnotateVideoRequest`.", + "items": { + "$ref": "GoogleCloudVideointelligenceV1p1beta1_VideoAnnotationResults" + }, + "type": "array" + } + }, + "type": "object" + }, + "GoogleCloudVideointelligenceV1p1beta1_EmotionAttribute": { + "description": "Emotion attribute.", + "id": "GoogleCloudVideointelligenceV1p1beta1_EmotionAttribute", + "properties": { + "emotion": { + "description": "Emotion entry.", + "enum": [ + "EMOTION_UNSPECIFIED", + "AMUSEMENT", + "ANGER", + "CONCENTRATION", + "CONTENTMENT", + "DESIRE", + "DISAPPOINTMENT", + "DISGUST", + "ELATION", + "EMBARRASSMENT", + "INTEREST", + "PRIDE", + "SADNESS", + "SURPRISE" + ], + "enumDescriptions": [ + "Unspecified emotion.", + "Amusement.", + "Anger.", + "Concentration.", + "Contentment.", + "Desire.", + "Disappointment.", + "Disgust.", + "Elation.", + "Embarrassment.", + "Interest.", + "Pride.", + "Sadness.", + "Surprise." + ], + "type": "string" + }, + "score": { + "description": "Confidence score.", + "format": "float", + "type": "number" + } + }, + "type": "object" + }, + "GoogleCloudVideointelligenceV1p1beta1_Entity": { + "description": "Detected entity from video analysis.", + "id": "GoogleCloudVideointelligenceV1p1beta1_Entity", + "properties": { + "description": { + "description": "Textual description, e.g. `Fixed-gear bicycle`.", + "type": "string" + }, + "entityId": { + "description": "Opaque entity ID. Some IDs may be available in\n[Google Knowledge Graph Search\nAPI](https://developers.google.com/knowledge-graph/).", + "type": "string" + }, + "languageCode": { + "description": "Language code for `description` in BCP-47 format.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudVideointelligenceV1p1beta1_ExplicitContentAnnotation": { + "description": "Explicit content annotation (based on per-frame visual signals only).\nIf no explicit content has been detected in a frame, no annotations are\npresent for that frame.", + "id": "GoogleCloudVideointelligenceV1p1beta1_ExplicitContentAnnotation", + "properties": { + "frames": { + "description": "All video frames where explicit content was detected.", + "items": { + "$ref": "GoogleCloudVideointelligenceV1p1beta1_ExplicitContentFrame" + }, + "type": "array" + } + }, + "type": "object" + }, + "GoogleCloudVideointelligenceV1p1beta1_ExplicitContentFrame": { + "description": "Video frame level annotation results for explicit content.", + "id": "GoogleCloudVideointelligenceV1p1beta1_ExplicitContentFrame", + "properties": { + "pornographyLikelihood": { + "description": "Likelihood of the pornography content..", + "enum": [ + "LIKELIHOOD_UNSPECIFIED", + "VERY_UNLIKELY", + "UNLIKELY", + "POSSIBLE", + "LIKELY", + "VERY_LIKELY" + ], + "enumDescriptions": [ + "Unspecified likelihood.", + "Very unlikely.", + "Unlikely.", + "Possible.", + "Likely.", + "Very likely." + ], + "type": "string" + }, + "timeOffset": { + "description": "Time-offset, relative to the beginning of the video, corresponding to the\nvideo frame for this location.", + "format": "google-duration", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudVideointelligenceV1p1beta1_FaceDetectionAnnotation": { + "description": "Face detection annotation.", + "id": "GoogleCloudVideointelligenceV1p1beta1_FaceDetectionAnnotation", + "properties": { + "frames": { + "description": "All video frames where a face was detected.", + "items": { + "$ref": "GoogleCloudVideointelligenceV1p1beta1_FaceDetectionFrame" + }, + "type": "array" + }, + "segments": { + "description": "All video segments where a face was detected.", + "items": { + "$ref": "GoogleCloudVideointelligenceV1p1beta1_FaceSegment" + }, + "type": "array" + } + }, + "type": "object" + }, + "GoogleCloudVideointelligenceV1p1beta1_FaceDetectionAttribute": { + "description": "Face detection attribute.", + "id": "GoogleCloudVideointelligenceV1p1beta1_FaceDetectionAttribute", + "properties": { + "emotions": { + "description": "Emotion attributes.", + "items": { + "$ref": "GoogleCloudVideointelligenceV1p1beta1_EmotionAttribute" + }, + "type": "array" + }, + "normalizedBoundingBox": { + "$ref": "GoogleCloudVideointelligenceV1p1beta1_NormalizedBoundingBox", + "description": "Normalized Bounding box." + } + }, + "type": "object" + }, + "GoogleCloudVideointelligenceV1p1beta1_FaceDetectionFrame": { + "description": "Video frame level annotation results for face detection.", + "id": "GoogleCloudVideointelligenceV1p1beta1_FaceDetectionFrame", + "properties": { + "attributes": { + "description": "Face attributes in a frame.\nThere can be more than one attributes if the same face is detected in\nmultiple locations within the current frame.", + "items": { + "$ref": "GoogleCloudVideointelligenceV1p1beta1_FaceDetectionAttribute" + }, + "type": "array" + }, + "timeOffset": { + "description": "Time-offset, relative to the beginning of the video,\ncorresponding to the video frame for this location.", + "format": "google-duration", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudVideointelligenceV1p1beta1_FaceSegment": { + "description": "Video segment level annotation results for face detection.", + "id": "GoogleCloudVideointelligenceV1p1beta1_FaceSegment", + "properties": { + "segment": { + "$ref": "GoogleCloudVideointelligenceV1p1beta1_VideoSegment", + "description": "Video segment where a face was detected." + } + }, + "type": "object" + }, + "GoogleCloudVideointelligenceV1p1beta1_LabelAnnotation": { + "description": "Label annotation.", + "id": "GoogleCloudVideointelligenceV1p1beta1_LabelAnnotation", + "properties": { + "categoryEntities": { + "description": "Common categories for the detected entity.\nE.g. when the label is `Terrier` the category is likely `dog`. And in some\ncases there might be more than one categories e.g. `Terrier` could also be\na `pet`.", + "items": { + "$ref": "GoogleCloudVideointelligenceV1p1beta1_Entity" + }, + "type": "array" + }, + "entity": { + "$ref": "GoogleCloudVideointelligenceV1p1beta1_Entity", + "description": "Detected entity." + }, + "frames": { + "description": "All video frames where a label was detected.", + "items": { + "$ref": "GoogleCloudVideointelligenceV1p1beta1_LabelFrame" + }, + "type": "array" + }, + "segments": { + "description": "All video segments where a label was detected.", + "items": { + "$ref": "GoogleCloudVideointelligenceV1p1beta1_LabelSegment" + }, + "type": "array" + } + }, + "type": "object" + }, + "GoogleCloudVideointelligenceV1p1beta1_LabelFrame": { + "description": "Video frame level annotation results for label detection.", + "id": "GoogleCloudVideointelligenceV1p1beta1_LabelFrame", + "properties": { + "confidence": { + "description": "Confidence that the label is accurate. Range: [0, 1].", + "format": "float", + "type": "number" + }, + "timeOffset": { + "description": "Time-offset, relative to the beginning of the video, corresponding to the\nvideo frame for this location.", + "format": "google-duration", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudVideointelligenceV1p1beta1_LabelSegment": { + "description": "Video segment level annotation results for label detection.", + "id": "GoogleCloudVideointelligenceV1p1beta1_LabelSegment", + "properties": { + "confidence": { + "description": "Confidence that the label is accurate. Range: [0, 1].", + "format": "float", + "type": "number" + }, + "segment": { + "$ref": "GoogleCloudVideointelligenceV1p1beta1_VideoSegment", + "description": "Video segment where a label was detected." + } + }, + "type": "object" + }, + "GoogleCloudVideointelligenceV1p1beta1_NormalizedBoundingBox": { + "description": "Normalized bounding box.\nThe normalized vertex coordinates are relative to the original image.\nRange: [0, 1].", + "id": "GoogleCloudVideointelligenceV1p1beta1_NormalizedBoundingBox", + "properties": { + "bottom": { + "description": "Bottom Y coordinate.", + "format": "float", + "type": "number" + }, + "left": { + "description": "Left X coordinate.", + "format": "float", + "type": "number" + }, + "right": { + "description": "Right X coordinate.", + "format": "float", + "type": "number" + }, + "top": { + "description": "Top Y coordinate.", + "format": "float", + "type": "number" + } + }, + "type": "object" + }, + "GoogleCloudVideointelligenceV1p1beta1_SpeechRecognitionAlternative": { + "description": "Alternative hypotheses (a.k.a. n-best list).", + "id": "GoogleCloudVideointelligenceV1p1beta1_SpeechRecognitionAlternative", + "properties": { + "confidence": { + "description": "Output only. The confidence estimate between 0.0 and 1.0. A higher number\nindicates an estimated greater likelihood that the recognized words are\ncorrect. This field is typically provided only for the top hypothesis, and\nonly for `is_final=true` results. Clients should not rely on the\n`confidence` field as it is not guaranteed to be accurate or consistent.\nThe default of 0.0 is a sentinel value indicating `confidence` was not set.", + "format": "float", + "type": "number" + }, + "transcript": { + "description": "Output only. Transcript text representing the words that the user spoke.", + "type": "string" + }, + "words": { + "description": "Output only. A list of word-specific information for each recognized word.", + "items": { + "$ref": "GoogleCloudVideointelligenceV1p1beta1_WordInfo" + }, + "type": "array" + } + }, + "type": "object" + }, + "GoogleCloudVideointelligenceV1p1beta1_SpeechTranscription": { + "description": "A speech recognition result corresponding to a portion of the audio.", + "id": "GoogleCloudVideointelligenceV1p1beta1_SpeechTranscription", + "properties": { + "alternatives": { + "description": "Output only. May contain one or more recognition hypotheses (up to the\nmaximum specified in `max_alternatives`).\nThese alternatives are ordered in terms of accuracy, with the top (first)\nalternative being the most probable, as ranked by the recognizer.", + "items": { + "$ref": "GoogleCloudVideointelligenceV1p1beta1_SpeechRecognitionAlternative" + }, + "type": "array" + } + }, + "type": "object" + }, + "GoogleCloudVideointelligenceV1p1beta1_VideoAnnotationProgress": { + "description": "Annotation progress for a single video.", + "id": "GoogleCloudVideointelligenceV1p1beta1_VideoAnnotationProgress", + "properties": { + "inputUri": { + "description": "Video file location in\n[Google Cloud Storage](https://cloud.google.com/storage/).", + "type": "string" + }, + "progressPercent": { + "description": "Approximate percentage processed thus far.\nGuaranteed to be 100 when fully processed.", + "format": "int32", + "type": "integer" }, "startTime": { "description": "Time when the request was received.", "format": "google-datetime", "type": "string" + }, + "updateTime": { + "description": "Time of the most recent update.", + "format": "google-datetime", + "type": "string" } }, - "id": "GoogleCloudVideointelligenceV1_VideoAnnotationProgress" + "type": "object" }, - "GoogleCloudVideointelligenceV1_AnnotateVideoProgress": { - "description": "Video annotation progress. Included in the `metadata`\nfield of the `Operation` returned by the `GetOperation`\ncall of the `google::longrunning::Operations` service.", - "type": "object", + "GoogleCloudVideointelligenceV1p1beta1_VideoAnnotationResults": { + "description": "Annotation results for a single video.", + "id": "GoogleCloudVideointelligenceV1p1beta1_VideoAnnotationResults", "properties": { - "annotationProgress": { - "description": "Progress metadata for all videos specified in `AnnotateVideoRequest`.", - "type": "array", + "error": { + "$ref": "GoogleRpc_Status", + "description": "If set, indicates an error. Note that for a single `AnnotateVideoRequest`\nsome videos may succeed and some may fail." + }, + "explicitAnnotation": { + "$ref": "GoogleCloudVideointelligenceV1p1beta1_ExplicitContentAnnotation", + "description": "Explicit content annotation." + }, + "faceDetectionAnnotations": { + "description": "Face detection annotations.", "items": { - "$ref": "GoogleCloudVideointelligenceV1_VideoAnnotationProgress" - } + "$ref": "GoogleCloudVideointelligenceV1p1beta1_FaceDetectionAnnotation" + }, + "type": "array" + }, + "frameLabelAnnotations": { + "description": "Label annotations on frame level.\nThere is exactly one element for each unique label.", + "items": { + "$ref": "GoogleCloudVideointelligenceV1p1beta1_LabelAnnotation" + }, + "type": "array" + }, + "inputUri": { + "description": "Video file location in\n[Google Cloud Storage](https://cloud.google.com/storage/).", + "type": "string" + }, + "segmentLabelAnnotations": { + "description": "Label annotations on video level or user specified segment level.\nThere is exactly one element for each unique label.", + "items": { + "$ref": "GoogleCloudVideointelligenceV1p1beta1_LabelAnnotation" + }, + "type": "array" + }, + "shotAnnotations": { + "description": "Shot annotations. Each shot is represented as a video segment.", + "items": { + "$ref": "GoogleCloudVideointelligenceV1p1beta1_VideoSegment" + }, + "type": "array" + }, + "shotLabelAnnotations": { + "description": "Label annotations on shot level.\nThere is exactly one element for each unique label.", + "items": { + "$ref": "GoogleCloudVideointelligenceV1p1beta1_LabelAnnotation" + }, + "type": "array" + }, + "speechTranscriptions": { + "description": "Speech transcription.", + "items": { + "$ref": "GoogleCloudVideointelligenceV1p1beta1_SpeechTranscription" + }, + "type": "array" } }, - "id": "GoogleCloudVideointelligenceV1_AnnotateVideoProgress" + "type": "object" + }, + "GoogleCloudVideointelligenceV1p1beta1_VideoSegment": { + "description": "Video segment.", + "id": "GoogleCloudVideointelligenceV1p1beta1_VideoSegment", + "properties": { + "endTimeOffset": { + "description": "Time-offset, relative to the beginning of the video,\ncorresponding to the end of the segment (inclusive).", + "format": "google-duration", + "type": "string" + }, + "startTimeOffset": { + "description": "Time-offset, relative to the beginning of the video,\ncorresponding to the start of the segment (inclusive).", + "format": "google-duration", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudVideointelligenceV1p1beta1_WordInfo": { + "description": "Word-specific information for recognized words. Word information is only\nincluded in the response when certain request parameters are set, such\nas `enable_word_time_offsets`.", + "id": "GoogleCloudVideointelligenceV1p1beta1_WordInfo", + "properties": { + "endTime": { + "description": "Output only. Time offset relative to the beginning of the audio, and\ncorresponding to the end of the spoken word. This field is only set if\n`enable_word_time_offsets=true` and only in the top hypothesis. This is an\nexperimental feature and the accuracy of the time offset can vary.", + "format": "google-duration", + "type": "string" + }, + "startTime": { + "description": "Output only. Time offset relative to the beginning of the audio, and\ncorresponding to the start of the spoken word. This field is only set if\n`enable_word_time_offsets=true` and only in the top hypothesis. This is an\nexperimental feature and the accuracy of the time offset can vary.", + "format": "google-duration", + "type": "string" + }, + "word": { + "description": "Output only. The word corresponding to this set of information.", + "type": "string" + } + }, + "type": "object" }, "GoogleLongrunning_Operation": { "description": "This resource represents a long-running operation that is the result of a\nnetwork API call.", - "type": "object", + "id": "GoogleLongrunning_Operation", "properties": { "done": { "description": "If the value is `false`, it means the operation is still in progress.\nIf `true`, the operation is completed, and either `error` or `response` is\navailable.", "type": "boolean" }, - "response": { - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - }, - "description": "The normal response of the operation in case of success. If the original\nmethod returns no data on success, such as `Delete`, the response is\n`google.protobuf.Empty`. If the original method is standard\n`Get`/`Create`/`Update`, the response should be the resource. For other\nmethods, the response should have the type `XxxResponse`, where `Xxx`\nis the original method name. For example, if the original method name\nis `TakeSnapshot()`, the inferred response type is\n`TakeSnapshotResponse`.", - "type": "object" - }, - "name": { - "description": "The server-assigned name, which is only unique within the same service that\noriginally returns it. If you use the default HTTP mapping, the\n`name` should have the format of `operations/some/unique/name`.", - "type": "string" - }, "error": { - "description": "The error result of the operation in case of failure or cancellation.", - "$ref": "GoogleRpc_Status" + "$ref": "GoogleRpc_Status", + "description": "The error result of the operation in case of failure or cancellation." }, "metadata": { "additionalProperties": { @@ -870,205 +1487,52 @@ }, "description": "Service-specific metadata associated with the operation. It typically\ncontains progress information and common metadata such as create time.\nSome services might not provide such metadata. Any method that returns a\nlong-running operation should document the metadata type, if any.", "type": "object" - } - }, - "id": "GoogleLongrunning_Operation" - }, - "GoogleCloudVideointelligenceV1beta1_VideoAnnotationResults": { - "description": "Annotation results for a single video.", - "type": "object", - "properties": { - "error": { - "$ref": "GoogleRpc_Status", - "description": "If set, indicates an error. Note that for a single `AnnotateVideoRequest`\nsome videos may succeed and some may fail." }, - "shotAnnotations": { - "description": "Shot annotations. Each shot is represented as a video segment.", - "type": "array", - "items": { - "$ref": "GoogleCloudVideointelligenceV1beta1_VideoSegment" - } - }, - "inputUri": { - "description": "Video file location in\n[Google Cloud Storage](https://cloud.google.com/storage/).", + "name": { + "description": "The server-assigned name, which is only unique within the same service that\noriginally returns it. If you use the default HTTP mapping, the\n`name` should have the format of `operations/some/unique/name`.", "type": "string" }, - "safeSearchAnnotations": { - "description": "Safe search annotations.", - "type": "array", - "items": { - "$ref": "GoogleCloudVideointelligenceV1beta1_SafeSearchAnnotation" - } - }, - "labelAnnotations": { - "description": "Label annotations. There is exactly one element for each unique label.", - "type": "array", - "items": { - "$ref": "GoogleCloudVideointelligenceV1beta1_LabelAnnotation" - } + "response": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "description": "The normal response of the operation in case of success. If the original\nmethod returns no data on success, such as `Delete`, the response is\n`google.protobuf.Empty`. If the original method is standard\n`Get`/`Create`/`Update`, the response should be the resource. For other\nmethods, the response should have the type `XxxResponse`, where `Xxx`\nis the original method name. For example, if the original method name\nis `TakeSnapshot()`, the inferred response type is\n`TakeSnapshotResponse`.", + "type": "object" } }, - "id": "GoogleCloudVideointelligenceV1beta1_VideoAnnotationResults" + "type": "object" }, - "GoogleCloudVideointelligenceV1beta2_VideoAnnotationProgress": { - "description": "Annotation progress for a single video.", - "type": "object", + "GoogleRpc_Status": { + "description": "The `Status` type defines a logical error model that is suitable for different\nprogramming environments, including REST APIs and RPC APIs. It is used by\n[gRPC](https://github.com/grpc). The error model is designed to be:\n\n- Simple to use and understand for most users\n- Flexible enough to meet unexpected needs\n\n# Overview\n\nThe `Status` message contains three pieces of data: error code, error message,\nand error details. The error code should be an enum value of\ngoogle.rpc.Code, but it may accept additional error codes if needed. The\nerror message should be a developer-facing English message that helps\ndevelopers *understand* and *resolve* the error. If a localized user-facing\nerror message is needed, put the localized message in the error details or\nlocalize it in the client. The optional error details may contain arbitrary\ninformation about the error. There is a predefined set of error detail types\nin the package `google.rpc` that can be used for common error conditions.\n\n# Language mapping\n\nThe `Status` message is the logical representation of the error model, but it\nis not necessarily the actual wire format. When the `Status` message is\nexposed in different client libraries and different wire protocols, it can be\nmapped differently. For example, it will likely be mapped to some exceptions\nin Java, but more likely mapped to some error codes in C.\n\n# Other uses\n\nThe error model and the `Status` message can be used in a variety of\nenvironments, either with or without APIs, to provide a\nconsistent developer experience across different environments.\n\nExample uses of this error model include:\n\n- Partial errors. If a service needs to return partial errors to the client,\n it may embed the `Status` in the normal response to indicate the partial\n errors.\n\n- Workflow errors. A typical workflow has multiple steps. Each step may\n have a `Status` message for error reporting.\n\n- Batch operations. If a client uses batch request and batch response, the\n `Status` message should be used directly inside batch response, one for\n each error sub-response.\n\n- Asynchronous operations. If an API call embeds asynchronous operation\n results in its response, the status of those operations should be\n represented directly using the `Status` message.\n\n- Logging. If some API errors are stored in logs, the message `Status` could\n be used directly after any stripping needed for security/privacy reasons.", + "id": "GoogleRpc_Status", "properties": { - "inputUri": { - "description": "Video file location in\n[Google Cloud Storage](https://cloud.google.com/storage/).", - "type": "string" - }, - "progressPercent": { - "description": "Approximate percentage processed thus far.\nGuaranteed to be 100 when fully processed.", + "code": { + "description": "The status code, which should be an enum value of google.rpc.Code.", "format": "int32", "type": "integer" }, - "updateTime": { - "description": "Time of the most recent update.", - "format": "google-datetime", - "type": "string" + "details": { + "description": "A list of messages that carry the error details. There is a common set of\nmessage types for APIs to use.", + "items": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "type": "object" + }, + "type": "array" }, - "startTime": { - "description": "Time when the request was received.", - "format": "google-datetime", + "message": { + "description": "A developer-facing error message, which should be in English. Any\nuser-facing error message should be localized and sent in the\ngoogle.rpc.Status.details field, or localized by the client.", "type": "string" } }, - "id": "GoogleCloudVideointelligenceV1beta2_VideoAnnotationProgress" + "type": "object" } }, - "protocol": "rest", - "icons": { - "x16": "http://www.google.com/images/icons/product/search-16.gif", - "x32": "http://www.google.com/images/icons/product/search-32.gif" - }, - "canonicalName": "Cloud Video Intelligence", - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/cloud-platform": { - "description": "View and manage your data across Google Cloud Platform services" - } - } - } - }, - "rootUrl": "https://videointelligence.googleapis.com/", - "ownerDomain": "google.com", - "name": "videointelligence", - "batchPath": "batch", - "fullyEncodeReservedExpansion": true, + "servicePath": "", "title": "Cloud Video Intelligence API", - "ownerName": "Google", - "resources": { - "videos": { - "methods": { - "annotate": { - "description": "Performs asynchronous video annotation. Progress and results can be\nretrieved through the `google.longrunning.Operations` interface.\n`Operation.metadata` contains `AnnotateVideoProgress` (progress).\n`Operation.response` contains `AnnotateVideoResponse` (results).", - "request": { - "$ref": "GoogleCloudVideointelligenceV1beta1_AnnotateVideoRequest" - }, - "response": { - "$ref": "GoogleLongrunning_Operation" - }, - "parameterOrder": [], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": {}, - "flatPath": "v1beta1/videos:annotate", - "path": "v1beta1/videos:annotate", - "id": "videointelligence.videos.annotate" - } - } - } - }, - "parameters": { - "fields": { - "description": "Selector specifying which fields to include in a partial response.", - "type": "string", - "location": "query" - }, - "uploadType": { - "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", - "type": "string", - "location": "query" - }, - "$.xgafv": { - "enumDescriptions": [ - "v1 error format", - "v2 error format" - ], - "location": "query", - "enum": [ - "1", - "2" - ], - "description": "V1 error format.", - "type": "string" - }, - "callback": { - "description": "JSONP", - "type": "string", - "location": "query" - }, - "alt": { - "enumDescriptions": [ - "Responses with Content-Type of application/json", - "Media download with context-dependent Content-Type", - "Responses with Content-Type of application/x-protobuf" - ], - "location": "query", - "description": "Data format for response.", - "default": "json", - "enum": [ - "json", - "media", - "proto" - ], - "type": "string" - }, - "access_token": { - "description": "OAuth access token.", - "type": "string", - "location": "query" - }, - "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.", - "type": "string", - "location": "query" - }, - "quotaUser": { - "location": "query", - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", - "type": "string" - }, - "pp": { - "description": "Pretty-print response.", - "type": "boolean", - "default": "true", - "location": "query" - }, - "oauth_token": { - "description": "OAuth 2.0 token for the current user.", - "type": "string", - "location": "query" - }, - "bearer_token": { - "location": "query", - "description": "OAuth bearer token.", - "type": "string" - }, - "upload_protocol": { - "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", - "type": "string", - "location": "query" - }, - "prettyPrint": { - "description": "Returns response with indentations and line breaks.", - "type": "boolean", - "default": "true", - "location": "query" - } - } -} + "version": "v1beta1", + "version_module": true +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/videointelligence/v1beta1/videointelligence-gen.go b/vendor/google.golang.org/api/videointelligence/v1beta1/videointelligence-gen.go index 89814ef64..b6cf28f2a 100644 --- a/vendor/google.golang.org/api/videointelligence/v1beta1/videointelligence-gen.go +++ b/vendor/google.golang.org/api/videointelligence/v1beta1/videointelligence-gen.go @@ -1504,6 +1504,861 @@ func (s *GoogleCloudVideointelligenceV1beta2VideoSegment) MarshalJSON() ([]byte, return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// GoogleCloudVideointelligenceV1p1beta1AnnotateVideoProgress: Video +// annotation progress. Included in the `metadata` +// field of the `Operation` returned by the `GetOperation` +// call of the `google::longrunning::Operations` service. +type GoogleCloudVideointelligenceV1p1beta1AnnotateVideoProgress struct { + // AnnotationProgress: Progress metadata for all videos specified in + // `AnnotateVideoRequest`. + AnnotationProgress []*GoogleCloudVideointelligenceV1p1beta1VideoAnnotationProgress `json:"annotationProgress,omitempty"` + + // ForceSendFields is a list of field names (e.g. "AnnotationProgress") + // to unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "AnnotationProgress") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudVideointelligenceV1p1beta1AnnotateVideoProgress) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudVideointelligenceV1p1beta1AnnotateVideoProgress + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudVideointelligenceV1p1beta1AnnotateVideoResponse: Video +// annotation response. Included in the `response` +// field of the `Operation` returned by the `GetOperation` +// call of the `google::longrunning::Operations` service. +type GoogleCloudVideointelligenceV1p1beta1AnnotateVideoResponse struct { + // AnnotationResults: Annotation results for all videos specified in + // `AnnotateVideoRequest`. + AnnotationResults []*GoogleCloudVideointelligenceV1p1beta1VideoAnnotationResults `json:"annotationResults,omitempty"` + + // ForceSendFields is a list of field names (e.g. "AnnotationResults") + // to unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "AnnotationResults") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudVideointelligenceV1p1beta1AnnotateVideoResponse) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudVideointelligenceV1p1beta1AnnotateVideoResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudVideointelligenceV1p1beta1EmotionAttribute: Emotion +// attribute. +type GoogleCloudVideointelligenceV1p1beta1EmotionAttribute struct { + // Emotion: Emotion entry. + // + // Possible values: + // "EMOTION_UNSPECIFIED" - Unspecified emotion. + // "AMUSEMENT" - Amusement. + // "ANGER" - Anger. + // "CONCENTRATION" - Concentration. + // "CONTENTMENT" - Contentment. + // "DESIRE" - Desire. + // "DISAPPOINTMENT" - Disappointment. + // "DISGUST" - Disgust. + // "ELATION" - Elation. + // "EMBARRASSMENT" - Embarrassment. + // "INTEREST" - Interest. + // "PRIDE" - Pride. + // "SADNESS" - Sadness. + // "SURPRISE" - Surprise. + Emotion string `json:"emotion,omitempty"` + + // Score: Confidence score. + Score float64 `json:"score,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Emotion") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Emotion") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudVideointelligenceV1p1beta1EmotionAttribute) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudVideointelligenceV1p1beta1EmotionAttribute + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +func (s *GoogleCloudVideointelligenceV1p1beta1EmotionAttribute) UnmarshalJSON(data []byte) error { + type NoMethod GoogleCloudVideointelligenceV1p1beta1EmotionAttribute + var s1 struct { + Score gensupport.JSONFloat64 `json:"score"` + *NoMethod + } + s1.NoMethod = (*NoMethod)(s) + if err := json.Unmarshal(data, &s1); err != nil { + return err + } + s.Score = float64(s1.Score) + return nil +} + +// GoogleCloudVideointelligenceV1p1beta1Entity: Detected entity from +// video analysis. +type GoogleCloudVideointelligenceV1p1beta1Entity struct { + // Description: Textual description, e.g. `Fixed-gear bicycle`. + Description string `json:"description,omitempty"` + + // EntityId: Opaque entity ID. Some IDs may be available in + // [Google Knowledge Graph + // Search + // API](https://developers.google.com/knowledge-graph/). + EntityId string `json:"entityId,omitempty"` + + // LanguageCode: Language code for `description` in BCP-47 format. + LanguageCode string `json:"languageCode,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Description") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Description") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudVideointelligenceV1p1beta1Entity) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudVideointelligenceV1p1beta1Entity + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudVideointelligenceV1p1beta1ExplicitContentAnnotation: +// Explicit content annotation (based on per-frame visual signals +// only). +// If no explicit content has been detected in a frame, no annotations +// are +// present for that frame. +type GoogleCloudVideointelligenceV1p1beta1ExplicitContentAnnotation struct { + // Frames: All video frames where explicit content was detected. + Frames []*GoogleCloudVideointelligenceV1p1beta1ExplicitContentFrame `json:"frames,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Frames") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Frames") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudVideointelligenceV1p1beta1ExplicitContentAnnotation) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudVideointelligenceV1p1beta1ExplicitContentAnnotation + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudVideointelligenceV1p1beta1ExplicitContentFrame: Video +// frame level annotation results for explicit content. +type GoogleCloudVideointelligenceV1p1beta1ExplicitContentFrame struct { + // PornographyLikelihood: Likelihood of the pornography content.. + // + // Possible values: + // "LIKELIHOOD_UNSPECIFIED" - Unspecified likelihood. + // "VERY_UNLIKELY" - Very unlikely. + // "UNLIKELY" - Unlikely. + // "POSSIBLE" - Possible. + // "LIKELY" - Likely. + // "VERY_LIKELY" - Very likely. + PornographyLikelihood string `json:"pornographyLikelihood,omitempty"` + + // TimeOffset: Time-offset, relative to the beginning of the video, + // corresponding to the + // video frame for this location. + TimeOffset string `json:"timeOffset,omitempty"` + + // ForceSendFields is a list of field names (e.g. + // "PornographyLikelihood") to unconditionally include in API requests. + // By default, fields with empty values are omitted from API requests. + // However, any non-pointer, non-interface field appearing in + // ForceSendFields will be sent to the server regardless of whether the + // field is empty or not. This may be used to include empty fields in + // Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "PornographyLikelihood") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudVideointelligenceV1p1beta1ExplicitContentFrame) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudVideointelligenceV1p1beta1ExplicitContentFrame + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudVideointelligenceV1p1beta1FaceDetectionAnnotation: Face +// detection annotation. +type GoogleCloudVideointelligenceV1p1beta1FaceDetectionAnnotation struct { + // Frames: All video frames where a face was detected. + Frames []*GoogleCloudVideointelligenceV1p1beta1FaceDetectionFrame `json:"frames,omitempty"` + + // Segments: All video segments where a face was detected. + Segments []*GoogleCloudVideointelligenceV1p1beta1FaceSegment `json:"segments,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Frames") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Frames") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudVideointelligenceV1p1beta1FaceDetectionAnnotation) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudVideointelligenceV1p1beta1FaceDetectionAnnotation + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudVideointelligenceV1p1beta1FaceDetectionAttribute: Face +// detection attribute. +type GoogleCloudVideointelligenceV1p1beta1FaceDetectionAttribute struct { + // Emotions: Emotion attributes. + Emotions []*GoogleCloudVideointelligenceV1p1beta1EmotionAttribute `json:"emotions,omitempty"` + + // NormalizedBoundingBox: Normalized Bounding box. + NormalizedBoundingBox *GoogleCloudVideointelligenceV1p1beta1NormalizedBoundingBox `json:"normalizedBoundingBox,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Emotions") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Emotions") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudVideointelligenceV1p1beta1FaceDetectionAttribute) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudVideointelligenceV1p1beta1FaceDetectionAttribute + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudVideointelligenceV1p1beta1FaceDetectionFrame: Video frame +// level annotation results for face detection. +type GoogleCloudVideointelligenceV1p1beta1FaceDetectionFrame struct { + // Attributes: Face attributes in a frame. + // There can be more than one attributes if the same face is detected + // in + // multiple locations within the current frame. + Attributes []*GoogleCloudVideointelligenceV1p1beta1FaceDetectionAttribute `json:"attributes,omitempty"` + + // TimeOffset: Time-offset, relative to the beginning of the + // video, + // corresponding to the video frame for this location. + TimeOffset string `json:"timeOffset,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Attributes") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Attributes") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudVideointelligenceV1p1beta1FaceDetectionFrame) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudVideointelligenceV1p1beta1FaceDetectionFrame + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudVideointelligenceV1p1beta1FaceSegment: Video segment level +// annotation results for face detection. +type GoogleCloudVideointelligenceV1p1beta1FaceSegment struct { + // Segment: Video segment where a face was detected. + Segment *GoogleCloudVideointelligenceV1p1beta1VideoSegment `json:"segment,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Segment") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Segment") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudVideointelligenceV1p1beta1FaceSegment) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudVideointelligenceV1p1beta1FaceSegment + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudVideointelligenceV1p1beta1LabelAnnotation: Label +// annotation. +type GoogleCloudVideointelligenceV1p1beta1LabelAnnotation struct { + // CategoryEntities: Common categories for the detected entity. + // E.g. when the label is `Terrier` the category is likely `dog`. And in + // some + // cases there might be more than one categories e.g. `Terrier` could + // also be + // a `pet`. + CategoryEntities []*GoogleCloudVideointelligenceV1p1beta1Entity `json:"categoryEntities,omitempty"` + + // Entity: Detected entity. + Entity *GoogleCloudVideointelligenceV1p1beta1Entity `json:"entity,omitempty"` + + // Frames: All video frames where a label was detected. + Frames []*GoogleCloudVideointelligenceV1p1beta1LabelFrame `json:"frames,omitempty"` + + // Segments: All video segments where a label was detected. + Segments []*GoogleCloudVideointelligenceV1p1beta1LabelSegment `json:"segments,omitempty"` + + // ForceSendFields is a list of field names (e.g. "CategoryEntities") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "CategoryEntities") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudVideointelligenceV1p1beta1LabelAnnotation) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudVideointelligenceV1p1beta1LabelAnnotation + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudVideointelligenceV1p1beta1LabelFrame: Video frame level +// annotation results for label detection. +type GoogleCloudVideointelligenceV1p1beta1LabelFrame struct { + // Confidence: Confidence that the label is accurate. Range: [0, 1]. + Confidence float64 `json:"confidence,omitempty"` + + // TimeOffset: Time-offset, relative to the beginning of the video, + // corresponding to the + // video frame for this location. + TimeOffset string `json:"timeOffset,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Confidence") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Confidence") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudVideointelligenceV1p1beta1LabelFrame) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudVideointelligenceV1p1beta1LabelFrame + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +func (s *GoogleCloudVideointelligenceV1p1beta1LabelFrame) UnmarshalJSON(data []byte) error { + type NoMethod GoogleCloudVideointelligenceV1p1beta1LabelFrame + var s1 struct { + Confidence gensupport.JSONFloat64 `json:"confidence"` + *NoMethod + } + s1.NoMethod = (*NoMethod)(s) + if err := json.Unmarshal(data, &s1); err != nil { + return err + } + s.Confidence = float64(s1.Confidence) + return nil +} + +// GoogleCloudVideointelligenceV1p1beta1LabelSegment: Video segment +// level annotation results for label detection. +type GoogleCloudVideointelligenceV1p1beta1LabelSegment struct { + // Confidence: Confidence that the label is accurate. Range: [0, 1]. + Confidence float64 `json:"confidence,omitempty"` + + // Segment: Video segment where a label was detected. + Segment *GoogleCloudVideointelligenceV1p1beta1VideoSegment `json:"segment,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Confidence") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Confidence") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudVideointelligenceV1p1beta1LabelSegment) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudVideointelligenceV1p1beta1LabelSegment + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +func (s *GoogleCloudVideointelligenceV1p1beta1LabelSegment) UnmarshalJSON(data []byte) error { + type NoMethod GoogleCloudVideointelligenceV1p1beta1LabelSegment + var s1 struct { + Confidence gensupport.JSONFloat64 `json:"confidence"` + *NoMethod + } + s1.NoMethod = (*NoMethod)(s) + if err := json.Unmarshal(data, &s1); err != nil { + return err + } + s.Confidence = float64(s1.Confidence) + return nil +} + +// GoogleCloudVideointelligenceV1p1beta1NormalizedBoundingBox: +// Normalized bounding box. +// The normalized vertex coordinates are relative to the original +// image. +// Range: [0, 1]. +type GoogleCloudVideointelligenceV1p1beta1NormalizedBoundingBox struct { + // Bottom: Bottom Y coordinate. + Bottom float64 `json:"bottom,omitempty"` + + // Left: Left X coordinate. + Left float64 `json:"left,omitempty"` + + // Right: Right X coordinate. + Right float64 `json:"right,omitempty"` + + // Top: Top Y coordinate. + Top float64 `json:"top,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Bottom") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Bottom") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudVideointelligenceV1p1beta1NormalizedBoundingBox) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudVideointelligenceV1p1beta1NormalizedBoundingBox + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +func (s *GoogleCloudVideointelligenceV1p1beta1NormalizedBoundingBox) UnmarshalJSON(data []byte) error { + type NoMethod GoogleCloudVideointelligenceV1p1beta1NormalizedBoundingBox + var s1 struct { + Bottom gensupport.JSONFloat64 `json:"bottom"` + Left gensupport.JSONFloat64 `json:"left"` + Right gensupport.JSONFloat64 `json:"right"` + Top gensupport.JSONFloat64 `json:"top"` + *NoMethod + } + s1.NoMethod = (*NoMethod)(s) + if err := json.Unmarshal(data, &s1); err != nil { + return err + } + s.Bottom = float64(s1.Bottom) + s.Left = float64(s1.Left) + s.Right = float64(s1.Right) + s.Top = float64(s1.Top) + return nil +} + +// GoogleCloudVideointelligenceV1p1beta1SpeechRecognitionAlternative: +// Alternative hypotheses (a.k.a. n-best list). +type GoogleCloudVideointelligenceV1p1beta1SpeechRecognitionAlternative struct { + // Confidence: Output only. The confidence estimate between 0.0 and 1.0. + // A higher number + // indicates an estimated greater likelihood that the recognized words + // are + // correct. This field is typically provided only for the top + // hypothesis, and + // only for `is_final=true` results. Clients should not rely on + // the + // `confidence` field as it is not guaranteed to be accurate or + // consistent. + // The default of 0.0 is a sentinel value indicating `confidence` was + // not set. + Confidence float64 `json:"confidence,omitempty"` + + // Transcript: Output only. Transcript text representing the words that + // the user spoke. + Transcript string `json:"transcript,omitempty"` + + // Words: Output only. A list of word-specific information for each + // recognized word. + Words []*GoogleCloudVideointelligenceV1p1beta1WordInfo `json:"words,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Confidence") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Confidence") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudVideointelligenceV1p1beta1SpeechRecognitionAlternative) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudVideointelligenceV1p1beta1SpeechRecognitionAlternative + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +func (s *GoogleCloudVideointelligenceV1p1beta1SpeechRecognitionAlternative) UnmarshalJSON(data []byte) error { + type NoMethod GoogleCloudVideointelligenceV1p1beta1SpeechRecognitionAlternative + var s1 struct { + Confidence gensupport.JSONFloat64 `json:"confidence"` + *NoMethod + } + s1.NoMethod = (*NoMethod)(s) + if err := json.Unmarshal(data, &s1); err != nil { + return err + } + s.Confidence = float64(s1.Confidence) + return nil +} + +// GoogleCloudVideointelligenceV1p1beta1SpeechTranscription: A speech +// recognition result corresponding to a portion of the audio. +type GoogleCloudVideointelligenceV1p1beta1SpeechTranscription struct { + // Alternatives: Output only. May contain one or more recognition + // hypotheses (up to the + // maximum specified in `max_alternatives`). + // These alternatives are ordered in terms of accuracy, with the top + // (first) + // alternative being the most probable, as ranked by the recognizer. + Alternatives []*GoogleCloudVideointelligenceV1p1beta1SpeechRecognitionAlternative `json:"alternatives,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Alternatives") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Alternatives") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudVideointelligenceV1p1beta1SpeechTranscription) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudVideointelligenceV1p1beta1SpeechTranscription + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudVideointelligenceV1p1beta1VideoAnnotationProgress: +// Annotation progress for a single video. +type GoogleCloudVideointelligenceV1p1beta1VideoAnnotationProgress struct { + // InputUri: Video file location in + // [Google Cloud Storage](https://cloud.google.com/storage/). + InputUri string `json:"inputUri,omitempty"` + + // ProgressPercent: Approximate percentage processed thus + // far. + // Guaranteed to be 100 when fully processed. + ProgressPercent int64 `json:"progressPercent,omitempty"` + + // StartTime: Time when the request was received. + StartTime string `json:"startTime,omitempty"` + + // UpdateTime: Time of the most recent update. + UpdateTime string `json:"updateTime,omitempty"` + + // ForceSendFields is a list of field names (e.g. "InputUri") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "InputUri") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudVideointelligenceV1p1beta1VideoAnnotationProgress) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudVideointelligenceV1p1beta1VideoAnnotationProgress + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudVideointelligenceV1p1beta1VideoAnnotationResults: +// Annotation results for a single video. +type GoogleCloudVideointelligenceV1p1beta1VideoAnnotationResults struct { + // Error: If set, indicates an error. Note that for a single + // `AnnotateVideoRequest` + // some videos may succeed and some may fail. + Error *GoogleRpcStatus `json:"error,omitempty"` + + // ExplicitAnnotation: Explicit content annotation. + ExplicitAnnotation *GoogleCloudVideointelligenceV1p1beta1ExplicitContentAnnotation `json:"explicitAnnotation,omitempty"` + + // FaceDetectionAnnotations: Face detection annotations. + FaceDetectionAnnotations []*GoogleCloudVideointelligenceV1p1beta1FaceDetectionAnnotation `json:"faceDetectionAnnotations,omitempty"` + + // FrameLabelAnnotations: Label annotations on frame level. + // There is exactly one element for each unique label. + FrameLabelAnnotations []*GoogleCloudVideointelligenceV1p1beta1LabelAnnotation `json:"frameLabelAnnotations,omitempty"` + + // InputUri: Video file location in + // [Google Cloud Storage](https://cloud.google.com/storage/). + InputUri string `json:"inputUri,omitempty"` + + // SegmentLabelAnnotations: Label annotations on video level or user + // specified segment level. + // There is exactly one element for each unique label. + SegmentLabelAnnotations []*GoogleCloudVideointelligenceV1p1beta1LabelAnnotation `json:"segmentLabelAnnotations,omitempty"` + + // ShotAnnotations: Shot annotations. Each shot is represented as a + // video segment. + ShotAnnotations []*GoogleCloudVideointelligenceV1p1beta1VideoSegment `json:"shotAnnotations,omitempty"` + + // ShotLabelAnnotations: Label annotations on shot level. + // There is exactly one element for each unique label. + ShotLabelAnnotations []*GoogleCloudVideointelligenceV1p1beta1LabelAnnotation `json:"shotLabelAnnotations,omitempty"` + + // SpeechTranscriptions: Speech transcription. + SpeechTranscriptions []*GoogleCloudVideointelligenceV1p1beta1SpeechTranscription `json:"speechTranscriptions,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Error") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Error") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudVideointelligenceV1p1beta1VideoAnnotationResults) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudVideointelligenceV1p1beta1VideoAnnotationResults + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudVideointelligenceV1p1beta1VideoSegment: Video segment. +type GoogleCloudVideointelligenceV1p1beta1VideoSegment struct { + // EndTimeOffset: Time-offset, relative to the beginning of the + // video, + // corresponding to the end of the segment (inclusive). + EndTimeOffset string `json:"endTimeOffset,omitempty"` + + // StartTimeOffset: Time-offset, relative to the beginning of the + // video, + // corresponding to the start of the segment (inclusive). + StartTimeOffset string `json:"startTimeOffset,omitempty"` + + // ForceSendFields is a list of field names (e.g. "EndTimeOffset") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "EndTimeOffset") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudVideointelligenceV1p1beta1VideoSegment) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudVideointelligenceV1p1beta1VideoSegment + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudVideointelligenceV1p1beta1WordInfo: Word-specific +// information for recognized words. Word information is only +// included in the response when certain request parameters are set, +// such +// as `enable_word_time_offsets`. +type GoogleCloudVideointelligenceV1p1beta1WordInfo struct { + // EndTime: Output only. Time offset relative to the beginning of the + // audio, and + // corresponding to the end of the spoken word. This field is only set + // if + // `enable_word_time_offsets=true` and only in the top hypothesis. This + // is an + // experimental feature and the accuracy of the time offset can vary. + EndTime string `json:"endTime,omitempty"` + + // StartTime: Output only. Time offset relative to the beginning of the + // audio, and + // corresponding to the start of the spoken word. This field is only set + // if + // `enable_word_time_offsets=true` and only in the top hypothesis. This + // is an + // experimental feature and the accuracy of the time offset can vary. + StartTime string `json:"startTime,omitempty"` + + // Word: Output only. The word corresponding to this set of information. + Word string `json:"word,omitempty"` + + // ForceSendFields is a list of field names (e.g. "EndTime") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "EndTime") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudVideointelligenceV1p1beta1WordInfo) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudVideointelligenceV1p1beta1WordInfo + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // GoogleLongrunningOperation: This resource represents a long-running // operation that is the result of a // network API call. diff --git a/vendor/google.golang.org/api/vision/v1/vision-api.json b/vendor/google.golang.org/api/vision/v1/vision-api.json index 1f2d365e3..70b59f597 100644 --- a/vendor/google.golang.org/api/vision/v1/vision-api.json +++ b/vendor/google.golang.org/api/vision/v1/vision-api.json @@ -1,492 +1,500 @@ { - "version": "v1", - "baseUrl": "https://vision.googleapis.com/", - "kind": "discovery#restDescription", - "description": "Integrates Google Vision features, including image labeling, face, logo, and landmark detection, optical character recognition (OCR), and detection of explicit content, into applications.", - "servicePath": "", + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/cloud-platform": { + "description": "View and manage your data across Google Cloud Platform services" + }, + "https://www.googleapis.com/auth/cloud-vision": { + "description": "Apply machine learning models to understand and label images" + } + } + } + }, "basePath": "", - "id": "vision:v1", - "documentationLink": "https://cloud.google.com/vision/", - "revision": "20180116", + "baseUrl": "https://vision.googleapis.com/", + "batchPath": "batch", + "canonicalName": "Vision", + "description": "Integrates Google Vision features, including image labeling, face, logo, and landmark detection, optical character recognition (OCR), and detection of explicit content, into applications.", "discoveryVersion": "v1", - "version_module": true, + "documentationLink": "https://cloud.google.com/vision/", + "fullyEncodeReservedExpansion": true, + "icons": { + "x16": "http://www.google.com/images/icons/product/search-16.gif", + "x32": "http://www.google.com/images/icons/product/search-32.gif" + }, + "id": "vision:v1", + "kind": "discovery#restDescription", + "name": "vision", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "$.xgafv": { + "description": "V1 error format.", + "enum": [ + "1", + "2" + ], + "enumDescriptions": [ + "v1 error format", + "v2 error format" + ], + "location": "query", + "type": "string" + }, + "access_token": { + "description": "OAuth access token.", + "location": "query", + "type": "string" + }, + "alt": { + "default": "json", + "description": "Data format for response.", + "enum": [ + "json", + "media", + "proto" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json", + "Media download with context-dependent Content-Type", + "Responses with Content-Type of application/x-protobuf" + ], + "location": "query", + "type": "string" + }, + "bearer_token": { + "description": "OAuth bearer token.", + "location": "query", + "type": "string" + }, + "callback": { + "description": "JSONP", + "location": "query", + "type": "string" + }, + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "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.", + "location": "query", + "type": "string" + }, + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "pp": { + "default": "true", + "description": "Pretty-print response.", + "location": "query", + "type": "boolean" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", + "location": "query", + "type": "string" + }, + "uploadType": { + "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", + "location": "query", + "type": "string" + }, + "upload_protocol": { + "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", + "location": "query", + "type": "string" + } + }, + "protocol": "rest", + "resources": { + "images": { + "methods": { + "annotate": { + "description": "Run image detection and annotation for a batch of images.", + "flatPath": "v1/images:annotate", + "httpMethod": "POST", + "id": "vision.images.annotate", + "parameterOrder": [], + "parameters": {}, + "path": "v1/images:annotate", + "request": { + "$ref": "BatchAnnotateImagesRequest" + }, + "response": { + "$ref": "BatchAnnotateImagesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-vision" + ] + } + } + }, + "locations": { + "resources": { + "operations": { + "methods": { + "get": { + "description": "Gets the latest state of a long-running operation. Clients can use this\nmethod to poll the operation result at intervals as recommended by the API\nservice.", + "flatPath": "v1/locations/{locationsId}/operations/{operationsId}", + "httpMethod": "GET", + "id": "vision.locations.operations.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource.", + "location": "path", + "pattern": "^locations/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-vision" + ] + } + } + } + } + }, + "operations": { + "methods": { + "cancel": { + "description": "Starts asynchronous cancellation on a long-running operation. The server\nmakes a best effort to cancel the operation, but success is not\nguaranteed. If the server doesn't support this method, it returns\n`google.rpc.Code.UNIMPLEMENTED`. Clients can use\nOperations.GetOperation or\nother methods to check whether the cancellation succeeded or whether the\noperation completed despite cancellation. On successful cancellation,\nthe operation is not deleted; instead, it becomes an operation with\nan Operation.error value with a google.rpc.Status.code of 1,\ncorresponding to `Code.CANCELLED`.", + "flatPath": "v1/operations/{operationsId}:cancel", + "httpMethod": "POST", + "id": "vision.operations.cancel", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource to be cancelled.", + "location": "path", + "pattern": "^operations/.+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}:cancel", + "request": { + "$ref": "CancelOperationRequest" + }, + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-vision" + ] + }, + "delete": { + "description": "Deletes a long-running operation. This method indicates that the client is\nno longer interested in the operation result. It does not cancel the\noperation. If the server doesn't support this method, it returns\n`google.rpc.Code.UNIMPLEMENTED`.", + "flatPath": "v1/operations/{operationsId}", + "httpMethod": "DELETE", + "id": "vision.operations.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource to be deleted.", + "location": "path", + "pattern": "^operations/.+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-vision" + ] + }, + "get": { + "description": "Gets the latest state of a long-running operation. Clients can use this\nmethod to poll the operation result at intervals as recommended by the API\nservice.", + "flatPath": "v1/operations/{operationsId}", + "httpMethod": "GET", + "id": "vision.operations.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource.", + "location": "path", + "pattern": "^operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-vision" + ] + }, + "list": { + "description": "Lists operations that match the specified filter in the request. If the\nserver doesn't support this method, it returns `UNIMPLEMENTED`.\n\nNOTE: the `name` binding allows API services to override the binding\nto use different resource name schemes, such as `users/*/operations`. To\noverride the binding, API services can add a binding such as\n`\"/v1/{name=users/*}/operations\"` to their service configuration.\nFor backwards compatibility, the default name includes the operations\ncollection id, however overriding users must ensure the name binding\nis the parent resource, without the operations collection id.", + "flatPath": "v1/operations", + "httpMethod": "GET", + "id": "vision.operations.list", + "parameterOrder": [ + "name" + ], + "parameters": { + "filter": { + "description": "The standard list filter.", + "location": "query", + "type": "string" + }, + "name": { + "description": "The name of the operation's parent resource.", + "location": "path", + "pattern": "^operations$", + "required": true, + "type": "string" + }, + "pageSize": { + "description": "The standard list page size.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "The standard list page token.", + "location": "query", + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "ListOperationsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-vision" + ] + } + } + } + }, + "revision": "20180327", + "rootUrl": "https://vision.googleapis.com/", "schemas": { - "WebImage": { - "description": "Metadata for online images.", - "type": "object", + "AnnotateImageRequest": { + "description": "Request for performing Google Cloud Vision API tasks over a user-provided\nimage, with user-requested features.", + "id": "AnnotateImageRequest", "properties": { - "score": { - "description": "(Deprecated) Overall relevancy score for the image.", - "format": "float", - "type": "number" - }, - "url": { - "description": "The result image URL.", - "type": "string" - } - }, - "id": "WebImage" - }, - "Word": { - "description": "A word representation.", - "type": "object", - "properties": { - "property": { - "$ref": "TextProperty", - "description": "Additional information detected for the word." - }, - "boundingBox": { - "description": "The bounding box for the word.\nThe vertices are in the order of top-left, top-right, bottom-right,\nbottom-left. When a rotation of the bounding box is detected the rotation\nis represented as around the top-left corner as defined when the text is\nread in the 'natural' orientation.\nFor example:\n * when the text is horizontal it might look like:\n 0----1\n | |\n 3----2\n * when it's rotated 180 degrees around the top-left corner it becomes:\n 2----3\n | |\n 1----0\n and the vertice order will still be (0, 1, 2, 3).", - "$ref": "BoundingPoly" - }, - "symbols": { - "description": "List of symbols in the word.\nThe order of the symbols follows the natural reading order.", - "type": "array", + "features": { + "description": "Requested features.", "items": { - "$ref": "Symbol" - } + "$ref": "Feature" + }, + "type": "array" + }, + "image": { + "$ref": "Image", + "description": "The image to be processed." + }, + "imageContext": { + "$ref": "ImageContext", + "description": "Additional context that may accompany the image." } }, - "id": "Word" - }, - "Paragraph": { - "properties": { - "boundingBox": { - "description": "The bounding box for the paragraph.\nThe vertices are in the order of top-left, top-right, bottom-right,\nbottom-left. When a rotation of the bounding box is detected the rotation\nis represented as around the top-left corner as defined when the text is\nread in the 'natural' orientation.\nFor example:\n * when the text is horizontal it might look like:\n 0----1\n | |\n 3----2\n * when it's rotated 180 degrees around the top-left corner it becomes:\n 2----3\n | |\n 1----0\n and the vertice order will still be (0, 1, 2, 3).", - "$ref": "BoundingPoly" - }, - "words": { - "description": "List of words in this paragraph.", - "type": "array", - "items": { - "$ref": "Word" - } - }, - "property": { - "$ref": "TextProperty", - "description": "Additional information detected for the paragraph." - } - }, - "id": "Paragraph", - "description": "Structural unit of text representing a number of words in certain order.", "type": "object" }, - "Image": { - "description": "Client image to perform Google Cloud Vision API tasks over.", - "type": "object", + "AnnotateImageResponse": { + "description": "Response to an image annotation request.", + "id": "AnnotateImageResponse", "properties": { - "content": { - "description": "Image content, represented as a stream of bytes.\nNote: As with all `bytes` fields, protobuffers use a pure binary\nrepresentation, whereas JSON representations use base64.", - "format": "byte", - "type": "string" + "cropHintsAnnotation": { + "$ref": "CropHintsAnnotation", + "description": "If present, crop hints have completed successfully." }, - "source": { - "$ref": "ImageSource", - "description": "Google Cloud Storage image location, or publicly-accessible image\nURL. If both `content` and `source` are provided for an image, `content`\ntakes precedence and is used to perform the image annotation request." - } - }, - "id": "Image" - }, - "FaceAnnotation": { - "description": "A face annotation object contains the results of face detection.", - "type": "object", - "properties": { - "fdBoundingPoly": { - "description": "The `fd_bounding_poly` bounding polygon is tighter than the\n`boundingPoly`, and encloses only the skin part of the face. Typically, it\nis used to eliminate the face from any image analysis that detects the\n\"amount of skin\" visible in an image. It is not based on the\nlandmarker results, only on the initial face detection, hence\nthe \u003ccode\u003efd\u003c/code\u003e (face detection) prefix.", - "$ref": "BoundingPoly" + "error": { + "$ref": "Status", + "description": "If set, represents the error message for the operation.\nNote that filled-in image annotations are guaranteed to be\ncorrect, even when `error` is set." }, - "angerLikelihood": { - "description": "Anger likelihood.", - "type": "string", - "enumDescriptions": [ - "Unknown likelihood.", - "It is very unlikely that the image belongs to the specified vertical.", - "It is unlikely that the image belongs to the specified vertical.", - "It is possible that the image belongs to the specified vertical.", - "It is likely that the image belongs to the specified vertical.", - "It is very likely that the image belongs to the specified vertical." - ], - "enum": [ - "UNKNOWN", - "VERY_UNLIKELY", - "UNLIKELY", - "POSSIBLE", - "LIKELY", - "VERY_LIKELY" - ] - }, - "landmarks": { - "description": "Detected face landmarks.", - "type": "array", + "faceAnnotations": { + "description": "If present, face detection has completed successfully.", "items": { - "$ref": "Landmark" - } + "$ref": "FaceAnnotation" + }, + "type": "array" }, - "surpriseLikelihood": { - "enum": [ - "UNKNOWN", - "VERY_UNLIKELY", - "UNLIKELY", - "POSSIBLE", - "LIKELY", - "VERY_LIKELY" - ], - "description": "Surprise likelihood.", - "type": "string", - "enumDescriptions": [ - "Unknown likelihood.", - "It is very unlikely that the image belongs to the specified vertical.", - "It is unlikely that the image belongs to the specified vertical.", - "It is possible that the image belongs to the specified vertical.", - "It is likely that the image belongs to the specified vertical.", - "It is very likely that the image belongs to the specified vertical." - ] + "fullTextAnnotation": { + "$ref": "TextAnnotation", + "description": "If present, text (OCR) detection or document (OCR) text detection has\ncompleted successfully.\nThis annotation provides the structural hierarchy for the OCR detected\ntext." }, - "landmarkingConfidence": { - "description": "Face landmarking confidence. Range [0, 1].", - "format": "float", - "type": "number" + "imagePropertiesAnnotation": { + "$ref": "ImageProperties", + "description": "If present, image properties were extracted successfully." }, - "joyLikelihood": { - "description": "Joy likelihood.", - "type": "string", - "enumDescriptions": [ - "Unknown likelihood.", - "It is very unlikely that the image belongs to the specified vertical.", - "It is unlikely that the image belongs to the specified vertical.", - "It is possible that the image belongs to the specified vertical.", - "It is likely that the image belongs to the specified vertical.", - "It is very likely that the image belongs to the specified vertical." - ], - "enum": [ - "UNKNOWN", - "VERY_UNLIKELY", - "UNLIKELY", - "POSSIBLE", - "LIKELY", - "VERY_LIKELY" - ] + "labelAnnotations": { + "description": "If present, label detection has completed successfully.", + "items": { + "$ref": "EntityAnnotation" + }, + "type": "array" }, - "underExposedLikelihood": { - "description": "Under-exposed likelihood.", - "type": "string", - "enumDescriptions": [ - "Unknown likelihood.", - "It is very unlikely that the image belongs to the specified vertical.", - "It is unlikely that the image belongs to the specified vertical.", - "It is possible that the image belongs to the specified vertical.", - "It is likely that the image belongs to the specified vertical.", - "It is very likely that the image belongs to the specified vertical." - ], - "enum": [ - "UNKNOWN", - "VERY_UNLIKELY", - "UNLIKELY", - "POSSIBLE", - "LIKELY", - "VERY_LIKELY" - ] + "landmarkAnnotations": { + "description": "If present, landmark detection has completed successfully.", + "items": { + "$ref": "EntityAnnotation" + }, + "type": "array" }, - "panAngle": { - "description": "Yaw angle, which indicates the leftward/rightward angle that the face is\npointing relative to the vertical plane perpendicular to the image. Range\n[-180,180].", - "format": "float", - "type": "number" + "logoAnnotations": { + "description": "If present, logo detection has completed successfully.", + "items": { + "$ref": "EntityAnnotation" + }, + "type": "array" }, - "detectionConfidence": { - "description": "Detection confidence. Range [0, 1].", - "format": "float", - "type": "number" + "safeSearchAnnotation": { + "$ref": "SafeSearchAnnotation", + "description": "If present, safe-search annotation has completed successfully." }, - "blurredLikelihood": { - "enum": [ - "UNKNOWN", - "VERY_UNLIKELY", - "UNLIKELY", - "POSSIBLE", - "LIKELY", - "VERY_LIKELY" - ], - "description": "Blurred likelihood.", - "type": "string", - "enumDescriptions": [ - "Unknown likelihood.", - "It is very unlikely that the image belongs to the specified vertical.", - "It is unlikely that the image belongs to the specified vertical.", - "It is possible that the image belongs to the specified vertical.", - "It is likely that the image belongs to the specified vertical.", - "It is very likely that the image belongs to the specified vertical." - ] + "textAnnotations": { + "description": "If present, text (OCR) detection has completed successfully.", + "items": { + "$ref": "EntityAnnotation" + }, + "type": "array" }, - "headwearLikelihood": { - "enumDescriptions": [ - "Unknown likelihood.", - "It is very unlikely that the image belongs to the specified vertical.", - "It is unlikely that the image belongs to the specified vertical.", - "It is possible that the image belongs to the specified vertical.", - "It is likely that the image belongs to the specified vertical.", - "It is very likely that the image belongs to the specified vertical." - ], - "enum": [ - "UNKNOWN", - "VERY_UNLIKELY", - "UNLIKELY", - "POSSIBLE", - "LIKELY", - "VERY_LIKELY" - ], - "description": "Headwear likelihood.", - "type": "string" - }, - "boundingPoly": { - "$ref": "BoundingPoly", - "description": "The bounding polygon around the face. The coordinates of the bounding box\nare in the original image's scale, as returned in `ImageParams`.\nThe bounding box is computed to \"frame\" the face in accordance with human\nexpectations. It is based on the landmarker results.\nNote that one or more x and/or y coordinates may not be generated in the\n`BoundingPoly` (the polygon will be unbounded) if only a partial face\nappears in the image to be annotated." - }, - "rollAngle": { - "description": "Roll angle, which indicates the amount of clockwise/anti-clockwise rotation\nof the face relative to the image vertical about the axis perpendicular to\nthe face. Range [-180,180].", - "format": "float", - "type": "number" - }, - "sorrowLikelihood": { - "enumDescriptions": [ - "Unknown likelihood.", - "It is very unlikely that the image belongs to the specified vertical.", - "It is unlikely that the image belongs to the specified vertical.", - "It is possible that the image belongs to the specified vertical.", - "It is likely that the image belongs to the specified vertical.", - "It is very likely that the image belongs to the specified vertical." - ], - "enum": [ - "UNKNOWN", - "VERY_UNLIKELY", - "UNLIKELY", - "POSSIBLE", - "LIKELY", - "VERY_LIKELY" - ], - "description": "Sorrow likelihood.", - "type": "string" - }, - "tiltAngle": { - "description": "Pitch angle, which indicates the upwards/downwards angle that the face is\npointing relative to the image's horizontal plane. Range [-180,180].", - "format": "float", - "type": "number" + "webDetection": { + "$ref": "WebDetection", + "description": "If present, web detection has completed successfully." } }, - "id": "FaceAnnotation" + "type": "object" }, "BatchAnnotateImagesRequest": { "description": "Multiple image annotation requests are batched into a single service call.", - "type": "object", + "id": "BatchAnnotateImagesRequest", "properties": { "requests": { "description": "Individual image annotation requests for this batch.", - "type": "array", "items": { "$ref": "AnnotateImageRequest" - } + }, + "type": "array" } }, - "id": "BatchAnnotateImagesRequest" - }, - "DetectedBreak": { - "description": "Detected start or end of a structural component.", - "type": "object", - "properties": { - "type": { - "enumDescriptions": [ - "Unknown break label type.", - "Regular space.", - "Sure space (very wide).", - "Line-wrapping break.", - "End-line hyphen that is not present in text; does not co-occur with\n`SPACE`, `LEADER_SPACE`, or `LINE_BREAK`.", - "Line break that ends a paragraph." - ], - "enum": [ - "UNKNOWN", - "SPACE", - "SURE_SPACE", - "EOL_SURE_SPACE", - "HYPHEN", - "LINE_BREAK" - ], - "description": "Detected break type.", - "type": "string" - }, - "isPrefix": { - "description": "True if break prepends the element.", - "type": "boolean" - } - }, - "id": "DetectedBreak" - }, - "ImageContext": { - "properties": { - "languageHints": { - "description": "List of languages to use for TEXT_DETECTION. In most cases, an empty value\nyields the best results since it enables automatic language detection. For\nlanguages based on the Latin alphabet, setting `language_hints` is not\nneeded. In rare cases, when the language of the text in the image is known,\nsetting a hint will help get better results (although it will be a\nsignificant hindrance if the hint is wrong). Text detection returns an\nerror if one or more of the specified languages is not one of the\n[supported languages](/vision/docs/languages).", - "type": "array", - "items": { - "type": "string" - } - }, - "latLongRect": { - "description": "lat/long rectangle that specifies the location of the image.", - "$ref": "LatLongRect" - }, - "cropHintsParams": { - "description": "Parameters for crop hints annotation request.", - "$ref": "CropHintsParams" - } - }, - "id": "ImageContext", - "description": "Image context and/or feature-specific parameters.", "type": "object" }, - "Page": { - "description": "Detected page from OCR.", - "type": "object", + "BatchAnnotateImagesResponse": { + "description": "Response to a batch image annotation request.", + "id": "BatchAnnotateImagesResponse", "properties": { - "width": { - "description": "Page width in pixels.", - "format": "int32", - "type": "integer" - }, - "blocks": { - "description": "List of blocks of text, images etc on this page.", - "type": "array", + "responses": { + "description": "Individual responses to image annotation requests within the batch.", "items": { - "$ref": "Block" - } - }, - "property": { - "$ref": "TextProperty", - "description": "Additional information detected on the page." - }, - "height": { - "description": "Page height in pixels.", - "format": "int32", - "type": "integer" + "$ref": "AnnotateImageResponse" + }, + "type": "array" } }, - "id": "Page" + "type": "object" }, - "AnnotateImageRequest": { - "description": "Request for performing Google Cloud Vision API tasks over a user-provided\nimage, with user-requested features.", - "type": "object", + "Block": { + "description": "Logical element on the page.", + "id": "Block", "properties": { - "imageContext": { - "description": "Additional context that may accompany the image.", - "$ref": "ImageContext" - }, - "image": { - "description": "The image to be processed.", - "$ref": "Image" - }, - "features": { - "description": "Requested features.", - "type": "array", - "items": { - "$ref": "Feature" - } - } - }, - "id": "AnnotateImageRequest" - }, - "Status": { - "description": "The `Status` type defines a logical error model that is suitable for different\nprogramming environments, including REST APIs and RPC APIs. It is used by\n[gRPC](https://github.com/grpc). The error model is designed to be:\n\n- Simple to use and understand for most users\n- Flexible enough to meet unexpected needs\n\n# Overview\n\nThe `Status` message contains three pieces of data: error code, error message,\nand error details. The error code should be an enum value of\ngoogle.rpc.Code, but it may accept additional error codes if needed. The\nerror message should be a developer-facing English message that helps\ndevelopers *understand* and *resolve* the error. If a localized user-facing\nerror message is needed, put the localized message in the error details or\nlocalize it in the client. The optional error details may contain arbitrary\ninformation about the error. There is a predefined set of error detail types\nin the package `google.rpc` that can be used for common error conditions.\n\n# Language mapping\n\nThe `Status` message is the logical representation of the error model, but it\nis not necessarily the actual wire format. When the `Status` message is\nexposed in different client libraries and different wire protocols, it can be\nmapped differently. For example, it will likely be mapped to some exceptions\nin Java, but more likely mapped to some error codes in C.\n\n# Other uses\n\nThe error model and the `Status` message can be used in a variety of\nenvironments, either with or without APIs, to provide a\nconsistent developer experience across different environments.\n\nExample uses of this error model include:\n\n- Partial errors. If a service needs to return partial errors to the client,\n it may embed the `Status` in the normal response to indicate the partial\n errors.\n\n- Workflow errors. A typical workflow has multiple steps. Each step may\n have a `Status` message for error reporting.\n\n- Batch operations. If a client uses batch request and batch response, the\n `Status` message should be used directly inside batch response, one for\n each error sub-response.\n\n- Asynchronous operations. If an API call embeds asynchronous operation\n results in its response, the status of those operations should be\n represented directly using the `Status` message.\n\n- Logging. If some API errors are stored in logs, the message `Status` could\n be used directly after any stripping needed for security/privacy reasons.", - "type": "object", - "properties": { - "message": { - "description": "A developer-facing error message, which should be in English. Any\nuser-facing error message should be localized and sent in the\ngoogle.rpc.Status.details field, or localized by the client.", + "blockType": { + "description": "Detected block type (text, image etc) for this block.", + "enum": [ + "UNKNOWN", + "TEXT", + "TABLE", + "PICTURE", + "RULER", + "BARCODE" + ], + "enumDescriptions": [ + "Unknown block type.", + "Regular text block.", + "Table block.", + "Image block.", + "Horizontal/vertical line box.", + "Barcode block." + ], "type": "string" }, - "details": { - "description": "A list of messages that carry the error details. There is a common set of\nmessage types for APIs to use.", - "type": "array", - "items": { - "type": "object", - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - } - } - }, - "code": { - "description": "The status code, which should be an enum value of google.rpc.Code.", - "format": "int32", - "type": "integer" - } - }, - "id": "Status" - }, - "LatLongRect": { - "description": "Rectangle determined by min and max `LatLng` pairs.", - "type": "object", - "properties": { - "minLatLng": { - "$ref": "LatLng", - "description": "Min lat/long pair." - }, - "maxLatLng": { - "description": "Max lat/long pair.", - "$ref": "LatLng" - } - }, - "id": "LatLongRect" - }, - "Symbol": { - "description": "A single symbol representation.", - "type": "object", - "properties": { - "text": { - "description": "The actual UTF-8 representation of the symbol.", - "type": "string" - }, - "property": { - "$ref": "TextProperty", - "description": "Additional information detected for the symbol." - }, "boundingBox": { "$ref": "BoundingPoly", - "description": "The bounding box for the symbol.\nThe vertices are in the order of top-left, top-right, bottom-right,\nbottom-left. When a rotation of the bounding box is detected the rotation\nis represented as around the top-left corner as defined when the text is\nread in the 'natural' orientation.\nFor example:\n * when the text is horizontal it might look like:\n 0----1\n | |\n 3----2\n * when it's rotated 180 degrees around the top-left corner it becomes:\n 2----3\n | |\n 1----0\n and the vertice order will still be (0, 1, 2, 3)." - } - }, - "id": "Symbol" - }, - "CropHintsAnnotation": { - "description": "Set of crop hints that are used to generate new crops when serving images.", - "type": "object", - "properties": { - "cropHints": { - "description": "Crop hint results.", - "type": "array", - "items": { - "$ref": "CropHint" - } - } - }, - "id": "CropHintsAnnotation" - }, - "LatLng": { - "description": "An object representing a latitude/longitude pair. This is expressed as a pair\nof doubles representing degrees latitude and degrees longitude. Unless\nspecified otherwise, this must conform to the\n\u003ca href=\"http://www.unoosa.org/pdf/icg/2012/template/WGS_84.pdf\"\u003eWGS84\nstandard\u003c/a\u003e. Values must be within normalized ranges.", - "type": "object", - "properties": { - "latitude": { - "description": "The latitude in degrees. It must be in the range [-90.0, +90.0].", - "format": "double", + "description": "The bounding box for the block.\nThe vertices are in the order of top-left, top-right, bottom-right,\nbottom-left. When a rotation of the bounding box is detected the rotation\nis represented as around the top-left corner as defined when the text is\nread in the 'natural' orientation.\nFor example:\n\n* when the text is horizontal it might look like:\n\n 0----1\n | |\n 3----2\n\n* when it's rotated 180 degrees around the top-left corner it becomes:\n\n 2----3\n | |\n 1----0\n\n and the vertice order will still be (0, 1, 2, 3)." + }, + "confidence": { + "description": "Confidence of the OCR results on the block. Range [0, 1].", + "format": "float", "type": "number" }, - "longitude": { - "description": "The longitude in degrees. It must be in the range [-180.0, +180.0].", - "format": "double", - "type": "number" + "paragraphs": { + "description": "List of paragraphs in this block (if this blocks is of type text).", + "items": { + "$ref": "Paragraph" + }, + "type": "array" + }, + "property": { + "$ref": "TextProperty", + "description": "Additional information detected for the block." } }, - "id": "LatLng" + "type": "object" + }, + "BoundingPoly": { + "description": "A bounding polygon for the detected image annotation.", + "id": "BoundingPoly", + "properties": { + "vertices": { + "description": "The bounding polygon vertices.", + "items": { + "$ref": "Vertex" + }, + "type": "array" + } + }, + "type": "object" + }, + "CancelOperationRequest": { + "description": "The request message for Operations.CancelOperation.", + "id": "CancelOperationRequest", + "properties": {}, + "type": "object" }, "Color": { + "description": "Represents a color in the RGBA color space. This representation is designed\nfor simplicity of conversion to/from color representations in various\nlanguages over compactness; for example, the fields of this representation\ncan be trivially provided to the constructor of \"java.awt.Color\" in Java; it\ncan also be trivially provided to UIColor's \"+colorWithRed:green:blue:alpha\"\nmethod in iOS; and, with just a little work, it can be easily formatted into\na CSS \"rgba()\" string in JavaScript, as well. Here are some examples:\n\nExample (Java):\n\n import com.google.type.Color;\n\n // ...\n public static java.awt.Color fromProto(Color protocolor) {\n float alpha = protocolor.hasAlpha()\n ? protocolor.getAlpha().getValue()\n : 1.0;\n\n return new java.awt.Color(\n protocolor.getRed(),\n protocolor.getGreen(),\n protocolor.getBlue(),\n alpha);\n }\n\n public static Color toProto(java.awt.Color color) {\n float red = (float) color.getRed();\n float green = (float) color.getGreen();\n float blue = (float) color.getBlue();\n float denominator = 255.0;\n Color.Builder resultBuilder =\n Color\n .newBuilder()\n .setRed(red / denominator)\n .setGreen(green / denominator)\n .setBlue(blue / denominator);\n int alpha = color.getAlpha();\n if (alpha != 255) {\n result.setAlpha(\n FloatValue\n .newBuilder()\n .setValue(((float) alpha) / denominator)\n .build());\n }\n return resultBuilder.build();\n }\n // ...\n\nExample (iOS / Obj-C):\n\n // ...\n static UIColor* fromProto(Color* protocolor) {\n float red = [protocolor red];\n float green = [protocolor green];\n float blue = [protocolor blue];\n FloatValue* alpha_wrapper = [protocolor alpha];\n float alpha = 1.0;\n if (alpha_wrapper != nil) {\n alpha = [alpha_wrapper value];\n }\n return [UIColor colorWithRed:red green:green blue:blue alpha:alpha];\n }\n\n static Color* toProto(UIColor* color) {\n CGFloat red, green, blue, alpha;\n if (![color getRed:\u0026red green:\u0026green blue:\u0026blue alpha:\u0026alpha]) {\n return nil;\n }\n Color* result = [Color alloc] init];\n [result setRed:red];\n [result setGreen:green];\n [result setBlue:blue];\n if (alpha \u003c= 0.9999) {\n [result setAlpha:floatWrapperWithValue(alpha)];\n }\n [result autorelease];\n return result;\n }\n // ...\n\n Example (JavaScript):\n\n // ...\n\n var protoToCssColor = function(rgb_color) {\n var redFrac = rgb_color.red || 0.0;\n var greenFrac = rgb_color.green || 0.0;\n var blueFrac = rgb_color.blue || 0.0;\n var red = Math.floor(redFrac * 255);\n var green = Math.floor(greenFrac * 255);\n var blue = Math.floor(blueFrac * 255);\n\n if (!('alpha' in rgb_color)) {\n return rgbToCssColor_(red, green, blue);\n }\n\n var alphaFrac = rgb_color.alpha.value || 0.0;\n var rgbParams = [red, green, blue].join(',');\n return ['rgba(', rgbParams, ',', alphaFrac, ')'].join('');\n };\n\n var rgbToCssColor_ = function(red, green, blue) {\n var rgbNumber = new Number((red \u003c\u003c 16) | (green \u003c\u003c 8) | blue);\n var hexString = rgbNumber.toString(16);\n var missingZeros = 6 - hexString.length;\n var resultBuilder = ['#'];\n for (var i = 0; i \u003c missingZeros; i++) {\n resultBuilder.push('0');\n }\n resultBuilder.push(hexString);\n return resultBuilder.join('');\n };\n\n // ...", + "id": "Color", "properties": { - "green": { - "description": "The amount of green in the color as a value in the interval [0, 1].", + "alpha": { + "description": "The fraction of this color that should be applied to the pixel. That is,\nthe final pixel color is defined by the equation:\n\n pixel color = alpha * (this color) + (1.0 - alpha) * (background color)\n\nThis means that a value of 1.0 corresponds to a solid color, whereas\na value of 0.0 corresponds to a completely transparent color. This\nuses a wrapper message rather than a simple float scalar so that it is\npossible to distinguish between a default value and the value being unset.\nIf omitted, this color object is to be rendered as a solid color\n(as if the alpha value had been explicitly given with a value of 1.0).", "format": "float", "type": "number" }, @@ -495,8 +503,8 @@ "format": "float", "type": "number" }, - "alpha": { - "description": "The fraction of this color that should be applied to the pixel. That is,\nthe final pixel color is defined by the equation:\n\n pixel color = alpha * (this color) + (1.0 - alpha) * (background color)\n\nThis means that a value of 1.0 corresponds to a solid color, whereas\na value of 0.0 corresponds to a completely transparent color. This\nuses a wrapper message rather than a simple float scalar so that it is\npossible to distinguish between a default value and the value being unset.\nIf omitted, this color object is to be rendered as a solid color\n(as if the alpha value had been explicitly given with a value of 1.0).", + "green": { + "description": "The amount of green in the color as a value in the interval [0, 1].", "format": "float", "type": "number" }, @@ -506,28 +514,400 @@ "type": "number" } }, - "id": "Color", - "description": "Represents a color in the RGBA color space. This representation is designed\nfor simplicity of conversion to/from color representations in various\nlanguages over compactness; for example, the fields of this representation\ncan be trivially provided to the constructor of \"java.awt.Color\" in Java; it\ncan also be trivially provided to UIColor's \"+colorWithRed:green:blue:alpha\"\nmethod in iOS; and, with just a little work, it can be easily formatted into\na CSS \"rgba()\" string in JavaScript, as well. Here are some examples:\n\nExample (Java):\n\n import com.google.type.Color;\n\n // ...\n public static java.awt.Color fromProto(Color protocolor) {\n float alpha = protocolor.hasAlpha()\n ? protocolor.getAlpha().getValue()\n : 1.0;\n\n return new java.awt.Color(\n protocolor.getRed(),\n protocolor.getGreen(),\n protocolor.getBlue(),\n alpha);\n }\n\n public static Color toProto(java.awt.Color color) {\n float red = (float) color.getRed();\n float green = (float) color.getGreen();\n float blue = (float) color.getBlue();\n float denominator = 255.0;\n Color.Builder resultBuilder =\n Color\n .newBuilder()\n .setRed(red / denominator)\n .setGreen(green / denominator)\n .setBlue(blue / denominator);\n int alpha = color.getAlpha();\n if (alpha != 255) {\n result.setAlpha(\n FloatValue\n .newBuilder()\n .setValue(((float) alpha) / denominator)\n .build());\n }\n return resultBuilder.build();\n }\n // ...\n\nExample (iOS / Obj-C):\n\n // ...\n static UIColor* fromProto(Color* protocolor) {\n float red = [protocolor red];\n float green = [protocolor green];\n float blue = [protocolor blue];\n FloatValue* alpha_wrapper = [protocolor alpha];\n float alpha = 1.0;\n if (alpha_wrapper != nil) {\n alpha = [alpha_wrapper value];\n }\n return [UIColor colorWithRed:red green:green blue:blue alpha:alpha];\n }\n\n static Color* toProto(UIColor* color) {\n CGFloat red, green, blue, alpha;\n if (![color getRed:&red green:&green blue:&blue alpha:&alpha]) {\n return nil;\n }\n Color* result = [Color alloc] init];\n [result setRed:red];\n [result setGreen:green];\n [result setBlue:blue];\n if (alpha \u003c= 0.9999) {\n [result setAlpha:floatWrapperWithValue(alpha)];\n }\n [result autorelease];\n return result;\n }\n // ...\n\n Example (JavaScript):\n\n // ...\n\n var protoToCssColor = function(rgb_color) {\n var redFrac = rgb_color.red || 0.0;\n var greenFrac = rgb_color.green || 0.0;\n var blueFrac = rgb_color.blue || 0.0;\n var red = Math.floor(redFrac * 255);\n var green = Math.floor(greenFrac * 255);\n var blue = Math.floor(blueFrac * 255);\n\n if (!('alpha' in rgb_color)) {\n return rgbToCssColor_(red, green, blue);\n }\n\n var alphaFrac = rgb_color.alpha.value || 0.0;\n var rgbParams = [red, green, blue].join(',');\n return ['rgba(', rgbParams, ',', alphaFrac, ')'].join('');\n };\n\n var rgbToCssColor_ = function(red, green, blue) {\n var rgbNumber = new Number((red \u003c\u003c 16) | (green \u003c\u003c 8) | blue);\n var hexString = rgbNumber.toString(16);\n var missingZeros = 6 - hexString.length;\n var resultBuilder = ['#'];\n for (var i = 0; i \u003c missingZeros; i++) {\n resultBuilder.push('0');\n }\n resultBuilder.push(hexString);\n return resultBuilder.join('');\n };\n\n // ...", + "type": "object" + }, + "ColorInfo": { + "description": "Color information consists of RGB channels, score, and the fraction of\nthe image that the color occupies in the image.", + "id": "ColorInfo", + "properties": { + "color": { + "$ref": "Color", + "description": "RGB components of the color." + }, + "pixelFraction": { + "description": "The fraction of pixels the color occupies in the image.\nValue in range [0, 1].", + "format": "float", + "type": "number" + }, + "score": { + "description": "Image-specific score for this color. Value in range [0, 1].", + "format": "float", + "type": "number" + } + }, + "type": "object" + }, + "CropHint": { + "description": "Single crop hint that is used to generate a new crop when serving an image.", + "id": "CropHint", + "properties": { + "boundingPoly": { + "$ref": "BoundingPoly", + "description": "The bounding polygon for the crop region. The coordinates of the bounding\nbox are in the original image's scale, as returned in `ImageParams`." + }, + "confidence": { + "description": "Confidence of this being a salient region. Range [0, 1].", + "format": "float", + "type": "number" + }, + "importanceFraction": { + "description": "Fraction of importance of this salient region with respect to the original\nimage.", + "format": "float", + "type": "number" + } + }, + "type": "object" + }, + "CropHintsAnnotation": { + "description": "Set of crop hints that are used to generate new crops when serving images.", + "id": "CropHintsAnnotation", + "properties": { + "cropHints": { + "description": "Crop hint results.", + "items": { + "$ref": "CropHint" + }, + "type": "array" + } + }, + "type": "object" + }, + "CropHintsParams": { + "description": "Parameters for crop hints annotation request.", + "id": "CropHintsParams", + "properties": { + "aspectRatios": { + "description": "Aspect ratios in floats, representing the ratio of the width to the height\nof the image. For example, if the desired aspect ratio is 4/3, the\ncorresponding float value should be 1.33333. If not specified, the\nbest possible crop is returned. The number of provided aspect ratios is\nlimited to a maximum of 16; any aspect ratios provided after the 16th are\nignored.", + "items": { + "format": "float", + "type": "number" + }, + "type": "array" + } + }, + "type": "object" + }, + "DetectedBreak": { + "description": "Detected start or end of a structural component.", + "id": "DetectedBreak", + "properties": { + "isPrefix": { + "description": "True if break prepends the element.", + "type": "boolean" + }, + "type": { + "description": "Detected break type.", + "enum": [ + "UNKNOWN", + "SPACE", + "SURE_SPACE", + "EOL_SURE_SPACE", + "HYPHEN", + "LINE_BREAK" + ], + "enumDescriptions": [ + "Unknown break label type.", + "Regular space.", + "Sure space (very wide).", + "Line-wrapping break.", + "End-line hyphen that is not present in text; does not co-occur with\n`SPACE`, `LEADER_SPACE`, or `LINE_BREAK`.", + "Line break that ends a paragraph." + ], + "type": "string" + } + }, + "type": "object" + }, + "DetectedLanguage": { + "description": "Detected language for a structural component.", + "id": "DetectedLanguage", + "properties": { + "confidence": { + "description": "Confidence of detected language. Range [0, 1].", + "format": "float", + "type": "number" + }, + "languageCode": { + "description": "The BCP-47 language code, such as \"en-US\" or \"sr-Latn\". For more\ninformation, see\nhttp://www.unicode.org/reports/tr35/#Unicode_locale_identifier.", + "type": "string" + } + }, + "type": "object" + }, + "DominantColorsAnnotation": { + "description": "Set of dominant colors and their corresponding scores.", + "id": "DominantColorsAnnotation", + "properties": { + "colors": { + "description": "RGB color values with their score and pixel fraction.", + "items": { + "$ref": "ColorInfo" + }, + "type": "array" + } + }, + "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" + }, + "EntityAnnotation": { + "description": "Set of detected entity features.", + "id": "EntityAnnotation", + "properties": { + "boundingPoly": { + "$ref": "BoundingPoly", + "description": "Image region to which this entity belongs. Not produced\nfor `LABEL_DETECTION` features." + }, + "confidence": { + "description": "**Deprecated. Use `score` instead.**\nThe accuracy of the entity detection in an image.\nFor example, for an image in which the \"Eiffel Tower\" entity is detected,\nthis field represents the confidence that there is a tower in the query\nimage. Range [0, 1].", + "format": "float", + "type": "number" + }, + "description": { + "description": "Entity textual description, expressed in its `locale` language.", + "type": "string" + }, + "locale": { + "description": "The language code for the locale in which the entity textual\n`description` is expressed.", + "type": "string" + }, + "locations": { + "description": "The location information for the detected entity. Multiple\n`LocationInfo` elements can be present because one location may\nindicate the location of the scene in the image, and another location\nmay indicate the location of the place where the image was taken.\nLocation information is usually present for landmarks.", + "items": { + "$ref": "LocationInfo" + }, + "type": "array" + }, + "mid": { + "description": "Opaque entity ID. Some IDs may be available in\n[Google Knowledge Graph Search\nAPI](https://developers.google.com/knowledge-graph/).", + "type": "string" + }, + "properties": { + "description": "Some entities may have optional user-supplied `Property` (name/value)\nfields, such a score or string that qualifies the entity.", + "items": { + "$ref": "Property" + }, + "type": "array" + }, + "score": { + "description": "Overall score of the result. Range [0, 1].", + "format": "float", + "type": "number" + }, + "topicality": { + "description": "The relevancy of the ICA (Image Content Annotation) label to the\nimage. For example, the relevancy of \"tower\" is likely higher to an image\ncontaining the detected \"Eiffel Tower\" than to an image containing a\ndetected distant towering building, even though the confidence that\nthere is a tower in each image may be the same. Range [0, 1].", + "format": "float", + "type": "number" + } + }, + "type": "object" + }, + "FaceAnnotation": { + "description": "A face annotation object contains the results of face detection.", + "id": "FaceAnnotation", + "properties": { + "angerLikelihood": { + "description": "Anger likelihood.", + "enum": [ + "UNKNOWN", + "VERY_UNLIKELY", + "UNLIKELY", + "POSSIBLE", + "LIKELY", + "VERY_LIKELY" + ], + "enumDescriptions": [ + "Unknown likelihood.", + "It is very unlikely that the image belongs to the specified vertical.", + "It is unlikely that the image belongs to the specified vertical.", + "It is possible that the image belongs to the specified vertical.", + "It is likely that the image belongs to the specified vertical.", + "It is very likely that the image belongs to the specified vertical." + ], + "type": "string" + }, + "blurredLikelihood": { + "description": "Blurred likelihood.", + "enum": [ + "UNKNOWN", + "VERY_UNLIKELY", + "UNLIKELY", + "POSSIBLE", + "LIKELY", + "VERY_LIKELY" + ], + "enumDescriptions": [ + "Unknown likelihood.", + "It is very unlikely that the image belongs to the specified vertical.", + "It is unlikely that the image belongs to the specified vertical.", + "It is possible that the image belongs to the specified vertical.", + "It is likely that the image belongs to the specified vertical.", + "It is very likely that the image belongs to the specified vertical." + ], + "type": "string" + }, + "boundingPoly": { + "$ref": "BoundingPoly", + "description": "The bounding polygon around the face. The coordinates of the bounding box\nare in the original image's scale, as returned in `ImageParams`.\nThe bounding box is computed to \"frame\" the face in accordance with human\nexpectations. It is based on the landmarker results.\nNote that one or more x and/or y coordinates may not be generated in the\n`BoundingPoly` (the polygon will be unbounded) if only a partial face\nappears in the image to be annotated." + }, + "detectionConfidence": { + "description": "Detection confidence. Range [0, 1].", + "format": "float", + "type": "number" + }, + "fdBoundingPoly": { + "$ref": "BoundingPoly", + "description": "The `fd_bounding_poly` bounding polygon is tighter than the\n`boundingPoly`, and encloses only the skin part of the face. Typically, it\nis used to eliminate the face from any image analysis that detects the\n\"amount of skin\" visible in an image. It is not based on the\nlandmarker results, only on the initial face detection, hence\nthe \u003ccode\u003efd\u003c/code\u003e (face detection) prefix." + }, + "headwearLikelihood": { + "description": "Headwear likelihood.", + "enum": [ + "UNKNOWN", + "VERY_UNLIKELY", + "UNLIKELY", + "POSSIBLE", + "LIKELY", + "VERY_LIKELY" + ], + "enumDescriptions": [ + "Unknown likelihood.", + "It is very unlikely that the image belongs to the specified vertical.", + "It is unlikely that the image belongs to the specified vertical.", + "It is possible that the image belongs to the specified vertical.", + "It is likely that the image belongs to the specified vertical.", + "It is very likely that the image belongs to the specified vertical." + ], + "type": "string" + }, + "joyLikelihood": { + "description": "Joy likelihood.", + "enum": [ + "UNKNOWN", + "VERY_UNLIKELY", + "UNLIKELY", + "POSSIBLE", + "LIKELY", + "VERY_LIKELY" + ], + "enumDescriptions": [ + "Unknown likelihood.", + "It is very unlikely that the image belongs to the specified vertical.", + "It is unlikely that the image belongs to the specified vertical.", + "It is possible that the image belongs to the specified vertical.", + "It is likely that the image belongs to the specified vertical.", + "It is very likely that the image belongs to the specified vertical." + ], + "type": "string" + }, + "landmarkingConfidence": { + "description": "Face landmarking confidence. Range [0, 1].", + "format": "float", + "type": "number" + }, + "landmarks": { + "description": "Detected face landmarks.", + "items": { + "$ref": "Landmark" + }, + "type": "array" + }, + "panAngle": { + "description": "Yaw angle, which indicates the leftward/rightward angle that the face is\npointing relative to the vertical plane perpendicular to the image. Range\n[-180,180].", + "format": "float", + "type": "number" + }, + "rollAngle": { + "description": "Roll angle, which indicates the amount of clockwise/anti-clockwise rotation\nof the face relative to the image vertical about the axis perpendicular to\nthe face. Range [-180,180].", + "format": "float", + "type": "number" + }, + "sorrowLikelihood": { + "description": "Sorrow likelihood.", + "enum": [ + "UNKNOWN", + "VERY_UNLIKELY", + "UNLIKELY", + "POSSIBLE", + "LIKELY", + "VERY_LIKELY" + ], + "enumDescriptions": [ + "Unknown likelihood.", + "It is very unlikely that the image belongs to the specified vertical.", + "It is unlikely that the image belongs to the specified vertical.", + "It is possible that the image belongs to the specified vertical.", + "It is likely that the image belongs to the specified vertical.", + "It is very likely that the image belongs to the specified vertical." + ], + "type": "string" + }, + "surpriseLikelihood": { + "description": "Surprise likelihood.", + "enum": [ + "UNKNOWN", + "VERY_UNLIKELY", + "UNLIKELY", + "POSSIBLE", + "LIKELY", + "VERY_LIKELY" + ], + "enumDescriptions": [ + "Unknown likelihood.", + "It is very unlikely that the image belongs to the specified vertical.", + "It is unlikely that the image belongs to the specified vertical.", + "It is possible that the image belongs to the specified vertical.", + "It is likely that the image belongs to the specified vertical.", + "It is very likely that the image belongs to the specified vertical." + ], + "type": "string" + }, + "tiltAngle": { + "description": "Pitch angle, which indicates the upwards/downwards angle that the face is\npointing relative to the image's horizontal plane. Range [-180,180].", + "format": "float", + "type": "number" + }, + "underExposedLikelihood": { + "description": "Under-exposed likelihood.", + "enum": [ + "UNKNOWN", + "VERY_UNLIKELY", + "UNLIKELY", + "POSSIBLE", + "LIKELY", + "VERY_LIKELY" + ], + "enumDescriptions": [ + "Unknown likelihood.", + "It is very unlikely that the image belongs to the specified vertical.", + "It is unlikely that the image belongs to the specified vertical.", + "It is possible that the image belongs to the specified vertical.", + "It is likely that the image belongs to the specified vertical.", + "It is very likely that the image belongs to the specified vertical." + ], + "type": "string" + } + }, "type": "object" }, "Feature": { "description": "The type of Google Cloud Vision API detection to perform, and the maximum\nnumber of results to return for that type. Multiple `Feature` objects can\nbe specified in the `features` list.", - "type": "object", + "id": "Feature", "properties": { + "maxResults": { + "description": "Maximum number of results of this type. Does not apply to\n`TEXT_DETECTION`, `DOCUMENT_TEXT_DETECTION`, or `CROP_HINTS`.", + "format": "int32", + "type": "integer" + }, + "model": { + "description": "Model to use for the feature.\nSupported values: \"builtin/stable\" (the default if unset) and\n\"builtin/latest\".", + "type": "string" + }, "type": { - "enumDescriptions": [ - "Unspecified feature type.", - "Run face detection.", - "Run landmark detection.", - "Run logo detection.", - "Run label detection.", - "Run text detection / optical character recognition (OCR). Text detection\nis optimized for areas of text within a larger image; if the image is\na document, use `DOCUMENT_TEXT_DETECTION` instead.", - "Run dense text document OCR. Takes precedence when both\n`DOCUMENT_TEXT_DETECTION` and `TEXT_DETECTION` are present.", - "Run Safe Search to detect potentially unsafe\nor undesirable content.", - "Compute a set of image properties, such as the\nimage's dominant colors.", - "Run crop hints.", - "Run web detection." - ], + "description": "The feature type.", "enum": [ "TYPE_UNSPECIFIED", "FACE_DETECTION", @@ -541,445 +921,167 @@ "CROP_HINTS", "WEB_DETECTION" ], - "description": "The feature type.", + "enumDescriptions": [ + "Unspecified feature type.", + "Run face detection.", + "Run landmark detection.", + "Run logo detection.", + "Run label detection.", + "Run text detection / optical character recognition (OCR). Text detection\nis optimized for areas of text within a larger image; if the image is\na document, use `DOCUMENT_TEXT_DETECTION` instead.", + "Run dense text document OCR. Takes precedence when both\n`DOCUMENT_TEXT_DETECTION` and `TEXT_DETECTION` are present.", + "Run Safe Search to detect potentially unsafe\nor undesirable content.", + "Compute a set of image properties, such as the\nimage's dominant colors.", + "Run crop hints.", + "Run web detection." + ], "type": "string" - }, - "maxResults": { - "description": "Maximum number of results of this type. Does not apply to\n`TEXT_DETECTION`, `DOCUMENT_TEXT_DETECTION`, or `CROP_HINTS`.", - "format": "int32", - "type": "integer" } }, - "id": "Feature" + "type": "object" + }, + "GoogleCloudVisionV1p2beta1AsyncAnnotateFileResponse": { + "description": "The response for a single offline file annotation request.", + "id": "GoogleCloudVisionV1p2beta1AsyncAnnotateFileResponse", + "properties": { + "outputConfig": { + "$ref": "GoogleCloudVisionV1p2beta1OutputConfig", + "description": "The output location and metadata from AsyncAnnotateFileRequest." + } + }, + "type": "object" + }, + "GoogleCloudVisionV1p2beta1AsyncBatchAnnotateFilesResponse": { + "description": "Response to an async batch file annotation request.", + "id": "GoogleCloudVisionV1p2beta1AsyncBatchAnnotateFilesResponse", + "properties": { + "responses": { + "description": "The list of file annotation responses, one for each request in\nAsyncBatchAnnotateFilesRequest.", + "items": { + "$ref": "GoogleCloudVisionV1p2beta1AsyncAnnotateFileResponse" + }, + "type": "array" + } + }, + "type": "object" + }, + "GoogleCloudVisionV1p2beta1GcsDestination": { + "description": "The Google Cloud Storage location where the output will be written to.", + "id": "GoogleCloudVisionV1p2beta1GcsDestination", + "properties": { + "uri": { + "description": "Google Cloud Storage URI where the results will be stored. Results will\nbe in JSON format and preceded by its corresponding input URI. This field\ncan either represent a single file, or a prefix for multiple outputs.\nPrefixes must end in a `/`.\n\nExamples:\n\n* File: gs://bucket-name/filename.json\n* Prefix: gs://bucket-name/prefix/here/\n* File: gs://bucket-name/prefix/here\n\nIf multiple outputs, each response is still AnnotateFileResponse, each of\nwhich contains some subset of the full list of AnnotateImageResponse.\nMultiple outputs can happen if, for example, the output JSON is too large\nand overflows into multiple sharded files.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudVisionV1p2beta1OperationMetadata": { + "description": "Contains metadata for the BatchAnnotateImages operation.", + "id": "GoogleCloudVisionV1p2beta1OperationMetadata", + "properties": { + "createTime": { + "description": "The time when the batch request was received.", + "format": "google-datetime", + "type": "string" + }, + "state": { + "description": "Current state of the batch operation.", + "enum": [ + "STATE_UNSPECIFIED", + "CREATED", + "RUNNING", + "DONE", + "CANCELLED" + ], + "enumDescriptions": [ + "Invalid.", + "Request is received.", + "Request is actively being processed.", + "The batch processing is done.", + "The batch processing was cancelled." + ], + "type": "string" + }, + "updateTime": { + "description": "The time when the operation result was last updated.", + "format": "google-datetime", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudVisionV1p2beta1OutputConfig": { + "description": "The desired output location and metadata.", + "id": "GoogleCloudVisionV1p2beta1OutputConfig", + "properties": { + "batchSize": { + "description": "The max number of response protos to put into each output JSON file on GCS.\nThe valid range is [1, 100]. If not specified, the default value is 20.\n\nFor example, for one pdf file with 100 pages, 100 response protos will\nbe generated. If `batch_size` = 20, then 5 json files each\ncontaining 20 response protos will be written under the prefix\n`gcs_destination`.`uri`.\n\nCurrently, batch_size only applies to GcsDestination, with potential future\nsupport for other output configurations.", + "format": "int32", + "type": "integer" + }, + "gcsDestination": { + "$ref": "GoogleCloudVisionV1p2beta1GcsDestination", + "description": "The Google Cloud Storage location to write the output(s) to." + } + }, + "type": "object" + }, + "Image": { + "description": "Client image to perform Google Cloud Vision API tasks over.", + "id": "Image", + "properties": { + "content": { + "description": "Image content, represented as a stream of bytes.\nNote: As with all `bytes` fields, protobuffers use a pure binary\nrepresentation, whereas JSON representations use base64.", + "format": "byte", + "type": "string" + }, + "source": { + "$ref": "ImageSource", + "description": "Google Cloud Storage image location, or publicly-accessible image\nURL. If both `content` and `source` are provided for an image, `content`\ntakes precedence and is used to perform the image annotation request." + } + }, + "type": "object" + }, + "ImageContext": { + "description": "Image context and/or feature-specific parameters.", + "id": "ImageContext", + "properties": { + "cropHintsParams": { + "$ref": "CropHintsParams", + "description": "Parameters for crop hints annotation request." + }, + "languageHints": { + "description": "List of languages to use for TEXT_DETECTION. In most cases, an empty value\nyields the best results since it enables automatic language detection. For\nlanguages based on the Latin alphabet, setting `language_hints` is not\nneeded. In rare cases, when the language of the text in the image is known,\nsetting a hint will help get better results (although it will be a\nsignificant hindrance if the hint is wrong). Text detection returns an\nerror if one or more of the specified languages is not one of the\n[supported languages](/vision/docs/languages).", + "items": { + "type": "string" + }, + "type": "array" + }, + "latLongRect": { + "$ref": "LatLongRect", + "description": "Not used." + }, + "webDetectionParams": { + "$ref": "WebDetectionParams", + "description": "Parameters for web detection." + } + }, + "type": "object" }, "ImageProperties": { "description": "Stores image properties, such as dominant colors.", - "type": "object", + "id": "ImageProperties", "properties": { "dominantColors": { "$ref": "DominantColorsAnnotation", "description": "If present, dominant colors completed successfully." } }, - "id": "ImageProperties" - }, - "SafeSearchAnnotation": { - "description": "Set of features pertaining to the image, computed by computer vision\nmethods over safe-search verticals (for example, adult, spoof, medical,\nviolence).", - "type": "object", - "properties": { - "medical": { - "description": "Likelihood that this is a medical image.", - "type": "string", - "enumDescriptions": [ - "Unknown likelihood.", - "It is very unlikely that the image belongs to the specified vertical.", - "It is unlikely that the image belongs to the specified vertical.", - "It is possible that the image belongs to the specified vertical.", - "It is likely that the image belongs to the specified vertical.", - "It is very likely that the image belongs to the specified vertical." - ], - "enum": [ - "UNKNOWN", - "VERY_UNLIKELY", - "UNLIKELY", - "POSSIBLE", - "LIKELY", - "VERY_LIKELY" - ] - }, - "violence": { - "enum": [ - "UNKNOWN", - "VERY_UNLIKELY", - "UNLIKELY", - "POSSIBLE", - "LIKELY", - "VERY_LIKELY" - ], - "description": "Likelihood that this image contains violent content.", - "type": "string", - "enumDescriptions": [ - "Unknown likelihood.", - "It is very unlikely that the image belongs to the specified vertical.", - "It is unlikely that the image belongs to the specified vertical.", - "It is possible that the image belongs to the specified vertical.", - "It is likely that the image belongs to the specified vertical.", - "It is very likely that the image belongs to the specified vertical." - ] - }, - "adult": { - "enum": [ - "UNKNOWN", - "VERY_UNLIKELY", - "UNLIKELY", - "POSSIBLE", - "LIKELY", - "VERY_LIKELY" - ], - "description": "Represents the adult content likelihood for the image. Adult content may\ncontain elements such as nudity, pornographic images or cartoons, or\nsexual activities.", - "type": "string", - "enumDescriptions": [ - "Unknown likelihood.", - "It is very unlikely that the image belongs to the specified vertical.", - "It is unlikely that the image belongs to the specified vertical.", - "It is possible that the image belongs to the specified vertical.", - "It is likely that the image belongs to the specified vertical.", - "It is very likely that the image belongs to the specified vertical." - ] - }, - "spoof": { - "description": "Spoof likelihood. The likelihood that an modification\nwas made to the image's canonical version to make it appear\nfunny or offensive.", - "type": "string", - "enumDescriptions": [ - "Unknown likelihood.", - "It is very unlikely that the image belongs to the specified vertical.", - "It is unlikely that the image belongs to the specified vertical.", - "It is possible that the image belongs to the specified vertical.", - "It is likely that the image belongs to the specified vertical.", - "It is very likely that the image belongs to the specified vertical." - ], - "enum": [ - "UNKNOWN", - "VERY_UNLIKELY", - "UNLIKELY", - "POSSIBLE", - "LIKELY", - "VERY_LIKELY" - ] - } - }, - "id": "SafeSearchAnnotation" - }, - "DominantColorsAnnotation": { - "description": "Set of dominant colors and their corresponding scores.", - "type": "object", - "properties": { - "colors": { - "description": "RGB color values with their score and pixel fraction.", - "type": "array", - "items": { - "$ref": "ColorInfo" - } - } - }, - "id": "DominantColorsAnnotation" - }, - "TextAnnotation": { - "description": "TextAnnotation contains a structured representation of OCR extracted text.\nThe hierarchy of an OCR extracted text structure is like this:\n TextAnnotation -\u003e Page -\u003e Block -\u003e Paragraph -\u003e Word -\u003e Symbol\nEach structural component, starting from Page, may further have their own\nproperties. Properties describe detected languages, breaks etc.. Please refer\nto the TextAnnotation.TextProperty message definition below for more\ndetail.", - "type": "object", - "properties": { - "pages": { - "description": "List of pages detected by OCR.", - "type": "array", - "items": { - "$ref": "Page" - } - }, - "text": { - "description": "UTF-8 text detected on the pages.", - "type": "string" - } - }, - "id": "TextAnnotation" - }, - "DetectedLanguage": { - "description": "Detected language for a structural component.", - "type": "object", - "properties": { - "languageCode": { - "description": "The BCP-47 language code, such as \"en-US\" or \"sr-Latn\". For more\ninformation, see\nhttp://www.unicode.org/reports/tr35/#Unicode_locale_identifier.", - "type": "string" - }, - "confidence": { - "description": "Confidence of detected language. Range [0, 1].", - "format": "float", - "type": "number" - } - }, - "id": "DetectedLanguage" - }, - "Vertex": { - "description": "A vertex represents a 2D point in the image.\nNOTE: the vertex coordinates are in the same scale as the original image.", - "type": "object", - "properties": { - "y": { - "description": "Y coordinate.", - "format": "int32", - "type": "integer" - }, - "x": { - "description": "X coordinate.", - "format": "int32", - "type": "integer" - } - }, - "id": "Vertex" - }, - "TextProperty": { - "description": "Additional information detected on the structural component.", - "type": "object", - "properties": { - "detectedBreak": { - "description": "Detected start or end of a text segment.", - "$ref": "DetectedBreak" - }, - "detectedLanguages": { - "description": "A list of detected languages together with confidence.", - "type": "array", - "items": { - "$ref": "DetectedLanguage" - } - } - }, - "id": "TextProperty" - }, - "BoundingPoly": { - "description": "A bounding polygon for the detected image annotation.", - "type": "object", - "properties": { - "vertices": { - "description": "The bounding polygon vertices.", - "type": "array", - "items": { - "$ref": "Vertex" - } - } - }, - "id": "BoundingPoly" - }, - "WebEntity": { - "description": "Entity deduced from similar images on the Internet.", - "type": "object", - "properties": { - "entityId": { - "description": "Opaque entity ID.", - "type": "string" - }, - "description": { - "description": "Canonical description of the entity, in English.", - "type": "string" - }, - "score": { - "description": "Overall relevancy score for the entity.\nNot normalized and not comparable across different image queries.", - "format": "float", - "type": "number" - } - }, - "id": "WebEntity" - }, - "AnnotateImageResponse": { - "properties": { - "error": { - "description": "If set, represents the error message for the operation.\nNote that filled-in image annotations are guaranteed to be\ncorrect, even when `error` is set.", - "$ref": "Status" - }, - "fullTextAnnotation": { - "$ref": "TextAnnotation", - "description": "If present, text (OCR) detection or document (OCR) text detection has\ncompleted successfully.\nThis annotation provides the structural hierarchy for the OCR detected\ntext." - }, - "landmarkAnnotations": { - "description": "If present, landmark detection has completed successfully.", - "type": "array", - "items": { - "$ref": "EntityAnnotation" - } - }, - "textAnnotations": { - "description": "If present, text (OCR) detection has completed successfully.", - "type": "array", - "items": { - "$ref": "EntityAnnotation" - } - }, - "faceAnnotations": { - "description": "If present, face detection has completed successfully.", - "type": "array", - "items": { - "$ref": "FaceAnnotation" - } - }, - "imagePropertiesAnnotation": { - "description": "If present, image properties were extracted successfully.", - "$ref": "ImageProperties" - }, - "logoAnnotations": { - "description": "If present, logo detection has completed successfully.", - "type": "array", - "items": { - "$ref": "EntityAnnotation" - } - }, - "cropHintsAnnotation": { - "$ref": "CropHintsAnnotation", - "description": "If present, crop hints have completed successfully." - }, - "webDetection": { - "$ref": "WebDetection", - "description": "If present, web detection has completed successfully." - }, - "safeSearchAnnotation": { - "description": "If present, safe-search annotation has completed successfully.", - "$ref": "SafeSearchAnnotation" - }, - "labelAnnotations": { - "description": "If present, label detection has completed successfully.", - "type": "array", - "items": { - "$ref": "EntityAnnotation" - } - } - }, - "id": "AnnotateImageResponse", - "description": "Response to an image annotation request.", - "type": "object" - }, - "CropHintsParams": { - "description": "Parameters for crop hints annotation request.", - "type": "object", - "properties": { - "aspectRatios": { - "description": "Aspect ratios in floats, representing the ratio of the width to the height\nof the image. For example, if the desired aspect ratio is 4/3, the\ncorresponding float value should be 1.33333. If not specified, the\nbest possible crop is returned. The number of provided aspect ratios is\nlimited to a maximum of 16; any aspect ratios provided after the 16th are\nignored.", - "type": "array", - "items": { - "format": "float", - "type": "number" - } - } - }, - "id": "CropHintsParams" - }, - "Block": { - "description": "Logical element on the page.", - "type": "object", - "properties": { - "property": { - "description": "Additional information detected for the block.", - "$ref": "TextProperty" - }, - "blockType": { - "enumDescriptions": [ - "Unknown block type.", - "Regular text block.", - "Table block.", - "Image block.", - "Horizontal/vertical line box.", - "Barcode block." - ], - "enum": [ - "UNKNOWN", - "TEXT", - "TABLE", - "PICTURE", - "RULER", - "BARCODE" - ], - "description": "Detected block type (text, image etc) for this block.", - "type": "string" - }, - "boundingBox": { - "description": "The bounding box for the block.\nThe vertices are in the order of top-left, top-right, bottom-right,\nbottom-left. When a rotation of the bounding box is detected the rotation\nis represented as around the top-left corner as defined when the text is\nread in the 'natural' orientation.\nFor example:\n\n* when the text is horizontal it might look like:\n\n 0----1\n | |\n 3----2\n\n* when it's rotated 180 degrees around the top-left corner it becomes:\n\n 2----3\n | |\n 1----0\n\n and the vertice order will still be (0, 1, 2, 3).", - "$ref": "BoundingPoly" - }, - "paragraphs": { - "description": "List of paragraphs in this block (if this blocks is of type text).", - "type": "array", - "items": { - "$ref": "Paragraph" - } - } - }, - "id": "Block" - }, - "Property": { - "description": "A `Property` consists of a user-supplied name/value pair.", - "type": "object", - "properties": { - "value": { - "description": "Value of the property.", - "type": "string" - }, - "uint64Value": { - "description": "Value of numeric properties.", - "format": "uint64", - "type": "string" - }, - "name": { - "description": "Name of the property.", - "type": "string" - } - }, - "id": "Property" - }, - "LocationInfo": { - "description": "Detected entity location information.", - "type": "object", - "properties": { - "latLng": { - "$ref": "LatLng", - "description": "lat/long location coordinates." - } - }, - "id": "LocationInfo" - }, - "WebDetection": { - "description": "Relevant information for the image from the Internet.", - "type": "object", - "properties": { - "fullMatchingImages": { - "description": "Fully matching images from the Internet.\nCan include resized copies of the query image.", - "type": "array", - "items": { - "$ref": "WebImage" - } - }, - "webEntities": { - "description": "Deduced entities from similar images on the Internet.", - "type": "array", - "items": { - "$ref": "WebEntity" - } - }, - "pagesWithMatchingImages": { - "description": "Web pages containing the matching images from the Internet.", - "type": "array", - "items": { - "$ref": "WebPage" - } - }, - "partialMatchingImages": { - "description": "Partial matching images from the Internet.\nThose images are similar enough to share some key-point features. For\nexample an original image will likely have partial matching for its crops.", - "type": "array", - "items": { - "$ref": "WebImage" - } - }, - "visuallySimilarImages": { - "description": "The visually similar image results.", - "type": "array", - "items": { - "$ref": "WebImage" - } - } - }, - "id": "WebDetection" - }, - "BatchAnnotateImagesResponse": { - "properties": { - "responses": { - "description": "Individual responses to image annotation requests within the batch.", - "type": "array", - "items": { - "$ref": "AnnotateImageResponse" - } - } - }, - "id": "BatchAnnotateImagesResponse", - "description": "Response to a batch image annotation request.", "type": "object" }, "ImageSource": { "description": "External image source (Google Cloud Storage or web URL image location).", - "type": "object", + "id": "ImageSource", "properties": { "gcsImageUri": { "description": "**Use `image_uri` instead.**\n\nThe Google Cloud Storage URI of the form\n`gs://bucket_name/object_name`. Object versioning is not supported. See\n[Google Cloud Storage Request\nURIs](https://cloud.google.com/storage/docs/reference-uris) for more info.", @@ -990,147 +1092,18 @@ "type": "string" } }, - "id": "ImageSource" - }, - "Position": { - "description": "A 3D position in the image, used primarily for Face detection landmarks.\nA valid Position must have both x and y coordinates.\nThe position coordinates are in the same scale as the original image.", - "type": "object", - "properties": { - "x": { - "description": "X coordinate.", - "format": "float", - "type": "number" - }, - "z": { - "description": "Z coordinate (or depth).", - "format": "float", - "type": "number" - }, - "y": { - "description": "Y coordinate.", - "format": "float", - "type": "number" - } - }, - "id": "Position" - }, - "ColorInfo": { - "description": "Color information consists of RGB channels, score, and the fraction of\nthe image that the color occupies in the image.", - "type": "object", - "properties": { - "pixelFraction": { - "description": "The fraction of pixels the color occupies in the image.\nValue in range [0, 1].", - "format": "float", - "type": "number" - }, - "color": { - "$ref": "Color", - "description": "RGB components of the color." - }, - "score": { - "description": "Image-specific score for this color. Value in range [0, 1].", - "format": "float", - "type": "number" - } - }, - "id": "ColorInfo" - }, - "WebPage": { - "properties": { - "score": { - "description": "(Deprecated) Overall relevancy score for the web page.", - "format": "float", - "type": "number" - }, - "url": { - "description": "The result web page URL.", - "type": "string" - } - }, - "id": "WebPage", - "description": "Metadata for web pages.", "type": "object" }, - "EntityAnnotation": { - "description": "Set of detected entity features.", - "type": "object", - "properties": { - "mid": { - "description": "Opaque entity ID. Some IDs may be available in\n[Google Knowledge Graph Search\nAPI](https://developers.google.com/knowledge-graph/).", - "type": "string" - }, - "confidence": { - "description": "**Deprecated. Use `score` instead.**\nThe accuracy of the entity detection in an image.\nFor example, for an image in which the \"Eiffel Tower\" entity is detected,\nthis field represents the confidence that there is a tower in the query\nimage. Range [0, 1].", - "format": "float", - "type": "number" - }, - "locale": { - "description": "The language code for the locale in which the entity textual\n`description` is expressed.", - "type": "string" - }, - "boundingPoly": { - "$ref": "BoundingPoly", - "description": "Image region to which this entity belongs. Not produced\nfor `LABEL_DETECTION` features." - }, - "description": { - "description": "Entity textual description, expressed in its `locale` language.", - "type": "string" - }, - "topicality": { - "description": "The relevancy of the ICA (Image Content Annotation) label to the\nimage. For example, the relevancy of \"tower\" is likely higher to an image\ncontaining the detected \"Eiffel Tower\" than to an image containing a\ndetected distant towering building, even though the confidence that\nthere is a tower in each image may be the same. Range [0, 1].", - "format": "float", - "type": "number" - }, - "properties": { - "description": "Some entities may have optional user-supplied `Property` (name/value)\nfields, such a score or string that qualifies the entity.", - "type": "array", - "items": { - "$ref": "Property" - } - }, - "score": { - "description": "Overall score of the result. Range [0, 1].", - "format": "float", - "type": "number" - }, - "locations": { - "description": "The location information for the detected entity. Multiple\n`LocationInfo` elements can be present because one location may\nindicate the location of the scene in the image, and another location\nmay indicate the location of the place where the image was taken.\nLocation information is usually present for landmarks.", - "type": "array", - "items": { - "$ref": "LocationInfo" - } - } - }, - "id": "EntityAnnotation" - }, - "CropHint": { - "description": "Single crop hint that is used to generate a new crop when serving an image.", - "type": "object", - "properties": { - "confidence": { - "description": "Confidence of this being a salient region. Range [0, 1].", - "format": "float", - "type": "number" - }, - "importanceFraction": { - "description": "Fraction of importance of this salient region with respect to the original\nimage.", - "format": "float", - "type": "number" - }, - "boundingPoly": { - "description": "The bounding polygon for the crop region. The coordinates of the bounding\nbox are in the original image's scale, as returned in `ImageParams`.", - "$ref": "BoundingPoly" - } - }, - "id": "CropHint" - }, "Landmark": { + "description": "A face-specific landmark (for example, a face feature).", + "id": "Landmark", "properties": { "position": { - "description": "Face landmark position.", - "$ref": "Position" + "$ref": "Position", + "description": "Face landmark position." }, "type": { + "description": "Face landmark type.", "enum": [ "UNKNOWN_LANDMARK", "LEFT_EYE", @@ -1168,8 +1141,6 @@ "CHIN_LEFT_GONION", "CHIN_RIGHT_GONION" ], - "description": "Face landmark type.", - "type": "string", "enumDescriptions": [ "Unknown face landmark detected. Should not be filled.", "Left eye.", @@ -1206,150 +1177,596 @@ "Chin gnathion.", "Chin left gonion.", "Chin right gonion." - ] + ], + "type": "string" + } + }, + "type": "object" + }, + "LatLng": { + "description": "An object representing a latitude/longitude pair. This is expressed as a pair\nof doubles representing degrees latitude and degrees longitude. Unless\nspecified otherwise, this must conform to the\n\u003ca href=\"http://www.unoosa.org/pdf/icg/2012/template/WGS_84.pdf\"\u003eWGS84\nstandard\u003c/a\u003e. Values must be within normalized ranges.", + "id": "LatLng", + "properties": { + "latitude": { + "description": "The latitude in degrees. It must be in the range [-90.0, +90.0].", + "format": "double", + "type": "number" + }, + "longitude": { + "description": "The longitude in degrees. It must be in the range [-180.0, +180.0].", + "format": "double", + "type": "number" + } + }, + "type": "object" + }, + "LatLongRect": { + "description": "Rectangle determined by min and max `LatLng` pairs.", + "id": "LatLongRect", + "properties": { + "maxLatLng": { + "$ref": "LatLng", + "description": "Max lat/long pair." + }, + "minLatLng": { + "$ref": "LatLng", + "description": "Min lat/long pair." + } + }, + "type": "object" + }, + "ListOperationsResponse": { + "description": "The response message for Operations.ListOperations.", + "id": "ListOperationsResponse", + "properties": { + "nextPageToken": { + "description": "The standard List next-page token.", + "type": "string" + }, + "operations": { + "description": "A list of operations that matches the specified filter in the request.", + "items": { + "$ref": "Operation" + }, + "type": "array" + } + }, + "type": "object" + }, + "LocationInfo": { + "description": "Detected entity location information.", + "id": "LocationInfo", + "properties": { + "latLng": { + "$ref": "LatLng", + "description": "lat/long location coordinates." + } + }, + "type": "object" + }, + "Operation": { + "description": "This resource represents a long-running operation that is the result of a\nnetwork API call.", + "id": "Operation", + "properties": { + "done": { + "description": "If the value is `false`, it means the operation is still in progress.\nIf `true`, the operation is completed, and either `error` or `response` is\navailable.", + "type": "boolean" + }, + "error": { + "$ref": "Status", + "description": "The error result of the operation in case of failure or cancellation." + }, + "metadata": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "description": "Service-specific metadata associated with the operation. It typically\ncontains progress information and common metadata such as create time.\nSome services might not provide such metadata. Any method that returns a\nlong-running operation should document the metadata type, if any.", + "type": "object" + }, + "name": { + "description": "The server-assigned name, which is only unique within the same service that\noriginally returns it. If you use the default HTTP mapping, the\n`name` should have the format of `operations/some/unique/name`.", + "type": "string" + }, + "response": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "description": "The normal response of the operation in case of success. If the original\nmethod returns no data on success, such as `Delete`, the response is\n`google.protobuf.Empty`. If the original method is standard\n`Get`/`Create`/`Update`, the response should be the resource. For other\nmethods, the response should have the type `XxxResponse`, where `Xxx`\nis the original method name. For example, if the original method name\nis `TakeSnapshot()`, the inferred response type is\n`TakeSnapshotResponse`.", + "type": "object" + } + }, + "type": "object" + }, + "Page": { + "description": "Detected page from OCR.", + "id": "Page", + "properties": { + "blocks": { + "description": "List of blocks of text, images etc on this page.", + "items": { + "$ref": "Block" + }, + "type": "array" + }, + "confidence": { + "description": "Confidence of the OCR results on the page. Range [0, 1].", + "format": "float", + "type": "number" + }, + "height": { + "description": "Page height. For PDFs the unit is points. For images (including\nTIFFs) the unit is pixels.", + "format": "int32", + "type": "integer" + }, + "property": { + "$ref": "TextProperty", + "description": "Additional information detected on the page." + }, + "width": { + "description": "Page width. For PDFs the unit is points. For images (including\nTIFFs) the unit is pixels.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "Paragraph": { + "description": "Structural unit of text representing a number of words in certain order.", + "id": "Paragraph", + "properties": { + "boundingBox": { + "$ref": "BoundingPoly", + "description": "The bounding box for the paragraph.\nThe vertices are in the order of top-left, top-right, bottom-right,\nbottom-left. When a rotation of the bounding box is detected the rotation\nis represented as around the top-left corner as defined when the text is\nread in the 'natural' orientation.\nFor example:\n * when the text is horizontal it might look like:\n 0----1\n | |\n 3----2\n * when it's rotated 180 degrees around the top-left corner it becomes:\n 2----3\n | |\n 1----0\n and the vertice order will still be (0, 1, 2, 3)." + }, + "confidence": { + "description": "Confidence of the OCR results for the paragraph. Range [0, 1].", + "format": "float", + "type": "number" + }, + "property": { + "$ref": "TextProperty", + "description": "Additional information detected for the paragraph." + }, + "words": { + "description": "List of words in this paragraph.", + "items": { + "$ref": "Word" + }, + "type": "array" + } + }, + "type": "object" + }, + "Position": { + "description": "A 3D position in the image, used primarily for Face detection landmarks.\nA valid Position must have both x and y coordinates.\nThe position coordinates are in the same scale as the original image.", + "id": "Position", + "properties": { + "x": { + "description": "X coordinate.", + "format": "float", + "type": "number" + }, + "y": { + "description": "Y coordinate.", + "format": "float", + "type": "number" + }, + "z": { + "description": "Z coordinate (or depth).", + "format": "float", + "type": "number" + } + }, + "type": "object" + }, + "Property": { + "description": "A `Property` consists of a user-supplied name/value pair.", + "id": "Property", + "properties": { + "name": { + "description": "Name of the property.", + "type": "string" + }, + "uint64Value": { + "description": "Value of numeric properties.", + "format": "uint64", + "type": "string" + }, + "value": { + "description": "Value of the property.", + "type": "string" + } + }, + "type": "object" + }, + "SafeSearchAnnotation": { + "description": "Set of features pertaining to the image, computed by computer vision\nmethods over safe-search verticals (for example, adult, spoof, medical,\nviolence).", + "id": "SafeSearchAnnotation", + "properties": { + "adult": { + "description": "Represents the adult content likelihood for the image. Adult content may\ncontain elements such as nudity, pornographic images or cartoons, or\nsexual activities.", + "enum": [ + "UNKNOWN", + "VERY_UNLIKELY", + "UNLIKELY", + "POSSIBLE", + "LIKELY", + "VERY_LIKELY" + ], + "enumDescriptions": [ + "Unknown likelihood.", + "It is very unlikely that the image belongs to the specified vertical.", + "It is unlikely that the image belongs to the specified vertical.", + "It is possible that the image belongs to the specified vertical.", + "It is likely that the image belongs to the specified vertical.", + "It is very likely that the image belongs to the specified vertical." + ], + "type": "string" + }, + "medical": { + "description": "Likelihood that this is a medical image.", + "enum": [ + "UNKNOWN", + "VERY_UNLIKELY", + "UNLIKELY", + "POSSIBLE", + "LIKELY", + "VERY_LIKELY" + ], + "enumDescriptions": [ + "Unknown likelihood.", + "It is very unlikely that the image belongs to the specified vertical.", + "It is unlikely that the image belongs to the specified vertical.", + "It is possible that the image belongs to the specified vertical.", + "It is likely that the image belongs to the specified vertical.", + "It is very likely that the image belongs to the specified vertical." + ], + "type": "string" + }, + "racy": { + "description": "Likelihood that the request image contains racy content. Racy content may\ninclude (but is not limited to) skimpy or sheer clothing, strategically\ncovered nudity, lewd or provocative poses, or close-ups of sensitive\nbody areas.", + "enum": [ + "UNKNOWN", + "VERY_UNLIKELY", + "UNLIKELY", + "POSSIBLE", + "LIKELY", + "VERY_LIKELY" + ], + "enumDescriptions": [ + "Unknown likelihood.", + "It is very unlikely that the image belongs to the specified vertical.", + "It is unlikely that the image belongs to the specified vertical.", + "It is possible that the image belongs to the specified vertical.", + "It is likely that the image belongs to the specified vertical.", + "It is very likely that the image belongs to the specified vertical." + ], + "type": "string" + }, + "spoof": { + "description": "Spoof likelihood. The likelihood that an modification\nwas made to the image's canonical version to make it appear\nfunny or offensive.", + "enum": [ + "UNKNOWN", + "VERY_UNLIKELY", + "UNLIKELY", + "POSSIBLE", + "LIKELY", + "VERY_LIKELY" + ], + "enumDescriptions": [ + "Unknown likelihood.", + "It is very unlikely that the image belongs to the specified vertical.", + "It is unlikely that the image belongs to the specified vertical.", + "It is possible that the image belongs to the specified vertical.", + "It is likely that the image belongs to the specified vertical.", + "It is very likely that the image belongs to the specified vertical." + ], + "type": "string" + }, + "violence": { + "description": "Likelihood that this image contains violent content.", + "enum": [ + "UNKNOWN", + "VERY_UNLIKELY", + "UNLIKELY", + "POSSIBLE", + "LIKELY", + "VERY_LIKELY" + ], + "enumDescriptions": [ + "Unknown likelihood.", + "It is very unlikely that the image belongs to the specified vertical.", + "It is unlikely that the image belongs to the specified vertical.", + "It is possible that the image belongs to the specified vertical.", + "It is likely that the image belongs to the specified vertical.", + "It is very likely that the image belongs to the specified vertical." + ], + "type": "string" + } + }, + "type": "object" + }, + "Status": { + "description": "The `Status` type defines a logical error model that is suitable for different\nprogramming environments, including REST APIs and RPC APIs. It is used by\n[gRPC](https://github.com/grpc). The error model is designed to be:\n\n- Simple to use and understand for most users\n- Flexible enough to meet unexpected needs\n\n# Overview\n\nThe `Status` message contains three pieces of data: error code, error message,\nand error details. The error code should be an enum value of\ngoogle.rpc.Code, but it may accept additional error codes if needed. The\nerror message should be a developer-facing English message that helps\ndevelopers *understand* and *resolve* the error. If a localized user-facing\nerror message is needed, put the localized message in the error details or\nlocalize it in the client. The optional error details may contain arbitrary\ninformation about the error. There is a predefined set of error detail types\nin the package `google.rpc` that can be used for common error conditions.\n\n# Language mapping\n\nThe `Status` message is the logical representation of the error model, but it\nis not necessarily the actual wire format. When the `Status` message is\nexposed in different client libraries and different wire protocols, it can be\nmapped differently. For example, it will likely be mapped to some exceptions\nin Java, but more likely mapped to some error codes in C.\n\n# Other uses\n\nThe error model and the `Status` message can be used in a variety of\nenvironments, either with or without APIs, to provide a\nconsistent developer experience across different environments.\n\nExample uses of this error model include:\n\n- Partial errors. If a service needs to return partial errors to the client,\n it may embed the `Status` in the normal response to indicate the partial\n errors.\n\n- Workflow errors. A typical workflow has multiple steps. Each step may\n have a `Status` message for error reporting.\n\n- Batch operations. If a client uses batch request and batch response, the\n `Status` message should be used directly inside batch response, one for\n each error sub-response.\n\n- Asynchronous operations. If an API call embeds asynchronous operation\n results in its response, the status of those operations should be\n represented directly using the `Status` message.\n\n- Logging. If some API errors are stored in logs, the message `Status` could\n be used directly after any stripping needed for security/privacy reasons.", + "id": "Status", + "properties": { + "code": { + "description": "The status code, which should be an enum value of google.rpc.Code.", + "format": "int32", + "type": "integer" + }, + "details": { + "description": "A list of messages that carry the error details. There is a common set of\nmessage types for APIs to use.", + "items": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "A developer-facing error message, which should be in English. Any\nuser-facing error message should be localized and sent in the\ngoogle.rpc.Status.details field, or localized by the client.", + "type": "string" + } + }, + "type": "object" + }, + "Symbol": { + "description": "A single symbol representation.", + "id": "Symbol", + "properties": { + "boundingBox": { + "$ref": "BoundingPoly", + "description": "The bounding box for the symbol.\nThe vertices are in the order of top-left, top-right, bottom-right,\nbottom-left. When a rotation of the bounding box is detected the rotation\nis represented as around the top-left corner as defined when the text is\nread in the 'natural' orientation.\nFor example:\n * when the text is horizontal it might look like:\n 0----1\n | |\n 3----2\n * when it's rotated 180 degrees around the top-left corner it becomes:\n 2----3\n | |\n 1----0\n and the vertice order will still be (0, 1, 2, 3)." + }, + "confidence": { + "description": "Confidence of the OCR results for the symbol. Range [0, 1].", + "format": "float", + "type": "number" + }, + "property": { + "$ref": "TextProperty", + "description": "Additional information detected for the symbol." + }, + "text": { + "description": "The actual UTF-8 representation of the symbol.", + "type": "string" + } + }, + "type": "object" + }, + "TextAnnotation": { + "description": "TextAnnotation contains a structured representation of OCR extracted text.\nThe hierarchy of an OCR extracted text structure is like this:\n TextAnnotation -\u003e Page -\u003e Block -\u003e Paragraph -\u003e Word -\u003e Symbol\nEach structural component, starting from Page, may further have their own\nproperties. Properties describe detected languages, breaks etc.. Please refer\nto the TextAnnotation.TextProperty message definition below for more\ndetail.", + "id": "TextAnnotation", + "properties": { + "pages": { + "description": "List of pages detected by OCR.", + "items": { + "$ref": "Page" + }, + "type": "array" + }, + "text": { + "description": "UTF-8 text detected on the pages.", + "type": "string" + } + }, + "type": "object" + }, + "TextProperty": { + "description": "Additional information detected on the structural component.", + "id": "TextProperty", + "properties": { + "detectedBreak": { + "$ref": "DetectedBreak", + "description": "Detected start or end of a text segment." + }, + "detectedLanguages": { + "description": "A list of detected languages together with confidence.", + "items": { + "$ref": "DetectedLanguage" + }, + "type": "array" + } + }, + "type": "object" + }, + "Vertex": { + "description": "A vertex represents a 2D point in the image.\nNOTE: the vertex coordinates are in the same scale as the original image.", + "id": "Vertex", + "properties": { + "x": { + "description": "X coordinate.", + "format": "int32", + "type": "integer" + }, + "y": { + "description": "Y coordinate.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "WebDetection": { + "description": "Relevant information for the image from the Internet.", + "id": "WebDetection", + "properties": { + "bestGuessLabels": { + "description": "Best guess text labels for the request image.", + "items": { + "$ref": "WebLabel" + }, + "type": "array" + }, + "fullMatchingImages": { + "description": "Fully matching images from the Internet.\nCan include resized copies of the query image.", + "items": { + "$ref": "WebImage" + }, + "type": "array" + }, + "pagesWithMatchingImages": { + "description": "Web pages containing the matching images from the Internet.", + "items": { + "$ref": "WebPage" + }, + "type": "array" + }, + "partialMatchingImages": { + "description": "Partial matching images from the Internet.\nThose images are similar enough to share some key-point features. For\nexample an original image will likely have partial matching for its crops.", + "items": { + "$ref": "WebImage" + }, + "type": "array" + }, + "visuallySimilarImages": { + "description": "The visually similar image results.", + "items": { + "$ref": "WebImage" + }, + "type": "array" + }, + "webEntities": { + "description": "Deduced entities from similar images on the Internet.", + "items": { + "$ref": "WebEntity" + }, + "type": "array" + } + }, + "type": "object" + }, + "WebDetectionParams": { + "description": "Parameters for web detection request.", + "id": "WebDetectionParams", + "properties": { + "includeGeoResults": { + "description": "Whether to include results derived from the geo information in the image.", + "type": "boolean" + } + }, + "type": "object" + }, + "WebEntity": { + "description": "Entity deduced from similar images on the Internet.", + "id": "WebEntity", + "properties": { + "description": { + "description": "Canonical description of the entity, in English.", + "type": "string" + }, + "entityId": { + "description": "Opaque entity ID.", + "type": "string" + }, + "score": { + "description": "Overall relevancy score for the entity.\nNot normalized and not comparable across different image queries.", + "format": "float", + "type": "number" + } + }, + "type": "object" + }, + "WebImage": { + "description": "Metadata for online images.", + "id": "WebImage", + "properties": { + "score": { + "description": "(Deprecated) Overall relevancy score for the image.", + "format": "float", + "type": "number" + }, + "url": { + "description": "The result image URL.", + "type": "string" + } + }, + "type": "object" + }, + "WebLabel": { + "description": "Label to provide extra metadata for the web detection.", + "id": "WebLabel", + "properties": { + "label": { + "description": "Label for extra metadata.", + "type": "string" + }, + "languageCode": { + "description": "The BCP-47 language code for `label`, such as \"en-US\" or \"sr-Latn\".\nFor more information, see\nhttp://www.unicode.org/reports/tr35/#Unicode_locale_identifier.", + "type": "string" + } + }, + "type": "object" + }, + "WebPage": { + "description": "Metadata for web pages.", + "id": "WebPage", + "properties": { + "fullMatchingImages": { + "description": "Fully matching images on the page.\nCan include resized copies of the query image.", + "items": { + "$ref": "WebImage" + }, + "type": "array" + }, + "pageTitle": { + "description": "Title for the web page, may contain HTML markups.", + "type": "string" + }, + "partialMatchingImages": { + "description": "Partial matching images on the page.\nThose images are similar enough to share some key-point features. For\nexample an original image will likely have partial matching for its\ncrops.", + "items": { + "$ref": "WebImage" + }, + "type": "array" + }, + "score": { + "description": "(Deprecated) Overall relevancy score for the web page.", + "format": "float", + "type": "number" + }, + "url": { + "description": "The result web page URL.", + "type": "string" + } + }, + "type": "object" + }, + "Word": { + "description": "A word representation.", + "id": "Word", + "properties": { + "boundingBox": { + "$ref": "BoundingPoly", + "description": "The bounding box for the word.\nThe vertices are in the order of top-left, top-right, bottom-right,\nbottom-left. When a rotation of the bounding box is detected the rotation\nis represented as around the top-left corner as defined when the text is\nread in the 'natural' orientation.\nFor example:\n * when the text is horizontal it might look like:\n 0----1\n | |\n 3----2\n * when it's rotated 180 degrees around the top-left corner it becomes:\n 2----3\n | |\n 1----0\n and the vertice order will still be (0, 1, 2, 3)." + }, + "confidence": { + "description": "Confidence of the OCR results for the word. Range [0, 1].", + "format": "float", + "type": "number" + }, + "property": { + "$ref": "TextProperty", + "description": "Additional information detected for the word." + }, + "symbols": { + "description": "List of symbols in the word.\nThe order of the symbols follows the natural reading order.", + "items": { + "$ref": "Symbol" + }, + "type": "array" } }, - "id": "Landmark", - "description": "A face-specific landmark (for example, a face feature).", "type": "object" } }, - "protocol": "rest", - "icons": { - "x16": "http://www.google.com/images/icons/product/search-16.gif", - "x32": "http://www.google.com/images/icons/product/search-32.gif" - }, - "canonicalName": "Vision", - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/cloud-vision": { - "description": "Apply machine learning models to understand and label images" - }, - "https://www.googleapis.com/auth/cloud-platform": { - "description": "View and manage your data across Google Cloud Platform services" - } - } - } - }, - "rootUrl": "https://vision.googleapis.com/", - "ownerDomain": "google.com", - "name": "vision", - "batchPath": "batch", - "fullyEncodeReservedExpansion": true, - "title": "Google Cloud Vision API", - "ownerName": "Google", - "resources": { - "images": { - "methods": { - "annotate": { - "request": { - "$ref": "BatchAnnotateImagesRequest" - }, - "description": "Run image detection and annotation for a batch of images.", - "httpMethod": "POST", - "parameterOrder": [], - "response": { - "$ref": "BatchAnnotateImagesResponse" - }, - "parameters": {}, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-vision" - ], - "flatPath": "v1/images:annotate", - "id": "vision.images.annotate", - "path": "v1/images:annotate" - } - } - } - }, - "parameters": { - "pp": { - "location": "query", - "description": "Pretty-print response.", - "type": "boolean", - "default": "true" - }, - "oauth_token": { - "location": "query", - "description": "OAuth 2.0 token for the current user.", - "type": "string" - }, - "bearer_token": { - "location": "query", - "description": "OAuth bearer token.", - "type": "string" - }, - "upload_protocol": { - "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", - "type": "string", - "location": "query" - }, - "prettyPrint": { - "location": "query", - "description": "Returns response with indentations and line breaks.", - "type": "boolean", - "default": "true" - }, - "uploadType": { - "location": "query", - "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", - "type": "string" - }, - "fields": { - "description": "Selector specifying which fields to include in a partial response.", - "type": "string", - "location": "query" - }, - "$.xgafv": { - "description": "V1 error format.", - "type": "string", - "enumDescriptions": [ - "v1 error format", - "v2 error format" - ], - "location": "query", - "enum": [ - "1", - "2" - ] - }, - "callback": { - "location": "query", - "description": "JSONP", - "type": "string" - }, - "alt": { - "enum": [ - "json", - "media", - "proto" - ], - "type": "string", - "enumDescriptions": [ - "Responses with Content-Type of application/json", - "Media download with context-dependent Content-Type", - "Responses with Content-Type of application/x-protobuf" - ], - "location": "query", - "description": "Data format for response.", - "default": "json" - }, - "access_token": { - "location": "query", - "description": "OAuth access token.", - "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.", - "type": "string", - "location": "query" - }, - "quotaUser": { - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", - "type": "string", - "location": "query" - } - } -} + "servicePath": "", + "title": "Cloud Vision API", + "version": "v1", + "version_module": true +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/vision/v1/vision-gen.go b/vendor/google.golang.org/api/vision/v1/vision-gen.go index f5e5ee2d5..45041b4a0 100644 --- a/vendor/google.golang.org/api/vision/v1/vision-gen.go +++ b/vendor/google.golang.org/api/vision/v1/vision-gen.go @@ -1,4 +1,4 @@ -// Package vision provides access to the Google Cloud Vision API. +// Package vision provides access to the Cloud Vision API. // // See https://cloud.google.com/vision/ // @@ -60,6 +60,8 @@ func New(client *http.Client) (*Service, error) { } s := &Service{client: client, BasePath: basePath} s.Images = NewImagesService(s) + s.Locations = NewLocationsService(s) + s.Operations = NewOperationsService(s) return s, nil } @@ -69,6 +71,10 @@ type Service struct { UserAgent string // optional additional User-Agent fragment Images *ImagesService + + Locations *LocationsService + + Operations *OperationsService } func (s *Service) userAgent() string { @@ -87,6 +93,36 @@ type ImagesService struct { s *Service } +func NewLocationsService(s *Service) *LocationsService { + rs := &LocationsService{s: s} + rs.Operations = NewLocationsOperationsService(s) + return rs +} + +type LocationsService struct { + s *Service + + Operations *LocationsOperationsService +} + +func NewLocationsOperationsService(s *Service) *LocationsOperationsService { + rs := &LocationsOperationsService{s: s} + return rs +} + +type LocationsOperationsService struct { + s *Service +} + +func NewOperationsService(s *Service) *OperationsService { + rs := &OperationsService{s: s} + return rs +} + +type OperationsService struct { + s *Service +} + // AnnotateImageRequest: Request for performing Google Cloud Vision API // tasks over a user-provided // image, with user-requested features. @@ -299,6 +335,9 @@ type Block struct { // and the vertice order will still be (0, 1, 2, 3). BoundingBox *BoundingPoly `json:"boundingBox,omitempty"` + // Confidence: Confidence of the OCR results on the block. Range [0, 1]. + Confidence float64 `json:"confidence,omitempty"` + // Paragraphs: List of paragraphs in this block (if this blocks is of // type text). Paragraphs []*Paragraph `json:"paragraphs,omitempty"` @@ -329,6 +368,20 @@ func (s *Block) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +func (s *Block) UnmarshalJSON(data []byte) error { + type NoMethod Block + var s1 struct { + Confidence gensupport.JSONFloat64 `json:"confidence"` + *NoMethod + } + s1.NoMethod = (*NoMethod)(s) + if err := json.Unmarshal(data, &s1); err != nil { + return err + } + s.Confidence = float64(s1.Confidence) + return nil +} + // BoundingPoly: A bounding polygon for the detected image annotation. type BoundingPoly struct { // Vertices: The bounding polygon vertices. @@ -357,6 +410,11 @@ func (s *BoundingPoly) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// CancelOperationRequest: The request message for +// Operations.CancelOperation. +type CancelOperationRequest struct { +} + // Color: Represents a color in the RGBA color space. This // representation is designed // for simplicity of conversion to/from color representations in @@ -851,6 +909,24 @@ func (s *DominantColorsAnnotation) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// Empty: A generic empty message that you can re-use to avoid defining +// duplicated +// empty messages in your APIs. A typical example is to use it as the +// request +// or the response type of an API method. For instance: +// +// service Foo { +// rpc Bar(google.protobuf.Empty) returns +// (google.protobuf.Empty); +// } +// +// The JSON representation for `Empty` is empty JSON object `{}`. +type Empty struct { + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` +} + // EntityAnnotation: Set of detected entity features. type EntityAnnotation struct { // BoundingPoly: Image region to which this entity belongs. Not @@ -1178,6 +1254,12 @@ type Feature struct { // `TEXT_DETECTION`, `DOCUMENT_TEXT_DETECTION`, or `CROP_HINTS`. MaxResults int64 `json:"maxResults,omitempty"` + // Model: Model to use for the feature. + // Supported values: "builtin/stable" (the default if unset) + // and + // "builtin/latest". + Model string `json:"model,omitempty"` + // Type: The feature type. // // Possible values: @@ -1227,6 +1309,205 @@ func (s *Feature) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// GoogleCloudVisionV1p2beta1AsyncAnnotateFileResponse: The response for +// a single offline file annotation request. +type GoogleCloudVisionV1p2beta1AsyncAnnotateFileResponse struct { + // OutputConfig: The output location and metadata from + // AsyncAnnotateFileRequest. + OutputConfig *GoogleCloudVisionV1p2beta1OutputConfig `json:"outputConfig,omitempty"` + + // ForceSendFields is a list of field names (e.g. "OutputConfig") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "OutputConfig") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudVisionV1p2beta1AsyncAnnotateFileResponse) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudVisionV1p2beta1AsyncAnnotateFileResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudVisionV1p2beta1AsyncBatchAnnotateFilesResponse: Response +// to an async batch file annotation request. +type GoogleCloudVisionV1p2beta1AsyncBatchAnnotateFilesResponse struct { + // Responses: The list of file annotation responses, one for each + // request in + // AsyncBatchAnnotateFilesRequest. + Responses []*GoogleCloudVisionV1p2beta1AsyncAnnotateFileResponse `json:"responses,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Responses") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Responses") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudVisionV1p2beta1AsyncBatchAnnotateFilesResponse) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudVisionV1p2beta1AsyncBatchAnnotateFilesResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudVisionV1p2beta1GcsDestination: The Google Cloud Storage +// location where the output will be written to. +type GoogleCloudVisionV1p2beta1GcsDestination struct { + // Uri: Google Cloud Storage URI where the results will be stored. + // Results will + // be in JSON format and preceded by its corresponding input URI. This + // field + // can either represent a single file, or a prefix for multiple + // outputs. + // Prefixes must end in a `/`. + // + // Examples: + // + // * File: gs://bucket-name/filename.json + // * Prefix: gs://bucket-name/prefix/here/ + // * File: gs://bucket-name/prefix/here + // + // If multiple outputs, each response is still AnnotateFileResponse, + // each of + // which contains some subset of the full list of + // AnnotateImageResponse. + // Multiple outputs can happen if, for example, the output JSON is too + // large + // and overflows into multiple sharded files. + Uri string `json:"uri,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Uri") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Uri") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudVisionV1p2beta1GcsDestination) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudVisionV1p2beta1GcsDestination + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudVisionV1p2beta1OperationMetadata: Contains metadata for +// the BatchAnnotateImages operation. +type GoogleCloudVisionV1p2beta1OperationMetadata struct { + // CreateTime: The time when the batch request was received. + CreateTime string `json:"createTime,omitempty"` + + // State: Current state of the batch operation. + // + // Possible values: + // "STATE_UNSPECIFIED" - Invalid. + // "CREATED" - Request is received. + // "RUNNING" - Request is actively being processed. + // "DONE" - The batch processing is done. + // "CANCELLED" - The batch processing was cancelled. + State string `json:"state,omitempty"` + + // UpdateTime: The time when the operation result was last updated. + UpdateTime string `json:"updateTime,omitempty"` + + // ForceSendFields is a list of field names (e.g. "CreateTime") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "CreateTime") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudVisionV1p2beta1OperationMetadata) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudVisionV1p2beta1OperationMetadata + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudVisionV1p2beta1OutputConfig: The desired output location +// and metadata. +type GoogleCloudVisionV1p2beta1OutputConfig struct { + // BatchSize: The max number of response protos to put into each output + // JSON file on GCS. + // The valid range is [1, 100]. If not specified, the default value is + // 20. + // + // For example, for one pdf file with 100 pages, 100 response protos + // will + // be generated. If `batch_size` = 20, then 5 json files each + // containing 20 response protos will be written under the + // prefix + // `gcs_destination`.`uri`. + // + // Currently, batch_size only applies to GcsDestination, with potential + // future + // support for other output configurations. + BatchSize int64 `json:"batchSize,omitempty"` + + // GcsDestination: The Google Cloud Storage location to write the + // output(s) to. + GcsDestination *GoogleCloudVisionV1p2beta1GcsDestination `json:"gcsDestination,omitempty"` + + // ForceSendFields is a list of field names (e.g. "BatchSize") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "BatchSize") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudVisionV1p2beta1OutputConfig) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudVisionV1p2beta1OutputConfig + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // Image: Client image to perform Google Cloud Vision API tasks over. type Image struct { // Content: Image content, represented as a stream of bytes. @@ -1287,10 +1568,12 @@ type ImageContext struct { // [supported languages](/vision/docs/languages). LanguageHints []string `json:"languageHints,omitempty"` - // LatLongRect: lat/long rectangle that specifies the location of the - // image. + // LatLongRect: Not used. LatLongRect *LatLongRect `json:"latLongRect,omitempty"` + // WebDetectionParams: Parameters for web detection. + WebDetectionParams *WebDetectionParams `json:"webDetectionParams,omitempty"` + // ForceSendFields is a list of field names (e.g. "CropHintsParams") to // unconditionally include in API requests. By default, fields with // empty values are omitted from API requests. However, any non-pointer, @@ -1565,6 +1848,43 @@ func (s *LatLongRect) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// ListOperationsResponse: The response message for +// Operations.ListOperations. +type ListOperationsResponse struct { + // NextPageToken: The standard List next-page token. + NextPageToken string `json:"nextPageToken,omitempty"` + + // Operations: A list of operations that matches the specified filter in + // the request. + Operations []*Operation `json:"operations,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "NextPageToken") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "NextPageToken") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *ListOperationsResponse) MarshalJSON() ([]byte, error) { + type NoMethod ListOperationsResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // LocationInfo: Detected entity location information. type LocationInfo struct { // LatLng: lat/long location coordinates. @@ -1593,18 +1913,100 @@ func (s *LocationInfo) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// Operation: This resource represents a long-running operation that is +// the result of a +// network API call. +type Operation struct { + // Done: If the value is `false`, it means the operation is still in + // progress. + // If `true`, the operation is completed, and either `error` or + // `response` is + // available. + Done bool `json:"done,omitempty"` + + // Error: The error result of the operation in case of failure or + // cancellation. + Error *Status `json:"error,omitempty"` + + // Metadata: Service-specific metadata associated with the operation. + // It typically + // contains progress information and common metadata such as create + // time. + // Some services might not provide such metadata. Any method that + // returns a + // long-running operation should document the metadata type, if any. + Metadata googleapi.RawMessage `json:"metadata,omitempty"` + + // Name: The server-assigned name, which is only unique within the same + // service that + // originally returns it. If you use the default HTTP mapping, + // the + // `name` should have the format of `operations/some/unique/name`. + Name string `json:"name,omitempty"` + + // Response: The normal response of the operation in case of success. + // If the original + // method returns no data on success, such as `Delete`, the response + // is + // `google.protobuf.Empty`. If the original method is + // standard + // `Get`/`Create`/`Update`, the response should be the resource. For + // other + // methods, the response should have the type `XxxResponse`, where + // `Xxx` + // is the original method name. For example, if the original method + // name + // is `TakeSnapshot()`, the inferred response type + // is + // `TakeSnapshotResponse`. + Response googleapi.RawMessage `json:"response,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "Done") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Done") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *Operation) MarshalJSON() ([]byte, error) { + type NoMethod Operation + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // Page: Detected page from OCR. type Page struct { // Blocks: List of blocks of text, images etc on this page. Blocks []*Block `json:"blocks,omitempty"` - // Height: Page height in pixels. + // Confidence: Confidence of the OCR results on the page. Range [0, 1]. + Confidence float64 `json:"confidence,omitempty"` + + // Height: Page height. For PDFs the unit is points. For images + // (including + // TIFFs) the unit is pixels. Height int64 `json:"height,omitempty"` // Property: Additional information detected on the page. Property *TextProperty `json:"property,omitempty"` - // Width: Page width in pixels. + // Width: Page width. For PDFs the unit is points. For images + // (including + // TIFFs) the unit is pixels. Width int64 `json:"width,omitempty"` // ForceSendFields is a list of field names (e.g. "Blocks") to @@ -1630,6 +2032,20 @@ func (s *Page) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +func (s *Page) UnmarshalJSON(data []byte) error { + type NoMethod Page + var s1 struct { + Confidence gensupport.JSONFloat64 `json:"confidence"` + *NoMethod + } + s1.NoMethod = (*NoMethod)(s) + if err := json.Unmarshal(data, &s1); err != nil { + return err + } + s.Confidence = float64(s1.Confidence) + return nil +} + // Paragraph: Structural unit of text representing a number of words in // certain order. type Paragraph struct { @@ -1654,6 +2070,10 @@ type Paragraph struct { // and the vertice order will still be (0, 1, 2, 3). BoundingBox *BoundingPoly `json:"boundingBox,omitempty"` + // Confidence: Confidence of the OCR results for the paragraph. Range + // [0, 1]. + Confidence float64 `json:"confidence,omitempty"` + // Property: Additional information detected for the paragraph. Property *TextProperty `json:"property,omitempty"` @@ -1683,6 +2103,20 @@ func (s *Paragraph) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +func (s *Paragraph) UnmarshalJSON(data []byte) error { + type NoMethod Paragraph + var s1 struct { + Confidence gensupport.JSONFloat64 `json:"confidence"` + *NoMethod + } + s1.NoMethod = (*NoMethod)(s) + if err := json.Unmarshal(data, &s1); err != nil { + return err + } + s.Confidence = float64(s1.Confidence) + return nil +} + // Position: A 3D position in the image, used primarily for Face // detection landmarks. // A valid Position must have both x and y coordinates. @@ -1814,6 +2248,28 @@ type SafeSearchAnnotation struct { // specified vertical. Medical string `json:"medical,omitempty"` + // Racy: Likelihood that the request image contains racy content. Racy + // content may + // include (but is not limited to) skimpy or sheer clothing, + // strategically + // covered nudity, lewd or provocative poses, or close-ups of + // sensitive + // body areas. + // + // Possible values: + // "UNKNOWN" - Unknown likelihood. + // "VERY_UNLIKELY" - It is very unlikely that the image belongs to the + // specified vertical. + // "UNLIKELY" - It is unlikely that the image belongs to the specified + // vertical. + // "POSSIBLE" - It is possible that the image belongs to the specified + // vertical. + // "LIKELY" - It is likely that the image belongs to the specified + // vertical. + // "VERY_LIKELY" - It is very likely that the image belongs to the + // specified vertical. + Racy string `json:"racy,omitempty"` + // Spoof: Spoof likelihood. The likelihood that an modification // was made to the image's canonical version to make it appear // funny or offensive. @@ -2013,6 +2469,10 @@ type Symbol struct { // and the vertice order will still be (0, 1, 2, 3). BoundingBox *BoundingPoly `json:"boundingBox,omitempty"` + // Confidence: Confidence of the OCR results for the symbol. Range [0, + // 1]. + Confidence float64 `json:"confidence,omitempty"` + // Property: Additional information detected for the symbol. Property *TextProperty `json:"property,omitempty"` @@ -2042,6 +2502,20 @@ func (s *Symbol) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +func (s *Symbol) UnmarshalJSON(data []byte) error { + type NoMethod Symbol + var s1 struct { + Confidence gensupport.JSONFloat64 `json:"confidence"` + *NoMethod + } + s1.NoMethod = (*NoMethod)(s) + if err := json.Unmarshal(data, &s1); err != nil { + return err + } + s.Confidence = float64(s1.Confidence) + return nil +} + // TextAnnotation: TextAnnotation contains a structured representation // of OCR extracted text. // The hierarchy of an OCR extracted text structure is like this: @@ -2152,6 +2626,9 @@ func (s *Vertex) MarshalJSON() ([]byte, error) { // WebDetection: Relevant information for the image from the Internet. type WebDetection struct { + // BestGuessLabels: Best guess text labels for the request image. + BestGuessLabels []*WebLabel `json:"bestGuessLabels,omitempty"` + // FullMatchingImages: Fully matching images from the Internet. // Can include resized copies of the query image. FullMatchingImages []*WebImage `json:"fullMatchingImages,omitempty"` @@ -2174,15 +2651,15 @@ type WebDetection struct { // WebEntities: Deduced entities from similar images on the Internet. WebEntities []*WebEntity `json:"webEntities,omitempty"` - // ForceSendFields is a list of field names (e.g. "FullMatchingImages") - // to unconditionally include in API requests. By default, fields with + // ForceSendFields is a list of field names (e.g. "BestGuessLabels") to + // unconditionally include in API requests. By default, fields with // empty values are omitted from API requests. However, any non-pointer, // non-interface field appearing in ForceSendFields will be sent to the // server regardless of whether the field is empty or not. This may be // used to include empty fields in Patch requests. ForceSendFields []string `json:"-"` - // NullFields is a list of field names (e.g. "FullMatchingImages") to + // NullFields is a list of field names (e.g. "BestGuessLabels") to // include in API requests with the JSON null value. By default, fields // with empty values are omitted from API requests. However, any field // with an empty value appearing in NullFields will be sent to the @@ -2198,6 +2675,36 @@ func (s *WebDetection) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// WebDetectionParams: Parameters for web detection request. +type WebDetectionParams struct { + // IncludeGeoResults: Whether to include results derived from the geo + // information in the image. + IncludeGeoResults bool `json:"includeGeoResults,omitempty"` + + // ForceSendFields is a list of field names (e.g. "IncludeGeoResults") + // to unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "IncludeGeoResults") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *WebDetectionParams) MarshalJSON() ([]byte, error) { + type NoMethod WebDetectionParams + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // WebEntity: Entity deduced from similar images on the Internet. type WebEntity struct { // Description: Canonical description of the entity, in English. @@ -2292,15 +2799,19 @@ func (s *WebImage) UnmarshalJSON(data []byte) error { return nil } -// WebPage: Metadata for web pages. -type WebPage struct { - // Score: (Deprecated) Overall relevancy score for the web page. - Score float64 `json:"score,omitempty"` +// WebLabel: Label to provide extra metadata for the web detection. +type WebLabel struct { + // Label: Label for extra metadata. + Label string `json:"label,omitempty"` - // Url: The result web page URL. - Url string `json:"url,omitempty"` + // LanguageCode: The BCP-47 language code for `label`, such as "en-US" + // or "sr-Latn". + // For more information, + // see + // http://www.unicode.org/reports/tr35/#Unicode_locale_identifier. + LanguageCode string `json:"languageCode,omitempty"` - // ForceSendFields is a list of field names (e.g. "Score") to + // ForceSendFields is a list of field names (e.g. "Label") to // unconditionally include in API requests. By default, fields with // empty values are omitted from API requests. However, any non-pointer, // non-interface field appearing in ForceSendFields will be sent to the @@ -2308,7 +2819,7 @@ type WebPage struct { // used to include empty fields in Patch requests. ForceSendFields []string `json:"-"` - // NullFields is a list of field names (e.g. "Score") to include in API + // NullFields is a list of field names (e.g. "Label") to include in API // requests with the JSON null value. By default, fields with empty // values are omitted from API requests. However, any field with an // empty value appearing in NullFields will be sent to the server as @@ -2317,6 +2828,53 @@ type WebPage struct { NullFields []string `json:"-"` } +func (s *WebLabel) MarshalJSON() ([]byte, error) { + type NoMethod WebLabel + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// WebPage: Metadata for web pages. +type WebPage struct { + // FullMatchingImages: Fully matching images on the page. + // Can include resized copies of the query image. + FullMatchingImages []*WebImage `json:"fullMatchingImages,omitempty"` + + // PageTitle: Title for the web page, may contain HTML markups. + PageTitle string `json:"pageTitle,omitempty"` + + // PartialMatchingImages: Partial matching images on the page. + // Those images are similar enough to share some key-point features. + // For + // example an original image will likely have partial matching for + // its + // crops. + PartialMatchingImages []*WebImage `json:"partialMatchingImages,omitempty"` + + // Score: (Deprecated) Overall relevancy score for the web page. + Score float64 `json:"score,omitempty"` + + // Url: The result web page URL. + Url string `json:"url,omitempty"` + + // ForceSendFields is a list of field names (e.g. "FullMatchingImages") + // to unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "FullMatchingImages") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + func (s *WebPage) MarshalJSON() ([]byte, error) { type NoMethod WebPage raw := NoMethod(*s) @@ -2360,6 +2918,9 @@ type Word struct { // and the vertice order will still be (0, 1, 2, 3). BoundingBox *BoundingPoly `json:"boundingBox,omitempty"` + // Confidence: Confidence of the OCR results for the word. Range [0, 1]. + Confidence float64 `json:"confidence,omitempty"` + // Property: Additional information detected for the word. Property *TextProperty `json:"property,omitempty"` @@ -2390,6 +2951,20 @@ func (s *Word) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +func (s *Word) UnmarshalJSON(data []byte) error { + type NoMethod Word + var s1 struct { + Confidence gensupport.JSONFloat64 `json:"confidence"` + *NoMethod + } + s1.NoMethod = (*NoMethod)(s) + if err := json.Unmarshal(data, &s1); err != nil { + return err + } + s.Confidence = float64(s1.Confidence) + return nil +} + // method id "vision.images.annotate": type ImagesAnnotateCall struct { @@ -2510,3 +3085,790 @@ func (c *ImagesAnnotateCall) Do(opts ...googleapi.CallOption) (*BatchAnnotateIma // } } + +// method id "vision.locations.operations.get": + +type LocationsOperationsGetCall struct { + s *Service + name string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// Get: Gets the latest state of a long-running operation. Clients can +// use this +// method to poll the operation result at intervals as recommended by +// the API +// service. +func (r *LocationsOperationsService) Get(name string) *LocationsOperationsGetCall { + c := &LocationsOperationsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *LocationsOperationsGetCall) Fields(s ...googleapi.Field) *LocationsOperationsGetCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// IfNoneMatch sets the optional parameter which makes the operation +// fail if the object's ETag matches the given value. This is useful for +// getting updates only after the object has changed since the last +// request. Use googleapi.IsNotModified to check whether the response +// error from Do is the result of In-None-Match. +func (c *LocationsOperationsGetCall) IfNoneMatch(entityTag string) *LocationsOperationsGetCall { + c.ifNoneMatch_ = entityTag + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *LocationsOperationsGetCall) Context(ctx context.Context) *LocationsOperationsGetCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *LocationsOperationsGetCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *LocationsOperationsGetCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + if c.ifNoneMatch_ != "" { + reqHeaders.Set("If-None-Match", c.ifNoneMatch_) + } + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("GET", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "vision.locations.operations.get" call. +// Exactly one of *Operation or error will be non-nil. Any non-2xx +// status code is an error. Response headers are in either +// *Operation.ServerResponse.Header or (if a response was returned at +// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified +// to check whether the returned error was because +// http.StatusNotModified was returned. +func (c *LocationsOperationsGetCall) Do(opts ...googleapi.CallOption) (*Operation, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &Operation{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Gets the latest state of a long-running operation. Clients can use this\nmethod to poll the operation result at intervals as recommended by the API\nservice.", + // "flatPath": "v1/locations/{locationsId}/operations/{operationsId}", + // "httpMethod": "GET", + // "id": "vision.locations.operations.get", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "The name of the operation resource.", + // "location": "path", + // "pattern": "^locations/[^/]+/operations/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1/{+name}", + // "response": { + // "$ref": "Operation" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform", + // "https://www.googleapis.com/auth/cloud-vision" + // ] + // } + +} + +// method id "vision.operations.cancel": + +type OperationsCancelCall struct { + s *Service + name string + canceloperationrequest *CancelOperationRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Cancel: Starts asynchronous cancellation on a long-running operation. +// The server +// makes a best effort to cancel the operation, but success is +// not +// guaranteed. If the server doesn't support this method, it +// returns +// `google.rpc.Code.UNIMPLEMENTED`. Clients can +// use +// Operations.GetOperation or +// other methods to check whether the cancellation succeeded or whether +// the +// operation completed despite cancellation. On successful +// cancellation, +// the operation is not deleted; instead, it becomes an operation +// with +// an Operation.error value with a google.rpc.Status.code of +// 1, +// corresponding to `Code.CANCELLED`. +func (r *OperationsService) Cancel(name string, canceloperationrequest *CancelOperationRequest) *OperationsCancelCall { + c := &OperationsCancelCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + c.canceloperationrequest = canceloperationrequest + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *OperationsCancelCall) Fields(s ...googleapi.Field) *OperationsCancelCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *OperationsCancelCall) Context(ctx context.Context) *OperationsCancelCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *OperationsCancelCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *OperationsCancelCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.canceloperationrequest) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}:cancel") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("POST", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "vision.operations.cancel" call. +// Exactly one of *Empty or error will be non-nil. Any non-2xx status +// code is an error. Response headers are in either +// *Empty.ServerResponse.Header or (if a response was returned at all) +// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to +// check whether the returned error was because http.StatusNotModified +// was returned. +func (c *OperationsCancelCall) Do(opts ...googleapi.CallOption) (*Empty, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &Empty{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Starts asynchronous cancellation on a long-running operation. The server\nmakes a best effort to cancel the operation, but success is not\nguaranteed. If the server doesn't support this method, it returns\n`google.rpc.Code.UNIMPLEMENTED`. Clients can use\nOperations.GetOperation or\nother methods to check whether the cancellation succeeded or whether the\noperation completed despite cancellation. On successful cancellation,\nthe operation is not deleted; instead, it becomes an operation with\nan Operation.error value with a google.rpc.Status.code of 1,\ncorresponding to `Code.CANCELLED`.", + // "flatPath": "v1/operations/{operationsId}:cancel", + // "httpMethod": "POST", + // "id": "vision.operations.cancel", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "The name of the operation resource to be cancelled.", + // "location": "path", + // "pattern": "^operations/.+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1/{+name}:cancel", + // "request": { + // "$ref": "CancelOperationRequest" + // }, + // "response": { + // "$ref": "Empty" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform", + // "https://www.googleapis.com/auth/cloud-vision" + // ] + // } + +} + +// method id "vision.operations.delete": + +type OperationsDeleteCall struct { + s *Service + name string + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Delete: Deletes a long-running operation. This method indicates that +// the client is +// no longer interested in the operation result. It does not cancel +// the +// operation. If the server doesn't support this method, it +// returns +// `google.rpc.Code.UNIMPLEMENTED`. +func (r *OperationsService) Delete(name string) *OperationsDeleteCall { + c := &OperationsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *OperationsDeleteCall) Fields(s ...googleapi.Field) *OperationsDeleteCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *OperationsDeleteCall) Context(ctx context.Context) *OperationsDeleteCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *OperationsDeleteCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *OperationsDeleteCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("DELETE", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "vision.operations.delete" call. +// Exactly one of *Empty or error will be non-nil. Any non-2xx status +// code is an error. Response headers are in either +// *Empty.ServerResponse.Header or (if a response was returned at all) +// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to +// check whether the returned error was because http.StatusNotModified +// was returned. +func (c *OperationsDeleteCall) Do(opts ...googleapi.CallOption) (*Empty, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &Empty{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Deletes a long-running operation. This method indicates that the client is\nno longer interested in the operation result. It does not cancel the\noperation. If the server doesn't support this method, it returns\n`google.rpc.Code.UNIMPLEMENTED`.", + // "flatPath": "v1/operations/{operationsId}", + // "httpMethod": "DELETE", + // "id": "vision.operations.delete", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "The name of the operation resource to be deleted.", + // "location": "path", + // "pattern": "^operations/.+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1/{+name}", + // "response": { + // "$ref": "Empty" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform", + // "https://www.googleapis.com/auth/cloud-vision" + // ] + // } + +} + +// method id "vision.operations.get": + +type OperationsGetCall struct { + s *Service + name string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// Get: Gets the latest state of a long-running operation. Clients can +// use this +// method to poll the operation result at intervals as recommended by +// the API +// service. +func (r *OperationsService) Get(name string) *OperationsGetCall { + c := &OperationsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *OperationsGetCall) Fields(s ...googleapi.Field) *OperationsGetCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// IfNoneMatch sets the optional parameter which makes the operation +// fail if the object's ETag matches the given value. This is useful for +// getting updates only after the object has changed since the last +// request. Use googleapi.IsNotModified to check whether the response +// error from Do is the result of In-None-Match. +func (c *OperationsGetCall) IfNoneMatch(entityTag string) *OperationsGetCall { + c.ifNoneMatch_ = entityTag + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *OperationsGetCall) Context(ctx context.Context) *OperationsGetCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *OperationsGetCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *OperationsGetCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + if c.ifNoneMatch_ != "" { + reqHeaders.Set("If-None-Match", c.ifNoneMatch_) + } + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("GET", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "vision.operations.get" call. +// Exactly one of *Operation or error will be non-nil. Any non-2xx +// status code is an error. Response headers are in either +// *Operation.ServerResponse.Header or (if a response was returned at +// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified +// to check whether the returned error was because +// http.StatusNotModified was returned. +func (c *OperationsGetCall) Do(opts ...googleapi.CallOption) (*Operation, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &Operation{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Gets the latest state of a long-running operation. Clients can use this\nmethod to poll the operation result at intervals as recommended by the API\nservice.", + // "flatPath": "v1/operations/{operationsId}", + // "httpMethod": "GET", + // "id": "vision.operations.get", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "The name of the operation resource.", + // "location": "path", + // "pattern": "^operations/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1/{+name}", + // "response": { + // "$ref": "Operation" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform", + // "https://www.googleapis.com/auth/cloud-vision" + // ] + // } + +} + +// method id "vision.operations.list": + +type OperationsListCall struct { + s *Service + name string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// List: Lists operations that match the specified filter in the +// request. If the +// server doesn't support this method, it returns +// `UNIMPLEMENTED`. +// +// NOTE: the `name` binding allows API services to override the +// binding +// to use different resource name schemes, such as `users/*/operations`. +// To +// override the binding, API services can add a binding such +// as +// "/v1/{name=users/*}/operations" to their service configuration. +// For backwards compatibility, the default name includes the +// operations +// collection id, however overriding users must ensure the name +// binding +// is the parent resource, without the operations collection id. +func (r *OperationsService) List(name string) *OperationsListCall { + c := &OperationsListCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + return c +} + +// Filter sets the optional parameter "filter": The standard list +// filter. +func (c *OperationsListCall) Filter(filter string) *OperationsListCall { + c.urlParams_.Set("filter", filter) + return c +} + +// PageSize sets the optional parameter "pageSize": The standard list +// page size. +func (c *OperationsListCall) PageSize(pageSize int64) *OperationsListCall { + c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) + return c +} + +// PageToken sets the optional parameter "pageToken": The standard list +// page token. +func (c *OperationsListCall) PageToken(pageToken string) *OperationsListCall { + c.urlParams_.Set("pageToken", pageToken) + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *OperationsListCall) Fields(s ...googleapi.Field) *OperationsListCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// IfNoneMatch sets the optional parameter which makes the operation +// fail if the object's ETag matches the given value. This is useful for +// getting updates only after the object has changed since the last +// request. Use googleapi.IsNotModified to check whether the response +// error from Do is the result of In-None-Match. +func (c *OperationsListCall) IfNoneMatch(entityTag string) *OperationsListCall { + c.ifNoneMatch_ = entityTag + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *OperationsListCall) Context(ctx context.Context) *OperationsListCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *OperationsListCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *OperationsListCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + if c.ifNoneMatch_ != "" { + reqHeaders.Set("If-None-Match", c.ifNoneMatch_) + } + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("GET", urls, body) + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "vision.operations.list" call. +// Exactly one of *ListOperationsResponse or error will be non-nil. Any +// non-2xx status code is an error. Response headers are in either +// *ListOperationsResponse.ServerResponse.Header or (if a response was +// returned at all) in error.(*googleapi.Error).Header. Use +// googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *OperationsListCall) Do(opts ...googleapi.CallOption) (*ListOperationsResponse, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &ListOperationsResponse{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Lists operations that match the specified filter in the request. If the\nserver doesn't support this method, it returns `UNIMPLEMENTED`.\n\nNOTE: the `name` binding allows API services to override the binding\nto use different resource name schemes, such as `users/*/operations`. To\noverride the binding, API services can add a binding such as\n`\"/v1/{name=users/*}/operations\"` to their service configuration.\nFor backwards compatibility, the default name includes the operations\ncollection id, however overriding users must ensure the name binding\nis the parent resource, without the operations collection id.", + // "flatPath": "v1/operations", + // "httpMethod": "GET", + // "id": "vision.operations.list", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "filter": { + // "description": "The standard list filter.", + // "location": "query", + // "type": "string" + // }, + // "name": { + // "description": "The name of the operation's parent resource.", + // "location": "path", + // "pattern": "^operations$", + // "required": true, + // "type": "string" + // }, + // "pageSize": { + // "description": "The standard list page size.", + // "format": "int32", + // "location": "query", + // "type": "integer" + // }, + // "pageToken": { + // "description": "The standard list page token.", + // "location": "query", + // "type": "string" + // } + // }, + // "path": "v1/{+name}", + // "response": { + // "$ref": "ListOperationsResponse" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform", + // "https://www.googleapis.com/auth/cloud-vision" + // ] + // } + +} + +// Pages invokes f for each page of results. +// A non-nil error returned from f will halt the iteration. +// The provided context supersedes any context provided to the Context method. +func (c *OperationsListCall) Pages(ctx context.Context, f func(*ListOperationsResponse) error) error { + c.ctx_ = ctx + defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point + for { + x, err := c.Do() + if err != nil { + return err + } + if err := f(x); err != nil { + return err + } + if x.NextPageToken == "" { + return nil + } + c.PageToken(x.NextPageToken) + } +} diff --git a/vendor/google.golang.org/api/vision/v1p1beta1/vision-api.json b/vendor/google.golang.org/api/vision/v1p1beta1/vision-api.json index 3031a6ec4..955571737 100644 --- a/vendor/google.golang.org/api/vision/v1p1beta1/vision-api.json +++ b/vendor/google.golang.org/api/vision/v1p1beta1/vision-api.json @@ -1,223 +1,725 @@ { - "version": "v1p1beta1", - "baseUrl": "https://vision.googleapis.com/", - "servicePath": "", - "description": "Integrates Google Vision features, including image labeling, face, logo, and landmark detection, optical character recognition (OCR), and detection of explicit content, into applications.", - "kind": "discovery#restDescription", + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/cloud-platform": { + "description": "View and manage your data across Google Cloud Platform services" + }, + "https://www.googleapis.com/auth/cloud-vision": { + "description": "Apply machine learning models to understand and label images" + } + } + } + }, "basePath": "", - "id": "vision:v1p1beta1", - "documentationLink": "https://cloud.google.com/vision/", - "revision": "20180116", + "baseUrl": "https://vision.googleapis.com/", + "batchPath": "batch", + "canonicalName": "Vision", + "description": "Integrates Google Vision features, including image labeling, face, logo, and landmark detection, optical character recognition (OCR), and detection of explicit content, into applications.", "discoveryVersion": "v1", - "version_module": true, + "documentationLink": "https://cloud.google.com/vision/", + "fullyEncodeReservedExpansion": true, + "icons": { + "x16": "http://www.google.com/images/icons/product/search-16.gif", + "x32": "http://www.google.com/images/icons/product/search-32.gif" + }, + "id": "vision:v1p1beta1", + "kind": "discovery#restDescription", + "name": "vision", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "$.xgafv": { + "description": "V1 error format.", + "enum": [ + "1", + "2" + ], + "enumDescriptions": [ + "v1 error format", + "v2 error format" + ], + "location": "query", + "type": "string" + }, + "access_token": { + "description": "OAuth access token.", + "location": "query", + "type": "string" + }, + "alt": { + "default": "json", + "description": "Data format for response.", + "enum": [ + "json", + "media", + "proto" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json", + "Media download with context-dependent Content-Type", + "Responses with Content-Type of application/x-protobuf" + ], + "location": "query", + "type": "string" + }, + "bearer_token": { + "description": "OAuth bearer token.", + "location": "query", + "type": "string" + }, + "callback": { + "description": "JSONP", + "location": "query", + "type": "string" + }, + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "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.", + "location": "query", + "type": "string" + }, + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "pp": { + "default": "true", + "description": "Pretty-print response.", + "location": "query", + "type": "boolean" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", + "location": "query", + "type": "string" + }, + "uploadType": { + "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", + "location": "query", + "type": "string" + }, + "upload_protocol": { + "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", + "location": "query", + "type": "string" + } + }, + "protocol": "rest", + "resources": { + "images": { + "methods": { + "annotate": { + "description": "Run image detection and annotation for a batch of images.", + "flatPath": "v1p1beta1/images:annotate", + "httpMethod": "POST", + "id": "vision.images.annotate", + "parameterOrder": [], + "parameters": {}, + "path": "v1p1beta1/images:annotate", + "request": { + "$ref": "GoogleCloudVisionV1p1beta1BatchAnnotateImagesRequest" + }, + "response": { + "$ref": "GoogleCloudVisionV1p1beta1BatchAnnotateImagesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-vision" + ] + } + } + } + }, + "revision": "20180327", + "rootUrl": "https://vision.googleapis.com/", "schemas": { - "GoogleCloudVisionV1p1beta1Property": { - "description": "A `Property` consists of a user-supplied name/value pair.", - "type": "object", + "Color": { + "description": "Represents a color in the RGBA color space. This representation is designed\nfor simplicity of conversion to/from color representations in various\nlanguages over compactness; for example, the fields of this representation\ncan be trivially provided to the constructor of \"java.awt.Color\" in Java; it\ncan also be trivially provided to UIColor's \"+colorWithRed:green:blue:alpha\"\nmethod in iOS; and, with just a little work, it can be easily formatted into\na CSS \"rgba()\" string in JavaScript, as well. Here are some examples:\n\nExample (Java):\n\n import com.google.type.Color;\n\n // ...\n public static java.awt.Color fromProto(Color protocolor) {\n float alpha = protocolor.hasAlpha()\n ? protocolor.getAlpha().getValue()\n : 1.0;\n\n return new java.awt.Color(\n protocolor.getRed(),\n protocolor.getGreen(),\n protocolor.getBlue(),\n alpha);\n }\n\n public static Color toProto(java.awt.Color color) {\n float red = (float) color.getRed();\n float green = (float) color.getGreen();\n float blue = (float) color.getBlue();\n float denominator = 255.0;\n Color.Builder resultBuilder =\n Color\n .newBuilder()\n .setRed(red / denominator)\n .setGreen(green / denominator)\n .setBlue(blue / denominator);\n int alpha = color.getAlpha();\n if (alpha != 255) {\n result.setAlpha(\n FloatValue\n .newBuilder()\n .setValue(((float) alpha) / denominator)\n .build());\n }\n return resultBuilder.build();\n }\n // ...\n\nExample (iOS / Obj-C):\n\n // ...\n static UIColor* fromProto(Color* protocolor) {\n float red = [protocolor red];\n float green = [protocolor green];\n float blue = [protocolor blue];\n FloatValue* alpha_wrapper = [protocolor alpha];\n float alpha = 1.0;\n if (alpha_wrapper != nil) {\n alpha = [alpha_wrapper value];\n }\n return [UIColor colorWithRed:red green:green blue:blue alpha:alpha];\n }\n\n static Color* toProto(UIColor* color) {\n CGFloat red, green, blue, alpha;\n if (![color getRed:\u0026red green:\u0026green blue:\u0026blue alpha:\u0026alpha]) {\n return nil;\n }\n Color* result = [Color alloc] init];\n [result setRed:red];\n [result setGreen:green];\n [result setBlue:blue];\n if (alpha \u003c= 0.9999) {\n [result setAlpha:floatWrapperWithValue(alpha)];\n }\n [result autorelease];\n return result;\n }\n // ...\n\n Example (JavaScript):\n\n // ...\n\n var protoToCssColor = function(rgb_color) {\n var redFrac = rgb_color.red || 0.0;\n var greenFrac = rgb_color.green || 0.0;\n var blueFrac = rgb_color.blue || 0.0;\n var red = Math.floor(redFrac * 255);\n var green = Math.floor(greenFrac * 255);\n var blue = Math.floor(blueFrac * 255);\n\n if (!('alpha' in rgb_color)) {\n return rgbToCssColor_(red, green, blue);\n }\n\n var alphaFrac = rgb_color.alpha.value || 0.0;\n var rgbParams = [red, green, blue].join(',');\n return ['rgba(', rgbParams, ',', alphaFrac, ')'].join('');\n };\n\n var rgbToCssColor_ = function(red, green, blue) {\n var rgbNumber = new Number((red \u003c\u003c 16) | (green \u003c\u003c 8) | blue);\n var hexString = rgbNumber.toString(16);\n var missingZeros = 6 - hexString.length;\n var resultBuilder = ['#'];\n for (var i = 0; i \u003c missingZeros; i++) {\n resultBuilder.push('0');\n }\n resultBuilder.push(hexString);\n return resultBuilder.join('');\n };\n\n // ...", + "id": "Color", "properties": { - "value": { - "description": "Value of the property.", - "type": "string" + "alpha": { + "description": "The fraction of this color that should be applied to the pixel. That is,\nthe final pixel color is defined by the equation:\n\n pixel color = alpha * (this color) + (1.0 - alpha) * (background color)\n\nThis means that a value of 1.0 corresponds to a solid color, whereas\na value of 0.0 corresponds to a completely transparent color. This\nuses a wrapper message rather than a simple float scalar so that it is\npossible to distinguish between a default value and the value being unset.\nIf omitted, this color object is to be rendered as a solid color\n(as if the alpha value had been explicitly given with a value of 1.0).", + "format": "float", + "type": "number" }, - "uint64Value": { - "description": "Value of numeric properties.", - "format": "uint64", - "type": "string" + "blue": { + "description": "The amount of blue in the color as a value in the interval [0, 1].", + "format": "float", + "type": "number" }, - "name": { - "description": "Name of the property.", - "type": "string" - } - }, - "id": "GoogleCloudVisionV1p1beta1Property" - }, - "GoogleCloudVisionV1p1beta1ImageContext": { - "description": "Image context and/or feature-specific parameters.", - "type": "object", - "properties": { - "languageHints": { - "description": "List of languages to use for TEXT_DETECTION. In most cases, an empty value\nyields the best results since it enables automatic language detection. For\nlanguages based on the Latin alphabet, setting `language_hints` is not\nneeded. In rare cases, when the language of the text in the image is known,\nsetting a hint will help get better results (although it will be a\nsignificant hindrance if the hint is wrong). Text detection returns an\nerror if one or more of the specified languages is not one of the\n[supported languages](/vision/docs/languages).", - "type": "array", - "items": { - "type": "string" - } + "green": { + "description": "The amount of green in the color as a value in the interval [0, 1].", + "format": "float", + "type": "number" }, - "webDetectionParams": { - "description": "Parameters for web detection.", - "$ref": "GoogleCloudVisionV1p1beta1WebDetectionParams" - }, - "latLongRect": { - "$ref": "GoogleCloudVisionV1p1beta1LatLongRect", - "description": "lat/long rectangle that specifies the location of the image." - }, - "cropHintsParams": { - "description": "Parameters for crop hints annotation request.", - "$ref": "GoogleCloudVisionV1p1beta1CropHintsParams" - } - }, - "id": "GoogleCloudVisionV1p1beta1ImageContext" - }, - "GoogleCloudVisionV1p1beta1WebDetectionWebImage": { - "description": "Metadata for online images.", - "type": "object", - "properties": { - "url": { - "description": "The result image URL.", - "type": "string" - }, - "score": { - "description": "(Deprecated) Overall relevancy score for the image.", + "red": { + "description": "The amount of red in the color as a value in the interval [0, 1].", "format": "float", "type": "number" } }, - "id": "GoogleCloudVisionV1p1beta1WebDetectionWebImage" + "type": "object" + }, + "GoogleCloudVisionV1p1beta1AnnotateImageRequest": { + "description": "Request for performing Google Cloud Vision API tasks over a user-provided\nimage, with user-requested features.", + "id": "GoogleCloudVisionV1p1beta1AnnotateImageRequest", + "properties": { + "features": { + "description": "Requested features.", + "items": { + "$ref": "GoogleCloudVisionV1p1beta1Feature" + }, + "type": "array" + }, + "image": { + "$ref": "GoogleCloudVisionV1p1beta1Image", + "description": "The image to be processed." + }, + "imageContext": { + "$ref": "GoogleCloudVisionV1p1beta1ImageContext", + "description": "Additional context that may accompany the image." + } + }, + "type": "object" + }, + "GoogleCloudVisionV1p1beta1AnnotateImageResponse": { + "description": "Response to an image annotation request.", + "id": "GoogleCloudVisionV1p1beta1AnnotateImageResponse", + "properties": { + "cropHintsAnnotation": { + "$ref": "GoogleCloudVisionV1p1beta1CropHintsAnnotation", + "description": "If present, crop hints have completed successfully." + }, + "error": { + "$ref": "Status", + "description": "If set, represents the error message for the operation.\nNote that filled-in image annotations are guaranteed to be\ncorrect, even when `error` is set." + }, + "faceAnnotations": { + "description": "If present, face detection has completed successfully.", + "items": { + "$ref": "GoogleCloudVisionV1p1beta1FaceAnnotation" + }, + "type": "array" + }, + "fullTextAnnotation": { + "$ref": "GoogleCloudVisionV1p1beta1TextAnnotation", + "description": "If present, text (OCR) detection or document (OCR) text detection has\ncompleted successfully.\nThis annotation provides the structural hierarchy for the OCR detected\ntext." + }, + "imagePropertiesAnnotation": { + "$ref": "GoogleCloudVisionV1p1beta1ImageProperties", + "description": "If present, image properties were extracted successfully." + }, + "labelAnnotations": { + "description": "If present, label detection has completed successfully.", + "items": { + "$ref": "GoogleCloudVisionV1p1beta1EntityAnnotation" + }, + "type": "array" + }, + "landmarkAnnotations": { + "description": "If present, landmark detection has completed successfully.", + "items": { + "$ref": "GoogleCloudVisionV1p1beta1EntityAnnotation" + }, + "type": "array" + }, + "logoAnnotations": { + "description": "If present, logo detection has completed successfully.", + "items": { + "$ref": "GoogleCloudVisionV1p1beta1EntityAnnotation" + }, + "type": "array" + }, + "safeSearchAnnotation": { + "$ref": "GoogleCloudVisionV1p1beta1SafeSearchAnnotation", + "description": "If present, safe-search annotation has completed successfully." + }, + "textAnnotations": { + "description": "If present, text (OCR) detection has completed successfully.", + "items": { + "$ref": "GoogleCloudVisionV1p1beta1EntityAnnotation" + }, + "type": "array" + }, + "webDetection": { + "$ref": "GoogleCloudVisionV1p1beta1WebDetection", + "description": "If present, web detection has completed successfully." + } + }, + "type": "object" + }, + "GoogleCloudVisionV1p1beta1BatchAnnotateImagesRequest": { + "description": "Multiple image annotation requests are batched into a single service call.", + "id": "GoogleCloudVisionV1p1beta1BatchAnnotateImagesRequest", + "properties": { + "requests": { + "description": "Individual image annotation requests for this batch.", + "items": { + "$ref": "GoogleCloudVisionV1p1beta1AnnotateImageRequest" + }, + "type": "array" + } + }, + "type": "object" }, "GoogleCloudVisionV1p1beta1BatchAnnotateImagesResponse": { "description": "Response to a batch image annotation request.", - "type": "object", + "id": "GoogleCloudVisionV1p1beta1BatchAnnotateImagesResponse", "properties": { "responses": { "description": "Individual responses to image annotation requests within the batch.", - "type": "array", "items": { "$ref": "GoogleCloudVisionV1p1beta1AnnotateImageResponse" - } + }, + "type": "array" } }, - "id": "GoogleCloudVisionV1p1beta1BatchAnnotateImagesResponse" + "type": "object" }, - "GoogleCloudVisionV1p1beta1WebDetectionWebLabel": { - "type": "object", + "GoogleCloudVisionV1p1beta1Block": { + "description": "Logical element on the page.", + "id": "GoogleCloudVisionV1p1beta1Block", "properties": { - "label": { - "description": "Label for extra metadata.", + "blockType": { + "description": "Detected block type (text, image etc) for this block.", + "enum": [ + "UNKNOWN", + "TEXT", + "TABLE", + "PICTURE", + "RULER", + "BARCODE" + ], + "enumDescriptions": [ + "Unknown block type.", + "Regular text block.", + "Table block.", + "Image block.", + "Horizontal/vertical line box.", + "Barcode block." + ], "type": "string" }, - "languageCode": { - "description": "The BCP-47 language code for `label`, such as \"en-US\" or \"sr-Latn\".\nFor more information, see\nhttp://www.unicode.org/reports/tr35/#Unicode_locale_identifier.", - "type": "string" - } - }, - "id": "GoogleCloudVisionV1p1beta1WebDetectionWebLabel", - "description": "Label to provide extra metadata for the web detection." - }, - "GoogleCloudVisionV1p1beta1TextAnnotationDetectedLanguage": { - "description": "Detected language for a structural component.", - "type": "object", - "properties": { - "languageCode": { - "description": "The BCP-47 language code, such as \"en-US\" or \"sr-Latn\". For more\ninformation, see\nhttp://www.unicode.org/reports/tr35/#Unicode_locale_identifier.", - "type": "string" - }, - "confidence": { - "description": "Confidence of detected language. Range [0, 1].", - "format": "float", - "type": "number" - } - }, - "id": "GoogleCloudVisionV1p1beta1TextAnnotationDetectedLanguage" - }, - "GoogleCloudVisionV1p1beta1Symbol": { - "description": "A single symbol representation.", - "type": "object", - "properties": { - "text": { - "description": "The actual UTF-8 representation of the symbol.", - "type": "string" - }, - "property": { - "description": "Additional information detected for the symbol.", - "$ref": "GoogleCloudVisionV1p1beta1TextAnnotationTextProperty" - }, "boundingBox": { - "description": "The bounding box for the symbol.\nThe vertices are in the order of top-left, top-right, bottom-right,\nbottom-left. When a rotation of the bounding box is detected the rotation\nis represented as around the top-left corner as defined when the text is\nread in the 'natural' orientation.\nFor example:\n * when the text is horizontal it might look like:\n 0----1\n | |\n 3----2\n * when it's rotated 180 degrees around the top-left corner it becomes:\n 2----3\n | |\n 1----0\n and the vertice order will still be (0, 1, 2, 3).", - "$ref": "GoogleCloudVisionV1p1beta1BoundingPoly" + "$ref": "GoogleCloudVisionV1p1beta1BoundingPoly", + "description": "The bounding box for the block.\nThe vertices are in the order of top-left, top-right, bottom-right,\nbottom-left. When a rotation of the bounding box is detected the rotation\nis represented as around the top-left corner as defined when the text is\nread in the 'natural' orientation.\nFor example:\n\n* when the text is horizontal it might look like:\n\n 0----1\n | |\n 3----2\n\n* when it's rotated 180 degrees around the top-left corner it becomes:\n\n 2----3\n | |\n 1----0\n\n and the vertice order will still be (0, 1, 2, 3)." }, "confidence": { - "description": "Confidence of the OCR results for the symbol. Range [0, 1].", + "description": "Confidence of the OCR results on the block. Range [0, 1].", "format": "float", "type": "number" - } - }, - "id": "GoogleCloudVisionV1p1beta1Symbol" - }, - "GoogleCloudVisionV1p1beta1ImageProperties": { - "type": "object", - "properties": { - "dominantColors": { - "$ref": "GoogleCloudVisionV1p1beta1DominantColorsAnnotation", - "description": "If present, dominant colors completed successfully." - } - }, - "id": "GoogleCloudVisionV1p1beta1ImageProperties", - "description": "Stores image properties, such as dominant colors." - }, - "GoogleCloudVisionV1p1beta1Image": { - "id": "GoogleCloudVisionV1p1beta1Image", - "description": "Client image to perform Google Cloud Vision API tasks over.", - "type": "object", - "properties": { - "content": { - "description": "Image content, represented as a stream of bytes.\nNote: As with all `bytes` fields, protobuffers use a pure binary\nrepresentation, whereas JSON representations use base64.", - "format": "byte", - "type": "string" }, - "source": { - "$ref": "GoogleCloudVisionV1p1beta1ImageSource", - "description": "Google Cloud Storage image location, or publicly-accessible image\nURL. If both `content` and `source` are provided for an image, `content`\ntakes precedence and is used to perform the image annotation request." + "paragraphs": { + "description": "List of paragraphs in this block (if this blocks is of type text).", + "items": { + "$ref": "GoogleCloudVisionV1p1beta1Paragraph" + }, + "type": "array" + }, + "property": { + "$ref": "GoogleCloudVisionV1p1beta1TextAnnotationTextProperty", + "description": "Additional information detected for the block." } - } + }, + "type": "object" + }, + "GoogleCloudVisionV1p1beta1BoundingPoly": { + "description": "A bounding polygon for the detected image annotation.", + "id": "GoogleCloudVisionV1p1beta1BoundingPoly", + "properties": { + "vertices": { + "description": "The bounding polygon vertices.", + "items": { + "$ref": "GoogleCloudVisionV1p1beta1Vertex" + }, + "type": "array" + } + }, + "type": "object" }, "GoogleCloudVisionV1p1beta1ColorInfo": { "description": "Color information consists of RGB channels, score, and the fraction of\nthe image that the color occupies in the image.", - "type": "object", + "id": "GoogleCloudVisionV1p1beta1ColorInfo", "properties": { + "color": { + "$ref": "Color", + "description": "RGB components of the color." + }, "pixelFraction": { "description": "The fraction of pixels the color occupies in the image.\nValue in range [0, 1].", "format": "float", "type": "number" }, - "color": { - "$ref": "Color", - "description": "RGB components of the color." - }, "score": { "description": "Image-specific score for this color. Value in range [0, 1].", "format": "float", "type": "number" } }, - "id": "GoogleCloudVisionV1p1beta1ColorInfo" + "type": "object" }, - "GoogleCloudVisionV1p1beta1WebDetectionWebEntity": { - "description": "Entity deduced from similar images on the Internet.", - "type": "object", + "GoogleCloudVisionV1p1beta1CropHint": { + "description": "Single crop hint that is used to generate a new crop when serving an image.", + "id": "GoogleCloudVisionV1p1beta1CropHint", "properties": { - "score": { - "description": "Overall relevancy score for the entity.\nNot normalized and not comparable across different image queries.", + "boundingPoly": { + "$ref": "GoogleCloudVisionV1p1beta1BoundingPoly", + "description": "The bounding polygon for the crop region. The coordinates of the bounding\nbox are in the original image's scale, as returned in `ImageParams`." + }, + "confidence": { + "description": "Confidence of this being a salient region. Range [0, 1].", "format": "float", "type": "number" }, - "entityId": { - "description": "Opaque entity ID.", - "type": "string" + "importanceFraction": { + "description": "Fraction of importance of this salient region with respect to the original\nimage.", + "format": "float", + "type": "number" + } + }, + "type": "object" + }, + "GoogleCloudVisionV1p1beta1CropHintsAnnotation": { + "description": "Set of crop hints that are used to generate new crops when serving images.", + "id": "GoogleCloudVisionV1p1beta1CropHintsAnnotation", + "properties": { + "cropHints": { + "description": "Crop hint results.", + "items": { + "$ref": "GoogleCloudVisionV1p1beta1CropHint" + }, + "type": "array" + } + }, + "type": "object" + }, + "GoogleCloudVisionV1p1beta1CropHintsParams": { + "description": "Parameters for crop hints annotation request.", + "id": "GoogleCloudVisionV1p1beta1CropHintsParams", + "properties": { + "aspectRatios": { + "description": "Aspect ratios in floats, representing the ratio of the width to the height\nof the image. For example, if the desired aspect ratio is 4/3, the\ncorresponding float value should be 1.33333. If not specified, the\nbest possible crop is returned. The number of provided aspect ratios is\nlimited to a maximum of 16; any aspect ratios provided after the 16th are\nignored.", + "items": { + "format": "float", + "type": "number" + }, + "type": "array" + } + }, + "type": "object" + }, + "GoogleCloudVisionV1p1beta1DominantColorsAnnotation": { + "description": "Set of dominant colors and their corresponding scores.", + "id": "GoogleCloudVisionV1p1beta1DominantColorsAnnotation", + "properties": { + "colors": { + "description": "RGB color values with their score and pixel fraction.", + "items": { + "$ref": "GoogleCloudVisionV1p1beta1ColorInfo" + }, + "type": "array" + } + }, + "type": "object" + }, + "GoogleCloudVisionV1p1beta1EntityAnnotation": { + "description": "Set of detected entity features.", + "id": "GoogleCloudVisionV1p1beta1EntityAnnotation", + "properties": { + "boundingPoly": { + "$ref": "GoogleCloudVisionV1p1beta1BoundingPoly", + "description": "Image region to which this entity belongs. Not produced\nfor `LABEL_DETECTION` features." + }, + "confidence": { + "description": "**Deprecated. Use `score` instead.**\nThe accuracy of the entity detection in an image.\nFor example, for an image in which the \"Eiffel Tower\" entity is detected,\nthis field represents the confidence that there is a tower in the query\nimage. Range [0, 1].", + "format": "float", + "type": "number" }, "description": { - "description": "Canonical description of the entity, in English.", + "description": "Entity textual description, expressed in its `locale` language.", + "type": "string" + }, + "locale": { + "description": "The language code for the locale in which the entity textual\n`description` is expressed.", + "type": "string" + }, + "locations": { + "description": "The location information for the detected entity. Multiple\n`LocationInfo` elements can be present because one location may\nindicate the location of the scene in the image, and another location\nmay indicate the location of the place where the image was taken.\nLocation information is usually present for landmarks.", + "items": { + "$ref": "GoogleCloudVisionV1p1beta1LocationInfo" + }, + "type": "array" + }, + "mid": { + "description": "Opaque entity ID. Some IDs may be available in\n[Google Knowledge Graph Search\nAPI](https://developers.google.com/knowledge-graph/).", + "type": "string" + }, + "properties": { + "description": "Some entities may have optional user-supplied `Property` (name/value)\nfields, such a score or string that qualifies the entity.", + "items": { + "$ref": "GoogleCloudVisionV1p1beta1Property" + }, + "type": "array" + }, + "score": { + "description": "Overall score of the result. Range [0, 1].", + "format": "float", + "type": "number" + }, + "topicality": { + "description": "The relevancy of the ICA (Image Content Annotation) label to the\nimage. For example, the relevancy of \"tower\" is likely higher to an image\ncontaining the detected \"Eiffel Tower\" than to an image containing a\ndetected distant towering building, even though the confidence that\nthere is a tower in each image may be the same. Range [0, 1].", + "format": "float", + "type": "number" + } + }, + "type": "object" + }, + "GoogleCloudVisionV1p1beta1FaceAnnotation": { + "description": "A face annotation object contains the results of face detection.", + "id": "GoogleCloudVisionV1p1beta1FaceAnnotation", + "properties": { + "angerLikelihood": { + "description": "Anger likelihood.", + "enum": [ + "UNKNOWN", + "VERY_UNLIKELY", + "UNLIKELY", + "POSSIBLE", + "LIKELY", + "VERY_LIKELY" + ], + "enumDescriptions": [ + "Unknown likelihood.", + "It is very unlikely that the image belongs to the specified vertical.", + "It is unlikely that the image belongs to the specified vertical.", + "It is possible that the image belongs to the specified vertical.", + "It is likely that the image belongs to the specified vertical.", + "It is very likely that the image belongs to the specified vertical." + ], + "type": "string" + }, + "blurredLikelihood": { + "description": "Blurred likelihood.", + "enum": [ + "UNKNOWN", + "VERY_UNLIKELY", + "UNLIKELY", + "POSSIBLE", + "LIKELY", + "VERY_LIKELY" + ], + "enumDescriptions": [ + "Unknown likelihood.", + "It is very unlikely that the image belongs to the specified vertical.", + "It is unlikely that the image belongs to the specified vertical.", + "It is possible that the image belongs to the specified vertical.", + "It is likely that the image belongs to the specified vertical.", + "It is very likely that the image belongs to the specified vertical." + ], + "type": "string" + }, + "boundingPoly": { + "$ref": "GoogleCloudVisionV1p1beta1BoundingPoly", + "description": "The bounding polygon around the face. The coordinates of the bounding box\nare in the original image's scale, as returned in `ImageParams`.\nThe bounding box is computed to \"frame\" the face in accordance with human\nexpectations. It is based on the landmarker results.\nNote that one or more x and/or y coordinates may not be generated in the\n`BoundingPoly` (the polygon will be unbounded) if only a partial face\nappears in the image to be annotated." + }, + "detectionConfidence": { + "description": "Detection confidence. Range [0, 1].", + "format": "float", + "type": "number" + }, + "fdBoundingPoly": { + "$ref": "GoogleCloudVisionV1p1beta1BoundingPoly", + "description": "The `fd_bounding_poly` bounding polygon is tighter than the\n`boundingPoly`, and encloses only the skin part of the face. Typically, it\nis used to eliminate the face from any image analysis that detects the\n\"amount of skin\" visible in an image. It is not based on the\nlandmarker results, only on the initial face detection, hence\nthe \u003ccode\u003efd\u003c/code\u003e (face detection) prefix." + }, + "headwearLikelihood": { + "description": "Headwear likelihood.", + "enum": [ + "UNKNOWN", + "VERY_UNLIKELY", + "UNLIKELY", + "POSSIBLE", + "LIKELY", + "VERY_LIKELY" + ], + "enumDescriptions": [ + "Unknown likelihood.", + "It is very unlikely that the image belongs to the specified vertical.", + "It is unlikely that the image belongs to the specified vertical.", + "It is possible that the image belongs to the specified vertical.", + "It is likely that the image belongs to the specified vertical.", + "It is very likely that the image belongs to the specified vertical." + ], + "type": "string" + }, + "joyLikelihood": { + "description": "Joy likelihood.", + "enum": [ + "UNKNOWN", + "VERY_UNLIKELY", + "UNLIKELY", + "POSSIBLE", + "LIKELY", + "VERY_LIKELY" + ], + "enumDescriptions": [ + "Unknown likelihood.", + "It is very unlikely that the image belongs to the specified vertical.", + "It is unlikely that the image belongs to the specified vertical.", + "It is possible that the image belongs to the specified vertical.", + "It is likely that the image belongs to the specified vertical.", + "It is very likely that the image belongs to the specified vertical." + ], + "type": "string" + }, + "landmarkingConfidence": { + "description": "Face landmarking confidence. Range [0, 1].", + "format": "float", + "type": "number" + }, + "landmarks": { + "description": "Detected face landmarks.", + "items": { + "$ref": "GoogleCloudVisionV1p1beta1FaceAnnotationLandmark" + }, + "type": "array" + }, + "panAngle": { + "description": "Yaw angle, which indicates the leftward/rightward angle that the face is\npointing relative to the vertical plane perpendicular to the image. Range\n[-180,180].", + "format": "float", + "type": "number" + }, + "rollAngle": { + "description": "Roll angle, which indicates the amount of clockwise/anti-clockwise rotation\nof the face relative to the image vertical about the axis perpendicular to\nthe face. Range [-180,180].", + "format": "float", + "type": "number" + }, + "sorrowLikelihood": { + "description": "Sorrow likelihood.", + "enum": [ + "UNKNOWN", + "VERY_UNLIKELY", + "UNLIKELY", + "POSSIBLE", + "LIKELY", + "VERY_LIKELY" + ], + "enumDescriptions": [ + "Unknown likelihood.", + "It is very unlikely that the image belongs to the specified vertical.", + "It is unlikely that the image belongs to the specified vertical.", + "It is possible that the image belongs to the specified vertical.", + "It is likely that the image belongs to the specified vertical.", + "It is very likely that the image belongs to the specified vertical." + ], + "type": "string" + }, + "surpriseLikelihood": { + "description": "Surprise likelihood.", + "enum": [ + "UNKNOWN", + "VERY_UNLIKELY", + "UNLIKELY", + "POSSIBLE", + "LIKELY", + "VERY_LIKELY" + ], + "enumDescriptions": [ + "Unknown likelihood.", + "It is very unlikely that the image belongs to the specified vertical.", + "It is unlikely that the image belongs to the specified vertical.", + "It is possible that the image belongs to the specified vertical.", + "It is likely that the image belongs to the specified vertical.", + "It is very likely that the image belongs to the specified vertical." + ], + "type": "string" + }, + "tiltAngle": { + "description": "Pitch angle, which indicates the upwards/downwards angle that the face is\npointing relative to the image's horizontal plane. Range [-180,180].", + "format": "float", + "type": "number" + }, + "underExposedLikelihood": { + "description": "Under-exposed likelihood.", + "enum": [ + "UNKNOWN", + "VERY_UNLIKELY", + "UNLIKELY", + "POSSIBLE", + "LIKELY", + "VERY_LIKELY" + ], + "enumDescriptions": [ + "Unknown likelihood.", + "It is very unlikely that the image belongs to the specified vertical.", + "It is unlikely that the image belongs to the specified vertical.", + "It is possible that the image belongs to the specified vertical.", + "It is likely that the image belongs to the specified vertical.", + "It is very likely that the image belongs to the specified vertical." + ], "type": "string" } }, - "id": "GoogleCloudVisionV1p1beta1WebDetectionWebEntity" + "type": "object" }, "GoogleCloudVisionV1p1beta1FaceAnnotationLandmark": { - "id": "GoogleCloudVisionV1p1beta1FaceAnnotationLandmark", "description": "A face-specific landmark (for example, a face feature).", - "type": "object", + "id": "GoogleCloudVisionV1p1beta1FaceAnnotationLandmark", "properties": { + "position": { + "$ref": "GoogleCloudVisionV1p1beta1Position", + "description": "Face landmark position." + }, "type": { "description": "Face landmark type.", - "type": "string", + "enum": [ + "UNKNOWN_LANDMARK", + "LEFT_EYE", + "RIGHT_EYE", + "LEFT_OF_LEFT_EYEBROW", + "RIGHT_OF_LEFT_EYEBROW", + "LEFT_OF_RIGHT_EYEBROW", + "RIGHT_OF_RIGHT_EYEBROW", + "MIDPOINT_BETWEEN_EYES", + "NOSE_TIP", + "UPPER_LIP", + "LOWER_LIP", + "MOUTH_LEFT", + "MOUTH_RIGHT", + "MOUTH_CENTER", + "NOSE_BOTTOM_RIGHT", + "NOSE_BOTTOM_LEFT", + "NOSE_BOTTOM_CENTER", + "LEFT_EYE_TOP_BOUNDARY", + "LEFT_EYE_RIGHT_CORNER", + "LEFT_EYE_BOTTOM_BOUNDARY", + "LEFT_EYE_LEFT_CORNER", + "RIGHT_EYE_TOP_BOUNDARY", + "RIGHT_EYE_RIGHT_CORNER", + "RIGHT_EYE_BOTTOM_BOUNDARY", + "RIGHT_EYE_LEFT_CORNER", + "LEFT_EYEBROW_UPPER_MIDPOINT", + "RIGHT_EYEBROW_UPPER_MIDPOINT", + "LEFT_EAR_TRAGION", + "RIGHT_EAR_TRAGION", + "LEFT_EYE_PUPIL", + "RIGHT_EYE_PUPIL", + "FOREHEAD_GLABELLA", + "CHIN_GNATHION", + "CHIN_LEFT_GONION", + "CHIN_RIGHT_GONION" + ], "enumDescriptions": [ "Unknown face landmark detected. Should not be filled.", "Left eye.", @@ -255,951 +757,26 @@ "Chin left gonion.", "Chin right gonion." ], - "enum": [ - "UNKNOWN_LANDMARK", - "LEFT_EYE", - "RIGHT_EYE", - "LEFT_OF_LEFT_EYEBROW", - "RIGHT_OF_LEFT_EYEBROW", - "LEFT_OF_RIGHT_EYEBROW", - "RIGHT_OF_RIGHT_EYEBROW", - "MIDPOINT_BETWEEN_EYES", - "NOSE_TIP", - "UPPER_LIP", - "LOWER_LIP", - "MOUTH_LEFT", - "MOUTH_RIGHT", - "MOUTH_CENTER", - "NOSE_BOTTOM_RIGHT", - "NOSE_BOTTOM_LEFT", - "NOSE_BOTTOM_CENTER", - "LEFT_EYE_TOP_BOUNDARY", - "LEFT_EYE_RIGHT_CORNER", - "LEFT_EYE_BOTTOM_BOUNDARY", - "LEFT_EYE_LEFT_CORNER", - "RIGHT_EYE_TOP_BOUNDARY", - "RIGHT_EYE_RIGHT_CORNER", - "RIGHT_EYE_BOTTOM_BOUNDARY", - "RIGHT_EYE_LEFT_CORNER", - "LEFT_EYEBROW_UPPER_MIDPOINT", - "RIGHT_EYEBROW_UPPER_MIDPOINT", - "LEFT_EAR_TRAGION", - "RIGHT_EAR_TRAGION", - "LEFT_EYE_PUPIL", - "RIGHT_EYE_PUPIL", - "FOREHEAD_GLABELLA", - "CHIN_GNATHION", - "CHIN_LEFT_GONION", - "CHIN_RIGHT_GONION" - ] - }, - "position": { - "$ref": "GoogleCloudVisionV1p1beta1Position", - "description": "Face landmark position." - } - } - }, - "GoogleCloudVisionV1p1beta1WebDetection": { - "description": "Relevant information for the image from the Internet.", - "type": "object", - "properties": { - "bestGuessLabels": { - "description": "Best guess text labels for the request image.", - "type": "array", - "items": { - "$ref": "GoogleCloudVisionV1p1beta1WebDetectionWebLabel" - } - }, - "fullMatchingImages": { - "description": "Fully matching images from the Internet.\nCan include resized copies of the query image.", - "type": "array", - "items": { - "$ref": "GoogleCloudVisionV1p1beta1WebDetectionWebImage" - } - }, - "webEntities": { - "description": "Deduced entities from similar images on the Internet.", - "type": "array", - "items": { - "$ref": "GoogleCloudVisionV1p1beta1WebDetectionWebEntity" - } - }, - "pagesWithMatchingImages": { - "description": "Web pages containing the matching images from the Internet.", - "type": "array", - "items": { - "$ref": "GoogleCloudVisionV1p1beta1WebDetectionWebPage" - } - }, - "partialMatchingImages": { - "description": "Partial matching images from the Internet.\nThose images are similar enough to share some key-point features. For\nexample an original image will likely have partial matching for its crops.", - "type": "array", - "items": { - "$ref": "GoogleCloudVisionV1p1beta1WebDetectionWebImage" - } - }, - "visuallySimilarImages": { - "description": "The visually similar image results.", - "type": "array", - "items": { - "$ref": "GoogleCloudVisionV1p1beta1WebDetectionWebImage" - } - } - }, - "id": "GoogleCloudVisionV1p1beta1WebDetection" - }, - "GoogleCloudVisionV1p1beta1AnnotateImageResponse": { - "description": "Response to an image annotation request.", - "type": "object", - "properties": { - "textAnnotations": { - "description": "If present, text (OCR) detection has completed successfully.", - "type": "array", - "items": { - "$ref": "GoogleCloudVisionV1p1beta1EntityAnnotation" - } - }, - "faceAnnotations": { - "type": "array", - "items": { - "$ref": "GoogleCloudVisionV1p1beta1FaceAnnotation" - }, - "description": "If present, face detection has completed successfully." - }, - "imagePropertiesAnnotation": { - "$ref": "GoogleCloudVisionV1p1beta1ImageProperties", - "description": "If present, image properties were extracted successfully." - }, - "logoAnnotations": { - "description": "If present, logo detection has completed successfully.", - "type": "array", - "items": { - "$ref": "GoogleCloudVisionV1p1beta1EntityAnnotation" - } - }, - "cropHintsAnnotation": { - "$ref": "GoogleCloudVisionV1p1beta1CropHintsAnnotation", - "description": "If present, crop hints have completed successfully." - }, - "webDetection": { - "$ref": "GoogleCloudVisionV1p1beta1WebDetection", - "description": "If present, web detection has completed successfully." - }, - "labelAnnotations": { - "description": "If present, label detection has completed successfully.", - "type": "array", - "items": { - "$ref": "GoogleCloudVisionV1p1beta1EntityAnnotation" - } - }, - "safeSearchAnnotation": { - "description": "If present, safe-search annotation has completed successfully.", - "$ref": "GoogleCloudVisionV1p1beta1SafeSearchAnnotation" - }, - "error": { - "$ref": "Status", - "description": "If set, represents the error message for the operation.\nNote that filled-in image annotations are guaranteed to be\ncorrect, even when `error` is set." - }, - "fullTextAnnotation": { - "description": "If present, text (OCR) detection or document (OCR) text detection has\ncompleted successfully.\nThis annotation provides the structural hierarchy for the OCR detected\ntext.", - "$ref": "GoogleCloudVisionV1p1beta1TextAnnotation" - }, - "landmarkAnnotations": { - "description": "If present, landmark detection has completed successfully.", - "type": "array", - "items": { - "$ref": "GoogleCloudVisionV1p1beta1EntityAnnotation" - } - } - }, - "id": "GoogleCloudVisionV1p1beta1AnnotateImageResponse" - }, - "GoogleCloudVisionV1p1beta1FaceAnnotation": { - "description": "A face annotation object contains the results of face detection.", - "type": "object", - "properties": { - "headwearLikelihood": { - "enum": [ - "UNKNOWN", - "VERY_UNLIKELY", - "UNLIKELY", - "POSSIBLE", - "LIKELY", - "VERY_LIKELY" - ], - "description": "Headwear likelihood.", - "type": "string", - "enumDescriptions": [ - "Unknown likelihood.", - "It is very unlikely that the image belongs to the specified vertical.", - "It is unlikely that the image belongs to the specified vertical.", - "It is possible that the image belongs to the specified vertical.", - "It is likely that the image belongs to the specified vertical.", - "It is very likely that the image belongs to the specified vertical." - ] - }, - "boundingPoly": { - "$ref": "GoogleCloudVisionV1p1beta1BoundingPoly", - "description": "The bounding polygon around the face. The coordinates of the bounding box\nare in the original image's scale, as returned in `ImageParams`.\nThe bounding box is computed to \"frame\" the face in accordance with human\nexpectations. It is based on the landmarker results.\nNote that one or more x and/or y coordinates may not be generated in the\n`BoundingPoly` (the polygon will be unbounded) if only a partial face\nappears in the image to be annotated." - }, - "rollAngle": { - "type": "number", - "description": "Roll angle, which indicates the amount of clockwise/anti-clockwise rotation\nof the face relative to the image vertical about the axis perpendicular to\nthe face. Range [-180,180].", - "format": "float" - }, - "sorrowLikelihood": { - "enum": [ - "UNKNOWN", - "VERY_UNLIKELY", - "UNLIKELY", - "POSSIBLE", - "LIKELY", - "VERY_LIKELY" - ], - "description": "Sorrow likelihood.", - "type": "string", - "enumDescriptions": [ - "Unknown likelihood.", - "It is very unlikely that the image belongs to the specified vertical.", - "It is unlikely that the image belongs to the specified vertical.", - "It is possible that the image belongs to the specified vertical.", - "It is likely that the image belongs to the specified vertical.", - "It is very likely that the image belongs to the specified vertical." - ] - }, - "tiltAngle": { - "description": "Pitch angle, which indicates the upwards/downwards angle that the face is\npointing relative to the image's horizontal plane. Range [-180,180].", - "format": "float", - "type": "number" - }, - "fdBoundingPoly": { - "description": "The `fd_bounding_poly` bounding polygon is tighter than the\n`boundingPoly`, and encloses only the skin part of the face. Typically, it\nis used to eliminate the face from any image analysis that detects the\n\"amount of skin\" visible in an image. It is not based on the\nlandmarker results, only on the initial face detection, hence\nthe \u003ccode\u003efd\u003c/code\u003e (face detection) prefix.", - "$ref": "GoogleCloudVisionV1p1beta1BoundingPoly" - }, - "angerLikelihood": { - "enumDescriptions": [ - "Unknown likelihood.", - "It is very unlikely that the image belongs to the specified vertical.", - "It is unlikely that the image belongs to the specified vertical.", - "It is possible that the image belongs to the specified vertical.", - "It is likely that the image belongs to the specified vertical.", - "It is very likely that the image belongs to the specified vertical." - ], - "enum": [ - "UNKNOWN", - "VERY_UNLIKELY", - "UNLIKELY", - "POSSIBLE", - "LIKELY", - "VERY_LIKELY" - ], - "description": "Anger likelihood.", - "type": "string" - }, - "landmarks": { - "description": "Detected face landmarks.", - "type": "array", - "items": { - "$ref": "GoogleCloudVisionV1p1beta1FaceAnnotationLandmark" - } - }, - "surpriseLikelihood": { - "description": "Surprise likelihood.", - "type": "string", - "enumDescriptions": [ - "Unknown likelihood.", - "It is very unlikely that the image belongs to the specified vertical.", - "It is unlikely that the image belongs to the specified vertical.", - "It is possible that the image belongs to the specified vertical.", - "It is likely that the image belongs to the specified vertical.", - "It is very likely that the image belongs to the specified vertical." - ], - "enum": [ - "UNKNOWN", - "VERY_UNLIKELY", - "UNLIKELY", - "POSSIBLE", - "LIKELY", - "VERY_LIKELY" - ] - }, - "joyLikelihood": { - "enum": [ - "UNKNOWN", - "VERY_UNLIKELY", - "UNLIKELY", - "POSSIBLE", - "LIKELY", - "VERY_LIKELY" - ], - "description": "Joy likelihood.", - "type": "string", - "enumDescriptions": [ - "Unknown likelihood.", - "It is very unlikely that the image belongs to the specified vertical.", - "It is unlikely that the image belongs to the specified vertical.", - "It is possible that the image belongs to the specified vertical.", - "It is likely that the image belongs to the specified vertical.", - "It is very likely that the image belongs to the specified vertical." - ] - }, - "landmarkingConfidence": { - "description": "Face landmarking confidence. Range [0, 1].", - "format": "float", - "type": "number" - }, - "detectionConfidence": { - "type": "number", - "description": "Detection confidence. Range [0, 1].", - "format": "float" - }, - "panAngle": { - "description": "Yaw angle, which indicates the leftward/rightward angle that the face is\npointing relative to the vertical plane perpendicular to the image. Range\n[-180,180].", - "format": "float", - "type": "number" - }, - "underExposedLikelihood": { - "enum": [ - "UNKNOWN", - "VERY_UNLIKELY", - "UNLIKELY", - "POSSIBLE", - "LIKELY", - "VERY_LIKELY" - ], - "description": "Under-exposed likelihood.", - "type": "string", - "enumDescriptions": [ - "Unknown likelihood.", - "It is very unlikely that the image belongs to the specified vertical.", - "It is unlikely that the image belongs to the specified vertical.", - "It is possible that the image belongs to the specified vertical.", - "It is likely that the image belongs to the specified vertical.", - "It is very likely that the image belongs to the specified vertical." - ] - }, - "blurredLikelihood": { - "description": "Blurred likelihood.", - "type": "string", - "enumDescriptions": [ - "Unknown likelihood.", - "It is very unlikely that the image belongs to the specified vertical.", - "It is unlikely that the image belongs to the specified vertical.", - "It is possible that the image belongs to the specified vertical.", - "It is likely that the image belongs to the specified vertical.", - "It is very likely that the image belongs to the specified vertical." - ], - "enum": [ - "UNKNOWN", - "VERY_UNLIKELY", - "UNLIKELY", - "POSSIBLE", - "LIKELY", - "VERY_LIKELY" - ] - } - }, - "id": "GoogleCloudVisionV1p1beta1FaceAnnotation" - }, - "GoogleCloudVisionV1p1beta1SafeSearchAnnotation": { - "description": "Set of features pertaining to the image, computed by computer vision\nmethods over safe-search verticals (for example, adult, spoof, medical,\nviolence).", - "type": "object", - "properties": { - "medical": { - "enumDescriptions": [ - "Unknown likelihood.", - "It is very unlikely that the image belongs to the specified vertical.", - "It is unlikely that the image belongs to the specified vertical.", - "It is possible that the image belongs to the specified vertical.", - "It is likely that the image belongs to the specified vertical.", - "It is very likely that the image belongs to the specified vertical." - ], - "enum": [ - "UNKNOWN", - "VERY_UNLIKELY", - "UNLIKELY", - "POSSIBLE", - "LIKELY", - "VERY_LIKELY" - ], - "description": "Likelihood that this is a medical image.", - "type": "string" - }, - "racy": { - "description": "Likelihood that the request image contains racy content. Racy content may\ninclude (but is not limited to) skimpy or sheer clothing, strategically\ncovered nudity, lewd or provocative poses, or close-ups of sensitive\nbody areas.", - "type": "string", - "enumDescriptions": [ - "Unknown likelihood.", - "It is very unlikely that the image belongs to the specified vertical.", - "It is unlikely that the image belongs to the specified vertical.", - "It is possible that the image belongs to the specified vertical.", - "It is likely that the image belongs to the specified vertical.", - "It is very likely that the image belongs to the specified vertical." - ], - "enum": [ - "UNKNOWN", - "VERY_UNLIKELY", - "UNLIKELY", - "POSSIBLE", - "LIKELY", - "VERY_LIKELY" - ] - }, - "violence": { - "enumDescriptions": [ - "Unknown likelihood.", - "It is very unlikely that the image belongs to the specified vertical.", - "It is unlikely that the image belongs to the specified vertical.", - "It is possible that the image belongs to the specified vertical.", - "It is likely that the image belongs to the specified vertical.", - "It is very likely that the image belongs to the specified vertical." - ], - "enum": [ - "UNKNOWN", - "VERY_UNLIKELY", - "UNLIKELY", - "POSSIBLE", - "LIKELY", - "VERY_LIKELY" - ], - "description": "Likelihood that this image contains violent content.", - "type": "string" - }, - "adult": { - "enum": [ - "UNKNOWN", - "VERY_UNLIKELY", - "UNLIKELY", - "POSSIBLE", - "LIKELY", - "VERY_LIKELY" - ], - "description": "Represents the adult content likelihood for the image. Adult content may\ncontain elements such as nudity, pornographic images or cartoons, or\nsexual activities.", - "type": "string", - "enumDescriptions": [ - "Unknown likelihood.", - "It is very unlikely that the image belongs to the specified vertical.", - "It is unlikely that the image belongs to the specified vertical.", - "It is possible that the image belongs to the specified vertical.", - "It is likely that the image belongs to the specified vertical.", - "It is very likely that the image belongs to the specified vertical." - ] - }, - "spoof": { - "description": "Spoof likelihood. The likelihood that an modification\nwas made to the image's canonical version to make it appear\nfunny or offensive.", - "type": "string", - "enumDescriptions": [ - "Unknown likelihood.", - "It is very unlikely that the image belongs to the specified vertical.", - "It is unlikely that the image belongs to the specified vertical.", - "It is possible that the image belongs to the specified vertical.", - "It is likely that the image belongs to the specified vertical.", - "It is very likely that the image belongs to the specified vertical." - ], - "enum": [ - "UNKNOWN", - "VERY_UNLIKELY", - "UNLIKELY", - "POSSIBLE", - "LIKELY", - "VERY_LIKELY" - ] - } - }, - "id": "GoogleCloudVisionV1p1beta1SafeSearchAnnotation" - }, - "GoogleCloudVisionV1p1beta1TextAnnotationDetectedBreak": { - "description": "Detected start or end of a structural component.", - "type": "object", - "properties": { - "isPrefix": { - "description": "True if break prepends the element.", - "type": "boolean" - }, - "type": { - "enumDescriptions": [ - "Unknown break label type.", - "Regular space.", - "Sure space (very wide).", - "Line-wrapping break.", - "End-line hyphen that is not present in text; does not co-occur with\n`SPACE`, `LEADER_SPACE`, or `LINE_BREAK`.", - "Line break that ends a paragraph." - ], - "enum": [ - "UNKNOWN", - "SPACE", - "SURE_SPACE", - "EOL_SURE_SPACE", - "HYPHEN", - "LINE_BREAK" - ], - "description": "Detected break type.", "type": "string" } }, - "id": "GoogleCloudVisionV1p1beta1TextAnnotationDetectedBreak" - }, - "GoogleCloudVisionV1p1beta1AnnotateImageRequest": { - "description": "Request for performing Google Cloud Vision API tasks over a user-provided\nimage, with user-requested features.", - "type": "object", - "properties": { - "image": { - "description": "The image to be processed.", - "$ref": "GoogleCloudVisionV1p1beta1Image" - }, - "features": { - "description": "Requested features.", - "type": "array", - "items": { - "$ref": "GoogleCloudVisionV1p1beta1Feature" - } - }, - "imageContext": { - "$ref": "GoogleCloudVisionV1p1beta1ImageContext", - "description": "Additional context that may accompany the image." - } - }, - "id": "GoogleCloudVisionV1p1beta1AnnotateImageRequest" - }, - "GoogleCloudVisionV1p1beta1Page": { - "description": "Detected page from OCR.", - "type": "object", - "properties": { - "confidence": { - "description": "Confidence of the OCR results on the page. Range [0, 1].", - "format": "float", - "type": "number" - }, - "height": { - "description": "Page height in pixels.", - "format": "int32", - "type": "integer" - }, - "width": { - "description": "Page width in pixels.", - "format": "int32", - "type": "integer" - }, - "blocks": { - "type": "array", - "items": { - "$ref": "GoogleCloudVisionV1p1beta1Block" - }, - "description": "List of blocks of text, images etc on this page." - }, - "property": { - "description": "Additional information detected on the page.", - "$ref": "GoogleCloudVisionV1p1beta1TextAnnotationTextProperty" - } - }, - "id": "GoogleCloudVisionV1p1beta1Page" - }, - "GoogleCloudVisionV1p1beta1Block": { - "id": "GoogleCloudVisionV1p1beta1Block", - "description": "Logical element on the page.", - "type": "object", - "properties": { - "property": { - "description": "Additional information detected for the block.", - "$ref": "GoogleCloudVisionV1p1beta1TextAnnotationTextProperty" - }, - "blockType": { - "description": "Detected block type (text, image etc) for this block.", - "type": "string", - "enumDescriptions": [ - "Unknown block type.", - "Regular text block.", - "Table block.", - "Image block.", - "Horizontal/vertical line box.", - "Barcode block." - ], - "enum": [ - "UNKNOWN", - "TEXT", - "TABLE", - "PICTURE", - "RULER", - "BARCODE" - ] - }, - "boundingBox": { - "description": "The bounding box for the block.\nThe vertices are in the order of top-left, top-right, bottom-right,\nbottom-left. When a rotation of the bounding box is detected the rotation\nis represented as around the top-left corner as defined when the text is\nread in the 'natural' orientation.\nFor example:\n\n* when the text is horizontal it might look like:\n\n 0----1\n | |\n 3----2\n\n* when it's rotated 180 degrees around the top-left corner it becomes:\n\n 2----3\n | |\n 1----0\n\n and the vertice order will still be (0, 1, 2, 3).", - "$ref": "GoogleCloudVisionV1p1beta1BoundingPoly" - }, - "confidence": { - "description": "Confidence of the OCR results on the block. Range [0, 1].", - "format": "float", - "type": "number" - }, - "paragraphs": { - "description": "List of paragraphs in this block (if this blocks is of type text).", - "type": "array", - "items": { - "$ref": "GoogleCloudVisionV1p1beta1Paragraph" - } - } - } - }, - "GoogleCloudVisionV1p1beta1Paragraph": { - "description": "Structural unit of text representing a number of words in certain order.", - "type": "object", - "properties": { - "property": { - "$ref": "GoogleCloudVisionV1p1beta1TextAnnotationTextProperty", - "description": "Additional information detected for the paragraph." - }, - "boundingBox": { - "$ref": "GoogleCloudVisionV1p1beta1BoundingPoly", - "description": "The bounding box for the paragraph.\nThe vertices are in the order of top-left, top-right, bottom-right,\nbottom-left. When a rotation of the bounding box is detected the rotation\nis represented as around the top-left corner as defined when the text is\nread in the 'natural' orientation.\nFor example:\n * when the text is horizontal it might look like:\n 0----1\n | |\n 3----2\n * when it's rotated 180 degrees around the top-left corner it becomes:\n 2----3\n | |\n 1----0\n and the vertice order will still be (0, 1, 2, 3)." - }, - "confidence": { - "description": "Confidence of the OCR results for the paragraph. Range [0, 1].", - "format": "float", - "type": "number" - }, - "words": { - "description": "List of words in this paragraph.", - "type": "array", - "items": { - "$ref": "GoogleCloudVisionV1p1beta1Word" - } - } - }, - "id": "GoogleCloudVisionV1p1beta1Paragraph" - }, - "GoogleCloudVisionV1p1beta1EntityAnnotation": { - "type": "object", - "properties": { - "locations": { - "description": "The location information for the detected entity. Multiple\n`LocationInfo` elements can be present because one location may\nindicate the location of the scene in the image, and another location\nmay indicate the location of the place where the image was taken.\nLocation information is usually present for landmarks.", - "type": "array", - "items": { - "$ref": "GoogleCloudVisionV1p1beta1LocationInfo" - } - }, - "mid": { - "description": "Opaque entity ID. Some IDs may be available in\n[Google Knowledge Graph Search\nAPI](https://developers.google.com/knowledge-graph/).", - "type": "string" - }, - "confidence": { - "description": "**Deprecated. Use `score` instead.**\nThe accuracy of the entity detection in an image.\nFor example, for an image in which the \"Eiffel Tower\" entity is detected,\nthis field represents the confidence that there is a tower in the query\nimage. Range [0, 1].", - "format": "float", - "type": "number" - }, - "boundingPoly": { - "$ref": "GoogleCloudVisionV1p1beta1BoundingPoly", - "description": "Image region to which this entity belongs. Not produced\nfor `LABEL_DETECTION` features." - }, - "locale": { - "description": "The language code for the locale in which the entity textual\n`description` is expressed.", - "type": "string" - }, - "description": { - "description": "Entity textual description, expressed in its `locale` language.", - "type": "string" - }, - "topicality": { - "type": "number", - "description": "The relevancy of the ICA (Image Content Annotation) label to the\nimage. For example, the relevancy of \"tower\" is likely higher to an image\ncontaining the detected \"Eiffel Tower\" than to an image containing a\ndetected distant towering building, even though the confidence that\nthere is a tower in each image may be the same. Range [0, 1].", - "format": "float" - }, - "properties": { - "description": "Some entities may have optional user-supplied `Property` (name/value)\nfields, such a score or string that qualifies the entity.", - "type": "array", - "items": { - "$ref": "GoogleCloudVisionV1p1beta1Property" - } - }, - "score": { - "description": "Overall score of the result. Range [0, 1].", - "format": "float", - "type": "number" - } - }, - "id": "GoogleCloudVisionV1p1beta1EntityAnnotation", - "description": "Set of detected entity features." - }, - "GoogleCloudVisionV1p1beta1TextAnnotation": { - "description": "TextAnnotation contains a structured representation of OCR extracted text.\nThe hierarchy of an OCR extracted text structure is like this:\n TextAnnotation -\u003e Page -\u003e Block -\u003e Paragraph -\u003e Word -\u003e Symbol\nEach structural component, starting from Page, may further have their own\nproperties. Properties describe detected languages, breaks etc.. Please refer\nto the TextAnnotation.TextProperty message definition below for more\ndetail.", - "type": "object", - "properties": { - "pages": { - "description": "List of pages detected by OCR.", - "type": "array", - "items": { - "$ref": "GoogleCloudVisionV1p1beta1Page" - } - }, - "text": { - "type": "string", - "description": "UTF-8 text detected on the pages." - } - }, - "id": "GoogleCloudVisionV1p1beta1TextAnnotation" - }, - "GoogleCloudVisionV1p1beta1BoundingPoly": { - "description": "A bounding polygon for the detected image annotation.", - "type": "object", - "properties": { - "vertices": { - "description": "The bounding polygon vertices.", - "type": "array", - "items": { - "$ref": "GoogleCloudVisionV1p1beta1Vertex" - } - } - }, - "id": "GoogleCloudVisionV1p1beta1BoundingPoly" - }, - "GoogleCloudVisionV1p1beta1TextAnnotationTextProperty": { - "properties": { - "detectedBreak": { - "description": "Detected start or end of a text segment.", - "$ref": "GoogleCloudVisionV1p1beta1TextAnnotationDetectedBreak" - }, - "detectedLanguages": { - "description": "A list of detected languages together with confidence.", - "type": "array", - "items": { - "$ref": "GoogleCloudVisionV1p1beta1TextAnnotationDetectedLanguage" - } - } - }, - "id": "GoogleCloudVisionV1p1beta1TextAnnotationTextProperty", - "description": "Additional information detected on the structural component.", "type": "object" }, - "GoogleCloudVisionV1p1beta1LocationInfo": { - "description": "Detected entity location information.", - "type": "object", - "properties": { - "latLng": { - "$ref": "LatLng", - "description": "lat/long location coordinates." - } - }, - "id": "GoogleCloudVisionV1p1beta1LocationInfo" - }, - "GoogleCloudVisionV1p1beta1BatchAnnotateImagesRequest": { - "properties": { - "requests": { - "description": "Individual image annotation requests for this batch.", - "type": "array", - "items": { - "$ref": "GoogleCloudVisionV1p1beta1AnnotateImageRequest" - } - } - }, - "id": "GoogleCloudVisionV1p1beta1BatchAnnotateImagesRequest", - "description": "Multiple image annotation requests are batched into a single service call.", - "type": "object" - }, - "GoogleCloudVisionV1p1beta1WebDetectionParams": { - "description": "Parameters for web detection request.", - "type": "object", - "properties": { - "includeGeoResults": { - "description": "Whether to include results derived from the geo information in the image.", - "type": "boolean" - } - }, - "id": "GoogleCloudVisionV1p1beta1WebDetectionParams" - }, - "GoogleCloudVisionV1p1beta1CropHintsParams": { - "description": "Parameters for crop hints annotation request.", - "type": "object", - "properties": { - "aspectRatios": { - "description": "Aspect ratios in floats, representing the ratio of the width to the height\nof the image. For example, if the desired aspect ratio is 4/3, the\ncorresponding float value should be 1.33333. If not specified, the\nbest possible crop is returned. The number of provided aspect ratios is\nlimited to a maximum of 16; any aspect ratios provided after the 16th are\nignored.", - "type": "array", - "items": { - "format": "float", - "type": "number" - } - } - }, - "id": "GoogleCloudVisionV1p1beta1CropHintsParams" - }, - "GoogleCloudVisionV1p1beta1Word": { - "id": "GoogleCloudVisionV1p1beta1Word", - "description": "A word representation.", - "type": "object", - "properties": { - "property": { - "$ref": "GoogleCloudVisionV1p1beta1TextAnnotationTextProperty", - "description": "Additional information detected for the word." - }, - "boundingBox": { - "$ref": "GoogleCloudVisionV1p1beta1BoundingPoly", - "description": "The bounding box for the word.\nThe vertices are in the order of top-left, top-right, bottom-right,\nbottom-left. When a rotation of the bounding box is detected the rotation\nis represented as around the top-left corner as defined when the text is\nread in the 'natural' orientation.\nFor example:\n * when the text is horizontal it might look like:\n 0----1\n | |\n 3----2\n * when it's rotated 180 degrees around the top-left corner it becomes:\n 2----3\n | |\n 1----0\n and the vertice order will still be (0, 1, 2, 3)." - }, - "confidence": { - "description": "Confidence of the OCR results for the word. Range [0, 1].", - "format": "float", - "type": "number" - }, - "symbols": { - "description": "List of symbols in the word.\nThe order of the symbols follows the natural reading order.", - "type": "array", - "items": { - "$ref": "GoogleCloudVisionV1p1beta1Symbol" - } - } - } - }, - "Status": { - "description": "The `Status` type defines a logical error model that is suitable for different\nprogramming environments, including REST APIs and RPC APIs. It is used by\n[gRPC](https://github.com/grpc). The error model is designed to be:\n\n- Simple to use and understand for most users\n- Flexible enough to meet unexpected needs\n\n# Overview\n\nThe `Status` message contains three pieces of data: error code, error message,\nand error details. The error code should be an enum value of\ngoogle.rpc.Code, but it may accept additional error codes if needed. The\nerror message should be a developer-facing English message that helps\ndevelopers *understand* and *resolve* the error. If a localized user-facing\nerror message is needed, put the localized message in the error details or\nlocalize it in the client. The optional error details may contain arbitrary\ninformation about the error. There is a predefined set of error detail types\nin the package `google.rpc` that can be used for common error conditions.\n\n# Language mapping\n\nThe `Status` message is the logical representation of the error model, but it\nis not necessarily the actual wire format. When the `Status` message is\nexposed in different client libraries and different wire protocols, it can be\nmapped differently. For example, it will likely be mapped to some exceptions\nin Java, but more likely mapped to some error codes in C.\n\n# Other uses\n\nThe error model and the `Status` message can be used in a variety of\nenvironments, either with or without APIs, to provide a\nconsistent developer experience across different environments.\n\nExample uses of this error model include:\n\n- Partial errors. If a service needs to return partial errors to the client,\n it may embed the `Status` in the normal response to indicate the partial\n errors.\n\n- Workflow errors. A typical workflow has multiple steps. Each step may\n have a `Status` message for error reporting.\n\n- Batch operations. If a client uses batch request and batch response, the\n `Status` message should be used directly inside batch response, one for\n each error sub-response.\n\n- Asynchronous operations. If an API call embeds asynchronous operation\n results in its response, the status of those operations should be\n represented directly using the `Status` message.\n\n- Logging. If some API errors are stored in logs, the message `Status` could\n be used directly after any stripping needed for security/privacy reasons.", - "type": "object", - "properties": { - "code": { - "description": "The status code, which should be an enum value of google.rpc.Code.", - "format": "int32", - "type": "integer" - }, - "message": { - "description": "A developer-facing error message, which should be in English. Any\nuser-facing error message should be localized and sent in the\ngoogle.rpc.Status.details field, or localized by the client.", - "type": "string" - }, - "details": { - "description": "A list of messages that carry the error details. There is a common set of\nmessage types for APIs to use.", - "type": "array", - "items": { - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - }, - "type": "object" - } - } - }, - "id": "Status" - }, - "GoogleCloudVisionV1p1beta1ImageSource": { - "type": "object", - "properties": { - "gcsImageUri": { - "description": "**Use `image_uri` instead.**\n\nThe Google Cloud Storage URI of the form\n`gs://bucket_name/object_name`. Object versioning is not supported. See\n[Google Cloud Storage Request\nURIs](https://cloud.google.com/storage/docs/reference-uris) for more info.", - "type": "string" - }, - "imageUri": { - "description": "The URI of the source image. Can be either:\n\n1. A Google Cloud Storage URI of the form\n `gs://bucket_name/object_name`. Object versioning is not supported. See\n [Google Cloud Storage Request\n URIs](https://cloud.google.com/storage/docs/reference-uris) for more\n info.\n\n2. A publicly-accessible image HTTP/HTTPS URL. When fetching images from\n HTTP/HTTPS URLs, Google cannot guarantee that the request will be\n completed. Your request may fail if the specified host denies the\n request (e.g. due to request throttling or DOS prevention), or if Google\n throttles requests to the site for abuse prevention. You should not\n depend on externally-hosted images for production applications.\n\nWhen both `gcs_image_uri` and `image_uri` are specified, `image_uri` takes\nprecedence.", - "type": "string" - } - }, - "id": "GoogleCloudVisionV1p1beta1ImageSource", - "description": "External image source (Google Cloud Storage or web URL image location)." - }, - "GoogleCloudVisionV1p1beta1LatLongRect": { - "description": "Rectangle determined by min and max `LatLng` pairs.", - "type": "object", - "properties": { - "minLatLng": { - "$ref": "LatLng", - "description": "Min lat/long pair." - }, - "maxLatLng": { - "description": "Max lat/long pair.", - "$ref": "LatLng" - } - }, - "id": "GoogleCloudVisionV1p1beta1LatLongRect" - }, - "GoogleCloudVisionV1p1beta1Vertex": { - "properties": { - "y": { - "description": "Y coordinate.", - "format": "int32", - "type": "integer" - }, - "x": { - "description": "X coordinate.", - "format": "int32", - "type": "integer" - } - }, - "id": "GoogleCloudVisionV1p1beta1Vertex", - "description": "A vertex represents a 2D point in the image.\nNOTE: the vertex coordinates are in the same scale as the original image.", - "type": "object" - }, - "GoogleCloudVisionV1p1beta1DominantColorsAnnotation": { - "properties": { - "colors": { - "type": "array", - "items": { - "$ref": "GoogleCloudVisionV1p1beta1ColorInfo" - }, - "description": "RGB color values with their score and pixel fraction." - } - }, - "id": "GoogleCloudVisionV1p1beta1DominantColorsAnnotation", - "description": "Set of dominant colors and their corresponding scores.", - "type": "object" - }, - "GoogleCloudVisionV1p1beta1WebDetectionWebPage": { - "description": "Metadata for web pages.", - "type": "object", - "properties": { - "score": { - "type": "number", - "description": "(Deprecated) Overall relevancy score for the web page.", - "format": "float" - }, - "partialMatchingImages": { - "description": "Partial matching images on the page.\nThose images are similar enough to share some key-point features. For\nexample an original image will likely have partial matching for its\ncrops.", - "type": "array", - "items": { - "$ref": "GoogleCloudVisionV1p1beta1WebDetectionWebImage" - } - }, - "url": { - "type": "string", - "description": "The result web page URL." - }, - "pageTitle": { - "description": "Title for the web page, may contain HTML markups.", - "type": "string" - }, - "fullMatchingImages": { - "description": "Fully matching images on the page.\nCan include resized copies of the query image.", - "type": "array", - "items": { - "$ref": "GoogleCloudVisionV1p1beta1WebDetectionWebImage" - } - } - }, - "id": "GoogleCloudVisionV1p1beta1WebDetectionWebPage" - }, - "GoogleCloudVisionV1p1beta1CropHint": { - "description": "Single crop hint that is used to generate a new crop when serving an image.", - "type": "object", - "properties": { - "confidence": { - "description": "Confidence of this being a salient region. Range [0, 1].", - "format": "float", - "type": "number" - }, - "importanceFraction": { - "description": "Fraction of importance of this salient region with respect to the original\nimage.", - "format": "float", - "type": "number" - }, - "boundingPoly": { - "$ref": "GoogleCloudVisionV1p1beta1BoundingPoly", - "description": "The bounding polygon for the crop region. The coordinates of the bounding\nbox are in the original image's scale, as returned in `ImageParams`." - } - }, - "id": "GoogleCloudVisionV1p1beta1CropHint" - }, "GoogleCloudVisionV1p1beta1Feature": { "description": "The type of Google Cloud Vision API detection to perform, and the maximum\nnumber of results to return for that type. Multiple `Feature` objects can\nbe specified in the `features` list.", - "type": "object", + "id": "GoogleCloudVisionV1p1beta1Feature", "properties": { + "maxResults": { + "description": "Maximum number of results of this type. Does not apply to\n`TEXT_DETECTION`, `DOCUMENT_TEXT_DETECTION`, or `CROP_HINTS`.", + "format": "int32", + "type": "integer" + }, "model": { - "type": "string", - "description": "Model to use for the feature.\nSupported values: \"builtin/stable\" (the default if unset) and\n\"builtin/latest\"." + "description": "Model to use for the feature.\nSupported values: \"builtin/stable\" (the default if unset) and\n\"builtin/latest\".", + "type": "string" }, "type": { + "description": "The feature type.", "enum": [ "TYPE_UNSPECIFIED", "FACE_DETECTION", @@ -1213,8 +790,6 @@ "CROP_HINTS", "WEB_DETECTION" ], - "description": "The feature type.", - "type": "string", "enumDescriptions": [ "Unspecified feature type.", "Run face detection.", @@ -1227,19 +802,701 @@ "Compute a set of image properties, such as the\nimage's dominant colors.", "Run crop hints.", "Run web detection." - ] + ], + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudVisionV1p1beta1Image": { + "description": "Client image to perform Google Cloud Vision API tasks over.", + "id": "GoogleCloudVisionV1p1beta1Image", + "properties": { + "content": { + "description": "Image content, represented as a stream of bytes.\nNote: As with all `bytes` fields, protobuffers use a pure binary\nrepresentation, whereas JSON representations use base64.", + "format": "byte", + "type": "string" }, - "maxResults": { - "description": "Maximum number of results of this type. Does not apply to\n`TEXT_DETECTION`, `DOCUMENT_TEXT_DETECTION`, or `CROP_HINTS`.", + "source": { + "$ref": "GoogleCloudVisionV1p1beta1ImageSource", + "description": "Google Cloud Storage image location, or publicly-accessible image\nURL. If both `content` and `source` are provided for an image, `content`\ntakes precedence and is used to perform the image annotation request." + } + }, + "type": "object" + }, + "GoogleCloudVisionV1p1beta1ImageContext": { + "description": "Image context and/or feature-specific parameters.", + "id": "GoogleCloudVisionV1p1beta1ImageContext", + "properties": { + "cropHintsParams": { + "$ref": "GoogleCloudVisionV1p1beta1CropHintsParams", + "description": "Parameters for crop hints annotation request." + }, + "languageHints": { + "description": "List of languages to use for TEXT_DETECTION. In most cases, an empty value\nyields the best results since it enables automatic language detection. For\nlanguages based on the Latin alphabet, setting `language_hints` is not\nneeded. In rare cases, when the language of the text in the image is known,\nsetting a hint will help get better results (although it will be a\nsignificant hindrance if the hint is wrong). Text detection returns an\nerror if one or more of the specified languages is not one of the\n[supported languages](/vision/docs/languages).", + "items": { + "type": "string" + }, + "type": "array" + }, + "latLongRect": { + "$ref": "GoogleCloudVisionV1p1beta1LatLongRect", + "description": "Not used." + }, + "webDetectionParams": { + "$ref": "GoogleCloudVisionV1p1beta1WebDetectionParams", + "description": "Parameters for web detection." + } + }, + "type": "object" + }, + "GoogleCloudVisionV1p1beta1ImageProperties": { + "description": "Stores image properties, such as dominant colors.", + "id": "GoogleCloudVisionV1p1beta1ImageProperties", + "properties": { + "dominantColors": { + "$ref": "GoogleCloudVisionV1p1beta1DominantColorsAnnotation", + "description": "If present, dominant colors completed successfully." + } + }, + "type": "object" + }, + "GoogleCloudVisionV1p1beta1ImageSource": { + "description": "External image source (Google Cloud Storage or web URL image location).", + "id": "GoogleCloudVisionV1p1beta1ImageSource", + "properties": { + "gcsImageUri": { + "description": "**Use `image_uri` instead.**\n\nThe Google Cloud Storage URI of the form\n`gs://bucket_name/object_name`. Object versioning is not supported. See\n[Google Cloud Storage Request\nURIs](https://cloud.google.com/storage/docs/reference-uris) for more info.", + "type": "string" + }, + "imageUri": { + "description": "The URI of the source image. Can be either:\n\n1. A Google Cloud Storage URI of the form\n `gs://bucket_name/object_name`. Object versioning is not supported. See\n [Google Cloud Storage Request\n URIs](https://cloud.google.com/storage/docs/reference-uris) for more\n info.\n\n2. A publicly-accessible image HTTP/HTTPS URL. When fetching images from\n HTTP/HTTPS URLs, Google cannot guarantee that the request will be\n completed. Your request may fail if the specified host denies the\n request (e.g. due to request throttling or DOS prevention), or if Google\n throttles requests to the site for abuse prevention. You should not\n depend on externally-hosted images for production applications.\n\nWhen both `gcs_image_uri` and `image_uri` are specified, `image_uri` takes\nprecedence.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudVisionV1p1beta1LatLongRect": { + "description": "Rectangle determined by min and max `LatLng` pairs.", + "id": "GoogleCloudVisionV1p1beta1LatLongRect", + "properties": { + "maxLatLng": { + "$ref": "LatLng", + "description": "Max lat/long pair." + }, + "minLatLng": { + "$ref": "LatLng", + "description": "Min lat/long pair." + } + }, + "type": "object" + }, + "GoogleCloudVisionV1p1beta1LocationInfo": { + "description": "Detected entity location information.", + "id": "GoogleCloudVisionV1p1beta1LocationInfo", + "properties": { + "latLng": { + "$ref": "LatLng", + "description": "lat/long location coordinates." + } + }, + "type": "object" + }, + "GoogleCloudVisionV1p1beta1Page": { + "description": "Detected page from OCR.", + "id": "GoogleCloudVisionV1p1beta1Page", + "properties": { + "blocks": { + "description": "List of blocks of text, images etc on this page.", + "items": { + "$ref": "GoogleCloudVisionV1p1beta1Block" + }, + "type": "array" + }, + "confidence": { + "description": "Confidence of the OCR results on the page. Range [0, 1].", + "format": "float", + "type": "number" + }, + "height": { + "description": "Page height. For PDFs the unit is points. For images (including\nTIFFs) the unit is pixels.", + "format": "int32", + "type": "integer" + }, + "property": { + "$ref": "GoogleCloudVisionV1p1beta1TextAnnotationTextProperty", + "description": "Additional information detected on the page." + }, + "width": { + "description": "Page width. For PDFs the unit is points. For images (including\nTIFFs) the unit is pixels.", "format": "int32", "type": "integer" } }, - "id": "GoogleCloudVisionV1p1beta1Feature" + "type": "object" + }, + "GoogleCloudVisionV1p1beta1Paragraph": { + "description": "Structural unit of text representing a number of words in certain order.", + "id": "GoogleCloudVisionV1p1beta1Paragraph", + "properties": { + "boundingBox": { + "$ref": "GoogleCloudVisionV1p1beta1BoundingPoly", + "description": "The bounding box for the paragraph.\nThe vertices are in the order of top-left, top-right, bottom-right,\nbottom-left. When a rotation of the bounding box is detected the rotation\nis represented as around the top-left corner as defined when the text is\nread in the 'natural' orientation.\nFor example:\n * when the text is horizontal it might look like:\n 0----1\n | |\n 3----2\n * when it's rotated 180 degrees around the top-left corner it becomes:\n 2----3\n | |\n 1----0\n and the vertice order will still be (0, 1, 2, 3)." + }, + "confidence": { + "description": "Confidence of the OCR results for the paragraph. Range [0, 1].", + "format": "float", + "type": "number" + }, + "property": { + "$ref": "GoogleCloudVisionV1p1beta1TextAnnotationTextProperty", + "description": "Additional information detected for the paragraph." + }, + "words": { + "description": "List of words in this paragraph.", + "items": { + "$ref": "GoogleCloudVisionV1p1beta1Word" + }, + "type": "array" + } + }, + "type": "object" + }, + "GoogleCloudVisionV1p1beta1Position": { + "description": "A 3D position in the image, used primarily for Face detection landmarks.\nA valid Position must have both x and y coordinates.\nThe position coordinates are in the same scale as the original image.", + "id": "GoogleCloudVisionV1p1beta1Position", + "properties": { + "x": { + "description": "X coordinate.", + "format": "float", + "type": "number" + }, + "y": { + "description": "Y coordinate.", + "format": "float", + "type": "number" + }, + "z": { + "description": "Z coordinate (or depth).", + "format": "float", + "type": "number" + } + }, + "type": "object" + }, + "GoogleCloudVisionV1p1beta1Property": { + "description": "A `Property` consists of a user-supplied name/value pair.", + "id": "GoogleCloudVisionV1p1beta1Property", + "properties": { + "name": { + "description": "Name of the property.", + "type": "string" + }, + "uint64Value": { + "description": "Value of numeric properties.", + "format": "uint64", + "type": "string" + }, + "value": { + "description": "Value of the property.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudVisionV1p1beta1SafeSearchAnnotation": { + "description": "Set of features pertaining to the image, computed by computer vision\nmethods over safe-search verticals (for example, adult, spoof, medical,\nviolence).", + "id": "GoogleCloudVisionV1p1beta1SafeSearchAnnotation", + "properties": { + "adult": { + "description": "Represents the adult content likelihood for the image. Adult content may\ncontain elements such as nudity, pornographic images or cartoons, or\nsexual activities.", + "enum": [ + "UNKNOWN", + "VERY_UNLIKELY", + "UNLIKELY", + "POSSIBLE", + "LIKELY", + "VERY_LIKELY" + ], + "enumDescriptions": [ + "Unknown likelihood.", + "It is very unlikely that the image belongs to the specified vertical.", + "It is unlikely that the image belongs to the specified vertical.", + "It is possible that the image belongs to the specified vertical.", + "It is likely that the image belongs to the specified vertical.", + "It is very likely that the image belongs to the specified vertical." + ], + "type": "string" + }, + "medical": { + "description": "Likelihood that this is a medical image.", + "enum": [ + "UNKNOWN", + "VERY_UNLIKELY", + "UNLIKELY", + "POSSIBLE", + "LIKELY", + "VERY_LIKELY" + ], + "enumDescriptions": [ + "Unknown likelihood.", + "It is very unlikely that the image belongs to the specified vertical.", + "It is unlikely that the image belongs to the specified vertical.", + "It is possible that the image belongs to the specified vertical.", + "It is likely that the image belongs to the specified vertical.", + "It is very likely that the image belongs to the specified vertical." + ], + "type": "string" + }, + "racy": { + "description": "Likelihood that the request image contains racy content. Racy content may\ninclude (but is not limited to) skimpy or sheer clothing, strategically\ncovered nudity, lewd or provocative poses, or close-ups of sensitive\nbody areas.", + "enum": [ + "UNKNOWN", + "VERY_UNLIKELY", + "UNLIKELY", + "POSSIBLE", + "LIKELY", + "VERY_LIKELY" + ], + "enumDescriptions": [ + "Unknown likelihood.", + "It is very unlikely that the image belongs to the specified vertical.", + "It is unlikely that the image belongs to the specified vertical.", + "It is possible that the image belongs to the specified vertical.", + "It is likely that the image belongs to the specified vertical.", + "It is very likely that the image belongs to the specified vertical." + ], + "type": "string" + }, + "spoof": { + "description": "Spoof likelihood. The likelihood that an modification\nwas made to the image's canonical version to make it appear\nfunny or offensive.", + "enum": [ + "UNKNOWN", + "VERY_UNLIKELY", + "UNLIKELY", + "POSSIBLE", + "LIKELY", + "VERY_LIKELY" + ], + "enumDescriptions": [ + "Unknown likelihood.", + "It is very unlikely that the image belongs to the specified vertical.", + "It is unlikely that the image belongs to the specified vertical.", + "It is possible that the image belongs to the specified vertical.", + "It is likely that the image belongs to the specified vertical.", + "It is very likely that the image belongs to the specified vertical." + ], + "type": "string" + }, + "violence": { + "description": "Likelihood that this image contains violent content.", + "enum": [ + "UNKNOWN", + "VERY_UNLIKELY", + "UNLIKELY", + "POSSIBLE", + "LIKELY", + "VERY_LIKELY" + ], + "enumDescriptions": [ + "Unknown likelihood.", + "It is very unlikely that the image belongs to the specified vertical.", + "It is unlikely that the image belongs to the specified vertical.", + "It is possible that the image belongs to the specified vertical.", + "It is likely that the image belongs to the specified vertical.", + "It is very likely that the image belongs to the specified vertical." + ], + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudVisionV1p1beta1Symbol": { + "description": "A single symbol representation.", + "id": "GoogleCloudVisionV1p1beta1Symbol", + "properties": { + "boundingBox": { + "$ref": "GoogleCloudVisionV1p1beta1BoundingPoly", + "description": "The bounding box for the symbol.\nThe vertices are in the order of top-left, top-right, bottom-right,\nbottom-left. When a rotation of the bounding box is detected the rotation\nis represented as around the top-left corner as defined when the text is\nread in the 'natural' orientation.\nFor example:\n * when the text is horizontal it might look like:\n 0----1\n | |\n 3----2\n * when it's rotated 180 degrees around the top-left corner it becomes:\n 2----3\n | |\n 1----0\n and the vertice order will still be (0, 1, 2, 3)." + }, + "confidence": { + "description": "Confidence of the OCR results for the symbol. Range [0, 1].", + "format": "float", + "type": "number" + }, + "property": { + "$ref": "GoogleCloudVisionV1p1beta1TextAnnotationTextProperty", + "description": "Additional information detected for the symbol." + }, + "text": { + "description": "The actual UTF-8 representation of the symbol.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudVisionV1p1beta1TextAnnotation": { + "description": "TextAnnotation contains a structured representation of OCR extracted text.\nThe hierarchy of an OCR extracted text structure is like this:\n TextAnnotation -\u003e Page -\u003e Block -\u003e Paragraph -\u003e Word -\u003e Symbol\nEach structural component, starting from Page, may further have their own\nproperties. Properties describe detected languages, breaks etc.. Please refer\nto the TextAnnotation.TextProperty message definition below for more\ndetail.", + "id": "GoogleCloudVisionV1p1beta1TextAnnotation", + "properties": { + "pages": { + "description": "List of pages detected by OCR.", + "items": { + "$ref": "GoogleCloudVisionV1p1beta1Page" + }, + "type": "array" + }, + "text": { + "description": "UTF-8 text detected on the pages.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudVisionV1p1beta1TextAnnotationDetectedBreak": { + "description": "Detected start or end of a structural component.", + "id": "GoogleCloudVisionV1p1beta1TextAnnotationDetectedBreak", + "properties": { + "isPrefix": { + "description": "True if break prepends the element.", + "type": "boolean" + }, + "type": { + "description": "Detected break type.", + "enum": [ + "UNKNOWN", + "SPACE", + "SURE_SPACE", + "EOL_SURE_SPACE", + "HYPHEN", + "LINE_BREAK" + ], + "enumDescriptions": [ + "Unknown break label type.", + "Regular space.", + "Sure space (very wide).", + "Line-wrapping break.", + "End-line hyphen that is not present in text; does not co-occur with\n`SPACE`, `LEADER_SPACE`, or `LINE_BREAK`.", + "Line break that ends a paragraph." + ], + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudVisionV1p1beta1TextAnnotationDetectedLanguage": { + "description": "Detected language for a structural component.", + "id": "GoogleCloudVisionV1p1beta1TextAnnotationDetectedLanguage", + "properties": { + "confidence": { + "description": "Confidence of detected language. Range [0, 1].", + "format": "float", + "type": "number" + }, + "languageCode": { + "description": "The BCP-47 language code, such as \"en-US\" or \"sr-Latn\". For more\ninformation, see\nhttp://www.unicode.org/reports/tr35/#Unicode_locale_identifier.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudVisionV1p1beta1TextAnnotationTextProperty": { + "description": "Additional information detected on the structural component.", + "id": "GoogleCloudVisionV1p1beta1TextAnnotationTextProperty", + "properties": { + "detectedBreak": { + "$ref": "GoogleCloudVisionV1p1beta1TextAnnotationDetectedBreak", + "description": "Detected start or end of a text segment." + }, + "detectedLanguages": { + "description": "A list of detected languages together with confidence.", + "items": { + "$ref": "GoogleCloudVisionV1p1beta1TextAnnotationDetectedLanguage" + }, + "type": "array" + } + }, + "type": "object" + }, + "GoogleCloudVisionV1p1beta1Vertex": { + "description": "A vertex represents a 2D point in the image.\nNOTE: the vertex coordinates are in the same scale as the original image.", + "id": "GoogleCloudVisionV1p1beta1Vertex", + "properties": { + "x": { + "description": "X coordinate.", + "format": "int32", + "type": "integer" + }, + "y": { + "description": "Y coordinate.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "GoogleCloudVisionV1p1beta1WebDetection": { + "description": "Relevant information for the image from the Internet.", + "id": "GoogleCloudVisionV1p1beta1WebDetection", + "properties": { + "bestGuessLabels": { + "description": "Best guess text labels for the request image.", + "items": { + "$ref": "GoogleCloudVisionV1p1beta1WebDetectionWebLabel" + }, + "type": "array" + }, + "fullMatchingImages": { + "description": "Fully matching images from the Internet.\nCan include resized copies of the query image.", + "items": { + "$ref": "GoogleCloudVisionV1p1beta1WebDetectionWebImage" + }, + "type": "array" + }, + "pagesWithMatchingImages": { + "description": "Web pages containing the matching images from the Internet.", + "items": { + "$ref": "GoogleCloudVisionV1p1beta1WebDetectionWebPage" + }, + "type": "array" + }, + "partialMatchingImages": { + "description": "Partial matching images from the Internet.\nThose images are similar enough to share some key-point features. For\nexample an original image will likely have partial matching for its crops.", + "items": { + "$ref": "GoogleCloudVisionV1p1beta1WebDetectionWebImage" + }, + "type": "array" + }, + "visuallySimilarImages": { + "description": "The visually similar image results.", + "items": { + "$ref": "GoogleCloudVisionV1p1beta1WebDetectionWebImage" + }, + "type": "array" + }, + "webEntities": { + "description": "Deduced entities from similar images on the Internet.", + "items": { + "$ref": "GoogleCloudVisionV1p1beta1WebDetectionWebEntity" + }, + "type": "array" + } + }, + "type": "object" + }, + "GoogleCloudVisionV1p1beta1WebDetectionParams": { + "description": "Parameters for web detection request.", + "id": "GoogleCloudVisionV1p1beta1WebDetectionParams", + "properties": { + "includeGeoResults": { + "description": "Whether to include results derived from the geo information in the image.", + "type": "boolean" + } + }, + "type": "object" + }, + "GoogleCloudVisionV1p1beta1WebDetectionWebEntity": { + "description": "Entity deduced from similar images on the Internet.", + "id": "GoogleCloudVisionV1p1beta1WebDetectionWebEntity", + "properties": { + "description": { + "description": "Canonical description of the entity, in English.", + "type": "string" + }, + "entityId": { + "description": "Opaque entity ID.", + "type": "string" + }, + "score": { + "description": "Overall relevancy score for the entity.\nNot normalized and not comparable across different image queries.", + "format": "float", + "type": "number" + } + }, + "type": "object" + }, + "GoogleCloudVisionV1p1beta1WebDetectionWebImage": { + "description": "Metadata for online images.", + "id": "GoogleCloudVisionV1p1beta1WebDetectionWebImage", + "properties": { + "score": { + "description": "(Deprecated) Overall relevancy score for the image.", + "format": "float", + "type": "number" + }, + "url": { + "description": "The result image URL.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudVisionV1p1beta1WebDetectionWebLabel": { + "description": "Label to provide extra metadata for the web detection.", + "id": "GoogleCloudVisionV1p1beta1WebDetectionWebLabel", + "properties": { + "label": { + "description": "Label for extra metadata.", + "type": "string" + }, + "languageCode": { + "description": "The BCP-47 language code for `label`, such as \"en-US\" or \"sr-Latn\".\nFor more information, see\nhttp://www.unicode.org/reports/tr35/#Unicode_locale_identifier.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudVisionV1p1beta1WebDetectionWebPage": { + "description": "Metadata for web pages.", + "id": "GoogleCloudVisionV1p1beta1WebDetectionWebPage", + "properties": { + "fullMatchingImages": { + "description": "Fully matching images on the page.\nCan include resized copies of the query image.", + "items": { + "$ref": "GoogleCloudVisionV1p1beta1WebDetectionWebImage" + }, + "type": "array" + }, + "pageTitle": { + "description": "Title for the web page, may contain HTML markups.", + "type": "string" + }, + "partialMatchingImages": { + "description": "Partial matching images on the page.\nThose images are similar enough to share some key-point features. For\nexample an original image will likely have partial matching for its\ncrops.", + "items": { + "$ref": "GoogleCloudVisionV1p1beta1WebDetectionWebImage" + }, + "type": "array" + }, + "score": { + "description": "(Deprecated) Overall relevancy score for the web page.", + "format": "float", + "type": "number" + }, + "url": { + "description": "The result web page URL.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudVisionV1p1beta1Word": { + "description": "A word representation.", + "id": "GoogleCloudVisionV1p1beta1Word", + "properties": { + "boundingBox": { + "$ref": "GoogleCloudVisionV1p1beta1BoundingPoly", + "description": "The bounding box for the word.\nThe vertices are in the order of top-left, top-right, bottom-right,\nbottom-left. When a rotation of the bounding box is detected the rotation\nis represented as around the top-left corner as defined when the text is\nread in the 'natural' orientation.\nFor example:\n * when the text is horizontal it might look like:\n 0----1\n | |\n 3----2\n * when it's rotated 180 degrees around the top-left corner it becomes:\n 2----3\n | |\n 1----0\n and the vertice order will still be (0, 1, 2, 3)." + }, + "confidence": { + "description": "Confidence of the OCR results for the word. Range [0, 1].", + "format": "float", + "type": "number" + }, + "property": { + "$ref": "GoogleCloudVisionV1p1beta1TextAnnotationTextProperty", + "description": "Additional information detected for the word." + }, + "symbols": { + "description": "List of symbols in the word.\nThe order of the symbols follows the natural reading order.", + "items": { + "$ref": "GoogleCloudVisionV1p1beta1Symbol" + }, + "type": "array" + } + }, + "type": "object" + }, + "GoogleCloudVisionV1p2beta1AsyncAnnotateFileResponse": { + "description": "The response for a single offline file annotation request.", + "id": "GoogleCloudVisionV1p2beta1AsyncAnnotateFileResponse", + "properties": { + "outputConfig": { + "$ref": "GoogleCloudVisionV1p2beta1OutputConfig", + "description": "The output location and metadata from AsyncAnnotateFileRequest." + } + }, + "type": "object" + }, + "GoogleCloudVisionV1p2beta1AsyncBatchAnnotateFilesResponse": { + "description": "Response to an async batch file annotation request.", + "id": "GoogleCloudVisionV1p2beta1AsyncBatchAnnotateFilesResponse", + "properties": { + "responses": { + "description": "The list of file annotation responses, one for each request in\nAsyncBatchAnnotateFilesRequest.", + "items": { + "$ref": "GoogleCloudVisionV1p2beta1AsyncAnnotateFileResponse" + }, + "type": "array" + } + }, + "type": "object" + }, + "GoogleCloudVisionV1p2beta1GcsDestination": { + "description": "The Google Cloud Storage location where the output will be written to.", + "id": "GoogleCloudVisionV1p2beta1GcsDestination", + "properties": { + "uri": { + "description": "Google Cloud Storage URI where the results will be stored. Results will\nbe in JSON format and preceded by its corresponding input URI. This field\ncan either represent a single file, or a prefix for multiple outputs.\nPrefixes must end in a `/`.\n\nExamples:\n\n* File: gs://bucket-name/filename.json\n* Prefix: gs://bucket-name/prefix/here/\n* File: gs://bucket-name/prefix/here\n\nIf multiple outputs, each response is still AnnotateFileResponse, each of\nwhich contains some subset of the full list of AnnotateImageResponse.\nMultiple outputs can happen if, for example, the output JSON is too large\nand overflows into multiple sharded files.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudVisionV1p2beta1OperationMetadata": { + "description": "Contains metadata for the BatchAnnotateImages operation.", + "id": "GoogleCloudVisionV1p2beta1OperationMetadata", + "properties": { + "createTime": { + "description": "The time when the batch request was received.", + "format": "google-datetime", + "type": "string" + }, + "state": { + "description": "Current state of the batch operation.", + "enum": [ + "STATE_UNSPECIFIED", + "CREATED", + "RUNNING", + "DONE", + "CANCELLED" + ], + "enumDescriptions": [ + "Invalid.", + "Request is received.", + "Request is actively being processed.", + "The batch processing is done.", + "The batch processing was cancelled." + ], + "type": "string" + }, + "updateTime": { + "description": "The time when the operation result was last updated.", + "format": "google-datetime", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudVisionV1p2beta1OutputConfig": { + "description": "The desired output location and metadata.", + "id": "GoogleCloudVisionV1p2beta1OutputConfig", + "properties": { + "batchSize": { + "description": "The max number of response protos to put into each output JSON file on GCS.\nThe valid range is [1, 100]. If not specified, the default value is 20.\n\nFor example, for one pdf file with 100 pages, 100 response protos will\nbe generated. If `batch_size` = 20, then 5 json files each\ncontaining 20 response protos will be written under the prefix\n`gcs_destination`.`uri`.\n\nCurrently, batch_size only applies to GcsDestination, with potential future\nsupport for other output configurations.", + "format": "int32", + "type": "integer" + }, + "gcsDestination": { + "$ref": "GoogleCloudVisionV1p2beta1GcsDestination", + "description": "The Google Cloud Storage location to write the output(s) to." + } + }, + "type": "object" }, "LatLng": { "description": "An object representing a latitude/longitude pair. This is expressed as a pair\nof doubles representing degrees latitude and degrees longitude. Unless\nspecified otherwise, this must conform to the\n\u003ca href=\"http://www.unoosa.org/pdf/icg/2012/template/WGS_84.pdf\"\u003eWGS84\nstandard\u003c/a\u003e. Values must be within normalized ranges.", - "type": "object", + "id": "LatLng", "properties": { "latitude": { "description": "The latitude in degrees. It must be in the range [-90.0, +90.0].", @@ -1252,208 +1509,38 @@ "type": "number" } }, - "id": "LatLng" + "type": "object" }, - "Color": { - "description": "Represents a color in the RGBA color space. This representation is designed\nfor simplicity of conversion to/from color representations in various\nlanguages over compactness; for example, the fields of this representation\ncan be trivially provided to the constructor of \"java.awt.Color\" in Java; it\ncan also be trivially provided to UIColor's \"+colorWithRed:green:blue:alpha\"\nmethod in iOS; and, with just a little work, it can be easily formatted into\na CSS \"rgba()\" string in JavaScript, as well. Here are some examples:\n\nExample (Java):\n\n import com.google.type.Color;\n\n // ...\n public static java.awt.Color fromProto(Color protocolor) {\n float alpha = protocolor.hasAlpha()\n ? protocolor.getAlpha().getValue()\n : 1.0;\n\n return new java.awt.Color(\n protocolor.getRed(),\n protocolor.getGreen(),\n protocolor.getBlue(),\n alpha);\n }\n\n public static Color toProto(java.awt.Color color) {\n float red = (float) color.getRed();\n float green = (float) color.getGreen();\n float blue = (float) color.getBlue();\n float denominator = 255.0;\n Color.Builder resultBuilder =\n Color\n .newBuilder()\n .setRed(red / denominator)\n .setGreen(green / denominator)\n .setBlue(blue / denominator);\n int alpha = color.getAlpha();\n if (alpha != 255) {\n result.setAlpha(\n FloatValue\n .newBuilder()\n .setValue(((float) alpha) / denominator)\n .build());\n }\n return resultBuilder.build();\n }\n // ...\n\nExample (iOS / Obj-C):\n\n // ...\n static UIColor* fromProto(Color* protocolor) {\n float red = [protocolor red];\n float green = [protocolor green];\n float blue = [protocolor blue];\n FloatValue* alpha_wrapper = [protocolor alpha];\n float alpha = 1.0;\n if (alpha_wrapper != nil) {\n alpha = [alpha_wrapper value];\n }\n return [UIColor colorWithRed:red green:green blue:blue alpha:alpha];\n }\n\n static Color* toProto(UIColor* color) {\n CGFloat red, green, blue, alpha;\n if (![color getRed:&red green:&green blue:&blue alpha:&alpha]) {\n return nil;\n }\n Color* result = [Color alloc] init];\n [result setRed:red];\n [result setGreen:green];\n [result setBlue:blue];\n if (alpha \u003c= 0.9999) {\n [result setAlpha:floatWrapperWithValue(alpha)];\n }\n [result autorelease];\n return result;\n }\n // ...\n\n Example (JavaScript):\n\n // ...\n\n var protoToCssColor = function(rgb_color) {\n var redFrac = rgb_color.red || 0.0;\n var greenFrac = rgb_color.green || 0.0;\n var blueFrac = rgb_color.blue || 0.0;\n var red = Math.floor(redFrac * 255);\n var green = Math.floor(greenFrac * 255);\n var blue = Math.floor(blueFrac * 255);\n\n if (!('alpha' in rgb_color)) {\n return rgbToCssColor_(red, green, blue);\n }\n\n var alphaFrac = rgb_color.alpha.value || 0.0;\n var rgbParams = [red, green, blue].join(',');\n return ['rgba(', rgbParams, ',', alphaFrac, ')'].join('');\n };\n\n var rgbToCssColor_ = function(red, green, blue) {\n var rgbNumber = new Number((red \u003c\u003c 16) | (green \u003c\u003c 8) | blue);\n var hexString = rgbNumber.toString(16);\n var missingZeros = 6 - hexString.length;\n var resultBuilder = ['#'];\n for (var i = 0; i \u003c missingZeros; i++) {\n resultBuilder.push('0');\n }\n resultBuilder.push(hexString);\n return resultBuilder.join('');\n };\n\n // ...", - "type": "object", + "Status": { + "description": "The `Status` type defines a logical error model that is suitable for different\nprogramming environments, including REST APIs and RPC APIs. It is used by\n[gRPC](https://github.com/grpc). The error model is designed to be:\n\n- Simple to use and understand for most users\n- Flexible enough to meet unexpected needs\n\n# Overview\n\nThe `Status` message contains three pieces of data: error code, error message,\nand error details. The error code should be an enum value of\ngoogle.rpc.Code, but it may accept additional error codes if needed. The\nerror message should be a developer-facing English message that helps\ndevelopers *understand* and *resolve* the error. If a localized user-facing\nerror message is needed, put the localized message in the error details or\nlocalize it in the client. The optional error details may contain arbitrary\ninformation about the error. There is a predefined set of error detail types\nin the package `google.rpc` that can be used for common error conditions.\n\n# Language mapping\n\nThe `Status` message is the logical representation of the error model, but it\nis not necessarily the actual wire format. When the `Status` message is\nexposed in different client libraries and different wire protocols, it can be\nmapped differently. For example, it will likely be mapped to some exceptions\nin Java, but more likely mapped to some error codes in C.\n\n# Other uses\n\nThe error model and the `Status` message can be used in a variety of\nenvironments, either with or without APIs, to provide a\nconsistent developer experience across different environments.\n\nExample uses of this error model include:\n\n- Partial errors. If a service needs to return partial errors to the client,\n it may embed the `Status` in the normal response to indicate the partial\n errors.\n\n- Workflow errors. A typical workflow has multiple steps. Each step may\n have a `Status` message for error reporting.\n\n- Batch operations. If a client uses batch request and batch response, the\n `Status` message should be used directly inside batch response, one for\n each error sub-response.\n\n- Asynchronous operations. If an API call embeds asynchronous operation\n results in its response, the status of those operations should be\n represented directly using the `Status` message.\n\n- Logging. If some API errors are stored in logs, the message `Status` could\n be used directly after any stripping needed for security/privacy reasons.", + "id": "Status", "properties": { - "green": { - "description": "The amount of green in the color as a value in the interval [0, 1].", - "format": "float", - "type": "number" + "code": { + "description": "The status code, which should be an enum value of google.rpc.Code.", + "format": "int32", + "type": "integer" }, - "blue": { - "description": "The amount of blue in the color as a value in the interval [0, 1].", - "format": "float", - "type": "number" - }, - "alpha": { - "description": "The fraction of this color that should be applied to the pixel. That is,\nthe final pixel color is defined by the equation:\n\n pixel color = alpha * (this color) + (1.0 - alpha) * (background color)\n\nThis means that a value of 1.0 corresponds to a solid color, whereas\na value of 0.0 corresponds to a completely transparent color. This\nuses a wrapper message rather than a simple float scalar so that it is\npossible to distinguish between a default value and the value being unset.\nIf omitted, this color object is to be rendered as a solid color\n(as if the alpha value had been explicitly given with a value of 1.0).", - "format": "float", - "type": "number" - }, - "red": { - "description": "The amount of red in the color as a value in the interval [0, 1].", - "format": "float", - "type": "number" - } - }, - "id": "Color" - }, - "GoogleCloudVisionV1p1beta1Position": { - "type": "object", - "properties": { - "x": { - "description": "X coordinate.", - "format": "float", - "type": "number" - }, - "z": { - "type": "number", - "description": "Z coordinate (or depth).", - "format": "float" - }, - "y": { - "description": "Y coordinate.", - "format": "float", - "type": "number" - } - }, - "id": "GoogleCloudVisionV1p1beta1Position", - "description": "A 3D position in the image, used primarily for Face detection landmarks.\nA valid Position must have both x and y coordinates.\nThe position coordinates are in the same scale as the original image." - }, - "GoogleCloudVisionV1p1beta1CropHintsAnnotation": { - "description": "Set of crop hints that are used to generate new crops when serving images.", - "type": "object", - "properties": { - "cropHints": { - "description": "Crop hint results.", - "type": "array", + "details": { + "description": "A list of messages that carry the error details. There is a common set of\nmessage types for APIs to use.", "items": { - "$ref": "GoogleCloudVisionV1p1beta1CropHint" - } + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "A developer-facing error message, which should be in English. Any\nuser-facing error message should be localized and sent in the\ngoogle.rpc.Status.details field, or localized by the client.", + "type": "string" } }, - "id": "GoogleCloudVisionV1p1beta1CropHintsAnnotation" + "type": "object" } }, - "icons": { - "x16": "http://www.google.com/images/icons/product/search-16.gif", - "x32": "http://www.google.com/images/icons/product/search-32.gif" - }, - "protocol": "rest", - "canonicalName": "Vision", - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/cloud-vision": { - "description": "Apply machine learning models to understand and label images" - }, - "https://www.googleapis.com/auth/cloud-platform": { - "description": "View and manage your data across Google Cloud Platform services" - } - } - } - }, - "rootUrl": "https://vision.googleapis.com/", - "ownerDomain": "google.com", - "name": "vision", - "batchPath": "batch", - "fullyEncodeReservedExpansion": true, - "title": "Google Cloud Vision API", - "ownerName": "Google", - "resources": { - "images": { - "methods": { - "annotate": { - "id": "vision.images.annotate", - "path": "v1p1beta1/images:annotate", - "request": { - "$ref": "GoogleCloudVisionV1p1beta1BatchAnnotateImagesRequest" - }, - "description": "Run image detection and annotation for a batch of images.", - "httpMethod": "POST", - "parameterOrder": [], - "response": { - "$ref": "GoogleCloudVisionV1p1beta1BatchAnnotateImagesResponse" - }, - "parameters": {}, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-vision" - ], - "flatPath": "v1p1beta1/images:annotate" - } - } - } - }, - "parameters": { - "uploadType": { - "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", - "type": "string", - "location": "query" - }, - "fields": { - "description": "Selector specifying which fields to include in a partial response.", - "type": "string", - "location": "query" - }, - "$.xgafv": { - "enum": [ - "1", - "2" - ], - "description": "V1 error format.", - "type": "string", - "enumDescriptions": [ - "v1 error format", - "v2 error format" - ], - "location": "query" - }, - "callback": { - "description": "JSONP", - "type": "string", - "location": "query" - }, - "alt": { - "enum": [ - "json", - "media", - "proto" - ], - "type": "string", - "enumDescriptions": [ - "Responses with Content-Type of application/json", - "Media download with context-dependent Content-Type", - "Responses with Content-Type of application/x-protobuf" - ], - "location": "query", - "description": "Data format for response.", - "default": "json" - }, - "key": { - "location": "query", - "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.", - "type": "string" - }, - "access_token": { - "location": "query", - "description": "OAuth access token.", - "type": "string" - }, - "quotaUser": { - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", - "type": "string", - "location": "query" - }, - "pp": { - "description": "Pretty-print response.", - "type": "boolean", - "default": "true", - "location": "query" - }, - "oauth_token": { - "description": "OAuth 2.0 token for the current user.", - "type": "string", - "location": "query" - }, - "bearer_token": { - "type": "string", - "location": "query", - "description": "OAuth bearer token." - }, - "upload_protocol": { - "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", - "type": "string", - "location": "query" - }, - "prettyPrint": { - "description": "Returns response with indentations and line breaks.", - "type": "boolean", - "default": "true", - "location": "query" - } - } -} + "servicePath": "", + "title": "Cloud Vision API", + "version": "v1p1beta1", + "version_module": true +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/vision/v1p1beta1/vision-gen.go b/vendor/google.golang.org/api/vision/v1p1beta1/vision-gen.go index e30452e61..5c12e9252 100644 --- a/vendor/google.golang.org/api/vision/v1p1beta1/vision-gen.go +++ b/vendor/google.golang.org/api/vision/v1p1beta1/vision-gen.go @@ -1,4 +1,4 @@ -// Package vision provides access to the Google Cloud Vision API. +// Package vision provides access to the Cloud Vision API. // // See https://cloud.google.com/vision/ // @@ -1296,8 +1296,7 @@ type GoogleCloudVisionV1p1beta1ImageContext struct { // [supported languages](/vision/docs/languages). LanguageHints []string `json:"languageHints,omitempty"` - // LatLongRect: lat/long rectangle that specifies the location of the - // image. + // LatLongRect: Not used. LatLongRect *GoogleCloudVisionV1p1beta1LatLongRect `json:"latLongRect,omitempty"` // WebDetectionParams: Parameters for web detection. @@ -1490,13 +1489,17 @@ type GoogleCloudVisionV1p1beta1Page struct { // Confidence: Confidence of the OCR results on the page. Range [0, 1]. Confidence float64 `json:"confidence,omitempty"` - // Height: Page height in pixels. + // Height: Page height. For PDFs the unit is points. For images + // (including + // TIFFs) the unit is pixels. Height int64 `json:"height,omitempty"` // Property: Additional information detected on the page. Property *GoogleCloudVisionV1p1beta1TextAnnotationTextProperty `json:"property,omitempty"` - // Width: Page width in pixels. + // Width: Page width. For PDFs the unit is points. For images + // (including + // TIFFs) the unit is pixels. Width int64 `json:"width,omitempty"` // ForceSendFields is a list of field names (e.g. "Blocks") to @@ -2436,6 +2439,205 @@ func (s *GoogleCloudVisionV1p1beta1Word) UnmarshalJSON(data []byte) error { return nil } +// GoogleCloudVisionV1p2beta1AsyncAnnotateFileResponse: The response for +// a single offline file annotation request. +type GoogleCloudVisionV1p2beta1AsyncAnnotateFileResponse struct { + // OutputConfig: The output location and metadata from + // AsyncAnnotateFileRequest. + OutputConfig *GoogleCloudVisionV1p2beta1OutputConfig `json:"outputConfig,omitempty"` + + // ForceSendFields is a list of field names (e.g. "OutputConfig") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "OutputConfig") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudVisionV1p2beta1AsyncAnnotateFileResponse) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudVisionV1p2beta1AsyncAnnotateFileResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudVisionV1p2beta1AsyncBatchAnnotateFilesResponse: Response +// to an async batch file annotation request. +type GoogleCloudVisionV1p2beta1AsyncBatchAnnotateFilesResponse struct { + // Responses: The list of file annotation responses, one for each + // request in + // AsyncBatchAnnotateFilesRequest. + Responses []*GoogleCloudVisionV1p2beta1AsyncAnnotateFileResponse `json:"responses,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Responses") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Responses") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudVisionV1p2beta1AsyncBatchAnnotateFilesResponse) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudVisionV1p2beta1AsyncBatchAnnotateFilesResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudVisionV1p2beta1GcsDestination: The Google Cloud Storage +// location where the output will be written to. +type GoogleCloudVisionV1p2beta1GcsDestination struct { + // Uri: Google Cloud Storage URI where the results will be stored. + // Results will + // be in JSON format and preceded by its corresponding input URI. This + // field + // can either represent a single file, or a prefix for multiple + // outputs. + // Prefixes must end in a `/`. + // + // Examples: + // + // * File: gs://bucket-name/filename.json + // * Prefix: gs://bucket-name/prefix/here/ + // * File: gs://bucket-name/prefix/here + // + // If multiple outputs, each response is still AnnotateFileResponse, + // each of + // which contains some subset of the full list of + // AnnotateImageResponse. + // Multiple outputs can happen if, for example, the output JSON is too + // large + // and overflows into multiple sharded files. + Uri string `json:"uri,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Uri") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Uri") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudVisionV1p2beta1GcsDestination) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudVisionV1p2beta1GcsDestination + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudVisionV1p2beta1OperationMetadata: Contains metadata for +// the BatchAnnotateImages operation. +type GoogleCloudVisionV1p2beta1OperationMetadata struct { + // CreateTime: The time when the batch request was received. + CreateTime string `json:"createTime,omitempty"` + + // State: Current state of the batch operation. + // + // Possible values: + // "STATE_UNSPECIFIED" - Invalid. + // "CREATED" - Request is received. + // "RUNNING" - Request is actively being processed. + // "DONE" - The batch processing is done. + // "CANCELLED" - The batch processing was cancelled. + State string `json:"state,omitempty"` + + // UpdateTime: The time when the operation result was last updated. + UpdateTime string `json:"updateTime,omitempty"` + + // ForceSendFields is a list of field names (e.g. "CreateTime") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "CreateTime") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudVisionV1p2beta1OperationMetadata) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudVisionV1p2beta1OperationMetadata + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudVisionV1p2beta1OutputConfig: The desired output location +// and metadata. +type GoogleCloudVisionV1p2beta1OutputConfig struct { + // BatchSize: The max number of response protos to put into each output + // JSON file on GCS. + // The valid range is [1, 100]. If not specified, the default value is + // 20. + // + // For example, for one pdf file with 100 pages, 100 response protos + // will + // be generated. If `batch_size` = 20, then 5 json files each + // containing 20 response protos will be written under the + // prefix + // `gcs_destination`.`uri`. + // + // Currently, batch_size only applies to GcsDestination, with potential + // future + // support for other output configurations. + BatchSize int64 `json:"batchSize,omitempty"` + + // GcsDestination: The Google Cloud Storage location to write the + // output(s) to. + GcsDestination *GoogleCloudVisionV1p2beta1GcsDestination `json:"gcsDestination,omitempty"` + + // ForceSendFields is a list of field names (e.g. "BatchSize") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "BatchSize") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudVisionV1p2beta1OutputConfig) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudVisionV1p2beta1OutputConfig + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // LatLng: An object representing a latitude/longitude pair. This is // expressed as a pair // of doubles representing degrees latitude and degrees longitude. diff --git a/vendor/google.golang.org/api/vision/v1p2beta1/vision-api.json b/vendor/google.golang.org/api/vision/v1p2beta1/vision-api.json new file mode 100644 index 000000000..300e4b1ee --- /dev/null +++ b/vendor/google.golang.org/api/vision/v1p2beta1/vision-api.json @@ -0,0 +1,1690 @@ +{ + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/cloud-platform": { + "description": "View and manage your data across Google Cloud Platform services" + }, + "https://www.googleapis.com/auth/cloud-vision": { + "description": "Apply machine learning models to understand and label images" + } + } + } + }, + "basePath": "", + "baseUrl": "https://vision.googleapis.com/", + "batchPath": "batch", + "canonicalName": "Vision", + "description": "Integrates Google Vision features, including image labeling, face, logo, and landmark detection, optical character recognition (OCR), and detection of explicit content, into applications.", + "discoveryVersion": "v1", + "documentationLink": "https://cloud.google.com/vision/", + "fullyEncodeReservedExpansion": true, + "icons": { + "x16": "http://www.google.com/images/icons/product/search-16.gif", + "x32": "http://www.google.com/images/icons/product/search-32.gif" + }, + "id": "vision:v1p2beta1", + "kind": "discovery#restDescription", + "name": "vision", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "$.xgafv": { + "description": "V1 error format.", + "enum": [ + "1", + "2" + ], + "enumDescriptions": [ + "v1 error format", + "v2 error format" + ], + "location": "query", + "type": "string" + }, + "access_token": { + "description": "OAuth access token.", + "location": "query", + "type": "string" + }, + "alt": { + "default": "json", + "description": "Data format for response.", + "enum": [ + "json", + "media", + "proto" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json", + "Media download with context-dependent Content-Type", + "Responses with Content-Type of application/x-protobuf" + ], + "location": "query", + "type": "string" + }, + "bearer_token": { + "description": "OAuth bearer token.", + "location": "query", + "type": "string" + }, + "callback": { + "description": "JSONP", + "location": "query", + "type": "string" + }, + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "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.", + "location": "query", + "type": "string" + }, + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "pp": { + "default": "true", + "description": "Pretty-print response.", + "location": "query", + "type": "boolean" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", + "location": "query", + "type": "string" + }, + "uploadType": { + "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", + "location": "query", + "type": "string" + }, + "upload_protocol": { + "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", + "location": "query", + "type": "string" + } + }, + "protocol": "rest", + "resources": { + "files": { + "methods": { + "asyncBatchAnnotate": { + "description": "Run async image detection and annotation for a list of generic files (e.g.\nPDF) which may contain multiple pages and multiple images per page.\nProgress and results can be retrieved through the\n`google.longrunning.Operations` interface.\n`Operation.metadata` contains `OperationMetadata` (metadata).\n`Operation.response` contains `AsyncBatchAnnotateFilesResponse` (results).", + "flatPath": "v1p2beta1/files:asyncBatchAnnotate", + "httpMethod": "POST", + "id": "vision.files.asyncBatchAnnotate", + "parameterOrder": [], + "parameters": {}, + "path": "v1p2beta1/files:asyncBatchAnnotate", + "request": { + "$ref": "GoogleCloudVisionV1p2beta1AsyncBatchAnnotateFilesRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-vision" + ] + } + } + }, + "images": { + "methods": { + "annotate": { + "description": "Run image detection and annotation for a batch of images.", + "flatPath": "v1p2beta1/images:annotate", + "httpMethod": "POST", + "id": "vision.images.annotate", + "parameterOrder": [], + "parameters": {}, + "path": "v1p2beta1/images:annotate", + "request": { + "$ref": "GoogleCloudVisionV1p2beta1BatchAnnotateImagesRequest" + }, + "response": { + "$ref": "GoogleCloudVisionV1p2beta1BatchAnnotateImagesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-vision" + ] + } + } + } + }, + "revision": "20180327", + "rootUrl": "https://vision.googleapis.com/", + "schemas": { + "Color": { + "description": "Represents a color in the RGBA color space. This representation is designed\nfor simplicity of conversion to/from color representations in various\nlanguages over compactness; for example, the fields of this representation\ncan be trivially provided to the constructor of \"java.awt.Color\" in Java; it\ncan also be trivially provided to UIColor's \"+colorWithRed:green:blue:alpha\"\nmethod in iOS; and, with just a little work, it can be easily formatted into\na CSS \"rgba()\" string in JavaScript, as well. Here are some examples:\n\nExample (Java):\n\n import com.google.type.Color;\n\n // ...\n public static java.awt.Color fromProto(Color protocolor) {\n float alpha = protocolor.hasAlpha()\n ? protocolor.getAlpha().getValue()\n : 1.0;\n\n return new java.awt.Color(\n protocolor.getRed(),\n protocolor.getGreen(),\n protocolor.getBlue(),\n alpha);\n }\n\n public static Color toProto(java.awt.Color color) {\n float red = (float) color.getRed();\n float green = (float) color.getGreen();\n float blue = (float) color.getBlue();\n float denominator = 255.0;\n Color.Builder resultBuilder =\n Color\n .newBuilder()\n .setRed(red / denominator)\n .setGreen(green / denominator)\n .setBlue(blue / denominator);\n int alpha = color.getAlpha();\n if (alpha != 255) {\n result.setAlpha(\n FloatValue\n .newBuilder()\n .setValue(((float) alpha) / denominator)\n .build());\n }\n return resultBuilder.build();\n }\n // ...\n\nExample (iOS / Obj-C):\n\n // ...\n static UIColor* fromProto(Color* protocolor) {\n float red = [protocolor red];\n float green = [protocolor green];\n float blue = [protocolor blue];\n FloatValue* alpha_wrapper = [protocolor alpha];\n float alpha = 1.0;\n if (alpha_wrapper != nil) {\n alpha = [alpha_wrapper value];\n }\n return [UIColor colorWithRed:red green:green blue:blue alpha:alpha];\n }\n\n static Color* toProto(UIColor* color) {\n CGFloat red, green, blue, alpha;\n if (![color getRed:\u0026red green:\u0026green blue:\u0026blue alpha:\u0026alpha]) {\n return nil;\n }\n Color* result = [Color alloc] init];\n [result setRed:red];\n [result setGreen:green];\n [result setBlue:blue];\n if (alpha \u003c= 0.9999) {\n [result setAlpha:floatWrapperWithValue(alpha)];\n }\n [result autorelease];\n return result;\n }\n // ...\n\n Example (JavaScript):\n\n // ...\n\n var protoToCssColor = function(rgb_color) {\n var redFrac = rgb_color.red || 0.0;\n var greenFrac = rgb_color.green || 0.0;\n var blueFrac = rgb_color.blue || 0.0;\n var red = Math.floor(redFrac * 255);\n var green = Math.floor(greenFrac * 255);\n var blue = Math.floor(blueFrac * 255);\n\n if (!('alpha' in rgb_color)) {\n return rgbToCssColor_(red, green, blue);\n }\n\n var alphaFrac = rgb_color.alpha.value || 0.0;\n var rgbParams = [red, green, blue].join(',');\n return ['rgba(', rgbParams, ',', alphaFrac, ')'].join('');\n };\n\n var rgbToCssColor_ = function(red, green, blue) {\n var rgbNumber = new Number((red \u003c\u003c 16) | (green \u003c\u003c 8) | blue);\n var hexString = rgbNumber.toString(16);\n var missingZeros = 6 - hexString.length;\n var resultBuilder = ['#'];\n for (var i = 0; i \u003c missingZeros; i++) {\n resultBuilder.push('0');\n }\n resultBuilder.push(hexString);\n return resultBuilder.join('');\n };\n\n // ...", + "id": "Color", + "properties": { + "alpha": { + "description": "The fraction of this color that should be applied to the pixel. That is,\nthe final pixel color is defined by the equation:\n\n pixel color = alpha * (this color) + (1.0 - alpha) * (background color)\n\nThis means that a value of 1.0 corresponds to a solid color, whereas\na value of 0.0 corresponds to a completely transparent color. This\nuses a wrapper message rather than a simple float scalar so that it is\npossible to distinguish between a default value and the value being unset.\nIf omitted, this color object is to be rendered as a solid color\n(as if the alpha value had been explicitly given with a value of 1.0).", + "format": "float", + "type": "number" + }, + "blue": { + "description": "The amount of blue in the color as a value in the interval [0, 1].", + "format": "float", + "type": "number" + }, + "green": { + "description": "The amount of green in the color as a value in the interval [0, 1].", + "format": "float", + "type": "number" + }, + "red": { + "description": "The amount of red in the color as a value in the interval [0, 1].", + "format": "float", + "type": "number" + } + }, + "type": "object" + }, + "GoogleCloudVisionV1p2beta1AnnotateImageRequest": { + "description": "Request for performing Google Cloud Vision API tasks over a user-provided\nimage, with user-requested features.", + "id": "GoogleCloudVisionV1p2beta1AnnotateImageRequest", + "properties": { + "features": { + "description": "Requested features.", + "items": { + "$ref": "GoogleCloudVisionV1p2beta1Feature" + }, + "type": "array" + }, + "image": { + "$ref": "GoogleCloudVisionV1p2beta1Image", + "description": "The image to be processed." + }, + "imageContext": { + "$ref": "GoogleCloudVisionV1p2beta1ImageContext", + "description": "Additional context that may accompany the image." + } + }, + "type": "object" + }, + "GoogleCloudVisionV1p2beta1AnnotateImageResponse": { + "description": "Response to an image annotation request.", + "id": "GoogleCloudVisionV1p2beta1AnnotateImageResponse", + "properties": { + "context": { + "$ref": "GoogleCloudVisionV1p2beta1ImageAnnotationContext", + "description": "If present, contextual information is needed to understand where this image\ncomes from." + }, + "cropHintsAnnotation": { + "$ref": "GoogleCloudVisionV1p2beta1CropHintsAnnotation", + "description": "If present, crop hints have completed successfully." + }, + "error": { + "$ref": "Status", + "description": "If set, represents the error message for the operation.\nNote that filled-in image annotations are guaranteed to be\ncorrect, even when `error` is set." + }, + "faceAnnotations": { + "description": "If present, face detection has completed successfully.", + "items": { + "$ref": "GoogleCloudVisionV1p2beta1FaceAnnotation" + }, + "type": "array" + }, + "fullTextAnnotation": { + "$ref": "GoogleCloudVisionV1p2beta1TextAnnotation", + "description": "If present, text (OCR) detection or document (OCR) text detection has\ncompleted successfully.\nThis annotation provides the structural hierarchy for the OCR detected\ntext." + }, + "imagePropertiesAnnotation": { + "$ref": "GoogleCloudVisionV1p2beta1ImageProperties", + "description": "If present, image properties were extracted successfully." + }, + "labelAnnotations": { + "description": "If present, label detection has completed successfully.", + "items": { + "$ref": "GoogleCloudVisionV1p2beta1EntityAnnotation" + }, + "type": "array" + }, + "landmarkAnnotations": { + "description": "If present, landmark detection has completed successfully.", + "items": { + "$ref": "GoogleCloudVisionV1p2beta1EntityAnnotation" + }, + "type": "array" + }, + "logoAnnotations": { + "description": "If present, logo detection has completed successfully.", + "items": { + "$ref": "GoogleCloudVisionV1p2beta1EntityAnnotation" + }, + "type": "array" + }, + "safeSearchAnnotation": { + "$ref": "GoogleCloudVisionV1p2beta1SafeSearchAnnotation", + "description": "If present, safe-search annotation has completed successfully." + }, + "textAnnotations": { + "description": "If present, text (OCR) detection has completed successfully.", + "items": { + "$ref": "GoogleCloudVisionV1p2beta1EntityAnnotation" + }, + "type": "array" + }, + "webDetection": { + "$ref": "GoogleCloudVisionV1p2beta1WebDetection", + "description": "If present, web detection has completed successfully." + } + }, + "type": "object" + }, + "GoogleCloudVisionV1p2beta1AsyncAnnotateFileRequest": { + "description": "An offline file annotation request.", + "id": "GoogleCloudVisionV1p2beta1AsyncAnnotateFileRequest", + "properties": { + "features": { + "description": "Required. Requested features.", + "items": { + "$ref": "GoogleCloudVisionV1p2beta1Feature" + }, + "type": "array" + }, + "imageContext": { + "$ref": "GoogleCloudVisionV1p2beta1ImageContext", + "description": "Additional context that may accompany the image(s) in the file." + }, + "inputConfig": { + "$ref": "GoogleCloudVisionV1p2beta1InputConfig", + "description": "Required. Information about the input file." + }, + "outputConfig": { + "$ref": "GoogleCloudVisionV1p2beta1OutputConfig", + "description": "Required. The desired output location and metadata (e.g. format)." + } + }, + "type": "object" + }, + "GoogleCloudVisionV1p2beta1AsyncAnnotateFileResponse": { + "description": "The response for a single offline file annotation request.", + "id": "GoogleCloudVisionV1p2beta1AsyncAnnotateFileResponse", + "properties": { + "outputConfig": { + "$ref": "GoogleCloudVisionV1p2beta1OutputConfig", + "description": "The output location and metadata from AsyncAnnotateFileRequest." + } + }, + "type": "object" + }, + "GoogleCloudVisionV1p2beta1AsyncBatchAnnotateFilesRequest": { + "description": "Multiple async file annotation requests are batched into a single service\ncall.", + "id": "GoogleCloudVisionV1p2beta1AsyncBatchAnnotateFilesRequest", + "properties": { + "requests": { + "description": "Individual async file annotation requests for this batch.", + "items": { + "$ref": "GoogleCloudVisionV1p2beta1AsyncAnnotateFileRequest" + }, + "type": "array" + } + }, + "type": "object" + }, + "GoogleCloudVisionV1p2beta1AsyncBatchAnnotateFilesResponse": { + "description": "Response to an async batch file annotation request.", + "id": "GoogleCloudVisionV1p2beta1AsyncBatchAnnotateFilesResponse", + "properties": { + "responses": { + "description": "The list of file annotation responses, one for each request in\nAsyncBatchAnnotateFilesRequest.", + "items": { + "$ref": "GoogleCloudVisionV1p2beta1AsyncAnnotateFileResponse" + }, + "type": "array" + } + }, + "type": "object" + }, + "GoogleCloudVisionV1p2beta1BatchAnnotateImagesRequest": { + "description": "Multiple image annotation requests are batched into a single service call.", + "id": "GoogleCloudVisionV1p2beta1BatchAnnotateImagesRequest", + "properties": { + "requests": { + "description": "Individual image annotation requests for this batch.", + "items": { + "$ref": "GoogleCloudVisionV1p2beta1AnnotateImageRequest" + }, + "type": "array" + } + }, + "type": "object" + }, + "GoogleCloudVisionV1p2beta1BatchAnnotateImagesResponse": { + "description": "Response to a batch image annotation request.", + "id": "GoogleCloudVisionV1p2beta1BatchAnnotateImagesResponse", + "properties": { + "responses": { + "description": "Individual responses to image annotation requests within the batch.", + "items": { + "$ref": "GoogleCloudVisionV1p2beta1AnnotateImageResponse" + }, + "type": "array" + } + }, + "type": "object" + }, + "GoogleCloudVisionV1p2beta1Block": { + "description": "Logical element on the page.", + "id": "GoogleCloudVisionV1p2beta1Block", + "properties": { + "blockType": { + "description": "Detected block type (text, image etc) for this block.", + "enum": [ + "UNKNOWN", + "TEXT", + "TABLE", + "PICTURE", + "RULER", + "BARCODE" + ], + "enumDescriptions": [ + "Unknown block type.", + "Regular text block.", + "Table block.", + "Image block.", + "Horizontal/vertical line box.", + "Barcode block." + ], + "type": "string" + }, + "boundingBox": { + "$ref": "GoogleCloudVisionV1p2beta1BoundingPoly", + "description": "The bounding box for the block.\nThe vertices are in the order of top-left, top-right, bottom-right,\nbottom-left. When a rotation of the bounding box is detected the rotation\nis represented as around the top-left corner as defined when the text is\nread in the 'natural' orientation.\nFor example:\n\n* when the text is horizontal it might look like:\n\n 0----1\n | |\n 3----2\n\n* when it's rotated 180 degrees around the top-left corner it becomes:\n\n 2----3\n | |\n 1----0\n\n and the vertice order will still be (0, 1, 2, 3)." + }, + "confidence": { + "description": "Confidence of the OCR results on the block. Range [0, 1].", + "format": "float", + "type": "number" + }, + "paragraphs": { + "description": "List of paragraphs in this block (if this blocks is of type text).", + "items": { + "$ref": "GoogleCloudVisionV1p2beta1Paragraph" + }, + "type": "array" + }, + "property": { + "$ref": "GoogleCloudVisionV1p2beta1TextAnnotationTextProperty", + "description": "Additional information detected for the block." + } + }, + "type": "object" + }, + "GoogleCloudVisionV1p2beta1BoundingPoly": { + "description": "A bounding polygon for the detected image annotation.", + "id": "GoogleCloudVisionV1p2beta1BoundingPoly", + "properties": { + "vertices": { + "description": "The bounding polygon vertices.", + "items": { + "$ref": "GoogleCloudVisionV1p2beta1Vertex" + }, + "type": "array" + } + }, + "type": "object" + }, + "GoogleCloudVisionV1p2beta1ColorInfo": { + "description": "Color information consists of RGB channels, score, and the fraction of\nthe image that the color occupies in the image.", + "id": "GoogleCloudVisionV1p2beta1ColorInfo", + "properties": { + "color": { + "$ref": "Color", + "description": "RGB components of the color." + }, + "pixelFraction": { + "description": "The fraction of pixels the color occupies in the image.\nValue in range [0, 1].", + "format": "float", + "type": "number" + }, + "score": { + "description": "Image-specific score for this color. Value in range [0, 1].", + "format": "float", + "type": "number" + } + }, + "type": "object" + }, + "GoogleCloudVisionV1p2beta1CropHint": { + "description": "Single crop hint that is used to generate a new crop when serving an image.", + "id": "GoogleCloudVisionV1p2beta1CropHint", + "properties": { + "boundingPoly": { + "$ref": "GoogleCloudVisionV1p2beta1BoundingPoly", + "description": "The bounding polygon for the crop region. The coordinates of the bounding\nbox are in the original image's scale, as returned in `ImageParams`." + }, + "confidence": { + "description": "Confidence of this being a salient region. Range [0, 1].", + "format": "float", + "type": "number" + }, + "importanceFraction": { + "description": "Fraction of importance of this salient region with respect to the original\nimage.", + "format": "float", + "type": "number" + } + }, + "type": "object" + }, + "GoogleCloudVisionV1p2beta1CropHintsAnnotation": { + "description": "Set of crop hints that are used to generate new crops when serving images.", + "id": "GoogleCloudVisionV1p2beta1CropHintsAnnotation", + "properties": { + "cropHints": { + "description": "Crop hint results.", + "items": { + "$ref": "GoogleCloudVisionV1p2beta1CropHint" + }, + "type": "array" + } + }, + "type": "object" + }, + "GoogleCloudVisionV1p2beta1CropHintsParams": { + "description": "Parameters for crop hints annotation request.", + "id": "GoogleCloudVisionV1p2beta1CropHintsParams", + "properties": { + "aspectRatios": { + "description": "Aspect ratios in floats, representing the ratio of the width to the height\nof the image. For example, if the desired aspect ratio is 4/3, the\ncorresponding float value should be 1.33333. If not specified, the\nbest possible crop is returned. The number of provided aspect ratios is\nlimited to a maximum of 16; any aspect ratios provided after the 16th are\nignored.", + "items": { + "format": "float", + "type": "number" + }, + "type": "array" + } + }, + "type": "object" + }, + "GoogleCloudVisionV1p2beta1DominantColorsAnnotation": { + "description": "Set of dominant colors and their corresponding scores.", + "id": "GoogleCloudVisionV1p2beta1DominantColorsAnnotation", + "properties": { + "colors": { + "description": "RGB color values with their score and pixel fraction.", + "items": { + "$ref": "GoogleCloudVisionV1p2beta1ColorInfo" + }, + "type": "array" + } + }, + "type": "object" + }, + "GoogleCloudVisionV1p2beta1EntityAnnotation": { + "description": "Set of detected entity features.", + "id": "GoogleCloudVisionV1p2beta1EntityAnnotation", + "properties": { + "boundingPoly": { + "$ref": "GoogleCloudVisionV1p2beta1BoundingPoly", + "description": "Image region to which this entity belongs. Not produced\nfor `LABEL_DETECTION` features." + }, + "confidence": { + "description": "**Deprecated. Use `score` instead.**\nThe accuracy of the entity detection in an image.\nFor example, for an image in which the \"Eiffel Tower\" entity is detected,\nthis field represents the confidence that there is a tower in the query\nimage. Range [0, 1].", + "format": "float", + "type": "number" + }, + "description": { + "description": "Entity textual description, expressed in its `locale` language.", + "type": "string" + }, + "locale": { + "description": "The language code for the locale in which the entity textual\n`description` is expressed.", + "type": "string" + }, + "locations": { + "description": "The location information for the detected entity. Multiple\n`LocationInfo` elements can be present because one location may\nindicate the location of the scene in the image, and another location\nmay indicate the location of the place where the image was taken.\nLocation information is usually present for landmarks.", + "items": { + "$ref": "GoogleCloudVisionV1p2beta1LocationInfo" + }, + "type": "array" + }, + "mid": { + "description": "Opaque entity ID. Some IDs may be available in\n[Google Knowledge Graph Search\nAPI](https://developers.google.com/knowledge-graph/).", + "type": "string" + }, + "properties": { + "description": "Some entities may have optional user-supplied `Property` (name/value)\nfields, such a score or string that qualifies the entity.", + "items": { + "$ref": "GoogleCloudVisionV1p2beta1Property" + }, + "type": "array" + }, + "score": { + "description": "Overall score of the result. Range [0, 1].", + "format": "float", + "type": "number" + }, + "topicality": { + "description": "The relevancy of the ICA (Image Content Annotation) label to the\nimage. For example, the relevancy of \"tower\" is likely higher to an image\ncontaining the detected \"Eiffel Tower\" than to an image containing a\ndetected distant towering building, even though the confidence that\nthere is a tower in each image may be the same. Range [0, 1].", + "format": "float", + "type": "number" + } + }, + "type": "object" + }, + "GoogleCloudVisionV1p2beta1FaceAnnotation": { + "description": "A face annotation object contains the results of face detection.", + "id": "GoogleCloudVisionV1p2beta1FaceAnnotation", + "properties": { + "angerLikelihood": { + "description": "Anger likelihood.", + "enum": [ + "UNKNOWN", + "VERY_UNLIKELY", + "UNLIKELY", + "POSSIBLE", + "LIKELY", + "VERY_LIKELY" + ], + "enumDescriptions": [ + "Unknown likelihood.", + "It is very unlikely that the image belongs to the specified vertical.", + "It is unlikely that the image belongs to the specified vertical.", + "It is possible that the image belongs to the specified vertical.", + "It is likely that the image belongs to the specified vertical.", + "It is very likely that the image belongs to the specified vertical." + ], + "type": "string" + }, + "blurredLikelihood": { + "description": "Blurred likelihood.", + "enum": [ + "UNKNOWN", + "VERY_UNLIKELY", + "UNLIKELY", + "POSSIBLE", + "LIKELY", + "VERY_LIKELY" + ], + "enumDescriptions": [ + "Unknown likelihood.", + "It is very unlikely that the image belongs to the specified vertical.", + "It is unlikely that the image belongs to the specified vertical.", + "It is possible that the image belongs to the specified vertical.", + "It is likely that the image belongs to the specified vertical.", + "It is very likely that the image belongs to the specified vertical." + ], + "type": "string" + }, + "boundingPoly": { + "$ref": "GoogleCloudVisionV1p2beta1BoundingPoly", + "description": "The bounding polygon around the face. The coordinates of the bounding box\nare in the original image's scale, as returned in `ImageParams`.\nThe bounding box is computed to \"frame\" the face in accordance with human\nexpectations. It is based on the landmarker results.\nNote that one or more x and/or y coordinates may not be generated in the\n`BoundingPoly` (the polygon will be unbounded) if only a partial face\nappears in the image to be annotated." + }, + "detectionConfidence": { + "description": "Detection confidence. Range [0, 1].", + "format": "float", + "type": "number" + }, + "fdBoundingPoly": { + "$ref": "GoogleCloudVisionV1p2beta1BoundingPoly", + "description": "The `fd_bounding_poly` bounding polygon is tighter than the\n`boundingPoly`, and encloses only the skin part of the face. Typically, it\nis used to eliminate the face from any image analysis that detects the\n\"amount of skin\" visible in an image. It is not based on the\nlandmarker results, only on the initial face detection, hence\nthe \u003ccode\u003efd\u003c/code\u003e (face detection) prefix." + }, + "headwearLikelihood": { + "description": "Headwear likelihood.", + "enum": [ + "UNKNOWN", + "VERY_UNLIKELY", + "UNLIKELY", + "POSSIBLE", + "LIKELY", + "VERY_LIKELY" + ], + "enumDescriptions": [ + "Unknown likelihood.", + "It is very unlikely that the image belongs to the specified vertical.", + "It is unlikely that the image belongs to the specified vertical.", + "It is possible that the image belongs to the specified vertical.", + "It is likely that the image belongs to the specified vertical.", + "It is very likely that the image belongs to the specified vertical." + ], + "type": "string" + }, + "joyLikelihood": { + "description": "Joy likelihood.", + "enum": [ + "UNKNOWN", + "VERY_UNLIKELY", + "UNLIKELY", + "POSSIBLE", + "LIKELY", + "VERY_LIKELY" + ], + "enumDescriptions": [ + "Unknown likelihood.", + "It is very unlikely that the image belongs to the specified vertical.", + "It is unlikely that the image belongs to the specified vertical.", + "It is possible that the image belongs to the specified vertical.", + "It is likely that the image belongs to the specified vertical.", + "It is very likely that the image belongs to the specified vertical." + ], + "type": "string" + }, + "landmarkingConfidence": { + "description": "Face landmarking confidence. Range [0, 1].", + "format": "float", + "type": "number" + }, + "landmarks": { + "description": "Detected face landmarks.", + "items": { + "$ref": "GoogleCloudVisionV1p2beta1FaceAnnotationLandmark" + }, + "type": "array" + }, + "panAngle": { + "description": "Yaw angle, which indicates the leftward/rightward angle that the face is\npointing relative to the vertical plane perpendicular to the image. Range\n[-180,180].", + "format": "float", + "type": "number" + }, + "rollAngle": { + "description": "Roll angle, which indicates the amount of clockwise/anti-clockwise rotation\nof the face relative to the image vertical about the axis perpendicular to\nthe face. Range [-180,180].", + "format": "float", + "type": "number" + }, + "sorrowLikelihood": { + "description": "Sorrow likelihood.", + "enum": [ + "UNKNOWN", + "VERY_UNLIKELY", + "UNLIKELY", + "POSSIBLE", + "LIKELY", + "VERY_LIKELY" + ], + "enumDescriptions": [ + "Unknown likelihood.", + "It is very unlikely that the image belongs to the specified vertical.", + "It is unlikely that the image belongs to the specified vertical.", + "It is possible that the image belongs to the specified vertical.", + "It is likely that the image belongs to the specified vertical.", + "It is very likely that the image belongs to the specified vertical." + ], + "type": "string" + }, + "surpriseLikelihood": { + "description": "Surprise likelihood.", + "enum": [ + "UNKNOWN", + "VERY_UNLIKELY", + "UNLIKELY", + "POSSIBLE", + "LIKELY", + "VERY_LIKELY" + ], + "enumDescriptions": [ + "Unknown likelihood.", + "It is very unlikely that the image belongs to the specified vertical.", + "It is unlikely that the image belongs to the specified vertical.", + "It is possible that the image belongs to the specified vertical.", + "It is likely that the image belongs to the specified vertical.", + "It is very likely that the image belongs to the specified vertical." + ], + "type": "string" + }, + "tiltAngle": { + "description": "Pitch angle, which indicates the upwards/downwards angle that the face is\npointing relative to the image's horizontal plane. Range [-180,180].", + "format": "float", + "type": "number" + }, + "underExposedLikelihood": { + "description": "Under-exposed likelihood.", + "enum": [ + "UNKNOWN", + "VERY_UNLIKELY", + "UNLIKELY", + "POSSIBLE", + "LIKELY", + "VERY_LIKELY" + ], + "enumDescriptions": [ + "Unknown likelihood.", + "It is very unlikely that the image belongs to the specified vertical.", + "It is unlikely that the image belongs to the specified vertical.", + "It is possible that the image belongs to the specified vertical.", + "It is likely that the image belongs to the specified vertical.", + "It is very likely that the image belongs to the specified vertical." + ], + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudVisionV1p2beta1FaceAnnotationLandmark": { + "description": "A face-specific landmark (for example, a face feature).", + "id": "GoogleCloudVisionV1p2beta1FaceAnnotationLandmark", + "properties": { + "position": { + "$ref": "GoogleCloudVisionV1p2beta1Position", + "description": "Face landmark position." + }, + "type": { + "description": "Face landmark type.", + "enum": [ + "UNKNOWN_LANDMARK", + "LEFT_EYE", + "RIGHT_EYE", + "LEFT_OF_LEFT_EYEBROW", + "RIGHT_OF_LEFT_EYEBROW", + "LEFT_OF_RIGHT_EYEBROW", + "RIGHT_OF_RIGHT_EYEBROW", + "MIDPOINT_BETWEEN_EYES", + "NOSE_TIP", + "UPPER_LIP", + "LOWER_LIP", + "MOUTH_LEFT", + "MOUTH_RIGHT", + "MOUTH_CENTER", + "NOSE_BOTTOM_RIGHT", + "NOSE_BOTTOM_LEFT", + "NOSE_BOTTOM_CENTER", + "LEFT_EYE_TOP_BOUNDARY", + "LEFT_EYE_RIGHT_CORNER", + "LEFT_EYE_BOTTOM_BOUNDARY", + "LEFT_EYE_LEFT_CORNER", + "RIGHT_EYE_TOP_BOUNDARY", + "RIGHT_EYE_RIGHT_CORNER", + "RIGHT_EYE_BOTTOM_BOUNDARY", + "RIGHT_EYE_LEFT_CORNER", + "LEFT_EYEBROW_UPPER_MIDPOINT", + "RIGHT_EYEBROW_UPPER_MIDPOINT", + "LEFT_EAR_TRAGION", + "RIGHT_EAR_TRAGION", + "LEFT_EYE_PUPIL", + "RIGHT_EYE_PUPIL", + "FOREHEAD_GLABELLA", + "CHIN_GNATHION", + "CHIN_LEFT_GONION", + "CHIN_RIGHT_GONION" + ], + "enumDescriptions": [ + "Unknown face landmark detected. Should not be filled.", + "Left eye.", + "Right eye.", + "Left of left eyebrow.", + "Right of left eyebrow.", + "Left of right eyebrow.", + "Right of right eyebrow.", + "Midpoint between eyes.", + "Nose tip.", + "Upper lip.", + "Lower lip.", + "Mouth left.", + "Mouth right.", + "Mouth center.", + "Nose, bottom right.", + "Nose, bottom left.", + "Nose, bottom center.", + "Left eye, top boundary.", + "Left eye, right corner.", + "Left eye, bottom boundary.", + "Left eye, left corner.", + "Right eye, top boundary.", + "Right eye, right corner.", + "Right eye, bottom boundary.", + "Right eye, left corner.", + "Left eyebrow, upper midpoint.", + "Right eyebrow, upper midpoint.", + "Left ear tragion.", + "Right ear tragion.", + "Left eye pupil.", + "Right eye pupil.", + "Forehead glabella.", + "Chin gnathion.", + "Chin left gonion.", + "Chin right gonion." + ], + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudVisionV1p2beta1Feature": { + "description": "The type of Google Cloud Vision API detection to perform, and the maximum\nnumber of results to return for that type. Multiple `Feature` objects can\nbe specified in the `features` list.", + "id": "GoogleCloudVisionV1p2beta1Feature", + "properties": { + "maxResults": { + "description": "Maximum number of results of this type. Does not apply to\n`TEXT_DETECTION`, `DOCUMENT_TEXT_DETECTION`, or `CROP_HINTS`.", + "format": "int32", + "type": "integer" + }, + "model": { + "description": "Model to use for the feature.\nSupported values: \"builtin/stable\" (the default if unset) and\n\"builtin/latest\".", + "type": "string" + }, + "type": { + "description": "The feature type.", + "enum": [ + "TYPE_UNSPECIFIED", + "FACE_DETECTION", + "LANDMARK_DETECTION", + "LOGO_DETECTION", + "LABEL_DETECTION", + "TEXT_DETECTION", + "DOCUMENT_TEXT_DETECTION", + "SAFE_SEARCH_DETECTION", + "IMAGE_PROPERTIES", + "CROP_HINTS", + "WEB_DETECTION" + ], + "enumDescriptions": [ + "Unspecified feature type.", + "Run face detection.", + "Run landmark detection.", + "Run logo detection.", + "Run label detection.", + "Run text detection / optical character recognition (OCR). Text detection\nis optimized for areas of text within a larger image; if the image is\na document, use `DOCUMENT_TEXT_DETECTION` instead.", + "Run dense text document OCR. Takes precedence when both\n`DOCUMENT_TEXT_DETECTION` and `TEXT_DETECTION` are present.", + "Run Safe Search to detect potentially unsafe\nor undesirable content.", + "Compute a set of image properties, such as the\nimage's dominant colors.", + "Run crop hints.", + "Run web detection." + ], + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudVisionV1p2beta1GcsDestination": { + "description": "The Google Cloud Storage location where the output will be written to.", + "id": "GoogleCloudVisionV1p2beta1GcsDestination", + "properties": { + "uri": { + "description": "Google Cloud Storage URI where the results will be stored. Results will\nbe in JSON format and preceded by its corresponding input URI. This field\ncan either represent a single file, or a prefix for multiple outputs.\nPrefixes must end in a `/`.\n\nExamples:\n\n* File: gs://bucket-name/filename.json\n* Prefix: gs://bucket-name/prefix/here/\n* File: gs://bucket-name/prefix/here\n\nIf multiple outputs, each response is still AnnotateFileResponse, each of\nwhich contains some subset of the full list of AnnotateImageResponse.\nMultiple outputs can happen if, for example, the output JSON is too large\nand overflows into multiple sharded files.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudVisionV1p2beta1GcsSource": { + "description": "The Google Cloud Storage location where the input will be read from.", + "id": "GoogleCloudVisionV1p2beta1GcsSource", + "properties": { + "uri": { + "description": "Google Cloud Storage URI for the input file. This must only be a GCS\nobject. Wildcards are not currently supported.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudVisionV1p2beta1Image": { + "description": "Client image to perform Google Cloud Vision API tasks over.", + "id": "GoogleCloudVisionV1p2beta1Image", + "properties": { + "content": { + "description": "Image content, represented as a stream of bytes.\nNote: As with all `bytes` fields, protobuffers use a pure binary\nrepresentation, whereas JSON representations use base64.", + "format": "byte", + "type": "string" + }, + "source": { + "$ref": "GoogleCloudVisionV1p2beta1ImageSource", + "description": "Google Cloud Storage image location, or publicly-accessible image\nURL. If both `content` and `source` are provided for an image, `content`\ntakes precedence and is used to perform the image annotation request." + } + }, + "type": "object" + }, + "GoogleCloudVisionV1p2beta1ImageAnnotationContext": { + "description": "If an image was produced from a file (e.g. a PDF), this message gives\ninformation about the source of that image.", + "id": "GoogleCloudVisionV1p2beta1ImageAnnotationContext", + "properties": { + "pageNumber": { + "description": "If the file was a PDF or TIFF, this field gives the page number within\nthe file used to produce the image.", + "format": "int32", + "type": "integer" + }, + "uri": { + "description": "The URI of the file used to produce the image.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudVisionV1p2beta1ImageContext": { + "description": "Image context and/or feature-specific parameters.", + "id": "GoogleCloudVisionV1p2beta1ImageContext", + "properties": { + "cropHintsParams": { + "$ref": "GoogleCloudVisionV1p2beta1CropHintsParams", + "description": "Parameters for crop hints annotation request." + }, + "languageHints": { + "description": "List of languages to use for TEXT_DETECTION. In most cases, an empty value\nyields the best results since it enables automatic language detection. For\nlanguages based on the Latin alphabet, setting `language_hints` is not\nneeded. In rare cases, when the language of the text in the image is known,\nsetting a hint will help get better results (although it will be a\nsignificant hindrance if the hint is wrong). Text detection returns an\nerror if one or more of the specified languages is not one of the\n[supported languages](/vision/docs/languages).", + "items": { + "type": "string" + }, + "type": "array" + }, + "latLongRect": { + "$ref": "GoogleCloudVisionV1p2beta1LatLongRect", + "description": "Not used." + }, + "webDetectionParams": { + "$ref": "GoogleCloudVisionV1p2beta1WebDetectionParams", + "description": "Parameters for web detection." + } + }, + "type": "object" + }, + "GoogleCloudVisionV1p2beta1ImageProperties": { + "description": "Stores image properties, such as dominant colors.", + "id": "GoogleCloudVisionV1p2beta1ImageProperties", + "properties": { + "dominantColors": { + "$ref": "GoogleCloudVisionV1p2beta1DominantColorsAnnotation", + "description": "If present, dominant colors completed successfully." + } + }, + "type": "object" + }, + "GoogleCloudVisionV1p2beta1ImageSource": { + "description": "External image source (Google Cloud Storage or web URL image location).", + "id": "GoogleCloudVisionV1p2beta1ImageSource", + "properties": { + "gcsImageUri": { + "description": "**Use `image_uri` instead.**\n\nThe Google Cloud Storage URI of the form\n`gs://bucket_name/object_name`. Object versioning is not supported. See\n[Google Cloud Storage Request\nURIs](https://cloud.google.com/storage/docs/reference-uris) for more info.", + "type": "string" + }, + "imageUri": { + "description": "The URI of the source image. Can be either:\n\n1. A Google Cloud Storage URI of the form\n `gs://bucket_name/object_name`. Object versioning is not supported. See\n [Google Cloud Storage Request\n URIs](https://cloud.google.com/storage/docs/reference-uris) for more\n info.\n\n2. A publicly-accessible image HTTP/HTTPS URL. When fetching images from\n HTTP/HTTPS URLs, Google cannot guarantee that the request will be\n completed. Your request may fail if the specified host denies the\n request (e.g. due to request throttling or DOS prevention), or if Google\n throttles requests to the site for abuse prevention. You should not\n depend on externally-hosted images for production applications.\n\nWhen both `gcs_image_uri` and `image_uri` are specified, `image_uri` takes\nprecedence.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudVisionV1p2beta1InputConfig": { + "description": "The desired input location and metadata.", + "id": "GoogleCloudVisionV1p2beta1InputConfig", + "properties": { + "gcsSource": { + "$ref": "GoogleCloudVisionV1p2beta1GcsSource", + "description": "The Google Cloud Storage location to read the input from." + }, + "mimeType": { + "description": "The type of the file. Currently only \"application/pdf\" and \"image/tiff\"\nare supported. Wildcards are not supported.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudVisionV1p2beta1LatLongRect": { + "description": "Rectangle determined by min and max `LatLng` pairs.", + "id": "GoogleCloudVisionV1p2beta1LatLongRect", + "properties": { + "maxLatLng": { + "$ref": "LatLng", + "description": "Max lat/long pair." + }, + "minLatLng": { + "$ref": "LatLng", + "description": "Min lat/long pair." + } + }, + "type": "object" + }, + "GoogleCloudVisionV1p2beta1LocationInfo": { + "description": "Detected entity location information.", + "id": "GoogleCloudVisionV1p2beta1LocationInfo", + "properties": { + "latLng": { + "$ref": "LatLng", + "description": "lat/long location coordinates." + } + }, + "type": "object" + }, + "GoogleCloudVisionV1p2beta1OperationMetadata": { + "description": "Contains metadata for the BatchAnnotateImages operation.", + "id": "GoogleCloudVisionV1p2beta1OperationMetadata", + "properties": { + "createTime": { + "description": "The time when the batch request was received.", + "format": "google-datetime", + "type": "string" + }, + "state": { + "description": "Current state of the batch operation.", + "enum": [ + "STATE_UNSPECIFIED", + "CREATED", + "RUNNING", + "DONE", + "CANCELLED" + ], + "enumDescriptions": [ + "Invalid.", + "Request is received.", + "Request is actively being processed.", + "The batch processing is done.", + "The batch processing was cancelled." + ], + "type": "string" + }, + "updateTime": { + "description": "The time when the operation result was last updated.", + "format": "google-datetime", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudVisionV1p2beta1OutputConfig": { + "description": "The desired output location and metadata.", + "id": "GoogleCloudVisionV1p2beta1OutputConfig", + "properties": { + "batchSize": { + "description": "The max number of response protos to put into each output JSON file on GCS.\nThe valid range is [1, 100]. If not specified, the default value is 20.\n\nFor example, for one pdf file with 100 pages, 100 response protos will\nbe generated. If `batch_size` = 20, then 5 json files each\ncontaining 20 response protos will be written under the prefix\n`gcs_destination`.`uri`.\n\nCurrently, batch_size only applies to GcsDestination, with potential future\nsupport for other output configurations.", + "format": "int32", + "type": "integer" + }, + "gcsDestination": { + "$ref": "GoogleCloudVisionV1p2beta1GcsDestination", + "description": "The Google Cloud Storage location to write the output(s) to." + } + }, + "type": "object" + }, + "GoogleCloudVisionV1p2beta1Page": { + "description": "Detected page from OCR.", + "id": "GoogleCloudVisionV1p2beta1Page", + "properties": { + "blocks": { + "description": "List of blocks of text, images etc on this page.", + "items": { + "$ref": "GoogleCloudVisionV1p2beta1Block" + }, + "type": "array" + }, + "confidence": { + "description": "Confidence of the OCR results on the page. Range [0, 1].", + "format": "float", + "type": "number" + }, + "height": { + "description": "Page height. For PDFs the unit is points. For images (including\nTIFFs) the unit is pixels.", + "format": "int32", + "type": "integer" + }, + "property": { + "$ref": "GoogleCloudVisionV1p2beta1TextAnnotationTextProperty", + "description": "Additional information detected on the page." + }, + "width": { + "description": "Page width. For PDFs the unit is points. For images (including\nTIFFs) the unit is pixels.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "GoogleCloudVisionV1p2beta1Paragraph": { + "description": "Structural unit of text representing a number of words in certain order.", + "id": "GoogleCloudVisionV1p2beta1Paragraph", + "properties": { + "boundingBox": { + "$ref": "GoogleCloudVisionV1p2beta1BoundingPoly", + "description": "The bounding box for the paragraph.\nThe vertices are in the order of top-left, top-right, bottom-right,\nbottom-left. When a rotation of the bounding box is detected the rotation\nis represented as around the top-left corner as defined when the text is\nread in the 'natural' orientation.\nFor example:\n * when the text is horizontal it might look like:\n 0----1\n | |\n 3----2\n * when it's rotated 180 degrees around the top-left corner it becomes:\n 2----3\n | |\n 1----0\n and the vertice order will still be (0, 1, 2, 3)." + }, + "confidence": { + "description": "Confidence of the OCR results for the paragraph. Range [0, 1].", + "format": "float", + "type": "number" + }, + "property": { + "$ref": "GoogleCloudVisionV1p2beta1TextAnnotationTextProperty", + "description": "Additional information detected for the paragraph." + }, + "words": { + "description": "List of words in this paragraph.", + "items": { + "$ref": "GoogleCloudVisionV1p2beta1Word" + }, + "type": "array" + } + }, + "type": "object" + }, + "GoogleCloudVisionV1p2beta1Position": { + "description": "A 3D position in the image, used primarily for Face detection landmarks.\nA valid Position must have both x and y coordinates.\nThe position coordinates are in the same scale as the original image.", + "id": "GoogleCloudVisionV1p2beta1Position", + "properties": { + "x": { + "description": "X coordinate.", + "format": "float", + "type": "number" + }, + "y": { + "description": "Y coordinate.", + "format": "float", + "type": "number" + }, + "z": { + "description": "Z coordinate (or depth).", + "format": "float", + "type": "number" + } + }, + "type": "object" + }, + "GoogleCloudVisionV1p2beta1Property": { + "description": "A `Property` consists of a user-supplied name/value pair.", + "id": "GoogleCloudVisionV1p2beta1Property", + "properties": { + "name": { + "description": "Name of the property.", + "type": "string" + }, + "uint64Value": { + "description": "Value of numeric properties.", + "format": "uint64", + "type": "string" + }, + "value": { + "description": "Value of the property.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudVisionV1p2beta1SafeSearchAnnotation": { + "description": "Set of features pertaining to the image, computed by computer vision\nmethods over safe-search verticals (for example, adult, spoof, medical,\nviolence).", + "id": "GoogleCloudVisionV1p2beta1SafeSearchAnnotation", + "properties": { + "adult": { + "description": "Represents the adult content likelihood for the image. Adult content may\ncontain elements such as nudity, pornographic images or cartoons, or\nsexual activities.", + "enum": [ + "UNKNOWN", + "VERY_UNLIKELY", + "UNLIKELY", + "POSSIBLE", + "LIKELY", + "VERY_LIKELY" + ], + "enumDescriptions": [ + "Unknown likelihood.", + "It is very unlikely that the image belongs to the specified vertical.", + "It is unlikely that the image belongs to the specified vertical.", + "It is possible that the image belongs to the specified vertical.", + "It is likely that the image belongs to the specified vertical.", + "It is very likely that the image belongs to the specified vertical." + ], + "type": "string" + }, + "medical": { + "description": "Likelihood that this is a medical image.", + "enum": [ + "UNKNOWN", + "VERY_UNLIKELY", + "UNLIKELY", + "POSSIBLE", + "LIKELY", + "VERY_LIKELY" + ], + "enumDescriptions": [ + "Unknown likelihood.", + "It is very unlikely that the image belongs to the specified vertical.", + "It is unlikely that the image belongs to the specified vertical.", + "It is possible that the image belongs to the specified vertical.", + "It is likely that the image belongs to the specified vertical.", + "It is very likely that the image belongs to the specified vertical." + ], + "type": "string" + }, + "racy": { + "description": "Likelihood that the request image contains racy content. Racy content may\ninclude (but is not limited to) skimpy or sheer clothing, strategically\ncovered nudity, lewd or provocative poses, or close-ups of sensitive\nbody areas.", + "enum": [ + "UNKNOWN", + "VERY_UNLIKELY", + "UNLIKELY", + "POSSIBLE", + "LIKELY", + "VERY_LIKELY" + ], + "enumDescriptions": [ + "Unknown likelihood.", + "It is very unlikely that the image belongs to the specified vertical.", + "It is unlikely that the image belongs to the specified vertical.", + "It is possible that the image belongs to the specified vertical.", + "It is likely that the image belongs to the specified vertical.", + "It is very likely that the image belongs to the specified vertical." + ], + "type": "string" + }, + "spoof": { + "description": "Spoof likelihood. The likelihood that an modification\nwas made to the image's canonical version to make it appear\nfunny or offensive.", + "enum": [ + "UNKNOWN", + "VERY_UNLIKELY", + "UNLIKELY", + "POSSIBLE", + "LIKELY", + "VERY_LIKELY" + ], + "enumDescriptions": [ + "Unknown likelihood.", + "It is very unlikely that the image belongs to the specified vertical.", + "It is unlikely that the image belongs to the specified vertical.", + "It is possible that the image belongs to the specified vertical.", + "It is likely that the image belongs to the specified vertical.", + "It is very likely that the image belongs to the specified vertical." + ], + "type": "string" + }, + "violence": { + "description": "Likelihood that this image contains violent content.", + "enum": [ + "UNKNOWN", + "VERY_UNLIKELY", + "UNLIKELY", + "POSSIBLE", + "LIKELY", + "VERY_LIKELY" + ], + "enumDescriptions": [ + "Unknown likelihood.", + "It is very unlikely that the image belongs to the specified vertical.", + "It is unlikely that the image belongs to the specified vertical.", + "It is possible that the image belongs to the specified vertical.", + "It is likely that the image belongs to the specified vertical.", + "It is very likely that the image belongs to the specified vertical." + ], + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudVisionV1p2beta1Symbol": { + "description": "A single symbol representation.", + "id": "GoogleCloudVisionV1p2beta1Symbol", + "properties": { + "boundingBox": { + "$ref": "GoogleCloudVisionV1p2beta1BoundingPoly", + "description": "The bounding box for the symbol.\nThe vertices are in the order of top-left, top-right, bottom-right,\nbottom-left. When a rotation of the bounding box is detected the rotation\nis represented as around the top-left corner as defined when the text is\nread in the 'natural' orientation.\nFor example:\n * when the text is horizontal it might look like:\n 0----1\n | |\n 3----2\n * when it's rotated 180 degrees around the top-left corner it becomes:\n 2----3\n | |\n 1----0\n and the vertice order will still be (0, 1, 2, 3)." + }, + "confidence": { + "description": "Confidence of the OCR results for the symbol. Range [0, 1].", + "format": "float", + "type": "number" + }, + "property": { + "$ref": "GoogleCloudVisionV1p2beta1TextAnnotationTextProperty", + "description": "Additional information detected for the symbol." + }, + "text": { + "description": "The actual UTF-8 representation of the symbol.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudVisionV1p2beta1TextAnnotation": { + "description": "TextAnnotation contains a structured representation of OCR extracted text.\nThe hierarchy of an OCR extracted text structure is like this:\n TextAnnotation -\u003e Page -\u003e Block -\u003e Paragraph -\u003e Word -\u003e Symbol\nEach structural component, starting from Page, may further have their own\nproperties. Properties describe detected languages, breaks etc.. Please refer\nto the TextAnnotation.TextProperty message definition below for more\ndetail.", + "id": "GoogleCloudVisionV1p2beta1TextAnnotation", + "properties": { + "pages": { + "description": "List of pages detected by OCR.", + "items": { + "$ref": "GoogleCloudVisionV1p2beta1Page" + }, + "type": "array" + }, + "text": { + "description": "UTF-8 text detected on the pages.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudVisionV1p2beta1TextAnnotationDetectedBreak": { + "description": "Detected start or end of a structural component.", + "id": "GoogleCloudVisionV1p2beta1TextAnnotationDetectedBreak", + "properties": { + "isPrefix": { + "description": "True if break prepends the element.", + "type": "boolean" + }, + "type": { + "description": "Detected break type.", + "enum": [ + "UNKNOWN", + "SPACE", + "SURE_SPACE", + "EOL_SURE_SPACE", + "HYPHEN", + "LINE_BREAK" + ], + "enumDescriptions": [ + "Unknown break label type.", + "Regular space.", + "Sure space (very wide).", + "Line-wrapping break.", + "End-line hyphen that is not present in text; does not co-occur with\n`SPACE`, `LEADER_SPACE`, or `LINE_BREAK`.", + "Line break that ends a paragraph." + ], + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudVisionV1p2beta1TextAnnotationDetectedLanguage": { + "description": "Detected language for a structural component.", + "id": "GoogleCloudVisionV1p2beta1TextAnnotationDetectedLanguage", + "properties": { + "confidence": { + "description": "Confidence of detected language. Range [0, 1].", + "format": "float", + "type": "number" + }, + "languageCode": { + "description": "The BCP-47 language code, such as \"en-US\" or \"sr-Latn\". For more\ninformation, see\nhttp://www.unicode.org/reports/tr35/#Unicode_locale_identifier.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudVisionV1p2beta1TextAnnotationTextProperty": { + "description": "Additional information detected on the structural component.", + "id": "GoogleCloudVisionV1p2beta1TextAnnotationTextProperty", + "properties": { + "detectedBreak": { + "$ref": "GoogleCloudVisionV1p2beta1TextAnnotationDetectedBreak", + "description": "Detected start or end of a text segment." + }, + "detectedLanguages": { + "description": "A list of detected languages together with confidence.", + "items": { + "$ref": "GoogleCloudVisionV1p2beta1TextAnnotationDetectedLanguage" + }, + "type": "array" + } + }, + "type": "object" + }, + "GoogleCloudVisionV1p2beta1Vertex": { + "description": "A vertex represents a 2D point in the image.\nNOTE: the vertex coordinates are in the same scale as the original image.", + "id": "GoogleCloudVisionV1p2beta1Vertex", + "properties": { + "x": { + "description": "X coordinate.", + "format": "int32", + "type": "integer" + }, + "y": { + "description": "Y coordinate.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "GoogleCloudVisionV1p2beta1WebDetection": { + "description": "Relevant information for the image from the Internet.", + "id": "GoogleCloudVisionV1p2beta1WebDetection", + "properties": { + "bestGuessLabels": { + "description": "Best guess text labels for the request image.", + "items": { + "$ref": "GoogleCloudVisionV1p2beta1WebDetectionWebLabel" + }, + "type": "array" + }, + "fullMatchingImages": { + "description": "Fully matching images from the Internet.\nCan include resized copies of the query image.", + "items": { + "$ref": "GoogleCloudVisionV1p2beta1WebDetectionWebImage" + }, + "type": "array" + }, + "pagesWithMatchingImages": { + "description": "Web pages containing the matching images from the Internet.", + "items": { + "$ref": "GoogleCloudVisionV1p2beta1WebDetectionWebPage" + }, + "type": "array" + }, + "partialMatchingImages": { + "description": "Partial matching images from the Internet.\nThose images are similar enough to share some key-point features. For\nexample an original image will likely have partial matching for its crops.", + "items": { + "$ref": "GoogleCloudVisionV1p2beta1WebDetectionWebImage" + }, + "type": "array" + }, + "visuallySimilarImages": { + "description": "The visually similar image results.", + "items": { + "$ref": "GoogleCloudVisionV1p2beta1WebDetectionWebImage" + }, + "type": "array" + }, + "webEntities": { + "description": "Deduced entities from similar images on the Internet.", + "items": { + "$ref": "GoogleCloudVisionV1p2beta1WebDetectionWebEntity" + }, + "type": "array" + } + }, + "type": "object" + }, + "GoogleCloudVisionV1p2beta1WebDetectionParams": { + "description": "Parameters for web detection request.", + "id": "GoogleCloudVisionV1p2beta1WebDetectionParams", + "properties": { + "includeGeoResults": { + "description": "Whether to include results derived from the geo information in the image.", + "type": "boolean" + } + }, + "type": "object" + }, + "GoogleCloudVisionV1p2beta1WebDetectionWebEntity": { + "description": "Entity deduced from similar images on the Internet.", + "id": "GoogleCloudVisionV1p2beta1WebDetectionWebEntity", + "properties": { + "description": { + "description": "Canonical description of the entity, in English.", + "type": "string" + }, + "entityId": { + "description": "Opaque entity ID.", + "type": "string" + }, + "score": { + "description": "Overall relevancy score for the entity.\nNot normalized and not comparable across different image queries.", + "format": "float", + "type": "number" + } + }, + "type": "object" + }, + "GoogleCloudVisionV1p2beta1WebDetectionWebImage": { + "description": "Metadata for online images.", + "id": "GoogleCloudVisionV1p2beta1WebDetectionWebImage", + "properties": { + "score": { + "description": "(Deprecated) Overall relevancy score for the image.", + "format": "float", + "type": "number" + }, + "url": { + "description": "The result image URL.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudVisionV1p2beta1WebDetectionWebLabel": { + "description": "Label to provide extra metadata for the web detection.", + "id": "GoogleCloudVisionV1p2beta1WebDetectionWebLabel", + "properties": { + "label": { + "description": "Label for extra metadata.", + "type": "string" + }, + "languageCode": { + "description": "The BCP-47 language code for `label`, such as \"en-US\" or \"sr-Latn\".\nFor more information, see\nhttp://www.unicode.org/reports/tr35/#Unicode_locale_identifier.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudVisionV1p2beta1WebDetectionWebPage": { + "description": "Metadata for web pages.", + "id": "GoogleCloudVisionV1p2beta1WebDetectionWebPage", + "properties": { + "fullMatchingImages": { + "description": "Fully matching images on the page.\nCan include resized copies of the query image.", + "items": { + "$ref": "GoogleCloudVisionV1p2beta1WebDetectionWebImage" + }, + "type": "array" + }, + "pageTitle": { + "description": "Title for the web page, may contain HTML markups.", + "type": "string" + }, + "partialMatchingImages": { + "description": "Partial matching images on the page.\nThose images are similar enough to share some key-point features. For\nexample an original image will likely have partial matching for its\ncrops.", + "items": { + "$ref": "GoogleCloudVisionV1p2beta1WebDetectionWebImage" + }, + "type": "array" + }, + "score": { + "description": "(Deprecated) Overall relevancy score for the web page.", + "format": "float", + "type": "number" + }, + "url": { + "description": "The result web page URL.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudVisionV1p2beta1Word": { + "description": "A word representation.", + "id": "GoogleCloudVisionV1p2beta1Word", + "properties": { + "boundingBox": { + "$ref": "GoogleCloudVisionV1p2beta1BoundingPoly", + "description": "The bounding box for the word.\nThe vertices are in the order of top-left, top-right, bottom-right,\nbottom-left. When a rotation of the bounding box is detected the rotation\nis represented as around the top-left corner as defined when the text is\nread in the 'natural' orientation.\nFor example:\n * when the text is horizontal it might look like:\n 0----1\n | |\n 3----2\n * when it's rotated 180 degrees around the top-left corner it becomes:\n 2----3\n | |\n 1----0\n and the vertice order will still be (0, 1, 2, 3)." + }, + "confidence": { + "description": "Confidence of the OCR results for the word. Range [0, 1].", + "format": "float", + "type": "number" + }, + "property": { + "$ref": "GoogleCloudVisionV1p2beta1TextAnnotationTextProperty", + "description": "Additional information detected for the word." + }, + "symbols": { + "description": "List of symbols in the word.\nThe order of the symbols follows the natural reading order.", + "items": { + "$ref": "GoogleCloudVisionV1p2beta1Symbol" + }, + "type": "array" + } + }, + "type": "object" + }, + "LatLng": { + "description": "An object representing a latitude/longitude pair. This is expressed as a pair\nof doubles representing degrees latitude and degrees longitude. Unless\nspecified otherwise, this must conform to the\n\u003ca href=\"http://www.unoosa.org/pdf/icg/2012/template/WGS_84.pdf\"\u003eWGS84\nstandard\u003c/a\u003e. Values must be within normalized ranges.", + "id": "LatLng", + "properties": { + "latitude": { + "description": "The latitude in degrees. It must be in the range [-90.0, +90.0].", + "format": "double", + "type": "number" + }, + "longitude": { + "description": "The longitude in degrees. It must be in the range [-180.0, +180.0].", + "format": "double", + "type": "number" + } + }, + "type": "object" + }, + "Operation": { + "description": "This resource represents a long-running operation that is the result of a\nnetwork API call.", + "id": "Operation", + "properties": { + "done": { + "description": "If the value is `false`, it means the operation is still in progress.\nIf `true`, the operation is completed, and either `error` or `response` is\navailable.", + "type": "boolean" + }, + "error": { + "$ref": "Status", + "description": "The error result of the operation in case of failure or cancellation." + }, + "metadata": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "description": "Service-specific metadata associated with the operation. It typically\ncontains progress information and common metadata such as create time.\nSome services might not provide such metadata. Any method that returns a\nlong-running operation should document the metadata type, if any.", + "type": "object" + }, + "name": { + "description": "The server-assigned name, which is only unique within the same service that\noriginally returns it. If you use the default HTTP mapping, the\n`name` should have the format of `operations/some/unique/name`.", + "type": "string" + }, + "response": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "description": "The normal response of the operation in case of success. If the original\nmethod returns no data on success, such as `Delete`, the response is\n`google.protobuf.Empty`. If the original method is standard\n`Get`/`Create`/`Update`, the response should be the resource. For other\nmethods, the response should have the type `XxxResponse`, where `Xxx`\nis the original method name. For example, if the original method name\nis `TakeSnapshot()`, the inferred response type is\n`TakeSnapshotResponse`.", + "type": "object" + } + }, + "type": "object" + }, + "Status": { + "description": "The `Status` type defines a logical error model that is suitable for different\nprogramming environments, including REST APIs and RPC APIs. It is used by\n[gRPC](https://github.com/grpc). The error model is designed to be:\n\n- Simple to use and understand for most users\n- Flexible enough to meet unexpected needs\n\n# Overview\n\nThe `Status` message contains three pieces of data: error code, error message,\nand error details. The error code should be an enum value of\ngoogle.rpc.Code, but it may accept additional error codes if needed. The\nerror message should be a developer-facing English message that helps\ndevelopers *understand* and *resolve* the error. If a localized user-facing\nerror message is needed, put the localized message in the error details or\nlocalize it in the client. The optional error details may contain arbitrary\ninformation about the error. There is a predefined set of error detail types\nin the package `google.rpc` that can be used for common error conditions.\n\n# Language mapping\n\nThe `Status` message is the logical representation of the error model, but it\nis not necessarily the actual wire format. When the `Status` message is\nexposed in different client libraries and different wire protocols, it can be\nmapped differently. For example, it will likely be mapped to some exceptions\nin Java, but more likely mapped to some error codes in C.\n\n# Other uses\n\nThe error model and the `Status` message can be used in a variety of\nenvironments, either with or without APIs, to provide a\nconsistent developer experience across different environments.\n\nExample uses of this error model include:\n\n- Partial errors. If a service needs to return partial errors to the client,\n it may embed the `Status` in the normal response to indicate the partial\n errors.\n\n- Workflow errors. A typical workflow has multiple steps. Each step may\n have a `Status` message for error reporting.\n\n- Batch operations. If a client uses batch request and batch response, the\n `Status` message should be used directly inside batch response, one for\n each error sub-response.\n\n- Asynchronous operations. If an API call embeds asynchronous operation\n results in its response, the status of those operations should be\n represented directly using the `Status` message.\n\n- Logging. If some API errors are stored in logs, the message `Status` could\n be used directly after any stripping needed for security/privacy reasons.", + "id": "Status", + "properties": { + "code": { + "description": "The status code, which should be an enum value of google.rpc.Code.", + "format": "int32", + "type": "integer" + }, + "details": { + "description": "A list of messages that carry the error details. There is a common set of\nmessage types for APIs to use.", + "items": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "A developer-facing error message, which should be in English. Any\nuser-facing error message should be localized and sent in the\ngoogle.rpc.Status.details field, or localized by the client.", + "type": "string" + } + }, + "type": "object" + } + }, + "servicePath": "", + "title": "Cloud Vision API", + "version": "v1p2beta1", + "version_module": true +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/vision/v1p2beta1/vision-gen.go b/vendor/google.golang.org/api/vision/v1p2beta1/vision-gen.go new file mode 100644 index 000000000..fa89d45a8 --- /dev/null +++ b/vendor/google.golang.org/api/vision/v1p2beta1/vision-gen.go @@ -0,0 +1,3331 @@ +// Package vision provides access to the Cloud Vision API. +// +// See https://cloud.google.com/vision/ +// +// Usage example: +// +// import "google.golang.org/api/vision/v1p2beta1" +// ... +// visionService, err := vision.New(oauthHttpClient) +package vision // import "google.golang.org/api/vision/v1p2beta1" + +import ( + "bytes" + "encoding/json" + "errors" + "fmt" + context "golang.org/x/net/context" + ctxhttp "golang.org/x/net/context/ctxhttp" + gensupport "google.golang.org/api/gensupport" + googleapi "google.golang.org/api/googleapi" + "io" + "net/http" + "net/url" + "strconv" + "strings" +) + +// Always reference these packages, just in case the auto-generated code +// below doesn't. +var _ = bytes.NewBuffer +var _ = strconv.Itoa +var _ = fmt.Sprintf +var _ = json.NewDecoder +var _ = io.Copy +var _ = url.Parse +var _ = gensupport.MarshalJSON +var _ = googleapi.Version +var _ = errors.New +var _ = strings.Replace +var _ = context.Canceled +var _ = ctxhttp.Do + +const apiId = "vision:v1p2beta1" +const apiName = "vision" +const apiVersion = "v1p2beta1" +const basePath = "https://vision.googleapis.com/" + +// OAuth2 scopes used by this API. +const ( + // View and manage your data across Google Cloud Platform services + CloudPlatformScope = "https://www.googleapis.com/auth/cloud-platform" + + // Apply machine learning models to understand and label images + CloudVisionScope = "https://www.googleapis.com/auth/cloud-vision" +) + +func New(client *http.Client) (*Service, error) { + if client == nil { + return nil, errors.New("client is nil") + } + s := &Service{client: client, BasePath: basePath} + s.Files = NewFilesService(s) + s.Images = NewImagesService(s) + return s, nil +} + +type Service struct { + client *http.Client + BasePath string // API endpoint base URL + UserAgent string // optional additional User-Agent fragment + + Files *FilesService + + Images *ImagesService +} + +func (s *Service) userAgent() string { + if s.UserAgent == "" { + return googleapi.UserAgent + } + return googleapi.UserAgent + " " + s.UserAgent +} + +func NewFilesService(s *Service) *FilesService { + rs := &FilesService{s: s} + return rs +} + +type FilesService struct { + s *Service +} + +func NewImagesService(s *Service) *ImagesService { + rs := &ImagesService{s: s} + return rs +} + +type ImagesService struct { + s *Service +} + +// Color: Represents a color in the RGBA color space. This +// representation is designed +// for simplicity of conversion to/from color representations in +// various +// languages over compactness; for example, the fields of this +// representation +// can be trivially provided to the constructor of "java.awt.Color" in +// Java; it +// can also be trivially provided to UIColor's +// "+colorWithRed:green:blue:alpha" +// method in iOS; and, with just a little work, it can be easily +// formatted into +// a CSS "rgba()" string in JavaScript, as well. Here are some +// examples: +// +// Example (Java): +// +// import com.google.type.Color; +// +// // ... +// public static java.awt.Color fromProto(Color protocolor) { +// float alpha = protocolor.hasAlpha() +// ? protocolor.getAlpha().getValue() +// : 1.0; +// +// return new java.awt.Color( +// protocolor.getRed(), +// protocolor.getGreen(), +// protocolor.getBlue(), +// alpha); +// } +// +// public static Color toProto(java.awt.Color color) { +// float red = (float) color.getRed(); +// float green = (float) color.getGreen(); +// float blue = (float) color.getBlue(); +// float denominator = 255.0; +// Color.Builder resultBuilder = +// Color +// .newBuilder() +// .setRed(red / denominator) +// .setGreen(green / denominator) +// .setBlue(blue / denominator); +// int alpha = color.getAlpha(); +// if (alpha != 255) { +// result.setAlpha( +// FloatValue +// .newBuilder() +// .setValue(((float) alpha) / denominator) +// .build()); +// } +// return resultBuilder.build(); +// } +// // ... +// +// Example (iOS / Obj-C): +// +// // ... +// static UIColor* fromProto(Color* protocolor) { +// float red = [protocolor red]; +// float green = [protocolor green]; +// float blue = [protocolor blue]; +// FloatValue* alpha_wrapper = [protocolor alpha]; +// float alpha = 1.0; +// if (alpha_wrapper != nil) { +// alpha = [alpha_wrapper value]; +// } +// return [UIColor colorWithRed:red green:green blue:blue +// alpha:alpha]; +// } +// +// static Color* toProto(UIColor* color) { +// CGFloat red, green, blue, alpha; +// if (![color getRed:&red green:&green blue:&blue +// alpha:&alpha]) { +// return nil; +// } +// Color* result = [Color alloc] init]; +// [result setRed:red]; +// [result setGreen:green]; +// [result setBlue:blue]; +// if (alpha <= 0.9999) { +// [result setAlpha:floatWrapperWithValue(alpha)]; +// } +// [result autorelease]; +// return result; +// } +// // ... +// +// Example (JavaScript): +// +// // ... +// +// var protoToCssColor = function(rgb_color) { +// var redFrac = rgb_color.red || 0.0; +// var greenFrac = rgb_color.green || 0.0; +// var blueFrac = rgb_color.blue || 0.0; +// var red = Math.floor(redFrac * 255); +// var green = Math.floor(greenFrac * 255); +// var blue = Math.floor(blueFrac * 255); +// +// if (!('alpha' in rgb_color)) { +// return rgbToCssColor_(red, green, blue); +// } +// +// var alphaFrac = rgb_color.alpha.value || 0.0; +// var rgbParams = [red, green, blue].join(','); +// return ['rgba(', rgbParams, ',', alphaFrac, ')'].join(''); +// }; +// +// var rgbToCssColor_ = function(red, green, blue) { +// var rgbNumber = new Number((red << 16) | (green << 8) | blue); +// var hexString = rgbNumber.toString(16); +// var missingZeros = 6 - hexString.length; +// var resultBuilder = ['#']; +// for (var i = 0; i < missingZeros; i++) { +// resultBuilder.push('0'); +// } +// resultBuilder.push(hexString); +// return resultBuilder.join(''); +// }; +// +// // ... +type Color struct { + // Alpha: The fraction of this color that should be applied to the + // pixel. That is, + // the final pixel color is defined by the equation: + // + // pixel color = alpha * (this color) + (1.0 - alpha) * (background + // color) + // + // This means that a value of 1.0 corresponds to a solid color, + // whereas + // a value of 0.0 corresponds to a completely transparent color. + // This + // uses a wrapper message rather than a simple float scalar so that it + // is + // possible to distinguish between a default value and the value being + // unset. + // If omitted, this color object is to be rendered as a solid color + // (as if the alpha value had been explicitly given with a value of + // 1.0). + Alpha float64 `json:"alpha,omitempty"` + + // Blue: The amount of blue in the color as a value in the interval [0, + // 1]. + Blue float64 `json:"blue,omitempty"` + + // Green: The amount of green in the color as a value in the interval + // [0, 1]. + Green float64 `json:"green,omitempty"` + + // Red: The amount of red in the color as a value in the interval [0, + // 1]. + Red float64 `json:"red,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Alpha") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Alpha") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *Color) MarshalJSON() ([]byte, error) { + type NoMethod Color + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +func (s *Color) UnmarshalJSON(data []byte) error { + type NoMethod Color + var s1 struct { + Alpha gensupport.JSONFloat64 `json:"alpha"` + Blue gensupport.JSONFloat64 `json:"blue"` + Green gensupport.JSONFloat64 `json:"green"` + Red gensupport.JSONFloat64 `json:"red"` + *NoMethod + } + s1.NoMethod = (*NoMethod)(s) + if err := json.Unmarshal(data, &s1); err != nil { + return err + } + s.Alpha = float64(s1.Alpha) + s.Blue = float64(s1.Blue) + s.Green = float64(s1.Green) + s.Red = float64(s1.Red) + return nil +} + +// GoogleCloudVisionV1p2beta1AnnotateImageRequest: Request for +// performing Google Cloud Vision API tasks over a user-provided +// image, with user-requested features. +type GoogleCloudVisionV1p2beta1AnnotateImageRequest struct { + // Features: Requested features. + Features []*GoogleCloudVisionV1p2beta1Feature `json:"features,omitempty"` + + // Image: The image to be processed. + Image *GoogleCloudVisionV1p2beta1Image `json:"image,omitempty"` + + // ImageContext: Additional context that may accompany the image. + ImageContext *GoogleCloudVisionV1p2beta1ImageContext `json:"imageContext,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Features") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Features") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudVisionV1p2beta1AnnotateImageRequest) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudVisionV1p2beta1AnnotateImageRequest + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudVisionV1p2beta1AnnotateImageResponse: Response to an image +// annotation request. +type GoogleCloudVisionV1p2beta1AnnotateImageResponse struct { + // Context: If present, contextual information is needed to understand + // where this image + // comes from. + Context *GoogleCloudVisionV1p2beta1ImageAnnotationContext `json:"context,omitempty"` + + // CropHintsAnnotation: If present, crop hints have completed + // successfully. + CropHintsAnnotation *GoogleCloudVisionV1p2beta1CropHintsAnnotation `json:"cropHintsAnnotation,omitempty"` + + // Error: If set, represents the error message for the operation. + // Note that filled-in image annotations are guaranteed to be + // correct, even when `error` is set. + Error *Status `json:"error,omitempty"` + + // FaceAnnotations: If present, face detection has completed + // successfully. + FaceAnnotations []*GoogleCloudVisionV1p2beta1FaceAnnotation `json:"faceAnnotations,omitempty"` + + // FullTextAnnotation: If present, text (OCR) detection or document + // (OCR) text detection has + // completed successfully. + // This annotation provides the structural hierarchy for the OCR + // detected + // text. + FullTextAnnotation *GoogleCloudVisionV1p2beta1TextAnnotation `json:"fullTextAnnotation,omitempty"` + + // ImagePropertiesAnnotation: If present, image properties were + // extracted successfully. + ImagePropertiesAnnotation *GoogleCloudVisionV1p2beta1ImageProperties `json:"imagePropertiesAnnotation,omitempty"` + + // LabelAnnotations: If present, label detection has completed + // successfully. + LabelAnnotations []*GoogleCloudVisionV1p2beta1EntityAnnotation `json:"labelAnnotations,omitempty"` + + // LandmarkAnnotations: If present, landmark detection has completed + // successfully. + LandmarkAnnotations []*GoogleCloudVisionV1p2beta1EntityAnnotation `json:"landmarkAnnotations,omitempty"` + + // LogoAnnotations: If present, logo detection has completed + // successfully. + LogoAnnotations []*GoogleCloudVisionV1p2beta1EntityAnnotation `json:"logoAnnotations,omitempty"` + + // SafeSearchAnnotation: If present, safe-search annotation has + // completed successfully. + SafeSearchAnnotation *GoogleCloudVisionV1p2beta1SafeSearchAnnotation `json:"safeSearchAnnotation,omitempty"` + + // TextAnnotations: If present, text (OCR) detection has completed + // successfully. + TextAnnotations []*GoogleCloudVisionV1p2beta1EntityAnnotation `json:"textAnnotations,omitempty"` + + // WebDetection: If present, web detection has completed successfully. + WebDetection *GoogleCloudVisionV1p2beta1WebDetection `json:"webDetection,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Context") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Context") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudVisionV1p2beta1AnnotateImageResponse) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudVisionV1p2beta1AnnotateImageResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudVisionV1p2beta1AsyncAnnotateFileRequest: An offline file +// annotation request. +type GoogleCloudVisionV1p2beta1AsyncAnnotateFileRequest struct { + // Features: Required. Requested features. + Features []*GoogleCloudVisionV1p2beta1Feature `json:"features,omitempty"` + + // ImageContext: Additional context that may accompany the image(s) in + // the file. + ImageContext *GoogleCloudVisionV1p2beta1ImageContext `json:"imageContext,omitempty"` + + // InputConfig: Required. Information about the input file. + InputConfig *GoogleCloudVisionV1p2beta1InputConfig `json:"inputConfig,omitempty"` + + // OutputConfig: Required. The desired output location and metadata + // (e.g. format). + OutputConfig *GoogleCloudVisionV1p2beta1OutputConfig `json:"outputConfig,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Features") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Features") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudVisionV1p2beta1AsyncAnnotateFileRequest) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudVisionV1p2beta1AsyncAnnotateFileRequest + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudVisionV1p2beta1AsyncAnnotateFileResponse: The response for +// a single offline file annotation request. +type GoogleCloudVisionV1p2beta1AsyncAnnotateFileResponse struct { + // OutputConfig: The output location and metadata from + // AsyncAnnotateFileRequest. + OutputConfig *GoogleCloudVisionV1p2beta1OutputConfig `json:"outputConfig,omitempty"` + + // ForceSendFields is a list of field names (e.g. "OutputConfig") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "OutputConfig") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudVisionV1p2beta1AsyncAnnotateFileResponse) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudVisionV1p2beta1AsyncAnnotateFileResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudVisionV1p2beta1AsyncBatchAnnotateFilesRequest: Multiple +// async file annotation requests are batched into a single +// service +// call. +type GoogleCloudVisionV1p2beta1AsyncBatchAnnotateFilesRequest struct { + // Requests: Individual async file annotation requests for this batch. + Requests []*GoogleCloudVisionV1p2beta1AsyncAnnotateFileRequest `json:"requests,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Requests") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Requests") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudVisionV1p2beta1AsyncBatchAnnotateFilesRequest) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudVisionV1p2beta1AsyncBatchAnnotateFilesRequest + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudVisionV1p2beta1AsyncBatchAnnotateFilesResponse: Response +// to an async batch file annotation request. +type GoogleCloudVisionV1p2beta1AsyncBatchAnnotateFilesResponse struct { + // Responses: The list of file annotation responses, one for each + // request in + // AsyncBatchAnnotateFilesRequest. + Responses []*GoogleCloudVisionV1p2beta1AsyncAnnotateFileResponse `json:"responses,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Responses") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Responses") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudVisionV1p2beta1AsyncBatchAnnotateFilesResponse) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudVisionV1p2beta1AsyncBatchAnnotateFilesResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudVisionV1p2beta1BatchAnnotateImagesRequest: Multiple image +// annotation requests are batched into a single service call. +type GoogleCloudVisionV1p2beta1BatchAnnotateImagesRequest struct { + // Requests: Individual image annotation requests for this batch. + Requests []*GoogleCloudVisionV1p2beta1AnnotateImageRequest `json:"requests,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Requests") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Requests") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudVisionV1p2beta1BatchAnnotateImagesRequest) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudVisionV1p2beta1BatchAnnotateImagesRequest + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudVisionV1p2beta1BatchAnnotateImagesResponse: Response to a +// batch image annotation request. +type GoogleCloudVisionV1p2beta1BatchAnnotateImagesResponse struct { + // Responses: Individual responses to image annotation requests within + // the batch. + Responses []*GoogleCloudVisionV1p2beta1AnnotateImageResponse `json:"responses,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "Responses") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Responses") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudVisionV1p2beta1BatchAnnotateImagesResponse) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudVisionV1p2beta1BatchAnnotateImagesResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudVisionV1p2beta1Block: Logical element on the page. +type GoogleCloudVisionV1p2beta1Block struct { + // BlockType: Detected block type (text, image etc) for this block. + // + // Possible values: + // "UNKNOWN" - Unknown block type. + // "TEXT" - Regular text block. + // "TABLE" - Table block. + // "PICTURE" - Image block. + // "RULER" - Horizontal/vertical line box. + // "BARCODE" - Barcode block. + BlockType string `json:"blockType,omitempty"` + + // BoundingBox: The bounding box for the block. + // The vertices are in the order of top-left, top-right, + // bottom-right, + // bottom-left. When a rotation of the bounding box is detected the + // rotation + // is represented as around the top-left corner as defined when the text + // is + // read in the 'natural' orientation. + // For example: + // + // * when the text is horizontal it might look like: + // + // 0----1 + // | | + // 3----2 + // + // * when it's rotated 180 degrees around the top-left corner it + // becomes: + // + // 2----3 + // | | + // 1----0 + // + // and the vertice order will still be (0, 1, 2, 3). + BoundingBox *GoogleCloudVisionV1p2beta1BoundingPoly `json:"boundingBox,omitempty"` + + // Confidence: Confidence of the OCR results on the block. Range [0, 1]. + Confidence float64 `json:"confidence,omitempty"` + + // Paragraphs: List of paragraphs in this block (if this blocks is of + // type text). + Paragraphs []*GoogleCloudVisionV1p2beta1Paragraph `json:"paragraphs,omitempty"` + + // Property: Additional information detected for the block. + Property *GoogleCloudVisionV1p2beta1TextAnnotationTextProperty `json:"property,omitempty"` + + // ForceSendFields is a list of field names (e.g. "BlockType") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "BlockType") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudVisionV1p2beta1Block) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudVisionV1p2beta1Block + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +func (s *GoogleCloudVisionV1p2beta1Block) UnmarshalJSON(data []byte) error { + type NoMethod GoogleCloudVisionV1p2beta1Block + var s1 struct { + Confidence gensupport.JSONFloat64 `json:"confidence"` + *NoMethod + } + s1.NoMethod = (*NoMethod)(s) + if err := json.Unmarshal(data, &s1); err != nil { + return err + } + s.Confidence = float64(s1.Confidence) + return nil +} + +// GoogleCloudVisionV1p2beta1BoundingPoly: A bounding polygon for the +// detected image annotation. +type GoogleCloudVisionV1p2beta1BoundingPoly struct { + // Vertices: The bounding polygon vertices. + Vertices []*GoogleCloudVisionV1p2beta1Vertex `json:"vertices,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Vertices") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Vertices") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudVisionV1p2beta1BoundingPoly) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudVisionV1p2beta1BoundingPoly + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudVisionV1p2beta1ColorInfo: Color information consists of +// RGB channels, score, and the fraction of +// the image that the color occupies in the image. +type GoogleCloudVisionV1p2beta1ColorInfo struct { + // Color: RGB components of the color. + Color *Color `json:"color,omitempty"` + + // PixelFraction: The fraction of pixels the color occupies in the + // image. + // Value in range [0, 1]. + PixelFraction float64 `json:"pixelFraction,omitempty"` + + // Score: Image-specific score for this color. Value in range [0, 1]. + Score float64 `json:"score,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Color") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Color") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudVisionV1p2beta1ColorInfo) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudVisionV1p2beta1ColorInfo + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +func (s *GoogleCloudVisionV1p2beta1ColorInfo) UnmarshalJSON(data []byte) error { + type NoMethod GoogleCloudVisionV1p2beta1ColorInfo + var s1 struct { + PixelFraction gensupport.JSONFloat64 `json:"pixelFraction"` + Score gensupport.JSONFloat64 `json:"score"` + *NoMethod + } + s1.NoMethod = (*NoMethod)(s) + if err := json.Unmarshal(data, &s1); err != nil { + return err + } + s.PixelFraction = float64(s1.PixelFraction) + s.Score = float64(s1.Score) + return nil +} + +// GoogleCloudVisionV1p2beta1CropHint: Single crop hint that is used to +// generate a new crop when serving an image. +type GoogleCloudVisionV1p2beta1CropHint struct { + // BoundingPoly: The bounding polygon for the crop region. The + // coordinates of the bounding + // box are in the original image's scale, as returned in `ImageParams`. + BoundingPoly *GoogleCloudVisionV1p2beta1BoundingPoly `json:"boundingPoly,omitempty"` + + // Confidence: Confidence of this being a salient region. Range [0, 1]. + Confidence float64 `json:"confidence,omitempty"` + + // ImportanceFraction: Fraction of importance of this salient region + // with respect to the original + // image. + ImportanceFraction float64 `json:"importanceFraction,omitempty"` + + // ForceSendFields is a list of field names (e.g. "BoundingPoly") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "BoundingPoly") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudVisionV1p2beta1CropHint) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudVisionV1p2beta1CropHint + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +func (s *GoogleCloudVisionV1p2beta1CropHint) UnmarshalJSON(data []byte) error { + type NoMethod GoogleCloudVisionV1p2beta1CropHint + var s1 struct { + Confidence gensupport.JSONFloat64 `json:"confidence"` + ImportanceFraction gensupport.JSONFloat64 `json:"importanceFraction"` + *NoMethod + } + s1.NoMethod = (*NoMethod)(s) + if err := json.Unmarshal(data, &s1); err != nil { + return err + } + s.Confidence = float64(s1.Confidence) + s.ImportanceFraction = float64(s1.ImportanceFraction) + return nil +} + +// GoogleCloudVisionV1p2beta1CropHintsAnnotation: Set of crop hints that +// are used to generate new crops when serving images. +type GoogleCloudVisionV1p2beta1CropHintsAnnotation struct { + // CropHints: Crop hint results. + CropHints []*GoogleCloudVisionV1p2beta1CropHint `json:"cropHints,omitempty"` + + // ForceSendFields is a list of field names (e.g. "CropHints") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "CropHints") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudVisionV1p2beta1CropHintsAnnotation) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudVisionV1p2beta1CropHintsAnnotation + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudVisionV1p2beta1CropHintsParams: Parameters for crop hints +// annotation request. +type GoogleCloudVisionV1p2beta1CropHintsParams struct { + // AspectRatios: Aspect ratios in floats, representing the ratio of the + // width to the height + // of the image. For example, if the desired aspect ratio is 4/3, + // the + // corresponding float value should be 1.33333. If not specified, + // the + // best possible crop is returned. The number of provided aspect ratios + // is + // limited to a maximum of 16; any aspect ratios provided after the 16th + // are + // ignored. + AspectRatios []float64 `json:"aspectRatios,omitempty"` + + // ForceSendFields is a list of field names (e.g. "AspectRatios") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "AspectRatios") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudVisionV1p2beta1CropHintsParams) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudVisionV1p2beta1CropHintsParams + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudVisionV1p2beta1DominantColorsAnnotation: Set of dominant +// colors and their corresponding scores. +type GoogleCloudVisionV1p2beta1DominantColorsAnnotation struct { + // Colors: RGB color values with their score and pixel fraction. + Colors []*GoogleCloudVisionV1p2beta1ColorInfo `json:"colors,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Colors") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Colors") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudVisionV1p2beta1DominantColorsAnnotation) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudVisionV1p2beta1DominantColorsAnnotation + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudVisionV1p2beta1EntityAnnotation: Set of detected entity +// features. +type GoogleCloudVisionV1p2beta1EntityAnnotation struct { + // BoundingPoly: Image region to which this entity belongs. Not + // produced + // for `LABEL_DETECTION` features. + BoundingPoly *GoogleCloudVisionV1p2beta1BoundingPoly `json:"boundingPoly,omitempty"` + + // Confidence: **Deprecated. Use `score` instead.** + // The accuracy of the entity detection in an image. + // For example, for an image in which the "Eiffel Tower" entity is + // detected, + // this field represents the confidence that there is a tower in the + // query + // image. Range [0, 1]. + Confidence float64 `json:"confidence,omitempty"` + + // Description: Entity textual description, expressed in its `locale` + // language. + Description string `json:"description,omitempty"` + + // Locale: The language code for the locale in which the entity + // textual + // `description` is expressed. + Locale string `json:"locale,omitempty"` + + // Locations: The location information for the detected entity. + // Multiple + // `LocationInfo` elements can be present because one location + // may + // indicate the location of the scene in the image, and another + // location + // may indicate the location of the place where the image was + // taken. + // Location information is usually present for landmarks. + Locations []*GoogleCloudVisionV1p2beta1LocationInfo `json:"locations,omitempty"` + + // Mid: Opaque entity ID. Some IDs may be available in + // [Google Knowledge Graph + // Search + // API](https://developers.google.com/knowledge-graph/). + Mid string `json:"mid,omitempty"` + + // Properties: Some entities may have optional user-supplied `Property` + // (name/value) + // fields, such a score or string that qualifies the entity. + Properties []*GoogleCloudVisionV1p2beta1Property `json:"properties,omitempty"` + + // Score: Overall score of the result. Range [0, 1]. + Score float64 `json:"score,omitempty"` + + // Topicality: The relevancy of the ICA (Image Content Annotation) label + // to the + // image. For example, the relevancy of "tower" is likely higher to an + // image + // containing the detected "Eiffel Tower" than to an image containing + // a + // detected distant towering building, even though the confidence + // that + // there is a tower in each image may be the same. Range [0, 1]. + Topicality float64 `json:"topicality,omitempty"` + + // ForceSendFields is a list of field names (e.g. "BoundingPoly") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "BoundingPoly") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudVisionV1p2beta1EntityAnnotation) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudVisionV1p2beta1EntityAnnotation + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +func (s *GoogleCloudVisionV1p2beta1EntityAnnotation) UnmarshalJSON(data []byte) error { + type NoMethod GoogleCloudVisionV1p2beta1EntityAnnotation + var s1 struct { + Confidence gensupport.JSONFloat64 `json:"confidence"` + Score gensupport.JSONFloat64 `json:"score"` + Topicality gensupport.JSONFloat64 `json:"topicality"` + *NoMethod + } + s1.NoMethod = (*NoMethod)(s) + if err := json.Unmarshal(data, &s1); err != nil { + return err + } + s.Confidence = float64(s1.Confidence) + s.Score = float64(s1.Score) + s.Topicality = float64(s1.Topicality) + return nil +} + +// GoogleCloudVisionV1p2beta1FaceAnnotation: A face annotation object +// contains the results of face detection. +type GoogleCloudVisionV1p2beta1FaceAnnotation struct { + // AngerLikelihood: Anger likelihood. + // + // Possible values: + // "UNKNOWN" - Unknown likelihood. + // "VERY_UNLIKELY" - It is very unlikely that the image belongs to the + // specified vertical. + // "UNLIKELY" - It is unlikely that the image belongs to the specified + // vertical. + // "POSSIBLE" - It is possible that the image belongs to the specified + // vertical. + // "LIKELY" - It is likely that the image belongs to the specified + // vertical. + // "VERY_LIKELY" - It is very likely that the image belongs to the + // specified vertical. + AngerLikelihood string `json:"angerLikelihood,omitempty"` + + // BlurredLikelihood: Blurred likelihood. + // + // Possible values: + // "UNKNOWN" - Unknown likelihood. + // "VERY_UNLIKELY" - It is very unlikely that the image belongs to the + // specified vertical. + // "UNLIKELY" - It is unlikely that the image belongs to the specified + // vertical. + // "POSSIBLE" - It is possible that the image belongs to the specified + // vertical. + // "LIKELY" - It is likely that the image belongs to the specified + // vertical. + // "VERY_LIKELY" - It is very likely that the image belongs to the + // specified vertical. + BlurredLikelihood string `json:"blurredLikelihood,omitempty"` + + // BoundingPoly: The bounding polygon around the face. The coordinates + // of the bounding box + // are in the original image's scale, as returned in `ImageParams`. + // The bounding box is computed to "frame" the face in accordance with + // human + // expectations. It is based on the landmarker results. + // Note that one or more x and/or y coordinates may not be generated in + // the + // `BoundingPoly` (the polygon will be unbounded) if only a partial + // face + // appears in the image to be annotated. + BoundingPoly *GoogleCloudVisionV1p2beta1BoundingPoly `json:"boundingPoly,omitempty"` + + // DetectionConfidence: Detection confidence. Range [0, 1]. + DetectionConfidence float64 `json:"detectionConfidence,omitempty"` + + // FdBoundingPoly: The `fd_bounding_poly` bounding polygon is tighter + // than the + // `boundingPoly`, and encloses only the skin part of the face. + // Typically, it + // is used to eliminate the face from any image analysis that detects + // the + // "amount of skin" visible in an image. It is not based on + // the + // landmarker results, only on the initial face detection, hence + // the fd (face detection) prefix. + FdBoundingPoly *GoogleCloudVisionV1p2beta1BoundingPoly `json:"fdBoundingPoly,omitempty"` + + // HeadwearLikelihood: Headwear likelihood. + // + // Possible values: + // "UNKNOWN" - Unknown likelihood. + // "VERY_UNLIKELY" - It is very unlikely that the image belongs to the + // specified vertical. + // "UNLIKELY" - It is unlikely that the image belongs to the specified + // vertical. + // "POSSIBLE" - It is possible that the image belongs to the specified + // vertical. + // "LIKELY" - It is likely that the image belongs to the specified + // vertical. + // "VERY_LIKELY" - It is very likely that the image belongs to the + // specified vertical. + HeadwearLikelihood string `json:"headwearLikelihood,omitempty"` + + // JoyLikelihood: Joy likelihood. + // + // Possible values: + // "UNKNOWN" - Unknown likelihood. + // "VERY_UNLIKELY" - It is very unlikely that the image belongs to the + // specified vertical. + // "UNLIKELY" - It is unlikely that the image belongs to the specified + // vertical. + // "POSSIBLE" - It is possible that the image belongs to the specified + // vertical. + // "LIKELY" - It is likely that the image belongs to the specified + // vertical. + // "VERY_LIKELY" - It is very likely that the image belongs to the + // specified vertical. + JoyLikelihood string `json:"joyLikelihood,omitempty"` + + // LandmarkingConfidence: Face landmarking confidence. Range [0, 1]. + LandmarkingConfidence float64 `json:"landmarkingConfidence,omitempty"` + + // Landmarks: Detected face landmarks. + Landmarks []*GoogleCloudVisionV1p2beta1FaceAnnotationLandmark `json:"landmarks,omitempty"` + + // PanAngle: Yaw angle, which indicates the leftward/rightward angle + // that the face is + // pointing relative to the vertical plane perpendicular to the image. + // Range + // [-180,180]. + PanAngle float64 `json:"panAngle,omitempty"` + + // RollAngle: Roll angle, which indicates the amount of + // clockwise/anti-clockwise rotation + // of the face relative to the image vertical about the axis + // perpendicular to + // the face. Range [-180,180]. + RollAngle float64 `json:"rollAngle,omitempty"` + + // SorrowLikelihood: Sorrow likelihood. + // + // Possible values: + // "UNKNOWN" - Unknown likelihood. + // "VERY_UNLIKELY" - It is very unlikely that the image belongs to the + // specified vertical. + // "UNLIKELY" - It is unlikely that the image belongs to the specified + // vertical. + // "POSSIBLE" - It is possible that the image belongs to the specified + // vertical. + // "LIKELY" - It is likely that the image belongs to the specified + // vertical. + // "VERY_LIKELY" - It is very likely that the image belongs to the + // specified vertical. + SorrowLikelihood string `json:"sorrowLikelihood,omitempty"` + + // SurpriseLikelihood: Surprise likelihood. + // + // Possible values: + // "UNKNOWN" - Unknown likelihood. + // "VERY_UNLIKELY" - It is very unlikely that the image belongs to the + // specified vertical. + // "UNLIKELY" - It is unlikely that the image belongs to the specified + // vertical. + // "POSSIBLE" - It is possible that the image belongs to the specified + // vertical. + // "LIKELY" - It is likely that the image belongs to the specified + // vertical. + // "VERY_LIKELY" - It is very likely that the image belongs to the + // specified vertical. + SurpriseLikelihood string `json:"surpriseLikelihood,omitempty"` + + // TiltAngle: Pitch angle, which indicates the upwards/downwards angle + // that the face is + // pointing relative to the image's horizontal plane. Range [-180,180]. + TiltAngle float64 `json:"tiltAngle,omitempty"` + + // UnderExposedLikelihood: Under-exposed likelihood. + // + // Possible values: + // "UNKNOWN" - Unknown likelihood. + // "VERY_UNLIKELY" - It is very unlikely that the image belongs to the + // specified vertical. + // "UNLIKELY" - It is unlikely that the image belongs to the specified + // vertical. + // "POSSIBLE" - It is possible that the image belongs to the specified + // vertical. + // "LIKELY" - It is likely that the image belongs to the specified + // vertical. + // "VERY_LIKELY" - It is very likely that the image belongs to the + // specified vertical. + UnderExposedLikelihood string `json:"underExposedLikelihood,omitempty"` + + // ForceSendFields is a list of field names (e.g. "AngerLikelihood") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "AngerLikelihood") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudVisionV1p2beta1FaceAnnotation) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudVisionV1p2beta1FaceAnnotation + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +func (s *GoogleCloudVisionV1p2beta1FaceAnnotation) UnmarshalJSON(data []byte) error { + type NoMethod GoogleCloudVisionV1p2beta1FaceAnnotation + var s1 struct { + DetectionConfidence gensupport.JSONFloat64 `json:"detectionConfidence"` + LandmarkingConfidence gensupport.JSONFloat64 `json:"landmarkingConfidence"` + PanAngle gensupport.JSONFloat64 `json:"panAngle"` + RollAngle gensupport.JSONFloat64 `json:"rollAngle"` + TiltAngle gensupport.JSONFloat64 `json:"tiltAngle"` + *NoMethod + } + s1.NoMethod = (*NoMethod)(s) + if err := json.Unmarshal(data, &s1); err != nil { + return err + } + s.DetectionConfidence = float64(s1.DetectionConfidence) + s.LandmarkingConfidence = float64(s1.LandmarkingConfidence) + s.PanAngle = float64(s1.PanAngle) + s.RollAngle = float64(s1.RollAngle) + s.TiltAngle = float64(s1.TiltAngle) + return nil +} + +// GoogleCloudVisionV1p2beta1FaceAnnotationLandmark: A face-specific +// landmark (for example, a face feature). +type GoogleCloudVisionV1p2beta1FaceAnnotationLandmark struct { + // Position: Face landmark position. + Position *GoogleCloudVisionV1p2beta1Position `json:"position,omitempty"` + + // Type: Face landmark type. + // + // Possible values: + // "UNKNOWN_LANDMARK" - Unknown face landmark detected. Should not be + // filled. + // "LEFT_EYE" - Left eye. + // "RIGHT_EYE" - Right eye. + // "LEFT_OF_LEFT_EYEBROW" - Left of left eyebrow. + // "RIGHT_OF_LEFT_EYEBROW" - Right of left eyebrow. + // "LEFT_OF_RIGHT_EYEBROW" - Left of right eyebrow. + // "RIGHT_OF_RIGHT_EYEBROW" - Right of right eyebrow. + // "MIDPOINT_BETWEEN_EYES" - Midpoint between eyes. + // "NOSE_TIP" - Nose tip. + // "UPPER_LIP" - Upper lip. + // "LOWER_LIP" - Lower lip. + // "MOUTH_LEFT" - Mouth left. + // "MOUTH_RIGHT" - Mouth right. + // "MOUTH_CENTER" - Mouth center. + // "NOSE_BOTTOM_RIGHT" - Nose, bottom right. + // "NOSE_BOTTOM_LEFT" - Nose, bottom left. + // "NOSE_BOTTOM_CENTER" - Nose, bottom center. + // "LEFT_EYE_TOP_BOUNDARY" - Left eye, top boundary. + // "LEFT_EYE_RIGHT_CORNER" - Left eye, right corner. + // "LEFT_EYE_BOTTOM_BOUNDARY" - Left eye, bottom boundary. + // "LEFT_EYE_LEFT_CORNER" - Left eye, left corner. + // "RIGHT_EYE_TOP_BOUNDARY" - Right eye, top boundary. + // "RIGHT_EYE_RIGHT_CORNER" - Right eye, right corner. + // "RIGHT_EYE_BOTTOM_BOUNDARY" - Right eye, bottom boundary. + // "RIGHT_EYE_LEFT_CORNER" - Right eye, left corner. + // "LEFT_EYEBROW_UPPER_MIDPOINT" - Left eyebrow, upper midpoint. + // "RIGHT_EYEBROW_UPPER_MIDPOINT" - Right eyebrow, upper midpoint. + // "LEFT_EAR_TRAGION" - Left ear tragion. + // "RIGHT_EAR_TRAGION" - Right ear tragion. + // "LEFT_EYE_PUPIL" - Left eye pupil. + // "RIGHT_EYE_PUPIL" - Right eye pupil. + // "FOREHEAD_GLABELLA" - Forehead glabella. + // "CHIN_GNATHION" - Chin gnathion. + // "CHIN_LEFT_GONION" - Chin left gonion. + // "CHIN_RIGHT_GONION" - Chin right gonion. + Type string `json:"type,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Position") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Position") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudVisionV1p2beta1FaceAnnotationLandmark) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudVisionV1p2beta1FaceAnnotationLandmark + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudVisionV1p2beta1Feature: The type of Google Cloud Vision +// API detection to perform, and the maximum +// number of results to return for that type. Multiple `Feature` objects +// can +// be specified in the `features` list. +type GoogleCloudVisionV1p2beta1Feature struct { + // MaxResults: Maximum number of results of this type. Does not apply + // to + // `TEXT_DETECTION`, `DOCUMENT_TEXT_DETECTION`, or `CROP_HINTS`. + MaxResults int64 `json:"maxResults,omitempty"` + + // Model: Model to use for the feature. + // Supported values: "builtin/stable" (the default if unset) + // and + // "builtin/latest". + Model string `json:"model,omitempty"` + + // Type: The feature type. + // + // Possible values: + // "TYPE_UNSPECIFIED" - Unspecified feature type. + // "FACE_DETECTION" - Run face detection. + // "LANDMARK_DETECTION" - Run landmark detection. + // "LOGO_DETECTION" - Run logo detection. + // "LABEL_DETECTION" - Run label detection. + // "TEXT_DETECTION" - Run text detection / optical character + // recognition (OCR). Text detection + // is optimized for areas of text within a larger image; if the image + // is + // a document, use `DOCUMENT_TEXT_DETECTION` instead. + // "DOCUMENT_TEXT_DETECTION" - Run dense text document OCR. Takes + // precedence when both + // `DOCUMENT_TEXT_DETECTION` and `TEXT_DETECTION` are present. + // "SAFE_SEARCH_DETECTION" - Run Safe Search to detect potentially + // unsafe + // or undesirable content. + // "IMAGE_PROPERTIES" - Compute a set of image properties, such as + // the + // image's dominant colors. + // "CROP_HINTS" - Run crop hints. + // "WEB_DETECTION" - Run web detection. + Type string `json:"type,omitempty"` + + // ForceSendFields is a list of field names (e.g. "MaxResults") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "MaxResults") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudVisionV1p2beta1Feature) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudVisionV1p2beta1Feature + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudVisionV1p2beta1GcsDestination: The Google Cloud Storage +// location where the output will be written to. +type GoogleCloudVisionV1p2beta1GcsDestination struct { + // Uri: Google Cloud Storage URI where the results will be stored. + // Results will + // be in JSON format and preceded by its corresponding input URI. This + // field + // can either represent a single file, or a prefix for multiple + // outputs. + // Prefixes must end in a `/`. + // + // Examples: + // + // * File: gs://bucket-name/filename.json + // * Prefix: gs://bucket-name/prefix/here/ + // * File: gs://bucket-name/prefix/here + // + // If multiple outputs, each response is still AnnotateFileResponse, + // each of + // which contains some subset of the full list of + // AnnotateImageResponse. + // Multiple outputs can happen if, for example, the output JSON is too + // large + // and overflows into multiple sharded files. + Uri string `json:"uri,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Uri") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Uri") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudVisionV1p2beta1GcsDestination) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudVisionV1p2beta1GcsDestination + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudVisionV1p2beta1GcsSource: The Google Cloud Storage +// location where the input will be read from. +type GoogleCloudVisionV1p2beta1GcsSource struct { + // Uri: Google Cloud Storage URI for the input file. This must only be a + // GCS + // object. Wildcards are not currently supported. + Uri string `json:"uri,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Uri") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Uri") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudVisionV1p2beta1GcsSource) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudVisionV1p2beta1GcsSource + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudVisionV1p2beta1Image: Client image to perform Google Cloud +// Vision API tasks over. +type GoogleCloudVisionV1p2beta1Image struct { + // Content: Image content, represented as a stream of bytes. + // Note: As with all `bytes` fields, protobuffers use a pure + // binary + // representation, whereas JSON representations use base64. + Content string `json:"content,omitempty"` + + // Source: Google Cloud Storage image location, or publicly-accessible + // image + // URL. If both `content` and `source` are provided for an image, + // `content` + // takes precedence and is used to perform the image annotation request. + Source *GoogleCloudVisionV1p2beta1ImageSource `json:"source,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Content") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Content") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudVisionV1p2beta1Image) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudVisionV1p2beta1Image + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudVisionV1p2beta1ImageAnnotationContext: If an image was +// produced from a file (e.g. a PDF), this message gives +// information about the source of that image. +type GoogleCloudVisionV1p2beta1ImageAnnotationContext struct { + // PageNumber: If the file was a PDF or TIFF, this field gives the page + // number within + // the file used to produce the image. + PageNumber int64 `json:"pageNumber,omitempty"` + + // Uri: The URI of the file used to produce the image. + Uri string `json:"uri,omitempty"` + + // ForceSendFields is a list of field names (e.g. "PageNumber") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "PageNumber") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudVisionV1p2beta1ImageAnnotationContext) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudVisionV1p2beta1ImageAnnotationContext + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudVisionV1p2beta1ImageContext: Image context and/or +// feature-specific parameters. +type GoogleCloudVisionV1p2beta1ImageContext struct { + // CropHintsParams: Parameters for crop hints annotation request. + CropHintsParams *GoogleCloudVisionV1p2beta1CropHintsParams `json:"cropHintsParams,omitempty"` + + // LanguageHints: List of languages to use for TEXT_DETECTION. In most + // cases, an empty value + // yields the best results since it enables automatic language + // detection. For + // languages based on the Latin alphabet, setting `language_hints` is + // not + // needed. In rare cases, when the language of the text in the image is + // known, + // setting a hint will help get better results (although it will be + // a + // significant hindrance if the hint is wrong). Text detection returns + // an + // error if one or more of the specified languages is not one of + // the + // [supported languages](/vision/docs/languages). + LanguageHints []string `json:"languageHints,omitempty"` + + // LatLongRect: Not used. + LatLongRect *GoogleCloudVisionV1p2beta1LatLongRect `json:"latLongRect,omitempty"` + + // WebDetectionParams: Parameters for web detection. + WebDetectionParams *GoogleCloudVisionV1p2beta1WebDetectionParams `json:"webDetectionParams,omitempty"` + + // ForceSendFields is a list of field names (e.g. "CropHintsParams") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "CropHintsParams") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudVisionV1p2beta1ImageContext) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudVisionV1p2beta1ImageContext + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudVisionV1p2beta1ImageProperties: Stores image properties, +// such as dominant colors. +type GoogleCloudVisionV1p2beta1ImageProperties struct { + // DominantColors: If present, dominant colors completed successfully. + DominantColors *GoogleCloudVisionV1p2beta1DominantColorsAnnotation `json:"dominantColors,omitempty"` + + // ForceSendFields is a list of field names (e.g. "DominantColors") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "DominantColors") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudVisionV1p2beta1ImageProperties) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudVisionV1p2beta1ImageProperties + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudVisionV1p2beta1ImageSource: External image source (Google +// Cloud Storage or web URL image location). +type GoogleCloudVisionV1p2beta1ImageSource struct { + // GcsImageUri: **Use `image_uri` instead.** + // + // The Google Cloud Storage URI of the + // form + // `gs://bucket_name/object_name`. Object versioning is not supported. + // See + // [Google Cloud Storage + // Request + // URIs](https://cloud.google.com/storage/docs/reference-uris) for more + // info. + GcsImageUri string `json:"gcsImageUri,omitempty"` + + // ImageUri: The URI of the source image. Can be either: + // + // 1. A Google Cloud Storage URI of the form + // `gs://bucket_name/object_name`. Object versioning is not + // supported. See + // [Google Cloud Storage Request + // URIs](https://cloud.google.com/storage/docs/reference-uris) for + // more + // info. + // + // 2. A publicly-accessible image HTTP/HTTPS URL. When fetching images + // from + // HTTP/HTTPS URLs, Google cannot guarantee that the request will be + // completed. Your request may fail if the specified host denies the + // request (e.g. due to request throttling or DOS prevention), or if + // Google + // throttles requests to the site for abuse prevention. You should + // not + // depend on externally-hosted images for production + // applications. + // + // When both `gcs_image_uri` and `image_uri` are specified, `image_uri` + // takes + // precedence. + ImageUri string `json:"imageUri,omitempty"` + + // ForceSendFields is a list of field names (e.g. "GcsImageUri") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "GcsImageUri") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudVisionV1p2beta1ImageSource) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudVisionV1p2beta1ImageSource + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudVisionV1p2beta1InputConfig: The desired input location and +// metadata. +type GoogleCloudVisionV1p2beta1InputConfig struct { + // GcsSource: The Google Cloud Storage location to read the input from. + GcsSource *GoogleCloudVisionV1p2beta1GcsSource `json:"gcsSource,omitempty"` + + // MimeType: The type of the file. Currently only "application/pdf" and + // "image/tiff" + // are supported. Wildcards are not supported. + MimeType string `json:"mimeType,omitempty"` + + // ForceSendFields is a list of field names (e.g. "GcsSource") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "GcsSource") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudVisionV1p2beta1InputConfig) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudVisionV1p2beta1InputConfig + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudVisionV1p2beta1LatLongRect: Rectangle determined by min +// and max `LatLng` pairs. +type GoogleCloudVisionV1p2beta1LatLongRect struct { + // MaxLatLng: Max lat/long pair. + MaxLatLng *LatLng `json:"maxLatLng,omitempty"` + + // MinLatLng: Min lat/long pair. + MinLatLng *LatLng `json:"minLatLng,omitempty"` + + // ForceSendFields is a list of field names (e.g. "MaxLatLng") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "MaxLatLng") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudVisionV1p2beta1LatLongRect) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudVisionV1p2beta1LatLongRect + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudVisionV1p2beta1LocationInfo: Detected entity location +// information. +type GoogleCloudVisionV1p2beta1LocationInfo struct { + // LatLng: lat/long location coordinates. + LatLng *LatLng `json:"latLng,omitempty"` + + // ForceSendFields is a list of field names (e.g. "LatLng") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "LatLng") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudVisionV1p2beta1LocationInfo) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudVisionV1p2beta1LocationInfo + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudVisionV1p2beta1OperationMetadata: Contains metadata for +// the BatchAnnotateImages operation. +type GoogleCloudVisionV1p2beta1OperationMetadata struct { + // CreateTime: The time when the batch request was received. + CreateTime string `json:"createTime,omitempty"` + + // State: Current state of the batch operation. + // + // Possible values: + // "STATE_UNSPECIFIED" - Invalid. + // "CREATED" - Request is received. + // "RUNNING" - Request is actively being processed. + // "DONE" - The batch processing is done. + // "CANCELLED" - The batch processing was cancelled. + State string `json:"state,omitempty"` + + // UpdateTime: The time when the operation result was last updated. + UpdateTime string `json:"updateTime,omitempty"` + + // ForceSendFields is a list of field names (e.g. "CreateTime") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "CreateTime") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudVisionV1p2beta1OperationMetadata) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudVisionV1p2beta1OperationMetadata + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudVisionV1p2beta1OutputConfig: The desired output location +// and metadata. +type GoogleCloudVisionV1p2beta1OutputConfig struct { + // BatchSize: The max number of response protos to put into each output + // JSON file on GCS. + // The valid range is [1, 100]. If not specified, the default value is + // 20. + // + // For example, for one pdf file with 100 pages, 100 response protos + // will + // be generated. If `batch_size` = 20, then 5 json files each + // containing 20 response protos will be written under the + // prefix + // `gcs_destination`.`uri`. + // + // Currently, batch_size only applies to GcsDestination, with potential + // future + // support for other output configurations. + BatchSize int64 `json:"batchSize,omitempty"` + + // GcsDestination: The Google Cloud Storage location to write the + // output(s) to. + GcsDestination *GoogleCloudVisionV1p2beta1GcsDestination `json:"gcsDestination,omitempty"` + + // ForceSendFields is a list of field names (e.g. "BatchSize") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "BatchSize") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudVisionV1p2beta1OutputConfig) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudVisionV1p2beta1OutputConfig + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudVisionV1p2beta1Page: Detected page from OCR. +type GoogleCloudVisionV1p2beta1Page struct { + // Blocks: List of blocks of text, images etc on this page. + Blocks []*GoogleCloudVisionV1p2beta1Block `json:"blocks,omitempty"` + + // Confidence: Confidence of the OCR results on the page. Range [0, 1]. + Confidence float64 `json:"confidence,omitempty"` + + // Height: Page height. For PDFs the unit is points. For images + // (including + // TIFFs) the unit is pixels. + Height int64 `json:"height,omitempty"` + + // Property: Additional information detected on the page. + Property *GoogleCloudVisionV1p2beta1TextAnnotationTextProperty `json:"property,omitempty"` + + // Width: Page width. For PDFs the unit is points. For images + // (including + // TIFFs) the unit is pixels. + Width int64 `json:"width,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Blocks") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Blocks") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudVisionV1p2beta1Page) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudVisionV1p2beta1Page + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +func (s *GoogleCloudVisionV1p2beta1Page) UnmarshalJSON(data []byte) error { + type NoMethod GoogleCloudVisionV1p2beta1Page + var s1 struct { + Confidence gensupport.JSONFloat64 `json:"confidence"` + *NoMethod + } + s1.NoMethod = (*NoMethod)(s) + if err := json.Unmarshal(data, &s1); err != nil { + return err + } + s.Confidence = float64(s1.Confidence) + return nil +} + +// GoogleCloudVisionV1p2beta1Paragraph: Structural unit of text +// representing a number of words in certain order. +type GoogleCloudVisionV1p2beta1Paragraph struct { + // BoundingBox: The bounding box for the paragraph. + // The vertices are in the order of top-left, top-right, + // bottom-right, + // bottom-left. When a rotation of the bounding box is detected the + // rotation + // is represented as around the top-left corner as defined when the text + // is + // read in the 'natural' orientation. + // For example: + // * when the text is horizontal it might look like: + // 0----1 + // | | + // 3----2 + // * when it's rotated 180 degrees around the top-left corner it + // becomes: + // 2----3 + // | | + // 1----0 + // and the vertice order will still be (0, 1, 2, 3). + BoundingBox *GoogleCloudVisionV1p2beta1BoundingPoly `json:"boundingBox,omitempty"` + + // Confidence: Confidence of the OCR results for the paragraph. Range + // [0, 1]. + Confidence float64 `json:"confidence,omitempty"` + + // Property: Additional information detected for the paragraph. + Property *GoogleCloudVisionV1p2beta1TextAnnotationTextProperty `json:"property,omitempty"` + + // Words: List of words in this paragraph. + Words []*GoogleCloudVisionV1p2beta1Word `json:"words,omitempty"` + + // ForceSendFields is a list of field names (e.g. "BoundingBox") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "BoundingBox") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudVisionV1p2beta1Paragraph) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudVisionV1p2beta1Paragraph + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +func (s *GoogleCloudVisionV1p2beta1Paragraph) UnmarshalJSON(data []byte) error { + type NoMethod GoogleCloudVisionV1p2beta1Paragraph + var s1 struct { + Confidence gensupport.JSONFloat64 `json:"confidence"` + *NoMethod + } + s1.NoMethod = (*NoMethod)(s) + if err := json.Unmarshal(data, &s1); err != nil { + return err + } + s.Confidence = float64(s1.Confidence) + return nil +} + +// GoogleCloudVisionV1p2beta1Position: A 3D position in the image, used +// primarily for Face detection landmarks. +// A valid Position must have both x and y coordinates. +// The position coordinates are in the same scale as the original image. +type GoogleCloudVisionV1p2beta1Position struct { + // X: X coordinate. + X float64 `json:"x,omitempty"` + + // Y: Y coordinate. + Y float64 `json:"y,omitempty"` + + // Z: Z coordinate (or depth). + Z float64 `json:"z,omitempty"` + + // ForceSendFields is a list of field names (e.g. "X") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "X") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudVisionV1p2beta1Position) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudVisionV1p2beta1Position + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +func (s *GoogleCloudVisionV1p2beta1Position) UnmarshalJSON(data []byte) error { + type NoMethod GoogleCloudVisionV1p2beta1Position + var s1 struct { + X gensupport.JSONFloat64 `json:"x"` + Y gensupport.JSONFloat64 `json:"y"` + Z gensupport.JSONFloat64 `json:"z"` + *NoMethod + } + s1.NoMethod = (*NoMethod)(s) + if err := json.Unmarshal(data, &s1); err != nil { + return err + } + s.X = float64(s1.X) + s.Y = float64(s1.Y) + s.Z = float64(s1.Z) + return nil +} + +// GoogleCloudVisionV1p2beta1Property: A `Property` consists of a +// user-supplied name/value pair. +type GoogleCloudVisionV1p2beta1Property struct { + // Name: Name of the property. + Name string `json:"name,omitempty"` + + // Uint64Value: Value of numeric properties. + Uint64Value uint64 `json:"uint64Value,omitempty,string"` + + // Value: Value of the property. + Value string `json:"value,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Name") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Name") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudVisionV1p2beta1Property) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudVisionV1p2beta1Property + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudVisionV1p2beta1SafeSearchAnnotation: Set of features +// pertaining to the image, computed by computer vision +// methods over safe-search verticals (for example, adult, spoof, +// medical, +// violence). +type GoogleCloudVisionV1p2beta1SafeSearchAnnotation struct { + // Adult: Represents the adult content likelihood for the image. Adult + // content may + // contain elements such as nudity, pornographic images or cartoons, + // or + // sexual activities. + // + // Possible values: + // "UNKNOWN" - Unknown likelihood. + // "VERY_UNLIKELY" - It is very unlikely that the image belongs to the + // specified vertical. + // "UNLIKELY" - It is unlikely that the image belongs to the specified + // vertical. + // "POSSIBLE" - It is possible that the image belongs to the specified + // vertical. + // "LIKELY" - It is likely that the image belongs to the specified + // vertical. + // "VERY_LIKELY" - It is very likely that the image belongs to the + // specified vertical. + Adult string `json:"adult,omitempty"` + + // Medical: Likelihood that this is a medical image. + // + // Possible values: + // "UNKNOWN" - Unknown likelihood. + // "VERY_UNLIKELY" - It is very unlikely that the image belongs to the + // specified vertical. + // "UNLIKELY" - It is unlikely that the image belongs to the specified + // vertical. + // "POSSIBLE" - It is possible that the image belongs to the specified + // vertical. + // "LIKELY" - It is likely that the image belongs to the specified + // vertical. + // "VERY_LIKELY" - It is very likely that the image belongs to the + // specified vertical. + Medical string `json:"medical,omitempty"` + + // Racy: Likelihood that the request image contains racy content. Racy + // content may + // include (but is not limited to) skimpy or sheer clothing, + // strategically + // covered nudity, lewd or provocative poses, or close-ups of + // sensitive + // body areas. + // + // Possible values: + // "UNKNOWN" - Unknown likelihood. + // "VERY_UNLIKELY" - It is very unlikely that the image belongs to the + // specified vertical. + // "UNLIKELY" - It is unlikely that the image belongs to the specified + // vertical. + // "POSSIBLE" - It is possible that the image belongs to the specified + // vertical. + // "LIKELY" - It is likely that the image belongs to the specified + // vertical. + // "VERY_LIKELY" - It is very likely that the image belongs to the + // specified vertical. + Racy string `json:"racy,omitempty"` + + // Spoof: Spoof likelihood. The likelihood that an modification + // was made to the image's canonical version to make it appear + // funny or offensive. + // + // Possible values: + // "UNKNOWN" - Unknown likelihood. + // "VERY_UNLIKELY" - It is very unlikely that the image belongs to the + // specified vertical. + // "UNLIKELY" - It is unlikely that the image belongs to the specified + // vertical. + // "POSSIBLE" - It is possible that the image belongs to the specified + // vertical. + // "LIKELY" - It is likely that the image belongs to the specified + // vertical. + // "VERY_LIKELY" - It is very likely that the image belongs to the + // specified vertical. + Spoof string `json:"spoof,omitempty"` + + // Violence: Likelihood that this image contains violent content. + // + // Possible values: + // "UNKNOWN" - Unknown likelihood. + // "VERY_UNLIKELY" - It is very unlikely that the image belongs to the + // specified vertical. + // "UNLIKELY" - It is unlikely that the image belongs to the specified + // vertical. + // "POSSIBLE" - It is possible that the image belongs to the specified + // vertical. + // "LIKELY" - It is likely that the image belongs to the specified + // vertical. + // "VERY_LIKELY" - It is very likely that the image belongs to the + // specified vertical. + Violence string `json:"violence,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Adult") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Adult") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudVisionV1p2beta1SafeSearchAnnotation) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudVisionV1p2beta1SafeSearchAnnotation + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudVisionV1p2beta1Symbol: A single symbol representation. +type GoogleCloudVisionV1p2beta1Symbol struct { + // BoundingBox: The bounding box for the symbol. + // The vertices are in the order of top-left, top-right, + // bottom-right, + // bottom-left. When a rotation of the bounding box is detected the + // rotation + // is represented as around the top-left corner as defined when the text + // is + // read in the 'natural' orientation. + // For example: + // * when the text is horizontal it might look like: + // 0----1 + // | | + // 3----2 + // * when it's rotated 180 degrees around the top-left corner it + // becomes: + // 2----3 + // | | + // 1----0 + // and the vertice order will still be (0, 1, 2, 3). + BoundingBox *GoogleCloudVisionV1p2beta1BoundingPoly `json:"boundingBox,omitempty"` + + // Confidence: Confidence of the OCR results for the symbol. Range [0, + // 1]. + Confidence float64 `json:"confidence,omitempty"` + + // Property: Additional information detected for the symbol. + Property *GoogleCloudVisionV1p2beta1TextAnnotationTextProperty `json:"property,omitempty"` + + // Text: The actual UTF-8 representation of the symbol. + Text string `json:"text,omitempty"` + + // ForceSendFields is a list of field names (e.g. "BoundingBox") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "BoundingBox") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudVisionV1p2beta1Symbol) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudVisionV1p2beta1Symbol + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +func (s *GoogleCloudVisionV1p2beta1Symbol) UnmarshalJSON(data []byte) error { + type NoMethod GoogleCloudVisionV1p2beta1Symbol + var s1 struct { + Confidence gensupport.JSONFloat64 `json:"confidence"` + *NoMethod + } + s1.NoMethod = (*NoMethod)(s) + if err := json.Unmarshal(data, &s1); err != nil { + return err + } + s.Confidence = float64(s1.Confidence) + return nil +} + +// GoogleCloudVisionV1p2beta1TextAnnotation: TextAnnotation contains a +// structured representation of OCR extracted text. +// The hierarchy of an OCR extracted text structure is like this: +// TextAnnotation -> Page -> Block -> Paragraph -> Word -> +// Symbol +// Each structural component, starting from Page, may further have their +// own +// properties. Properties describe detected languages, breaks etc.. +// Please refer +// to the TextAnnotation.TextProperty message definition below for +// more +// detail. +type GoogleCloudVisionV1p2beta1TextAnnotation struct { + // Pages: List of pages detected by OCR. + Pages []*GoogleCloudVisionV1p2beta1Page `json:"pages,omitempty"` + + // Text: UTF-8 text detected on the pages. + Text string `json:"text,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Pages") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Pages") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudVisionV1p2beta1TextAnnotation) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudVisionV1p2beta1TextAnnotation + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudVisionV1p2beta1TextAnnotationDetectedBreak: Detected start +// or end of a structural component. +type GoogleCloudVisionV1p2beta1TextAnnotationDetectedBreak struct { + // IsPrefix: True if break prepends the element. + IsPrefix bool `json:"isPrefix,omitempty"` + + // Type: Detected break type. + // + // Possible values: + // "UNKNOWN" - Unknown break label type. + // "SPACE" - Regular space. + // "SURE_SPACE" - Sure space (very wide). + // "EOL_SURE_SPACE" - Line-wrapping break. + // "HYPHEN" - End-line hyphen that is not present in text; does not + // co-occur with + // `SPACE`, `LEADER_SPACE`, or `LINE_BREAK`. + // "LINE_BREAK" - Line break that ends a paragraph. + Type string `json:"type,omitempty"` + + // ForceSendFields is a list of field names (e.g. "IsPrefix") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "IsPrefix") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudVisionV1p2beta1TextAnnotationDetectedBreak) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudVisionV1p2beta1TextAnnotationDetectedBreak + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudVisionV1p2beta1TextAnnotationDetectedLanguage: Detected +// language for a structural component. +type GoogleCloudVisionV1p2beta1TextAnnotationDetectedLanguage struct { + // Confidence: Confidence of detected language. Range [0, 1]. + Confidence float64 `json:"confidence,omitempty"` + + // LanguageCode: The BCP-47 language code, such as "en-US" or "sr-Latn". + // For more + // information, + // see + // http://www.unicode.org/reports/tr35/#Unicode_locale_identifier. + LanguageCode string `json:"languageCode,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Confidence") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Confidence") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudVisionV1p2beta1TextAnnotationDetectedLanguage) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudVisionV1p2beta1TextAnnotationDetectedLanguage + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +func (s *GoogleCloudVisionV1p2beta1TextAnnotationDetectedLanguage) UnmarshalJSON(data []byte) error { + type NoMethod GoogleCloudVisionV1p2beta1TextAnnotationDetectedLanguage + var s1 struct { + Confidence gensupport.JSONFloat64 `json:"confidence"` + *NoMethod + } + s1.NoMethod = (*NoMethod)(s) + if err := json.Unmarshal(data, &s1); err != nil { + return err + } + s.Confidence = float64(s1.Confidence) + return nil +} + +// GoogleCloudVisionV1p2beta1TextAnnotationTextProperty: Additional +// information detected on the structural component. +type GoogleCloudVisionV1p2beta1TextAnnotationTextProperty struct { + // DetectedBreak: Detected start or end of a text segment. + DetectedBreak *GoogleCloudVisionV1p2beta1TextAnnotationDetectedBreak `json:"detectedBreak,omitempty"` + + // DetectedLanguages: A list of detected languages together with + // confidence. + DetectedLanguages []*GoogleCloudVisionV1p2beta1TextAnnotationDetectedLanguage `json:"detectedLanguages,omitempty"` + + // ForceSendFields is a list of field names (e.g. "DetectedBreak") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "DetectedBreak") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudVisionV1p2beta1TextAnnotationTextProperty) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudVisionV1p2beta1TextAnnotationTextProperty + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudVisionV1p2beta1Vertex: A vertex represents a 2D point in +// the image. +// NOTE: the vertex coordinates are in the same scale as the original +// image. +type GoogleCloudVisionV1p2beta1Vertex struct { + // X: X coordinate. + X int64 `json:"x,omitempty"` + + // Y: Y coordinate. + Y int64 `json:"y,omitempty"` + + // ForceSendFields is a list of field names (e.g. "X") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "X") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudVisionV1p2beta1Vertex) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudVisionV1p2beta1Vertex + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudVisionV1p2beta1WebDetection: Relevant information for the +// image from the Internet. +type GoogleCloudVisionV1p2beta1WebDetection struct { + // BestGuessLabels: Best guess text labels for the request image. + BestGuessLabels []*GoogleCloudVisionV1p2beta1WebDetectionWebLabel `json:"bestGuessLabels,omitempty"` + + // FullMatchingImages: Fully matching images from the Internet. + // Can include resized copies of the query image. + FullMatchingImages []*GoogleCloudVisionV1p2beta1WebDetectionWebImage `json:"fullMatchingImages,omitempty"` + + // PagesWithMatchingImages: Web pages containing the matching images + // from the Internet. + PagesWithMatchingImages []*GoogleCloudVisionV1p2beta1WebDetectionWebPage `json:"pagesWithMatchingImages,omitempty"` + + // PartialMatchingImages: Partial matching images from the + // Internet. + // Those images are similar enough to share some key-point features. + // For + // example an original image will likely have partial matching for its + // crops. + PartialMatchingImages []*GoogleCloudVisionV1p2beta1WebDetectionWebImage `json:"partialMatchingImages,omitempty"` + + // VisuallySimilarImages: The visually similar image results. + VisuallySimilarImages []*GoogleCloudVisionV1p2beta1WebDetectionWebImage `json:"visuallySimilarImages,omitempty"` + + // WebEntities: Deduced entities from similar images on the Internet. + WebEntities []*GoogleCloudVisionV1p2beta1WebDetectionWebEntity `json:"webEntities,omitempty"` + + // ForceSendFields is a list of field names (e.g. "BestGuessLabels") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "BestGuessLabels") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudVisionV1p2beta1WebDetection) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudVisionV1p2beta1WebDetection + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudVisionV1p2beta1WebDetectionParams: Parameters for web +// detection request. +type GoogleCloudVisionV1p2beta1WebDetectionParams struct { + // IncludeGeoResults: Whether to include results derived from the geo + // information in the image. + IncludeGeoResults bool `json:"includeGeoResults,omitempty"` + + // ForceSendFields is a list of field names (e.g. "IncludeGeoResults") + // to unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "IncludeGeoResults") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudVisionV1p2beta1WebDetectionParams) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudVisionV1p2beta1WebDetectionParams + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudVisionV1p2beta1WebDetectionWebEntity: Entity deduced from +// similar images on the Internet. +type GoogleCloudVisionV1p2beta1WebDetectionWebEntity struct { + // Description: Canonical description of the entity, in English. + Description string `json:"description,omitempty"` + + // EntityId: Opaque entity ID. + EntityId string `json:"entityId,omitempty"` + + // Score: Overall relevancy score for the entity. + // Not normalized and not comparable across different image queries. + Score float64 `json:"score,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Description") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Description") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudVisionV1p2beta1WebDetectionWebEntity) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudVisionV1p2beta1WebDetectionWebEntity + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +func (s *GoogleCloudVisionV1p2beta1WebDetectionWebEntity) UnmarshalJSON(data []byte) error { + type NoMethod GoogleCloudVisionV1p2beta1WebDetectionWebEntity + var s1 struct { + Score gensupport.JSONFloat64 `json:"score"` + *NoMethod + } + s1.NoMethod = (*NoMethod)(s) + if err := json.Unmarshal(data, &s1); err != nil { + return err + } + s.Score = float64(s1.Score) + return nil +} + +// GoogleCloudVisionV1p2beta1WebDetectionWebImage: Metadata for online +// images. +type GoogleCloudVisionV1p2beta1WebDetectionWebImage struct { + // Score: (Deprecated) Overall relevancy score for the image. + Score float64 `json:"score,omitempty"` + + // Url: The result image URL. + Url string `json:"url,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Score") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Score") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudVisionV1p2beta1WebDetectionWebImage) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudVisionV1p2beta1WebDetectionWebImage + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +func (s *GoogleCloudVisionV1p2beta1WebDetectionWebImage) UnmarshalJSON(data []byte) error { + type NoMethod GoogleCloudVisionV1p2beta1WebDetectionWebImage + var s1 struct { + Score gensupport.JSONFloat64 `json:"score"` + *NoMethod + } + s1.NoMethod = (*NoMethod)(s) + if err := json.Unmarshal(data, &s1); err != nil { + return err + } + s.Score = float64(s1.Score) + return nil +} + +// GoogleCloudVisionV1p2beta1WebDetectionWebLabel: Label to provide +// extra metadata for the web detection. +type GoogleCloudVisionV1p2beta1WebDetectionWebLabel struct { + // Label: Label for extra metadata. + Label string `json:"label,omitempty"` + + // LanguageCode: The BCP-47 language code for `label`, such as "en-US" + // or "sr-Latn". + // For more information, + // see + // http://www.unicode.org/reports/tr35/#Unicode_locale_identifier. + LanguageCode string `json:"languageCode,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Label") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Label") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudVisionV1p2beta1WebDetectionWebLabel) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudVisionV1p2beta1WebDetectionWebLabel + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudVisionV1p2beta1WebDetectionWebPage: Metadata for web +// pages. +type GoogleCloudVisionV1p2beta1WebDetectionWebPage struct { + // FullMatchingImages: Fully matching images on the page. + // Can include resized copies of the query image. + FullMatchingImages []*GoogleCloudVisionV1p2beta1WebDetectionWebImage `json:"fullMatchingImages,omitempty"` + + // PageTitle: Title for the web page, may contain HTML markups. + PageTitle string `json:"pageTitle,omitempty"` + + // PartialMatchingImages: Partial matching images on the page. + // Those images are similar enough to share some key-point features. + // For + // example an original image will likely have partial matching for + // its + // crops. + PartialMatchingImages []*GoogleCloudVisionV1p2beta1WebDetectionWebImage `json:"partialMatchingImages,omitempty"` + + // Score: (Deprecated) Overall relevancy score for the web page. + Score float64 `json:"score,omitempty"` + + // Url: The result web page URL. + Url string `json:"url,omitempty"` + + // ForceSendFields is a list of field names (e.g. "FullMatchingImages") + // to unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "FullMatchingImages") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudVisionV1p2beta1WebDetectionWebPage) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudVisionV1p2beta1WebDetectionWebPage + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +func (s *GoogleCloudVisionV1p2beta1WebDetectionWebPage) UnmarshalJSON(data []byte) error { + type NoMethod GoogleCloudVisionV1p2beta1WebDetectionWebPage + var s1 struct { + Score gensupport.JSONFloat64 `json:"score"` + *NoMethod + } + s1.NoMethod = (*NoMethod)(s) + if err := json.Unmarshal(data, &s1); err != nil { + return err + } + s.Score = float64(s1.Score) + return nil +} + +// GoogleCloudVisionV1p2beta1Word: A word representation. +type GoogleCloudVisionV1p2beta1Word struct { + // BoundingBox: The bounding box for the word. + // The vertices are in the order of top-left, top-right, + // bottom-right, + // bottom-left. When a rotation of the bounding box is detected the + // rotation + // is represented as around the top-left corner as defined when the text + // is + // read in the 'natural' orientation. + // For example: + // * when the text is horizontal it might look like: + // 0----1 + // | | + // 3----2 + // * when it's rotated 180 degrees around the top-left corner it + // becomes: + // 2----3 + // | | + // 1----0 + // and the vertice order will still be (0, 1, 2, 3). + BoundingBox *GoogleCloudVisionV1p2beta1BoundingPoly `json:"boundingBox,omitempty"` + + // Confidence: Confidence of the OCR results for the word. Range [0, 1]. + Confidence float64 `json:"confidence,omitempty"` + + // Property: Additional information detected for the word. + Property *GoogleCloudVisionV1p2beta1TextAnnotationTextProperty `json:"property,omitempty"` + + // Symbols: List of symbols in the word. + // The order of the symbols follows the natural reading order. + Symbols []*GoogleCloudVisionV1p2beta1Symbol `json:"symbols,omitempty"` + + // ForceSendFields is a list of field names (e.g. "BoundingBox") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "BoundingBox") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudVisionV1p2beta1Word) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudVisionV1p2beta1Word + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +func (s *GoogleCloudVisionV1p2beta1Word) UnmarshalJSON(data []byte) error { + type NoMethod GoogleCloudVisionV1p2beta1Word + var s1 struct { + Confidence gensupport.JSONFloat64 `json:"confidence"` + *NoMethod + } + s1.NoMethod = (*NoMethod)(s) + if err := json.Unmarshal(data, &s1); err != nil { + return err + } + s.Confidence = float64(s1.Confidence) + return nil +} + +// LatLng: An object representing a latitude/longitude pair. This is +// expressed as a pair +// of doubles representing degrees latitude and degrees longitude. +// Unless +// specified otherwise, this must conform to the +// WGS84 +// st +// andard. Values must be within normalized ranges. +type LatLng struct { + // Latitude: The latitude in degrees. It must be in the range [-90.0, + // +90.0]. + Latitude float64 `json:"latitude,omitempty"` + + // Longitude: The longitude in degrees. It must be in the range [-180.0, + // +180.0]. + Longitude float64 `json:"longitude,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Latitude") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Latitude") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *LatLng) MarshalJSON() ([]byte, error) { + type NoMethod LatLng + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +func (s *LatLng) UnmarshalJSON(data []byte) error { + type NoMethod LatLng + var s1 struct { + Latitude gensupport.JSONFloat64 `json:"latitude"` + Longitude gensupport.JSONFloat64 `json:"longitude"` + *NoMethod + } + s1.NoMethod = (*NoMethod)(s) + if err := json.Unmarshal(data, &s1); err != nil { + return err + } + s.Latitude = float64(s1.Latitude) + s.Longitude = float64(s1.Longitude) + return nil +} + +// Operation: This resource represents a long-running operation that is +// the result of a +// network API call. +type Operation struct { + // Done: If the value is `false`, it means the operation is still in + // progress. + // If `true`, the operation is completed, and either `error` or + // `response` is + // available. + Done bool `json:"done,omitempty"` + + // Error: The error result of the operation in case of failure or + // cancellation. + Error *Status `json:"error,omitempty"` + + // Metadata: Service-specific metadata associated with the operation. + // It typically + // contains progress information and common metadata such as create + // time. + // Some services might not provide such metadata. Any method that + // returns a + // long-running operation should document the metadata type, if any. + Metadata googleapi.RawMessage `json:"metadata,omitempty"` + + // Name: The server-assigned name, which is only unique within the same + // service that + // originally returns it. If you use the default HTTP mapping, + // the + // `name` should have the format of `operations/some/unique/name`. + Name string `json:"name,omitempty"` + + // Response: The normal response of the operation in case of success. + // If the original + // method returns no data on success, such as `Delete`, the response + // is + // `google.protobuf.Empty`. If the original method is + // standard + // `Get`/`Create`/`Update`, the response should be the resource. For + // other + // methods, the response should have the type `XxxResponse`, where + // `Xxx` + // is the original method name. For example, if the original method + // name + // is `TakeSnapshot()`, the inferred response type + // is + // `TakeSnapshotResponse`. + Response googleapi.RawMessage `json:"response,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "Done") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Done") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *Operation) MarshalJSON() ([]byte, error) { + type NoMethod Operation + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// Status: The `Status` type defines a logical error model that is +// suitable for different +// programming environments, including REST APIs and RPC APIs. It is +// used by +// [gRPC](https://github.com/grpc). The error model is designed to +// be: +// +// - Simple to use and understand for most users +// - Flexible enough to meet unexpected needs +// +// # Overview +// +// The `Status` message contains three pieces of data: error code, error +// message, +// and error details. The error code should be an enum value +// of +// google.rpc.Code, but it may accept additional error codes if needed. +// The +// error message should be a developer-facing English message that +// helps +// developers *understand* and *resolve* the error. If a localized +// user-facing +// error message is needed, put the localized message in the error +// details or +// localize it in the client. The optional error details may contain +// arbitrary +// information about the error. There is a predefined set of error +// detail types +// in the package `google.rpc` that can be used for common error +// conditions. +// +// # Language mapping +// +// The `Status` message is the logical representation of the error +// model, but it +// is not necessarily the actual wire format. When the `Status` message +// is +// exposed in different client libraries and different wire protocols, +// it can be +// mapped differently. For example, it will likely be mapped to some +// exceptions +// in Java, but more likely mapped to some error codes in C. +// +// # Other uses +// +// The error model and the `Status` message can be used in a variety +// of +// environments, either with or without APIs, to provide a +// consistent developer experience across different +// environments. +// +// Example uses of this error model include: +// +// - Partial errors. If a service needs to return partial errors to the +// client, +// it may embed the `Status` in the normal response to indicate the +// partial +// errors. +// +// - Workflow errors. A typical workflow has multiple steps. Each step +// may +// have a `Status` message for error reporting. +// +// - Batch operations. If a client uses batch request and batch +// response, the +// `Status` message should be used directly inside batch response, +// one for +// each error sub-response. +// +// - Asynchronous operations. If an API call embeds asynchronous +// operation +// results in its response, the status of those operations should +// be +// represented directly using the `Status` message. +// +// - Logging. If some API errors are stored in logs, the message +// `Status` could +// be used directly after any stripping needed for security/privacy +// reasons. +type Status struct { + // Code: The status code, which should be an enum value of + // google.rpc.Code. + Code int64 `json:"code,omitempty"` + + // Details: A list of messages that carry the error details. There is a + // common set of + // message types for APIs to use. + Details []googleapi.RawMessage `json:"details,omitempty"` + + // Message: A developer-facing error message, which should be in + // English. Any + // user-facing error message should be localized and sent in + // the + // google.rpc.Status.details field, or localized by the client. + Message string `json:"message,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Code") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Code") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *Status) MarshalJSON() ([]byte, error) { + type NoMethod Status + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// method id "vision.files.asyncBatchAnnotate": + +type FilesAsyncBatchAnnotateCall struct { + s *Service + googlecloudvisionv1p2beta1asyncbatchannotatefilesrequest *GoogleCloudVisionV1p2beta1AsyncBatchAnnotateFilesRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// AsyncBatchAnnotate: Run async image detection and annotation for a +// list of generic files (e.g. +// PDF) which may contain multiple pages and multiple images per +// page. +// Progress and results can be retrieved through +// the +// `google.longrunning.Operations` interface. +// `Operation.metadata` contains `OperationMetadata` +// (metadata). +// `Operation.response` contains `AsyncBatchAnnotateFilesResponse` +// (results). +func (r *FilesService) AsyncBatchAnnotate(googlecloudvisionv1p2beta1asyncbatchannotatefilesrequest *GoogleCloudVisionV1p2beta1AsyncBatchAnnotateFilesRequest) *FilesAsyncBatchAnnotateCall { + c := &FilesAsyncBatchAnnotateCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.googlecloudvisionv1p2beta1asyncbatchannotatefilesrequest = googlecloudvisionv1p2beta1asyncbatchannotatefilesrequest + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *FilesAsyncBatchAnnotateCall) Fields(s ...googleapi.Field) *FilesAsyncBatchAnnotateCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *FilesAsyncBatchAnnotateCall) Context(ctx context.Context) *FilesAsyncBatchAnnotateCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *FilesAsyncBatchAnnotateCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *FilesAsyncBatchAnnotateCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.googlecloudvisionv1p2beta1asyncbatchannotatefilesrequest) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v1p2beta1/files:asyncBatchAnnotate") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("POST", urls, body) + req.Header = reqHeaders + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "vision.files.asyncBatchAnnotate" call. +// Exactly one of *Operation or error will be non-nil. Any non-2xx +// status code is an error. Response headers are in either +// *Operation.ServerResponse.Header or (if a response was returned at +// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified +// to check whether the returned error was because +// http.StatusNotModified was returned. +func (c *FilesAsyncBatchAnnotateCall) Do(opts ...googleapi.CallOption) (*Operation, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &Operation{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Run async image detection and annotation for a list of generic files (e.g.\nPDF) which may contain multiple pages and multiple images per page.\nProgress and results can be retrieved through the\n`google.longrunning.Operations` interface.\n`Operation.metadata` contains `OperationMetadata` (metadata).\n`Operation.response` contains `AsyncBatchAnnotateFilesResponse` (results).", + // "flatPath": "v1p2beta1/files:asyncBatchAnnotate", + // "httpMethod": "POST", + // "id": "vision.files.asyncBatchAnnotate", + // "parameterOrder": [], + // "parameters": {}, + // "path": "v1p2beta1/files:asyncBatchAnnotate", + // "request": { + // "$ref": "GoogleCloudVisionV1p2beta1AsyncBatchAnnotateFilesRequest" + // }, + // "response": { + // "$ref": "Operation" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform", + // "https://www.googleapis.com/auth/cloud-vision" + // ] + // } + +} + +// method id "vision.images.annotate": + +type ImagesAnnotateCall struct { + s *Service + googlecloudvisionv1p2beta1batchannotateimagesrequest *GoogleCloudVisionV1p2beta1BatchAnnotateImagesRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Annotate: Run image detection and annotation for a batch of images. +func (r *ImagesService) Annotate(googlecloudvisionv1p2beta1batchannotateimagesrequest *GoogleCloudVisionV1p2beta1BatchAnnotateImagesRequest) *ImagesAnnotateCall { + c := &ImagesAnnotateCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.googlecloudvisionv1p2beta1batchannotateimagesrequest = googlecloudvisionv1p2beta1batchannotateimagesrequest + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ImagesAnnotateCall) Fields(s ...googleapi.Field) *ImagesAnnotateCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ImagesAnnotateCall) Context(ctx context.Context) *ImagesAnnotateCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ImagesAnnotateCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ImagesAnnotateCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.googlecloudvisionv1p2beta1batchannotateimagesrequest) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + urls := googleapi.ResolveRelative(c.s.BasePath, "v1p2beta1/images:annotate") + urls += "?" + c.urlParams_.Encode() + req, _ := http.NewRequest("POST", urls, body) + req.Header = reqHeaders + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "vision.images.annotate" call. +// Exactly one of *GoogleCloudVisionV1p2beta1BatchAnnotateImagesResponse +// or error will be non-nil. Any non-2xx status code is an error. +// Response headers are in either +// *GoogleCloudVisionV1p2beta1BatchAnnotateImagesResponse.ServerResponse. +// Header or (if a response was returned at all) in +// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check +// whether the returned error was because http.StatusNotModified was +// returned. +func (c *ImagesAnnotateCall) Do(opts ...googleapi.CallOption) (*GoogleCloudVisionV1p2beta1BatchAnnotateImagesResponse, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, &googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + } + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, err + } + ret := &GoogleCloudVisionV1p2beta1BatchAnnotateImagesResponse{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Run image detection and annotation for a batch of images.", + // "flatPath": "v1p2beta1/images:annotate", + // "httpMethod": "POST", + // "id": "vision.images.annotate", + // "parameterOrder": [], + // "parameters": {}, + // "path": "v1p2beta1/images:annotate", + // "request": { + // "$ref": "GoogleCloudVisionV1p2beta1BatchAnnotateImagesRequest" + // }, + // "response": { + // "$ref": "GoogleCloudVisionV1p2beta1BatchAnnotateImagesResponse" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform", + // "https://www.googleapis.com/auth/cloud-vision" + // ] + // } + +} diff --git a/vendor/google.golang.org/api/webfonts/v1/webfonts-api.json b/vendor/google.golang.org/api/webfonts/v1/webfonts-api.json index d91688b98..0bbf23376 100644 --- a/vendor/google.golang.org/api/webfonts/v1/webfonts-api.json +++ b/vendor/google.golang.org/api/webfonts/v1/webfonts-api.json @@ -1,175 +1,175 @@ { - "kind": "discovery#restDescription", - "etag": "\"YWOzh2SDasdU84ArJnpYek-OMdg/Knx7w96lfDrwO6_VUi53vC5n2dE\"", - "discoveryVersion": "v1", - "id": "webfonts:v1", - "name": "webfonts", - "version": "v1", - "revision": "20160302", - "title": "Google Fonts Developer API", - "description": "Accesses the metadata for all families served by Google Fonts, providing a list of families currently available (including available styles and a list of supported script subsets).", - "ownerDomain": "google.com", - "ownerName": "Google", - "icons": { - "x16": "https://www.google.com/images/icons/feature/font_api-16.png", - "x32": "https://www.google.com/images/icons/feature/font_api-32.gif" - }, - "documentationLink": "https://developers.google.com/fonts/docs/developer_api", - "protocol": "rest", - "baseUrl": "https://www.googleapis.com/webfonts/v1/", - "basePath": "/webfonts/v1/", - "rootUrl": "https://www.googleapis.com/", - "servicePath": "webfonts/v1/", - "batchPath": "batch/webfonts/v1", - "parameters": { - "alt": { - "type": "string", - "description": "Data format for the response.", - "default": "json", - "enum": [ - "json" - ], - "enumDescriptions": [ - "Responses with Content-Type of application/json" - ], - "location": "query" + "basePath": "/webfonts/v1/", + "baseUrl": "https://www.googleapis.com/webfonts/v1/", + "batchPath": "batch/webfonts/v1", + "description": "Accesses the metadata for all families served by Google Fonts, providing a list of families currently available (including available styles and a list of supported script subsets).", + "discoveryVersion": "v1", + "documentationLink": "https://developers.google.com/fonts/docs/developer_api", + "etag": "\"-iA1DTNe4s-I6JZXPt1t1Ypy8IU/Knx7w96lfDrwO6_VUi53vC5n2dE\"", + "icons": { + "x16": "https://www.google.com/images/icons/feature/font_api-16.png", + "x32": "https://www.google.com/images/icons/feature/font_api-32.gif" }, - "fields": { - "type": "string", - "description": "Selector specifying which fields to include in a partial response.", - "location": "query" - }, - "key": { - "type": "string", - "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" - }, - "oauth_token": { - "type": "string", - "description": "OAuth 2.0 token for the current user.", - "location": "query" - }, - "prettyPrint": { - "type": "boolean", - "description": "Returns response with indentations and line breaks.", - "default": "true", - "location": "query" - }, - "quotaUser": { - "type": "string", - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", - "location": "query" - }, - "userIp": { - "type": "string", - "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", - "location": "query" - } - }, - "schemas": { - "Webfont": { - "id": "Webfont", - "type": "object", - "properties": { - "category": { - "type": "string", - "description": "The category of the font." - }, - "family": { - "type": "string", - "description": "The name of the font." - }, - "files": { - "type": "object", - "description": "The font files (with all supported scripts) for each one of the available variants, as a key : value map.", - "additionalProperties": { - "type": "string", - "description": "The font file URL (value) for an specific variant (key)." - } - }, - "kind": { - "type": "string", - "description": "This kind represents a webfont object in the webfonts service.", - "default": "webfonts#webfont" - }, - "lastModified": { - "type": "string", - "description": "The date (format \"yyyy-MM-dd\") the font was modified for the last time.", - "format": "date" - }, - "subsets": { - "type": "array", - "description": "The scripts supported by the font.", - "items": { + "id": "webfonts:v1", + "kind": "discovery#restDescription", + "name": "webfonts", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "alt": { + "default": "json", + "description": "Data format for the response.", + "enum": [ + "json" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json" + ], + "location": "query", "type": "string" - } }, - "variants": { - "type": "array", - "description": "The available variants for the font.", - "items": { + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "location": "query", "type": "string" - } }, - "version": { - "type": "string", - "description": "The font version." + "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" + }, + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", + "location": "query", + "type": "string" + }, + "userIp": { + "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", + "location": "query", + "type": "string" } - } }, - "WebfontList": { - "id": "WebfontList", - "type": "object", - "properties": { - "items": { - "type": "array", - "description": "The list of fonts currently served by the Google Fonts API.", - "items": { - "$ref": "Webfont" - } - }, - "kind": { - "type": "string", - "description": "This kind represents a list of webfont objects in the webfonts service.", - "default": "webfonts#webfontList" - } - } - } - }, - "resources": { - "webfonts": { - "methods": { - "list": { - "id": "webfonts.webfonts.list", - "path": "webfonts", - "httpMethod": "GET", - "description": "Retrieves the list of fonts currently served by the Google Fonts Developer API", - "parameters": { - "sort": { - "type": "string", - "description": "Enables sorting of the list", - "enum": [ - "alpha", - "date", - "popularity", - "style", - "trending" - ], - "enumDescriptions": [ - "Sort alphabetically", - "Sort by date added", - "Sort by popularity", - "Sort by number of styles", - "Sort by trending" - ], - "location": "query" + "protocol": "rest", + "resources": { + "webfonts": { + "methods": { + "list": { + "description": "Retrieves the list of fonts currently served by the Google Fonts Developer API", + "httpMethod": "GET", + "id": "webfonts.webfonts.list", + "parameters": { + "sort": { + "description": "Enables sorting of the list", + "enum": [ + "alpha", + "date", + "popularity", + "style", + "trending" + ], + "enumDescriptions": [ + "Sort alphabetically", + "Sort by date added", + "Sort by popularity", + "Sort by number of styles", + "Sort by trending" + ], + "location": "query", + "type": "string" + } + }, + "path": "webfonts", + "response": { + "$ref": "WebfontList" + } + } } - }, - "response": { - "$ref": "WebfontList" - } } - } - } - } -} + }, + "revision": "20160302", + "rootUrl": "https://www.googleapis.com/", + "schemas": { + "Webfont": { + "id": "Webfont", + "properties": { + "category": { + "description": "The category of the font.", + "type": "string" + }, + "family": { + "description": "The name of the font.", + "type": "string" + }, + "files": { + "additionalProperties": { + "description": "The font file URL (value) for an specific variant (key).", + "type": "string" + }, + "description": "The font files (with all supported scripts) for each one of the available variants, as a key : value map.", + "type": "object" + }, + "kind": { + "default": "webfonts#webfont", + "description": "This kind represents a webfont object in the webfonts service.", + "type": "string" + }, + "lastModified": { + "description": "The date (format \"yyyy-MM-dd\") the font was modified for the last time.", + "format": "date", + "type": "string" + }, + "subsets": { + "description": "The scripts supported by the font.", + "items": { + "type": "string" + }, + "type": "array" + }, + "variants": { + "description": "The available variants for the font.", + "items": { + "type": "string" + }, + "type": "array" + }, + "version": { + "description": "The font version.", + "type": "string" + } + }, + "type": "object" + }, + "WebfontList": { + "id": "WebfontList", + "properties": { + "items": { + "description": "The list of fonts currently served by the Google Fonts API.", + "items": { + "$ref": "Webfont" + }, + "type": "array" + }, + "kind": { + "default": "webfonts#webfontList", + "description": "This kind represents a list of webfont objects in the webfonts service.", + "type": "string" + } + }, + "type": "object" + } + }, + "servicePath": "webfonts/v1/", + "title": "Google Fonts Developer API", + "version": "v1" +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/webmasters/v3/webmasters-api.json b/vendor/google.golang.org/api/webmasters/v3/webmasters-api.json index 657cab5b7..eb22a5dbd 100644 --- a/vendor/google.golang.org/api/webmasters/v3/webmasters-api.json +++ b/vendor/google.golang.org/api/webmasters/v3/webmasters-api.json @@ -1,969 +1,969 @@ { - "kind": "discovery#restDescription", - "etag": "\"YWOzh2SDasdU84ArJnpYek-OMdg/FoVh6eGZkMB0Z1f3X5375o8tLXY\"", - "discoveryVersion": "v1", - "id": "webmasters:v3", - "name": "webmasters", - "version": "v3", - "revision": "20170528", - "title": "Search Console API", - "description": "View Google Search Console data for your verified sites.", - "ownerDomain": "google.com", - "ownerName": "Google", - "icons": { - "x16": "https://www.google.com/images/icons/product/webmaster_tools-16.png", - "x32": "https://www.google.com/images/icons/product/webmaster_tools-32.png" - }, - "documentationLink": "https://developers.google.com/webmaster-tools/", - "protocol": "rest", - "baseUrl": "https://www.googleapis.com/webmasters/v3/", - "basePath": "/webmasters/v3/", - "rootUrl": "https://www.googleapis.com/", - "servicePath": "webmasters/v3/", - "batchPath": "batch/webmasters/v3", - "parameters": { - "alt": { - "type": "string", - "description": "Data format for the response.", - "default": "json", - "enum": [ - "json" - ], - "enumDescriptions": [ - "Responses with Content-Type of application/json" - ], - "location": "query" - }, - "fields": { - "type": "string", - "description": "Selector specifying which fields to include in a partial response.", - "location": "query" - }, - "key": { - "type": "string", - "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" - }, - "oauth_token": { - "type": "string", - "description": "OAuth 2.0 token for the current user.", - "location": "query" - }, - "prettyPrint": { - "type": "boolean", - "description": "Returns response with indentations and line breaks.", - "default": "true", - "location": "query" - }, - "quotaUser": { - "type": "string", - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", - "location": "query" - }, - "userIp": { - "type": "string", - "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", - "location": "query" - } - }, - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/webmasters": { - "description": "View and manage Search Console data for your verified sites" - }, - "https://www.googleapis.com/auth/webmasters.readonly": { - "description": "View Search Console data for your verified sites" + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/webmasters": { + "description": "View and manage Search Console data for your verified sites" + }, + "https://www.googleapis.com/auth/webmasters.readonly": { + "description": "View Search Console data for your verified sites" + } + } } - } - } - }, - "schemas": { - "ApiDataRow": { - "id": "ApiDataRow", - "type": "object", - "properties": { - "clicks": { - "type": "number", - "format": "double" - }, - "ctr": { - "type": "number", - "format": "double" - }, - "impressions": { - "type": "number", - "format": "double" - }, - "keys": { - "type": "array", - "items": { + }, + "basePath": "/webmasters/v3/", + "baseUrl": "https://www.googleapis.com/webmasters/v3/", + "batchPath": "batch/webmasters/v3", + "description": "View Google Search Console data for your verified sites.", + "discoveryVersion": "v1", + "documentationLink": "https://developers.google.com/webmaster-tools/", + "etag": "\"-iA1DTNe4s-I6JZXPt1t1Ypy8IU/dq4KEhuC6KulQLePEMDDM0mB6ZA\"", + "icons": { + "x16": "https://www.google.com/images/icons/product/webmaster_tools-16.png", + "x32": "https://www.google.com/images/icons/product/webmaster_tools-32.png" + }, + "id": "webmasters:v3", + "kind": "discovery#restDescription", + "name": "webmasters", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "alt": { + "default": "json", + "description": "Data format for the response.", + "enum": [ + "json" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json" + ], + "location": "query", "type": "string" - } }, - "position": { - "type": "number", - "format": "double" - } - } - }, - "ApiDimensionFilter": { - "id": "ApiDimensionFilter", - "type": "object", - "properties": { - "dimension": { - "type": "string" - }, - "expression": { - "type": "string" - }, - "operator": { - "type": "string" - } - } - }, - "ApiDimensionFilterGroup": { - "id": "ApiDimensionFilterGroup", - "type": "object", - "properties": { - "filters": { - "type": "array", - "items": { - "$ref": "ApiDimensionFilter" - } - }, - "groupType": { - "type": "string" - } - } - }, - "SearchAnalyticsQueryRequest": { - "id": "SearchAnalyticsQueryRequest", - "type": "object", - "properties": { - "aggregationType": { - "type": "string", - "description": "[Optional; Default is \"auto\"] How data is aggregated. If aggregated by property, all data for the same property is aggregated; if aggregated by page, all data is aggregated by canonical URI. If you filter or group by page, choose AUTO; otherwise you can aggregate either by property or by page, depending on how you want your data calculated; see the help documentation to learn how data is calculated differently by site versus by page.\n\nNote: If you group or filter by page, you cannot aggregate by property.\n\nIf you specify any value other than AUTO, the aggregation type in the result will match the requested type, or if you request an invalid type, you will get an error. The API will never change your aggregation type if the requested type is invalid." - }, - "dimensionFilterGroups": { - "type": "array", - "description": "[Optional] Zero or more filters to apply to the dimension grouping values; for example, 'query contains \"buy\"' to see only data where the query string contains the substring \"buy\" (not case-sensitive). You can filter by a dimension without grouping by it.", - "items": { - "$ref": "ApiDimensionFilterGroup" - } - }, - "dimensions": { - "type": "array", - "description": "[Optional] Zero or more dimensions to group results by. Dimensions are the group-by values in the Search Analytics page. Dimensions are combined to create a unique row key for each row. Results are grouped in the order that you supply these dimensions.", - "items": { + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "location": "query", "type": "string" - } }, - "endDate": { - "type": "string", - "description": "[Required] End date of the requested date range, in YYYY-MM-DD format, in PST (UTC - 8:00). Must be greater than or equal to the start date. This value is included in the range." - }, - "rowLimit": { - "type": "integer", - "description": "[Optional; Default is 1000] The maximum number of rows to return. Must be a number from 1 to 5,000 (inclusive).", - "format": "int32" - }, - "searchType": { - "type": "string", - "description": "[Optional; Default is \"web\"] The search type to filter for." - }, - "startDate": { - "type": "string", - "description": "[Required] Start date of the requested date range, in YYYY-MM-DD format, in PST time (UTC - 8:00). Must be less than or equal to the end date. This value is included in the range." - }, - "startRow": { - "type": "integer", - "description": "[Optional; Default is 0] Zero-based index of the first row in the response. Must be a non-negative number.", - "format": "int32" - } - } - }, - "SearchAnalyticsQueryResponse": { - "id": "SearchAnalyticsQueryResponse", - "type": "object", - "description": "A list of rows, one per result, grouped by key. Metrics in each row are aggregated for all data grouped by that key either by page or property, as specified by the aggregation type parameter.", - "properties": { - "responseAggregationType": { - "type": "string", - "description": "How the results were aggregated." - }, - "rows": { - "type": "array", - "description": "A list of rows grouped by the key values in the order given in the query.", - "items": { - "$ref": "ApiDataRow" - } - } - } - }, - "SitemapsListResponse": { - "id": "SitemapsListResponse", - "type": "object", - "description": "List of sitemaps.", - "properties": { - "sitemap": { - "type": "array", - "description": "Contains detailed information about a specific URL submitted as a sitemap.", - "items": { - "$ref": "WmxSitemap" - } - } - } - }, - "SitesListResponse": { - "id": "SitesListResponse", - "type": "object", - "description": "List of sites with access level information.", - "properties": { - "siteEntry": { - "type": "array", - "description": "Contains permission level information about a Search Console site. For more information, see Permissions in Search Console.", - "items": { - "$ref": "WmxSite" - } - } - } - }, - "UrlCrawlErrorCount": { - "id": "UrlCrawlErrorCount", - "type": "object", - "description": "An entry in a URL crawl errors time series.", - "properties": { - "count": { - "type": "string", - "description": "The error count at the given timestamp.", - "format": "int64" - }, - "timestamp": { - "type": "string", - "description": "The date and time when the crawl attempt took place, in RFC 3339 format.", - "format": "date-time" - } - } - }, - "UrlCrawlErrorCountsPerType": { - "id": "UrlCrawlErrorCountsPerType", - "type": "object", - "description": "Number of errors per day for a specific error type (defined by platform and category).", - "properties": { - "category": { - "type": "string", - "description": "The crawl error type." - }, - "entries": { - "type": "array", - "description": "The error count entries time series.", - "items": { - "$ref": "UrlCrawlErrorCount" - } - }, - "platform": { - "type": "string", - "description": "The general type of Googlebot that made the request (see list of Googlebot user-agents for the user-agents used)." - } - } - }, - "UrlCrawlErrorsCountsQueryResponse": { - "id": "UrlCrawlErrorsCountsQueryResponse", - "type": "object", - "description": "A time series of the number of URL crawl errors per error category and platform.", - "properties": { - "countPerTypes": { - "type": "array", - "description": "The time series of the number of URL crawl errors per error category and platform.", - "items": { - "$ref": "UrlCrawlErrorCountsPerType" - } - } - } - }, - "UrlCrawlErrorsSample": { - "id": "UrlCrawlErrorsSample", - "type": "object", - "description": "Contains information about specific crawl errors.", - "properties": { - "first_detected": { - "type": "string", - "description": "The time the error was first detected, in RFC 3339 format.", - "format": "date-time" - }, - "last_crawled": { - "type": "string", - "description": "The time when the URL was last crawled, in RFC 3339 format.", - "format": "date-time" - }, - "pageUrl": { - "type": "string", - "description": "The URL of an error, relative to the site." - }, - "responseCode": { - "type": "integer", - "description": "The HTTP response code, if any.", - "format": "int32" - }, - "urlDetails": { - "$ref": "UrlSampleDetails", - "description": "Additional details about the URL, set only when calling get()." - } - } - }, - "UrlCrawlErrorsSamplesListResponse": { - "id": "UrlCrawlErrorsSamplesListResponse", - "type": "object", - "description": "List of crawl error samples.", - "properties": { - "urlCrawlErrorSample": { - "type": "array", - "description": "Information about the sample URL and its crawl error.", - "items": { - "$ref": "UrlCrawlErrorsSample" - } - } - } - }, - "UrlSampleDetails": { - "id": "UrlSampleDetails", - "type": "object", - "description": "Additional details about the URL, set only when calling get().", - "properties": { - "containingSitemaps": { - "type": "array", - "description": "List of sitemaps pointing at this URL.", - "items": { + "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" - } }, - "linkedFromUrls": { - "type": "array", - "description": "A sample set of URLs linking to this URL.", - "items": { + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", + "location": "query", + "type": "string" + }, + "userIp": { + "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", + "location": "query", "type": "string" - } } - } }, - "WmxSite": { - "id": "WmxSite", - "type": "object", - "description": "Contains permission level information about a Search Console site. For more information, see Permissions in Search Console.", - "properties": { - "permissionLevel": { - "type": "string", - "description": "The user's permission level for the site." + "protocol": "rest", + "resources": { + "searchanalytics": { + "methods": { + "query": { + "description": "Query your data with filters and parameters that you define. Returns zero or more rows grouped by the row keys that you define. You must define a date range of one or more days.\n\nWhen date is one of the group by values, any days without data are omitted from the result list. If you need to know which days have data, issue a broad date range query grouped by date for any metric, and see which day rows are returned.", + "httpMethod": "POST", + "id": "webmasters.searchanalytics.query", + "parameterOrder": [ + "siteUrl" + ], + "parameters": { + "siteUrl": { + "description": "The site's URL, including protocol. For example: http://www.example.com/", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "sites/{siteUrl}/searchAnalytics/query", + "request": { + "$ref": "SearchAnalyticsQueryRequest" + }, + "response": { + "$ref": "SearchAnalyticsQueryResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/webmasters", + "https://www.googleapis.com/auth/webmasters.readonly" + ] + } + } }, - "siteUrl": { - "type": "string", - "description": "The URL of the site." + "sitemaps": { + "methods": { + "delete": { + "description": "Deletes a sitemap from this site.", + "httpMethod": "DELETE", + "id": "webmasters.sitemaps.delete", + "parameterOrder": [ + "siteUrl", + "feedpath" + ], + "parameters": { + "feedpath": { + "description": "The URL of the actual sitemap. For example: http://www.example.com/sitemap.xml", + "location": "path", + "required": true, + "type": "string" + }, + "siteUrl": { + "description": "The site's URL, including protocol. For example: http://www.example.com/", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "sites/{siteUrl}/sitemaps/{feedpath}", + "scopes": [ + "https://www.googleapis.com/auth/webmasters" + ] + }, + "get": { + "description": "Retrieves information about a specific sitemap.", + "httpMethod": "GET", + "id": "webmasters.sitemaps.get", + "parameterOrder": [ + "siteUrl", + "feedpath" + ], + "parameters": { + "feedpath": { + "description": "The URL of the actual sitemap. For example: http://www.example.com/sitemap.xml", + "location": "path", + "required": true, + "type": "string" + }, + "siteUrl": { + "description": "The site's URL, including protocol. For example: http://www.example.com/", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "sites/{siteUrl}/sitemaps/{feedpath}", + "response": { + "$ref": "WmxSitemap" + }, + "scopes": [ + "https://www.googleapis.com/auth/webmasters", + "https://www.googleapis.com/auth/webmasters.readonly" + ] + }, + "list": { + "description": "Lists the sitemaps-entries submitted for this site, or included in the sitemap index file (if sitemapIndex is specified in the request).", + "httpMethod": "GET", + "id": "webmasters.sitemaps.list", + "parameterOrder": [ + "siteUrl" + ], + "parameters": { + "siteUrl": { + "description": "The site's URL, including protocol. For example: http://www.example.com/", + "location": "path", + "required": true, + "type": "string" + }, + "sitemapIndex": { + "description": "A URL of a site's sitemap index. For example: http://www.example.com/sitemapindex.xml", + "location": "query", + "type": "string" + } + }, + "path": "sites/{siteUrl}/sitemaps", + "response": { + "$ref": "SitemapsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/webmasters", + "https://www.googleapis.com/auth/webmasters.readonly" + ] + }, + "submit": { + "description": "Submits a sitemap for a site.", + "httpMethod": "PUT", + "id": "webmasters.sitemaps.submit", + "parameterOrder": [ + "siteUrl", + "feedpath" + ], + "parameters": { + "feedpath": { + "description": "The URL of the sitemap to add. For example: http://www.example.com/sitemap.xml", + "location": "path", + "required": true, + "type": "string" + }, + "siteUrl": { + "description": "The site's URL, including protocol. For example: http://www.example.com/", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "sites/{siteUrl}/sitemaps/{feedpath}", + "scopes": [ + "https://www.googleapis.com/auth/webmasters" + ] + } + } + }, + "sites": { + "methods": { + "add": { + "description": "Adds a site to the set of the user's sites in Search Console.", + "httpMethod": "PUT", + "id": "webmasters.sites.add", + "parameterOrder": [ + "siteUrl" + ], + "parameters": { + "siteUrl": { + "description": "The URL of the site to add.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "sites/{siteUrl}", + "scopes": [ + "https://www.googleapis.com/auth/webmasters" + ] + }, + "delete": { + "description": "Removes a site from the set of the user's Search Console sites.", + "httpMethod": "DELETE", + "id": "webmasters.sites.delete", + "parameterOrder": [ + "siteUrl" + ], + "parameters": { + "siteUrl": { + "description": "The URI of the property as defined in Search Console. Examples: http://www.example.com/ or android-app://com.example/ Note: for property-sets, use the URI that starts with sc-set: which is used in Search Console URLs.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "sites/{siteUrl}", + "scopes": [ + "https://www.googleapis.com/auth/webmasters" + ] + }, + "get": { + "description": "Retrieves information about specific site.", + "httpMethod": "GET", + "id": "webmasters.sites.get", + "parameterOrder": [ + "siteUrl" + ], + "parameters": { + "siteUrl": { + "description": "The URI of the property as defined in Search Console. Examples: http://www.example.com/ or android-app://com.example/ Note: for property-sets, use the URI that starts with sc-set: which is used in Search Console URLs.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "sites/{siteUrl}", + "response": { + "$ref": "WmxSite" + }, + "scopes": [ + "https://www.googleapis.com/auth/webmasters", + "https://www.googleapis.com/auth/webmasters.readonly" + ] + }, + "list": { + "description": "Lists the user's Search Console sites.", + "httpMethod": "GET", + "id": "webmasters.sites.list", + "path": "sites", + "response": { + "$ref": "SitesListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/webmasters", + "https://www.googleapis.com/auth/webmasters.readonly" + ] + } + } + }, + "urlcrawlerrorscounts": { + "methods": { + "query": { + "description": "Retrieves a time series of the number of URL crawl errors per error category and platform.", + "httpMethod": "GET", + "id": "webmasters.urlcrawlerrorscounts.query", + "parameterOrder": [ + "siteUrl" + ], + "parameters": { + "category": { + "description": "The crawl error category. For example: serverError. If not specified, returns results for all categories.", + "enum": [ + "authPermissions", + "flashContent", + "manyToOneRedirect", + "notFollowed", + "notFound", + "other", + "roboted", + "serverError", + "soft404" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "location": "query", + "type": "string" + }, + "latestCountsOnly": { + "default": "true", + "description": "If true, returns only the latest crawl error counts.", + "location": "query", + "type": "boolean" + }, + "platform": { + "description": "The user agent type (platform) that made the request. For example: web. If not specified, returns results for all platforms.", + "enum": [ + "mobile", + "smartphoneOnly", + "web" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "location": "query", + "type": "string" + }, + "siteUrl": { + "description": "The site's URL, including protocol. For example: http://www.example.com/", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "sites/{siteUrl}/urlCrawlErrorsCounts/query", + "response": { + "$ref": "UrlCrawlErrorsCountsQueryResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/webmasters", + "https://www.googleapis.com/auth/webmasters.readonly" + ] + } + } + }, + "urlcrawlerrorssamples": { + "methods": { + "get": { + "description": "Retrieves details about crawl errors for a site's sample URL.", + "httpMethod": "GET", + "id": "webmasters.urlcrawlerrorssamples.get", + "parameterOrder": [ + "siteUrl", + "url", + "category", + "platform" + ], + "parameters": { + "category": { + "description": "The crawl error category. For example: authPermissions", + "enum": [ + "authPermissions", + "flashContent", + "manyToOneRedirect", + "notFollowed", + "notFound", + "other", + "roboted", + "serverError", + "soft404" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "location": "query", + "required": true, + "type": "string" + }, + "platform": { + "description": "The user agent type (platform) that made the request. For example: web", + "enum": [ + "mobile", + "smartphoneOnly", + "web" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "location": "query", + "required": true, + "type": "string" + }, + "siteUrl": { + "description": "The site's URL, including protocol. For example: http://www.example.com/", + "location": "path", + "required": true, + "type": "string" + }, + "url": { + "description": "The relative path (without the site) of the sample URL. It must be one of the URLs returned by list(). For example, for the URL https://www.example.com/pagename on the site https://www.example.com/, the url value is pagename", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "sites/{siteUrl}/urlCrawlErrorsSamples/{url}", + "response": { + "$ref": "UrlCrawlErrorsSample" + }, + "scopes": [ + "https://www.googleapis.com/auth/webmasters", + "https://www.googleapis.com/auth/webmasters.readonly" + ] + }, + "list": { + "description": "Lists a site's sample URLs for the specified crawl error category and platform.", + "httpMethod": "GET", + "id": "webmasters.urlcrawlerrorssamples.list", + "parameterOrder": [ + "siteUrl", + "category", + "platform" + ], + "parameters": { + "category": { + "description": "The crawl error category. For example: authPermissions", + "enum": [ + "authPermissions", + "flashContent", + "manyToOneRedirect", + "notFollowed", + "notFound", + "other", + "roboted", + "serverError", + "soft404" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "location": "query", + "required": true, + "type": "string" + }, + "platform": { + "description": "The user agent type (platform) that made the request. For example: web", + "enum": [ + "mobile", + "smartphoneOnly", + "web" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "location": "query", + "required": true, + "type": "string" + }, + "siteUrl": { + "description": "The site's URL, including protocol. For example: http://www.example.com/", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "sites/{siteUrl}/urlCrawlErrorsSamples", + "response": { + "$ref": "UrlCrawlErrorsSamplesListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/webmasters", + "https://www.googleapis.com/auth/webmasters.readonly" + ] + }, + "markAsFixed": { + "description": "Marks the provided site's sample URL as fixed, and removes it from the samples list.", + "httpMethod": "DELETE", + "id": "webmasters.urlcrawlerrorssamples.markAsFixed", + "parameterOrder": [ + "siteUrl", + "url", + "category", + "platform" + ], + "parameters": { + "category": { + "description": "The crawl error category. For example: authPermissions", + "enum": [ + "authPermissions", + "flashContent", + "manyToOneRedirect", + "notFollowed", + "notFound", + "other", + "roboted", + "serverError", + "soft404" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "location": "query", + "required": true, + "type": "string" + }, + "platform": { + "description": "The user agent type (platform) that made the request. For example: web", + "enum": [ + "mobile", + "smartphoneOnly", + "web" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "location": "query", + "required": true, + "type": "string" + }, + "siteUrl": { + "description": "The site's URL, including protocol. For example: http://www.example.com/", + "location": "path", + "required": true, + "type": "string" + }, + "url": { + "description": "The relative path (without the site) of the sample URL. It must be one of the URLs returned by list(). For example, for the URL https://www.example.com/pagename on the site https://www.example.com/, the url value is pagename", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "sites/{siteUrl}/urlCrawlErrorsSamples/{url}", + "scopes": [ + "https://www.googleapis.com/auth/webmasters" + ] + } + } } - } }, - "WmxSitemap": { - "id": "WmxSitemap", - "type": "object", - "description": "Contains detailed information about a specific URL submitted as a sitemap.", - "properties": { - "contents": { - "type": "array", - "description": "The various content types in the sitemap.", - "items": { - "$ref": "WmxSitemapContent" - } + "revision": "20180125", + "rootUrl": "https://www.googleapis.com/", + "schemas": { + "ApiDataRow": { + "id": "ApiDataRow", + "properties": { + "clicks": { + "format": "double", + "type": "number" + }, + "ctr": { + "format": "double", + "type": "number" + }, + "impressions": { + "format": "double", + "type": "number" + }, + "keys": { + "items": { + "type": "string" + }, + "type": "array" + }, + "position": { + "format": "double", + "type": "number" + } + }, + "type": "object" }, - "errors": { - "type": "string", - "description": "Number of errors in the sitemap. These are issues with the sitemap itself that need to be fixed before it can be processed correctly.", - "format": "int64" + "ApiDimensionFilter": { + "id": "ApiDimensionFilter", + "properties": { + "dimension": { + "type": "string" + }, + "expression": { + "type": "string" + }, + "operator": { + "type": "string" + } + }, + "type": "object" }, - "isPending": { - "type": "boolean", - "description": "If true, the sitemap has not been processed." + "ApiDimensionFilterGroup": { + "id": "ApiDimensionFilterGroup", + "properties": { + "filters": { + "items": { + "$ref": "ApiDimensionFilter" + }, + "type": "array" + }, + "groupType": { + "type": "string" + } + }, + "type": "object" }, - "isSitemapsIndex": { - "type": "boolean", - "description": "If true, the sitemap is a collection of sitemaps." + "SearchAnalyticsQueryRequest": { + "id": "SearchAnalyticsQueryRequest", + "properties": { + "aggregationType": { + "description": "[Optional; Default is \"auto\"] How data is aggregated. If aggregated by property, all data for the same property is aggregated; if aggregated by page, all data is aggregated by canonical URI. If you filter or group by page, choose AUTO; otherwise you can aggregate either by property or by page, depending on how you want your data calculated; see the help documentation to learn how data is calculated differently by site versus by page.\n\nNote: If you group or filter by page, you cannot aggregate by property.\n\nIf you specify any value other than AUTO, the aggregation type in the result will match the requested type, or if you request an invalid type, you will get an error. The API will never change your aggregation type if the requested type is invalid.", + "type": "string" + }, + "dimensionFilterGroups": { + "description": "[Optional] Zero or more filters to apply to the dimension grouping values; for example, 'query contains \"buy\"' to see only data where the query string contains the substring \"buy\" (not case-sensitive). You can filter by a dimension without grouping by it.", + "items": { + "$ref": "ApiDimensionFilterGroup" + }, + "type": "array" + }, + "dimensions": { + "description": "[Optional] Zero or more dimensions to group results by. Dimensions are the group-by values in the Search Analytics page. Dimensions are combined to create a unique row key for each row. Results are grouped in the order that you supply these dimensions.", + "items": { + "type": "string" + }, + "type": "array" + }, + "endDate": { + "description": "[Required] End date of the requested date range, in YYYY-MM-DD format, in PST (UTC - 8:00). Must be greater than or equal to the start date. This value is included in the range.", + "type": "string" + }, + "rowLimit": { + "description": "[Optional; Default is 1000] The maximum number of rows to return. Must be a number from 1 to 5,000 (inclusive).", + "format": "int32", + "type": "integer" + }, + "searchType": { + "description": "[Optional; Default is \"web\"] The search type to filter for.", + "type": "string" + }, + "startDate": { + "description": "[Required] Start date of the requested date range, in YYYY-MM-DD format, in PST time (UTC - 8:00). Must be less than or equal to the end date. This value is included in the range.", + "type": "string" + }, + "startRow": { + "description": "[Optional; Default is 0] Zero-based index of the first row in the response. Must be a non-negative number.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" }, - "lastDownloaded": { - "type": "string", - "description": "Date & time in which this sitemap was last downloaded. Date format is in RFC 3339 format (yyyy-mm-dd).", - "format": "date-time" + "SearchAnalyticsQueryResponse": { + "description": "A list of rows, one per result, grouped by key. Metrics in each row are aggregated for all data grouped by that key either by page or property, as specified by the aggregation type parameter.", + "id": "SearchAnalyticsQueryResponse", + "properties": { + "responseAggregationType": { + "description": "How the results were aggregated.", + "type": "string" + }, + "rows": { + "description": "A list of rows grouped by the key values in the order given in the query.", + "items": { + "$ref": "ApiDataRow" + }, + "type": "array" + } + }, + "type": "object" }, - "lastSubmitted": { - "type": "string", - "description": "Date & time in which this sitemap was submitted. Date format is in RFC 3339 format (yyyy-mm-dd).", - "format": "date-time" + "SitemapsListResponse": { + "description": "List of sitemaps.", + "id": "SitemapsListResponse", + "properties": { + "sitemap": { + "description": "Contains detailed information about a specific URL submitted as a sitemap.", + "items": { + "$ref": "WmxSitemap" + }, + "type": "array" + } + }, + "type": "object" }, - "path": { - "type": "string", - "description": "The url of the sitemap." + "SitesListResponse": { + "description": "List of sites with access level information.", + "id": "SitesListResponse", + "properties": { + "siteEntry": { + "description": "Contains permission level information about a Search Console site. For more information, see Permissions in Search Console.", + "items": { + "$ref": "WmxSite" + }, + "type": "array" + } + }, + "type": "object" }, - "type": { - "type": "string", - "description": "The type of the sitemap. For example: rssFeed." + "UrlCrawlErrorCount": { + "description": "An entry in a URL crawl errors time series.", + "id": "UrlCrawlErrorCount", + "properties": { + "count": { + "description": "The error count at the given timestamp.", + "format": "int64", + "type": "string" + }, + "timestamp": { + "description": "The date and time when the crawl attempt took place, in RFC 3339 format.", + "format": "date-time", + "type": "string" + } + }, + "type": "object" }, - "warnings": { - "type": "string", - "description": "Number of warnings for the sitemap. These are generally non-critical issues with URLs in the sitemaps.", - "format": "int64" + "UrlCrawlErrorCountsPerType": { + "description": "Number of errors per day for a specific error type (defined by platform and category).", + "id": "UrlCrawlErrorCountsPerType", + "properties": { + "category": { + "description": "The crawl error type.", + "type": "string" + }, + "entries": { + "description": "The error count entries time series.", + "items": { + "$ref": "UrlCrawlErrorCount" + }, + "type": "array" + }, + "platform": { + "description": "The general type of Googlebot that made the request (see list of Googlebot user-agents for the user-agents used).", + "type": "string" + } + }, + "type": "object" + }, + "UrlCrawlErrorsCountsQueryResponse": { + "description": "A time series of the number of URL crawl errors per error category and platform.", + "id": "UrlCrawlErrorsCountsQueryResponse", + "properties": { + "countPerTypes": { + "description": "The time series of the number of URL crawl errors per error category and platform.", + "items": { + "$ref": "UrlCrawlErrorCountsPerType" + }, + "type": "array" + } + }, + "type": "object" + }, + "UrlCrawlErrorsSample": { + "description": "Contains information about specific crawl errors.", + "id": "UrlCrawlErrorsSample", + "properties": { + "first_detected": { + "description": "The time the error was first detected, in RFC 3339 format.", + "format": "date-time", + "type": "string" + }, + "last_crawled": { + "description": "The time when the URL was last crawled, in RFC 3339 format.", + "format": "date-time", + "type": "string" + }, + "pageUrl": { + "description": "The URL of an error, relative to the site.", + "type": "string" + }, + "responseCode": { + "description": "The HTTP response code, if any.", + "format": "int32", + "type": "integer" + }, + "urlDetails": { + "$ref": "UrlSampleDetails", + "description": "Additional details about the URL, set only when calling get()." + } + }, + "type": "object" + }, + "UrlCrawlErrorsSamplesListResponse": { + "description": "List of crawl error samples.", + "id": "UrlCrawlErrorsSamplesListResponse", + "properties": { + "urlCrawlErrorSample": { + "description": "Information about the sample URL and its crawl error.", + "items": { + "$ref": "UrlCrawlErrorsSample" + }, + "type": "array" + } + }, + "type": "object" + }, + "UrlSampleDetails": { + "description": "Additional details about the URL, set only when calling get().", + "id": "UrlSampleDetails", + "properties": { + "containingSitemaps": { + "description": "List of sitemaps pointing at this URL.", + "items": { + "type": "string" + }, + "type": "array" + }, + "linkedFromUrls": { + "description": "A sample set of URLs linking to this URL.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "WmxSite": { + "description": "Contains permission level information about a Search Console site. For more information, see Permissions in Search Console.", + "id": "WmxSite", + "properties": { + "permissionLevel": { + "description": "The user's permission level for the site.", + "type": "string" + }, + "siteUrl": { + "description": "The URL of the site.", + "type": "string" + } + }, + "type": "object" + }, + "WmxSitemap": { + "description": "Contains detailed information about a specific URL submitted as a sitemap.", + "id": "WmxSitemap", + "properties": { + "contents": { + "description": "The various content types in the sitemap.", + "items": { + "$ref": "WmxSitemapContent" + }, + "type": "array" + }, + "errors": { + "description": "Number of errors in the sitemap. These are issues with the sitemap itself that need to be fixed before it can be processed correctly.", + "format": "int64", + "type": "string" + }, + "isPending": { + "description": "If true, the sitemap has not been processed.", + "type": "boolean" + }, + "isSitemapsIndex": { + "description": "If true, the sitemap is a collection of sitemaps.", + "type": "boolean" + }, + "lastDownloaded": { + "description": "Date \u0026 time in which this sitemap was last downloaded. Date format is in RFC 3339 format (yyyy-mm-dd).", + "format": "date-time", + "type": "string" + }, + "lastSubmitted": { + "description": "Date \u0026 time in which this sitemap was submitted. Date format is in RFC 3339 format (yyyy-mm-dd).", + "format": "date-time", + "type": "string" + }, + "path": { + "description": "The url of the sitemap.", + "type": "string" + }, + "type": { + "description": "The type of the sitemap. For example: rssFeed.", + "type": "string" + }, + "warnings": { + "description": "Number of warnings for the sitemap. These are generally non-critical issues with URLs in the sitemaps.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "WmxSitemapContent": { + "description": "Information about the various content types in the sitemap.", + "id": "WmxSitemapContent", + "properties": { + "indexed": { + "description": "The number of URLs from the sitemap that were indexed (of the content type).", + "format": "int64", + "type": "string" + }, + "submitted": { + "description": "The number of URLs in the sitemap (of the content type).", + "format": "int64", + "type": "string" + }, + "type": { + "description": "The specific type of content in this sitemap. For example: web.", + "type": "string" + } + }, + "type": "object" } - } }, - "WmxSitemapContent": { - "id": "WmxSitemapContent", - "type": "object", - "description": "Information about the various content types in the sitemap.", - "properties": { - "indexed": { - "type": "string", - "description": "The number of URLs from the sitemap that were indexed (of the content type).", - "format": "int64" - }, - "submitted": { - "type": "string", - "description": "The number of URLs in the sitemap (of the content type).", - "format": "int64" - }, - "type": { - "type": "string", - "description": "The specific type of content in this sitemap. For example: web." - } - } - } - }, - "resources": { - "searchanalytics": { - "methods": { - "query": { - "id": "webmasters.searchanalytics.query", - "path": "sites/{siteUrl}/searchAnalytics/query", - "httpMethod": "POST", - "description": "Query your data with filters and parameters that you define. Returns zero or more rows grouped by the row keys that you define. You must define a date range of one or more days.\n\nWhen date is one of the group by values, any days without data are omitted from the result list. If you need to know which days have data, issue a broad date range query grouped by date for any metric, and see which day rows are returned.", - "parameters": { - "siteUrl": { - "type": "string", - "description": "The site's URL, including protocol. For example: http://www.example.com/", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "siteUrl" - ], - "request": { - "$ref": "SearchAnalyticsQueryRequest" - }, - "response": { - "$ref": "SearchAnalyticsQueryResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/webmasters", - "https://www.googleapis.com/auth/webmasters.readonly" - ] - } - } - }, - "sitemaps": { - "methods": { - "delete": { - "id": "webmasters.sitemaps.delete", - "path": "sites/{siteUrl}/sitemaps/{feedpath}", - "httpMethod": "DELETE", - "description": "Deletes a sitemap from this site.", - "parameters": { - "feedpath": { - "type": "string", - "description": "The URL of the actual sitemap. For example: http://www.example.com/sitemap.xml", - "required": true, - "location": "path" - }, - "siteUrl": { - "type": "string", - "description": "The site's URL, including protocol. For example: http://www.example.com/", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "siteUrl", - "feedpath" - ], - "scopes": [ - "https://www.googleapis.com/auth/webmasters" - ] - }, - "get": { - "id": "webmasters.sitemaps.get", - "path": "sites/{siteUrl}/sitemaps/{feedpath}", - "httpMethod": "GET", - "description": "Retrieves information about a specific sitemap.", - "parameters": { - "feedpath": { - "type": "string", - "description": "The URL of the actual sitemap. For example: http://www.example.com/sitemap.xml", - "required": true, - "location": "path" - }, - "siteUrl": { - "type": "string", - "description": "The site's URL, including protocol. For example: http://www.example.com/", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "siteUrl", - "feedpath" - ], - "response": { - "$ref": "WmxSitemap" - }, - "scopes": [ - "https://www.googleapis.com/auth/webmasters", - "https://www.googleapis.com/auth/webmasters.readonly" - ] - }, - "list": { - "id": "webmasters.sitemaps.list", - "path": "sites/{siteUrl}/sitemaps", - "httpMethod": "GET", - "description": "Lists the sitemaps-entries submitted for this site, or included in the sitemap index file (if sitemapIndex is specified in the request).", - "parameters": { - "siteUrl": { - "type": "string", - "description": "The site's URL, including protocol. For example: http://www.example.com/", - "required": true, - "location": "path" - }, - "sitemapIndex": { - "type": "string", - "description": "A URL of a site's sitemap index. For example: http://www.example.com/sitemapindex.xml", - "location": "query" - } - }, - "parameterOrder": [ - "siteUrl" - ], - "response": { - "$ref": "SitemapsListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/webmasters", - "https://www.googleapis.com/auth/webmasters.readonly" - ] - }, - "submit": { - "id": "webmasters.sitemaps.submit", - "path": "sites/{siteUrl}/sitemaps/{feedpath}", - "httpMethod": "PUT", - "description": "Submits a sitemap for a site.", - "parameters": { - "feedpath": { - "type": "string", - "description": "The URL of the sitemap to add. For example: http://www.example.com/sitemap.xml", - "required": true, - "location": "path" - }, - "siteUrl": { - "type": "string", - "description": "The site's URL, including protocol. For example: http://www.example.com/", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "siteUrl", - "feedpath" - ], - "scopes": [ - "https://www.googleapis.com/auth/webmasters" - ] - } - } - }, - "sites": { - "methods": { - "add": { - "id": "webmasters.sites.add", - "path": "sites/{siteUrl}", - "httpMethod": "PUT", - "description": "Adds a site to the set of the user's sites in Search Console.", - "parameters": { - "siteUrl": { - "type": "string", - "description": "The URL of the site to add.", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "siteUrl" - ], - "scopes": [ - "https://www.googleapis.com/auth/webmasters" - ] - }, - "delete": { - "id": "webmasters.sites.delete", - "path": "sites/{siteUrl}", - "httpMethod": "DELETE", - "description": "Removes a site from the set of the user's Search Console sites.", - "parameters": { - "siteUrl": { - "type": "string", - "description": "The URI of the property as defined in Search Console. Examples: http://www.example.com/ or android-app://com.example/", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "siteUrl" - ], - "scopes": [ - "https://www.googleapis.com/auth/webmasters" - ] - }, - "get": { - "id": "webmasters.sites.get", - "path": "sites/{siteUrl}", - "httpMethod": "GET", - "description": "Retrieves information about specific site.", - "parameters": { - "siteUrl": { - "type": "string", - "description": "The URI of the property as defined in Search Console. Examples: http://www.example.com/ or android-app://com.example/", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "siteUrl" - ], - "response": { - "$ref": "WmxSite" - }, - "scopes": [ - "https://www.googleapis.com/auth/webmasters", - "https://www.googleapis.com/auth/webmasters.readonly" - ] - }, - "list": { - "id": "webmasters.sites.list", - "path": "sites", - "httpMethod": "GET", - "description": "Lists the user's Search Console sites.", - "response": { - "$ref": "SitesListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/webmasters", - "https://www.googleapis.com/auth/webmasters.readonly" - ] - } - } - }, - "urlcrawlerrorscounts": { - "methods": { - "query": { - "id": "webmasters.urlcrawlerrorscounts.query", - "path": "sites/{siteUrl}/urlCrawlErrorsCounts/query", - "httpMethod": "GET", - "description": "Retrieves a time series of the number of URL crawl errors per error category and platform.", - "parameters": { - "category": { - "type": "string", - "description": "The crawl error category. For example: serverError. If not specified, returns results for all categories.", - "enum": [ - "authPermissions", - "flashContent", - "manyToOneRedirect", - "notFollowed", - "notFound", - "other", - "roboted", - "serverError", - "soft404" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "" - ], - "location": "query" - }, - "latestCountsOnly": { - "type": "boolean", - "description": "If true, returns only the latest crawl error counts.", - "default": "true", - "location": "query" - }, - "platform": { - "type": "string", - "description": "The user agent type (platform) that made the request. For example: web. If not specified, returns results for all platforms.", - "enum": [ - "mobile", - "smartphoneOnly", - "web" - ], - "enumDescriptions": [ - "", - "", - "" - ], - "location": "query" - }, - "siteUrl": { - "type": "string", - "description": "The site's URL, including protocol. For example: http://www.example.com/", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "siteUrl" - ], - "response": { - "$ref": "UrlCrawlErrorsCountsQueryResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/webmasters", - "https://www.googleapis.com/auth/webmasters.readonly" - ] - } - } - }, - "urlcrawlerrorssamples": { - "methods": { - "get": { - "id": "webmasters.urlcrawlerrorssamples.get", - "path": "sites/{siteUrl}/urlCrawlErrorsSamples/{url}", - "httpMethod": "GET", - "description": "Retrieves details about crawl errors for a site's sample URL.", - "parameters": { - "category": { - "type": "string", - "description": "The crawl error category. For example: authPermissions", - "required": true, - "enum": [ - "authPermissions", - "flashContent", - "manyToOneRedirect", - "notFollowed", - "notFound", - "other", - "roboted", - "serverError", - "soft404" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "" - ], - "location": "query" - }, - "platform": { - "type": "string", - "description": "The user agent type (platform) that made the request. For example: web", - "required": true, - "enum": [ - "mobile", - "smartphoneOnly", - "web" - ], - "enumDescriptions": [ - "", - "", - "" - ], - "location": "query" - }, - "siteUrl": { - "type": "string", - "description": "The site's URL, including protocol. For example: http://www.example.com/", - "required": true, - "location": "path" - }, - "url": { - "type": "string", - "description": "The relative path (without the site) of the sample URL. It must be one of the URLs returned by list(). For example, for the URL https://www.example.com/pagename on the site https://www.example.com/, the url value is pagename", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "siteUrl", - "url", - "category", - "platform" - ], - "response": { - "$ref": "UrlCrawlErrorsSample" - }, - "scopes": [ - "https://www.googleapis.com/auth/webmasters", - "https://www.googleapis.com/auth/webmasters.readonly" - ] - }, - "list": { - "id": "webmasters.urlcrawlerrorssamples.list", - "path": "sites/{siteUrl}/urlCrawlErrorsSamples", - "httpMethod": "GET", - "description": "Lists a site's sample URLs for the specified crawl error category and platform.", - "parameters": { - "category": { - "type": "string", - "description": "The crawl error category. For example: authPermissions", - "required": true, - "enum": [ - "authPermissions", - "flashContent", - "manyToOneRedirect", - "notFollowed", - "notFound", - "other", - "roboted", - "serverError", - "soft404" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "" - ], - "location": "query" - }, - "platform": { - "type": "string", - "description": "The user agent type (platform) that made the request. For example: web", - "required": true, - "enum": [ - "mobile", - "smartphoneOnly", - "web" - ], - "enumDescriptions": [ - "", - "", - "" - ], - "location": "query" - }, - "siteUrl": { - "type": "string", - "description": "The site's URL, including protocol. For example: http://www.example.com/", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "siteUrl", - "category", - "platform" - ], - "response": { - "$ref": "UrlCrawlErrorsSamplesListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/webmasters", - "https://www.googleapis.com/auth/webmasters.readonly" - ] - }, - "markAsFixed": { - "id": "webmasters.urlcrawlerrorssamples.markAsFixed", - "path": "sites/{siteUrl}/urlCrawlErrorsSamples/{url}", - "httpMethod": "DELETE", - "description": "Marks the provided site's sample URL as fixed, and removes it from the samples list.", - "parameters": { - "category": { - "type": "string", - "description": "The crawl error category. For example: authPermissions", - "required": true, - "enum": [ - "authPermissions", - "flashContent", - "manyToOneRedirect", - "notFollowed", - "notFound", - "other", - "roboted", - "serverError", - "soft404" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "" - ], - "location": "query" - }, - "platform": { - "type": "string", - "description": "The user agent type (platform) that made the request. For example: web", - "required": true, - "enum": [ - "mobile", - "smartphoneOnly", - "web" - ], - "enumDescriptions": [ - "", - "", - "" - ], - "location": "query" - }, - "siteUrl": { - "type": "string", - "description": "The site's URL, including protocol. For example: http://www.example.com/", - "required": true, - "location": "path" - }, - "url": { - "type": "string", - "description": "The relative path (without the site) of the sample URL. It must be one of the URLs returned by list(). For example, for the URL https://www.example.com/pagename on the site https://www.example.com/, the url value is pagename", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "siteUrl", - "url", - "category", - "platform" - ], - "scopes": [ - "https://www.googleapis.com/auth/webmasters" - ] - } - } - } - } -} + "servicePath": "webmasters/v3/", + "title": "Search Console API", + "version": "v3" +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/webmasters/v3/webmasters-gen.go b/vendor/google.golang.org/api/webmasters/v3/webmasters-gen.go index d0be821c8..155dc6143 100644 --- a/vendor/google.golang.org/api/webmasters/v3/webmasters-gen.go +++ b/vendor/google.golang.org/api/webmasters/v3/webmasters-gen.go @@ -1613,7 +1613,7 @@ func (c *SitesDeleteCall) Do(opts ...googleapi.CallOption) error { // ], // "parameters": { // "siteUrl": { - // "description": "The URI of the property as defined in Search Console. Examples: http://www.example.com/ or android-app://com.example/", + // "description": "The URI of the property as defined in Search Console. Examples: http://www.example.com/ or android-app://com.example/ Note: for property-sets, use the URI that starts with sc-set: which is used in Search Console URLs.", // "location": "path", // "required": true, // "type": "string" @@ -1747,7 +1747,7 @@ func (c *SitesGetCall) Do(opts ...googleapi.CallOption) (*WmxSite, error) { // ], // "parameters": { // "siteUrl": { - // "description": "The URI of the property as defined in Search Console. Examples: http://www.example.com/ or android-app://com.example/", + // "description": "The URI of the property as defined in Search Console. Examples: http://www.example.com/ or android-app://com.example/ Note: for property-sets, use the URI that starts with sc-set: which is used in Search Console URLs.", // "location": "path", // "required": true, // "type": "string" diff --git a/vendor/google.golang.org/api/youtube/v3/youtube-api.json b/vendor/google.golang.org/api/youtube/v3/youtube-api.json index b0440981f..f1c8bcfc8 100644 --- a/vendor/google.golang.org/api/youtube/v3/youtube-api.json +++ b/vendor/google.golang.org/api/youtube/v3/youtube-api.json @@ -1,10901 +1,10951 @@ { - "kind": "discovery#restDescription", - "etag": "\"YWOzh2SDasdU84ArJnpYek-OMdg/IPcVNse7nmUQLqz58rbBGkdlX1c\"", - "discoveryVersion": "v1", - "id": "youtube:v3", - "name": "youtube", - "canonicalName": "YouTube", - "version": "v3", - "revision": "20171215", - "title": "YouTube Data API", - "description": "Supports core YouTube features, such as uploading videos, creating and managing playlists, searching for content, and much more.", - "ownerDomain": "google.com", - "ownerName": "Google", - "icons": { - "x16": "https://www.google.com/images/icons/product/youtube-16.png", - "x32": "https://www.google.com/images/icons/product/youtube-32.png" - }, - "documentationLink": "https://developers.google.com/youtube/v3", - "protocol": "rest", - "baseUrl": "https://www.googleapis.com/youtube/v3/", - "basePath": "/youtube/v3/", - "rootUrl": "https://www.googleapis.com/", - "servicePath": "youtube/v3/", - "batchPath": "batch/youtube/v3", - "parameters": { - "alt": { - "type": "string", - "description": "Data format for the response.", - "default": "json", - "enum": [ - "json" - ], - "enumDescriptions": [ - "Responses with Content-Type of application/json" - ], - "location": "query" - }, - "fields": { - "type": "string", - "description": "Selector specifying which fields to include in a partial response.", - "location": "query" - }, - "key": { - "type": "string", - "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" - }, - "oauth_token": { - "type": "string", - "description": "OAuth 2.0 token for the current user.", - "location": "query" - }, - "prettyPrint": { - "type": "boolean", - "description": "Returns response with indentations and line breaks.", - "default": "true", - "location": "query" - }, - "quotaUser": { - "type": "string", - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", - "location": "query" - }, - "userIp": { - "type": "string", - "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", - "location": "query" - } - }, - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/youtube": { - "description": "Manage your YouTube account" - }, - "https://www.googleapis.com/auth/youtube.force-ssl": { - "description": "Manage your YouTube account" - }, - "https://www.googleapis.com/auth/youtube.readonly": { - "description": "View your YouTube account" - }, - "https://www.googleapis.com/auth/youtube.upload": { - "description": "Manage your YouTube videos" - }, - "https://www.googleapis.com/auth/youtubepartner": { - "description": "View and manage your assets and associated content on YouTube" - }, - "https://www.googleapis.com/auth/youtubepartner-channel-audit": { - "description": "View private information of your YouTube channel relevant during the audit process with a YouTube partner" - } - } - } - }, - "schemas": { - "AccessPolicy": { - "id": "AccessPolicy", - "type": "object", - "description": "Rights management policy for YouTube resources.", - "properties": { - "allowed": { - "type": "boolean", - "description": "The value of allowed indicates whether the access to the policy is allowed or denied by default." - }, - "exception": { - "type": "array", - "description": "A list of region codes that identify countries where the default policy do not apply.", - "items": { - "type": "string" - } - } - } - }, - "Activity": { - "id": "Activity", - "type": "object", - "description": "An activity resource contains information about an action that a particular channel, or user, has taken on YouTube.The actions reported in activity feeds include rating a video, sharing a video, marking a video as a favorite, commenting on a video, uploading a video, and so forth. Each activity resource identifies the type of action, the channel associated with the action, and the resource(s) associated with the action, such as the video that was rated or uploaded.", - "properties": { - "contentDetails": { - "$ref": "ActivityContentDetails", - "description": "The contentDetails object contains information about the content associated with the activity. For example, if the snippet.type value is videoRated, then the contentDetails object's content identifies the rated video." - }, - "etag": { - "type": "string", - "description": "Etag of this resource." - }, - "id": { - "type": "string", - "description": "The ID that YouTube uses to uniquely identify the activity." - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"youtube#activity\".", - "default": "youtube#activity" - }, - "snippet": { - "$ref": "ActivitySnippet", - "description": "The snippet object contains basic details about the activity, including the activity's type and group ID." - } - } - }, - "ActivityContentDetails": { - "id": "ActivityContentDetails", - "type": "object", - "description": "Details about the content of an activity: the video that was shared, the channel that was subscribed to, etc.", - "properties": { - "bulletin": { - "$ref": "ActivityContentDetailsBulletin", - "description": "The bulletin object contains details about a channel bulletin post. This object is only present if the snippet.type is bulletin." - }, - "channelItem": { - "$ref": "ActivityContentDetailsChannelItem", - "description": "The channelItem object contains details about a resource which was added to a channel. This property is only present if the snippet.type is channelItem." - }, - "comment": { - "$ref": "ActivityContentDetailsComment", - "description": "The comment object contains information about a resource that received a comment. This property is only present if the snippet.type is comment." - }, - "favorite": { - "$ref": "ActivityContentDetailsFavorite", - "description": "The favorite object contains information about a video that was marked as a favorite video. This property is only present if the snippet.type is favorite." - }, - "like": { - "$ref": "ActivityContentDetailsLike", - "description": "The like object contains information about a resource that received a positive (like) rating. This property is only present if the snippet.type is like." - }, - "playlistItem": { - "$ref": "ActivityContentDetailsPlaylistItem", - "description": "The playlistItem object contains information about a new playlist item. This property is only present if the snippet.type is playlistItem." - }, - "promotedItem": { - "$ref": "ActivityContentDetailsPromotedItem", - "description": "The promotedItem object contains details about a resource which is being promoted. This property is only present if the snippet.type is promotedItem." - }, - "recommendation": { - "$ref": "ActivityContentDetailsRecommendation", - "description": "The recommendation object contains information about a recommended resource. This property is only present if the snippet.type is recommendation." - }, - "social": { - "$ref": "ActivityContentDetailsSocial", - "description": "The social object contains details about a social network post. This property is only present if the snippet.type is social." - }, - "subscription": { - "$ref": "ActivityContentDetailsSubscription", - "description": "The subscription object contains information about a channel that a user subscribed to. This property is only present if the snippet.type is subscription." - }, - "upload": { - "$ref": "ActivityContentDetailsUpload", - "description": "The upload object contains information about the uploaded video. This property is only present if the snippet.type is upload." - } - } - }, - "ActivityContentDetailsBulletin": { - "id": "ActivityContentDetailsBulletin", - "type": "object", - "description": "Details about a channel bulletin post.", - "properties": { - "resourceId": { - "$ref": "ResourceId", - "description": "The resourceId object contains information that identifies the resource associated with a bulletin post." - } - } - }, - "ActivityContentDetailsChannelItem": { - "id": "ActivityContentDetailsChannelItem", - "type": "object", - "description": "Details about a resource which was added to a channel.", - "properties": { - "resourceId": { - "$ref": "ResourceId", - "description": "The resourceId object contains information that identifies the resource that was added to the channel." - } - } - }, - "ActivityContentDetailsComment": { - "id": "ActivityContentDetailsComment", - "type": "object", - "description": "Information about a resource that received a comment.", - "properties": { - "resourceId": { - "$ref": "ResourceId", - "description": "The resourceId object contains information that identifies the resource associated with the comment." - } - } - }, - "ActivityContentDetailsFavorite": { - "id": "ActivityContentDetailsFavorite", - "type": "object", - "description": "Information about a video that was marked as a favorite video.", - "properties": { - "resourceId": { - "$ref": "ResourceId", - "description": "The resourceId object contains information that identifies the resource that was marked as a favorite." - } - } - }, - "ActivityContentDetailsLike": { - "id": "ActivityContentDetailsLike", - "type": "object", - "description": "Information about a resource that received a positive (like) rating.", - "properties": { - "resourceId": { - "$ref": "ResourceId", - "description": "The resourceId object contains information that identifies the rated resource." - } - } - }, - "ActivityContentDetailsPlaylistItem": { - "id": "ActivityContentDetailsPlaylistItem", - "type": "object", - "description": "Information about a new playlist item.", - "properties": { - "playlistId": { - "type": "string", - "description": "The value that YouTube uses to uniquely identify the playlist." - }, - "playlistItemId": { - "type": "string", - "description": "ID of the item within the playlist." - }, - "resourceId": { - "$ref": "ResourceId", - "description": "The resourceId object contains information about the resource that was added to the playlist." - } - } - }, - "ActivityContentDetailsPromotedItem": { - "id": "ActivityContentDetailsPromotedItem", - "type": "object", - "description": "Details about a resource which is being promoted.", - "properties": { - "adTag": { - "type": "string", - "description": "The URL the client should fetch to request a promoted item." - }, - "clickTrackingUrl": { - "type": "string", - "description": "The URL the client should ping to indicate that the user clicked through on this promoted item." - }, - "creativeViewUrl": { - "type": "string", - "description": "The URL the client should ping to indicate that the user was shown this promoted item." - }, - "ctaType": { - "type": "string", - "description": "The type of call-to-action, a message to the user indicating action that can be taken.", - "enum": [ - "unspecified", - "visitAdvertiserSite" - ], - "enumDescriptions": [ - "", - "" - ] - }, - "customCtaButtonText": { - "type": "string", - "description": "The custom call-to-action button text. If specified, it will override the default button text for the cta_type." - }, - "descriptionText": { - "type": "string", - "description": "The text description to accompany the promoted item." - }, - "destinationUrl": { - "type": "string", - "description": "The URL the client should direct the user to, if the user chooses to visit the advertiser's website." - }, - "forecastingUrl": { - "type": "array", - "description": "The list of forecasting URLs. The client should ping all of these URLs when a promoted item is not available, to indicate that a promoted item could have been shown.", - "items": { - "type": "string" - } - }, - "impressionUrl": { - "type": "array", - "description": "The list of impression URLs. The client should ping all of these URLs to indicate that the user was shown this promoted item.", - "items": { - "type": "string" - } - }, - "videoId": { - "type": "string", - "description": "The ID that YouTube uses to uniquely identify the promoted video." - } - } - }, - "ActivityContentDetailsRecommendation": { - "id": "ActivityContentDetailsRecommendation", - "type": "object", - "description": "Information that identifies the recommended resource.", - "properties": { - "reason": { - "type": "string", - "description": "The reason that the resource is recommended to the user.", - "enum": [ - "unspecified", - "videoFavorited", - "videoLiked", - "videoWatched" - ], - "enumDescriptions": [ - "", - "", - "", - "" - ] - }, - "resourceId": { - "$ref": "ResourceId", - "description": "The resourceId object contains information that identifies the recommended resource." - }, - "seedResourceId": { - "$ref": "ResourceId", - "description": "The seedResourceId object contains information about the resource that caused the recommendation." - } - } - }, - "ActivityContentDetailsSocial": { - "id": "ActivityContentDetailsSocial", - "type": "object", - "description": "Details about a social network post.", - "properties": { - "author": { - "type": "string", - "description": "The author of the social network post." - }, - "imageUrl": { - "type": "string", - "description": "An image of the post's author." - }, - "referenceUrl": { - "type": "string", - "description": "The URL of the social network post." - }, - "resourceId": { - "$ref": "ResourceId", - "description": "The resourceId object encapsulates information that identifies the resource associated with a social network post." - }, - "type": { - "type": "string", - "description": "The name of the social network.", - "enum": [ - "facebook", - "googlePlus", - "twitter", - "unspecified" - ], - "enumDescriptions": [ - "", - "", - "", - "" - ] - } - } - }, - "ActivityContentDetailsSubscription": { - "id": "ActivityContentDetailsSubscription", - "type": "object", - "description": "Information about a channel that a user subscribed to.", - "properties": { - "resourceId": { - "$ref": "ResourceId", - "description": "The resourceId object contains information that identifies the resource that the user subscribed to." - } - } - }, - "ActivityContentDetailsUpload": { - "id": "ActivityContentDetailsUpload", - "type": "object", - "description": "Information about the uploaded video.", - "properties": { - "videoId": { - "type": "string", - "description": "The ID that YouTube uses to uniquely identify the uploaded video." - } - } - }, - "ActivityListResponse": { - "id": "ActivityListResponse", - "type": "object", - "properties": { - "etag": { - "type": "string", - "description": "Etag of this resource." - }, - "eventId": { - "type": "string", - "description": "Serialized EventId of the request which produced this response." - }, - "items": { - "type": "array", - "description": "A list of activities, or events, that match the request criteria.", - "items": { - "$ref": "Activity" - } - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"youtube#activityListResponse\".", - "default": "youtube#activityListResponse" - }, - "nextPageToken": { - "type": "string", - "description": "The token that can be used as the value of the pageToken parameter to retrieve the next page in the result set." - }, - "pageInfo": { - "$ref": "PageInfo" - }, - "prevPageToken": { - "type": "string", - "description": "The token that can be used as the value of the pageToken parameter to retrieve the previous page in the result set." - }, - "tokenPagination": { - "$ref": "TokenPagination" - }, - "visitorId": { - "type": "string", - "description": "The visitorId identifies the visitor." - } - } - }, - "ActivitySnippet": { - "id": "ActivitySnippet", - "type": "object", - "description": "Basic details about an activity, including title, description, thumbnails, activity type and group.", - "properties": { - "channelId": { - "type": "string", - "description": "The ID that YouTube uses to uniquely identify the channel associated with the activity." - }, - "channelTitle": { - "type": "string", - "description": "Channel title for the channel responsible for this activity" - }, - "description": { - "type": "string", - "description": "The description of the resource primarily associated with the activity.", - "annotations": { - "required": [ - "youtube.activities.insert" - ] - } - }, - "groupId": { - "type": "string", - "description": "The group ID associated with the activity. A group ID identifies user events that are associated with the same user and resource. For example, if a user rates a video and marks the same video as a favorite, the entries for those events would have the same group ID in the user's activity feed. In your user interface, you can avoid repetition by grouping events with the same groupId value." - }, - "publishedAt": { - "type": "string", - "description": "The date and time that the video was uploaded. The value is specified in ISO 8601 (YYYY-MM-DDThh:mm:ss.sZ) format.", - "format": "date-time" - }, - "thumbnails": { - "$ref": "ThumbnailDetails", - "description": "A map of thumbnail images associated with the resource that is primarily associated with the activity. For each object in the map, the key is the name of the thumbnail image, and the value is an object that contains other information about the thumbnail." - }, - "title": { - "type": "string", - "description": "The title of the resource primarily associated with the activity." - }, - "type": { - "type": "string", - "description": "The type of activity that the resource describes.", - "enum": [ - "bulletin", - "channelItem", - "comment", - "favorite", - "like", - "playlistItem", - "promotedItem", - "recommendation", - "social", - "subscription", - "upload" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - } - } - }, - "Caption": { - "id": "Caption", - "type": "object", - "description": "A caption resource represents a YouTube caption track. A caption track is associated with exactly one YouTube video.", - "properties": { - "etag": { - "type": "string", - "description": "Etag of this resource." - }, - "id": { - "type": "string", - "description": "The ID that YouTube uses to uniquely identify the caption track.", - "annotations": { - "required": [ - "youtube.captions.update" - ] - } - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"youtube#caption\".", - "default": "youtube#caption" - }, - "snippet": { - "$ref": "CaptionSnippet", - "description": "The snippet object contains basic details about the caption." - } - } - }, - "CaptionListResponse": { - "id": "CaptionListResponse", - "type": "object", - "properties": { - "etag": { - "type": "string", - "description": "Etag of this resource." - }, - "eventId": { - "type": "string", - "description": "Serialized EventId of the request which produced this response." - }, - "items": { - "type": "array", - "description": "A list of captions that match the request criteria.", - "items": { - "$ref": "Caption" - } - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"youtube#captionListResponse\".", - "default": "youtube#captionListResponse" - }, - "visitorId": { - "type": "string", - "description": "The visitorId identifies the visitor." - } - } - }, - "CaptionSnippet": { - "id": "CaptionSnippet", - "type": "object", - "description": "Basic details about a caption track, such as its language and name.", - "properties": { - "audioTrackType": { - "type": "string", - "description": "The type of audio track associated with the caption track.", - "enum": [ - "commentary", - "descriptive", - "primary", - "unknown" - ], - "enumDescriptions": [ - "", - "", - "", - "" - ] - }, - "failureReason": { - "type": "string", - "description": "The reason that YouTube failed to process the caption track. This property is only present if the state property's value is failed.", - "enum": [ - "processingFailed", - "unknownFormat", - "unsupportedFormat" - ], - "enumDescriptions": [ - "", - "", - "" - ] - }, - "isAutoSynced": { - "type": "boolean", - "description": "Indicates whether YouTube synchronized the caption track to the audio track in the video. The value will be true if a sync was explicitly requested when the caption track was uploaded. For example, when calling the captions.insert or captions.update methods, you can set the sync parameter to true to instruct YouTube to sync the uploaded track to the video. If the value is false, YouTube uses the time codes in the uploaded caption track to determine when to display captions." - }, - "isCC": { - "type": "boolean", - "description": "Indicates whether the track contains closed captions for the deaf and hard of hearing. The default value is false." - }, - "isDraft": { - "type": "boolean", - "description": "Indicates whether the caption track is a draft. If the value is true, then the track is not publicly visible. The default value is false." - }, - "isEasyReader": { - "type": "boolean", - "description": "Indicates whether caption track is formatted for \"easy reader,\" meaning it is at a third-grade level for language learners. The default value is false." - }, - "isLarge": { - "type": "boolean", - "description": "Indicates whether the caption track uses large text for the vision-impaired. The default value is false." - }, - "language": { - "type": "string", - "description": "The language of the caption track. The property value is a BCP-47 language tag.", - "annotations": { - "required": [ - "youtube.captions.insert" - ] - } - }, - "lastUpdated": { - "type": "string", - "description": "The date and time when the caption track was last updated. The value is specified in ISO 8601 (YYYY-MM-DDThh:mm:ss.sZ) format.", - "format": "date-time" - }, - "name": { - "type": "string", - "description": "The name of the caption track. The name is intended to be visible to the user as an option during playback.", - "annotations": { - "required": [ - "youtube.captions.insert" - ] - } - }, - "status": { - "type": "string", - "description": "The caption track's status.", - "enum": [ - "failed", - "serving", - "syncing" - ], - "enumDescriptions": [ - "", - "", - "" - ] - }, - "trackKind": { - "type": "string", - "description": "The caption track's type.", - "enum": [ - "ASR", - "forced", - "standard" - ], - "enumDescriptions": [ - "", - "", - "" - ] - }, - "videoId": { - "type": "string", - "description": "The ID that YouTube uses to uniquely identify the video associated with the caption track.", - "annotations": { - "required": [ - "youtube.captions.insert" - ] - } - } - } - }, - "CdnSettings": { - "id": "CdnSettings", - "type": "object", - "description": "Brief description of the live stream cdn settings.", - "properties": { - "format": { - "type": "string", - "description": "The format of the video stream that you are sending to Youtube.", - "annotations": { - "required": [ - "youtube.liveStreams.insert", - "youtube.liveStreams.update" - ] - } - }, - "frameRate": { - "type": "string", - "description": "The frame rate of the inbound video data.", - "enum": [ - "30fps", - "60fps", - "variable" - ], - "enumDescriptions": [ - "", - "", - "" - ] - }, - "ingestionInfo": { - "$ref": "IngestionInfo", - "description": "The ingestionInfo object contains information that YouTube provides that you need to transmit your RTMP or HTTP stream to YouTube." - }, - "ingestionType": { - "type": "string", - "description": "The method or protocol used to transmit the video stream.", - "enum": [ - "dash", - "rtmp" - ], - "enumDescriptions": [ - "", - "" - ], - "annotations": { - "required": [ - "youtube.liveStreams.insert", - "youtube.liveStreams.update" - ] - } - }, - "resolution": { - "type": "string", - "description": "The resolution of the inbound video data.", - "enum": [ - "1080p", - "1440p", - "2160p", - "240p", - "360p", - "480p", - "720p", - "variable" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "" - ] - } - } - }, - "Channel": { - "id": "Channel", - "type": "object", - "description": "A channel resource contains information about a YouTube channel.", - "properties": { - "auditDetails": { - "$ref": "ChannelAuditDetails", - "description": "The auditionDetails object encapsulates channel data that is relevant for YouTube Partners during the audition process." - }, - "brandingSettings": { - "$ref": "ChannelBrandingSettings", - "description": "The brandingSettings object encapsulates information about the branding of the channel." - }, - "contentDetails": { - "$ref": "ChannelContentDetails", - "description": "The contentDetails object encapsulates information about the channel's content." - }, - "contentOwnerDetails": { - "$ref": "ChannelContentOwnerDetails", - "description": "The contentOwnerDetails object encapsulates channel data that is relevant for YouTube Partners linked with the channel." - }, - "conversionPings": { - "$ref": "ChannelConversionPings", - "description": "The conversionPings object encapsulates information about conversion pings that need to be respected by the channel." - }, - "etag": { - "type": "string", - "description": "Etag of this resource." - }, - "id": { - "type": "string", - "description": "The ID that YouTube uses to uniquely identify the channel." - }, - "invideoPromotion": { - "$ref": "InvideoPromotion", - "description": "The invideoPromotion object encapsulates information about promotion campaign associated with the channel." - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"youtube#channel\".", - "default": "youtube#channel" - }, - "localizations": { - "type": "object", - "description": "Localizations for different languages", - "additionalProperties": { - "$ref": "ChannelLocalization", - "description": "The language tag, using string since map_key require simple types." - } - }, - "snippet": { - "$ref": "ChannelSnippet", - "description": "The snippet object contains basic details about the channel, such as its title, description, and thumbnail images." - }, - "statistics": { - "$ref": "ChannelStatistics", - "description": "The statistics object encapsulates statistics for the channel." - }, - "status": { - "$ref": "ChannelStatus", - "description": "The status object encapsulates information about the privacy status of the channel." - }, - "topicDetails": { - "$ref": "ChannelTopicDetails", - "description": "The topicDetails object encapsulates information about Freebase topics associated with the channel." - } - } - }, - "ChannelAuditDetails": { - "id": "ChannelAuditDetails", - "type": "object", - "description": "The auditDetails object encapsulates channel data that is relevant for YouTube Partners during the audit process.", - "properties": { - "communityGuidelinesGoodStanding": { - "type": "boolean", - "description": "Whether or not the channel respects the community guidelines." - }, - "contentIdClaimsGoodStanding": { - "type": "boolean", - "description": "Whether or not the channel has any unresolved claims." - }, - "copyrightStrikesGoodStanding": { - "type": "boolean", - "description": "Whether or not the channel has any copyright strikes." - }, - "overallGoodStanding": { - "type": "boolean", - "description": "Describes the general state of the channel. This field will always show if there are any issues whatsoever with the channel. Currently this field represents the result of the logical and operation over the community guidelines good standing, the copyright strikes good standing and the content ID claims good standing, but this may change in the future." - } - } - }, - "ChannelBannerResource": { - "id": "ChannelBannerResource", - "type": "object", - "description": "A channel banner returned as the response to a channel_banner.insert call.", - "properties": { - "etag": { - "type": "string", - "description": "Etag of this resource." - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"youtube#channelBannerResource\".", - "default": "youtube#channelBannerResource" - }, - "url": { - "type": "string", - "description": "The URL of this banner image." - } - } - }, - "ChannelBrandingSettings": { - "id": "ChannelBrandingSettings", - "type": "object", - "description": "Branding properties of a YouTube channel.", - "properties": { - "channel": { - "$ref": "ChannelSettings", - "description": "Branding properties for the channel view." - }, - "hints": { - "type": "array", - "description": "Additional experimental branding properties.", - "items": { - "$ref": "PropertyValue" - } - }, - "image": { - "$ref": "ImageSettings", - "description": "Branding properties for branding images." - }, - "watch": { - "$ref": "WatchSettings", - "description": "Branding properties for the watch page." - } - } - }, - "ChannelContentDetails": { - "id": "ChannelContentDetails", - "type": "object", - "description": "Details about the content of a channel.", - "properties": { - "relatedPlaylists": { - "type": "object", - "properties": { - "favorites": { - "type": "string", - "description": "The ID of the playlist that contains the channel\"s favorite videos. Use the playlistItems.insert and playlistItems.delete to add or remove items from that list." - }, - "likes": { - "type": "string", - "description": "The ID of the playlist that contains the channel\"s liked videos. Use the playlistItems.insert and playlistItems.delete to add or remove items from that list." - }, - "uploads": { - "type": "string", - "description": "The ID of the playlist that contains the channel\"s uploaded videos. Use the videos.insert method to upload new videos and the videos.delete method to delete previously uploaded videos." - }, - "watchHistory": { - "type": "string", - "description": "The ID of the playlist that contains the channel\"s watch history. Use the playlistItems.insert and playlistItems.delete to add or remove items from that list." - }, - "watchLater": { - "type": "string", - "description": "The ID of the playlist that contains the channel\"s watch later playlist. Use the playlistItems.insert and playlistItems.delete to add or remove items from that list." + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/youtube": { + "description": "Manage your YouTube account" + }, + "https://www.googleapis.com/auth/youtube.force-ssl": { + "description": "Manage your YouTube account" + }, + "https://www.googleapis.com/auth/youtube.readonly": { + "description": "View your YouTube account" + }, + "https://www.googleapis.com/auth/youtube.upload": { + "description": "Manage your YouTube videos" + }, + "https://www.googleapis.com/auth/youtubepartner": { + "description": "View and manage your assets and associated content on YouTube" + }, + "https://www.googleapis.com/auth/youtubepartner-channel-audit": { + "description": "View private information of your YouTube channel relevant during the audit process with a YouTube partner" + } } - } } - } }, - "ChannelContentOwnerDetails": { - "id": "ChannelContentOwnerDetails", - "type": "object", - "description": "The contentOwnerDetails object encapsulates channel data that is relevant for YouTube Partners linked with the channel.", - "properties": { - "contentOwner": { - "type": "string", - "description": "The ID of the content owner linked to the channel." - }, - "timeLinked": { - "type": "string", - "description": "The date and time of when the channel was linked to the content owner. The value is specified in ISO 8601 (YYYY-MM-DDThh:mm:ss.sZ) format.", - "format": "date-time" - } - } + "basePath": "/youtube/v3/", + "baseUrl": "https://www.googleapis.com/youtube/v3/", + "batchPath": "batch/youtube/v3", + "canonicalName": "YouTube", + "description": "Supports core YouTube features, such as uploading videos, creating and managing playlists, searching for content, and much more.", + "discoveryVersion": "v1", + "documentationLink": "https://developers.google.com/youtube/v3", + "etag": "\"-iA1DTNe4s-I6JZXPt1t1Ypy8IU/-ZA6uS3KXkDeiPcCXgXN_f_GBAw\"", + "icons": { + "x16": "https://www.google.com/images/icons/product/youtube-16.png", + "x32": "https://www.google.com/images/icons/product/youtube-32.png" }, - "ChannelConversionPing": { - "id": "ChannelConversionPing", - "type": "object", - "description": "Pings that the app shall fire (authenticated by biscotti cookie). Each ping has a context, in which the app must fire the ping, and a url identifying the ping.", - "properties": { - "context": { - "type": "string", - "description": "Defines the context of the ping.", - "enum": [ - "cview", - "subscribe", - "unsubscribe" - ], - "enumDescriptions": [ - "", - "", - "" - ] - }, - "conversionUrl": { - "type": "string", - "description": "The url (without the schema) that the player shall send the ping to. It's at caller's descretion to decide which schema to use (http vs https) Example of a returned url: //googleads.g.doubleclick.net/pagead/ viewthroughconversion/962985656/?data=path%3DtHe_path%3Btype%3D cview%3Butuid%3DGISQtTNGYqaYl4sKxoVvKA&labe=default The caller must append biscotti authentication (ms param in case of mobile, for example) to this ping." - } - } - }, - "ChannelConversionPings": { - "id": "ChannelConversionPings", - "type": "object", - "description": "The conversionPings object encapsulates information about conversion pings that need to be respected by the channel.", - "properties": { - "pings": { - "type": "array", - "description": "Pings that the app shall fire (authenticated by biscotti cookie). Each ping has a context, in which the app must fire the ping, and a url identifying the ping.", - "items": { - "$ref": "ChannelConversionPing" - } - } - } - }, - "ChannelListResponse": { - "id": "ChannelListResponse", - "type": "object", - "properties": { - "etag": { - "type": "string", - "description": "Etag of this resource." - }, - "eventId": { - "type": "string", - "description": "Serialized EventId of the request which produced this response." - }, - "items": { - "type": "array", - "description": "A list of channels that match the request criteria.", - "items": { - "$ref": "Channel" - } - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"youtube#channelListResponse\".", - "default": "youtube#channelListResponse" - }, - "nextPageToken": { - "type": "string", - "description": "The token that can be used as the value of the pageToken parameter to retrieve the next page in the result set." - }, - "pageInfo": { - "$ref": "PageInfo" - }, - "prevPageToken": { - "type": "string", - "description": "The token that can be used as the value of the pageToken parameter to retrieve the previous page in the result set." - }, - "tokenPagination": { - "$ref": "TokenPagination" - }, - "visitorId": { - "type": "string", - "description": "The visitorId identifies the visitor." - } - } - }, - "ChannelLocalization": { - "id": "ChannelLocalization", - "type": "object", - "description": "Channel localization setting", - "properties": { - "description": { - "type": "string", - "description": "The localized strings for channel's description." - }, - "title": { - "type": "string", - "description": "The localized strings for channel's title." - } - } - }, - "ChannelProfileDetails": { - "id": "ChannelProfileDetails", - "type": "object", - "properties": { - "channelId": { - "type": "string", - "description": "The YouTube channel ID." - }, - "channelUrl": { - "type": "string", - "description": "The channel's URL." - }, - "displayName": { - "type": "string", - "description": "The channel's display name." - }, - "profileImageUrl": { - "type": "string", - "description": "The channels's avatar URL." - } - } - }, - "ChannelSection": { - "id": "ChannelSection", - "type": "object", - "properties": { - "contentDetails": { - "$ref": "ChannelSectionContentDetails", - "description": "The contentDetails object contains details about the channel section content, such as a list of playlists or channels featured in the section." - }, - "etag": { - "type": "string", - "description": "Etag of this resource." - }, - "id": { - "type": "string", - "description": "The ID that YouTube uses to uniquely identify the channel section." - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"youtube#channelSection\".", - "default": "youtube#channelSection" - }, - "localizations": { - "type": "object", - "description": "Localizations for different languages", - "additionalProperties": { - "$ref": "ChannelSectionLocalization", - "description": "The language tag, using string since map_key require simple types." - } - }, - "snippet": { - "$ref": "ChannelSectionSnippet", - "description": "The snippet object contains basic details about the channel section, such as its type, style and title." - }, - "targeting": { - "$ref": "ChannelSectionTargeting", - "description": "The targeting object contains basic targeting settings about the channel section." - } - } - }, - "ChannelSectionContentDetails": { - "id": "ChannelSectionContentDetails", - "type": "object", - "description": "Details about a channelsection, including playlists and channels.", - "properties": { - "channels": { - "type": "array", - "description": "The channel ids for type multiple_channels.", - "items": { + "id": "youtube:v3", + "kind": "discovery#restDescription", + "name": "youtube", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "alt": { + "default": "json", + "description": "Data format for the response.", + "enum": [ + "json" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json" + ], + "location": "query", "type": "string" - } + }, + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "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.", + "location": "query", + "type": "string" + }, + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", + "location": "query", + "type": "string" + }, + "userIp": { + "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", + "location": "query", + "type": "string" + } + }, + "protocol": "rest", + "resources": { + "activities": { + "methods": { + "insert": { + "description": "Posts a bulletin for a specific channel. (The user submitting the request must be authorized to act on the channel's behalf.)\n\nNote: Even though an activity resource can contain information about actions like a user rating a video or marking a video as a favorite, you need to use other API methods to generate those activity resources. For example, you would use the API's videos.rate() method to rate a video and the playlistItems.insert() method to mark a video as a favorite.", + "httpMethod": "POST", + "id": "youtube.activities.insert", + "parameterOrder": [ + "part" + ], + "parameters": { + "part": { + "description": "The part parameter serves two purposes in this operation. It identifies the properties that the write operation will set as well as the properties that the API response will include.", + "location": "query", + "required": true, + "type": "string" + } + }, + "path": "activities", + "request": { + "$ref": "Activity" + }, + "response": { + "$ref": "Activity" + }, + "scopes": [ + "https://www.googleapis.com/auth/youtube", + "https://www.googleapis.com/auth/youtube.force-ssl" + ] + }, + "list": { + "description": "Returns a list of channel activity events that match the request criteria. For example, you can retrieve events associated with a particular channel, events associated with the user's subscriptions and Google+ friends, or the YouTube home page feed, which is customized for each user.", + "httpMethod": "GET", + "id": "youtube.activities.list", + "parameterOrder": [ + "part" + ], + "parameters": { + "channelId": { + "description": "The channelId parameter specifies a unique YouTube channel ID. The API will then return a list of that channel's activities.", + "location": "query", + "type": "string" + }, + "home": { + "description": "Set this parameter's value to true to retrieve the activity feed that displays on the YouTube home page for the currently authenticated user.", + "location": "query", + "type": "boolean" + }, + "maxResults": { + "default": "5", + "description": "The maxResults parameter specifies the maximum number of items that should be returned in the result set.", + "format": "uint32", + "location": "query", + "maximum": "50", + "minimum": "0", + "type": "integer" + }, + "mine": { + "description": "Set this parameter's value to true to retrieve a feed of the authenticated user's activities.", + "location": "query", + "type": "boolean" + }, + "pageToken": { + "description": "The pageToken parameter identifies a specific page in the result set that should be returned. In an API response, the nextPageToken and prevPageToken properties identify other pages that could be retrieved.", + "location": "query", + "type": "string" + }, + "part": { + "description": "The part parameter specifies a comma-separated list of one or more activity resource properties that the API response will include.\n\nIf the parameter identifies a property that contains child properties, the child properties will be included in the response. For example, in an activity resource, the snippet property contains other properties that identify the type of activity, a display title for the activity, and so forth. If you set part=snippet, the API response will also contain all of those nested properties.", + "location": "query", + "required": true, + "type": "string" + }, + "publishedAfter": { + "description": "The publishedAfter parameter specifies the earliest date and time that an activity could have occurred for that activity to be included in the API response. If the parameter value specifies a day, but not a time, then any activities that occurred that day will be included in the result set. The value is specified in ISO 8601 (YYYY-MM-DDThh:mm:ss.sZ) format.", + "format": "date-time", + "location": "query", + "type": "string" + }, + "publishedBefore": { + "description": "The publishedBefore parameter specifies the date and time before which an activity must have occurred for that activity to be included in the API response. If the parameter value specifies a day, but not a time, then any activities that occurred that day will be excluded from the result set. The value is specified in ISO 8601 (YYYY-MM-DDThh:mm:ss.sZ) format.", + "format": "date-time", + "location": "query", + "type": "string" + }, + "regionCode": { + "description": "The regionCode parameter instructs the API to return results for the specified country. The parameter value is an ISO 3166-1 alpha-2 country code. YouTube uses this value when the authorized user's previous activity on YouTube does not provide enough information to generate the activity feed.", + "location": "query", + "type": "string" + } + }, + "path": "activities", + "response": { + "$ref": "ActivityListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/youtube", + "https://www.googleapis.com/auth/youtube.force-ssl", + "https://www.googleapis.com/auth/youtube.readonly" + ] + } + } + }, + "captions": { + "methods": { + "delete": { + "description": "Deletes a specified caption track.", + "httpMethod": "DELETE", + "id": "youtube.captions.delete", + "parameterOrder": [ + "id" + ], + "parameters": { + "id": { + "description": "The id parameter identifies the caption track that is being deleted. The value is a caption track ID as identified by the id property in a caption resource.", + "location": "query", + "required": true, + "type": "string" + }, + "onBehalfOf": { + "description": "ID of the Google+ Page for the channel that the request is be on behalf of", + "location": "query", + "type": "string" + }, + "onBehalfOfContentOwner": { + "description": "Note: This parameter is intended exclusively for YouTube content partners.\n\nThe onBehalfOfContentOwner parameter indicates that the request's authorization credentials identify a YouTube CMS user who is acting on behalf of the content owner specified in the parameter value. This parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to provide authentication credentials for each individual channel. The actual CMS account that the user authenticates with must be linked to the specified YouTube content owner.", + "location": "query", + "type": "string" + } + }, + "path": "captions", + "scopes": [ + "https://www.googleapis.com/auth/youtube.force-ssl", + "https://www.googleapis.com/auth/youtubepartner" + ] + }, + "download": { + "description": "Downloads a caption track. The caption track is returned in its original format unless the request specifies a value for the tfmt parameter and in its original language unless the request specifies a value for the tlang parameter.", + "httpMethod": "GET", + "id": "youtube.captions.download", + "parameterOrder": [ + "id" + ], + "parameters": { + "id": { + "description": "The id parameter identifies the caption track that is being retrieved. The value is a caption track ID as identified by the id property in a caption resource.", + "location": "path", + "required": true, + "type": "string" + }, + "onBehalfOf": { + "description": "ID of the Google+ Page for the channel that the request is be on behalf of", + "location": "query", + "type": "string" + }, + "onBehalfOfContentOwner": { + "description": "Note: This parameter is intended exclusively for YouTube content partners.\n\nThe onBehalfOfContentOwner parameter indicates that the request's authorization credentials identify a YouTube CMS user who is acting on behalf of the content owner specified in the parameter value. This parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to provide authentication credentials for each individual channel. The actual CMS account that the user authenticates with must be linked to the specified YouTube content owner.", + "location": "query", + "type": "string" + }, + "tfmt": { + "description": "The tfmt parameter specifies that the caption track should be returned in a specific format. If the parameter is not included in the request, the track is returned in its original format.", + "enum": [ + "sbv", + "scc", + "srt", + "ttml", + "vtt" + ], + "enumDescriptions": [ + "SubViewer subtitle.", + "Scenarist Closed Caption format.", + "SubRip subtitle.", + "Timed Text Markup Language caption.", + "Web Video Text Tracks caption." + ], + "location": "query", + "type": "string" + }, + "tlang": { + "description": "The tlang parameter specifies that the API response should return a translation of the specified caption track. The parameter value is an ISO 639-1 two-letter language code that identifies the desired caption language. The translation is generated by using machine translation, such as Google Translate.", + "location": "query", + "type": "string" + } + }, + "path": "captions/{id}", + "scopes": [ + "https://www.googleapis.com/auth/youtube.force-ssl", + "https://www.googleapis.com/auth/youtubepartner" + ], + "supportsMediaDownload": true + }, + "insert": { + "description": "Uploads a caption track.", + "httpMethod": "POST", + "id": "youtube.captions.insert", + "mediaUpload": { + "accept": [ + "*/*", + "application/octet-stream", + "text/xml" + ], + "maxSize": "100MB", + "protocols": { + "resumable": { + "multipart": true, + "path": "/resumable/upload/youtube/v3/captions" + }, + "simple": { + "multipart": true, + "path": "/upload/youtube/v3/captions" + } + } + }, + "parameterOrder": [ + "part" + ], + "parameters": { + "onBehalfOf": { + "description": "ID of the Google+ Page for the channel that the request is be on behalf of", + "location": "query", + "type": "string" + }, + "onBehalfOfContentOwner": { + "description": "Note: This parameter is intended exclusively for YouTube content partners.\n\nThe onBehalfOfContentOwner parameter indicates that the request's authorization credentials identify a YouTube CMS user who is acting on behalf of the content owner specified in the parameter value. This parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to provide authentication credentials for each individual channel. The actual CMS account that the user authenticates with must be linked to the specified YouTube content owner.", + "location": "query", + "type": "string" + }, + "part": { + "description": "The part parameter specifies the caption resource parts that the API response will include. Set the parameter value to snippet.", + "location": "query", + "required": true, + "type": "string" + }, + "sync": { + "description": "The sync parameter indicates whether YouTube should automatically synchronize the caption file with the audio track of the video. If you set the value to true, YouTube will disregard any time codes that are in the uploaded caption file and generate new time codes for the captions.\n\nYou should set the sync parameter to true if you are uploading a transcript, which has no time codes, or if you suspect the time codes in your file are incorrect and want YouTube to try to fix them.", + "location": "query", + "type": "boolean" + } + }, + "path": "captions", + "request": { + "$ref": "Caption" + }, + "response": { + "$ref": "Caption" + }, + "scopes": [ + "https://www.googleapis.com/auth/youtube.force-ssl", + "https://www.googleapis.com/auth/youtubepartner" + ], + "supportsMediaUpload": true + }, + "list": { + "description": "Returns a list of caption tracks that are associated with a specified video. Note that the API response does not contain the actual captions and that the captions.download method provides the ability to retrieve a caption track.", + "httpMethod": "GET", + "id": "youtube.captions.list", + "parameterOrder": [ + "part", + "videoId" + ], + "parameters": { + "id": { + "description": "The id parameter specifies a comma-separated list of IDs that identify the caption resources that should be retrieved. Each ID must identify a caption track associated with the specified video.", + "location": "query", + "type": "string" + }, + "onBehalfOf": { + "description": "ID of the Google+ Page for the channel that the request is on behalf of.", + "location": "query", + "type": "string" + }, + "onBehalfOfContentOwner": { + "description": "Note: This parameter is intended exclusively for YouTube content partners.\n\nThe onBehalfOfContentOwner parameter indicates that the request's authorization credentials identify a YouTube CMS user who is acting on behalf of the content owner specified in the parameter value. This parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to provide authentication credentials for each individual channel. The actual CMS account that the user authenticates with must be linked to the specified YouTube content owner.", + "location": "query", + "type": "string" + }, + "part": { + "description": "The part parameter specifies a comma-separated list of one or more caption resource parts that the API response will include. The part names that you can include in the parameter value are id and snippet.", + "location": "query", + "required": true, + "type": "string" + }, + "videoId": { + "description": "The videoId parameter specifies the YouTube video ID of the video for which the API should return caption tracks.", + "location": "query", + "required": true, + "type": "string" + } + }, + "path": "captions", + "response": { + "$ref": "CaptionListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/youtube.force-ssl", + "https://www.googleapis.com/auth/youtubepartner" + ] + }, + "update": { + "description": "Updates a caption track. When updating a caption track, you can change the track's draft status, upload a new caption file for the track, or both.", + "httpMethod": "PUT", + "id": "youtube.captions.update", + "mediaUpload": { + "accept": [ + "*/*", + "application/octet-stream", + "text/xml" + ], + "maxSize": "100MB", + "protocols": { + "resumable": { + "multipart": true, + "path": "/resumable/upload/youtube/v3/captions" + }, + "simple": { + "multipart": true, + "path": "/upload/youtube/v3/captions" + } + } + }, + "parameterOrder": [ + "part" + ], + "parameters": { + "onBehalfOf": { + "description": "ID of the Google+ Page for the channel that the request is be on behalf of", + "location": "query", + "type": "string" + }, + "onBehalfOfContentOwner": { + "description": "Note: This parameter is intended exclusively for YouTube content partners.\n\nThe onBehalfOfContentOwner parameter indicates that the request's authorization credentials identify a YouTube CMS user who is acting on behalf of the content owner specified in the parameter value. This parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to provide authentication credentials for each individual channel. The actual CMS account that the user authenticates with must be linked to the specified YouTube content owner.", + "location": "query", + "type": "string" + }, + "part": { + "description": "The part parameter serves two purposes in this operation. It identifies the properties that the write operation will set as well as the properties that the API response will include. Set the property value to snippet if you are updating the track's draft status. Otherwise, set the property value to id.", + "location": "query", + "required": true, + "type": "string" + }, + "sync": { + "description": "Note: The API server only processes the parameter value if the request contains an updated caption file.\n\nThe sync parameter indicates whether YouTube should automatically synchronize the caption file with the audio track of the video. If you set the value to true, YouTube will automatically synchronize the caption track with the audio track.", + "location": "query", + "type": "boolean" + } + }, + "path": "captions", + "request": { + "$ref": "Caption" + }, + "response": { + "$ref": "Caption" + }, + "scopes": [ + "https://www.googleapis.com/auth/youtube.force-ssl", + "https://www.googleapis.com/auth/youtubepartner" + ], + "supportsMediaUpload": true + } + } + }, + "channelBanners": { + "methods": { + "insert": { + "description": "Uploads a channel banner image to YouTube. This method represents the first two steps in a three-step process to update the banner image for a channel:\n\n- Call the channelBanners.insert method to upload the binary image data to YouTube. The image must have a 16:9 aspect ratio and be at least 2120x1192 pixels.\n- Extract the url property's value from the response that the API returns for step 1.\n- Call the channels.update method to update the channel's branding settings. Set the brandingSettings.image.bannerExternalUrl property's value to the URL obtained in step 2.", + "httpMethod": "POST", + "id": "youtube.channelBanners.insert", + "mediaUpload": { + "accept": [ + "application/octet-stream", + "image/jpeg", + "image/png" + ], + "maxSize": "6MB", + "protocols": { + "resumable": { + "multipart": true, + "path": "/resumable/upload/youtube/v3/channelBanners/insert" + }, + "simple": { + "multipart": true, + "path": "/upload/youtube/v3/channelBanners/insert" + } + } + }, + "parameters": { + "channelId": { + "description": "The channelId parameter identifies the YouTube channel to which the banner is uploaded. The channelId parameter was introduced as a required parameter in May 2017. As this was a backward-incompatible change, channelBanners.insert requests that do not specify this parameter will not return an error until six months have passed from the time that the parameter was introduced. Please see the API Terms of Service for the official policy regarding backward incompatible changes and the API revision history for the exact date that the parameter was introduced.", + "location": "query", + "type": "string" + }, + "onBehalfOfContentOwner": { + "description": "Note: This parameter is intended exclusively for YouTube content partners.\n\nThe onBehalfOfContentOwner parameter indicates that the request's authorization credentials identify a YouTube CMS user who is acting on behalf of the content owner specified in the parameter value. This parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to provide authentication credentials for each individual channel. The CMS account that the user authenticates with must be linked to the specified YouTube content owner.", + "location": "query", + "type": "string" + } + }, + "path": "channelBanners/insert", + "request": { + "$ref": "ChannelBannerResource" + }, + "response": { + "$ref": "ChannelBannerResource" + }, + "scopes": [ + "https://www.googleapis.com/auth/youtube", + "https://www.googleapis.com/auth/youtube.force-ssl", + "https://www.googleapis.com/auth/youtube.upload" + ], + "supportsMediaUpload": true + } + } + }, + "channelSections": { + "methods": { + "delete": { + "description": "Deletes a channelSection.", + "httpMethod": "DELETE", + "id": "youtube.channelSections.delete", + "parameterOrder": [ + "id" + ], + "parameters": { + "id": { + "description": "The id parameter specifies the YouTube channelSection ID for the resource that is being deleted. In a channelSection resource, the id property specifies the YouTube channelSection ID.", + "location": "query", + "required": true, + "type": "string" + }, + "onBehalfOfContentOwner": { + "description": "Note: This parameter is intended exclusively for YouTube content partners.\n\nThe onBehalfOfContentOwner parameter indicates that the request's authorization credentials identify a YouTube CMS user who is acting on behalf of the content owner specified in the parameter value. This parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to provide authentication credentials for each individual channel. The CMS account that the user authenticates with must be linked to the specified YouTube content owner.", + "location": "query", + "type": "string" + } + }, + "path": "channelSections", + "scopes": [ + "https://www.googleapis.com/auth/youtube", + "https://www.googleapis.com/auth/youtube.force-ssl", + "https://www.googleapis.com/auth/youtubepartner" + ] + }, + "insert": { + "description": "Adds a channelSection for the authenticated user's channel.", + "httpMethod": "POST", + "id": "youtube.channelSections.insert", + "parameterOrder": [ + "part" + ], + "parameters": { + "onBehalfOfContentOwner": { + "description": "Note: This parameter is intended exclusively for YouTube content partners.\n\nThe onBehalfOfContentOwner parameter indicates that the request's authorization credentials identify a YouTube CMS user who is acting on behalf of the content owner specified in the parameter value. This parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to provide authentication credentials for each individual channel. The CMS account that the user authenticates with must be linked to the specified YouTube content owner.", + "location": "query", + "type": "string" + }, + "onBehalfOfContentOwnerChannel": { + "description": "This parameter can only be used in a properly authorized request. Note: This parameter is intended exclusively for YouTube content partners.\n\nThe onBehalfOfContentOwnerChannel parameter specifies the YouTube channel ID of the channel to which a video is being added. This parameter is required when a request specifies a value for the onBehalfOfContentOwner parameter, and it can only be used in conjunction with that parameter. In addition, the request must be authorized using a CMS account that is linked to the content owner that the onBehalfOfContentOwner parameter specifies. Finally, the channel that the onBehalfOfContentOwnerChannel parameter value specifies must be linked to the content owner that the onBehalfOfContentOwner parameter specifies.\n\nThis parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and perform actions on behalf of the channel specified in the parameter value, without having to provide authentication credentials for each separate channel.", + "location": "query", + "type": "string" + }, + "part": { + "description": "The part parameter serves two purposes in this operation. It identifies the properties that the write operation will set as well as the properties that the API response will include.\n\nThe part names that you can include in the parameter value are snippet and contentDetails.", + "location": "query", + "required": true, + "type": "string" + } + }, + "path": "channelSections", + "request": { + "$ref": "ChannelSection" + }, + "response": { + "$ref": "ChannelSection" + }, + "scopes": [ + "https://www.googleapis.com/auth/youtube", + "https://www.googleapis.com/auth/youtube.force-ssl", + "https://www.googleapis.com/auth/youtubepartner" + ] + }, + "list": { + "description": "Returns channelSection resources that match the API request criteria.", + "httpMethod": "GET", + "id": "youtube.channelSections.list", + "parameterOrder": [ + "part" + ], + "parameters": { + "channelId": { + "description": "The channelId parameter specifies a YouTube channel ID. The API will only return that channel's channelSections.", + "location": "query", + "type": "string" + }, + "hl": { + "description": "The hl parameter indicates that the snippet.localized property values in the returned channelSection resources should be in the specified language if localized values for that language are available. For example, if the API request specifies hl=de, the snippet.localized properties in the API response will contain German titles if German titles are available. Channel owners can provide localized channel section titles using either the channelSections.insert or channelSections.update method.", + "location": "query", + "type": "string" + }, + "id": { + "description": "The id parameter specifies a comma-separated list of the YouTube channelSection ID(s) for the resource(s) that are being retrieved. In a channelSection resource, the id property specifies the YouTube channelSection ID.", + "location": "query", + "type": "string" + }, + "mine": { + "description": "Set this parameter's value to true to retrieve a feed of the authenticated user's channelSections.", + "location": "query", + "type": "boolean" + }, + "onBehalfOfContentOwner": { + "description": "Note: This parameter is intended exclusively for YouTube content partners.\n\nThe onBehalfOfContentOwner parameter indicates that the request's authorization credentials identify a YouTube CMS user who is acting on behalf of the content owner specified in the parameter value. This parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to provide authentication credentials for each individual channel. The CMS account that the user authenticates with must be linked to the specified YouTube content owner.", + "location": "query", + "type": "string" + }, + "part": { + "description": "The part parameter specifies a comma-separated list of one or more channelSection resource properties that the API response will include. The part names that you can include in the parameter value are id, snippet, and contentDetails.\n\nIf the parameter identifies a property that contains child properties, the child properties will be included in the response. For example, in a channelSection resource, the snippet property contains other properties, such as a display title for the channelSection. If you set part=snippet, the API response will also contain all of those nested properties.", + "location": "query", + "required": true, + "type": "string" + } + }, + "path": "channelSections", + "response": { + "$ref": "ChannelSectionListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/youtube", + "https://www.googleapis.com/auth/youtube.force-ssl", + "https://www.googleapis.com/auth/youtube.readonly", + "https://www.googleapis.com/auth/youtubepartner" + ] + }, + "update": { + "description": "Update a channelSection.", + "httpMethod": "PUT", + "id": "youtube.channelSections.update", + "parameterOrder": [ + "part" + ], + "parameters": { + "onBehalfOfContentOwner": { + "description": "Note: This parameter is intended exclusively for YouTube content partners.\n\nThe onBehalfOfContentOwner parameter indicates that the request's authorization credentials identify a YouTube CMS user who is acting on behalf of the content owner specified in the parameter value. This parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to provide authentication credentials for each individual channel. The CMS account that the user authenticates with must be linked to the specified YouTube content owner.", + "location": "query", + "type": "string" + }, + "part": { + "description": "The part parameter serves two purposes in this operation. It identifies the properties that the write operation will set as well as the properties that the API response will include.\n\nThe part names that you can include in the parameter value are snippet and contentDetails.", + "location": "query", + "required": true, + "type": "string" + } + }, + "path": "channelSections", + "request": { + "$ref": "ChannelSection" + }, + "response": { + "$ref": "ChannelSection" + }, + "scopes": [ + "https://www.googleapis.com/auth/youtube", + "https://www.googleapis.com/auth/youtube.force-ssl", + "https://www.googleapis.com/auth/youtubepartner" + ] + } + } + }, + "channels": { + "methods": { + "list": { + "description": "Returns a collection of zero or more channel resources that match the request criteria.", + "httpMethod": "GET", + "id": "youtube.channels.list", + "parameterOrder": [ + "part" + ], + "parameters": { + "categoryId": { + "description": "The categoryId parameter specifies a YouTube guide category, thereby requesting YouTube channels associated with that category.", + "location": "query", + "type": "string" + }, + "forUsername": { + "description": "The forUsername parameter specifies a YouTube username, thereby requesting the channel associated with that username.", + "location": "query", + "type": "string" + }, + "hl": { + "description": "The hl parameter should be used for filter out the properties that are not in the given language. Used for the brandingSettings part.", + "location": "query", + "type": "string" + }, + "id": { + "description": "The id parameter specifies a comma-separated list of the YouTube channel ID(s) for the resource(s) that are being retrieved. In a channel resource, the id property specifies the channel's YouTube channel ID.", + "location": "query", + "type": "string" + }, + "managedByMe": { + "description": "Note: This parameter is intended exclusively for YouTube content partners.\n\nSet this parameter's value to true to instruct the API to only return channels managed by the content owner that the onBehalfOfContentOwner parameter specifies. The user must be authenticated as a CMS account linked to the specified content owner and onBehalfOfContentOwner must be provided.", + "location": "query", + "type": "boolean" + }, + "maxResults": { + "default": "5", + "description": "The maxResults parameter specifies the maximum number of items that should be returned in the result set.", + "format": "uint32", + "location": "query", + "maximum": "50", + "minimum": "0", + "type": "integer" + }, + "mine": { + "description": "Set this parameter's value to true to instruct the API to only return channels owned by the authenticated user.", + "location": "query", + "type": "boolean" + }, + "mySubscribers": { + "description": "Use the subscriptions.list method and its mySubscribers parameter to retrieve a list of subscribers to the authenticated user's channel.", + "location": "query", + "type": "boolean" + }, + "onBehalfOfContentOwner": { + "description": "Note: This parameter is intended exclusively for YouTube content partners.\n\nThe onBehalfOfContentOwner parameter indicates that the request's authorization credentials identify a YouTube CMS user who is acting on behalf of the content owner specified in the parameter value. This parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to provide authentication credentials for each individual channel. The CMS account that the user authenticates with must be linked to the specified YouTube content owner.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "The pageToken parameter identifies a specific page in the result set that should be returned. In an API response, the nextPageToken and prevPageToken properties identify other pages that could be retrieved.", + "location": "query", + "type": "string" + }, + "part": { + "description": "The part parameter specifies a comma-separated list of one or more channel resource properties that the API response will include.\n\nIf the parameter identifies a property that contains child properties, the child properties will be included in the response. For example, in a channel resource, the contentDetails property contains other properties, such as the uploads properties. As such, if you set part=contentDetails, the API response will also contain all of those nested properties.", + "location": "query", + "required": true, + "type": "string" + } + }, + "path": "channels", + "response": { + "$ref": "ChannelListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/youtube", + "https://www.googleapis.com/auth/youtube.force-ssl", + "https://www.googleapis.com/auth/youtube.readonly", + "https://www.googleapis.com/auth/youtubepartner", + "https://www.googleapis.com/auth/youtubepartner-channel-audit" + ] + }, + "update": { + "description": "Updates a channel's metadata. Note that this method currently only supports updates to the channel resource's brandingSettings and invideoPromotion objects and their child properties.", + "httpMethod": "PUT", + "id": "youtube.channels.update", + "parameterOrder": [ + "part" + ], + "parameters": { + "onBehalfOfContentOwner": { + "description": "The onBehalfOfContentOwner parameter indicates that the authenticated user is acting on behalf of the content owner specified in the parameter value. This parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to provide authentication credentials for each individual channel. The actual CMS account that the user authenticates with needs to be linked to the specified YouTube content owner.", + "location": "query", + "type": "string" + }, + "part": { + "description": "The part parameter serves two purposes in this operation. It identifies the properties that the write operation will set as well as the properties that the API response will include.\n\nThe API currently only allows the parameter value to be set to either brandingSettings or invideoPromotion. (You cannot update both of those parts with a single request.)\n\nNote that this method overrides the existing values for all of the mutable properties that are contained in any parts that the parameter value specifies.", + "location": "query", + "required": true, + "type": "string" + } + }, + "path": "channels", + "request": { + "$ref": "Channel" + }, + "response": { + "$ref": "Channel" + }, + "scopes": [ + "https://www.googleapis.com/auth/youtube", + "https://www.googleapis.com/auth/youtube.force-ssl", + "https://www.googleapis.com/auth/youtubepartner" + ] + } + } + }, + "commentThreads": { + "methods": { + "insert": { + "description": "Creates a new top-level comment. To add a reply to an existing comment, use the comments.insert method instead.", + "httpMethod": "POST", + "id": "youtube.commentThreads.insert", + "parameterOrder": [ + "part" + ], + "parameters": { + "part": { + "description": "The part parameter identifies the properties that the API response will include. Set the parameter value to snippet. The snippet part has a quota cost of 2 units.", + "location": "query", + "required": true, + "type": "string" + } + }, + "path": "commentThreads", + "request": { + "$ref": "CommentThread" + }, + "response": { + "$ref": "CommentThread" + }, + "scopes": [ + "https://www.googleapis.com/auth/youtube.force-ssl" + ] + }, + "list": { + "description": "Returns a list of comment threads that match the API request parameters.", + "httpMethod": "GET", + "id": "youtube.commentThreads.list", + "parameterOrder": [ + "part" + ], + "parameters": { + "allThreadsRelatedToChannelId": { + "description": "The allThreadsRelatedToChannelId parameter instructs the API to return all comment threads associated with the specified channel. The response can include comments about the channel or about the channel's videos.", + "location": "query", + "type": "string" + }, + "channelId": { + "description": "The channelId parameter instructs the API to return comment threads containing comments about the specified channel. (The response will not include comments left on videos that the channel uploaded.)", + "location": "query", + "type": "string" + }, + "id": { + "description": "The id parameter specifies a comma-separated list of comment thread IDs for the resources that should be retrieved.", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "20", + "description": "The maxResults parameter specifies the maximum number of items that should be returned in the result set.\n\nNote: This parameter is not supported for use in conjunction with the id parameter.", + "format": "uint32", + "location": "query", + "maximum": "100", + "minimum": "1", + "type": "integer" + }, + "moderationStatus": { + "default": "MODERATION_STATUS_PUBLISHED", + "description": "Set this parameter to limit the returned comment threads to a particular moderation state.\n\nNote: This parameter is not supported for use in conjunction with the id parameter.", + "enum": [ + "heldForReview", + "likelySpam", + "published" + ], + "enumDescriptions": [ + "Retrieve comment threads that are awaiting review by a moderator. A comment thread can be included in the response if the top-level comment or at least one of the replies to that comment are awaiting review.", + "Retrieve comment threads classified as likely to be spam. A comment thread can be included in the response if the top-level comment or at least one of the replies to that comment is considered likely to be spam.", + "Retrieve threads of published comments. This is the default value. A comment thread can be included in the response if its top-level comment has been published." + ], + "location": "query", + "type": "string" + }, + "order": { + "default": "true", + "description": "The order parameter specifies the order in which the API response should list comment threads. Valid values are: \n- time - Comment threads are ordered by time. This is the default behavior.\n- relevance - Comment threads are ordered by relevance.Note: This parameter is not supported for use in conjunction with the id parameter.", + "enum": [ + "relevance", + "time" + ], + "enumDescriptions": [ + "Order by relevance.", + "Order by time." + ], + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "The pageToken parameter identifies a specific page in the result set that should be returned. In an API response, the nextPageToken property identifies the next page of the result that can be retrieved.\n\nNote: This parameter is not supported for use in conjunction with the id parameter.", + "location": "query", + "type": "string" + }, + "part": { + "description": "The part parameter specifies a comma-separated list of one or more commentThread resource properties that the API response will include.", + "location": "query", + "required": true, + "type": "string" + }, + "searchTerms": { + "description": "The searchTerms parameter instructs the API to limit the API response to only contain comments that contain the specified search terms.\n\nNote: This parameter is not supported for use in conjunction with the id parameter.", + "location": "query", + "type": "string" + }, + "textFormat": { + "default": "FORMAT_HTML", + "description": "Set this parameter's value to html or plainText to instruct the API to return the comments left by users in html formatted or in plain text.", + "enum": [ + "html", + "plainText" + ], + "enumDescriptions": [ + "Returns the comments in HTML format. This is the default value.", + "Returns the comments in plain text format." + ], + "location": "query", + "type": "string" + }, + "videoId": { + "description": "The videoId parameter instructs the API to return comment threads associated with the specified video ID.", + "location": "query", + "type": "string" + } + }, + "path": "commentThreads", + "response": { + "$ref": "CommentThreadListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/youtube.force-ssl" + ] + }, + "update": { + "description": "Modifies the top-level comment in a comment thread.", + "httpMethod": "PUT", + "id": "youtube.commentThreads.update", + "parameterOrder": [ + "part" + ], + "parameters": { + "part": { + "description": "The part parameter specifies a comma-separated list of commentThread resource properties that the API response will include. You must at least include the snippet part in the parameter value since that part contains all of the properties that the API request can update.", + "location": "query", + "required": true, + "type": "string" + } + }, + "path": "commentThreads", + "request": { + "$ref": "CommentThread" + }, + "response": { + "$ref": "CommentThread" + }, + "scopes": [ + "https://www.googleapis.com/auth/youtube.force-ssl" + ] + } + } + }, + "comments": { + "methods": { + "delete": { + "description": "Deletes a comment.", + "httpMethod": "DELETE", + "id": "youtube.comments.delete", + "parameterOrder": [ + "id" + ], + "parameters": { + "id": { + "description": "The id parameter specifies the comment ID for the resource that is being deleted.", + "location": "query", + "required": true, + "type": "string" + } + }, + "path": "comments", + "scopes": [ + "https://www.googleapis.com/auth/youtube.force-ssl" + ] + }, + "insert": { + "description": "Creates a reply to an existing comment. Note: To create a top-level comment, use the commentThreads.insert method.", + "httpMethod": "POST", + "id": "youtube.comments.insert", + "parameterOrder": [ + "part" + ], + "parameters": { + "part": { + "description": "The part parameter identifies the properties that the API response will include. Set the parameter value to snippet. The snippet part has a quota cost of 2 units.", + "location": "query", + "required": true, + "type": "string" + } + }, + "path": "comments", + "request": { + "$ref": "Comment" + }, + "response": { + "$ref": "Comment" + }, + "scopes": [ + "https://www.googleapis.com/auth/youtube.force-ssl" + ] + }, + "list": { + "description": "Returns a list of comments that match the API request parameters.", + "httpMethod": "GET", + "id": "youtube.comments.list", + "parameterOrder": [ + "part" + ], + "parameters": { + "id": { + "description": "The id parameter specifies a comma-separated list of comment IDs for the resources that are being retrieved. In a comment resource, the id property specifies the comment's ID.", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "20", + "description": "The maxResults parameter specifies the maximum number of items that should be returned in the result set.\n\nNote: This parameter is not supported for use in conjunction with the id parameter.", + "format": "uint32", + "location": "query", + "maximum": "100", + "minimum": "1", + "type": "integer" + }, + "pageToken": { + "description": "The pageToken parameter identifies a specific page in the result set that should be returned. In an API response, the nextPageToken property identifies the next page of the result that can be retrieved.\n\nNote: This parameter is not supported for use in conjunction with the id parameter.", + "location": "query", + "type": "string" + }, + "parentId": { + "description": "The parentId parameter specifies the ID of the comment for which replies should be retrieved.\n\nNote: YouTube currently supports replies only for top-level comments. However, replies to replies may be supported in the future.", + "location": "query", + "type": "string" + }, + "part": { + "description": "The part parameter specifies a comma-separated list of one or more comment resource properties that the API response will include.", + "location": "query", + "required": true, + "type": "string" + }, + "textFormat": { + "default": "FORMAT_HTML", + "description": "This parameter indicates whether the API should return comments formatted as HTML or as plain text.", + "enum": [ + "html", + "plainText" + ], + "enumDescriptions": [ + "Returns the comments in HTML format. This is the default value.", + "Returns the comments in plain text format." + ], + "location": "query", + "type": "string" + } + }, + "path": "comments", + "response": { + "$ref": "CommentListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/youtube.force-ssl" + ] + }, + "markAsSpam": { + "description": "Expresses the caller's opinion that one or more comments should be flagged as spam.", + "httpMethod": "POST", + "id": "youtube.comments.markAsSpam", + "parameterOrder": [ + "id" + ], + "parameters": { + "id": { + "description": "The id parameter specifies a comma-separated list of IDs of comments that the caller believes should be classified as spam.", + "location": "query", + "required": true, + "type": "string" + } + }, + "path": "comments/markAsSpam", + "scopes": [ + "https://www.googleapis.com/auth/youtube.force-ssl" + ] + }, + "setModerationStatus": { + "description": "Sets the moderation status of one or more comments. The API request must be authorized by the owner of the channel or video associated with the comments.", + "httpMethod": "POST", + "id": "youtube.comments.setModerationStatus", + "parameterOrder": [ + "id", + "moderationStatus" + ], + "parameters": { + "banAuthor": { + "default": "false", + "description": "The banAuthor parameter lets you indicate that you want to automatically reject any additional comments written by the comment's author. Set the parameter value to true to ban the author.\n\nNote: This parameter is only valid if the moderationStatus parameter is also set to rejected.", + "location": "query", + "type": "boolean" + }, + "id": { + "description": "The id parameter specifies a comma-separated list of IDs that identify the comments for which you are updating the moderation status.", + "location": "query", + "required": true, + "type": "string" + }, + "moderationStatus": { + "description": "Identifies the new moderation status of the specified comments.", + "enum": [ + "heldForReview", + "published", + "rejected" + ], + "enumDescriptions": [ + "Marks a comment as awaiting review by a moderator.", + "Clears a comment for public display.", + "Rejects a comment as being unfit for display. This action also effectively hides all replies to the rejected comment.\n\nNote: The API does not currently provide a way to list or otherwise discover rejected comments. However, you can change the moderation status of a rejected comment if you still know its ID. If you were to change the moderation status of a rejected comment, the comment replies would subsequently be discoverable again as well." + ], + "location": "query", + "required": true, + "type": "string" + } + }, + "path": "comments/setModerationStatus", + "scopes": [ + "https://www.googleapis.com/auth/youtube.force-ssl" + ] + }, + "update": { + "description": "Modifies a comment.", + "httpMethod": "PUT", + "id": "youtube.comments.update", + "parameterOrder": [ + "part" + ], + "parameters": { + "part": { + "description": "The part parameter identifies the properties that the API response will include. You must at least include the snippet part in the parameter value since that part contains all of the properties that the API request can update.", + "location": "query", + "required": true, + "type": "string" + } + }, + "path": "comments", + "request": { + "$ref": "Comment" + }, + "response": { + "$ref": "Comment" + }, + "scopes": [ + "https://www.googleapis.com/auth/youtube.force-ssl" + ] + } + } + }, + "fanFundingEvents": { + "methods": { + "list": { + "description": "Lists fan funding events for a channel.", + "httpMethod": "GET", + "id": "youtube.fanFundingEvents.list", + "parameterOrder": [ + "part" + ], + "parameters": { + "hl": { + "description": "The hl parameter instructs the API to retrieve localized resource metadata for a specific application language that the YouTube website supports. The parameter value must be a language code included in the list returned by the i18nLanguages.list method.\n\nIf localized resource details are available in that language, the resource's snippet.localized object will contain the localized values. However, if localized details are not available, the snippet.localized object will contain resource details in the resource's default language.", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "5", + "description": "The maxResults parameter specifies the maximum number of items that should be returned in the result set.", + "format": "uint32", + "location": "query", + "maximum": "50", + "minimum": "0", + "type": "integer" + }, + "pageToken": { + "description": "The pageToken parameter identifies a specific page in the result set that should be returned. In an API response, the nextPageToken and prevPageToken properties identify other pages that could be retrieved.", + "location": "query", + "type": "string" + }, + "part": { + "description": "The part parameter specifies the fanFundingEvent resource parts that the API response will include. Supported values are id and snippet.", + "location": "query", + "required": true, + "type": "string" + } + }, + "path": "fanFundingEvents", + "response": { + "$ref": "FanFundingEventListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/youtube", + "https://www.googleapis.com/auth/youtube.force-ssl", + "https://www.googleapis.com/auth/youtube.readonly" + ] + } + } + }, + "guideCategories": { + "methods": { + "list": { + "description": "Returns a list of categories that can be associated with YouTube channels.", + "httpMethod": "GET", + "id": "youtube.guideCategories.list", + "parameterOrder": [ + "part" + ], + "parameters": { + "hl": { + "default": "en-US", + "description": "The hl parameter specifies the language that will be used for text values in the API response.", + "location": "query", + "type": "string" + }, + "id": { + "description": "The id parameter specifies a comma-separated list of the YouTube channel category ID(s) for the resource(s) that are being retrieved. In a guideCategory resource, the id property specifies the YouTube channel category ID.", + "location": "query", + "type": "string" + }, + "part": { + "description": "The part parameter specifies the guideCategory resource properties that the API response will include. Set the parameter value to snippet.", + "location": "query", + "required": true, + "type": "string" + }, + "regionCode": { + "description": "The regionCode parameter instructs the API to return the list of guide categories available in the specified country. The parameter value is an ISO 3166-1 alpha-2 country code.", + "location": "query", + "type": "string" + } + }, + "path": "guideCategories", + "response": { + "$ref": "GuideCategoryListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/youtube", + "https://www.googleapis.com/auth/youtube.force-ssl", + "https://www.googleapis.com/auth/youtube.readonly", + "https://www.googleapis.com/auth/youtubepartner" + ] + } + } + }, + "i18nLanguages": { + "methods": { + "list": { + "description": "Returns a list of application languages that the YouTube website supports.", + "httpMethod": "GET", + "id": "youtube.i18nLanguages.list", + "parameterOrder": [ + "part" + ], + "parameters": { + "hl": { + "default": "en_US", + "description": "The hl parameter specifies the language that should be used for text values in the API response.", + "location": "query", + "type": "string" + }, + "part": { + "description": "The part parameter specifies the i18nLanguage resource properties that the API response will include. Set the parameter value to snippet.", + "location": "query", + "required": true, + "type": "string" + } + }, + "path": "i18nLanguages", + "response": { + "$ref": "I18nLanguageListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/youtube", + "https://www.googleapis.com/auth/youtube.force-ssl", + "https://www.googleapis.com/auth/youtube.readonly", + "https://www.googleapis.com/auth/youtubepartner" + ] + } + } + }, + "i18nRegions": { + "methods": { + "list": { + "description": "Returns a list of content regions that the YouTube website supports.", + "httpMethod": "GET", + "id": "youtube.i18nRegions.list", + "parameterOrder": [ + "part" + ], + "parameters": { + "hl": { + "default": "en_US", + "description": "The hl parameter specifies the language that should be used for text values in the API response.", + "location": "query", + "type": "string" + }, + "part": { + "description": "The part parameter specifies the i18nRegion resource properties that the API response will include. Set the parameter value to snippet.", + "location": "query", + "required": true, + "type": "string" + } + }, + "path": "i18nRegions", + "response": { + "$ref": "I18nRegionListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/youtube", + "https://www.googleapis.com/auth/youtube.force-ssl", + "https://www.googleapis.com/auth/youtube.readonly", + "https://www.googleapis.com/auth/youtubepartner" + ] + } + } + }, + "liveBroadcasts": { + "methods": { + "bind": { + "description": "Binds a YouTube broadcast to a stream or removes an existing binding between a broadcast and a stream. A broadcast can only be bound to one video stream, though a video stream may be bound to more than one broadcast.", + "httpMethod": "POST", + "id": "youtube.liveBroadcasts.bind", + "parameterOrder": [ + "id", + "part" + ], + "parameters": { + "id": { + "description": "The id parameter specifies the unique ID of the broadcast that is being bound to a video stream.", + "location": "query", + "required": true, + "type": "string" + }, + "onBehalfOfContentOwner": { + "description": "Note: This parameter is intended exclusively for YouTube content partners.\n\nThe onBehalfOfContentOwner parameter indicates that the request's authorization credentials identify a YouTube CMS user who is acting on behalf of the content owner specified in the parameter value. This parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to provide authentication credentials for each individual channel. The CMS account that the user authenticates with must be linked to the specified YouTube content owner.", + "location": "query", + "type": "string" + }, + "onBehalfOfContentOwnerChannel": { + "description": "This parameter can only be used in a properly authorized request. Note: This parameter is intended exclusively for YouTube content partners.\n\nThe onBehalfOfContentOwnerChannel parameter specifies the YouTube channel ID of the channel to which a video is being added. This parameter is required when a request specifies a value for the onBehalfOfContentOwner parameter, and it can only be used in conjunction with that parameter. In addition, the request must be authorized using a CMS account that is linked to the content owner that the onBehalfOfContentOwner parameter specifies. Finally, the channel that the onBehalfOfContentOwnerChannel parameter value specifies must be linked to the content owner that the onBehalfOfContentOwner parameter specifies.\n\nThis parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and perform actions on behalf of the channel specified in the parameter value, without having to provide authentication credentials for each separate channel.", + "location": "query", + "type": "string" + }, + "part": { + "description": "The part parameter specifies a comma-separated list of one or more liveBroadcast resource properties that the API response will include. The part names that you can include in the parameter value are id, snippet, contentDetails, and status.", + "location": "query", + "required": true, + "type": "string" + }, + "streamId": { + "description": "The streamId parameter specifies the unique ID of the video stream that is being bound to a broadcast. If this parameter is omitted, the API will remove any existing binding between the broadcast and a video stream.", + "location": "query", + "type": "string" + } + }, + "path": "liveBroadcasts/bind", + "response": { + "$ref": "LiveBroadcast" + }, + "scopes": [ + "https://www.googleapis.com/auth/youtube", + "https://www.googleapis.com/auth/youtube.force-ssl" + ] + }, + "control": { + "description": "Controls the settings for a slate that can be displayed in the broadcast stream.", + "httpMethod": "POST", + "id": "youtube.liveBroadcasts.control", + "parameterOrder": [ + "id", + "part" + ], + "parameters": { + "displaySlate": { + "description": "The displaySlate parameter specifies whether the slate is being enabled or disabled.", + "location": "query", + "type": "boolean" + }, + "id": { + "description": "The id parameter specifies the YouTube live broadcast ID that uniquely identifies the broadcast in which the slate is being updated.", + "location": "query", + "required": true, + "type": "string" + }, + "offsetTimeMs": { + "description": "The offsetTimeMs parameter specifies a positive time offset when the specified slate change will occur. The value is measured in milliseconds from the beginning of the broadcast's monitor stream, which is the time that the testing phase for the broadcast began. Even though it is specified in milliseconds, the value is actually an approximation, and YouTube completes the requested action as closely as possible to that time.\n\nIf you do not specify a value for this parameter, then YouTube performs the action as soon as possible. See the Getting started guide for more details.\n\nImportant: You should only specify a value for this parameter if your broadcast stream is delayed.", + "format": "uint64", + "location": "query", + "type": "string" + }, + "onBehalfOfContentOwner": { + "description": "Note: This parameter is intended exclusively for YouTube content partners.\n\nThe onBehalfOfContentOwner parameter indicates that the request's authorization credentials identify a YouTube CMS user who is acting on behalf of the content owner specified in the parameter value. This parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to provide authentication credentials for each individual channel. The CMS account that the user authenticates with must be linked to the specified YouTube content owner.", + "location": "query", + "type": "string" + }, + "onBehalfOfContentOwnerChannel": { + "description": "This parameter can only be used in a properly authorized request. Note: This parameter is intended exclusively for YouTube content partners.\n\nThe onBehalfOfContentOwnerChannel parameter specifies the YouTube channel ID of the channel to which a video is being added. This parameter is required when a request specifies a value for the onBehalfOfContentOwner parameter, and it can only be used in conjunction with that parameter. In addition, the request must be authorized using a CMS account that is linked to the content owner that the onBehalfOfContentOwner parameter specifies. Finally, the channel that the onBehalfOfContentOwnerChannel parameter value specifies must be linked to the content owner that the onBehalfOfContentOwner parameter specifies.\n\nThis parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and perform actions on behalf of the channel specified in the parameter value, without having to provide authentication credentials for each separate channel.", + "location": "query", + "type": "string" + }, + "part": { + "description": "The part parameter specifies a comma-separated list of one or more liveBroadcast resource properties that the API response will include. The part names that you can include in the parameter value are id, snippet, contentDetails, and status.", + "location": "query", + "required": true, + "type": "string" + }, + "walltime": { + "description": "The walltime parameter specifies the wall clock time at which the specified slate change will occur. The value is specified in ISO 8601 (YYYY-MM-DDThh:mm:ss.sssZ) format.", + "format": "date-time", + "location": "query", + "type": "string" + } + }, + "path": "liveBroadcasts/control", + "response": { + "$ref": "LiveBroadcast" + }, + "scopes": [ + "https://www.googleapis.com/auth/youtube", + "https://www.googleapis.com/auth/youtube.force-ssl" + ] + }, + "delete": { + "description": "Deletes a broadcast.", + "httpMethod": "DELETE", + "id": "youtube.liveBroadcasts.delete", + "parameterOrder": [ + "id" + ], + "parameters": { + "id": { + "description": "The id parameter specifies the YouTube live broadcast ID for the resource that is being deleted.", + "location": "query", + "required": true, + "type": "string" + }, + "onBehalfOfContentOwner": { + "description": "Note: This parameter is intended exclusively for YouTube content partners.\n\nThe onBehalfOfContentOwner parameter indicates that the request's authorization credentials identify a YouTube CMS user who is acting on behalf of the content owner specified in the parameter value. This parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to provide authentication credentials for each individual channel. The CMS account that the user authenticates with must be linked to the specified YouTube content owner.", + "location": "query", + "type": "string" + }, + "onBehalfOfContentOwnerChannel": { + "description": "This parameter can only be used in a properly authorized request. Note: This parameter is intended exclusively for YouTube content partners.\n\nThe onBehalfOfContentOwnerChannel parameter specifies the YouTube channel ID of the channel to which a video is being added. This parameter is required when a request specifies a value for the onBehalfOfContentOwner parameter, and it can only be used in conjunction with that parameter. In addition, the request must be authorized using a CMS account that is linked to the content owner that the onBehalfOfContentOwner parameter specifies. Finally, the channel that the onBehalfOfContentOwnerChannel parameter value specifies must be linked to the content owner that the onBehalfOfContentOwner parameter specifies.\n\nThis parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and perform actions on behalf of the channel specified in the parameter value, without having to provide authentication credentials for each separate channel.", + "location": "query", + "type": "string" + } + }, + "path": "liveBroadcasts", + "scopes": [ + "https://www.googleapis.com/auth/youtube", + "https://www.googleapis.com/auth/youtube.force-ssl" + ] + }, + "insert": { + "description": "Creates a broadcast.", + "httpMethod": "POST", + "id": "youtube.liveBroadcasts.insert", + "parameterOrder": [ + "part" + ], + "parameters": { + "onBehalfOfContentOwner": { + "description": "Note: This parameter is intended exclusively for YouTube content partners.\n\nThe onBehalfOfContentOwner parameter indicates that the request's authorization credentials identify a YouTube CMS user who is acting on behalf of the content owner specified in the parameter value. This parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to provide authentication credentials for each individual channel. The CMS account that the user authenticates with must be linked to the specified YouTube content owner.", + "location": "query", + "type": "string" + }, + "onBehalfOfContentOwnerChannel": { + "description": "This parameter can only be used in a properly authorized request. Note: This parameter is intended exclusively for YouTube content partners.\n\nThe onBehalfOfContentOwnerChannel parameter specifies the YouTube channel ID of the channel to which a video is being added. This parameter is required when a request specifies a value for the onBehalfOfContentOwner parameter, and it can only be used in conjunction with that parameter. In addition, the request must be authorized using a CMS account that is linked to the content owner that the onBehalfOfContentOwner parameter specifies. Finally, the channel that the onBehalfOfContentOwnerChannel parameter value specifies must be linked to the content owner that the onBehalfOfContentOwner parameter specifies.\n\nThis parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and perform actions on behalf of the channel specified in the parameter value, without having to provide authentication credentials for each separate channel.", + "location": "query", + "type": "string" + }, + "part": { + "description": "The part parameter serves two purposes in this operation. It identifies the properties that the write operation will set as well as the properties that the API response will include.\n\nThe part properties that you can include in the parameter value are id, snippet, contentDetails, and status.", + "location": "query", + "required": true, + "type": "string" + } + }, + "path": "liveBroadcasts", + "request": { + "$ref": "LiveBroadcast" + }, + "response": { + "$ref": "LiveBroadcast" + }, + "scopes": [ + "https://www.googleapis.com/auth/youtube", + "https://www.googleapis.com/auth/youtube.force-ssl" + ] + }, + "list": { + "description": "Returns a list of YouTube broadcasts that match the API request parameters.", + "httpMethod": "GET", + "id": "youtube.liveBroadcasts.list", + "parameterOrder": [ + "part" + ], + "parameters": { + "broadcastStatus": { + "description": "The broadcastStatus parameter filters the API response to only include broadcasts with the specified status.", + "enum": [ + "active", + "all", + "completed", + "upcoming" + ], + "enumDescriptions": [ + "Return current live broadcasts.", + "Return all broadcasts.", + "Return broadcasts that have already ended.", + "Return broadcasts that have not yet started." + ], + "location": "query", + "type": "string" + }, + "broadcastType": { + "default": "BROADCAST_TYPE_FILTER_EVENT", + "description": "The broadcastType parameter filters the API response to only include broadcasts with the specified type. This is only compatible with the mine filter for now.", + "enum": [ + "all", + "event", + "persistent" + ], + "enumDescriptions": [ + "Return all broadcasts.", + "Return only scheduled event broadcasts.", + "Return only persistent broadcasts." + ], + "location": "query", + "type": "string" + }, + "id": { + "description": "The id parameter specifies a comma-separated list of YouTube broadcast IDs that identify the broadcasts being retrieved. In a liveBroadcast resource, the id property specifies the broadcast's ID.", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "5", + "description": "The maxResults parameter specifies the maximum number of items that should be returned in the result set.", + "format": "uint32", + "location": "query", + "maximum": "50", + "minimum": "0", + "type": "integer" + }, + "mine": { + "description": "The mine parameter can be used to instruct the API to only return broadcasts owned by the authenticated user. Set the parameter value to true to only retrieve your own broadcasts.", + "location": "query", + "type": "boolean" + }, + "onBehalfOfContentOwner": { + "description": "Note: This parameter is intended exclusively for YouTube content partners.\n\nThe onBehalfOfContentOwner parameter indicates that the request's authorization credentials identify a YouTube CMS user who is acting on behalf of the content owner specified in the parameter value. This parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to provide authentication credentials for each individual channel. The CMS account that the user authenticates with must be linked to the specified YouTube content owner.", + "location": "query", + "type": "string" + }, + "onBehalfOfContentOwnerChannel": { + "description": "This parameter can only be used in a properly authorized request. Note: This parameter is intended exclusively for YouTube content partners.\n\nThe onBehalfOfContentOwnerChannel parameter specifies the YouTube channel ID of the channel to which a video is being added. This parameter is required when a request specifies a value for the onBehalfOfContentOwner parameter, and it can only be used in conjunction with that parameter. In addition, the request must be authorized using a CMS account that is linked to the content owner that the onBehalfOfContentOwner parameter specifies. Finally, the channel that the onBehalfOfContentOwnerChannel parameter value specifies must be linked to the content owner that the onBehalfOfContentOwner parameter specifies.\n\nThis parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and perform actions on behalf of the channel specified in the parameter value, without having to provide authentication credentials for each separate channel.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "The pageToken parameter identifies a specific page in the result set that should be returned. In an API response, the nextPageToken and prevPageToken properties identify other pages that could be retrieved.", + "location": "query", + "type": "string" + }, + "part": { + "description": "The part parameter specifies a comma-separated list of one or more liveBroadcast resource properties that the API response will include. The part names that you can include in the parameter value are id, snippet, contentDetails, and status.", + "location": "query", + "required": true, + "type": "string" + } + }, + "path": "liveBroadcasts", + "response": { + "$ref": "LiveBroadcastListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/youtube", + "https://www.googleapis.com/auth/youtube.force-ssl", + "https://www.googleapis.com/auth/youtube.readonly" + ] + }, + "transition": { + "description": "Changes the status of a YouTube live broadcast and initiates any processes associated with the new status. For example, when you transition a broadcast's status to testing, YouTube starts to transmit video to that broadcast's monitor stream. Before calling this method, you should confirm that the value of the status.streamStatus property for the stream bound to your broadcast is active.", + "httpMethod": "POST", + "id": "youtube.liveBroadcasts.transition", + "parameterOrder": [ + "broadcastStatus", + "id", + "part" + ], + "parameters": { + "broadcastStatus": { + "description": "The broadcastStatus parameter identifies the state to which the broadcast is changing. Note that to transition a broadcast to either the testing or live state, the status.streamStatus must be active for the stream that the broadcast is bound to.", + "enum": [ + "complete", + "live", + "testing" + ], + "enumDescriptions": [ + "The broadcast is over. YouTube stops transmitting video.", + "The broadcast is visible to its audience. YouTube transmits video to the broadcast's monitor stream and its broadcast stream.", + "Start testing the broadcast. YouTube transmits video to the broadcast's monitor stream. Note that you can only transition a broadcast to the testing state if its contentDetails.monitorStream.enableMonitorStream property is set to true." + ], + "location": "query", + "required": true, + "type": "string" + }, + "id": { + "description": "The id parameter specifies the unique ID of the broadcast that is transitioning to another status.", + "location": "query", + "required": true, + "type": "string" + }, + "onBehalfOfContentOwner": { + "description": "Note: This parameter is intended exclusively for YouTube content partners.\n\nThe onBehalfOfContentOwner parameter indicates that the request's authorization credentials identify a YouTube CMS user who is acting on behalf of the content owner specified in the parameter value. This parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to provide authentication credentials for each individual channel. The CMS account that the user authenticates with must be linked to the specified YouTube content owner.", + "location": "query", + "type": "string" + }, + "onBehalfOfContentOwnerChannel": { + "description": "This parameter can only be used in a properly authorized request. Note: This parameter is intended exclusively for YouTube content partners.\n\nThe onBehalfOfContentOwnerChannel parameter specifies the YouTube channel ID of the channel to which a video is being added. This parameter is required when a request specifies a value for the onBehalfOfContentOwner parameter, and it can only be used in conjunction with that parameter. In addition, the request must be authorized using a CMS account that is linked to the content owner that the onBehalfOfContentOwner parameter specifies. Finally, the channel that the onBehalfOfContentOwnerChannel parameter value specifies must be linked to the content owner that the onBehalfOfContentOwner parameter specifies.\n\nThis parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and perform actions on behalf of the channel specified in the parameter value, without having to provide authentication credentials for each separate channel.", + "location": "query", + "type": "string" + }, + "part": { + "description": "The part parameter specifies a comma-separated list of one or more liveBroadcast resource properties that the API response will include. The part names that you can include in the parameter value are id, snippet, contentDetails, and status.", + "location": "query", + "required": true, + "type": "string" + } + }, + "path": "liveBroadcasts/transition", + "response": { + "$ref": "LiveBroadcast" + }, + "scopes": [ + "https://www.googleapis.com/auth/youtube", + "https://www.googleapis.com/auth/youtube.force-ssl" + ] + }, + "update": { + "description": "Updates a broadcast. For example, you could modify the broadcast settings defined in the liveBroadcast resource's contentDetails object.", + "httpMethod": "PUT", + "id": "youtube.liveBroadcasts.update", + "parameterOrder": [ + "part" + ], + "parameters": { + "onBehalfOfContentOwner": { + "description": "Note: This parameter is intended exclusively for YouTube content partners.\n\nThe onBehalfOfContentOwner parameter indicates that the request's authorization credentials identify a YouTube CMS user who is acting on behalf of the content owner specified in the parameter value. This parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to provide authentication credentials for each individual channel. The CMS account that the user authenticates with must be linked to the specified YouTube content owner.", + "location": "query", + "type": "string" + }, + "onBehalfOfContentOwnerChannel": { + "description": "This parameter can only be used in a properly authorized request. Note: This parameter is intended exclusively for YouTube content partners.\n\nThe onBehalfOfContentOwnerChannel parameter specifies the YouTube channel ID of the channel to which a video is being added. This parameter is required when a request specifies a value for the onBehalfOfContentOwner parameter, and it can only be used in conjunction with that parameter. In addition, the request must be authorized using a CMS account that is linked to the content owner that the onBehalfOfContentOwner parameter specifies. Finally, the channel that the onBehalfOfContentOwnerChannel parameter value specifies must be linked to the content owner that the onBehalfOfContentOwner parameter specifies.\n\nThis parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and perform actions on behalf of the channel specified in the parameter value, without having to provide authentication credentials for each separate channel.", + "location": "query", + "type": "string" + }, + "part": { + "description": "The part parameter serves two purposes in this operation. It identifies the properties that the write operation will set as well as the properties that the API response will include.\n\nThe part properties that you can include in the parameter value are id, snippet, contentDetails, and status.\n\nNote that this method will override the existing values for all of the mutable properties that are contained in any parts that the parameter value specifies. For example, a broadcast's privacy status is defined in the status part. As such, if your request is updating a private or unlisted broadcast, and the request's part parameter value includes the status part, the broadcast's privacy setting will be updated to whatever value the request body specifies. If the request body does not specify a value, the existing privacy setting will be removed and the broadcast will revert to the default privacy setting.", + "location": "query", + "required": true, + "type": "string" + } + }, + "path": "liveBroadcasts", + "request": { + "$ref": "LiveBroadcast" + }, + "response": { + "$ref": "LiveBroadcast" + }, + "scopes": [ + "https://www.googleapis.com/auth/youtube", + "https://www.googleapis.com/auth/youtube.force-ssl" + ] + } + } + }, + "liveChatBans": { + "methods": { + "delete": { + "description": "Removes a chat ban.", + "httpMethod": "DELETE", + "id": "youtube.liveChatBans.delete", + "parameterOrder": [ + "id" + ], + "parameters": { + "id": { + "description": "The id parameter identifies the chat ban to remove. The value uniquely identifies both the ban and the chat.", + "location": "query", + "required": true, + "type": "string" + } + }, + "path": "liveChat/bans", + "scopes": [ + "https://www.googleapis.com/auth/youtube", + "https://www.googleapis.com/auth/youtube.force-ssl" + ] + }, + "insert": { + "description": "Adds a new ban to the chat.", + "httpMethod": "POST", + "id": "youtube.liveChatBans.insert", + "parameterOrder": [ + "part" + ], + "parameters": { + "part": { + "description": "The part parameter serves two purposes in this operation. It identifies the properties that the write operation will set as well as the properties that the API response returns. Set the parameter value to snippet.", + "location": "query", + "required": true, + "type": "string" + } + }, + "path": "liveChat/bans", + "request": { + "$ref": "LiveChatBan" + }, + "response": { + "$ref": "LiveChatBan" + }, + "scopes": [ + "https://www.googleapis.com/auth/youtube", + "https://www.googleapis.com/auth/youtube.force-ssl" + ] + } + } + }, + "liveChatMessages": { + "methods": { + "delete": { + "description": "Deletes a chat message.", + "httpMethod": "DELETE", + "id": "youtube.liveChatMessages.delete", + "parameterOrder": [ + "id" + ], + "parameters": { + "id": { + "description": "The id parameter specifies the YouTube chat message ID of the resource that is being deleted.", + "location": "query", + "required": true, + "type": "string" + } + }, + "path": "liveChat/messages", + "scopes": [ + "https://www.googleapis.com/auth/youtube", + "https://www.googleapis.com/auth/youtube.force-ssl" + ] + }, + "insert": { + "description": "Adds a message to a live chat.", + "httpMethod": "POST", + "id": "youtube.liveChatMessages.insert", + "parameterOrder": [ + "part" + ], + "parameters": { + "part": { + "description": "The part parameter serves two purposes. It identifies the properties that the write operation will set as well as the properties that the API response will include. Set the parameter value to snippet.", + "location": "query", + "required": true, + "type": "string" + } + }, + "path": "liveChat/messages", + "request": { + "$ref": "LiveChatMessage" + }, + "response": { + "$ref": "LiveChatMessage" + }, + "scopes": [ + "https://www.googleapis.com/auth/youtube", + "https://www.googleapis.com/auth/youtube.force-ssl" + ] + }, + "list": { + "description": "Lists live chat messages for a specific chat.", + "httpMethod": "GET", + "id": "youtube.liveChatMessages.list", + "parameterOrder": [ + "liveChatId", + "part" + ], + "parameters": { + "hl": { + "description": "The hl parameter instructs the API to retrieve localized resource metadata for a specific application language that the YouTube website supports. The parameter value must be a language code included in the list returned by the i18nLanguages.list method.\n\nIf localized resource details are available in that language, the resource's snippet.localized object will contain the localized values. However, if localized details are not available, the snippet.localized object will contain resource details in the resource's default language.", + "location": "query", + "type": "string" + }, + "liveChatId": { + "description": "The liveChatId parameter specifies the ID of the chat whose messages will be returned.", + "location": "query", + "required": true, + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maxResults parameter specifies the maximum number of messages that should be returned in the result set.", + "format": "uint32", + "location": "query", + "maximum": "2000", + "minimum": "200", + "type": "integer" + }, + "pageToken": { + "description": "The pageToken parameter identifies a specific page in the result set that should be returned. In an API response, the nextPageToken property identify other pages that could be retrieved.", + "location": "query", + "type": "string" + }, + "part": { + "description": "The part parameter specifies the liveChatComment resource parts that the API response will include. Supported values are id and snippet.", + "location": "query", + "required": true, + "type": "string" + }, + "profileImageSize": { + "description": "The profileImageSize parameter specifies the size of the user profile pictures that should be returned in the result set. Default: 88.", + "format": "uint32", + "location": "query", + "maximum": "720", + "minimum": "16", + "type": "integer" + } + }, + "path": "liveChat/messages", + "response": { + "$ref": "LiveChatMessageListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/youtube", + "https://www.googleapis.com/auth/youtube.force-ssl", + "https://www.googleapis.com/auth/youtube.readonly" + ] + } + } + }, + "liveChatModerators": { + "methods": { + "delete": { + "description": "Removes a chat moderator.", + "httpMethod": "DELETE", + "id": "youtube.liveChatModerators.delete", + "parameterOrder": [ + "id" + ], + "parameters": { + "id": { + "description": "The id parameter identifies the chat moderator to remove. The value uniquely identifies both the moderator and the chat.", + "location": "query", + "required": true, + "type": "string" + } + }, + "path": "liveChat/moderators", + "scopes": [ + "https://www.googleapis.com/auth/youtube", + "https://www.googleapis.com/auth/youtube.force-ssl" + ] + }, + "insert": { + "description": "Adds a new moderator for the chat.", + "httpMethod": "POST", + "id": "youtube.liveChatModerators.insert", + "parameterOrder": [ + "part" + ], + "parameters": { + "part": { + "description": "The part parameter serves two purposes in this operation. It identifies the properties that the write operation will set as well as the properties that the API response returns. Set the parameter value to snippet.", + "location": "query", + "required": true, + "type": "string" + } + }, + "path": "liveChat/moderators", + "request": { + "$ref": "LiveChatModerator" + }, + "response": { + "$ref": "LiveChatModerator" + }, + "scopes": [ + "https://www.googleapis.com/auth/youtube", + "https://www.googleapis.com/auth/youtube.force-ssl" + ] + }, + "list": { + "description": "Lists moderators for a live chat.", + "httpMethod": "GET", + "id": "youtube.liveChatModerators.list", + "parameterOrder": [ + "liveChatId", + "part" + ], + "parameters": { + "liveChatId": { + "description": "The liveChatId parameter specifies the YouTube live chat for which the API should return moderators.", + "location": "query", + "required": true, + "type": "string" + }, + "maxResults": { + "default": "5", + "description": "The maxResults parameter specifies the maximum number of items that should be returned in the result set.", + "format": "uint32", + "location": "query", + "maximum": "50", + "minimum": "0", + "type": "integer" + }, + "pageToken": { + "description": "The pageToken parameter identifies a specific page in the result set that should be returned. In an API response, the nextPageToken and prevPageToken properties identify other pages that could be retrieved.", + "location": "query", + "type": "string" + }, + "part": { + "description": "The part parameter specifies the liveChatModerator resource parts that the API response will include. Supported values are id and snippet.", + "location": "query", + "required": true, + "type": "string" + } + }, + "path": "liveChat/moderators", + "response": { + "$ref": "LiveChatModeratorListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/youtube", + "https://www.googleapis.com/auth/youtube.force-ssl", + "https://www.googleapis.com/auth/youtube.readonly" + ] + } + } + }, + "liveStreams": { + "methods": { + "delete": { + "description": "Deletes a video stream.", + "httpMethod": "DELETE", + "id": "youtube.liveStreams.delete", + "parameterOrder": [ + "id" + ], + "parameters": { + "id": { + "description": "The id parameter specifies the YouTube live stream ID for the resource that is being deleted.", + "location": "query", + "required": true, + "type": "string" + }, + "onBehalfOfContentOwner": { + "description": "Note: This parameter is intended exclusively for YouTube content partners.\n\nThe onBehalfOfContentOwner parameter indicates that the request's authorization credentials identify a YouTube CMS user who is acting on behalf of the content owner specified in the parameter value. This parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to provide authentication credentials for each individual channel. The CMS account that the user authenticates with must be linked to the specified YouTube content owner.", + "location": "query", + "type": "string" + }, + "onBehalfOfContentOwnerChannel": { + "description": "This parameter can only be used in a properly authorized request. Note: This parameter is intended exclusively for YouTube content partners.\n\nThe onBehalfOfContentOwnerChannel parameter specifies the YouTube channel ID of the channel to which a video is being added. This parameter is required when a request specifies a value for the onBehalfOfContentOwner parameter, and it can only be used in conjunction with that parameter. In addition, the request must be authorized using a CMS account that is linked to the content owner that the onBehalfOfContentOwner parameter specifies. Finally, the channel that the onBehalfOfContentOwnerChannel parameter value specifies must be linked to the content owner that the onBehalfOfContentOwner parameter specifies.\n\nThis parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and perform actions on behalf of the channel specified in the parameter value, without having to provide authentication credentials for each separate channel.", + "location": "query", + "type": "string" + } + }, + "path": "liveStreams", + "scopes": [ + "https://www.googleapis.com/auth/youtube", + "https://www.googleapis.com/auth/youtube.force-ssl" + ] + }, + "insert": { + "description": "Creates a video stream. The stream enables you to send your video to YouTube, which can then broadcast the video to your audience.", + "httpMethod": "POST", + "id": "youtube.liveStreams.insert", + "parameterOrder": [ + "part" + ], + "parameters": { + "onBehalfOfContentOwner": { + "description": "Note: This parameter is intended exclusively for YouTube content partners.\n\nThe onBehalfOfContentOwner parameter indicates that the request's authorization credentials identify a YouTube CMS user who is acting on behalf of the content owner specified in the parameter value. This parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to provide authentication credentials for each individual channel. The CMS account that the user authenticates with must be linked to the specified YouTube content owner.", + "location": "query", + "type": "string" + }, + "onBehalfOfContentOwnerChannel": { + "description": "This parameter can only be used in a properly authorized request. Note: This parameter is intended exclusively for YouTube content partners.\n\nThe onBehalfOfContentOwnerChannel parameter specifies the YouTube channel ID of the channel to which a video is being added. This parameter is required when a request specifies a value for the onBehalfOfContentOwner parameter, and it can only be used in conjunction with that parameter. In addition, the request must be authorized using a CMS account that is linked to the content owner that the onBehalfOfContentOwner parameter specifies. Finally, the channel that the onBehalfOfContentOwnerChannel parameter value specifies must be linked to the content owner that the onBehalfOfContentOwner parameter specifies.\n\nThis parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and perform actions on behalf of the channel specified in the parameter value, without having to provide authentication credentials for each separate channel.", + "location": "query", + "type": "string" + }, + "part": { + "description": "The part parameter serves two purposes in this operation. It identifies the properties that the write operation will set as well as the properties that the API response will include.\n\nThe part properties that you can include in the parameter value are id, snippet, cdn, and status.", + "location": "query", + "required": true, + "type": "string" + } + }, + "path": "liveStreams", + "request": { + "$ref": "LiveStream" + }, + "response": { + "$ref": "LiveStream" + }, + "scopes": [ + "https://www.googleapis.com/auth/youtube", + "https://www.googleapis.com/auth/youtube.force-ssl" + ] + }, + "list": { + "description": "Returns a list of video streams that match the API request parameters.", + "httpMethod": "GET", + "id": "youtube.liveStreams.list", + "parameterOrder": [ + "part" + ], + "parameters": { + "id": { + "description": "The id parameter specifies a comma-separated list of YouTube stream IDs that identify the streams being retrieved. In a liveStream resource, the id property specifies the stream's ID.", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "5", + "description": "The maxResults parameter specifies the maximum number of items that should be returned in the result set.", + "format": "uint32", + "location": "query", + "maximum": "50", + "minimum": "0", + "type": "integer" + }, + "mine": { + "description": "The mine parameter can be used to instruct the API to only return streams owned by the authenticated user. Set the parameter value to true to only retrieve your own streams.", + "location": "query", + "type": "boolean" + }, + "onBehalfOfContentOwner": { + "description": "Note: This parameter is intended exclusively for YouTube content partners.\n\nThe onBehalfOfContentOwner parameter indicates that the request's authorization credentials identify a YouTube CMS user who is acting on behalf of the content owner specified in the parameter value. This parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to provide authentication credentials for each individual channel. The CMS account that the user authenticates with must be linked to the specified YouTube content owner.", + "location": "query", + "type": "string" + }, + "onBehalfOfContentOwnerChannel": { + "description": "This parameter can only be used in a properly authorized request. Note: This parameter is intended exclusively for YouTube content partners.\n\nThe onBehalfOfContentOwnerChannel parameter specifies the YouTube channel ID of the channel to which a video is being added. This parameter is required when a request specifies a value for the onBehalfOfContentOwner parameter, and it can only be used in conjunction with that parameter. In addition, the request must be authorized using a CMS account that is linked to the content owner that the onBehalfOfContentOwner parameter specifies. Finally, the channel that the onBehalfOfContentOwnerChannel parameter value specifies must be linked to the content owner that the onBehalfOfContentOwner parameter specifies.\n\nThis parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and perform actions on behalf of the channel specified in the parameter value, without having to provide authentication credentials for each separate channel.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "The pageToken parameter identifies a specific page in the result set that should be returned. In an API response, the nextPageToken and prevPageToken properties identify other pages that could be retrieved.", + "location": "query", + "type": "string" + }, + "part": { + "description": "The part parameter specifies a comma-separated list of one or more liveStream resource properties that the API response will include. The part names that you can include in the parameter value are id, snippet, cdn, and status.", + "location": "query", + "required": true, + "type": "string" + } + }, + "path": "liveStreams", + "response": { + "$ref": "LiveStreamListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/youtube", + "https://www.googleapis.com/auth/youtube.force-ssl", + "https://www.googleapis.com/auth/youtube.readonly" + ] + }, + "update": { + "description": "Updates a video stream. If the properties that you want to change cannot be updated, then you need to create a new stream with the proper settings.", + "httpMethod": "PUT", + "id": "youtube.liveStreams.update", + "parameterOrder": [ + "part" + ], + "parameters": { + "onBehalfOfContentOwner": { + "description": "Note: This parameter is intended exclusively for YouTube content partners.\n\nThe onBehalfOfContentOwner parameter indicates that the request's authorization credentials identify a YouTube CMS user who is acting on behalf of the content owner specified in the parameter value. This parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to provide authentication credentials for each individual channel. The CMS account that the user authenticates with must be linked to the specified YouTube content owner.", + "location": "query", + "type": "string" + }, + "onBehalfOfContentOwnerChannel": { + "description": "This parameter can only be used in a properly authorized request. Note: This parameter is intended exclusively for YouTube content partners.\n\nThe onBehalfOfContentOwnerChannel parameter specifies the YouTube channel ID of the channel to which a video is being added. This parameter is required when a request specifies a value for the onBehalfOfContentOwner parameter, and it can only be used in conjunction with that parameter. In addition, the request must be authorized using a CMS account that is linked to the content owner that the onBehalfOfContentOwner parameter specifies. Finally, the channel that the onBehalfOfContentOwnerChannel parameter value specifies must be linked to the content owner that the onBehalfOfContentOwner parameter specifies.\n\nThis parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and perform actions on behalf of the channel specified in the parameter value, without having to provide authentication credentials for each separate channel.", + "location": "query", + "type": "string" + }, + "part": { + "description": "The part parameter serves two purposes in this operation. It identifies the properties that the write operation will set as well as the properties that the API response will include.\n\nThe part properties that you can include in the parameter value are id, snippet, cdn, and status.\n\nNote that this method will override the existing values for all of the mutable properties that are contained in any parts that the parameter value specifies. If the request body does not specify a value for a mutable property, the existing value for that property will be removed.", + "location": "query", + "required": true, + "type": "string" + } + }, + "path": "liveStreams", + "request": { + "$ref": "LiveStream" + }, + "response": { + "$ref": "LiveStream" + }, + "scopes": [ + "https://www.googleapis.com/auth/youtube", + "https://www.googleapis.com/auth/youtube.force-ssl" + ] + } + } + }, + "playlistItems": { + "methods": { + "delete": { + "description": "Deletes a playlist item.", + "httpMethod": "DELETE", + "id": "youtube.playlistItems.delete", + "parameterOrder": [ + "id" + ], + "parameters": { + "id": { + "description": "The id parameter specifies the YouTube playlist item ID for the playlist item that is being deleted. In a playlistItem resource, the id property specifies the playlist item's ID.", + "location": "query", + "required": true, + "type": "string" + }, + "onBehalfOfContentOwner": { + "description": "Note: This parameter is intended exclusively for YouTube content partners.\n\nThe onBehalfOfContentOwner parameter indicates that the request's authorization credentials identify a YouTube CMS user who is acting on behalf of the content owner specified in the parameter value. This parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to provide authentication credentials for each individual channel. The CMS account that the user authenticates with must be linked to the specified YouTube content owner.", + "location": "query", + "type": "string" + } + }, + "path": "playlistItems", + "scopes": [ + "https://www.googleapis.com/auth/youtube", + "https://www.googleapis.com/auth/youtube.force-ssl", + "https://www.googleapis.com/auth/youtubepartner" + ] + }, + "insert": { + "description": "Adds a resource to a playlist.", + "httpMethod": "POST", + "id": "youtube.playlistItems.insert", + "parameterOrder": [ + "part" + ], + "parameters": { + "onBehalfOfContentOwner": { + "description": "Note: This parameter is intended exclusively for YouTube content partners.\n\nThe onBehalfOfContentOwner parameter indicates that the request's authorization credentials identify a YouTube CMS user who is acting on behalf of the content owner specified in the parameter value. This parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to provide authentication credentials for each individual channel. The CMS account that the user authenticates with must be linked to the specified YouTube content owner.", + "location": "query", + "type": "string" + }, + "part": { + "description": "The part parameter serves two purposes in this operation. It identifies the properties that the write operation will set as well as the properties that the API response will include.", + "location": "query", + "required": true, + "type": "string" + } + }, + "path": "playlistItems", + "request": { + "$ref": "PlaylistItem" + }, + "response": { + "$ref": "PlaylistItem" + }, + "scopes": [ + "https://www.googleapis.com/auth/youtube", + "https://www.googleapis.com/auth/youtube.force-ssl", + "https://www.googleapis.com/auth/youtubepartner" + ] + }, + "list": { + "description": "Returns a collection of playlist items that match the API request parameters. You can retrieve all of the playlist items in a specified playlist or retrieve one or more playlist items by their unique IDs.", + "httpMethod": "GET", + "id": "youtube.playlistItems.list", + "parameterOrder": [ + "part" + ], + "parameters": { + "id": { + "description": "The id parameter specifies a comma-separated list of one or more unique playlist item IDs.", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "5", + "description": "The maxResults parameter specifies the maximum number of items that should be returned in the result set.", + "format": "uint32", + "location": "query", + "maximum": "50", + "minimum": "0", + "type": "integer" + }, + "onBehalfOfContentOwner": { + "description": "Note: This parameter is intended exclusively for YouTube content partners.\n\nThe onBehalfOfContentOwner parameter indicates that the request's authorization credentials identify a YouTube CMS user who is acting on behalf of the content owner specified in the parameter value. This parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to provide authentication credentials for each individual channel. The CMS account that the user authenticates with must be linked to the specified YouTube content owner.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "The pageToken parameter identifies a specific page in the result set that should be returned. In an API response, the nextPageToken and prevPageToken properties identify other pages that could be retrieved.", + "location": "query", + "type": "string" + }, + "part": { + "description": "The part parameter specifies a comma-separated list of one or more playlistItem resource properties that the API response will include.\n\nIf the parameter identifies a property that contains child properties, the child properties will be included in the response. For example, in a playlistItem resource, the snippet property contains numerous fields, including the title, description, position, and resourceId properties. As such, if you set part=snippet, the API response will contain all of those properties.", + "location": "query", + "required": true, + "type": "string" + }, + "playlistId": { + "description": "The playlistId parameter specifies the unique ID of the playlist for which you want to retrieve playlist items. Note that even though this is an optional parameter, every request to retrieve playlist items must specify a value for either the id parameter or the playlistId parameter.", + "location": "query", + "type": "string" + }, + "videoId": { + "description": "The videoId parameter specifies that the request should return only the playlist items that contain the specified video.", + "location": "query", + "type": "string" + } + }, + "path": "playlistItems", + "response": { + "$ref": "PlaylistItemListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/youtube", + "https://www.googleapis.com/auth/youtube.force-ssl", + "https://www.googleapis.com/auth/youtube.readonly", + "https://www.googleapis.com/auth/youtubepartner" + ], + "supportsSubscription": true + }, + "update": { + "description": "Modifies a playlist item. For example, you could update the item's position in the playlist.", + "httpMethod": "PUT", + "id": "youtube.playlistItems.update", + "parameterOrder": [ + "part" + ], + "parameters": { + "onBehalfOfContentOwner": { + "description": "Note: This parameter is intended exclusively for YouTube content partners.\n\nThe onBehalfOfContentOwner parameter indicates that the request's authorization credentials identify a YouTube CMS user who is acting on behalf of the content owner specified in the parameter value. This parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to provide authentication credentials for each individual channel. The CMS account that the user authenticates with must be linked to the specified YouTube content owner.", + "location": "query", + "type": "string" + }, + "part": { + "description": "The part parameter serves two purposes in this operation. It identifies the properties that the write operation will set as well as the properties that the API response will include.\n\nNote that this method will override the existing values for all of the mutable properties that are contained in any parts that the parameter value specifies. For example, a playlist item can specify a start time and end time, which identify the times portion of the video that should play when users watch the video in the playlist. If your request is updating a playlist item that sets these values, and the request's part parameter value includes the contentDetails part, the playlist item's start and end times will be updated to whatever value the request body specifies. If the request body does not specify values, the existing start and end times will be removed and replaced with the default settings.", + "location": "query", + "required": true, + "type": "string" + } + }, + "path": "playlistItems", + "request": { + "$ref": "PlaylistItem" + }, + "response": { + "$ref": "PlaylistItem" + }, + "scopes": [ + "https://www.googleapis.com/auth/youtube", + "https://www.googleapis.com/auth/youtube.force-ssl", + "https://www.googleapis.com/auth/youtubepartner" + ] + } + } }, "playlists": { - "type": "array", - "description": "The playlist ids for type single_playlist and multiple_playlists. For singlePlaylist, only one playlistId is allowed.", - "items": { - "type": "string" - } - } - } - }, - "ChannelSectionListResponse": { - "id": "ChannelSectionListResponse", - "type": "object", - "properties": { - "etag": { - "type": "string", - "description": "Etag of this resource." + "methods": { + "delete": { + "description": "Deletes a playlist.", + "httpMethod": "DELETE", + "id": "youtube.playlists.delete", + "parameterOrder": [ + "id" + ], + "parameters": { + "id": { + "description": "The id parameter specifies the YouTube playlist ID for the playlist that is being deleted. In a playlist resource, the id property specifies the playlist's ID.", + "location": "query", + "required": true, + "type": "string" + }, + "onBehalfOfContentOwner": { + "description": "Note: This parameter is intended exclusively for YouTube content partners.\n\nThe onBehalfOfContentOwner parameter indicates that the request's authorization credentials identify a YouTube CMS user who is acting on behalf of the content owner specified in the parameter value. This parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to provide authentication credentials for each individual channel. The CMS account that the user authenticates with must be linked to the specified YouTube content owner.", + "location": "query", + "type": "string" + } + }, + "path": "playlists", + "scopes": [ + "https://www.googleapis.com/auth/youtube", + "https://www.googleapis.com/auth/youtube.force-ssl", + "https://www.googleapis.com/auth/youtubepartner" + ] + }, + "insert": { + "description": "Creates a playlist.", + "httpMethod": "POST", + "id": "youtube.playlists.insert", + "parameterOrder": [ + "part" + ], + "parameters": { + "onBehalfOfContentOwner": { + "description": "Note: This parameter is intended exclusively for YouTube content partners.\n\nThe onBehalfOfContentOwner parameter indicates that the request's authorization credentials identify a YouTube CMS user who is acting on behalf of the content owner specified in the parameter value. This parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to provide authentication credentials for each individual channel. The CMS account that the user authenticates with must be linked to the specified YouTube content owner.", + "location": "query", + "type": "string" + }, + "onBehalfOfContentOwnerChannel": { + "description": "This parameter can only be used in a properly authorized request. Note: This parameter is intended exclusively for YouTube content partners.\n\nThe onBehalfOfContentOwnerChannel parameter specifies the YouTube channel ID of the channel to which a video is being added. This parameter is required when a request specifies a value for the onBehalfOfContentOwner parameter, and it can only be used in conjunction with that parameter. In addition, the request must be authorized using a CMS account that is linked to the content owner that the onBehalfOfContentOwner parameter specifies. Finally, the channel that the onBehalfOfContentOwnerChannel parameter value specifies must be linked to the content owner that the onBehalfOfContentOwner parameter specifies.\n\nThis parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and perform actions on behalf of the channel specified in the parameter value, without having to provide authentication credentials for each separate channel.", + "location": "query", + "type": "string" + }, + "part": { + "description": "The part parameter serves two purposes in this operation. It identifies the properties that the write operation will set as well as the properties that the API response will include.", + "location": "query", + "required": true, + "type": "string" + } + }, + "path": "playlists", + "request": { + "$ref": "Playlist" + }, + "response": { + "$ref": "Playlist" + }, + "scopes": [ + "https://www.googleapis.com/auth/youtube", + "https://www.googleapis.com/auth/youtube.force-ssl", + "https://www.googleapis.com/auth/youtubepartner" + ] + }, + "list": { + "description": "Returns a collection of playlists that match the API request parameters. For example, you can retrieve all playlists that the authenticated user owns, or you can retrieve one or more playlists by their unique IDs.", + "httpMethod": "GET", + "id": "youtube.playlists.list", + "parameterOrder": [ + "part" + ], + "parameters": { + "channelId": { + "description": "This value indicates that the API should only return the specified channel's playlists.", + "location": "query", + "type": "string" + }, + "hl": { + "description": "The hl parameter should be used for filter out the properties that are not in the given language. Used for the snippet part.", + "location": "query", + "type": "string" + }, + "id": { + "description": "The id parameter specifies a comma-separated list of the YouTube playlist ID(s) for the resource(s) that are being retrieved. In a playlist resource, the id property specifies the playlist's YouTube playlist ID.", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "5", + "description": "The maxResults parameter specifies the maximum number of items that should be returned in the result set.", + "format": "uint32", + "location": "query", + "maximum": "50", + "minimum": "0", + "type": "integer" + }, + "mine": { + "description": "Set this parameter's value to true to instruct the API to only return playlists owned by the authenticated user.", + "location": "query", + "type": "boolean" + }, + "onBehalfOfContentOwner": { + "description": "Note: This parameter is intended exclusively for YouTube content partners.\n\nThe onBehalfOfContentOwner parameter indicates that the request's authorization credentials identify a YouTube CMS user who is acting on behalf of the content owner specified in the parameter value. This parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to provide authentication credentials for each individual channel. The CMS account that the user authenticates with must be linked to the specified YouTube content owner.", + "location": "query", + "type": "string" + }, + "onBehalfOfContentOwnerChannel": { + "description": "This parameter can only be used in a properly authorized request. Note: This parameter is intended exclusively for YouTube content partners.\n\nThe onBehalfOfContentOwnerChannel parameter specifies the YouTube channel ID of the channel to which a video is being added. This parameter is required when a request specifies a value for the onBehalfOfContentOwner parameter, and it can only be used in conjunction with that parameter. In addition, the request must be authorized using a CMS account that is linked to the content owner that the onBehalfOfContentOwner parameter specifies. Finally, the channel that the onBehalfOfContentOwnerChannel parameter value specifies must be linked to the content owner that the onBehalfOfContentOwner parameter specifies.\n\nThis parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and perform actions on behalf of the channel specified in the parameter value, without having to provide authentication credentials for each separate channel.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "The pageToken parameter identifies a specific page in the result set that should be returned. In an API response, the nextPageToken and prevPageToken properties identify other pages that could be retrieved.", + "location": "query", + "type": "string" + }, + "part": { + "description": "The part parameter specifies a comma-separated list of one or more playlist resource properties that the API response will include.\n\nIf the parameter identifies a property that contains child properties, the child properties will be included in the response. For example, in a playlist resource, the snippet property contains properties like author, title, description, tags, and timeCreated. As such, if you set part=snippet, the API response will contain all of those properties.", + "location": "query", + "required": true, + "type": "string" + } + }, + "path": "playlists", + "response": { + "$ref": "PlaylistListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/youtube", + "https://www.googleapis.com/auth/youtube.force-ssl", + "https://www.googleapis.com/auth/youtube.readonly", + "https://www.googleapis.com/auth/youtubepartner" + ] + }, + "update": { + "description": "Modifies a playlist. For example, you could change a playlist's title, description, or privacy status.", + "httpMethod": "PUT", + "id": "youtube.playlists.update", + "parameterOrder": [ + "part" + ], + "parameters": { + "onBehalfOfContentOwner": { + "description": "Note: This parameter is intended exclusively for YouTube content partners.\n\nThe onBehalfOfContentOwner parameter indicates that the request's authorization credentials identify a YouTube CMS user who is acting on behalf of the content owner specified in the parameter value. This parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to provide authentication credentials for each individual channel. The CMS account that the user authenticates with must be linked to the specified YouTube content owner.", + "location": "query", + "type": "string" + }, + "part": { + "description": "The part parameter serves two purposes in this operation. It identifies the properties that the write operation will set as well as the properties that the API response will include.\n\nNote that this method will override the existing values for mutable properties that are contained in any parts that the request body specifies. For example, a playlist's description is contained in the snippet part, which must be included in the request body. If the request does not specify a value for the snippet.description property, the playlist's existing description will be deleted.", + "location": "query", + "required": true, + "type": "string" + } + }, + "path": "playlists", + "request": { + "$ref": "Playlist" + }, + "response": { + "$ref": "Playlist" + }, + "scopes": [ + "https://www.googleapis.com/auth/youtube", + "https://www.googleapis.com/auth/youtube.force-ssl", + "https://www.googleapis.com/auth/youtubepartner" + ] + } + } }, - "eventId": { - "type": "string", - "description": "Serialized EventId of the request which produced this response." + "search": { + "methods": { + "list": { + "description": "Returns a collection of search results that match the query parameters specified in the API request. By default, a search result set identifies matching video, channel, and playlist resources, but you can also configure queries to only retrieve a specific type of resource.", + "httpMethod": "GET", + "id": "youtube.search.list", + "parameterOrder": [ + "part" + ], + "parameters": { + "channelId": { + "description": "The channelId parameter indicates that the API response should only contain resources created by the channel", + "location": "query", + "type": "string" + }, + "channelType": { + "description": "The channelType parameter lets you restrict a search to a particular type of channel.", + "enum": [ + "any", + "show" + ], + "enumDescriptions": [ + "Return all channels.", + "Only retrieve shows." + ], + "location": "query", + "type": "string" + }, + "eventType": { + "description": "The eventType parameter restricts a search to broadcast events. If you specify a value for this parameter, you must also set the type parameter's value to video.", + "enum": [ + "completed", + "live", + "upcoming" + ], + "enumDescriptions": [ + "Only include completed broadcasts.", + "Only include active broadcasts.", + "Only include upcoming broadcasts." + ], + "location": "query", + "type": "string" + }, + "forContentOwner": { + "description": "Note: This parameter is intended exclusively for YouTube content partners.\n\nThe forContentOwner parameter restricts the search to only retrieve resources owned by the content owner specified by the onBehalfOfContentOwner parameter. The user must be authenticated using a CMS account linked to the specified content owner and onBehalfOfContentOwner must be provided.", + "location": "query", + "type": "boolean" + }, + "forDeveloper": { + "description": "The forDeveloper parameter restricts the search to only retrieve videos uploaded via the developer's application or website. The API server uses the request's authorization credentials to identify the developer. Therefore, a developer can restrict results to videos uploaded through the developer's own app or website but not to videos uploaded through other apps or sites.", + "location": "query", + "type": "boolean" + }, + "forMine": { + "description": "The forMine parameter restricts the search to only retrieve videos owned by the authenticated user. If you set this parameter to true, then the type parameter's value must also be set to video.", + "location": "query", + "type": "boolean" + }, + "location": { + "description": "The location parameter, in conjunction with the locationRadius parameter, defines a circular geographic area and also restricts a search to videos that specify, in their metadata, a geographic location that falls within that area. The parameter value is a string that specifies latitude/longitude coordinates e.g. (37.42307,-122.08427).\n\n\n- The location parameter value identifies the point at the center of the area.\n- The locationRadius parameter specifies the maximum distance that the location associated with a video can be from that point for the video to still be included in the search results.The API returns an error if your request specifies a value for the location parameter but does not also specify a value for the locationRadius parameter.", + "location": "query", + "type": "string" + }, + "locationRadius": { + "description": "The locationRadius parameter, in conjunction with the location parameter, defines a circular geographic area.\n\nThe parameter value must be a floating point number followed by a measurement unit. Valid measurement units are m, km, ft, and mi. For example, valid parameter values include 1500m, 5km, 10000ft, and 0.75mi. The API does not support locationRadius parameter values larger than 1000 kilometers.\n\nNote: See the definition of the location parameter for more information.", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "5", + "description": "The maxResults parameter specifies the maximum number of items that should be returned in the result set.", + "format": "uint32", + "location": "query", + "maximum": "50", + "minimum": "0", + "type": "integer" + }, + "onBehalfOfContentOwner": { + "description": "Note: This parameter is intended exclusively for YouTube content partners.\n\nThe onBehalfOfContentOwner parameter indicates that the request's authorization credentials identify a YouTube CMS user who is acting on behalf of the content owner specified in the parameter value. This parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to provide authentication credentials for each individual channel. The CMS account that the user authenticates with must be linked to the specified YouTube content owner.", + "location": "query", + "type": "string" + }, + "order": { + "default": "SEARCH_SORT_RELEVANCE", + "description": "The order parameter specifies the method that will be used to order resources in the API response.", + "enum": [ + "date", + "rating", + "relevance", + "title", + "videoCount", + "viewCount" + ], + "enumDescriptions": [ + "Resources are sorted in reverse chronological order based on the date they were created.", + "Resources are sorted from highest to lowest rating.", + "Resources are sorted based on their relevance to the search query. This is the default value for this parameter.", + "Resources are sorted alphabetically by title.", + "Channels are sorted in descending order of their number of uploaded videos.", + "Resources are sorted from highest to lowest number of views." + ], + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "The pageToken parameter identifies a specific page in the result set that should be returned. In an API response, the nextPageToken and prevPageToken properties identify other pages that could be retrieved.", + "location": "query", + "type": "string" + }, + "part": { + "description": "The part parameter specifies a comma-separated list of one or more search resource properties that the API response will include. Set the parameter value to snippet.", + "location": "query", + "required": true, + "type": "string" + }, + "publishedAfter": { + "description": "The publishedAfter parameter indicates that the API response should only contain resources created after the specified time. The value is an RFC 3339 formatted date-time value (1970-01-01T00:00:00Z).", + "format": "date-time", + "location": "query", + "type": "string" + }, + "publishedBefore": { + "description": "The publishedBefore parameter indicates that the API response should only contain resources created before the specified time. The value is an RFC 3339 formatted date-time value (1970-01-01T00:00:00Z).", + "format": "date-time", + "location": "query", + "type": "string" + }, + "q": { + "description": "The q parameter specifies the query term to search for.\n\nYour request can also use the Boolean NOT (-) and OR (|) operators to exclude videos or to find videos that are associated with one of several search terms. For example, to search for videos matching either \"boating\" or \"sailing\", set the q parameter value to boating|sailing. Similarly, to search for videos matching either \"boating\" or \"sailing\" but not \"fishing\", set the q parameter value to boating|sailing -fishing. Note that the pipe character must be URL-escaped when it is sent in your API request. The URL-escaped value for the pipe character is %7C.", + "location": "query", + "type": "string" + }, + "regionCode": { + "description": "The regionCode parameter instructs the API to return search results for the specified country. The parameter value is an ISO 3166-1 alpha-2 country code.", + "location": "query", + "type": "string" + }, + "relatedToVideoId": { + "description": "The relatedToVideoId parameter retrieves a list of videos that are related to the video that the parameter value identifies. The parameter value must be set to a YouTube video ID and, if you are using this parameter, the type parameter must be set to video.", + "location": "query", + "type": "string" + }, + "relevanceLanguage": { + "description": "The relevanceLanguage parameter instructs the API to return search results that are most relevant to the specified language. The parameter value is typically an ISO 639-1 two-letter language code. However, you should use the values zh-Hans for simplified Chinese and zh-Hant for traditional Chinese. Please note that results in other languages will still be returned if they are highly relevant to the search query term.", + "location": "query", + "type": "string" + }, + "safeSearch": { + "description": "The safeSearch parameter indicates whether the search results should include restricted content as well as standard content.", + "enum": [ + "moderate", + "none", + "strict" + ], + "enumDescriptions": [ + "YouTube will filter some content from search results and, at the least, will filter content that is restricted in your locale. Based on their content, search results could be removed from search results or demoted in search results. This is the default parameter value.", + "YouTube will not filter the search result set.", + "YouTube will try to exclude all restricted content from the search result set. Based on their content, search results could be removed from search results or demoted in search results." + ], + "location": "query", + "type": "string" + }, + "topicId": { + "description": "The topicId parameter indicates that the API response should only contain resources associated with the specified topic. The value identifies a Freebase topic ID.", + "location": "query", + "type": "string" + }, + "type": { + "default": "video,channel,playlist", + "description": "The type parameter restricts a search query to only retrieve a particular type of resource. The value is a comma-separated list of resource types.", + "location": "query", + "type": "string" + }, + "videoCaption": { + "description": "The videoCaption parameter indicates whether the API should filter video search results based on whether they have captions. If you specify a value for this parameter, you must also set the type parameter's value to video.", + "enum": [ + "any", + "closedCaption", + "none" + ], + "enumDescriptions": [ + "Do not filter results based on caption availability.", + "Only include videos that have captions.", + "Only include videos that do not have captions." + ], + "location": "query", + "type": "string" + }, + "videoCategoryId": { + "description": "The videoCategoryId parameter filters video search results based on their category. If you specify a value for this parameter, you must also set the type parameter's value to video.", + "location": "query", + "type": "string" + }, + "videoDefinition": { + "description": "The videoDefinition parameter lets you restrict a search to only include either high definition (HD) or standard definition (SD) videos. HD videos are available for playback in at least 720p, though higher resolutions, like 1080p, might also be available. If you specify a value for this parameter, you must also set the type parameter's value to video.", + "enum": [ + "any", + "high", + "standard" + ], + "enumDescriptions": [ + "Return all videos, regardless of their resolution.", + "Only retrieve HD videos.", + "Only retrieve videos in standard definition." + ], + "location": "query", + "type": "string" + }, + "videoDimension": { + "description": "The videoDimension parameter lets you restrict a search to only retrieve 2D or 3D videos. If you specify a value for this parameter, you must also set the type parameter's value to video.", + "enum": [ + "2d", + "3d", + "any" + ], + "enumDescriptions": [ + "Restrict search results to exclude 3D videos.", + "Restrict search results to only include 3D videos.", + "Include both 3D and non-3D videos in returned results. This is the default value." + ], + "location": "query", + "type": "string" + }, + "videoDuration": { + "description": "The videoDuration parameter filters video search results based on their duration. If you specify a value for this parameter, you must also set the type parameter's value to video.", + "enum": [ + "any", + "long", + "medium", + "short" + ], + "enumDescriptions": [ + "Do not filter video search results based on their duration. This is the default value.", + "Only include videos longer than 20 minutes.", + "Only include videos that are between four and 20 minutes long (inclusive).", + "Only include videos that are less than four minutes long." + ], + "location": "query", + "type": "string" + }, + "videoEmbeddable": { + "description": "The videoEmbeddable parameter lets you to restrict a search to only videos that can be embedded into a webpage. If you specify a value for this parameter, you must also set the type parameter's value to video.", + "enum": [ + "any", + "true" + ], + "enumDescriptions": [ + "Return all videos, embeddable or not.", + "Only retrieve embeddable videos." + ], + "location": "query", + "type": "string" + }, + "videoLicense": { + "description": "The videoLicense parameter filters search results to only include videos with a particular license. YouTube lets video uploaders choose to attach either the Creative Commons license or the standard YouTube license to each of their videos. If you specify a value for this parameter, you must also set the type parameter's value to video.", + "enum": [ + "any", + "creativeCommon", + "youtube" + ], + "enumDescriptions": [ + "Return all videos, regardless of which license they have, that match the query parameters.", + "Only return videos that have a Creative Commons license. Users can reuse videos with this license in other videos that they create. Learn more.", + "Only return videos that have the standard YouTube license." + ], + "location": "query", + "type": "string" + }, + "videoSyndicated": { + "description": "The videoSyndicated parameter lets you to restrict a search to only videos that can be played outside youtube.com. If you specify a value for this parameter, you must also set the type parameter's value to video.", + "enum": [ + "any", + "true" + ], + "enumDescriptions": [ + "Return all videos, syndicated or not.", + "Only retrieve syndicated videos." + ], + "location": "query", + "type": "string" + }, + "videoType": { + "description": "The videoType parameter lets you restrict a search to a particular type of videos. If you specify a value for this parameter, you must also set the type parameter's value to video.", + "enum": [ + "any", + "episode", + "movie" + ], + "enumDescriptions": [ + "Return all videos.", + "Only retrieve episodes of shows.", + "Only retrieve movies." + ], + "location": "query", + "type": "string" + } + }, + "path": "search", + "response": { + "$ref": "SearchListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/youtube", + "https://www.googleapis.com/auth/youtube.force-ssl", + "https://www.googleapis.com/auth/youtube.readonly", + "https://www.googleapis.com/auth/youtubepartner" + ] + } + } }, - "items": { - "type": "array", - "description": "A list of ChannelSections that match the request criteria.", - "items": { - "$ref": "ChannelSection" - } + "sponsors": { + "methods": { + "list": { + "description": "Lists sponsors for a channel.", + "httpMethod": "GET", + "id": "youtube.sponsors.list", + "parameterOrder": [ + "part" + ], + "parameters": { + "filter": { + "default": "POLL_NEWEST", + "description": "The filter parameter specifies which channel sponsors to return.", + "enum": [ + "all", + "newest" + ], + "enumDescriptions": [ + "Return all sponsors, from newest to oldest.", + "Return the most recent sponsors, from newest to oldest." + ], + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "5", + "description": "The maxResults parameter specifies the maximum number of items that should be returned in the result set.", + "format": "uint32", + "location": "query", + "maximum": "50", + "minimum": "0", + "type": "integer" + }, + "pageToken": { + "description": "The pageToken parameter identifies a specific page in the result set that should be returned. In an API response, the nextPageToken and prevPageToken properties identify other pages that could be retrieved.", + "location": "query", + "type": "string" + }, + "part": { + "description": "The part parameter specifies the sponsor resource parts that the API response will include. Supported values are id and snippet.", + "location": "query", + "required": true, + "type": "string" + } + }, + "path": "sponsors", + "response": { + "$ref": "SponsorListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/youtube", + "https://www.googleapis.com/auth/youtube.force-ssl", + "https://www.googleapis.com/auth/youtube.readonly" + ] + } + } }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"youtube#channelSectionListResponse\".", - "default": "youtube#channelSectionListResponse" + "subscriptions": { + "methods": { + "delete": { + "description": "Deletes a subscription.", + "httpMethod": "DELETE", + "id": "youtube.subscriptions.delete", + "parameterOrder": [ + "id" + ], + "parameters": { + "id": { + "description": "The id parameter specifies the YouTube subscription ID for the resource that is being deleted. In a subscription resource, the id property specifies the YouTube subscription ID.", + "location": "query", + "required": true, + "type": "string" + } + }, + "path": "subscriptions", + "scopes": [ + "https://www.googleapis.com/auth/youtube", + "https://www.googleapis.com/auth/youtube.force-ssl", + "https://www.googleapis.com/auth/youtubepartner" + ] + }, + "insert": { + "description": "Adds a subscription for the authenticated user's channel.", + "httpMethod": "POST", + "id": "youtube.subscriptions.insert", + "parameterOrder": [ + "part" + ], + "parameters": { + "part": { + "description": "The part parameter serves two purposes in this operation. It identifies the properties that the write operation will set as well as the properties that the API response will include.", + "location": "query", + "required": true, + "type": "string" + } + }, + "path": "subscriptions", + "request": { + "$ref": "Subscription" + }, + "response": { + "$ref": "Subscription" + }, + "scopes": [ + "https://www.googleapis.com/auth/youtube", + "https://www.googleapis.com/auth/youtube.force-ssl", + "https://www.googleapis.com/auth/youtubepartner" + ] + }, + "list": { + "description": "Returns subscription resources that match the API request criteria.", + "httpMethod": "GET", + "id": "youtube.subscriptions.list", + "parameterOrder": [ + "part" + ], + "parameters": { + "channelId": { + "description": "The channelId parameter specifies a YouTube channel ID. The API will only return that channel's subscriptions.", + "location": "query", + "type": "string" + }, + "forChannelId": { + "description": "The forChannelId parameter specifies a comma-separated list of channel IDs. The API response will then only contain subscriptions matching those channels.", + "location": "query", + "type": "string" + }, + "id": { + "description": "The id parameter specifies a comma-separated list of the YouTube subscription ID(s) for the resource(s) that are being retrieved. In a subscription resource, the id property specifies the YouTube subscription ID.", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "5", + "description": "The maxResults parameter specifies the maximum number of items that should be returned in the result set.", + "format": "uint32", + "location": "query", + "maximum": "50", + "minimum": "0", + "type": "integer" + }, + "mine": { + "description": "Set this parameter's value to true to retrieve a feed of the authenticated user's subscriptions.", + "location": "query", + "type": "boolean" + }, + "myRecentSubscribers": { + "description": "Set this parameter's value to true to retrieve a feed of the subscribers of the authenticated user in reverse chronological order (newest first).", + "location": "query", + "type": "boolean" + }, + "mySubscribers": { + "description": "Set this parameter's value to true to retrieve a feed of the subscribers of the authenticated user in no particular order.", + "location": "query", + "type": "boolean" + }, + "onBehalfOfContentOwner": { + "description": "Note: This parameter is intended exclusively for YouTube content partners.\n\nThe onBehalfOfContentOwner parameter indicates that the request's authorization credentials identify a YouTube CMS user who is acting on behalf of the content owner specified in the parameter value. This parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to provide authentication credentials for each individual channel. The CMS account that the user authenticates with must be linked to the specified YouTube content owner.", + "location": "query", + "type": "string" + }, + "onBehalfOfContentOwnerChannel": { + "description": "This parameter can only be used in a properly authorized request. Note: This parameter is intended exclusively for YouTube content partners.\n\nThe onBehalfOfContentOwnerChannel parameter specifies the YouTube channel ID of the channel to which a video is being added. This parameter is required when a request specifies a value for the onBehalfOfContentOwner parameter, and it can only be used in conjunction with that parameter. In addition, the request must be authorized using a CMS account that is linked to the content owner that the onBehalfOfContentOwner parameter specifies. Finally, the channel that the onBehalfOfContentOwnerChannel parameter value specifies must be linked to the content owner that the onBehalfOfContentOwner parameter specifies.\n\nThis parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and perform actions on behalf of the channel specified in the parameter value, without having to provide authentication credentials for each separate channel.", + "location": "query", + "type": "string" + }, + "order": { + "default": "SUBSCRIPTION_ORDER_RELEVANCE", + "description": "The order parameter specifies the method that will be used to sort resources in the API response.", + "enum": [ + "alphabetical", + "relevance", + "unread" + ], + "enumDescriptions": [ + "Sort alphabetically.", + "Sort by relevance.", + "Sort by order of activity." + ], + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "The pageToken parameter identifies a specific page in the result set that should be returned. In an API response, the nextPageToken and prevPageToken properties identify other pages that could be retrieved.", + "location": "query", + "type": "string" + }, + "part": { + "description": "The part parameter specifies a comma-separated list of one or more subscription resource properties that the API response will include.\n\nIf the parameter identifies a property that contains child properties, the child properties will be included in the response. For example, in a subscription resource, the snippet property contains other properties, such as a display title for the subscription. If you set part=snippet, the API response will also contain all of those nested properties.", + "location": "query", + "required": true, + "type": "string" + } + }, + "path": "subscriptions", + "response": { + "$ref": "SubscriptionListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/youtube", + "https://www.googleapis.com/auth/youtube.force-ssl", + "https://www.googleapis.com/auth/youtube.readonly", + "https://www.googleapis.com/auth/youtubepartner" + ] + } + } }, - "visitorId": { - "type": "string", - "description": "The visitorId identifies the visitor." - } - } - }, - "ChannelSectionLocalization": { - "id": "ChannelSectionLocalization", - "type": "object", - "description": "ChannelSection localization setting", - "properties": { - "title": { - "type": "string", - "description": "The localized strings for channel section's title." - } - } - }, - "ChannelSectionSnippet": { - "id": "ChannelSectionSnippet", - "type": "object", - "description": "Basic details about a channel section, including title, style and position.", - "properties": { - "channelId": { - "type": "string", - "description": "The ID that YouTube uses to uniquely identify the channel that published the channel section." - }, - "defaultLanguage": { - "type": "string", - "description": "The language of the channel section's default title and description." - }, - "localized": { - "$ref": "ChannelSectionLocalization", - "description": "Localized title, read-only." - }, - "position": { - "type": "integer", - "description": "The position of the channel section in the channel.", - "format": "uint32" - }, - "style": { - "type": "string", - "description": "The style of the channel section.", - "enum": [ - "channelsectionStyleUndefined", - "horizontalRow", - "verticalList" - ], - "enumDescriptions": [ - "", - "", - "" - ] - }, - "title": { - "type": "string", - "description": "The channel section's title for multiple_playlists and multiple_channels." - }, - "type": { - "type": "string", - "description": "The type of the channel section.", - "enum": [ - "allPlaylists", - "channelsectionTypeUndefined", - "completedEvents", - "likedPlaylists", - "likes", - "liveEvents", - "multipleChannels", - "multiplePlaylists", - "popularUploads", - "postedPlaylists", - "postedVideos", - "recentActivity", - "recentPosts", - "recentUploads", - "singlePlaylist", - "subscriptions", - "upcomingEvents" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - } - } - }, - "ChannelSectionTargeting": { - "id": "ChannelSectionTargeting", - "type": "object", - "description": "ChannelSection targeting setting.", - "properties": { - "countries": { - "type": "array", - "description": "The country the channel section is targeting.", - "items": { - "type": "string" - } - }, - "languages": { - "type": "array", - "description": "The language the channel section is targeting.", - "items": { - "type": "string" - } - }, - "regions": { - "type": "array", - "description": "The region the channel section is targeting.", - "items": { - "type": "string" - } - } - } - }, - "ChannelSettings": { - "id": "ChannelSettings", - "type": "object", - "description": "Branding properties for the channel view.", - "properties": { - "country": { - "type": "string", - "description": "The country of the channel." - }, - "defaultLanguage": { - "type": "string" - }, - "defaultTab": { - "type": "string", - "description": "Which content tab users should see when viewing the channel." - }, - "description": { - "type": "string", - "description": "Specifies the channel description." - }, - "featuredChannelsTitle": { - "type": "string", - "description": "Title for the featured channels tab." - }, - "featuredChannelsUrls": { - "type": "array", - "description": "The list of featured channels.", - "items": { - "type": "string" - } - }, - "keywords": { - "type": "string", - "description": "Lists keywords associated with the channel, comma-separated." - }, - "moderateComments": { - "type": "boolean", - "description": "Whether user-submitted comments left on the channel page need to be approved by the channel owner to be publicly visible." - }, - "profileColor": { - "type": "string", - "description": "A prominent color that can be rendered on this channel page." - }, - "showBrowseView": { - "type": "boolean", - "description": "Whether the tab to browse the videos should be displayed." - }, - "showRelatedChannels": { - "type": "boolean", - "description": "Whether related channels should be proposed." - }, - "title": { - "type": "string", - "description": "Specifies the channel title." - }, - "trackingAnalyticsAccountId": { - "type": "string", - "description": "The ID for a Google Analytics account to track and measure traffic to the channels." - }, - "unsubscribedTrailer": { - "type": "string", - "description": "The trailer of the channel, for users that are not subscribers." - } - } - }, - "ChannelSnippet": { - "id": "ChannelSnippet", - "type": "object", - "description": "Basic details about a channel, including title, description and thumbnails. Next available id: 15.", - "properties": { - "country": { - "type": "string", - "description": "The country of the channel." - }, - "customUrl": { - "type": "string", - "description": "The custom url of the channel." - }, - "defaultLanguage": { - "type": "string", - "description": "The language of the channel's default title and description." - }, - "description": { - "type": "string", - "description": "The description of the channel." - }, - "localized": { - "$ref": "ChannelLocalization", - "description": "Localized title and description, read-only." - }, - "publishedAt": { - "type": "string", - "description": "The date and time that the channel was created. The value is specified in ISO 8601 (YYYY-MM-DDThh:mm:ss.sZ) format.", - "format": "date-time" + "superChatEvents": { + "methods": { + "list": { + "description": "Lists Super Chat events for a channel.", + "httpMethod": "GET", + "id": "youtube.superChatEvents.list", + "parameterOrder": [ + "part" + ], + "parameters": { + "hl": { + "description": "The hl parameter instructs the API to retrieve localized resource metadata for a specific application language that the YouTube website supports. The parameter value must be a language code included in the list returned by the i18nLanguages.list method.\n\nIf localized resource details are available in that language, the resource's snippet.localized object will contain the localized values. However, if localized details are not available, the snippet.localized object will contain resource details in the resource's default language.", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "5", + "description": "The maxResults parameter specifies the maximum number of items that should be returned in the result set.", + "format": "uint32", + "location": "query", + "maximum": "50", + "minimum": "1", + "type": "integer" + }, + "pageToken": { + "description": "The pageToken parameter identifies a specific page in the result set that should be returned. In an API response, the nextPageToken and prevPageToken properties identify other pages that could be retrieved.", + "location": "query", + "type": "string" + }, + "part": { + "description": "The part parameter specifies the superChatEvent resource parts that the API response will include. Supported values are id and snippet.", + "location": "query", + "required": true, + "type": "string" + } + }, + "path": "superChatEvents", + "response": { + "$ref": "SuperChatEventListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/youtube", + "https://www.googleapis.com/auth/youtube.force-ssl", + "https://www.googleapis.com/auth/youtube.readonly" + ] + } + } }, "thumbnails": { - "$ref": "ThumbnailDetails", - "description": "A map of thumbnail images associated with the channel. For each object in the map, the key is the name of the thumbnail image, and the value is an object that contains other information about the thumbnail." - }, - "title": { - "type": "string", - "description": "The channel's title." - } - } - }, - "ChannelStatistics": { - "id": "ChannelStatistics", - "type": "object", - "description": "Statistics about a channel: number of subscribers, number of videos in the channel, etc.", - "properties": { - "commentCount": { - "type": "string", - "description": "The number of comments for the channel.", - "format": "uint64" - }, - "hiddenSubscriberCount": { - "type": "boolean", - "description": "Whether or not the number of subscribers is shown for this user." - }, - "subscriberCount": { - "type": "string", - "description": "The number of subscribers that the channel has.", - "format": "uint64" - }, - "videoCount": { - "type": "string", - "description": "The number of videos uploaded to the channel.", - "format": "uint64" - }, - "viewCount": { - "type": "string", - "description": "The number of times the channel has been viewed.", - "format": "uint64" - } - } - }, - "ChannelStatus": { - "id": "ChannelStatus", - "type": "object", - "description": "JSON template for the status part of a channel.", - "properties": { - "isLinked": { - "type": "boolean", - "description": "If true, then the user is linked to either a YouTube username or G+ account. Otherwise, the user doesn't have a public YouTube identity." - }, - "longUploadsStatus": { - "type": "string", - "description": "The long uploads status of this channel. See", - "enum": [ - "allowed", - "disallowed", - "eligible", - "longUploadsUnspecified" - ], - "enumDescriptions": [ - "", - "", - "", - "" - ] - }, - "privacyStatus": { - "type": "string", - "description": "Privacy status of the channel.", - "enum": [ - "private", - "public", - "unlisted" - ], - "enumDescriptions": [ - "", - "", - "" - ] - } - } - }, - "ChannelTopicDetails": { - "id": "ChannelTopicDetails", - "type": "object", - "description": "Freebase topic information related to the channel.", - "properties": { - "topicCategories": { - "type": "array", - "description": "A list of Wikipedia URLs that describe the channel's content.", - "items": { - "type": "string" - } - }, - "topicIds": { - "type": "array", - "description": "A list of Freebase topic IDs associated with the channel. You can retrieve information about each topic using the Freebase Topic API.", - "items": { - "type": "string" - } - } - } - }, - "Comment": { - "id": "Comment", - "type": "object", - "description": "A comment represents a single YouTube comment.", - "properties": { - "etag": { - "type": "string", - "description": "Etag of this resource." - }, - "id": { - "type": "string", - "description": "The ID that YouTube uses to uniquely identify the comment." - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"youtube#comment\".", - "default": "youtube#comment" - }, - "snippet": { - "$ref": "CommentSnippet", - "description": "The snippet object contains basic details about the comment." - } - } - }, - "CommentListResponse": { - "id": "CommentListResponse", - "type": "object", - "properties": { - "etag": { - "type": "string", - "description": "Etag of this resource." - }, - "eventId": { - "type": "string", - "description": "Serialized EventId of the request which produced this response." - }, - "items": { - "type": "array", - "description": "A list of comments that match the request criteria.", - "items": { - "$ref": "Comment" - } - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"youtube#commentListResponse\".", - "default": "youtube#commentListResponse" - }, - "nextPageToken": { - "type": "string", - "description": "The token that can be used as the value of the pageToken parameter to retrieve the next page in the result set." - }, - "pageInfo": { - "$ref": "PageInfo" - }, - "tokenPagination": { - "$ref": "TokenPagination" - }, - "visitorId": { - "type": "string", - "description": "The visitorId identifies the visitor." - } - } - }, - "CommentSnippet": { - "id": "CommentSnippet", - "type": "object", - "description": "Basic details about a comment, such as its author and text.", - "properties": { - "authorChannelId": { - "type": "any", - "description": "The id of the author's YouTube channel, if any." - }, - "authorChannelUrl": { - "type": "string", - "description": "Link to the author's YouTube channel, if any." - }, - "authorDisplayName": { - "type": "string", - "description": "The name of the user who posted the comment." - }, - "authorProfileImageUrl": { - "type": "string", - "description": "The URL for the avatar of the user who posted the comment." - }, - "canRate": { - "type": "boolean", - "description": "Whether the current viewer can rate this comment." - }, - "channelId": { - "type": "string", - "description": "The id of the corresponding YouTube channel. In case of a channel comment this is the channel the comment refers to. In case of a video comment it's the video's channel." - }, - "likeCount": { - "type": "integer", - "description": "The total number of likes this comment has received.", - "format": "uint32" - }, - "moderationStatus": { - "type": "string", - "description": "The comment's moderation status. Will not be set if the comments were requested through the id filter.", - "enum": [ - "heldForReview", - "likelySpam", - "published", - "rejected" - ], - "enumDescriptions": [ - "", - "", - "", - "" - ] - }, - "parentId": { - "type": "string", - "description": "The unique id of the parent comment, only set for replies." - }, - "publishedAt": { - "type": "string", - "description": "The date and time when the comment was orignally published. The value is specified in ISO 8601 (YYYY-MM-DDThh:mm:ss.sZ) format.", - "format": "date-time" - }, - "textDisplay": { - "type": "string", - "description": "The comment's text. The format is either plain text or HTML dependent on what has been requested. Even the plain text representation may differ from the text originally posted in that it may replace video links with video titles etc." - }, - "textOriginal": { - "type": "string", - "description": "The comment's original raw text as initially posted or last updated. The original text will only be returned if it is accessible to the viewer, which is only guaranteed if the viewer is the comment's author." - }, - "updatedAt": { - "type": "string", - "description": "The date and time when was last updated . The value is specified in ISO 8601 (YYYY-MM-DDThh:mm:ss.sZ) format.", - "format": "date-time" - }, - "videoId": { - "type": "string", - "description": "The ID of the video the comment refers to, if any." - }, - "viewerRating": { - "type": "string", - "description": "The rating the viewer has given to this comment. For the time being this will never return RATE_TYPE_DISLIKE and instead return RATE_TYPE_NONE. This may change in the future.", - "enum": [ - "dislike", - "like", - "none", - "unspecified" - ], - "enumDescriptions": [ - "", - "", - "", - "" - ] - } - } - }, - "CommentThread": { - "id": "CommentThread", - "type": "object", - "description": "A comment thread represents information that applies to a top level comment and all its replies. It can also include the top level comment itself and some of the replies.", - "properties": { - "etag": { - "type": "string", - "description": "Etag of this resource." - }, - "id": { - "type": "string", - "description": "The ID that YouTube uses to uniquely identify the comment thread." - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"youtube#commentThread\".", - "default": "youtube#commentThread" - }, - "replies": { - "$ref": "CommentThreadReplies", - "description": "The replies object contains a limited number of replies (if any) to the top level comment found in the snippet." - }, - "snippet": { - "$ref": "CommentThreadSnippet", - "description": "The snippet object contains basic details about the comment thread and also the top level comment." - } - } - }, - "CommentThreadListResponse": { - "id": "CommentThreadListResponse", - "type": "object", - "properties": { - "etag": { - "type": "string", - "description": "Etag of this resource." - }, - "eventId": { - "type": "string", - "description": "Serialized EventId of the request which produced this response." - }, - "items": { - "type": "array", - "description": "A list of comment threads that match the request criteria.", - "items": { - "$ref": "CommentThread" - } - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"youtube#commentThreadListResponse\".", - "default": "youtube#commentThreadListResponse" - }, - "nextPageToken": { - "type": "string", - "description": "The token that can be used as the value of the pageToken parameter to retrieve the next page in the result set." - }, - "pageInfo": { - "$ref": "PageInfo" - }, - "tokenPagination": { - "$ref": "TokenPagination" - }, - "visitorId": { - "type": "string", - "description": "The visitorId identifies the visitor." - } - } - }, - "CommentThreadReplies": { - "id": "CommentThreadReplies", - "type": "object", - "description": "Comments written in (direct or indirect) reply to the top level comment.", - "properties": { - "comments": { - "type": "array", - "description": "A limited number of replies. Unless the number of replies returned equals total_reply_count in the snippet the returned replies are only a subset of the total number of replies.", - "items": { - "$ref": "Comment" - } - } - } - }, - "CommentThreadSnippet": { - "id": "CommentThreadSnippet", - "type": "object", - "description": "Basic details about a comment thread.", - "properties": { - "canReply": { - "type": "boolean", - "description": "Whether the current viewer of the thread can reply to it. This is viewer specific - other viewers may see a different value for this field." - }, - "channelId": { - "type": "string", - "description": "The YouTube channel the comments in the thread refer to or the channel with the video the comments refer to. If video_id isn't set the comments refer to the channel itself." - }, - "isPublic": { - "type": "boolean", - "description": "Whether the thread (and therefore all its comments) is visible to all YouTube users." - }, - "topLevelComment": { - "$ref": "Comment", - "description": "The top level comment of this thread." - }, - "totalReplyCount": { - "type": "integer", - "description": "The total number of replies (not including the top level comment).", - "format": "uint32" - }, - "videoId": { - "type": "string", - "description": "The ID of the video the comments refer to, if any. No video_id implies a channel discussion comment." - } - } - }, - "ContentRating": { - "id": "ContentRating", - "type": "object", - "description": "Ratings schemes. The country-specific ratings are mostly for movies and shows. NEXT_ID: 71", - "properties": { - "acbRating": { - "type": "string", - "description": "The video's Australian Classification Board (ACB) or Australian Communications and Media Authority (ACMA) rating. ACMA ratings are used to classify children's television programming.", - "enum": [ - "acbC", - "acbE", - "acbG", - "acbM", - "acbMa15plus", - "acbP", - "acbPg", - "acbR18plus", - "acbUnrated" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "agcomRating": { - "type": "string", - "description": "The video's rating from Italy's Autorità per le Garanzie nelle Comunicazioni (AGCOM).", - "enum": [ - "agcomT", - "agcomUnrated", - "agcomVm14", - "agcomVm18" - ], - "enumDescriptions": [ - "", - "", - "", - "" - ] - }, - "anatelRating": { - "type": "string", - "description": "The video's Anatel (Asociación Nacional de Televisión) rating for Chilean television.", - "enum": [ - "anatelA", - "anatelF", - "anatelI", - "anatelI10", - "anatelI12", - "anatelI7", - "anatelR", - "anatelUnrated" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "bbfcRating": { - "type": "string", - "description": "The video's British Board of Film Classification (BBFC) rating.", - "enum": [ - "bbfc12", - "bbfc12a", - "bbfc15", - "bbfc18", - "bbfcPg", - "bbfcR18", - "bbfcU", - "bbfcUnrated" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "bfvcRating": { - "type": "string", - "description": "The video's rating from Thailand's Board of Film and Video Censors.", - "enum": [ - "bfvc13", - "bfvc15", - "bfvc18", - "bfvc20", - "bfvcB", - "bfvcE", - "bfvcG", - "bfvcUnrated" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "bmukkRating": { - "type": "string", - "description": "The video's rating from the Austrian Board of Media Classification (Bundesministerium für Unterricht, Kunst und Kultur).", - "enum": [ - "bmukk10", - "bmukk12", - "bmukk14", - "bmukk16", - "bmukk6", - "bmukk8", - "bmukkAa", - "bmukkUnrated" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "catvRating": { - "type": "string", - "description": "Rating system for Canadian TV - Canadian TV Classification System The video's rating from the Canadian Radio-Television and Telecommunications Commission (CRTC) for Canadian English-language broadcasts. For more information, see the Canadian Broadcast Standards Council website.", - "enum": [ - "catv14plus", - "catv18plus", - "catvC", - "catvC8", - "catvG", - "catvPg", - "catvUnrated" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "" - ] - }, - "catvfrRating": { - "type": "string", - "description": "The video's rating from the Canadian Radio-Television and Telecommunications Commission (CRTC) for Canadian French-language broadcasts. For more information, see the Canadian Broadcast Standards Council website.", - "enum": [ - "catvfr13plus", - "catvfr16plus", - "catvfr18plus", - "catvfr8plus", - "catvfrG", - "catvfrUnrated" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "" - ] - }, - "cbfcRating": { - "type": "string", - "description": "The video's Central Board of Film Certification (CBFC - India) rating.", - "enum": [ - "cbfcA", - "cbfcS", - "cbfcU", - "cbfcUA", - "cbfcUnrated" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "" - ] - }, - "cccRating": { - "type": "string", - "description": "The video's Consejo de Calificación Cinematográfica (Chile) rating.", - "enum": [ - "ccc14", - "ccc18", - "ccc18s", - "ccc18v", - "ccc6", - "cccTe", - "cccUnrated" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "" - ] - }, - "cceRating": { - "type": "string", - "description": "The video's rating from Portugal's Comissão de Classificação de Espect´culos.", - "enum": [ - "cceM12", - "cceM14", - "cceM16", - "cceM18", - "cceM4", - "cceM6", - "cceUnrated" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "" - ] - }, - "chfilmRating": { - "type": "string", - "description": "The video's rating in Switzerland.", - "enum": [ - "chfilm0", - "chfilm12", - "chfilm16", - "chfilm18", - "chfilm6", - "chfilmUnrated" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "" - ] - }, - "chvrsRating": { - "type": "string", - "description": "The video's Canadian Home Video Rating System (CHVRS) rating.", - "enum": [ - "chvrs14a", - "chvrs18a", - "chvrsE", - "chvrsG", - "chvrsPg", - "chvrsR", - "chvrsUnrated" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "" - ] - }, - "cicfRating": { - "type": "string", - "description": "The video's rating from the Commission de Contrôle des Films (Belgium).", - "enum": [ - "cicfE", - "cicfKntEna", - "cicfKtEa", - "cicfUnrated" - ], - "enumDescriptions": [ - "", - "", - "", - "" - ] - }, - "cnaRating": { - "type": "string", - "description": "The video's rating from Romania's CONSILIUL NATIONAL AL AUDIOVIZUALULUI (CNA).", - "enum": [ - "cna12", - "cna15", - "cna18", - "cna18plus", - "cnaAp", - "cnaUnrated" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "" - ] - }, - "cncRating": { - "type": "string", - "description": "Rating system in France - Commission de classification cinematographique", - "enum": [ - "cnc10", - "cnc12", - "cnc16", - "cnc18", - "cncE", - "cncT", - "cncUnrated" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "" - ] - }, - "csaRating": { - "type": "string", - "description": "The video's rating from France's Conseil supérieur de l?audiovisuel, which rates broadcast content.", - "enum": [ - "csa10", - "csa12", - "csa16", - "csa18", - "csaInterdiction", - "csaT", - "csaUnrated" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "" - ] - }, - "cscfRating": { - "type": "string", - "description": "The video's rating from Luxembourg's Commission de surveillance de la classification des films (CSCF).", - "enum": [ - "cscf12", - "cscf16", - "cscf18", - "cscf6", - "cscf9", - "cscfA", - "cscfAl", - "cscfUnrated" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "czfilmRating": { - "type": "string", - "description": "The video's rating in the Czech Republic.", - "enum": [ - "czfilm12", - "czfilm14", - "czfilm18", - "czfilmU", - "czfilmUnrated" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "" - ] - }, - "djctqRating": { - "type": "string", - "description": "The video's Departamento de Justiça, Classificação, Qualificação e Títulos (DJCQT - Brazil) rating.", - "enum": [ - "djctq10", - "djctq12", - "djctq14", - "djctq16", - "djctq18", - "djctqL", - "djctqUnrated" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "" - ] - }, - "djctqRatingReasons": { - "type": "array", - "description": "Reasons that explain why the video received its DJCQT (Brazil) rating.", - "items": { - "type": "string", - "enum": [ - "djctqCriminalActs", - "djctqDrugs", - "djctqExplicitSex", - "djctqExtremeViolence", - "djctqIllegalDrugs", - "djctqImpactingContent", - "djctqInappropriateLanguage", - "djctqLegalDrugs", - "djctqNudity", - "djctqSex", - "djctqSexualContent", - "djctqViolence" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - } - }, - "ecbmctRating": { - "type": "string", - "description": "Rating system in Turkey - Evaluation and Classification Board of the Ministry of Culture and Tourism", - "enum": [ - "ecbmct13a", - "ecbmct13plus", - "ecbmct15a", - "ecbmct15plus", - "ecbmct18plus", - "ecbmct7a", - "ecbmct7plus", - "ecbmctG", - "ecbmctUnrated" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "eefilmRating": { - "type": "string", - "description": "The video's rating in Estonia.", - "enum": [ - "eefilmK12", - "eefilmK14", - "eefilmK16", - "eefilmK6", - "eefilmL", - "eefilmMs12", - "eefilmMs6", - "eefilmPere", - "eefilmUnrated" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "egfilmRating": { - "type": "string", - "description": "The video's rating in Egypt.", - "enum": [ - "egfilm18", - "egfilmBn", - "egfilmGn", - "egfilmUnrated" - ], - "enumDescriptions": [ - "", - "", - "", - "" - ] - }, - "eirinRating": { - "type": "string", - "description": "The video's Eirin (映倫) rating. Eirin is the Japanese rating system.", - "enum": [ - "eirinG", - "eirinPg12", - "eirinR15plus", - "eirinR18plus", - "eirinUnrated" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "" - ] - }, - "fcbmRating": { - "type": "string", - "description": "The video's rating from Malaysia's Film Censorship Board.", - "enum": [ - "fcbm18", - "fcbm18pa", - "fcbm18pl", - "fcbm18sg", - "fcbm18sx", - "fcbmP13", - "fcbmPg13", - "fcbmU", - "fcbmUnrated" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "fcoRating": { - "type": "string", - "description": "The video's rating from Hong Kong's Office for Film, Newspaper and Article Administration.", - "enum": [ - "fcoI", - "fcoIi", - "fcoIia", - "fcoIib", - "fcoIii", - "fcoUnrated" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "" - ] - }, - "fmocRating": { - "type": "string", - "description": "This property has been deprecated. Use the contentDetails.contentRating.cncRating instead.", - "enum": [ - "fmoc10", - "fmoc12", - "fmoc16", - "fmoc18", - "fmocE", - "fmocU", - "fmocUnrated" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "" - ] - }, - "fpbRating": { - "type": "string", - "description": "The video's rating from South Africa's Film and Publication Board.", - "enum": [ - "fpb10", - "fpb1012Pg", - "fpb13", - "fpb16", - "fpb18", - "fpb79Pg", - "fpbA", - "fpbPg", - "fpbUnrated", - "fpbX18", - "fpbXx" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "fpbRatingReasons": { - "type": "array", - "description": "Reasons that explain why the video received its FPB (South Africa) rating.", - "items": { - "type": "string", - "enum": [ - "fpbBlasphemy", - "fpbCriminalTechniques", - "fpbDrugs", - "fpbHorror", - "fpbImitativeActsTechniques", - "fpbLanguage", - "fpbNudity", - "fpbPrejudice", - "fpbSex", - "fpbSexualViolence", - "fpbViolence" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - } - }, - "fskRating": { - "type": "string", - "description": "The video's Freiwillige Selbstkontrolle der Filmwirtschaft (FSK - Germany) rating.", - "enum": [ - "fsk0", - "fsk12", - "fsk16", - "fsk18", - "fsk6", - "fskUnrated" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "" - ] - }, - "grfilmRating": { - "type": "string", - "description": "The video's rating in Greece.", - "enum": [ - "grfilmE", - "grfilmK", - "grfilmK12", - "grfilmK13", - "grfilmK15", - "grfilmK17", - "grfilmK18", - "grfilmUnrated" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "icaaRating": { - "type": "string", - "description": "The video's Instituto de la Cinematografía y de las Artes Audiovisuales (ICAA - Spain) rating.", - "enum": [ - "icaa12", - "icaa13", - "icaa16", - "icaa18", - "icaa7", - "icaaApta", - "icaaUnrated", - "icaaX" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "ifcoRating": { - "type": "string", - "description": "The video's Irish Film Classification Office (IFCO - Ireland) rating. See the IFCO website for more information.", - "enum": [ - "ifco12", - "ifco12a", - "ifco15", - "ifco15a", - "ifco16", - "ifco18", - "ifcoG", - "ifcoPg", - "ifcoUnrated" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "ilfilmRating": { - "type": "string", - "description": "The video's rating in Israel.", - "enum": [ - "ilfilm12", - "ilfilm16", - "ilfilm18", - "ilfilmAa", - "ilfilmUnrated" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "" - ] - }, - "incaaRating": { - "type": "string", - "description": "The video's INCAA (Instituto Nacional de Cine y Artes Audiovisuales - Argentina) rating.", - "enum": [ - "incaaAtp", - "incaaC", - "incaaSam13", - "incaaSam16", - "incaaSam18", - "incaaUnrated" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "" - ] - }, - "kfcbRating": { - "type": "string", - "description": "The video's rating from the Kenya Film Classification Board.", - "enum": [ - "kfcb16plus", - "kfcbG", - "kfcbPg", - "kfcbR", - "kfcbUnrated" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "" - ] - }, - "kijkwijzerRating": { - "type": "string", - "description": "voor de Classificatie van Audiovisuele Media (Netherlands).", - "enum": [ - "kijkwijzer12", - "kijkwijzer16", - "kijkwijzer18", - "kijkwijzer6", - "kijkwijzer9", - "kijkwijzerAl", - "kijkwijzerUnrated" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "" - ] - }, - "kmrbRating": { - "type": "string", - "description": "The video's Korea Media Rating Board (영상물등급위원회) rating. The KMRB rates videos in South Korea.", - "enum": [ - "kmrb12plus", - "kmrb15plus", - "kmrbAll", - "kmrbR", - "kmrbTeenr", - "kmrbUnrated" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "" - ] - }, - "lsfRating": { - "type": "string", - "description": "The video's rating from Indonesia's Lembaga Sensor Film.", - "enum": [ - "lsf13", - "lsf17", - "lsf21", - "lsfA", - "lsfBo", - "lsfD", - "lsfR", - "lsfSu", - "lsfUnrated" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "mccaaRating": { - "type": "string", - "description": "The video's rating from Malta's Film Age-Classification Board.", - "enum": [ - "mccaa12", - "mccaa12a", - "mccaa14", - "mccaa15", - "mccaa16", - "mccaa18", - "mccaaPg", - "mccaaU", - "mccaaUnrated" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "mccypRating": { - "type": "string", - "description": "The video's rating from the Danish Film Institute's (Det Danske Filminstitut) Media Council for Children and Young People.", - "enum": [ - "mccyp11", - "mccyp15", - "mccyp7", - "mccypA", - "mccypUnrated" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "" - ] - }, - "mcstRating": { - "type": "string", - "description": "The video's rating system for Vietnam - MCST", - "enum": [ - "mcst0", - "mcst16plus", - "mcstC13", - "mcstC16", - "mcstC18", - "mcstGPg", - "mcstP", - "mcstUnrated" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "mdaRating": { - "type": "string", - "description": "The video's rating from Singapore's Media Development Authority (MDA) and, specifically, it's Board of Film Censors (BFC).", - "enum": [ - "mdaG", - "mdaM18", - "mdaNc16", - "mdaPg", - "mdaPg13", - "mdaR21", - "mdaUnrated" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "" - ] - }, - "medietilsynetRating": { - "type": "string", - "description": "The video's rating from Medietilsynet, the Norwegian Media Authority.", - "enum": [ - "medietilsynet11", - "medietilsynet12", - "medietilsynet15", - "medietilsynet18", - "medietilsynet6", - "medietilsynet7", - "medietilsynet9", - "medietilsynetA", - "medietilsynetUnrated" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "mekuRating": { - "type": "string", - "description": "The video's rating from Finland's Kansallinen Audiovisuaalinen Instituutti (National Audiovisual Institute).", - "enum": [ - "meku12", - "meku16", - "meku18", - "meku7", - "mekuS", - "mekuUnrated" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "" - ] - }, - "menaMpaaRating": { - "type": "string", - "description": "The rating system for MENA countries, a clone of MPAA. It is needed to", - "enum": [ - "menaMpaaG", - "menaMpaaPg", - "menaMpaaPg13", - "menaMpaaR", - "menaMpaaUnrated" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "" - ] - }, - "mibacRating": { - "type": "string", - "description": "The video's rating from the Ministero dei Beni e delle Attività Culturali e del Turismo (Italy).", - "enum": [ - "mibacT", - "mibacUnrated", - "mibacVap", - "mibacVm12", - "mibacVm14", - "mibacVm18" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "" - ] - }, - "mocRating": { - "type": "string", - "description": "The video's Ministerio de Cultura (Colombia) rating.", - "enum": [ - "moc12", - "moc15", - "moc18", - "moc7", - "mocBanned", - "mocE", - "mocT", - "mocUnrated", - "mocX" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "moctwRating": { - "type": "string", - "description": "The video's rating from Taiwan's Ministry of Culture (文化部).", - "enum": [ - "moctwG", - "moctwP", - "moctwPg", - "moctwR", - "moctwR12", - "moctwR15", - "moctwUnrated" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "" - ] - }, - "mpaaRating": { - "type": "string", - "description": "The video's Motion Picture Association of America (MPAA) rating.", - "enum": [ - "mpaaG", - "mpaaNc17", - "mpaaPg", - "mpaaPg13", - "mpaaR", - "mpaaUnrated" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "" - ] - }, - "mpaatRating": { - "type": "string", - "description": "The rating system for trailer, DVD, and Ad in the US. See http://movielabs.com/md/ratings/v2.3/html/US_MPAAT_Ratings.html.", - "enum": [ - "mpaatGb", - "mpaatRb" - ], - "enumDescriptions": [ - "", - "" - ] - }, - "mtrcbRating": { - "type": "string", - "description": "The video's rating from the Movie and Television Review and Classification Board (Philippines).", - "enum": [ - "mtrcbG", - "mtrcbPg", - "mtrcbR13", - "mtrcbR16", - "mtrcbR18", - "mtrcbUnrated", - "mtrcbX" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "" - ] - }, - "nbcRating": { - "type": "string", - "description": "The video's rating from the Maldives National Bureau of Classification.", - "enum": [ - "nbc12plus", - "nbc15plus", - "nbc18plus", - "nbc18plusr", - "nbcG", - "nbcPg", - "nbcPu", - "nbcUnrated" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "nbcplRating": { - "type": "string", - "description": "The video's rating in Poland.", - "enum": [ - "nbcpl18plus", - "nbcplI", - "nbcplIi", - "nbcplIii", - "nbcplIv", - "nbcplUnrated" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "" - ] - }, - "nfrcRating": { - "type": "string", - "description": "The video's rating from the Bulgarian National Film Center.", - "enum": [ - "nfrcA", - "nfrcB", - "nfrcC", - "nfrcD", - "nfrcUnrated", - "nfrcX" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "" - ] - }, - "nfvcbRating": { - "type": "string", - "description": "The video's rating from Nigeria's National Film and Video Censors Board.", - "enum": [ - "nfvcb12", - "nfvcb12a", - "nfvcb15", - "nfvcb18", - "nfvcbG", - "nfvcbPg", - "nfvcbRe", - "nfvcbUnrated" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "nkclvRating": { - "type": "string", - "description": "The video's rating from the Nacionãlais Kino centrs (National Film Centre of Latvia).", - "enum": [ - "nkclv12plus", - "nkclv18plus", - "nkclv7plus", - "nkclvU", - "nkclvUnrated" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "" - ] - }, - "oflcRating": { - "type": "string", - "description": "The video's Office of Film and Literature Classification (OFLC - New Zealand) rating.", - "enum": [ - "oflcG", - "oflcM", - "oflcPg", - "oflcR13", - "oflcR15", - "oflcR16", - "oflcR18", - "oflcRp13", - "oflcRp16", - "oflcRp18", - "oflcUnrated" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "pefilmRating": { - "type": "string", - "description": "The video's rating in Peru.", - "enum": [ - "pefilm14", - "pefilm18", - "pefilmPg", - "pefilmPt", - "pefilmUnrated" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "" - ] - }, - "rcnofRating": { - "type": "string", - "description": "The video's rating from the Hungarian Nemzeti Filmiroda, the Rating Committee of the National Office of Film.", - "enum": [ - "rcnofI", - "rcnofIi", - "rcnofIii", - "rcnofIv", - "rcnofUnrated", - "rcnofV", - "rcnofVi" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "" - ] - }, - "resorteviolenciaRating": { - "type": "string", - "description": "The video's rating in Venezuela.", - "enum": [ - "resorteviolenciaA", - "resorteviolenciaB", - "resorteviolenciaC", - "resorteviolenciaD", - "resorteviolenciaE", - "resorteviolenciaUnrated" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "" - ] - }, - "rtcRating": { - "type": "string", - "description": "The video's General Directorate of Radio, Television and Cinematography (Mexico) rating.", - "enum": [ - "rtcA", - "rtcAa", - "rtcB", - "rtcB15", - "rtcC", - "rtcD", - "rtcUnrated" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "" - ] - }, - "rteRating": { - "type": "string", - "description": "The video's rating from Ireland's Raidió Teilifís Éireann.", - "enum": [ - "rteCh", - "rteGa", - "rteMa", - "rtePs", - "rteUnrated" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "" - ] - }, - "russiaRating": { - "type": "string", - "description": "The video's National Film Registry of the Russian Federation (MKRF - Russia) rating.", - "enum": [ - "russia0", - "russia12", - "russia16", - "russia18", - "russia6", - "russiaUnrated" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "" - ] - }, - "skfilmRating": { - "type": "string", - "description": "The video's rating in Slovakia.", - "enum": [ - "skfilmG", - "skfilmP2", - "skfilmP5", - "skfilmP8", - "skfilmUnrated" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "" - ] - }, - "smaisRating": { - "type": "string", - "description": "The video's rating in Iceland.", - "enum": [ - "smais12", - "smais14", - "smais16", - "smais18", - "smais7", - "smaisL", - "smaisUnrated" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "" - ] - }, - "smsaRating": { - "type": "string", - "description": "The video's rating from Statens medieråd (Sweden's National Media Council).", - "enum": [ - "smsa11", - "smsa15", - "smsa7", - "smsaA", - "smsaUnrated" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "" - ] - }, - "tvpgRating": { - "type": "string", - "description": "The video's TV Parental Guidelines (TVPG) rating.", - "enum": [ - "pg14", - "tvpgG", - "tvpgMa", - "tvpgPg", - "tvpgUnrated", - "tvpgY", - "tvpgY7", - "tvpgY7Fv" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "ytRating": { - "type": "string", - "description": "A rating that YouTube uses to identify age-restricted content.", - "enum": [ - "ytAgeRestricted" - ], - "enumDescriptions": [ - "" - ] - } - } - }, - "FanFundingEvent": { - "id": "FanFundingEvent", - "type": "object", - "description": "A fanFundingEvent resource represents a fan funding event on a YouTube channel. Fan funding events occur when a user gives one-time monetary support to the channel owner.", - "properties": { - "etag": { - "type": "string", - "description": "Etag of this resource." - }, - "id": { - "type": "string", - "description": "The ID that YouTube assigns to uniquely identify the fan funding event." - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"youtube#fanFundingEvent\".", - "default": "youtube#fanFundingEvent" - }, - "snippet": { - "$ref": "FanFundingEventSnippet", - "description": "The snippet object contains basic details about the fan funding event." - } - } - }, - "FanFundingEventListResponse": { - "id": "FanFundingEventListResponse", - "type": "object", - "properties": { - "etag": { - "type": "string", - "description": "Etag of this resource." - }, - "eventId": { - "type": "string", - "description": "Serialized EventId of the request which produced this response." - }, - "items": { - "type": "array", - "description": "A list of fan funding events that match the request criteria.", - "items": { - "$ref": "FanFundingEvent" - } - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"youtube#fanFundingEventListResponse\".", - "default": "youtube#fanFundingEventListResponse" - }, - "nextPageToken": { - "type": "string", - "description": "The token that can be used as the value of the pageToken parameter to retrieve the next page in the result set." - }, - "pageInfo": { - "$ref": "PageInfo" - }, - "tokenPagination": { - "$ref": "TokenPagination" - }, - "visitorId": { - "type": "string", - "description": "The visitorId identifies the visitor." - } - } - }, - "FanFundingEventSnippet": { - "id": "FanFundingEventSnippet", - "type": "object", - "properties": { - "amountMicros": { - "type": "string", - "description": "The amount of funding in micros of fund_currency. e.g., 1 is represented", - "format": "uint64" - }, - "channelId": { - "type": "string", - "description": "Channel id where the funding event occurred." - }, - "commentText": { - "type": "string", - "description": "The text contents of the comment left by the user." - }, - "createdAt": { - "type": "string", - "description": "The date and time when the funding occurred. The value is specified in ISO 8601 (YYYY-MM-DDThh:mm:ss.sZ) format.", - "format": "date-time" - }, - "currency": { - "type": "string", - "description": "The currency in which the fund was made. ISO 4217." - }, - "displayString": { - "type": "string", - "description": "A rendered string that displays the fund amount and currency (e.g., \"$1.00\"). The string is rendered for the given language." - }, - "supporterDetails": { - "$ref": "ChannelProfileDetails", - "description": "Details about the supporter. Only filled if the event was made public by the user." - } - } - }, - "GeoPoint": { - "id": "GeoPoint", - "type": "object", - "description": "Geographical coordinates of a point, in WGS84.", - "properties": { - "altitude": { - "type": "number", - "description": "Altitude above the reference ellipsoid, in meters.", - "format": "double" - }, - "latitude": { - "type": "number", - "description": "Latitude in degrees.", - "format": "double" - }, - "longitude": { - "type": "number", - "description": "Longitude in degrees.", - "format": "double" - } - } - }, - "GuideCategory": { - "id": "GuideCategory", - "type": "object", - "description": "A guideCategory resource identifies a category that YouTube algorithmically assigns based on a channel's content or other indicators, such as the channel's popularity. The list is similar to video categories, with the difference being that a video's uploader can assign a video category but only YouTube can assign a channel category.", - "properties": { - "etag": { - "type": "string", - "description": "Etag of this resource." - }, - "id": { - "type": "string", - "description": "The ID that YouTube uses to uniquely identify the guide category." - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"youtube#guideCategory\".", - "default": "youtube#guideCategory" - }, - "snippet": { - "$ref": "GuideCategorySnippet", - "description": "The snippet object contains basic details about the category, such as its title." - } - } - }, - "GuideCategoryListResponse": { - "id": "GuideCategoryListResponse", - "type": "object", - "properties": { - "etag": { - "type": "string", - "description": "Etag of this resource." - }, - "eventId": { - "type": "string", - "description": "Serialized EventId of the request which produced this response." - }, - "items": { - "type": "array", - "description": "A list of categories that can be associated with YouTube channels. In this map, the category ID is the map key, and its value is the corresponding guideCategory resource.", - "items": { - "$ref": "GuideCategory" - } - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"youtube#guideCategoryListResponse\".", - "default": "youtube#guideCategoryListResponse" - }, - "nextPageToken": { - "type": "string", - "description": "The token that can be used as the value of the pageToken parameter to retrieve the next page in the result set." - }, - "pageInfo": { - "$ref": "PageInfo" - }, - "prevPageToken": { - "type": "string", - "description": "The token that can be used as the value of the pageToken parameter to retrieve the previous page in the result set." - }, - "tokenPagination": { - "$ref": "TokenPagination" - }, - "visitorId": { - "type": "string", - "description": "The visitorId identifies the visitor." - } - } - }, - "GuideCategorySnippet": { - "id": "GuideCategorySnippet", - "type": "object", - "description": "Basic details about a guide category.", - "properties": { - "channelId": { - "type": "string", - "default": "UCBR8-60-B28hp2BmDPdntcQ" - }, - "title": { - "type": "string", - "description": "Description of the guide category." - } - } - }, - "I18nLanguage": { - "id": "I18nLanguage", - "type": "object", - "description": "An i18nLanguage resource identifies a UI language currently supported by YouTube.", - "properties": { - "etag": { - "type": "string", - "description": "Etag of this resource." - }, - "id": { - "type": "string", - "description": "The ID that YouTube uses to uniquely identify the i18n language." - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"youtube#i18nLanguage\".", - "default": "youtube#i18nLanguage" - }, - "snippet": { - "$ref": "I18nLanguageSnippet", - "description": "The snippet object contains basic details about the i18n language, such as language code and human-readable name." - } - } - }, - "I18nLanguageListResponse": { - "id": "I18nLanguageListResponse", - "type": "object", - "properties": { - "etag": { - "type": "string", - "description": "Etag of this resource." - }, - "eventId": { - "type": "string", - "description": "Serialized EventId of the request which produced this response." - }, - "items": { - "type": "array", - "description": "A list of supported i18n languages. In this map, the i18n language ID is the map key, and its value is the corresponding i18nLanguage resource.", - "items": { - "$ref": "I18nLanguage" - } - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"youtube#i18nLanguageListResponse\".", - "default": "youtube#i18nLanguageListResponse" - }, - "visitorId": { - "type": "string", - "description": "The visitorId identifies the visitor." - } - } - }, - "I18nLanguageSnippet": { - "id": "I18nLanguageSnippet", - "type": "object", - "description": "Basic details about an i18n language, such as language code and human-readable name.", - "properties": { - "hl": { - "type": "string", - "description": "A short BCP-47 code that uniquely identifies a language." - }, - "name": { - "type": "string", - "description": "The human-readable name of the language in the language itself." - } - } - }, - "I18nRegion": { - "id": "I18nRegion", - "type": "object", - "description": "A i18nRegion resource identifies a region where YouTube is available.", - "properties": { - "etag": { - "type": "string", - "description": "Etag of this resource." - }, - "id": { - "type": "string", - "description": "The ID that YouTube uses to uniquely identify the i18n region." - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"youtube#i18nRegion\".", - "default": "youtube#i18nRegion" - }, - "snippet": { - "$ref": "I18nRegionSnippet", - "description": "The snippet object contains basic details about the i18n region, such as region code and human-readable name." - } - } - }, - "I18nRegionListResponse": { - "id": "I18nRegionListResponse", - "type": "object", - "properties": { - "etag": { - "type": "string", - "description": "Etag of this resource." - }, - "eventId": { - "type": "string", - "description": "Serialized EventId of the request which produced this response." - }, - "items": { - "type": "array", - "description": "A list of regions where YouTube is available. In this map, the i18n region ID is the map key, and its value is the corresponding i18nRegion resource.", - "items": { - "$ref": "I18nRegion" - } - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"youtube#i18nRegionListResponse\".", - "default": "youtube#i18nRegionListResponse" - }, - "visitorId": { - "type": "string", - "description": "The visitorId identifies the visitor." - } - } - }, - "I18nRegionSnippet": { - "id": "I18nRegionSnippet", - "type": "object", - "description": "Basic details about an i18n region, such as region code and human-readable name.", - "properties": { - "gl": { - "type": "string", - "description": "The region code as a 2-letter ISO country code." - }, - "name": { - "type": "string", - "description": "The human-readable name of the region." - } - } - }, - "ImageSettings": { - "id": "ImageSettings", - "type": "object", - "description": "Branding properties for images associated with the channel.", - "properties": { - "backgroundImageUrl": { - "$ref": "LocalizedProperty", - "description": "The URL for the background image shown on the video watch page. The image should be 1200px by 615px, with a maximum file size of 128k." - }, - "bannerExternalUrl": { - "type": "string", - "description": "This is used only in update requests; if it's set, we use this URL to generate all of the above banner URLs." - }, - "bannerImageUrl": { - "type": "string", - "description": "Banner image. Desktop size (1060x175)." - }, - "bannerMobileExtraHdImageUrl": { - "type": "string", - "description": "Banner image. Mobile size high resolution (1440x395)." - }, - "bannerMobileHdImageUrl": { - "type": "string", - "description": "Banner image. Mobile size high resolution (1280x360)." - }, - "bannerMobileImageUrl": { - "type": "string", - "description": "Banner image. Mobile size (640x175)." - }, - "bannerMobileLowImageUrl": { - "type": "string", - "description": "Banner image. Mobile size low resolution (320x88)." - }, - "bannerMobileMediumHdImageUrl": { - "type": "string", - "description": "Banner image. Mobile size medium/high resolution (960x263)." - }, - "bannerTabletExtraHdImageUrl": { - "type": "string", - "description": "Banner image. Tablet size extra high resolution (2560x424)." - }, - "bannerTabletHdImageUrl": { - "type": "string", - "description": "Banner image. Tablet size high resolution (2276x377)." - }, - "bannerTabletImageUrl": { - "type": "string", - "description": "Banner image. Tablet size (1707x283)." - }, - "bannerTabletLowImageUrl": { - "type": "string", - "description": "Banner image. Tablet size low resolution (1138x188)." - }, - "bannerTvHighImageUrl": { - "type": "string", - "description": "Banner image. TV size high resolution (1920x1080)." - }, - "bannerTvImageUrl": { - "type": "string", - "description": "Banner image. TV size extra high resolution (2120x1192)." - }, - "bannerTvLowImageUrl": { - "type": "string", - "description": "Banner image. TV size low resolution (854x480)." - }, - "bannerTvMediumImageUrl": { - "type": "string", - "description": "Banner image. TV size medium resolution (1280x720)." - }, - "largeBrandedBannerImageImapScript": { - "$ref": "LocalizedProperty", - "description": "The image map script for the large banner image." - }, - "largeBrandedBannerImageUrl": { - "$ref": "LocalizedProperty", - "description": "The URL for the 854px by 70px image that appears below the video player in the expanded video view of the video watch page." - }, - "smallBrandedBannerImageImapScript": { - "$ref": "LocalizedProperty", - "description": "The image map script for the small banner image." - }, - "smallBrandedBannerImageUrl": { - "$ref": "LocalizedProperty", - "description": "The URL for the 640px by 70px banner image that appears below the video player in the default view of the video watch page." - }, - "trackingImageUrl": { - "type": "string", - "description": "The URL for a 1px by 1px tracking pixel that can be used to collect statistics for views of the channel or video pages." - }, - "watchIconImageUrl": { - "type": "string", - "description": "The URL for the image that appears above the top-left corner of the video player. This is a 25-pixel-high image with a flexible width that cannot exceed 170 pixels." - } - } - }, - "IngestionInfo": { - "id": "IngestionInfo", - "type": "object", - "description": "Describes information necessary for ingesting an RTMP or an HTTP stream.", - "properties": { - "backupIngestionAddress": { - "type": "string", - "description": "The backup ingestion URL that you should use to stream video to YouTube. You have the option of simultaneously streaming the content that you are sending to the ingestionAddress to this URL." - }, - "ingestionAddress": { - "type": "string", - "description": "The primary ingestion URL that you should use to stream video to YouTube. You must stream video to this URL.\n\nDepending on which application or tool you use to encode your video stream, you may need to enter the stream URL and stream name separately or you may need to concatenate them in the following format:\n\nSTREAM_URL/STREAM_NAME" - }, - "streamName": { - "type": "string", - "description": "The HTTP or RTMP stream name that YouTube assigns to the video stream." - } - } - }, - "InvideoBranding": { - "id": "InvideoBranding", - "type": "object", - "properties": { - "imageBytes": { - "type": "string", - "format": "byte" - }, - "imageUrl": { - "type": "string" - }, - "position": { - "$ref": "InvideoPosition" - }, - "targetChannelId": { - "type": "string" - }, - "timing": { - "$ref": "InvideoTiming" - } - } - }, - "InvideoPosition": { - "id": "InvideoPosition", - "type": "object", - "description": "Describes the spatial position of a visual widget inside a video. It is a union of various position types, out of which only will be set one.", - "properties": { - "cornerPosition": { - "type": "string", - "description": "Describes in which corner of the video the visual widget will appear.", - "enum": [ - "bottomLeft", - "bottomRight", - "topLeft", - "topRight" - ], - "enumDescriptions": [ - "", - "", - "", - "" - ] - }, - "type": { - "type": "string", - "description": "Defines the position type.", - "enum": [ - "corner" - ], - "enumDescriptions": [ - "" - ] - } - } - }, - "InvideoPromotion": { - "id": "InvideoPromotion", - "type": "object", - "description": "Describes an invideo promotion campaign consisting of multiple promoted items. A campaign belongs to a single channel_id.", - "properties": { - "defaultTiming": { - "$ref": "InvideoTiming", - "description": "The default temporal position within the video where the promoted item will be displayed. Can be overriden by more specific timing in the item." - }, - "items": { - "type": "array", - "description": "List of promoted items in decreasing priority.", - "items": { - "$ref": "PromotedItem" - } - }, - "position": { - "$ref": "InvideoPosition", - "description": "The spatial position within the video where the promoted item will be displayed." - }, - "useSmartTiming": { - "type": "boolean", - "description": "Indicates whether the channel's promotional campaign uses \"smart timing.\" This feature attempts to show promotions at a point in the video when they are more likely to be clicked and less likely to disrupt the viewing experience. This feature also picks up a single promotion to show on each video." - } - } - }, - "InvideoTiming": { - "id": "InvideoTiming", - "type": "object", - "description": "Describes a temporal position of a visual widget inside a video.", - "properties": { - "durationMs": { - "type": "string", - "description": "Defines the duration in milliseconds for which the promotion should be displayed. If missing, the client should use the default.", - "format": "uint64" - }, - "offsetMs": { - "type": "string", - "description": "Defines the time at which the promotion will appear. Depending on the value of type the value of the offsetMs field will represent a time offset from the start or from the end of the video, expressed in milliseconds.", - "format": "uint64" - }, - "type": { - "type": "string", - "description": "Describes a timing type. If the value is offsetFromStart, then the offsetMs field represents an offset from the start of the video. If the value is offsetFromEnd, then the offsetMs field represents an offset from the end of the video.", - "enum": [ - "offsetFromEnd", - "offsetFromStart" - ], - "enumDescriptions": [ - "", - "" - ] - } - } - }, - "LanguageTag": { - "id": "LanguageTag", - "type": "object", - "properties": { - "value": { - "type": "string" - } - } - }, - "LiveBroadcast": { - "id": "LiveBroadcast", - "type": "object", - "description": "A liveBroadcast resource represents an event that will be streamed, via live video, on YouTube.", - "properties": { - "contentDetails": { - "$ref": "LiveBroadcastContentDetails", - "description": "The contentDetails object contains information about the event's video content, such as whether the content can be shown in an embedded video player or if it will be archived and therefore available for viewing after the event has concluded." - }, - "etag": { - "type": "string", - "description": "Etag of this resource." - }, - "id": { - "type": "string", - "description": "The ID that YouTube assigns to uniquely identify the broadcast.", - "annotations": { - "required": [ - "youtube.liveBroadcasts.update" - ] - } - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"youtube#liveBroadcast\".", - "default": "youtube#liveBroadcast" - }, - "snippet": { - "$ref": "LiveBroadcastSnippet", - "description": "The snippet object contains basic details about the event, including its title, description, start time, and end time." - }, - "statistics": { - "$ref": "LiveBroadcastStatistics", - "description": "The statistics object contains info about the event's current stats. These include concurrent viewers and total chat count. Statistics can change (in either direction) during the lifetime of an event. Statistics are only returned while the event is live." - }, - "status": { - "$ref": "LiveBroadcastStatus", - "description": "The status object contains information about the event's status." - } - } - }, - "LiveBroadcastContentDetails": { - "id": "LiveBroadcastContentDetails", - "type": "object", - "description": "Detailed settings of a broadcast.", - "properties": { - "boundStreamId": { - "type": "string", - "description": "This value uniquely identifies the live stream bound to the broadcast." - }, - "boundStreamLastUpdateTimeMs": { - "type": "string", - "description": "The date and time that the live stream referenced by boundStreamId was last updated.", - "format": "date-time" - }, - "closedCaptionsType": { - "type": "string", - "enum": [ - "closedCaptionsDisabled", - "closedCaptionsEmbedded", - "closedCaptionsHttpPost" - ], - "enumDescriptions": [ - "", - "", - "" - ] - }, - "enableAutoStart": { - "type": "boolean", - "description": "This setting indicates whether auto start is enabled for this broadcast." - }, - "enableClosedCaptions": { - "type": "boolean", - "description": "This setting indicates whether HTTP POST closed captioning is enabled for this broadcast. The ingestion URL of the closed captions is returned through the liveStreams API. This is mutually exclusive with using the closed_captions_type property, and is equivalent to setting closed_captions_type to CLOSED_CAPTIONS_HTTP_POST." - }, - "enableContentEncryption": { - "type": "boolean", - "description": "This setting indicates whether YouTube should enable content encryption for the broadcast.", - "annotations": { - "required": [ - "youtube.liveBroadcasts.update" - ] - } - }, - "enableDvr": { - "type": "boolean", - "description": "This setting determines whether viewers can access DVR controls while watching the video. DVR controls enable the viewer to control the video playback experience by pausing, rewinding, or fast forwarding content. The default value for this property is true.\n\n\n\nImportant: You must set the value to true and also set the enableArchive property's value to true if you want to make playback available immediately after the broadcast ends.", - "annotations": { - "required": [ - "youtube.liveBroadcasts.update" - ] - } - }, - "enableEmbed": { - "type": "boolean", - "description": "This setting indicates whether the broadcast video can be played in an embedded player. If you choose to archive the video (using the enableArchive property), this setting will also apply to the archived video.", - "annotations": { - "required": [ - "youtube.liveBroadcasts.update" - ] - } - }, - "enableLowLatency": { - "type": "boolean", - "description": "Indicates whether this broadcast has low latency enabled." - }, - "latencyPreference": { - "type": "string", - "description": "If both this and enable_low_latency are set, they must match. LATENCY_NORMAL should match enable_low_latency=false LATENCY_LOW should match enable_low_latency=true LATENCY_ULTRA_LOW should have enable_low_latency omitted.", - "enum": [ - "low", - "normal", - "ultraLow" - ], - "enumDescriptions": [ - "", - "", - "" - ] - }, - "mesh": { - "type": "string", - "format": "byte" - }, - "monitorStream": { - "$ref": "MonitorStreamInfo", - "description": "The monitorStream object contains information about the monitor stream, which the broadcaster can use to review the event content before the broadcast stream is shown publicly." - }, - "projection": { - "type": "string", - "description": "The projection format of this broadcast. This defaults to rectangular.", - "enum": [ - "360", - "mesh", - "rectangular" - ], - "enumDescriptions": [ - "", - "", - "" - ] - }, - "recordFromStart": { - "type": "boolean", - "description": "Automatically start recording after the event goes live. The default value for this property is true.\n\n\n\nImportant: You must also set the enableDvr property's value to true if you want the playback to be available immediately after the broadcast ends. If you set this property's value to true but do not also set the enableDvr property to true, there may be a delay of around one day before the archived video will be available for playback.", - "annotations": { - "required": [ - "youtube.liveBroadcasts.update" - ] - } - }, - "startWithSlate": { - "type": "boolean", - "description": "This setting indicates whether the broadcast should automatically begin with an in-stream slate when you update the broadcast's status to live. After updating the status, you then need to send a liveCuepoints.insert request that sets the cuepoint's eventState to end to remove the in-stream slate and make your broadcast stream visible to viewers.", - "annotations": { - "required": [ - "youtube.liveBroadcasts.update" - ] - } - } - } - }, - "LiveBroadcastListResponse": { - "id": "LiveBroadcastListResponse", - "type": "object", - "properties": { - "etag": { - "type": "string", - "description": "Etag of this resource." - }, - "eventId": { - "type": "string", - "description": "Serialized EventId of the request which produced this response." - }, - "items": { - "type": "array", - "description": "A list of broadcasts that match the request criteria.", - "items": { - "$ref": "LiveBroadcast" - } - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"youtube#liveBroadcastListResponse\".", - "default": "youtube#liveBroadcastListResponse" - }, - "nextPageToken": { - "type": "string", - "description": "The token that can be used as the value of the pageToken parameter to retrieve the next page in the result set." - }, - "pageInfo": { - "$ref": "PageInfo" - }, - "prevPageToken": { - "type": "string", - "description": "The token that can be used as the value of the pageToken parameter to retrieve the previous page in the result set." - }, - "tokenPagination": { - "$ref": "TokenPagination" - }, - "visitorId": { - "type": "string", - "description": "The visitorId identifies the visitor." - } - } - }, - "LiveBroadcastSnippet": { - "id": "LiveBroadcastSnippet", - "type": "object", - "properties": { - "actualEndTime": { - "type": "string", - "description": "The date and time that the broadcast actually ended. This information is only available once the broadcast's state is complete. The value is specified in ISO 8601 (YYYY-MM-DDThh:mm:ss.sZ) format.", - "format": "date-time" - }, - "actualStartTime": { - "type": "string", - "description": "The date and time that the broadcast actually started. This information is only available once the broadcast's state is live. The value is specified in ISO 8601 (YYYY-MM-DDThh:mm:ss.sZ) format.", - "format": "date-time" - }, - "channelId": { - "type": "string", - "description": "The ID that YouTube uses to uniquely identify the channel that is publishing the broadcast." - }, - "description": { - "type": "string", - "description": "The broadcast's description. As with the title, you can set this field by modifying the broadcast resource or by setting the description field of the corresponding video resource." - }, - "isDefaultBroadcast": { - "type": "boolean" - }, - "liveChatId": { - "type": "string", - "description": "The id of the live chat for this broadcast." - }, - "publishedAt": { - "type": "string", - "description": "The date and time that the broadcast was added to YouTube's live broadcast schedule. The value is specified in ISO 8601 (YYYY-MM-DDThh:mm:ss.sZ) format.", - "format": "date-time" - }, - "scheduledEndTime": { - "type": "string", - "description": "The date and time that the broadcast is scheduled to end. The value is specified in ISO 8601 (YYYY-MM-DDThh:mm:ss.sZ) format.", - "format": "date-time" - }, - "scheduledStartTime": { - "type": "string", - "description": "The date and time that the broadcast is scheduled to start. The value is specified in ISO 8601 (YYYY-MM-DDThh:mm:ss.sZ) format.", - "format": "date-time", - "annotations": { - "required": [ - "youtube.liveBroadcasts.insert", - "youtube.liveBroadcasts.update" - ] - } - }, - "thumbnails": { - "$ref": "ThumbnailDetails", - "description": "A map of thumbnail images associated with the broadcast. For each nested object in this object, the key is the name of the thumbnail image, and the value is an object that contains other information about the thumbnail." - }, - "title": { - "type": "string", - "description": "The broadcast's title. Note that the broadcast represents exactly one YouTube video. You can set this field by modifying the broadcast resource or by setting the title field of the corresponding video resource.", - "annotations": { - "required": [ - "youtube.liveBroadcasts.insert", - "youtube.liveBroadcasts.update" - ] - } - } - } - }, - "LiveBroadcastStatistics": { - "id": "LiveBroadcastStatistics", - "type": "object", - "description": "Statistics about the live broadcast. These represent a snapshot of the values at the time of the request. Statistics are only returned for live broadcasts.", - "properties": { - "concurrentViewers": { - "type": "string", - "description": "The number of viewers currently watching the broadcast. The property and its value will be present if the broadcast has current viewers and the broadcast owner has not hidden the viewcount for the video. Note that YouTube stops tracking the number of concurrent viewers for a broadcast when the broadcast ends. So, this property would not identify the number of viewers watching an archived video of a live broadcast that already ended.", - "format": "uint64" - }, - "totalChatCount": { - "type": "string", - "description": "The total number of live chat messages currently on the broadcast. The property and its value will be present if the broadcast is public, has the live chat feature enabled, and has at least one message. Note that this field will not be filled after the broadcast ends. So this property would not identify the number of chat messages for an archived video of a completed live broadcast.", - "format": "uint64" - } - } - }, - "LiveBroadcastStatus": { - "id": "LiveBroadcastStatus", - "type": "object", - "properties": { - "lifeCycleStatus": { - "type": "string", - "description": "The broadcast's status. The status can be updated using the API's liveBroadcasts.transition method.", - "enum": [ - "abandoned", - "complete", - "completeStarting", - "created", - "live", - "liveStarting", - "ready", - "reclaimed", - "revoked", - "testStarting", - "testing" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "liveBroadcastPriority": { - "type": "string", - "description": "Priority of the live broadcast event (internal state).", - "enum": [ - "high", - "low", - "normal" - ], - "enumDescriptions": [ - "", - "", - "" - ] - }, - "privacyStatus": { - "type": "string", - "description": "The broadcast's privacy status. Note that the broadcast represents exactly one YouTube video, so the privacy settings are identical to those supported for videos. In addition, you can set this field by modifying the broadcast resource or by setting the privacyStatus field of the corresponding video resource.", - "enum": [ - "private", - "public", - "unlisted" - ], - "enumDescriptions": [ - "", - "", - "" - ], - "annotations": { - "required": [ - "youtube.liveBroadcasts.insert", - "youtube.liveBroadcasts.update" - ] - } - }, - "recordingStatus": { - "type": "string", - "description": "The broadcast's recording status.", - "enum": [ - "notRecording", - "recorded", - "recording" - ], - "enumDescriptions": [ - "", - "", - "" - ] - } - } - }, - "LiveChatBan": { - "id": "LiveChatBan", - "type": "object", - "description": "A liveChatBan resource represents a ban for a YouTube live chat.", - "properties": { - "etag": { - "type": "string", - "description": "Etag of this resource." - }, - "id": { - "type": "string", - "description": "The ID that YouTube assigns to uniquely identify the ban." - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"youtube#liveChatBan\".", - "default": "youtube#liveChatBan" - }, - "snippet": { - "$ref": "LiveChatBanSnippet", - "description": "The snippet object contains basic details about the ban." - } - } - }, - "LiveChatBanSnippet": { - "id": "LiveChatBanSnippet", - "type": "object", - "properties": { - "banDurationSeconds": { - "type": "string", - "description": "The duration of a ban, only filled if the ban has type TEMPORARY.", - "format": "uint64" - }, - "bannedUserDetails": { - "$ref": "ChannelProfileDetails" - }, - "liveChatId": { - "type": "string", - "description": "The chat this ban is pertinent to." - }, - "type": { - "type": "string", - "description": "The type of ban.", - "enum": [ - "permanent", - "temporary" - ], - "enumDescriptions": [ - "", - "" - ] - } - } - }, - "LiveChatFanFundingEventDetails": { - "id": "LiveChatFanFundingEventDetails", - "type": "object", - "properties": { - "amountDisplayString": { - "type": "string", - "description": "A rendered string that displays the fund amount and currency to the user." - }, - "amountMicros": { - "type": "string", - "description": "The amount of the fund.", - "format": "uint64" - }, - "currency": { - "type": "string", - "description": "The currency in which the fund was made." - }, - "userComment": { - "type": "string", - "description": "The comment added by the user to this fan funding event." - } - } - }, - "LiveChatMessage": { - "id": "LiveChatMessage", - "type": "object", - "description": "A liveChatMessage resource represents a chat message in a YouTube Live Chat.", - "properties": { - "authorDetails": { - "$ref": "LiveChatMessageAuthorDetails", - "description": "The authorDetails object contains basic details about the user that posted this message." - }, - "etag": { - "type": "string", - "description": "Etag of this resource." - }, - "id": { - "type": "string", - "description": "The ID that YouTube assigns to uniquely identify the message." - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"youtube#liveChatMessage\".", - "default": "youtube#liveChatMessage" - }, - "snippet": { - "$ref": "LiveChatMessageSnippet", - "description": "The snippet object contains basic details about the message." - } - } - }, - "LiveChatMessageAuthorDetails": { - "id": "LiveChatMessageAuthorDetails", - "type": "object", - "properties": { - "channelId": { - "type": "string", - "description": "The YouTube channel ID." - }, - "channelUrl": { - "type": "string", - "description": "The channel's URL." - }, - "displayName": { - "type": "string", - "description": "The channel's display name." - }, - "isChatModerator": { - "type": "boolean", - "description": "Whether the author is a moderator of the live chat." - }, - "isChatOwner": { - "type": "boolean", - "description": "Whether the author is the owner of the live chat." - }, - "isChatSponsor": { - "type": "boolean", - "description": "Whether the author is a sponsor of the live chat." - }, - "isVerified": { - "type": "boolean", - "description": "Whether the author's identity has been verified by YouTube." - }, - "profileImageUrl": { - "type": "string", - "description": "The channels's avatar URL." - } - } - }, - "LiveChatMessageDeletedDetails": { - "id": "LiveChatMessageDeletedDetails", - "type": "object", - "properties": { - "deletedMessageId": { - "type": "string" - } - } - }, - "LiveChatMessageListResponse": { - "id": "LiveChatMessageListResponse", - "type": "object", - "properties": { - "etag": { - "type": "string", - "description": "Etag of this resource." - }, - "eventId": { - "type": "string", - "description": "Serialized EventId of the request which produced this response." - }, - "items": { - "type": "array", - "description": "A list of live chat messages.", - "items": { - "$ref": "LiveChatMessage" - } - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"youtube#liveChatMessageListResponse\".", - "default": "youtube#liveChatMessageListResponse" - }, - "nextPageToken": { - "type": "string", - "description": "The token that can be used as the value of the pageToken parameter to retrieve the next page in the result set." - }, - "offlineAt": { - "type": "string", - "description": "The date and time when the underlying stream went offline. The value is specified in ISO 8601 (YYYY-MM-DDThh:mm:ss.sZ) format.", - "format": "date-time" - }, - "pageInfo": { - "$ref": "PageInfo" - }, - "pollingIntervalMillis": { - "type": "integer", - "description": "The amount of time the client should wait before polling again.", - "format": "uint32" - }, - "tokenPagination": { - "$ref": "TokenPagination" - }, - "visitorId": { - "type": "string", - "description": "The visitorId identifies the visitor." - } - } - }, - "LiveChatMessageRetractedDetails": { - "id": "LiveChatMessageRetractedDetails", - "type": "object", - "properties": { - "retractedMessageId": { - "type": "string" - } - } - }, - "LiveChatMessageSnippet": { - "id": "LiveChatMessageSnippet", - "type": "object", - "properties": { - "authorChannelId": { - "type": "string", - "description": "The ID of the user that authored this message, this field is not always filled. textMessageEvent - the user that wrote the message fanFundingEvent - the user that funded the broadcast newSponsorEvent - the user that just became a sponsor messageDeletedEvent - the moderator that took the action messageRetractedEvent - the author that retracted their message userBannedEvent - the moderator that took the action superChatEvent - the user that made the purchase" - }, - "displayMessage": { - "type": "string", - "description": "Contains a string that can be displayed to the user. If this field is not present the message is silent, at the moment only messages of type TOMBSTONE and CHAT_ENDED_EVENT are silent." - }, - "fanFundingEventDetails": { - "$ref": "LiveChatFanFundingEventDetails", - "description": "Details about the funding event, this is only set if the type is 'fanFundingEvent'." - }, - "hasDisplayContent": { - "type": "boolean", - "description": "Whether the message has display content that should be displayed to users." - }, - "liveChatId": { - "type": "string" - }, - "messageDeletedDetails": { - "$ref": "LiveChatMessageDeletedDetails" - }, - "messageRetractedDetails": { - "$ref": "LiveChatMessageRetractedDetails" - }, - "pollClosedDetails": { - "$ref": "LiveChatPollClosedDetails" - }, - "pollEditedDetails": { - "$ref": "LiveChatPollEditedDetails" - }, - "pollOpenedDetails": { - "$ref": "LiveChatPollOpenedDetails" - }, - "pollVotedDetails": { - "$ref": "LiveChatPollVotedDetails" - }, - "publishedAt": { - "type": "string", - "description": "The date and time when the message was orignally published. The value is specified in ISO 8601 (YYYY-MM-DDThh:mm:ss.sZ) format.", - "format": "date-time" - }, - "superChatDetails": { - "$ref": "LiveChatSuperChatDetails", - "description": "Details about the Super Chat event, this is only set if the type is 'superChatEvent'." - }, - "textMessageDetails": { - "$ref": "LiveChatTextMessageDetails", - "description": "Details about the text message, this is only set if the type is 'textMessageEvent'." - }, - "type": { - "type": "string", - "description": "The type of message, this will always be present, it determines the contents of the message as well as which fields will be present.", - "enum": [ - "chatEndedEvent", - "fanFundingEvent", - "messageDeletedEvent", - "messageRetractedEvent", - "newSponsorEvent", - "pollClosedEvent", - "pollEditedEvent", - "pollOpenedEvent", - "pollVotedEvent", - "sponsorOnlyModeEndedEvent", - "sponsorOnlyModeStartedEvent", - "superChatEvent", - "textMessageEvent", - "tombstone", - "userBannedEvent" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "userBannedDetails": { - "$ref": "LiveChatUserBannedMessageDetails" - } - } - }, - "LiveChatModerator": { - "id": "LiveChatModerator", - "type": "object", - "description": "A liveChatModerator resource represents a moderator for a YouTube live chat. A chat moderator has the ability to ban/unban users from a chat, remove message, etc.", - "properties": { - "etag": { - "type": "string", - "description": "Etag of this resource." - }, - "id": { - "type": "string", - "description": "The ID that YouTube assigns to uniquely identify the moderator." - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"youtube#liveChatModerator\".", - "default": "youtube#liveChatModerator" - }, - "snippet": { - "$ref": "LiveChatModeratorSnippet", - "description": "The snippet object contains basic details about the moderator." - } - } - }, - "LiveChatModeratorListResponse": { - "id": "LiveChatModeratorListResponse", - "type": "object", - "properties": { - "etag": { - "type": "string", - "description": "Etag of this resource." - }, - "eventId": { - "type": "string", - "description": "Serialized EventId of the request which produced this response." - }, - "items": { - "type": "array", - "description": "A list of moderators that match the request criteria.", - "items": { - "$ref": "LiveChatModerator" - } - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"youtube#liveChatModeratorListResponse\".", - "default": "youtube#liveChatModeratorListResponse" - }, - "nextPageToken": { - "type": "string", - "description": "The token that can be used as the value of the pageToken parameter to retrieve the next page in the result set." - }, - "pageInfo": { - "$ref": "PageInfo" - }, - "prevPageToken": { - "type": "string", - "description": "The token that can be used as the value of the pageToken parameter to retrieve the previous page in the result set." - }, - "tokenPagination": { - "$ref": "TokenPagination" - }, - "visitorId": { - "type": "string", - "description": "The visitorId identifies the visitor." - } - } - }, - "LiveChatModeratorSnippet": { - "id": "LiveChatModeratorSnippet", - "type": "object", - "properties": { - "liveChatId": { - "type": "string", - "description": "The ID of the live chat this moderator can act on." - }, - "moderatorDetails": { - "$ref": "ChannelProfileDetails", - "description": "Details about the moderator." - } - } - }, - "LiveChatPollClosedDetails": { - "id": "LiveChatPollClosedDetails", - "type": "object", - "properties": { - "pollId": { - "type": "string", - "description": "The id of the poll that was closed." - } - } - }, - "LiveChatPollEditedDetails": { - "id": "LiveChatPollEditedDetails", - "type": "object", - "properties": { - "id": { - "type": "string" - }, - "items": { - "type": "array", - "items": { - "$ref": "LiveChatPollItem" - } - }, - "prompt": { - "type": "string" - } - } - }, - "LiveChatPollItem": { - "id": "LiveChatPollItem", - "type": "object", - "properties": { - "description": { - "type": "string", - "description": "Plain text description of the item." - }, - "itemId": { - "type": "string" - } - } - }, - "LiveChatPollOpenedDetails": { - "id": "LiveChatPollOpenedDetails", - "type": "object", - "properties": { - "id": { - "type": "string" - }, - "items": { - "type": "array", - "items": { - "$ref": "LiveChatPollItem" - } - }, - "prompt": { - "type": "string" - } - } - }, - "LiveChatPollVotedDetails": { - "id": "LiveChatPollVotedDetails", - "type": "object", - "properties": { - "itemId": { - "type": "string", - "description": "The poll item the user chose." - }, - "pollId": { - "type": "string", - "description": "The poll the user voted on." - } - } - }, - "LiveChatSuperChatDetails": { - "id": "LiveChatSuperChatDetails", - "type": "object", - "properties": { - "amountDisplayString": { - "type": "string", - "description": "A rendered string that displays the fund amount and currency to the user." - }, - "amountMicros": { - "type": "string", - "description": "The amount purchased by the user, in micros (1,750,000 micros = 1.75).", - "format": "uint64" - }, - "currency": { - "type": "string", - "description": "The currency in which the purchase was made." - }, - "tier": { - "type": "integer", - "description": "The tier in which the amount belongs to. Lower amounts belong to lower tiers. Starts at 1.", - "format": "uint32" - }, - "userComment": { - "type": "string", - "description": "The comment added by the user to this Super Chat event." - } - } - }, - "LiveChatTextMessageDetails": { - "id": "LiveChatTextMessageDetails", - "type": "object", - "properties": { - "messageText": { - "type": "string", - "description": "The user's message." - } - } - }, - "LiveChatUserBannedMessageDetails": { - "id": "LiveChatUserBannedMessageDetails", - "type": "object", - "properties": { - "banDurationSeconds": { - "type": "string", - "description": "The duration of the ban. This property is only present if the banType is temporary.", - "format": "uint64" - }, - "banType": { - "type": "string", - "description": "The type of ban.", - "enum": [ - "permanent", - "temporary" - ], - "enumDescriptions": [ - "", - "" - ] - }, - "bannedUserDetails": { - "$ref": "ChannelProfileDetails", - "description": "The details of the user that was banned." - } - } - }, - "LiveStream": { - "id": "LiveStream", - "type": "object", - "description": "A live stream describes a live ingestion point.", - "properties": { - "cdn": { - "$ref": "CdnSettings", - "description": "The cdn object defines the live stream's content delivery network (CDN) settings. These settings provide details about the manner in which you stream your content to YouTube." - }, - "contentDetails": { - "$ref": "LiveStreamContentDetails", - "description": "The content_details object contains information about the stream, including the closed captions ingestion URL." - }, - "etag": { - "type": "string", - "description": "Etag of this resource." - }, - "id": { - "type": "string", - "description": "The ID that YouTube assigns to uniquely identify the stream.", - "annotations": { - "required": [ - "youtube.liveStreams.update" - ] - } - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"youtube#liveStream\".", - "default": "youtube#liveStream" - }, - "snippet": { - "$ref": "LiveStreamSnippet", - "description": "The snippet object contains basic details about the stream, including its channel, title, and description." - }, - "status": { - "$ref": "LiveStreamStatus", - "description": "The status object contains information about live stream's status." - } - } - }, - "LiveStreamConfigurationIssue": { - "id": "LiveStreamConfigurationIssue", - "type": "object", - "properties": { - "description": { - "type": "string", - "description": "The long-form description of the issue and how to resolve it." - }, - "reason": { - "type": "string", - "description": "The short-form reason for this issue." - }, - "severity": { - "type": "string", - "description": "How severe this issue is to the stream.", - "enum": [ - "error", - "info", - "warning" - ], - "enumDescriptions": [ - "", - "", - "" - ] - }, - "type": { - "type": "string", - "description": "The kind of error happening.", - "enum": [ - "audioBitrateHigh", - "audioBitrateLow", - "audioBitrateMismatch", - "audioCodec", - "audioCodecMismatch", - "audioSampleRate", - "audioSampleRateMismatch", - "audioStereoMismatch", - "audioTooManyChannels", - "badContainer", - "bitrateHigh", - "bitrateLow", - "frameRateHigh", - "framerateMismatch", - "gopMismatch", - "gopSizeLong", - "gopSizeOver", - "gopSizeShort", - "interlacedVideo", - "multipleAudioStreams", - "multipleVideoStreams", - "noAudioStream", - "noVideoStream", - "openGop", - "resolutionMismatch", - "videoBitrateMismatch", - "videoCodec", - "videoCodecMismatch", - "videoIngestionFasterThanRealtime", - "videoIngestionStarved", - "videoInterlaceMismatch", - "videoProfileMismatch", - "videoResolutionSuboptimal", - "videoResolutionUnsupported" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - } - } - }, - "LiveStreamContentDetails": { - "id": "LiveStreamContentDetails", - "type": "object", - "description": "Detailed settings of a stream.", - "properties": { - "closedCaptionsIngestionUrl": { - "type": "string", - "description": "The ingestion URL where the closed captions of this stream are sent." - }, - "isReusable": { - "type": "boolean", - "description": "Indicates whether the stream is reusable, which means that it can be bound to multiple broadcasts. It is common for broadcasters to reuse the same stream for many different broadcasts if those broadcasts occur at different times.\n\nIf you set this value to false, then the stream will not be reusable, which means that it can only be bound to one broadcast. Non-reusable streams differ from reusable streams in the following ways: \n- A non-reusable stream can only be bound to one broadcast. \n- A non-reusable stream might be deleted by an automated process after the broadcast ends. \n- The liveStreams.list method does not list non-reusable streams if you call the method and set the mine parameter to true. The only way to use that method to retrieve the resource for a non-reusable stream is to use the id parameter to identify the stream." - } - } - }, - "LiveStreamHealthStatus": { - "id": "LiveStreamHealthStatus", - "type": "object", - "properties": { - "configurationIssues": { - "type": "array", - "description": "The configurations issues on this stream", - "items": { - "$ref": "LiveStreamConfigurationIssue" - } - }, - "lastUpdateTimeSeconds": { - "type": "string", - "description": "The last time this status was updated (in seconds)", - "format": "uint64" - }, - "status": { - "type": "string", - "description": "The status code of this stream", - "enum": [ - "bad", - "good", - "noData", - "ok", - "revoked" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "" - ] - } - } - }, - "LiveStreamListResponse": { - "id": "LiveStreamListResponse", - "type": "object", - "properties": { - "etag": { - "type": "string", - "description": "Etag of this resource." - }, - "eventId": { - "type": "string", - "description": "Serialized EventId of the request which produced this response." - }, - "items": { - "type": "array", - "description": "A list of live streams that match the request criteria.", - "items": { - "$ref": "LiveStream" - } - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"youtube#liveStreamListResponse\".", - "default": "youtube#liveStreamListResponse" - }, - "nextPageToken": { - "type": "string", - "description": "The token that can be used as the value of the pageToken parameter to retrieve the next page in the result set." - }, - "pageInfo": { - "$ref": "PageInfo" - }, - "prevPageToken": { - "type": "string", - "description": "The token that can be used as the value of the pageToken parameter to retrieve the previous page in the result set." - }, - "tokenPagination": { - "$ref": "TokenPagination" - }, - "visitorId": { - "type": "string", - "description": "The visitorId identifies the visitor." - } - } - }, - "LiveStreamSnippet": { - "id": "LiveStreamSnippet", - "type": "object", - "properties": { - "channelId": { - "type": "string", - "description": "The ID that YouTube uses to uniquely identify the channel that is transmitting the stream." - }, - "description": { - "type": "string", - "description": "The stream's description. The value cannot be longer than 10000 characters." - }, - "isDefaultStream": { - "type": "boolean" - }, - "publishedAt": { - "type": "string", - "description": "The date and time that the stream was created. The value is specified in ISO 8601 (YYYY-MM-DDThh:mm:ss.sZ) format.", - "format": "date-time" - }, - "title": { - "type": "string", - "description": "The stream's title. The value must be between 1 and 128 characters long.", - "annotations": { - "required": [ - "youtube.liveStreams.insert", - "youtube.liveStreams.update" - ] - } - } - } - }, - "LiveStreamStatus": { - "id": "LiveStreamStatus", - "type": "object", - "description": "Brief description of the live stream status.", - "properties": { - "healthStatus": { - "$ref": "LiveStreamHealthStatus", - "description": "The health status of the stream." - }, - "streamStatus": { - "type": "string", - "enum": [ - "active", - "created", - "error", - "inactive", - "ready" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "" - ] - } - } - }, - "LocalizedProperty": { - "id": "LocalizedProperty", - "type": "object", - "properties": { - "default": { - "type": "string" - }, - "defaultLanguage": { - "$ref": "LanguageTag", - "description": "The language of the default property." - }, - "localized": { - "type": "array", - "items": { - "$ref": "LocalizedString" - } - } - } - }, - "LocalizedString": { - "id": "LocalizedString", - "type": "object", - "properties": { - "language": { - "type": "string" - }, - "value": { - "type": "string" - } - } - }, - "MonitorStreamInfo": { - "id": "MonitorStreamInfo", - "type": "object", - "description": "Settings and Info of the monitor stream", - "properties": { - "broadcastStreamDelayMs": { - "type": "integer", - "description": "If you have set the enableMonitorStream property to true, then this property determines the length of the live broadcast delay.", - "format": "uint32", - "annotations": { - "required": [ - "youtube.liveBroadcasts.update" - ] - } - }, - "embedHtml": { - "type": "string", - "description": "HTML code that embeds a player that plays the monitor stream." - }, - "enableMonitorStream": { - "type": "boolean", - "description": "This value determines whether the monitor stream is enabled for the broadcast. If the monitor stream is enabled, then YouTube will broadcast the event content on a special stream intended only for the broadcaster's consumption. The broadcaster can use the stream to review the event content and also to identify the optimal times to insert cuepoints.\n\nYou need to set this value to true if you intend to have a broadcast delay for your event.\n\nNote: This property cannot be updated once the broadcast is in the testing or live state.", - "annotations": { - "required": [ - "youtube.liveBroadcasts.update" - ] - } - } - } - }, - "PageInfo": { - "id": "PageInfo", - "type": "object", - "description": "Paging details for lists of resources, including total number of items available and number of resources returned in a single page.", - "properties": { - "resultsPerPage": { - "type": "integer", - "description": "The number of results included in the API response.", - "format": "int32" - }, - "totalResults": { - "type": "integer", - "description": "The total number of results in the result set.", - "format": "int32" - } - } - }, - "Playlist": { - "id": "Playlist", - "type": "object", - "description": "A playlist resource represents a YouTube playlist. A playlist is a collection of videos that can be viewed sequentially and shared with other users. A playlist can contain up to 200 videos, and YouTube does not limit the number of playlists that each user creates. By default, playlists are publicly visible to other users, but playlists can be public or private.\n\nYouTube also uses playlists to identify special collections of videos for a channel, such as: \n- uploaded videos \n- favorite videos \n- positively rated (liked) videos \n- watch history \n- watch later To be more specific, these lists are associated with a channel, which is a collection of a person, group, or company's videos, playlists, and other YouTube information. You can retrieve the playlist IDs for each of these lists from the channel resource for a given channel.\n\nYou can then use the playlistItems.list method to retrieve any of those lists. You can also add or remove items from those lists by calling the playlistItems.insert and playlistItems.delete methods.", - "properties": { - "contentDetails": { - "$ref": "PlaylistContentDetails", - "description": "The contentDetails object contains information like video count." - }, - "etag": { - "type": "string", - "description": "Etag of this resource." - }, - "id": { - "type": "string", - "description": "The ID that YouTube uses to uniquely identify the playlist." - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"youtube#playlist\".", - "default": "youtube#playlist" - }, - "localizations": { - "type": "object", - "description": "Localizations for different languages", - "additionalProperties": { - "$ref": "PlaylistLocalization", - "description": "The language tag, using string since map_key require simple types." - } - }, - "player": { - "$ref": "PlaylistPlayer", - "description": "The player object contains information that you would use to play the playlist in an embedded player." - }, - "snippet": { - "$ref": "PlaylistSnippet", - "description": "The snippet object contains basic details about the playlist, such as its title and description." - }, - "status": { - "$ref": "PlaylistStatus", - "description": "The status object contains status information for the playlist." - } - } - }, - "PlaylistContentDetails": { - "id": "PlaylistContentDetails", - "type": "object", - "properties": { - "itemCount": { - "type": "integer", - "description": "The number of videos in the playlist.", - "format": "uint32" - } - } - }, - "PlaylistItem": { - "id": "PlaylistItem", - "type": "object", - "description": "A playlistItem resource identifies another resource, such as a video, that is included in a playlist. In addition, the playlistItem resource contains details about the included resource that pertain specifically to how that resource is used in that playlist.\n\nYouTube uses playlists to identify special collections of videos for a channel, such as: \n- uploaded videos \n- favorite videos \n- positively rated (liked) videos \n- watch history \n- watch later To be more specific, these lists are associated with a channel, which is a collection of a person, group, or company's videos, playlists, and other YouTube information.\n\nYou can retrieve the playlist IDs for each of these lists from the channel resource for a given channel. You can then use the playlistItems.list method to retrieve any of those lists. You can also add or remove items from those lists by calling the playlistItems.insert and playlistItems.delete methods. For example, if a user gives a positive rating to a video, you would insert that video into the liked videos playlist for that user's channel.", - "properties": { - "contentDetails": { - "$ref": "PlaylistItemContentDetails", - "description": "The contentDetails object is included in the resource if the included item is a YouTube video. The object contains additional information about the video." - }, - "etag": { - "type": "string", - "description": "Etag of this resource." - }, - "id": { - "type": "string", - "description": "The ID that YouTube uses to uniquely identify the playlist item." - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"youtube#playlistItem\".", - "default": "youtube#playlistItem" - }, - "snippet": { - "$ref": "PlaylistItemSnippet", - "description": "The snippet object contains basic details about the playlist item, such as its title and position in the playlist." - }, - "status": { - "$ref": "PlaylistItemStatus", - "description": "The status object contains information about the playlist item's privacy status." - } - } - }, - "PlaylistItemContentDetails": { - "id": "PlaylistItemContentDetails", - "type": "object", - "properties": { - "endAt": { - "type": "string", - "description": "The time, measured in seconds from the start of the video, when the video should stop playing. (The playlist owner can specify the times when the video should start and stop playing when the video is played in the context of the playlist.) By default, assume that the video.endTime is the end of the video." - }, - "note": { - "type": "string", - "description": "A user-generated note for this item." - }, - "startAt": { - "type": "string", - "description": "The time, measured in seconds from the start of the video, when the video should start playing. (The playlist owner can specify the times when the video should start and stop playing when the video is played in the context of the playlist.) The default value is 0." - }, - "videoId": { - "type": "string", - "description": "The ID that YouTube uses to uniquely identify a video. To retrieve the video resource, set the id query parameter to this value in your API request." - }, - "videoPublishedAt": { - "type": "string", - "description": "The date and time that the video was published to YouTube. The value is specified in ISO 8601 (YYYY-MM-DDThh:mm:ss.sZ) format.", - "format": "date-time" - } - } - }, - "PlaylistItemListResponse": { - "id": "PlaylistItemListResponse", - "type": "object", - "properties": { - "etag": { - "type": "string", - "description": "Etag of this resource." - }, - "eventId": { - "type": "string", - "description": "Serialized EventId of the request which produced this response." - }, - "items": { - "type": "array", - "description": "A list of playlist items that match the request criteria.", - "items": { - "$ref": "PlaylistItem" - } - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"youtube#playlistItemListResponse\".", - "default": "youtube#playlistItemListResponse" - }, - "nextPageToken": { - "type": "string", - "description": "The token that can be used as the value of the pageToken parameter to retrieve the next page in the result set." - }, - "pageInfo": { - "$ref": "PageInfo" - }, - "prevPageToken": { - "type": "string", - "description": "The token that can be used as the value of the pageToken parameter to retrieve the previous page in the result set." - }, - "tokenPagination": { - "$ref": "TokenPagination" - }, - "visitorId": { - "type": "string", - "description": "The visitorId identifies the visitor." - } - } - }, - "PlaylistItemSnippet": { - "id": "PlaylistItemSnippet", - "type": "object", - "description": "Basic details about a playlist, including title, description and thumbnails.", - "properties": { - "channelId": { - "type": "string", - "description": "The ID that YouTube uses to uniquely identify the user that added the item to the playlist." - }, - "channelTitle": { - "type": "string", - "description": "Channel title for the channel that the playlist item belongs to." - }, - "description": { - "type": "string", - "description": "The item's description." - }, - "playlistId": { - "type": "string", - "description": "The ID that YouTube uses to uniquely identify the playlist that the playlist item is in.", - "annotations": { - "required": [ - "youtube.playlistItems.insert", - "youtube.playlistItems.update" - ] - } - }, - "position": { - "type": "integer", - "description": "The order in which the item appears in the playlist. The value uses a zero-based index, so the first item has a position of 0, the second item has a position of 1, and so forth.", - "format": "uint32" - }, - "publishedAt": { - "type": "string", - "description": "The date and time that the item was added to the playlist. The value is specified in ISO 8601 (YYYY-MM-DDThh:mm:ss.sZ) format.", - "format": "date-time" - }, - "resourceId": { - "$ref": "ResourceId", - "description": "The id object contains information that can be used to uniquely identify the resource that is included in the playlist as the playlist item.", - "annotations": { - "required": [ - "youtube.playlistItems.insert", - "youtube.playlistItems.update" - ] - } - }, - "thumbnails": { - "$ref": "ThumbnailDetails", - "description": "A map of thumbnail images associated with the playlist item. For each object in the map, the key is the name of the thumbnail image, and the value is an object that contains other information about the thumbnail." - }, - "title": { - "type": "string", - "description": "The item's title." - } - } - }, - "PlaylistItemStatus": { - "id": "PlaylistItemStatus", - "type": "object", - "description": "Information about the playlist item's privacy status.", - "properties": { - "privacyStatus": { - "type": "string", - "description": "This resource's privacy status.", - "enum": [ - "private", - "public", - "unlisted" - ], - "enumDescriptions": [ - "", - "", - "" - ] - } - } - }, - "PlaylistListResponse": { - "id": "PlaylistListResponse", - "type": "object", - "properties": { - "etag": { - "type": "string", - "description": "Etag of this resource." - }, - "eventId": { - "type": "string", - "description": "Serialized EventId of the request which produced this response." - }, - "items": { - "type": "array", - "description": "A list of playlists that match the request criteria.", - "items": { - "$ref": "Playlist" - } - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"youtube#playlistListResponse\".", - "default": "youtube#playlistListResponse" - }, - "nextPageToken": { - "type": "string", - "description": "The token that can be used as the value of the pageToken parameter to retrieve the next page in the result set." - }, - "pageInfo": { - "$ref": "PageInfo" - }, - "prevPageToken": { - "type": "string", - "description": "The token that can be used as the value of the pageToken parameter to retrieve the previous page in the result set." - }, - "tokenPagination": { - "$ref": "TokenPagination" - }, - "visitorId": { - "type": "string", - "description": "The visitorId identifies the visitor." - } - } - }, - "PlaylistLocalization": { - "id": "PlaylistLocalization", - "type": "object", - "description": "Playlist localization setting", - "properties": { - "description": { - "type": "string", - "description": "The localized strings for playlist's description." - }, - "title": { - "type": "string", - "description": "The localized strings for playlist's title." - } - } - }, - "PlaylistPlayer": { - "id": "PlaylistPlayer", - "type": "object", - "properties": { - "embedHtml": { - "type": "string", - "description": "An \u003ciframe\u003e tag that embeds a player that will play the playlist." - } - } - }, - "PlaylistSnippet": { - "id": "PlaylistSnippet", - "type": "object", - "description": "Basic details about a playlist, including title, description and thumbnails.", - "properties": { - "channelId": { - "type": "string", - "description": "The ID that YouTube uses to uniquely identify the channel that published the playlist." - }, - "channelTitle": { - "type": "string", - "description": "The channel title of the channel that the video belongs to." - }, - "defaultLanguage": { - "type": "string", - "description": "The language of the playlist's default title and description." - }, - "description": { - "type": "string", - "description": "The playlist's description." - }, - "localized": { - "$ref": "PlaylistLocalization", - "description": "Localized title and description, read-only." - }, - "publishedAt": { - "type": "string", - "description": "The date and time that the playlist was created. The value is specified in ISO 8601 (YYYY-MM-DDThh:mm:ss.sZ) format.", - "format": "date-time" - }, - "tags": { - "type": "array", - "description": "Keyword tags associated with the playlist.", - "items": { - "type": "string" - } - }, - "thumbnails": { - "$ref": "ThumbnailDetails", - "description": "A map of thumbnail images associated with the playlist. For each object in the map, the key is the name of the thumbnail image, and the value is an object that contains other information about the thumbnail." - }, - "title": { - "type": "string", - "description": "The playlist's title.", - "annotations": { - "required": [ - "youtube.playlists.insert", - "youtube.playlists.update" - ] - } - } - } - }, - "PlaylistStatus": { - "id": "PlaylistStatus", - "type": "object", - "properties": { - "privacyStatus": { - "type": "string", - "description": "The playlist's privacy status.", - "enum": [ - "private", - "public", - "unlisted" - ], - "enumDescriptions": [ - "", - "", - "" - ] - } - } - }, - "PromotedItem": { - "id": "PromotedItem", - "type": "object", - "description": "Describes a single promoted item.", - "properties": { - "customMessage": { - "type": "string", - "description": "A custom message to display for this promotion. This field is currently ignored unless the promoted item is a website." - }, - "id": { - "$ref": "PromotedItemId", - "description": "Identifies the promoted item." - }, - "promotedByContentOwner": { - "type": "boolean", - "description": "If true, the content owner's name will be used when displaying the promotion. This field can only be set when the update is made on behalf of the content owner." - }, - "timing": { - "$ref": "InvideoTiming", - "description": "The temporal position within the video where the promoted item will be displayed. If present, it overrides the default timing." - } - } - }, - "PromotedItemId": { - "id": "PromotedItemId", - "type": "object", - "description": "Describes a single promoted item id. It is a union of various possible types.", - "properties": { - "recentlyUploadedBy": { - "type": "string", - "description": "If type is recentUpload, this field identifies the channel from which to take the recent upload. If missing, the channel is assumed to be the same channel for which the invideoPromotion is set." - }, - "type": { - "type": "string", - "description": "Describes the type of the promoted item.", - "enum": [ - "recentUpload", - "video", - "website" - ], - "enumDescriptions": [ - "", - "", - "" - ] - }, - "videoId": { - "type": "string", - "description": "If the promoted item represents a video, this field represents the unique YouTube ID identifying it. This field will be present only if type has the value video." - }, - "websiteUrl": { - "type": "string", - "description": "If the promoted item represents a website, this field represents the url pointing to the website. This field will be present only if type has the value website." - } - } - }, - "PropertyValue": { - "id": "PropertyValue", - "type": "object", - "description": "A pair Property / Value.", - "properties": { - "property": { - "type": "string", - "description": "A property." - }, - "value": { - "type": "string", - "description": "The property's value." - } - } - }, - "ResourceId": { - "id": "ResourceId", - "type": "object", - "description": "A resource id is a generic reference that points to another YouTube resource.", - "properties": { - "channelId": { - "type": "string", - "description": "The ID that YouTube uses to uniquely identify the referred resource, if that resource is a channel. This property is only present if the resourceId.kind value is youtube#channel." - }, - "kind": { - "type": "string", - "description": "The type of the API resource." - }, - "playlistId": { - "type": "string", - "description": "The ID that YouTube uses to uniquely identify the referred resource, if that resource is a playlist. This property is only present if the resourceId.kind value is youtube#playlist." - }, - "videoId": { - "type": "string", - "description": "The ID that YouTube uses to uniquely identify the referred resource, if that resource is a video. This property is only present if the resourceId.kind value is youtube#video." - } - } - }, - "SearchListResponse": { - "id": "SearchListResponse", - "type": "object", - "properties": { - "etag": { - "type": "string", - "description": "Etag of this resource." - }, - "eventId": { - "type": "string", - "description": "Serialized EventId of the request which produced this response." - }, - "items": { - "type": "array", - "description": "A list of results that match the search criteria.", - "items": { - "$ref": "SearchResult" - } - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"youtube#searchListResponse\".", - "default": "youtube#searchListResponse" - }, - "nextPageToken": { - "type": "string", - "description": "The token that can be used as the value of the pageToken parameter to retrieve the next page in the result set." - }, - "pageInfo": { - "$ref": "PageInfo" - }, - "prevPageToken": { - "type": "string", - "description": "The token that can be used as the value of the pageToken parameter to retrieve the previous page in the result set." - }, - "regionCode": { - "type": "string" - }, - "tokenPagination": { - "$ref": "TokenPagination" - }, - "visitorId": { - "type": "string", - "description": "The visitorId identifies the visitor." - } - } - }, - "SearchResult": { - "id": "SearchResult", - "type": "object", - "description": "A search result contains information about a YouTube video, channel, or playlist that matches the search parameters specified in an API request. While a search result points to a uniquely identifiable resource, like a video, it does not have its own persistent data.", - "properties": { - "etag": { - "type": "string", - "description": "Etag of this resource." - }, - "id": { - "$ref": "ResourceId", - "description": "The id object contains information that can be used to uniquely identify the resource that matches the search request." - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"youtube#searchResult\".", - "default": "youtube#searchResult" - }, - "snippet": { - "$ref": "SearchResultSnippet", - "description": "The snippet object contains basic details about a search result, such as its title or description. For example, if the search result is a video, then the title will be the video's title and the description will be the video's description." - } - } - }, - "SearchResultSnippet": { - "id": "SearchResultSnippet", - "type": "object", - "description": "Basic details about a search result, including title, description and thumbnails of the item referenced by the search result.", - "properties": { - "channelId": { - "type": "string", - "description": "The value that YouTube uses to uniquely identify the channel that published the resource that the search result identifies." - }, - "channelTitle": { - "type": "string", - "description": "The title of the channel that published the resource that the search result identifies." - }, - "description": { - "type": "string", - "description": "A description of the search result." - }, - "liveBroadcastContent": { - "type": "string", - "description": "It indicates if the resource (video or channel) has upcoming/active live broadcast content. Or it's \"none\" if there is not any upcoming/active live broadcasts.", - "enum": [ - "live", - "none", - "upcoming" - ], - "enumDescriptions": [ - "", - "", - "" - ] - }, - "publishedAt": { - "type": "string", - "description": "The creation date and time of the resource that the search result identifies. The value is specified in ISO 8601 (YYYY-MM-DDThh:mm:ss.sZ) format.", - "format": "date-time" - }, - "thumbnails": { - "$ref": "ThumbnailDetails", - "description": "A map of thumbnail images associated with the search result. For each object in the map, the key is the name of the thumbnail image, and the value is an object that contains other information about the thumbnail." - }, - "title": { - "type": "string", - "description": "The title of the search result." - } - } - }, - "Sponsor": { - "id": "Sponsor", - "type": "object", - "description": "A sponsor resource represents a sponsor for a YouTube channel. A sponsor provides recurring monetary support to a creator and receives special benefits.", - "properties": { - "etag": { - "type": "string", - "description": "Etag of this resource." - }, - "id": { - "type": "string", - "description": "The ID that YouTube assigns to uniquely identify the sponsor." - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"youtube#sponsor\".", - "default": "youtube#sponsor" - }, - "snippet": { - "$ref": "SponsorSnippet", - "description": "The snippet object contains basic details about the sponsor." - } - } - }, - "SponsorListResponse": { - "id": "SponsorListResponse", - "type": "object", - "properties": { - "etag": { - "type": "string", - "description": "Etag of this resource." - }, - "eventId": { - "type": "string", - "description": "Serialized EventId of the request which produced this response." - }, - "items": { - "type": "array", - "description": "A list of sponsors that match the request criteria.", - "items": { - "$ref": "Sponsor" - } - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"youtube#sponsorListResponse\".", - "default": "youtube#sponsorListResponse" - }, - "nextPageToken": { - "type": "string", - "description": "The token that can be used as the value of the pageToken parameter to retrieve the next page in the result set." - }, - "pageInfo": { - "$ref": "PageInfo" - }, - "tokenPagination": { - "$ref": "TokenPagination" - }, - "visitorId": { - "type": "string", - "description": "The visitorId identifies the visitor." - } - } - }, - "SponsorSnippet": { - "id": "SponsorSnippet", - "type": "object", - "properties": { - "channelId": { - "type": "string", - "description": "The id of the channel being sponsored." - }, - "sponsorDetails": { - "$ref": "ChannelProfileDetails", - "description": "Details about the sponsor." - }, - "sponsorSince": { - "type": "string", - "description": "The date and time when the user became a sponsor. The value is specified in ISO 8601 (YYYY-MM-DDThh:mm:ss.sZ) format.", - "format": "date-time" - } - } - }, - "Subscription": { - "id": "Subscription", - "type": "object", - "description": "A subscription resource contains information about a YouTube user subscription. A subscription notifies a user when new videos are added to a channel or when another user takes one of several actions on YouTube, such as uploading a video, rating a video, or commenting on a video.", - "properties": { - "contentDetails": { - "$ref": "SubscriptionContentDetails", - "description": "The contentDetails object contains basic statistics about the subscription." - }, - "etag": { - "type": "string", - "description": "Etag of this resource." - }, - "id": { - "type": "string", - "description": "The ID that YouTube uses to uniquely identify the subscription." - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"youtube#subscription\".", - "default": "youtube#subscription" - }, - "snippet": { - "$ref": "SubscriptionSnippet", - "description": "The snippet object contains basic details about the subscription, including its title and the channel that the user subscribed to." - }, - "subscriberSnippet": { - "$ref": "SubscriptionSubscriberSnippet", - "description": "The subscriberSnippet object contains basic details about the sbuscriber." - } - } - }, - "SubscriptionContentDetails": { - "id": "SubscriptionContentDetails", - "type": "object", - "description": "Details about the content to witch a subscription refers.", - "properties": { - "activityType": { - "type": "string", - "description": "The type of activity this subscription is for (only uploads, everything).", - "enum": [ - "all", - "uploads" - ], - "enumDescriptions": [ - "", - "" - ] - }, - "newItemCount": { - "type": "integer", - "description": "The number of new items in the subscription since its content was last read.", - "format": "uint32" - }, - "totalItemCount": { - "type": "integer", - "description": "The approximate number of items that the subscription points to.", - "format": "uint32" - } - } - }, - "SubscriptionListResponse": { - "id": "SubscriptionListResponse", - "type": "object", - "properties": { - "etag": { - "type": "string", - "description": "Etag of this resource." - }, - "eventId": { - "type": "string", - "description": "Serialized EventId of the request which produced this response." - }, - "items": { - "type": "array", - "description": "A list of subscriptions that match the request criteria.", - "items": { - "$ref": "Subscription" - } - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"youtube#subscriptionListResponse\".", - "default": "youtube#subscriptionListResponse" - }, - "nextPageToken": { - "type": "string", - "description": "The token that can be used as the value of the pageToken parameter to retrieve the next page in the result set." - }, - "pageInfo": { - "$ref": "PageInfo" - }, - "prevPageToken": { - "type": "string", - "description": "The token that can be used as the value of the pageToken parameter to retrieve the previous page in the result set." - }, - "tokenPagination": { - "$ref": "TokenPagination" - }, - "visitorId": { - "type": "string", - "description": "The visitorId identifies the visitor." - } - } - }, - "SubscriptionSnippet": { - "id": "SubscriptionSnippet", - "type": "object", - "description": "Basic details about a subscription, including title, description and thumbnails of the subscribed item.", - "properties": { - "channelId": { - "type": "string", - "description": "The ID that YouTube uses to uniquely identify the subscriber's channel." - }, - "channelTitle": { - "type": "string", - "description": "Channel title for the channel that the subscription belongs to." - }, - "description": { - "type": "string", - "description": "The subscription's details." - }, - "publishedAt": { - "type": "string", - "description": "The date and time that the subscription was created. The value is specified in ISO 8601 (YYYY-MM-DDThh:mm:ss.sZ) format.", - "format": "date-time" - }, - "resourceId": { - "$ref": "ResourceId", - "description": "The id object contains information about the channel that the user subscribed to.", - "annotations": { - "required": [ - "youtube.subscriptions.insert" - ] - } - }, - "thumbnails": { - "$ref": "ThumbnailDetails", - "description": "A map of thumbnail images associated with the video. For each object in the map, the key is the name of the thumbnail image, and the value is an object that contains other information about the thumbnail." - }, - "title": { - "type": "string", - "description": "The subscription's title." - } - } - }, - "SubscriptionSubscriberSnippet": { - "id": "SubscriptionSubscriberSnippet", - "type": "object", - "description": "Basic details about a subscription's subscriber including title, description, channel ID and thumbnails.", - "properties": { - "channelId": { - "type": "string", - "description": "The channel ID of the subscriber." - }, - "description": { - "type": "string", - "description": "The description of the subscriber." - }, - "thumbnails": { - "$ref": "ThumbnailDetails", - "description": "Thumbnails for this subscriber." - }, - "title": { - "type": "string", - "description": "The title of the subscriber." - } - } - }, - "SuperChatEvent": { - "id": "SuperChatEvent", - "type": "object", - "description": "A superChatEvent resource represents a Super Chat purchase on a YouTube channel.", - "properties": { - "etag": { - "type": "string", - "description": "Etag of this resource." - }, - "id": { - "type": "string", - "description": "The ID that YouTube assigns to uniquely identify the Super Chat event." - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"youtube#superChatEvent\".", - "default": "youtube#superChatEvent" - }, - "snippet": { - "$ref": "SuperChatEventSnippet", - "description": "The snippet object contains basic details about the Super Chat event." - } - } - }, - "SuperChatEventListResponse": { - "id": "SuperChatEventListResponse", - "type": "object", - "properties": { - "etag": { - "type": "string", - "description": "Etag of this resource." - }, - "eventId": { - "type": "string", - "description": "Serialized EventId of the request which produced this response." - }, - "items": { - "type": "array", - "description": "A list of Super Chat purchases that match the request criteria.", - "items": { - "$ref": "SuperChatEvent" - } - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"youtube#superChatEventListResponse\".", - "default": "youtube#superChatEventListResponse" - }, - "nextPageToken": { - "type": "string", - "description": "The token that can be used as the value of the pageToken parameter to retrieve the next page in the result set." - }, - "pageInfo": { - "$ref": "PageInfo" - }, - "tokenPagination": { - "$ref": "TokenPagination" - }, - "visitorId": { - "type": "string", - "description": "The visitorId identifies the visitor." - } - } - }, - "SuperChatEventSnippet": { - "id": "SuperChatEventSnippet", - "type": "object", - "properties": { - "amountMicros": { - "type": "string", - "description": "The purchase amount, in micros of the purchase currency. e.g., 1 is represented as 1000000.", - "format": "uint64" - }, - "channelId": { - "type": "string", - "description": "Channel id where the event occurred." - }, - "commentText": { - "type": "string", - "description": "The text contents of the comment left by the user." - }, - "createdAt": { - "type": "string", - "description": "The date and time when the event occurred. The value is specified in ISO 8601 (YYYY-MM-DDThh:mm:ss.sZ) format.", - "format": "date-time" - }, - "currency": { - "type": "string", - "description": "The currency in which the purchase was made. ISO 4217." - }, - "displayString": { - "type": "string", - "description": "A rendered string that displays the purchase amount and currency (e.g., \"$1.00\"). The string is rendered for the given language." - }, - "messageType": { - "type": "integer", - "description": "The tier for the paid message, which is based on the amount of money spent to purchase the message.", - "format": "uint32" - }, - "supporterDetails": { - "$ref": "ChannelProfileDetails", - "description": "Details about the supporter." - } - } - }, - "Thumbnail": { - "id": "Thumbnail", - "type": "object", - "description": "A thumbnail is an image representing a YouTube resource.", - "properties": { - "height": { - "type": "integer", - "description": "(Optional) Height of the thumbnail image.", - "format": "uint32" - }, - "url": { - "type": "string", - "description": "The thumbnail image's URL." - }, - "width": { - "type": "integer", - "description": "(Optional) Width of the thumbnail image.", - "format": "uint32" - } - } - }, - "ThumbnailDetails": { - "id": "ThumbnailDetails", - "type": "object", - "description": "Internal representation of thumbnails for a YouTube resource.", - "properties": { - "default": { - "$ref": "Thumbnail", - "description": "The default image for this resource." - }, - "high": { - "$ref": "Thumbnail", - "description": "The high quality image for this resource." - }, - "maxres": { - "$ref": "Thumbnail", - "description": "The maximum resolution quality image for this resource." - }, - "medium": { - "$ref": "Thumbnail", - "description": "The medium quality image for this resource." - }, - "standard": { - "$ref": "Thumbnail", - "description": "The standard quality image for this resource." - } - } - }, - "ThumbnailSetResponse": { - "id": "ThumbnailSetResponse", - "type": "object", - "properties": { - "etag": { - "type": "string", - "description": "Etag of this resource." - }, - "eventId": { - "type": "string", - "description": "Serialized EventId of the request which produced this response." - }, - "items": { - "type": "array", - "description": "A list of thumbnails.", - "items": { - "$ref": "ThumbnailDetails" - } - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"youtube#thumbnailSetResponse\".", - "default": "youtube#thumbnailSetResponse" - }, - "visitorId": { - "type": "string", - "description": "The visitorId identifies the visitor." - } - } - }, - "TokenPagination": { - "id": "TokenPagination", - "type": "object", - "description": "Stub token pagination template to suppress results." - }, - "Video": { - "id": "Video", - "type": "object", - "description": "A video resource represents a YouTube video.", - "properties": { - "ageGating": { - "$ref": "VideoAgeGating", - "description": "Age restriction details related to a video. This data can only be retrieved by the video owner." - }, - "contentDetails": { - "$ref": "VideoContentDetails", - "description": "The contentDetails object contains information about the video content, including the length of the video and its aspect ratio." - }, - "etag": { - "type": "string", - "description": "Etag of this resource." - }, - "fileDetails": { - "$ref": "VideoFileDetails", - "description": "The fileDetails object encapsulates information about the video file that was uploaded to YouTube, including the file's resolution, duration, audio and video codecs, stream bitrates, and more. This data can only be retrieved by the video owner." - }, - "id": { - "type": "string", - "description": "The ID that YouTube uses to uniquely identify the video.", - "annotations": { - "required": [ - "youtube.videos.update" - ] - } - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"youtube#video\".", - "default": "youtube#video" - }, - "liveStreamingDetails": { - "$ref": "VideoLiveStreamingDetails", - "description": "The liveStreamingDetails object contains metadata about a live video broadcast. The object will only be present in a video resource if the video is an upcoming, live, or completed live broadcast." - }, - "localizations": { - "type": "object", - "description": "List with all localizations.", - "additionalProperties": { - "$ref": "VideoLocalization", - "description": "The language tag, using string since map_key require simple types." - } - }, - "monetizationDetails": { - "$ref": "VideoMonetizationDetails", - "description": "The monetizationDetails object encapsulates information about the monetization status of the video." - }, - "player": { - "$ref": "VideoPlayer", - "description": "The player object contains information that you would use to play the video in an embedded player." - }, - "processingDetails": { - "$ref": "VideoProcessingDetails", - "description": "The processingProgress object encapsulates information about YouTube's progress in processing the uploaded video file. The properties in the object identify the current processing status and an estimate of the time remaining until YouTube finishes processing the video. This part also indicates whether different types of data or content, such as file details or thumbnail images, are available for the video.\n\nThe processingProgress object is designed to be polled so that the video uploaded can track the progress that YouTube has made in processing the uploaded video file. This data can only be retrieved by the video owner." - }, - "projectDetails": { - "$ref": "VideoProjectDetails", - "description": "The projectDetails object contains information about the project specific video metadata." - }, - "recordingDetails": { - "$ref": "VideoRecordingDetails", - "description": "The recordingDetails object encapsulates information about the location, date and address where the video was recorded." - }, - "snippet": { - "$ref": "VideoSnippet", - "description": "The snippet object contains basic details about the video, such as its title, description, and category." - }, - "statistics": { - "$ref": "VideoStatistics", - "description": "The statistics object contains statistics about the video." - }, - "status": { - "$ref": "VideoStatus", - "description": "The status object contains information about the video's uploading, processing, and privacy statuses." - }, - "suggestions": { - "$ref": "VideoSuggestions", - "description": "The suggestions object encapsulates suggestions that identify opportunities to improve the video quality or the metadata for the uploaded video. This data can only be retrieved by the video owner." - }, - "topicDetails": { - "$ref": "VideoTopicDetails", - "description": "The topicDetails object encapsulates information about Freebase topics associated with the video." - } - } - }, - "VideoAbuseReport": { - "id": "VideoAbuseReport", - "type": "object", - "properties": { - "comments": { - "type": "string", - "description": "Additional comments regarding the abuse report." - }, - "language": { - "type": "string", - "description": "The language that the content was viewed in." - }, - "reasonId": { - "type": "string", - "description": "The high-level, or primary, reason that the content is abusive. The value is an abuse report reason ID." - }, - "secondaryReasonId": { - "type": "string", - "description": "The specific, or secondary, reason that this content is abusive (if available). The value is an abuse report reason ID that is a valid secondary reason for the primary reason." - }, - "videoId": { - "type": "string", - "description": "The ID that YouTube uses to uniquely identify the video." - } - } - }, - "VideoAbuseReportReason": { - "id": "VideoAbuseReportReason", - "type": "object", - "description": "A videoAbuseReportReason resource identifies a reason that a video could be reported as abusive. Video abuse report reasons are used with video.ReportAbuse.", - "properties": { - "etag": { - "type": "string", - "description": "Etag of this resource." - }, - "id": { - "type": "string", - "description": "The ID of this abuse report reason." - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"youtube#videoAbuseReportReason\".", - "default": "youtube#videoAbuseReportReason" - }, - "snippet": { - "$ref": "VideoAbuseReportReasonSnippet", - "description": "The snippet object contains basic details about the abuse report reason." - } - } - }, - "VideoAbuseReportReasonListResponse": { - "id": "VideoAbuseReportReasonListResponse", - "type": "object", - "properties": { - "etag": { - "type": "string", - "description": "Etag of this resource." - }, - "eventId": { - "type": "string", - "description": "Serialized EventId of the request which produced this response." - }, - "items": { - "type": "array", - "description": "A list of valid abuse reasons that are used with video.ReportAbuse.", - "items": { - "$ref": "VideoAbuseReportReason" - } - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"youtube#videoAbuseReportReasonListResponse\".", - "default": "youtube#videoAbuseReportReasonListResponse" - }, - "visitorId": { - "type": "string", - "description": "The visitorId identifies the visitor." - } - } - }, - "VideoAbuseReportReasonSnippet": { - "id": "VideoAbuseReportReasonSnippet", - "type": "object", - "description": "Basic details about a video category, such as its localized title.", - "properties": { - "label": { - "type": "string", - "description": "The localized label belonging to this abuse report reason." - }, - "secondaryReasons": { - "type": "array", - "description": "The secondary reasons associated with this reason, if any are available. (There might be 0 or more.)", - "items": { - "$ref": "VideoAbuseReportSecondaryReason" - } - } - } - }, - "VideoAbuseReportSecondaryReason": { - "id": "VideoAbuseReportSecondaryReason", - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "The ID of this abuse report secondary reason." - }, - "label": { - "type": "string", - "description": "The localized label for this abuse report secondary reason." - } - } - }, - "VideoAgeGating": { - "id": "VideoAgeGating", - "type": "object", - "properties": { - "alcoholContent": { - "type": "boolean", - "description": "Indicates whether or not the video has alcoholic beverage content. Only users of legal purchasing age in a particular country, as identified by ICAP, can view the content." - }, - "restricted": { - "type": "boolean", - "description": "Age-restricted trailers. For redband trailers and adult-rated video-games. Only users aged 18+ can view the content. The the field is true the content is restricted to viewers aged 18+. Otherwise The field won't be present." - }, - "videoGameRating": { - "type": "string", - "description": "Video game rating, if any.", - "enum": [ - "anyone", - "m15Plus", - "m16Plus", - "m17Plus" - ], - "enumDescriptions": [ - "", - "", - "", - "" - ] - } - } - }, - "VideoCategory": { - "id": "VideoCategory", - "type": "object", - "description": "A videoCategory resource identifies a category that has been or could be associated with uploaded videos.", - "properties": { - "etag": { - "type": "string", - "description": "Etag of this resource." - }, - "id": { - "type": "string", - "description": "The ID that YouTube uses to uniquely identify the video category." - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"youtube#videoCategory\".", - "default": "youtube#videoCategory" - }, - "snippet": { - "$ref": "VideoCategorySnippet", - "description": "The snippet object contains basic details about the video category, including its title." - } - } - }, - "VideoCategoryListResponse": { - "id": "VideoCategoryListResponse", - "type": "object", - "properties": { - "etag": { - "type": "string", - "description": "Etag of this resource." - }, - "eventId": { - "type": "string", - "description": "Serialized EventId of the request which produced this response." - }, - "items": { - "type": "array", - "description": "A list of video categories that can be associated with YouTube videos. In this map, the video category ID is the map key, and its value is the corresponding videoCategory resource.", - "items": { - "$ref": "VideoCategory" - } - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"youtube#videoCategoryListResponse\".", - "default": "youtube#videoCategoryListResponse" - }, - "nextPageToken": { - "type": "string", - "description": "The token that can be used as the value of the pageToken parameter to retrieve the next page in the result set." - }, - "pageInfo": { - "$ref": "PageInfo" - }, - "prevPageToken": { - "type": "string", - "description": "The token that can be used as the value of the pageToken parameter to retrieve the previous page in the result set." - }, - "tokenPagination": { - "$ref": "TokenPagination" - }, - "visitorId": { - "type": "string", - "description": "The visitorId identifies the visitor." - } - } - }, - "VideoCategorySnippet": { - "id": "VideoCategorySnippet", - "type": "object", - "description": "Basic details about a video category, such as its localized title.", - "properties": { - "assignable": { - "type": "boolean" - }, - "channelId": { - "type": "string", - "description": "The YouTube channel that created the video category.", - "default": "UCBR8-60-B28hp2BmDPdntcQ" - }, - "title": { - "type": "string", - "description": "The video category's title." - } - } - }, - "VideoContentDetails": { - "id": "VideoContentDetails", - "type": "object", - "description": "Details about the content of a YouTube Video.", - "properties": { - "caption": { - "type": "string", - "description": "The value of captions indicates whether the video has captions or not.", - "enum": [ - "false", - "true" - ], - "enumDescriptions": [ - "", - "" - ] - }, - "contentRating": { - "$ref": "ContentRating", - "description": "Specifies the ratings that the video received under various rating schemes." - }, - "countryRestriction": { - "$ref": "AccessPolicy", - "description": "The countryRestriction object contains information about the countries where a video is (or is not) viewable." - }, - "definition": { - "type": "string", - "description": "The value of definition indicates whether the video is available in high definition or only in standard definition.", - "enum": [ - "hd", - "sd" - ], - "enumDescriptions": [ - "", - "" - ] - }, - "dimension": { - "type": "string", - "description": "The value of dimension indicates whether the video is available in 3D or in 2D." - }, - "duration": { - "type": "string", - "description": "The length of the video. The tag value is an ISO 8601 duration in the format PT#M#S, in which the letters PT indicate that the value specifies a period of time, and the letters M and S refer to length in minutes and seconds, respectively. The # characters preceding the M and S letters are both integers that specify the number of minutes (or seconds) of the video. For example, a value of PT15M51S indicates that the video is 15 minutes and 51 seconds long." - }, - "hasCustomThumbnail": { - "type": "boolean", - "description": "Indicates whether the video uploader has provided a custom thumbnail image for the video. This property is only visible to the video uploader." - }, - "licensedContent": { - "type": "boolean", - "description": "The value of is_license_content indicates whether the video is licensed content." - }, - "projection": { - "type": "string", - "description": "Specifies the projection format of the video.", - "enum": [ - "360", - "rectangular" - ], - "enumDescriptions": [ - "", - "" - ] - }, - "regionRestriction": { - "$ref": "VideoContentDetailsRegionRestriction", - "description": "The regionRestriction object contains information about the countries where a video is (or is not) viewable. The object will contain either the contentDetails.regionRestriction.allowed property or the contentDetails.regionRestriction.blocked property." - } - } - }, - "VideoContentDetailsRegionRestriction": { - "id": "VideoContentDetailsRegionRestriction", - "type": "object", - "description": "DEPRECATED Region restriction of the video.", - "properties": { - "allowed": { - "type": "array", - "description": "A list of region codes that identify countries where the video is viewable. If this property is present and a country is not listed in its value, then the video is blocked from appearing in that country. If this property is present and contains an empty list, the video is blocked in all countries.", - "items": { - "type": "string" - } - }, - "blocked": { - "type": "array", - "description": "A list of region codes that identify countries where the video is blocked. If this property is present and a country is not listed in its value, then the video is viewable in that country. If this property is present and contains an empty list, the video is viewable in all countries.", - "items": { - "type": "string" - } - } - } - }, - "VideoFileDetails": { - "id": "VideoFileDetails", - "type": "object", - "description": "Describes original video file properties, including technical details about audio and video streams, but also metadata information like content length, digitization time, or geotagging information.", - "properties": { - "audioStreams": { - "type": "array", - "description": "A list of audio streams contained in the uploaded video file. Each item in the list contains detailed metadata about an audio stream.", - "items": { - "$ref": "VideoFileDetailsAudioStream" - } - }, - "bitrateBps": { - "type": "string", - "description": "The uploaded video file's combined (video and audio) bitrate in bits per second.", - "format": "uint64" - }, - "container": { - "type": "string", - "description": "The uploaded video file's container format." - }, - "creationTime": { - "type": "string", - "description": "The date and time when the uploaded video file was created. The value is specified in ISO 8601 format. Currently, the following ISO 8601 formats are supported: \n- Date only: YYYY-MM-DD \n- Naive time: YYYY-MM-DDTHH:MM:SS \n- Time with timezone: YYYY-MM-DDTHH:MM:SS+HH:MM" - }, - "durationMs": { - "type": "string", - "description": "The length of the uploaded video in milliseconds.", - "format": "uint64" - }, - "fileName": { - "type": "string", - "description": "The uploaded file's name. This field is present whether a video file or another type of file was uploaded." - }, - "fileSize": { - "type": "string", - "description": "The uploaded file's size in bytes. This field is present whether a video file or another type of file was uploaded.", - "format": "uint64" - }, - "fileType": { - "type": "string", - "description": "The uploaded file's type as detected by YouTube's video processing engine. Currently, YouTube only processes video files, but this field is present whether a video file or another type of file was uploaded.", - "enum": [ - "archive", - "audio", - "document", - "image", - "other", - "project", - "video" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "" - ] - }, - "videoStreams": { - "type": "array", - "description": "A list of video streams contained in the uploaded video file. Each item in the list contains detailed metadata about a video stream.", - "items": { - "$ref": "VideoFileDetailsVideoStream" - } - } - } - }, - "VideoFileDetailsAudioStream": { - "id": "VideoFileDetailsAudioStream", - "type": "object", - "description": "Information about an audio stream.", - "properties": { - "bitrateBps": { - "type": "string", - "description": "The audio stream's bitrate, in bits per second.", - "format": "uint64" - }, - "channelCount": { - "type": "integer", - "description": "The number of audio channels that the stream contains.", - "format": "uint32" - }, - "codec": { - "type": "string", - "description": "The audio codec that the stream uses." - }, - "vendor": { - "type": "string", - "description": "A value that uniquely identifies a video vendor. Typically, the value is a four-letter vendor code." - } - } - }, - "VideoFileDetailsVideoStream": { - "id": "VideoFileDetailsVideoStream", - "type": "object", - "description": "Information about a video stream.", - "properties": { - "aspectRatio": { - "type": "number", - "description": "The video content's display aspect ratio, which specifies the aspect ratio in which the video should be displayed.", - "format": "double" - }, - "bitrateBps": { - "type": "string", - "description": "The video stream's bitrate, in bits per second.", - "format": "uint64" - }, - "codec": { - "type": "string", - "description": "The video codec that the stream uses." - }, - "frameRateFps": { - "type": "number", - "description": "The video stream's frame rate, in frames per second.", - "format": "double" - }, - "heightPixels": { - "type": "integer", - "description": "The encoded video content's height in pixels.", - "format": "uint32" - }, - "rotation": { - "type": "string", - "description": "The amount that YouTube needs to rotate the original source content to properly display the video.", - "enum": [ - "clockwise", - "counterClockwise", - "none", - "other", - "upsideDown" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "" - ] - }, - "vendor": { - "type": "string", - "description": "A value that uniquely identifies a video vendor. Typically, the value is a four-letter vendor code." - }, - "widthPixels": { - "type": "integer", - "description": "The encoded video content's width in pixels. You can calculate the video's encoding aspect ratio as width_pixels / height_pixels.", - "format": "uint32" - } - } - }, - "VideoGetRatingResponse": { - "id": "VideoGetRatingResponse", - "type": "object", - "properties": { - "etag": { - "type": "string", - "description": "Etag of this resource." - }, - "eventId": { - "type": "string", - "description": "Serialized EventId of the request which produced this response." - }, - "items": { - "type": "array", - "description": "A list of ratings that match the request criteria.", - "items": { - "$ref": "VideoRating" - } - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"youtube#videoGetRatingResponse\".", - "default": "youtube#videoGetRatingResponse" - }, - "visitorId": { - "type": "string", - "description": "The visitorId identifies the visitor." - } - } - }, - "VideoListResponse": { - "id": "VideoListResponse", - "type": "object", - "properties": { - "etag": { - "type": "string", - "description": "Etag of this resource." - }, - "eventId": { - "type": "string", - "description": "Serialized EventId of the request which produced this response." - }, - "items": { - "type": "array", - "description": "A list of videos that match the request criteria.", - "items": { - "$ref": "Video" - } - }, - "kind": { - "type": "string", - "description": "Identifies what kind of resource this is. Value: the fixed string \"youtube#videoListResponse\".", - "default": "youtube#videoListResponse" - }, - "nextPageToken": { - "type": "string", - "description": "The token that can be used as the value of the pageToken parameter to retrieve the next page in the result set." - }, - "pageInfo": { - "$ref": "PageInfo" - }, - "prevPageToken": { - "type": "string", - "description": "The token that can be used as the value of the pageToken parameter to retrieve the previous page in the result set." - }, - "tokenPagination": { - "$ref": "TokenPagination" - }, - "visitorId": { - "type": "string", - "description": "The visitorId identifies the visitor." - } - } - }, - "VideoLiveStreamingDetails": { - "id": "VideoLiveStreamingDetails", - "type": "object", - "description": "Details about the live streaming metadata.", - "properties": { - "activeLiveChatId": { - "type": "string", - "description": "The ID of the currently active live chat attached to this video. This field is filled only if the video is a currently live broadcast that has live chat. Once the broadcast transitions to complete this field will be removed and the live chat closed down. For persistent broadcasts that live chat id will no longer be tied to this video but rather to the new video being displayed at the persistent page." - }, - "actualEndTime": { - "type": "string", - "description": "The time that the broadcast actually ended. The value is specified in ISO 8601 (YYYY-MM-DDThh:mm:ss.sZ) format. This value will not be available until the broadcast is over.", - "format": "date-time" - }, - "actualStartTime": { - "type": "string", - "description": "The time that the broadcast actually started. The value is specified in ISO 8601 (YYYY-MM-DDThh:mm:ss.sZ) format. This value will not be available until the broadcast begins.", - "format": "date-time" - }, - "concurrentViewers": { - "type": "string", - "description": "The number of viewers currently watching the broadcast. The property and its value will be present if the broadcast has current viewers and the broadcast owner has not hidden the viewcount for the video. Note that YouTube stops tracking the number of concurrent viewers for a broadcast when the broadcast ends. So, this property would not identify the number of viewers watching an archived video of a live broadcast that already ended.", - "format": "uint64" - }, - "scheduledEndTime": { - "type": "string", - "description": "The time that the broadcast is scheduled to end. The value is specified in ISO 8601 (YYYY-MM-DDThh:mm:ss.sZ) format. If the value is empty or the property is not present, then the broadcast is scheduled to continue indefinitely.", - "format": "date-time" - }, - "scheduledStartTime": { - "type": "string", - "description": "The time that the broadcast is scheduled to begin. The value is specified in ISO 8601 (YYYY-MM-DDThh:mm:ss.sZ) format.", - "format": "date-time" - } - } - }, - "VideoLocalization": { - "id": "VideoLocalization", - "type": "object", - "description": "Localized versions of certain video properties (e.g. title).", - "properties": { - "description": { - "type": "string", - "description": "Localized version of the video's description." - }, - "title": { - "type": "string", - "description": "Localized version of the video's title." - } - } - }, - "VideoMonetizationDetails": { - "id": "VideoMonetizationDetails", - "type": "object", - "description": "Details about monetization of a YouTube Video.", - "properties": { - "access": { - "$ref": "AccessPolicy", - "description": "The value of access indicates whether the video can be monetized or not." - } - } - }, - "VideoPlayer": { - "id": "VideoPlayer", - "type": "object", - "description": "Player to be used for a video playback.", - "properties": { - "embedHeight": { - "type": "string", - "format": "int64" - }, - "embedHtml": { - "type": "string", - "description": "An \u003ciframe\u003e tag that embeds a player that will play the video." - }, - "embedWidth": { - "type": "string", - "description": "The embed width", - "format": "int64" - } - } - }, - "VideoProcessingDetails": { - "id": "VideoProcessingDetails", - "type": "object", - "description": "Describes processing status and progress and availability of some other Video resource parts.", - "properties": { - "editorSuggestionsAvailability": { - "type": "string", - "description": "This value indicates whether video editing suggestions, which might improve video quality or the playback experience, are available for the video. You can retrieve these suggestions by requesting the suggestions part in your videos.list() request." - }, - "fileDetailsAvailability": { - "type": "string", - "description": "This value indicates whether file details are available for the uploaded video. You can retrieve a video's file details by requesting the fileDetails part in your videos.list() request." - }, - "processingFailureReason": { - "type": "string", - "description": "The reason that YouTube failed to process the video. This property will only have a value if the processingStatus property's value is failed.", - "enum": [ - "other", - "streamingFailed", - "transcodeFailed", - "uploadFailed" - ], - "enumDescriptions": [ - "", - "", - "", - "" - ] - }, - "processingIssuesAvailability": { - "type": "string", - "description": "This value indicates whether the video processing engine has generated suggestions that might improve YouTube's ability to process the the video, warnings that explain video processing problems, or errors that cause video processing problems. You can retrieve these suggestions by requesting the suggestions part in your videos.list() request." - }, - "processingProgress": { - "$ref": "VideoProcessingDetailsProcessingProgress", - "description": "The processingProgress object contains information about the progress YouTube has made in processing the video. The values are really only relevant if the video's processing status is processing." - }, - "processingStatus": { - "type": "string", - "description": "The video's processing status. This value indicates whether YouTube was able to process the video or if the video is still being processed.", - "enum": [ - "failed", - "processing", - "succeeded", - "terminated" - ], - "enumDescriptions": [ - "", - "", - "", - "" - ] - }, - "tagSuggestionsAvailability": { - "type": "string", - "description": "This value indicates whether keyword (tag) suggestions are available for the video. Tags can be added to a video's metadata to make it easier for other users to find the video. You can retrieve these suggestions by requesting the suggestions part in your videos.list() request." - }, - "thumbnailsAvailability": { - "type": "string", - "description": "This value indicates whether thumbnail images have been generated for the video." - } - } - }, - "VideoProcessingDetailsProcessingProgress": { - "id": "VideoProcessingDetailsProcessingProgress", - "type": "object", - "description": "Video processing progress and completion time estimate.", - "properties": { - "partsProcessed": { - "type": "string", - "description": "The number of parts of the video that YouTube has already processed. You can estimate the percentage of the video that YouTube has already processed by calculating:\n100 * parts_processed / parts_total\n\nNote that since the estimated number of parts could increase without a corresponding increase in the number of parts that have already been processed, it is possible that the calculated progress could periodically decrease while YouTube processes a video.", - "format": "uint64" - }, - "partsTotal": { - "type": "string", - "description": "An estimate of the total number of parts that need to be processed for the video. The number may be updated with more precise estimates while YouTube processes the video.", - "format": "uint64" - }, - "timeLeftMs": { - "type": "string", - "description": "An estimate of the amount of time, in millseconds, that YouTube needs to finish processing the video.", - "format": "uint64" - } - } - }, - "VideoProjectDetails": { - "id": "VideoProjectDetails", - "type": "object", - "description": "Project specific details about the content of a YouTube Video.", - "properties": { - "tags": { - "type": "array", - "description": "A list of project tags associated with the video during the upload.", - "items": { - "type": "string" - } - } - } - }, - "VideoRating": { - "id": "VideoRating", - "type": "object", - "properties": { - "rating": { - "type": "string", - "enum": [ - "dislike", - "like", - "none", - "unspecified" - ], - "enumDescriptions": [ - "", - "", - "", - "" - ] - }, - "videoId": { - "type": "string" - } - } - }, - "VideoRecordingDetails": { - "id": "VideoRecordingDetails", - "type": "object", - "description": "Recording information associated with the video.", - "properties": { - "location": { - "$ref": "GeoPoint", - "description": "The geolocation information associated with the video." - }, - "locationDescription": { - "type": "string", - "description": "The text description of the location where the video was recorded." - }, - "recordingDate": { - "type": "string", - "description": "The date and time when the video was recorded. The value is specified in ISO 8601 (YYYY-MM-DDThh:mm:ss.sssZ) format.", - "format": "date-time" - } - } - }, - "VideoSnippet": { - "id": "VideoSnippet", - "type": "object", - "description": "Basic details about a video, including title, description, uploader, thumbnails and category.", - "properties": { - "categoryId": { - "type": "string", - "description": "The YouTube video category associated with the video." - }, - "channelId": { - "type": "string", - "description": "The ID that YouTube uses to uniquely identify the channel that the video was uploaded to." - }, - "channelTitle": { - "type": "string", - "description": "Channel title for the channel that the video belongs to." - }, - "defaultAudioLanguage": { - "type": "string", - "description": "The default_audio_language property specifies the language spoken in the video's default audio track." - }, - "defaultLanguage": { - "type": "string", - "description": "The language of the videos's default snippet." - }, - "description": { - "type": "string", - "description": "The video's description." - }, - "liveBroadcastContent": { - "type": "string", - "description": "Indicates if the video is an upcoming/active live broadcast. Or it's \"none\" if the video is not an upcoming/active live broadcast.", - "enum": [ - "live", - "none", - "upcoming" - ], - "enumDescriptions": [ - "", - "", - "" - ] - }, - "localized": { - "$ref": "VideoLocalization", - "description": "Localized snippet selected with the hl parameter. If no such localization exists, this field is populated with the default snippet. (Read-only)" - }, - "publishedAt": { - "type": "string", - "description": "The date and time that the video was uploaded. The value is specified in ISO 8601 (YYYY-MM-DDThh:mm:ss.sZ) format.", - "format": "date-time" - }, - "tags": { - "type": "array", - "description": "A list of keyword tags associated with the video. Tags may contain spaces.", - "items": { - "type": "string" - } - }, - "thumbnails": { - "$ref": "ThumbnailDetails", - "description": "A map of thumbnail images associated with the video. For each object in the map, the key is the name of the thumbnail image, and the value is an object that contains other information about the thumbnail." - }, - "title": { - "type": "string", - "description": "The video's title." - } - } - }, - "VideoStatistics": { - "id": "VideoStatistics", - "type": "object", - "description": "Statistics about the video, such as the number of times the video was viewed or liked.", - "properties": { - "commentCount": { - "type": "string", - "description": "The number of comments for the video.", - "format": "uint64" - }, - "dislikeCount": { - "type": "string", - "description": "The number of users who have indicated that they disliked the video by giving it a negative rating.", - "format": "uint64" - }, - "favoriteCount": { - "type": "string", - "description": "The number of users who currently have the video marked as a favorite video.", - "format": "uint64" - }, - "likeCount": { - "type": "string", - "description": "The number of users who have indicated that they liked the video by giving it a positive rating.", - "format": "uint64" - }, - "viewCount": { - "type": "string", - "description": "The number of times the video has been viewed.", - "format": "uint64" - } - } - }, - "VideoStatus": { - "id": "VideoStatus", - "type": "object", - "description": "Basic details about a video category, such as its localized title.", - "properties": { - "embeddable": { - "type": "boolean", - "description": "This value indicates if the video can be embedded on another website." - }, - "failureReason": { - "type": "string", - "description": "This value explains why a video failed to upload. This property is only present if the uploadStatus property indicates that the upload failed.", - "enum": [ - "codec", - "conversion", - "emptyFile", - "invalidFile", - "tooSmall", - "uploadAborted" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "" - ] - }, - "license": { - "type": "string", - "description": "The video's license.", - "enum": [ - "creativeCommon", - "youtube" - ], - "enumDescriptions": [ - "", - "" - ] - }, - "privacyStatus": { - "type": "string", - "description": "The video's privacy status.", - "enum": [ - "private", - "public", - "unlisted" - ], - "enumDescriptions": [ - "", - "", - "" - ] - }, - "publicStatsViewable": { - "type": "boolean", - "description": "This value indicates if the extended video statistics on the watch page can be viewed by everyone. Note that the view count, likes, etc will still be visible if this is disabled." - }, - "publishAt": { - "type": "string", - "description": "The date and time when the video is scheduled to publish. It can be set only if the privacy status of the video is private. The value is specified in ISO 8601 (YYYY-MM-DDThh:mm:ss.sZ) format.", - "format": "date-time" - }, - "rejectionReason": { - "type": "string", - "description": "This value explains why YouTube rejected an uploaded video. This property is only present if the uploadStatus property indicates that the upload was rejected.", - "enum": [ - "claim", - "copyright", - "duplicate", - "inappropriate", - "legal", - "length", - "termsOfUse", - "trademark", - "uploaderAccountClosed", - "uploaderAccountSuspended" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "uploadStatus": { - "type": "string", - "description": "The status of the uploaded video.", - "enum": [ - "deleted", - "failed", - "processed", - "rejected", - "uploaded" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "" - ] - } - } - }, - "VideoSuggestions": { - "id": "VideoSuggestions", - "type": "object", - "description": "Specifies suggestions on how to improve video content, including encoding hints, tag suggestions, and editor suggestions.", - "properties": { - "editorSuggestions": { - "type": "array", - "description": "A list of video editing operations that might improve the video quality or playback experience of the uploaded video.", - "items": { - "type": "string", - "enum": [ - "audioQuietAudioSwap", - "videoAutoLevels", - "videoCrop", - "videoStabilize" - ], - "enumDescriptions": [ - "", - "", - "", - "" - ] - } - }, - "processingErrors": { - "type": "array", - "description": "A list of errors that will prevent YouTube from successfully processing the uploaded video video. These errors indicate that, regardless of the video's current processing status, eventually, that status will almost certainly be failed.", - "items": { - "type": "string", - "enum": [ - "archiveFile", - "audioFile", - "docFile", - "imageFile", - "notAVideoFile", - "projectFile", - "unsupportedSpatialAudioLayout" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "" - ] - } - }, - "processingHints": { - "type": "array", - "description": "A list of suggestions that may improve YouTube's ability to process the video.", - "items": { - "type": "string", - "enum": [ - "hdrVideo", - "nonStreamableMov", - "sendBestQualityVideo", - "spatialAudio", - "sphericalVideo", - "vrVideo" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "" - ] - } - }, - "processingWarnings": { - "type": "array", - "description": "A list of reasons why YouTube may have difficulty transcoding the uploaded video or that might result in an erroneous transcoding. These warnings are generated before YouTube actually processes the uploaded video file. In addition, they identify issues that are unlikely to cause the video processing to fail but that might cause problems such as sync issues, video artifacts, or a missing audio track.", - "items": { - "type": "string", - "enum": [ - "hasEditlist", - "inconsistentResolution", - "problematicAudioCodec", - "problematicHdrLookupTable", - "problematicVideoCodec", - "unknownAudioCodec", - "unknownContainer", - "unknownVideoCodec", - "unsupportedHdrColorMetadata", - "unsupportedHdrPixelFormat", - "unsupportedSphericalProjectionType", - "unsupportedVrStereoMode" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - } - }, - "tagSuggestions": { - "type": "array", - "description": "A list of keyword tags that could be added to the video's metadata to increase the likelihood that users will locate your video when searching or browsing on YouTube.", - "items": { - "$ref": "VideoSuggestionsTagSuggestion" - } - } - } - }, - "VideoSuggestionsTagSuggestion": { - "id": "VideoSuggestionsTagSuggestion", - "type": "object", - "description": "A single tag suggestion with it's relevance information.", - "properties": { - "categoryRestricts": { - "type": "array", - "description": "A set of video categories for which the tag is relevant. You can use this information to display appropriate tag suggestions based on the video category that the video uploader associates with the video. By default, tag suggestions are relevant for all categories if there are no restricts defined for the keyword.", - "items": { - "type": "string" - } - }, - "tag": { - "type": "string", - "description": "The keyword tag suggested for the video." - } - } - }, - "VideoTopicDetails": { - "id": "VideoTopicDetails", - "type": "object", - "description": "Freebase topic information related to the video.", - "properties": { - "relevantTopicIds": { - "type": "array", - "description": "Similar to topic_id, except that these topics are merely relevant to the video. These are topics that may be mentioned in, or appear in the video. You can retrieve information about each topic using Freebase Topic API.", - "items": { - "type": "string" - } - }, - "topicCategories": { - "type": "array", - "description": "A list of Wikipedia URLs that provide a high-level description of the video's content.", - "items": { - "type": "string" - } - }, - "topicIds": { - "type": "array", - "description": "A list of Freebase topic IDs that are centrally associated with the video. These are topics that are centrally featured in the video, and it can be said that the video is mainly about each of these. You can retrieve information about each topic using the Freebase Topic API.", - "items": { - "type": "string" - } - } - } - }, - "WatchSettings": { - "id": "WatchSettings", - "type": "object", - "description": "Branding properties for the watch. All deprecated.", - "properties": { - "backgroundColor": { - "type": "string", - "description": "The text color for the video watch page's branded area." - }, - "featuredPlaylistId": { - "type": "string", - "description": "An ID that uniquely identifies a playlist that displays next to the video player." - }, - "textColor": { - "type": "string", - "description": "The background color for the video watch page's branded area." - } - } - } - }, - "resources": { - "activities": { - "methods": { - "insert": { - "id": "youtube.activities.insert", - "path": "activities", - "httpMethod": "POST", - "description": "Posts a bulletin for a specific channel. (The user submitting the request must be authorized to act on the channel's behalf.)\n\nNote: Even though an activity resource can contain information about actions like a user rating a video or marking a video as a favorite, you need to use other API methods to generate those activity resources. For example, you would use the API's videos.rate() method to rate a video and the playlistItems.insert() method to mark a video as a favorite.", - "parameters": { - "part": { - "type": "string", - "description": "The part parameter serves two purposes in this operation. It identifies the properties that the write operation will set as well as the properties that the API response will include.", - "required": true, - "location": "query" - } - }, - "parameterOrder": [ - "part" - ], - "request": { - "$ref": "Activity" - }, - "response": { - "$ref": "Activity" - }, - "scopes": [ - "https://www.googleapis.com/auth/youtube", - "https://www.googleapis.com/auth/youtube.force-ssl" - ] - }, - "list": { - "id": "youtube.activities.list", - "path": "activities", - "httpMethod": "GET", - "description": "Returns a list of channel activity events that match the request criteria. For example, you can retrieve events associated with a particular channel, events associated with the user's subscriptions and Google+ friends, or the YouTube home page feed, which is customized for each user.", - "parameters": { - "channelId": { - "type": "string", - "description": "The channelId parameter specifies a unique YouTube channel ID. The API will then return a list of that channel's activities.", - "location": "query" - }, - "home": { - "type": "boolean", - "description": "Set this parameter's value to true to retrieve the activity feed that displays on the YouTube home page for the currently authenticated user.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maxResults parameter specifies the maximum number of items that should be returned in the result set.", - "default": "5", - "format": "uint32", - "minimum": "0", - "maximum": "50", - "location": "query" - }, - "mine": { - "type": "boolean", - "description": "Set this parameter's value to true to retrieve a feed of the authenticated user's activities.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "The pageToken parameter identifies a specific page in the result set that should be returned. In an API response, the nextPageToken and prevPageToken properties identify other pages that could be retrieved.", - "location": "query" - }, - "part": { - "type": "string", - "description": "The part parameter specifies a comma-separated list of one or more activity resource properties that the API response will include.\n\nIf the parameter identifies a property that contains child properties, the child properties will be included in the response. For example, in an activity resource, the snippet property contains other properties that identify the type of activity, a display title for the activity, and so forth. If you set part=snippet, the API response will also contain all of those nested properties.", - "required": true, - "location": "query" - }, - "publishedAfter": { - "type": "string", - "description": "The publishedAfter parameter specifies the earliest date and time that an activity could have occurred for that activity to be included in the API response. If the parameter value specifies a day, but not a time, then any activities that occurred that day will be included in the result set. The value is specified in ISO 8601 (YYYY-MM-DDThh:mm:ss.sZ) format.", - "format": "date-time", - "location": "query" - }, - "publishedBefore": { - "type": "string", - "description": "The publishedBefore parameter specifies the date and time before which an activity must have occurred for that activity to be included in the API response. If the parameter value specifies a day, but not a time, then any activities that occurred that day will be excluded from the result set. The value is specified in ISO 8601 (YYYY-MM-DDThh:mm:ss.sZ) format.", - "format": "date-time", - "location": "query" - }, - "regionCode": { - "type": "string", - "description": "The regionCode parameter instructs the API to return results for the specified country. The parameter value is an ISO 3166-1 alpha-2 country code. YouTube uses this value when the authorized user's previous activity on YouTube does not provide enough information to generate the activity feed.", - "location": "query" - } - }, - "parameterOrder": [ - "part" - ], - "response": { - "$ref": "ActivityListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/youtube", - "https://www.googleapis.com/auth/youtube.force-ssl", - "https://www.googleapis.com/auth/youtube.readonly" - ] - } - } - }, - "captions": { - "methods": { - "delete": { - "id": "youtube.captions.delete", - "path": "captions", - "httpMethod": "DELETE", - "description": "Deletes a specified caption track.", - "parameters": { - "id": { - "type": "string", - "description": "The id parameter identifies the caption track that is being deleted. The value is a caption track ID as identified by the id property in a caption resource.", - "required": true, - "location": "query" - }, - "onBehalfOf": { - "type": "string", - "description": "ID of the Google+ Page for the channel that the request is be on behalf of", - "location": "query" - }, - "onBehalfOfContentOwner": { - "type": "string", - "description": "Note: This parameter is intended exclusively for YouTube content partners.\n\nThe onBehalfOfContentOwner parameter indicates that the request's authorization credentials identify a YouTube CMS user who is acting on behalf of the content owner specified in the parameter value. This parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to provide authentication credentials for each individual channel. The actual CMS account that the user authenticates with must be linked to the specified YouTube content owner.", - "location": "query" - } - }, - "parameterOrder": [ - "id" - ], - "scopes": [ - "https://www.googleapis.com/auth/youtube.force-ssl", - "https://www.googleapis.com/auth/youtubepartner" - ] - }, - "download": { - "id": "youtube.captions.download", - "path": "captions/{id}", - "httpMethod": "GET", - "description": "Downloads a caption track. The caption track is returned in its original format unless the request specifies a value for the tfmt parameter and in its original language unless the request specifies a value for the tlang parameter.", - "parameters": { - "id": { - "type": "string", - "description": "The id parameter identifies the caption track that is being retrieved. The value is a caption track ID as identified by the id property in a caption resource.", - "required": true, - "location": "path" - }, - "onBehalfOf": { - "type": "string", - "description": "ID of the Google+ Page for the channel that the request is be on behalf of", - "location": "query" - }, - "onBehalfOfContentOwner": { - "type": "string", - "description": "Note: This parameter is intended exclusively for YouTube content partners.\n\nThe onBehalfOfContentOwner parameter indicates that the request's authorization credentials identify a YouTube CMS user who is acting on behalf of the content owner specified in the parameter value. This parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to provide authentication credentials for each individual channel. The actual CMS account that the user authenticates with must be linked to the specified YouTube content owner.", - "location": "query" - }, - "tfmt": { - "type": "string", - "description": "The tfmt parameter specifies that the caption track should be returned in a specific format. If the parameter is not included in the request, the track is returned in its original format.", - "enum": [ - "sbv", - "scc", - "srt", - "ttml", - "vtt" - ], - "enumDescriptions": [ - "SubViewer subtitle.", - "Scenarist Closed Caption format.", - "SubRip subtitle.", - "Timed Text Markup Language caption.", - "Web Video Text Tracks caption." - ], - "location": "query" - }, - "tlang": { - "type": "string", - "description": "The tlang parameter specifies that the API response should return a translation of the specified caption track. The parameter value is an ISO 639-1 two-letter language code that identifies the desired caption language. The translation is generated by using machine translation, such as Google Translate.", - "location": "query" - } - }, - "parameterOrder": [ - "id" - ], - "scopes": [ - "https://www.googleapis.com/auth/youtube.force-ssl", - "https://www.googleapis.com/auth/youtubepartner" - ], - "supportsMediaDownload": true - }, - "insert": { - "id": "youtube.captions.insert", - "path": "captions", - "httpMethod": "POST", - "description": "Uploads a caption track.", - "parameters": { - "onBehalfOf": { - "type": "string", - "description": "ID of the Google+ Page for the channel that the request is be on behalf of", - "location": "query" - }, - "onBehalfOfContentOwner": { - "type": "string", - "description": "Note: This parameter is intended exclusively for YouTube content partners.\n\nThe onBehalfOfContentOwner parameter indicates that the request's authorization credentials identify a YouTube CMS user who is acting on behalf of the content owner specified in the parameter value. This parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to provide authentication credentials for each individual channel. The actual CMS account that the user authenticates with must be linked to the specified YouTube content owner.", - "location": "query" - }, - "part": { - "type": "string", - "description": "The part parameter specifies the caption resource parts that the API response will include. Set the parameter value to snippet.", - "required": true, - "location": "query" - }, - "sync": { - "type": "boolean", - "description": "The sync parameter indicates whether YouTube should automatically synchronize the caption file with the audio track of the video. If you set the value to true, YouTube will disregard any time codes that are in the uploaded caption file and generate new time codes for the captions.\n\nYou should set the sync parameter to true if you are uploading a transcript, which has no time codes, or if you suspect the time codes in your file are incorrect and want YouTube to try to fix them.", - "location": "query" - } - }, - "parameterOrder": [ - "part" - ], - "request": { - "$ref": "Caption" - }, - "response": { - "$ref": "Caption" - }, - "scopes": [ - "https://www.googleapis.com/auth/youtube.force-ssl", - "https://www.googleapis.com/auth/youtubepartner" - ], - "supportsMediaUpload": true, - "mediaUpload": { - "accept": [ - "*/*", - "application/octet-stream", - "text/xml" - ], - "maxSize": "100MB", - "protocols": { - "simple": { - "multipart": true, - "path": "/upload/youtube/v3/captions" - }, - "resumable": { - "multipart": true, - "path": "/resumable/upload/youtube/v3/captions" - } - } - } - }, - "list": { - "id": "youtube.captions.list", - "path": "captions", - "httpMethod": "GET", - "description": "Returns a list of caption tracks that are associated with a specified video. Note that the API response does not contain the actual captions and that the captions.download method provides the ability to retrieve a caption track.", - "parameters": { - "id": { - "type": "string", - "description": "The id parameter specifies a comma-separated list of IDs that identify the caption resources that should be retrieved. Each ID must identify a caption track associated with the specified video.", - "location": "query" - }, - "onBehalfOf": { - "type": "string", - "description": "ID of the Google+ Page for the channel that the request is on behalf of.", - "location": "query" - }, - "onBehalfOfContentOwner": { - "type": "string", - "description": "Note: This parameter is intended exclusively for YouTube content partners.\n\nThe onBehalfOfContentOwner parameter indicates that the request's authorization credentials identify a YouTube CMS user who is acting on behalf of the content owner specified in the parameter value. This parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to provide authentication credentials for each individual channel. The actual CMS account that the user authenticates with must be linked to the specified YouTube content owner.", - "location": "query" - }, - "part": { - "type": "string", - "description": "The part parameter specifies a comma-separated list of one or more caption resource parts that the API response will include. The part names that you can include in the parameter value are id and snippet.", - "required": true, - "location": "query" - }, - "videoId": { - "type": "string", - "description": "The videoId parameter specifies the YouTube video ID of the video for which the API should return caption tracks.", - "required": true, - "location": "query" - } - }, - "parameterOrder": [ - "part", - "videoId" - ], - "response": { - "$ref": "CaptionListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/youtube.force-ssl", - "https://www.googleapis.com/auth/youtubepartner" - ] - }, - "update": { - "id": "youtube.captions.update", - "path": "captions", - "httpMethod": "PUT", - "description": "Updates a caption track. When updating a caption track, you can change the track's draft status, upload a new caption file for the track, or both.", - "parameters": { - "onBehalfOf": { - "type": "string", - "description": "ID of the Google+ Page for the channel that the request is be on behalf of", - "location": "query" - }, - "onBehalfOfContentOwner": { - "type": "string", - "description": "Note: This parameter is intended exclusively for YouTube content partners.\n\nThe onBehalfOfContentOwner parameter indicates that the request's authorization credentials identify a YouTube CMS user who is acting on behalf of the content owner specified in the parameter value. This parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to provide authentication credentials for each individual channel. The actual CMS account that the user authenticates with must be linked to the specified YouTube content owner.", - "location": "query" - }, - "part": { - "type": "string", - "description": "The part parameter serves two purposes in this operation. It identifies the properties that the write operation will set as well as the properties that the API response will include. Set the property value to snippet if you are updating the track's draft status. Otherwise, set the property value to id.", - "required": true, - "location": "query" - }, - "sync": { - "type": "boolean", - "description": "Note: The API server only processes the parameter value if the request contains an updated caption file.\n\nThe sync parameter indicates whether YouTube should automatically synchronize the caption file with the audio track of the video. If you set the value to true, YouTube will automatically synchronize the caption track with the audio track.", - "location": "query" - } - }, - "parameterOrder": [ - "part" - ], - "request": { - "$ref": "Caption" - }, - "response": { - "$ref": "Caption" - }, - "scopes": [ - "https://www.googleapis.com/auth/youtube.force-ssl", - "https://www.googleapis.com/auth/youtubepartner" - ], - "supportsMediaUpload": true, - "mediaUpload": { - "accept": [ - "*/*", - "application/octet-stream", - "text/xml" - ], - "maxSize": "100MB", - "protocols": { - "simple": { - "multipart": true, - "path": "/upload/youtube/v3/captions" - }, - "resumable": { - "multipart": true, - "path": "/resumable/upload/youtube/v3/captions" - } - } - } - } - } - }, - "channelBanners": { - "methods": { - "insert": { - "id": "youtube.channelBanners.insert", - "path": "channelBanners/insert", - "httpMethod": "POST", - "description": "Uploads a channel banner image to YouTube. This method represents the first two steps in a three-step process to update the banner image for a channel:\n\n- Call the channelBanners.insert method to upload the binary image data to YouTube. The image must have a 16:9 aspect ratio and be at least 2120x1192 pixels.\n- Extract the url property's value from the response that the API returns for step 1.\n- Call the channels.update method to update the channel's branding settings. Set the brandingSettings.image.bannerExternalUrl property's value to the URL obtained in step 2.", - "parameters": { - "channelId": { - "type": "string", - "description": "The channelId parameter identifies the YouTube channel to which the banner is uploaded. The channelId parameter was introduced as a required parameter in May 2017. As this was a backward-incompatible change, channelBanners.insert requests that do not specify this parameter will not return an error until six months have passed from the time that the parameter was introduced. Please see the API Terms of Service for the official policy regarding backward incompatible changes and the API revision history for the exact date that the parameter was introduced.", - "location": "query" - }, - "onBehalfOfContentOwner": { - "type": "string", - "description": "Note: This parameter is intended exclusively for YouTube content partners.\n\nThe onBehalfOfContentOwner parameter indicates that the request's authorization credentials identify a YouTube CMS user who is acting on behalf of the content owner specified in the parameter value. This parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to provide authentication credentials for each individual channel. The CMS account that the user authenticates with must be linked to the specified YouTube content owner.", - "location": "query" - } - }, - "request": { - "$ref": "ChannelBannerResource" - }, - "response": { - "$ref": "ChannelBannerResource" - }, - "scopes": [ - "https://www.googleapis.com/auth/youtube", - "https://www.googleapis.com/auth/youtube.force-ssl", - "https://www.googleapis.com/auth/youtube.upload" - ], - "supportsMediaUpload": true, - "mediaUpload": { - "accept": [ - "application/octet-stream", - "image/jpeg", - "image/png" - ], - "maxSize": "6MB", - "protocols": { - "simple": { - "multipart": true, - "path": "/upload/youtube/v3/channelBanners/insert" - }, - "resumable": { - "multipart": true, - "path": "/resumable/upload/youtube/v3/channelBanners/insert" - } - } - } - } - } - }, - "channelSections": { - "methods": { - "delete": { - "id": "youtube.channelSections.delete", - "path": "channelSections", - "httpMethod": "DELETE", - "description": "Deletes a channelSection.", - "parameters": { - "id": { - "type": "string", - "description": "The id parameter specifies the YouTube channelSection ID for the resource that is being deleted. In a channelSection resource, the id property specifies the YouTube channelSection ID.", - "required": true, - "location": "query" - }, - "onBehalfOfContentOwner": { - "type": "string", - "description": "Note: This parameter is intended exclusively for YouTube content partners.\n\nThe onBehalfOfContentOwner parameter indicates that the request's authorization credentials identify a YouTube CMS user who is acting on behalf of the content owner specified in the parameter value. This parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to provide authentication credentials for each individual channel. The CMS account that the user authenticates with must be linked to the specified YouTube content owner.", - "location": "query" - } - }, - "parameterOrder": [ - "id" - ], - "scopes": [ - "https://www.googleapis.com/auth/youtube", - "https://www.googleapis.com/auth/youtube.force-ssl", - "https://www.googleapis.com/auth/youtubepartner" - ] - }, - "insert": { - "id": "youtube.channelSections.insert", - "path": "channelSections", - "httpMethod": "POST", - "description": "Adds a channelSection for the authenticated user's channel.", - "parameters": { - "onBehalfOfContentOwner": { - "type": "string", - "description": "Note: This parameter is intended exclusively for YouTube content partners.\n\nThe onBehalfOfContentOwner parameter indicates that the request's authorization credentials identify a YouTube CMS user who is acting on behalf of the content owner specified in the parameter value. This parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to provide authentication credentials for each individual channel. The CMS account that the user authenticates with must be linked to the specified YouTube content owner.", - "location": "query" - }, - "onBehalfOfContentOwnerChannel": { - "type": "string", - "description": "This parameter can only be used in a properly authorized request. Note: This parameter is intended exclusively for YouTube content partners.\n\nThe onBehalfOfContentOwnerChannel parameter specifies the YouTube channel ID of the channel to which a video is being added. This parameter is required when a request specifies a value for the onBehalfOfContentOwner parameter, and it can only be used in conjunction with that parameter. In addition, the request must be authorized using a CMS account that is linked to the content owner that the onBehalfOfContentOwner parameter specifies. Finally, the channel that the onBehalfOfContentOwnerChannel parameter value specifies must be linked to the content owner that the onBehalfOfContentOwner parameter specifies.\n\nThis parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and perform actions on behalf of the channel specified in the parameter value, without having to provide authentication credentials for each separate channel.", - "location": "query" - }, - "part": { - "type": "string", - "description": "The part parameter serves two purposes in this operation. It identifies the properties that the write operation will set as well as the properties that the API response will include.\n\nThe part names that you can include in the parameter value are snippet and contentDetails.", - "required": true, - "location": "query" - } - }, - "parameterOrder": [ - "part" - ], - "request": { - "$ref": "ChannelSection" - }, - "response": { - "$ref": "ChannelSection" - }, - "scopes": [ - "https://www.googleapis.com/auth/youtube", - "https://www.googleapis.com/auth/youtube.force-ssl", - "https://www.googleapis.com/auth/youtubepartner" - ] - }, - "list": { - "id": "youtube.channelSections.list", - "path": "channelSections", - "httpMethod": "GET", - "description": "Returns channelSection resources that match the API request criteria.", - "parameters": { - "channelId": { - "type": "string", - "description": "The channelId parameter specifies a YouTube channel ID. The API will only return that channel's channelSections.", - "location": "query" - }, - "hl": { - "type": "string", - "description": "The hl parameter indicates that the snippet.localized property values in the returned channelSection resources should be in the specified language if localized values for that language are available. For example, if the API request specifies hl=de, the snippet.localized properties in the API response will contain German titles if German titles are available. Channel owners can provide localized channel section titles using either the channelSections.insert or channelSections.update method.", - "location": "query" - }, - "id": { - "type": "string", - "description": "The id parameter specifies a comma-separated list of the YouTube channelSection ID(s) for the resource(s) that are being retrieved. In a channelSection resource, the id property specifies the YouTube channelSection ID.", - "location": "query" - }, - "mine": { - "type": "boolean", - "description": "Set this parameter's value to true to retrieve a feed of the authenticated user's channelSections.", - "location": "query" - }, - "onBehalfOfContentOwner": { - "type": "string", - "description": "Note: This parameter is intended exclusively for YouTube content partners.\n\nThe onBehalfOfContentOwner parameter indicates that the request's authorization credentials identify a YouTube CMS user who is acting on behalf of the content owner specified in the parameter value. This parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to provide authentication credentials for each individual channel. The CMS account that the user authenticates with must be linked to the specified YouTube content owner.", - "location": "query" - }, - "part": { - "type": "string", - "description": "The part parameter specifies a comma-separated list of one or more channelSection resource properties that the API response will include. The part names that you can include in the parameter value are id, snippet, and contentDetails.\n\nIf the parameter identifies a property that contains child properties, the child properties will be included in the response. For example, in a channelSection resource, the snippet property contains other properties, such as a display title for the channelSection. If you set part=snippet, the API response will also contain all of those nested properties.", - "required": true, - "location": "query" - } - }, - "parameterOrder": [ - "part" - ], - "response": { - "$ref": "ChannelSectionListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/youtube", - "https://www.googleapis.com/auth/youtube.force-ssl", - "https://www.googleapis.com/auth/youtube.readonly", - "https://www.googleapis.com/auth/youtubepartner" - ] - }, - "update": { - "id": "youtube.channelSections.update", - "path": "channelSections", - "httpMethod": "PUT", - "description": "Update a channelSection.", - "parameters": { - "onBehalfOfContentOwner": { - "type": "string", - "description": "Note: This parameter is intended exclusively for YouTube content partners.\n\nThe onBehalfOfContentOwner parameter indicates that the request's authorization credentials identify a YouTube CMS user who is acting on behalf of the content owner specified in the parameter value. This parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to provide authentication credentials for each individual channel. The CMS account that the user authenticates with must be linked to the specified YouTube content owner.", - "location": "query" - }, - "part": { - "type": "string", - "description": "The part parameter serves two purposes in this operation. It identifies the properties that the write operation will set as well as the properties that the API response will include.\n\nThe part names that you can include in the parameter value are snippet and contentDetails.", - "required": true, - "location": "query" - } - }, - "parameterOrder": [ - "part" - ], - "request": { - "$ref": "ChannelSection" - }, - "response": { - "$ref": "ChannelSection" - }, - "scopes": [ - "https://www.googleapis.com/auth/youtube", - "https://www.googleapis.com/auth/youtube.force-ssl", - "https://www.googleapis.com/auth/youtubepartner" - ] - } - } - }, - "channels": { - "methods": { - "list": { - "id": "youtube.channels.list", - "path": "channels", - "httpMethod": "GET", - "description": "Returns a collection of zero or more channel resources that match the request criteria.", - "parameters": { - "categoryId": { - "type": "string", - "description": "The categoryId parameter specifies a YouTube guide category, thereby requesting YouTube channels associated with that category.", - "location": "query" - }, - "forUsername": { - "type": "string", - "description": "The forUsername parameter specifies a YouTube username, thereby requesting the channel associated with that username.", - "location": "query" - }, - "hl": { - "type": "string", - "description": "The hl parameter should be used for filter out the properties that are not in the given language. Used for the brandingSettings part.", - "location": "query" - }, - "id": { - "type": "string", - "description": "The id parameter specifies a comma-separated list of the YouTube channel ID(s) for the resource(s) that are being retrieved. In a channel resource, the id property specifies the channel's YouTube channel ID.", - "location": "query" - }, - "managedByMe": { - "type": "boolean", - "description": "Note: This parameter is intended exclusively for YouTube content partners.\n\nSet this parameter's value to true to instruct the API to only return channels managed by the content owner that the onBehalfOfContentOwner parameter specifies. The user must be authenticated as a CMS account linked to the specified content owner and onBehalfOfContentOwner must be provided.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maxResults parameter specifies the maximum number of items that should be returned in the result set.", - "default": "5", - "format": "uint32", - "minimum": "0", - "maximum": "50", - "location": "query" - }, - "mine": { - "type": "boolean", - "description": "Set this parameter's value to true to instruct the API to only return channels owned by the authenticated user.", - "location": "query" - }, - "mySubscribers": { - "type": "boolean", - "description": "Use the subscriptions.list method and its mySubscribers parameter to retrieve a list of subscribers to the authenticated user's channel.", - "location": "query" - }, - "onBehalfOfContentOwner": { - "type": "string", - "description": "Note: This parameter is intended exclusively for YouTube content partners.\n\nThe onBehalfOfContentOwner parameter indicates that the request's authorization credentials identify a YouTube CMS user who is acting on behalf of the content owner specified in the parameter value. This parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to provide authentication credentials for each individual channel. The CMS account that the user authenticates with must be linked to the specified YouTube content owner.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "The pageToken parameter identifies a specific page in the result set that should be returned. In an API response, the nextPageToken and prevPageToken properties identify other pages that could be retrieved.", - "location": "query" - }, - "part": { - "type": "string", - "description": "The part parameter specifies a comma-separated list of one or more channel resource properties that the API response will include.\n\nIf the parameter identifies a property that contains child properties, the child properties will be included in the response. For example, in a channel resource, the contentDetails property contains other properties, such as the uploads properties. As such, if you set part=contentDetails, the API response will also contain all of those nested properties.", - "required": true, - "location": "query" - } - }, - "parameterOrder": [ - "part" - ], - "response": { - "$ref": "ChannelListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/youtube", - "https://www.googleapis.com/auth/youtube.force-ssl", - "https://www.googleapis.com/auth/youtube.readonly", - "https://www.googleapis.com/auth/youtubepartner", - "https://www.googleapis.com/auth/youtubepartner-channel-audit" - ] - }, - "update": { - "id": "youtube.channels.update", - "path": "channels", - "httpMethod": "PUT", - "description": "Updates a channel's metadata. Note that this method currently only supports updates to the channel resource's brandingSettings and invideoPromotion objects and their child properties.", - "parameters": { - "onBehalfOfContentOwner": { - "type": "string", - "description": "The onBehalfOfContentOwner parameter indicates that the authenticated user is acting on behalf of the content owner specified in the parameter value. This parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to provide authentication credentials for each individual channel. The actual CMS account that the user authenticates with needs to be linked to the specified YouTube content owner.", - "location": "query" - }, - "part": { - "type": "string", - "description": "The part parameter serves two purposes in this operation. It identifies the properties that the write operation will set as well as the properties that the API response will include.\n\nThe API currently only allows the parameter value to be set to either brandingSettings or invideoPromotion. (You cannot update both of those parts with a single request.)\n\nNote that this method overrides the existing values for all of the mutable properties that are contained in any parts that the parameter value specifies.", - "required": true, - "location": "query" - } - }, - "parameterOrder": [ - "part" - ], - "request": { - "$ref": "Channel" - }, - "response": { - "$ref": "Channel" - }, - "scopes": [ - "https://www.googleapis.com/auth/youtube", - "https://www.googleapis.com/auth/youtube.force-ssl", - "https://www.googleapis.com/auth/youtubepartner" - ] - } - } - }, - "commentThreads": { - "methods": { - "insert": { - "id": "youtube.commentThreads.insert", - "path": "commentThreads", - "httpMethod": "POST", - "description": "Creates a new top-level comment. To add a reply to an existing comment, use the comments.insert method instead.", - "parameters": { - "part": { - "type": "string", - "description": "The part parameter identifies the properties that the API response will include. Set the parameter value to snippet. The snippet part has a quota cost of 2 units.", - "required": true, - "location": "query" - } - }, - "parameterOrder": [ - "part" - ], - "request": { - "$ref": "CommentThread" - }, - "response": { - "$ref": "CommentThread" - }, - "scopes": [ - "https://www.googleapis.com/auth/youtube.force-ssl" - ] - }, - "list": { - "id": "youtube.commentThreads.list", - "path": "commentThreads", - "httpMethod": "GET", - "description": "Returns a list of comment threads that match the API request parameters.", - "parameters": { - "allThreadsRelatedToChannelId": { - "type": "string", - "description": "The allThreadsRelatedToChannelId parameter instructs the API to return all comment threads associated with the specified channel. The response can include comments about the channel or about the channel's videos.", - "location": "query" - }, - "channelId": { - "type": "string", - "description": "The channelId parameter instructs the API to return comment threads containing comments about the specified channel. (The response will not include comments left on videos that the channel uploaded.)", - "location": "query" - }, - "id": { - "type": "string", - "description": "The id parameter specifies a comma-separated list of comment thread IDs for the resources that should be retrieved.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maxResults parameter specifies the maximum number of items that should be returned in the result set.\n\nNote: This parameter is not supported for use in conjunction with the id parameter.", - "default": "20", - "format": "uint32", - "minimum": "1", - "maximum": "100", - "location": "query" - }, - "moderationStatus": { - "type": "string", - "description": "Set this parameter to limit the returned comment threads to a particular moderation state.\n\nNote: This parameter is not supported for use in conjunction with the id parameter.", - "default": "MODERATION_STATUS_PUBLISHED", - "enum": [ - "heldForReview", - "likelySpam", - "published" - ], - "enumDescriptions": [ - "Retrieve comment threads that are awaiting review by a moderator. A comment thread can be included in the response if the top-level comment or at least one of the replies to that comment are awaiting review.", - "Retrieve comment threads classified as likely to be spam. A comment thread can be included in the response if the top-level comment or at least one of the replies to that comment is considered likely to be spam.", - "Retrieve threads of published comments. This is the default value. A comment thread can be included in the response if its top-level comment has been published." - ], - "location": "query" - }, - "order": { - "type": "string", - "description": "The order parameter specifies the order in which the API response should list comment threads. Valid values are: \n- time - Comment threads are ordered by time. This is the default behavior.\n- relevance - Comment threads are ordered by relevance.Note: This parameter is not supported for use in conjunction with the id parameter.", - "default": "true", - "enum": [ - "relevance", - "time" - ], - "enumDescriptions": [ - "Order by relevance.", - "Order by time." - ], - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "The pageToken parameter identifies a specific page in the result set that should be returned. In an API response, the nextPageToken property identifies the next page of the result that can be retrieved.\n\nNote: This parameter is not supported for use in conjunction with the id parameter.", - "location": "query" - }, - "part": { - "type": "string", - "description": "The part parameter specifies a comma-separated list of one or more commentThread resource properties that the API response will include.", - "required": true, - "location": "query" - }, - "searchTerms": { - "type": "string", - "description": "The searchTerms parameter instructs the API to limit the API response to only contain comments that contain the specified search terms.\n\nNote: This parameter is not supported for use in conjunction with the id parameter.", - "location": "query" - }, - "textFormat": { - "type": "string", - "description": "Set this parameter's value to html or plainText to instruct the API to return the comments left by users in html formatted or in plain text.", - "default": "FORMAT_HTML", - "enum": [ - "html", - "plainText" - ], - "enumDescriptions": [ - "Returns the comments in HTML format. This is the default value.", - "Returns the comments in plain text format." - ], - "location": "query" - }, - "videoId": { - "type": "string", - "description": "The videoId parameter instructs the API to return comment threads associated with the specified video ID.", - "location": "query" + "methods": { + "set": { + "description": "Uploads a custom video thumbnail to YouTube and sets it for a video.", + "httpMethod": "POST", + "id": "youtube.thumbnails.set", + "mediaUpload": { + "accept": [ + "application/octet-stream", + "image/jpeg", + "image/png" + ], + "maxSize": "2MB", + "protocols": { + "resumable": { + "multipart": true, + "path": "/resumable/upload/youtube/v3/thumbnails/set" + }, + "simple": { + "multipart": true, + "path": "/upload/youtube/v3/thumbnails/set" + } + } + }, + "parameterOrder": [ + "videoId" + ], + "parameters": { + "onBehalfOfContentOwner": { + "description": "Note: This parameter is intended exclusively for YouTube content partners.\n\nThe onBehalfOfContentOwner parameter indicates that the request's authorization credentials identify a YouTube CMS user who is acting on behalf of the content owner specified in the parameter value. This parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to provide authentication credentials for each individual channel. The actual CMS account that the user authenticates with must be linked to the specified YouTube content owner.", + "location": "query", + "type": "string" + }, + "videoId": { + "description": "The videoId parameter specifies a YouTube video ID for which the custom video thumbnail is being provided.", + "location": "query", + "required": true, + "type": "string" + } + }, + "path": "thumbnails/set", + "response": { + "$ref": "ThumbnailSetResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/youtube", + "https://www.googleapis.com/auth/youtube.force-ssl", + "https://www.googleapis.com/auth/youtube.upload", + "https://www.googleapis.com/auth/youtubepartner" + ], + "supportsMediaUpload": true + } } - }, - "parameterOrder": [ - "part" - ], - "response": { - "$ref": "CommentThreadListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/youtube.force-ssl" - ] - }, - "update": { - "id": "youtube.commentThreads.update", - "path": "commentThreads", - "httpMethod": "PUT", - "description": "Modifies the top-level comment in a comment thread.", - "parameters": { - "part": { - "type": "string", - "description": "The part parameter specifies a comma-separated list of commentThread resource properties that the API response will include. You must at least include the snippet part in the parameter value since that part contains all of the properties that the API request can update.", - "required": true, - "location": "query" - } - }, - "parameterOrder": [ - "part" - ], - "request": { - "$ref": "CommentThread" - }, - "response": { - "$ref": "CommentThread" - }, - "scopes": [ - "https://www.googleapis.com/auth/youtube.force-ssl" - ] - } - } - }, - "comments": { - "methods": { - "delete": { - "id": "youtube.comments.delete", - "path": "comments", - "httpMethod": "DELETE", - "description": "Deletes a comment.", - "parameters": { - "id": { - "type": "string", - "description": "The id parameter specifies the comment ID for the resource that is being deleted.", - "required": true, - "location": "query" - } - }, - "parameterOrder": [ - "id" - ], - "scopes": [ - "https://www.googleapis.com/auth/youtube.force-ssl" - ] - }, - "insert": { - "id": "youtube.comments.insert", - "path": "comments", - "httpMethod": "POST", - "description": "Creates a reply to an existing comment. Note: To create a top-level comment, use the commentThreads.insert method.", - "parameters": { - "part": { - "type": "string", - "description": "The part parameter identifies the properties that the API response will include. Set the parameter value to snippet. The snippet part has a quota cost of 2 units.", - "required": true, - "location": "query" - } - }, - "parameterOrder": [ - "part" - ], - "request": { - "$ref": "Comment" - }, - "response": { - "$ref": "Comment" - }, - "scopes": [ - "https://www.googleapis.com/auth/youtube.force-ssl" - ] - }, - "list": { - "id": "youtube.comments.list", - "path": "comments", - "httpMethod": "GET", - "description": "Returns a list of comments that match the API request parameters.", - "parameters": { - "id": { - "type": "string", - "description": "The id parameter specifies a comma-separated list of comment IDs for the resources that are being retrieved. In a comment resource, the id property specifies the comment's ID.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maxResults parameter specifies the maximum number of items that should be returned in the result set.\n\nNote: This parameter is not supported for use in conjunction with the id parameter.", - "default": "20", - "format": "uint32", - "minimum": "1", - "maximum": "100", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "The pageToken parameter identifies a specific page in the result set that should be returned. In an API response, the nextPageToken property identifies the next page of the result that can be retrieved.\n\nNote: This parameter is not supported for use in conjunction with the id parameter.", - "location": "query" - }, - "parentId": { - "type": "string", - "description": "The parentId parameter specifies the ID of the comment for which replies should be retrieved.\n\nNote: YouTube currently supports replies only for top-level comments. However, replies to replies may be supported in the future.", - "location": "query" - }, - "part": { - "type": "string", - "description": "The part parameter specifies a comma-separated list of one or more comment resource properties that the API response will include.", - "required": true, - "location": "query" - }, - "textFormat": { - "type": "string", - "description": "This parameter indicates whether the API should return comments formatted as HTML or as plain text.", - "default": "FORMAT_HTML", - "enum": [ - "html", - "plainText" - ], - "enumDescriptions": [ - "Returns the comments in HTML format. This is the default value.", - "Returns the comments in plain text format." - ], - "location": "query" - } - }, - "parameterOrder": [ - "part" - ], - "response": { - "$ref": "CommentListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/youtube.force-ssl" - ] - }, - "markAsSpam": { - "id": "youtube.comments.markAsSpam", - "path": "comments/markAsSpam", - "httpMethod": "POST", - "description": "Expresses the caller's opinion that one or more comments should be flagged as spam.", - "parameters": { - "id": { - "type": "string", - "description": "The id parameter specifies a comma-separated list of IDs of comments that the caller believes should be classified as spam.", - "required": true, - "location": "query" - } - }, - "parameterOrder": [ - "id" - ], - "scopes": [ - "https://www.googleapis.com/auth/youtube.force-ssl" - ] - }, - "setModerationStatus": { - "id": "youtube.comments.setModerationStatus", - "path": "comments/setModerationStatus", - "httpMethod": "POST", - "description": "Sets the moderation status of one or more comments. The API request must be authorized by the owner of the channel or video associated with the comments.", - "parameters": { - "banAuthor": { - "type": "boolean", - "description": "The banAuthor parameter lets you indicate that you want to automatically reject any additional comments written by the comment's author. Set the parameter value to true to ban the author.\n\nNote: This parameter is only valid if the moderationStatus parameter is also set to rejected.", - "default": "false", - "location": "query" - }, - "id": { - "type": "string", - "description": "The id parameter specifies a comma-separated list of IDs that identify the comments for which you are updating the moderation status.", - "required": true, - "location": "query" - }, - "moderationStatus": { - "type": "string", - "description": "Identifies the new moderation status of the specified comments.", - "required": true, - "enum": [ - "heldForReview", - "published", - "rejected" - ], - "enumDescriptions": [ - "Marks a comment as awaiting review by a moderator.", - "Clears a comment for public display.", - "Rejects a comment as being unfit for display. This action also effectively hides all replies to the rejected comment.\n\nNote: The API does not currently provide a way to list or otherwise discover rejected comments. However, you can change the moderation status of a rejected comment if you still know its ID. If you were to change the moderation status of a rejected comment, the comment replies would subsequently be discoverable again as well." - ], - "location": "query" - } - }, - "parameterOrder": [ - "id", - "moderationStatus" - ], - "scopes": [ - "https://www.googleapis.com/auth/youtube.force-ssl" - ] - }, - "update": { - "id": "youtube.comments.update", - "path": "comments", - "httpMethod": "PUT", - "description": "Modifies a comment.", - "parameters": { - "part": { - "type": "string", - "description": "The part parameter identifies the properties that the API response will include. You must at least include the snippet part in the parameter value since that part contains all of the properties that the API request can update.", - "required": true, - "location": "query" - } - }, - "parameterOrder": [ - "part" - ], - "request": { - "$ref": "Comment" - }, - "response": { - "$ref": "Comment" - }, - "scopes": [ - "https://www.googleapis.com/auth/youtube.force-ssl" - ] - } - } - }, - "fanFundingEvents": { - "methods": { - "list": { - "id": "youtube.fanFundingEvents.list", - "path": "fanFundingEvents", - "httpMethod": "GET", - "description": "Lists fan funding events for a channel.", - "parameters": { - "hl": { - "type": "string", - "description": "The hl parameter instructs the API to retrieve localized resource metadata for a specific application language that the YouTube website supports. The parameter value must be a language code included in the list returned by the i18nLanguages.list method.\n\nIf localized resource details are available in that language, the resource's snippet.localized object will contain the localized values. However, if localized details are not available, the snippet.localized object will contain resource details in the resource's default language.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maxResults parameter specifies the maximum number of items that should be returned in the result set.", - "default": "5", - "format": "uint32", - "minimum": "0", - "maximum": "50", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "The pageToken parameter identifies a specific page in the result set that should be returned. In an API response, the nextPageToken and prevPageToken properties identify other pages that could be retrieved.", - "location": "query" - }, - "part": { - "type": "string", - "description": "The part parameter specifies the fanFundingEvent resource parts that the API response will include. Supported values are id and snippet.", - "required": true, - "location": "query" - } - }, - "parameterOrder": [ - "part" - ], - "response": { - "$ref": "FanFundingEventListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/youtube", - "https://www.googleapis.com/auth/youtube.force-ssl", - "https://www.googleapis.com/auth/youtube.readonly" - ] - } - } - }, - "guideCategories": { - "methods": { - "list": { - "id": "youtube.guideCategories.list", - "path": "guideCategories", - "httpMethod": "GET", - "description": "Returns a list of categories that can be associated with YouTube channels.", - "parameters": { - "hl": { - "type": "string", - "description": "The hl parameter specifies the language that will be used for text values in the API response.", - "default": "en-US", - "location": "query" - }, - "id": { - "type": "string", - "description": "The id parameter specifies a comma-separated list of the YouTube channel category ID(s) for the resource(s) that are being retrieved. In a guideCategory resource, the id property specifies the YouTube channel category ID.", - "location": "query" - }, - "part": { - "type": "string", - "description": "The part parameter specifies the guideCategory resource properties that the API response will include. Set the parameter value to snippet.", - "required": true, - "location": "query" - }, - "regionCode": { - "type": "string", - "description": "The regionCode parameter instructs the API to return the list of guide categories available in the specified country. The parameter value is an ISO 3166-1 alpha-2 country code.", - "location": "query" - } - }, - "parameterOrder": [ - "part" - ], - "response": { - "$ref": "GuideCategoryListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/youtube", - "https://www.googleapis.com/auth/youtube.force-ssl", - "https://www.googleapis.com/auth/youtube.readonly", - "https://www.googleapis.com/auth/youtubepartner" - ] - } - } - }, - "i18nLanguages": { - "methods": { - "list": { - "id": "youtube.i18nLanguages.list", - "path": "i18nLanguages", - "httpMethod": "GET", - "description": "Returns a list of application languages that the YouTube website supports.", - "parameters": { - "hl": { - "type": "string", - "description": "The hl parameter specifies the language that should be used for text values in the API response.", - "default": "en_US", - "location": "query" - }, - "part": { - "type": "string", - "description": "The part parameter specifies the i18nLanguage resource properties that the API response will include. Set the parameter value to snippet.", - "required": true, - "location": "query" - } - }, - "parameterOrder": [ - "part" - ], - "response": { - "$ref": "I18nLanguageListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/youtube", - "https://www.googleapis.com/auth/youtube.force-ssl", - "https://www.googleapis.com/auth/youtube.readonly", - "https://www.googleapis.com/auth/youtubepartner" - ] - } - } - }, - "i18nRegions": { - "methods": { - "list": { - "id": "youtube.i18nRegions.list", - "path": "i18nRegions", - "httpMethod": "GET", - "description": "Returns a list of content regions that the YouTube website supports.", - "parameters": { - "hl": { - "type": "string", - "description": "The hl parameter specifies the language that should be used for text values in the API response.", - "default": "en_US", - "location": "query" - }, - "part": { - "type": "string", - "description": "The part parameter specifies the i18nRegion resource properties that the API response will include. Set the parameter value to snippet.", - "required": true, - "location": "query" - } - }, - "parameterOrder": [ - "part" - ], - "response": { - "$ref": "I18nRegionListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/youtube", - "https://www.googleapis.com/auth/youtube.force-ssl", - "https://www.googleapis.com/auth/youtube.readonly", - "https://www.googleapis.com/auth/youtubepartner" - ] - } - } - }, - "liveBroadcasts": { - "methods": { - "bind": { - "id": "youtube.liveBroadcasts.bind", - "path": "liveBroadcasts/bind", - "httpMethod": "POST", - "description": "Binds a YouTube broadcast to a stream or removes an existing binding between a broadcast and a stream. A broadcast can only be bound to one video stream, though a video stream may be bound to more than one broadcast.", - "parameters": { - "id": { - "type": "string", - "description": "The id parameter specifies the unique ID of the broadcast that is being bound to a video stream.", - "required": true, - "location": "query" - }, - "onBehalfOfContentOwner": { - "type": "string", - "description": "Note: This parameter is intended exclusively for YouTube content partners.\n\nThe onBehalfOfContentOwner parameter indicates that the request's authorization credentials identify a YouTube CMS user who is acting on behalf of the content owner specified in the parameter value. This parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to provide authentication credentials for each individual channel. The CMS account that the user authenticates with must be linked to the specified YouTube content owner.", - "location": "query" - }, - "onBehalfOfContentOwnerChannel": { - "type": "string", - "description": "This parameter can only be used in a properly authorized request. Note: This parameter is intended exclusively for YouTube content partners.\n\nThe onBehalfOfContentOwnerChannel parameter specifies the YouTube channel ID of the channel to which a video is being added. This parameter is required when a request specifies a value for the onBehalfOfContentOwner parameter, and it can only be used in conjunction with that parameter. In addition, the request must be authorized using a CMS account that is linked to the content owner that the onBehalfOfContentOwner parameter specifies. Finally, the channel that the onBehalfOfContentOwnerChannel parameter value specifies must be linked to the content owner that the onBehalfOfContentOwner parameter specifies.\n\nThis parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and perform actions on behalf of the channel specified in the parameter value, without having to provide authentication credentials for each separate channel.", - "location": "query" - }, - "part": { - "type": "string", - "description": "The part parameter specifies a comma-separated list of one or more liveBroadcast resource properties that the API response will include. The part names that you can include in the parameter value are id, snippet, contentDetails, and status.", - "required": true, - "location": "query" - }, - "streamId": { - "type": "string", - "description": "The streamId parameter specifies the unique ID of the video stream that is being bound to a broadcast. If this parameter is omitted, the API will remove any existing binding between the broadcast and a video stream.", - "location": "query" - } - }, - "parameterOrder": [ - "id", - "part" - ], - "response": { - "$ref": "LiveBroadcast" - }, - "scopes": [ - "https://www.googleapis.com/auth/youtube", - "https://www.googleapis.com/auth/youtube.force-ssl" - ] - }, - "control": { - "id": "youtube.liveBroadcasts.control", - "path": "liveBroadcasts/control", - "httpMethod": "POST", - "description": "Controls the settings for a slate that can be displayed in the broadcast stream.", - "parameters": { - "displaySlate": { - "type": "boolean", - "description": "The displaySlate parameter specifies whether the slate is being enabled or disabled.", - "location": "query" - }, - "id": { - "type": "string", - "description": "The id parameter specifies the YouTube live broadcast ID that uniquely identifies the broadcast in which the slate is being updated.", - "required": true, - "location": "query" - }, - "offsetTimeMs": { - "type": "string", - "description": "The offsetTimeMs parameter specifies a positive time offset when the specified slate change will occur. The value is measured in milliseconds from the beginning of the broadcast's monitor stream, which is the time that the testing phase for the broadcast began. Even though it is specified in milliseconds, the value is actually an approximation, and YouTube completes the requested action as closely as possible to that time.\n\nIf you do not specify a value for this parameter, then YouTube performs the action as soon as possible. See the Getting started guide for more details.\n\nImportant: You should only specify a value for this parameter if your broadcast stream is delayed.", - "format": "uint64", - "location": "query" - }, - "onBehalfOfContentOwner": { - "type": "string", - "description": "Note: This parameter is intended exclusively for YouTube content partners.\n\nThe onBehalfOfContentOwner parameter indicates that the request's authorization credentials identify a YouTube CMS user who is acting on behalf of the content owner specified in the parameter value. This parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to provide authentication credentials for each individual channel. The CMS account that the user authenticates with must be linked to the specified YouTube content owner.", - "location": "query" - }, - "onBehalfOfContentOwnerChannel": { - "type": "string", - "description": "This parameter can only be used in a properly authorized request. Note: This parameter is intended exclusively for YouTube content partners.\n\nThe onBehalfOfContentOwnerChannel parameter specifies the YouTube channel ID of the channel to which a video is being added. This parameter is required when a request specifies a value for the onBehalfOfContentOwner parameter, and it can only be used in conjunction with that parameter. In addition, the request must be authorized using a CMS account that is linked to the content owner that the onBehalfOfContentOwner parameter specifies. Finally, the channel that the onBehalfOfContentOwnerChannel parameter value specifies must be linked to the content owner that the onBehalfOfContentOwner parameter specifies.\n\nThis parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and perform actions on behalf of the channel specified in the parameter value, without having to provide authentication credentials for each separate channel.", - "location": "query" - }, - "part": { - "type": "string", - "description": "The part parameter specifies a comma-separated list of one or more liveBroadcast resource properties that the API response will include. The part names that you can include in the parameter value are id, snippet, contentDetails, and status.", - "required": true, - "location": "query" - }, - "walltime": { - "type": "string", - "description": "The walltime parameter specifies the wall clock time at which the specified slate change will occur. The value is specified in ISO 8601 (YYYY-MM-DDThh:mm:ss.sssZ) format.", - "format": "date-time", - "location": "query" - } - }, - "parameterOrder": [ - "id", - "part" - ], - "response": { - "$ref": "LiveBroadcast" - }, - "scopes": [ - "https://www.googleapis.com/auth/youtube", - "https://www.googleapis.com/auth/youtube.force-ssl" - ] - }, - "delete": { - "id": "youtube.liveBroadcasts.delete", - "path": "liveBroadcasts", - "httpMethod": "DELETE", - "description": "Deletes a broadcast.", - "parameters": { - "id": { - "type": "string", - "description": "The id parameter specifies the YouTube live broadcast ID for the resource that is being deleted.", - "required": true, - "location": "query" - }, - "onBehalfOfContentOwner": { - "type": "string", - "description": "Note: This parameter is intended exclusively for YouTube content partners.\n\nThe onBehalfOfContentOwner parameter indicates that the request's authorization credentials identify a YouTube CMS user who is acting on behalf of the content owner specified in the parameter value. This parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to provide authentication credentials for each individual channel. The CMS account that the user authenticates with must be linked to the specified YouTube content owner.", - "location": "query" - }, - "onBehalfOfContentOwnerChannel": { - "type": "string", - "description": "This parameter can only be used in a properly authorized request. Note: This parameter is intended exclusively for YouTube content partners.\n\nThe onBehalfOfContentOwnerChannel parameter specifies the YouTube channel ID of the channel to which a video is being added. This parameter is required when a request specifies a value for the onBehalfOfContentOwner parameter, and it can only be used in conjunction with that parameter. In addition, the request must be authorized using a CMS account that is linked to the content owner that the onBehalfOfContentOwner parameter specifies. Finally, the channel that the onBehalfOfContentOwnerChannel parameter value specifies must be linked to the content owner that the onBehalfOfContentOwner parameter specifies.\n\nThis parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and perform actions on behalf of the channel specified in the parameter value, without having to provide authentication credentials for each separate channel.", - "location": "query" - } - }, - "parameterOrder": [ - "id" - ], - "scopes": [ - "https://www.googleapis.com/auth/youtube", - "https://www.googleapis.com/auth/youtube.force-ssl" - ] - }, - "insert": { - "id": "youtube.liveBroadcasts.insert", - "path": "liveBroadcasts", - "httpMethod": "POST", - "description": "Creates a broadcast.", - "parameters": { - "onBehalfOfContentOwner": { - "type": "string", - "description": "Note: This parameter is intended exclusively for YouTube content partners.\n\nThe onBehalfOfContentOwner parameter indicates that the request's authorization credentials identify a YouTube CMS user who is acting on behalf of the content owner specified in the parameter value. This parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to provide authentication credentials for each individual channel. The CMS account that the user authenticates with must be linked to the specified YouTube content owner.", - "location": "query" - }, - "onBehalfOfContentOwnerChannel": { - "type": "string", - "description": "This parameter can only be used in a properly authorized request. Note: This parameter is intended exclusively for YouTube content partners.\n\nThe onBehalfOfContentOwnerChannel parameter specifies the YouTube channel ID of the channel to which a video is being added. This parameter is required when a request specifies a value for the onBehalfOfContentOwner parameter, and it can only be used in conjunction with that parameter. In addition, the request must be authorized using a CMS account that is linked to the content owner that the onBehalfOfContentOwner parameter specifies. Finally, the channel that the onBehalfOfContentOwnerChannel parameter value specifies must be linked to the content owner that the onBehalfOfContentOwner parameter specifies.\n\nThis parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and perform actions on behalf of the channel specified in the parameter value, without having to provide authentication credentials for each separate channel.", - "location": "query" - }, - "part": { - "type": "string", - "description": "The part parameter serves two purposes in this operation. It identifies the properties that the write operation will set as well as the properties that the API response will include.\n\nThe part properties that you can include in the parameter value are id, snippet, contentDetails, and status.", - "required": true, - "location": "query" - } - }, - "parameterOrder": [ - "part" - ], - "request": { - "$ref": "LiveBroadcast" - }, - "response": { - "$ref": "LiveBroadcast" - }, - "scopes": [ - "https://www.googleapis.com/auth/youtube", - "https://www.googleapis.com/auth/youtube.force-ssl" - ] - }, - "list": { - "id": "youtube.liveBroadcasts.list", - "path": "liveBroadcasts", - "httpMethod": "GET", - "description": "Returns a list of YouTube broadcasts that match the API request parameters.", - "parameters": { - "broadcastStatus": { - "type": "string", - "description": "The broadcastStatus parameter filters the API response to only include broadcasts with the specified status.", - "enum": [ - "active", - "all", - "completed", - "upcoming" - ], - "enumDescriptions": [ - "Return current live broadcasts.", - "Return all broadcasts.", - "Return broadcasts that have already ended.", - "Return broadcasts that have not yet started." - ], - "location": "query" - }, - "broadcastType": { - "type": "string", - "description": "The broadcastType parameter filters the API response to only include broadcasts with the specified type. This is only compatible with the mine filter for now.", - "default": "BROADCAST_TYPE_FILTER_EVENT", - "enum": [ - "all", - "event", - "persistent" - ], - "enumDescriptions": [ - "Return all broadcasts.", - "Return only scheduled event broadcasts.", - "Return only persistent broadcasts." - ], - "location": "query" - }, - "id": { - "type": "string", - "description": "The id parameter specifies a comma-separated list of YouTube broadcast IDs that identify the broadcasts being retrieved. In a liveBroadcast resource, the id property specifies the broadcast's ID.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maxResults parameter specifies the maximum number of items that should be returned in the result set.", - "default": "5", - "format": "uint32", - "minimum": "0", - "maximum": "50", - "location": "query" - }, - "mine": { - "type": "boolean", - "description": "The mine parameter can be used to instruct the API to only return broadcasts owned by the authenticated user. Set the parameter value to true to only retrieve your own broadcasts.", - "location": "query" - }, - "onBehalfOfContentOwner": { - "type": "string", - "description": "Note: This parameter is intended exclusively for YouTube content partners.\n\nThe onBehalfOfContentOwner parameter indicates that the request's authorization credentials identify a YouTube CMS user who is acting on behalf of the content owner specified in the parameter value. This parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to provide authentication credentials for each individual channel. The CMS account that the user authenticates with must be linked to the specified YouTube content owner.", - "location": "query" - }, - "onBehalfOfContentOwnerChannel": { - "type": "string", - "description": "This parameter can only be used in a properly authorized request. Note: This parameter is intended exclusively for YouTube content partners.\n\nThe onBehalfOfContentOwnerChannel parameter specifies the YouTube channel ID of the channel to which a video is being added. This parameter is required when a request specifies a value for the onBehalfOfContentOwner parameter, and it can only be used in conjunction with that parameter. In addition, the request must be authorized using a CMS account that is linked to the content owner that the onBehalfOfContentOwner parameter specifies. Finally, the channel that the onBehalfOfContentOwnerChannel parameter value specifies must be linked to the content owner that the onBehalfOfContentOwner parameter specifies.\n\nThis parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and perform actions on behalf of the channel specified in the parameter value, without having to provide authentication credentials for each separate channel.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "The pageToken parameter identifies a specific page in the result set that should be returned. In an API response, the nextPageToken and prevPageToken properties identify other pages that could be retrieved.", - "location": "query" - }, - "part": { - "type": "string", - "description": "The part parameter specifies a comma-separated list of one or more liveBroadcast resource properties that the API response will include. The part names that you can include in the parameter value are id, snippet, contentDetails, and status.", - "required": true, - "location": "query" - } - }, - "parameterOrder": [ - "part" - ], - "response": { - "$ref": "LiveBroadcastListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/youtube", - "https://www.googleapis.com/auth/youtube.force-ssl", - "https://www.googleapis.com/auth/youtube.readonly" - ] - }, - "transition": { - "id": "youtube.liveBroadcasts.transition", - "path": "liveBroadcasts/transition", - "httpMethod": "POST", - "description": "Changes the status of a YouTube live broadcast and initiates any processes associated with the new status. For example, when you transition a broadcast's status to testing, YouTube starts to transmit video to that broadcast's monitor stream. Before calling this method, you should confirm that the value of the status.streamStatus property for the stream bound to your broadcast is active.", - "parameters": { - "broadcastStatus": { - "type": "string", - "description": "The broadcastStatus parameter identifies the state to which the broadcast is changing. Note that to transition a broadcast to either the testing or live state, the status.streamStatus must be active for the stream that the broadcast is bound to.", - "required": true, - "enum": [ - "complete", - "live", - "testing" - ], - "enumDescriptions": [ - "The broadcast is over. YouTube stops transmitting video.", - "The broadcast is visible to its audience. YouTube transmits video to the broadcast's monitor stream and its broadcast stream.", - "Start testing the broadcast. YouTube transmits video to the broadcast's monitor stream. Note that you can only transition a broadcast to the testing state if its contentDetails.monitorStream.enableMonitorStream property is set to true." - ], - "location": "query" - }, - "id": { - "type": "string", - "description": "The id parameter specifies the unique ID of the broadcast that is transitioning to another status.", - "required": true, - "location": "query" - }, - "onBehalfOfContentOwner": { - "type": "string", - "description": "Note: This parameter is intended exclusively for YouTube content partners.\n\nThe onBehalfOfContentOwner parameter indicates that the request's authorization credentials identify a YouTube CMS user who is acting on behalf of the content owner specified in the parameter value. This parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to provide authentication credentials for each individual channel. The CMS account that the user authenticates with must be linked to the specified YouTube content owner.", - "location": "query" - }, - "onBehalfOfContentOwnerChannel": { - "type": "string", - "description": "This parameter can only be used in a properly authorized request. Note: This parameter is intended exclusively for YouTube content partners.\n\nThe onBehalfOfContentOwnerChannel parameter specifies the YouTube channel ID of the channel to which a video is being added. This parameter is required when a request specifies a value for the onBehalfOfContentOwner parameter, and it can only be used in conjunction with that parameter. In addition, the request must be authorized using a CMS account that is linked to the content owner that the onBehalfOfContentOwner parameter specifies. Finally, the channel that the onBehalfOfContentOwnerChannel parameter value specifies must be linked to the content owner that the onBehalfOfContentOwner parameter specifies.\n\nThis parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and perform actions on behalf of the channel specified in the parameter value, without having to provide authentication credentials for each separate channel.", - "location": "query" - }, - "part": { - "type": "string", - "description": "The part parameter specifies a comma-separated list of one or more liveBroadcast resource properties that the API response will include. The part names that you can include in the parameter value are id, snippet, contentDetails, and status.", - "required": true, - "location": "query" - } - }, - "parameterOrder": [ - "broadcastStatus", - "id", - "part" - ], - "response": { - "$ref": "LiveBroadcast" - }, - "scopes": [ - "https://www.googleapis.com/auth/youtube", - "https://www.googleapis.com/auth/youtube.force-ssl" - ] - }, - "update": { - "id": "youtube.liveBroadcasts.update", - "path": "liveBroadcasts", - "httpMethod": "PUT", - "description": "Updates a broadcast. For example, you could modify the broadcast settings defined in the liveBroadcast resource's contentDetails object.", - "parameters": { - "onBehalfOfContentOwner": { - "type": "string", - "description": "Note: This parameter is intended exclusively for YouTube content partners.\n\nThe onBehalfOfContentOwner parameter indicates that the request's authorization credentials identify a YouTube CMS user who is acting on behalf of the content owner specified in the parameter value. This parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to provide authentication credentials for each individual channel. The CMS account that the user authenticates with must be linked to the specified YouTube content owner.", - "location": "query" - }, - "onBehalfOfContentOwnerChannel": { - "type": "string", - "description": "This parameter can only be used in a properly authorized request. Note: This parameter is intended exclusively for YouTube content partners.\n\nThe onBehalfOfContentOwnerChannel parameter specifies the YouTube channel ID of the channel to which a video is being added. This parameter is required when a request specifies a value for the onBehalfOfContentOwner parameter, and it can only be used in conjunction with that parameter. In addition, the request must be authorized using a CMS account that is linked to the content owner that the onBehalfOfContentOwner parameter specifies. Finally, the channel that the onBehalfOfContentOwnerChannel parameter value specifies must be linked to the content owner that the onBehalfOfContentOwner parameter specifies.\n\nThis parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and perform actions on behalf of the channel specified in the parameter value, without having to provide authentication credentials for each separate channel.", - "location": "query" - }, - "part": { - "type": "string", - "description": "The part parameter serves two purposes in this operation. It identifies the properties that the write operation will set as well as the properties that the API response will include.\n\nThe part properties that you can include in the parameter value are id, snippet, contentDetails, and status.\n\nNote that this method will override the existing values for all of the mutable properties that are contained in any parts that the parameter value specifies. For example, a broadcast's privacy status is defined in the status part. As such, if your request is updating a private or unlisted broadcast, and the request's part parameter value includes the status part, the broadcast's privacy setting will be updated to whatever value the request body specifies. If the request body does not specify a value, the existing privacy setting will be removed and the broadcast will revert to the default privacy setting.", - "required": true, - "location": "query" - } - }, - "parameterOrder": [ - "part" - ], - "request": { - "$ref": "LiveBroadcast" - }, - "response": { - "$ref": "LiveBroadcast" - }, - "scopes": [ - "https://www.googleapis.com/auth/youtube", - "https://www.googleapis.com/auth/youtube.force-ssl" - ] - } - } - }, - "liveChatBans": { - "methods": { - "delete": { - "id": "youtube.liveChatBans.delete", - "path": "liveChat/bans", - "httpMethod": "DELETE", - "description": "Removes a chat ban.", - "parameters": { - "id": { - "type": "string", - "description": "The id parameter identifies the chat ban to remove. The value uniquely identifies both the ban and the chat.", - "required": true, - "location": "query" - } - }, - "parameterOrder": [ - "id" - ], - "scopes": [ - "https://www.googleapis.com/auth/youtube", - "https://www.googleapis.com/auth/youtube.force-ssl" - ] - }, - "insert": { - "id": "youtube.liveChatBans.insert", - "path": "liveChat/bans", - "httpMethod": "POST", - "description": "Adds a new ban to the chat.", - "parameters": { - "part": { - "type": "string", - "description": "The part parameter serves two purposes in this operation. It identifies the properties that the write operation will set as well as the properties that the API response returns. Set the parameter value to snippet.", - "required": true, - "location": "query" - } - }, - "parameterOrder": [ - "part" - ], - "request": { - "$ref": "LiveChatBan" - }, - "response": { - "$ref": "LiveChatBan" - }, - "scopes": [ - "https://www.googleapis.com/auth/youtube", - "https://www.googleapis.com/auth/youtube.force-ssl" - ] - } - } - }, - "liveChatMessages": { - "methods": { - "delete": { - "id": "youtube.liveChatMessages.delete", - "path": "liveChat/messages", - "httpMethod": "DELETE", - "description": "Deletes a chat message.", - "parameters": { - "id": { - "type": "string", - "description": "The id parameter specifies the YouTube chat message ID of the resource that is being deleted.", - "required": true, - "location": "query" - } - }, - "parameterOrder": [ - "id" - ], - "scopes": [ - "https://www.googleapis.com/auth/youtube", - "https://www.googleapis.com/auth/youtube.force-ssl" - ] - }, - "insert": { - "id": "youtube.liveChatMessages.insert", - "path": "liveChat/messages", - "httpMethod": "POST", - "description": "Adds a message to a live chat.", - "parameters": { - "part": { - "type": "string", - "description": "The part parameter serves two purposes. It identifies the properties that the write operation will set as well as the properties that the API response will include. Set the parameter value to snippet.", - "required": true, - "location": "query" - } - }, - "parameterOrder": [ - "part" - ], - "request": { - "$ref": "LiveChatMessage" - }, - "response": { - "$ref": "LiveChatMessage" - }, - "scopes": [ - "https://www.googleapis.com/auth/youtube", - "https://www.googleapis.com/auth/youtube.force-ssl" - ] - }, - "list": { - "id": "youtube.liveChatMessages.list", - "path": "liveChat/messages", - "httpMethod": "GET", - "description": "Lists live chat messages for a specific chat.", - "parameters": { - "hl": { - "type": "string", - "description": "The hl parameter instructs the API to retrieve localized resource metadata for a specific application language that the YouTube website supports. The parameter value must be a language code included in the list returned by the i18nLanguages.list method.\n\nIf localized resource details are available in that language, the resource's snippet.localized object will contain the localized values. However, if localized details are not available, the snippet.localized object will contain resource details in the resource's default language.", - "location": "query" - }, - "liveChatId": { - "type": "string", - "description": "The liveChatId parameter specifies the ID of the chat whose messages will be returned.", - "required": true, - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maxResults parameter specifies the maximum number of messages that should be returned in the result set.", - "default": "500", - "format": "uint32", - "minimum": "200", - "maximum": "2000", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "The pageToken parameter identifies a specific page in the result set that should be returned. In an API response, the nextPageToken property identify other pages that could be retrieved.", - "location": "query" - }, - "part": { - "type": "string", - "description": "The part parameter specifies the liveChatComment resource parts that the API response will include. Supported values are id and snippet.", - "required": true, - "location": "query" - }, - "profileImageSize": { - "type": "integer", - "description": "The profileImageSize parameter specifies the size of the user profile pictures that should be returned in the result set. Default: 88.", - "format": "uint32", - "minimum": "16", - "maximum": "720", - "location": "query" - } - }, - "parameterOrder": [ - "liveChatId", - "part" - ], - "response": { - "$ref": "LiveChatMessageListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/youtube", - "https://www.googleapis.com/auth/youtube.force-ssl", - "https://www.googleapis.com/auth/youtube.readonly" - ] - } - } - }, - "liveChatModerators": { - "methods": { - "delete": { - "id": "youtube.liveChatModerators.delete", - "path": "liveChat/moderators", - "httpMethod": "DELETE", - "description": "Removes a chat moderator.", - "parameters": { - "id": { - "type": "string", - "description": "The id parameter identifies the chat moderator to remove. The value uniquely identifies both the moderator and the chat.", - "required": true, - "location": "query" - } - }, - "parameterOrder": [ - "id" - ], - "scopes": [ - "https://www.googleapis.com/auth/youtube", - "https://www.googleapis.com/auth/youtube.force-ssl" - ] - }, - "insert": { - "id": "youtube.liveChatModerators.insert", - "path": "liveChat/moderators", - "httpMethod": "POST", - "description": "Adds a new moderator for the chat.", - "parameters": { - "part": { - "type": "string", - "description": "The part parameter serves two purposes in this operation. It identifies the properties that the write operation will set as well as the properties that the API response returns. Set the parameter value to snippet.", - "required": true, - "location": "query" - } - }, - "parameterOrder": [ - "part" - ], - "request": { - "$ref": "LiveChatModerator" - }, - "response": { - "$ref": "LiveChatModerator" - }, - "scopes": [ - "https://www.googleapis.com/auth/youtube", - "https://www.googleapis.com/auth/youtube.force-ssl" - ] - }, - "list": { - "id": "youtube.liveChatModerators.list", - "path": "liveChat/moderators", - "httpMethod": "GET", - "description": "Lists moderators for a live chat.", - "parameters": { - "liveChatId": { - "type": "string", - "description": "The liveChatId parameter specifies the YouTube live chat for which the API should return moderators.", - "required": true, - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maxResults parameter specifies the maximum number of items that should be returned in the result set.", - "default": "5", - "format": "uint32", - "minimum": "0", - "maximum": "50", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "The pageToken parameter identifies a specific page in the result set that should be returned. In an API response, the nextPageToken and prevPageToken properties identify other pages that could be retrieved.", - "location": "query" - }, - "part": { - "type": "string", - "description": "The part parameter specifies the liveChatModerator resource parts that the API response will include. Supported values are id and snippet.", - "required": true, - "location": "query" - } - }, - "parameterOrder": [ - "liveChatId", - "part" - ], - "response": { - "$ref": "LiveChatModeratorListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/youtube", - "https://www.googleapis.com/auth/youtube.force-ssl", - "https://www.googleapis.com/auth/youtube.readonly" - ] - } - } - }, - "liveStreams": { - "methods": { - "delete": { - "id": "youtube.liveStreams.delete", - "path": "liveStreams", - "httpMethod": "DELETE", - "description": "Deletes a video stream.", - "parameters": { - "id": { - "type": "string", - "description": "The id parameter specifies the YouTube live stream ID for the resource that is being deleted.", - "required": true, - "location": "query" - }, - "onBehalfOfContentOwner": { - "type": "string", - "description": "Note: This parameter is intended exclusively for YouTube content partners.\n\nThe onBehalfOfContentOwner parameter indicates that the request's authorization credentials identify a YouTube CMS user who is acting on behalf of the content owner specified in the parameter value. This parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to provide authentication credentials for each individual channel. The CMS account that the user authenticates with must be linked to the specified YouTube content owner.", - "location": "query" - }, - "onBehalfOfContentOwnerChannel": { - "type": "string", - "description": "This parameter can only be used in a properly authorized request. Note: This parameter is intended exclusively for YouTube content partners.\n\nThe onBehalfOfContentOwnerChannel parameter specifies the YouTube channel ID of the channel to which a video is being added. This parameter is required when a request specifies a value for the onBehalfOfContentOwner parameter, and it can only be used in conjunction with that parameter. In addition, the request must be authorized using a CMS account that is linked to the content owner that the onBehalfOfContentOwner parameter specifies. Finally, the channel that the onBehalfOfContentOwnerChannel parameter value specifies must be linked to the content owner that the onBehalfOfContentOwner parameter specifies.\n\nThis parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and perform actions on behalf of the channel specified in the parameter value, without having to provide authentication credentials for each separate channel.", - "location": "query" - } - }, - "parameterOrder": [ - "id" - ], - "scopes": [ - "https://www.googleapis.com/auth/youtube", - "https://www.googleapis.com/auth/youtube.force-ssl" - ] - }, - "insert": { - "id": "youtube.liveStreams.insert", - "path": "liveStreams", - "httpMethod": "POST", - "description": "Creates a video stream. The stream enables you to send your video to YouTube, which can then broadcast the video to your audience.", - "parameters": { - "onBehalfOfContentOwner": { - "type": "string", - "description": "Note: This parameter is intended exclusively for YouTube content partners.\n\nThe onBehalfOfContentOwner parameter indicates that the request's authorization credentials identify a YouTube CMS user who is acting on behalf of the content owner specified in the parameter value. This parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to provide authentication credentials for each individual channel. The CMS account that the user authenticates with must be linked to the specified YouTube content owner.", - "location": "query" - }, - "onBehalfOfContentOwnerChannel": { - "type": "string", - "description": "This parameter can only be used in a properly authorized request. Note: This parameter is intended exclusively for YouTube content partners.\n\nThe onBehalfOfContentOwnerChannel parameter specifies the YouTube channel ID of the channel to which a video is being added. This parameter is required when a request specifies a value for the onBehalfOfContentOwner parameter, and it can only be used in conjunction with that parameter. In addition, the request must be authorized using a CMS account that is linked to the content owner that the onBehalfOfContentOwner parameter specifies. Finally, the channel that the onBehalfOfContentOwnerChannel parameter value specifies must be linked to the content owner that the onBehalfOfContentOwner parameter specifies.\n\nThis parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and perform actions on behalf of the channel specified in the parameter value, without having to provide authentication credentials for each separate channel.", - "location": "query" - }, - "part": { - "type": "string", - "description": "The part parameter serves two purposes in this operation. It identifies the properties that the write operation will set as well as the properties that the API response will include.\n\nThe part properties that you can include in the parameter value are id, snippet, cdn, and status.", - "required": true, - "location": "query" - } - }, - "parameterOrder": [ - "part" - ], - "request": { - "$ref": "LiveStream" - }, - "response": { - "$ref": "LiveStream" - }, - "scopes": [ - "https://www.googleapis.com/auth/youtube", - "https://www.googleapis.com/auth/youtube.force-ssl" - ] - }, - "list": { - "id": "youtube.liveStreams.list", - "path": "liveStreams", - "httpMethod": "GET", - "description": "Returns a list of video streams that match the API request parameters.", - "parameters": { - "id": { - "type": "string", - "description": "The id parameter specifies a comma-separated list of YouTube stream IDs that identify the streams being retrieved. In a liveStream resource, the id property specifies the stream's ID.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maxResults parameter specifies the maximum number of items that should be returned in the result set.", - "default": "5", - "format": "uint32", - "minimum": "0", - "maximum": "50", - "location": "query" - }, - "mine": { - "type": "boolean", - "description": "The mine parameter can be used to instruct the API to only return streams owned by the authenticated user. Set the parameter value to true to only retrieve your own streams.", - "location": "query" - }, - "onBehalfOfContentOwner": { - "type": "string", - "description": "Note: This parameter is intended exclusively for YouTube content partners.\n\nThe onBehalfOfContentOwner parameter indicates that the request's authorization credentials identify a YouTube CMS user who is acting on behalf of the content owner specified in the parameter value. This parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to provide authentication credentials for each individual channel. The CMS account that the user authenticates with must be linked to the specified YouTube content owner.", - "location": "query" - }, - "onBehalfOfContentOwnerChannel": { - "type": "string", - "description": "This parameter can only be used in a properly authorized request. Note: This parameter is intended exclusively for YouTube content partners.\n\nThe onBehalfOfContentOwnerChannel parameter specifies the YouTube channel ID of the channel to which a video is being added. This parameter is required when a request specifies a value for the onBehalfOfContentOwner parameter, and it can only be used in conjunction with that parameter. In addition, the request must be authorized using a CMS account that is linked to the content owner that the onBehalfOfContentOwner parameter specifies. Finally, the channel that the onBehalfOfContentOwnerChannel parameter value specifies must be linked to the content owner that the onBehalfOfContentOwner parameter specifies.\n\nThis parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and perform actions on behalf of the channel specified in the parameter value, without having to provide authentication credentials for each separate channel.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "The pageToken parameter identifies a specific page in the result set that should be returned. In an API response, the nextPageToken and prevPageToken properties identify other pages that could be retrieved.", - "location": "query" - }, - "part": { - "type": "string", - "description": "The part parameter specifies a comma-separated list of one or more liveStream resource properties that the API response will include. The part names that you can include in the parameter value are id, snippet, cdn, and status.", - "required": true, - "location": "query" - } - }, - "parameterOrder": [ - "part" - ], - "response": { - "$ref": "LiveStreamListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/youtube", - "https://www.googleapis.com/auth/youtube.force-ssl", - "https://www.googleapis.com/auth/youtube.readonly" - ] - }, - "update": { - "id": "youtube.liveStreams.update", - "path": "liveStreams", - "httpMethod": "PUT", - "description": "Updates a video stream. If the properties that you want to change cannot be updated, then you need to create a new stream with the proper settings.", - "parameters": { - "onBehalfOfContentOwner": { - "type": "string", - "description": "Note: This parameter is intended exclusively for YouTube content partners.\n\nThe onBehalfOfContentOwner parameter indicates that the request's authorization credentials identify a YouTube CMS user who is acting on behalf of the content owner specified in the parameter value. This parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to provide authentication credentials for each individual channel. The CMS account that the user authenticates with must be linked to the specified YouTube content owner.", - "location": "query" - }, - "onBehalfOfContentOwnerChannel": { - "type": "string", - "description": "This parameter can only be used in a properly authorized request. Note: This parameter is intended exclusively for YouTube content partners.\n\nThe onBehalfOfContentOwnerChannel parameter specifies the YouTube channel ID of the channel to which a video is being added. This parameter is required when a request specifies a value for the onBehalfOfContentOwner parameter, and it can only be used in conjunction with that parameter. In addition, the request must be authorized using a CMS account that is linked to the content owner that the onBehalfOfContentOwner parameter specifies. Finally, the channel that the onBehalfOfContentOwnerChannel parameter value specifies must be linked to the content owner that the onBehalfOfContentOwner parameter specifies.\n\nThis parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and perform actions on behalf of the channel specified in the parameter value, without having to provide authentication credentials for each separate channel.", - "location": "query" - }, - "part": { - "type": "string", - "description": "The part parameter serves two purposes in this operation. It identifies the properties that the write operation will set as well as the properties that the API response will include.\n\nThe part properties that you can include in the parameter value are id, snippet, cdn, and status.\n\nNote that this method will override the existing values for all of the mutable properties that are contained in any parts that the parameter value specifies. If the request body does not specify a value for a mutable property, the existing value for that property will be removed.", - "required": true, - "location": "query" - } - }, - "parameterOrder": [ - "part" - ], - "request": { - "$ref": "LiveStream" - }, - "response": { - "$ref": "LiveStream" - }, - "scopes": [ - "https://www.googleapis.com/auth/youtube", - "https://www.googleapis.com/auth/youtube.force-ssl" - ] - } - } - }, - "playlistItems": { - "methods": { - "delete": { - "id": "youtube.playlistItems.delete", - "path": "playlistItems", - "httpMethod": "DELETE", - "description": "Deletes a playlist item.", - "parameters": { - "id": { - "type": "string", - "description": "The id parameter specifies the YouTube playlist item ID for the playlist item that is being deleted. In a playlistItem resource, the id property specifies the playlist item's ID.", - "required": true, - "location": "query" - }, - "onBehalfOfContentOwner": { - "type": "string", - "description": "Note: This parameter is intended exclusively for YouTube content partners.\n\nThe onBehalfOfContentOwner parameter indicates that the request's authorization credentials identify a YouTube CMS user who is acting on behalf of the content owner specified in the parameter value. This parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to provide authentication credentials for each individual channel. The CMS account that the user authenticates with must be linked to the specified YouTube content owner.", - "location": "query" - } - }, - "parameterOrder": [ - "id" - ], - "scopes": [ - "https://www.googleapis.com/auth/youtube", - "https://www.googleapis.com/auth/youtube.force-ssl", - "https://www.googleapis.com/auth/youtubepartner" - ] - }, - "insert": { - "id": "youtube.playlistItems.insert", - "path": "playlistItems", - "httpMethod": "POST", - "description": "Adds a resource to a playlist.", - "parameters": { - "onBehalfOfContentOwner": { - "type": "string", - "description": "Note: This parameter is intended exclusively for YouTube content partners.\n\nThe onBehalfOfContentOwner parameter indicates that the request's authorization credentials identify a YouTube CMS user who is acting on behalf of the content owner specified in the parameter value. This parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to provide authentication credentials for each individual channel. The CMS account that the user authenticates with must be linked to the specified YouTube content owner.", - "location": "query" - }, - "part": { - "type": "string", - "description": "The part parameter serves two purposes in this operation. It identifies the properties that the write operation will set as well as the properties that the API response will include.", - "required": true, - "location": "query" - } - }, - "parameterOrder": [ - "part" - ], - "request": { - "$ref": "PlaylistItem" - }, - "response": { - "$ref": "PlaylistItem" - }, - "scopes": [ - "https://www.googleapis.com/auth/youtube", - "https://www.googleapis.com/auth/youtube.force-ssl", - "https://www.googleapis.com/auth/youtubepartner" - ] - }, - "list": { - "id": "youtube.playlistItems.list", - "path": "playlistItems", - "httpMethod": "GET", - "description": "Returns a collection of playlist items that match the API request parameters. You can retrieve all of the playlist items in a specified playlist or retrieve one or more playlist items by their unique IDs.", - "parameters": { - "id": { - "type": "string", - "description": "The id parameter specifies a comma-separated list of one or more unique playlist item IDs.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maxResults parameter specifies the maximum number of items that should be returned in the result set.", - "default": "5", - "format": "uint32", - "minimum": "0", - "maximum": "50", - "location": "query" - }, - "onBehalfOfContentOwner": { - "type": "string", - "description": "Note: This parameter is intended exclusively for YouTube content partners.\n\nThe onBehalfOfContentOwner parameter indicates that the request's authorization credentials identify a YouTube CMS user who is acting on behalf of the content owner specified in the parameter value. This parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to provide authentication credentials for each individual channel. The CMS account that the user authenticates with must be linked to the specified YouTube content owner.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "The pageToken parameter identifies a specific page in the result set that should be returned. In an API response, the nextPageToken and prevPageToken properties identify other pages that could be retrieved.", - "location": "query" - }, - "part": { - "type": "string", - "description": "The part parameter specifies a comma-separated list of one or more playlistItem resource properties that the API response will include.\n\nIf the parameter identifies a property that contains child properties, the child properties will be included in the response. For example, in a playlistItem resource, the snippet property contains numerous fields, including the title, description, position, and resourceId properties. As such, if you set part=snippet, the API response will contain all of those properties.", - "required": true, - "location": "query" - }, - "playlistId": { - "type": "string", - "description": "The playlistId parameter specifies the unique ID of the playlist for which you want to retrieve playlist items. Note that even though this is an optional parameter, every request to retrieve playlist items must specify a value for either the id parameter or the playlistId parameter.", - "location": "query" - }, - "videoId": { - "type": "string", - "description": "The videoId parameter specifies that the request should return only the playlist items that contain the specified video.", - "location": "query" - } - }, - "parameterOrder": [ - "part" - ], - "response": { - "$ref": "PlaylistItemListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/youtube", - "https://www.googleapis.com/auth/youtube.force-ssl", - "https://www.googleapis.com/auth/youtube.readonly", - "https://www.googleapis.com/auth/youtubepartner" - ], - "supportsSubscription": true - }, - "update": { - "id": "youtube.playlistItems.update", - "path": "playlistItems", - "httpMethod": "PUT", - "description": "Modifies a playlist item. For example, you could update the item's position in the playlist.", - "parameters": { - "onBehalfOfContentOwner": { - "type": "string", - "description": "Note: This parameter is intended exclusively for YouTube content partners.\n\nThe onBehalfOfContentOwner parameter indicates that the request's authorization credentials identify a YouTube CMS user who is acting on behalf of the content owner specified in the parameter value. This parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to provide authentication credentials for each individual channel. The CMS account that the user authenticates with must be linked to the specified YouTube content owner.", - "location": "query" - }, - "part": { - "type": "string", - "description": "The part parameter serves two purposes in this operation. It identifies the properties that the write operation will set as well as the properties that the API response will include.\n\nNote that this method will override the existing values for all of the mutable properties that are contained in any parts that the parameter value specifies. For example, a playlist item can specify a start time and end time, which identify the times portion of the video that should play when users watch the video in the playlist. If your request is updating a playlist item that sets these values, and the request's part parameter value includes the contentDetails part, the playlist item's start and end times will be updated to whatever value the request body specifies. If the request body does not specify values, the existing start and end times will be removed and replaced with the default settings.", - "required": true, - "location": "query" - } - }, - "parameterOrder": [ - "part" - ], - "request": { - "$ref": "PlaylistItem" - }, - "response": { - "$ref": "PlaylistItem" - }, - "scopes": [ - "https://www.googleapis.com/auth/youtube", - "https://www.googleapis.com/auth/youtube.force-ssl", - "https://www.googleapis.com/auth/youtubepartner" - ] - } - } - }, - "playlists": { - "methods": { - "delete": { - "id": "youtube.playlists.delete", - "path": "playlists", - "httpMethod": "DELETE", - "description": "Deletes a playlist.", - "parameters": { - "id": { - "type": "string", - "description": "The id parameter specifies the YouTube playlist ID for the playlist that is being deleted. In a playlist resource, the id property specifies the playlist's ID.", - "required": true, - "location": "query" - }, - "onBehalfOfContentOwner": { - "type": "string", - "description": "Note: This parameter is intended exclusively for YouTube content partners.\n\nThe onBehalfOfContentOwner parameter indicates that the request's authorization credentials identify a YouTube CMS user who is acting on behalf of the content owner specified in the parameter value. This parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to provide authentication credentials for each individual channel. The CMS account that the user authenticates with must be linked to the specified YouTube content owner.", - "location": "query" - } - }, - "parameterOrder": [ - "id" - ], - "scopes": [ - "https://www.googleapis.com/auth/youtube", - "https://www.googleapis.com/auth/youtube.force-ssl", - "https://www.googleapis.com/auth/youtubepartner" - ] - }, - "insert": { - "id": "youtube.playlists.insert", - "path": "playlists", - "httpMethod": "POST", - "description": "Creates a playlist.", - "parameters": { - "onBehalfOfContentOwner": { - "type": "string", - "description": "Note: This parameter is intended exclusively for YouTube content partners.\n\nThe onBehalfOfContentOwner parameter indicates that the request's authorization credentials identify a YouTube CMS user who is acting on behalf of the content owner specified in the parameter value. This parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to provide authentication credentials for each individual channel. The CMS account that the user authenticates with must be linked to the specified YouTube content owner.", - "location": "query" - }, - "onBehalfOfContentOwnerChannel": { - "type": "string", - "description": "This parameter can only be used in a properly authorized request. Note: This parameter is intended exclusively for YouTube content partners.\n\nThe onBehalfOfContentOwnerChannel parameter specifies the YouTube channel ID of the channel to which a video is being added. This parameter is required when a request specifies a value for the onBehalfOfContentOwner parameter, and it can only be used in conjunction with that parameter. In addition, the request must be authorized using a CMS account that is linked to the content owner that the onBehalfOfContentOwner parameter specifies. Finally, the channel that the onBehalfOfContentOwnerChannel parameter value specifies must be linked to the content owner that the onBehalfOfContentOwner parameter specifies.\n\nThis parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and perform actions on behalf of the channel specified in the parameter value, without having to provide authentication credentials for each separate channel.", - "location": "query" - }, - "part": { - "type": "string", - "description": "The part parameter serves two purposes in this operation. It identifies the properties that the write operation will set as well as the properties that the API response will include.", - "required": true, - "location": "query" - } - }, - "parameterOrder": [ - "part" - ], - "request": { - "$ref": "Playlist" - }, - "response": { - "$ref": "Playlist" - }, - "scopes": [ - "https://www.googleapis.com/auth/youtube", - "https://www.googleapis.com/auth/youtube.force-ssl", - "https://www.googleapis.com/auth/youtubepartner" - ] - }, - "list": { - "id": "youtube.playlists.list", - "path": "playlists", - "httpMethod": "GET", - "description": "Returns a collection of playlists that match the API request parameters. For example, you can retrieve all playlists that the authenticated user owns, or you can retrieve one or more playlists by their unique IDs.", - "parameters": { - "channelId": { - "type": "string", - "description": "This value indicates that the API should only return the specified channel's playlists.", - "location": "query" - }, - "hl": { - "type": "string", - "description": "The hl parameter should be used for filter out the properties that are not in the given language. Used for the snippet part.", - "location": "query" - }, - "id": { - "type": "string", - "description": "The id parameter specifies a comma-separated list of the YouTube playlist ID(s) for the resource(s) that are being retrieved. In a playlist resource, the id property specifies the playlist's YouTube playlist ID.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maxResults parameter specifies the maximum number of items that should be returned in the result set.", - "default": "5", - "format": "uint32", - "minimum": "0", - "maximum": "50", - "location": "query" - }, - "mine": { - "type": "boolean", - "description": "Set this parameter's value to true to instruct the API to only return playlists owned by the authenticated user.", - "location": "query" - }, - "onBehalfOfContentOwner": { - "type": "string", - "description": "Note: This parameter is intended exclusively for YouTube content partners.\n\nThe onBehalfOfContentOwner parameter indicates that the request's authorization credentials identify a YouTube CMS user who is acting on behalf of the content owner specified in the parameter value. This parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to provide authentication credentials for each individual channel. The CMS account that the user authenticates with must be linked to the specified YouTube content owner.", - "location": "query" - }, - "onBehalfOfContentOwnerChannel": { - "type": "string", - "description": "This parameter can only be used in a properly authorized request. Note: This parameter is intended exclusively for YouTube content partners.\n\nThe onBehalfOfContentOwnerChannel parameter specifies the YouTube channel ID of the channel to which a video is being added. This parameter is required when a request specifies a value for the onBehalfOfContentOwner parameter, and it can only be used in conjunction with that parameter. In addition, the request must be authorized using a CMS account that is linked to the content owner that the onBehalfOfContentOwner parameter specifies. Finally, the channel that the onBehalfOfContentOwnerChannel parameter value specifies must be linked to the content owner that the onBehalfOfContentOwner parameter specifies.\n\nThis parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and perform actions on behalf of the channel specified in the parameter value, without having to provide authentication credentials for each separate channel.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "The pageToken parameter identifies a specific page in the result set that should be returned. In an API response, the nextPageToken and prevPageToken properties identify other pages that could be retrieved.", - "location": "query" - }, - "part": { - "type": "string", - "description": "The part parameter specifies a comma-separated list of one or more playlist resource properties that the API response will include.\n\nIf the parameter identifies a property that contains child properties, the child properties will be included in the response. For example, in a playlist resource, the snippet property contains properties like author, title, description, tags, and timeCreated. As such, if you set part=snippet, the API response will contain all of those properties.", - "required": true, - "location": "query" - } - }, - "parameterOrder": [ - "part" - ], - "response": { - "$ref": "PlaylistListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/youtube", - "https://www.googleapis.com/auth/youtube.force-ssl", - "https://www.googleapis.com/auth/youtube.readonly", - "https://www.googleapis.com/auth/youtubepartner" - ] - }, - "update": { - "id": "youtube.playlists.update", - "path": "playlists", - "httpMethod": "PUT", - "description": "Modifies a playlist. For example, you could change a playlist's title, description, or privacy status.", - "parameters": { - "onBehalfOfContentOwner": { - "type": "string", - "description": "Note: This parameter is intended exclusively for YouTube content partners.\n\nThe onBehalfOfContentOwner parameter indicates that the request's authorization credentials identify a YouTube CMS user who is acting on behalf of the content owner specified in the parameter value. This parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to provide authentication credentials for each individual channel. The CMS account that the user authenticates with must be linked to the specified YouTube content owner.", - "location": "query" - }, - "part": { - "type": "string", - "description": "The part parameter serves two purposes in this operation. It identifies the properties that the write operation will set as well as the properties that the API response will include.\n\nNote that this method will override the existing values for mutable properties that are contained in any parts that the request body specifies. For example, a playlist's description is contained in the snippet part, which must be included in the request body. If the request does not specify a value for the snippet.description property, the playlist's existing description will be deleted.", - "required": true, - "location": "query" - } - }, - "parameterOrder": [ - "part" - ], - "request": { - "$ref": "Playlist" - }, - "response": { - "$ref": "Playlist" - }, - "scopes": [ - "https://www.googleapis.com/auth/youtube", - "https://www.googleapis.com/auth/youtube.force-ssl", - "https://www.googleapis.com/auth/youtubepartner" - ] - } - } - }, - "search": { - "methods": { - "list": { - "id": "youtube.search.list", - "path": "search", - "httpMethod": "GET", - "description": "Returns a collection of search results that match the query parameters specified in the API request. By default, a search result set identifies matching video, channel, and playlist resources, but you can also configure queries to only retrieve a specific type of resource.", - "parameters": { - "channelId": { - "type": "string", - "description": "The channelId parameter indicates that the API response should only contain resources created by the channel", - "location": "query" - }, - "channelType": { - "type": "string", - "description": "The channelType parameter lets you restrict a search to a particular type of channel.", - "enum": [ - "any", - "show" - ], - "enumDescriptions": [ - "Return all channels.", - "Only retrieve shows." - ], - "location": "query" - }, - "eventType": { - "type": "string", - "description": "The eventType parameter restricts a search to broadcast events. If you specify a value for this parameter, you must also set the type parameter's value to video.", - "enum": [ - "completed", - "live", - "upcoming" - ], - "enumDescriptions": [ - "Only include completed broadcasts.", - "Only include active broadcasts.", - "Only include upcoming broadcasts." - ], - "location": "query" - }, - "forContentOwner": { - "type": "boolean", - "description": "Note: This parameter is intended exclusively for YouTube content partners.\n\nThe forContentOwner parameter restricts the search to only retrieve resources owned by the content owner specified by the onBehalfOfContentOwner parameter. The user must be authenticated using a CMS account linked to the specified content owner and onBehalfOfContentOwner must be provided.", - "location": "query" - }, - "forDeveloper": { - "type": "boolean", - "description": "The forDeveloper parameter restricts the search to only retrieve videos uploaded via the developer's application or website. The API server uses the request's authorization credentials to identify the developer. Therefore, a developer can restrict results to videos uploaded through the developer's own app or website but not to videos uploaded through other apps or sites.", - "location": "query" - }, - "forMine": { - "type": "boolean", - "description": "The forMine parameter restricts the search to only retrieve videos owned by the authenticated user. If you set this parameter to true, then the type parameter's value must also be set to video.", - "location": "query" - }, - "location": { - "type": "string", - "description": "The location parameter, in conjunction with the locationRadius parameter, defines a circular geographic area and also restricts a search to videos that specify, in their metadata, a geographic location that falls within that area. The parameter value is a string that specifies latitude/longitude coordinates e.g. (37.42307,-122.08427).\n\n\n- The location parameter value identifies the point at the center of the area.\n- The locationRadius parameter specifies the maximum distance that the location associated with a video can be from that point for the video to still be included in the search results.The API returns an error if your request specifies a value for the location parameter but does not also specify a value for the locationRadius parameter.", - "location": "query" - }, - "locationRadius": { - "type": "string", - "description": "The locationRadius parameter, in conjunction with the location parameter, defines a circular geographic area.\n\nThe parameter value must be a floating point number followed by a measurement unit. Valid measurement units are m, km, ft, and mi. For example, valid parameter values include 1500m, 5km, 10000ft, and 0.75mi. The API does not support locationRadius parameter values larger than 1000 kilometers.\n\nNote: See the definition of the location parameter for more information.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maxResults parameter specifies the maximum number of items that should be returned in the result set.", - "default": "5", - "format": "uint32", - "minimum": "0", - "maximum": "50", - "location": "query" - }, - "onBehalfOfContentOwner": { - "type": "string", - "description": "Note: This parameter is intended exclusively for YouTube content partners.\n\nThe onBehalfOfContentOwner parameter indicates that the request's authorization credentials identify a YouTube CMS user who is acting on behalf of the content owner specified in the parameter value. This parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to provide authentication credentials for each individual channel. The CMS account that the user authenticates with must be linked to the specified YouTube content owner.", - "location": "query" - }, - "order": { - "type": "string", - "description": "The order parameter specifies the method that will be used to order resources in the API response.", - "default": "SEARCH_SORT_RELEVANCE", - "enum": [ - "date", - "rating", - "relevance", - "title", - "videoCount", - "viewCount" - ], - "enumDescriptions": [ - "Resources are sorted in reverse chronological order based on the date they were created.", - "Resources are sorted from highest to lowest rating.", - "Resources are sorted based on their relevance to the search query. This is the default value for this parameter.", - "Resources are sorted alphabetically by title.", - "Channels are sorted in descending order of their number of uploaded videos.", - "Resources are sorted from highest to lowest number of views." - ], - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "The pageToken parameter identifies a specific page in the result set that should be returned. In an API response, the nextPageToken and prevPageToken properties identify other pages that could be retrieved.", - "location": "query" - }, - "part": { - "type": "string", - "description": "The part parameter specifies a comma-separated list of one or more search resource properties that the API response will include. Set the parameter value to snippet.", - "required": true, - "location": "query" - }, - "publishedAfter": { - "type": "string", - "description": "The publishedAfter parameter indicates that the API response should only contain resources created after the specified time. The value is an RFC 3339 formatted date-time value (1970-01-01T00:00:00Z).", - "format": "date-time", - "location": "query" - }, - "publishedBefore": { - "type": "string", - "description": "The publishedBefore parameter indicates that the API response should only contain resources created before the specified time. The value is an RFC 3339 formatted date-time value (1970-01-01T00:00:00Z).", - "format": "date-time", - "location": "query" - }, - "q": { - "type": "string", - "description": "The q parameter specifies the query term to search for.\n\nYour request can also use the Boolean NOT (-) and OR (|) operators to exclude videos or to find videos that are associated with one of several search terms. For example, to search for videos matching either \"boating\" or \"sailing\", set the q parameter value to boating|sailing. Similarly, to search for videos matching either \"boating\" or \"sailing\" but not \"fishing\", set the q parameter value to boating|sailing -fishing. Note that the pipe character must be URL-escaped when it is sent in your API request. The URL-escaped value for the pipe character is %7C.", - "location": "query" - }, - "regionCode": { - "type": "string", - "description": "The regionCode parameter instructs the API to return search results for the specified country. The parameter value is an ISO 3166-1 alpha-2 country code.", - "location": "query" - }, - "relatedToVideoId": { - "type": "string", - "description": "The relatedToVideoId parameter retrieves a list of videos that are related to the video that the parameter value identifies. The parameter value must be set to a YouTube video ID and, if you are using this parameter, the type parameter must be set to video.", - "location": "query" - }, - "relevanceLanguage": { - "type": "string", - "description": "The relevanceLanguage parameter instructs the API to return search results that are most relevant to the specified language. The parameter value is typically an ISO 639-1 two-letter language code. However, you should use the values zh-Hans for simplified Chinese and zh-Hant for traditional Chinese. Please note that results in other languages will still be returned if they are highly relevant to the search query term.", - "location": "query" - }, - "safeSearch": { - "type": "string", - "description": "The safeSearch parameter indicates whether the search results should include restricted content as well as standard content.", - "enum": [ - "moderate", - "none", - "strict" - ], - "enumDescriptions": [ - "YouTube will filter some content from search results and, at the least, will filter content that is restricted in your locale. Based on their content, search results could be removed from search results or demoted in search results. This is the default parameter value.", - "YouTube will not filter the search result set.", - "YouTube will try to exclude all restricted content from the search result set. Based on their content, search results could be removed from search results or demoted in search results." - ], - "location": "query" - }, - "topicId": { - "type": "string", - "description": "The topicId parameter indicates that the API response should only contain resources associated with the specified topic. The value identifies a Freebase topic ID.", - "location": "query" - }, - "type": { - "type": "string", - "description": "The type parameter restricts a search query to only retrieve a particular type of resource. The value is a comma-separated list of resource types.", - "default": "video,channel,playlist", - "location": "query" - }, - "videoCaption": { - "type": "string", - "description": "The videoCaption parameter indicates whether the API should filter video search results based on whether they have captions. If you specify a value for this parameter, you must also set the type parameter's value to video.", - "enum": [ - "any", - "closedCaption", - "none" - ], - "enumDescriptions": [ - "Do not filter results based on caption availability.", - "Only include videos that have captions.", - "Only include videos that do not have captions." - ], - "location": "query" - }, - "videoCategoryId": { - "type": "string", - "description": "The videoCategoryId parameter filters video search results based on their category. If you specify a value for this parameter, you must also set the type parameter's value to video.", - "location": "query" - }, - "videoDefinition": { - "type": "string", - "description": "The videoDefinition parameter lets you restrict a search to only include either high definition (HD) or standard definition (SD) videos. HD videos are available for playback in at least 720p, though higher resolutions, like 1080p, might also be available. If you specify a value for this parameter, you must also set the type parameter's value to video.", - "enum": [ - "any", - "high", - "standard" - ], - "enumDescriptions": [ - "Return all videos, regardless of their resolution.", - "Only retrieve HD videos.", - "Only retrieve videos in standard definition." - ], - "location": "query" - }, - "videoDimension": { - "type": "string", - "description": "The videoDimension parameter lets you restrict a search to only retrieve 2D or 3D videos. If you specify a value for this parameter, you must also set the type parameter's value to video.", - "enum": [ - "2d", - "3d", - "any" - ], - "enumDescriptions": [ - "Restrict search results to exclude 3D videos.", - "Restrict search results to only include 3D videos.", - "Include both 3D and non-3D videos in returned results. This is the default value." - ], - "location": "query" - }, - "videoDuration": { - "type": "string", - "description": "The videoDuration parameter filters video search results based on their duration. If you specify a value for this parameter, you must also set the type parameter's value to video.", - "enum": [ - "any", - "long", - "medium", - "short" - ], - "enumDescriptions": [ - "Do not filter video search results based on their duration. This is the default value.", - "Only include videos longer than 20 minutes.", - "Only include videos that are between four and 20 minutes long (inclusive).", - "Only include videos that are less than four minutes long." - ], - "location": "query" - }, - "videoEmbeddable": { - "type": "string", - "description": "The videoEmbeddable parameter lets you to restrict a search to only videos that can be embedded into a webpage. If you specify a value for this parameter, you must also set the type parameter's value to video.", - "enum": [ - "any", - "true" - ], - "enumDescriptions": [ - "Return all videos, embeddable or not.", - "Only retrieve embeddable videos." - ], - "location": "query" - }, - "videoLicense": { - "type": "string", - "description": "The videoLicense parameter filters search results to only include videos with a particular license. YouTube lets video uploaders choose to attach either the Creative Commons license or the standard YouTube license to each of their videos. If you specify a value for this parameter, you must also set the type parameter's value to video.", - "enum": [ - "any", - "creativeCommon", - "youtube" - ], - "enumDescriptions": [ - "Return all videos, regardless of which license they have, that match the query parameters.", - "Only return videos that have a Creative Commons license. Users can reuse videos with this license in other videos that they create. Learn more.", - "Only return videos that have the standard YouTube license." - ], - "location": "query" - }, - "videoSyndicated": { - "type": "string", - "description": "The videoSyndicated parameter lets you to restrict a search to only videos that can be played outside youtube.com. If you specify a value for this parameter, you must also set the type parameter's value to video.", - "enum": [ - "any", - "true" - ], - "enumDescriptions": [ - "Return all videos, syndicated or not.", - "Only retrieve syndicated videos." - ], - "location": "query" - }, - "videoType": { - "type": "string", - "description": "The videoType parameter lets you restrict a search to a particular type of videos. If you specify a value for this parameter, you must also set the type parameter's value to video.", - "enum": [ - "any", - "episode", - "movie" - ], - "enumDescriptions": [ - "Return all videos.", - "Only retrieve episodes of shows.", - "Only retrieve movies." - ], - "location": "query" - } - }, - "parameterOrder": [ - "part" - ], - "response": { - "$ref": "SearchListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/youtube", - "https://www.googleapis.com/auth/youtube.force-ssl", - "https://www.googleapis.com/auth/youtube.readonly", - "https://www.googleapis.com/auth/youtubepartner" - ] - } - } - }, - "sponsors": { - "methods": { - "list": { - "id": "youtube.sponsors.list", - "path": "sponsors", - "httpMethod": "GET", - "description": "Lists sponsors for a channel.", - "parameters": { - "filter": { - "type": "string", - "description": "The filter parameter specifies which channel sponsors to return.", - "default": "POLL_NEWEST", - "enum": [ - "all", - "newest" - ], - "enumDescriptions": [ - "Return all sponsors, from newest to oldest.", - "Return the most recent sponsors, from newest to oldest." - ], - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maxResults parameter specifies the maximum number of items that should be returned in the result set.", - "default": "5", - "format": "uint32", - "minimum": "0", - "maximum": "50", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "The pageToken parameter identifies a specific page in the result set that should be returned. In an API response, the nextPageToken and prevPageToken properties identify other pages that could be retrieved.", - "location": "query" - }, - "part": { - "type": "string", - "description": "The part parameter specifies the sponsor resource parts that the API response will include. Supported values are id and snippet.", - "required": true, - "location": "query" - } - }, - "parameterOrder": [ - "part" - ], - "response": { - "$ref": "SponsorListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/youtube", - "https://www.googleapis.com/auth/youtube.force-ssl", - "https://www.googleapis.com/auth/youtube.readonly" - ] - } - } - }, - "subscriptions": { - "methods": { - "delete": { - "id": "youtube.subscriptions.delete", - "path": "subscriptions", - "httpMethod": "DELETE", - "description": "Deletes a subscription.", - "parameters": { - "id": { - "type": "string", - "description": "The id parameter specifies the YouTube subscription ID for the resource that is being deleted. In a subscription resource, the id property specifies the YouTube subscription ID.", - "required": true, - "location": "query" - } - }, - "parameterOrder": [ - "id" - ], - "scopes": [ - "https://www.googleapis.com/auth/youtube", - "https://www.googleapis.com/auth/youtube.force-ssl", - "https://www.googleapis.com/auth/youtubepartner" - ] - }, - "insert": { - "id": "youtube.subscriptions.insert", - "path": "subscriptions", - "httpMethod": "POST", - "description": "Adds a subscription for the authenticated user's channel.", - "parameters": { - "part": { - "type": "string", - "description": "The part parameter serves two purposes in this operation. It identifies the properties that the write operation will set as well as the properties that the API response will include.", - "required": true, - "location": "query" - } - }, - "parameterOrder": [ - "part" - ], - "request": { - "$ref": "Subscription" - }, - "response": { - "$ref": "Subscription" - }, - "scopes": [ - "https://www.googleapis.com/auth/youtube", - "https://www.googleapis.com/auth/youtube.force-ssl", - "https://www.googleapis.com/auth/youtubepartner" - ] - }, - "list": { - "id": "youtube.subscriptions.list", - "path": "subscriptions", - "httpMethod": "GET", - "description": "Returns subscription resources that match the API request criteria.", - "parameters": { - "channelId": { - "type": "string", - "description": "The channelId parameter specifies a YouTube channel ID. The API will only return that channel's subscriptions.", - "location": "query" - }, - "forChannelId": { - "type": "string", - "description": "The forChannelId parameter specifies a comma-separated list of channel IDs. The API response will then only contain subscriptions matching those channels.", - "location": "query" - }, - "id": { - "type": "string", - "description": "The id parameter specifies a comma-separated list of the YouTube subscription ID(s) for the resource(s) that are being retrieved. In a subscription resource, the id property specifies the YouTube subscription ID.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maxResults parameter specifies the maximum number of items that should be returned in the result set.", - "default": "5", - "format": "uint32", - "minimum": "0", - "maximum": "50", - "location": "query" - }, - "mine": { - "type": "boolean", - "description": "Set this parameter's value to true to retrieve a feed of the authenticated user's subscriptions.", - "location": "query" - }, - "myRecentSubscribers": { - "type": "boolean", - "description": "Set this parameter's value to true to retrieve a feed of the subscribers of the authenticated user in reverse chronological order (newest first).", - "location": "query" - }, - "mySubscribers": { - "type": "boolean", - "description": "Set this parameter's value to true to retrieve a feed of the subscribers of the authenticated user in no particular order.", - "location": "query" - }, - "onBehalfOfContentOwner": { - "type": "string", - "description": "Note: This parameter is intended exclusively for YouTube content partners.\n\nThe onBehalfOfContentOwner parameter indicates that the request's authorization credentials identify a YouTube CMS user who is acting on behalf of the content owner specified in the parameter value. This parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to provide authentication credentials for each individual channel. The CMS account that the user authenticates with must be linked to the specified YouTube content owner.", - "location": "query" - }, - "onBehalfOfContentOwnerChannel": { - "type": "string", - "description": "This parameter can only be used in a properly authorized request. Note: This parameter is intended exclusively for YouTube content partners.\n\nThe onBehalfOfContentOwnerChannel parameter specifies the YouTube channel ID of the channel to which a video is being added. This parameter is required when a request specifies a value for the onBehalfOfContentOwner parameter, and it can only be used in conjunction with that parameter. In addition, the request must be authorized using a CMS account that is linked to the content owner that the onBehalfOfContentOwner parameter specifies. Finally, the channel that the onBehalfOfContentOwnerChannel parameter value specifies must be linked to the content owner that the onBehalfOfContentOwner parameter specifies.\n\nThis parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and perform actions on behalf of the channel specified in the parameter value, without having to provide authentication credentials for each separate channel.", - "location": "query" - }, - "order": { - "type": "string", - "description": "The order parameter specifies the method that will be used to sort resources in the API response.", - "default": "SUBSCRIPTION_ORDER_RELEVANCE", - "enum": [ - "alphabetical", - "relevance", - "unread" - ], - "enumDescriptions": [ - "Sort alphabetically.", - "Sort by relevance.", - "Sort by order of activity." - ], - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "The pageToken parameter identifies a specific page in the result set that should be returned. In an API response, the nextPageToken and prevPageToken properties identify other pages that could be retrieved.", - "location": "query" - }, - "part": { - "type": "string", - "description": "The part parameter specifies a comma-separated list of one or more subscription resource properties that the API response will include.\n\nIf the parameter identifies a property that contains child properties, the child properties will be included in the response. For example, in a subscription resource, the snippet property contains other properties, such as a display title for the subscription. If you set part=snippet, the API response will also contain all of those nested properties.", - "required": true, - "location": "query" - } - }, - "parameterOrder": [ - "part" - ], - "response": { - "$ref": "SubscriptionListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/youtube", - "https://www.googleapis.com/auth/youtube.force-ssl", - "https://www.googleapis.com/auth/youtube.readonly", - "https://www.googleapis.com/auth/youtubepartner" - ] - } - } - }, - "superChatEvents": { - "methods": { - "list": { - "id": "youtube.superChatEvents.list", - "path": "superChatEvents", - "httpMethod": "GET", - "description": "Lists Super Chat events for a channel.", - "parameters": { - "hl": { - "type": "string", - "description": "The hl parameter instructs the API to retrieve localized resource metadata for a specific application language that the YouTube website supports. The parameter value must be a language code included in the list returned by the i18nLanguages.list method.\n\nIf localized resource details are available in that language, the resource's snippet.localized object will contain the localized values. However, if localized details are not available, the snippet.localized object will contain resource details in the resource's default language.", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maxResults parameter specifies the maximum number of items that should be returned in the result set.", - "default": "5", - "format": "uint32", - "minimum": "1", - "maximum": "50", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "The pageToken parameter identifies a specific page in the result set that should be returned. In an API response, the nextPageToken and prevPageToken properties identify other pages that could be retrieved.", - "location": "query" - }, - "part": { - "type": "string", - "description": "The part parameter specifies the superChatEvent resource parts that the API response will include. Supported values are id and snippet.", - "required": true, - "location": "query" - } - }, - "parameterOrder": [ - "part" - ], - "response": { - "$ref": "SuperChatEventListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/youtube", - "https://www.googleapis.com/auth/youtube.force-ssl", - "https://www.googleapis.com/auth/youtube.readonly" - ] - } - } - }, - "thumbnails": { - "methods": { - "set": { - "id": "youtube.thumbnails.set", - "path": "thumbnails/set", - "httpMethod": "POST", - "description": "Uploads a custom video thumbnail to YouTube and sets it for a video.", - "parameters": { - "onBehalfOfContentOwner": { - "type": "string", - "description": "Note: This parameter is intended exclusively for YouTube content partners.\n\nThe onBehalfOfContentOwner parameter indicates that the request's authorization credentials identify a YouTube CMS user who is acting on behalf of the content owner specified in the parameter value. This parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to provide authentication credentials for each individual channel. The actual CMS account that the user authenticates with must be linked to the specified YouTube content owner.", - "location": "query" - }, - "videoId": { - "type": "string", - "description": "The videoId parameter specifies a YouTube video ID for which the custom video thumbnail is being provided.", - "required": true, - "location": "query" - } - }, - "parameterOrder": [ - "videoId" - ], - "response": { - "$ref": "ThumbnailSetResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/youtube", - "https://www.googleapis.com/auth/youtube.force-ssl", - "https://www.googleapis.com/auth/youtube.upload", - "https://www.googleapis.com/auth/youtubepartner" - ], - "supportsMediaUpload": true, - "mediaUpload": { - "accept": [ - "application/octet-stream", - "image/jpeg", - "image/png" - ], - "maxSize": "2MB", - "protocols": { - "simple": { - "multipart": true, - "path": "/upload/youtube/v3/thumbnails/set" - }, - "resumable": { - "multipart": true, - "path": "/resumable/upload/youtube/v3/thumbnails/set" - } - } - } - } - } - }, - "videoAbuseReportReasons": { - "methods": { - "list": { - "id": "youtube.videoAbuseReportReasons.list", - "path": "videoAbuseReportReasons", - "httpMethod": "GET", - "description": "Returns a list of abuse reasons that can be used for reporting abusive videos.", - "parameters": { - "hl": { - "type": "string", - "description": "The hl parameter specifies the language that should be used for text values in the API response.", - "default": "en_US", - "location": "query" - }, - "part": { - "type": "string", - "description": "The part parameter specifies the videoCategory resource parts that the API response will include. Supported values are id and snippet.", - "required": true, - "location": "query" - } - }, - "parameterOrder": [ - "part" - ], - "response": { - "$ref": "VideoAbuseReportReasonListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/youtube", - "https://www.googleapis.com/auth/youtube.force-ssl", - "https://www.googleapis.com/auth/youtube.readonly" - ] - } - } - }, - "videoCategories": { - "methods": { - "list": { - "id": "youtube.videoCategories.list", - "path": "videoCategories", - "httpMethod": "GET", - "description": "Returns a list of categories that can be associated with YouTube videos.", - "parameters": { - "hl": { - "type": "string", - "description": "The hl parameter specifies the language that should be used for text values in the API response.", - "default": "en_US", - "location": "query" - }, - "id": { - "type": "string", - "description": "The id parameter specifies a comma-separated list of video category IDs for the resources that you are retrieving.", - "location": "query" - }, - "part": { - "type": "string", - "description": "The part parameter specifies the videoCategory resource properties that the API response will include. Set the parameter value to snippet.", - "required": true, - "location": "query" - }, - "regionCode": { - "type": "string", - "description": "The regionCode parameter instructs the API to return the list of video categories available in the specified country. The parameter value is an ISO 3166-1 alpha-2 country code.", - "location": "query" - } - }, - "parameterOrder": [ - "part" - ], - "response": { - "$ref": "VideoCategoryListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/youtube", - "https://www.googleapis.com/auth/youtube.force-ssl", - "https://www.googleapis.com/auth/youtube.readonly", - "https://www.googleapis.com/auth/youtubepartner" - ] - } - } - }, - "videos": { - "methods": { - "delete": { - "id": "youtube.videos.delete", - "path": "videos", - "httpMethod": "DELETE", - "description": "Deletes a YouTube video.", - "parameters": { - "id": { - "type": "string", - "description": "The id parameter specifies the YouTube video ID for the resource that is being deleted. In a video resource, the id property specifies the video's ID.", - "required": true, - "location": "query" - }, - "onBehalfOfContentOwner": { - "type": "string", - "description": "Note: This parameter is intended exclusively for YouTube content partners.\n\nThe onBehalfOfContentOwner parameter indicates that the request's authorization credentials identify a YouTube CMS user who is acting on behalf of the content owner specified in the parameter value. This parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to provide authentication credentials for each individual channel. The actual CMS account that the user authenticates with must be linked to the specified YouTube content owner.", - "location": "query" - } - }, - "parameterOrder": [ - "id" - ], - "scopes": [ - "https://www.googleapis.com/auth/youtube", - "https://www.googleapis.com/auth/youtube.force-ssl", - "https://www.googleapis.com/auth/youtubepartner" - ] - }, - "getRating": { - "id": "youtube.videos.getRating", - "path": "videos/getRating", - "httpMethod": "GET", - "description": "Retrieves the ratings that the authorized user gave to a list of specified videos.", - "parameters": { - "id": { - "type": "string", - "description": "The id parameter specifies a comma-separated list of the YouTube video ID(s) for the resource(s) for which you are retrieving rating data. In a video resource, the id property specifies the video's ID.", - "required": true, - "location": "query" - }, - "onBehalfOfContentOwner": { - "type": "string", - "description": "Note: This parameter is intended exclusively for YouTube content partners.\n\nThe onBehalfOfContentOwner parameter indicates that the request's authorization credentials identify a YouTube CMS user who is acting on behalf of the content owner specified in the parameter value. This parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to provide authentication credentials for each individual channel. The CMS account that the user authenticates with must be linked to the specified YouTube content owner.", - "location": "query" - } - }, - "parameterOrder": [ - "id" - ], - "response": { - "$ref": "VideoGetRatingResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/youtube", - "https://www.googleapis.com/auth/youtube.force-ssl", - "https://www.googleapis.com/auth/youtubepartner" - ] - }, - "insert": { - "id": "youtube.videos.insert", - "path": "videos", - "httpMethod": "POST", - "description": "Uploads a video to YouTube and optionally sets the video's metadata.", - "parameters": { - "autoLevels": { - "type": "boolean", - "description": "The autoLevels parameter indicates whether YouTube should automatically enhance the video's lighting and color.", - "location": "query" - }, - "notifySubscribers": { - "type": "boolean", - "description": "The notifySubscribers parameter indicates whether YouTube should send a notification about the new video to users who subscribe to the video's channel. A parameter value of True indicates that subscribers will be notified of newly uploaded videos. However, a channel owner who is uploading many videos might prefer to set the value to False to avoid sending a notification about each new video to the channel's subscribers.", - "default": "true", - "location": "query" - }, - "onBehalfOfContentOwner": { - "type": "string", - "description": "Note: This parameter is intended exclusively for YouTube content partners.\n\nThe onBehalfOfContentOwner parameter indicates that the request's authorization credentials identify a YouTube CMS user who is acting on behalf of the content owner specified in the parameter value. This parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to provide authentication credentials for each individual channel. The CMS account that the user authenticates with must be linked to the specified YouTube content owner.", - "location": "query" - }, - "onBehalfOfContentOwnerChannel": { - "type": "string", - "description": "This parameter can only be used in a properly authorized request. Note: This parameter is intended exclusively for YouTube content partners.\n\nThe onBehalfOfContentOwnerChannel parameter specifies the YouTube channel ID of the channel to which a video is being added. This parameter is required when a request specifies a value for the onBehalfOfContentOwner parameter, and it can only be used in conjunction with that parameter. In addition, the request must be authorized using a CMS account that is linked to the content owner that the onBehalfOfContentOwner parameter specifies. Finally, the channel that the onBehalfOfContentOwnerChannel parameter value specifies must be linked to the content owner that the onBehalfOfContentOwner parameter specifies.\n\nThis parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and perform actions on behalf of the channel specified in the parameter value, without having to provide authentication credentials for each separate channel.", - "location": "query" - }, - "part": { - "type": "string", - "description": "The part parameter serves two purposes in this operation. It identifies the properties that the write operation will set as well as the properties that the API response will include.\n\nNote that not all parts contain properties that can be set when inserting or updating a video. For example, the statistics object encapsulates statistics that YouTube calculates for a video and does not contain values that you can set or modify. If the parameter value specifies a part that does not contain mutable values, that part will still be included in the API response.", - "required": true, - "location": "query" - }, - "stabilize": { - "type": "boolean", - "description": "The stabilize parameter indicates whether YouTube should adjust the video to remove shaky camera motions.", - "location": "query" - } - }, - "parameterOrder": [ - "part" - ], - "request": { - "$ref": "Video" - }, - "response": { - "$ref": "Video" - }, - "scopes": [ - "https://www.googleapis.com/auth/youtube", - "https://www.googleapis.com/auth/youtube.force-ssl", - "https://www.googleapis.com/auth/youtube.upload", - "https://www.googleapis.com/auth/youtubepartner" - ], - "supportsMediaUpload": true, - "mediaUpload": { - "accept": [ - "application/octet-stream", - "video/*" - ], - "maxSize": "64GB", - "protocols": { - "simple": { - "multipart": true, - "path": "/upload/youtube/v3/videos" - }, - "resumable": { - "multipart": true, - "path": "/resumable/upload/youtube/v3/videos" - } - } - } - }, - "list": { - "id": "youtube.videos.list", - "path": "videos", - "httpMethod": "GET", - "description": "Returns a list of videos that match the API request parameters.", - "parameters": { - "chart": { - "type": "string", - "description": "The chart parameter identifies the chart that you want to retrieve.", - "enum": [ - "mostPopular" - ], - "enumDescriptions": [ - "Return the most popular videos for the specified content region and video category." - ], - "location": "query" - }, - "hl": { - "type": "string", - "description": "The hl parameter instructs the API to retrieve localized resource metadata for a specific application language that the YouTube website supports. The parameter value must be a language code included in the list returned by the i18nLanguages.list method.\n\nIf localized resource details are available in that language, the resource's snippet.localized object will contain the localized values. However, if localized details are not available, the snippet.localized object will contain resource details in the resource's default language.", - "location": "query" - }, - "id": { - "type": "string", - "description": "The id parameter specifies a comma-separated list of the YouTube video ID(s) for the resource(s) that are being retrieved. In a video resource, the id property specifies the video's ID.", - "location": "query" - }, - "locale": { - "type": "string", - "description": "DEPRECATED", - "location": "query" - }, - "maxHeight": { - "type": "integer", - "description": "The maxHeight parameter specifies a maximum height of the embedded player. If maxWidth is provided, maxHeight may not be reached in order to not violate the width request.", - "format": "uint32", - "minimum": "72", - "maximum": "8192", - "location": "query" - }, - "maxResults": { - "type": "integer", - "description": "The maxResults parameter specifies the maximum number of items that should be returned in the result set.\n\nNote: This parameter is supported for use in conjunction with the myRating and chart parameters, but it is not supported for use in conjunction with the id parameter.", - "default": "5", - "format": "uint32", - "minimum": "1", - "maximum": "50", - "location": "query" - }, - "maxWidth": { - "type": "integer", - "description": "The maxWidth parameter specifies a maximum width of the embedded player. If maxHeight is provided, maxWidth may not be reached in order to not violate the height request.", - "format": "uint32", - "minimum": "72", - "maximum": "8192", - "location": "query" - }, - "myRating": { - "type": "string", - "description": "Set this parameter's value to like or dislike to instruct the API to only return videos liked or disliked by the authenticated user.", - "enum": [ - "dislike", - "like" - ], - "enumDescriptions": [ - "Returns only videos disliked by the authenticated user.", - "Returns only video liked by the authenticated user." - ], - "location": "query" - }, - "onBehalfOfContentOwner": { - "type": "string", - "description": "Note: This parameter is intended exclusively for YouTube content partners.\n\nThe onBehalfOfContentOwner parameter indicates that the request's authorization credentials identify a YouTube CMS user who is acting on behalf of the content owner specified in the parameter value. This parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to provide authentication credentials for each individual channel. The CMS account that the user authenticates with must be linked to the specified YouTube content owner.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "The pageToken parameter identifies a specific page in the result set that should be returned. In an API response, the nextPageToken and prevPageToken properties identify other pages that could be retrieved.\n\nNote: This parameter is supported for use in conjunction with the myRating and chart parameters, but it is not supported for use in conjunction with the id parameter.", - "location": "query" - }, - "part": { - "type": "string", - "description": "The part parameter specifies a comma-separated list of one or more video resource properties that the API response will include.\n\nIf the parameter identifies a property that contains child properties, the child properties will be included in the response. For example, in a video resource, the snippet property contains the channelId, title, description, tags, and categoryId properties. As such, if you set part=snippet, the API response will contain all of those properties.", - "required": true, - "location": "query" - }, - "regionCode": { - "type": "string", - "description": "The regionCode parameter instructs the API to select a video chart available in the specified region. This parameter can only be used in conjunction with the chart parameter. The parameter value is an ISO 3166-1 alpha-2 country code.", - "location": "query" - }, - "videoCategoryId": { - "type": "string", - "description": "The videoCategoryId parameter identifies the video category for which the chart should be retrieved. This parameter can only be used in conjunction with the chart parameter. By default, charts are not restricted to a particular category.", - "default": "0", - "location": "query" + }, + "videoAbuseReportReasons": { + "methods": { + "list": { + "description": "Returns a list of abuse reasons that can be used for reporting abusive videos.", + "httpMethod": "GET", + "id": "youtube.videoAbuseReportReasons.list", + "parameterOrder": [ + "part" + ], + "parameters": { + "hl": { + "default": "en_US", + "description": "The hl parameter specifies the language that should be used for text values in the API response.", + "location": "query", + "type": "string" + }, + "part": { + "description": "The part parameter specifies the videoCategory resource parts that the API response will include. Supported values are id and snippet.", + "location": "query", + "required": true, + "type": "string" + } + }, + "path": "videoAbuseReportReasons", + "response": { + "$ref": "VideoAbuseReportReasonListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/youtube", + "https://www.googleapis.com/auth/youtube.force-ssl", + "https://www.googleapis.com/auth/youtube.readonly" + ] + } } - }, - "parameterOrder": [ - "part" - ], - "response": { - "$ref": "VideoListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/youtube", - "https://www.googleapis.com/auth/youtube.force-ssl", - "https://www.googleapis.com/auth/youtube.readonly", - "https://www.googleapis.com/auth/youtubepartner" - ] - }, - "rate": { - "id": "youtube.videos.rate", - "path": "videos/rate", - "httpMethod": "POST", - "description": "Add a like or dislike rating to a video or remove a rating from a video.", - "parameters": { - "id": { - "type": "string", - "description": "The id parameter specifies the YouTube video ID of the video that is being rated or having its rating removed.", - "required": true, - "location": "query" - }, - "rating": { - "type": "string", - "description": "Specifies the rating to record.", - "required": true, - "enum": [ - "dislike", - "like", - "none" - ], - "enumDescriptions": [ - "Records that the authenticated user disliked the video.", - "Records that the authenticated user liked the video.", - "Removes any rating that the authenticated user had previously set for the video." - ], - "location": "query" + }, + "videoCategories": { + "methods": { + "list": { + "description": "Returns a list of categories that can be associated with YouTube videos.", + "httpMethod": "GET", + "id": "youtube.videoCategories.list", + "parameterOrder": [ + "part" + ], + "parameters": { + "hl": { + "default": "en_US", + "description": "The hl parameter specifies the language that should be used for text values in the API response.", + "location": "query", + "type": "string" + }, + "id": { + "description": "The id parameter specifies a comma-separated list of video category IDs for the resources that you are retrieving.", + "location": "query", + "type": "string" + }, + "part": { + "description": "The part parameter specifies the videoCategory resource properties that the API response will include. Set the parameter value to snippet.", + "location": "query", + "required": true, + "type": "string" + }, + "regionCode": { + "description": "The regionCode parameter instructs the API to return the list of video categories available in the specified country. The parameter value is an ISO 3166-1 alpha-2 country code.", + "location": "query", + "type": "string" + } + }, + "path": "videoCategories", + "response": { + "$ref": "VideoCategoryListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/youtube", + "https://www.googleapis.com/auth/youtube.force-ssl", + "https://www.googleapis.com/auth/youtube.readonly", + "https://www.googleapis.com/auth/youtubepartner" + ] + } } - }, - "parameterOrder": [ - "id", - "rating" - ], - "scopes": [ - "https://www.googleapis.com/auth/youtube", - "https://www.googleapis.com/auth/youtube.force-ssl", - "https://www.googleapis.com/auth/youtubepartner" - ] - }, - "reportAbuse": { - "id": "youtube.videos.reportAbuse", - "path": "videos/reportAbuse", - "httpMethod": "POST", - "description": "Report abuse for a video.", - "parameters": { - "onBehalfOfContentOwner": { - "type": "string", - "description": "Note: This parameter is intended exclusively for YouTube content partners.\n\nThe onBehalfOfContentOwner parameter indicates that the request's authorization credentials identify a YouTube CMS user who is acting on behalf of the content owner specified in the parameter value. This parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to provide authentication credentials for each individual channel. The CMS account that the user authenticates with must be linked to the specified YouTube content owner.", - "location": "query" + }, + "videos": { + "methods": { + "delete": { + "description": "Deletes a YouTube video.", + "httpMethod": "DELETE", + "id": "youtube.videos.delete", + "parameterOrder": [ + "id" + ], + "parameters": { + "id": { + "description": "The id parameter specifies the YouTube video ID for the resource that is being deleted. In a video resource, the id property specifies the video's ID.", + "location": "query", + "required": true, + "type": "string" + }, + "onBehalfOfContentOwner": { + "description": "Note: This parameter is intended exclusively for YouTube content partners.\n\nThe onBehalfOfContentOwner parameter indicates that the request's authorization credentials identify a YouTube CMS user who is acting on behalf of the content owner specified in the parameter value. This parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to provide authentication credentials for each individual channel. The actual CMS account that the user authenticates with must be linked to the specified YouTube content owner.", + "location": "query", + "type": "string" + } + }, + "path": "videos", + "scopes": [ + "https://www.googleapis.com/auth/youtube", + "https://www.googleapis.com/auth/youtube.force-ssl", + "https://www.googleapis.com/auth/youtubepartner" + ] + }, + "getRating": { + "description": "Retrieves the ratings that the authorized user gave to a list of specified videos.", + "httpMethod": "GET", + "id": "youtube.videos.getRating", + "parameterOrder": [ + "id" + ], + "parameters": { + "id": { + "description": "The id parameter specifies a comma-separated list of the YouTube video ID(s) for the resource(s) for which you are retrieving rating data. In a video resource, the id property specifies the video's ID.", + "location": "query", + "required": true, + "type": "string" + }, + "onBehalfOfContentOwner": { + "description": "Note: This parameter is intended exclusively for YouTube content partners.\n\nThe onBehalfOfContentOwner parameter indicates that the request's authorization credentials identify a YouTube CMS user who is acting on behalf of the content owner specified in the parameter value. This parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to provide authentication credentials for each individual channel. The CMS account that the user authenticates with must be linked to the specified YouTube content owner.", + "location": "query", + "type": "string" + } + }, + "path": "videos/getRating", + "response": { + "$ref": "VideoGetRatingResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/youtube", + "https://www.googleapis.com/auth/youtube.force-ssl", + "https://www.googleapis.com/auth/youtubepartner" + ] + }, + "insert": { + "description": "Uploads a video to YouTube and optionally sets the video's metadata.", + "httpMethod": "POST", + "id": "youtube.videos.insert", + "mediaUpload": { + "accept": [ + "application/octet-stream", + "video/*" + ], + "maxSize": "64GB", + "protocols": { + "resumable": { + "multipart": true, + "path": "/resumable/upload/youtube/v3/videos" + }, + "simple": { + "multipart": true, + "path": "/upload/youtube/v3/videos" + } + } + }, + "parameterOrder": [ + "part" + ], + "parameters": { + "autoLevels": { + "description": "The autoLevels parameter indicates whether YouTube should automatically enhance the video's lighting and color.", + "location": "query", + "type": "boolean" + }, + "notifySubscribers": { + "default": "true", + "description": "The notifySubscribers parameter indicates whether YouTube should send a notification about the new video to users who subscribe to the video's channel. A parameter value of True indicates that subscribers will be notified of newly uploaded videos. However, a channel owner who is uploading many videos might prefer to set the value to False to avoid sending a notification about each new video to the channel's subscribers.", + "location": "query", + "type": "boolean" + }, + "onBehalfOfContentOwner": { + "description": "Note: This parameter is intended exclusively for YouTube content partners.\n\nThe onBehalfOfContentOwner parameter indicates that the request's authorization credentials identify a YouTube CMS user who is acting on behalf of the content owner specified in the parameter value. This parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to provide authentication credentials for each individual channel. The CMS account that the user authenticates with must be linked to the specified YouTube content owner.", + "location": "query", + "type": "string" + }, + "onBehalfOfContentOwnerChannel": { + "description": "This parameter can only be used in a properly authorized request. Note: This parameter is intended exclusively for YouTube content partners.\n\nThe onBehalfOfContentOwnerChannel parameter specifies the YouTube channel ID of the channel to which a video is being added. This parameter is required when a request specifies a value for the onBehalfOfContentOwner parameter, and it can only be used in conjunction with that parameter. In addition, the request must be authorized using a CMS account that is linked to the content owner that the onBehalfOfContentOwner parameter specifies. Finally, the channel that the onBehalfOfContentOwnerChannel parameter value specifies must be linked to the content owner that the onBehalfOfContentOwner parameter specifies.\n\nThis parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and perform actions on behalf of the channel specified in the parameter value, without having to provide authentication credentials for each separate channel.", + "location": "query", + "type": "string" + }, + "part": { + "description": "The part parameter serves two purposes in this operation. It identifies the properties that the write operation will set as well as the properties that the API response will include.\n\nNote that not all parts contain properties that can be set when inserting or updating a video. For example, the statistics object encapsulates statistics that YouTube calculates for a video and does not contain values that you can set or modify. If the parameter value specifies a part that does not contain mutable values, that part will still be included in the API response.", + "location": "query", + "required": true, + "type": "string" + }, + "stabilize": { + "description": "The stabilize parameter indicates whether YouTube should adjust the video to remove shaky camera motions.", + "location": "query", + "type": "boolean" + } + }, + "path": "videos", + "request": { + "$ref": "Video" + }, + "response": { + "$ref": "Video" + }, + "scopes": [ + "https://www.googleapis.com/auth/youtube", + "https://www.googleapis.com/auth/youtube.force-ssl", + "https://www.googleapis.com/auth/youtube.upload", + "https://www.googleapis.com/auth/youtubepartner" + ], + "supportsMediaUpload": true + }, + "list": { + "description": "Returns a list of videos that match the API request parameters.", + "httpMethod": "GET", + "id": "youtube.videos.list", + "parameterOrder": [ + "part" + ], + "parameters": { + "chart": { + "description": "The chart parameter identifies the chart that you want to retrieve.", + "enum": [ + "mostPopular" + ], + "enumDescriptions": [ + "Return the most popular videos for the specified content region and video category." + ], + "location": "query", + "type": "string" + }, + "hl": { + "description": "The hl parameter instructs the API to retrieve localized resource metadata for a specific application language that the YouTube website supports. The parameter value must be a language code included in the list returned by the i18nLanguages.list method.\n\nIf localized resource details are available in that language, the resource's snippet.localized object will contain the localized values. However, if localized details are not available, the snippet.localized object will contain resource details in the resource's default language.", + "location": "query", + "type": "string" + }, + "id": { + "description": "The id parameter specifies a comma-separated list of the YouTube video ID(s) for the resource(s) that are being retrieved. In a video resource, the id property specifies the video's ID.", + "location": "query", + "type": "string" + }, + "locale": { + "description": "DEPRECATED", + "location": "query", + "type": "string" + }, + "maxHeight": { + "description": "The maxHeight parameter specifies a maximum height of the embedded player. If maxWidth is provided, maxHeight may not be reached in order to not violate the width request.", + "format": "uint32", + "location": "query", + "maximum": "8192", + "minimum": "72", + "type": "integer" + }, + "maxResults": { + "default": "5", + "description": "The maxResults parameter specifies the maximum number of items that should be returned in the result set.\n\nNote: This parameter is supported for use in conjunction with the myRating and chart parameters, but it is not supported for use in conjunction with the id parameter.", + "format": "uint32", + "location": "query", + "maximum": "50", + "minimum": "1", + "type": "integer" + }, + "maxWidth": { + "description": "The maxWidth parameter specifies a maximum width of the embedded player. If maxHeight is provided, maxWidth may not be reached in order to not violate the height request.", + "format": "uint32", + "location": "query", + "maximum": "8192", + "minimum": "72", + "type": "integer" + }, + "myRating": { + "description": "Set this parameter's value to like or dislike to instruct the API to only return videos liked or disliked by the authenticated user.", + "enum": [ + "dislike", + "like" + ], + "enumDescriptions": [ + "Returns only videos disliked by the authenticated user.", + "Returns only video liked by the authenticated user." + ], + "location": "query", + "type": "string" + }, + "onBehalfOfContentOwner": { + "description": "Note: This parameter is intended exclusively for YouTube content partners.\n\nThe onBehalfOfContentOwner parameter indicates that the request's authorization credentials identify a YouTube CMS user who is acting on behalf of the content owner specified in the parameter value. This parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to provide authentication credentials for each individual channel. The CMS account that the user authenticates with must be linked to the specified YouTube content owner.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "The pageToken parameter identifies a specific page in the result set that should be returned. In an API response, the nextPageToken and prevPageToken properties identify other pages that could be retrieved.\n\nNote: This parameter is supported for use in conjunction with the myRating and chart parameters, but it is not supported for use in conjunction with the id parameter.", + "location": "query", + "type": "string" + }, + "part": { + "description": "The part parameter specifies a comma-separated list of one or more video resource properties that the API response will include.\n\nIf the parameter identifies a property that contains child properties, the child properties will be included in the response. For example, in a video resource, the snippet property contains the channelId, title, description, tags, and categoryId properties. As such, if you set part=snippet, the API response will contain all of those properties.", + "location": "query", + "required": true, + "type": "string" + }, + "regionCode": { + "description": "The regionCode parameter instructs the API to select a video chart available in the specified region. This parameter can only be used in conjunction with the chart parameter. The parameter value is an ISO 3166-1 alpha-2 country code.", + "location": "query", + "type": "string" + }, + "videoCategoryId": { + "default": "0", + "description": "The videoCategoryId parameter identifies the video category for which the chart should be retrieved. This parameter can only be used in conjunction with the chart parameter. By default, charts are not restricted to a particular category.", + "location": "query", + "type": "string" + } + }, + "path": "videos", + "response": { + "$ref": "VideoListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/youtube", + "https://www.googleapis.com/auth/youtube.force-ssl", + "https://www.googleapis.com/auth/youtube.readonly", + "https://www.googleapis.com/auth/youtubepartner" + ] + }, + "rate": { + "description": "Add a like or dislike rating to a video or remove a rating from a video.", + "httpMethod": "POST", + "id": "youtube.videos.rate", + "parameterOrder": [ + "id", + "rating" + ], + "parameters": { + "id": { + "description": "The id parameter specifies the YouTube video ID of the video that is being rated or having its rating removed.", + "location": "query", + "required": true, + "type": "string" + }, + "rating": { + "description": "Specifies the rating to record.", + "enum": [ + "dislike", + "like", + "none" + ], + "enumDescriptions": [ + "Records that the authenticated user disliked the video.", + "Records that the authenticated user liked the video.", + "Removes any rating that the authenticated user had previously set for the video." + ], + "location": "query", + "required": true, + "type": "string" + } + }, + "path": "videos/rate", + "scopes": [ + "https://www.googleapis.com/auth/youtube", + "https://www.googleapis.com/auth/youtube.force-ssl", + "https://www.googleapis.com/auth/youtubepartner" + ] + }, + "reportAbuse": { + "description": "Report abuse for a video.", + "httpMethod": "POST", + "id": "youtube.videos.reportAbuse", + "parameters": { + "onBehalfOfContentOwner": { + "description": "Note: This parameter is intended exclusively for YouTube content partners.\n\nThe onBehalfOfContentOwner parameter indicates that the request's authorization credentials identify a YouTube CMS user who is acting on behalf of the content owner specified in the parameter value. This parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to provide authentication credentials for each individual channel. The CMS account that the user authenticates with must be linked to the specified YouTube content owner.", + "location": "query", + "type": "string" + } + }, + "path": "videos/reportAbuse", + "request": { + "$ref": "VideoAbuseReport" + }, + "scopes": [ + "https://www.googleapis.com/auth/youtube", + "https://www.googleapis.com/auth/youtube.force-ssl", + "https://www.googleapis.com/auth/youtubepartner" + ] + }, + "update": { + "description": "Updates a video's metadata.", + "httpMethod": "PUT", + "id": "youtube.videos.update", + "parameterOrder": [ + "part" + ], + "parameters": { + "onBehalfOfContentOwner": { + "description": "Note: This parameter is intended exclusively for YouTube content partners.\n\nThe onBehalfOfContentOwner parameter indicates that the request's authorization credentials identify a YouTube CMS user who is acting on behalf of the content owner specified in the parameter value. This parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to provide authentication credentials for each individual channel. The actual CMS account that the user authenticates with must be linked to the specified YouTube content owner.", + "location": "query", + "type": "string" + }, + "part": { + "description": "The part parameter serves two purposes in this operation. It identifies the properties that the write operation will set as well as the properties that the API response will include.\n\nNote that this method will override the existing values for all of the mutable properties that are contained in any parts that the parameter value specifies. For example, a video's privacy setting is contained in the status part. As such, if your request is updating a private video, and the request's part parameter value includes the status part, the video's privacy setting will be updated to whatever value the request body specifies. If the request body does not specify a value, the existing privacy setting will be removed and the video will revert to the default privacy setting.\n\nIn addition, not all parts contain properties that can be set when inserting or updating a video. For example, the statistics object encapsulates statistics that YouTube calculates for a video and does not contain values that you can set or modify. If the parameter value specifies a part that does not contain mutable values, that part will still be included in the API response.", + "location": "query", + "required": true, + "type": "string" + } + }, + "path": "videos", + "request": { + "$ref": "Video" + }, + "response": { + "$ref": "Video" + }, + "scopes": [ + "https://www.googleapis.com/auth/youtube", + "https://www.googleapis.com/auth/youtube.force-ssl", + "https://www.googleapis.com/auth/youtubepartner" + ] + } } - }, - "request": { - "$ref": "VideoAbuseReport" - }, - "scopes": [ - "https://www.googleapis.com/auth/youtube", - "https://www.googleapis.com/auth/youtube.force-ssl", - "https://www.googleapis.com/auth/youtubepartner" - ] - }, - "update": { - "id": "youtube.videos.update", - "path": "videos", - "httpMethod": "PUT", - "description": "Updates a video's metadata.", - "parameters": { - "onBehalfOfContentOwner": { - "type": "string", - "description": "Note: This parameter is intended exclusively for YouTube content partners.\n\nThe onBehalfOfContentOwner parameter indicates that the request's authorization credentials identify a YouTube CMS user who is acting on behalf of the content owner specified in the parameter value. This parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to provide authentication credentials for each individual channel. The actual CMS account that the user authenticates with must be linked to the specified YouTube content owner.", - "location": "query" - }, - "part": { - "type": "string", - "description": "The part parameter serves two purposes in this operation. It identifies the properties that the write operation will set as well as the properties that the API response will include.\n\nNote that this method will override the existing values for all of the mutable properties that are contained in any parts that the parameter value specifies. For example, a video's privacy setting is contained in the status part. As such, if your request is updating a private video, and the request's part parameter value includes the status part, the video's privacy setting will be updated to whatever value the request body specifies. If the request body does not specify a value, the existing privacy setting will be removed and the video will revert to the default privacy setting.\n\nIn addition, not all parts contain properties that can be set when inserting or updating a video. For example, the statistics object encapsulates statistics that YouTube calculates for a video and does not contain values that you can set or modify. If the parameter value specifies a part that does not contain mutable values, that part will still be included in the API response.", - "required": true, - "location": "query" + }, + "watermarks": { + "methods": { + "set": { + "description": "Uploads a watermark image to YouTube and sets it for a channel.", + "httpMethod": "POST", + "id": "youtube.watermarks.set", + "mediaUpload": { + "accept": [ + "application/octet-stream", + "image/jpeg", + "image/png" + ], + "maxSize": "10MB", + "protocols": { + "resumable": { + "multipart": true, + "path": "/resumable/upload/youtube/v3/watermarks/set" + }, + "simple": { + "multipart": true, + "path": "/upload/youtube/v3/watermarks/set" + } + } + }, + "parameterOrder": [ + "channelId" + ], + "parameters": { + "channelId": { + "description": "The channelId parameter specifies the YouTube channel ID for which the watermark is being provided.", + "location": "query", + "required": true, + "type": "string" + }, + "onBehalfOfContentOwner": { + "description": "Note: This parameter is intended exclusively for YouTube content partners.\n\nThe onBehalfOfContentOwner parameter indicates that the request's authorization credentials identify a YouTube CMS user who is acting on behalf of the content owner specified in the parameter value. This parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to provide authentication credentials for each individual channel. The CMS account that the user authenticates with must be linked to the specified YouTube content owner.", + "location": "query", + "type": "string" + } + }, + "path": "watermarks/set", + "request": { + "$ref": "InvideoBranding" + }, + "scopes": [ + "https://www.googleapis.com/auth/youtube", + "https://www.googleapis.com/auth/youtube.force-ssl", + "https://www.googleapis.com/auth/youtube.upload", + "https://www.googleapis.com/auth/youtubepartner" + ], + "supportsMediaUpload": true + }, + "unset": { + "description": "Deletes a channel's watermark image.", + "httpMethod": "POST", + "id": "youtube.watermarks.unset", + "parameterOrder": [ + "channelId" + ], + "parameters": { + "channelId": { + "description": "The channelId parameter specifies the YouTube channel ID for which the watermark is being unset.", + "location": "query", + "required": true, + "type": "string" + }, + "onBehalfOfContentOwner": { + "description": "Note: This parameter is intended exclusively for YouTube content partners.\n\nThe onBehalfOfContentOwner parameter indicates that the request's authorization credentials identify a YouTube CMS user who is acting on behalf of the content owner specified in the parameter value. This parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to provide authentication credentials for each individual channel. The CMS account that the user authenticates with must be linked to the specified YouTube content owner.", + "location": "query", + "type": "string" + } + }, + "path": "watermarks/unset", + "scopes": [ + "https://www.googleapis.com/auth/youtube", + "https://www.googleapis.com/auth/youtube.force-ssl", + "https://www.googleapis.com/auth/youtubepartner" + ] + } } - }, - "parameterOrder": [ - "part" - ], - "request": { - "$ref": "Video" - }, - "response": { - "$ref": "Video" - }, - "scopes": [ - "https://www.googleapis.com/auth/youtube", - "https://www.googleapis.com/auth/youtube.force-ssl", - "https://www.googleapis.com/auth/youtubepartner" - ] } - } }, - "watermarks": { - "methods": { - "set": { - "id": "youtube.watermarks.set", - "path": "watermarks/set", - "httpMethod": "POST", - "description": "Uploads a watermark image to YouTube and sets it for a channel.", - "parameters": { - "channelId": { - "type": "string", - "description": "The channelId parameter specifies the YouTube channel ID for which the watermark is being provided.", - "required": true, - "location": "query" - }, - "onBehalfOfContentOwner": { - "type": "string", - "description": "Note: This parameter is intended exclusively for YouTube content partners.\n\nThe onBehalfOfContentOwner parameter indicates that the request's authorization credentials identify a YouTube CMS user who is acting on behalf of the content owner specified in the parameter value. This parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to provide authentication credentials for each individual channel. The CMS account that the user authenticates with must be linked to the specified YouTube content owner.", - "location": "query" - } - }, - "parameterOrder": [ - "channelId" - ], - "request": { - "$ref": "InvideoBranding" - }, - "scopes": [ - "https://www.googleapis.com/auth/youtube", - "https://www.googleapis.com/auth/youtube.force-ssl", - "https://www.googleapis.com/auth/youtube.upload", - "https://www.googleapis.com/auth/youtubepartner" - ], - "supportsMediaUpload": true, - "mediaUpload": { - "accept": [ - "application/octet-stream", - "image/jpeg", - "image/png" - ], - "maxSize": "10MB", - "protocols": { - "simple": { - "multipart": true, - "path": "/upload/youtube/v3/watermarks/set" - }, - "resumable": { - "multipart": true, - "path": "/resumable/upload/youtube/v3/watermarks/set" - } - } - } - }, - "unset": { - "id": "youtube.watermarks.unset", - "path": "watermarks/unset", - "httpMethod": "POST", - "description": "Deletes a channel's watermark image.", - "parameters": { - "channelId": { - "type": "string", - "description": "The channelId parameter specifies the YouTube channel ID for which the watermark is being unset.", - "required": true, - "location": "query" - }, - "onBehalfOfContentOwner": { - "type": "string", - "description": "Note: This parameter is intended exclusively for YouTube content partners.\n\nThe onBehalfOfContentOwner parameter indicates that the request's authorization credentials identify a YouTube CMS user who is acting on behalf of the content owner specified in the parameter value. This parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to provide authentication credentials for each individual channel. The CMS account that the user authenticates with must be linked to the specified YouTube content owner.", - "location": "query" - } - }, - "parameterOrder": [ - "channelId" - ], - "scopes": [ - "https://www.googleapis.com/auth/youtube", - "https://www.googleapis.com/auth/youtube.force-ssl", - "https://www.googleapis.com/auth/youtubepartner" - ] - } - } - } - } -} + "revision": "20180308", + "rootUrl": "https://www.googleapis.com/", + "schemas": { + "AccessPolicy": { + "description": "Rights management policy for YouTube resources.", + "id": "AccessPolicy", + "properties": { + "allowed": { + "description": "The value of allowed indicates whether the access to the policy is allowed or denied by default.", + "type": "boolean" + }, + "exception": { + "description": "A list of region codes that identify countries where the default policy do not apply.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "Activity": { + "description": "An activity resource contains information about an action that a particular channel, or user, has taken on YouTube.The actions reported in activity feeds include rating a video, sharing a video, marking a video as a favorite, commenting on a video, uploading a video, and so forth. Each activity resource identifies the type of action, the channel associated with the action, and the resource(s) associated with the action, such as the video that was rated or uploaded.", + "id": "Activity", + "properties": { + "contentDetails": { + "$ref": "ActivityContentDetails", + "description": "The contentDetails object contains information about the content associated with the activity. For example, if the snippet.type value is videoRated, then the contentDetails object's content identifies the rated video." + }, + "etag": { + "description": "Etag of this resource.", + "type": "string" + }, + "id": { + "description": "The ID that YouTube uses to uniquely identify the activity.", + "type": "string" + }, + "kind": { + "default": "youtube#activity", + "description": "Identifies what kind of resource this is. Value: the fixed string \"youtube#activity\".", + "type": "string" + }, + "snippet": { + "$ref": "ActivitySnippet", + "description": "The snippet object contains basic details about the activity, including the activity's type and group ID." + } + }, + "type": "object" + }, + "ActivityContentDetails": { + "description": "Details about the content of an activity: the video that was shared, the channel that was subscribed to, etc.", + "id": "ActivityContentDetails", + "properties": { + "bulletin": { + "$ref": "ActivityContentDetailsBulletin", + "description": "The bulletin object contains details about a channel bulletin post. This object is only present if the snippet.type is bulletin." + }, + "channelItem": { + "$ref": "ActivityContentDetailsChannelItem", + "description": "The channelItem object contains details about a resource which was added to a channel. This property is only present if the snippet.type is channelItem." + }, + "comment": { + "$ref": "ActivityContentDetailsComment", + "description": "The comment object contains information about a resource that received a comment. This property is only present if the snippet.type is comment." + }, + "favorite": { + "$ref": "ActivityContentDetailsFavorite", + "description": "The favorite object contains information about a video that was marked as a favorite video. This property is only present if the snippet.type is favorite." + }, + "like": { + "$ref": "ActivityContentDetailsLike", + "description": "The like object contains information about a resource that received a positive (like) rating. This property is only present if the snippet.type is like." + }, + "playlistItem": { + "$ref": "ActivityContentDetailsPlaylistItem", + "description": "The playlistItem object contains information about a new playlist item. This property is only present if the snippet.type is playlistItem." + }, + "promotedItem": { + "$ref": "ActivityContentDetailsPromotedItem", + "description": "The promotedItem object contains details about a resource which is being promoted. This property is only present if the snippet.type is promotedItem." + }, + "recommendation": { + "$ref": "ActivityContentDetailsRecommendation", + "description": "The recommendation object contains information about a recommended resource. This property is only present if the snippet.type is recommendation." + }, + "social": { + "$ref": "ActivityContentDetailsSocial", + "description": "The social object contains details about a social network post. This property is only present if the snippet.type is social." + }, + "subscription": { + "$ref": "ActivityContentDetailsSubscription", + "description": "The subscription object contains information about a channel that a user subscribed to. This property is only present if the snippet.type is subscription." + }, + "upload": { + "$ref": "ActivityContentDetailsUpload", + "description": "The upload object contains information about the uploaded video. This property is only present if the snippet.type is upload." + } + }, + "type": "object" + }, + "ActivityContentDetailsBulletin": { + "description": "Details about a channel bulletin post.", + "id": "ActivityContentDetailsBulletin", + "properties": { + "resourceId": { + "$ref": "ResourceId", + "description": "The resourceId object contains information that identifies the resource associated with a bulletin post." + } + }, + "type": "object" + }, + "ActivityContentDetailsChannelItem": { + "description": "Details about a resource which was added to a channel.", + "id": "ActivityContentDetailsChannelItem", + "properties": { + "resourceId": { + "$ref": "ResourceId", + "description": "The resourceId object contains information that identifies the resource that was added to the channel." + } + }, + "type": "object" + }, + "ActivityContentDetailsComment": { + "description": "Information about a resource that received a comment.", + "id": "ActivityContentDetailsComment", + "properties": { + "resourceId": { + "$ref": "ResourceId", + "description": "The resourceId object contains information that identifies the resource associated with the comment." + } + }, + "type": "object" + }, + "ActivityContentDetailsFavorite": { + "description": "Information about a video that was marked as a favorite video.", + "id": "ActivityContentDetailsFavorite", + "properties": { + "resourceId": { + "$ref": "ResourceId", + "description": "The resourceId object contains information that identifies the resource that was marked as a favorite." + } + }, + "type": "object" + }, + "ActivityContentDetailsLike": { + "description": "Information about a resource that received a positive (like) rating.", + "id": "ActivityContentDetailsLike", + "properties": { + "resourceId": { + "$ref": "ResourceId", + "description": "The resourceId object contains information that identifies the rated resource." + } + }, + "type": "object" + }, + "ActivityContentDetailsPlaylistItem": { + "description": "Information about a new playlist item.", + "id": "ActivityContentDetailsPlaylistItem", + "properties": { + "playlistId": { + "description": "The value that YouTube uses to uniquely identify the playlist.", + "type": "string" + }, + "playlistItemId": { + "description": "ID of the item within the playlist.", + "type": "string" + }, + "resourceId": { + "$ref": "ResourceId", + "description": "The resourceId object contains information about the resource that was added to the playlist." + } + }, + "type": "object" + }, + "ActivityContentDetailsPromotedItem": { + "description": "Details about a resource which is being promoted.", + "id": "ActivityContentDetailsPromotedItem", + "properties": { + "adTag": { + "description": "The URL the client should fetch to request a promoted item.", + "type": "string" + }, + "clickTrackingUrl": { + "description": "The URL the client should ping to indicate that the user clicked through on this promoted item.", + "type": "string" + }, + "creativeViewUrl": { + "description": "The URL the client should ping to indicate that the user was shown this promoted item.", + "type": "string" + }, + "ctaType": { + "description": "The type of call-to-action, a message to the user indicating action that can be taken.", + "enum": [ + "unspecified", + "visitAdvertiserSite" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "customCtaButtonText": { + "description": "The custom call-to-action button text. If specified, it will override the default button text for the cta_type.", + "type": "string" + }, + "descriptionText": { + "description": "The text description to accompany the promoted item.", + "type": "string" + }, + "destinationUrl": { + "description": "The URL the client should direct the user to, if the user chooses to visit the advertiser's website.", + "type": "string" + }, + "forecastingUrl": { + "description": "The list of forecasting URLs. The client should ping all of these URLs when a promoted item is not available, to indicate that a promoted item could have been shown.", + "items": { + "type": "string" + }, + "type": "array" + }, + "impressionUrl": { + "description": "The list of impression URLs. The client should ping all of these URLs to indicate that the user was shown this promoted item.", + "items": { + "type": "string" + }, + "type": "array" + }, + "videoId": { + "description": "The ID that YouTube uses to uniquely identify the promoted video.", + "type": "string" + } + }, + "type": "object" + }, + "ActivityContentDetailsRecommendation": { + "description": "Information that identifies the recommended resource.", + "id": "ActivityContentDetailsRecommendation", + "properties": { + "reason": { + "description": "The reason that the resource is recommended to the user.", + "enum": [ + "unspecified", + "videoFavorited", + "videoLiked", + "videoWatched" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ], + "type": "string" + }, + "resourceId": { + "$ref": "ResourceId", + "description": "The resourceId object contains information that identifies the recommended resource." + }, + "seedResourceId": { + "$ref": "ResourceId", + "description": "The seedResourceId object contains information about the resource that caused the recommendation." + } + }, + "type": "object" + }, + "ActivityContentDetailsSocial": { + "description": "Details about a social network post.", + "id": "ActivityContentDetailsSocial", + "properties": { + "author": { + "description": "The author of the social network post.", + "type": "string" + }, + "imageUrl": { + "description": "An image of the post's author.", + "type": "string" + }, + "referenceUrl": { + "description": "The URL of the social network post.", + "type": "string" + }, + "resourceId": { + "$ref": "ResourceId", + "description": "The resourceId object encapsulates information that identifies the resource associated with a social network post." + }, + "type": { + "description": "The name of the social network.", + "enum": [ + "facebook", + "googlePlus", + "twitter", + "unspecified" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "ActivityContentDetailsSubscription": { + "description": "Information about a channel that a user subscribed to.", + "id": "ActivityContentDetailsSubscription", + "properties": { + "resourceId": { + "$ref": "ResourceId", + "description": "The resourceId object contains information that identifies the resource that the user subscribed to." + } + }, + "type": "object" + }, + "ActivityContentDetailsUpload": { + "description": "Information about the uploaded video.", + "id": "ActivityContentDetailsUpload", + "properties": { + "videoId": { + "description": "The ID that YouTube uses to uniquely identify the uploaded video.", + "type": "string" + } + }, + "type": "object" + }, + "ActivityListResponse": { + "id": "ActivityListResponse", + "properties": { + "etag": { + "description": "Etag of this resource.", + "type": "string" + }, + "eventId": { + "description": "Serialized EventId of the request which produced this response.", + "type": "string" + }, + "items": { + "description": "A list of activities, or events, that match the request criteria.", + "items": { + "$ref": "Activity" + }, + "type": "array" + }, + "kind": { + "default": "youtube#activityListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"youtube#activityListResponse\".", + "type": "string" + }, + "nextPageToken": { + "description": "The token that can be used as the value of the pageToken parameter to retrieve the next page in the result set.", + "type": "string" + }, + "pageInfo": { + "$ref": "PageInfo" + }, + "prevPageToken": { + "description": "The token that can be used as the value of the pageToken parameter to retrieve the previous page in the result set.", + "type": "string" + }, + "tokenPagination": { + "$ref": "TokenPagination" + }, + "visitorId": { + "description": "The visitorId identifies the visitor.", + "type": "string" + } + }, + "type": "object" + }, + "ActivitySnippet": { + "description": "Basic details about an activity, including title, description, thumbnails, activity type and group.", + "id": "ActivitySnippet", + "properties": { + "channelId": { + "description": "The ID that YouTube uses to uniquely identify the channel associated with the activity.", + "type": "string" + }, + "channelTitle": { + "description": "Channel title for the channel responsible for this activity", + "type": "string" + }, + "description": { + "annotations": { + "required": [ + "youtube.activities.insert" + ] + }, + "description": "The description of the resource primarily associated with the activity.", + "type": "string" + }, + "groupId": { + "description": "The group ID associated with the activity. A group ID identifies user events that are associated with the same user and resource. For example, if a user rates a video and marks the same video as a favorite, the entries for those events would have the same group ID in the user's activity feed. In your user interface, you can avoid repetition by grouping events with the same groupId value.", + "type": "string" + }, + "publishedAt": { + "description": "The date and time that the video was uploaded. The value is specified in ISO 8601 (YYYY-MM-DDThh:mm:ss.sZ) format.", + "format": "date-time", + "type": "string" + }, + "thumbnails": { + "$ref": "ThumbnailDetails", + "description": "A map of thumbnail images associated with the resource that is primarily associated with the activity. For each object in the map, the key is the name of the thumbnail image, and the value is an object that contains other information about the thumbnail." + }, + "title": { + "description": "The title of the resource primarily associated with the activity.", + "type": "string" + }, + "type": { + "description": "The type of activity that the resource describes.", + "enum": [ + "bulletin", + "channelItem", + "comment", + "favorite", + "like", + "playlistItem", + "promotedItem", + "recommendation", + "social", + "subscription", + "upload" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "Caption": { + "description": "A caption resource represents a YouTube caption track. A caption track is associated with exactly one YouTube video.", + "id": "Caption", + "properties": { + "etag": { + "description": "Etag of this resource.", + "type": "string" + }, + "id": { + "annotations": { + "required": [ + "youtube.captions.update" + ] + }, + "description": "The ID that YouTube uses to uniquely identify the caption track.", + "type": "string" + }, + "kind": { + "default": "youtube#caption", + "description": "Identifies what kind of resource this is. Value: the fixed string \"youtube#caption\".", + "type": "string" + }, + "snippet": { + "$ref": "CaptionSnippet", + "description": "The snippet object contains basic details about the caption." + } + }, + "type": "object" + }, + "CaptionListResponse": { + "id": "CaptionListResponse", + "properties": { + "etag": { + "description": "Etag of this resource.", + "type": "string" + }, + "eventId": { + "description": "Serialized EventId of the request which produced this response.", + "type": "string" + }, + "items": { + "description": "A list of captions that match the request criteria.", + "items": { + "$ref": "Caption" + }, + "type": "array" + }, + "kind": { + "default": "youtube#captionListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"youtube#captionListResponse\".", + "type": "string" + }, + "visitorId": { + "description": "The visitorId identifies the visitor.", + "type": "string" + } + }, + "type": "object" + }, + "CaptionSnippet": { + "description": "Basic details about a caption track, such as its language and name.", + "id": "CaptionSnippet", + "properties": { + "audioTrackType": { + "description": "The type of audio track associated with the caption track.", + "enum": [ + "commentary", + "descriptive", + "primary", + "unknown" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ], + "type": "string" + }, + "failureReason": { + "description": "The reason that YouTube failed to process the caption track. This property is only present if the state property's value is failed.", + "enum": [ + "processingFailed", + "unknownFormat", + "unsupportedFormat" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, + "isAutoSynced": { + "description": "Indicates whether YouTube synchronized the caption track to the audio track in the video. The value will be true if a sync was explicitly requested when the caption track was uploaded. For example, when calling the captions.insert or captions.update methods, you can set the sync parameter to true to instruct YouTube to sync the uploaded track to the video. If the value is false, YouTube uses the time codes in the uploaded caption track to determine when to display captions.", + "type": "boolean" + }, + "isCC": { + "description": "Indicates whether the track contains closed captions for the deaf and hard of hearing. The default value is false.", + "type": "boolean" + }, + "isDraft": { + "description": "Indicates whether the caption track is a draft. If the value is true, then the track is not publicly visible. The default value is false.", + "type": "boolean" + }, + "isEasyReader": { + "description": "Indicates whether caption track is formatted for \"easy reader,\" meaning it is at a third-grade level for language learners. The default value is false.", + "type": "boolean" + }, + "isLarge": { + "description": "Indicates whether the caption track uses large text for the vision-impaired. The default value is false.", + "type": "boolean" + }, + "language": { + "annotations": { + "required": [ + "youtube.captions.insert" + ] + }, + "description": "The language of the caption track. The property value is a BCP-47 language tag.", + "type": "string" + }, + "lastUpdated": { + "description": "The date and time when the caption track was last updated. The value is specified in ISO 8601 (YYYY-MM-DDThh:mm:ss.sZ) format.", + "format": "date-time", + "type": "string" + }, + "name": { + "annotations": { + "required": [ + "youtube.captions.insert" + ] + }, + "description": "The name of the caption track. The name is intended to be visible to the user as an option during playback.", + "type": "string" + }, + "status": { + "description": "The caption track's status.", + "enum": [ + "failed", + "serving", + "syncing" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, + "trackKind": { + "description": "The caption track's type.", + "enum": [ + "ASR", + "forced", + "standard" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, + "videoId": { + "annotations": { + "required": [ + "youtube.captions.insert" + ] + }, + "description": "The ID that YouTube uses to uniquely identify the video associated with the caption track.", + "type": "string" + } + }, + "type": "object" + }, + "CdnSettings": { + "description": "Brief description of the live stream cdn settings.", + "id": "CdnSettings", + "properties": { + "format": { + "annotations": { + "required": [ + "youtube.liveStreams.insert", + "youtube.liveStreams.update" + ] + }, + "description": "The format of the video stream that you are sending to Youtube.", + "type": "string" + }, + "frameRate": { + "description": "The frame rate of the inbound video data.", + "enum": [ + "30fps", + "60fps", + "variable" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, + "ingestionInfo": { + "$ref": "IngestionInfo", + "description": "The ingestionInfo object contains information that YouTube provides that you need to transmit your RTMP or HTTP stream to YouTube." + }, + "ingestionType": { + "annotations": { + "required": [ + "youtube.liveStreams.insert", + "youtube.liveStreams.update" + ] + }, + "description": "The method or protocol used to transmit the video stream.", + "enum": [ + "dash", + "rtmp" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "resolution": { + "description": "The resolution of the inbound video data.", + "enum": [ + "1080p", + "1440p", + "2160p", + "240p", + "360p", + "480p", + "720p", + "variable" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "Channel": { + "description": "A channel resource contains information about a YouTube channel.", + "id": "Channel", + "properties": { + "auditDetails": { + "$ref": "ChannelAuditDetails", + "description": "The auditionDetails object encapsulates channel data that is relevant for YouTube Partners during the audition process." + }, + "brandingSettings": { + "$ref": "ChannelBrandingSettings", + "description": "The brandingSettings object encapsulates information about the branding of the channel." + }, + "contentDetails": { + "$ref": "ChannelContentDetails", + "description": "The contentDetails object encapsulates information about the channel's content." + }, + "contentOwnerDetails": { + "$ref": "ChannelContentOwnerDetails", + "description": "The contentOwnerDetails object encapsulates channel data that is relevant for YouTube Partners linked with the channel." + }, + "conversionPings": { + "$ref": "ChannelConversionPings", + "description": "The conversionPings object encapsulates information about conversion pings that need to be respected by the channel." + }, + "etag": { + "description": "Etag of this resource.", + "type": "string" + }, + "id": { + "description": "The ID that YouTube uses to uniquely identify the channel.", + "type": "string" + }, + "invideoPromotion": { + "$ref": "InvideoPromotion", + "description": "The invideoPromotion object encapsulates information about promotion campaign associated with the channel." + }, + "kind": { + "default": "youtube#channel", + "description": "Identifies what kind of resource this is. Value: the fixed string \"youtube#channel\".", + "type": "string" + }, + "localizations": { + "additionalProperties": { + "$ref": "ChannelLocalization", + "description": "The language tag, using string since map_key require simple types." + }, + "description": "Localizations for different languages", + "type": "object" + }, + "snippet": { + "$ref": "ChannelSnippet", + "description": "The snippet object contains basic details about the channel, such as its title, description, and thumbnail images." + }, + "statistics": { + "$ref": "ChannelStatistics", + "description": "The statistics object encapsulates statistics for the channel." + }, + "status": { + "$ref": "ChannelStatus", + "description": "The status object encapsulates information about the privacy status of the channel." + }, + "topicDetails": { + "$ref": "ChannelTopicDetails", + "description": "The topicDetails object encapsulates information about Freebase topics associated with the channel." + } + }, + "type": "object" + }, + "ChannelAuditDetails": { + "description": "The auditDetails object encapsulates channel data that is relevant for YouTube Partners during the audit process.", + "id": "ChannelAuditDetails", + "properties": { + "communityGuidelinesGoodStanding": { + "description": "Whether or not the channel respects the community guidelines.", + "type": "boolean" + }, + "contentIdClaimsGoodStanding": { + "description": "Whether or not the channel has any unresolved claims.", + "type": "boolean" + }, + "copyrightStrikesGoodStanding": { + "description": "Whether or not the channel has any copyright strikes.", + "type": "boolean" + }, + "overallGoodStanding": { + "description": "Describes the general state of the channel. This field will always show if there are any issues whatsoever with the channel. Currently this field represents the result of the logical and operation over the community guidelines good standing, the copyright strikes good standing and the content ID claims good standing, but this may change in the future.", + "type": "boolean" + } + }, + "type": "object" + }, + "ChannelBannerResource": { + "description": "A channel banner returned as the response to a channel_banner.insert call.", + "id": "ChannelBannerResource", + "properties": { + "etag": { + "description": "Etag of this resource.", + "type": "string" + }, + "kind": { + "default": "youtube#channelBannerResource", + "description": "Identifies what kind of resource this is. Value: the fixed string \"youtube#channelBannerResource\".", + "type": "string" + }, + "url": { + "description": "The URL of this banner image.", + "type": "string" + } + }, + "type": "object" + }, + "ChannelBrandingSettings": { + "description": "Branding properties of a YouTube channel.", + "id": "ChannelBrandingSettings", + "properties": { + "channel": { + "$ref": "ChannelSettings", + "description": "Branding properties for the channel view." + }, + "hints": { + "description": "Additional experimental branding properties.", + "items": { + "$ref": "PropertyValue" + }, + "type": "array" + }, + "image": { + "$ref": "ImageSettings", + "description": "Branding properties for branding images." + }, + "watch": { + "$ref": "WatchSettings", + "description": "Branding properties for the watch page." + } + }, + "type": "object" + }, + "ChannelContentDetails": { + "description": "Details about the content of a channel.", + "id": "ChannelContentDetails", + "properties": { + "relatedPlaylists": { + "properties": { + "favorites": { + "description": "The ID of the playlist that contains the channel\"s favorite videos. Use the playlistItems.insert and playlistItems.delete to add or remove items from that list.", + "type": "string" + }, + "likes": { + "description": "The ID of the playlist that contains the channel\"s liked videos. Use the playlistItems.insert and playlistItems.delete to add or remove items from that list.", + "type": "string" + }, + "uploads": { + "description": "The ID of the playlist that contains the channel\"s uploaded videos. Use the videos.insert method to upload new videos and the videos.delete method to delete previously uploaded videos.", + "type": "string" + }, + "watchHistory": { + "description": "The ID of the playlist that contains the channel\"s watch history. Use the playlistItems.insert and playlistItems.delete to add or remove items from that list.", + "type": "string" + }, + "watchLater": { + "description": "The ID of the playlist that contains the channel\"s watch later playlist. Use the playlistItems.insert and playlistItems.delete to add or remove items from that list.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "ChannelContentOwnerDetails": { + "description": "The contentOwnerDetails object encapsulates channel data that is relevant for YouTube Partners linked with the channel.", + "id": "ChannelContentOwnerDetails", + "properties": { + "contentOwner": { + "description": "The ID of the content owner linked to the channel.", + "type": "string" + }, + "timeLinked": { + "description": "The date and time of when the channel was linked to the content owner. The value is specified in ISO 8601 (YYYY-MM-DDThh:mm:ss.sZ) format.", + "format": "date-time", + "type": "string" + } + }, + "type": "object" + }, + "ChannelConversionPing": { + "description": "Pings that the app shall fire (authenticated by biscotti cookie). Each ping has a context, in which the app must fire the ping, and a url identifying the ping.", + "id": "ChannelConversionPing", + "properties": { + "context": { + "description": "Defines the context of the ping.", + "enum": [ + "cview", + "subscribe", + "unsubscribe" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, + "conversionUrl": { + "description": "The url (without the schema) that the player shall send the ping to. It's at caller's descretion to decide which schema to use (http vs https) Example of a returned url: //googleads.g.doubleclick.net/pagead/ viewthroughconversion/962985656/?data=path%3DtHe_path%3Btype%3D cview%3Butuid%3DGISQtTNGYqaYl4sKxoVvKA\u0026labe=default The caller must append biscotti authentication (ms param in case of mobile, for example) to this ping.", + "type": "string" + } + }, + "type": "object" + }, + "ChannelConversionPings": { + "description": "The conversionPings object encapsulates information about conversion pings that need to be respected by the channel.", + "id": "ChannelConversionPings", + "properties": { + "pings": { + "description": "Pings that the app shall fire (authenticated by biscotti cookie). Each ping has a context, in which the app must fire the ping, and a url identifying the ping.", + "items": { + "$ref": "ChannelConversionPing" + }, + "type": "array" + } + }, + "type": "object" + }, + "ChannelListResponse": { + "id": "ChannelListResponse", + "properties": { + "etag": { + "description": "Etag of this resource.", + "type": "string" + }, + "eventId": { + "description": "Serialized EventId of the request which produced this response.", + "type": "string" + }, + "items": { + "description": "A list of channels that match the request criteria.", + "items": { + "$ref": "Channel" + }, + "type": "array" + }, + "kind": { + "default": "youtube#channelListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"youtube#channelListResponse\".", + "type": "string" + }, + "nextPageToken": { + "description": "The token that can be used as the value of the pageToken parameter to retrieve the next page in the result set.", + "type": "string" + }, + "pageInfo": { + "$ref": "PageInfo" + }, + "prevPageToken": { + "description": "The token that can be used as the value of the pageToken parameter to retrieve the previous page in the result set.", + "type": "string" + }, + "tokenPagination": { + "$ref": "TokenPagination" + }, + "visitorId": { + "description": "The visitorId identifies the visitor.", + "type": "string" + } + }, + "type": "object" + }, + "ChannelLocalization": { + "description": "Channel localization setting", + "id": "ChannelLocalization", + "properties": { + "description": { + "description": "The localized strings for channel's description.", + "type": "string" + }, + "title": { + "description": "The localized strings for channel's title.", + "type": "string" + } + }, + "type": "object" + }, + "ChannelProfileDetails": { + "id": "ChannelProfileDetails", + "properties": { + "channelId": { + "description": "The YouTube channel ID.", + "type": "string" + }, + "channelUrl": { + "description": "The channel's URL.", + "type": "string" + }, + "displayName": { + "description": "The channel's display name.", + "type": "string" + }, + "profileImageUrl": { + "description": "The channels's avatar URL.", + "type": "string" + } + }, + "type": "object" + }, + "ChannelSection": { + "id": "ChannelSection", + "properties": { + "contentDetails": { + "$ref": "ChannelSectionContentDetails", + "description": "The contentDetails object contains details about the channel section content, such as a list of playlists or channels featured in the section." + }, + "etag": { + "description": "Etag of this resource.", + "type": "string" + }, + "id": { + "description": "The ID that YouTube uses to uniquely identify the channel section.", + "type": "string" + }, + "kind": { + "default": "youtube#channelSection", + "description": "Identifies what kind of resource this is. Value: the fixed string \"youtube#channelSection\".", + "type": "string" + }, + "localizations": { + "additionalProperties": { + "$ref": "ChannelSectionLocalization", + "description": "The language tag, using string since map_key require simple types." + }, + "description": "Localizations for different languages", + "type": "object" + }, + "snippet": { + "$ref": "ChannelSectionSnippet", + "description": "The snippet object contains basic details about the channel section, such as its type, style and title." + }, + "targeting": { + "$ref": "ChannelSectionTargeting", + "description": "The targeting object contains basic targeting settings about the channel section." + } + }, + "type": "object" + }, + "ChannelSectionContentDetails": { + "description": "Details about a channelsection, including playlists and channels.", + "id": "ChannelSectionContentDetails", + "properties": { + "channels": { + "description": "The channel ids for type multiple_channels.", + "items": { + "type": "string" + }, + "type": "array" + }, + "playlists": { + "description": "The playlist ids for type single_playlist and multiple_playlists. For singlePlaylist, only one playlistId is allowed.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "ChannelSectionListResponse": { + "id": "ChannelSectionListResponse", + "properties": { + "etag": { + "description": "Etag of this resource.", + "type": "string" + }, + "eventId": { + "description": "Serialized EventId of the request which produced this response.", + "type": "string" + }, + "items": { + "description": "A list of ChannelSections that match the request criteria.", + "items": { + "$ref": "ChannelSection" + }, + "type": "array" + }, + "kind": { + "default": "youtube#channelSectionListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"youtube#channelSectionListResponse\".", + "type": "string" + }, + "visitorId": { + "description": "The visitorId identifies the visitor.", + "type": "string" + } + }, + "type": "object" + }, + "ChannelSectionLocalization": { + "description": "ChannelSection localization setting", + "id": "ChannelSectionLocalization", + "properties": { + "title": { + "description": "The localized strings for channel section's title.", + "type": "string" + } + }, + "type": "object" + }, + "ChannelSectionSnippet": { + "description": "Basic details about a channel section, including title, style and position.", + "id": "ChannelSectionSnippet", + "properties": { + "channelId": { + "description": "The ID that YouTube uses to uniquely identify the channel that published the channel section.", + "type": "string" + }, + "defaultLanguage": { + "description": "The language of the channel section's default title and description.", + "type": "string" + }, + "localized": { + "$ref": "ChannelSectionLocalization", + "description": "Localized title, read-only." + }, + "position": { + "description": "The position of the channel section in the channel.", + "format": "uint32", + "type": "integer" + }, + "style": { + "description": "The style of the channel section.", + "enum": [ + "channelsectionStyleUndefined", + "horizontalRow", + "verticalList" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, + "title": { + "description": "The channel section's title for multiple_playlists and multiple_channels.", + "type": "string" + }, + "type": { + "description": "The type of the channel section.", + "enum": [ + "allPlaylists", + "channelsectionTypeUndefined", + "completedEvents", + "likedPlaylists", + "likes", + "liveEvents", + "multipleChannels", + "multiplePlaylists", + "popularUploads", + "postedPlaylists", + "postedVideos", + "recentActivity", + "recentPosts", + "recentUploads", + "singlePlaylist", + "subscriptions", + "upcomingEvents" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "ChannelSectionTargeting": { + "description": "ChannelSection targeting setting.", + "id": "ChannelSectionTargeting", + "properties": { + "countries": { + "description": "The country the channel section is targeting.", + "items": { + "type": "string" + }, + "type": "array" + }, + "languages": { + "description": "The language the channel section is targeting.", + "items": { + "type": "string" + }, + "type": "array" + }, + "regions": { + "description": "The region the channel section is targeting.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "ChannelSettings": { + "description": "Branding properties for the channel view.", + "id": "ChannelSettings", + "properties": { + "country": { + "description": "The country of the channel.", + "type": "string" + }, + "defaultLanguage": { + "type": "string" + }, + "defaultTab": { + "description": "Which content tab users should see when viewing the channel.", + "type": "string" + }, + "description": { + "description": "Specifies the channel description.", + "type": "string" + }, + "featuredChannelsTitle": { + "description": "Title for the featured channels tab.", + "type": "string" + }, + "featuredChannelsUrls": { + "description": "The list of featured channels.", + "items": { + "type": "string" + }, + "type": "array" + }, + "keywords": { + "description": "Lists keywords associated with the channel, comma-separated.", + "type": "string" + }, + "moderateComments": { + "description": "Whether user-submitted comments left on the channel page need to be approved by the channel owner to be publicly visible.", + "type": "boolean" + }, + "profileColor": { + "description": "A prominent color that can be rendered on this channel page.", + "type": "string" + }, + "showBrowseView": { + "description": "Whether the tab to browse the videos should be displayed.", + "type": "boolean" + }, + "showRelatedChannels": { + "description": "Whether related channels should be proposed.", + "type": "boolean" + }, + "title": { + "description": "Specifies the channel title.", + "type": "string" + }, + "trackingAnalyticsAccountId": { + "description": "The ID for a Google Analytics account to track and measure traffic to the channels.", + "type": "string" + }, + "unsubscribedTrailer": { + "description": "The trailer of the channel, for users that are not subscribers.", + "type": "string" + } + }, + "type": "object" + }, + "ChannelSnippet": { + "description": "Basic details about a channel, including title, description and thumbnails.", + "id": "ChannelSnippet", + "properties": { + "country": { + "description": "The country of the channel.", + "type": "string" + }, + "customUrl": { + "description": "The custom url of the channel.", + "type": "string" + }, + "defaultLanguage": { + "description": "The language of the channel's default title and description.", + "type": "string" + }, + "description": { + "description": "The description of the channel.", + "type": "string" + }, + "localized": { + "$ref": "ChannelLocalization", + "description": "Localized title and description, read-only." + }, + "publishedAt": { + "description": "The date and time that the channel was created. The value is specified in ISO 8601 (YYYY-MM-DDThh:mm:ss.sZ) format.", + "format": "date-time", + "type": "string" + }, + "thumbnails": { + "$ref": "ThumbnailDetails", + "description": "A map of thumbnail images associated with the channel. For each object in the map, the key is the name of the thumbnail image, and the value is an object that contains other information about the thumbnail." + }, + "title": { + "description": "The channel's title.", + "type": "string" + } + }, + "type": "object" + }, + "ChannelStatistics": { + "description": "Statistics about a channel: number of subscribers, number of videos in the channel, etc.", + "id": "ChannelStatistics", + "properties": { + "commentCount": { + "description": "The number of comments for the channel.", + "format": "uint64", + "type": "string" + }, + "hiddenSubscriberCount": { + "description": "Whether or not the number of subscribers is shown for this user.", + "type": "boolean" + }, + "subscriberCount": { + "description": "The number of subscribers that the channel has.", + "format": "uint64", + "type": "string" + }, + "videoCount": { + "description": "The number of videos uploaded to the channel.", + "format": "uint64", + "type": "string" + }, + "viewCount": { + "description": "The number of times the channel has been viewed.", + "format": "uint64", + "type": "string" + } + }, + "type": "object" + }, + "ChannelStatus": { + "description": "JSON template for the status part of a channel.", + "id": "ChannelStatus", + "properties": { + "isLinked": { + "description": "If true, then the user is linked to either a YouTube username or G+ account. Otherwise, the user doesn't have a public YouTube identity.", + "type": "boolean" + }, + "longUploadsStatus": { + "description": "The long uploads status of this channel. See", + "enum": [ + "allowed", + "disallowed", + "eligible", + "longUploadsUnspecified" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ], + "type": "string" + }, + "privacyStatus": { + "description": "Privacy status of the channel.", + "enum": [ + "private", + "public", + "unlisted" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "ChannelTopicDetails": { + "description": "Freebase topic information related to the channel.", + "id": "ChannelTopicDetails", + "properties": { + "topicCategories": { + "description": "A list of Wikipedia URLs that describe the channel's content.", + "items": { + "type": "string" + }, + "type": "array" + }, + "topicIds": { + "description": "A list of Freebase topic IDs associated with the channel. You can retrieve information about each topic using the Freebase Topic API.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "Comment": { + "description": "A comment represents a single YouTube comment.", + "id": "Comment", + "properties": { + "etag": { + "description": "Etag of this resource.", + "type": "string" + }, + "id": { + "description": "The ID that YouTube uses to uniquely identify the comment.", + "type": "string" + }, + "kind": { + "default": "youtube#comment", + "description": "Identifies what kind of resource this is. Value: the fixed string \"youtube#comment\".", + "type": "string" + }, + "snippet": { + "$ref": "CommentSnippet", + "description": "The snippet object contains basic details about the comment." + } + }, + "type": "object" + }, + "CommentListResponse": { + "id": "CommentListResponse", + "properties": { + "etag": { + "description": "Etag of this resource.", + "type": "string" + }, + "eventId": { + "description": "Serialized EventId of the request which produced this response.", + "type": "string" + }, + "items": { + "description": "A list of comments that match the request criteria.", + "items": { + "$ref": "Comment" + }, + "type": "array" + }, + "kind": { + "default": "youtube#commentListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"youtube#commentListResponse\".", + "type": "string" + }, + "nextPageToken": { + "description": "The token that can be used as the value of the pageToken parameter to retrieve the next page in the result set.", + "type": "string" + }, + "pageInfo": { + "$ref": "PageInfo" + }, + "tokenPagination": { + "$ref": "TokenPagination" + }, + "visitorId": { + "description": "The visitorId identifies the visitor.", + "type": "string" + } + }, + "type": "object" + }, + "CommentSnippet": { + "description": "Basic details about a comment, such as its author and text.", + "id": "CommentSnippet", + "properties": { + "authorChannelId": { + "description": "The id of the author's YouTube channel, if any.", + "type": "any" + }, + "authorChannelUrl": { + "description": "Link to the author's YouTube channel, if any.", + "type": "string" + }, + "authorDisplayName": { + "description": "The name of the user who posted the comment.", + "type": "string" + }, + "authorProfileImageUrl": { + "description": "The URL for the avatar of the user who posted the comment.", + "type": "string" + }, + "canRate": { + "description": "Whether the current viewer can rate this comment.", + "type": "boolean" + }, + "channelId": { + "description": "The id of the corresponding YouTube channel. In case of a channel comment this is the channel the comment refers to. In case of a video comment it's the video's channel.", + "type": "string" + }, + "likeCount": { + "description": "The total number of likes this comment has received.", + "format": "uint32", + "type": "integer" + }, + "moderationStatus": { + "description": "The comment's moderation status. Will not be set if the comments were requested through the id filter.", + "enum": [ + "heldForReview", + "likelySpam", + "published", + "rejected" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ], + "type": "string" + }, + "parentId": { + "description": "The unique id of the parent comment, only set for replies.", + "type": "string" + }, + "publishedAt": { + "description": "The date and time when the comment was orignally published. The value is specified in ISO 8601 (YYYY-MM-DDThh:mm:ss.sZ) format.", + "format": "date-time", + "type": "string" + }, + "textDisplay": { + "description": "The comment's text. The format is either plain text or HTML dependent on what has been requested. Even the plain text representation may differ from the text originally posted in that it may replace video links with video titles etc.", + "type": "string" + }, + "textOriginal": { + "description": "The comment's original raw text as initially posted or last updated. The original text will only be returned if it is accessible to the viewer, which is only guaranteed if the viewer is the comment's author.", + "type": "string" + }, + "updatedAt": { + "description": "The date and time when was last updated . The value is specified in ISO 8601 (YYYY-MM-DDThh:mm:ss.sZ) format.", + "format": "date-time", + "type": "string" + }, + "videoId": { + "description": "The ID of the video the comment refers to, if any.", + "type": "string" + }, + "viewerRating": { + "description": "The rating the viewer has given to this comment. For the time being this will never return RATE_TYPE_DISLIKE and instead return RATE_TYPE_NONE. This may change in the future.", + "enum": [ + "dislike", + "like", + "none", + "unspecified" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "CommentThread": { + "description": "A comment thread represents information that applies to a top level comment and all its replies. It can also include the top level comment itself and some of the replies.", + "id": "CommentThread", + "properties": { + "etag": { + "description": "Etag of this resource.", + "type": "string" + }, + "id": { + "description": "The ID that YouTube uses to uniquely identify the comment thread.", + "type": "string" + }, + "kind": { + "default": "youtube#commentThread", + "description": "Identifies what kind of resource this is. Value: the fixed string \"youtube#commentThread\".", + "type": "string" + }, + "replies": { + "$ref": "CommentThreadReplies", + "description": "The replies object contains a limited number of replies (if any) to the top level comment found in the snippet." + }, + "snippet": { + "$ref": "CommentThreadSnippet", + "description": "The snippet object contains basic details about the comment thread and also the top level comment." + } + }, + "type": "object" + }, + "CommentThreadListResponse": { + "id": "CommentThreadListResponse", + "properties": { + "etag": { + "description": "Etag of this resource.", + "type": "string" + }, + "eventId": { + "description": "Serialized EventId of the request which produced this response.", + "type": "string" + }, + "items": { + "description": "A list of comment threads that match the request criteria.", + "items": { + "$ref": "CommentThread" + }, + "type": "array" + }, + "kind": { + "default": "youtube#commentThreadListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"youtube#commentThreadListResponse\".", + "type": "string" + }, + "nextPageToken": { + "description": "The token that can be used as the value of the pageToken parameter to retrieve the next page in the result set.", + "type": "string" + }, + "pageInfo": { + "$ref": "PageInfo" + }, + "tokenPagination": { + "$ref": "TokenPagination" + }, + "visitorId": { + "description": "The visitorId identifies the visitor.", + "type": "string" + } + }, + "type": "object" + }, + "CommentThreadReplies": { + "description": "Comments written in (direct or indirect) reply to the top level comment.", + "id": "CommentThreadReplies", + "properties": { + "comments": { + "description": "A limited number of replies. Unless the number of replies returned equals total_reply_count in the snippet the returned replies are only a subset of the total number of replies.", + "items": { + "$ref": "Comment" + }, + "type": "array" + } + }, + "type": "object" + }, + "CommentThreadSnippet": { + "description": "Basic details about a comment thread.", + "id": "CommentThreadSnippet", + "properties": { + "canReply": { + "description": "Whether the current viewer of the thread can reply to it. This is viewer specific - other viewers may see a different value for this field.", + "type": "boolean" + }, + "channelId": { + "description": "The YouTube channel the comments in the thread refer to or the channel with the video the comments refer to. If video_id isn't set the comments refer to the channel itself.", + "type": "string" + }, + "isPublic": { + "description": "Whether the thread (and therefore all its comments) is visible to all YouTube users.", + "type": "boolean" + }, + "topLevelComment": { + "$ref": "Comment", + "description": "The top level comment of this thread." + }, + "totalReplyCount": { + "description": "The total number of replies (not including the top level comment).", + "format": "uint32", + "type": "integer" + }, + "videoId": { + "description": "The ID of the video the comments refer to, if any. No video_id implies a channel discussion comment.", + "type": "string" + } + }, + "type": "object" + }, + "ContentRating": { + "description": "Ratings schemes. The country-specific ratings are mostly for movies and shows. NEXT_ID: 71", + "id": "ContentRating", + "properties": { + "acbRating": { + "description": "The video's Australian Classification Board (ACB) or Australian Communications and Media Authority (ACMA) rating. ACMA ratings are used to classify children's television programming.", + "enum": [ + "acbC", + "acbE", + "acbG", + "acbM", + "acbMa15plus", + "acbP", + "acbPg", + "acbR18plus", + "acbUnrated" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "agcomRating": { + "description": "The video's rating from Italy's Autorità per le Garanzie nelle Comunicazioni (AGCOM).", + "enum": [ + "agcomT", + "agcomUnrated", + "agcomVm14", + "agcomVm18" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ], + "type": "string" + }, + "anatelRating": { + "description": "The video's Anatel (Asociación Nacional de Televisión) rating for Chilean television.", + "enum": [ + "anatelA", + "anatelF", + "anatelI", + "anatelI10", + "anatelI12", + "anatelI7", + "anatelR", + "anatelUnrated" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "bbfcRating": { + "description": "The video's British Board of Film Classification (BBFC) rating.", + "enum": [ + "bbfc12", + "bbfc12a", + "bbfc15", + "bbfc18", + "bbfcPg", + "bbfcR18", + "bbfcU", + "bbfcUnrated" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "bfvcRating": { + "description": "The video's rating from Thailand's Board of Film and Video Censors.", + "enum": [ + "bfvc13", + "bfvc15", + "bfvc18", + "bfvc20", + "bfvcB", + "bfvcE", + "bfvcG", + "bfvcUnrated" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "bmukkRating": { + "description": "The video's rating from the Austrian Board of Media Classification (Bundesministerium für Unterricht, Kunst und Kultur).", + "enum": [ + "bmukk10", + "bmukk12", + "bmukk14", + "bmukk16", + "bmukk6", + "bmukk8", + "bmukkAa", + "bmukkUnrated" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "catvRating": { + "description": "Rating system for Canadian TV - Canadian TV Classification System The video's rating from the Canadian Radio-Television and Telecommunications Commission (CRTC) for Canadian English-language broadcasts. For more information, see the Canadian Broadcast Standards Council website.", + "enum": [ + "catv14plus", + "catv18plus", + "catvC", + "catvC8", + "catvG", + "catvPg", + "catvUnrated" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "catvfrRating": { + "description": "The video's rating from the Canadian Radio-Television and Telecommunications Commission (CRTC) for Canadian French-language broadcasts. For more information, see the Canadian Broadcast Standards Council website.", + "enum": [ + "catvfr13plus", + "catvfr16plus", + "catvfr18plus", + "catvfr8plus", + "catvfrG", + "catvfrUnrated" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "cbfcRating": { + "description": "The video's Central Board of Film Certification (CBFC - India) rating.", + "enum": [ + "cbfcA", + "cbfcS", + "cbfcU", + "cbfcUA", + "cbfcUnrated" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "cccRating": { + "description": "The video's Consejo de Calificación Cinematográfica (Chile) rating.", + "enum": [ + "ccc14", + "ccc18", + "ccc18s", + "ccc18v", + "ccc6", + "cccTe", + "cccUnrated" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "cceRating": { + "description": "The video's rating from Portugal's Comissão de Classificação de Espect´culos.", + "enum": [ + "cceM12", + "cceM14", + "cceM16", + "cceM18", + "cceM4", + "cceM6", + "cceUnrated" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "chfilmRating": { + "description": "The video's rating in Switzerland.", + "enum": [ + "chfilm0", + "chfilm12", + "chfilm16", + "chfilm18", + "chfilm6", + "chfilmUnrated" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "chvrsRating": { + "description": "The video's Canadian Home Video Rating System (CHVRS) rating.", + "enum": [ + "chvrs14a", + "chvrs18a", + "chvrsE", + "chvrsG", + "chvrsPg", + "chvrsR", + "chvrsUnrated" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "cicfRating": { + "description": "The video's rating from the Commission de Contrôle des Films (Belgium).", + "enum": [ + "cicfE", + "cicfKntEna", + "cicfKtEa", + "cicfUnrated" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ], + "type": "string" + }, + "cnaRating": { + "description": "The video's rating from Romania's CONSILIUL NATIONAL AL AUDIOVIZUALULUI (CNA).", + "enum": [ + "cna12", + "cna15", + "cna18", + "cna18plus", + "cnaAp", + "cnaUnrated" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "cncRating": { + "description": "Rating system in France - Commission de classification cinematographique", + "enum": [ + "cnc10", + "cnc12", + "cnc16", + "cnc18", + "cncE", + "cncT", + "cncUnrated" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "csaRating": { + "description": "The video's rating from France's Conseil supérieur de l?audiovisuel, which rates broadcast content.", + "enum": [ + "csa10", + "csa12", + "csa16", + "csa18", + "csaInterdiction", + "csaT", + "csaUnrated" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "cscfRating": { + "description": "The video's rating from Luxembourg's Commission de surveillance de la classification des films (CSCF).", + "enum": [ + "cscf12", + "cscf16", + "cscf18", + "cscf6", + "cscf9", + "cscfA", + "cscfAl", + "cscfUnrated" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "czfilmRating": { + "description": "The video's rating in the Czech Republic.", + "enum": [ + "czfilm12", + "czfilm14", + "czfilm18", + "czfilmU", + "czfilmUnrated" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "djctqRating": { + "description": "The video's Departamento de Justiça, Classificação, Qualificação e Títulos (DJCQT - Brazil) rating.", + "enum": [ + "djctq10", + "djctq12", + "djctq14", + "djctq16", + "djctq18", + "djctqL", + "djctqUnrated" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "djctqRatingReasons": { + "description": "Reasons that explain why the video received its DJCQT (Brazil) rating.", + "items": { + "enum": [ + "djctqCriminalActs", + "djctqDrugs", + "djctqExplicitSex", + "djctqExtremeViolence", + "djctqIllegalDrugs", + "djctqImpactingContent", + "djctqInappropriateLanguage", + "djctqLegalDrugs", + "djctqNudity", + "djctqSex", + "djctqSexualContent", + "djctqViolence" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "type": "array" + }, + "ecbmctRating": { + "description": "Rating system in Turkey - Evaluation and Classification Board of the Ministry of Culture and Tourism", + "enum": [ + "ecbmct13a", + "ecbmct13plus", + "ecbmct15a", + "ecbmct15plus", + "ecbmct18plus", + "ecbmct7a", + "ecbmct7plus", + "ecbmctG", + "ecbmctUnrated" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "eefilmRating": { + "description": "The video's rating in Estonia.", + "enum": [ + "eefilmK12", + "eefilmK14", + "eefilmK16", + "eefilmK6", + "eefilmL", + "eefilmMs12", + "eefilmMs6", + "eefilmPere", + "eefilmUnrated" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "egfilmRating": { + "description": "The video's rating in Egypt.", + "enum": [ + "egfilm18", + "egfilmBn", + "egfilmGn", + "egfilmUnrated" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ], + "type": "string" + }, + "eirinRating": { + "description": "The video's Eirin (映倫) rating. Eirin is the Japanese rating system.", + "enum": [ + "eirinG", + "eirinPg12", + "eirinR15plus", + "eirinR18plus", + "eirinUnrated" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "fcbmRating": { + "description": "The video's rating from Malaysia's Film Censorship Board.", + "enum": [ + "fcbm18", + "fcbm18pa", + "fcbm18pl", + "fcbm18sg", + "fcbm18sx", + "fcbmP13", + "fcbmPg13", + "fcbmU", + "fcbmUnrated" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "fcoRating": { + "description": "The video's rating from Hong Kong's Office for Film, Newspaper and Article Administration.", + "enum": [ + "fcoI", + "fcoIi", + "fcoIia", + "fcoIib", + "fcoIii", + "fcoUnrated" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "fmocRating": { + "description": "This property has been deprecated. Use the contentDetails.contentRating.cncRating instead.", + "enum": [ + "fmoc10", + "fmoc12", + "fmoc16", + "fmoc18", + "fmocE", + "fmocU", + "fmocUnrated" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "fpbRating": { + "description": "The video's rating from South Africa's Film and Publication Board.", + "enum": [ + "fpb10", + "fpb1012Pg", + "fpb13", + "fpb16", + "fpb18", + "fpb79Pg", + "fpbA", + "fpbPg", + "fpbUnrated", + "fpbX18", + "fpbXx" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "fpbRatingReasons": { + "description": "Reasons that explain why the video received its FPB (South Africa) rating.", + "items": { + "enum": [ + "fpbBlasphemy", + "fpbCriminalTechniques", + "fpbDrugs", + "fpbHorror", + "fpbImitativeActsTechniques", + "fpbLanguage", + "fpbNudity", + "fpbPrejudice", + "fpbSex", + "fpbSexualViolence", + "fpbViolence" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "type": "array" + }, + "fskRating": { + "description": "The video's Freiwillige Selbstkontrolle der Filmwirtschaft (FSK - Germany) rating.", + "enum": [ + "fsk0", + "fsk12", + "fsk16", + "fsk18", + "fsk6", + "fskUnrated" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "grfilmRating": { + "description": "The video's rating in Greece.", + "enum": [ + "grfilmE", + "grfilmK", + "grfilmK12", + "grfilmK13", + "grfilmK15", + "grfilmK17", + "grfilmK18", + "grfilmUnrated" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "icaaRating": { + "description": "The video's Instituto de la Cinematografía y de las Artes Audiovisuales (ICAA - Spain) rating.", + "enum": [ + "icaa12", + "icaa13", + "icaa16", + "icaa18", + "icaa7", + "icaaApta", + "icaaUnrated", + "icaaX" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "ifcoRating": { + "description": "The video's Irish Film Classification Office (IFCO - Ireland) rating. See the IFCO website for more information.", + "enum": [ + "ifco12", + "ifco12a", + "ifco15", + "ifco15a", + "ifco16", + "ifco18", + "ifcoG", + "ifcoPg", + "ifcoUnrated" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "ilfilmRating": { + "description": "The video's rating in Israel.", + "enum": [ + "ilfilm12", + "ilfilm16", + "ilfilm18", + "ilfilmAa", + "ilfilmUnrated" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "incaaRating": { + "description": "The video's INCAA (Instituto Nacional de Cine y Artes Audiovisuales - Argentina) rating.", + "enum": [ + "incaaAtp", + "incaaC", + "incaaSam13", + "incaaSam16", + "incaaSam18", + "incaaUnrated" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "kfcbRating": { + "description": "The video's rating from the Kenya Film Classification Board.", + "enum": [ + "kfcb16plus", + "kfcbG", + "kfcbPg", + "kfcbR", + "kfcbUnrated" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "kijkwijzerRating": { + "description": "voor de Classificatie van Audiovisuele Media (Netherlands).", + "enum": [ + "kijkwijzer12", + "kijkwijzer16", + "kijkwijzer18", + "kijkwijzer6", + "kijkwijzer9", + "kijkwijzerAl", + "kijkwijzerUnrated" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "kmrbRating": { + "description": "The video's Korea Media Rating Board (영상물등급위원회) rating. The KMRB rates videos in South Korea.", + "enum": [ + "kmrb12plus", + "kmrb15plus", + "kmrbAll", + "kmrbR", + "kmrbTeenr", + "kmrbUnrated" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "lsfRating": { + "description": "The video's rating from Indonesia's Lembaga Sensor Film.", + "enum": [ + "lsf13", + "lsf17", + "lsf21", + "lsfA", + "lsfBo", + "lsfD", + "lsfR", + "lsfSu", + "lsfUnrated" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "mccaaRating": { + "description": "The video's rating from Malta's Film Age-Classification Board.", + "enum": [ + "mccaa12", + "mccaa12a", + "mccaa14", + "mccaa15", + "mccaa16", + "mccaa18", + "mccaaPg", + "mccaaU", + "mccaaUnrated" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "mccypRating": { + "description": "The video's rating from the Danish Film Institute's (Det Danske Filminstitut) Media Council for Children and Young People.", + "enum": [ + "mccyp11", + "mccyp15", + "mccyp7", + "mccypA", + "mccypUnrated" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "mcstRating": { + "description": "The video's rating system for Vietnam - MCST", + "enum": [ + "mcst0", + "mcst16plus", + "mcstC13", + "mcstC16", + "mcstC18", + "mcstGPg", + "mcstP", + "mcstUnrated" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "mdaRating": { + "description": "The video's rating from Singapore's Media Development Authority (MDA) and, specifically, it's Board of Film Censors (BFC).", + "enum": [ + "mdaG", + "mdaM18", + "mdaNc16", + "mdaPg", + "mdaPg13", + "mdaR21", + "mdaUnrated" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "medietilsynetRating": { + "description": "The video's rating from Medietilsynet, the Norwegian Media Authority.", + "enum": [ + "medietilsynet11", + "medietilsynet12", + "medietilsynet15", + "medietilsynet18", + "medietilsynet6", + "medietilsynet7", + "medietilsynet9", + "medietilsynetA", + "medietilsynetUnrated" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "mekuRating": { + "description": "The video's rating from Finland's Kansallinen Audiovisuaalinen Instituutti (National Audiovisual Institute).", + "enum": [ + "meku12", + "meku16", + "meku18", + "meku7", + "mekuS", + "mekuUnrated" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "menaMpaaRating": { + "description": "The rating system for MENA countries, a clone of MPAA. It is needed to", + "enum": [ + "menaMpaaG", + "menaMpaaPg", + "menaMpaaPg13", + "menaMpaaR", + "menaMpaaUnrated" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "mibacRating": { + "description": "The video's rating from the Ministero dei Beni e delle Attività Culturali e del Turismo (Italy).", + "enum": [ + "mibacT", + "mibacUnrated", + "mibacVap", + "mibacVm12", + "mibacVm14", + "mibacVm18" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "mocRating": { + "description": "The video's Ministerio de Cultura (Colombia) rating.", + "enum": [ + "moc12", + "moc15", + "moc18", + "moc7", + "mocBanned", + "mocE", + "mocT", + "mocUnrated", + "mocX" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "moctwRating": { + "description": "The video's rating from Taiwan's Ministry of Culture (文化部).", + "enum": [ + "moctwG", + "moctwP", + "moctwPg", + "moctwR", + "moctwR12", + "moctwR15", + "moctwUnrated" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "mpaaRating": { + "description": "The video's Motion Picture Association of America (MPAA) rating.", + "enum": [ + "mpaaG", + "mpaaNc17", + "mpaaPg", + "mpaaPg13", + "mpaaR", + "mpaaUnrated" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "mpaatRating": { + "description": "The rating system for trailer, DVD, and Ad in the US. See http://movielabs.com/md/ratings/v2.3/html/US_MPAAT_Ratings.html.", + "enum": [ + "mpaatGb", + "mpaatRb" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "mtrcbRating": { + "description": "The video's rating from the Movie and Television Review and Classification Board (Philippines).", + "enum": [ + "mtrcbG", + "mtrcbPg", + "mtrcbR13", + "mtrcbR16", + "mtrcbR18", + "mtrcbUnrated", + "mtrcbX" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "nbcRating": { + "description": "The video's rating from the Maldives National Bureau of Classification.", + "enum": [ + "nbc12plus", + "nbc15plus", + "nbc18plus", + "nbc18plusr", + "nbcG", + "nbcPg", + "nbcPu", + "nbcUnrated" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "nbcplRating": { + "description": "The video's rating in Poland.", + "enum": [ + "nbcpl18plus", + "nbcplI", + "nbcplIi", + "nbcplIii", + "nbcplIv", + "nbcplUnrated" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "nfrcRating": { + "description": "The video's rating from the Bulgarian National Film Center.", + "enum": [ + "nfrcA", + "nfrcB", + "nfrcC", + "nfrcD", + "nfrcUnrated", + "nfrcX" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "nfvcbRating": { + "description": "The video's rating from Nigeria's National Film and Video Censors Board.", + "enum": [ + "nfvcb12", + "nfvcb12a", + "nfvcb15", + "nfvcb18", + "nfvcbG", + "nfvcbPg", + "nfvcbRe", + "nfvcbUnrated" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "nkclvRating": { + "description": "The video's rating from the Nacionãlais Kino centrs (National Film Centre of Latvia).", + "enum": [ + "nkclv12plus", + "nkclv18plus", + "nkclv7plus", + "nkclvU", + "nkclvUnrated" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "oflcRating": { + "description": "The video's Office of Film and Literature Classification (OFLC - New Zealand) rating.", + "enum": [ + "oflcG", + "oflcM", + "oflcPg", + "oflcR13", + "oflcR15", + "oflcR16", + "oflcR18", + "oflcRp13", + "oflcRp16", + "oflcRp18", + "oflcUnrated" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "pefilmRating": { + "description": "The video's rating in Peru.", + "enum": [ + "pefilm14", + "pefilm18", + "pefilmPg", + "pefilmPt", + "pefilmUnrated" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "rcnofRating": { + "description": "The video's rating from the Hungarian Nemzeti Filmiroda, the Rating Committee of the National Office of Film.", + "enum": [ + "rcnofI", + "rcnofIi", + "rcnofIii", + "rcnofIv", + "rcnofUnrated", + "rcnofV", + "rcnofVi" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "resorteviolenciaRating": { + "description": "The video's rating in Venezuela.", + "enum": [ + "resorteviolenciaA", + "resorteviolenciaB", + "resorteviolenciaC", + "resorteviolenciaD", + "resorteviolenciaE", + "resorteviolenciaUnrated" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "rtcRating": { + "description": "The video's General Directorate of Radio, Television and Cinematography (Mexico) rating.", + "enum": [ + "rtcA", + "rtcAa", + "rtcB", + "rtcB15", + "rtcC", + "rtcD", + "rtcUnrated" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "rteRating": { + "description": "The video's rating from Ireland's Raidió Teilifís Éireann.", + "enum": [ + "rteCh", + "rteGa", + "rteMa", + "rtePs", + "rteUnrated" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "russiaRating": { + "description": "The video's National Film Registry of the Russian Federation (MKRF - Russia) rating.", + "enum": [ + "russia0", + "russia12", + "russia16", + "russia18", + "russia6", + "russiaUnrated" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "skfilmRating": { + "description": "The video's rating in Slovakia.", + "enum": [ + "skfilmG", + "skfilmP2", + "skfilmP5", + "skfilmP8", + "skfilmUnrated" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "smaisRating": { + "description": "The video's rating in Iceland.", + "enum": [ + "smais12", + "smais14", + "smais16", + "smais18", + "smais7", + "smaisL", + "smaisUnrated" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "smsaRating": { + "description": "The video's rating from Statens medieråd (Sweden's National Media Council).", + "enum": [ + "smsa11", + "smsa15", + "smsa7", + "smsaA", + "smsaUnrated" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "tvpgRating": { + "description": "The video's TV Parental Guidelines (TVPG) rating.", + "enum": [ + "pg14", + "tvpgG", + "tvpgMa", + "tvpgPg", + "tvpgUnrated", + "tvpgY", + "tvpgY7", + "tvpgY7Fv" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "ytRating": { + "description": "A rating that YouTube uses to identify age-restricted content.", + "enum": [ + "ytAgeRestricted" + ], + "enumDescriptions": [ + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "FanFundingEvent": { + "description": "A fanFundingEvent resource represents a fan funding event on a YouTube channel. Fan funding events occur when a user gives one-time monetary support to the channel owner.", + "id": "FanFundingEvent", + "properties": { + "etag": { + "description": "Etag of this resource.", + "type": "string" + }, + "id": { + "description": "The ID that YouTube assigns to uniquely identify the fan funding event.", + "type": "string" + }, + "kind": { + "default": "youtube#fanFundingEvent", + "description": "Identifies what kind of resource this is. Value: the fixed string \"youtube#fanFundingEvent\".", + "type": "string" + }, + "snippet": { + "$ref": "FanFundingEventSnippet", + "description": "The snippet object contains basic details about the fan funding event." + } + }, + "type": "object" + }, + "FanFundingEventListResponse": { + "id": "FanFundingEventListResponse", + "properties": { + "etag": { + "description": "Etag of this resource.", + "type": "string" + }, + "eventId": { + "description": "Serialized EventId of the request which produced this response.", + "type": "string" + }, + "items": { + "description": "A list of fan funding events that match the request criteria.", + "items": { + "$ref": "FanFundingEvent" + }, + "type": "array" + }, + "kind": { + "default": "youtube#fanFundingEventListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"youtube#fanFundingEventListResponse\".", + "type": "string" + }, + "nextPageToken": { + "description": "The token that can be used as the value of the pageToken parameter to retrieve the next page in the result set.", + "type": "string" + }, + "pageInfo": { + "$ref": "PageInfo" + }, + "tokenPagination": { + "$ref": "TokenPagination" + }, + "visitorId": { + "description": "The visitorId identifies the visitor.", + "type": "string" + } + }, + "type": "object" + }, + "FanFundingEventSnippet": { + "id": "FanFundingEventSnippet", + "properties": { + "amountMicros": { + "description": "The amount of funding in micros of fund_currency. e.g., 1 is represented", + "format": "uint64", + "type": "string" + }, + "channelId": { + "description": "Channel id where the funding event occurred.", + "type": "string" + }, + "commentText": { + "description": "The text contents of the comment left by the user.", + "type": "string" + }, + "createdAt": { + "description": "The date and time when the funding occurred. The value is specified in ISO 8601 (YYYY-MM-DDThh:mm:ss.sZ) format.", + "format": "date-time", + "type": "string" + }, + "currency": { + "description": "The currency in which the fund was made. ISO 4217.", + "type": "string" + }, + "displayString": { + "description": "A rendered string that displays the fund amount and currency (e.g., \"$1.00\"). The string is rendered for the given language.", + "type": "string" + }, + "supporterDetails": { + "$ref": "ChannelProfileDetails", + "description": "Details about the supporter. Only filled if the event was made public by the user." + } + }, + "type": "object" + }, + "GeoPoint": { + "description": "Geographical coordinates of a point, in WGS84.", + "id": "GeoPoint", + "properties": { + "altitude": { + "description": "Altitude above the reference ellipsoid, in meters.", + "format": "double", + "type": "number" + }, + "latitude": { + "description": "Latitude in degrees.", + "format": "double", + "type": "number" + }, + "longitude": { + "description": "Longitude in degrees.", + "format": "double", + "type": "number" + } + }, + "type": "object" + }, + "GuideCategory": { + "description": "A guideCategory resource identifies a category that YouTube algorithmically assigns based on a channel's content or other indicators, such as the channel's popularity. The list is similar to video categories, with the difference being that a video's uploader can assign a video category but only YouTube can assign a channel category.", + "id": "GuideCategory", + "properties": { + "etag": { + "description": "Etag of this resource.", + "type": "string" + }, + "id": { + "description": "The ID that YouTube uses to uniquely identify the guide category.", + "type": "string" + }, + "kind": { + "default": "youtube#guideCategory", + "description": "Identifies what kind of resource this is. Value: the fixed string \"youtube#guideCategory\".", + "type": "string" + }, + "snippet": { + "$ref": "GuideCategorySnippet", + "description": "The snippet object contains basic details about the category, such as its title." + } + }, + "type": "object" + }, + "GuideCategoryListResponse": { + "id": "GuideCategoryListResponse", + "properties": { + "etag": { + "description": "Etag of this resource.", + "type": "string" + }, + "eventId": { + "description": "Serialized EventId of the request which produced this response.", + "type": "string" + }, + "items": { + "description": "A list of categories that can be associated with YouTube channels. In this map, the category ID is the map key, and its value is the corresponding guideCategory resource.", + "items": { + "$ref": "GuideCategory" + }, + "type": "array" + }, + "kind": { + "default": "youtube#guideCategoryListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"youtube#guideCategoryListResponse\".", + "type": "string" + }, + "nextPageToken": { + "description": "The token that can be used as the value of the pageToken parameter to retrieve the next page in the result set.", + "type": "string" + }, + "pageInfo": { + "$ref": "PageInfo" + }, + "prevPageToken": { + "description": "The token that can be used as the value of the pageToken parameter to retrieve the previous page in the result set.", + "type": "string" + }, + "tokenPagination": { + "$ref": "TokenPagination" + }, + "visitorId": { + "description": "The visitorId identifies the visitor.", + "type": "string" + } + }, + "type": "object" + }, + "GuideCategorySnippet": { + "description": "Basic details about a guide category.", + "id": "GuideCategorySnippet", + "properties": { + "channelId": { + "default": "UCBR8-60-B28hp2BmDPdntcQ", + "type": "string" + }, + "title": { + "description": "Description of the guide category.", + "type": "string" + } + }, + "type": "object" + }, + "I18nLanguage": { + "description": "An i18nLanguage resource identifies a UI language currently supported by YouTube.", + "id": "I18nLanguage", + "properties": { + "etag": { + "description": "Etag of this resource.", + "type": "string" + }, + "id": { + "description": "The ID that YouTube uses to uniquely identify the i18n language.", + "type": "string" + }, + "kind": { + "default": "youtube#i18nLanguage", + "description": "Identifies what kind of resource this is. Value: the fixed string \"youtube#i18nLanguage\".", + "type": "string" + }, + "snippet": { + "$ref": "I18nLanguageSnippet", + "description": "The snippet object contains basic details about the i18n language, such as language code and human-readable name." + } + }, + "type": "object" + }, + "I18nLanguageListResponse": { + "id": "I18nLanguageListResponse", + "properties": { + "etag": { + "description": "Etag of this resource.", + "type": "string" + }, + "eventId": { + "description": "Serialized EventId of the request which produced this response.", + "type": "string" + }, + "items": { + "description": "A list of supported i18n languages. In this map, the i18n language ID is the map key, and its value is the corresponding i18nLanguage resource.", + "items": { + "$ref": "I18nLanguage" + }, + "type": "array" + }, + "kind": { + "default": "youtube#i18nLanguageListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"youtube#i18nLanguageListResponse\".", + "type": "string" + }, + "visitorId": { + "description": "The visitorId identifies the visitor.", + "type": "string" + } + }, + "type": "object" + }, + "I18nLanguageSnippet": { + "description": "Basic details about an i18n language, such as language code and human-readable name.", + "id": "I18nLanguageSnippet", + "properties": { + "hl": { + "description": "A short BCP-47 code that uniquely identifies a language.", + "type": "string" + }, + "name": { + "description": "The human-readable name of the language in the language itself.", + "type": "string" + } + }, + "type": "object" + }, + "I18nRegion": { + "description": "A i18nRegion resource identifies a region where YouTube is available.", + "id": "I18nRegion", + "properties": { + "etag": { + "description": "Etag of this resource.", + "type": "string" + }, + "id": { + "description": "The ID that YouTube uses to uniquely identify the i18n region.", + "type": "string" + }, + "kind": { + "default": "youtube#i18nRegion", + "description": "Identifies what kind of resource this is. Value: the fixed string \"youtube#i18nRegion\".", + "type": "string" + }, + "snippet": { + "$ref": "I18nRegionSnippet", + "description": "The snippet object contains basic details about the i18n region, such as region code and human-readable name." + } + }, + "type": "object" + }, + "I18nRegionListResponse": { + "id": "I18nRegionListResponse", + "properties": { + "etag": { + "description": "Etag of this resource.", + "type": "string" + }, + "eventId": { + "description": "Serialized EventId of the request which produced this response.", + "type": "string" + }, + "items": { + "description": "A list of regions where YouTube is available. In this map, the i18n region ID is the map key, and its value is the corresponding i18nRegion resource.", + "items": { + "$ref": "I18nRegion" + }, + "type": "array" + }, + "kind": { + "default": "youtube#i18nRegionListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"youtube#i18nRegionListResponse\".", + "type": "string" + }, + "visitorId": { + "description": "The visitorId identifies the visitor.", + "type": "string" + } + }, + "type": "object" + }, + "I18nRegionSnippet": { + "description": "Basic details about an i18n region, such as region code and human-readable name.", + "id": "I18nRegionSnippet", + "properties": { + "gl": { + "description": "The region code as a 2-letter ISO country code.", + "type": "string" + }, + "name": { + "description": "The human-readable name of the region.", + "type": "string" + } + }, + "type": "object" + }, + "ImageSettings": { + "description": "Branding properties for images associated with the channel.", + "id": "ImageSettings", + "properties": { + "backgroundImageUrl": { + "$ref": "LocalizedProperty", + "description": "The URL for the background image shown on the video watch page. The image should be 1200px by 615px, with a maximum file size of 128k." + }, + "bannerExternalUrl": { + "description": "This is used only in update requests; if it's set, we use this URL to generate all of the above banner URLs.", + "type": "string" + }, + "bannerImageUrl": { + "description": "Banner image. Desktop size (1060x175).", + "type": "string" + }, + "bannerMobileExtraHdImageUrl": { + "description": "Banner image. Mobile size high resolution (1440x395).", + "type": "string" + }, + "bannerMobileHdImageUrl": { + "description": "Banner image. Mobile size high resolution (1280x360).", + "type": "string" + }, + "bannerMobileImageUrl": { + "description": "Banner image. Mobile size (640x175).", + "type": "string" + }, + "bannerMobileLowImageUrl": { + "description": "Banner image. Mobile size low resolution (320x88).", + "type": "string" + }, + "bannerMobileMediumHdImageUrl": { + "description": "Banner image. Mobile size medium/high resolution (960x263).", + "type": "string" + }, + "bannerTabletExtraHdImageUrl": { + "description": "Banner image. Tablet size extra high resolution (2560x424).", + "type": "string" + }, + "bannerTabletHdImageUrl": { + "description": "Banner image. Tablet size high resolution (2276x377).", + "type": "string" + }, + "bannerTabletImageUrl": { + "description": "Banner image. Tablet size (1707x283).", + "type": "string" + }, + "bannerTabletLowImageUrl": { + "description": "Banner image. Tablet size low resolution (1138x188).", + "type": "string" + }, + "bannerTvHighImageUrl": { + "description": "Banner image. TV size high resolution (1920x1080).", + "type": "string" + }, + "bannerTvImageUrl": { + "description": "Banner image. TV size extra high resolution (2120x1192).", + "type": "string" + }, + "bannerTvLowImageUrl": { + "description": "Banner image. TV size low resolution (854x480).", + "type": "string" + }, + "bannerTvMediumImageUrl": { + "description": "Banner image. TV size medium resolution (1280x720).", + "type": "string" + }, + "largeBrandedBannerImageImapScript": { + "$ref": "LocalizedProperty", + "description": "The image map script for the large banner image." + }, + "largeBrandedBannerImageUrl": { + "$ref": "LocalizedProperty", + "description": "The URL for the 854px by 70px image that appears below the video player in the expanded video view of the video watch page." + }, + "smallBrandedBannerImageImapScript": { + "$ref": "LocalizedProperty", + "description": "The image map script for the small banner image." + }, + "smallBrandedBannerImageUrl": { + "$ref": "LocalizedProperty", + "description": "The URL for the 640px by 70px banner image that appears below the video player in the default view of the video watch page." + }, + "trackingImageUrl": { + "description": "The URL for a 1px by 1px tracking pixel that can be used to collect statistics for views of the channel or video pages.", + "type": "string" + }, + "watchIconImageUrl": { + "description": "The URL for the image that appears above the top-left corner of the video player. This is a 25-pixel-high image with a flexible width that cannot exceed 170 pixels.", + "type": "string" + } + }, + "type": "object" + }, + "IngestionInfo": { + "description": "Describes information necessary for ingesting an RTMP or an HTTP stream.", + "id": "IngestionInfo", + "properties": { + "backupIngestionAddress": { + "description": "The backup ingestion URL that you should use to stream video to YouTube. You have the option of simultaneously streaming the content that you are sending to the ingestionAddress to this URL.", + "type": "string" + }, + "ingestionAddress": { + "description": "The primary ingestion URL that you should use to stream video to YouTube. You must stream video to this URL.\n\nDepending on which application or tool you use to encode your video stream, you may need to enter the stream URL and stream name separately or you may need to concatenate them in the following format:\n\nSTREAM_URL/STREAM_NAME", + "type": "string" + }, + "streamName": { + "description": "The HTTP or RTMP stream name that YouTube assigns to the video stream.", + "type": "string" + } + }, + "type": "object" + }, + "InvideoBranding": { + "id": "InvideoBranding", + "properties": { + "imageBytes": { + "format": "byte", + "type": "string" + }, + "imageUrl": { + "type": "string" + }, + "position": { + "$ref": "InvideoPosition" + }, + "targetChannelId": { + "type": "string" + }, + "timing": { + "$ref": "InvideoTiming" + } + }, + "type": "object" + }, + "InvideoPosition": { + "description": "Describes the spatial position of a visual widget inside a video. It is a union of various position types, out of which only will be set one.", + "id": "InvideoPosition", + "properties": { + "cornerPosition": { + "description": "Describes in which corner of the video the visual widget will appear.", + "enum": [ + "bottomLeft", + "bottomRight", + "topLeft", + "topRight" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ], + "type": "string" + }, + "type": { + "description": "Defines the position type.", + "enum": [ + "corner" + ], + "enumDescriptions": [ + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "InvideoPromotion": { + "description": "Describes an invideo promotion campaign consisting of multiple promoted items. A campaign belongs to a single channel_id.", + "id": "InvideoPromotion", + "properties": { + "defaultTiming": { + "$ref": "InvideoTiming", + "description": "The default temporal position within the video where the promoted item will be displayed. Can be overriden by more specific timing in the item." + }, + "items": { + "description": "List of promoted items in decreasing priority.", + "items": { + "$ref": "PromotedItem" + }, + "type": "array" + }, + "position": { + "$ref": "InvideoPosition", + "description": "The spatial position within the video where the promoted item will be displayed." + }, + "useSmartTiming": { + "description": "Indicates whether the channel's promotional campaign uses \"smart timing.\" This feature attempts to show promotions at a point in the video when they are more likely to be clicked and less likely to disrupt the viewing experience. This feature also picks up a single promotion to show on each video.", + "type": "boolean" + } + }, + "type": "object" + }, + "InvideoTiming": { + "description": "Describes a temporal position of a visual widget inside a video.", + "id": "InvideoTiming", + "properties": { + "durationMs": { + "description": "Defines the duration in milliseconds for which the promotion should be displayed. If missing, the client should use the default.", + "format": "uint64", + "type": "string" + }, + "offsetMs": { + "description": "Defines the time at which the promotion will appear. Depending on the value of type the value of the offsetMs field will represent a time offset from the start or from the end of the video, expressed in milliseconds.", + "format": "uint64", + "type": "string" + }, + "type": { + "description": "Describes a timing type. If the value is offsetFromStart, then the offsetMs field represents an offset from the start of the video. If the value is offsetFromEnd, then the offsetMs field represents an offset from the end of the video.", + "enum": [ + "offsetFromEnd", + "offsetFromStart" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "LanguageTag": { + "id": "LanguageTag", + "properties": { + "value": { + "type": "string" + } + }, + "type": "object" + }, + "LiveBroadcast": { + "description": "A liveBroadcast resource represents an event that will be streamed, via live video, on YouTube.", + "id": "LiveBroadcast", + "properties": { + "contentDetails": { + "$ref": "LiveBroadcastContentDetails", + "description": "The contentDetails object contains information about the event's video content, such as whether the content can be shown in an embedded video player or if it will be archived and therefore available for viewing after the event has concluded." + }, + "etag": { + "description": "Etag of this resource.", + "type": "string" + }, + "id": { + "annotations": { + "required": [ + "youtube.liveBroadcasts.update" + ] + }, + "description": "The ID that YouTube assigns to uniquely identify the broadcast.", + "type": "string" + }, + "kind": { + "default": "youtube#liveBroadcast", + "description": "Identifies what kind of resource this is. Value: the fixed string \"youtube#liveBroadcast\".", + "type": "string" + }, + "snippet": { + "$ref": "LiveBroadcastSnippet", + "description": "The snippet object contains basic details about the event, including its title, description, start time, and end time." + }, + "statistics": { + "$ref": "LiveBroadcastStatistics", + "description": "The statistics object contains info about the event's current stats. These include concurrent viewers and total chat count. Statistics can change (in either direction) during the lifetime of an event. Statistics are only returned while the event is live." + }, + "status": { + "$ref": "LiveBroadcastStatus", + "description": "The status object contains information about the event's status." + } + }, + "type": "object" + }, + "LiveBroadcastContentDetails": { + "description": "Detailed settings of a broadcast.", + "id": "LiveBroadcastContentDetails", + "properties": { + "boundStreamId": { + "description": "This value uniquely identifies the live stream bound to the broadcast.", + "type": "string" + }, + "boundStreamLastUpdateTimeMs": { + "description": "The date and time that the live stream referenced by boundStreamId was last updated.", + "format": "date-time", + "type": "string" + }, + "closedCaptionsType": { + "enum": [ + "closedCaptionsDisabled", + "closedCaptionsEmbedded", + "closedCaptionsHttpPost" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, + "enableAutoStart": { + "description": "This setting indicates whether auto start is enabled for this broadcast.", + "type": "boolean" + }, + "enableClosedCaptions": { + "description": "This setting indicates whether HTTP POST closed captioning is enabled for this broadcast. The ingestion URL of the closed captions is returned through the liveStreams API. This is mutually exclusive with using the closed_captions_type property, and is equivalent to setting closed_captions_type to CLOSED_CAPTIONS_HTTP_POST.", + "type": "boolean" + }, + "enableContentEncryption": { + "annotations": { + "required": [ + "youtube.liveBroadcasts.update" + ] + }, + "description": "This setting indicates whether YouTube should enable content encryption for the broadcast.", + "type": "boolean" + }, + "enableDvr": { + "annotations": { + "required": [ + "youtube.liveBroadcasts.update" + ] + }, + "description": "This setting determines whether viewers can access DVR controls while watching the video. DVR controls enable the viewer to control the video playback experience by pausing, rewinding, or fast forwarding content. The default value for this property is true.\n\n\n\nImportant: You must set the value to true and also set the enableArchive property's value to true if you want to make playback available immediately after the broadcast ends.", + "type": "boolean" + }, + "enableEmbed": { + "annotations": { + "required": [ + "youtube.liveBroadcasts.update" + ] + }, + "description": "This setting indicates whether the broadcast video can be played in an embedded player. If you choose to archive the video (using the enableArchive property), this setting will also apply to the archived video.", + "type": "boolean" + }, + "enableLowLatency": { + "description": "Indicates whether this broadcast has low latency enabled.", + "type": "boolean" + }, + "latencyPreference": { + "description": "If both this and enable_low_latency are set, they must match. LATENCY_NORMAL should match enable_low_latency=false LATENCY_LOW should match enable_low_latency=true LATENCY_ULTRA_LOW should have enable_low_latency omitted.", + "enum": [ + "low", + "normal", + "ultraLow" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, + "mesh": { + "format": "byte", + "type": "string" + }, + "monitorStream": { + "$ref": "MonitorStreamInfo", + "description": "The monitorStream object contains information about the monitor stream, which the broadcaster can use to review the event content before the broadcast stream is shown publicly." + }, + "projection": { + "description": "The projection format of this broadcast. This defaults to rectangular.", + "enum": [ + "360", + "mesh", + "rectangular" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, + "recordFromStart": { + "annotations": { + "required": [ + "youtube.liveBroadcasts.update" + ] + }, + "description": "Automatically start recording after the event goes live. The default value for this property is true.\n\n\n\nImportant: You must also set the enableDvr property's value to true if you want the playback to be available immediately after the broadcast ends. If you set this property's value to true but do not also set the enableDvr property to true, there may be a delay of around one day before the archived video will be available for playback.", + "type": "boolean" + }, + "startWithSlate": { + "annotations": { + "required": [ + "youtube.liveBroadcasts.update" + ] + }, + "description": "This setting indicates whether the broadcast should automatically begin with an in-stream slate when you update the broadcast's status to live. After updating the status, you then need to send a liveCuepoints.insert request that sets the cuepoint's eventState to end to remove the in-stream slate and make your broadcast stream visible to viewers.", + "type": "boolean" + }, + "stereoLayout": { + "enum": [ + "left_right", + "mono", + "top_bottom" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "LiveBroadcastListResponse": { + "id": "LiveBroadcastListResponse", + "properties": { + "etag": { + "description": "Etag of this resource.", + "type": "string" + }, + "eventId": { + "description": "Serialized EventId of the request which produced this response.", + "type": "string" + }, + "items": { + "description": "A list of broadcasts that match the request criteria.", + "items": { + "$ref": "LiveBroadcast" + }, + "type": "array" + }, + "kind": { + "default": "youtube#liveBroadcastListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"youtube#liveBroadcastListResponse\".", + "type": "string" + }, + "nextPageToken": { + "description": "The token that can be used as the value of the pageToken parameter to retrieve the next page in the result set.", + "type": "string" + }, + "pageInfo": { + "$ref": "PageInfo" + }, + "prevPageToken": { + "description": "The token that can be used as the value of the pageToken parameter to retrieve the previous page in the result set.", + "type": "string" + }, + "tokenPagination": { + "$ref": "TokenPagination" + }, + "visitorId": { + "description": "The visitorId identifies the visitor.", + "type": "string" + } + }, + "type": "object" + }, + "LiveBroadcastSnippet": { + "id": "LiveBroadcastSnippet", + "properties": { + "actualEndTime": { + "description": "The date and time that the broadcast actually ended. This information is only available once the broadcast's state is complete. The value is specified in ISO 8601 (YYYY-MM-DDThh:mm:ss.sZ) format.", + "format": "date-time", + "type": "string" + }, + "actualStartTime": { + "description": "The date and time that the broadcast actually started. This information is only available once the broadcast's state is live. The value is specified in ISO 8601 (YYYY-MM-DDThh:mm:ss.sZ) format.", + "format": "date-time", + "type": "string" + }, + "channelId": { + "description": "The ID that YouTube uses to uniquely identify the channel that is publishing the broadcast.", + "type": "string" + }, + "description": { + "description": "The broadcast's description. As with the title, you can set this field by modifying the broadcast resource or by setting the description field of the corresponding video resource.", + "type": "string" + }, + "isDefaultBroadcast": { + "type": "boolean" + }, + "liveChatId": { + "description": "The id of the live chat for this broadcast.", + "type": "string" + }, + "publishedAt": { + "description": "The date and time that the broadcast was added to YouTube's live broadcast schedule. The value is specified in ISO 8601 (YYYY-MM-DDThh:mm:ss.sZ) format.", + "format": "date-time", + "type": "string" + }, + "scheduledEndTime": { + "description": "The date and time that the broadcast is scheduled to end. The value is specified in ISO 8601 (YYYY-MM-DDThh:mm:ss.sZ) format.", + "format": "date-time", + "type": "string" + }, + "scheduledStartTime": { + "annotations": { + "required": [ + "youtube.liveBroadcasts.insert", + "youtube.liveBroadcasts.update" + ] + }, + "description": "The date and time that the broadcast is scheduled to start. The value is specified in ISO 8601 (YYYY-MM-DDThh:mm:ss.sZ) format.", + "format": "date-time", + "type": "string" + }, + "thumbnails": { + "$ref": "ThumbnailDetails", + "description": "A map of thumbnail images associated with the broadcast. For each nested object in this object, the key is the name of the thumbnail image, and the value is an object that contains other information about the thumbnail." + }, + "title": { + "annotations": { + "required": [ + "youtube.liveBroadcasts.insert", + "youtube.liveBroadcasts.update" + ] + }, + "description": "The broadcast's title. Note that the broadcast represents exactly one YouTube video. You can set this field by modifying the broadcast resource or by setting the title field of the corresponding video resource.", + "type": "string" + } + }, + "type": "object" + }, + "LiveBroadcastStatistics": { + "description": "Statistics about the live broadcast. These represent a snapshot of the values at the time of the request. Statistics are only returned for live broadcasts.", + "id": "LiveBroadcastStatistics", + "properties": { + "concurrentViewers": { + "description": "The number of viewers currently watching the broadcast. The property and its value will be present if the broadcast has current viewers and the broadcast owner has not hidden the viewcount for the video. Note that YouTube stops tracking the number of concurrent viewers for a broadcast when the broadcast ends. So, this property would not identify the number of viewers watching an archived video of a live broadcast that already ended.", + "format": "uint64", + "type": "string" + }, + "totalChatCount": { + "description": "The total number of live chat messages currently on the broadcast. The property and its value will be present if the broadcast is public, has the live chat feature enabled, and has at least one message. Note that this field will not be filled after the broadcast ends. So this property would not identify the number of chat messages for an archived video of a completed live broadcast.", + "format": "uint64", + "type": "string" + } + }, + "type": "object" + }, + "LiveBroadcastStatus": { + "id": "LiveBroadcastStatus", + "properties": { + "lifeCycleStatus": { + "description": "The broadcast's status. The status can be updated using the API's liveBroadcasts.transition method.", + "enum": [ + "abandoned", + "complete", + "completeStarting", + "created", + "live", + "liveStarting", + "ready", + "reclaimed", + "revoked", + "testStarting", + "testing" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "liveBroadcastPriority": { + "description": "Priority of the live broadcast event (internal state).", + "enum": [ + "high", + "low", + "normal" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, + "privacyStatus": { + "annotations": { + "required": [ + "youtube.liveBroadcasts.insert", + "youtube.liveBroadcasts.update" + ] + }, + "description": "The broadcast's privacy status. Note that the broadcast represents exactly one YouTube video, so the privacy settings are identical to those supported for videos. In addition, you can set this field by modifying the broadcast resource or by setting the privacyStatus field of the corresponding video resource.", + "enum": [ + "private", + "public", + "unlisted" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, + "recordingStatus": { + "description": "The broadcast's recording status.", + "enum": [ + "notRecording", + "recorded", + "recording" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "LiveChatBan": { + "description": "A liveChatBan resource represents a ban for a YouTube live chat.", + "id": "LiveChatBan", + "properties": { + "etag": { + "description": "Etag of this resource.", + "type": "string" + }, + "id": { + "description": "The ID that YouTube assigns to uniquely identify the ban.", + "type": "string" + }, + "kind": { + "default": "youtube#liveChatBan", + "description": "Identifies what kind of resource this is. Value: the fixed string \"youtube#liveChatBan\".", + "type": "string" + }, + "snippet": { + "$ref": "LiveChatBanSnippet", + "description": "The snippet object contains basic details about the ban." + } + }, + "type": "object" + }, + "LiveChatBanSnippet": { + "id": "LiveChatBanSnippet", + "properties": { + "banDurationSeconds": { + "description": "The duration of a ban, only filled if the ban has type TEMPORARY.", + "format": "uint64", + "type": "string" + }, + "bannedUserDetails": { + "$ref": "ChannelProfileDetails" + }, + "liveChatId": { + "description": "The chat this ban is pertinent to.", + "type": "string" + }, + "type": { + "description": "The type of ban.", + "enum": [ + "permanent", + "temporary" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "LiveChatFanFundingEventDetails": { + "id": "LiveChatFanFundingEventDetails", + "properties": { + "amountDisplayString": { + "description": "A rendered string that displays the fund amount and currency to the user.", + "type": "string" + }, + "amountMicros": { + "description": "The amount of the fund.", + "format": "uint64", + "type": "string" + }, + "currency": { + "description": "The currency in which the fund was made.", + "type": "string" + }, + "userComment": { + "description": "The comment added by the user to this fan funding event.", + "type": "string" + } + }, + "type": "object" + }, + "LiveChatMessage": { + "description": "A liveChatMessage resource represents a chat message in a YouTube Live Chat.", + "id": "LiveChatMessage", + "properties": { + "authorDetails": { + "$ref": "LiveChatMessageAuthorDetails", + "description": "The authorDetails object contains basic details about the user that posted this message." + }, + "etag": { + "description": "Etag of this resource.", + "type": "string" + }, + "id": { + "description": "The ID that YouTube assigns to uniquely identify the message.", + "type": "string" + }, + "kind": { + "default": "youtube#liveChatMessage", + "description": "Identifies what kind of resource this is. Value: the fixed string \"youtube#liveChatMessage\".", + "type": "string" + }, + "snippet": { + "$ref": "LiveChatMessageSnippet", + "description": "The snippet object contains basic details about the message." + } + }, + "type": "object" + }, + "LiveChatMessageAuthorDetails": { + "id": "LiveChatMessageAuthorDetails", + "properties": { + "channelId": { + "description": "The YouTube channel ID.", + "type": "string" + }, + "channelUrl": { + "description": "The channel's URL.", + "type": "string" + }, + "displayName": { + "description": "The channel's display name.", + "type": "string" + }, + "isChatModerator": { + "description": "Whether the author is a moderator of the live chat.", + "type": "boolean" + }, + "isChatOwner": { + "description": "Whether the author is the owner of the live chat.", + "type": "boolean" + }, + "isChatSponsor": { + "description": "Whether the author is a sponsor of the live chat.", + "type": "boolean" + }, + "isVerified": { + "description": "Whether the author's identity has been verified by YouTube.", + "type": "boolean" + }, + "profileImageUrl": { + "description": "The channels's avatar URL.", + "type": "string" + } + }, + "type": "object" + }, + "LiveChatMessageDeletedDetails": { + "id": "LiveChatMessageDeletedDetails", + "properties": { + "deletedMessageId": { + "type": "string" + } + }, + "type": "object" + }, + "LiveChatMessageListResponse": { + "id": "LiveChatMessageListResponse", + "properties": { + "etag": { + "description": "Etag of this resource.", + "type": "string" + }, + "eventId": { + "description": "Serialized EventId of the request which produced this response.", + "type": "string" + }, + "items": { + "description": "A list of live chat messages.", + "items": { + "$ref": "LiveChatMessage" + }, + "type": "array" + }, + "kind": { + "default": "youtube#liveChatMessageListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"youtube#liveChatMessageListResponse\".", + "type": "string" + }, + "nextPageToken": { + "description": "The token that can be used as the value of the pageToken parameter to retrieve the next page in the result set.", + "type": "string" + }, + "offlineAt": { + "description": "The date and time when the underlying stream went offline. The value is specified in ISO 8601 (YYYY-MM-DDThh:mm:ss.sZ) format.", + "format": "date-time", + "type": "string" + }, + "pageInfo": { + "$ref": "PageInfo" + }, + "pollingIntervalMillis": { + "description": "The amount of time the client should wait before polling again.", + "format": "uint32", + "type": "integer" + }, + "tokenPagination": { + "$ref": "TokenPagination" + }, + "visitorId": { + "description": "The visitorId identifies the visitor.", + "type": "string" + } + }, + "type": "object" + }, + "LiveChatMessageRetractedDetails": { + "id": "LiveChatMessageRetractedDetails", + "properties": { + "retractedMessageId": { + "type": "string" + } + }, + "type": "object" + }, + "LiveChatMessageSnippet": { + "id": "LiveChatMessageSnippet", + "properties": { + "authorChannelId": { + "description": "The ID of the user that authored this message, this field is not always filled. textMessageEvent - the user that wrote the message fanFundingEvent - the user that funded the broadcast newSponsorEvent - the user that just became a sponsor messageDeletedEvent - the moderator that took the action messageRetractedEvent - the author that retracted their message userBannedEvent - the moderator that took the action superChatEvent - the user that made the purchase", + "type": "string" + }, + "displayMessage": { + "description": "Contains a string that can be displayed to the user. If this field is not present the message is silent, at the moment only messages of type TOMBSTONE and CHAT_ENDED_EVENT are silent.", + "type": "string" + }, + "fanFundingEventDetails": { + "$ref": "LiveChatFanFundingEventDetails", + "description": "Details about the funding event, this is only set if the type is 'fanFundingEvent'." + }, + "hasDisplayContent": { + "description": "Whether the message has display content that should be displayed to users.", + "type": "boolean" + }, + "liveChatId": { + "type": "string" + }, + "messageDeletedDetails": { + "$ref": "LiveChatMessageDeletedDetails" + }, + "messageRetractedDetails": { + "$ref": "LiveChatMessageRetractedDetails" + }, + "pollClosedDetails": { + "$ref": "LiveChatPollClosedDetails" + }, + "pollEditedDetails": { + "$ref": "LiveChatPollEditedDetails" + }, + "pollOpenedDetails": { + "$ref": "LiveChatPollOpenedDetails" + }, + "pollVotedDetails": { + "$ref": "LiveChatPollVotedDetails" + }, + "publishedAt": { + "description": "The date and time when the message was orignally published. The value is specified in ISO 8601 (YYYY-MM-DDThh:mm:ss.sZ) format.", + "format": "date-time", + "type": "string" + }, + "superChatDetails": { + "$ref": "LiveChatSuperChatDetails", + "description": "Details about the Super Chat event, this is only set if the type is 'superChatEvent'." + }, + "textMessageDetails": { + "$ref": "LiveChatTextMessageDetails", + "description": "Details about the text message, this is only set if the type is 'textMessageEvent'." + }, + "type": { + "description": "The type of message, this will always be present, it determines the contents of the message as well as which fields will be present.", + "enum": [ + "chatEndedEvent", + "fanFundingEvent", + "messageDeletedEvent", + "messageRetractedEvent", + "newSponsorEvent", + "pollClosedEvent", + "pollEditedEvent", + "pollOpenedEvent", + "pollVotedEvent", + "sponsorOnlyModeEndedEvent", + "sponsorOnlyModeStartedEvent", + "superChatEvent", + "textMessageEvent", + "tombstone", + "userBannedEvent" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "userBannedDetails": { + "$ref": "LiveChatUserBannedMessageDetails" + } + }, + "type": "object" + }, + "LiveChatModerator": { + "description": "A liveChatModerator resource represents a moderator for a YouTube live chat. A chat moderator has the ability to ban/unban users from a chat, remove message, etc.", + "id": "LiveChatModerator", + "properties": { + "etag": { + "description": "Etag of this resource.", + "type": "string" + }, + "id": { + "description": "The ID that YouTube assigns to uniquely identify the moderator.", + "type": "string" + }, + "kind": { + "default": "youtube#liveChatModerator", + "description": "Identifies what kind of resource this is. Value: the fixed string \"youtube#liveChatModerator\".", + "type": "string" + }, + "snippet": { + "$ref": "LiveChatModeratorSnippet", + "description": "The snippet object contains basic details about the moderator." + } + }, + "type": "object" + }, + "LiveChatModeratorListResponse": { + "id": "LiveChatModeratorListResponse", + "properties": { + "etag": { + "description": "Etag of this resource.", + "type": "string" + }, + "eventId": { + "description": "Serialized EventId of the request which produced this response.", + "type": "string" + }, + "items": { + "description": "A list of moderators that match the request criteria.", + "items": { + "$ref": "LiveChatModerator" + }, + "type": "array" + }, + "kind": { + "default": "youtube#liveChatModeratorListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"youtube#liveChatModeratorListResponse\".", + "type": "string" + }, + "nextPageToken": { + "description": "The token that can be used as the value of the pageToken parameter to retrieve the next page in the result set.", + "type": "string" + }, + "pageInfo": { + "$ref": "PageInfo" + }, + "prevPageToken": { + "description": "The token that can be used as the value of the pageToken parameter to retrieve the previous page in the result set.", + "type": "string" + }, + "tokenPagination": { + "$ref": "TokenPagination" + }, + "visitorId": { + "description": "The visitorId identifies the visitor.", + "type": "string" + } + }, + "type": "object" + }, + "LiveChatModeratorSnippet": { + "id": "LiveChatModeratorSnippet", + "properties": { + "liveChatId": { + "description": "The ID of the live chat this moderator can act on.", + "type": "string" + }, + "moderatorDetails": { + "$ref": "ChannelProfileDetails", + "description": "Details about the moderator." + } + }, + "type": "object" + }, + "LiveChatPollClosedDetails": { + "id": "LiveChatPollClosedDetails", + "properties": { + "pollId": { + "description": "The id of the poll that was closed.", + "type": "string" + } + }, + "type": "object" + }, + "LiveChatPollEditedDetails": { + "id": "LiveChatPollEditedDetails", + "properties": { + "id": { + "type": "string" + }, + "items": { + "items": { + "$ref": "LiveChatPollItem" + }, + "type": "array" + }, + "prompt": { + "type": "string" + } + }, + "type": "object" + }, + "LiveChatPollItem": { + "id": "LiveChatPollItem", + "properties": { + "description": { + "description": "Plain text description of the item.", + "type": "string" + }, + "itemId": { + "type": "string" + } + }, + "type": "object" + }, + "LiveChatPollOpenedDetails": { + "id": "LiveChatPollOpenedDetails", + "properties": { + "id": { + "type": "string" + }, + "items": { + "items": { + "$ref": "LiveChatPollItem" + }, + "type": "array" + }, + "prompt": { + "type": "string" + } + }, + "type": "object" + }, + "LiveChatPollVotedDetails": { + "id": "LiveChatPollVotedDetails", + "properties": { + "itemId": { + "description": "The poll item the user chose.", + "type": "string" + }, + "pollId": { + "description": "The poll the user voted on.", + "type": "string" + } + }, + "type": "object" + }, + "LiveChatSuperChatDetails": { + "id": "LiveChatSuperChatDetails", + "properties": { + "amountDisplayString": { + "description": "A rendered string that displays the fund amount and currency to the user.", + "type": "string" + }, + "amountMicros": { + "description": "The amount purchased by the user, in micros (1,750,000 micros = 1.75).", + "format": "uint64", + "type": "string" + }, + "currency": { + "description": "The currency in which the purchase was made.", + "type": "string" + }, + "tier": { + "description": "The tier in which the amount belongs to. Lower amounts belong to lower tiers. Starts at 1.", + "format": "uint32", + "type": "integer" + }, + "userComment": { + "description": "The comment added by the user to this Super Chat event.", + "type": "string" + } + }, + "type": "object" + }, + "LiveChatTextMessageDetails": { + "id": "LiveChatTextMessageDetails", + "properties": { + "messageText": { + "description": "The user's message.", + "type": "string" + } + }, + "type": "object" + }, + "LiveChatUserBannedMessageDetails": { + "id": "LiveChatUserBannedMessageDetails", + "properties": { + "banDurationSeconds": { + "description": "The duration of the ban. This property is only present if the banType is temporary.", + "format": "uint64", + "type": "string" + }, + "banType": { + "description": "The type of ban.", + "enum": [ + "permanent", + "temporary" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "bannedUserDetails": { + "$ref": "ChannelProfileDetails", + "description": "The details of the user that was banned." + } + }, + "type": "object" + }, + "LiveStream": { + "description": "A live stream describes a live ingestion point.", + "id": "LiveStream", + "properties": { + "cdn": { + "$ref": "CdnSettings", + "description": "The cdn object defines the live stream's content delivery network (CDN) settings. These settings provide details about the manner in which you stream your content to YouTube." + }, + "contentDetails": { + "$ref": "LiveStreamContentDetails", + "description": "The content_details object contains information about the stream, including the closed captions ingestion URL." + }, + "etag": { + "description": "Etag of this resource.", + "type": "string" + }, + "id": { + "annotations": { + "required": [ + "youtube.liveStreams.update" + ] + }, + "description": "The ID that YouTube assigns to uniquely identify the stream.", + "type": "string" + }, + "kind": { + "default": "youtube#liveStream", + "description": "Identifies what kind of resource this is. Value: the fixed string \"youtube#liveStream\".", + "type": "string" + }, + "snippet": { + "$ref": "LiveStreamSnippet", + "description": "The snippet object contains basic details about the stream, including its channel, title, and description." + }, + "status": { + "$ref": "LiveStreamStatus", + "description": "The status object contains information about live stream's status." + } + }, + "type": "object" + }, + "LiveStreamConfigurationIssue": { + "id": "LiveStreamConfigurationIssue", + "properties": { + "description": { + "description": "The long-form description of the issue and how to resolve it.", + "type": "string" + }, + "reason": { + "description": "The short-form reason for this issue.", + "type": "string" + }, + "severity": { + "description": "How severe this issue is to the stream.", + "enum": [ + "error", + "info", + "warning" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, + "type": { + "description": "The kind of error happening.", + "enum": [ + "audioBitrateHigh", + "audioBitrateLow", + "audioBitrateMismatch", + "audioCodec", + "audioCodecMismatch", + "audioSampleRate", + "audioSampleRateMismatch", + "audioStereoMismatch", + "audioTooManyChannels", + "badContainer", + "bitrateHigh", + "bitrateLow", + "frameRateHigh", + "framerateMismatch", + "gopMismatch", + "gopSizeLong", + "gopSizeOver", + "gopSizeShort", + "interlacedVideo", + "multipleAudioStreams", + "multipleVideoStreams", + "noAudioStream", + "noVideoStream", + "openGop", + "resolutionMismatch", + "videoBitrateMismatch", + "videoCodec", + "videoCodecMismatch", + "videoIngestionFasterThanRealtime", + "videoIngestionStarved", + "videoInterlaceMismatch", + "videoProfileMismatch", + "videoResolutionSuboptimal", + "videoResolutionUnsupported" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "LiveStreamContentDetails": { + "description": "Detailed settings of a stream.", + "id": "LiveStreamContentDetails", + "properties": { + "closedCaptionsIngestionUrl": { + "description": "The ingestion URL where the closed captions of this stream are sent.", + "type": "string" + }, + "isReusable": { + "description": "Indicates whether the stream is reusable, which means that it can be bound to multiple broadcasts. It is common for broadcasters to reuse the same stream for many different broadcasts if those broadcasts occur at different times.\n\nIf you set this value to false, then the stream will not be reusable, which means that it can only be bound to one broadcast. Non-reusable streams differ from reusable streams in the following ways: \n- A non-reusable stream can only be bound to one broadcast. \n- A non-reusable stream might be deleted by an automated process after the broadcast ends. \n- The liveStreams.list method does not list non-reusable streams if you call the method and set the mine parameter to true. The only way to use that method to retrieve the resource for a non-reusable stream is to use the id parameter to identify the stream.", + "type": "boolean" + } + }, + "type": "object" + }, + "LiveStreamHealthStatus": { + "id": "LiveStreamHealthStatus", + "properties": { + "configurationIssues": { + "description": "The configurations issues on this stream", + "items": { + "$ref": "LiveStreamConfigurationIssue" + }, + "type": "array" + }, + "lastUpdateTimeSeconds": { + "description": "The last time this status was updated (in seconds)", + "format": "uint64", + "type": "string" + }, + "status": { + "description": "The status code of this stream", + "enum": [ + "bad", + "good", + "noData", + "ok", + "revoked" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "LiveStreamListResponse": { + "id": "LiveStreamListResponse", + "properties": { + "etag": { + "description": "Etag of this resource.", + "type": "string" + }, + "eventId": { + "description": "Serialized EventId of the request which produced this response.", + "type": "string" + }, + "items": { + "description": "A list of live streams that match the request criteria.", + "items": { + "$ref": "LiveStream" + }, + "type": "array" + }, + "kind": { + "default": "youtube#liveStreamListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"youtube#liveStreamListResponse\".", + "type": "string" + }, + "nextPageToken": { + "description": "The token that can be used as the value of the pageToken parameter to retrieve the next page in the result set.", + "type": "string" + }, + "pageInfo": { + "$ref": "PageInfo" + }, + "prevPageToken": { + "description": "The token that can be used as the value of the pageToken parameter to retrieve the previous page in the result set.", + "type": "string" + }, + "tokenPagination": { + "$ref": "TokenPagination" + }, + "visitorId": { + "description": "The visitorId identifies the visitor.", + "type": "string" + } + }, + "type": "object" + }, + "LiveStreamSnippet": { + "id": "LiveStreamSnippet", + "properties": { + "channelId": { + "description": "The ID that YouTube uses to uniquely identify the channel that is transmitting the stream.", + "type": "string" + }, + "description": { + "description": "The stream's description. The value cannot be longer than 10000 characters.", + "type": "string" + }, + "isDefaultStream": { + "type": "boolean" + }, + "publishedAt": { + "description": "The date and time that the stream was created. The value is specified in ISO 8601 (YYYY-MM-DDThh:mm:ss.sZ) format.", + "format": "date-time", + "type": "string" + }, + "title": { + "annotations": { + "required": [ + "youtube.liveStreams.insert", + "youtube.liveStreams.update" + ] + }, + "description": "The stream's title. The value must be between 1 and 128 characters long.", + "type": "string" + } + }, + "type": "object" + }, + "LiveStreamStatus": { + "description": "Brief description of the live stream status.", + "id": "LiveStreamStatus", + "properties": { + "healthStatus": { + "$ref": "LiveStreamHealthStatus", + "description": "The health status of the stream." + }, + "streamStatus": { + "enum": [ + "active", + "created", + "error", + "inactive", + "ready" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "LocalizedProperty": { + "id": "LocalizedProperty", + "properties": { + "default": { + "type": "string" + }, + "defaultLanguage": { + "$ref": "LanguageTag", + "description": "The language of the default property." + }, + "localized": { + "items": { + "$ref": "LocalizedString" + }, + "type": "array" + } + }, + "type": "object" + }, + "LocalizedString": { + "id": "LocalizedString", + "properties": { + "language": { + "type": "string" + }, + "value": { + "type": "string" + } + }, + "type": "object" + }, + "MonitorStreamInfo": { + "description": "Settings and Info of the monitor stream", + "id": "MonitorStreamInfo", + "properties": { + "broadcastStreamDelayMs": { + "annotations": { + "required": [ + "youtube.liveBroadcasts.update" + ] + }, + "description": "If you have set the enableMonitorStream property to true, then this property determines the length of the live broadcast delay.", + "format": "uint32", + "type": "integer" + }, + "embedHtml": { + "description": "HTML code that embeds a player that plays the monitor stream.", + "type": "string" + }, + "enableMonitorStream": { + "annotations": { + "required": [ + "youtube.liveBroadcasts.update" + ] + }, + "description": "This value determines whether the monitor stream is enabled for the broadcast. If the monitor stream is enabled, then YouTube will broadcast the event content on a special stream intended only for the broadcaster's consumption. The broadcaster can use the stream to review the event content and also to identify the optimal times to insert cuepoints.\n\nYou need to set this value to true if you intend to have a broadcast delay for your event.\n\nNote: This property cannot be updated once the broadcast is in the testing or live state.", + "type": "boolean" + } + }, + "type": "object" + }, + "Nonprofit": { + "description": "Nonprofit information.", + "id": "Nonprofit", + "properties": { + "nonprofitId": { + "$ref": "NonprofitId", + "description": "Id of the nonprofit." + }, + "nonprofitLegalName": { + "description": "Legal name of the nonprofit.", + "type": "string" + } + }, + "type": "object" + }, + "NonprofitId": { + "id": "NonprofitId", + "properties": { + "value": { + "type": "string" + } + }, + "type": "object" + }, + "PageInfo": { + "description": "Paging details for lists of resources, including total number of items available and number of resources returned in a single page.", + "id": "PageInfo", + "properties": { + "resultsPerPage": { + "description": "The number of results included in the API response.", + "format": "int32", + "type": "integer" + }, + "totalResults": { + "description": "The total number of results in the result set.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "Playlist": { + "description": "A playlist resource represents a YouTube playlist. A playlist is a collection of videos that can be viewed sequentially and shared with other users. A playlist can contain up to 200 videos, and YouTube does not limit the number of playlists that each user creates. By default, playlists are publicly visible to other users, but playlists can be public or private.\n\nYouTube also uses playlists to identify special collections of videos for a channel, such as: \n- uploaded videos \n- favorite videos \n- positively rated (liked) videos \n- watch history \n- watch later To be more specific, these lists are associated with a channel, which is a collection of a person, group, or company's videos, playlists, and other YouTube information. You can retrieve the playlist IDs for each of these lists from the channel resource for a given channel.\n\nYou can then use the playlistItems.list method to retrieve any of those lists. You can also add or remove items from those lists by calling the playlistItems.insert and playlistItems.delete methods.", + "id": "Playlist", + "properties": { + "contentDetails": { + "$ref": "PlaylistContentDetails", + "description": "The contentDetails object contains information like video count." + }, + "etag": { + "description": "Etag of this resource.", + "type": "string" + }, + "id": { + "description": "The ID that YouTube uses to uniquely identify the playlist.", + "type": "string" + }, + "kind": { + "default": "youtube#playlist", + "description": "Identifies what kind of resource this is. Value: the fixed string \"youtube#playlist\".", + "type": "string" + }, + "localizations": { + "additionalProperties": { + "$ref": "PlaylistLocalization", + "description": "The language tag, using string since map_key require simple types." + }, + "description": "Localizations for different languages", + "type": "object" + }, + "player": { + "$ref": "PlaylistPlayer", + "description": "The player object contains information that you would use to play the playlist in an embedded player." + }, + "snippet": { + "$ref": "PlaylistSnippet", + "description": "The snippet object contains basic details about the playlist, such as its title and description." + }, + "status": { + "$ref": "PlaylistStatus", + "description": "The status object contains status information for the playlist." + } + }, + "type": "object" + }, + "PlaylistContentDetails": { + "id": "PlaylistContentDetails", + "properties": { + "itemCount": { + "description": "The number of videos in the playlist.", + "format": "uint32", + "type": "integer" + } + }, + "type": "object" + }, + "PlaylistItem": { + "description": "A playlistItem resource identifies another resource, such as a video, that is included in a playlist. In addition, the playlistItem resource contains details about the included resource that pertain specifically to how that resource is used in that playlist.\n\nYouTube uses playlists to identify special collections of videos for a channel, such as: \n- uploaded videos \n- favorite videos \n- positively rated (liked) videos \n- watch history \n- watch later To be more specific, these lists are associated with a channel, which is a collection of a person, group, or company's videos, playlists, and other YouTube information.\n\nYou can retrieve the playlist IDs for each of these lists from the channel resource for a given channel. You can then use the playlistItems.list method to retrieve any of those lists. You can also add or remove items from those lists by calling the playlistItems.insert and playlistItems.delete methods. For example, if a user gives a positive rating to a video, you would insert that video into the liked videos playlist for that user's channel.", + "id": "PlaylistItem", + "properties": { + "contentDetails": { + "$ref": "PlaylistItemContentDetails", + "description": "The contentDetails object is included in the resource if the included item is a YouTube video. The object contains additional information about the video." + }, + "etag": { + "description": "Etag of this resource.", + "type": "string" + }, + "id": { + "description": "The ID that YouTube uses to uniquely identify the playlist item.", + "type": "string" + }, + "kind": { + "default": "youtube#playlistItem", + "description": "Identifies what kind of resource this is. Value: the fixed string \"youtube#playlistItem\".", + "type": "string" + }, + "snippet": { + "$ref": "PlaylistItemSnippet", + "description": "The snippet object contains basic details about the playlist item, such as its title and position in the playlist." + }, + "status": { + "$ref": "PlaylistItemStatus", + "description": "The status object contains information about the playlist item's privacy status." + } + }, + "type": "object" + }, + "PlaylistItemContentDetails": { + "id": "PlaylistItemContentDetails", + "properties": { + "endAt": { + "description": "The time, measured in seconds from the start of the video, when the video should stop playing. (The playlist owner can specify the times when the video should start and stop playing when the video is played in the context of the playlist.) By default, assume that the video.endTime is the end of the video.", + "type": "string" + }, + "note": { + "description": "A user-generated note for this item.", + "type": "string" + }, + "startAt": { + "description": "The time, measured in seconds from the start of the video, when the video should start playing. (The playlist owner can specify the times when the video should start and stop playing when the video is played in the context of the playlist.) The default value is 0.", + "type": "string" + }, + "videoId": { + "description": "The ID that YouTube uses to uniquely identify a video. To retrieve the video resource, set the id query parameter to this value in your API request.", + "type": "string" + }, + "videoPublishedAt": { + "description": "The date and time that the video was published to YouTube. The value is specified in ISO 8601 (YYYY-MM-DDThh:mm:ss.sZ) format.", + "format": "date-time", + "type": "string" + } + }, + "type": "object" + }, + "PlaylistItemListResponse": { + "id": "PlaylistItemListResponse", + "properties": { + "etag": { + "description": "Etag of this resource.", + "type": "string" + }, + "eventId": { + "description": "Serialized EventId of the request which produced this response.", + "type": "string" + }, + "items": { + "description": "A list of playlist items that match the request criteria.", + "items": { + "$ref": "PlaylistItem" + }, + "type": "array" + }, + "kind": { + "default": "youtube#playlistItemListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"youtube#playlistItemListResponse\".", + "type": "string" + }, + "nextPageToken": { + "description": "The token that can be used as the value of the pageToken parameter to retrieve the next page in the result set.", + "type": "string" + }, + "pageInfo": { + "$ref": "PageInfo" + }, + "prevPageToken": { + "description": "The token that can be used as the value of the pageToken parameter to retrieve the previous page in the result set.", + "type": "string" + }, + "tokenPagination": { + "$ref": "TokenPagination" + }, + "visitorId": { + "description": "The visitorId identifies the visitor.", + "type": "string" + } + }, + "type": "object" + }, + "PlaylistItemSnippet": { + "description": "Basic details about a playlist, including title, description and thumbnails.", + "id": "PlaylistItemSnippet", + "properties": { + "channelId": { + "description": "The ID that YouTube uses to uniquely identify the user that added the item to the playlist.", + "type": "string" + }, + "channelTitle": { + "description": "Channel title for the channel that the playlist item belongs to.", + "type": "string" + }, + "description": { + "description": "The item's description.", + "type": "string" + }, + "playlistId": { + "annotations": { + "required": [ + "youtube.playlistItems.insert", + "youtube.playlistItems.update" + ] + }, + "description": "The ID that YouTube uses to uniquely identify the playlist that the playlist item is in.", + "type": "string" + }, + "position": { + "description": "The order in which the item appears in the playlist. The value uses a zero-based index, so the first item has a position of 0, the second item has a position of 1, and so forth.", + "format": "uint32", + "type": "integer" + }, + "publishedAt": { + "description": "The date and time that the item was added to the playlist. The value is specified in ISO 8601 (YYYY-MM-DDThh:mm:ss.sZ) format.", + "format": "date-time", + "type": "string" + }, + "resourceId": { + "$ref": "ResourceId", + "annotations": { + "required": [ + "youtube.playlistItems.insert", + "youtube.playlistItems.update" + ] + }, + "description": "The id object contains information that can be used to uniquely identify the resource that is included in the playlist as the playlist item." + }, + "thumbnails": { + "$ref": "ThumbnailDetails", + "description": "A map of thumbnail images associated with the playlist item. For each object in the map, the key is the name of the thumbnail image, and the value is an object that contains other information about the thumbnail." + }, + "title": { + "description": "The item's title.", + "type": "string" + } + }, + "type": "object" + }, + "PlaylistItemStatus": { + "description": "Information about the playlist item's privacy status.", + "id": "PlaylistItemStatus", + "properties": { + "privacyStatus": { + "description": "This resource's privacy status.", + "enum": [ + "private", + "public", + "unlisted" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "PlaylistListResponse": { + "id": "PlaylistListResponse", + "properties": { + "etag": { + "description": "Etag of this resource.", + "type": "string" + }, + "eventId": { + "description": "Serialized EventId of the request which produced this response.", + "type": "string" + }, + "items": { + "description": "A list of playlists that match the request criteria.", + "items": { + "$ref": "Playlist" + }, + "type": "array" + }, + "kind": { + "default": "youtube#playlistListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"youtube#playlistListResponse\".", + "type": "string" + }, + "nextPageToken": { + "description": "The token that can be used as the value of the pageToken parameter to retrieve the next page in the result set.", + "type": "string" + }, + "pageInfo": { + "$ref": "PageInfo" + }, + "prevPageToken": { + "description": "The token that can be used as the value of the pageToken parameter to retrieve the previous page in the result set.", + "type": "string" + }, + "tokenPagination": { + "$ref": "TokenPagination" + }, + "visitorId": { + "description": "The visitorId identifies the visitor.", + "type": "string" + } + }, + "type": "object" + }, + "PlaylistLocalization": { + "description": "Playlist localization setting", + "id": "PlaylistLocalization", + "properties": { + "description": { + "description": "The localized strings for playlist's description.", + "type": "string" + }, + "title": { + "description": "The localized strings for playlist's title.", + "type": "string" + } + }, + "type": "object" + }, + "PlaylistPlayer": { + "id": "PlaylistPlayer", + "properties": { + "embedHtml": { + "description": "An \u003ciframe\u003e tag that embeds a player that will play the playlist.", + "type": "string" + } + }, + "type": "object" + }, + "PlaylistSnippet": { + "description": "Basic details about a playlist, including title, description and thumbnails.", + "id": "PlaylistSnippet", + "properties": { + "channelId": { + "description": "The ID that YouTube uses to uniquely identify the channel that published the playlist.", + "type": "string" + }, + "channelTitle": { + "description": "The channel title of the channel that the video belongs to.", + "type": "string" + }, + "defaultLanguage": { + "description": "The language of the playlist's default title and description.", + "type": "string" + }, + "description": { + "description": "The playlist's description.", + "type": "string" + }, + "localized": { + "$ref": "PlaylistLocalization", + "description": "Localized title and description, read-only." + }, + "publishedAt": { + "description": "The date and time that the playlist was created. The value is specified in ISO 8601 (YYYY-MM-DDThh:mm:ss.sZ) format.", + "format": "date-time", + "type": "string" + }, + "tags": { + "description": "Keyword tags associated with the playlist.", + "items": { + "type": "string" + }, + "type": "array" + }, + "thumbnails": { + "$ref": "ThumbnailDetails", + "description": "A map of thumbnail images associated with the playlist. For each object in the map, the key is the name of the thumbnail image, and the value is an object that contains other information about the thumbnail." + }, + "title": { + "annotations": { + "required": [ + "youtube.playlists.insert", + "youtube.playlists.update" + ] + }, + "description": "The playlist's title.", + "type": "string" + } + }, + "type": "object" + }, + "PlaylistStatus": { + "id": "PlaylistStatus", + "properties": { + "privacyStatus": { + "description": "The playlist's privacy status.", + "enum": [ + "private", + "public", + "unlisted" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "PromotedItem": { + "description": "Describes a single promoted item.", + "id": "PromotedItem", + "properties": { + "customMessage": { + "description": "A custom message to display for this promotion. This field is currently ignored unless the promoted item is a website.", + "type": "string" + }, + "id": { + "$ref": "PromotedItemId", + "description": "Identifies the promoted item." + }, + "promotedByContentOwner": { + "description": "If true, the content owner's name will be used when displaying the promotion. This field can only be set when the update is made on behalf of the content owner.", + "type": "boolean" + }, + "timing": { + "$ref": "InvideoTiming", + "description": "The temporal position within the video where the promoted item will be displayed. If present, it overrides the default timing." + } + }, + "type": "object" + }, + "PromotedItemId": { + "description": "Describes a single promoted item id. It is a union of various possible types.", + "id": "PromotedItemId", + "properties": { + "recentlyUploadedBy": { + "description": "If type is recentUpload, this field identifies the channel from which to take the recent upload. If missing, the channel is assumed to be the same channel for which the invideoPromotion is set.", + "type": "string" + }, + "type": { + "description": "Describes the type of the promoted item.", + "enum": [ + "recentUpload", + "video", + "website" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, + "videoId": { + "description": "If the promoted item represents a video, this field represents the unique YouTube ID identifying it. This field will be present only if type has the value video.", + "type": "string" + }, + "websiteUrl": { + "description": "If the promoted item represents a website, this field represents the url pointing to the website. This field will be present only if type has the value website.", + "type": "string" + } + }, + "type": "object" + }, + "PropertyValue": { + "description": "A pair Property / Value.", + "id": "PropertyValue", + "properties": { + "property": { + "description": "A property.", + "type": "string" + }, + "value": { + "description": "The property's value.", + "type": "string" + } + }, + "type": "object" + }, + "ResourceId": { + "description": "A resource id is a generic reference that points to another YouTube resource.", + "id": "ResourceId", + "properties": { + "channelId": { + "description": "The ID that YouTube uses to uniquely identify the referred resource, if that resource is a channel. This property is only present if the resourceId.kind value is youtube#channel.", + "type": "string" + }, + "kind": { + "description": "The type of the API resource.", + "type": "string" + }, + "playlistId": { + "description": "The ID that YouTube uses to uniquely identify the referred resource, if that resource is a playlist. This property is only present if the resourceId.kind value is youtube#playlist.", + "type": "string" + }, + "videoId": { + "description": "The ID that YouTube uses to uniquely identify the referred resource, if that resource is a video. This property is only present if the resourceId.kind value is youtube#video.", + "type": "string" + } + }, + "type": "object" + }, + "SearchListResponse": { + "id": "SearchListResponse", + "properties": { + "etag": { + "description": "Etag of this resource.", + "type": "string" + }, + "eventId": { + "description": "Serialized EventId of the request which produced this response.", + "type": "string" + }, + "items": { + "description": "A list of results that match the search criteria.", + "items": { + "$ref": "SearchResult" + }, + "type": "array" + }, + "kind": { + "default": "youtube#searchListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"youtube#searchListResponse\".", + "type": "string" + }, + "nextPageToken": { + "description": "The token that can be used as the value of the pageToken parameter to retrieve the next page in the result set.", + "type": "string" + }, + "pageInfo": { + "$ref": "PageInfo" + }, + "prevPageToken": { + "description": "The token that can be used as the value of the pageToken parameter to retrieve the previous page in the result set.", + "type": "string" + }, + "regionCode": { + "type": "string" + }, + "tokenPagination": { + "$ref": "TokenPagination" + }, + "visitorId": { + "description": "The visitorId identifies the visitor.", + "type": "string" + } + }, + "type": "object" + }, + "SearchResult": { + "description": "A search result contains information about a YouTube video, channel, or playlist that matches the search parameters specified in an API request. While a search result points to a uniquely identifiable resource, like a video, it does not have its own persistent data.", + "id": "SearchResult", + "properties": { + "etag": { + "description": "Etag of this resource.", + "type": "string" + }, + "id": { + "$ref": "ResourceId", + "description": "The id object contains information that can be used to uniquely identify the resource that matches the search request." + }, + "kind": { + "default": "youtube#searchResult", + "description": "Identifies what kind of resource this is. Value: the fixed string \"youtube#searchResult\".", + "type": "string" + }, + "snippet": { + "$ref": "SearchResultSnippet", + "description": "The snippet object contains basic details about a search result, such as its title or description. For example, if the search result is a video, then the title will be the video's title and the description will be the video's description." + } + }, + "type": "object" + }, + "SearchResultSnippet": { + "description": "Basic details about a search result, including title, description and thumbnails of the item referenced by the search result.", + "id": "SearchResultSnippet", + "properties": { + "channelId": { + "description": "The value that YouTube uses to uniquely identify the channel that published the resource that the search result identifies.", + "type": "string" + }, + "channelTitle": { + "description": "The title of the channel that published the resource that the search result identifies.", + "type": "string" + }, + "description": { + "description": "A description of the search result.", + "type": "string" + }, + "liveBroadcastContent": { + "description": "It indicates if the resource (video or channel) has upcoming/active live broadcast content. Or it's \"none\" if there is not any upcoming/active live broadcasts.", + "enum": [ + "live", + "none", + "upcoming" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, + "publishedAt": { + "description": "The creation date and time of the resource that the search result identifies. The value is specified in ISO 8601 (YYYY-MM-DDThh:mm:ss.sZ) format.", + "format": "date-time", + "type": "string" + }, + "thumbnails": { + "$ref": "ThumbnailDetails", + "description": "A map of thumbnail images associated with the search result. For each object in the map, the key is the name of the thumbnail image, and the value is an object that contains other information about the thumbnail." + }, + "title": { + "description": "The title of the search result.", + "type": "string" + } + }, + "type": "object" + }, + "Sponsor": { + "description": "A sponsor resource represents a sponsor for a YouTube channel. A sponsor provides recurring monetary support to a creator and receives special benefits.", + "id": "Sponsor", + "properties": { + "etag": { + "description": "Etag of this resource.", + "type": "string" + }, + "id": { + "description": "The ID that YouTube assigns to uniquely identify the sponsor.", + "type": "string" + }, + "kind": { + "default": "youtube#sponsor", + "description": "Identifies what kind of resource this is. Value: the fixed string \"youtube#sponsor\".", + "type": "string" + }, + "snippet": { + "$ref": "SponsorSnippet", + "description": "The snippet object contains basic details about the sponsor." + } + }, + "type": "object" + }, + "SponsorListResponse": { + "id": "SponsorListResponse", + "properties": { + "etag": { + "description": "Etag of this resource.", + "type": "string" + }, + "eventId": { + "description": "Serialized EventId of the request which produced this response.", + "type": "string" + }, + "items": { + "description": "A list of sponsors that match the request criteria.", + "items": { + "$ref": "Sponsor" + }, + "type": "array" + }, + "kind": { + "default": "youtube#sponsorListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"youtube#sponsorListResponse\".", + "type": "string" + }, + "nextPageToken": { + "description": "The token that can be used as the value of the pageToken parameter to retrieve the next page in the result set.", + "type": "string" + }, + "pageInfo": { + "$ref": "PageInfo" + }, + "tokenPagination": { + "$ref": "TokenPagination" + }, + "visitorId": { + "description": "The visitorId identifies the visitor.", + "type": "string" + } + }, + "type": "object" + }, + "SponsorSnippet": { + "id": "SponsorSnippet", + "properties": { + "channelId": { + "description": "The id of the channel being sponsored.", + "type": "string" + }, + "cumulativeDurationMonths": { + "description": "The cumulative time a user has been a sponsor in months.", + "format": "int32", + "type": "integer" + }, + "sponsorDetails": { + "$ref": "ChannelProfileDetails", + "description": "Details about the sponsor." + }, + "sponsorSince": { + "description": "The date and time when the user became a sponsor. The value is specified in ISO 8601 (YYYY-MM-DDThh:mm:ss.sZ) format.", + "format": "date-time", + "type": "string" + } + }, + "type": "object" + }, + "Subscription": { + "description": "A subscription resource contains information about a YouTube user subscription. A subscription notifies a user when new videos are added to a channel or when another user takes one of several actions on YouTube, such as uploading a video, rating a video, or commenting on a video.", + "id": "Subscription", + "properties": { + "contentDetails": { + "$ref": "SubscriptionContentDetails", + "description": "The contentDetails object contains basic statistics about the subscription." + }, + "etag": { + "description": "Etag of this resource.", + "type": "string" + }, + "id": { + "description": "The ID that YouTube uses to uniquely identify the subscription.", + "type": "string" + }, + "kind": { + "default": "youtube#subscription", + "description": "Identifies what kind of resource this is. Value: the fixed string \"youtube#subscription\".", + "type": "string" + }, + "snippet": { + "$ref": "SubscriptionSnippet", + "description": "The snippet object contains basic details about the subscription, including its title and the channel that the user subscribed to." + }, + "subscriberSnippet": { + "$ref": "SubscriptionSubscriberSnippet", + "description": "The subscriberSnippet object contains basic details about the sbuscriber." + } + }, + "type": "object" + }, + "SubscriptionContentDetails": { + "description": "Details about the content to witch a subscription refers.", + "id": "SubscriptionContentDetails", + "properties": { + "activityType": { + "description": "The type of activity this subscription is for (only uploads, everything).", + "enum": [ + "all", + "uploads" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "newItemCount": { + "description": "The number of new items in the subscription since its content was last read.", + "format": "uint32", + "type": "integer" + }, + "totalItemCount": { + "description": "The approximate number of items that the subscription points to.", + "format": "uint32", + "type": "integer" + } + }, + "type": "object" + }, + "SubscriptionListResponse": { + "id": "SubscriptionListResponse", + "properties": { + "etag": { + "description": "Etag of this resource.", + "type": "string" + }, + "eventId": { + "description": "Serialized EventId of the request which produced this response.", + "type": "string" + }, + "items": { + "description": "A list of subscriptions that match the request criteria.", + "items": { + "$ref": "Subscription" + }, + "type": "array" + }, + "kind": { + "default": "youtube#subscriptionListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"youtube#subscriptionListResponse\".", + "type": "string" + }, + "nextPageToken": { + "description": "The token that can be used as the value of the pageToken parameter to retrieve the next page in the result set.", + "type": "string" + }, + "pageInfo": { + "$ref": "PageInfo" + }, + "prevPageToken": { + "description": "The token that can be used as the value of the pageToken parameter to retrieve the previous page in the result set.", + "type": "string" + }, + "tokenPagination": { + "$ref": "TokenPagination" + }, + "visitorId": { + "description": "The visitorId identifies the visitor.", + "type": "string" + } + }, + "type": "object" + }, + "SubscriptionSnippet": { + "description": "Basic details about a subscription, including title, description and thumbnails of the subscribed item.", + "id": "SubscriptionSnippet", + "properties": { + "channelId": { + "description": "The ID that YouTube uses to uniquely identify the subscriber's channel.", + "type": "string" + }, + "channelTitle": { + "description": "Channel title for the channel that the subscription belongs to.", + "type": "string" + }, + "description": { + "description": "The subscription's details.", + "type": "string" + }, + "publishedAt": { + "description": "The date and time that the subscription was created. The value is specified in ISO 8601 (YYYY-MM-DDThh:mm:ss.sZ) format.", + "format": "date-time", + "type": "string" + }, + "resourceId": { + "$ref": "ResourceId", + "annotations": { + "required": [ + "youtube.subscriptions.insert" + ] + }, + "description": "The id object contains information about the channel that the user subscribed to." + }, + "thumbnails": { + "$ref": "ThumbnailDetails", + "description": "A map of thumbnail images associated with the video. For each object in the map, the key is the name of the thumbnail image, and the value is an object that contains other information about the thumbnail." + }, + "title": { + "description": "The subscription's title.", + "type": "string" + } + }, + "type": "object" + }, + "SubscriptionSubscriberSnippet": { + "description": "Basic details about a subscription's subscriber including title, description, channel ID and thumbnails.", + "id": "SubscriptionSubscriberSnippet", + "properties": { + "channelId": { + "description": "The channel ID of the subscriber.", + "type": "string" + }, + "description": { + "description": "The description of the subscriber.", + "type": "string" + }, + "thumbnails": { + "$ref": "ThumbnailDetails", + "description": "Thumbnails for this subscriber." + }, + "title": { + "description": "The title of the subscriber.", + "type": "string" + } + }, + "type": "object" + }, + "SuperChatEvent": { + "description": "A superChatEvent resource represents a Super Chat purchase on a YouTube channel.", + "id": "SuperChatEvent", + "properties": { + "etag": { + "description": "Etag of this resource.", + "type": "string" + }, + "id": { + "description": "The ID that YouTube assigns to uniquely identify the Super Chat event.", + "type": "string" + }, + "kind": { + "default": "youtube#superChatEvent", + "description": "Identifies what kind of resource this is. Value: the fixed string \"youtube#superChatEvent\".", + "type": "string" + }, + "snippet": { + "$ref": "SuperChatEventSnippet", + "description": "The snippet object contains basic details about the Super Chat event." + } + }, + "type": "object" + }, + "SuperChatEventListResponse": { + "id": "SuperChatEventListResponse", + "properties": { + "etag": { + "description": "Etag of this resource.", + "type": "string" + }, + "eventId": { + "description": "Serialized EventId of the request which produced this response.", + "type": "string" + }, + "items": { + "description": "A list of Super Chat purchases that match the request criteria.", + "items": { + "$ref": "SuperChatEvent" + }, + "type": "array" + }, + "kind": { + "default": "youtube#superChatEventListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"youtube#superChatEventListResponse\".", + "type": "string" + }, + "nextPageToken": { + "description": "The token that can be used as the value of the pageToken parameter to retrieve the next page in the result set.", + "type": "string" + }, + "pageInfo": { + "$ref": "PageInfo" + }, + "tokenPagination": { + "$ref": "TokenPagination" + }, + "visitorId": { + "description": "The visitorId identifies the visitor.", + "type": "string" + } + }, + "type": "object" + }, + "SuperChatEventSnippet": { + "id": "SuperChatEventSnippet", + "properties": { + "amountMicros": { + "description": "The purchase amount, in micros of the purchase currency. e.g., 1 is represented as 1000000.", + "format": "uint64", + "type": "string" + }, + "channelId": { + "description": "Channel id where the event occurred.", + "type": "string" + }, + "commentText": { + "description": "The text contents of the comment left by the user.", + "type": "string" + }, + "createdAt": { + "description": "The date and time when the event occurred. The value is specified in ISO 8601 (YYYY-MM-DDThh:mm:ss.sZ) format.", + "format": "date-time", + "type": "string" + }, + "currency": { + "description": "The currency in which the purchase was made. ISO 4217.", + "type": "string" + }, + "displayString": { + "description": "A rendered string that displays the purchase amount and currency (e.g., \"$1.00\"). The string is rendered for the given language.", + "type": "string" + }, + "isSuperChatForGood": { + "description": "True if this event is a Super Chat for Good purchase.", + "type": "boolean" + }, + "messageType": { + "description": "The tier for the paid message, which is based on the amount of money spent to purchase the message.", + "format": "uint32", + "type": "integer" + }, + "nonprofit": { + "$ref": "Nonprofit", + "description": "If this event is a Super Chat for Good purchase, this field will contain information about the charity the purchase is donated to." + }, + "supporterDetails": { + "$ref": "ChannelProfileDetails", + "description": "Details about the supporter." + } + }, + "type": "object" + }, + "Thumbnail": { + "description": "A thumbnail is an image representing a YouTube resource.", + "id": "Thumbnail", + "properties": { + "height": { + "description": "(Optional) Height of the thumbnail image.", + "format": "uint32", + "type": "integer" + }, + "url": { + "description": "The thumbnail image's URL.", + "type": "string" + }, + "width": { + "description": "(Optional) Width of the thumbnail image.", + "format": "uint32", + "type": "integer" + } + }, + "type": "object" + }, + "ThumbnailDetails": { + "description": "Internal representation of thumbnails for a YouTube resource.", + "id": "ThumbnailDetails", + "properties": { + "default": { + "$ref": "Thumbnail", + "description": "The default image for this resource." + }, + "high": { + "$ref": "Thumbnail", + "description": "The high quality image for this resource." + }, + "maxres": { + "$ref": "Thumbnail", + "description": "The maximum resolution quality image for this resource." + }, + "medium": { + "$ref": "Thumbnail", + "description": "The medium quality image for this resource." + }, + "standard": { + "$ref": "Thumbnail", + "description": "The standard quality image for this resource." + } + }, + "type": "object" + }, + "ThumbnailSetResponse": { + "id": "ThumbnailSetResponse", + "properties": { + "etag": { + "description": "Etag of this resource.", + "type": "string" + }, + "eventId": { + "description": "Serialized EventId of the request which produced this response.", + "type": "string" + }, + "items": { + "description": "A list of thumbnails.", + "items": { + "$ref": "ThumbnailDetails" + }, + "type": "array" + }, + "kind": { + "default": "youtube#thumbnailSetResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"youtube#thumbnailSetResponse\".", + "type": "string" + }, + "visitorId": { + "description": "The visitorId identifies the visitor.", + "type": "string" + } + }, + "type": "object" + }, + "TokenPagination": { + "description": "Stub token pagination template to suppress results.", + "id": "TokenPagination", + "type": "object" + }, + "Video": { + "description": "A video resource represents a YouTube video.", + "id": "Video", + "properties": { + "ageGating": { + "$ref": "VideoAgeGating", + "description": "Age restriction details related to a video. This data can only be retrieved by the video owner." + }, + "contentDetails": { + "$ref": "VideoContentDetails", + "description": "The contentDetails object contains information about the video content, including the length of the video and its aspect ratio." + }, + "etag": { + "description": "Etag of this resource.", + "type": "string" + }, + "fileDetails": { + "$ref": "VideoFileDetails", + "description": "The fileDetails object encapsulates information about the video file that was uploaded to YouTube, including the file's resolution, duration, audio and video codecs, stream bitrates, and more. This data can only be retrieved by the video owner." + }, + "id": { + "annotations": { + "required": [ + "youtube.videos.update" + ] + }, + "description": "The ID that YouTube uses to uniquely identify the video.", + "type": "string" + }, + "kind": { + "default": "youtube#video", + "description": "Identifies what kind of resource this is. Value: the fixed string \"youtube#video\".", + "type": "string" + }, + "liveStreamingDetails": { + "$ref": "VideoLiveStreamingDetails", + "description": "The liveStreamingDetails object contains metadata about a live video broadcast. The object will only be present in a video resource if the video is an upcoming, live, or completed live broadcast." + }, + "localizations": { + "additionalProperties": { + "$ref": "VideoLocalization", + "description": "The language tag, using string since map_key require simple types." + }, + "description": "List with all localizations.", + "type": "object" + }, + "monetizationDetails": { + "$ref": "VideoMonetizationDetails", + "description": "The monetizationDetails object encapsulates information about the monetization status of the video." + }, + "player": { + "$ref": "VideoPlayer", + "description": "The player object contains information that you would use to play the video in an embedded player." + }, + "processingDetails": { + "$ref": "VideoProcessingDetails", + "description": "The processingDetails object encapsulates information about YouTube's progress in processing the uploaded video file. The properties in the object identify the current processing status and an estimate of the time remaining until YouTube finishes processing the video. This part also indicates whether different types of data or content, such as file details or thumbnail images, are available for the video.\n\nThe processingProgress object is designed to be polled so that the video uploaded can track the progress that YouTube has made in processing the uploaded video file. This data can only be retrieved by the video owner." + }, + "projectDetails": { + "$ref": "VideoProjectDetails", + "description": "The projectDetails object contains information about the project specific video metadata." + }, + "recordingDetails": { + "$ref": "VideoRecordingDetails", + "description": "The recordingDetails object encapsulates information about the location, date and address where the video was recorded." + }, + "snippet": { + "$ref": "VideoSnippet", + "description": "The snippet object contains basic details about the video, such as its title, description, and category." + }, + "statistics": { + "$ref": "VideoStatistics", + "description": "The statistics object contains statistics about the video." + }, + "status": { + "$ref": "VideoStatus", + "description": "The status object contains information about the video's uploading, processing, and privacy statuses." + }, + "suggestions": { + "$ref": "VideoSuggestions", + "description": "The suggestions object encapsulates suggestions that identify opportunities to improve the video quality or the metadata for the uploaded video. This data can only be retrieved by the video owner." + }, + "topicDetails": { + "$ref": "VideoTopicDetails", + "description": "The topicDetails object encapsulates information about Freebase topics associated with the video." + } + }, + "type": "object" + }, + "VideoAbuseReport": { + "id": "VideoAbuseReport", + "properties": { + "comments": { + "description": "Additional comments regarding the abuse report.", + "type": "string" + }, + "language": { + "description": "The language that the content was viewed in.", + "type": "string" + }, + "reasonId": { + "description": "The high-level, or primary, reason that the content is abusive. The value is an abuse report reason ID.", + "type": "string" + }, + "secondaryReasonId": { + "description": "The specific, or secondary, reason that this content is abusive (if available). The value is an abuse report reason ID that is a valid secondary reason for the primary reason.", + "type": "string" + }, + "videoId": { + "description": "The ID that YouTube uses to uniquely identify the video.", + "type": "string" + } + }, + "type": "object" + }, + "VideoAbuseReportReason": { + "description": "A videoAbuseReportReason resource identifies a reason that a video could be reported as abusive. Video abuse report reasons are used with video.ReportAbuse.", + "id": "VideoAbuseReportReason", + "properties": { + "etag": { + "description": "Etag of this resource.", + "type": "string" + }, + "id": { + "description": "The ID of this abuse report reason.", + "type": "string" + }, + "kind": { + "default": "youtube#videoAbuseReportReason", + "description": "Identifies what kind of resource this is. Value: the fixed string \"youtube#videoAbuseReportReason\".", + "type": "string" + }, + "snippet": { + "$ref": "VideoAbuseReportReasonSnippet", + "description": "The snippet object contains basic details about the abuse report reason." + } + }, + "type": "object" + }, + "VideoAbuseReportReasonListResponse": { + "id": "VideoAbuseReportReasonListResponse", + "properties": { + "etag": { + "description": "Etag of this resource.", + "type": "string" + }, + "eventId": { + "description": "Serialized EventId of the request which produced this response.", + "type": "string" + }, + "items": { + "description": "A list of valid abuse reasons that are used with video.ReportAbuse.", + "items": { + "$ref": "VideoAbuseReportReason" + }, + "type": "array" + }, + "kind": { + "default": "youtube#videoAbuseReportReasonListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"youtube#videoAbuseReportReasonListResponse\".", + "type": "string" + }, + "visitorId": { + "description": "The visitorId identifies the visitor.", + "type": "string" + } + }, + "type": "object" + }, + "VideoAbuseReportReasonSnippet": { + "description": "Basic details about a video category, such as its localized title.", + "id": "VideoAbuseReportReasonSnippet", + "properties": { + "label": { + "description": "The localized label belonging to this abuse report reason.", + "type": "string" + }, + "secondaryReasons": { + "description": "The secondary reasons associated with this reason, if any are available. (There might be 0 or more.)", + "items": { + "$ref": "VideoAbuseReportSecondaryReason" + }, + "type": "array" + } + }, + "type": "object" + }, + "VideoAbuseReportSecondaryReason": { + "id": "VideoAbuseReportSecondaryReason", + "properties": { + "id": { + "description": "The ID of this abuse report secondary reason.", + "type": "string" + }, + "label": { + "description": "The localized label for this abuse report secondary reason.", + "type": "string" + } + }, + "type": "object" + }, + "VideoAgeGating": { + "id": "VideoAgeGating", + "properties": { + "alcoholContent": { + "description": "Indicates whether or not the video has alcoholic beverage content. Only users of legal purchasing age in a particular country, as identified by ICAP, can view the content.", + "type": "boolean" + }, + "restricted": { + "description": "Age-restricted trailers. For redband trailers and adult-rated video-games. Only users aged 18+ can view the content. The the field is true the content is restricted to viewers aged 18+. Otherwise The field won't be present.", + "type": "boolean" + }, + "videoGameRating": { + "description": "Video game rating, if any.", + "enum": [ + "anyone", + "m15Plus", + "m16Plus", + "m17Plus" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "VideoCategory": { + "description": "A videoCategory resource identifies a category that has been or could be associated with uploaded videos.", + "id": "VideoCategory", + "properties": { + "etag": { + "description": "Etag of this resource.", + "type": "string" + }, + "id": { + "description": "The ID that YouTube uses to uniquely identify the video category.", + "type": "string" + }, + "kind": { + "default": "youtube#videoCategory", + "description": "Identifies what kind of resource this is. Value: the fixed string \"youtube#videoCategory\".", + "type": "string" + }, + "snippet": { + "$ref": "VideoCategorySnippet", + "description": "The snippet object contains basic details about the video category, including its title." + } + }, + "type": "object" + }, + "VideoCategoryListResponse": { + "id": "VideoCategoryListResponse", + "properties": { + "etag": { + "description": "Etag of this resource.", + "type": "string" + }, + "eventId": { + "description": "Serialized EventId of the request which produced this response.", + "type": "string" + }, + "items": { + "description": "A list of video categories that can be associated with YouTube videos. In this map, the video category ID is the map key, and its value is the corresponding videoCategory resource.", + "items": { + "$ref": "VideoCategory" + }, + "type": "array" + }, + "kind": { + "default": "youtube#videoCategoryListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"youtube#videoCategoryListResponse\".", + "type": "string" + }, + "nextPageToken": { + "description": "The token that can be used as the value of the pageToken parameter to retrieve the next page in the result set.", + "type": "string" + }, + "pageInfo": { + "$ref": "PageInfo" + }, + "prevPageToken": { + "description": "The token that can be used as the value of the pageToken parameter to retrieve the previous page in the result set.", + "type": "string" + }, + "tokenPagination": { + "$ref": "TokenPagination" + }, + "visitorId": { + "description": "The visitorId identifies the visitor.", + "type": "string" + } + }, + "type": "object" + }, + "VideoCategorySnippet": { + "description": "Basic details about a video category, such as its localized title.", + "id": "VideoCategorySnippet", + "properties": { + "assignable": { + "type": "boolean" + }, + "channelId": { + "default": "UCBR8-60-B28hp2BmDPdntcQ", + "description": "The YouTube channel that created the video category.", + "type": "string" + }, + "title": { + "description": "The video category's title.", + "type": "string" + } + }, + "type": "object" + }, + "VideoContentDetails": { + "description": "Details about the content of a YouTube Video.", + "id": "VideoContentDetails", + "properties": { + "caption": { + "description": "The value of captions indicates whether the video has captions or not.", + "enum": [ + "false", + "true" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "contentRating": { + "$ref": "ContentRating", + "description": "Specifies the ratings that the video received under various rating schemes." + }, + "countryRestriction": { + "$ref": "AccessPolicy", + "description": "The countryRestriction object contains information about the countries where a video is (or is not) viewable." + }, + "definition": { + "description": "The value of definition indicates whether the video is available in high definition or only in standard definition.", + "enum": [ + "hd", + "sd" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "dimension": { + "description": "The value of dimension indicates whether the video is available in 3D or in 2D.", + "type": "string" + }, + "duration": { + "description": "The length of the video. The tag value is an ISO 8601 duration in the format PT#M#S, in which the letters PT indicate that the value specifies a period of time, and the letters M and S refer to length in minutes and seconds, respectively. The # characters preceding the M and S letters are both integers that specify the number of minutes (or seconds) of the video. For example, a value of PT15M51S indicates that the video is 15 minutes and 51 seconds long.", + "type": "string" + }, + "hasCustomThumbnail": { + "description": "Indicates whether the video uploader has provided a custom thumbnail image for the video. This property is only visible to the video uploader.", + "type": "boolean" + }, + "licensedContent": { + "description": "The value of is_license_content indicates whether the video is licensed content.", + "type": "boolean" + }, + "projection": { + "description": "Specifies the projection format of the video.", + "enum": [ + "360", + "rectangular" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "regionRestriction": { + "$ref": "VideoContentDetailsRegionRestriction", + "description": "The regionRestriction object contains information about the countries where a video is (or is not) viewable. The object will contain either the contentDetails.regionRestriction.allowed property or the contentDetails.regionRestriction.blocked property." + } + }, + "type": "object" + }, + "VideoContentDetailsRegionRestriction": { + "description": "DEPRECATED Region restriction of the video.", + "id": "VideoContentDetailsRegionRestriction", + "properties": { + "allowed": { + "description": "A list of region codes that identify countries where the video is viewable. If this property is present and a country is not listed in its value, then the video is blocked from appearing in that country. If this property is present and contains an empty list, the video is blocked in all countries.", + "items": { + "type": "string" + }, + "type": "array" + }, + "blocked": { + "description": "A list of region codes that identify countries where the video is blocked. If this property is present and a country is not listed in its value, then the video is viewable in that country. If this property is present and contains an empty list, the video is viewable in all countries.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "VideoFileDetails": { + "description": "Describes original video file properties, including technical details about audio and video streams, but also metadata information like content length, digitization time, or geotagging information.", + "id": "VideoFileDetails", + "properties": { + "audioStreams": { + "description": "A list of audio streams contained in the uploaded video file. Each item in the list contains detailed metadata about an audio stream.", + "items": { + "$ref": "VideoFileDetailsAudioStream" + }, + "type": "array" + }, + "bitrateBps": { + "description": "The uploaded video file's combined (video and audio) bitrate in bits per second.", + "format": "uint64", + "type": "string" + }, + "container": { + "description": "The uploaded video file's container format.", + "type": "string" + }, + "creationTime": { + "description": "The date and time when the uploaded video file was created. The value is specified in ISO 8601 format. Currently, the following ISO 8601 formats are supported: \n- Date only: YYYY-MM-DD \n- Naive time: YYYY-MM-DDTHH:MM:SS \n- Time with timezone: YYYY-MM-DDTHH:MM:SS+HH:MM", + "type": "string" + }, + "durationMs": { + "description": "The length of the uploaded video in milliseconds.", + "format": "uint64", + "type": "string" + }, + "fileName": { + "description": "The uploaded file's name. This field is present whether a video file or another type of file was uploaded.", + "type": "string" + }, + "fileSize": { + "description": "The uploaded file's size in bytes. This field is present whether a video file or another type of file was uploaded.", + "format": "uint64", + "type": "string" + }, + "fileType": { + "description": "The uploaded file's type as detected by YouTube's video processing engine. Currently, YouTube only processes video files, but this field is present whether a video file or another type of file was uploaded.", + "enum": [ + "archive", + "audio", + "document", + "image", + "other", + "project", + "video" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "videoStreams": { + "description": "A list of video streams contained in the uploaded video file. Each item in the list contains detailed metadata about a video stream.", + "items": { + "$ref": "VideoFileDetailsVideoStream" + }, + "type": "array" + } + }, + "type": "object" + }, + "VideoFileDetailsAudioStream": { + "description": "Information about an audio stream.", + "id": "VideoFileDetailsAudioStream", + "properties": { + "bitrateBps": { + "description": "The audio stream's bitrate, in bits per second.", + "format": "uint64", + "type": "string" + }, + "channelCount": { + "description": "The number of audio channels that the stream contains.", + "format": "uint32", + "type": "integer" + }, + "codec": { + "description": "The audio codec that the stream uses.", + "type": "string" + }, + "vendor": { + "description": "A value that uniquely identifies a video vendor. Typically, the value is a four-letter vendor code.", + "type": "string" + } + }, + "type": "object" + }, + "VideoFileDetailsVideoStream": { + "description": "Information about a video stream.", + "id": "VideoFileDetailsVideoStream", + "properties": { + "aspectRatio": { + "description": "The video content's display aspect ratio, which specifies the aspect ratio in which the video should be displayed.", + "format": "double", + "type": "number" + }, + "bitrateBps": { + "description": "The video stream's bitrate, in bits per second.", + "format": "uint64", + "type": "string" + }, + "codec": { + "description": "The video codec that the stream uses.", + "type": "string" + }, + "frameRateFps": { + "description": "The video stream's frame rate, in frames per second.", + "format": "double", + "type": "number" + }, + "heightPixels": { + "description": "The encoded video content's height in pixels.", + "format": "uint32", + "type": "integer" + }, + "rotation": { + "description": "The amount that YouTube needs to rotate the original source content to properly display the video.", + "enum": [ + "clockwise", + "counterClockwise", + "none", + "other", + "upsideDown" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "vendor": { + "description": "A value that uniquely identifies a video vendor. Typically, the value is a four-letter vendor code.", + "type": "string" + }, + "widthPixels": { + "description": "The encoded video content's width in pixels. You can calculate the video's encoding aspect ratio as width_pixels / height_pixels.", + "format": "uint32", + "type": "integer" + } + }, + "type": "object" + }, + "VideoGetRatingResponse": { + "id": "VideoGetRatingResponse", + "properties": { + "etag": { + "description": "Etag of this resource.", + "type": "string" + }, + "eventId": { + "description": "Serialized EventId of the request which produced this response.", + "type": "string" + }, + "items": { + "description": "A list of ratings that match the request criteria.", + "items": { + "$ref": "VideoRating" + }, + "type": "array" + }, + "kind": { + "default": "youtube#videoGetRatingResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"youtube#videoGetRatingResponse\".", + "type": "string" + }, + "visitorId": { + "description": "The visitorId identifies the visitor.", + "type": "string" + } + }, + "type": "object" + }, + "VideoListResponse": { + "id": "VideoListResponse", + "properties": { + "etag": { + "description": "Etag of this resource.", + "type": "string" + }, + "eventId": { + "description": "Serialized EventId of the request which produced this response.", + "type": "string" + }, + "items": { + "description": "A list of videos that match the request criteria.", + "items": { + "$ref": "Video" + }, + "type": "array" + }, + "kind": { + "default": "youtube#videoListResponse", + "description": "Identifies what kind of resource this is. Value: the fixed string \"youtube#videoListResponse\".", + "type": "string" + }, + "nextPageToken": { + "description": "The token that can be used as the value of the pageToken parameter to retrieve the next page in the result set.", + "type": "string" + }, + "pageInfo": { + "$ref": "PageInfo" + }, + "prevPageToken": { + "description": "The token that can be used as the value of the pageToken parameter to retrieve the previous page in the result set.", + "type": "string" + }, + "tokenPagination": { + "$ref": "TokenPagination" + }, + "visitorId": { + "description": "The visitorId identifies the visitor.", + "type": "string" + } + }, + "type": "object" + }, + "VideoLiveStreamingDetails": { + "description": "Details about the live streaming metadata.", + "id": "VideoLiveStreamingDetails", + "properties": { + "activeLiveChatId": { + "description": "The ID of the currently active live chat attached to this video. This field is filled only if the video is a currently live broadcast that has live chat. Once the broadcast transitions to complete this field will be removed and the live chat closed down. For persistent broadcasts that live chat id will no longer be tied to this video but rather to the new video being displayed at the persistent page.", + "type": "string" + }, + "actualEndTime": { + "description": "The time that the broadcast actually ended. The value is specified in ISO 8601 (YYYY-MM-DDThh:mm:ss.sZ) format. This value will not be available until the broadcast is over.", + "format": "date-time", + "type": "string" + }, + "actualStartTime": { + "description": "The time that the broadcast actually started. The value is specified in ISO 8601 (YYYY-MM-DDThh:mm:ss.sZ) format. This value will not be available until the broadcast begins.", + "format": "date-time", + "type": "string" + }, + "concurrentViewers": { + "description": "The number of viewers currently watching the broadcast. The property and its value will be present if the broadcast has current viewers and the broadcast owner has not hidden the viewcount for the video. Note that YouTube stops tracking the number of concurrent viewers for a broadcast when the broadcast ends. So, this property would not identify the number of viewers watching an archived video of a live broadcast that already ended.", + "format": "uint64", + "type": "string" + }, + "scheduledEndTime": { + "description": "The time that the broadcast is scheduled to end. The value is specified in ISO 8601 (YYYY-MM-DDThh:mm:ss.sZ) format. If the value is empty or the property is not present, then the broadcast is scheduled to continue indefinitely.", + "format": "date-time", + "type": "string" + }, + "scheduledStartTime": { + "description": "The time that the broadcast is scheduled to begin. The value is specified in ISO 8601 (YYYY-MM-DDThh:mm:ss.sZ) format.", + "format": "date-time", + "type": "string" + } + }, + "type": "object" + }, + "VideoLocalization": { + "description": "Localized versions of certain video properties (e.g. title).", + "id": "VideoLocalization", + "properties": { + "description": { + "description": "Localized version of the video's description.", + "type": "string" + }, + "title": { + "description": "Localized version of the video's title.", + "type": "string" + } + }, + "type": "object" + }, + "VideoMonetizationDetails": { + "description": "Details about monetization of a YouTube Video.", + "id": "VideoMonetizationDetails", + "properties": { + "access": { + "$ref": "AccessPolicy", + "description": "The value of access indicates whether the video can be monetized or not." + } + }, + "type": "object" + }, + "VideoPlayer": { + "description": "Player to be used for a video playback.", + "id": "VideoPlayer", + "properties": { + "embedHeight": { + "format": "int64", + "type": "string" + }, + "embedHtml": { + "description": "An \u003ciframe\u003e tag that embeds a player that will play the video.", + "type": "string" + }, + "embedWidth": { + "description": "The embed width", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "VideoProcessingDetails": { + "description": "Describes processing status and progress and availability of some other Video resource parts.", + "id": "VideoProcessingDetails", + "properties": { + "editorSuggestionsAvailability": { + "description": "This value indicates whether video editing suggestions, which might improve video quality or the playback experience, are available for the video. You can retrieve these suggestions by requesting the suggestions part in your videos.list() request.", + "type": "string" + }, + "fileDetailsAvailability": { + "description": "This value indicates whether file details are available for the uploaded video. You can retrieve a video's file details by requesting the fileDetails part in your videos.list() request.", + "type": "string" + }, + "processingFailureReason": { + "description": "The reason that YouTube failed to process the video. This property will only have a value if the processingStatus property's value is failed.", + "enum": [ + "other", + "streamingFailed", + "transcodeFailed", + "uploadFailed" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ], + "type": "string" + }, + "processingIssuesAvailability": { + "description": "This value indicates whether the video processing engine has generated suggestions that might improve YouTube's ability to process the the video, warnings that explain video processing problems, or errors that cause video processing problems. You can retrieve these suggestions by requesting the suggestions part in your videos.list() request.", + "type": "string" + }, + "processingProgress": { + "$ref": "VideoProcessingDetailsProcessingProgress", + "description": "The processingProgress object contains information about the progress YouTube has made in processing the video. The values are really only relevant if the video's processing status is processing." + }, + "processingStatus": { + "description": "The video's processing status. This value indicates whether YouTube was able to process the video or if the video is still being processed.", + "enum": [ + "failed", + "processing", + "succeeded", + "terminated" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ], + "type": "string" + }, + "tagSuggestionsAvailability": { + "description": "This value indicates whether keyword (tag) suggestions are available for the video. Tags can be added to a video's metadata to make it easier for other users to find the video. You can retrieve these suggestions by requesting the suggestions part in your videos.list() request.", + "type": "string" + }, + "thumbnailsAvailability": { + "description": "This value indicates whether thumbnail images have been generated for the video.", + "type": "string" + } + }, + "type": "object" + }, + "VideoProcessingDetailsProcessingProgress": { + "description": "Video processing progress and completion time estimate.", + "id": "VideoProcessingDetailsProcessingProgress", + "properties": { + "partsProcessed": { + "description": "The number of parts of the video that YouTube has already processed. You can estimate the percentage of the video that YouTube has already processed by calculating:\n100 * parts_processed / parts_total\n\nNote that since the estimated number of parts could increase without a corresponding increase in the number of parts that have already been processed, it is possible that the calculated progress could periodically decrease while YouTube processes a video.", + "format": "uint64", + "type": "string" + }, + "partsTotal": { + "description": "An estimate of the total number of parts that need to be processed for the video. The number may be updated with more precise estimates while YouTube processes the video.", + "format": "uint64", + "type": "string" + }, + "timeLeftMs": { + "description": "An estimate of the amount of time, in millseconds, that YouTube needs to finish processing the video.", + "format": "uint64", + "type": "string" + } + }, + "type": "object" + }, + "VideoProjectDetails": { + "description": "Project specific details about the content of a YouTube Video.", + "id": "VideoProjectDetails", + "properties": { + "tags": { + "description": "A list of project tags associated with the video during the upload.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "VideoRating": { + "id": "VideoRating", + "properties": { + "rating": { + "enum": [ + "dislike", + "like", + "none", + "unspecified" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ], + "type": "string" + }, + "videoId": { + "type": "string" + } + }, + "type": "object" + }, + "VideoRecordingDetails": { + "description": "Recording information associated with the video.", + "id": "VideoRecordingDetails", + "properties": { + "location": { + "$ref": "GeoPoint", + "description": "The geolocation information associated with the video." + }, + "locationDescription": { + "description": "The text description of the location where the video was recorded.", + "type": "string" + }, + "recordingDate": { + "description": "The date and time when the video was recorded. The value is specified in ISO 8601 (YYYY-MM-DDThh:mm:ss.sssZ) format.", + "format": "date-time", + "type": "string" + } + }, + "type": "object" + }, + "VideoSnippet": { + "description": "Basic details about a video, including title, description, uploader, thumbnails and category.", + "id": "VideoSnippet", + "properties": { + "categoryId": { + "description": "The YouTube video category associated with the video.", + "type": "string" + }, + "channelId": { + "description": "The ID that YouTube uses to uniquely identify the channel that the video was uploaded to.", + "type": "string" + }, + "channelTitle": { + "description": "Channel title for the channel that the video belongs to.", + "type": "string" + }, + "defaultAudioLanguage": { + "description": "The default_audio_language property specifies the language spoken in the video's default audio track.", + "type": "string" + }, + "defaultLanguage": { + "description": "The language of the videos's default snippet.", + "type": "string" + }, + "description": { + "description": "The video's description.", + "type": "string" + }, + "liveBroadcastContent": { + "description": "Indicates if the video is an upcoming/active live broadcast. Or it's \"none\" if the video is not an upcoming/active live broadcast.", + "enum": [ + "live", + "none", + "upcoming" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, + "localized": { + "$ref": "VideoLocalization", + "description": "Localized snippet selected with the hl parameter. If no such localization exists, this field is populated with the default snippet. (Read-only)" + }, + "publishedAt": { + "description": "The date and time that the video was uploaded. The value is specified in ISO 8601 (YYYY-MM-DDThh:mm:ss.sZ) format.", + "format": "date-time", + "type": "string" + }, + "tags": { + "description": "A list of keyword tags associated with the video. Tags may contain spaces.", + "items": { + "type": "string" + }, + "type": "array" + }, + "thumbnails": { + "$ref": "ThumbnailDetails", + "description": "A map of thumbnail images associated with the video. For each object in the map, the key is the name of the thumbnail image, and the value is an object that contains other information about the thumbnail." + }, + "title": { + "description": "The video's title.", + "type": "string" + } + }, + "type": "object" + }, + "VideoStatistics": { + "description": "Statistics about the video, such as the number of times the video was viewed or liked.", + "id": "VideoStatistics", + "properties": { + "commentCount": { + "description": "The number of comments for the video.", + "format": "uint64", + "type": "string" + }, + "dislikeCount": { + "description": "The number of users who have indicated that they disliked the video by giving it a negative rating.", + "format": "uint64", + "type": "string" + }, + "favoriteCount": { + "description": "The number of users who currently have the video marked as a favorite video.", + "format": "uint64", + "type": "string" + }, + "likeCount": { + "description": "The number of users who have indicated that they liked the video by giving it a positive rating.", + "format": "uint64", + "type": "string" + }, + "viewCount": { + "description": "The number of times the video has been viewed.", + "format": "uint64", + "type": "string" + } + }, + "type": "object" + }, + "VideoStatus": { + "description": "Basic details about a video category, such as its localized title.", + "id": "VideoStatus", + "properties": { + "embeddable": { + "description": "This value indicates if the video can be embedded on another website.", + "type": "boolean" + }, + "failureReason": { + "description": "This value explains why a video failed to upload. This property is only present if the uploadStatus property indicates that the upload failed.", + "enum": [ + "codec", + "conversion", + "emptyFile", + "invalidFile", + "tooSmall", + "uploadAborted" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "license": { + "description": "The video's license.", + "enum": [ + "creativeCommon", + "youtube" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "privacyStatus": { + "description": "The video's privacy status.", + "enum": [ + "private", + "public", + "unlisted" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, + "publicStatsViewable": { + "description": "This value indicates if the extended video statistics on the watch page can be viewed by everyone. Note that the view count, likes, etc will still be visible if this is disabled.", + "type": "boolean" + }, + "publishAt": { + "description": "The date and time when the video is scheduled to publish. It can be set only if the privacy status of the video is private. The value is specified in ISO 8601 (YYYY-MM-DDThh:mm:ss.sZ) format.", + "format": "date-time", + "type": "string" + }, + "rejectionReason": { + "description": "This value explains why YouTube rejected an uploaded video. This property is only present if the uploadStatus property indicates that the upload was rejected.", + "enum": [ + "claim", + "copyright", + "duplicate", + "inappropriate", + "legal", + "length", + "termsOfUse", + "trademark", + "uploaderAccountClosed", + "uploaderAccountSuspended" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "uploadStatus": { + "description": "The status of the uploaded video.", + "enum": [ + "deleted", + "failed", + "processed", + "rejected", + "uploaded" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "VideoSuggestions": { + "description": "Specifies suggestions on how to improve video content, including encoding hints, tag suggestions, and editor suggestions.", + "id": "VideoSuggestions", + "properties": { + "editorSuggestions": { + "description": "A list of video editing operations that might improve the video quality or playback experience of the uploaded video.", + "items": { + "enum": [ + "audioQuietAudioSwap", + "videoAutoLevels", + "videoCrop", + "videoStabilize" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ], + "type": "string" + }, + "type": "array" + }, + "processingErrors": { + "description": "A list of errors that will prevent YouTube from successfully processing the uploaded video video. These errors indicate that, regardless of the video's current processing status, eventually, that status will almost certainly be failed.", + "items": { + "enum": [ + "archiveFile", + "audioFile", + "docFile", + "imageFile", + "notAVideoFile", + "projectFile", + "unsupportedSpatialAudioLayout" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "type": "array" + }, + "processingHints": { + "description": "A list of suggestions that may improve YouTube's ability to process the video.", + "items": { + "enum": [ + "hdrVideo", + "nonStreamableMov", + "sendBestQualityVideo", + "spatialAudio", + "sphericalVideo", + "vrVideo" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "type": "array" + }, + "processingWarnings": { + "description": "A list of reasons why YouTube may have difficulty transcoding the uploaded video or that might result in an erroneous transcoding. These warnings are generated before YouTube actually processes the uploaded video file. In addition, they identify issues that are unlikely to cause the video processing to fail but that might cause problems such as sync issues, video artifacts, or a missing audio track.", + "items": { + "enum": [ + "hasEditlist", + "inconsistentResolution", + "problematicAudioCodec", + "problematicHdrLookupTable", + "problematicVideoCodec", + "unknownAudioCodec", + "unknownContainer", + "unknownVideoCodec", + "unsupportedHdrColorMetadata", + "unsupportedHdrPixelFormat", + "unsupportedSphericalProjectionType", + "unsupportedVrStereoMode" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "type": "array" + }, + "tagSuggestions": { + "description": "A list of keyword tags that could be added to the video's metadata to increase the likelihood that users will locate your video when searching or browsing on YouTube.", + "items": { + "$ref": "VideoSuggestionsTagSuggestion" + }, + "type": "array" + } + }, + "type": "object" + }, + "VideoSuggestionsTagSuggestion": { + "description": "A single tag suggestion with it's relevance information.", + "id": "VideoSuggestionsTagSuggestion", + "properties": { + "categoryRestricts": { + "description": "A set of video categories for which the tag is relevant. You can use this information to display appropriate tag suggestions based on the video category that the video uploader associates with the video. By default, tag suggestions are relevant for all categories if there are no restricts defined for the keyword.", + "items": { + "type": "string" + }, + "type": "array" + }, + "tag": { + "description": "The keyword tag suggested for the video.", + "type": "string" + } + }, + "type": "object" + }, + "VideoTopicDetails": { + "description": "Freebase topic information related to the video.", + "id": "VideoTopicDetails", + "properties": { + "relevantTopicIds": { + "description": "Similar to topic_id, except that these topics are merely relevant to the video. These are topics that may be mentioned in, or appear in the video. You can retrieve information about each topic using Freebase Topic API.", + "items": { + "type": "string" + }, + "type": "array" + }, + "topicCategories": { + "description": "A list of Wikipedia URLs that provide a high-level description of the video's content.", + "items": { + "type": "string" + }, + "type": "array" + }, + "topicIds": { + "description": "A list of Freebase topic IDs that are centrally associated with the video. These are topics that are centrally featured in the video, and it can be said that the video is mainly about each of these. You can retrieve information about each topic using the Freebase Topic API.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "WatchSettings": { + "description": "Branding properties for the watch. All deprecated.", + "id": "WatchSettings", + "properties": { + "backgroundColor": { + "description": "The text color for the video watch page's branded area.", + "type": "string" + }, + "featuredPlaylistId": { + "description": "An ID that uniquely identifies a playlist that displays next to the video player.", + "type": "string" + }, + "textColor": { + "description": "The background color for the video watch page's branded area.", + "type": "string" + } + }, + "type": "object" + } + }, + "servicePath": "youtube/v3/", + "title": "YouTube Data API", + "version": "v3" +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/youtube/v3/youtube-gen.go b/vendor/google.golang.org/api/youtube/v3/youtube-gen.go index e655dadc0..163785eab 100644 --- a/vendor/google.golang.org/api/youtube/v3/youtube-gen.go +++ b/vendor/google.golang.org/api/youtube/v3/youtube-gen.go @@ -2247,7 +2247,7 @@ func (s *ChannelSettings) MarshalJSON() ([]byte, error) { } // ChannelSnippet: Basic details about a channel, including title, -// description and thumbnails. Next available id: 15. +// description and thumbnails. type ChannelSnippet struct { // Country: The country of the channel. Country string `json:"country,omitempty"` @@ -4812,6 +4812,12 @@ type LiveBroadcastContentDetails struct { // broadcast stream visible to viewers. StartWithSlate bool `json:"startWithSlate,omitempty"` + // Possible values: + // "left_right" + // "mono" + // "top_bottom" + StereoLayout string `json:"stereoLayout,omitempty"` + // ForceSendFields is a list of field names (e.g. "BoundStreamId") to // unconditionally include in API requests. By default, fields with // empty values are omitted from API requests. However, any non-pointer, @@ -6371,6 +6377,63 @@ func (s *MonitorStreamInfo) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// Nonprofit: Nonprofit information. +type Nonprofit struct { + // NonprofitId: Id of the nonprofit. + NonprofitId *NonprofitId `json:"nonprofitId,omitempty"` + + // NonprofitLegalName: Legal name of the nonprofit. + NonprofitLegalName string `json:"nonprofitLegalName,omitempty"` + + // ForceSendFields is a list of field names (e.g. "NonprofitId") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "NonprofitId") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *Nonprofit) MarshalJSON() ([]byte, error) { + type NoMethod Nonprofit + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +type NonprofitId struct { + Value string `json:"value,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Value") to + // unconditionally include in API requests. By default, fields with + // empty values are omitted from API requests. However, any non-pointer, + // non-interface field appearing in ForceSendFields will be sent to the + // server regardless of whether the field is empty or not. This may be + // used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Value") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *NonprofitId) MarshalJSON() ([]byte, error) { + type NoMethod NonprofitId + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // PageInfo: Paging details for lists of resources, including total // number of items available and number of resources returned in a // single page. @@ -7434,6 +7497,10 @@ type SponsorSnippet struct { // ChannelId: The id of the channel being sponsored. ChannelId string `json:"channelId,omitempty"` + // CumulativeDurationMonths: The cumulative time a user has been a + // sponsor in months. + CumulativeDurationMonths int64 `json:"cumulativeDurationMonths,omitempty"` + // SponsorDetails: Details about the sponsor. SponsorDetails *ChannelProfileDetails `json:"sponsorDetails,omitempty"` @@ -7830,10 +7897,19 @@ type SuperChatEventSnippet struct { // language. DisplayString string `json:"displayString,omitempty"` + // IsSuperChatForGood: True if this event is a Super Chat for Good + // purchase. + IsSuperChatForGood bool `json:"isSuperChatForGood,omitempty"` + // MessageType: The tier for the paid message, which is based on the // amount of money spent to purchase the message. MessageType int64 `json:"messageType,omitempty"` + // Nonprofit: If this event is a Super Chat for Good purchase, this + // field will contain information about the charity the purchase is + // donated to. + Nonprofit *Nonprofit `json:"nonprofit,omitempty"` + // SupporterDetails: Details about the supporter. SupporterDetails *ChannelProfileDetails `json:"supporterDetails,omitempty"` @@ -8028,7 +8104,7 @@ type Video struct { // play the video in an embedded player. Player *VideoPlayer `json:"player,omitempty"` - // ProcessingDetails: The processingProgress object encapsulates + // ProcessingDetails: The processingDetails object encapsulates // information about YouTube's progress in processing the uploaded video // file. The properties in the object identify the current processing // status and an estimate of the time remaining until YouTube finishes @@ -10627,11 +10703,12 @@ func (c *CaptionsInsertCall) doRequest(alt string) (*http.Response, error) { body = new(bytes.Buffer) reqHeaders.Set("Content-Type", "application/json") } - body, cleanup := c.mediaInfo_.UploadRequest(reqHeaders, body) + body, getBody, cleanup := c.mediaInfo_.UploadRequest(reqHeaders, body) defer cleanup() urls += "?" + c.urlParams_.Encode() req, _ := http.NewRequest("POST", urls, body) req.Header = reqHeaders + gensupport.SetGetBody(req, getBody) return gensupport.SendRequest(c.ctx_, c.s.client, req) } @@ -11094,11 +11171,12 @@ func (c *CaptionsUpdateCall) doRequest(alt string) (*http.Response, error) { body = new(bytes.Buffer) reqHeaders.Set("Content-Type", "application/json") } - body, cleanup := c.mediaInfo_.UploadRequest(reqHeaders, body) + body, getBody, cleanup := c.mediaInfo_.UploadRequest(reqHeaders, body) defer cleanup() urls += "?" + c.urlParams_.Encode() req, _ := http.NewRequest("PUT", urls, body) req.Header = reqHeaders + gensupport.SetGetBody(req, getBody) return gensupport.SendRequest(c.ctx_, c.s.client, req) } @@ -11368,11 +11446,12 @@ func (c *ChannelBannersInsertCall) doRequest(alt string) (*http.Response, error) body = new(bytes.Buffer) reqHeaders.Set("Content-Type", "application/json") } - body, cleanup := c.mediaInfo_.UploadRequest(reqHeaders, body) + body, getBody, cleanup := c.mediaInfo_.UploadRequest(reqHeaders, body) defer cleanup() urls += "?" + c.urlParams_.Encode() req, _ := http.NewRequest("POST", urls, body) req.Header = reqHeaders + gensupport.SetGetBody(req, getBody) return gensupport.SendRequest(c.ctx_, c.s.client, req) } @@ -21501,11 +21580,12 @@ func (c *ThumbnailsSetCall) doRequest(alt string) (*http.Response, error) { body = new(bytes.Buffer) reqHeaders.Set("Content-Type", "application/json") } - body, cleanup := c.mediaInfo_.UploadRequest(reqHeaders, body) + body, getBody, cleanup := c.mediaInfo_.UploadRequest(reqHeaders, body) defer cleanup() urls += "?" + c.urlParams_.Encode() req, _ := http.NewRequest("POST", urls, body) req.Header = reqHeaders + gensupport.SetGetBody(req, getBody) return gensupport.SendRequest(c.ctx_, c.s.client, req) } @@ -22398,11 +22478,12 @@ func (c *VideosInsertCall) doRequest(alt string) (*http.Response, error) { body = new(bytes.Buffer) reqHeaders.Set("Content-Type", "application/json") } - body, cleanup := c.mediaInfo_.UploadRequest(reqHeaders, body) + body, getBody, cleanup := c.mediaInfo_.UploadRequest(reqHeaders, body) defer cleanup() urls += "?" + c.urlParams_.Encode() req, _ := http.NewRequest("POST", urls, body) req.Header = reqHeaders + gensupport.SetGetBody(req, getBody) return gensupport.SendRequest(c.ctx_, c.s.client, req) } @@ -23419,11 +23500,12 @@ func (c *WatermarksSetCall) doRequest(alt string) (*http.Response, error) { body = new(bytes.Buffer) reqHeaders.Set("Content-Type", "application/json") } - body, cleanup := c.mediaInfo_.UploadRequest(reqHeaders, body) + body, getBody, cleanup := c.mediaInfo_.UploadRequest(reqHeaders, body) defer cleanup() urls += "?" + c.urlParams_.Encode() req, _ := http.NewRequest("POST", urls, body) req.Header = reqHeaders + gensupport.SetGetBody(req, getBody) return gensupport.SendRequest(c.ctx_, c.s.client, req) } diff --git a/vendor/google.golang.org/api/youtubeanalytics/v1/youtubeanalytics-api.json b/vendor/google.golang.org/api/youtubeanalytics/v1/youtubeanalytics-api.json index 4de2e8cf7..5886748f9 100644 --- a/vendor/google.golang.org/api/youtubeanalytics/v1/youtubeanalytics-api.json +++ b/vendor/google.golang.org/api/youtubeanalytics/v1/youtubeanalytics-api.json @@ -1,547 +1,547 @@ { - "kind": "discovery#restDescription", - "etag": "\"YWOzh2SDasdU84ArJnpYek-OMdg/oTivMR1Fefkt9JK_g8x8csBABMw\"", - "discoveryVersion": "v1", - "id": "youtubeAnalytics:v1", - "name": "youtubeAnalytics", - "canonicalName": "YouTube Analytics", - "version": "v1", - "revision": "20170913", - "title": "YouTube Analytics API", - "description": "Retrieves your YouTube Analytics data.", - "ownerDomain": "google.com", - "ownerName": "Google", - "icons": { - "x16": "https://www.google.com/images/icons/product/youtube-16.png", - "x32": "https://www.google.com/images/icons/product/youtube-32.png" - }, - "documentationLink": "http://developers.google.com/youtube/analytics/", - "protocol": "rest", - "baseUrl": "https://www.googleapis.com/youtube/analytics/v1/", - "basePath": "/youtube/analytics/v1/", - "rootUrl": "https://www.googleapis.com/", - "servicePath": "youtube/analytics/v1/", - "batchPath": "batch/youtubeAnalytics/v1", - "parameters": { - "alt": { - "type": "string", - "description": "Data format for the response.", - "default": "json", - "enum": [ - "csv", - "json" - ], - "enumDescriptions": [ - "Responses with Content-Type of text/csv", - "Responses with Content-Type of application/json" - ], - "location": "query" - }, - "fields": { - "type": "string", - "description": "Selector specifying which fields to include in a partial response.", - "location": "query" - }, - "key": { - "type": "string", - "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" - }, - "oauth_token": { - "type": "string", - "description": "OAuth 2.0 token for the current user.", - "location": "query" - }, - "prettyPrint": { - "type": "boolean", - "description": "Returns response with indentations and line breaks.", - "default": "true", - "location": "query" - }, - "quotaUser": { - "type": "string", - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", - "location": "query" - }, - "userIp": { - "type": "string", - "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", - "location": "query" - } - }, - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/youtube": { - "description": "Manage your YouTube account" - }, - "https://www.googleapis.com/auth/youtube.readonly": { - "description": "View your YouTube account" - }, - "https://www.googleapis.com/auth/youtubepartner": { - "description": "View and manage your assets and associated content on YouTube" - }, - "https://www.googleapis.com/auth/yt-analytics-monetary.readonly": { - "description": "View monetary and non-monetary YouTube Analytics reports for your YouTube content" - }, - "https://www.googleapis.com/auth/yt-analytics.readonly": { - "description": "View YouTube Analytics reports for your YouTube content" - } - } - } - }, - "schemas": { - "Group": { - "id": "Group", - "type": "object", - "properties": { - "contentDetails": { - "type": "object", - "properties": { - "itemCount": { - "type": "string", - "format": "uint64" - }, - "itemType": { - "type": "string" + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/youtube": { + "description": "Manage your YouTube account" + }, + "https://www.googleapis.com/auth/youtube.readonly": { + "description": "View your YouTube account" + }, + "https://www.googleapis.com/auth/youtubepartner": { + "description": "View and manage your assets and associated content on YouTube" + }, + "https://www.googleapis.com/auth/yt-analytics-monetary.readonly": { + "description": "View monetary and non-monetary YouTube Analytics reports for your YouTube content" + }, + "https://www.googleapis.com/auth/yt-analytics.readonly": { + "description": "View YouTube Analytics reports for your YouTube content" + } } - } + } + }, + "basePath": "/youtube/analytics/v1/", + "baseUrl": "https://www.googleapis.com/youtube/analytics/v1/", + "batchPath": "batch/youtubeAnalytics/v1", + "canonicalName": "YouTube Analytics", + "description": "Retrieves your YouTube Analytics data.", + "discoveryVersion": "v1", + "documentationLink": "http://developers.google.com/youtube/analytics/", + "etag": "\"-iA1DTNe4s-I6JZXPt1t1Ypy8IU/0zX8kZ4oqw_q4dpVldrbrroLq9A\"", + "icons": { + "x16": "https://www.google.com/images/icons/product/youtube-16.png", + "x32": "https://www.google.com/images/icons/product/youtube-32.png" + }, + "id": "youtubeAnalytics:v1", + "kind": "discovery#restDescription", + "name": "youtubeAnalytics", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "alt": { + "default": "json", + "description": "Data format for the response.", + "enum": [ + "csv", + "json" + ], + "enumDescriptions": [ + "Responses with Content-Type of text/csv", + "Responses with Content-Type of application/json" + ], + "location": "query", + "type": "string" }, - "etag": { - "type": "string" + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "location": "query", + "type": "string" }, - "id": { - "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.", + "location": "query", + "type": "string" }, - "kind": { - "type": "string", - "default": "youtube#group" + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" }, - "snippet": { - "type": "object", - "properties": { - "publishedAt": { - "type": "string", - "format": "date-time" - }, - "title": { - "type": "string" + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", + "location": "query", + "type": "string" + }, + "userIp": { + "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", + "location": "query", + "type": "string" + } + }, + "protocol": "rest", + "resources": { + "groupItems": { + "methods": { + "delete": { + "description": "Removes an item from a group.", + "httpMethod": "DELETE", + "id": "youtubeAnalytics.groupItems.delete", + "parameterOrder": [ + "id" + ], + "parameters": { + "id": { + "description": "The id parameter specifies the YouTube group item ID for the group that is being deleted.", + "location": "query", + "required": true, + "type": "string" + }, + "onBehalfOfContentOwner": { + "description": "Note: This parameter is intended exclusively for YouTube content partners.\n\nThe onBehalfOfContentOwner parameter indicates that the request's authorization credentials identify a YouTube CMS user who is acting on behalf of the content owner specified in the parameter value. This parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to provide authentication credentials for each individual channel. The CMS account that the user authenticates with must be linked to the specified YouTube content owner.", + "location": "query", + "type": "string" + } + }, + "path": "groupItems", + "scopes": [ + "https://www.googleapis.com/auth/youtube", + "https://www.googleapis.com/auth/youtubepartner" + ] + }, + "insert": { + "description": "Creates a group item.", + "httpMethod": "POST", + "id": "youtubeAnalytics.groupItems.insert", + "parameters": { + "onBehalfOfContentOwner": { + "description": "Note: This parameter is intended exclusively for YouTube content partners.\n\nThe onBehalfOfContentOwner parameter indicates that the request's authorization credentials identify a YouTube CMS user who is acting on behalf of the content owner specified in the parameter value. This parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to provide authentication credentials for each individual channel. The CMS account that the user authenticates with must be linked to the specified YouTube content owner.", + "location": "query", + "type": "string" + } + }, + "path": "groupItems", + "request": { + "$ref": "GroupItem" + }, + "response": { + "$ref": "GroupItem" + }, + "scopes": [ + "https://www.googleapis.com/auth/youtube", + "https://www.googleapis.com/auth/youtubepartner" + ] + }, + "list": { + "description": "Returns a collection of group items that match the API request parameters.", + "httpMethod": "GET", + "id": "youtubeAnalytics.groupItems.list", + "parameterOrder": [ + "groupId" + ], + "parameters": { + "groupId": { + "description": "The id parameter specifies the unique ID of the group for which you want to retrieve group items.", + "location": "query", + "required": true, + "type": "string" + }, + "onBehalfOfContentOwner": { + "description": "Note: This parameter is intended exclusively for YouTube content partners.\n\nThe onBehalfOfContentOwner parameter indicates that the request's authorization credentials identify a YouTube CMS user who is acting on behalf of the content owner specified in the parameter value. This parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to provide authentication credentials for each individual channel. The CMS account that the user authenticates with must be linked to the specified YouTube content owner.", + "location": "query", + "type": "string" + } + }, + "path": "groupItems", + "response": { + "$ref": "GroupItemListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/youtube", + "https://www.googleapis.com/auth/youtube.readonly", + "https://www.googleapis.com/auth/youtubepartner", + "https://www.googleapis.com/auth/yt-analytics.readonly" + ] + } } - } - } - } - }, - "GroupItem": { - "id": "GroupItem", - "type": "object", - "properties": { - "etag": { - "type": "string" }, - "groupId": { - "type": "string" - }, - "id": { - "type": "string" - }, - "kind": { - "type": "string", - "default": "youtube#groupItem" - }, - "resource": { - "type": "object", - "properties": { - "id": { - "type": "string" - }, - "kind": { - "type": "string" + "groups": { + "methods": { + "delete": { + "description": "Deletes a group.", + "httpMethod": "DELETE", + "id": "youtubeAnalytics.groups.delete", + "parameterOrder": [ + "id" + ], + "parameters": { + "id": { + "description": "The id parameter specifies the YouTube group ID for the group that is being deleted.", + "location": "query", + "required": true, + "type": "string" + }, + "onBehalfOfContentOwner": { + "description": "Note: This parameter is intended exclusively for YouTube content partners.\n\nThe onBehalfOfContentOwner parameter indicates that the request's authorization credentials identify a YouTube CMS user who is acting on behalf of the content owner specified in the parameter value. This parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to provide authentication credentials for each individual channel. The CMS account that the user authenticates with must be linked to the specified YouTube content owner.", + "location": "query", + "type": "string" + } + }, + "path": "groups", + "scopes": [ + "https://www.googleapis.com/auth/youtube", + "https://www.googleapis.com/auth/youtubepartner" + ] + }, + "insert": { + "description": "Creates a group.", + "httpMethod": "POST", + "id": "youtubeAnalytics.groups.insert", + "parameters": { + "onBehalfOfContentOwner": { + "description": "Note: This parameter is intended exclusively for YouTube content partners.\n\nThe onBehalfOfContentOwner parameter indicates that the request's authorization credentials identify a YouTube CMS user who is acting on behalf of the content owner specified in the parameter value. This parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to provide authentication credentials for each individual channel. The CMS account that the user authenticates with must be linked to the specified YouTube content owner.", + "location": "query", + "type": "string" + } + }, + "path": "groups", + "request": { + "$ref": "Group" + }, + "response": { + "$ref": "Group" + }, + "scopes": [ + "https://www.googleapis.com/auth/youtube", + "https://www.googleapis.com/auth/youtubepartner" + ] + }, + "list": { + "description": "Returns a collection of groups that match the API request parameters. For example, you can retrieve all groups that the authenticated user owns, or you can retrieve one or more groups by their unique IDs.", + "httpMethod": "GET", + "id": "youtubeAnalytics.groups.list", + "parameters": { + "id": { + "description": "The id parameter specifies a comma-separated list of the YouTube group ID(s) for the resource(s) that are being retrieved. In a group resource, the id property specifies the group's YouTube group ID.", + "location": "query", + "type": "string" + }, + "mine": { + "description": "Set this parameter's value to true to instruct the API to only return groups owned by the authenticated user.", + "location": "query", + "type": "boolean" + }, + "onBehalfOfContentOwner": { + "description": "Note: This parameter is intended exclusively for YouTube content partners.\n\nThe onBehalfOfContentOwner parameter indicates that the request's authorization credentials identify a YouTube CMS user who is acting on behalf of the content owner specified in the parameter value. This parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to provide authentication credentials for each individual channel. The CMS account that the user authenticates with must be linked to the specified YouTube content owner.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "The pageToken parameter identifies a specific page in the result set that should be returned. In an API response, the nextPageToken property identifies the next page that can be retrieved.", + "location": "query", + "type": "string" + } + }, + "path": "groups", + "response": { + "$ref": "GroupListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/youtube", + "https://www.googleapis.com/auth/youtube.readonly", + "https://www.googleapis.com/auth/youtubepartner", + "https://www.googleapis.com/auth/yt-analytics.readonly" + ] + }, + "update": { + "description": "Modifies a group. For example, you could change a group's title.", + "httpMethod": "PUT", + "id": "youtubeAnalytics.groups.update", + "parameters": { + "onBehalfOfContentOwner": { + "description": "Note: This parameter is intended exclusively for YouTube content partners.\n\nThe onBehalfOfContentOwner parameter indicates that the request's authorization credentials identify a YouTube CMS user who is acting on behalf of the content owner specified in the parameter value. This parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to provide authentication credentials for each individual channel. The CMS account that the user authenticates with must be linked to the specified YouTube content owner.", + "location": "query", + "type": "string" + } + }, + "path": "groups", + "request": { + "$ref": "Group" + }, + "response": { + "$ref": "Group" + }, + "scopes": [ + "https://www.googleapis.com/auth/youtube", + "https://www.googleapis.com/auth/youtubepartner" + ] + } + } + }, + "reports": { + "methods": { + "query": { + "description": "Retrieve your YouTube Analytics reports.", + "httpMethod": "GET", + "id": "youtubeAnalytics.reports.query", + "parameterOrder": [ + "ids", + "start-date", + "end-date", + "metrics" + ], + "parameters": { + "currency": { + "description": "The currency to which financial metrics should be converted. The default is US Dollar (USD). If the result contains no financial metrics, this flag will be ignored. Responds with an error if the specified currency is not recognized.", + "location": "query", + "pattern": "[A-Z]{3}", + "type": "string" + }, + "dimensions": { + "description": "A comma-separated list of YouTube Analytics dimensions, such as views or ageGroup,gender. See the Available Reports document for a list of the reports that you can retrieve and the dimensions used for those reports. Also see the Dimensions document for definitions of those dimensions.", + "location": "query", + "pattern": "[0-9a-zA-Z,]+", + "type": "string" + }, + "end-date": { + "description": "The end date for fetching YouTube Analytics data. The value should be in YYYY-MM-DD format.", + "location": "query", + "pattern": "[0-9]{4}-[0-9]{2}-[0-9]{2}", + "required": true, + "type": "string" + }, + "filters": { + "description": "A list of filters that should be applied when retrieving YouTube Analytics data. The Available Reports document identifies the dimensions that can be used to filter each report, and the Dimensions document defines those dimensions. If a request uses multiple filters, join them together with a semicolon (;), and the returned result table will satisfy both filters. For example, a filters parameter value of video==dMH0bHeiRNg;country==IT restricts the result set to include data for the given video in Italy.", + "location": "query", + "type": "string" + }, + "ids": { + "description": "Identifies the YouTube channel or content owner for which you are retrieving YouTube Analytics data.\n- To request data for a YouTube user, set the ids parameter value to channel==CHANNEL_ID, where CHANNEL_ID specifies the unique YouTube channel ID.\n- To request data for a YouTube CMS content owner, set the ids parameter value to contentOwner==OWNER_NAME, where OWNER_NAME is the CMS name of the content owner.", + "location": "query", + "pattern": "[a-zA-Z]+==[a-zA-Z0-9_+-]+", + "required": true, + "type": "string" + }, + "include-historical-channel-data": { + "description": "If set to true historical data (i.e. channel data from before the linking of the channel to the content owner) will be retrieved.", + "location": "query", + "type": "boolean" + }, + "max-results": { + "description": "The maximum number of rows to include in the response.", + "format": "int32", + "location": "query", + "minimum": "1", + "type": "integer" + }, + "metrics": { + "description": "A comma-separated list of YouTube Analytics metrics, such as views or likes,dislikes. See the Available Reports document for a list of the reports that you can retrieve and the metrics available in each report, and see the Metrics document for definitions of those metrics.", + "location": "query", + "pattern": "[0-9a-zA-Z,]+", + "required": true, + "type": "string" + }, + "sort": { + "description": "A comma-separated list of dimensions or metrics that determine the sort order for YouTube Analytics data. By default the sort order is ascending. The '-' prefix causes descending sort order.", + "location": "query", + "pattern": "[-0-9a-zA-Z,]+", + "type": "string" + }, + "start-date": { + "description": "The start date for fetching YouTube Analytics data. The value should be in YYYY-MM-DD format.", + "location": "query", + "pattern": "[0-9]{4}-[0-9]{2}-[0-9]{2}", + "required": true, + "type": "string" + }, + "start-index": { + "description": "An index of the first entity to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter (one-based, inclusive).", + "format": "int32", + "location": "query", + "minimum": "1", + "type": "integer" + } + }, + "path": "reports", + "response": { + "$ref": "ResultTable" + }, + "scopes": [ + "https://www.googleapis.com/auth/youtube", + "https://www.googleapis.com/auth/youtube.readonly", + "https://www.googleapis.com/auth/yt-analytics-monetary.readonly", + "https://www.googleapis.com/auth/yt-analytics.readonly" + ] + } } - } } - } }, - "GroupItemListResponse": { - "id": "GroupItemListResponse", - "type": "object", - "description": "A paginated list of grouList resources returned in response to a youtubeAnalytics.groupApi.list request.", - "properties": { - "etag": { - "type": "string" - }, - "items": { - "type": "array", - "items": { - "$ref": "GroupItem" - } - }, - "kind": { - "type": "string", - "default": "youtube#groupItemListResponse" - } - } - }, - "GroupListResponse": { - "id": "GroupListResponse", - "type": "object", - "description": "A paginated list of grouList resources returned in response to a youtubeAnalytics.groupApi.list request.", - "properties": { - "etag": { - "type": "string" - }, - "items": { - "type": "array", - "items": { - "$ref": "Group" - } - }, - "kind": { - "type": "string", - "default": "youtube#groupListResponse" - }, - "nextPageToken": { - "type": "string" - } - } - }, - "ResultTable": { - "id": "ResultTable", - "type": "object", - "description": "Contains a single result table. The table is returned as an array of rows that contain the values for the cells of the table. Depending on the metric or dimension, the cell can contain a string (video ID, country code) or a number (number of views or number of likes).", - "properties": { - "columnHeaders": { - "type": "array", - "description": "This value specifies information about the data returned in the rows fields. Each item in the columnHeaders list identifies a field returned in the rows value, which contains a list of comma-delimited data. The columnHeaders list will begin with the dimensions specified in the API request, which will be followed by the metrics specified in the API request. The order of both dimensions and metrics will match the ordering in the API request. For example, if the API request contains the parameters dimensions=ageGroup,gender&metrics=viewerPercentage, the API response will return columns in this order: ageGroup,gender,viewerPercentage.", - "items": { - "type": "object", + "revision": "20180205", + "rootUrl": "https://www.googleapis.com/", + "schemas": { + "Group": { + "id": "Group", "properties": { - "columnType": { - "type": "string", - "description": "The type of the column (DIMENSION or METRIC)." - }, - "dataType": { - "type": "string", - "description": "The type of the data in the column (STRING, INTEGER, FLOAT, etc.)." - }, - "name": { - "type": "string", - "description": "The name of the dimension or metric." - } - } - } - }, - "kind": { - "type": "string", - "description": "This value specifies the type of data included in the API response. For the query method, the kind property value will be youtubeAnalytics#resultTable.", - "default": "youtubeAnalytics#resultTable" - }, - "rows": { - "type": "array", - "description": "The list contains all rows of the result table. Each item in the list is an array that contains comma-delimited data corresponding to a single row of data. The order of the comma-delimited data fields will match the order of the columns listed in the columnHeaders field. If no data is available for the given query, the rows element will be omitted from the response. The response for a query with the day dimension will not contain rows for the most recent days.", - "items": { - "type": "array", - "items": { - "type": "any" - } - } - } - } - } - }, - "resources": { - "groupItems": { - "methods": { - "delete": { - "id": "youtubeAnalytics.groupItems.delete", - "path": "groupItems", - "httpMethod": "DELETE", - "description": "Removes an item from a group.", - "parameters": { - "id": { - "type": "string", - "description": "The id parameter specifies the YouTube group item ID for the group that is being deleted.", - "required": true, - "location": "query" + "contentDetails": { + "properties": { + "itemCount": { + "format": "uint64", + "type": "string" + }, + "itemType": { + "type": "string" + } + }, + "type": "object" + }, + "etag": { + "type": "string" + }, + "id": { + "type": "string" + }, + "kind": { + "default": "youtube#group", + "type": "string" + }, + "snippet": { + "properties": { + "publishedAt": { + "format": "date-time", + "type": "string" + }, + "title": { + "type": "string" + } + }, + "type": "object" + } }, - "onBehalfOfContentOwner": { - "type": "string", - "description": "Note: This parameter is intended exclusively for YouTube content partners.\n\nThe onBehalfOfContentOwner parameter indicates that the request's authorization credentials identify a YouTube CMS user who is acting on behalf of the content owner specified in the parameter value. This parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to provide authentication credentials for each individual channel. The CMS account that the user authenticates with must be linked to the specified YouTube content owner.", - "location": "query" - } - }, - "parameterOrder": [ - "id" - ], - "scopes": [ - "https://www.googleapis.com/auth/youtube", - "https://www.googleapis.com/auth/youtubepartner" - ] + "type": "object" }, - "insert": { - "id": "youtubeAnalytics.groupItems.insert", - "path": "groupItems", - "httpMethod": "POST", - "description": "Creates a group item.", - "parameters": { - "onBehalfOfContentOwner": { - "type": "string", - "description": "Note: This parameter is intended exclusively for YouTube content partners.\n\nThe onBehalfOfContentOwner parameter indicates that the request's authorization credentials identify a YouTube CMS user who is acting on behalf of the content owner specified in the parameter value. This parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to provide authentication credentials for each individual channel. The CMS account that the user authenticates with must be linked to the specified YouTube content owner.", - "location": "query" - } - }, - "request": { - "$ref": "GroupItem" - }, - "response": { - "$ref": "GroupItem" - }, - "scopes": [ - "https://www.googleapis.com/auth/youtube", - "https://www.googleapis.com/auth/youtubepartner" - ] - }, - "list": { - "id": "youtubeAnalytics.groupItems.list", - "path": "groupItems", - "httpMethod": "GET", - "description": "Returns a collection of group items that match the API request parameters.", - "parameters": { - "groupId": { - "type": "string", - "description": "The id parameter specifies the unique ID of the group for which you want to retrieve group items.", - "required": true, - "location": "query" + "GroupItem": { + "id": "GroupItem", + "properties": { + "etag": { + "type": "string" + }, + "groupId": { + "type": "string" + }, + "id": { + "type": "string" + }, + "kind": { + "default": "youtube#groupItem", + "type": "string" + }, + "resource": { + "properties": { + "id": { + "type": "string" + }, + "kind": { + "type": "string" + } + }, + "type": "object" + } }, - "onBehalfOfContentOwner": { - "type": "string", - "description": "Note: This parameter is intended exclusively for YouTube content partners.\n\nThe onBehalfOfContentOwner parameter indicates that the request's authorization credentials identify a YouTube CMS user who is acting on behalf of the content owner specified in the parameter value. This parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to provide authentication credentials for each individual channel. The CMS account that the user authenticates with must be linked to the specified YouTube content owner.", - "location": "query" - } - }, - "parameterOrder": [ - "groupId" - ], - "response": { - "$ref": "GroupItemListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/youtube", - "https://www.googleapis.com/auth/youtube.readonly", - "https://www.googleapis.com/auth/youtubepartner", - "https://www.googleapis.com/auth/yt-analytics.readonly" - ] + "type": "object" + }, + "GroupItemListResponse": { + "description": "A paginated list of grouList resources returned in response to a youtubeAnalytics.groupApi.list request.", + "id": "GroupItemListResponse", + "properties": { + "etag": { + "type": "string" + }, + "items": { + "items": { + "$ref": "GroupItem" + }, + "type": "array" + }, + "kind": { + "default": "youtube#groupItemListResponse", + "type": "string" + } + }, + "type": "object" + }, + "GroupListResponse": { + "description": "A paginated list of grouList resources returned in response to a youtubeAnalytics.groupApi.list request.", + "id": "GroupListResponse", + "properties": { + "etag": { + "type": "string" + }, + "items": { + "items": { + "$ref": "Group" + }, + "type": "array" + }, + "kind": { + "default": "youtube#groupListResponse", + "type": "string" + }, + "nextPageToken": { + "type": "string" + } + }, + "type": "object" + }, + "ResultTable": { + "description": "Contains a single result table. The table is returned as an array of rows that contain the values for the cells of the table. Depending on the metric or dimension, the cell can contain a string (video ID, country code) or a number (number of views or number of likes).", + "id": "ResultTable", + "properties": { + "columnHeaders": { + "description": "This value specifies information about the data returned in the rows fields. Each item in the columnHeaders list identifies a field returned in the rows value, which contains a list of comma-delimited data. The columnHeaders list will begin with the dimensions specified in the API request, which will be followed by the metrics specified in the API request. The order of both dimensions and metrics will match the ordering in the API request. For example, if the API request contains the parameters dimensions=ageGroup,gender\u0026metrics=viewerPercentage, the API response will return columns in this order: ageGroup,gender,viewerPercentage.", + "items": { + "properties": { + "columnType": { + "description": "The type of the column (DIMENSION or METRIC).", + "type": "string" + }, + "dataType": { + "description": "The type of the data in the column (STRING, INTEGER, FLOAT, etc.).", + "type": "string" + }, + "name": { + "description": "The name of the dimension or metric.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "kind": { + "default": "youtubeAnalytics#resultTable", + "description": "This value specifies the type of data included in the API response. For the query method, the kind property value will be youtubeAnalytics#resultTable.", + "type": "string" + }, + "rows": { + "description": "The list contains all rows of the result table. Each item in the list is an array that contains comma-delimited data corresponding to a single row of data. The order of the comma-delimited data fields will match the order of the columns listed in the columnHeaders field. If no data is available for the given query, the rows element will be omitted from the response. The response for a query with the day dimension will not contain rows for the most recent days.", + "items": { + "items": { + "type": "any" + }, + "type": "array" + }, + "type": "array" + } + }, + "type": "object" } - } }, - "groups": { - "methods": { - "delete": { - "id": "youtubeAnalytics.groups.delete", - "path": "groups", - "httpMethod": "DELETE", - "description": "Deletes a group.", - "parameters": { - "id": { - "type": "string", - "description": "The id parameter specifies the YouTube group ID for the group that is being deleted.", - "required": true, - "location": "query" - }, - "onBehalfOfContentOwner": { - "type": "string", - "description": "Note: This parameter is intended exclusively for YouTube content partners.\n\nThe onBehalfOfContentOwner parameter indicates that the request's authorization credentials identify a YouTube CMS user who is acting on behalf of the content owner specified in the parameter value. This parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to provide authentication credentials for each individual channel. The CMS account that the user authenticates with must be linked to the specified YouTube content owner.", - "location": "query" - } - }, - "parameterOrder": [ - "id" - ], - "scopes": [ - "https://www.googleapis.com/auth/youtube", - "https://www.googleapis.com/auth/youtubepartner" - ] - }, - "insert": { - "id": "youtubeAnalytics.groups.insert", - "path": "groups", - "httpMethod": "POST", - "description": "Creates a group.", - "parameters": { - "onBehalfOfContentOwner": { - "type": "string", - "description": "Note: This parameter is intended exclusively for YouTube content partners.\n\nThe onBehalfOfContentOwner parameter indicates that the request's authorization credentials identify a YouTube CMS user who is acting on behalf of the content owner specified in the parameter value. This parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to provide authentication credentials for each individual channel. The CMS account that the user authenticates with must be linked to the specified YouTube content owner.", - "location": "query" - } - }, - "request": { - "$ref": "Group" - }, - "response": { - "$ref": "Group" - }, - "scopes": [ - "https://www.googleapis.com/auth/youtube", - "https://www.googleapis.com/auth/youtubepartner" - ] - }, - "list": { - "id": "youtubeAnalytics.groups.list", - "path": "groups", - "httpMethod": "GET", - "description": "Returns a collection of groups that match the API request parameters. For example, you can retrieve all groups that the authenticated user owns, or you can retrieve one or more groups by their unique IDs.", - "parameters": { - "id": { - "type": "string", - "description": "The id parameter specifies a comma-separated list of the YouTube group ID(s) for the resource(s) that are being retrieved. In a group resource, the id property specifies the group's YouTube group ID.", - "location": "query" - }, - "mine": { - "type": "boolean", - "description": "Set this parameter's value to true to instruct the API to only return groups owned by the authenticated user.", - "location": "query" - }, - "onBehalfOfContentOwner": { - "type": "string", - "description": "Note: This parameter is intended exclusively for YouTube content partners.\n\nThe onBehalfOfContentOwner parameter indicates that the request's authorization credentials identify a YouTube CMS user who is acting on behalf of the content owner specified in the parameter value. This parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to provide authentication credentials for each individual channel. The CMS account that the user authenticates with must be linked to the specified YouTube content owner.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "The pageToken parameter identifies a specific page in the result set that should be returned. In an API response, the nextPageToken property identifies the next page that can be retrieved.", - "location": "query" - } - }, - "response": { - "$ref": "GroupListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/youtube", - "https://www.googleapis.com/auth/youtube.readonly", - "https://www.googleapis.com/auth/youtubepartner", - "https://www.googleapis.com/auth/yt-analytics.readonly" - ] - }, - "update": { - "id": "youtubeAnalytics.groups.update", - "path": "groups", - "httpMethod": "PUT", - "description": "Modifies a group. For example, you could change a group's title.", - "parameters": { - "onBehalfOfContentOwner": { - "type": "string", - "description": "Note: This parameter is intended exclusively for YouTube content partners.\n\nThe onBehalfOfContentOwner parameter indicates that the request's authorization credentials identify a YouTube CMS user who is acting on behalf of the content owner specified in the parameter value. This parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to provide authentication credentials for each individual channel. The CMS account that the user authenticates with must be linked to the specified YouTube content owner.", - "location": "query" - } - }, - "request": { - "$ref": "Group" - }, - "response": { - "$ref": "Group" - }, - "scopes": [ - "https://www.googleapis.com/auth/youtube", - "https://www.googleapis.com/auth/youtubepartner" - ] - } - } - }, - "reports": { - "methods": { - "query": { - "id": "youtubeAnalytics.reports.query", - "path": "reports", - "httpMethod": "GET", - "description": "Retrieve your YouTube Analytics reports.", - "parameters": { - "currency": { - "type": "string", - "description": "The currency to which financial metrics should be converted. The default is US Dollar (USD). If the result contains no financial metrics, this flag will be ignored. Responds with an error if the specified currency is not recognized.", - "pattern": "[A-Z]{3}", - "location": "query" - }, - "dimensions": { - "type": "string", - "description": "A comma-separated list of YouTube Analytics dimensions, such as views or ageGroup,gender. See the Available Reports document for a list of the reports that you can retrieve and the dimensions used for those reports. Also see the Dimensions document for definitions of those dimensions.", - "pattern": "[0-9a-zA-Z,]+", - "location": "query" - }, - "end-date": { - "type": "string", - "description": "The end date for fetching YouTube Analytics data. The value should be in YYYY-MM-DD format.", - "required": true, - "pattern": "[0-9]{4}-[0-9]{2}-[0-9]{2}", - "location": "query" - }, - "filters": { - "type": "string", - "description": "A list of filters that should be applied when retrieving YouTube Analytics data. The Available Reports document identifies the dimensions that can be used to filter each report, and the Dimensions document defines those dimensions. If a request uses multiple filters, join them together with a semicolon (;), and the returned result table will satisfy both filters. For example, a filters parameter value of video==dMH0bHeiRNg;country==IT restricts the result set to include data for the given video in Italy.", - "location": "query" - }, - "ids": { - "type": "string", - "description": "Identifies the YouTube channel or content owner for which you are retrieving YouTube Analytics data.\n- To request data for a YouTube user, set the ids parameter value to channel==CHANNEL_ID, where CHANNEL_ID specifies the unique YouTube channel ID.\n- To request data for a YouTube CMS content owner, set the ids parameter value to contentOwner==OWNER_NAME, where OWNER_NAME is the CMS name of the content owner.", - "required": true, - "pattern": "[a-zA-Z]+==[a-zA-Z0-9_+-]+", - "location": "query" - }, - "include-historical-channel-data": { - "type": "boolean", - "description": "If set to true historical data (i.e. channel data from before the linking of the channel to the content owner) will be retrieved.", - "location": "query" - }, - "max-results": { - "type": "integer", - "description": "The maximum number of rows to include in the response.", - "format": "int32", - "minimum": "1", - "location": "query" - }, - "metrics": { - "type": "string", - "description": "A comma-separated list of YouTube Analytics metrics, such as views or likes,dislikes. See the Available Reports document for a list of the reports that you can retrieve and the metrics available in each report, and see the Metrics document for definitions of those metrics.", - "required": true, - "pattern": "[0-9a-zA-Z,]+", - "location": "query" - }, - "sort": { - "type": "string", - "description": "A comma-separated list of dimensions or metrics that determine the sort order for YouTube Analytics data. By default the sort order is ascending. The '-' prefix causes descending sort order.", - "pattern": "[-0-9a-zA-Z,]+", - "location": "query" - }, - "start-date": { - "type": "string", - "description": "The start date for fetching YouTube Analytics data. The value should be in YYYY-MM-DD format.", - "required": true, - "pattern": "[0-9]{4}-[0-9]{2}-[0-9]{2}", - "location": "query" - }, - "start-index": { - "type": "integer", - "description": "An index of the first entity to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter (one-based, inclusive).", - "format": "int32", - "minimum": "1", - "location": "query" - } - }, - "parameterOrder": [ - "ids", - "start-date", - "end-date", - "metrics" - ], - "response": { - "$ref": "ResultTable" - }, - "scopes": [ - "https://www.googleapis.com/auth/youtube", - "https://www.googleapis.com/auth/youtube.readonly", - "https://www.googleapis.com/auth/yt-analytics-monetary.readonly", - "https://www.googleapis.com/auth/yt-analytics.readonly" - ] - } - } - } - } -} + "servicePath": "youtube/analytics/v1/", + "title": "YouTube Analytics API", + "version": "v1" +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/youtubeanalytics/v1beta1/youtubeanalytics-api.json b/vendor/google.golang.org/api/youtubeanalytics/v1beta1/youtubeanalytics-api.json index a58bd6c26..c4518f083 100644 --- a/vendor/google.golang.org/api/youtubeanalytics/v1beta1/youtubeanalytics-api.json +++ b/vendor/google.golang.org/api/youtubeanalytics/v1beta1/youtubeanalytics-api.json @@ -1,550 +1,550 @@ { - "kind": "discovery#restDescription", - "etag": "\"YWOzh2SDasdU84ArJnpYek-OMdg/7ntJIFhXAMpoi22k7BYPHzYytS0\"", - "discoveryVersion": "v1", - "id": "youtubeAnalytics:v1beta1", - "name": "youtubeAnalytics", - "canonicalName": "YouTube Analytics", - "version": "v1beta1", - "revision": "20170913", - "title": "YouTube Analytics API", - "description": "Retrieves your YouTube Analytics data.", - "ownerDomain": "google.com", - "ownerName": "Google", - "icons": { - "x16": "https://www.google.com/images/icons/product/youtube-16.png", - "x32": "https://www.google.com/images/icons/product/youtube-32.png" - }, - "documentationLink": "http://developers.google.com/youtube/analytics/", - "labels": [ - "deprecated" - ], - "protocol": "rest", - "baseUrl": "https://www.googleapis.com/youtube/analytics/v1beta1/", - "basePath": "/youtube/analytics/v1beta1/", - "rootUrl": "https://www.googleapis.com/", - "servicePath": "youtube/analytics/v1beta1/", - "batchPath": "batch/youtubeAnalytics/v1beta1", - "parameters": { - "alt": { - "type": "string", - "description": "Data format for the response.", - "default": "json", - "enum": [ - "csv", - "json" - ], - "enumDescriptions": [ - "Responses with Content-Type of text/csv", - "Responses with Content-Type of application/json" - ], - "location": "query" - }, - "fields": { - "type": "string", - "description": "Selector specifying which fields to include in a partial response.", - "location": "query" - }, - "key": { - "type": "string", - "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" - }, - "oauth_token": { - "type": "string", - "description": "OAuth 2.0 token for the current user.", - "location": "query" - }, - "prettyPrint": { - "type": "boolean", - "description": "Returns response with indentations and line breaks.", - "default": "true", - "location": "query" - }, - "quotaUser": { - "type": "string", - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", - "location": "query" - }, - "userIp": { - "type": "string", - "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", - "location": "query" - } - }, - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/youtube": { - "description": "Manage your YouTube account" - }, - "https://www.googleapis.com/auth/youtube.readonly": { - "description": "View your YouTube account" - }, - "https://www.googleapis.com/auth/youtubepartner": { - "description": "View and manage your assets and associated content on YouTube" - }, - "https://www.googleapis.com/auth/yt-analytics-monetary.readonly": { - "description": "View monetary and non-monetary YouTube Analytics reports for your YouTube content" - }, - "https://www.googleapis.com/auth/yt-analytics.readonly": { - "description": "View YouTube Analytics reports for your YouTube content" - } - } - } - }, - "schemas": { - "Group": { - "id": "Group", - "type": "object", - "properties": { - "contentDetails": { - "type": "object", - "properties": { - "itemCount": { - "type": "string", - "format": "uint64" - }, - "itemType": { - "type": "string" + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/youtube": { + "description": "Manage your YouTube account" + }, + "https://www.googleapis.com/auth/youtube.readonly": { + "description": "View your YouTube account" + }, + "https://www.googleapis.com/auth/youtubepartner": { + "description": "View and manage your assets and associated content on YouTube" + }, + "https://www.googleapis.com/auth/yt-analytics-monetary.readonly": { + "description": "View monetary and non-monetary YouTube Analytics reports for your YouTube content" + }, + "https://www.googleapis.com/auth/yt-analytics.readonly": { + "description": "View YouTube Analytics reports for your YouTube content" + } } - } + } + }, + "basePath": "/youtube/analytics/v1beta1/", + "baseUrl": "https://www.googleapis.com/youtube/analytics/v1beta1/", + "batchPath": "batch/youtubeAnalytics/v1beta1", + "canonicalName": "YouTube Analytics", + "description": "Retrieves your YouTube Analytics data.", + "discoveryVersion": "v1", + "documentationLink": "http://developers.google.com/youtube/analytics/", + "etag": "\"-iA1DTNe4s-I6JZXPt1t1Ypy8IU/KfUmPVzHT0UX1PxOBh_EzC81PPw\"", + "icons": { + "x16": "https://www.google.com/images/icons/product/youtube-16.png", + "x32": "https://www.google.com/images/icons/product/youtube-32.png" + }, + "id": "youtubeAnalytics:v1beta1", + "kind": "discovery#restDescription", + "labels": [ + "deprecated" + ], + "name": "youtubeAnalytics", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "alt": { + "default": "json", + "description": "Data format for the response.", + "enum": [ + "csv", + "json" + ], + "enumDescriptions": [ + "Responses with Content-Type of text/csv", + "Responses with Content-Type of application/json" + ], + "location": "query", + "type": "string" }, - "etag": { - "type": "string" + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "location": "query", + "type": "string" }, - "id": { - "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.", + "location": "query", + "type": "string" }, - "kind": { - "type": "string", - "default": "youtube#group" + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" }, - "snippet": { - "type": "object", - "properties": { - "publishedAt": { - "type": "string", - "format": "date-time" - }, - "title": { - "type": "string" + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", + "location": "query", + "type": "string" + }, + "userIp": { + "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", + "location": "query", + "type": "string" + } + }, + "protocol": "rest", + "resources": { + "groupItems": { + "methods": { + "delete": { + "description": "Removes an item from a group.", + "httpMethod": "DELETE", + "id": "youtubeAnalytics.groupItems.delete", + "parameterOrder": [ + "id" + ], + "parameters": { + "id": { + "description": "The id parameter specifies the YouTube group item ID for the group that is being deleted.", + "location": "query", + "required": true, + "type": "string" + }, + "onBehalfOfContentOwner": { + "description": "Note: This parameter is intended exclusively for YouTube content partners.\n\nThe onBehalfOfContentOwner parameter indicates that the request's authorization credentials identify a YouTube CMS user who is acting on behalf of the content owner specified in the parameter value. This parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to provide authentication credentials for each individual channel. The CMS account that the user authenticates with must be linked to the specified YouTube content owner.", + "location": "query", + "type": "string" + } + }, + "path": "groupItems", + "scopes": [ + "https://www.googleapis.com/auth/youtube", + "https://www.googleapis.com/auth/youtubepartner" + ] + }, + "insert": { + "description": "Creates a group item.", + "httpMethod": "POST", + "id": "youtubeAnalytics.groupItems.insert", + "parameters": { + "onBehalfOfContentOwner": { + "description": "Note: This parameter is intended exclusively for YouTube content partners.\n\nThe onBehalfOfContentOwner parameter indicates that the request's authorization credentials identify a YouTube CMS user who is acting on behalf of the content owner specified in the parameter value. This parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to provide authentication credentials for each individual channel. The CMS account that the user authenticates with must be linked to the specified YouTube content owner.", + "location": "query", + "type": "string" + } + }, + "path": "groupItems", + "request": { + "$ref": "GroupItem" + }, + "response": { + "$ref": "GroupItem" + }, + "scopes": [ + "https://www.googleapis.com/auth/youtube", + "https://www.googleapis.com/auth/youtubepartner" + ] + }, + "list": { + "description": "Returns a collection of group items that match the API request parameters.", + "httpMethod": "GET", + "id": "youtubeAnalytics.groupItems.list", + "parameterOrder": [ + "groupId" + ], + "parameters": { + "groupId": { + "description": "The id parameter specifies the unique ID of the group for which you want to retrieve group items.", + "location": "query", + "required": true, + "type": "string" + }, + "onBehalfOfContentOwner": { + "description": "Note: This parameter is intended exclusively for YouTube content partners.\n\nThe onBehalfOfContentOwner parameter indicates that the request's authorization credentials identify a YouTube CMS user who is acting on behalf of the content owner specified in the parameter value. This parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to provide authentication credentials for each individual channel. The CMS account that the user authenticates with must be linked to the specified YouTube content owner.", + "location": "query", + "type": "string" + } + }, + "path": "groupItems", + "response": { + "$ref": "GroupItemListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/youtube", + "https://www.googleapis.com/auth/youtube.readonly", + "https://www.googleapis.com/auth/youtubepartner", + "https://www.googleapis.com/auth/yt-analytics.readonly" + ] + } } - } - } - } - }, - "GroupItem": { - "id": "GroupItem", - "type": "object", - "properties": { - "etag": { - "type": "string" }, - "groupId": { - "type": "string" - }, - "id": { - "type": "string" - }, - "kind": { - "type": "string", - "default": "youtube#groupItem" - }, - "resource": { - "type": "object", - "properties": { - "id": { - "type": "string" - }, - "kind": { - "type": "string" + "groups": { + "methods": { + "delete": { + "description": "Deletes a group.", + "httpMethod": "DELETE", + "id": "youtubeAnalytics.groups.delete", + "parameterOrder": [ + "id" + ], + "parameters": { + "id": { + "description": "The id parameter specifies the YouTube group ID for the group that is being deleted.", + "location": "query", + "required": true, + "type": "string" + }, + "onBehalfOfContentOwner": { + "description": "Note: This parameter is intended exclusively for YouTube content partners.\n\nThe onBehalfOfContentOwner parameter indicates that the request's authorization credentials identify a YouTube CMS user who is acting on behalf of the content owner specified in the parameter value. This parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to provide authentication credentials for each individual channel. The CMS account that the user authenticates with must be linked to the specified YouTube content owner.", + "location": "query", + "type": "string" + } + }, + "path": "groups", + "scopes": [ + "https://www.googleapis.com/auth/youtube", + "https://www.googleapis.com/auth/youtubepartner" + ] + }, + "insert": { + "description": "Creates a group.", + "httpMethod": "POST", + "id": "youtubeAnalytics.groups.insert", + "parameters": { + "onBehalfOfContentOwner": { + "description": "Note: This parameter is intended exclusively for YouTube content partners.\n\nThe onBehalfOfContentOwner parameter indicates that the request's authorization credentials identify a YouTube CMS user who is acting on behalf of the content owner specified in the parameter value. This parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to provide authentication credentials for each individual channel. The CMS account that the user authenticates with must be linked to the specified YouTube content owner.", + "location": "query", + "type": "string" + } + }, + "path": "groups", + "request": { + "$ref": "Group" + }, + "response": { + "$ref": "Group" + }, + "scopes": [ + "https://www.googleapis.com/auth/youtube", + "https://www.googleapis.com/auth/youtubepartner" + ] + }, + "list": { + "description": "Returns a collection of groups that match the API request parameters. For example, you can retrieve all groups that the authenticated user owns, or you can retrieve one or more groups by their unique IDs.", + "httpMethod": "GET", + "id": "youtubeAnalytics.groups.list", + "parameters": { + "id": { + "description": "The id parameter specifies a comma-separated list of the YouTube group ID(s) for the resource(s) that are being retrieved. In a group resource, the id property specifies the group's YouTube group ID.", + "location": "query", + "type": "string" + }, + "mine": { + "description": "Set this parameter's value to true to instruct the API to only return groups owned by the authenticated user.", + "location": "query", + "type": "boolean" + }, + "onBehalfOfContentOwner": { + "description": "Note: This parameter is intended exclusively for YouTube content partners.\n\nThe onBehalfOfContentOwner parameter indicates that the request's authorization credentials identify a YouTube CMS user who is acting on behalf of the content owner specified in the parameter value. This parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to provide authentication credentials for each individual channel. The CMS account that the user authenticates with must be linked to the specified YouTube content owner.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "The pageToken parameter identifies a specific page in the result set that should be returned. In an API response, the nextPageToken property identifies the next page that can be retrieved.", + "location": "query", + "type": "string" + } + }, + "path": "groups", + "response": { + "$ref": "GroupListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/youtube", + "https://www.googleapis.com/auth/youtube.readonly", + "https://www.googleapis.com/auth/youtubepartner", + "https://www.googleapis.com/auth/yt-analytics.readonly" + ] + }, + "update": { + "description": "Modifies a group. For example, you could change a group's title.", + "httpMethod": "PUT", + "id": "youtubeAnalytics.groups.update", + "parameters": { + "onBehalfOfContentOwner": { + "description": "Note: This parameter is intended exclusively for YouTube content partners.\n\nThe onBehalfOfContentOwner parameter indicates that the request's authorization credentials identify a YouTube CMS user who is acting on behalf of the content owner specified in the parameter value. This parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to provide authentication credentials for each individual channel. The CMS account that the user authenticates with must be linked to the specified YouTube content owner.", + "location": "query", + "type": "string" + } + }, + "path": "groups", + "request": { + "$ref": "Group" + }, + "response": { + "$ref": "Group" + }, + "scopes": [ + "https://www.googleapis.com/auth/youtube", + "https://www.googleapis.com/auth/youtubepartner" + ] + } + } + }, + "reports": { + "methods": { + "query": { + "description": "Retrieve your YouTube Analytics reports.", + "httpMethod": "GET", + "id": "youtubeAnalytics.reports.query", + "parameterOrder": [ + "ids", + "start-date", + "end-date", + "metrics" + ], + "parameters": { + "currency": { + "description": "The currency to which financial metrics should be converted. The default is US Dollar (USD). If the result contains no financial metrics, this flag will be ignored. Responds with an error if the specified currency is not recognized.", + "location": "query", + "pattern": "[A-Z]{3}", + "type": "string" + }, + "dimensions": { + "description": "A comma-separated list of YouTube Analytics dimensions, such as views or ageGroup,gender. See the Available Reports document for a list of the reports that you can retrieve and the dimensions used for those reports. Also see the Dimensions document for definitions of those dimensions.", + "location": "query", + "pattern": "[0-9a-zA-Z,]+", + "type": "string" + }, + "end-date": { + "description": "The end date for fetching YouTube Analytics data. The value should be in YYYY-MM-DD format.", + "location": "query", + "pattern": "[0-9]{4}-[0-9]{2}-[0-9]{2}", + "required": true, + "type": "string" + }, + "filters": { + "description": "A list of filters that should be applied when retrieving YouTube Analytics data. The Available Reports document identifies the dimensions that can be used to filter each report, and the Dimensions document defines those dimensions. If a request uses multiple filters, join them together with a semicolon (;), and the returned result table will satisfy both filters. For example, a filters parameter value of video==dMH0bHeiRNg;country==IT restricts the result set to include data for the given video in Italy.", + "location": "query", + "type": "string" + }, + "ids": { + "description": "Identifies the YouTube channel or content owner for which you are retrieving YouTube Analytics data.\n- To request data for a YouTube user, set the ids parameter value to channel==CHANNEL_ID, where CHANNEL_ID specifies the unique YouTube channel ID.\n- To request data for a YouTube CMS content owner, set the ids parameter value to contentOwner==OWNER_NAME, where OWNER_NAME is the CMS name of the content owner.", + "location": "query", + "pattern": "[a-zA-Z]+==[a-zA-Z0-9_+-]+", + "required": true, + "type": "string" + }, + "include-historical-channel-data": { + "description": "If set to true historical data (i.e. channel data from before the linking of the channel to the content owner) will be retrieved.", + "location": "query", + "type": "boolean" + }, + "max-results": { + "description": "The maximum number of rows to include in the response.", + "format": "int32", + "location": "query", + "minimum": "1", + "type": "integer" + }, + "metrics": { + "description": "A comma-separated list of YouTube Analytics metrics, such as views or likes,dislikes. See the Available Reports document for a list of the reports that you can retrieve and the metrics available in each report, and see the Metrics document for definitions of those metrics.", + "location": "query", + "pattern": "[0-9a-zA-Z,]+", + "required": true, + "type": "string" + }, + "sort": { + "description": "A comma-separated list of dimensions or metrics that determine the sort order for YouTube Analytics data. By default the sort order is ascending. The '-' prefix causes descending sort order.", + "location": "query", + "pattern": "[-0-9a-zA-Z,]+", + "type": "string" + }, + "start-date": { + "description": "The start date for fetching YouTube Analytics data. The value should be in YYYY-MM-DD format.", + "location": "query", + "pattern": "[0-9]{4}-[0-9]{2}-[0-9]{2}", + "required": true, + "type": "string" + }, + "start-index": { + "description": "An index of the first entity to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter (one-based, inclusive).", + "format": "int32", + "location": "query", + "minimum": "1", + "type": "integer" + } + }, + "path": "reports", + "response": { + "$ref": "ResultTable" + }, + "scopes": [ + "https://www.googleapis.com/auth/youtube", + "https://www.googleapis.com/auth/youtube.readonly", + "https://www.googleapis.com/auth/yt-analytics-monetary.readonly", + "https://www.googleapis.com/auth/yt-analytics.readonly" + ] + } } - } } - } }, - "GroupItemListResponse": { - "id": "GroupItemListResponse", - "type": "object", - "description": "A paginated list of grouList resources returned in response to a youtubeAnalytics.groupApi.list request.", - "properties": { - "etag": { - "type": "string" - }, - "items": { - "type": "array", - "items": { - "$ref": "GroupItem" - } - }, - "kind": { - "type": "string", - "default": "youtube#groupItemListResponse" - } - } - }, - "GroupListResponse": { - "id": "GroupListResponse", - "type": "object", - "description": "A paginated list of grouList resources returned in response to a youtubeAnalytics.groupApi.list request.", - "properties": { - "etag": { - "type": "string" - }, - "items": { - "type": "array", - "items": { - "$ref": "Group" - } - }, - "kind": { - "type": "string", - "default": "youtube#groupListResponse" - }, - "nextPageToken": { - "type": "string" - } - } - }, - "ResultTable": { - "id": "ResultTable", - "type": "object", - "description": "Contains a single result table. The table is returned as an array of rows that contain the values for the cells of the table. Depending on the metric or dimension, the cell can contain a string (video ID, country code) or a number (number of views or number of likes).", - "properties": { - "columnHeaders": { - "type": "array", - "description": "This value specifies information about the data returned in the rows fields. Each item in the columnHeaders list identifies a field returned in the rows value, which contains a list of comma-delimited data. The columnHeaders list will begin with the dimensions specified in the API request, which will be followed by the metrics specified in the API request. The order of both dimensions and metrics will match the ordering in the API request. For example, if the API request contains the parameters dimensions=ageGroup,gender&metrics=viewerPercentage, the API response will return columns in this order: ageGroup,gender,viewerPercentage.", - "items": { - "type": "object", + "revision": "20180205", + "rootUrl": "https://www.googleapis.com/", + "schemas": { + "Group": { + "id": "Group", "properties": { - "columnType": { - "type": "string", - "description": "The type of the column (DIMENSION or METRIC)." - }, - "dataType": { - "type": "string", - "description": "The type of the data in the column (STRING, INTEGER, FLOAT, etc.)." - }, - "name": { - "type": "string", - "description": "The name of the dimension or metric." - } - } - } - }, - "kind": { - "type": "string", - "description": "This value specifies the type of data included in the API response. For the query method, the kind property value will be youtubeAnalytics#resultTable.", - "default": "youtubeAnalytics#resultTable" - }, - "rows": { - "type": "array", - "description": "The list contains all rows of the result table. Each item in the list is an array that contains comma-delimited data corresponding to a single row of data. The order of the comma-delimited data fields will match the order of the columns listed in the columnHeaders field. If no data is available for the given query, the rows element will be omitted from the response. The response for a query with the day dimension will not contain rows for the most recent days.", - "items": { - "type": "array", - "items": { - "type": "any" - } - } - } - } - } - }, - "resources": { - "groupItems": { - "methods": { - "delete": { - "id": "youtubeAnalytics.groupItems.delete", - "path": "groupItems", - "httpMethod": "DELETE", - "description": "Removes an item from a group.", - "parameters": { - "id": { - "type": "string", - "description": "The id parameter specifies the YouTube group item ID for the group that is being deleted.", - "required": true, - "location": "query" + "contentDetails": { + "properties": { + "itemCount": { + "format": "uint64", + "type": "string" + }, + "itemType": { + "type": "string" + } + }, + "type": "object" + }, + "etag": { + "type": "string" + }, + "id": { + "type": "string" + }, + "kind": { + "default": "youtube#group", + "type": "string" + }, + "snippet": { + "properties": { + "publishedAt": { + "format": "date-time", + "type": "string" + }, + "title": { + "type": "string" + } + }, + "type": "object" + } }, - "onBehalfOfContentOwner": { - "type": "string", - "description": "Note: This parameter is intended exclusively for YouTube content partners.\n\nThe onBehalfOfContentOwner parameter indicates that the request's authorization credentials identify a YouTube CMS user who is acting on behalf of the content owner specified in the parameter value. This parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to provide authentication credentials for each individual channel. The CMS account that the user authenticates with must be linked to the specified YouTube content owner.", - "location": "query" - } - }, - "parameterOrder": [ - "id" - ], - "scopes": [ - "https://www.googleapis.com/auth/youtube", - "https://www.googleapis.com/auth/youtubepartner" - ] + "type": "object" }, - "insert": { - "id": "youtubeAnalytics.groupItems.insert", - "path": "groupItems", - "httpMethod": "POST", - "description": "Creates a group item.", - "parameters": { - "onBehalfOfContentOwner": { - "type": "string", - "description": "Note: This parameter is intended exclusively for YouTube content partners.\n\nThe onBehalfOfContentOwner parameter indicates that the request's authorization credentials identify a YouTube CMS user who is acting on behalf of the content owner specified in the parameter value. This parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to provide authentication credentials for each individual channel. The CMS account that the user authenticates with must be linked to the specified YouTube content owner.", - "location": "query" - } - }, - "request": { - "$ref": "GroupItem" - }, - "response": { - "$ref": "GroupItem" - }, - "scopes": [ - "https://www.googleapis.com/auth/youtube", - "https://www.googleapis.com/auth/youtubepartner" - ] - }, - "list": { - "id": "youtubeAnalytics.groupItems.list", - "path": "groupItems", - "httpMethod": "GET", - "description": "Returns a collection of group items that match the API request parameters.", - "parameters": { - "groupId": { - "type": "string", - "description": "The id parameter specifies the unique ID of the group for which you want to retrieve group items.", - "required": true, - "location": "query" + "GroupItem": { + "id": "GroupItem", + "properties": { + "etag": { + "type": "string" + }, + "groupId": { + "type": "string" + }, + "id": { + "type": "string" + }, + "kind": { + "default": "youtube#groupItem", + "type": "string" + }, + "resource": { + "properties": { + "id": { + "type": "string" + }, + "kind": { + "type": "string" + } + }, + "type": "object" + } }, - "onBehalfOfContentOwner": { - "type": "string", - "description": "Note: This parameter is intended exclusively for YouTube content partners.\n\nThe onBehalfOfContentOwner parameter indicates that the request's authorization credentials identify a YouTube CMS user who is acting on behalf of the content owner specified in the parameter value. This parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to provide authentication credentials for each individual channel. The CMS account that the user authenticates with must be linked to the specified YouTube content owner.", - "location": "query" - } - }, - "parameterOrder": [ - "groupId" - ], - "response": { - "$ref": "GroupItemListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/youtube", - "https://www.googleapis.com/auth/youtube.readonly", - "https://www.googleapis.com/auth/youtubepartner", - "https://www.googleapis.com/auth/yt-analytics.readonly" - ] + "type": "object" + }, + "GroupItemListResponse": { + "description": "A paginated list of grouList resources returned in response to a youtubeAnalytics.groupApi.list request.", + "id": "GroupItemListResponse", + "properties": { + "etag": { + "type": "string" + }, + "items": { + "items": { + "$ref": "GroupItem" + }, + "type": "array" + }, + "kind": { + "default": "youtube#groupItemListResponse", + "type": "string" + } + }, + "type": "object" + }, + "GroupListResponse": { + "description": "A paginated list of grouList resources returned in response to a youtubeAnalytics.groupApi.list request.", + "id": "GroupListResponse", + "properties": { + "etag": { + "type": "string" + }, + "items": { + "items": { + "$ref": "Group" + }, + "type": "array" + }, + "kind": { + "default": "youtube#groupListResponse", + "type": "string" + }, + "nextPageToken": { + "type": "string" + } + }, + "type": "object" + }, + "ResultTable": { + "description": "Contains a single result table. The table is returned as an array of rows that contain the values for the cells of the table. Depending on the metric or dimension, the cell can contain a string (video ID, country code) or a number (number of views or number of likes).", + "id": "ResultTable", + "properties": { + "columnHeaders": { + "description": "This value specifies information about the data returned in the rows fields. Each item in the columnHeaders list identifies a field returned in the rows value, which contains a list of comma-delimited data. The columnHeaders list will begin with the dimensions specified in the API request, which will be followed by the metrics specified in the API request. The order of both dimensions and metrics will match the ordering in the API request. For example, if the API request contains the parameters dimensions=ageGroup,gender\u0026metrics=viewerPercentage, the API response will return columns in this order: ageGroup,gender,viewerPercentage.", + "items": { + "properties": { + "columnType": { + "description": "The type of the column (DIMENSION or METRIC).", + "type": "string" + }, + "dataType": { + "description": "The type of the data in the column (STRING, INTEGER, FLOAT, etc.).", + "type": "string" + }, + "name": { + "description": "The name of the dimension or metric.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "kind": { + "default": "youtubeAnalytics#resultTable", + "description": "This value specifies the type of data included in the API response. For the query method, the kind property value will be youtubeAnalytics#resultTable.", + "type": "string" + }, + "rows": { + "description": "The list contains all rows of the result table. Each item in the list is an array that contains comma-delimited data corresponding to a single row of data. The order of the comma-delimited data fields will match the order of the columns listed in the columnHeaders field. If no data is available for the given query, the rows element will be omitted from the response. The response for a query with the day dimension will not contain rows for the most recent days.", + "items": { + "items": { + "type": "any" + }, + "type": "array" + }, + "type": "array" + } + }, + "type": "object" } - } }, - "groups": { - "methods": { - "delete": { - "id": "youtubeAnalytics.groups.delete", - "path": "groups", - "httpMethod": "DELETE", - "description": "Deletes a group.", - "parameters": { - "id": { - "type": "string", - "description": "The id parameter specifies the YouTube group ID for the group that is being deleted.", - "required": true, - "location": "query" - }, - "onBehalfOfContentOwner": { - "type": "string", - "description": "Note: This parameter is intended exclusively for YouTube content partners.\n\nThe onBehalfOfContentOwner parameter indicates that the request's authorization credentials identify a YouTube CMS user who is acting on behalf of the content owner specified in the parameter value. This parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to provide authentication credentials for each individual channel. The CMS account that the user authenticates with must be linked to the specified YouTube content owner.", - "location": "query" - } - }, - "parameterOrder": [ - "id" - ], - "scopes": [ - "https://www.googleapis.com/auth/youtube", - "https://www.googleapis.com/auth/youtubepartner" - ] - }, - "insert": { - "id": "youtubeAnalytics.groups.insert", - "path": "groups", - "httpMethod": "POST", - "description": "Creates a group.", - "parameters": { - "onBehalfOfContentOwner": { - "type": "string", - "description": "Note: This parameter is intended exclusively for YouTube content partners.\n\nThe onBehalfOfContentOwner parameter indicates that the request's authorization credentials identify a YouTube CMS user who is acting on behalf of the content owner specified in the parameter value. This parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to provide authentication credentials for each individual channel. The CMS account that the user authenticates with must be linked to the specified YouTube content owner.", - "location": "query" - } - }, - "request": { - "$ref": "Group" - }, - "response": { - "$ref": "Group" - }, - "scopes": [ - "https://www.googleapis.com/auth/youtube", - "https://www.googleapis.com/auth/youtubepartner" - ] - }, - "list": { - "id": "youtubeAnalytics.groups.list", - "path": "groups", - "httpMethod": "GET", - "description": "Returns a collection of groups that match the API request parameters. For example, you can retrieve all groups that the authenticated user owns, or you can retrieve one or more groups by their unique IDs.", - "parameters": { - "id": { - "type": "string", - "description": "The id parameter specifies a comma-separated list of the YouTube group ID(s) for the resource(s) that are being retrieved. In a group resource, the id property specifies the group's YouTube group ID.", - "location": "query" - }, - "mine": { - "type": "boolean", - "description": "Set this parameter's value to true to instruct the API to only return groups owned by the authenticated user.", - "location": "query" - }, - "onBehalfOfContentOwner": { - "type": "string", - "description": "Note: This parameter is intended exclusively for YouTube content partners.\n\nThe onBehalfOfContentOwner parameter indicates that the request's authorization credentials identify a YouTube CMS user who is acting on behalf of the content owner specified in the parameter value. This parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to provide authentication credentials for each individual channel. The CMS account that the user authenticates with must be linked to the specified YouTube content owner.", - "location": "query" - }, - "pageToken": { - "type": "string", - "description": "The pageToken parameter identifies a specific page in the result set that should be returned. In an API response, the nextPageToken property identifies the next page that can be retrieved.", - "location": "query" - } - }, - "response": { - "$ref": "GroupListResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/youtube", - "https://www.googleapis.com/auth/youtube.readonly", - "https://www.googleapis.com/auth/youtubepartner", - "https://www.googleapis.com/auth/yt-analytics.readonly" - ] - }, - "update": { - "id": "youtubeAnalytics.groups.update", - "path": "groups", - "httpMethod": "PUT", - "description": "Modifies a group. For example, you could change a group's title.", - "parameters": { - "onBehalfOfContentOwner": { - "type": "string", - "description": "Note: This parameter is intended exclusively for YouTube content partners.\n\nThe onBehalfOfContentOwner parameter indicates that the request's authorization credentials identify a YouTube CMS user who is acting on behalf of the content owner specified in the parameter value. This parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to provide authentication credentials for each individual channel. The CMS account that the user authenticates with must be linked to the specified YouTube content owner.", - "location": "query" - } - }, - "request": { - "$ref": "Group" - }, - "response": { - "$ref": "Group" - }, - "scopes": [ - "https://www.googleapis.com/auth/youtube", - "https://www.googleapis.com/auth/youtubepartner" - ] - } - } - }, - "reports": { - "methods": { - "query": { - "id": "youtubeAnalytics.reports.query", - "path": "reports", - "httpMethod": "GET", - "description": "Retrieve your YouTube Analytics reports.", - "parameters": { - "currency": { - "type": "string", - "description": "The currency to which financial metrics should be converted. The default is US Dollar (USD). If the result contains no financial metrics, this flag will be ignored. Responds with an error if the specified currency is not recognized.", - "pattern": "[A-Z]{3}", - "location": "query" - }, - "dimensions": { - "type": "string", - "description": "A comma-separated list of YouTube Analytics dimensions, such as views or ageGroup,gender. See the Available Reports document for a list of the reports that you can retrieve and the dimensions used for those reports. Also see the Dimensions document for definitions of those dimensions.", - "pattern": "[0-9a-zA-Z,]+", - "location": "query" - }, - "end-date": { - "type": "string", - "description": "The end date for fetching YouTube Analytics data. The value should be in YYYY-MM-DD format.", - "required": true, - "pattern": "[0-9]{4}-[0-9]{2}-[0-9]{2}", - "location": "query" - }, - "filters": { - "type": "string", - "description": "A list of filters that should be applied when retrieving YouTube Analytics data. The Available Reports document identifies the dimensions that can be used to filter each report, and the Dimensions document defines those dimensions. If a request uses multiple filters, join them together with a semicolon (;), and the returned result table will satisfy both filters. For example, a filters parameter value of video==dMH0bHeiRNg;country==IT restricts the result set to include data for the given video in Italy.", - "location": "query" - }, - "ids": { - "type": "string", - "description": "Identifies the YouTube channel or content owner for which you are retrieving YouTube Analytics data.\n- To request data for a YouTube user, set the ids parameter value to channel==CHANNEL_ID, where CHANNEL_ID specifies the unique YouTube channel ID.\n- To request data for a YouTube CMS content owner, set the ids parameter value to contentOwner==OWNER_NAME, where OWNER_NAME is the CMS name of the content owner.", - "required": true, - "pattern": "[a-zA-Z]+==[a-zA-Z0-9_+-]+", - "location": "query" - }, - "include-historical-channel-data": { - "type": "boolean", - "description": "If set to true historical data (i.e. channel data from before the linking of the channel to the content owner) will be retrieved.", - "location": "query" - }, - "max-results": { - "type": "integer", - "description": "The maximum number of rows to include in the response.", - "format": "int32", - "minimum": "1", - "location": "query" - }, - "metrics": { - "type": "string", - "description": "A comma-separated list of YouTube Analytics metrics, such as views or likes,dislikes. See the Available Reports document for a list of the reports that you can retrieve and the metrics available in each report, and see the Metrics document for definitions of those metrics.", - "required": true, - "pattern": "[0-9a-zA-Z,]+", - "location": "query" - }, - "sort": { - "type": "string", - "description": "A comma-separated list of dimensions or metrics that determine the sort order for YouTube Analytics data. By default the sort order is ascending. The '-' prefix causes descending sort order.", - "pattern": "[-0-9a-zA-Z,]+", - "location": "query" - }, - "start-date": { - "type": "string", - "description": "The start date for fetching YouTube Analytics data. The value should be in YYYY-MM-DD format.", - "required": true, - "pattern": "[0-9]{4}-[0-9]{2}-[0-9]{2}", - "location": "query" - }, - "start-index": { - "type": "integer", - "description": "An index of the first entity to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter (one-based, inclusive).", - "format": "int32", - "minimum": "1", - "location": "query" - } - }, - "parameterOrder": [ - "ids", - "start-date", - "end-date", - "metrics" - ], - "response": { - "$ref": "ResultTable" - }, - "scopes": [ - "https://www.googleapis.com/auth/youtube", - "https://www.googleapis.com/auth/youtube.readonly", - "https://www.googleapis.com/auth/yt-analytics-monetary.readonly", - "https://www.googleapis.com/auth/yt-analytics.readonly" - ] - } - } - } - } -} + "servicePath": "youtube/analytics/v1beta1/", + "title": "YouTube Analytics API", + "version": "v1beta1" +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/youtubereporting/v1/youtubereporting-api.json b/vendor/google.golang.org/api/youtubereporting/v1/youtubereporting-api.json index 4330f62af..9dd102402 100644 --- a/vendor/google.golang.org/api/youtubereporting/v1/youtubereporting-api.json +++ b/vendor/google.golang.org/api/youtubereporting/v1/youtubereporting-api.json @@ -1,436 +1,498 @@ { - "resources": { - "reportTypes": { - "methods": { - "list": { - "description": "Lists report types.", - "response": { - "$ref": "ListReportTypesResponse" - }, - "parameterOrder": [], - "httpMethod": "GET", - "parameters": { - "onBehalfOfContentOwner": { - "description": "The content owner's external ID on which behalf the user is acting on. If\nnot set, the user is acting for himself (his own channel).", - "type": "string", - "location": "query" - }, - "pageToken": { - "description": "A token identifying a page of results the server should return. Typically,\nthis is the value of\nListReportTypesResponse.next_page_token\nreturned in response to the previous call to the `ListReportTypes` method.", - "type": "string", - "location": "query" - }, - "includeSystemManaged": { - "location": "query", - "description": "If set to true, also system-managed report types will be returned;\notherwise only the report types that can be used to create new reporting\njobs will be returned.", - "type": "boolean" - }, - "pageSize": { - "description": "Requested page size. Server may return fewer report types than requested.\nIf unspecified, server will pick an appropriate default.", - "format": "int32", - "type": "integer", - "location": "query" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/yt-analytics-monetary.readonly", - "https://www.googleapis.com/auth/yt-analytics.readonly" - ], - "flatPath": "v1/reportTypes", - "path": "v1/reportTypes", - "id": "youtubereporting.reportTypes.list" - } - } - }, - "media": { - "methods": { - "download": { - "path": "v1/media/{+resourceName}", - "id": "youtubereporting.media.download", - "description": "Method for media download. Download is supported\non the URI `/v1/media/{+name}?alt=media`.", - "supportsMediaDownload": true, - "response": { - "$ref": "GdataMedia" - }, - "parameterOrder": [ - "resourceName" - ], - "httpMethod": "GET", - "parameters": { - "resourceName": { - "description": "Name of the media that is being downloaded.", - "required": true, - "type": "string", - "pattern": "^.+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/yt-analytics-monetary.readonly", - "https://www.googleapis.com/auth/yt-analytics.readonly" - ], - "flatPath": "v1/media/{mediaId}" - } - } - }, - "jobs": { - "methods": { - "delete": { - "path": "v1/jobs/{jobId}", - "id": "youtubereporting.jobs.delete", - "description": "Deletes a job.", - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "jobId" - ], - "httpMethod": "DELETE", - "scopes": [ - "https://www.googleapis.com/auth/yt-analytics-monetary.readonly", - "https://www.googleapis.com/auth/yt-analytics.readonly" - ], - "parameters": { - "jobId": { - "location": "path", - "description": "The ID of the job to delete.", - "required": true, - "type": "string" - }, - "onBehalfOfContentOwner": { - "location": "query", - "description": "The content owner's external ID on which behalf the user is acting on. If\nnot set, the user is acting for himself (his own channel).", - "type": "string" - } - }, - "flatPath": "v1/jobs/{jobId}" + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/yt-analytics-monetary.readonly": { + "description": "View monetary and non-monetary YouTube Analytics reports for your YouTube content" }, - "list": { - "flatPath": "v1/jobs", - "path": "v1/jobs", - "id": "youtubereporting.jobs.list", - "description": "Lists jobs.", - "response": { - "$ref": "ListJobsResponse" - }, - "parameterOrder": [], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/yt-analytics-monetary.readonly", - "https://www.googleapis.com/auth/yt-analytics.readonly" - ], - "parameters": { - "pageToken": { - "location": "query", - "description": "A token identifying a page of results the server should return. Typically,\nthis is the value of\nListReportTypesResponse.next_page_token\nreturned in response to the previous call to the `ListJobs` method.", - "type": "string" - }, - "includeSystemManaged": { - "location": "query", - "description": "If set to true, also system-managed jobs will be returned; otherwise only\nuser-created jobs will be returned. System-managed jobs can neither be\nmodified nor deleted.", - "type": "boolean" - }, - "pageSize": { - "description": "Requested page size. Server may return fewer jobs than requested.\nIf unspecified, server will pick an appropriate default.", - "format": "int32", - "type": "integer", - "location": "query" - }, - "onBehalfOfContentOwner": { - "description": "The content owner's external ID on which behalf the user is acting on. If\nnot set, the user is acting for himself (his own channel).", - "type": "string", - "location": "query" - } - } - }, - "get": { - "id": "youtubereporting.jobs.get", - "path": "v1/jobs/{jobId}", - "description": "Gets a job.", - "httpMethod": "GET", - "parameterOrder": [ - "jobId" - ], - "response": { - "$ref": "Job" - }, - "parameters": { - "onBehalfOfContentOwner": { - "description": "The content owner's external ID on which behalf the user is acting on. If\nnot set, the user is acting for himself (his own channel).", - "type": "string", - "location": "query" - }, - "jobId": { - "description": "The ID of the job to retrieve.", - "required": true, - "type": "string", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/yt-analytics-monetary.readonly", - "https://www.googleapis.com/auth/yt-analytics.readonly" - ], - "flatPath": "v1/jobs/{jobId}" - }, - "create": { - "httpMethod": "POST", - "parameterOrder": [], - "response": { - "$ref": "Job" - }, - "parameters": { - "onBehalfOfContentOwner": { - "location": "query", - "description": "The content owner's external ID on which behalf the user is acting on. If\nnot set, the user is acting for himself (his own channel).", - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/yt-analytics-monetary.readonly", - "https://www.googleapis.com/auth/yt-analytics.readonly" - ], - "flatPath": "v1/jobs", - "id": "youtubereporting.jobs.create", - "path": "v1/jobs", - "request": { - "$ref": "Job" - }, - "description": "Creates a job and returns it." - } - }, - "resources": { - "reports": { - "methods": { - "list": { - "description": "Lists reports created by a specific job.\nReturns NOT_FOUND if the job does not exist.", - "response": { - "$ref": "ListReportsResponse" - }, - "parameterOrder": [ - "jobId" - ], - "httpMethod": "GET", - "parameters": { - "pageSize": { - "location": "query", - "description": "Requested page size. Server may return fewer report types than requested.\nIf unspecified, server will pick an appropriate default.", - "format": "int32", - "type": "integer" - }, - "onBehalfOfContentOwner": { - "location": "query", - "description": "The content owner's external ID on which behalf the user is acting on. If\nnot set, the user is acting for himself (his own channel).", - "type": "string" - }, - "startTimeBefore": { - "description": "If set, only reports whose start time is smaller than the specified\ndate/time are returned.", - "format": "google-datetime", - "type": "string", - "location": "query" - }, - "jobId": { - "location": "path", - "description": "The ID of the job.", - "required": true, - "type": "string" - }, - "createdAfter": { - "location": "query", - "description": "If set, only reports created after the specified date/time are returned.", - "format": "google-datetime", - "type": "string" - }, - "startTimeAtOrAfter": { - "description": "If set, only reports whose start time is greater than or equal the\nspecified date/time are returned.", - "format": "google-datetime", - "type": "string", - "location": "query" - }, - "pageToken": { - "description": "A token identifying a page of results the server should return. Typically,\nthis is the value of\nListReportsResponse.next_page_token\nreturned in response to the previous call to the `ListReports` method.", - "type": "string", - "location": "query" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/yt-analytics-monetary.readonly", - "https://www.googleapis.com/auth/yt-analytics.readonly" - ], - "flatPath": "v1/jobs/{jobId}/reports", - "path": "v1/jobs/{jobId}/reports", - "id": "youtubereporting.jobs.reports.list" - }, - "get": { - "description": "Gets the metadata of a specific report.", - "response": { - "$ref": "Report" - }, - "parameterOrder": [ - "jobId", - "reportId" - ], - "httpMethod": "GET", - "parameters": { - "onBehalfOfContentOwner": { - "description": "The content owner's external ID on which behalf the user is acting on. If\nnot set, the user is acting for himself (his own channel).", - "type": "string", - "location": "query" - }, - "reportId": { - "description": "The ID of the report to retrieve.", - "required": true, - "type": "string", - "location": "path" - }, - "jobId": { - "description": "The ID of the job.", - "required": true, - "type": "string", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/yt-analytics-monetary.readonly", - "https://www.googleapis.com/auth/yt-analytics.readonly" - ], - "flatPath": "v1/jobs/{jobId}/reports/{reportId}", - "path": "v1/jobs/{jobId}/reports/{reportId}", - "id": "youtubereporting.jobs.reports.get" - } - } + "https://www.googleapis.com/auth/yt-analytics.readonly": { + "description": "View YouTube Analytics reports for your YouTube content" } } } }, + "basePath": "", + "baseUrl": "https://youtubereporting.googleapis.com/", + "batchPath": "batch", + "canonicalName": "YouTube Reporting", + "description": "Schedules reporting jobs containing your YouTube Analytics data and downloads the resulting bulk data reports in the form of CSV files.", + "discoveryVersion": "v1", + "documentationLink": "https://developers.google.com/youtube/reporting/v1/reports/", + "icons": { + "x16": "http://www.google.com/images/icons/product/search-16.gif", + "x32": "http://www.google.com/images/icons/product/search-32.gif" + }, + "id": "youtubereporting:v1", + "kind": "discovery#restDescription", + "name": "youtubereporting", + "ownerDomain": "google.com", + "ownerName": "Google", "parameters": { - "fields": { - "description": "Selector specifying which fields to include in a partial response.", - "type": "string", - "location": "query" - }, - "uploadType": { - "location": "query", - "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", - "type": "string" - }, "$.xgafv": { + "description": "V1 error format.", + "enum": [ + "1", + "2" + ], "enumDescriptions": [ "v1 error format", "v2 error format" ], "location": "query", - "enum": [ - "1", - "2" - ], - "description": "V1 error format.", "type": "string" }, - "callback": { - "description": "JSONP", - "type": "string", - "location": "query" + "access_token": { + "description": "OAuth access token.", + "location": "query", + "type": "string" }, "alt": { + "default": "json", + "description": "Data format for response.", "enum": [ "json", "media", "proto" ], - "type": "string", "enumDescriptions": [ "Responses with Content-Type of application/json", "Media download with context-dependent Content-Type", "Responses with Content-Type of application/x-protobuf" ], "location": "query", - "description": "Data format for response.", - "default": "json" - }, - "access_token": { - "description": "OAuth access token.", - "type": "string", - "location": "query" - }, - "key": { - "location": "query", - "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.", "type": "string" }, - "quotaUser": { - "location": "query", - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", - "type": "string" - }, - "pp": { - "description": "Pretty-print response.", - "type": "boolean", - "default": "true", - "location": "query" - }, - "oauth_token": { - "description": "OAuth 2.0 token for the current user.", - "type": "string", - "location": "query" - }, "bearer_token": { "description": "OAuth bearer token.", - "type": "string", - "location": "query" + "location": "query", + "type": "string" + }, + "callback": { + "description": "JSONP", + "location": "query", + "type": "string" + }, + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "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.", + "location": "query", + "type": "string" + }, + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "pp": { + "default": "true", + "description": "Pretty-print response.", + "location": "query", + "type": "boolean" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", + "location": "query", + "type": "string" + }, + "uploadType": { + "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", + "location": "query", + "type": "string" }, "upload_protocol": { "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", - "type": "string", - "location": "query" - }, - "prettyPrint": { "location": "query", - "description": "Returns response with indentations and line breaks.", - "type": "boolean", - "default": "true" + "type": "string" } }, + "protocol": "rest", + "resources": { + "jobs": { + "methods": { + "create": { + "description": "Creates a job and returns it.", + "flatPath": "v1/jobs", + "httpMethod": "POST", + "id": "youtubereporting.jobs.create", + "parameterOrder": [], + "parameters": { + "onBehalfOfContentOwner": { + "description": "The content owner's external ID on which behalf the user is acting on. If\nnot set, the user is acting for himself (his own channel).", + "location": "query", + "type": "string" + } + }, + "path": "v1/jobs", + "request": { + "$ref": "Job" + }, + "response": { + "$ref": "Job" + }, + "scopes": [ + "https://www.googleapis.com/auth/yt-analytics-monetary.readonly", + "https://www.googleapis.com/auth/yt-analytics.readonly" + ] + }, + "delete": { + "description": "Deletes a job.", + "flatPath": "v1/jobs/{jobId}", + "httpMethod": "DELETE", + "id": "youtubereporting.jobs.delete", + "parameterOrder": [ + "jobId" + ], + "parameters": { + "jobId": { + "description": "The ID of the job to delete.", + "location": "path", + "required": true, + "type": "string" + }, + "onBehalfOfContentOwner": { + "description": "The content owner's external ID on which behalf the user is acting on. If\nnot set, the user is acting for himself (his own channel).", + "location": "query", + "type": "string" + } + }, + "path": "v1/jobs/{jobId}", + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/yt-analytics-monetary.readonly", + "https://www.googleapis.com/auth/yt-analytics.readonly" + ] + }, + "get": { + "description": "Gets a job.", + "flatPath": "v1/jobs/{jobId}", + "httpMethod": "GET", + "id": "youtubereporting.jobs.get", + "parameterOrder": [ + "jobId" + ], + "parameters": { + "jobId": { + "description": "The ID of the job to retrieve.", + "location": "path", + "required": true, + "type": "string" + }, + "onBehalfOfContentOwner": { + "description": "The content owner's external ID on which behalf the user is acting on. If\nnot set, the user is acting for himself (his own channel).", + "location": "query", + "type": "string" + } + }, + "path": "v1/jobs/{jobId}", + "response": { + "$ref": "Job" + }, + "scopes": [ + "https://www.googleapis.com/auth/yt-analytics-monetary.readonly", + "https://www.googleapis.com/auth/yt-analytics.readonly" + ] + }, + "list": { + "description": "Lists jobs.", + "flatPath": "v1/jobs", + "httpMethod": "GET", + "id": "youtubereporting.jobs.list", + "parameterOrder": [], + "parameters": { + "includeSystemManaged": { + "description": "If set to true, also system-managed jobs will be returned; otherwise only\nuser-created jobs will be returned. System-managed jobs can neither be\nmodified nor deleted.", + "location": "query", + "type": "boolean" + }, + "onBehalfOfContentOwner": { + "description": "The content owner's external ID on which behalf the user is acting on. If\nnot set, the user is acting for himself (his own channel).", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "Requested page size. Server may return fewer jobs than requested.\nIf unspecified, server will pick an appropriate default.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "A token identifying a page of results the server should return. Typically,\nthis is the value of\nListReportTypesResponse.next_page_token\nreturned in response to the previous call to the `ListJobs` method.", + "location": "query", + "type": "string" + } + }, + "path": "v1/jobs", + "response": { + "$ref": "ListJobsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/yt-analytics-monetary.readonly", + "https://www.googleapis.com/auth/yt-analytics.readonly" + ] + } + }, + "resources": { + "reports": { + "methods": { + "get": { + "description": "Gets the metadata of a specific report.", + "flatPath": "v1/jobs/{jobId}/reports/{reportId}", + "httpMethod": "GET", + "id": "youtubereporting.jobs.reports.get", + "parameterOrder": [ + "jobId", + "reportId" + ], + "parameters": { + "jobId": { + "description": "The ID of the job.", + "location": "path", + "required": true, + "type": "string" + }, + "onBehalfOfContentOwner": { + "description": "The content owner's external ID on which behalf the user is acting on. If\nnot set, the user is acting for himself (his own channel).", + "location": "query", + "type": "string" + }, + "reportId": { + "description": "The ID of the report to retrieve.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/jobs/{jobId}/reports/{reportId}", + "response": { + "$ref": "Report" + }, + "scopes": [ + "https://www.googleapis.com/auth/yt-analytics-monetary.readonly", + "https://www.googleapis.com/auth/yt-analytics.readonly" + ] + }, + "list": { + "description": "Lists reports created by a specific job.\nReturns NOT_FOUND if the job does not exist.", + "flatPath": "v1/jobs/{jobId}/reports", + "httpMethod": "GET", + "id": "youtubereporting.jobs.reports.list", + "parameterOrder": [ + "jobId" + ], + "parameters": { + "createdAfter": { + "description": "If set, only reports created after the specified date/time are returned.", + "format": "google-datetime", + "location": "query", + "type": "string" + }, + "jobId": { + "description": "The ID of the job.", + "location": "path", + "required": true, + "type": "string" + }, + "onBehalfOfContentOwner": { + "description": "The content owner's external ID on which behalf the user is acting on. If\nnot set, the user is acting for himself (his own channel).", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "Requested page size. Server may return fewer report types than requested.\nIf unspecified, server will pick an appropriate default.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "A token identifying a page of results the server should return. Typically,\nthis is the value of\nListReportsResponse.next_page_token\nreturned in response to the previous call to the `ListReports` method.", + "location": "query", + "type": "string" + }, + "startTimeAtOrAfter": { + "description": "If set, only reports whose start time is greater than or equal the\nspecified date/time are returned.", + "format": "google-datetime", + "location": "query", + "type": "string" + }, + "startTimeBefore": { + "description": "If set, only reports whose start time is smaller than the specified\ndate/time are returned.", + "format": "google-datetime", + "location": "query", + "type": "string" + } + }, + "path": "v1/jobs/{jobId}/reports", + "response": { + "$ref": "ListReportsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/yt-analytics-monetary.readonly", + "https://www.googleapis.com/auth/yt-analytics.readonly" + ] + } + } + } + } + }, + "media": { + "methods": { + "download": { + "description": "Method for media download. Download is supported\non the URI `/v1/media/{+name}?alt=media`.", + "flatPath": "v1/media/{mediaId}", + "httpMethod": "GET", + "id": "youtubereporting.media.download", + "parameterOrder": [ + "resourceName" + ], + "parameters": { + "resourceName": { + "description": "Name of the media that is being downloaded.", + "location": "path", + "pattern": "^.+$", + "required": true, + "type": "string" + } + }, + "path": "v1/media/{+resourceName}", + "response": { + "$ref": "GdataMedia" + }, + "scopes": [ + "https://www.googleapis.com/auth/yt-analytics-monetary.readonly", + "https://www.googleapis.com/auth/yt-analytics.readonly" + ], + "supportsMediaDownload": true + } + } + }, + "reportTypes": { + "methods": { + "list": { + "description": "Lists report types.", + "flatPath": "v1/reportTypes", + "httpMethod": "GET", + "id": "youtubereporting.reportTypes.list", + "parameterOrder": [], + "parameters": { + "includeSystemManaged": { + "description": "If set to true, also system-managed report types will be returned;\notherwise only the report types that can be used to create new reporting\njobs will be returned.", + "location": "query", + "type": "boolean" + }, + "onBehalfOfContentOwner": { + "description": "The content owner's external ID on which behalf the user is acting on. If\nnot set, the user is acting for himself (his own channel).", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "Requested page size. Server may return fewer report types than requested.\nIf unspecified, server will pick an appropriate default.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "A token identifying a page of results the server should return. Typically,\nthis is the value of\nListReportTypesResponse.next_page_token\nreturned in response to the previous call to the `ListReportTypes` method.", + "location": "query", + "type": "string" + } + }, + "path": "v1/reportTypes", + "response": { + "$ref": "ListReportTypesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/yt-analytics-monetary.readonly", + "https://www.googleapis.com/auth/yt-analytics.readonly" + ] + } + } + } + }, + "revision": "20180326", + "rootUrl": "https://youtubereporting.googleapis.com/", "schemas": { - "GdataObjectId": { + "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" + }, + "GdataBlobstore2Info": { "description": "gdata", - "type": "object", + "id": "GdataBlobstore2Info", "properties": { - "generation": { + "blobGeneration": { "description": "gdata", "format": "int64", "type": "string" }, - "objectName": { + "blobId": { "description": "gdata", "type": "string" }, - "bucketName": { - "description": "gdata", - "type": "string" - } - }, - "id": "GdataObjectId" - }, - "GdataMedia": { - "description": "gdata", - "type": "object", - "properties": { - "isPotentialRetry": { - "description": "gdata", - "type": "boolean", - "default": "true" - }, - "md5Hash": { + "downloadReadHandle": { "description": "gdata", "format": "byte", "type": "string" }, - "algorithm": { + "readToken": { "description": "gdata", "type": "string" }, - "sha256Hash": { + "uploadMetadataContainer": { + "description": "gdata", + "format": "byte", + "type": "string" + } + }, + "type": "object" + }, + "GdataCompositeMedia": { + "description": "gdata", + "id": "GdataCompositeMedia", + "properties": { + "blobRef": { + "description": "gdata", + "format": "byte", + "type": "string" + }, + "blobstore2Info": { + "$ref": "GdataBlobstore2Info", + "description": "gdata" + }, + "cosmoBinaryReference": { + "description": "gdata", + "format": "byte", + "type": "string" + }, + "crc32cHash": { + "description": "gdata", + "format": "uint32", + "type": "integer" + }, + "inline": { + "description": "gdata", + "format": "byte", + "type": "string" + }, + "length": { + "description": "gdata", + "format": "int64", + "type": "string" + }, + "md5Hash": { "description": "gdata", "format": "byte", "type": "string" @@ -443,27 +505,281 @@ "description": "gdata", "type": "string" }, - "bigstoreObjectRef": { - "description": "gdata", - "format": "byte", - "type": "string" - }, "referenceType": { + "description": "gdata", + "enum": [ + "PATH", + "BLOB_REF", + "INLINE", + "BIGSTORE_REF", + "COSMO_BINARY_REFERENCE" + ], "enumDescriptions": [ - "gdata", - "gdata", - "gdata", - "gdata", - "gdata", - "gdata", - "gdata", - "gdata", "gdata", "gdata", "gdata", "gdata", "gdata" ], + "type": "string" + }, + "sha1Hash": { + "description": "gdata", + "format": "byte", + "type": "string" + } + }, + "type": "object" + }, + "GdataContentTypeInfo": { + "description": "gdata", + "id": "GdataContentTypeInfo", + "properties": { + "bestGuess": { + "description": "gdata", + "type": "string" + }, + "fromBytes": { + "description": "gdata", + "type": "string" + }, + "fromFileName": { + "description": "gdata", + "type": "string" + }, + "fromHeader": { + "description": "gdata", + "type": "string" + }, + "fromUrlPath": { + "description": "gdata", + "type": "string" + } + }, + "type": "object" + }, + "GdataDiffChecksumsResponse": { + "description": "gdata", + "id": "GdataDiffChecksumsResponse", + "properties": { + "checksumsLocation": { + "$ref": "GdataCompositeMedia", + "description": "gdata" + }, + "chunkSizeBytes": { + "description": "gdata", + "format": "int64", + "type": "string" + }, + "objectLocation": { + "$ref": "GdataCompositeMedia", + "description": "gdata" + }, + "objectSizeBytes": { + "description": "gdata", + "format": "int64", + "type": "string" + }, + "objectVersion": { + "description": "gdata", + "type": "string" + } + }, + "type": "object" + }, + "GdataDiffDownloadResponse": { + "description": "gdata", + "id": "GdataDiffDownloadResponse", + "properties": { + "objectLocation": { + "$ref": "GdataCompositeMedia", + "description": "gdata" + } + }, + "type": "object" + }, + "GdataDiffUploadRequest": { + "description": "gdata", + "id": "GdataDiffUploadRequest", + "properties": { + "checksumsInfo": { + "$ref": "GdataCompositeMedia", + "description": "gdata" + }, + "objectInfo": { + "$ref": "GdataCompositeMedia", + "description": "gdata" + }, + "objectVersion": { + "description": "gdata", + "type": "string" + } + }, + "type": "object" + }, + "GdataDiffUploadResponse": { + "description": "gdata", + "id": "GdataDiffUploadResponse", + "properties": { + "objectVersion": { + "description": "gdata", + "type": "string" + }, + "originalObject": { + "$ref": "GdataCompositeMedia", + "description": "gdata" + } + }, + "type": "object" + }, + "GdataDiffVersionResponse": { + "description": "gdata", + "id": "GdataDiffVersionResponse", + "properties": { + "objectSizeBytes": { + "description": "gdata", + "format": "int64", + "type": "string" + }, + "objectVersion": { + "description": "gdata", + "type": "string" + } + }, + "type": "object" + }, + "GdataDownloadParameters": { + "description": "gdata", + "id": "GdataDownloadParameters", + "properties": { + "allowGzipCompression": { + "description": "gdata", + "type": "boolean" + }, + "ignoreRange": { + "description": "gdata", + "type": "boolean" + } + }, + "type": "object" + }, + "GdataMedia": { + "description": "gdata", + "id": "GdataMedia", + "properties": { + "algorithm": { + "description": "gdata", + "type": "string" + }, + "bigstoreObjectRef": { + "description": "gdata", + "format": "byte", + "type": "string" + }, + "blobRef": { + "description": "gdata", + "format": "byte", + "type": "string" + }, + "blobstore2Info": { + "$ref": "GdataBlobstore2Info", + "description": "gdata" + }, + "compositeMedia": { + "description": "gdata", + "items": { + "$ref": "GdataCompositeMedia" + }, + "type": "array" + }, + "contentType": { + "description": "gdata", + "type": "string" + }, + "contentTypeInfo": { + "$ref": "GdataContentTypeInfo", + "description": "gdata" + }, + "cosmoBinaryReference": { + "description": "gdata", + "format": "byte", + "type": "string" + }, + "crc32cHash": { + "description": "gdata", + "format": "uint32", + "type": "integer" + }, + "diffChecksumsResponse": { + "$ref": "GdataDiffChecksumsResponse", + "description": "gdata" + }, + "diffDownloadResponse": { + "$ref": "GdataDiffDownloadResponse", + "description": "gdata" + }, + "diffUploadRequest": { + "$ref": "GdataDiffUploadRequest", + "description": "gdata" + }, + "diffUploadResponse": { + "$ref": "GdataDiffUploadResponse", + "description": "gdata" + }, + "diffVersionResponse": { + "$ref": "GdataDiffVersionResponse", + "description": "gdata" + }, + "downloadParameters": { + "$ref": "GdataDownloadParameters", + "description": "gdata" + }, + "filename": { + "description": "gdata", + "type": "string" + }, + "hash": { + "description": "gdata", + "type": "string" + }, + "hashVerified": { + "description": "gdata", + "type": "boolean" + }, + "inline": { + "description": "gdata", + "format": "byte", + "type": "string" + }, + "isPotentialRetry": { + "description": "gdata", + "type": "boolean" + }, + "length": { + "description": "gdata", + "format": "int64", + "type": "string" + }, + "md5Hash": { + "description": "gdata", + "format": "byte", + "type": "string" + }, + "mediaId": { + "description": "gdata", + "format": "byte", + "type": "string" + }, + "objectId": { + "$ref": "GdataObjectId", + "description": "gdata" + }, + "path": { + "description": "gdata", + "type": "string" + }, + "referenceType": { + "description": "gdata", "enum": [ "PATH", "BLOB_REF", @@ -479,74 +795,33 @@ "COSMO_BINARY_REFERENCE", "ARBITRARY_BYTES" ], - "description": "gdata", + "enumDescriptions": [ + "gdata", + "gdata", + "gdata", + "gdata", + "gdata", + "gdata", + "gdata", + "gdata", + "gdata", + "gdata", + "gdata", + "gdata", + "gdata" + ], "type": "string" }, - "inline": { - "description": "gdata", - "format": "byte", - "type": "string" - }, - "diffUploadRequest": { - "description": "gdata", - "$ref": "GdataDiffUploadRequest" - }, - "diffChecksumsResponse": { - "$ref": "GdataDiffChecksumsResponse", - "description": "gdata" - }, "sha1Hash": { "description": "gdata", "format": "byte", "type": "string" }, - "crc32cHash": { - "description": "gdata", - "format": "uint32", - "type": "integer" - }, - "length": { - "description": "gdata", - "format": "int64", - "type": "string" - }, - "contentTypeInfo": { - "$ref": "GdataContentTypeInfo", - "description": "gdata" - }, - "contentType": { - "description": "gdata", - "type": "string" - }, - "downloadParameters": { - "$ref": "GdataDownloadParameters", - "description": "gdata" - }, - "mediaId": { + "sha256Hash": { "description": "gdata", "format": "byte", "type": "string" }, - "compositeMedia": { - "description": "gdata", - "type": "array", - "items": { - "$ref": "GdataCompositeMedia" - } - }, - "diffUploadResponse": { - "$ref": "GdataDiffUploadResponse", - "description": "gdata" - }, - "blobRef": { - "description": "gdata", - "format": "byte", - "type": "string" - }, - "diffVersionResponse": { - "$ref": "GdataDiffVersionResponse", - "description": "gdata" - }, "timestamp": { "description": "gdata", "format": "uint64", @@ -555,252 +830,102 @@ "token": { "description": "gdata", "type": "string" - }, - "hash": { - "description": "gdata", - "type": "string" - }, - "filename": { - "description": "gdata", - "type": "string" - }, - "blobstore2Info": { - "description": "gdata", - "$ref": "GdataBlobstore2Info" - }, - "hashVerified": { - "description": "gdata", - "type": "boolean" - }, - "diffDownloadResponse": { - "$ref": "GdataDiffDownloadResponse", - "description": "gdata" - }, - "cosmoBinaryReference": { - "description": "gdata", - "format": "byte", - "type": "string" } }, - "id": "GdataMedia" + "type": "object" }, - "GdataDiffVersionResponse": { + "GdataObjectId": { "description": "gdata", - "type": "object", + "id": "GdataObjectId", "properties": { - "objectSizeBytes": { + "bucketName": { + "description": "gdata", + "type": "string" + }, + "generation": { "description": "gdata", "format": "int64", "type": "string" }, - "objectVersion": { + "objectName": { "description": "gdata", "type": "string" } }, - "id": "GdataDiffVersionResponse" - }, - "GdataDiffDownloadResponse": { - "properties": { - "objectLocation": { - "$ref": "GdataCompositeMedia", - "description": "gdata" - } - }, - "id": "GdataDiffDownloadResponse", - "description": "gdata", "type": "object" }, - "GdataDiffUploadRequest": { - "description": "gdata", - "type": "object", + "Job": { + "description": "A job creating reports of a specific type.", + "id": "Job", "properties": { - "objectVersion": { - "description": "gdata", + "createTime": { + "description": "The creation date/time of the job.", + "format": "google-datetime", "type": "string" }, - "objectInfo": { - "description": "gdata", - "$ref": "GdataCompositeMedia" - }, - "checksumsInfo": { - "$ref": "GdataCompositeMedia", - "description": "gdata" - } - }, - "id": "GdataDiffUploadRequest" - }, - "GdataBlobstore2Info": { - "properties": { - "downloadReadHandle": { - "description": "gdata", - "format": "byte", - "type": "string" - }, - "readToken": { - "description": "gdata", - "type": "string" - }, - "uploadMetadataContainer": { - "description": "gdata", - "format": "byte", - "type": "string" - }, - "blobGeneration": { - "description": "gdata", - "format": "int64", - "type": "string" - }, - "blobId": { - "description": "gdata", - "type": "string" - } - }, - "id": "GdataBlobstore2Info", - "description": "gdata", - "type": "object" - }, - "Empty": { - "properties": {}, - "id": "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 `{}`.", - "type": "object" - }, - "ReportType": { - "properties": { - "name": { - "description": "The name of the report type (max. 100 characters).", + "expireTime": { + "description": "The date/time when this job will expire/expired. After a job expired, no\nnew reports are generated.", + "format": "google-datetime", "type": "string" }, "id": { - "description": "The ID of the report type (max. 100 characters).", + "description": "The server-generated ID of the job (max. 40 characters).", + "type": "string" + }, + "name": { + "description": "The name of the job (max. 100 characters).", + "type": "string" + }, + "reportTypeId": { + "description": "The type of reports this job creates. Corresponds to the ID of a\nReportType.", "type": "string" }, "systemManaged": { - "description": "True if this a system-managed report type; otherwise false. Reporting jobs\nfor system-managed report types are created automatically and can thus not\nbe used in the `CreateJob` method.", + "description": "True if this a system-managed job that cannot be modified by the user;\notherwise false.", "type": "boolean" - }, - "deprecateTime": { - "description": "The date/time when this report type was/will be deprecated.", - "format": "google-datetime", - "type": "string" } }, - "id": "ReportType", - "description": "A report type.", "type": "object" }, - "ListReportTypesResponse": { - "description": "Response message for ReportingService.ListReportTypes.", - "type": "object", - "properties": { - "reportTypes": { - "description": "The list of report types.", - "type": "array", - "items": { - "$ref": "ReportType" - } - }, - "nextPageToken": { - "description": "A token to retrieve next page of results.\nPass this value in the\nListReportTypesRequest.page_token\nfield in the subsequent call to `ListReportTypes` method to retrieve the next\npage of results.", - "type": "string" - } - }, - "id": "ListReportTypesResponse" - }, "ListJobsResponse": { "description": "Response message for ReportingService.ListJobs.", - "type": "object", + "id": "ListJobsResponse", "properties": { "jobs": { "description": "The list of jobs.", - "type": "array", "items": { "$ref": "Job" - } + }, + "type": "array" }, "nextPageToken": { "description": "A token to retrieve next page of results.\nPass this value in the\nListJobsRequest.page_token\nfield in the subsequent call to `ListJobs` method to retrieve the next\npage of results.", "type": "string" } }, - "id": "ListJobsResponse" + "type": "object" }, - "GdataCompositeMedia": { - "description": "gdata", - "type": "object", + "ListReportTypesResponse": { + "description": "Response message for ReportingService.ListReportTypes.", + "id": "ListReportTypesResponse", "properties": { - "md5Hash": { - "description": "gdata", - "format": "byte", + "nextPageToken": { + "description": "A token to retrieve next page of results.\nPass this value in the\nListReportTypesRequest.page_token\nfield in the subsequent call to `ListReportTypes` method to retrieve the next\npage of results.", "type": "string" }, - "inline": { - "description": "gdata", - "format": "byte", - "type": "string" - }, - "blobstore2Info": { - "$ref": "GdataBlobstore2Info", - "description": "gdata" - }, - "blobRef": { - "description": "gdata", - "format": "byte", - "type": "string" - }, - "objectId": { - "$ref": "GdataObjectId", - "description": "gdata" - }, - "sha1Hash": { - "description": "gdata", - "format": "byte", - "type": "string" - }, - "crc32cHash": { - "description": "gdata", - "format": "uint32", - "type": "integer" - }, - "path": { - "description": "gdata", - "type": "string" - }, - "length": { - "description": "gdata", - "format": "int64", - "type": "string" - }, - "cosmoBinaryReference": { - "description": "gdata", - "format": "byte", - "type": "string" - }, - "referenceType": { - "enum": [ - "PATH", - "BLOB_REF", - "INLINE", - "BIGSTORE_REF", - "COSMO_BINARY_REFERENCE" - ], - "description": "gdata", - "type": "string", - "enumDescriptions": [ - "gdata", - "gdata", - "gdata", - "gdata", - "gdata" - ] + "reportTypes": { + "description": "The list of report types.", + "items": { + "$ref": "ReportType" + }, + "type": "array" } }, - "id": "GdataCompositeMedia" + "type": "object" }, "ListReportsResponse": { "description": "Response message for ReportingService.ListReports.", - "type": "object", + "id": "ListReportsResponse", "properties": { "nextPageToken": { "description": "A token to retrieve next page of results.\nPass this value in the\nListReportsRequest.page_token\nfield in the subsequent call to `ListReports` method to retrieve the next\npage of results.", @@ -808,67 +933,30 @@ }, "reports": { "description": "The list of report types.", - "type": "array", "items": { "$ref": "Report" - } + }, + "type": "array" } }, - "id": "ListReportsResponse" - }, - "GdataContentTypeInfo": { - "description": "gdata", - "type": "object", - "properties": { - "fromBytes": { - "description": "gdata", - "type": "string" - }, - "fromFileName": { - "description": "gdata", - "type": "string" - }, - "bestGuess": { - "description": "gdata", - "type": "string" - }, - "fromUrlPath": { - "description": "gdata", - "type": "string" - }, - "fromHeader": { - "description": "gdata", - "type": "string" - } - }, - "id": "GdataContentTypeInfo" - }, - "GdataDiffUploadResponse": { - "properties": { - "objectVersion": { - "description": "gdata", - "type": "string" - }, - "originalObject": { - "description": "gdata", - "$ref": "GdataCompositeMedia" - } - }, - "id": "GdataDiffUploadResponse", - "description": "gdata", "type": "object" }, "Report": { "description": "A report's metadata including the URL from which the report itself can be\ndownloaded.", - "type": "object", + "id": "Report", "properties": { "createTime": { "description": "The date/time when this report was created.", "format": "google-datetime", "type": "string" }, - "jobId": { - "description": "The ID of the job that created this report.", + "downloadUrl": { + "description": "The URL from which the report can be downloaded (max. 1000 characters).", + "type": "string" + }, + "endTime": { + "description": "The end of the time period that the report instance covers. The value is\nexclusive.", + "format": "google-datetime", "type": "string" }, "id": { @@ -880,13 +968,8 @@ "format": "google-datetime", "type": "string" }, - "endTime": { - "description": "The end of the time period that the report instance covers. The value is\nexclusive.", - "format": "google-datetime", - "type": "string" - }, - "downloadUrl": { - "description": "The URL from which the report can be downloaded (max. 1000 characters).", + "jobId": { + "description": "The ID of the job that created this report.", "type": "string" }, "startTime": { @@ -895,118 +978,34 @@ "type": "string" } }, - "id": "Report" - }, - "GdataDiffChecksumsResponse": { - "properties": { - "checksumsLocation": { - "description": "gdata", - "$ref": "GdataCompositeMedia" - }, - "objectSizeBytes": { - "description": "gdata", - "format": "int64", - "type": "string" - }, - "objectLocation": { - "$ref": "GdataCompositeMedia", - "description": "gdata" - }, - "objectVersion": { - "description": "gdata", - "type": "string" - }, - "chunkSizeBytes": { - "description": "gdata", - "format": "int64", - "type": "string" - } - }, - "id": "GdataDiffChecksumsResponse", - "description": "gdata", "type": "object" }, - "GdataDownloadParameters": { - "description": "gdata", - "type": "object", + "ReportType": { + "description": "A report type.", + "id": "ReportType", "properties": { - "ignoreRange": { - "description": "gdata", - "type": "boolean" - }, - "allowGzipCompression": { - "description": "gdata", - "type": "boolean" - } - }, - "id": "GdataDownloadParameters" - }, - "Job": { - "properties": { - "name": { - "description": "The name of the job (max. 100 characters).", + "deprecateTime": { + "description": "The date/time when this report type was/will be deprecated.", + "format": "google-datetime", "type": "string" }, "id": { - "description": "The server-generated ID of the job (max. 40 characters).", + "description": "The ID of the report type (max. 100 characters).", + "type": "string" + }, + "name": { + "description": "The name of the report type (max. 100 characters).", "type": "string" }, "systemManaged": { - "description": "True if this a system-managed job that cannot be modified by the user;\notherwise false.", + "description": "True if this a system-managed report type; otherwise false. Reporting jobs\nfor system-managed report types are created automatically and can thus not\nbe used in the `CreateJob` method.", "type": "boolean" - }, - "createTime": { - "description": "The creation date/time of the job.", - "format": "google-datetime", - "type": "string" - }, - "reportTypeId": { - "description": "The type of reports this job creates. Corresponds to the ID of a\nReportType.", - "type": "string" - }, - "expireTime": { - "description": "The date/time when this job will expire/expired. After a job expired, no\nnew reports are generated.", - "format": "google-datetime", - "type": "string" } }, - "id": "Job", - "description": "A job creating reports of a specific type.", "type": "object" } }, - "protocol": "rest", - "icons": { - "x32": "http://www.google.com/images/icons/product/search-32.gif", - "x16": "http://www.google.com/images/icons/product/search-16.gif" - }, - "version": "v1", - "baseUrl": "https://youtubereporting.googleapis.com/", - "canonicalName": "YouTube Reporting", - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/yt-analytics.readonly": { - "description": "View YouTube Analytics reports for your YouTube content" - }, - "https://www.googleapis.com/auth/yt-analytics-monetary.readonly": { - "description": "View monetary and non-monetary YouTube Analytics reports for your YouTube content" - } - } - } - }, - "kind": "discovery#restDescription", - "description": "Schedules reporting jobs containing your YouTube Analytics data and downloads the resulting bulk data reports in the form of CSV files.", "servicePath": "", - "rootUrl": "https://youtubereporting.googleapis.com/", - "basePath": "", - "ownerDomain": "google.com", - "name": "youtubereporting", - "batchPath": "batch", - "revision": "20180120", - "documentationLink": "https://developers.google.com/youtube/reporting/v1/reports/", - "id": "youtubereporting:v1", "title": "YouTube Reporting API", - "ownerName": "Google", - "discoveryVersion": "v1" -} + "version": "v1" +} \ No newline at end of file diff --git a/vendor/google.golang.org/api/youtubereporting/v1/youtubereporting-gen.go b/vendor/google.golang.org/api/youtubereporting/v1/youtubereporting-gen.go index b06bc3055..bad9e9828 100644 --- a/vendor/google.golang.org/api/youtubereporting/v1/youtubereporting-gen.go +++ b/vendor/google.golang.org/api/youtubereporting/v1/youtubereporting-gen.go @@ -548,9 +548,7 @@ type GdataMedia struct { Inline string `json:"inline,omitempty"` // IsPotentialRetry: gdata - // - // Default: true - IsPotentialRetry *bool `json:"isPotentialRetry,omitempty"` + IsPotentialRetry bool `json:"isPotentialRetry,omitempty"` // Length: gdata Length int64 `json:"length,omitempty,string"`